diff --git a/311.eb37062fcd79cca8.js b/311.e23562654f2e1e13.js similarity index 81% rename from 311.eb37062fcd79cca8.js rename to 311.e23562654f2e1e13.js index ade3a1c2f..7ce06b894 100644 --- a/311.eb37062fcd79cca8.js +++ b/311.e23562654f2e1e13.js @@ -1 +1 @@ -"use strict";(self.webpackChunksite=self.webpackChunksite||[]).push([[311],{30311:(P,l,s)=>{s.r(l),s.d(l,{DocsModule:()=>F});var R=s(52787),G=s(89359),O=s(93285),a=s(65879),i=s(28749);const D=[{path:"",component:O.S,children:[{path:"",redirectTo:"getting-started/zh",pathMatch:"full"},{path:"acl",redirectTo:"acl/zh",pathMatch:"full"},{path:"acl/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"zh-CN":"docs/acl.md"},content:{"zh-CN":{content:'
',meta:{order:50,title:"ACL",type:"Advance",url:"/acl/getting-started"},toc:[]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-acl"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"architecture",redirectTo:"architecture/zh",pathMatch:"full"},{path:"architecture/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/architecture.en-US.md","zh-CN":"docs/architecture.zh-CN.md"},content:{"en-US":{content:'

NG-ALAIN scaffold is a front-end solution to support middleware and back-end application. It is based on Angular and ng-zorro-antd(Angular implementation of Ant Design). The scaffold includes a set of common functionalities and business component libraries. It reduces lots of infrastructure development overwhelmingly and let you focus on business logic development.

Architecture Diagram

@delon/theme

Theme library of scaffold, we publish the theme library to NPM, which extremely simplifies upgrade effort.

Theme library includes not only essential styles(CSS tool like bootstrap) required by NG-ALAIN, but also a set of common data rendering(Pipe) and service tools(page title, scroll bar, etc..), which are needed during daily development.

@delon/abc

Scaffold provides a default set of business components, which abstract commonly used block/area in console service. We will continue to maintain and iterate the components. Provide more advanced abstract components than Ant Design base components to middleware and back-end business.

@delon/chart

@delon/chart chart library is customised based on G2. Providing commonly used chart suite in business development. It can be used alone or composed together to achieve more complex and fancy display effect.

@delon/form

@delon/form follows standard of JSON Schema to build dynamic forms.

@delon/auth

User Authentication module is used for resolving steps to obtain, save and use authentication.

@delon/acl

ACL Access Control List is a very simple role based permission control. It can even reach the granularity of controlling the visibility of a button.

@delon/cache

Reduce the Http request by storing cache of the dictionary, city data, etc. into memory or persistence storage.

@delon/mock

Mock will intercept Angular HTTP request and return testing data.

@delon/util

Daily Utilities\u3002

@delon/testing

Commonly used testing suite.

CLI Schematics

CLI Tool

Directory Structure

Schematic diagram of directory structure\uff1a

\u251c\u2500\u2500 _mock                                       # Mock Data rule\n\u251c\u2500\u2500 src\n\u2502\xa0\xa0 \u251c\u2500\u2500 app\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 core                                # Core module\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 i18n\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 net\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 default.interceptor.ts      # Default HTTP interceptor\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 services\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 startup.service.ts          # Initialize project configuration\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 core.module.ts                  # Core module file\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 layout                              # Core layout\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 routes\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 **                              # Business directory\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 routes.module.ts                # Service routing module\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 routes-routing.module.ts        # Service routes registration\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 shared                              # Shared module\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 shared-delon.module.ts          # @Delon/* import of secondary shared modules\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 shared-zorro.module.ts          # NG-ZORRO import of secondary shared modules\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 shared.module.ts                # Shared module file\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 app.component.ts                    # Root component\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 app.module.ts                       # Root module\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 global-config.module.ts             # @delon & ng-zorro global config\n\u2502\xa0\xa0 \u251c\u2500\u2500 assets                                  # Local static resource\n\u2502\xa0\xa0 \u251c\u2500\u2500 environments                            # Environment variable configuration\n\u2502\xa0\xa0 \u251c\u2500\u2500 styles                                  # Style directory\n\u2514\u2500\u2500 \u2514\u2500\u2500 style.less                              # Style guide entry

The following is a description and use of each directory and file.

_mock

The Mock data rules directory, if you create a project via Command Line Tools, you can specify the --mock parameter to determine if the Mock function is required.

src/app/core/core.module.ts

The core module will only be imported once. Therefore, core service classes (eg, messages, data access, etc.) that are required for the entire ** business module should exist here.

src/app/core/i18n

Internationalization data loading and processing related classes. If you create a project via Command Line Tool, you can specify the -di parameter to determine whether internationalization support is required.

src/app/core/net

The default interceptor, where you can handle request parameters, request exceptions, business exceptions, and so on.

src/app/core/services/startup.service.ts

Useful when you need to execute some remote data (eg application information, user information, etc.) before Angular launches.

It is a simple method and returns a Promise object, unless Angular will abort the launch unless resolve(null) is explicitly executed.

src/app/layout

Layout file code, refer to the page structure section.

src/app/routes

Business module, all your business code will be here.

src/app/shared/shared.module.ts

The shared module means that some third-party modules, custom components, and custom instructions that you need to use for the entire business module should exist here. In addition, for @delon & NG-ZORRO, two shared secondary module imports, shared-delon.module.ts andshared-zorro.module.ts.

src/app/global-config.module.ts

Global configuration for @delon & NG-ZORRO.

src/environments

The application environment variable contains the following values:

',meta:{order:20,title:"Architecture",type:"Basic",i18n:"need-update"},toc:[{id:"ArchitectureDiagram",title:"Architecture Diagram",h:2},{id:"DirectoryStructure",title:"Directory Structure",h:2}]},"zh-CN":{content:'

NG-ALAIN \u76ee\u6807\u662f\u63d0\u4f9b\u66f4\u591a\u901a\u7528\u6027\u4e1a\u52a1\u6a21\u5757\uff0c\u8ba9\u5f00\u53d1\u8005\u66f4\u52a0\u4e13\u6ce8\u4e8e\u4e1a\u52a1\u3002\u6240\u4ee5\u5728\u4f60\u7740\u624b\u5f00\u59cb\u5f00\u53d1\u524d\uff0c\u6709\u5fc5\u8981\u4e86\u89e3\u6574\u4e2a NG-ALAIN \u7684\u4f53\u7cfb\u7ed3\u6784\uff0c\u4ece\u6574\u4f53\u4e0a\u4e86\u89e3 NG-ALAIN \u5305\u542b\u4e86\u54ea\u4e9b\u4e1c\u897f\u53ca\u5176\u542b\u4e49\uff0c\u624d\u80fd\u66f4\u597d\u7684\u5229\u7528\u8fd9\u4e9b\u4e1a\u52a1\u7ec4\u4ef6\u5e93\u5feb\u901f\u6784\u5efa\u9879\u76ee\u3002

\u7ed3\u6784\u56fe

\u7c7b\u5e93\u6587\u6863\u63cf\u8ff0
@delon/theme\u6587\u6863\u4e3b\u9898\u7cfb\u7edf\u9664\u4e86\u5305\u542b NG-ALAIN \u57fa\u7840\u6846\u67b6\u53ca\u6240\u9700\u6837\u5f0f\uff08\u5305\u542bCSS\u5de5\u5177\u96c6\uff0c\u4e00\u5957\u7c7b\u4f3cBootstrap\uff09\u4ee5\u5916\uff0c\u8fd8\u5305\u542b\u4e00\u4e9b\u901a\u7528\u7684\u6570\u636e\u6e32\u67d3\uff08Pipe\uff09\u3001\u670d\u52a1\u5de5\u5177\u7c7b\uff08\u9875\u9762\u6807\u9898\u3001\u6eda\u52a8\u6761\u7b49\uff09\u7684\u96c6\u5408\uff0c\u8fd9\u4e9b\u662f\u65e5\u5e38\u5fc5\u4e0d\u53ef\u5c11\u7684\u4e00\u4e9b\u7ec4\u6210
@delon/abc\u6587\u6863\u811a\u624b\u67b6\u5185\u63d0\u4f9b\u4e86\u4e00\u5957\u9ed8\u8ba4\u4e1a\u52a1\u7ec4\u4ef6\uff0c\u8fd9\u4e9b\u7ec4\u4ef6\u62bd\u8c61\u4e86\u63a7\u5236\u53f0\u4e1a\u52a1\u4e2d\u7684\u4e00\u4e9b\u5e38\u89c1\u533a\u5757\u3002\u6211\u4eec\u5c06\u6301\u7eed\u7ef4\u62a4\u548c\u8fed\u4ee3\u8fd9\u4e9b\u7ec4\u4ef6\uff0c\u4e3a\u4e2d\u540e\u53f0\u4e1a\u52a1\u63d0\u4f9b\u6bd4 Ant Design \u57fa\u7840\u7ec4\u4ef6\u66f4\u9ad8\u7ea7\u522b\u7684\u62bd\u8c61
@delon/chart\u6587\u6863\u57fa\u4e8e G2 \u7684\u57fa\u7840\u4e0a\u4e8c\u6b21\u5c01\u88c5\uff0c\u63d0\u4f9b\u4e86\u4e1a\u52a1\u4e2d\u5e38\u7528\u7684\u56fe\u8868\u5957\u4ef6\uff0c\u53ef\u4ee5\u5355\u72ec\u4f7f\u7528\uff0c\u4e5f\u53ef\u4ee5\u7ec4\u5408\u8d77\u6765\u5b9e\u73b0\u590d\u6742\u7684\u5c55\u793a\u6548\u679c
@delon/form\u6587\u6863\u57fa\u4e8e JSON Schema \u6807\u51c6\u7684\u52a8\u6001\u6784\u5efa\u8868\u5355
@delon/auth\u6587\u6863\u7528\u6237\u8ba4\u8bc1\u6a21\u5757\uff0c\u7528\u4e8e\u89e3\u51b3\u5982\u4f55\u83b7\u53d6\u3001\u5b58\u53d6\u3001\u4f7f\u7528\u8fd9\u4e09\u4e2a\u6b65\u9aa4\u7684\u7528\u6237\u8ba4\u8bc1\u73af\u8282
@delon/acl\u6587\u6863\u8bbf\u95ee\u63a7\u5236\u5217\u8868\uff0c\u662f\u4e00\u79cd\u975e\u5e38\u7b80\u5355\u7684\u57fa\u4e8e\u89d2\u8272\u6743\u9650\u63a7\u5236\uff0c\u751a\u81f3\u8fbe\u5230\u63a7\u5236\u67d0\u4e2a\u6309\u94ae\u663e\u9690\u7684\u7c92\u5ea6
@delon/cache\u6587\u6863\u5c06\u5b57\u5178\u3001\u57ce\u5e02\u6570\u636e\u7b49\u7f13\u5b58\u81f3\u5185\u5b58\u6216\u6301\u4e45\u5316\u5f53\u4e2d\uff0c\u6709\u6548\u51cf\u5c11 Http \u8bf7\u6c42
@delon/mock\u6587\u6863Mock \u4f1a\u62e6\u622a Angular Http \u8bf7\u6c42\u5e76\u8fd4\u56de\u6d4b\u8bd5\u6570\u636e\uff0c\u5f53\u540e\u7aef\u672a\u5b8c\u6210\u63a5\u53e3\u65f6 Mock \u6280\u672f\u662f\u4e00\u9879\u4e0d\u4f1a\u5f71\u54cd\u524d\u7aef\u5f00\u53d1\u8fdb\u5ea6\u7684\u5de5\u5177
@delon/util\u6587\u6863\u5305\u542b\u6570\u7ec4\u3001\u5ef6\u8fdf\u3001\u5b57\u7b26\u4e32\u3001\u65e5\u671f\u3001\u6821\u9a8c\u7b49\u5e38\u89c1\u5de5\u5177\u96c6
@delon/testing-\u5e38\u7528\u6d4b\u8bd5\u5957\u4ef6
CLI Schematics\u6587\u6863\u5feb\u901f\u751f\u6210\u7edf\u4e00\u7684\u6a21\u677f\u3001\u53ef\u63d2\u62d4\u7684\u63d2\u4ef6\u7b49

\u76ee\u5f55\u7ed3\u6784

\u5f53\u4f7f\u7528 ng add ng-alain \u751f\u6210\u540e\u7684 NG-ALAIN \u811a\u624b\u67b6\uff0c\u5b83\u7684\u57fa\u672c\u76ee\u5f55\u7ed3\u6784\u6982\u7565\u56fe\u5982\u4e0b\uff1a

\u251c\u2500\u2500 _mock                                       # Mock \u6570\u636e\u89c4\u5219\u76ee\u5f55\n\u251c\u2500\u2500 angular.json                                # Angular \u9879\u76ee\u914d\u7f6e\u6587\u4ef6\n\u251c\u2500\u2500 src\n\u2502\xa0\xa0 \u251c\u2500\u2500 app\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 core                                # \u6838\u5fc3\u6a21\u5757\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 i18n\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 net\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 default.interceptor.ts      # \u9ed8\u8ba4HTTP\u62e6\u622a\u5668\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 services\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 startup.service.ts          # \u521d\u59cb\u5316\u9879\u76ee\u914d\u7f6e\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 core.module.ts                  # \u6838\u5fc3\u6a21\u5757\u6587\u4ef6\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 layout                              # \u901a\u7528\u5e03\u5c40\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 routes\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 **                              # \u4e1a\u52a1\u76ee\u5f55\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 routes.module.ts                # \u4e1a\u52a1\u8def\u7531\u6a21\u5757\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 routes-routing.module.ts        # \u4e1a\u52a1\u8def\u7531\u6ce8\u518c\u53e3\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 shared                              # \u5171\u4eab\u6a21\u5757\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 shared-delon.module.ts          # @Delon/* \u6b21\u7ea7\u5171\u4eab\u6a21\u5757\u5bfc\u5165\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 shared-zorro.module.ts          # NG-ZORRO \u6b21\u7ea7\u5171\u4eab\u6a21\u5757\u5bfc\u5165\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 shared.module.ts                # \u5171\u4eab\u6a21\u5757\u6587\u4ef6\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 app.component.ts                    # \u6839\u7ec4\u4ef6\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 app.module.ts                       # \u6839\u6a21\u5757\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 global-config.module.ts             # @delon & ng-zorro \u5168\u5c40\u914d\u7f6e\u9879\n\u2502\xa0\xa0 \u251c\u2500\u2500 assets                                  # \u672c\u5730\u9759\u6001\u8d44\u6e90\n\u2502\xa0\xa0 \u251c\u2500\u2500 environments                            # \u73af\u5883\u53d8\u91cf\u914d\u7f6e\n\u2502\xa0\xa0 \u251c\u2500\u2500 styles                                  # \u6837\u5f0f\u76ee\u5f55\n\u2514\u2500\u2500 \u2514\u2500\u2500 style.less                              # \u6837\u5f0f\u5f15\u5bfc\u5165\u53e3

\u4ee5\u4e0b\u662f\u9488\u5bf9\u5404\u4e2a\u76ee\u5f55\u53ca\u6587\u4ef6\u8bf4\u660e\u53ca\u4f7f\u7528\u76ee\u7684\uff1a

',meta:{order:20,title:"\u4f53\u7cfb\u7ed3\u6784",type:"Basic",i18n:"need-update"},toc:[{id:"\u7ed3\u6784\u56fe",title:"\u7ed3\u6784\u56fe",h:2},{id:"\u76ee\u5f55\u7ed3\u6784",title:"\u76ee\u5f55\u7ed3\u6784",h:2}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-architecture"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"auth",redirectTo:"auth/zh",pathMatch:"full"},{path:"auth/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"zh-CN":"docs/auth.md"},content:{"zh-CN":{content:'
',meta:{order:40,title:{"en-US":"Auth","zh-CN":"\u7528\u6237\u8ba4\u8bc1"},type:"Advance",url:"/auth/getting-started"},toc:[]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-auth"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"cache",redirectTo:"cache/zh",pathMatch:"full"},{path:"cache/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"zh-CN":"docs/cache.md"},content:{"zh-CN":{content:'
',meta:{order:70,title:{"en-US":"Cache","zh-CN":"\u7f13\u5b58"},type:"Advance",url:"/cache/getting-started"},toc:[]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-cache"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"changelog",redirectTo:"changelog/zh",pathMatch:"full"},{path:"changelog/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/changelog.en-US.md","zh-CN":"docs/changelog.zh-CN.md"},content:{"en-US":{content:'

NG-ALAIN strictly follows Semantic Versioning 2.0.0.

Release Schedule


16.4.2 (2023-10-26)

Performance Improvements

16.4.1 (2023-10-20)

Bug Fixes

16.4.0 (2023-10-19)

Bug Fixes

Features

16.3.0 (2023-09-01)

SCAFFOLDING

Bug Fixes

Features

16.2.1 (2023-08-06)

Bug Fixes

16.2.0 (2023-07-21)

SCAFFOLDING

Bug Fixes

Features

BREAKING CHANGE

16.1.1 (2023-07-16)

Bug Fixes

Features

16.0.1 (2023-06-08)

16.0.0 (2023-06-07)

Bug Fixes

Old Versions

All releases notes can be found here

',meta:{order:100,title:"Change Log",type:"Other"},toc:[{id:"16.4.22023-10-26",title:"16.4.2 (2023-10-26)",h:2,children:[{id:"PerformanceImprovements",title:"Performance Improvements",h:3}]},{id:"16.4.12023-10-20",title:"16.4.1 (2023-10-20)",h:2,children:[{id:"BugFixes",title:"Bug Fixes",h:3},{id:"16.4.02023-10-19",title:"16.4.0 (2023-10-19)",h:1},{id:"BugFixes",title:"Bug Fixes",h:3},{id:"Features",title:"Features",h:3},{id:"16.3.02023-09-01",title:"16.3.0 (2023-09-01)",h:1},{id:"SCAFFOLDING",title:"SCAFFOLDING",h:3},{id:"BugFixes",title:"Bug Fixes",h:3},{id:"Features",title:"Features",h:3}]},{id:"16.2.12023-08-06",title:"16.2.1 (2023-08-06)",h:2,children:[{id:"BugFixes",title:"Bug Fixes",h:3},{id:"16.2.02023-07-21",title:"16.2.0 (2023-07-21)",h:1},{id:"SCAFFOLDING",title:"SCAFFOLDING",h:3},{id:"BugFixes",title:"Bug Fixes",h:3},{id:"Features",title:"Features",h:3},{id:"BREAKINGCHANGE",title:"BREAKING CHANGE",h:3},{id:"16.1.12023-07-16",title:"16.1.1 (2023-07-16)",h:1},{id:"BugFixes",title:"Bug Fixes",h:3},{id:"Features",title:"Features",h:3}]},{id:"16.0.12023-06-08",title:"16.0.1 (2023-06-08)",h:2,children:[{id:"16.0.02023-06-07",title:"16.0.0 (2023-06-07)",h:1},{id:"BugFixes",title:"Bug Fixes",h:3}]},{id:"OldVersions",title:"Old Versions",h:2}]},"zh-CN":{content:'

NG-ALAIN \u4e25\u683c\u9075\u5faa Semantic Versioning 2.0.0 \u8bed\u4e49\u5316\u7248\u672c\u89c4\u8303\u3002

\u53d1\u5e03\u5468\u671f


16.4.2 (2023-10-26)

Performance Improvements

16.4.1 (2023-10-20)

Bug Fixes

16.4.0 (2023-10-19)

Bug Fixes

Features

16.3.0 (2023-09-01)

SCAFFOLDING

Bug Fixes

Features

16.2.1 (2023-08-06)

Bug Fixes

16.2.0 (2023-07-21)

SCAFFOLDING

Bug Fixes

Features

BREAKING CHANGE

16.1.1 (2023-07-16)

Bug Fixes

Features

16.0.1 (2023-06-08)

16.0.0 (2023-06-07)

Bug Fixes

\u5386\u53f2\u7248\u672c

\u5386\u53f2\u7248\u672c\u7684\u66f4\u65b0\u8bb0\u5f55\u53ef\u4ee5\u5728 Github',meta:{order:100,title:"\u66f4\u65b0\u65e5\u5fd7",type:"Other"},toc:[{id:"16.4.22023-10-26",title:"16.4.2 (2023-10-26)",h:2,children:[{id:"PerformanceImprovements",title:"Performance Improvements",h:3}]},{id:"16.4.12023-10-20",title:"16.4.1 (2023-10-20)",h:2,children:[{id:"BugFixes",title:"Bug Fixes",h:3},{id:"16.4.02023-10-19",title:"16.4.0 (2023-10-19)",h:1},{id:"BugFixes",title:"Bug Fixes",h:3},{id:"Features",title:"Features",h:3},{id:"16.3.02023-09-01",title:"16.3.0 (2023-09-01)",h:1},{id:"SCAFFOLDING",title:"SCAFFOLDING",h:3},{id:"BugFixes",title:"Bug Fixes",h:3},{id:"Features",title:"Features",h:3}]},{id:"16.2.12023-08-06",title:"16.2.1 (2023-08-06)",h:2,children:[{id:"BugFixes",title:"Bug Fixes",h:3},{id:"16.2.02023-07-21",title:"16.2.0 (2023-07-21)",h:1},{id:"SCAFFOLDING",title:"SCAFFOLDING",h:3},{id:"BugFixes",title:"Bug Fixes",h:3},{id:"Features",title:"Features",h:3},{id:"BREAKINGCHANGE",title:"BREAKING CHANGE",h:3},{id:"16.1.12023-07-16",title:"16.1.1 (2023-07-16)",h:1},{id:"BugFixes",title:"Bug Fixes",h:3},{id:"Features",title:"Features",h:3}]},{id:"16.0.12023-06-08",title:"16.0.1 (2023-06-08)",h:2,children:[{id:"16.0.02023-06-07",title:"16.0.0 (2023-06-07)",h:1},{id:"BugFixes",title:"Bug Fixes",h:3}]},{id:"\u5386\u53f2\u7248\u672c",title:"\u5386\u53f2\u7248\u672c",h:2}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-changelog"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"cli",redirectTo:"cli/zh",pathMatch:"full"},{path:"cli/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"zh-CN":"docs/cli.md"},content:{"zh-CN":{content:'

',meta:{order:10,title:{"en-US":"Cli","zh-CN":"\u547d\u4ee4\u884c\u5de5\u5177"},type:"Other",url:"/cli/getting-started"},toc:[]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-cli"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"contributing",redirectTo:"contributing/zh",pathMatch:"full"},{path:"contributing/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/contributing.en-US.md","zh-CN":"docs/contributing.zh-CN.md"},content:{"en-US":{content:'

The following is a set of guidelines for contributing to ng-alain. Please spend several minutes in reading these guidelines before you create an issue or pull request.

Code of Conduct

We have adopted a Code of Conduct that we expect project participants to adhere to. Please read the full text so that you can understand what actions will and will not be tolerated.

Open Development

All work on ng-alain\u3001delon happens directly. Both core team members and external contributors send pull requests which go through the same review process.

Bugs

We are using GitHub Issues for bug tracing. The best way to get your bug fixed via GitHub Issues and provide a reprduction with this template.

Before you reporting a bug, please make sure you\'ve searched exists issues, and read our FAQ.

Proposing a Change

If you intend to change the public API or introduce new feature that via GitHub Issues.

Your First Pull Request

Working on your first Pull Request? You can learn how from this free video series:

How to Contribute to Open Source

To help you get your feet wet and get you familiar with our contribution process, we have a list of good first issues that contain bugs or small features that have a relatively limited scope. This is a great place to get started.

If you decide to fix an issue, please be sure to check the comment thread in case somebody is already working on a fix. If nobody is working on it at the moment, please leave a comment stating that you intend to work on it so other people don\u2019t accidentally duplicate your effort.

If somebody claims an issue but doesn\u2019t follow up for more than two weeks, it\u2019s fine to take over it but you should still leave a comment.

Sending a Pull Request

The core team is monitoring for pull requests. We will review your pull request and either merge it, request changes to it, or close it with an explanation.

Before submitting a pull request, please make sure the following is done:

  1. Run yarn in the repository root.

  2. If you\u2019ve fixed a bug or added code that should be tested, add tests!

  3. Ensure the test suite passes (npm run test).

  4. Make sure your code lints (npm run lint). Tip: Lint runs automatically when you git commit.

  5. Make sure rebase your code to keep the history clean.

  6. Make sure your commit message meet the guidelines

Development Workflow

After cloning ng-alain or delon, run yarn to fetch its dependencies. Then, you can run several commands:

delon

  1. npm run site runs ng-alain.com website locally

  2. npm run lint checks the code style

  3. npm run test runs the complete test suite

  4. npm run release build packages relases

ng-alain

  1. npm run site runs demo site website locally

  2. npm run lint checks the code style

  3. npm test runs test suite

  4. npm run build creates build of demo site

    <
',meta:{order:40,title:"Contributing",type:"Other"},toc:[{id:"CodeofConduct",title:"Code of Conduct",h:2},{id:"OpenDevelopment",title:"Open Development",h:2},{id:"Bugs",title:"Bugs",h:2},{id:"ProposingaChange",title:"Proposing a Change",h:2},{id:"YourFirstPullRequest",title:"Your First Pull Request",h:2},{id:"SendingaPullRequest",title:"Sending a Pull Request",h:2},{id:"DevelopmentWorkflow",title:"Development Workflow",h:2,children:[{id:"delon",title:"delon",h:3},{id:"ng-alain",title:"ng-alain",h:3}]}]},"zh-CN":{content:'

\u8fd9\u7bc7\u6307\u5357\u4f1a\u6307\u5bfc\u4f60\u5982\u4f55\u4e3a NG-ALAIN \u8d21\u732e\u4e00\u4efd\u81ea\u5df1\u7684\u529b\u91cf\uff0c\u8bf7\u5728\u4f60\u8981\u63d0 issue \u6216\u8005 pull request \u4e4b\u524d\u82b1\u51e0\u5206\u949f\u6765\u9605\u8bfb\u4e00\u904d\u8fd9\u7bc7\u6307\u5357\u3002

\u884c\u4e3a\u51c6\u5219

\u6211\u4eec\u6709\u4e00\u4efd \u884c\u4e3a\u51c6\u5219\uff0c\u5e0c\u671b\u6240\u6709\u7684\u8d21\u732e\u8005\u90fd\u80fd\u9075\u5b88\uff0c\u8bf7\u82b1\u65f6\u95f4\u9605\u8bfb\u4e00\u904d\u5168\u6587\u4ee5\u786e\u4fdd\u4f60\u80fd\u660e\u767d\u54ea\u4e9b\u662f\u53ef\u4ee5\u505a\u7684\uff0c\u54ea\u4e9b\u662f\u4e0d\u53ef\u4ee5\u505a\u7684\u3002

\u900f\u660e\u7684\u5f00\u53d1

\u6211\u4eec\u6240\u6709\u7684\u5de5\u4f5c\u90fd\u4f1a\u653e\u5728 ng-alain\u3001delon \u4e0a\u3002\u4e0d\u7ba1\u662f\u6838\u5fc3\u56e2\u961f\u7684\u6210\u5458\u8fd8\u662f\u5916\u90e8\u8d21\u732e\u8005\u7684 pull request \u90fd\u9700\u8981\u7ecf\u8fc7\u540c\u6837\u6d41\u7a0b\u7684 review\u3002

Bugs

\u6211\u4eec\u4f7f\u7528 GitHub Issues \u6765\u505a bug \u8ffd\u8e2a\u3002\u5982\u679c\u4f60\u60f3\u8981\u4f60\u53d1\u73b0\u7684 bug \u88ab\u5feb\u901f\u89e3\u51b3\uff0c\u6700\u597d\u7684\u529e\u6cd5\u5c31\u662f\u6309\u7167 issues \u5448\u73b0\u7684\u6a21\u677f\u8ba4\u771f\u586b\u5199\u6bcf\u4e00\u9879\uff1b\u5e76\u4e14\u80fd\u4f7f\u7528\u8fd9\u4e2a \u6a21\u677f \u6765\u63d0\u4f9b\u91cd\u73b0\u3002

\u5728\u4f60\u62a5\u544a\u4e00\u4e2a bug \u4e4b\u524d\uff0c\u8bf7\u5148\u786e\u4fdd\u5df2\u7ecf\u641c\u7d22\u8fc7\u5df2\u6709\u7684 issue \u548c\u9605\u8bfb\u4e86 \u6587\u6863\u7ad9\u3002

\u65b0\u589e\u529f\u80fd

\u5982\u679c\u4f60\u6709\u6539\u8fdb\u6211\u4eec\u7684 API \u6216\u8005\u65b0\u589e\u529f\u80fd\u7684\u60f3\u6cd5\uff0c\u540c\u6837\u6309\u7167 issues \u5448\u73b0\u7684\u6a21\u677f\u8ba4\u771f\u586b\u5199\u6bcf\u4e00\u9879\u3002

\u7b2c\u4e00\u6b21\u8d21\u732e

\u5982\u679c\u4f60\u8fd8\u4e0d\u6e05\u695a\u600e\u4e48\u5728 GitHub \u4e0a\u63d0 Pull Request \uff0c\u53ef\u4ee5\u9605\u8bfb\u4e0b\u9762\u8fd9\u7bc7\u6587\u7ae0\u6765\u5b66\u4e60\uff1a

\u5982\u4f55\u4f18\u96c5\u5730\u5728 GitHub \u4e0a\u8d21\u732e\u4ee3\u7801

\u4e3a\u4e86\u80fd\u5e2e\u52a9\u4f60\u5f00\u59cb\u4f60\u7684\u7b2c\u4e00\u6b21\u5c1d\u8bd5\uff0c\u6211\u4eec\u7528 good first issues \u6807\u8bb0\u4e86\u4e00\u4e9b\u6bd4\u8f83\u6bd4\u8f83\u5bb9\u6613\u4fee\u590d\u7684 bug \u548c\u5c0f\u529f\u80fd\u3002\u8fd9\u4e9b issue \u53ef\u4ee5\u5f88\u597d\u5730\u505a\u4e3a\u4f60\u7684\u9996\u6b21\u5c1d\u8bd5\u3002

\u5982\u679c\u4f60\u6253\u7b97\u5f00\u59cb\u5904\u7406\u4e00\u4e2a issue\uff0c\u8bf7\u5148\u68c0\u67e5\u4e00\u4e0b issue \u4e0b\u9762\u7684\u7559\u8a00\u4ee5\u786e\u4fdd\u6ca1\u6709\u522b\u4eba\u6b63\u5728\u5904\u7406\u8fd9\u4e2a issue\u3002\u5982\u679c\u5f53\u524d\u6ca1\u6709\u4eba\u5728\u5904\u7406\u7684\u8bdd\u4f60\u53ef\u4ee5\u7559\u8a00\u544a\u77e5\u5176\u4ed6\u4eba\u4f60\u5c06\u4f1a\u5904\u7406\u8fd9\u4e2a issue\uff0c\u4ee5\u514d\u522b\u4eba\u91cd\u590d\u52b3\u52a8\u3002

\u5982\u679c\u4e4b\u524d\u6709\u4eba\u7559\u8a00\u8bf4\u4f1a\u5904\u7406\u8fd9\u4e2a issue \u4f46\u662f\u4e00\u4e24\u4e2a\u661f\u671f\u90fd\u6ca1\u6709\u52a8\u9759\uff0c\u90a3\u4e48\u4f60\u4e5f\u53ef\u4ee5\u63a5\u624b\u5904\u7406\u8fd9\u4e2a issue\uff0c\u5f53\u7136\u8fd8\u662f\u9700\u8981\u7559\u8a00\u544a\u77e5\u5176\u4ed6\u4eba\u3002

Pull Request

Ng Alain \u4f1a\u5173\u6ce8\u6240\u6709\u7684 pull request\uff0c\u6211\u4eec\u4f1a review \u4ee5\u53ca\u5408\u5e76\u4f60\u7684\u4ee3\u7801\uff0c\u4e5f\u6709\u53ef\u80fd\u8981\u6c42\u4f60\u505a\u4e00\u4e9b\u4fee\u6539\u6216\u8005\u544a\u8bc9\u4f60\u6211\u4eec\u4e3a\u4ec0\u4e48\u4e0d\u80fd\u63a5\u53d7\u8fd9\u6837\u7684\u4fee\u6539\u3002

\u5728\u4f60\u53d1\u9001 Pull Request \u4e4b\u524d\uff0c\u8bf7\u786e\u8ba4\u4f60\u662f\u6309\u7167\u4e0b\u9762\u7684\u6b65\u9aa4\u6765\u505a\u7684\uff1a

  1. \u5728\u9879\u76ee\u6839\u76ee\u5f55\u4e0b\u8fd0\u884c\u4e86 yarn\u3002

  2. \u5982\u679c\u4f60\u4fee\u590d\u4e86\u4e00\u4e2a bug \u6216\u8005\u65b0\u589e\u4e86\u4e00\u4e2a\u529f\u80fd\uff0c\u8bf7\u786e\u4fdd\u5199\u4e86\u76f8\u5e94\u7684\u6d4b\u8bd5\uff0c\u8fd9\u5f88\u91cd\u8981\u3002

  3. \u786e\u8ba4\u6240\u6709\u7684\u6d4b\u8bd5\u90fd\u662f\u901a\u8fc7\u7684 npm run test\u3002

  4. \u786e\u4fdd\u4f60\u7684\u4ee3\u7801\u901a\u8fc7\u4e86 lint \u68c0\u67e5 npm run lint\u3002\u5c0f\u8d34\u58eb: Lint \u4f1a\u5728\u4f60 git commit \u7684\u65f6\u5019\u81ea\u52a8\u8fd0\u884c\u3002

  5. \u786e\u4fdd\u4f60\u7684\u4ee3\u7801\u5728\u63d0\u4ea4\u4e4b\u524d\u7ecf\u8fc7\u4e86\u6b63\u786e\u7684 Rebase

  6. \u786e\u4fdd\u4f60\u7684\u63d0\u4ea4\u7b26\u5408\u89c4\u8303

\u5f00\u53d1\u6d41\u7a0b

\u5728\u4f60 clone \u4e86 ng-alain \u6216 delon \u7684\u4ee3\u7801\u5e76\u4e14\u4f7f\u7528 yarn \u5b89\u88c5\u5b8c\u4f9d\u8d56\u540e\uff0c\u4f60\u8fd8\u53ef\u4ee5\u8fd0\u884c\u4e0b\u9762\u51e0\u4e2a\u5e38\u7528\u7684\u547d\u4ee4\uff1a

delon \u57fa\u5efa\u7c7b\u5e93

  1. npm run site \u5728\u672c\u5730\u8fd0\u884c ng-alain.com \u7f51\u7ad9

  2. npm run lint \u68c0\u67e5 packages \u4ee3\u7801\u98ce\u683c

  3. npm run test \u8fd0\u884c packages \u6240\u6709\u7c7b\u5e93\u6d4b\u8bd5

  4. npm run release \u6784\u5efa packages \u53d1\u5e03\u5305

ng-alain \u811a\u624b\u67b6

  1. npm start \u5728\u672c\u5730\u8fd0\u884c\u811a\u624b\u67b6

  2. npm run lint \u68c0\u67e5\u4ee3\u7801\u98ce\u683c

  3. npm test \u8fd0\u884c\u6d4b\u8bd5

  4. npm run build \u6784\u5efa\u751f\u4ea7\u73af\u5883\u7f51\u7ad9

    <
',meta:{order:40,title:"\u8d21\u732e\u6307\u5357",type:"Other"},toc:[{id:"\u884c\u4e3a\u51c6\u5219",title:"\u884c\u4e3a\u51c6\u5219",h:2},{id:"\u900f\u660e\u7684\u5f00\u53d1",title:"\u900f\u660e\u7684\u5f00\u53d1",h:2},{id:"Bugs",title:"Bugs",h:2},{id:"\u65b0\u589e\u529f\u80fd",title:"\u65b0\u589e\u529f\u80fd",h:2},{id:"\u7b2c\u4e00\u6b21\u8d21\u732e",title:"\u7b2c\u4e00\u6b21\u8d21\u732e",h:2},{id:"PullRequest",title:"Pull Request",h:2},{id:"\u5f00\u53d1\u6d41\u7a0b",title:"\u5f00\u53d1\u6d41\u7a0b",h:2,children:[{id:"delon\u57fa\u5efa\u7c7b\u5e93",title:"delon \u57fa\u5efa\u7c7b\u5e93",h:3},{id:"ng-alain\u811a\u624b\u67b6",title:"ng-alain \u811a\u624b\u67b6",h:3}]}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-contributing"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"deploy",redirectTo:"deploy/zh",pathMatch:"full"},{path:"deploy/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/deploy.en-US.md","zh-CN":"docs/deploy.zh-CN.md"},content:{"en-US":{content:'

Construct

When the project is developed, you can package your app with just one line of command:

npm run build

NG-ALAIN itself is an Angular CLI project, so you can also complete more complex build requirements with Build. After the package is successfully packaged, the dist folder will be generated in the root directory, which is to build the packaged file, including several static files such as *.js, *.css, index.html.

JavaScript heap out of memory

Avoid executing ng build when throw error JavaScript heap out of memory:

{\n  "scripts": {\n    "build": "node --max_old_space_size=5120 ./node_modules/@angular/cli/bin/ng build"\n  }\n}

Environmental variables

When you need to distinguish between development and deployment, and test environments, you can configure the corresponding parameters according to different environments through the src/environments folder. The configuration items can also be called directly in the application. At the same time, you need to configure the configuration items in angular.json. Finally, you can change the environment configuration through commands.

Analyze the build file volume

If the build file is large, you can optimize your code by building and analyzing the volume distribution of dependent modules with the analyze command.

npm run analyze

View the analyze page:

npm run analyze:view

Release

When you are ready to deploy (release) your the app, you need only to publish the generated build artifacts - that is, the files in the dist folder - to your cdn or static server. Note that the index.html is usually the entry page for your app and handles all missing file requests. You may need to change the import path of the page after determining the static of js and css.

The default static resource reference path directly points to the directory where the dist folder is published. For example, if you post dist to the root directory of the ng-alain.com site, the requested URL is //ng-alain.com/***.js, //ng-alain.com/***.css, if dist is posted to a directory under a certain directory, such as v2, request The URL is //ng-alain.com/v2/***.js, //ng-alain.com/v2/***.css.

If your static resource is deployed to another domain name (such as a separate CDN address), you can specify a CDN address with the --deployUrl parameter.

ng build -deployUrl=//cdn.ng-alain.com/

The generated index.html with its *.js, *.css files will automatically refer to //cdn.ng-alain.com/*.js, //cdn.ng-alain.com/*css, respectively.

Routing strategy

Angular front-end routing has two different strategies: HashLocationStrategy and PathLocationStrategy. The former is routed by appending a # before a path, and the front-end routing management is performed by HTML5 History, while the latter is similar, but the path does not have # appended before it. Through the configuration of the server, the specified URL can be accessed to the current page, enabling front-end routing management.

If you want to use PathLocationStrategy, you need to replace RouterModule.forRoot(routes, { useHash: true }) of ./src/app/routes/routes-routing.module.ts with RouterModule.forRoot(routes), since that is the default Angular behavior. You might notice that this can also be done by changing the useHash variable in the src/environments/environment.*.ts files, depending on your project configulation. Importantly, your server needs to be correctly configured, such that is returns the index.html for any 404 errors:

Express server example:

app.use(express.static(path.join(__dirname, \'build\')));\n\napp.get(\'/*\', function (req, res) {\n  res.sendFile(path.join(__dirname, \'build\', \'index.html\'));\n});

Egg server example:

// controller\nexports.index = function* () {\n  yield this.render(\'App.jsx\', {\n    context: {\n      user: this.session.user,\n    },\n  });\n};\n\n// router\napp.get(\'home\', \'/*\', \'home.index\');

For more questions about Angular routing, please read official website.

Docker

NG-ALAIN provides a complete image file for building Angular projects based on the nginx WEB service. Where nginx is a mirror using nginx:1.13.5-alpine, which basically satisfies NG-ALAIN The project\'s good operating environment, if there are more needs, you can easily specify nginx.conf with docker run.

1. Building the image

Build a complete image of the runtime environment required by NG-ALAIN based on the Dockerfile.

docker build -t ng-alain .

2. Running

Based on compose (Recommended)

docker-compose up -d

The details can be modified with docker-compose.yml.

Based on imperative

docker run -d -p 80:80 --name alain ng-alain

Finally, you can visit\uff1ahttp://localhost/

3. About SSL

The Dockerfile provided by NG-ALAIN is relatively simple, and the most common use of real projects is support for SSL.

Therefore, by default you can place the certificate in the _nginx/ssl directory and enable the _nginx/default.conf related SSL configuration item.

Finally, add the ports node of docker-compose.yml:

- 443:443

Container deployment

Refer to Angular Container Deployment

',meta:{order:70,title:{"en-US":"Build & Deploy","zh-CN":"\u6784\u5efa\u548c\u53d1\u5e03"},type:"Dev"},toc:[{id:"Construct",title:"Construct",h:2,children:[{id:"JavaScriptheapoutofmemory",title:"JavaScript heap out of memory",h:3},{id:"Environmentalvariables",title:"Environmental variables",h:3},{id:"Analyzethebuildfilevolume",title:"Analyze the build file volume",h:3}]},{id:"Release",title:"Release",h:2,children:[{id:"Routingstrategy",title:"Routing strategy",h:3},{id:"Docker",title:"Docker",h:3},{id:"Containerdeployment",title:"Container deployment",h:3}]}]},"zh-CN":{content:'

\u6784\u5efa

\u5f53\u9879\u76ee\u5f00\u53d1\u5b8c\u6bd5\uff0c\u53ea\u9700\u8981\u8fd0\u884c\u4e00\u884c\u547d\u4ee4\u5c31\u53ef\u4ee5\u6253\u5305\u4f60\u7684\u5e94\u7528\uff1a

npm run build

NG-ALAIN \u672c\u8eab\u662f\u4e00\u4e2a Angular CLI \u9879\u76ee\uff0c\u56e0\u6b64\u4e5f\u53ef\u4ee5\u53c2\u7167 Build \u5b8c\u6210\u66f4\u590d\u6742\u7684\u6784\u5efa\u9700\u6c42\u3002\u6784\u5efa\u6253\u5305\u6210\u529f\u4e4b\u540e\uff0c\u4f1a\u5728\u6839\u76ee\u5f55\u751f\u6210 dist \u6587\u4ef6\u5939\uff0c\u91cc\u9762\u5c31\u662f\u6784\u5efa\u6253\u5305\u597d\u7684\u6587\u4ef6\uff0c\u5305\u542b\u82e5\u5e72 *.js\u3001*.css\u3001index.html \u7b49\u9759\u6001\u6587\u4ef6\u3002

JavaScript heap out of memory

\u907f\u514d\u6267\u884c ng build \u65f6\u629b\u51fa JavaScript heap out of memory\uff1a

{\n  "scripts": {\n    "build": "node --max_old_space_size=5120 ./node_modules/@angular/cli/bin/ng build"\n  }\n}

\u73af\u5883\u53d8\u91cf

\u5f53\u4f60\u9700\u8981\u533a\u522b\u5f00\u53d1\u548c\u90e8\u7f72\u4ee5\u53ca\u6d4b\u8bd5\u73af\u5883\u7684\u65f6\u5019\uff0c\u53ef\u4ee5\u901a\u8fc7 src/environments \u6587\u4ef6\u5939\u6839\u636e\u4e0d\u540c\u73af\u5883\u914d\u7f6e\u76f8\u5e94\u7684\u53c2\u6570\uff0c\u914d\u7f6e\u9879\u540c\u65f6\u4e5f\u53ef\u4ee5\u5728\u5e94\u7528\u5f53\u4e2d\u76f4\u63a5\u8c03\u7528\u5b83\u4eec\u3002\u540c\u65f6\uff0c\u8fd8\u9700\u8981\u914d\u7f6e angular.json \u5185\u7684\u914d\u7f6e\u9879\uff0c\u6700\u540e\u4f60\u53ef\u4ee5\u900f\u8fc7\u547d\u4ee4\u6539\u53d8\u73af\u5883\u914d\u7f6e\u3002

\u5206\u6790\u6784\u5efa\u6587\u4ef6\u4f53\u79ef

\u5982\u679c\u6784\u5efa\u6587\u4ef6\u5f88\u5927\uff0c\u53ef\u4ee5\u901a\u8fc7 analyze \u547d\u4ee4\u6784\u5efa\u5e76\u5206\u6790\u4f9d\u8d56\u6a21\u5757\u7684\u4f53\u79ef\u5206\u5e03\uff0c\u4ece\u800c\u4f18\u5316\u4f60\u7684\u4ee3\u7801\u3002

npm run analyze

\u67e5\u770b\u5206\u6790\u9875\uff1a

npm run analyze:view

\u53d1\u5e03

\u5bf9\u4e8e\u53d1\u5e03\u6765\u8bb2\uff0c\u53ea\u9700\u8981\u5c06\u6700\u7ec8\u751f\u6210\u7684\u9759\u6001\u6587\u4ef6\uff0c\u4e5f\u5c31\u662f\u901a\u5e38\u60c5\u51b5\u4e0b dist \u6587\u4ef6\u5939\u7684\u9759\u6001\u6587\u4ef6\u53d1\u5e03\u5230\u4f60\u7684 cdn \u6216\u8005\u9759\u6001\u670d\u52a1\u5668\u5373\u53ef\uff0c\u9700\u8981\u6ce8\u610f\u7684\u662f\u5176\u4e2d\u7684 index.html \u901a\u5e38\u4f1a\u662f\u4f60\u540e\u53f0\u670d\u52a1\u7684\u5165\u53e3\u9875\u9762\uff0c\u5728\u786e\u5b9a\u4e86 js \u548c css \u7684\u9759\u6001\u4e4b\u540e\u53ef\u80fd\u9700\u8981\u6539\u53d8\u9875\u9762\u7684\u5f15\u5165\u8def\u5f84\u3002

\u9ed8\u8ba4\u7684\u9759\u6001\u8d44\u6e90\u5f15\u7528\u8def\u5f84\u76f4\u63a5\u6307\u5411 dist \u6587\u4ef6\u5939\u53d1\u5e03\u6240\u5904\u5e94\u7528\u7684\u76ee\u5f55\u4e0b\uff0c\u4f8b\u5982\u4f60\u5c06 dist \u53d1\u5e03\u81f3 ng-alain.com \u7ad9\u70b9\u7684\u6839\u76ee\u5f55\u91cc\u5219\u8bf7\u6c42\u7684\u7f51\u5740\u662f //ng-alain.com/***.js\u3001//ng-alain.com/***.css\uff0c\u82e5 dist \u53d1\u5e03\u81f3\u67d0\u7ad9\u70b9\u4e0b\u67d0\u4e2a\u76ee\u5f55\u5982 v2 \u6587\u4ef6\u5939\u4e0b\uff0c\u5219\u8bf7\u6c42\u7684\u7f51\u5740\u662f //ng-alain.com/v2/***.js\u3001//ng-alain.com/v2/***.css\u3002

\u5982\u679c\u4f60\u7684\u9759\u6001\u8d44\u6e90\u662f\u90e8\u7f72\u5230\u5176\u4ed6\u57df\u540d\uff08\u4f8b\u5982\u72ec\u7acb\u7684 cdn \u5730\u5740\uff09\uff0c\u4f60\u53ef\u4ee5\u900f\u8fc7 -d \u53c2\u6570\u6307\u5b9a\u4e00\u4e2a cdn \u5730\u5740\u3002

ng build -d=//cdn.ng-alain.com/

\u8fd9\u6837\u751f\u6210\u7684 index.html \u5185 *.js\u3001*.css \u4f1a\u81ea\u52a8\u52a0\u4e0a //cdn.ng-alain.com/*.js\u3002

\u8def\u7531\u7b56\u7565

Angular \u524d\u7aef\u8def\u7531\u6709\u4e24\u79cd\u4e0d\u540c\u7b56\u7565 HashLocationStrategy \u548c PathLocationStrategy\u3002\u524d\u8005\u662f\u4ee5 # \u540e\u9762\u7684\u8def\u5f84\u8fdb\u884c\u8def\u7531\u5904\u7406\uff0c\u901a\u8fc7 HTML5 History \u8fdb\u884c\u524d\u7aef\u8def\u7531\u7ba1\u7406\uff0c\u800c\u540e\u8005\u5219\u662f\u7c7b\u4f3c\u9875\u9762\u8bbf\u95ee\u8def\u5f84\u5e76\u6ca1\u6709 #\uff0c\u901a\u8fc7\u670d\u52a1\u7aef\u7684\u914d\u7f6e\uff0c\u80fd\u591f\u8bbf\u95ee\u6307\u5b9a URL \u90fd\u5b9a\u5411\u5230\u5f53\u524d\u9875\u9762\uff0c\u4ece\u800c\u80fd\u591f\u8fdb\u884c\u524d\u7aef\u8def\u7531\u7ba1\u7406\u3002

\u5982\u679c\u4f60\u60f3\u91c7\u7528 PathLocationStrategy \u7b56\u7565\uff0c\u5219\u9700\u8981\u5c06 ./src/app/routes/routes.module.ts \u7684 RouterModule.forRoot(routes, { useHash: true }) \u6362\u6210 RouterModule.forRoot(routes)\u3002\u540c\u65f6\u9700\u8981\u670d\u52a1\u7aef\u505a\u4e00\u4e2a\u6620\u5c04\uff0c\u6bd4\u5982\uff1a

express \u7684\u4f8b\u5b50\uff1a

app.use(express.static(path.join(__dirname, \'build\')));\n\napp.get(\'/*\', function (req, res) {\n  res.sendFile(path.join(__dirname, \'build\', \'index.html\'));\n});

egg \u7684\u4f8b\u5b50\uff1a

// controller\nexports.index = function* () {\n  yield this.render(\'App.jsx\', {\n    context: {\n      user: this.session.user,\n    },\n  });\n};\n\n// router\napp.get(\'home\', \'/*\', \'home.index\');

\u6709\u5173\u66f4\u591a Angular \u8def\u7531\u76f8\u5f53\u95ee\u9898\uff0c\u8bf7\u9605\u8bfb\u5b98\u7f51\u3002

Docker

NG-ALAIN \u63d0\u4f9b\u4e86\u4e00\u4e2a\u57fa\u4e8e nginx WEB\u670d\u52a1\u5b8c\u6574\u7684\u6784\u5efaAngular\u9879\u76ee\u7684\u955c\u50cf\u6587\u4ef6\u3002\u5176\u4e2d nginx \u662f\u91c7\u7528 nginx:1.13.5-alpine \u7684\u955c\u50cf\uff0c\u57fa\u672c\u4e0a\u53ef\u4ee5\u6ee1\u8db3 NG-ALAIN \u9879\u76ee\u7684\u826f\u597d\u8fd0\u884c\u73af\u5883\uff0c\u5018\u82e5\u6709\u66f4\u591a\u9700\u6c42\uff0c\u4f60\u53ef\u4ee5\u5229\u7528 docker run \u8f7b\u6613\u7684\u6307\u5b9a nginx.conf\u3002

1\u3001\u6784\u5efa\u955c\u50cf

\u6839\u636e Dockerfile \u6784\u5efa\u4e00\u4e2a\u5b8c\u6574\u7684 NG-ALAIN \u6240\u9700\u8981\u7684\u8fd0\u884c\u73af\u5883\u7684\u955c\u50cf\u3002

docker build -t ng-alain .

2\u3001\u8fd0\u884c

\u57fa\u4e8ecompose\uff08\u63a8\u8350\uff09

docker-compose up -d

\u5176\u7ec6\u8282\u53ef\u4ee5\u901a\u8fc7 docker-compose.yml \u4fee\u6539\u3002

\u57fa\u4e8e\u547d\u4ee4\u5f0f

docker run -d -p 80:80 --name alain ng-alain

\u6700\u540e\u4f60\u53ef\u4ee5\u8bbf\u95ee\uff1ahttp://localhost/

3\u3001\u5173\u4e8eSSL

NG-ALAIN \u63d0\u4f9b\u7684 Dockerfile \u6587\u4ef6\u76f8\u5bf9\u4e8e\u6bd4\u8f83\u7b80\u5355\uff0c\u800c\u5b9e\u9645\u9879\u76ee\u4e2d\u6700\u5e38\u7528\u7684\u662f\u5bf9SSL\u7684\u652f\u6301\u3002

\u56e0\u6b64\uff0c\u9ed8\u8ba4\u60c5\u51b5\u4e0b\u4f60\u53ef\u4ee5\u5c06\u8bc1\u4e66\u653e\u7f6e _nginx/ssl \u76ee\u5f55\u4e0b\uff0c\u5e76\u5f00\u542f _nginx/default.conf \u76f8\u5173SSL\u914d\u7f6e\u9879\u5373\u53ef\u3002

\u6700\u540e\uff0c\u589e\u52a0 docker-compose.yml \u7684 ports \u8282\u70b9\uff1a

- 443:443

\u5bb9\u5668\u90e8\u7f72

\u53c2\u8003 Angular \u5bb9\u5668\u90e8\u7f72

',meta:{order:70,title:{"en-US":"Build & Deploy","zh-CN":"\u6784\u5efa\u548c\u53d1\u5e03"},type:"Dev"},toc:[{id:"\u6784\u5efa",title:"\u6784\u5efa",h:2,children:[{id:"JavaScriptheapoutofmemory",title:"JavaScript heap out of memory",h:3},{id:"\u73af\u5883\u53d8\u91cf",title:"\u73af\u5883\u53d8\u91cf",h:3},{id:"\u5206\u6790\u6784\u5efa\u6587\u4ef6\u4f53\u79ef",title:"\u5206\u6790\u6784\u5efa\u6587\u4ef6\u4f53\u79ef",h:3}]},{id:"\u53d1\u5e03",title:"\u53d1\u5e03",h:2,children:[{id:"\u8def\u7531\u7b56\u7565",title:"\u8def\u7531\u7b56\u7565",h:3},{id:"Docker",title:"Docker",h:3},{id:"\u5bb9\u5668\u90e8\u7f72",title:"\u5bb9\u5668\u90e8\u7f72",h:3}]}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-deploy"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"faq",redirectTo:"faq/zh",pathMatch:"full"},{path:"faq/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/faq.en-US.md","zh-CN":"docs/faq.zh-CN.md"},content:{"en-US":{content:'

Please check the FAQ below before asking questions.

Basic

Can\'t Bind to since it isn\'t a known property of

When you have multiple lazy modules, you want each submodule to use the component library (for example: NgZorroAntdModule, NgxTinymceModule) should be exported in ShareModule, please refer to module registration guidelines.

Expression Changed After It Has Been Checked Error

Common mistakes under Angular, this article will help you understand why.

Can\'t bind to \'formGroup\' since it isn\'t a known property of \'form\'

Common mistakes under Angular, the use of Reactive Forms requires the introduction of ReactiveFormsModule, refer to official documentation.

Why is the page not updated after the data is modified?

The NG-ZORRO and @delon/* components work in OnPush mode by default. Mutate objects or arrays do not trigger Angular\'s change detection. Use the immutable method.

How to use @delon daily build version

NG-ALAIN provides a delon-builds repository as a daily build version. It\'s not the final stable version, but contains the latest fixed BUG, To use the latest features, you can create delon.sh in the root directory:

#!/usr/bin/env bash\nset -e\necho "Download latest @delon version"\nrm -rf delon-builds\ngit clone --depth 1 https://github.com/ng-alain/delon-builds.git\nrm -rf node_modules/@delon\nrm -rf node_modules/ng-alain\nrsync -am delon-builds/ node_modules/\nNG_ALAIN_VERSION=$(node -p "require(\'./node_modules/ng-alain/package.json\').version")\nrm -rf delon-builds\necho "Using ng-alain version: ${NG_ALAIN_VERSION}"

When you need to use the daily build version of @delon, you only need to run:

bash delon.sh

If in Windows environment, please use WSL to execute Bash scripts.

Installation

Why can\'t I find the ng-zorro-antd/src/*.less style?

Two situations:

  • Using cnpm to install dependencies, you will not be able to find style files. This is because cnpm is in the form of a soft link path, which causes the ng-zorro-antd folder name to change, so it is recommended to use the yarn install dependency package instead.

  • The ng-zorro-antd version is too old to cause some components to fail to load into the appropriate style

How to use Taobao source correctly?

The simplest is to use the networkEnv plugin.

Or manually repair:

yarn config set registry https://registry.npmmirror.com\nyarn config set sass_binary_site https://npmmirror.com/mirrors/node-sass\n# restore\nyarn config delete registry\nyarn config delete sass_binary_site

Configuration

How do I deploy the antd icon locally?

First, the latest iconfont file can go to this link (mirror) Download.

Finally, redefine the new path in src/styles/theme.less:

@icon-url: "/assets/iconfont";

Use an absolute path or CDN address.

Missing locale data for the locale "zh-cn"

For missing language imports, refer to app.module.ts.

How to deploy ng-alain.com documentation site in local

Online documents will only retain the data of the last three major version numbers. If the version is low, you can view it through local deployment:

git clone --depth 1 -b full https://github.com/ng-alain/archive-docs.git ng-alain-doc\ncd ng-alain-doc\nyarn\nyarn start

Fix the abnormal display of the lower part of the 360 browser

The built-in Chrome core of some 360 browsers is too low, resulting in some CSS3 not supported, you can manually increase .browserslistrc For more details, refer to #2310

',meta:{order:20,title:{"en-US":"FAQ","zh-CN":"\u5e38\u89c1\u95ee\u9898"},type:"Other"},toc:[{id:"Basic",title:"Basic",h:2,children:[{id:"Can'tBindtosinceitisn'taknownpropertyof",title:"Can't Bind to since it isn't a known property of",h:3},{id:"ExpressionChangedAfterItHasBeenCheckedError",title:"Expression Changed After It Has Been Checked Error",h:3},{id:"Can'tbindto'formGroup'sinceitisn'taknownpropertyof'form'",title:"Can't bind to 'formGroup' since it isn't a known property of 'form'",h:3},{id:"Whyisthepagenotupdatedafterthedataismodified",title:"Why is the page not updated after the data is modified?",h:3},{id:"Howtouse@delondailybuildversion",title:"How to use @delon daily build version",h:3}]},{id:"Installation",title:"Installation",h:2,children:[{id:"Whycan'tIfindtheng-zorro-antd/src/*.lessstyle",title:"Why can't I find the ng-zorro-antd/src/*.less style?",h:3},{id:"HowtouseTaobaosourcecorrectly",title:"How to use Taobao source correctly?",h:3}]},{id:"Configuration",title:"Configuration",h:2,children:[{id:"HowdoIdeploytheantdiconlocally",title:"How do I deploy the antd icon locally?",h:3},{id:'Missinglocaledataforthelocale"zh-cn"',title:'Missing locale data for the locale "zh-cn"',h:3},{id:"Howtodeployng-alain.comdocumentationsiteinlocal",title:"How to deploy ng-alain.com documentation site in local",h:3},{id:"Fixtheabnormaldisplayofthelowerpartofthe360browser",title:"Fix the abnormal display of the lower part of the 360 browser",h:3}]}]},"zh-CN":{content:'

\u63d0\u95ee\u4e4b\u524d\uff0c\u8bf7\u5148\u67e5\u9605\u4e0b\u9762\u7684\u5e38\u89c1\u95ee\u9898\u3002

\u57fa\u7840

Can\'t Bind to since it isn\'t a known property of

\u5f53\u4f60\u6709\u591a\u4e2a\u61d2\u6a21\u5757\u65f6\uff0c\u5e0c\u671b\u6bcf\u4e2a\u5b50\u6a21\u5757\u90fd\u9700\u8981\u4f7f\u7528\u7ec4\u4ef6\u5e93\u65f6\uff08\u4f8b\u5982\uff1aNgZorroAntdModule\u3001NgxTinymceModule\uff09\u5e94\u5728 ShareModule \u4e2d export\uff0c\u8bf7\u53c2\u8003\u6a21\u5757\u6ce8\u518c\u6307\u5bfc\u539f\u5219\u3002

Expression Changed After It Has Been Checked Error \u9519\u8bef

Angular \u4e0b\u5e38\u89c1\u9519\u8bef\uff0c\u8fd9\u7bc7\u6587\u7ae0 \u4f1a\u5e2e\u52a9\u4f60\u7406\u89e3\u539f\u56e0\u3002

Can\'t bind to \'formGroup\' since it isn\'t a known property of \'form\'

Angular \u4e0b\u5e38\u89c1\u9519\u8bef\uff0c\u4f7f\u7528 Reactive Forms \u9700\u8981\u989d\u5916\u5f15\u5165 ReactiveFormsModule\uff0c\u53ef\u4ee5\u53c2\u8003\u5b98\u65b9\u6587\u6863\u3002

\u6570\u636e\u4fee\u6539\u540e\u9875\u9762\u4e3a\u4ec0\u4e48\u6ca1\u6709\u66f4\u65b0

NG-ZORRO \u53ca @delon/* \u7ec4\u4ef6\u9ed8\u8ba4\u5728 OnPush \u6a21\u5f0f\u4e0b\u5de5\u4f5c\uff0cmutate \u5bf9\u8c61\u6216\u8005\u6570\u7ec4\u4e0d\u4f1a\u89e6\u53d1 Angular \u7684\u53d8\u66f4\u68c0\u6d4b\uff0c\u8bf7\u4f7f\u7528 immutable \u65b9\u5f0f\u3002

\u5982\u4f55\u4f7f\u7528@delon\u6bcf\u65e5\u6784\u5efa\u7248\u672c

NG-ALAIN \u63d0\u4f9b\u4e00\u4e2a delon-builds \u4ed3\u50a8\u4f5c\u4e3a\u6bcf\u65e5\u6784\u5efa\u7248\u672c\uff0c\u5b83\u5e76\u4e0d\u662f\u6700\u7ec8\u7a33\u5b9a\u7248\u672c\uff0c\u4f46\u5305\u542b\u6700\u65b0\u5df2\u4fee\u590dBUG\u3001\u6700\u65b0\u529f\u80fd\uff0c\u8981\u4f7f\u7528\u53ef\u4ee5\u5728\u6839\u76ee\u5f55\u521b\u5efa delon.sh\uff1a

#!/usr/bin/env bash\nset -e\necho "Download latest @delon version"\nrm -rf delon-builds\ngit clone --depth 1 https://github.com/ng-alain/delon-builds.git\nrm -rf node_modules/@delon\nrm -rf node_modules/ng-alain\nrsync -am delon-builds/ node_modules/\nNG_ALAIN_VERSION=$(node -p "require(\'./node_modules/ng-alain/package.json\').version")\nrm -rf delon-builds\necho "Using ng-alain version: ${NG_ALAIN_VERSION}"

\u5f53\u9700\u8981\u4f7f\u7528@delon\u7684\u6bcf\u65e5\u6784\u5efa\u7248\u672c\uff0c\u53ea\u9700\u8981\u5728\u8fd0\u884c\uff1a

bash delon.sh

\u5982\u679c\u662f Windows \u73af\u5883\uff0c\u8bf7\u4f7f\u7528 WSL \u6765\u6267\u884c Bash \u811a\u672c\u3002

\u5b89\u88c5

\u4e3a\u4ec0\u4e48\u627e\u4e0d\u5230 ng-zorro-antd/src/*.less \u6837\u5f0f\uff1f

\u4e24\u79cd\u60c5\u51b5\uff1a

  • \u4f7f\u7528 cnpm \u5b89\u88c5\u4f9d\u8d56\u5305\uff0c\u4f1a\u9047\u5230\u65e0\u6cd5\u627e\u5230\u6837\u5f0f\u6587\u4ef6\u3002\u8fd9\u662f\u7531\u4e8e cnpm \u91c7\u7528\u7684\u662f\u8f6f\u94fe\u63a5\u8def\u5f84\u5f62\u5f0f\uff0c\u5bfc\u81f4 ng-zorro-antd \u6587\u4ef6\u5939\u540d\u6709\u6240\u53d8\u52a8\uff0c\u56e0\u6b64\u5efa\u8bae\u6539\u7528 yarn \u5b89\u88c5\u4f9d\u8d56\u5305\uff0c\u5982\u679c\u662f\u7f51\u7edc\u56e0\u7d20\uff0c\u8bf7\u53c2\u8003\u4e0b\u65b9\u7684\u5982\u4f55\u6b63\u786e\u4f7f\u7528\u6dd8\u5b9d\u6e90\u3002

  • ng-zorro-antd \u7248\u672c\u8fc7\u65e7\u5bfc\u81f4\u90e8\u5206\u7ec4\u4ef6\u65e0\u6cd5\u52a0\u8f7d\u5230\u76f8\u5e94\u6837\u5f0f

\u5982\u4f55\u6b63\u786e\u4f7f\u7528\u6dd8\u5b9d\u6e90\uff1f

\u6700\u7b80\u5355\u662f\u4f7f\u7528 networkEnv \u63d2\u4ef6\u3002

\u6216\u624b\u52a8\u4fee\u590d\uff1a

yarn config set registry https://registry.npmmirror.com\nyarn config set sass_binary_site https://npmmirror.com/mirrors/node-sass\n# \u6062\u590d\nyarn config delete registry\nyarn config delete sass_binary_site

\u914d\u7f6e

\u5982\u4f55\u672c\u5730\u90e8\u7f72 antd \u56fe\u6807\uff1f

\u9996\u5148\uff0c\u6700\u65b0\u7684 iconfont \u6587\u4ef6\u53ef\u4ee5\u5230 \u6b64\u94fe\u63a5\uff08\u955c\u50cf\uff09 \u4e0b\u8f7d\u3002

\u6700\u540e\uff0c\u5728 src/styles/theme.less \u91cd\u65b0\u5b9a\u4e49\u65b0\u7684\u8def\u5f84\uff1a

@icon-url: "/assets/iconfont";

\u4f7f\u7528\u7edd\u5bf9\u8def\u5f84\u6216CDN\u5730\u5740\u3002

Missing locale data for the locale "zh-cn"

\u7f3a\u5c11\u8bed\u8a00\u5bfc\u5165\uff0c\u53c2\u8003app.module.ts\u3002

\u5982\u4f55\u672c\u5730\u90e8\u7f72ng-alain.com\u6587\u6863

\u7ebf\u4e0a\u6587\u6863\u5c06\u53ea\u4fdd\u7559\u6700\u8fd1\u4e09\u4e2a\u4e3b\u7248\u672c\u53f7\u7684\u6570\u636e\uff0c\u82e5\u662f\u4f4e\u7248\u672c\u53ef\u4ee5\u901a\u8fc7\u672c\u5730\u90e8\u7f72\u6765\u67e5\u770b\uff1a

git clone --depth 1 -b full https://github.com/ng-alain/archive-docs.git ng-alain-doc\ncd ng-alain-doc\nyarn\nyarn start

\u4fee\u590d360\u6d4f\u89c8\u5668\u4e0b\u90e8\u5206\u663e\u793a\u5f02\u5e38

\u90e8\u5206360\u6d4f\u89c8\u5668\u5185\u7f6e\u7684 Chrome \u6838\u5fc3\u8fc7\u4f4e\uff0c\u5bfc\u81f4\u90e8\u5206 CSS3 \u672a\u652f\u6301\uff0c\u53ef\u4ee5\u624b\u52a8\u589e\u52a0 .browserslistrc \u66f4\u591a\u7ec6\u8282\u53c2\u8003 #2310

',meta:{order:20,title:{"en-US":"FAQ","zh-CN":"\u5e38\u89c1\u95ee\u9898"},type:"Other"},toc:[{id:"\u57fa\u7840",title:"\u57fa\u7840",h:2,children:[{id:"Can'tBindtosinceitisn'taknownpropertyof",title:"Can't Bind to since it isn't a known property of",h:3},{id:"ExpressionChangedAfterItHasBeenCheckedError\u9519\u8bef",title:"Expression Changed After It Has Been Checked Error \u9519\u8bef",h:3},{id:"Can'tbindto'formGroup'sinceitisn'taknownpropertyof'form'",title:"Can't bind to 'formGroup' since it isn't a known property of 'form'",h:3},{id:"\u6570\u636e\u4fee\u6539\u540e\u9875\u9762\u4e3a\u4ec0\u4e48\u6ca1\u6709\u66f4\u65b0",title:"\u6570\u636e\u4fee\u6539\u540e\u9875\u9762\u4e3a\u4ec0\u4e48\u6ca1\u6709\u66f4\u65b0",h:3},{id:"\u5982\u4f55\u4f7f\u7528@delon\u6bcf\u65e5\u6784\u5efa\u7248\u672c",title:"\u5982\u4f55\u4f7f\u7528@delon\u6bcf\u65e5\u6784\u5efa\u7248\u672c",h:3}]},{id:"\u5b89\u88c5",title:"\u5b89\u88c5",h:2,children:[{id:"\u4e3a\u4ec0\u4e48\u627e\u4e0d\u5230ng-zorro-antd/src/*.less\u6837\u5f0f\uff1f",title:"\u4e3a\u4ec0\u4e48\u627e\u4e0d\u5230 ng-zorro-antd/src/*.less \u6837\u5f0f\uff1f",h:3},{id:"\u5982\u4f55\u6b63\u786e\u4f7f\u7528\u6dd8\u5b9d\u6e90\uff1f",title:"\u5982\u4f55\u6b63\u786e\u4f7f\u7528\u6dd8\u5b9d\u6e90\uff1f",h:3}]},{id:"\u914d\u7f6e",title:"\u914d\u7f6e",h:2,children:[{id:"\u5982\u4f55\u672c\u5730\u90e8\u7f72antd\u56fe\u6807\uff1f",title:"\u5982\u4f55\u672c\u5730\u90e8\u7f72 antd \u56fe\u6807\uff1f",h:3},{id:'Missinglocaledataforthelocale"zh-cn"',title:'Missing locale data for the locale "zh-cn"',h:3},{id:"\u5982\u4f55\u672c\u5730\u90e8\u7f72ng-alain.com\u6587\u6863",title:"\u5982\u4f55\u672c\u5730\u90e8\u7f72ng-alain.com\u6587\u6863",h:3},{id:"\u4fee\u590d360\u6d4f\u89c8\u5668\u4e0b\u90e8\u5206\u663e\u793a\u5f02\u5e38",title:"\u4fee\u590d360\u6d4f\u89c8\u5668\u4e0b\u90e8\u5206\u663e\u793a\u5f02\u5e38",h:3}]}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-faq"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"getting-started",redirectTo:"getting-started/zh",pathMatch:"full"},{path:"getting-started/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/getting-started.en-US.md","zh-CN":"docs/getting-started.zh-CN.md"},content:{"en-US":{content:'

Foreword

NG-ALAIN is a production-ready solution for admin interfaces. Built on the design principles developed by Ant Design, this project introduces higher level components; we have developed templates, components, and a corresponding design kit to improve the user and development experience for admin interfaces.

How to read document

This document uses the following conventions:

  • API

    • [] Input Property

    • () Output Event

    • [()] Two-way binding

    • ng-content Component content placeholders

    • #tpl Refers <ng-template #tpl>

Preparation

You will need node and git. The project is based on Typescript, Angular, g2, @delon and ng-zorro-antd. It would be helpful if you have pre-existing knowledge on those.

Installation

CLI (Recommend)

Please make sure global Angular Cli is latest version via ng version command, please refer to CLI Command Reference for how to upgrade.

yarn global add @angular/cli\nng new my-project --style less --routing --package-manager yarn\ncd my-project\nng add ng-alain\nyarn start\n# Or use HMR mode by: yarn run hmr

Please refer to Schematics for more details.

Clone the Git Repository

git clone --depth=1 https://github.com/ng-alain/ng-alain.git my-project\ncd my-project\nyarn\nyarn start\n# Or use HMR mode by: yarn run hmr

Note: Installing with the CLI is a clean scaffolding; using clone the git repository include all example pages.

Scaffolding

NG-ALAIN is a standard Angular CLI project that includes common routes for admins and demonstrates our component library. The project layout is as follows:

\u251c\u2500\u2500 _mock                                       # Mock Data rule\n\u251c\u2500\u2500 src\n\u2502\xa0\xa0 \u251c\u2500\u2500 app\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 core                                # Core module\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 i18n\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 net\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 default.interceptor.ts      # Default HTTP interceptor\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 services\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 startup.service.ts          # Initialize project configuration\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 core.module.ts                  # Core module file\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 layout                              # Core layout\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 routes\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 **                              # Business directory\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 routes.module.ts                # Service routing module\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 routes-routing.module.ts        # Service routes registration\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 shared                              # Shared module\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 shared-delon.module.ts          # @Delon/* import of secondary shared modules\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 shared-zorro.module.ts          # NG-ZORRO import of secondary shared modules\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 shared.module.ts                # Shared module file\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 app.component.ts                    # Root component\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 app.module.ts                       # Root module\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 global-config.module.ts             # @delon & ng-zorro global config\n\u2502\xa0\xa0 \u251c\u2500\u2500 assets                                  # Local static resource\n\u2502\xa0\xa0 \u251c\u2500\u2500 environments                            # Environment variable configuration\n\u2502\xa0\xa0 \u251c\u2500\u2500 styles                                  # Style directory\n\u2514\u2500\u2500 \u2514\u2500\u2500 style.less                              # Style guide entry

Development

yarn start

This will automatically open http://localhost:4200. If you see the following page then you have succeeded.

Environment Support

\u540d\u79f0\u63cf\u8ff0
angular.jsonAngular \u5de5\u4f5c\u533a\u53ca\u9879\u76ee\u7684\u914d\u7f6e\u6587\u4ef6\uff0c\u53c2\u8003Angular\u6587\u6863
_mockMock \u6570\u636e\u89c4\u5219\u76ee\u5f55\uff0c\u82e5\u4f60\u901a\u8fc7 \u547d\u4ee4\u884c\u5de5\u5177 \u521b\u5efa\u9879\u76ee\u65f6\u53ef\u4ee5\u6307\u5b9a --mock \u53c2\u6570\u51b3\u5b9a\u662f\u5426\u9700\u8981 Mock \u529f\u80fd
src/app/core/core.module.ts\u6838\u5fc3\u6a21\u5757\uff0c\u53ea\u4f1a\u5bfc\u5165\u4e00\u6b21\u3002\u56e0\u6b64\uff0c\u9488\u5bf9\u6574\u4e2a\u4e1a\u52a1\u6a21\u5757\u90fd\u9700\u8981\u4f7f\u7528\u7684\u7eaf\u670d\u52a1\u7c7b\uff08\u4f8b\u5982\uff1a\u6d88\u606f\u3001\u6570\u636e\u8bbf\u95ee\u7b49\uff09
src/app/core/i18n\u56fd\u9645\u5316\u6570\u636e\u52a0\u8f7d\u53ca\u5904\u7406\u76f8\u5173\u7c7b\uff0c\u82e5\u4f60\u901a\u8fc7 \u547d\u4ee4\u884c\u5de5\u5177 \u521b\u5efa\u9879\u76ee\u65f6\u53ef\u4ee5\u6307\u5b9a -di \u53c2\u6570\u51b3\u5b9a\u662f\u5426\u9700\u8981\u56fd\u9645\u5316\u652f\u6301
src/app/core/net\u9ed8\u8ba4\u62e6\u622a\u5668\uff0c\u4f60\u53ef\u4ee5\u5728\u8fd9\u91cc\u7edf\u4e00\u5904\u7406\u8bf7\u6c42\u53c2\u6570\u3001\u8bf7\u6c42\u5f02\u5e38\u3001\u4e1a\u52a1\u5f02\u5e38\u7b49\u52a8\u4f5c
src/app/core/services/startup.service.ts\u5f53\u4f60\u9700\u8981\u5728 Angular \u542f\u52a8\u524d\u6267\u884c\u4e00\u4e9b\u8fdc\u7a0b\u6570\u636e\uff08\u4f8b\u5982\uff1a\u5e94\u7528\u4fe1\u606f\u3001\u7528\u6237\u4fe1\u606f\u7b49\uff09\u65f6\u975e\u5e38\u6709\u7528
src/app/layout\u5e03\u5c40\u76ee\u5f55\uff0c\u5305\u542b\u57fa\u7840\u5e03\u5c40\u3001\u7a7a\u767d\u5e03\u5c40\u3001\u7528\u6237\u767b\u5f55\u5e03\u5c40
src/app/routes\u4e1a\u52a1\u6a21\u5757\uff0c\u4f60\u7684\u6240\u6709\u4e1a\u52a1\u4ee3\u7801\u90fd\u5c06\u5728\u8fd9\u91cc
src/app/shared/shared.module.ts\u5171\u4eab\u6a21\u5757\uff0c\u6307\u5f53\u4f60\u9700\u8981\u9488\u5bf9\u6574\u4e2a\u4e1a\u52a1\u6a21\u5757\u90fd\u9700\u8981\u4f7f\u7528\u7684\u4e00\u4e9b\u7b2c\u4e09\u65b9\u6a21\u5757\u3001\u81ea\u5b9a\u4e49\u7ec4\u4ef6\u3001\u81ea\u5b9a\u4e49\u6307\u4ee4\uff0c\u90fd\u5e94\u8be5\u5b58\u5728\u8fd9\u91cc\u3002\u9664\u6b64\u4e4b\u5916\uff0c\u9488\u5bf9 @delon & NG-ZORRO \u5206\u522b\u6784\u5efa\u4e86 shared-delon.module.ts\u3001shared-zorro.module.ts \u4e24\u79cd\u6b21\u7ea7\u5171\u4eab\u6a21\u5757\u7684\u5bfc\u5165\u3002
src/app/global-config.module.ts\u9488\u5bf9 @delon & NG-ZORRO \u7684\u5168\u5c40\u914d\u7f6e\u9879
src/environments\u5e94\u7528\u73af\u5883\u53d8\u91cf\uff0c\u5305\u542b\u4ee5\u4e0b\u503c\uff1aSERVER_URL \u6240\u6709HTTP\u8bf7\u6c42\u7684\u524d\u7f00\uff1bproduction \u662f\u5426\u751f\u4ea7\u73af\u5883\uff1buseHash \u8def\u7531\u662f\u5426useHash\u6a21\u5f0f
IE / Edge
IE / Edge
Firefox
Firefox
Chrome
Chrome
Safari
Safari
Opera
Opera
Electron
Electron
Edgelast 2 versionslast 2 versionslast 2 versionslast 2 versionslast 2 versions

Contributing

Please read our CONTRIBUTING.md first.

If you\'d like to help us improve NG-ZORRO, just create a Pull Request. Feel free to report bugs and issues here.

If you\'re new to posting issues, we ask that you read How To Ask Questions The Smart Way(This guide does not provide actual support services for this project!) and How to Ask a Question in Open Source Community and How to Report Bugs Effectively prior to posting. Well written bug reports help us help you!

Need Help?

For questions on how to use ng-alain, please post questions to Stack Overflow using the ng-alain tag.

As always, we encourage experienced users to help those who are not familiar with ng-alain!

If you would like to Donate\n to NG-A

',meta:{order:10,title:"Getting Started",type:"Basic",i18n:"need-update"},toc:[{id:"Foreword",title:"Foreword",h:2},{id:"Preparation",title:"Preparation",h:2},{id:"Installation",title:"Installation",h:2,children:[{id:"CLIRecommend",title:"CLI (Recommend)",h:3},{id:"ClonetheGitRepository",title:"Clone the Git Repository",h:3}]},{id:"Scaffolding",title:"Scaffolding",h:2},{id:"Development",title:"Development",h:2},{id:"EnvironmentSupport",title:"Environment Support",h:2},{id:"Contributing",title:"Contributing",h:2},{id:"NeedHelp",title:"Need Help?",h:2},{id:"DONATE",title:"DONATE",h:2}]},"zh-CN":{content:'

\u4ec0\u4e48\u662fNG-ALAIN

NG-ALAIN \u662f\u4e00\u4e2a\u4f01\u4e1a\u7ea7\u4e2d\u540e\u53f0\u524d\u7aef/\u8bbe\u8ba1\u89e3\u51b3\u65b9\u6848\u811a\u624b\u67b6\uff0c\u6211\u4eec\u79c9\u627f Ant Design \u7684\u8bbe\u8ba1\u4ef7\u503c\u89c2\uff0c\u76ee\u6807\u4e5f\u975e\u5e38\u7b80\u5355\uff0c\u5e0c\u671b\u5728Angular\u4e0a\u9762\u5f00\u53d1\u4f01\u4e1a\u540e\u53f0\u66f4\u7b80\u5355\u3001\u66f4\u5feb\u901f\u3002\u968f\u7740\u300e\u8bbe\u8ba1\u8005\u300f\u7684\u4e0d\u65ad\u53cd\u9988\uff0c\u5c06\u6301\u7eed\u8fed\u4ee3\uff0c\u9010\u6b65\u6c89\u6dc0\u548c\u603b\u7ed3\u51fa\u66f4\u591a\u8bbe\u8ba1\u6a21\u5f0f\u548c\u76f8\u5e94\u7684\u4ee3\u7801\u5b9e\u73b0\uff0c\u9610\u8ff0\u4e2d\u540e\u53f0\u4ea7\u54c1\u6a21\u677f/\u7ec4\u4ef6/\u4e1a\u52a1\u573a\u666f\u7684\u6700\u4f73\u5b9e\u8df5\uff0c\u4e5f\u5341\u5206\u671f\u5f85\u4f60\u7684\u53c2\u4e0e\u548c\u5171\u5efa\u3002

\u73af\u5883\u642d\u5efa

Angular \u5f00\u53d1\u73af\u5883\u81f3\u5c11\u9700\u8981\u5b89\u88c5 Node.js(Node.js \u5185\u7f6e\u4e86 npm \u65e0\u987b\u5355\u72ec\u5b89\u88c5\uff0c\u4f46\u63a8\u8350\u4f7f\u7528 Yarn \u4f46\u4f60\u9700\u8981\u5355\u72ec\u989d\u5916\u5b89\u88c5\uff09\u3001VSCode\u7f16\u8f91\u5668\uff0c\u5176\u4e2d Node.js \u5efa\u8bae\u5b89\u88c5 LTS \u7248\u672c\uff0c\u5b89\u88c5\u5b8c\u6210\u540e\u53ef\u4ee5\u901a\u8fc7\u7ec8\u7aef\u7a97\u53e3\u4e2d\u8fd0\u884c\uff1a

node -v # \u67e5\u770b Node.js \u5f53\u524d\u7248\u672c\nyarn -v # \u67e5\u770b Yarn \u5f53\u524d\u7248\u672c

Yarn \u9ed8\u8ba4\u4ece\u56fd\u5916\u6e90\u6765\u4e0b\u8f7d\u5305\u4fe1\u606f\uff0c\u9274\u4e8e\u56fd\u5185\u73af\u5883\u56e0\u7d20\uff0c\u5728\u5f00\u59cb\u4e0b\u4e00\u6b65\u524d\u5148\u8bbe\u5b9a\u6dd8\u5b9d\u63d0\u4f9b\u955c\u50cf\uff1a

yarn config set registry https://registry.npmmirror.com\nyarn config set sass_binary_site https://npmmirror.com/mirrors/node-sass\n# restore\nyarn config delete registry\nyarn config delete sass_binary_site

\u4e5f\u53ef\u4ee5\u4f7f\u7528 nrm \u5305\uff0c\u53ef\u4ee5\u5feb\u901f\u5207\u6362\u4e0d\u540c\u56fd\u5185\u955c\u50cf\u6e90\u3002

\u5b89\u88c5

\u5168\u5c40 Angular Cli

\u5b89\u88c5\u4e4b\u524d\u8bf7\u5148\u786e\u4fdd\u672c\u5730\u5df2\u7ecf\u5b89\u88c5\u5168\u5c40 Angular Cli\uff0c\u53ea\u6709\u8fd9\u6837\u624d\u80fd\u968f\u65f6\u968f\u5730\u5728\u7ec8\u7aef\u4f7f\u7528 ng \u547d\u4ee4\uff0c\u53ef\u4ee5\u901a\u8fc7\u7ec8\u7aef\u7a97\u53e3\u4e2d\u8fd0\u884c\uff1a

yarn global add @angular/cli

\u521b\u5efaNG-ALAIN\u9879\u76ee

NG-ALAIN \u5fc5\u987b\u5148\u521b\u5efa\u4e00\u4e2a\u5168\u65b0\u7684 Angular \u9879\u76ee\uff0c\u53ef\u4ee5\u901a\u8fc7\u7ec8\u7aef\u7a97\u53e3\u4e2d\u8fd0\u884c\uff1a

ng new my-project --style less --routing --package-manager yarn

\u5982\u679c\u4f60\u60f3\u4e86\u89e3 --style\u3001--routing \u53c2\u6570\uff0c\u8bf7\u53c2\u8003 ng new \u6587\u6863\u3002

\u63a5\u4e0b\u6765\u53ea\u9700\u8981\u5c06 NG-ALAIN \u6dfb\u52a0\u5230 my-project \u9879\u76ee\u4e2d\u5373\u53ef\uff0c\u5728 my-project \u76ee\u5f55\u4e0b\u901a\u8fc7\u7ec8\u7aef\u7a97\u53e3\u4e2d\u8fd0\u884c\uff1a

cd my-project\nng add ng-alain

NG-ALAIN \u4f1a\u8be2\u95ee\u662f\u5426\u9700\u8981\u4e00\u4e9b\u989d\u5916\u7684\u63d2\u4ef6\uff0c\u4e00\u5f00\u59cb\u5b8c\u5168\u53ef\u4ee5\u4e00\u8def\u56de\u8f66\uff0c\u8fd9\u4e9b\u63d2\u4ef6\u90fd\u662f\u53ef\u63d2\u62d4\uff0c\u540e\u671f\u53ef\u4ee5\u81ea\u884c\u6dfb\u52a0\u4e0e\u79fb\u9664\u3002

\u4ee5\u4e0a\u53ea\u4f1a\u751f\u6210\u5e72\u51c0\u7684\u9879\u76ee\uff0c\u53ef\u4ee5\u76f4\u63a5\u7528\u4e8e\u751f\u4ea7\u73af\u5883\u4e2d\u3002\u4f60\u53ef\u80fd\u5728\u9884\u89c8\u4e0a\u770b\u5230\u8bb8\u591a\u793a\u4f8b\u9875\uff0c\u5b83\u4eec\u5168\u90fd\u53ef\u4ee5\u5728 Github \u67e5\u770b\u5230\u6e90\u4ee3\u7801\uff0c\u5f53\u7136\u4e5f\u53ef\u4ee5\u901a\u8fc7 Git \u514b\u9686\u4ee3\u7801\u7684\u5f62\u5f0f\u83b7\u5f97\uff1a

git clone --depth=1 https://github.com/ng-alain/ng-alain.git my-project\ncd my-project\nyarn install

\u8fd0\u884c

yarn start

\u542f\u52a8\u5b8c\u6210\u540e\u4f1a\u6253\u5f00\u6d4f\u89c8\u5668\u8bbf\u95ee http://localhost:4200\uff0c\u82e5\u4f60\u770b\u5230\u5982\u4e0b\u9875\u9762\u5219\u4ee3\u8868\u6210\u529f\u4e86\u3002

\u606d\u559c\u4f60\uff0c\u4f60\u5df2\u7ecf\u6210\u529f\u90e8\u7f72\u4e00\u4e2a NG-ALAIN \u9879\u76ee\u3002

\u652f\u6301\u73af\u5883

IE / Edge
IE / Edge
Firefox
Firefox
Chrome
Chrome
Safari
Safari
Opera
Opera
Electron
Electron
Edgelast 2 versionslast 2 versionslast 2 versionslast 2 versionslast 2 versions

\u5982\u4f55\u8d21\u732e

\u5728\u4efb\u4f55\u5f62\u5f0f\u7684\u53c2\u4e0e\u524d\uff0c\u8bf7\u5148\u9605\u8bfb \u8d21\u732e\u8005\u6587\u6863\u3002\u5982\u679c\u4f60\u5e0c\u671b\u53c2\u4e0e\u8d21\u732e\uff0c\u6b22\u8fce Pull Request\uff0c\u6216\u7ed9\u6211\u4eec \u62a5\u544a Bug\u3002

\u5f3a\u70c8\u63a8\u8350\u9605\u8bfb \u300a\u63d0\u95ee\u7684\u667a\u6167\u300b(\u672c\u6307\u5357\u4e0d\u63d0\u4f9b\u6b64\u9879\u76ee\u7684\u5b9e\u9645\u652f\u6301\u670d\u52a1\uff01)\u3001\u300a\u5982\u4f55\u5411\u5f00\u6e90\u793e\u533a\u63d0\u95ee\u9898\u300b \u548c \u300a\u5982\u4f55\u6709\u6548\u5730\u62a5\u544a Bug\u300b\u3001\u300a\u5982\u4f55\u5411\u5f00\u6e90\u9879\u76ee\u63d0\u4ea4\u65e0\u6cd5\u89e3\u7b54\u7684\u95ee\u9898\u300b\uff0c\u66f4\u597d\u7684\u95ee\u9898\u66f4\u5bb9\u6613\u83b7\u5f97\u5e2e\u52a9\u3002

\u793e\u533a\u4e92\u52a9

\u5982\u679c\u60a8\u5728\u4f7f\u7528\u7684\u8fc7\u7a0b\u4e2d\u78b0\u5230\u95ee\u9898\uff0c\u53ef\u4ee5\u901a\u8fc7\u4e0b\u9762\u51e0\u4e2a\u9014\u5f84\u5bfb\u6c42\u5e2e\u52a9\uff0c\u540c\u65f6\u6211\u4eec\u4e5f\u9f13\u52b1\u8d44\u6df1\u7528\u6237\u901a\u8fc7\u4e0b\u9762\u7684\u9014\u5f84\u7ed9\u65b0\u4eba\u63d0\u4f9b\u5e2e\u52a9\u3002

\u901a\u8fc7 Stack Overflow \u6216\u8005 Segment Fault \u63d0\u95ee\u65f6\uff0c\u5efa\u8bae\u52a0\u4e0a ng-alain \u6807\u7b7e\u3002

  1. QQ \u7fa4

  2. Segment Fault\uff08\u4e2d\u6587\uff09

  3. \u52a0\u5165 NG-ALAIN \u81ea\u52a9\u670d\u52a1\u7fa4\uff08\u4e2d\u6587\uff09

\u6350\u52a9

\u5982\u679c\u4f60\u89c9\u5f97 NG-ALAIN \u4e0d\u9519\uff0c\u53ef\u4ee5\u8003\u8651\u81ea\u613f\u4e3a\u672c\u7ad9\u6253\u8d4f\u6216\u6350\u52a9\u3002

{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/global-config.en-US.md","zh-CN":"docs/global-config.zh-CN.md"},content:{"en-US":{content:'

We add support of global configuration to many components. You can define the default behavior of the component through global configuration, thus reducing the code that needs to be written in the template, and support changing global config at runtime.

How to Use?

If you want to provide default configurations to some components, you should provide an object that implements the interface AlainConfig with the injection token ALAIN_CONFIG, in the root module (in another word, to the root injector). Like this:

// global-config.module.ts\nimport { AlainConfig, ALAIN_CONFIG } from \'@delon/util/config\';\n\nconst alainConfig: AlainConfig = {\n  st: { ps: 3 },\n};\n\n@NgModule({\n  providers: [\n    { provide: ALAIN_CONFIG, useValue: alainConfig },\n  ],\n})\nexport class GlobalConfigModule {}

These global configuration would be injected into a service named AlainConfigService and gets stored.

About NG-ZORRO

Please refer to NG-ZORRO Website Documentation

',meta:{order:90,title:{"en-US":"Global Configuration","zh-CN":"\u5168\u5c40\u914d\u7f6e\u9879"},type:"Dev"},toc:[{id:"HowtoUse",title:"How to Use?",h:2},{id:"AboutNG-ZORRO",title:"About NG-ZORRO",h:2}]},"zh-CN":{content:'

\u6211\u4eec\u7ed9\u4f17\u591a\u7ec4\u4ef6\u6dfb\u52a0\u4e86\u5168\u5c40\u914d\u7f6e\u529f\u80fd\uff0c\u4f60\u53ef\u4ee5\u901a\u8fc7\u5168\u5c40\u914d\u7f6e\u6765\u5b9a\u4e49\u7ec4\u4ef6\u7684\u9ed8\u8ba4\u884c\u4e3a\uff0c\u4ece\u800c\u51cf\u5c11\u5728\u6a21\u677f\u4e2d\u9700\u8981\u5199\u7684\u4ee3\u7801\uff08\u8ba9\u4f60\u7684\u4ee3\u7801\u66f4\u52a0\u6e05\u723d\uff09\uff0c\u8fd8\u80fd\u5728\u8fd0\u884c\u65f6\u4fee\u6539\u5168\u5c40\u914d\u7f6e\u9879\u3002

\u5982\u4f55\u4f7f\u7528

\u60f3\u8981\u4e3a\u67d0\u4e9b\u7ec4\u4ef6\u63d0\u4f9b\u9ed8\u8ba4\u914d\u7f6e\u9879\uff0c\u8bf7\u5728\u6839\u6ce8\u5165\u5668\u4e2d\u6839\u636e\u6ce8\u5165\u4ee4\u724c ALAIN_CONFIG \u63d0\u4f9b\u4e00\u4e2a\u7b26\u5408 AlainConfig \u63a5\u53e3\u7684\u5bf9\u8c61\uff0c\u4f8b\u5982\uff1a

// global-config.module.ts\nimport { AlainConfig, ALAIN_CONFIG } from \'@delon/util/config\';\n\nconst alainConfig: AlainConfig = {\n  st: { ps: 3 },\n};\n\n@NgModule({\n  providers: [\n    { provide: ALAIN_CONFIG, useValue: alainConfig },\n  ],\n})\nexport class GlobalConfigModule {}

\u8fd9\u4e9b\u5168\u5c40\u914d\u7f6e\u9879\u5c06\u4f1a\u88ab\u6ce8\u5165 AlainConfigService \u5f53\u4e2d\u5e76\u4fdd\u5b58\u3002

\u5173\u4e8e NG-ZORRO \u5168\u5c40\u914d\u7f6e\u9879

\u8bf7\u53c2\u8003 NG-ZORRO \u5b98\u7f51\u6587\u6863

',meta:{order:90,title:{"en-US":"Global Configuration","zh-CN":"\u5168\u5c40\u914d\u7f6e\u9879"},type:"Dev"},toc:[{id:"\u5982\u4f55\u4f7f\u7528",title:"\u5982\u4f55\u4f7f\u7528",h:2},{id:"\u5173\u4e8eNG-ZORRO\u5168\u5c40\u914d\u7f6e\u9879",title:"\u5173\u4e8e NG-ZORRO \u5168\u5c40\u914d\u7f6e\u9879",h:2}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-global-config"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"graph",redirectTo:"graph/zh",pathMatch:"full"},{path:"graph/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"zh-CN":"docs/graph.md"},content:{"zh-CN":{content:'
',meta:{order:20,title:{"en-US":"Charts","zh-CN":"\u56fe\u8868"},type:"Advance",url:"/chart/getting-started"},toc:[]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-graph"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"how-to-start",redirectTo:"how-to-start/zh",pathMatch:"full"},{path:"how-to-start/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/how-to-start.en-US.md","zh-CN":"docs/how-to-start.zh-CN.md"},content:{"en-US":{content:'

First, pre-order preparation

As you begin your business development on NG-ALAIN, i recommend that you first review the following documents, which is very helpful for everyone on the team.

NG-ALAIN\'s base component library comes from NG-ZORRO, so you can get a very detailed API documentation for its use on the official website. For ng components provided by -alain are obtained through the component page.

Second, the startup process

NG-ALAIN is a scaffold that can be used directly in production environments. The prerequisite for understanding these details is that you have a certain knowledge of Angular. The following documents may be helpful to you before you start:

When running an app via ng serve, a complete Angular startup process would look like this:

  1. Trigger APP_INITIALIZER (the scaffolding implementation is implemented in StartupService.load) to get the application information.

  2. Trigger service routing (src/app/routes/routes-routing.module.ts` for scaffolding)

  3. Rendering components

1) APP_INITIALIZER

From a mid and back-office perspective, NG-ALAIN always believes that a network request is required to get some application information (eg menu data, user data, etc.) before Angular starts.startup.service.ts\uff1bIt returns a Promise object, which always needs to be called: resolve() to ensure that Angular starts normally.

Network requests may encounter a 403 error because the scaffolding uses the user authentication module by default and always assumes that all requests must be a valid user authorization. For more documentation see:

After obtaining the application information, you need to assign some values \u200b\u200bto the built-in services of the scaffolding, including:

Application Information

Including: application name, description, year, information can be directly injected into the SettingsService (API) and directly in the HTML template.

this.settingService.setApp(res.app);

User Info

Including: name, avatar, email address, etc., information can be directly injected into the SettingsService (API) and directly in the HTML template.

this.settingService.setUser(res.user);

Layout information

Including: name, avatar, email, address, etc., information can be directly injected into the SettingsService (API) and directly in the HTML template.

// Whether to fix the top menu\nthis.settingService.setLayout(`fixed`, false);\n// Whether to collapse the right menu\nthis.settingService.setLayout(`collapsed`, false);

Menu data

NG-ALAIN takes menu from the remote and can also inject MenuService (API) to change the menu data. Of course, it is more reasonable to perform menu assignment before Angular starts.

Menu data Make sure ensure Menu format, menu data throughout Applications, for example: page header auto navigation page-header, page title text TitleService Wait.

this.menuService.add(res.menu);

Page title

If the page title always wants to add the application name as a suffix, you can re-adjust the suffix attribute value by injecting TitleService(API).

// Set the suffix of the page title\nthis.titleService.suffix = res.app.name;

ACL

this.aclService.setFull(true);

It is recommended to load the ACL access control permission data before starting. For more details, please refer to Access Control List.

Globalization

It is recommended to load the internationalization package first before starting, which will ensure that the page is rendered as the target language after the project is started. See Internationalization for more details.

2) Business routing

Scaffolding top-level routing begins with routes-routing.module.ts Its structure is as follows:

const routes: Routes = [\n  {\n    path: \'\',\n    component: LayoutDefaultComponent,\n    children: [\n      { path: \'\', redirectTo: \'dashboard\', pathMatch: \'full\' },\n      { path: \'dashboard\', component: DashboardComponent, data: { title: \'Dashboard\' } },\n      // business submodule\n      // { path: \'trade\', loadChildren: \'./trade/trade.module#TradeModule\' }\n    ]\n  },\n  // Blank layout\n  {\n    path: \'blank\',\n    component: LayoutBlankComponent,\n    children: [\n    ]\n  },\n  // passport\n  {\n    path: \'passport\',\n    component: LayoutPassportComponent,\n    children: [\n      { path: \'login\', component: UserLoginComponent },\n      { path: \'register\', component: UserRegisterComponent },\n      { path: \'register-result\', component: UserRegisterResultComponent }\n    ]\n  },\n  // Single page does not wrap Layout\n  { path: \'callback/:type\', component: CallbackComponent },\n  { path: \'403\', component: Exception403Component },\n  { path: \'404\', component: Exception404Component },\n  { path: \'500\', component: Exception500Component },\n  { path: \'**\', redirectTo: \'dashboard\' }\n];

Above we used the LayoutDefaultComponent base layout in the business module. User authorization uses LayoutPassportComponent user authorization layout and the full screen layout.

It is recommended that all submodules be loaded using a lazy module, such as the TradeModule order module, which organizes the code structure more efficiently.

Under what circumstances do you not use lazy loading?

Angular startup from the top-level component. When a lazy module is encountered, it will initiate a script request. At this time, the dashboard or login page will be blank due to network requests, which is not good for the experience.

Routing permission control

The routing URL may be affected by the browser\'s own historical memory, so that users may access the unprivileged route. If you want a better experience, you need to configure the canActivate option on the route. When the user has no permission, it will utomatically jump to the relevant page. see the ACL Routing Guard section for details.

IDE

A developer must first sharpen his tools if he is to do his work well, NG-ALAIN recommended to use the Visual Studio Code IDE, because ng-alain adds some extra features to VSCode to better help you. Development.

Or use the NG-ALAIN Extension Pack suite directly.

Code fragment

Class style smart reminder

ng-alain has a lot of built-in toolkit styles (API), and the following plugins can be installed directly into the HTML template.

',meta:{order:0,title:"How to start",type:"Dev",i18n:"need-update"},toc:[{id:"First,pre-orderpreparation",title:"First, pre-order preparation",h:2},{id:"Second,thestartupprocess",title:"Second, the startup process",h:2,children:[{id:"1APP_INITIALIZER",title:"1) APP_INITIALIZER",h:3},{id:"2Businessrouting",title:"2) Business routing",h:3},{id:"Underwhatcircumstancesdoyounotuselazyloading",title:"Under what circumstances do you not use lazy loading?",h:3},{id:"Routingpermissioncontrol",title:"Routing permission control",h:3}]},{id:"IDE",title:"IDE",h:2,children:[{id:"Codefragment",title:"Code fragment",h:3},{id:"Classstylesmartreminder",title:"Class style smart reminder",h:3}]}]},"zh-CN":{content:'

\u524d\u5e8f\u51c6\u5907

NG-ALAIN \u6280\u672f\u6808\u57fa\u4e8e Typescript\u3001Angular\u3001\u56fe\u8868G2 \u548c NG-ZORRO\uff0c\u5728\u5f00\u59cb\u5c1d\u8bd5\u4f7f\u7528 NG-ALAIN \u811a\u624b\u67b6\u524d\uff0c\u8bf7\u5148\u63d0\u524d\u4e86\u89e3\u548c\u5b66\u4e60\u8fd9\u4e9b\u77e5\u8bc6\u4f1a\u975e\u5e38\u6709\u5e2e\u52a9\u3002\u5982\u679c\u4f60\u662f\u4e00\u540d Java \u6216 C# \u540e\u7aef\u5f00\u53d1\u4eba\u5458\uff0c\u90a3\u4e48\u606d\u559c\u4f60\uff0c\u4f60\u6240\u89c1\u5230\u7684\u4e0d\u7ba1\u662f\u7ed3\u6784\u3001\u4ee3\u7801\u3001\u5f00\u53d1\u4f53\u9a8c\u7b49\u90fd\u662f\u4f60\u6240\u60f3\u7684\u90a3\u6837\u3002\u4f46\u4e0d\u7ba1\u600e\u4e48\u6837\uff0c\u60f3\u5199\u597d Angular \u4ee3\u7801\uff0c\u4ee5\u4e0b\u8fd9\u4e9b\u6587\u7ae0\u53ca\u793e\u533a\u662f\u4f60\u5fc5\u987b\u8981\u77e5\u9053\u7684\uff1a

\u5199\u5728\u524d\u9762

\u5f88\u591a\u4eba\u5728\u5b66\u4e60\u4e00\u9879\u65b0\u4e1c\u897f\u65f6\uff0c\u65e0\u5916\u4e4e\u5199\u4e2a Hello World \u6216\u662f\u5199\u4e00\u4e2a Http \u8bf7\u6c42\uff0c\u7136\u540e\u6162\u6162\u5f00\u59cb\u8f90\u5c04\u6240\u9700\u8981\u7684\u6280\u672f\u77e5\u8bc6\u3002\u4e00\u4e2a HTTP \u8bf7\u6c42\u5bf9\u4e2d\u540e\u53f0\u800c\u8a00\u4fbf\u662f\u6db5\u76d6\u4e86 CURD \u4e3b\u8981\u4efb\u52a1\uff0c\u751a\u81f3\u53ef\u4ee5\u8bf490%\u65f6\u95f4\u53ca\u529f\u80fd\u90fd\u5728\u505a\u8fd9\u9879\u5de5\u4f5c\u3002\u5728\u4ecb\u7ecd\u7ae0\u8282\u4e2d\u5df2\u7ecf\u63cf\u8ff0\u521b\u5efa\u4e00\u4e2a NG-ALAIN \u9879\u76ee\u5e76\u5982\u4f55\u8fd0\u884c\u5b83\uff0c\u5982\u679c\u6b64\u65f6\u4f60\u4e5f\u60f3\u8981\u5199\u4e2a Hello World\uff0c\u90a3\u4e48\u53ea\u9700\u8981\u5229\u7528 VSCode \u6253\u5f00\u8fd9\u4e2a\u9879\u76ee\uff0c\u5e76\u5728 dashboard.component.html \u6587\u4ef6\u5185\u8f93\u5165\u6587\u672c\uff0c500ms \u540e\u5c31\u4f1a\u5728\u9875\u9762\u4e0a\u7acb\u5373\u5448\u73b0\u3002

\u6d41\u7a0b

\u56de\u8fc7\u5934\u6765\u6211\u4eec\u8bd5\u7740\u56de\u60f3\u4e00\u4e0b\uff0c\u4e00\u4e2a\u4e2d\u540e\u53f0\u9879\u76ee\uff0c\u4ece\u542f\u52a8\u518d\u5230\u5448\u73b0\u4e00\u4efd\u8ba2\u5355\u5217\u8868\u7684\u529f\u80fd\uff0c\u5bf9\u4e8e\u5f00\u53d1\u8005\u800c\u8a00\u5305\u542b\u4e86\u54ea\u4e9b\u4e8b\u4ef6\u3002\u65e0\u5916\u4e4e\u9879\u76ee\u542f\u52a8\u65f6\u5e94\u8be5\u52a0\u8f7d\u70b9\u4ec0\u4e48\u7cfb\u7edf\u914d\u7f6e\u9879\uff0c\u54ea\u4e9b\u9875\u9762\u7528\u6237\u65e0\u6743\u8fdb\u5165\uff1b\u628a\u7c92\u5ea6\u518d\u60f3\u7ec6\u4e00\u70b9\uff0c\u540c\u4e00\u4e2a\u9875\u9762\u4e0d\u540c\u7684\u6309\u94ae\u7ed9\u4e0d\u540c\u7684\u4eba\u7528\uff0cHTTP\u8bf7\u6c42\u82e5\u4ea7\u751f\u9519\u8bef\u662f\u4e0d\u662f\u5f97\u6bcf\u6b21\u90fd\u5199\u76f8\u540c\u7684\u5904\u7406\u4ee3\u7801\u7b49\u7b49\u3002

\u521d\u59cb\u5316\u9879\u76ee\u6570\u636e

Angular \u63d0\u4f9b\u4e00\u4e2aDI\uff08\u4f9d\u8d56\u6ce8\u5165\uff09\u4ee4\u724c APP_INITIALIZER \u8ba9\u5e94\u7528\u542f\u52a8\u65f6\u53ef\u4ee5\u505a\u4e00\u4e9b\u4f1a\u5f71\u54cd\u6e32\u67d3\u7ed3\u679c\u7684\u6570\u636e\uff0c\u6bd4\u5982\uff1a\u8bed\u8a00\u6570\u636e\u3001\u83dc\u5355\u6570\u636e\u3001\u7528\u6237\u4fe1\u606f\u6570\u636e\u3001\u5b57\u5178\u6570\u636e\u7b49\uff0c\u5e76\u4e14\u5fc5\u987b\u8fd4\u56de\u4e00\u4e2a Promise \u5f02\u6b65\u51fd\u6570\uff0c\u5f02\u6b65\u610f\u5473\u8005\u53ef\u4ee5\u505a\u5f88\u591a\u6709\u8da3\u7684\u4e8b\uff0c\u6bd4\u5982\u6570\u636e\u6765\u81ea\u8fdc\u7a0b\u3002APP_INITIALIZER \u53ea\u4f1a\u6267\u884c\u4e00\u6b21\uff0c\u53ea\u9700\u8981\u5728 AppModule \u6a21\u5757\u6ce8\u518c\u5b83\u5c31\u884c\u4e86\u3002

export function StartupServiceFactory(startupService: StartupService): () => Promise {\n  return () => startupService.load();\n}\n\n@NgModule({\n  declarations: [AppComponent],\n  imports: [BrowserModule]\n  providers: [{\n    StartupService,\n    {\n      provide: APP_INITIALIZER,\n      useFactory: StartupServiceFactory,\n      deps: [StartupService],\n      multi: true,\n    },\n  }],\n  bootstrap: [AppComponent],\n})\nexport class AppModule {}

\u800c StartupService \u5982\u4e0b\uff1a

@Injectable()\nexport class StartupService {\n  constructor(private httpClient: HttpClient) {}\n\n  load(): Promise { \n    return new Promise((resolve) => {\n      this.httpClient.get(``).subscribe(() => {\n        resolve();\n      });\n    });\n  }\n}

\u54ea\u6015 Http \u8bf7\u6c42\u5931\u8d25\uff0c\u8fd9\u91cc\u4e5f\u5fc5\u987b\u6267\u884c resolve()\uff0c\u5426\u5219\u5e94\u7528\u5c31\u65e0\u6cd5\u542f\u52a8\u3002\u800c NG-ALAIN \u63d0\u4f9b\u7684 startup.service.ts \u5185\u5bb9\u66f4\u52a0\u4e30\u5bcc\u4e00\u70b9\uff0c\u5bf9\u4e8e\u5b8c\u6574\u7684\u4e2d\u540e\u53f0\u800c\u8a00\uff0c\u5927\u591a\u6570\u9879\u76ee\u4e2d\u4ee5\u4e0b\u8fd9\u4e9b\u4fe1\u606f\u90fd\u53ef\u4ee5\u5fc5\u5907\u7684\uff1a

\u6570\u636e\u7c7b\u578b\u63cf\u8ff0
\u5e94\u7528\u4fe1\u606f\u5e94\u7528\u540d\u79f0\u3001\u63cf\u8ff0\u3001\u5e74\u4efd\uff0c\u4fe1\u606f\u53ef\u4ee5\u76f4\u63a5\u6ce8\u5165 SettingsService\uff08API\uff09\u540e\u76f4\u63a5\u5728HTML\u6a21\u677f\u4e2d\u8bbf\u95ee\u3002
\u4f8b\u5982\uff1athis.settingService.setApp(res.app);
\u7528\u6237\u4fe1\u606f\u5f53\u524d\u7528\u6237\u7684\u59d3\u540d\u3001\u5934\u50cf\u3001\u90ae\u7bb1\u5730\u5740\u7b49\uff0c\u4fe1\u606f\u53ef\u4ee5\u76f4\u63a5\u6ce8\u5165 SettingsService\uff08API\uff09\u540e\u76f4\u63a5\u5728HTML\u6a21\u677f\u4e2d\u8bbf\u95ee\u3002
\u4f8b\u5982\uff1athis.settingService.setUser(res.user);
\u5e03\u5c40\u4fe1\u606f\u8c03\u6574\u4e3b\u9898\u914d\u7f6e\uff0c\u4f8b\u5982\uff1a\u56fa\u5b9a\u9876\u90e8\u83dc\u5355\u3001\u6298\u53e0\u83dc\u5355\u7b49\u3002
\u4f8b\u5982\uff1athis.settingService.setLayout("fixed", false); \u6216 this.settingService.setLayout("collapsed", false);
\u83dc\u5355\u6570\u636eNG-ALAIN \u8ba4\u4e3a\u83dc\u5355\u6570\u636e\u4e5f\u662f\u6765\u81ea\u8fdc\u7a0b\uff0c\u4e5f\u53ef\u4ee5\u4efb\u610f\u4f4d\u7f6e\u6ce8\u5165 MenuService\uff08API\uff09\u6765\u6539\u53d8\u83dc\u5355\u6570\u636e\uff0c\u5f53\u7136\u5728 Angular \u542f\u52a8\u4e4b\u524d\u6267\u884c\u83dc\u5355\u8d4b\u503c\u66f4\u4e3a\u5408\u7406\u3002
\u83dc\u5355\u6570\u636e\u52a1\u5fc5\u786e\u4fdd Menu \u683c\u5f0f\uff0c\u83dc\u5355\u6570\u636e\u8d2f\u7a7f\u6574\u4e2a\u5e94\u7528\uff0c\u4f8b\u5982\uff1a\u9875\u5934\u81ea\u52a8\u5bfc\u822a page-header\uff0c\u9875\u6807\u9898\u6587\u672c TitleService \u7b49\u3002
\u4f8b\u5982\uff1athis.menuService.add(res.menu);
\u9875\u9762\u6807\u9898\u82e5\u9875\u9762\u6807\u9898\u603b\u5e0c\u671b\u52a0\u4e0a\u5e94\u7528\u540d\u79f0\u4e3a\u540e\u7f00\u65f6\uff0c\u53ef\u4ee5\u6ce8\u5165 TitleService\uff08API\uff09\u91cd\u65b0\u8c03\u6574 suffix \u5c5e\u6027\u503c\u3002
\u4f8b\u5982\u8bbe\u7f6e\u9875\u9762\u6807\u9898\u7684\u540e\u7f00\uff1athis.titleService.suffix = res.app.name;
ACL\u8bbf\u95ee\u63a7\u5236\u5217\u8868\u6570\u636e\uff0c\u5efa\u8bae\u5728\u542f\u52a8\u524d\u52a0\u8f7dACL\u8bbf\u95ee\u63a7\u5236\u6743\u9650\u6570\u636e\uff0c\u6709\u5173\u66f4\u591a\u7ec6\u8282\u53ef\u53c2\u8003 \u8bbf\u95ee\u63a7\u5236\u5217\u8868\u3002
\u4f8b\u5982\u8bbe\u7f6e\u5168\u91cf\u6743\u9650\uff1athis.aclService.setFull(true);
\u56fd\u9645\u5316\u5efa\u8bae\u5728\u542f\u52a8\u524d\u4f18\u5148\u52a0\u8f7d\u56fd\u9645\u5316\u6570\u636e\u5305\uff0c\u8fd9\u6837\u53ef\u786e\u4fdd\u9879\u76ee\u542f\u52a8\u540e\u9875\u9762\u6e32\u67d3\u4e3a\u76ee\u6807\u8bed\u8a00\u3002\u66f4\u591a\u7ec6\u8282\u53c2\u8003\u56fd\u9645\u5316\u3002

\u4e1a\u52a1\u8def\u7531

\u5f53 Angular \u9879\u76ee\u6b63\u5f0f\u542f\u52a8\u540e\u4f1a\u8fdb\u5165\u6e32\u67d3\u52a8\u4f5c\uff0c\u6839\u636e\u5f53\u524d\u7684\u8def\u7531\u5730\u5740\u6765\u51b3\u5b9a\u4e00\u4e2a\u9875\u9762\u5982\u4f55\u6e32\u67d3\uff0c\u4ece\u6700\u9876\u5c42\u8def\u7531 routes-routing.module.ts \u5f00\u59cb\u4e00\u5c42\u5c42\u5bfb\u627e\uff0c\u5176\u7ed3\u6784\u5982\u4e0b\uff1a

const routes: Routes = [\n  {\n    path: \'\',\n    component: LayoutBasicComponent,\n    children: [\n      { path: \'\', redirectTo: \'dashboard\', pathMatch: \'full\' },\n      { path: \'dashboard\', component: DashboardComponent, data: { title: \'\u4eea\u8868\u76d8\' } },\n      // \u4e1a\u52a1\u5b50\u6a21\u5757\n      // { path: \'trade\', loadChildren: \'./trade/trade.module#TradeModule\' }\n    ]\n  },\n  // \u7a7a\u767d\u5e03\u5c40\n  {\n    path: \'blank\',\n    component: LayoutBlankComponent,\n    children: [\n    ]\n  },\n  // passport\n  {\n    path: \'passport\',\n    component: LayoutPassportComponent,\n    children: [\n      { path: \'login\', component: UserLoginComponent },\n    ]\n  },\n  // \u5355\u9875\u4e0d\u5305\u88f9Layout\n  { path: \'passport/callback/:type\', component: CallbackComponent },\n  { path: \'exception\', loadChildren: () => import(\'./exception/exception.module\').then((m) => m.ExceptionModule) },\n  // \u672a\u547d\u4e2d\u8def\u7531\u5168\u90e8\u8df3\u8f6c\u81f3 `exception/404` \u9875\u9762\u4e0a\n  { path: \'**\', redirectTo: \'exception/404\' },\n];

\u4e0a\u8ff0\u5728\u4e1a\u52a1\u6a21\u5757\u4e2d\u4f7f\u7528\u4e86 LayoutBasicComponent \u57fa\u7840\u5e03\u5c40\u3001\u7528\u6237\u6388\u6743\u4f7f\u7528\u4e86 LayoutPassportComponent \u7528\u6237\u6388\u6743\u5e03\u5c40\u4ee5\u53ca LayoutBlankComponent \u7a7a\u767d\u5e03\u5c40\uff0c\u4ee5\u4e0a\u4e09\u79cd\u5e03\u5c40\u90fd\u53ef\u4ee5\u5728 layout \u76ee\u5f55\u4e0b\u627e\u5f97\u5230\u3002

\u4f8b\u5982\u5f53\u7528\u6237\u8bbf\u95ee /dashboard \u8def\u7531\u65f6\uff0c\u4f1a\u5148\u7ecf\u8fc7 LayoutBasicComponent -> DashboardComponent\uff0c\u6700\u7ec8\u6362\u5f62\u6210\u4e00\u4e2a\u5e9e\u5927\u7684\u7ec4\u4ef6\u6811\u6765\u8868\u793a\u4e00\u4e2a\u5177\u4f53\u7684\u9875\u9762\u3002NG-ALAIN \u811a\u624b\u67b6\u5e2e\u52a9\u4f60\u5b8c\u6210\u5927\u591a\u6570\u5de5\u4f5c\uff0c\u800c\u4e00\u4e2a\u65b0\u5165\u95e8\u7684\u4eba\u66f4\u591a\u53ea\u9700\u8981\u5173\u5fc3 DashboardComponent \u4e1a\u52a1\u7ec4\u4ef6\u8be5\u5982\u4f55\u5b9e\u73b0\u3002

\u4ec0\u4e48\u60c5\u51b5\u4e0b\u4e0d\u4f7f\u7528\u61d2\u52a0\u8f7d\uff1f

Angular \u542f\u52a8\u662f\u4ece\u9876\u5c42\u7ec4\u4ef6\u5f00\u59cb\u5411\u4e0b\u6e32\u67d3\uff0c\u5f53\u9047\u5230\u61d2\u6a21\u5757\u65f6\u4f1a\u5148\u53d1\u8d77\u811a\u672c\u8bf7\u6c42\uff0c\u6b64\u65f6\u4f1a\u56e0\u4e3a\u7f51\u7edc\u8bf7\u6c42\u5bfc\u81f4\u4eea\u8868\u76d8\u6216\u767b\u5f55\u9875\u77ed\u6682\u7684\u7a7a\u767d\uff0c\u8fd9\u5bf9\u4f53\u9a8c\u5e76\u4e0d\u597d\u3002

\u7528\u6237\u8ba4\u8bc1\u4e0e\u6388\u6743

\u9875\u9762\u80fd\u5426\u8bbf\u95ee\u53d6\u51b3\u4e8e\u7528\u6237\u662f\u5426\u767b\u5f55\u3001\u5df2\u7ecf\u767b\u5f55\u8fd8\u5f97\u5224\u65ad\u5426\u6709\u6388\u6743\uff0c\u800c\u8fd9\u4e24\u9879\u5de5\u4f5c\u5206\u522b\u4ea4\u7ed9 @delon/auth \u4e0e @delon/acl \u6765\u5b8c\u6210\u3002

\u7528\u6237\u8ba4\u8bc1

\u9996\u5148\u7528\u6237\u8bbf\u95ee\u9875\u9762\u65f6\u662f\u7531\u9876\u5c42\u8def\u7531\u5f00\u59cb\u5bfb\u627e\u547d\u4e2d\u540e\u8fdb\u884c\u6e32\u67d3\uff0c\u8981\u60f3\u8ba9\u6240\u6709\u672a\u767b\u5f55\u7528\u6237\u8df3\u8f6c\u5230\u767b\u5f55\u9875\u9762\uff0c\u53ef\u4ee5\u914d\u7f6e canActivate \u9009\u9879\uff0c@delon/auth \u5df2\u7ecf\u63d0\u4f9b\u4e86\u5177\u4f53\u7684\u5b9e\u73b0\uff0c\u4f8b\u5982\uff1a

const routes: Routes = [\n  {\n    path: \'\',\n    component: LayoutBasicComponent,\n    canActivate: [authSimpleCanActivate],\n    children: [\n      { path: \'\', redirectTo: \'dashboard\', pathMatch: \'full\' },\n      { path: \'dashboard\', component: DashboardComponent, data: { title: \'\u4eea\u8868\u76d8\' } },\n    ]\n  },\n];

\u8fd9\u91cc\u7684 authSimpleCanActivate \u662f\u56e0\u4e3a\u91c7\u7528\u57fa\u4e8e Simple Web Token \u8ba4\u8bc1\u98ce\u683c\uff0c\u5176\u4ed6\u8ba4\u8bc1\u65b9\u5f0f\u8bf7\u53c2\u8003\u7528\u6237\u8ba4\u8bc1\u7ae0\u8282\u3002

\u5f53\u7528\u6237\u672a\u767b\u5f55\u65f6\u4f1a\u76f4\u63a5\u8df3\u8f6c\u81f3 /passport/login \u9875\u9762\uff0c\u5982\u679c\u91c7\u7528\u7684\u662f JWT \u8ba4\u8bc1\u65b9\u5f0f\uff0c\u8fd8\u4f1a\u5bf9 Token \u662f\u5426\u6709\u6548\u8fdb\u884c\u68c0\u9a8c\u3002

\u7528\u6237\u6388\u6743

\u63a5\u8005\u7528\u6237\u8bbf\u95ee\u7684\u9875\u9762\u8fd8\u9700\u8981\u53d6\u51b3\u4e8e\u6388\u6743\u7a0b\u5ea6\uff0c\u4f8b\u5982\u7cfb\u7edf\u914d\u7f6e\u9875\u666e\u901a\u7528\u6237\u80af\u5b9a\u65e0\u6cd5\u8fdb\u5165\u3002\u5728\u521d\u59cb\u5316\u9879\u76ee\u6570\u636e\u5c0f\u8282\u91cc\u4f1a\u6839\u636e\u5f53\u524d\u7528\u6237\u7684 Token \u6765\u83b7\u5f97\u6388\u6743\u7684\u6570\u636e\uff0c\u5e76\u5c06\u6570\u636e\u4ea4\u7ed9 @delon/acl\uff0c\u540c\u65f6\u5b83\u4e5f\u63d0\u4f9b\u4e00\u7ec4\u8def\u7531\u5b88\u536b\u7684\u5177\u4f53\u5b9e\u73b0 aclCanActivate \u65b9\u6cd5\uff0c\u4f8b\u5982\u5e0c\u671b\u6574\u4e2a\u7cfb\u7edf\u914d\u7f6e\u6a21\u5757\u90fd\u5fc5\u987b\u662f admin \u89d2\u8272\u624d\u80fd\u8bbf\u95ee\uff0c\u5219\uff1a

const routes: Routes = [\n  {\n    path: \'sys\',\n    canActivate: [aclCanActivate],\n    data: { guard: \'admin\' },\n    children: [\n      { path: \'config\', component: ConfigComponent },\n    ]\n  },\n];

\u6b64\u65f6\uff0c\u5f53\u4e00\u4e2a\u672a\u6388\u6743 admin \u89d2\u8272\u7684\u7528\u6237\u5c1d\u8bd5\u8bbf\u95ee /sys/config \u9875\u9762\u65f6\u4f1a\u88ab\u8df3\u8f6c\u81f3\u672a\u6388\u6743\u9519\u8bef\u9875\u4e0a\u3002

\u5f53\u7136\u8fd8\u652f\u6301\u7c92\u5ea6\u6709\u66f4\u7ec6\u64cd\u4f5c\uff0c\u6bd4\u5982\u67d0\u4e2a\u6309\u94ae\uff0c\u8bf7\u53c2\u8003ACL\u7ae0\u8282\u3002

\u62e6\u622a\u7f51\u7edc\u8bf7\u6c42

\u7f51\u7edc\u8bf7\u6c42\u662f\u4e00\u9879\u975e\u5e38\u9891\u7e41\u7684\u5de5\u4f5c\uff0c\u5982\u679c\u60f3\u4f18\u96c5\u7684\u5728\u4e1a\u52a1\u7ec4\u4ef6\u5185\u4f7f\u7528\u7f51\u7edc\u8bf7\u6c42\u52a8\u4f5c\u7684\u8bdd\uff0c\u90a3\u4e48\u5c06\u670d\u52a1\u7aefURL\u524d\u7f00\u3001\u5f02\u5e38\u5904\u7406\u3001Token \u5237\u65b0\u7b49\u64cd\u4f5c\u96c6\u4e2d\u5904\u7406\u662f\u5fc5\u4e0d\u53ef\u5c11\u7684\uff0cNG-ALAIN \u811a\u624b\u67b6\u63d0\u4f9b\u4e00\u4e2a default.interceptor.ts \u6587\u4ef6\u3002\u5b83\u4f1a\u5229\u7528\u4ee4\u724c HTTP_INTERCEPTORS \u8d77\u5230\u4e00\u79cd\u62e6\u622a\u5668\u7684\u6548\u679c\u3002

\u6709\u5173\u4ee5\u4e0a\u96c6\u4e2d\u5904\u7406\u7684\u52a8\u4f5c\u7ec6\u8282\uff0c\u8bf7\u53c2\u8003 default.interceptor.ts \u6587\u4ef6\u3002

IDE

\u201c\u5de5\u6b32\u5584\u5176\u4e8b\uff0c\u5fc5\u5148\u5229\u5176\u5668\u662f\u201d\uff0cNG-ALAIN \u811a\u624b\u67b6\u63a8\u8350\u4f7f\u7528 Visual Studio Code IDE\uff0c\u56e0\u4e3a NG-ALAIN \u9488\u5bf9 VSCode \u589e\u52a0\u4e00\u4e9b\u989d\u5916\u7684\u7279\u6027\uff0c\u53ef\u4ee5\u66f4\u597d\u7684\u5e2e\u52a9\u4f60\u5f00\u53d1\u3002

\u6216\u8005\u76f4\u63a5\u4f7f\u7528 NG-ALAIN Extension Pack \u5957\u4ef6\u3002

\u4ee3\u7801\u7247\u65ad

Class\u6837\u5f0f\u667a\u80fd\u63d0\u9192

ng-alain \u5185\u7f6e\u4e86\u5927\u91cf\u7684\u5de5\u5177\u96c6\u6837\u5f0f\uff08API\uff09\uff0c\u5b89\u88c5\u4ee5\u4e0b\u63d2\u4ef6\u53ef\u4ee5\u76f4\u63a5\u5728HTML\u6a21\u677f\u91cc\u76f4\u63a5\u8bbf\u95ee\u5230\u5b83\u4eec\u3002

',meta:{order:0,title:"\u5982\u4f55\u5f00\u59cb",type:"Dev",i18n:"need-update"},toc:[{id:"\u524d\u5e8f\u51c6\u5907",title:"\u524d\u5e8f\u51c6\u5907",h:2},{id:"\u5199\u5728\u524d\u9762",title:"\u5199\u5728\u524d\u9762",h:2},{id:"\u6d41\u7a0b",title:"\u6d41\u7a0b",h:2,children:[{id:"\u521d\u59cb\u5316\u9879\u76ee\u6570\u636e",title:"\u521d\u59cb\u5316\u9879\u76ee\u6570\u636e",h:3},{id:"\u4e1a\u52a1\u8def\u7531",title:"\u4e1a\u52a1\u8def\u7531",h:3},{id:"\u7528\u6237\u8ba4\u8bc1\u4e0e\u6388\u6743",title:"\u7528\u6237\u8ba4\u8bc1\u4e0e\u6388\u6743",h:3},{id:"\u62e6\u622a\u7f51\u7edc\u8bf7\u6c42",title:"\u62e6\u622a\u7f51\u7edc\u8bf7\u6c42",h:3}]},{id:"IDE",title:"IDE",h:2,children:[{id:"\u4ee3\u7801\u7247\u65ad",title:"\u4ee3\u7801\u7247\u65ad",h:3},{id:"Class\u6837\u5f0f\u667a\u80fd\u63d0\u9192",title:"Class\u6837\u5f0f\u667a\u80fd\u63d0\u9192",h:3}]}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-how-to-start"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"i18n",redirectTo:"i18n/zh",pathMatch:"full"},{path:"i18n/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/i18n.en-US.md","zh-CN":"docs/i18n.zh-CN.md"},content:{"en-US":{content:'

Angular internationalization provides a solution for extracting language files, but for NG-ALAIN, this is not the best way; this is mainly limited by @Delon/* The component library needs to provide a set of dynamic translation Service, therefore, NG-ALAIN has built-in a simple internationalized service ALAIN_I18N_TOKEN interface.

How to configure

Scaffolding is composed of two important parts: ng-zorro-antd and @delon/*. These two libraries have their own international configuration. When internationalizing, they need to be the same for these libraries. Language configuration.

Angular

Angular configuration is mainly for currency, date format, etc., such as Chinese version:

import { registerLocaleData } from \'@angular/common\';\nimport zh from \'@angular/common/locales/zh\';\nregisterLocaleData(zh);

ng-zorro-antd

ng-zorro-antd internationalization defaults to the Chinese version, for example the default English version:

import { en_US, provideNzI18n } from \'ng-zorro-antd/i18n\';\n@NgModule({\n  providers: [provideNzI18n(en_US)]\n})\nexport class App1Module {}

Of course, you can also use runtime changes:

import { en_US, NzI18nService } from \'ng-zorro-antd/i18n\';\n...\nconstructor(private nzI18nService:NzI18nService) {\n}\n\nswitchLanguage() {\n  this.nzI18nService.setLocale(en_US);\n}

@delon

@delon internationalization defaults to Chinese version, for example the default is English version:

import { DELON_LOCALE, en_US } from \'@delon/theme\';\n@NgModule({\n  ...\n  providers   : [ { provide: DELON_LOCALE, useValue: en_US } ]\n})\nexport class AppModule { }

Of course, you can also use runtime changes:

import { en_US, DelonLocaleService } from \'@delon/theme\';\n...\nconstructor(private delonLocaleService: DelonLocaleService) {\n}\n\nswitchLanguage() {\n  this.delonLocaleService.setLocale(en_US);\n}

ALAIN_I18N_TOKEN

@delon/* class library has many data interface properties with the i18n typeface (for example: page-header, st column description, Menu menu data, etc.) when you want the data for these components. When the interface can dynamically switch automatically according to the Key value in the current language, you also need to define a self-implementation service interface for ALAIN_I18N_TOKEN (for example: I18NService /master/src/app/core/i18n/i18n.service.ts)) and register under the root module.

import { ALAIN_I18N_TOKEN } from \'@delon/theme\';\nimport { I18NService } from \'@core\';\n\n@NgModule({\n  ...\n  providers: [\n    { provide: ALAIN_I18N_TOKEN, useClass: I18NService, multi: false }\n  ]\n})\nexport class AppModule {}

i18n pipe

In order not to be named by the third-party pipes, the scaffolding contains a i18n pipe, which is equivalent to calling the fanAIN method of ALAIN_I18N_TOKEN directly.

| i18n will not listen to language change notifications, so there will be better performance. When you explicitly re-render the Angular project after switching languages, | i18n will be more suitable.

How to add

When creating scaffolding from command line ng add ng-alain, it is allowed to specify --i18n to indicate whether the internationalized sample code is included.

How to delete

The sample code covers the following:

Default language

Regardless of whether internationalization is required or not, since the default languages \u200b\u200bof class libraries such as Angular, ng-zorro-antd, @delon/* are different, it is also necessary to ensure that the default language of these libraries is the same type. A simple example approach to understand the current language situation for each type of library:

import { Component } from \'@angular/core\';\n\n@Component({\n  selector: \'app-i18n-test\',\n  template: `\n  <h2>angular</h2>\n  <p>Date: {{now | date}}</p>\n  <h2>ng-zorro-antd</h2>\n  <nz-transfer [nzDataSource]="[]"></nz-transfer>\n  <h2>@delon</h2>\n  <div style="width: 200px">\n    <tag-select>\n      <nz-tag>1</nz-tag>\n    </tag-select>\n  </div>`,\n})\nexport class I18nTestComponent {\n  now = new Date();\n}

Example

In order to make language uniformity, NG-ALAIN provides a simple unified configuration in the AppModule root module.

Chinese Version

// #region i18n\nimport { default as ngLang } from \'@angular/common/locales/zh\';\nimport { provideNzI18n, zh_CN as zorroLang } from \'ng-zorro-antd/i18n\';\nimport { DELON_LOCALE, zh_CN as delonLang } from \'@delon/theme\';\nconst LANG = {\n  abbr: \'zh\',\n  ng: ngLang,\n  zorro: zorroLang,\n  delon: delonLang,\n};\n// register angular\nimport { registerLocaleData } from \'@angular/common\';\nregisterLocaleData(LANG.ng, LANG.abbr);\nconst LANG_PROVIDES = [\n  { provide: LOCALE_ID, useValue: LANG.abbr },\n  provideNzI18n(LANG.zorro),\n  { provide: DELON_LOCALE, useValue: LANG.delon },\n];\n// #endregion\n\n@NgModule({\n  providers: [...LANG_PROVIDES],\n})\nexport class AppModule {}

English version

// #region i18n\nimport { default as ngLang } from \'@angular/common/locales/en\';\nimport { provideNzI18n, en_US as zorroLang } from \'ng-zorro-antd/i18n\';\nimport { DELON_LOCALE, en_US as delonLang } from \'@delon/theme\';\nconst LANG = {\n  abbr: \'en\',\n  ng: ngLang,\n  zorro: zorroLang,\n  delon: delonLang,\n};\n// register angular\nimport { registerLocaleData } from \'@angular/common\';\nregisterLocaleData(LANG.ng, LANG.abbr);\nconst LANG_PROVIDES = [\n  { provide: LOCALE_ID, useValue: LANG.abbr },\n  provideNzI18n(LANG.zorro),\n  { provide: DELON_LOCALE, useValue: LANG.delon },\n];\n// #endregion\n\n@NgModule({\n  providers: [...LANG_PROVIDES],\n})\nexport class AppModule {}

Command Line

Use the defaultLanguage plugin to quickly switch between the default locales.

Internationalized routing

If you want to toggle internationalization by routed URLs, e.g. by accessing /zh and /en to change the language, just use the alainI18nCanActivate guard in the root route:

const routes: Route[] = [\n   {\n     path: \'\',\n     component: LayoutComponent,\n     canActivateChild: [alainI18nCanActivate],\n     children: [\n       { path: \'\', redirectTo: \'en\', pathMatch: \'full\' },\n       { path: \':i18n\', component: HomeComponent }\n     ]\n   }\n];

Where :i18n is a fixed value of the parameter, which can be adjusted by the Global Configuration paramNameOfUrlGuard.

',meta:{order:30,title:{"en-US":"I18n","zh-CN":"\u56fd\u9645\u5316"},type:"Advance"},toc:[{id:"Howtoconfigure",title:"How to configure",h:2,children:[{id:"Angular",title:"Angular",h:3},{id:"ng-zorro-antd",title:"ng-zorro-antd",h:3},{id:"@delon",title:"@delon",h:3}]},{id:"ALAIN_I18N_TOKEN",title:"ALAIN_I18N_TOKEN",h:2,children:[{id:"i18npipe",title:"i18n pipe",h:3}]},{id:"Howtoadd",title:"How to add",h:2},{id:"Howtodelete",title:"How to delete",h:2},{id:"Defaultlanguage",title:"Default language",h:2,children:[{id:"Example",title:"Example",h:3},{id:"CommandLine",title:"Command Line",h:3}]},{id:"Internationalizedrouting",title:"Internationalized routing",h:2}]},"zh-CN":{content:'

Angular \u56fd\u9645\u5316\u63d0\u4f9b\u4e00\u79cd\u53ef\u88ab\u63d0\u53d6\u8bed\u8a00\u6587\u4ef6\u7684\u65b9\u6848\uff0c\u4f46\u5bf9\u4e8e NG-ALAIN \u800c\u8a00\uff0c\u8fd9\u5e76\u4e0d\u662f\u6700\u597d\u7684\u65b9\u5f0f\uff1b\u8fd9\u4e3b\u8981\u53d7\u9650\u4e8e @Delon/* \u7ec4\u4ef6\u5e93\u9700\u8981\u63d0\u4f9b\u4e00\u5957\u5e26\u6709\u52a8\u6001\u7ffb\u8bd1\u7684\u670d\u52a1\uff0c\u56e0\u6b64\uff0cNG-ALAIN \u5185\u7f6e\u4e00\u4e2a\u7b80\u6613\u7684\u56fd\u9645\u5316\u670d\u52a1 ALAIN_I18N_TOKEN \u63a5\u53e3\u3002

\u5982\u4f55\u914d\u7f6e

\u811a\u624b\u67b6\u662f\u7531 ng-zorro-antd\u3001@delon/* \u7c7b\u5e93\u4e24\u4e2a\u91cd\u8981\u90e8\u5206\u7ec4\u4ef6\uff0c\u800c\u8fd9\u4e24\u4e2a\u7c7b\u5e93\u6709\u81ea\u5df1\u7684\u56fd\u9645\u5316\u914d\u7f6e\uff0c\u5f53\u8fdb\u884c\u56fd\u9645\u5316\u65f6\u9700\u8981\u5bf9\u8fd9\u4e9b\u7c7b\u5e93\u8fdb\u884c\u76f8\u540c\u8bed\u8a00\u7684\u914d\u7f6e\u3002

Angular

Angular \u914d\u7f6e\u4e3b\u8981\u662f\u9488\u5bf9\u8d27\u5e01\u3001\u65e5\u671f\u683c\u5f0f\u7b49\uff0c\u4f8b\u5982\u4e2d\u6587\u7248\u672c\uff1a

import { registerLocaleData } from \'@angular/common\';\nimport zh from \'@angular/common/locales/zh\';\nregisterLocaleData(zh);

ng-zorro-antd

NG-ZORRO \u56fd\u9645\u5316\u9ed8\u8ba4\u662f\u4e2d\u6587\u7248\uff0c\u4f8b\u5982\u9ed8\u8ba4\u4e3a\u82f1\u6587\u7248\u672c\uff1a

import { en_US, provideNzI18n } from \'ng-zorro-antd/i18n\';\n@NgModule({\n  providers: [provideNzI18n(en_US)]\n})\nexport class App1Module {}

\u5f53\u7136\uff0c\u4e5f\u53ef\u4ee5\u4f7f\u7528\u8fd0\u884c\u65f6\u66f4\u6539\uff1a

import { en_US, NzI18nService } from \'ng-zorro-antd/i18n\';\n...\nconstructor(private nzI18nService:NzI18nService) {\n}\n\nswitchLanguage() {\n  this.nzI18nService.setLocale(en_US);\n}

@delon

@delon \u56fd\u9645\u5316\u9ed8\u8ba4\u662f\u4e2d\u6587\u7248\uff0c\u4f8b\u5982\u9ed8\u8ba4\u4e3a\u82f1\u6587\u7248\u672c\uff1a

import { DELON_LOCALE, en_US } from \'@delon/theme\';\n@NgModule({\n  ...\n  providers   : [ { provide: DELON_LOCALE, useValue: en_US } ]\n})\nexport class AppModule { }

\u5f53\u7136\uff0c\u4e5f\u53ef\u4ee5\u4f7f\u7528\u8fd0\u884c\u65f6\u66f4\u6539\uff1a

import { en_US, DelonLocaleService } from \'@delon/theme\';\n...\nconstructor(private delonLocaleService: DelonLocaleService) {\n}\n\nswitchLanguage() {\n  this.delonLocaleService.setLocale(en_US);\n}

ALAIN_I18N_TOKEN

@delon/* \u7c7b\u5e93\u6709\u8bb8\u591a\u5e26\u6709 i18n \u5b57\u6837\u7684\u6570\u636e\u63a5\u53e3\u5c5e\u6027\uff08\u4f8b\u5982\uff1apage-header\u3001st \u5217\u63cf\u8ff0\u3001Menu \u83dc\u5355\u6570\u636e\u7b49\u7b49\uff09\uff0c\u5f53\u4f60\u5e0c\u671b\u8fd9\u4e9b\u7ec4\u4ef6\u7684\u6570\u636e\u63a5\u53e3\u80fd\u52a8\u6001\u6839\u636e Key \u503c\u6309\u5f53\u524d\u8bed\u8a00\u81ea\u52a8\u5207\u6362\u65f6\uff0c\u4f60\u8fd8\u9700\u8981\u5bf9 ALAIN_I18N_TOKEN \u5b9a\u4e49\u4e00\u4e2a\u81ea\u5b9e\u73b0\u670d\u52a1\u63a5\u53e3\uff08\u4f8b\u5982\uff1aI18NService\uff09\uff0c\u5e76\u5728\u6839\u6a21\u5757\u4e0b\u6ce8\u518c\u3002

import { ALAIN_I18N_TOKEN } from \'@delon/theme\';\nimport { I18NService } from \'@core\';\n\n@NgModule({\n  ...\n  providers: [\n    { provide: ALAIN_I18N_TOKEN, useClass: I18NService, multi: false }\n  ]\n})\nexport class AppModule {}

i18n\u7ba1\u9053

\u4e3a\u4e86\u4e0d\u53d7\u7b2c\u4e09\u65b9\u5404\u81ea\u7ba1\u9053\u7684\u547d\u540d\u65b9\u5f0f\uff0c\u811a\u624b\u67b6\u5305\u542b\u4e00\u4e2a i18n \u7684\u7ba1\u9053\uff0c\u5b83\u76f8\u5f53\u4e8e\u76f4\u63a5\u8c03\u7528 ALAIN_I18N_TOKEN \u7684 fanyi \u65b9\u6cd5\u3002

| i18n \u4e0d\u4f1a\u76d1\u542c\u8bed\u8a00\u53d8\u66f4\u901a\u77e5\u6240\u4ee5\u4f1a\u6709\u66f4\u597d\u7684\u6027\u80fd\uff0c\u5f53\u4f60\u660e\u786e\u5728\u5207\u6362\u8bed\u8a00\u540e\u4f1a\u91cd\u65b0\u6e32\u67d3 Angular \u9879\u76ee\u65f6 | i18n \u4f1a\u66f4\u9002\u5408\u3002

\u5982\u4f55\u6dfb\u52a0

\u521b\u5efa\u811a\u624b\u67b6\u547d\u4ee4\u884c ng add ng-alain \u65f6\u5141\u8bb8\u6307\u5b9a --i18n \u8868\u793a\u662f\u5426\u5305\u542b\u56fd\u9645\u5316\u793a\u4f8b\u4ee3\u7801\u3002

\u5982\u4f55\u5220\u9664

\u793a\u4f8b\u4ee3\u7801\u6d89\u53ca\u5185\u5bb9\u5305\u62ec\uff1a

  • src/app/core/i18n \u76ee\u5f55

  • \u66ff\u6362\u6389\u9ed8\u8ba4\u5e03\u5c40\u53ef\u80fd\u51fa\u73b0\u7684 I18n \u7684 Pipe \u4f7f\u7528 | i18n

\u9ed8\u8ba4\u8bed\u8a00

\u4e0d\u7ba1\u662f\u5426\u9700\u8981\u56fd\u9645\u5316\uff0c\u7531\u4e8e Angular\u3001ng-zorro-antd\u3001@delon/* \u7b49\u7c7b\u5e93\u7684\u9ed8\u8ba4\u8bed\u8a00\u90fd\u4e0d\u540c\uff0c\u56e0\u6b64\u8fd8\u9700\u8981\u786e\u4fdd\u8fd9\u4e9b\u7c7b\u5e93\u7684\u9ed8\u8ba4\u8bed\u8a00\u662f\u540c\u4e00\u7c7b\u578b\u3002\u4e00\u4e2a\u7b80\u5355\u7684\u793a\u4f8b\u529e\u6cd5\u53ef\u4ee5\u4e86\u89e3\u5404\u7c7b\u5e93\u5f53\u524d\u8bed\u8a00\u60c5\u51b5\uff1a

import { Component } from \'@angular/core\';\n\n@Component({\n  selector: \'app-i18n-test\',\n  template: `\n  <h2>angular</h2>\n  <p>Date: {{now | date}}</p>\n  <h2>ng-zorro-antd</h2>\n  <nz-transfer [nzDataSource]="[]"></nz-transfer>\n  <h2>@delon</h2>\n  <div style="width: 200px">\n    <tag-select>\n      <nz-tag>1</nz-tag>\n    </tag-select>\n  </div>`,\n})\nexport class I18nTestComponent {\n  now = new Date();\n}

\u793a\u4f8b

\u4e3a\u4e86\u4f7f\u8bed\u8a00\u7edf\u4e00\u6027\uff0cNG-ALAIN \u63d0\u4f9b\u4e00\u4e2a\u5728 AppModule \u6839\u6a21\u5757\u91cc\u7b80\u5355\u7684\u7edf\u4e00\u914d\u7f6e\u65b9\u5f0f\u3002

\u4e2d\u6587\u7248

// #region i18n\nimport { default as ngLang } from \'@angular/common/locales/zh\';\nimport { provideNzI18n, zh_CN as zorroLang } from \'ng-zorro-antd/i18n\';\nimport { DELON_LOCALE, zh_CN as delonLang } from \'@delon/theme\';\nconst LANG = {\n  abbr: \'zh\',\n  ng: ngLang,\n  zorro: zorroLang,\n  delon: delonLang,\n};\n// register angular\nimport { registerLocaleData } from \'@angular/common\';\nregisterLocaleData(LANG.ng, LANG.abbr);\nconst LANG_PROVIDES = [\n  { provide: LOCALE_ID, useValue: LANG.abbr },\n  provideNzI18n(LANG.zorro),\n  { provide: DELON_LOCALE, useValue: LANG.delon },\n];\n// #endregion\n\n@NgModule({\n  providers: [...LANG_PROVIDES],\n})\nexport class AppModule {}

\u82f1\u6587\u7248

// #region i18n\nimport { default as ngLang } from \'@angular/common/locales/en\';\nimport { provideNzI18n, en_US as zorroLang } from \'ng-zorro-antd/i18n\';\nimport { DELON_LOCALE, en_US as delonLang } from \'@delon/theme\';\nconst LANG = {\n  abbr: \'en\',\n  ng: ngLang,\n  zorro: zorroLang,\n  delon: delonLang,\n};\n// register angular\nimport { registerLocaleData } from \'@angular/common\';\nregisterLocaleData(LANG.ng, LANG.abbr);\nconst LANG_PROVIDES = [\n  { provide: LOCALE_ID, useValue: LANG.abbr },\n  provideNzI18n(LANG.zorro),\n  { provide: DELON_LOCALE, useValue: LANG.delon },\n];\n// #endregion\n\n@NgModule({\n  providers: [...LANG_PROVIDES],\n})\nexport class AppModule {}

\u547d\u4ee4\u884c

\u4f7f\u7528 defaultLanguage \u63d2\u4ef6\u53ef\u4ee5\u5feb\u901f\u5207\u6362\u9ed8\u8ba4\u8bed\u8a00\u73af\u5883\u3002

\u56fd\u9645\u5316\u8def\u7531

\u82e5\u60f3\u901a\u8fc7\u8def\u7531\u7684URL\u6765\u5207\u6362\u56fd\u9645\u5316\uff0c\u4f8b\u5982\uff1a\u901a\u8fc7\u8bbf\u95ee /zh \u548c /en \u6765\u53d8\u66f4\u8bed\u8a00\uff0c\u5219\u53ea\u9700\u8981\u5728\u6839\u8def\u7531\u4e2d\u4f7f\u7528 alainI18nCanActivate \u5b88\u536b\uff1a

const routes: Route[] = [\n  {\n    path: \'\',\n    component: LayoutComponent,\n    canActivateChild: [alainI18nCanActivate],\n    children: [\n      { path: \'\', redirectTo: \'en\', pathMatch: \'full\' },\n      { path: \':i18n\', component: HomeComponent }\n    ]\n  }\n];

\u5176\u4e2d :i18n \u662f\u53c2\u6570\u56fa\u5b9a\u503c\uff0c\u53ef\u4ee5\u901a\u8fc7\u5168\u5c40\u914d\u7f6e paramNameOfUrlGuard \u6765\u8c03\u6574\u3002

',meta:{order:30,title:{"en-US":"I18n","zh-CN":"\u56fd\u9645\u5316"},type:"Advance"},toc:[{id:"\u5982\u4f55\u914d\u7f6e",title:"\u5982\u4f55\u914d\u7f6e",h:2,children:[{id:"Angular",title:"Angular",h:3},{id:"ng-zorro-antd",title:"ng-zorro-antd",h:3},{id:"@delon",title:"@delon",h:3}]},{id:"ALAIN_I18N_TOKEN",title:"ALAIN_I18N_TOKEN",h:2,children:[{id:"i18n\u7ba1\u9053",title:"i18n\u7ba1\u9053",h:3}]},{id:"\u5982\u4f55\u6dfb\u52a0",title:"\u5982\u4f55\u6dfb\u52a0",h:2},{id:"\u5982\u4f55\u5220\u9664",title:"\u5982\u4f55\u5220\u9664",h:2},{id:"\u9ed8\u8ba4\u8bed\u8a00",title:"\u9ed8\u8ba4\u8bed\u8a00",h:2,children:[{id:"\u793a\u4f8b",title:"\u793a\u4f8b",h:3},{id:"\u547d\u4ee4\u884c",title:"\u547d\u4ee4\u884c",h:3}]},{id:"\u56fd\u9645\u5316\u8def\u7531",title:"\u56fd\u9645\u5316\u8def\u7531",h:2}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-i18n"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"import",redirectTo:"import/zh",pathMatch:"full"},{path:"import/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/import.en-US.md","zh-CN":"docs/import.zh-CN.md"},content:{"en-US":{content:'

In addition to the NG-ALAIN base component and the @delon business component, sometimes we need to reference other external class libraries, the following is how to use the rich text component ngx-tinymce:

Angular Component

Installing dependencies

yarn add ngx-tinymce

Import module

You may need to use rich editor in all submodules, as it\'s recommended to import and export them in the SharedModule module.

// #region third libs\nimport { NgxTinymceModule } from \'ngx-tinymce\';\nconst THIRDMODULES = [ NgxTinymceModule ];\n// #endregion

The region: third libs region is a coding convention for NG-ALAIN, register all third-party components into the THIRDMODULES variable, for more coding conventions, refer to Style Guide.

For some third-party components, may be required global configuration. It\'s recommended to register in the root module, for example:

import { NgxTinymceModule } from \'ngx-tinymce\';\n@NgModule({\n  imports: [\n    BrowserModule,\n    NgxTinymceModule.forRoot({\n      baseURL: \'//cdn.bootcss.com/tinymce/4.7.13/\'\n    })\n  ]\n})\nexport class AppModule { }

Next you can use ngx-tinymce in any submodule:

<tinymce [(ngModel)]="html"></tinymce>

Non-Angular Component

Referencing a non-Angular component is actually loading a JavaScript class library file, such as the QR code library qrious:

Installing dependencies

yarn add qrious

Import Scripts

Add qrious.min.js to the scripts node in angular.json:

"scripts": [\n  "node_modules/qrious/dist/qrious.min.js"\n]

If the third-party library requires additional styles, you also need to add a path to styles.

Note: You need to re-run ng s.

Lazy loading script

The above import script method will package the code directly into scripts.js, which will cause the scripts.js to become larger. NG-ALAIN provides another delayed loading CDN library script solution for low-usage services. (Example: zip compression), you can use LazyService to delay loading remote CDN scripts.

How to use

Angular is using TypeScript language, and all types must be clearly defined to be used. For details, please refer to Angular How to use third-party libraries.

A sample code for the call:

declare var QRious: any;\n\n@Component()\nexport class DEMOComponent {\n  constructor() {\n    const qr = new QRious();\n  }\n}',meta:{order:60,title:"Use a third-party lib",type:"Dev"},toc:[{id:"AngularComponent",title:"Angular Component",h:2,children:[{id:"Installingdependencies",title:"Installing dependencies",h:3},{id:"Importmodule",title:"Import module",h:3}]},{id:"Non-AngularComponent",title:"Non-Angular Component",h:2,children:[{id:"Installingdependencies",title:"Installing dependencies",h:3},{id:"ImportScripts",title:"Import Scripts",h:3},{id:"Howtouse",title:"How to use",h:3}]}]},"zh-CN":{content:'

\u9664\u4e86 NG-ZORRO \u57fa\u7840\u7ec4\u4ef6\u4ee5\u53ca @delon \u4e1a\u52a1\u7ec4\u4ef6\u4ee5\u5916\uff0c\u6709\u65f6\u6211\u4eec\u8fd8\u9700\u8981\u5f15\u7528\u5176\u4ed6\u5916\u90e8\u7c7b\u5e93\uff0c\u4ee5\u4e0b\u5c06\u4ecb\u7ecd\u5982\u4f55\u4f7f\u7528\u5bcc\u6587\u672c\u7ec4\u4ef6 ngx-tinymce\uff1a

Angular\u7ec4\u4ef6

\u5b89\u88c5\u4f9d\u8d56\u5305

yarn add ngx-tinymce

\u6ce8\u518c

\u50cf\u5bcc\u6587\u672c\u6846\u4f60\u53ef\u80fd\u9700\u8981\u5728\u6240\u6709\u5b50\u6a21\u5757\u4e2d\u90fd\u4f1a\u53ef\u80fd\u4f1a\u7528\u5230\uff0c\u56e0\u4e3a\u5efa\u8bae\u5728 SharedModule \u6a21\u5757\u4e2d\u5bfc\u5165\u548c\u5bfc\u51fa\u4ed6\u3002

// #region third libs\nimport { NgxTinymceModule } from \'ngx-tinymce\';\nconst THIRDMODULES = [ NgxTinymceModule ];\n// #endregion

region: third libs \u533a\u57df\u662fNG-ALAIN\u7684\u4e00\u4e2a\u7f16\u7801\u7ea6\u5b9a\uff0c\u5c06\u6240\u6709\u7b2c\u4e09\u65b9\u7ec4\u4ef6\u6ce8\u518c\u81f3 THIRDMODULES \u53d8\u91cf\u4e2d\u5373\u53ef\uff0c\u800c\u65e0\u987b\u5173\u5fc3 @NgModule \u5185\u5728\u7684\u5199\u6cd5\uff0c\u6709\u5173\u66f4\u591a\u7f16\u7801\u7ea6\u5b9a\u53ef\u4ee5\u53c2\u8003\u7f16\u7801\u89c4\u8303\u5efa\u8bae\u3002

\u5bf9\u4e8e\u90e8\u5206\u7b2c\u4e09\u65b9\u7ec4\u4ef6\uff0c\u53ef\u80fd\u4f1a\u9700\u8981\u4e00\u4e9b\u914d\u7f6e\u9879\uff0c\u5efa\u8bae\u5728\u6839\u6a21\u5757\u4e2d\u6ce8\u518c\uff0c\u4f8b\u5982\uff1a

import { NgxTinymceModule } from \'ngx-tinymce\';\n@NgModule({\n  imports: [\n    BrowserModule,\n    NgxTinymceModule.forRoot({\n      baseURL: \'//cdn.bootcss.com/tinymce/4.7.13/\'\n    })\n  ]\n})\nexport class AppModule { }

\u63a5\u4e0b\u6765\u4f60\u53ef\u4ee5\u5728\u4efb\u4f55\u5b50\u6a21\u5757\u4e2d\u4f7f\u7528 ngx-tinymce\uff1a

<tinymce [(ngModel)]="html"></tinymce>

\u975eAngular\u7ec4\u4ef6

\u5f15\u7528\u4e00\u4e2a\u975e Angular \u7ec4\u4ef6\u5b9e\u9645\u4e0a\u662f\u4e00\u4e2a JavaScript \u7c7b\u5e93\uff0c\u4f8b\u5982\u4e8c\u7ef4\u7801\u7c7b\u5e93 qrious\uff0c\u8fd9\u662f\u4e00\u4e2a\u7eaf\u6d01\u7684 JavaScript \u7c7b\u5e93\uff08\u5efa\u8bae\u5c3d\u53ef\u80fd\u4f7f\u7528\u7eaf\u6d01\u7c7b\u5e93\u800c\u975e\u5e26\u6709\u4f9d\u8d56\u5176\u4ed6\uff09\u3002

\u5b89\u88c5\u4f9d\u8d56\u5305

yarn add qrious

\u5bfc\u5165\u811a\u672c

\u5728 angular.json \u627e\u5230 scripts \u8282\u70b9\u5e76\u589e\u52a0\uff1a

"scripts": [\n  "node_modules/qrious/dist/qrious.min.js"\n]

\u5982\u679c\u7b2c\u4e09\u65b9\u7c7b\u5e93\u9700\u8981\u989d\u5916\u7684\u6837\u5f0f\uff0c\u8fd8\u9700\u8981\u5728 styles \u589e\u52a0\u8def\u5f84\u3002

\u6ce8\u610f\uff1a\u9700\u8981\u91cd\u65b0\u8fd0\u884c ng s \u624d\u4f1a\u751f\u6548\u3002

\u5ef6\u8fdf\u52a0\u8f7d\u811a\u672c

\u4e0a\u8ff0\u5bfc\u5165\u811a\u672c\u65b9\u5f0f\u4f1a\u628a\u4ee3\u7801\u76f4\u63a5\u6253\u5305\u8fdb scripts.js\uff0c\u8fd9\u4f1a\u5bfc\u81f4 scripts.js \u4f53\u79ef\u53d8\u5927\uff0cNG-ALAIN \u63d0\u4f9b\u53e6\u4e00\u79cd\u5ef6\u8fdf\u52a0\u8f7dCDN\u7c7b\u5e93\u811a\u672c\u89e3\u51b3\u65b9\u6848\uff0c\u9002\u7528\u4f4e\u4f7f\u7528\u7387\u7684\u4e1a\u52a1\uff08\u4f8b\u5982\uff1azip \u538b\u7f29\uff09\uff0c\u53ef\u4ee5\u5229\u7528 LazyService \u5ef6\u8fdf\u52a0\u8f7d\u8fdc\u7a0bCDN\u811a\u672c\u3002

\u4f7f\u7528

Angular \u662f\u91c7\u7528 TypeScript \u8bed\u8a00\uff0c\u6240\u6709\u7c7b\u578b\u90fd\u5fc5\u987b\u660e\u786e\u5b9a\u4e49\u624d\u80fd\u4f7f\u7528\uff0c\u7ec6\u8282\u8bf7\u53c2\u8003 Angular \u5982\u4f55\u4f7f\u7528\u7b2c\u4e09\u65b9\u5e93\u3002

\u4e00\u4e2a\u8c03\u7528\u7684\u793a\u4f8b\u4ee3\u7801\uff1a

declare var QRious: any;\n\n@Component()\nexport class DEMOComponent {\n  constructor() {\n    const qr = new QRious();\n  }\n}',meta:{order:60,title:"\u4f7f\u7528\u7b2c\u4e09\u65b9\u7c7b\u5e93",type:"Dev"},toc:[{id:"Angular\u7ec4\u4ef6",title:"Angular\u7ec4\u4ef6",h:2,children:[{id:"\u5b89\u88c5\u4f9d\u8d56\u5305",title:"\u5b89\u88c5\u4f9d\u8d56\u5305",h:3},{id:"\u6ce8\u518c",title:"\u6ce8\u518c",h:3}]},{id:"\u975eAngular\u7ec4\u4ef6",title:"\u975eAngular\u7ec4\u4ef6",h:2,children:[{id:"\u5b89\u88c5\u4f9d\u8d56\u5305",title:"\u5b89\u88c5\u4f9d\u8d56\u5305",h:3},{id:"\u5bfc\u5165\u811a\u672c",title:"\u5bfc\u5165\u811a\u672c",h:3},{id:"\u4f7f\u7528",title:"\u4f7f\u7528",h:3}]}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-import"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"mock",redirectTo:"mock/zh",pathMatch:"full"},{path:"mock/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"zh-CN":"docs/mock.md"},content:{"zh-CN":{content:'
',meta:{order:60,title:"Mock",type:"Advance",url:"/mock/getting-started"},toc:[]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-mock"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"module",redirectTo:"module/zh",pathMatch:"full"},{path:"module/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/module.en-US.md","zh-CN":"docs/module.zh-CN.md"},content:{"en-US":{content:'

The AppModule, CoreModule, and SharedModule modules have not been used very clearly, and it is easy to use them. The goal of the Angular module is to make components, instructions, services, and pipeline function blocks more cohesive, and each functional area forms a separate set of business domains or utilities.

1) Classification description


AppModule

The root module is used to guide Angular startup. It is very suitable for importing some modules that need to be used everywhere in the application. Such as: theme system, user master authentication module, permission module, global HTTP interceptors, international services, etc..

CoreModule

The core module will only be imported once. It is equivalent to AppModule, but we should treat it as a pure service class module. For example: message, data access, etc.

SharedModule

We call it a shared module. It should not have providers because ShareModule will be imported in all business modules. Which will cause the service to be overwritten.

NG-ZORRO, @delon/abc, @delon/chart, etc. have changed from all import to on-demand import since version 11. For this reason, NG-ALAIN has refined two files shared-delon.module.ts and shared -zorro.module.ts merges some modules frequently used throughout the project into a module called SharedModule, which is why it is necessary to import it in the business module for the first time. Although this method can reduce unnecessary import code, it will also cause compilation speed. Therefore, it is not recommended to put all components into SharedModule, and try to put the modules that need to be used more than three times before putting them here; Otherwise, you must import it yourself in the business module.

2) Recommendation


AppModule

Should import module:

  • Angular Module: BrowserModule, BrowserAnimationsModule, HttpClientModule

  • AlainThemeModule Theme system

  • DelonMockModule Mock data

  • AlainAuthModule User authentication module

  • AlainACLModule Privilege module

  • Internationalization module

Should include services:

  • Angular globalization

  • HTTP interceptor

  • Angular start service

  • ng-zorro-antd Basic component service

  • @delon/abc Business component service

Role: Throughout the definition of the entire application.


CoreModule

Should only leave the providers attribute.

Role: Some common services. such as: user messages, HTTP data access.


ShareModule

Should contain definitions:

  • Apply generic custom business components

Should import module:

  • Angular generic module:CommonModule\u3001FormsModule\u3001RouterModule\u3001ReactiveFormsModule

  • ng-zorro-antd Basic component module

  • @delon/abc Business component module

  • Third-party generic dependency component module

Should Export all included modules.

Should not have providers attribute.

Function: Some common custom, third-party component definitions, reducing the import of business modules.


Business module

The business module should include a business definition module and a routing module.

Should import module:

Should not:

  • Export any component

  • Try not to use the providers attribute

Route module

Should include only the import, exports modules of the r

',meta:{order:30,title:{"en-US":"Module Guidelines","zh-CN":"\u6a21\u5757\u6ce8\u518c\u6307\u5bfc\u539f\u5219"},type:"Other"},toc:[{id:"1Classificationdescription",title:"1) Classification description",h:2,children:[{id:"AppModule",title:"AppModule",h:3},{id:"CoreModule",title:"CoreModule",h:3},{id:"SharedModule",title:"SharedModule",h:3}]},{id:"2Recommendation",title:"2) Recommendation",h:2,children:[{id:"AppModule",title:"AppModule",h:3},{id:"CoreModule",title:"CoreModule",h:3},{id:"ShareModule",title:"ShareModule",h:3},{id:"Businessmodule",title:"Business module",h:3}]}]},"zh-CN":{content:'

\u4e00\u76f4\u4ee5\u6765 AppModule\u3001CoreModule\u3001SharedModule \u6a21\u5757\u4f7f\u7528\u6ca1\u6709\u5f88\u660e\u786e\u7684\u89c4\u8303\uff0c\u5f88\u5bb9\u6613\u8ba9\u4ea7\u751f\u4e71\u7528\u3002Angular\u6a21\u5757\u76ee\u6807\u662f\u4e3a\u4e86\u4f7f\u7ec4\u4ef6\u3001\u6307\u4ee4\u3001\u670d\u52a1\u548c\u7ba1\u9053\u529f\u80fd\u5757\u66f4\u5185\u805a\uff0c\u5e76\u6bcf\u4e00\u4e2a\u529f\u80fd\u533a\u57df\u5f62\u6210\u72ec\u7acb\u7684\u4e1a\u52a1\u9886\u57df\u6216\u5b9e\u7528\u5de5\u5177\u7684\u96c6\u5408\u3002

1) \u5206\u7c7b\u8bf4\u660e


AppModule

\u6839\u6a21\u5757\uff0c\u7528\u4e8e\u5f15\u5bfc Angular \u542f\u52a8\uff1b\u5b83\u975e\u5e38\u9002\u5408\u5bfc\u5165\u4e00\u4e9b\u9700\u8981\u5728\u6574\u4e2a\u5e94\u7528\u5230\u5904\u9700\u8981\u7684\u6a21\u5757\uff0c\u4f8b\u5982\uff1a\u4e3b\u9898\u7cfb\u7edf\u3001\u7528\u6237\u4e3b\u8ba4\u8bc1\u6a21\u5757\u3001\u6743\u9650\u6a21\u5757\u7b49\u6a21\u5757\uff0c\u4ee5\u53ca\u4e00\u4e9b\u5168\u5c40\u6027HTTP\u62e6\u622a\u5668\u3001\u56fd\u9645\u5316\u670d\u52a1\u7b49\u3002

CoreModule

\u6838\u5fc3\u6a21\u5757\u53ea\u4f1a\u88ab\u5bfc\u5165\u4e00\u6b21\uff0c\u5b83\u7b49\u540c AppModule\uff0c\u4f46\u6211\u4eec\u66f4\u5e94\u8be5\u628a\u5b83\u5f53\u6210\u4e00\u4e2a\u7eaf\u670d\u52a1\u7c7b\u6a21\u5757\uff0c\u4f8b\u5982\uff1a\u6d88\u606f\u3001\u6570\u636e\u8bbf\u95ee\u7b49\u3002

SharedModule

\u6211\u4eec\u53eb\u5b83\u5171\u4eab\u6a21\u5757\uff1b\u5b83\u4e0d\u5e94\u8be5\u51fa\u73b0 providers\uff0c\u56e0\u4e3a ShareModule \u4f1a\u5728\u6240\u6709\u4e1a\u52a1\u6a21\u5757\u4e2d\u88ab\u5bfc\u5165\uff0c\u8fd9\u4f1a\u5bfc\u81f4\u670d\u52a1\u88ab\u8986\u76d6\u3002

NG-ZORRO\u3001@delon/abc\u3001@delon/chart \u7b49\u4ece\u7248\u672c11\u5f00\u59cb\u7531\u4e00\u6b21\u6027\u5bfc\u5165\u6539\u6210\u6309\u9700\u5bfc\u5165\uff0c\u4e3a\u6b64 NG-ALAIN \u63d0\u70bc\u4e86\u4e24\u4e2a\u6587\u4ef6 shared-delon.module.ts\u3001shared-zorro.module.ts \u5c06\u4e00\u4e9b\u6574\u4e2a\u9879\u76ee\u7ecf\u5e38\u7528\u5230\u7684\u6a21\u5757\u5408\u5e76\u6210\u4e00\u4e2a\u53eb SharedModule \u6a21\u5757\u5185\uff0c\u8fd9\u4e5f\u5c31\u662f\u4e3a\u4ec0\u4e48\u9700\u8981\u5728\u4e1a\u52a1\u6a21\u5757\u5185\u7b2c\u4e00\u65f6\u95f4\u5bfc\u5165\u5b83\u3002\u867d\u7136\u8fd9\u79cd\u65b9\u5f0f\u53ef\u4ee5\u51cf\u5c11\u4e0d\u5fc5\u8981\u7684\u5bfc\u5165\u4ee3\u7801\uff0c\u4f46\u540c\u65f6\u4e5f\u4f1a\u5f15\u8d77\u7f16\u8bd1\u901f\u5ea6\uff0c\u56e0\u6b64\u4e0d\u5efa\u8bae\u628a\u6240\u6709\u7ec4\u4ef6\u90fd\u653e\u8fdb SharedModule \u5185\uff0c\u5c3d\u53ef\u80fd\u5c06\u9700\u8981\u7528\u5230\u7684\u6a21\u5757\u4e09\u6b21\u4ee5\u4e0a\u4f7f\u7528\u624d\u653e\u8fdb\u8fd9\u91cc\uff1b\u5426\u5219\u52a1\u5fc5\u5728\u4e1a\u52a1\u6a21\u5757\u5185\u81ea\u884c\u5bfc\u5165\u3002

2) \u5efa\u8bae


AppModule

\u5e94 \u5bfc\u5165\u6a21\u5757\uff1a

  • Angular \u6a21\u5757\uff1aBrowserModule\u3001BrowserAnimationsModule\u3001HttpClientModule

  • AlainThemeModule \u4e3b\u9898\u7cfb\u7edf

  • DelonMockModule Mock\u6570\u636e

  • AlainAuthModule \u7528\u6237\u8ba4\u8bc1\u6a21\u5757

  • AlainACLModule \u6743\u9650\u6a21\u5757

  • \u56fd\u9645\u5316\u6a21\u5757

\u5e94 \u5305\u542b\u670d\u52a1\uff1a

  • Angular \u56fd\u9645\u5316

  • HTTP \u62e6\u622a\u5668

  • Angular \u542f\u52a8\u670d\u52a1

  • ng-zorro-antd \u57fa\u7840\u7ec4\u4ef6\u670d\u52a1

  • @delon/abc \u4e1a\u52a1\u7ec4\u4ef6\u670d\u52a1

\u4f5c\u7528\uff1a \u8d2f\u7a7f\u6574\u4e2a\u5e94\u7528\u7684\u5b9a\u4e49\u3002


CoreModule

\u5e94 \u4ec5\u53ea\u7559 providers \u5c5e\u6027\u3002

\u4f5c\u7528\uff1a \u4e00\u4e9b\u901a\u7528\u670d\u52a1\uff0c\u4f8b\u5982\uff1a\u7528\u6237\u6d88\u606f\u3001HTTP\u6570\u636e\u8bbf\u95ee\u3002


ShareModule

\u5e94 \u5305\u542b\u5b9a\u4e49\uff1a

  • \u5e94\u7528\u901a\u7528\u81ea\u5b9a\u4e49\u4e1a\u52a1\u7ec4\u4ef6

\u5e94 \u5bfc\u5165\u6a21\u5757\uff1a

  • Angular \u901a\u7528\u6a21\u5757\uff1aCommonModule\u3001FormsModule\u3001RouterModule\u3001ReactiveFormsModule

  • ng-zorro-antd \u57fa\u7840\u7ec4\u4ef6\u6a21\u5757

  • @delon/abc \u4e1a\u52a1\u7ec4\u4ef6\u6a21\u5757

  • \u7b2c\u4e09\u65b9\u901a\u7528\u4f9d\u8d56\u7ec4\u4ef6\u6a21\u5757

\u5e94 \u5bfc\u51fa\u6240\u6709\u5305\u542b\u7684\u6a21\u5757\u3002

\u4e0d\u5e94 \u6709 providers \u5c5e\u6027\u3002

\u4f5c\u7528\uff1a \u4e00\u4e9b\u901a\u7528\u81ea\u5b9a\u4e49\u3001\u7b2c\u4e09\u65b9\u7ec4\u4ef6\u5b9a\u4e49\uff0c\u51cf\u5c11\u4e1a\u52a1\u6a21\u5757\u7684\u5bfc\u5165\u3002


\u4e1a\u52a1\u6a21\u5757

\u4e1a\u52a1\u6a21\u5757\u5e94\u8be5\u5305\u62ec\u4e1a\u52a1\u5b9a\u4e49\u6a21\u5757\u548c\u8def\u7531\u6a21\u5757\u3002

\u6a21\u5757

\u5e94 \u5bfc\u5165\u6a21\u5757\uff1a

\u4e0d\u5e94\uff1a

  • \u5bfc\u51fa\u4efb\u4f55\u7ec4\u4ef6

  • \u5c3d\u53ef\u80fd\u4e0d\u8981\u4f7f\u7528 providers \u5c5e\u6027

\u8def\u7531\u6a21\u5757

\u5e94 \u53ea\u5305\u62ec\u8def\u7531\u7684 import\u3001exports',meta:{order:30,title:{"en-US":"Module Guidelines","zh-CN":"\u6a21\u5757\u6ce8\u518c\u6307\u5bfc\u539f\u5219"},type:"Other"},toc:[{id:"1\u5206\u7c7b\u8bf4\u660e",title:"1) \u5206\u7c7b\u8bf4\u660e",h:2,children:[{id:"AppModule",title:"AppModule",h:3},{id:"CoreModule",title:"CoreModule",h:3},{id:"SharedModule",title:"SharedModule",h:3}]},{id:"2\u5efa\u8bae",title:"2) \u5efa\u8bae",h:2,children:[{id:"AppModule",title:"AppModule",h:3},{id:"CoreModule",title:"CoreModule",h:3},{id:"ShareModule",title:"ShareModule",h:3},{id:"\u4e1a\u52a1\u6a21\u5757",title:"\u4e1a\u52a1\u6a21\u5757",h:3}]}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-module"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"new-component",redirectTo:"new-component/zh",pathMatch:"full"},{path:"new-component/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/new-component.en-US.md","zh-CN":"docs/new-component.zh-CN.md"},content:{"en-US":{content:'

For some functional modules that may be referenced in multiple places, it is recommended to refine the management into unified management of business components. These components generally have the following characteristics:

  • Only responsible for a relatively independent, stable function;

  • no separate routing configuration;

  • May be purely static, controlled only by parameters passed by the parent component (usually a page).

Let\'s take a simple static component as an example. Suppose your app often needs to display images. These images are fixed in width, have a gray background and a certain padding, and have text descriptions, like the following:

You can do this with a component that has a default style and can receive the parameters passed by the parent component for display.

Create a new file

Create a new folder named components under src/app/shared. Create folder called image-wrapper and component file. If required add ts files index.ts and style files index.less. Provide README.md for component API descriptions in this folder.

When using components, the default is to look for the export object in index.ts. If your component is more complex, you can split it into multiple files, and finally unify the export in index.ts, like this:

// main.component.ts\nexport class MainComponent {}\n\n// sub.component.ts\nexport class SubComponent {}\n\n// index.ts\nexport MainComponent from \'./main.component\';\nexport SubComponent from \'./sub.component\';

Your code is probably like this:

// index.ts\nimport { Component, Input } from \'@angular/core\';\n\n@Component({\n  selector: \'image-wrapper\',\n  template: `\n    <div [ngStyle]="style">\n      <img class="img" [src]="src" [alt]="desc" />\n      <div *ngIf="desc" class="desc">{{ desc }}</div>\n    </div>\n  `,\n  styleUrls: [ \'./index.less\' ]\n})\nexport class ImageWrapperComponent {\n  @Input() style: { [key: string]: string };\n  @Input() src: string;\n  @Input() desc: string;\n}
// index.less\n:host {\n  width: 400px;\n  margin: 0 auto;\n  padding: 0 20px 8px;\n  text-align: center;\n  background: #f2f4f5;\n\n  ::ng-deep {\n    .img {\n      max-width: calc(100% - 32px);\n      margin: 2.4em 1em;\n      vertical-align: middle;\n      box-shadow: 0 8px 20px rgba(143, 168, 191, 0.35);\n    }\n  }\n}

The components are built here, to learn more about the development of component styles.

Register

Once the component is created, you need to import the component into SharedModule so that all submodules can use it.

// shared.module.ts\nimport { ImageWrapperComponent } from \'./image-wrapper\';\nconst COMPONENTS = [\n  ImageWrapperComponent\n];

Use

Where you want to use this component, just follow the component-defined API input parameters and use it directly:

<image-wrapper\n  src="https://os.alipayobjects.com/rmsportal/mgesTPFxodmIwpi.png"\n  desc="schematic-diagram"></image-wrapper>',meta:{order:20,title:{"en-US":"New Component","zh-CN":"\u65b0\u589e\u4e1a\u52a1\u7ec4\u4ef6"},type:"Dev"},toc:[{id:"Createanewfile",title:"Create a new file",h:2},{id:"Register",title:"Register",h:2},{id:"Use",title:"Use",h:2}]},"zh-CN":{content:'

\u5bf9\u4e8e\u4e00\u4e9b\u53ef\u80fd\u88ab\u591a\u5904\u5f15\u7528\u7684\u529f\u80fd\u6a21\u5757\uff0c\u5efa\u8bae\u63d0\u70bc\u6210\u4e1a\u52a1\u7ec4\u4ef6\u7edf\u4e00\u7ba1\u7406\u3002\u8fd9\u4e9b\u7ec4\u4ef6\u4e00\u822c\u6709\u4ee5\u4e0b\u7279\u5f81\uff1a

  • \u53ea\u8d1f\u8d23\u4e00\u5757\u76f8\u5bf9\u72ec\u7acb\uff0c\u7a33\u5b9a\u7684\u529f\u80fd\uff1b

  • \u6ca1\u6709\u5355\u72ec\u7684\u8def\u7531\u914d\u7f6e\uff1b

  • \u53ef\u80fd\u662f\u7eaf\u9759\u6001\u7684\uff0c\u4ec5\u53d7\u7236\u7ec4\u4ef6\uff08\u901a\u5e38\u662f\u4e00\u4e2a\u9875\u9762\uff09\u4f20\u9012\u7684\u53c2\u6570\u63a7\u5236\u3002

\u4e0b\u9762\u4ee5\u4e00\u4e2a\u7b80\u5355\u7684\u9759\u6001\u7ec4\u4ef6\u4e3a\u4f8b\u8fdb\u884c\u4ecb\u7ecd\u3002\u5047\u8bbe\u4f60\u7684\u5e94\u7528\u4e2d\u7ecf\u5e38\u9700\u8981\u5c55\u73b0\u56fe\u7247\uff0c\u8fd9\u4e9b\u56fe\u7247\u5bbd\u5ea6\u56fa\u5b9a\uff0c\u6709\u4e00\u4e2a\u7070\u8272\u7684\u80cc\u666f\u548c\u4e00\u5b9a\u7684\u5185\u8fb9\u8ddd\uff0c\u6709\u6587\u5b57\u4ecb\u7ecd\uff0c\u5c31\u50cf\u4e0b\u56fe\u8fd9\u6837\uff1a

\u4f60\u53ef\u4ee5\u7528\u4e00\u4e2a\u7ec4\u4ef6\u6765\u5b9e\u73b0\u8fd9\u4e00\u529f\u80fd\uff0c\u5b83\u6709\u9ed8\u8ba4\u7684\u6837\u5f0f\uff0c\u540c\u65f6\u53ef\u4ee5\u63a5\u6536\u7236\u7ec4\u4ef6\u4f20\u9012\u7684\u53c2\u6570\u8fdb\u884c\u5c55\u793a\u3002

\u65b0\u5efa\u6587\u4ef6

\u5728 src/app/shared/components \u4e0b\u65b0\u5efa\u4e00\u4e2a\u4ee5\u7ec4\u4ef6\u540d\u547d\u540d\u7684\u6587\u4ef6\u5939\uff0c\u547d\u540d\u5c3d\u91cf\u4f53\u73b0\u7ec4\u4ef6\u7684\u529f\u80fd\uff0c\u8fd9\u91cc\u5c31\u53eb image-wrapper\u3002\u5728\u6b64\u6587\u4ef6\u5939\u4e0b\u65b0\u589e ts \u6587\u4ef6\u3001\u6837\u5f0f\u6587\u4ef6\uff08\u5982\u679c\u9700\u8981\uff09\u53ca\u7ec4\u4ef6API\u8bf4\u660e\uff0c\u547d\u540d\u4e3a index.ts\u3001index.less\u548cREADME.md\u3002

\u5728\u4f7f\u7528\u7ec4\u4ef6\u65f6\uff0c\u9ed8\u8ba4\u4f1a\u5728 index.ts \u4e2d\u5bfb\u627e export \u7684\u5bf9\u8c61\uff0c\u5982\u679c\u4f60\u7684\u7ec4\u4ef6\u6bd4\u8f83\u590d\u6742\uff0c\u53ef\u4ee5\u5206\u4e3a\u591a\u4e2a\u6587\u4ef6\uff0c\u6700\u540e\u5728 index.ts \u4e2d\u7edf\u4e00 export\uff0c\u5c31\u50cf\u8fd9\u6837\uff1a

// main.component.ts\nexport class MainComponent {}\n\n// sub.component.ts\nexport class SubComponent {}\n\n// index.ts\nexport MainComponent from \'./main.component\';\nexport SubComponent from \'./sub.component\';

\u4f60\u7684\u4ee3\u7801\u5927\u6982\u662f\u8fd9\u4e2a\u6837\u5b50\uff1a

// index.ts\nimport { Component, Input } from \'@angular/core\';\n\n@Component({\n  selector: \'image-wrapper\',\n  template: `\n    <div [ngStyle]="style">\n      <img class="img" [src]="src" [alt]="desc" />\n      <div *ngIf="desc" class="desc">{{ desc }}</div>\n    </div>\n  `,\n  styleUrls: [ \'./index.less\' ]\n})\nexport class ImageWrapperComponent {\n  @Input() style: { [key: string]: string };\n  @Input() src: string;\n  @Input() desc: string;\n}
// index.less\n:host {\n  width: 400px;\n  margin: 0 auto;\n  padding: 0 20px 8px;\n  text-align: center;\n  background: #f2f4f5;\n\n  ::ng-deep {\n    .img {\n      max-width: calc(100% - 32px);\n      margin: 2.4em 1em;\n      vertical-align: middle;\n      box-shadow: 0 8px 20px rgba(143, 168, 191, 0.35);\n    }\n  }\n}

\u5230\u8fd9\u513f\u7ec4\u4ef6\u5c31\u5efa\u597d\u4e86\uff0c\u4e86\u89e3\u66f4\u591a\u5173\u4e8e\u7ec4\u4ef6\u6837\u5f0f\u7684\u5f00\u53d1\u3002

\u6ce8\u518c

\u7ec4\u4ef6\u521b\u5efa\u597d\u540e\uff0c\u9700\u8981\u5c06\u7ec4\u4ef6\u5bfc\u5165 SharedModule \u4e2d\uff0c\u8fd9\u6837\u6240\u6709\u5b50\u6a21\u5757\u90fd\u53ef\u4ee5\u4f7f\u7528\u5230\u8be5\u7ec4\u4ef6\u3002

// shared.module.ts\nimport { ImageWrapperComponent } from \'./image-wrapper\';\nconst COMPONENTS = [\n  ImageWrapperComponent\n];

\u4f7f\u7528

\u5728\u8981\u4f7f\u7528\u8fd9\u4e2a\u7ec4\u4ef6\u7684\u5730\u65b9\uff0c\u6309\u7167\u7ec4\u4ef6\u5b9a\u4e49\u7684 API \u4f20\u5165\u53c2\u6570\uff0c\u76f4\u63a5\u4f7f\u7528\u5c31\u597d\uff1a

<image-wrapper\n  src="https://os.alipayobjects.com/rmsportal/mgesTPFxodmIwpi.png"\n  desc="\u793a\u610f\u56fe"></image-wrapper>',meta:{order:20,title:{"en-US":"New Component","zh-CN":"\u65b0\u589e\u4e1a\u52a1\u7ec4\u4ef6"},type:"Dev"},toc:[{id:"\u65b0\u5efa\u6587\u4ef6",title:"\u65b0\u5efa\u6587\u4ef6",h:2},{id:"\u6ce8\u518c",title:"\u6ce8\u518c",h:2},{id:"\u4f7f\u7528",title:"\u4f7f\u7528",h:2}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-new-component"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"new-page",redirectTo:"new-page/zh",pathMatch:"full"},{path:"new-page/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/new-page.en-US.md","zh-CN":"docs/new-page.zh-CN.md"},content:{"en-US":{content:'

Angular renders a page in a component tree, the actual development is to organize the code in a module tree to make it better to resuse code. For module granularity depends on the requirements, ng-alain is positioned in the middle of the front-end. Therefore, it is recommended to organize your code structure from a business perspective.

NG-ALAIN provides a very rich set of Schematics templates to quickly create templates and pages that match NG-ALAIN features, as well as a variety of pluggable plugins.

Additionally: NG-ALAIN is a standard Angular CLI project, you can still use the default command line.

First, the module

To create a page, you need to create a module first. If you need a system to set the relevant module, execute the command:

ng g ng-alain:module sys

The CLI will automatically create sys.module.ts and sys-routing.module.ts files under src/app/routes/sys, the former is the system setup module component definition file; the latter is the system setup module routing Configuration file.

// sys.module.ts\nimport { NgModule, Type } from \'@angular/core\';\nimport { SharedModule } from \'@shared\';\nimport { SysRoutingModule } from \'./sys-routing.module\';\n\nconst COMPONENTS: Type[] = [];\n\n@NgModule({\n  imports: [SharedModule, SysRoutingModule],\n  declarations: COMPONENTS,\n})\nexport class SysModule {}

The function of the module is to import the modules we need. All NG-ZORRO, @delon/abc, @delon/chart, etc. are loaded on demand. The external components are imported wherever the current business page needs. In order to reduce these import actions, NG -ALAIN has refined two files shared-delon.module.ts and shared-zorro.module.ts to merge some modules frequently used throughout the project into a module called SharedModule, which is why it is necessary Import it in the business module for the first time. Note: It is not recommended to put all the components in SharedModule, as far as possible, put the modules that need to be used two or three times or more.

And the routing configuration module:

// sys-routing.module.ts\nimport { NgModule } from \'@angular/core\';\nimport { RouterModule, Routes } from \'@angular/router\';\n\nconst routes: Routes = [];\n\n@NgModule({\n  imports: [RouterModule.forChild(routes)],\n  exports: [RouterModule],\n})\nexport class SysRoutingModule {}

By now, you can safely start developing business pages like menu management, logging, system configuration, etc. in the sys directory.

Second, the page

Use the ng generate (abbreviated as: ng g) command to create a log list page in the sys directory:

ng g ng-alain:list log -m=sys

See Command Line Tools for more information.

Finally, you can access the Log page.

Of course, the log may be a very rich piece of information, you can add a view page opened in a modal box to display more details.

ng g ng-alain:view view -m=sys -t=log

-t=log indicates that you want to put the created file under sys/log/view',meta:{order:10,title:{"en-US":"New Page","zh-CN":"\u65b0\u589e\u9875\u9762"},type:"Dev"},toc:[{id:"First,themodule",title:"First, the module",h:2},{id:"Second,thepage",title:"Second, the page",h:2}]},"zh-CN":{content:'

Angular \u867d\u7136\u662f\u4ee5\u7ec4\u4ef6\u6811\u6765\u6e32\u67d3\u4e00\u4e2a\u9875\u9762\uff0c\u7136\u540e\u5b9e\u9645\u5f00\u53d1\u662f\u4ee5\u4e00\u79cd\u6a21\u5757\u6811\u6765\u7ec4\u7ec7\u4ee3\u7801\uff0c\u4f7f\u5176\u80fd\u66f4\u597d\u5730\u4ee3\u7801\u590d\u7528\u3002\u800c\u5bf9\u4e8e\u6a21\u5757\u7c92\u5ea6\u53d6\u51b3\u4e8e\u9700\u6c42\uff0cng-alain\u7684\u5b9a\u4f4d\u5728\u4e8e\u4e2d\u53f0\u524d\u7aef\uff0c\u56e0\u6b64\uff0c\u6bd4\u8f83\u5efa\u8bae\u4ece\u4e1a\u52a1\u89d2\u5ea6\u51fa\u53d1\u7ec4\u7ec7\u4f60\u7684\u4ee3\u7801\u7ed3\u6784\u3002

NG-ALAIN \u63d0\u4f9b\u4e00\u5957\u975e\u5e38\u4e30\u5bcc\u7684 Schematics \u6a21\u677f\uff0c\u53ef\u4ee5\u5feb\u901f\u521b\u5efa\u7b26\u5408 NG-ALAIN \u7279\u70b9\u7684\u6a21\u677f\u548c\u9875\u9762\uff1b\u540c\u65f6\u5305\u542b\u591a\u79cd\u53ef\u63d2\u62d4\u63d2\u4ef6\u3002

\u53e6\uff1aNG-ALAIN \u662f\u4e00\u4e2a\u6807\u51c6\u7684 Angular CLI \u9879\u76ee\uff0c\u4f60\u4f9d\u7136\u53ef\u4ee5\u4f7f\u7528\u9ed8\u8ba4\u7684\u6240\u6709\u547d\u4ee4\u884c\u3002

\u4e00\u3001\u6a21\u5757

\u8981\u521b\u5efa\u4e00\u4e2a\u9875\u9762\u9700\u8981\u5148\u521b\u5efa\u4e00\u4e2a\u6a21\u5757\u5f00\u59cb\uff0c\u5047\u5982\u9700\u8981\u4e00\u4e2a\u7cfb\u7edf\u8bbe\u7f6e\u76f8\u5173\u7684\u6a21\u5757\uff0c\u6267\u884c\u547d\u4ee4\uff1a

ng g ng-alain:module sys

CLI \u4f1a\u81ea\u52a8\u5728 src/app/routes/sys \u4e0b\u521b\u5efa sys.module.ts \u548c sys-routing.module.ts \u6587\u4ef6\uff0c\u524d\u8005\u662f\u7cfb\u7edf\u8bbe\u7f6e\u6a21\u5757\u7ec4\u4ef6\u5b9a\u4e49\u6587\u4ef6\uff1b\u540e\u8005\u662f\u7cfb\u7edf\u8bbe\u7f6e\u6a21\u5757\u8def\u7531\u914d\u7f6e\u6587\u4ef6\u3002

// sys.module.ts\nimport { NgModule, Type } from \'@angular/core\';\nimport { SharedModule } from \'@shared\';\nimport { SysRoutingModule } from \'./sys-routing.module\';\n\nconst COMPONENTS: Type[] = [];\n\n@NgModule({\n  imports: [SharedModule, SysRoutingModule],\n  declarations: COMPONENTS,\n})\nexport class SysModule {}

\u6a21\u5757\u7684\u4f5c\u7528\u662f\u5bfc\u5165\u6211\u4eec\u9700\u8981\u7684\u6a21\u5757\uff0c\u6240\u6709 NG-ZORRO\u3001@delon/abc\u3001@delon/chart \u7b49\u90fd\u662f\u6309\u9700\u6c42\u52a0\u8f7d\u6a21\u5757\uff0c\u5f53\u524d\u4e1a\u52a1\u9875\u9700\u8981\u54ea\u91cc\u5916\u90e8\u7ec4\u4ef6\u5c31\u5bfc\u5165\u54ea\u4e9b\uff0c\u4e3a\u4e86\u51cf\u5c11\u8fd9\u4e9b\u5bfc\u5165\u52a8\u4f5c\uff0cNG-ALAIN \u63d0\u70bc\u4e86\u4e24\u4e2a\u6587\u4ef6 shared-delon.module.ts\u3001shared-zorro.module.ts \u5c06\u4e00\u4e9b\u6574\u4e2a\u9879\u76ee\u7ecf\u5e38\u7528\u5230\u7684\u6a21\u5757\u5408\u5e76\u6210\u4e00\u4e2a\u53eb SharedModule \u6a21\u5757\u5185\uff0c\u8fd9\u4e5f\u5c31\u662f\u4e3a\u4ec0\u4e48\u9700\u8981\u5728\u4e1a\u52a1\u6a21\u5757\u5185\u7b2c\u4e00\u65f6\u95f4\u5bfc\u5165\u5b83\u3002\u6ce8\u610f\uff1a\u4e0d\u5efa\u8bae\u628a\u6240\u6709\u7ec4\u4ef6\u90fd\u653e\u8fdb SharedModule \u5185\uff0c\u5c3d\u53ef\u80fd\u5c06\u9700\u8981\u7528\u5230\u7684\u6a21\u5757\u4ee5\u4e8c\u6216\u4e09\u6b21\u4ee5\u4e0a\u4f7f\u7528\u624d\u653e\u8fdb\u8fd9\u91cc\u3002

\u4ee5\u53ca\u8def\u7531\u914d\u7f6e\u6a21\u5757\uff1a

// sys-routing.module.ts\nimport { NgModule } from \'@angular/core\';\nimport { RouterModule, Routes } from \'@angular/router\';\n\nconst routes: Routes = [];\n\n@NgModule({\n  imports: [RouterModule.forChild(routes)],\n  exports: [RouterModule],\n})\nexport class SysRoutingModule {}

\u81f3\u6b64\uff0c\u4f60\u53ef\u4ee5\u653e\u5fc3\u5728 sys \u76ee\u5f55\u4e2d\u5f00\u59cb\u5f00\u53d1\u50cf\u83dc\u5355\u7ba1\u7406\u3001\u65e5\u5fd7\u3001\u7cfb\u7edf\u914d\u7f6e\u7b49\u4e1a\u52a1\u9875\u9762\u3002

\u4e8c\u3001\u9875\u9762

\u5229\u7528 ng generate\uff08\u53ef\u7b80\u5199\u4e3a\uff1ang g\uff09 \u547d\u4ee4\u5728 sys \u76ee\u5f55\u4e0b\u521b\u5efa\u4e00\u4e2a\u65e5\u5fd7\u5217\u8868\u9875\uff1a

ng g ng-alain:list log -m=sys

\u4e86\u89e3\u66f4\u591a\u8bf7\u53c2\u8003\u547d\u4ee4\u884c\u5de5\u5177\u3002

\u6700\u7ec8\uff0c\u4f60\u53ef\u4ee5\u8bbf\u95ee \u65e5\u5fd7 \u9875\u9762\u3002

\u5f53\u7136\u65e5\u5fd7\u53ef\u80fd\u662f\u4e00\u4e2a\u975e\u5e38\u4e30\u5bcc\u7684\u4fe1\u606f\uff0c\u53ef\u4ee5\u589e\u52a0\u4e00\u4e2a\u4ee5\u6a21\u6001\u6846\u6253\u5f00\u7684\u67e5\u770b\u9875\u6765\u663e\u793a\u66f4\u591a\u8be6\u60c5\u3002

ng g ng-alain:view view -m=sys -t=log

-t=log \u8868\u793a\u5e0c\u671b\u628a\u521b\u5efa\u7684\u6587\u4ef6\u653e\u8fdb\u81f3 sys/log/view',meta:{order:10,title:{"en-US":"New Page","zh-CN":"\u65b0\u589e\u9875\u9762"},type:"Dev"},toc:[{id:"\u4e00\u3001\u6a21\u5757",title:"\u4e00\u3001\u6a21\u5757",h:2},{id:"\u4e8c\u3001\u9875\u9762",title:"\u4e8c\u3001\u9875\u9762",h:2}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-new-page"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"performance",redirectTo:"performance/zh",pathMatch:"full"},{path:"performance/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/performance.en-US.md","zh-CN":"docs/performance.zh-CN.md"},content:{"en-US":{content:'

Envelope size optimization

Divided into JavaScript script files and CSS files. The following only describes the script part. For the CSS file, please refer to Optimize Theme System.

Note: It is recommended to always prioritize business, optimize to the post- criteria, and have some understanding of NG-ALAIN before starting to optimize. The optimization scheme in this chapter will change with the change of the version. Please pay attention to the details.

Structure description

In general, there are two files that are larger after the build: scripts.js and main.js, and our optimization is mainly for these two items.

scripts.js

It comes from a collection of scripts nodes of angular.json, so the size of this file depends on the size of the third-party component referenced by the scripts node.

In general, you should put it under scripts when you are using non-Angular third-party components.

main.js

Using ng build by default will package all @angular/*, ng-zorro-antd, @delon/* and some third-party Angular components. Unless you use the --vendor-chunk parameter to separate these classes library.

Optimization object

We know that the resource file packaged by Angular Cli will contain the hashing value of the file. Which is like the unique identifier of the file. If the module is not modified, no new hashing value will be generated. This ensures that after the user downloads the resource for the first time. No matter how we build the user again, there is no need to download it again.

In fact, Angular Cli defaults to --vendor-chunk. The main factor is that these @angular/* are very fast relative to iteration.

According to NG-ALAIN\'s module registration guidelines, generate two shared-delon.module.ts andshared-zorro.module.ts produced are the summary of the import of secondary modules shared by @Delon and NG-ZORRO.

@delon/abc,@delon/chart, ng-zorro-antd The three main libraries all support secondary imports. Only selecting the modules required by the project will effectively solve the problem of package size.

Conclusion

After NG-ZORRO provides better optimization support, we will release #684 and hope to have a better package size. Expected res

',meta:{order:80,title:{"en-US":"Performance","zh-CN":"\u4f18\u5316"},type:"Advance"},toc:[{id:"Envelopesizeoptimization",title:"Envelope size optimization",h:2,children:[{id:"Structuredescription",title:"Structure description",h:3},{id:"Optimizationobject",title:"Optimization object",h:3},{id:"Conclusion",title:"Conclusion",h:3}]}]},"zh-CN":{content:'

\u5305\u4f53\u5927\u5c0f\u4f18\u5316

\u5206\u4e3aJavaScript\u811a\u672c\u6587\u4ef6\u548cCSS\u6587\u4ef6\uff0c\u4ee5\u4e0b\u53ea\u63cf\u8ff0\u811a\u672c\u90e8\u5206\uff0c\u6709\u5173CSS\u6587\u4ef6\u8bf7\u53c2\u8003\u4f18\u5316\u4e3b\u9898\u7cfb\u7edf\u3002

\u6ce8\u610f\uff1a \u5efa\u8bae\u59cb\u7ec8\u4ee5\u4e1a\u52a1\u4f18\u5148\uff0c\u4f18\u5316\u4e3a\u540e\u7684\u51c6\u5219\uff0c\u4e14\u5728\u5f00\u59cb\u524d\u5bf9 NG-ALAIN \u6709\u4e00\u5b9a\u4e86\u89e3\u540e\u518d\u8fdb\u884c\u4f18\u5316\u3002\u672c\u7ae0\u8282\u7684\u4f18\u5316\u65b9\u6848\u4f1a\u968f\u7740\u7248\u672c\u7684\u66f4\u8fed\u6709\u6240\u53d8\u52a8\uff0c\u6709\u5173\u7ec6\u8282\u8bf7\u6301\u7eed\u5173\u6ce8\u3002

\u7ed3\u6784\u8bf4\u660e

\u4e00\u822c\u6765\u8bf4\uff0c\u6784\u5efa\u540e\u6709\u4e24\u4e2a\u6587\u4ef6\u4f1a\u6bd4\u8f83\u5927\uff1ascripts.js \u548c main.js\uff0c\u800c\u6211\u4eec\u4f18\u5316\u4e5f\u4e3b\u8981\u9488\u5bf9\u8fd9\u4e24\u9879\u3002

scripts.js

\u5b83\u6765\u81ea\u662f angular.json \u7684 scripts \u8282\u70b9\u7684\u96c6\u5408\uff0c\u56e0\u6b64\uff0c\u8fd9\u4e2a\u6587\u4ef6\u7684\u5927\u5c0f\u53d6\u51b3\u4e8e scripts \u8282\u70b9\u6240\u5f15\u7528\u7684\u7b2c\u4e09\u65b9\u7ec4\u4ef6\u7684\u5927\u5c0f\u3002

\u4e00\u822c\u6765\u8bf4\uff0c\u5f53\u4f60\u5728\u4f7f\u7528\u975e Angular \u7b2c\u4e09\u65b9\u7ec4\u4ef6\u65f6\u90fd\u5e94\u8be5\u653e\u5728 scripts \u4e0b\u3002

main.js

\u9ed8\u8ba4\u4f7f\u7528 ng build \u4f1a\u5c06\u6240\u6709 @angular/*\u3001ng-zorro-antd\u3001@delon/* \u4ee5\u53ca\u4e00\u4e9b\u7b2c\u4e09\u65b9 Angular \u7ec4\u4ef6\u90fd\u4f1a\u88ab\u6253\u5305\u8fdb\u6765\uff0c\u9664\u975e\u4f60\u4f7f\u7528 --vendor-chunk \u53c2\u6570\u6765\u5206\u79bb\u8fd9\u4e9b\u7c7b\u5e93\u3002

\u4f18\u5316\u5bf9\u8c61

\u6211\u4eec\u77e5\u9053\uff0cAngular Cli \u6253\u5305\u51fa\u6765\u7684\u8d44\u6e90\u6587\u4ef6\u4f1a\u5305\u542b\u8be5\u6587\u4ef6 hashing \u503c\uff0c\u5b83\u50cf\u662f\u6587\u4ef6\u7684\u552f\u4e00\u6807\u8bc6\u7801\uff0c\u82e5\u672a\u5bf9\u8be5\u6587\u4ef6\u8fdb\u884c\u6a21\u5757\u4fee\u6539\u90fd\u4e0d\u4f1a\u4ea7\u751f\u65b0\u7684 hashing \u503c\uff0c\u8fd9\u786e\u4fdd\u7528\u6237\u9996\u6b21\u4e0b\u8f7d\u8d44\u6e90\u540e\u4e0d\u7ba1\u6211\u4eec\u5982\u4f55\u518d\u6b21\u6784\u5efa\u7528\u6237\u90fd\u65e0\u987b\u518d\u4e00\u6b21\u4e0b\u8f7d\u3002

\u4e8b\u5b9e\u4e0a\uff0cAngular Cli \u9ed8\u8ba4\u5c06 --vendor-chunk \u4e3b\u8981\u56e0\u7d20\u662f\u8fd9\u4e9b @angular/* \u76f8\u5bf9\u4e8e\u8fed\u4ee3\u5f88\u5feb\u3002

\u6839\u636e NG-ALAIN \u7684\u6a21\u5757\u6ce8\u518c\u6307\u5bfc\u539f\u5219\uff0c\u4ea7\u751f\u7684\u4e24\u4e2a shared-delon.module.ts\u3001shared-zorro.module.ts \u4e24\u4e2a\u4e13\u95e8\u9488\u5bf9 @Delon \u4e0e NG-ZORRO \u5171\u4eab\u6b21\u7ea7\u6a21\u5757\u5bfc\u5165\u7684\u6c47\u603b\u3002

@delon/abc\u3001@delon/chart\u3001ng-zorro-antd \u4e09\u4e2a\u4e3b\u8981\u7c7b\u5e93\u90fd\u652f\u6301\u6b21\u7ea7\u5bfc\u5165\uff0c\u53ea\u9009\u62e9\u9879\u76ee\u6240\u9700\u8981\u7684\u6a21\u5757\u5c06\u6709\u6548\u7684\u89e3\u51b3\u5305\u4f53\u5927\u5c0f\u7684\u95ee\u9898\u3002

\u7ed3\u8bba

\u5f85 NG-ALAIN \u63d0\u4f9b\u66f4\u597d\u7684\u4f18\u5316\u652f\u6301\u540e\uff0c\u6211\u4eec\u4f1a\u53d1\u5e03 #684 \u5e0c\u671b\u5bf9\u5305\u4f53\u5927\u5c0f\u6709\u66f4\u597d\u7684

',meta:{order:80,title:{"en-US":"Performance","zh-CN":"\u4f18\u5316"},type:"Advance"},toc:[{id:"\u5305\u4f53\u5927\u5c0f\u4f18\u5316",title:"\u5305\u4f53\u5927\u5c0f\u4f18\u5316",h:2,children:[{id:"\u7ed3\u6784\u8bf4\u660e",title:"\u7ed3\u6784\u8bf4\u660e",h:3},{id:"\u4f18\u5316\u5bf9\u8c61",title:"\u4f18\u5316\u5bf9\u8c61",h:3},{id:"\u7ed3\u8bba",title:"\u7ed3\u8bba",h:3}]}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-performance"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"server",redirectTo:"server/zh",pathMatch:"full"},{path:"server/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/server.en-US.md","zh-CN":"docs/server.zh-CN.md"},content:{"en-US":{content:'

NG-ALAIN is a single-page application based on the Angular technology stack. We provide development models for front-end code and native analog data.\nWork in the form of the Restful API with the server application of any technology stack. The basics of interacting with the server are briefly described below.

Front-end request process

In NG-ALAIN, a complete front-end UI interaction to the server-side processing flow looks like this:

  1. Start Angular for the first time to execute APP_INITIALIZER;

  2. UI component interaction;

  3. Send the request using the encapsulated _HttpClient;

  4. Trigger the user authentication interceptor @delon/auth and add the token parameter uniformly;

    • If there is no token or an expired interrupt subsequent request, jump directly to the login page;

  5. Trigger the default interceptor to process the prefix and other information;

  6. Get the server back;

  7. Trigger the default interceptor to handle request exceptions, business exceptions, etc.

  8. Update the data and refresh the UI.

Interceptor

By default, two interceptors are registered in the root module.SimpleInterceptor with DefaultInterceptorAnd the execution order is executed in the registration order.

SimpleInterceptor

User Authentication has built-in interceptors for automatically adding token parameters to requests. There is also a JWTInterceptor interceptor, which is a standard JWT specification. If the backend uses standard JWT, it can be directly replaced with a JWTInterceptor interceptor.

DefaultInterceptor

DefaultInterceptor The interceptor simply provides an interceptor. By default, it contains sample code that handles server request prefixes, handles request exceptions, and business exceptions. You can make adjustments based on your own needs.

Important point

We can put the next.handle(req) as the demarcation point in the interceptor intercept method. The first part is the request and the pipe part is the post. This will make it clearer which part is to be done before the request and which part will be executed after the request. For more information on interceptors, please refer to the official website.

Development environment

Under normal circumstances, the development environment and the production environment are not the same back-end request source. You can actually configure it under the environment directory. environment.ts and environment.prod.ts Change the request source for different environments.

environment is actually a JSON object, you can organize different forms to meet the problem of multiple request sources.

Mock

Sometimes when you want to develop the front-end first, you can use @delon/mock to simulate the request data. The actual principle is to use the interceptor to directly return the data to the matching URL instead of sending an HTTP request. By default, it is only valid for the test environment. Of course, you usually need to make sure that the data of the Mock interface is consistent with the backend. You can create the corresponding Mock interface in the _mock directory:

export const USERS = {\n  \'GET /users\': { users: [1, 2], total: 2 }\n}

So for the test environment, when the /users request is encountered, the {users: [1, 2], total: 2 } data is returned directly. See here for more Mock syntax and usage.

Note: When you don\'t need a Mock interface for a request, be sure to comment out or remove it.

Cors

Most applications will be front-end is separate from the back-end, which leads to CORS factors when a request is made to the back end, such as:

http.get(`http://192.168.1.100/api/app`).subscribe();

Note: If the request does not start with http, each request will add environment.SERVER_URL as the leading edge of the request URL.

The following error is returned directly:

Access to XMLHttpRequest at \'http://192.168.1.100/api/app\' from origin \'http://localhost:4200\' has been blocked by CORS policy: No \'Access-Control-Allow-Origin\' header is present on the requested resource.

There are usually two ways to solve cross-domain problems. One is to allow the back-end development environment to directly support CORS requests (not recommended, but simplest), the second is to use Angular Cli to provide Proxy Support, the development proxy server will forward the domain and port of the request sent by Angular to the backend Server, CORS is a security restriction of the browser. There is no problem with CORS before the proxy server and the backend server. This is why many people try to make it clear that they can be requested in Postman but not in Angular.

Assuming that all backend requests are prefixed with /api, you can configure all this prefix in proxy.conf.js to forward to the new backend, for example:

module.exports = {\n  \'/api\': {\n    target: \'http://192.168.1.100/api\',\n    secure: false\n  }\n}
  • /api Proxy path, domain is not supported

  • target Proxy target address

  • secure If the proxy target address is https, it should be set to true, otherwise it is false

  • pathRewrite Rewrite the address, such as pathRewrite: {\'^/api\':\'/\'} to change the prefix /api to /

  • changeOrigin Change the host of the host header to the target URL. Some backends will judge whether it is valid according to its value. You may need to set true

  • logLevel Set to debug to display the message forwarded by the agent on the terminal

Abort more detail please refer to Proxying to a backend server, and for configuration description please refer to http-proxy-middleware options.

Common problem

The request may be rejected or returned directly to 401?

Scaffolding uses the SimpleInterceptor interceptor of @delon/auth by default, which causes an error to be returned directly if a token cannot be obtained during the request.

User Authentication This process is a must for the middle office.

Unable to display request log

Starting from Angular 13, the debugging log of remote requests will no longer be displayed in the terminal. If you need to display the log, you can fix from refer to How to fix logging for proxy in angular

',meta:{order:40,title:"Work with Server",type:"Dev"},toc:[{id:"Front-endrequestprocess",title:"Front-end request process",h:2,children:[{id:"Interceptor",title:"Interceptor",h:3}]},{id:"Developmentenvironment",title:"Development environment",h:2},{id:"Mock",title:"Mock",h:2},{id:"Cors",title:"Cors",h:2},{id:"Commonproblem",title:"Common problem",h:2}]},"zh-CN":{content:'

NG-ALAIN \u662f\u4e00\u5957\u57fa\u4e8e Angular \u6280\u672f\u6808\u7684\u5355\u9875\u9762\u5e94\u7528\uff0c\u6211\u4eec\u63d0\u4f9b\u7684\u662f\u524d\u7aef\u4ee3\u7801\u548c\u672c\u5730\u6a21\u62df\u6570\u636e\u7684\u5f00\u53d1\u6a21\u5f0f\uff0c\n\u901a\u8fc7 Restful API \u7684\u5f62\u5f0f\u548c\u4efb\u4f55\u6280\u672f\u6808\u7684\u670d\u52a1\u7aef\u5e94\u7528\u4e00\u8d77\u5de5\u4f5c\u3002\u4e0b\u9762\u5c06\u7b80\u5355\u4ecb\u7ecd\u548c\u670d\u52a1\u7aef\u4ea4\u4e92\u7684\u57fa\u672c\u5199\u6cd5\u3002

\u524d\u7aef\u8bf7\u6c42\u6d41\u7a0b

\u5728 NG-ALAIN \u4e2d\uff0c\u4e00\u4e2a\u5b8c\u6574\u7684\u524d\u7aef UI \u4ea4\u4e92\u5230\u670d\u52a1\u7aef\u5904\u7406\u6d41\u7a0b\u662f\u8fd9\u6837\u7684\uff1a

  1. \u9996\u6b21\u542f\u52a8 Angular \u6267\u884c APP_INITIALIZER\uff1b

  2. UI \u7ec4\u4ef6\u4ea4\u4e92\u64cd\u4f5c\uff1b

  3. \u4f7f\u7528\u5c01\u88c5\u7684 _HttpClient \u53d1\u9001\u8bf7\u6c42\uff1b

  4. \u89e6\u53d1\u7528\u6237\u8ba4\u8bc1\u62e6\u622a\u5668 @delon/auth\uff0c\u7edf\u4e00\u52a0\u5165 token \u53c2\u6570\uff1b

    • \u82e5\u672a\u5b58\u5728 token \u6216\u5df2\u8fc7\u671f\u4e2d\u65ad\u540e\u7eed\u8bf7\u6c42\uff0c\u76f4\u63a5\u8df3\u8f6c\u81f3\u767b\u5f55\u9875\uff1b

  5. \u89e6\u53d1\u9ed8\u8ba4\u62e6\u622a\u5668\uff0c\u7edf\u4e00\u5904\u7406\u524d\u7f00\u7b49\u4fe1\u606f\uff1b

  6. \u83b7\u53d6\u670d\u52a1\u7aef\u8fd4\u56de\uff1b

  7. \u89e6\u53d1\u9ed8\u8ba4\u62e6\u622a\u5668\uff0c\u7edf\u4e00\u5904\u7406\u8bf7\u6c42\u5f02\u5e38\u3001\u4e1a\u52a1\u5f02\u5e38\u7b49\uff1b

  8. \u6570\u636e\u66f4\u65b0\uff0c\u5e76\u5237\u65b0 UI\u3002

\u62e6\u622a\u5668

\u9ed8\u8ba4\u60c5\u51b5\u4e0b\u5728\u6839\u6a21\u5757\u6ce8\u518c\u4e86\u4e24\u4e2a\u62e6\u622a\u5668 SimpleInterceptor \u548c DefaultInterceptor\uff0c\u4e14\u6267\u884c\u987a\u5e8f\u6309\u6ce8\u518c\u987a\u5e8f\u6267\u884c\u3002

SimpleInterceptor

\u7528\u6237\u8ba4\u8bc1\u5185\u7f6e\u7528\u4e8e\u81ea\u52a8\u4e3a\u8bf7\u6c42\u6dfb\u52a0 token \u53c2\u6570\u7684\u62e6\u622a\u5668\u3002\u8fd9\u91cc\u8fd8\u6709\u4e00\u4e2a\u53eb JWTInterceptor \u62e6\u622a\u5668\uff0c\u662f\u4e00\u4e2a\u6807\u51c6 JWT \u89c4\u8303\uff0c\u82e5\u540e\u7aef\u91c7\u7528\u6807\u51c6JWT\u53ef\u4ee5\u76f4\u63a5\u6362\u6210JWTInterceptor\u62e6\u622a\u5668\u3002

DefaultInterceptor

DefaultInterceptor \u62e6\u622a\u5668\u53ea\u662f\u63d0\u4f9b\u4e00\u4e2a\u62e6\u622a\u5668\u7684\u5199\u6cd5\uff0c\u9ed8\u8ba4\u5305\u542b\u4e86\u7edf\u4e00\u5904\u7406\u670d\u52a1\u5668\u8bf7\u6c42\u524d\u7f00\u3001\u5904\u7406\u8bf7\u6c42\u5f02\u5e38\u53ca\u4e1a\u52a1\u5f02\u5e38\u7684\u793a\u4f8b\u4ee3\u7801\uff0c\u4f60\u53ef\u4ee5\u6839\u636e\u4f60\u81ea\u5df1\u7684\u9700\u6c42\u505a\u8c03\u6574\u3002

\u6ce8\u610f\u70b9

\u6211\u4eec\u53ef\u4ee5\u628a\u62e6\u622a\u5668 intercept \u65b9\u6cd5\u5185\uff0c\u4ee5 next.handle(req) \u4e3a\u5206\u754c\u70b9\uff0c\u524d\u90e8\u5206\u4e3a\u8bf7\u6c42\u524d\uff0cpipe \u90e8\u5206\u4e3a\u63a5\u6536\u540e\u3002\u8fd9\u6837\u4f1a\u66f4\u660e\u786e\u77e5\u9053\u54ea\u4e00\u90e8\u5206\u662f\u8bf7\u6c42\u524d\u8981\u505a\uff0c\u54ea\u4e00\u90e8\u5206\u662f\u8bf7\u6c42\u540e\u4f1a\u6267\u884c\u7684\u3002\u6709\u5173\u66f4\u591a\u62e6\u622a\u5668\u77e5\u8bc6\u8bf7\u53c2\u8003\u5b98\u7f51\u3002

\u5f00\u53d1\u73af\u5883

\u6b63\u5e38\u60c5\u51b5\u4e0b\u5f00\u53d1\u73af\u5883\u548c\u751f\u4ea7\u73af\u5883\u4e0d\u662f\u540c\u4e00\u4e2a\u540e\u7aef\u8bf7\u6c42\u6e90\uff0c\u5b9e\u9645\u53ef\u4ee5\u901a\u8fc7\u914d\u7f6e environment \u76ee\u5f55\u4e0b environment.ts \u548c environment.prod.ts \u6539\u53d8\u4e0d\u540c\u73af\u5883\u7684\u8bf7\u6c42\u6e90\u3002

environment \u5b9e\u9645\u662f\u4e00\u4e2aJSON\u5bf9\u8c61\uff0c\u53ef\u4ee5\u7ec4\u7ec7\u4e0d\u540c\u5f62\u5f0f\u6765\u6ee1\u8db3\u591a\u8bf7\u6c42\u6e90\u7684\u95ee\u9898\u3002

Mock

\u6709\u65f6\u5019\u5e0c\u671b\u4f18\u5148\u5f00\u53d1\u524d\u7aef\u65f6\uff0c\u53ef\u4ee5\u5229\u7528 @delon/mock \u6765\u6a21\u62df\u8bf7\u6c42\u6570\u636e\uff0c\u5b9e\u9645\u539f\u7406\u662f\u5229\u7528\u62e6\u622a\u5668\uff0c\u5bf9\u5339\u914d\u7684URL\u76f4\u63a5\u8fd4\u56de\u6570\u636e\uff0c\u800c\u4e0d\u662f\u53d1\u9001\u4e00\u4e2aHTTP\u8bf7\u6c42\uff0c\u9ed8\u8ba4\u60c5\u51b5\u4e0b\u53ea\u5bf9\u6d4b\u8bd5\u73af\u5883\u6709\u6548\u3002\u5f53\u7136\u901a\u5e38\u60c5\u51b5\u4e0b\u4f60\u9700\u8981\u786e\u4fdd Mock \u63a5\u53e3\u7684\u6570\u636e\u4e0e\u540e\u7aef\u4fdd\u6301\u4e00\u81f4\uff0c\u4f60\u53ef\u4ee5\u5728 _mock \u76ee\u5f55\u4e0b\u521b\u5efa\u76f8\u5e94\u7684 Mock \u63a5\u53e3\uff1a

export const USERS = {\n  \'GET /users\': { users: [1, 2], total: 2 }\n}

\u56e0\u6b64\u5bf9\u4e8e\u6d4b\u8bd5\u73af\u5883\u4e0b\u5f53\u9047\u5230 /users \u8bf7\u6c42\u76f4\u63a5\u8fd4\u56de { users: [1, 2], total: 2 } \u6570\u636e\u3002\u6709\u5173\u66f4\u591a Mock \u8bed\u6cd5\u548c\u4f7f\u7528\u65b9\u5f0f\u53c2\u8003\u8fd9\u91cc\u3002

\u6ce8\uff1a \u5f53\u4f60\u4e0d\u9700\u8981\u67d0\u4e2a\u8bf7\u6c42\u7684 Mock \u63a5\u53e3\u65f6\uff0c\u52a1\u5fc5\u8981\u6ce8\u91ca\u6389\u6216\u79fb\u9664\u5b83\u3002

\u8de8\u57df

\u5927\u90e8\u5206\u5e94\u7528\u90fd\u4f1a\u524d\u540e\u7aef\u5206\u79bb\u8fdb\u884c\u5f00\u53d1\uff0c\u8fd9\u5bfc\u81f4\u5f53\u5bf9\u540e\u7aef\u53d1\u8d77\u4e00\u4e2a\u8bf7\u6c42\u65f6\u4f1a\u53d7\u8de8\u57df\uff08CORS\uff09\u7684\u56e0\u7d20\uff0c\u4f8b\u5982\uff1a

http.get(`http://192.168.1.100/api/app`).subscribe();

\u6ce8\uff1a\u5982\u679c\u975e http \u5f00\u5934\u7684\u8bf7\u6c42\uff0c\u4f1a\u5728\u6bcf\u4e2a\u8bf7\u6c42\u90fd\u4f1a\u52a0\u4e0a environment.SERVER_URL \u4f5c\u4e3a\u8bf7\u6c42 URL \u7684\u524d\u7f18\u3002

\u76f4\u63a5\u8fd4\u56de\u4ee5\u4e0b\u9519\u8bef\uff1a

Access to XMLHttpRequest at \'http://192.168.1.100/api/app\' from origin \'http://localhost:4200\' has been blocked by CORS policy: No \'Access-Control-Allow-Origin\' header is present on the requested resource.

\u800c\u6b63\u5e38\u89e3\u51b3\u8de8\u57df\u95ee\u9898\u6709\u4e24\u79cd\u65b9\u6cd5\uff0c\u4e00\u662f\u8ba9\u540e\u7aef\u5f00\u53d1\u73af\u5883\u76f4\u63a5\u652f\u6301\u8de8\u57df\u8bf7\u6c42\uff08\u4e0d\u63a8\u8350\uff0c\u4f46\u6700\u7b80\u5355\uff09\uff0c\u4e8c\u662f\u5229\u7528 Angular Cli \u63d0\u4f9b\u4ee3\u7406\u652f\u6301\uff0c\u5f00\u53d1\u4ee3\u7406\u670d\u52a1\u5668\u4f1a\u5c06 Angular \u53d1\u9001\u7684\u8bf7\u6c42\u7684\u57df\u548c\u7aef\u53e3\u8f6c\u53d1\u7ed9\u540e\u7aef\u670d\u52a1\u5668\uff0cCORS \u662f\u6d4f\u89c8\u5668\u7684\u5b89\u5168\u9650\u5236\uff0c\u5728\u4ee3\u7406\u670d\u52a1\u5668\u4e0e\u540e\u7aef\u670d\u52a1\u5668\u4e4b\u524d\u5e76\u4e0d\u5b58\u5728 CORS \u7684\u95ee\u9898\uff0c\u8fd9\u4e5f\u5c31\u662f\u4e3a\u4ec0\u4e48\u5f88\u591a\u4eba\u4f1a\u5c1d\u8bd5\u660e\u660e\u5728 Postman \u80fd\u8bf7\u6c42\uff0c\u800c\u5728 Angular \u4e0b\u65e0\u6cd5\u8bf7\u6c42\u7684\u539f\u56e0\u6240\u5728\u3002

\u5047\u5b9a\u6240\u6709\u540e\u7aef\u8bf7\u6c42\u90fd\u662f\u4ee5 /api \u4e3a\u524d\u7f00\u65f6\uff0c\u5c31\u53ef\u4ee5\u5728 proxy.conf.js \u914d\u7f6e\u6240\u6709\u8fd9\u4e2a\u524d\u7f00\u90fd\u8f6c\u5411\u65b0\u7684\u540e\u7aef\uff0c\u4f8b\u5982\uff1a

module.exports = {\n  \'/api\': {\n    target: \'http://192.168.1.100/api\',\n    secure: false\n  }\n}
  • /api \u4ee3\u7406\u8def\u5f84\uff0c\u4e0d\u652f\u6301\u57df

  • target \u4ee3\u7406\u76ee\u6807\u5730\u5740

  • secure \u4ee3\u7406\u76ee\u6807\u5730\u5740\u5982\u679c\u662f https \u5e94\u8be5\u8bbe\u7f6e\u4e3a true\uff0c\u53cd\u4e4b\u4e3a false

  • pathRewrite \u91cd\u5199\u5730\u5740\uff0c\u4f8b\u5982 pathRewrite: {\'^/api\': \'/\'} \u5c06\u524d\u7f00 /api \u8f6c\u4e3a /

  • changeOrigin \u5c06\u4e3b\u673a\u6807\u5934\u7684 host \u66f4\u6539\u4e3a\u76ee\u6807URL\uff0c\u6709\u4e9b\u540e\u7aef\u4f1a\u6839\u636e\u5176\u503c\u6765\u5224\u65ad\u662f\u5426\u6709\u6548\uff0c\u53ef\u80fd\u9700\u8981\u901a\u8fc7\u8bbe\u7f6e true

  • logLevel \u8bbe\u7f6e\u4e3a debug \u53ef\u4ee5\u7ec8\u7aef\u663e\u793a\u4ee3\u7406\u8f6c\u53d1\u7684\u6d88\u606f

\u66f4\u591a\u4f7f\u7528\u8bf4\u660e\u8bf7\u53c2\u8003\u4ee3\u7406\u5230\u540e\u7aef\u670d\u52a1\u5668\uff0c\u4ee5\u53ca\u914d\u7f6e\u63cf\u8ff0\u8bf7\u53c2\u8003http-proxy-middleware options\u3002

\u5e38\u89c1\u95ee\u9898

\u8bf7\u6c42\u53ef\u80fd\u88ab\u62d2\u7edd\u6216\u76f4\u63a5\u8fd4\u56de 401 ?

\u811a\u624b\u67b6\u9ed8\u8ba4\u60c5\u51b5\u4e0b\u4f7f\u7528\u4e86 @delon/auth \u7684 SimpleInterceptor \u62e6\u622a\u5668\uff0c\u5bfc\u81f4\u5728\u8bf7\u6c42\u8fc7\u7a0b\u4e2d\u82e5\u53d1\u73b0\u65e0\u6cd5\u83b7\u53d6 Token \u65f6\u4f1a\u76f4\u63a5\u8fd4\u56de\u9519\u8bef\u3002

\u7528\u6237\u8ba4\u8bc1\u8fd9\u4e2a\u8fc7\u7a0b\u662f\u4e2d\u53f0\u5fc5\u5907\u7684\u3002

\u5173\u4e8e\u65e0\u6cd5\u663e\u793a\u8bf7\u6c42\u65e5\u5fd7

\u4ece Angular13 \u5f00\u59cb\u8fdc\u7a0b\u8bf7\u6c42\u7684\u8c03\u8bd5\u65e5\u5fd7\u5c06\u4e0d\u518d\u7ec8\u7aef\u4e2d\u663e\u793a\uff0c\u82e5\u6709\u663e\u793a\u65e5\u671f\u9700\u6c42\uff0c\u53ef\u81ea\u884c\u53c2\u8003 How to fix logging for proxy in angular',meta:{order:40,title:"\u548c\u670d\u52a1\u7aef\u8fdb\u884c\u4ea4\u4e92",type:"Dev"},toc:[{id:"\u524d\u7aef\u8bf7\u6c42\u6d41\u7a0b",title:"\u524d\u7aef\u8bf7\u6c42\u6d41\u7a0b",h:2,children:[{id:"\u62e6\u622a\u5668",title:"\u62e6\u622a\u5668",h:3}]},{id:"\u5f00\u53d1\u73af\u5883",title:"\u5f00\u53d1\u73af\u5883",h:2},{id:"Mock",title:"Mock",h:2},{id:"\u8de8\u57df",title:"\u8de8\u57df",h:2},{id:"\u5e38\u89c1\u95ee\u9898",title:"\u5e38\u89c1\u95ee\u9898",h:2}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-server"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"ssr",redirectTo:"ssr/zh",pathMatch:"full"},{path:"ssr/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"zh-CN":"docs/ssr.md"},content:{"zh-CN":{content:'

\u672c\u6587\u63cf\u8ff0\u7684\u662f NG-ALAIN \u5982\u4f55\u652f\u6301\u670d\u52a1\u7aef\u6e32\u67d3\uff08SSR\uff09\u3002

NG-ALAIN \u4e0d\u63a8\u8350\u5728\u4e2d\u540e\u53f0\u4f7f\u7528\u670d\u52a1\u7aef\u6e32\u67d3\uff08SSR\uff09\uff0c\u8fd9\u662f\u56e0\u4e3a\u4e2d\u540e\u53f0\u672c\u8eab\u5bf9\u4e8eSSR\u6240\u5e26\u6765\u7684\u597d\u5904\u8fdc\u5927\u4e8e\u5f00\u53d1\u5e26\u6765\u7684\u9ebb\u70e6\uff0c\u4f46\u4e0d\u7ba1\u600e\u4e48\u6837\u5728\u8bb8\u591a\u4eba\u7684\u8981\u6c42\u4e0b\uff0c\u4ece 9.5 \u7248\u672c\u5f00\u59cb\uff0c\u5df2\u7ecf\u5bf9\u6240\u6709 @delon/* \u7c7b\u5e93\u652f\u6301\u670d\u52a1\u7aef\u6e32\u67d3\u3002

\u5f00\u59cb\u4e4b\u524d

\u5728\u5f00\u59cb\u4e4b\u524d\u8bf7\u5148\u9605\u8bfb\u4ee5\u4e0b\u6587\u7ae0\uff0c\u5b83\u4eec\u80fd\u591f\u66f4\u52a0\u5feb\u901f\u8ba9\u4f60\u4e86\u89e3 Angular \u670d\u52a1\u7aef\u6e32\u67d3\u662f\u5982\u4f55\u5de5\u4f5c\u7684\uff1a

\u6559\u7a0b

\u6dfb\u52a0 @nguniversal/express-engine

\u5728\u4e00\u4e2a\u5b8c\u6574\u7684 NG-ALAIN \u9879\u76ee\u4e0b\uff0c\u6267\u884c\u4ee5\u4e0b\u547d\u4ee4\uff1a

ng add @nguniversal/express-engine

\u6700\u540e\u8fd0\u884c\uff1a

npm run dev:ssr

\u6b64\u65f6\u4f1a\u4ee5 SSR \u7684\u5f62\u5f0f\u8fd0\u884c NG-ALAIN\u3002

\u4f46\u5982\u679c\u91c7\u7528\u9ed8\u8ba4 LocalStorageStore \u6765\u5b58\u50a8 Token \u7684\u60c5\u51b5\u4e0b\uff0c\u4f1a\u63d0\u793a\u627e\u4e0d\u5230 localStorage \u7684\u9519\u8bef\uff0c\u8fd9\u662f\u56e0\u4e3a\u670d\u52a1\u7aef\u5e76\u6ca1\u6709\u8fd9\u4e9b\uff0c\u5b83\u4eec\u53ef\u80fd\u8fd8\u5305\u542b window\u3001document\u3001sessionStorage \u7b49\u3002

\u56e0\u6b64\uff0c\u8981\u60f3\u5728\u4e2d\u540e\u53f0\u5f88\u597d\u7684\u652f\u6301 SSR\uff0c\u9700\u8981\u5206\u6790\u6240\u4f9d\u8d56\u7684\u7b2c\u4e09\u65b9\u7c7b\u5e93\u662f\u5426\u652f\u6301 SSR\uff0c\u5982\u679c\u6ca1\u6709\u5fc5\u987b\u624b\u52a8\u5904\u7406\u5728\u670d\u52a1\u7aef\u4e0b\u4e0d\u6e32\u67d3\u8fd9\u4e9b\u7ec4\u4ef6\u3002

\u4e22\u5931Token

\u670d\u52a1\u7aef\u662f\u65e0\u72b6\u6001\u7684\uff0c\u56e0\u6b64\u5224\u65ad\u8bf7\u6c42\u662f\u5426\u6709\u6548\u6388\u6743\uff0c\u76ee\u524d\u901a\u7528\u7684\u505a\u6cd5\u662f\u5c06 Token \u5b58\u50a8\u5728 Cookie \u4e0b\uff0c\u5728\u670d\u52a1\u7aef\u63a5\u6536\u8bf7\u6c42\u65f6\u518d\u6839\u636e Cookies \u6765\u83b7\u53d6 Token \u4fe1\u606f\u3002\x1c

\u867d\u7136 NG-ALAIN \u63d0\u4f9b CookieStorageStore \u4f46\u5b83\u5e76\u4e0d\u652f\u6301\u670d\u52a1\u7aef SSR \u8bbf\u95ee Cookie\uff0c\u56e0\u6b64\u9700\u8981\u624b\u52a8\u6784\u5efa\u9488\u5bf9 SSR \u7684 Token \u6301\u4e45\u5316\u5b58\u50a8\u3002

\u63a8\u8350\u4f7f\u7528 @ngx-utils/cookies \u6765\u5904\u7406 Cookies\uff0c\u5b83\u540c\u65f6\u652f\u6301\u5ba2\u6237\u7aef\u4e0e\u670d\u52a1\u7aef\u3002

\u6ce8\u610f\uff1a \u53d7\u9650\u4e8e #20 \u7684\u539f\u56e0\uff0c\u7531\u4e8e\u4e00\u76f4\u672a\u5904\u7406\uff0c\u6709\u4eba\u4e13\u95e8\u89e3\u51b3\u4e86\u8fd9\u4e2a\u95ee\u9898\u5e76\u53d1\u5e03\u4e00\u4e2a\u65b0\u7c7b\u5e93 ngx-utils-cookies-port\uff0c\u6682\u65f6\u53ea\u80fd\u4f7f\u7528\u5b83\u6765\u4ee3\u66ff @ngx-utils/cookies\uff0c\u7528\u6cd5\u4e00\u6a21\u4e00\u6837\u53ea\u662f\u6a21\u5757\u540d\u6362\u4e00\u4e0b\uff0c\u5728\u4fee\u590d\u4e4b\u540e\u518d\u6362\u56de\u6765\u3002

\u8981\u521b\u5efa\u4e00\u4e2a\u7b26\u5408 @delon/auth \u63a5\u53e3\u6301\u4e45\u5316\u5b58\u50a8\u7c7b\uff0c\u53ea\u9700\u8981\u7ee7\u627f IStore \u5373\u53ef\uff0c\u4f8b\u5982\uff1a

import { Injectable } from \'@angular/core\';\nimport { IStore, ITokenModel } from \'@delon/auth\';\nimport { CookiesService } from \'ngx-utils-cookies-port\';\n\n@Injectable()\nexport class AuthStorageStore implements IStore {\n  constructor(private cookies: CookiesService) {}\n\n  get(key: string): ITokenModel {\n    return JSON.parse(this.cookies.get(key) || \'{}\') || {};\n  }\n\n  set(key: string, value: ITokenModel | null): boolean {\n    this.cookies.put(key, JSON.stringify(value));\n    return true;\n  }\n\n  remove(key: string) {\n    this.cookies.remove(key);\n  }\n}

\u6700\u540e\uff0c\u5728 global-config.module.ts \u5185\u91cd\u65b0\u6ce8\u518c\u5b83\uff1a

 const alainProvides = [\n   { provide: ALAIN_CONFIG, useValue: alainConfig },\n+  { provide: DA_STORE_TOKEN, useClass: AuthStorageStore },\n ];

\u6ce8\u610f\uff1a\u8fd9\u91cc\u4f9d\u7136\u9700\u8981\u6ce8\u518c\u65b0\u589e\u7684\u6a21\u5757\uff0c\u65b9\u6cd5\u8bf7\u53c2\u8003 @ngx-utils/cookies \u8bf4\u660e\u3002

@ngx-utils/cookies \u5185\u90e8\u4f1a\u6839\u636e REQUEST \u6765\u83b7\u53d6\u5f53\u524d\u7684\u8bf7\u6c42\u5934\u4fe1\u606f\uff0c\u56e0\u6b64\uff0c\u6211\u4eec\u8fd8\u9700\u8981\u4fee\u6539 server.ts\uff1a

  // All regular routes use the Universal engine\n  server.get(\'*\', (req, res) => {\n    res.render(indexHtml, {\n      req,\n+     res,\n      providers: [\n        { provide: APP_BASE_HREF, useValue: req.baseUrl },\n+       { provide: \'REQUEST\', useValue: req },\n+       { provide: \'RESPONSE\', useValue: res },\n      ],\n    });\n  });',meta:{order:110,title:"\u670d\u52a1\u7aef\u6e32\u67d3\uff08SSR\uff09",type:"Dev"},toc:[{id:"\u5f00\u59cb\u4e4b\u524d",title:"\u5f00\u59cb\u4e4b\u524d",h:2},{id:"\u6559\u7a0b",title:"\u6559\u7a0b",h:2,children:[{id:"\u6dfb\u52a0@nguniversal/express-engine",title:"\u6dfb\u52a0 @nguniversal/express-engine",h:3},{id:"\u4e22\u5931Token",title:"\u4e22\u5931Token",h:3}]}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-ssr"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"style-guide",redirectTo:"style-guide/zh",pathMatch:"full"},{path:"style-guide/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/style-guide.en-US.md","zh-CN":"docs/style-guide.zh-CN.md"},content:{"en-US":{content:'

The project built by Angular CLI is already very good in terms of its directory structure. Official website also has an Angular Style Guide (Chinese version) Style guide. It is recommended to read it several times. In addition, NG-ALAIN also has a part of the coding style, the following instructions may be useful for reading the code.

Consistent code style

NG-ALAIN uses ESLint to guarantee code quality and Prettier to optimize the code style.

It is recommended to install several plugins for more friendly development in vscode:

Of course, NG-ALAIN has prepared a complete set of extension packs for everyone, just install NG-ALAIN Extension Pack.

Git - pre commit Hook

The ng lint command provided by Angular, can be very effective in helping us find bugs and readability earlier. Isn\'t it cool if we can guarantee that the lint of the file in staged is automatically done before each commit in the team development process?

NG-ALAIN is configured to do lint each time you commit to staged and you can\'t commit if you find an error.

By default, the *.ts, *.less commit process forces the formatting of the code. You can change the rules by modifying the husky node of package.json.

If hint: The\'.husky/pre-commit\' hook was ignored because it\'s not set as executable. is generated when executing git commit -m "commit", it may be due to permission issues. Try to execute in the project root directory:

chmod ug+x .husky/*\nchmod ug+x .git/hooks/*

Style guide

API documentation

Applications are always inevitable for the development of business components. We can not guarantee that you can remember these after a certain time. So, make sure to include the README.md document in each business component and describe the API, DEMO and other information.

For example:

## When do you use it?\n\nInstruction\n\n## DEMO\n\nInstruction\n\n## API\n\nParameter | Description | Type | Default\n----|------|-----|------\nsrc | The map\'s address  | `string` | -

Module registration

Please parameter module registration guidelines.

Auxiliary item

NG-ALAIN is configured with some options for the CLI to better code.

CLI

Vscode is the best choice for writing Angular. You can type: ng g c list in any directory of the project to generate the corresponding files for the component.

NG-ALAIN is configured by default without generating style files & unit tests. So you will see that only .ts, .html are generated. This is because NG-ALAIN provides a very rich style API, and custom styles are not just needed on most pages. At the same time, unit tests.

Of course, you can easily adjust the default configuration in angular.json.

VSCode snippets

VSCode is the best choice for writing Angular. Naturally NG-ALAIN also created the corresponding snippets extension: ng-zorro-vscode and ng-alain-vscode

',meta:{order:90,title:{"en-US":"Style Guide","zh-CN":"\u7f16\u7801\u89c4\u8303\u5efa\u8bae"},type:"Advance"},toc:[{id:"Consistentcodestyle",title:"Consistent code style",h:2},{id:"Git-precommitHook",title:"Git - pre commit Hook",h:2},{id:"Styleguide",title:"Style guide",h:2,children:[{id:"APIdocumentation",title:"API documentation",h:3},{id:"Moduleregistration",title:"Module registration",h:3}]},{id:"Auxiliaryitem",title:"Auxiliary item",h:2,children:[{id:"CLI",title:"CLI",h:3},{id:"VSCodesnippets",title:"VSCode snippets",h:3}]}]},"zh-CN":{content:'

Angular CLI \u6784\u5efa\u7684\u9879\u76ee\u5c31\u5176\u76ee\u5f55\u7ed3\u6784\u800c\u8a00\u5df2\u7ecf\u975e\u5e38\u68d2\u4e86\uff0c\u540c\u65f6\u5b98\u7f51\u4e5f\u6709\u4e00\u4efd Angular Style Guide\uff08\u4e2d\u6587\u7248\uff09\u98ce\u683c\u6307\u5357\uff0c\u5efa\u8bae\u597d\u597d\u9605\u8bfb\u51e0\u904d\u3002\u9664\u6b64\u4e4b\u5916\uff0cNG-ALAIN \u4e5f\u6709\u4e00\u90e8\u5206\u7f16\u7801\u98ce\u683c\uff0c\u5982\u4e0b\u8bf4\u660e\u53ef\u80fd\u5bf9\u4e8e\u4f60\u9605\u8bfb\u4ee3\u7801\u65f6\u6709\u7528\u3002

\u4e00\u81f4\u7684\u4ee3\u7801\u98ce\u683c

NG-ALAIN \u4f7f\u7528 ESLint \u6765\u4fdd\u8bc1\u4ee3\u7801\u8d28\u91cf \u4e0e Prettier \u6765\u4f18\u5316\u4ee3\u7801\u98ce\u683c\u3002

\u63a8\u8350\u5b89\u88c5\u51e0\u4e2a\u63d2\u4ef6\u5728 vscode \u4e2d\u66f4\u53cb\u597d\u7684\u5f00\u53d1\uff1a

\u5f53\u7136\uff0cNG-ALAIN \u4e3a\u5927\u5bb6\u51c6\u5907\u4e86\u4e00\u5957\u5b8c\u6574\u7684\u6269\u5c55\u5305\uff0c\u53ea\u9700\u8981\u5b89\u88c5 NG-ALAIN Extension Pack \u5373\u53ef\u3002

Git - pre commit \u52fe\u5b50

Angular \u63d0\u4f9b\u7684 ng lint \u547d\u4ee4\u53ef\u4ee5\u975e\u5e38\u6709\u6548\u7684\u5e2e\u52a9\u6211\u4eec\u66f4\u65e9\u53d1\u73b0bug\u3001\u66f4\u9ad8\u7684\u53ef\u8bfb\u6027\uff1b\u5982\u679c\u6211\u4eec\u80fd\u591f\u4fdd\u8bc1\u56e2\u961f\u5f00\u53d1\u8fc7\u7a0b\u4e2d\u6bcf\u4e00\u6b21 commit \u524d\u90fd\u81ea\u52a8\u505a\u4e00\u6b21 staged \u4e2d\u6587\u4ef6\u7684 lint \u7684\u8bdd\uff0c\u90a3\u4e0d\u662f\u975e\u5e38\u9177\u5417\uff1f

NG-ALAIN \u914d\u7f6e\u4e86\u6bcf\u6b21\u5bf9 staged \u8fdb\u884c commit \u65f6\u4f1a\u9884\u5148\u505a lint\uff0c\u82e5\u53d1\u73b0\u9519\u8bef\u5219\u65e0\u6cd5\u63d0\u4ea4\u3002

\u9ed8\u8ba4\u5f00\u542f\u4e86 *.ts\u3001*.less \u7684\u63d0\u4ea4\u8fc7\u7a0b\u4e2d\u5f3a\u5236\u5bf9\u4ee3\u7801\u8fdb\u884c\u683c\u5f0f\u5316\uff0c\u4f60\u53ef\u4ee5\u901a\u8fc7\u4fee\u6539 package.json \u7684 husky \u8282\u70b9\u6765\u6539\u53d8\u4e9b\u89c4\u5219\u3002

\u82e5\u5728\u6267\u884c git commit -m "commit" \u65f6\u82e5\u4ea7\u751f hint: The \'.husky/pre-commit\' hook was ignored because it\'s not set as executable. \u65f6\uff0c\u53ef\u80fd\u662f\u56e0\u4e3a\u6743\u9650\u95ee\u9898\uff0c\u53ef\u4ee5\u5c1d\u8bd5\u5728\u9879\u76ee\u6839\u76ee\u5f55\u4e0b\u6267\u884c\uff1a

chmod ug+x .husky/*\nchmod ug+x .git/hooks/*

\u98ce\u683c\u6307\u5357

API\u6587\u6863

\u5e94\u7528\u603b\u662f\u514d\u4e0d\u4e86\u4e1a\u52a1\u7ec4\u4ef6\u7684\u5f00\u53d1\uff0c\u6211\u4eec\u65e0\u6cd5\u4fdd\u8bc1\u82e5\u5e72\u65f6\u95f4\u4e4b\u540e\u4f60\u8fd8\u80fd\u8bb0\u5f97\u8fd9\u4e9b\uff0c\u56e0\u6b64\u52a1\u5fc5\u5728\u6bcf\u4e00\u4e2a\u4e1a\u52a1\u7ec4\u4ef6\u9644\u5e26 README.md \u6587\u6863\uff0c\u5e76\u63cf\u8ff0API\u3001DEMO\u7b49\u4fe1\u606f\uff0c\u4f8b\u5982\uff1a

## \u4f55\u65f6\u4f7f\u7528\uff1f\n\n\u7565\n\n## DEMO\n\n\u7565\n\n## API\n\n\u6210\u5458 | \u8bf4\u660e | \u7c7b\u578b | \u9ed8\u8ba4\u503c\n----|------|-----|------\nsrc | \u56fe\u7247\u5730\u5740  | `string` | -

\u6a21\u5757\u6ce8\u518c

\u8bf7\u53c2\u6570\u6a21\u5757\u6ce8\u518c\u6307\u5bfc\u539f\u5219\u3002

\u8f85\u52a9\u9879

ng-alain \u914d\u7f6e\u4e86\u4e00\u4e9b\u9488\u5bf9 CLI \u9009\u9879\uff0c\u4ee5\u4fbf\u66f4\u597d\u8fdb\u884c\u7f16\u7801\u5de5\u4f5c\u3002

CLI

vscode \u662f\u7f16\u5199 Angular \u6700\u4f73\u7684\u9009\u62e9\uff0c\u4f60\u53ef\u4ee5\u5728\u9879\u76ee\u7684\u4efb\u4f55\u76ee\u5f55\u91cc\u8f93\u5165\uff1ang g c list \u751f\u6210\u7ec4\u4ef6\u7684\u76f8\u5e94\u7684\u6587\u4ef6\u3002

ng-alain \u9ed8\u8ba4\u914d\u7f6e\u4e86\u4e0d\u751f\u6210\u6837\u5f0f\u6587\u4ef6&\u5355\u5143\u6d4b\u8bd5\uff0c\u56e0\u6b64\uff0c\u4f60\u4f1a\u770b\u5230\u751f\u6210\u7684\u53ea\u6709 .ts\u3001.html\u3002\u8fd9\u662f\u56e0\u4e3a ng-alain \u63d0\u4f9b\u4e86\u975e\u5e38\u4e30\u5bcc\u7684\u6837\u5f0fAPI\uff0c\u5728\u5927\u591a\u6570\u9875\u9762\u4e2d\u81ea\u5b9a\u4e49\u6837\u5f0f\u5e76\u4e0d\u662f\u521a\u9700\u7684\uff1b\u540c\u65f6\uff0c\u5355\u5143\u6d4b\u8bd5\u4e5f\u662f\u5982\u6b64\u3002

\u5f53\u7136\uff0c\u4f60\u53ef\u4ee5\u5f88\u5bb9\u6613\u5728 angular.json \u4e2d\u8c03\u6574\u9ed8\u8ba4\u914d\u7f6e\u3002

vscode snippets

vscode \u662f\u7f16\u5199 Angular \u6700\u4f73\u7684\u9009\u62e9\uff0c\u81ea\u7136 NG-ALAIN \u4e5f\u5236\u4f5c\u4e86\u76f8\u5e94 snippets \u6269\u5c55\u63d2\u4ef6\uff1ang-zorro-vscode \u548c ng-alain-vscode

',meta:{order:90,title:{"en-US":"Style Guide","zh-CN":"\u7f16\u7801\u89c4\u8303\u5efa\u8bae"},type:"Advance"},toc:[{id:"\u4e00\u81f4\u7684\u4ee3\u7801\u98ce\u683c",title:"\u4e00\u81f4\u7684\u4ee3\u7801\u98ce\u683c",h:2,children:[{id:"Git-precommit\u52fe\u5b50",title:"Git - pre commit \u52fe\u5b50",h:3}]},{id:"\u98ce\u683c\u6307\u5357",title:"\u98ce\u683c\u6307\u5357",h:2,children:[{id:"API\u6587\u6863",title:"API\u6587\u6863",h:3},{id:"\u6a21\u5757\u6ce8\u518c",title:"\u6a21\u5757\u6ce8\u518c",h:3}]},{id:"\u8f85\u52a9\u9879",title:"\u8f85\u52a9\u9879",h:2,children:[{id:"CLI",title:"CLI",h:3},{id:"vscodesnippets",title:"vscode snippets",h:3}]}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-style-guide"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"theme",redirectTo:"theme/zh",pathMatch:"full"},{path:"theme/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"zh-CN":"docs/theme.md"},content:{"zh-CN":{content:'
',meta:{order:10,title:{"en-US":"Theme","zh-CN":"\u4e3b\u9898\u7cfb\u7edf"},type:"Advance",url:"/theme/getting-started"},toc:[]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-theme"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"upgrade-v16",redirectTo:"upgrade-v16/zh",pathMatch:"full"},{path:"upgrade-v16/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/upgrade-v16.en-US.md","zh-CN":"docs/upgrade-v16.zh-CN.md"},content:{"en-US":{content:'

This guide applies to the current version ng-alain >= 15;\nIf you encounter problems during the upgrade process, feel free to comment here.\nIf you find any errors in this guide, please point out\nOr you have encountered a new problem and solved it, welcome to comment here.

Before upgrade

  1. Make sure Node.js >= 16.10.0.

  2. Create a new branch, or use other methods to back up the current project.

  3. Delete the package-lock.json or yarn.lock file.

1.Upgrade dependencies

  • Upgrade Angular to 15.x version, Run ng update @angular/core@16 @angular/cli@16 @angular-eslint/schematics@16 ng-zorro-antd@16 ng-alain@16.

  • Run ng update @angular/cdk@16, if you have used @angular/cdk.

  • If any warning messages appear in the console, follow the prompts to modify the corresponding code.

NG-ALAIN scaffolding upgrade all change files, please refer to: #2394.

',meta:{order:1e3,type:"Basic",title:"Upgrade to version 16.0",hot:!0},toc:[{id:"Beforeupgrade",title:"Before upgrade",h:2,children:[{id:"1.Upgradedependencies",title:"1.Upgrade dependencies",h:3}]}]},"zh-CN":{content:'

\u672c\u6307\u5357\u9002\u7528\u4e8e\u5f53\u524d\u7248\u672c ng-alain >= 15 ;\n\u5982\u679c\u5728\u5347\u7ea7\u8fc7\u7a0b\u4e2d\u9047\u5230\u95ee\u9898\uff0c\u6b22\u8fce\u63d0\u51fa\u3002\u63d0\u95ee\u524d\u8bf7\u9605\u8bfb \u5982\u4f55\u5411\u5f00\u6e90\u793e\u533a\u63d0\u95ee\u9898\n\u5982\u679c\u53d1\u73b0\u672c\u6307\u5357\u5b58\u5728\u9057\u6f0f/\u9519\u8bef\uff0c\u8bf7\u6307\u51fa!\n\u6216\u8005\u4f60\u9047\u5230\u4e86\u65b0\u7684\u95ee\u9898\u5e76\u89e3\u51b3\u4e86\uff0c\u6b22\u8fce\u8865\u5145!

\u5f00\u59cb\u4e4b\u524d

  1. \u9996\u5148\u786e\u4fdd\u4f60 Node.js >= 16.10.0

  2. \u521b\u5efa\u65b0\u7684\u5206\u652f\uff0c\u6216\u8005\u4f7f\u7528\u5176\u4ed6\u65b9\u5f0f\u5907\u4efd\u5f53\u524d\u9879\u76ee

  3. \u5220\u9664\u9879\u76ee\u4e0b package-lock.json \u6216 yarn.lock \u6587\u4ef6

\u5347\u7ea7\u6b65\u9aa4

\u5347\u7ea7\u76f8\u5173\u4f9d\u8d56

  • \u5c06\u9879\u76ee\u5347\u7ea7\u5230 Angular 15 \u8fd0\u884c ng update @angular/core@16 @angular/cli@16 @angular-eslint/schematics@16 ng-zorro-antd@16 ng-alain@16\u3002

  • \u5982\u679c\u4f60\u6709\u5355\u72ec\u4f7f\u7528 @angular/cdk \u8bf7\u6267\u884c ng update @angular/cdk@16

  • \u5982\u679c\u63a7\u5236\u53f0\u51fa\u73b0\u8b66\u544a\u6d88\u606f\u8bf7\u6309\u63d0\u793a\u4fee\u6539\u5bf9\u5e94\u4ee3\u7801

NG-ALAIN\u811a\u624b\u67b6\u5347\u7ea7\u5168\u90e8\u53d8\u66f4\u6587\u4ef6\uff0c\u8bf7\u53c2\u8003\uff1a#2394\u3002

',meta:{order:1e3,type:"Basic",title:"\u5347\u7ea7\u5230 16.0 \u7248\u672c",hot:!0},toc:[{id:"\u5f00\u59cb\u4e4b\u524d",title:"\u5f00\u59cb\u4e4b\u524d",h:2},{id:"\u5347\u7ea7\u6b65\u9aa4",title:"\u5347\u7ea7\u6b65\u9aa4",h:2,children:[{id:"\u5347\u7ea7\u76f8\u5173\u4f9d\u8d56",title:"\u5347\u7ea7\u76f8\u5173\u4f9d\u8d56",h:3}]}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-upgrade-v16"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"upgrade",redirectTo:"upgrade/zh",pathMatch:"full"},{path:"upgrade/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/upgrade.en-US.md","zh-CN":"docs/upgrade.zh-CN.md"},content:{"en-US":{content:'

In Architecture we have described the overall composition of the NG-ALAIN scaffolding. We spent a lot of time developing some infrastructure and publishing these to the @delon/* series to Npm. , making the upgrade very easy.

Publishing rule

Similar to @angular/*, the version number of the @delon/* class library will be a version number (NPM version) at each iteration, regardless of whether a class library has been modified.

At the same time, please follow the following publishing rules and update version number:

  • @delon as the infrastructure library, which will be slightly higher in the update frequency, usually updated at least once a week.

  • With BREAKING CHANGES at least one minor version number

  • Update Log

How to upgrade?

Method 1: Command (Recommend)

Unless it\'s a major version update (Similar to upgrading from 12.0.0 to 13.0.0), you only need to run the following command:

ng update ng-alain

Method 2: Modify the version number

Modify package.json All class libraries starting with @delon/ are the latest version number:

"@delon/theme": "^12.0.0"

Replace ^12.0.0 with the latest version number.

Finally, reinstall the dependencies.

yarn

Please read Frequently Asked Questions

Method 3: Update all class libraries

Scaffolding in package.json most libraries use loose version numbers, for example:

^0.1.0 with the ^ symbol indicates that the latest minor version number is used, so 0.7.0 is also the range.

To use this update method, you need to follow these steps:

  • Remove the node_modules folder and the yarn.lock file

  • Execute yarn

Note: This method will install all class libraries in a newer version, but it may cause unnecessary troubles due to damaging changes of third-party t

',meta:{order:80,title:{"en-US":"Upgrade scaffold","zh-CN":"\u5347\u7ea7\u811a\u624b\u67b6"},type:"Dev"},toc:[{id:"Publishingrule",title:"Publishing rule",h:2},{id:"Howtoupgrade",title:"How to upgrade?",h:2,children:[{id:"Method1:CommandRecommend",title:"Method 1: Command (Recommend)",h:3},{id:"Method2:Modifytheversionnumber",title:"Method 2: Modify the version number",h:3},{id:"Method3:Updateallclasslibraries",title:"Method 3: Update all class libraries",h:3}]}]},"zh-CN":{content:'

\u5728 \u4f53\u7cfb\u7ed3\u6784 \u4e2d\u6211\u4eec\u5df2\u7ecf\u63cf\u8ff0\u4e86 NG-ALAIN \u811a\u624b\u67b6\u7684\u6574\u4f53\u6784\u6210\uff0c\u6211\u4eec\u82b1\u4e86\u5927\u91cf\u65f6\u95f4\u53bb\u5f00\u53d1\u4e00\u4e9b\u57fa\u7840\u5efa\u8bbe\uff0c\u5e76\u628a\u8fd9\u4e9b\u4ee5 @delon/* \u7cfb\u5217\u53d1\u5e03\u81f3 Npm \u5f53\u4e2d\uff0c\u4f7f\u5f97\u5347\u7ea7\u53d8\u5f97\u975e\u5e38\u8f7b\u677e\u3002

\u53d1\u5e03\u89c4\u5219

\u540c @angular/* \u7c7b\u4f3c\uff0c@delon/* \u7c7b\u5e93\u7684\u7248\u672c\u53f7\u5728\u6bcf\u4e00\u4e2a\u8fed\u4ee3\u65f6\uff0c\u4e0d\u7ba1\u67d0\u7c7b\u5e93\u662f\u5426\u6709\u4fee\u6539\uff0c\u90fd\u4f1a\u7edf\u4e00\u4e2a\u7248\u672c\u53f7 (NPM version) \u3002

\u540c\u65f6\u6309\u4ee5\u4e0b\u53d1\u5e03\u89c4\u5219\u53ca\u66f4\u65b0\u7248\u672c\u53f7\u8bf4\u660e\uff1a

  • @delon \u4f5c\u4e3a\u57fa\u7840\u5efa\u8bbe\u7c7b\u5e93\uff0c\u5728\u66f4\u65b0\u9891\u7387\u4e0a\u4f1a\u7565\u9ad8\uff0c\u4e00\u822c\u4e00\u5468\u81f3\u5c11\u66f4\u65b0\u4e00\u6b21

  • \u5e26\u6709 BREAKING CHANGES \u81f3\u5c11\u63d0\u5347\u4e00\u4e2a\u6b21\u7248\u672c\u53f7

  • \u66f4\u65b0\u65e5\u5fd7

\u5982\u4f55\u5347\u7ea7\uff1f

\u65b9\u5f0f\u4e00\uff1a\u547d\u4ee4\u884c\uff08\u63a8\u8350\uff09

\u9664\u975e\u662f\u5927\u7248\u672c\u66f4\u65b0\uff08\u5373\u7c7b\u4f3c\u4ece 12.0.0 \u5347\u81f3 13.0.0\uff09\uff0c\u5426\u5219\u53ea\u9700\u8981\u8fd0\u884c\u4ee5\u4e0b\u547d\u4ee4\u5373\u53ef\uff1a

ng update ng-alain

\u65b9\u5f0f\u4e8c\uff1a\u624b\u52a8\u4fee\u6539\u7248\u672c\u53f7

\u4fee\u6539 package.json \u6240\u6709 @delon/ \u5f00\u5934\u7684\u7c7b\u5e93\u7248\u672c\u53f7\u4e3a\u6700\u65b0\u7248\u672c\u53f7\uff1a

"@delon/theme": "^12.0.0"

\u5c06 ^12.0.0 \u66ff\u6362\u6210\u6700\u65b0\u7248\u672c\u53f7\u3002

\u6700\u540e\uff0c\u91cd\u65b0\u5b89\u88c5\u4f9d\u8d56\u5305\u3002

yarn

\u9047\u5230\u95ee\u9898\u8bf7\u9605\u8bfb \u5e38\u89c1\u95ee\u9898

\u65b9\u5f0f\u4e09\uff1a\u66f4\u65b0\u6240\u6709\u7c7b\u5e93

\u811a\u624b\u67b6\u5728 package.json \u91cc\u591a\u6570\u7c7b\u5e93\u90fd\u662f\u4f7f\u7528\u5bbd\u677e\u7684\u7248\u672c\u53f7\uff0c\u4f8b\u5982\uff1a

^0.1.0 \u5e26\u6709 ^ \u7b26\u53f7\u8868\u793a\u4f7f\u7528\u6700\u65b0\u6b21\u7248\u672c\u53f7\uff0c\u56e0\u6b64\uff0c0.7.0 \u4e5f\u662f\u8be5\u8303\u56f4\u4e4b\u5217\u3002

\u8981\u60f3\u91c7\u7528\u8fd9\u79cd\u66f4\u65b0\u65b9\u5f0f\u9700\u8981\u6309\u4ee5\u4e0b\u6b65\u9aa4\u8fdb\u884c\uff1a

  • \u79fb\u9664 node_modules \u6587\u4ef6\u5939\u53ca yarn.lock \u6587\u4ef6

  • \u6267\u884c yarn

\u6ce8\u610f\uff1a \u8fd9\u79cd\u65b9\u5f0f\u4f1a\u5bf9\u6240\u6709\u7c7b\u5e93\u6309\u6bd4\u8f83\u65b0\u7684\u7248\u672c\u5b89\u88c5\uff0c\u4f46\u6709\u53ef\u80fd\u4f1a\u5bfc\u81f4\u7531\u4e8e\u7b2c\u4e09\u65b9\u7c7b\u578b\u7684\u7834\u574f\u6027\u53d8\u66f4\u4f1a\u5bfc\u81f4\u4e00\u4e9b\u4e0d\u5fc5

',meta:{order:80,title:{"en-US":"Upgrade scaffold","zh-CN":"\u5347\u7ea7\u811a\u624b\u67b6"},type:"Dev"},toc:[{id:"\u53d1\u5e03\u89c4\u5219",title:"\u53d1\u5e03\u89c4\u5219",h:2},{id:"\u5982\u4f55\u5347\u7ea7\uff1f",title:"\u5982\u4f55\u5347\u7ea7\uff1f",h:2,children:[{id:"\u65b9\u5f0f\u4e00\uff1a\u547d\u4ee4\u884c\uff08\u63a8\u8350\uff09",title:"\u65b9\u5f0f\u4e00\uff1a\u547d\u4ee4\u884c\uff08\u63a8\u8350\uff09",h:3},{id:"\u65b9\u5f0f\u4e8c\uff1a\u624b\u52a8\u4fee\u6539\u7248\u672c\u53f7",title:"\u65b9\u5f0f\u4e8c\uff1a\u624b\u52a8\u4fee\u6539\u7248\u672c\u53f7",h:3},{id:"\u65b9\u5f0f\u4e09\uff1a\u66f4\u65b0\u6240\u6709\u7c7b\u5e93",title:"\u65b9\u5f0f\u4e09\uff1a\u66f4\u65b0\u6240\u6709\u7c7b\u5e93",h:3}]}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-upgrade"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()}]}];let F=(()=>{class e{static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275mod=a.oAB({type:e});static#a=this.\u0275inj=a.cJS({imports:[G.m,R.Bz.forChild(D)]})}return e})()}}]); \ No newline at end of file +"use strict";(self.webpackChunksite=self.webpackChunksite||[]).push([[311],{30311:(P,l,s)=>{s.r(l),s.d(l,{DocsModule:()=>F});var R=s(52787),G=s(89359),O=s(93285),a=s(65879),i=s(28749);const D=[{path:"",component:O.S,children:[{path:"",redirectTo:"getting-started/zh",pathMatch:"full"},{path:"acl",redirectTo:"acl/zh",pathMatch:"full"},{path:"acl/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"zh-CN":"docs/acl.md"},content:{"zh-CN":{content:'
',meta:{order:50,title:"ACL",type:"Advance",url:"/acl/getting-started"},toc:[]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-acl"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"architecture",redirectTo:"architecture/zh",pathMatch:"full"},{path:"architecture/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/architecture.en-US.md","zh-CN":"docs/architecture.zh-CN.md"},content:{"en-US":{content:'

NG-ALAIN scaffold is a front-end solution to support middleware and back-end application. It is based on Angular and ng-zorro-antd(Angular implementation of Ant Design). The scaffold includes a set of common functionalities and business component libraries. It reduces lots of infrastructure development overwhelmingly and let you focus on business logic development.

Architecture Diagram

@delon/theme

Theme library of scaffold, we publish the theme library to NPM, which extremely simplifies upgrade effort.

Theme library includes not only essential styles(CSS tool like bootstrap) required by NG-ALAIN, but also a set of common data rendering(Pipe) and service tools(page title, scroll bar, etc..), which are needed during daily development.

@delon/abc

Scaffold provides a default set of business components, which abstract commonly used block/area in console service. We will continue to maintain and iterate the components. Provide more advanced abstract components than Ant Design base components to middleware and back-end business.

@delon/chart

@delon/chart chart library is customised based on G2. Providing commonly used chart suite in business development. It can be used alone or composed together to achieve more complex and fancy display effect.

@delon/form

@delon/form follows standard of JSON Schema to build dynamic forms.

@delon/auth

User Authentication module is used for resolving steps to obtain, save and use authentication.

@delon/acl

ACL Access Control List is a very simple role based permission control. It can even reach the granularity of controlling the visibility of a button.

@delon/cache

Reduce the Http request by storing cache of the dictionary, city data, etc. into memory or persistence storage.

@delon/mock

Mock will intercept Angular HTTP request and return testing data.

@delon/util

Daily Utilities\u3002

@delon/testing

Commonly used testing suite.

CLI Schematics

CLI Tool

Directory Structure

Schematic diagram of directory structure\uff1a

\u251c\u2500\u2500 _mock                                       # Mock Data rule\n\u251c\u2500\u2500 src\n\u2502\xa0\xa0 \u251c\u2500\u2500 app\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 core                                # Core module\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 i18n\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 net\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 default.interceptor.ts      # Default HTTP interceptor\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 services\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 startup.service.ts          # Initialize project configuration\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 core.module.ts                  # Core module file\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 layout                              # Core layout\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 routes\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 **                              # Business directory\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 routes.module.ts                # Service routing module\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 routes-routing.module.ts        # Service routes registration\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 shared                              # Shared module\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 shared-delon.module.ts          # @Delon/* import of secondary shared modules\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 shared-zorro.module.ts          # NG-ZORRO import of secondary shared modules\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 shared.module.ts                # Shared module file\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 app.component.ts                    # Root component\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 app.module.ts                       # Root module\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 global-config.module.ts             # @delon & ng-zorro global config\n\u2502\xa0\xa0 \u251c\u2500\u2500 assets                                  # Local static resource\n\u2502\xa0\xa0 \u251c\u2500\u2500 environments                            # Environment variable configuration\n\u2502\xa0\xa0 \u251c\u2500\u2500 styles                                  # Style directory\n\u2514\u2500\u2500 \u2514\u2500\u2500 style.less                              # Style guide entry

The following is a description and use of each directory and file.

_mock

The Mock data rules directory, if you create a project via Command Line Tools, you can specify the --mock parameter to determine if the Mock function is required.

src/app/core/core.module.ts

The core module will only be imported once. Therefore, core service classes (eg, messages, data access, etc.) that are required for the entire ** business module should exist here.

src/app/core/i18n

Internationalization data loading and processing related classes. If you create a project via Command Line Tool, you can specify the -di parameter to determine whether internationalization support is required.

src/app/core/net

The default interceptor, where you can handle request parameters, request exceptions, business exceptions, and so on.

src/app/core/services/startup.service.ts

Useful when you need to execute some remote data (eg application information, user information, etc.) before Angular launches.

It is a simple method and returns a Promise object, unless Angular will abort the launch unless resolve(null) is explicitly executed.

src/app/layout

Layout file code, refer to the page structure section.

src/app/routes

Business module, all your business code will be here.

src/app/shared/shared.module.ts

The shared module means that some third-party modules, custom components, and custom instructions that you need to use for the entire business module should exist here. In addition, for @delon & NG-ZORRO, two shared secondary module imports, shared-delon.module.ts andshared-zorro.module.ts.

src/app/global-config.module.ts

Global configuration for @delon & NG-ZORRO.

src/environments

The application environment variable contains the following values:

  • SERVER_URL All HTTP request prefixes

  • production Whether the production environment

  • useHash Whether the route is useHash mode

    <
',meta:{order:20,title:"Architecture",type:"Basic",i18n:"need-update"},toc:[{id:"ArchitectureDiagram",title:"Architecture Diagram",h:2},{id:"DirectoryStructure",title:"Directory Structure",h:2}]},"zh-CN":{content:'

NG-ALAIN \u76ee\u6807\u662f\u63d0\u4f9b\u66f4\u591a\u901a\u7528\u6027\u4e1a\u52a1\u6a21\u5757\uff0c\u8ba9\u5f00\u53d1\u8005\u66f4\u52a0\u4e13\u6ce8\u4e8e\u4e1a\u52a1\u3002\u6240\u4ee5\u5728\u4f60\u7740\u624b\u5f00\u59cb\u5f00\u53d1\u524d\uff0c\u6709\u5fc5\u8981\u4e86\u89e3\u6574\u4e2a NG-ALAIN \u7684\u4f53\u7cfb\u7ed3\u6784\uff0c\u4ece\u6574\u4f53\u4e0a\u4e86\u89e3 NG-ALAIN \u5305\u542b\u4e86\u54ea\u4e9b\u4e1c\u897f\u53ca\u5176\u542b\u4e49\uff0c\u624d\u80fd\u66f4\u597d\u7684\u5229\u7528\u8fd9\u4e9b\u4e1a\u52a1\u7ec4\u4ef6\u5e93\u5feb\u901f\u6784\u5efa\u9879\u76ee\u3002

\u7ed3\u6784\u56fe

\u7c7b\u5e93\u6587\u6863\u63cf\u8ff0
@delon/theme\u6587\u6863\u4e3b\u9898\u7cfb\u7edf\u9664\u4e86\u5305\u542b NG-ALAIN \u57fa\u7840\u6846\u67b6\u53ca\u6240\u9700\u6837\u5f0f\uff08\u5305\u542bCSS\u5de5\u5177\u96c6\uff0c\u4e00\u5957\u7c7b\u4f3cBootstrap\uff09\u4ee5\u5916\uff0c\u8fd8\u5305\u542b\u4e00\u4e9b\u901a\u7528\u7684\u6570\u636e\u6e32\u67d3\uff08Pipe\uff09\u3001\u670d\u52a1\u5de5\u5177\u7c7b\uff08\u9875\u9762\u6807\u9898\u3001\u6eda\u52a8\u6761\u7b49\uff09\u7684\u96c6\u5408\uff0c\u8fd9\u4e9b\u662f\u65e5\u5e38\u5fc5\u4e0d\u53ef\u5c11\u7684\u4e00\u4e9b\u7ec4\u6210
@delon/abc\u6587\u6863\u811a\u624b\u67b6\u5185\u63d0\u4f9b\u4e86\u4e00\u5957\u9ed8\u8ba4\u4e1a\u52a1\u7ec4\u4ef6\uff0c\u8fd9\u4e9b\u7ec4\u4ef6\u62bd\u8c61\u4e86\u63a7\u5236\u53f0\u4e1a\u52a1\u4e2d\u7684\u4e00\u4e9b\u5e38\u89c1\u533a\u5757\u3002\u6211\u4eec\u5c06\u6301\u7eed\u7ef4\u62a4\u548c\u8fed\u4ee3\u8fd9\u4e9b\u7ec4\u4ef6\uff0c\u4e3a\u4e2d\u540e\u53f0\u4e1a\u52a1\u63d0\u4f9b\u6bd4 Ant Design \u57fa\u7840\u7ec4\u4ef6\u66f4\u9ad8\u7ea7\u522b\u7684\u62bd\u8c61
@delon/chart\u6587\u6863\u57fa\u4e8e G2 \u7684\u57fa\u7840\u4e0a\u4e8c\u6b21\u5c01\u88c5\uff0c\u63d0\u4f9b\u4e86\u4e1a\u52a1\u4e2d\u5e38\u7528\u7684\u56fe\u8868\u5957\u4ef6\uff0c\u53ef\u4ee5\u5355\u72ec\u4f7f\u7528\uff0c\u4e5f\u53ef\u4ee5\u7ec4\u5408\u8d77\u6765\u5b9e\u73b0\u590d\u6742\u7684\u5c55\u793a\u6548\u679c
@delon/form\u6587\u6863\u57fa\u4e8e JSON Schema \u6807\u51c6\u7684\u52a8\u6001\u6784\u5efa\u8868\u5355
@delon/auth\u6587\u6863\u7528\u6237\u8ba4\u8bc1\u6a21\u5757\uff0c\u7528\u4e8e\u89e3\u51b3\u5982\u4f55\u83b7\u53d6\u3001\u5b58\u53d6\u3001\u4f7f\u7528\u8fd9\u4e09\u4e2a\u6b65\u9aa4\u7684\u7528\u6237\u8ba4\u8bc1\u73af\u8282
@delon/acl\u6587\u6863\u8bbf\u95ee\u63a7\u5236\u5217\u8868\uff0c\u662f\u4e00\u79cd\u975e\u5e38\u7b80\u5355\u7684\u57fa\u4e8e\u89d2\u8272\u6743\u9650\u63a7\u5236\uff0c\u751a\u81f3\u8fbe\u5230\u63a7\u5236\u67d0\u4e2a\u6309\u94ae\u663e\u9690\u7684\u7c92\u5ea6
@delon/cache\u6587\u6863\u5c06\u5b57\u5178\u3001\u57ce\u5e02\u6570\u636e\u7b49\u7f13\u5b58\u81f3\u5185\u5b58\u6216\u6301\u4e45\u5316\u5f53\u4e2d\uff0c\u6709\u6548\u51cf\u5c11 Http \u8bf7\u6c42
@delon/mock\u6587\u6863Mock \u4f1a\u62e6\u622a Angular Http \u8bf7\u6c42\u5e76\u8fd4\u56de\u6d4b\u8bd5\u6570\u636e\uff0c\u5f53\u540e\u7aef\u672a\u5b8c\u6210\u63a5\u53e3\u65f6 Mock \u6280\u672f\u662f\u4e00\u9879\u4e0d\u4f1a\u5f71\u54cd\u524d\u7aef\u5f00\u53d1\u8fdb\u5ea6\u7684\u5de5\u5177
@delon/util\u6587\u6863\u5305\u542b\u6570\u7ec4\u3001\u5ef6\u8fdf\u3001\u5b57\u7b26\u4e32\u3001\u65e5\u671f\u3001\u6821\u9a8c\u7b49\u5e38\u89c1\u5de5\u5177\u96c6
@delon/testing-\u5e38\u7528\u6d4b\u8bd5\u5957\u4ef6
CLI Schematics\u6587\u6863\u5feb\u901f\u751f\u6210\u7edf\u4e00\u7684\u6a21\u677f\u3001\u53ef\u63d2\u62d4\u7684\u63d2\u4ef6\u7b49

\u76ee\u5f55\u7ed3\u6784

\u5f53\u4f7f\u7528 ng add ng-alain \u751f\u6210\u540e\u7684 NG-ALAIN \u811a\u624b\u67b6\uff0c\u5b83\u7684\u57fa\u672c\u76ee\u5f55\u7ed3\u6784\u6982\u7565\u56fe\u5982\u4e0b\uff1a

\u251c\u2500\u2500 _mock                                       # Mock \u6570\u636e\u89c4\u5219\u76ee\u5f55\n\u251c\u2500\u2500 angular.json                                # Angular \u9879\u76ee\u914d\u7f6e\u6587\u4ef6\n\u251c\u2500\u2500 src\n\u2502\xa0\xa0 \u251c\u2500\u2500 app\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 core                                # \u6838\u5fc3\u6a21\u5757\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 i18n\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 net\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 default.interceptor.ts      # \u9ed8\u8ba4HTTP\u62e6\u622a\u5668\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 services\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 startup.service.ts          # \u521d\u59cb\u5316\u9879\u76ee\u914d\u7f6e\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 core.module.ts                  # \u6838\u5fc3\u6a21\u5757\u6587\u4ef6\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 layout                              # \u901a\u7528\u5e03\u5c40\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 routes\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 **                              # \u4e1a\u52a1\u76ee\u5f55\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 routes.module.ts                # \u4e1a\u52a1\u8def\u7531\u6a21\u5757\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 routes-routing.module.ts        # \u4e1a\u52a1\u8def\u7531\u6ce8\u518c\u53e3\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 shared                              # \u5171\u4eab\u6a21\u5757\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 shared-delon.module.ts          # @Delon/* \u6b21\u7ea7\u5171\u4eab\u6a21\u5757\u5bfc\u5165\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 shared-zorro.module.ts          # NG-ZORRO \u6b21\u7ea7\u5171\u4eab\u6a21\u5757\u5bfc\u5165\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 shared.module.ts                # \u5171\u4eab\u6a21\u5757\u6587\u4ef6\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 app.component.ts                    # \u6839\u7ec4\u4ef6\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 app.module.ts                       # \u6839\u6a21\u5757\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 global-config.module.ts             # @delon & ng-zorro \u5168\u5c40\u914d\u7f6e\u9879\n\u2502\xa0\xa0 \u251c\u2500\u2500 assets                                  # \u672c\u5730\u9759\u6001\u8d44\u6e90\n\u2502\xa0\xa0 \u251c\u2500\u2500 environments                            # \u73af\u5883\u53d8\u91cf\u914d\u7f6e\n\u2502\xa0\xa0 \u251c\u2500\u2500 styles                                  # \u6837\u5f0f\u76ee\u5f55\n\u2514\u2500\u2500 \u2514\u2500\u2500 style.less                              # \u6837\u5f0f\u5f15\u5bfc\u5165\u53e3

\u4ee5\u4e0b\u662f\u9488\u5bf9\u5404\u4e2a\u76ee\u5f55\u53ca\u6587\u4ef6\u8bf4\u660e\u53ca\u4f7f\u7528\u76ee\u7684\uff1a

',meta:{order:20,title:"\u4f53\u7cfb\u7ed3\u6784",type:"Basic",i18n:"need-update"},toc:[{id:"\u7ed3\u6784\u56fe",title:"\u7ed3\u6784\u56fe",h:2},{id:"\u76ee\u5f55\u7ed3\u6784",title:"\u76ee\u5f55\u7ed3\u6784",h:2}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-architecture"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"auth",redirectTo:"auth/zh",pathMatch:"full"},{path:"auth/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"zh-CN":"docs/auth.md"},content:{"zh-CN":{content:'
',meta:{order:40,title:{"en-US":"Auth","zh-CN":"\u7528\u6237\u8ba4\u8bc1"},type:"Advance",url:"/auth/getting-started"},toc:[]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-auth"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"cache",redirectTo:"cache/zh",pathMatch:"full"},{path:"cache/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"zh-CN":"docs/cache.md"},content:{"zh-CN":{content:'
',meta:{order:70,title:{"en-US":"Cache","zh-CN":"\u7f13\u5b58"},type:"Advance",url:"/cache/getting-started"},toc:[]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-cache"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"changelog",redirectTo:"changelog/zh",pathMatch:"full"},{path:"changelog/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/changelog.en-US.md","zh-CN":"docs/changelog.zh-CN.md"},content:{"en-US":{content:'

NG-ALAIN strictly follows Semantic Versioning 2.0.0.

Release Schedule

  • Weekly release: patch version at the end of every week for routine bugfix (anytime for urgent bugfix).

  • Monthly release: minor version at the end of every month for new features.

  • Major version release is not included in this schedule for breaking change and new features.


16.4.2 (2023-10-26)

Performance Improvements

16.4.1 (2023-10-20)

Bug Fixes

16.4.0 (2023-10-19)

Bug Fixes

  • abc:onboarding: correct dark style (#1650) (7a21933)

  • abc:st: correct width misalignment in export excel (#1655) (76db16c)

  • cli: missing fileReplacements in Angular16 (#1658) (c5b46ee)

  • form:array: fix invalid ui in ui schema (#1657) (6b3c711)

  • form:select: correct trigger onSearch in reset when set value (#1660) (fa234cd)

  • form: fix visibleIf to correctly trigger reset (#1653) (d80f8fb)

  • form: fix render UI can\'t be inherit (#1661) (ee96aaa)

  • fix(form:widget:object): fix missing optional of card type (#1661) (ee96aaa)

Features

16.3.0 (2023-09-01)

SCAFFOLDING

  • enabled bindToComponentInputs #2409.

Bug Fixes

  • abc:pdf: fix ignore dependency pdfjs-dist (If you use local path to load the libary, you need to install the dependency yourself. pdfjs-dist depends on canvas, which may be slow to install dependencies due to environmental factors) (#1641) (#1641) (b987bab)

  • form:select: fix ignore reset option data when set onSearch (#1644) (1f8def7)

  • theme:http: fix missing content of HttpOptions (#1640) (28eeceb)

Features

16.2.1 (2023-08-06)

Bug Fixes

16.2.0 (2023-07-21)

SCAFFOLDING

  • Breaking changes router guard #2407.

  • Code style #2405.

Bug Fixes

  • abc:onboarding: fix ComponentFactoryResolver (#1624) (ae065c2)

  • chat:timeline: fix y2 to be optional (#1622) (b565ddf)

  • cli: remove skipTests from generating module (#1616) (0da83f8)

  • fix misalignment of col placeholders in se, sv, sg (#1617) (83b08c9)

  • theme:modal: removed nzComponentParams (#1615) (45863a1)

Features

  • abc:st: add onCell, support colSpan and rowSpan merging (#1613) (9ab109e)

  • abc:st: button support function method of icon, className (#1618) (6bf27da)

  • theme:layout-default: add fetching property (#1614) (8446da6)

BREAKING CHANGE

  • acl: refactor ACLGuard to aclCanMatch, aclCanActivate, aclCanActivateChild

  • auth:simple refactor SimpleGuard to authSimpleCanMatch, authSimpleCanActivate, authSimpleCanActivateChild

  • auth:jtw refactor JWTGuard to authJWTCanMatch, authJWTCanActivate, authJWTCanActivateChild

  • i18n refactor AlainI18NGuard to alainI18nCanMatch, alainI18nCanActivate, alainI18nCanActivateChild

16.1.1 (2023-07-16)

Bug Fixes

  • cli: remove stylelint-config-prettier (#1606) (2ecc28b)

  • theme: fix ant-btn preserve white spaces when is link type (#1605) (0fdd15d)

Features

16.0.1 (2023-06-08)

  • fix ng-zorro-antd dependency

16.0.0 (2023-06-07)

Bug Fixes

  • abc:st: fix error row class in fixed column title cell (#1598) (d2bf211)

  • form: fix inheriting references to other of ui (#1600) (a0150e7)

Old Versions

All releases notes can be found here

',meta:{order:100,title:"Change Log",type:"Other"},toc:[{id:"16.4.22023-10-26",title:"16.4.2 (2023-10-26)",h:2,children:[{id:"PerformanceImprovements",title:"Performance Improvements",h:3}]},{id:"16.4.12023-10-20",title:"16.4.1 (2023-10-20)",h:2,children:[{id:"BugFixes",title:"Bug Fixes",h:3},{id:"16.4.02023-10-19",title:"16.4.0 (2023-10-19)",h:1},{id:"BugFixes",title:"Bug Fixes",h:3},{id:"Features",title:"Features",h:3},{id:"16.3.02023-09-01",title:"16.3.0 (2023-09-01)",h:1},{id:"SCAFFOLDING",title:"SCAFFOLDING",h:3},{id:"BugFixes",title:"Bug Fixes",h:3},{id:"Features",title:"Features",h:3}]},{id:"16.2.12023-08-06",title:"16.2.1 (2023-08-06)",h:2,children:[{id:"BugFixes",title:"Bug Fixes",h:3},{id:"16.2.02023-07-21",title:"16.2.0 (2023-07-21)",h:1},{id:"SCAFFOLDING",title:"SCAFFOLDING",h:3},{id:"BugFixes",title:"Bug Fixes",h:3},{id:"Features",title:"Features",h:3},{id:"BREAKINGCHANGE",title:"BREAKING CHANGE",h:3},{id:"16.1.12023-07-16",title:"16.1.1 (2023-07-16)",h:1},{id:"BugFixes",title:"Bug Fixes",h:3},{id:"Features",title:"Features",h:3}]},{id:"16.0.12023-06-08",title:"16.0.1 (2023-06-08)",h:2,children:[{id:"16.0.02023-06-07",title:"16.0.0 (2023-06-07)",h:1},{id:"BugFixes",title:"Bug Fixes",h:3}]},{id:"OldVersions",title:"Old Versions",h:2}]},"zh-CN":{content:'

NG-ALAIN \u4e25\u683c\u9075\u5faa Semantic Versioning 2.0.0 \u8bed\u4e49\u5316\u7248\u672c\u89c4\u8303\u3002

\u53d1\u5e03\u5468\u671f

  • \u4fee\u8ba2\u7248\u672c\u53f7\uff1a\u6bcf\u5468\u672b\u4f1a\u8fdb\u884c\u65e5\u5e38 bugfix \u66f4\u65b0\u3002\uff08\u5982\u679c\u6709\u7d27\u6025\u7684 bugfix\uff0c\u5219\u4efb\u4f55\u65f6\u5019\u90fd\u53ef\u53d1\u5e03\uff09

  • \u6b21\u7248\u672c\u53f7\uff1a\u6bcf\u6708\u53d1\u5e03\u4e00\u4e2a\u5e26\u6709\u65b0\u7279\u6027\u7684\u5411\u4e0b\u517c\u5bb9\u7684\u7248\u672c\u3002

  • \u4e3b\u7248\u672c\u53f7\uff1a\u542b\u6709\u7834\u574f\u6027\u66f4\u65b0\u548c\u65b0\u7279\u6027\uff0c\u4e0d\u5728\u53d1\u5e03\u5468\u671f\u5185\u3002


16.4.2 (2023-10-26)

Performance Improvements

16.4.1 (2023-10-20)

Bug Fixes

16.4.0 (2023-10-19)

Bug Fixes

  • abc:onboarding: \u7ea0\u6b63\u6697\u9ed1\u98ce\u683c (#1650) (7a21933)

  • abc:st: \u7ea0\u6b63\u5bfc\u51fa Excel \u4e2d\u7684\u5bbd\u5ea6\u672a\u5bf9\u9f50\u95ee\u9898 (#1655) (76db16c)

  • cli: \u4fee\u590d Angular 16 \u4e0b ng new ng-alain \u7f3a\u5931 fileReplacements (#1658) (c5b46ee)

  • form:array: \u4fee\u590d ui \u5c5e\u6027\u65e0\u6cd5\u5408\u5e76 ui (#1657) (6b3c711)

  • form:select: \u7ea0\u6b63\u6709\u9ed8\u8ba4\u503c\u65f6\u521d\u59cb\u5316\u65f6\u65e0\u6cd5\u89e6\u53d1 onSearch (#1660) (fa234cd)

  • form: \u4fee\u590d\u8bbe\u7f6e visibleIf \u89e6\u53d1\u65f6\u4e5f\u4f1a\u89e6\u53d1 reset \u65b9\u6cd5 (#1653) (d80f8fb)

  • form: \u4fee\u590d\u6e32\u67d3UI\u4e0d\u5e94\u88ab\u7ee7\u627f(#1661) (ee96aaa)

  • fix(form:widget:object): \u4fee\u590d card \u6837\u5f0f\u7f3a\u5931 optional (#1661) (ee96aaa)

Features

  • abc:onboarding: \u65b0\u589e key \u7528\u4e8e\u81ea\u52a8\u5224\u65ad\u662f\u5426\u53d1\u751f\u7248\u672c\u53d8\u5316 (#1652) (5edaa97)

  • abc:theme: \u7ea0\u6b63 ng-tag \u5217\u8868\u6362\u884c\u95f4\u8ddd\u95ee\u9898 (#1647) (5da4ecb)

  • cli: add provide function (#1654) (c8779f4)

16.3.0 (2023-09-01)

SCAFFOLDING

  • \u542f\u7528 bindToComponentInputs #2409.

Bug Fixes

  • abc:pdf: \u5ffd\u7565\u4f9d\u8d56 pdfjs-dist\uff08\u82e5\u4f7f\u7528\u672c\u5730\u52a0\u8f7d\u6a21\u5f0f\uff0c\u9700\u8981\u81ea\u884c\u5b89\u88c5\u8be5\u4f9d\u8d56\uff0cpdfjs-dist \u4f9d\u8d56\u4e86 canvas \u53ef\u80fd\u4f1a\u56e0\u4e3a\u73af\u5883\u56e0\u7d20\u5b89\u88c5\u4f9d\u8d56\u5f88\u6162\uff09 (#1641) (b987bab)

  • form:select: \u5f53\u8bbe\u7f6e onSearch \u65f6\u91cd\u7f6e\u6570\u636e\u65f6\u4f1a\u5ffd\u7565\u66f4\u65b0\u9884\u9009\u6570\u636e (#1644) (1f8def7)

  • theme:http: \u7ea0\u6b63 HttpOptions \u7f3a\u5c11 content (#1640) (28eeceb)

Features

  • abc:cell: \u65b0\u589e cell \u5355\u5143\u683c\u6570\u636e\u7ec4\u4ef6 (#1530) (26023ca)

  • abc:page-header: \u65b0\u589e titleSub \u5b50\u6807\u9898\u5c5e\u6027 (#1643) (79e229f)

  • abc:st: \u6807\u7b7e\u6216\u5fbd\u6807\u652f\u6301 tooltip (#1634) (0e9006e)

  • abc:sv: \u65b0\u589e bordered \u662f\u5426\u663e\u793a\u8fb9\u6846 (#1628) (ccfa5e1)

  • cli: ng add \u5f00\u542f bindToComponentInputs (#1630) (9717d9d)

  • theme:drawer: \u65b0\u589e closeAll, openDrawers \u65b9\u6cd5 (#1627) (bab3d0c)

  • theme:modal: \u652f\u6301\u767e\u5206\u6bd4\u5927\u5c0f (#1626) (8b52a08)

16.2.1 (2023-08-06)

Bug Fixes

  • abc:reuse-tab: \u4fee\u590d\u7f3a\u5c11\u5bfc\u51fa\u7f13\u5b58\u76f8\u5173 (#1633) (2c7def7)

  • auth:cookie: \u4fee\u590d\u8fc7\u671f\u503c\u5e94\u4e0e expires \u540c\u6b65 (#1636) (eca7bcb)

  • theme:table: \u4fee\u590d\u5355\u56fe\u50cf\u7684\u95f4\u8ddd\u95ee\u9898 (#1629) (994e2be)

  • theme:title: \u4fee\u590d\u5e94\u5ffd\u7565\u7a7a\u6807\u9898 (#1638) (c7bf339)

16.2.0 (2023-07-21)

SCAFFOLDING

  • \u8def\u7531\u5b88\u536b\u7684\u7834\u574f\u6027\u53d8\u66f4 #2407.

  • \u4ee3\u7801\u98ce\u683c\u53d8\u66f4 #2405.

Bug Fixes

  • abc:onboarding: \u4fee\u590d\u4f7f\u7528\u8fc7\u671f\u65b9\u6cd5 ComponentFactoryResolver (#1624) (ae065c2)

  • chat:timeline: \u4fee\u590d y2 \u6307\u6807\u6570\u636e\u4e3a\u53ef\u9009 (#1622) (b565ddf)

  • cli: \u79fb\u9664\u751f\u6210\u6a21\u5757\u65f6\u5305\u542b\u65e0\u6548\u53c2\u6570 skipTests (#1616) (0da83f8)

  • \u4fee\u590d col \u5360\u4f4d\u7b26\u4e0d\u5bf9\u9f50\u95ee\u9898\uff0c\u6d89\u53ca se, sv, sg \u7ec4\u4ef6 (#1617) (83b08c9)

  • theme:modal: \u4fee\u590d\u8fc7\u671f\u53c2\u6570 nzComponentParams (#1615) (45863a1)

Features

  • abc:st: \u65b0\u589e onCell \u65b9\u6cd5\u652f\u6301\u5408\u5e76\u5217\u6216\u884c (#1613) (9ab109e)

  • abc:st: \u65b0\u589e icon, className \u65b9\u6cd5\u652f\u6301\u52a8\u6001\u8c03\u6574 (#1618) (6bf27da)

  • theme:layout-default: \u65b0\u589e fetchingStrictly, fetching \u5c5e\u6027\u7528\u4e8e\u81ea\u4e3b\u53d7\u63a7\u9876\u90e8\u52a0\u8f7d\u52a8\u753b\u72b6\u6001 (#1614) (8446da6)

BREAKING CHANGE

  • acl: \u91cd\u6784 ACLGuard \u4e3a aclCanMatch, aclCanActivate, aclCanActivateChild

  • auth:simple \u91cd\u6784 SimpleGuard \u4e3a authSimpleCanMatch, authSimpleCanActivate, authSimpleCanActivateChild

  • auth:jtw \u91cd\u6784 JWTGuard \u4e3a authJWTCanMatch, authJWTCanActivate, authJWTCanActivateChild

  • i18n \u91cd\u6784 AlainI18NGuard \u4e3a alainI18nCanMatch, alainI18nCanActivate, alainI18nCanActivateChild

16.1.1 (2023-07-16)

Bug Fixes

  • cli: \u79fb\u9664\u8fc7\u671f\u5e93 stylelint-config-prettier (#1606) (2ecc28b)

  • theme: \u4fee\u590d\u5ffd\u7565\u4e24\u4e2a nzType="link" \u6309\u9519\u65f6\u95f4\u8ddd (#1605) (0fdd15d)

Features

  • abc:reuse-tab: \u65b0\u589e\u53ef\u81ea\u5b9a\u4e49\u7f13\u5b58\u5b58\u50a8 (#1609) (11599d9)

  • theme:modal: \u65b0\u589e\u652f\u6301\u62d6\u62fd\u53c2\u6570 drag (#1607) (3cd73f7)

16.0.1 (2023-06-08)

  • \u4fee\u590d ng-zorro-antd \u9519\u4f4d\u7248\u672c\u4f9d\u8d56

16.0.0 (2023-06-07)

Bug Fixes

  • abc:st: \u4fee\u590d\u56fa\u5b9a\u5217\u6837\u5f0f\u9519\u8bef (#1598) (d2bf211)

  • form: \u4fee\u590dui\u7531\u4e8e\u7ee7\u627f\u5173\u7cfb\u5bfc\u81f4\u91cd\u590d\u5f15\u7528 (#1600) (a0150e7)

\u5386\u53f2\u7248\u672c

\u5386\u53f2\u7248\u672c\u7684\u66f4\u65b0\u8bb0\u5f55\u53ef\u4ee5\u5728 Github',meta:{order:100,title:"\u66f4\u65b0\u65e5\u5fd7",type:"Other"},toc:[{id:"16.4.22023-10-26",title:"16.4.2 (2023-10-26)",h:2,children:[{id:"PerformanceImprovements",title:"Performance Improvements",h:3}]},{id:"16.4.12023-10-20",title:"16.4.1 (2023-10-20)",h:2,children:[{id:"BugFixes",title:"Bug Fixes",h:3},{id:"16.4.02023-10-19",title:"16.4.0 (2023-10-19)",h:1},{id:"BugFixes",title:"Bug Fixes",h:3},{id:"Features",title:"Features",h:3},{id:"16.3.02023-09-01",title:"16.3.0 (2023-09-01)",h:1},{id:"SCAFFOLDING",title:"SCAFFOLDING",h:3},{id:"BugFixes",title:"Bug Fixes",h:3},{id:"Features",title:"Features",h:3}]},{id:"16.2.12023-08-06",title:"16.2.1 (2023-08-06)",h:2,children:[{id:"BugFixes",title:"Bug Fixes",h:3},{id:"16.2.02023-07-21",title:"16.2.0 (2023-07-21)",h:1},{id:"SCAFFOLDING",title:"SCAFFOLDING",h:3},{id:"BugFixes",title:"Bug Fixes",h:3},{id:"Features",title:"Features",h:3},{id:"BREAKINGCHANGE",title:"BREAKING CHANGE",h:3},{id:"16.1.12023-07-16",title:"16.1.1 (2023-07-16)",h:1},{id:"BugFixes",title:"Bug Fixes",h:3},{id:"Features",title:"Features",h:3}]},{id:"16.0.12023-06-08",title:"16.0.1 (2023-06-08)",h:2,children:[{id:"16.0.02023-06-07",title:"16.0.0 (2023-06-07)",h:1},{id:"BugFixes",title:"Bug Fixes",h:3}]},{id:"\u5386\u53f2\u7248\u672c",title:"\u5386\u53f2\u7248\u672c",h:2}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-changelog"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"cli",redirectTo:"cli/zh",pathMatch:"full"},{path:"cli/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"zh-CN":"docs/cli.md"},content:{"zh-CN":{content:'

',meta:{order:10,title:{"en-US":"Cli","zh-CN":"\u547d\u4ee4\u884c\u5de5\u5177"},type:"Other",url:"/cli/getting-started"},toc:[]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-cli"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"contributing",redirectTo:"contributing/zh",pathMatch:"full"},{path:"contributing/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/contributing.en-US.md","zh-CN":"docs/contributing.zh-CN.md"},content:{"en-US":{content:'

The following is a set of guidelines for contributing to ng-alain. Please spend several minutes in reading these guidelines before you create an issue or pull request.

Code of Conduct

We have adopted a Code of Conduct that we expect project participants to adhere to. Please read the full text so that you can understand what actions will and will not be tolerated.

Open Development

All work on ng-alain\u3001delon happens directly. Both core team members and external contributors send pull requests which go through the same review process.

Bugs

We are using GitHub Issues for bug tracing. The best way to get your bug fixed via GitHub Issues and provide a reprduction with this template.

Before you reporting a bug, please make sure you\'ve searched exists issues, and read our FAQ.

Proposing a Change

If you intend to change the public API or introduce new feature that via GitHub Issues.

Your First Pull Request

Working on your first Pull Request? You can learn how from this free video series:

How to Contribute to Open Source

To help you get your feet wet and get you familiar with our contribution process, we have a list of good first issues that contain bugs or small features that have a relatively limited scope. This is a great place to get started.

If you decide to fix an issue, please be sure to check the comment thread in case somebody is already working on a fix. If nobody is working on it at the moment, please leave a comment stating that you intend to work on it so other people don\u2019t accidentally duplicate your effort.

If somebody claims an issue but doesn\u2019t follow up for more than two weeks, it\u2019s fine to take over it but you should still leave a comment.

Sending a Pull Request

The core team is monitoring for pull requests. We will review your pull request and either merge it, request changes to it, or close it with an explanation.

Before submitting a pull request, please make sure the following is done:

  1. Run yarn in the repository root.

  2. If you\u2019ve fixed a bug or added code that should be tested, add tests!

  3. Ensure the test suite passes (npm run test).

  4. Make sure your code lints (npm run lint). Tip: Lint runs automatically when you git commit.

  5. Make sure rebase your code to keep the history clean.

  6. Make sure your commit message meet the guidelines

Development Workflow

After cloning ng-alain or delon, run yarn to fetch its dependencies. Then, you can run several commands:

delon

  1. npm run site runs ng-alain.com website locally

  2. npm run lint checks the code style

  3. npm run test runs the complete test suite

  4. npm run release build packages relases

ng-alain

  1. npm run site runs demo site website locally

  2. npm run lint checks the code style

  3. npm test runs test suite

  4. npm run build creates build of demo site

    <
',meta:{order:40,title:"Contributing",type:"Other"},toc:[{id:"CodeofConduct",title:"Code of Conduct",h:2},{id:"OpenDevelopment",title:"Open Development",h:2},{id:"Bugs",title:"Bugs",h:2},{id:"ProposingaChange",title:"Proposing a Change",h:2},{id:"YourFirstPullRequest",title:"Your First Pull Request",h:2},{id:"SendingaPullRequest",title:"Sending a Pull Request",h:2},{id:"DevelopmentWorkflow",title:"Development Workflow",h:2,children:[{id:"delon",title:"delon",h:3},{id:"ng-alain",title:"ng-alain",h:3}]}]},"zh-CN":{content:'

\u8fd9\u7bc7\u6307\u5357\u4f1a\u6307\u5bfc\u4f60\u5982\u4f55\u4e3a NG-ALAIN \u8d21\u732e\u4e00\u4efd\u81ea\u5df1\u7684\u529b\u91cf\uff0c\u8bf7\u5728\u4f60\u8981\u63d0 issue \u6216\u8005 pull request \u4e4b\u524d\u82b1\u51e0\u5206\u949f\u6765\u9605\u8bfb\u4e00\u904d\u8fd9\u7bc7\u6307\u5357\u3002

\u884c\u4e3a\u51c6\u5219

\u6211\u4eec\u6709\u4e00\u4efd \u884c\u4e3a\u51c6\u5219\uff0c\u5e0c\u671b\u6240\u6709\u7684\u8d21\u732e\u8005\u90fd\u80fd\u9075\u5b88\uff0c\u8bf7\u82b1\u65f6\u95f4\u9605\u8bfb\u4e00\u904d\u5168\u6587\u4ee5\u786e\u4fdd\u4f60\u80fd\u660e\u767d\u54ea\u4e9b\u662f\u53ef\u4ee5\u505a\u7684\uff0c\u54ea\u4e9b\u662f\u4e0d\u53ef\u4ee5\u505a\u7684\u3002

\u900f\u660e\u7684\u5f00\u53d1

\u6211\u4eec\u6240\u6709\u7684\u5de5\u4f5c\u90fd\u4f1a\u653e\u5728 ng-alain\u3001delon \u4e0a\u3002\u4e0d\u7ba1\u662f\u6838\u5fc3\u56e2\u961f\u7684\u6210\u5458\u8fd8\u662f\u5916\u90e8\u8d21\u732e\u8005\u7684 pull request \u90fd\u9700\u8981\u7ecf\u8fc7\u540c\u6837\u6d41\u7a0b\u7684 review\u3002

Bugs

\u6211\u4eec\u4f7f\u7528 GitHub Issues \u6765\u505a bug \u8ffd\u8e2a\u3002\u5982\u679c\u4f60\u60f3\u8981\u4f60\u53d1\u73b0\u7684 bug \u88ab\u5feb\u901f\u89e3\u51b3\uff0c\u6700\u597d\u7684\u529e\u6cd5\u5c31\u662f\u6309\u7167 issues \u5448\u73b0\u7684\u6a21\u677f\u8ba4\u771f\u586b\u5199\u6bcf\u4e00\u9879\uff1b\u5e76\u4e14\u80fd\u4f7f\u7528\u8fd9\u4e2a \u6a21\u677f \u6765\u63d0\u4f9b\u91cd\u73b0\u3002

\u5728\u4f60\u62a5\u544a\u4e00\u4e2a bug \u4e4b\u524d\uff0c\u8bf7\u5148\u786e\u4fdd\u5df2\u7ecf\u641c\u7d22\u8fc7\u5df2\u6709\u7684 issue \u548c\u9605\u8bfb\u4e86 \u6587\u6863\u7ad9\u3002

\u65b0\u589e\u529f\u80fd

\u5982\u679c\u4f60\u6709\u6539\u8fdb\u6211\u4eec\u7684 API \u6216\u8005\u65b0\u589e\u529f\u80fd\u7684\u60f3\u6cd5\uff0c\u540c\u6837\u6309\u7167 issues \u5448\u73b0\u7684\u6a21\u677f\u8ba4\u771f\u586b\u5199\u6bcf\u4e00\u9879\u3002

\u7b2c\u4e00\u6b21\u8d21\u732e

\u5982\u679c\u4f60\u8fd8\u4e0d\u6e05\u695a\u600e\u4e48\u5728 GitHub \u4e0a\u63d0 Pull Request \uff0c\u53ef\u4ee5\u9605\u8bfb\u4e0b\u9762\u8fd9\u7bc7\u6587\u7ae0\u6765\u5b66\u4e60\uff1a

\u5982\u4f55\u4f18\u96c5\u5730\u5728 GitHub \u4e0a\u8d21\u732e\u4ee3\u7801

\u4e3a\u4e86\u80fd\u5e2e\u52a9\u4f60\u5f00\u59cb\u4f60\u7684\u7b2c\u4e00\u6b21\u5c1d\u8bd5\uff0c\u6211\u4eec\u7528 good first issues \u6807\u8bb0\u4e86\u4e00\u4e9b\u6bd4\u8f83\u6bd4\u8f83\u5bb9\u6613\u4fee\u590d\u7684 bug \u548c\u5c0f\u529f\u80fd\u3002\u8fd9\u4e9b issue \u53ef\u4ee5\u5f88\u597d\u5730\u505a\u4e3a\u4f60\u7684\u9996\u6b21\u5c1d\u8bd5\u3002

\u5982\u679c\u4f60\u6253\u7b97\u5f00\u59cb\u5904\u7406\u4e00\u4e2a issue\uff0c\u8bf7\u5148\u68c0\u67e5\u4e00\u4e0b issue \u4e0b\u9762\u7684\u7559\u8a00\u4ee5\u786e\u4fdd\u6ca1\u6709\u522b\u4eba\u6b63\u5728\u5904\u7406\u8fd9\u4e2a issue\u3002\u5982\u679c\u5f53\u524d\u6ca1\u6709\u4eba\u5728\u5904\u7406\u7684\u8bdd\u4f60\u53ef\u4ee5\u7559\u8a00\u544a\u77e5\u5176\u4ed6\u4eba\u4f60\u5c06\u4f1a\u5904\u7406\u8fd9\u4e2a issue\uff0c\u4ee5\u514d\u522b\u4eba\u91cd\u590d\u52b3\u52a8\u3002

\u5982\u679c\u4e4b\u524d\u6709\u4eba\u7559\u8a00\u8bf4\u4f1a\u5904\u7406\u8fd9\u4e2a issue \u4f46\u662f\u4e00\u4e24\u4e2a\u661f\u671f\u90fd\u6ca1\u6709\u52a8\u9759\uff0c\u90a3\u4e48\u4f60\u4e5f\u53ef\u4ee5\u63a5\u624b\u5904\u7406\u8fd9\u4e2a issue\uff0c\u5f53\u7136\u8fd8\u662f\u9700\u8981\u7559\u8a00\u544a\u77e5\u5176\u4ed6\u4eba\u3002

Pull Request

NG-ALAIN \u4f1a\u5173\u6ce8\u6240\u6709\u7684 pull request\uff0c\u6211\u4eec\u4f1a review \u4ee5\u53ca\u5408\u5e76\u4f60\u7684\u4ee3\u7801\uff0c\u4e5f\u6709\u53ef\u80fd\u8981\u6c42\u4f60\u505a\u4e00\u4e9b\u4fee\u6539\u6216\u8005\u544a\u8bc9\u4f60\u6211\u4eec\u4e3a\u4ec0\u4e48\u4e0d\u80fd\u63a5\u53d7\u8fd9\u6837\u7684\u4fee\u6539\u3002

\u5728\u4f60\u53d1\u9001 Pull Request \u4e4b\u524d\uff0c\u8bf7\u786e\u8ba4\u4f60\u662f\u6309\u7167\u4e0b\u9762\u7684\u6b65\u9aa4\u6765\u505a\u7684\uff1a

  1. \u5728\u9879\u76ee\u6839\u76ee\u5f55\u4e0b\u8fd0\u884c\u4e86 yarn\u3002

  2. \u5982\u679c\u4f60\u4fee\u590d\u4e86\u4e00\u4e2a bug \u6216\u8005\u65b0\u589e\u4e86\u4e00\u4e2a\u529f\u80fd\uff0c\u8bf7\u786e\u4fdd\u5199\u4e86\u76f8\u5e94\u7684\u6d4b\u8bd5\uff0c\u8fd9\u5f88\u91cd\u8981\u3002

  3. \u786e\u8ba4\u6240\u6709\u7684\u6d4b\u8bd5\u90fd\u662f\u901a\u8fc7\u7684 npm run test\u3002

  4. \u786e\u4fdd\u4f60\u7684\u4ee3\u7801\u901a\u8fc7\u4e86 lint \u68c0\u67e5 npm run lint\u3002\u5c0f\u8d34\u58eb: Lint \u4f1a\u5728\u4f60 git commit \u7684\u65f6\u5019\u81ea\u52a8\u8fd0\u884c\u3002

  5. \u786e\u4fdd\u4f60\u7684\u4ee3\u7801\u5728\u63d0\u4ea4\u4e4b\u524d\u7ecf\u8fc7\u4e86\u6b63\u786e\u7684 Rebase

  6. \u786e\u4fdd\u4f60\u7684\u63d0\u4ea4\u7b26\u5408\u89c4\u8303

\u5f00\u53d1\u6d41\u7a0b

\u5728\u4f60 clone \u4e86 ng-alain \u6216 delon \u7684\u4ee3\u7801\u5e76\u4e14\u4f7f\u7528 yarn \u5b89\u88c5\u5b8c\u4f9d\u8d56\u540e\uff0c\u4f60\u8fd8\u53ef\u4ee5\u8fd0\u884c\u4e0b\u9762\u51e0\u4e2a\u5e38\u7528\u7684\u547d\u4ee4\uff1a

delon \u57fa\u5efa\u7c7b\u5e93

  1. npm run site \u5728\u672c\u5730\u8fd0\u884c ng-alain.com \u7f51\u7ad9

  2. npm run lint \u68c0\u67e5 packages \u4ee3\u7801\u98ce\u683c

  3. npm run test \u8fd0\u884c packages \u6240\u6709\u7c7b\u5e93\u6d4b\u8bd5

  4. npm run release \u6784\u5efa packages \u53d1\u5e03\u5305

ng-alain \u811a\u624b\u67b6

  1. npm start \u5728\u672c\u5730\u8fd0\u884c\u811a\u624b\u67b6

  2. npm run lint \u68c0\u67e5\u4ee3\u7801\u98ce\u683c

  3. npm test \u8fd0\u884c\u6d4b\u8bd5

  4. npm run build \u6784\u5efa\u751f\u4ea7\u73af\u5883\u7f51\u7ad9

    <
',meta:{order:40,title:"\u8d21\u732e\u6307\u5357",type:"Other"},toc:[{id:"\u884c\u4e3a\u51c6\u5219",title:"\u884c\u4e3a\u51c6\u5219",h:2},{id:"\u900f\u660e\u7684\u5f00\u53d1",title:"\u900f\u660e\u7684\u5f00\u53d1",h:2},{id:"Bugs",title:"Bugs",h:2},{id:"\u65b0\u589e\u529f\u80fd",title:"\u65b0\u589e\u529f\u80fd",h:2},{id:"\u7b2c\u4e00\u6b21\u8d21\u732e",title:"\u7b2c\u4e00\u6b21\u8d21\u732e",h:2},{id:"PullRequest",title:"Pull Request",h:2},{id:"\u5f00\u53d1\u6d41\u7a0b",title:"\u5f00\u53d1\u6d41\u7a0b",h:2,children:[{id:"delon\u57fa\u5efa\u7c7b\u5e93",title:"delon \u57fa\u5efa\u7c7b\u5e93",h:3},{id:"ng-alain\u811a\u624b\u67b6",title:"ng-alain \u811a\u624b\u67b6",h:3}]}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-contributing"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"deploy",redirectTo:"deploy/zh",pathMatch:"full"},{path:"deploy/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/deploy.en-US.md","zh-CN":"docs/deploy.zh-CN.md"},content:{"en-US":{content:'

Construct

When the project is developed, you can package your app with just one line of command:

npm run build

NG-ALAIN itself is an Angular CLI project, so you can also complete more complex build requirements with Build. After the package is successfully packaged, the dist folder will be generated in the root directory, which is to build the packaged file, including several static files such as *.js, *.css, index.html.

JavaScript heap out of memory

Avoid executing ng build when throw error JavaScript heap out of memory:

{\n  "scripts": {\n    "build": "node --max_old_space_size=5120 ./node_modules/@angular/cli/bin/ng build"\n  }\n}

Environmental variables

When you need to distinguish between development and deployment, and test environments, you can configure the corresponding parameters according to different environments through the src/environments folder. The configuration items can also be called directly in the application. At the same time, you need to configure the configuration items in angular.json. Finally, you can change the environment configuration through commands.

Analyze the build file volume

If the build file is large, you can optimize your code by building and analyzing the volume distribution of dependent modules with the analyze command.

npm run analyze

View the analyze page:

npm run analyze:view

Release

When you are ready to deploy (release) your the app, you need only to publish the generated build artifacts - that is, the files in the dist folder - to your cdn or static server. Note that the index.html is usually the entry page for your app and handles all missing file requests. You may need to change the import path of the page after determining the static of js and css.

The default static resource reference path directly points to the directory where the dist folder is published. For example, if you post dist to the root directory of the ng-alain.com site, the requested URL is //ng-alain.com/***.js, //ng-alain.com/***.css, if dist is posted to a directory under a certain directory, such as v2, request The URL is //ng-alain.com/v2/***.js, //ng-alain.com/v2/***.css.

If your static resource is deployed to another domain name (such as a separate CDN address), you can specify a CDN address with the --deployUrl parameter.

ng build -deployUrl=//cdn.ng-alain.com/

The generated index.html with its *.js, *.css files will automatically refer to //cdn.ng-alain.com/*.js, //cdn.ng-alain.com/*css, respectively.

Routing strategy

Angular front-end routing has two different strategies: HashLocationStrategy and PathLocationStrategy. The former is routed by appending a # before a path, and the front-end routing management is performed by HTML5 History, while the latter is similar, but the path does not have # appended before it. Through the configuration of the server, the specified URL can be accessed to the current page, enabling front-end routing management.

If you want to use PathLocationStrategy, you need to replace RouterModule.forRoot(routes, { useHash: true }) of ./src/app/routes/routes-routing.module.ts with RouterModule.forRoot(routes), since that is the default Angular behavior. You might notice that this can also be done by changing the useHash variable in the src/environments/environment.*.ts files, depending on your project configulation. Importantly, your server needs to be correctly configured, such that is returns the index.html for any 404 errors:

Express server example:

app.use(express.static(path.join(__dirname, \'build\')));\n\napp.get(\'/*\', function (req, res) {\n  res.sendFile(path.join(__dirname, \'build\', \'index.html\'));\n});

Egg server example:

// controller\nexports.index = function* () {\n  yield this.render(\'App.jsx\', {\n    context: {\n      user: this.session.user,\n    },\n  });\n};\n\n// router\napp.get(\'home\', \'/*\', \'home.index\');

For more questions about Angular routing, please read official website.

Docker

NG-ALAIN provides a complete image file for building Angular projects based on the nginx WEB service. Where nginx is a mirror using nginx:1.13.5-alpine, which basically satisfies NG-ALAIN The project\'s good operating environment, if there are more needs, you can easily specify nginx.conf with docker run.

1. Building the image

Build a complete image of the runtime environment required by NG-ALAIN based on the Dockerfile.

docker build -t ng-alain .

2. Running

Based on compose (Recommended)

docker-compose up -d

The details can be modified with docker-compose.yml.

Based on imperative

docker run -d -p 80:80 --name alain ng-alain

Finally, you can visit\uff1ahttp://localhost/

3. About SSL

The Dockerfile provided by NG-ALAIN is relatively simple, and the most common use of real projects is support for SSL.

Therefore, by default you can place the certificate in the _nginx/ssl directory and enable the _nginx/default.conf related SSL configuration item.

Finally, add the ports node of docker-compose.yml:

- 443:443

Container deployment

Refer to Angular Container Deployment

',meta:{order:70,title:{"en-US":"Build & Deploy","zh-CN":"\u6784\u5efa\u548c\u53d1\u5e03"},type:"Dev"},toc:[{id:"Construct",title:"Construct",h:2,children:[{id:"JavaScriptheapoutofmemory",title:"JavaScript heap out of memory",h:3},{id:"Environmentalvariables",title:"Environmental variables",h:3},{id:"Analyzethebuildfilevolume",title:"Analyze the build file volume",h:3}]},{id:"Release",title:"Release",h:2,children:[{id:"Routingstrategy",title:"Routing strategy",h:3},{id:"Docker",title:"Docker",h:3},{id:"Containerdeployment",title:"Container deployment",h:3}]}]},"zh-CN":{content:'

\u6784\u5efa

\u5f53\u9879\u76ee\u5f00\u53d1\u5b8c\u6bd5\uff0c\u53ea\u9700\u8981\u8fd0\u884c\u4e00\u884c\u547d\u4ee4\u5c31\u53ef\u4ee5\u6253\u5305\u4f60\u7684\u5e94\u7528\uff1a

npm run build

NG-ALAIN \u672c\u8eab\u662f\u4e00\u4e2a Angular CLI \u9879\u76ee\uff0c\u56e0\u6b64\u4e5f\u53ef\u4ee5\u53c2\u7167 Build \u5b8c\u6210\u66f4\u590d\u6742\u7684\u6784\u5efa\u9700\u6c42\u3002\u6784\u5efa\u6253\u5305\u6210\u529f\u4e4b\u540e\uff0c\u4f1a\u5728\u6839\u76ee\u5f55\u751f\u6210 dist \u6587\u4ef6\u5939\uff0c\u91cc\u9762\u5c31\u662f\u6784\u5efa\u6253\u5305\u597d\u7684\u6587\u4ef6\uff0c\u5305\u542b\u82e5\u5e72 *.js\u3001*.css\u3001index.html \u7b49\u9759\u6001\u6587\u4ef6\u3002

JavaScript heap out of memory

\u907f\u514d\u6267\u884c ng build \u65f6\u629b\u51fa JavaScript heap out of memory\uff1a

{\n  "scripts": {\n    "build": "node --max_old_space_size=5120 ./node_modules/@angular/cli/bin/ng build"\n  }\n}

\u73af\u5883\u53d8\u91cf

\u5f53\u4f60\u9700\u8981\u533a\u522b\u5f00\u53d1\u548c\u90e8\u7f72\u4ee5\u53ca\u6d4b\u8bd5\u73af\u5883\u7684\u65f6\u5019\uff0c\u53ef\u4ee5\u901a\u8fc7 src/environments \u6587\u4ef6\u5939\u6839\u636e\u4e0d\u540c\u73af\u5883\u914d\u7f6e\u76f8\u5e94\u7684\u53c2\u6570\uff0c\u914d\u7f6e\u9879\u540c\u65f6\u4e5f\u53ef\u4ee5\u5728\u5e94\u7528\u5f53\u4e2d\u76f4\u63a5\u8c03\u7528\u5b83\u4eec\u3002\u540c\u65f6\uff0c\u8fd8\u9700\u8981\u914d\u7f6e angular.json \u5185\u7684\u914d\u7f6e\u9879\uff0c\u6700\u540e\u4f60\u53ef\u4ee5\u900f\u8fc7\u547d\u4ee4\u6539\u53d8\u73af\u5883\u914d\u7f6e\u3002

\u5206\u6790\u6784\u5efa\u6587\u4ef6\u4f53\u79ef

\u5982\u679c\u6784\u5efa\u6587\u4ef6\u5f88\u5927\uff0c\u53ef\u4ee5\u901a\u8fc7 analyze \u547d\u4ee4\u6784\u5efa\u5e76\u5206\u6790\u4f9d\u8d56\u6a21\u5757\u7684\u4f53\u79ef\u5206\u5e03\uff0c\u4ece\u800c\u4f18\u5316\u4f60\u7684\u4ee3\u7801\u3002

npm run analyze

\u67e5\u770b\u5206\u6790\u9875\uff1a

npm run analyze:view

\u53d1\u5e03

\u5bf9\u4e8e\u53d1\u5e03\u6765\u8bb2\uff0c\u53ea\u9700\u8981\u5c06\u6700\u7ec8\u751f\u6210\u7684\u9759\u6001\u6587\u4ef6\uff0c\u4e5f\u5c31\u662f\u901a\u5e38\u60c5\u51b5\u4e0b dist \u6587\u4ef6\u5939\u7684\u9759\u6001\u6587\u4ef6\u53d1\u5e03\u5230\u4f60\u7684 cdn \u6216\u8005\u9759\u6001\u670d\u52a1\u5668\u5373\u53ef\uff0c\u9700\u8981\u6ce8\u610f\u7684\u662f\u5176\u4e2d\u7684 index.html \u901a\u5e38\u4f1a\u662f\u4f60\u540e\u53f0\u670d\u52a1\u7684\u5165\u53e3\u9875\u9762\uff0c\u5728\u786e\u5b9a\u4e86 js \u548c css \u7684\u9759\u6001\u4e4b\u540e\u53ef\u80fd\u9700\u8981\u6539\u53d8\u9875\u9762\u7684\u5f15\u5165\u8def\u5f84\u3002

\u9ed8\u8ba4\u7684\u9759\u6001\u8d44\u6e90\u5f15\u7528\u8def\u5f84\u76f4\u63a5\u6307\u5411 dist \u6587\u4ef6\u5939\u53d1\u5e03\u6240\u5904\u5e94\u7528\u7684\u76ee\u5f55\u4e0b\uff0c\u4f8b\u5982\u4f60\u5c06 dist \u53d1\u5e03\u81f3 ng-alain.com \u7ad9\u70b9\u7684\u6839\u76ee\u5f55\u91cc\u5219\u8bf7\u6c42\u7684\u7f51\u5740\u662f //ng-alain.com/***.js\u3001//ng-alain.com/***.css\uff0c\u82e5 dist \u53d1\u5e03\u81f3\u67d0\u7ad9\u70b9\u4e0b\u67d0\u4e2a\u76ee\u5f55\u5982 v2 \u6587\u4ef6\u5939\u4e0b\uff0c\u5219\u8bf7\u6c42\u7684\u7f51\u5740\u662f //ng-alain.com/v2/***.js\u3001//ng-alain.com/v2/***.css\u3002

\u5982\u679c\u4f60\u7684\u9759\u6001\u8d44\u6e90\u662f\u90e8\u7f72\u5230\u5176\u4ed6\u57df\u540d\uff08\u4f8b\u5982\u72ec\u7acb\u7684 cdn \u5730\u5740\uff09\uff0c\u4f60\u53ef\u4ee5\u900f\u8fc7 -d \u53c2\u6570\u6307\u5b9a\u4e00\u4e2a cdn \u5730\u5740\u3002

ng build -d=//cdn.ng-alain.com/

\u8fd9\u6837\u751f\u6210\u7684 index.html \u5185 *.js\u3001*.css \u4f1a\u81ea\u52a8\u52a0\u4e0a //cdn.ng-alain.com/*.js\u3002

\u8def\u7531\u7b56\u7565

Angular \u524d\u7aef\u8def\u7531\u6709\u4e24\u79cd\u4e0d\u540c\u7b56\u7565 HashLocationStrategy \u548c PathLocationStrategy\u3002\u524d\u8005\u662f\u4ee5 # \u540e\u9762\u7684\u8def\u5f84\u8fdb\u884c\u8def\u7531\u5904\u7406\uff0c\u901a\u8fc7 HTML5 History \u8fdb\u884c\u524d\u7aef\u8def\u7531\u7ba1\u7406\uff0c\u800c\u540e\u8005\u5219\u662f\u7c7b\u4f3c\u9875\u9762\u8bbf\u95ee\u8def\u5f84\u5e76\u6ca1\u6709 #\uff0c\u901a\u8fc7\u670d\u52a1\u7aef\u7684\u914d\u7f6e\uff0c\u80fd\u591f\u8bbf\u95ee\u6307\u5b9a URL \u90fd\u5b9a\u5411\u5230\u5f53\u524d\u9875\u9762\uff0c\u4ece\u800c\u80fd\u591f\u8fdb\u884c\u524d\u7aef\u8def\u7531\u7ba1\u7406\u3002

\u5982\u679c\u4f60\u60f3\u91c7\u7528 PathLocationStrategy \u7b56\u7565\uff0c\u5219\u9700\u8981\u5c06 ./src/app/routes/routes.module.ts \u7684 RouterModule.forRoot(routes, { useHash: true }) \u6362\u6210 RouterModule.forRoot(routes)\u3002\u540c\u65f6\u9700\u8981\u670d\u52a1\u7aef\u505a\u4e00\u4e2a\u6620\u5c04\uff0c\u6bd4\u5982\uff1a

express \u7684\u4f8b\u5b50\uff1a

app.use(express.static(path.join(__dirname, \'build\')));\n\napp.get(\'/*\', function (req, res) {\n  res.sendFile(path.join(__dirname, \'build\', \'index.html\'));\n});

egg \u7684\u4f8b\u5b50\uff1a

// controller\nexports.index = function* () {\n  yield this.render(\'App.jsx\', {\n    context: {\n      user: this.session.user,\n    },\n  });\n};\n\n// router\napp.get(\'home\', \'/*\', \'home.index\');

\u6709\u5173\u66f4\u591a Angular \u8def\u7531\u76f8\u5f53\u95ee\u9898\uff0c\u8bf7\u9605\u8bfb\u5b98\u7f51\u3002

Docker

NG-ALAIN \u63d0\u4f9b\u4e86\u4e00\u4e2a\u57fa\u4e8e nginx WEB\u670d\u52a1\u5b8c\u6574\u7684\u6784\u5efaAngular\u9879\u76ee\u7684\u955c\u50cf\u6587\u4ef6\u3002\u5176\u4e2d nginx \u662f\u91c7\u7528 nginx:1.13.5-alpine \u7684\u955c\u50cf\uff0c\u57fa\u672c\u4e0a\u53ef\u4ee5\u6ee1\u8db3 NG-ALAIN \u9879\u76ee\u7684\u826f\u597d\u8fd0\u884c\u73af\u5883\uff0c\u5018\u82e5\u6709\u66f4\u591a\u9700\u6c42\uff0c\u4f60\u53ef\u4ee5\u5229\u7528 docker run \u8f7b\u6613\u7684\u6307\u5b9a nginx.conf\u3002

1\u3001\u6784\u5efa\u955c\u50cf

\u6839\u636e Dockerfile \u6784\u5efa\u4e00\u4e2a\u5b8c\u6574\u7684 NG-ALAIN \u6240\u9700\u8981\u7684\u8fd0\u884c\u73af\u5883\u7684\u955c\u50cf\u3002

docker build -t ng-alain .

2\u3001\u8fd0\u884c

\u57fa\u4e8ecompose\uff08\u63a8\u8350\uff09

docker-compose up -d

\u5176\u7ec6\u8282\u53ef\u4ee5\u901a\u8fc7 docker-compose.yml \u4fee\u6539\u3002

\u57fa\u4e8e\u547d\u4ee4\u5f0f

docker run -d -p 80:80 --name alain ng-alain

\u6700\u540e\u4f60\u53ef\u4ee5\u8bbf\u95ee\uff1ahttp://localhost/

3\u3001\u5173\u4e8eSSL

NG-ALAIN \u63d0\u4f9b\u7684 Dockerfile \u6587\u4ef6\u76f8\u5bf9\u4e8e\u6bd4\u8f83\u7b80\u5355\uff0c\u800c\u5b9e\u9645\u9879\u76ee\u4e2d\u6700\u5e38\u7528\u7684\u662f\u5bf9SSL\u7684\u652f\u6301\u3002

\u56e0\u6b64\uff0c\u9ed8\u8ba4\u60c5\u51b5\u4e0b\u4f60\u53ef\u4ee5\u5c06\u8bc1\u4e66\u653e\u7f6e _nginx/ssl \u76ee\u5f55\u4e0b\uff0c\u5e76\u5f00\u542f _nginx/default.conf \u76f8\u5173SSL\u914d\u7f6e\u9879\u5373\u53ef\u3002

\u6700\u540e\uff0c\u589e\u52a0 docker-compose.yml \u7684 ports \u8282\u70b9\uff1a

- 443:443

\u5bb9\u5668\u90e8\u7f72

\u53c2\u8003 Angular \u5bb9\u5668\u90e8\u7f72

',meta:{order:70,title:{"en-US":"Build & Deploy","zh-CN":"\u6784\u5efa\u548c\u53d1\u5e03"},type:"Dev"},toc:[{id:"\u6784\u5efa",title:"\u6784\u5efa",h:2,children:[{id:"JavaScriptheapoutofmemory",title:"JavaScript heap out of memory",h:3},{id:"\u73af\u5883\u53d8\u91cf",title:"\u73af\u5883\u53d8\u91cf",h:3},{id:"\u5206\u6790\u6784\u5efa\u6587\u4ef6\u4f53\u79ef",title:"\u5206\u6790\u6784\u5efa\u6587\u4ef6\u4f53\u79ef",h:3}]},{id:"\u53d1\u5e03",title:"\u53d1\u5e03",h:2,children:[{id:"\u8def\u7531\u7b56\u7565",title:"\u8def\u7531\u7b56\u7565",h:3},{id:"Docker",title:"Docker",h:3},{id:"\u5bb9\u5668\u90e8\u7f72",title:"\u5bb9\u5668\u90e8\u7f72",h:3}]}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-deploy"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"faq",redirectTo:"faq/zh",pathMatch:"full"},{path:"faq/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/faq.en-US.md","zh-CN":"docs/faq.zh-CN.md"},content:{"en-US":{content:'

Please check the FAQ below before asking questions.

Basic

Can\'t Bind to since it isn\'t a known property of

When you have multiple lazy modules, you want each submodule to use the component library (for example: NgZorroAntdModule, NgxTinymceModule) should be exported in ShareModule, please refer to module registration guidelines.

Expression Changed After It Has Been Checked Error

Common mistakes under Angular, this article will help you understand why.

Can\'t bind to \'formGroup\' since it isn\'t a known property of \'form\'

Common mistakes under Angular, the use of Reactive Forms requires the introduction of ReactiveFormsModule, refer to official documentation.

Why is the page not updated after the data is modified?

The NG-ZORRO and @delon/* components work in OnPush mode by default. Mutate objects or arrays do not trigger Angular\'s change detection. Use the immutable method.

How to use @delon daily build version

NG-ALAIN provides a delon-builds repository as a daily build version. It\'s not the final stable version, but contains the latest fixed BUG, To use the latest features, you can create delon.sh in the root directory:

#!/usr/bin/env bash\nset -e\necho "Download latest @delon version"\nrm -rf delon-builds\ngit clone --depth 1 https://github.com/ng-alain/delon-builds.git\nrm -rf node_modules/@delon\nrm -rf node_modules/ng-alain\nrsync -am delon-builds/ node_modules/\nNG_ALAIN_VERSION=$(node -p "require(\'./node_modules/ng-alain/package.json\').version")\nrm -rf delon-builds\necho "Using ng-alain version: ${NG_ALAIN_VERSION}"

When you need to use the daily build version of @delon, you only need to run:

bash delon.sh

If in Windows environment, please use WSL to execute Bash scripts.

Installation

Why can\'t I find the ng-zorro-antd/src/*.less style?

Two situations:

  • Using cnpm to install dependencies, you will not be able to find style files. This is because cnpm is in the form of a soft link path, which causes the ng-zorro-antd folder name to change, so it is recommended to use the yarn install dependency package instead.

  • The ng-zorro-antd version is too old to cause some components to fail to load into the appropriate style

How to use Taobao source correctly?

The simplest is to use the networkEnv plugin.

Or manually repair:

yarn config set registry https://registry.npmmirror.com\nyarn config set sass_binary_site https://npmmirror.com/mirrors/node-sass\n# restore\nyarn config delete registry\nyarn config delete sass_binary_site

Configuration

How do I deploy the antd icon locally?

First, the latest iconfont file can go to this link (mirror) Download.

Finally, redefine the new path in src/styles/theme.less:

@icon-url: "/assets/iconfont";

Use an absolute path or CDN address.

Missing locale data for the locale "zh-cn"

For missing language imports, refer to app.module.ts.

How to deploy ng-alain.com documentation site in local

Online documents will only retain the data of the last three major version numbers. If the version is low, you can view it through local deployment:

git clone --depth 1 -b full https://github.com/ng-alain/archive-docs.git ng-alain-doc\ncd ng-alain-doc\nyarn\nyarn start

Fix the abnormal display of the lower part of the 360 browser

The built-in Chrome core of some 360 browsers is too low, resulting in some CSS3 not supported, you can manually increase .browserslistrc For more details, refer to #2310

',meta:{order:20,title:{"en-US":"FAQ","zh-CN":"\u5e38\u89c1\u95ee\u9898"},type:"Other"},toc:[{id:"Basic",title:"Basic",h:2,children:[{id:"Can'tBindtosinceitisn'taknownpropertyof",title:"Can't Bind to since it isn't a known property of",h:3},{id:"ExpressionChangedAfterItHasBeenCheckedError",title:"Expression Changed After It Has Been Checked Error",h:3},{id:"Can'tbindto'formGroup'sinceitisn'taknownpropertyof'form'",title:"Can't bind to 'formGroup' since it isn't a known property of 'form'",h:3},{id:"Whyisthepagenotupdatedafterthedataismodified",title:"Why is the page not updated after the data is modified?",h:3},{id:"Howtouse@delondailybuildversion",title:"How to use @delon daily build version",h:3}]},{id:"Installation",title:"Installation",h:2,children:[{id:"Whycan'tIfindtheng-zorro-antd/src/*.lessstyle",title:"Why can't I find the ng-zorro-antd/src/*.less style?",h:3},{id:"HowtouseTaobaosourcecorrectly",title:"How to use Taobao source correctly?",h:3}]},{id:"Configuration",title:"Configuration",h:2,children:[{id:"HowdoIdeploytheantdiconlocally",title:"How do I deploy the antd icon locally?",h:3},{id:'Missinglocaledataforthelocale"zh-cn"',title:'Missing locale data for the locale "zh-cn"',h:3},{id:"Howtodeployng-alain.comdocumentationsiteinlocal",title:"How to deploy ng-alain.com documentation site in local",h:3},{id:"Fixtheabnormaldisplayofthelowerpartofthe360browser",title:"Fix the abnormal display of the lower part of the 360 browser",h:3}]}]},"zh-CN":{content:'

\u63d0\u95ee\u4e4b\u524d\uff0c\u8bf7\u5148\u67e5\u9605\u4e0b\u9762\u7684\u5e38\u89c1\u95ee\u9898\u3002

\u57fa\u7840

Can\'t Bind to since it isn\'t a known property of

\u5f53\u4f60\u6709\u591a\u4e2a\u61d2\u6a21\u5757\u65f6\uff0c\u5e0c\u671b\u6bcf\u4e2a\u5b50\u6a21\u5757\u90fd\u9700\u8981\u4f7f\u7528\u7ec4\u4ef6\u5e93\u65f6\uff08\u4f8b\u5982\uff1aNgZorroAntdModule\u3001NgxTinymceModule\uff09\u5e94\u5728 ShareModule \u4e2d export\uff0c\u8bf7\u53c2\u8003\u6a21\u5757\u6ce8\u518c\u6307\u5bfc\u539f\u5219\u3002

Expression Changed After It Has Been Checked Error \u9519\u8bef

Angular \u4e0b\u5e38\u89c1\u9519\u8bef\uff0c\u8fd9\u7bc7\u6587\u7ae0 \u4f1a\u5e2e\u52a9\u4f60\u7406\u89e3\u539f\u56e0\u3002

Can\'t bind to \'formGroup\' since it isn\'t a known property of \'form\'

Angular \u4e0b\u5e38\u89c1\u9519\u8bef\uff0c\u4f7f\u7528 Reactive Forms \u9700\u8981\u989d\u5916\u5f15\u5165 ReactiveFormsModule\uff0c\u53ef\u4ee5\u53c2\u8003\u5b98\u65b9\u6587\u6863\u3002

\u6570\u636e\u4fee\u6539\u540e\u9875\u9762\u4e3a\u4ec0\u4e48\u6ca1\u6709\u66f4\u65b0

NG-ZORRO \u53ca @delon/* \u7ec4\u4ef6\u9ed8\u8ba4\u5728 OnPush \u6a21\u5f0f\u4e0b\u5de5\u4f5c\uff0cmutate \u5bf9\u8c61\u6216\u8005\u6570\u7ec4\u4e0d\u4f1a\u89e6\u53d1 Angular \u7684\u53d8\u66f4\u68c0\u6d4b\uff0c\u8bf7\u4f7f\u7528 immutable \u65b9\u5f0f\u3002

\u5982\u4f55\u4f7f\u7528@delon\u6bcf\u65e5\u6784\u5efa\u7248\u672c

NG-ALAIN \u63d0\u4f9b\u4e00\u4e2a delon-builds \u4ed3\u50a8\u4f5c\u4e3a\u6bcf\u65e5\u6784\u5efa\u7248\u672c\uff0c\u5b83\u5e76\u4e0d\u662f\u6700\u7ec8\u7a33\u5b9a\u7248\u672c\uff0c\u4f46\u5305\u542b\u6700\u65b0\u5df2\u4fee\u590dBUG\u3001\u6700\u65b0\u529f\u80fd\uff0c\u8981\u4f7f\u7528\u53ef\u4ee5\u5728\u6839\u76ee\u5f55\u521b\u5efa delon.sh\uff1a

#!/usr/bin/env bash\nset -e\necho "Download latest @delon version"\nrm -rf delon-builds\ngit clone --depth 1 https://github.com/ng-alain/delon-builds.git\nrm -rf node_modules/@delon\nrm -rf node_modules/ng-alain\nrsync -am delon-builds/ node_modules/\nNG_ALAIN_VERSION=$(node -p "require(\'./node_modules/ng-alain/package.json\').version")\nrm -rf delon-builds\necho "Using ng-alain version: ${NG_ALAIN_VERSION}"

\u5f53\u9700\u8981\u4f7f\u7528@delon\u7684\u6bcf\u65e5\u6784\u5efa\u7248\u672c\uff0c\u53ea\u9700\u8981\u5728\u8fd0\u884c\uff1a

bash delon.sh

\u5982\u679c\u662f Windows \u73af\u5883\uff0c\u8bf7\u4f7f\u7528 WSL \u6765\u6267\u884c Bash \u811a\u672c\u3002

\u5b89\u88c5

\u4e3a\u4ec0\u4e48\u627e\u4e0d\u5230 ng-zorro-antd/src/*.less \u6837\u5f0f\uff1f

\u4e24\u79cd\u60c5\u51b5\uff1a

  • \u4f7f\u7528 cnpm \u5b89\u88c5\u4f9d\u8d56\u5305\uff0c\u4f1a\u9047\u5230\u65e0\u6cd5\u627e\u5230\u6837\u5f0f\u6587\u4ef6\u3002\u8fd9\u662f\u7531\u4e8e cnpm \u91c7\u7528\u7684\u662f\u8f6f\u94fe\u63a5\u8def\u5f84\u5f62\u5f0f\uff0c\u5bfc\u81f4 ng-zorro-antd \u6587\u4ef6\u5939\u540d\u6709\u6240\u53d8\u52a8\uff0c\u56e0\u6b64\u5efa\u8bae\u6539\u7528 yarn \u5b89\u88c5\u4f9d\u8d56\u5305\uff0c\u5982\u679c\u662f\u7f51\u7edc\u56e0\u7d20\uff0c\u8bf7\u53c2\u8003\u4e0b\u65b9\u7684\u5982\u4f55\u6b63\u786e\u4f7f\u7528\u6dd8\u5b9d\u6e90\u3002

  • ng-zorro-antd \u7248\u672c\u8fc7\u65e7\u5bfc\u81f4\u90e8\u5206\u7ec4\u4ef6\u65e0\u6cd5\u52a0\u8f7d\u5230\u76f8\u5e94\u6837\u5f0f

\u5982\u4f55\u6b63\u786e\u4f7f\u7528\u6dd8\u5b9d\u6e90\uff1f

\u6700\u7b80\u5355\u662f\u4f7f\u7528 networkEnv \u63d2\u4ef6\u3002

\u6216\u624b\u52a8\u4fee\u590d\uff1a

yarn config set registry https://registry.npmmirror.com\nyarn config set sass_binary_site https://npmmirror.com/mirrors/node-sass\n# \u6062\u590d\nyarn config delete registry\nyarn config delete sass_binary_site

\u914d\u7f6e

\u5982\u4f55\u672c\u5730\u90e8\u7f72 antd \u56fe\u6807\uff1f

\u9996\u5148\uff0c\u6700\u65b0\u7684 iconfont \u6587\u4ef6\u53ef\u4ee5\u5230 \u6b64\u94fe\u63a5\uff08\u955c\u50cf\uff09 \u4e0b\u8f7d\u3002

\u6700\u540e\uff0c\u5728 src/styles/theme.less \u91cd\u65b0\u5b9a\u4e49\u65b0\u7684\u8def\u5f84\uff1a

@icon-url: "/assets/iconfont";

\u4f7f\u7528\u7edd\u5bf9\u8def\u5f84\u6216CDN\u5730\u5740\u3002

Missing locale data for the locale "zh-cn"

\u7f3a\u5c11\u8bed\u8a00\u5bfc\u5165\uff0c\u53c2\u8003app.module.ts\u3002

\u5982\u4f55\u672c\u5730\u90e8\u7f72ng-alain.com\u6587\u6863

\u7ebf\u4e0a\u6587\u6863\u5c06\u53ea\u4fdd\u7559\u6700\u8fd1\u4e09\u4e2a\u4e3b\u7248\u672c\u53f7\u7684\u6570\u636e\uff0c\u82e5\u662f\u4f4e\u7248\u672c\u53ef\u4ee5\u901a\u8fc7\u672c\u5730\u90e8\u7f72\u6765\u67e5\u770b\uff1a

git clone --depth 1 -b full https://github.com/ng-alain/archive-docs.git ng-alain-doc\ncd ng-alain-doc\nyarn\nyarn start

\u4fee\u590d360\u6d4f\u89c8\u5668\u4e0b\u90e8\u5206\u663e\u793a\u5f02\u5e38

\u90e8\u5206360\u6d4f\u89c8\u5668\u5185\u7f6e\u7684 Chrome \u6838\u5fc3\u8fc7\u4f4e\uff0c\u5bfc\u81f4\u90e8\u5206 CSS3 \u672a\u652f\u6301\uff0c\u53ef\u4ee5\u624b\u52a8\u589e\u52a0 .browserslistrc \u66f4\u591a\u7ec6\u8282\u53c2\u8003 #2310

',meta:{order:20,title:{"en-US":"FAQ","zh-CN":"\u5e38\u89c1\u95ee\u9898"},type:"Other"},toc:[{id:"\u57fa\u7840",title:"\u57fa\u7840",h:2,children:[{id:"Can'tBindtosinceitisn'taknownpropertyof",title:"Can't Bind to since it isn't a known property of",h:3},{id:"ExpressionChangedAfterItHasBeenCheckedError\u9519\u8bef",title:"Expression Changed After It Has Been Checked Error \u9519\u8bef",h:3},{id:"Can'tbindto'formGroup'sinceitisn'taknownpropertyof'form'",title:"Can't bind to 'formGroup' since it isn't a known property of 'form'",h:3},{id:"\u6570\u636e\u4fee\u6539\u540e\u9875\u9762\u4e3a\u4ec0\u4e48\u6ca1\u6709\u66f4\u65b0",title:"\u6570\u636e\u4fee\u6539\u540e\u9875\u9762\u4e3a\u4ec0\u4e48\u6ca1\u6709\u66f4\u65b0",h:3},{id:"\u5982\u4f55\u4f7f\u7528@delon\u6bcf\u65e5\u6784\u5efa\u7248\u672c",title:"\u5982\u4f55\u4f7f\u7528@delon\u6bcf\u65e5\u6784\u5efa\u7248\u672c",h:3}]},{id:"\u5b89\u88c5",title:"\u5b89\u88c5",h:2,children:[{id:"\u4e3a\u4ec0\u4e48\u627e\u4e0d\u5230ng-zorro-antd/src/*.less\u6837\u5f0f\uff1f",title:"\u4e3a\u4ec0\u4e48\u627e\u4e0d\u5230 ng-zorro-antd/src/*.less \u6837\u5f0f\uff1f",h:3},{id:"\u5982\u4f55\u6b63\u786e\u4f7f\u7528\u6dd8\u5b9d\u6e90\uff1f",title:"\u5982\u4f55\u6b63\u786e\u4f7f\u7528\u6dd8\u5b9d\u6e90\uff1f",h:3}]},{id:"\u914d\u7f6e",title:"\u914d\u7f6e",h:2,children:[{id:"\u5982\u4f55\u672c\u5730\u90e8\u7f72antd\u56fe\u6807\uff1f",title:"\u5982\u4f55\u672c\u5730\u90e8\u7f72 antd \u56fe\u6807\uff1f",h:3},{id:'Missinglocaledataforthelocale"zh-cn"',title:'Missing locale data for the locale "zh-cn"',h:3},{id:"\u5982\u4f55\u672c\u5730\u90e8\u7f72ng-alain.com\u6587\u6863",title:"\u5982\u4f55\u672c\u5730\u90e8\u7f72ng-alain.com\u6587\u6863",h:3},{id:"\u4fee\u590d360\u6d4f\u89c8\u5668\u4e0b\u90e8\u5206\u663e\u793a\u5f02\u5e38",title:"\u4fee\u590d360\u6d4f\u89c8\u5668\u4e0b\u90e8\u5206\u663e\u793a\u5f02\u5e38",h:3}]}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-faq"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"getting-started",redirectTo:"getting-started/zh",pathMatch:"full"},{path:"getting-started/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/getting-started.en-US.md","zh-CN":"docs/getting-started.zh-CN.md"},content:{"en-US":{content:'

Foreword

NG-ALAIN is a production-ready solution for admin interfaces. Built on the design principles developed by Ant Design, this project introduces higher level components; we have developed templates, components, and a corresponding design kit to improve the user and development experience for admin interfaces.

How to read document

This document uses the following conventions:

  • API

    • [] Input Property

    • () Output Event

    • [()] Two-way binding

    • ng-content Component content placeholders

    • #tpl Refers <ng-template #tpl>

Preparation

You will need node and git. The project is based on Typescript, Angular, g2, @delon and ng-zorro-antd. It would be helpful if you have pre-existing knowledge on those.

Installation

CLI (Recommend)

Please make sure global Angular Cli is latest version via ng version command, please refer to CLI Command Reference for how to upgrade.

yarn global add @angular/cli\nng new my-project --style less --routing --package-manager yarn\ncd my-project\nng add ng-alain\nyarn start\n# Or use HMR mode by: yarn run hmr

Please refer to Schematics for more details.

Clone the Git Repository

git clone --depth=1 https://github.com/ng-alain/ng-alain.git my-project\ncd my-project\nyarn\nyarn start\n# Or use HMR mode by: yarn run hmr

Note: Installing with the CLI is a clean scaffolding; using clone the git repository include all example pages.

Scaffolding

NG-ALAIN is a standard Angular CLI project that includes common routes for admins and demonstrates our component library. The project layout is as follows:

\u251c\u2500\u2500 _mock                                       # Mock Data rule\n\u251c\u2500\u2500 src\n\u2502\xa0\xa0 \u251c\u2500\u2500 app\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 core                                # Core module\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 i18n\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 net\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 default.interceptor.ts      # Default HTTP interceptor\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 services\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 startup.service.ts          # Initialize project configuration\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 core.module.ts                  # Core module file\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 layout                              # Core layout\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 routes\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 **                              # Business directory\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 routes.module.ts                # Service routing module\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 routes-routing.module.ts        # Service routes registration\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 shared                              # Shared module\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 shared-delon.module.ts          # @Delon/* import of secondary shared modules\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 shared-zorro.module.ts          # NG-ZORRO import of secondary shared modules\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 shared.module.ts                # Shared module file\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 app.component.ts                    # Root component\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 app.module.ts                       # Root module\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 global-config.module.ts             # @delon & ng-zorro global config\n\u2502\xa0\xa0 \u251c\u2500\u2500 assets                                  # Local static resource\n\u2502\xa0\xa0 \u251c\u2500\u2500 environments                            # Environment variable configuration\n\u2502\xa0\xa0 \u251c\u2500\u2500 styles                                  # Style directory\n\u2514\u2500\u2500 \u2514\u2500\u2500 style.less                              # Style guide entry

Development

yarn start

This will automatically open http://localhost:4200. If you see the following page then you have succeeded.

Environment Support

\u540d\u79f0\u63cf\u8ff0
angular.jsonAngular \u5de5\u4f5c\u533a\u53ca\u9879\u76ee\u7684\u914d\u7f6e\u6587\u4ef6\uff0c\u53c2\u8003Angular\u6587\u6863
_mockMock \u6570\u636e\u89c4\u5219\u76ee\u5f55\uff0c\u82e5\u4f60\u901a\u8fc7 \u547d\u4ee4\u884c\u5de5\u5177 \u521b\u5efa\u9879\u76ee\u65f6\u53ef\u4ee5\u6307\u5b9a --mock \u53c2\u6570\u51b3\u5b9a\u662f\u5426\u9700\u8981 Mock \u529f\u80fd
src/app/core/core.module.ts\u6838\u5fc3\u6a21\u5757\uff0c\u53ea\u4f1a\u5bfc\u5165\u4e00\u6b21\u3002\u56e0\u6b64\uff0c\u9488\u5bf9\u6574\u4e2a\u4e1a\u52a1\u6a21\u5757\u90fd\u9700\u8981\u4f7f\u7528\u7684\u7eaf\u670d\u52a1\u7c7b\uff08\u4f8b\u5982\uff1a\u6d88\u606f\u3001\u6570\u636e\u8bbf\u95ee\u7b49\uff09
src/app/core/i18n\u56fd\u9645\u5316\u6570\u636e\u52a0\u8f7d\u53ca\u5904\u7406\u76f8\u5173\u7c7b\uff0c\u82e5\u4f60\u901a\u8fc7 \u547d\u4ee4\u884c\u5de5\u5177 \u521b\u5efa\u9879\u76ee\u65f6\u53ef\u4ee5\u6307\u5b9a -di \u53c2\u6570\u51b3\u5b9a\u662f\u5426\u9700\u8981\u56fd\u9645\u5316\u652f\u6301
src/app/core/net\u9ed8\u8ba4\u62e6\u622a\u5668\uff0c\u4f60\u53ef\u4ee5\u5728\u8fd9\u91cc\u7edf\u4e00\u5904\u7406\u8bf7\u6c42\u53c2\u6570\u3001\u8bf7\u6c42\u5f02\u5e38\u3001\u4e1a\u52a1\u5f02\u5e38\u7b49\u52a8\u4f5c
src/app/core/services/startup.service.ts\u5f53\u4f60\u9700\u8981\u5728 Angular \u542f\u52a8\u524d\u6267\u884c\u4e00\u4e9b\u8fdc\u7a0b\u6570\u636e\uff08\u4f8b\u5982\uff1a\u5e94\u7528\u4fe1\u606f\u3001\u7528\u6237\u4fe1\u606f\u7b49\uff09\u65f6\u975e\u5e38\u6709\u7528
src/app/layout\u5e03\u5c40\u76ee\u5f55\uff0c\u5305\u542b\u57fa\u7840\u5e03\u5c40\u3001\u7a7a\u767d\u5e03\u5c40\u3001\u7528\u6237\u767b\u5f55\u5e03\u5c40
src/app/routes\u4e1a\u52a1\u6a21\u5757\uff0c\u4f60\u7684\u6240\u6709\u4e1a\u52a1\u4ee3\u7801\u90fd\u5c06\u5728\u8fd9\u91cc
src/app/shared/shared.module.ts\u5171\u4eab\u6a21\u5757\uff0c\u6307\u5f53\u4f60\u9700\u8981\u9488\u5bf9\u6574\u4e2a\u4e1a\u52a1\u6a21\u5757\u90fd\u9700\u8981\u4f7f\u7528\u7684\u4e00\u4e9b\u7b2c\u4e09\u65b9\u6a21\u5757\u3001\u81ea\u5b9a\u4e49\u7ec4\u4ef6\u3001\u81ea\u5b9a\u4e49\u6307\u4ee4\uff0c\u90fd\u5e94\u8be5\u5b58\u5728\u8fd9\u91cc\u3002\u9664\u6b64\u4e4b\u5916\uff0c\u9488\u5bf9 @delon & NG-ZORRO \u5206\u522b\u6784\u5efa\u4e86 shared-delon.module.ts\u3001shared-zorro.module.ts \u4e24\u79cd\u6b21\u7ea7\u5171\u4eab\u6a21\u5757\u7684\u5bfc\u5165\u3002
src/app/global-config.module.ts\u9488\u5bf9 @delon & NG-ZORRO \u7684\u5168\u5c40\u914d\u7f6e\u9879
src/environments\u5e94\u7528\u73af\u5883\u53d8\u91cf\uff0c\u5305\u542b\u4ee5\u4e0b\u503c\uff1aSERVER_URL \u6240\u6709HTTP\u8bf7\u6c42\u7684\u524d\u7f00\uff1bproduction \u662f\u5426\u751f\u4ea7\u73af\u5883\uff1buseHash \u8def\u7531\u662f\u5426useHash\u6a21\u5f0f
IE / Edge
IE / Edge
Firefox
Firefox
Chrome
Chrome
Safari
Safari
Opera
Opera
Electron
Electron
Edgelast 2 versionslast 2 versionslast 2 versionslast 2 versionslast 2 versions

Contributing

Please read our CONTRIBUTING.md first.

If you\'d like to help us improve NG-ZORRO, just create a Pull Request. Feel free to report bugs and issues here.

If you\'re new to posting issues, we ask that you read How To Ask Questions The Smart Way(This guide does not provide actual support services for this project!) and How to Ask a Question in Open Source Community and How to Report Bugs Effectively prior to posting. Well written bug reports help us help you!

Need Help?

For questions on how to use ng-alain, please post questions to Stack Overflow using the ng-alain tag.

As always, we encourage experienced users to help those who are not familiar with ng-alain!

If you would like to Donate\n to NG-A

',meta:{order:10,title:"Getting Started",type:"Basic",i18n:"need-update"},toc:[{id:"Foreword",title:"Foreword",h:2},{id:"Preparation",title:"Preparation",h:2},{id:"Installation",title:"Installation",h:2,children:[{id:"CLIRecommend",title:"CLI (Recommend)",h:3},{id:"ClonetheGitRepository",title:"Clone the Git Repository",h:3}]},{id:"Scaffolding",title:"Scaffolding",h:2},{id:"Development",title:"Development",h:2},{id:"EnvironmentSupport",title:"Environment Support",h:2},{id:"Contributing",title:"Contributing",h:2},{id:"NeedHelp",title:"Need Help?",h:2},{id:"DONATE",title:"DONATE",h:2}]},"zh-CN":{content:'

\u4ec0\u4e48\u662fNG-ALAIN

NG-ALAIN \u662f\u4e00\u4e2a\u4f01\u4e1a\u7ea7\u4e2d\u540e\u53f0\u524d\u7aef/\u8bbe\u8ba1\u89e3\u51b3\u65b9\u6848\u811a\u624b\u67b6\uff0c\u6211\u4eec\u79c9\u627f Ant Design \u7684\u8bbe\u8ba1\u4ef7\u503c\u89c2\uff0c\u76ee\u6807\u4e5f\u975e\u5e38\u7b80\u5355\uff0c\u5e0c\u671b\u5728Angular\u4e0a\u9762\u5f00\u53d1\u4f01\u4e1a\u540e\u53f0\u66f4\u7b80\u5355\u3001\u66f4\u5feb\u901f\u3002\u968f\u7740\u300e\u8bbe\u8ba1\u8005\u300f\u7684\u4e0d\u65ad\u53cd\u9988\uff0c\u5c06\u6301\u7eed\u8fed\u4ee3\uff0c\u9010\u6b65\u6c89\u6dc0\u548c\u603b\u7ed3\u51fa\u66f4\u591a\u8bbe\u8ba1\u6a21\u5f0f\u548c\u76f8\u5e94\u7684\u4ee3\u7801\u5b9e\u73b0\uff0c\u9610\u8ff0\u4e2d\u540e\u53f0\u4ea7\u54c1\u6a21\u677f/\u7ec4\u4ef6/\u4e1a\u52a1\u573a\u666f\u7684\u6700\u4f73\u5b9e\u8df5\uff0c\u4e5f\u5341\u5206\u671f\u5f85\u4f60\u7684\u53c2\u4e0e\u548c\u5171\u5efa\u3002

\u73af\u5883\u642d\u5efa

Angular \u5f00\u53d1\u73af\u5883\u81f3\u5c11\u9700\u8981\u5b89\u88c5 Node.js(Node.js \u5185\u7f6e\u4e86 npm \u65e0\u987b\u5355\u72ec\u5b89\u88c5\uff0c\u4f46\u63a8\u8350\u4f7f\u7528 Yarn \u4f46\u4f60\u9700\u8981\u5355\u72ec\u989d\u5916\u5b89\u88c5\uff09\u3001VSCode\u7f16\u8f91\u5668\uff0c\u5176\u4e2d Node.js \u5efa\u8bae\u5b89\u88c5 LTS \u7248\u672c\uff0c\u5b89\u88c5\u5b8c\u6210\u540e\u53ef\u4ee5\u901a\u8fc7\u7ec8\u7aef\u7a97\u53e3\u4e2d\u8fd0\u884c\uff1a

node -v # \u67e5\u770b Node.js \u5f53\u524d\u7248\u672c\nyarn -v # \u67e5\u770b Yarn \u5f53\u524d\u7248\u672c

Yarn \u9ed8\u8ba4\u4ece\u56fd\u5916\u6e90\u6765\u4e0b\u8f7d\u5305\u4fe1\u606f\uff0c\u9274\u4e8e\u56fd\u5185\u73af\u5883\u56e0\u7d20\uff0c\u5728\u5f00\u59cb\u4e0b\u4e00\u6b65\u524d\u5148\u8bbe\u5b9a\u6dd8\u5b9d\u63d0\u4f9b\u955c\u50cf\uff1a

yarn config set registry https://registry.npmmirror.com\nyarn config set sass_binary_site https://npmmirror.com/mirrors/node-sass\n# restore\nyarn config delete registry\nyarn config delete sass_binary_site

\u4e5f\u53ef\u4ee5\u4f7f\u7528 nrm \u5305\uff0c\u53ef\u4ee5\u5feb\u901f\u5207\u6362\u4e0d\u540c\u56fd\u5185\u955c\u50cf\u6e90\u3002

\u5b89\u88c5

\u5168\u5c40 Angular Cli

\u5b89\u88c5\u4e4b\u524d\u8bf7\u5148\u786e\u4fdd\u672c\u5730\u5df2\u7ecf\u5b89\u88c5\u5168\u5c40 Angular Cli\uff0c\u53ea\u6709\u8fd9\u6837\u624d\u80fd\u968f\u65f6\u968f\u5730\u5728\u7ec8\u7aef\u4f7f\u7528 ng \u547d\u4ee4\uff0c\u53ef\u4ee5\u901a\u8fc7\u7ec8\u7aef\u7a97\u53e3\u4e2d\u8fd0\u884c\uff1a

yarn global add @angular/cli

\u521b\u5efaNG-ALAIN\u9879\u76ee

NG-ALAIN \u5fc5\u987b\u5148\u521b\u5efa\u4e00\u4e2a\u5168\u65b0\u7684 Angular \u9879\u76ee\uff0c\u53ef\u4ee5\u901a\u8fc7\u7ec8\u7aef\u7a97\u53e3\u4e2d\u8fd0\u884c\uff1a

ng new my-project --style less --routing --package-manager yarn

\u5982\u679c\u4f60\u60f3\u4e86\u89e3 --style\u3001--routing \u53c2\u6570\uff0c\u8bf7\u53c2\u8003 ng new \u6587\u6863\u3002

\u63a5\u4e0b\u6765\u53ea\u9700\u8981\u5c06 NG-ALAIN \u6dfb\u52a0\u5230 my-project \u9879\u76ee\u4e2d\u5373\u53ef\uff0c\u5728 my-project \u76ee\u5f55\u4e0b\u901a\u8fc7\u7ec8\u7aef\u7a97\u53e3\u4e2d\u8fd0\u884c\uff1a

cd my-project\nng add ng-alain

NG-ALAIN \u4f1a\u8be2\u95ee\u662f\u5426\u9700\u8981\u4e00\u4e9b\u989d\u5916\u7684\u63d2\u4ef6\uff0c\u4e00\u5f00\u59cb\u5b8c\u5168\u53ef\u4ee5\u4e00\u8def\u56de\u8f66\uff0c\u8fd9\u4e9b\u63d2\u4ef6\u90fd\u662f\u53ef\u63d2\u62d4\uff0c\u540e\u671f\u53ef\u4ee5\u81ea\u884c\u6dfb\u52a0\u4e0e\u79fb\u9664\u3002

\u4ee5\u4e0a\u53ea\u4f1a\u751f\u6210\u5e72\u51c0\u7684\u9879\u76ee\uff0c\u53ef\u4ee5\u76f4\u63a5\u7528\u4e8e\u751f\u4ea7\u73af\u5883\u4e2d\u3002\u4f60\u53ef\u80fd\u5728\u9884\u89c8\u4e0a\u770b\u5230\u8bb8\u591a\u793a\u4f8b\u9875\uff0c\u5b83\u4eec\u5168\u90fd\u53ef\u4ee5\u5728 Github \u67e5\u770b\u5230\u6e90\u4ee3\u7801\uff0c\u5f53\u7136\u4e5f\u53ef\u4ee5\u901a\u8fc7 Git \u514b\u9686\u4ee3\u7801\u7684\u5f62\u5f0f\u83b7\u5f97\uff1a

git clone --depth=1 https://github.com/ng-alain/ng-alain.git my-project\ncd my-project\nyarn install

\u8fd0\u884c

yarn start

\u542f\u52a8\u5b8c\u6210\u540e\u4f1a\u6253\u5f00\u6d4f\u89c8\u5668\u8bbf\u95ee http://localhost:4200\uff0c\u82e5\u4f60\u770b\u5230\u5982\u4e0b\u9875\u9762\u5219\u4ee3\u8868\u6210\u529f\u4e86\u3002

\u606d\u559c\u4f60\uff0c\u4f60\u5df2\u7ecf\u6210\u529f\u90e8\u7f72\u4e00\u4e2a NG-ALAIN \u9879\u76ee\u3002

\u652f\u6301\u73af\u5883

IE / Edge
IE / Edge
Firefox
Firefox
Chrome
Chrome
Safari
Safari
Opera
Opera
Electron
Electron
Edgelast 2 versionslast 2 versionslast 2 versionslast 2 versionslast 2 versions

\u5982\u4f55\u8d21\u732e

\u5728\u4efb\u4f55\u5f62\u5f0f\u7684\u53c2\u4e0e\u524d\uff0c\u8bf7\u5148\u9605\u8bfb \u8d21\u732e\u8005\u6587\u6863\u3002\u5982\u679c\u4f60\u5e0c\u671b\u53c2\u4e0e\u8d21\u732e\uff0c\u6b22\u8fce Pull Request\uff0c\u6216\u7ed9\u6211\u4eec \u62a5\u544a Bug\u3002

\u5f3a\u70c8\u63a8\u8350\u9605\u8bfb \u300a\u63d0\u95ee\u7684\u667a\u6167\u300b(\u672c\u6307\u5357\u4e0d\u63d0\u4f9b\u6b64\u9879\u76ee\u7684\u5b9e\u9645\u652f\u6301\u670d\u52a1\uff01)\u3001\u300a\u5982\u4f55\u5411\u5f00\u6e90\u793e\u533a\u63d0\u95ee\u9898\u300b \u548c \u300a\u5982\u4f55\u6709\u6548\u5730\u62a5\u544a Bug\u300b\u3001\u300a\u5982\u4f55\u5411\u5f00\u6e90\u9879\u76ee\u63d0\u4ea4\u65e0\u6cd5\u89e3\u7b54\u7684\u95ee\u9898\u300b\uff0c\u66f4\u597d\u7684\u95ee\u9898\u66f4\u5bb9\u6613\u83b7\u5f97\u5e2e\u52a9\u3002

\u793e\u533a\u4e92\u52a9

\u5982\u679c\u60a8\u5728\u4f7f\u7528\u7684\u8fc7\u7a0b\u4e2d\u78b0\u5230\u95ee\u9898\uff0c\u53ef\u4ee5\u901a\u8fc7\u4e0b\u9762\u51e0\u4e2a\u9014\u5f84\u5bfb\u6c42\u5e2e\u52a9\uff0c\u540c\u65f6\u6211\u4eec\u4e5f\u9f13\u52b1\u8d44\u6df1\u7528\u6237\u901a\u8fc7\u4e0b\u9762\u7684\u9014\u5f84\u7ed9\u65b0\u4eba\u63d0\u4f9b\u5e2e\u52a9\u3002

\u901a\u8fc7 Stack Overflow \u6216\u8005 Segment Fault \u63d0\u95ee\u65f6\uff0c\u5efa\u8bae\u52a0\u4e0a ng-alain \u6807\u7b7e\u3002

  1. QQ \u7fa4

  2. Segment Fault\uff08\u4e2d\u6587\uff09

  3. \u52a0\u5165 NG-ALAIN \u81ea\u52a9\u670d\u52a1\u7fa4\uff08\u4e2d\u6587\uff09

\u6350\u52a9

\u5982\u679c\u4f60\u89c9\u5f97 NG-ALAIN \u4e0d\u9519\uff0c\u53ef\u4ee5\u8003\u8651\u81ea\u613f\u4e3a\u672c\u7ad9\u6253\u8d4f\u6216\u6350\u52a9\u3002

{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/global-config.en-US.md","zh-CN":"docs/global-config.zh-CN.md"},content:{"en-US":{content:'

We add support of global configuration to many components. You can define the default behavior of the component through global configuration, thus reducing the code that needs to be written in the template, and support changing global config at runtime.

How to Use?

If you want to provide default configurations to some components, you should provide an object that implements the interface AlainConfig with the injection token ALAIN_CONFIG, in the root module (in another word, to the root injector). Like this:

// global-config.module.ts\nimport { AlainConfig, ALAIN_CONFIG } from \'@delon/util/config\';\n\nconst alainConfig: AlainConfig = {\n  st: { ps: 3 },\n};\n\n@NgModule({\n  providers: [\n    { provide: ALAIN_CONFIG, useValue: alainConfig },\n  ],\n})\nexport class GlobalConfigModule {}

These global configuration would be injected into a service named AlainConfigService and gets stored.

About NG-ZORRO

Please refer to NG-ZORRO Website Documentation

',meta:{order:90,title:{"en-US":"Global Configuration","zh-CN":"\u5168\u5c40\u914d\u7f6e\u9879"},type:"Dev"},toc:[{id:"HowtoUse",title:"How to Use?",h:2},{id:"AboutNG-ZORRO",title:"About NG-ZORRO",h:2}]},"zh-CN":{content:'

\u6211\u4eec\u7ed9\u4f17\u591a\u7ec4\u4ef6\u6dfb\u52a0\u4e86\u5168\u5c40\u914d\u7f6e\u529f\u80fd\uff0c\u4f60\u53ef\u4ee5\u901a\u8fc7\u5168\u5c40\u914d\u7f6e\u6765\u5b9a\u4e49\u7ec4\u4ef6\u7684\u9ed8\u8ba4\u884c\u4e3a\uff0c\u4ece\u800c\u51cf\u5c11\u5728\u6a21\u677f\u4e2d\u9700\u8981\u5199\u7684\u4ee3\u7801\uff08\u8ba9\u4f60\u7684\u4ee3\u7801\u66f4\u52a0\u6e05\u723d\uff09\uff0c\u8fd8\u80fd\u5728\u8fd0\u884c\u65f6\u4fee\u6539\u5168\u5c40\u914d\u7f6e\u9879\u3002

\u5982\u4f55\u4f7f\u7528

\u60f3\u8981\u4e3a\u67d0\u4e9b\u7ec4\u4ef6\u63d0\u4f9b\u9ed8\u8ba4\u914d\u7f6e\u9879\uff0c\u8bf7\u5728\u6839\u6ce8\u5165\u5668\u4e2d\u6839\u636e\u6ce8\u5165\u4ee4\u724c ALAIN_CONFIG \u63d0\u4f9b\u4e00\u4e2a\u7b26\u5408 AlainConfig \u63a5\u53e3\u7684\u5bf9\u8c61\uff0c\u4f8b\u5982\uff1a

// global-config.module.ts\nimport { AlainConfig, ALAIN_CONFIG } from \'@delon/util/config\';\n\nconst alainConfig: AlainConfig = {\n  st: { ps: 3 },\n};\n\n@NgModule({\n  providers: [\n    { provide: ALAIN_CONFIG, useValue: alainConfig },\n  ],\n})\nexport class GlobalConfigModule {}

\u8fd9\u4e9b\u5168\u5c40\u914d\u7f6e\u9879\u5c06\u4f1a\u88ab\u6ce8\u5165 AlainConfigService \u5f53\u4e2d\u5e76\u4fdd\u5b58\u3002

\u5173\u4e8e NG-ZORRO \u5168\u5c40\u914d\u7f6e\u9879

\u8bf7\u53c2\u8003 NG-ZORRO \u5b98\u7f51\u6587\u6863

',meta:{order:90,title:{"en-US":"Global Configuration","zh-CN":"\u5168\u5c40\u914d\u7f6e\u9879"},type:"Dev"},toc:[{id:"\u5982\u4f55\u4f7f\u7528",title:"\u5982\u4f55\u4f7f\u7528",h:2},{id:"\u5173\u4e8eNG-ZORRO\u5168\u5c40\u914d\u7f6e\u9879",title:"\u5173\u4e8e NG-ZORRO \u5168\u5c40\u914d\u7f6e\u9879",h:2}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-global-config"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"graph",redirectTo:"graph/zh",pathMatch:"full"},{path:"graph/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"zh-CN":"docs/graph.md"},content:{"zh-CN":{content:'
',meta:{order:20,title:{"en-US":"Charts","zh-CN":"\u56fe\u8868"},type:"Advance",url:"/chart/getting-started"},toc:[]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-graph"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"how-to-start",redirectTo:"how-to-start/zh",pathMatch:"full"},{path:"how-to-start/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/how-to-start.en-US.md","zh-CN":"docs/how-to-start.zh-CN.md"},content:{"en-US":{content:'

First, pre-order preparation

As you begin your business development on NG-ALAIN, i recommend that you first review the following documents, which is very helpful for everyone on the team.

NG-ALAIN\'s base component library comes from NG-ZORRO, so you can get a very detailed API documentation for its use on the official website. For ng components provided by -alain are obtained through the component page.

Second, the startup process

NG-ALAIN is a scaffold that can be used directly in production environments. The prerequisite for understanding these details is that you have a certain knowledge of Angular. The following documents may be helpful to you before you start:

When running an app via ng serve, a complete Angular startup process would look like this:

  1. Trigger APP_INITIALIZER (the scaffolding implementation is implemented in StartupService.load) to get the application information.

  2. Trigger service routing (src/app/routes/routes-routing.module.ts` for scaffolding)

  3. Rendering components

1) APP_INITIALIZER

From a mid and back-office perspective, NG-ALAIN always believes that a network request is required to get some application information (eg menu data, user data, etc.) before Angular starts.startup.service.ts\uff1bIt returns a Promise object, which always needs to be called: resolve() to ensure that Angular starts normally.

Network requests may encounter a 403 error because the scaffolding uses the user authentication module by default and always assumes that all requests must be a valid user authorization. For more documentation see:

After obtaining the application information, you need to assign some values \u200b\u200bto the built-in services of the scaffolding, including:

Application Information

Including: application name, description, year, information can be directly injected into the SettingsService (API) and directly in the HTML template.

this.settingService.setApp(res.app);

User Info

Including: name, avatar, email address, etc., information can be directly injected into the SettingsService (API) and directly in the HTML template.

this.settingService.setUser(res.user);

Layout information

Including: name, avatar, email, address, etc., information can be directly injected into the SettingsService (API) and directly in the HTML template.

// Whether to fix the top menu\nthis.settingService.setLayout(`fixed`, false);\n// Whether to collapse the right menu\nthis.settingService.setLayout(`collapsed`, false);

Menu data

NG-ALAIN takes menu from the remote and can also inject MenuService (API) to change the menu data. Of course, it is more reasonable to perform menu assignment before Angular starts.

Menu data Make sure ensure Menu format, menu data throughout Applications, for example: page header auto navigation page-header, page title text TitleService Wait.

this.menuService.add(res.menu);

Page title

If the page title always wants to add the application name as a suffix, you can re-adjust the suffix attribute value by injecting TitleService(API).

// Set the suffix of the page title\nthis.titleService.suffix = res.app.name;

ACL

this.aclService.setFull(true);

It is recommended to load the ACL access control permission data before starting. For more details, please refer to Access Control List.

Globalization

It is recommended to load the internationalization package first before starting, which will ensure that the page is rendered as the target language after the project is started. See Internationalization for more details.

2) Business routing

Scaffolding top-level routing begins with routes-routing.module.ts Its structure is as follows:

const routes: Routes = [\n  {\n    path: \'\',\n    component: LayoutDefaultComponent,\n    children: [\n      { path: \'\', redirectTo: \'dashboard\', pathMatch: \'full\' },\n      { path: \'dashboard\', component: DashboardComponent, data: { title: \'Dashboard\' } },\n      // business submodule\n      // { path: \'trade\', loadChildren: \'./trade/trade.module#TradeModule\' }\n    ]\n  },\n  // Blank layout\n  {\n    path: \'blank\',\n    component: LayoutBlankComponent,\n    children: [\n    ]\n  },\n  // passport\n  {\n    path: \'passport\',\n    component: LayoutPassportComponent,\n    children: [\n      { path: \'login\', component: UserLoginComponent },\n      { path: \'register\', component: UserRegisterComponent },\n      { path: \'register-result\', component: UserRegisterResultComponent }\n    ]\n  },\n  // Single page does not wrap Layout\n  { path: \'callback/:type\', component: CallbackComponent },\n  { path: \'403\', component: Exception403Component },\n  { path: \'404\', component: Exception404Component },\n  { path: \'500\', component: Exception500Component },\n  { path: \'**\', redirectTo: \'dashboard\' }\n];

Above we used the LayoutDefaultComponent base layout in the business module. User authorization uses LayoutPassportComponent user authorization layout and the full screen layout.

It is recommended that all submodules be loaded using a lazy module, such as the TradeModule order module, which organizes the code structure more efficiently.

Under what circumstances do you not use lazy loading?

Angular startup from the top-level component. When a lazy module is encountered, it will initiate a script request. At this time, the dashboard or login page will be blank due to network requests, which is not good for the experience.

Routing permission control

The routing URL may be affected by the browser\'s own historical memory, so that users may access the unprivileged route. If you want a better experience, you need to configure the canActivate option on the route. When the user has no permission, it will utomatically jump to the relevant page. see the ACL Routing Guard section for details.

IDE

A developer must first sharpen his tools if he is to do his work well, NG-ALAIN recommended to use the Visual Studio Code IDE, because ng-alain adds some extra features to VSCode to better help you. Development.

Or use the NG-ALAIN Extension Pack suite directly.

Code fragment

Class style smart reminder

ng-alain has a lot of built-in toolkit styles (API), and the following plugins can be installed directly into the HTML template.

',meta:{order:0,title:"How to start",type:"Dev",i18n:"need-update"},toc:[{id:"First,pre-orderpreparation",title:"First, pre-order preparation",h:2},{id:"Second,thestartupprocess",title:"Second, the startup process",h:2,children:[{id:"1APP_INITIALIZER",title:"1) APP_INITIALIZER",h:3},{id:"2Businessrouting",title:"2) Business routing",h:3},{id:"Underwhatcircumstancesdoyounotuselazyloading",title:"Under what circumstances do you not use lazy loading?",h:3},{id:"Routingpermissioncontrol",title:"Routing permission control",h:3}]},{id:"IDE",title:"IDE",h:2,children:[{id:"Codefragment",title:"Code fragment",h:3},{id:"Classstylesmartreminder",title:"Class style smart reminder",h:3}]}]},"zh-CN":{content:'

\u524d\u5e8f\u51c6\u5907

NG-ALAIN \u6280\u672f\u6808\u57fa\u4e8e Typescript\u3001Angular\u3001\u56fe\u8868G2 \u548c NG-ZORRO\uff0c\u5728\u5f00\u59cb\u5c1d\u8bd5\u4f7f\u7528 NG-ALAIN \u811a\u624b\u67b6\u524d\uff0c\u8bf7\u5148\u63d0\u524d\u4e86\u89e3\u548c\u5b66\u4e60\u8fd9\u4e9b\u77e5\u8bc6\u4f1a\u975e\u5e38\u6709\u5e2e\u52a9\u3002\u5982\u679c\u4f60\u662f\u4e00\u540d Java \u6216 C# \u540e\u7aef\u5f00\u53d1\u4eba\u5458\uff0c\u90a3\u4e48\u606d\u559c\u4f60\uff0c\u4f60\u6240\u89c1\u5230\u7684\u4e0d\u7ba1\u662f\u7ed3\u6784\u3001\u4ee3\u7801\u3001\u5f00\u53d1\u4f53\u9a8c\u7b49\u90fd\u662f\u4f60\u6240\u60f3\u7684\u90a3\u6837\u3002\u4f46\u4e0d\u7ba1\u600e\u4e48\u6837\uff0c\u60f3\u5199\u597d Angular \u4ee3\u7801\uff0c\u4ee5\u4e0b\u8fd9\u4e9b\u6587\u7ae0\u53ca\u793e\u533a\u662f\u4f60\u5fc5\u987b\u8981\u77e5\u9053\u7684\uff1a

\u5199\u5728\u524d\u9762

\u5f88\u591a\u4eba\u5728\u5b66\u4e60\u4e00\u9879\u65b0\u4e1c\u897f\u65f6\uff0c\u65e0\u5916\u4e4e\u5199\u4e2a Hello World \u6216\u662f\u5199\u4e00\u4e2a Http \u8bf7\u6c42\uff0c\u7136\u540e\u6162\u6162\u5f00\u59cb\u8f90\u5c04\u6240\u9700\u8981\u7684\u6280\u672f\u77e5\u8bc6\u3002\u4e00\u4e2a HTTP \u8bf7\u6c42\u5bf9\u4e2d\u540e\u53f0\u800c\u8a00\u4fbf\u662f\u6db5\u76d6\u4e86 CURD \u4e3b\u8981\u4efb\u52a1\uff0c\u751a\u81f3\u53ef\u4ee5\u8bf490%\u65f6\u95f4\u53ca\u529f\u80fd\u90fd\u5728\u505a\u8fd9\u9879\u5de5\u4f5c\u3002\u5728\u4ecb\u7ecd\u7ae0\u8282\u4e2d\u5df2\u7ecf\u63cf\u8ff0\u521b\u5efa\u4e00\u4e2a NG-ALAIN \u9879\u76ee\u5e76\u5982\u4f55\u8fd0\u884c\u5b83\uff0c\u5982\u679c\u6b64\u65f6\u4f60\u4e5f\u60f3\u8981\u5199\u4e2a Hello World\uff0c\u90a3\u4e48\u53ea\u9700\u8981\u5229\u7528 VSCode \u6253\u5f00\u8fd9\u4e2a\u9879\u76ee\uff0c\u5e76\u5728 dashboard.component.html \u6587\u4ef6\u5185\u8f93\u5165\u6587\u672c\uff0c500ms \u540e\u5c31\u4f1a\u5728\u9875\u9762\u4e0a\u7acb\u5373\u5448\u73b0\u3002

\u6d41\u7a0b

\u56de\u8fc7\u5934\u6765\u6211\u4eec\u8bd5\u7740\u56de\u60f3\u4e00\u4e0b\uff0c\u4e00\u4e2a\u4e2d\u540e\u53f0\u9879\u76ee\uff0c\u4ece\u542f\u52a8\u518d\u5230\u5448\u73b0\u4e00\u4efd\u8ba2\u5355\u5217\u8868\u7684\u529f\u80fd\uff0c\u5bf9\u4e8e\u5f00\u53d1\u8005\u800c\u8a00\u5305\u542b\u4e86\u54ea\u4e9b\u4e8b\u4ef6\u3002\u65e0\u5916\u4e4e\u9879\u76ee\u542f\u52a8\u65f6\u5e94\u8be5\u52a0\u8f7d\u70b9\u4ec0\u4e48\u7cfb\u7edf\u914d\u7f6e\u9879\uff0c\u54ea\u4e9b\u9875\u9762\u7528\u6237\u65e0\u6743\u8fdb\u5165\uff1b\u628a\u7c92\u5ea6\u518d\u60f3\u7ec6\u4e00\u70b9\uff0c\u540c\u4e00\u4e2a\u9875\u9762\u4e0d\u540c\u7684\u6309\u94ae\u7ed9\u4e0d\u540c\u7684\u4eba\u7528\uff0cHTTP\u8bf7\u6c42\u82e5\u4ea7\u751f\u9519\u8bef\u662f\u4e0d\u662f\u5f97\u6bcf\u6b21\u90fd\u5199\u76f8\u540c\u7684\u5904\u7406\u4ee3\u7801\u7b49\u7b49\u3002

\u521d\u59cb\u5316\u9879\u76ee\u6570\u636e

Angular \u63d0\u4f9b\u4e00\u4e2aDI\uff08\u4f9d\u8d56\u6ce8\u5165\uff09\u4ee4\u724c APP_INITIALIZER \u8ba9\u5e94\u7528\u542f\u52a8\u65f6\u53ef\u4ee5\u505a\u4e00\u4e9b\u4f1a\u5f71\u54cd\u6e32\u67d3\u7ed3\u679c\u7684\u6570\u636e\uff0c\u6bd4\u5982\uff1a\u8bed\u8a00\u6570\u636e\u3001\u83dc\u5355\u6570\u636e\u3001\u7528\u6237\u4fe1\u606f\u6570\u636e\u3001\u5b57\u5178\u6570\u636e\u7b49\uff0c\u5e76\u4e14\u5fc5\u987b\u8fd4\u56de\u4e00\u4e2a Promise \u5f02\u6b65\u51fd\u6570\uff0c\u5f02\u6b65\u610f\u5473\u8005\u53ef\u4ee5\u505a\u5f88\u591a\u6709\u8da3\u7684\u4e8b\uff0c\u6bd4\u5982\u6570\u636e\u6765\u81ea\u8fdc\u7a0b\u3002APP_INITIALIZER \u53ea\u4f1a\u6267\u884c\u4e00\u6b21\uff0c\u53ea\u9700\u8981\u5728 AppModule \u6a21\u5757\u6ce8\u518c\u5b83\u5c31\u884c\u4e86\u3002

export function StartupServiceFactory(startupService: StartupService): () => Promise {\n  return () => startupService.load();\n}\n\n@NgModule({\n  declarations: [AppComponent],\n  imports: [BrowserModule]\n  providers: [{\n    StartupService,\n    {\n      provide: APP_INITIALIZER,\n      useFactory: StartupServiceFactory,\n      deps: [StartupService],\n      multi: true,\n    },\n  }],\n  bootstrap: [AppComponent],\n})\nexport class AppModule {}

\u800c StartupService \u5982\u4e0b\uff1a

@Injectable()\nexport class StartupService {\n  constructor(private httpClient: HttpClient) {}\n\n  load(): Promise { \n    return new Promise((resolve) => {\n      this.httpClient.get(``).subscribe(() => {\n        resolve();\n      });\n    });\n  }\n}

\u54ea\u6015 Http \u8bf7\u6c42\u5931\u8d25\uff0c\u8fd9\u91cc\u4e5f\u5fc5\u987b\u6267\u884c resolve()\uff0c\u5426\u5219\u5e94\u7528\u5c31\u65e0\u6cd5\u542f\u52a8\u3002\u800c NG-ALAIN \u63d0\u4f9b\u7684 startup.service.ts \u5185\u5bb9\u66f4\u52a0\u4e30\u5bcc\u4e00\u70b9\uff0c\u5bf9\u4e8e\u5b8c\u6574\u7684\u4e2d\u540e\u53f0\u800c\u8a00\uff0c\u5927\u591a\u6570\u9879\u76ee\u4e2d\u4ee5\u4e0b\u8fd9\u4e9b\u4fe1\u606f\u90fd\u53ef\u4ee5\u5fc5\u5907\u7684\uff1a

\u6570\u636e\u7c7b\u578b\u63cf\u8ff0
\u5e94\u7528\u4fe1\u606f\u5e94\u7528\u540d\u79f0\u3001\u63cf\u8ff0\u3001\u5e74\u4efd\uff0c\u4fe1\u606f\u53ef\u4ee5\u76f4\u63a5\u6ce8\u5165 SettingsService\uff08API\uff09\u540e\u76f4\u63a5\u5728HTML\u6a21\u677f\u4e2d\u8bbf\u95ee\u3002
\u4f8b\u5982\uff1athis.settingService.setApp(res.app);
\u7528\u6237\u4fe1\u606f\u5f53\u524d\u7528\u6237\u7684\u59d3\u540d\u3001\u5934\u50cf\u3001\u90ae\u7bb1\u5730\u5740\u7b49\uff0c\u4fe1\u606f\u53ef\u4ee5\u76f4\u63a5\u6ce8\u5165 SettingsService\uff08API\uff09\u540e\u76f4\u63a5\u5728HTML\u6a21\u677f\u4e2d\u8bbf\u95ee\u3002
\u4f8b\u5982\uff1athis.settingService.setUser(res.user);
\u5e03\u5c40\u4fe1\u606f\u8c03\u6574\u4e3b\u9898\u914d\u7f6e\uff0c\u4f8b\u5982\uff1a\u56fa\u5b9a\u9876\u90e8\u83dc\u5355\u3001\u6298\u53e0\u83dc\u5355\u7b49\u3002
\u4f8b\u5982\uff1athis.settingService.setLayout("fixed", false); \u6216 this.settingService.setLayout("collapsed", false);
\u83dc\u5355\u6570\u636eNG-ALAIN \u8ba4\u4e3a\u83dc\u5355\u6570\u636e\u4e5f\u662f\u6765\u81ea\u8fdc\u7a0b\uff0c\u4e5f\u53ef\u4ee5\u4efb\u610f\u4f4d\u7f6e\u6ce8\u5165 MenuService\uff08API\uff09\u6765\u6539\u53d8\u83dc\u5355\u6570\u636e\uff0c\u5f53\u7136\u5728 Angular \u542f\u52a8\u4e4b\u524d\u6267\u884c\u83dc\u5355\u8d4b\u503c\u66f4\u4e3a\u5408\u7406\u3002
\u83dc\u5355\u6570\u636e\u52a1\u5fc5\u786e\u4fdd Menu \u683c\u5f0f\uff0c\u83dc\u5355\u6570\u636e\u8d2f\u7a7f\u6574\u4e2a\u5e94\u7528\uff0c\u4f8b\u5982\uff1a\u9875\u5934\u81ea\u52a8\u5bfc\u822a page-header\uff0c\u9875\u6807\u9898\u6587\u672c TitleService \u7b49\u3002
\u4f8b\u5982\uff1athis.menuService.add(res.menu);
\u9875\u9762\u6807\u9898\u82e5\u9875\u9762\u6807\u9898\u603b\u5e0c\u671b\u52a0\u4e0a\u5e94\u7528\u540d\u79f0\u4e3a\u540e\u7f00\u65f6\uff0c\u53ef\u4ee5\u6ce8\u5165 TitleService\uff08API\uff09\u91cd\u65b0\u8c03\u6574 suffix \u5c5e\u6027\u503c\u3002
\u4f8b\u5982\u8bbe\u7f6e\u9875\u9762\u6807\u9898\u7684\u540e\u7f00\uff1athis.titleService.suffix = res.app.name;
ACL\u8bbf\u95ee\u63a7\u5236\u5217\u8868\u6570\u636e\uff0c\u5efa\u8bae\u5728\u542f\u52a8\u524d\u52a0\u8f7dACL\u8bbf\u95ee\u63a7\u5236\u6743\u9650\u6570\u636e\uff0c\u6709\u5173\u66f4\u591a\u7ec6\u8282\u53ef\u53c2\u8003 \u8bbf\u95ee\u63a7\u5236\u5217\u8868\u3002
\u4f8b\u5982\u8bbe\u7f6e\u5168\u91cf\u6743\u9650\uff1athis.aclService.setFull(true);
\u56fd\u9645\u5316\u5efa\u8bae\u5728\u542f\u52a8\u524d\u4f18\u5148\u52a0\u8f7d\u56fd\u9645\u5316\u6570\u636e\u5305\uff0c\u8fd9\u6837\u53ef\u786e\u4fdd\u9879\u76ee\u542f\u52a8\u540e\u9875\u9762\u6e32\u67d3\u4e3a\u76ee\u6807\u8bed\u8a00\u3002\u66f4\u591a\u7ec6\u8282\u53c2\u8003\u56fd\u9645\u5316\u3002

\u4e1a\u52a1\u8def\u7531

\u5f53 Angular \u9879\u76ee\u6b63\u5f0f\u542f\u52a8\u540e\u4f1a\u8fdb\u5165\u6e32\u67d3\u52a8\u4f5c\uff0c\u6839\u636e\u5f53\u524d\u7684\u8def\u7531\u5730\u5740\u6765\u51b3\u5b9a\u4e00\u4e2a\u9875\u9762\u5982\u4f55\u6e32\u67d3\uff0c\u4ece\u6700\u9876\u5c42\u8def\u7531 routes-routing.module.ts \u5f00\u59cb\u4e00\u5c42\u5c42\u5bfb\u627e\uff0c\u5176\u7ed3\u6784\u5982\u4e0b\uff1a

const routes: Routes = [\n  {\n    path: \'\',\n    component: LayoutBasicComponent,\n    children: [\n      { path: \'\', redirectTo: \'dashboard\', pathMatch: \'full\' },\n      { path: \'dashboard\', component: DashboardComponent, data: { title: \'\u4eea\u8868\u76d8\' } },\n      // \u4e1a\u52a1\u5b50\u6a21\u5757\n      // { path: \'trade\', loadChildren: \'./trade/trade.module#TradeModule\' }\n    ]\n  },\n  // \u7a7a\u767d\u5e03\u5c40\n  {\n    path: \'blank\',\n    component: LayoutBlankComponent,\n    children: [\n    ]\n  },\n  // passport\n  {\n    path: \'passport\',\n    component: LayoutPassportComponent,\n    children: [\n      { path: \'login\', component: UserLoginComponent },\n    ]\n  },\n  // \u5355\u9875\u4e0d\u5305\u88f9Layout\n  { path: \'passport/callback/:type\', component: CallbackComponent },\n  { path: \'exception\', loadChildren: () => import(\'./exception/exception.module\').then((m) => m.ExceptionModule) },\n  // \u672a\u547d\u4e2d\u8def\u7531\u5168\u90e8\u8df3\u8f6c\u81f3 `exception/404` \u9875\u9762\u4e0a\n  { path: \'**\', redirectTo: \'exception/404\' },\n];

\u4e0a\u8ff0\u5728\u4e1a\u52a1\u6a21\u5757\u4e2d\u4f7f\u7528\u4e86 LayoutBasicComponent \u57fa\u7840\u5e03\u5c40\u3001\u7528\u6237\u6388\u6743\u4f7f\u7528\u4e86 LayoutPassportComponent \u7528\u6237\u6388\u6743\u5e03\u5c40\u4ee5\u53ca LayoutBlankComponent \u7a7a\u767d\u5e03\u5c40\uff0c\u4ee5\u4e0a\u4e09\u79cd\u5e03\u5c40\u90fd\u53ef\u4ee5\u5728 layout \u76ee\u5f55\u4e0b\u627e\u5f97\u5230\u3002

\u4f8b\u5982\u5f53\u7528\u6237\u8bbf\u95ee /dashboard \u8def\u7531\u65f6\uff0c\u4f1a\u5148\u7ecf\u8fc7 LayoutBasicComponent -> DashboardComponent\uff0c\u6700\u7ec8\u6362\u5f62\u6210\u4e00\u4e2a\u5e9e\u5927\u7684\u7ec4\u4ef6\u6811\u6765\u8868\u793a\u4e00\u4e2a\u5177\u4f53\u7684\u9875\u9762\u3002NG-ALAIN \u811a\u624b\u67b6\u5e2e\u52a9\u4f60\u5b8c\u6210\u5927\u591a\u6570\u5de5\u4f5c\uff0c\u800c\u4e00\u4e2a\u65b0\u5165\u95e8\u7684\u4eba\u66f4\u591a\u53ea\u9700\u8981\u5173\u5fc3 DashboardComponent \u4e1a\u52a1\u7ec4\u4ef6\u8be5\u5982\u4f55\u5b9e\u73b0\u3002

\u4ec0\u4e48\u60c5\u51b5\u4e0b\u4e0d\u4f7f\u7528\u61d2\u52a0\u8f7d\uff1f

Angular \u542f\u52a8\u662f\u4ece\u9876\u5c42\u7ec4\u4ef6\u5f00\u59cb\u5411\u4e0b\u6e32\u67d3\uff0c\u5f53\u9047\u5230\u61d2\u6a21\u5757\u65f6\u4f1a\u5148\u53d1\u8d77\u811a\u672c\u8bf7\u6c42\uff0c\u6b64\u65f6\u4f1a\u56e0\u4e3a\u7f51\u7edc\u8bf7\u6c42\u5bfc\u81f4\u4eea\u8868\u76d8\u6216\u767b\u5f55\u9875\u77ed\u6682\u7684\u7a7a\u767d\uff0c\u8fd9\u5bf9\u4f53\u9a8c\u5e76\u4e0d\u597d\u3002

\u7528\u6237\u8ba4\u8bc1\u4e0e\u6388\u6743

\u9875\u9762\u80fd\u5426\u8bbf\u95ee\u53d6\u51b3\u4e8e\u7528\u6237\u662f\u5426\u767b\u5f55\u3001\u5df2\u7ecf\u767b\u5f55\u8fd8\u5f97\u5224\u65ad\u5426\u6709\u6388\u6743\uff0c\u800c\u8fd9\u4e24\u9879\u5de5\u4f5c\u5206\u522b\u4ea4\u7ed9 @delon/auth \u4e0e @delon/acl \u6765\u5b8c\u6210\u3002

\u7528\u6237\u8ba4\u8bc1

\u9996\u5148\u7528\u6237\u8bbf\u95ee\u9875\u9762\u65f6\u662f\u7531\u9876\u5c42\u8def\u7531\u5f00\u59cb\u5bfb\u627e\u547d\u4e2d\u540e\u8fdb\u884c\u6e32\u67d3\uff0c\u8981\u60f3\u8ba9\u6240\u6709\u672a\u767b\u5f55\u7528\u6237\u8df3\u8f6c\u5230\u767b\u5f55\u9875\u9762\uff0c\u53ef\u4ee5\u914d\u7f6e canActivate \u9009\u9879\uff0c@delon/auth \u5df2\u7ecf\u63d0\u4f9b\u4e86\u5177\u4f53\u7684\u5b9e\u73b0\uff0c\u4f8b\u5982\uff1a

const routes: Routes = [\n  {\n    path: \'\',\n    component: LayoutBasicComponent,\n    canActivate: [authSimpleCanActivate],\n    children: [\n      { path: \'\', redirectTo: \'dashboard\', pathMatch: \'full\' },\n      { path: \'dashboard\', component: DashboardComponent, data: { title: \'\u4eea\u8868\u76d8\' } },\n    ]\n  },\n];

\u8fd9\u91cc\u7684 authSimpleCanActivate \u662f\u56e0\u4e3a\u91c7\u7528\u57fa\u4e8e Simple Web Token \u8ba4\u8bc1\u98ce\u683c\uff0c\u5176\u4ed6\u8ba4\u8bc1\u65b9\u5f0f\u8bf7\u53c2\u8003\u7528\u6237\u8ba4\u8bc1\u7ae0\u8282\u3002

\u5f53\u7528\u6237\u672a\u767b\u5f55\u65f6\u4f1a\u76f4\u63a5\u8df3\u8f6c\u81f3 /passport/login \u9875\u9762\uff0c\u5982\u679c\u91c7\u7528\u7684\u662f JWT \u8ba4\u8bc1\u65b9\u5f0f\uff0c\u8fd8\u4f1a\u5bf9 Token \u662f\u5426\u6709\u6548\u8fdb\u884c\u68c0\u9a8c\u3002

\u7528\u6237\u6388\u6743

\u63a5\u8005\u7528\u6237\u8bbf\u95ee\u7684\u9875\u9762\u8fd8\u9700\u8981\u53d6\u51b3\u4e8e\u6388\u6743\u7a0b\u5ea6\uff0c\u4f8b\u5982\u7cfb\u7edf\u914d\u7f6e\u9875\u666e\u901a\u7528\u6237\u80af\u5b9a\u65e0\u6cd5\u8fdb\u5165\u3002\u5728\u521d\u59cb\u5316\u9879\u76ee\u6570\u636e\u5c0f\u8282\u91cc\u4f1a\u6839\u636e\u5f53\u524d\u7528\u6237\u7684 Token \u6765\u83b7\u5f97\u6388\u6743\u7684\u6570\u636e\uff0c\u5e76\u5c06\u6570\u636e\u4ea4\u7ed9 @delon/acl\uff0c\u540c\u65f6\u5b83\u4e5f\u63d0\u4f9b\u4e00\u7ec4\u8def\u7531\u5b88\u536b\u7684\u5177\u4f53\u5b9e\u73b0 aclCanActivate \u65b9\u6cd5\uff0c\u4f8b\u5982\u5e0c\u671b\u6574\u4e2a\u7cfb\u7edf\u914d\u7f6e\u6a21\u5757\u90fd\u5fc5\u987b\u662f admin \u89d2\u8272\u624d\u80fd\u8bbf\u95ee\uff0c\u5219\uff1a

const routes: Routes = [\n  {\n    path: \'sys\',\n    canActivate: [aclCanActivate],\n    data: { guard: \'admin\' },\n    children: [\n      { path: \'config\', component: ConfigComponent },\n    ]\n  },\n];

\u6b64\u65f6\uff0c\u5f53\u4e00\u4e2a\u672a\u6388\u6743 admin \u89d2\u8272\u7684\u7528\u6237\u5c1d\u8bd5\u8bbf\u95ee /sys/config \u9875\u9762\u65f6\u4f1a\u88ab\u8df3\u8f6c\u81f3\u672a\u6388\u6743\u9519\u8bef\u9875\u4e0a\u3002

\u5f53\u7136\u8fd8\u652f\u6301\u7c92\u5ea6\u6709\u66f4\u7ec6\u64cd\u4f5c\uff0c\u6bd4\u5982\u67d0\u4e2a\u6309\u94ae\uff0c\u8bf7\u53c2\u8003ACL\u7ae0\u8282\u3002

\u62e6\u622a\u7f51\u7edc\u8bf7\u6c42

\u7f51\u7edc\u8bf7\u6c42\u662f\u4e00\u9879\u975e\u5e38\u9891\u7e41\u7684\u5de5\u4f5c\uff0c\u5982\u679c\u60f3\u4f18\u96c5\u7684\u5728\u4e1a\u52a1\u7ec4\u4ef6\u5185\u4f7f\u7528\u7f51\u7edc\u8bf7\u6c42\u52a8\u4f5c\u7684\u8bdd\uff0c\u90a3\u4e48\u5c06\u670d\u52a1\u7aefURL\u524d\u7f00\u3001\u5f02\u5e38\u5904\u7406\u3001Token \u5237\u65b0\u7b49\u64cd\u4f5c\u96c6\u4e2d\u5904\u7406\u662f\u5fc5\u4e0d\u53ef\u5c11\u7684\uff0cNG-ALAIN \u811a\u624b\u67b6\u63d0\u4f9b\u4e00\u4e2a default.interceptor.ts \u6587\u4ef6\u3002\u5b83\u4f1a\u5229\u7528\u4ee4\u724c HTTP_INTERCEPTORS \u8d77\u5230\u4e00\u79cd\u62e6\u622a\u5668\u7684\u6548\u679c\u3002

\u6709\u5173\u4ee5\u4e0a\u96c6\u4e2d\u5904\u7406\u7684\u52a8\u4f5c\u7ec6\u8282\uff0c\u8bf7\u53c2\u8003 default.interceptor.ts \u6587\u4ef6\u3002

IDE

\u201c\u5de5\u6b32\u5584\u5176\u4e8b\uff0c\u5fc5\u5148\u5229\u5176\u5668\u662f\u201d\uff0cNG-ALAIN \u811a\u624b\u67b6\u63a8\u8350\u4f7f\u7528 Visual Studio Code IDE\uff0c\u56e0\u4e3a NG-ALAIN \u9488\u5bf9 VSCode \u589e\u52a0\u4e00\u4e9b\u989d\u5916\u7684\u7279\u6027\uff0c\u53ef\u4ee5\u66f4\u597d\u7684\u5e2e\u52a9\u4f60\u5f00\u53d1\u3002

\u6216\u8005\u76f4\u63a5\u4f7f\u7528 NG-ALAIN Extension Pack \u5957\u4ef6\u3002

\u4ee3\u7801\u7247\u65ad

Class\u6837\u5f0f\u667a\u80fd\u63d0\u9192

ng-alain \u5185\u7f6e\u4e86\u5927\u91cf\u7684\u5de5\u5177\u96c6\u6837\u5f0f\uff08API\uff09\uff0c\u5b89\u88c5\u4ee5\u4e0b\u63d2\u4ef6\u53ef\u4ee5\u76f4\u63a5\u5728HTML\u6a21\u677f\u91cc\u76f4\u63a5\u8bbf\u95ee\u5230\u5b83\u4eec\u3002

',meta:{order:0,title:"\u5982\u4f55\u5f00\u59cb",type:"Dev",i18n:"need-update"},toc:[{id:"\u524d\u5e8f\u51c6\u5907",title:"\u524d\u5e8f\u51c6\u5907",h:2},{id:"\u5199\u5728\u524d\u9762",title:"\u5199\u5728\u524d\u9762",h:2},{id:"\u6d41\u7a0b",title:"\u6d41\u7a0b",h:2,children:[{id:"\u521d\u59cb\u5316\u9879\u76ee\u6570\u636e",title:"\u521d\u59cb\u5316\u9879\u76ee\u6570\u636e",h:3},{id:"\u4e1a\u52a1\u8def\u7531",title:"\u4e1a\u52a1\u8def\u7531",h:3},{id:"\u7528\u6237\u8ba4\u8bc1\u4e0e\u6388\u6743",title:"\u7528\u6237\u8ba4\u8bc1\u4e0e\u6388\u6743",h:3},{id:"\u62e6\u622a\u7f51\u7edc\u8bf7\u6c42",title:"\u62e6\u622a\u7f51\u7edc\u8bf7\u6c42",h:3}]},{id:"IDE",title:"IDE",h:2,children:[{id:"\u4ee3\u7801\u7247\u65ad",title:"\u4ee3\u7801\u7247\u65ad",h:3},{id:"Class\u6837\u5f0f\u667a\u80fd\u63d0\u9192",title:"Class\u6837\u5f0f\u667a\u80fd\u63d0\u9192",h:3}]}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-how-to-start"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"i18n",redirectTo:"i18n/zh",pathMatch:"full"},{path:"i18n/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/i18n.en-US.md","zh-CN":"docs/i18n.zh-CN.md"},content:{"en-US":{content:'

Angular internationalization provides a solution for extracting language files, but for NG-ALAIN, this is not the best way; this is mainly limited by @Delon/* The component library needs to provide a set of dynamic translation Service, therefore, NG-ALAIN has built-in a simple internationalized service ALAIN_I18N_TOKEN interface.

How to configure

Scaffolding is composed of two important parts: ng-zorro-antd and @delon/*. These two libraries have their own international configuration. When internationalizing, they need to be the same for these libraries. Language configuration.

Angular

Angular configuration is mainly for currency, date format, etc., such as Chinese version:

import { registerLocaleData } from \'@angular/common\';\nimport zh from \'@angular/common/locales/zh\';\nregisterLocaleData(zh);

ng-zorro-antd

ng-zorro-antd internationalization defaults to the Chinese version, for example the default English version:

import { en_US, provideNzI18n } from \'ng-zorro-antd/i18n\';\n@NgModule({\n  providers: [provideNzI18n(en_US)]\n})\nexport class App1Module {}

Of course, you can also use runtime changes:

import { en_US, NzI18nService } from \'ng-zorro-antd/i18n\';\n...\nconstructor(private nzI18nService:NzI18nService) {\n}\n\nswitchLanguage() {\n  this.nzI18nService.setLocale(en_US);\n}

@delon

@delon internationalization defaults to Chinese version, for example the default is English version:

import { DELON_LOCALE, en_US } from \'@delon/theme\';\n@NgModule({\n  ...\n  providers   : [ { provide: DELON_LOCALE, useValue: en_US } ]\n})\nexport class AppModule { }

Of course, you can also use runtime changes:

import { en_US, DelonLocaleService } from \'@delon/theme\';\n...\nconstructor(private delonLocaleService: DelonLocaleService) {\n}\n\nswitchLanguage() {\n  this.delonLocaleService.setLocale(en_US);\n}

ALAIN_I18N_TOKEN

@delon/* class library has many data interface properties with the i18n typeface (for example: page-header, st column description, Menu menu data, etc.) when you want the data for these components. When the interface can dynamically switch automatically according to the Key value in the current language, you also need to define a self-implementation service interface for ALAIN_I18N_TOKEN (for example: I18NService /master/src/app/core/i18n/i18n.service.ts)) and register under the root module.

import { ALAIN_I18N_TOKEN } from \'@delon/theme\';\nimport { I18NService } from \'@core\';\n\n@NgModule({\n  ...\n  providers: [\n    { provide: ALAIN_I18N_TOKEN, useClass: I18NService, multi: false }\n  ]\n})\nexport class AppModule {}

i18n pipe

In order not to be named by the third-party pipes, the scaffolding contains a i18n pipe, which is equivalent to calling the fanAIN method of ALAIN_I18N_TOKEN directly.

| i18n will not listen to language change notifications, so there will be better performance. When you explicitly re-render the Angular project after switching languages, | i18n will be more suitable.

How to add

When creating scaffolding from command line ng add ng-alain, it is allowed to specify --i18n to indicate whether the internationalized sample code is included.

How to delete

The sample code covers the following:

  • src/app/core/i18n directory

  • Replace the pipe of i18n that may appear in the default layout using | i18n

Default language

Regardless of whether internationalization is required or not, since the default languages \u200b\u200bof class libraries such as Angular, ng-zorro-antd, @delon/* are different, it is also necessary to ensure that the default language of these libraries is the same type. A simple example approach to understand the current language situation for each type of library:

import { Component } from \'@angular/core\';\n\n@Component({\n  selector: \'app-i18n-test\',\n  template: `\n  <h2>angular</h2>\n  <p>Date: {{now | date}}</p>\n  <h2>ng-zorro-antd</h2>\n  <nz-transfer [nzDataSource]="[]"></nz-transfer>\n  <h2>@delon</h2>\n  <div style="width: 200px">\n    <tag-select>\n      <nz-tag>1</nz-tag>\n    </tag-select>\n  </div>`,\n})\nexport class I18nTestComponent {\n  now = new Date();\n}

Example

In order to make language uniformity, NG-ALAIN provides a simple unified configuration in the AppModule root module.

Chinese Version

// #region i18n\nimport { default as ngLang } from \'@angular/common/locales/zh\';\nimport { provideNzI18n, zh_CN as zorroLang } from \'ng-zorro-antd/i18n\';\nimport { DELON_LOCALE, zh_CN as delonLang } from \'@delon/theme\';\nconst LANG = {\n  abbr: \'zh\',\n  ng: ngLang,\n  zorro: zorroLang,\n  delon: delonLang,\n};\n// register angular\nimport { registerLocaleData } from \'@angular/common\';\nregisterLocaleData(LANG.ng, LANG.abbr);\nconst LANG_PROVIDES = [\n  { provide: LOCALE_ID, useValue: LANG.abbr },\n  provideNzI18n(LANG.zorro),\n  { provide: DELON_LOCALE, useValue: LANG.delon },\n];\n// #endregion\n\n@NgModule({\n  providers: [...LANG_PROVIDES],\n})\nexport class AppModule {}

English version

// #region i18n\nimport { default as ngLang } from \'@angular/common/locales/en\';\nimport { provideNzI18n, en_US as zorroLang } from \'ng-zorro-antd/i18n\';\nimport { DELON_LOCALE, en_US as delonLang } from \'@delon/theme\';\nconst LANG = {\n  abbr: \'en\',\n  ng: ngLang,\n  zorro: zorroLang,\n  delon: delonLang,\n};\n// register angular\nimport { registerLocaleData } from \'@angular/common\';\nregisterLocaleData(LANG.ng, LANG.abbr);\nconst LANG_PROVIDES = [\n  { provide: LOCALE_ID, useValue: LANG.abbr },\n  provideNzI18n(LANG.zorro),\n  { provide: DELON_LOCALE, useValue: LANG.delon },\n];\n// #endregion\n\n@NgModule({\n  providers: [...LANG_PROVIDES],\n})\nexport class AppModule {}

Command Line

Use the defaultLanguage plugin to quickly switch between the default locales.

Internationalized routing

If you want to toggle internationalization by routed URLs, e.g. by accessing /zh and /en to change the language, just use the alainI18nCanActivate guard in the root route:

const routes: Route[] = [\n   {\n     path: \'\',\n     component: LayoutComponent,\n     canActivateChild: [alainI18nCanActivate],\n     children: [\n       { path: \'\', redirectTo: \'en\', pathMatch: \'full\' },\n       { path: \':i18n\', component: HomeComponent }\n     ]\n   }\n];

Where :i18n is a fixed value of the parameter, which can be adjusted by the Global Configuration paramNameOfUrlGuard.

',meta:{order:30,title:{"en-US":"I18n","zh-CN":"\u56fd\u9645\u5316"},type:"Advance"},toc:[{id:"Howtoconfigure",title:"How to configure",h:2,children:[{id:"Angular",title:"Angular",h:3},{id:"ng-zorro-antd",title:"ng-zorro-antd",h:3},{id:"@delon",title:"@delon",h:3}]},{id:"ALAIN_I18N_TOKEN",title:"ALAIN_I18N_TOKEN",h:2,children:[{id:"i18npipe",title:"i18n pipe",h:3}]},{id:"Howtoadd",title:"How to add",h:2},{id:"Howtodelete",title:"How to delete",h:2},{id:"Defaultlanguage",title:"Default language",h:2,children:[{id:"Example",title:"Example",h:3},{id:"CommandLine",title:"Command Line",h:3}]},{id:"Internationalizedrouting",title:"Internationalized routing",h:2}]},"zh-CN":{content:'

Angular \u56fd\u9645\u5316\u63d0\u4f9b\u4e00\u79cd\u53ef\u88ab\u63d0\u53d6\u8bed\u8a00\u6587\u4ef6\u7684\u65b9\u6848\uff0c\u4f46\u5bf9\u4e8e NG-ALAIN \u800c\u8a00\uff0c\u8fd9\u5e76\u4e0d\u662f\u6700\u597d\u7684\u65b9\u5f0f\uff1b\u8fd9\u4e3b\u8981\u53d7\u9650\u4e8e @Delon/* \u7ec4\u4ef6\u5e93\u9700\u8981\u63d0\u4f9b\u4e00\u5957\u5e26\u6709\u52a8\u6001\u7ffb\u8bd1\u7684\u670d\u52a1\uff0c\u56e0\u6b64\uff0cNG-ALAIN \u5185\u7f6e\u4e00\u4e2a\u7b80\u6613\u7684\u56fd\u9645\u5316\u670d\u52a1 ALAIN_I18N_TOKEN \u63a5\u53e3\u3002

\u5982\u4f55\u914d\u7f6e

\u811a\u624b\u67b6\u662f\u7531 ng-zorro-antd\u3001@delon/* \u7c7b\u5e93\u4e24\u4e2a\u91cd\u8981\u90e8\u5206\u7ec4\u4ef6\uff0c\u800c\u8fd9\u4e24\u4e2a\u7c7b\u5e93\u6709\u81ea\u5df1\u7684\u56fd\u9645\u5316\u914d\u7f6e\uff0c\u5f53\u8fdb\u884c\u56fd\u9645\u5316\u65f6\u9700\u8981\u5bf9\u8fd9\u4e9b\u7c7b\u5e93\u8fdb\u884c\u76f8\u540c\u8bed\u8a00\u7684\u914d\u7f6e\u3002

Angular

Angular \u914d\u7f6e\u4e3b\u8981\u662f\u9488\u5bf9\u8d27\u5e01\u3001\u65e5\u671f\u683c\u5f0f\u7b49\uff0c\u4f8b\u5982\u4e2d\u6587\u7248\u672c\uff1a

import { registerLocaleData } from \'@angular/common\';\nimport zh from \'@angular/common/locales/zh\';\nregisterLocaleData(zh);

ng-zorro-antd

NG-ZORRO \u56fd\u9645\u5316\u9ed8\u8ba4\u662f\u4e2d\u6587\u7248\uff0c\u4f8b\u5982\u9ed8\u8ba4\u4e3a\u82f1\u6587\u7248\u672c\uff1a

import { en_US, provideNzI18n } from \'ng-zorro-antd/i18n\';\n@NgModule({\n  providers: [provideNzI18n(en_US)]\n})\nexport class App1Module {}

\u5f53\u7136\uff0c\u4e5f\u53ef\u4ee5\u4f7f\u7528\u8fd0\u884c\u65f6\u66f4\u6539\uff1a

import { en_US, NzI18nService } from \'ng-zorro-antd/i18n\';\n...\nconstructor(private nzI18nService:NzI18nService) {\n}\n\nswitchLanguage() {\n  this.nzI18nService.setLocale(en_US);\n}

@delon

@delon \u56fd\u9645\u5316\u9ed8\u8ba4\u662f\u4e2d\u6587\u7248\uff0c\u4f8b\u5982\u9ed8\u8ba4\u4e3a\u82f1\u6587\u7248\u672c\uff1a

import { DELON_LOCALE, en_US } from \'@delon/theme\';\n@NgModule({\n  ...\n  providers   : [ { provide: DELON_LOCALE, useValue: en_US } ]\n})\nexport class AppModule { }

\u5f53\u7136\uff0c\u4e5f\u53ef\u4ee5\u4f7f\u7528\u8fd0\u884c\u65f6\u66f4\u6539\uff1a

import { en_US, DelonLocaleService } from \'@delon/theme\';\n...\nconstructor(private delonLocaleService: DelonLocaleService) {\n}\n\nswitchLanguage() {\n  this.delonLocaleService.setLocale(en_US);\n}

ALAIN_I18N_TOKEN

@delon/* \u7c7b\u5e93\u6709\u8bb8\u591a\u5e26\u6709 i18n \u5b57\u6837\u7684\u6570\u636e\u63a5\u53e3\u5c5e\u6027\uff08\u4f8b\u5982\uff1apage-header\u3001st \u5217\u63cf\u8ff0\u3001Menu \u83dc\u5355\u6570\u636e\u7b49\u7b49\uff09\uff0c\u5f53\u4f60\u5e0c\u671b\u8fd9\u4e9b\u7ec4\u4ef6\u7684\u6570\u636e\u63a5\u53e3\u80fd\u52a8\u6001\u6839\u636e Key \u503c\u6309\u5f53\u524d\u8bed\u8a00\u81ea\u52a8\u5207\u6362\u65f6\uff0c\u4f60\u8fd8\u9700\u8981\u5bf9 ALAIN_I18N_TOKEN \u5b9a\u4e49\u4e00\u4e2a\u81ea\u5b9e\u73b0\u670d\u52a1\u63a5\u53e3\uff08\u4f8b\u5982\uff1aI18NService\uff09\uff0c\u5e76\u5728\u6839\u6a21\u5757\u4e0b\u6ce8\u518c\u3002

import { ALAIN_I18N_TOKEN } from \'@delon/theme\';\nimport { I18NService } from \'@core\';\n\n@NgModule({\n  ...\n  providers: [\n    { provide: ALAIN_I18N_TOKEN, useClass: I18NService, multi: false }\n  ]\n})\nexport class AppModule {}

i18n\u7ba1\u9053

\u4e3a\u4e86\u4e0d\u53d7\u7b2c\u4e09\u65b9\u5404\u81ea\u7ba1\u9053\u7684\u547d\u540d\u65b9\u5f0f\uff0c\u811a\u624b\u67b6\u5305\u542b\u4e00\u4e2a i18n \u7684\u7ba1\u9053\uff0c\u5b83\u76f8\u5f53\u4e8e\u76f4\u63a5\u8c03\u7528 ALAIN_I18N_TOKEN \u7684 fanyi \u65b9\u6cd5\u3002

| i18n \u4e0d\u4f1a\u76d1\u542c\u8bed\u8a00\u53d8\u66f4\u901a\u77e5\u6240\u4ee5\u4f1a\u6709\u66f4\u597d\u7684\u6027\u80fd\uff0c\u5f53\u4f60\u660e\u786e\u5728\u5207\u6362\u8bed\u8a00\u540e\u4f1a\u91cd\u65b0\u6e32\u67d3 Angular \u9879\u76ee\u65f6 | i18n \u4f1a\u66f4\u9002\u5408\u3002

\u5982\u4f55\u6dfb\u52a0

\u521b\u5efa\u811a\u624b\u67b6\u547d\u4ee4\u884c ng add ng-alain \u65f6\u5141\u8bb8\u6307\u5b9a --i18n \u8868\u793a\u662f\u5426\u5305\u542b\u56fd\u9645\u5316\u793a\u4f8b\u4ee3\u7801\u3002

\u5982\u4f55\u5220\u9664

\u793a\u4f8b\u4ee3\u7801\u6d89\u53ca\u5185\u5bb9\u5305\u62ec\uff1a

  • src/app/core/i18n \u76ee\u5f55

  • \u66ff\u6362\u6389\u9ed8\u8ba4\u5e03\u5c40\u53ef\u80fd\u51fa\u73b0\u7684 I18n \u7684 Pipe \u4f7f\u7528 | i18n

\u9ed8\u8ba4\u8bed\u8a00

\u4e0d\u7ba1\u662f\u5426\u9700\u8981\u56fd\u9645\u5316\uff0c\u7531\u4e8e Angular\u3001ng-zorro-antd\u3001@delon/* \u7b49\u7c7b\u5e93\u7684\u9ed8\u8ba4\u8bed\u8a00\u90fd\u4e0d\u540c\uff0c\u56e0\u6b64\u8fd8\u9700\u8981\u786e\u4fdd\u8fd9\u4e9b\u7c7b\u5e93\u7684\u9ed8\u8ba4\u8bed\u8a00\u662f\u540c\u4e00\u7c7b\u578b\u3002\u4e00\u4e2a\u7b80\u5355\u7684\u793a\u4f8b\u529e\u6cd5\u53ef\u4ee5\u4e86\u89e3\u5404\u7c7b\u5e93\u5f53\u524d\u8bed\u8a00\u60c5\u51b5\uff1a

import { Component } from \'@angular/core\';\n\n@Component({\n  selector: \'app-i18n-test\',\n  template: `\n  <h2>angular</h2>\n  <p>Date: {{now | date}}</p>\n  <h2>ng-zorro-antd</h2>\n  <nz-transfer [nzDataSource]="[]"></nz-transfer>\n  <h2>@delon</h2>\n  <div style="width: 200px">\n    <tag-select>\n      <nz-tag>1</nz-tag>\n    </tag-select>\n  </div>`,\n})\nexport class I18nTestComponent {\n  now = new Date();\n}

\u793a\u4f8b

\u4e3a\u4e86\u4f7f\u8bed\u8a00\u7edf\u4e00\u6027\uff0cNG-ALAIN \u63d0\u4f9b\u4e00\u4e2a\u5728 AppModule \u6839\u6a21\u5757\u91cc\u7b80\u5355\u7684\u7edf\u4e00\u914d\u7f6e\u65b9\u5f0f\u3002

\u4e2d\u6587\u7248

// #region i18n\nimport { default as ngLang } from \'@angular/common/locales/zh\';\nimport { provideNzI18n, zh_CN as zorroLang } from \'ng-zorro-antd/i18n\';\nimport { DELON_LOCALE, zh_CN as delonLang } from \'@delon/theme\';\nconst LANG = {\n  abbr: \'zh\',\n  ng: ngLang,\n  zorro: zorroLang,\n  delon: delonLang,\n};\n// register angular\nimport { registerLocaleData } from \'@angular/common\';\nregisterLocaleData(LANG.ng, LANG.abbr);\nconst LANG_PROVIDES = [\n  { provide: LOCALE_ID, useValue: LANG.abbr },\n  provideNzI18n(LANG.zorro),\n  { provide: DELON_LOCALE, useValue: LANG.delon },\n];\n// #endregion\n\n@NgModule({\n  providers: [...LANG_PROVIDES],\n})\nexport class AppModule {}

\u82f1\u6587\u7248

// #region i18n\nimport { default as ngLang } from \'@angular/common/locales/en\';\nimport { provideNzI18n, en_US as zorroLang } from \'ng-zorro-antd/i18n\';\nimport { DELON_LOCALE, en_US as delonLang } from \'@delon/theme\';\nconst LANG = {\n  abbr: \'en\',\n  ng: ngLang,\n  zorro: zorroLang,\n  delon: delonLang,\n};\n// register angular\nimport { registerLocaleData } from \'@angular/common\';\nregisterLocaleData(LANG.ng, LANG.abbr);\nconst LANG_PROVIDES = [\n  { provide: LOCALE_ID, useValue: LANG.abbr },\n  provideNzI18n(LANG.zorro),\n  { provide: DELON_LOCALE, useValue: LANG.delon },\n];\n// #endregion\n\n@NgModule({\n  providers: [...LANG_PROVIDES],\n})\nexport class AppModule {}

\u547d\u4ee4\u884c

\u4f7f\u7528 defaultLanguage \u63d2\u4ef6\u53ef\u4ee5\u5feb\u901f\u5207\u6362\u9ed8\u8ba4\u8bed\u8a00\u73af\u5883\u3002

\u56fd\u9645\u5316\u8def\u7531

\u82e5\u60f3\u901a\u8fc7\u8def\u7531\u7684URL\u6765\u5207\u6362\u56fd\u9645\u5316\uff0c\u4f8b\u5982\uff1a\u901a\u8fc7\u8bbf\u95ee /zh \u548c /en \u6765\u53d8\u66f4\u8bed\u8a00\uff0c\u5219\u53ea\u9700\u8981\u5728\u6839\u8def\u7531\u4e2d\u4f7f\u7528 alainI18nCanActivate \u5b88\u536b\uff1a

const routes: Route[] = [\n  {\n    path: \'\',\n    component: LayoutComponent,\n    canActivateChild: [alainI18nCanActivate],\n    children: [\n      { path: \'\', redirectTo: \'en\', pathMatch: \'full\' },\n      { path: \':i18n\', component: HomeComponent }\n    ]\n  }\n];

\u5176\u4e2d :i18n \u662f\u53c2\u6570\u56fa\u5b9a\u503c\uff0c\u53ef\u4ee5\u901a\u8fc7\u5168\u5c40\u914d\u7f6e paramNameOfUrlGuard \u6765\u8c03\u6574\u3002

',meta:{order:30,title:{"en-US":"I18n","zh-CN":"\u56fd\u9645\u5316"},type:"Advance"},toc:[{id:"\u5982\u4f55\u914d\u7f6e",title:"\u5982\u4f55\u914d\u7f6e",h:2,children:[{id:"Angular",title:"Angular",h:3},{id:"ng-zorro-antd",title:"ng-zorro-antd",h:3},{id:"@delon",title:"@delon",h:3}]},{id:"ALAIN_I18N_TOKEN",title:"ALAIN_I18N_TOKEN",h:2,children:[{id:"i18n\u7ba1\u9053",title:"i18n\u7ba1\u9053",h:3}]},{id:"\u5982\u4f55\u6dfb\u52a0",title:"\u5982\u4f55\u6dfb\u52a0",h:2},{id:"\u5982\u4f55\u5220\u9664",title:"\u5982\u4f55\u5220\u9664",h:2},{id:"\u9ed8\u8ba4\u8bed\u8a00",title:"\u9ed8\u8ba4\u8bed\u8a00",h:2,children:[{id:"\u793a\u4f8b",title:"\u793a\u4f8b",h:3},{id:"\u547d\u4ee4\u884c",title:"\u547d\u4ee4\u884c",h:3}]},{id:"\u56fd\u9645\u5316\u8def\u7531",title:"\u56fd\u9645\u5316\u8def\u7531",h:2}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-i18n"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"import",redirectTo:"import/zh",pathMatch:"full"},{path:"import/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/import.en-US.md","zh-CN":"docs/import.zh-CN.md"},content:{"en-US":{content:'

In addition to the NG-ALAIN base component and the @delon business component, sometimes we need to reference other external class libraries, the following is how to use the rich text component ngx-tinymce:

Angular Component

Installing dependencies

yarn add ngx-tinymce

Import module

You may need to use rich editor in all submodules, as it\'s recommended to import and export them in the SharedModule module.

// #region third libs\nimport { NgxTinymceModule } from \'ngx-tinymce\';\nconst THIRDMODULES = [ NgxTinymceModule ];\n// #endregion

The region: third libs region is a coding convention for NG-ALAIN, register all third-party components into the THIRDMODULES variable, for more coding conventions, refer to Style Guide.

For some third-party components, may be required global configuration. It\'s recommended to register in the root module, for example:

import { NgxTinymceModule } from \'ngx-tinymce\';\n@NgModule({\n  imports: [\n    BrowserModule,\n    NgxTinymceModule.forRoot({\n      baseURL: \'//cdn.bootcss.com/tinymce/4.7.13/\'\n    })\n  ]\n})\nexport class AppModule { }

Next you can use ngx-tinymce in any submodule:

<tinymce [(ngModel)]="html"></tinymce>

Non-Angular Component

Referencing a non-Angular component is actually loading a JavaScript class library file, such as the QR code library qrious:

Installing dependencies

yarn add qrious

Import Scripts

Add qrious.min.js to the scripts node in angular.json:

"scripts": [\n  "node_modules/qrious/dist/qrious.min.js"\n]

If the third-party library requires additional styles, you also need to add a path to styles.

Note: You need to re-run ng s.

Lazy loading script

The above import script method will package the code directly into scripts.js, which will cause the scripts.js to become larger. NG-ALAIN provides another delayed loading CDN library script solution for low-usage services. (Example: zip compression), you can use LazyService to delay loading remote CDN scripts.

How to use

Angular is using TypeScript language, and all types must be clearly defined to be used. For details, please refer to Angular How to use third-party libraries.

A sample code for the call:

declare var QRious: any;\n\n@Component()\nexport class DEMOComponent {\n  constructor() {\n    const qr = new QRious();\n  }\n}',meta:{order:60,title:"Use a third-party lib",type:"Dev"},toc:[{id:"AngularComponent",title:"Angular Component",h:2,children:[{id:"Installingdependencies",title:"Installing dependencies",h:3},{id:"Importmodule",title:"Import module",h:3}]},{id:"Non-AngularComponent",title:"Non-Angular Component",h:2,children:[{id:"Installingdependencies",title:"Installing dependencies",h:3},{id:"ImportScripts",title:"Import Scripts",h:3},{id:"Howtouse",title:"How to use",h:3}]}]},"zh-CN":{content:'

\u9664\u4e86 NG-ZORRO \u57fa\u7840\u7ec4\u4ef6\u4ee5\u53ca @delon \u4e1a\u52a1\u7ec4\u4ef6\u4ee5\u5916\uff0c\u6709\u65f6\u6211\u4eec\u8fd8\u9700\u8981\u5f15\u7528\u5176\u4ed6\u5916\u90e8\u7c7b\u5e93\uff0c\u4ee5\u4e0b\u5c06\u4ecb\u7ecd\u5982\u4f55\u4f7f\u7528\u5bcc\u6587\u672c\u7ec4\u4ef6 ngx-tinymce\uff1a

Angular\u7ec4\u4ef6

\u5b89\u88c5\u4f9d\u8d56\u5305

yarn add ngx-tinymce

\u6ce8\u518c

\u50cf\u5bcc\u6587\u672c\u6846\u4f60\u53ef\u80fd\u9700\u8981\u5728\u6240\u6709\u5b50\u6a21\u5757\u4e2d\u90fd\u4f1a\u53ef\u80fd\u4f1a\u7528\u5230\uff0c\u56e0\u4e3a\u5efa\u8bae\u5728 SharedModule \u6a21\u5757\u4e2d\u5bfc\u5165\u548c\u5bfc\u51fa\u4ed6\u3002

// #region third libs\nimport { NgxTinymceModule } from \'ngx-tinymce\';\nconst THIRDMODULES = [ NgxTinymceModule ];\n// #endregion

region: third libs \u533a\u57df\u662fNG-ALAIN\u7684\u4e00\u4e2a\u7f16\u7801\u7ea6\u5b9a\uff0c\u5c06\u6240\u6709\u7b2c\u4e09\u65b9\u7ec4\u4ef6\u6ce8\u518c\u81f3 THIRDMODULES \u53d8\u91cf\u4e2d\u5373\u53ef\uff0c\u800c\u65e0\u987b\u5173\u5fc3 @NgModule \u5185\u5728\u7684\u5199\u6cd5\uff0c\u6709\u5173\u66f4\u591a\u7f16\u7801\u7ea6\u5b9a\u53ef\u4ee5\u53c2\u8003\u7f16\u7801\u89c4\u8303\u5efa\u8bae\u3002

\u5bf9\u4e8e\u90e8\u5206\u7b2c\u4e09\u65b9\u7ec4\u4ef6\uff0c\u53ef\u80fd\u4f1a\u9700\u8981\u4e00\u4e9b\u914d\u7f6e\u9879\uff0c\u5efa\u8bae\u5728\u6839\u6a21\u5757\u4e2d\u6ce8\u518c\uff0c\u4f8b\u5982\uff1a

import { NgxTinymceModule } from \'ngx-tinymce\';\n@NgModule({\n  imports: [\n    BrowserModule,\n    NgxTinymceModule.forRoot({\n      baseURL: \'//cdn.bootcss.com/tinymce/4.7.13/\'\n    })\n  ]\n})\nexport class AppModule { }

\u63a5\u4e0b\u6765\u4f60\u53ef\u4ee5\u5728\u4efb\u4f55\u5b50\u6a21\u5757\u4e2d\u4f7f\u7528 ngx-tinymce\uff1a

<tinymce [(ngModel)]="html"></tinymce>

\u975eAngular\u7ec4\u4ef6

\u5f15\u7528\u4e00\u4e2a\u975e Angular \u7ec4\u4ef6\u5b9e\u9645\u4e0a\u662f\u4e00\u4e2a JavaScript \u7c7b\u5e93\uff0c\u4f8b\u5982\u4e8c\u7ef4\u7801\u7c7b\u5e93 qrious\uff0c\u8fd9\u662f\u4e00\u4e2a\u7eaf\u6d01\u7684 JavaScript \u7c7b\u5e93\uff08\u5efa\u8bae\u5c3d\u53ef\u80fd\u4f7f\u7528\u7eaf\u6d01\u7c7b\u5e93\u800c\u975e\u5e26\u6709\u4f9d\u8d56\u5176\u4ed6\uff09\u3002

\u5b89\u88c5\u4f9d\u8d56\u5305

yarn add qrious

\u5bfc\u5165\u811a\u672c

\u5728 angular.json \u627e\u5230 scripts \u8282\u70b9\u5e76\u589e\u52a0\uff1a

"scripts": [\n  "node_modules/qrious/dist/qrious.min.js"\n]

\u5982\u679c\u7b2c\u4e09\u65b9\u7c7b\u5e93\u9700\u8981\u989d\u5916\u7684\u6837\u5f0f\uff0c\u8fd8\u9700\u8981\u5728 styles \u589e\u52a0\u8def\u5f84\u3002

\u6ce8\u610f\uff1a\u9700\u8981\u91cd\u65b0\u8fd0\u884c ng s \u624d\u4f1a\u751f\u6548\u3002

\u5ef6\u8fdf\u52a0\u8f7d\u811a\u672c

\u4e0a\u8ff0\u5bfc\u5165\u811a\u672c\u65b9\u5f0f\u4f1a\u628a\u4ee3\u7801\u76f4\u63a5\u6253\u5305\u8fdb scripts.js\uff0c\u8fd9\u4f1a\u5bfc\u81f4 scripts.js \u4f53\u79ef\u53d8\u5927\uff0cNG-ALAIN \u63d0\u4f9b\u53e6\u4e00\u79cd\u5ef6\u8fdf\u52a0\u8f7dCDN\u7c7b\u5e93\u811a\u672c\u89e3\u51b3\u65b9\u6848\uff0c\u9002\u7528\u4f4e\u4f7f\u7528\u7387\u7684\u4e1a\u52a1\uff08\u4f8b\u5982\uff1azip \u538b\u7f29\uff09\uff0c\u53ef\u4ee5\u5229\u7528 LazyService \u5ef6\u8fdf\u52a0\u8f7d\u8fdc\u7a0bCDN\u811a\u672c\u3002

\u4f7f\u7528

Angular \u662f\u91c7\u7528 TypeScript \u8bed\u8a00\uff0c\u6240\u6709\u7c7b\u578b\u90fd\u5fc5\u987b\u660e\u786e\u5b9a\u4e49\u624d\u80fd\u4f7f\u7528\uff0c\u7ec6\u8282\u8bf7\u53c2\u8003 Angular \u5982\u4f55\u4f7f\u7528\u7b2c\u4e09\u65b9\u5e93\u3002

\u4e00\u4e2a\u8c03\u7528\u7684\u793a\u4f8b\u4ee3\u7801\uff1a

declare var QRious: any;\n\n@Component()\nexport class DEMOComponent {\n  constructor() {\n    const qr = new QRious();\n  }\n}',meta:{order:60,title:"\u4f7f\u7528\u7b2c\u4e09\u65b9\u7c7b\u5e93",type:"Dev"},toc:[{id:"Angular\u7ec4\u4ef6",title:"Angular\u7ec4\u4ef6",h:2,children:[{id:"\u5b89\u88c5\u4f9d\u8d56\u5305",title:"\u5b89\u88c5\u4f9d\u8d56\u5305",h:3},{id:"\u6ce8\u518c",title:"\u6ce8\u518c",h:3}]},{id:"\u975eAngular\u7ec4\u4ef6",title:"\u975eAngular\u7ec4\u4ef6",h:2,children:[{id:"\u5b89\u88c5\u4f9d\u8d56\u5305",title:"\u5b89\u88c5\u4f9d\u8d56\u5305",h:3},{id:"\u5bfc\u5165\u811a\u672c",title:"\u5bfc\u5165\u811a\u672c",h:3},{id:"\u4f7f\u7528",title:"\u4f7f\u7528",h:3}]}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-import"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"mock",redirectTo:"mock/zh",pathMatch:"full"},{path:"mock/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"zh-CN":"docs/mock.md"},content:{"zh-CN":{content:'
',meta:{order:60,title:"Mock",type:"Advance",url:"/mock/getting-started"},toc:[]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-mock"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"module",redirectTo:"module/zh",pathMatch:"full"},{path:"module/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/module.en-US.md","zh-CN":"docs/module.zh-CN.md"},content:{"en-US":{content:'

The AppModule, CoreModule, and SharedModule modules have not been used very clearly, and it is easy to use them. The goal of the Angular module is to make components, instructions, services, and pipeline function blocks more cohesive, and each functional area forms a separate set of business domains or utilities.

1) Classification description


AppModule

The root module is used to guide Angular startup. It is very suitable for importing some modules that need to be used everywhere in the application. Such as: theme system, user master authentication module, permission module, global HTTP interceptors, international services, etc..

CoreModule

The core module will only be imported once. It is equivalent to AppModule, but we should treat it as a pure service class module. For example: message, data access, etc.

SharedModule

We call it a shared module. It should not have providers because ShareModule will be imported in all business modules. Which will cause the service to be overwritten.

NG-ZORRO, @delon/abc, @delon/chart, etc. have changed from all import to on-demand import since version 11. For this reason, NG-ALAIN has refined two files shared-delon.module.ts and shared -zorro.module.ts merges some modules frequently used throughout the project into a module called SharedModule, which is why it is necessary to import it in the business module for the first time. Although this method can reduce unnecessary import code, it will also cause compilation speed. Therefore, it is not recommended to put all components into SharedModule, and try to put the modules that need to be used more than three times before putting them here; Otherwise, you must import it yourself in the business module.

2) Recommendation


AppModule

Should import module:

  • Angular Module: BrowserModule, BrowserAnimationsModule, HttpClientModule

  • AlainThemeModule Theme system

  • DelonMockModule Mock data

  • AlainAuthModule User authentication module

  • AlainACLModule Privilege module

  • Internationalization module

Should include services:

  • Angular globalization

  • HTTP interceptor

  • Angular start service

  • ng-zorro-antd Basic component service

  • @delon/abc Business component service

Role: Throughout the definition of the entire application.


CoreModule

Should only leave the providers attribute.

Role: Some common services. such as: user messages, HTTP data access.


ShareModule

Should contain definitions:

  • Apply generic custom business components

Should import module:

  • Angular generic module:CommonModule\u3001FormsModule\u3001RouterModule\u3001ReactiveFormsModule

  • ng-zorro-antd Basic component module

  • @delon/abc Business component module

  • Third-party generic dependency component module

Should Export all included modules.

Should not have providers attribute.

Function: Some common custom, third-party component definitions, reducing the import of business modules.


Business module

The business module should include a business definition module and a routing module.

Should import module:

Should not:

  • Export any component

  • Try not to use the providers attribute

Route module

Should include only the import, exports modules of the r

',meta:{order:30,title:{"en-US":"Module Guidelines","zh-CN":"\u6a21\u5757\u6ce8\u518c\u6307\u5bfc\u539f\u5219"},type:"Other"},toc:[{id:"1Classificationdescription",title:"1) Classification description",h:2,children:[{id:"AppModule",title:"AppModule",h:3},{id:"CoreModule",title:"CoreModule",h:3},{id:"SharedModule",title:"SharedModule",h:3}]},{id:"2Recommendation",title:"2) Recommendation",h:2,children:[{id:"AppModule",title:"AppModule",h:3},{id:"CoreModule",title:"CoreModule",h:3},{id:"ShareModule",title:"ShareModule",h:3},{id:"Businessmodule",title:"Business module",h:3}]}]},"zh-CN":{content:'

\u4e00\u76f4\u4ee5\u6765 AppModule\u3001CoreModule\u3001SharedModule \u6a21\u5757\u4f7f\u7528\u6ca1\u6709\u5f88\u660e\u786e\u7684\u89c4\u8303\uff0c\u5f88\u5bb9\u6613\u8ba9\u4ea7\u751f\u4e71\u7528\u3002Angular\u6a21\u5757\u76ee\u6807\u662f\u4e3a\u4e86\u4f7f\u7ec4\u4ef6\u3001\u6307\u4ee4\u3001\u670d\u52a1\u548c\u7ba1\u9053\u529f\u80fd\u5757\u66f4\u5185\u805a\uff0c\u5e76\u6bcf\u4e00\u4e2a\u529f\u80fd\u533a\u57df\u5f62\u6210\u72ec\u7acb\u7684\u4e1a\u52a1\u9886\u57df\u6216\u5b9e\u7528\u5de5\u5177\u7684\u96c6\u5408\u3002

1) \u5206\u7c7b\u8bf4\u660e


AppModule

\u6839\u6a21\u5757\uff0c\u7528\u4e8e\u5f15\u5bfc Angular \u542f\u52a8\uff1b\u5b83\u975e\u5e38\u9002\u5408\u5bfc\u5165\u4e00\u4e9b\u9700\u8981\u5728\u6574\u4e2a\u5e94\u7528\u5230\u5904\u9700\u8981\u7684\u6a21\u5757\uff0c\u4f8b\u5982\uff1a\u4e3b\u9898\u7cfb\u7edf\u3001\u7528\u6237\u4e3b\u8ba4\u8bc1\u6a21\u5757\u3001\u6743\u9650\u6a21\u5757\u7b49\u6a21\u5757\uff0c\u4ee5\u53ca\u4e00\u4e9b\u5168\u5c40\u6027HTTP\u62e6\u622a\u5668\u3001\u56fd\u9645\u5316\u670d\u52a1\u7b49\u3002

CoreModule

\u6838\u5fc3\u6a21\u5757\u53ea\u4f1a\u88ab\u5bfc\u5165\u4e00\u6b21\uff0c\u5b83\u7b49\u540c AppModule\uff0c\u4f46\u6211\u4eec\u66f4\u5e94\u8be5\u628a\u5b83\u5f53\u6210\u4e00\u4e2a\u7eaf\u670d\u52a1\u7c7b\u6a21\u5757\uff0c\u4f8b\u5982\uff1a\u6d88\u606f\u3001\u6570\u636e\u8bbf\u95ee\u7b49\u3002

SharedModule

\u6211\u4eec\u53eb\u5b83\u5171\u4eab\u6a21\u5757\uff1b\u5b83\u4e0d\u5e94\u8be5\u51fa\u73b0 providers\uff0c\u56e0\u4e3a ShareModule \u4f1a\u5728\u6240\u6709\u4e1a\u52a1\u6a21\u5757\u4e2d\u88ab\u5bfc\u5165\uff0c\u8fd9\u4f1a\u5bfc\u81f4\u670d\u52a1\u88ab\u8986\u76d6\u3002

NG-ZORRO\u3001@delon/abc\u3001@delon/chart \u7b49\u4ece\u7248\u672c11\u5f00\u59cb\u7531\u4e00\u6b21\u6027\u5bfc\u5165\u6539\u6210\u6309\u9700\u5bfc\u5165\uff0c\u4e3a\u6b64 NG-ALAIN \u63d0\u70bc\u4e86\u4e24\u4e2a\u6587\u4ef6 shared-delon.module.ts\u3001shared-zorro.module.ts \u5c06\u4e00\u4e9b\u6574\u4e2a\u9879\u76ee\u7ecf\u5e38\u7528\u5230\u7684\u6a21\u5757\u5408\u5e76\u6210\u4e00\u4e2a\u53eb SharedModule \u6a21\u5757\u5185\uff0c\u8fd9\u4e5f\u5c31\u662f\u4e3a\u4ec0\u4e48\u9700\u8981\u5728\u4e1a\u52a1\u6a21\u5757\u5185\u7b2c\u4e00\u65f6\u95f4\u5bfc\u5165\u5b83\u3002\u867d\u7136\u8fd9\u79cd\u65b9\u5f0f\u53ef\u4ee5\u51cf\u5c11\u4e0d\u5fc5\u8981\u7684\u5bfc\u5165\u4ee3\u7801\uff0c\u4f46\u540c\u65f6\u4e5f\u4f1a\u5f15\u8d77\u7f16\u8bd1\u901f\u5ea6\uff0c\u56e0\u6b64\u4e0d\u5efa\u8bae\u628a\u6240\u6709\u7ec4\u4ef6\u90fd\u653e\u8fdb SharedModule \u5185\uff0c\u5c3d\u53ef\u80fd\u5c06\u9700\u8981\u7528\u5230\u7684\u6a21\u5757\u4e09\u6b21\u4ee5\u4e0a\u4f7f\u7528\u624d\u653e\u8fdb\u8fd9\u91cc\uff1b\u5426\u5219\u52a1\u5fc5\u5728\u4e1a\u52a1\u6a21\u5757\u5185\u81ea\u884c\u5bfc\u5165\u3002

2) \u5efa\u8bae


AppModule

\u5e94 \u5bfc\u5165\u6a21\u5757\uff1a

  • Angular \u6a21\u5757\uff1aBrowserModule\u3001BrowserAnimationsModule\u3001HttpClientModule

  • AlainThemeModule \u4e3b\u9898\u7cfb\u7edf

  • DelonMockModule Mock\u6570\u636e

  • AlainAuthModule \u7528\u6237\u8ba4\u8bc1\u6a21\u5757

  • AlainACLModule \u6743\u9650\u6a21\u5757

  • \u56fd\u9645\u5316\u6a21\u5757

\u5e94 \u5305\u542b\u670d\u52a1\uff1a

  • Angular \u56fd\u9645\u5316

  • HTTP \u62e6\u622a\u5668

  • Angular \u542f\u52a8\u670d\u52a1

  • ng-zorro-antd \u57fa\u7840\u7ec4\u4ef6\u670d\u52a1

  • @delon/abc \u4e1a\u52a1\u7ec4\u4ef6\u670d\u52a1

\u4f5c\u7528\uff1a \u8d2f\u7a7f\u6574\u4e2a\u5e94\u7528\u7684\u5b9a\u4e49\u3002


CoreModule

\u5e94 \u4ec5\u53ea\u7559 providers \u5c5e\u6027\u3002

\u4f5c\u7528\uff1a \u4e00\u4e9b\u901a\u7528\u670d\u52a1\uff0c\u4f8b\u5982\uff1a\u7528\u6237\u6d88\u606f\u3001HTTP\u6570\u636e\u8bbf\u95ee\u3002


ShareModule

\u5e94 \u5305\u542b\u5b9a\u4e49\uff1a

  • \u5e94\u7528\u901a\u7528\u81ea\u5b9a\u4e49\u4e1a\u52a1\u7ec4\u4ef6

\u5e94 \u5bfc\u5165\u6a21\u5757\uff1a

  • Angular \u901a\u7528\u6a21\u5757\uff1aCommonModule\u3001FormsModule\u3001RouterModule\u3001ReactiveFormsModule

  • ng-zorro-antd \u57fa\u7840\u7ec4\u4ef6\u6a21\u5757

  • @delon/abc \u4e1a\u52a1\u7ec4\u4ef6\u6a21\u5757

  • \u7b2c\u4e09\u65b9\u901a\u7528\u4f9d\u8d56\u7ec4\u4ef6\u6a21\u5757

\u5e94 \u5bfc\u51fa\u6240\u6709\u5305\u542b\u7684\u6a21\u5757\u3002

\u4e0d\u5e94 \u6709 providers \u5c5e\u6027\u3002

\u4f5c\u7528\uff1a \u4e00\u4e9b\u901a\u7528\u81ea\u5b9a\u4e49\u3001\u7b2c\u4e09\u65b9\u7ec4\u4ef6\u5b9a\u4e49\uff0c\u51cf\u5c11\u4e1a\u52a1\u6a21\u5757\u7684\u5bfc\u5165\u3002


\u4e1a\u52a1\u6a21\u5757

\u4e1a\u52a1\u6a21\u5757\u5e94\u8be5\u5305\u62ec\u4e1a\u52a1\u5b9a\u4e49\u6a21\u5757\u548c\u8def\u7531\u6a21\u5757\u3002

\u6a21\u5757

\u5e94 \u5bfc\u5165\u6a21\u5757\uff1a

\u4e0d\u5e94\uff1a

  • \u5bfc\u51fa\u4efb\u4f55\u7ec4\u4ef6

  • \u5c3d\u53ef\u80fd\u4e0d\u8981\u4f7f\u7528 providers \u5c5e\u6027

\u8def\u7531\u6a21\u5757

\u5e94 \u53ea\u5305\u62ec\u8def\u7531\u7684 import\u3001exports',meta:{order:30,title:{"en-US":"Module Guidelines","zh-CN":"\u6a21\u5757\u6ce8\u518c\u6307\u5bfc\u539f\u5219"},type:"Other"},toc:[{id:"1\u5206\u7c7b\u8bf4\u660e",title:"1) \u5206\u7c7b\u8bf4\u660e",h:2,children:[{id:"AppModule",title:"AppModule",h:3},{id:"CoreModule",title:"CoreModule",h:3},{id:"SharedModule",title:"SharedModule",h:3}]},{id:"2\u5efa\u8bae",title:"2) \u5efa\u8bae",h:2,children:[{id:"AppModule",title:"AppModule",h:3},{id:"CoreModule",title:"CoreModule",h:3},{id:"ShareModule",title:"ShareModule",h:3},{id:"\u4e1a\u52a1\u6a21\u5757",title:"\u4e1a\u52a1\u6a21\u5757",h:3}]}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-module"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"new-component",redirectTo:"new-component/zh",pathMatch:"full"},{path:"new-component/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/new-component.en-US.md","zh-CN":"docs/new-component.zh-CN.md"},content:{"en-US":{content:'

For some functional modules that may be referenced in multiple places, it is recommended to refine the management into unified management of business components. These components generally have the following characteristics:

  • Only responsible for a relatively independent, stable function;

  • no separate routing configuration;

  • May be purely static, controlled only by parameters passed by the parent component (usually a page).

Let\'s take a simple static component as an example. Suppose your app often needs to display images. These images are fixed in width, have a gray background and a certain padding, and have text descriptions, like the following:

You can do this with a component that has a default style and can receive the parameters passed by the parent component for display.

Create a new file

Create a new folder named components under src/app/shared. Create folder called image-wrapper and component file. If required add ts files index.ts and style files index.less. Provide README.md for component API descriptions in this folder.

When using components, the default is to look for the export object in index.ts. If your component is more complex, you can split it into multiple files, and finally unify the export in index.ts, like this:

// main.component.ts\nexport class MainComponent {}\n\n// sub.component.ts\nexport class SubComponent {}\n\n// index.ts\nexport MainComponent from \'./main.component\';\nexport SubComponent from \'./sub.component\';

Your code is probably like this:

// index.ts\nimport { Component, Input } from \'@angular/core\';\n\n@Component({\n  selector: \'image-wrapper\',\n  template: `\n    <div [ngStyle]="style">\n      <img class="img" [src]="src" [alt]="desc" />\n      <div *ngIf="desc" class="desc">{{ desc }}</div>\n    </div>\n  `,\n  styleUrls: [ \'./index.less\' ]\n})\nexport class ImageWrapperComponent {\n  @Input() style: { [key: string]: string };\n  @Input() src: string;\n  @Input() desc: string;\n}
// index.less\n:host {\n  width: 400px;\n  margin: 0 auto;\n  padding: 0 20px 8px;\n  text-align: center;\n  background: #f2f4f5;\n\n  ::ng-deep {\n    .img {\n      max-width: calc(100% - 32px);\n      margin: 2.4em 1em;\n      vertical-align: middle;\n      box-shadow: 0 8px 20px rgba(143, 168, 191, 0.35);\n    }\n  }\n}

The components are built here, to learn more about the development of component styles.

Register

Once the component is created, you need to import the component into SharedModule so that all submodules can use it.

// shared.module.ts\nimport { ImageWrapperComponent } from \'./image-wrapper\';\nconst COMPONENTS = [\n  ImageWrapperComponent\n];

Use

Where you want to use this component, just follow the component-defined API input parameters and use it directly:

<image-wrapper\n  src="https://os.alipayobjects.com/rmsportal/mgesTPFxodmIwpi.png"\n  desc="schematic-diagram"></image-wrapper>',meta:{order:20,title:{"en-US":"New Component","zh-CN":"\u65b0\u589e\u4e1a\u52a1\u7ec4\u4ef6"},type:"Dev"},toc:[{id:"Createanewfile",title:"Create a new file",h:2},{id:"Register",title:"Register",h:2},{id:"Use",title:"Use",h:2}]},"zh-CN":{content:'

\u5bf9\u4e8e\u4e00\u4e9b\u53ef\u80fd\u88ab\u591a\u5904\u5f15\u7528\u7684\u529f\u80fd\u6a21\u5757\uff0c\u5efa\u8bae\u63d0\u70bc\u6210\u4e1a\u52a1\u7ec4\u4ef6\u7edf\u4e00\u7ba1\u7406\u3002\u8fd9\u4e9b\u7ec4\u4ef6\u4e00\u822c\u6709\u4ee5\u4e0b\u7279\u5f81\uff1a

  • \u53ea\u8d1f\u8d23\u4e00\u5757\u76f8\u5bf9\u72ec\u7acb\uff0c\u7a33\u5b9a\u7684\u529f\u80fd\uff1b

  • \u6ca1\u6709\u5355\u72ec\u7684\u8def\u7531\u914d\u7f6e\uff1b

  • \u53ef\u80fd\u662f\u7eaf\u9759\u6001\u7684\uff0c\u4ec5\u53d7\u7236\u7ec4\u4ef6\uff08\u901a\u5e38\u662f\u4e00\u4e2a\u9875\u9762\uff09\u4f20\u9012\u7684\u53c2\u6570\u63a7\u5236\u3002

\u4e0b\u9762\u4ee5\u4e00\u4e2a\u7b80\u5355\u7684\u9759\u6001\u7ec4\u4ef6\u4e3a\u4f8b\u8fdb\u884c\u4ecb\u7ecd\u3002\u5047\u8bbe\u4f60\u7684\u5e94\u7528\u4e2d\u7ecf\u5e38\u9700\u8981\u5c55\u73b0\u56fe\u7247\uff0c\u8fd9\u4e9b\u56fe\u7247\u5bbd\u5ea6\u56fa\u5b9a\uff0c\u6709\u4e00\u4e2a\u7070\u8272\u7684\u80cc\u666f\u548c\u4e00\u5b9a\u7684\u5185\u8fb9\u8ddd\uff0c\u6709\u6587\u5b57\u4ecb\u7ecd\uff0c\u5c31\u50cf\u4e0b\u56fe\u8fd9\u6837\uff1a

\u4f60\u53ef\u4ee5\u7528\u4e00\u4e2a\u7ec4\u4ef6\u6765\u5b9e\u73b0\u8fd9\u4e00\u529f\u80fd\uff0c\u5b83\u6709\u9ed8\u8ba4\u7684\u6837\u5f0f\uff0c\u540c\u65f6\u53ef\u4ee5\u63a5\u6536\u7236\u7ec4\u4ef6\u4f20\u9012\u7684\u53c2\u6570\u8fdb\u884c\u5c55\u793a\u3002

\u65b0\u5efa\u6587\u4ef6

\u5728 src/app/shared/components \u4e0b\u65b0\u5efa\u4e00\u4e2a\u4ee5\u7ec4\u4ef6\u540d\u547d\u540d\u7684\u6587\u4ef6\u5939\uff0c\u547d\u540d\u5c3d\u91cf\u4f53\u73b0\u7ec4\u4ef6\u7684\u529f\u80fd\uff0c\u8fd9\u91cc\u5c31\u53eb image-wrapper\u3002\u5728\u6b64\u6587\u4ef6\u5939\u4e0b\u65b0\u589e ts \u6587\u4ef6\u3001\u6837\u5f0f\u6587\u4ef6\uff08\u5982\u679c\u9700\u8981\uff09\u53ca\u7ec4\u4ef6API\u8bf4\u660e\uff0c\u547d\u540d\u4e3a index.ts\u3001index.less\u548cREADME.md\u3002

\u5728\u4f7f\u7528\u7ec4\u4ef6\u65f6\uff0c\u9ed8\u8ba4\u4f1a\u5728 index.ts \u4e2d\u5bfb\u627e export \u7684\u5bf9\u8c61\uff0c\u5982\u679c\u4f60\u7684\u7ec4\u4ef6\u6bd4\u8f83\u590d\u6742\uff0c\u53ef\u4ee5\u5206\u4e3a\u591a\u4e2a\u6587\u4ef6\uff0c\u6700\u540e\u5728 index.ts \u4e2d\u7edf\u4e00 export\uff0c\u5c31\u50cf\u8fd9\u6837\uff1a

// main.component.ts\nexport class MainComponent {}\n\n// sub.component.ts\nexport class SubComponent {}\n\n// index.ts\nexport MainComponent from \'./main.component\';\nexport SubComponent from \'./sub.component\';

\u4f60\u7684\u4ee3\u7801\u5927\u6982\u662f\u8fd9\u4e2a\u6837\u5b50\uff1a

// index.ts\nimport { Component, Input } from \'@angular/core\';\n\n@Component({\n  selector: \'image-wrapper\',\n  template: `\n    <div [ngStyle]="style">\n      <img class="img" [src]="src" [alt]="desc" />\n      <div *ngIf="desc" class="desc">{{ desc }}</div>\n    </div>\n  `,\n  styleUrls: [ \'./index.less\' ]\n})\nexport class ImageWrapperComponent {\n  @Input() style: { [key: string]: string };\n  @Input() src: string;\n  @Input() desc: string;\n}
// index.less\n:host {\n  width: 400px;\n  margin: 0 auto;\n  padding: 0 20px 8px;\n  text-align: center;\n  background: #f2f4f5;\n\n  ::ng-deep {\n    .img {\n      max-width: calc(100% - 32px);\n      margin: 2.4em 1em;\n      vertical-align: middle;\n      box-shadow: 0 8px 20px rgba(143, 168, 191, 0.35);\n    }\n  }\n}

\u5230\u8fd9\u513f\u7ec4\u4ef6\u5c31\u5efa\u597d\u4e86\uff0c\u4e86\u89e3\u66f4\u591a\u5173\u4e8e\u7ec4\u4ef6\u6837\u5f0f\u7684\u5f00\u53d1\u3002

\u6ce8\u518c

\u7ec4\u4ef6\u521b\u5efa\u597d\u540e\uff0c\u9700\u8981\u5c06\u7ec4\u4ef6\u5bfc\u5165 SharedModule \u4e2d\uff0c\u8fd9\u6837\u6240\u6709\u5b50\u6a21\u5757\u90fd\u53ef\u4ee5\u4f7f\u7528\u5230\u8be5\u7ec4\u4ef6\u3002

// shared.module.ts\nimport { ImageWrapperComponent } from \'./image-wrapper\';\nconst COMPONENTS = [\n  ImageWrapperComponent\n];

\u4f7f\u7528

\u5728\u8981\u4f7f\u7528\u8fd9\u4e2a\u7ec4\u4ef6\u7684\u5730\u65b9\uff0c\u6309\u7167\u7ec4\u4ef6\u5b9a\u4e49\u7684 API \u4f20\u5165\u53c2\u6570\uff0c\u76f4\u63a5\u4f7f\u7528\u5c31\u597d\uff1a

<image-wrapper\n  src="https://os.alipayobjects.com/rmsportal/mgesTPFxodmIwpi.png"\n  desc="\u793a\u610f\u56fe"></image-wrapper>',meta:{order:20,title:{"en-US":"New Component","zh-CN":"\u65b0\u589e\u4e1a\u52a1\u7ec4\u4ef6"},type:"Dev"},toc:[{id:"\u65b0\u5efa\u6587\u4ef6",title:"\u65b0\u5efa\u6587\u4ef6",h:2},{id:"\u6ce8\u518c",title:"\u6ce8\u518c",h:2},{id:"\u4f7f\u7528",title:"\u4f7f\u7528",h:2}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-new-component"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"new-page",redirectTo:"new-page/zh",pathMatch:"full"},{path:"new-page/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/new-page.en-US.md","zh-CN":"docs/new-page.zh-CN.md"},content:{"en-US":{content:'

Angular renders a page in a component tree, the actual development is to organize the code in a module tree to make it better to resuse code. For module granularity depends on the requirements, ng-alain is positioned in the middle of the front-end. Therefore, it is recommended to organize your code structure from a business perspective.

NG-ALAIN provides a very rich set of Schematics templates to quickly create templates and pages that match NG-ALAIN features, as well as a variety of pluggable plugins.

Additionally: NG-ALAIN is a standard Angular CLI project, you can still use the default command line.

First, the module

To create a page, you need to create a module first. If you need a system to set the relevant module, execute the command:

ng g ng-alain:module sys

The CLI will automatically create sys.module.ts and sys-routing.module.ts files under src/app/routes/sys, the former is the system setup module component definition file; the latter is the system setup module routing Configuration file.

// sys.module.ts\nimport { NgModule, Type } from \'@angular/core\';\nimport { SharedModule } from \'@shared\';\nimport { SysRoutingModule } from \'./sys-routing.module\';\n\nconst COMPONENTS: Type[] = [];\n\n@NgModule({\n  imports: [SharedModule, SysRoutingModule],\n  declarations: COMPONENTS,\n})\nexport class SysModule {}

The function of the module is to import the modules we need. All NG-ZORRO, @delon/abc, @delon/chart, etc. are loaded on demand. The external components are imported wherever the current business page needs. In order to reduce these import actions, NG -ALAIN has refined two files shared-delon.module.ts and shared-zorro.module.ts to merge some modules frequently used throughout the project into a module called SharedModule, which is why it is necessary Import it in the business module for the first time. Note: It is not recommended to put all the components in SharedModule, as far as possible, put the modules that need to be used two or three times or more.

And the routing configuration module:

// sys-routing.module.ts\nimport { NgModule } from \'@angular/core\';\nimport { RouterModule, Routes } from \'@angular/router\';\n\nconst routes: Routes = [];\n\n@NgModule({\n  imports: [RouterModule.forChild(routes)],\n  exports: [RouterModule],\n})\nexport class SysRoutingModule {}

By now, you can safely start developing business pages like menu management, logging, system configuration, etc. in the sys directory.

Second, the page

Use the ng generate (abbreviated as: ng g) command to create a log list page in the sys directory:

ng g ng-alain:list log -m=sys

See Command Line Tools for more information.

Finally, you can access the Log page.

Of course, the log may be a very rich piece of information, you can add a view page opened in a modal box to display more details.

ng g ng-alain:view view -m=sys -t=log

-t=log indicates that you want to put the created file under sys/log/view',meta:{order:10,title:{"en-US":"New Page","zh-CN":"\u65b0\u589e\u9875\u9762"},type:"Dev"},toc:[{id:"First,themodule",title:"First, the module",h:2},{id:"Second,thepage",title:"Second, the page",h:2}]},"zh-CN":{content:'

Angular \u867d\u7136\u662f\u4ee5\u7ec4\u4ef6\u6811\u6765\u6e32\u67d3\u4e00\u4e2a\u9875\u9762\uff0c\u7136\u540e\u5b9e\u9645\u5f00\u53d1\u662f\u4ee5\u4e00\u79cd\u6a21\u5757\u6811\u6765\u7ec4\u7ec7\u4ee3\u7801\uff0c\u4f7f\u5176\u80fd\u66f4\u597d\u5730\u4ee3\u7801\u590d\u7528\u3002\u800c\u5bf9\u4e8e\u6a21\u5757\u7c92\u5ea6\u53d6\u51b3\u4e8e\u9700\u6c42\uff0cng-alain\u7684\u5b9a\u4f4d\u5728\u4e8e\u4e2d\u53f0\u524d\u7aef\uff0c\u56e0\u6b64\uff0c\u6bd4\u8f83\u5efa\u8bae\u4ece\u4e1a\u52a1\u89d2\u5ea6\u51fa\u53d1\u7ec4\u7ec7\u4f60\u7684\u4ee3\u7801\u7ed3\u6784\u3002

NG-ALAIN \u63d0\u4f9b\u4e00\u5957\u975e\u5e38\u4e30\u5bcc\u7684 Schematics \u6a21\u677f\uff0c\u53ef\u4ee5\u5feb\u901f\u521b\u5efa\u7b26\u5408 NG-ALAIN \u7279\u70b9\u7684\u6a21\u677f\u548c\u9875\u9762\uff1b\u540c\u65f6\u5305\u542b\u591a\u79cd\u53ef\u63d2\u62d4\u63d2\u4ef6\u3002

\u53e6\uff1aNG-ALAIN \u662f\u4e00\u4e2a\u6807\u51c6\u7684 Angular CLI \u9879\u76ee\uff0c\u4f60\u4f9d\u7136\u53ef\u4ee5\u4f7f\u7528\u9ed8\u8ba4\u7684\u6240\u6709\u547d\u4ee4\u884c\u3002

\u4e00\u3001\u6a21\u5757

\u8981\u521b\u5efa\u4e00\u4e2a\u9875\u9762\u9700\u8981\u5148\u521b\u5efa\u4e00\u4e2a\u6a21\u5757\u5f00\u59cb\uff0c\u5047\u5982\u9700\u8981\u4e00\u4e2a\u7cfb\u7edf\u8bbe\u7f6e\u76f8\u5173\u7684\u6a21\u5757\uff0c\u6267\u884c\u547d\u4ee4\uff1a

ng g ng-alain:module sys

CLI \u4f1a\u81ea\u52a8\u5728 src/app/routes/sys \u4e0b\u521b\u5efa sys.module.ts \u548c sys-routing.module.ts \u6587\u4ef6\uff0c\u524d\u8005\u662f\u7cfb\u7edf\u8bbe\u7f6e\u6a21\u5757\u7ec4\u4ef6\u5b9a\u4e49\u6587\u4ef6\uff1b\u540e\u8005\u662f\u7cfb\u7edf\u8bbe\u7f6e\u6a21\u5757\u8def\u7531\u914d\u7f6e\u6587\u4ef6\u3002

// sys.module.ts\nimport { NgModule, Type } from \'@angular/core\';\nimport { SharedModule } from \'@shared\';\nimport { SysRoutingModule } from \'./sys-routing.module\';\n\nconst COMPONENTS: Type[] = [];\n\n@NgModule({\n  imports: [SharedModule, SysRoutingModule],\n  declarations: COMPONENTS,\n})\nexport class SysModule {}

\u6a21\u5757\u7684\u4f5c\u7528\u662f\u5bfc\u5165\u6211\u4eec\u9700\u8981\u7684\u6a21\u5757\uff0c\u6240\u6709 NG-ZORRO\u3001@delon/abc\u3001@delon/chart \u7b49\u90fd\u662f\u6309\u9700\u6c42\u52a0\u8f7d\u6a21\u5757\uff0c\u5f53\u524d\u4e1a\u52a1\u9875\u9700\u8981\u54ea\u91cc\u5916\u90e8\u7ec4\u4ef6\u5c31\u5bfc\u5165\u54ea\u4e9b\uff0c\u4e3a\u4e86\u51cf\u5c11\u8fd9\u4e9b\u5bfc\u5165\u52a8\u4f5c\uff0cNG-ALAIN \u63d0\u70bc\u4e86\u4e24\u4e2a\u6587\u4ef6 shared-delon.module.ts\u3001shared-zorro.module.ts \u5c06\u4e00\u4e9b\u6574\u4e2a\u9879\u76ee\u7ecf\u5e38\u7528\u5230\u7684\u6a21\u5757\u5408\u5e76\u6210\u4e00\u4e2a\u53eb SharedModule \u6a21\u5757\u5185\uff0c\u8fd9\u4e5f\u5c31\u662f\u4e3a\u4ec0\u4e48\u9700\u8981\u5728\u4e1a\u52a1\u6a21\u5757\u5185\u7b2c\u4e00\u65f6\u95f4\u5bfc\u5165\u5b83\u3002\u6ce8\u610f\uff1a\u4e0d\u5efa\u8bae\u628a\u6240\u6709\u7ec4\u4ef6\u90fd\u653e\u8fdb SharedModule \u5185\uff0c\u5c3d\u53ef\u80fd\u5c06\u9700\u8981\u7528\u5230\u7684\u6a21\u5757\u4ee5\u4e8c\u6216\u4e09\u6b21\u4ee5\u4e0a\u4f7f\u7528\u624d\u653e\u8fdb\u8fd9\u91cc\u3002

\u4ee5\u53ca\u8def\u7531\u914d\u7f6e\u6a21\u5757\uff1a

// sys-routing.module.ts\nimport { NgModule } from \'@angular/core\';\nimport { RouterModule, Routes } from \'@angular/router\';\n\nconst routes: Routes = [];\n\n@NgModule({\n  imports: [RouterModule.forChild(routes)],\n  exports: [RouterModule],\n})\nexport class SysRoutingModule {}

\u81f3\u6b64\uff0c\u4f60\u53ef\u4ee5\u653e\u5fc3\u5728 sys \u76ee\u5f55\u4e2d\u5f00\u59cb\u5f00\u53d1\u50cf\u83dc\u5355\u7ba1\u7406\u3001\u65e5\u5fd7\u3001\u7cfb\u7edf\u914d\u7f6e\u7b49\u4e1a\u52a1\u9875\u9762\u3002

\u4e8c\u3001\u9875\u9762

\u5229\u7528 ng generate\uff08\u53ef\u7b80\u5199\u4e3a\uff1ang g\uff09 \u547d\u4ee4\u5728 sys \u76ee\u5f55\u4e0b\u521b\u5efa\u4e00\u4e2a\u65e5\u5fd7\u5217\u8868\u9875\uff1a

ng g ng-alain:list log -m=sys

\u4e86\u89e3\u66f4\u591a\u8bf7\u53c2\u8003\u547d\u4ee4\u884c\u5de5\u5177\u3002

\u6700\u7ec8\uff0c\u4f60\u53ef\u4ee5\u8bbf\u95ee \u65e5\u5fd7 \u9875\u9762\u3002

\u5f53\u7136\u65e5\u5fd7\u53ef\u80fd\u662f\u4e00\u4e2a\u975e\u5e38\u4e30\u5bcc\u7684\u4fe1\u606f\uff0c\u53ef\u4ee5\u589e\u52a0\u4e00\u4e2a\u4ee5\u6a21\u6001\u6846\u6253\u5f00\u7684\u67e5\u770b\u9875\u6765\u663e\u793a\u66f4\u591a\u8be6\u60c5\u3002

ng g ng-alain:view view -m=sys -t=log

-t=log \u8868\u793a\u5e0c\u671b\u628a\u521b\u5efa\u7684\u6587\u4ef6\u653e\u8fdb\u81f3 sys/log/view',meta:{order:10,title:{"en-US":"New Page","zh-CN":"\u65b0\u589e\u9875\u9762"},type:"Dev"},toc:[{id:"\u4e00\u3001\u6a21\u5757",title:"\u4e00\u3001\u6a21\u5757",h:2},{id:"\u4e8c\u3001\u9875\u9762",title:"\u4e8c\u3001\u9875\u9762",h:2}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-new-page"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"performance",redirectTo:"performance/zh",pathMatch:"full"},{path:"performance/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/performance.en-US.md","zh-CN":"docs/performance.zh-CN.md"},content:{"en-US":{content:'

Envelope size optimization

Divided into JavaScript script files and CSS files. The following only describes the script part. For the CSS file, please refer to Optimize Theme System.

Note: It is recommended to always prioritize business, optimize to the post- criteria, and have some understanding of NG-ALAIN before starting to optimize. The optimization scheme in this chapter will change with the change of the version. Please pay attention to the details.

Structure description

In general, there are two files that are larger after the build: scripts.js and main.js, and our optimization is mainly for these two items.

scripts.js

It comes from a collection of scripts nodes of angular.json, so the size of this file depends on the size of the third-party component referenced by the scripts node.

In general, you should put it under scripts when you are using non-Angular third-party components.

main.js

Using ng build by default will package all @angular/*, ng-zorro-antd, @delon/* and some third-party Angular components. Unless you use the --vendor-chunk parameter to separate these classes library.

Optimization object

We know that the resource file packaged by Angular Cli will contain the hashing value of the file. Which is like the unique identifier of the file. If the module is not modified, no new hashing value will be generated. This ensures that after the user downloads the resource for the first time. No matter how we build the user again, there is no need to download it again.

In fact, Angular Cli defaults to --vendor-chunk. The main factor is that these @angular/* are very fast relative to iteration.

According to NG-ALAIN\'s module registration guidelines, generate two shared-delon.module.ts andshared-zorro.module.ts produced are the summary of the import of secondary modules shared by @Delon and NG-ZORRO.

@delon/abc,@delon/chart, ng-zorro-antd The three main libraries all support secondary imports. Only selecting the modules required by the project will effectively solve the problem of package size.

Conclusion

After NG-ZORRO provides better optimization support, we will release #684 and hope to have a better package size. Expected res

',meta:{order:80,title:{"en-US":"Performance","zh-CN":"\u4f18\u5316"},type:"Advance"},toc:[{id:"Envelopesizeoptimization",title:"Envelope size optimization",h:2,children:[{id:"Structuredescription",title:"Structure description",h:3},{id:"Optimizationobject",title:"Optimization object",h:3},{id:"Conclusion",title:"Conclusion",h:3}]}]},"zh-CN":{content:'

\u5305\u4f53\u5927\u5c0f\u4f18\u5316

\u5206\u4e3aJavaScript\u811a\u672c\u6587\u4ef6\u548cCSS\u6587\u4ef6\uff0c\u4ee5\u4e0b\u53ea\u63cf\u8ff0\u811a\u672c\u90e8\u5206\uff0c\u6709\u5173CSS\u6587\u4ef6\u8bf7\u53c2\u8003\u4f18\u5316\u4e3b\u9898\u7cfb\u7edf\u3002

\u6ce8\u610f\uff1a \u5efa\u8bae\u59cb\u7ec8\u4ee5\u4e1a\u52a1\u4f18\u5148\uff0c\u4f18\u5316\u4e3a\u540e\u7684\u51c6\u5219\uff0c\u4e14\u5728\u5f00\u59cb\u524d\u5bf9 NG-ALAIN \u6709\u4e00\u5b9a\u4e86\u89e3\u540e\u518d\u8fdb\u884c\u4f18\u5316\u3002\u672c\u7ae0\u8282\u7684\u4f18\u5316\u65b9\u6848\u4f1a\u968f\u7740\u7248\u672c\u7684\u66f4\u8fed\u6709\u6240\u53d8\u52a8\uff0c\u6709\u5173\u7ec6\u8282\u8bf7\u6301\u7eed\u5173\u6ce8\u3002

\u7ed3\u6784\u8bf4\u660e

\u4e00\u822c\u6765\u8bf4\uff0c\u6784\u5efa\u540e\u6709\u4e24\u4e2a\u6587\u4ef6\u4f1a\u6bd4\u8f83\u5927\uff1ascripts.js \u548c main.js\uff0c\u800c\u6211\u4eec\u4f18\u5316\u4e5f\u4e3b\u8981\u9488\u5bf9\u8fd9\u4e24\u9879\u3002

scripts.js

\u5b83\u6765\u81ea\u662f angular.json \u7684 scripts \u8282\u70b9\u7684\u96c6\u5408\uff0c\u56e0\u6b64\uff0c\u8fd9\u4e2a\u6587\u4ef6\u7684\u5927\u5c0f\u53d6\u51b3\u4e8e scripts \u8282\u70b9\u6240\u5f15\u7528\u7684\u7b2c\u4e09\u65b9\u7ec4\u4ef6\u7684\u5927\u5c0f\u3002

\u4e00\u822c\u6765\u8bf4\uff0c\u5f53\u4f60\u5728\u4f7f\u7528\u975e Angular \u7b2c\u4e09\u65b9\u7ec4\u4ef6\u65f6\u90fd\u5e94\u8be5\u653e\u5728 scripts \u4e0b\u3002

main.js

\u9ed8\u8ba4\u4f7f\u7528 ng build \u4f1a\u5c06\u6240\u6709 @angular/*\u3001ng-zorro-antd\u3001@delon/* \u4ee5\u53ca\u4e00\u4e9b\u7b2c\u4e09\u65b9 Angular \u7ec4\u4ef6\u90fd\u4f1a\u88ab\u6253\u5305\u8fdb\u6765\uff0c\u9664\u975e\u4f60\u4f7f\u7528 --vendor-chunk \u53c2\u6570\u6765\u5206\u79bb\u8fd9\u4e9b\u7c7b\u5e93\u3002

\u4f18\u5316\u5bf9\u8c61

\u6211\u4eec\u77e5\u9053\uff0cAngular Cli \u6253\u5305\u51fa\u6765\u7684\u8d44\u6e90\u6587\u4ef6\u4f1a\u5305\u542b\u8be5\u6587\u4ef6 hashing \u503c\uff0c\u5b83\u50cf\u662f\u6587\u4ef6\u7684\u552f\u4e00\u6807\u8bc6\u7801\uff0c\u82e5\u672a\u5bf9\u8be5\u6587\u4ef6\u8fdb\u884c\u6a21\u5757\u4fee\u6539\u90fd\u4e0d\u4f1a\u4ea7\u751f\u65b0\u7684 hashing \u503c\uff0c\u8fd9\u786e\u4fdd\u7528\u6237\u9996\u6b21\u4e0b\u8f7d\u8d44\u6e90\u540e\u4e0d\u7ba1\u6211\u4eec\u5982\u4f55\u518d\u6b21\u6784\u5efa\u7528\u6237\u90fd\u65e0\u987b\u518d\u4e00\u6b21\u4e0b\u8f7d\u3002

\u4e8b\u5b9e\u4e0a\uff0cAngular Cli \u9ed8\u8ba4\u5c06 --vendor-chunk \u4e3b\u8981\u56e0\u7d20\u662f\u8fd9\u4e9b @angular/* \u76f8\u5bf9\u4e8e\u8fed\u4ee3\u5f88\u5feb\u3002

\u6839\u636e NG-ALAIN \u7684\u6a21\u5757\u6ce8\u518c\u6307\u5bfc\u539f\u5219\uff0c\u4ea7\u751f\u7684\u4e24\u4e2a shared-delon.module.ts\u3001shared-zorro.module.ts \u4e24\u4e2a\u4e13\u95e8\u9488\u5bf9 @Delon \u4e0e NG-ZORRO \u5171\u4eab\u6b21\u7ea7\u6a21\u5757\u5bfc\u5165\u7684\u6c47\u603b\u3002

@delon/abc\u3001@delon/chart\u3001ng-zorro-antd \u4e09\u4e2a\u4e3b\u8981\u7c7b\u5e93\u90fd\u652f\u6301\u6b21\u7ea7\u5bfc\u5165\uff0c\u53ea\u9009\u62e9\u9879\u76ee\u6240\u9700\u8981\u7684\u6a21\u5757\u5c06\u6709\u6548\u7684\u89e3\u51b3\u5305\u4f53\u5927\u5c0f\u7684\u95ee\u9898\u3002

\u7ed3\u8bba

\u5f85 NG-ALAIN \u63d0\u4f9b\u66f4\u597d\u7684\u4f18\u5316\u652f\u6301\u540e\uff0c\u6211\u4eec\u4f1a\u53d1\u5e03 #684 \u5e0c\u671b\u5bf9\u5305\u4f53\u5927\u5c0f\u6709\u66f4\u597d\u7684

',meta:{order:80,title:{"en-US":"Performance","zh-CN":"\u4f18\u5316"},type:"Advance"},toc:[{id:"\u5305\u4f53\u5927\u5c0f\u4f18\u5316",title:"\u5305\u4f53\u5927\u5c0f\u4f18\u5316",h:2,children:[{id:"\u7ed3\u6784\u8bf4\u660e",title:"\u7ed3\u6784\u8bf4\u660e",h:3},{id:"\u4f18\u5316\u5bf9\u8c61",title:"\u4f18\u5316\u5bf9\u8c61",h:3},{id:"\u7ed3\u8bba",title:"\u7ed3\u8bba",h:3}]}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-performance"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"server",redirectTo:"server/zh",pathMatch:"full"},{path:"server/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/server.en-US.md","zh-CN":"docs/server.zh-CN.md"},content:{"en-US":{content:'

NG-ALAIN is a single-page application based on the Angular technology stack. We provide development models for front-end code and native analog data.\nWork in the form of the Restful API with the server application of any technology stack. The basics of interacting with the server are briefly described below.

Front-end request process

In NG-ALAIN, a complete front-end UI interaction to the server-side processing flow looks like this:

  1. Start Angular for the first time to execute APP_INITIALIZER;

  2. Usually some APP general data is loaded before startup, such as currently authorized user data, menu data, dictionary data, configuration data, etc.

  3. UI component interaction;

  4. Send the request using the encapsulated _HttpClient;

  5. Trigger the user authentication interceptor @delon/auth and add the token parameter uniformly;

  6. If there is no token or an expired interrupt subsequent request, jump directly to the login page;

  7. Trigger the default interceptor to process the prefix and other information;

  8. Get the server back;

  9. Trigger the default interceptor to handle request exceptions, business exceptions, etc.

  10. Update the data and refresh the UI.

Interceptor

By default, two interceptors are registered in the root module.SimpleInterceptor with DefaultInterceptorAnd the execution order is executed in the registration order.

SimpleInterceptor

User Authentication has built-in interceptors for automatically adding token parameters to requests. There is also a JWTInterceptor interceptor, which is a standard JWT specification. If the backend uses standard JWT, it can be directly replaced with a JWTInterceptor interceptor.

DefaultInterceptor

DefaultInterceptor The interceptor simply provides an interceptor. By default, it contains sample code that handles server request prefixes, handles request exceptions, and business exceptions. You can make adjustments based on your own needs.

Important point

We can put the next.handle(req) as the demarcation point in the interceptor intercept method. The first part is the request and the pipe part is the post. This will make it clearer which part is to be done before the request and which part will be executed after the request. For more information on interceptors, please refer to the official website.

Development environment

Under normal circumstances, the development environment and the production environment are not the same back-end request source. You can actually configure it under the environment directory. environment.ts and environment.prod.ts Change the request source for different environments.

environment is actually a JSON object, you can organize different forms to meet the problem of multiple request sources.

Mock

Sometimes when you want to develop the front-end first, you can use @delon/mock to simulate the request data. The actual principle is to use the interceptor to directly return the data to the matching URL instead of sending an HTTP request. By default, it is only valid for the test environment. Of course, you usually need to make sure that the data of the Mock interface is consistent with the backend. You can create the corresponding Mock interface in the _mock directory:

export const USERS = {\n  \'GET /users\': { users: [1, 2], total: 2 }\n}

So for the test environment, when the /users request is encountered, the {users: [1, 2], total: 2 } data is returned directly. See here for more Mock syntax and usage.

Note: When you don\'t need a Mock interface for a request, be sure to comment out or remove it.

Cors

Most applications will be front-end is separate from the back-end, which leads to CORS factors when a request is made to the back end, such as:

http.get(`http://192.168.1.100/api/app`).subscribe();

Note: If the request does not start with http, each request will add environment.SERVER_URL as the leading edge of the request URL.

The following error is returned directly:

Access to XMLHttpRequest at \'http://192.168.1.100/api/app\' from origin \'http://localhost:4200\' has been blocked by CORS policy: No \'Access-Control-Allow-Origin\' header is present on the requested resource.

There are usually two ways to solve cross-domain problems. One is to allow the back-end development environment to directly support CORS requests (not recommended, but simplest), the second is to use Angular Cli to provide Proxy Support, the development proxy server will forward the domain and port of the request sent by Angular to the backend Server, CORS is a security restriction of the browser. There is no problem with CORS before the proxy server and the backend server. This is why many people try to make it clear that they can be requested in Postman but not in Angular.

Assuming that all backend requests are prefixed with /api, you can configure all this prefix in proxy.conf.js to forward to the new backend, for example:

module.exports = {\n  \'/api\': {\n    target: \'http://192.168.1.100/api\',\n    secure: false\n  }\n}
  • /api Proxy path, domain is not supported

  • target Proxy target address

  • secure If the proxy target address is https, it should be set to true, otherwise it is false

  • pathRewrite Rewrite the address, such as pathRewrite: {\'^/api\':\'/\'} to change the prefix /api to /

  • changeOrigin Change the host of the host header to the target URL. Some backends will judge whether it is valid according to its value. You may need to set true

  • logLevel Set to debug to display the message forwarded by the agent on the terminal

Abort more detail please refer to Proxying to a backend server, and for configuration description please refer to http-proxy-middleware options.

Common problem

The request may be rejected or returned directly to 401?

Scaffolding uses the SimpleInterceptor interceptor of @delon/auth by default, which causes an error to be returned directly if a token cannot be obtained during the request.

User Authentication This process is a must for the middle office.

Unable to display request log

Starting from Angular 13, the debugging log of remote requests will no longer be displayed in the terminal. If you need to display the log, you can fix from refer to How to fix logging for proxy in angular

',meta:{order:40,title:"Work with Server",type:"Dev"},toc:[{id:"Front-endrequestprocess",title:"Front-end request process",h:2,children:[{id:"Interceptor",title:"Interceptor",h:3}]},{id:"Developmentenvironment",title:"Development environment",h:2},{id:"Mock",title:"Mock",h:2},{id:"Cors",title:"Cors",h:2},{id:"Commonproblem",title:"Common problem",h:2}]},"zh-CN":{content:'

NG-ALAIN \u662f\u4e00\u5957\u57fa\u4e8e Angular \u6280\u672f\u6808\u7684\u5355\u9875\u9762\u5e94\u7528\uff0c\u6211\u4eec\u63d0\u4f9b\u7684\u662f\u524d\u7aef\u4ee3\u7801\u548c\u672c\u5730\u6a21\u62df\u6570\u636e\u7684\u5f00\u53d1\u6a21\u5f0f\uff0c\n\u901a\u8fc7 Restful API \u7684\u5f62\u5f0f\u548c\u4efb\u4f55\u6280\u672f\u6808\u7684\u670d\u52a1\u7aef\u5e94\u7528\u4e00\u8d77\u5de5\u4f5c\u3002\u4e0b\u9762\u5c06\u7b80\u5355\u4ecb\u7ecd\u548c\u670d\u52a1\u7aef\u4ea4\u4e92\u7684\u57fa\u672c\u5199\u6cd5\u3002

\u524d\u7aef\u8bf7\u6c42\u6d41\u7a0b

\u5728 NG-ALAIN \u4e2d\uff0c\u4e00\u4e2a\u5b8c\u6574\u7684\u524d\u7aef UI \u4ea4\u4e92\u5230\u670d\u52a1\u7aef\u5904\u7406\u6d41\u7a0b\u662f\u8fd9\u6837\u7684\uff1a

  1. \u9996\u6b21\u542f\u52a8 Angular \u6267\u884c APP_INITIALIZER\uff1b

  2. \u901a\u5e38\u4f1a\u5728\u542f\u52a8\u524d\u5148\u52a0\u8f7d\u4e00\u4e9bAPP\u901a\u7528\u6570\u636e\uff0c\u4f8b\u5982\uff1a\u5f53\u524d\u5df2\u6388\u6743\u7528\u6237\u6570\u636e\u3001\u83dc\u5355\u6570\u636e\u3001\u5b57\u5178\u6570\u636e\u3001\u914d\u7f6e\u9879\u7b49

  3. UI \u7ec4\u4ef6\u4ea4\u4e92\u64cd\u4f5c\uff1b

  4. \u4f7f\u7528\u5c01\u88c5\u7684 _HttpClient \u53d1\u9001\u8bf7\u6c42\uff1b

  5. \u89e6\u53d1\u7528\u6237\u8ba4\u8bc1\u62e6\u622a\u5668 @delon/auth\uff0c\u7edf\u4e00\u52a0\u5165 token \u53c2\u6570\uff1b

    • \u82e5\u672a\u5b58\u5728 token \u6216\u5df2\u8fc7\u671f\u4e2d\u65ad\u540e\u7eed\u8bf7\u6c42\uff0c\u76f4\u63a5\u8df3\u8f6c\u81f3\u767b\u5f55\u9875\uff1b

  6. \u89e6\u53d1\u9ed8\u8ba4\u62e6\u622a\u5668\uff0c\u7edf\u4e00\u5904\u7406\u524d\u7f00\u7b49\u4fe1\u606f\uff1b

  7. \u83b7\u53d6\u670d\u52a1\u7aef\u8fd4\u56de\uff1b

  8. \u89e6\u53d1\u9ed8\u8ba4\u62e6\u622a\u5668\uff0c\u7edf\u4e00\u5904\u7406\u8bf7\u6c42\u5f02\u5e38\u3001\u4e1a\u52a1\u5f02\u5e38\u7b49\uff1b

  9. \u6570\u636e\u66f4\u65b0\uff0c\u5e76\u5237\u65b0 UI\u3002

\u62e6\u622a\u5668

\u9ed8\u8ba4\u60c5\u51b5\u4e0b\u5728\u6839\u6a21\u5757\u6ce8\u518c\u4e86\u4e24\u4e2a\u62e6\u622a\u5668 SimpleInterceptor \u548c DefaultInterceptor\uff0c\u4e14\u6267\u884c\u987a\u5e8f\u6309\u6ce8\u518c\u987a\u5e8f\u6267\u884c\u3002

SimpleInterceptor

\u7528\u6237\u8ba4\u8bc1\u5185\u7f6e\u7528\u4e8e\u81ea\u52a8\u4e3a\u8bf7\u6c42\u6dfb\u52a0 token \u53c2\u6570\u7684\u62e6\u622a\u5668\u3002\u8fd9\u91cc\u8fd8\u6709\u4e00\u4e2a\u53eb JWTInterceptor \u62e6\u622a\u5668\uff0c\u662f\u4e00\u4e2a\u6807\u51c6 JWT \u89c4\u8303\uff0c\u82e5\u540e\u7aef\u91c7\u7528\u6807\u51c6JWT\u53ef\u4ee5\u76f4\u63a5\u6362\u6210JWTInterceptor\u62e6\u622a\u5668\u3002

DefaultInterceptor

DefaultInterceptor \u62e6\u622a\u5668\u53ea\u662f\u63d0\u4f9b\u4e00\u4e2a\u62e6\u622a\u5668\u7684\u5199\u6cd5\uff0c\u9ed8\u8ba4\u5305\u542b\u4e86\u7edf\u4e00\u5904\u7406\u670d\u52a1\u5668\u8bf7\u6c42\u524d\u7f00\u3001\u5904\u7406\u8bf7\u6c42\u5f02\u5e38\u53ca\u4e1a\u52a1\u5f02\u5e38\u7684\u793a\u4f8b\u4ee3\u7801\uff0c\u4f60\u53ef\u4ee5\u6839\u636e\u4f60\u81ea\u5df1\u7684\u9700\u6c42\u505a\u8c03\u6574\u3002

\u6ce8\u610f\u70b9

\u6211\u4eec\u53ef\u4ee5\u628a\u62e6\u622a\u5668 intercept \u65b9\u6cd5\u5185\uff0c\u4ee5 next.handle(req) \u4e3a\u5206\u754c\u70b9\uff0c\u524d\u90e8\u5206\u4e3a\u8bf7\u6c42\u524d\uff0cpipe \u90e8\u5206\u4e3a\u63a5\u6536\u540e\u3002\u8fd9\u6837\u4f1a\u66f4\u660e\u786e\u77e5\u9053\u54ea\u4e00\u90e8\u5206\u662f\u8bf7\u6c42\u524d\u8981\u505a\uff0c\u54ea\u4e00\u90e8\u5206\u662f\u8bf7\u6c42\u540e\u4f1a\u6267\u884c\u7684\u3002\u6709\u5173\u66f4\u591a\u62e6\u622a\u5668\u77e5\u8bc6\u8bf7\u53c2\u8003\u5b98\u7f51\u3002

\u5f00\u53d1\u73af\u5883

\u6b63\u5e38\u60c5\u51b5\u4e0b\u5f00\u53d1\u73af\u5883\u548c\u751f\u4ea7\u73af\u5883\u4e0d\u662f\u540c\u4e00\u4e2a\u540e\u7aef\u8bf7\u6c42\u6e90\uff0c\u5b9e\u9645\u53ef\u4ee5\u901a\u8fc7\u914d\u7f6e environment \u76ee\u5f55\u4e0b environment.ts \u548c environment.prod.ts \u6539\u53d8\u4e0d\u540c\u73af\u5883\u7684\u8bf7\u6c42\u6e90\u3002

environment \u5b9e\u9645\u662f\u4e00\u4e2aJSON\u5bf9\u8c61\uff0c\u53ef\u4ee5\u7ec4\u7ec7\u4e0d\u540c\u5f62\u5f0f\u6765\u6ee1\u8db3\u591a\u8bf7\u6c42\u6e90\u7684\u95ee\u9898\u3002

Mock

\u6709\u65f6\u5019\u5e0c\u671b\u4f18\u5148\u5f00\u53d1\u524d\u7aef\u65f6\uff0c\u53ef\u4ee5\u5229\u7528 @delon/mock \u6765\u6a21\u62df\u8bf7\u6c42\u6570\u636e\uff0c\u5b9e\u9645\u539f\u7406\u662f\u5229\u7528\u62e6\u622a\u5668\uff0c\u5bf9\u5339\u914d\u7684URL\u76f4\u63a5\u8fd4\u56de\u6570\u636e\uff0c\u800c\u4e0d\u662f\u53d1\u9001\u4e00\u4e2aHTTP\u8bf7\u6c42\uff0c\u9ed8\u8ba4\u60c5\u51b5\u4e0b\u53ea\u5bf9\u6d4b\u8bd5\u73af\u5883\u6709\u6548\u3002\u5f53\u7136\u901a\u5e38\u60c5\u51b5\u4e0b\u4f60\u9700\u8981\u786e\u4fdd Mock \u63a5\u53e3\u7684\u6570\u636e\u4e0e\u540e\u7aef\u4fdd\u6301\u4e00\u81f4\uff0c\u4f60\u53ef\u4ee5\u5728 _mock \u76ee\u5f55\u4e0b\u521b\u5efa\u76f8\u5e94\u7684 Mock \u63a5\u53e3\uff1a

export const USERS = {\n  \'GET /users\': { users: [1, 2], total: 2 }\n}

\u56e0\u6b64\u5bf9\u4e8e\u6d4b\u8bd5\u73af\u5883\u4e0b\u5f53\u9047\u5230 /users \u8bf7\u6c42\u76f4\u63a5\u8fd4\u56de { users: [1, 2], total: 2 } \u6570\u636e\u3002\u6709\u5173\u66f4\u591a Mock \u8bed\u6cd5\u548c\u4f7f\u7528\u65b9\u5f0f\u53c2\u8003\u8fd9\u91cc\u3002

\u6ce8\uff1a \u5f53\u4f60\u4e0d\u9700\u8981\u67d0\u4e2a\u8bf7\u6c42\u7684 Mock \u63a5\u53e3\u65f6\uff0c\u52a1\u5fc5\u8981\u6ce8\u91ca\u6389\u6216\u79fb\u9664\u5b83\u3002

\u8de8\u57df

\u5927\u90e8\u5206\u5e94\u7528\u90fd\u4f1a\u524d\u540e\u7aef\u5206\u79bb\u8fdb\u884c\u5f00\u53d1\uff0c\u8fd9\u5bfc\u81f4\u5f53\u5bf9\u540e\u7aef\u53d1\u8d77\u4e00\u4e2a\u8bf7\u6c42\u65f6\u4f1a\u53d7\u8de8\u57df\uff08CORS\uff09\u7684\u56e0\u7d20\uff0c\u4f8b\u5982\uff1a

http.get(`http://192.168.1.100/api/app`).subscribe();

\u6ce8\uff1a\u5982\u679c\u975e http \u5f00\u5934\u7684\u8bf7\u6c42\uff0c\u4f1a\u5728\u6bcf\u4e2a\u8bf7\u6c42\u90fd\u4f1a\u52a0\u4e0a environment.SERVER_URL \u4f5c\u4e3a\u8bf7\u6c42 URL \u7684\u524d\u7f18\u3002

\u76f4\u63a5\u8fd4\u56de\u4ee5\u4e0b\u9519\u8bef\uff1a

Access to XMLHttpRequest at \'http://192.168.1.100/api/app\' from origin \'http://localhost:4200\' has been blocked by CORS policy: No \'Access-Control-Allow-Origin\' header is present on the requested resource.

\u800c\u6b63\u5e38\u89e3\u51b3\u8de8\u57df\u95ee\u9898\u6709\u4e24\u79cd\u65b9\u6cd5\uff0c\u4e00\u662f\u8ba9\u540e\u7aef\u5f00\u53d1\u73af\u5883\u76f4\u63a5\u652f\u6301\u8de8\u57df\u8bf7\u6c42\uff08\u4e0d\u63a8\u8350\uff0c\u4f46\u6700\u7b80\u5355\uff09\uff0c\u4e8c\u662f\u5229\u7528 Angular Cli \u63d0\u4f9b\u4ee3\u7406\u652f\u6301\uff0c\u5f00\u53d1\u4ee3\u7406\u670d\u52a1\u5668\u4f1a\u5c06 Angular \u53d1\u9001\u7684\u8bf7\u6c42\u7684\u57df\u548c\u7aef\u53e3\u8f6c\u53d1\u7ed9\u540e\u7aef\u670d\u52a1\u5668\uff0cCORS \u662f\u6d4f\u89c8\u5668\u7684\u5b89\u5168\u9650\u5236\uff0c\u5728\u4ee3\u7406\u670d\u52a1\u5668\u4e0e\u540e\u7aef\u670d\u52a1\u5668\u4e4b\u524d\u5e76\u4e0d\u5b58\u5728 CORS \u7684\u95ee\u9898\uff0c\u8fd9\u4e5f\u5c31\u662f\u4e3a\u4ec0\u4e48\u5f88\u591a\u4eba\u4f1a\u5c1d\u8bd5\u660e\u660e\u5728 Postman \u80fd\u8bf7\u6c42\uff0c\u800c\u5728 Angular \u4e0b\u65e0\u6cd5\u8bf7\u6c42\u7684\u539f\u56e0\u6240\u5728\u3002

\u5047\u5b9a\u6240\u6709\u540e\u7aef\u8bf7\u6c42\u90fd\u662f\u4ee5 /api \u4e3a\u524d\u7f00\u65f6\uff0c\u5c31\u53ef\u4ee5\u5728 proxy.conf.js \u914d\u7f6e\u6240\u6709\u8fd9\u4e2a\u524d\u7f00\u90fd\u8f6c\u5411\u65b0\u7684\u540e\u7aef\uff0c\u4f8b\u5982\uff1a

module.exports = {\n  \'/api\': {\n    target: \'http://192.168.1.100/api\',\n    secure: false\n  }\n}
  • /api \u4ee3\u7406\u8def\u5f84\uff0c\u4e0d\u652f\u6301\u57df

  • target \u4ee3\u7406\u76ee\u6807\u5730\u5740

  • secure \u4ee3\u7406\u76ee\u6807\u5730\u5740\u5982\u679c\u662f https \u5e94\u8be5\u8bbe\u7f6e\u4e3a true\uff0c\u53cd\u4e4b\u4e3a false

  • pathRewrite \u91cd\u5199\u5730\u5740\uff0c\u4f8b\u5982 pathRewrite: {\'^/api\': \'/\'} \u5c06\u524d\u7f00 /api \u8f6c\u4e3a /

  • changeOrigin \u5c06\u4e3b\u673a\u6807\u5934\u7684 host \u66f4\u6539\u4e3a\u76ee\u6807URL\uff0c\u6709\u4e9b\u540e\u7aef\u4f1a\u6839\u636e\u5176\u503c\u6765\u5224\u65ad\u662f\u5426\u6709\u6548\uff0c\u53ef\u80fd\u9700\u8981\u901a\u8fc7\u8bbe\u7f6e true

  • logLevel \u8bbe\u7f6e\u4e3a debug \u53ef\u4ee5\u7ec8\u7aef\u663e\u793a\u4ee3\u7406\u8f6c\u53d1\u7684\u6d88\u606f

\u66f4\u591a\u4f7f\u7528\u8bf4\u660e\u8bf7\u53c2\u8003\u4ee3\u7406\u5230\u540e\u7aef\u670d\u52a1\u5668\uff0c\u4ee5\u53ca\u914d\u7f6e\u63cf\u8ff0\u8bf7\u53c2\u8003http-proxy-middleware options\u3002

\u5e38\u89c1\u95ee\u9898

\u8bf7\u6c42\u53ef\u80fd\u88ab\u62d2\u7edd\u6216\u76f4\u63a5\u8fd4\u56de 401 ?

\u811a\u624b\u67b6\u9ed8\u8ba4\u60c5\u51b5\u4e0b\u4f7f\u7528\u4e86 @delon/auth \u7684 SimpleInterceptor \u62e6\u622a\u5668\uff0c\u5bfc\u81f4\u5728\u8bf7\u6c42\u8fc7\u7a0b\u4e2d\u82e5\u53d1\u73b0\u65e0\u6cd5\u83b7\u53d6 Token \u65f6\u4f1a\u76f4\u63a5\u8fd4\u56de\u9519\u8bef\u3002

\u7528\u6237\u8ba4\u8bc1\u8fd9\u4e2a\u8fc7\u7a0b\u662f\u4e2d\u53f0\u5fc5\u5907\u7684\u3002

\u5173\u4e8e\u65e0\u6cd5\u663e\u793a\u8bf7\u6c42\u65e5\u5fd7

\u4ece Angular13 \u5f00\u59cb\u8fdc\u7a0b\u8bf7\u6c42\u7684\u8c03\u8bd5\u65e5\u5fd7\u5c06\u4e0d\u518d\u7ec8\u7aef\u4e2d\u663e\u793a\uff0c\u82e5\u6709\u663e\u793a\u65e5\u671f\u9700\u6c42\uff0c\u53ef\u81ea\u884c\u53c2\u8003 How to fix logging for proxy in angular',meta:{order:40,title:"\u548c\u670d\u52a1\u7aef\u8fdb\u884c\u4ea4\u4e92",type:"Dev"},toc:[{id:"\u524d\u7aef\u8bf7\u6c42\u6d41\u7a0b",title:"\u524d\u7aef\u8bf7\u6c42\u6d41\u7a0b",h:2,children:[{id:"\u62e6\u622a\u5668",title:"\u62e6\u622a\u5668",h:3}]},{id:"\u5f00\u53d1\u73af\u5883",title:"\u5f00\u53d1\u73af\u5883",h:2},{id:"Mock",title:"Mock",h:2},{id:"\u8de8\u57df",title:"\u8de8\u57df",h:2},{id:"\u5e38\u89c1\u95ee\u9898",title:"\u5e38\u89c1\u95ee\u9898",h:2}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-server"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"ssr",redirectTo:"ssr/zh",pathMatch:"full"},{path:"ssr/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"zh-CN":"docs/ssr.md"},content:{"zh-CN":{content:'

\u672c\u6587\u63cf\u8ff0\u7684\u662f NG-ALAIN \u5982\u4f55\u652f\u6301\u670d\u52a1\u7aef\u6e32\u67d3\uff08SSR\uff09\u3002

NG-ALAIN \u4e0d\u63a8\u8350\u5728\u4e2d\u540e\u53f0\u4f7f\u7528\u670d\u52a1\u7aef\u6e32\u67d3\uff08SSR\uff09\uff0c\u8fd9\u662f\u56e0\u4e3a\u4e2d\u540e\u53f0\u672c\u8eab\u5bf9\u4e8eSSR\u6240\u5e26\u6765\u7684\u597d\u5904\u8fdc\u5927\u4e8e\u5f00\u53d1\u5e26\u6765\u7684\u9ebb\u70e6\uff0c\u4f46\u4e0d\u7ba1\u600e\u4e48\u6837\u5728\u8bb8\u591a\u4eba\u7684\u8981\u6c42\u4e0b\uff0c\u4ece 9.5 \u7248\u672c\u5f00\u59cb\uff0c\u5df2\u7ecf\u5bf9\u6240\u6709 @delon/* \u7c7b\u5e93\u652f\u6301\u670d\u52a1\u7aef\u6e32\u67d3\u3002

\u5f00\u59cb\u4e4b\u524d

\u5728\u5f00\u59cb\u4e4b\u524d\u8bf7\u5148\u9605\u8bfb\u4ee5\u4e0b\u6587\u7ae0\uff0c\u5b83\u4eec\u80fd\u591f\u66f4\u52a0\u5feb\u901f\u8ba9\u4f60\u4e86\u89e3 Angular \u670d\u52a1\u7aef\u6e32\u67d3\u662f\u5982\u4f55\u5de5\u4f5c\u7684\uff1a

\u6559\u7a0b

\u6dfb\u52a0 @nguniversal/express-engine

\u5728\u4e00\u4e2a\u5b8c\u6574\u7684 NG-ALAIN \u9879\u76ee\u4e0b\uff0c\u6267\u884c\u4ee5\u4e0b\u547d\u4ee4\uff1a

ng add @nguniversal/express-engine

\u6700\u540e\u8fd0\u884c\uff1a

npm run dev:ssr

\u6b64\u65f6\u4f1a\u4ee5 SSR \u7684\u5f62\u5f0f\u8fd0\u884c NG-ALAIN\u3002

\u4f46\u5982\u679c\u91c7\u7528\u9ed8\u8ba4 LocalStorageStore \u6765\u5b58\u50a8 Token \u7684\u60c5\u51b5\u4e0b\uff0c\u4f1a\u63d0\u793a\u627e\u4e0d\u5230 localStorage \u7684\u9519\u8bef\uff0c\u8fd9\u662f\u56e0\u4e3a\u670d\u52a1\u7aef\u5e76\u6ca1\u6709\u8fd9\u4e9b\uff0c\u5b83\u4eec\u53ef\u80fd\u8fd8\u5305\u542b window\u3001document\u3001sessionStorage \u7b49\u3002

\u56e0\u6b64\uff0c\u8981\u60f3\u5728\u4e2d\u540e\u53f0\u5f88\u597d\u7684\u652f\u6301 SSR\uff0c\u9700\u8981\u5206\u6790\u6240\u4f9d\u8d56\u7684\u7b2c\u4e09\u65b9\u7c7b\u5e93\u662f\u5426\u652f\u6301 SSR\uff0c\u5982\u679c\u6ca1\u6709\u5fc5\u987b\u624b\u52a8\u5904\u7406\u5728\u670d\u52a1\u7aef\u4e0b\u4e0d\u6e32\u67d3\u8fd9\u4e9b\u7ec4\u4ef6\u3002

\u4e22\u5931Token

\u670d\u52a1\u7aef\u662f\u65e0\u72b6\u6001\u7684\uff0c\u56e0\u6b64\u5224\u65ad\u8bf7\u6c42\u662f\u5426\u6709\u6548\u6388\u6743\uff0c\u76ee\u524d\u901a\u7528\u7684\u505a\u6cd5\u662f\u5c06 Token \u5b58\u50a8\u5728 Cookie \u4e0b\uff0c\u5728\u670d\u52a1\u7aef\u63a5\u6536\u8bf7\u6c42\u65f6\u518d\u6839\u636e Cookies \u6765\u83b7\u53d6 Token \u4fe1\u606f\u3002\x1c

\u867d\u7136 NG-ALAIN \u63d0\u4f9b CookieStorageStore \u4f46\u5b83\u5e76\u4e0d\u652f\u6301\u670d\u52a1\u7aef SSR \u8bbf\u95ee Cookie\uff0c\u56e0\u6b64\u9700\u8981\u624b\u52a8\u6784\u5efa\u9488\u5bf9 SSR \u7684 Token \u6301\u4e45\u5316\u5b58\u50a8\u3002

\u63a8\u8350\u4f7f\u7528 @ngx-utils/cookies \u6765\u5904\u7406 Cookies\uff0c\u5b83\u540c\u65f6\u652f\u6301\u5ba2\u6237\u7aef\u4e0e\u670d\u52a1\u7aef\u3002

\u6ce8\u610f\uff1a \u53d7\u9650\u4e8e #20 \u7684\u539f\u56e0\uff0c\u7531\u4e8e\u4e00\u76f4\u672a\u5904\u7406\uff0c\u6709\u4eba\u4e13\u95e8\u89e3\u51b3\u4e86\u8fd9\u4e2a\u95ee\u9898\u5e76\u53d1\u5e03\u4e00\u4e2a\u65b0\u7c7b\u5e93 ngx-utils-cookies-port\uff0c\u6682\u65f6\u53ea\u80fd\u4f7f\u7528\u5b83\u6765\u4ee3\u66ff @ngx-utils/cookies\uff0c\u7528\u6cd5\u4e00\u6a21\u4e00\u6837\u53ea\u662f\u6a21\u5757\u540d\u6362\u4e00\u4e0b\uff0c\u5728\u4fee\u590d\u4e4b\u540e\u518d\u6362\u56de\u6765\u3002

\u8981\u521b\u5efa\u4e00\u4e2a\u7b26\u5408 @delon/auth \u63a5\u53e3\u6301\u4e45\u5316\u5b58\u50a8\u7c7b\uff0c\u53ea\u9700\u8981\u7ee7\u627f IStore \u5373\u53ef\uff0c\u4f8b\u5982\uff1a

import { Injectable } from \'@angular/core\';\nimport { IStore, ITokenModel } from \'@delon/auth\';\nimport { CookiesService } from \'ngx-utils-cookies-port\';\n\n@Injectable()\nexport class AuthStorageStore implements IStore {\n  constructor(private cookies: CookiesService) {}\n\n  get(key: string): ITokenModel {\n    return JSON.parse(this.cookies.get(key) || \'{}\') || {};\n  }\n\n  set(key: string, value: ITokenModel | null): boolean {\n    this.cookies.put(key, JSON.stringify(value));\n    return true;\n  }\n\n  remove(key: string) {\n    this.cookies.remove(key);\n  }\n}

\u6700\u540e\uff0c\u5728 global-config.module.ts \u5185\u91cd\u65b0\u6ce8\u518c\u5b83\uff1a

 const alainProvides = [\n   { provide: ALAIN_CONFIG, useValue: alainConfig },\n+  { provide: DA_STORE_TOKEN, useClass: AuthStorageStore },\n ];

\u6ce8\u610f\uff1a\u8fd9\u91cc\u4f9d\u7136\u9700\u8981\u6ce8\u518c\u65b0\u589e\u7684\u6a21\u5757\uff0c\u65b9\u6cd5\u8bf7\u53c2\u8003 @ngx-utils/cookies \u8bf4\u660e\u3002

@ngx-utils/cookies \u5185\u90e8\u4f1a\u6839\u636e REQUEST \u6765\u83b7\u53d6\u5f53\u524d\u7684\u8bf7\u6c42\u5934\u4fe1\u606f\uff0c\u56e0\u6b64\uff0c\u6211\u4eec\u8fd8\u9700\u8981\u4fee\u6539 server.ts\uff1a

  // All regular routes use the Universal engine\n  server.get(\'*\', (req, res) => {\n    res.render(indexHtml, {\n      req,\n+     res,\n      providers: [\n        { provide: APP_BASE_HREF, useValue: req.baseUrl },\n+       { provide: \'REQUEST\', useValue: req },\n+       { provide: \'RESPONSE\', useValue: res },\n      ],\n    });\n  });',meta:{order:110,title:"\u670d\u52a1\u7aef\u6e32\u67d3\uff08SSR\uff09",type:"Dev"},toc:[{id:"\u5f00\u59cb\u4e4b\u524d",title:"\u5f00\u59cb\u4e4b\u524d",h:2},{id:"\u6559\u7a0b",title:"\u6559\u7a0b",h:2,children:[{id:"\u6dfb\u52a0@nguniversal/express-engine",title:"\u6dfb\u52a0 @nguniversal/express-engine",h:3},{id:"\u4e22\u5931Token",title:"\u4e22\u5931Token",h:3}]}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-ssr"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"style-guide",redirectTo:"style-guide/zh",pathMatch:"full"},{path:"style-guide/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/style-guide.en-US.md","zh-CN":"docs/style-guide.zh-CN.md"},content:{"en-US":{content:'

The project built by Angular CLI is already very good in terms of its directory structure. Official website also has an Angular Style Guide (Chinese version) Style guide. It is recommended to read it several times. In addition, NG-ALAIN also has a part of the coding style, the following instructions may be useful for reading the code.

Consistent code style

NG-ALAIN uses ESLint to guarantee code quality and Prettier to optimize the code style.

It is recommended to install several plugins for more friendly development in vscode:

Of course, NG-ALAIN has prepared a complete set of extension packs for everyone, just install NG-ALAIN Extension Pack.

Git - pre commit Hook

The ng lint command provided by Angular, can be very effective in helping us find bugs and readability earlier. Isn\'t it cool if we can guarantee that the lint of the file in staged is automatically done before each commit in the team development process?

NG-ALAIN is configured to do lint each time you commit to staged and you can\'t commit if you find an error.

By default, the *.ts, *.less commit process forces the formatting of the code. You can change the rules by modifying the husky node of package.json.

If hint: The\'.husky/pre-commit\' hook was ignored because it\'s not set as executable. is generated when executing git commit -m "commit", it may be due to permission issues. Try to execute in the project root directory:

chmod ug+x .husky/*\nchmod ug+x .git/hooks/*

Style guide

API documentation

Applications are always inevitable for the development of business components. We can not guarantee that you can remember these after a certain time. So, make sure to include the README.md document in each business component and describe the API, DEMO and other information.

For example:

## When do you use it?\n\nInstruction\n\n## DEMO\n\nInstruction\n\n## API\n\nParameter | Description | Type | Default\n----|------|-----|------\nsrc | The map\'s address  | `string` | -

Module registration

Please parameter module registration guidelines.

Auxiliary item

NG-ALAIN is configured with some options for the CLI to better code.

CLI

Vscode is the best choice for writing Angular. You can type: ng g c list in any directory of the project to generate the corresponding files for the component.

NG-ALAIN is configured by default without generating style files & unit tests. So you will see that only .ts, .html are generated. This is because NG-ALAIN provides a very rich style API, and custom styles are not just needed on most pages. At the same time, unit tests.

Of course, you can easily adjust the default configuration in angular.json.

VSCode snippets

VSCode is the best choice for writing Angular. Naturally NG-ALAIN also created the corresponding snippets extension: ng-zorro-vscode and ng-alain-vscode

',meta:{order:90,title:{"en-US":"Style Guide","zh-CN":"\u7f16\u7801\u89c4\u8303\u5efa\u8bae"},type:"Advance"},toc:[{id:"Consistentcodestyle",title:"Consistent code style",h:2},{id:"Git-precommitHook",title:"Git - pre commit Hook",h:2},{id:"Styleguide",title:"Style guide",h:2,children:[{id:"APIdocumentation",title:"API documentation",h:3},{id:"Moduleregistration",title:"Module registration",h:3}]},{id:"Auxiliaryitem",title:"Auxiliary item",h:2,children:[{id:"CLI",title:"CLI",h:3},{id:"VSCodesnippets",title:"VSCode snippets",h:3}]}]},"zh-CN":{content:'

Angular CLI \u6784\u5efa\u7684\u9879\u76ee\u5c31\u5176\u76ee\u5f55\u7ed3\u6784\u800c\u8a00\u5df2\u7ecf\u975e\u5e38\u68d2\u4e86\uff0c\u540c\u65f6\u5b98\u7f51\u4e5f\u6709\u4e00\u4efd Angular Style Guide\uff08\u4e2d\u6587\u7248\uff09\u98ce\u683c\u6307\u5357\uff0c\u5efa\u8bae\u597d\u597d\u9605\u8bfb\u51e0\u904d\u3002\u9664\u6b64\u4e4b\u5916\uff0cNG-ALAIN \u4e5f\u6709\u4e00\u90e8\u5206\u7f16\u7801\u98ce\u683c\uff0c\u5982\u4e0b\u8bf4\u660e\u53ef\u80fd\u5bf9\u4e8e\u4f60\u9605\u8bfb\u4ee3\u7801\u65f6\u6709\u7528\u3002

\u4e00\u81f4\u7684\u4ee3\u7801\u98ce\u683c

NG-ALAIN \u4f7f\u7528 ESLint \u6765\u4fdd\u8bc1\u4ee3\u7801\u8d28\u91cf \u4e0e Prettier \u6765\u4f18\u5316\u4ee3\u7801\u98ce\u683c\u3002

\u63a8\u8350\u5b89\u88c5\u51e0\u4e2a\u63d2\u4ef6\u5728 vscode \u4e2d\u66f4\u53cb\u597d\u7684\u5f00\u53d1\uff1a

\u5f53\u7136\uff0cNG-ALAIN \u4e3a\u5927\u5bb6\u51c6\u5907\u4e86\u4e00\u5957\u5b8c\u6574\u7684\u6269\u5c55\u5305\uff0c\u53ea\u9700\u8981\u5b89\u88c5 NG-ALAIN Extension Pack \u5373\u53ef\u3002

Git - pre commit \u52fe\u5b50

Angular \u63d0\u4f9b\u7684 ng lint \u547d\u4ee4\u53ef\u4ee5\u975e\u5e38\u6709\u6548\u7684\u5e2e\u52a9\u6211\u4eec\u66f4\u65e9\u53d1\u73b0bug\u3001\u66f4\u9ad8\u7684\u53ef\u8bfb\u6027\uff1b\u5982\u679c\u6211\u4eec\u80fd\u591f\u4fdd\u8bc1\u56e2\u961f\u5f00\u53d1\u8fc7\u7a0b\u4e2d\u6bcf\u4e00\u6b21 commit \u524d\u90fd\u81ea\u52a8\u505a\u4e00\u6b21 staged \u4e2d\u6587\u4ef6\u7684 lint \u7684\u8bdd\uff0c\u90a3\u4e0d\u662f\u975e\u5e38\u9177\u5417\uff1f

NG-ALAIN \u914d\u7f6e\u4e86\u6bcf\u6b21\u5bf9 staged \u8fdb\u884c commit \u65f6\u4f1a\u9884\u5148\u505a lint\uff0c\u82e5\u53d1\u73b0\u9519\u8bef\u5219\u65e0\u6cd5\u63d0\u4ea4\u3002

\u9ed8\u8ba4\u5f00\u542f\u4e86 *.ts\u3001*.less \u7684\u63d0\u4ea4\u8fc7\u7a0b\u4e2d\u5f3a\u5236\u5bf9\u4ee3\u7801\u8fdb\u884c\u683c\u5f0f\u5316\uff0c\u4f60\u53ef\u4ee5\u901a\u8fc7\u4fee\u6539 package.json \u7684 husky \u8282\u70b9\u6765\u6539\u53d8\u4e9b\u89c4\u5219\u3002

\u82e5\u5728\u6267\u884c git commit -m "commit" \u65f6\u82e5\u4ea7\u751f hint: The \'.husky/pre-commit\' hook was ignored because it\'s not set as executable. \u65f6\uff0c\u53ef\u80fd\u662f\u56e0\u4e3a\u6743\u9650\u95ee\u9898\uff0c\u53ef\u4ee5\u5c1d\u8bd5\u5728\u9879\u76ee\u6839\u76ee\u5f55\u4e0b\u6267\u884c\uff1a

chmod ug+x .husky/*\nchmod ug+x .git/hooks/*

\u98ce\u683c\u6307\u5357

API\u6587\u6863

\u5e94\u7528\u603b\u662f\u514d\u4e0d\u4e86\u4e1a\u52a1\u7ec4\u4ef6\u7684\u5f00\u53d1\uff0c\u6211\u4eec\u65e0\u6cd5\u4fdd\u8bc1\u82e5\u5e72\u65f6\u95f4\u4e4b\u540e\u4f60\u8fd8\u80fd\u8bb0\u5f97\u8fd9\u4e9b\uff0c\u56e0\u6b64\u52a1\u5fc5\u5728\u6bcf\u4e00\u4e2a\u4e1a\u52a1\u7ec4\u4ef6\u9644\u5e26 README.md \u6587\u6863\uff0c\u5e76\u63cf\u8ff0API\u3001DEMO\u7b49\u4fe1\u606f\uff0c\u4f8b\u5982\uff1a

## \u4f55\u65f6\u4f7f\u7528\uff1f\n\n\u7565\n\n## DEMO\n\n\u7565\n\n## API\n\n\u6210\u5458 | \u8bf4\u660e | \u7c7b\u578b | \u9ed8\u8ba4\u503c\n----|------|-----|------\nsrc | \u56fe\u7247\u5730\u5740  | `string` | -

\u6a21\u5757\u6ce8\u518c

\u8bf7\u53c2\u6570\u6a21\u5757\u6ce8\u518c\u6307\u5bfc\u539f\u5219\u3002

\u8f85\u52a9\u9879

ng-alain \u914d\u7f6e\u4e86\u4e00\u4e9b\u9488\u5bf9 CLI \u9009\u9879\uff0c\u4ee5\u4fbf\u66f4\u597d\u8fdb\u884c\u7f16\u7801\u5de5\u4f5c\u3002

CLI

vscode \u662f\u7f16\u5199 Angular \u6700\u4f73\u7684\u9009\u62e9\uff0c\u4f60\u53ef\u4ee5\u5728\u9879\u76ee\u7684\u4efb\u4f55\u76ee\u5f55\u91cc\u8f93\u5165\uff1ang g c list \u751f\u6210\u7ec4\u4ef6\u7684\u76f8\u5e94\u7684\u6587\u4ef6\u3002

ng-alain \u9ed8\u8ba4\u914d\u7f6e\u4e86\u4e0d\u751f\u6210\u6837\u5f0f\u6587\u4ef6&\u5355\u5143\u6d4b\u8bd5\uff0c\u56e0\u6b64\uff0c\u4f60\u4f1a\u770b\u5230\u751f\u6210\u7684\u53ea\u6709 .ts\u3001.html\u3002\u8fd9\u662f\u56e0\u4e3a ng-alain \u63d0\u4f9b\u4e86\u975e\u5e38\u4e30\u5bcc\u7684\u6837\u5f0fAPI\uff0c\u5728\u5927\u591a\u6570\u9875\u9762\u4e2d\u81ea\u5b9a\u4e49\u6837\u5f0f\u5e76\u4e0d\u662f\u521a\u9700\u7684\uff1b\u540c\u65f6\uff0c\u5355\u5143\u6d4b\u8bd5\u4e5f\u662f\u5982\u6b64\u3002

\u5f53\u7136\uff0c\u4f60\u53ef\u4ee5\u5f88\u5bb9\u6613\u5728 angular.json \u4e2d\u8c03\u6574\u9ed8\u8ba4\u914d\u7f6e\u3002

vscode snippets

vscode \u662f\u7f16\u5199 Angular \u6700\u4f73\u7684\u9009\u62e9\uff0c\u81ea\u7136 NG-ALAIN \u4e5f\u5236\u4f5c\u4e86\u76f8\u5e94 snippets \u6269\u5c55\u63d2\u4ef6\uff1ang-zorro-vscode \u548c ng-alain-vscode

',meta:{order:90,title:{"en-US":"Style Guide","zh-CN":"\u7f16\u7801\u89c4\u8303\u5efa\u8bae"},type:"Advance"},toc:[{id:"\u4e00\u81f4\u7684\u4ee3\u7801\u98ce\u683c",title:"\u4e00\u81f4\u7684\u4ee3\u7801\u98ce\u683c",h:2,children:[{id:"Git-precommit\u52fe\u5b50",title:"Git - pre commit \u52fe\u5b50",h:3}]},{id:"\u98ce\u683c\u6307\u5357",title:"\u98ce\u683c\u6307\u5357",h:2,children:[{id:"API\u6587\u6863",title:"API\u6587\u6863",h:3},{id:"\u6a21\u5757\u6ce8\u518c",title:"\u6a21\u5757\u6ce8\u518c",h:3}]},{id:"\u8f85\u52a9\u9879",title:"\u8f85\u52a9\u9879",h:2,children:[{id:"CLI",title:"CLI",h:3},{id:"vscodesnippets",title:"vscode snippets",h:3}]}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-style-guide"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"theme",redirectTo:"theme/zh",pathMatch:"full"},{path:"theme/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"zh-CN":"docs/theme.md"},content:{"zh-CN":{content:'
',meta:{order:10,title:{"en-US":"Theme","zh-CN":"\u4e3b\u9898\u7cfb\u7edf"},type:"Advance",url:"/theme/getting-started"},toc:[]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-theme"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"upgrade-v16",redirectTo:"upgrade-v16/zh",pathMatch:"full"},{path:"upgrade-v16/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/upgrade-v16.en-US.md","zh-CN":"docs/upgrade-v16.zh-CN.md"},content:{"en-US":{content:'

This guide applies to the current version ng-alain >= 15;\nIf you encounter problems during the upgrade process, feel free to comment here.\nIf you find any errors in this guide, please point out\nOr you have encountered a new problem and solved it, welcome to comment here.

Before upgrade

  1. Make sure Node.js >= 16.10.0.

  2. Create a new branch, or use other methods to back up the current project.

  3. Delete the package-lock.json or yarn.lock file.

1.Upgrade dependencies

  • Upgrade Angular to 15.x version, Run ng update @angular/core@16 @angular/cli@16 @angular-eslint/schematics@16 ng-zorro-antd@16 ng-alain@16.

  • Run ng update @angular/cdk@16, if you have used @angular/cdk.

  • If any warning messages appear in the console, follow the prompts to modify the corresponding code.

NG-ALAIN scaffolding upgrade all change files, please refer to: #2394.

',meta:{order:1e3,type:"Basic",title:"Upgrade to version 16.0",hot:!0},toc:[{id:"Beforeupgrade",title:"Before upgrade",h:2,children:[{id:"1.Upgradedependencies",title:"1.Upgrade dependencies",h:3}]}]},"zh-CN":{content:'

\u672c\u6307\u5357\u9002\u7528\u4e8e\u5f53\u524d\u7248\u672c ng-alain >= 15 ;\n\u5982\u679c\u5728\u5347\u7ea7\u8fc7\u7a0b\u4e2d\u9047\u5230\u95ee\u9898\uff0c\u6b22\u8fce\u63d0\u51fa\u3002\u63d0\u95ee\u524d\u8bf7\u9605\u8bfb \u5982\u4f55\u5411\u5f00\u6e90\u793e\u533a\u63d0\u95ee\u9898\n\u5982\u679c\u53d1\u73b0\u672c\u6307\u5357\u5b58\u5728\u9057\u6f0f/\u9519\u8bef\uff0c\u8bf7\u6307\u51fa!\n\u6216\u8005\u4f60\u9047\u5230\u4e86\u65b0\u7684\u95ee\u9898\u5e76\u89e3\u51b3\u4e86\uff0c\u6b22\u8fce\u8865\u5145!

\u5f00\u59cb\u4e4b\u524d

  1. \u9996\u5148\u786e\u4fdd\u4f60 Node.js >= 16.10.0

  2. \u521b\u5efa\u65b0\u7684\u5206\u652f\uff0c\u6216\u8005\u4f7f\u7528\u5176\u4ed6\u65b9\u5f0f\u5907\u4efd\u5f53\u524d\u9879\u76ee

  3. \u5220\u9664\u9879\u76ee\u4e0b package-lock.json \u6216 yarn.lock \u6587\u4ef6

\u5347\u7ea7\u6b65\u9aa4

\u5347\u7ea7\u76f8\u5173\u4f9d\u8d56

  • \u5c06\u9879\u76ee\u5347\u7ea7\u5230 Angular 15 \u8fd0\u884c ng update @angular/core@16 @angular/cli@16 @angular-eslint/schematics@16 ng-zorro-antd@16 ng-alain@16\u3002

  • \u5982\u679c\u4f60\u6709\u5355\u72ec\u4f7f\u7528 @angular/cdk \u8bf7\u6267\u884c ng update @angular/cdk@16

  • \u5982\u679c\u63a7\u5236\u53f0\u51fa\u73b0\u8b66\u544a\u6d88\u606f\u8bf7\u6309\u63d0\u793a\u4fee\u6539\u5bf9\u5e94\u4ee3\u7801

NG-ALAIN\u811a\u624b\u67b6\u5347\u7ea7\u5168\u90e8\u53d8\u66f4\u6587\u4ef6\uff0c\u8bf7\u53c2\u8003\uff1a#2394\u3002

',meta:{order:1e3,type:"Basic",title:"\u5347\u7ea7\u5230 16.0 \u7248\u672c",hot:!0},toc:[{id:"\u5f00\u59cb\u4e4b\u524d",title:"\u5f00\u59cb\u4e4b\u524d",h:2},{id:"\u5347\u7ea7\u6b65\u9aa4",title:"\u5347\u7ea7\u6b65\u9aa4",h:2,children:[{id:"\u5347\u7ea7\u76f8\u5173\u4f9d\u8d56",title:"\u5347\u7ea7\u76f8\u5173\u4f9d\u8d56",h:3}]}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-upgrade-v16"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()},{path:"upgrade",redirectTo:"upgrade/zh",pathMatch:"full"},{path:"upgrade/:lang",component:(()=>{class e{constructor(){this.item={cols:1,urls:{"en-US":"docs/upgrade.en-US.md","zh-CN":"docs/upgrade.zh-CN.md"},content:{"en-US":{content:'

In Architecture we have described the overall composition of the NG-ALAIN scaffolding. We spent a lot of time developing some infrastructure and publishing these to the @delon/* series to Npm. , making the upgrade very easy.

Publishing rule

Similar to @angular/*, the version number of the @delon/* class library will be a version number (NPM version) at each iteration, regardless of whether a class library has been modified.

At the same time, please follow the following publishing rules and update version number:

  • @delon as the infrastructure library, which will be slightly higher in the update frequency, usually updated at least once a week.

  • With BREAKING CHANGES at least one minor version number

  • Update Log

How to upgrade?

Method 1: Command (Recommend)

Unless it\'s a major version update (Similar to upgrading from 12.0.0 to 13.0.0), you only need to run the following command:

ng update ng-alain

Method 2: Modify the version number

Modify package.json All class libraries starting with @delon/ are the latest version number:

"@delon/theme": "^12.0.0"

Replace ^12.0.0 with the latest version number.

Finally, reinstall the dependencies.

yarn

Please read Frequently Asked Questions

Method 3: Update all class libraries

Scaffolding in package.json most libraries use loose version numbers, for example:

^0.1.0 with the ^ symbol indicates that the latest minor version number is used, so 0.7.0 is also the range.

To use this update method, you need to follow these steps:

  • Remove the node_modules folder and the yarn.lock file

  • Execute yarn

Note: This method will install all class libraries in a newer version, but it may cause unnecessary troubles due to damaging changes of third-party t

',meta:{order:80,title:{"en-US":"Upgrade scaffold","zh-CN":"\u5347\u7ea7\u811a\u624b\u67b6"},type:"Dev"},toc:[{id:"Publishingrule",title:"Publishing rule",h:2},{id:"Howtoupgrade",title:"How to upgrade?",h:2,children:[{id:"Method1:CommandRecommend",title:"Method 1: Command (Recommend)",h:3},{id:"Method2:Modifytheversionnumber",title:"Method 2: Modify the version number",h:3},{id:"Method3:Updateallclasslibraries",title:"Method 3: Update all class libraries",h:3}]}]},"zh-CN":{content:'

\u5728 \u4f53\u7cfb\u7ed3\u6784 \u4e2d\u6211\u4eec\u5df2\u7ecf\u63cf\u8ff0\u4e86 NG-ALAIN \u811a\u624b\u67b6\u7684\u6574\u4f53\u6784\u6210\uff0c\u6211\u4eec\u82b1\u4e86\u5927\u91cf\u65f6\u95f4\u53bb\u5f00\u53d1\u4e00\u4e9b\u57fa\u7840\u5efa\u8bbe\uff0c\u5e76\u628a\u8fd9\u4e9b\u4ee5 @delon/* \u7cfb\u5217\u53d1\u5e03\u81f3 Npm \u5f53\u4e2d\uff0c\u4f7f\u5f97\u5347\u7ea7\u53d8\u5f97\u975e\u5e38\u8f7b\u677e\u3002

\u53d1\u5e03\u89c4\u5219

\u540c @angular/* \u7c7b\u4f3c\uff0c@delon/* \u7c7b\u5e93\u7684\u7248\u672c\u53f7\u5728\u6bcf\u4e00\u4e2a\u8fed\u4ee3\u65f6\uff0c\u4e0d\u7ba1\u67d0\u7c7b\u5e93\u662f\u5426\u6709\u4fee\u6539\uff0c\u90fd\u4f1a\u7edf\u4e00\u4e2a\u7248\u672c\u53f7 (NPM version) \u3002

\u540c\u65f6\u6309\u4ee5\u4e0b\u53d1\u5e03\u89c4\u5219\u53ca\u66f4\u65b0\u7248\u672c\u53f7\u8bf4\u660e\uff1a

  • @delon \u4f5c\u4e3a\u57fa\u7840\u5efa\u8bbe\u7c7b\u5e93\uff0c\u5728\u66f4\u65b0\u9891\u7387\u4e0a\u4f1a\u7565\u9ad8\uff0c\u4e00\u822c\u4e00\u5468\u81f3\u5c11\u66f4\u65b0\u4e00\u6b21

  • \u5e26\u6709 BREAKING CHANGES \u81f3\u5c11\u63d0\u5347\u4e00\u4e2a\u6b21\u7248\u672c\u53f7

  • \u66f4\u65b0\u65e5\u5fd7

\u5982\u4f55\u5347\u7ea7\uff1f

\u65b9\u5f0f\u4e00\uff1a\u547d\u4ee4\u884c\uff08\u63a8\u8350\uff09

\u9664\u975e\u662f\u5927\u7248\u672c\u66f4\u65b0\uff08\u5373\u7c7b\u4f3c\u4ece 12.0.0 \u5347\u81f3 13.0.0\uff09\uff0c\u5426\u5219\u53ea\u9700\u8981\u8fd0\u884c\u4ee5\u4e0b\u547d\u4ee4\u5373\u53ef\uff1a

ng update ng-alain

\u65b9\u5f0f\u4e8c\uff1a\u624b\u52a8\u4fee\u6539\u7248\u672c\u53f7

\u4fee\u6539 package.json \u6240\u6709 @delon/ \u5f00\u5934\u7684\u7c7b\u5e93\u7248\u672c\u53f7\u4e3a\u6700\u65b0\u7248\u672c\u53f7\uff1a

"@delon/theme": "^12.0.0"

\u5c06 ^12.0.0 \u66ff\u6362\u6210\u6700\u65b0\u7248\u672c\u53f7\u3002

\u6700\u540e\uff0c\u91cd\u65b0\u5b89\u88c5\u4f9d\u8d56\u5305\u3002

yarn

\u9047\u5230\u95ee\u9898\u8bf7\u9605\u8bfb \u5e38\u89c1\u95ee\u9898

\u65b9\u5f0f\u4e09\uff1a\u66f4\u65b0\u6240\u6709\u7c7b\u5e93

\u811a\u624b\u67b6\u5728 package.json \u91cc\u591a\u6570\u7c7b\u5e93\u90fd\u662f\u4f7f\u7528\u5bbd\u677e\u7684\u7248\u672c\u53f7\uff0c\u4f8b\u5982\uff1a

^0.1.0 \u5e26\u6709 ^ \u7b26\u53f7\u8868\u793a\u4f7f\u7528\u6700\u65b0\u6b21\u7248\u672c\u53f7\uff0c\u56e0\u6b64\uff0c0.7.0 \u4e5f\u662f\u8be5\u8303\u56f4\u4e4b\u5217\u3002

\u8981\u60f3\u91c7\u7528\u8fd9\u79cd\u66f4\u65b0\u65b9\u5f0f\u9700\u8981\u6309\u4ee5\u4e0b\u6b65\u9aa4\u8fdb\u884c\uff1a

  • \u79fb\u9664 node_modules \u6587\u4ef6\u5939\u53ca yarn.lock \u6587\u4ef6

  • \u6267\u884c yarn

\u6ce8\u610f\uff1a \u8fd9\u79cd\u65b9\u5f0f\u4f1a\u5bf9\u6240\u6709\u7c7b\u5e93\u6309\u6bd4\u8f83\u65b0\u7684\u7248\u672c\u5b89\u88c5\uff0c\u4f46\u6709\u53ef\u80fd\u4f1a\u5bfc\u81f4\u7531\u4e8e\u7b2c\u4e09\u65b9\u7c7b\u578b\u7684\u7834\u574f\u6027\u53d8\u66f4\u4f1a\u5bfc\u81f4\u4e00\u4e9b\u4e0d\u5fc5

',meta:{order:80,title:{"en-US":"Upgrade scaffold","zh-CN":"\u5347\u7ea7\u811a\u624b\u67b6"},type:"Dev"},toc:[{id:"\u53d1\u5e03\u89c4\u5219",title:"\u53d1\u5e03\u89c4\u5219",h:2},{id:"\u5982\u4f55\u5347\u7ea7\uff1f",title:"\u5982\u4f55\u5347\u7ea7\uff1f",h:2,children:[{id:"\u65b9\u5f0f\u4e00\uff1a\u547d\u4ee4\u884c\uff08\u63a8\u8350\uff09",title:"\u65b9\u5f0f\u4e00\uff1a\u547d\u4ee4\u884c\uff08\u63a8\u8350\uff09",h:3},{id:"\u65b9\u5f0f\u4e8c\uff1a\u624b\u52a8\u4fee\u6539\u7248\u672c\u53f7",title:"\u65b9\u5f0f\u4e8c\uff1a\u624b\u52a8\u4fee\u6539\u7248\u672c\u53f7",h:3},{id:"\u65b9\u5f0f\u4e09\uff1a\u66f4\u65b0\u6240\u6709\u7c7b\u5e93",title:"\u65b9\u5f0f\u4e09\uff1a\u66f4\u65b0\u6240\u6709\u7c7b\u5e93",h:3}]}]}},demo:!1},this.codes=[]}static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275cmp=a.Xpm({type:e,selectors:[["app-docs-upgrade"]],decls:1,vars:2,consts:[[3,"codes","item"]],template:function(t,o){1&t&&a._UZ(0,"app-docs",0),2&t&&a.Q6J("codes",o.codes)("item",o.item)},dependencies:[i.P],styles:["[_nghost-%COMP%]{display:block}"]})}return e})()}]}];let F=(()=>{class e{static#e=this.\u0275fac=function(t){return new(t||e)};static#t=this.\u0275mod=a.oAB({type:e});static#a=this.\u0275inj=a.cJS({imports:[G.m,R.Bz.forChild(D)]})}return e})()}}]); \ No newline at end of file diff --git a/404.html b/404.html index 8025bfb1f..0513dea46 100644 --- a/404.html +++ b/404.html @@ -1 +1 @@ -Ng Alain - 一个基于 Antd 中后台前端解决方案
loading...
\ No newline at end of file +一个基于 Antd 中后台前端解决方案 - NG-ALAIN

NG-ALAIN

一个基于 Antd 中后台前端解决方案,提供更多通用性业务模块,让开发者更加专注于业务。

特征

Ant Design

符合 Ant Design 设计价值观

NG-ZORRO

丰富的几十种基础组件

Delon

一组更高阶的业务组件、图表、认证、授权、缓存、Mock、测试等

开箱即用

一个完整、可直接用于生产环境的Angular脚手架

简单定制

百种LESS参数定制品牌视觉

响应式

支持不同设备使用

工具支持

包含 NG-ALAIN Schematics 、VSCODE插件

示例页

大量示例页可直接参考与使用

\ No newline at end of file diff --git a/acl/control/en/index.html b/acl/control/en/index.html new file mode 100644 index 000000000..ca4e27627 --- /dev/null +++ b/acl/control/en/index.html @@ -0,0 +1,15 @@ +粒度控制 - NG-ALAIN

粒度控制

写在前面

很多时候需要对某个按钮进行权限控制,@delon/acl 提供一个 acl 指令,可以利用角色或权限点对某个按钮、表格、列表等元素进行权限控制。

原理

[acl] 默认会在目标元素上增加一个 acl__hide 样式,利用 display: none 来隐藏未授权元素,它是一个简单、又高效的方式。

以此相对应的 *aclIf 是一个结构型指令,它类似 ngIf 在未授权时会不渲染该元素。注: 为了保持简洁它并不支持 acl-ability 权限点配置。

示例

角色

按钮必须拥有 user 角色显示。

<button [acl]="'user'"></button>
+<button *aclIf="'user'"></button>

按钮必须拥有 user 或 manage 角色显示。

<button [acl]="['user', 'manage']"></button>
+<button *aclIf="['user', 'manage']"></button>

按钮必须拥有 user 和 manage 角色显示。

<button [acl]="{ role: ['user', 'manage'], mode: 'allOf' }"></button>
+<button *aclIf="{ role: ['user', 'manage'], mode: 'allOf' }"></button>

当拥有 user 角色显示文本框,未授权显示文本。

<input nz-input *aclIf="'user'; else unauthorized">
+<ng-template #unauthorized>{{user}}</ng-template>

使用 except 反向控制,当未拥有 user 角色时显示。

<ng-template [aclIf]="role" except>
+  <input nz-input>
+</ng-template>

权限点

按钮必须拥有 10 权限点显示。

<button [acl]="10"></button>

acl 指令为了能所传递的值是角色还是权限点,所以以 string 类型表示角色、number 类型表示权限点,若权限点为字符串,可使用以下写法。

<button acl [acl-ability]="'USER-EDIT'"></button>

使用 mode: 'allOf' 表示必须同时拥有。

  • oneOf 表示只须满足角色或权限点数组中的一项算有效(默认)

  • allOf 表示必须满足所有角色或权限点数组算有效

按钮必须拥有 10USER-EDIT 权限点时显示。

<button [acl]="{ ability: [10, 'USER-EDIT'], mode: 'allOf' }"></button>

字符串型权限点

检查权限是通过 can 方法,通过全局配置 acl.preCan 方法,可以利用该方法来实现一个字符串区分角色或权限点。

// global-config.module.ts
+const alainConfig: AlainConfig = {
+  acl: {
+    preCan: (roleOrAbility) => {
+      const str = roleOrAbility.toString();
+      return str.startsWith('ability.') ? { ability: [ str ] } : null;
+    }
+  }
+};

因此,当传递一个带有 ability. 开头的字符串会被认为这是一个权限点,例如:

<button acl="ability.user.edit"></button>

API

*aclIf

参数说明类型默认值
[aclIf]can 方法参数体ACLCanType-
[aclIfThen]已授权时显示模板TemplateRef<void> | null-
[aclIfElse]未授权时显示模板TemplateRef<void> | null-
[except]未授权时显示booleanfalse
\ No newline at end of file diff --git a/acl/control/zh/index.html b/acl/control/zh/index.html new file mode 100644 index 000000000..fd3803220 --- /dev/null +++ b/acl/control/zh/index.html @@ -0,0 +1,15 @@ +粒度控制 - NG-ALAIN

粒度控制

写在前面

很多时候需要对某个按钮进行权限控制,@delon/acl 提供一个 acl 指令,可以利用角色或权限点对某个按钮、表格、列表等元素进行权限控制。

原理

[acl] 默认会在目标元素上增加一个 acl__hide 样式,利用 display: none 来隐藏未授权元素,它是一个简单、又高效的方式。

以此相对应的 *aclIf 是一个结构型指令,它类似 ngIf 在未授权时会不渲染该元素。注: 为了保持简洁它并不支持 acl-ability 权限点配置。

示例

角色

按钮必须拥有 user 角色显示。

<button [acl]="'user'"></button>
+<button *aclIf="'user'"></button>

按钮必须拥有 user 或 manage 角色显示。

<button [acl]="['user', 'manage']"></button>
+<button *aclIf="['user', 'manage']"></button>

按钮必须拥有 user 和 manage 角色显示。

<button [acl]="{ role: ['user', 'manage'], mode: 'allOf' }"></button>
+<button *aclIf="{ role: ['user', 'manage'], mode: 'allOf' }"></button>

当拥有 user 角色显示文本框,未授权显示文本。

<input nz-input *aclIf="'user'; else unauthorized">
+<ng-template #unauthorized>{{user}}</ng-template>

使用 except 反向控制,当未拥有 user 角色时显示。

<ng-template [aclIf]="role" except>
+  <input nz-input>
+</ng-template>

权限点

按钮必须拥有 10 权限点显示。

<button [acl]="10"></button>

acl 指令为了能所传递的值是角色还是权限点,所以以 string 类型表示角色、number 类型表示权限点,若权限点为字符串,可使用以下写法。

<button acl [acl-ability]="'USER-EDIT'"></button>

使用 mode: 'allOf' 表示必须同时拥有。

  • oneOf 表示只须满足角色或权限点数组中的一项算有效(默认)

  • allOf 表示必须满足所有角色或权限点数组算有效

按钮必须拥有 10USER-EDIT 权限点时显示。

<button [acl]="{ ability: [10, 'USER-EDIT'], mode: 'allOf' }"></button>

字符串型权限点

检查权限是通过 can 方法,通过全局配置 acl.preCan 方法,可以利用该方法来实现一个字符串区分角色或权限点。

// global-config.module.ts
+const alainConfig: AlainConfig = {
+  acl: {
+    preCan: (roleOrAbility) => {
+      const str = roleOrAbility.toString();
+      return str.startsWith('ability.') ? { ability: [ str ] } : null;
+    }
+  }
+};

因此,当传递一个带有 ability. 开头的字符串会被认为这是一个权限点,例如:

<button acl="ability.user.edit"></button>

API

*aclIf

参数说明类型默认值
[aclIf]can 方法参数体ACLCanType-
[aclIfThen]已授权时显示模板TemplateRef<void> | null-
[aclIfElse]未授权时显示模板TemplateRef<void> | null-
[except]未授权时显示booleanfalse
\ No newline at end of file diff --git a/acl/getting-started/en/index.html b/acl/getting-started/en/index.html new file mode 100644 index 000000000..6de3487ac --- /dev/null +++ b/acl/getting-started/en/index.html @@ -0,0 +1,8 @@ +开始使用 - NG-ALAIN

开始使用

ACL 全称叫访问控制列表(Access Control List),是一种非常简单的基于角色权限控制方式。一个完全独立 @delon/acl 模块(DEMO)。

如何运行

内部实际是一个 ACLService 它提供一套基于角色权限服务类。为了更好的编码体验 ng-alain 有多处组件或模块也依赖于它,例如:stMenuService 等,并且这些会以 acl 属性的形式表现。因此,当遇到 acl 属性都表示 can 方法的参数值

如何使用

安装 @delon/acl 依赖包:

yarn add @delon/acl

导入 DelonACLModule 模块:

import { DelonACLModule } from '@delon/acl';
+
+@NgModule({
+  imports: [
+    DelonACLModule.forRoot()
+  ]
+})
+export class AppModule { }

API

参数

参数说明类型默认值全局配置
[guard_url]string路由守卫失败后跳转/403
[preCan](roleOrAbility: ACLCanType) => ACLTypecan 执行前回调-

可以通过全局配置覆盖它们。

ACLService

方法说明
[change]监听ACL变更通知
[data]获取所有ACL数据
setFull(val: boolean)标识当前用户为全量,即不受限
set(value: ACLType)设置当前用户角色或权限能力(会先清除所有)
setRole(roles: string[])设置当前用户角色(会先清除所有)
setAbility(abilities: (number | string)[])设置当前用户权限能力(会先清除所有)
add(value: ACLType)为当前用户增加角色或权限能力
attachRole(roles: string[])为当前用户附加角色
attachAbility(abilities: (number | string)[])为当前用户附加权限
removeRole(roles: string[])为当前用户移除角色
removeAbility(abilities: (number | string)[])为当前用户移除权限
can(roleOrAbility: ACLCanType)当前用户是否有对应角色
canAbility(ability: ACLCanType)当前用户是否有对应权限点

ACLCanType

type ACLCanType = number | number[] | string | string[] | ACLType

ACLType

属性类型说明默认
[role]string[]角色-
[ability]number[], string[]权限点-
[mode]allOf, oneOfallOf 表示必须满足所有角色或权限点数组算有效
oneOf 表示只须满足角色或权限点数组中的一项算有效
oneOf
[except]boolean是否取反,即结果为 true 时表示未授权false
\ No newline at end of file diff --git a/acl/getting-started/zh/index.html b/acl/getting-started/zh/index.html new file mode 100644 index 000000000..9e8b13118 --- /dev/null +++ b/acl/getting-started/zh/index.html @@ -0,0 +1,8 @@ +开始使用 - NG-ALAIN

开始使用

ACL 全称叫访问控制列表(Access Control List),是一种非常简单的基于角色权限控制方式。一个完全独立 @delon/acl 模块(DEMO)。

如何运行

内部实际是一个 ACLService 它提供一套基于角色权限服务类。为了更好的编码体验 ng-alain 有多处组件或模块也依赖于它,例如:stMenuService 等,并且这些会以 acl 属性的形式表现。因此,当遇到 acl 属性都表示 can 方法的参数值

如何使用

安装 @delon/acl 依赖包:

yarn add @delon/acl

导入 DelonACLModule 模块:

import { DelonACLModule } from '@delon/acl';
+
+@NgModule({
+  imports: [
+    DelonACLModule.forRoot()
+  ]
+})
+export class AppModule { }

API

参数

参数说明类型默认值全局配置
[guard_url]string路由守卫失败后跳转/403
[preCan](roleOrAbility: ACLCanType) => ACLTypecan 执行前回调-

可以通过全局配置覆盖它们。

ACLService

方法说明
[change]监听ACL变更通知
[data]获取所有ACL数据
setFull(val: boolean)标识当前用户为全量,即不受限
set(value: ACLType)设置当前用户角色或权限能力(会先清除所有)
setRole(roles: string[])设置当前用户角色(会先清除所有)
setAbility(abilities: (number | string)[])设置当前用户权限能力(会先清除所有)
add(value: ACLType)为当前用户增加角色或权限能力
attachRole(roles: string[])为当前用户附加角色
attachAbility(abilities: (number | string)[])为当前用户附加权限
removeRole(roles: string[])为当前用户移除角色
removeAbility(abilities: (number | string)[])为当前用户移除权限
can(roleOrAbility: ACLCanType)当前用户是否有对应角色
canAbility(ability: ACLCanType)当前用户是否有对应权限点

ACLCanType

type ACLCanType = number | number[] | string | string[] | ACLType

ACLType

属性类型说明默认
[role]string[]角色-
[ability]number[], string[]权限点-
[mode]allOf, oneOfallOf 表示必须满足所有角色或权限点数组算有效
oneOf 表示只须满足角色或权限点数组中的一项算有效
oneOf
[except]boolean是否取反,即结果为 true 时表示未授权false
\ No newline at end of file diff --git a/acl/guard/en/index.html b/acl/guard/en/index.html new file mode 100644 index 000000000..bd7aa5d1b --- /dev/null +++ b/acl/guard/en/index.html @@ -0,0 +1,44 @@ +路由守卫 - NG-ALAIN

路由守卫

写在前面

路由守卫可以防止未授权用户访问页面。

路由守卫需要单独对每一个路由进行设置,很多时候这看起来很繁琐,@delon/acl 实现了通用守卫函数 aclCanMatch, aclCanActivate, aclCanActivateChild,可以在路由注册时透过简单的配置完成一些复杂的操作,甚至支持 Observable 类型。

使用固定属性 guard 来指定 ACLCanType 参数,例如:

const routes: Routes = [
+  {
+    path: 'auth',
+    canActivate: [ aclCanActivate ],
+    data: { guard: 'user1' as ACLGuardType }
+  },
+  {
+    path: 'auth',
+    canActivate: [ aclCanActivate ],
+    data: {
+      guard: {
+        role: [ 'user1' ],
+        ability: [ 10, 'USER-EDIT' ],
+        mode: 'allOf'
+      } as ACLGuardType,
+      guard_url: '/no-permisseion'
+    }
+  },
+  {
+    path: 'obs',
+    canActivate: [ aclCanActivate ],
+    data: {
+      guard: ((_srv, _injector) => {
+        return of('user');
+      }) as ACLGuardFunctionType,
+      guard_url: '/no-permisseion'
+    }
+  }
+]

guard 的值必须符合 ACLCanType 类型值。

示例

import { of } from 'rxjs';
+import { aclCanActivate, aclCanActivateChild, aclCanMatch } from '@delon/acl';
+const routes: Routes = [
+  {
+    path: 'guard',
+    component: GuardComponent,
+    children: [
+      { path: 'auth', component: GuardAuthComponent, canActivate: [ aclCanActivate ], data: { guard: 'user1' } },
+      { path: 'admin', component: GuardAdminComponent, canActivate: [ aclCanActivate ], data: { guard: 'admin' } }
+    ],
+    canActivateChild: [ aclCanActivateChild ],
+    data: { guard: { role: [ 'user1' ], ability: [ 10, 'USER-EDIT' ], mode: 'allOf' } }
+  },
+  { path: 'pro', loadChildren: './pro/pro.module#ProModule', canMatch: [ aclCanMatch ], data: { guard: 1 } },
+  { path: 'pro', loadChildren: './pro/pro.module#ProModule', canMatch: [ aclCanMatch ], data: { guard: of(false).pipe(map(v => 'admin')) } }
+];
\ No newline at end of file diff --git a/acl/guard/zh/index.html b/acl/guard/zh/index.html new file mode 100644 index 000000000..e2ee429f9 --- /dev/null +++ b/acl/guard/zh/index.html @@ -0,0 +1,44 @@ +路由守卫 - NG-ALAIN

路由守卫

写在前面

路由守卫可以防止未授权用户访问页面。

路由守卫需要单独对每一个路由进行设置,很多时候这看起来很繁琐,@delon/acl 实现了通用守卫函数 aclCanMatch, aclCanActivate, aclCanActivateChild,可以在路由注册时透过简单的配置完成一些复杂的操作,甚至支持 Observable 类型。

使用固定属性 guard 来指定 ACLCanType 参数,例如:

const routes: Routes = [
+  {
+    path: 'auth',
+    canActivate: [ aclCanActivate ],
+    data: { guard: 'user1' as ACLGuardType }
+  },
+  {
+    path: 'auth',
+    canActivate: [ aclCanActivate ],
+    data: {
+      guard: {
+        role: [ 'user1' ],
+        ability: [ 10, 'USER-EDIT' ],
+        mode: 'allOf'
+      } as ACLGuardType,
+      guard_url: '/no-permisseion'
+    }
+  },
+  {
+    path: 'obs',
+    canActivate: [ aclCanActivate ],
+    data: {
+      guard: ((_srv, _injector) => {
+        return of('user');
+      }) as ACLGuardFunctionType,
+      guard_url: '/no-permisseion'
+    }
+  }
+]

guard 的值必须符合 ACLCanType 类型值。

示例

import { of } from 'rxjs';
+import { aclCanActivate, aclCanActivateChild, aclCanMatch } from '@delon/acl';
+const routes: Routes = [
+  {
+    path: 'guard',
+    component: GuardComponent,
+    children: [
+      { path: 'auth', component: GuardAuthComponent, canActivate: [ aclCanActivate ], data: { guard: 'user1' } },
+      { path: 'admin', component: GuardAdminComponent, canActivate: [ aclCanActivate ], data: { guard: 'admin' } }
+    ],
+    canActivateChild: [ aclCanActivateChild ],
+    data: { guard: { role: [ 'user1' ], ability: [ 10, 'USER-EDIT' ], mode: 'allOf' } }
+  },
+  { path: 'pro', loadChildren: './pro/pro.module#ProModule', canMatch: [ aclCanMatch ], data: { guard: 1 } },
+  { path: 'pro', loadChildren: './pro/pro.module#ProModule', canMatch: [ aclCanMatch ], data: { guard: of(false).pipe(map(v => 'admin')) } }
+];
\ No newline at end of file diff --git a/assets/style.compact.css b/assets/style.compact.css index 3ceb33987..e98dd23c5 100644 --- a/assets/style.compact.css +++ b/assets/style.compact.css @@ -1 +1 @@ -.ant-alert,body{line-height:1.66667}dl,h1,h2,h3,h4,h5,h6,ol,p,pre,ul{margin-top:0}address,dl,ol,p,pre,ul{margin-bottom:1em}.ant-avatar,img{vertical-align:middle}.ant-btn,[role=button],a,area,button,html,input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}pre,textarea{overflow:auto}dd,h1,h2,h3,h4,h5,h6,legend{margin-bottom:.5em}.ant-badge-status,progress,sub,sup{vertical-align:baseline}[ant-click-animating-without-extra-node=true],[ant-click-animating=true],sub,sup{position:relative}.ant-carousel .slick-slider,.cdk-overlay-backdrop,html{-webkit-tap-highlight-color:transparent}[class*=ant-] input::-ms-clear,[class*=ant-] input::-ms-reveal,[class*=ant-]::-ms-clear,[class^=ant-] input::-ms-clear,[class^=ant-] input::-ms-reveal,[class^=ant-]::-ms-clear{display:none}body,html{width:100%}input::-ms-clear,input::-ms-reveal{display:none}*,::after,::before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar}@-ms-viewport{width:device-width}body{font-variant:tabular-nums;font-feature-settings:tnum}[tabindex='-1']:focus{outline:0!important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{color:rgba(0,0,0,.85);font-weight:500}abbr[data-original-title],abbr[title]{text-decoration:underline;text-decoration:underline dotted;border-bottom:0;cursor:help}address{font-style:normal;line-height:inherit}.font-italic,.hljs-emphasis,.token.italic,[data-theme=dark] .hljs-emphasis,dfn{font-style:italic}input[type=number],input[type=text],input[type=password],textarea{-webkit-appearance:none}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:500}dd{margin-left:0}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{font-size:75%;line-height:0}sub{bottom:-.25em}sup{top:-.5em}a{color:#1890ff;text-decoration:none;background-color:transparent;outline:0;cursor:pointer;-webkit-text-decoration-skip:objects}a:hover{color:#40a9ff}a:active{color:#096dd9}a:active,a:focus,a:hover{text-decoration:none;outline:0}a[disabled]{color:rgba(0,0,0,.25);cursor:not-allowed}code,kbd,pre,samp{font-size:1em;font-family:SFMono-Regular,Consolas,'Liberation Mono',Menlo,Courier,monospace}img{border-style:none}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;color:rgba(0,0,0,.45);text-align:left;caption-side:bottom}button,input,optgroup,select,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{resize:vertical}fieldset{min-width:0}legend{display:block;width:100%;max-width:100%;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}.ant-input-number-handler-down-inner,.ant-input-number-handler-up-inner,.ant-select-arrow,.ant-select-multiple .ant-select-selection-item-remove,.anticon{text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ant-badge-count,.ant-btn{font-weight:400;text-align:center}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}.clearfix::after,.clearfix::before{display:table;content:''}mark{padding:.2em;background-color:#feffe6}::selection{color:#fff;background:#1890ff}.clearfix::after{clear:both}.anticon,.anticon svg{display:inline-block}.anticon{color:inherit;font-style:normal;line-height:0;text-align:center;text-transform:none;vertical-align:-.125em}.anticon>*{line-height:1}.anticon::before{display:none}.anticon .anticon-icon{display:block}.anticon>.anticon{line-height:0;vertical-align:0}.anticon[tabindex]{cursor:pointer}.anticon-spin,.anticon-spin::before{display:inline-block;animation:loadingCircle 1s infinite linear}.ant-fade-appear,.ant-fade-enter,.ant-fade-leave{animation-timing-function:linear}.ant-fade-appear,.ant-fade-enter,.ant-fade-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-fade-appear.ant-fade-appear-active,.ant-fade-enter.ant-fade-enter-active{animation-name:antFadeIn;animation-play-state:running}.ant-fade-leave.ant-fade-leave-active{animation-name:antFadeOut;animation-play-state:running;pointer-events:none}.ant-fade-appear,.ant-fade-enter{opacity:0}@keyframes antFadeIn{0%{opacity:0}100%{opacity:1}}@keyframes antFadeOut{0%{opacity:1}100%{opacity:0}}.ant-move-up-appear,.ant-move-up-enter,.ant-move-up-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-move-up-appear.ant-move-up-appear-active,.ant-move-up-enter.ant-move-up-enter-active{animation-name:antMoveUpIn;animation-play-state:running}.ant-move-up-leave.ant-move-up-leave-active{animation-name:antMoveUpOut;animation-play-state:running;pointer-events:none}.ant-move-up-appear,.ant-move-up-enter{opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-move-up-leave{animation-timing-function:cubic-bezier(.6,.04,.98,.34)}.ant-move-down-appear,.ant-move-down-enter,.ant-move-down-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-move-down-appear.ant-move-down-appear-active,.ant-move-down-enter.ant-move-down-enter-active{animation-name:antMoveDownIn;animation-play-state:running}.ant-move-down-leave.ant-move-down-leave-active{animation-name:antMoveDownOut;animation-play-state:running;pointer-events:none}.ant-move-down-appear,.ant-move-down-enter{opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-move-down-leave{animation-timing-function:cubic-bezier(.6,.04,.98,.34)}.ant-move-left-appear,.ant-move-left-enter,.ant-move-left-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-move-left-appear.ant-move-left-appear-active,.ant-move-left-enter.ant-move-left-enter-active{animation-name:antMoveLeftIn;animation-play-state:running}.ant-move-left-leave.ant-move-left-leave-active{animation-name:antMoveLeftOut;animation-play-state:running;pointer-events:none}.ant-move-left-appear,.ant-move-left-enter{opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-move-left-leave{animation-timing-function:cubic-bezier(.6,.04,.98,.34)}.ant-move-right-appear,.ant-move-right-enter,.ant-move-right-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-move-right-appear.ant-move-right-appear-active,.ant-move-right-enter.ant-move-right-enter-active{animation-name:antMoveRightIn;animation-play-state:running}.ant-move-right-leave.ant-move-right-leave-active{animation-name:antMoveRightOut;animation-play-state:running;pointer-events:none}.ant-move-right-appear,.ant-move-right-enter{opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-move-right-leave{animation-timing-function:cubic-bezier(.6,.04,.98,.34)}@keyframes antMoveDownIn{0%{transform:translateY(100%);transform-origin:0 0;opacity:0}100%{transform:translateY(0);transform-origin:0 0;opacity:1}}@keyframes antMoveDownOut{0%{transform:translateY(0);transform-origin:0 0;opacity:1}100%{transform:translateY(100%);transform-origin:0 0;opacity:0}}@keyframes antMoveLeftIn{0%{transform:translateX(-100%);transform-origin:0 0;opacity:0}100%{transform:translateX(0);transform-origin:0 0;opacity:1}}@keyframes antMoveLeftOut{0%{transform:translateX(0);transform-origin:0 0;opacity:1}100%{transform:translateX(-100%);transform-origin:0 0;opacity:0}}@keyframes antMoveRightIn{0%{transform:translateX(100%);transform-origin:0 0;opacity:0}100%{transform:translateX(0);transform-origin:0 0;opacity:1}}@keyframes antMoveRightOut{0%{transform:translateX(0);transform-origin:0 0;opacity:1}100%{transform:translateX(100%);transform-origin:0 0;opacity:0}}@keyframes antMoveUpIn{0%{transform:translateY(-100%);transform-origin:0 0;opacity:0}100%{transform:translateY(0);transform-origin:0 0;opacity:1}}@keyframes antMoveUpOut{0%{transform:translateY(0);transform-origin:0 0;opacity:1}100%{transform:translateY(-100%);transform-origin:0 0;opacity:0}}@keyframes loadingCircle{100%{transform:rotate(360deg)}}.ant-click-animating-node,[ant-click-animating-without-extra-node=true]::after{position:absolute;top:0;right:0;bottom:0;left:0;display:block;border-radius:inherit;box-shadow:0 0 0 0 #1890ff;box-shadow:0 0 0 0 var(--antd-wave-shadow-color);opacity:.2;animation:fadeEffect 2s cubic-bezier(.08,.82,.17,1),waveEffect .4s cubic-bezier(.08,.82,.17,1);animation-fill-mode:forwards;content:'';pointer-events:none}@keyframes waveEffect{100%{box-shadow:0 0 0 #1890ff;box-shadow:0 0 0 6px var(--antd-wave-shadow-color)}}@keyframes fadeEffect{100%{opacity:0}}.ant-slide-up-appear,.ant-slide-up-enter,.ant-slide-up-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-slide-up-appear.ant-slide-up-appear-active,.ant-slide-up-enter.ant-slide-up-enter-active{animation-name:antSlideUpIn;animation-play-state:running}.ant-slide-up-leave.ant-slide-up-leave-active{animation-name:antSlideUpOut;animation-play-state:running;pointer-events:none}.ant-slide-up-appear,.ant-slide-up-enter{opacity:0;animation-timing-function:cubic-bezier(.23,1,.32,1)}.ant-slide-up-leave{animation-timing-function:cubic-bezier(.755,.05,.855,.06)}.ant-slide-down-appear,.ant-slide-down-enter,.ant-slide-down-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-slide-down-appear.ant-slide-down-appear-active,.ant-slide-down-enter.ant-slide-down-enter-active{animation-name:antSlideDownIn;animation-play-state:running}.ant-slide-down-leave.ant-slide-down-leave-active{animation-name:antSlideDownOut;animation-play-state:running;pointer-events:none}.ant-slide-down-appear,.ant-slide-down-enter{opacity:0;animation-timing-function:cubic-bezier(.23,1,.32,1)}.ant-slide-down-leave{animation-timing-function:cubic-bezier(.755,.05,.855,.06)}.ant-slide-left-appear,.ant-slide-left-enter,.ant-slide-left-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-slide-left-appear.ant-slide-left-appear-active,.ant-slide-left-enter.ant-slide-left-enter-active{animation-name:antSlideLeftIn;animation-play-state:running}.ant-slide-left-leave.ant-slide-left-leave-active{animation-name:antSlideLeftOut;animation-play-state:running;pointer-events:none}.ant-slide-left-appear,.ant-slide-left-enter{opacity:0;animation-timing-function:cubic-bezier(.23,1,.32,1)}.ant-slide-left-leave{animation-timing-function:cubic-bezier(.755,.05,.855,.06)}.ant-slide-right-appear,.ant-slide-right-enter,.ant-slide-right-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-slide-right-appear.ant-slide-right-appear-active,.ant-slide-right-enter.ant-slide-right-enter-active{animation-name:antSlideRightIn;animation-play-state:running}.ant-slide-right-leave.ant-slide-right-leave-active{animation-name:antSlideRightOut;animation-play-state:running;pointer-events:none}.ant-slide-right-appear,.ant-slide-right-enter{opacity:0;animation-timing-function:cubic-bezier(.23,1,.32,1)}.ant-slide-right-leave{animation-timing-function:cubic-bezier(.755,.05,.855,.06)}@keyframes antSlideUpIn{0%{transform:scaleY(.8);transform-origin:0 0;opacity:0}100%{transform:scaleY(1);transform-origin:0 0;opacity:1}}@keyframes antSlideUpOut{0%{transform:scaleY(1);transform-origin:0 0;opacity:1}100%{transform:scaleY(.8);transform-origin:0 0;opacity:0}}@keyframes antSlideDownIn{0%{transform:scaleY(.8);transform-origin:100% 100%;opacity:0}100%{transform:scaleY(1);transform-origin:100% 100%;opacity:1}}@keyframes antSlideDownOut{0%{transform:scaleY(1);transform-origin:100% 100%;opacity:1}100%{transform:scaleY(.8);transform-origin:100% 100%;opacity:0}}@keyframes antSlideLeftIn{0%{transform:scaleX(.8);transform-origin:0 0;opacity:0}100%{transform:scaleX(1);transform-origin:0 0;opacity:1}}@keyframes antSlideLeftOut{0%{transform:scaleX(1);transform-origin:0 0;opacity:1}100%{transform:scaleX(.8);transform-origin:0 0;opacity:0}}@keyframes antSlideRightIn{0%{transform:scaleX(.8);transform-origin:100% 0;opacity:0}100%{transform:scaleX(1);transform-origin:100% 0;opacity:1}}@keyframes antSlideRightOut{0%{transform:scaleX(1);transform-origin:100% 0;opacity:1}100%{transform:scaleX(.8);transform-origin:100% 0;opacity:0}}.ant-zoom-appear,.ant-zoom-enter,.ant-zoom-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-appear.ant-zoom-appear-active,.ant-zoom-enter.ant-zoom-enter-active{animation-name:antZoomIn;animation-play-state:running}.ant-zoom-leave.ant-zoom-leave-active{animation-name:antZoomOut;animation-play-state:running;pointer-events:none}.ant-zoom-appear,.ant-zoom-enter{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-appear-prepare,.ant-zoom-enter-prepare{transform:none}.ant-zoom-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-big-appear,.ant-zoom-big-enter,.ant-zoom-big-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-big-appear.ant-zoom-big-appear-active,.ant-zoom-big-enter.ant-zoom-big-enter-active{animation-name:antZoomBigIn;animation-play-state:running}.ant-zoom-big-leave.ant-zoom-big-leave-active{animation-name:antZoomBigOut;animation-play-state:running;pointer-events:none}.ant-zoom-big-appear,.ant-zoom-big-enter{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-big-appear-prepare,.ant-zoom-big-enter-prepare{transform:none}.ant-zoom-big-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-big-fast-appear,.ant-zoom-big-fast-enter,.ant-zoom-big-fast-leave{animation-duration:.1s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-big-fast-appear.ant-zoom-big-fast-appear-active,.ant-zoom-big-fast-enter.ant-zoom-big-fast-enter-active{animation-name:antZoomBigIn;animation-play-state:running}.ant-zoom-big-fast-leave.ant-zoom-big-fast-leave-active{animation-name:antZoomBigOut;animation-play-state:running;pointer-events:none}.ant-zoom-big-fast-appear,.ant-zoom-big-fast-enter{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-big-fast-appear-prepare,.ant-zoom-big-fast-enter-prepare{transform:none}.ant-zoom-big-fast-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-up-appear,.ant-zoom-up-enter,.ant-zoom-up-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-up-appear.ant-zoom-up-appear-active,.ant-zoom-up-enter.ant-zoom-up-enter-active{animation-name:antZoomUpIn;animation-play-state:running}.ant-zoom-up-leave.ant-zoom-up-leave-active{animation-name:antZoomUpOut;animation-play-state:running;pointer-events:none}.ant-zoom-up-appear,.ant-zoom-up-enter{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-up-appear-prepare,.ant-zoom-up-enter-prepare{transform:none}.ant-zoom-up-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-down-appear,.ant-zoom-down-enter,.ant-zoom-down-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-down-appear.ant-zoom-down-appear-active,.ant-zoom-down-enter.ant-zoom-down-enter-active{animation-name:antZoomDownIn;animation-play-state:running}.ant-zoom-down-leave.ant-zoom-down-leave-active{animation-name:antZoomDownOut;animation-play-state:running;pointer-events:none}.ant-zoom-down-appear,.ant-zoom-down-enter{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-down-appear-prepare,.ant-zoom-down-enter-prepare{transform:none}.ant-zoom-down-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-left-appear,.ant-zoom-left-enter,.ant-zoom-left-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-left-appear.ant-zoom-left-appear-active,.ant-zoom-left-enter.ant-zoom-left-enter-active{animation-name:antZoomLeftIn;animation-play-state:running}.ant-zoom-left-leave.ant-zoom-left-leave-active{animation-name:antZoomLeftOut;animation-play-state:running;pointer-events:none}.ant-zoom-left-appear,.ant-zoom-left-enter{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-left-appear-prepare,.ant-zoom-left-enter-prepare{transform:none}.ant-zoom-left-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-right-appear,.ant-zoom-right-enter,.ant-zoom-right-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-right-appear.ant-zoom-right-appear-active,.ant-zoom-right-enter.ant-zoom-right-enter-active{animation-name:antZoomRightIn;animation-play-state:running}.ant-zoom-right-leave.ant-zoom-right-leave-active{animation-name:antZoomRightOut;animation-play-state:running;pointer-events:none}.ant-zoom-right-appear,.ant-zoom-right-enter{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-right-appear-prepare,.ant-zoom-right-enter-prepare{transform:none}.ant-zoom-right-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}@keyframes antZoomIn{0%{transform:scale(.2);opacity:0}100%{transform:scale(1);opacity:1}}@keyframes antZoomOut{0%{transform:scale(1)}100%{transform:scale(.2);opacity:0}}@keyframes antZoomBigIn{0%{transform:scale(.8);opacity:0}100%{transform:scale(1);opacity:1}}@keyframes antZoomBigOut{0%{transform:scale(1)}100%{transform:scale(.8);opacity:0}}@keyframes antZoomUpIn{0%{transform:scale(.8);transform-origin:50% 0;opacity:0}100%{transform:scale(1);transform-origin:50% 0}}@keyframes antZoomUpOut{0%{transform:scale(1);transform-origin:50% 0}100%{transform:scale(.8);transform-origin:50% 0;opacity:0}}@keyframes antZoomLeftIn{0%{transform:scale(.8);transform-origin:0 50%;opacity:0}100%{transform:scale(1);transform-origin:0 50%}}@keyframes antZoomLeftOut{0%{transform:scale(1);transform-origin:0 50%}100%{transform:scale(.8);transform-origin:0 50%;opacity:0}}@keyframes antZoomRightIn{0%{transform:scale(.8);transform-origin:100% 50%;opacity:0}100%{transform:scale(1);transform-origin:100% 50%}}@keyframes antZoomRightOut{0%{transform:scale(1);transform-origin:100% 50%}100%{transform:scale(.8);transform-origin:100% 50%;opacity:0}}@keyframes antZoomDownIn{0%{transform:scale(.8);transform-origin:50% 100%;opacity:0}100%{transform:scale(1);transform-origin:50% 100%}}@keyframes antZoomDownOut{0%{transform:scale(1);transform-origin:50% 100%}100%{transform:scale(.8);transform-origin:50% 100%;opacity:0}}.ant-motion-collapse-legacy{overflow:hidden}.ant-motion-collapse-legacy-active{transition:height .2s cubic-bezier(.645,.045,.355,1),opacity .2s cubic-bezier(.645,.045,.355,1)!important}.ant-motion-collapse{overflow:hidden;transition:height .2s cubic-bezier(.645,.045,.355,1),opacity .2s cubic-bezier(.645,.045,.355,1)!important}.cdk-global-overlay-wrapper,.cdk-overlay-container{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper,.cdk-overlay-connected-position-bounding-box,.cdk-overlay-pane{position:absolute;display:flex;z-index:1000}.cdk-overlay-pane{pointer-events:auto;box-sizing:border-box;max-width:100%;max-height:100%}.cdk-overlay-backdrop{position:absolute;top:0;bottom:0;left:0;right:0;z-index:1000;pointer-events:auto;transition:opacity .4s cubic-bezier(.25,.8,.25,1);opacity:0}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:1}.cdk-high-contrast-active .cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:.6}.cdk-overlay-dark-backdrop{background:rgba(0,0,0,.32)}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{flex-direction:column;min-width:1px;min-height:1px}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}.cdk-visually-hidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;outline:0;-webkit-appearance:none;-moz-appearance:none}.nz-overlay-transparent-backdrop,.nz-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0}.nz-animate-disabled.ant-drawer.ant-drawer-open .ant-drawer-mask,.nz-animate-disabled.ant-scroll-number-only{animation:none;transition:none}.nz-animate-disabled.ant-drawer>*{transition:none}.nz-animate-disabled .ant-modal,.nz-animate-disabled .ant-modal-mask,.nz-animate-disabled .ant-modal-mask.zoom-enter,.nz-animate-disabled .ant-modal-mask.zoom-enter-active,.nz-animate-disabled .ant-modal-mask.zoom-leave,.nz-animate-disabled .ant-modal-mask.zoom-leave-active,.nz-animate-disabled .ant-modal.zoom-enter,.nz-animate-disabled .ant-modal.zoom-enter-active,.nz-animate-disabled .ant-modal.zoom-leave,.nz-animate-disabled .ant-modal.zoom-leave-active{animation:none;transition:none}.nz-animate-disabled.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow svg,.nz-animate-disabled.ant-menu,.nz-animate-disabled.ant-menu .ant-menu-item,.nz-animate-disabled.ant-menu .ant-menu-item .anticon,.nz-animate-disabled.ant-menu .ant-menu-item .anticon+span,.nz-animate-disabled.ant-menu .ant-menu-submenu-title,.nz-animate-disabled.ant-menu .ant-menu-submenu-title .anticon,.nz-animate-disabled.ant-menu .ant-menu-submenu-title .anticon+span,.nz-animate-disabled.ant-tabs .ant-tabs-bottom-content.ant-tabs-content-animated,.nz-animate-disabled.ant-tabs .ant-tabs-bottom-content>.ant-tabs-tabpane,.nz-animate-disabled.ant-tabs .ant-tabs-top-content.ant-tabs-content-animated,.nz-animate-disabled.ant-tabs .ant-tabs-top-content>.ant-tabs-tabpane,.nz-animate-disabled.ant-tabs.ant-tabs-bottom .ant-tabs-ink-bar-animated,.nz-animate-disabled.ant-tabs.ant-tabs-left .ant-tabs-ink-bar-animated,.nz-animate-disabled.ant-tabs.ant-tabs-right .ant-tabs-ink-bar-animated,.nz-animate-disabled.ant-tabs.ant-tabs-top .ant-tabs-ink-bar-animated{transition:none}.ant-affix{position:fixed;z-index:10}.ant-alert,.ant-anchor{box-sizing:border-box;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;position:relative}nz-affix{display:block}.ant-alert{margin:0;color:rgba(0,0,0,.85);font-size:12px;display:flex;align-items:center;padding:8px 15px;word-wrap:break-word;border-radius:2px}.ant-alert-content{flex:1;min-width:0}.ant-alert-icon{margin-right:4px}.ant-alert-description{display:none;font-size:12px;line-height:20px}.ant-alert-success{background-color:#f6ffed;border:1px solid #b7eb8f}.ant-alert-success .ant-alert-icon{color:#52c41a}.ant-alert-info{background-color:#e6f7ff;border:1px solid #91d5ff}.ant-alert-info .ant-alert-icon{color:#1890ff}.ant-alert-warning{background-color:#fffbe6;border:1px solid #ffe58f}.ant-alert-warning .ant-alert-icon{color:#faad14}.ant-alert-error{background-color:#fff2f0;border:1px solid #ffccc7}.ant-alert-error .ant-alert-icon{color:#ff4d4f}.ant-alert-error .ant-alert-description>pre{margin:0;padding:0}.ant-alert-action{margin-left:4px}.ant-alert-close-icon{margin-left:4px;padding:0;overflow:hidden;font-size:12px;line-height:12px;background-color:transparent;border:none;outline:0;cursor:pointer}.ant-alert-close-icon .anticon-close{color:rgba(0,0,0,.45);transition:color .3s}.ant-alert-close-icon .anticon-close:hover{color:rgba(0,0,0,.75)}.ant-alert-close-text{color:rgba(0,0,0,.45);transition:color .3s}.ant-alert-close-text:hover{color:rgba(0,0,0,.75)}.ant-alert-with-description{align-items:flex-start;padding:11px 15px 7px 20px}.ant-alert-with-description.ant-alert-no-icon{padding:7px 15px}.ant-alert-with-description .ant-alert-icon{margin-right:11px;font-size:20px}.ant-alert-with-description .ant-alert-message{display:block;margin-bottom:4px;color:rgba(0,0,0,.85);font-size:14px}.ant-alert-message{color:rgba(0,0,0,.85)}.ant-alert-with-description .ant-alert-description{display:block}.ant-alert.ant-alert-motion-leave{overflow:hidden;opacity:1;transition:max-height .3s cubic-bezier(.78,.14,.15,.86),opacity .3s cubic-bezier(.78,.14,.15,.86),padding-top .3s cubic-bezier(.78,.14,.15,.86),padding-bottom .3s cubic-bezier(.78,.14,.15,.86),margin-bottom .3s cubic-bezier(.78,.14,.15,.86)}.ant-alert.ant-alert-motion-leave-active{max-height:0;margin-bottom:0!important;padding-top:0;padding-bottom:0;opacity:0}.ant-alert-banner{margin-bottom:0;border:0;border-radius:0}.ant-alert.ant-alert-rtl{direction:rtl}.ant-alert-rtl .ant-alert-icon{margin-right:auto;margin-left:4px}.ant-alert-rtl .ant-alert-action,.ant-alert-rtl .ant-alert-close-icon{margin-right:4px;margin-left:auto}.ant-alert-rtl.ant-alert-with-description{padding-right:20px;padding-left:11px}.ant-alert-rtl.ant-alert-with-description .ant-alert-icon{margin-right:auto;margin-left:11px}nz-alert{display:block}.ant-alert-icon{line-height:1}.ant-anchor{margin:0;padding:0 0 0 2px;color:rgba(0,0,0,.85);font-size:12px;line-height:1.66667}.ant-anchor-wrapper{margin-left:-4px;padding-left:4px;overflow:auto;background-color:transparent}.ant-anchor-ink{position:absolute;top:0;left:0;height:100%}.ant-anchor-ink::before{position:relative;display:block;width:2px;height:100%;margin:0 auto;background-color:#f0f0f0;content:' '}.ant-anchor-ink-ball{position:absolute;left:50%;display:none;width:8px;height:8px;background-color:#fff;border:2px solid #1890ff;border-radius:8px;transform:translateX(-50%);transition:top .3s ease-in-out}.ant-anchor-link-title,.ant-avatar{position:relative;white-space:nowrap}.ant-anchor-ink-ball.visible{display:inline-block}.ant-anchor-fixed .ant-anchor-ink .ant-anchor-ink-ball{display:none}.ant-anchor-link{padding:4px 0 4px 16px}.ant-anchor-link-title{display:block;margin-bottom:3px;overflow:hidden;color:rgba(0,0,0,.85);text-overflow:ellipsis;transition:all .3s}.ant-anchor-link-title:only-child{margin-bottom:0}.ant-anchor-link-active>.ant-anchor-link-title{color:#1890ff}.ant-anchor-link .ant-anchor-link{padding-top:2px;padding-bottom:2px}.ant-anchor-rtl{direction:rtl}.ant-anchor-rtl.ant-anchor-wrapper{margin-right:-4px;margin-left:0;padding-right:4px;padding-left:0}.ant-anchor-rtl .ant-anchor-ink{right:0;left:auto}.ant-anchor-rtl .ant-anchor-ink-ball{right:50%;left:0;transform:translateX(50%)}.ant-anchor-rtl .ant-anchor-link{padding:4px 16px 4px 0}.ant-avatar,.ant-back-top,.ant-badge{margin:0;padding:0;list-style:none;font-variant:tabular-nums;font-feature-settings:tnum;box-sizing:border-box}nz-link{display:block}.ant-avatar{font-size:12px;display:inline-block;overflow:hidden;color:#fff;text-align:center;background:#ccc;width:28px;height:28px;line-height:28px;border-radius:50%}.ant-avatar-lg-string,.ant-avatar-sm-string,.ant-avatar-string{position:absolute;left:50%;transform-origin:0 center}.ant-avatar-image{background:0 0}.ant-avatar .ant-image-img{display:block}.ant-avatar.ant-avatar-icon{font-size:16px}.ant-avatar-lg.ant-avatar-icon,.ant-spin-dot{font-size:20px}.ant-avatar.ant-avatar-icon>.anticon{margin:0}.ant-avatar-lg{width:32px;height:32px;line-height:32px;border-radius:50%}.ant-avatar-lg.ant-avatar-icon>.anticon{margin:0}.ant-avatar-sm{width:22px;height:22px;line-height:22px;border-radius:50%}.ant-avatar-sm.ant-avatar-icon{font-size:12px}.ant-avatar-sm.ant-avatar-icon>.anticon{margin:0}.ant-avatar-square{border-radius:2px}.ant-avatar>img{display:block;width:100%;height:100%;object-fit:cover}.ant-avatar-group,.ant-btn-group{display:inline-flex}.ant-avatar-group .ant-avatar{border:1px solid #fff}.ant-avatar-group .ant-avatar:not(:first-child){margin-left:-8px}.ant-avatar-group-popover .ant-avatar+.ant-avatar{margin-left:3px}.ant-avatar-group-rtl .ant-avatar:not(:first-child){margin-right:-8px;margin-left:0}.ant-avatar-group-popover.ant-popover-rtl .ant-avatar+.ant-avatar{margin-right:3px;margin-left:0}.ant-back-top{color:rgba(0,0,0,.85);font-size:12px;line-height:1.66667;position:fixed;right:100px;bottom:50px;z-index:10;width:40px;height:40px;cursor:pointer}.ant-back-top:empty{display:none}.ant-back-top-rtl{right:auto;left:100px;direction:rtl}.ant-back-top-content{width:40px;height:40px;overflow:hidden;color:#fff;text-align:center;background-color:rgba(0,0,0,.45);border-radius:20px;transition:all .3s}.ant-back-top-content:hover{background-color:rgba(0,0,0,.85);transition:all .3s}.ant-badge-count,.ant-badge-dot{z-index:auto;background:#ff4d4f;box-shadow:0 0 0 1px #fff}.ant-back-top-icon{font-size:24px;line-height:40px}@media screen and (max-width:768px){.ant-back-top{right:60px}.ant-back-top-rtl{right:auto;left:60px}}@media screen and (max-width:480px){.ant-back-top{right:20px}.ant-back-top-rtl{right:auto;left:20px}}.ant-badge{color:rgba(0,0,0,.85);font-size:12px;position:relative;display:inline-block;line-height:1}.ant-badge-count{min-width:18px;height:18px;padding:0 6px;color:#fff;font-size:12px;line-height:18px;white-space:nowrap;border-radius:9px}.ant-badge-count a,.ant-badge-count a:hover{color:#fff}.ant-badge-count-sm{min-width:14px;height:14px;padding:0;font-size:12px;line-height:14px;border-radius:7px}.ant-badge-multiple-words,.ant-ribbon{padding:0 8px}.ant-badge-dot{width:6px;min-width:6px;height:6px;border-radius:100%}.ant-badge-dot.ant-scroll-number{transition:background 1.5s}.ant-badge .ant-scroll-number-custom-component,.ant-badge-count,.ant-badge-dot{position:absolute;top:0;right:0;transform:translate(50%,-50%);transform-origin:100% 0}.ant-badge .ant-scroll-number-custom-component.anticon-spin,.ant-badge-count.anticon-spin,.ant-badge-dot.anticon-spin{animation:antBadgeLoadingCircle 1s infinite linear}.ant-badge-status{line-height:inherit}.ant-badge-not-a-wrapper:not(.ant-badge-status),.ant-badge-status-dot{vertical-align:middle}.ant-badge-status-dot{position:relative;top:-1px;display:inline-block;width:6px;height:6px;border-radius:50%}.ant-badge-status-success{background-color:#52c41a}.ant-badge-status-processing{position:relative;background-color:#1890ff}.ant-badge-status-processing::after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #1890ff;border-radius:50%;animation:antStatusProcessing 1.2s infinite ease-in-out;content:''}.ant-badge-status-default{background-color:#d9d9d9}.ant-badge-status-error{background-color:#ff4d4f}.ant-badge-status-warning{background-color:#faad14}.ant-badge-status-magenta,.ant-badge-status-pink{background:#eb2f96}.ant-badge-status-red{background:#f5222d}.ant-badge-status-volcano{background:#fa541c}.ant-badge-status-orange{background:#fa8c16}.ant-badge-status-yellow{background:#fadb14}.ant-badge-status-gold{background:#faad14}.ant-badge-status-cyan{background:#13c2c2}.ant-badge-status-lime{background:#a0d911}.ant-badge-status-green{background:#52c41a}.ant-badge-status-blue{background:#1890ff}.ant-badge-status-geekblue{background:#2f54eb}.ant-badge-status-purple{background:#722ed1}.ant-badge-status-text{margin-left:8px;color:rgba(0,0,0,.85);font-size:12px}.ant-badge-zoom-appear,.ant-badge-zoom-enter{animation:antZoomBadgeIn .3s cubic-bezier(.12,.4,.29,1.46);animation-fill-mode:both}.ant-badge-zoom-leave{animation:antZoomBadgeOut .3s cubic-bezier(.71,-.46,.88,.6);animation-fill-mode:both}.ant-badge-not-a-wrapper .ant-badge-zoom-appear,.ant-badge-not-a-wrapper .ant-badge-zoom-enter{animation:antNoWrapperZoomBadgeIn .3s cubic-bezier(.12,.4,.29,1.46)}.ant-badge-not-a-wrapper .ant-badge-zoom-leave{animation:antNoWrapperZoomBadgeOut .3s cubic-bezier(.71,-.46,.88,.6)}.ant-badge-not-a-wrapper .ant-badge-count,.ant-badge-not-a-wrapper .ant-scroll-number-custom-component{transform:none}.ant-badge-not-a-wrapper .ant-scroll-number,.ant-badge-not-a-wrapper .ant-scroll-number-custom-component{position:relative;top:auto;display:block;transform-origin:50% 50%}.ant-btn,.ant-btn:empty,.ant-btn>span,.ant-scroll-number-only{display:inline-block}@keyframes antStatusProcessing{0%{transform:scale(.8);opacity:.5}100%{transform:scale(2.4);opacity:0}}.ant-scroll-number-only,.ant-scroll-number-only>p.ant-scroll-number-only-unit{height:18px;-webkit-transform-style:preserve-3d;-webkit-backface-visibility:hidden}.ant-scroll-number{overflow:hidden;direction:ltr}.ant-scroll-number-only{position:relative;transition:all .3s cubic-bezier(.645,.045,.355,1)}.ant-scroll-number-only>p.ant-scroll-number-only-unit{margin:0}.ant-scroll-number-symbol{vertical-align:top}@keyframes antZoomBadgeIn{0%{transform:scale(0) translate(50%,-50%);opacity:0}100%{transform:scale(1) translate(50%,-50%)}}@keyframes antZoomBadgeOut{0%{transform:scale(1) translate(50%,-50%)}100%{transform:scale(0) translate(50%,-50%);opacity:0}}@keyframes antNoWrapperZoomBadgeIn{0%{transform:scale(0);opacity:0}100%{transform:scale(1)}}@keyframes antNoWrapperZoomBadgeOut{0%{transform:scale(1)}100%{transform:scale(0);opacity:0}}@keyframes antBadgeLoadingCircle{0%{transform-origin:50%}100%{transform:translate(50%,-50%) rotate(360deg);transform-origin:50%}}.ant-ribbon-wrapper{position:relative}.ant-ribbon{box-sizing:border-box;margin:0;font-size:12px;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;position:absolute;top:8px;height:22px;color:#fff;line-height:22px;white-space:nowrap;background-color:#1890ff;border-radius:2px}.ant-breadcrumb,.ant-btn{line-height:1.66667;font-size:12px}.ant-ribbon-text{color:#fff}.ant-ribbon-corner{position:absolute;top:100%;width:8px;height:8px;color:currentcolor;border:4px solid;transform:scaleY(.75);transform-origin:top}.ant-ribbon-corner::after{position:absolute;top:-4px;left:-4px;width:inherit;height:inherit;color:rgba(0,0,0,.25);border:inherit;content:''}.ant-ribbon-color-magenta,.ant-ribbon-color-pink{color:#eb2f96;background:#eb2f96}.ant-ribbon-color-red{color:#f5222d;background:#f5222d}.ant-ribbon-color-volcano{color:#fa541c;background:#fa541c}.ant-ribbon-color-orange{color:#fa8c16;background:#fa8c16}.ant-ribbon-color-yellow{color:#fadb14;background:#fadb14}.ant-ribbon-color-gold{color:#faad14;background:#faad14}.ant-ribbon-color-cyan{color:#13c2c2;background:#13c2c2}.ant-ribbon-color-lime{color:#a0d911;background:#a0d911}.ant-ribbon-color-green{color:#52c41a;background:#52c41a}.ant-ribbon-color-blue{color:#1890ff;background:#1890ff}.ant-ribbon-color-geekblue{color:#2f54eb;background:#2f54eb}.ant-ribbon-color-purple{color:#722ed1;background:#722ed1}.ant-ribbon.ant-ribbon-placement-end{right:-8px;border-bottom-right-radius:0}.ant-ribbon.ant-ribbon-placement-end .ant-ribbon-corner{right:0;border-color:currentcolor transparent transparent currentcolor}.ant-ribbon-rtl.ant-ribbon-placement-end .ant-ribbon-corner,.ant-ribbon-rtl.ant-ribbon-placement-end .ant-ribbon-corner::after,.ant-ribbon.ant-ribbon-placement-start .ant-ribbon-corner{border-color:currentcolor currentcolor transparent transparent}.ant-ribbon.ant-ribbon-placement-start{left:-8px;border-bottom-left-radius:0}.ant-ribbon.ant-ribbon-placement-start .ant-ribbon-corner{left:0}.ant-badge-rtl{direction:rtl}.ant-badge-rtl.ant-badge:not(.ant-badge-not-a-wrapper) .ant-badge-count,.ant-badge-rtl.ant-badge:not(.ant-badge-not-a-wrapper) .ant-badge-dot,.ant-badge-rtl.ant-badge:not(.ant-badge-not-a-wrapper) .ant-scroll-number-custom-component{right:auto;left:0;direction:ltr;transform:translate(-50%,-50%);transform-origin:0 0}.ant-breadcrumb-rtl,.ant-btn-group.ant-btn-group-rtl,.ant-btn-rtl,.ant-card-rtl,.ant-carousel-rtl,.ant-checkbox-rtl,.ant-collapse-rtl,.ant-comment-rtl,.ant-picker-dropdown-rtl .ant-picker-footer-extra,.ant-picker-input>input-rtl,.ant-picker-panel-rtl,.ant-picker-rtl,.ant-ribbon-rtl{direction:rtl}.ant-badge-rtl.ant-badge:not(.ant-badge-not-a-wrapper) .ant-scroll-number-custom-component{right:auto;left:0;transform:translate(-50%,-50%);transform-origin:0 0}.ant-badge-rtl .ant-badge-status-text{margin-right:8px;margin-left:0}.ant-breadcrumb,.ant-breadcrumb ol{margin:0;padding:0;list-style:none}.ant-badge:not(.ant-badge-not-a-wrapper).ant-badge-rtl .ant-badge-zoom-appear,.ant-badge:not(.ant-badge-not-a-wrapper).ant-badge-rtl .ant-badge-zoom-enter{animation-name:antZoomBadgeInRtl}.ant-badge:not(.ant-badge-not-a-wrapper).ant-badge-rtl .ant-badge-zoom-leave{animation-name:antZoomBadgeOutRtl}.ant-ribbon-rtl.ant-ribbon-placement-end{right:unset;left:-8px;border-bottom-right-radius:2px;border-bottom-left-radius:0}.ant-ribbon-rtl.ant-ribbon-placement-end .ant-ribbon-corner{right:unset;left:0}.ant-ribbon-rtl.ant-ribbon-placement-start .ant-ribbon-corner,.ant-ribbon-rtl.ant-ribbon-placement-start .ant-ribbon-corner::after{border-color:currentcolor transparent transparent currentcolor}.ant-ribbon-rtl.ant-ribbon-placement-start{right:-8px;left:unset;border-bottom-right-radius:0;border-bottom-left-radius:2px}.ant-ribbon-rtl.ant-ribbon-placement-start .ant-ribbon-corner{right:0;left:unset}@keyframes antZoomBadgeInRtl{0%{transform:scale(0) translate(-50%,-50%);opacity:0}100%{transform:scale(1) translate(-50%,-50%)}}@keyframes antZoomBadgeOutRtl{0%{transform:scale(1) translate(-50%,-50%)}100%{transform:scale(0) translate(-50%,-50%);opacity:0}}.ant-badge .ant-scroll-number:only-child{position:relative;top:auto;display:block}.ant-badge .ant-badge-count:only-child{transform:none}nz-ribbon{display:block}.ant-breadcrumb{box-sizing:border-box;font-variant:tabular-nums;font-feature-settings:tnum;color:rgba(0,0,0,.45)}.ant-breadcrumb .anticon{font-size:12px}.ant-breadcrumb ol{display:flex;flex-wrap:wrap}.ant-breadcrumb a{color:rgba(0,0,0,.45);transition:color .3s}.ant-breadcrumb a:hover,.ant-breadcrumb li:last-child,.ant-breadcrumb li:last-child a{color:rgba(0,0,0,.85)}li:last-child .ant-breadcrumb-separator{display:none}.ant-breadcrumb-rtl::after,.ant-breadcrumb-rtl::before{display:table;content:''}.ant-breadcrumb-separator{margin:0 4px;color:rgba(0,0,0,.45)}.ant-breadcrumb>nz-breadcrumb-item:last-child,.ant-breadcrumb>nz-breadcrumb-item:last-child a,.ant-btn{color:rgba(0,0,0,.85)}.ant-breadcrumb-link>.anticon+a,.ant-breadcrumb-link>.anticon+span,.ant-breadcrumb-overlay-link>.anticon{margin-left:4px}.ant-breadcrumb-rtl::after{clear:both}.ant-breadcrumb-rtl>span{float:right}.ant-breadcrumb-rtl .ant-breadcrumb-link>.anticon+a,.ant-breadcrumb-rtl .ant-breadcrumb-link>.anticon+span,.ant-breadcrumb-rtl .ant-breadcrumb-overlay-link>.anticon{margin-right:4px;margin-left:0}.ant-breadcrumb-link .anticon+span{margin-left:4px}.ant-breadcrumb-rtl>nz-breadcrumb-item{float:right}nz-breadcrumb{display:block}nz-breadcrumb-item:last-child .ant-breadcrumb-separator{display:none}.ant-btn{position:relative;white-space:nowrap;border:1px solid #d9d9d9;box-shadow:0 2px 0 rgba(0,0,0,.015);cursor:pointer;transition:all .3s cubic-bezier(.645,.045,.355,1);user-select:none;height:28px;padding:3px 11px;border-radius:2px;background:#fff}.ant-btn>.anticon,.ant-checkbox{line-height:1}.ant-btn:active>a:only-child::after,.ant-btn:focus>a:only-child::after,.ant-btn:hover>a:only-child::after,.ant-btn>a:only-child::after{background:0 0;top:0;right:0;bottom:0;left:0;position:absolute;content:''}.ant-btn,.ant-btn:active,.ant-btn:focus{outline:0}.ant-btn:not([disabled]):hover{text-decoration:none}.ant-btn:not([disabled]):active{outline:0;box-shadow:none}.ant-btn[disabled]{cursor:not-allowed}.ant-btn[disabled]>*{pointer-events:none}.ant-btn-lg{height:32px;padding:3.3px 11px;font-size:14px;border-radius:2px}.ant-btn-sm{height:22px;padding:0 7px;font-size:12px;border-radius:2px}.ant-btn>a:only-child{color:currentcolor}.ant-btn:focus,.ant-btn:hover{color:#40a9ff;border-color:#40a9ff}.ant-btn:focus>a:only-child,.ant-btn:hover>a:only-child{color:currentcolor}.ant-btn:active{color:#096dd9;border-color:#096dd9}.ant-btn:active>a:only-child{color:currentcolor}.ant-btn[disabled],.ant-btn[disabled]:active,.ant-btn[disabled]:focus,.ant-btn[disabled]:hover{color:rgba(0,0,0,.25);border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn[disabled]:active>a:only-child,.ant-btn[disabled]:focus>a:only-child,.ant-btn[disabled]:hover>a:only-child,.ant-btn[disabled]>a:only-child{color:currentcolor}.ant-btn[disabled]:active>a:only-child::after,.ant-btn[disabled]:focus>a:only-child::after,.ant-btn[disabled]:hover>a:only-child::after,.ant-btn[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn:active,.ant-btn:focus,.ant-btn:hover{text-decoration:none;background:#fff}.ant-btn-primary{color:#fff;border-color:#1890ff;background:#1890ff;text-shadow:0 -1px 0 rgba(0,0,0,.12);box-shadow:0 2px 0 rgba(0,0,0,.045)}.ant-btn-primary>a:only-child{color:currentcolor}.ant-btn-primary>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-primary:focus,.ant-btn-primary:hover{color:#fff;border-color:#40a9ff;background:#40a9ff}.ant-btn-primary:focus>a:only-child,.ant-btn-primary:hover>a:only-child{color:currentcolor}.ant-btn-primary:focus>a:only-child::after,.ant-btn-primary:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-primary:active{color:#fff;border-color:#096dd9;background:#096dd9}.ant-btn-primary:active>a:only-child{color:currentcolor}.ant-btn-primary:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-primary[disabled],.ant-btn-primary[disabled]:active,.ant-btn-primary[disabled]:focus,.ant-btn-primary[disabled]:hover{color:rgba(0,0,0,.25);border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-primary[disabled]:active>a:only-child,.ant-btn-primary[disabled]:focus>a:only-child,.ant-btn-primary[disabled]:hover>a:only-child,.ant-btn-primary[disabled]>a:only-child{color:currentcolor}.ant-btn-primary[disabled]:active>a:only-child::after,.ant-btn-primary[disabled]:focus>a:only-child::after,.ant-btn-primary[disabled]:hover>a:only-child::after,.ant-btn-primary[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-group .ant-btn-primary:not(:first-child):not(:last-child){border-right-color:#40a9ff;border-left-color:#40a9ff}.ant-btn-group .ant-btn-primary:not(:first-child):not(:last-child):disabled{border-color:#d9d9d9}.ant-btn-group .ant-btn-primary:first-child:not(:last-child){border-right-color:#40a9ff}.ant-btn-group .ant-btn-primary:first-child:not(:last-child)[disabled]{border-right-color:#d9d9d9}.ant-btn-group .ant-btn-primary+.ant-btn-primary,.ant-btn-group .ant-btn-primary:last-child:not(:first-child){border-left-color:#40a9ff}.ant-btn-group .ant-btn-primary+.ant-btn-primary[disabled],.ant-btn-group .ant-btn-primary:last-child:not(:first-child)[disabled]{border-left-color:#d9d9d9}.ant-btn-ghost{color:rgba(0,0,0,.85);border-color:#d9d9d9;background:0 0}.ant-btn-ghost>a:only-child{color:currentcolor}.ant-btn-ghost>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-ghost:focus,.ant-btn-ghost:hover{color:#40a9ff;border-color:#40a9ff;background:0 0}.ant-btn-ghost:focus>a:only-child,.ant-btn-ghost:hover>a:only-child{color:currentcolor}.ant-btn-ghost:focus>a:only-child::after,.ant-btn-ghost:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-ghost:active{color:#096dd9;border-color:#096dd9;background:0 0}.ant-btn-ghost:active>a:only-child{color:currentcolor}.ant-btn-ghost:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-ghost[disabled],.ant-btn-ghost[disabled]:active,.ant-btn-ghost[disabled]:focus,.ant-btn-ghost[disabled]:hover{color:rgba(0,0,0,.25);border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-ghost[disabled]:active>a:only-child,.ant-btn-ghost[disabled]:focus>a:only-child,.ant-btn-ghost[disabled]:hover>a:only-child,.ant-btn-ghost[disabled]>a:only-child{color:currentcolor}.ant-btn-ghost[disabled]:active>a:only-child::after,.ant-btn-ghost[disabled]:focus>a:only-child::after,.ant-btn-ghost[disabled]:hover>a:only-child::after,.ant-btn-ghost[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dashed{color:rgba(0,0,0,.85);border-color:#d9d9d9;background:#fff;border-style:dashed}.ant-btn-dashed>a:only-child{color:currentcolor}.ant-btn-dashed>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dashed:focus,.ant-btn-dashed:hover{color:#40a9ff;border-color:#40a9ff;background:#fff}.ant-btn-dashed:focus>a:only-child,.ant-btn-dashed:hover>a:only-child{color:currentcolor}.ant-btn-dashed:focus>a:only-child::after,.ant-btn-dashed:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dashed:active{color:#096dd9;border-color:#096dd9;background:#fff}.ant-btn-dashed:active>a:only-child{color:currentcolor}.ant-btn-dashed:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dashed[disabled],.ant-btn-dashed[disabled]:active,.ant-btn-dashed[disabled]:focus,.ant-btn-dashed[disabled]:hover{color:rgba(0,0,0,.25);border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-dashed[disabled]:active>a:only-child,.ant-btn-dashed[disabled]:focus>a:only-child,.ant-btn-dashed[disabled]:hover>a:only-child,.ant-btn-dashed[disabled]>a:only-child{color:currentcolor}.ant-btn-dashed[disabled]:active>a:only-child::after,.ant-btn-dashed[disabled]:focus>a:only-child::after,.ant-btn-dashed[disabled]:hover>a:only-child::after,.ant-btn-dashed[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-danger{color:#fff;border-color:#ff4d4f;background:#ff4d4f;text-shadow:0 -1px 0 rgba(0,0,0,.12);box-shadow:0 2px 0 rgba(0,0,0,.045)}.ant-btn-danger>a:only-child{color:currentcolor}.ant-btn-danger>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-danger:focus,.ant-btn-danger:hover{color:#fff;border-color:#ff7875;background:#ff7875}.ant-btn-danger:focus>a:only-child,.ant-btn-danger:hover>a:only-child{color:currentcolor}.ant-btn-danger:focus>a:only-child::after,.ant-btn-danger:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-danger:active{color:#fff;border-color:#d9363e;background:#d9363e}.ant-btn-danger:active>a:only-child{color:currentcolor}.ant-btn-danger:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-danger[disabled],.ant-btn-danger[disabled]:active,.ant-btn-danger[disabled]:focus,.ant-btn-danger[disabled]:hover{color:rgba(0,0,0,.25);border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-danger[disabled]:active>a:only-child,.ant-btn-danger[disabled]:focus>a:only-child,.ant-btn-danger[disabled]:hover>a:only-child,.ant-btn-danger[disabled]>a:only-child{color:currentcolor}.ant-btn-danger[disabled]:active>a:only-child::after,.ant-btn-danger[disabled]:focus>a:only-child::after,.ant-btn-danger[disabled]:hover>a:only-child::after,.ant-btn-danger[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-link{color:#1890ff;border-color:transparent;background:0 0;box-shadow:none}.ant-btn-link>a:only-child{color:currentcolor}.ant-btn-link>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-link:focus,.ant-btn-link:hover{color:#40a9ff;background:0 0}.ant-btn-link:focus>a:only-child,.ant-btn-link:hover>a:only-child{color:currentcolor}.ant-btn-link:focus>a:only-child::after,.ant-btn-link:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-link:active{color:#096dd9;background:0 0}.ant-btn-link:active>a:only-child{color:currentcolor}.ant-btn-link:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-link:hover{background:0 0}.ant-btn-link:active,.ant-btn-link:focus,.ant-btn-link:hover{border-color:transparent}.ant-btn-link[disabled],.ant-btn-link[disabled]:active,.ant-btn-link[disabled]:focus,.ant-btn-link[disabled]:hover{color:rgba(0,0,0,.25);border-color:transparent;background:0 0;text-shadow:none;box-shadow:none}.ant-btn-link[disabled]:active>a:only-child,.ant-btn-link[disabled]:focus>a:only-child,.ant-btn-link[disabled]:hover>a:only-child,.ant-btn-link[disabled]>a:only-child{color:currentcolor}.ant-btn-link[disabled]:active>a:only-child::after,.ant-btn-link[disabled]:focus>a:only-child::after,.ant-btn-link[disabled]:hover>a:only-child::after,.ant-btn-link[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-text{color:rgba(0,0,0,.85);border-color:transparent;background:0 0;box-shadow:none}.ant-btn-text>a:only-child{color:currentcolor}.ant-btn-text>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-text:focus,.ant-btn-text:hover{color:#40a9ff}.ant-btn-text:focus>a:only-child,.ant-btn-text:hover>a:only-child{color:currentcolor}.ant-btn-text:focus>a:only-child::after,.ant-btn-text:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-text:active{color:#096dd9}.ant-btn-text:active>a:only-child{color:currentcolor}.ant-btn-text:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-text:focus,.ant-btn-text:hover{color:rgba(0,0,0,.85);background:rgba(0,0,0,.018);border-color:transparent}.ant-btn-text:active{color:rgba(0,0,0,.85);background:rgba(0,0,0,.028);border-color:transparent}.ant-btn-text[disabled],.ant-btn-text[disabled]:active,.ant-btn-text[disabled]:focus,.ant-btn-text[disabled]:hover{color:rgba(0,0,0,.25);border-color:transparent;background:0 0;text-shadow:none;box-shadow:none}.ant-btn-text[disabled]:active>a:only-child,.ant-btn-text[disabled]:focus>a:only-child,.ant-btn-text[disabled]:hover>a:only-child,.ant-btn-text[disabled]>a:only-child{color:currentcolor}.ant-btn-text[disabled]:active>a:only-child::after,.ant-btn-text[disabled]:focus>a:only-child::after,.ant-btn-text[disabled]:hover>a:only-child::after,.ant-btn-text[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous{color:#ff4d4f;border-color:#ff4d4f;background:#fff}.ant-btn-dangerous>a:only-child{color:currentcolor}.ant-btn-dangerous>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous:focus,.ant-btn-dangerous:hover{color:#ff7875;border-color:#ff7875;background:#fff}.ant-btn-dangerous:focus>a:only-child,.ant-btn-dangerous:hover>a:only-child{color:currentcolor}.ant-btn-dangerous:focus>a:only-child::after,.ant-btn-dangerous:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous:active{color:#d9363e;border-color:#d9363e;background:#fff}.ant-btn-dangerous:active>a:only-child{color:currentcolor}.ant-btn-dangerous:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous[disabled],.ant-btn-dangerous[disabled]:active,.ant-btn-dangerous[disabled]:focus,.ant-btn-dangerous[disabled]:hover{color:rgba(0,0,0,.25);border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-dangerous[disabled]:active>a:only-child,.ant-btn-dangerous[disabled]:focus>a:only-child,.ant-btn-dangerous[disabled]:hover>a:only-child,.ant-btn-dangerous[disabled]>a:only-child{color:currentcolor}.ant-btn-dangerous[disabled]:active>a:only-child::after,.ant-btn-dangerous[disabled]:focus>a:only-child::after,.ant-btn-dangerous[disabled]:hover>a:only-child::after,.ant-btn-dangerous[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-primary{color:#fff;border-color:#ff4d4f;background:#ff4d4f;text-shadow:0 -1px 0 rgba(0,0,0,.12);box-shadow:0 2px 0 rgba(0,0,0,.045)}.ant-btn-dangerous.ant-btn-primary>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-primary>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-primary:focus,.ant-btn-dangerous.ant-btn-primary:hover{color:#fff;border-color:#ff7875;background:#ff7875}.ant-btn-dangerous.ant-btn-primary:focus>a:only-child,.ant-btn-dangerous.ant-btn-primary:hover>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-primary:focus>a:only-child::after,.ant-btn-dangerous.ant-btn-primary:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-primary:active{color:#fff;border-color:#d9363e;background:#d9363e}.ant-btn-dangerous.ant-btn-primary:active>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-primary:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-primary[disabled],.ant-btn-dangerous.ant-btn-primary[disabled]:active,.ant-btn-dangerous.ant-btn-primary[disabled]:focus,.ant-btn-dangerous.ant-btn-primary[disabled]:hover{color:rgba(0,0,0,.25);border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-dangerous.ant-btn-primary[disabled]:active>a:only-child,.ant-btn-dangerous.ant-btn-primary[disabled]:focus>a:only-child,.ant-btn-dangerous.ant-btn-primary[disabled]:hover>a:only-child,.ant-btn-dangerous.ant-btn-primary[disabled]>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-primary[disabled]:active>a:only-child::after,.ant-btn-dangerous.ant-btn-primary[disabled]:focus>a:only-child::after,.ant-btn-dangerous.ant-btn-primary[disabled]:hover>a:only-child::after,.ant-btn-dangerous.ant-btn-primary[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-link{color:#ff4d4f;border-color:transparent;background:0 0;box-shadow:none}.ant-btn-dangerous.ant-btn-link>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-link>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-link:focus,.ant-btn-dangerous.ant-btn-link:hover{color:#ff7875;border-color:transparent;background:0 0}.ant-btn-dangerous.ant-btn-link:focus>a:only-child,.ant-btn-dangerous.ant-btn-link:hover>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-link:focus>a:only-child::after,.ant-btn-dangerous.ant-btn-link:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-link:active{color:#d9363e;border-color:transparent;background:0 0}.ant-btn-dangerous.ant-btn-link:active>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-link:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-link[disabled],.ant-btn-dangerous.ant-btn-link[disabled]:active,.ant-btn-dangerous.ant-btn-link[disabled]:focus,.ant-btn-dangerous.ant-btn-link[disabled]:hover{color:rgba(0,0,0,.25);border-color:transparent;background:0 0;text-shadow:none;box-shadow:none}.ant-btn-dangerous.ant-btn-link[disabled]:active>a:only-child,.ant-btn-dangerous.ant-btn-link[disabled]:focus>a:only-child,.ant-btn-dangerous.ant-btn-link[disabled]:hover>a:only-child,.ant-btn-dangerous.ant-btn-link[disabled]>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-link[disabled]:active>a:only-child::after,.ant-btn-dangerous.ant-btn-link[disabled]:focus>a:only-child::after,.ant-btn-dangerous.ant-btn-link[disabled]:hover>a:only-child::after,.ant-btn-dangerous.ant-btn-link[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-text{color:#ff4d4f;border-color:transparent;background:0 0;box-shadow:none}.ant-btn-dangerous.ant-btn-text>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-text>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-text:focus,.ant-btn-dangerous.ant-btn-text:hover{color:#ff7875;border-color:transparent;background:rgba(0,0,0,.018)}.ant-btn-dangerous.ant-btn-text:focus>a:only-child,.ant-btn-dangerous.ant-btn-text:hover>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-text:focus>a:only-child::after,.ant-btn-dangerous.ant-btn-text:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-text:active{color:#d9363e;border-color:transparent;background:rgba(0,0,0,.028)}.ant-btn-dangerous.ant-btn-text:active>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-text:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-text[disabled],.ant-btn-dangerous.ant-btn-text[disabled]:active,.ant-btn-dangerous.ant-btn-text[disabled]:focus,.ant-btn-dangerous.ant-btn-text[disabled]:hover{color:rgba(0,0,0,.25);border-color:transparent;background:0 0;text-shadow:none;box-shadow:none}.ant-btn-dangerous.ant-btn-text[disabled]:active>a:only-child,.ant-btn-dangerous.ant-btn-text[disabled]:focus>a:only-child,.ant-btn-dangerous.ant-btn-text[disabled]:hover>a:only-child,.ant-btn-dangerous.ant-btn-text[disabled]>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-text[disabled]:active>a:only-child::after,.ant-btn-dangerous.ant-btn-text[disabled]:focus>a:only-child::after,.ant-btn-dangerous.ant-btn-text[disabled]:hover>a:only-child::after,.ant-btn-dangerous.ant-btn-text[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-icon-only{width:28px;height:28px;padding:1.3px 0;font-size:14px;border-radius:2px;vertical-align:-3px}.ant-btn-icon-only>*{font-size:14px}.ant-btn-icon-only.ant-btn-lg{width:32px;height:32px;padding:1.7px 0;font-size:16px;border-radius:2px}.ant-btn-icon-only.ant-btn-lg>*{font-size:16px}.ant-btn-icon-only.ant-btn-sm{width:22px;height:22px;padding:0;font-size:12px;border-radius:2px}.ant-btn-icon-only.ant-btn-sm>*{font-size:12px}.ant-btn-icon-only>.anticon{display:flex;justify-content:center}a.ant-btn-icon-only{vertical-align:-1px}a.ant-btn-icon-only>.anticon{display:inline}.ant-btn-round{height:28px;padding:3px 14px;font-size:12px;border-radius:28px}.ant-btn-round.ant-btn-lg{height:32px;padding:3.3px 16px;font-size:14px;border-radius:32px}.ant-btn-round.ant-btn-sm{height:22px;padding:0 11px;font-size:12px;border-radius:22px}.ant-btn-round.ant-btn-icon-only{width:auto}.ant-btn-circle{min-width:28px;padding-right:0;padding-left:0;text-align:center;border-radius:50%}.ant-btn-circle.ant-btn-lg{min-width:32px;border-radius:50%}.ant-btn-circle.ant-btn-sm{min-width:22px;border-radius:50%}.ant-btn::before{position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;z-index:1;display:none;background:#fff;border-radius:inherit;opacity:.35;transition:opacity .2s;content:'';pointer-events:none}.ant-btn-group,.ant-btn-group>.ant-btn,.ant-btn-group>span>.ant-btn,.ant-btn.ant-btn-loading,.ant-btn:active>span,.ant-btn:focus>span{position:relative}.ant-btn .anticon{transition:margin-left .3s cubic-bezier(.645,.045,.355,1)}.ant-btn .anticon.anticon-minus>svg,.ant-btn .anticon.anticon-plus>svg{shape-rendering:optimizespeed}.ant-btn.ant-btn-loading{cursor:default}.ant-btn.ant-btn-loading::before{display:block}.ant-btn>.ant-btn-loading-icon{transition:width .3s cubic-bezier(.645,.045,.355,1),opacity .3s cubic-bezier(.645,.045,.355,1)}.ant-btn>.ant-btn-loading-icon .anticon{padding-right:4px;animation:none}.ant-btn>.ant-btn-loading-icon .anticon svg{animation:loadingCircle 1s infinite linear}.ant-btn>.ant-btn-loading-icon:only-child .anticon{padding-right:0}.ant-btn-group>.ant-btn:active,.ant-btn-group>.ant-btn:focus,.ant-btn-group>.ant-btn:hover,.ant-btn-group>span>.ant-btn:active,.ant-btn-group>span>.ant-btn:focus,.ant-btn-group>span>.ant-btn:hover{z-index:2}.ant-btn-group>.ant-btn[disabled],.ant-btn-group>span>.ant-btn[disabled]{z-index:0}.ant-btn-group .ant-btn-icon-only{font-size:12px}.ant-btn+.ant-btn-group,.ant-btn-group .ant-btn+.ant-btn,.ant-btn-group .ant-btn+span,.ant-btn-group span+.ant-btn,.ant-btn-group+.ant-btn,.ant-btn-group+.ant-btn-group,.ant-btn-group>span+span{margin-left:-1px}.ant-btn-group .ant-btn-primary+.ant-btn:not(.ant-btn-primary):not([disabled]){border-left-color:transparent}.ant-btn-group .ant-btn{border-radius:0}.ant-btn-group-sm>.ant-btn:only-child,.ant-btn-group-sm>span:only-child>.ant-btn,.ant-btn-group>.ant-btn:only-child,.ant-btn-group>span:only-child>.ant-btn,.ant-card{border-radius:2px}.ant-btn-group-sm>.ant-btn:first-child:not(:last-child),.ant-btn-group-sm>span:first-child:not(:last-child)>.ant-btn,.ant-btn-group>.ant-btn:first-child:not(:last-child),.ant-btn-group>span:first-child:not(:last-child)>.ant-btn{border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-btn-group-sm>.ant-btn:last-child:not(:first-child),.ant-btn-group-sm>span:last-child:not(:first-child)>.ant-btn,.ant-btn-group>.ant-btn:last-child:not(:first-child),.ant-btn-group>span:last-child:not(:first-child)>.ant-btn{border-top-right-radius:2px;border-bottom-right-radius:2px}.ant-btn-group>.ant-btn:first-child,.ant-btn-group>span:first-child>.ant-btn{margin-left:0}.ant-btn-group>.ant-btn-group{float:left}.ant-btn-group>.ant-btn-group:not(:first-child):not(:last-child)>.ant-btn{border-radius:0}.ant-btn-group>.ant-btn-group:first-child:not(:last-child)>.ant-btn:last-child{padding-right:8px;border-top-right-radius:0;border-bottom-right-radius:0}.ant-btn-group>.ant-btn-group:last-child:not(:first-child)>.ant-btn:first-child{padding-left:8px;border-top-left-radius:0;border-bottom-left-radius:0}.ant-btn-group-rtl.ant-btn+.ant-btn-group,.ant-btn-group-rtl.ant-btn-group .ant-btn+.ant-btn,.ant-btn-group-rtl.ant-btn-group .ant-btn+span,.ant-btn-group-rtl.ant-btn-group span+.ant-btn,.ant-btn-group-rtl.ant-btn-group+.ant-btn,.ant-btn-group-rtl.ant-btn-group+.ant-btn-group,.ant-btn-group-rtl.ant-btn-group>span+span,.ant-btn-rtl.ant-btn+.ant-btn-group,.ant-btn-rtl.ant-btn-group .ant-btn+.ant-btn,.ant-btn-rtl.ant-btn-group .ant-btn+span,.ant-btn-rtl.ant-btn-group span+.ant-btn,.ant-btn-rtl.ant-btn-group+.ant-btn,.ant-btn-rtl.ant-btn-group+.ant-btn-group,.ant-btn-rtl.ant-btn-group>span+span{margin-right:-1px;margin-left:auto}.ant-btn-group-rtl.ant-btn-group>.ant-btn:first-child:not(:last-child),.ant-btn-group-rtl.ant-btn-group>span:first-child:not(:last-child)>.ant-btn{border-radius:0 2px 2px 0}.ant-btn-group-rtl.ant-btn-group>.ant-btn:last-child:not(:first-child),.ant-btn-group-rtl.ant-btn-group>span:last-child:not(:first-child)>.ant-btn{border-radius:2px 0 0 2px}.ant-btn-group-rtl.ant-btn-group-sm>.ant-btn:first-child:not(:last-child),.ant-btn-group-rtl.ant-btn-group-sm>span:first-child:not(:last-child)>.ant-btn{border-radius:0 2px 2px 0}.ant-btn-group-rtl.ant-btn-group-sm>.ant-btn:last-child:not(:first-child),.ant-btn-group-rtl.ant-btn-group-sm>span:last-child:not(:first-child)>.ant-btn{border-radius:2px 0 0 2px}.ant-btn-background-ghost.ant-btn-primary:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-primary:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-primary:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-primary>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn>.anticon+span,.ant-btn>span+.anticon{margin-left:4px}.ant-btn.ant-btn-background-ghost{color:#fff;border-color:#fff}.ant-btn.ant-btn-background-ghost,.ant-btn.ant-btn-background-ghost:active,.ant-btn.ant-btn-background-ghost:focus,.ant-btn.ant-btn-background-ghost:hover{background:0 0}.ant-btn.ant-btn-background-ghost:focus,.ant-btn.ant-btn-background-ghost:hover{color:#40a9ff;border-color:#40a9ff}.ant-btn.ant-btn-background-ghost:active{color:#096dd9;border-color:#096dd9}.ant-btn.ant-btn-background-ghost[disabled]{color:rgba(0,0,0,.25);background:0 0;border-color:#d9d9d9}.ant-btn-background-ghost.ant-btn-primary{color:#1890ff;border-color:#1890ff;text-shadow:none}.ant-btn-background-ghost.ant-btn-primary>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-primary:focus,.ant-btn-background-ghost.ant-btn-primary:hover{color:#40a9ff;border-color:#40a9ff}.ant-btn-background-ghost.ant-btn-primary:focus>a:only-child,.ant-btn-background-ghost.ant-btn-primary:hover>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-primary:active{color:#096dd9;border-color:#096dd9}.ant-btn-background-ghost.ant-btn-primary:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-primary[disabled],.ant-btn-background-ghost.ant-btn-primary[disabled]:active,.ant-btn-background-ghost.ant-btn-primary[disabled]:focus,.ant-btn-background-ghost.ant-btn-primary[disabled]:hover{color:rgba(0,0,0,.25);border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-background-ghost.ant-btn-danger:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-danger:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-danger:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-danger>a:only-child::after,.ant-btn-background-ghost.ant-btn-primary[disabled]:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-primary[disabled]:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-primary[disabled]:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-primary[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-background-ghost.ant-btn-primary[disabled]:active>a:only-child,.ant-btn-background-ghost.ant-btn-primary[disabled]:focus>a:only-child,.ant-btn-background-ghost.ant-btn-primary[disabled]:hover>a:only-child,.ant-btn-background-ghost.ant-btn-primary[disabled]>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-danger{color:#ff4d4f;border-color:#ff4d4f;text-shadow:none}.ant-btn-background-ghost.ant-btn-danger>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-danger:focus,.ant-btn-background-ghost.ant-btn-danger:hover{color:#ff7875;border-color:#ff7875}.ant-btn-background-ghost.ant-btn-danger:focus>a:only-child,.ant-btn-background-ghost.ant-btn-danger:hover>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-danger:active{color:#d9363e;border-color:#d9363e}.ant-btn-background-ghost.ant-btn-danger:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-danger[disabled],.ant-btn-background-ghost.ant-btn-danger[disabled]:active,.ant-btn-background-ghost.ant-btn-danger[disabled]:focus,.ant-btn-background-ghost.ant-btn-danger[disabled]:hover{color:rgba(0,0,0,.25);border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-background-ghost.ant-btn-danger[disabled]:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-danger[disabled]:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-danger[disabled]:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-danger[disabled]>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-background-ghost.ant-btn-danger[disabled]:active>a:only-child,.ant-btn-background-ghost.ant-btn-danger[disabled]:focus>a:only-child,.ant-btn-background-ghost.ant-btn-danger[disabled]:hover>a:only-child,.ant-btn-background-ghost.ant-btn-danger[disabled]>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous{color:#ff4d4f;border-color:#ff4d4f;text-shadow:none}.ant-btn-background-ghost.ant-btn-dangerous>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous:focus,.ant-btn-background-ghost.ant-btn-dangerous:hover{color:#ff7875;border-color:#ff7875}.ant-btn-background-ghost.ant-btn-dangerous:focus>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous:hover>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous:active{color:#d9363e;border-color:#d9363e}.ant-btn-background-ghost.ant-btn-dangerous:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous[disabled],.ant-btn-background-ghost.ant-btn-dangerous[disabled]:active,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:focus,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:hover{color:rgba(0,0,0,.25);border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous[disabled]>a:only-child::after{background:0 0;position:absolute;right:0;content:'';top:0;left:0;bottom:0}.ant-btn-background-ghost.ant-btn-dangerous[disabled]:active>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:focus>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:hover>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous[disabled]>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link{color:#ff4d4f;border-color:transparent;text-shadow:none}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:focus,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:hover{color:#ff7875;border-color:transparent}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:focus>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:hover>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:active{color:#d9363e;border-color:transparent}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled],.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:active,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:focus,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:hover{color:rgba(0,0,0,.25);border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:active>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:focus>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:hover>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-two-chinese-chars::first-letter{letter-spacing:.34em}.ant-btn-two-chinese-chars>:not(.anticon){margin-right:-.34em;letter-spacing:.34em}.ant-btn.ant-btn-block{width:100%}.ant-btn:empty{width:0;visibility:hidden;content:'\a0'}.ant-card-head::after,.ant-card-head::before{display:table;content:''}a.ant-btn{padding-top:.01px!important;line-height:26px}a.ant-btn-lg{line-height:30px}a.ant-btn-sm{line-height:20px}.ant-card,.ant-card-actions>li>span{line-height:1.66667;position:relative}.ant-btn-group-rtl.ant-btn-group .ant-btn-primary+.ant-btn-primary,.ant-btn-group-rtl.ant-btn-group .ant-btn-primary:last-child:not(:first-child){border-right-color:#40a9ff;border-left-color:#d9d9d9}.ant-btn-group-rtl.ant-btn-group .ant-btn-primary+.ant-btn-primary[disabled],.ant-btn-group-rtl.ant-btn-group .ant-btn-primary:last-child:not(:first-child)[disabled]{border-right-color:#d9d9d9;border-left-color:#40a9ff}.ant-btn-rtl.ant-btn>.ant-btn-loading-icon .anticon{padding-right:0;padding-left:4px}.ant-btn>.ant-btn-loading-icon:only-child .anticon{padding-left:0}.ant-btn-rtl.ant-btn>.anticon+span,.ant-btn-rtl.ant-btn>span+.anticon{margin-right:8px;margin-left:0}.ant-card{box-sizing:border-box;margin:0;padding:0;color:rgba(0,0,0,.85);font-size:12px;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;background:#fff}.ant-card-hoverable{cursor:pointer;transition:box-shadow .3s,border-color .3s}.ant-card-hoverable:hover{border-color:transparent;box-shadow:0 1px 2px -2px rgba(0,0,0,.16),0 3px 6px 0 rgba(0,0,0,.12),0 5px 12px 4px rgba(0,0,0,.09)}.ant-card-head,.ant-card-head .ant-tabs-top-bar{border-bottom:1px solid #f0f0f0}.ant-card-bordered{border:1px solid #f0f0f0}.ant-card-head{min-height:36px;margin-bottom:-1px;padding:0 12px;color:rgba(0,0,0,.85);font-weight:500;font-size:12px;background:0 0;border-radius:2px 2px 0 0}.ant-card-extra,.ant-card-head .ant-tabs-top{color:rgba(0,0,0,.85);font-weight:400;font-size:12px}.ant-card-head::after{clear:both}.ant-card-head-wrapper{display:flex;align-items:center}.ant-card-head-title{display:inline-block;flex:1;padding:8.5px 0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-card-body::after,.ant-card-body::before{display:table;content:''}.ant-card-head-title>.ant-typography,.ant-card-head-title>.ant-typography-edit-content{left:0;margin-top:0;margin-bottom:0}.ant-card-head .ant-tabs-top{clear:both;margin-bottom:-9px}.ant-card-extra{float:right;margin-left:auto;padding:8.5px 0}.ant-card-rtl .ant-card-extra{margin-right:auto;margin-left:0}.ant-card-body{padding:12px}.ant-card-body::after{clear:both}.ant-card-contain-grid:not(.ant-card-loading) .ant-card-body{margin:-1px 0 0 -1px;padding:0}.ant-card-grid{float:left;width:33.33%;padding:12px;border:0;border-radius:0;box-shadow:1px 0 0 0 #f0f0f0,0 1px 0 0 #f0f0f0,1px 1px 0 0 #f0f0f0,1px 0 0 0 #f0f0f0 inset,0 1px 0 0 #f0f0f0 inset;transition:all .3s}.ant-card-rtl .ant-card-grid{float:right}.ant-card-grid-hoverable:hover{position:relative;z-index:1;box-shadow:0 1px 2px -2px rgba(0,0,0,.16),0 3px 6px 0 rgba(0,0,0,.12),0 5px 12px 4px rgba(0,0,0,.09)}.ant-card-contain-tabs>.ant-card-head .ant-card-head-title{min-height:27.5px;padding-bottom:0}.ant-card-contain-tabs>.ant-card-head .ant-card-extra{padding-bottom:0}.ant-card-bordered .ant-card-cover{margin-top:-1px;margin-right:-1px;margin-left:-1px}.ant-card-cover>*{display:block;width:100%}.ant-card-actions::after,.ant-card-actions::before{display:table;content:''}.ant-card-cover img{border-radius:2px 2px 0 0}.ant-card-actions{margin:0;padding:0;list-style:none;background:#fff;border-top:1px solid #f0f0f0}.ant-card-actions::after{clear:both}.ant-card-actions>li{float:left;margin:4px 0;color:rgba(0,0,0,.45);text-align:center}.ant-card-rtl .ant-card-actions>li{float:right}.ant-card-actions>li>span{display:block;min-width:32px;font-size:12px;cursor:pointer}.ant-card-actions>li>span:hover{color:#1890ff;transition:color .3s}.ant-card-actions>li>span a:not(.ant-btn),.ant-card-actions>li>span>.anticon{display:inline-block;width:100%;color:rgba(0,0,0,.45);line-height:22px;transition:color .3s}.ant-card-meta::after,.ant-card-meta::before{display:table;content:''}.ant-card-actions>li>span a:not(.ant-btn):hover,.ant-card-actions>li>span>.anticon:hover{color:#1890ff}.ant-card-actions>li>span>.anticon{font-size:16px;line-height:22px}.ant-card-actions>li:not(:last-child){border-right:1px solid #f0f0f0}.ant-card-rtl .ant-card-actions>li:not(:last-child){border-right:none;border-left:1px solid #f0f0f0}.ant-card-type-inner .ant-card-head{padding:0 12px;background:#fafafa}.ant-card-type-inner .ant-card-head-title{padding:12px 0;font-size:12px}.ant-card-type-inner .ant-card-body{padding:16px 12px}.ant-card-type-inner .ant-card-extra{padding:13.5px 0}.ant-card-meta{margin:-4px 0}.ant-card-meta::after{clear:both}.ant-card-meta-avatar{float:left;padding-right:16px}.ant-card-rtl .ant-card-meta-avatar{float:right;padding-right:0;padding-left:16px}.ant-card-meta-detail{overflow:hidden}.ant-card-meta-detail>div:not(:last-child){margin-bottom:4px}.ant-card-meta-title{overflow:hidden;color:rgba(0,0,0,.85);font-weight:500;font-size:14px;white-space:nowrap;text-overflow:ellipsis}.ant-card-meta-description,.ant-comment-content-author-name,.ant-comment-content-author-name>*,.ant-comment-content-author-name>:hover{color:rgba(0,0,0,.45)}.ant-carousel,.ant-checkbox,.ant-checkbox-wrapper{color:rgba(0,0,0,.85);font-variant:tabular-nums}.ant-card-loading{overflow:hidden}.ant-card-loading .ant-card-body{user-select:none}.ant-card-loading-content p{margin:0}.ant-card-loading-block{height:14px;margin:4px 0;background:linear-gradient(90deg,rgba(207,216,220,.2),rgba(207,216,220,.4),rgba(207,216,220,.2));background-size:600% 600%;border-radius:2px;animation:card-loading 1.4s ease infinite}@keyframes card-loading{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}.ant-card-small>.ant-card-head{min-height:30px;padding:0 12px;font-size:12px}.ant-card-small>.ant-card-head>.ant-card-head-wrapper>.ant-card-head-title{padding:6px 0}.ant-card-small>.ant-card-head>.ant-card-head-wrapper>.ant-card-extra{padding:6px 0;font-size:12px}.ant-card-small>.ant-card-body{padding:12px}.ant-card-rtl .ant-skeleton-header{padding:0 0 0 8.5px}nz-card,nz-card-loading,nz-card-meta{display:block}.ant-carousel{box-sizing:border-box;margin:0;padding:0;font-size:12px;line-height:1.66667;list-style:none;font-feature-settings:tnum}.ant-carousel .slick-slider{position:relative;display:block;box-sizing:border-box;touch-action:pan-y;-webkit-touch-callout:none}.ant-carousel .slick-list{position:relative;display:block;margin:0;padding:0;overflow:hidden}.ant-carousel .slick-list:focus{outline:0}.ant-carousel .slick-list.dragging{cursor:pointer}.ant-carousel .slick-list .slick-slide{pointer-events:none}.ant-carousel .slick-list .slick-slide input.ant-checkbox-input,.ant-carousel .slick-list .slick-slide input.ant-radio-input{visibility:hidden}.ant-carousel .slick-list .slick-slide.slick-active{pointer-events:auto}.ant-carousel .slick-list .slick-slide.slick-active input.ant-checkbox-input,.ant-carousel .slick-list .slick-slide.slick-active input.ant-radio-input{visibility:visible}.ant-carousel .slick-list .slick-slide>div>div{vertical-align:bottom}.ant-carousel .slick-slider .slick-list,.ant-carousel .slick-slider .slick-track{transform:translate3d(0,0,0);touch-action:pan-y}.ant-carousel .slick-track{position:relative;top:0;left:0;display:block}.ant-carousel .slick-track::after,.ant-carousel .slick-track::before{display:table;content:''}.ant-carousel .slick-track::after{clear:both}.slick-loading .ant-carousel .slick-track{visibility:hidden}.ant-carousel .slick-slide{display:none;float:left;height:100%;min-height:1px}.ant-carousel .slick-slide img{display:block}.ant-carousel .slick-slide.slick-loading img{display:none}.ant-carousel .slick-slide.dragging img{pointer-events:none}.ant-carousel .slick-initialized .slick-slide{display:block}.ant-carousel .slick-loading .slick-slide{visibility:hidden}.ant-carousel .slick-vertical .slick-slide{display:block;height:auto}.ant-carousel .slick-arrow.slick-hidden{display:none}.ant-carousel .slick-next,.ant-carousel .slick-prev{position:absolute;top:50%;display:block;width:20px;height:20px;margin-top:-10px;padding:0;color:transparent;font-size:0;line-height:0;background:0 0;border:0;outline:0;cursor:pointer}.ant-carousel .slick-next:focus,.ant-carousel .slick-next:hover,.ant-carousel .slick-prev:focus,.ant-carousel .slick-prev:hover{color:transparent;background:0 0;outline:0}.ant-carousel .slick-next:focus::before,.ant-carousel .slick-next:hover::before,.ant-carousel .slick-prev:focus::before,.ant-carousel .slick-prev:hover::before{opacity:1}.ant-carousel .slick-next.slick-disabled::before,.ant-carousel .slick-prev.slick-disabled::before{opacity:.25}.ant-carousel .slick-prev{left:-25px}.ant-carousel .slick-prev::before{content:'←'}.ant-carousel .slick-next::before,.ant-carousel-rtl .ant-carousel .slick-prev::before{content:'→'}.ant-carousel .slick-next{right:-25px}.ant-carousel .slick-dots{position:absolute;right:0;bottom:0;left:0;z-index:15;display:flex!important;justify-content:center;margin-right:15%;margin-left:15%;padding-left:0;list-style:none}.ant-carousel .slick-dots-bottom,.ant-popover-placement-leftBottom .ant-popover-arrow,.ant-popover-placement-rightBottom .ant-popover-arrow{bottom:12px}.ant-carousel .slick-dots-top{top:12px;bottom:auto}.ant-carousel .slick-dots li{position:relative;display:inline-block;flex:0 1 auto;box-sizing:content-box;width:16px;height:3px;margin:0 3px;padding:0;text-align:center;text-indent:-999px;vertical-align:top;transition:all .5s}.ant-carousel .slick-dots li button{display:block;width:100%;height:3px;padding:0;color:transparent;font-size:0;background:#fff;border:0;border-radius:1px;outline:0;cursor:pointer;opacity:.3;transition:all .5s}.ant-carousel .slick-dots li button:focus,.ant-carousel .slick-dots li button:hover{opacity:.75}.ant-carousel .slick-dots li.slick-active{width:24px}.ant-carousel .slick-dots li.slick-active button{background:#fff;opacity:1}.ant-carousel .slick-dots li.slick-active:focus,.ant-carousel .slick-dots li.slick-active:hover{opacity:1}.ant-carousel-vertical .slick-dots{top:50%;bottom:auto;flex-direction:column;width:3px;height:auto;margin:0;transform:translateY(-50%)}.ant-carousel-vertical .slick-dots-left{right:auto;left:12px}.ant-carousel-vertical .slick-dots-right{right:12px;left:auto}.ant-carousel-vertical .slick-dots li{width:3px;height:16px;margin:4px 2px;vertical-align:baseline}.ant-checkbox,.ant-checkbox-wrapper{box-sizing:border-box;margin:0;padding:0;font-size:12px;list-style:none;font-feature-settings:tnum}.ant-carousel-vertical .slick-dots li button{width:3px;height:16px}.ant-carousel-vertical .slick-dots li.slick-active,.ant-carousel-vertical .slick-dots li.slick-active button{width:3px;height:24px}.ant-carousel-rtl .ant-carousel .slick-track{right:0;left:auto}.ant-carousel-rtl .ant-carousel .slick-prev{right:-25px;left:auto}.ant-carousel-rtl .ant-carousel .slick-next{right:auto;left:-25px}.ant-carousel-rtl .ant-carousel .slick-next::before{content:'←'}.ant-carousel-rtl.ant-carousel .slick-dots{flex-direction:row-reverse}.ant-carousel-rtl.ant-carousel-vertical .slick-dots{flex-direction:column}nz-carousel{display:block;position:relative;overflow:hidden;width:100%;height:100%}.slick-dots{display:block}.slick-track{opacity:1}.slick-list{direction:ltr}@keyframes antCheckboxEffect{0%{transform:scale(1);opacity:.5}100%{transform:scale(1.6);opacity:0}}.ant-checkbox{position:relative;top:.2em;white-space:nowrap;outline:0;cursor:pointer}.ant-checkbox-input:focus+.ant-checkbox-inner,.ant-checkbox-wrapper:hover .ant-checkbox-inner,.ant-checkbox:hover .ant-checkbox-inner{border-color:#1890ff}.ant-checkbox-checked::after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #1890ff;border-radius:2px;visibility:hidden;animation:antCheckboxEffect .36s ease-in-out;animation-fill-mode:backwards;content:''}.ant-checkbox-wrapper:hover .ant-checkbox::after,.ant-checkbox:hover::after{visibility:visible}.ant-checkbox-inner{position:relative;top:0;left:0;display:block;width:14px;height:14px;direction:ltr;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;border-collapse:separate;transition:all .3s}.ant-checkbox-inner::after{position:absolute;top:50%;left:21.5%;display:table;width:5px;height:8px;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(0) translate(-50%,-50%);opacity:0;transition:all .1s cubic-bezier(.71,-.46,.88,.6),opacity .1s;content:' '}.ant-checkbox-input{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;cursor:pointer;opacity:0}.ant-checkbox-checked .ant-checkbox-inner::after{position:absolute;display:table;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(1) translate(-50%,-50%);opacity:1;transition:all .2s cubic-bezier(.12,.4,.29,1.46) .1s;content:' '}.ant-checkbox-checked .ant-checkbox-inner{background-color:#1890ff;border-color:#1890ff}.ant-checkbox-disabled{cursor:not-allowed}.ant-checkbox-disabled.ant-checkbox-checked .ant-checkbox-inner::after{border-color:rgba(0,0,0,.25);animation-name:none}.ant-checkbox-disabled .ant-checkbox-input{cursor:not-allowed;pointer-events:none}.ant-checkbox-disabled .ant-checkbox-inner{background-color:#f5f5f5;border-color:#d9d9d9!important}.ant-checkbox-disabled .ant-checkbox-inner::after{border-color:#f5f5f5;border-collapse:separate;animation-name:none}.ant-checkbox-disabled+span{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-checkbox-disabled:hover::after,.ant-checkbox-wrapper:hover .ant-checkbox-disabled::after{visibility:hidden}.ant-checkbox-wrapper{display:inline-flex;align-items:baseline;line-height:unset;cursor:pointer}.ant-checkbox-wrapper::after{display:inline-block;width:0;overflow:hidden;content:'\a0'}.ant-checkbox-wrapper.ant-checkbox-wrapper-disabled{cursor:not-allowed}.ant-checkbox-wrapper+.ant-checkbox-wrapper{margin-left:8px}.ant-checkbox-wrapper.ant-checkbox-wrapper-in-form-item input[type=checkbox]{width:14px;height:14px}.ant-checkbox+span{padding-right:8px;padding-left:8px}.ant-checkbox-group,.ant-collapse{padding:0;line-height:1.66667;color:rgba(0,0,0,.85);font-size:12px;box-sizing:border-box;font-feature-settings:tnum;list-style:none;font-variant:tabular-nums}.ant-checkbox-group{margin:0;display:inline-block}.ant-checkbox-group-item{margin-right:6px}.ant-checkbox-group-item:last-child{margin-right:0}.ant-checkbox-group-item+.ant-checkbox-group-item{margin-left:0}.ant-checkbox-indeterminate .ant-checkbox-inner{background-color:#fff;border-color:#d9d9d9}.ant-checkbox-indeterminate .ant-checkbox-inner::after{top:50%;left:50%;width:6px;height:6px;background-color:#1890ff;border:0;transform:translate(-50%,-50%) scale(1);opacity:1;content:' '}.ant-checkbox-indeterminate.ant-checkbox-disabled .ant-checkbox-inner::after{background-color:rgba(0,0,0,.25);border-color:rgba(0,0,0,.25)}.ant-checkbox-group-rtl .ant-checkbox-group-item{margin-right:0;margin-left:6px}.ant-checkbox-group-rtl .ant-checkbox-group-item:last-child{margin-left:0!important}.ant-checkbox-group-rtl .ant-checkbox-group-item+.ant-checkbox-group-item{margin-left:6px}.ant-checkbox+span:empty{display:none}.ant-collapse{margin:0;background-color:#fafafa;border:1px solid #d9d9d9;border-bottom:0;border-radius:2px}.ant-collapse-item:last-child>.ant-collapse-content,.ant-collapse>.ant-collapse-item:last-child,.ant-collapse>.ant-collapse-item:last-child>.ant-collapse-header{border-radius:0 0 2px 2px}.ant-collapse>.ant-collapse-item{border-bottom:1px solid #d9d9d9}.ant-collapse>.ant-collapse-item>.ant-collapse-header{position:relative;display:flex;flex-wrap:nowrap;align-items:flex-start;padding:8px;color:rgba(0,0,0,.85);line-height:1.66667;cursor:pointer;transition:all .3s,visibility 0s}.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow{display:inline-block;margin-right:8px;font-size:12px;vertical-align:-1px}.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow svg{transition:transform .24s}.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-extra{margin-left:auto}.ant-collapse>.ant-collapse-item>.ant-collapse-header:focus{outline:0}.ant-collapse>.ant-collapse-item .ant-collapse-header-collapsible-only{cursor:default}.ant-collapse>.ant-collapse-item .ant-collapse-header-collapsible-only .ant-collapse-header-text{cursor:pointer}.ant-collapse>.ant-collapse-item.ant-collapse-no-arrow>.ant-collapse-header{padding-left:8px}.ant-collapse-icon-position-right>.ant-collapse-item>.ant-collapse-header{position:relative;padding:8px 40px 8px 8px}.ant-collapse-icon-position-right>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow{position:absolute;top:50%;right:8px;left:auto;margin:0;transform:translateY(-50%)}.ant-collapse-content{color:rgba(0,0,0,.85);background-color:#fff;border-top:1px solid #d9d9d9}.ant-collapse-borderless,.ant-descriptions-bordered .ant-descriptions-item-label,.ant-input-group-addon{background-color:#fafafa}.ant-collapse-borderless>.ant-collapse-item>.ant-collapse-content,.ant-collapse-ghost>.ant-collapse-item>.ant-collapse-content{border-top:0;background-color:transparent}.ant-collapse-content>.ant-collapse-content-box{padding:8px 16px}.ant-collapse-content-hidden{display:none}nz-collapse,nz-collapse-panel,nz-comment,nz-comment-content{display:block}.ant-collapse-borderless{border:0}.ant-collapse-borderless>.ant-collapse-item{border-bottom:1px solid #d9d9d9}.ant-collapse-borderless>.ant-collapse-item:last-child,.ant-collapse-ghost>.ant-collapse-item{border-bottom:0}.ant-collapse-borderless>.ant-collapse-item:last-child,.ant-collapse-borderless>.ant-collapse-item:last-child .ant-collapse-header{border-radius:0}.ant-collapse-borderless>.ant-collapse-item>.ant-collapse-content>.ant-collapse-content-box{padding-top:4px}.ant-collapse-ghost{background-color:transparent;border:0}.ant-collapse-ghost>.ant-collapse-item>.ant-collapse-content>.ant-collapse-content-box{padding-top:12px;padding-bottom:12px}.ant-collapse .ant-collapse-item-disabled>.ant-collapse-header,.ant-collapse .ant-collapse-item-disabled>.ant-collapse-header>.arrow{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-collapse-rtl .ant-collapse>.ant-collapse-item>.ant-collapse-header{padding:8px 40px 8px 8px}.ant-collapse-rtl.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow{margin-right:0;margin-left:8px}.ant-collapse-rtl.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow svg{transform:rotate(180deg)}.ant-collapse-rtl.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-extra{margin-right:auto;margin-left:0}.ant-collapse-rtl.ant-collapse>.ant-collapse-item.ant-collapse-no-arrow>.ant-collapse-header{padding-right:8px;padding-left:0}.ant-comment{position:relative;background-color:inherit}.ant-comment-inner{display:flex;padding:8px 0}.ant-comment-avatar{position:relative;flex-shrink:0;margin-right:8px;cursor:pointer}.ant-comment-avatar img{width:32px;height:32px;border-radius:50%}.ant-comment-content{position:relative;flex:1 1 auto;min-width:1px;font-size:12px;word-wrap:break-word}.ant-comment-content-author{display:flex;flex-wrap:wrap;justify-content:flex-start;margin-bottom:0;font-size:12px}.ant-comment-content-author>a,.ant-comment-content-author>span{padding-right:4px;font-size:12px;line-height:18px}.ant-comment-content-author-name{font-size:12px;transition:color .3s}.ant-comment-content-author-time{color:#ccc;white-space:nowrap;cursor:auto}.ant-comment-content-detail p{margin-bottom:0;white-space:pre-wrap}.ant-comment-actions{margin-top:4px;margin-bottom:0;padding-left:0}.ant-comment-actions>li{display:inline-block;color:rgba(0,0,0,.45)}.ant-comment-actions>li>span{margin-right:10px;color:rgba(0,0,0,.45);font-size:12px;cursor:pointer;transition:color .3s;user-select:none}.ant-comment-actions>li>span:hover{color:#595959}.ant-comment-nested{margin-left:44px}.ant-comment-rtl .ant-comment-avatar{margin-right:0;margin-left:12px}.ant-comment-rtl .ant-comment-content-author>a,.ant-comment-rtl .ant-comment-content-author>span{padding-right:0;padding-left:8px}.ant-comment-rtl .ant-comment-actions{padding-right:0}.ant-comment-rtl .ant-comment-actions>li>span{margin-right:0;margin-left:10px}.ant-comment-rtl .ant-comment-nested{margin-right:44px;margin-left:0}.ant-picker,.ant-picker-input{display:inline-flex;position:relative}.ant-picker-status-error.ant-picker,.ant-picker-status-error.ant-picker:not([disabled]):hover{background-color:#fff;border-color:#ff4d4f}.ant-picker-status-error.ant-picker-focused,.ant-picker-status-error.ant-picker:focus{border-color:#ff7875;box-shadow:0 0 0 2px rgba(255,77,79,.2);border-right-width:1px;outline:0}.ant-picker-status-warning.ant-picker,.ant-picker-status-warning.ant-picker:not([disabled]):hover{background-color:#fff;border-color:#faad14}.ant-picker-status-warning.ant-picker-focused,.ant-picker-status-warning.ant-picker:focus{border-color:#ffc53d;box-shadow:0 0 0 2px rgba(250,173,20,.2);border-right-width:1px;outline:0}.ant-picker{box-sizing:border-box;margin:0;color:rgba(0,0,0,.85);font-size:12px;font-variant:tabular-nums;line-height:1.66667;list-style:none;font-feature-settings:tnum;padding:3px 7px;align-items:center;background:#fff;border:1px solid #d9d9d9;border-radius:2px;transition:border .3s,box-shadow .3s}.ant-picker-focused,.ant-picker:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-picker-focused,.ant-input-rtl .ant-picker:hover{border-right-width:0;border-left-width:1px!important}.ant-picker-focused{border-color:#40a9ff;box-shadow:0 0 0 2px rgba(24,144,255,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-picker-focused{border-right-width:0;border-left-width:1px!important}.ant-picker.ant-picker-disabled{background:#f5f5f5;border-color:#d9d9d9;cursor:not-allowed}.ant-picker.ant-picker-disabled .ant-picker-suffix{color:rgba(0,0,0,.25)}.ant-picker.ant-picker-borderless{background-color:transparent!important;border-color:transparent!important;box-shadow:none!important}.ant-picker-input{align-items:center;width:100%}.ant-picker-input>input{position:relative;display:inline-block;width:100%;color:rgba(0,0,0,.85);font-size:12px;line-height:1.66667;border-radius:2px;transition:all .3s;flex:auto;min-width:1px;height:auto;padding:0;background:0 0;border:0}.ant-picker-input>input::-moz-placeholder{opacity:1}.ant-picker-input>input::placeholder{color:#bfbfbf;user-select:none}.ant-picker-input>input-disabled,.ant-picker-input>input[disabled]{background-color:#f5f5f5;cursor:not-allowed;color:rgba(0,0,0,.25);pointer-events:none}.ant-picker-input>input:placeholder-shown{text-overflow:ellipsis}.ant-picker-input>input:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-picker-input>input:hover{border-right-width:0;border-left-width:1px!important}.ant-picker-input>input-focused,.ant-picker-input>input:focus{border-color:#40a9ff;box-shadow:0 0 0 2px rgba(24,144,255,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-picker-input>input-focused,.ant-input-rtl .ant-picker-input>input:focus{border-right-width:0;border-left-width:1px!important}.ant-picker-input>input-disabled:hover,.ant-picker-input>input[disabled]:hover{border-color:#d9d9d9;border-right-width:1px}.ant-picker-input>input-disabled{border-color:#d9d9d9;box-shadow:none;opacity:1}.ant-picker-input>input[disabled]{border-color:#d9d9d9;box-shadow:none;opacity:1}.ant-picker-input>input-borderless,.ant-picker-input>input-borderless-disabled,.ant-picker-input>input-borderless-focused,.ant-picker-input>input-borderless:focus,.ant-picker-input>input-borderless:hover,.ant-picker-input>input-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-picker-input>input{max-width:100%;height:auto;min-height:28px;line-height:1.66667;vertical-align:bottom;transition:all .3s,height 0s}.ant-picker-input>input-lg{padding:3.4px 11px;font-size:14px}.ant-picker-input>input-sm{padding:0 7px}.ant-picker-input>input-stepperless[type=number]{-moz-appearance:textfield}.ant-picker-input>input-stepperless[type=number] ::-webkit-outer-spin-button,.ant-picker-input>input-stepperless[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ant-picker-input>input:focus{box-shadow:none}.ant-picker-input>input[disabled]{background:0 0}.ant-picker-input:hover .ant-picker-clear{opacity:1}.ant-picker-input-placeholder>input{color:#bfbfbf}.ant-picker-large{padding:3.5px 11px}.ant-picker-large .ant-picker-input>input{font-size:14px}.ant-picker-small{padding:0 7px}.ant-picker-suffix{display:flex;flex:none;align-self:center;margin-left:2px;color:rgba(0,0,0,.25);line-height:1;pointer-events:none}.ant-picker-suffix>*{vertical-align:top}.ant-picker-suffix>:not(:last-child){margin-right:8px}.ant-picker-clear{position:absolute;top:50%;right:0;color:rgba(0,0,0,.25);line-height:1;background:#fff;transform:translateY(-50%);cursor:pointer;opacity:0;transition:opacity .3s,color .3s}.ant-picker-range .ant-picker-clear,.ant-picker-range.ant-picker-small .ant-picker-clear{right:7px}.ant-picker-clear>*{vertical-align:top}.ant-picker-clear:hover{color:rgba(0,0,0,.45)}.ant-picker-separator{position:relative;display:inline-block;width:1em;height:14px;color:rgba(0,0,0,.25);font-size:14px;vertical-align:top;cursor:default}.ant-picker-focused .ant-picker-separator{color:rgba(0,0,0,.45)}.ant-picker-disabled .ant-picker-range-separator .ant-picker-separator{cursor:not-allowed}.ant-picker-range{position:relative;display:inline-flex}.ant-picker-range:hover .ant-picker-clear{opacity:1}.ant-picker-range .ant-picker-active-bar{bottom:-1px;height:2px;margin-left:7px;background:#1890ff;opacity:0;transition:all .3s ease-out;pointer-events:none}.ant-picker-range.ant-picker-focused .ant-picker-active-bar{opacity:1}.ant-picker-range-separator{align-items:center;padding:0 4px;line-height:1}.ant-picker-range.ant-picker-small .ant-picker-active-bar{margin-left:7px}.ant-picker-dropdown{box-sizing:border-box;margin:0;padding:0;color:rgba(0,0,0,.85);font-size:12px;font-variant:tabular-nums;line-height:1.66667;list-style:none;font-feature-settings:tnum;position:absolute;z-index:1050}.ant-picker-dropdown-hidden{display:none}.ant-picker-dropdown-placement-bottomLeft .ant-picker-range-arrow{top:2.59px;display:block;transform:rotate(-135deg) translateY(1px)}.ant-picker-dropdown-placement-topLeft .ant-picker-range-arrow{bottom:2.59px;display:block;transform:rotate(45deg)}.ant-picker-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-picker-dropdown-placement-topLeft,.ant-picker-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-picker-dropdown-placement-topRight,.ant-picker-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-picker-dropdown-placement-topLeft,.ant-picker-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-picker-dropdown-placement-topRight{animation-name:antSlideDownIn}.ant-dropdown.ant-slide-down-appear.ant-slide-down-appear-active.ant-dropdown-placement-bottom,.ant-dropdown.ant-slide-down-appear.ant-slide-down-appear-active.ant-dropdown-placement-bottomLeft,.ant-dropdown.ant-slide-down-appear.ant-slide-down-appear-active.ant-dropdown-placement-bottomRight,.ant-dropdown.ant-slide-down-enter.ant-slide-down-enter-active.ant-dropdown-placement-bottom,.ant-dropdown.ant-slide-down-enter.ant-slide-down-enter-active.ant-dropdown-placement-bottomLeft,.ant-dropdown.ant-slide-down-enter.ant-slide-down-enter-active.ant-dropdown-placement-bottomRight,.ant-picker-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-picker-dropdown-placement-bottomLeft,.ant-picker-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-picker-dropdown-placement-bottomRight,.ant-picker-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-picker-dropdown-placement-bottomLeft,.ant-picker-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-picker-dropdown-placement-bottomRight,.ant-select-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-select-dropdown-placement-bottomLeft,.ant-select-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-select-dropdown-placement-bottomLeft{animation-name:antSlideUpIn}.ant-picker-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-picker-dropdown-placement-topLeft,.ant-picker-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-picker-dropdown-placement-topRight{animation-name:antSlideDownOut}.ant-picker-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-picker-dropdown-placement-bottomLeft,.ant-picker-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-picker-dropdown-placement-bottomRight{animation-name:antSlideUpOut}.ant-picker-dropdown-range{padding:7.54px 0}.ant-picker-dropdown-range-hidden{display:none}.ant-picker-dropdown .ant-picker-panel>.ant-picker-time-panel{padding-top:2px}.ant-picker-ranges{margin-bottom:0;padding:2px 8px;overflow:hidden;line-height:28px;text-align:left;list-style:none}.ant-picker-ranges>li{display:inline-block}.ant-picker-ranges .ant-picker-preset>.ant-tag-blue{color:#1890ff;background:#e6f7ff;border-color:#91d5ff;cursor:pointer}.ant-dropdown-arrow,.ant-picker-range-arrow{background:linear-gradient(135deg,transparent 40%,#fff 40%);border-radius:0 0 2px}.ant-picker-ranges .ant-picker-ok{float:right;margin-left:4px}.ant-picker-range-wrapper{display:flex}.ant-picker-range-arrow{position:absolute;z-index:1;display:none;width:11.31px;height:11.31px;margin-left:10.5px;box-shadow:2px 2px 6px -2px rgba(0,0,0,.1);transition:left .3s ease-out;pointer-events:none}.ant-picker-range-arrow::before{position:absolute;top:-11.31px;left:-11.31px;width:33.94px;height:33.94px;background:-10px -10px no-repeat #fff;content:'';clip-path:path('M 9.849242404917499 24.091883092036785 A 5 5 0 0 1 13.384776310850237 22.627416997969522 L 20.627416997969522 22.627416997969522 A 2 2 0 0 0 22.627416997969522 20.627416997969522 L 22.627416997969522 13.384776310850237 A 5 5 0 0 1 24.091883092036785 9.849242404917499 L 23.091883092036785 9.849242404917499 L 9.849242404917499 23.091883092036785 Z')}.ant-picker-panel-container{overflow:hidden;vertical-align:top;background:#fff;border-radius:2px;box-shadow:0 3px 6px -4px rgba(0,0,0,.12),0 6px 16px 0 rgba(0,0,0,.08),0 9px 28px 8px rgba(0,0,0,.05);transition:margin .3s}.ant-picker-panel-container .ant-picker-panels{display:inline-flex;flex-wrap:nowrap;direction:ltr}.ant-picker-panel-container .ant-picker-panel{vertical-align:top;background:0 0;border-width:0 0 1px;border-radius:0}.ant-picker-panel-container .ant-picker-panel .ant-picker-content,.ant-picker-panel-container .ant-picker-panel table{text-align:center}.ant-picker-panel-container .ant-picker-panel-focused{border-color:#f0f0f0}.ant-picker-panel{display:inline-flex;flex-direction:column;text-align:center;background:#fff;border:1px solid #f0f0f0;border-radius:2px;outline:0}.ant-picker-panel-focused{border-color:#1890ff}.ant-picker-date-panel,.ant-picker-decade-panel,.ant-picker-month-panel,.ant-picker-quarter-panel,.ant-picker-time-panel,.ant-picker-week-panel,.ant-picker-year-panel{display:flex;flex-direction:column;width:244px}.ant-picker-header{display:flex;padding:0 4px;color:rgba(0,0,0,.85);border-bottom:1px solid #f0f0f0}.ant-picker-header>*{flex:none}.ant-picker-header button{padding:0;color:rgba(0,0,0,.25);line-height:32px;background:0 0;border:0;cursor:pointer;transition:color .3s}.ant-picker-header>button{min-width:1.6em;font-size:12px}.ant-picker-header>button:hover{color:rgba(0,0,0,.85)}.ant-picker-header-view{flex:auto;font-weight:500;line-height:32px}.ant-picker-header-view button{color:inherit;font-weight:inherit}.ant-picker-header-view button:not(:first-child){margin-left:4px}.ant-picker-header-view button:hover{color:#1890ff}.ant-picker-next-icon,.ant-picker-prev-icon,.ant-picker-super-next-icon,.ant-picker-super-prev-icon{position:relative;display:inline-block;width:7px;height:7px}.ant-picker-next-icon::before,.ant-picker-prev-icon::before,.ant-picker-super-next-icon::before,.ant-picker-super-prev-icon::before{position:absolute;top:0;left:0;display:inline-block;width:7px;height:7px;border:0 solid currentcolor;border-width:1.5px 0 0 1.5px;content:''}.ant-picker-super-next-icon::after,.ant-picker-super-prev-icon::after{position:absolute;top:4px;left:4px;display:inline-block;width:7px;height:7px;border:0 solid currentcolor;border-width:1.5px 0 0 1.5px;content:''}.ant-picker-prev-icon,.ant-picker-super-prev-icon{transform:rotate(-45deg)}.ant-picker-next-icon,.ant-picker-super-next-icon{transform:rotate(135deg)}.ant-picker-content{width:100%;table-layout:fixed;border-collapse:collapse}.ant-picker-content td,.ant-picker-content th{position:relative;min-width:24px;font-weight:400}.ant-picker-content th{height:30px;color:rgba(0,0,0,.85);line-height:30px}.ant-picker-cell{padding:3px 0;color:rgba(0,0,0,.25);cursor:pointer}.ant-picker-cell-in-view{color:rgba(0,0,0,.85)}.ant-picker-cell::before{position:absolute;top:50%;right:0;left:0;z-index:1;height:22px;transform:translateY(-50%);transition:all .3s;content:''}.ant-picker-cell:hover:not(.ant-picker-cell-in-view) .ant-picker-cell-inner,.ant-picker-cell:hover:not(.ant-picker-cell-selected):not(.ant-picker-cell-range-start):not(.ant-picker-cell-range-end):not(.ant-picker-cell-range-hover-start):not(.ant-picker-cell-range-hover-end) .ant-picker-cell-inner{background:#f5f5f5}.ant-picker-cell-in-view.ant-picker-cell-today .ant-picker-cell-inner::before{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;border:1px solid #1890ff;border-radius:2px;content:''}.ant-picker-cell-in-view.ant-picker-cell-in-range{position:relative}.ant-picker-cell-in-view.ant-picker-cell-in-range::before{background:#e6f7ff}.ant-picker-cell-in-view.ant-picker-cell-range-end .ant-picker-cell-inner,.ant-picker-cell-in-view.ant-picker-cell-range-start .ant-picker-cell-inner,.ant-picker-cell-in-view.ant-picker-cell-selected .ant-picker-cell-inner{color:#fff;background:#1890ff}.ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single)::before,.ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single)::before{background:#e6f7ff}.ant-picker-cell-in-view.ant-picker-cell-range-start::before{left:50%}.ant-picker-cell-in-view.ant-picker-cell-range-end::before{right:50%}.ant-picker-cell-in-view.ant-picker-cell-range-hover-end.ant-picker-cell-range-end-single::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-end.ant-picker-cell-range-start.ant-picker-cell-range-end.ant-picker-cell-range-start-near-hover::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-end:not(.ant-picker-cell-in-range):not(.ant-picker-cell-range-start):not(.ant-picker-cell-range-end)::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-start.ant-picker-cell-range-start-single::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-start.ant-picker-cell-range-start.ant-picker-cell-range-end.ant-picker-cell-range-end-near-hover::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-start:not(.ant-picker-cell-in-range):not(.ant-picker-cell-range-start):not(.ant-picker-cell-range-end)::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover:not(.ant-picker-cell-in-range)::after{position:absolute;top:50%;z-index:0;height:24px;border-top:1px dashed #7ec1ff;border-bottom:1px dashed #7ec1ff;transform:translateY(-50%);transition:all .3s;content:''}.ant-picker-cell-range-hover-end::after,.ant-picker-cell-range-hover-start::after,.ant-picker-cell-range-hover::after{right:0;left:2px}.ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover::before,.ant-picker-cell-in-view.ant-picker-cell-range-end.ant-picker-cell-range-hover::before,.ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single).ant-picker-cell-range-hover-end::before,.ant-picker-cell-in-view.ant-picker-cell-range-start.ant-picker-cell-range-hover::before,.ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single).ant-picker-cell-range-hover-start::before,.ant-picker-panel>:not(.ant-picker-date-panel) .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end::before,.ant-picker-panel>:not(.ant-picker-date-panel) .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start::before{background:#cbe6ff}.ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single):not(.ant-picker-cell-range-end) .ant-picker-cell-inner{border-radius:2px 0 0 2px}.ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single):not(.ant-picker-cell-range-start) .ant-picker-cell-inner{border-radius:0 2px 2px 0}.ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end .ant-picker-cell-inner::after,.ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start .ant-picker-cell-inner::after{position:absolute;top:0;bottom:0;z-index:-1;background:#cbe6ff;transition:all .3s;content:''}.ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start .ant-picker-cell-inner::after{right:-6px;left:0}.ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end .ant-picker-cell-inner::after{right:0;left:-6px}.ant-picker-cell-range-hover.ant-picker-cell-range-start::after{right:50%}.ant-picker-cell-range-hover.ant-picker-cell-range-end::after{left:50%}.ant-picker-cell-in-view.ant-picker-cell-range-hover-edge-start:not(.ant-picker-cell-range-hover-edge-start-near-range)::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-start::after,.ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover-edge-start.ant-picker-cell-range-hover-edge-start-near-range::after,tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover-end:first-child::after,tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover:first-child::after{left:6px;border-left:1px dashed #7ec1ff;border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-picker-cell-in-view.ant-picker-cell-end.ant-picker-cell-range-hover-edge-end.ant-picker-cell-range-hover-edge-end-near-range::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-edge-end:not(.ant-picker-cell-range-hover-edge-end-near-range)::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-end::after,tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover-start:last-child::after,tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover:last-child::after{right:6px;border-right:1px dashed #7ec1ff;border-top-right-radius:2px;border-bottom-right-radius:2px}.ant-picker-cell-disabled{color:rgba(0,0,0,.25);pointer-events:none}.ant-picker-cell-disabled .ant-picker-cell-inner{background:0 0}.ant-picker-cell-disabled::before{background:rgba(0,0,0,.04)}.ant-picker-cell-disabled.ant-picker-cell-today .ant-picker-cell-inner::before{border-color:rgba(0,0,0,.25)}.ant-picker-decade-panel .ant-picker-content,.ant-picker-month-panel .ant-picker-content,.ant-picker-quarter-panel .ant-picker-content,.ant-picker-year-panel .ant-picker-content{height:192px}.ant-picker-decade-panel .ant-picker-cell-inner,.ant-picker-month-panel .ant-picker-cell-inner,.ant-picker-quarter-panel .ant-picker-cell-inner,.ant-picker-year-panel .ant-picker-cell-inner{padding:0 4px}.ant-picker-quarter-panel .ant-picker-content{height:56px}.ant-picker-footer{width:min-content;min-width:100%;line-height:30px;text-align:center;border-bottom:1px solid transparent}.ant-picker-panel .ant-picker-footer{border-top:1px solid #f0f0f0}.ant-picker-footer-extra{padding:0 8px;line-height:30px;text-align:left}.ant-picker-footer-extra:not(:last-child){border-bottom:1px solid #f0f0f0}.ant-picker-now{text-align:left}.ant-picker-today-btn{color:#1890ff}.ant-picker-today-btn:hover{color:#40a9ff}.ant-picker-today-btn:active{color:#096dd9}.ant-picker-today-btn.ant-picker-today-btn-disabled{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-picker-decade-panel .ant-picker-cell-inner{padding:0 2px}.ant-picker-decade-panel .ant-picker-cell::before{display:none}.ant-picker-month-panel .ant-picker-body,.ant-picker-quarter-panel .ant-picker-body,.ant-picker-year-panel .ant-picker-body{padding:0 4px}.ant-picker-date-panel .ant-picker-body,.ant-picker-week-panel .ant-picker-body{padding:4px 8px}.ant-picker-month-panel .ant-picker-cell-inner,.ant-picker-quarter-panel .ant-picker-cell-inner,.ant-picker-year-panel .ant-picker-cell-inner{width:60px}.ant-picker-month-panel .ant-picker-cell-range-hover-start::after,.ant-picker-quarter-panel .ant-picker-cell-range-hover-start::after,.ant-picker-year-panel .ant-picker-cell-range-hover-start::after{left:9.33px;border-left:1px dashed #7ec1ff;border-radius:2px 0 0 2px}.ant-picker-month-panel .ant-picker-cell-range-hover-end::after,.ant-picker-panel-rtl .ant-picker-month-panel .ant-picker-cell-range-hover-start::after,.ant-picker-panel-rtl .ant-picker-quarter-panel .ant-picker-cell-range-hover-start::after,.ant-picker-panel-rtl .ant-picker-year-panel .ant-picker-cell-range-hover-start::after,.ant-picker-quarter-panel .ant-picker-cell-range-hover-end::after,.ant-picker-year-panel .ant-picker-cell-range-hover-end::after{right:9.33px;border-right:1px dashed #7ec1ff;border-radius:0 2px 2px 0}.ant-picker-panel-rtl .ant-picker-month-panel .ant-picker-cell-range-hover-end::after,.ant-picker-panel-rtl .ant-picker-quarter-panel .ant-picker-cell-range-hover-end::after,.ant-picker-panel-rtl .ant-picker-year-panel .ant-picker-cell-range-hover-end::after{left:9.33px;border-left:1px dashed #7ec1ff;border-radius:2px 0 0 2px}.ant-picker-week-panel .ant-picker-cell .ant-picker-cell-inner,.ant-picker-week-panel .ant-picker-cell-selected .ant-picker-cell-inner,.ant-picker-week-panel .ant-picker-cell:hover .ant-picker-cell-inner{background:0 0!important}.ant-picker-week-panel-row td{transition:background .3s}.ant-picker-week-panel-row:hover td{background:#f5f5f5}.ant-picker-week-panel-row-selected td,.ant-picker-week-panel-row-selected:hover td{background:#1890ff}.ant-picker-week-panel-row-selected td.ant-picker-cell-week,.ant-picker-week-panel-row-selected:hover td.ant-picker-cell-week{color:rgba(255,255,255,.5)}.ant-picker-week-panel-row-selected td.ant-picker-cell-today .ant-picker-cell-inner::before,.ant-picker-week-panel-row-selected:hover td.ant-picker-cell-today .ant-picker-cell-inner::before{border-color:#fff}.ant-picker-datetime-panel .ant-picker-time-panel,.ant-picker-time-panel-column:not(:first-child){border-left:1px solid #f0f0f0}.ant-picker-week-panel-row-selected td .ant-picker-cell-inner,.ant-picker-week-panel-row-selected:hover td .ant-picker-cell-inner{color:#fff}.ant-picker-date-panel .ant-picker-content{width:224px}.ant-picker-date-panel .ant-picker-content th{width:32px}.ant-picker-datetime-panel{display:flex}.ant-picker-datetime-panel .ant-picker-date-panel,.ant-picker-datetime-panel .ant-picker-time-panel{transition:opacity .3s}.ant-picker-datetime-panel-active .ant-picker-date-panel,.ant-picker-datetime-panel-active .ant-picker-time-panel{opacity:.3}.ant-picker-datetime-panel-active .ant-picker-date-panel-active,.ant-picker-datetime-panel-active .ant-picker-time-panel-active{opacity:1}.ant-picker-time-panel{width:auto;min-width:auto}.ant-picker-time-panel .ant-picker-content{display:flex;flex:auto;height:224px}.ant-picker-time-panel-column{flex:1 0 auto;width:56px;margin:0;padding:0;overflow-y:hidden;text-align:left;list-style:none;transition:background .3s}.ant-picker-time-panel-column::after{display:block;height:200px;content:''}.ant-picker-datetime-panel .ant-picker-time-panel-column::after{height:202px}.ant-picker-time-panel-column-active{background:rgba(230,247,255,.2)}.ant-picker-time-panel-column:hover{overflow-y:auto}.ant-picker-time-panel-column>li{margin:0;padding:0}.ant-picker-time-panel-column>li.ant-picker-time-panel-cell .ant-picker-time-panel-cell-inner{display:block;width:100%;height:24px;margin:0;padding:0 0 0 14px;color:rgba(0,0,0,.85);line-height:24px;border-radius:0;cursor:pointer;transition:background .3s}.ant-picker-time-panel-column>li.ant-picker-time-panel-cell .ant-picker-time-panel-cell-inner:hover{background:#f5f5f5}.ant-menu-item:active,.ant-menu-submenu-title:active,.ant-picker-time-panel-column>li.ant-picker-time-panel-cell-selected .ant-picker-time-panel-cell-inner{background:#e6f7ff}.ant-picker-time-panel-column>li.ant-picker-time-panel-cell-disabled .ant-picker-time-panel-cell-inner{color:rgba(0,0,0,.25);background:0 0;cursor:not-allowed}:root .ant-picker-range-wrapper .ant-picker-month-panel .ant-picker-cell,:root .ant-picker-range-wrapper .ant-picker-year-panel .ant-picker-cell,_:-ms-fullscreen .ant-picker-range-wrapper .ant-picker-month-panel .ant-picker-cell,_:-ms-fullscreen .ant-picker-range-wrapper .ant-picker-year-panel .ant-picker-cell{padding:21px 0}.ant-picker-rtl .ant-picker-suffix{margin-right:2px;margin-left:0}.ant-picker-rtl .ant-picker-clear{right:auto;left:0}.ant-picker-rtl .ant-picker-separator{transform:rotate(180deg)}.ant-picker-panel-rtl .ant-picker-header-view button:not(:first-child){margin-right:4px;margin-left:0}.ant-picker-rtl.ant-picker-range .ant-picker-clear{right:auto;left:7px}.ant-picker-rtl.ant-picker-range .ant-picker-active-bar{margin-right:7px;margin-left:0}.ant-picker-rtl.ant-picker-range.ant-picker-small .ant-picker-active-bar{margin-right:7px}.ant-picker-dropdown-rtl .ant-picker-ranges{text-align:right}.ant-picker-dropdown-rtl .ant-picker-ranges .ant-picker-ok{float:left;margin-right:4px;margin-left:0}.ant-picker-panel-rtl .ant-picker-prev-icon,.ant-picker-panel-rtl .ant-picker-super-prev-icon{transform:rotate(135deg)}.ant-picker-panel-rtl .ant-picker-next-icon,.ant-picker-panel-rtl .ant-picker-super-next-icon{transform:rotate(-45deg)}.ant-picker-cell .ant-picker-cell-inner{position:relative;z-index:2;display:inline-block;min-width:22px;height:22px;line-height:22px;border-radius:2px;transition:background .3s,border .3s}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-start::before{right:50%;left:0}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-end::before{right:0;left:50%}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-start.ant-picker-cell-range-end::before{right:50%;left:50%}.ant-picker-panel-rtl .ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start .ant-picker-cell-inner::after{right:0;left:-6px}.ant-picker-panel-rtl .ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end .ant-picker-cell-inner::after{right:-6px;left:0}.ant-picker-panel-rtl .ant-picker-cell-range-hover.ant-picker-cell-range-start::after{right:0;left:50%}.ant-picker-panel-rtl .ant-picker-cell-range-hover.ant-picker-cell-range-end::after{right:50%;left:0}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single):not(.ant-picker-cell-range-end) .ant-picker-cell-inner{border-radius:0 2px 2px 0}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single):not(.ant-picker-cell-range-start) .ant-picker-cell-inner{border-radius:2px 0 0 2px}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-hover-edge-start:not(.ant-picker-cell-range-hover-edge-start-near-range)::after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-hover-start::after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover-edge-start.ant-picker-cell-range-hover-edge-start-near-range::after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover:not(.ant-picker-cell-selected):first-child::after{right:6px;left:0;border-right:1px dashed #7ec1ff;border-left:none;border-radius:0 2px 2px 0}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-end.ant-picker-cell-range-hover-edge-end.ant-picker-cell-range-hover-edge-end-near-range::after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-hover-edge-end:not(.ant-picker-cell-range-hover-edge-end-near-range)::after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-hover-end::after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover:not(.ant-picker-cell-selected):last-child::after{right:0;left:6px;border-right:none;border-left:1px dashed #7ec1ff;border-radius:2px 0 0 2px}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-end.ant-picker-cell-range-hover-start.ant-picker-cell-range-hover-edge-end:not(.ant-picker-cell-range-hover)::after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover-edge-start:not(.ant-picker-cell-range-hover)::after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover-end.ant-picker-cell-range-hover-edge-start:not(.ant-picker-cell-range-hover)::after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-end.ant-picker-cell-range-hover.ant-picker-cell-range-hover-edge-end:first-child::after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover-end:first-child::after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover-start:last-child::after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover.ant-picker-cell-range-hover-edge-start:last-child::after{right:6px;left:6px;border-right:1px dashed #7ec1ff;border-left:1px dashed #7ec1ff;border-radius:2px}.ant-picker-dropdown-rtl .ant-picker-footer-extra{text-align:right}.ant-picker-panel-rtl .ant-picker-time-panel{direction:ltr}.ant-descriptions-rtl,.ant-divider-rtl,.ant-drawer-rtl,.ant-dropdown-menu-submenu-rtl .ant-dropdown-menu-item-group-title,.ant-dropdown-menu.ant-dropdown-menu-rtl,.ant-dropdown-rtl,.ant-dropdown-rtl .ant-dropdown-menu-item-group-title,.ant-empty-rtl,.ant-input-affix-wrapper-rtl,.ant-input-group-rtl,.ant-input-group-wrapper-rtl,.ant-input-number-affix-wrapper-rtl,.ant-input-number-rtl,.ant-input-rtl,.ant-input-search-rtl,.ant-input-textarea-rtl,.ant-row-rtl{direction:rtl}.ant-picker-inline{border:none;padding:0}.ant-picker-inline .ant-picker-range-arrow{display:none!important}.ant-picker-inline .ant-picker-dropdown{z-index:auto}.ant-picker-dropdown{top:unset;left:unset}.ant-picker-panel-container.ant-picker-week-number .ant-picker-date-panel .ant-picker-content{width:100%}.ant-picker-panel-container.ant-picker-week-number .ant-picker-date-panel .ant-picker-content th{width:inherit}.ant-picker-range-arrow{margin-right:10.5px}.ant-descriptions-header{display:flex;align-items:center;margin-bottom:8px}.ant-descriptions-title{flex:auto;overflow:hidden;color:rgba(0,0,0,.85);font-weight:700;font-size:14px;line-height:1.66667;white-space:nowrap;text-overflow:ellipsis}.ant-descriptions-extra,.ant-descriptions-item-content,.ant-descriptions-item-label,.ant-divider{font-size:12px;color:rgba(0,0,0,.85)}.ant-descriptions-extra{margin-left:auto}.ant-descriptions-view{width:100%;border-radius:2px}.ant-descriptions-view table{width:100%;table-layout:fixed}.ant-descriptions-row>td,.ant-descriptions-row>th{padding-bottom:4px}.ant-descriptions-row:last-child{border-bottom:none}.ant-descriptions-item-label{font-weight:400;line-height:1.66667;text-align:start}.ant-descriptions-item-label::after{content:':';position:relative;top:-.5px;margin:0 8px 0 2px}.ant-descriptions-item-label.ant-descriptions-item-no-colon::after,.ant-dropdown::before{content:' '}.ant-descriptions-item-no-label::after{margin:0;content:''}.ant-descriptions-item-content{display:table-cell;flex:1;line-height:1.66667;word-break:break-word;overflow-wrap:break-word}.ant-descriptions-item{padding-bottom:0;vertical-align:top}.ant-descriptions-item-container{display:flex}.ant-descriptions-item-container .ant-descriptions-item-content,.ant-descriptions-item-container .ant-descriptions-item-label{display:inline-flex;align-items:baseline}.ant-descriptions-middle .ant-descriptions-row>td,.ant-descriptions-middle .ant-descriptions-row>th{padding-bottom:8px}.ant-descriptions-small .ant-descriptions-row>td,.ant-descriptions-small .ant-descriptions-row>th{padding-bottom:4px}.ant-descriptions-bordered .ant-descriptions-view{border:1px solid #f0f0f0}.ant-descriptions-bordered .ant-descriptions-view>table{table-layout:auto;border-collapse:collapse}.ant-descriptions-bordered .ant-descriptions-item-content,.ant-descriptions-bordered .ant-descriptions-item-label{padding:12px 16px;border-right:1px solid #f0f0f0}.ant-descriptions-bordered .ant-descriptions-item-content:last-child,.ant-descriptions-bordered .ant-descriptions-item-label:last-child{border-right:none}.ant-descriptions-bordered .ant-descriptions-item-label::after{display:none}.ant-descriptions-bordered .ant-descriptions-row{border-bottom:1px solid #f0f0f0}.ant-descriptions-bordered .ant-descriptions-row:last-child{border-bottom:none}.ant-descriptions-bordered.ant-descriptions-middle .ant-descriptions-item-content,.ant-descriptions-bordered.ant-descriptions-middle .ant-descriptions-item-label{padding:8px 16px}.ant-descriptions-bordered.ant-descriptions-small .ant-descriptions-item-content,.ant-descriptions-bordered.ant-descriptions-small .ant-descriptions-item-label{padding:4px 8px}.ant-descriptions-rtl .ant-descriptions-item-label::after{margin:0 2px 0 8px}.ant-descriptions-rtl.ant-descriptions-bordered .ant-descriptions-item-content,.ant-descriptions-rtl.ant-descriptions-bordered .ant-descriptions-item-label{border-right:none;border-left:1px solid #f0f0f0}.ant-descriptions-rtl.ant-descriptions-bordered .ant-descriptions-item-content:last-child,.ant-descriptions-rtl.ant-descriptions-bordered .ant-descriptions-item-label:last-child{border-left:none}nz-descriptions{display:block}.ant-divider{box-sizing:border-box;margin:0;padding:0;font-variant:tabular-nums;line-height:1.66667;list-style:none;font-feature-settings:tnum;border-top:1px solid rgba(0,0,0,.06)}.ant-divider-vertical{position:relative;top:-.06em;display:inline-block;height:.9em;margin:0 8px;vertical-align:middle;border-top:0;border-left:1px solid rgba(0,0,0,.06)}.ant-divider-horizontal{display:flex;clear:both;width:100%;min-width:100%;margin:24px 0}.ant-divider-horizontal.ant-divider-with-text{display:flex;margin:16px 0;color:rgba(0,0,0,.85);font-weight:500;font-size:14px;white-space:nowrap;text-align:center;border-top:0;border-top-color:rgba(0,0,0,.06)}.ant-divider-horizontal.ant-divider-with-text::after,.ant-divider-horizontal.ant-divider-with-text::before{position:relative;top:50%;width:50%;border-top:1px solid transparent;border-top-color:inherit;border-bottom:0;transform:translateY(50%);content:''}.ant-divider-horizontal.ant-divider-with-text-left::before{top:50%;width:5%}.ant-divider-horizontal.ant-divider-with-text-left::after,.ant-divider-horizontal.ant-divider-with-text-right::before{top:50%;width:95%}.ant-divider-horizontal.ant-divider-with-text-right::after{top:50%;width:5%}.ant-divider-inner-text{display:inline-block;padding:0 1em}.ant-divider-dashed{background:0 0;border-color:rgba(0,0,0,.06);border-style:dashed;border-width:1px 0 0}.ant-divider-horizontal.ant-divider-with-text.ant-divider-dashed::after,.ant-divider-horizontal.ant-divider-with-text.ant-divider-dashed::before{border-style:dashed none none}.ant-divider-vertical.ant-divider-dashed{border-width:0 0 0 1px}.ant-divider-plain.ant-divider-with-text{color:rgba(0,0,0,.85);font-weight:400;font-size:12px}.ant-divider-horizontal.ant-divider-with-text-left.ant-divider-no-default-orientation-margin-left::before{width:0}.ant-divider-horizontal.ant-divider-with-text-left.ant-divider-no-default-orientation-margin-left::after,.ant-divider-horizontal.ant-divider-with-text-right.ant-divider-no-default-orientation-margin-right::before{width:100%}.ant-divider-horizontal.ant-divider-with-text-left.ant-divider-no-default-orientation-margin-left .ant-divider-inner-text{padding-left:0}.ant-divider-horizontal.ant-divider-with-text-right.ant-divider-no-default-orientation-margin-right::after{width:0}.ant-divider-horizontal.ant-divider-with-text-right.ant-divider-no-default-orientation-margin-right .ant-divider-inner-text{padding-right:0}.ant-divider-rtl.ant-divider-horizontal.ant-divider-with-text-left::before{width:95%}.ant-divider-rtl.ant-divider-horizontal.ant-divider-with-text-left::after,.ant-divider-rtl.ant-divider-horizontal.ant-divider-with-text-right::before{width:5%}.ant-divider-rtl.ant-divider-horizontal.ant-divider-with-text-right::after{width:95%}.ant-drawer{position:fixed;z-index:1000;width:0%;height:100%;transition:width 0s ease .3s,height 0s ease .3s}.ant-drawer-content-wrapper{position:absolute;width:100%;height:100%;transition:transform .3s cubic-bezier(.23,1,.32,1),box-shadow .3s cubic-bezier(.23,1,.32,1)}.ant-drawer .ant-drawer-content{width:100%;height:100%}.ant-drawer-left,.ant-drawer-right{top:0;width:0%;height:100%}.ant-drawer-left .ant-drawer-content-wrapper,.ant-drawer-right .ant-drawer-content-wrapper{height:100%}.ant-drawer-left.ant-drawer-open,.ant-drawer-right.ant-drawer-open{width:100%;transition:transform .3s cubic-bezier(.23,1,.32,1)}.ant-drawer-left,.ant-drawer-left .ant-drawer-content-wrapper{left:0}.ant-drawer-left.ant-drawer-open .ant-drawer-content-wrapper{box-shadow:6px 0 16px -8px rgba(0,0,0,.08),9px 0 28px 0 rgba(0,0,0,.05),12px 0 48px 16px rgba(0,0,0,.03)}.ant-drawer-right,.ant-drawer-right .ant-drawer-content-wrapper{right:0}.ant-drawer-right.ant-drawer-open .ant-drawer-content-wrapper{box-shadow:-6px 0 16px -8px rgba(0,0,0,.08),-9px 0 28px 0 rgba(0,0,0,.05),-12px 0 48px 16px rgba(0,0,0,.03)}.ant-drawer-top.ant-drawer-open .ant-drawer-content-wrapper,.header-dropdown{box-shadow:0 6px 16px -8px rgba(0,0,0,.08),0 9px 28px 0 rgba(0,0,0,.05),0 12px 48px 16px rgba(0,0,0,.03)}.ant-drawer-right.ant-drawer-open.no-mask{right:1px;transform:translateX(1px)}.ant-drawer-bottom,.ant-drawer-top{left:0;width:100%;height:0%}.ant-drawer-bottom .ant-drawer-content-wrapper,.ant-drawer-top .ant-drawer-content-wrapper{width:100%}.ant-drawer-bottom.ant-drawer-open,.ant-drawer-top.ant-drawer-open{height:100%;transition:transform .3s cubic-bezier(.23,1,.32,1)}.ant-drawer-top{top:0}.ant-drawer-bottom,.ant-drawer-bottom .ant-drawer-content-wrapper{bottom:0}.ant-drawer-bottom.ant-drawer-open .ant-drawer-content-wrapper{box-shadow:0 -6px 16px -8px rgba(0,0,0,.08),0 -9px 28px 0 rgba(0,0,0,.05),0 -12px 48px 16px rgba(0,0,0,.03)}.ant-drawer-bottom.ant-drawer-open.no-mask{bottom:1px;transform:translateY(1px)}.ant-drawer.ant-drawer-open .ant-drawer-mask{height:100%;opacity:1;transition:none;animation:antdDrawerFadeIn .3s cubic-bezier(.23,1,.32,1);pointer-events:auto}.ant-drawer-title{flex:1;margin:0;color:rgba(0,0,0,.85);font-weight:500;font-size:14px;line-height:22px}.ant-drawer-content{position:relative;z-index:1;overflow:auto;background-color:#fff;background-clip:padding-box;border:0}.ant-drawer-close{display:inline-block;margin-right:12px;color:rgba(0,0,0,.45);font-weight:700;font-size:14px;font-style:normal;line-height:1;text-align:center;text-transform:none;text-decoration:none;background:0 0;border:0;outline:0;cursor:pointer;transition:color .3s;text-rendering:auto}.ant-drawer-body,.ant-dropdown{line-height:1.66667;font-size:12px}.ant-drawer-close:focus,.ant-drawer-close:hover{color:rgba(0,0,0,.75);text-decoration:none}.ant-drawer-header{position:relative;display:flex;align-items:center;justify-content:space-between;padding:11px 16px;color:rgba(0,0,0,.85);background:#fff;border-bottom:1px solid #f0f0f0;border-radius:2px 2px 0 0}.ant-drawer-header-title{display:flex;flex:1;align-items:center;justify-content:space-between}.ant-drawer-header-close-only{padding-bottom:0;border:none}.ant-drawer-wrapper-body{display:flex;flex-flow:column nowrap;width:100%;height:100%}.ant-drawer-body{flex-grow:1;padding:16px;overflow:auto;word-wrap:break-word}.ant-drawer-footer{flex-shrink:0;padding:8px;border-top:1px solid #f0f0f0}.ant-drawer-mask{position:absolute;top:0;left:0;width:100%;height:0;background-color:rgba(0,0,0,.45);opacity:0;transition:opacity .3s linear,height 0s ease .3s;pointer-events:none}.ant-drawer .ant-picker-clear{background:#fff}@keyframes antdDrawerFadeIn{0%{opacity:0}100%{opacity:1}}.ant-drawer-rtl .ant-drawer-close{margin-right:0;margin-left:12px}.ant-dropdown-menu-item.ant-dropdown-menu-item-danger{color:#ff4d4f}.ant-dropdown-menu-item.ant-dropdown-menu-item-danger:hover{color:#fff;background-color:#ff4d4f}.ant-dropdown{box-sizing:border-box;margin:0;padding:0;color:rgba(0,0,0,.85);font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;z-index:1050;display:block}.ant-dropdown::before{position:absolute;top:-4px;right:0;bottom:-4px;left:-7px;z-index:-9999;opacity:.0001}.ant-dropdown-wrap{position:relative}.ant-dropdown-wrap .ant-btn>.anticon-down{font-size:10px}.ant-dropdown-wrap .anticon-down::before{transition:transform .2s}.ant-dropdown-wrap-open .anticon-down::before{transform:rotate(180deg)}.ant-dropdown-hidden,.ant-dropdown-menu-hidden,.ant-dropdown-menu-submenu-hidden{display:none}.ant-dropdown-show-arrow.ant-dropdown-placement-top,.ant-dropdown-show-arrow.ant-dropdown-placement-topLeft,.ant-dropdown-show-arrow.ant-dropdown-placement-topRight{padding-bottom:15.31px}.ant-dropdown-show-arrow.ant-dropdown-placement-bottom,.ant-dropdown-show-arrow.ant-dropdown-placement-bottomLeft,.ant-dropdown-show-arrow.ant-dropdown-placement-bottomRight{padding-top:15.31px}.ant-dropdown-arrow{position:absolute;z-index:1;display:block;width:11.31px;height:11.31px;pointer-events:none}.ant-dropdown-arrow::before{position:absolute;top:-11.31px;left:-11.31px;width:33.94px;height:33.94px;background:-10px -10px no-repeat #fff;content:'';clip-path:path('M 9.849242404917499 24.091883092036785 A 5 5 0 0 1 13.384776310850237 22.627416997969522 L 20.627416997969522 22.627416997969522 A 2 2 0 0 0 22.627416997969522 20.627416997969522 L 22.627416997969522 13.384776310850237 A 5 5 0 0 1 24.091883092036785 9.849242404917499 L 23.091883092036785 9.849242404917499 L 9.849242404917499 23.091883092036785 Z')}.ant-dropdown-placement-top>.ant-dropdown-arrow,.ant-dropdown-placement-topLeft>.ant-dropdown-arrow,.ant-dropdown-placement-topRight>.ant-dropdown-arrow{bottom:10px;box-shadow:3px 3px 7px -3px rgba(0,0,0,.1);transform:rotate(45deg)}.ant-dropdown-placement-top>.ant-dropdown-arrow{left:50%;transform:translateX(-50%) rotate(45deg)}.ant-dropdown-placement-topLeft>.ant-dropdown-arrow{left:16px}.ant-dropdown-placement-topRight>.ant-dropdown-arrow{right:16px}.ant-dropdown-placement-bottom>.ant-dropdown-arrow,.ant-dropdown-placement-bottomLeft>.ant-dropdown-arrow,.ant-dropdown-placement-bottomRight>.ant-dropdown-arrow{top:9.41px;box-shadow:2px 2px 5px -2px rgba(0,0,0,.1);transform:rotate(-135deg) translateY(-.5px)}.ant-dropdown-placement-bottom>.ant-dropdown-arrow{left:50%;transform:translateX(-50%) rotate(-135deg) translateY(-.5px)}.ant-dropdown-placement-bottomLeft>.ant-dropdown-arrow{left:16px}.ant-dropdown-placement-bottomRight>.ant-dropdown-arrow{right:16px}.ant-dropdown-menu{position:relative;margin:0;padding:4px 0;text-align:left;list-style-type:none;background-color:#fff;background-clip:padding-box;border-radius:2px;outline:0;box-shadow:0 3px 6px -4px rgba(0,0,0,.12),0 6px 16px 0 rgba(0,0,0,.08),0 9px 28px 8px rgba(0,0,0,.05)}.ant-dropdown-menu-item-group-title{padding:5px 8px;color:rgba(0,0,0,.45);transition:all .3s}.ant-dropdown-menu-submenu-popup{position:absolute;z-index:1050;background:0 0;box-shadow:none;transform-origin:0 0}.ant-dropdown-menu-submenu-popup li,.ant-dropdown-menu-submenu-popup ul{list-style:none}.ant-dropdown-menu-submenu-popup ul{margin-right:.3em;margin-left:.3em}.ant-dropdown-menu-item{position:relative;display:flex;align-items:center}.ant-dropdown-button.ant-btn-group>.ant-btn-loading+.ant-btn::before,nz-empty{display:block}.ant-dropdown-menu-item-icon{min-width:12px;margin-right:8px;font-size:12px}.ant-dropdown-menu-title-content{flex:auto}.ant-dropdown-menu-title-content>a{color:inherit;transition:all .3s}.ant-dropdown-menu-title-content>a:hover{color:inherit}.ant-dropdown-menu-title-content>a::after{position:absolute;top:0;right:0;bottom:0;left:0;content:''}.ant-dropdown-menu-item,.ant-dropdown-menu-submenu-title{clear:both;margin:0;padding:5px 8px;color:rgba(0,0,0,.85);font-weight:400;font-size:12px;line-height:18px;cursor:pointer;transition:all .3s}.ant-dropdown-menu-item-selected,.ant-dropdown-menu-submenu-title-selected{color:#1890ff;background-color:#e6f7ff}.ant-dropdown-menu-item.ant-dropdown-menu-item-active,.ant-dropdown-menu-item.ant-dropdown-menu-submenu-title-active,.ant-dropdown-menu-item:hover,.ant-dropdown-menu-submenu-title.ant-dropdown-menu-item-active,.ant-dropdown-menu-submenu-title.ant-dropdown-menu-submenu-title-active,.ant-dropdown-menu-submenu-title:hover{background-color:#f5f5f5}.ant-dropdown-menu-item-disabled,.ant-dropdown-menu-submenu-title-disabled{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-dropdown-menu-item-disabled:hover,.ant-dropdown-menu-submenu-title-disabled:hover{color:rgba(0,0,0,.25);background-color:#fff;cursor:not-allowed}.ant-dropdown-menu-item-disabled a,.ant-dropdown-menu-submenu-title-disabled a{pointer-events:none}.ant-dropdown-menu-item-divider,.ant-dropdown-menu-submenu-title-divider{height:1px;margin:4px 0;overflow:hidden;line-height:0;background-color:#f0f0f0}.ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon,.ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon{position:absolute;right:4px}.ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon,.ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon{margin-right:0!important;color:rgba(0,0,0,.45);font-size:10px;font-style:normal}.ant-dropdown-menu-item-group-list{margin:0 8px;padding:0;list-style:none}.ant-dropdown-menu-submenu-title{padding-right:20px}.ant-dropdown-menu-submenu-vertical{position:relative}.ant-dropdown-menu-submenu-vertical>.ant-dropdown-menu{position:absolute;top:0;left:100%;min-width:100%;margin-left:4px;transform-origin:0 0}.ant-dropdown-menu-submenu.ant-dropdown-menu-submenu-disabled .ant-dropdown-menu-submenu-title,.ant-dropdown-menu-submenu.ant-dropdown-menu-submenu-disabled .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-arrow-icon{color:rgba(0,0,0,.25);background-color:#fff;cursor:not-allowed}.ant-dropdown-menu-submenu-selected .ant-dropdown-menu-submenu-title{color:#1890ff}.ant-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-dropdown-placement-top,.ant-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-dropdown-placement-topLeft,.ant-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-dropdown-placement-topRight,.ant-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-dropdown-placement-top,.ant-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-dropdown-placement-topLeft,.ant-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-dropdown-placement-topRight{animation-name:antSlideDownIn}.ant-dropdown.ant-slide-down-leave.ant-slide-down-leave-active.ant-dropdown-placement-bottom,.ant-dropdown.ant-slide-down-leave.ant-slide-down-leave-active.ant-dropdown-placement-bottomLeft,.ant-dropdown.ant-slide-down-leave.ant-slide-down-leave-active.ant-dropdown-placement-bottomRight{animation-name:antSlideUpOut}.ant-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-dropdown-placement-top,.ant-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-dropdown-placement-topLeft,.ant-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-dropdown-placement-topRight{animation-name:antSlideDownOut}.ant-dropdown-button>.anticon.anticon-down,.ant-dropdown-link>.anticon.anticon-down,.ant-dropdown-trigger>.anticon.anticon-down{font-size:10px;vertical-align:baseline}.ant-dropdown-button{white-space:nowrap}.ant-dropdown-button.ant-btn-group>.ant-btn-loading,.ant-dropdown-button.ant-btn-group>.ant-btn-loading+.ant-btn{cursor:default;pointer-events:none}.ant-dropdown-button.ant-btn-group>.ant-btn:last-child:not(:first-child):not(.ant-btn-icon-only){padding-right:4px;padding-left:4px}.ant-dropdown-menu-dark,.ant-dropdown-menu-dark .ant-dropdown-menu{background:#001529}.ant-dropdown-menu-dark .ant-dropdown-menu-item,.ant-dropdown-menu-dark .ant-dropdown-menu-item .ant-dropdown-menu-submenu-arrow::after,.ant-dropdown-menu-dark .ant-dropdown-menu-item>.anticon+span>a,.ant-dropdown-menu-dark .ant-dropdown-menu-item>.anticon+span>a .ant-dropdown-menu-submenu-arrow::after,.ant-dropdown-menu-dark .ant-dropdown-menu-item>a,.ant-dropdown-menu-dark .ant-dropdown-menu-item>a .ant-dropdown-menu-submenu-arrow::after,.ant-dropdown-menu-dark .ant-dropdown-menu-submenu-title,.ant-dropdown-menu-dark .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-arrow::after{color:rgba(255,255,255,.65)}.ant-dropdown-menu-dark .ant-dropdown-menu-item:hover,.ant-dropdown-menu-dark .ant-dropdown-menu-item>.anticon+span>a:hover,.ant-dropdown-menu-dark .ant-dropdown-menu-item>a:hover,.ant-dropdown-menu-dark .ant-dropdown-menu-submenu-title:hover{color:#fff;background:0 0}.ant-dropdown-menu-dark .ant-dropdown-menu-item-selected,.ant-dropdown-menu-dark .ant-dropdown-menu-item-selected:hover,.ant-dropdown-menu-dark .ant-dropdown-menu-item-selected>a{color:#fff;background:#1890ff}.ant-input,.ant-input-affix-wrapper{background-color:#fff;transition:all .3s;min-width:0}.ant-dropdown-rtl.ant-dropdown::before{right:-7px;left:0}.ant-dropdown-menu-submenu-rtl .ant-dropdown-menu-item-group-title,.ant-dropdown-menu.ant-dropdown-menu-rtl,.ant-dropdown-rtl .ant-dropdown-menu-item-group-title{text-align:right}.ant-dropdown-menu-submenu-popup.ant-dropdown-menu-submenu-rtl{transform-origin:100% 0}.ant-dropdown-rtl .ant-dropdown-menu-item,.ant-dropdown-rtl .ant-dropdown-menu-submenu-popup li,.ant-dropdown-rtl .ant-dropdown-menu-submenu-popup ul,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title{text-align:right}.ant-dropdown-rtl .ant-dropdown-menu-item>.anticon:first-child,.ant-dropdown-rtl .ant-dropdown-menu-item>span>.anticon:first-child,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title>.anticon:first-child,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title>span>.anticon:first-child{margin-right:0;margin-left:8px}.ant-dropdown-rtl .ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon{right:auto;left:4px}.ant-dropdown-rtl .ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon{margin-left:0!important;transform:scaleX(-1)}.ant-dropdown-rtl .ant-dropdown-menu-submenu-title{padding-right:8px;padding-left:20px}.ant-dropdown-rtl .ant-dropdown-menu-submenu-vertical>.ant-dropdown-menu{right:100%;left:0;margin-right:4px;margin-left:0}.ant-dropdown-menu>ul{list-style:inherit;margin:0;padding:0}.ant-dropdown{top:0;left:0;position:relative;width:100%;margin-top:6px;margin-bottom:6px}.ant-dropdown-rtl .ant-dropdown-menu-item .ant-dropdown-menu-submenu-arrow,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-arrow{transform:rotate(180deg)}.ant-empty{margin:0 8px;font-size:12px;line-height:1.66667;text-align:center}.ant-empty-image{height:100px;margin-bottom:8px}.ant-empty-image img{height:100%}.ant-empty-image svg{height:100%;margin:auto}.ant-empty-footer{margin-top:16px}.ant-empty-normal{margin:32px 0;color:rgba(0,0,0,.25)}.ant-empty-normal .ant-empty-image{height:40px}.ant-empty-small{margin:8px 0;color:rgba(0,0,0,.25)}.ant-empty-small .ant-empty-image{height:35px}.ant-empty-img-default-ellipse{fill:#f5f5f5;fill-opacity:.8}.ant-empty-img-default-path-1{fill:#aeb8c2}.ant-empty-img-default-path-2{fill:url(#linearGradient-1)}.ant-empty-img-default-path-3{fill:#f5f5f7}.ant-empty-img-default-path-4,.ant-empty-img-default-path-5{fill:#dce0e6}.ant-empty-img-default-g{fill:#fff}.ant-empty-img-simple-ellipse{fill:#f5f5f5}.ant-empty-img-simple-g{stroke:#d9d9d9}.ant-empty-img-simple-path{fill:#fafafa}.ant-row{display:flex;flex-flow:row wrap}.ant-row::after,.ant-row::before{display:flex}.ant-col-1,.ant-col-10,.ant-col-11,.ant-col-12,.ant-col-13,.ant-col-14,.ant-col-15,.ant-col-16,.ant-col-17,.ant-col-18,.ant-col-19,.ant-col-2,.ant-col-20,.ant-col-21,.ant-col-22,.ant-col-23,.ant-col-24,.ant-col-3,.ant-col-4,.ant-col-5,.ant-col-6,.ant-col-7,.ant-col-8,.ant-col-9{display:block}.ant-row-no-wrap{flex-wrap:nowrap}.ant-row-start{justify-content:flex-start}.ant-row-center{justify-content:center}.ant-row-end{justify-content:flex-end}.ant-row-space-between{justify-content:space-between}.ant-row-space-around{justify-content:space-around}.ant-row-space-evenly{justify-content:space-evenly}.ant-row-top{align-items:flex-start}.ant-row-middle{align-items:center}.ant-row-bottom{align-items:flex-end}.ant-col{position:relative;max-width:100%;min-height:1px}.ant-col-24{flex:0 0 100%;max-width:100%}.ant-col-push-24{left:100%}.ant-col-pull-24{right:100%}.ant-col-offset-24{margin-left:100%}.ant-col-order-24{order:24}.ant-col-23{flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-push-23{left:95.83333333%}.ant-col-pull-23{right:95.83333333%}.ant-col-offset-23{margin-left:95.83333333%}.ant-col-order-23{order:23}.ant-col-22{flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-push-22{left:91.66666667%}.ant-col-pull-22{right:91.66666667%}.ant-col-offset-22{margin-left:91.66666667%}.ant-col-order-22{order:22}.ant-col-21{flex:0 0 87.5%;max-width:87.5%}.ant-col-push-21{left:87.5%}.ant-col-pull-21{right:87.5%}.ant-col-offset-21{margin-left:87.5%}.ant-col-order-21{order:21}.ant-col-20{flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-push-20{left:83.33333333%}.ant-col-pull-20{right:83.33333333%}.ant-col-offset-20{margin-left:83.33333333%}.ant-col-order-20{order:20}.ant-col-19{flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-push-19{left:79.16666667%}.ant-col-pull-19{right:79.16666667%}.ant-col-offset-19{margin-left:79.16666667%}.ant-col-order-19{order:19}.ant-col-18{flex:0 0 75%;max-width:75%}.ant-col-push-18{left:75%}.ant-col-pull-18{right:75%}.ant-col-offset-18{margin-left:75%}.ant-col-order-18{order:18}.ant-col-17{flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-push-17{left:70.83333333%}.ant-col-pull-17{right:70.83333333%}.ant-col-offset-17{margin-left:70.83333333%}.ant-col-order-17{order:17}.ant-col-16{flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-push-16{left:66.66666667%}.ant-col-pull-16{right:66.66666667%}.ant-col-offset-16{margin-left:66.66666667%}.ant-col-order-16{order:16}.ant-col-15{flex:0 0 62.5%;max-width:62.5%}.ant-col-push-15{left:62.5%}.ant-col-pull-15{right:62.5%}.ant-col-offset-15{margin-left:62.5%}.ant-col-order-15{order:15}.ant-col-14{flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-push-14{left:58.33333333%}.ant-col-pull-14{right:58.33333333%}.ant-col-offset-14{margin-left:58.33333333%}.ant-col-order-14{order:14}.ant-col-13{flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-push-13{left:54.16666667%}.ant-col-pull-13{right:54.16666667%}.ant-col-offset-13{margin-left:54.16666667%}.ant-col-order-13{order:13}.ant-col-12{flex:0 0 50%;max-width:50%}.ant-col-push-12{left:50%}.ant-col-pull-12{right:50%}.ant-col-offset-12{margin-left:50%}.ant-col-order-12{order:12}.ant-col-11{flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-push-11{left:45.83333333%}.ant-col-pull-11{right:45.83333333%}.ant-col-offset-11{margin-left:45.83333333%}.ant-col-order-11{order:11}.ant-col-10{flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-push-10{left:41.66666667%}.ant-col-pull-10{right:41.66666667%}.ant-col-offset-10{margin-left:41.66666667%}.ant-col-order-10{order:10}.ant-col-9{flex:0 0 37.5%;max-width:37.5%}.ant-col-push-9{left:37.5%}.ant-col-pull-9{right:37.5%}.ant-col-offset-9{margin-left:37.5%}.ant-col-order-9{order:9}.ant-col-8{flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-push-8{left:33.33333333%}.ant-col-pull-8{right:33.33333333%}.ant-col-offset-8{margin-left:33.33333333%}.ant-col-order-8{order:8}.ant-col-7{flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-push-7{left:29.16666667%}.ant-col-pull-7{right:29.16666667%}.ant-col-offset-7{margin-left:29.16666667%}.ant-col-order-7{order:7}.ant-col-6{flex:0 0 25%;max-width:25%}.ant-col-push-6{left:25%}.ant-col-pull-6{right:25%}.ant-col-offset-6{margin-left:25%}.ant-col-order-6{order:6}.ant-col-5{flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-push-5{left:20.83333333%}.ant-col-pull-5{right:20.83333333%}.ant-col-offset-5{margin-left:20.83333333%}.ant-col-order-5{order:5}.ant-col-4{flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-push-4{left:16.66666667%}.ant-col-pull-4{right:16.66666667%}.ant-col-offset-4{margin-left:16.66666667%}.ant-col-order-4{order:4}.ant-col-3{flex:0 0 12.5%;max-width:12.5%}.ant-col-push-3{left:12.5%}.ant-col-pull-3{right:12.5%}.ant-col-offset-3{margin-left:12.5%}.ant-col-order-3{order:3}.ant-col-2{flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-push-2{left:8.33333333%}.ant-col-pull-2{right:8.33333333%}.ant-col-offset-2{margin-left:8.33333333%}.ant-col-order-2{order:2}.ant-col-1{flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-push-1{left:4.16666667%}.ant-col-pull-1{right:4.16666667%}.ant-col-offset-1{margin-left:4.16666667%}.ant-col-order-1{order:1}.ant-col-0{display:none}.ant-col-offset-0{margin-left:0}.ant-col-order-0{order:0}.ant-col-offset-0.ant-col-rtl{margin-right:0}.ant-col-push-1.ant-col-rtl{right:4.16666667%;left:auto}.ant-col-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}.ant-col-xs-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-xs-push-24{left:100%}.ant-col-xs-pull-24{right:100%}.ant-col-xs-offset-24{margin-left:100%}.ant-col-xs-order-24{order:24}.ant-col-xs-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-xs-push-23{left:95.83333333%}.ant-col-xs-pull-23{right:95.83333333%}.ant-col-xs-offset-23{margin-left:95.83333333%}.ant-col-xs-order-23{order:23}.ant-col-xs-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-xs-push-22{left:91.66666667%}.ant-col-xs-pull-22{right:91.66666667%}.ant-col-xs-offset-22{margin-left:91.66666667%}.ant-col-xs-order-22{order:22}.ant-col-xs-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-xs-push-21{left:87.5%}.ant-col-xs-pull-21{right:87.5%}.ant-col-xs-offset-21{margin-left:87.5%}.ant-col-xs-order-21{order:21}.ant-col-xs-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-xs-push-20{left:83.33333333%}.ant-col-xs-pull-20{right:83.33333333%}.ant-col-xs-offset-20{margin-left:83.33333333%}.ant-col-xs-order-20{order:20}.ant-col-xs-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-xs-push-19{left:79.16666667%}.ant-col-xs-pull-19{right:79.16666667%}.ant-col-xs-offset-19{margin-left:79.16666667%}.ant-col-xs-order-19{order:19}.ant-col-xs-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-xs-push-18{left:75%}.ant-col-xs-pull-18{right:75%}.ant-col-xs-offset-18{margin-left:75%}.ant-col-xs-order-18{order:18}.ant-col-xs-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-xs-push-17{left:70.83333333%}.ant-col-xs-pull-17{right:70.83333333%}.ant-col-xs-offset-17{margin-left:70.83333333%}.ant-col-xs-order-17{order:17}.ant-col-xs-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-xs-push-16{left:66.66666667%}.ant-col-xs-pull-16{right:66.66666667%}.ant-col-xs-offset-16{margin-left:66.66666667%}.ant-col-xs-order-16{order:16}.ant-col-xs-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-xs-push-15{left:62.5%}.ant-col-xs-pull-15{right:62.5%}.ant-col-xs-offset-15{margin-left:62.5%}.ant-col-xs-order-15{order:15}.ant-col-xs-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-xs-push-14{left:58.33333333%}.ant-col-xs-pull-14{right:58.33333333%}.ant-col-xs-offset-14{margin-left:58.33333333%}.ant-col-xs-order-14{order:14}.ant-col-xs-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-xs-push-13{left:54.16666667%}.ant-col-xs-pull-13{right:54.16666667%}.ant-col-xs-offset-13{margin-left:54.16666667%}.ant-col-xs-order-13{order:13}.ant-col-xs-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-xs-push-12{left:50%}.ant-col-xs-pull-12{right:50%}.ant-col-xs-offset-12{margin-left:50%}.ant-col-xs-order-12{order:12}.ant-col-xs-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-xs-push-11{left:45.83333333%}.ant-col-xs-pull-11{right:45.83333333%}.ant-col-xs-offset-11{margin-left:45.83333333%}.ant-col-xs-order-11{order:11}.ant-col-xs-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-xs-push-10{left:41.66666667%}.ant-col-xs-pull-10{right:41.66666667%}.ant-col-xs-offset-10{margin-left:41.66666667%}.ant-col-xs-order-10{order:10}.ant-col-xs-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-xs-push-9{left:37.5%}.ant-col-xs-pull-9{right:37.5%}.ant-col-xs-offset-9{margin-left:37.5%}.ant-col-xs-order-9{order:9}.ant-col-xs-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-xs-push-8{left:33.33333333%}.ant-col-xs-pull-8{right:33.33333333%}.ant-col-xs-offset-8{margin-left:33.33333333%}.ant-col-xs-order-8{order:8}.ant-col-xs-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-xs-push-7{left:29.16666667%}.ant-col-xs-pull-7{right:29.16666667%}.ant-col-xs-offset-7{margin-left:29.16666667%}.ant-col-xs-order-7{order:7}.ant-col-xs-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-xs-push-6{left:25%}.ant-col-xs-pull-6{right:25%}.ant-col-xs-offset-6{margin-left:25%}.ant-col-xs-order-6{order:6}.ant-col-xs-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-xs-push-5{left:20.83333333%}.ant-col-xs-pull-5{right:20.83333333%}.ant-col-xs-offset-5{margin-left:20.83333333%}.ant-col-xs-order-5{order:5}.ant-col-xs-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-xs-push-4{left:16.66666667%}.ant-col-xs-pull-4{right:16.66666667%}.ant-col-xs-offset-4{margin-left:16.66666667%}.ant-col-xs-order-4{order:4}.ant-col-xs-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-xs-push-3{left:12.5%}.ant-col-xs-pull-3{right:12.5%}.ant-col-xs-offset-3{margin-left:12.5%}.ant-col-xs-order-3{order:3}.ant-col-xs-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-xs-push-2{left:8.33333333%}.ant-col-xs-pull-2{right:8.33333333%}.ant-col-xs-offset-2{margin-left:8.33333333%}.ant-col-xs-order-2{order:2}.ant-col-xs-order-1,.ant-layout-sider-right,.ant-tabs-rtl.ant-tabs-left>.ant-tabs-nav{order:1}.ant-col-xs-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-xs-push-1{left:4.16666667%}.ant-col-pull-0.ant-col-rtl,.ant-col-push-0,.ant-col-xs-pull-0.ant-col-rtl,.ant-col-xs-push-0,.ant-col-xs-push-1.ant-col-rtl{left:auto}.ant-col-xs-pull-1{right:4.16666667%}.ant-col-pull-0,.ant-col-push-0.ant-col-rtl,.ant-col-xs-pull-0,.ant-col-xs-push-0.ant-col-rtl{right:auto}.ant-col-xs-offset-1{margin-left:4.16666667%}.ant-col-xs-0{display:none}.ant-col-xs-offset-0{margin-left:0}.ant-col-xs-order-0{order:0}.ant-col-xs-offset-0.ant-col-rtl{margin-right:0}.ant-col-xs-push-1.ant-col-rtl{right:4.16666667%}.ant-col-xs-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-xs-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-xs-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-xs-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-xs-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-xs-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-xs-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-xs-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-xs-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-xs-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-xs-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-xs-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-xs-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-xs-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-xs-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-xs-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-xs-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-xs-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-xs-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-xs-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-xs-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-xs-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-xs-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-xs-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-xs-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-xs-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-xs-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-xs-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-xs-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-xs-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-xs-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-xs-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-xs-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-xs-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-xs-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-xs-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-xs-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-xs-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-xs-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-xs-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-xs-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-xs-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-xs-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-xs-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-xs-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-xs-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-xs-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-xs-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-xs-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-xs-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-xs-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-xs-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-xs-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-xs-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-xs-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-xs-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-xs-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-xs-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-xs-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-xs-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-xs-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-xs-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-xs-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-xs-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-xs-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-xs-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-xs-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-xs-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-xs-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-xs-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-xs-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}@media (min-width:576px){.ant-col-sm-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-sm-push-24{left:100%}.ant-col-sm-pull-24{right:100%}.ant-col-sm-offset-24{margin-left:100%}.ant-col-sm-order-24{order:24}.ant-col-sm-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-sm-push-23{left:95.83333333%}.ant-col-sm-pull-23{right:95.83333333%}.ant-col-sm-offset-23{margin-left:95.83333333%}.ant-col-sm-order-23{order:23}.ant-col-sm-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-sm-push-22{left:91.66666667%}.ant-col-sm-pull-22{right:91.66666667%}.ant-col-sm-offset-22{margin-left:91.66666667%}.ant-col-sm-order-22{order:22}.ant-col-sm-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-sm-push-21{left:87.5%}.ant-col-sm-pull-21{right:87.5%}.ant-col-sm-offset-21{margin-left:87.5%}.ant-col-sm-order-21{order:21}.ant-col-sm-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-sm-push-20{left:83.33333333%}.ant-col-sm-pull-20{right:83.33333333%}.ant-col-sm-offset-20{margin-left:83.33333333%}.ant-col-sm-order-20{order:20}.ant-col-sm-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-sm-push-19{left:79.16666667%}.ant-col-sm-pull-19{right:79.16666667%}.ant-col-sm-offset-19{margin-left:79.16666667%}.ant-col-sm-order-19{order:19}.ant-col-sm-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-sm-push-18{left:75%}.ant-col-sm-pull-18{right:75%}.ant-col-sm-offset-18{margin-left:75%}.ant-col-sm-order-18{order:18}.ant-col-sm-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-sm-push-17{left:70.83333333%}.ant-col-sm-pull-17{right:70.83333333%}.ant-col-sm-offset-17{margin-left:70.83333333%}.ant-col-sm-order-17{order:17}.ant-col-sm-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-sm-push-16{left:66.66666667%}.ant-col-sm-pull-16{right:66.66666667%}.ant-col-sm-offset-16{margin-left:66.66666667%}.ant-col-sm-order-16{order:16}.ant-col-sm-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-sm-push-15{left:62.5%}.ant-col-sm-pull-15{right:62.5%}.ant-col-sm-offset-15{margin-left:62.5%}.ant-col-sm-order-15{order:15}.ant-col-sm-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-sm-push-14{left:58.33333333%}.ant-col-sm-pull-14{right:58.33333333%}.ant-col-sm-offset-14{margin-left:58.33333333%}.ant-col-sm-order-14{order:14}.ant-col-sm-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-sm-push-13{left:54.16666667%}.ant-col-sm-pull-13{right:54.16666667%}.ant-col-sm-offset-13{margin-left:54.16666667%}.ant-col-sm-order-13{order:13}.ant-col-sm-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-sm-push-12{left:50%}.ant-col-sm-pull-12{right:50%}.ant-col-sm-offset-12{margin-left:50%}.ant-col-sm-order-12{order:12}.ant-col-sm-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-sm-push-11{left:45.83333333%}.ant-col-sm-pull-11{right:45.83333333%}.ant-col-sm-offset-11{margin-left:45.83333333%}.ant-col-sm-order-11{order:11}.ant-col-sm-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-sm-push-10{left:41.66666667%}.ant-col-sm-pull-10{right:41.66666667%}.ant-col-sm-offset-10{margin-left:41.66666667%}.ant-col-sm-order-10{order:10}.ant-col-sm-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-sm-push-9{left:37.5%}.ant-col-sm-pull-9{right:37.5%}.ant-col-sm-offset-9{margin-left:37.5%}.ant-col-sm-order-9{order:9}.ant-col-sm-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-sm-push-8{left:33.33333333%}.ant-col-sm-pull-8{right:33.33333333%}.ant-col-sm-offset-8{margin-left:33.33333333%}.ant-col-sm-order-8{order:8}.ant-col-sm-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-sm-push-7{left:29.16666667%}.ant-col-sm-pull-7{right:29.16666667%}.ant-col-sm-offset-7{margin-left:29.16666667%}.ant-col-sm-order-7{order:7}.ant-col-sm-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-sm-push-6{left:25%}.ant-col-sm-pull-6{right:25%}.ant-col-sm-offset-6{margin-left:25%}.ant-col-sm-order-6{order:6}.ant-col-sm-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-sm-push-5{left:20.83333333%}.ant-col-sm-pull-5{right:20.83333333%}.ant-col-sm-offset-5{margin-left:20.83333333%}.ant-col-sm-order-5{order:5}.ant-col-sm-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-sm-push-4{left:16.66666667%}.ant-col-sm-pull-4{right:16.66666667%}.ant-col-sm-offset-4{margin-left:16.66666667%}.ant-col-sm-order-4{order:4}.ant-col-sm-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-sm-push-3{left:12.5%}.ant-col-sm-pull-3{right:12.5%}.ant-col-sm-offset-3{margin-left:12.5%}.ant-col-sm-order-3{order:3}.ant-col-sm-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-sm-push-2{left:8.33333333%}.ant-col-sm-pull-2{right:8.33333333%}.ant-col-sm-offset-2{margin-left:8.33333333%}.ant-col-sm-order-2{order:2}.ant-col-sm-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-sm-push-1{left:4.16666667%}.ant-col-pull-0.ant-col-rtl,.ant-col-push-0,.ant-col-sm-pull-0.ant-col-rtl,.ant-col-sm-push-0,.ant-col-sm-push-1.ant-col-rtl{left:auto}.ant-col-sm-pull-1{right:4.16666667%}.ant-col-pull-0,.ant-col-push-0.ant-col-rtl,.ant-col-sm-pull-0,.ant-col-sm-push-0.ant-col-rtl{right:auto}.ant-col-sm-offset-1{margin-left:4.16666667%}.ant-col-sm-order-1{order:1}.ant-col-sm-0{display:none}.ant-col-sm-offset-0{margin-left:0}.ant-col-sm-order-0{order:0}.ant-col-sm-offset-0.ant-col-rtl{margin-right:0}.ant-col-sm-push-1.ant-col-rtl{right:4.16666667%}.ant-col-sm-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-sm-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-sm-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-sm-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-sm-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-sm-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-sm-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-sm-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-sm-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-sm-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-sm-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-sm-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-sm-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-sm-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-sm-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-sm-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-sm-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-sm-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-sm-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-sm-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-sm-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-sm-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-sm-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-sm-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-sm-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-sm-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-sm-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-sm-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-sm-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-sm-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-sm-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-sm-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-sm-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-sm-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-sm-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-sm-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-sm-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-sm-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-sm-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-sm-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-sm-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-sm-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-sm-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-sm-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-sm-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-sm-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-sm-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-sm-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-sm-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-sm-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-sm-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-sm-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-sm-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-sm-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-sm-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-sm-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-sm-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-sm-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-sm-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-sm-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-sm-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-sm-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-sm-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-sm-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-sm-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-sm-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-sm-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-sm-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-sm-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-sm-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-sm-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}@media (min-width:768px){.ant-col-md-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-md-push-24{left:100%}.ant-col-md-pull-24{right:100%}.ant-col-md-offset-24{margin-left:100%}.ant-col-md-order-24{order:24}.ant-col-md-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-md-push-23{left:95.83333333%}.ant-col-md-pull-23{right:95.83333333%}.ant-col-md-offset-23{margin-left:95.83333333%}.ant-col-md-order-23{order:23}.ant-col-md-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-md-push-22{left:91.66666667%}.ant-col-md-pull-22{right:91.66666667%}.ant-col-md-offset-22{margin-left:91.66666667%}.ant-col-md-order-22{order:22}.ant-col-md-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-md-push-21{left:87.5%}.ant-col-md-pull-21{right:87.5%}.ant-col-md-offset-21{margin-left:87.5%}.ant-col-md-order-21{order:21}.ant-col-md-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-md-push-20{left:83.33333333%}.ant-col-md-pull-20{right:83.33333333%}.ant-col-md-offset-20{margin-left:83.33333333%}.ant-col-md-order-20{order:20}.ant-col-md-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-md-push-19{left:79.16666667%}.ant-col-md-pull-19{right:79.16666667%}.ant-col-md-offset-19{margin-left:79.16666667%}.ant-col-md-order-19{order:19}.ant-col-md-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-md-push-18{left:75%}.ant-col-md-pull-18{right:75%}.ant-col-md-offset-18{margin-left:75%}.ant-col-md-order-18{order:18}.ant-col-md-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-md-push-17{left:70.83333333%}.ant-col-md-pull-17{right:70.83333333%}.ant-col-md-offset-17{margin-left:70.83333333%}.ant-col-md-order-17{order:17}.ant-col-md-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-md-push-16{left:66.66666667%}.ant-col-md-pull-16{right:66.66666667%}.ant-col-md-offset-16{margin-left:66.66666667%}.ant-col-md-order-16{order:16}.ant-col-md-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-md-push-15{left:62.5%}.ant-col-md-pull-15{right:62.5%}.ant-col-md-offset-15{margin-left:62.5%}.ant-col-md-order-15{order:15}.ant-col-md-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-md-push-14{left:58.33333333%}.ant-col-md-pull-14{right:58.33333333%}.ant-col-md-offset-14{margin-left:58.33333333%}.ant-col-md-order-14{order:14}.ant-col-md-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-md-push-13{left:54.16666667%}.ant-col-md-pull-13{right:54.16666667%}.ant-col-md-offset-13{margin-left:54.16666667%}.ant-col-md-order-13{order:13}.ant-col-md-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-md-push-12{left:50%}.ant-col-md-pull-12{right:50%}.ant-col-md-offset-12{margin-left:50%}.ant-col-md-order-12{order:12}.ant-col-md-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-md-push-11{left:45.83333333%}.ant-col-md-pull-11{right:45.83333333%}.ant-col-md-offset-11{margin-left:45.83333333%}.ant-col-md-order-11{order:11}.ant-col-md-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-md-push-10{left:41.66666667%}.ant-col-md-pull-10{right:41.66666667%}.ant-col-md-offset-10{margin-left:41.66666667%}.ant-col-md-order-10{order:10}.ant-col-md-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-md-push-9{left:37.5%}.ant-col-md-pull-9{right:37.5%}.ant-col-md-offset-9{margin-left:37.5%}.ant-col-md-order-9{order:9}.ant-col-md-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-md-push-8{left:33.33333333%}.ant-col-md-pull-8{right:33.33333333%}.ant-col-md-offset-8{margin-left:33.33333333%}.ant-col-md-order-8{order:8}.ant-col-md-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-md-push-7{left:29.16666667%}.ant-col-md-pull-7{right:29.16666667%}.ant-col-md-offset-7{margin-left:29.16666667%}.ant-col-md-order-7{order:7}.ant-col-md-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-md-push-6{left:25%}.ant-col-md-pull-6{right:25%}.ant-col-md-offset-6{margin-left:25%}.ant-col-md-order-6{order:6}.ant-col-md-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-md-push-5{left:20.83333333%}.ant-col-md-pull-5{right:20.83333333%}.ant-col-md-offset-5{margin-left:20.83333333%}.ant-col-md-order-5{order:5}.ant-col-md-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-md-push-4{left:16.66666667%}.ant-col-md-pull-4{right:16.66666667%}.ant-col-md-offset-4{margin-left:16.66666667%}.ant-col-md-order-4{order:4}.ant-col-md-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-md-push-3{left:12.5%}.ant-col-md-pull-3{right:12.5%}.ant-col-md-offset-3{margin-left:12.5%}.ant-col-md-order-3{order:3}.ant-col-md-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-md-push-2{left:8.33333333%}.ant-col-md-pull-2{right:8.33333333%}.ant-col-md-offset-2{margin-left:8.33333333%}.ant-col-md-order-2{order:2}.ant-col-md-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-md-push-1{left:4.16666667%}.ant-col-md-pull-0.ant-col-rtl,.ant-col-md-push-0,.ant-col-md-push-1.ant-col-rtl,.ant-col-pull-0.ant-col-rtl,.ant-col-push-0{left:auto}.ant-col-md-pull-1{right:4.16666667%}.ant-col-md-pull-0,.ant-col-md-push-0.ant-col-rtl,.ant-col-pull-0,.ant-col-push-0.ant-col-rtl{right:auto}.ant-col-md-offset-1{margin-left:4.16666667%}.ant-col-md-order-1{order:1}.ant-col-md-0{display:none}.ant-col-md-offset-0{margin-left:0}.ant-col-md-order-0{order:0}.ant-col-md-offset-0.ant-col-rtl{margin-right:0}.ant-col-md-push-1.ant-col-rtl{right:4.16666667%}.ant-col-md-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-md-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-md-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-md-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-md-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-md-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-md-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-md-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-md-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-md-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-md-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-md-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-md-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-md-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-md-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-md-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-md-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-md-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-md-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-md-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-md-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-md-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-md-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-md-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-md-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-md-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-md-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-md-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-md-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-md-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-md-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-md-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-md-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-md-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-md-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-md-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-md-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-md-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-md-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-md-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-md-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-md-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-md-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-md-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-md-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-md-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-md-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-md-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-md-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-md-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-md-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-md-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-md-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-md-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-md-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-md-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-md-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-md-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-md-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-md-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-md-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-md-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-md-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-md-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-md-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-md-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-md-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-md-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-md-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-md-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-md-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}@media (min-width:992px){.ant-col-lg-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-lg-push-24{left:100%}.ant-col-lg-pull-24{right:100%}.ant-col-lg-offset-24{margin-left:100%}.ant-col-lg-order-24{order:24}.ant-col-lg-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-lg-push-23{left:95.83333333%}.ant-col-lg-pull-23{right:95.83333333%}.ant-col-lg-offset-23{margin-left:95.83333333%}.ant-col-lg-order-23{order:23}.ant-col-lg-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-lg-push-22{left:91.66666667%}.ant-col-lg-pull-22{right:91.66666667%}.ant-col-lg-offset-22{margin-left:91.66666667%}.ant-col-lg-order-22{order:22}.ant-col-lg-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-lg-push-21{left:87.5%}.ant-col-lg-pull-21{right:87.5%}.ant-col-lg-offset-21{margin-left:87.5%}.ant-col-lg-order-21{order:21}.ant-col-lg-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-lg-push-20{left:83.33333333%}.ant-col-lg-pull-20{right:83.33333333%}.ant-col-lg-offset-20{margin-left:83.33333333%}.ant-col-lg-order-20{order:20}.ant-col-lg-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-lg-push-19{left:79.16666667%}.ant-col-lg-pull-19{right:79.16666667%}.ant-col-lg-offset-19{margin-left:79.16666667%}.ant-col-lg-order-19{order:19}.ant-col-lg-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-lg-push-18{left:75%}.ant-col-lg-pull-18{right:75%}.ant-col-lg-offset-18{margin-left:75%}.ant-col-lg-order-18{order:18}.ant-col-lg-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-lg-push-17{left:70.83333333%}.ant-col-lg-pull-17{right:70.83333333%}.ant-col-lg-offset-17{margin-left:70.83333333%}.ant-col-lg-order-17{order:17}.ant-col-lg-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-lg-push-16{left:66.66666667%}.ant-col-lg-pull-16{right:66.66666667%}.ant-col-lg-offset-16{margin-left:66.66666667%}.ant-col-lg-order-16{order:16}.ant-col-lg-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-lg-push-15{left:62.5%}.ant-col-lg-pull-15{right:62.5%}.ant-col-lg-offset-15{margin-left:62.5%}.ant-col-lg-order-15{order:15}.ant-col-lg-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-lg-push-14{left:58.33333333%}.ant-col-lg-pull-14{right:58.33333333%}.ant-col-lg-offset-14{margin-left:58.33333333%}.ant-col-lg-order-14{order:14}.ant-col-lg-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-lg-push-13{left:54.16666667%}.ant-col-lg-pull-13{right:54.16666667%}.ant-col-lg-offset-13{margin-left:54.16666667%}.ant-col-lg-order-13{order:13}.ant-col-lg-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-lg-push-12{left:50%}.ant-col-lg-pull-12{right:50%}.ant-col-lg-offset-12{margin-left:50%}.ant-col-lg-order-12{order:12}.ant-col-lg-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-lg-push-11{left:45.83333333%}.ant-col-lg-pull-11{right:45.83333333%}.ant-col-lg-offset-11{margin-left:45.83333333%}.ant-col-lg-order-11{order:11}.ant-col-lg-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-lg-push-10{left:41.66666667%}.ant-col-lg-pull-10{right:41.66666667%}.ant-col-lg-offset-10{margin-left:41.66666667%}.ant-col-lg-order-10{order:10}.ant-col-lg-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-lg-push-9{left:37.5%}.ant-col-lg-pull-9{right:37.5%}.ant-col-lg-offset-9{margin-left:37.5%}.ant-col-lg-order-9{order:9}.ant-col-lg-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-lg-push-8{left:33.33333333%}.ant-col-lg-pull-8{right:33.33333333%}.ant-col-lg-offset-8{margin-left:33.33333333%}.ant-col-lg-order-8{order:8}.ant-col-lg-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-lg-push-7{left:29.16666667%}.ant-col-lg-pull-7{right:29.16666667%}.ant-col-lg-offset-7{margin-left:29.16666667%}.ant-col-lg-order-7{order:7}.ant-col-lg-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-lg-push-6{left:25%}.ant-col-lg-pull-6{right:25%}.ant-col-lg-offset-6{margin-left:25%}.ant-col-lg-order-6{order:6}.ant-col-lg-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-lg-push-5{left:20.83333333%}.ant-col-lg-pull-5{right:20.83333333%}.ant-col-lg-offset-5{margin-left:20.83333333%}.ant-col-lg-order-5{order:5}.ant-col-lg-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-lg-push-4{left:16.66666667%}.ant-col-lg-pull-4{right:16.66666667%}.ant-col-lg-offset-4{margin-left:16.66666667%}.ant-col-lg-order-4{order:4}.ant-col-lg-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-lg-push-3{left:12.5%}.ant-col-lg-pull-3{right:12.5%}.ant-col-lg-offset-3{margin-left:12.5%}.ant-col-lg-order-3{order:3}.ant-col-lg-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-lg-push-2{left:8.33333333%}.ant-col-lg-pull-2{right:8.33333333%}.ant-col-lg-offset-2{margin-left:8.33333333%}.ant-col-lg-order-2{order:2}.ant-col-lg-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-lg-push-1{left:4.16666667%}.ant-col-lg-pull-0.ant-col-rtl,.ant-col-lg-push-0,.ant-col-lg-push-1.ant-col-rtl,.ant-col-pull-0.ant-col-rtl,.ant-col-push-0{left:auto}.ant-col-lg-pull-1{right:4.16666667%}.ant-col-lg-pull-0,.ant-col-lg-push-0.ant-col-rtl,.ant-col-pull-0,.ant-col-push-0.ant-col-rtl{right:auto}.ant-col-lg-offset-1{margin-left:4.16666667%}.ant-col-lg-order-1{order:1}.ant-col-lg-0{display:none}.ant-col-lg-offset-0{margin-left:0}.ant-col-lg-order-0{order:0}.ant-col-lg-offset-0.ant-col-rtl{margin-right:0}.ant-col-lg-push-1.ant-col-rtl{right:4.16666667%}.ant-col-lg-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-lg-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-lg-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-lg-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-lg-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-lg-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-lg-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-lg-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-lg-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-lg-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-lg-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-lg-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-lg-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-lg-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-lg-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-lg-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-lg-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-lg-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-lg-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-lg-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-lg-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-lg-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-lg-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-lg-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-lg-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-lg-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-lg-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-lg-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-lg-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-lg-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-lg-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-lg-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-lg-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-lg-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-lg-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-lg-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-lg-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-lg-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-lg-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-lg-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-lg-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-lg-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-lg-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-lg-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-lg-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-lg-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-lg-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-lg-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-lg-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-lg-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-lg-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-lg-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-lg-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-lg-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-lg-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-lg-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-lg-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-lg-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-lg-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-lg-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-lg-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-lg-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-lg-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-lg-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-lg-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-lg-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-lg-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-lg-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-lg-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-lg-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-lg-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}@media (min-width:1200px){.ant-col-xl-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-xl-push-24{left:100%}.ant-col-xl-pull-24{right:100%}.ant-col-xl-offset-24{margin-left:100%}.ant-col-xl-order-24{order:24}.ant-col-xl-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-xl-push-23{left:95.83333333%}.ant-col-xl-pull-23{right:95.83333333%}.ant-col-xl-offset-23{margin-left:95.83333333%}.ant-col-xl-order-23{order:23}.ant-col-xl-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-xl-push-22{left:91.66666667%}.ant-col-xl-pull-22{right:91.66666667%}.ant-col-xl-offset-22{margin-left:91.66666667%}.ant-col-xl-order-22{order:22}.ant-col-xl-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-xl-push-21{left:87.5%}.ant-col-xl-pull-21{right:87.5%}.ant-col-xl-offset-21{margin-left:87.5%}.ant-col-xl-order-21{order:21}.ant-col-xl-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-xl-push-20{left:83.33333333%}.ant-col-xl-pull-20{right:83.33333333%}.ant-col-xl-offset-20{margin-left:83.33333333%}.ant-col-xl-order-20{order:20}.ant-col-xl-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-xl-push-19{left:79.16666667%}.ant-col-xl-pull-19{right:79.16666667%}.ant-col-xl-offset-19{margin-left:79.16666667%}.ant-col-xl-order-19{order:19}.ant-col-xl-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-xl-push-18{left:75%}.ant-col-xl-pull-18{right:75%}.ant-col-xl-offset-18{margin-left:75%}.ant-col-xl-order-18{order:18}.ant-col-xl-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-xl-push-17{left:70.83333333%}.ant-col-xl-pull-17{right:70.83333333%}.ant-col-xl-offset-17{margin-left:70.83333333%}.ant-col-xl-order-17{order:17}.ant-col-xl-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-xl-push-16{left:66.66666667%}.ant-col-xl-pull-16{right:66.66666667%}.ant-col-xl-offset-16{margin-left:66.66666667%}.ant-col-xl-order-16{order:16}.ant-col-xl-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-xl-push-15{left:62.5%}.ant-col-xl-pull-15{right:62.5%}.ant-col-xl-offset-15{margin-left:62.5%}.ant-col-xl-order-15{order:15}.ant-col-xl-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-xl-push-14{left:58.33333333%}.ant-col-xl-pull-14{right:58.33333333%}.ant-col-xl-offset-14{margin-left:58.33333333%}.ant-col-xl-order-14{order:14}.ant-col-xl-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-xl-push-13{left:54.16666667%}.ant-col-xl-pull-13{right:54.16666667%}.ant-col-xl-offset-13{margin-left:54.16666667%}.ant-col-xl-order-13{order:13}.ant-col-xl-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-xl-push-12{left:50%}.ant-col-xl-pull-12{right:50%}.ant-col-xl-offset-12{margin-left:50%}.ant-col-xl-order-12{order:12}.ant-col-xl-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-xl-push-11{left:45.83333333%}.ant-col-xl-pull-11{right:45.83333333%}.ant-col-xl-offset-11{margin-left:45.83333333%}.ant-col-xl-order-11{order:11}.ant-col-xl-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-xl-push-10{left:41.66666667%}.ant-col-xl-pull-10{right:41.66666667%}.ant-col-xl-offset-10{margin-left:41.66666667%}.ant-col-xl-order-10{order:10}.ant-col-xl-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-xl-push-9{left:37.5%}.ant-col-xl-pull-9{right:37.5%}.ant-col-xl-offset-9{margin-left:37.5%}.ant-col-xl-order-9{order:9}.ant-col-xl-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-xl-push-8{left:33.33333333%}.ant-col-xl-pull-8{right:33.33333333%}.ant-col-xl-offset-8{margin-left:33.33333333%}.ant-col-xl-order-8{order:8}.ant-col-xl-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-xl-push-7{left:29.16666667%}.ant-col-xl-pull-7{right:29.16666667%}.ant-col-xl-offset-7{margin-left:29.16666667%}.ant-col-xl-order-7{order:7}.ant-col-xl-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-xl-push-6{left:25%}.ant-col-xl-pull-6{right:25%}.ant-col-xl-offset-6{margin-left:25%}.ant-col-xl-order-6{order:6}.ant-col-xl-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-xl-push-5{left:20.83333333%}.ant-col-xl-pull-5{right:20.83333333%}.ant-col-xl-offset-5{margin-left:20.83333333%}.ant-col-xl-order-5{order:5}.ant-col-xl-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-xl-push-4{left:16.66666667%}.ant-col-xl-pull-4{right:16.66666667%}.ant-col-xl-offset-4{margin-left:16.66666667%}.ant-col-xl-order-4{order:4}.ant-col-xl-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-xl-push-3{left:12.5%}.ant-col-xl-pull-3{right:12.5%}.ant-col-xl-offset-3{margin-left:12.5%}.ant-col-xl-order-3{order:3}.ant-col-xl-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-xl-push-2{left:8.33333333%}.ant-col-xl-pull-2{right:8.33333333%}.ant-col-xl-offset-2{margin-left:8.33333333%}.ant-col-xl-order-2{order:2}.ant-col-xl-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-xl-push-1{left:4.16666667%}.ant-col-pull-0.ant-col-rtl,.ant-col-push-0,.ant-col-xl-pull-0.ant-col-rtl,.ant-col-xl-push-0,.ant-col-xl-push-1.ant-col-rtl{left:auto}.ant-col-xl-pull-1{right:4.16666667%}.ant-col-pull-0,.ant-col-push-0.ant-col-rtl,.ant-col-xl-pull-0,.ant-col-xl-push-0.ant-col-rtl{right:auto}.ant-col-xl-offset-1{margin-left:4.16666667%}.ant-col-xl-order-1{order:1}.ant-col-xl-0{display:none}.ant-col-xl-offset-0{margin-left:0}.ant-col-xl-order-0{order:0}.ant-col-xl-offset-0.ant-col-rtl{margin-right:0}.ant-col-xl-push-1.ant-col-rtl{right:4.16666667%}.ant-col-xl-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-xl-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-xl-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-xl-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-xl-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-xl-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-xl-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-xl-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-xl-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-xl-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-xl-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-xl-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-xl-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-xl-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-xl-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-xl-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-xl-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-xl-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-xl-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-xl-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-xl-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-xl-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-xl-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-xl-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-xl-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-xl-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-xl-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-xl-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-xl-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-xl-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-xl-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-xl-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-xl-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-xl-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-xl-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-xl-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-xl-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-xl-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-xl-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-xl-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-xl-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-xl-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-xl-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-xl-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-xl-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-xl-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-xl-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-xl-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-xl-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-xl-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-xl-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-xl-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-xl-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-xl-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-xl-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-xl-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-xl-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-xl-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-xl-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-xl-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-xl-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-xl-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-xl-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-xl-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-xl-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-xl-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-xl-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-xl-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-xl-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-xl-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-xl-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}@media (min-width:1600px){.ant-col-xxl-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-xxl-push-24{left:100%}.ant-col-xxl-pull-24{right:100%}.ant-col-xxl-offset-24{margin-left:100%}.ant-col-xxl-order-24{order:24}.ant-col-xxl-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-xxl-push-23{left:95.83333333%}.ant-col-xxl-pull-23{right:95.83333333%}.ant-col-xxl-offset-23{margin-left:95.83333333%}.ant-col-xxl-order-23{order:23}.ant-col-xxl-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-xxl-push-22{left:91.66666667%}.ant-col-xxl-pull-22{right:91.66666667%}.ant-col-xxl-offset-22{margin-left:91.66666667%}.ant-col-xxl-order-22{order:22}.ant-col-xxl-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-xxl-push-21{left:87.5%}.ant-col-xxl-pull-21{right:87.5%}.ant-col-xxl-offset-21{margin-left:87.5%}.ant-col-xxl-order-21{order:21}.ant-col-xxl-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-xxl-push-20{left:83.33333333%}.ant-col-xxl-pull-20{right:83.33333333%}.ant-col-xxl-offset-20{margin-left:83.33333333%}.ant-col-xxl-order-20{order:20}.ant-col-xxl-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-xxl-push-19{left:79.16666667%}.ant-col-xxl-pull-19{right:79.16666667%}.ant-col-xxl-offset-19{margin-left:79.16666667%}.ant-col-xxl-order-19{order:19}.ant-col-xxl-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-xxl-push-18{left:75%}.ant-col-xxl-pull-18{right:75%}.ant-col-xxl-offset-18{margin-left:75%}.ant-col-xxl-order-18{order:18}.ant-col-xxl-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-xxl-push-17{left:70.83333333%}.ant-col-xxl-pull-17{right:70.83333333%}.ant-col-xxl-offset-17{margin-left:70.83333333%}.ant-col-xxl-order-17{order:17}.ant-col-xxl-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-xxl-push-16{left:66.66666667%}.ant-col-xxl-pull-16{right:66.66666667%}.ant-col-xxl-offset-16{margin-left:66.66666667%}.ant-col-xxl-order-16{order:16}.ant-col-xxl-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-xxl-push-15{left:62.5%}.ant-col-xxl-pull-15{right:62.5%}.ant-col-xxl-offset-15{margin-left:62.5%}.ant-col-xxl-order-15{order:15}.ant-col-xxl-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-xxl-push-14{left:58.33333333%}.ant-col-xxl-pull-14{right:58.33333333%}.ant-col-xxl-offset-14{margin-left:58.33333333%}.ant-col-xxl-order-14{order:14}.ant-col-xxl-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-xxl-push-13{left:54.16666667%}.ant-col-xxl-pull-13{right:54.16666667%}.ant-col-xxl-offset-13{margin-left:54.16666667%}.ant-col-xxl-order-13{order:13}.ant-col-xxl-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-xxl-push-12{left:50%}.ant-col-xxl-pull-12{right:50%}.ant-col-xxl-offset-12{margin-left:50%}.ant-col-xxl-order-12{order:12}.ant-col-xxl-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-xxl-push-11{left:45.83333333%}.ant-col-xxl-pull-11{right:45.83333333%}.ant-col-xxl-offset-11{margin-left:45.83333333%}.ant-col-xxl-order-11{order:11}.ant-col-xxl-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-xxl-push-10{left:41.66666667%}.ant-col-xxl-pull-10{right:41.66666667%}.ant-col-xxl-offset-10{margin-left:41.66666667%}.ant-col-xxl-order-10{order:10}.ant-col-xxl-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-xxl-push-9{left:37.5%}.ant-col-xxl-pull-9{right:37.5%}.ant-col-xxl-offset-9{margin-left:37.5%}.ant-col-xxl-order-9{order:9}.ant-col-xxl-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-xxl-push-8{left:33.33333333%}.ant-col-xxl-pull-8{right:33.33333333%}.ant-col-xxl-offset-8{margin-left:33.33333333%}.ant-col-xxl-order-8{order:8}.ant-col-xxl-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-xxl-push-7{left:29.16666667%}.ant-col-xxl-pull-7{right:29.16666667%}.ant-col-xxl-offset-7{margin-left:29.16666667%}.ant-col-xxl-order-7{order:7}.ant-col-xxl-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-xxl-push-6{left:25%}.ant-col-xxl-pull-6{right:25%}.ant-col-xxl-offset-6{margin-left:25%}.ant-col-xxl-order-6{order:6}.ant-col-xxl-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-xxl-push-5{left:20.83333333%}.ant-col-xxl-pull-5{right:20.83333333%}.ant-col-xxl-offset-5{margin-left:20.83333333%}.ant-col-xxl-order-5{order:5}.ant-col-xxl-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-xxl-push-4{left:16.66666667%}.ant-col-xxl-pull-4{right:16.66666667%}.ant-col-xxl-offset-4{margin-left:16.66666667%}.ant-col-xxl-order-4{order:4}.ant-col-xxl-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-xxl-push-3{left:12.5%}.ant-col-xxl-pull-3{right:12.5%}.ant-col-xxl-offset-3{margin-left:12.5%}.ant-col-xxl-order-3{order:3}.ant-col-xxl-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-xxl-push-2{left:8.33333333%}.ant-col-xxl-pull-2{right:8.33333333%}.ant-col-xxl-offset-2{margin-left:8.33333333%}.ant-col-xxl-order-2{order:2}.ant-col-xxl-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-xxl-push-1{left:4.16666667%}.ant-col-pull-0.ant-col-rtl,.ant-col-push-0,.ant-col-xxl-pull-0.ant-col-rtl,.ant-col-xxl-push-0,.ant-col-xxl-push-1.ant-col-rtl{left:auto}.ant-col-xxl-pull-1{right:4.16666667%}.ant-col-pull-0,.ant-col-push-0.ant-col-rtl,.ant-col-xxl-pull-0,.ant-col-xxl-push-0.ant-col-rtl{right:auto}.ant-col-xxl-offset-1{margin-left:4.16666667%}.ant-col-xxl-order-1{order:1}.ant-col-xxl-0{display:none}.ant-col-xxl-offset-0{margin-left:0}.ant-col-xxl-order-0{order:0}.ant-col-xxl-offset-0.ant-col-rtl{margin-right:0}.ant-col-xxl-push-1.ant-col-rtl{right:4.16666667%}.ant-col-xxl-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-xxl-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-xxl-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-xxl-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-xxl-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-xxl-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-xxl-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-xxl-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-xxl-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-xxl-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-xxl-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-xxl-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-xxl-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-xxl-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-xxl-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-xxl-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-xxl-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-xxl-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-xxl-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-xxl-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-xxl-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-xxl-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-xxl-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-xxl-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-xxl-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-xxl-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-xxl-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-xxl-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-xxl-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-xxl-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-xxl-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-xxl-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-xxl-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-xxl-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-xxl-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-xxl-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-xxl-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-xxl-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-xxl-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-xxl-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-xxl-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-xxl-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-xxl-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-xxl-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-xxl-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-xxl-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-xxl-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-xxl-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-xxl-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-xxl-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-xxl-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-xxl-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-xxl-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-xxl-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-xxl-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-xxl-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-xxl-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-xxl-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-xxl-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-xxl-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-xxl-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-xxl-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-xxl-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-xxl-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-xxl-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-xxl-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-xxl-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-xxl-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-xxl-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-xxl-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-xxl-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}.ant-input-affix-wrapper{position:relative;width:100%;padding:3px 7px;color:rgba(0,0,0,.85);font-size:12px;line-height:1.66667;background-image:none;border:1px solid #d9d9d9;border-radius:2px;display:inline-flex}.ant-input-affix-wrapper::-moz-placeholder{opacity:1}.ant-input-affix-wrapper::placeholder{color:#bfbfbf;user-select:none}.ant-input-affix-wrapper-disabled,.ant-input-affix-wrapper[disabled]{background-color:#f5f5f5;cursor:not-allowed;color:rgba(0,0,0,.25);pointer-events:none;opacity:1}.ant-input-affix-wrapper:placeholder-shown{text-overflow:ellipsis}.ant-input-affix-wrapper:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-input-affix-wrapper:hover{border-right-width:0;border-left-width:1px!important}.ant-input-affix-wrapper-focused,.ant-input-affix-wrapper:focus{border-color:#40a9ff;box-shadow:0 0 0 2px rgba(24,144,255,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-input-affix-wrapper-focused,.ant-input-rtl .ant-input-affix-wrapper:focus{border-right-width:0;border-left-width:1px!important}.ant-input-affix-wrapper-disabled:hover,.ant-input-affix-wrapper[disabled]:hover{border-color:#d9d9d9;border-right-width:1px}.ant-input-affix-wrapper-disabled{border-color:#d9d9d9;box-shadow:none}.ant-input-affix-wrapper[disabled]{border-color:#d9d9d9;box-shadow:none}.ant-input-affix-wrapper-borderless,.ant-input-affix-wrapper-borderless-disabled,.ant-input-affix-wrapper-borderless-focused,.ant-input-affix-wrapper-borderless:focus,.ant-input-affix-wrapper-borderless:hover,.ant-input-affix-wrapper-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-input-affix-wrapper{max-width:100%;height:auto;min-height:28px;line-height:1.66667;vertical-align:bottom;transition:all .3s,height 0s}.ant-input-affix-wrapper-lg{padding:3.4px 11px;font-size:14px}.ant-input-affix-wrapper-sm{padding:0 7px}.ant-input-affix-wrapper-stepperless[type=number]{-moz-appearance:textfield}.ant-input-affix-wrapper-stepperless[type=number] ::-webkit-outer-spin-button,.ant-input-affix-wrapper-stepperless[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover{border-color:#40a9ff;border-right-width:1px;z-index:1}.ant-input-rtl .ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover{border-right-width:0;border-left-width:1px!important}.ant-input-search-with-button .ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover{z-index:0}.ant-input-affix-wrapper-focused,.ant-input-affix-wrapper:focus{z-index:1}.ant-input-affix-wrapper-disabled .ant-input[disabled]{background:0 0}.ant-input-affix-wrapper>input.ant-input{padding:0;border:none;outline:0}.ant-input-affix-wrapper>input.ant-input:focus{box-shadow:none!important}.ant-input-affix-wrapper::before{width:0;visibility:hidden;content:'\a0'}.ant-input-prefix,.ant-input-suffix{display:flex;flex:none;align-items:center}.ant-input-prefix>:not(:last-child),.ant-input-suffix>:not(:last-child){margin-right:8px}.ant-input-show-count-suffix{color:rgba(0,0,0,.45)}.ant-input-show-count-has-suffix{margin-right:2px}.ant-input-prefix{margin-right:4px}.ant-input-suffix{margin-left:4px}.ant-input-clear-icon,.anticon.ant-input-clear-icon{margin:0;color:rgba(0,0,0,.25);font-size:12px;vertical-align:-1px;cursor:pointer;transition:color .3s}.ant-input-clear-icon:hover,.anticon.ant-input-clear-icon:hover{color:rgba(0,0,0,.45)}.ant-input-clear-icon:active,.anticon.ant-input-clear-icon:active{color:rgba(0,0,0,.85)}.ant-input-clear-icon-hidden,.anticon.ant-input-clear-icon-hidden{visibility:hidden}.ant-input-clear-icon-has-suffix,.anticon.ant-input-clear-icon-has-suffix{margin:0 4px}.ant-input,.ant-input-group{box-sizing:border-box;margin:0;line-height:1.66667;list-style:none;font-feature-settings:tnum;width:100%}.ant-input-affix-wrapper-textarea-with-clear-btn{padding:0!important;border:0!important}.ant-input-affix-wrapper-textarea-with-clear-btn .ant-input-clear-icon{position:absolute;top:8px;right:8px;z-index:1}.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input,.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:hover{background:#fff;border-color:#ff4d4f}.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input-focused,.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:focus{border-color:#ff7875;box-shadow:0 0 0 2px rgba(255,77,79,.2);border-right-width:1px;outline:0}.ant-input-status-error .ant-input-prefix{color:#ff4d4f}.ant-input-status-warning:not(.ant-input-disabled):not(.ant-input-borderless).ant-input,.ant-input-status-warning:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:hover{background:#fff;border-color:#faad14}.ant-input-status-warning:not(.ant-input-disabled):not(.ant-input-borderless).ant-input-focused,.ant-input-status-warning:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:focus{border-color:#ffc53d;box-shadow:0 0 0 2px rgba(250,173,20,.2);border-right-width:1px;outline:0}.ant-input-status-warning .ant-input-prefix{color:#faad14}.ant-input-affix-wrapper-status-error:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper,.ant-input-affix-wrapper-status-error:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper:hover{background:#fff;border-color:#ff4d4f}.ant-input-affix-wrapper-status-error:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper-focused,.ant-input-affix-wrapper-status-error:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper:focus{border-color:#ff7875;box-shadow:0 0 0 2px rgba(255,77,79,.2);border-right-width:1px;outline:0}.ant-input-affix-wrapper-status-error .ant-input-prefix{color:#ff4d4f}.ant-input-affix-wrapper-status-warning:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper,.ant-input-affix-wrapper-status-warning:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper:hover{background:#fff;border-color:#faad14}.ant-input-affix-wrapper-status-warning:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper-focused,.ant-input-affix-wrapper-status-warning:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper:focus{border-color:#ffc53d;box-shadow:0 0 0 2px rgba(250,173,20,.2);border-right-width:1px;outline:0}.ant-input-affix-wrapper-status-warning .ant-input-prefix{color:#faad14}.ant-input-textarea-status-error.ant-input-textarea-has-feedback .ant-input,.ant-input-textarea-status-success.ant-input-textarea-has-feedback .ant-input,.ant-input-textarea-status-validating.ant-input-textarea-has-feedback .ant-input,.ant-input-textarea-status-warning.ant-input-textarea-has-feedback .ant-input{padding-right:24px}.ant-input-group-wrapper-status-error .ant-input-group-addon{color:#ff4d4f;border-color:#ff4d4f}.ant-input-group-wrapper-status-warning .ant-input-group-addon{color:#faad14;border-color:#faad14}.ant-input{font-variant:tabular-nums;position:relative;display:inline-block;padding:3px 7px;color:rgba(0,0,0,.85);font-size:12px;background-image:none;border:1px solid #d9d9d9;border-radius:2px}.ant-input::-moz-placeholder{opacity:1}.ant-input::placeholder{color:#bfbfbf;user-select:none}.ant-input-disabled,.ant-input[disabled]{background-color:#f5f5f5;cursor:not-allowed;color:rgba(0,0,0,.25);pointer-events:none;opacity:1}.ant-input:placeholder-shown{text-overflow:ellipsis}.ant-input:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-input:hover{border-right-width:0;border-left-width:1px!important}.ant-input-focused,.ant-input:focus{border-color:#40a9ff;box-shadow:0 0 0 2px rgba(24,144,255,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-input-focused,.ant-input-rtl .ant-input:focus{border-right-width:0;border-left-width:1px!important}.ant-input-disabled:hover,.ant-input[disabled]:hover{border-color:#d9d9d9;border-right-width:1px}.ant-input-disabled{border-color:#d9d9d9;box-shadow:none}.ant-input[disabled]{border-color:#d9d9d9;box-shadow:none}.ant-input-borderless,.ant-input-borderless-disabled,.ant-input-borderless-focused,.ant-input-borderless:focus,.ant-input-borderless:hover,.ant-input-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-input{max-width:100%;height:auto;min-height:28px;line-height:1.66667;vertical-align:bottom;transition:all .3s,height 0s}.ant-input-lg{padding:3.4px 11px;font-size:14px}.ant-input-group,.ant-input-group-addon{position:relative;color:rgba(0,0,0,.85);font-size:12px}.ant-input-sm{padding:0 7px}.ant-input-stepperless[type=number]{-moz-appearance:textfield}.ant-input-stepperless[type=number] ::-webkit-outer-spin-button,.ant-input-stepperless[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ant-input-group{padding:0;font-variant:tabular-nums;display:table;border-collapse:separate;border-spacing:0}.ant-input-group[class*=col-]{float:none;padding-right:0;padding-left:0}.ant-input-group>[class*=col-]{padding-right:8px}.ant-input-group>[class*=col-]:last-child{padding-right:0}.ant-input-group-addon,.ant-input-group-wrap,.ant-input-group>.ant-input{display:table-cell}.ant-input-group-addon:not(:first-child):not(:last-child),.ant-input-group-wrap:not(:first-child):not(:last-child),.ant-input-group>.ant-input:not(:first-child):not(:last-child){border-radius:0}.ant-input-group-addon,.ant-input-group-wrap{width:1px;white-space:nowrap;vertical-align:middle}.ant-input-group-wrap>*{display:block!important}.ant-input-group .ant-input{float:left;width:100%;margin-bottom:0;text-align:inherit}.ant-input-group .ant-input:focus,.ant-input-group .ant-input:hover{z-index:1;border-right-width:1px}.ant-input-search-with-button .ant-input-group .ant-input:hover{z-index:0}.ant-input-group-addon{padding:0 7px;font-weight:400;text-align:center;border:1px solid #d9d9d9;border-radius:2px;transition:all .3s}.ant-input-group-addon .ant-select{margin:-4px -7px}.ant-input-group-addon .ant-select.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{background-color:inherit;border:1px solid transparent;box-shadow:none}.ant-input-group-addon .ant-select-focused .ant-select-selector,.ant-input-group-addon .ant-select-open .ant-select-selector{color:#1890ff}.ant-input-group-addon .ant-cascader-picker{margin:-9px -8px;background-color:transparent}.ant-input-group-addon .ant-cascader-picker .ant-cascader-input{text-align:left;border:0;box-shadow:none}.ant-input-group-addon:last-child,.ant-input-group-addon:last-child .ant-select .ant-select-selector,.ant-input-group>.ant-input-affix-wrapper:not(:first-child) .ant-input,.ant-input-group>.ant-input:last-child,.ant-input-group>.ant-input:last-child .ant-select .ant-select-selector{border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-group .ant-input-affix-wrapper:not(:last-child),.ant-input-group-addon:first-child,.ant-input-group-addon:first-child .ant-select .ant-select-selector,.ant-input-group>.ant-input-affix-wrapper:not(:last-child) .ant-input,.ant-input-group>.ant-input:first-child,.ant-input-group>.ant-input:first-child .ant-select .ant-select-selector{border-top-right-radius:0;border-bottom-right-radius:0}.ant-input-group-addon:first-child{border-right:0}.ant-input-group-addon:last-child{border-left:0}.ant-input-group-lg .ant-input,.ant-input-group-lg>.ant-input-group-addon{padding:3.4px 11px;font-size:14px}.ant-input-group-sm .ant-input,.ant-input-group-sm>.ant-input-group-addon{padding:0 7px}.ant-input-group-lg .ant-select-single .ant-select-selector{height:32px}.ant-input-group-sm .ant-select-single .ant-select-selector{height:22px}.ant-input-search-button,.ant-input[type=color]{height:28px}.ant-input-search .ant-input-group .ant-input-affix-wrapper:not(:last-child){border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-input-group .ant-input-affix-wrapper:not(:first-child),.ant-input-search .ant-input-group .ant-input-affix-wrapper:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-group.ant-input-group-compact{display:block}.ant-input-group.ant-input-group-compact::after,.ant-input-group.ant-input-group-compact::before{display:table;content:''}.ant-input-group.ant-input-group-compact::after{clear:both}.ant-input-group.ant-input-group-compact-addon:not(:first-child):not(:last-child),.ant-input-group.ant-input-group-compact-wrap:not(:first-child):not(:last-child),.ant-input-group.ant-input-group-compact>.ant-input:not(:first-child):not(:last-child){border-right-width:1px}.ant-input-group.ant-input-group-compact-addon:not(:first-child):not(:last-child):focus,.ant-input-group.ant-input-group-compact-addon:not(:first-child):not(:last-child):hover,.ant-input-group.ant-input-group-compact-wrap:not(:first-child):not(:last-child):focus,.ant-input-group.ant-input-group-compact-wrap:not(:first-child):not(:last-child):hover,.ant-input-group.ant-input-group-compact>.ant-input:not(:first-child):not(:last-child):focus,.ant-input-group.ant-input-group-compact>.ant-input:not(:first-child):not(:last-child):hover{z-index:1}.ant-input-group.ant-input-group-compact>*{display:inline-block;float:none;vertical-align:top;border-radius:0}.ant-input-group.ant-input-group-compact>.ant-input-affix-wrapper,.ant-input-group.ant-input-group-compact>.ant-picker-range{display:inline-flex}.ant-input-group.ant-input-group-compact>:not(:last-child){margin-right:-1px;border-right-width:1px}.ant-input-group.ant-input-group-compact .ant-input{float:none}.ant-input-group.ant-input-group-compact>.ant-cascader-picker .ant-input,.ant-input-group.ant-input-group-compact>.ant-input-group-wrapper .ant-input,.ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input,.ant-input-group.ant-input-group-compact>.ant-select>.ant-select-selector{border-right-width:1px;border-radius:0}.ant-input-group.ant-input-group-compact>.ant-cascader-picker .ant-input:focus,.ant-input-group.ant-input-group-compact>.ant-cascader-picker .ant-input:hover,.ant-input-group.ant-input-group-compact>.ant-input-group-wrapper .ant-input:focus,.ant-input-group.ant-input-group-compact>.ant-input-group-wrapper .ant-input:hover,.ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input:focus,.ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input:hover,.ant-input-group.ant-input-group-compact>.ant-select-focused,.ant-input-group.ant-input-group-compact>.ant-select>.ant-select-arrow,.ant-input-group.ant-input-group-compact>.ant-select>.ant-select-selector:focus,.ant-input-group.ant-input-group-compact>.ant-select>.ant-select-selector:hover{z-index:1}.ant-input-group.ant-input-group-compact>.ant-cascader-picker:first-child .ant-input,.ant-input-group.ant-input-group-compact>.ant-select-auto-complete:first-child .ant-input,.ant-input-group.ant-input-group-compact>.ant-select:first-child>.ant-select-selector,.ant-input-group.ant-input-group-compact>:first-child{border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-input-group.ant-input-group-compact>.ant-cascader-picker-focused:last-child .ant-input,.ant-input-group.ant-input-group-compact>.ant-cascader-picker:last-child .ant-input,.ant-input-group.ant-input-group-compact>.ant-select:last-child>.ant-select-selector,.ant-input-group.ant-input-group-compact>:last-child{border-right-width:1px;border-top-right-radius:2px;border-bottom-right-radius:2px}.ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input{vertical-align:top}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper+.ant-input-group-wrapper{margin-left:-1px}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper+.ant-input-group-wrapper .ant-input-affix-wrapper,.ant-input-group.ant-input-group-compact .ant-input-group-wrapper:not(:last-child).ant-input-search>.ant-input-group>.ant-input-group-addon>.ant-input-search-button{border-radius:0}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper:not(:last-child).ant-input-search>.ant-input-group>.ant-input{border-radius:2px 0 0 2px}.ant-input-group-rtl .ant-input-group-addon:first-child,.ant-input-group>.ant-input-rtl:first-child{border-radius:0 2px 2px 0}.ant-input-group-rtl .ant-input-group-addon:first-child{border-right:1px solid #d9d9d9;border-left:0}.ant-input-group-rtl .ant-input-group-addon:last-child{border-right:0;border-left:1px solid #d9d9d9}.ant-input-group-rtl.ant-input-group .ant-input-affix-wrapper:not(:first-child),.ant-input-group-rtl.ant-input-group-addon:last-child,.ant-input-group-rtl.ant-input-group>.ant-input:last-child{border-radius:2px 0 0 2px}.ant-input-group-rtl.ant-input-group .ant-input-affix-wrapper:not(:last-child),.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-cascader-picker:first-child .ant-input,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-select-auto-complete:first-child .ant-input,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-select:first-child>.ant-select-selector,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>:first-child{border-radius:0 2px 2px 0}.ant-input-group-rtl.ant-input-group.ant-input-group-compact>:not(:last-child){margin-right:0;margin-left:-1px;border-left-width:1px}.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-cascader-picker-focused:last-child .ant-input,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-cascader-picker:last-child .ant-input,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-select-auto-complete:last-child .ant-input,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-select:last-child>.ant-select-selector,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>:last-child{border-left-width:1px;border-radius:2px 0 0 2px}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper-rtl+.ant-input-group-wrapper-rtl{margin-right:-1px;margin-left:0}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper-rtl:not(:last-child).ant-input-search>.ant-input-group>.ant-input{border-radius:0 2px 2px 0}.ant-input-group-wrapper{display:inline-block;width:100%;text-align:start;vertical-align:top}.ant-input-password-icon.anticon{color:rgba(0,0,0,.45);cursor:pointer;transition:all .3s}.ant-input-password-icon.anticon:hover{color:rgba(0,0,0,.85)}.ant-input[type=color].ant-input-lg{height:32px}.ant-input[type=color].ant-input-sm{height:22px;padding-top:3px;padding-bottom:3px}.ant-input-textarea-show-count>.ant-input{height:100%}.ant-input-textarea-show-count::after{float:right;color:rgba(0,0,0,.45);white-space:nowrap;content:attr(data-count);pointer-events:none}.ant-input-textarea-show-count.ant-input-textarea-in-form-item::after{margin-bottom:-22px}.ant-input-textarea-suffix{position:absolute;top:0;right:7px;bottom:0;z-index:1;display:inline-flex;align-items:center;margin:auto}.ant-input-search .ant-input:focus,.ant-input-search .ant-input:hover{border-color:#40a9ff}.ant-input-search .ant-input:focus+.ant-input-group-addon .ant-input-search-button:not(.ant-btn-primary),.ant-input-search .ant-input:hover+.ant-input-group-addon .ant-input-search-button:not(.ant-btn-primary){border-left-color:#40a9ff}.ant-input-search .ant-input-affix-wrapper{border-radius:0}.ant-input-search .ant-input-lg{line-height:1.66647}.ant-input-search>.ant-input-group>.ant-input-group-addon:last-child{left:-1px;padding:0;border:0}.ant-input-search>.ant-input-group>.ant-input-group-addon:last-child .ant-input-search-button{padding-top:0;padding-bottom:0;border-radius:0 2px 2px 0}.ant-input-search>.ant-input-group>.ant-input-group-addon:last-child .ant-input-search-button:not(.ant-btn-primary){color:rgba(0,0,0,.45)}.ant-input-search>.ant-input-group>.ant-input-group-addon:last-child .ant-input-search-button:not(.ant-btn-primary).ant-btn-loading::before{top:0;right:0;bottom:0;left:0}.ant-input-search-button:focus,.ant-input-search-button:hover{z-index:1}.ant-input-search-large .ant-input-search-button{height:32px}.ant-input-search-small .ant-input-search-button{height:22px}.ant-input-affix-wrapper.ant-input-affix-wrapper-rtl>input.ant-input{border:none;outline:0}.ant-input-affix-wrapper-rtl .ant-input-prefix{margin:0 0 0 4px}.ant-input-affix-wrapper-rtl .ant-input-suffix{margin:0 4px 0 0}.ant-input-textarea-rtl.ant-input-textarea-show-count::after{text-align:left}.ant-input-affix-wrapper-rtl .ant-input-clear-icon-has-suffix{margin-right:0;margin-left:4px}.ant-input-affix-wrapper-rtl .ant-input-clear-icon{right:auto;left:8px}.ant-input-search-rtl .ant-input:focus+.ant-input-group-addon .ant-input-search-button:not(.ant-btn-primary),.ant-input-search-rtl .ant-input:hover+.ant-input-group-addon .ant-input-search-button:not(.ant-btn-primary){border-right-color:#40a9ff;border-left-color:#d9d9d9}.ant-input-search-rtl>.ant-input-group>.ant-input-affix-wrapper-focused,.ant-input-search-rtl>.ant-input-group>.ant-input-affix-wrapper:hover{border-right-color:#40a9ff}.ant-input-search-rtl>.ant-input-group>.ant-input-group-addon{right:-1px;left:auto}.ant-input-search-rtl>.ant-input-group>.ant-input-group-addon .ant-input-search-button{border-radius:2px 0 0 2px}@media screen and (-ms-high-contrast:active),(-ms-high-contrast:none){.ant-input{height:28px}.ant-input-lg{height:32px}.ant-input-sm{height:22px}.ant-input-affix-wrapper>input.ant-input{height:auto}}textarea.nz-textarea-autosize-measuring{height:auto!important;overflow:hidden!important;padding:2px 0!important}.ant-input-search-rtl.ant-input-search-enter-button input+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only,.ant-input-search-rtl.ant-input-search-enter-button+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only{width:28px;height:28px}.ant-input-search-rtl.ant-input-search-enter-button input+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only.ant-btn-sm,.ant-input-search-rtl.ant-input-search-enter-button+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only.ant-btn-sm{width:22px;height:22px}.ant-input-search-rtl.ant-input-search-enter-button input+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only.ant-btn-lg,.ant-input-search-rtl.ant-input-search-enter-button+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only.ant-btn-lg{width:32px;height:32px}.ant-input-affix-wrapper-textarea-with-clear-btn .ant-input-suffix{margin-left:0}nz-form-item-feedback-icon.ant-input-suffix{display:flex;flex:none;align-items:center;pointer-events:none;position:absolute;top:0;right:0;z-index:1;height:100%;margin-right:8px;margin-left:4px}.ant-input-number,.ant-input-number-group{margin:0;line-height:1.66667;box-sizing:border-box;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum}.ant-input-status-error.ant-input-has-feedback,.ant-input-status-success.ant-input-has-feedback,.ant-input-status-validating.ant-input-has-feedback,.ant-input-status-warning.ant-input-has-feedback{padding-right:16px}.ant-input-textarea-show-count{display:block;position:relative}.ant-input-number-affix-wrapper{min-width:0;color:rgba(0,0,0,.85);font-size:12px;line-height:1.66667;background-color:#fff;background-image:none;border:1px solid #d9d9d9;border-radius:2px;transition:all .3s;position:relative;display:inline-flex;width:90px;padding:0;padding-inline-start:7px}.ant-input-number-affix-wrapper::-moz-placeholder{opacity:1}.ant-input-number-affix-wrapper::placeholder{color:#bfbfbf;user-select:none}.ant-input-number-affix-wrapper-disabled,.ant-input-number-affix-wrapper[disabled]{background-color:#f5f5f5;color:rgba(0,0,0,.25);opacity:1;cursor:not-allowed;pointer-events:none}.ant-input-number-affix-wrapper:placeholder-shown{text-overflow:ellipsis}.ant-input-number-affix-wrapper:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-input-number-affix-wrapper:hover{border-right-width:0;border-left-width:1px!important}.ant-input-number-affix-wrapper-focused,.ant-input-number-affix-wrapper:focus{border-color:#40a9ff;box-shadow:0 0 0 2px rgba(24,144,255,.2);border-right-width:1px;outline:0;z-index:1}.ant-input-rtl .ant-input-number-affix-wrapper-focused,.ant-input-rtl .ant-input-number-affix-wrapper:focus{border-right-width:0;border-left-width:1px!important}.ant-input-number-affix-wrapper-disabled:hover,.ant-input-number-affix-wrapper[disabled]:hover{border-color:#d9d9d9;border-right-width:1px}.ant-input-number-affix-wrapper-disabled{border-color:#d9d9d9;box-shadow:none}.ant-input-number-affix-wrapper[disabled]{border-color:#d9d9d9;box-shadow:none}.ant-input-number-affix-wrapper-borderless,.ant-input-number-affix-wrapper-borderless-disabled,.ant-input-number-affix-wrapper-borderless-focused,.ant-input-number-affix-wrapper-borderless:focus,.ant-input-number-affix-wrapper-borderless:hover,.ant-input-number-affix-wrapper-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-input-number-affix-wrapper{max-width:100%;height:auto;min-height:28px;line-height:1.66667;vertical-align:bottom;transition:all .3s,height 0s}.ant-input-number-affix-wrapper-lg{padding:3.4px 11px;font-size:14px}.ant-input-number-affix-wrapper-sm{padding:0 7px}.ant-input-number-affix-wrapper-stepperless[type=number]{-moz-appearance:textfield}.ant-input-number-affix-wrapper-stepperless[type=number] ::-webkit-outer-spin-button,.ant-input-number-affix-wrapper-stepperless[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ant-input-number-affix-wrapper:not(.ant-input-number-affix-wrapper-disabled):hover{border-color:#40a9ff;border-right-width:1px;z-index:1}.ant-input-rtl .ant-input-number-affix-wrapper:not(.ant-input-number-affix-wrapper-disabled):hover{border-right-width:0;border-left-width:1px!important}.ant-input-number-affix-wrapper-disabled .ant-input-number[disabled]{background:0 0}.ant-input-number-affix-wrapper>div.ant-input-number{width:100%;border:none;outline:0}.ant-input-number-affix-wrapper>div.ant-input-number.ant-input-number-focused{box-shadow:none!important}.ant-input-number-affix-wrapper input.ant-input-number-input{padding:0}.ant-input-number-affix-wrapper::before{width:0;visibility:hidden;content:'\a0'}.ant-input-number-affix-wrapper .ant-input-number-handler-wrap{z-index:2}.ant-input-number-prefix,.ant-input-number-suffix{display:flex;flex:none;align-items:center;pointer-events:none}.ant-input-number-prefix{margin-inline-end:4px}.ant-input-number-suffix{position:absolute;top:0;right:0;z-index:1;height:100%;margin-right:7px;margin-left:4px}.ant-input-number-group-wrapper .ant-input-number-affix-wrapper{width:100%}.ant-input-number-status-error:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number,.ant-input-number-status-error:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number:hover{background:#fff;border-color:#ff4d4f}.ant-input-number-status-error:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number-focused,.ant-input-number-status-error:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number:focus{border-color:#ff7875;box-shadow:0 0 0 2px rgba(255,77,79,.2);border-right-width:1px;outline:0}.ant-input-number-status-error .ant-input-number-prefix{color:#ff4d4f}.ant-input-number-status-warning:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number,.ant-input-number-status-warning:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number:hover{background:#fff;border-color:#faad14}.ant-input-number-status-warning:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number-focused,.ant-input-number-status-warning:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number:focus{border-color:#ffc53d;box-shadow:0 0 0 2px rgba(250,173,20,.2);border-right-width:1px;outline:0}.ant-input-number-status-warning .ant-input-number-prefix{color:#faad14}.ant-input-number-affix-wrapper-status-error:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper,.ant-input-number-affix-wrapper-status-error:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper:hover{background:#fff;border-color:#ff4d4f}.ant-input-number-affix-wrapper-status-error:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper-focused,.ant-input-number-affix-wrapper-status-error:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper:focus{border-color:#ff7875;box-shadow:0 0 0 2px rgba(255,77,79,.2);border-right-width:1px;outline:0}.ant-input-number-affix-wrapper-status-error .ant-input-number-prefix{color:#ff4d4f}.ant-input-number-affix-wrapper-status-warning:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper,.ant-input-number-affix-wrapper-status-warning:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper:hover{background:#fff;border-color:#faad14}.ant-input-number-affix-wrapper-status-warning:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper-focused,.ant-input-number-affix-wrapper-status-warning:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper:focus{border-color:#ffc53d;box-shadow:0 0 0 2px rgba(250,173,20,.2);border-right-width:1px;outline:0}.ant-input-number-affix-wrapper-status-warning .ant-input-number-prefix{color:#faad14}.ant-input-number-group-wrapper-status-error .ant-input-number-group-addon{color:#ff4d4f;border-color:#ff4d4f}.ant-input-number-group-wrapper-status-warning .ant-input-number-group-addon{color:#faad14;border-color:#faad14}.ant-input-number{position:relative;min-width:0;color:rgba(0,0,0,.85);font-size:12px;background-color:#fff;background-image:none;transition:all .3s;display:inline-block;width:90px;padding:0;border:1px solid #d9d9d9;border-radius:2px}.ant-input-number::-moz-placeholder{opacity:1}.ant-input-number::placeholder{color:#bfbfbf;user-select:none}.ant-input-number:placeholder-shown{text-overflow:ellipsis}.ant-input-rtl .ant-input-number:hover{border-right-width:0;border-left-width:1px!important}.ant-input-number-focused,.ant-input-number:focus{border-color:#40a9ff;box-shadow:0 0 0 2px rgba(24,144,255,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-input-number-focused,.ant-input-rtl .ant-input-number:focus{border-right-width:0;border-left-width:1px!important}.ant-input-number[disabled]{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;color:rgba(0,0,0,.25);pointer-events:none}.ant-input-number-group,.ant-input-number-group-addon{color:rgba(0,0,0,.85);font-size:12px;position:relative}.ant-input-number[disabled]:hover{border-color:#d9d9d9;border-right-width:1px}.ant-input-number-borderless,.ant-input-number-borderless-disabled,.ant-input-number-borderless-focused,.ant-input-number-borderless:focus,.ant-input-number-borderless:hover,.ant-input-number-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-input-number{max-width:100%;height:auto;min-height:28px;line-height:1.66667;vertical-align:bottom;transition:all .3s,height 0s}.ant-input-number-stepperless[type=number]{-moz-appearance:textfield}.ant-input-number-stepperless[type=number] ::-webkit-outer-spin-button,.ant-input-number-stepperless[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ant-input-number-group{padding:0;display:table;width:100%;border-collapse:separate;border-spacing:0}.ant-input-number-group[class*=col-]{float:none;padding-right:0;padding-left:0}.ant-input-number-group>[class*=col-]{padding-right:8px}.ant-input-number-group>[class*=col-]:last-child{padding-right:0}.ant-input-number-group-addon,.ant-input-number-group-wrap,.ant-input-number-group>.ant-input-number{display:table-cell}.ant-input-number-group-addon:not(:first-child):not(:last-child),.ant-input-number-group-wrap:not(:first-child):not(:last-child),.ant-input-number-group>.ant-input-number:not(:first-child):not(:last-child){border-radius:0}.ant-input-number-group-addon,.ant-input-number-group-wrap{width:1px;white-space:nowrap;vertical-align:middle}.ant-input-number-group-wrap>*{display:block!important}.ant-input-number-group .ant-input-number{float:left;width:100%;margin-bottom:0;text-align:inherit}.ant-input-number-group .ant-input-number:focus,.ant-input-number-group .ant-input-number:hover{z-index:1;border-right-width:1px}.ant-input-search-with-button .ant-input-number-group .ant-input-number:hover{z-index:0}.ant-input-number-group.ant-input-number-group-compact-addon:not(:first-child):not(:last-child):focus,.ant-input-number-group.ant-input-number-group-compact-addon:not(:first-child):not(:last-child):hover,.ant-input-number-group.ant-input-number-group-compact-wrap:not(:first-child):not(:last-child):focus,.ant-input-number-group.ant-input-number-group-compact-wrap:not(:first-child):not(:last-child):hover,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker .ant-input:focus,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker .ant-input:hover,.ant-input-number-group.ant-input-number-group-compact>.ant-input-group-wrapper .ant-input:focus,.ant-input-number-group.ant-input-number-group-compact>.ant-input-group-wrapper .ant-input:hover,.ant-input-number-group.ant-input-number-group-compact>.ant-input-number:not(:first-child):not(:last-child):focus,.ant-input-number-group.ant-input-number-group-compact>.ant-input-number:not(:first-child):not(:last-child):hover,.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete .ant-input:focus,.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete .ant-input:hover,.ant-input-number-group.ant-input-number-group-compact>.ant-select-focused,.ant-input-number-group.ant-input-number-group-compact>.ant-select>.ant-select-arrow,.ant-input-number-group.ant-input-number-group-compact>.ant-select>.ant-select-selector:focus,.ant-input-number-group.ant-input-number-group-compact>.ant-select>.ant-select-selector:hover{z-index:1}.ant-input-number-group-addon{padding:0 7px;font-weight:400;text-align:center;background-color:#fafafa;border:1px solid #d9d9d9;border-radius:2px;transition:all .3s}.ant-input-number-group-addon .ant-select{margin:-4px -7px}.ant-input-number-group-addon .ant-select.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{background-color:inherit;border:1px solid transparent;box-shadow:none}.ant-input-number-group-addon .ant-select-focused .ant-select-selector,.ant-input-number-group-addon .ant-select-open .ant-select-selector{color:#1890ff}.ant-input-number-group-addon .ant-cascader-picker{margin:-9px -8px;background-color:transparent}.ant-input-number-group-addon .ant-cascader-picker .ant-cascader-input{text-align:left;border:0;box-shadow:none}.ant-input-number-group-addon:last-child,.ant-input-number-group-addon:last-child .ant-select .ant-select-selector,.ant-input-number-group>.ant-input-number-affix-wrapper:not(:first-child) .ant-input-number,.ant-input-number-group>.ant-input-number:last-child,.ant-input-number-group>.ant-input-number:last-child .ant-select .ant-select-selector{border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-number-group .ant-input-number-affix-wrapper:not(:last-child),.ant-input-number-group-addon:first-child,.ant-input-number-group-addon:first-child .ant-select .ant-select-selector,.ant-input-number-group>.ant-input-number-affix-wrapper:not(:last-child) .ant-input-number,.ant-input-number-group>.ant-input-number:first-child,.ant-input-number-group>.ant-input-number:first-child .ant-select .ant-select-selector{border-top-right-radius:0;border-bottom-right-radius:0}.ant-input-number-group-addon:first-child{border-right:0}.ant-input-number-group-addon:last-child{border-left:0}.ant-input-number-group-lg .ant-input-number,.ant-input-number-group-lg>.ant-input-number-group-addon{padding:3.4px 11px;font-size:14px}.ant-input-number-group-sm .ant-input-number,.ant-input-number-group-sm>.ant-input-number-group-addon{padding:0 7px}.ant-input-number-group-lg .ant-select-single .ant-select-selector{height:32px}.ant-input-number-group-sm .ant-select-single .ant-select-selector{height:22px}.ant-input-search .ant-input-number-group .ant-input-number-affix-wrapper:not(:last-child){border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-input-number-group .ant-input-number-affix-wrapper:not(:first-child),.ant-input-search .ant-input-number-group .ant-input-number-affix-wrapper:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-number-group.ant-input-number-group-compact{display:block}.ant-input-number-group.ant-input-number-group-compact::before{display:table;content:''}.ant-input-number-group.ant-input-number-group-compact::after{display:table;clear:both;content:''}.ant-input-number-group.ant-input-number-group-compact-addon:not(:first-child):not(:last-child),.ant-input-number-group.ant-input-number-group-compact-wrap:not(:first-child):not(:last-child),.ant-input-number-group.ant-input-number-group-compact>.ant-input-number:not(:first-child):not(:last-child){border-right-width:1px}.ant-input-number-group.ant-input-number-group-compact>*{display:inline-block;float:none;vertical-align:top;border-radius:0}.ant-input-number-group.ant-input-number-group-compact>.ant-input-number-affix-wrapper,.ant-input-number-group.ant-input-number-group-compact>.ant-picker-range{display:inline-flex}.ant-input-number-group.ant-input-number-group-compact>:not(:last-child){margin-right:-1px;border-right-width:1px}.ant-input-number-group.ant-input-number-group-compact .ant-input-number{float:none}.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-input-group-wrapper .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-select>.ant-select-selector{border-right-width:1px;border-radius:0}.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker:first-child .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete:first-child .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-select:first-child>.ant-select-selector,.ant-input-number-group.ant-input-number-group-compact>:first-child{border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker-focused:last-child .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker:last-child .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-select:last-child>.ant-select-selector,.ant-input-number-group.ant-input-number-group-compact>:last-child{border-right-width:1px;border-top-right-radius:2px;border-bottom-right-radius:2px}.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete .ant-input{vertical-align:top}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper+.ant-input-group-wrapper{margin-left:-1px}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper+.ant-input-group-wrapper .ant-input-affix-wrapper,.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper:not(:last-child).ant-input-search>.ant-input-group>.ant-input-group-addon>.ant-input-search-button{border-radius:0}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper:not(:last-child).ant-input-search>.ant-input-group>.ant-input{border-radius:2px 0 0 2px}.ant-input-number-group-rtl .ant-input-number-group-addon:first-child,.ant-input-number-group>.ant-input-number-rtl:first-child{border-radius:0 2px 2px 0}.ant-input-number-group-rtl .ant-input-number-group-addon:first-child{border-right:1px solid #d9d9d9;border-left:0}.ant-input-number-group-rtl .ant-input-number-group-addon:last-child{border-right:0;border-left:1px solid #d9d9d9}.ant-input-number-group-rtl.ant-input-number-group .ant-input-number-affix-wrapper:not(:first-child),.ant-input-number-group-rtl.ant-input-number-group-addon:last-child,.ant-input-number-group-rtl.ant-input-number-group>.ant-input-number:last-child{border-radius:2px 0 0 2px}.ant-input-number-group-rtl.ant-input-number-group .ant-input-number-affix-wrapper:not(:last-child),.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker:first-child .ant-input,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete:first-child .ant-input,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-select:first-child>.ant-select-selector,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>:first-child{border-radius:0 2px 2px 0}.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>:not(:last-child){margin-right:0;margin-left:-1px;border-left-width:1px}.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker-focused:last-child .ant-input,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker:last-child .ant-input,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete:last-child .ant-input,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-select:last-child>.ant-select-selector,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>:last-child{border-left-width:1px;border-radius:2px 0 0 2px}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper-rtl+.ant-input-group-wrapper-rtl{margin-right:-1px;margin-left:0}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper-rtl:not(:last-child).ant-input-search>.ant-input-group>.ant-input{border-radius:0 2px 2px 0}.ant-input-number-group-wrapper{display:inline-block;text-align:start;vertical-align:top}.ant-input-number-handler{position:relative;display:block;width:100%;height:50%;overflow:hidden;color:rgba(0,0,0,.45);font-weight:700;line-height:0;text-align:center;border-left:1px solid #d9d9d9;transition:all .1s linear}.ant-input-number-focused,.ant-input-number:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-number-handler:active{background:#f4f4f4}.ant-input-number-handler:hover .ant-input-number-handler-down-inner,.ant-input-number-handler:hover .ant-input-number-handler-up-inner{color:#40a9ff}.ant-input-number-handler-down-inner,.ant-input-number-handler-up-inner{display:inline-block;color:inherit;font-style:normal;text-transform:none;vertical-align:-.125em;position:absolute;right:4px;width:12px;height:12px;color:rgba(0,0,0,.45);line-height:12px;transition:all .1s linear;user-select:none}.ant-input-number-handler-down-inner>*,.ant-input-number-handler-up-inner>*{line-height:1}.ant-input-number-handler-down-inner svg,.ant-input-number-handler-up-inner svg{display:inline-block}.ant-input-number-disabled .ant-input-number-handler-wrap,.ant-input-number-handler-down-inner::before,.ant-input-number-handler-up-inner::before,.ant-input-number-readonly .ant-input-number-handler-wrap{display:none}.ant-input-number-handler-down-inner .ant-input-number-handler-down-inner-icon,.ant-input-number-handler-down-inner .ant-input-number-handler-up-inner-icon,.ant-input-number-handler-up-inner .ant-input-number-handler-down-inner-icon,.ant-input-number-handler-up-inner .ant-input-number-handler-up-inner-icon,nz-content,nz-footer,nz-header{display:block}.ant-input-number:hover+.ant-form-item-children-icon{opacity:0;transition:opacity .24s linear .24s}.ant-input-number-focused{box-shadow:0 0 0 2px rgba(24,144,255,.2);outline:0}.ant-input-rtl .ant-input-number-focused{border-right-width:0;border-left-width:1px!important}.ant-input-number-disabled{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;color:rgba(0,0,0,.25);pointer-events:none}.ant-input-number-disabled:hover{border-color:#d9d9d9;border-right-width:1px}.ant-input-number-disabled .ant-input-number-input{cursor:not-allowed}.ant-input-number-input{width:100%;height:26px;padding:0 7px;text-align:left;background-color:transparent;border:0;border-radius:2px;outline:0;transition:all .3s linear;appearance:textfield!important}.ant-input-number-input::-moz-placeholder{opacity:1}.ant-input-number-input::placeholder{color:#bfbfbf;user-select:none}.ant-input-number-input:placeholder-shown{text-overflow:ellipsis}.ant-input-number-input[type=number]::-webkit-inner-spin-button,.ant-input-number-input[type=number]::-webkit-outer-spin-button{margin:0;-webkit-appearance:none;appearance:none}.ant-input-number-lg{padding:0;font-size:14px}.ant-input-number-lg input{height:30px}.ant-input-number-sm{padding:0}.ant-input-number-sm input{height:20px;padding:0 7px}.ant-input-number-handler-wrap{position:absolute;top:0;right:0;width:22px;height:100%;background:#fff;border-radius:0 2px 2px 0;opacity:0;transition:opacity .24s linear .1s}.ant-input-number-handler-wrap .ant-input-number-handler .ant-input-number-handler-down-inner,.ant-input-number-handler-wrap .ant-input-number-handler .ant-input-number-handler-up-inner{display:flex;align-items:center;justify-content:center;min-width:auto;margin-right:0;font-size:7px}.ant-input-number-borderless .ant-input-number-handler-wrap{border-left-width:0}.ant-input-number-handler-wrap:hover .ant-input-number-handler{height:40%}.ant-input-number-handler-down:hover,.ant-input-number-handler-up:hover{height:60%!important}.ant-input-number-focused .ant-input-number-handler-wrap,.ant-input-number:hover .ant-input-number-handler-wrap{opacity:1}.ant-input-number-handler-up{border-top-right-radius:2px;cursor:pointer}.ant-input-number-handler-up-inner{top:50%;margin-top:-5px;text-align:center}.ant-input-number-handler-down{top:0;border-top:1px solid #d9d9d9;border-bottom-right-radius:2px;cursor:pointer}.ant-input-number-handler-down-inner{top:50%;text-align:center;transform:translateY(-50%)}.ant-input-number-borderless .ant-input-number-handler-down{border-top-width:0}.ant-input-number-handler-down-disabled,.ant-input-number-handler-up-disabled{cursor:not-allowed}.ant-input-number-handler-down-disabled:hover .ant-input-number-handler-down-inner,.ant-input-number-handler-up-disabled:hover .ant-input-number-handler-up-inner{color:rgba(0,0,0,.25)}.ant-input-number-borderless{box-shadow:none}.ant-input-number-out-of-range input{color:#ff4d4f}.ant-input-number-rtl .ant-input-number-handler{border-right:1px solid #d9d9d9;border-left:0}.ant-input-number-rtl .ant-input-number-handler-wrap{right:auto;left:0}.ant-input-number-rtl.ant-input-number-borderless .ant-input-number-handler-wrap{border-right-width:0}.ant-input-number-rtl .ant-input-number-handler-up{border-top-right-radius:0}.ant-input-number-rtl .ant-input-number-handler-down{border-bottom-right-radius:0}.ant-input-number-rtl .ant-input-number-input{direction:ltr;text-align:right}.ant-form-rtl,.ant-layout-rtl,.ant-list-rtl,.ant-list-rtl .ReactVirtualized__List .ant-list-item,.ant-mentions-rtl,.ant-menu.ant-menu-rtl,.ant-message-rtl,.ant-message-rtl span,.ant-modal-wrap-rtl,.ant-modal-wrap-rtl .ant-modal-confirm-body,.ant-notification-rtl,.ant-page-header-rtl,.ant-pagination-options-quick-jumper input-rtl,.ant-popover-rtl,.ant-progress-rtl,.ant-radio-group.ant-radio-group-rtl,.ant-radio-wrapper.ant-radio-wrapper-rtl,.ant-rate-rtl,.ant-segmented.ant-segmented-rtl,.ant-select-dropdown-rtl,.ant-select-rtl,.ant-skeleton-rtl,.ant-slider-rtl,.ant-spin-rtl{direction:rtl}.ant-input-number-affix-wrapper>nz-input-number.ant-input-number{width:100%;border:none;outline:0}.ant-input-number-affix-wrapper>nz-input-number.ant-input-number.ant-input-number-focused{box-shadow:none!important}.ant-input-number.ant-input-number-has-feedback .ant-input-number-handler-wrap{z-index:2}.ant-layout{display:flex;flex:auto;flex-direction:column;min-height:0;background:#f0f2f5}.ant-layout,.ant-layout *{box-sizing:border-box}.ant-layout.ant-layout-has-sider{flex-direction:row}.ant-layout.ant-layout-has-sider>.ant-layout,.ant-layout.ant-layout-has-sider>.ant-layout-content{width:0}.ant-layout-footer,.ant-layout-header{flex:0 0 auto}.ant-layout-header{height:64px;padding:0 50px;color:rgba(0,0,0,.85);line-height:64px;background:#001529}.ant-layout-footer{padding:24px 50px;color:rgba(0,0,0,.85);font-size:12px;background:#f0f2f5}.ant-layout-content{flex:auto;min-height:0}.ant-layout-sider{position:relative;min-width:0;background:#001529;transition:all .2s}.ant-layout-sider-children{height:100%;margin-top:-.1px;padding-top:.1px}.ant-layout-sider-children .ant-menu.ant-menu-inline-collapsed{width:auto}.ant-layout-sider-has-trigger{padding-bottom:48px}.ant-layout-sider-trigger{position:fixed;bottom:0;z-index:1;height:48px;color:#fff;line-height:48px;text-align:center;background:#002140;cursor:pointer;transition:all .2s}.ant-layout-sider-zero-width>*{overflow:hidden}.ant-layout-sider-zero-width-trigger{position:absolute;top:64px;right:-36px;z-index:1;width:36px;height:42px;color:#fff;font-size:18px;line-height:42px;text-align:center;background:#001529;border-radius:0 2px 2px 0;cursor:pointer;transition:background .3s ease}.ant-form select[multiple],.ant-form select[size],.ant-form-vertical .ant-form-item-label>label{height:auto}.ant-layout-sider-zero-width-trigger::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;transition:all .3s;content:''}.ant-layout-sider-zero-width-trigger:hover::after{background:rgba(255,255,255,.1)}.ant-layout-sider-zero-width-trigger-right{left:-36px;border-radius:2px 0 0 2px}.ant-layout-sider-light{background:#fff}.ant-layout-sider-light .ant-layout-sider-trigger,.ant-layout-sider-light .ant-layout-sider-zero-width-trigger{color:rgba(0,0,0,.85);background:#fff}.ant-form-item .ant-input-number+.ant-form-text{margin-left:8px}.ant-form-inline{display:flex;flex-wrap:wrap}.ant-form-inline .ant-form-item{flex:none;flex-wrap:nowrap;margin-right:16px;margin-bottom:0}.ant-form-inline .ant-form-item-with-help{margin-bottom:16px}.ant-form-inline .ant-form-item>.ant-form-item-control,.ant-form-inline .ant-form-item>.ant-form-item-label{display:inline-block;vertical-align:top}.ant-form-inline .ant-form-item>.ant-form-item-label{flex:none}.ant-form-inline .ant-form-item .ant-form-item-has-feedback,.ant-form-inline .ant-form-item .ant-form-text{display:inline-block}.ant-form-horizontal .ant-form-item-label{flex-grow:0}.ant-form-horizontal .ant-form-item-control{flex:1 1 0;min-width:0}.ant-form-horizontal .ant-form-item-label[class$='-24']+.ant-form-item-control,.ant-form-horizontal .ant-form-item-label[class*='-24 ']+.ant-form-item-control,.ant-slider-tooltip .ant-tooltip-inner{min-width:unset}.ant-form-vertical .ant-form-item{flex-direction:column}.ant-col-24.ant-form-item-label,.ant-col-xl-24.ant-form-item-label,.ant-form-vertical .ant-form-item-label{padding:0 0 4px;line-height:1.66667;white-space:initial;text-align:left}.ant-col-24.ant-form-item-label>label,.ant-col-xl-24.ant-form-item-label>label,.ant-form-vertical .ant-form-item-label>label{margin:0}.ant-col-24.ant-form-item-label>label::after,.ant-col-xl-24.ant-form-item-label>label::after,.ant-form-vertical .ant-form-item-label>label::after{display:none}.ant-form-rtl.ant-col-24.ant-form-item-label,.ant-form-rtl.ant-col-xl-24.ant-form-item-label,.ant-form-rtl.ant-form-vertical .ant-form-item-label{text-align:right}@media (max-width:575px){.ant-col-xs-24.ant-form-item-label>label,.ant-form-item .ant-form-item-label>label{margin:0}.ant-col-xs-24.ant-form-item-label>label::after,.ant-form-item .ant-form-item-label>label::after{display:none}.ant-form-item .ant-form-item-label{padding:0 0 4px;line-height:1.66667;white-space:initial;text-align:left}.ant-form-rtl.ant-form-item .ant-form-item-label{text-align:right}.ant-form .ant-form-item{flex-wrap:wrap}.ant-form .ant-form-item .ant-form-item-control,.ant-form .ant-form-item .ant-form-item-label{flex:0 0 100%;max-width:100%}.ant-col-xs-24.ant-form-item-label{padding:0 0 4px;line-height:1.66667;white-space:initial;text-align:left}.ant-form-rtl.ant-col-xs-24.ant-form-item-label{text-align:right}}@media (max-width:767px){.ant-col-sm-24.ant-form-item-label{padding:0 0 4px;line-height:1.66667;white-space:initial;text-align:left}.ant-col-sm-24.ant-form-item-label>label{margin:0}.ant-col-sm-24.ant-form-item-label>label::after{display:none}.ant-form-rtl.ant-col-sm-24.ant-form-item-label{text-align:right}}@media (max-width:991px){.ant-col-md-24.ant-form-item-label{padding:0 0 4px;line-height:1.66667;white-space:initial;text-align:left}.ant-col-md-24.ant-form-item-label>label{margin:0}.ant-col-md-24.ant-form-item-label>label::after{display:none}.ant-form-rtl.ant-col-md-24.ant-form-item-label{text-align:right}}@media (max-width:1199px){.ant-col-lg-24.ant-form-item-label{padding:0 0 4px;line-height:1.66667;white-space:initial;text-align:left}.ant-col-lg-24.ant-form-item-label>label{margin:0}.ant-col-lg-24.ant-form-item-label>label::after{display:none}.ant-form-rtl.ant-col-lg-24.ant-form-item-label{text-align:right}}@media (max-width:1599px){.ant-col-xl-24.ant-form-item-label{padding:0 0 4px;line-height:1.66667;white-space:initial;text-align:left}.ant-col-xl-24.ant-form-item-label>label{margin:0}.ant-col-xl-24.ant-form-item-label>label::after{display:none}.ant-form-rtl.ant-col-xl-24.ant-form-item-label{text-align:right}}.ant-form-item-explain-error{color:#ff4d4f}.ant-form-item-explain-warning,.ant-form-item-has-warning .ant-form-item-split{color:#faad14}.ant-form-item-has-feedback .ant-switch{margin:2px 0 4px}.ant-form-item-has-error .ant-form-item-split{color:#ff4d4f}.ant-form{box-sizing:border-box;margin:0;padding:0;color:rgba(0,0,0,.85);font-size:12px;font-variant:tabular-nums;line-height:1.66667;list-style:none;font-feature-settings:tnum}.ant-form legend{display:block;width:100%;margin-bottom:20px;padding:0;color:rgba(0,0,0,.45);font-size:14px;line-height:inherit;border:0;border-bottom:1px solid #d9d9d9}.ant-form label{font-size:12px}.ant-form input[type=search]{box-sizing:border-box}.ant-form input[type=radio],.ant-form input[type=checkbox]{line-height:normal}.ant-form output,.ant-form-item{line-height:1.66667;color:rgba(0,0,0,.85);font-size:12px}.ant-form input[type=file]{display:block}.ant-form input[type=range]{display:block;width:100%}.ant-form input[type=radio]:focus,.ant-form input[type=checkbox]:focus,.ant-form input[type=file]:focus{outline:dotted thin;outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}.ant-form output{display:block;padding-top:15px}.ant-form .ant-form-text{display:inline-block;padding-right:8px}.ant-form-small .ant-form-item-label>label{height:22px}.ant-form-small .ant-form-item-control-input{min-height:22px}.ant-form-large .ant-form-item-label>label{height:32px}.ant-form-large .ant-form-item-control-input{min-height:32px}.ant-form-item{box-sizing:border-box;margin:0 0 16px;padding:0;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;vertical-align:top;transition:margin-bottom .3s 17ms linear}.ant-form-item-with-help{margin-bottom:0;transition:none}.ant-form-item-hidden,.ant-form-item-hidden.ant-row{display:none}.ant-form-item-label{display:inline-block;flex-grow:0;overflow:hidden;white-space:nowrap;text-align:right;vertical-align:middle}.ant-form-item-label-left{text-align:left}.ant-form-item-label-wrap{overflow:unset;line-height:1.41667em;white-space:unset}.ant-form-item-label>label{position:relative;display:inline-flex;align-items:center;max-width:100%;height:28px;color:rgba(0,0,0,.85);font-size:12px}.ant-form-item-label>label>.anticon{font-size:12px;vertical-align:top}.ant-form-item-label>label.ant-form-item-required:not(.ant-form-item-required-mark-optional)::before{display:inline-block;margin-right:4px;color:#ff4d4f;font-size:12px;font-family:SimSun,sans-serif;line-height:1;content:'*'}.ant-form-hide-required-mark .ant-form-item-label>label.ant-form-item-required:not(.ant-form-item-required-mark-optional)::before{display:none}.ant-form-item-label>label .ant-form-item-optional{display:inline-block;margin-left:0;color:rgba(0,0,0,.45)}.ant-form-hide-required-mark .ant-form-item-label>label .ant-form-item-optional{display:none}.ant-form-item-label>label .ant-form-item-tooltip{color:rgba(0,0,0,.45);cursor:help;writing-mode:horizontal-tb;margin-inline-start:0}.ant-form-item-label>label::after{content:':';position:relative;top:-.5px;margin:0 8px 0 2px}.ant-form-item-label>label.ant-form-item-no-colon::after{content:' '}.ant-form-item-control{display:flex;flex-direction:column;flex-grow:1}.ant-form-item-control:first-child:not([class^=ant-col-]):not([class*=' ant-col-']){width:100%}.ant-form-item-control-input{position:relative;display:flex;align-items:center;min-height:28px}.ant-form-item-control-input-content{flex:auto;max-width:100%}.ant-form-item-explain,.ant-form-item-extra{clear:both;color:rgba(0,0,0,.45);font-size:12px;line-height:1.66667;transition:color .3s cubic-bezier(.215,.61,.355,1)}.ant-form-item-explain-connected{height:0;min-height:0;opacity:0}.ant-form-item-extra{min-height:16px}.ant-form-item-with-help .ant-form-item-explain{height:auto;min-height:16px;opacity:1}.ant-form-item-feedback-icon{font-size:12px;text-align:center;visibility:visible;animation:zoomIn .3s cubic-bezier(.12,.4,.29,1.46);pointer-events:none}.ant-form-item-feedback-icon-success{color:#52c41a}.ant-form-item-feedback-icon-error{color:#ff4d4f}.ant-form-item-feedback-icon-warning{color:#faad14}.ant-form-item-feedback-icon-validating{color:#1890ff}.ant-show-help{transition:height .3s linear,min-height .3s linear,margin-bottom .3s cubic-bezier(.645,.045,.355,1),opacity .3s cubic-bezier(.645,.045,.355,1)}.ant-show-help-leave{min-height:16px}.ant-show-help-leave-active{min-height:0}.ant-list-spin,.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add{min-height:40px}.ant-show-help-item{overflow:hidden;transition:height .3s cubic-bezier(.645,.045,.355,1),opacity .3s cubic-bezier(.645,.045,.355,1),transform .3s cubic-bezier(.645,.045,.355,1)!important}.ant-show-help-item-appear,.ant-show-help-item-enter{transform:translateY(-5px);opacity:0}.ant-show-help-item-appear-active,.ant-show-help-item-enter-active{transform:translateY(0);opacity:1}.ant-show-help-item-leave-active{transform:translateY(-5px)}@keyframes diffZoomIn1{0%{transform:scale(0);opacity:0}100%{transform:scale(1);opacity:1}}@keyframes diffZoomIn2{0%{transform:scale(0);opacity:0}100%{transform:scale(1);opacity:1}}@keyframes diffZoomIn3{0%{transform:scale(0);opacity:0}100%{transform:scale(1);opacity:1}}.ant-form-rtl .ant-form-item-label{text-align:left}.ant-form-rtl .ant-form-item-label>label.ant-form-item-required::before{margin-right:0;margin-left:4px}.ant-form-rtl .ant-form-item-label>label::after{margin:0 2px 0 8px}.ant-form-rtl .ant-form-item-label>label .ant-form-item-optional{margin-right:0;margin-left:0}.ant-col-rtl .ant-form-item-control:first-child{width:100%}.ant-form-rtl .ant-form-item-has-feedback .ant-input{padding-right:7px;padding-left:24px}.ant-form-rtl .ant-form-item-has-feedback .ant-input-affix-wrapper .ant-input-suffix{padding-right:7px;padding-left:18px}.ant-form-rtl .ant-form-item-has-feedback .ant-input-affix-wrapper .ant-input,.ant-form-rtl .ant-form-item-has-feedback .ant-input-number-affix-wrapper .ant-input-number{padding:0}.ant-form-rtl .ant-form-item-has-feedback .ant-input-search:not(.ant-input-search-enter-button) .ant-input-suffix{right:auto;left:28px}.ant-form-rtl .ant-form-item-has-feedback .ant-cascader-picker-clear,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-group-addon)>.ant-select .ant-select-arrow,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-group-addon)>.ant-select .ant-select-clear,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-number-group-addon)>.ant-select .ant-select-arrow,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-number-group-addon)>.ant-select .ant-select-clear,.ant-form-rtl .ant-form-item-has-feedback>.ant-select .ant-select-arrow,.ant-form-rtl .ant-form-item-has-feedback>.ant-select .ant-select-clear{left:32px;right:auto}.ant-form-rtl .ant-form-item-has-feedback .ant-input-number{padding-left:18px}.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-group-addon)>.ant-select .ant-select-selection-selected-value,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-number-group-addon)>.ant-select .ant-select-selection-selected-value,.ant-form-rtl .ant-form-item-has-feedback>.ant-select .ant-select-selection-selected-value{padding-right:0;padding-left:42px}.ant-form-rtl .ant-form-item-has-feedback .ant-cascader-picker-arrow{margin-right:0;margin-left:19px}.ant-form-rtl .ant-form-item-has-feedback .ant-picker{padding-right:7px;padding-left:22.6px}.ant-form-rtl .ant-form-item-has-feedback .ant-picker-large{padding-right:11px;padding-left:26.6px}.ant-form-rtl .ant-form-item-has-feedback .ant-picker-small{padding-right:7px;padding-left:22.6px}.ant-form-rtl .ant-form-item-has-feedback.ant-form-item-has-error .ant-form-item-children-icon,.ant-form-rtl .ant-form-item-has-feedback.ant-form-item-has-success .ant-form-item-children-icon,.ant-form-rtl .ant-form-item-has-feedback.ant-form-item-has-warning .ant-form-item-children-icon,.ant-form-rtl .ant-form-item-has-feedback.ant-form-item-is-validating .ant-form-item-children-icon{right:auto;left:0}.ant-form-rtl.ant-form-inline .ant-form-item{margin-right:0;margin-left:16px}nz-form-item.ant-form-item{transition:none}.ant-list{box-sizing:border-box;margin:0;padding:0;color:rgba(0,0,0,.85);font-size:12px;font-variant:tabular-nums;line-height:1.66667;list-style:none;font-feature-settings:tnum;position:relative}.ant-list *{outline:0}.ant-list-pagination{margin-top:16px;text-align:right}.ant-list-pagination .ant-pagination-options{text-align:left}.ant-list-more{margin-top:8px;text-align:center}.ant-list-more button{padding-right:32px;padding-left:32px}.ant-list-spin{text-align:center}.ant-list-empty-text{padding:8px;color:rgba(0,0,0,.25);font-size:12px;text-align:center}.ant-list-items{margin:0;padding:0;list-style:none}.ant-list-item{display:flex;align-items:center;justify-content:space-between;padding:8px 0;color:rgba(0,0,0,.85)}.ant-list-item-meta{display:flex;flex:1;align-items:flex-start;max-width:100%}.ant-list-item-meta-avatar{margin-right:8px}.ant-list-item-meta-content{flex:1 0;width:0;color:rgba(0,0,0,.85)}.ant-list-item-meta-title{margin-bottom:4px;color:rgba(0,0,0,.85);font-size:12px;line-height:1.66667}.ant-list-item-meta-title>a{color:rgba(0,0,0,.85);transition:all .3s}.ant-list-item-meta-title>a:hover{color:#1890ff}.ant-list-item-meta-description{color:rgba(0,0,0,.45);font-size:12px;line-height:1.66667}.ant-list-item-action{flex:0 0 auto;margin-left:48px;padding:0;font-size:0;list-style:none}.ant-list-item-action>li{position:relative;display:inline-block;padding:0 4px;color:rgba(0,0,0,.45);font-size:12px;line-height:1.66667;text-align:center}.ant-list-item-action>li:first-child{padding-left:0}.ant-list-item-action-split{position:absolute;top:50%;right:0;width:1px;height:14px;margin-top:-7px;background-color:#f0f0f0}.ant-list-footer,.ant-list-header{background:0 0;padding-top:8px;padding-bottom:8px}.ant-list-empty{padding:8px 0;color:rgba(0,0,0,.45);font-size:12px;text-align:center}.ant-list-split .ant-list-item{border-bottom:1px solid #f0f0f0}.ant-list-split .ant-list-item:last-child{border-bottom:none}.ant-list-split .ant-list-header,.ant-list-split.ant-list-something-after-last-item .ant-spin-container>.ant-list-items>.ant-list-item:last-child{border-bottom:1px solid #f0f0f0}.ant-list-split.ant-list-empty .ant-list-footer{border-top:1px solid #f0f0f0}.ant-list-loading .ant-list-spin-nested-loading{min-height:32px}.ant-list-lg .ant-list-item{padding:12px 16px}.ant-list-sm .ant-list-item{padding:4px 12px}.ant-list-vertical .ant-list-item{align-items:initial}.ant-list-vertical .ant-list-item-main{display:block;flex:1}.ant-list-vertical .ant-list-item-extra{margin-left:40px}.ant-list-vertical .ant-list-item-meta{margin-bottom:8px}.ant-list-vertical .ant-list-item-meta-title{margin-bottom:8px;color:rgba(0,0,0,.85);font-size:14px;line-height:24px}.ant-menu-dark .ant-menu-item-danger.ant-menu-item,.ant-menu-dark .ant-menu-item-danger.ant-menu-item:hover,.ant-menu-dark .ant-menu-item-danger.ant-menu-item>a,.ant-menu-item-danger.ant-menu-item,.ant-menu-item-danger.ant-menu-item-active,.ant-menu-item-danger.ant-menu-item-selected,.ant-menu-item-danger.ant-menu-item-selected>a,.ant-menu-item-danger.ant-menu-item-selected>a:hover,.ant-menu-item-danger.ant-menu-item:hover{color:#ff4d4f}.ant-list-vertical .ant-list-item-action{margin-top:8px;margin-left:auto}.ant-list-vertical .ant-list-item-action>li{padding:0 8px}.ant-list-vertical .ant-list-item-action>li:first-child{padding-left:0}.ant-list-grid .ant-col>.ant-list-item{display:block;max-width:100%;margin-bottom:8px;padding-top:0;padding-bottom:0;border-bottom:none}.ant-list-item-no-flex{display:block}.ant-list:not(.ant-list-vertical) .ant-list-item-no-flex .ant-list-item-action{float:right}.ant-list-bordered{border:1px solid #d9d9d9;border-radius:2px}.ant-list-bordered .ant-list-footer,.ant-list-bordered .ant-list-header,.ant-list-bordered .ant-list-item{padding-right:16px;padding-left:16px}.ant-list-bordered .ant-list-pagination{margin:8px 16px}.ant-list-bordered.ant-list-sm .ant-list-footer,.ant-list-bordered.ant-list-sm .ant-list-header,.ant-list-bordered.ant-list-sm .ant-list-item{padding:4px 12px}.ant-list-bordered.ant-list-lg .ant-list-footer,.ant-list-bordered.ant-list-lg .ant-list-header,.ant-list-bordered.ant-list-lg .ant-list-item{padding:12px 16px}.ant-list-rtl .ant-list-vertical .ant-list-item-action>li:first-child,.ant-list.ant-list-rtl .ant-list-item-action>li:first-child{padding-right:0;padding-left:8px}@media screen and (max-width:768px){.ant-list-item-action,.ant-list-vertical .ant-list-item-extra{margin-left:24px}}@media screen and (max-width:576px){.ant-list-item{flex-wrap:wrap}.ant-list-item-action{margin-left:12px}.ant-list-vertical .ant-list-item{flex-wrap:wrap-reverse}.ant-list-vertical .ant-list-item-main{min-width:220px}.ant-list-vertical .ant-list-item-extra{margin:auto auto 16px}}.ant-list-rtl{text-align:right}.ant-list-rtl .ant-list-pagination,.ant-menu{text-align:left}.ant-list-rtl .ant-list-item-meta-avatar{margin-right:0;margin-left:8px}.ant-list-rtl .ant-list-item-action{margin-right:48px;margin-left:0}.ant-list-rtl .ant-list-item-action-split{right:auto;left:0}.ant-list-rtl.ant-list-vertical .ant-list-item-extra{margin-right:40px;margin-left:0}.ant-list-rtl.ant-list-vertical .ant-list-item-action{margin-right:auto}.ant-list-rtl .ant-list:not(.ant-list-vertical) .ant-list-item-no-flex .ant-list-item-action{float:left}@media screen and (max-width:768px){.ant-list-rtl .ant-list-item-action,.ant-list-rtl .ant-list-vertical .ant-list-item-extra{margin-right:24px;margin-left:0}}@media screen and (max-width:576px){.ant-list-rtl .ant-list-item-action{margin-right:22px;margin-left:0}.ant-list-rtl.ant-list-vertical .ant-list-item-extra{margin:auto auto 16px}}nz-list,nz-list nz-spin,nz-list-empty,nz-list-footer,nz-list-header,nz-list-item-extra,nz-list-pagination{display:block}.ant-menu::after,.ant-menu::before{display:table;content:''}.ant-menu-item-danger.ant-menu-item:active{background:#fff1f0}.ant-menu:not(.ant-menu-horizontal) .ant-menu-item-danger.ant-menu-item-selected{background-color:#fff1f0}.ant-menu-inline .ant-menu-item-danger.ant-menu-item::after{border-right-color:#ff4d4f}.ant-menu-dark.ant-menu-dark:not(.ant-menu-horizontal) .ant-menu-item-danger.ant-menu-item-selected{color:#fff;background-color:#ff4d4f}.ant-menu{box-sizing:border-box;margin:0;padding:0;font-variant:tabular-nums;font-feature-settings:tnum;color:rgba(0,0,0,.85);font-size:12px;line-height:0;list-style:none;background:#fff;outline:0;box-shadow:0 3px 6px -4px rgba(0,0,0,.12),0 6px 16px 0 rgba(0,0,0,.08),0 9px 28px 8px rgba(0,0,0,.05);transition:background .3s,width .3s cubic-bezier(.2,0,0,1) 0s}.ant-menu::after{clear:both}.ant-menu ol,.ant-menu ul{margin:0;padding:0;list-style:none}.ant-menu-overflow{display:flex}.ant-menu-hidden,.ant-menu-submenu-hidden,.ant-menu-submenu-horizontal .ant-menu-submenu-arrow{display:none}.ant-menu-overflow-item{flex:none}.ant-menu-item-group-title{height:1.66667;padding:8px 16px;color:rgba(0,0,0,.45);font-size:12px;line-height:1.66667;transition:all .3s}.ant-menu-horizontal .ant-menu-submenu{transition:border-color .3s cubic-bezier(.645,.045,.355,1),background .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-submenu,.ant-menu-submenu-inline{transition:border-color .3s cubic-bezier(.645,.045,.355,1),background .3s cubic-bezier(.645,.045,.355,1),padding .15s cubic-bezier(.645,.045,.355,1)}.ant-menu-submenu-selected{color:#1890ff}.ant-menu-horizontal>.ant-menu-item-active,.ant-menu-horizontal>.ant-menu-item:hover,.ant-menu-horizontal>.ant-menu-submenu .ant-menu-submenu-title:hover,.ant-menu-item a::before{background-color:transparent}.ant-menu-submenu .ant-menu-sub{cursor:initial;transition:background .3s cubic-bezier(.645,.045,.355,1),padding .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-title-content{transition:color .3s}.ant-menu-item a{color:rgba(0,0,0,.85)}.ant-menu-item a:hover{color:#1890ff}.ant-menu-item a::before{position:absolute;top:0;right:0;bottom:0;left:0;content:''}.ant-menu-item>.ant-badge a{color:rgba(0,0,0,.85)}.ant-menu-item-selected,.ant-menu-item-selected a,.ant-menu-item-selected a:hover,.ant-menu-item>.ant-badge a:hover{color:#1890ff}.ant-menu-item-divider{overflow:hidden;line-height:0;border-color:#f0f0f0;border-style:solid;border-width:1px 0 0}.ant-menu-item-divider-dashed{border-style:dashed}.ant-menu-horizontal .ant-menu-item,.ant-menu-horizontal .ant-menu-submenu{margin-top:-1px}.ant-menu:not(.ant-menu-horizontal) .ant-menu-item-selected{background-color:#e6f7ff}.ant-menu-inline,.ant-menu-vertical,.ant-menu-vertical-left{border-right:1px solid #f0f0f0}.ant-menu-vertical-right{border-left:1px solid #f0f0f0}.ant-menu-vertical-left.ant-menu-sub,.ant-menu-vertical-right.ant-menu-sub,.ant-menu-vertical.ant-menu-sub{min-width:160px;max-height:calc(100vh - 100px);padding:0;overflow:hidden;border-right:0}.ant-menu-vertical-left.ant-menu-sub:not([class*='-active']),.ant-menu-vertical-right.ant-menu-sub:not([class*='-active']),.ant-menu-vertical.ant-menu-sub:not([class*='-active']){overflow-x:hidden;overflow-y:auto}.ant-menu-vertical-left.ant-menu-sub .ant-menu-item,.ant-menu-vertical-right.ant-menu-sub .ant-menu-item,.ant-menu-vertical.ant-menu-sub .ant-menu-item{left:0;margin-left:0;border-right:0}.ant-menu-vertical-left.ant-menu-sub .ant-menu-item::after,.ant-menu-vertical-right.ant-menu-sub .ant-menu-item::after,.ant-menu-vertical.ant-menu-sub .ant-menu-item::after{border-right:0}.ant-menu-vertical-left.ant-menu-sub>.ant-menu-item,.ant-menu-vertical-left.ant-menu-sub>.ant-menu-submenu,.ant-menu-vertical-right.ant-menu-sub>.ant-menu-item,.ant-menu-vertical-right.ant-menu-sub>.ant-menu-submenu,.ant-menu-vertical.ant-menu-sub>.ant-menu-item,.ant-menu-vertical.ant-menu-sub>.ant-menu-submenu{transform-origin:0 0}.ant-menu-horizontal.ant-menu-sub{min-width:114px}.ant-menu-horizontal .ant-menu-item,.ant-menu-horizontal .ant-menu-submenu-title{transition:border-color .3s,background .3s}.ant-menu-item,.ant-menu-submenu-title{position:relative;display:block;margin:0;padding:0 12px;white-space:nowrap;cursor:pointer;transition:border-color .3s,background .3s,padding .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-item .ant-menu-item-icon,.ant-menu-item .anticon,.ant-menu-submenu-title .ant-menu-item-icon,.ant-menu-submenu-title .anticon{min-width:14px;font-size:12px;transition:font-size .15s cubic-bezier(.215,.61,.355,1),margin .3s cubic-bezier(.645,.045,.355,1),color .3s}.ant-menu-item .ant-menu-item-icon+span,.ant-menu-item .anticon+span,.ant-menu-submenu-title .ant-menu-item-icon+span,.ant-menu-submenu-title .anticon+span{margin-left:8px;opacity:1;transition:opacity .3s cubic-bezier(.645,.045,.355,1),margin .3s,color .3s}.ant-menu-submenu-arrow,.ant-menu-submenu-expand-icon,.ant-menu-submenu>.ant-menu-submenu-title::after{transition:transform .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-item .ant-menu-item-icon.svg,.ant-menu-submenu-title .ant-menu-item-icon.svg{vertical-align:-.125em}.ant-menu-item.ant-menu-item-only-child>.ant-menu-item-icon,.ant-menu-item.ant-menu-item-only-child>.anticon,.ant-menu-submenu-title.ant-menu-item-only-child>.ant-menu-item-icon,.ant-menu-submenu-title.ant-menu-item-only-child>.anticon{margin-right:0}.ant-menu-item:focus-visible,.ant-menu-submenu-title:focus-visible{box-shadow:0 0 0 2px #bae7ff}.ant-menu>.ant-menu-item-divider{margin:1px 0;padding:0}.ant-menu-submenu-popup{position:absolute;z-index:1050;background:0 0;border-radius:2px;box-shadow:none;transform-origin:0 0}.ant-menu-submenu-popup::before{position:absolute;top:-7px;right:0;bottom:0;left:0;z-index:-1;width:100%;height:100%;opacity:.0001;content:' '}.ant-menu-submenu-placement-rightTop::before{top:0;left:-7px}.ant-menu-submenu>.ant-menu{background-color:#fff;border-radius:2px}.ant-menu-submenu-popup>.ant-menu{background-color:#fff}.ant-menu-submenu-arrow,.ant-menu-submenu-expand-icon{position:absolute;top:50%;right:16px;width:10px;color:rgba(0,0,0,.85);transform:translateY(-50%)}.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-active,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-open,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-selected,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item:hover,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-active,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-open,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-selected,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu:hover,.ant-menu-submenu:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-submenu:hover>.ant-menu-submenu-title>.ant-menu-submenu-expand-icon,.ant-menu-vertical .ant-menu-submenu-selected,.ant-menu-vertical-left .ant-menu-submenu-selected,.ant-menu-vertical-right .ant-menu-submenu-selected{color:#1890ff}.ant-menu-submenu-arrow::after,.ant-menu-submenu-arrow::before{position:absolute;width:6px;height:1.5px;background-color:currentcolor;border-radius:2px;transition:background .3s cubic-bezier(.645,.045,.355,1),transform .3s cubic-bezier(.645,.045,.355,1),top .3s cubic-bezier(.645,.045,.355,1),color .3s cubic-bezier(.645,.045,.355,1);content:''}.ant-menu-submenu-arrow::before{transform:rotate(45deg) translateY(-2.5px)}.ant-menu-submenu-arrow::after{transform:rotate(-45deg) translateY(2.5px)}.ant-menu-inline-collapsed .ant-menu-submenu-arrow::before,.ant-menu-submenu-inline .ant-menu-submenu-arrow::before{transform:rotate(-45deg) translateX(2.5px)}.ant-menu-inline-collapsed .ant-menu-submenu-arrow::after,.ant-menu-submenu-inline .ant-menu-submenu-arrow::after{transform:rotate(45deg) translateX(-2.5px)}.ant-menu-submenu-open.ant-menu-submenu-inline>.ant-menu-submenu-title>.ant-menu-submenu-arrow{transform:translateY(-2px)}.ant-menu-submenu-open.ant-menu-submenu-inline>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after{transform:rotate(-45deg) translateX(-2.5px)}.ant-menu-submenu-open.ant-menu-submenu-inline>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before{transform:rotate(45deg) translateX(2.5px)}.ant-menu-horizontal{line-height:38px;border:0;border-bottom:1px solid #f0f0f0;box-shadow:none}.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu{margin-top:-1px;margin-bottom:0;padding:0 12px}.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-active::after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-open::after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-selected::after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item:hover::after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-active::after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-open::after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-selected::after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu:hover::after{border-bottom:2px solid #1890ff}.ant-menu-horizontal>.ant-menu-item,.ant-menu-horizontal>.ant-menu-submenu{position:relative;top:1px;display:inline-block;vertical-align:bottom}.ant-menu-horizontal>.ant-menu-item::after,.ant-menu-horizontal>.ant-menu-submenu::after{position:absolute;right:20px;bottom:0;left:20px;border-bottom:2px solid transparent;transition:border-color .3s cubic-bezier(.645,.045,.355,1);content:''}.ant-menu-horizontal>.ant-menu-submenu>.ant-menu-submenu-title{padding:0}.ant-menu-horizontal>.ant-menu-item a{color:rgba(0,0,0,.85)}.ant-menu-horizontal>.ant-menu-item a:hover,.ant-menu-horizontal>.ant-menu-item-selected a{color:#1890ff}.ant-menu-horizontal>.ant-menu-item a::before{bottom:-2px}.ant-menu-horizontal::after{display:block;clear:both;height:0;content:'\20'}.ant-menu-inline .ant-menu-item,.ant-menu-vertical .ant-menu-item,.ant-menu-vertical-left .ant-menu-item,.ant-menu-vertical-right .ant-menu-item{position:relative}.ant-menu-inline .ant-menu-item::after,.ant-menu-vertical .ant-menu-item::after,.ant-menu-vertical-left .ant-menu-item::after,.ant-menu-vertical-right .ant-menu-item::after{position:absolute;top:0;right:0;bottom:0;border-right:3px solid #1890ff;transform:scaleY(.0001);opacity:0;transition:transform .15s cubic-bezier(.215,.61,.355,1),opacity .15s cubic-bezier(.215,.61,.355,1);content:''}.ant-menu-inline .ant-menu-item,.ant-menu-inline .ant-menu-submenu-title,.ant-menu-vertical .ant-menu-item,.ant-menu-vertical .ant-menu-submenu-title,.ant-menu-vertical-left .ant-menu-item,.ant-menu-vertical-left .ant-menu-submenu-title,.ant-menu-vertical-right .ant-menu-item,.ant-menu-vertical-right .ant-menu-submenu-title{height:32px;margin-top:0;margin-bottom:0;padding:0 16px;overflow:hidden;line-height:32px;text-overflow:ellipsis}.ant-menu-inline .ant-menu-item-group-list .ant-menu-submenu-title,.ant-menu-inline .ant-menu-submenu-title,.ant-menu-vertical .ant-menu-item-group-list .ant-menu-submenu-title,.ant-menu-vertical .ant-menu-submenu-title{padding-right:34px}.ant-menu-inline .ant-menu-submenu,.ant-menu-vertical .ant-menu-submenu,.ant-menu-vertical-left .ant-menu-submenu,.ant-menu-vertical-right .ant-menu-submenu{padding-bottom:.02px}.ant-menu-inline .ant-menu-item:not(:last-child),.ant-menu-vertical .ant-menu-item:not(:last-child),.ant-menu-vertical-left .ant-menu-item:not(:last-child),.ant-menu-vertical-right .ant-menu-item:not(:last-child){margin-bottom:0}.ant-menu-inline>.ant-menu-item,.ant-menu-inline>.ant-menu-submenu>.ant-menu-submenu-title,.ant-menu-vertical-left>.ant-menu-item,.ant-menu-vertical-left>.ant-menu-submenu>.ant-menu-submenu-title,.ant-menu-vertical-right>.ant-menu-item,.ant-menu-vertical-right>.ant-menu-submenu>.ant-menu-submenu-title,.ant-menu-vertical>.ant-menu-item,.ant-menu-vertical>.ant-menu-submenu>.ant-menu-submenu-title{height:32px;line-height:32px}.ant-menu-inline{width:100%}.ant-menu-inline .ant-menu-item-selected::after,.ant-menu-inline .ant-menu-selected::after{transform:scaleY(1);opacity:1;transition:transform .15s cubic-bezier(.645,.045,.355,1),opacity .15s cubic-bezier(.645,.045,.355,1)}.ant-menu-inline .ant-menu-item,.ant-menu-inline .ant-menu-submenu-title{width:calc(100% + 1px)}.ant-menu-inline.ant-menu-root .ant-menu-item,.ant-menu-inline.ant-menu-root .ant-menu-submenu-title{display:flex;align-items:center;transition:border-color .3s,background .3s,padding .1s cubic-bezier(.215,.61,.355,1)}.ant-menu-inline.ant-menu-root .ant-menu-item>.ant-menu-title-content,.ant-menu-inline.ant-menu-root .ant-menu-submenu-title>.ant-menu-title-content{flex:auto;min-width:0;overflow:hidden;text-overflow:ellipsis}.ant-menu-inline.ant-menu-root .ant-menu-item>*,.ant-menu-inline.ant-menu-root .ant-menu-submenu-title>*{flex:none}.ant-menu.ant-menu-inline-collapsed{width:80px}.ant-menu.ant-menu-inline-collapsed>.ant-menu-item,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title{left:0;padding:0 calc(50% - 14px / 2);text-overflow:clip}.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .ant-menu-submenu-arrow,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .ant-menu-submenu-arrow,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-submenu-arrow{opacity:0}.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .anticon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .anticon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .anticon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .anticon{margin:0;font-size:14px;line-height:32px}.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .ant-menu-item-icon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .anticon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .ant-menu-item-icon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .anticon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-item-icon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .anticon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-item-icon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .anticon+span{display:inline-block;opacity:0}.ant-menu.ant-menu-inline-collapsed .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed .anticon{display:inline-block}.ant-menu.ant-menu-inline-collapsed-tooltip{pointer-events:none}.ant-menu.ant-menu-inline-collapsed-tooltip .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed-tooltip .anticon{display:none}.ant-menu.ant-menu-inline-collapsed-tooltip a{color:rgba(255,255,255,.85)}.ant-menu.ant-menu-inline-collapsed .ant-menu-item-group-title{padding-right:4px;padding-left:4px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-menu-item-group-list{margin:0;padding:0}.ant-menu-item-group-list .ant-menu-item,.ant-menu-item-group-list .ant-menu-submenu-title{padding:0 16px 0 28px}.ant-menu-root.ant-menu-inline,.ant-menu-root.ant-menu-vertical,.ant-menu-root.ant-menu-vertical-left,.ant-menu-root.ant-menu-vertical-right{box-shadow:none}.ant-menu-root.ant-menu-inline-collapsed .ant-menu-item>.ant-menu-inline-collapsed-noicon,.ant-menu-root.ant-menu-inline-collapsed .ant-menu-submenu .ant-menu-submenu-title>.ant-menu-inline-collapsed-noicon{font-size:14px;text-align:center}.ant-menu-rtl .ant-menu-item-group-title,.ant-menu-rtl.ant-menu-inline .ant-menu-item,.ant-menu-rtl.ant-menu-inline .ant-menu-submenu-title,.ant-menu-rtl.ant-menu-vertical .ant-menu-item,.ant-menu-rtl.ant-menu-vertical .ant-menu-submenu-title,.ant-menu-rtl.ant-menu-vertical-left .ant-menu-item,.ant-menu-rtl.ant-menu-vertical-left .ant-menu-submenu-title,.ant-menu-rtl.ant-menu-vertical-right .ant-menu-item,.ant-menu-rtl.ant-menu-vertical-right .ant-menu-submenu-title,.ant-menu.ant-menu-rtl{text-align:right}.ant-menu-sub.ant-menu-inline{padding:0;background:#fafafa;border-radius:0;box-shadow:none}.ant-menu-sub.ant-menu-inline>.ant-menu-item,.ant-menu-sub.ant-menu-inline>.ant-menu-submenu>.ant-menu-submenu-title{height:32px;line-height:32px;list-style-position:inside;list-style-type:disc}.ant-menu-sub.ant-menu-inline .ant-menu-item-group-title{padding-left:32px}.ant-menu-item-disabled,.ant-menu-submenu-disabled{color:rgba(0,0,0,.25)!important;background:0 0;cursor:not-allowed}.ant-menu-item-disabled::after,.ant-menu-submenu-disabled::after{border-color:transparent!important}.ant-menu-item-disabled a,.ant-menu-submenu-disabled a{color:rgba(0,0,0,.25)!important;pointer-events:none}.ant-menu-item-disabled>.ant-menu-submenu-title,.ant-menu-submenu-disabled>.ant-menu-submenu-title{color:rgba(0,0,0,.25)!important;cursor:not-allowed}.ant-menu-item-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-item-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-submenu-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-submenu-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before{background:rgba(0,0,0,.25)!important}.ant-layout-header .ant-menu{line-height:inherit}.ant-mentions,textarea.ant-mentions{line-height:1.66667;vertical-align:bottom}.ant-menu-inline-collapsed-tooltip a,.ant-menu-inline-collapsed-tooltip a:hover{color:#fff}.ant-menu-light .ant-menu-item-active,.ant-menu-light .ant-menu-item:hover,.ant-menu-light .ant-menu-submenu-active,.ant-menu-light .ant-menu-submenu-title:hover,.ant-menu-light .ant-menu:not(.ant-menu-inline) .ant-menu-submenu-open{color:#1890ff}.ant-menu-dark .ant-menu-item:focus-visible,.ant-menu-dark .ant-menu-submenu-title:focus-visible,.ant-menu.ant-menu-root:focus-visible{box-shadow:0 0 0 2px #096dd9}.ant-menu-dark .ant-menu-sub,.ant-menu.ant-menu-dark,.ant-menu.ant-menu-dark .ant-menu-sub{color:rgba(255,255,255,.65);background:#001529}.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu.ant-menu-dark .ant-menu-submenu-title .ant-menu-submenu-arrow{opacity:.45;transition:all .3s}.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow::before,.ant-menu.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow::before,.ant-menu.ant-menu-dark .ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu.ant-menu-dark .ant-menu-submenu-title .ant-menu-submenu-arrow::before{background:#fff}.ant-menu-dark.ant-menu-submenu-popup{background:0 0}.ant-menu-dark .ant-menu-inline.ant-menu-sub{background:#000c17}.ant-menu-dark.ant-menu-horizontal{border-bottom:0}.ant-menu-dark.ant-menu-horizontal>.ant-menu-item,.ant-menu-dark.ant-menu-horizontal>.ant-menu-submenu{top:0;margin-top:0;padding:0 12px;border-color:#001529;border-bottom:0}.ant-menu-dark.ant-menu-horizontal>.ant-menu-item:hover{background-color:#1890ff}.ant-menu-dark.ant-menu-horizontal>.ant-menu-item>a::before{bottom:0}.ant-menu-dark .ant-menu-item,.ant-menu-dark .ant-menu-item-group-title,.ant-menu-dark .ant-menu-item>a,.ant-menu-dark .ant-menu-item>span>a{color:rgba(255,255,255,.65)}.ant-menu-dark.ant-menu-inline,.ant-menu-dark.ant-menu-vertical,.ant-menu-dark.ant-menu-vertical-left,.ant-menu-dark.ant-menu-vertical-right{border-right:0}.ant-menu-dark.ant-menu-inline .ant-menu-item,.ant-menu-dark.ant-menu-vertical .ant-menu-item,.ant-menu-dark.ant-menu-vertical-left .ant-menu-item,.ant-menu-dark.ant-menu-vertical-right .ant-menu-item{left:0;margin-left:0;border-right:0}.ant-menu-dark.ant-menu-inline .ant-menu-item::after,.ant-menu-dark.ant-menu-vertical .ant-menu-item::after,.ant-menu-dark.ant-menu-vertical-left .ant-menu-item::after,.ant-menu-dark.ant-menu-vertical-right .ant-menu-item::after{border-right:0}.ant-menu-dark.ant-menu-inline .ant-menu-item,.ant-menu-dark.ant-menu-inline .ant-menu-submenu-title{width:100%}.ant-menu-dark .ant-menu-item-active,.ant-menu-dark .ant-menu-item:hover,.ant-menu-dark .ant-menu-submenu-active,.ant-menu-dark .ant-menu-submenu-open,.ant-menu-dark .ant-menu-submenu-selected,.ant-menu-dark .ant-menu-submenu-title:hover{color:#fff;background-color:transparent}.ant-menu-dark .ant-menu-item-active>a,.ant-menu-dark .ant-menu-item-active>span>a,.ant-menu-dark .ant-menu-item:hover>a,.ant-menu-dark .ant-menu-item:hover>span>a,.ant-menu-dark .ant-menu-submenu-active>a,.ant-menu-dark .ant-menu-submenu-active>span>a,.ant-menu-dark .ant-menu-submenu-open>a,.ant-menu-dark .ant-menu-submenu-open>span>a,.ant-menu-dark .ant-menu-submenu-selected>a,.ant-menu-dark .ant-menu-submenu-selected>span>a,.ant-menu-dark .ant-menu-submenu-title:hover>a,.ant-menu-dark .ant-menu-submenu-title:hover>span>a{color:#fff}.ant-menu-dark .ant-menu-item-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-item:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-open>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-selected>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-title:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow{opacity:1}.ant-menu-dark .ant-menu-item-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-item-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-item:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-item:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-submenu-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-submenu-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-submenu-open>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-submenu-open>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-submenu-selected>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-submenu-selected>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-submenu-title:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-submenu-title:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before{background:#fff}.ant-menu-dark .ant-menu-item:hover{background-color:transparent}.ant-menu-dark.ant-menu-dark:not(.ant-menu-horizontal) .ant-menu-item-selected,.ant-menu-submenu-popup.ant-menu-dark .ant-menu-item-selected,.ant-menu.ant-menu-dark .ant-menu-item-selected{background-color:#1890ff}.ant-menu-dark .ant-menu-item-selected{color:#fff;border-right:0}.ant-menu-dark .ant-menu-item-selected::after{border-right:0}.ant-menu-dark .ant-menu-item-selected .ant-menu-item-icon,.ant-menu-dark .ant-menu-item-selected .ant-menu-item-icon+span,.ant-menu-dark .ant-menu-item-selected .anticon,.ant-menu-dark .ant-menu-item-selected .anticon+span,.ant-menu-dark .ant-menu-item-selected>a,.ant-menu-dark .ant-menu-item-selected>a:hover,.ant-menu-dark .ant-menu-item-selected>span>a,.ant-menu-dark .ant-menu-item-selected>span>a:hover{color:#fff}.ant-menu-dark .ant-menu-item-disabled,.ant-menu-dark .ant-menu-item-disabled>a,.ant-menu-dark .ant-menu-item-disabled>span>a,.ant-menu-dark .ant-menu-submenu-disabled,.ant-menu-dark .ant-menu-submenu-disabled>a,.ant-menu-dark .ant-menu-submenu-disabled>span>a{color:rgba(255,255,255,.35)!important;opacity:.8}.ant-menu-dark .ant-menu-item-disabled>.ant-menu-submenu-title,.ant-menu-dark .ant-menu-submenu-disabled>.ant-menu-submenu-title{color:rgba(255,255,255,.35)!important}.ant-menu-dark .ant-menu-item-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-item-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-submenu-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-submenu-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before{background:rgba(255,255,255,.35)!important}.ant-menu-rtl.ant-menu-inline,.ant-menu-rtl.ant-menu-vertical{border-right:none;border-left:1px solid #f0f0f0}.ant-menu-rtl.ant-menu-dark.ant-menu-inline,.ant-menu-rtl.ant-menu-dark.ant-menu-vertical{border-left:none}.ant-menu-rtl.ant-menu-vertical-left.ant-menu-sub>.ant-menu-item,.ant-menu-rtl.ant-menu-vertical-left.ant-menu-sub>.ant-menu-submenu,.ant-menu-rtl.ant-menu-vertical-right.ant-menu-sub>.ant-menu-item,.ant-menu-rtl.ant-menu-vertical-right.ant-menu-sub>.ant-menu-submenu,.ant-menu-rtl.ant-menu-vertical.ant-menu-sub>.ant-menu-item,.ant-menu-rtl.ant-menu-vertical.ant-menu-sub>.ant-menu-submenu{transform-origin:top right}.ant-menu-rtl .ant-menu-item .ant-menu-item-icon,.ant-menu-rtl .ant-menu-item .anticon,.ant-menu-rtl .ant-menu-submenu-title .ant-menu-item-icon,.ant-menu-rtl .ant-menu-submenu-title .anticon{margin-right:auto;margin-left:8px}.ant-menu-rtl .ant-menu-item.ant-menu-item-only-child>.ant-menu-item-icon,.ant-menu-rtl .ant-menu-item.ant-menu-item-only-child>.anticon,.ant-menu-rtl .ant-menu-submenu-title.ant-menu-item-only-child>.ant-menu-item-icon,.ant-menu-rtl .ant-menu-submenu-title.ant-menu-item-only-child>.anticon{margin-left:0}.ant-menu-submenu-rtl.ant-menu-submenu-popup{transform-origin:100% 0}.ant-menu-rtl .ant-menu-submenu-inline>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu-rtl .ant-menu-submenu-vertical-left>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu-rtl .ant-menu-submenu-vertical-right>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu-rtl .ant-menu-submenu-vertical>.ant-menu-submenu-title .ant-menu-submenu-arrow{right:auto;left:16px}.ant-menu-rtl .ant-menu-submenu-vertical-left>.ant-menu-submenu-title .ant-menu-submenu-arrow::before,.ant-menu-rtl .ant-menu-submenu-vertical-right>.ant-menu-submenu-title .ant-menu-submenu-arrow::before,.ant-menu-rtl .ant-menu-submenu-vertical>.ant-menu-submenu-title .ant-menu-submenu-arrow::before{transform:rotate(-45deg) translateY(-2px)}.ant-menu-rtl .ant-menu-submenu-vertical-left>.ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu-rtl .ant-menu-submenu-vertical-right>.ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu-rtl .ant-menu-submenu-vertical>.ant-menu-submenu-title .ant-menu-submenu-arrow::after{transform:rotate(45deg) translateY(2px)}.ant-menu-rtl.ant-menu-inline .ant-menu-item::after,.ant-menu-rtl.ant-menu-vertical .ant-menu-item::after,.ant-menu-rtl.ant-menu-vertical-left .ant-menu-item::after,.ant-menu-rtl.ant-menu-vertical-right .ant-menu-item::after{right:auto;left:0}.ant-menu-rtl.ant-menu-inline .ant-menu-submenu-title{padding-right:0;padding-left:34px}.ant-menu-rtl.ant-menu-vertical .ant-menu-submenu-title{padding-right:16px;padding-left:34px}.ant-menu-rtl.ant-menu-inline-collapsed.ant-menu-vertical .ant-menu-submenu-title{padding:0 calc(50% - 14px / 2)}.ant-menu-rtl .ant-menu-item-group-list .ant-menu-item,.ant-menu-rtl .ant-menu-item-group-list .ant-menu-submenu-title{padding:0 28px 0 16px}.ant-menu-sub.ant-menu-inline{border:0}.ant-menu-rtl.ant-menu-sub.ant-menu-inline .ant-menu-item-group-title{padding-right:32px;padding-left:0}.ant-menu-submenu.ant-menu-submenu-placement-bottom{top:6px;position:relative}.ant-menu-submenu.ant-menu-submenu-placement-right{left:4px;position:relative}.ant-menu-submenu.ant-menu-submenu-placement-right.ant-menu-submenu-rtl{left:auto;right:4px}.ant-menu-submenu.ant-menu-submenu-placement-left{right:4px;position:relative}.ant-menu-submenu.ant-menu-submenu-placement-left.ant-menu-submenu-rtl{right:auto;left:4px}.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions,.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:hover{background:#fff;border-color:#ff4d4f}.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions-focused,.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:focus{border-color:#ff7875;box-shadow:0 0 0 2px rgba(255,77,79,.2);border-right-width:1px;outline:0}.ant-mentions-status-error .ant-input-prefix{color:#ff4d4f}.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions,.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:hover{background:#fff;border-color:#faad14}.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions-focused,.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:focus{border-color:#ffc53d;box-shadow:0 0 0 2px rgba(250,173,20,.2);border-right-width:1px;outline:0}.ant-mentions-status-warning .ant-input-prefix{color:#faad14}.ant-mentions{box-sizing:border-box;margin:0;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;width:100%;min-width:0;color:rgba(0,0,0,.85);font-size:12px;background-color:#fff;background-image:none;border:1px solid #d9d9d9;border-radius:2px;transition:all .3s;position:relative;display:inline-block;height:auto;padding:0;overflow:hidden;white-space:pre-wrap}.ant-mentions::-moz-placeholder{opacity:1}.ant-mentions::placeholder{color:#bfbfbf;user-select:none}.ant-mentions-disabled,.ant-mentions-disabled>textarea,.ant-mentions[disabled]{color:rgba(0,0,0,.25);opacity:1;pointer-events:none}.ant-mentions:placeholder-shown{text-overflow:ellipsis}.ant-mentions:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-mentions:hover{border-right-width:0;border-left-width:1px!important}.ant-mentions-focused,.ant-mentions:focus{border-color:#40a9ff;box-shadow:0 0 0 2px rgba(24,144,255,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-mentions-focused,.ant-input-rtl .ant-mentions:focus{border-right-width:0;border-left-width:1px!important}.ant-mentions-disabled:hover,.ant-mentions[disabled]:hover{border-color:#d9d9d9;border-right-width:1px}.ant-mentions-disabled{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed}.ant-mentions[disabled]{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed}.ant-mentions-borderless,.ant-mentions-borderless-disabled,.ant-mentions-borderless-focused,.ant-mentions-borderless:focus,.ant-mentions-borderless:hover,.ant-mentions-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-mentions{max-width:100%;height:auto;min-height:28px;transition:all .3s,height 0s}.ant-mentions-lg{padding:3.4px 11px;font-size:14px}.ant-mentions-sm{padding:0 7px}.ant-mentions-stepperless[type=number]{-moz-appearance:textfield}.ant-mentions-stepperless[type=number] ::-webkit-outer-spin-button,.ant-mentions-stepperless[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ant-mentions-disabled>textarea{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed}.ant-mentions-disabled>textarea:hover{border-color:#d9d9d9;border-right-width:1px}.ant-mentions-focused,.ant-mentions:focus-within{border-color:#40a9ff;border-right-width:1px;outline:0}.ant-mentions-focused{box-shadow:0 0 0 2px rgba(24,144,255,.2)}.ant-input-rtl .ant-mentions-focused{border-right-width:0;border-left-width:1px!important}.ant-mentions-measure,.ant-mentions>textarea{min-height:26px;margin:0;padding:3px 7px;overflow:inherit;overflow-x:hidden;overflow-y:auto;font-weight:inherit;font-size:inherit;font-family:inherit;font-style:inherit;font-variant:inherit;font-size-adjust:inherit;font-stretch:inherit;line-height:inherit;direction:inherit;letter-spacing:inherit;white-space:inherit;text-align:inherit;vertical-align:top;word-wrap:break-word;word-break:inherit;tab-size:inherit}.ant-mentions-dropdown,.ant-message{font-size:12px;list-style:none;font-feature-settings:tnum;box-sizing:border-box}.ant-mentions>textarea{width:100%;border:none;outline:0;resize:none}.ant-mentions-dropdown,.ant-message-notice-content{border-radius:2px;box-shadow:0 3px 6px -4px rgba(0,0,0,.12),0 6px 16px 0 rgba(0,0,0,.08),0 9px 28px 8px rgba(0,0,0,.05)}.ant-mentions>textarea::-moz-placeholder{opacity:1}.ant-mentions>textarea::placeholder{color:#bfbfbf;user-select:none}.ant-mentions>textarea:placeholder-shown{text-overflow:ellipsis}.ant-mentions-measure{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;color:transparent;pointer-events:none}.ant-mentions-measure>span{display:inline-block;min-height:1em}.ant-mentions-dropdown{margin:0;padding:0;color:rgba(0,0,0,.85);line-height:1.66667;z-index:1050;font-variant:initial;background-color:#fff;outline:0}.ant-message,.ant-modal,.ant-notification,.ant-page-header,.ant-pagination{font-variant:tabular-nums}.ant-mentions-dropdown-hidden{display:none}.ant-mentions-dropdown-menu{max-height:250px;margin-bottom:0;padding-left:0;overflow:auto;list-style:none;outline:0}.ant-mentions-dropdown-menu-item{position:relative;display:block;min-width:100px;padding:5px 8px;overflow:hidden;color:rgba(0,0,0,.85);font-weight:400;line-height:1.66667;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:background .3s ease}.ant-mentions-dropdown-menu-item:hover{background-color:#f5f5f5}.ant-mentions-dropdown-menu-item:first-child{border-radius:2px 2px 0 0}.ant-mentions-dropdown-menu-item:last-child{border-radius:0 0 2px 2px}.ant-mentions-dropdown-menu-item-disabled{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-mentions-dropdown-menu-item-disabled:hover{color:rgba(0,0,0,.25);background-color:#fff;cursor:not-allowed}.ant-mentions-dropdown-menu-item-selected{color:rgba(0,0,0,.85);font-weight:600;background-color:#fafafa}.ant-mentions-dropdown-menu-item-active{background-color:#f5f5f5}.ant-mentions-suffix{position:absolute;top:0;right:7px;bottom:0;z-index:1;display:inline-flex;align-items:center;margin:auto}.ant-mentions-dropdown{top:100%;left:12px;position:relative;width:100%;margin-top:8px;margin-bottom:4px}.ant-mentions:focus-within{box-shadow:0 0 0 2px rgba(24,144,255,.2)}.ant-input-rtl .ant-mentions:focus-within{border-right-width:0;border-left-width:1px!important}.ant-mentions.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:focus-within{border-color:#ff7875;box-shadow:0 0 0 2px rgba(255,77,79,.2);border-right-width:1px;outline:0}.ant-mentions.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:focus-within{border-color:#ffc53d;box-shadow:0 0 0 2px rgba(250,173,20,.2);border-right-width:1px;outline:0}.ant-message{margin:0;padding:0;color:rgba(0,0,0,.85);line-height:1.66667;position:fixed;top:8px;left:0;z-index:1010;width:100%;pointer-events:none}.ant-message-notice{padding:8px;text-align:center}.ant-message-notice-content{display:inline-block;padding:8px 16px;background:#fff;pointer-events:all}.ant-message-success .anticon{color:#52c41a}.ant-message-error .anticon{color:#ff4d4f}.ant-message-warning .anticon{color:#faad14}.ant-message-info .anticon,.ant-message-loading .anticon{color:#1890ff}.ant-message .anticon{position:relative;top:1px;margin-right:8px;font-size:14px}.ant-message-notice.ant-move-up-leave.ant-move-up-leave-active{animation-name:MessageMoveOut;animation-duration:.3s}@keyframes MessageMoveOut{0%{max-height:150px;padding:8px;opacity:1}100%{max-height:0;padding:0;opacity:0}}.ant-message-rtl .anticon{margin-right:0;margin-left:8px}.ant-modal{box-sizing:border-box;padding:0 0 24px;color:rgba(0,0,0,.85);font-size:12px;line-height:1.66667;list-style:none;font-feature-settings:tnum;pointer-events:none;position:relative;top:100px;width:auto;max-width:calc(100vw - 32px);margin:0 auto}.ant-modal-mask,.ant-modal-wrap{position:fixed;z-index:1000;right:0;left:0;bottom:0}.ant-modal.ant-zoom-appear,.ant-modal.ant-zoom-enter{transform:none;opacity:0;animation-duration:.3s;user-select:none}.ant-modal-mask{top:0;height:100%;background-color:rgba(0,0,0,.45)}.ant-modal-mask-hidden{display:none}.ant-modal-wrap{top:0;overflow:auto;outline:0;-webkit-overflow-scrolling:touch}.ant-modal-title{margin:0;color:rgba(0,0,0,.85);font-weight:500;font-size:14px;line-height:22px;word-wrap:break-word}.ant-modal-content{position:relative;background-color:#fff;background-clip:padding-box;border:0;border-radius:2px;box-shadow:0 3px 6px -4px rgba(0,0,0,.12),0 6px 16px 0 rgba(0,0,0,.08),0 9px 28px 8px rgba(0,0,0,.05);pointer-events:auto}.ant-modal-close{position:absolute;top:0;right:0;z-index:10;padding:0;color:rgba(0,0,0,.45);font-weight:700;line-height:1;text-decoration:none;background:0 0;border:0;outline:0;cursor:pointer;transition:color .3s}.ant-modal-close-x{display:block;width:44px;height:44px;font-size:14px;font-style:normal;line-height:44px;text-align:center;text-transform:none;text-rendering:auto}.ant-modal-close:focus,.ant-modal-close:hover{color:rgba(0,0,0,.75);text-decoration:none}.ant-modal-header{padding:11px 16px;color:rgba(0,0,0,.85);background:#fff;border-bottom:1px solid #f0f0f0;border-radius:2px 2px 0 0}.ant-modal-body{padding:16px;font-size:12px;line-height:1.66667;word-wrap:break-word}.ant-modal-footer{padding:8px 16px;text-align:right;background:0 0;border-top:1px solid #f0f0f0;border-radius:0 0 2px 2px}.ant-modal-footer .ant-btn+.ant-btn:not(.ant-dropdown-trigger){margin-bottom:0;margin-left:8px}.ant-modal-open{overflow:hidden}.ant-modal-centered{text-align:center}.ant-modal-centered::before{display:inline-block;width:0;height:100%;vertical-align:middle;content:''}.ant-modal-centered .ant-modal{top:0;display:inline-block;padding-bottom:0;text-align:left;vertical-align:middle}@media (max-width:767px){.ant-modal{max-width:calc(100vw - 16px);margin:8px auto}.ant-modal-centered .ant-modal{flex:1}}.ant-modal-confirm .ant-modal-header{display:none}.ant-modal-confirm-body-wrapper::after,.ant-modal-confirm-body-wrapper::before{display:table;content:''}.ant-modal-confirm .ant-modal-body{padding:24px 24px 16px}.ant-modal-confirm-body-wrapper::after{clear:both}.ant-modal-confirm-body .ant-modal-confirm-title{display:block;overflow:hidden;color:rgba(0,0,0,.85);font-weight:500;font-size:14px;line-height:1.4}.ant-modal-confirm-body .ant-modal-confirm-content{margin-top:8px;color:rgba(0,0,0,.85);font-size:12px}.ant-modal-confirm-body>.anticon{float:left;margin-right:16px;font-size:22px}.ant-modal-confirm-body>.anticon+.ant-modal-confirm-title+.ant-modal-confirm-content{margin-left:38px}.ant-modal-confirm .ant-modal-confirm-btns{float:right;margin-top:24px}.ant-modal-confirm .ant-modal-confirm-btns .ant-btn+.ant-btn{margin-bottom:0;margin-left:8px}.ant-modal-confirm-error .ant-modal-confirm-body>.anticon{color:#ff4d4f}.ant-modal-confirm-confirm .ant-modal-confirm-body>.anticon,.ant-modal-confirm-warning .ant-modal-confirm-body>.anticon{color:#faad14}.ant-modal-confirm-info .ant-modal-confirm-body>.anticon{color:#1890ff}.ant-modal-confirm-success .ant-modal-confirm-body>.anticon{color:#52c41a}.ant-modal-wrap-rtl .ant-modal-close{right:initial;left:0}.ant-modal-wrap-rtl .ant-modal-footer{text-align:left}.ant-modal-wrap-rtl .ant-modal-footer .ant-btn+.ant-btn{margin-right:8px;margin-left:0}.ant-modal-wrap-rtl .ant-modal-confirm-body>.anticon{float:right;margin-right:0;margin-left:16px}.ant-modal-wrap-rtl .ant-modal-confirm-body>.anticon+.ant-modal-confirm-title+.ant-modal-confirm-content{margin-right:38px;margin-left:0}.ant-modal-wrap-rtl .ant-modal-confirm-btns{float:left}.ant-modal-wrap-rtl .ant-modal-confirm-btns .ant-btn+.ant-btn{margin-right:8px;margin-left:0}.ant-modal-wrap-rtl.ant-modal-centered .ant-modal{text-align:right}.ant-notification{box-sizing:border-box;margin:0 24px 0 0;padding:0;color:rgba(0,0,0,.85);font-size:12px;line-height:1.66667;list-style:none;font-feature-settings:tnum;position:fixed;z-index:1010}.ant-notification-close-icon{font-size:12px;cursor:pointer}.ant-notification-hook-holder{position:relative}.ant-notification-notice{position:relative;width:384px;max-width:calc(100vw - 24px * 2);margin-bottom:16px;margin-left:auto;padding:12px 16px;overflow:hidden;line-height:1.66667;word-wrap:break-word;background:#fff;border-radius:2px;box-shadow:0 3px 6px -4px rgba(0,0,0,.12),0 6px 16px 0 rgba(0,0,0,.08),0 9px 28px 8px rgba(0,0,0,.05)}.ant-notification-bottom .ant-notification-notice,.ant-notification-top .ant-notification-notice{margin-right:auto;margin-left:auto}.ant-notification-bottomLeft .ant-notification-notice,.ant-notification-topLeft .ant-notification-notice{margin-right:auto;margin-left:0}.ant-notification-notice-message{margin-bottom:8px;color:rgba(0,0,0,.85);font-size:14px;line-height:24px}.ant-notification-notice-message-single-line-auto-margin{display:block;width:calc(384px - 16px * 2 - 24px - 48px - 100%);max-width:4px;background-color:transparent;pointer-events:none}.ant-notification-notice-message-single-line-auto-margin::before{display:block;content:''}.ant-notification-notice-description{font-size:12px}.ant-notification-notice-closable .ant-notification-notice-message{padding-right:24px}.ant-notification-notice-with-icon .ant-notification-notice-message{margin-bottom:4px;margin-left:48px;font-size:14px}.ant-notification-notice-with-icon .ant-notification-notice-description{margin-left:48px;font-size:12px}.ant-notification-notice-icon{position:absolute;margin-left:4px;font-size:24px;line-height:24px}.anticon.ant-notification-notice-icon-success{color:#52c41a}.anticon.ant-notification-notice-icon-info{color:#1890ff}.anticon.ant-notification-notice-icon-warning{color:#faad14}.anticon.ant-notification-notice-icon-error{color:#ff4d4f}.ant-notification-notice-close{position:absolute;top:16px;right:22px;color:rgba(0,0,0,.45);outline:0}.ant-notification-notice-close:hover{color:rgba(0,0,0,.67)}.ant-notification-notice-btn{float:right;margin-top:16px}.ant-notification .notification-fade-effect{animation-duration:.24s;animation-timing-function:cubic-bezier(.645,.045,.355,1);animation-fill-mode:both}.ant-notification-fade-appear,.ant-notification-fade-enter{animation-duration:.24s;animation-timing-function:cubic-bezier(.645,.045,.355,1);animation-fill-mode:both;opacity:0;animation-play-state:paused}.ant-notification-fade-leave{animation-timing-function:cubic-bezier(.645,.045,.355,1);animation-fill-mode:both;animation-duration:.2s;animation-play-state:paused}.ant-notification-fade-appear.ant-notification-fade-appear-active,.ant-notification-fade-enter.ant-notification-fade-enter-active{animation-name:NotificationFadeIn;animation-play-state:running}.ant-notification-fade-leave.ant-notification-fade-leave-active{animation-name:NotificationFadeOut;animation-play-state:running}@keyframes NotificationFadeIn{0%{left:384px;opacity:0}100%{left:0;opacity:1}}@keyframes NotificationFadeOut{0%{max-height:150px;margin-bottom:16px;opacity:1}100%{max-height:0;margin-bottom:0;padding-top:0;padding-bottom:0;opacity:0}}.ant-notification-rtl .ant-notification-notice-closable .ant-notification-notice-message{padding-right:0;padding-left:24px}.ant-notification-rtl .ant-notification-notice-with-icon .ant-notification-notice-description,.ant-notification-rtl .ant-notification-notice-with-icon .ant-notification-notice-message{margin-right:48px;margin-left:0}.ant-notification-rtl .ant-notification-notice-icon{margin-right:4px;margin-left:0}.ant-notification-rtl .ant-notification-notice-close{right:auto;left:22px}.ant-notification-rtl .ant-notification-notice-btn{float:left}.ant-notification-bottom,.ant-notification-top{margin-right:0;margin-left:0}.ant-notification-top .ant-notification-fade-appear.ant-notification-fade-appear-active,.ant-notification-top .ant-notification-fade-enter.ant-notification-fade-enter-active{animation-name:NotificationTopFadeIn}.ant-notification-bottom .ant-notification-fade-appear.ant-notification-fade-appear-active,.ant-notification-bottom .ant-notification-fade-enter.ant-notification-fade-enter-active{animation-name:NotificationBottomFadeIn}.ant-notification-bottomLeft,.ant-notification-topLeft{margin-right:0;margin-left:24px}.ant-notification-bottomLeft .ant-notification-fade-appear.ant-notification-fade-appear-active,.ant-notification-bottomLeft .ant-notification-fade-enter.ant-notification-fade-enter-active,.ant-notification-topLeft .ant-notification-fade-appear.ant-notification-fade-appear-active,.ant-notification-topLeft .ant-notification-fade-enter.ant-notification-fade-enter-active{animation-name:NotificationLeftFadeIn}@keyframes NotificationTopFadeIn{0%{margin-top:-100%;opacity:0}100%{margin-top:0;opacity:1}}@keyframes NotificationBottomFadeIn{0%{margin-bottom:-100%;opacity:0}100%{margin-bottom:0;opacity:1}}@keyframes NotificationLeftFadeIn{0%{right:384px;opacity:0}100%{right:0;opacity:1}}.ant-page-header{box-sizing:border-box;margin:0;color:rgba(0,0,0,.85);font-size:12px;line-height:1.66667;list-style:none;font-feature-settings:tnum;position:relative;padding:8px 16px;background-color:#fff}.ant-page-header-content,.ant-page-header.has-breadcrumb{padding-top:8px}.ant-page-header-ghost{background-color:inherit}.ant-page-header.has-footer{padding-bottom:0}.ant-page-header-back{margin-right:8px;font-size:16px;line-height:1}.ant-page-header-back-button{text-decoration:none;outline:0;transition:color .3s;color:#000;cursor:pointer}.ant-page-header-back-button:focus,.ant-page-header-back-button:hover{color:#40a9ff}.ant-page-header-back-button:active{color:#096dd9}.ant-page-header .ant-divider-vertical{height:14px;margin:0 8px;vertical-align:middle}.ant-breadcrumb+.ant-page-header-heading{margin-top:4px}.ant-page-header-heading{display:flex;justify-content:space-between}.ant-page-header-heading-left{display:flex;align-items:center;margin:2px 0;overflow:hidden}.ant-page-header-heading-title{margin-right:8px;margin-bottom:0;color:rgba(0,0,0,.85);font-weight:600;font-size:16px;line-height:28px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-page-header-heading .ant-avatar{margin-right:8px}.ant-page-header-heading-sub-title{margin-right:8px;color:rgba(0,0,0,.45);font-size:12px;line-height:1.66667;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-page-header-heading-extra{margin:2px 0;white-space:nowrap}.ant-page-header-heading-extra>*{white-space:unset}.ant-page-header-footer{margin-top:8px}.ant-page-header-footer .ant-tabs>.ant-tabs-nav{margin:0}.ant-page-header-footer .ant-tabs>.ant-tabs-nav::before{border:none}.ant-page-header-footer .ant-tabs .ant-tabs-tab{padding-top:4px;padding-bottom:4px;font-size:14px}.ant-page-header-compact .ant-page-header-heading{flex-wrap:wrap}.ant-page-header-rtl .ant-page-header-back{float:right;margin-right:0;margin-left:16px}.ant-page-header-rtl .ant-page-header-heading .ant-avatar,.ant-page-header-rtl .ant-page-header-heading-title{margin-right:0;margin-left:8px}.ant-page-header-rtl .ant-page-header-heading-sub-title{float:right;margin-right:0;margin-left:12px}.ant-page-header-rtl .ant-page-header-heading-tags{float:right}.ant-page-header-rtl .ant-page-header-heading-extra{float:left}.ant-page-header-rtl .ant-page-header-heading-extra>*{margin-right:8px;margin-left:0}.ant-pagination,.ant-pagination ol,.ant-pagination ul{margin:0;list-style:none;padding:0}.ant-page-header-rtl .ant-page-header-heading-extra>:first-child{margin-right:0}.ant-page-header-rtl .ant-page-header-footer .ant-tabs-bar .ant-tabs-nav{float:right}.ant-page-header-back-button{border:0;background:0 0;padding:0;line-height:inherit;display:inline-block}nz-page-header,nz-page-header-content,nz-page-header-footer{display:block}.ant-pagination{box-sizing:border-box;color:rgba(0,0,0,.85);font-size:12px;line-height:1.66667;font-feature-settings:tnum}.ant-pagination::after{display:block;clear:both;height:0;overflow:hidden;visibility:hidden;content:' '}.ant-pagination-item,.ant-pagination-total-text{display:inline-block;margin-right:8px;vertical-align:middle;line-height:26px}.ant-pagination-total-text{height:28px}.ant-pagination-item{min-width:28px;height:28px;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,'Noto Sans',sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji';text-align:center;list-style:none;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;outline:0;cursor:pointer;user-select:none}.ant-pagination-item a{display:block;padding:0 6px;color:rgba(0,0,0,.85);transition:none}.ant-pagination-item-active a,.ant-pagination-item:focus-visible a,.ant-pagination-item:hover a{color:#1890ff}.ant-pagination-item:focus-visible,.ant-pagination-item:hover{transition:all .3s;border-color:#1890ff}.ant-pagination-item a:hover{text-decoration:none}.ant-pagination-item-active{font-weight:500;background:#fff;border-color:#1890ff}.ant-pagination-item-active:focus-visible,.ant-pagination-item-active:hover,.ant-pagination-next:hover button,.ant-pagination-prev:hover button{border-color:#40a9ff}.ant-pagination-item-active:focus-visible a,.ant-pagination-item-active:hover a{color:#40a9ff}.ant-pagination-jump-next,.ant-pagination-jump-prev{outline:0}.ant-pagination-jump-next .ant-pagination-item-container,.ant-pagination-jump-prev .ant-pagination-item-container{position:relative}.ant-pagination-jump-next .ant-pagination-item-container .ant-pagination-item-link-icon,.ant-pagination-jump-prev .ant-pagination-item-container .ant-pagination-item-link-icon{color:#1890ff;font-size:12px;letter-spacing:-1px;opacity:0;transition:all .2s}.ant-pagination-jump-next .ant-pagination-item-container .ant-pagination-item-link-icon-svg,.ant-pagination-jump-prev .ant-pagination-item-container .ant-pagination-item-link-icon-svg{top:0;right:0;bottom:0;left:0;margin:auto}.ant-pagination-jump-next .ant-pagination-item-container .ant-pagination-item-ellipsis,.ant-pagination-jump-prev .ant-pagination-item-container .ant-pagination-item-ellipsis{position:absolute;top:0;right:0;bottom:0;left:0;display:block;margin:auto;color:rgba(0,0,0,.25);font-family:Arial,Helvetica,sans-serif;letter-spacing:2px;text-align:center;text-indent:.13em;opacity:1;transition:all .2s}.ant-pagination-jump-next,.ant-pagination-jump-prev,.ant-pagination-next,.ant-pagination-prev,.ant-select-multiple .ant-select-selection-search-input,.ant-select-multiple .ant-select-selection-search-mirror,.ant-statistic-content,.ant-steps-item-icon{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,'Noto Sans',sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji'}.ant-pagination-jump-next:hover .ant-pagination-item-link-icon,.ant-pagination-jump-prev:hover .ant-pagination-item-link-icon{opacity:1}.ant-pagination-jump-next:hover .ant-pagination-item-ellipsis,.ant-pagination-jump-prev:hover .ant-pagination-item-ellipsis{opacity:0}.ant-pagination-jump-next:focus-visible .ant-pagination-item-link-icon,.ant-pagination-jump-prev:focus-visible .ant-pagination-item-link-icon{opacity:1}.ant-pagination-jump-next:focus-visible .ant-pagination-item-ellipsis,.ant-pagination-jump-prev:focus-visible .ant-pagination-item-ellipsis{opacity:0}.ant-pagination-jump-next,.ant-pagination-jump-prev,.ant-pagination-prev{margin-right:8px}.ant-pagination-jump-next,.ant-pagination-jump-prev,.ant-pagination-next,.ant-pagination-prev{display:inline-block;min-width:28px;height:28px;color:rgba(0,0,0,.85);line-height:28px;text-align:center;vertical-align:middle;list-style:none;border-radius:2px;cursor:pointer;transition:all .3s}.ant-pagination-next,.ant-pagination-prev{font-family:Arial,Helvetica,sans-serif;outline:0}.ant-pagination-next button,.ant-pagination-prev button{color:rgba(0,0,0,.85);cursor:pointer;user-select:none}.ant-pagination-next .ant-pagination-item-link,.ant-pagination-prev .ant-pagination-item-link{display:block;width:100%;height:100%;padding:0;font-size:12px;text-align:center;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;outline:0;transition:all .3s}.ant-pagination-next:focus-visible .ant-pagination-item-link,.ant-pagination-next:hover .ant-pagination-item-link,.ant-pagination-prev:focus-visible .ant-pagination-item-link,.ant-pagination-prev:hover .ant-pagination-item-link{color:#1890ff;border-color:#1890ff}.ant-pagination-disabled .ant-pagination-item-link,.ant-pagination-disabled:focus-visible .ant-pagination-item-link,.ant-pagination-disabled:hover .ant-pagination-item-link{color:rgba(0,0,0,.25);border-color:#d9d9d9;cursor:not-allowed}.ant-pagination-disabled,.ant-pagination-disabled:hover{cursor:not-allowed}.ant-pagination-disabled:focus-visible{cursor:not-allowed}.ant-pagination-slash{margin:0 10px 0 5px}.ant-pagination-options{display:inline-block;margin-left:16px;vertical-align:middle}@media all and (-ms-high-contrast:none){.ant-pagination-options,.ant-pagination-options ::-ms-backdrop{vertical-align:top}}.ant-pagination-options-size-changer.ant-select{display:inline-block;width:auto}.ant-pagination-options-quick-jumper{display:inline-block;height:28px;margin-left:4px;line-height:28px;vertical-align:top}.ant-pagination-options-quick-jumper input{position:relative;display:inline-block;min-width:0;padding:3px 7px;color:rgba(0,0,0,.85);font-size:12px;line-height:1.66667;background-color:#fff;background-image:none;border:1px solid #d9d9d9;border-radius:2px;transition:all .3s;width:50px;height:28px;margin:0 8px}.ant-pagination-options-quick-jumper input::-moz-placeholder{opacity:1}.ant-pagination-options-quick-jumper input::placeholder{color:#bfbfbf;user-select:none}.ant-pagination-options-quick-jumper input:placeholder-shown{text-overflow:ellipsis}.ant-pagination-options-quick-jumper input:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-pagination-options-quick-jumper input:hover{border-right-width:0;border-left-width:1px!important}.ant-pagination-options-quick-jumper input-focused,.ant-pagination-options-quick-jumper input:focus{border-color:#40a9ff;box-shadow:0 0 0 2px rgba(24,144,255,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-pagination-options-quick-jumper input-focused,.ant-input-rtl .ant-pagination-options-quick-jumper input:focus{border-right-width:0;border-left-width:1px!important}.ant-pagination-options-quick-jumper input-disabled:hover,.ant-pagination-options-quick-jumper input[disabled]:hover{border-color:#d9d9d9;border-right-width:1px}.ant-pagination-options-quick-jumper input-disabled{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;color:rgba(0,0,0,.25);pointer-events:none}.ant-pagination-options-quick-jumper input[disabled]{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;color:rgba(0,0,0,.25);pointer-events:none}.ant-pagination-options-quick-jumper input-borderless,.ant-pagination-options-quick-jumper input-borderless-disabled,.ant-pagination-options-quick-jumper input-borderless-focused,.ant-pagination-options-quick-jumper input-borderless:focus,.ant-pagination-options-quick-jumper input-borderless:hover,.ant-pagination-options-quick-jumper input-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-pagination-options-quick-jumper input{max-width:100%;height:auto;min-height:28px;line-height:1.66667;vertical-align:bottom;transition:all .3s,height 0s}.ant-pagination-options-quick-jumper input-lg{padding:3.4px 11px;font-size:14px}.ant-pagination-options-quick-jumper input-sm{padding:0 7px}.ant-pagination-options-quick-jumper input-stepperless[type=number]{-moz-appearance:textfield}.ant-pagination-options-quick-jumper input-stepperless[type=number] ::-webkit-outer-spin-button,.ant-pagination-options-quick-jumper input-stepperless[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ant-pagination-simple .ant-pagination-next,.ant-pagination-simple .ant-pagination-prev{height:22px;line-height:22px;vertical-align:top}.ant-progress-inner,.ant-progress-text,.ant-rate-star-first .anticon,.ant-rate-star-second .anticon{vertical-align:middle}.ant-pagination-simple .ant-pagination-next .ant-pagination-item-link,.ant-pagination-simple .ant-pagination-prev .ant-pagination-item-link{height:22px;background-color:transparent;border:0}.ant-pagination-simple .ant-pagination-next .ant-pagination-item-link::after,.ant-pagination-simple .ant-pagination-prev .ant-pagination-item-link::after{height:22px;line-height:22px}.ant-pagination-simple .ant-pagination-simple-pager{display:inline-block;height:22px;margin-right:8px}.ant-pagination-simple .ant-pagination-simple-pager input{box-sizing:border-box;height:100%;margin-right:8px;padding:0 6px;text-align:center;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;outline:0;transition:border-color .3s}.ant-pagination-simple .ant-pagination-simple-pager input:hover{border-color:#1890ff}.ant-pagination-simple .ant-pagination-simple-pager input:focus{border-color:#40a9ff;box-shadow:0 0 0 2px rgba(24,144,255,.2)}.ant-pagination-simple .ant-pagination-simple-pager input[disabled]{color:rgba(0,0,0,.25);background:#f5f5f5;border-color:#d9d9d9;cursor:not-allowed}.ant-pagination.mini .ant-pagination-item:not(.ant-pagination-item-active),.ant-pagination.mini .ant-pagination-next .ant-pagination-item-link,.ant-pagination.mini .ant-pagination-prev .ant-pagination-item-link{background:0 0;border-color:transparent}.ant-pagination.mini .ant-pagination-simple-pager,.ant-pagination.mini .ant-pagination-total-text{height:22px;line-height:22px}.ant-pagination.mini .ant-pagination-item{min-width:22px;height:22px;margin:0;line-height:20px}.ant-pagination.mini .ant-pagination-next,.ant-pagination.mini .ant-pagination-prev{min-width:22px;height:22px;margin:0;line-height:22px}.ant-pagination.mini .ant-pagination-next .ant-pagination-item-link::after,.ant-pagination.mini .ant-pagination-prev .ant-pagination-item-link::after{height:22px;line-height:22px}.ant-pagination.mini .ant-pagination-jump-next,.ant-pagination.mini .ant-pagination-jump-prev{height:22px;margin-right:0;line-height:22px}.ant-pagination.mini .ant-pagination-options{margin-left:2px}.ant-pagination.mini .ant-pagination-options-size-changer{top:1px}.ant-pagination.mini .ant-pagination-options-quick-jumper{height:22px;line-height:22px}.ant-popover,.ant-progress{box-sizing:border-box;font-variant:tabular-nums;line-height:1.66667;list-style:none;font-feature-settings:tnum;font-size:12px}.ant-pagination.mini .ant-pagination-options-quick-jumper input{padding:0 7px;width:44px;height:22px}.ant-pagination.ant-pagination-disabled{cursor:not-allowed}.ant-pagination.ant-pagination-disabled .ant-pagination-item{background:#f5f5f5;border-color:#d9d9d9;cursor:not-allowed}.ant-pagination.ant-pagination-disabled .ant-pagination-item a{color:rgba(0,0,0,.25);background:0 0;border:none;cursor:not-allowed}.ant-pagination.ant-pagination-disabled .ant-pagination-item-active{background:#e6e6e6}.ant-pagination.ant-pagination-disabled .ant-pagination-item-active a{color:rgba(0,0,0,.25)}.ant-pagination.ant-pagination-disabled .ant-pagination-item-link{color:rgba(0,0,0,.25);background:#f5f5f5;border-color:#d9d9d9;cursor:not-allowed}.ant-pagination-simple.ant-pagination.ant-pagination-disabled .ant-pagination-item-link{background:0 0}.ant-pagination.ant-pagination-disabled .ant-pagination-item-link-icon{opacity:0}.ant-pagination.ant-pagination-disabled .ant-pagination-item-ellipsis{opacity:1}.ant-pagination.ant-pagination-disabled .ant-pagination-simple-pager{color:rgba(0,0,0,.25)}@media only screen and (max-width:992px){.ant-pagination-item-after-jump-prev,.ant-pagination-item-before-jump-next{display:none}}@media only screen and (max-width:576px){.ant-pagination-options{display:none}}.ant-pagination-rtl .ant-pagination-item,.ant-pagination-rtl .ant-pagination-jump-next,.ant-pagination-rtl .ant-pagination-jump-prev,.ant-pagination-rtl .ant-pagination-prev,.ant-pagination-rtl .ant-pagination-total-text{margin-right:0;margin-left:8px}.ant-pagination-rtl .ant-pagination-slash{margin:0 5px 0 10px}.ant-pagination-rtl .ant-pagination-options{margin-right:16px;margin-left:0}.ant-pagination-rtl .ant-pagination-options .ant-pagination-options-size-changer.ant-select{margin-right:0;margin-left:8px}.ant-pagination-rtl .ant-pagination-options .ant-pagination-options-quick-jumper{margin-left:0}.ant-pagination-rtl.ant-pagination-simple .ant-pagination-simple-pager,.ant-pagination-rtl.ant-pagination-simple .ant-pagination-simple-pager input{margin-right:0;margin-left:8px}.ant-pagination-rtl.ant-pagination.mini .ant-pagination-options{margin-right:2px;margin-left:0}nz-pagination{display:block}.ant-popover-hidden,.ant-radio+span:empty{display:none}.ant-popover{margin:0;padding:0;color:rgba(0,0,0,.85);top:0;left:0;z-index:1030;font-weight:400;white-space:normal;text-align:left;cursor:auto;user-select:text}.ant-popover::after{position:absolute;background:rgba(255,255,255,.01);content:''}.ant-popover-placement-top,.ant-popover-placement-topLeft,.ant-popover-placement-topRight{padding-bottom:15.31px}.ant-popover-placement-right,.ant-popover-placement-rightBottom,.ant-popover-placement-rightTop{padding-left:15.31px}.ant-popover-placement-bottom,.ant-popover-placement-bottomLeft,.ant-popover-placement-bottomRight{padding-top:15.31px}.ant-popover-placement-left,.ant-popover-placement-leftBottom,.ant-popover-placement-leftTop{padding-right:15.31px}.ant-popover-inner{background-color:#fff;background-clip:padding-box;border-radius:2px;box-shadow:0 3px 6px -4px rgba(0,0,0,.12),0 6px 16px 0 rgba(0,0,0,.08),0 9px 28px 8px rgba(0,0,0,.05);box-shadow:0 0 8px rgba(0,0,0,.15)\9}@media screen and (-ms-high-contrast:active),(-ms-high-contrast:none){.ant-popover-inner{box-shadow:0 3px 6px -4px rgba(0,0,0,.12),0 6px 16px 0 rgba(0,0,0,.08),0 9px 28px 8px rgba(0,0,0,.05)}}.ant-popover-title{min-width:177px;min-height:28px;margin:0;padding:5px 12px 4px;color:rgba(0,0,0,.85);font-weight:500;border-bottom:1px solid #f0f0f0}.ant-popover-inner-content{padding:8px 12px;color:rgba(0,0,0,.85)}.ant-popover-message{position:relative;padding:4px 0 12px;color:rgba(0,0,0,.85);font-size:12px}.ant-popover-message>.anticon{position:absolute;top:8px;color:#faad14;font-size:12px}.ant-popover-message-title{padding-left:20px}.ant-popover-buttons{margin-bottom:4px;text-align:right}.ant-popover-buttons button{margin-left:8px}.ant-popover-arrow{position:absolute;display:block;width:16px;height:16px;overflow:hidden;background:0 0;pointer-events:none}.ant-popover-arrow-content{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:11.31px;height:11.31px;margin:auto;background-color:#fff;content:'';border-radius:0 0 2px;pointer-events:none}.ant-progress,.ant-progress-steps{display:inline-block}.ant-popover-arrow-content::before{position:absolute;top:-11.31px;left:-11.31px;width:33.94px;height:33.94px;background:-10px -10px no-repeat #fff;content:'';clip-path:path('M 9.849242404917499 24.091883092036785 A 5 5 0 0 1 13.384776310850237 22.627416997969522 L 20.627416997969522 22.627416997969522 A 2 2 0 0 0 22.627416997969522 20.627416997969522 L 22.627416997969522 13.384776310850237 A 5 5 0 0 1 24.091883092036785 9.849242404917499 L 23.091883092036785 9.849242404917499 L 9.849242404917499 23.091883092036785 Z')}.ant-popover-magenta .ant-popover-arrow-content,.ant-popover-magenta .ant-popover-inner,.ant-popover-pink .ant-popover-arrow-content,.ant-popover-pink .ant-popover-inner,.ant-tooltip-magenta .ant-tooltip-inner,.ant-tooltip-pink .ant-tooltip-inner{background-color:#eb2f96}.ant-popover-placement-top .ant-popover-arrow,.ant-popover-placement-topLeft .ant-popover-arrow,.ant-popover-placement-topRight .ant-popover-arrow{bottom:-.69px}.ant-popover-placement-top .ant-popover-arrow-content,.ant-popover-placement-topLeft .ant-popover-arrow-content,.ant-popover-placement-topRight .ant-popover-arrow-content{box-shadow:3px 3px 7px rgba(0,0,0,.07);transform:translateY(-8px) rotate(45deg)}.ant-popover-placement-top .ant-popover-arrow{left:50%;transform:translateX(-50%)}.ant-popover-placement-topLeft .ant-popover-arrow{left:16px}.ant-popover-placement-topRight .ant-popover-arrow{right:16px}.ant-popover-placement-right .ant-popover-arrow,.ant-popover-placement-rightBottom .ant-popover-arrow,.ant-popover-placement-rightTop .ant-popover-arrow{left:-.69px}.ant-popover-placement-right .ant-popover-arrow-content,.ant-popover-placement-rightBottom .ant-popover-arrow-content,.ant-popover-placement-rightTop .ant-popover-arrow-content{box-shadow:3px 3px 7px rgba(0,0,0,.07);transform:translateX(8px) rotate(135deg)}.ant-popover-placement-right .ant-popover-arrow{top:50%;transform:translateY(-50%)}.ant-popover-placement-rightTop .ant-popover-arrow{top:12px}.ant-popover-placement-bottom .ant-popover-arrow,.ant-popover-placement-bottomLeft .ant-popover-arrow,.ant-popover-placement-bottomRight .ant-popover-arrow{top:-.69px}.ant-popover-placement-bottom .ant-popover-arrow-content,.ant-popover-placement-bottomLeft .ant-popover-arrow-content,.ant-popover-placement-bottomRight .ant-popover-arrow-content{box-shadow:2px 2px 5px rgba(0,0,0,.06);transform:translateY(8px) rotate(-135deg)}.ant-popover-placement-bottom .ant-popover-arrow{left:50%;transform:translateX(-50%)}.ant-popover-placement-bottomLeft .ant-popover-arrow{left:16px}.ant-popover-placement-bottomRight .ant-popover-arrow{right:16px}.ant-popover-placement-left .ant-popover-arrow,.ant-popover-placement-leftBottom .ant-popover-arrow,.ant-popover-placement-leftTop .ant-popover-arrow{right:-.69px}.ant-popover-placement-left .ant-popover-arrow-content,.ant-popover-placement-leftBottom .ant-popover-arrow-content,.ant-popover-placement-leftTop .ant-popover-arrow-content{box-shadow:3px 3px 7px rgba(0,0,0,.07);transform:translateX(-8px) rotate(-45deg)}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):focus-within,.ant-radio-button-wrapper:focus-within,.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):focus-within,.ant-radio-input:focus+.ant-radio-inner{box-shadow:0 0 0 3px #e6f7ff}.ant-popover-placement-left .ant-popover-arrow{top:50%;transform:translateY(-50%)}.ant-popover-placement-leftTop .ant-popover-arrow{top:12px}.ant-popover-red .ant-popover-arrow-content,.ant-popover-red .ant-popover-inner{background-color:#f5222d}.ant-popover-volcano .ant-popover-arrow-content,.ant-popover-volcano .ant-popover-inner{background-color:#fa541c}.ant-popover-orange .ant-popover-arrow-content,.ant-popover-orange .ant-popover-inner{background-color:#fa8c16}.ant-popover-yellow .ant-popover-arrow-content,.ant-popover-yellow .ant-popover-inner{background-color:#fadb14}.ant-popover-gold .ant-popover-arrow-content,.ant-popover-gold .ant-popover-inner{background-color:#faad14}.ant-popover-cyan .ant-popover-arrow-content,.ant-popover-cyan .ant-popover-inner{background-color:#13c2c2}.ant-popover-lime .ant-popover-arrow-content,.ant-popover-lime .ant-popover-inner{background-color:#a0d911}.ant-popover-green .ant-popover-arrow-content,.ant-popover-green .ant-popover-inner{background-color:#52c41a}.ant-popover-blue .ant-popover-arrow-content,.ant-popover-blue .ant-popover-inner{background-color:#1890ff}.ant-popover-geekblue .ant-popover-arrow-content,.ant-popover-geekblue .ant-popover-inner{background-color:#2f54eb}.ant-popover-purple .ant-popover-arrow-content,.ant-popover-purple .ant-popover-inner{background-color:#722ed1}.ant-popover-rtl{text-align:right}.ant-popover-rtl .ant-popover-message-title{padding-right:20px;padding-left:8px}.ant-popover-rtl .ant-popover-buttons{text-align:left}.ant-popover-rtl .ant-popover-buttons button{margin-right:8px;margin-left:0}.ant-popover{position:relative}.ant-progress{margin:0;padding:0;color:rgba(0,0,0,.85)}.ant-progress-line{position:relative;width:100%;font-size:12px}.ant-progress-steps-outer{display:flex;flex-direction:row;align-items:center}.ant-progress-steps-item{flex-shrink:0;min-width:2px;margin-right:2px;background:#f3f3f3;transition:all .3s}.ant-progress-steps-item-active{background:#1890ff}.ant-progress-small.ant-progress-line,.ant-progress-small.ant-progress-line .ant-progress-text .anticon{font-size:12px}.ant-progress-outer{display:inline-block;width:100%;margin-right:0;padding-right:0}.ant-progress-show-info .ant-progress-outer{margin-right:calc(-2em - 8px);padding-right:calc(2em + 8px)}.ant-progress-inner{position:relative;display:inline-block;width:100%;overflow:hidden;background-color:#f5f5f5;border-radius:100px}.ant-progress-circle-trail{stroke:#f5f5f5}.ant-progress-circle-path{animation:ant-progress-appear .3s}.ant-progress-inner:not(.ant-progress-circle-gradient) .ant-progress-circle-path{stroke:#1890ff}.ant-progress-bg,.ant-progress-success-bg{position:relative;background-color:#1890ff;border-radius:100px;transition:all .4s cubic-bezier(.08,.82,.17,1) 0s}.ant-progress-success-bg{position:absolute;top:0;left:0;background-color:#52c41a}.ant-progress-text{display:inline-block;width:2em;margin-left:8px;color:rgba(0,0,0,.85);font-size:1em;line-height:1;white-space:nowrap;text-align:left;word-break:normal}.ant-progress-text .anticon{font-size:12px}.ant-progress-status-active .ant-progress-bg::before{position:absolute;top:0;right:0;bottom:0;left:0;background:#fff;border-radius:10px;opacity:0;animation:ant-progress-active 2.4s cubic-bezier(.23,1,.32,1) infinite;content:''}.ant-progress-status-exception .ant-progress-bg{background-color:#ff4d4f}.ant-progress-status-exception .ant-progress-text{color:#ff4d4f}.ant-progress-status-exception .ant-progress-inner:not(.ant-progress-circle-gradient) .ant-progress-circle-path{stroke:#ff4d4f}.ant-progress-status-success .ant-progress-bg{background-color:#52c41a}.ant-progress-status-success .ant-progress-text{color:#52c41a}.ant-progress-status-success .ant-progress-inner:not(.ant-progress-circle-gradient) .ant-progress-circle-path{stroke:#52c41a}.ant-progress-circle .ant-progress-inner{position:relative;line-height:1;background-color:transparent}.ant-progress-circle .ant-progress-text{position:absolute;top:50%;left:50%;width:100%;margin:0;padding:0;color:rgba(0,0,0,.85);font-size:.833333em;line-height:1;white-space:normal;text-align:center;transform:translate(-50%,-50%)}.ant-radio,.ant-radio-wrapper{position:relative;font-size:12px}.ant-progress-circle .ant-progress-text .anticon{font-size:1.16666667em}.ant-progress-circle.ant-progress-status-exception .ant-progress-text{color:#ff4d4f}.ant-progress-circle.ant-progress-status-success .ant-progress-text{color:#52c41a}@keyframes ant-progress-active{0%{transform:translateX(-100%) scaleX(0);opacity:.1}20%{transform:translateX(-100%) scaleX(0);opacity:.5}100%{transform:translateX(0) scaleX(1);opacity:0}}.ant-progress-rtl.ant-progress-show-info .ant-progress-outer{margin-right:0;margin-left:calc(-2em - 8px);padding-right:0;padding-left:calc(2em + 8px)}.ant-radio,.ant-radio-group,.ant-radio-wrapper{box-sizing:border-box;padding:0;color:rgba(0,0,0,.85);line-height:1.66667;font-feature-settings:tnum;list-style:none;font-variant:tabular-nums}.ant-progress-rtl .ant-progress-success-bg{right:0;left:auto}.ant-progress-rtl.ant-progress-line .ant-progress-text,.ant-progress-rtl.ant-progress-steps .ant-progress-text{margin-right:8px;margin-left:0;text-align:right}.ant-radio-group{margin:0;display:inline-block;font-size:0}.ant-radio-group .ant-badge-count{z-index:1}.ant-radio-group>.ant-badge:not(:first-child)>.ant-radio-button-wrapper{border-left:none}.ant-radio-wrapper{margin:0 6px 0 0;display:inline-flex;align-items:baseline;cursor:pointer}.ant-radio-wrapper-disabled{cursor:not-allowed}.ant-radio-wrapper::after{display:inline-block;width:0;overflow:hidden;content:'\a0'}.ant-radio-wrapper.ant-radio-wrapper-in-form-item input[type=radio]{width:14px;height:14px}.ant-radio{margin:0;top:.2em;display:inline-block;outline:0;cursor:pointer}.ant-radio-input:focus+.ant-radio-inner,.ant-radio-wrapper:hover .ant-radio,.ant-radio:hover .ant-radio-inner{border-color:#1890ff}.ant-radio-checked::after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #1890ff;border-radius:50%;visibility:hidden;animation:antRadioEffect .36s ease-in-out;animation-fill-mode:both;content:''}.ant-radio-wrapper:hover .ant-radio::after,.ant-radio:hover::after,.ant-tooltip{visibility:visible}.ant-radio-inner{position:relative;top:0;left:0;display:block;width:14px;height:14px;background-color:#fff;border-color:#d9d9d9;border-style:solid;border-width:1px;border-radius:50%;transition:all .3s}.ant-radio-inner::after{position:absolute;top:50%;left:50%;display:block;width:14px;height:14px;margin-top:-7px;margin-left:-7px;background-color:#1890ff;border-top:0;border-left:0;border-radius:14px;transform:scale(0);opacity:0;transition:all .3s cubic-bezier(.78,.14,.15,.86);content:' '}.ant-radio-input{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;cursor:pointer;opacity:0}.ant-radio-button-wrapper-disabled,.ant-radio-disabled,.ant-radio-disabled .ant-radio-inner,.ant-radio-disabled .ant-radio-input,.ant-radio-disabled+span{cursor:not-allowed}.ant-radio-checked .ant-radio-inner{border-color:#1890ff}.ant-radio-checked .ant-radio-inner::after{transform:scale(.42857143);opacity:1;transition:all .3s cubic-bezier(.78,.14,.15,.86)}.ant-radio-disabled .ant-radio-inner{background-color:#f5f5f5;border-color:#d9d9d9!important}.ant-radio-disabled .ant-radio-inner::after{background-color:rgba(0,0,0,.2)}.ant-radio-disabled+span{color:rgba(0,0,0,.25)}span.ant-radio+*{padding-right:8px;padding-left:8px}.ant-radio-button-wrapper{position:relative;display:inline-block;height:28px;margin:0;padding:0 7px;color:rgba(0,0,0,.85);font-size:12px;line-height:26px;background:#fff;border:1px solid #d9d9d9;border-top-width:1.02px;border-left-width:0;cursor:pointer;transition:color .3s,background .3s,border-color .3s,box-shadow .3s}.ant-radio-button-wrapper a{color:rgba(0,0,0,.85)}.ant-radio-button-wrapper>.ant-radio-button{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%}.ant-radio-group-large .ant-radio-button-wrapper{height:32px;font-size:14px;line-height:30px}.ant-radio-group-small .ant-radio-button-wrapper{height:22px;padding:0 7px;line-height:20px}.ant-radio-button-wrapper:not(:first-child)::before{position:absolute;top:-1px;left:-1px;display:block;box-sizing:content-box;width:1px;height:100%;padding:1px 0;background-color:#d9d9d9;transition:background-color .3s;content:''}.ant-radio-button-wrapper:first-child{border-left:1px solid #d9d9d9;border-radius:2px 0 0 2px}.ant-radio-button-wrapper:last-child{border-radius:0 2px 2px 0}.ant-radio-button-wrapper:first-child:last-child{border-radius:2px}.ant-radio-button-wrapper:hover{position:relative;color:#1890ff}.ant-radio-button-wrapper .ant-radio-inner,.ant-radio-button-wrapper input[type=radio],.ant-radio-button-wrapper input[type=checkbox]{width:0;height:0;opacity:0;pointer-events:none}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled){z-index:1;color:#1890ff;background:#fff;border-color:#1890ff}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled)::before{background-color:#1890ff}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):first-child{border-color:#1890ff}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):hover{color:#40a9ff;border-color:#40a9ff}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):hover::before{background-color:#40a9ff}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):active{color:#096dd9;border-color:#096dd9}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):active::before{background-color:#096dd9}.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled){color:#fff;background:#1890ff;border-color:#1890ff}.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):hover{color:#fff;background:#40a9ff;border-color:#40a9ff}.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):active{color:#fff;background:#096dd9;border-color:#096dd9}.ant-radio-button-wrapper-disabled,.ant-radio-button-wrapper-disabled:first-child,.ant-radio-button-wrapper-disabled:hover{color:rgba(0,0,0,.25);background-color:#f5f5f5;border-color:#d9d9d9}.ant-radio-button-wrapper-disabled:first-child{border-left-color:#d9d9d9}.ant-radio-button-wrapper-disabled.ant-radio-button-wrapper-checked{color:rgba(0,0,0,.25);background-color:#e6e6e6;border-color:#d9d9d9;box-shadow:none}@keyframes antRadioEffect{0%{transform:scale(1);opacity:.5}100%{transform:scale(1.6);opacity:0}}.ant-radio-wrapper.ant-radio-wrapper-rtl{margin-right:0;margin-left:6px}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl{border-right-width:0;border-left-width:1px}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl.ant-radio-button-wrapper:not(:first-child)::before{right:-1px;left:0}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl.ant-radio-button-wrapper:first-child{border-right:1px solid #d9d9d9;border-radius:0 2px 2px 0}.ant-radio-button-wrapper-checked:not([class*=' ant-radio-button-wrapper-disabled']).ant-radio-button-wrapper:first-child{border-right-color:#40a9ff}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl.ant-radio-button-wrapper:last-child{border-radius:2px 0 0 2px}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl.ant-radio-button-wrapper-disabled:first-child{border-right-color:#d9d9d9}.ant-rate,.ant-rate-star,.ant-rate-text{display:inline-block}.ant-rate{box-sizing:border-box;font-variant:tabular-nums;font-feature-settings:tnum;margin:0;padding:0;color:#fadb14;font-size:16px;line-height:unset;list-style:none;outline:0}.ant-rate-disabled .ant-rate-star{cursor:default}.ant-rate-disabled .ant-rate-star>div:hover{transform:scale(1)}.ant-rate-star{position:relative;color:inherit;cursor:pointer}.ant-rate-star:not(:last-child){margin-right:8px}.ant-rate-star>div{transition:all .3s,outline 0s}.ant-rate-star>div:hover{transform:scale(1.1)}.ant-rate-star>div:focus{outline:0}.ant-rate-star>div:focus-visible{outline:#fadb14 dashed 1px;transform:scale(1.1)}.ant-rate-star-first,.ant-rate-star-second{color:#f0f0f0;transition:all .3s;user-select:none}.ant-rate-star-first{position:absolute;top:0;left:0;width:50%;height:100%;overflow:hidden;opacity:0}.ant-rate-star-half .ant-rate-star-first,.ant-rate-star-half .ant-rate-star-second{opacity:1}.ant-rate-star-full .ant-rate-star-second,.ant-rate-star-half .ant-rate-star-first{color:inherit}.ant-rate-text{margin:0 8px;font-size:12px}.ant-rate-rtl .ant-rate-star:not(:last-child){margin-right:0;margin-left:8px}.ant-rate-rtl .ant-rate-star-first{right:0;left:auto}.ant-select-single .ant-select-selector{display:flex}.ant-select-single .ant-select-selector .ant-select-selection-search{position:absolute;top:0;right:7px;bottom:0;left:7px}.ant-select-single .ant-select-selector .ant-select-selection-search-input{width:100%}.ant-select-single .ant-select-selector .ant-select-selection-item,.ant-select-single .ant-select-selector .ant-select-selection-placeholder{padding:0;line-height:26px;transition:all .3s}@supports (-moz-appearance:meterbar){.ant-select-single .ant-select-selector .ant-select-selection-item,.ant-select-single .ant-select-selector .ant-select-selection-placeholder{line-height:26px}}.ant-select-single .ant-select-selector .ant-select-selection-item{position:relative;user-select:none}.ant-select-single .ant-select-selector .ant-select-selection-placeholder{transition:none;pointer-events:none}.ant-select-single .ant-select-selector .ant-select-selection-item::after,.ant-select-single .ant-select-selector .ant-select-selection-placeholder::after,.ant-select-single .ant-select-selector::after{display:inline-block;width:0;visibility:hidden;content:'\a0'}.ant-select-single.ant-select-customize-input .ant-select-selector .ant-select-selection-placeholder::after,.ant-select-single.ant-select-customize-input .ant-select-selector::after{display:none}.ant-select-single.ant-select-show-arrow .ant-select-selection-search{right:19px}.ant-select-single.ant-select-show-arrow .ant-select-selection-item,.ant-select-single.ant-select-show-arrow .ant-select-selection-placeholder{padding-right:15px}.ant-select-single.ant-select-open .ant-select-selection-item{color:#bfbfbf}.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{width:100%;height:28px;padding:0 7px}.ant-select-single:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-search-input{height:26px}.ant-select-single:not(.ant-select-customize-input) .ant-select-selector::after{line-height:26px}.ant-select-single.ant-select-customize-input .ant-select-selector .ant-select-selection-search{position:static;width:100%}.ant-select-single.ant-select-customize-input .ant-select-selector .ant-select-selection-placeholder{position:absolute;right:0;left:0;padding:0 7px}.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector{height:32px}.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-item,.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-placeholder,.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector::after{line-height:30px}.ant-select-single.ant-select-lg:not(.ant-select-customize-input):not(.ant-select-customize-input) .ant-select-selection-search-input{height:30px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector{height:22px;padding:0 7px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-item,.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-placeholder,.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector::after{line-height:20px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input):not(.ant-select-customize-input) .ant-select-selection-search-input{height:20px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selection-search{right:7px;left:7px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-search{right:25px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-item,.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-placeholder{padding-right:18px}.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector{padding:0 11px}.ant-select-selection-overflow{position:relative;display:flex;flex:auto;flex-wrap:wrap;max-width:100%}.ant-select-selection-overflow-item{flex:none;align-self:center;max-width:100%}.ant-select-multiple .ant-select-selector{display:flex;flex-wrap:wrap;align-items:center;padding:0 3px}.ant-select-show-search.ant-select-multiple .ant-select-selector{cursor:text}.ant-select-disabled.ant-select-multiple .ant-select-selector{background:#f5f5f5;cursor:not-allowed}.ant-select-multiple .ant-select-selector::after{display:inline-block;width:0;margin:3px 0;line-height:20px;content:'\a0'}.ant-select-multiple.ant-select-allow-clear .ant-select-selector,.ant-select-multiple.ant-select-show-arrow .ant-select-selector{padding-right:20px}.ant-select-multiple .ant-select-selection-item{position:relative;display:flex;flex:none;box-sizing:border-box;max-width:100%;height:20px;margin-top:3px;margin-bottom:3px;line-height:18px;background:#f5f5f5;border:1px solid #f0f0f0;border-radius:2px;cursor:default;transition:font-size .3s,line-height .3s,height .3s;user-select:none;margin-inline-end:3px;padding-inline-start:4px;padding-inline-end:2px}.ant-select-disabled.ant-select-multiple .ant-select-selection-item{color:#bfbfbf;border-color:#d9d9d9;cursor:not-allowed}.ant-select-multiple .ant-select-selection-item-content{display:inline-block;margin-right:2px;overflow:hidden;white-space:pre;text-overflow:ellipsis}.ant-select-multiple .ant-select-selection-item-remove{color:inherit;font-style:normal;text-align:center;text-transform:none;vertical-align:-.125em;display:inline-block;color:rgba(0,0,0,.45);font-weight:700;font-size:10px;line-height:inherit;cursor:pointer}.ant-select-multiple .ant-select-selection-item-remove>*{line-height:1}.ant-select-multiple .ant-select-selection-item-remove svg{display:inline-block}.ant-select-disabled .ant-select-selection-item-remove,.ant-select-multiple .ant-select-selection-item-remove::before{display:none}.ant-select-multiple .ant-select-selection-item-remove .ant-select-multiple .ant-select-selection-item-remove-icon{display:block}.ant-select-multiple .ant-select-selection-item-remove>.anticon{vertical-align:middle}.ant-select-multiple .ant-select-selection-item-remove:hover{color:rgba(0,0,0,.75)}.ant-select-multiple .ant-select-selection-overflow-item+.ant-select-selection-overflow-item .ant-select-selection-search{margin-inline-start:0}.ant-select-multiple .ant-select-selection-search{position:relative;max-width:100%;margin-inline-start:4px}.ant-select-multiple .ant-select-selection-search-input,.ant-select-multiple .ant-select-selection-search-mirror{height:20px;line-height:20px;transition:all .3s}.ant-select-multiple .ant-select-selection-search-input{width:100%;min-width:4.1px}.ant-select-multiple .ant-select-selection-search-mirror{position:absolute;top:0;left:0;z-index:999;white-space:pre;visibility:hidden}.ant-select-multiple .ant-select-selection-placeholder{position:absolute;top:50%;right:7px;left:7px;transform:translateY(-50%);transition:all .3s}.ant-select-status-error.ant-select-has-feedback .ant-select-clear,.ant-select-status-success.ant-select-has-feedback .ant-select-clear,.ant-select-status-validating.ant-select-has-feedback .ant-select-clear,.ant-select-status-warning.ant-select-has-feedback .ant-select-clear,.theme-btn{right:32px}.ant-select-multiple.ant-select-lg .ant-select-selector::after{line-height:26px}.ant-select-multiple.ant-select-lg .ant-select-selection-search{height:26px;line-height:26px}.ant-select-multiple.ant-select-lg .ant-select-selection-search-input,.ant-select-multiple.ant-select-lg .ant-select-selection-search-mirror{height:26px;line-height:24px}.ant-select-multiple.ant-select-sm .ant-select-selector::after{line-height:16px}.ant-select-multiple.ant-select-sm .ant-select-selection-item{height:16px;line-height:14px}.ant-select-multiple.ant-select-sm .ant-select-selection-search{height:16px;line-height:16px;margin-inline-start:3px}.ant-select-multiple.ant-select-sm .ant-select-selection-search-input,.ant-select-multiple.ant-select-sm .ant-select-selection-search-mirror{height:16px;line-height:14px}.ant-select-multiple.ant-select-sm .ant-select-selection-placeholder{left:7px}.ant-select-multiple.ant-select-lg .ant-select-selection-item{height:24px;line-height:24px}.ant-select,.ant-select-dropdown{line-height:1.66667;font-feature-settings:tnum;list-style:none}.ant-select-status-error.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input) .ant-select-selector{background-color:#fff;border-color:#ff4d4f!important}.ant-select-status-error.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input).ant-select-focused .ant-select-selector,.ant-select-status-error.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input).ant-select-open .ant-select-selector{border-color:#ff7875;box-shadow:0 0 0 2px rgba(255,77,79,.2);border-right-width:1px;outline:0}.ant-select-status-warning.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input) .ant-select-selector{background-color:#fff;border-color:#faad14!important}.ant-select-status-warning.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input).ant-select-focused .ant-select-selector,.ant-select-status-warning.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input).ant-select-open .ant-select-selector{border-color:#ffc53d;box-shadow:0 0 0 2px rgba(250,173,20,.2);border-right-width:1px;outline:0}.ant-select-status-error.ant-select-has-feedback .ant-select-selection-selected-value,.ant-select-status-success.ant-select-has-feedback .ant-select-selection-selected-value,.ant-select-status-validating.ant-select-has-feedback .ant-select-selection-selected-value,.ant-select-status-warning.ant-select-has-feedback .ant-select-selection-selected-value{padding-right:42px}.ant-select{box-sizing:border-box;margin:0;padding:0;color:rgba(0,0,0,.85);font-size:12px;font-variant:tabular-nums;position:relative;display:inline-block;cursor:pointer}.ant-select:not(.ant-select-customize-input) .ant-select-selector{position:relative;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;transition:all .3s cubic-bezier(.645,.045,.355,1)}.ant-select:not(.ant-select-customize-input) .ant-select-selector input{cursor:pointer}.ant-select-show-search.ant-select:not(.ant-select-customize-input) .ant-select-selector{cursor:text}.ant-select-show-search.ant-select:not(.ant-select-customize-input) .ant-select-selector input{cursor:auto}.ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector{border-color:#40a9ff;box-shadow:0 0 0 2px rgba(24,144,255,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector{border-right-width:0;border-left-width:1px!important}.ant-select-disabled.ant-select:not(.ant-select-customize-input) .ant-select-selector{color:rgba(0,0,0,.25);background:#f5f5f5;cursor:not-allowed}.ant-select-multiple.ant-select-disabled.ant-select:not(.ant-select-customize-input) .ant-select-selector{background:#f5f5f5}.ant-select-disabled.ant-select:not(.ant-select-customize-input) .ant-select-selector input{cursor:not-allowed}.ant-select:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-search-input{margin:0;padding:0;background:0 0;border:none;outline:0;appearance:none}.ant-select-arrow,.ant-select-clear{position:absolute;top:50%;right:7px;height:12px;margin-top:-6px;font-size:12px;line-height:1;text-transform:none;font-style:normal}.ant-select:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-search-input::-webkit-search-cancel-button{display:none;-webkit-appearance:none}.ant-select:not(.ant-select-disabled):hover .ant-select-selector{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-select:not(.ant-select-disabled):hover .ant-select-selector{border-right-width:0;border-left-width:1px!important}.ant-select-selection-item{flex:1;overflow:hidden;font-weight:400;white-space:nowrap;text-overflow:ellipsis}@media all and (-ms-high-contrast:none){.ant-select-selection-item,.ant-select-selection-item ::-ms-backdrop{flex:auto}}.ant-select-selection-placeholder{flex:1;overflow:hidden;color:#bfbfbf;white-space:nowrap;text-overflow:ellipsis;pointer-events:none}@media all and (-ms-high-contrast:none){.ant-select-selection-placeholder,.ant-select-selection-placeholder ::-ms-backdrop{flex:auto}}.ant-select-arrow{color:inherit;vertical-align:-.125em;display:flex;align-items:center;color:rgba(0,0,0,.25);text-align:center;pointer-events:none}.ant-select-arrow>*{line-height:1}.ant-select-arrow svg{display:inline-block}.ant-select-arrow::before{display:none}.ant-select-arrow .ant-select-arrow-icon{display:block}.ant-select-arrow .anticon{vertical-align:top;transition:transform .3s}.ant-select-arrow .anticon>svg{vertical-align:top}.ant-select-arrow .anticon:not(.ant-select-suffix){pointer-events:auto}.ant-select-disabled .ant-select-arrow{cursor:not-allowed}.ant-select-arrow>:not(:last-child){margin-inline-end:4px}.ant-select-clear{z-index:1;display:inline-block;width:12px;color:rgba(0,0,0,.25);text-align:center;background:#fff;cursor:pointer;opacity:0;transition:color .3s ease,opacity .15s ease;text-rendering:auto}.ant-select-clear::before{display:block}.ant-select-clear:hover{color:rgba(0,0,0,.45)}.ant-select:hover .ant-select-clear{opacity:1}.ant-select-dropdown{margin:0;color:rgba(0,0,0,.85);z-index:1050;box-sizing:border-box;padding:4px 0;overflow:hidden;font-size:12px;font-variant:initial;background-color:#fff;border-radius:2px;outline:0;box-shadow:0 3px 6px -4px rgba(0,0,0,.12),0 6px 16px 0 rgba(0,0,0,.08),0 9px 28px 8px rgba(0,0,0,.05)}.ant-select-dropdown-empty,.ant-select-item-empty{color:rgba(0,0,0,.25)}.ant-select-item,.ant-select-item-empty{display:block;min-height:28px;padding:5px 8px;line-height:18px;font-size:12px;position:relative;font-weight:400}.ant-select-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-select-dropdown-placement-topLeft,.ant-select-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-select-dropdown-placement-topLeft{animation-name:antSlideDownIn}.ant-select-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-select-dropdown-placement-bottomLeft{animation-name:antSlideUpOut}.ant-select-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-select-dropdown-placement-topLeft{animation-name:antSlideDownOut}.ant-select-item{color:rgba(0,0,0,.85);cursor:pointer;transition:background .3s ease}.ant-select-item-group{color:rgba(0,0,0,.45);font-size:12px;cursor:default}.ant-select-item-option{display:flex}.ant-select-item-option-content{flex:auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-select-item-option-state{flex:none}.ant-select-item-option-active:not(.ant-select-item-option-disabled){background-color:#f5f5f5}.ant-select-item-option-selected:not(.ant-select-item-option-disabled){color:rgba(0,0,0,.85);font-weight:600;background-color:#e6f7ff}.ant-select-item-option-disabled.ant-select-item-option-selected,.ant-slider-rail{background-color:#f5f5f5}.ant-select-item-option-selected:not(.ant-select-item-option-disabled) .ant-select-item-option-state{color:#1890ff}.ant-select-item-option-disabled,.segmented-disabled-item,.segmented-disabled-item:focus,.segmented-disabled-item:hover{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-select-item-option-grouped{padding-left:16px}.ant-select-lg{font-size:14px}.ant-select-borderless .ant-select-selector{background-color:transparent!important;border-color:transparent!important;box-shadow:none!important}.ant-select.ant-select-in-form-item{width:100%}.ant-select-rtl .ant-select-arrow,.ant-select-rtl .ant-select-clear{right:initial;left:7px}.ant-select-dropdown-rtl .ant-select-item-option-grouped{padding-right:16px;padding-left:8px}.ant-select-rtl.ant-select-multiple.ant-select-allow-clear .ant-select-selector,.ant-select-rtl.ant-select-multiple.ant-select-show-arrow .ant-select-selector{padding-right:3px;padding-left:20px}.ant-select-rtl.ant-select-multiple .ant-select-selection-item{text-align:right}.ant-select-rtl.ant-select-multiple .ant-select-selection-item-content{margin-right:0;margin-left:2px;text-align:right}.ant-select-rtl.ant-select-multiple .ant-select-selection-search-mirror{right:0;left:auto}.ant-select-rtl.ant-select-multiple .ant-select-selection-placeholder{right:7px;left:auto}.ant-select-rtl.ant-select-multiple.ant-select-sm .ant-select-selection-placeholder{right:7px}.ant-select-rtl.ant-select-single .ant-select-selector .ant-select-selection-item,.ant-select-rtl.ant-select-single .ant-select-selector .ant-select-selection-placeholder{right:0;left:9px;text-align:right}.ant-select-rtl.ant-select-single.ant-select-show-arrow .ant-select-selection-search{right:7px;left:19px}.ant-select-rtl.ant-select-single.ant-select-show-arrow .ant-select-selection-item,.ant-select-rtl.ant-select-single.ant-select-show-arrow .ant-select-selection-placeholder{padding-right:0;padding-left:15px}.ant-select-rtl.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-search{right:6px}.ant-select-rtl.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-item,.ant-select-rtl.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-placeholder{padding-right:0;padding-left:18px}.ant-select-dropdown{top:100%;left:0;position:relative;width:100%;margin-top:4px;margin-bottom:4px;display:block}.ant-select-dropdown .cdk-virtual-scroll-content-wrapper{right:0}.ant-select-dropdown .full-width{contain:initial}.ant-select-dropdown .full-width .cdk-virtual-scroll-content-wrapper{position:static}.ant-select-dropdown .full-width .cdk-virtual-scroll-spacer{position:absolute;top:0;width:1px}.segmented-item-selected{background-color:#fff;border-radius:2px;box-shadow:0 2px 8px -2px rgba(0,0,0,.05),0 1px 4px -1px rgba(0,0,0,.07),0 0 1px 0 rgba(0,0,0,.08)}.segmented-text-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all}.ant-segmented{box-sizing:border-box;margin:0;font-size:12px;font-variant:tabular-nums;line-height:1.66667;list-style:none;font-feature-settings:tnum;display:inline-block;padding:2px;color:rgba(0,0,0,.65);background-color:rgba(0,0,0,.04);border-radius:2px;transition:all .3s cubic-bezier(.645,.045,.355,1)}.ant-segmented-item-selected,.ant-segmented-item:focus,.ant-segmented-item:hover{color:#262626}.ant-segmented-group{position:relative;display:flex;align-items:stretch;justify-items:flex-start;width:100%}.ant-segmented.ant-segmented-block{display:flex}.ant-segmented.ant-segmented-block .ant-segmented-item{flex:1;min-width:0}.ant-segmented:not(.ant-segmented-disabled):focus,.ant-segmented:not(.ant-segmented-disabled):hover{background-color:rgba(0,0,0,.06)}.ant-segmented-item-selected,.ant-segmented-thumb{background-color:#fff;border-radius:2px;box-shadow:0 2px 8px -2px rgba(0,0,0,.05),0 1px 4px -1px rgba(0,0,0,.07),0 0 1px 0 rgba(0,0,0,.08)}.ant-segmented-item{position:relative;text-align:center;cursor:pointer;transition:color .3s cubic-bezier(.645,.045,.355,1)}.ant-segmented-item-label{min-height:24px;padding:0 7px;line-height:24px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all}.ant-segmented-item-icon+*{margin-left:8px/2}.ant-segmented-item-input{position:absolute;top:0;left:0;width:0;height:0;opacity:0;pointer-events:none}.ant-segmented.ant-segmented-lg .ant-segmented-item-label{min-height:28px;padding:0 11px;font-size:14px;line-height:28px}.ant-segmented.ant-segmented-sm .ant-segmented-item-label{min-height:18px;padding:0 7px;line-height:18px}.ant-segmented-item-disabled,.ant-segmented-item-disabled:focus,.ant-segmented-item-disabled:hover{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-segmented-thumb{position:absolute;top:0;left:0;width:0;height:100%;padding:4px 0}.ant-skeleton-header .ant-skeleton-avatar-lg.ant-skeleton-avatar-circle,.ant-skeleton-header .ant-skeleton-avatar-sm.ant-skeleton-avatar-circle,.ant-skeleton-header .ant-skeleton-avatar.ant-skeleton-avatar-circle{border-radius:50%}.ant-segmented-thumb-motion-appear-active{transition:transform .3s cubic-bezier(.645,.045,.355,1),width .3s cubic-bezier(.645,.045,.355,1);will-change:transform,width}.ant-segmented.ant-segmented-rtl .ant-segmented-item-icon{margin-right:0;margin-left:6px}.ant-skeleton{display:table;width:100%}.ant-skeleton-header{display:table-cell;padding-right:8px;vertical-align:top}.ant-skeleton-content .ant-skeleton-paragraph,.ant-spin{padding:0}.ant-skeleton-header .ant-skeleton-avatar{display:inline-block;vertical-align:top;background:rgba(190,190,190,.2);width:28px;height:28px;line-height:28px}.ant-skeleton-header .ant-skeleton-avatar-lg{width:32px;height:32px;line-height:32px}.ant-skeleton-header .ant-skeleton-avatar-sm{width:22px;height:22px;line-height:22px}.ant-skeleton-content{display:table-cell;width:100%;vertical-align:top}.ant-skeleton-content .ant-skeleton-title{width:100%;height:14px;margin-top:8px;background:rgba(190,190,190,.2);border-radius:4px}.ant-skeleton-content .ant-skeleton-title+.ant-skeleton-paragraph{margin-top:20px}.ant-skeleton-content .ant-skeleton-paragraph>li{width:100%;height:14px;list-style:none;background:rgba(190,190,190,.2);border-radius:4px}.ant-skeleton-content .ant-skeleton-paragraph>li:last-child:not(:first-child):not(:nth-child(2)){width:61%}.ant-skeleton-content .ant-skeleton-paragraph>li+li{margin-top:12px}.ant-skeleton-with-avatar .ant-skeleton-content .ant-skeleton-title{margin-top:8px}.ant-skeleton-with-avatar .ant-skeleton-content .ant-skeleton-title+.ant-skeleton-paragraph{margin-top:20px}.ant-skeleton-round .ant-skeleton-content .ant-skeleton-paragraph>li,.ant-skeleton-round .ant-skeleton-content .ant-skeleton-title{border-radius:100px}.ant-skeleton.ant-skeleton-active .ant-skeleton-avatar,.ant-skeleton.ant-skeleton-active .ant-skeleton-button,.ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-paragraph>li,.ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-title,.ant-skeleton.ant-skeleton-active .ant-skeleton-image,.ant-skeleton.ant-skeleton-active .ant-skeleton-input{background:linear-gradient(90deg,rgba(190,190,190,.2) 25%,rgba(129,129,129,.24) 37%,rgba(190,190,190,.2) 63%);background-size:400% 100%;animation:ant-skeleton-loading 1.4s ease infinite}.ant-skeleton.ant-skeleton-block,.ant-skeleton.ant-skeleton-block .ant-skeleton-button,.ant-skeleton.ant-skeleton-block .ant-skeleton-input{width:100%}.ant-skeleton-element{display:inline-block;width:auto}.ant-skeleton-element .ant-skeleton-button{display:inline-block;vertical-align:top;background:rgba(190,190,190,.2);border-radius:2px;width:56px;min-width:56px;height:28px;line-height:28px}.ant-skeleton-element .ant-skeleton-button.ant-skeleton-button-circle{width:28px;min-width:28px;border-radius:50%}.ant-skeleton-element .ant-skeleton-button.ant-skeleton-button-round{border-radius:28px}.ant-skeleton-element .ant-skeleton-button-lg{width:64px;min-width:64px;height:32px;line-height:32px}.ant-skeleton-element .ant-skeleton-button-lg.ant-skeleton-button-circle{width:32px;min-width:32px;border-radius:50%}.ant-skeleton-element .ant-skeleton-button-lg.ant-skeleton-button-round{border-radius:32px}.ant-skeleton-element .ant-skeleton-button-sm{width:44px;min-width:44px;height:22px;line-height:22px}.ant-skeleton-element .ant-skeleton-button-sm.ant-skeleton-button-circle{width:22px;min-width:22px;border-radius:50%}.ant-skeleton-element .ant-skeleton-button-sm.ant-skeleton-button-round{border-radius:22px}.ant-image-preview-switch-left,.ant-image-preview-switch-right,.ant-skeleton-element .ant-skeleton-avatar-lg.ant-skeleton-avatar-circle,.ant-skeleton-element .ant-skeleton-avatar-sm.ant-skeleton-avatar-circle,.ant-skeleton-element .ant-skeleton-avatar.ant-skeleton-avatar-circle,.ant-skeleton-element .ant-skeleton-image-svg.ant-skeleton-image-circle,.ant-skeleton-element .ant-skeleton-image.ant-skeleton-image-circle{border-radius:50%}.ant-skeleton-element .ant-skeleton-avatar{display:inline-block;vertical-align:top;background:rgba(190,190,190,.2);width:28px;height:28px;line-height:28px}.ant-skeleton-element .ant-skeleton-avatar-lg{width:32px;height:32px;line-height:32px}.ant-skeleton-element .ant-skeleton-avatar-sm{width:22px;height:22px;line-height:22px}.ant-skeleton-element .ant-skeleton-input{display:inline-block;vertical-align:top;background:rgba(190,190,190,.2);width:140px;min-width:140px;height:28px;line-height:28px}.ant-skeleton-element .ant-skeleton-input-lg{width:160px;min-width:160px;height:32px;line-height:32px}.ant-skeleton-element .ant-skeleton-input-sm{width:110px;min-width:110px;height:22px;line-height:22px}.ant-skeleton-element .ant-skeleton-image{display:flex;align-items:center;justify-content:center;vertical-align:top;background:rgba(190,190,190,.2);width:96px;height:96px;line-height:96px}.ant-skeleton-element .ant-skeleton-image-path{fill:#bfbfbf}.ant-skeleton-element .ant-skeleton-image-svg{width:48px;height:48px;line-height:48px;max-width:192px;max-height:192px}.ant-slider,.ant-spin{font-size:12px;font-variant:tabular-nums;line-height:1.66667;list-style:none;font-feature-settings:tnum}@keyframes ant-skeleton-loading{0%{background-position:100% 50%}100%{background-position:0 50%}}.ant-skeleton-rtl .ant-skeleton-header{padding-right:0;padding-left:16px}.ant-skeleton-rtl.ant-skeleton.ant-skeleton-active .ant-skeleton-avatar,.ant-skeleton-rtl.ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-paragraph>li,.ant-skeleton-rtl.ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-title{animation-name:ant-skeleton-loading-rtl}@keyframes ant-skeleton-loading-rtl{0%{background-position:0 50%}100%{background-position:100% 50%}}.ant-slider{box-sizing:border-box;color:rgba(0,0,0,.85);position:relative;height:12px;margin:10px 6px;padding:4px 0;cursor:pointer;touch-action:none}.ant-slider-vertical{width:12px;height:100%;margin:6px 10px;padding:0 4px}.ant-slider-vertical .ant-slider-rail{width:4px;height:100%}.ant-slider-vertical .ant-slider-track{width:4px}.ant-slider-vertical .ant-slider-handle{margin-top:-6px;margin-left:-5px}.ant-slider-vertical .ant-slider-mark{top:0;left:12px;width:18px;height:100%}.ant-slider-vertical .ant-slider-mark-text{left:4px;white-space:nowrap}.ant-slider-vertical .ant-slider-step{width:4px;height:100%}.ant-slider-rail,.ant-slider-track{height:4px;border-radius:2px;transition:background-color .3s;position:absolute}.ant-slider-vertical .ant-slider-dot{top:auto;margin-left:-2px}.ant-slider-rtl.ant-slider-vertical .ant-slider-handle{margin-right:-5px;margin-left:0}.ant-slider-rtl.ant-slider-vertical .ant-slider-mark{right:12px;left:auto}.ant-slider-rtl.ant-slider-vertical .ant-slider-mark-text{right:4px;left:auto}.ant-slider-rtl.ant-slider-vertical .ant-slider-dot{right:2px;left:auto}.ant-slider-with-marks{margin-bottom:28px}.ant-slider-rail{width:100%}.ant-slider-track{background-color:#91d5ff}.ant-slider-handle{position:absolute;width:12px;height:12px;margin-top:-4px;background-color:#fff;border:2px solid #91d5ff;border-radius:50%;box-shadow:0;cursor:pointer;transition:border-color .3s,box-shadow .6s,transform .3s cubic-bezier(.18,.89,.32,1.28)}.ant-spin,.ant-statistic{margin:0;box-sizing:border-box}.ant-slider-handle-dragging{z-index:1}.ant-slider-handle:focus{border-color:#46a6ff;outline:0;box-shadow:0 0 0 5px rgba(24,144,255,.12)}.ant-slider-handle.ant-tooltip-open{border-color:#1890ff}.ant-slider:hover .ant-slider-rail{background-color:#e1e1e1}.ant-slider:hover .ant-slider-track{background-color:#69c0ff}.ant-slider:hover .ant-slider-handle:not(.ant-tooltip-open){border-color:#69c0ff}.ant-slider-mark{position:absolute;top:14px;left:0;width:100%;font-size:12px}.ant-slider-mark-text{position:absolute;display:inline-block;color:rgba(0,0,0,.45);text-align:center;word-break:keep-all;cursor:pointer;user-select:none}.ant-slider-mark-text-active{color:rgba(0,0,0,.85)}.ant-slider-step{position:absolute;width:100%;height:4px;background:0 0;pointer-events:none}.ant-slider-dot{position:absolute;top:-2px;width:8px;height:8px;background-color:#fff;border:2px solid #f0f0f0;border-radius:50%;cursor:pointer}.ant-slider-dot-active{border-color:#8cc8ff}.ant-slider-disabled{cursor:not-allowed}.ant-slider-disabled .ant-slider-rail{background-color:#f5f5f5!important}.ant-slider-disabled .ant-slider-track{background-color:rgba(0,0,0,.25)!important}.ant-slider-disabled .ant-slider-dot,.ant-slider-disabled .ant-slider-handle{background-color:#fff;border-color:rgba(0,0,0,.25)!important;box-shadow:none;cursor:not-allowed}.ant-slider-disabled .ant-slider-dot,.ant-slider-disabled .ant-slider-mark-text{cursor:not-allowed!important}.ant-slider-rtl .ant-slider-mark{right:0;left:auto}.ant-spin{position:absolute;display:none;color:#1890ff;text-align:center;vertical-align:middle;opacity:0;transition:transform .3s cubic-bezier(.78,.14,.15,.86)}.ant-spin-spinning,.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-left::before,.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-right::after,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-left::before,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-right::after,.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-bottom::after,.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-top::before,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-bottom::after,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-top::before,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-bottom::after,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-top::before,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-bottom::after,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-top::before,.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-left::before,.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-right::after,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-left::before,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-right::after{opacity:1}.ant-spin-spinning{position:static;display:inline-block}.ant-spin-nested-loading{position:relative}.ant-spin-nested-loading>div>.ant-spin{position:absolute;top:0;left:0;z-index:4;display:block;width:100%;height:100%;max-height:400px}.ant-spin-nested-loading>div>.ant-spin .ant-spin-dot{position:absolute;top:50%;left:50%;margin:-10px}.ant-spin-nested-loading>div>.ant-spin .ant-spin-text{position:absolute;top:50%;width:100%;padding-top:6px;text-shadow:0 1px 2px #fff}.ant-spin-nested-loading>div>.ant-spin.ant-spin-show-text .ant-spin-dot{margin-top:-20px}.ant-spin-nested-loading>div>.ant-spin-sm .ant-spin-dot{margin:-7px}.ant-spin-nested-loading>div>.ant-spin-sm .ant-spin-text{padding-top:3px}.ant-spin-nested-loading>div>.ant-spin-sm.ant-spin-show-text .ant-spin-dot{margin-top:-17px}.ant-spin-nested-loading>div>.ant-spin-lg .ant-spin-dot{margin:-16px}.ant-spin-nested-loading>div>.ant-spin-lg .ant-spin-text{padding-top:12px}.ant-statistic,.ant-steps{padding:0;line-height:1.66667;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum}.ant-spin-nested-loading>div>.ant-spin-lg.ant-spin-show-text .ant-spin-dot{margin-top:-26px}.ant-spin-container{position:relative;transition:opacity .3s}.ant-spin-container::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;display:none\9;width:100%;height:100%;background:#fff;opacity:0;transition:all .3s;content:'';pointer-events:none}.ant-spin-blur{clear:both;opacity:.5;user-select:none;pointer-events:none}.ant-spin-blur::after{opacity:.4;pointer-events:auto}.ant-spin-tip{color:rgba(0,0,0,.45)}.ant-spin-dot{position:relative;display:inline-block;width:1em;height:1em}.ant-spin-dot-item{position:absolute;display:block;width:9px;height:9px;background-color:#1890ff;border-radius:100%;transform:scale(.75);transform-origin:50% 50%;opacity:.3;animation:antSpinMove 1s infinite linear alternate}.ant-spin-dot-item:nth-child(1){top:0;left:0}.ant-spin-dot-item:nth-child(2){top:0;right:0;animation-delay:.4s}.ant-spin-dot-item:nth-child(3){right:0;bottom:0;animation-delay:.8s}.ant-spin-dot-item:nth-child(4){bottom:0;left:0;animation-delay:1.2s}.ant-spin-dot-spin{transform:rotate(0);animation:antRotate 1.2s infinite linear}.ant-spin-sm .ant-spin-dot{font-size:14px}.ant-spin-sm .ant-spin-dot i{width:6px;height:6px}.ant-spin-lg .ant-spin-dot{font-size:32px}.ant-spin-lg .ant-spin-dot i{width:14px;height:14px}.ant-spin.ant-spin-show-text .ant-spin-text{display:block}@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){.ant-spin-blur{background:#fff;opacity:.5}}@keyframes antSpinMove{to{opacity:1}}@keyframes antRotate{to{transform:rotate(360deg)}}.ant-spin-rtl .ant-spin-dot-spin{transform:rotate(-45deg);animation-name:antRotateRtl}@keyframes antRotateRtl{to{transform:rotate(-405deg)}}nz-spin{display:block}.ant-statistic{color:rgba(0,0,0,.85);font-size:12px}.ant-statistic-title{margin-bottom:0;color:rgba(0,0,0,.45);font-size:12px}.ant-statistic-content{color:rgba(0,0,0,.85);font-size:20px}.ant-statistic-content-value{display:inline-block;direction:ltr}.ant-statistic-rtl,.ant-steps-rtl,.ant-switch-rtl,.ant-table-rtl,.ant-table-wrapper-rtl,.ant-tabs-dropdown-rtl,.ant-tabs-rtl,.ant-tag.ant-tag-rtl,.ant-timeline-rtl,.ant-tooltip-rtl,.ant-transfer-rtl,.ant-typography-rtl,.ant-upload-list-rtl,.ant-upload-rtl{direction:rtl}.ant-statistic-content-prefix,.ant-statistic-content-suffix{display:inline-block}.ant-statistic-content-prefix{margin-right:4px}.ant-statistic-content-suffix{margin-left:4px}.ant-statistic-rtl .ant-statistic-content-prefix{margin-right:0;margin-left:4px}.ant-statistic-rtl .ant-statistic-content-suffix{margin-right:4px;margin-left:0}.ant-steps{box-sizing:border-box;margin:0;color:rgba(0,0,0,.85);display:flex;width:100%;font-size:0;text-align:initial}.ant-steps-item{position:relative;display:inline-block;flex:1;overflow:hidden;vertical-align:top}.ant-steps-item-container{outline:0}.ant-steps-item:last-child{flex:none}.ant-steps-item:last-child>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after,.ant-steps-item:last-child>.ant-steps-item-container>.ant-steps-item-tail{display:none}.ant-steps-item-content,.ant-steps-item-icon{display:inline-block;vertical-align:top}.ant-steps-item-icon{width:24px;height:24px;margin:2px 8px 2px 0;font-size:12px;line-height:24px;text-align:center;border:1px solid rgba(0,0,0,.25);border-radius:24px;transition:background-color .3s,border-color .3s}.ant-steps-item-icon .ant-steps-icon{position:relative;top:0;color:#1890ff;line-height:1}.ant-steps-item-tail{position:absolute;top:12px;left:0;width:100%;padding:0 10px}.ant-steps-item-tail::after{display:inline-block;width:100%;height:1px;background:#f0f0f0;border-radius:1px;transition:background .3s;content:''}.ant-steps-item-title{position:relative;display:inline-block;padding-right:16px;color:rgba(0,0,0,.85);font-size:14px;line-height:28px}.ant-steps-item-description,.ant-steps-item-subtitle{color:rgba(0,0,0,.45);font-size:12px}.ant-steps-item-title::after{position:absolute;top:14px;left:100%;display:block;width:9999px;height:1px;background:#f0f0f0;content:''}.ant-steps-item-subtitle{display:inline;margin-left:8px;font-weight:400}.ant-steps-item-wait .ant-steps-item-icon{background-color:#fff;border-color:rgba(0,0,0,.25)}.ant-steps-item-wait .ant-steps-item-icon>.ant-steps-icon{color:rgba(0,0,0,.25)}.ant-steps-item-wait>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-description,.ant-steps-item-wait>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title{color:rgba(0,0,0,.45)}.ant-steps-item-wait .ant-steps-item-icon>.ant-steps-icon .ant-steps-icon-dot{background:rgba(0,0,0,.25)}.ant-steps-item-wait>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after,.ant-steps-item-wait>.ant-steps-item-container>.ant-steps-item-tail::after{background-color:#f0f0f0}.ant-steps-item-process .ant-steps-item-icon{background-color:#fff;border-color:#1890ff}.ant-steps-item-process .ant-steps-item-icon>.ant-steps-icon{color:#1890ff}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-description,.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title{color:rgba(0,0,0,.85)}.ant-steps-item-process .ant-steps-item-icon>.ant-steps-icon .ant-steps-icon-dot{background:#1890ff}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after,.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-tail::after{background-color:#f0f0f0}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-icon{background:#1890ff}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-icon .ant-steps-icon{color:#fff}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-title{font-weight:500}.ant-steps-item-finish .ant-steps-item-icon{background-color:#fff;border-color:#1890ff}.ant-steps-item-finish>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after,.ant-steps-item-finish>.ant-steps-item-container>.ant-steps-item-tail::after{background-color:#1890ff}.ant-steps-item-finish .ant-steps-item-icon>.ant-steps-icon{color:#1890ff}.ant-steps-item-finish>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title,.ant-switch{color:rgba(0,0,0,.85)}.ant-steps-item-finish .ant-steps-item-icon>.ant-steps-icon .ant-steps-icon-dot{background:#1890ff}.ant-steps-item-finish>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-description{color:rgba(0,0,0,.45)}.ant-steps-item-error .ant-steps-item-icon>.ant-steps-icon,.ant-steps-item-error>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-description,.ant-steps-item-error>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title{color:#ff4d4f}.ant-steps-item-error .ant-steps-item-icon{background-color:#fff;border-color:#ff4d4f}.ant-steps-item-error .ant-steps-item-icon>.ant-steps-icon .ant-steps-icon-dot{background:#ff4d4f}.ant-steps-item-error>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after,.ant-steps-item-error>.ant-steps-item-container>.ant-steps-item-tail::after{background-color:#f0f0f0}.ant-steps .ant-steps-item:not(.ant-steps-item-active):not(.ant-steps-item-process)>.ant-steps-item-container[role=button]:hover .ant-steps-item-icon .ant-steps-icon,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button]:hover .ant-steps-item-description,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button]:hover .ant-steps-item-subtitle,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button]:hover .ant-steps-item-title,.ant-steps-item-custom.ant-steps-item-process .ant-steps-item-icon>.ant-steps-icon{color:#1890ff}.ant-steps-item.ant-steps-next-error .ant-steps-item-title::after{background:#ff4d4f}.ant-steps-item-disabled{cursor:not-allowed}.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button],.ant-steps-navigation .ant-steps-item:not(.ant-steps-item-active) .ant-steps-item-container[role=button],.ant-switch{cursor:pointer}.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button] .ant-steps-item-description,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button] .ant-steps-item-icon .ant-steps-icon,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button] .ant-steps-item-subtitle,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button] .ant-steps-item-title{transition:color .3s}.ant-steps .ant-steps-item:not(.ant-steps-item-active):not(.ant-steps-item-process)>.ant-steps-item-container[role=button]:hover .ant-steps-item-icon{border-color:#1890ff}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item{padding-left:16px;white-space:nowrap}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:first-child{padding-left:0}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:last-child .ant-steps-item-title{padding-right:0}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item-tail{display:none}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item-description{max-width:140px;white-space:normal}.ant-steps-item-custom>.ant-steps-item-container>.ant-steps-item-icon{height:auto;background:0 0;border:0}.ant-steps-item-custom>.ant-steps-item-container>.ant-steps-item-icon>.ant-steps-icon{top:2px;left:.5px;width:20px;height:20px;font-size:20px;line-height:20px}.ant-steps:not(.ant-steps-vertical) .ant-steps-item-custom .ant-steps-item-icon{width:auto;background:0 0}.ant-steps-small.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item{padding-left:12px}.ant-steps-small.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:first-child{padding-left:0}.ant-steps-small .ant-steps-item-icon{width:20px;height:20px;margin:0 8px 0 0;font-size:12px;line-height:20px;text-align:center;border-radius:20px}.ant-steps-small .ant-steps-item-title{padding-right:12px;font-size:12px;line-height:20px}.ant-steps-small .ant-steps-item-title::after{top:10px}.ant-steps-small .ant-steps-item-description{color:rgba(0,0,0,.45);font-size:12px}.ant-steps-small .ant-steps-item-tail{top:8px}.ant-steps-small .ant-steps-item-custom .ant-steps-item-icon{width:inherit;height:inherit;line-height:inherit;background:0 0;border:0;border-radius:0}.ant-steps-small .ant-steps-item-custom .ant-steps-item-icon>.ant-steps-icon{font-size:20px;line-height:20px;transform:none}.ant-steps-vertical{display:flex;flex-direction:column}.ant-steps-vertical>.ant-steps-item{display:block;flex:1 0 auto;padding-left:0;overflow:visible}.ant-steps-vertical>.ant-steps-item .ant-steps-item-icon{float:left;margin-right:12px}.ant-steps-vertical>.ant-steps-item .ant-steps-item-content{display:block;min-height:48px;overflow:hidden}.ant-steps-vertical>.ant-steps-item .ant-steps-item-title{line-height:24px}.ant-steps-vertical.ant-steps-small .ant-steps-item-container .ant-steps-item-title,.ant-switch{line-height:20px}.ant-steps-vertical>.ant-steps-item .ant-steps-item-description{padding-bottom:12px}.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{position:absolute;top:0;left:12px;width:1px;height:100%;padding:30px 0 6px}.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail::after{width:1px;height:100%}.ant-steps-vertical>.ant-steps-item:not(:last-child)>.ant-steps-item-container>.ant-steps-item-tail{display:block}.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after{display:none}.ant-steps-vertical.ant-steps-small .ant-steps-item-container .ant-steps-item-tail{position:absolute;top:0;left:10px;padding:26px 0 6px}.ant-steps-label-vertical .ant-steps-item{overflow:visible}.ant-steps-label-vertical .ant-steps-item-tail{margin-left:58px;padding:3.5px 24px}.ant-steps-label-vertical .ant-steps-item-content{display:block;width:108px;margin-top:8px;text-align:center}.ant-steps-label-vertical .ant-steps-item-icon{display:inline-block;margin-left:42px}.ant-steps-label-vertical .ant-steps-item-title{padding-right:0;padding-left:0}.ant-steps-label-vertical .ant-steps-item-title::after{display:none}.ant-steps-label-vertical .ant-steps-item-subtitle{display:block;margin-bottom:4px;margin-left:0;line-height:1.66667}.ant-steps-label-vertical.ant-steps-small:not(.ant-steps-dot) .ant-steps-item-icon{margin-left:46px}.ant-steps-dot .ant-steps-item-title,.ant-steps-dot.ant-steps-small .ant-steps-item-title{line-height:1.66667}.ant-steps-dot .ant-steps-item-tail,.ant-steps-dot.ant-steps-small .ant-steps-item-tail{top:4px;width:100%;margin:0 0 0 70px;padding:0}.ant-steps-dot .ant-steps-item-tail::after,.ant-steps-dot.ant-steps-small .ant-steps-item-tail::after{width:calc(100% - 20px);height:3px;margin-left:12px}.ant-steps-dot .ant-steps-item:first-child .ant-steps-icon-dot,.ant-steps-dot.ant-steps-small .ant-steps-item:first-child .ant-steps-icon-dot{left:2px}.ant-steps-dot .ant-steps-item-icon,.ant-steps-dot.ant-steps-small .ant-steps-item-icon{width:8px;height:8px;margin-left:67px;padding-right:0;line-height:8px;background:0 0;border:0}.ant-steps-dot .ant-steps-item-icon .ant-steps-icon-dot,.ant-steps-dot.ant-steps-small .ant-steps-item-icon .ant-steps-icon-dot{position:relative;float:left;width:100%;height:100%;border-radius:100px;transition:all .3s}.ant-steps-dot .ant-steps-item-icon .ant-steps-icon-dot::after,.ant-steps-dot.ant-steps-small .ant-steps-item-icon .ant-steps-icon-dot::after{position:absolute;top:-12px;left:-26px;width:60px;height:32px;background:rgba(0,0,0,.001);content:''}.ant-steps-dot .ant-steps-item-content,.ant-steps-dot.ant-steps-small .ant-steps-item-content{width:140px}.ant-steps-dot .ant-steps-item-process .ant-steps-item-icon,.ant-steps-dot.ant-steps-small .ant-steps-item-process .ant-steps-item-icon{position:relative;top:-1px;width:10px;height:10px;line-height:10px;background:0 0}.ant-steps-dot .ant-steps-item-process .ant-steps-icon:first-child .ant-steps-icon-dot,.ant-steps-dot.ant-steps-small .ant-steps-item-process .ant-steps-icon:first-child .ant-steps-icon-dot{left:0}.ant-steps-vertical.ant-steps-dot .ant-steps-item-icon{margin-top:13px;margin-left:0;background:0 0}.ant-steps-vertical.ant-steps-dot .ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{top:6.5px;left:-9px;margin:0;padding:22px 0 4px}.ant-steps-vertical.ant-steps-dot.ant-steps-small .ant-steps-item-icon{margin-top:10px}.ant-steps-vertical.ant-steps-dot.ant-steps-small .ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{top:3.5px}.ant-steps-vertical.ant-steps-dot .ant-steps-item:first-child .ant-steps-icon-dot{left:0}.ant-steps-vertical.ant-steps-dot .ant-steps-item-content{width:inherit}.ant-steps-vertical.ant-steps-dot .ant-steps-item-process .ant-steps-item-container .ant-steps-item-icon .ant-steps-icon-dot{top:-1px;left:-1px}.ant-steps-navigation{padding-top:12px}.ant-steps-navigation.ant-steps-small .ant-steps-item-container{margin-left:-12px}.ant-steps-navigation .ant-steps-item{overflow:visible;text-align:center}.ant-steps-navigation .ant-steps-item-container{display:inline-block;height:100%;margin-left:-16px;padding-bottom:12px;text-align:left;transition:opacity .3s}.ant-steps-navigation .ant-steps-item-container .ant-steps-item-title::after,.ant-steps-navigation .ant-steps-item:last-child::after{display:none}.ant-steps-navigation .ant-steps-item-container .ant-steps-item-content{max-width:auto}.ant-steps-navigation .ant-steps-item-container .ant-steps-item-title{max-width:100%;padding-right:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-steps-navigation .ant-steps-item:not(.ant-steps-item-active) .ant-steps-item-container[role=button]:hover{opacity:.85}.ant-steps-navigation .ant-steps-item:last-child{flex:1}.ant-steps-navigation .ant-steps-item::after{position:absolute;top:50%;left:100%;display:inline-block;width:12px;height:12px;margin-top:-14px;margin-left:-2px;border:1px solid rgba(0,0,0,.25);border-bottom:none;border-left:none;transform:rotate(45deg);content:''}.ant-steps-navigation .ant-steps-item::before{position:absolute;bottom:0;left:50%;display:inline-block;width:0;height:2px;background-color:#1890ff;transition:width .3s,left .3s;transition-timing-function:ease-out;content:''}.ant-steps-navigation .ant-steps-item.ant-steps-item-active::before{left:0;width:100%}.ant-steps-navigation.ant-steps-vertical>.ant-steps-item{margin-right:0!important}.ant-steps-navigation.ant-steps-vertical>.ant-steps-item::before{display:none}.ant-steps-navigation.ant-steps-vertical>.ant-steps-item.ant-steps-item-active::before{top:0;right:0;left:unset;display:block;width:3px;height:calc(100% - 24px)}.ant-steps-navigation.ant-steps-vertical>.ant-steps-item::after{position:relative;top:-2px;left:50%;display:block;width:8px;height:8px;margin-bottom:8px;text-align:center;transform:rotate(135deg)}.ant-steps-navigation.ant-steps-horizontal>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail,.ant-steps-navigation.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{visibility:hidden}.ant-steps.ant-steps-rtl .ant-steps-item-icon{margin-right:0;margin-left:8px}.ant-steps-rtl .ant-steps-item-tail{right:0;left:auto}.ant-steps-rtl .ant-steps-item-title{padding-right:0;padding-left:16px}.ant-steps-rtl .ant-steps-item-title .ant-steps-item-subtitle{float:left;margin-right:8px;margin-left:0}.ant-steps-rtl .ant-steps-item-title::after{right:100%;left:auto}.ant-steps-rtl.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item{padding-right:16px;padding-left:0}.ant-steps-rtl.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:first-child{padding-right:0}.ant-steps-rtl.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:last-child .ant-steps-item-title{padding-left:0}.ant-steps-rtl .ant-steps-item-custom .ant-steps-item-icon>.ant-steps-icon{right:.5px;left:auto}.ant-steps-rtl.ant-steps-navigation.ant-steps-small .ant-steps-item-container{margin-right:-12px;margin-left:0}.ant-steps-rtl.ant-steps-navigation .ant-steps-item-container{margin-right:-16px;margin-left:0;text-align:right}.ant-steps-rtl.ant-steps-navigation .ant-steps-item-container .ant-steps-item-title{padding-left:0}.ant-steps-rtl.ant-steps-navigation .ant-steps-item::after{right:100%;left:auto;margin-right:-2px;margin-left:0;transform:rotate(225deg)}.ant-steps-rtl.ant-steps-small.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item{padding-right:12px;padding-left:0}.ant-steps-rtl.ant-steps-small.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:first-child{padding-right:0}.ant-steps-rtl.ant-steps-small .ant-steps-item-title{padding-right:0;padding-left:12px}.ant-steps-rtl.ant-steps-vertical>.ant-steps-item .ant-steps-item-icon{float:right;margin-right:0;margin-left:12px}.ant-steps-rtl.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{right:12px;left:auto}.ant-steps-rtl.ant-steps-vertical.ant-steps-small .ant-steps-item-container .ant-steps-item-tail{right:10px;left:auto}.ant-steps-rtl.ant-steps-label-vertical .ant-steps-item-title{padding-left:0}.ant-steps-rtl.ant-steps-dot .ant-steps-item-tail,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-tail{margin:0 70px 0 0}.ant-steps-rtl.ant-steps-dot .ant-steps-item-tail::after,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-tail::after{margin-right:12px;margin-left:0}.ant-steps-rtl.ant-steps-dot .ant-steps-item:first-child .ant-steps-icon-dot,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item:first-child .ant-steps-icon-dot{right:2px;left:auto}.ant-steps-rtl.ant-steps-dot .ant-steps-item-icon,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-icon{margin-right:67px;margin-left:0}.ant-steps-rtl.ant-steps-dot .ant-steps-item-icon .ant-steps-icon-dot,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-icon .ant-steps-icon-dot{float:right}.ant-steps-rtl.ant-steps-dot .ant-steps-item-icon .ant-steps-icon-dot::after,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-icon .ant-steps-icon-dot::after{right:-26px;left:auto}.ant-steps-rtl.ant-steps-vertical.ant-steps-dot .ant-steps-item-icon{margin-right:0;margin-left:16px}.ant-steps-rtl.ant-steps-vertical.ant-steps-dot .ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{right:-9px;left:auto}.ant-steps-rtl.ant-steps-vertical.ant-steps-dot .ant-steps-item:first-child .ant-steps-icon-dot{right:0;left:auto}.ant-steps-rtl.ant-steps-vertical.ant-steps-dot .ant-steps-item-process .ant-steps-icon-dot{right:-2px;left:auto}.ant-steps-rtl.ant-steps-with-progress.ant-steps-horizontal.ant-steps-label-horizontal .ant-steps-item:first-child{padding-right:4px;padding-left:0}.ant-steps-rtl.ant-steps-with-progress.ant-steps-horizontal.ant-steps-label-horizontal .ant-steps-item:first-child.ant-steps-item-active{padding-right:4px}.ant-steps-with-progress .ant-steps-item{padding-top:4px}.ant-steps-with-progress .ant-steps-item .ant-steps-item-tail{top:4px!important}.ant-steps-with-progress.ant-steps-horizontal .ant-steps-item:first-child{padding-bottom:4px;padding-left:4px}.ant-steps-with-progress .ant-steps-item-icon{position:relative}.ant-steps-with-progress .ant-steps-item-icon .ant-progress{position:absolute;top:-5px;right:-5px;bottom:-5px;left:-5px}.ant-switch{margin:0;padding:0;font-size:12px;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;position:relative;display:inline-block;box-sizing:border-box;min-width:40px;height:20px;vertical-align:middle;background-image:linear-gradient(to right,rgba(0,0,0,.25),rgba(0,0,0,.25)),linear-gradient(to right,#fff,#fff);border:0;border-radius:100px;transition:all .2s;user-select:none}.ant-switch-checked,.ant-tabs-ink-bar{background:#1890ff}.ant-switch:focus{outline:0;box-shadow:0 0 0 2px rgba(0,0,0,.1)}.ant-switch-checked:focus{box-shadow:0 0 0 2px #e6f7ff}.ant-switch:focus:hover{box-shadow:none}.ant-switch-disabled,.ant-switch-loading{cursor:not-allowed;opacity:.4}.ant-switch-disabled *,.ant-switch-loading *{box-shadow:none;cursor:not-allowed}.ant-switch-inner{display:block;margin:0 4px 0 22px;color:#fff;font-size:12px;transition:margin .2s}.ant-switch-handle,.ant-switch-handle::before{position:absolute;transition:all .2s ease-in-out}.ant-switch-checked .ant-switch-inner{margin:0 22px 0 4px}.ant-switch-handle{top:2px;left:2px;width:16px;height:16px}.ant-switch-handle::before{top:0;right:0;bottom:0;left:0;background-color:#fff;border-radius:8px;box-shadow:0 2px 4px 0 rgba(0,35,11,.2);content:''}.ant-switch-checked .ant-switch-handle{left:calc(100% - 16px - 2px)}.ant-switch:not(.ant-switch-disabled):active .ant-switch-handle::before{right:-30%;left:0}.ant-switch:not(.ant-switch-disabled):active.ant-switch-checked .ant-switch-handle::before{right:0;left:-30%}.ant-switch-loading-icon.anticon{position:relative;top:2px;color:rgba(0,0,0,.65);vertical-align:top}.ant-switch-checked .ant-switch-loading-icon{color:#1890ff}.ant-switch-small{min-width:24px;height:14px;line-height:14px}.ant-table,.ant-table-filter-dropdown,.ant-tabs,.ant-tabs-dropdown{line-height:1.66667;box-sizing:border-box;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum}.ant-switch-small .ant-switch-inner{margin:0 5px 0 16px;font-size:12px}.ant-switch-small .ant-switch-handle{width:10px;height:10px}.ant-switch-small .ant-switch-loading-icon{top:.5px;font-size:9px}.ant-switch-small.ant-switch-checked .ant-switch-inner{margin:0 16px 0 5px}.ant-switch-small.ant-switch-checked .ant-switch-handle{left:calc(100% - 10px - 2px)}.ant-switch-rtl .ant-switch-inner{margin:0 22px 0 4px}.ant-switch-rtl .ant-switch-handle{right:2px;left:auto}.ant-switch-rtl:not(.ant-switch-rtl-disabled):active .ant-switch-handle::before{right:0;left:-30%}.ant-switch-rtl:not(.ant-switch-rtl-disabled):active.ant-switch-checked .ant-switch-handle::before{right:-30%;left:0}.ant-switch-rtl.ant-switch-checked .ant-switch-inner{margin:0 4px 0 22px}.ant-switch-rtl.ant-switch-checked .ant-switch-handle{right:calc(100% - 16px - 2px)}.ant-switch-rtl.ant-switch-small.ant-switch-checked .ant-switch-handle{right:calc(100% - 10px - 2px)}nz-switch{display:inline-block}.ant-table-wrapper::after,.ant-table-wrapper::before{display:table;content:''}.ant-table.ant-table-middle{font-size:12px}.ant-table.ant-table-middle .ant-table-footer,.ant-table.ant-table-middle .ant-table-tbody>tr>td,.ant-table.ant-table-middle .ant-table-thead>tr>th,.ant-table.ant-table-middle .ant-table-title,.ant-table.ant-table-middle tfoot>tr>td,.ant-table.ant-table-middle tfoot>tr>th{padding:8px}.ant-table.ant-table-middle .ant-table-filter-trigger{margin-right:-4px}.ant-table.ant-table-middle .ant-table-expanded-row-fixed{margin:-8px}.ant-table.ant-table-middle .ant-table-tbody .ant-table-wrapper:only-child .ant-table{margin:-8px -8px -8px 25px}.ant-table.ant-table-middle .ant-table-selection-column{padding-inline-start:2px}.ant-table.ant-table-small{font-size:12px}.ant-table.ant-table-small .ant-table-footer,.ant-table.ant-table-small .ant-table-tbody>tr>td,.ant-table.ant-table-small .ant-table-thead>tr>th,.ant-table.ant-table-small .ant-table-title,.ant-table.ant-table-small tfoot>tr>td,.ant-table.ant-table-small tfoot>tr>th{padding:4px}.ant-table.ant-table-small .ant-table-filter-trigger{margin-right:-2px}.ant-table.ant-table-small .ant-table-expanded-row-fixed{margin:-4px}.ant-table.ant-table-small .ant-table-tbody .ant-table-wrapper:only-child .ant-table{margin:-4px -4px -4px 21px}.ant-table.ant-table-small .ant-table-selection-column{padding-inline-start:1px}.ant-table.ant-table-bordered>.ant-table-title{border:1px solid #f0f0f0;border-bottom:0}.ant-table-thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr:not(:last-child)>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr:not(:last-child)>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr:not(:last-child)>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr:not(:last-child)>th{border-bottom:1px solid #f0f0f0}.ant-table.ant-table-bordered>.ant-table-container{border-left:1px solid #f0f0f0}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr>th{border-right:1px solid #f0f0f0}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr>th::before,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr>th::before,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr>th::before,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr>th::before{background-color:transparent!important}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tfoot>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tfoot>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tfoot>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tfoot>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr>.ant-table-cell-fix-right-first::after{border-right:1px solid #f0f0f0}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-12px -9px}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>td>.ant-table-expanded-row-fixed::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>td>.ant-table-expanded-row-fixed::after{position:absolute;top:0;right:1px;bottom:0;border-right:1px solid #f0f0f0;content:''}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table{border-top:1px solid #f0f0f0}.ant-table.ant-table-bordered.ant-table-scroll-horizontal>.ant-table-container>.ant-table-body>table>tbody>tr.ant-table-expanded-row>td,.ant-table.ant-table-bordered.ant-table-scroll-horizontal>.ant-table-container>.ant-table-body>table>tbody>tr.ant-table-placeholder>td{border-right:0}.ant-table.ant-table-bordered.ant-table-middle>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered.ant-table-middle>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-8px -9px}.ant-table.ant-table-bordered.ant-table-small>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered.ant-table-small>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-4px -5px}.ant-table.ant-table-bordered>.ant-table-footer{border:1px solid #f0f0f0;border-top:0}.ant-table-cell .ant-table-container:first-child{border-top:0}.ant-table-cell-scrollbar:not([rowspan]){box-shadow:0 1px 0 1px #fafafa}.ant-table-wrapper{clear:both;max-width:100%}.ant-table-wrapper::after{clear:both}.ant-table{margin:0;padding:0;color:rgba(0,0,0,.85);position:relative;font-size:12px;background:#fff;border-radius:2px}.ant-table-footer,.ant-table-thead>tr>th{color:rgba(0,0,0,.85);background:#fafafa}.ant-table table,.ant-table-title{border-radius:2px 2px 0 0}.ant-table table{width:100%;text-align:left;border-collapse:separate;border-spacing:0}.ant-table tfoot>tr>td,.ant-table tfoot>tr>th,.ant-table-tbody>tr>td,.ant-table-thead>tr>th{position:relative;padding:12px 8px;overflow-wrap:break-word}.ant-table-cell-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all}.ant-table-cell-ellipsis.ant-table-cell-fix-left-last,.ant-table-cell-ellipsis.ant-table-cell-fix-right-first{overflow:visible}.ant-table-cell-ellipsis.ant-table-cell-fix-left-last .ant-table-cell-content,.ant-table-cell-ellipsis.ant-table-cell-fix-right-first .ant-table-cell-content{display:block;overflow:hidden;text-overflow:ellipsis}.ant-table-cell-ellipsis .ant-table-column-title{overflow:hidden;text-overflow:ellipsis;word-break:keep-all}.ant-table-footer,.ant-table-title{padding:12px 8px}.ant-table-thead>tr>th{position:relative;font-weight:500;text-align:left;transition:background .3s ease}.ant-table-thead>tr>th[colspan]:not([colspan='1']){text-align:center}.ant-table-thead>tr>th:not(:last-child):not(.ant-table-selection-column):not(.ant-table-row-expand-icon-cell):not([colspan])::before{position:absolute;top:50%;right:0;width:1px;height:1.6em;background-color:rgba(0,0,0,.06);transform:translateY(-50%);transition:background-color .3s;content:''}.ant-table-thead>tr:not(:last-child)>th[colspan]{border-bottom:0}.ant-table-tbody>tr>td{border-bottom:1px solid #f0f0f0;transition:background .3s}.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td,.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td,.notice-icon .ant-list-item:last-child{border-bottom:0}.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table,.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table{margin:-12px -8px -12px 25px}.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:first-child,.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:last-child,.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:first-child,.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:last-child{border-radius:0}.ant-table-tbody>tr.ant-table-row:hover>td,.ant-table-tbody>tr>td.ant-table-cell-row-hover{background:#fafafa}.ant-table-tbody>tr.ant-table-row-selected>td{background:#e6f7ff;border-color:rgba(0,0,0,.03)}.ant-table-tbody>tr.ant-table-row-selected:hover>td{background:#dcf4ff}.ant-table-summary{position:relative;z-index:2;background:#fff}div.ant-table-summary{box-shadow:0 -1px 0 #f0f0f0}.ant-table-summary>tr>td,.ant-table-summary>tr>th{border-bottom:1px solid #f0f0f0}.ant-table-pagination.ant-pagination{margin:16px 0}.ant-table-pagination{display:flex;flex-wrap:wrap;row-gap:4px}.ant-table-pagination>*{flex:none}.ant-table-pagination-left{justify-content:flex-start}.ant-table-pagination-center{justify-content:center}.ant-table-pagination-right{justify-content:flex-end}.ant-table-thead th.ant-table-column-has-sorters{outline:0;cursor:pointer;transition:all .3s}.ant-table-thead th.ant-table-column-has-sorters:hover{background:rgba(0,0,0,.04)}.ant-table-thead th.ant-table-column-has-sorters:hover::before{background-color:transparent!important}.ant-table-thead th.ant-table-column-has-sorters:focus-visible{color:#1890ff}.ant-table-thead th.ant-table-column-has-sorters.ant-table-cell-fix-left:hover,.ant-table-thead th.ant-table-column-has-sorters.ant-table-cell-fix-right:hover,.ant-table-thead th.ant-table-column-sort{background:#f5f5f5}.ant-table-thead th.ant-table-column-sort::before{background-color:transparent!important}td.ant-table-column-sort{background:#fafafa}.ant-table-column-title{position:relative;z-index:1;flex:1}.ant-table-column-sorters{display:flex;flex:auto;align-items:center;justify-content:space-between}.ant-table-column-sorters::after{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;content:''}.ant-table-column-sorter{margin-left:4px;color:#bfbfbf;font-size:0;transition:color .3s}.ant-table-column-sorter-inner{display:inline-flex;flex-direction:column;align-items:center}.ant-table-column-sorter-down,.ant-table-column-sorter-up{font-size:11px}.ant-table-column-sorter-down.active,.ant-table-column-sorter-up.active{color:#1890ff}.ant-table-column-sorter-up+.ant-table-column-sorter-down{margin-top:-.3em}.ant-table-column-sorters:hover .ant-table-column-sorter{color:#a6a6a6}.ant-table-filter-column{display:flex;justify-content:space-between}.ant-table-filter-trigger{position:relative;display:flex;align-items:center;margin:-4px -4px -4px 4px;padding:0 4px;color:#bfbfbf;font-size:12px;border-radius:2px;cursor:pointer;transition:all .3s}.ant-table-filter-trigger:hover{color:rgba(0,0,0,.45);background:rgba(0,0,0,.04)}.ant-table-filter-trigger.active{color:#1890ff}.ant-table-filter-dropdown{margin:0;padding:0;color:rgba(0,0,0,.85);font-size:12px;min-width:120px;background-color:#fff;border-radius:2px;box-shadow:0 3px 6px -4px rgba(0,0,0,.12),0 6px 16px 0 rgba(0,0,0,.08),0 9px 28px 8px rgba(0,0,0,.05)}.ant-table-filter-dropdown .ant-dropdown-menu{max-height:264px;overflow-x:hidden;border:0;box-shadow:none}.ant-table-filter-dropdown-btns,.ant-table-sticky-scroll,.ant-transfer-list-footer,.ant-transfer-list-pagination,.drawer-footer,.modal-footer,.sv__bordered{border-top:1px solid #f0f0f0}.ant-table-filter-dropdown .ant-dropdown-menu:empty::after{display:block;padding:8px 0;color:rgba(0,0,0,.25);font-size:12px;text-align:center;content:'Not Found'}.ant-table-filter-dropdown-tree{padding:8px 8px 0}.ant-table-filter-dropdown-tree .ant-tree-treenode .ant-tree-node-content-wrapper:hover{background-color:#f5f5f5}.ant-table-filter-dropdown-tree .ant-tree-treenode-checkbox-checked .ant-tree-node-content-wrapper,.ant-table-filter-dropdown-tree .ant-tree-treenode-checkbox-checked .ant-tree-node-content-wrapper:hover{background-color:#bae7ff}.ant-table-filter-dropdown-search{padding:8px;border-bottom:1px #f0f0f0 solid}.ant-table-filter-dropdown-search-input input{min-width:140px}.ant-table-filter-dropdown-search-input .anticon{color:rgba(0,0,0,.25)}.ant-table-filter-dropdown-checkall{width:100%;margin-bottom:4px;margin-left:4px}.ant-table-filter-dropdown-submenu>ul{max-height:calc(100vh - 130px);overflow-x:hidden;overflow-y:auto}.ant-table-custom-column .ant-table-tbody .ant-table-row td,.ant-table-custom-column .ant-table-thead .ant-table-row th,.ant-table-filter-dropdown-btns{overflow:hidden}.ant-table-filter-dropdown .ant-checkbox-wrapper+span,.ant-table-filter-dropdown-submenu .ant-checkbox-wrapper+span{padding-left:8px}.ant-table-filter-dropdown-btns{display:flex;justify-content:space-between;padding:7px 8px;background-color:inherit}.ant-table-selection-col{width:32px}.ant-table-bordered .ant-table-selection-col{width:50px}table tr td.ant-table-selection-column,table tr th.ant-table-selection-column{padding-right:4px;padding-left:4px;text-align:center}table tr td.ant-table-selection-column .ant-radio-wrapper,table tr th.ant-table-selection-column .ant-radio-wrapper{margin-right:0}table tr th.ant-table-selection-column.ant-table-cell-fix-left{z-index:3}table tr th.ant-table-selection-column::after{background-color:transparent!important}.ant-table-selection{position:relative;display:inline-flex;flex-direction:column}.ant-table-selection-extra{position:absolute;top:0;z-index:1;cursor:pointer;transition:all .3s;margin-inline-start:100%;padding-inline-start:2px}.ant-table-selection-extra .anticon{color:#bfbfbf;font-size:10px}.ant-table-selection-extra .anticon:hover{color:#a6a6a6}.ant-table-expand-icon-col{width:48px}.ant-table-row-expand-icon-cell{text-align:center}.ant-table-row-indent{float:left;height:1px}.ant-table-row-expand-icon{text-decoration:none;cursor:pointer;position:relative;display:inline-flex;float:left;box-sizing:border-box;width:17px;height:17px;padding:0;color:inherit;line-height:17px;background:#fff;border:1px solid #f0f0f0;border-radius:2px;outline:0;transform:scale(.82352941);transition:all .3s;user-select:none}.ant-table-row-expand-icon::after,.ant-tree-rtl .ant-tree-switcher_close .ant-tree-switcher-icon svg,.ant-tree-select-dropdown-rtl .ant-select-tree .ant-select-tree-switcher_close .ant-select-tree-switcher-icon svg{transform:rotate(90deg)}.ant-table-row-expand-icon:focus,.ant-table-row-expand-icon:hover{color:#40a9ff}.ant-table-row-expand-icon:active{color:#096dd9}.ant-table-row-expand-icon:active,.ant-table-row-expand-icon:focus,.ant-table-row-expand-icon:hover{border-color:currentcolor}.ant-table-row-expand-icon::after,.ant-table-row-expand-icon::before{position:absolute;background:currentcolor;transition:transform .3s ease-out;content:''}.ant-table-row-expand-icon::before{top:7px;right:3px;left:3px;height:1px}.ant-table-row-expand-icon::after{top:3px;bottom:3px;left:7px;width:1px}.ant-table-row-expand-icon-collapsed::before{transform:rotate(-180deg)}.ant-table-row-expand-icon-collapsed::after{transform:rotate(0)}.ant-table-row-expand-icon-spaced{background:0 0;border:0;visibility:hidden}.ant-table-row-expand-icon-spaced::after,.ant-table-row-expand-icon-spaced::before{display:none;content:none}.ant-table-row-indent+.ant-table-row-expand-icon{margin-top:1.5px;margin-right:4px}tr.ant-table-expanded-row:hover>td,tr.ant-table-expanded-row>td{background:#fbfbfb}tr.ant-table-expanded-row .ant-descriptions-view{display:flex}tr.ant-table-expanded-row .ant-descriptions-view table{flex:auto;width:auto}.ant-table .ant-table-expanded-row-fixed{position:relative;margin:-12px -8px;padding:12px 8px}.ant-table-tbody>tr.ant-table-placeholder{text-align:center}.ant-table-empty .ant-table-tbody>tr.ant-table-placeholder{color:rgba(0,0,0,.25)}.ant-table-tbody>tr.ant-table-placeholder:hover>td{background:#fff}.ant-table-cell-fix-left,.ant-table-cell-fix-right{position:sticky!important;z-index:2;background:#fff}.ant-table .ant-table-container::after,.ant-table .ant-table-container::before,.ant-table-cell-fix-left-first::after,.ant-table-cell-fix-left-last::after,.ant-table-cell-fix-right-first::after,.ant-table-cell-fix-right-last::after{position:absolute;width:30px;transition:box-shadow .3s;top:0;pointer-events:none;content:''}.ant-table-cell-fix-left-first::after,.ant-table-cell-fix-left-last::after{right:0;bottom:-1px;transform:translateX(100%)}.ant-table-cell-fix-right-first::after,.ant-table-cell-fix-right-last::after{bottom:-1px;left:0;transform:translateX(-100%)}.ant-table .ant-table-container::after,.ant-table .ant-table-container::before{bottom:0;z-index:1}.ant-table .ant-table-container::before{left:0}.ant-table .ant-table-container::after{right:0}.ant-table-ping-left:not(.ant-table-has-fix-left) .ant-table-container{position:relative}.ant-table-ping-left .ant-table-cell-fix-left-first::after,.ant-table-ping-left .ant-table-cell-fix-left-last::after,.ant-table-ping-left:not(.ant-table-has-fix-left) .ant-table-container::before{box-shadow:inset 10px 0 8px -8px rgba(0,0,0,.15)}.ant-table-ping-left .ant-table-cell-fix-left-last::before{background-color:transparent!important}.ant-table-ping-right:not(.ant-table-has-fix-right) .ant-table-container{position:relative}.ant-table-sticky-holder,.ant-table-sticky-scroll{position:sticky;z-index:calc(2 + 1);background:#fff}.ant-table-ping-right .ant-table-cell-fix-right-first::after,.ant-table-ping-right .ant-table-cell-fix-right-last::after,.ant-table-ping-right:not(.ant-table-has-fix-right) .ant-table-container::after{box-shadow:inset -10px 0 8px -8px rgba(0,0,0,.15)}.ant-table-sticky-scroll{bottom:0;display:flex;align-items:center;opacity:.6}.ant-table-sticky-scroll:hover{transform-origin:center bottom}.ant-table-sticky-scroll-bar{height:8px;background-color:rgba(0,0,0,.35);border-radius:4px}.ant-table-sticky-scroll-bar-active,.ant-table-sticky-scroll-bar:hover{background-color:rgba(0,0,0,.8)}.ant-table-custom-column col{width:auto!important;min-width:auto!important;display:none}.ant-table-custom-column .ant-table-thead .ant-table-row{width:100%;display:flex;justify-content:space-between}.ant-table-custom-column .ant-table-tbody .ant-table-row{width:100%;display:flex;justify-content:space-between}.ant-table-custom-column .ant-table-tbody .ant-table-row .nz-disable-td{width:100%}.ant-table-custom-column .ant-table-fixed tr .ant-table-cell-fix-left-last,.ant-table-custom-column .ant-table-fixed tr .ant-table-cell-fix-right-first{overflow:visible}.ant-table-custom-column .ant-table-fixed .ant-table-row{width:100%}@media all and (-ms-high-contrast:none){.ant-table-ping-left .ant-table-cell-fix-left-last::after,.ant-table-ping-right .ant-table-cell-fix-right-first::after{box-shadow:none!important}}.ant-table-title+.ant-table-container{border-top-left-radius:0;border-top-right-radius:0}.ant-table-title+.ant-table-container table>thead>tr:first-child th:first-child,.ant-table-title+.ant-table-container table>thead>tr:first-child th:last-child{border-radius:0}.ant-table-container,.ant-table-container table>thead>tr:first-child th:first-child{border-top-left-radius:2px}.ant-table-container,.ant-table-container table>thead>tr:first-child th:last-child{border-top-right-radius:2px}.ant-table-footer{border-radius:0 0 2px 2px}.ant-table-wrapper-rtl .ant-table table{text-align:right}.ant-table-wrapper-rtl .ant-table-thead>tr>th[colspan]:not([colspan='1']){text-align:center}.ant-table-wrapper-rtl .ant-table-thead>tr>th:not(:last-child):not(.ant-table-selection-column):not(.ant-table-row-expand-icon-cell):not([colspan])::before{right:auto;left:0}.ant-table-wrapper-rtl .ant-table-thead>tr>th{text-align:right}.ant-table-wrapper-rtl .ant-table thead>tr>th.ant-table-selection-column,.ant-table-wrapper-rtl .ant-table-selection{text-align:center}.ant-table-tbody>tr .ant-table-wrapper:only-child .ant-table.ant-table-rtl{margin:-12px 25px -12px -8px}.ant-table-wrapper.ant-table-wrapper-rtl .ant-table-pagination-left{justify-content:flex-end}.ant-table-wrapper.ant-table-wrapper-rtl .ant-table-pagination-right{justify-content:flex-start}.ant-table-wrapper-rtl .ant-table-column-sorter{margin-right:4px;margin-left:0}.ant-table-wrapper-rtl .ant-table-filter-column-title{padding:12px 8px 12px 2.3em}.ant-table-rtl .ant-table-thead tr th.ant-table-column-has-sorters .ant-table-filter-column-title{padding:0 0 0 2.3em}.ant-table-wrapper-rtl .ant-table-filter-trigger{margin:-4px 4px -4px -4px}.ant-dropdown-menu-submenu-rtl.ant-table-filter-dropdown .ant-checkbox-wrapper+span,.ant-dropdown-menu-submenu-rtl.ant-table-filter-dropdown-submenu .ant-checkbox-wrapper+span,.ant-dropdown-rtl .ant-table-filter-dropdown .ant-checkbox-wrapper+span,.ant-dropdown-rtl .ant-table-filter-dropdown-submenu .ant-checkbox-wrapper+span{padding-right:8px;padding-left:0}.ant-table-wrapper-rtl .ant-table-row-expand-icon,.ant-table-wrapper-rtl .ant-table-row-indent{float:right}.ant-table-wrapper-rtl .ant-table-row-indent+.ant-table-row-expand-icon{margin-right:0;margin-left:4px}.ant-table-wrapper-rtl .ant-table-row-expand-icon::after{transform:rotate(-90deg)}.ant-table-wrapper-rtl .ant-table-row-expand-icon-collapsed::before{transform:rotate(180deg)}.ant-table-wrapper-rtl .ant-table-row-expand-icon-collapsed::after{transform:rotate(0)}nz-table,nz-table-inner-default,nz-table-inner-scroll,nz-table-selection,nz-table-title-footer{display:block}nz-filter-trigger{display:inline-flex}.nz-table-out-bordered>.ant-table-container,.nz-table-out-bordered>.ant-table-title{border:1px solid #f0f0f0;border-bottom:0}.nz-table-out-bordered>.ant-table-footer{border:1px solid #f0f0f0;border-top:0}cdk-virtual-scroll-viewport.ant-table-body{overflow-y:scroll}.nz-table-hide-scrollbar{scrollbar-color:#fafafa #fafafa}.nz-table-hide-scrollbar::-webkit-scrollbar{background-color:#fafafa}.ant-table.ant-table-small .nz-table-hide-scrollbar{scrollbar-color:#fafafa #fafafa}.ant-table.ant-table-small .nz-table-hide-scrollbar::-webkit-scrollbar{background-color:transparent}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>thead>tr>th{border-right:1px solid #f0f0f0}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>thead>tr:not(:last-child)>th{border-bottom:1px solid #f0f0f0}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tfoot>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>thead>tr>.ant-table-cell-fix-right-first::after{border-right:1px solid #f0f0f0}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-12px -9px}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td>.ant-table-expanded-row-fixed::after{position:absolute;top:0;right:1px;bottom:0;border-right:1px solid #f0f0f0;content:''}.ant-table.ant-table-bordered.ant-table-scroll-horizontal>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr.ant-table-expanded-row>td,.ant-table.ant-table-bordered.ant-table-scroll-horizontal>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr.ant-table-placeholder>td{border-right:0}.ant-table.ant-table-bordered.ant-table-middle>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-8px -9px}.ant-table.ant-table-bordered.ant-table-small>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-4px -5px}.ant-tabs-small>.ant-tabs-nav .ant-tabs-tab{padding:4px 0;font-size:12px}.ant-tabs-large>.ant-tabs-nav .ant-tabs-tab{padding:8px 0;font-size:14px}.ant-tabs-card.ant-tabs-small>.ant-tabs-nav .ant-tabs-tab{padding:6px 8px}.ant-tabs-card.ant-tabs-large>.ant-tabs-nav .ant-tabs-tab{padding:7px 8px 6px}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab{margin:0 0 0 32px}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab:last-of-type{margin-left:0}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab .anticon{margin-right:0;margin-left:8px}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab .ant-tabs-tab-remove{margin-right:4px;margin-left:0}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab .ant-tabs-tab-remove .anticon{margin:0}.ant-tabs-rtl.ant-tabs-left>.ant-tabs-content-holder,.ant-tabs-rtl.ant-tabs-right>.ant-tabs-nav{order:0}.ant-tabs-rtl.ant-tabs-right>.ant-tabs-content-holder{order:1}.ant-tabs-rtl.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs-rtl.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-rtl.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs-rtl.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-rtl.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs-rtl.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-rtl.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs-rtl.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab{margin-right:2px;margin-left:0}.ant-tabs-dropdown-rtl .ant-tabs-dropdown-menu-item{text-align:right}.ant-tabs-bottom,.ant-tabs-top{flex-direction:column}.ant-tabs-bottom>.ant-tabs-nav,.ant-tabs-bottom>div>.ant-tabs-nav,.ant-tabs-top>.ant-tabs-nav,.ant-tabs-top>div>.ant-tabs-nav{margin:0 0 8px}.ant-tabs-bottom>.ant-tabs-nav::before,.ant-tabs-bottom>div>.ant-tabs-nav::before,.ant-tabs-top>.ant-tabs-nav::before,.ant-tabs-top>div>.ant-tabs-nav::before{position:absolute;right:0;left:0;border-bottom:1px solid #f0f0f0;content:''}.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-top>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-ink-bar{height:2px}.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-top>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-ink-bar-animated{transition:width .3s,left .3s,right .3s}.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap::before{top:0;bottom:0;width:30px}.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap::before{left:0;box-shadow:inset 10px 0 8px -8px rgba(0,0,0,.08)}.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap::after{right:0;box-shadow:inset -10px 0 8px -8px rgba(0,0,0,.08)}.ant-tabs-top>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-top>.ant-tabs-nav::before,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-top>div>.ant-tabs-nav::before{bottom:0}.ant-tabs-bottom>.ant-tabs-nav,.ant-tabs-bottom>div>.ant-tabs-nav{order:1;margin-top:8px;margin-bottom:0}.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-bottom>.ant-tabs-nav::before,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-bottom>div>.ant-tabs-nav::before{top:0}.ant-tabs-bottom>.ant-tabs-content-holder,.ant-tabs-bottom>div>.ant-tabs-content-holder{order:0}.ant-tabs-left>.ant-tabs-nav,.ant-tabs-left>div>.ant-tabs-nav,.ant-tabs-right>.ant-tabs-nav,.ant-tabs-right>div>.ant-tabs-nav{flex-direction:column;min-width:50px}.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab{padding:4px 16px;text-align:center}.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab{margin:8px 0 0}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap{flex-direction:column}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap::before{right:0;left:0;height:30px}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap::before{top:0;box-shadow:inset 0 10px 8px -8px rgba(0,0,0,.08)}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap::after{bottom:0;box-shadow:inset 0 -10px 8px -8px rgba(0,0,0,.08)}.ant-tabs-dropdown-menu,.ant-tooltip-inner,.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu,.theme-btn .ant-avatar{box-shadow:0 3px 6px -4px rgba(0,0,0,.12),0 6px 16px 0 rgba(0,0,0,.08),0 9px 28px 8px rgba(0,0,0,.05)}.ant-tabs-left>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-right>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-ink-bar{width:2px}.ant-tabs-left>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-right>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-ink-bar-animated{transition:height .3s,top .3s}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-operations,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-operations,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-operations,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-operations{flex:1 0 auto;flex-direction:column}.ant-tabs-left>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-ink-bar{right:0}.ant-tabs-left>.ant-tabs-content-holder,.ant-tabs-left>div>.ant-tabs-content-holder{margin-left:-1px;border-left:1px solid #f0f0f0}.ant-tabs-left>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane,.ant-tabs-left>div>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane{padding-left:16px}.ant-tabs-right>.ant-tabs-nav,.ant-tabs-right>div>.ant-tabs-nav{order:1}.ant-tabs-right>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-ink-bar{left:0}.ant-tabs-right>.ant-tabs-content-holder,.ant-tabs-right>div>.ant-tabs-content-holder{order:0;margin-right:-1px;border-right:1px solid #f0f0f0}.ant-tabs-right>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane,.ant-tabs-right>div>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane{padding-right:16px}.ant-tabs-dropdown{margin:0;padding:0;color:rgba(0,0,0,.85);font-size:12px;position:absolute;top:-9999px;left:-9999px;z-index:1050;display:block}.ant-tabs-dropdown-hidden{display:none}.ant-tabs-dropdown-menu{max-height:200px;margin:0;padding:4px 0;overflow-x:hidden;overflow-y:auto;text-align:left;list-style-type:none;background-color:#fff;background-clip:padding-box;border-radius:2px;outline:0}.ant-tabs-dropdown-menu-item{display:flex;align-items:center;min-width:120px;margin:0;padding:5px 8px;overflow:hidden;color:rgba(0,0,0,.85);font-weight:400;font-size:12px;line-height:18px;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:all .3s}.ant-tabs-dropdown-menu-item>span{flex:1;white-space:nowrap}.ant-tabs-dropdown-menu-item-remove{flex:none;margin-left:8px;color:rgba(0,0,0,.45);font-size:12px;background:0 0;border:0;cursor:pointer}.ant-tabs-dropdown-menu-item-remove:hover{color:#40a9ff}.ant-tabs-dropdown-menu-item:hover{background:#f5f5f5}.ant-tabs-dropdown-menu-item-disabled,.ant-tabs-dropdown-menu-item-disabled:hover{color:rgba(0,0,0,.25);background:0 0;cursor:not-allowed}.ant-tabs-card>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card>div>.ant-tabs-nav .ant-tabs-tab{margin:0;padding:4px 8px;background:#fafafa;border:1px solid #f0f0f0;transition:all .3s cubic-bezier(.645,.045,.355,1)}.ant-tabs-card>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card>div>.ant-tabs-nav .ant-tabs-tab-active{color:#1890ff;background:#fff}.ant-tabs-card>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-card>div>.ant-tabs-nav .ant-tabs-ink-bar{visibility:hidden}.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab{margin-left:2px}.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-tab{border-radius:2px 2px 0 0}.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-tab-active{border-bottom-color:#fff}.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-tab{border-radius:0 0 2px 2px}.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-tab-active{border-top-color:#fff}.ant-tabs-card.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab{margin-top:2px}.ant-tabs-card.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab{border-radius:2px 0 0 2px}.ant-tabs-card.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab-active{border-right-color:#fff}.ant-tabs-card.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab{border-radius:0 2px 2px 0}.ant-tabs-card.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab-active{border-left-color:#fff}.ant-tabs{margin:0;padding:0;color:rgba(0,0,0,.85);font-size:12px;display:flex}.ant-tabs>.ant-tabs-nav,.ant-tabs>div>.ant-tabs-nav{position:relative;display:flex;flex:none;align-items:center}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-wrap,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-wrap{position:relative;display:inline-block;display:flex;flex:auto;align-self:stretch;overflow:hidden;white-space:nowrap;transform:translate(0)}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-wrap::before{position:absolute;z-index:1;opacity:0;transition:opacity .3s;content:'';pointer-events:none}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-list{position:relative;display:flex;transition:transform .3s}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-operations,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-operations{display:flex;align-self:stretch}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-operations-hidden,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-operations-hidden{position:absolute;visibility:hidden;pointer-events:none}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-more,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-more{position:relative;padding:4px 8px;background:0 0;border:0}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-more::after,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-more::after{position:absolute;right:0;bottom:0;left:0;height:5px;transform:translateY(100%);content:''}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add{min-width:40px;margin-left:2px;padding:0 4px;background:#fafafa;border:1px solid #f0f0f0;border-radius:2px 2px 0 0;outline:0;cursor:pointer;transition:all .3s cubic-bezier(.645,.045,.355,1)}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add:hover,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add:hover{color:#40a9ff}.ant-tabs-tab-btn:active,.ant-tabs-tab-btn:focus,.ant-tabs-tab-remove:active,.ant-tabs-tab-remove:focus,.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add:active,.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add:focus,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add:active,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add:focus{color:#096dd9}.ant-tabs-extra-content{flex:none}.ant-tabs-centered>.ant-tabs-nav .ant-tabs-nav-wrap:not([class*=ant-tabs-nav-wrap-ping]),.ant-tabs-centered>div>.ant-tabs-nav .ant-tabs-nav-wrap:not([class*=ant-tabs-nav-wrap-ping]){justify-content:center}.ant-tabs-ink-bar{position:absolute;pointer-events:none}.ant-tabs-dropdown-menu-item a[nz-tab-link],.ant-tabs-tab{position:relative}.ant-tabs-tab,.ant-tabs-tab-remove{background:0 0;cursor:pointer;font-size:12px;outline:0}.ant-tabs-tab{display:inline-flex;align-items:center;padding:8px 0;border:0}.ant-tabs-tab-btn{outline:0;transition:all .3s}.ant-tabs-tab-remove{flex:none;margin-right:0;margin-left:4px;color:rgba(0,0,0,.45);border:none;transition:all .3s}.ant-tabs-tab-remove:hover{color:rgba(0,0,0,.85)}.ant-tabs-tab:hover{color:#40a9ff}.ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn{color:#1890ff;text-shadow:0 0 .25px currentcolor}.ant-tabs-tab.ant-tabs-tab-disabled{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-tabs-tab.ant-tabs-tab-disabled .ant-tabs-tab-btn:active,.ant-tabs-tab.ant-tabs-tab-disabled .ant-tabs-tab-btn:focus,.ant-tabs-tab.ant-tabs-tab-disabled .ant-tabs-tab-remove:active,.ant-tabs-tab.ant-tabs-tab-disabled .ant-tabs-tab-remove:focus{color:rgba(0,0,0,.25)}.ant-tabs-tab .ant-tabs-tab-remove .anticon{margin:0}.ant-tabs-tab .anticon{margin-right:8px}.ant-tabs-tab+.ant-tabs-tab{margin:0 0 0 32px}.ant-tabs-content{display:flex;width:100%}.ant-tabs-content-holder{flex:auto;min-width:0;min-height:0}.ant-tabs-content-animated{transition:margin .3s}.ant-tabs-tabpane{flex:none;width:100%;outline:0}.ant-tabs-tab a[nz-tab-link]::before{position:absolute;top:0;left:0;right:0;bottom:0;background-color:transparent;content:''}.ant-tabs-tab a[nz-tab-link]~*{position:relative}nz-tab-nav-operation,nz-tabs-nav,nz-tabset{display:block;overflow:hidden}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu{max-height:200px;margin:0;padding:4px 0;overflow-x:hidden;overflow-y:auto;text-align:left;list-style-type:none;background-color:#fff;background-clip:padding-box;border-radius:2px;outline:0}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item{min-width:120px;margin:0;padding:5px 8px;overflow:hidden;color:rgba(0,0,0,.85);font-weight:400;font-size:12px;line-height:18px;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:all .3s}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item:hover{background:#f5f5f5}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item-disabled,.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item-disabled:hover{color:rgba(0,0,0,.25);background:0 0;cursor:not-allowed}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item-disabled a,.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item-disabled:hover a{pointer-events:none;color:rgba(0,0,0,.25)}.ant-tabs-rtl .ant-tabs-rtl-tab-next{right:auto;left:2px}.ant-tabs-tab-disabled a{pointer-events:none;color:rgba(0,0,0,.25)}.ant-tag{box-sizing:border-box;margin:0 8px 0 0;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;display:inline-block;height:auto;padding:0 7px;font-size:12px;line-height:18px;white-space:nowrap;background:#fafafa;border:1px solid #d9d9d9;border-radius:2px;opacity:1;transition:all .3s}.ant-tag-checkable,.ant-tag-has-color{border-color:transparent}.ant-tag,.ant-tag a,.ant-tag a:hover{color:rgba(0,0,0,.85)}.ant-tag>a:first-child:last-child{display:inline-block;margin:0 -8px;padding:0 8px}.ant-tag-hidden,.ant-timeline-item-last>.ant-timeline-item-tail,.ant-timeline-item-pending .ant-timeline-item-tail{display:none}.ant-tag-close-icon{margin-left:3px;color:rgba(0,0,0,.45);font-size:10px;cursor:pointer;transition:all .3s}.ant-tag-close-icon:hover{color:rgba(0,0,0,.85)}.ant-tag-has-color,.ant-tag-has-color .anticon-close,.ant-tag-has-color .anticon-close:hover,.ant-tag-has-color a,.ant-tag-has-color a:hover{color:#fff}.ant-tag-checkable{background-color:transparent;cursor:pointer}.ant-tag-checkable:not(.ant-tag-checkable-checked):hover{color:#1890ff}.ant-tag-checkable-checked,.ant-tag-checkable:active{color:#fff}.ant-tag-checkable-checked{background-color:#1890ff}.ant-tag-checkable:active{background-color:#096dd9}.ant-tag-pink{color:#c41d7f;background:#fff0f6;border-color:#ffadd2}.ant-tag-pink-inverse{color:#fff;background:#eb2f96;border-color:#eb2f96}.ant-tag-magenta{color:#c41d7f;background:#fff0f6;border-color:#ffadd2}.ant-tag-magenta-inverse,.ant-tooltip-magenta .ant-tooltip-arrow-content::before,.ant-tooltip-pink .ant-tooltip-arrow-content::before{background:#eb2f96}.ant-tag-magenta-inverse{color:#fff;border-color:#eb2f96}.ant-tag-red{color:#cf1322;background:#fff1f0;border-color:#ffa39e}.ant-tag-red-inverse{color:#fff;background:#f5222d;border-color:#f5222d}.ant-tag-volcano{color:#d4380d;background:#fff2e8;border-color:#ffbb96}.ant-tag-volcano-inverse{color:#fff;background:#fa541c;border-color:#fa541c}.ant-tag-orange{color:#d46b08;background:#fff7e6;border-color:#ffd591}.ant-tag-orange-inverse{color:#fff;background:#fa8c16;border-color:#fa8c16}.ant-tag-yellow{color:#d4b106;background:#feffe6;border-color:#fffb8f}.ant-tag-yellow-inverse{color:#fff;background:#fadb14;border-color:#fadb14}.ant-tag-gold{color:#d48806;background:#fffbe6;border-color:#ffe58f}.ant-tag-gold-inverse{color:#fff;background:#faad14;border-color:#faad14}.ant-tag-cyan{color:#08979c;background:#e6fffb;border-color:#87e8de}.ant-tag-cyan-inverse{color:#fff;background:#13c2c2;border-color:#13c2c2}.ant-tag-lime{color:#7cb305;background:#fcffe6;border-color:#eaff8f}.ant-tag-lime-inverse{color:#fff;background:#a0d911;border-color:#a0d911}.ant-tag-green{color:#389e0d;background:#f6ffed;border-color:#b7eb8f}.ant-tag-green-inverse{color:#fff;background:#52c41a;border-color:#52c41a}.ant-tag-blue{color:#096dd9;background:#e6f7ff;border-color:#91d5ff}.ant-tag-blue-inverse{color:#fff;background:#1890ff;border-color:#1890ff}.ant-tag-geekblue{color:#1d39c4;background:#f0f5ff;border-color:#adc6ff}.ant-tag-geekblue-inverse{color:#fff;background:#2f54eb;border-color:#2f54eb}.ant-tag-purple{color:#531dab;background:#f9f0ff;border-color:#d3adf7}.ant-tag-purple-inverse{color:#fff;background:#722ed1;border-color:#722ed1}.ant-tag-success{color:#52c41a;background:#f6ffed;border-color:#b7eb8f}.ant-tag-processing{color:#1890ff;background:#e6f7ff;border-color:#91d5ff}.ant-tag-error{color:#ff4d4f;background:#fff2f0;border-color:#ffccc7}.ant-tag-warning{color:#faad14;background:#fffbe6;border-color:#ffe58f}.ant-timeline,.ant-tooltip,.ant-transfer{color:rgba(0,0,0,.85);line-height:1.66667;font-variant:tabular-nums;font-feature-settings:tnum;box-sizing:border-box}.ant-tag>.anticon+span,.ant-tag>span+.anticon{margin-left:7px}.ant-tag.ant-tag-rtl{margin-right:0;margin-left:8px;text-align:right}.ant-tag-rtl .ant-tag-close-icon{margin-right:3px;margin-left:0}.ant-tag-rtl.ant-tag>.anticon+span,.ant-tag-rtl.ant-tag>span+.anticon{margin-right:7px;margin-left:0}.ant-timeline,.ant-timeline-item{margin:0;font-size:12px;list-style:none}.ant-timeline{padding:0}.ant-timeline-item{position:relative;padding-bottom:20px}.ant-timeline-item-tail{position:absolute;top:10px;left:4px;height:calc(100% - 10px);border-left:2px solid #f0f0f0}.ant-timeline-item-pending .ant-timeline-item-head{font-size:12px;background-color:transparent}.ant-timeline-item-head{position:absolute;width:10px;height:10px;background-color:#fff;border:2px solid transparent;border-radius:100px}.ant-timeline-item-head-blue{color:#1890ff;border-color:#1890ff}.ant-timeline-item-head-red{color:#ff4d4f;border-color:#ff4d4f}.ant-timeline-item-head-green{color:#52c41a;border-color:#52c41a}.ant-timeline-item-head-gray{color:rgba(0,0,0,.25);border-color:rgba(0,0,0,.25)}.ant-timeline-item-head-custom{position:absolute;top:5.5px;left:5px;width:auto;height:auto;margin-top:0;padding:3px 1px;line-height:1;text-align:center;border:0;border-radius:0;transform:translate(-50%,-50%)}.ant-timeline-item-content{position:relative;top:-7px;margin:0 0 0 18px;word-break:break-word}.ant-timeline-item-last>.ant-timeline-item-content{min-height:48px}.ant-timeline.ant-timeline-alternate .ant-timeline-item-head,.ant-timeline.ant-timeline-alternate .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-alternate .ant-timeline-item-tail,.ant-timeline.ant-timeline-label .ant-timeline-item-head,.ant-timeline.ant-timeline-label .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-label .ant-timeline-item-tail,.ant-timeline.ant-timeline-right .ant-timeline-item-head,.ant-timeline.ant-timeline-right .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-right .ant-timeline-item-tail{left:50%}.ant-timeline.ant-timeline-alternate .ant-timeline-item-head,.ant-timeline.ant-timeline-label .ant-timeline-item-head,.ant-timeline.ant-timeline-right .ant-timeline-item-head{margin-left:-4px}.ant-timeline.ant-timeline-alternate .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-label .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-right .ant-timeline-item-head-custom{margin-left:1px}.ant-timeline.ant-timeline-alternate .ant-timeline-item-left .ant-timeline-item-content,.ant-timeline.ant-timeline-label .ant-timeline-item-left .ant-timeline-item-content,.ant-timeline.ant-timeline-right .ant-timeline-item-left .ant-timeline-item-content{left:calc(50% - 4px);width:calc(50% - 14px);text-align:left}.ant-timeline.ant-timeline-alternate .ant-timeline-item-right .ant-timeline-item-content,.ant-timeline.ant-timeline-label .ant-timeline-item-right .ant-timeline-item-content,.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-content{width:calc(50% - 12px);margin:0;text-align:right}.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-head,.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-tail{left:calc(100% - 4px - 2px)}.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-content{width:calc(100% - 18px)}.ant-timeline.ant-timeline-pending .ant-timeline-item-last .ant-timeline-item-tail{display:block;height:calc(100% - 14px);border-left:2px dotted #f0f0f0}.ant-timeline.ant-timeline-reverse .ant-timeline-item-last .ant-timeline-item-tail{display:none}.ant-timeline.ant-timeline-reverse .ant-timeline-item-pending .ant-timeline-item-tail{top:15px;display:block;height:calc(100% - 15px);border-left:2px dotted #f0f0f0}.ant-timeline.ant-timeline-reverse .ant-timeline-item-pending .ant-timeline-item-content{min-height:48px}.ant-timeline.ant-timeline-label .ant-timeline-item-label{position:absolute;top:-7px;width:calc(50% - 12px);text-align:right}.ant-timeline.ant-timeline-label .ant-timeline-item-right .ant-timeline-item-label{left:calc(50% + 14px);width:calc(50% - 14px);text-align:left}.ant-timeline-rtl .ant-timeline-item-tail{right:4px;left:auto;border-right:2px solid #f0f0f0;border-left:none}.ant-timeline-rtl .ant-timeline-item-head-custom{right:5px;left:auto;transform:translate(50%,-50%)}.ant-timeline-rtl .ant-timeline-item-content{margin:0 18px 0 0}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-tail,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-tail,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-tail{right:50%;left:auto}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-head{margin-right:-4px;margin-left:0}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-head-custom{margin-right:1px;margin-left:0}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-left .ant-timeline-item-content,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-left .ant-timeline-item-content,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-left .ant-timeline-item-content{right:calc(50% - 4px);left:auto;text-align:right}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-right .ant-timeline-item-content,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-right .ant-timeline-item-content,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-content{text-align:left}.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-tail{right:0;left:auto}.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-content{width:100%;margin-right:18px;text-align:right}.ant-timeline-rtl.ant-timeline.ant-timeline-pending .ant-timeline-item-last .ant-timeline-item-tail,.ant-timeline-rtl.ant-timeline.ant-timeline-reverse .ant-timeline-item-pending .ant-timeline-item-tail{border-right:2px dotted #f0f0f0;border-left:none}.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-label{text-align:left}.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-right .ant-timeline-item-label{right:calc(50% + 14px);text-align:right}.ant-tooltip{margin:0;padding:0;font-size:12px;list-style:none;z-index:1070;display:block;width:max-content;width:intrinsic;max-width:250px}.ant-tooltip-content{position:relative}.ant-tooltip-hidden{display:none}.ant-tooltip-arrow,.ant-tooltip-arrow-content{display:block;position:absolute;pointer-events:none}.ant-tooltip-placement-top,.ant-tooltip-placement-topLeft,.ant-tooltip-placement-topRight{padding-bottom:14.31px}.ant-tooltip-placement-right,.ant-tooltip-placement-rightBottom,.ant-tooltip-placement-rightTop{padding-left:14.31px}.ant-tooltip-placement-bottom,.ant-tooltip-placement-bottomLeft,.ant-tooltip-placement-bottomRight{padding-top:14.31px}.ant-tooltip-placement-left,.ant-tooltip-placement-leftBottom,.ant-tooltip-placement-leftTop{padding-right:14.31px}.ant-tooltip-inner{min-width:30px;min-height:32px;padding:6px 8px;color:#fff;text-align:left;text-decoration:none;word-wrap:break-word;background-color:rgba(0,0,0,.75);border-radius:2px}.ant-tooltip-arrow{z-index:2;width:22px;height:22px;overflow:hidden;background:0 0}.ant-tooltip-arrow-content{--antd-arrow-background-color:linear-gradient(to right bottom, rgba(0, 0, 0, 0.65), rgba(0, 0, 0, 0.75));top:0;right:0;bottom:0;left:0;width:11.31px;height:11.31px;margin:auto;background-color:transparent;content:'';border-radius:0 0 2px}.ant-tooltip-arrow-content::before{position:absolute;top:-11.31px;left:-11.31px;width:33.94px;height:33.94px;background:var(--antd-arrow-background-color);background-repeat:no-repeat;background-position:-10px -10px;content:'';clip-path:path('M 9.849242404917499 24.091883092036785 A 5 5 0 0 1 13.384776310850237 22.627416997969522 L 20.627416997969522 22.627416997969522 A 2 2 0 0 0 22.627416997969522 20.627416997969522 L 22.627416997969522 13.384776310850237 A 5 5 0 0 1 24.091883092036785 9.849242404917499 L 23.091883092036785 9.849242404917499 L 9.849242404917499 23.091883092036785 Z')}.ant-tooltip-placement-top .ant-tooltip-arrow,.ant-tooltip-placement-topLeft .ant-tooltip-arrow,.ant-tooltip-placement-topRight .ant-tooltip-arrow{bottom:0;transform:translateY(100%)}.ant-tooltip-placement-top .ant-tooltip-arrow-content,.ant-tooltip-placement-topLeft .ant-tooltip-arrow-content,.ant-tooltip-placement-topRight .ant-tooltip-arrow-content{box-shadow:3px 3px 7px rgba(0,0,0,.07);transform:translateY(-11px) rotate(45deg)}.ant-tooltip-placement-top .ant-tooltip-arrow{left:50%;transform:translateY(100%) translateX(-50%)}.ant-tooltip-placement-topLeft .ant-tooltip-arrow{left:13px}.ant-tooltip-placement-topRight .ant-tooltip-arrow{right:13px}.ant-tooltip-placement-right .ant-tooltip-arrow,.ant-tooltip-placement-rightBottom .ant-tooltip-arrow,.ant-tooltip-placement-rightTop .ant-tooltip-arrow{left:0;transform:translateX(-100%)}.ant-tooltip-placement-right .ant-tooltip-arrow-content,.ant-tooltip-placement-rightBottom .ant-tooltip-arrow-content,.ant-tooltip-placement-rightTop .ant-tooltip-arrow-content{box-shadow:-3px 3px 7px rgba(0,0,0,.07);transform:translateX(11px) rotate(135deg)}.ant-tooltip-placement-right .ant-tooltip-arrow{top:50%;transform:translateX(-100%) translateY(-50%)}.ant-tooltip-placement-rightTop .ant-tooltip-arrow{top:5px}.ant-tooltip-placement-rightBottom .ant-tooltip-arrow{bottom:5px}.ant-tooltip-placement-left .ant-tooltip-arrow,.ant-tooltip-placement-leftBottom .ant-tooltip-arrow,.ant-tooltip-placement-leftTop .ant-tooltip-arrow{right:0;transform:translateX(100%)}.ant-select-auto-complete .ant-select-clear,.ant-tooltip-placement-bottomRight .ant-tooltip-arrow{right:13px}.ant-tooltip-placement-left .ant-tooltip-arrow-content,.ant-tooltip-placement-leftBottom .ant-tooltip-arrow-content,.ant-tooltip-placement-leftTop .ant-tooltip-arrow-content{box-shadow:3px -3px 7px rgba(0,0,0,.07);transform:translateX(-11px) rotate(315deg)}.ant-tooltip-placement-left .ant-tooltip-arrow{top:50%;transform:translateX(100%) translateY(-50%)}.ant-tooltip-placement-leftTop .ant-tooltip-arrow{top:5px}.ant-tooltip-placement-leftBottom .ant-tooltip-arrow{bottom:5px}.ant-tooltip-placement-bottom .ant-tooltip-arrow,.ant-tooltip-placement-bottomLeft .ant-tooltip-arrow,.ant-tooltip-placement-bottomRight .ant-tooltip-arrow{top:0;transform:translateY(-100%)}.ant-tooltip-placement-bottom .ant-tooltip-arrow-content,.ant-tooltip-placement-bottomLeft .ant-tooltip-arrow-content,.ant-tooltip-placement-bottomRight .ant-tooltip-arrow-content{box-shadow:-3px -3px 7px rgba(0,0,0,.07);transform:translateY(11px) rotate(225deg)}.ant-tooltip-placement-bottom .ant-tooltip-arrow{left:50%;transform:translateY(-100%) translateX(-50%)}.ant-tooltip-placement-bottomLeft .ant-tooltip-arrow{left:13px}.ant-tooltip-red .ant-tooltip-inner{background-color:#f5222d}.ant-tooltip-red .ant-tooltip-arrow-content::before{background:#f5222d}.ant-tooltip-volcano .ant-tooltip-inner{background-color:#fa541c}.ant-tooltip-volcano .ant-tooltip-arrow-content::before{background:#fa541c}.ant-tooltip-orange .ant-tooltip-inner{background-color:#fa8c16}.ant-tooltip-orange .ant-tooltip-arrow-content::before{background:#fa8c16}.ant-tooltip-yellow .ant-tooltip-inner{background-color:#fadb14}.ant-tooltip-yellow .ant-tooltip-arrow-content::before{background:#fadb14}.ant-tooltip-gold .ant-tooltip-inner{background-color:#faad14}.ant-tooltip-gold .ant-tooltip-arrow-content::before{background:#faad14}.ant-tooltip-cyan .ant-tooltip-inner{background-color:#13c2c2}.ant-tooltip-cyan .ant-tooltip-arrow-content::before{background:#13c2c2}.ant-tooltip-lime .ant-tooltip-inner{background-color:#a0d911}.ant-tooltip-lime .ant-tooltip-arrow-content::before{background:#a0d911}.ant-tooltip-green .ant-tooltip-inner{background-color:#52c41a}.ant-tooltip-green .ant-tooltip-arrow-content::before{background:#52c41a}.ant-tooltip-blue .ant-tooltip-inner{background-color:#1890ff}.ant-tooltip-blue .ant-tooltip-arrow-content::before{background:#1890ff}.ant-tooltip-geekblue .ant-tooltip-inner{background-color:#2f54eb}.ant-tooltip-geekblue .ant-tooltip-arrow-content::before{background:#2f54eb}.ant-tooltip-purple .ant-tooltip-inner{background-color:#722ed1}.ant-tooltip-purple .ant-tooltip-arrow-content::before{background:#722ed1}.ant-tooltip-rtl .ant-tooltip-inner{text-align:right}.ant-tooltip{position:relative}.ant-transfer-customize-list .ant-transfer-list{flex:1 1 50%;width:auto;height:auto;min-height:200px}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small{border:0;border-radius:0}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small .ant-table-selection-column{width:40px;min-width:40px}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small>.ant-table-content>.ant-table-body>table>.ant-table-thead>tr>th{background:#fafafa}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small>.ant-table-content .ant-table-row:last-child td{border-bottom:1px solid #f0f0f0}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small .ant-table-body{margin:0}.ant-transfer-customize-list .ant-table-wrapper .ant-table-pagination.ant-pagination{margin:16px 0 4px}.ant-transfer-customize-list .ant-input[disabled]{background-color:transparent}.ant-transfer-status-error .ant-transfer-list{border-color:#ff4d4f}.ant-transfer-status-error .ant-transfer-list-search:not([disabled]){border-color:#d9d9d9}.ant-transfer-status-error .ant-transfer-list-search:not([disabled]):hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-transfer-status-error .ant-transfer-list-search:not([disabled]):hover{border-right-width:0;border-left-width:1px!important}.ant-transfer-status-error .ant-transfer-list-search:not([disabled]):focus{border-color:#40a9ff;box-shadow:0 0 0 2px rgba(24,144,255,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-transfer-status-error .ant-transfer-list-search:not([disabled]):focus{border-right-width:0;border-left-width:1px!important}.ant-transfer-status-warning .ant-transfer-list{border-color:#faad14}.ant-transfer-status-warning .ant-transfer-list-search:not([disabled]){border-color:#d9d9d9}.ant-transfer-status-warning .ant-transfer-list-search:not([disabled]):hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-transfer-status-warning .ant-transfer-list-search:not([disabled]):hover{border-right-width:0;border-left-width:1px!important}.ant-transfer-status-warning .ant-transfer-list-search:not([disabled]):focus{border-color:#40a9ff;box-shadow:0 0 0 2px rgba(24,144,255,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-transfer-status-warning .ant-transfer-list-search:not([disabled]):focus{border-right-width:0;border-left-width:1px!important}.ant-transfer{margin:0;padding:0;font-size:12px;list-style:none;position:relative;display:flex;align-items:stretch}.ant-transfer-disabled .ant-transfer-list{background:#f5f5f5}.ant-transfer-list{display:flex;flex-direction:column;width:180px;height:200px;border:1px solid #d9d9d9;border-radius:2px}.ant-transfer-list-with-pagination{width:250px;height:auto}.ant-transfer-list-search .anticon-search{color:rgba(0,0,0,.25)}.ant-transfer-list-header{display:flex;flex:none;align-items:center;height:36px;padding:7px 8px 8px;color:rgba(0,0,0,.85);background:#fff;border-bottom:1px solid #f0f0f0;border-radius:2px 2px 0 0}.ant-transfer-list-header>:not(:last-child){margin-right:4px}.ant-transfer-list-header>*{flex:none}.ant-transfer-list-header-title{flex:auto;overflow:hidden;white-space:nowrap;text-align:right;text-overflow:ellipsis}.ant-transfer-list-header-dropdown{font-size:10px;transform:translateY(10%);cursor:pointer}.ant-transfer-list-header-dropdown[disabled]{cursor:not-allowed}.ant-transfer-list-body{display:flex;flex:auto;flex-direction:column;overflow:hidden;font-size:12px}.ant-transfer-list-body-search-wrapper{position:relative;flex:none;padding:8px}.ant-transfer-list-content{flex:auto;margin:0;padding:0;overflow:auto;list-style:none}.ant-transfer-list-content-item{display:flex;align-items:center;min-height:28px;padding:3px 8px;line-height:22px;transition:all .3s}.ant-transfer-list-content-item>:not(:last-child){margin-right:8px}.ant-transfer-list-content-item>*{flex:none}.ant-transfer-list-content-item-text{flex:auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-transfer-list-content-item-remove{text-decoration:none;outline:0;cursor:pointer;transition:color .3s;position:relative;color:#d9d9d9}.ant-transfer-list-content-item-remove:focus,.ant-transfer-list-content-item-remove:hover{color:#40a9ff}.ant-transfer-list-content-item-remove:active{color:#096dd9}.ant-transfer-list-content-item-remove::after{position:absolute;top:-3px;right:-50%;bottom:-3px;left:-50%;content:''}.ant-transfer-list-content-item-remove:hover{color:#40a9ff}.ant-transfer-list-content-item:not(.ant-transfer-list-content-item-disabled):hover{background-color:#f5f5f5;cursor:pointer}.ant-transfer-list-content-item:not(.ant-transfer-list-content-item-disabled).ant-transfer-list-content-item-checked:hover{background-color:#dcf4ff}.ant-transfer-list-content-show-remove .ant-transfer-list-content-item:not(.ant-transfer-list-content-item-disabled):hover{background:0 0;cursor:default}.ant-transfer-list-content-item-checked{background-color:#e6f7ff}.ant-transfer-list-content-item-disabled{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-transfer-list-pagination{padding:4px 0;text-align:right}.ant-transfer-list-body-not-found{flex:none;width:100%;margin:auto 0;color:rgba(0,0,0,.25);text-align:center}.ant-transfer-rtl .ant-transfer-list-header-title,.ant-transfer-rtl .ant-transfer-list-pagination{text-align:left}.ant-transfer-operation{display:flex;flex:none;flex-direction:column;align-self:center;margin:0 8px;vertical-align:middle}.ant-transfer-operation .ant-btn{display:block}.ant-transfer-operation .ant-btn:first-child{margin-bottom:4px}.ant-transfer-operation .ant-btn .anticon{font-size:12px}.ant-transfer .ant-empty-image{max-height:-4px}.ant-transfer-rtl .ant-transfer-list-search{padding-right:8px;padding-left:24px}.ant-transfer-rtl .ant-transfer-list-search-action{right:auto;left:12px}.ant-transfer-rtl .ant-transfer-list-footer,.ant-transfer-rtl .ant-transfer-list-header{right:0;left:auto}.ant-transfer-rtl .ant-transfer-list-header>:not(:last-child){margin-right:0;margin-left:4px}.ant-transfer-rtl .ant-transfer-list-content-item>:not(:last-child){margin-right:0;margin-left:8px}.ant-typography{color:rgba(0,0,0,.85);overflow-wrap:break-word}.ant-typography.ant-typography-secondary{color:rgba(0,0,0,.45)}.ant-typography.ant-typography-success{color:#52c41a}.ant-typography.ant-typography-warning{color:#faad14}.ant-typography.ant-typography-danger{color:#ff4d4f}a.ant-typography.ant-typography-danger:active,a.ant-typography.ant-typography-danger:focus{color:#d9363e}a.ant-typography.ant-typography-danger:hover{color:#ff7875}.ant-typography.ant-typography-disabled{color:rgba(0,0,0,.25);cursor:not-allowed;user-select:none}.ant-typography p,div.ant-typography{margin-bottom:1em}.ant-typography h1,div.ant-typography-h1,div.ant-typography-h1>textarea,h1.ant-typography{margin-bottom:.5em;color:rgba(0,0,0,.85);font-weight:600;font-size:33px;line-height:1.23}.ant-typography h2,div.ant-typography-h2,div.ant-typography-h2>textarea,h2.ant-typography{margin-bottom:.5em;color:rgba(0,0,0,.85);font-weight:600;font-size:26px;line-height:1.35}.ant-typography h3,div.ant-typography-h3,div.ant-typography-h3>textarea,h3.ant-typography{margin-bottom:.5em;color:rgba(0,0,0,.85);font-weight:600;font-size:21px;line-height:1.35}.ant-typography h4,div.ant-typography-h4,div.ant-typography-h4>textarea,h4.ant-typography{margin-bottom:.5em;color:rgba(0,0,0,.85);font-weight:600;font-size:18px;line-height:1.4}.ant-typography h5,div.ant-typography-h5,div.ant-typography-h5>textarea,h5.ant-typography{margin-bottom:.5em;color:rgba(0,0,0,.85);font-weight:600;font-size:14px;line-height:1.5}.ant-typography div+h1,.ant-typography div+h2,.ant-typography div+h3,.ant-typography div+h4,.ant-typography div+h5,.ant-typography h1+h1,.ant-typography h1+h2,.ant-typography h1+h3,.ant-typography h1+h4,.ant-typography h1+h5,.ant-typography h2+h1,.ant-typography h2+h2,.ant-typography h2+h3,.ant-typography h2+h4,.ant-typography h2+h5,.ant-typography h3+h1,.ant-typography h3+h2,.ant-typography h3+h3,.ant-typography h3+h4,.ant-typography h3+h5,.ant-typography h4+h1,.ant-typography h4+h2,.ant-typography h4+h3,.ant-typography h4+h4,.ant-typography h4+h5,.ant-typography h5+h1,.ant-typography h5+h2,.ant-typography h5+h3,.ant-typography h5+h4,.ant-typography h5+h5,.ant-typography li+h1,.ant-typography li+h2,.ant-typography li+h3,.ant-typography li+h4,.ant-typography li+h5,.ant-typography p+h1,.ant-typography p+h2,.ant-typography p+h3,.ant-typography p+h4,.ant-typography p+h5,.ant-typography ul+h1,.ant-typography ul+h2,.ant-typography ul+h3,.ant-typography ul+h4,.ant-typography ul+h5,.ant-typography+h1.ant-typography,.ant-typography+h2.ant-typography,.ant-typography+h3.ant-typography,.ant-typography+h4.ant-typography,.ant-typography+h5.ant-typography{margin-top:1.2em}.ant-typography code,.ant-typography kbd{margin:0 .2em;border:1px solid rgba(100,100,100,.2)}a.ant-typography-ellipsis,span.ant-typography-ellipsis{display:inline-block;max-width:100%}.ant-typography a,a.ant-typography{color:#1890ff;outline:0;cursor:pointer;transition:color .3s;text-decoration:none}.ant-typography a:focus,.ant-typography a:hover,a.ant-typography:focus,a.ant-typography:hover{color:#40a9ff}.ant-typography a:active,a.ant-typography:active{color:#096dd9}.ant-typography a:active,.ant-typography a:hover,a.ant-typography:active,a.ant-typography:hover{text-decoration:none}.ant-typography a.ant-typography-disabled,.ant-typography a[disabled],a.ant-typography.ant-typography-disabled,a.ant-typography[disabled]{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-typography a.ant-typography-disabled:active,.ant-typography a.ant-typography-disabled:hover,.ant-typography a[disabled]:active,.ant-typography a[disabled]:hover,a.ant-typography.ant-typography-disabled:active,a.ant-typography.ant-typography-disabled:hover,a.ant-typography[disabled]:active,a.ant-typography[disabled]:hover{color:rgba(0,0,0,.25)}.ant-typography a.ant-typography-disabled:active,.ant-typography a[disabled]:active,a.ant-typography.ant-typography-disabled:active,a.ant-typography[disabled]:active{pointer-events:none}.ant-typography code{padding:.2em .4em .1em;font-size:85%;background:rgba(150,150,150,.1);border-radius:3px}.ant-typography kbd{padding:.15em .4em .1em;font-size:90%;background:rgba(150,150,150,.06);border-bottom-width:2px;border-radius:3px}.ant-typography mark{padding:0;background-color:#ffe58f}.ant-typography ins,.ant-typography u{text-decoration:underline;text-decoration-skip-ink:auto}.ant-typography del,.ant-typography s,.menu-deprecated .ant-badge,.text-deleted{text-decoration:line-through}.ant-typography strong{font-weight:600}.ant-typography-copy,.ant-typography-edit,.ant-typography-expand{color:#1890ff;text-decoration:none;outline:0;cursor:pointer;transition:color .3s;margin-left:4px}.ant-typography-copy:focus,.ant-typography-copy:hover,.ant-typography-edit:focus,.ant-typography-edit:hover,.ant-typography-expand:focus,.ant-typography-expand:hover{color:#40a9ff}.ant-typography-copy:active,.ant-typography-edit:active,.ant-typography-expand:active{color:#096dd9}.ant-typography-copy-success,.ant-typography-copy-success:focus,.ant-typography-copy-success:hover{color:#52c41a}.ant-typography-edit-content{position:relative}div.ant-typography-edit-content{left:-8px;margin-top:-4px;margin-bottom:calc(1em - 3px - 1px)}.ant-typography-edit-content-confirm{position:absolute;right:10px;bottom:8px;color:rgba(0,0,0,.45);font-weight:400;font-size:12px;font-style:normal;pointer-events:none}.ant-typography-edit-content textarea{height:1em;margin:0!important;-moz-transition:none}.ant-typography ol,.ant-typography ul{margin:0 0 1em;padding:0}.ant-typography ol li,.ant-typography ul li{margin:0 0 0 20px;padding:0 0 0 4px}.ant-typography ul{list-style-type:circle}.ant-typography ul ul{list-style-type:disc}.ant-typography ol{list-style-type:decimal}.ant-typography blockquote,.ant-typography pre{margin:1em 0}.ant-typography pre{padding:.4em .6em;white-space:pre-wrap;word-wrap:break-word;background:rgba(150,150,150,.1);border:1px solid rgba(100,100,100,.2);border-radius:3px}.ant-typography pre code{display:inline;margin:0;padding:0;font-size:inherit;font-family:inherit;background:0 0;border:0}.ant-typography blockquote{padding:0 0 0 .6em;border-left:4px solid rgba(100,100,100,.2);opacity:.85}.ant-typography-single-line{white-space:nowrap}.ant-typography-ellipsis-single-line{overflow:hidden;text-overflow:ellipsis}a.ant-typography-ellipsis-single-line,span.ant-typography-ellipsis-single-line{vertical-align:bottom}.ant-typography-ellipsis-multiple-line{display:-webkit-box;overflow:hidden;-webkit-line-clamp:3;/*! autoprefixer: ignore next */-webkit-box-orient:vertical}.ant-typography-rtl .ant-typography-copy,.ant-typography-rtl .ant-typography-edit,.ant-typography-rtl .ant-typography-expand{margin-right:4px;margin-left:0}.ant-typography-rtl .ant-typography-expand{float:left}div.ant-typography-edit-content.ant-typography-rtl{right:-8px;left:auto}.ant-typography-rtl .ant-typography-edit-content-confirm{right:auto;left:10px}.ant-typography-rtl.ant-typography ol li,.ant-typography-rtl.ant-typography ul li{margin:0 20px 0 0;padding:0 4px 0 0}.ant-upload{box-sizing:border-box;margin:0;padding:0;color:rgba(0,0,0,.85);font-size:12px;font-variant:tabular-nums;line-height:1.66667;list-style:none;font-feature-settings:tnum;outline:0}.ant-upload p{margin:0}.ant-upload-btn{display:block;width:100%;outline:0}.ant-upload input[type=file]{cursor:pointer}.ant-upload.ant-upload-select{display:inline-block}.ant-upload.ant-upload-disabled{cursor:not-allowed}.ant-upload.ant-upload-select-picture-card{width:104px;height:104px;margin-right:8px;margin-bottom:8px;text-align:center;vertical-align:top;background-color:#fafafa;border:1px dashed #d9d9d9;border-radius:2px;cursor:pointer;transition:border-color .3s}.ant-upload.ant-upload-select-picture-card>.ant-upload{display:flex;align-items:center;justify-content:center;height:100%;text-align:center}.ant-upload.ant-upload-select-picture-card:hover{border-color:#1890ff}.ant-upload-disabled.ant-upload.ant-upload-select-picture-card:hover{border-color:#d9d9d9}.ant-upload.ant-upload-drag{position:relative;width:100%;height:100%;text-align:center;background:#fafafa;border:1px dashed #d9d9d9;border-radius:2px;cursor:pointer;transition:border-color .3s}.ant-upload.ant-upload-drag .ant-upload{padding:8px 0}.ant-upload.ant-upload-drag.ant-upload-drag-hover:not(.ant-upload-disabled){border-color:#096dd9}.ant-upload.ant-upload-drag.ant-upload-disabled{cursor:not-allowed}.ant-upload.ant-upload-drag .ant-upload-btn{display:table;height:100%}.ant-upload.ant-upload-drag .ant-upload-drag-container{display:table-cell;vertical-align:middle}.ant-upload.ant-upload-drag:not(.ant-upload-disabled):hover{border-color:#40a9ff}.ant-upload.ant-upload-drag p.ant-upload-drag-icon{margin-bottom:20px}.ant-upload.ant-upload-drag p.ant-upload-drag-icon .anticon{color:#40a9ff;font-size:48px}.ant-upload.ant-upload-drag p.ant-upload-text{margin:0 0 4px;color:rgba(0,0,0,.85);font-size:14px}.ant-upload.ant-upload-drag p.ant-upload-hint{color:rgba(0,0,0,.45);font-size:12px}.ant-upload.ant-upload-drag .anticon-plus{color:rgba(0,0,0,.25);font-size:30px;transition:all .3s}.ant-upload.ant-upload-drag .anticon-plus:hover,.ant-upload.ant-upload-drag:hover .anticon-plus{color:rgba(0,0,0,.45)}.ant-upload-picture-card-wrapper{display:inline-block;width:100%}.ant-upload-list::after,.ant-upload-list::before,.ant-upload-picture-card-wrapper::after,.ant-upload-picture-card-wrapper::before{display:table;content:''}.ant-upload-picture-card-wrapper::after{clear:both}.ant-upload-list{box-sizing:border-box;margin:0;padding:0;color:rgba(0,0,0,.85);font-size:12px;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;line-height:1.66667}.ant-upload-list::after{clear:both}.ant-upload-list-item{position:relative;height:20px;margin-top:4px;font-size:12px}.ant-upload-list-item-name{display:inline-block;width:100%;padding-left:20px;overflow:hidden;line-height:1.66667;white-space:nowrap;text-overflow:ellipsis}.ant-upload-list-item-card-actions{position:absolute;right:0}.ant-upload-list-item-card-actions-btn{opacity:0}.ant-upload-list-item-card-actions-btn:focus,.ant-upload-list-item-card-actions.picture .ant-upload-list-item-card-actions-btn,.ant-upload-list-item-error .ant-upload-list-item-card-actions-btn,.ant-upload-list-item:hover .ant-upload-list-item-card-actions-btn{opacity:1}.ant-upload-list-item-card-actions-btn.ant-btn-sm{height:20px;line-height:1;vertical-align:top}.ant-upload-list-item-card-actions.picture{top:22px;line-height:0}.ant-upload-list-item-card-actions .anticon{color:rgba(0,0,0,.45);transition:all .3s}.ant-upload-list-item-card-actions:hover .anticon{color:rgba(0,0,0,.85)}.ant-upload-list-item-info{height:100%;transition:background-color .3s}.ant-upload-list-item-info>span{display:block;width:100%;height:100%}.ant-upload-list-item-info .ant-upload-text-icon .anticon,.ant-upload-list-item-info .anticon-loading .anticon{position:absolute;top:4px;color:rgba(0,0,0,.45);font-size:12px}.ant-upload-list-item:hover .ant-upload-list-item-info{background-color:#f5f5f5}.ant-upload-list-picture .ant-upload-list-item:hover,.ant-upload-list-picture .ant-upload-list-item:hover .ant-upload-list-item-info,.ant-upload-list-picture-card .ant-upload-list-item:hover,.ant-upload-list-picture-card .ant-upload-list-item:hover .ant-upload-list-item-info{background:0 0}.ant-upload-list-item-error,.ant-upload-list-item-error .ant-upload-list-item-card-actions .anticon,.ant-upload-list-item-error .ant-upload-list-item-name,.ant-upload-list-item-error .ant-upload-text-icon>.anticon{color:#ff4d4f}.ant-upload-list-item-progress{position:absolute;bottom:-12px;width:100%;padding-left:24px;font-size:12px;line-height:0}.ant-upload-list-picture .ant-upload-list-item,.ant-upload-list-picture-card .ant-upload-list-item{position:relative;height:66px;padding:4px;border:1px solid #d9d9d9;border-radius:2px}.ant-upload-list-picture .ant-upload-list-item-error,.ant-upload-list-picture-card .ant-upload-list-item-error{border-color:#ff4d4f}.ant-upload-list-picture .ant-upload-list-item-uploading,.ant-upload-list-picture-card .ant-upload-list-item-uploading{border-style:dashed}.ant-upload-list-picture .ant-upload-list-item-thumbnail,.ant-upload-list-picture-card .ant-upload-list-item-thumbnail{width:48px;height:48px;line-height:60px;text-align:center;opacity:.8}.ant-upload-list-picture .ant-upload-list-item-thumbnail .anticon,.ant-upload-list-picture-card .ant-upload-list-item-thumbnail .anticon{font-size:26px}.ant-upload-list-picture .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill='#e6f7ff'],.ant-upload-list-picture-card .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill='#e6f7ff']{fill:#fff2f0}.ant-upload-list-picture .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill='#1890ff'],.ant-upload-list-picture-card .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill='#1890ff']{fill:#ff4d4f}.ant-upload-list-picture .ant-upload-list-item-icon,.ant-upload-list-picture-card .ant-upload-list-item-icon{position:absolute;top:50%;left:50%;font-size:26px;transform:translate(-50%,-50%)}.ant-upload-list-picture .ant-upload-list-item-icon .anticon,.ant-upload-list-picture-card .ant-upload-list-item-icon .anticon{font-size:26px}.ant-upload-list-picture .ant-upload-list-item-image,.ant-upload-list-picture-card .ant-upload-list-item-image{max-width:100%}.ant-upload-list-picture .ant-upload-list-item-thumbnail img,.ant-upload-list-picture-card .ant-upload-list-item-thumbnail img{display:block;width:48px;height:48px;overflow:hidden}.ant-upload-list-picture .ant-upload-list-item-name,.ant-upload-list-picture-card .ant-upload-list-item-name{display:inline-block;box-sizing:border-box;max-width:100%;margin:0 0 0 8px;padding-right:8px;padding-left:48px;overflow:hidden;line-height:44px;white-space:nowrap;text-overflow:ellipsis;transition:all .3s}.ant-upload-list-picture .ant-upload-list-item-uploading .ant-upload-list-item-name,.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-name{margin-bottom:12px}.ant-upload-list-picture .ant-upload-list-item-progress,.ant-upload-list-picture-card .ant-upload-list-item-progress{bottom:14px;width:calc(100% - 24px);margin-top:0;padding-left:56px}.ant-upload-list-picture-card-container{display:inline-block;width:104px;height:104px;margin:0 4px 4px 0;vertical-align:top}.ant-upload-list-picture-card .ant-upload-list-item{height:100%;margin:0}.ant-upload-list-picture-card .ant-upload-list-item-info{position:relative;height:100%;overflow:hidden}.ant-upload-list-picture-card .ant-upload-list-item-info::before{position:absolute;z-index:1;width:100%;height:100%;background-color:rgba(0,0,0,.5);opacity:0;transition:all .3s;content:' '}.ant-result-content,.ant-upload-list-picture-card .ant-upload-list-item-uploading.ant-upload-list-item{background-color:#fafafa}.ant-upload-list-picture-card .ant-upload-list-item:hover .ant-upload-list-item-info::before{opacity:1}.ant-upload-list-picture-card .ant-upload-list-item-actions{position:absolute;top:50%;left:50%;z-index:10;white-space:nowrap;transform:translate(-50%,-50%);opacity:0;transition:all .3s}.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-delete,.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-download,.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-eye{z-index:10;width:16px;margin:0 4px;color:rgba(255,255,255,.85);font-size:16px;cursor:pointer;transition:all .3s}.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-delete:hover,.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-download:hover,.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-eye:hover{color:#fff}.ant-upload-list-picture-card .ant-upload-list-item-actions:hover,.ant-upload-list-picture-card .ant-upload-list-item-info:hover+.ant-upload-list-item-actions{opacity:1}.ant-upload-list-picture-card .ant-upload-list-item-thumbnail,.ant-upload-list-picture-card .ant-upload-list-item-thumbnail img{position:static;display:block;width:100%;height:100%;object-fit:contain}.ant-upload-list-picture-card .ant-upload-list-item-name{display:none;margin:8px 0 0;padding:0;line-height:1.66667;text-align:center}.ant-upload-list-picture-card .ant-upload-list-item-file+.ant-upload-list-item-name{position:absolute;bottom:10px;display:block}.ant-select-dropdown-hidden,.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-info .anticon-delete,.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-info .anticon-eye,.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-info::before{display:none}.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-info{height:auto}.ant-upload-list-picture-card .ant-upload-list-item-progress{bottom:32px;width:calc(100% - 14px);padding-left:0}.ant-upload-list-picture-container,.ant-upload-list-text-container{transition:opacity .3s,height .3s}.ant-upload-list-picture-container::before,.ant-upload-list-text-container::before{display:table;width:0;height:0;content:''}.ant-upload-list-picture-container .ant-upload-span,.ant-upload-list-text-container .ant-upload-span{display:block;flex:auto}.ant-upload-list-picture .ant-upload-span,.ant-upload-list-text .ant-upload-span{display:flex;align-items:center}.ant-upload-list-picture .ant-upload-span>*,.ant-upload-list-text .ant-upload-span>*{flex:none}.ant-upload-list-picture .ant-upload-list-item-name,.ant-upload-list-text .ant-upload-list-item-name{flex:auto;margin:0;padding:0 4px}.ant-upload-list-picture .ant-upload-list-item-card-actions,.ant-upload-list-text .ant-upload-list-item-card-actions,.ant-upload-list-text .ant-upload-text-icon .anticon{position:static}.ant-upload-list .ant-upload-animate-inline-appear,.ant-upload-list .ant-upload-animate-inline-enter,.ant-upload-list .ant-upload-animate-inline-leave{animation-duration:.3s;animation-fill-mode:cubic-bezier(.78,.14,.15,.86)}.ant-upload-list .ant-upload-animate-inline-appear,.ant-upload-list .ant-upload-animate-inline-enter{animation-name:uploadAnimateInlineIn}.ant-upload-list .ant-upload-animate-inline-leave{animation-name:uploadAnimateInlineOut}@keyframes uploadAnimateInlineIn{from{width:0;height:0;margin:0;padding:0;opacity:0}}@keyframes uploadAnimateInlineOut{to{width:0;height:0;margin:0;padding:0;opacity:0}}.ant-upload-rtl.ant-upload.ant-upload-select-picture-card{margin-right:auto;margin-left:8px}.ant-upload-list-rtl .ant-upload-list-item-list-type-text:hover .ant-upload-list-item-name-icon-count-1{padding-right:22px;padding-left:14px}.ant-upload-list-rtl .ant-upload-list-item-list-type-text:hover .ant-upload-list-item-name-icon-count-2{padding-right:22px;padding-left:28px}.ant-upload-list-rtl .ant-upload-list-item-name{padding-right:20px;padding-left:0}.ant-upload-list-rtl .ant-upload-list-item-name-icon-count-1{padding-left:14px}.ant-upload-list-rtl .ant-upload-list-item-card-actions{right:auto;left:0}.ant-upload-list-rtl .ant-upload-list-item-card-actions .anticon{padding-right:0;padding-left:5px}.ant-upload-list-rtl .ant-upload-list-item-info{padding:0 4px 0 12px}.ant-upload-list-rtl .ant-upload-list-item-error .ant-upload-list-item-card-actions .anticon{padding-right:0;padding-left:5px}.ant-upload-list-rtl .ant-upload-list-item-progress{padding-right:24px;padding-left:0}.ant-upload-list-picture .ant-upload-list-item-info,.ant-upload-list-picture-card .ant-upload-list-item-info{padding:0}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-thumbnail,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-thumbnail{right:8px;left:auto}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-icon,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-actions,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-icon{right:50%;transform:translate(50%,-50%);left:auto}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-name,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-name{margin:0 8px 0 0;padding-right:48px;padding-left:8px}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-name-icon-count-1,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-name-icon-count-1{padding-right:48px;padding-left:18px}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-name-icon-count-2,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-name-icon-count-2{padding-right:48px;padding-left:36px}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-progress,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-progress{padding-right:0;padding-left:0}.ant-upload-list-rtl .ant-upload-list-picture-card-container{margin:0 0 4px 4px}.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-file+.ant-upload-list-item-name{margin:8px 0 0;padding:0}.ant-cascader-checkbox,.ant-cascader-checkbox-wrapper,.ant-select-auto-complete{margin:0;padding:0;box-sizing:border-box;color:rgba(0,0,0,.85);font-size:12px;font-variant:tabular-nums;font-feature-settings:tnum;list-style:none}.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item{float:unset}.ant-select-auto-complete{line-height:1.66667}.ant-cascader-checkbox{position:relative;line-height:1;white-space:nowrap;outline:0;cursor:pointer}.ant-cascader-checkbox-input:focus+.ant-cascader-checkbox-inner,.ant-cascader-checkbox-wrapper:hover .ant-cascader-checkbox-inner,.ant-cascader-checkbox:hover .ant-cascader-checkbox-inner{border-color:#1890ff}.ant-cascader-checkbox-checked::after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #1890ff;border-radius:2px;visibility:hidden;animation:antCheckboxEffect .36s ease-in-out;animation-fill-mode:backwards;content:''}.ant-cascader-checkbox-wrapper:hover .ant-cascader-checkbox::after,.ant-cascader-checkbox:hover::after{visibility:visible}.ant-cascader-checkbox-inner{position:relative;top:0;left:0;display:block;width:14px;height:14px;direction:ltr;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;border-collapse:separate;transition:all .3s}.ant-cascader-checkbox-rtl,.ant-picker-calendar-rtl,.ant-result-rtl,.ant-select-tree-checkbox-rtl,.ant-space-rtl,.ant-tree .ant-tree-treenode-rtl,.ant-tree-checkbox-rtl,.ant-tree-rtl,.ant-tree-select-dropdown-rtl,.avatar-list-rtl,.error-collect-rtl,.exception-rtl,.global-footer-rtl,.loading-default-rtl,.onboarding-rtl,.page-header-rtl,.result-rtl,.reuse-tab-rtl,.setting-drawer-rtl,.tag-select-rtl,html.rtl{direction:rtl}.ant-cascader-checkbox-inner::after{position:absolute;top:50%;left:21.5%;display:table;width:5px;height:8px;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(0) translate(-50%,-50%);opacity:0;transition:all .1s cubic-bezier(.71,-.46,.88,.6),opacity .1s;content:' '}.ant-cascader-checkbox-input{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;cursor:pointer;opacity:0}.ant-cascader-checkbox-checked .ant-cascader-checkbox-inner::after{position:absolute;display:table;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(1) translate(-50%,-50%);opacity:1;transition:all .2s cubic-bezier(.12,.4,.29,1.46) .1s;content:' '}.ant-cascader-checkbox-checked .ant-cascader-checkbox-inner{background-color:#1890ff;border-color:#1890ff}.ant-cascader-checkbox-disabled{cursor:not-allowed}.ant-cascader-checkbox-disabled.ant-cascader-checkbox-checked .ant-cascader-checkbox-inner::after{border-color:rgba(0,0,0,.25);animation-name:none}.ant-cascader-checkbox-disabled .ant-cascader-checkbox-input{cursor:not-allowed;pointer-events:none}.ant-cascader-checkbox-disabled .ant-cascader-checkbox-inner{background-color:#f5f5f5;border-color:#d9d9d9!important}.ant-cascader-checkbox-disabled .ant-cascader-checkbox-inner::after{border-color:#f5f5f5;border-collapse:separate;animation-name:none}.ant-cascader-checkbox-disabled+span{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-cascader-checkbox-disabled:hover::after,.ant-cascader-checkbox-wrapper:hover .ant-cascader-checkbox-disabled::after{visibility:hidden}.ant-cascader-checkbox-wrapper{display:inline-flex;align-items:baseline;line-height:unset;cursor:pointer}.ant-cascader-checkbox-wrapper::after{display:inline-block;width:0;overflow:hidden;content:'\a0'}.ant-cascader-checkbox-wrapper.ant-cascader-checkbox-wrapper-disabled{cursor:not-allowed}.ant-cascader-checkbox-wrapper+.ant-cascader-checkbox-wrapper{margin-left:8px}.ant-cascader-checkbox-wrapper.ant-cascader-checkbox-wrapper-in-form-item input[type=checkbox]{width:14px;height:14px}.ant-cascader-checkbox+span{padding-right:8px;padding-left:8px}.ant-cascader-checkbox-group{box-sizing:border-box;margin:0;padding:0;color:rgba(0,0,0,.85);font-size:12px;font-variant:tabular-nums;line-height:1.66667;list-style:none;font-feature-settings:tnum;display:inline-block}.ant-cascader-checkbox-group-item{margin-right:6px}.ant-cascader-checkbox-group-item:last-child{margin-right:0}.ant-cascader-checkbox-group-item+.ant-cascader-checkbox-group-item{margin-left:0}.ant-cascader-checkbox-indeterminate .ant-cascader-checkbox-inner{background-color:#fff;border-color:#d9d9d9}.ant-cascader-checkbox-indeterminate .ant-cascader-checkbox-inner::after{top:50%;left:50%;width:6px;height:6px;background-color:#1890ff;border:0;transform:translate(-50%,-50%) scale(1);opacity:1;content:' '}.ant-cascader-checkbox-indeterminate.ant-cascader-checkbox-disabled .ant-cascader-checkbox-inner::after{background-color:rgba(0,0,0,.25);border-color:rgba(0,0,0,.25)}.ant-cascader-checkbox-group-rtl .ant-cascader-checkbox-group-item{margin-right:0;margin-left:6px}.ant-cascader-checkbox-group-rtl .ant-cascader-checkbox-group-item:last-child{margin-left:0!important}.ant-cascader-checkbox-group-rtl .ant-cascader-checkbox-group-item+.ant-cascader-checkbox-group-item{margin-left:6px}.ant-cascader{width:184px}.ant-cascader-checkbox{top:0;margin-right:4px}.ant-cascader-menus{display:flex;flex-wrap:nowrap;align-items:flex-start}.ant-cascader-menus.ant-cascader-menu-empty .ant-cascader-menu{width:100%;height:auto}.ant-cascader-menu{flex-grow:1;min-width:111px;height:180px;margin:-4px 0;padding:4px 0;overflow:auto;vertical-align:top;list-style:none;border-right:1px solid #f0f0f0;-ms-overflow-style:-ms-autohiding-scrollbar}.ant-cascader-menu-item{display:flex;flex-wrap:nowrap;align-items:center;padding:5px 8px;overflow:hidden;line-height:18px;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:all .3s}.ant-cascader-menu-item:hover{background:#f5f5f5}.ant-cascader-menu-item-disabled{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-cascader-menu-item-disabled:hover{background:0 0}.ant-cascader-menu-empty .ant-cascader-menu-item{color:rgba(0,0,0,.25);cursor:default;pointer-events:none}.ant-cascader-menu-item-active:not(.ant-cascader-menu-item-disabled),.ant-cascader-menu-item-active:not(.ant-cascader-menu-item-disabled):hover{font-weight:600;background-color:#e6f7ff}.ant-cascader-menu-item-content{flex:auto}.ant-cascader-menu-item-expand .ant-cascader-menu-item-expand-icon,.ant-cascader-menu-item-loading-icon{margin-left:0;color:rgba(0,0,0,.45);font-size:10px}.ant-cascader-menu-item-disabled.ant-cascader-menu-item-expand .ant-cascader-menu-item-expand-icon,.ant-cascader-menu-item-disabled.ant-cascader-menu-item-loading-icon{color:rgba(0,0,0,.25)}.ant-cascader-menu-item-keyword{color:#ff4d4f}.ant-cascader-rtl .ant-cascader-menu-item-expand-icon,.ant-cascader-rtl .ant-cascader-menu-item-loading-icon{margin-right:0;margin-left:0}.ant-cascader-rtl .ant-cascader-checkbox{top:0;margin-right:0;margin-left:4px}.ant-cascader-menus{position:relative;margin-top:2px;margin-bottom:2px}nz-tree-virtual-scroll-view{display:block;position:relative;overflow:auto;contain:strict;transform:translateZ(0);will-change:scroll-position;-webkit-overflow-scrolling:touch}nz-tree-virtual-scroll-view .ant-tree-list,nz-tree-virtual-scroll-view .ant-tree-list-holder{height:100%}nz-tree-view .ant-tree-switcher+.ant-tree-switcher.nz-tree-leaf-line-icon,nz-tree-virtual-scroll-view .ant-tree-switcher+.ant-tree-switcher.nz-tree-leaf-line-icon{display:none}nz-tree-view .ant-tree-list-holder-inner{display:flex;flex-direction:column}@keyframes ant-tree-node-fx-do-not-use{0%{opacity:0}100%{opacity:1}}.ant-tree.ant-tree-directory .ant-tree-treenode{position:relative}.ant-tree.ant-tree-directory .ant-tree-treenode::before{position:absolute;top:0;right:0;bottom:4px;left:0;transition:background-color .3s;content:'';pointer-events:none}.ant-tree.ant-tree-directory .ant-tree-treenode:hover::before{background:#f5f5f5}.ant-tree.ant-tree-directory .ant-tree-treenode>*{z-index:1}.ant-tree.ant-tree-directory .ant-tree-treenode .ant-tree-switcher{transition:color .3s}.ant-tree.ant-tree-directory .ant-tree-treenode .ant-tree-node-content-wrapper{border-radius:0;user-select:none}.ant-tree.ant-tree-directory .ant-tree-treenode .ant-tree-node-content-wrapper:hover{background:0 0}.ant-tree.ant-tree-directory .ant-tree-treenode .ant-tree-node-content-wrapper.ant-tree-node-selected{color:#fff;background:0 0}.ant-tree.ant-tree-directory .ant-tree-treenode-selected::before,.ant-tree.ant-tree-directory .ant-tree-treenode-selected:hover::before{background:#1890ff}.ant-tree.ant-tree-directory .ant-tree-treenode-selected .ant-tree-switcher{color:#fff}.ant-tree.ant-tree-directory .ant-tree-treenode-selected .ant-tree-node-content-wrapper{color:#fff;background:0 0}.ant-tree-checkbox,.ant-tree-checkbox-wrapper{box-sizing:border-box;padding:0;color:rgba(0,0,0,.85);font-size:12px;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum}.ant-tree-checkbox{position:relative;line-height:1;white-space:nowrap;outline:0;cursor:pointer}.ant-tree-checkbox-input:focus+.ant-tree-checkbox-inner,.ant-tree-checkbox-wrapper:hover .ant-tree-checkbox-inner,.ant-tree-checkbox:hover .ant-tree-checkbox-inner{border-color:#1890ff}.ant-tree-checkbox-checked::after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #1890ff;border-radius:2px;visibility:hidden;animation:antCheckboxEffect .36s ease-in-out;animation-fill-mode:backwards;content:''}.ant-tree-checkbox-checked .ant-tree-checkbox-inner::after,.ant-tree-checkbox-inner::after{content:' ';position:absolute;display:table;border:2px solid #fff}.ant-tree-checkbox-wrapper:hover .ant-tree-checkbox::after,.ant-tree-checkbox:hover::after{visibility:visible}.ant-tree-checkbox-inner{position:relative;top:0;left:0;display:block;width:14px;height:14px;direction:ltr;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;border-collapse:separate;transition:all .3s}.ant-tree-checkbox-inner::after{top:50%;left:21.5%;width:5px;height:8px;border-top:0;border-left:0;transform:rotate(45deg) scale(0) translate(-50%,-50%);opacity:0;transition:all .1s cubic-bezier(.71,-.46,.88,.6),opacity .1s}.ant-tree-checkbox-input{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;cursor:pointer;opacity:0}.ant-tree-checkbox-checked .ant-tree-checkbox-inner::after{border-top:0;border-left:0;transform:rotate(45deg) scale(1) translate(-50%,-50%);opacity:1;transition:all .2s cubic-bezier(.12,.4,.29,1.46) .1s}.ant-select-tree,.ant-tree{transition:background-color .3s}.ant-tree-checkbox-checked .ant-tree-checkbox-inner{background-color:#1890ff;border-color:#1890ff}.ant-tree-checkbox-disabled{cursor:not-allowed}.ant-tree-checkbox-disabled.ant-tree-checkbox-checked .ant-tree-checkbox-inner::after{border-color:rgba(0,0,0,.25);animation-name:none}.ant-tree-checkbox-disabled .ant-tree-checkbox-input{cursor:not-allowed;pointer-events:none}.ant-tree-checkbox-disabled .ant-tree-checkbox-inner{background-color:#f5f5f5;border-color:#d9d9d9!important}.ant-tree-checkbox-disabled .ant-tree-checkbox-inner::after{border-color:#f5f5f5;border-collapse:separate;animation-name:none}.ant-tree-checkbox-disabled+span{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-tree-checkbox-disabled:hover::after,.ant-tree-checkbox-wrapper:hover .ant-tree-checkbox-disabled::after{visibility:hidden}.ant-tree-checkbox-wrapper{margin:0;display:inline-flex;align-items:baseline;line-height:unset;cursor:pointer}.ant-tree,.ant-tree-checkbox-group{color:rgba(0,0,0,.85);line-height:1.66667;font-size:12px;font-variant:tabular-nums;list-style:none}.ant-tree-checkbox-wrapper::after{display:inline-block;width:0;overflow:hidden;content:'\a0'}.ant-tree-checkbox-wrapper.ant-tree-checkbox-wrapper-disabled{cursor:not-allowed}.ant-tree-checkbox-wrapper+.ant-tree-checkbox-wrapper{margin-left:8px}.ant-tree-checkbox-wrapper.ant-tree-checkbox-wrapper-in-form-item input[type=checkbox]{width:14px;height:14px}.ant-tree-checkbox+span{padding-right:8px;padding-left:8px}.ant-select-tree-checkbox,.ant-select-tree-checkbox-wrapper,.ant-tree,.ant-tree-checkbox-group{padding:0;box-sizing:border-box;font-feature-settings:tnum}.ant-tree-checkbox-group{margin:0;display:inline-block}.ant-tree-checkbox-group-item{margin-right:6px}.ant-tree-checkbox-group-item:last-child{margin-right:0}.ant-tree-checkbox-group-item+.ant-tree-checkbox-group-item{margin-left:0}.ant-tree-checkbox-indeterminate .ant-tree-checkbox-inner{background-color:#fff;border-color:#d9d9d9}.ant-tree-checkbox-indeterminate .ant-tree-checkbox-inner::after{top:50%;left:50%;width:6px;height:6px;background-color:#1890ff;border:0;transform:translate(-50%,-50%) scale(1);opacity:1;content:' '}.ant-select-tree-switcher_close .ant-select-tree-switcher-icon svg,.ant-tree-switcher_close .ant-tree-switcher-icon svg{transform:rotate(-90deg)}.ant-tree-checkbox-indeterminate.ant-tree-checkbox-disabled .ant-tree-checkbox-inner::after{background-color:rgba(0,0,0,.25);border-color:rgba(0,0,0,.25)}.ant-tree-checkbox-group-rtl .ant-tree-checkbox-group-item{margin-right:0;margin-left:6px}.ant-tree-checkbox-group-rtl .ant-tree-checkbox-group-item:last-child{margin-left:0!important}.ant-tree-checkbox-group-rtl .ant-tree-checkbox-group-item+.ant-tree-checkbox-group-item{margin-left:6px}.ant-tree{margin:0;background:#fff;border-radius:2px}.ant-tree-focused:not(:hover):not(.ant-tree-active-focused){background:#e6f7ff}.ant-tree-list-holder-inner{align-items:flex-start}.ant-tree.ant-tree-block-node .ant-tree-list-holder-inner{align-items:stretch}.ant-tree.ant-tree-block-node .ant-tree-list-holder-inner .ant-tree-node-content-wrapper{flex:auto}.ant-tree.ant-tree-block-node .ant-tree-list-holder-inner .ant-tree-treenode.dragging{position:relative}.ant-tree.ant-tree-block-node .ant-tree-list-holder-inner .ant-tree-treenode.dragging::after{position:absolute;top:0;right:0;bottom:2px;left:0;border:1px solid #1890ff;opacity:0;animation:ant-tree-node-fx-do-not-use .3s;animation-play-state:running;animation-fill-mode:forwards;content:'';pointer-events:none}.ant-tree .ant-tree-treenode{display:flex;align-items:flex-start;padding:0 0 2px;outline:0}.ant-tree .ant-tree-treenode-disabled .ant-tree-node-content-wrapper{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-tree .ant-tree-treenode-disabled .ant-tree-node-content-wrapper:hover{background:0 0}.ant-tree .ant-tree-treenode-active .ant-tree-node-content-wrapper{background:#f5f5f5}.ant-tree .ant-tree-treenode:not(.ant-tree .ant-tree-treenode-disabled).filter-node .ant-tree-title{color:inherit;font-weight:500}.ant-tree-indent{align-self:stretch;white-space:nowrap;user-select:none}.ant-tree-indent-unit{display:inline-block;width:20px}.ant-tree-draggable-icon{width:20px;line-height:20px;text-align:center;opacity:.2;transition:opacity .3s}.ant-tree-treenode:hover .ant-tree-draggable-icon{opacity:.45}.ant-tree-switcher{position:relative;flex:none;align-self:stretch;width:20px;margin:0;line-height:20px;text-align:center;cursor:pointer;user-select:none}.ant-tree-switcher .ant-select-tree-switcher-icon,.ant-tree-switcher .ant-tree-switcher-icon{display:inline-block;font-size:10px;vertical-align:baseline}.ant-tree-switcher .ant-select-tree-switcher-icon svg,.ant-tree-switcher .ant-tree-switcher-icon svg{transition:transform .3s}.ant-tree-switcher-noop{cursor:default}.ant-tree-switcher-loading-icon{color:#1890ff}.ant-tree-switcher-leaf-line{position:relative;z-index:1;display:inline-block;width:100%;height:100%}.ant-tree-switcher-leaf-line::before{position:absolute;top:0;right:12px;bottom:-2px;margin-left:-1px;border-right:1px solid #d9d9d9;content:' '}.ant-tree-switcher-leaf-line::after{position:absolute;width:6px;height:10px;border-bottom:1px solid #d9d9d9;content:' '}.ant-tree-checkbox{top:initial;margin:3px 8px 0 0}.ant-tree .ant-tree-node-content-wrapper{position:relative;z-index:auto;min-height:20px;margin:0;padding:0 4px;color:inherit;line-height:20px;background:0 0;border-radius:2px;cursor:pointer;transition:all .3s,border 0s,line-height 0s,box-shadow 0s}.ant-tree .ant-tree-node-content-wrapper:hover{background-color:#f5f5f5}.ant-tree .ant-tree-node-content-wrapper.ant-tree-node-selected{background-color:#bae7ff}.ant-tree .ant-tree-node-content-wrapper .ant-tree-iconEle{display:inline-block;width:20px;height:20px;line-height:20px;text-align:center;vertical-align:top}.ant-tree .ant-tree-node-content-wrapper .ant-tree-iconEle:empty,.ant-tree-show-line .ant-tree-indent-unit-end::before{display:none}.ant-tree-unselectable .ant-tree-node-content-wrapper:hover{background-color:transparent}.ant-tree-node-content-wrapper{line-height:20px;user-select:none}.ant-tree-node-content-wrapper .ant-tree-drop-indicator{position:absolute;z-index:1;height:2px;background-color:#1890ff;border-radius:1px;pointer-events:none}.ant-tree-node-content-wrapper .ant-tree-drop-indicator::after{position:absolute;top:-3px;left:-6px;width:8px;height:8px;background-color:transparent;border:2px solid #1890ff;border-radius:50%;content:''}.ant-tree .ant-tree-treenode.drop-container>[draggable]{box-shadow:0 0 0 2px #1890ff}.ant-tree-show-line .ant-tree-indent-unit{position:relative;height:100%}.ant-tree-show-line .ant-tree-indent-unit::before{position:absolute;top:0;right:10px;bottom:-2px;border-right:1px solid #d9d9d9;content:''}.ant-tree-show-line .ant-tree-switcher{background:#fff}.ant-tree-show-line .ant-tree-switcher-line-icon{vertical-align:-.15em}.ant-tree .ant-tree-treenode-leaf-last .ant-tree-switcher-leaf-line::before{top:auto!important;bottom:auto!important;height:10px!important}.ant-tree-rtl .ant-tree-node-content-wrapper[draggable=true] .ant-tree-drop-indicator::after{right:-6px;left:unset}.ant-tree-rtl.ant-tree-show-line .ant-tree-indent-unit::before{right:auto;left:-11px;border-right:none;border-left:1px solid #d9d9d9}.ant-tree-rtl .ant-tree-checkbox,.ant-tree-select-dropdown-rtl .ant-select-tree-checkbox{margin:3px 0 0 8px}.font-highlight{color:#ff4d4f}.ant-tree-child-tree{overflow:hidden}nz-tree{display:block}.ant-select-tree-checkbox{color:rgba(0,0,0,.85);font-size:12px;font-variant:tabular-nums;list-style:none;position:relative;line-height:1;white-space:nowrap;outline:0;cursor:pointer}.ant-select-tree-checkbox-input:focus+.ant-select-tree-checkbox-inner,.ant-select-tree-checkbox-wrapper:hover .ant-select-tree-checkbox-inner,.ant-select-tree-checkbox:hover .ant-select-tree-checkbox-inner{border-color:#1890ff}.ant-select-tree-checkbox-checked::after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #1890ff;border-radius:2px;visibility:hidden;animation:antCheckboxEffect .36s ease-in-out;animation-fill-mode:backwards;content:''}.ant-color-picker,.ant-select-tree-checkbox-wrapper:hover .ant-select-tree-checkbox::after,.ant-select-tree-checkbox:hover::after{visibility:visible}.ant-input-number__hide-step .ant-input-number-handler-wrap,.ant-select-tree-checkbox-disabled:hover::after,.ant-select-tree-checkbox-wrapper:hover .ant-select-tree-checkbox-disabled::after,.exception__img-block::after{visibility:hidden}.ant-select-tree-checkbox-inner{position:relative;top:0;left:0;display:block;width:14px;height:14px;direction:ltr;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;border-collapse:separate;transition:all .3s}.ant-select-tree-checkbox-inner::after{position:absolute;top:50%;left:21.5%;display:table;width:5px;height:8px;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(0) translate(-50%,-50%);opacity:0;transition:all .1s cubic-bezier(.71,-.46,.88,.6),opacity .1s;content:' '}.ant-select-tree-checkbox-input{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;cursor:pointer;opacity:0}.ant-select-tree-checkbox-checked .ant-select-tree-checkbox-inner::after{position:absolute;display:table;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(1) translate(-50%,-50%);opacity:1;transition:all .2s cubic-bezier(.12,.4,.29,1.46) .1s;content:' '}.ant-select-tree-checkbox-checked .ant-select-tree-checkbox-inner{background-color:#1890ff;border-color:#1890ff}.ant-select-tree-checkbox-disabled{cursor:not-allowed}.ant-select-tree-checkbox-disabled.ant-select-tree-checkbox-checked .ant-select-tree-checkbox-inner::after{border-color:rgba(0,0,0,.25);animation-name:none}.ant-select-tree-checkbox-disabled .ant-select-tree-checkbox-input{cursor:not-allowed;pointer-events:none}.ant-select-tree-checkbox-disabled .ant-select-tree-checkbox-inner{background-color:#f5f5f5;border-color:#d9d9d9!important}.ant-select-tree-checkbox-disabled .ant-select-tree-checkbox-inner::after{border-color:#f5f5f5;border-collapse:separate;animation-name:none}.ant-select-tree-checkbox-disabled+span{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-select-tree-checkbox-group,.ant-select-tree-checkbox-wrapper{color:rgba(0,0,0,.85);font-size:12px;font-variant:tabular-nums;list-style:none}.ant-select-tree-checkbox-wrapper{margin:0;display:inline-flex;align-items:baseline;line-height:unset;cursor:pointer}.ant-select-tree-checkbox-wrapper::after{display:inline-block;width:0;overflow:hidden;content:'\a0'}.ant-select-tree-checkbox-wrapper.ant-select-tree-checkbox-wrapper-disabled{cursor:not-allowed}.ant-select-tree-checkbox-wrapper+.ant-select-tree-checkbox-wrapper{margin-left:8px}.ant-select-tree-checkbox-wrapper.ant-select-tree-checkbox-wrapper-in-form-item input[type=checkbox]{width:14px;height:14px}.ant-select-tree-checkbox+span{padding-right:8px;padding-left:8px}.ant-select-tree-checkbox-group{box-sizing:border-box;margin:0;padding:0;line-height:1.66667;font-feature-settings:tnum;display:inline-block}.ant-select-tree-checkbox-group-item{margin-right:6px}.ant-select-tree-checkbox-group-item:last-child{margin-right:0}.ant-select-tree-checkbox-group-item+.ant-select-tree-checkbox-group-item{margin-left:0}.ant-select-tree-checkbox-indeterminate .ant-select-tree-checkbox-inner{background-color:#fff;border-color:#d9d9d9}.ant-select-tree-checkbox-indeterminate .ant-select-tree-checkbox-inner::after{top:50%;left:50%;width:6px;height:6px;background-color:#1890ff;border:0;transform:translate(-50%,-50%) scale(1);opacity:1;content:' '}.ant-select-tree-checkbox-indeterminate.ant-select-tree-checkbox-disabled .ant-select-tree-checkbox-inner::after{background-color:rgba(0,0,0,.25);border-color:rgba(0,0,0,.25)}.ant-select-tree-checkbox-group-rtl .ant-select-tree-checkbox-group-item{margin-right:0;margin-left:6px}.ant-select-tree-checkbox-group-rtl .ant-select-tree-checkbox-group-item:last-child{margin-left:0!important}.ant-select-tree-checkbox-group-rtl .ant-select-tree-checkbox-group-item+.ant-select-tree-checkbox-group-item{margin-left:6px}.ant-tree-select-dropdown{padding:4px 2px}.ant-picker-calendar,.ant-select-tree{padding:0;font-size:12px;line-height:1.66667;color:rgba(0,0,0,.85);font-feature-settings:tnum;list-style:none;box-sizing:border-box;font-variant:tabular-nums}.ant-tree-select-dropdown .ant-select-tree{border-radius:0}.ant-tree-select-dropdown .ant-select-tree-list-holder-inner{align-items:stretch}.ant-tree-select-dropdown .ant-select-tree-list-holder-inner .ant-select-tree-treenode .ant-select-tree-node-content-wrapper{flex:auto}.ant-select-tree{margin:0;background:#fff;border-radius:2px}.ant-select-tree-focused:not(:hover):not(.ant-select-tree-active-focused){background:#e6f7ff}.ant-select-tree-list-holder-inner{align-items:flex-start}.ant-select-tree.ant-select-tree-block-node .ant-select-tree-list-holder-inner{align-items:stretch}.ant-select-tree.ant-select-tree-block-node .ant-select-tree-list-holder-inner .ant-select-tree-node-content-wrapper{flex:auto}.ant-select-tree.ant-select-tree-block-node .ant-select-tree-list-holder-inner .ant-select-tree-treenode.dragging{position:relative}.ant-select-tree.ant-select-tree-block-node .ant-select-tree-list-holder-inner .ant-select-tree-treenode.dragging::after{position:absolute;top:0;right:0;bottom:2px;left:0;border:1px solid #1890ff;opacity:0;animation:ant-tree-node-fx-do-not-use .3s;animation-play-state:running;animation-fill-mode:forwards;content:'';pointer-events:none}.ant-select-tree .ant-select-tree-treenode{display:flex;align-items:flex-start;padding:0 0 2px;outline:0}.ant-select-tree .ant-select-tree-treenode-disabled .ant-select-tree-node-content-wrapper{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-select-tree .ant-select-tree-treenode-disabled .ant-select-tree-node-content-wrapper:hover{background:0 0}.ant-select-tree .ant-select-tree-treenode-active .ant-select-tree-node-content-wrapper{background:#f5f5f5}.ant-select-tree .ant-select-tree-treenode:not(.ant-select-tree .ant-select-tree-treenode-disabled).filter-node .ant-select-tree-title{color:inherit;font-weight:500}.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected .ant-picker-calendar-date .ant-picker-calendar-date-value,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected .ant-picker-calendar-date-today .ant-picker-calendar-date-value,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected:hover .ant-picker-calendar-date .ant-picker-calendar-date-value,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected:hover .ant-picker-calendar-date-today .ant-picker-calendar-date-value,.ant-select-tree-switcher-loading-icon{color:#1890ff}.ant-select-tree-indent{align-self:stretch;white-space:nowrap;user-select:none}.ant-select-tree-indent-unit{display:inline-block;width:20px}.ant-select-tree-draggable-icon{width:20px;line-height:20px;text-align:center;opacity:.2;transition:opacity .3s}.ant-select-tree-treenode:hover .ant-select-tree-draggable-icon{opacity:.45}.ant-select-tree-switcher{position:relative;flex:none;align-self:stretch;width:20px;margin:0;line-height:20px;text-align:center;cursor:pointer;user-select:none}.ant-select-tree-switcher .ant-select-tree-switcher-icon,.ant-select-tree-switcher .ant-tree-switcher-icon{display:inline-block;font-size:10px;vertical-align:baseline}.ant-select-tree-switcher .ant-select-tree-switcher-icon svg,.ant-select-tree-switcher .ant-tree-switcher-icon svg{transition:transform .3s}.ant-select-tree-switcher-noop{cursor:default}.ant-select-tree-switcher-leaf-line{position:relative;z-index:1;display:inline-block;width:100%;height:100%}.ant-select-tree-switcher-leaf-line::before{position:absolute;top:0;right:12px;bottom:-2px;margin-left:-1px;border-right:1px solid #d9d9d9;content:' '}.ant-select-tree-switcher-leaf-line::after{position:absolute;width:6px;height:10px;border-bottom:1px solid #d9d9d9;content:' '}.ant-select-tree-checkbox{top:initial;margin:3px 8px 0 0}.ant-select-tree .ant-select-tree-node-content-wrapper{position:relative;z-index:auto;min-height:20px;margin:0;padding:0 4px;color:inherit;line-height:20px;background:0 0;border-radius:2px;cursor:pointer;transition:all .3s,border 0s,line-height 0s,box-shadow 0s}.ant-select-tree .ant-select-tree-node-content-wrapper:hover{background-color:#f5f5f5}.ant-select-tree .ant-select-tree-node-content-wrapper.ant-select-tree-node-selected{background-color:#bae7ff}.ant-select-tree .ant-select-tree-node-content-wrapper .ant-select-tree-iconEle{display:inline-block;width:20px;height:20px;line-height:20px;text-align:center;vertical-align:top}.ant-select-tree .ant-select-tree-node-content-wrapper .ant-select-tree-iconEle:empty,.ant-select-tree-show-line .ant-select-tree-indent-unit-end::before{display:none}.ant-select-tree-unselectable .ant-select-tree-node-content-wrapper:hover{background-color:transparent}.ant-select-tree-node-content-wrapper{line-height:20px;user-select:none}.ant-select-tree-node-content-wrapper .ant-tree-drop-indicator{position:absolute;z-index:1;height:2px;background-color:#1890ff;border-radius:1px;pointer-events:none}.ant-select-tree-node-content-wrapper .ant-tree-drop-indicator::after{position:absolute;top:-3px;left:-6px;width:8px;height:8px;background-color:transparent;border:2px solid #1890ff;border-radius:50%;content:''}.ant-select-tree .ant-select-tree-treenode.drop-container>[draggable]{box-shadow:0 0 0 2px #1890ff}.ant-select-tree-show-line .ant-select-tree-indent-unit{position:relative;height:100%}.ant-select-tree-show-line .ant-select-tree-indent-unit::before{position:absolute;top:0;right:10px;bottom:-2px;border-right:1px solid #d9d9d9;content:''}.ant-select-tree-show-line .ant-select-tree-switcher{background:#fff}.ant-select-tree-show-line .ant-select-tree-switcher-line-icon{vertical-align:-.15em}.ant-select-tree .ant-select-tree-treenode-leaf-last .ant-select-tree-switcher-leaf-line::before{top:auto!important;bottom:auto!important;height:10px!important}.ant-tree-select-dropdown-rtl .ant-select-tree .ant-select-tree-switcher-loading-icon{transform:scaleY(-1)}.ant-tree.ant-select-tree.ant-tree-show-line nz-tree-node[builtin]:not(:last-child)>li::before{content:' ';width:1px;border-left:1px solid #d9d9d9;height:calc(100% - 16px);position:absolute;left:12px;margin:26px 0}.ant-select-dropdown.ant-select-tree-dropdown{top:100%;left:0;position:relative;width:100%;margin-top:4px;margin-bottom:4px;overflow:auto}.ant-picker-calendar{margin:0;background:#fff}.ant-picker-calendar-header{display:flex;justify-content:flex-end;padding:8px 0}.ant-picker-calendar-header .ant-picker-calendar-year-select{min-width:80px}.ant-picker-calendar-header .ant-picker-calendar-month-select{min-width:70px;margin-left:4px}.ant-picker-calendar-header .ant-picker-calendar-mode-switch{margin-left:4px}.ant-picker-calendar .ant-picker-panel{background:#fff;border:0;border-top:1px solid #f0f0f0;border-radius:0}.ant-picker-calendar .ant-picker-panel .ant-picker-date-panel,.ant-picker-calendar .ant-picker-panel .ant-picker-month-panel{width:auto}.ant-picker-calendar .ant-picker-panel .ant-picker-body{padding:4px 0}.ant-picker-calendar .ant-picker-panel .ant-picker-content{width:100%}.ant-picker-calendar-mini{border-radius:2px}.ant-picker-calendar-mini .ant-picker-calendar-header{padding-right:4px;padding-left:4px}.ant-picker-calendar-mini .ant-picker-panel{border-radius:0 0 2px 2px}.ant-picker-calendar-mini .ant-picker-content{height:256px}.ant-picker-calendar-mini .ant-picker-content th{height:auto;padding:0;line-height:18px}.ant-picker-calendar-mini .ant-picker-cell::before{pointer-events:none}.ant-picker-calendar-full .ant-picker-panel{display:block;width:100%;text-align:right;background:#fff;border:0}.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell .ant-picker-calendar-date-today::before,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell::before{display:none}.ant-picker-calendar-full .ant-picker-panel .ant-picker-body td,.ant-picker-calendar-full .ant-picker-panel .ant-picker-body th{padding:0}.ant-picker-calendar-full .ant-picker-panel .ant-picker-body th{height:auto;padding:0 12px 5px 0;line-height:18px}.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell:hover .ant-picker-calendar-date{background:#f5f5f5}.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected .ant-picker-calendar-date,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected .ant-picker-calendar-date-today,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected:hover .ant-picker-calendar-date,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected:hover .ant-picker-calendar-date-today{background:#e6f7ff}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date{display:block;width:auto;height:auto;margin:0 2px;padding:2px 4px 0;border:0;border-top:2px solid #f0f0f0;border-radius:0;transition:background .3s}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-value{line-height:24px;transition:color .3s}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-content{position:static;width:auto;height:86px;overflow-y:auto;color:rgba(0,0,0,.85);line-height:1.66667;text-align:left}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-today{border-color:#1890ff}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-today .ant-picker-calendar-date-value{color:rgba(0,0,0,.85)}@media only screen and (max-width:480px){.ant-picker-calendar-header{display:block}.ant-picker-calendar-header .ant-picker-calendar-year-select{width:50%}.ant-picker-calendar-header .ant-picker-calendar-month-select{width:calc(50% - 4px)}.ant-picker-calendar-header .ant-picker-calendar-mode-switch{width:100%;margin-top:4px;margin-left:0}.ant-picker-calendar-header .ant-picker-calendar-mode-switch>label{width:50%;text-align:center}}.ant-picker-calendar-rtl .ant-picker-calendar-header .ant-picker-calendar-mode-switch,.ant-picker-calendar-rtl .ant-picker-calendar-header .ant-picker-calendar-month-select{margin-right:4px;margin-left:0}.ant-picker-calendar-rtl.ant-picker-calendar-full .ant-picker-panel{text-align:left}.ant-picker-calendar-rtl.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-content,.drawer-footer{text-align:right}.ant-picker-calendar-rtl.ant-picker-calendar-full .ant-picker-panel .ant-picker-body th{padding:0 0 5px 12px}.ant-result{padding:48px 32px}.ant-result-success .ant-result-icon>.anticon{color:#52c41a}.ant-result-error .ant-result-icon>.anticon{color:#ff4d4f}.ant-result-info .ant-result-icon>.anticon{color:#1890ff}.ant-result-warning .ant-result-icon>.anticon{color:#faad14}.ant-result-image{width:250px;height:295px;margin:auto}.ant-result-icon{margin-bottom:24px;text-align:center}.ant-result-icon>.anticon{font-size:64px}.ant-result-title{color:rgba(0,0,0,.85);font-size:20px;line-height:1.8;text-align:center}.ant-result-subtitle{color:rgba(0,0,0,.45);font-size:12px;line-height:1.6;text-align:center}.ant-result-extra{margin:24px 0 0;text-align:center}.ant-result-extra>*{margin-right:8px}.ant-result-extra>:last-child{margin-right:0}.ant-result-content{margin-top:24px;padding:24px 40px}.ant-result-rtl .ant-result-extra>*{margin-right:0;margin-left:8px}.ant-result-rtl .ant-result-extra>:last-child{margin-left:0}nz-result{display:block}.ant-space{display:inline-flex}.ant-space-vertical{flex-direction:column}.ant-image-mask,.ant-space-align-center{align-items:center}.ant-space-align-start{align-items:flex-start}.ant-space-align-end{align-items:flex-end}.ant-space-align-baseline{align-items:baseline}.ant-space-item:empty{display:none}nz-space-item{display:block}.ant-image{position:relative;display:inline-block}.ant-image-mask,.ant-image-placeholder{position:absolute;top:0;right:0;bottom:0}.ant-image-img{width:100%;height:auto;vertical-align:middle}.ant-image-img-placeholder{background-color:#f5f5f5;background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTQuNSAyLjVoLTEzQS41LjUgMCAwIDAgMSAzdjEwYS41LjUgMCAwIDAgLjUuNWgxM2EuNS41IDAgMCAwIC41LS41VjNhLjUuNSAwIDAgMC0uNS0uNXpNNS4yODEgNC43NWExIDEgMCAwIDEgMCAyIDEgMSAwIDAgMSAwLTJ6bTguMDMgNi44M2EuMTI3LjEyNyAwIDAgMS0uMDgxLjAzSDIuNzY5YS4xMjUuMTI1IDAgMCAxLS4wOTYtLjIwN2wyLjY2MS0zLjE1NmEuMTI2LjEyNiAwIDAgMSAuMTc3LS4wMTZsLjAxNi4wMTZMNy4wOCAxMC4wOWwyLjQ3LTIuOTNhLjEyNi4xMjYgMCAwIDEgLjE3Ny0uMDE2bC4wMTUuMDE2IDMuNTg4IDQuMjQ0YS4xMjcuMTI3IDAgMCAxLS4wMi4xNzV6IiBmaWxsPSIjOEM4QzhDIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz48L3N2Zz4=);background-repeat:no-repeat;background-position:center center;background-size:30%}.ant-image-mask{left:0;display:flex;justify-content:center;color:#fff;background:rgba(0,0,0,.5);cursor:pointer;opacity:0;transition:opacity .3s}.ant-image-mask:hover,.cdk-overlay-backdrop.ant-image-preview-mask{opacity:1}.ant-image-preview-img,.ant-image-preview-img-wrapper{transition:transform .3s cubic-bezier(.215,.61,.355,1) 0s}.ant-image-mask-info{padding:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-image-mask-info .anticon{margin-inline-end:0}.ant-image-placeholder{left:0}.ant-image-preview{pointer-events:none;height:100%;text-align:center}.ant-image-preview.ant-zoom-appear,.ant-image-preview.ant-zoom-enter{transform:none;opacity:0;animation-duration:.3s;user-select:none}.ant-image-preview-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;height:100%;background-color:rgba(0,0,0,.45)}.ant-image-preview-mask-hidden{display:none}.ant-image-preview-wrap{position:fixed;top:0;right:0;bottom:0;left:0;overflow:auto;outline:0;-webkit-overflow-scrolling:touch;z-index:1080}.ant-image-preview-body{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.ant-image-preview-img{max-width:100%;max-height:100%;vertical-align:middle;transform:scale3d(1,1,1);cursor:grab;user-select:none;pointer-events:auto}.ant-image-preview-img-wrapper{position:absolute;top:0;right:0;bottom:0;left:0}.ant-image-preview-img-wrapper::before{display:inline-block;width:1px;height:50%;margin-right:-1px;content:''}.ant-image-preview-moving .ant-image-preview-img{cursor:grabbing}.ant-image-preview-moving .ant-image-preview-img-wrapper{transition-duration:0s}.ant-image-preview-operations{box-sizing:border-box;margin:0;padding:0;font-size:12px;font-variant:tabular-nums;line-height:1.66667;font-feature-settings:tnum;position:absolute;top:0;right:0;z-index:1;display:flex;flex-direction:row-reverse;align-items:center;width:100%;color:rgba(255,255,255,.85);list-style:none;background:rgba(0,0,0,.1);pointer-events:auto}.ant-image-preview-operations-icon,.ant-image-preview-switch-left>.anticon,.ant-image-preview-switch-right>.anticon{font-size:18px}.ant-image-preview-operations-operation{margin-left:8px;padding:8px;cursor:pointer}.ant-image-preview-operations-operation-disabled{color:rgba(255,255,255,.25);pointer-events:none}.ant-image-preview-operations-operation:last-of-type{margin-left:0}.ant-image-preview-operations-progress{position:absolute;left:50%;transform:translateX(-50%)}.ant-image-preview-switch-left,.ant-image-preview-switch-right{position:absolute;top:50%;right:10px;z-index:1;display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin-top:-22px;color:rgba(255,255,255,.85);background:rgba(0,0,0,.1);cursor:pointer;pointer-events:auto}.ant-color-picker-color-block,.ant-color-picker-slider-alpha{background-image:conic-gradient(rgba(0,0,0,.06) 0 25%,transparent 0 50%,rgba(0,0,0,.06) 0 75%,transparent 0)}.ant-image-preview-switch-left-disabled,.ant-image-preview-switch-right-disabled{color:rgba(255,255,255,.25);cursor:not-allowed}.ant-image-preview-switch-left-disabled>.anticon,.ant-image-preview-switch-right-disabled>.anticon{cursor:not-allowed}.ant-image-preview-switch-left{left:10px}.ant-image-preview-switch-right{right:10px}.ant-cron-expression{display:flex;flex-wrap:nowrap}.ant-cron-expression-content{width:100%}.ant-cron-expression-content .ant-cron-expression-input-group-error-focus{box-shadow:0 0 0 2px rgba(255,77,79,.2)}.ant-cron-expression nz-cron-expression-input{width:20%}.ant-cron-expression-input-group{display:flex;flex-wrap:nowrap;align-items:center}.ant-cron-expression-input-group input{border:none!important;box-shadow:none!important;width:100%;outline:0;padding:0;border-radius:0}.ant-cron-expression-label-group,.pb0,.py0{padding-bottom:0!important}.ant-cron-expression-input-group-focus{border-color:#1890ff;box-shadow:0 0 0 2px rgba(24,144,255,.2);outline:0}.ant-cron-expression nz-cron-expression-label{width:20%}.ant-cron-expression-label-group{display:flex;width:100%;flex-wrap:nowrap;justify-content:space-around;padding-top:0!important}.ant-cron-expression-label-group-default{padding:0 8px}.ant-cron-expression-label-foucs{color:#1890ff}.ant-cron-expression-map{margin-left:8px}.ant-cron-expression-preview{display:flex;padding:8px}.ant-cron-expression-preview-dateTime{flex:1 1 auto;display:flex;align-items:center}.ant-cron-expression-preview-dateTime-center{justify-content:center}.ant-cron-expression-preview-content{flex:0 0 220px;display:flex;align-items:center;padding-left:8px}.ant-cron-expression-preview-content-date{flex:1 1 auto}.ant-cron-expression-preview-icon,.ant-cron-expression-preview-icon li,.ant-cron-expression-preview-list,.ant-cron-expression-preview-list li{list-style:none;margin:0;padding:0}.ant-cron-expression-preview-list{overflow-y:scroll;height:132px}.ant-cron-expression-preview-icon{height:100%}.ant-cron-expression-error{color:#ff4d4f}.ant-cron-expression-hint p{display:flex}.ant-cron-expression-hint span{display:inline-block;min-width:40px}.ant-qrcode{display:inline-block;position:relative;padding:8px}.ant-qrcode>canvas{display:block}.ant-qrcode-border{border-radius:2px;border:1px solid #f0f0f0}.ant-qrcode-mask{position:absolute;top:0;right:0;z-index:10;display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;text-align:center;background-color:rgba(255,255,255,.96)}.ant-color-picker-clear,.ant-color-picker-color-block,.ant-water-mark,.half-float,.row-masonry{position:relative}.ant-qrcode-expired{color:rgba(0,0,0,.85)}.ant-color-picker{position:absolute;z-index:1;display:block;width:max-content;min-width:250px}.ant-color-picker-hidden{display:none}.ant-color-picker-panel{display:flex;flex-direction:column;width:250px;border-radius:2px}.ant-color-picker-panel-disabled{cursor:not-allowed}.ant-color-picker-select{margin-bottom:8px}.ant-color-picker-select .ant-color-picker-palette{min-height:160px;overflow:hidden;border-radius:2px}.ant-color-picker-select .ant-color-picker-palette>.ant-color-picker-gradient{border-top-left-radius:5px}.ant-color-picker-saturation{position:absolute;border-radius:inherit;top:0;left:0;right:0;bottom:0}.ant-color-picker-handler{box-sizing:border-box;width:16px;height:16px;border:1px solid #fff;border-radius:50%}.ant-color-picker-handler-sm{width:12px;height:12px}.ant-color-picker-slider{width:100%;margin-bottom:8px}.ant-color-picker-slider .ant-color-picker-palette{height:8px}.ant-color-picker-slider .ant-color-picker-gradient{border-radius:2px}.ant-color-picker-slider-alpha{background-size:8px 8px}.ant-color-picker-trigger{min-width:32px;height:32px;border-radius:2px;border:1px solid #f0f0f0;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;padding:3px}.ant-color-picker-trigger:hover{border-color:#1890ff}.ant-color-picker-trigger-text{margin:0 0 0 4px;font-size:12px}.ant-color-picker-sm{min-width:24px;height:24px}.ant-color-picker-lg{min-width:40px;height:40px}.ant-color-picker-lg .ant-color-picker-trigger-text{font-size:14px}.ant-color-picker-color-block{width:28px;height:28px;margin-left:4px;background-size:50% 50%;overflow:hidden;border-radius:2px}.ant-color-picker-color-block-inner{box-sizing:border-box;width:100%;height:100%;border:1px solid #f0f0f0}.ant-color-picker-slider-container{display:flex}.ant-color-picker-slider-container .ant-color-picker-slider-group{flex:1}.ant-color-picker-slider-container .ant-color-picker-slider-group-disabled-alpha{display:flex;align-items:center}.ant-color-picker-slider-container .ant-color-picker-slider-group-disabled-alpha .ant-color-picker-slider{margin-bottom:0}.ant-color-picker-title{display:flex}.ant-color-picker-title-content{flex:1;margin-bottom:4px}.ant-color-picker-title .ant-color-picker-clear{flex:0 0 18px;margin-left:4px}.ant-color-picker-input-container .ant-color-picker-input,.search__form .ant-form-item-control{flex:1}.ant-color-picker-clear{width:18px;height:18px;border-radius:2px;border:1px solid #f0f0f0;cursor:pointer;overflow:hidden;margin-bottom:4px}.ant-color-picker-clear::after{content:"";position:absolute;inset-inline-end:1px;top:0;display:block;width:40px;height:2px;transform-origin:right;transform:rotate(-45deg);background-color:#f5222d}.ant-color-picker-input-container{display:flex}.ant-color-picker-input-container .ant-input,.ant-color-picker-input-container .ant-select{font-size:12px}.ant-color-picker-input-container .ant-input-number{font-size:12px;width:auto}.ant-color-picker-input-container .ant-input-number-sm input{padding:0 0 0 4px}.ant-color-picker-input-container .ant-select-selector{padding:0}.ant-color-picker-input-container .ant-color-picker-format-select{width:auto}.ant-color-picker-input-container .ant-color-picker-input .ant-color-picker-hex-input{padding:0;margin-right:0}.ant-color-picker-input-container .ant-color-picker-input .ant-color-picker-hsb-input,.ant-color-picker-input-container .ant-color-picker-input .ant-color-picker-rgb-input{display:flex;gap:4px;align-items:center}.ant-color-picker-input-container .ant-color-picker-alpha-input,.ant-color-picker-input-container .ant-color-picker-steppers{flex:0 0 44px}.ant-color-picker-disabled{color:rgba(0,0,0,.25);background:#f5f5f5;cursor:not-allowed}.ant-color-picker-disabled .ant-color-picker-trigger{cursor:not-allowed}.ant-color-picker-disabled .ant-color-picker-trigger:hover{border-color:#f0f0f0}.modal-header,.st .ant-table-tbody>tr .ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td,.sv__bordered,.sv__bordered .sv__item{border-bottom:1px solid #f0f0f0}.ant-color-picker-inline{display:inline-block}.ant-color-picker-inline .ant-color-picker-color-block{margin:0;width:24px;height:24px}.ant-color-picker-inline-lg .ant-color-picker-color-block{width:32px;height:32px}.ant-color-picker-inline-sm .ant-color-picker-color-block{width:16px;height:16px}sf+st{margin-top:16px}.ant-btn:not(.ant-btn-link)+.ant-btn,.ant-btn:not(.ant-btn-link)+nz-button-group,.ant-btn:not(.ant-btn-link)+nz-dropdown,.ant-btn:not(.ant-btn-link)+nz-popconfirm,nz-button-group+.ant-btn,nz-button-group+nz-popconfirm,nz-dropdown+.ant-btn,nz-popconfirm+.ant-btn,nz-popconfirm+nz-button-group,nz-popconfirm+nz-popconfirm{margin-left:8px}.ant-btn-group .ant-btn+.ant-btn{margin-left:-1px}.ant-transfer-operation .ant-btn+.ant-btn{margin-left:initial}[dir=rtl] .ant-btn+.ant-btn,[dir=rtl] .ant-btn+nz-button-group,[dir=rtl] .ant-btn+nz-dropdown,[dir=rtl] .ant-btn+nz-popconfirm,[dir=rtl] nz-button-group+.ant-btn,[dir=rtl] nz-button-group+nz-popconfirm,[dir=rtl] nz-dropdown+.ant-btn,[dir=rtl] nz-popconfirm+.ant-btn,[dir=rtl] nz-popconfirm+nz-button-group,[dir=rtl] nz-popconfirm+nz-popconfirm{margin-right:8px;margin-left:inherit}a:focus{text-decoration:none}.ant-card{margin-bottom:16px}.ant-card__body-nopadding .ant-card-body{padding:0!important}@media (min-width:300px){.ant-drawer-left .drawer-sm,.ant-drawer-right .drawer-sm{width:auto!important;max-width:300px}}@media (max-width:299px){.ant-drawer-left .drawer-sm,.ant-drawer-right .drawer-sm{width:100%!important}}@media (min-width:600px){.ant-drawer-left .drawer-md,.ant-drawer-right .drawer-md{width:auto!important;max-width:600px}}@media (max-width:599px){.ant-drawer-left .drawer-md,.ant-drawer-right .drawer-md{width:100%!important}}@media (min-width:900px){.ant-drawer-left .drawer-lg,.ant-drawer-right .drawer-lg{width:auto!important;max-width:900px}}@media (max-width:899px){.ant-drawer-left .drawer-lg,.ant-drawer-right .drawer-lg{width:100%!important}}@media (min-width:1200px){.ant-drawer-left .drawer-xl,.ant-drawer-right .drawer-xl{width:auto!important;max-width:1200px}}@media (max-width:1199px){.ant-drawer-left .drawer-xl,.ant-drawer-right .drawer-xl{width:100%!important}}@media (min-height:200px){.ant-drawer-bottom .drawer-sm,.ant-drawer-top .drawer-sm{height:auto!important;max-height:200px}}@media (max-height:199px){.ant-drawer-bottom .drawer-sm,.ant-drawer-top .drawer-sm{height:100%!important}}@media (min-height:400px){.ant-drawer-bottom .drawer-md,.ant-drawer-top .drawer-md{height:auto!important;max-height:400px}}@media (max-height:399px){.ant-drawer-bottom .drawer-md,.ant-drawer-top .drawer-md{height:100%!important}}@media (min-height:600px){.ant-drawer-bottom .drawer-lg,.ant-drawer-top .drawer-lg{height:auto!important;max-height:600px}}@media (max-height:599px){.ant-drawer-bottom .drawer-lg,.ant-drawer-top .drawer-lg{height:100%!important}}@media (min-height:800px){.ant-drawer-bottom .drawer-xl,.ant-drawer-top .drawer-xl{height:auto!important;max-height:800px}}@media (max-height:799px){.ant-drawer-bottom .drawer-xl,.ant-drawer-top .drawer-xl{height:100%!important}}.drawer-footer{position:absolute;bottom:0;left:0;width:100%;padding:8px 16px;background:#fff;border-radius:0 0 2px 2px}.ant-form-item-label em{color:#bfbfbf}.ant-form-item-control em{margin-left:8px}[dir=rtl] .ant-form-item-control em{margin-right:8px;margin-left:inherit}@media (min-width:576px){.modal-sm .ant-modal{width:auto!important;max-width:300px}}@media (min-width:768px){.modal-md .ant-modal{width:auto!important;max-width:600px}}@media (min-width:992px){.modal-lg .ant-modal{width:auto!important;max-width:900px}}@media (min-width:1600px){.modal-xl .ant-modal{width:auto!important;max-width:1200px}}.modal-header{display:flex;justify-content:space-between;margin:-16px -16px 16px;padding:11px 16px;background:#fff;border-radius:2px 2px 0 0}.modal-title{margin:0;color:rgba(0,0,0,.85);font-weight:500;font-size:14px;line-height:22px;word-wrap:break-word}.modal-title small{margin-left:8px;color:#8c8c8c;font-size:12px}.modal-spin{display:block;min-height:150px;line-height:150px;text-align:center}.modal-footer{margin:16px -16px -16px;padding:8px 16px;text-align:right;border-radius:0 0 2px 2px}.modal-include-tabs nz-tabset,.tag-select{margin-top:-16px}.modal-body-nopadding .ant-modal-body{padding:0!important}.MODAL-DRAG-HANDLE{cursor:move}.ant-table td .img,.ant-table td>img{max-width:32px;max-height:32px;vertical-align:middle;border-radius:4px}.ant-table td .img:not(:last-child),.ant-table td>img:not(:last-child){margin-right:4px}.ant-table-rep__hide-header-footer .ant-table-footer,.ant-table-rep__hide-header-footer .ant-table-title,.ant-table-rep__title{display:none}[dir=rtl] .ant-table td .img,[dir=rtl] .ant-table td>img{margin-right:inherit;margin-left:4px}@media screen and (max-width:767px){.ant-table-rep__title{display:inline-block;width:100px;padding-right:8px;color:rgba(0,0,0,.5);text-align:right}.ant-table-rep__hide-header-footer .ant-table-footer,.ant-table-rep__hide-header-footer .ant-table-title{display:block}.ant-table-rep .ant-table table{table-layout:auto!important}.ant-table-rep .ant-table col,.ant-table-rep .ant-table table{width:100%!important;min-width:auto!important}.ant-table-rep .ant-table-thead{display:none}.ant-table-rep .ant-table-title{text-align:center;background:#f0f0f0}.ant-table-rep .ant-table-tbody>tr:nth-child(4n+3){background:#f9f9f9}.ant-table-rep .ant-table-tbody>tr>td{display:flex;align-items:center;width:100%;padding:6px 4px;white-space:inherit;text-align:left!important;border-bottom:none}.ant-table-rep .ant-table-tbody>tr>td .ant-table-rep__title+:not(.ant-avatar){flex:1;word-break:break-all}}.ant-tag__plus .ant-tag{background:#fff;border-style:dashed}.tag-wrap-list-spacing{margin-top:-8px}.tag-wrap-list-spacing .ant-tag{margin-top:8px}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small{font-size:65%}.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small{font-size:75%}.h1{font-size:32px}.h2{font-size:24px}.h3{font-size:20px}.h4{font-size:16px}.h5{font-size:14px}.h6{font-size:12px}.list-styled{list-style:inherit;padding-right:18px;padding-left:0}.list-unstyled{list-style:none;padding-right:0;padding-left:inherit}fieldset{border:none}.display-1{font-size:32px}.display-2{font-size:24px}.display-3{font-size:20px}.search__form .ant-form-item{margin-right:0;margin-bottom:16px}.half-float img{display:block;max-width:100%;height:auto}.half-float .half-float-bottom{position:absolute;left:50%;z-index:2}.half-float.half-float-sm{margin-bottom:42px}.half-float.half-float-sm .half-float-bottom{bottom:-32px;width:64px;height:64px;margin-left:-32px}.half-float.half-float-md{margin-bottom:50px}.half-float.half-float-md .half-float-bottom{bottom:-40px;width:80px;height:80px;margin-left:-40px}.half-float.half-float-lg{margin-bottom:58px}.half-float.half-float-lg .half-float-bottom{bottom:-48px;width:96px;height:96px;margin-left:-48px}.row-masonry{width:100%;margin:0;padding:0;column-gap:16px}.row-masonry>.col-masonry{display:inline-block;width:100%;min-height:1em;margin-bottom:15px}.sf__array>.ant-form-item,.sf__title{margin-bottom:8px}.row-masonry img{max-width:100%}@media only screen and (min-width:480px){.row-masonry-xs-1{column-count:1;columns:1}.row-masonry-xs-2{column-count:2;columns:2}.row-masonry-xs-3{column-count:3;columns:3}.row-masonry-xs-4{column-count:4;columns:4}.row-masonry-xs-5{column-count:5;columns:5}.row-masonry-xs-6{column-count:6;columns:6}.row-masonry-xs-7{column-count:7;columns:7}.row-masonry-xs-8{column-count:8;columns:8}.row-masonry-xs-9{column-count:9;columns:9}}@media only screen and (min-width:576px){.row-masonry-sm-1{column-count:1;columns:1}.row-masonry-sm-2{column-count:2;columns:2}.row-masonry-sm-3{column-count:3;columns:3}.row-masonry-sm-4{column-count:4;columns:4}.row-masonry-sm-5{column-count:5;columns:5}.row-masonry-sm-6{column-count:6;columns:6}.row-masonry-sm-7{column-count:7;columns:7}.row-masonry-sm-8{column-count:8;columns:8}.row-masonry-sm-9{column-count:9;columns:9}}@media only screen and (min-width:768px){.row-masonry-md-1{column-count:1;columns:1}.row-masonry-md-2{column-count:2;columns:2}.row-masonry-md-3{column-count:3;columns:3}.row-masonry-md-4{column-count:4;columns:4}.row-masonry-md-5{column-count:5;columns:5}.row-masonry-md-6{column-count:6;columns:6}.row-masonry-md-7{column-count:7;columns:7}.row-masonry-md-8{column-count:8;columns:8}.row-masonry-md-9{column-count:9;columns:9}}@media only screen and (min-width:992px){.row-masonry-lg-1{column-count:1;columns:1}.row-masonry-lg-2{column-count:2;columns:2}.row-masonry-lg-3{column-count:3;columns:3}.row-masonry-lg-4{column-count:4;columns:4}.row-masonry-lg-5{column-count:5;columns:5}.row-masonry-lg-6{column-count:6;columns:6}.row-masonry-lg-7{column-count:7;columns:7}.row-masonry-lg-8{column-count:8;columns:8}.row-masonry-lg-9{column-count:9;columns:9}}@media only screen and (min-width:1200px){.row-masonry-xl-1{column-count:1;columns:1}.row-masonry-xl-2{column-count:2;columns:2}.row-masonry-xl-3{column-count:3;columns:3}.row-masonry-xl-4{column-count:4;columns:4}.row-masonry-xl-5{column-count:5;columns:5}.row-masonry-xl-6{column-count:6;columns:6}.row-masonry-xl-7{column-count:7;columns:7}.row-masonry-xl-8{column-count:8;columns:8}.row-masonry-xl-9{column-count:9;columns:9}}.header-dropdown{background-color:#fff;border-radius:4px}@media screen and (max-width:480px){.header-dropdown{right:0!important;left:0!important;width:100%!important;border-radius:0!important}}.sf{display:block}.sf__optional{margin-left:2px;color:rgba(0,0,0,.35)}.sf__fixed{display:flex}.sf__fixed .ant-form-item-control-wrapper{flex:1}.sf__title{padding:0 16px;font-weight:700;text-align:left}.sf__object-card .ant-card-body{padding-left:0}.sf__object-card .sf__fixed{flex-wrap:wrap}.sf__object-card-fold .ant-card-body{display:none}.sf__array-add{margin-right:16px}.sf__array-container .ant-card{margin:0 16px 16px 0}.sf__array-container .ant-card-body{padding-bottom:0}.sf__array-container .ant-card .sf__array-remove{position:absolute;top:-16px;right:-16px;display:none;width:32px;height:32px;font-size:20px;line-height:32px;text-align:center;background:rgba(0,0,0,.26);border-radius:50%;cursor:pointer}.sf__array-container .ant-card .sf__array-remove i{color:#fff}.sf__array-container .ant-card:hover .sf__array-remove{display:block}@media (max-width:767px){.sf__array>.ant-form-item>.ant-form-item-control-wrapper,.sf__array>.ant-form-item>.ant-form-item-label{flex:0 0 100%;max-width:100%}.sf__array>.ant-form-item>.ant-form-item-label{display:flex;margin-bottom:8px}.sf__array-container .ant-card{margin-right:0}.sf__array-container .ant-card .sf__array-remove{right:8px;display:block}.sf__array-container>.sf__array-item{flex:0 0 100%;max-width:100%}}.sf .ant-upload-select-picture-card i{color:#999;font-size:32px}.sf .ant-upload.ant-upload-drag{height:180px}.sf .ant-transfer-list-header label{position:unset}.sf .ant-transfer .ant-btn+.ant-btn{margin-left:0}.sf__no-error .ant-form-item{margin-bottom:8px}.sf__inline .sf__item{display:inline-block;margin-bottom:8px;vertical-align:top}.sf__inline .ant-form-inline>.sf__item,.sf__inline .sf__array-container .ant-card-body>.sf__item{margin-bottom:0}.sf__inline .ant-form-inline .ant-select{min-width:100px}.sf__inline .sf__array-container>.sf__array-item{flex:initial;width:100%;max-width:100%}.sf__inline .sf__array-container .ant-card{margin:0}.sf__inline .sf__array-container .ant-card-body{padding:8px 0 0 8px}.sf__inline .sf-btns{display:inline-block;margin-right:0}@media (max-width:767px){.sf__inline .sf__item{display:block;width:100%}.sf__inline .sf__item .ant-form-item{display:block!important;width:initial!important;margin-right:0}.sf__inline .ant-form-item-control,.sf__inline .ant-form-item-label{display:block!important;padding:inherit}}.sf__horizontal .ant-form-item-label>label{display:flex;justify-content:flex-end}.sf__horizontal .sf__label-text{overflow:hidden;text-overflow:ellipsis}@media (max-width:767px){.sf__horizontal .ant-form-item-label>label{justify-content:flex-start}}.sf__no-colon .ant-form-item-label label::after{content:' '}.sf__compact .ant-form-item{margin-bottom:8px}.sf__compact .sf__array-container .ant-card{margin:0 8px 8px 0}.sf__compact .sf__array-item .ant-card-body{padding:8px}.pr0,.px0{padding-right:0!important}.sf__item .ant-cascader-picker,.sf__item .ant-select{width:100%}.acl__hide{display:none!important}.setting-drawer__content{position:relative;min-height:100%;background:#fff}.setting-drawer__body-item{display:flex;align-items:center;justify-content:space-between;padding-top:12px;padding-bottom:12px}.setting-drawer__body-item:first-child{padding-top:0}.setting-drawer__body-item:last-child{padding-bottom:0}.setting-drawer__title{margin-bottom:12px;color:rgba(0,0,0,.85);font-size:14px;line-height:22px}.setting-drawer__theme{margin-top:24px;overflow:hidden}.setting-drawer__theme-tag{float:left;width:20px;height:20px;margin-right:8px;color:#fff;font-weight:700;text-align:center;border-radius:2px;cursor:pointer}.setting-drawer__handle{position:fixed;top:240px;right:0;z-index:999;display:flex;align-items:center;justify-content:center;width:48px;height:48px;font-size:16px;text-align:center;background:#1890ff;border-radius:4px 0 0 4px;cursor:pointer;transition:right .3s cubic-bezier(.9,0,.3,.7);pointer-events:auto}#search-box .anticon,.alain-default__top-menu-item-disabled,.cell__disabled[data-type=link],.disabled,.drawer,.nz-resizable-disabled .nz-resizable-handle,.onboarding__light,.reuse-tab__disabled,.st__btn-disabled .st__btn-text{pointer-events:none}.setting-drawer__handle-icon{color:#fff;font-size:20px}.setting-drawer__handle-opened{right:500px;z-index:1001}.setting-drawer-rtl .setting-drawer__handle{right:inherit;left:0;border-radius:0 4px 4px 0}.setting-drawer-rtl .setting-drawer__handle-opened{right:inherit;left:500px}.theme-btn .ant-avatar{color:#000;background-color:#fff;transition:color .3s}.theme-btn .ant-avatar:hover,.yn__yes{color:#1890ff}.bg-blue-dark-h,.bg-blue-h,.bg-blue-light-h,.bg-cyan-dark-h,.bg-cyan-h,.bg-cyan-light-h,.bg-error-h,.bg-geekblue-dark-h,.bg-geekblue-h,.bg-geekblue-light-h,.bg-gold-dark-h,.bg-gold-h,.bg-gold-light-h,.bg-green-dark-h,.bg-green-h,.bg-green-light-h,.bg-grey-dark-h,.bg-grey-darker-h,.bg-grey-h,.bg-grey-light-h,.bg-grey-lighter-h,.bg-highlight-h,.bg-info-h,.bg-lime-dark-h,.bg-lime-h,.bg-lime-light-h,.bg-magenta-dark-h,.bg-magenta-h,.bg-magenta-light-h,.bg-normal-h,.bg-orange-dark-h,.bg-orange-h,.bg-orange-light-h,.bg-primary-h,.bg-processing-h,.bg-purple-dark-h,.bg-purple-h,.bg-purple-light-h,.bg-red-dark-h,.bg-red-h,.bg-red-light-h,.bg-success-h,.bg-volcano-dark-h,.bg-volcano-h,.bg-volcano-light-h,.bg-warning-h,.bg-yellow-dark-h,.bg-yellow-h,.bg-yellow-light-h{transition:background-color .3s}.theme-btn-rtl{right:inherit;left:32px}.yn__no,.yn__yes{display:inline-flex;align-items:center;font-style:normal}.yn__no span,.yn__yes span{margin-left:4px}.yn__no{color:#8c8c8c}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.border{border:1px solid #f0f0f0!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-1{border:1px solid #f0f0f0!important}.rounded-md,.rounded-sm{border-radius:2px}.rounded-top-left-md,.rounded-top-left-sm{border-top-left-radius:2px}.rounded-top-right-md,.rounded-top-right-sm{border-top-right-radius:2px}.rounded-bottom-left-md,.rounded-bottom-left-sm{border-bottom-left-radius:2px}.rounded-bottom-right-md,.rounded-bottom-right-sm{border-bottom-right-radius:2px}.border-top-1{border-top:1px solid #f0f0f0!important}.border-right-1{border-right:1px solid #f0f0f0!important}.border-bottom-1{border-bottom:1px solid #f0f0f0!important}.border-left-1{border-left:1px solid #f0f0f0!important}.border-red{border-color:#f5222d!important}.border-volcano{border-color:#fa541c!important}.border-orange{border-color:#fa8c16!important}.border-gold{border-color:#faad14!important}.border-yellow{border-color:#fadb14!important}.border-lime{border-color:#a0d911!important}.border-green{border-color:#52c41a!important}.border-cyan{border-color:#13c2c2!important}.border-blue{border-color:#1890ff!important}.border-geekblue{border-color:#2f54eb!important}.border-purple{border-color:#722ed1!important}.border-magenta{border-color:#eb2f96!important}.border-grey{border-color:#bfbfbf!important}.border-primary{border-color:#1890ff!important}.border-success{border-color:#52c41a!important}.border-error{border-color:#ff4d4f!important}.border-warning{border-color:#faad14!important}.border-info,.border-processing{border-color:#1890ff!important}.border-highlight{border-color:#ff4d4f!important}.border-normal{border-color:#d9d9d9!important}.rounded-lg{border-radius:4px}.rounded-top-left-lg{border-top-left-radius:4px}.rounded-top-right-lg{border-top-right-radius:4px}.rounded-bottom-left-lg{border-bottom-left-radius:4px}.rounded-bottom-right-lg{border-bottom-right-radius:4px}.rounded-circle{border-radius:50%}.rounded-0{border-radius:0}.border-white{border-color:#fff!important}.rotate-360{transform:rotate(360deg)}.rotate-345{transform:rotate(345deg)}.rotate-330{transform:rotate(330deg)}.rotate-315{transform:rotate(315deg)}.rotate-300{transform:rotate(300deg)}.rotate-285{transform:rotate(285deg)}.rotate-270{transform:rotate(270deg)}.rotate-255{transform:rotate(255deg)}.rotate-240{transform:rotate(240deg)}.rotate-225{transform:rotate(225deg)}.rotate-210{transform:rotate(210deg)}.rotate-195{transform:rotate(195deg)}.rotate-180{transform:rotate(180deg)}.rotate-165{transform:rotate(165deg)}.rotate-150{transform:rotate(150deg)}.rotate-135{transform:rotate(135deg)}.rotate-120{transform:rotate(120deg)}.rotate-105{transform:rotate(105deg)}.rotate-90{transform:rotate(90deg)}.rotate-75{transform:rotate(75deg)}.rotate-60{transform:rotate(60deg)}.rotate-45{transform:rotate(45deg)}.rotate-30{transform:rotate(30deg)}.rotate-15{transform:rotate(15deg)}code{font-size:90%;background-color:#f7f7f7;border:1px solid #eee;border-radius:2px}.bg-white{background-color:#fff!important}.bg-transparent{background-color:transparent!important}.text-white{color:#fff!important}.text-hover{cursor:pointer}.text-hover:hover{color:#1890ff!important}.bg-red-light{background-color:#ff4d4f!important}.bg-red{background-color:#f5222d!important}.bg-red-dark{background-color:#cf1322!important}.bg-red-light-h:hover{background-color:#ff4d4f!important}.bg-red-h:hover{background-color:#f5222d!important}.bg-red-dark-h:hover{background-color:#cf1322!important}.text-red-light{color:#ff4d4f!important}.text-red{color:#f5222d!important}.text-red-dark{color:#cf1322!important}.bg-volcano-light{background-color:#ff7a45!important}.bg-volcano{background-color:#fa541c!important}.bg-volcano-dark{background-color:#d4380d!important}.bg-volcano-light-h:hover{background-color:#ff7a45!important}.bg-volcano-h:hover{background-color:#fa541c!important}.bg-volcano-dark-h:hover{background-color:#d4380d!important}.text-volcano-light{color:#ff7a45!important}.text-volcano{color:#fa541c!important}.text-volcano-dark{color:#d4380d!important}.bg-orange-light{background-color:#ffa940!important}.bg-orange{background-color:#fa8c16!important}.bg-orange-dark{background-color:#d46b08!important}.bg-orange-light-h:hover{background-color:#ffa940!important}.bg-orange-h:hover{background-color:#fa8c16!important}.bg-orange-dark-h:hover{background-color:#d46b08!important}.text-orange-light{color:#ffa940!important}.text-orange{color:#fa8c16!important}.text-orange-dark{color:#d46b08!important}.bg-gold-light{background-color:#ffc53d!important}.bg-gold{background-color:#faad14!important}.bg-gold-dark{background-color:#d48806!important}.bg-gold-light-h:hover{background-color:#ffc53d!important}.bg-gold-h:hover{background-color:#faad14!important}.bg-gold-dark-h:hover{background-color:#d48806!important}.text-gold-light{color:#ffc53d!important}.text-gold{color:#faad14!important}.text-gold-dark{color:#d48806!important}.bg-yellow-light{background-color:#ffec3d!important}.bg-yellow{background-color:#fadb14!important}.bg-yellow-dark{background-color:#d4b106!important}.bg-yellow-light-h:hover{background-color:#ffec3d!important}.bg-yellow-h:hover{background-color:#fadb14!important}.bg-yellow-dark-h:hover{background-color:#d4b106!important}.text-yellow-light{color:#ffec3d!important}.text-yellow{color:#fadb14!important}.text-yellow-dark{color:#d4b106!important}.bg-lime-light{background-color:#bae637!important}.bg-lime{background-color:#a0d911!important}.bg-lime-dark{background-color:#7cb305!important}.bg-lime-light-h:hover{background-color:#bae637!important}.bg-lime-h:hover{background-color:#a0d911!important}.bg-lime-dark-h:hover{background-color:#7cb305!important}.text-lime-light{color:#bae637!important}.text-lime{color:#a0d911!important}.text-lime-dark{color:#7cb305!important}.bg-green-light{background-color:#73d13d!important}.bg-green{background-color:#52c41a!important}.bg-green-dark{background-color:#389e0d!important}.bg-green-light-h:hover{background-color:#73d13d!important}.bg-green-h:hover{background-color:#52c41a!important}.bg-green-dark-h:hover{background-color:#389e0d!important}.text-green-light{color:#73d13d!important}.text-green{color:#52c41a!important}.text-green-dark{color:#389e0d!important}.bg-cyan-light{background-color:#36cfc9!important}.bg-cyan{background-color:#13c2c2!important}.bg-cyan-dark{background-color:#08979c!important}.bg-cyan-light-h:hover{background-color:#36cfc9!important}.bg-cyan-h:hover{background-color:#13c2c2!important}.bg-cyan-dark-h:hover{background-color:#08979c!important}.text-cyan-light{color:#36cfc9!important}.text-cyan{color:#13c2c2!important}.text-cyan-dark{color:#08979c!important}.bg-blue-light{background-color:#40a9ff!important}.bg-blue{background-color:#1890ff!important}.bg-blue-dark{background-color:#096dd9!important}.bg-blue-light-h:hover{background-color:#40a9ff!important}.bg-blue-h:hover{background-color:#1890ff!important}.bg-blue-dark-h:hover{background-color:#096dd9!important}.text-blue-light{color:#40a9ff!important}.text-blue{color:#1890ff!important}.text-blue-dark{color:#096dd9!important}.bg-geekblue-light{background-color:#597ef7!important}.bg-geekblue{background-color:#2f54eb!important}.bg-geekblue-dark{background-color:#1d39c4!important}.bg-geekblue-light-h:hover{background-color:#597ef7!important}.bg-geekblue-h:hover{background-color:#2f54eb!important}.bg-geekblue-dark-h:hover{background-color:#1d39c4!important}.text-geekblue-light{color:#597ef7!important}.text-geekblue{color:#2f54eb!important}.text-geekblue-dark{color:#1d39c4!important}.bg-purple-light{background-color:#9254de!important}.bg-purple{background-color:#722ed1!important}.bg-purple-dark{background-color:#531dab!important}.bg-purple-light-h:hover{background-color:#9254de!important}.bg-purple-h:hover{background-color:#722ed1!important}.bg-purple-dark-h:hover{background-color:#531dab!important}.text-purple-light{color:#9254de!important}.text-purple{color:#722ed1!important}.text-purple-dark{color:#531dab!important}.bg-magenta-light{background-color:#f759ab!important}.bg-magenta{background-color:#eb2f96!important}.bg-magenta-dark{background-color:#c41d7f!important}.bg-magenta-light-h:hover{background-color:#f759ab!important}.bg-magenta-h:hover{background-color:#eb2f96!important}.bg-magenta-dark-h:hover{background-color:#c41d7f!important}.text-magenta-light{color:#f759ab!important}.text-magenta{color:#eb2f96!important}.text-magenta-dark{color:#c41d7f!important}.bg-grey-light{background-color:#d9d9d9!important}.bg-grey{background-color:#bfbfbf!important}.bg-grey-dark{background-color:#8c8c8c!important}.bg-grey-light-h:hover{background-color:#d9d9d9!important}.bg-grey-h:hover{background-color:#bfbfbf!important}.bg-grey-dark-h:hover{background-color:#8c8c8c!important}.text-grey-light{color:#d9d9d9!important}.text-grey{color:#bfbfbf!important}.text-grey-dark{color:#8c8c8c!important}.bg-primary-light{background-color:#40a9ff!important}.bg-primary{background-color:#1890ff!important}.bg-primary-dark{background-color:#096dd9!important}.bg-primary-h:hover{background-color:#1890ff!important}.text-primary-light{color:#40a9ff!important}.text-primary{color:#1890ff!important}.text-primary-dark{color:#096dd9!important}.bg-success-light{background-color:#73d13d!important}.bg-success{background-color:#52c41a!important}.bg-success-dark{background-color:#389e0d!important}.bg-success-h:hover{background-color:#52c41a!important}.text-success-light{color:#73d13d!important}.text-success{color:#52c41a!important}.text-success-dark{color:#389e0d!important}.bg-error-light{background-color:#ff7875!important}.bg-error{background-color:#ff4d4f!important}.bg-error-dark{background-color:#d9363e!important}.bg-error-h:hover{background-color:#ff4d4f!important}.text-error-light{color:#ff7875!important}.text-error{color:#ff4d4f!important}.text-error-dark{color:#d9363e!important}.bg-warning-light{background-color:#ffc53d!important}.bg-warning{background-color:#faad14!important}.bg-warning-dark{background-color:#d48806!important}.bg-warning-h:hover{background-color:#faad14!important}.text-warning-light{color:#ffc53d!important}.text-warning{color:#faad14!important}.text-warning-dark{color:#d48806!important}.bg-info-light{background-color:#40a9ff!important}.bg-info{background-color:#1890ff!important}.bg-info-dark{background-color:#096dd9!important}.bg-info-h:hover{background-color:#1890ff!important}.text-info-light{color:#40a9ff!important}.text-info{color:#1890ff!important}.text-info-dark{color:#096dd9!important}.bg-processing-light{background-color:#40a9ff!important}.bg-processing{background-color:#1890ff!important}.bg-processing-dark{background-color:#096dd9!important}.bg-processing-h:hover{background-color:#1890ff!important}.text-processing-light{color:#40a9ff!important}.text-processing{color:#1890ff!important}.text-processing-dark{color:#096dd9!important}.bg-highlight-light{background-color:#ff7875!important}.bg-highlight{background-color:#ff4d4f!important}.bg-highlight-dark{background-color:#d9363e!important}.bg-highlight-h:hover{background-color:#ff4d4f!important}.text-highlight-light{color:#ff7875!important}.text-highlight{color:#ff4d4f!important}.text-highlight-dark{color:#d9363e!important}.bg-normal-light{background-color:#e6d8d8!important}.bg-normal{background-color:#d9d9d9!important}.bg-normal-dark{background-color:#b3a8a8!important}.bg-normal-h:hover{background-color:#d9d9d9!important}.bg-grey-lighter,.bg-grey-lighter-h:hover{background-color:#f5f5f5!important}.text-normal-light{color:#e6d8d8!important}.text-normal{color:#d9d9d9!important}.text-normal-dark{color:#b3a8a8!important}.bg-grey-darker,.bg-grey-darker-h:hover{background-color:#262626!important}.text-grey-lighter{color:#f5f5f5!important}.text-grey-darker{color:#262626!important}.disabled,.no-data{color:rgba(0,0,0,.25)}.d-none{display:none!important}.d-block{display:block!important}.d-inline-block{display:inline-block!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}.flex-center,.flex-center-between{display:flex!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center,.flex-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}.flex-1{flex:1!important}.flex-column{flex-direction:column!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-center-between{align-items:center!important;justify-content:space-between!important}.float-none{float:none!important}.float-left{float:left!important}.float-right{float:right!important}.icon-sm{font-size:24px!important}.icon-md{font-size:48px!important}.icon-lg{font-size:72px!important}.icon-xl{font-size:96px!important}.icon-xxl{font-size:120px!important}.img-fluid{max-width:100%;height:auto}.point{cursor:pointer}.no-resize{min-width:100%;max-width:100%;resize:none}.no-data{font-size:16px;line-height:64px;text-align:center}.no-data i{position:relative;top:3px;margin-right:16px;font-size:24px}.block-center{margin:0 auto}.mr0,.mx0{margin-right:0!important}.ml0,.mx0{margin-left:0!important}.mt0,.my0{margin-top:0!important}.mb0,.my0{margin-bottom:0!important}.bg-center{background-position:center center;background-size:cover}.page-loading{position:absolute;inset:0;z-index:10000;padding-top:200px;text-align:center;background:#f5f5f5}.pt0,.py0{padding-top:0!important}.color-weak{display:block;filter:invert(80%)}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.fixed-bottom,.fixed-top{position:fixed;z-index:9;right:0;left:0}.fixed-top{top:0}.fixed-bottom{bottom:0}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}@media (max-width:575px){.hidden-xs{display:none!important}}@media (max-width:991px){.hidden-md{display:none!important}}@media (max-width:1199px){.hidden-lg{display:none!important}}@media (max-width:1599px){.hidden-xl{display:none!important}}@media (min-width:768px){.hidden-pc{display:none!important}}.m0{margin:0!important}.mr-xs,.mx-xs{margin-right:4px!important}.ml-xs,.mx-xs{margin-left:4px!important}.mt-xs,.my-xs{margin-top:4px!important}.mb-xs,.my-xs{margin-bottom:4px!important}.p0{padding:0!important}.pl0,.px0{padding-left:0!important}.pr-xs,.px-xs{padding-right:4px!important}.pl-xs,.px-xs{padding-left:4px!important}.pt-xs,.py-xs{padding-top:4px!important}.pb-xs,.py-xs{padding-bottom:4px!important}.m-xs{margin:4px!important}.mr-sm,.mx-sm{margin-right:8px!important}.ml-sm,.mx-sm{margin-left:8px!important}.mt-sm,.my-sm{margin-top:8px!important}.mb-sm,.my-sm{margin-bottom:8px!important}.p-xs{padding:4px!important}.pr-sm,.px-sm{padding-right:8px!important}.pl-sm,.px-sm,[dir=rtl] .pr-sm{padding-left:8px!important}.pt-sm,.py-sm{padding-top:8px!important}.pb-sm,.py-sm{padding-bottom:8px!important}.m-sm{margin:8px!important}.mr-md,.mx-md{margin-right:16px!important}.ml-md,.mx-md{margin-left:16px!important}.mt-md,.my-md{margin-top:16px!important}.mb-md,.my-md{margin-bottom:16px!important}.p-sm{padding:8px!important}.pr-md,.px-md{padding-right:16px!important}.pl-md,.px-md{padding-left:16px!important}.pt-md,.py-md{padding-top:16px!important}.pb-md,.py-md{padding-bottom:16px!important}.m-md{margin:16px!important}.mr-lg,.mx-lg{margin-right:24px!important}.ml-lg,.mx-lg{margin-left:24px!important}.mt-lg,.my-lg{margin-top:24px!important}.mb-lg,.my-lg{margin-bottom:24px!important}.p-md{padding:16px!important}.pr-lg,.px-lg{padding-right:24px!important}.pl-lg,.px-lg,[dir=rtl] .pr-lg{padding-left:24px!important}.pt-lg,.py-lg{padding-top:24px!important}.pb-lg,.py-lg{padding-bottom:24px!important}.m-lg{margin:24px!important}.mr-xl,.mx-xl{margin-right:32px!important}.ml-xl,.mx-xl{margin-left:32px!important}.mt-xl,.my-xl{margin-top:32px!important}.mb-xl,.my-xl{margin-bottom:32px!important}.p-lg{padding:24px!important}.pr-xl,.px-xl{padding-right:32px!important}.pl-xl,.px-xl{padding-left:32px!important}.pt-xl,.py-xl{padding-top:32px!important}.pb-xl,.py-xl{padding-bottom:32px!important}.m-xl{margin:32px!important}.mr-xxl,.mx-xxl{margin-right:48px!important}.ml-xxl,.mx-xxl{margin-left:48px!important}.mt-xxl,.my-xxl{margin-top:48px!important}.mb-xxl,.my-xxl{margin-bottom:48px!important}.p-xl{padding:32px!important}.pr-xxl,.px-xxl{padding-right:48px!important}.pl-xxl,.px-xxl,[dir=rtl] .pr-xxl{padding-left:48px!important}.pt-xxl,.py-xxl{padding-top:48px!important}.pb-xxl,.py-xxl{padding-bottom:48px!important}.m-xxl{margin:48px!important}.p-xxl{padding:48px!important}[dir=rtl] .mr0{margin-left:0!important;margin-right:inherit!important}[dir=rtl] .ml0{margin-right:0!important;margin-left:inherit!important}[dir=rtl] .pr0{padding-left:0!important;padding-right:inherit!important}[dir=rtl] .pl0{padding-right:0!important;padding-left:inherit!important}[dir=rtl] .mr-xs{margin-left:4px!important;margin-right:inherit!important}[dir=rtl] .ml-xs{margin-right:4px!important;margin-left:inherit!important}[dir=rtl] .pr-xs{padding-left:4px!important;padding-right:inherit!important}[dir=rtl] .pl-xs{padding-right:4px!important;padding-left:inherit!important}[dir=rtl] .mr-sm{margin-left:8px!important;margin-right:inherit!important}[dir=rtl] .ml-sm{margin-right:8px!important;margin-left:inherit!important}[dir=rtl] .pr-sm{padding-right:inherit!important}[dir=rtl] .pl-sm{padding-right:8px!important;padding-left:inherit!important}[dir=rtl] .mr-md{margin-left:16px!important;margin-right:inherit!important}[dir=rtl] .ml-md{margin-right:16px!important;margin-left:inherit!important}[dir=rtl] .pr-md{padding-left:16px!important;padding-right:inherit!important}[dir=rtl] .pl-md{padding-right:16px!important;padding-left:inherit!important}[dir=rtl] .mr-lg{margin-left:24px!important;margin-right:inherit!important}[dir=rtl] .ml-lg{margin-right:24px!important;margin-left:inherit!important}[dir=rtl] .pr-lg{padding-right:inherit!important}[dir=rtl] .pl-lg{padding-right:24px!important;padding-left:inherit!important}[dir=rtl] .mr-xl{margin-left:32px!important;margin-right:inherit!important}[dir=rtl] .ml-xl{margin-right:32px!important;margin-left:inherit!important}[dir=rtl] .pr-xl{padding-left:32px!important;padding-right:inherit!important}[dir=rtl] .pl-xl{padding-right:32px!important;padding-left:inherit!important}[dir=rtl] .mr-xxl{margin-left:48px!important;margin-right:inherit!important}[dir=rtl] .ml-xxl{margin-right:48px!important;margin-left:inherit!important}[dir=rtl] .pr-xxl{padding-right:inherit!important}[dir=rtl] .pl-xxl{padding-right:48px!important;padding-left:inherit!important}.text-left{text-align:left!important}.text-center{text-align:center!important}.text-right,[dir=rtl] .text-left{text-align:right!important}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.text-nowrap{white-space:nowrap!important}.text-wrap{white-space:pre-wrap!important}.text-truncate{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.font-weight-normal{font-weight:400}.code-box-code-copy.anticon-check,.font-weight-bold,.hljs-strong,.se__title,.token.bold,.token.important{font-weight:700}.text-xs{font-size:10px!important}.text-sm{font-size:12px!important}.text-md{font-size:14px!important}.text-lg{font-size:16px!important}.text-xl{font-size:20px!important}.text-xxl{font-size:26px!important}[dir=rtl] .text-right{text-align:left!important}.width-xs{width:80px!important}.max-width-xs{max-width:80px!important}.min-width-xs{min-width:80px!important}.width-sm{width:160px!important}.max-width-sm{max-width:160px!important}.min-width-sm{min-width:160px!important}.width-md{width:240px!important}.max-width-md{max-width:240px!important}.min-width-md{min-width:240px!important}.width-lg{width:320px!important}.max-width-lg{max-width:320px!important}.min-width-lg{min-width:320px!important}.width-xl{width:400px!important}.max-width-xl{max-width:400px!important}.min-width-xl{min-width:400px!important}.width-xxl{width:480px!important}.max-width-xxl{max-width:480px!important}.min-width-xxl{min-width:480px!important}.width-10{width:10%!important}.max-width-10{max-width:10%!important}.min-width-10{min-width:10%!important}.width-20{width:20%!important}.max-width-20{max-width:20%!important}.min-width-20{min-width:20%!important}.width-30{width:30%!important}.max-width-30{max-width:30%!important}.min-width-30{min-width:30%!important}.width-40{width:40%!important}.max-width-40{max-width:40%!important}.min-width-40{min-width:40%!important}.width-50{width:50%!important}.max-width-50{max-width:50%!important}.min-width-50{min-width:50%!important}.width-60{width:60%!important}.max-width-60{max-width:60%!important}.min-width-60{min-width:60%!important}.width-70{width:70%!important}.max-width-70{max-width:70%!important}.min-width-70{min-width:70%!important}.width-80{width:80%!important}.max-width-80{max-width:80%!important}.min-width-80{min-width:80%!important}.width-90{width:90%!important}.max-width-90{max-width:90%!important}.min-width-90{min-width:90%!important}.width-100{width:100%!important}.max-width-100{max-width:100%!important}.min-width-100{min-width:100%!important}@media (max-width:767px){.hidden-mobile,.hidden-sm{display:none!important}.max-width-sm,.min-width-sm,.width-sm{width:100%!important}}.scrollbar{overflow:auto}.scrollbar-x{overflow:auto hidden}.scrollbar-y{overflow:hidden auto}.ant-anchor-wrapper,.ant-dialog-wrap,.ant-drawer-body,.ant-drawer-wrapper-body,.scrollbar,body,textarea.ant-input{scrollbar-color:rgba(0,0,0,.3) #6e6e6e;scrollbar-width:thin}.ant-anchor-wrapper::-webkit-scrollbar,.ant-dialog-wrap::-webkit-scrollbar,.ant-drawer-body::-webkit-scrollbar,.ant-drawer-wrapper-body::-webkit-scrollbar,.scrollbar::-webkit-scrollbar,body::-webkit-scrollbar,textarea.ant-input::-webkit-scrollbar{width:6px;height:6px}.ant-anchor-wrapper::-webkit-scrollbar-track,.ant-dialog-wrap::-webkit-scrollbar-track,.ant-drawer-body::-webkit-scrollbar-track,.ant-drawer-wrapper-body::-webkit-scrollbar-track,.scrollbar::-webkit-scrollbar-track,body::-webkit-scrollbar-track,textarea.ant-input::-webkit-scrollbar-track{box-shadow:inset 0 0 6px rgba(0,0,0,.3)}#search-box input,.alain-default__search .ant-input:focus,.st__filter-date .ant-picker-panel-container{box-shadow:none}.ant-anchor-wrapper::-webkit-scrollbar-thumb,.ant-dialog-wrap::-webkit-scrollbar-thumb,.ant-drawer-body::-webkit-scrollbar-thumb,.ant-drawer-wrapper-body::-webkit-scrollbar-thumb,.scrollbar::-webkit-scrollbar-thumb,body::-webkit-scrollbar-thumb,textarea.ant-input::-webkit-scrollbar-thumb{background-color:#6e6e6e;outline:#333 solid 1px}.st{display:block}.st__p-left .ant-table-pagination{display:block;float:none;text-align:left}.st__p-center .ant-table-pagination{display:block;float:none;text-align:center}.st__btn-sub .st__btn-text{width:100%;color:inherit}.st__btn-disabled .st__btn-text{color:rgba(0,0,0,.25)}.st .nz-resizable-handle{display:flex;align-items:center;justify-content:center}.st .nz-resizable-handle>i{width:1px;height:60%;background:#d9d9d9}.st .nz-resizable-preview{border-width:0 1px 0 0}.st .nz-resizable.ant-table-column-has-sorters .nz-resizable-handle{margin-right:8px}.st .ant-table~nz-pagination>.ant-pagination{margin-bottom:0}.st__filter-keyword{padding:8px}.st__filter-date .ant-picker-panel-container .ant-picker-panel{border:none}.st__has-filter .ant-table-column-sorters{padding-right:16px}.st__has-filter .st__filter{position:absolute;top:0;right:0;bottom:0;display:flex;place-items:center center}.st__has-filter .ant-table-filter-trigger{height:100%}.st__has-filter.ant-table-column-has-sorters .st__filter{right:-32px}.st__head-optional,.st__head-tip{margin-left:2px;color:rgba(0,0,0,.35)}.st .ant-table-thead>tr>th .ant-table-filter-selected.ant-table-filter-icon{color:#1890ff}.st__checkall-selection{display:inline-block;margin-left:4px}.st .ant-table-tbody>tr .ant-table-wrapper:only-child .ant-table{margin:0}.st .text-truncate.ant-table-cell-fix-left-first::after,.st .text-truncate.ant-table-cell-fix-left-last::after{transform:translateX(80%)}.st .text-truncate.ant-table-cell-fix-right-first::after,.st .text-truncate.ant-table-cell-fix-right-last::after{transform:translateX(-80%)}.st__no-column .ant-table{height:100px}.st__no-column .ant-table-content{display:none}.sv,.sv__container{display:block}.st__row-class .ant-table-tbody>tr>td .ant-table-cell-fix-left,.st__row-class .ant-table-tbody>tr>td .ant-table-cell-fix-right{background:inherit}@media screen and (min-width:768px){.st__width-strict .ant-table-body>table,.st__width-strict .ant-table-content>table{word-wrap:break-word!important;table-layout:fixed!important}}.sv+.sv{margin-top:16px}.sv__container .ant-row{margin-bottom:-16px;overflow:hidden}.sv__item-fixed{display:flex}.sv__item-fixed .sv__label{flex:0 0 auto;overflow:hidden;text-align:right;text-overflow:ellipsis}.sv__item-fixed .sv__detail{flex:1 0 0}.sv__item+.ant-divider{margin:0 0 16px}.sv__title{display:block;float:none;clear:both;width:100%;margin-bottom:16px;color:rgba(0,0,0,.85);font-weight:500;font-size:14px}.sv__detail,.sv__label{display:table-cell;padding-bottom:16px;line-height:22px}.sv__label{color:rgba(0,0,0,.5);white-space:nowrap}.sv__label:not(.sv__label-empty)::after{position:relative;top:-.5px;margin:0 8px 0 2px;content:':'}.sv__label-optional{margin-left:2px;color:rgba(0,0,0,.35)}.sv__label-optional-no-text{margin-left:0}.sv__label-optional>.anticon{margin-left:2px}.sv__detail{width:100%;color:rgba(0,0,0,.85);vertical-align:top;word-break:break-all}.se__line,.sv__small .sv__detail,.sv__small .sv__label,.sv__vertical .sv__label{padding-bottom:8px}.sv__type-primary .sv__detail{color:#1890ff}.sv__type-success .sv__detail{color:#52c41a}.sv__type-danger .sv__detail{color:#ff4d4f}.sv__type-warning .sv__detail{color:#faad14}.sv__default::before{content:'-'}.sv__default~.sv__unit{display:none!important}.sv__unit{display:inline;margin-left:8px;color:#8c8c8c}.sv__small .ant-row{margin-bottom:-8px}.sv__small .sv__title{margin-bottom:12px;color:rgba(0,0,0,.85)}.sv__value{display:inline-flex;align-items:center}.sv__value-prefix,.sv__value-unit{color:rgba(0,0,0,.5);font-size:12px;font-style:normal}.sv__value-prefix{padding-right:3px}.sv__value-text{font-size:18px}.sv__value-unit{padding-left:3px}.sv__value:not(:first-child){position:relative;margin-left:8px;padding-left:14px}.sv__value:not(:first-child)::before{position:absolute;left:0;width:6px;color:rgba(0,0,0,.5);content:'/'}.sv__value-small .sv__value-text{font-size:14px}.sv__value-large .sv__value-text{font-size:24px}.sv__large .sv__title{font-size:16px}.sv__horizontal .sv__label-width{display:flex;justify-content:flex-end}.se__title,.sv__vertical .sv__detail,.sv__vertical .sv__label{display:block}.sv__horizontal .sv__label-width .sv__label-text{overflow:hidden;text-overflow:ellipsis}.sv__no-colon::after{content:' '!important}.sv__bordered{overflow:hidden;border-left:1px solid #f0f0f0}.sv__bordered .sv__item{border-right:1px solid #f0f0f0}.sv__bordered .sv__label{background-color:#fafafa;border-right:1px solid #f0f0f0}.sv__bordered .sv__detail,.sv__bordered .sv__label{padding:8px 16px}.sv__bordered.sv__large .sv__detail,.sv__bordered.sv__large .sv__label{padding:12px 16px}.sv__bordered.sv__small .sv__detail,.sv__bordered.sv__small .sv__label{padding:4px 8px}.se__title{float:none;clear:both;width:100%;color:rgba(0,0,0,.85);font-size:14px;line-height:1.66667}.se__item{transition:none}.se__item:last-child{margin-bottom:0;padding-bottom:0}.code-box,.se__item+.ant-divider{margin:0 0 16px}.se__item-empty::before{display:inline-block;content:''}.se__label{display:table-cell;flex:0 0 auto;width:initial;white-space:nowrap;text-align:right}.se__label-optional{margin-left:2px;color:rgba(0,0,0,.35)}.se__label-optional-no-text{margin-left:0}.se__label-optional>.anticon{margin-left:2px}.se__control{flex:1 0 0;width:100%}.se__compact>.se__item,.se__compact>.se__title{margin-bottom:8px}.se__compact>.se__item+.ant-divider,.se__compact>.se__title+.ant-divider{margin:0 0 8px}.se__compact .ant-form-item-extra{display:none}.se__line{border-bottom:1px dashed #f0f0f0}.se__hide-label .se__nolabel,.se__inline .se__nolabel,.se__vertical .se__nolabel{display:none!important}.se__horizontal>.se__item{display:flex}.se__horizontal>.se__item:last-child{margin-bottom:0}.se__horizontal>.se__item .se__label{display:flex;justify-content:flex-end}.se__horizontal>.se__item .se__label-text{overflow:hidden;text-overflow:ellipsis}.se__horizontal>.se__item .ant-form-item-required::before{line-height:inherit}.se__horizontal>.se__item .ant-form-item-label>label::after{margin-left:4px}.se__vertical>.se__item{display:block;width:100%}.se__inline .ant-form-item-label,.se__inline .se__control{display:inline-block;width:initial!important;text-align:left;vertical-align:top}.se__inline>.se__item{margin-right:16px}.se__inline>.se__item[col='1']{flex-basis:auto;width:100%}.se__inline>.se__item:last-child{margin-right:0}.se__no-colon::after{content:' '!important}@media (max-width:767px){.se__horizontal>.se__item{display:block}.se__horizontal>.se__item .ant-form-item-label{width:100%!important;text-align:left}.se__horizontal>.se__item .se__label{justify-content:normal}.se__horizontal .se__control,.se__horizontal .se__label,.se__vertical .se__control,.se__vertical .se__label{width:100%!important}}.avatar-list,.avatar-list__item,.avatar-list__wrap{display:inline-block}.avatar-list__wrap{margin-left:8px;padding:0;font-size:0}.avatar-list__item{width:28px;height:28px;margin-left:-8px;font-size:12px}.avatar-list__item .ant-avatar{border:1px solid #fff;cursor:pointer}.footer-toolbar,.g2-card__footer,.notice-icon__clear,.prev-next-nav{border-top:1px solid #f0f0f0}.avatar-list__large{width:32px;height:32px}.avatar-list__small{width:22px;height:22px}.avatar-list__mini{width:20px;height:20px}.avatar-list__mini .ant-avatar{width:20px;height:20px;line-height:20px}.avatar-list__mini .ant-avatar-string{font-size:12px;line-height:18px}ellipsis{display:inline}.ellipsis{display:inline-block;width:100%;overflow:hidden;word-break:break-all}.ellipsis__lines{position:relative}.ellipsis__line-clamp{position:relative;display:-webkit-box;overflow:hidden;text-overflow:ellipsis}.ellipsis__shadow{position:absolute;z-index:-999;display:block;color:transparent;opacity:0}.error-collect{padding-right:24px;color:#f5222d;cursor:pointer}.error-collect__count{padding-left:8px}.error-collect-rtl{padding-right:0;padding-left:24px}.error-collect-rtl .error-collect__count{padding-right:8px;padding-left:0}.exception{display:flex;align-items:center;height:100%}.exception__img-block{flex:0 0 62.5%;width:62.5%;padding-right:152px;zoom:1}.exception__img-block::after,.exception__img-block::before{display:table;content:' '}.exception__img-block::after{clear:both;height:0;font-size:0}.exception__img{float:right;width:100%;max-width:430px;height:360px;background-repeat:no-repeat;background-position:50% 50%;background-size:100% 100%}.exception__cont{flex:auto}.alain-default__nav-middle,.footer-toolbar__left{flex:1}.exception__cont-title{margin-bottom:24px;color:#434e59;font-weight:600;font-size:72px;line-height:72px}.exception__cont-desc{margin-bottom:16px;color:rgba(0,0,0,.45);font-size:20px;line-height:28px}.exception__cont-actions .ant-btn:not(:last-child){margin-right:8px}@media screen and (max-width:1200px){.exception__img-block{padding-right:88px}}@media screen and (max-width:576px){.exception{display:block;text-align:center}.exception__img-block{margin:0 auto 24px;padding-right:0}}@media screen and (max-width:480px){.exception__img-block{margin-bottom:-24px;overflow:hidden}}.exception-rtl .exception__cont-actions .ant-btn:not(:last-child){margin-right:0}.footer-toolbar{position:fixed;right:0;bottom:0;z-index:9;display:flex;width:100%;height:56px;padding:0 24px;line-height:56px;background:#fff;box-shadow:0 -1px 2px rgba(0,0,0,.03);transition:all .3s}.full-content{display:block;height:100%;overflow:auto}.full-content__body{overflow:hidden}.global-footer{display:block;margin:48px 0 24px;padding:0 16px;text-align:center}.global-footer__links{margin-bottom:8px}.global-footer__links-item{display:inline-block;color:rgba(0,0,0,.45);transition:all .3s}.global-footer__links-item:not(:last-child){margin-right:40px}.global-footer__links-item:hover{color:rgba(0,0,0,.85)}.global-footer__copyright{color:rgba(0,0,0,.45);font-size:12px}.global-footer-rtl .global-footer__links-item:not(:last-child){margin-right:inherit;margin-left:40px}.notice-icon{width:336px}.notice-icon__btn{display:inline-block;cursor:pointer;transition:all .3s}.notice-icon .ant-popover-inner-content{padding:0}.notice-icon .ant-tabs-bar{margin-bottom:4px}.notice-icon__tab-left .ant-tabs-nav-list .ant-tabs-tab:first-child{margin-left:32px}.notice-icon .ant-list{max-height:400px;overflow:auto}.notice-icon .ant-list-item{padding-right:24px;padding-left:24px;overflow:hidden;cursor:pointer;transition:all .3s}.code-box-demo,.page-header,.page-header .ant-tabs-bar{border-bottom:1px solid #f0f0f0}.notice-icon .ant-list-item:hover{background:#e6f7ff}.notice-icon .ant-list-item-meta{width:100%}.notice-icon .ant-list-item-meta-title{margin-bottom:8px;font-weight:400}.notice-icon .ant-list-item .ant-avatar{margin-top:4px;background:#fff}.notice-icon__notfound{padding:73px 0 88px;color:rgba(0,0,0,.45);text-align:center}.app-icons,.page-header{padding:16px}.notice-icon__clear,.notice-icon__clear:hover{color:rgba(0,0,0,.85)}.notice-icon__notfound-img{display:inline-block;height:76px;margin-bottom:16px}.notice-icon__clear{height:46px;line-height:46px;text-align:center;border-radius:0 0 2px 2px;cursor:pointer;transition:all .3s}.notice-icon__item-desc,.notice-icon__item-time{font-size:12px;line-height:1.66667}.notice-icon__item .ant-badge-count{top:-10px}.notice-icon__item-read{opacity:.4}.notice-icon__item-time{margin-top:4px}.notice-icon__item-extra{float:right;margin-top:-1.5px;margin-right:0;color:rgba(0,0,0,.45);font-weight:400}.page-header{display:block;background-color:#fff}.page-header__wide{max-width:1200px;margin:auto}.page-header .ant-breadcrumb{margin-bottom:8px}.page-header .ant-tabs{margin:0 0 -9px}.page-header__detail{display:flex}.page-header__row{display:flex;width:100%}.page-header__logo{flex:0 1 auto;margin-right:8px;padding-top:1px}.page-header__logo img{display:block;width:28px;height:28px;border-radius:2px}.page-header__title{color:rgba(0,0,0,.85);font-weight:500;font-size:20px}.page-header__title small{padding-left:8px;color:rgba(0,0,0,.4);font-weight:400;font-size:14px}.page-header__action{min-width:266px;margin-left:56px}.page-header__desc,.page-header__title{flex:auto}.page-header__action,.page-header__extra,.page-header__main{flex:0 1 auto}.page-header__main{width:100%}.page-header__action,.page-header__desc,.page-header__extra,.page-header__logo,.page-header__title{margin-bottom:8px}.page-header__action,.page-header__extra{display:flex;justify-content:flex-end}.page-header__extra{min-width:242px;margin-left:88px}@media screen and (max-width:1200px){.page-header__extra{margin-left:44px}}@media screen and (max-width:992px){.page-header__extra{margin-left:20px}}@media screen and (max-width:768px){.page-header__row{display:block}.page-header__action,.page-header__extra{justify-content:start;margin-left:0}}@media screen and (max-width:576px){.page-header__detail{display:block}}@media screen and (max-width:480px){.page-header__action .ant-btn,.page-header__action .ant-btn-group{display:block;margin-bottom:8px}.page-header__action .ant-input-search-enter-button .ant-btn{margin-bottom:0}.page-header__action .ant-btn-group>.ant-btn{display:inline-block;margin-bottom:0}}.page-header-rtl .page-header__logo{margin-right:0;margin-left:8px}.page-header-rtl .page-header__title small{padding-right:8px;padding-left:0}.page-header-rtl .page-header__action{margin-right:56px;margin-left:0}.page-header-rtl .page-header__extra{margin-right:88px;margin-left:0}@media screen and (max-width:1200px){.page-header-rtl .page-header__extra{margin-right:44px;margin-left:0}}@media screen and (max-width:992px){.page-header-rtl .page-header__extra{margin-right:20px;margin-left:0}}.quick-menu{position:fixed;right:-1px;left:auto;z-index:11;display:block;backface-visibility:hidden;transition:margin .3s cubic-bezier(1,0,0,1)}.quick-menu,.quick-menu__ctrl{background-color:#fff;border:1px solid #fff;box-shadow:0 6px 16px -8px rgba(0,0,0,.08),0 9px 28px 0 rgba(0,0,0,.05),0 12px 48px 16px rgba(0,0,0,.03)}.quick-menu__inner{position:relative;padding:0 12px}.quick-menu__ctrl{position:absolute;top:-1px;left:-50px;width:50px;height:50px;text-align:center;border-right:0;border-radius:3px 0 0 3px;cursor:pointer}.quick-menu__ctrl-icon{font-size:20px;line-height:49px}.result{display:block;width:72%;margin:0 auto;text-align:center}.result__icon{margin-bottom:24px;font-size:72px;line-height:72px}.result__icon-success{color:#52c41a}.result__icon-error{color:#ff4d4f}.result__title{margin-bottom:16px;color:rgba(0,0,0,.85);font-weight:500;font-size:24px;line-height:32px}.result__desc{margin-bottom:24px;color:rgba(0,0,0,.45);font-size:14px;line-height:22px}.result__extra{padding:24px 40px;text-align:left;background:#fafafa;border-radius:2px}@media screen and (max-width:480px){.result{width:100%}.result__extra{padding:18px 20px}}.result__actions{margin-top:32px}.result__actions button:not(:last-child){margin-right:8px}.result .ant-steps .ant-steps-head,.result .ant-steps .ant-steps-title{background:#fafafa}.reuse-tab{display:block;background-color:#fff;outline:0;user-select:none}.reuse-tab .ant-tabs-nav .ant-tabs-tab .reuse-tab__op{position:absolute;display:none;margin:0;color:rgba(0,0,0,.85);font-size:10px}.reuse-tab .ant-tabs-nav .ant-tabs-tab:hover .reuse-tab__op{display:block}.reuse-tab .ant-tabs-nav .ant-tabs-tab .reuse-tab__name-width{display:inline-block;overflow:hidden;text-overflow:ellipsis}.reuse-tab .ant-tabs>.ant-tabs-nav{margin:0}.reuse-tab__line{padding:8px;border-bottom:1px solid #d9d9d9}.reuse-tab__line .ant-tabs-nav::before{border-bottom:none}.reuse-tab__line .ant-tabs-nav .ant-tabs-tab{padding:0}.reuse-tab__line .ant-tabs-nav .ant-tabs-tab .reuse-tab__op{top:12px;right:2px}.reuse-tab__line .ant-tabs-nav .ant-tabs-tab .reuse-tab__name{display:inline-block;padding:8px 20px}.reuse-tab__card{padding-top:8px}.reuse-tab__card .ant-tabs-nav-container{padding:0 8px}.reuse-tab__card .ant-tabs-nav .ant-tabs-tab .reuse-tab__op{top:4px;right:4px}.reuse-tab__disabled{opacity:.8}.reuse-tab__cm .ant-menu{border:1px solid #e9e9e9}.tag-select{position:relative;display:block;max-height:36px;margin-left:-8px;overflow:hidden;line-height:1.66667;transition:all .3s;user-select:none}.tag-select__expanded{max-height:200px;transition:all .3s}.tag-select__has-expand{padding-right:50px}.tag-select .ant-tag{margin-top:16px;margin-right:24px}.tag-select__trigger{position:absolute;top:0;right:0;display:flex;align-items:center;margin-right:0!important;color:#1890ff}.tag-select__trigger>.anticon{margin-left:2px;font-size:8px;transition:transform .24s}.tag-select-rtl{margin-right:-8px;margin-left:0}.tag-select-rtl__has-expand{padding-right:0!important;padding-left:50px!important}.tag-select-rtl .tag-select .ant-tag{margin-right:0;margin-left:24px}.tag-select-rtl .tag-select__trigger{right:initial;left:0}.tag-select-rtl .tag-select__trigger-icon{margin-right:0;margin-left:8px}.down-file__not-support{display:none}.loading-backdrop{z-index:9999;background-color:rgba(0,0,0,.15);opacity:1}.loading-default{position:fixed;inset:0;z-index:10000;display:flex;flex-direction:column;align-items:center;justify-content:center}.g2-mini-progress,.g2-pie,g2,g2-bar,g2-chart,g2-custom,g2-gauge,g2-mini-area,g2-mini-bar,g2-single-bar,g2-tag-cloud,g2-timeline{display:block}.loading-default__icon{margin-bottom:8px;color:#1890ff;font-size:24px}.loading-default__text{color:#1890ff}.loading-default__custom{width:64px;height:64px;fill:#fff}.onboarding+.cdk-overlay-container{z-index:99999}.onboarding__mask{position:fixed;inset:0;z-index:99998;background-color:#000;opacity:.5}.onboarding__item,.onboarding__light,.pdf-container{position:absolute}.onboarding__light{z-index:99999;background-color:rgba(255,255,255,.9);animation:2.5s cubic-bezier(.55,.05,.6,.2) 0s infinite normal none running onboardingAnt}.onboarding__light-el{z-index:100000!important}.onboarding__light-ant{transition:all .3s ease-out}.onboarding__footer{margin-top:8px}.onboarding__total{color:rgba(0,0,0,.85)}@keyframes onboardingAnt{0%,33%{box-shadow:#fff 0 0 0 2px,#fff 0 0 0}100%,66%{box-shadow:#fff 0 0 0 2px,rgba(255,255,255,.01) 0 0 0 10px}}.pdf-container{width:100%;height:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.g2-card,.g2-card__top{position:relative}.cell__has-unit{align-items:baseline}.cell__has-default{color:rgba(0,0,0,.45)}.cell__primary{color:#1890ff}.cell__success{color:#52c41a}.cell__danger{color:#ff4d4f}.cell__warning{color:#faad14}.cell__large{font-size:18px}.cell .unit,.cell__small,.g2-card__meta{font-size:12px}.cell[data-type=img] .img:not(:last-child){margin-right:4px}.cell .img{vertical-align:middle;border-radius:4px}.cell .unit{margin-left:2px;color:rgba(0,0,0,.45)}.cell__disabled[data-type=link]>a{color:rgba(0,0,0,.85)}.g2-card__meta,.g2-pie__legend-percent,.g2-pie__total-title{color:rgba(0,0,0,.45)}g2-bar,g2-tag-cloud{width:100%}.g2-card__top{width:100%;overflow:hidden}.g2-card__top-margin{margin-bottom:12px}.g2-card__top-has-margin{margin-bottom:20px}.g2-card__meta{height:22px;line-height:22px}.g2-card__total,.g2-pie__legend-title{color:rgba(0,0,0,.85)}.g2-card__meta-wrap{float:left}.g2-card__meta-action{position:absolute;top:4px;right:0;line-height:1;cursor:pointer}.g2-card__avatar{position:relative;top:4px;float:left;margin-right:20px}.g2-card__avatar img{border-radius:100%}.g2-card__total{height:38px;margin-top:4px;margin-bottom:0;overflow:hidden;font-size:30px;line-height:38px;white-space:nowrap;text-overflow:ellipsis;word-break:break-all}.g2-card__desc{width:100%;margin-bottom:12px}.g2-card__footer{margin-top:8px;padding-top:9px}.g2-card__footer>*{position:relative}.g2-mini-progress{position:relative;width:100%;padding:5px 0}.g2-mini-progress__wrap{position:relative;background-color:#f5f5f5}.g2-mini-progress__value{width:0;height:100%;background-color:#1890ff;border-radius:1px 0 0 1px;transition:all .4s cubic-bezier(.08,.82,.17,1) 0s}.g2-mini-progress__target{position:absolute;top:0;bottom:0}.g2-mini-progress__target-item{position:absolute;top:0;left:0;width:2px;height:4px;border-radius:100px}.g2-pie,.g2-pie__chart{position:relative}.g2-mini-progress__target-item:last-child{top:auto;bottom:0}.g2-pie__legend{position:absolute;top:50%;right:0;min-width:250px;margin:0 20px;padding:0;list-style:none;transform:translateY(-50%)}.g2-pie__legend-item{height:22px;margin-bottom:16px;line-height:22px;cursor:pointer}.g2-pie__mini .g2-pie__total-title,.g2-radar__legend-title{margin-bottom:0;margin-top:4px}.g2-pie__legend-item:last-child{margin-bottom:0}.g2-pie__legend-dot{position:relative;top:-1px;display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:8px}.g2-pie__legend-value{position:absolute;right:0}.g2-pie__legend-has .g2-pie__chart{width:calc(100% - 240px)}.g2-pie__legend-block .g2-pie__chart{width:100%;margin:0 0 32px}.g2-radar__legend-item::after,.number-info:not(:first-child)::after{width:1px;background-color:#f0f0f0;content:''}.g2-pie__legend-block .g2-pie__legend{position:relative;min-width:auto;transform:none}.g2-pie__total{position:absolute;top:50%;left:50%;height:62px;text-align:center;transform:translate(-50%,-50%)}.g2-pie__total-title{height:22px;margin-bottom:8px;font-weight:400;font-size:14px;line-height:22px}.g2-pie__total-stat{display:block;height:32px;color:rgba(0,0,0,.85);font-size:1.2em;line-height:32px;white-space:nowrap}.g2-radar{display:block}.g2-radar__legend{margin-top:16px}.g2-radar__legend-item{position:relative;color:rgba(0,0,0,.45);line-height:22px;text-align:center;cursor:pointer}.g2-radar__legend-item::after{position:absolute;top:8px;right:0;height:40px}.g2-radar__legend-item:last-child::after{display:none}.g2-radar__legend-dot,.g2-water-wave,.number-info,.number-info__value-text,.trend{display:inline-block}.g2-radar__legend-title{padding-left:16px;color:rgba(0,0,0,.85);font-size:24px;line-height:32px}.g2-radar__legend-dot{position:relative;top:-1px;width:6px;height:6px;margin-right:6px;border-radius:6px}.g2-water-wave{position:relative;transform-origin:left}.g2-water-wave__desc{position:absolute;top:32px;left:0;width:100%;text-align:center}.g2-water-wave__desc-title{color:rgba(0,0,0,.45);font-size:14px;line-height:22px}.g2-water-wave__desc-percent{color:rgba(0,0,0,.85);font-size:24px;line-height:32px}.g2-water-wave__canvas{transform:scale(.5);transform-origin:0 0}.number-info__title{margin-bottom:16px;color:rgba(0,0,0,.85);font-size:14px;transition:all .3s}.number-info__title-sub{height:22px;overflow:hidden;color:rgba(0,0,0,.45);font-size:12px;line-height:22px;white-space:nowrap;text-overflow:ellipsis;word-break:break-all}.number-info__value{margin-top:4px;overflow:hidden;font-size:0;white-space:nowrap;text-overflow:ellipsis;word-break:break-all}.number-info__value-suffix{margin-left:4px;color:rgba(0,0,0,.85);font-size:16px;font-style:normal}.number-info__value-text{height:32px;color:rgba(0,0,0,.85);font-size:24px;line-height:32px}.number-info__value-sub{margin-left:32px;color:rgba(0,0,0,.45);font-size:14px;vertical-align:top}.number-info__value-sub .anticon{margin-left:4px;font-size:12px;transform:scale(.82)}.number-info__value-sub .anticon-caret-up{color:#f5222d}.number-info__value-sub .anticon-caret-down{color:#52c41a}.number-info__light .number-info__value-text{color:rgba(0,0,0,.85)}.number-info:not(:first-child){position:relative;margin-left:32px;padding-left:32px}.number-info:not(:first-child)::after{position:absolute;top:0;bottom:0;left:0;margin:8px 0}.trend{font-size:12px;line-height:22px}.trend__down,.trend__up{position:relative;top:1px;margin-left:4px}.trend__down i,.trend__up i{font-size:12px;transform:scale(.83)}.trend__up{color:#f5222d}.trend__down{top:-1px;color:#52c41a}.trend__grey .trend__down,.trend__grey .trend__up{color:rgba(0,0,0,.85)}.trend__reverse .trend__up{color:#52c41a}.trend__reverse .trend__down{color:#f5222d}html{--antd-wave-shadow-color:#1890ff;--scroll-bar:0;direction:ltr}app-root,body,html{height:100%}body{background-color:#f5f7fa}.alain-default{position:relative;display:block;width:100%;height:auto;min-height:100%;overflow-x:hidden}.alain-default__unwrap{margin-right:-24px;margin-left:-24px}@media (max-width:767px){.alain-default__unwrap{margin-right:0;margin-left:0}}.alain-default__content{margin:0 24px 24px}.alain-default__content-title{display:flex;align-items:center;justify-content:space-between;margin-right:-24px;margin-bottom:24px;margin-left:-24px;padding:12px 24px;color:#929292;background-color:#fafbfc;border-bottom:1px solid #efe3e5}.alain-default__content-title>h1{margin-bottom:0;font-weight:400;font-size:18px}.alain-default__content-title>h1>small{display:block;color:#8c8c8c;font-size:12px}.alain-default__content nz-input-group{width:auto}.alain-default__hide-aside .alain-default__content{margin-left:24px!important;transform:none!important}.alain-default__hide-header .alain-default__aside{margin-top:0}@media (min-width:768px){.alain-default__content{margin-left:224px}.alain-default__collapsed .alain-default__sidebar{width:64px}.alain-default__collapsed .alain-default__content{margin-left:88px}[dir=rtl] .alain-default__content{margin-right:224px;margin-left:0}[dir=rtl] .alain-default__collapsed .alain-default__content{margin-right:88px;margin-left:0}}.alain-default__header{z-index:19;display:flex;align-items:center;width:100%;height:64px;padding:0 16px;background-color:#1890ff;box-shadow:0 1px 10px rgba(0,0,0,.2)}.alain-default__header-logo{width:200px;margin-left:-16px;transition:width .2s cubic-bezier(.25,0,.15,1)}.alain-default__header-logo-link{display:block;text-align:center}.alain-default__header-logo-collapsed,.alain-default__header-logo-expanded{max-width:100%;max-height:36px;vertical-align:middle;animation:fadeIn 1s}.alain-default__header-logo-collapsed{display:none}.alain-default__header-logo-expanded{display:inline-block}.alain-default__nav{display:flex;align-items:center;margin:0;padding:0}.alain-default__nav:first-child{margin-right:16px}.alain-default__nav-wrap{display:flex;flex:1;justify-content:space-between}.alain-default__nav>li{display:inline-block;vertical-align:middle}.alain-default__nav nz-badge,.alain-default__nav-item{color:#fff}.alain-default__nav-item{display:block;min-width:50px;padding:8px 2px;line-height:100%;text-align:center;border-radius:2px;outline:0;cursor:pointer;transition:background-color .3s}.alain-default__nav-item:hover{color:#fff;background-color:rgba(255,255,255,.2)}.alain-default__nav-item-icon,.alain-default__nav-item>i{font-size:18px!important;transform:none!important}.alain-default__top-menu-item{display:flex;align-items:center;height:64px;padding:0 16px;border-radius:0}.alain-default__top-menu-item-selected{color:#fff;background-color:rgba(255,255,255,.2)}.alain-default__top-menu-item-disabled{opacity:.5}.alain-default__search{position:relative;display:flex;flex:1;align-items:center;margin:0 24px}.alain-default__search .ant-input{padding-left:0}.alain-default__search .ant-input,.alain-default__search .ant-input-affix-wrapper,.alain-default__search .ant-input-group-addon{color:#fff;background-color:rgba(255,255,255,.2);border:none}.alain-default__search .ant-input-affix-wrapper::placeholder,.alain-default__search .ant-input-group-addon::placeholder,.alain-default__search .ant-input::placeholder{color:#fff;opacity:1}.alain-default__search .ant-input-affix-wrapper .ant-input{background-color:transparent}.alain-default__search .ant-input-affix-wrapper i,.alain-default__search .ant-input-group-addon i{color:#fff;transition:color .3s,transform .4s}.alain-default__search-focus .ant-input,.alain-default__search-focus .ant-input-affix-wrapper,.alain-default__search-focus .ant-input-group-addon{color:#595959;background-color:#f3f3f3}.alain-default__search-focus .ant-input-affix-wrapper::placeholder,.alain-default__search-focus .ant-input-group-addon::placeholder,.alain-default__search-focus .ant-input::placeholder{color:#595959;opacity:1}.alain-default__search-focus .ant-input-affix-wrapper i,.alain-default__search-focus .ant-input-group-addon i{color:#595959;transform:rotate(90deg)}@media (max-width:767px){.alain-default__search{position:absolute;top:0;left:0;z-index:29;align-items:center;width:100%;height:100%;margin:0;padding:0 16px;background-color:#fff;transition:transform .3s}.alain-default__search-toggled{display:flex}.alain-default__search:not(.alain-default__search-toggled){transform:translate3d(0,-105%,0)}}.alain-default__collapsed .alain-default__header-logo{width:64px}.alain-default__collapsed .alain-default__header-logo-collapsed{display:inline-block}.alain-default__collapsed .alain-default__header-logo-expanded{display:none}@media (max-width:767px){.alain-default__header-logo{width:64px}.alain-default__header-logo-collapsed{display:inline}.alain-default__header-logo-expanded{display:none}}[dir=rtl] .alain-default__header-logo{margin-right:-16px;margin-left:0}.alain-default__aside{position:absolute;top:0;bottom:0;z-index:14;width:200px;margin-top:64px;overflow:hidden;background-color:#fff;backface-visibility:hidden;transition:width .2s cubic-bezier(.25,0,.15,1),translate .2s cubic-bezier(.25,0,.15,1);-webkit-overflow-scrolling:touch}.alain-default__aside::after{position:absolute;top:0;right:0;bottom:0;border-right:1px solid #efe3e5;content:''}.alain-default__aside-wrap{display:flex;flex-direction:column;height:100%}.alain-default__aside-inner{flex:1 1 0%;overflow-x:hidden scroll;-webkit-overflow-scrolling:touch;scroll-snap-type:proximity;scroll-snap-points-x:snaplist(100%,200%,300%,400%,500%);scrollbar-width:none}.alain-default__aside-inner::-webkit-scrollbar{width:0;height:0}.alain-default__aside-inner::-webkit-scrollbar-track{box-shadow:inset 0 0 0 transparent}.alain-default__aside-inner::-webkit-scrollbar-thumb{background-color:transparent}.alain-default__aside-link{border-top:1px solid #efe3e5}.alain-default__aside-link-collapsed{padding:8px 0;font-size:16px;text-align:center;cursor:pointer}@media (min-width:768px){.alain-default__collapsed .alain-default__aside{width:64px}}[dir=rtl] .alain-default__aside::after{right:inherit;left:0}@media (max-width:767px){.alain-default__aside,.alain-default__content{transition:transform .3s ease}.alain-default__content{transform:translate3d(200px,0,0)}.alain-default__collapsed .alain-default__aside{transform:translate3d(-100%,0,0)}.alain-default__collapsed .alain-default__content{transform:translateZ(0)}[dir=rtl] .alain-default__content{transform:translate3d(-200px,0,0)}[dir=rtl] .alain-default__collapsed .alain-default__aside{transform:translate3d(100%,0,0)}[dir=rtl] .alain-default__collapsed .alain-default__content{transform:translateZ(0)}}.alain-default__progress-bar{position:fixed;z-index:29;width:100vw;height:4px;overflow:hidden;background:rgba(221,221,221,.4)}.alain-default__progress-bar::after{display:block;width:33.3vw;height:100%;transform-origin:top left;animation:gradcolours 5s steps(1) infinite,loadthird 1s infinite linear;content:' '}@keyframes loadthird{0%{transform:translateX(-33.3vw)}100%{transform:translateX(100vw)}}@keyframes gradcolours{0%{background:linear-gradient(90deg,rgba(232,128,152,0) 0,#e88098 30%,#e88098 50%,#e88098 70%,rgba(232,128,152,0) 100%)}20%{background:linear-gradient(90deg,rgba(132,190,190,0) 0,#84bebe 30%,#84bebe 50%,#84bebe 70%,rgba(132,190,190,0) 100%)}40%{background:linear-gradient(90deg,rgba(233,135,36,0) 0,#e98724 30%,#e98724 50%,#e98724 70%,rgba(233,135,36,0) 100%)}60%{background:linear-gradient(90deg,rgba(175,201,78,0) 0,#afc94e 30%,#afc94e 50%,#afc94e 70%,rgba(175,201,78,0) 100%)}80%{background:linear-gradient(90deg,rgba(98,151,164,0) 0,#6297a4 30%,#6297a4 50%,#6297a4 70%,rgba(98,151,164,0) 100%)}}.sidebar-nav{display:block;margin:0;padding:0;font-size:14px}.sidebar-nav__item{position:relative;display:flex;flex-direction:column;border-left:3px solid transparent;transition:border-left-color .4s ease}.sidebar-nav__item-link{position:relative;display:block;padding:8px 32px 8px 16px;overflow:hidden;color:rgba(0,0,0,.85);white-space:nowrap;text-decoration:none!important;text-overflow:ellipsis;user-select:none}.sidebar-nav__item-link:hover{color:#1890ff}.sidebar-nav__item-icon{display:inline-block;min-width:14px;margin-right:8px;transition:font-size .15s cubic-bezier(.215,.61,.355,1),margin .3s cubic-bezier(.645,.045,.355,1)}.sidebar-nav__item-img,.sidebar-nav__item-svg{width:14px;height:14px}.sidebar-nav__item-text{opacity:1;transition:opacity .3s cubic-bezier(.645,.045,.355,1),width .3s cubic-bezier(.645,.045,.355,1)}.sidebar-nav__item-disabled{cursor:default;opacity:.6}.sidebar-nav__item-disabled:hover{color:rgba(0,0,0,.85)}.sidebar-nav__selected{background-color:#fcfcfc;border-left-color:#1890ff}.sidebar-nav__selected>.sidebar-nav__item-link{color:#1890ff}.sidebar-nav__open>.sidebar-nav__sub{display:block;animation:fadeIn .5s}.sidebar-nav__open>.sidebar-nav__item-link .sidebar-nav__sub-arrow{transform:translateY(-2px)}.sidebar-nav__open>.sidebar-nav__item-link .sidebar-nav__sub-arrow::before{transform:rotate(45deg) translateX(2px)}.sidebar-nav__open>.sidebar-nav__item-link .sidebar-nav__sub-arrow::after{transform:rotate(-45deg) translateX(-2px)}.sidebar-nav__group-title{padding:8px 16px;color:rgba(0,0,0,.45)}.sidebar-nav__sub{display:none;overflow:hidden}.sidebar-nav__sub .sidebar-nav__item{border-left:0!important}.sidebar-nav__sub-arrow{position:absolute;top:50%;right:16px;width:10px;transition:transform .3s cubic-bezier(.645,.045,.355,1)}.sidebar-nav__sub-arrow::after,.sidebar-nav__sub-arrow::before{position:absolute;width:6px;height:1.5px;background:#fff;background-image:linear-gradient(to right,rgba(0,0,0,.85),rgba(0,0,0,.85));border-radius:2px;transition:background-color .3s cubic-bezier(.645,.045,.355,1),transform .3s cubic-bezier(.645,.045,.355,1),top .3s cubic-bezier(.645,.045,.355,1);content:''}.sidebar-nav__sub-arrow::before{transform:rotate(-45deg) translateX(2px)}.sidebar-nav__sub-arrow::after{transform:rotate(45deg) translateX(-2px)}.sidebar-nav .ant-badge{position:absolute;top:8px;right:8px}.sidebar-nav .ant-badge-dot{top:10px!important;right:16px!important}.sidebar-nav__depth1 .sidebar-nav__item-link{padding-left:38px}.sidebar-nav__depth2 .sidebar-nav__item-link{padding-left:46px}.sidebar-nav__depth3 .sidebar-nav__item-link{padding-left:54px}.sidebar-nav__depth4 .sidebar-nav__item-link{padding-left:62px}.sidebar-nav__depth5 .sidebar-nav__item-link{padding-left:70px}.sidebar-nav__floating{position:absolute;z-index:16;display:none;min-width:160px;background-color:#fff;border:1px solid #efe3e5;border-radius:4px}.sidebar-nav__floating .sidebar-nav__item-link{padding-left:16px}.sidebar-nav__floating .sidebar-nav__sub,.sidebar-nav__floating-show{display:block}.sidebar-nav__floating .sidebar-nav__sub-arrow{display:none}.sidebar-nav__floating .sidebar-nav__depth2 .sidebar-nav__item-link{padding-left:24px}.sidebar-nav__floating .sidebar-nav__depth3 .sidebar-nav__item-link{padding-left:32px}#logo,.sidebar-nav__floating .sidebar-nav__depth4 .sidebar-nav__item-link{padding-left:40px}[dir=rtl] .sidebar-nav__item-icon{margin-right:0;margin-left:8px}[dir=rtl] .sidebar-nav .ant-badge{right:inherit;left:16px}@media (min-width:768px){.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item{border:none}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link{display:flex;justify-content:center;padding:16px 0}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link .sidebar-nav__item-icon{margin-right:0;font-size:24px}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link .sidebar-nav__item-img{width:24px;height:24px}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link .sidebar-nav__item-text{display:none;opacity:0}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__group-title{display:none}.alain-default__collapsed .sidebar-nav__sub{display:none!important}.alain-default__collapsed .sidebar-nav__sub-arrow{display:none}[dir=rtl] .alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link .sidebar-nav__item-icon{margin-left:0}}.footer-toolbar__left{margin-left:200px}.alain-default__collapsed .footer-toolbar__left{margin-left:64px}.footer-toolbar__body .alain-default__content{margin-bottom:64px}.full-content__body .alain-default__content router-outlet+*{display:block;width:100%;height:100%}.full-content__hidden-title .alain-default__content-title,.full-content__hidden-title .page-header,.full-content__opened .alain-default__aside,.full-content__opened .alain-default__header,.full-content__opened reuse-tab{display:none!important}.full-content__body .alain-default__content-title{margin-left:-24px}.full-content__opened .alain-default__content{margin:24px!important}.alain-default .page-header{margin-right:-24px;margin-bottom:24px;margin-left:-24px;padding:12px 24px 0;border-bottom:1px solid #efe3e5}@media (max-width:767px){.quick-menu{right:-25px!important}}.reuse-tab{margin:0 -24px}.alain-default__fixed .reuse-tab{position:fixed;top:64px;right:24px;left:224px;z-index:10}.alain-default__collapsed .reuse-tab{left:88px}.alain-default__hide-aside .reuse-tab{left:24px}.alain-default__hide-header .reuse-tab{top:0}@media (min-width:768px){.alain-default__fixed .reuse-tab+router-outlet{display:block;height:52px}}@media (max-width:767px){.alain-default__fixed .reuse-tab{position:unset;width:initial;margin-top:52px}}[dir=rtl] .alain-default__fixed .reuse-tab{right:224px;left:24px}[dir=rtl] .alain-default__collapsed .reuse-tab{right:88px;left:0}.alain-default__nav-item .ant-badge-count{top:6px;right:18px}.app-icons .ant-col-6{padding:16px 0;text-align:center;border-radius:4px;cursor:pointer;transition:background-color .3s}.app-icons .ant-col-6:hover{background-color:#f5f5f5}.app-icons i{padding:15px;font-size:22px;border-radius:50%}.app-icons small{display:block;padding-top:4px;color:#9c9c9c;font-size:14px}.alain-default__aside-user{display:flex;align-items:center;justify-content:center;margin:24px 24px 0;cursor:pointer}.alain-default__aside-user .ant-dropdown-trigger{display:flex;align-items:center}.alain-default__aside-user-info{flex:1;overflow:hidden;color:rgba(0,0,0,.85);white-space:nowrap;text-overflow:ellipsis}.alain-default__aside-user-avatar{margin-right:8px}@media (min-width:768px){.alain-default__collapsed .alain-default__aside-user{width:64px;margin-left:0}.alain-default__collapsed .alain-default__aside-user-info{display:none}.alain-default__collapsed .alain-default__aside-user-avatar{margin:0 auto}}[dir=rtl] .alain-default__aside-user-avatar{margin-right:0;margin-left:8px}@media (min-width:768px){[dir=rtl] .alain-default__collapsed .alain-default__aside-user{margin-right:0}[dir=rtl] .alain-default__collapsed .alain-default__aside-user-avatar{margin:0 auto}}.alain-default__fixed .alain-default__header{position:fixed;top:0;left:0}.alain-default__fixed .alain-default__aside{position:fixed}.alain-default__fixed:not(.alain-default__hide-header) .alain-default__content{margin-top:64px}.nz-resizable-preview{position:absolute;top:0;left:0;z-index:8;border:1px dashed #d1d1d1}.nz-resizable-handle{position:absolute;user-select:none;z-index:9}.nz-resizable-handle-top{width:100%;height:10px;top:-5px;left:0}.nz-resizable-handle-right{width:10px;height:100%;top:0;right:-5px}.nz-resizable-handle-bottom{width:100%;height:10px;bottom:-5px;left:0}.nz-resizable-handle-left{width:10px;height:100%;top:0;left:-5px}.nz-resizable-handle-topRight{width:20px;height:20px;top:-5px;right:-5px;z-index:10}.nz-resizable-handle-bottomRight{width:20px;height:20px;right:-5px;bottom:-5px;z-index:10}.nz-resizable-handle-bottomLeft{width:20px;height:20px;bottom:-5px;left:-5px;z-index:10}.nz-resizable-handle-topLeft{width:20px;height:20px;top:-5px;left:-5px;z-index:10}.nz-resizable .nz-resizable-handle-cursor-type-window.nz-resizable-handle-bottom,.nz-resizable .nz-resizable-handle-cursor-type-window.nz-resizable-handle-top{cursor:ns-resize}.nz-resizable .nz-resizable-handle-cursor-type-window.nz-resizable-handle-left,.nz-resizable .nz-resizable-handle-cursor-type-window.nz-resizable-handle-right{cursor:ew-resize}.nz-resizable .nz-resizable-handle-cursor-type-grid.nz-resizable-handle-bottom,.nz-resizable .nz-resizable-handle-cursor-type-grid.nz-resizable-handle-top{cursor:row-resize}.nz-resizable .nz-resizable-handle-cursor-type-grid.nz-resizable-handle-left,.nz-resizable .nz-resizable-handle-cursor-type-grid.nz-resizable-handle-right{cursor:col-resize}.nz-resizable .nz-resizable-handle-bottomRight,.nz-resizable .nz-resizable-handle-topLeft{cursor:nwse-resize}.nz-resizable .nz-resizable-handle-bottomLeft,.nz-resizable .nz-resizable-handle-topRight{cursor:nesw-resize}.color-palettes{margin:0 1%}.color-palettes-dark{margin:0;padding:0 28px;background-color:#141414}.color-palettes-dark .color-title{color:rgba(255,255,255,.85)}.color-palettes-dark .color-description{color:rgba(255,255,255,.45)}.color-palettes-dark .color-palette{margin:45px 3.5% 45px 0}.color-palettes-dark .color-palette .main-color-item,.color-palettes-dark .color-palette:nth-of-type(3n){margin-right:0}.color-palettes-dark .color-palette .main-color-item:hover{margin-right:-8px}.color-palette{display:inline-block;width:31%;margin:45px 1%}.color-palette-pick{margin:0 0 20px;font-size:20px;text-align:center}.color-palette-picker{margin:24px 0}.color-palette-picker-value{position:relative;top:-3px;margin-left:16px;font-size:14px;font-family:Consolas,sans-serif}.color-palette-picker-validation{position:relative;top:-3px;margin-left:16px;color:#ff4d4f;font-size:13px}.color-palette-picker-validation-dark{margin-left:0}.main-color{text-align:left}.main-color .palette-blue-1{background:#e6f7ff}.main-color .palette-blue-2{background:#bae7ff}.main-color .palette-blue-3{background:#91d5ff}.main-color .palette-blue-4{background:#69c0ff}.main-color .palette-blue-5{background:#40a9ff}.main-color .palette-blue-6{background:#1890ff}.main-color .palette-blue-7{background:#096dd9}.main-color .palette-blue-8{background:#0050b3}.main-color .palette-blue-9{background:#003a8c}.main-color .palette-blue-10{background:#002766}.main-color .palette-purple-1{background:#f9f0ff}.main-color .palette-purple-2{background:#efdbff}.main-color .palette-purple-3{background:#d3adf7}.main-color .palette-purple-4{background:#b37feb}.main-color .palette-purple-5{background:#9254de}.main-color .palette-purple-6{background:#722ed1}.main-color .palette-purple-7{background:#531dab}.main-color .palette-purple-8{background:#391085}.main-color .palette-purple-9{background:#22075e}.main-color .palette-purple-10{background:#120338}.main-color .palette-cyan-1{background:#e6fffb}.main-color .palette-cyan-2{background:#b5f5ec}.main-color .palette-cyan-3{background:#87e8de}.main-color .palette-cyan-4{background:#5cdbd3}.main-color .palette-cyan-5{background:#36cfc9}.main-color .palette-cyan-6{background:#13c2c2}.main-color .palette-cyan-7{background:#08979c}.main-color .palette-cyan-8{background:#006d75}.main-color .palette-cyan-9{background:#00474f}.main-color .palette-cyan-10{background:#002329}.main-color .palette-green-1{background:#f6ffed}.main-color .palette-green-2{background:#d9f7be}.main-color .palette-green-3{background:#b7eb8f}.main-color .palette-green-4{background:#95de64}.main-color .palette-green-5{background:#73d13d}.main-color .palette-green-6{background:#52c41a}.main-color .palette-green-7{background:#389e0d}.main-color .palette-green-8{background:#237804}.main-color .palette-green-9{background:#135200}.main-color .palette-green-10{background:#092b00}.main-color .palette-magenta-1{background:#fff0f6}.main-color .palette-magenta-2{background:#ffd6e7}.main-color .palette-magenta-3{background:#ffadd2}.main-color .palette-magenta-4{background:#ff85c0}.main-color .palette-magenta-5{background:#f759ab}.main-color .palette-magenta-6{background:#eb2f96}.main-color .palette-magenta-7{background:#c41d7f}.main-color .palette-magenta-8{background:#9e1068}.main-color .palette-magenta-9{background:#780650}.main-color .palette-magenta-10{background:#520339}.main-color .palette-red-1{background:#fff1f0}.main-color .palette-red-2{background:#ffccc7}.main-color .palette-red-3{background:#ffa39e}.main-color .palette-red-4{background:#ff7875}.main-color .palette-red-5{background:#ff4d4f}.main-color .palette-red-6{background:#f5222d}.main-color .palette-red-7{background:#cf1322}.main-color .palette-red-8{background:#a8071a}.main-color .palette-red-9{background:#820014}.main-color .palette-red-10{background:#5c0011}.main-color .palette-volcano-1{background:#fff2e8}.main-color .palette-volcano-2{background:#ffd8bf}.main-color .palette-volcano-3{background:#ffbb96}.main-color .palette-volcano-4{background:#ff9c6e}.main-color .palette-volcano-5{background:#ff7a45}.main-color .palette-volcano-6{background:#fa541c}.main-color .palette-volcano-7{background:#d4380d}.main-color .palette-volcano-8{background:#ad2102}.main-color .palette-volcano-9{background:#871400}.main-color .palette-volcano-10{background:#610b00}.main-color .palette-orange-1{background:#fff7e6}.main-color .palette-orange-2{background:#ffe7ba}.main-color .palette-orange-3{background:#ffd591}.main-color .palette-orange-4{background:#ffc069}.main-color .palette-orange-5{background:#ffa940}.main-color .palette-orange-6{background:#fa8c16}.main-color .palette-orange-7{background:#d46b08}.main-color .palette-orange-8{background:#ad4e00}.main-color .palette-orange-9{background:#873800}.main-color .palette-orange-10{background:#612500}.main-color .palette-gold-1{background:#fffbe6}.main-color .palette-gold-2{background:#fff1b8}.main-color .palette-gold-3{background:#ffe58f}.main-color .palette-gold-4{background:#ffd666}.main-color .palette-gold-5{background:#ffc53d}.main-color .palette-gold-6{background:#faad14}.main-color .palette-gold-7{background:#d48806}.main-color .palette-gold-8{background:#ad6800}.main-color .palette-gold-9{background:#874d00}.main-color .palette-gold-10{background:#613400}.main-color .palette-yellow-1{background:#feffe6}.main-color .palette-yellow-2{background:#ffffb8}.main-color .palette-yellow-3{background:#fffb8f}.main-color .palette-yellow-4{background:#fff566}.main-color .palette-yellow-5{background:#ffec3d}.main-color .palette-yellow-6{background:#fadb14}.main-color .palette-yellow-7{background:#d4b106}.main-color .palette-yellow-8{background:#ad8b00}.main-color .palette-yellow-9{background:#876800}.main-color .palette-yellow-10{background:#614700}.main-color .palette-lime-1{background:#fcffe6}.main-color .palette-lime-2{background:#f4ffb8}.main-color .palette-lime-3{background:#eaff8f}.main-color .palette-lime-4{background:#d3f261}.main-color .palette-lime-5{background:#bae637}.main-color .palette-lime-6{background:#a0d911}.main-color .palette-lime-7{background:#7cb305}.main-color .palette-lime-8{background:#5b8c00}.main-color .palette-lime-9{background:#3f6600}.main-color .palette-lime-10{background:#254000}.main-color .palette-geekblue-1{background:#f0f5ff}.main-color .palette-geekblue-2{background:#d6e4ff}.main-color .palette-geekblue-3{background:#adc6ff}.main-color .palette-geekblue-4{background:#85a5ff}.main-color .palette-geekblue-5{background:#597ef7}.main-color .palette-geekblue-6{background:#2f54eb}.main-color .palette-geekblue-7{background:#1d39c4}.main-color .palette-geekblue-8{background:#10239e}.main-color .palette-geekblue-9{background:#061178}.main-color .palette-geekblue-10{background:#030852}.main-color .palette-gray-1{background:#fff}.main-color .palette-gray-2{background:#fafafa}.main-color .palette-gray-3{background:#f5f5f5}.main-color .palette-gray-4{background:#f0f0f0}.main-color .palette-gray-5{background:#d9d9d9}.main-color .palette-gray-6{background:#bfbfbf}.main-color .palette-gray-7{background:#8c8c8c}.main-color .palette-gray-8{background:#595959}.main-color .palette-gray-9{background:#434343}.main-color .palette-gray-10{background:#262626}.main-color .palette-gray-11{background:#1f1f1f}.main-color .palette-gray-12{background:#141414}.drawer-mask,.main-color .palette-gray-13{background:#000}.main-color-item{position:relative;height:44px;margin-right:4px;padding:0 12px;font-size:14px;font-family:Consolas,sans-serif;line-height:44px;cursor:pointer;transition:all .2s}.main-color-item:first-child{border-radius:4px 4px 0 0}.main-color-item:last-child{border-radius:0 0 4px 4px}.main-color-item:hover{margin-right:-8px;border-radius:0 4px 4px 0}.main-color-item .main-color-text{float:left;transition:all .3s}.main-color-item .main-color-value{position:relative;left:3px;float:right;transform:scale(.85);transform-origin:100% 50%;opacity:0;transition:all .3s}.color-title{margin:0 0 24px;color:#5c6b77;font-weight:500;font-size:22px;text-align:center;text-transform:capitalize}#header>.ant-row>.ant-col h1,.color-palette-horizontal-dark .color-palette-picker{margin-bottom:0}.color-description{display:block;color:#777;font-weight:lighter;font-size:14px}.main-color:hover .main-color-value{left:0;opacity:.7}.color-palette-horizontal{width:100%}.color-palette-horizontal-dark{height:303px;padding:32px 28px;background-color:#141414}#header,body{background:#fff}.color-palette-horizontal-dark .color-palette-pick{color:rgba(255,255,255,.65);text-align:left}.color-palette-horizontal-dark .color-palette-pick-hex{color:rgba(255,255,255,.65)}.header-link,body{color:rgba(0,0,0,.85)}.color-palette-horizontal .main-color{display:flex}.color-palette-horizontal .main-color-item{position:relative;flex:1;height:86px;margin-right:0;padding:37px 0 0;line-height:normal;text-align:center;border-radius:0}.color-palette-horizontal .main-color-item .main-color-text{float:none}.color-palette-horizontal .main-color-item:hover{height:96px;margin-top:-10px;border-radius:4px 4px 0 0}.color-palette-horizontal .main-color-value{position:absolute;bottom:0;left:0;width:100%;text-align:center;transform-origin:unset}.color-palette-horizontal .main-color:hover .main-color-item{padding-top:8px}.color-palette-horizontal .main-color:hover .main-color-value{bottom:8px;opacity:.7}article,aside,blockquote,body,button,code,dd,details,div,dl,dt,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,hr,input,legend,li,menu,nav,ol,p,pre,section,td,textarea,th,ul{margin:0;padding:0}ol,ul{list-style:none}body{font-size:14px;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,'Noto Sans',sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji';transition:background 1s cubic-bezier(.075,.82,.165,1)}#logo,#nav,.aside-container,.markdown h1,.markdown h2,.markdown h3,.markdown h4,.markdown h5,.markdown h6{font-family:Avenir,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,'Noto Sans',sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji',sans-serif}a{transition:color .3s ease}#ng-content{display:block;height:100%;transition:transform .3s cubic-bezier(.78,.14,.15,.86)}.fetching{position:absolute;top:16px;left:16px;z-index:99}#demo-toc.toc,#header,#header #nav.ant-menu,#header #search-box,.main-wrapper,.main-wrapper .main-container,.main-wrapper>.ant-row>.main-menu .main-menu-inner>.ant-menu,.main-wrapper>.ant-row>.main-menu .main-menu-inner>.ant-menu.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title::after{transition:all .3s cubic-bezier(.78,.14,.15,.86)}.ant-menu-item-active .header-link{color:#1890ff}#header{position:relative;z-index:10;display:block;max-width:100%;box-shadow:0 2px 8px #f0f1f2}#header .menu-row{display:flex;align-items:center;margin:0}#header .menu-row>*{flex:none;margin:0 16px 0 0}#header .menu-row>:last-child{margin-right:40px}#header .ant-row-rtl .menu-row>:last-child{margin-right:16px;margin-left:40px}#header .header-button{color:rgba(0,0,0,.85);border-color:#d9d9d9}#logo{height:64px;overflow:hidden;color:rgba(0,0,0,.85);font-size:18px;line-height:64px;white-space:nowrap;text-decoration:none}.ant-row-rtl #logo{float:right;padding-right:40px;padding-left:0}#logo img{position:relative;top:-1.5px;height:32px;margin-right:16px}.ant-row-rtl #logo img{margin-right:0;margin-left:16px}#search-box{position:relative;display:flex;flex:auto!important;align-items:center;height:22px;margin:0 auto 0 0!important;padding-left:16px;line-height:22px;white-space:nowrap;border-left:1px solid #f0f0f0;transition:width .5s}.ant-row-rtl #search-box{margin:0 0 0 auto!important;padding-right:16px;padding-left:0;border-right:1px solid #f0f0f0;border-left:none}#search-box>*{flex:auto}#search-box .anticon{position:absolute;top:50%;z-index:1;flex:none;color:#ced4d9;transform:translateY(-50%)}#search-box input{width:100%;max-width:200px;padding-left:20px;font-size:14px;background:0 0;border:0}#search-box.narrow-mode input,.ant-row-rtl #search-box input{padding-right:20px;padding-left:11px}#search-box input::placeholder{color:#a3b1bf}#search-box.narrow-mode{flex:none!important;width:30px}#search-box.narrow-mode:hover .anticon{color:#a3b1bf}#search-box.narrow-mode .anticon{right:0;left:auto}.ant-row-rtl #search-box.narrow-mode .anticon{right:auto;left:0}#search-box.narrow-mode input{max-width:none;cursor:pointer}.ant-row-rtl #search-box.narrow-mode input{padding-right:11px;padding-left:20px}#search-box.narrow-mode.focused{width:500px}#search-box.narrow-mode.focused .anticon{color:#ced4d9}#search-box.narrow-mode.focused input{cursor:text}.algolia-autocomplete .ds-dropdown-menu{border:none;box-shadow:0 3px 6px -4px rgba(0,0,0,.12),0 6px 16px 0 rgba(0,0,0,.08),0 9px 28px 8px rgba(0,0,0,.05)}.algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-]{background:#fff;border:none}.algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-] .algolia-docsearch-suggestion{background:#fff}.algolia-autocomplete .ds-dropdown-menu::before{display:none}.algolia-autocomplete .algolia-docsearch-suggestion--title{color:rgba(0,0,0,.85)}#nav.ant-menu-horizontal>.ant-menu-item-selected a,.algolia-autocomplete .algolia-docsearch-suggestion--highlight{color:#1890ff}.nav-phone-icon{position:absolute;top:25px;right:30px;z-index:1;width:16px;height:22px;cursor:pointer}#nav{height:100%;font-size:14px;border:0}#nav.ant-menu-horizontal{border-bottom:none}#nav.ant-menu-horizontal>.ant-menu-item,#nav.ant-menu-horizontal>.ant-menu-submenu{min-width:72px;height:64px;line-height:60px;border-top:2px solid transparent}#nav.ant-menu-horizontal>.ant-menu-item:hover,#nav.ant-menu-horizontal>.ant-menu-submenu:hover{border-top:2px solid #1890ff;border-bottom:none}#nav.ant-menu-horizontal>.ant-menu-item::after,#nav.ant-menu-horizontal>.ant-menu-submenu::after{content:none}.browser-mockup::after,.browser-mockup::before{content:'';position:absolute}#nav.ant-menu-horizontal .ant-menu-submenu-title .anticon{margin:0}#nav.ant-menu-horizontal>.ant-menu-item-selected,#nav.ant-menu-horizontal>.ant-menu-submenu-open{border-top:2px solid #1890ff;border-bottom:2px solid transparent}#nav>.ant-menu-item,#nav>.ant-menu-submenu{text-align:center}.popover-menu{width:300px}.popover-menu .ant-popover-inner-content{padding:0}.popover-menu .ant-popover-inner-content #nav .ant-menu-item,.popover-menu .ant-popover-inner-content #nav .ant-menu-submenu{text-align:left}.popover-menu .ant-popover-inner-content #nav .ant-menu-item-group-title{padding-left:24px}.popover-menu .ant-popover-inner-content #nav .ant-menu-item-group-list{padding:0 16px}.popover-menu .ant-popover-inner-content #nav .ant-menu-item,.popover-menu .ant-popover-inner-content #nav a{color:#333}@media only screen and (max-width:1200px){#header{text-align:center}#logo{padding-right:0;padding-left:0}#search-box{display:none}}[dir=rtl] .nav-phone-icon{right:inherit;left:30px}.main-wrapper{position:relative;display:block;padding:40px 0 0;background:#fff}.main-container{position:relative;min-height:500px;padding:0 170px 32px 64px;background:#fff}.ant-row-rtl .main-container{padding:0 64px 144px 186px}.main-menu{z-index:1}.main-menu-inner{height:100%;max-height:100vh;overflow:hidden}.main-menu:hover .main-menu-inner{overflow-y:auto}.main-menu>div,.main-menu>div>div{height:100%}.aside-container{min-height:100%;padding-bottom:48px}.aside-container.ant-menu-inline .ant-menu-item a,.aside-container.ant-menu-inline .ant-menu-submenu-title h4,.aside-container.ant-menu-inline>.ant-menu-item{overflow:hidden;font-size:14px;text-overflow:ellipsis}.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title{margin-top:16px;margin-bottom:16px;font-size:13px}.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title::after{position:relative;top:12px;display:block;width:calc(100% - 20px);height:1px;background:#f0f0f0;content:''}.aside-container.ant-menu-inline.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item,.aside-container.ant-menu-inline>.ant-menu-item,.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item,.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title,.aside-container.ant-menu-inline>.ant-menu-submenu>.ant-menu-submenu-title{padding-left:40px!important}.ant-row-rtl .aside-container.ant-menu-inline.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item,.ant-row-rtl .aside-container.ant-menu-inline>.ant-menu-item,.ant-row-rtl .aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item,.ant-row-rtl .aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title,.ant-row-rtl .aside-container.ant-menu-inline>.ant-menu-submenu>.ant-menu-submenu-title{padding-right:40px!important;padding-left:16px!important}.aside-container.ant-menu-inline.ant-menu-inline .ant-menu-item-group-title{padding-left:56px}.ant-row-rtl .aside-container.ant-menu-inline.ant-menu-inline .ant-menu-item-group-title{padding-right:56px;padding-left:16px}.aside-container.ant-menu-inline.ant-menu-inline .ant-menu-item-group-list>.ant-menu-item{padding-left:80px!important}.ant-row-rtl .aside-container.ant-menu-inline.ant-menu-inline .ant-menu-item-group-list>.ant-menu-item{padding-right:80px!important;padding-left:16px!important}.aside-container.ant-menu-inline .ant-menu-item-group:first-child .ant-menu-item-group-title{margin-top:0}.aside-container a[disabled]{color:#ccc}.aside-container .menu-item-link-outside{position:relative}.aside-container .menu-item-link-outside .anticon{position:absolute;top:16px;right:-10px;color:#1890ff;font-size:12px;opacity:0;transition:all .3s}.aside-container .menu-item-link-outside:hover .anticon{opacity:1}.aside-container .chinese{margin-left:6px;font-weight:400;font-size:12px;opacity:.67}@media (max-width:1200px){.main-container{padding-right:48px;padding-left:48px}.ant-row-rtl .main-container{padding-right:24px;padding-left:24px}.main-container .toc-affix{display:none}}.drawer{position:fixed;top:0;z-index:9999;width:100%;height:100%}.drawer>*{transition:transform .3s cubic-bezier(.78,.14,.15,.86),opacity .3s cubic-bezier(.78,.14,.15,.86),box-shaow .3s cubic-bezier(.78,.14,.15,.86),-webkit-transform .3s cubic-bezier(.78,.14,.15,.86)}.drawer-content-wrapper,.drawer-mask{position:absolute;height:100%}.drawer-mask{top:0;width:100%;opacity:0}.drawer-content-wrapper{left:-60vw;width:60vw;background:#fff;box-shadow:2px 0 10px rgba(0,0,0,.15)}.drawer-content{height:100%;overflow:auto}.drawer-button{position:absolute;top:72px;right:-40px;z-index:0;display:flex;align-items:center;justify-content:center;width:41px;height:40px;font-size:16px;line-height:40px;text-align:center;background:#fff;border-radius:0 4px 4px 0;box-shadow:2px 0 8px rgba(0,0,0,.15);cursor:pointer;pointer-events:auto}.drawer-open{transform:translateX(60vw);transition:transform .3s cubic-bezier(.78,.14,.15,.86) 0s;pointer-events:auto}.drawer-open .drawer-mask{opacity:.3}@media (max-width:767px){.drawer .ant-menu-inline .ant-menu-item::after,.drawer .ant-menu-vertical .ant-menu-item::after{right:auto;left:0}}.prev-next-nav{width:calc(100% - 128px);margin-right:64px;margin-left:64px;overflow:hidden;font-size:14px}.hljs,.markdown.api-container{overflow-x:auto}.prev-next-nav>.next-page,.prev-next-nav>.prev-page{float:left;width:50%;height:72px;line-height:72px;text-decoration:none}.ant-row-rtl .prev-next-nav>.next-page,.ant-row-rtl .prev-next-nav>.prev-page{float:right}.ant-row-rtl .prev-next-nav>.next-page .footer-nav-icon-after,.ant-row-rtl .prev-next-nav>.next-page .footer-nav-icon-before,.ant-row-rtl .prev-next-nav>.prev-page .footer-nav-icon-after,.ant-row-rtl .prev-next-nav>.prev-page .footer-nav-icon-before{transform:rotate(180deg)}.prev-next-nav>a.prev-page .footer-nav-icon-before{position:relative;left:0;margin-right:1em;color:rgba(0,0,0,.45);font-size:12px;transition:all .3s}.ant-row-rtl .prev-next-nav>a.prev-page .footer-nav-icon-before{right:0;left:auto;margin-right:0;margin-left:1em}.prev-next-nav>a.prev-page .footer-nav-icon-after{display:none}.prev-next-nav>a.prev-page:hover .footer-nav-icon-before{left:-3px;color:#1890ff}.ant-row-rtl .prev-next-nav>a.prev-page:hover .footer-nav-icon-before{right:-3px;left:auto}.prev-next-nav>.next-page{float:right;text-align:right}.ant-row-rtl .prev-next-nav>.next-page{float:left;text-align:left}.prev-next-nav>.next-page .footer-nav-icon-after{position:relative;right:0;margin-left:1em;color:rgba(0,0,0,.45);font-size:12px;transition:all .3s}.ant-row-rtl .prev-next-nav>.next-page .footer-nav-icon-after{right:auto;left:0;margin-right:1em;margin-left:0}.prev-next-nav>.next-page .footer-nav-icon-before{display:none}.prev-next-nav>.next-page:hover .footer-nav-icon-after{right:-3px;color:#1890ff}.ant-row-rtl .prev-next-nav>.next-page:hover .footer-nav-icon-after{right:auto;left:-3px}.prev-next-nav .chinese{margin-left:.5em}.footer{position:relative;display:block;clear:both;color:rgba(255,255,255,.65);font-size:14px;background-color:#000;box-shadow:0 1000px 0 1000px #fff}.footer .ant-row{text-align:center}.footer__center{display:inline-block;text-align:left}.footer__center>h2{position:relative;margin:0 auto 24px;font-weight:500;font-size:16px}.footer__center>h2>.title-icon{width:27px;margin-right:16px}.footer__center>h2>.anticon{position:absolute;top:3px;left:-22px;color:#aaa;font-size:16px}.footer__center>div{margin:12px 0}.footer__wrap{position:relative;padding:86px 144px 16px;border-bottom:1px solid rgba(255,255,255,.25)}.footer a{color:rgba(255,255,255,.9)}.footer h2,.footer h2>span{color:#fff}.footer__small .footer__wrap{padding:86px 24px 93px}.theme-color{display:inline-block;padding:4px;vertical-align:middle;background:#fff;border-radius:2px;box-shadow:rgba(0,0,0,.1) 0 0 0 1px;cursor:pointer}.theme-color-value{width:80px;height:16px;border-radius:2px}.theme-color-content .ant-popover-inner-content{width:200px;padding:0}@media (max-width:1200px){.footer,.footer .footer__center{text-align:center}.footer .footer__wrap{padding:40px}.footer .footer__wrap .ant-row{padding:0}.footer .footer__wrap .ant-row>div:nth-child(2),.footer .footer__wrap .ant-row>div:nth-child(4){display:none}.footer .footer__wrap .ant-row>div a{font-weight:300}.footer h2{margin-top:16px}}.code-box .code-expand-icon>span,.theme-btn{display:flex}.theme-btn{position:fixed;bottom:102px;z-index:2147483640;flex-direction:column;cursor:pointer}.theme-btn-tooltip .ant-tooltip-inner{min-width:100px}.theme-btn>div{display:block}.theme-btn-active{width:44px;height:44px;color:#1890ff;font-size:22px;line-height:44px}.theme-btn .theme-btn-avatar{color:#000;background-color:#fff;box-shadow:0 3px 6px -4px rgba(0,0,0,.12),0 6px 16px 0 rgba(0,0,0,.08),0 9px 28px 8px rgba(0,0,0,.05);transition:color .3s}.theme-btn .theme-btn-avatar:hover{color:#1890ff}.toc-affix{position:absolute;top:8px;right:20px}.toc-affix .ant-anchor-ink-ball.visible{display:none}.toc-affix .ant-anchor .ant-anchor-link-active{position:relative;z-index:2;margin-left:-2px;border-left:2px solid #1890ff}.toc-affix .ant-anchor-link-title{max-width:120px}.ant-row-rtl .toc-affix{right:auto;left:20px}@media (max-width:767px){.toc-affix{display:none}}.markdown{color:rgba(0,0,0,.85);font-size:14px;line-height:2}.markdown img{max-width:calc(100% - 32px)}.markdown p>img{margin:34px 0;box-shadow:0 8px 20px rgba(143,168,191,.35)}.markdown p>img.markdown-inline-image{margin:0;box-shadow:none}.markdown h1{margin-top:8px;margin-bottom:20px;color:rgba(0,0,0,.85);font-weight:500;font-size:30px;line-height:38px}.markdown h1 .subtitle{margin-left:12px}.ant-row-rtl .markdown h1 .subtitle{margin-right:12px;margin-left:0}.markdown h2{font-size:24px;line-height:32px}.markdown h2,.markdown h3,.markdown h4,.markdown h5,.markdown h6{clear:both;margin:1.6em 0 .6em;color:rgba(0,0,0,.85);font-weight:500}.markdown pre,.markdown.api-container table{font-family:SFMono-Regular,Consolas,'Liberation Mono',Menlo,Courier,monospace}.markdown h3{font-size:18px}.markdown h4{font-size:16px}.markdown h5{font-size:14px}.markdown h6{font-size:12px}.markdown hr{clear:both;height:1px;margin:56px 0;background:#f0f0f0;border:0}.markdown p,.markdown pre{margin:1em 0}.markdown ul>li{margin-left:20px;padding-left:4px;list-style-type:circle}.ant-row-rtl .markdown ul>li{margin-right:20px;margin-left:0;padding-right:4px;padding-left:0}.markdown ul>li:empty{display:none}.markdown ol>li{margin-left:20px;padding-left:4px;list-style-type:decimal}.ant-row-rtl .markdown ol>li{margin-right:20px;margin-left:0;padding-right:4px;padding-left:0}.markdown ol>li>p,.markdown ul>li>p{margin:.2em 0}.markdown code{margin:0 1px;padding:.2em .4em;font-size:.9em;background:#f2f4f5;border:1px solid #f0f0f0;border-radius:3px}.markdown pre{background:#f2f4f5;border-radius:2px}.markdown pre code{margin:0;padding:0;overflow:auto;color:rgba(0,0,0,.85);font-size:11px;background:#f5f5f5;border:none}.markdown b,.markdown strong{font-weight:500}.markdown>table{width:100%;margin:8px 0 16px;table-layout:auto;empty-cells:show;border:1px solid #f0f0f0;border-collapse:collapse;border-spacing:0}.markdown>table tbody tr{transition:all .3s}.markdown>table tbody tr:hover{background:rgba(60,90,100,.04)}.markdown>table th:nth-child(1),.markdown>table th:nth-child(2){white-space:nowrap;word-break:keep-all}.markdown>table th{color:#5c6b77;font-weight:500;background:rgba(0,0,0,.02)}.markdown>table td,.markdown>table th{padding:16px 24px;text-align:left;border:1px solid #f0f0f0}.markdown blockquote{margin:1em 0;padding-left:.8em;color:rgba(0,0,0,.45);font-size:90%;border-left:4px solid #f0f0f0}.ant-row-rtl .markdown blockquote{padding-right:.8em;padding-left:0;border-right:4px solid #f0f0f0;border-left:none}.markdown blockquote p{margin:0}.markdown .anchor{margin-left:8px;opacity:0;transition:opacity .3s}.ant-row-rtl .markdown .anchor{margin-right:8px;margin-left:0}.markdown .waiting{color:#ccc;cursor:not-allowed}.code-box-code-icon,.code-box-code-icon:hover,.markdown a.edit-button i{color:rgba(0,0,0,.45)}.markdown a.edit-button{display:inline-block;margin-left:8px;text-decoration:none}.ant-row-rtl .markdown a.edit-button{margin-right:8px;margin-left:0}#page-404 h1,.markdown a.edit-button i:hover{color:#1890ff}.markdown a.edit-button .anticon{display:block;font-size:16px}.markdown h1:hover .anchor,.markdown h2:hover .anchor,.markdown h3:hover .anchor,.markdown h4:hover .anchor,.markdown h5:hover .anchor,.markdown h6:hover .anchor{display:inline-block;opacity:1}.markdown>br,.markdown>p>br{clear:both}.markdown.api-container table{min-width:720px;margin:2em 0;font-size:11px;line-height:1.66667;table-layout:auto;border:1px solid #f0f0f0}.markdown.api-container table td,.markdown.api-container table th{padding:12px;border-color:#f0f0f0;border-width:1px 0}.markdown.api-container table th{padding-top:14px;white-space:nowrap;border-width:0 0 2px}.markdown.api-container table th:nth-child(2){white-space:normal;word-break:normal}.markdown.api-container table th:nth-child(4),.markdown.api-container table th:nth-child(5){white-space:nowrap;word-break:keep-all}.markdown.api-container table td:first-child{color:#595959;font-weight:600}.markdown.api-container table td:nth-child(3){width:22%;color:#c41d7f;font-size:11px;word-break:break-all}.markdown.api-container table td:nth-child(4){font-size:11px}.markdown.api-container hr{margin:12px 0}.grid-demo .code-box-demo .demo-row,.grid-demo .demo-row,[id^=components-grid-demo-] .code-box-demo .demo-row,[id^=components-grid-demo-] .demo-row{margin-bottom:8px;overflow:hidden;background-image:linear-gradient(90deg,#f5f5f5 4.16666667%,transparent 4.16666667%,transparent 8.33333333%,#f5f5f5 8.33333333%,#f5f5f5 12.5%,transparent 12.5%,transparent 16.66666667%,#f5f5f5 16.66666667%,#f5f5f5 20.83333333%,transparent 20.83333333%,transparent 25%,#f5f5f5 25%,#f5f5f5 29.16666667%,transparent 29.16666667%,transparent 33.33333333%,#f5f5f5 33.33333333%,#f5f5f5 37.5%,transparent 37.5%,transparent 41.66666667%,#f5f5f5 41.66666667%,#f5f5f5 45.83333333%,transparent 45.83333333%,transparent 50%,#f5f5f5 50%,#f5f5f5 54.16666667%,transparent 54.16666667%,transparent 58.33333333%,#f5f5f5 58.33333333%,#f5f5f5 62.5%,transparent 62.5%,transparent 66.66666667%,#f5f5f5 66.66666667%,#f5f5f5 70.83333333%,transparent 70.83333333%,transparent 75%,#f5f5f5 75%,#f5f5f5 79.16666667%,transparent 79.16666667%,transparent 83.33333333%,#f5f5f5 83.33333333%,#f5f5f5 87.5%,transparent 87.5%,transparent 91.66666667%,#f5f5f5 91.66666667%,#f5f5f5 95.83333333%,transparent 95.83333333%)}.grid-demo .ant-row>div,.grid-demo .code-box-demo .ant-row>div,[id^=components-grid-demo-] .ant-row>div,[id^=components-grid-demo-] .code-box-demo .ant-row>div{min-height:30px;margin-top:8px;margin-bottom:8px;color:#fff;text-align:center;border-radius:0}.grid-demo .code-box-demo .ant-row>div:not(.gutter-row),[id^=components-grid-demo-] .code-box-demo .ant-row>div:not(.gutter-row){padding:16px 0;background:#0092ff}.grid-demo .ant-row .demo-col-1,.grid-demo .code-box-demo .ant-row>div:not(.gutter-row):nth-child(2n+1),[id^=components-grid-demo-] .ant-row .demo-col-1,[id^=components-grid-demo-] .code-box-demo .ant-row>div:not(.gutter-row):nth-child(2n+1){background:rgba(0,146,255,.75)}.grid-demo .ant-row .demo-col,.grid-demo .code-box-demo .ant-row .demo-col,[id^=components-grid-demo-] .ant-row .demo-col,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col{margin-top:0;margin-bottom:0;padding:30px 0;color:#fff;font-size:18px;text-align:center;border:none}.grid-demo .ant-row .demo-col-2,.grid-demo .code-box-demo .ant-row .demo-col-2,[id^=components-grid-demo-] .ant-row .demo-col-2,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-2{background:rgba(0,146,255,.5)}.grid-demo .ant-row .demo-col-3,.grid-demo .code-box-demo .ant-row .demo-col-3,[id^=components-grid-demo-] .ant-row .demo-col-3,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-3{color:#999;background:rgba(255,255,255,.2)}.grid-demo .ant-row .demo-col-4,.grid-demo .code-box-demo .ant-row .demo-col-4,[id^=components-grid-demo-] .ant-row .demo-col-4,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-4{background:rgba(0,146,255,.6)}.grid-demo .ant-row .demo-col-5,.grid-demo .code-box-demo .ant-row .demo-col-5,[id^=components-grid-demo-] .ant-row .demo-col-5,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-5{color:#999;background:rgba(255,255,255,.2)}.grid-demo .code-box-demo .height-100,[id^=components-grid-demo-] .code-box-demo .height-100{height:100px;line-height:100px}.grid-demo .code-box-demo .height-50,[id^=components-grid-demo-] .code-box-demo .height-50{height:50px;line-height:50px}.grid-demo .code-box-demo .height-120,[id^=components-grid-demo-] .code-box-demo .height-120{height:120px;line-height:120px}.grid-demo .code-box-demo .height-80,[id^=components-grid-demo-] .code-box-demo .height-80{height:80px;line-height:80px}[id=components-grid-demo-playground]>.code-box-demo .ant-row>div,[id=components-grid-demo-gutter]>.code-box-demo .ant-row>div{margin-top:0;margin-bottom:0}.markdown ul.ant-timeline{line-height:2}.markdown ul.ant-timeline li.ant-timeline-item{margin:0;padding:0 0 30px;list-style:none}.markdown ul.ant-timeline li.ant-timeline-item .ant-timeline-item-content{position:relative;top:-14px;padding-left:32px;font-size:14px}.markdown ul.ant-timeline li.ant-timeline-item .ant-timeline-item-content>h2{margin-top:0;padding-top:4px}.markdown ul.ant-timeline li.ant-timeline-item:first-child{margin-top:40px}code[class*=hljs],pre[class*=hljs]{color:#000;line-height:1.5;direction:ltr;white-space:pre;text-align:left;text-shadow:0 1px #fff;word-wrap:normal;word-break:normal;word-spacing:normal;tab-size:4;hyphens:none;background:0 0}pre[class*=hljs]::selection{text-shadow:none;background:#b3d4fc}code[class*=hljs] ::selection,code[class*=hljs]::selection,pre[class*=hljs] ::selection,pre[class*=hljs]::selection{text-shadow:none;background:#b3d4fc}@media print{code[class*=hljs],pre[class*=hljs]{text-shadow:none}}pre[class*=hljs]{margin:1.2em 0;padding:1em;overflow:auto}:not(pre)>code[class*=hljs],pre[class*=hljs]{background:#f7f7f7}:not(pre)>code[class*=hljs]{padding:.1em;white-space:normal;border-radius:.3em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#708090}.token.punctuation{color:#999}.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#bb0606}.hljscss .token.string,.style .token.string,.token.attr-name,.token.builtin,.token.char,.token.entity,.token.inserted,.token.operator,.token.selector,.token.string,.token.url{color:#690}.token.atrule,.token.attr-value,.token.keyword{color:#07a}.token.function{color:#dd4a68}.token.important,.token.regex,.token.variable{color:#e90}.token.entity{cursor:help}.hljs-comment,.hljs-quote{color:#8e908c}.hljs-deletion,.hljs-name,.hljs-regexp,.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#bb0606}.hljs-built_in,.hljs-builtin-name,.hljs-link,.hljs-literal,.hljs-meta,.hljs-number,.hljs-params,.hljs-type{color:#f5871f}.hljs-attribute{color:#eab700}.hljs-addition,.hljs-bullet,.hljs-string,.hljs-symbol{color:#690}.hljs-section,.hljs-title{color:#dd4a68}.hljs-keyword,.hljs-selector-tag{color:#07a}.hljs{display:block;padding:.5em;color:#4d4d4c;background:#fff}.highlight-wrapper:hover .code-box-code-copy,.highlight-wrapper:hover .code-box-codepen,.highlight-wrapper:hover .code-box-riddle{opacity:.66}.highlight{position:relative;line-height:1.5}.code-box-code-copy.anticon-check{color:#00a854!important}.code-box{position:relative;display:inline-block;width:100%;border:1px solid #f0f0f0;border-radius:2px;transition:all .2s}.code-box .code-box-title,.code-box .code-box-title a{color:rgba(0,0,0,.85);background:#fff}.code-box .code-box-description p{color:rgba(0,0,0,.85)}.code-box a.edit-button .anticon{color:inherit}.code-box a.edit-button .anticon:hover{color:rgba(0,0,0,.75)}.code-box,.code-box .code-box-demo{background-color:#fff}.code-box p{margin:0}.code-box:target{z-index:10;border:1px solid #1890ff}.code-box-expand-trigger{position:relative;margin-left:12px;color:#3b4357;font-size:20px;cursor:pointer;opacity:.75;transition:all .3s}.code-box-expand-trigger:hover{opacity:1}.ant-row-rtl .code-box-expand-trigger{margin-right:8px;margin-left:0}.code-box-title{position:absolute;top:-14px;margin-left:16px;padding:1px 8px;color:#777;background:#fff;border-radius:2px 2px 0 0;transition:background-color .4s}.ant-row-rtl .code-box-title{margin-right:16px;margin-left:0;border-radius:2px 0 0 2px}.code-box-title a,.code-box-title a:hover{color:rgba(0,0,0,.85);font-weight:500;font-size:12px}.code-box-title .edit-button .anticon{font-size:12px}.code-box-description{padding:18px 24px 12px}.code-box .edit-button{position:absolute;top:7px;right:-16px;padding-right:6px;font-size:12px;text-decoration:none;background:inherit;transform:scale(.9)}.ant-row-rtl .code-box .edit-button{right:auto;left:-21px;padding-right:0;padding-left:6px}.code-box-demo{padding:42px 24px 50px;color:rgba(0,0,0,.85)}.code-box iframe{width:100%;border:0}.code-box .highlight:not(:first-child),.code-box-actions{border-top:1px dashed #f0f0f0}.code-box-meta.markdown{position:relative;width:100%;font-size:12px;border-radius:0 0 2px 2px;transition:background-color .4s}.code-box-meta blockquote,.code-box-meta h4,section.code-box-meta p{margin:0}.code-box-meta>p{width:100%;margin:.5em 0;padding-right:25px;font-size:12px;word-break:break-word}.ant-row-rtl .code-box-meta>p{padding-right:0;padding-left:25px}.code-box.expand .code-box-meta{border-bottom:1px dashed #f0f0f0;border-radius:0}.code-box .code-expand-icon-hide,.code-box .code-expand-icon-show{width:16px;max-width:100%;height:16px;cursor:pointer;transition:all .4s}.code-box .code-expand-icon-show{opacity:.55;pointer-events:auto}.code-box .code-expand-icon-show:hover,.code-box .code-expand-icon.ant-tooltip-open .code-expand-icon-show{opacity:1}.code-box .code-expand-icon-hide{display:none;pointer-events:none}.code-box .highlight{position:relative}.code-box .highlight-wrapper{display:none;overflow:auto;border-radius:0 0 2px 2px}.code-box .highlight-wrapper-expand{display:block}.code-box .highlight pre{margin:0;padding:0;background:#fff}.code-box-actions{display:flex;align-items:center;justify-content:center;padding:12px;text-align:center;opacity:.7;transition:opacity .3s}.code-box-actions:hover{opacity:1}.code-box-actions>i{display:flex;margin-left:16px}.ant-row-rtl .code-box-actions>i{margin-right:16px;margin-left:0}.code-box-actions>i:first-child{margin-left:0}.ant-row-rtl .code-box-actions>i:first-child{margin-right:0}.code-box-code-icon{cursor:pointer;transition:all .24s}.code-box-code-icon.anticon-check{color:#52c41a!important;font-weight:700}.code-box pre{width:auto;margin:0}.code-box pre code{display:block;padding:16px 32px;color:rgba(0,0,0,.85);font-size:14px;line-height:2;background:#fff;border:none;border-radius:2px}.browser-mockup{position:relative;font-size:14px;border-top:2em solid rgba(230,230,230,.7);border-radius:3px 3px 0 0;box-shadow:0 .1em .5em 0 rgba(0,0,0,.28)}.browser-mockup::before{top:-1.25em;left:1em;display:block;width:.5em;height:.5em;background-color:#f44;border-radius:50%;box-shadow:0 0 0 2px #f44,1.5em 0 0 2px #9b3,3em 0 0 2px #fb5}.browser-mockup::after{top:-2em;left:5.5em;display:block;width:20%;height:0;border-right:.8em solid transparent;border-bottom:2em solid #fff;border-left:.8em solid transparent}.deprecated,.index-page .page,.index-page .page-banner,.index-page .page-wrapper,h2,h3,h4,h5{position:relative}.browser-mockup .browser-scroll{height:100%;overflow:auto;background:#f5f5f5}.menu-site .ant-dropdown-trigger,.menu-site nz-dropdown,app-docs,app-root{display:block}.ant-btn+.ant-btn{margin-left:8px}.ant-menu-item{outline:0}#page-404{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;width:100%;height:100%;background-image:url(https://os.alipayobjects.com/rmsportal/NOAjOBbnYCrNzrW.jpg);background-repeat:no-repeat;background-position:center;background-size:100%;background-attachment:fixed}#page-404 section{position:absolute;top:48%;left:55%;margin:-103px 0 0 -120px;text-align:center}#page-404 h1{font-weight:500;font-size:120px}#page-404 .links{color:rgba(0,0,0,.85);font-size:18px}#page-404 .links a{margin-left:8px}.deprecated::before{color:#fa541c;font-style:normal;cursor:pointer;content:'D'}h2 .lake-link,h3 .lake-link,h4 .lake-link,h5 .lake-link{position:absolute;top:4px;left:-30px;display:none;align-items:center;justify-content:center;width:30px;height:24px}h2 .lake-link>i,h3 .lake-link>i,h4 .lake-link>i,h5 .lake-link>i{display:inline-block;width:18px;height:18px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1024 1024'%3E%3Cpath fill='rgba(0, 0, 0, 0.45)' d='M574 665.4a8.03 8.03 0 0 0-11.3 0L446.5 781.6c-53.8 53.8-144.6 59.5-204 0-59.5-59.5-53.8-150.2 0-204l116.2-116.2c3.1-3.1 3.1-8.2 0-11.3l-39.8-39.8a8.03 8.03 0 0 0-11.3 0L191.4 526.5c-84.6 84.6-84.6 221.5 0 306s221.5 84.6 306 0l116.2-116.2c3.1-3.1 3.1-8.2 0-11.3L574 665.4zm258.6-474c-84.6-84.6-221.5-84.6-306 0L410.3 307.6a8.03 8.03 0 0 0 0 11.3l39.7 39.7c3.1 3.1 8.2 3.1 11.3 0l116.2-116.2c53.8-53.8 144.6-59.5 204 0 59.5 59.5 53.8 150.2 0 204L665.3 562.6a8.03 8.03 0 0 0 0 11.3l39.8 39.8c3.1 3.1 8.2 3.1 11.3 0l116.2-116.2c84.5-84.6 84.5-221.5 0-306.1zM610.1 372.3a8.03 8.03 0 0 0-11.3 0L372.3 598.7a8.03 8.03 0 0 0 0 11.3l39.6 39.6c3.1 3.1 8.2 3.1 11.3 0l226.4-226.4c3.1-3.1 3.1-8.2 0-11.3l-39.5-39.6z'/%3E%3C/svg%3E%0A")}h2:hover .lake-link,h3:hover .lake-link,h4:hover .lake-link,h5:hover .lake-link{display:flex}[dir=rtl] h2 .lake-link,[dir=rtl] h3 .lake-link,[dir=rtl] h4 .lake-link,[dir=rtl] h5 .lake-link{right:-30px;left:inherit}.index-page{color:#697b8c}.index-page #header{width:100%;max-width:1280px;margin:20px auto 0;padding:0 24px;background:0 0;box-shadow:none}.index-page #nav.ant-menu-horizontal>.ant-menu-item-selected{border-top:none}.index-page .page{width:100%;max-width:1200px;margin:auto;padding:0 24px}.index-page .page-wrapper{overflow:inherit;color:#314659;font-family:Avenir,'Chinese Quote',-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC','Hiragino Sans GB','Microsoft YaHei','Helvetica Neue',Helvetica,Arial,sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol';font-variant:tabular-nums}.index-page .page h2{padding:80px 0 40px;color:#314659;font-weight:400;font-size:38px;line-height:46px;text-align:center}.index-page .page-banner{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:1200px;height:520px;margin:auto;padding:0 24px}.index-page .page-banner__slogan{width:54%;min-width:420px;max-width:560px;min-height:336px;color:#0d1a26}.index-page .page-banner__slogan h1{margin:12px 0;font-size:54px;font-family:Futura,'Helvetica Neue For Number',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'PingFang SC','Hiragino Sans GB','Microsoft YaHei','Helvetica Neue',Helvetica,Arial,sans-serif}.index-page .page-banner__slogan p{font-size:20px}.index-page .page-banner__slogan .ant-btn{min-width:110px;height:40px;margin-right:16px;font-size:16px;border-radius:20px}.index-page .page-banner__slogan-btn{display:flex;align-items:center;margin-top:64px;line-height:40px}.index-page .page-banner__slogan-btn .github{display:flex}.index-page .page-banner__img{position:absolute;right:0;bottom:0;width:46%;max-width:482px;height:420px;overflow:hidden}.index-page .page-banner__img img{max-height:100%;border-radius:8px}.index-page .page-feature{position:relative;padding-bottom:80px;color:#fff}.index-page .page-feature__bg{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;background:#49a9ee;transform:skewY(-4.5deg)}.index-page .page-feature__bg-bottom{position:absolute;right:0;bottom:0;left:0;height:200px;background:#49a9ee}.index-page .page-feature h2,.index-page .page-feature h3{color:#fff}.index-page .page-feature h2{padding-top:100px}.index-page .page-feature h3{font-size:18px}.index-page .page-feature__item{display:flex;height:100px;margin-bottom:56px}.index-page .page-feature .anticon{margin-right:16px;padding-top:8px;font-size:36px}.index-page .page-theme{margin-bottom:48px;overflow:hidden;background:#fff}.index-page .page-theme__item{display:block;margin-bottom:32px;color:#314659;text-align:center}.index-page .page-theme__item:hover{color:#49a9ee}.index-page .page-theme__item img{max-width:80%}.index-page .page-theme__item h3,.index-page .page-theme__item p{margin-top:16px}@media (max-width:991px){.index-page #logo{padding-left:0}.index-page .page-banner__slogan{width:100%;min-width:100%;max-width:100%;text-align:center}.index-page .page-banner__slogan-btn{flex-wrap:wrap;justify-content:center}.index-page .page-banner__slogan-btn>a,.index-page .page-banner__slogan-btn>github-button{margin-bottom:16px}.index-page .page-banner__img{display:none}.index-page .page-feature__item{flex-direction:column;text-align:center}.index-page .page-feature__item .anticon{margin:0 0 16px}[dir=rtl] .index-page #logo{float:left}}[dir=rtl] .index-page .page-banner__slogan .ant-btn,[dir=rtl] .index-page .page-feature .anticon{margin-right:0;margin-left:16px}[dir=rtl] .index-page .page-banner__img{right:initial;left:0}[dir=rtl] .index-page .page-feature__bg{transform:skewY(4.5deg)}#header .ant-row-rtl github-button .gh-count{display:none!important}.copy-import-module{padding:2px 6px;color:#fff;font-size:12px;background:#ff4d4f;border-radius:34px;cursor:pointer}.menu-deprecated .ant-badge{color:#ff4d4f;opacity:.5}[data-theme=dark] input:-webkit-autofill,[data-theme=dark] input:-webkit-autofill:focus,[data-theme=dark] input:-webkit-autofill:hover,[data-theme=dark] select:-webkit-autofill,[data-theme=dark] select:-webkit-autofill:focus,[data-theme=dark] select:-webkit-autofill:hover,[data-theme=dark] textarea:-webkit-autofill,[data-theme=dark] textarea:-webkit-autofill:focus,[data-theme=dark] textarea:-webkit-autofill:hover{border:1px solid #d9d9d9;-webkit-text-fill-color:rgba(0,0,0,.85);box-shadow:none;transition:background-color 5000s ease-in-out 0s}[data-theme=dark] #header,[data-theme=dark] .drawer-button{box-shadow:0 2px 8px 0 rgba(0,0,0,.65)}[data-theme=dark] #search-box input::placeholder{color:rgba(255,255,255,.3)}@media (max-width:767px){[data-theme=dark] .header-menu .menu-site{background:0 0}}[data-theme=dark] .toc-affix .ant-affix{background:#fff}[data-theme=dark] :not(pre)>code[class*=language-],[data-theme=dark] pre[class*=language-]{color:rgba(255,255,255,.65);background:#262626}[data-theme=dark] .code-box{border:1px solid #f0f0f0}[data-theme=dark] .code-box .markdown pre{margin:.5em 0;padding:6px 12px}[data-theme=dark] .code-box .markdown pre code{margin:0;background:#262626}[data-theme=dark] .code-box-debug{border-color:#d3adf7}[data-theme=dark] .code-box-expand-trigger{position:relative;margin-left:12px;color:#fff;font-size:20px;cursor:pointer;opacity:.45;transition:all .3s}[data-theme=dark] .code-box-expand-trigger:hover{opacity:.65}[data-theme=dark] .code-box-demo{border-bottom:1px solid #f0f0f0}[data-theme=dark] .code-box-codepen{background:url(https://gw.alipayobjects.com/zos/antfincdn/1B3MOCiI5F/OtZslpOjYXijshDERXwc.svg) center/14px no-repeat}[data-theme=dark] .code-box-riddle{background:url(https://gw.alipayobjects.com/zos/antfincdn/NByOhhT9rO/DlHbxMCyeuyOrqOdbgik.svg) center/14px no-repeat}[data-theme=dark] .code-box-codesandbox{background:url(https://gw.alipayobjects.com/zos/antfincdn/hNEf2p1ZnS/aaYmtdDyHSCkXyLZVgGK.svg) center/14px no-repeat}[data-theme=dark] .code-box .highlight pre{background:#fff}[data-theme=dark] ul.anticons-list li{color:#acacac}[data-theme=dark] ul.anticons-list li.TwoTone:hover{background-color:#15395b}[data-theme=dark] ul.anticons-list li:hover .anticon{color:#fff}[data-theme=dark] .markdown code,[data-theme=dark] .markdown pre,[data-theme=dark] .markdown pre code,[data-theme=dark] .markdown.api-container table tbody tr:hover{background:#262626}[data-theme=dark] .markdown code{background:rgba(255,255,255,.08)}[data-theme=dark] .prev-next-nav>a.prev-page .footer-nav-icon-before{color:rgba(255,255,255,.45)}[data-theme=dark] .prev-next-nav>a.prev-page:hover .footer-nav-icon-before{left:-3px;color:#1890ff}[data-theme=dark] .prev-next-nav>.next-page .footer-nav-icon-after{color:rgba(255,255,255,.45)}[data-theme=dark] .prev-next-nav>.next-page:hover .footer-nav-icon-after{right:-3px;color:#1890ff}[data-theme=dark] .grid-demo .code-box-demo .demo-row,[data-theme=dark] .grid-demo .demo-row,[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .demo-row,[data-theme=dark] [id^=components-grid-demo-] .demo-row{background-image:linear-gradient(90deg,#1d1d1d 4.16666667%,transparent 4.16666667%,transparent 8.33333333%,#1d1d1d 8.33333333%,#1d1d1d 12.5%,transparent 12.5%,transparent 16.66666667%,#1d1d1d 16.66666667%,#1d1d1d 20.83333333%,transparent 20.83333333%,transparent 25%,#1d1d1d 25%,#1d1d1d 29.16666667%,transparent 29.16666667%,transparent 33.33333333%,#1d1d1d 33.33333333%,#1d1d1d 37.5%,transparent 37.5%,transparent 41.66666667%,#1d1d1d 41.66666667%,#1d1d1d 45.83333333%,transparent 45.83333333%,transparent 50%,#1d1d1d 50%,#1d1d1d 54.16666667%,transparent 54.16666667%,transparent 58.33333333%,#1d1d1d 58.33333333%,#1d1d1d 62.5%,transparent 62.5%,transparent 66.66666667%,#1d1d1d 66.66666667%,#1d1d1d 70.83333333%,transparent 70.83333333%,transparent 75%,#1d1d1d 75%,#1d1d1d 79.16666667%,transparent 79.16666667%,transparent 83.33333333%,#1d1d1d 83.33333333%,#1d1d1d 87.5%,transparent 87.5%,transparent 91.66666667%,#1d1d1d 91.66666667%,#1d1d1d 95.83333333%,transparent 95.83333333%)}[data-theme=dark] .grid-demo .code-box-demo .ant-row>div:not(.gutter-row),[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row>div:not(.gutter-row){padding:16px 0;background:#028ac8}[data-theme=dark] .grid-demo .ant-row .demo-col-1,[data-theme=dark] .grid-demo .code-box-demo .ant-row>div:not(.gutter-row):nth-child(2n+1),[data-theme=dark] [id^=components-grid-demo-] .ant-row .demo-col-1,[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row>div:not(.gutter-row):nth-child(2n+1){background:rgba(0,136,198,.7)}[data-theme=dark] .grid-demo .ant-row .demo-col,[data-theme=dark] .grid-demo .code-box-demo .ant-row .demo-col,[data-theme=dark] [id^=components-grid-demo-] .ant-row .demo-col,[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row .demo-col{margin-top:0;margin-bottom:0;padding:30px 0;color:#000;font-size:18px;text-align:center;border:none}[data-theme=dark] .grid-demo .ant-row .demo-col-3,[data-theme=dark] .grid-demo .ant-row .demo-col-5,[data-theme=dark] .grid-demo .code-box-demo .ant-row .demo-col-3,[data-theme=dark] .grid-demo .code-box-demo .ant-row .demo-col-5,[data-theme=dark] [id^=components-grid-demo-] .ant-row .demo-col-3,[data-theme=dark] [id^=components-grid-demo-] .ant-row .demo-col-5,[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-3,[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-5{color:rgba(0,0,0,.45);background:unset}[data-theme=dark] .markdown>table th{color:rgba(255,255,255,.65);background:#1d1d1d}[data-theme=dark] .copied-code{background:rgba(255,255,255,.08)}[data-theme=dark] .browser-mockup.with-url::after{background-color:#fff}[data-theme=dark] .browser-mockup{border-top:2em solid #262626}[data-theme=dark] .browser-mockup::before{background-color:#fb4742;box-shadow:0 0 0 2px #fb4742,1.5em 0 0 2px #99bc2e,3em 0 0 2px #ffba5a}[data-theme=dark] .browser-mockup::after{border-bottom:2em solid #fff}[data-theme=dark] .browser-scroll{background:#262626}[data-theme=dark] .algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-],[data-theme=dark] .algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-] .algolia-docsearch-suggestion{background:#fff}[data-theme=dark] .algolia-autocomplete .ds-dropdown-menu .ds-suggestion.ds-cursor .algolia-docsearch-suggestion:not(.suggestion-layout-simple) .algolia-docsearch-suggestion--content{background-color:rgba(255,255,255,.08)}[data-theme=dark] .algolia-autocomplete .algolia-docsearch-suggestion--category-header{color:rgba(255,255,255,.65);border-bottom:1px solid #f0f0f0}[data-theme=dark] .algolia-autocomplete .algolia-docsearch-suggestion--content::before,[data-theme=dark] .algolia-autocomplete .algolia-docsearch-suggestion--subcategory-column::before{background:#f0f0f0}[data-theme=dark] code[class*=hljs],[data-theme=dark] pre[class*=hljs]{text-shadow:none}[data-theme=dark] .hljs-comment,[data-theme=dark] .hljs-quote{color:#b6b18b}[data-theme=dark] .hljs-deletion,[data-theme=dark] .hljs-name,[data-theme=dark] .hljs-regexp,[data-theme=dark] .hljs-selector-class,[data-theme=dark] .hljs-selector-id,[data-theme=dark] .hljs-tag,[data-theme=dark] .hljs-template-variable,[data-theme=dark] .hljs-variable{color:#eb3c54}[data-theme=dark] .hljs-built_in,[data-theme=dark] .hljs-builtin-name,[data-theme=dark] .hljs-link,[data-theme=dark] .hljs-literal,[data-theme=dark] .hljs-meta,[data-theme=dark] .hljs-number,[data-theme=dark] .hljs-params,[data-theme=dark] .hljs-type{color:#e7ce56}[data-theme=dark] .hljs-attribute{color:#ee7c2b}[data-theme=dark] .hljs-addition,[data-theme=dark] .hljs-bullet,[data-theme=dark] .hljs-string,[data-theme=dark] .hljs-symbol{color:#1890ff}[data-theme=dark] .hljs-section,[data-theme=dark] .hljs-title{color:#78bb65}[data-theme=dark] .hljs-keyword,[data-theme=dark] .hljs-selector-tag{color:#b45ea4}[data-theme=dark] .hljs{display:block;padding:.5em;overflow-x:auto;color:#c0c5ce;background:#1c1d21}[data-theme=dark] .hljs-strong{font-weight:700}[data-theme=dark].index-page{background:#fff}[data-theme=dark].index-page #header{box-shadow:none}[data-theme=dark].index-page .page-banner__slogan{color:rgba(0,0,0,.85)}.ant-affix{scrollbar-color:rgba(0,0,0,.3) #6e6e6e;scrollbar-width:thin}.ant-affix::-webkit-scrollbar{width:6px;height:6px}.ant-affix::-webkit-scrollbar-track{box-shadow:inset 0 0 6px rgba(0,0,0,.3)}.ant-affix::-webkit-scrollbar-thumb{background-color:#6e6e6e;outline:#333 solid 1px} \ No newline at end of file +a,a:active,a:focus,a:hover{outline:0;text-decoration:none}dl,h1,h2,h3,h4,h5,h6,ol,p,pre,ul{margin-top:0}address,dl,ol,p,pre,ul{margin-bottom:1em}.ant-avatar,img{vertical-align:middle}.ant-btn,[role=button],a,area,button,html,input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}pre,textarea{overflow:auto}dd,h1,h2,h3,h4,h5,h6,legend{margin-bottom:.5em}.ant-badge-status,progress,sub,sup{vertical-align:baseline}[ant-click-animating-without-extra-node=true],[ant-click-animating=true],sub,sup{position:relative}.ant-carousel .slick-slider,.cdk-overlay-backdrop,html{-webkit-tap-highlight-color:transparent}[class*=ant-] input::-ms-clear,[class*=ant-] input::-ms-reveal,[class*=ant-]::-ms-clear,[class^=ant-] input::-ms-clear,[class^=ant-] input::-ms-reveal,[class^=ant-]::-ms-clear{display:none}body,html{width:100%}input::-ms-clear,input::-ms-reveal{display:none}*,::after,::before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar}@-ms-viewport{width:device-width}body{font-variant:tabular-nums;line-height:1.66667;font-feature-settings:tnum}[tabindex='-1']:focus{outline:0!important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{color:rgba(0,0,0,.85);font-weight:500}abbr[data-original-title],abbr[title]{text-decoration:underline;text-decoration:underline dotted;border-bottom:0;cursor:help}address{font-style:normal;line-height:inherit}.font-italic,.hljs-emphasis,.token.italic,[data-theme=dark] .hljs-emphasis,dfn{font-style:italic}input[type=number],input[type=text],input[type=password],textarea{-webkit-appearance:none}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:500}dd{margin-left:0}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{font-size:75%;line-height:0}sub{bottom:-.25em}sup{top:-.5em}a{color:#1890ff;background-color:transparent;cursor:pointer;-webkit-text-decoration-skip:objects}a:hover{color:#40a9ff}a:active{color:#096dd9}a[disabled]{color:rgba(0,0,0,.25);cursor:not-allowed}code,kbd,pre,samp{font-size:1em;font-family:SFMono-Regular,Consolas,'Liberation Mono',Menlo,Courier,monospace}img{border-style:none}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;color:rgba(0,0,0,.45);text-align:left;caption-side:bottom}button,input,optgroup,select,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{resize:vertical}fieldset{min-width:0}legend{display:block;width:100%;max-width:100%;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}.ant-input-number-handler-down-inner,.ant-input-number-handler-up-inner,.ant-select-arrow,.ant-select-multiple .ant-select-selection-item-remove,.anticon{text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}.clearfix::after,.clearfix::before{display:table;content:''}mark{padding:.2em;background-color:#feffe6}::selection{color:#fff;background:#1890ff}.clearfix::after{clear:both}.anticon,.anticon svg{display:inline-block}.anticon{color:inherit;font-style:normal;line-height:0;text-align:center;text-transform:none;vertical-align:-.125em}.anticon>*{line-height:1}.anticon::before{display:none}.anticon .anticon-icon{display:block}.anticon>.anticon{line-height:0;vertical-align:0}.anticon[tabindex]{cursor:pointer}.anticon-spin,.anticon-spin::before{display:inline-block;animation:loadingCircle 1s infinite linear}.ant-fade-appear,.ant-fade-enter,.ant-fade-leave{animation-timing-function:linear}.ant-fade-appear,.ant-fade-enter,.ant-fade-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-fade-appear.ant-fade-appear-active,.ant-fade-enter.ant-fade-enter-active{animation-name:antFadeIn;animation-play-state:running}.ant-fade-leave.ant-fade-leave-active{animation-name:antFadeOut;animation-play-state:running;pointer-events:none}.ant-fade-appear,.ant-fade-enter{opacity:0}@keyframes antFadeIn{0%{opacity:0}100%{opacity:1}}@keyframes antFadeOut{0%{opacity:1}100%{opacity:0}}.ant-move-up-appear,.ant-move-up-enter,.ant-move-up-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-move-up-appear.ant-move-up-appear-active,.ant-move-up-enter.ant-move-up-enter-active{animation-name:antMoveUpIn;animation-play-state:running}.ant-move-up-leave.ant-move-up-leave-active{animation-name:antMoveUpOut;animation-play-state:running;pointer-events:none}.ant-move-up-appear,.ant-move-up-enter{opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-move-up-leave{animation-timing-function:cubic-bezier(.6,.04,.98,.34)}.ant-move-down-appear,.ant-move-down-enter,.ant-move-down-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-move-down-appear.ant-move-down-appear-active,.ant-move-down-enter.ant-move-down-enter-active{animation-name:antMoveDownIn;animation-play-state:running}.ant-move-down-leave.ant-move-down-leave-active{animation-name:antMoveDownOut;animation-play-state:running;pointer-events:none}.ant-move-down-appear,.ant-move-down-enter{opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-move-down-leave{animation-timing-function:cubic-bezier(.6,.04,.98,.34)}.ant-move-left-appear,.ant-move-left-enter,.ant-move-left-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-move-left-appear.ant-move-left-appear-active,.ant-move-left-enter.ant-move-left-enter-active{animation-name:antMoveLeftIn;animation-play-state:running}.ant-move-left-leave.ant-move-left-leave-active{animation-name:antMoveLeftOut;animation-play-state:running;pointer-events:none}.ant-move-left-appear,.ant-move-left-enter{opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-move-left-leave{animation-timing-function:cubic-bezier(.6,.04,.98,.34)}.ant-move-right-appear,.ant-move-right-enter,.ant-move-right-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-move-right-appear.ant-move-right-appear-active,.ant-move-right-enter.ant-move-right-enter-active{animation-name:antMoveRightIn;animation-play-state:running}.ant-move-right-leave.ant-move-right-leave-active{animation-name:antMoveRightOut;animation-play-state:running;pointer-events:none}.ant-move-right-appear,.ant-move-right-enter{opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-move-right-leave{animation-timing-function:cubic-bezier(.6,.04,.98,.34)}@keyframes antMoveDownIn{0%{transform:translateY(100%);transform-origin:0 0;opacity:0}100%{transform:translateY(0);transform-origin:0 0;opacity:1}}@keyframes antMoveDownOut{0%{transform:translateY(0);transform-origin:0 0;opacity:1}100%{transform:translateY(100%);transform-origin:0 0;opacity:0}}@keyframes antMoveLeftIn{0%{transform:translateX(-100%);transform-origin:0 0;opacity:0}100%{transform:translateX(0);transform-origin:0 0;opacity:1}}@keyframes antMoveLeftOut{0%{transform:translateX(0);transform-origin:0 0;opacity:1}100%{transform:translateX(-100%);transform-origin:0 0;opacity:0}}@keyframes antMoveRightIn{0%{transform:translateX(100%);transform-origin:0 0;opacity:0}100%{transform:translateX(0);transform-origin:0 0;opacity:1}}@keyframes antMoveRightOut{0%{transform:translateX(0);transform-origin:0 0;opacity:1}100%{transform:translateX(100%);transform-origin:0 0;opacity:0}}@keyframes antMoveUpIn{0%{transform:translateY(-100%);transform-origin:0 0;opacity:0}100%{transform:translateY(0);transform-origin:0 0;opacity:1}}@keyframes antMoveUpOut{0%{transform:translateY(0);transform-origin:0 0;opacity:1}100%{transform:translateY(-100%);transform-origin:0 0;opacity:0}}@keyframes loadingCircle{100%{transform:rotate(360deg)}}.ant-click-animating-node,[ant-click-animating-without-extra-node=true]::after{position:absolute;top:0;right:0;bottom:0;left:0;display:block;border-radius:inherit;box-shadow:0 0 0 0 #1890ff;box-shadow:0 0 0 0 var(--antd-wave-shadow-color);opacity:.2;animation:fadeEffect 2s cubic-bezier(.08,.82,.17,1),waveEffect .4s cubic-bezier(.08,.82,.17,1);animation-fill-mode:forwards;content:'';pointer-events:none}@keyframes waveEffect{100%{box-shadow:0 0 0 #1890ff;box-shadow:0 0 0 6px var(--antd-wave-shadow-color)}}@keyframes fadeEffect{100%{opacity:0}}.ant-slide-up-appear,.ant-slide-up-enter,.ant-slide-up-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-slide-up-appear.ant-slide-up-appear-active,.ant-slide-up-enter.ant-slide-up-enter-active{animation-name:antSlideUpIn;animation-play-state:running}.ant-slide-up-leave.ant-slide-up-leave-active{animation-name:antSlideUpOut;animation-play-state:running;pointer-events:none}.ant-slide-up-appear,.ant-slide-up-enter{opacity:0;animation-timing-function:cubic-bezier(.23,1,.32,1)}.ant-slide-up-leave{animation-timing-function:cubic-bezier(.755,.05,.855,.06)}.ant-slide-down-appear,.ant-slide-down-enter,.ant-slide-down-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-slide-down-appear.ant-slide-down-appear-active,.ant-slide-down-enter.ant-slide-down-enter-active{animation-name:antSlideDownIn;animation-play-state:running}.ant-slide-down-leave.ant-slide-down-leave-active{animation-name:antSlideDownOut;animation-play-state:running;pointer-events:none}.ant-slide-down-appear,.ant-slide-down-enter{opacity:0;animation-timing-function:cubic-bezier(.23,1,.32,1)}.ant-slide-down-leave{animation-timing-function:cubic-bezier(.755,.05,.855,.06)}.ant-slide-left-appear,.ant-slide-left-enter,.ant-slide-left-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-slide-left-appear.ant-slide-left-appear-active,.ant-slide-left-enter.ant-slide-left-enter-active{animation-name:antSlideLeftIn;animation-play-state:running}.ant-slide-left-leave.ant-slide-left-leave-active{animation-name:antSlideLeftOut;animation-play-state:running;pointer-events:none}.ant-slide-left-appear,.ant-slide-left-enter{opacity:0;animation-timing-function:cubic-bezier(.23,1,.32,1)}.ant-slide-left-leave{animation-timing-function:cubic-bezier(.755,.05,.855,.06)}.ant-slide-right-appear,.ant-slide-right-enter,.ant-slide-right-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-slide-right-appear.ant-slide-right-appear-active,.ant-slide-right-enter.ant-slide-right-enter-active{animation-name:antSlideRightIn;animation-play-state:running}.ant-slide-right-leave.ant-slide-right-leave-active{animation-name:antSlideRightOut;animation-play-state:running;pointer-events:none}.ant-slide-right-appear,.ant-slide-right-enter{opacity:0;animation-timing-function:cubic-bezier(.23,1,.32,1)}.ant-slide-right-leave{animation-timing-function:cubic-bezier(.755,.05,.855,.06)}@keyframes antSlideUpIn{0%{transform:scaleY(.8);transform-origin:0 0;opacity:0}100%{transform:scaleY(1);transform-origin:0 0;opacity:1}}@keyframes antSlideUpOut{0%{transform:scaleY(1);transform-origin:0 0;opacity:1}100%{transform:scaleY(.8);transform-origin:0 0;opacity:0}}@keyframes antSlideDownIn{0%{transform:scaleY(.8);transform-origin:100% 100%;opacity:0}100%{transform:scaleY(1);transform-origin:100% 100%;opacity:1}}@keyframes antSlideDownOut{0%{transform:scaleY(1);transform-origin:100% 100%;opacity:1}100%{transform:scaleY(.8);transform-origin:100% 100%;opacity:0}}@keyframes antSlideLeftIn{0%{transform:scaleX(.8);transform-origin:0 0;opacity:0}100%{transform:scaleX(1);transform-origin:0 0;opacity:1}}@keyframes antSlideLeftOut{0%{transform:scaleX(1);transform-origin:0 0;opacity:1}100%{transform:scaleX(.8);transform-origin:0 0;opacity:0}}@keyframes antSlideRightIn{0%{transform:scaleX(.8);transform-origin:100% 0;opacity:0}100%{transform:scaleX(1);transform-origin:100% 0;opacity:1}}@keyframes antSlideRightOut{0%{transform:scaleX(1);transform-origin:100% 0;opacity:1}100%{transform:scaleX(.8);transform-origin:100% 0;opacity:0}}.ant-zoom-appear,.ant-zoom-enter,.ant-zoom-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-appear.ant-zoom-appear-active,.ant-zoom-enter.ant-zoom-enter-active{animation-name:antZoomIn;animation-play-state:running}.ant-zoom-leave.ant-zoom-leave-active{animation-name:antZoomOut;animation-play-state:running;pointer-events:none}.ant-zoom-appear,.ant-zoom-enter{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-appear-prepare,.ant-zoom-enter-prepare{transform:none}.ant-zoom-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-big-appear,.ant-zoom-big-enter,.ant-zoom-big-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-big-appear.ant-zoom-big-appear-active,.ant-zoom-big-enter.ant-zoom-big-enter-active{animation-name:antZoomBigIn;animation-play-state:running}.ant-zoom-big-leave.ant-zoom-big-leave-active{animation-name:antZoomBigOut;animation-play-state:running;pointer-events:none}.ant-zoom-big-appear,.ant-zoom-big-enter{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-big-appear-prepare,.ant-zoom-big-enter-prepare{transform:none}.ant-zoom-big-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-big-fast-appear,.ant-zoom-big-fast-enter,.ant-zoom-big-fast-leave{animation-duration:.1s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-big-fast-appear.ant-zoom-big-fast-appear-active,.ant-zoom-big-fast-enter.ant-zoom-big-fast-enter-active{animation-name:antZoomBigIn;animation-play-state:running}.ant-zoom-big-fast-leave.ant-zoom-big-fast-leave-active{animation-name:antZoomBigOut;animation-play-state:running;pointer-events:none}.ant-zoom-big-fast-appear,.ant-zoom-big-fast-enter{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-big-fast-appear-prepare,.ant-zoom-big-fast-enter-prepare{transform:none}.ant-zoom-big-fast-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-up-appear,.ant-zoom-up-enter,.ant-zoom-up-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-up-appear.ant-zoom-up-appear-active,.ant-zoom-up-enter.ant-zoom-up-enter-active{animation-name:antZoomUpIn;animation-play-state:running}.ant-zoom-up-leave.ant-zoom-up-leave-active{animation-name:antZoomUpOut;animation-play-state:running;pointer-events:none}.ant-zoom-up-appear,.ant-zoom-up-enter{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-up-appear-prepare,.ant-zoom-up-enter-prepare{transform:none}.ant-zoom-up-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-down-appear,.ant-zoom-down-enter,.ant-zoom-down-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-down-appear.ant-zoom-down-appear-active,.ant-zoom-down-enter.ant-zoom-down-enter-active{animation-name:antZoomDownIn;animation-play-state:running}.ant-zoom-down-leave.ant-zoom-down-leave-active{animation-name:antZoomDownOut;animation-play-state:running;pointer-events:none}.ant-zoom-down-appear,.ant-zoom-down-enter{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-down-appear-prepare,.ant-zoom-down-enter-prepare{transform:none}.ant-zoom-down-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-left-appear,.ant-zoom-left-enter,.ant-zoom-left-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-left-appear.ant-zoom-left-appear-active,.ant-zoom-left-enter.ant-zoom-left-enter-active{animation-name:antZoomLeftIn;animation-play-state:running}.ant-zoom-left-leave.ant-zoom-left-leave-active{animation-name:antZoomLeftOut;animation-play-state:running;pointer-events:none}.ant-zoom-left-appear,.ant-zoom-left-enter{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-left-appear-prepare,.ant-zoom-left-enter-prepare{transform:none}.ant-zoom-left-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-right-appear,.ant-zoom-right-enter,.ant-zoom-right-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-right-appear.ant-zoom-right-appear-active,.ant-zoom-right-enter.ant-zoom-right-enter-active{animation-name:antZoomRightIn;animation-play-state:running}.ant-zoom-right-leave.ant-zoom-right-leave-active{animation-name:antZoomRightOut;animation-play-state:running;pointer-events:none}.ant-zoom-right-appear,.ant-zoom-right-enter{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-right-appear-prepare,.ant-zoom-right-enter-prepare{transform:none}.ant-zoom-right-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}@keyframes antZoomIn{0%{transform:scale(.2);opacity:0}100%{transform:scale(1);opacity:1}}@keyframes antZoomOut{0%{transform:scale(1)}100%{transform:scale(.2);opacity:0}}@keyframes antZoomBigIn{0%{transform:scale(.8);opacity:0}100%{transform:scale(1);opacity:1}}@keyframes antZoomBigOut{0%{transform:scale(1)}100%{transform:scale(.8);opacity:0}}@keyframes antZoomUpIn{0%{transform:scale(.8);transform-origin:50% 0;opacity:0}100%{transform:scale(1);transform-origin:50% 0}}@keyframes antZoomUpOut{0%{transform:scale(1);transform-origin:50% 0}100%{transform:scale(.8);transform-origin:50% 0;opacity:0}}@keyframes antZoomLeftIn{0%{transform:scale(.8);transform-origin:0 50%;opacity:0}100%{transform:scale(1);transform-origin:0 50%}}@keyframes antZoomLeftOut{0%{transform:scale(1);transform-origin:0 50%}100%{transform:scale(.8);transform-origin:0 50%;opacity:0}}@keyframes antZoomRightIn{0%{transform:scale(.8);transform-origin:100% 50%;opacity:0}100%{transform:scale(1);transform-origin:100% 50%}}@keyframes antZoomRightOut{0%{transform:scale(1);transform-origin:100% 50%}100%{transform:scale(.8);transform-origin:100% 50%;opacity:0}}@keyframes antZoomDownIn{0%{transform:scale(.8);transform-origin:50% 100%;opacity:0}100%{transform:scale(1);transform-origin:50% 100%}}@keyframes antZoomDownOut{0%{transform:scale(1);transform-origin:50% 100%}100%{transform:scale(.8);transform-origin:50% 100%;opacity:0}}.ant-motion-collapse-legacy{overflow:hidden}.ant-motion-collapse-legacy-active{transition:height .2s cubic-bezier(.645,.045,.355,1),opacity .2s cubic-bezier(.645,.045,.355,1)!important}.ant-motion-collapse{overflow:hidden;transition:height .2s cubic-bezier(.645,.045,.355,1),opacity .2s cubic-bezier(.645,.045,.355,1)!important}.cdk-global-overlay-wrapper,.cdk-overlay-container{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper,.cdk-overlay-connected-position-bounding-box,.cdk-overlay-pane{position:absolute;display:flex;z-index:1000}.cdk-overlay-pane{pointer-events:auto;box-sizing:border-box;max-width:100%;max-height:100%}.cdk-overlay-backdrop{position:absolute;top:0;bottom:0;left:0;right:0;z-index:1000;pointer-events:auto;transition:opacity .4s cubic-bezier(.25,.8,.25,1);opacity:0}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:1}.cdk-high-contrast-active .cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:.6}.cdk-overlay-dark-backdrop{background:rgba(0,0,0,.32)}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{flex-direction:column;min-width:1px;min-height:1px}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}.cdk-visually-hidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;outline:0;-webkit-appearance:none;-moz-appearance:none}.nz-overlay-transparent-backdrop,.nz-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0}.nz-animate-disabled.ant-drawer.ant-drawer-open .ant-drawer-mask,.nz-animate-disabled.ant-scroll-number-only{animation:none;transition:none}.nz-animate-disabled.ant-drawer>*{transition:none}.nz-animate-disabled .ant-modal,.nz-animate-disabled .ant-modal-mask,.nz-animate-disabled .ant-modal-mask.zoom-enter,.nz-animate-disabled .ant-modal-mask.zoom-enter-active,.nz-animate-disabled .ant-modal-mask.zoom-leave,.nz-animate-disabled .ant-modal-mask.zoom-leave-active,.nz-animate-disabled .ant-modal.zoom-enter,.nz-animate-disabled .ant-modal.zoom-enter-active,.nz-animate-disabled .ant-modal.zoom-leave,.nz-animate-disabled .ant-modal.zoom-leave-active{animation:none;transition:none}.nz-animate-disabled.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow svg,.nz-animate-disabled.ant-menu,.nz-animate-disabled.ant-menu .ant-menu-item,.nz-animate-disabled.ant-menu .ant-menu-item .anticon,.nz-animate-disabled.ant-menu .ant-menu-item .anticon+span,.nz-animate-disabled.ant-menu .ant-menu-submenu-title,.nz-animate-disabled.ant-menu .ant-menu-submenu-title .anticon,.nz-animate-disabled.ant-menu .ant-menu-submenu-title .anticon+span,.nz-animate-disabled.ant-tabs .ant-tabs-bottom-content.ant-tabs-content-animated,.nz-animate-disabled.ant-tabs .ant-tabs-bottom-content>.ant-tabs-tabpane,.nz-animate-disabled.ant-tabs .ant-tabs-top-content.ant-tabs-content-animated,.nz-animate-disabled.ant-tabs .ant-tabs-top-content>.ant-tabs-tabpane,.nz-animate-disabled.ant-tabs.ant-tabs-bottom .ant-tabs-ink-bar-animated,.nz-animate-disabled.ant-tabs.ant-tabs-left .ant-tabs-ink-bar-animated,.nz-animate-disabled.ant-tabs.ant-tabs-right .ant-tabs-ink-bar-animated,.nz-animate-disabled.ant-tabs.ant-tabs-top .ant-tabs-ink-bar-animated{transition:none}.ant-affix{position:fixed;z-index:10}.ant-alert,.ant-anchor{font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;position:relative}nz-affix{display:block}.ant-alert{box-sizing:border-box;margin:0;color:rgba(0,0,0,.85);font-size:12px;line-height:1.66667;display:flex;align-items:center;padding:8px 15px;word-wrap:break-word;border-radius:2px}.ant-alert-content{flex:1;min-width:0}.ant-alert-icon{margin-right:4px}.ant-alert-description{display:none;font-size:12px;line-height:20px}.ant-alert-success{background-color:#f6ffed;border:1px solid #b7eb8f}.ant-alert-success .ant-alert-icon{color:#52c41a}.ant-alert-info{background-color:#e6f7ff;border:1px solid #91d5ff}.ant-alert-info .ant-alert-icon{color:#1890ff}.ant-alert-warning{background-color:#fffbe6;border:1px solid #ffe58f}.ant-alert-warning .ant-alert-icon{color:#faad14}.ant-alert-error{background-color:#fff2f0;border:1px solid #ffccc7}.ant-alert-error .ant-alert-icon{color:#ff4d4f}.ant-alert-error .ant-alert-description>pre{margin:0;padding:0}.ant-alert-action{margin-left:4px}.ant-alert-close-icon{margin-left:4px;padding:0;overflow:hidden;font-size:12px;line-height:12px;background-color:transparent;border:none;outline:0;cursor:pointer}.ant-alert-close-icon .anticon-close{color:rgba(0,0,0,.45);transition:color .3s}.ant-alert-close-icon .anticon-close:hover{color:rgba(0,0,0,.75)}.ant-alert-close-text{color:rgba(0,0,0,.45);transition:color .3s}.ant-alert-close-text:hover{color:rgba(0,0,0,.75)}.ant-alert-with-description{align-items:flex-start;padding:11px 15px 7px 20px}.ant-alert-with-description.ant-alert-no-icon{padding:7px 15px}.ant-alert-with-description .ant-alert-icon{margin-right:11px;font-size:20px}.ant-alert-with-description .ant-alert-message{display:block;margin-bottom:4px;color:rgba(0,0,0,.85);font-size:14px}.ant-anchor,.ant-avatar{font-size:12px;box-sizing:border-box}.ant-alert-message{color:rgba(0,0,0,.85)}.ant-alert-with-description .ant-alert-description{display:block}.ant-alert.ant-alert-motion-leave{overflow:hidden;opacity:1;transition:max-height .3s cubic-bezier(.78,.14,.15,.86),opacity .3s cubic-bezier(.78,.14,.15,.86),padding-top .3s cubic-bezier(.78,.14,.15,.86),padding-bottom .3s cubic-bezier(.78,.14,.15,.86),margin-bottom .3s cubic-bezier(.78,.14,.15,.86)}.ant-alert.ant-alert-motion-leave-active{max-height:0;margin-bottom:0!important;padding-top:0;padding-bottom:0;opacity:0}.ant-alert-banner{margin-bottom:0;border:0;border-radius:0}.ant-alert.ant-alert-rtl{direction:rtl}.ant-alert-rtl .ant-alert-icon{margin-right:auto;margin-left:4px}.ant-alert-rtl .ant-alert-action,.ant-alert-rtl .ant-alert-close-icon{margin-right:4px;margin-left:auto}.ant-alert-rtl.ant-alert-with-description{padding-right:20px;padding-left:11px}.ant-alert-rtl.ant-alert-with-description .ant-alert-icon{margin-right:auto;margin-left:11px}nz-alert{display:block}.ant-alert-icon{line-height:1}.ant-anchor{margin:0;padding:0 0 0 2px;color:rgba(0,0,0,.85);line-height:1.66667}.ant-anchor-wrapper{margin-left:-4px;padding-left:4px;overflow:auto;background-color:transparent}.ant-anchor-ink{position:absolute;top:0;left:0;height:100%}.ant-anchor-ink::before{position:relative;display:block;width:2px;height:100%;margin:0 auto;background-color:#f0f0f0;content:' '}.ant-anchor-ink-ball{position:absolute;left:50%;display:none;width:8px;height:8px;background-color:#fff;border:2px solid #1890ff;border-radius:8px;transform:translateX(-50%);transition:top .3s ease-in-out}.ant-anchor-link-title,.ant-avatar{position:relative;white-space:nowrap}.ant-anchor-ink-ball.visible{display:inline-block}.ant-anchor-fixed .ant-anchor-ink .ant-anchor-ink-ball{display:none}.ant-anchor-link{padding:4px 0 4px 16px}.ant-anchor-link-title{display:block;margin-bottom:3px;overflow:hidden;color:rgba(0,0,0,.85);text-overflow:ellipsis;transition:all .3s}.ant-anchor-link-title:only-child{margin-bottom:0}.ant-anchor-link-active>.ant-anchor-link-title{color:#1890ff}.ant-anchor-link .ant-anchor-link{padding-top:2px;padding-bottom:2px}.ant-anchor-rtl{direction:rtl}.ant-anchor-rtl.ant-anchor-wrapper{margin-right:-4px;margin-left:0;padding-right:4px;padding-left:0}.ant-anchor-rtl .ant-anchor-ink{right:0;left:auto}.ant-anchor-rtl .ant-anchor-ink-ball{right:50%;left:0;transform:translateX(50%)}.ant-anchor-rtl .ant-anchor-link{padding:4px 16px 4px 0}.ant-avatar,.ant-back-top,.ant-badge{margin:0;padding:0;list-style:none;font-variant:tabular-nums;font-feature-settings:tnum}nz-link{display:block}.ant-avatar{display:inline-block;overflow:hidden;color:#fff;text-align:center;background:#ccc;width:28px;height:28px;line-height:28px;border-radius:50%}.ant-avatar-lg-string,.ant-avatar-sm-string,.ant-avatar-string{position:absolute;left:50%;transform-origin:0 center}.ant-avatar-image{background:0 0}.ant-avatar .ant-image-img{display:block}.ant-avatar.ant-avatar-icon{font-size:16px}.ant-avatar-lg.ant-avatar-icon,.ant-spin-dot{font-size:20px}.ant-avatar.ant-avatar-icon>.anticon{margin:0}.ant-avatar-lg{width:32px;height:32px;line-height:32px;border-radius:50%}.ant-avatar-sm.ant-avatar-icon,.ant-back-top{font-size:12px}.ant-avatar-lg.ant-avatar-icon>.anticon{margin:0}.ant-avatar-sm{width:22px;height:22px;line-height:22px;border-radius:50%}.ant-avatar-sm.ant-avatar-icon>.anticon{margin:0}.ant-avatar-square{border-radius:2px}.ant-avatar>img{display:block;width:100%;height:100%;object-fit:cover}.ant-avatar-group,.ant-btn-group{display:inline-flex}.ant-avatar-group .ant-avatar{border:1px solid #fff}.ant-avatar-group .ant-avatar:not(:first-child){margin-left:-8px}.ant-avatar-group-popover .ant-avatar+.ant-avatar{margin-left:3px}.ant-avatar-group-rtl .ant-avatar:not(:first-child){margin-right:-8px;margin-left:0}.ant-avatar-group-popover.ant-popover-rtl .ant-avatar+.ant-avatar{margin-right:3px;margin-left:0}.ant-back-top{box-sizing:border-box;color:rgba(0,0,0,.85);line-height:1.66667;position:fixed;right:100px;bottom:50px;z-index:10;width:40px;height:40px;cursor:pointer}.ant-back-top:empty{display:none}.ant-back-top-rtl{right:auto;left:100px;direction:rtl}.ant-back-top-content{width:40px;height:40px;overflow:hidden;color:#fff;text-align:center;background-color:rgba(0,0,0,.45);border-radius:20px;transition:all .3s}.ant-back-top-content:hover{background-color:rgba(0,0,0,.85);transition:all .3s}.ant-badge-count,.ant-badge-dot{z-index:auto;background:#ff4d4f;box-shadow:0 0 0 1px #fff}.ant-back-top-icon{font-size:24px;line-height:40px}@media screen and (max-width:768px){.ant-back-top{right:60px}.ant-back-top-rtl{right:auto;left:60px}}@media screen and (max-width:480px){.ant-back-top{right:20px}.ant-back-top-rtl{right:auto;left:20px}}.ant-badge{box-sizing:border-box;color:rgba(0,0,0,.85);font-size:12px;position:relative;display:inline-block;line-height:1}.ant-badge-count{min-width:18px;height:18px;padding:0 6px;color:#fff;font-weight:400;font-size:12px;line-height:18px;white-space:nowrap;text-align:center;border-radius:9px}.ant-badge-count a,.ant-badge-count a:hover{color:#fff}.ant-badge-count-sm{min-width:14px;height:14px;padding:0;font-size:12px;line-height:14px;border-radius:7px}.ant-badge-multiple-words,.ant-ribbon{padding:0 8px}.ant-badge-dot{width:6px;min-width:6px;height:6px;border-radius:100%}.ant-badge-dot.ant-scroll-number{transition:background 1.5s}.ant-badge .ant-scroll-number-custom-component,.ant-badge-count,.ant-badge-dot{position:absolute;top:0;right:0;transform:translate(50%,-50%);transform-origin:100% 0}.ant-badge .ant-scroll-number-custom-component.anticon-spin,.ant-badge-count.anticon-spin,.ant-badge-dot.anticon-spin{animation:antBadgeLoadingCircle 1s infinite linear}.ant-badge-status{line-height:inherit}.ant-badge-not-a-wrapper:not(.ant-badge-status),.ant-badge-status-dot{vertical-align:middle}.ant-badge-status-dot{position:relative;top:-1px;display:inline-block;width:6px;height:6px;border-radius:50%}.ant-badge-status-success{background-color:#52c41a}.ant-badge-status-processing{position:relative;background-color:#1890ff}.ant-badge-status-processing::after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #1890ff;border-radius:50%;animation:antStatusProcessing 1.2s infinite ease-in-out;content:''}.ant-badge-status-default{background-color:#d9d9d9}.ant-badge-status-error{background-color:#ff4d4f}.ant-badge-status-warning{background-color:#faad14}.ant-badge-status-magenta,.ant-badge-status-pink{background:#eb2f96}.ant-badge-status-red{background:#f5222d}.ant-badge-status-volcano{background:#fa541c}.ant-badge-status-orange{background:#fa8c16}.ant-badge-status-yellow{background:#fadb14}.ant-badge-status-gold{background:#faad14}.ant-badge-status-cyan{background:#13c2c2}.ant-badge-status-lime{background:#a0d911}.ant-badge-status-green{background:#52c41a}.ant-badge-status-blue{background:#1890ff}.ant-badge-status-geekblue{background:#2f54eb}.ant-badge-status-purple{background:#722ed1}.ant-badge-status-text{margin-left:8px;color:rgba(0,0,0,.85);font-size:12px}.ant-badge-zoom-appear,.ant-badge-zoom-enter{animation:antZoomBadgeIn .3s cubic-bezier(.12,.4,.29,1.46);animation-fill-mode:both}.ant-badge-zoom-leave{animation:antZoomBadgeOut .3s cubic-bezier(.71,-.46,.88,.6);animation-fill-mode:both}.ant-badge-not-a-wrapper .ant-badge-zoom-appear,.ant-badge-not-a-wrapper .ant-badge-zoom-enter{animation:antNoWrapperZoomBadgeIn .3s cubic-bezier(.12,.4,.29,1.46)}.ant-badge-not-a-wrapper .ant-badge-zoom-leave{animation:antNoWrapperZoomBadgeOut .3s cubic-bezier(.71,-.46,.88,.6)}.ant-badge-not-a-wrapper .ant-badge-count,.ant-badge-not-a-wrapper .ant-scroll-number-custom-component{transform:none}.ant-badge-not-a-wrapper .ant-scroll-number,.ant-badge-not-a-wrapper .ant-scroll-number-custom-component{position:relative;top:auto;display:block;transform-origin:50% 50%}.ant-btn,.ant-btn:empty,.ant-btn>span,.ant-scroll-number-only{display:inline-block}@keyframes antStatusProcessing{0%{transform:scale(.8);opacity:.5}100%{transform:scale(2.4);opacity:0}}.ant-scroll-number-only,.ant-scroll-number-only>p.ant-scroll-number-only-unit{height:18px;-webkit-transform-style:preserve-3d;-webkit-backface-visibility:hidden}.ant-scroll-number{overflow:hidden;direction:ltr}.ant-scroll-number-only{position:relative;transition:all .3s cubic-bezier(.645,.045,.355,1)}.ant-scroll-number-only>p.ant-scroll-number-only-unit{margin:0}.ant-scroll-number-symbol{vertical-align:top}@keyframes antZoomBadgeIn{0%{transform:scale(0) translate(50%,-50%);opacity:0}100%{transform:scale(1) translate(50%,-50%)}}@keyframes antZoomBadgeOut{0%{transform:scale(1) translate(50%,-50%)}100%{transform:scale(0) translate(50%,-50%);opacity:0}}@keyframes antNoWrapperZoomBadgeIn{0%{transform:scale(0);opacity:0}100%{transform:scale(1)}}@keyframes antNoWrapperZoomBadgeOut{0%{transform:scale(1)}100%{transform:scale(0);opacity:0}}@keyframes antBadgeLoadingCircle{0%{transform-origin:50%}100%{transform:translate(50%,-50%) rotate(360deg);transform-origin:50%}}.ant-ribbon-wrapper{position:relative}.ant-ribbon{box-sizing:border-box;margin:0;font-size:12px;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;position:absolute;top:8px;height:22px;color:#fff;line-height:22px;white-space:nowrap;background-color:#1890ff;border-radius:2px}.ant-breadcrumb,.ant-btn{line-height:1.66667;font-size:12px}.ant-ribbon-text{color:#fff}.ant-ribbon-corner{position:absolute;top:100%;width:8px;height:8px;color:currentcolor;border:4px solid;transform:scaleY(.75);transform-origin:top}.ant-ribbon-corner::after{position:absolute;top:-4px;left:-4px;width:inherit;height:inherit;color:rgba(0,0,0,.25);border:inherit;content:''}.ant-ribbon-color-magenta,.ant-ribbon-color-pink{color:#eb2f96;background:#eb2f96}.ant-ribbon-color-red{color:#f5222d;background:#f5222d}.ant-ribbon-color-volcano{color:#fa541c;background:#fa541c}.ant-ribbon-color-orange{color:#fa8c16;background:#fa8c16}.ant-ribbon-color-yellow{color:#fadb14;background:#fadb14}.ant-ribbon-color-gold{color:#faad14;background:#faad14}.ant-ribbon-color-cyan{color:#13c2c2;background:#13c2c2}.ant-ribbon-color-lime{color:#a0d911;background:#a0d911}.ant-ribbon-color-green{color:#52c41a;background:#52c41a}.ant-ribbon-color-blue{color:#1890ff;background:#1890ff}.ant-ribbon-color-geekblue{color:#2f54eb;background:#2f54eb}.ant-ribbon-color-purple{color:#722ed1;background:#722ed1}.ant-ribbon.ant-ribbon-placement-end{right:-8px;border-bottom-right-radius:0}.ant-ribbon.ant-ribbon-placement-end .ant-ribbon-corner{right:0;border-color:currentcolor transparent transparent currentcolor}.ant-ribbon-rtl.ant-ribbon-placement-end .ant-ribbon-corner,.ant-ribbon-rtl.ant-ribbon-placement-end .ant-ribbon-corner::after,.ant-ribbon.ant-ribbon-placement-start .ant-ribbon-corner{border-color:currentcolor currentcolor transparent transparent}.ant-ribbon.ant-ribbon-placement-start{left:-8px;border-bottom-left-radius:0}.ant-ribbon.ant-ribbon-placement-start .ant-ribbon-corner{left:0}.ant-badge-rtl{direction:rtl}.ant-badge-rtl.ant-badge:not(.ant-badge-not-a-wrapper) .ant-badge-count,.ant-badge-rtl.ant-badge:not(.ant-badge-not-a-wrapper) .ant-badge-dot,.ant-badge-rtl.ant-badge:not(.ant-badge-not-a-wrapper) .ant-scroll-number-custom-component{right:auto;left:0;direction:ltr;transform:translate(-50%,-50%);transform-origin:0 0}.ant-breadcrumb-rtl,.ant-btn-group.ant-btn-group-rtl,.ant-btn-rtl,.ant-card-rtl,.ant-carousel-rtl,.ant-ribbon-rtl{direction:rtl}.ant-badge-rtl.ant-badge:not(.ant-badge-not-a-wrapper) .ant-scroll-number-custom-component{right:auto;left:0;transform:translate(-50%,-50%);transform-origin:0 0}.ant-badge-rtl .ant-badge-status-text{margin-right:8px;margin-left:0}.ant-breadcrumb,.ant-breadcrumb ol{margin:0;padding:0;list-style:none}.ant-badge:not(.ant-badge-not-a-wrapper).ant-badge-rtl .ant-badge-zoom-appear,.ant-badge:not(.ant-badge-not-a-wrapper).ant-badge-rtl .ant-badge-zoom-enter{animation-name:antZoomBadgeInRtl}.ant-badge:not(.ant-badge-not-a-wrapper).ant-badge-rtl .ant-badge-zoom-leave{animation-name:antZoomBadgeOutRtl}.ant-ribbon-rtl.ant-ribbon-placement-end{right:unset;left:-8px;border-bottom-right-radius:2px;border-bottom-left-radius:0}.ant-ribbon-rtl.ant-ribbon-placement-end .ant-ribbon-corner{right:unset;left:0}.ant-ribbon-rtl.ant-ribbon-placement-start .ant-ribbon-corner,.ant-ribbon-rtl.ant-ribbon-placement-start .ant-ribbon-corner::after{border-color:currentcolor transparent transparent currentcolor}.ant-ribbon-rtl.ant-ribbon-placement-start{right:-8px;left:unset;border-bottom-right-radius:0;border-bottom-left-radius:2px}.ant-ribbon-rtl.ant-ribbon-placement-start .ant-ribbon-corner{right:0;left:unset}@keyframes antZoomBadgeInRtl{0%{transform:scale(0) translate(-50%,-50%);opacity:0}100%{transform:scale(1) translate(-50%,-50%)}}@keyframes antZoomBadgeOutRtl{0%{transform:scale(1) translate(-50%,-50%)}100%{transform:scale(0) translate(-50%,-50%);opacity:0}}.ant-badge .ant-scroll-number:only-child{position:relative;top:auto;display:block}.ant-badge .ant-badge-count:only-child{transform:none}nz-ribbon{display:block}.ant-breadcrumb{box-sizing:border-box;font-variant:tabular-nums;font-feature-settings:tnum;color:rgba(0,0,0,.45)}.ant-breadcrumb .anticon{font-size:12px}.ant-breadcrumb ol{display:flex;flex-wrap:wrap}.ant-breadcrumb a{color:rgba(0,0,0,.45);transition:color .3s}.ant-breadcrumb a:hover,.ant-breadcrumb li:last-child,.ant-breadcrumb li:last-child a{color:rgba(0,0,0,.85)}li:last-child .ant-breadcrumb-separator{display:none}.ant-breadcrumb-rtl::after,.ant-breadcrumb-rtl::before{display:table;content:''}.ant-breadcrumb-separator{margin:0 4px;color:rgba(0,0,0,.45)}.ant-breadcrumb>nz-breadcrumb-item:last-child,.ant-breadcrumb>nz-breadcrumb-item:last-child a,.ant-btn{color:rgba(0,0,0,.85)}.ant-breadcrumb-link>.anticon+a,.ant-breadcrumb-link>.anticon+span,.ant-breadcrumb-overlay-link>.anticon{margin-left:4px}.ant-breadcrumb-rtl::after{clear:both}.ant-breadcrumb-rtl>span{float:right}.ant-breadcrumb-rtl .ant-breadcrumb-link>.anticon+a,.ant-breadcrumb-rtl .ant-breadcrumb-link>.anticon+span,.ant-breadcrumb-rtl .ant-breadcrumb-overlay-link>.anticon{margin-right:4px;margin-left:0}.ant-breadcrumb-link .anticon+span{margin-left:4px}.ant-breadcrumb-rtl>nz-breadcrumb-item{float:right}nz-breadcrumb{display:block}nz-breadcrumb-item:last-child .ant-breadcrumb-separator{display:none}.ant-btn{position:relative;font-weight:400;white-space:nowrap;text-align:center;border:1px solid #d9d9d9;box-shadow:0 2px 0 rgba(0,0,0,.015);cursor:pointer;transition:all .3s cubic-bezier(.645,.045,.355,1);user-select:none;height:28px;padding:3px 11px;border-radius:2px;background:#fff}.ant-btn>.anticon,.ant-checkbox{line-height:1}.ant-btn:active>a:only-child::after,.ant-btn:focus>a:only-child::after,.ant-btn:hover>a:only-child::after,.ant-btn>a:only-child::after{background:0 0;top:0;right:0;bottom:0;left:0;position:absolute;content:''}.ant-btn,.ant-btn:active,.ant-btn:focus{outline:0}.ant-btn:not([disabled]):hover{text-decoration:none}.ant-btn:not([disabled]):active{outline:0;box-shadow:none}.ant-btn[disabled]{cursor:not-allowed}.ant-btn[disabled]>*{pointer-events:none}.ant-btn-lg{height:32px;padding:3.3px 11px;font-size:14px;border-radius:2px}.ant-btn-sm{height:22px;padding:0 7px;font-size:12px;border-radius:2px}.ant-btn>a:only-child{color:currentcolor}.ant-btn:focus,.ant-btn:hover{color:#40a9ff;border-color:#40a9ff}.ant-btn:focus>a:only-child,.ant-btn:hover>a:only-child{color:currentcolor}.ant-btn:active{color:#096dd9;border-color:#096dd9}.ant-btn:active>a:only-child{color:currentcolor}.ant-btn[disabled],.ant-btn[disabled]:active,.ant-btn[disabled]:focus,.ant-btn[disabled]:hover{color:rgba(0,0,0,.25);border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn[disabled]:active>a:only-child,.ant-btn[disabled]:focus>a:only-child,.ant-btn[disabled]:hover>a:only-child,.ant-btn[disabled]>a:only-child{color:currentcolor}.ant-btn[disabled]:active>a:only-child::after,.ant-btn[disabled]:focus>a:only-child::after,.ant-btn[disabled]:hover>a:only-child::after,.ant-btn[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn:active,.ant-btn:focus,.ant-btn:hover{text-decoration:none;background:#fff}.ant-btn-primary{color:#fff;border-color:#1890ff;background:#1890ff;text-shadow:0 -1px 0 rgba(0,0,0,.12);box-shadow:0 2px 0 rgba(0,0,0,.045)}.ant-btn-primary>a:only-child{color:currentcolor}.ant-btn-primary>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-primary:focus,.ant-btn-primary:hover{color:#fff;border-color:#40a9ff;background:#40a9ff}.ant-btn-primary:focus>a:only-child,.ant-btn-primary:hover>a:only-child{color:currentcolor}.ant-btn-primary:focus>a:only-child::after,.ant-btn-primary:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-primary:active{color:#fff;border-color:#096dd9;background:#096dd9}.ant-btn-primary:active>a:only-child{color:currentcolor}.ant-btn-primary:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-primary[disabled],.ant-btn-primary[disabled]:active,.ant-btn-primary[disabled]:focus,.ant-btn-primary[disabled]:hover{color:rgba(0,0,0,.25);border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-primary[disabled]:active>a:only-child,.ant-btn-primary[disabled]:focus>a:only-child,.ant-btn-primary[disabled]:hover>a:only-child,.ant-btn-primary[disabled]>a:only-child{color:currentcolor}.ant-btn-primary[disabled]:active>a:only-child::after,.ant-btn-primary[disabled]:focus>a:only-child::after,.ant-btn-primary[disabled]:hover>a:only-child::after,.ant-btn-primary[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-group .ant-btn-primary:not(:first-child):not(:last-child){border-right-color:#40a9ff;border-left-color:#40a9ff}.ant-btn-group .ant-btn-primary:not(:first-child):not(:last-child):disabled{border-color:#d9d9d9}.ant-btn-group .ant-btn-primary:first-child:not(:last-child){border-right-color:#40a9ff}.ant-btn-group .ant-btn-primary:first-child:not(:last-child)[disabled]{border-right-color:#d9d9d9}.ant-btn-group .ant-btn-primary+.ant-btn-primary,.ant-btn-group .ant-btn-primary:last-child:not(:first-child){border-left-color:#40a9ff}.ant-btn-group .ant-btn-primary+.ant-btn-primary[disabled],.ant-btn-group .ant-btn-primary:last-child:not(:first-child)[disabled]{border-left-color:#d9d9d9}.ant-btn-ghost{color:rgba(0,0,0,.85);border-color:#d9d9d9;background:0 0}.ant-btn-ghost>a:only-child{color:currentcolor}.ant-btn-ghost>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-ghost:focus,.ant-btn-ghost:hover{color:#40a9ff;border-color:#40a9ff;background:0 0}.ant-btn-ghost:focus>a:only-child,.ant-btn-ghost:hover>a:only-child{color:currentcolor}.ant-btn-ghost:focus>a:only-child::after,.ant-btn-ghost:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-ghost:active{color:#096dd9;border-color:#096dd9;background:0 0}.ant-btn-ghost:active>a:only-child{color:currentcolor}.ant-btn-ghost:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-ghost[disabled],.ant-btn-ghost[disabled]:active,.ant-btn-ghost[disabled]:focus,.ant-btn-ghost[disabled]:hover{color:rgba(0,0,0,.25);border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-ghost[disabled]:active>a:only-child,.ant-btn-ghost[disabled]:focus>a:only-child,.ant-btn-ghost[disabled]:hover>a:only-child,.ant-btn-ghost[disabled]>a:only-child{color:currentcolor}.ant-btn-ghost[disabled]:active>a:only-child::after,.ant-btn-ghost[disabled]:focus>a:only-child::after,.ant-btn-ghost[disabled]:hover>a:only-child::after,.ant-btn-ghost[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dashed{color:rgba(0,0,0,.85);border-color:#d9d9d9;background:#fff;border-style:dashed}.ant-btn-dashed>a:only-child{color:currentcolor}.ant-btn-dashed>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dashed:focus,.ant-btn-dashed:hover{color:#40a9ff;border-color:#40a9ff;background:#fff}.ant-btn-dashed:focus>a:only-child,.ant-btn-dashed:hover>a:only-child{color:currentcolor}.ant-btn-dashed:focus>a:only-child::after,.ant-btn-dashed:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dashed:active{color:#096dd9;border-color:#096dd9;background:#fff}.ant-btn-dashed:active>a:only-child{color:currentcolor}.ant-btn-dashed:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dashed[disabled],.ant-btn-dashed[disabled]:active,.ant-btn-dashed[disabled]:focus,.ant-btn-dashed[disabled]:hover{color:rgba(0,0,0,.25);border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-dashed[disabled]:active>a:only-child,.ant-btn-dashed[disabled]:focus>a:only-child,.ant-btn-dashed[disabled]:hover>a:only-child,.ant-btn-dashed[disabled]>a:only-child{color:currentcolor}.ant-btn-dashed[disabled]:active>a:only-child::after,.ant-btn-dashed[disabled]:focus>a:only-child::after,.ant-btn-dashed[disabled]:hover>a:only-child::after,.ant-btn-dashed[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-danger{color:#fff;border-color:#ff4d4f;background:#ff4d4f;text-shadow:0 -1px 0 rgba(0,0,0,.12);box-shadow:0 2px 0 rgba(0,0,0,.045)}.ant-btn-danger>a:only-child{color:currentcolor}.ant-btn-danger>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-danger:focus,.ant-btn-danger:hover{color:#fff;border-color:#ff7875;background:#ff7875}.ant-btn-danger:focus>a:only-child,.ant-btn-danger:hover>a:only-child{color:currentcolor}.ant-btn-danger:focus>a:only-child::after,.ant-btn-danger:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-danger:active{color:#fff;border-color:#d9363e;background:#d9363e}.ant-btn-danger:active>a:only-child{color:currentcolor}.ant-btn-danger:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-danger[disabled],.ant-btn-danger[disabled]:active,.ant-btn-danger[disabled]:focus,.ant-btn-danger[disabled]:hover{color:rgba(0,0,0,.25);border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-danger[disabled]:active>a:only-child,.ant-btn-danger[disabled]:focus>a:only-child,.ant-btn-danger[disabled]:hover>a:only-child,.ant-btn-danger[disabled]>a:only-child{color:currentcolor}.ant-btn-danger[disabled]:active>a:only-child::after,.ant-btn-danger[disabled]:focus>a:only-child::after,.ant-btn-danger[disabled]:hover>a:only-child::after,.ant-btn-danger[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-link{color:#1890ff;border-color:transparent;background:0 0;box-shadow:none}.ant-btn-link>a:only-child{color:currentcolor}.ant-btn-link>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-link:focus,.ant-btn-link:hover{color:#40a9ff;background:0 0}.ant-btn-link:focus>a:only-child,.ant-btn-link:hover>a:only-child{color:currentcolor}.ant-btn-link:focus>a:only-child::after,.ant-btn-link:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-link:active{color:#096dd9;background:0 0}.ant-btn-link:active>a:only-child{color:currentcolor}.ant-btn-link:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-link:hover{background:0 0}.ant-btn-link:active,.ant-btn-link:focus,.ant-btn-link:hover{border-color:transparent}.ant-btn-link[disabled],.ant-btn-link[disabled]:active,.ant-btn-link[disabled]:focus,.ant-btn-link[disabled]:hover{color:rgba(0,0,0,.25);border-color:transparent;background:0 0;text-shadow:none;box-shadow:none}.ant-btn-link[disabled]:active>a:only-child,.ant-btn-link[disabled]:focus>a:only-child,.ant-btn-link[disabled]:hover>a:only-child,.ant-btn-link[disabled]>a:only-child{color:currentcolor}.ant-btn-link[disabled]:active>a:only-child::after,.ant-btn-link[disabled]:focus>a:only-child::after,.ant-btn-link[disabled]:hover>a:only-child::after,.ant-btn-link[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-text{color:rgba(0,0,0,.85);border-color:transparent;background:0 0;box-shadow:none}.ant-btn-text>a:only-child{color:currentcolor}.ant-btn-text>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-text:focus,.ant-btn-text:hover{color:#40a9ff}.ant-btn-text:focus>a:only-child,.ant-btn-text:hover>a:only-child{color:currentcolor}.ant-btn-text:focus>a:only-child::after,.ant-btn-text:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-text:active{color:#096dd9}.ant-btn-text:active>a:only-child{color:currentcolor}.ant-btn-text:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-text:focus,.ant-btn-text:hover{color:rgba(0,0,0,.85);background:rgba(0,0,0,.018);border-color:transparent}.ant-btn-text:active{color:rgba(0,0,0,.85);background:rgba(0,0,0,.028);border-color:transparent}.ant-btn-text[disabled],.ant-btn-text[disabled]:active,.ant-btn-text[disabled]:focus,.ant-btn-text[disabled]:hover{color:rgba(0,0,0,.25);border-color:transparent;background:0 0;text-shadow:none;box-shadow:none}.ant-btn-text[disabled]:active>a:only-child,.ant-btn-text[disabled]:focus>a:only-child,.ant-btn-text[disabled]:hover>a:only-child,.ant-btn-text[disabled]>a:only-child{color:currentcolor}.ant-btn-text[disabled]:active>a:only-child::after,.ant-btn-text[disabled]:focus>a:only-child::after,.ant-btn-text[disabled]:hover>a:only-child::after,.ant-btn-text[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous{color:#ff4d4f;border-color:#ff4d4f;background:#fff}.ant-btn-dangerous>a:only-child{color:currentcolor}.ant-btn-dangerous>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous:focus,.ant-btn-dangerous:hover{color:#ff7875;border-color:#ff7875;background:#fff}.ant-btn-dangerous:focus>a:only-child,.ant-btn-dangerous:hover>a:only-child{color:currentcolor}.ant-btn-dangerous:focus>a:only-child::after,.ant-btn-dangerous:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous:active{color:#d9363e;border-color:#d9363e;background:#fff}.ant-btn-dangerous:active>a:only-child{color:currentcolor}.ant-btn-dangerous:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous[disabled],.ant-btn-dangerous[disabled]:active,.ant-btn-dangerous[disabled]:focus,.ant-btn-dangerous[disabled]:hover{color:rgba(0,0,0,.25);border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-dangerous[disabled]:active>a:only-child,.ant-btn-dangerous[disabled]:focus>a:only-child,.ant-btn-dangerous[disabled]:hover>a:only-child,.ant-btn-dangerous[disabled]>a:only-child{color:currentcolor}.ant-btn-dangerous[disabled]:active>a:only-child::after,.ant-btn-dangerous[disabled]:focus>a:only-child::after,.ant-btn-dangerous[disabled]:hover>a:only-child::after,.ant-btn-dangerous[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-primary{color:#fff;border-color:#ff4d4f;background:#ff4d4f;text-shadow:0 -1px 0 rgba(0,0,0,.12);box-shadow:0 2px 0 rgba(0,0,0,.045)}.ant-btn-dangerous.ant-btn-primary>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-primary>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-primary:focus,.ant-btn-dangerous.ant-btn-primary:hover{color:#fff;border-color:#ff7875;background:#ff7875}.ant-btn-dangerous.ant-btn-primary:focus>a:only-child,.ant-btn-dangerous.ant-btn-primary:hover>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-primary:focus>a:only-child::after,.ant-btn-dangerous.ant-btn-primary:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-primary:active{color:#fff;border-color:#d9363e;background:#d9363e}.ant-btn-dangerous.ant-btn-primary:active>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-primary:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-primary[disabled],.ant-btn-dangerous.ant-btn-primary[disabled]:active,.ant-btn-dangerous.ant-btn-primary[disabled]:focus,.ant-btn-dangerous.ant-btn-primary[disabled]:hover{color:rgba(0,0,0,.25);border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-dangerous.ant-btn-primary[disabled]:active>a:only-child,.ant-btn-dangerous.ant-btn-primary[disabled]:focus>a:only-child,.ant-btn-dangerous.ant-btn-primary[disabled]:hover>a:only-child,.ant-btn-dangerous.ant-btn-primary[disabled]>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-primary[disabled]:active>a:only-child::after,.ant-btn-dangerous.ant-btn-primary[disabled]:focus>a:only-child::after,.ant-btn-dangerous.ant-btn-primary[disabled]:hover>a:only-child::after,.ant-btn-dangerous.ant-btn-primary[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-link{color:#ff4d4f;border-color:transparent;background:0 0;box-shadow:none}.ant-btn-dangerous.ant-btn-link>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-link>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-link:focus,.ant-btn-dangerous.ant-btn-link:hover{color:#ff7875;border-color:transparent;background:0 0}.ant-btn-dangerous.ant-btn-link:focus>a:only-child,.ant-btn-dangerous.ant-btn-link:hover>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-link:focus>a:only-child::after,.ant-btn-dangerous.ant-btn-link:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-link:active{color:#d9363e;border-color:transparent;background:0 0}.ant-btn-dangerous.ant-btn-link:active>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-link:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-link[disabled],.ant-btn-dangerous.ant-btn-link[disabled]:active,.ant-btn-dangerous.ant-btn-link[disabled]:focus,.ant-btn-dangerous.ant-btn-link[disabled]:hover{color:rgba(0,0,0,.25);border-color:transparent;background:0 0;text-shadow:none;box-shadow:none}.ant-btn-dangerous.ant-btn-link[disabled]:active>a:only-child,.ant-btn-dangerous.ant-btn-link[disabled]:focus>a:only-child,.ant-btn-dangerous.ant-btn-link[disabled]:hover>a:only-child,.ant-btn-dangerous.ant-btn-link[disabled]>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-link[disabled]:active>a:only-child::after,.ant-btn-dangerous.ant-btn-link[disabled]:focus>a:only-child::after,.ant-btn-dangerous.ant-btn-link[disabled]:hover>a:only-child::after,.ant-btn-dangerous.ant-btn-link[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-text{color:#ff4d4f;border-color:transparent;background:0 0;box-shadow:none}.ant-btn-dangerous.ant-btn-text>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-text>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-text:focus,.ant-btn-dangerous.ant-btn-text:hover{color:#ff7875;border-color:transparent;background:rgba(0,0,0,.018)}.ant-btn-dangerous.ant-btn-text:focus>a:only-child,.ant-btn-dangerous.ant-btn-text:hover>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-text:focus>a:only-child::after,.ant-btn-dangerous.ant-btn-text:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-text:active{color:#d9363e;border-color:transparent;background:rgba(0,0,0,.028)}.ant-btn-dangerous.ant-btn-text:active>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-text:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-text[disabled],.ant-btn-dangerous.ant-btn-text[disabled]:active,.ant-btn-dangerous.ant-btn-text[disabled]:focus,.ant-btn-dangerous.ant-btn-text[disabled]:hover{color:rgba(0,0,0,.25);border-color:transparent;background:0 0;text-shadow:none;box-shadow:none}.ant-btn-dangerous.ant-btn-text[disabled]:active>a:only-child,.ant-btn-dangerous.ant-btn-text[disabled]:focus>a:only-child,.ant-btn-dangerous.ant-btn-text[disabled]:hover>a:only-child,.ant-btn-dangerous.ant-btn-text[disabled]>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-text[disabled]:active>a:only-child::after,.ant-btn-dangerous.ant-btn-text[disabled]:focus>a:only-child::after,.ant-btn-dangerous.ant-btn-text[disabled]:hover>a:only-child::after,.ant-btn-dangerous.ant-btn-text[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-icon-only{width:28px;height:28px;padding:1.3px 0;font-size:14px;border-radius:2px;vertical-align:-3px}.ant-btn-icon-only>*{font-size:14px}.ant-btn-icon-only.ant-btn-lg{width:32px;height:32px;padding:1.7px 0;font-size:16px;border-radius:2px}.ant-btn-icon-only.ant-btn-lg>*{font-size:16px}.ant-btn-icon-only.ant-btn-sm{width:22px;height:22px;padding:0;font-size:12px;border-radius:2px}.ant-btn-icon-only.ant-btn-sm>*{font-size:12px}.ant-btn-icon-only>.anticon{display:flex;justify-content:center}a.ant-btn-icon-only{vertical-align:-1px}a.ant-btn-icon-only>.anticon{display:inline}.ant-btn-round{height:28px;padding:3px 14px;font-size:12px;border-radius:28px}.ant-btn-round.ant-btn-lg{height:32px;padding:3.3px 16px;font-size:14px;border-radius:32px}.ant-btn-round.ant-btn-sm{height:22px;padding:0 11px;font-size:12px;border-radius:22px}.ant-btn-round.ant-btn-icon-only{width:auto}.ant-btn-circle{min-width:28px;padding-right:0;padding-left:0;text-align:center;border-radius:50%}.ant-btn-circle.ant-btn-lg{min-width:32px;border-radius:50%}.ant-btn-circle.ant-btn-sm{min-width:22px;border-radius:50%}.ant-btn::before{position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;z-index:1;display:none;background:#fff;border-radius:inherit;opacity:.35;transition:opacity .2s;content:'';pointer-events:none}.ant-btn-group,.ant-btn-group>.ant-btn,.ant-btn-group>span>.ant-btn,.ant-btn.ant-btn-loading,.ant-btn:active>span,.ant-btn:focus>span{position:relative}.ant-btn .anticon{transition:margin-left .3s cubic-bezier(.645,.045,.355,1)}.ant-btn .anticon.anticon-minus>svg,.ant-btn .anticon.anticon-plus>svg{shape-rendering:optimizespeed}.ant-btn.ant-btn-loading{cursor:default}.ant-btn.ant-btn-loading::before{display:block}.ant-btn>.ant-btn-loading-icon{transition:width .3s cubic-bezier(.645,.045,.355,1),opacity .3s cubic-bezier(.645,.045,.355,1)}.ant-btn>.ant-btn-loading-icon .anticon{padding-right:4px;animation:none}.ant-btn>.ant-btn-loading-icon .anticon svg{animation:loadingCircle 1s infinite linear}.ant-btn>.ant-btn-loading-icon:only-child .anticon{padding-right:0}.ant-btn-group>.ant-btn:active,.ant-btn-group>.ant-btn:focus,.ant-btn-group>.ant-btn:hover,.ant-btn-group>span>.ant-btn:active,.ant-btn-group>span>.ant-btn:focus,.ant-btn-group>span>.ant-btn:hover{z-index:2}.ant-btn-group>.ant-btn[disabled],.ant-btn-group>span>.ant-btn[disabled]{z-index:0}.ant-btn-group .ant-btn-icon-only{font-size:12px}.ant-btn+.ant-btn-group,.ant-btn-group .ant-btn+.ant-btn,.ant-btn-group .ant-btn+span,.ant-btn-group span+.ant-btn,.ant-btn-group+.ant-btn,.ant-btn-group+.ant-btn-group,.ant-btn-group>span+span{margin-left:-1px}.ant-btn-group .ant-btn-primary+.ant-btn:not(.ant-btn-primary):not([disabled]){border-left-color:transparent}.ant-btn-group .ant-btn{border-radius:0}.ant-btn-group-sm>.ant-btn:only-child,.ant-btn-group-sm>span:only-child>.ant-btn,.ant-btn-group>.ant-btn:only-child,.ant-btn-group>span:only-child>.ant-btn,.ant-card{border-radius:2px}.ant-btn-group-sm>.ant-btn:first-child:not(:last-child),.ant-btn-group-sm>span:first-child:not(:last-child)>.ant-btn,.ant-btn-group>.ant-btn:first-child:not(:last-child),.ant-btn-group>span:first-child:not(:last-child)>.ant-btn{border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-btn-group-sm>.ant-btn:last-child:not(:first-child),.ant-btn-group-sm>span:last-child:not(:first-child)>.ant-btn,.ant-btn-group>.ant-btn:last-child:not(:first-child),.ant-btn-group>span:last-child:not(:first-child)>.ant-btn{border-top-right-radius:2px;border-bottom-right-radius:2px}.ant-btn-group>.ant-btn:first-child,.ant-btn-group>span:first-child>.ant-btn{margin-left:0}.ant-btn-group>.ant-btn-group{float:left}.ant-btn-group>.ant-btn-group:not(:first-child):not(:last-child)>.ant-btn{border-radius:0}.ant-btn-group>.ant-btn-group:first-child:not(:last-child)>.ant-btn:last-child{padding-right:8px;border-top-right-radius:0;border-bottom-right-radius:0}.ant-btn-group>.ant-btn-group:last-child:not(:first-child)>.ant-btn:first-child{padding-left:8px;border-top-left-radius:0;border-bottom-left-radius:0}.ant-btn-group-rtl.ant-btn+.ant-btn-group,.ant-btn-group-rtl.ant-btn-group .ant-btn+.ant-btn,.ant-btn-group-rtl.ant-btn-group .ant-btn+span,.ant-btn-group-rtl.ant-btn-group span+.ant-btn,.ant-btn-group-rtl.ant-btn-group+.ant-btn,.ant-btn-group-rtl.ant-btn-group+.ant-btn-group,.ant-btn-group-rtl.ant-btn-group>span+span,.ant-btn-rtl.ant-btn+.ant-btn-group,.ant-btn-rtl.ant-btn-group .ant-btn+.ant-btn,.ant-btn-rtl.ant-btn-group .ant-btn+span,.ant-btn-rtl.ant-btn-group span+.ant-btn,.ant-btn-rtl.ant-btn-group+.ant-btn,.ant-btn-rtl.ant-btn-group+.ant-btn-group,.ant-btn-rtl.ant-btn-group>span+span{margin-right:-1px;margin-left:auto}.ant-btn-group-rtl.ant-btn-group>.ant-btn:first-child:not(:last-child),.ant-btn-group-rtl.ant-btn-group>span:first-child:not(:last-child)>.ant-btn{border-radius:0 2px 2px 0}.ant-btn-group-rtl.ant-btn-group>.ant-btn:last-child:not(:first-child),.ant-btn-group-rtl.ant-btn-group>span:last-child:not(:first-child)>.ant-btn{border-radius:2px 0 0 2px}.ant-btn-group-rtl.ant-btn-group-sm>.ant-btn:first-child:not(:last-child),.ant-btn-group-rtl.ant-btn-group-sm>span:first-child:not(:last-child)>.ant-btn{border-radius:0 2px 2px 0}.ant-btn-group-rtl.ant-btn-group-sm>.ant-btn:last-child:not(:first-child),.ant-btn-group-rtl.ant-btn-group-sm>span:last-child:not(:first-child)>.ant-btn{border-radius:2px 0 0 2px}.ant-btn-background-ghost.ant-btn-primary:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-primary:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-primary:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-primary>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn>.anticon+span,.ant-btn>span+.anticon{margin-left:4px}.ant-btn.ant-btn-background-ghost{color:#fff;border-color:#fff}.ant-btn.ant-btn-background-ghost,.ant-btn.ant-btn-background-ghost:active,.ant-btn.ant-btn-background-ghost:focus,.ant-btn.ant-btn-background-ghost:hover{background:0 0}.ant-btn.ant-btn-background-ghost:focus,.ant-btn.ant-btn-background-ghost:hover{color:#40a9ff;border-color:#40a9ff}.ant-btn.ant-btn-background-ghost:active{color:#096dd9;border-color:#096dd9}.ant-btn.ant-btn-background-ghost[disabled]{color:rgba(0,0,0,.25);background:0 0;border-color:#d9d9d9}.ant-btn-background-ghost.ant-btn-primary{color:#1890ff;border-color:#1890ff;text-shadow:none}.ant-btn-background-ghost.ant-btn-primary>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-primary:focus,.ant-btn-background-ghost.ant-btn-primary:hover{color:#40a9ff;border-color:#40a9ff}.ant-btn-background-ghost.ant-btn-primary:focus>a:only-child,.ant-btn-background-ghost.ant-btn-primary:hover>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-primary:active{color:#096dd9;border-color:#096dd9}.ant-btn-background-ghost.ant-btn-primary:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-primary[disabled],.ant-btn-background-ghost.ant-btn-primary[disabled]:active,.ant-btn-background-ghost.ant-btn-primary[disabled]:focus,.ant-btn-background-ghost.ant-btn-primary[disabled]:hover{color:rgba(0,0,0,.25);border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-background-ghost.ant-btn-danger:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-danger:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-danger:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-danger>a:only-child::after,.ant-btn-background-ghost.ant-btn-primary[disabled]:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-primary[disabled]:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-primary[disabled]:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-primary[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-background-ghost.ant-btn-primary[disabled]:active>a:only-child,.ant-btn-background-ghost.ant-btn-primary[disabled]:focus>a:only-child,.ant-btn-background-ghost.ant-btn-primary[disabled]:hover>a:only-child,.ant-btn-background-ghost.ant-btn-primary[disabled]>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-danger{color:#ff4d4f;border-color:#ff4d4f;text-shadow:none}.ant-btn-background-ghost.ant-btn-danger>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-danger:focus,.ant-btn-background-ghost.ant-btn-danger:hover{color:#ff7875;border-color:#ff7875}.ant-btn-background-ghost.ant-btn-danger:focus>a:only-child,.ant-btn-background-ghost.ant-btn-danger:hover>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-danger:active{color:#d9363e;border-color:#d9363e}.ant-btn-background-ghost.ant-btn-danger:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-danger[disabled],.ant-btn-background-ghost.ant-btn-danger[disabled]:active,.ant-btn-background-ghost.ant-btn-danger[disabled]:focus,.ant-btn-background-ghost.ant-btn-danger[disabled]:hover{color:rgba(0,0,0,.25);border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-background-ghost.ant-btn-danger[disabled]:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-danger[disabled]:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-danger[disabled]:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-danger[disabled]>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-background-ghost.ant-btn-danger[disabled]:active>a:only-child,.ant-btn-background-ghost.ant-btn-danger[disabled]:focus>a:only-child,.ant-btn-background-ghost.ant-btn-danger[disabled]:hover>a:only-child,.ant-btn-background-ghost.ant-btn-danger[disabled]>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous{color:#ff4d4f;border-color:#ff4d4f;text-shadow:none}.ant-btn-background-ghost.ant-btn-dangerous>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous:focus,.ant-btn-background-ghost.ant-btn-dangerous:hover{color:#ff7875;border-color:#ff7875}.ant-btn-background-ghost.ant-btn-dangerous:focus>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous:hover>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous:active{color:#d9363e;border-color:#d9363e}.ant-btn-background-ghost.ant-btn-dangerous:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous[disabled],.ant-btn-background-ghost.ant-btn-dangerous[disabled]:active,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:focus,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:hover{color:rgba(0,0,0,.25);border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous[disabled]>a:only-child::after{background:0 0;position:absolute;content:'';left:0;right:0;bottom:0;top:0}.ant-btn-background-ghost.ant-btn-dangerous[disabled]:active>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:focus>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:hover>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous[disabled]>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link{color:#ff4d4f;border-color:transparent;text-shadow:none}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:focus,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:hover{color:#ff7875;border-color:transparent}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:focus>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:hover>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:active{color:#d9363e;border-color:transparent}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled],.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:active,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:focus,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:hover{color:rgba(0,0,0,.25);border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:active>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:focus>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:hover>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-two-chinese-chars::first-letter{letter-spacing:.34em}.ant-btn-two-chinese-chars>:not(.anticon){margin-right:-.34em;letter-spacing:.34em}.ant-btn.ant-btn-block{width:100%}.ant-btn:empty{width:0;visibility:hidden;content:'\a0'}.ant-card-head::after,.ant-card-head::before{display:table;content:''}a.ant-btn{padding-top:.01px!important;line-height:26px}a.ant-btn-lg{line-height:30px}a.ant-btn-sm{line-height:20px}.ant-card,.ant-card-actions>li>span{line-height:1.66667;position:relative}.ant-btn-group-rtl.ant-btn-group .ant-btn-primary+.ant-btn-primary,.ant-btn-group-rtl.ant-btn-group .ant-btn-primary:last-child:not(:first-child){border-right-color:#40a9ff;border-left-color:#d9d9d9}.ant-btn-group-rtl.ant-btn-group .ant-btn-primary+.ant-btn-primary[disabled],.ant-btn-group-rtl.ant-btn-group .ant-btn-primary:last-child:not(:first-child)[disabled]{border-right-color:#d9d9d9;border-left-color:#40a9ff}.ant-btn-rtl.ant-btn>.ant-btn-loading-icon .anticon{padding-right:0;padding-left:4px}.ant-btn>.ant-btn-loading-icon:only-child .anticon{padding-left:0}.ant-btn-rtl.ant-btn>.anticon+span,.ant-btn-rtl.ant-btn>span+.anticon{margin-right:8px;margin-left:0}.ant-card{box-sizing:border-box;margin:0;padding:0;color:rgba(0,0,0,.85);font-size:12px;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;background:#fff}.ant-card-hoverable{cursor:pointer;transition:box-shadow .3s,border-color .3s}.ant-card-hoverable:hover{border-color:transparent;box-shadow:0 1px 2px -2px rgba(0,0,0,.16),0 3px 6px 0 rgba(0,0,0,.12),0 5px 12px 4px rgba(0,0,0,.09)}.ant-card-head,.ant-card-head .ant-tabs-top-bar{border-bottom:1px solid #f0f0f0}.ant-card-bordered{border:1px solid #f0f0f0}.ant-card-head{min-height:36px;margin-bottom:-1px;padding:0 12px;color:rgba(0,0,0,.85);font-weight:500;font-size:12px;background:0 0;border-radius:2px 2px 0 0}.ant-card-extra,.ant-card-head .ant-tabs-top{color:rgba(0,0,0,.85);font-weight:400;font-size:12px}.ant-card-head::after{clear:both}.ant-card-head-wrapper{display:flex;align-items:center}.ant-card-head-title{display:inline-block;flex:1;padding:8.5px 0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-card-body::after,.ant-card-body::before{display:table;content:''}.ant-card-head-title>.ant-typography,.ant-card-head-title>.ant-typography-edit-content{left:0;margin-top:0;margin-bottom:0}.ant-card-head .ant-tabs-top{clear:both;margin-bottom:-9px}.ant-card-extra{float:right;margin-left:auto;padding:8.5px 0}.ant-card-rtl .ant-card-extra{margin-right:auto;margin-left:0}.ant-card-body{padding:12px}.ant-card-body::after{clear:both}.ant-card-contain-grid:not(.ant-card-loading) .ant-card-body{margin:-1px 0 0 -1px;padding:0}.ant-card-grid{float:left;width:33.33%;padding:12px;border:0;border-radius:0;box-shadow:1px 0 0 0 #f0f0f0,0 1px 0 0 #f0f0f0,1px 1px 0 0 #f0f0f0,1px 0 0 0 #f0f0f0 inset,0 1px 0 0 #f0f0f0 inset;transition:all .3s}.ant-card-rtl .ant-card-grid{float:right}.ant-card-grid-hoverable:hover{position:relative;z-index:1;box-shadow:0 1px 2px -2px rgba(0,0,0,.16),0 3px 6px 0 rgba(0,0,0,.12),0 5px 12px 4px rgba(0,0,0,.09)}.ant-card-contain-tabs>.ant-card-head .ant-card-head-title{min-height:27.5px;padding-bottom:0}.ant-card-contain-tabs>.ant-card-head .ant-card-extra{padding-bottom:0}.ant-card-bordered .ant-card-cover{margin-top:-1px;margin-right:-1px;margin-left:-1px}.ant-card-cover>*{display:block;width:100%}.ant-card-actions::after,.ant-card-actions::before{display:table;content:''}.ant-card-cover img{border-radius:2px 2px 0 0}.ant-card-actions{margin:0;padding:0;list-style:none;background:#fff;border-top:1px solid #f0f0f0}.ant-card-actions::after{clear:both}.ant-card-actions>li{float:left;margin:4px 0;color:rgba(0,0,0,.45);text-align:center}.ant-card-rtl .ant-card-actions>li{float:right}.ant-card-actions>li>span{display:block;min-width:32px;font-size:12px;cursor:pointer}.ant-card-actions>li>span:hover{color:#1890ff;transition:color .3s}.ant-card-actions>li>span a:not(.ant-btn),.ant-card-actions>li>span>.anticon{display:inline-block;width:100%;color:rgba(0,0,0,.45);line-height:22px;transition:color .3s}.ant-card-meta::after,.ant-card-meta::before{display:table;content:''}.ant-card-actions>li>span a:not(.ant-btn):hover,.ant-card-actions>li>span>.anticon:hover{color:#1890ff}.ant-card-actions>li>span>.anticon{font-size:16px;line-height:22px}.ant-card-actions>li:not(:last-child){border-right:1px solid #f0f0f0}.ant-card-rtl .ant-card-actions>li:not(:last-child){border-right:none;border-left:1px solid #f0f0f0}.ant-card-type-inner .ant-card-head{padding:0 12px;background:#fafafa}.ant-card-type-inner .ant-card-head-title{padding:12px 0;font-size:12px}.ant-card-type-inner .ant-card-body{padding:16px 12px}.ant-card-type-inner .ant-card-extra{padding:13.5px 0}.ant-card-meta{margin:-4px 0}.ant-card-meta::after{clear:both}.ant-card-meta-avatar{float:left;padding-right:16px}.ant-card-rtl .ant-card-meta-avatar{float:right;padding-right:0;padding-left:16px}.ant-card-meta-detail{overflow:hidden}.ant-card-meta-detail>div:not(:last-child){margin-bottom:4px}.ant-card-meta-title{overflow:hidden;color:rgba(0,0,0,.85);font-weight:500;font-size:14px;white-space:nowrap;text-overflow:ellipsis}.ant-card-meta-description,.ant-comment-content-author-name,.ant-comment-content-author-name>*,.ant-comment-content-author-name>:hover{color:rgba(0,0,0,.45)}.ant-card-loading{overflow:hidden}.ant-card-loading .ant-card-body{user-select:none}.ant-card-loading-content p{margin:0}.ant-card-loading-block{height:14px;margin:4px 0;background:linear-gradient(90deg,rgba(207,216,220,.2),rgba(207,216,220,.4),rgba(207,216,220,.2));background-size:600% 600%;border-radius:2px;animation:card-loading 1.4s ease infinite}@keyframes card-loading{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}.ant-card-small>.ant-card-head{min-height:30px;padding:0 12px;font-size:12px}.ant-card-small>.ant-card-head>.ant-card-head-wrapper>.ant-card-head-title{padding:6px 0}.ant-card-small>.ant-card-head>.ant-card-head-wrapper>.ant-card-extra{padding:6px 0;font-size:12px}.ant-card-small>.ant-card-body{padding:12px}.ant-card-rtl .ant-skeleton-header{padding:0 0 0 8.5px}nz-card,nz-card-loading,nz-card-meta{display:block}.ant-carousel{box-sizing:border-box;margin:0;padding:0;color:rgba(0,0,0,.85);font-size:12px;font-variant:tabular-nums;line-height:1.66667;list-style:none;font-feature-settings:tnum}.ant-carousel .slick-slider{position:relative;display:block;box-sizing:border-box;touch-action:pan-y;-webkit-touch-callout:none}.ant-carousel .slick-list{position:relative;display:block;margin:0;padding:0;overflow:hidden}.ant-carousel .slick-list:focus{outline:0}.ant-carousel .slick-list.dragging{cursor:pointer}.ant-carousel .slick-list .slick-slide{pointer-events:none}.ant-carousel .slick-list .slick-slide input.ant-checkbox-input,.ant-carousel .slick-list .slick-slide input.ant-radio-input{visibility:hidden}.ant-carousel .slick-list .slick-slide.slick-active{pointer-events:auto}.ant-carousel .slick-list .slick-slide.slick-active input.ant-checkbox-input,.ant-carousel .slick-list .slick-slide.slick-active input.ant-radio-input{visibility:visible}.ant-carousel .slick-loading .slick-slide,.ant-checkbox-checked::after,.slick-loading .ant-carousel .slick-track{visibility:hidden}.ant-carousel .slick-list .slick-slide>div>div{vertical-align:bottom}.ant-carousel .slick-slider .slick-list,.ant-carousel .slick-slider .slick-track{transform:translate3d(0,0,0);touch-action:pan-y}.ant-carousel .slick-track{position:relative;top:0;left:0;display:block}.ant-carousel .slick-track::after,.ant-carousel .slick-track::before{display:table;content:''}.ant-carousel .slick-track::after{clear:both}.ant-carousel .slick-slide{display:none;float:left;height:100%;min-height:1px}.ant-carousel .slick-slide img{display:block}.ant-carousel .slick-slide.slick-loading img{display:none}.ant-carousel .slick-slide.dragging img{pointer-events:none}.ant-carousel .slick-initialized .slick-slide{display:block}.ant-carousel .slick-vertical .slick-slide{display:block;height:auto}.ant-carousel .slick-arrow.slick-hidden{display:none}.ant-carousel .slick-next,.ant-carousel .slick-prev{position:absolute;top:50%;display:block;width:20px;height:20px;margin-top:-10px;padding:0;color:transparent;font-size:0;line-height:0;background:0 0;border:0;outline:0;cursor:pointer}.ant-carousel .slick-next:focus,.ant-carousel .slick-next:hover,.ant-carousel .slick-prev:focus,.ant-carousel .slick-prev:hover{color:transparent;background:0 0;outline:0}.ant-carousel .slick-next:focus::before,.ant-carousel .slick-next:hover::before,.ant-carousel .slick-prev:focus::before,.ant-carousel .slick-prev:hover::before{opacity:1}.ant-carousel .slick-next.slick-disabled::before,.ant-carousel .slick-prev.slick-disabled::before{opacity:.25}.ant-carousel .slick-prev{left:-25px}.ant-carousel .slick-prev::before{content:'←'}.ant-carousel .slick-next::before,.ant-carousel-rtl .ant-carousel .slick-prev::before{content:'→'}.ant-carousel .slick-next{right:-25px}.ant-carousel .slick-dots{position:absolute;right:0;bottom:0;left:0;z-index:15;display:flex!important;justify-content:center;margin-right:15%;margin-left:15%;padding-left:0;list-style:none}.ant-carousel .slick-dots-bottom,.ant-popover-placement-leftBottom .ant-popover-arrow,.ant-popover-placement-rightBottom .ant-popover-arrow{bottom:12px}.ant-carousel .slick-dots-top{top:12px;bottom:auto}.ant-carousel .slick-dots li{position:relative;display:inline-block;flex:0 1 auto;box-sizing:content-box;width:16px;height:3px;margin:0 3px;padding:0;text-align:center;text-indent:-999px;vertical-align:top;transition:all .5s}.ant-carousel .slick-dots li button{display:block;width:100%;height:3px;padding:0;color:transparent;font-size:0;background:#fff;border:0;border-radius:1px;outline:0;cursor:pointer;opacity:.3;transition:all .5s}.ant-checkbox,.ant-checkbox-wrapper{box-sizing:border-box;padding:0;font-size:12px;font-variant:tabular-nums;font-feature-settings:tnum}.ant-carousel .slick-dots li button:focus,.ant-carousel .slick-dots li button:hover{opacity:.75}.ant-carousel .slick-dots li.slick-active{width:24px}.ant-carousel .slick-dots li.slick-active button{background:#fff;opacity:1}.ant-carousel .slick-dots li.slick-active:focus,.ant-carousel .slick-dots li.slick-active:hover{opacity:1}.ant-carousel-vertical .slick-dots{top:50%;bottom:auto;flex-direction:column;width:3px;height:auto;margin:0;transform:translateY(-50%)}.ant-carousel-vertical .slick-dots-left{right:auto;left:12px}.ant-carousel-vertical .slick-dots-right{right:12px;left:auto}.ant-carousel-vertical .slick-dots li{width:3px;height:16px;margin:4px 2px;vertical-align:baseline}.ant-carousel-vertical .slick-dots li button{width:3px;height:16px}.ant-carousel-vertical .slick-dots li.slick-active,.ant-carousel-vertical .slick-dots li.slick-active button{width:3px;height:24px}.ant-carousel-rtl .ant-carousel .slick-track{right:0;left:auto}.ant-carousel-rtl .ant-carousel .slick-prev{right:-25px;left:auto}.ant-carousel-rtl .ant-carousel .slick-next{right:auto;left:-25px}.ant-carousel-rtl .ant-carousel .slick-next::before{content:'←'}.ant-carousel-rtl.ant-carousel .slick-dots{flex-direction:row-reverse}.ant-carousel-rtl.ant-carousel-vertical .slick-dots{flex-direction:column}nz-carousel{display:block;position:relative;overflow:hidden;width:100%;height:100%}.slick-dots{display:block}.slick-track{opacity:1}.slick-list{direction:ltr}@keyframes antCheckboxEffect{0%{transform:scale(1);opacity:.5}100%{transform:scale(1.6);opacity:0}}.ant-checkbox{margin:0;color:rgba(0,0,0,.85);list-style:none;position:relative;top:.2em;white-space:nowrap;outline:0;cursor:pointer}.ant-checkbox-input:focus+.ant-checkbox-inner,.ant-checkbox-wrapper:hover .ant-checkbox-inner,.ant-checkbox:hover .ant-checkbox-inner{border-color:#1890ff}.ant-checkbox-checked::after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #1890ff;border-radius:2px;animation:antCheckboxEffect .36s ease-in-out;animation-fill-mode:backwards;content:''}.ant-checkbox-wrapper:hover .ant-checkbox::after,.ant-checkbox:hover::after{visibility:visible}.ant-checkbox-inner{position:relative;top:0;left:0;display:block;width:14px;height:14px;direction:ltr;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;border-collapse:separate;transition:all .3s}.ant-checkbox-rtl,.ant-collapse-rtl,.ant-comment-rtl,.ant-descriptions-rtl,.ant-divider-rtl,.ant-drawer-rtl,.ant-dropdown-menu-submenu-rtl .ant-dropdown-menu-item-group-title,.ant-dropdown-menu.ant-dropdown-menu-rtl,.ant-dropdown-rtl,.ant-dropdown-rtl .ant-dropdown-menu-item-group-title,.ant-empty-rtl,.ant-input-affix-wrapper-rtl,.ant-input-group-rtl,.ant-input-group-wrapper-rtl,.ant-input-number-affix-wrapper-rtl,.ant-input-number-rtl,.ant-input-rtl,.ant-input-search-rtl,.ant-input-textarea-rtl,.ant-picker-dropdown-rtl .ant-picker-footer-extra,.ant-picker-input>input-rtl,.ant-picker-panel-rtl,.ant-picker-rtl,.ant-row-rtl{direction:rtl}.ant-checkbox-inner::after{position:absolute;top:50%;left:21.5%;display:table;width:5px;height:8px;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(0) translate(-50%,-50%);opacity:0;transition:all .1s cubic-bezier(.71,-.46,.88,.6),opacity .1s;content:' '}.ant-checkbox-input{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;cursor:pointer;opacity:0}.ant-checkbox-checked .ant-checkbox-inner::after{position:absolute;display:table;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(1) translate(-50%,-50%);opacity:1;transition:all .2s cubic-bezier(.12,.4,.29,1.46) .1s;content:' '}.ant-checkbox-checked .ant-checkbox-inner{background-color:#1890ff;border-color:#1890ff}.ant-checkbox-disabled{cursor:not-allowed}.ant-checkbox-disabled.ant-checkbox-checked .ant-checkbox-inner::after{border-color:rgba(0,0,0,.25);animation-name:none}.ant-checkbox-disabled .ant-checkbox-input{cursor:not-allowed;pointer-events:none}.ant-checkbox-disabled .ant-checkbox-inner{background-color:#f5f5f5;border-color:#d9d9d9!important}.ant-checkbox-disabled .ant-checkbox-inner::after{border-color:#f5f5f5;border-collapse:separate;animation-name:none}.ant-descriptions-bordered .ant-descriptions-view>table,.markdown>table{border-collapse:collapse;table-layout:auto}.ant-checkbox-disabled+span{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-checkbox-disabled:hover::after,.ant-checkbox-wrapper:hover .ant-checkbox-disabled::after{visibility:hidden}.ant-checkbox-wrapper{margin:0;color:rgba(0,0,0,.85);list-style:none;display:inline-flex;align-items:baseline;line-height:unset;cursor:pointer}.ant-checkbox-wrapper::after{display:inline-block;width:0;overflow:hidden;content:'\a0'}.ant-checkbox-wrapper.ant-checkbox-wrapper-disabled{cursor:not-allowed}.ant-checkbox-wrapper+.ant-checkbox-wrapper{margin-left:8px}.ant-checkbox-wrapper.ant-checkbox-wrapper-in-form-item input[type=checkbox]{width:14px;height:14px}.ant-checkbox+span{padding-right:8px;padding-left:8px}.ant-checkbox-group,.ant-collapse{padding:0;line-height:1.66667;color:rgba(0,0,0,.85);font-size:12px;list-style:none;box-sizing:border-box;font-variant:tabular-nums;font-feature-settings:tnum}.ant-checkbox-group{margin:0;display:inline-block}.ant-checkbox-group-item{margin-right:6px}.ant-checkbox-group-item:last-child{margin-right:0}.ant-checkbox-group-item+.ant-checkbox-group-item{margin-left:0}.ant-checkbox-indeterminate .ant-checkbox-inner{background-color:#fff;border-color:#d9d9d9}.ant-checkbox-indeterminate .ant-checkbox-inner::after{top:50%;left:50%;width:6px;height:6px;background-color:#1890ff;border:0;transform:translate(-50%,-50%) scale(1);opacity:1;content:' '}.ant-checkbox-indeterminate.ant-checkbox-disabled .ant-checkbox-inner::after{background-color:rgba(0,0,0,.25);border-color:rgba(0,0,0,.25)}.ant-checkbox-group-rtl .ant-checkbox-group-item{margin-right:0;margin-left:6px}.ant-checkbox-group-rtl .ant-checkbox-group-item:last-child{margin-left:0!important}.ant-checkbox-group-rtl .ant-checkbox-group-item+.ant-checkbox-group-item{margin-left:6px}.ant-checkbox+span:empty{display:none}.ant-collapse{margin:0;background-color:#fafafa;border:1px solid #d9d9d9;border-bottom:0;border-radius:2px}.ant-collapse-item:last-child>.ant-collapse-content,.ant-collapse>.ant-collapse-item:last-child,.ant-collapse>.ant-collapse-item:last-child>.ant-collapse-header{border-radius:0 0 2px 2px}.ant-collapse>.ant-collapse-item{border-bottom:1px solid #d9d9d9}.ant-collapse>.ant-collapse-item>.ant-collapse-header{position:relative;display:flex;flex-wrap:nowrap;align-items:flex-start;padding:8px;color:rgba(0,0,0,.85);line-height:1.66667;cursor:pointer;transition:all .3s,visibility 0s}.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow{display:inline-block;margin-right:8px;font-size:12px;vertical-align:-1px}.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow svg{transition:transform .24s}.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-extra{margin-left:auto}.ant-collapse>.ant-collapse-item>.ant-collapse-header:focus{outline:0}.ant-collapse>.ant-collapse-item .ant-collapse-header-collapsible-only{cursor:default}.ant-collapse>.ant-collapse-item .ant-collapse-header-collapsible-only .ant-collapse-header-text{cursor:pointer}.ant-collapse>.ant-collapse-item.ant-collapse-no-arrow>.ant-collapse-header{padding-left:8px}.ant-collapse-icon-position-right>.ant-collapse-item>.ant-collapse-header{position:relative;padding:8px 40px 8px 8px}.ant-collapse-icon-position-right>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow{position:absolute;top:50%;right:8px;left:auto;margin:0;transform:translateY(-50%)}.ant-collapse-content{color:rgba(0,0,0,.85);background-color:#fff;border-top:1px solid #d9d9d9}.ant-collapse-borderless,.ant-descriptions-bordered .ant-descriptions-item-label{background-color:#fafafa}.ant-collapse-borderless>.ant-collapse-item>.ant-collapse-content,.ant-collapse-ghost>.ant-collapse-item>.ant-collapse-content{border-top:0;background-color:transparent}.ant-collapse-content>.ant-collapse-content-box{padding:8px 16px}.ant-collapse-content-hidden{display:none}nz-collapse,nz-collapse-panel,nz-comment,nz-comment-content{display:block}.ant-collapse-borderless{border:0}.ant-collapse-borderless>.ant-collapse-item{border-bottom:1px solid #d9d9d9}.ant-collapse-borderless>.ant-collapse-item:last-child,.ant-collapse-ghost>.ant-collapse-item{border-bottom:0}.ant-collapse-borderless>.ant-collapse-item:last-child,.ant-collapse-borderless>.ant-collapse-item:last-child .ant-collapse-header{border-radius:0}.ant-collapse-borderless>.ant-collapse-item>.ant-collapse-content>.ant-collapse-content-box{padding-top:4px}.ant-collapse-ghost{background-color:transparent;border:0}.ant-collapse-ghost>.ant-collapse-item>.ant-collapse-content>.ant-collapse-content-box{padding-top:12px;padding-bottom:12px}.ant-collapse .ant-collapse-item-disabled>.ant-collapse-header,.ant-collapse .ant-collapse-item-disabled>.ant-collapse-header>.arrow{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-collapse-rtl .ant-collapse>.ant-collapse-item>.ant-collapse-header{padding:8px 40px 8px 8px}.ant-collapse-rtl.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow{margin-right:0;margin-left:8px}.ant-collapse-rtl.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow svg{transform:rotate(180deg)}.ant-collapse-rtl.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-extra{margin-right:auto;margin-left:0}.ant-collapse-rtl.ant-collapse>.ant-collapse-item.ant-collapse-no-arrow>.ant-collapse-header{padding-right:8px;padding-left:0}.ant-comment{position:relative;background-color:inherit}.ant-comment-inner{display:flex;padding:8px 0}.ant-comment-avatar{position:relative;flex-shrink:0;margin-right:8px;cursor:pointer}.ant-comment-avatar img{width:32px;height:32px;border-radius:50%}.ant-comment-content{position:relative;flex:1 1 auto;min-width:1px;font-size:12px;word-wrap:break-word}.ant-comment-content-author{display:flex;flex-wrap:wrap;justify-content:flex-start;margin-bottom:0;font-size:12px}.ant-comment-content-author>a,.ant-comment-content-author>span{padding-right:4px;font-size:12px;line-height:18px}.ant-comment-content-author-name{font-size:12px;transition:color .3s}.ant-comment-content-author-time{color:#ccc;white-space:nowrap;cursor:auto}.ant-comment-content-detail p{margin-bottom:0;white-space:pre-wrap}.ant-comment-actions{margin-top:4px;margin-bottom:0;padding-left:0}.ant-comment-actions>li{display:inline-block;color:rgba(0,0,0,.45)}.ant-comment-actions>li>span{margin-right:10px;color:rgba(0,0,0,.45);font-size:12px;cursor:pointer;transition:color .3s;user-select:none}.ant-comment-actions>li>span:hover{color:#595959}.ant-comment-nested{margin-left:44px}.ant-comment-rtl .ant-comment-avatar{margin-right:0;margin-left:12px}.ant-comment-rtl .ant-comment-content-author>a,.ant-comment-rtl .ant-comment-content-author>span{padding-right:0;padding-left:8px}.ant-comment-rtl .ant-comment-actions{padding-right:0}.ant-comment-rtl .ant-comment-actions>li>span{margin-right:0;margin-left:10px}.ant-comment-rtl .ant-comment-nested{margin-right:44px;margin-left:0}.ant-picker,.ant-picker-input{display:inline-flex;position:relative}.ant-picker-status-error.ant-picker,.ant-picker-status-error.ant-picker:not([disabled]):hover{background-color:#fff;border-color:#ff4d4f}.ant-picker-status-error.ant-picker-focused,.ant-picker-status-error.ant-picker:focus{border-color:#ff7875;box-shadow:0 0 0 2px rgba(255,77,79,.2);border-right-width:1px;outline:0}.ant-picker-status-warning.ant-picker,.ant-picker-status-warning.ant-picker:not([disabled]):hover{background-color:#fff;border-color:#faad14}.ant-picker-status-warning.ant-picker-focused,.ant-picker-status-warning.ant-picker:focus{border-color:#ffc53d;box-shadow:0 0 0 2px rgba(250,173,20,.2);border-right-width:1px;outline:0}.ant-picker{box-sizing:border-box;margin:0;color:rgba(0,0,0,.85);font-size:12px;font-variant:tabular-nums;line-height:1.66667;list-style:none;font-feature-settings:tnum;padding:3px 7px;align-items:center;background:#fff;border:1px solid #d9d9d9;border-radius:2px;transition:border .3s,box-shadow .3s}.ant-picker-focused,.ant-picker:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-picker-focused,.ant-input-rtl .ant-picker:hover{border-right-width:0;border-left-width:1px!important}.ant-picker-focused{border-color:#40a9ff;box-shadow:0 0 0 2px rgba(24,144,255,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-picker-focused{border-right-width:0;border-left-width:1px!important}.ant-picker.ant-picker-disabled{background:#f5f5f5;border-color:#d9d9d9;cursor:not-allowed}.ant-picker.ant-picker-disabled .ant-picker-suffix{color:rgba(0,0,0,.25)}.ant-picker.ant-picker-borderless{background-color:transparent!important;border-color:transparent!important;box-shadow:none!important}.ant-picker-input{align-items:center;width:100%}.ant-picker-input>input{position:relative;display:inline-block;width:100%;color:rgba(0,0,0,.85);font-size:12px;line-height:1.66667;border-radius:2px;transition:all .3s;flex:auto;min-width:1px;height:auto;padding:0;background:0 0;border:0}.ant-picker-input>input::-moz-placeholder{opacity:1}.ant-picker-input>input::placeholder{color:#bfbfbf;user-select:none}.ant-picker-input>input-disabled,.ant-picker-input>input[disabled]{background-color:#f5f5f5;cursor:not-allowed;color:rgba(0,0,0,.25);pointer-events:none}.ant-picker-input>input:placeholder-shown{text-overflow:ellipsis}.ant-picker-input>input:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-picker-input>input:hover{border-right-width:0;border-left-width:1px!important}.ant-picker-input>input-focused,.ant-picker-input>input:focus{border-color:#40a9ff;box-shadow:0 0 0 2px rgba(24,144,255,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-picker-input>input-focused,.ant-input-rtl .ant-picker-input>input:focus{border-right-width:0;border-left-width:1px!important}.ant-picker-input>input-disabled:hover,.ant-picker-input>input[disabled]:hover{border-color:#d9d9d9;border-right-width:1px}.ant-picker-input>input-disabled{border-color:#d9d9d9;box-shadow:none;opacity:1}.ant-picker-input>input[disabled]{border-color:#d9d9d9;box-shadow:none;opacity:1}.ant-picker-input>input-borderless,.ant-picker-input>input-borderless-disabled,.ant-picker-input>input-borderless-focused,.ant-picker-input>input-borderless:focus,.ant-picker-input>input-borderless:hover,.ant-picker-input>input-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-picker-input>input{max-width:100%;height:auto;min-height:28px;line-height:1.66667;vertical-align:bottom;transition:all .3s,height 0s}.ant-picker-input>input-lg{padding:3.4px 11px;font-size:14px}.ant-picker-input>input-sm{padding:0 7px}.ant-picker-input>input-stepperless[type=number]{-moz-appearance:textfield}.ant-picker-input>input-stepperless[type=number] ::-webkit-outer-spin-button,.ant-picker-input>input-stepperless[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ant-picker-input>input:focus{box-shadow:none}.ant-picker-input>input[disabled]{background:0 0}.ant-picker-input:hover .ant-picker-clear{opacity:1}.ant-picker-input-placeholder>input{color:#bfbfbf}.ant-picker-large{padding:3.5px 11px}.ant-picker-large .ant-picker-input>input{font-size:14px}.ant-picker-small{padding:0 7px}.ant-picker-suffix{display:flex;flex:none;align-self:center;margin-left:2px;color:rgba(0,0,0,.25);line-height:1;pointer-events:none}.ant-picker-suffix>*{vertical-align:top}.ant-picker-suffix>:not(:last-child){margin-right:8px}.ant-picker-clear{position:absolute;top:50%;right:0;color:rgba(0,0,0,.25);line-height:1;background:#fff;transform:translateY(-50%);cursor:pointer;opacity:0;transition:opacity .3s,color .3s}.ant-picker-range .ant-picker-clear,.ant-picker-range.ant-picker-small .ant-picker-clear{right:7px}.ant-picker-clear>*{vertical-align:top}.ant-picker-clear:hover{color:rgba(0,0,0,.45)}.ant-picker-separator{position:relative;display:inline-block;width:1em;height:14px;color:rgba(0,0,0,.25);font-size:14px;vertical-align:top;cursor:default}.ant-picker-focused .ant-picker-separator{color:rgba(0,0,0,.45)}.ant-picker-disabled .ant-picker-range-separator .ant-picker-separator{cursor:not-allowed}.ant-picker-range{position:relative;display:inline-flex}.ant-picker-range:hover .ant-picker-clear{opacity:1}.ant-picker-range .ant-picker-active-bar{bottom:-1px;height:2px;margin-left:7px;background:#1890ff;opacity:0;transition:all .3s ease-out;pointer-events:none}.ant-picker-range.ant-picker-focused .ant-picker-active-bar{opacity:1}.ant-picker-range-separator{align-items:center;padding:0 4px;line-height:1}.ant-picker-range.ant-picker-small .ant-picker-active-bar{margin-left:7px}.ant-picker-dropdown{box-sizing:border-box;margin:0;padding:0;color:rgba(0,0,0,.85);font-size:12px;font-variant:tabular-nums;line-height:1.66667;list-style:none;font-feature-settings:tnum;position:absolute;z-index:1050}.ant-picker-dropdown-hidden{display:none}.ant-picker-dropdown-placement-bottomLeft .ant-picker-range-arrow{top:2.59px;display:block;transform:rotate(-135deg) translateY(1px)}.ant-picker-dropdown-placement-topLeft .ant-picker-range-arrow{bottom:2.59px;display:block;transform:rotate(45deg)}.ant-picker-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-picker-dropdown-placement-topLeft,.ant-picker-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-picker-dropdown-placement-topRight,.ant-picker-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-picker-dropdown-placement-topLeft,.ant-picker-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-picker-dropdown-placement-topRight{animation-name:antSlideDownIn}.ant-dropdown.ant-slide-down-appear.ant-slide-down-appear-active.ant-dropdown-placement-bottom,.ant-dropdown.ant-slide-down-appear.ant-slide-down-appear-active.ant-dropdown-placement-bottomLeft,.ant-dropdown.ant-slide-down-appear.ant-slide-down-appear-active.ant-dropdown-placement-bottomRight,.ant-dropdown.ant-slide-down-enter.ant-slide-down-enter-active.ant-dropdown-placement-bottom,.ant-dropdown.ant-slide-down-enter.ant-slide-down-enter-active.ant-dropdown-placement-bottomLeft,.ant-dropdown.ant-slide-down-enter.ant-slide-down-enter-active.ant-dropdown-placement-bottomRight,.ant-picker-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-picker-dropdown-placement-bottomLeft,.ant-picker-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-picker-dropdown-placement-bottomRight,.ant-picker-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-picker-dropdown-placement-bottomLeft,.ant-picker-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-picker-dropdown-placement-bottomRight,.ant-select-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-select-dropdown-placement-bottomLeft,.ant-select-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-select-dropdown-placement-bottomLeft{animation-name:antSlideUpIn}.ant-picker-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-picker-dropdown-placement-topLeft,.ant-picker-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-picker-dropdown-placement-topRight{animation-name:antSlideDownOut}.ant-picker-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-picker-dropdown-placement-bottomLeft,.ant-picker-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-picker-dropdown-placement-bottomRight{animation-name:antSlideUpOut}.ant-picker-dropdown-range{padding:7.54px 0}.ant-picker-dropdown-range-hidden{display:none}.ant-picker-dropdown .ant-picker-panel>.ant-picker-time-panel{padding-top:2px}.ant-picker-ranges{margin-bottom:0;padding:2px 8px;overflow:hidden;line-height:28px;text-align:left;list-style:none}.ant-picker-ranges>li{display:inline-block}.ant-picker-ranges .ant-picker-preset>.ant-tag-blue{color:#1890ff;background:#e6f7ff;border-color:#91d5ff;cursor:pointer}.ant-dropdown-arrow,.ant-picker-range-arrow{height:11.31px;background:linear-gradient(135deg,transparent 40%,#fff 40%);border-radius:0 0 2px}.ant-picker-ranges .ant-picker-ok{float:right;margin-left:4px}.ant-picker-range-wrapper{display:flex}.ant-picker-range-arrow{position:absolute;z-index:1;display:none;width:11.31px;margin-left:10.5px;box-shadow:2px 2px 6px -2px rgba(0,0,0,.1);transition:left .3s ease-out;pointer-events:none}.ant-picker-range-arrow::before{position:absolute;top:-11.31px;left:-11.31px;width:33.94px;height:33.94px;background:-10px -10px no-repeat #fff;content:'';clip-path:path('M 9.849242404917499 24.091883092036785 A 5 5 0 0 1 13.384776310850237 22.627416997969522 L 20.627416997969522 22.627416997969522 A 2 2 0 0 0 22.627416997969522 20.627416997969522 L 22.627416997969522 13.384776310850237 A 5 5 0 0 1 24.091883092036785 9.849242404917499 L 23.091883092036785 9.849242404917499 L 9.849242404917499 23.091883092036785 Z')}.ant-picker-panel-container{overflow:hidden;vertical-align:top;background:#fff;border-radius:2px;box-shadow:0 3px 6px -4px rgba(0,0,0,.12),0 6px 16px 0 rgba(0,0,0,.08),0 9px 28px 8px rgba(0,0,0,.05);transition:margin .3s}.ant-picker-panel-container .ant-picker-panels{display:inline-flex;flex-wrap:nowrap;direction:ltr}.ant-picker-panel-container .ant-picker-panel{vertical-align:top;background:0 0;border-width:0 0 1px;border-radius:0}.ant-picker-panel-container .ant-picker-panel .ant-picker-content,.ant-picker-panel-container .ant-picker-panel table{text-align:center}.ant-picker-panel-container .ant-picker-panel-focused{border-color:#f0f0f0}.ant-picker-panel{display:inline-flex;flex-direction:column;text-align:center;background:#fff;border:1px solid #f0f0f0;border-radius:2px;outline:0}.ant-picker-panel-focused{border-color:#1890ff}.ant-picker-date-panel,.ant-picker-decade-panel,.ant-picker-month-panel,.ant-picker-quarter-panel,.ant-picker-time-panel,.ant-picker-week-panel,.ant-picker-year-panel{display:flex;flex-direction:column;width:244px}.ant-picker-header{display:flex;padding:0 4px;color:rgba(0,0,0,.85);border-bottom:1px solid #f0f0f0}.ant-picker-header>*{flex:none}.ant-picker-header button{padding:0;color:rgba(0,0,0,.25);line-height:32px;background:0 0;border:0;cursor:pointer;transition:color .3s}.ant-picker-header>button{min-width:1.6em;font-size:12px}.ant-picker-header>button:hover{color:rgba(0,0,0,.85)}.ant-picker-header-view{flex:auto;font-weight:500;line-height:32px}.ant-picker-header-view button{color:inherit;font-weight:inherit}.ant-picker-header-view button:not(:first-child){margin-left:4px}.ant-picker-header-view button:hover{color:#1890ff}.ant-picker-next-icon,.ant-picker-prev-icon,.ant-picker-super-next-icon,.ant-picker-super-prev-icon{position:relative;display:inline-block;width:7px;height:7px}.ant-picker-next-icon::before,.ant-picker-prev-icon::before,.ant-picker-super-next-icon::before,.ant-picker-super-prev-icon::before{position:absolute;top:0;left:0;display:inline-block;width:7px;height:7px;border:0 solid currentcolor;border-width:1.5px 0 0 1.5px;content:''}.ant-picker-super-next-icon::after,.ant-picker-super-prev-icon::after{position:absolute;top:4px;left:4px;display:inline-block;width:7px;height:7px;border:0 solid currentcolor;border-width:1.5px 0 0 1.5px;content:''}.ant-picker-prev-icon,.ant-picker-super-prev-icon{transform:rotate(-45deg)}.ant-picker-next-icon,.ant-picker-super-next-icon{transform:rotate(135deg)}.ant-picker-content{width:100%;table-layout:fixed;border-collapse:collapse}.ant-picker-content td,.ant-picker-content th{position:relative;min-width:24px;font-weight:400}.ant-picker-content th{height:30px;color:rgba(0,0,0,.85);line-height:30px}.ant-picker-cell{padding:3px 0;color:rgba(0,0,0,.25);cursor:pointer}.ant-picker-cell-in-view{color:rgba(0,0,0,.85)}.ant-picker-cell::before{position:absolute;top:50%;right:0;left:0;z-index:1;height:22px;transform:translateY(-50%);transition:all .3s;content:''}.ant-picker-cell:hover:not(.ant-picker-cell-in-view) .ant-picker-cell-inner,.ant-picker-cell:hover:not(.ant-picker-cell-selected):not(.ant-picker-cell-range-start):not(.ant-picker-cell-range-end):not(.ant-picker-cell-range-hover-start):not(.ant-picker-cell-range-hover-end) .ant-picker-cell-inner{background:#f5f5f5}.ant-picker-cell-in-view.ant-picker-cell-today .ant-picker-cell-inner::before{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;border:1px solid #1890ff;border-radius:2px;content:''}.ant-picker-cell-in-view.ant-picker-cell-in-range{position:relative}.ant-picker-cell-in-view.ant-picker-cell-in-range::before{background:#e6f7ff}.ant-picker-cell-in-view.ant-picker-cell-range-end .ant-picker-cell-inner,.ant-picker-cell-in-view.ant-picker-cell-range-start .ant-picker-cell-inner,.ant-picker-cell-in-view.ant-picker-cell-selected .ant-picker-cell-inner{color:#fff;background:#1890ff}.ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single)::before,.ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single)::before{background:#e6f7ff}.ant-picker-cell-in-view.ant-picker-cell-range-start::before{left:50%}.ant-picker-cell-in-view.ant-picker-cell-range-end::before{right:50%}.ant-picker-cell-in-view.ant-picker-cell-range-hover-end.ant-picker-cell-range-end-single::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-end.ant-picker-cell-range-start.ant-picker-cell-range-end.ant-picker-cell-range-start-near-hover::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-end:not(.ant-picker-cell-in-range):not(.ant-picker-cell-range-start):not(.ant-picker-cell-range-end)::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-start.ant-picker-cell-range-start-single::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-start.ant-picker-cell-range-start.ant-picker-cell-range-end.ant-picker-cell-range-end-near-hover::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-start:not(.ant-picker-cell-in-range):not(.ant-picker-cell-range-start):not(.ant-picker-cell-range-end)::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover:not(.ant-picker-cell-in-range)::after{position:absolute;top:50%;z-index:0;height:24px;border-top:1px dashed #7ec1ff;border-bottom:1px dashed #7ec1ff;transform:translateY(-50%);transition:all .3s;content:''}.ant-picker-cell-range-hover-end::after,.ant-picker-cell-range-hover-start::after,.ant-picker-cell-range-hover::after{right:0;left:2px}.ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover::before,.ant-picker-cell-in-view.ant-picker-cell-range-end.ant-picker-cell-range-hover::before,.ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single).ant-picker-cell-range-hover-end::before,.ant-picker-cell-in-view.ant-picker-cell-range-start.ant-picker-cell-range-hover::before,.ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single).ant-picker-cell-range-hover-start::before,.ant-picker-panel>:not(.ant-picker-date-panel) .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end::before,.ant-picker-panel>:not(.ant-picker-date-panel) .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start::before{background:#cbe6ff}.ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single):not(.ant-picker-cell-range-end) .ant-picker-cell-inner{border-radius:2px 0 0 2px}.ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single):not(.ant-picker-cell-range-start) .ant-picker-cell-inner{border-radius:0 2px 2px 0}.ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end .ant-picker-cell-inner::after,.ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start .ant-picker-cell-inner::after{position:absolute;top:0;bottom:0;z-index:-1;background:#cbe6ff;transition:all .3s;content:''}.ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start .ant-picker-cell-inner::after{right:-6px;left:0}.ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end .ant-picker-cell-inner::after{right:0;left:-6px}.ant-picker-cell-range-hover.ant-picker-cell-range-start::after{right:50%}.ant-picker-cell-range-hover.ant-picker-cell-range-end::after{left:50%}.ant-picker-cell-in-view.ant-picker-cell-range-hover-edge-start:not(.ant-picker-cell-range-hover-edge-start-near-range)::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-start::after,.ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover-edge-start.ant-picker-cell-range-hover-edge-start-near-range::after,tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover-end:first-child::after,tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover:first-child::after{left:6px;border-left:1px dashed #7ec1ff;border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-picker-cell-in-view.ant-picker-cell-end.ant-picker-cell-range-hover-edge-end.ant-picker-cell-range-hover-edge-end-near-range::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-edge-end:not(.ant-picker-cell-range-hover-edge-end-near-range)::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-end::after,tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover-start:last-child::after,tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover:last-child::after{right:6px;border-right:1px dashed #7ec1ff;border-top-right-radius:2px;border-bottom-right-radius:2px}.ant-picker-cell-disabled{color:rgba(0,0,0,.25);pointer-events:none}.ant-picker-cell-disabled .ant-picker-cell-inner{background:0 0}.ant-picker-cell-disabled::before{background:rgba(0,0,0,.04)}.ant-picker-cell-disabled.ant-picker-cell-today .ant-picker-cell-inner::before{border-color:rgba(0,0,0,.25)}.ant-picker-decade-panel .ant-picker-content,.ant-picker-month-panel .ant-picker-content,.ant-picker-quarter-panel .ant-picker-content,.ant-picker-year-panel .ant-picker-content{height:192px}.ant-picker-decade-panel .ant-picker-cell-inner,.ant-picker-month-panel .ant-picker-cell-inner,.ant-picker-quarter-panel .ant-picker-cell-inner,.ant-picker-year-panel .ant-picker-cell-inner{padding:0 4px}.ant-picker-quarter-panel .ant-picker-content{height:56px}.ant-picker-footer{width:min-content;min-width:100%;line-height:30px;text-align:center;border-bottom:1px solid transparent}.ant-picker-panel .ant-picker-footer{border-top:1px solid #f0f0f0}.ant-picker-footer-extra{padding:0 8px;line-height:30px;text-align:left}.ant-picker-footer-extra:not(:last-child){border-bottom:1px solid #f0f0f0}.ant-picker-now{text-align:left}.ant-picker-today-btn{color:#1890ff}.ant-picker-today-btn:hover{color:#40a9ff}.ant-picker-today-btn:active{color:#096dd9}.ant-picker-today-btn.ant-picker-today-btn-disabled{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-picker-decade-panel .ant-picker-cell-inner{padding:0 2px}.ant-picker-decade-panel .ant-picker-cell::before{display:none}.ant-picker-month-panel .ant-picker-body,.ant-picker-quarter-panel .ant-picker-body,.ant-picker-year-panel .ant-picker-body{padding:0 4px}.ant-picker-date-panel .ant-picker-body,.ant-picker-week-panel .ant-picker-body{padding:4px 8px}.ant-picker-month-panel .ant-picker-cell-inner,.ant-picker-quarter-panel .ant-picker-cell-inner,.ant-picker-year-panel .ant-picker-cell-inner{width:60px}.ant-picker-month-panel .ant-picker-cell-range-hover-start::after,.ant-picker-quarter-panel .ant-picker-cell-range-hover-start::after,.ant-picker-year-panel .ant-picker-cell-range-hover-start::after{left:9.33px;border-left:1px dashed #7ec1ff;border-radius:2px 0 0 2px}.ant-picker-month-panel .ant-picker-cell-range-hover-end::after,.ant-picker-panel-rtl .ant-picker-month-panel .ant-picker-cell-range-hover-start::after,.ant-picker-panel-rtl .ant-picker-quarter-panel .ant-picker-cell-range-hover-start::after,.ant-picker-panel-rtl .ant-picker-year-panel .ant-picker-cell-range-hover-start::after,.ant-picker-quarter-panel .ant-picker-cell-range-hover-end::after,.ant-picker-year-panel .ant-picker-cell-range-hover-end::after{right:9.33px;border-right:1px dashed #7ec1ff;border-radius:0 2px 2px 0}.ant-picker-panel-rtl .ant-picker-month-panel .ant-picker-cell-range-hover-end::after,.ant-picker-panel-rtl .ant-picker-quarter-panel .ant-picker-cell-range-hover-end::after,.ant-picker-panel-rtl .ant-picker-year-panel .ant-picker-cell-range-hover-end::after{left:9.33px;border-left:1px dashed #7ec1ff;border-radius:2px 0 0 2px}.ant-picker-week-panel .ant-picker-cell .ant-picker-cell-inner,.ant-picker-week-panel .ant-picker-cell-selected .ant-picker-cell-inner,.ant-picker-week-panel .ant-picker-cell:hover .ant-picker-cell-inner{background:0 0!important}.ant-picker-week-panel-row td{transition:background .3s}.ant-picker-week-panel-row:hover td{background:#f5f5f5}.ant-picker-week-panel-row-selected td,.ant-picker-week-panel-row-selected:hover td{background:#1890ff}.ant-picker-week-panel-row-selected td.ant-picker-cell-week,.ant-picker-week-panel-row-selected:hover td.ant-picker-cell-week{color:rgba(255,255,255,.5)}.ant-picker-week-panel-row-selected td.ant-picker-cell-today .ant-picker-cell-inner::before,.ant-picker-week-panel-row-selected:hover td.ant-picker-cell-today .ant-picker-cell-inner::before{border-color:#fff}.ant-picker-datetime-panel .ant-picker-time-panel,.ant-picker-time-panel-column:not(:first-child){border-left:1px solid #f0f0f0}.ant-picker-week-panel-row-selected td .ant-picker-cell-inner,.ant-picker-week-panel-row-selected:hover td .ant-picker-cell-inner{color:#fff}.ant-picker-date-panel .ant-picker-content{width:224px}.ant-picker-date-panel .ant-picker-content th{width:32px}.ant-picker-datetime-panel{display:flex}.ant-picker-datetime-panel .ant-picker-date-panel,.ant-picker-datetime-panel .ant-picker-time-panel{transition:opacity .3s}.ant-picker-datetime-panel-active .ant-picker-date-panel,.ant-picker-datetime-panel-active .ant-picker-time-panel{opacity:.3}.ant-picker-datetime-panel-active .ant-picker-date-panel-active,.ant-picker-datetime-panel-active .ant-picker-time-panel-active{opacity:1}.ant-picker-time-panel{width:auto;min-width:auto}.ant-picker-time-panel .ant-picker-content{display:flex;flex:auto;height:224px}.ant-picker-time-panel-column{flex:1 0 auto;width:56px;margin:0;padding:0;overflow-y:hidden;text-align:left;list-style:none;transition:background .3s}.ant-picker-time-panel-column::after{display:block;height:200px;content:''}.ant-picker-datetime-panel .ant-picker-time-panel-column::after{height:202px}.ant-picker-time-panel-column-active{background:rgba(230,247,255,.2)}.ant-picker-time-panel-column:hover{overflow-y:auto}.ant-picker-time-panel-column>li{margin:0;padding:0}.ant-picker-time-panel-column>li.ant-picker-time-panel-cell .ant-picker-time-panel-cell-inner{display:block;width:100%;height:24px;margin:0;padding:0 0 0 14px;color:rgba(0,0,0,.85);line-height:24px;border-radius:0;cursor:pointer;transition:background .3s}.ant-picker-time-panel-column>li.ant-picker-time-panel-cell .ant-picker-time-panel-cell-inner:hover{background:#f5f5f5}.ant-menu-item:active,.ant-menu-submenu-title:active,.ant-picker-time-panel-column>li.ant-picker-time-panel-cell-selected .ant-picker-time-panel-cell-inner{background:#e6f7ff}.ant-picker-time-panel-column>li.ant-picker-time-panel-cell-disabled .ant-picker-time-panel-cell-inner{color:rgba(0,0,0,.25);background:0 0;cursor:not-allowed}:root .ant-picker-range-wrapper .ant-picker-month-panel .ant-picker-cell,:root .ant-picker-range-wrapper .ant-picker-year-panel .ant-picker-cell,_:-ms-fullscreen .ant-picker-range-wrapper .ant-picker-month-panel .ant-picker-cell,_:-ms-fullscreen .ant-picker-range-wrapper .ant-picker-year-panel .ant-picker-cell{padding:21px 0}.ant-picker-rtl .ant-picker-suffix{margin-right:2px;margin-left:0}.ant-picker-rtl .ant-picker-clear{right:auto;left:0}.ant-picker-rtl .ant-picker-separator{transform:rotate(180deg)}.ant-picker-panel-rtl .ant-picker-header-view button:not(:first-child){margin-right:4px;margin-left:0}.ant-picker-rtl.ant-picker-range .ant-picker-clear{right:auto;left:7px}.ant-picker-rtl.ant-picker-range .ant-picker-active-bar{margin-right:7px;margin-left:0}.ant-picker-rtl.ant-picker-range.ant-picker-small .ant-picker-active-bar{margin-right:7px}.ant-picker-dropdown-rtl .ant-picker-ranges{text-align:right}.ant-picker-dropdown-rtl .ant-picker-ranges .ant-picker-ok{float:left;margin-right:4px;margin-left:0}.ant-picker-panel-rtl .ant-picker-prev-icon,.ant-picker-panel-rtl .ant-picker-super-prev-icon{transform:rotate(135deg)}.ant-picker-panel-rtl .ant-picker-next-icon,.ant-picker-panel-rtl .ant-picker-super-next-icon{transform:rotate(-45deg)}.ant-picker-cell .ant-picker-cell-inner{position:relative;z-index:2;display:inline-block;min-width:22px;height:22px;line-height:22px;border-radius:2px;transition:background .3s,border .3s}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-start::before{right:50%;left:0}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-end::before{right:0;left:50%}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-start.ant-picker-cell-range-end::before{right:50%;left:50%}.ant-picker-panel-rtl .ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start .ant-picker-cell-inner::after{right:0;left:-6px}.ant-picker-panel-rtl .ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end .ant-picker-cell-inner::after{right:-6px;left:0}.ant-picker-panel-rtl .ant-picker-cell-range-hover.ant-picker-cell-range-start::after{right:0;left:50%}.ant-picker-panel-rtl .ant-picker-cell-range-hover.ant-picker-cell-range-end::after{right:50%;left:0}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single):not(.ant-picker-cell-range-end) .ant-picker-cell-inner{border-radius:0 2px 2px 0}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single):not(.ant-picker-cell-range-start) .ant-picker-cell-inner{border-radius:2px 0 0 2px}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-hover-edge-start:not(.ant-picker-cell-range-hover-edge-start-near-range)::after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-hover-start::after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover-edge-start.ant-picker-cell-range-hover-edge-start-near-range::after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover:not(.ant-picker-cell-selected):first-child::after{right:6px;left:0;border-right:1px dashed #7ec1ff;border-left:none;border-radius:0 2px 2px 0}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-end.ant-picker-cell-range-hover-edge-end.ant-picker-cell-range-hover-edge-end-near-range::after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-hover-edge-end:not(.ant-picker-cell-range-hover-edge-end-near-range)::after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-hover-end::after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover:not(.ant-picker-cell-selected):last-child::after{right:0;left:6px;border-right:none;border-left:1px dashed #7ec1ff;border-radius:2px 0 0 2px}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-end.ant-picker-cell-range-hover-start.ant-picker-cell-range-hover-edge-end:not(.ant-picker-cell-range-hover)::after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover-edge-start:not(.ant-picker-cell-range-hover)::after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover-end.ant-picker-cell-range-hover-edge-start:not(.ant-picker-cell-range-hover)::after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-end.ant-picker-cell-range-hover.ant-picker-cell-range-hover-edge-end:first-child::after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover-end:first-child::after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover-start:last-child::after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover.ant-picker-cell-range-hover-edge-start:last-child::after{right:6px;left:6px;border-right:1px dashed #7ec1ff;border-left:1px dashed #7ec1ff;border-radius:2px}.ant-picker-dropdown-rtl .ant-picker-footer-extra{text-align:right}.ant-picker-panel-rtl .ant-picker-time-panel{direction:ltr}.ant-picker-inline{border:none;padding:0}.ant-picker-inline .ant-picker-range-arrow{display:none!important}.ant-picker-inline .ant-picker-dropdown{z-index:auto}.ant-picker-dropdown{top:unset;left:unset}.ant-picker-panel-container.ant-picker-week-number .ant-picker-date-panel .ant-picker-content{width:100%}.ant-picker-panel-container.ant-picker-week-number .ant-picker-date-panel .ant-picker-content th{width:inherit}.ant-picker-range-arrow{margin-right:10.5px}.ant-descriptions-header{display:flex;align-items:center;margin-bottom:8px}.ant-descriptions-title{flex:auto;overflow:hidden;color:rgba(0,0,0,.85);font-weight:700;font-size:14px;line-height:1.66667;white-space:nowrap;text-overflow:ellipsis}.ant-descriptions-extra,.ant-descriptions-item-content,.ant-descriptions-item-label,.ant-divider{font-size:12px;color:rgba(0,0,0,.85)}.ant-descriptions-extra{margin-left:auto}.ant-descriptions-view{width:100%;border-radius:2px}.ant-descriptions-view table{width:100%;table-layout:fixed}.ant-descriptions-row>td,.ant-descriptions-row>th{padding-bottom:4px}.ant-descriptions-row:last-child{border-bottom:none}.ant-descriptions-item-label{font-weight:400;line-height:1.66667;text-align:start}.ant-descriptions-item-label::after{content:':';position:relative;top:-.5px;margin:0 8px 0 2px}.ant-descriptions-item-label.ant-descriptions-item-no-colon::after,.ant-dropdown::before{content:' '}.ant-descriptions-item-no-label::after{margin:0;content:''}.ant-descriptions-item-content{display:table-cell;flex:1;line-height:1.66667;word-break:break-word;overflow-wrap:break-word}.ant-descriptions-item{padding-bottom:0;vertical-align:top}.ant-descriptions-item-container{display:flex}.ant-descriptions-item-container .ant-descriptions-item-content,.ant-descriptions-item-container .ant-descriptions-item-label{display:inline-flex;align-items:baseline}.ant-descriptions-middle .ant-descriptions-row>td,.ant-descriptions-middle .ant-descriptions-row>th{padding-bottom:8px}.ant-descriptions-small .ant-descriptions-row>td,.ant-descriptions-small .ant-descriptions-row>th{padding-bottom:4px}.ant-descriptions-bordered .ant-descriptions-view{border:1px solid #f0f0f0}.ant-descriptions-bordered .ant-descriptions-item-content,.ant-descriptions-bordered .ant-descriptions-item-label{padding:12px 16px;border-right:1px solid #f0f0f0}.ant-descriptions-bordered .ant-descriptions-item-content:last-child,.ant-descriptions-bordered .ant-descriptions-item-label:last-child{border-right:none}.ant-descriptions-bordered .ant-descriptions-item-label::after{display:none}.ant-descriptions-bordered .ant-descriptions-row{border-bottom:1px solid #f0f0f0}.ant-descriptions-bordered .ant-descriptions-row:last-child{border-bottom:none}.ant-descriptions-bordered.ant-descriptions-middle .ant-descriptions-item-content,.ant-descriptions-bordered.ant-descriptions-middle .ant-descriptions-item-label{padding:8px 16px}.ant-descriptions-bordered.ant-descriptions-small .ant-descriptions-item-content,.ant-descriptions-bordered.ant-descriptions-small .ant-descriptions-item-label{padding:4px 8px}.ant-descriptions-rtl .ant-descriptions-item-label::after{margin:0 2px 0 8px}.ant-descriptions-rtl.ant-descriptions-bordered .ant-descriptions-item-content,.ant-descriptions-rtl.ant-descriptions-bordered .ant-descriptions-item-label{border-right:none;border-left:1px solid #f0f0f0}.ant-descriptions-rtl.ant-descriptions-bordered .ant-descriptions-item-content:last-child,.ant-descriptions-rtl.ant-descriptions-bordered .ant-descriptions-item-label:last-child{border-left:none}nz-descriptions{display:block}.ant-divider{box-sizing:border-box;margin:0;padding:0;font-variant:tabular-nums;line-height:1.66667;list-style:none;font-feature-settings:tnum;border-top:1px solid rgba(0,0,0,.06)}.ant-divider-vertical{position:relative;top:-.06em;display:inline-block;height:.9em;margin:0 8px;vertical-align:middle;border-top:0;border-left:1px solid rgba(0,0,0,.06)}.ant-divider-horizontal{display:flex;clear:both;width:100%;min-width:100%;margin:24px 0}.ant-divider-horizontal.ant-divider-with-text{display:flex;margin:16px 0;color:rgba(0,0,0,.85);font-weight:500;font-size:14px;white-space:nowrap;text-align:center;border-top:0;border-top-color:rgba(0,0,0,.06)}.ant-drawer-body,.ant-dropdown{font-size:12px;line-height:1.66667}.ant-divider-horizontal.ant-divider-with-text::after,.ant-divider-horizontal.ant-divider-with-text::before{position:relative;top:50%;width:50%;border-top:1px solid transparent;border-top-color:inherit;border-bottom:0;transform:translateY(50%);content:''}.ant-divider-horizontal.ant-divider-with-text-left::before{top:50%;width:5%}.ant-divider-horizontal.ant-divider-with-text-left::after,.ant-divider-horizontal.ant-divider-with-text-right::before{top:50%;width:95%}.ant-divider-horizontal.ant-divider-with-text-right::after{top:50%;width:5%}.ant-divider-inner-text{display:inline-block;padding:0 1em}.ant-divider-dashed{background:0 0;border-color:rgba(0,0,0,.06);border-style:dashed;border-width:1px 0 0}.ant-divider-horizontal.ant-divider-with-text.ant-divider-dashed::after,.ant-divider-horizontal.ant-divider-with-text.ant-divider-dashed::before{border-style:dashed none none}.ant-divider-vertical.ant-divider-dashed{border-width:0 0 0 1px}.ant-divider-plain.ant-divider-with-text{color:rgba(0,0,0,.85);font-weight:400;font-size:12px}.ant-divider-horizontal.ant-divider-with-text-left.ant-divider-no-default-orientation-margin-left::before{width:0}.ant-divider-horizontal.ant-divider-with-text-left.ant-divider-no-default-orientation-margin-left::after,.ant-divider-horizontal.ant-divider-with-text-right.ant-divider-no-default-orientation-margin-right::before{width:100%}.ant-divider-horizontal.ant-divider-with-text-left.ant-divider-no-default-orientation-margin-left .ant-divider-inner-text{padding-left:0}.ant-divider-horizontal.ant-divider-with-text-right.ant-divider-no-default-orientation-margin-right::after{width:0}.ant-divider-horizontal.ant-divider-with-text-right.ant-divider-no-default-orientation-margin-right .ant-divider-inner-text{padding-right:0}.ant-divider-rtl.ant-divider-horizontal.ant-divider-with-text-left::before{width:95%}.ant-divider-rtl.ant-divider-horizontal.ant-divider-with-text-left::after,.ant-divider-rtl.ant-divider-horizontal.ant-divider-with-text-right::before{width:5%}.ant-divider-rtl.ant-divider-horizontal.ant-divider-with-text-right::after{width:95%}.ant-drawer{position:fixed;z-index:1000;width:0%;height:100%;transition:width 0s ease .3s,height 0s ease .3s}.ant-drawer-content-wrapper{position:absolute;width:100%;height:100%;transition:transform .3s cubic-bezier(.23,1,.32,1),box-shadow .3s cubic-bezier(.23,1,.32,1)}.ant-drawer .ant-drawer-content{width:100%;height:100%}.ant-drawer-left,.ant-drawer-right{top:0;width:0%;height:100%}.ant-drawer-left .ant-drawer-content-wrapper,.ant-drawer-right .ant-drawer-content-wrapper{height:100%}.ant-drawer-left.ant-drawer-open,.ant-drawer-right.ant-drawer-open{width:100%;transition:transform .3s cubic-bezier(.23,1,.32,1)}.ant-drawer-left,.ant-drawer-left .ant-drawer-content-wrapper{left:0}.ant-drawer-left.ant-drawer-open .ant-drawer-content-wrapper{box-shadow:6px 0 16px -8px rgba(0,0,0,.08),9px 0 28px 0 rgba(0,0,0,.05),12px 0 48px 16px rgba(0,0,0,.03)}.ant-drawer-right,.ant-drawer-right .ant-drawer-content-wrapper{right:0}.ant-drawer-right.ant-drawer-open .ant-drawer-content-wrapper{box-shadow:-6px 0 16px -8px rgba(0,0,0,.08),-9px 0 28px 0 rgba(0,0,0,.05),-12px 0 48px 16px rgba(0,0,0,.03)}.ant-drawer-top.ant-drawer-open .ant-drawer-content-wrapper,.header-dropdown{box-shadow:0 6px 16px -8px rgba(0,0,0,.08),0 9px 28px 0 rgba(0,0,0,.05),0 12px 48px 16px rgba(0,0,0,.03)}.ant-drawer-right.ant-drawer-open.no-mask{right:1px;transform:translateX(1px)}.ant-drawer-bottom,.ant-drawer-top{left:0;width:100%;height:0%}.ant-drawer-bottom .ant-drawer-content-wrapper,.ant-drawer-top .ant-drawer-content-wrapper{width:100%}.ant-drawer-bottom.ant-drawer-open,.ant-drawer-top.ant-drawer-open{height:100%;transition:transform .3s cubic-bezier(.23,1,.32,1)}.ant-drawer-top{top:0}.ant-drawer-bottom,.ant-drawer-bottom .ant-drawer-content-wrapper{bottom:0}.ant-drawer-bottom.ant-drawer-open .ant-drawer-content-wrapper{box-shadow:0 -6px 16px -8px rgba(0,0,0,.08),0 -9px 28px 0 rgba(0,0,0,.05),0 -12px 48px 16px rgba(0,0,0,.03)}.ant-drawer-bottom.ant-drawer-open.no-mask{bottom:1px;transform:translateY(1px)}.ant-drawer.ant-drawer-open .ant-drawer-mask{height:100%;opacity:1;transition:none;animation:antdDrawerFadeIn .3s cubic-bezier(.23,1,.32,1);pointer-events:auto}.ant-drawer-title{flex:1;margin:0;color:rgba(0,0,0,.85);font-weight:500;font-size:14px;line-height:22px}.ant-drawer-content{position:relative;z-index:1;overflow:auto;background-color:#fff;background-clip:padding-box;border:0}.ant-drawer-close{display:inline-block;margin-right:12px;color:rgba(0,0,0,.45);font-weight:700;font-size:14px;font-style:normal;line-height:1;text-align:center;text-transform:none;text-decoration:none;background:0 0;border:0;outline:0;cursor:pointer;transition:color .3s;text-rendering:auto}.ant-drawer-close:focus,.ant-drawer-close:hover{color:rgba(0,0,0,.75);text-decoration:none}.ant-drawer-header{position:relative;display:flex;align-items:center;justify-content:space-between;padding:11px 16px;color:rgba(0,0,0,.85);background:#fff;border-bottom:1px solid #f0f0f0;border-radius:2px 2px 0 0}.ant-drawer-header-title{display:flex;flex:1;align-items:center;justify-content:space-between}.ant-drawer-header-close-only{padding-bottom:0;border:none}.ant-drawer-wrapper-body{display:flex;flex-flow:column nowrap;width:100%;height:100%}.ant-drawer-body{flex-grow:1;padding:16px;overflow:auto;word-wrap:break-word}.ant-drawer-footer{flex-shrink:0;padding:8px;border-top:1px solid #f0f0f0}.ant-drawer-mask{position:absolute;top:0;left:0;width:100%;height:0;background-color:rgba(0,0,0,.45);opacity:0;transition:opacity .3s linear,height 0s ease .3s;pointer-events:none}.ant-drawer .ant-picker-clear{background:#fff}@keyframes antdDrawerFadeIn{0%{opacity:0}100%{opacity:1}}.ant-drawer-rtl .ant-drawer-close{margin-right:0;margin-left:12px}.ant-dropdown-menu-item.ant-dropdown-menu-item-danger{color:#ff4d4f}.ant-dropdown-menu-item.ant-dropdown-menu-item-danger:hover{color:#fff;background-color:#ff4d4f}.ant-dropdown{box-sizing:border-box;margin:0;padding:0;color:rgba(0,0,0,.85);font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;z-index:1050;display:block}.ant-dropdown::before{position:absolute;top:-4px;right:0;bottom:-4px;left:-7px;z-index:-9999;opacity:.0001}.ant-dropdown-wrap{position:relative}.ant-dropdown-wrap .ant-btn>.anticon-down{font-size:10px}.ant-dropdown-wrap .anticon-down::before{transition:transform .2s}.ant-dropdown-wrap-open .anticon-down::before{transform:rotate(180deg)}.ant-dropdown-hidden,.ant-dropdown-menu-hidden,.ant-dropdown-menu-submenu-hidden{display:none}.ant-dropdown-arrow,.ant-dropdown-button.ant-btn-group>.ant-btn-loading+.ant-btn::before,nz-empty{display:block}.ant-dropdown-show-arrow.ant-dropdown-placement-top,.ant-dropdown-show-arrow.ant-dropdown-placement-topLeft,.ant-dropdown-show-arrow.ant-dropdown-placement-topRight{padding-bottom:15.31px}.ant-dropdown-show-arrow.ant-dropdown-placement-bottom,.ant-dropdown-show-arrow.ant-dropdown-placement-bottomLeft,.ant-dropdown-show-arrow.ant-dropdown-placement-bottomRight{padding-top:15.31px}.ant-dropdown-arrow{position:absolute;z-index:1;width:11.31px;pointer-events:none}.ant-dropdown-arrow::before{position:absolute;top:-11.31px;left:-11.31px;width:33.94px;height:33.94px;background:-10px -10px no-repeat #fff;content:'';clip-path:path('M 9.849242404917499 24.091883092036785 A 5 5 0 0 1 13.384776310850237 22.627416997969522 L 20.627416997969522 22.627416997969522 A 2 2 0 0 0 22.627416997969522 20.627416997969522 L 22.627416997969522 13.384776310850237 A 5 5 0 0 1 24.091883092036785 9.849242404917499 L 23.091883092036785 9.849242404917499 L 9.849242404917499 23.091883092036785 Z')}.ant-dropdown-placement-top>.ant-dropdown-arrow,.ant-dropdown-placement-topLeft>.ant-dropdown-arrow,.ant-dropdown-placement-topRight>.ant-dropdown-arrow{bottom:10px;box-shadow:3px 3px 7px -3px rgba(0,0,0,.1);transform:rotate(45deg)}.ant-dropdown-placement-top>.ant-dropdown-arrow{left:50%;transform:translateX(-50%) rotate(45deg)}.ant-dropdown-placement-topLeft>.ant-dropdown-arrow{left:16px}.ant-dropdown-placement-topRight>.ant-dropdown-arrow{right:16px}.ant-dropdown-placement-bottom>.ant-dropdown-arrow,.ant-dropdown-placement-bottomLeft>.ant-dropdown-arrow,.ant-dropdown-placement-bottomRight>.ant-dropdown-arrow{top:9.41px;box-shadow:2px 2px 5px -2px rgba(0,0,0,.1);transform:rotate(-135deg) translateY(-.5px)}.ant-dropdown-placement-bottom>.ant-dropdown-arrow{left:50%;transform:translateX(-50%) rotate(-135deg) translateY(-.5px)}.ant-dropdown-placement-bottomLeft>.ant-dropdown-arrow{left:16px}.ant-dropdown-placement-bottomRight>.ant-dropdown-arrow{right:16px}.ant-dropdown-menu{position:relative;margin:0;padding:4px 0;text-align:left;list-style-type:none;background-color:#fff;background-clip:padding-box;border-radius:2px;outline:0;box-shadow:0 3px 6px -4px rgba(0,0,0,.12),0 6px 16px 0 rgba(0,0,0,.08),0 9px 28px 8px rgba(0,0,0,.05)}.ant-dropdown-menu-item-group-title{padding:5px 8px;color:rgba(0,0,0,.45);transition:all .3s}.ant-dropdown-menu-submenu-popup{position:absolute;z-index:1050;background:0 0;box-shadow:none;transform-origin:0 0}.ant-dropdown-menu-submenu-popup li,.ant-dropdown-menu-submenu-popup ul{list-style:none}.ant-dropdown-menu-submenu-popup ul{margin-right:.3em;margin-left:.3em}.ant-dropdown-menu-item{position:relative;display:flex;align-items:center}.ant-dropdown-menu-item-icon{min-width:12px;margin-right:8px;font-size:12px}.ant-dropdown-menu-title-content{flex:auto}.ant-dropdown-menu-title-content>a{color:inherit;transition:all .3s}.ant-dropdown-menu-title-content>a:hover{color:inherit}.ant-dropdown-menu-title-content>a::after{position:absolute;top:0;right:0;bottom:0;left:0;content:''}.ant-dropdown-menu-item,.ant-dropdown-menu-submenu-title{clear:both;margin:0;padding:5px 8px;color:rgba(0,0,0,.85);font-weight:400;font-size:12px;line-height:18px;cursor:pointer;transition:all .3s}.ant-dropdown-menu-item-selected,.ant-dropdown-menu-submenu-title-selected{color:#1890ff;background-color:#e6f7ff}.ant-dropdown-menu-item.ant-dropdown-menu-item-active,.ant-dropdown-menu-item.ant-dropdown-menu-submenu-title-active,.ant-dropdown-menu-item:hover,.ant-dropdown-menu-submenu-title.ant-dropdown-menu-item-active,.ant-dropdown-menu-submenu-title.ant-dropdown-menu-submenu-title-active,.ant-dropdown-menu-submenu-title:hover{background-color:#f5f5f5}.ant-dropdown-menu-item-disabled,.ant-dropdown-menu-submenu-title-disabled{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-dropdown-menu-item-disabled:hover,.ant-dropdown-menu-submenu-title-disabled:hover{color:rgba(0,0,0,.25);background-color:#fff;cursor:not-allowed}.ant-dropdown-menu-item-disabled a,.ant-dropdown-menu-submenu-title-disabled a{pointer-events:none}.ant-dropdown-menu-item-divider,.ant-dropdown-menu-submenu-title-divider{height:1px;margin:4px 0;overflow:hidden;line-height:0;background-color:#f0f0f0}.ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon,.ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon{position:absolute;right:4px}.ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon,.ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon{margin-right:0!important;color:rgba(0,0,0,.45);font-size:10px;font-style:normal}.ant-dropdown-menu-item-group-list{margin:0 8px;padding:0;list-style:none}.ant-dropdown-menu-submenu-title{padding-right:20px}.ant-dropdown-menu-submenu-vertical{position:relative}.ant-dropdown-menu-submenu-vertical>.ant-dropdown-menu{position:absolute;top:0;left:100%;min-width:100%;margin-left:4px;transform-origin:0 0}.ant-dropdown-menu-submenu.ant-dropdown-menu-submenu-disabled .ant-dropdown-menu-submenu-title,.ant-dropdown-menu-submenu.ant-dropdown-menu-submenu-disabled .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-arrow-icon{color:rgba(0,0,0,.25);background-color:#fff;cursor:not-allowed}.ant-dropdown-menu-submenu-selected .ant-dropdown-menu-submenu-title{color:#1890ff}.ant-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-dropdown-placement-top,.ant-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-dropdown-placement-topLeft,.ant-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-dropdown-placement-topRight,.ant-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-dropdown-placement-top,.ant-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-dropdown-placement-topLeft,.ant-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-dropdown-placement-topRight{animation-name:antSlideDownIn}.ant-dropdown.ant-slide-down-leave.ant-slide-down-leave-active.ant-dropdown-placement-bottom,.ant-dropdown.ant-slide-down-leave.ant-slide-down-leave-active.ant-dropdown-placement-bottomLeft,.ant-dropdown.ant-slide-down-leave.ant-slide-down-leave-active.ant-dropdown-placement-bottomRight{animation-name:antSlideUpOut}.ant-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-dropdown-placement-top,.ant-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-dropdown-placement-topLeft,.ant-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-dropdown-placement-topRight{animation-name:antSlideDownOut}.ant-dropdown-button>.anticon.anticon-down,.ant-dropdown-link>.anticon.anticon-down,.ant-dropdown-trigger>.anticon.anticon-down{font-size:10px;vertical-align:baseline}.ant-dropdown-button{white-space:nowrap}.ant-dropdown-button.ant-btn-group>.ant-btn-loading,.ant-dropdown-button.ant-btn-group>.ant-btn-loading+.ant-btn{cursor:default;pointer-events:none}.ant-dropdown-button.ant-btn-group>.ant-btn:last-child:not(:first-child):not(.ant-btn-icon-only){padding-right:4px;padding-left:4px}.ant-dropdown-menu-dark,.ant-dropdown-menu-dark .ant-dropdown-menu{background:#001529}.ant-dropdown-menu-dark .ant-dropdown-menu-item,.ant-dropdown-menu-dark .ant-dropdown-menu-item .ant-dropdown-menu-submenu-arrow::after,.ant-dropdown-menu-dark .ant-dropdown-menu-item>.anticon+span>a,.ant-dropdown-menu-dark .ant-dropdown-menu-item>.anticon+span>a .ant-dropdown-menu-submenu-arrow::after,.ant-dropdown-menu-dark .ant-dropdown-menu-item>a,.ant-dropdown-menu-dark .ant-dropdown-menu-item>a .ant-dropdown-menu-submenu-arrow::after,.ant-dropdown-menu-dark .ant-dropdown-menu-submenu-title,.ant-dropdown-menu-dark .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-arrow::after{color:rgba(255,255,255,.65)}.ant-dropdown-menu-dark .ant-dropdown-menu-item:hover,.ant-dropdown-menu-dark .ant-dropdown-menu-item>.anticon+span>a:hover,.ant-dropdown-menu-dark .ant-dropdown-menu-item>a:hover,.ant-dropdown-menu-dark .ant-dropdown-menu-submenu-title:hover{color:#fff;background:0 0}.ant-dropdown-menu-dark .ant-dropdown-menu-item-selected,.ant-dropdown-menu-dark .ant-dropdown-menu-item-selected:hover,.ant-dropdown-menu-dark .ant-dropdown-menu-item-selected>a{color:#fff;background:#1890ff}.ant-input,.ant-input-affix-wrapper{min-width:0;background-color:#fff;transition:all .3s}.ant-dropdown-rtl.ant-dropdown::before{right:-7px;left:0}.ant-dropdown-menu-submenu-rtl .ant-dropdown-menu-item-group-title,.ant-dropdown-menu.ant-dropdown-menu-rtl,.ant-dropdown-rtl .ant-dropdown-menu-item-group-title{text-align:right}.ant-dropdown-menu-submenu-popup.ant-dropdown-menu-submenu-rtl{transform-origin:100% 0}.ant-dropdown-rtl .ant-dropdown-menu-item,.ant-dropdown-rtl .ant-dropdown-menu-submenu-popup li,.ant-dropdown-rtl .ant-dropdown-menu-submenu-popup ul,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title{text-align:right}.ant-dropdown-rtl .ant-dropdown-menu-item>.anticon:first-child,.ant-dropdown-rtl .ant-dropdown-menu-item>span>.anticon:first-child,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title>.anticon:first-child,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title>span>.anticon:first-child{margin-right:0;margin-left:8px}.ant-dropdown-rtl .ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon{right:auto;left:4px}.ant-dropdown-rtl .ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon{margin-left:0!important;transform:scaleX(-1)}.ant-dropdown-rtl .ant-dropdown-menu-submenu-title{padding-right:8px;padding-left:20px}.ant-dropdown-rtl .ant-dropdown-menu-submenu-vertical>.ant-dropdown-menu{right:100%;left:0;margin-right:4px;margin-left:0}.ant-dropdown-menu>ul{list-style:inherit;margin:0;padding:0}.ant-input,.ant-input-group{line-height:1.66667;list-style:none;width:100%}.ant-dropdown{top:0;left:0;position:relative;width:100%;margin-top:6px;margin-bottom:6px}.ant-dropdown-rtl .ant-dropdown-menu-item .ant-dropdown-menu-submenu-arrow,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-arrow{transform:rotate(180deg)}.ant-empty{margin:0 8px;font-size:12px;line-height:1.66667;text-align:center}.ant-empty-image{height:100px;margin-bottom:8px}.ant-empty-image img{height:100%}.ant-empty-image svg{height:100%;margin:auto}.ant-empty-footer{margin-top:16px}.ant-empty-normal{margin:32px 0;color:rgba(0,0,0,.25)}.ant-empty-normal .ant-empty-image{height:40px}.ant-empty-small{margin:8px 0;color:rgba(0,0,0,.25)}.ant-empty-small .ant-empty-image{height:35px}.ant-empty-img-default-ellipse{fill:#f5f5f5;fill-opacity:.8}.ant-empty-img-default-path-1{fill:#aeb8c2}.ant-empty-img-default-path-2{fill:url(#linearGradient-1)}.ant-empty-img-default-path-3{fill:#f5f5f7}.ant-empty-img-default-path-4,.ant-empty-img-default-path-5{fill:#dce0e6}.ant-empty-img-default-g{fill:#fff}.ant-empty-img-simple-ellipse{fill:#f5f5f5}.ant-empty-img-simple-g{stroke:#d9d9d9}.ant-empty-img-simple-path{fill:#fafafa}.ant-row{display:flex;flex-flow:row wrap}.ant-row::after,.ant-row::before{display:flex}.ant-col-1,.ant-col-10,.ant-col-11,.ant-col-12,.ant-col-13,.ant-col-14,.ant-col-15,.ant-col-16,.ant-col-17,.ant-col-18,.ant-col-19,.ant-col-2,.ant-col-20,.ant-col-21,.ant-col-22,.ant-col-23,.ant-col-24,.ant-col-3,.ant-col-4,.ant-col-5,.ant-col-6,.ant-col-7,.ant-col-8,.ant-col-9{display:block}.ant-row-no-wrap{flex-wrap:nowrap}.ant-row-start{justify-content:flex-start}.ant-row-center{justify-content:center}.ant-row-end{justify-content:flex-end}.ant-page-header-heading,.ant-row-space-between{justify-content:space-between}.ant-row-space-around{justify-content:space-around}.ant-row-space-evenly{justify-content:space-evenly}.ant-row-top,.ant-tree-list-holder-inner{align-items:flex-start}.ant-row-middle{align-items:center}.ant-row-bottom{align-items:flex-end}.ant-col{position:relative;max-width:100%;min-height:1px}.ant-col-24{flex:0 0 100%;max-width:100%}.ant-col-push-24{left:100%}.ant-col-pull-24{right:100%}.ant-col-offset-24{margin-left:100%}.ant-col-order-24{order:24}.ant-col-23{flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-push-23{left:95.83333333%}.ant-col-pull-23{right:95.83333333%}.ant-col-offset-23{margin-left:95.83333333%}.ant-col-order-23{order:23}.ant-col-22{flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-push-22{left:91.66666667%}.ant-col-pull-22{right:91.66666667%}.ant-col-offset-22{margin-left:91.66666667%}.ant-col-order-22{order:22}.ant-col-21{flex:0 0 87.5%;max-width:87.5%}.ant-col-push-21{left:87.5%}.ant-col-pull-21{right:87.5%}.ant-col-offset-21{margin-left:87.5%}.ant-col-order-21{order:21}.ant-col-20{flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-push-20{left:83.33333333%}.ant-col-pull-20{right:83.33333333%}.ant-col-offset-20{margin-left:83.33333333%}.ant-col-order-20{order:20}.ant-col-19{flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-push-19{left:79.16666667%}.ant-col-pull-19{right:79.16666667%}.ant-col-offset-19{margin-left:79.16666667%}.ant-col-order-19{order:19}.ant-col-18{flex:0 0 75%;max-width:75%}.ant-col-push-18{left:75%}.ant-col-pull-18{right:75%}.ant-col-offset-18{margin-left:75%}.ant-col-order-18{order:18}.ant-col-17{flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-push-17{left:70.83333333%}.ant-col-pull-17{right:70.83333333%}.ant-col-offset-17{margin-left:70.83333333%}.ant-col-order-17{order:17}.ant-col-16{flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-push-16{left:66.66666667%}.ant-col-pull-16{right:66.66666667%}.ant-col-offset-16{margin-left:66.66666667%}.ant-col-order-16{order:16}.ant-col-15{flex:0 0 62.5%;max-width:62.5%}.ant-col-push-15{left:62.5%}.ant-col-pull-15{right:62.5%}.ant-col-offset-15{margin-left:62.5%}.ant-col-order-15{order:15}.ant-col-14{flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-push-14{left:58.33333333%}.ant-col-pull-14{right:58.33333333%}.ant-col-offset-14{margin-left:58.33333333%}.ant-col-order-14{order:14}.ant-col-13{flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-push-13{left:54.16666667%}.ant-col-pull-13{right:54.16666667%}.ant-col-offset-13{margin-left:54.16666667%}.ant-col-order-13{order:13}.ant-col-12{flex:0 0 50%;max-width:50%}.ant-col-push-12{left:50%}.ant-col-pull-12{right:50%}.ant-col-offset-12{margin-left:50%}.ant-col-order-12{order:12}.ant-col-11{flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-push-11{left:45.83333333%}.ant-col-pull-11{right:45.83333333%}.ant-col-offset-11{margin-left:45.83333333%}.ant-col-order-11{order:11}.ant-col-10{flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-push-10{left:41.66666667%}.ant-col-pull-10{right:41.66666667%}.ant-col-offset-10{margin-left:41.66666667%}.ant-col-order-10{order:10}.ant-col-9{flex:0 0 37.5%;max-width:37.5%}.ant-col-push-9{left:37.5%}.ant-col-pull-9{right:37.5%}.ant-col-offset-9{margin-left:37.5%}.ant-col-order-9{order:9}.ant-col-8{flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-push-8{left:33.33333333%}.ant-col-pull-8{right:33.33333333%}.ant-col-offset-8{margin-left:33.33333333%}.ant-col-order-8{order:8}.ant-col-7{flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-push-7{left:29.16666667%}.ant-col-pull-7{right:29.16666667%}.ant-col-offset-7{margin-left:29.16666667%}.ant-col-order-7{order:7}.ant-col-6{flex:0 0 25%;max-width:25%}.ant-col-push-6{left:25%}.ant-col-pull-6{right:25%}.ant-col-offset-6{margin-left:25%}.ant-col-order-6{order:6}.ant-col-5{flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-push-5{left:20.83333333%}.ant-col-pull-5{right:20.83333333%}.ant-col-offset-5{margin-left:20.83333333%}.ant-col-order-5{order:5}.ant-col-4{flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-push-4{left:16.66666667%}.ant-col-pull-4{right:16.66666667%}.ant-col-offset-4{margin-left:16.66666667%}.ant-col-order-4{order:4}.ant-col-3{flex:0 0 12.5%;max-width:12.5%}.ant-col-push-3{left:12.5%}.ant-col-pull-3{right:12.5%}.ant-col-offset-3{margin-left:12.5%}.ant-col-order-3{order:3}.ant-col-2{flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-push-2{left:8.33333333%}.ant-col-pull-2{right:8.33333333%}.ant-col-offset-2{margin-left:8.33333333%}.ant-col-order-2{order:2}.ant-col-1{flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-push-1{left:4.16666667%}.ant-col-pull-1{right:4.16666667%}.ant-col-offset-1{margin-left:4.16666667%}.ant-col-order-1{order:1}.ant-col-0{display:none}.ant-col-offset-0{margin-left:0}.ant-col-order-0{order:0}.ant-col-offset-0.ant-col-rtl{margin-right:0}.ant-col-push-1.ant-col-rtl{right:4.16666667%;left:auto}.ant-col-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}.ant-col-xs-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-xs-push-24{left:100%}.ant-col-xs-pull-24{right:100%}.ant-col-xs-offset-24{margin-left:100%}.ant-col-xs-order-24{order:24}.ant-col-xs-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-xs-push-23{left:95.83333333%}.ant-col-xs-pull-23{right:95.83333333%}.ant-col-xs-offset-23{margin-left:95.83333333%}.ant-col-xs-order-23{order:23}.ant-col-xs-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-xs-push-22{left:91.66666667%}.ant-col-xs-pull-22{right:91.66666667%}.ant-col-xs-offset-22{margin-left:91.66666667%}.ant-col-xs-order-22{order:22}.ant-col-xs-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-xs-push-21{left:87.5%}.ant-col-xs-pull-21{right:87.5%}.ant-col-xs-offset-21{margin-left:87.5%}.ant-col-xs-order-21{order:21}.ant-col-xs-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-xs-push-20{left:83.33333333%}.ant-col-xs-pull-20{right:83.33333333%}.ant-col-xs-offset-20{margin-left:83.33333333%}.ant-col-xs-order-20{order:20}.ant-col-xs-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-xs-push-19{left:79.16666667%}.ant-col-xs-pull-19{right:79.16666667%}.ant-col-xs-offset-19{margin-left:79.16666667%}.ant-col-xs-order-19{order:19}.ant-col-xs-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-xs-push-18{left:75%}.ant-col-xs-pull-18{right:75%}.ant-col-xs-offset-18{margin-left:75%}.ant-col-xs-order-18{order:18}.ant-col-xs-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-xs-push-17{left:70.83333333%}.ant-col-xs-pull-17{right:70.83333333%}.ant-col-xs-offset-17{margin-left:70.83333333%}.ant-col-xs-order-17{order:17}.ant-col-xs-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-xs-push-16{left:66.66666667%}.ant-col-xs-pull-16{right:66.66666667%}.ant-col-xs-offset-16{margin-left:66.66666667%}.ant-col-xs-order-16{order:16}.ant-col-xs-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-xs-push-15{left:62.5%}.ant-col-xs-pull-15{right:62.5%}.ant-col-xs-offset-15{margin-left:62.5%}.ant-col-xs-order-15{order:15}.ant-col-xs-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-xs-push-14{left:58.33333333%}.ant-col-xs-pull-14{right:58.33333333%}.ant-col-xs-offset-14{margin-left:58.33333333%}.ant-col-xs-order-14{order:14}.ant-col-xs-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-xs-push-13{left:54.16666667%}.ant-col-xs-pull-13{right:54.16666667%}.ant-col-xs-offset-13{margin-left:54.16666667%}.ant-col-xs-order-13{order:13}.ant-col-xs-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-xs-push-12{left:50%}.ant-col-xs-pull-12{right:50%}.ant-col-xs-offset-12{margin-left:50%}.ant-col-xs-order-12{order:12}.ant-col-xs-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-xs-push-11{left:45.83333333%}.ant-col-xs-pull-11{right:45.83333333%}.ant-col-xs-offset-11{margin-left:45.83333333%}.ant-col-xs-order-11{order:11}.ant-col-xs-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-xs-push-10{left:41.66666667%}.ant-col-xs-pull-10{right:41.66666667%}.ant-col-xs-offset-10{margin-left:41.66666667%}.ant-col-xs-order-10{order:10}.ant-col-xs-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-xs-push-9{left:37.5%}.ant-col-xs-pull-9{right:37.5%}.ant-col-xs-offset-9{margin-left:37.5%}.ant-col-xs-order-9{order:9}.ant-col-xs-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-xs-push-8{left:33.33333333%}.ant-col-xs-pull-8{right:33.33333333%}.ant-col-xs-offset-8{margin-left:33.33333333%}.ant-col-xs-order-8{order:8}.ant-col-xs-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-xs-push-7{left:29.16666667%}.ant-col-xs-pull-7{right:29.16666667%}.ant-col-xs-offset-7{margin-left:29.16666667%}.ant-col-xs-order-7{order:7}.ant-col-xs-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-xs-push-6{left:25%}.ant-col-xs-pull-6{right:25%}.ant-col-xs-offset-6{margin-left:25%}.ant-col-xs-order-6{order:6}.ant-col-xs-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-xs-push-5{left:20.83333333%}.ant-col-xs-pull-5{right:20.83333333%}.ant-col-xs-offset-5{margin-left:20.83333333%}.ant-col-xs-order-5{order:5}.ant-col-xs-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-xs-push-4{left:16.66666667%}.ant-col-xs-pull-4{right:16.66666667%}.ant-col-xs-offset-4{margin-left:16.66666667%}.ant-col-xs-order-4{order:4}.ant-col-xs-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-xs-push-3{left:12.5%}.ant-col-xs-pull-3{right:12.5%}.ant-col-xs-offset-3{margin-left:12.5%}.ant-col-xs-order-3{order:3}.ant-col-xs-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-xs-push-2{left:8.33333333%}.ant-col-xs-pull-2{right:8.33333333%}.ant-col-xs-offset-2{margin-left:8.33333333%}.ant-col-xs-order-2{order:2}.ant-col-xs-order-1,.ant-layout-sider-right,.ant-tabs-rtl.ant-tabs-left>.ant-tabs-nav{order:1}.ant-col-xs-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-xs-push-1{left:4.16666667%}.ant-col-pull-0.ant-col-rtl,.ant-col-push-0,.ant-col-xs-pull-0.ant-col-rtl,.ant-col-xs-push-0,.ant-col-xs-push-1.ant-col-rtl{left:auto}.ant-col-xs-pull-1{right:4.16666667%}.ant-col-pull-0,.ant-col-push-0.ant-col-rtl,.ant-col-xs-pull-0,.ant-col-xs-push-0.ant-col-rtl{right:auto}.ant-col-xs-offset-1{margin-left:4.16666667%}.ant-col-xs-0{display:none}.ant-col-xs-offset-0{margin-left:0}.ant-col-xs-order-0{order:0}.ant-col-xs-offset-0.ant-col-rtl{margin-right:0}.ant-col-xs-push-1.ant-col-rtl{right:4.16666667%}.ant-col-xs-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-xs-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-xs-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-xs-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-xs-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-xs-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-xs-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-xs-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-xs-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-xs-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-xs-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-xs-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-xs-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-xs-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-xs-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-xs-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-xs-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-xs-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-xs-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-xs-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-xs-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-xs-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-xs-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-xs-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-xs-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-xs-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-xs-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-xs-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-xs-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-xs-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-xs-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-xs-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-xs-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-xs-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-xs-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-xs-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-xs-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-xs-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-xs-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-xs-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-xs-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-xs-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-xs-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-xs-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-xs-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-xs-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-xs-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-xs-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-xs-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-xs-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-xs-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-xs-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-xs-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-xs-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-xs-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-xs-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-xs-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-xs-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-xs-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-xs-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-xs-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-xs-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-xs-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-xs-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-xs-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-xs-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-xs-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-xs-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-xs-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-xs-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-xs-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}@media (min-width:576px){.ant-col-sm-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-sm-push-24{left:100%}.ant-col-sm-pull-24{right:100%}.ant-col-sm-offset-24{margin-left:100%}.ant-col-sm-order-24{order:24}.ant-col-sm-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-sm-push-23{left:95.83333333%}.ant-col-sm-pull-23{right:95.83333333%}.ant-col-sm-offset-23{margin-left:95.83333333%}.ant-col-sm-order-23{order:23}.ant-col-sm-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-sm-push-22{left:91.66666667%}.ant-col-sm-pull-22{right:91.66666667%}.ant-col-sm-offset-22{margin-left:91.66666667%}.ant-col-sm-order-22{order:22}.ant-col-sm-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-sm-push-21{left:87.5%}.ant-col-sm-pull-21{right:87.5%}.ant-col-sm-offset-21{margin-left:87.5%}.ant-col-sm-order-21{order:21}.ant-col-sm-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-sm-push-20{left:83.33333333%}.ant-col-sm-pull-20{right:83.33333333%}.ant-col-sm-offset-20{margin-left:83.33333333%}.ant-col-sm-order-20{order:20}.ant-col-sm-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-sm-push-19{left:79.16666667%}.ant-col-sm-pull-19{right:79.16666667%}.ant-col-sm-offset-19{margin-left:79.16666667%}.ant-col-sm-order-19{order:19}.ant-col-sm-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-sm-push-18{left:75%}.ant-col-sm-pull-18{right:75%}.ant-col-sm-offset-18{margin-left:75%}.ant-col-sm-order-18{order:18}.ant-col-sm-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-sm-push-17{left:70.83333333%}.ant-col-sm-pull-17{right:70.83333333%}.ant-col-sm-offset-17{margin-left:70.83333333%}.ant-col-sm-order-17{order:17}.ant-col-sm-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-sm-push-16{left:66.66666667%}.ant-col-sm-pull-16{right:66.66666667%}.ant-col-sm-offset-16{margin-left:66.66666667%}.ant-col-sm-order-16{order:16}.ant-col-sm-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-sm-push-15{left:62.5%}.ant-col-sm-pull-15{right:62.5%}.ant-col-sm-offset-15{margin-left:62.5%}.ant-col-sm-order-15{order:15}.ant-col-sm-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-sm-push-14{left:58.33333333%}.ant-col-sm-pull-14{right:58.33333333%}.ant-col-sm-offset-14{margin-left:58.33333333%}.ant-col-sm-order-14{order:14}.ant-col-sm-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-sm-push-13{left:54.16666667%}.ant-col-sm-pull-13{right:54.16666667%}.ant-col-sm-offset-13{margin-left:54.16666667%}.ant-col-sm-order-13{order:13}.ant-col-sm-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-sm-push-12{left:50%}.ant-col-sm-pull-12{right:50%}.ant-col-sm-offset-12{margin-left:50%}.ant-col-sm-order-12{order:12}.ant-col-sm-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-sm-push-11{left:45.83333333%}.ant-col-sm-pull-11{right:45.83333333%}.ant-col-sm-offset-11{margin-left:45.83333333%}.ant-col-sm-order-11{order:11}.ant-col-sm-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-sm-push-10{left:41.66666667%}.ant-col-sm-pull-10{right:41.66666667%}.ant-col-sm-offset-10{margin-left:41.66666667%}.ant-col-sm-order-10{order:10}.ant-col-sm-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-sm-push-9{left:37.5%}.ant-col-sm-pull-9{right:37.5%}.ant-col-sm-offset-9{margin-left:37.5%}.ant-col-sm-order-9{order:9}.ant-col-sm-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-sm-push-8{left:33.33333333%}.ant-col-sm-pull-8{right:33.33333333%}.ant-col-sm-offset-8{margin-left:33.33333333%}.ant-col-sm-order-8{order:8}.ant-col-sm-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-sm-push-7{left:29.16666667%}.ant-col-sm-pull-7{right:29.16666667%}.ant-col-sm-offset-7{margin-left:29.16666667%}.ant-col-sm-order-7{order:7}.ant-col-sm-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-sm-push-6{left:25%}.ant-col-sm-pull-6{right:25%}.ant-col-sm-offset-6{margin-left:25%}.ant-col-sm-order-6{order:6}.ant-col-sm-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-sm-push-5{left:20.83333333%}.ant-col-sm-pull-5{right:20.83333333%}.ant-col-sm-offset-5{margin-left:20.83333333%}.ant-col-sm-order-5{order:5}.ant-col-sm-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-sm-push-4{left:16.66666667%}.ant-col-sm-pull-4{right:16.66666667%}.ant-col-sm-offset-4{margin-left:16.66666667%}.ant-col-sm-order-4{order:4}.ant-col-sm-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-sm-push-3{left:12.5%}.ant-col-sm-pull-3{right:12.5%}.ant-col-sm-offset-3{margin-left:12.5%}.ant-col-sm-order-3{order:3}.ant-col-sm-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-sm-push-2{left:8.33333333%}.ant-col-sm-pull-2{right:8.33333333%}.ant-col-sm-offset-2{margin-left:8.33333333%}.ant-col-sm-order-2{order:2}.ant-col-sm-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-sm-push-1{left:4.16666667%}.ant-col-pull-0.ant-col-rtl,.ant-col-push-0,.ant-col-sm-pull-0.ant-col-rtl,.ant-col-sm-push-0,.ant-col-sm-push-1.ant-col-rtl{left:auto}.ant-col-sm-pull-1{right:4.16666667%}.ant-col-pull-0,.ant-col-push-0.ant-col-rtl,.ant-col-sm-pull-0,.ant-col-sm-push-0.ant-col-rtl{right:auto}.ant-col-sm-offset-1{margin-left:4.16666667%}.ant-col-sm-order-1{order:1}.ant-col-sm-0{display:none}.ant-col-sm-offset-0{margin-left:0}.ant-col-sm-order-0{order:0}.ant-col-sm-offset-0.ant-col-rtl{margin-right:0}.ant-col-sm-push-1.ant-col-rtl{right:4.16666667%}.ant-col-sm-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-sm-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-sm-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-sm-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-sm-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-sm-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-sm-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-sm-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-sm-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-sm-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-sm-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-sm-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-sm-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-sm-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-sm-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-sm-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-sm-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-sm-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-sm-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-sm-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-sm-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-sm-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-sm-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-sm-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-sm-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-sm-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-sm-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-sm-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-sm-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-sm-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-sm-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-sm-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-sm-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-sm-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-sm-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-sm-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-sm-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-sm-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-sm-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-sm-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-sm-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-sm-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-sm-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-sm-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-sm-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-sm-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-sm-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-sm-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-sm-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-sm-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-sm-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-sm-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-sm-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-sm-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-sm-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-sm-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-sm-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-sm-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-sm-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-sm-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-sm-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-sm-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-sm-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-sm-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-sm-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-sm-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-sm-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-sm-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-sm-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-sm-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-sm-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}@media (min-width:768px){.ant-col-md-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-md-push-24{left:100%}.ant-col-md-pull-24{right:100%}.ant-col-md-offset-24{margin-left:100%}.ant-col-md-order-24{order:24}.ant-col-md-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-md-push-23{left:95.83333333%}.ant-col-md-pull-23{right:95.83333333%}.ant-col-md-offset-23{margin-left:95.83333333%}.ant-col-md-order-23{order:23}.ant-col-md-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-md-push-22{left:91.66666667%}.ant-col-md-pull-22{right:91.66666667%}.ant-col-md-offset-22{margin-left:91.66666667%}.ant-col-md-order-22{order:22}.ant-col-md-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-md-push-21{left:87.5%}.ant-col-md-pull-21{right:87.5%}.ant-col-md-offset-21{margin-left:87.5%}.ant-col-md-order-21{order:21}.ant-col-md-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-md-push-20{left:83.33333333%}.ant-col-md-pull-20{right:83.33333333%}.ant-col-md-offset-20{margin-left:83.33333333%}.ant-col-md-order-20{order:20}.ant-col-md-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-md-push-19{left:79.16666667%}.ant-col-md-pull-19{right:79.16666667%}.ant-col-md-offset-19{margin-left:79.16666667%}.ant-col-md-order-19{order:19}.ant-col-md-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-md-push-18{left:75%}.ant-col-md-pull-18{right:75%}.ant-col-md-offset-18{margin-left:75%}.ant-col-md-order-18{order:18}.ant-col-md-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-md-push-17{left:70.83333333%}.ant-col-md-pull-17{right:70.83333333%}.ant-col-md-offset-17{margin-left:70.83333333%}.ant-col-md-order-17{order:17}.ant-col-md-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-md-push-16{left:66.66666667%}.ant-col-md-pull-16{right:66.66666667%}.ant-col-md-offset-16{margin-left:66.66666667%}.ant-col-md-order-16{order:16}.ant-col-md-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-md-push-15{left:62.5%}.ant-col-md-pull-15{right:62.5%}.ant-col-md-offset-15{margin-left:62.5%}.ant-col-md-order-15{order:15}.ant-col-md-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-md-push-14{left:58.33333333%}.ant-col-md-pull-14{right:58.33333333%}.ant-col-md-offset-14{margin-left:58.33333333%}.ant-col-md-order-14{order:14}.ant-col-md-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-md-push-13{left:54.16666667%}.ant-col-md-pull-13{right:54.16666667%}.ant-col-md-offset-13{margin-left:54.16666667%}.ant-col-md-order-13{order:13}.ant-col-md-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-md-push-12{left:50%}.ant-col-md-pull-12{right:50%}.ant-col-md-offset-12{margin-left:50%}.ant-col-md-order-12{order:12}.ant-col-md-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-md-push-11{left:45.83333333%}.ant-col-md-pull-11{right:45.83333333%}.ant-col-md-offset-11{margin-left:45.83333333%}.ant-col-md-order-11{order:11}.ant-col-md-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-md-push-10{left:41.66666667%}.ant-col-md-pull-10{right:41.66666667%}.ant-col-md-offset-10{margin-left:41.66666667%}.ant-col-md-order-10{order:10}.ant-col-md-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-md-push-9{left:37.5%}.ant-col-md-pull-9{right:37.5%}.ant-col-md-offset-9{margin-left:37.5%}.ant-col-md-order-9{order:9}.ant-col-md-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-md-push-8{left:33.33333333%}.ant-col-md-pull-8{right:33.33333333%}.ant-col-md-offset-8{margin-left:33.33333333%}.ant-col-md-order-8{order:8}.ant-col-md-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-md-push-7{left:29.16666667%}.ant-col-md-pull-7{right:29.16666667%}.ant-col-md-offset-7{margin-left:29.16666667%}.ant-col-md-order-7{order:7}.ant-col-md-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-md-push-6{left:25%}.ant-col-md-pull-6{right:25%}.ant-col-md-offset-6{margin-left:25%}.ant-col-md-order-6{order:6}.ant-col-md-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-md-push-5{left:20.83333333%}.ant-col-md-pull-5{right:20.83333333%}.ant-col-md-offset-5{margin-left:20.83333333%}.ant-col-md-order-5{order:5}.ant-col-md-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-md-push-4{left:16.66666667%}.ant-col-md-pull-4{right:16.66666667%}.ant-col-md-offset-4{margin-left:16.66666667%}.ant-col-md-order-4{order:4}.ant-col-md-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-md-push-3{left:12.5%}.ant-col-md-pull-3{right:12.5%}.ant-col-md-offset-3{margin-left:12.5%}.ant-col-md-order-3{order:3}.ant-col-md-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-md-push-2{left:8.33333333%}.ant-col-md-pull-2{right:8.33333333%}.ant-col-md-offset-2{margin-left:8.33333333%}.ant-col-md-order-2{order:2}.ant-col-md-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-md-push-1{left:4.16666667%}.ant-col-md-pull-0.ant-col-rtl,.ant-col-md-push-0,.ant-col-md-push-1.ant-col-rtl,.ant-col-pull-0.ant-col-rtl,.ant-col-push-0{left:auto}.ant-col-md-pull-1{right:4.16666667%}.ant-col-md-pull-0,.ant-col-md-push-0.ant-col-rtl,.ant-col-pull-0,.ant-col-push-0.ant-col-rtl{right:auto}.ant-col-md-offset-1{margin-left:4.16666667%}.ant-col-md-order-1{order:1}.ant-col-md-0{display:none}.ant-col-md-offset-0{margin-left:0}.ant-col-md-order-0{order:0}.ant-col-md-offset-0.ant-col-rtl{margin-right:0}.ant-col-md-push-1.ant-col-rtl{right:4.16666667%}.ant-col-md-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-md-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-md-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-md-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-md-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-md-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-md-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-md-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-md-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-md-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-md-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-md-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-md-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-md-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-md-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-md-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-md-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-md-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-md-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-md-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-md-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-md-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-md-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-md-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-md-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-md-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-md-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-md-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-md-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-md-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-md-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-md-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-md-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-md-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-md-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-md-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-md-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-md-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-md-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-md-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-md-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-md-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-md-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-md-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-md-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-md-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-md-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-md-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-md-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-md-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-md-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-md-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-md-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-md-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-md-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-md-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-md-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-md-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-md-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-md-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-md-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-md-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-md-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-md-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-md-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-md-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-md-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-md-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-md-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-md-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-md-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}@media (min-width:992px){.ant-col-lg-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-lg-push-24{left:100%}.ant-col-lg-pull-24{right:100%}.ant-col-lg-offset-24{margin-left:100%}.ant-col-lg-order-24{order:24}.ant-col-lg-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-lg-push-23{left:95.83333333%}.ant-col-lg-pull-23{right:95.83333333%}.ant-col-lg-offset-23{margin-left:95.83333333%}.ant-col-lg-order-23{order:23}.ant-col-lg-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-lg-push-22{left:91.66666667%}.ant-col-lg-pull-22{right:91.66666667%}.ant-col-lg-offset-22{margin-left:91.66666667%}.ant-col-lg-order-22{order:22}.ant-col-lg-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-lg-push-21{left:87.5%}.ant-col-lg-pull-21{right:87.5%}.ant-col-lg-offset-21{margin-left:87.5%}.ant-col-lg-order-21{order:21}.ant-col-lg-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-lg-push-20{left:83.33333333%}.ant-col-lg-pull-20{right:83.33333333%}.ant-col-lg-offset-20{margin-left:83.33333333%}.ant-col-lg-order-20{order:20}.ant-col-lg-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-lg-push-19{left:79.16666667%}.ant-col-lg-pull-19{right:79.16666667%}.ant-col-lg-offset-19{margin-left:79.16666667%}.ant-col-lg-order-19{order:19}.ant-col-lg-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-lg-push-18{left:75%}.ant-col-lg-pull-18{right:75%}.ant-col-lg-offset-18{margin-left:75%}.ant-col-lg-order-18{order:18}.ant-col-lg-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-lg-push-17{left:70.83333333%}.ant-col-lg-pull-17{right:70.83333333%}.ant-col-lg-offset-17{margin-left:70.83333333%}.ant-col-lg-order-17{order:17}.ant-col-lg-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-lg-push-16{left:66.66666667%}.ant-col-lg-pull-16{right:66.66666667%}.ant-col-lg-offset-16{margin-left:66.66666667%}.ant-col-lg-order-16{order:16}.ant-col-lg-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-lg-push-15{left:62.5%}.ant-col-lg-pull-15{right:62.5%}.ant-col-lg-offset-15{margin-left:62.5%}.ant-col-lg-order-15{order:15}.ant-col-lg-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-lg-push-14{left:58.33333333%}.ant-col-lg-pull-14{right:58.33333333%}.ant-col-lg-offset-14{margin-left:58.33333333%}.ant-col-lg-order-14{order:14}.ant-col-lg-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-lg-push-13{left:54.16666667%}.ant-col-lg-pull-13{right:54.16666667%}.ant-col-lg-offset-13{margin-left:54.16666667%}.ant-col-lg-order-13{order:13}.ant-col-lg-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-lg-push-12{left:50%}.ant-col-lg-pull-12{right:50%}.ant-col-lg-offset-12{margin-left:50%}.ant-col-lg-order-12{order:12}.ant-col-lg-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-lg-push-11{left:45.83333333%}.ant-col-lg-pull-11{right:45.83333333%}.ant-col-lg-offset-11{margin-left:45.83333333%}.ant-col-lg-order-11{order:11}.ant-col-lg-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-lg-push-10{left:41.66666667%}.ant-col-lg-pull-10{right:41.66666667%}.ant-col-lg-offset-10{margin-left:41.66666667%}.ant-col-lg-order-10{order:10}.ant-col-lg-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-lg-push-9{left:37.5%}.ant-col-lg-pull-9{right:37.5%}.ant-col-lg-offset-9{margin-left:37.5%}.ant-col-lg-order-9{order:9}.ant-col-lg-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-lg-push-8{left:33.33333333%}.ant-col-lg-pull-8{right:33.33333333%}.ant-col-lg-offset-8{margin-left:33.33333333%}.ant-col-lg-order-8{order:8}.ant-col-lg-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-lg-push-7{left:29.16666667%}.ant-col-lg-pull-7{right:29.16666667%}.ant-col-lg-offset-7{margin-left:29.16666667%}.ant-col-lg-order-7{order:7}.ant-col-lg-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-lg-push-6{left:25%}.ant-col-lg-pull-6{right:25%}.ant-col-lg-offset-6{margin-left:25%}.ant-col-lg-order-6{order:6}.ant-col-lg-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-lg-push-5{left:20.83333333%}.ant-col-lg-pull-5{right:20.83333333%}.ant-col-lg-offset-5{margin-left:20.83333333%}.ant-col-lg-order-5{order:5}.ant-col-lg-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-lg-push-4{left:16.66666667%}.ant-col-lg-pull-4{right:16.66666667%}.ant-col-lg-offset-4{margin-left:16.66666667%}.ant-col-lg-order-4{order:4}.ant-col-lg-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-lg-push-3{left:12.5%}.ant-col-lg-pull-3{right:12.5%}.ant-col-lg-offset-3{margin-left:12.5%}.ant-col-lg-order-3{order:3}.ant-col-lg-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-lg-push-2{left:8.33333333%}.ant-col-lg-pull-2{right:8.33333333%}.ant-col-lg-offset-2{margin-left:8.33333333%}.ant-col-lg-order-2{order:2}.ant-col-lg-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-lg-push-1{left:4.16666667%}.ant-col-lg-pull-0.ant-col-rtl,.ant-col-lg-push-0,.ant-col-lg-push-1.ant-col-rtl,.ant-col-pull-0.ant-col-rtl,.ant-col-push-0{left:auto}.ant-col-lg-pull-1{right:4.16666667%}.ant-col-lg-pull-0,.ant-col-lg-push-0.ant-col-rtl,.ant-col-pull-0,.ant-col-push-0.ant-col-rtl{right:auto}.ant-col-lg-offset-1{margin-left:4.16666667%}.ant-col-lg-order-1{order:1}.ant-col-lg-0{display:none}.ant-col-lg-offset-0{margin-left:0}.ant-col-lg-order-0{order:0}.ant-col-lg-offset-0.ant-col-rtl{margin-right:0}.ant-col-lg-push-1.ant-col-rtl{right:4.16666667%}.ant-col-lg-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-lg-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-lg-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-lg-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-lg-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-lg-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-lg-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-lg-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-lg-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-lg-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-lg-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-lg-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-lg-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-lg-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-lg-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-lg-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-lg-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-lg-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-lg-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-lg-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-lg-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-lg-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-lg-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-lg-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-lg-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-lg-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-lg-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-lg-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-lg-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-lg-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-lg-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-lg-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-lg-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-lg-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-lg-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-lg-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-lg-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-lg-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-lg-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-lg-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-lg-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-lg-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-lg-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-lg-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-lg-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-lg-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-lg-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-lg-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-lg-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-lg-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-lg-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-lg-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-lg-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-lg-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-lg-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-lg-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-lg-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-lg-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-lg-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-lg-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-lg-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-lg-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-lg-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-lg-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-lg-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-lg-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-lg-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-lg-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-lg-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-lg-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-lg-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}@media (min-width:1200px){.ant-col-xl-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-xl-push-24{left:100%}.ant-col-xl-pull-24{right:100%}.ant-col-xl-offset-24{margin-left:100%}.ant-col-xl-order-24{order:24}.ant-col-xl-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-xl-push-23{left:95.83333333%}.ant-col-xl-pull-23{right:95.83333333%}.ant-col-xl-offset-23{margin-left:95.83333333%}.ant-col-xl-order-23{order:23}.ant-col-xl-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-xl-push-22{left:91.66666667%}.ant-col-xl-pull-22{right:91.66666667%}.ant-col-xl-offset-22{margin-left:91.66666667%}.ant-col-xl-order-22{order:22}.ant-col-xl-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-xl-push-21{left:87.5%}.ant-col-xl-pull-21{right:87.5%}.ant-col-xl-offset-21{margin-left:87.5%}.ant-col-xl-order-21{order:21}.ant-col-xl-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-xl-push-20{left:83.33333333%}.ant-col-xl-pull-20{right:83.33333333%}.ant-col-xl-offset-20{margin-left:83.33333333%}.ant-col-xl-order-20{order:20}.ant-col-xl-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-xl-push-19{left:79.16666667%}.ant-col-xl-pull-19{right:79.16666667%}.ant-col-xl-offset-19{margin-left:79.16666667%}.ant-col-xl-order-19{order:19}.ant-col-xl-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-xl-push-18{left:75%}.ant-col-xl-pull-18{right:75%}.ant-col-xl-offset-18{margin-left:75%}.ant-col-xl-order-18{order:18}.ant-col-xl-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-xl-push-17{left:70.83333333%}.ant-col-xl-pull-17{right:70.83333333%}.ant-col-xl-offset-17{margin-left:70.83333333%}.ant-col-xl-order-17{order:17}.ant-col-xl-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-xl-push-16{left:66.66666667%}.ant-col-xl-pull-16{right:66.66666667%}.ant-col-xl-offset-16{margin-left:66.66666667%}.ant-col-xl-order-16{order:16}.ant-col-xl-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-xl-push-15{left:62.5%}.ant-col-xl-pull-15{right:62.5%}.ant-col-xl-offset-15{margin-left:62.5%}.ant-col-xl-order-15{order:15}.ant-col-xl-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-xl-push-14{left:58.33333333%}.ant-col-xl-pull-14{right:58.33333333%}.ant-col-xl-offset-14{margin-left:58.33333333%}.ant-col-xl-order-14{order:14}.ant-col-xl-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-xl-push-13{left:54.16666667%}.ant-col-xl-pull-13{right:54.16666667%}.ant-col-xl-offset-13{margin-left:54.16666667%}.ant-col-xl-order-13{order:13}.ant-col-xl-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-xl-push-12{left:50%}.ant-col-xl-pull-12{right:50%}.ant-col-xl-offset-12{margin-left:50%}.ant-col-xl-order-12{order:12}.ant-col-xl-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-xl-push-11{left:45.83333333%}.ant-col-xl-pull-11{right:45.83333333%}.ant-col-xl-offset-11{margin-left:45.83333333%}.ant-col-xl-order-11{order:11}.ant-col-xl-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-xl-push-10{left:41.66666667%}.ant-col-xl-pull-10{right:41.66666667%}.ant-col-xl-offset-10{margin-left:41.66666667%}.ant-col-xl-order-10{order:10}.ant-col-xl-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-xl-push-9{left:37.5%}.ant-col-xl-pull-9{right:37.5%}.ant-col-xl-offset-9{margin-left:37.5%}.ant-col-xl-order-9{order:9}.ant-col-xl-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-xl-push-8{left:33.33333333%}.ant-col-xl-pull-8{right:33.33333333%}.ant-col-xl-offset-8{margin-left:33.33333333%}.ant-col-xl-order-8{order:8}.ant-col-xl-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-xl-push-7{left:29.16666667%}.ant-col-xl-pull-7{right:29.16666667%}.ant-col-xl-offset-7{margin-left:29.16666667%}.ant-col-xl-order-7{order:7}.ant-col-xl-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-xl-push-6{left:25%}.ant-col-xl-pull-6{right:25%}.ant-col-xl-offset-6{margin-left:25%}.ant-col-xl-order-6{order:6}.ant-col-xl-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-xl-push-5{left:20.83333333%}.ant-col-xl-pull-5{right:20.83333333%}.ant-col-xl-offset-5{margin-left:20.83333333%}.ant-col-xl-order-5{order:5}.ant-col-xl-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-xl-push-4{left:16.66666667%}.ant-col-xl-pull-4{right:16.66666667%}.ant-col-xl-offset-4{margin-left:16.66666667%}.ant-col-xl-order-4{order:4}.ant-col-xl-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-xl-push-3{left:12.5%}.ant-col-xl-pull-3{right:12.5%}.ant-col-xl-offset-3{margin-left:12.5%}.ant-col-xl-order-3{order:3}.ant-col-xl-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-xl-push-2{left:8.33333333%}.ant-col-xl-pull-2{right:8.33333333%}.ant-col-xl-offset-2{margin-left:8.33333333%}.ant-col-xl-order-2{order:2}.ant-col-xl-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-xl-push-1{left:4.16666667%}.ant-col-pull-0.ant-col-rtl,.ant-col-push-0,.ant-col-xl-pull-0.ant-col-rtl,.ant-col-xl-push-0,.ant-col-xl-push-1.ant-col-rtl{left:auto}.ant-col-xl-pull-1{right:4.16666667%}.ant-col-pull-0,.ant-col-push-0.ant-col-rtl,.ant-col-xl-pull-0,.ant-col-xl-push-0.ant-col-rtl{right:auto}.ant-col-xl-offset-1{margin-left:4.16666667%}.ant-col-xl-order-1{order:1}.ant-col-xl-0{display:none}.ant-col-xl-offset-0{margin-left:0}.ant-col-xl-order-0{order:0}.ant-col-xl-offset-0.ant-col-rtl{margin-right:0}.ant-col-xl-push-1.ant-col-rtl{right:4.16666667%}.ant-col-xl-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-xl-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-xl-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-xl-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-xl-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-xl-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-xl-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-xl-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-xl-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-xl-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-xl-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-xl-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-xl-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-xl-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-xl-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-xl-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-xl-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-xl-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-xl-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-xl-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-xl-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-xl-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-xl-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-xl-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-xl-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-xl-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-xl-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-xl-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-xl-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-xl-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-xl-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-xl-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-xl-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-xl-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-xl-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-xl-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-xl-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-xl-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-xl-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-xl-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-xl-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-xl-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-xl-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-xl-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-xl-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-xl-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-xl-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-xl-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-xl-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-xl-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-xl-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-xl-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-xl-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-xl-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-xl-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-xl-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-xl-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-xl-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-xl-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-xl-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-xl-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-xl-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-xl-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-xl-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-xl-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-xl-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-xl-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-xl-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-xl-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-xl-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-xl-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}@media (min-width:1600px){.ant-col-xxl-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-xxl-push-24{left:100%}.ant-col-xxl-pull-24{right:100%}.ant-col-xxl-offset-24{margin-left:100%}.ant-col-xxl-order-24{order:24}.ant-col-xxl-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-xxl-push-23{left:95.83333333%}.ant-col-xxl-pull-23{right:95.83333333%}.ant-col-xxl-offset-23{margin-left:95.83333333%}.ant-col-xxl-order-23{order:23}.ant-col-xxl-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-xxl-push-22{left:91.66666667%}.ant-col-xxl-pull-22{right:91.66666667%}.ant-col-xxl-offset-22{margin-left:91.66666667%}.ant-col-xxl-order-22{order:22}.ant-col-xxl-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-xxl-push-21{left:87.5%}.ant-col-xxl-pull-21{right:87.5%}.ant-col-xxl-offset-21{margin-left:87.5%}.ant-col-xxl-order-21{order:21}.ant-col-xxl-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-xxl-push-20{left:83.33333333%}.ant-col-xxl-pull-20{right:83.33333333%}.ant-col-xxl-offset-20{margin-left:83.33333333%}.ant-col-xxl-order-20{order:20}.ant-col-xxl-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-xxl-push-19{left:79.16666667%}.ant-col-xxl-pull-19{right:79.16666667%}.ant-col-xxl-offset-19{margin-left:79.16666667%}.ant-col-xxl-order-19{order:19}.ant-col-xxl-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-xxl-push-18{left:75%}.ant-col-xxl-pull-18{right:75%}.ant-col-xxl-offset-18{margin-left:75%}.ant-col-xxl-order-18{order:18}.ant-col-xxl-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-xxl-push-17{left:70.83333333%}.ant-col-xxl-pull-17{right:70.83333333%}.ant-col-xxl-offset-17{margin-left:70.83333333%}.ant-col-xxl-order-17{order:17}.ant-col-xxl-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-xxl-push-16{left:66.66666667%}.ant-col-xxl-pull-16{right:66.66666667%}.ant-col-xxl-offset-16{margin-left:66.66666667%}.ant-col-xxl-order-16{order:16}.ant-col-xxl-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-xxl-push-15{left:62.5%}.ant-col-xxl-pull-15{right:62.5%}.ant-col-xxl-offset-15{margin-left:62.5%}.ant-col-xxl-order-15{order:15}.ant-col-xxl-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-xxl-push-14{left:58.33333333%}.ant-col-xxl-pull-14{right:58.33333333%}.ant-col-xxl-offset-14{margin-left:58.33333333%}.ant-col-xxl-order-14{order:14}.ant-col-xxl-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-xxl-push-13{left:54.16666667%}.ant-col-xxl-pull-13{right:54.16666667%}.ant-col-xxl-offset-13{margin-left:54.16666667%}.ant-col-xxl-order-13{order:13}.ant-col-xxl-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-xxl-push-12{left:50%}.ant-col-xxl-pull-12{right:50%}.ant-col-xxl-offset-12{margin-left:50%}.ant-col-xxl-order-12{order:12}.ant-col-xxl-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-xxl-push-11{left:45.83333333%}.ant-col-xxl-pull-11{right:45.83333333%}.ant-col-xxl-offset-11{margin-left:45.83333333%}.ant-col-xxl-order-11{order:11}.ant-col-xxl-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-xxl-push-10{left:41.66666667%}.ant-col-xxl-pull-10{right:41.66666667%}.ant-col-xxl-offset-10{margin-left:41.66666667%}.ant-col-xxl-order-10{order:10}.ant-col-xxl-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-xxl-push-9{left:37.5%}.ant-col-xxl-pull-9{right:37.5%}.ant-col-xxl-offset-9{margin-left:37.5%}.ant-col-xxl-order-9{order:9}.ant-col-xxl-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-xxl-push-8{left:33.33333333%}.ant-col-xxl-pull-8{right:33.33333333%}.ant-col-xxl-offset-8{margin-left:33.33333333%}.ant-col-xxl-order-8{order:8}.ant-col-xxl-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-xxl-push-7{left:29.16666667%}.ant-col-xxl-pull-7{right:29.16666667%}.ant-col-xxl-offset-7{margin-left:29.16666667%}.ant-col-xxl-order-7{order:7}.ant-col-xxl-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-xxl-push-6{left:25%}.ant-col-xxl-pull-6{right:25%}.ant-col-xxl-offset-6{margin-left:25%}.ant-col-xxl-order-6{order:6}.ant-col-xxl-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-xxl-push-5{left:20.83333333%}.ant-col-xxl-pull-5{right:20.83333333%}.ant-col-xxl-offset-5{margin-left:20.83333333%}.ant-col-xxl-order-5{order:5}.ant-col-xxl-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-xxl-push-4{left:16.66666667%}.ant-col-xxl-pull-4{right:16.66666667%}.ant-col-xxl-offset-4{margin-left:16.66666667%}.ant-col-xxl-order-4{order:4}.ant-col-xxl-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-xxl-push-3{left:12.5%}.ant-col-xxl-pull-3{right:12.5%}.ant-col-xxl-offset-3{margin-left:12.5%}.ant-col-xxl-order-3{order:3}.ant-col-xxl-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-xxl-push-2{left:8.33333333%}.ant-col-xxl-pull-2{right:8.33333333%}.ant-col-xxl-offset-2{margin-left:8.33333333%}.ant-col-xxl-order-2{order:2}.ant-col-xxl-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-xxl-push-1{left:4.16666667%}.ant-col-pull-0.ant-col-rtl,.ant-col-push-0,.ant-col-xxl-pull-0.ant-col-rtl,.ant-col-xxl-push-0,.ant-col-xxl-push-1.ant-col-rtl{left:auto}.ant-col-xxl-pull-1{right:4.16666667%}.ant-col-pull-0,.ant-col-push-0.ant-col-rtl,.ant-col-xxl-pull-0,.ant-col-xxl-push-0.ant-col-rtl{right:auto}.ant-col-xxl-offset-1{margin-left:4.16666667%}.ant-col-xxl-order-1{order:1}.ant-col-xxl-0{display:none}.ant-col-xxl-offset-0{margin-left:0}.ant-col-xxl-order-0{order:0}.ant-col-xxl-offset-0.ant-col-rtl{margin-right:0}.ant-col-xxl-push-1.ant-col-rtl{right:4.16666667%}.ant-col-xxl-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-xxl-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-xxl-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-xxl-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-xxl-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-xxl-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-xxl-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-xxl-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-xxl-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-xxl-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-xxl-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-xxl-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-xxl-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-xxl-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-xxl-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-xxl-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-xxl-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-xxl-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-xxl-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-xxl-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-xxl-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-xxl-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-xxl-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-xxl-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-xxl-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-xxl-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-xxl-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-xxl-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-xxl-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-xxl-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-xxl-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-xxl-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-xxl-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-xxl-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-xxl-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-xxl-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-xxl-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-xxl-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-xxl-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-xxl-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-xxl-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-xxl-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-xxl-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-xxl-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-xxl-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-xxl-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-xxl-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-xxl-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-xxl-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-xxl-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-xxl-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-xxl-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-xxl-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-xxl-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-xxl-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-xxl-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-xxl-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-xxl-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-xxl-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-xxl-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-xxl-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-xxl-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-xxl-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-xxl-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-xxl-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-xxl-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-xxl-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-xxl-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-xxl-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-xxl-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-xxl-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}.ant-input-affix-wrapper{position:relative;width:100%;padding:3px 7px;color:rgba(0,0,0,.85);font-size:12px;line-height:1.66667;background-image:none;border:1px solid #d9d9d9;border-radius:2px;display:inline-flex}.ant-input-affix-wrapper::-moz-placeholder{opacity:1}.ant-input-affix-wrapper::placeholder{color:#bfbfbf;user-select:none}.ant-input-affix-wrapper-disabled,.ant-input-affix-wrapper[disabled]{background-color:#f5f5f5;cursor:not-allowed;pointer-events:none;color:rgba(0,0,0,.25);opacity:1}.ant-input-affix-wrapper:placeholder-shown{text-overflow:ellipsis}.ant-input-affix-wrapper:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-input-affix-wrapper:hover{border-right-width:0;border-left-width:1px!important}.ant-input-affix-wrapper-focused,.ant-input-affix-wrapper:focus{border-color:#40a9ff;box-shadow:0 0 0 2px rgba(24,144,255,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-input-affix-wrapper-focused,.ant-input-rtl .ant-input-affix-wrapper:focus{border-right-width:0;border-left-width:1px!important}.ant-input-affix-wrapper-disabled:hover,.ant-input-affix-wrapper[disabled]:hover{border-color:#d9d9d9;border-right-width:1px}.ant-input-affix-wrapper-disabled{border-color:#d9d9d9;box-shadow:none}.ant-input-affix-wrapper[disabled]{border-color:#d9d9d9;box-shadow:none}.ant-input-affix-wrapper-borderless,.ant-input-affix-wrapper-borderless-disabled,.ant-input-affix-wrapper-borderless-focused,.ant-input-affix-wrapper-borderless:focus,.ant-input-affix-wrapper-borderless:hover,.ant-input-affix-wrapper-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-input-affix-wrapper{max-width:100%;height:auto;min-height:28px;line-height:1.66667;vertical-align:bottom;transition:all .3s,height 0s}.ant-input-affix-wrapper-lg{padding:3.4px 11px;font-size:14px}.ant-input-affix-wrapper-sm{padding:0 7px}.ant-input-affix-wrapper-stepperless[type=number]{-moz-appearance:textfield}.ant-input-affix-wrapper-stepperless[type=number] ::-webkit-outer-spin-button,.ant-input-affix-wrapper-stepperless[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover{border-color:#40a9ff;border-right-width:1px;z-index:1}.ant-input-rtl .ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover{border-right-width:0;border-left-width:1px!important}.ant-input-search-with-button .ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover{z-index:0}.ant-input-affix-wrapper-focused,.ant-input-affix-wrapper:focus{z-index:1}.ant-input-affix-wrapper-disabled .ant-input[disabled]{background:0 0}.ant-input-affix-wrapper>input.ant-input{padding:0;border:none;outline:0}.ant-input-affix-wrapper>input.ant-input:focus{box-shadow:none!important}.ant-input-affix-wrapper::before{width:0;visibility:hidden;content:'\a0'}.ant-input-prefix,.ant-input-suffix{display:flex;flex:none;align-items:center}.ant-input-prefix>:not(:last-child),.ant-input-suffix>:not(:last-child){margin-right:8px}.ant-input-show-count-suffix{color:rgba(0,0,0,.45)}.ant-input-show-count-has-suffix{margin-right:2px}.ant-input-prefix{margin-right:4px}.ant-input-suffix{margin-left:4px}.ant-input-clear-icon,.anticon.ant-input-clear-icon{margin:0;color:rgba(0,0,0,.25);font-size:12px;vertical-align:-1px;cursor:pointer;transition:color .3s}.ant-input-clear-icon:hover,.anticon.ant-input-clear-icon:hover{color:rgba(0,0,0,.45)}.ant-input-clear-icon:active,.anticon.ant-input-clear-icon:active{color:rgba(0,0,0,.85)}.ant-input-clear-icon-hidden,.anticon.ant-input-clear-icon-hidden{visibility:hidden}.ant-input-clear-icon-has-suffix,.anticon.ant-input-clear-icon-has-suffix{margin:0 4px}.ant-input-affix-wrapper-textarea-with-clear-btn{padding:0!important;border:0!important}.ant-input-affix-wrapper-textarea-with-clear-btn .ant-input-clear-icon{position:absolute;top:8px;right:8px;z-index:1}.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input,.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:hover{background:#fff;border-color:#ff4d4f}.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input-focused,.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:focus{border-color:#ff7875;box-shadow:0 0 0 2px rgba(255,77,79,.2);border-right-width:1px;outline:0}.ant-input-status-error .ant-input-prefix{color:#ff4d4f}.ant-input-status-warning:not(.ant-input-disabled):not(.ant-input-borderless).ant-input,.ant-input-status-warning:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:hover{background:#fff;border-color:#faad14}.ant-input-status-warning:not(.ant-input-disabled):not(.ant-input-borderless).ant-input-focused,.ant-input-status-warning:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:focus{border-color:#ffc53d;box-shadow:0 0 0 2px rgba(250,173,20,.2);border-right-width:1px;outline:0}.ant-input-status-warning .ant-input-prefix{color:#faad14}.ant-input-affix-wrapper-status-error:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper,.ant-input-affix-wrapper-status-error:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper:hover{background:#fff;border-color:#ff4d4f}.ant-input-affix-wrapper-status-error:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper-focused,.ant-input-affix-wrapper-status-error:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper:focus{border-color:#ff7875;box-shadow:0 0 0 2px rgba(255,77,79,.2);border-right-width:1px;outline:0}.ant-input-affix-wrapper-status-error .ant-input-prefix{color:#ff4d4f}.ant-input-affix-wrapper-status-warning:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper,.ant-input-affix-wrapper-status-warning:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper:hover{background:#fff;border-color:#faad14}.ant-input-affix-wrapper-status-warning:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper-focused,.ant-input-affix-wrapper-status-warning:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper:focus{border-color:#ffc53d;box-shadow:0 0 0 2px rgba(250,173,20,.2);border-right-width:1px;outline:0}.ant-input-affix-wrapper-status-warning .ant-input-prefix{color:#faad14}.ant-input-textarea-status-error.ant-input-textarea-has-feedback .ant-input,.ant-input-textarea-status-success.ant-input-textarea-has-feedback .ant-input,.ant-input-textarea-status-validating.ant-input-textarea-has-feedback .ant-input,.ant-input-textarea-status-warning.ant-input-textarea-has-feedback .ant-input{padding-right:24px}.ant-input-group-wrapper-status-error .ant-input-group-addon{color:#ff4d4f;border-color:#ff4d4f}.ant-input-group-wrapper-status-warning .ant-input-group-addon{color:#faad14;border-color:#faad14}.ant-input,.ant-input-group,.ant-input-group-addon{position:relative;color:rgba(0,0,0,.85)}.ant-input{box-sizing:border-box;margin:0;font-variant:tabular-nums;font-feature-settings:tnum;display:inline-block;padding:3px 7px;font-size:12px;background-image:none;border:1px solid #d9d9d9;border-radius:2px}.ant-input::-moz-placeholder{opacity:1}.ant-input::placeholder{color:#bfbfbf;user-select:none}.ant-input-disabled,.ant-input[disabled]{background-color:#f5f5f5;cursor:not-allowed;color:rgba(0,0,0,.25);pointer-events:none;opacity:1}.ant-input:placeholder-shown{text-overflow:ellipsis}.ant-input:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-input:hover{border-right-width:0;border-left-width:1px!important}.ant-input-focused,.ant-input:focus{border-color:#40a9ff;box-shadow:0 0 0 2px rgba(24,144,255,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-input-focused,.ant-input-rtl .ant-input:focus{border-right-width:0;border-left-width:1px!important}.ant-input-disabled:hover,.ant-input[disabled]:hover{border-color:#d9d9d9;border-right-width:1px}.ant-input-disabled{border-color:#d9d9d9;box-shadow:none}.ant-input[disabled]{border-color:#d9d9d9;box-shadow:none}.ant-input-borderless,.ant-input-borderless-disabled,.ant-input-borderless-focused,.ant-input-borderless:focus,.ant-input-borderless:hover,.ant-input-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-input{max-width:100%;height:auto;min-height:28px;line-height:1.66667;vertical-align:bottom;transition:all .3s,height 0s}.ant-input-lg{padding:3.4px 11px;font-size:14px}.ant-input-sm{padding:0 7px}.ant-input-stepperless[type=number]{-moz-appearance:textfield}.ant-input-stepperless[type=number] ::-webkit-outer-spin-button,.ant-input-stepperless[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ant-input-group{box-sizing:border-box;margin:0;padding:0;font-size:12px;font-variant:tabular-nums;font-feature-settings:tnum;display:table;border-collapse:separate;border-spacing:0}.ant-input-group[class*=col-]{float:none;padding-right:0;padding-left:0}.ant-input-group>[class*=col-]{padding-right:8px}.ant-input-group>[class*=col-]:last-child{padding-right:0}.ant-input-group-addon,.ant-input-group-wrap,.ant-input-group>.ant-input{display:table-cell}.ant-input-group-addon:not(:first-child):not(:last-child),.ant-input-group-wrap:not(:first-child):not(:last-child),.ant-input-group>.ant-input:not(:first-child):not(:last-child){border-radius:0}.ant-input-group-addon,.ant-input-group-wrap{width:1px;white-space:nowrap;vertical-align:middle}.ant-input-group-wrap>*{display:block!important}.ant-input-group .ant-input{float:left;width:100%;margin-bottom:0;text-align:inherit}.ant-input-group .ant-input:focus,.ant-input-group .ant-input:hover{z-index:1;border-right-width:1px}.ant-input-search-with-button .ant-input-group .ant-input:hover{z-index:0}.ant-input-group-addon{padding:0 7px;font-weight:400;font-size:12px;text-align:center;background-color:#fafafa;border:1px solid #d9d9d9;border-radius:2px;transition:all .3s}.ant-input-group-addon .ant-select{margin:-4px -7px}.ant-input-group-addon .ant-select.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{background-color:inherit;border:1px solid transparent;box-shadow:none}.ant-input-group-addon .ant-select-focused .ant-select-selector,.ant-input-group-addon .ant-select-open .ant-select-selector{color:#1890ff}.ant-input-group-addon .ant-cascader-picker{margin:-9px -8px;background-color:transparent}.ant-input-group-addon .ant-cascader-picker .ant-cascader-input{text-align:left;border:0;box-shadow:none}.ant-input-group-addon:last-child,.ant-input-group-addon:last-child .ant-select .ant-select-selector,.ant-input-group>.ant-input-affix-wrapper:not(:first-child) .ant-input,.ant-input-group>.ant-input:last-child,.ant-input-group>.ant-input:last-child .ant-select .ant-select-selector{border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-group .ant-input-affix-wrapper:not(:last-child),.ant-input-group-addon:first-child,.ant-input-group-addon:first-child .ant-select .ant-select-selector,.ant-input-group>.ant-input-affix-wrapper:not(:last-child) .ant-input,.ant-input-group>.ant-input:first-child,.ant-input-group>.ant-input:first-child .ant-select .ant-select-selector{border-top-right-radius:0;border-bottom-right-radius:0}.ant-input-group-addon:first-child{border-right:0}.ant-input-group-addon:last-child{border-left:0}.ant-input-group-lg .ant-input,.ant-input-group-lg>.ant-input-group-addon{padding:3.4px 11px;font-size:14px}.ant-input-group-sm .ant-input,.ant-input-group-sm>.ant-input-group-addon{padding:0 7px}.ant-input-group-lg .ant-select-single .ant-select-selector{height:32px}.ant-input-group-sm .ant-select-single .ant-select-selector{height:22px}.ant-input-search-button,.ant-input[type=color]{height:28px}.ant-input-search .ant-input-group .ant-input-affix-wrapper:not(:last-child){border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-input-group .ant-input-affix-wrapper:not(:first-child),.ant-input-search .ant-input-group .ant-input-affix-wrapper:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-group.ant-input-group-compact{display:block}.ant-input-group.ant-input-group-compact::after,.ant-input-group.ant-input-group-compact::before{display:table;content:''}.ant-input-group.ant-input-group-compact::after{clear:both}.ant-input-group.ant-input-group-compact-addon:not(:first-child):not(:last-child),.ant-input-group.ant-input-group-compact-wrap:not(:first-child):not(:last-child),.ant-input-group.ant-input-group-compact>.ant-input:not(:first-child):not(:last-child){border-right-width:1px}.ant-input-group.ant-input-group-compact-addon:not(:first-child):not(:last-child):focus,.ant-input-group.ant-input-group-compact-addon:not(:first-child):not(:last-child):hover,.ant-input-group.ant-input-group-compact-wrap:not(:first-child):not(:last-child):focus,.ant-input-group.ant-input-group-compact-wrap:not(:first-child):not(:last-child):hover,.ant-input-group.ant-input-group-compact>.ant-input:not(:first-child):not(:last-child):focus,.ant-input-group.ant-input-group-compact>.ant-input:not(:first-child):not(:last-child):hover{z-index:1}.ant-input-group.ant-input-group-compact>*{display:inline-block;float:none;vertical-align:top;border-radius:0}.ant-input-group.ant-input-group-compact>.ant-input-affix-wrapper,.ant-input-group.ant-input-group-compact>.ant-picker-range{display:inline-flex}.ant-input-group.ant-input-group-compact>:not(:last-child){margin-right:-1px;border-right-width:1px}.ant-input-group.ant-input-group-compact .ant-input{float:none}.ant-input-group.ant-input-group-compact>.ant-cascader-picker .ant-input,.ant-input-group.ant-input-group-compact>.ant-input-group-wrapper .ant-input,.ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input,.ant-input-group.ant-input-group-compact>.ant-select>.ant-select-selector{border-right-width:1px;border-radius:0}.ant-input-group.ant-input-group-compact>.ant-cascader-picker .ant-input:focus,.ant-input-group.ant-input-group-compact>.ant-cascader-picker .ant-input:hover,.ant-input-group.ant-input-group-compact>.ant-input-group-wrapper .ant-input:focus,.ant-input-group.ant-input-group-compact>.ant-input-group-wrapper .ant-input:hover,.ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input:focus,.ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input:hover,.ant-input-group.ant-input-group-compact>.ant-select-focused,.ant-input-group.ant-input-group-compact>.ant-select>.ant-select-arrow,.ant-input-group.ant-input-group-compact>.ant-select>.ant-select-selector:focus,.ant-input-group.ant-input-group-compact>.ant-select>.ant-select-selector:hover{z-index:1}.ant-input-group.ant-input-group-compact>.ant-cascader-picker:first-child .ant-input,.ant-input-group.ant-input-group-compact>.ant-select-auto-complete:first-child .ant-input,.ant-input-group.ant-input-group-compact>.ant-select:first-child>.ant-select-selector,.ant-input-group.ant-input-group-compact>:first-child{border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-input-group.ant-input-group-compact>.ant-cascader-picker-focused:last-child .ant-input,.ant-input-group.ant-input-group-compact>.ant-cascader-picker:last-child .ant-input,.ant-input-group.ant-input-group-compact>.ant-select:last-child>.ant-select-selector,.ant-input-group.ant-input-group-compact>:last-child{border-right-width:1px;border-top-right-radius:2px;border-bottom-right-radius:2px}.ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input{vertical-align:top}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper+.ant-input-group-wrapper{margin-left:-1px}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper+.ant-input-group-wrapper .ant-input-affix-wrapper,.ant-input-group.ant-input-group-compact .ant-input-group-wrapper:not(:last-child).ant-input-search>.ant-input-group>.ant-input-group-addon>.ant-input-search-button{border-radius:0}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper:not(:last-child).ant-input-search>.ant-input-group>.ant-input{border-radius:2px 0 0 2px}.ant-input-group-rtl .ant-input-group-addon:first-child,.ant-input-group>.ant-input-rtl:first-child{border-radius:0 2px 2px 0}.ant-input-group-rtl .ant-input-group-addon:first-child{border-right:1px solid #d9d9d9;border-left:0}.ant-input-group-rtl .ant-input-group-addon:last-child{border-right:0;border-left:1px solid #d9d9d9}.ant-input-group-rtl.ant-input-group .ant-input-affix-wrapper:not(:first-child),.ant-input-group-rtl.ant-input-group-addon:last-child,.ant-input-group-rtl.ant-input-group>.ant-input:last-child{border-radius:2px 0 0 2px}.ant-input-group-rtl.ant-input-group .ant-input-affix-wrapper:not(:last-child),.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-cascader-picker:first-child .ant-input,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-select-auto-complete:first-child .ant-input,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-select:first-child>.ant-select-selector,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>:first-child{border-radius:0 2px 2px 0}.ant-input-group-rtl.ant-input-group.ant-input-group-compact>:not(:last-child){margin-right:0;margin-left:-1px;border-left-width:1px}.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-cascader-picker-focused:last-child .ant-input,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-cascader-picker:last-child .ant-input,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-select-auto-complete:last-child .ant-input,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-select:last-child>.ant-select-selector,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>:last-child{border-left-width:1px;border-radius:2px 0 0 2px}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper-rtl+.ant-input-group-wrapper-rtl{margin-right:-1px;margin-left:0}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper-rtl:not(:last-child).ant-input-search>.ant-input-group>.ant-input{border-radius:0 2px 2px 0}.ant-input-group-wrapper{display:inline-block;width:100%;text-align:start;vertical-align:top}.ant-input-password-icon.anticon{color:rgba(0,0,0,.45);cursor:pointer;transition:all .3s}.ant-input-password-icon.anticon:hover{color:rgba(0,0,0,.85)}.ant-input[type=color].ant-input-lg{height:32px}.ant-input[type=color].ant-input-sm{height:22px;padding-top:3px;padding-bottom:3px}.ant-input-textarea-show-count>.ant-input{height:100%}.ant-input-textarea-show-count::after{float:right;color:rgba(0,0,0,.45);white-space:nowrap;content:attr(data-count);pointer-events:none}.ant-input-textarea-show-count.ant-input-textarea-in-form-item::after{margin-bottom:-22px}.ant-input-textarea-suffix{position:absolute;top:0;right:7px;bottom:0;z-index:1;display:inline-flex;align-items:center;margin:auto}.ant-input-search .ant-input:focus,.ant-input-search .ant-input:hover{border-color:#40a9ff}.ant-input-search .ant-input:focus+.ant-input-group-addon .ant-input-search-button:not(.ant-btn-primary),.ant-input-search .ant-input:hover+.ant-input-group-addon .ant-input-search-button:not(.ant-btn-primary){border-left-color:#40a9ff}.ant-input-search .ant-input-affix-wrapper{border-radius:0}.ant-input-search .ant-input-lg{line-height:1.66647}.ant-input-search>.ant-input-group>.ant-input-group-addon:last-child{left:-1px;padding:0;border:0}.ant-input-search>.ant-input-group>.ant-input-group-addon:last-child .ant-input-search-button{padding-top:0;padding-bottom:0;border-radius:0 2px 2px 0}.ant-input-search>.ant-input-group>.ant-input-group-addon:last-child .ant-input-search-button:not(.ant-btn-primary){color:rgba(0,0,0,.45)}.ant-input-search>.ant-input-group>.ant-input-group-addon:last-child .ant-input-search-button:not(.ant-btn-primary).ant-btn-loading::before{top:0;right:0;bottom:0;left:0}.ant-input-search-button:focus,.ant-input-search-button:hover{z-index:1}.ant-input-search-large .ant-input-search-button{height:32px}.ant-input-search-small .ant-input-search-button{height:22px}.ant-input-affix-wrapper.ant-input-affix-wrapper-rtl>input.ant-input{border:none;outline:0}.ant-input-affix-wrapper-rtl .ant-input-prefix{margin:0 0 0 4px}.ant-input-affix-wrapper-rtl .ant-input-suffix{margin:0 4px 0 0}.ant-input-textarea-rtl.ant-input-textarea-show-count::after{text-align:left}.ant-input-affix-wrapper-rtl .ant-input-clear-icon-has-suffix{margin-right:0;margin-left:4px}.ant-input-affix-wrapper-rtl .ant-input-clear-icon{right:auto;left:8px}.ant-input-search-rtl .ant-input:focus+.ant-input-group-addon .ant-input-search-button:not(.ant-btn-primary),.ant-input-search-rtl .ant-input:hover+.ant-input-group-addon .ant-input-search-button:not(.ant-btn-primary){border-right-color:#40a9ff;border-left-color:#d9d9d9}.ant-input-search-rtl>.ant-input-group>.ant-input-affix-wrapper-focused,.ant-input-search-rtl>.ant-input-group>.ant-input-affix-wrapper:hover{border-right-color:#40a9ff}.ant-input-search-rtl>.ant-input-group>.ant-input-group-addon{right:-1px;left:auto}.ant-input-search-rtl>.ant-input-group>.ant-input-group-addon .ant-input-search-button{border-radius:2px 0 0 2px}@media screen and (-ms-high-contrast:active),(-ms-high-contrast:none){.ant-input{height:28px}.ant-input-lg{height:32px}.ant-input-sm{height:22px}.ant-input-affix-wrapper>input.ant-input{height:auto}}textarea.nz-textarea-autosize-measuring{height:auto!important;overflow:hidden!important;padding:2px 0!important}.ant-input-search-rtl.ant-input-search-enter-button input+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only,.ant-input-search-rtl.ant-input-search-enter-button+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only{width:28px;height:28px}.ant-input-search-rtl.ant-input-search-enter-button input+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only.ant-btn-sm,.ant-input-search-rtl.ant-input-search-enter-button+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only.ant-btn-sm{width:22px;height:22px}.ant-input-search-rtl.ant-input-search-enter-button input+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only.ant-btn-lg,.ant-input-search-rtl.ant-input-search-enter-button+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only.ant-btn-lg{width:32px;height:32px}.ant-input-number,.ant-input-number-affix-wrapper{min-width:0;background-color:#fff;transition:all .3s;width:90px}.ant-input-affix-wrapper-textarea-with-clear-btn .ant-input-suffix{margin-left:0}nz-form-item-feedback-icon.ant-input-suffix{display:flex;flex:none;align-items:center;pointer-events:none;position:absolute;top:0;right:0;z-index:1;height:100%;margin-right:8px;margin-left:4px}.ant-input-status-error.ant-input-has-feedback,.ant-input-status-success.ant-input-has-feedback,.ant-input-status-validating.ant-input-has-feedback,.ant-input-status-warning.ant-input-has-feedback{padding-right:16px}.ant-input-textarea-show-count{display:block;position:relative}.ant-input-number-affix-wrapper{color:rgba(0,0,0,.85);font-size:12px;line-height:1.66667;background-image:none;border:1px solid #d9d9d9;border-radius:2px;position:relative;display:inline-flex;padding:0;padding-inline-start:7px}.ant-input-number-affix-wrapper::-moz-placeholder{opacity:1}.ant-input-number-affix-wrapper::placeholder{color:#bfbfbf;user-select:none}.ant-input-number-affix-wrapper-disabled,.ant-input-number-affix-wrapper[disabled]{background-color:#f5f5f5;color:rgba(0,0,0,.25);opacity:1;cursor:not-allowed;pointer-events:none}.ant-input-number-affix-wrapper:placeholder-shown{text-overflow:ellipsis}.ant-input-number-affix-wrapper:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-input-number-affix-wrapper:hover{border-right-width:0;border-left-width:1px!important}.ant-input-number-affix-wrapper-focused,.ant-input-number-affix-wrapper:focus{border-color:#40a9ff;box-shadow:0 0 0 2px rgba(24,144,255,.2);border-right-width:1px;outline:0;z-index:1}.ant-input-rtl .ant-input-number-affix-wrapper-focused,.ant-input-rtl .ant-input-number-affix-wrapper:focus{border-right-width:0;border-left-width:1px!important}.ant-input-number-affix-wrapper-disabled:hover,.ant-input-number-affix-wrapper[disabled]:hover{border-color:#d9d9d9;border-right-width:1px}.ant-input-number-affix-wrapper-disabled{border-color:#d9d9d9;box-shadow:none}.ant-input-number-affix-wrapper[disabled]{border-color:#d9d9d9;box-shadow:none}.ant-input-number-affix-wrapper-borderless,.ant-input-number-affix-wrapper-borderless-disabled,.ant-input-number-affix-wrapper-borderless-focused,.ant-input-number-affix-wrapper-borderless:focus,.ant-input-number-affix-wrapper-borderless:hover,.ant-input-number-affix-wrapper-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-input-number-affix-wrapper{max-width:100%;height:auto;min-height:28px;line-height:1.66667;vertical-align:bottom;transition:all .3s,height 0s}.ant-input-number-affix-wrapper-lg{padding:3.4px 11px;font-size:14px}.ant-input-number-affix-wrapper-sm{padding:0 7px}.ant-input-number-affix-wrapper-stepperless[type=number]{-moz-appearance:textfield}.ant-input-number-affix-wrapper-stepperless[type=number] ::-webkit-outer-spin-button,.ant-input-number-affix-wrapper-stepperless[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ant-input-number-affix-wrapper:not(.ant-input-number-affix-wrapper-disabled):hover{border-color:#40a9ff;border-right-width:1px;z-index:1}.ant-input-rtl .ant-input-number-affix-wrapper:not(.ant-input-number-affix-wrapper-disabled):hover{border-right-width:0;border-left-width:1px!important}.ant-input-number-affix-wrapper-disabled .ant-input-number[disabled]{background:0 0}.ant-input-number-affix-wrapper>div.ant-input-number{width:100%;border:none;outline:0}.ant-input-number-affix-wrapper>div.ant-input-number.ant-input-number-focused{box-shadow:none!important}.ant-input-number-affix-wrapper input.ant-input-number-input{padding:0}.ant-input-number-affix-wrapper::before{width:0;visibility:hidden;content:'\a0'}.ant-input-number-affix-wrapper .ant-input-number-handler-wrap{z-index:2}.ant-input-number-prefix,.ant-input-number-suffix{display:flex;flex:none;align-items:center;pointer-events:none}.ant-input-number-prefix{margin-inline-end:4px}.ant-input-number-suffix{position:absolute;top:0;right:0;z-index:1;height:100%;margin-right:7px;margin-left:4px}.ant-input-number,.ant-input-number-group{line-height:1.66667;font-size:12px;position:relative;margin:0;box-sizing:border-box;list-style:none;font-feature-settings:tnum;font-variant:tabular-nums}.ant-input-number-group-wrapper .ant-input-number-affix-wrapper{width:100%}.ant-input-number-status-error:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number,.ant-input-number-status-error:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number:hover{background:#fff;border-color:#ff4d4f}.ant-input-number-status-error:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number-focused,.ant-input-number-status-error:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number:focus{border-color:#ff7875;box-shadow:0 0 0 2px rgba(255,77,79,.2);border-right-width:1px;outline:0}.ant-input-number-status-error .ant-input-number-prefix{color:#ff4d4f}.ant-input-number-status-warning:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number,.ant-input-number-status-warning:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number:hover{background:#fff;border-color:#faad14}.ant-input-number-status-warning:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number-focused,.ant-input-number-status-warning:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number:focus{border-color:#ffc53d;box-shadow:0 0 0 2px rgba(250,173,20,.2);border-right-width:1px;outline:0}.ant-input-number-status-warning .ant-input-number-prefix{color:#faad14}.ant-input-number-affix-wrapper-status-error:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper,.ant-input-number-affix-wrapper-status-error:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper:hover{background:#fff;border-color:#ff4d4f}.ant-input-number-affix-wrapper-status-error:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper-focused,.ant-input-number-affix-wrapper-status-error:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper:focus{border-color:#ff7875;box-shadow:0 0 0 2px rgba(255,77,79,.2);border-right-width:1px;outline:0}.ant-input-number-affix-wrapper-status-error .ant-input-number-prefix{color:#ff4d4f}.ant-input-number-affix-wrapper-status-warning:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper,.ant-input-number-affix-wrapper-status-warning:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper:hover{background:#fff;border-color:#faad14}.ant-input-number-affix-wrapper-status-warning:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper-focused,.ant-input-number-affix-wrapper-status-warning:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper:focus{border-color:#ffc53d;box-shadow:0 0 0 2px rgba(250,173,20,.2);border-right-width:1px;outline:0}.ant-input-number-affix-wrapper-status-warning .ant-input-number-prefix{color:#faad14}.ant-input-number-group-wrapper-status-error .ant-input-number-group-addon{color:#ff4d4f;border-color:#ff4d4f}.ant-input-number-group-wrapper-status-warning .ant-input-number-group-addon{color:#faad14;border-color:#faad14}.ant-input-number{color:rgba(0,0,0,.85);background-image:none;display:inline-block;padding:0;border:1px solid #d9d9d9;border-radius:2px}.ant-input-number::-moz-placeholder{opacity:1}.ant-input-number::placeholder{color:#bfbfbf;user-select:none}.ant-input-number:placeholder-shown{text-overflow:ellipsis}.ant-input-rtl .ant-input-number:hover{border-right-width:0;border-left-width:1px!important}.ant-input-number-focused,.ant-input-number:focus{border-color:#40a9ff;box-shadow:0 0 0 2px rgba(24,144,255,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-input-number-focused,.ant-input-rtl .ant-input-number:focus{border-right-width:0;border-left-width:1px!important}.ant-input-number[disabled]{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;pointer-events:none;color:rgba(0,0,0,.25)}.ant-input-number[disabled]:hover{border-color:#d9d9d9;border-right-width:1px}.ant-input-number-borderless,.ant-input-number-borderless-disabled,.ant-input-number-borderless-focused,.ant-input-number-borderless:focus,.ant-input-number-borderless:hover,.ant-input-number-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-input-number{max-width:100%;height:auto;min-height:28px;line-height:1.66667;vertical-align:bottom;transition:all .3s,height 0s}.ant-input-number-stepperless[type=number]{-moz-appearance:textfield}.ant-input-number-stepperless[type=number] ::-webkit-outer-spin-button,.ant-input-number-stepperless[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ant-input-number-group{padding:0;color:rgba(0,0,0,.85);display:table;width:100%;border-collapse:separate;border-spacing:0}.ant-input-number-group[class*=col-]{float:none;padding-right:0;padding-left:0}.ant-input-number-group>[class*=col-]{padding-right:8px}.ant-input-number-group>[class*=col-]:last-child{padding-right:0}.ant-input-number-group-addon,.ant-input-number-group-wrap,.ant-input-number-group>.ant-input-number{display:table-cell}.ant-input-number-group-addon:not(:first-child):not(:last-child),.ant-input-number-group-wrap:not(:first-child):not(:last-child),.ant-input-number-group>.ant-input-number:not(:first-child):not(:last-child){border-radius:0}.ant-input-number-group-addon,.ant-input-number-group-wrap{width:1px;white-space:nowrap;vertical-align:middle}.ant-input-number-group-wrap>*{display:block!important}.ant-input-number-group .ant-input-number{float:left;width:100%;margin-bottom:0;text-align:inherit}.ant-input-number-group .ant-input-number:focus,.ant-input-number-group .ant-input-number:hover{z-index:1;border-right-width:1px}.ant-input-search-with-button .ant-input-number-group .ant-input-number:hover{z-index:0}.ant-input-number-group.ant-input-number-group-compact-addon:not(:first-child):not(:last-child):focus,.ant-input-number-group.ant-input-number-group-compact-addon:not(:first-child):not(:last-child):hover,.ant-input-number-group.ant-input-number-group-compact-wrap:not(:first-child):not(:last-child):focus,.ant-input-number-group.ant-input-number-group-compact-wrap:not(:first-child):not(:last-child):hover,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker .ant-input:focus,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker .ant-input:hover,.ant-input-number-group.ant-input-number-group-compact>.ant-input-group-wrapper .ant-input:focus,.ant-input-number-group.ant-input-number-group-compact>.ant-input-group-wrapper .ant-input:hover,.ant-input-number-group.ant-input-number-group-compact>.ant-input-number:not(:first-child):not(:last-child):focus,.ant-input-number-group.ant-input-number-group-compact>.ant-input-number:not(:first-child):not(:last-child):hover,.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete .ant-input:focus,.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete .ant-input:hover,.ant-input-number-group.ant-input-number-group-compact>.ant-select-focused,.ant-input-number-group.ant-input-number-group-compact>.ant-select>.ant-select-arrow,.ant-input-number-group.ant-input-number-group-compact>.ant-select>.ant-select-selector:focus,.ant-input-number-group.ant-input-number-group-compact>.ant-select>.ant-select-selector:hover{z-index:1}.ant-input-number-group-addon{position:relative;padding:0 7px;color:rgba(0,0,0,.85);font-weight:400;font-size:12px;text-align:center;background-color:#fafafa;border:1px solid #d9d9d9;border-radius:2px;transition:all .3s}.ant-input-number-group-addon .ant-select{margin:-4px -7px}.ant-input-number-group-addon .ant-select.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{background-color:inherit;border:1px solid transparent;box-shadow:none}.ant-input-number-group-addon .ant-select-focused .ant-select-selector,.ant-input-number-group-addon .ant-select-open .ant-select-selector{color:#1890ff}.ant-input-number-group-addon .ant-cascader-picker{margin:-9px -8px;background-color:transparent}.ant-input-number-group-addon .ant-cascader-picker .ant-cascader-input{text-align:left;border:0;box-shadow:none}.ant-input-number-group-addon:last-child,.ant-input-number-group-addon:last-child .ant-select .ant-select-selector,.ant-input-number-group>.ant-input-number-affix-wrapper:not(:first-child) .ant-input-number,.ant-input-number-group>.ant-input-number:last-child,.ant-input-number-group>.ant-input-number:last-child .ant-select .ant-select-selector{border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-number-group .ant-input-number-affix-wrapper:not(:last-child),.ant-input-number-group-addon:first-child,.ant-input-number-group-addon:first-child .ant-select .ant-select-selector,.ant-input-number-group>.ant-input-number-affix-wrapper:not(:last-child) .ant-input-number,.ant-input-number-group>.ant-input-number:first-child,.ant-input-number-group>.ant-input-number:first-child .ant-select .ant-select-selector{border-top-right-radius:0;border-bottom-right-radius:0}.ant-input-number-group-addon:first-child{border-right:0}.ant-input-number-group-addon:last-child{border-left:0}.ant-input-number-group-lg .ant-input-number,.ant-input-number-group-lg>.ant-input-number-group-addon{padding:3.4px 11px;font-size:14px}.ant-input-number-group-sm .ant-input-number,.ant-input-number-group-sm>.ant-input-number-group-addon{padding:0 7px}.ant-input-number-group-lg .ant-select-single .ant-select-selector{height:32px}.ant-input-number-group-sm .ant-select-single .ant-select-selector{height:22px}.ant-input-search .ant-input-number-group .ant-input-number-affix-wrapper:not(:last-child){border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-input-number-group .ant-input-number-affix-wrapper:not(:first-child),.ant-input-search .ant-input-number-group .ant-input-number-affix-wrapper:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-number-group.ant-input-number-group-compact{display:block}.ant-input-number-group.ant-input-number-group-compact::before{display:table;content:''}.ant-input-number-group.ant-input-number-group-compact::after{display:table;clear:both;content:''}.ant-input-number-group.ant-input-number-group-compact-addon:not(:first-child):not(:last-child),.ant-input-number-group.ant-input-number-group-compact-wrap:not(:first-child):not(:last-child),.ant-input-number-group.ant-input-number-group-compact>.ant-input-number:not(:first-child):not(:last-child){border-right-width:1px}.ant-input-number-group.ant-input-number-group-compact>*{display:inline-block;float:none;vertical-align:top;border-radius:0}.ant-input-number-group.ant-input-number-group-compact>.ant-input-number-affix-wrapper,.ant-input-number-group.ant-input-number-group-compact>.ant-picker-range{display:inline-flex}.ant-input-number-group.ant-input-number-group-compact>:not(:last-child){margin-right:-1px;border-right-width:1px}.ant-input-number-group.ant-input-number-group-compact .ant-input-number{float:none}.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-input-group-wrapper .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-select>.ant-select-selector{border-right-width:1px;border-radius:0}.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker:first-child .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete:first-child .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-select:first-child>.ant-select-selector,.ant-input-number-group.ant-input-number-group-compact>:first-child{border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker-focused:last-child .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker:last-child .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-select:last-child>.ant-select-selector,.ant-input-number-group.ant-input-number-group-compact>:last-child{border-right-width:1px;border-top-right-radius:2px;border-bottom-right-radius:2px}.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete .ant-input{vertical-align:top}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper+.ant-input-group-wrapper{margin-left:-1px}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper+.ant-input-group-wrapper .ant-input-affix-wrapper,.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper:not(:last-child).ant-input-search>.ant-input-group>.ant-input-group-addon>.ant-input-search-button{border-radius:0}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper:not(:last-child).ant-input-search>.ant-input-group>.ant-input{border-radius:2px 0 0 2px}.ant-input-number-group-rtl .ant-input-number-group-addon:first-child,.ant-input-number-group>.ant-input-number-rtl:first-child{border-radius:0 2px 2px 0}.ant-input-number-group-rtl .ant-input-number-group-addon:first-child{border-right:1px solid #d9d9d9;border-left:0}.ant-input-number-group-rtl .ant-input-number-group-addon:last-child{border-right:0;border-left:1px solid #d9d9d9}.ant-input-number-group-rtl.ant-input-number-group .ant-input-number-affix-wrapper:not(:first-child),.ant-input-number-group-rtl.ant-input-number-group-addon:last-child,.ant-input-number-group-rtl.ant-input-number-group>.ant-input-number:last-child{border-radius:2px 0 0 2px}.ant-input-number-group-rtl.ant-input-number-group .ant-input-number-affix-wrapper:not(:last-child),.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker:first-child .ant-input,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete:first-child .ant-input,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-select:first-child>.ant-select-selector,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>:first-child{border-radius:0 2px 2px 0}.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>:not(:last-child){margin-right:0;margin-left:-1px;border-left-width:1px}.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker-focused:last-child .ant-input,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker:last-child .ant-input,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete:last-child .ant-input,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-select:last-child>.ant-select-selector,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>:last-child{border-left-width:1px;border-radius:2px 0 0 2px}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper-rtl+.ant-input-group-wrapper-rtl{margin-right:-1px;margin-left:0}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper-rtl:not(:last-child).ant-input-search>.ant-input-group>.ant-input{border-radius:0 2px 2px 0}.ant-input-number-group-wrapper{display:inline-block;text-align:start;vertical-align:top}.ant-input-number-handler{position:relative;display:block;width:100%;height:50%;overflow:hidden;color:rgba(0,0,0,.45);font-weight:700;line-height:0;text-align:center;border-left:1px solid #d9d9d9;transition:all .1s linear}.ant-input-number-focused,.ant-input-number:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-number-handler:active{background:#f4f4f4}.ant-input-number-handler:hover .ant-input-number-handler-down-inner,.ant-input-number-handler:hover .ant-input-number-handler-up-inner{color:#40a9ff}.ant-input-number-handler-down-inner,.ant-input-number-handler-up-inner{display:inline-block;color:inherit;font-style:normal;text-transform:none;vertical-align:-.125em;position:absolute;right:4px;width:12px;height:12px;color:rgba(0,0,0,.45);line-height:12px;transition:all .1s linear;user-select:none}.ant-input-number-handler-down-inner>*,.ant-input-number-handler-up-inner>*{line-height:1}.ant-input-number-handler-down-inner svg,.ant-input-number-handler-up-inner svg{display:inline-block}.ant-input-number-disabled .ant-input-number-handler-wrap,.ant-input-number-handler-down-inner::before,.ant-input-number-handler-up-inner::before,.ant-input-number-readonly .ant-input-number-handler-wrap{display:none}.ant-input-number-handler-down-inner .ant-input-number-handler-down-inner-icon,.ant-input-number-handler-down-inner .ant-input-number-handler-up-inner-icon,.ant-input-number-handler-up-inner .ant-input-number-handler-down-inner-icon,.ant-input-number-handler-up-inner .ant-input-number-handler-up-inner-icon,nz-content,nz-footer,nz-header{display:block}.ant-input-number:hover+.ant-form-item-children-icon{opacity:0;transition:opacity .24s linear .24s}.ant-input-number-focused{box-shadow:0 0 0 2px rgba(24,144,255,.2);outline:0}.ant-input-rtl .ant-input-number-focused{border-right-width:0;border-left-width:1px!important}.ant-input-number-disabled{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;pointer-events:none;color:rgba(0,0,0,.25)}.ant-input-number-disabled:hover{border-color:#d9d9d9;border-right-width:1px}.ant-input-number-disabled .ant-input-number-input{cursor:not-allowed}.ant-input-number-input{width:100%;height:26px;padding:0 7px;text-align:left;background-color:transparent;border:0;border-radius:2px;outline:0;transition:all .3s linear;appearance:textfield!important}.ant-input-number-input::-moz-placeholder{opacity:1}.ant-input-number-input::placeholder{color:#bfbfbf;user-select:none}.ant-input-number-input:placeholder-shown{text-overflow:ellipsis}.ant-input-number-input[type=number]::-webkit-inner-spin-button,.ant-input-number-input[type=number]::-webkit-outer-spin-button{margin:0;-webkit-appearance:none;appearance:none}.ant-input-number-lg{padding:0;font-size:14px}.ant-input-number-lg input{height:30px}.ant-input-number-sm{padding:0}.ant-input-number-sm input{height:20px;padding:0 7px}.ant-input-number-handler-wrap{position:absolute;top:0;right:0;width:22px;height:100%;background:#fff;border-radius:0 2px 2px 0;opacity:0;transition:opacity .24s linear .1s}.ant-input-number-handler-wrap .ant-input-number-handler .ant-input-number-handler-down-inner,.ant-input-number-handler-wrap .ant-input-number-handler .ant-input-number-handler-up-inner{display:flex;align-items:center;justify-content:center;min-width:auto;margin-right:0;font-size:7px}.ant-input-number-borderless .ant-input-number-handler-wrap{border-left-width:0}.ant-input-number-handler-wrap:hover .ant-input-number-handler{height:40%}.ant-input-number-handler-down:hover,.ant-input-number-handler-up:hover{height:60%!important}.ant-input-number-focused .ant-input-number-handler-wrap,.ant-input-number:hover .ant-input-number-handler-wrap{opacity:1}.ant-input-number-handler-up{border-top-right-radius:2px;cursor:pointer}.ant-input-number-handler-up-inner{top:50%;margin-top:-5px;text-align:center}.ant-input-number-handler-down{top:0;border-top:1px solid #d9d9d9;border-bottom-right-radius:2px;cursor:pointer}.ant-input-number-handler-down-inner{top:50%;text-align:center;transform:translateY(-50%)}.ant-input-number-borderless .ant-input-number-handler-down{border-top-width:0}.ant-input-number-handler-down-disabled,.ant-input-number-handler-up-disabled{cursor:not-allowed}.ant-input-number-handler-down-disabled:hover .ant-input-number-handler-down-inner,.ant-input-number-handler-up-disabled:hover .ant-input-number-handler-up-inner{color:rgba(0,0,0,.25)}.ant-input-number-borderless{box-shadow:none}.ant-input-number-out-of-range input{color:#ff4d4f}.ant-input-number-rtl .ant-input-number-handler{border-right:1px solid #d9d9d9;border-left:0}.ant-input-number-rtl .ant-input-number-handler-wrap{right:auto;left:0}.ant-input-number-rtl.ant-input-number-borderless .ant-input-number-handler-wrap{border-right-width:0}.ant-input-number-rtl .ant-input-number-handler-up{border-top-right-radius:0}.ant-input-number-rtl .ant-input-number-handler-down{border-bottom-right-radius:0}.ant-input-number-rtl .ant-input-number-input{direction:ltr;text-align:right}.ant-form-rtl,.ant-layout-rtl,.ant-list-rtl,.ant-list-rtl .ReactVirtualized__List .ant-list-item,.ant-menu.ant-menu-rtl{direction:rtl}.ant-input-number-affix-wrapper>nz-input-number.ant-input-number{width:100%;border:none;outline:0}.ant-input-number-affix-wrapper>nz-input-number.ant-input-number.ant-input-number-focused{box-shadow:none!important}.ant-mentions-dropdown,.ant-menu{box-shadow:0 3px 6px -4px rgba(0,0,0,.12),0 6px 16px 0 rgba(0,0,0,.08),0 9px 28px 8px rgba(0,0,0,.05)}.ant-input-number.ant-input-number-has-feedback .ant-input-number-handler-wrap{z-index:2}.ant-layout{display:flex;flex:auto;flex-direction:column;min-height:0;background:#f0f2f5}.ant-layout,.ant-layout *{box-sizing:border-box}.ant-layout.ant-layout-has-sider{flex-direction:row}.ant-layout.ant-layout-has-sider>.ant-layout,.ant-layout.ant-layout-has-sider>.ant-layout-content{width:0}.ant-layout-footer,.ant-layout-header{flex:0 0 auto}.ant-layout-header{height:64px;padding:0 50px;color:rgba(0,0,0,.85);line-height:64px;background:#001529}.ant-layout-footer{padding:24px 50px;color:rgba(0,0,0,.85);font-size:12px;background:#f0f2f5}.ant-layout-content{flex:auto;min-height:0}.ant-layout-sider{position:relative;min-width:0;background:#001529;transition:all .2s}.ant-layout-sider-children{height:100%;margin-top:-.1px;padding-top:.1px}.ant-layout-sider-children .ant-menu.ant-menu-inline-collapsed{width:auto}.ant-layout-sider-has-trigger{padding-bottom:48px}.ant-layout-sider-trigger{position:fixed;bottom:0;z-index:1;height:48px;color:#fff;line-height:48px;text-align:center;background:#002140;cursor:pointer;transition:all .2s}.ant-layout-sider-zero-width>*{overflow:hidden}.ant-layout-sider-zero-width-trigger{position:absolute;top:64px;right:-36px;z-index:1;width:36px;height:42px;color:#fff;font-size:18px;line-height:42px;text-align:center;background:#001529;border-radius:0 2px 2px 0;cursor:pointer;transition:background .3s ease}.ant-form select[multiple],.ant-form select[size],.ant-form-vertical .ant-form-item-label>label{height:auto}.ant-layout-sider-zero-width-trigger::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;transition:all .3s;content:''}.ant-layout-sider-zero-width-trigger:hover::after{background:rgba(255,255,255,.1)}.ant-layout-sider-zero-width-trigger-right{left:-36px;border-radius:2px 0 0 2px}.ant-layout-sider-light{background:#fff}.ant-layout-sider-light .ant-layout-sider-trigger,.ant-layout-sider-light .ant-layout-sider-zero-width-trigger{color:rgba(0,0,0,.85);background:#fff}.ant-form-item .ant-input-number+.ant-form-text{margin-left:8px}.ant-form-inline{display:flex;flex-wrap:wrap}.ant-form-inline .ant-form-item{flex:none;flex-wrap:nowrap;margin-right:16px;margin-bottom:0}.ant-form-inline .ant-form-item-with-help{margin-bottom:16px}.ant-form-inline .ant-form-item>.ant-form-item-control,.ant-form-inline .ant-form-item>.ant-form-item-label{display:inline-block;vertical-align:top}.ant-form-inline .ant-form-item>.ant-form-item-label{flex:none}.ant-form-inline .ant-form-item .ant-form-item-has-feedback,.ant-form-inline .ant-form-item .ant-form-text{display:inline-block}.ant-form-horizontal .ant-form-item-label{flex-grow:0}.ant-form-horizontal .ant-form-item-control{flex:1 1 0;min-width:0}.ant-form-horizontal .ant-form-item-label[class$='-24']+.ant-form-item-control,.ant-form-horizontal .ant-form-item-label[class*='-24 ']+.ant-form-item-control,.ant-slider-tooltip .ant-tooltip-inner{min-width:unset}.ant-form-vertical .ant-form-item{flex-direction:column}.ant-col-24.ant-form-item-label,.ant-col-xl-24.ant-form-item-label,.ant-form-vertical .ant-form-item-label{padding:0 0 4px;line-height:1.66667;white-space:initial;text-align:left}.ant-col-24.ant-form-item-label>label,.ant-col-xl-24.ant-form-item-label>label,.ant-form-vertical .ant-form-item-label>label{margin:0}.ant-col-24.ant-form-item-label>label::after,.ant-col-xl-24.ant-form-item-label>label::after,.ant-form-vertical .ant-form-item-label>label::after{display:none}.ant-form-rtl.ant-col-24.ant-form-item-label,.ant-form-rtl.ant-col-xl-24.ant-form-item-label,.ant-form-rtl.ant-form-vertical .ant-form-item-label{text-align:right}@media (max-width:575px){.ant-col-xs-24.ant-form-item-label>label,.ant-form-item .ant-form-item-label>label{margin:0}.ant-col-xs-24.ant-form-item-label>label::after,.ant-form-item .ant-form-item-label>label::after{display:none}.ant-form-item .ant-form-item-label{padding:0 0 4px;line-height:1.66667;white-space:initial;text-align:left}.ant-form-rtl.ant-form-item .ant-form-item-label{text-align:right}.ant-form .ant-form-item{flex-wrap:wrap}.ant-form .ant-form-item .ant-form-item-control,.ant-form .ant-form-item .ant-form-item-label{flex:0 0 100%;max-width:100%}.ant-col-xs-24.ant-form-item-label{padding:0 0 4px;line-height:1.66667;white-space:initial;text-align:left}.ant-form-rtl.ant-col-xs-24.ant-form-item-label{text-align:right}}@media (max-width:767px){.ant-col-sm-24.ant-form-item-label{padding:0 0 4px;line-height:1.66667;white-space:initial;text-align:left}.ant-col-sm-24.ant-form-item-label>label{margin:0}.ant-col-sm-24.ant-form-item-label>label::after{display:none}.ant-form-rtl.ant-col-sm-24.ant-form-item-label{text-align:right}}@media (max-width:991px){.ant-col-md-24.ant-form-item-label{padding:0 0 4px;line-height:1.66667;white-space:initial;text-align:left}.ant-col-md-24.ant-form-item-label>label{margin:0}.ant-col-md-24.ant-form-item-label>label::after{display:none}.ant-form-rtl.ant-col-md-24.ant-form-item-label{text-align:right}}@media (max-width:1199px){.ant-col-lg-24.ant-form-item-label{padding:0 0 4px;line-height:1.66667;white-space:initial;text-align:left}.ant-col-lg-24.ant-form-item-label>label{margin:0}.ant-col-lg-24.ant-form-item-label>label::after{display:none}.ant-form-rtl.ant-col-lg-24.ant-form-item-label{text-align:right}}@media (max-width:1599px){.ant-col-xl-24.ant-form-item-label{padding:0 0 4px;line-height:1.66667;white-space:initial;text-align:left}.ant-col-xl-24.ant-form-item-label>label{margin:0}.ant-col-xl-24.ant-form-item-label>label::after{display:none}.ant-form-rtl.ant-col-xl-24.ant-form-item-label{text-align:right}}.ant-form-item-explain-error{color:#ff4d4f}.ant-form-item-explain-warning,.ant-form-item-has-warning .ant-form-item-split{color:#faad14}.ant-form-item-has-feedback .ant-switch{margin:2px 0 4px}.ant-form-item-has-error .ant-form-item-split{color:#ff4d4f}.ant-form{box-sizing:border-box;margin:0;padding:0;color:rgba(0,0,0,.85);font-size:12px;font-variant:tabular-nums;line-height:1.66667;list-style:none;font-feature-settings:tnum}.ant-form legend{display:block;width:100%;margin-bottom:20px;padding:0;color:rgba(0,0,0,.45);font-size:14px;line-height:inherit;border:0;border-bottom:1px solid #d9d9d9}.ant-form label{font-size:12px}.ant-form input[type=search]{box-sizing:border-box}.ant-form input[type=radio],.ant-form input[type=checkbox]{line-height:normal}.ant-form output,.ant-form-item{line-height:1.66667;color:rgba(0,0,0,.85);font-size:12px}.ant-form input[type=file]{display:block}.ant-form input[type=range]{display:block;width:100%}.ant-form input[type=radio]:focus,.ant-form input[type=checkbox]:focus,.ant-form input[type=file]:focus{outline:dotted thin;outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}.ant-form output{display:block;padding-top:15px}.ant-form .ant-form-text{display:inline-block;padding-right:8px}.ant-form-small .ant-form-item-label>label{height:22px}.ant-form-small .ant-form-item-control-input{min-height:22px}.ant-form-large .ant-form-item-label>label{height:32px}.ant-form-large .ant-form-item-control-input{min-height:32px}.ant-form-item{box-sizing:border-box;margin:0 0 16px;padding:0;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;vertical-align:top;transition:margin-bottom .3s 17ms linear}.ant-form-item-with-help{margin-bottom:0;transition:none}.ant-form-item-hidden,.ant-form-item-hidden.ant-row{display:none}.ant-form-item-label{display:inline-block;flex-grow:0;overflow:hidden;white-space:nowrap;text-align:right;vertical-align:middle}.ant-form-item-label-left{text-align:left}.ant-form-item-label-wrap{overflow:unset;line-height:1.41667em;white-space:unset}.ant-form-item-label>label{position:relative;display:inline-flex;align-items:center;max-width:100%;height:28px;color:rgba(0,0,0,.85);font-size:12px}.ant-form-item-label>label>.anticon{font-size:12px;vertical-align:top}.ant-form-item-label>label.ant-form-item-required:not(.ant-form-item-required-mark-optional)::before{display:inline-block;margin-right:4px;color:#ff4d4f;font-size:12px;font-family:SimSun,sans-serif;line-height:1;content:'*'}.ant-form-hide-required-mark .ant-form-item-label>label.ant-form-item-required:not(.ant-form-item-required-mark-optional)::before{display:none}.ant-form-item-label>label .ant-form-item-optional{display:inline-block;margin-left:0;color:rgba(0,0,0,.45)}.ant-form-hide-required-mark .ant-form-item-label>label .ant-form-item-optional{display:none}.ant-form-item-label>label .ant-form-item-tooltip{color:rgba(0,0,0,.45);cursor:help;writing-mode:horizontal-tb;margin-inline-start:0}.ant-form-item-label>label::after{content:':';position:relative;top:-.5px;margin:0 8px 0 2px}.ant-form-item-label>label.ant-form-item-no-colon::after{content:' '}.ant-form-item-control{display:flex;flex-direction:column;flex-grow:1}.ant-form-item-control:first-child:not([class^=ant-col-]):not([class*=' ant-col-']){width:100%}.ant-form-item-control-input{position:relative;display:flex;align-items:center;min-height:28px}.ant-form-item-control-input-content{flex:auto;max-width:100%}.ant-form-item-explain,.ant-form-item-extra{clear:both;color:rgba(0,0,0,.45);font-size:12px;line-height:1.66667;transition:color .3s cubic-bezier(.215,.61,.355,1)}.ant-form-item-explain-connected{height:0;min-height:0;opacity:0}.ant-form-item-extra{min-height:16px}.ant-form-item-with-help .ant-form-item-explain{height:auto;min-height:16px;opacity:1}.ant-form-item-feedback-icon{font-size:12px;text-align:center;visibility:visible;animation:zoomIn .3s cubic-bezier(.12,.4,.29,1.46);pointer-events:none}.ant-form-item-feedback-icon-success{color:#52c41a}.ant-form-item-feedback-icon-error{color:#ff4d4f}.ant-form-item-feedback-icon-warning{color:#faad14}.ant-form-item-feedback-icon-validating{color:#1890ff}.ant-show-help{transition:height .3s linear,min-height .3s linear,margin-bottom .3s cubic-bezier(.645,.045,.355,1),opacity .3s cubic-bezier(.645,.045,.355,1)}.ant-show-help-leave{min-height:16px}.ant-show-help-leave-active{min-height:0}.ant-list-spin,.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add{min-height:40px}.ant-show-help-item{overflow:hidden;transition:height .3s cubic-bezier(.645,.045,.355,1),opacity .3s cubic-bezier(.645,.045,.355,1),transform .3s cubic-bezier(.645,.045,.355,1)!important}.ant-show-help-item-appear,.ant-show-help-item-enter{transform:translateY(-5px);opacity:0}.ant-show-help-item-appear-active,.ant-show-help-item-enter-active{transform:translateY(0);opacity:1}.ant-show-help-item-leave-active{transform:translateY(-5px)}@keyframes diffZoomIn1{0%{transform:scale(0);opacity:0}100%{transform:scale(1);opacity:1}}@keyframes diffZoomIn2{0%{transform:scale(0);opacity:0}100%{transform:scale(1);opacity:1}}@keyframes diffZoomIn3{0%{transform:scale(0);opacity:0}100%{transform:scale(1);opacity:1}}.ant-form-rtl .ant-form-item-label{text-align:left}.ant-form-rtl .ant-form-item-label>label.ant-form-item-required::before{margin-right:0;margin-left:4px}.ant-form-rtl .ant-form-item-label>label::after{margin:0 2px 0 8px}.ant-form-rtl .ant-form-item-label>label .ant-form-item-optional{margin-right:0;margin-left:0}.ant-col-rtl .ant-form-item-control:first-child{width:100%}.ant-form-rtl .ant-form-item-has-feedback .ant-input{padding-right:7px;padding-left:24px}.ant-form-rtl .ant-form-item-has-feedback .ant-input-affix-wrapper .ant-input-suffix{padding-right:7px;padding-left:18px}.ant-form-rtl .ant-form-item-has-feedback .ant-input-affix-wrapper .ant-input,.ant-form-rtl .ant-form-item-has-feedback .ant-input-number-affix-wrapper .ant-input-number{padding:0}.ant-form-rtl .ant-form-item-has-feedback .ant-input-search:not(.ant-input-search-enter-button) .ant-input-suffix{right:auto;left:28px}.ant-form-rtl .ant-form-item-has-feedback .ant-cascader-picker-clear,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-group-addon)>.ant-select .ant-select-arrow,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-group-addon)>.ant-select .ant-select-clear,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-number-group-addon)>.ant-select .ant-select-arrow,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-number-group-addon)>.ant-select .ant-select-clear,.ant-form-rtl .ant-form-item-has-feedback>.ant-select .ant-select-arrow,.ant-form-rtl .ant-form-item-has-feedback>.ant-select .ant-select-clear{left:32px;right:auto}.ant-form-rtl .ant-form-item-has-feedback .ant-input-number{padding-left:18px}.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-group-addon)>.ant-select .ant-select-selection-selected-value,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-number-group-addon)>.ant-select .ant-select-selection-selected-value,.ant-form-rtl .ant-form-item-has-feedback>.ant-select .ant-select-selection-selected-value{padding-right:0;padding-left:42px}.ant-form-rtl .ant-form-item-has-feedback .ant-cascader-picker-arrow{margin-right:0;margin-left:19px}.ant-form-rtl .ant-form-item-has-feedback .ant-picker{padding-right:7px;padding-left:22.6px}.ant-form-rtl .ant-form-item-has-feedback .ant-picker-large{padding-right:11px;padding-left:26.6px}.ant-form-rtl .ant-form-item-has-feedback .ant-picker-small{padding-right:7px;padding-left:22.6px}.ant-form-rtl .ant-form-item-has-feedback.ant-form-item-has-error .ant-form-item-children-icon,.ant-form-rtl .ant-form-item-has-feedback.ant-form-item-has-success .ant-form-item-children-icon,.ant-form-rtl .ant-form-item-has-feedback.ant-form-item-has-warning .ant-form-item-children-icon,.ant-form-rtl .ant-form-item-has-feedback.ant-form-item-is-validating .ant-form-item-children-icon{right:auto;left:0}.ant-form-rtl.ant-form-inline .ant-form-item{margin-right:0;margin-left:16px}nz-form-item.ant-form-item{transition:none}.ant-list{box-sizing:border-box;margin:0;padding:0;color:rgba(0,0,0,.85);font-size:12px;font-variant:tabular-nums;line-height:1.66667;list-style:none;font-feature-settings:tnum;position:relative}.ant-list *{outline:0}.ant-list-pagination{margin-top:16px;text-align:right}.ant-list-pagination .ant-pagination-options{text-align:left}.ant-list-more{margin-top:8px;text-align:center}.ant-list-more button{padding-right:32px;padding-left:32px}.ant-list-spin{text-align:center}.ant-list-empty-text{padding:8px;color:rgba(0,0,0,.25);font-size:12px;text-align:center}.ant-list-items{margin:0;padding:0;list-style:none}.ant-list-item{display:flex;align-items:center;justify-content:space-between;padding:8px 0;color:rgba(0,0,0,.85)}.ant-list-item-meta{display:flex;flex:1;align-items:flex-start;max-width:100%}.ant-list-item-meta-avatar{margin-right:8px}.ant-list-item-meta-content{flex:1 0;width:0;color:rgba(0,0,0,.85)}.ant-list-item-meta-title{margin-bottom:4px;color:rgba(0,0,0,.85);font-size:12px;line-height:1.66667}.ant-list-item-meta-title>a{color:rgba(0,0,0,.85);transition:all .3s}.ant-list-item-meta-title>a:hover{color:#1890ff}.ant-list-item-meta-description{color:rgba(0,0,0,.45);font-size:12px;line-height:1.66667}.ant-list-item-action{flex:0 0 auto;margin-left:48px;padding:0;font-size:0;list-style:none}.ant-list-item-action>li{position:relative;display:inline-block;padding:0 4px;color:rgba(0,0,0,.45);font-size:12px;line-height:1.66667;text-align:center}.ant-list-item-action>li:first-child{padding-left:0}.ant-list-item-action-split{position:absolute;top:50%;right:0;width:1px;height:14px;margin-top:-7px;background-color:#f0f0f0}.ant-list-footer,.ant-list-header{background:0 0;padding-top:8px;padding-bottom:8px}.ant-list-empty{padding:8px 0;color:rgba(0,0,0,.45);font-size:12px;text-align:center}.ant-list-split .ant-list-item{border-bottom:1px solid #f0f0f0}.ant-list-split .ant-list-item:last-child{border-bottom:none}.ant-list-split .ant-list-header,.ant-list-split.ant-list-something-after-last-item .ant-spin-container>.ant-list-items>.ant-list-item:last-child{border-bottom:1px solid #f0f0f0}.ant-list-split.ant-list-empty .ant-list-footer{border-top:1px solid #f0f0f0}.ant-list-loading .ant-list-spin-nested-loading{min-height:32px}.ant-list-lg .ant-list-item{padding:12px 16px}.ant-list-sm .ant-list-item{padding:4px 12px}.ant-list-vertical .ant-list-item{align-items:initial}.ant-list-vertical .ant-list-item-main{display:block;flex:1}.ant-list-vertical .ant-list-item-extra{margin-left:40px}.ant-list-vertical .ant-list-item-meta{margin-bottom:8px}.ant-list-vertical .ant-list-item-meta-title{margin-bottom:8px;color:rgba(0,0,0,.85);font-size:14px;line-height:24px}.ant-menu-dark .ant-menu-item-danger.ant-menu-item,.ant-menu-dark .ant-menu-item-danger.ant-menu-item:hover,.ant-menu-dark .ant-menu-item-danger.ant-menu-item>a,.ant-menu-item-danger.ant-menu-item,.ant-menu-item-danger.ant-menu-item-active,.ant-menu-item-danger.ant-menu-item-selected,.ant-menu-item-danger.ant-menu-item-selected>a,.ant-menu-item-danger.ant-menu-item-selected>a:hover,.ant-menu-item-danger.ant-menu-item:hover{color:#ff4d4f}.ant-list-vertical .ant-list-item-action{margin-top:8px;margin-left:auto}.ant-list-vertical .ant-list-item-action>li{padding:0 8px}.ant-list-vertical .ant-list-item-action>li:first-child{padding-left:0}.ant-list-grid .ant-col>.ant-list-item{display:block;max-width:100%;margin-bottom:8px;padding-top:0;padding-bottom:0;border-bottom:none}.ant-list-item-no-flex{display:block}.ant-list:not(.ant-list-vertical) .ant-list-item-no-flex .ant-list-item-action{float:right}.ant-list-bordered{border:1px solid #d9d9d9;border-radius:2px}.ant-list-bordered .ant-list-footer,.ant-list-bordered .ant-list-header,.ant-list-bordered .ant-list-item{padding-right:16px;padding-left:16px}.ant-list-bordered .ant-list-pagination{margin:8px 16px}.ant-list-bordered.ant-list-sm .ant-list-footer,.ant-list-bordered.ant-list-sm .ant-list-header,.ant-list-bordered.ant-list-sm .ant-list-item{padding:4px 12px}.ant-list-bordered.ant-list-lg .ant-list-footer,.ant-list-bordered.ant-list-lg .ant-list-header,.ant-list-bordered.ant-list-lg .ant-list-item{padding:12px 16px}.ant-list-rtl .ant-list-vertical .ant-list-item-action>li:first-child,.ant-list.ant-list-rtl .ant-list-item-action>li:first-child{padding-right:0;padding-left:8px}@media screen and (max-width:768px){.ant-list-item-action,.ant-list-vertical .ant-list-item-extra{margin-left:24px}}@media screen and (max-width:576px){.ant-list-item{flex-wrap:wrap}.ant-list-item-action{margin-left:12px}.ant-list-vertical .ant-list-item{flex-wrap:wrap-reverse}.ant-list-vertical .ant-list-item-main{min-width:220px}.ant-list-vertical .ant-list-item-extra{margin:auto auto 16px}}.ant-list-rtl{text-align:right}.ant-list-rtl .ant-list-pagination,.ant-menu{text-align:left}.ant-list-rtl .ant-list-item-meta-avatar{margin-right:0;margin-left:8px}.ant-list-rtl .ant-list-item-action{margin-right:48px;margin-left:0}.ant-list-rtl .ant-list-item-action-split{right:auto;left:0}.ant-list-rtl.ant-list-vertical .ant-list-item-extra{margin-right:40px;margin-left:0}.ant-list-rtl.ant-list-vertical .ant-list-item-action{margin-right:auto}.ant-list-rtl .ant-list:not(.ant-list-vertical) .ant-list-item-no-flex .ant-list-item-action{float:left}@media screen and (max-width:768px){.ant-list-rtl .ant-list-item-action,.ant-list-rtl .ant-list-vertical .ant-list-item-extra{margin-right:24px;margin-left:0}}@media screen and (max-width:576px){.ant-list-rtl .ant-list-item-action{margin-right:22px;margin-left:0}.ant-list-rtl.ant-list-vertical .ant-list-item-extra{margin:auto auto 16px}}nz-list,nz-list nz-spin,nz-list-empty,nz-list-footer,nz-list-header,nz-list-item-extra,nz-list-pagination{display:block}.ant-menu::after,.ant-menu::before{display:table;content:''}.ant-menu-item-danger.ant-menu-item:active{background:#fff1f0}.ant-menu:not(.ant-menu-horizontal) .ant-menu-item-danger.ant-menu-item-selected{background-color:#fff1f0}.ant-menu-inline .ant-menu-item-danger.ant-menu-item::after{border-right-color:#ff4d4f}.ant-menu-dark.ant-menu-dark:not(.ant-menu-horizontal) .ant-menu-item-danger.ant-menu-item-selected{color:#fff;background-color:#ff4d4f}.ant-menu{box-sizing:border-box;margin:0;padding:0;font-variant:tabular-nums;font-feature-settings:tnum;color:rgba(0,0,0,.85);font-size:12px;line-height:0;list-style:none;background:#fff;outline:0;transition:background .3s,width .3s cubic-bezier(.2,0,0,1) 0s}.ant-menu::after{clear:both}.ant-menu ol,.ant-menu ul{margin:0;padding:0;list-style:none}.ant-menu-overflow{display:flex}.ant-menu-hidden,.ant-menu-submenu-hidden,.ant-menu-submenu-horizontal .ant-menu-submenu-arrow{display:none}.ant-menu-overflow-item{flex:none}.ant-menu-item-group-title{height:1.66667;padding:8px 16px;color:rgba(0,0,0,.45);font-size:12px;line-height:1.66667;transition:all .3s}.ant-menu-horizontal .ant-menu-submenu{transition:border-color .3s cubic-bezier(.645,.045,.355,1),background .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-submenu,.ant-menu-submenu-inline{transition:border-color .3s cubic-bezier(.645,.045,.355,1),background .3s cubic-bezier(.645,.045,.355,1),padding .15s cubic-bezier(.645,.045,.355,1)}.ant-menu-submenu-selected{color:#1890ff}.ant-menu-horizontal>.ant-menu-item-active,.ant-menu-horizontal>.ant-menu-item:hover,.ant-menu-horizontal>.ant-menu-submenu .ant-menu-submenu-title:hover,.ant-menu-item a::before{background-color:transparent}.ant-menu-submenu .ant-menu-sub{cursor:initial;transition:background .3s cubic-bezier(.645,.045,.355,1),padding .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-title-content{transition:color .3s}.ant-menu-item a{color:rgba(0,0,0,.85)}.ant-menu-item a:hover{color:#1890ff}.ant-menu-item a::before{position:absolute;top:0;right:0;bottom:0;left:0;content:''}.ant-menu-item>.ant-badge a{color:rgba(0,0,0,.85)}.ant-menu-item-selected,.ant-menu-item-selected a,.ant-menu-item-selected a:hover,.ant-menu-item>.ant-badge a:hover{color:#1890ff}.ant-menu-item-divider{overflow:hidden;line-height:0;border-color:#f0f0f0;border-style:solid;border-width:1px 0 0}.ant-menu-item-divider-dashed{border-style:dashed}.ant-menu-horizontal .ant-menu-item,.ant-menu-horizontal .ant-menu-submenu{margin-top:-1px}.ant-menu:not(.ant-menu-horizontal) .ant-menu-item-selected{background-color:#e6f7ff}.ant-menu-inline,.ant-menu-vertical,.ant-menu-vertical-left{border-right:1px solid #f0f0f0}.ant-menu-vertical-right{border-left:1px solid #f0f0f0}.ant-menu-vertical-left.ant-menu-sub,.ant-menu-vertical-right.ant-menu-sub,.ant-menu-vertical.ant-menu-sub{min-width:160px;max-height:calc(100vh - 100px);padding:0;overflow:hidden;border-right:0}.ant-menu-vertical-left.ant-menu-sub:not([class*='-active']),.ant-menu-vertical-right.ant-menu-sub:not([class*='-active']),.ant-menu-vertical.ant-menu-sub:not([class*='-active']){overflow-x:hidden;overflow-y:auto}.ant-menu-vertical-left.ant-menu-sub .ant-menu-item,.ant-menu-vertical-right.ant-menu-sub .ant-menu-item,.ant-menu-vertical.ant-menu-sub .ant-menu-item{left:0;margin-left:0;border-right:0}.ant-menu-vertical-left.ant-menu-sub .ant-menu-item::after,.ant-menu-vertical-right.ant-menu-sub .ant-menu-item::after,.ant-menu-vertical.ant-menu-sub .ant-menu-item::after{border-right:0}.ant-menu-vertical-left.ant-menu-sub>.ant-menu-item,.ant-menu-vertical-left.ant-menu-sub>.ant-menu-submenu,.ant-menu-vertical-right.ant-menu-sub>.ant-menu-item,.ant-menu-vertical-right.ant-menu-sub>.ant-menu-submenu,.ant-menu-vertical.ant-menu-sub>.ant-menu-item,.ant-menu-vertical.ant-menu-sub>.ant-menu-submenu{transform-origin:0 0}.ant-menu-horizontal.ant-menu-sub{min-width:114px}.ant-menu-horizontal .ant-menu-item,.ant-menu-horizontal .ant-menu-submenu-title{transition:border-color .3s,background .3s}.ant-menu-item,.ant-menu-submenu-title{position:relative;display:block;margin:0;padding:0 12px;white-space:nowrap;cursor:pointer;transition:border-color .3s,background .3s,padding .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-item .ant-menu-item-icon,.ant-menu-item .anticon,.ant-menu-submenu-title .ant-menu-item-icon,.ant-menu-submenu-title .anticon{min-width:14px;font-size:12px;transition:font-size .15s cubic-bezier(.215,.61,.355,1),margin .3s cubic-bezier(.645,.045,.355,1),color .3s}.ant-menu-item .ant-menu-item-icon+span,.ant-menu-item .anticon+span,.ant-menu-submenu-title .ant-menu-item-icon+span,.ant-menu-submenu-title .anticon+span{margin-left:8px;opacity:1;transition:opacity .3s cubic-bezier(.645,.045,.355,1),margin .3s,color .3s}.ant-menu-submenu-arrow,.ant-menu-submenu-expand-icon,.ant-menu-submenu>.ant-menu-submenu-title::after{transition:transform .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-item .ant-menu-item-icon.svg,.ant-menu-submenu-title .ant-menu-item-icon.svg{vertical-align:-.125em}.ant-menu-item.ant-menu-item-only-child>.ant-menu-item-icon,.ant-menu-item.ant-menu-item-only-child>.anticon,.ant-menu-submenu-title.ant-menu-item-only-child>.ant-menu-item-icon,.ant-menu-submenu-title.ant-menu-item-only-child>.anticon{margin-right:0}.ant-menu-item:focus-visible,.ant-menu-submenu-title:focus-visible{box-shadow:0 0 0 2px #bae7ff}.ant-menu>.ant-menu-item-divider{margin:1px 0;padding:0}.ant-menu-submenu-popup{position:absolute;z-index:1050;background:0 0;border-radius:2px;box-shadow:none;transform-origin:0 0}.ant-menu-submenu-popup::before{position:absolute;top:-7px;right:0;bottom:0;left:0;z-index:-1;width:100%;height:100%;opacity:.0001;content:' '}.ant-menu-submenu-placement-rightTop::before{top:0;left:-7px}.ant-menu-submenu>.ant-menu{background-color:#fff;border-radius:2px}.ant-menu-submenu-popup>.ant-menu{background-color:#fff}.ant-menu-submenu-arrow,.ant-menu-submenu-expand-icon{position:absolute;top:50%;right:16px;width:10px;color:rgba(0,0,0,.85);transform:translateY(-50%)}.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-active,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-open,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-selected,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item:hover,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-active,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-open,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-selected,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu:hover,.ant-menu-submenu:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-submenu:hover>.ant-menu-submenu-title>.ant-menu-submenu-expand-icon,.ant-menu-vertical .ant-menu-submenu-selected,.ant-menu-vertical-left .ant-menu-submenu-selected,.ant-menu-vertical-right .ant-menu-submenu-selected{color:#1890ff}.ant-menu-submenu-arrow::after,.ant-menu-submenu-arrow::before{position:absolute;width:6px;height:1.5px;background-color:currentcolor;border-radius:2px;transition:background .3s cubic-bezier(.645,.045,.355,1),transform .3s cubic-bezier(.645,.045,.355,1),top .3s cubic-bezier(.645,.045,.355,1),color .3s cubic-bezier(.645,.045,.355,1);content:''}.ant-menu-submenu-arrow::before{transform:rotate(45deg) translateY(-2.5px)}.ant-menu-submenu-arrow::after{transform:rotate(-45deg) translateY(2.5px)}.ant-menu-inline-collapsed .ant-menu-submenu-arrow::before,.ant-menu-submenu-inline .ant-menu-submenu-arrow::before{transform:rotate(-45deg) translateX(2.5px)}.ant-menu-inline-collapsed .ant-menu-submenu-arrow::after,.ant-menu-submenu-inline .ant-menu-submenu-arrow::after{transform:rotate(45deg) translateX(-2.5px)}.ant-menu-submenu-open.ant-menu-submenu-inline>.ant-menu-submenu-title>.ant-menu-submenu-arrow{transform:translateY(-2px)}.ant-menu-submenu-open.ant-menu-submenu-inline>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after{transform:rotate(-45deg) translateX(-2.5px)}.ant-menu-submenu-open.ant-menu-submenu-inline>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before{transform:rotate(45deg) translateX(2.5px)}.ant-menu-horizontal{line-height:38px;border:0;border-bottom:1px solid #f0f0f0;box-shadow:none}.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu{margin-top:-1px;margin-bottom:0;padding:0 12px}.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-active::after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-open::after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-selected::after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item:hover::after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-active::after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-open::after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-selected::after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu:hover::after{border-bottom:2px solid #1890ff}.ant-menu-horizontal>.ant-menu-item,.ant-menu-horizontal>.ant-menu-submenu{position:relative;top:1px;display:inline-block;vertical-align:bottom}.ant-menu-horizontal>.ant-menu-item::after,.ant-menu-horizontal>.ant-menu-submenu::after{position:absolute;right:20px;bottom:0;left:20px;border-bottom:2px solid transparent;transition:border-color .3s cubic-bezier(.645,.045,.355,1);content:''}.ant-menu-horizontal>.ant-menu-submenu>.ant-menu-submenu-title{padding:0}.ant-menu-horizontal>.ant-menu-item a{color:rgba(0,0,0,.85)}.ant-menu-horizontal>.ant-menu-item a:hover,.ant-menu-horizontal>.ant-menu-item-selected a{color:#1890ff}.ant-menu-horizontal>.ant-menu-item a::before{bottom:-2px}.ant-menu-horizontal::after{display:block;clear:both;height:0;content:'\20'}.ant-menu-inline .ant-menu-item,.ant-menu-vertical .ant-menu-item,.ant-menu-vertical-left .ant-menu-item,.ant-menu-vertical-right .ant-menu-item{position:relative}.ant-menu-inline .ant-menu-item::after,.ant-menu-vertical .ant-menu-item::after,.ant-menu-vertical-left .ant-menu-item::after,.ant-menu-vertical-right .ant-menu-item::after{position:absolute;top:0;right:0;bottom:0;border-right:3px solid #1890ff;transform:scaleY(.0001);opacity:0;transition:transform .15s cubic-bezier(.215,.61,.355,1),opacity .15s cubic-bezier(.215,.61,.355,1);content:''}.ant-menu-inline .ant-menu-item,.ant-menu-inline .ant-menu-submenu-title,.ant-menu-vertical .ant-menu-item,.ant-menu-vertical .ant-menu-submenu-title,.ant-menu-vertical-left .ant-menu-item,.ant-menu-vertical-left .ant-menu-submenu-title,.ant-menu-vertical-right .ant-menu-item,.ant-menu-vertical-right .ant-menu-submenu-title{height:32px;margin-top:0;margin-bottom:0;padding:0 16px;overflow:hidden;line-height:32px;text-overflow:ellipsis}.ant-menu-inline .ant-menu-item-group-list .ant-menu-submenu-title,.ant-menu-inline .ant-menu-submenu-title,.ant-menu-vertical .ant-menu-item-group-list .ant-menu-submenu-title,.ant-menu-vertical .ant-menu-submenu-title{padding-right:34px}.ant-menu-inline .ant-menu-submenu,.ant-menu-vertical .ant-menu-submenu,.ant-menu-vertical-left .ant-menu-submenu,.ant-menu-vertical-right .ant-menu-submenu{padding-bottom:.02px}.ant-menu-inline .ant-menu-item:not(:last-child),.ant-menu-vertical .ant-menu-item:not(:last-child),.ant-menu-vertical-left .ant-menu-item:not(:last-child),.ant-menu-vertical-right .ant-menu-item:not(:last-child){margin-bottom:0}.ant-menu-inline>.ant-menu-item,.ant-menu-inline>.ant-menu-submenu>.ant-menu-submenu-title,.ant-menu-vertical-left>.ant-menu-item,.ant-menu-vertical-left>.ant-menu-submenu>.ant-menu-submenu-title,.ant-menu-vertical-right>.ant-menu-item,.ant-menu-vertical-right>.ant-menu-submenu>.ant-menu-submenu-title,.ant-menu-vertical>.ant-menu-item,.ant-menu-vertical>.ant-menu-submenu>.ant-menu-submenu-title{height:32px;line-height:32px}.ant-menu-inline{width:100%}.ant-menu-inline .ant-menu-item-selected::after,.ant-menu-inline .ant-menu-selected::after{transform:scaleY(1);opacity:1;transition:transform .15s cubic-bezier(.645,.045,.355,1),opacity .15s cubic-bezier(.645,.045,.355,1)}.ant-menu-inline .ant-menu-item,.ant-menu-inline .ant-menu-submenu-title{width:calc(100% + 1px)}.ant-menu-inline.ant-menu-root .ant-menu-item,.ant-menu-inline.ant-menu-root .ant-menu-submenu-title{display:flex;align-items:center;transition:border-color .3s,background .3s,padding .1s cubic-bezier(.215,.61,.355,1)}.ant-menu-inline.ant-menu-root .ant-menu-item>.ant-menu-title-content,.ant-menu-inline.ant-menu-root .ant-menu-submenu-title>.ant-menu-title-content{flex:auto;min-width:0;overflow:hidden;text-overflow:ellipsis}.ant-menu-inline.ant-menu-root .ant-menu-item>*,.ant-menu-inline.ant-menu-root .ant-menu-submenu-title>*{flex:none}.ant-menu.ant-menu-inline-collapsed{width:80px}.ant-menu.ant-menu-inline-collapsed>.ant-menu-item,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title{left:0;padding:0 calc(50% - 14px / 2);text-overflow:clip}.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .ant-menu-submenu-arrow,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .ant-menu-submenu-arrow,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-submenu-arrow{opacity:0}.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .anticon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .anticon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .anticon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .anticon{margin:0;font-size:14px;line-height:32px}.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .ant-menu-item-icon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .anticon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .ant-menu-item-icon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .anticon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-item-icon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .anticon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-item-icon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .anticon+span{display:inline-block;opacity:0}.ant-menu.ant-menu-inline-collapsed .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed .anticon{display:inline-block}.ant-menu.ant-menu-inline-collapsed-tooltip{pointer-events:none}.ant-menu.ant-menu-inline-collapsed-tooltip .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed-tooltip .anticon{display:none}.ant-menu.ant-menu-inline-collapsed-tooltip a{color:rgba(255,255,255,.85)}.ant-menu.ant-menu-inline-collapsed .ant-menu-item-group-title{padding-right:4px;padding-left:4px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-menu-item-group-list{margin:0;padding:0}.ant-menu-item-group-list .ant-menu-item,.ant-menu-item-group-list .ant-menu-submenu-title{padding:0 16px 0 28px}.ant-menu-root.ant-menu-inline,.ant-menu-root.ant-menu-vertical,.ant-menu-root.ant-menu-vertical-left,.ant-menu-root.ant-menu-vertical-right{box-shadow:none}.ant-menu-root.ant-menu-inline-collapsed .ant-menu-item>.ant-menu-inline-collapsed-noicon,.ant-menu-root.ant-menu-inline-collapsed .ant-menu-submenu .ant-menu-submenu-title>.ant-menu-inline-collapsed-noicon{font-size:14px;text-align:center}.ant-menu-rtl .ant-menu-item-group-title,.ant-menu-rtl.ant-menu-inline .ant-menu-item,.ant-menu-rtl.ant-menu-inline .ant-menu-submenu-title,.ant-menu-rtl.ant-menu-vertical .ant-menu-item,.ant-menu-rtl.ant-menu-vertical .ant-menu-submenu-title,.ant-menu-rtl.ant-menu-vertical-left .ant-menu-item,.ant-menu-rtl.ant-menu-vertical-left .ant-menu-submenu-title,.ant-menu-rtl.ant-menu-vertical-right .ant-menu-item,.ant-menu-rtl.ant-menu-vertical-right .ant-menu-submenu-title,.ant-menu.ant-menu-rtl{text-align:right}.ant-menu-sub.ant-menu-inline{padding:0;background:#fafafa;border-radius:0;box-shadow:none}.ant-menu-sub.ant-menu-inline>.ant-menu-item,.ant-menu-sub.ant-menu-inline>.ant-menu-submenu>.ant-menu-submenu-title{height:32px;line-height:32px;list-style-position:inside;list-style-type:disc}.ant-menu-sub.ant-menu-inline .ant-menu-item-group-title{padding-left:32px}.ant-menu-item-disabled,.ant-menu-submenu-disabled{color:rgba(0,0,0,.25)!important;background:0 0;cursor:not-allowed}.ant-menu-item-disabled::after,.ant-menu-submenu-disabled::after{border-color:transparent!important}.ant-menu-item-disabled a,.ant-menu-submenu-disabled a{color:rgba(0,0,0,.25)!important;pointer-events:none}.ant-menu-item-disabled>.ant-menu-submenu-title,.ant-menu-submenu-disabled>.ant-menu-submenu-title{color:rgba(0,0,0,.25)!important;cursor:not-allowed}.ant-menu-item-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-item-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-submenu-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-submenu-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before{background:rgba(0,0,0,.25)!important}.ant-layout-header .ant-menu{line-height:inherit}.ant-mentions,textarea.ant-mentions{line-height:1.66667;vertical-align:bottom}.ant-menu-inline-collapsed-tooltip a,.ant-menu-inline-collapsed-tooltip a:hover{color:#fff}.ant-menu-light .ant-menu-item-active,.ant-menu-light .ant-menu-item:hover,.ant-menu-light .ant-menu-submenu-active,.ant-menu-light .ant-menu-submenu-title:hover,.ant-menu-light .ant-menu:not(.ant-menu-inline) .ant-menu-submenu-open{color:#1890ff}.ant-menu-dark .ant-menu-item:focus-visible,.ant-menu-dark .ant-menu-submenu-title:focus-visible,.ant-menu.ant-menu-root:focus-visible{box-shadow:0 0 0 2px #096dd9}.ant-menu-dark .ant-menu-sub,.ant-menu.ant-menu-dark,.ant-menu.ant-menu-dark .ant-menu-sub{color:rgba(255,255,255,.65);background:#001529}.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu.ant-menu-dark .ant-menu-submenu-title .ant-menu-submenu-arrow{opacity:.45;transition:all .3s}.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow::before,.ant-menu.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow::before,.ant-menu.ant-menu-dark .ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu.ant-menu-dark .ant-menu-submenu-title .ant-menu-submenu-arrow::before{background:#fff}.ant-menu-dark.ant-menu-submenu-popup{background:0 0}.ant-menu-dark .ant-menu-inline.ant-menu-sub{background:#000c17}.ant-menu-dark.ant-menu-horizontal{border-bottom:0}.ant-menu-dark.ant-menu-horizontal>.ant-menu-item,.ant-menu-dark.ant-menu-horizontal>.ant-menu-submenu{top:0;margin-top:0;padding:0 12px;border-color:#001529;border-bottom:0}.ant-menu-dark.ant-menu-horizontal>.ant-menu-item:hover{background-color:#1890ff}.ant-menu-dark.ant-menu-horizontal>.ant-menu-item>a::before{bottom:0}.ant-menu-dark .ant-menu-item,.ant-menu-dark .ant-menu-item-group-title,.ant-menu-dark .ant-menu-item>a,.ant-menu-dark .ant-menu-item>span>a{color:rgba(255,255,255,.65)}.ant-menu-dark.ant-menu-inline,.ant-menu-dark.ant-menu-vertical,.ant-menu-dark.ant-menu-vertical-left,.ant-menu-dark.ant-menu-vertical-right{border-right:0}.ant-menu-dark.ant-menu-inline .ant-menu-item,.ant-menu-dark.ant-menu-vertical .ant-menu-item,.ant-menu-dark.ant-menu-vertical-left .ant-menu-item,.ant-menu-dark.ant-menu-vertical-right .ant-menu-item{left:0;margin-left:0;border-right:0}.ant-menu-dark.ant-menu-inline .ant-menu-item::after,.ant-menu-dark.ant-menu-vertical .ant-menu-item::after,.ant-menu-dark.ant-menu-vertical-left .ant-menu-item::after,.ant-menu-dark.ant-menu-vertical-right .ant-menu-item::after{border-right:0}.ant-menu-dark.ant-menu-inline .ant-menu-item,.ant-menu-dark.ant-menu-inline .ant-menu-submenu-title{width:100%}.ant-menu-dark .ant-menu-item-active,.ant-menu-dark .ant-menu-item:hover,.ant-menu-dark .ant-menu-submenu-active,.ant-menu-dark .ant-menu-submenu-open,.ant-menu-dark .ant-menu-submenu-selected,.ant-menu-dark .ant-menu-submenu-title:hover{color:#fff;background-color:transparent}.ant-menu-dark .ant-menu-item-active>a,.ant-menu-dark .ant-menu-item-active>span>a,.ant-menu-dark .ant-menu-item:hover>a,.ant-menu-dark .ant-menu-item:hover>span>a,.ant-menu-dark .ant-menu-submenu-active>a,.ant-menu-dark .ant-menu-submenu-active>span>a,.ant-menu-dark .ant-menu-submenu-open>a,.ant-menu-dark .ant-menu-submenu-open>span>a,.ant-menu-dark .ant-menu-submenu-selected>a,.ant-menu-dark .ant-menu-submenu-selected>span>a,.ant-menu-dark .ant-menu-submenu-title:hover>a,.ant-menu-dark .ant-menu-submenu-title:hover>span>a{color:#fff}.ant-menu-dark .ant-menu-item-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-item:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-open>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-selected>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-title:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow{opacity:1}.ant-menu-dark .ant-menu-item-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-item-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-item:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-item:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-submenu-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-submenu-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-submenu-open>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-submenu-open>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-submenu-selected>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-submenu-selected>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-submenu-title:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-submenu-title:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before{background:#fff}.ant-menu-dark .ant-menu-item:hover{background-color:transparent}.ant-menu-dark.ant-menu-dark:not(.ant-menu-horizontal) .ant-menu-item-selected,.ant-menu-submenu-popup.ant-menu-dark .ant-menu-item-selected,.ant-menu.ant-menu-dark .ant-menu-item-selected{background-color:#1890ff}.ant-menu-dark .ant-menu-item-selected{color:#fff;border-right:0}.ant-menu-dark .ant-menu-item-selected::after{border-right:0}.ant-menu-dark .ant-menu-item-selected .ant-menu-item-icon,.ant-menu-dark .ant-menu-item-selected .ant-menu-item-icon+span,.ant-menu-dark .ant-menu-item-selected .anticon,.ant-menu-dark .ant-menu-item-selected .anticon+span,.ant-menu-dark .ant-menu-item-selected>a,.ant-menu-dark .ant-menu-item-selected>a:hover,.ant-menu-dark .ant-menu-item-selected>span>a,.ant-menu-dark .ant-menu-item-selected>span>a:hover{color:#fff}.ant-menu-dark .ant-menu-item-disabled,.ant-menu-dark .ant-menu-item-disabled>a,.ant-menu-dark .ant-menu-item-disabled>span>a,.ant-menu-dark .ant-menu-submenu-disabled,.ant-menu-dark .ant-menu-submenu-disabled>a,.ant-menu-dark .ant-menu-submenu-disabled>span>a{color:rgba(255,255,255,.35)!important;opacity:.8}.ant-menu-dark .ant-menu-item-disabled>.ant-menu-submenu-title,.ant-menu-dark .ant-menu-submenu-disabled>.ant-menu-submenu-title{color:rgba(255,255,255,.35)!important}.ant-menu-dark .ant-menu-item-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-item-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-submenu-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-submenu-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before{background:rgba(255,255,255,.35)!important}.ant-menu-rtl.ant-menu-inline,.ant-menu-rtl.ant-menu-vertical{border-right:none;border-left:1px solid #f0f0f0}.ant-menu-rtl.ant-menu-dark.ant-menu-inline,.ant-menu-rtl.ant-menu-dark.ant-menu-vertical{border-left:none}.ant-menu-rtl.ant-menu-vertical-left.ant-menu-sub>.ant-menu-item,.ant-menu-rtl.ant-menu-vertical-left.ant-menu-sub>.ant-menu-submenu,.ant-menu-rtl.ant-menu-vertical-right.ant-menu-sub>.ant-menu-item,.ant-menu-rtl.ant-menu-vertical-right.ant-menu-sub>.ant-menu-submenu,.ant-menu-rtl.ant-menu-vertical.ant-menu-sub>.ant-menu-item,.ant-menu-rtl.ant-menu-vertical.ant-menu-sub>.ant-menu-submenu{transform-origin:top right}.ant-menu-rtl .ant-menu-item .ant-menu-item-icon,.ant-menu-rtl .ant-menu-item .anticon,.ant-menu-rtl .ant-menu-submenu-title .ant-menu-item-icon,.ant-menu-rtl .ant-menu-submenu-title .anticon{margin-right:auto;margin-left:8px}.ant-menu-rtl .ant-menu-item.ant-menu-item-only-child>.ant-menu-item-icon,.ant-menu-rtl .ant-menu-item.ant-menu-item-only-child>.anticon,.ant-menu-rtl .ant-menu-submenu-title.ant-menu-item-only-child>.ant-menu-item-icon,.ant-menu-rtl .ant-menu-submenu-title.ant-menu-item-only-child>.anticon{margin-left:0}.ant-menu-submenu-rtl.ant-menu-submenu-popup{transform-origin:100% 0}.ant-menu-rtl .ant-menu-submenu-inline>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu-rtl .ant-menu-submenu-vertical-left>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu-rtl .ant-menu-submenu-vertical-right>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu-rtl .ant-menu-submenu-vertical>.ant-menu-submenu-title .ant-menu-submenu-arrow{right:auto;left:16px}.ant-menu-rtl .ant-menu-submenu-vertical-left>.ant-menu-submenu-title .ant-menu-submenu-arrow::before,.ant-menu-rtl .ant-menu-submenu-vertical-right>.ant-menu-submenu-title .ant-menu-submenu-arrow::before,.ant-menu-rtl .ant-menu-submenu-vertical>.ant-menu-submenu-title .ant-menu-submenu-arrow::before{transform:rotate(-45deg) translateY(-2px)}.ant-menu-rtl .ant-menu-submenu-vertical-left>.ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu-rtl .ant-menu-submenu-vertical-right>.ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu-rtl .ant-menu-submenu-vertical>.ant-menu-submenu-title .ant-menu-submenu-arrow::after{transform:rotate(45deg) translateY(2px)}.ant-menu-rtl.ant-menu-inline .ant-menu-item::after,.ant-menu-rtl.ant-menu-vertical .ant-menu-item::after,.ant-menu-rtl.ant-menu-vertical-left .ant-menu-item::after,.ant-menu-rtl.ant-menu-vertical-right .ant-menu-item::after{right:auto;left:0}.ant-menu-rtl.ant-menu-inline .ant-menu-submenu-title{padding-right:0;padding-left:34px}.ant-menu-rtl.ant-menu-vertical .ant-menu-submenu-title{padding-right:16px;padding-left:34px}.ant-menu-rtl.ant-menu-inline-collapsed.ant-menu-vertical .ant-menu-submenu-title{padding:0 calc(50% - 14px / 2)}.ant-menu-rtl .ant-menu-item-group-list .ant-menu-item,.ant-menu-rtl .ant-menu-item-group-list .ant-menu-submenu-title{padding:0 28px 0 16px}.ant-menu-sub.ant-menu-inline{border:0}.ant-menu-rtl.ant-menu-sub.ant-menu-inline .ant-menu-item-group-title{padding-right:32px;padding-left:0}.ant-menu-submenu.ant-menu-submenu-placement-bottom{top:6px;position:relative}.ant-menu-submenu.ant-menu-submenu-placement-right{left:4px;position:relative}.ant-menu-submenu.ant-menu-submenu-placement-right.ant-menu-submenu-rtl{left:auto;right:4px}.ant-menu-submenu.ant-menu-submenu-placement-left{right:4px;position:relative}.ant-menu-submenu.ant-menu-submenu-placement-left.ant-menu-submenu-rtl{right:auto;left:4px}.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions,.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:hover{background:#fff;border-color:#ff4d4f}.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions-focused,.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:focus{border-color:#ff7875;box-shadow:0 0 0 2px rgba(255,77,79,.2);border-right-width:1px;outline:0}.ant-mentions-status-error .ant-input-prefix{color:#ff4d4f}.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions,.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:hover{background:#fff;border-color:#faad14}.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions-focused,.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:focus{border-color:#ffc53d;box-shadow:0 0 0 2px rgba(250,173,20,.2);border-right-width:1px;outline:0}.ant-mentions-status-warning .ant-input-prefix{color:#faad14}.ant-mentions{box-sizing:border-box;margin:0;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;width:100%;min-width:0;color:rgba(0,0,0,.85);font-size:12px;background-color:#fff;background-image:none;border:1px solid #d9d9d9;border-radius:2px;transition:all .3s;position:relative;display:inline-block;height:auto;padding:0;overflow:hidden;white-space:pre-wrap}.ant-mentions::-moz-placeholder{opacity:1}.ant-mentions::placeholder{color:#bfbfbf;user-select:none}.ant-mentions-disabled,.ant-mentions-disabled>textarea,.ant-mentions[disabled]{color:rgba(0,0,0,.25);opacity:1;pointer-events:none}.ant-mentions:placeholder-shown{text-overflow:ellipsis}.ant-mentions:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-mentions:hover{border-right-width:0;border-left-width:1px!important}.ant-mentions-focused,.ant-mentions:focus{border-color:#40a9ff;box-shadow:0 0 0 2px rgba(24,144,255,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-mentions-focused,.ant-input-rtl .ant-mentions:focus{border-right-width:0;border-left-width:1px!important}.ant-mentions-disabled:hover,.ant-mentions[disabled]:hover{border-color:#d9d9d9;border-right-width:1px}.ant-mentions-disabled{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed}.ant-mentions[disabled]{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed}.ant-mentions-borderless,.ant-mentions-borderless-disabled,.ant-mentions-borderless-focused,.ant-mentions-borderless:focus,.ant-mentions-borderless:hover,.ant-mentions-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-mentions{max-width:100%;height:auto;min-height:28px;transition:all .3s,height 0s}.ant-mentions-lg{padding:3.4px 11px;font-size:14px}.ant-mentions-sm{padding:0 7px}.ant-mentions-stepperless[type=number]{-moz-appearance:textfield}.ant-mentions-stepperless[type=number] ::-webkit-outer-spin-button,.ant-mentions-stepperless[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ant-mentions-disabled>textarea{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed}.ant-mentions-disabled>textarea:hover{border-color:#d9d9d9;border-right-width:1px}.ant-mentions-focused,.ant-mentions:focus-within{border-color:#40a9ff;box-shadow:0 0 0 2px rgba(24,144,255,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-mentions-focused{border-right-width:0;border-left-width:1px!important}.ant-mentions-measure,.ant-mentions>textarea{min-height:26px;margin:0;padding:3px 7px;overflow:inherit;overflow-x:hidden;overflow-y:auto;font-weight:inherit;font-size:inherit;font-family:inherit;font-style:inherit;font-variant:inherit;font-size-adjust:inherit;font-stretch:inherit;line-height:inherit;direction:inherit;letter-spacing:inherit;white-space:inherit;text-align:inherit;vertical-align:top;word-wrap:break-word;word-break:inherit;tab-size:inherit}.ant-mentions-dropdown,.ant-message{margin:0;font-size:12px;list-style:none;font-feature-settings:tnum;box-sizing:border-box}.ant-mentions-rtl,.ant-message-rtl,.ant-message-rtl span,.ant-modal-wrap-rtl,.ant-modal-wrap-rtl .ant-modal-confirm-body,.ant-notification-rtl,.ant-page-header-rtl,.ant-pagination-options-quick-jumper input-rtl,.ant-popover-rtl,.ant-progress-rtl,.ant-radio-group.ant-radio-group-rtl,.ant-radio-wrapper.ant-radio-wrapper-rtl,.ant-rate-rtl,.ant-segmented.ant-segmented-rtl,.ant-select-dropdown-rtl,.ant-select-rtl,.ant-skeleton-rtl,.ant-slider-rtl,.ant-spin-rtl{direction:rtl}.ant-mentions>textarea{width:100%;border:none;outline:0;resize:none}.ant-mentions>textarea::-moz-placeholder{opacity:1}.ant-mentions>textarea::placeholder{color:#bfbfbf;user-select:none}.ant-mentions>textarea:placeholder-shown{text-overflow:ellipsis}.ant-mentions-measure{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;color:transparent;pointer-events:none}.ant-mentions-measure>span{display:inline-block;min-height:1em}.ant-mentions-dropdown{padding:0;color:rgba(0,0,0,.85);line-height:1.66667;z-index:1050;font-variant:initial;background-color:#fff;border-radius:2px;outline:0}.ant-mentions-dropdown-hidden{display:none}.ant-mentions-dropdown-menu{max-height:250px;margin-bottom:0;padding-left:0;overflow:auto;list-style:none;outline:0}.ant-mentions-dropdown-menu-item{position:relative;display:block;min-width:100px;padding:5px 8px;overflow:hidden;color:rgba(0,0,0,.85);font-weight:400;line-height:1.66667;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:background .3s ease}.ant-mentions-dropdown-menu-item:hover{background-color:#f5f5f5}.ant-mentions-dropdown-menu-item:first-child{border-radius:2px 2px 0 0}.ant-mentions-dropdown-menu-item:last-child{border-radius:0 0 2px 2px}.ant-mentions-dropdown-menu-item-disabled{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-mentions-dropdown-menu-item-disabled:hover{color:rgba(0,0,0,.25);background-color:#fff;cursor:not-allowed}.ant-mentions-dropdown-menu-item-selected{color:rgba(0,0,0,.85);font-weight:600;background-color:#fafafa}.ant-mentions-dropdown-menu-item-active{background-color:#f5f5f5}.ant-mentions-suffix{position:absolute;top:0;right:7px;bottom:0;z-index:1;display:inline-flex;align-items:center;margin:auto}.ant-mentions-dropdown{top:100%;left:12px;position:relative;width:100%;margin-top:8px;margin-bottom:4px}.ant-input-rtl .ant-mentions:focus-within{border-right-width:0;border-left-width:1px!important}.ant-mentions.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:focus-within{border-color:#ff7875;box-shadow:0 0 0 2px rgba(255,77,79,.2);border-right-width:1px;outline:0}.ant-mentions.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:focus-within{border-color:#ffc53d;box-shadow:0 0 0 2px rgba(250,173,20,.2);border-right-width:1px;outline:0}.ant-message-notice-content,.ant-modal-content,.ant-notification-notice{box-shadow:0 3px 6px -4px rgba(0,0,0,.12),0 6px 16px 0 rgba(0,0,0,.08),0 9px 28px 8px rgba(0,0,0,.05)}.ant-message{padding:0;color:rgba(0,0,0,.85);font-variant:tabular-nums;line-height:1.66667;position:fixed;top:8px;left:0;z-index:1010;width:100%;pointer-events:none}.ant-message-notice{padding:8px;text-align:center}.ant-message-notice-content{display:inline-block;padding:8px 16px;background:#fff;border-radius:2px;pointer-events:all}.ant-message-success .anticon{color:#52c41a}.ant-message-error .anticon{color:#ff4d4f}.ant-message-warning .anticon{color:#faad14}.ant-message-info .anticon,.ant-message-loading .anticon{color:#1890ff}.ant-message .anticon{position:relative;top:1px;margin-right:8px;font-size:14px}.ant-message-notice.ant-move-up-leave.ant-move-up-leave-active{animation-name:MessageMoveOut;animation-duration:.3s}@keyframes MessageMoveOut{0%{max-height:150px;padding:8px;opacity:1}100%{max-height:0;padding:0;opacity:0}}.ant-message-rtl .anticon{margin-right:0;margin-left:8px}.ant-modal{box-sizing:border-box;padding:0 0 24px;color:rgba(0,0,0,.85);font-size:12px;font-variant:tabular-nums;line-height:1.66667;list-style:none;font-feature-settings:tnum;pointer-events:none;position:relative;top:100px;width:auto;max-width:calc(100vw - 32px);margin:0 auto}.ant-modal.ant-zoom-appear,.ant-modal.ant-zoom-enter{transform:none;opacity:0;animation-duration:.3s;user-select:none}.ant-modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;height:100%;background-color:rgba(0,0,0,.45)}.ant-modal-mask-hidden{display:none}.ant-modal-wrap{position:fixed;top:0;right:0;bottom:0;left:0;overflow:auto;outline:0;-webkit-overflow-scrolling:touch;z-index:1000}.ant-modal-title{margin:0;color:rgba(0,0,0,.85);font-weight:500;font-size:14px;line-height:22px;word-wrap:break-word}.ant-modal-content{position:relative;background-color:#fff;background-clip:padding-box;border:0;border-radius:2px;pointer-events:auto}.ant-modal-close{position:absolute;top:0;right:0;z-index:10;padding:0;color:rgba(0,0,0,.45);font-weight:700;line-height:1;text-decoration:none;background:0 0;border:0;outline:0;cursor:pointer;transition:color .3s}.ant-modal-footer,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table{border-top:1px solid #f0f0f0}.ant-modal-close-x{display:block;width:44px;height:44px;font-size:14px;font-style:normal;line-height:44px;text-align:center;text-transform:none;text-rendering:auto}.ant-modal-close:focus,.ant-modal-close:hover{color:rgba(0,0,0,.75);text-decoration:none}.ant-modal-header{padding:11px 16px;color:rgba(0,0,0,.85);background:#fff;border-bottom:1px solid #f0f0f0;border-radius:2px 2px 0 0}.ant-modal-body{padding:16px;font-size:12px;line-height:1.66667;word-wrap:break-word}.ant-modal-footer{padding:8px 16px;text-align:right;background:0 0;border-radius:0 0 2px 2px}.ant-modal-footer .ant-btn+.ant-btn:not(.ant-dropdown-trigger){margin-bottom:0;margin-left:8px}.ant-modal-open{overflow:hidden}.ant-modal-centered{text-align:center}.ant-modal-centered::before{display:inline-block;width:0;height:100%;vertical-align:middle;content:''}.ant-modal-centered .ant-modal{top:0;display:inline-block;padding-bottom:0;text-align:left;vertical-align:middle}@media (max-width:767px){.ant-modal{max-width:calc(100vw - 16px);margin:8px auto}.ant-modal-centered .ant-modal{flex:1}}.ant-modal-confirm .ant-modal-header{display:none}.ant-modal-confirm-body-wrapper::after,.ant-modal-confirm-body-wrapper::before{display:table;content:''}.ant-modal-confirm .ant-modal-body{padding:24px 24px 16px}.ant-modal-confirm-body-wrapper::after{clear:both}.ant-modal-confirm-body .ant-modal-confirm-title{display:block;overflow:hidden;color:rgba(0,0,0,.85);font-weight:500;font-size:14px;line-height:1.4}.ant-modal-confirm-body .ant-modal-confirm-content{margin-top:8px;color:rgba(0,0,0,.85);font-size:12px}.ant-modal-confirm-body>.anticon{float:left;margin-right:16px;font-size:22px}.ant-modal-confirm-body>.anticon+.ant-modal-confirm-title+.ant-modal-confirm-content{margin-left:38px}.ant-modal-confirm .ant-modal-confirm-btns{float:right;margin-top:24px}.ant-modal-confirm .ant-modal-confirm-btns .ant-btn+.ant-btn{margin-bottom:0;margin-left:8px}.ant-modal-confirm-error .ant-modal-confirm-body>.anticon{color:#ff4d4f}.ant-modal-confirm-confirm .ant-modal-confirm-body>.anticon,.ant-modal-confirm-warning .ant-modal-confirm-body>.anticon{color:#faad14}.ant-modal-confirm-info .ant-modal-confirm-body>.anticon{color:#1890ff}.ant-modal-confirm-success .ant-modal-confirm-body>.anticon{color:#52c41a}.ant-modal-wrap-rtl .ant-modal-close{right:initial;left:0}.ant-modal-wrap-rtl .ant-modal-footer{text-align:left}.ant-modal-wrap-rtl .ant-modal-footer .ant-btn+.ant-btn{margin-right:8px;margin-left:0}.ant-modal-wrap-rtl .ant-modal-confirm-body>.anticon{float:right;margin-right:0;margin-left:16px}.ant-modal-wrap-rtl .ant-modal-confirm-body>.anticon+.ant-modal-confirm-title+.ant-modal-confirm-content{margin-right:38px;margin-left:0}.ant-modal-wrap-rtl .ant-modal-confirm-btns{float:left}.ant-modal-wrap-rtl .ant-modal-confirm-btns .ant-btn+.ant-btn{margin-right:8px;margin-left:0}.ant-modal-wrap-rtl.ant-modal-centered .ant-modal{text-align:right}.ant-notification{box-sizing:border-box;margin:0 24px 0 0;padding:0;color:rgba(0,0,0,.85);font-size:12px;font-variant:tabular-nums;line-height:1.66667;list-style:none;font-feature-settings:tnum;position:fixed;z-index:1010}.ant-notification-close-icon{font-size:12px;cursor:pointer}.ant-notification-hook-holder{position:relative}.ant-notification-notice{position:relative;width:384px;max-width:calc(100vw - 24px * 2);margin-bottom:16px;margin-left:auto;padding:12px 16px;overflow:hidden;line-height:1.66667;word-wrap:break-word;background:#fff;border-radius:2px}.ant-notification-bottom .ant-notification-notice,.ant-notification-top .ant-notification-notice{margin-right:auto;margin-left:auto}.ant-notification-bottomLeft .ant-notification-notice,.ant-notification-topLeft .ant-notification-notice{margin-right:auto;margin-left:0}.ant-notification-notice-message{margin-bottom:8px;color:rgba(0,0,0,.85);font-size:14px;line-height:24px}.ant-notification-notice-message-single-line-auto-margin{display:block;width:calc(384px - 16px * 2 - 24px - 48px - 100%);max-width:4px;background-color:transparent;pointer-events:none}.ant-notification-notice-message-single-line-auto-margin::before{display:block;content:''}.ant-notification-notice-description{font-size:12px}.ant-notification-notice-closable .ant-notification-notice-message{padding-right:24px}.ant-notification-notice-with-icon .ant-notification-notice-message{margin-bottom:4px;margin-left:48px;font-size:14px}.ant-notification-notice-with-icon .ant-notification-notice-description{margin-left:48px;font-size:12px}.ant-notification-notice-icon{position:absolute;margin-left:4px;font-size:24px;line-height:24px}.anticon.ant-notification-notice-icon-success{color:#52c41a}.anticon.ant-notification-notice-icon-info{color:#1890ff}.anticon.ant-notification-notice-icon-warning{color:#faad14}.anticon.ant-notification-notice-icon-error{color:#ff4d4f}.ant-notification-notice-close{position:absolute;top:16px;right:22px;color:rgba(0,0,0,.45);outline:0}.ant-page-header,.ant-pagination-jump-next .ant-pagination-item-container,.ant-pagination-jump-prev .ant-pagination-item-container{position:relative}.ant-notification-notice-close:hover{color:rgba(0,0,0,.67)}.ant-notification-notice-btn{float:right;margin-top:16px}.ant-notification .notification-fade-effect{animation-duration:.24s;animation-timing-function:cubic-bezier(.645,.045,.355,1);animation-fill-mode:both}.ant-notification-fade-appear,.ant-notification-fade-enter{animation-duration:.24s;animation-timing-function:cubic-bezier(.645,.045,.355,1);animation-fill-mode:both;opacity:0;animation-play-state:paused}.ant-notification-fade-leave{animation-timing-function:cubic-bezier(.645,.045,.355,1);animation-fill-mode:both;animation-duration:.2s;animation-play-state:paused}.ant-notification-fade-appear.ant-notification-fade-appear-active,.ant-notification-fade-enter.ant-notification-fade-enter-active{animation-name:NotificationFadeIn;animation-play-state:running}.ant-notification-fade-leave.ant-notification-fade-leave-active{animation-name:NotificationFadeOut;animation-play-state:running}@keyframes NotificationFadeIn{0%{left:384px;opacity:0}100%{left:0;opacity:1}}@keyframes NotificationFadeOut{0%{max-height:150px;margin-bottom:16px;opacity:1}100%{max-height:0;margin-bottom:0;padding-top:0;padding-bottom:0;opacity:0}}.ant-notification-rtl .ant-notification-notice-closable .ant-notification-notice-message{padding-right:0;padding-left:24px}.ant-notification-rtl .ant-notification-notice-with-icon .ant-notification-notice-description,.ant-notification-rtl .ant-notification-notice-with-icon .ant-notification-notice-message{margin-right:48px;margin-left:0}.ant-notification-rtl .ant-notification-notice-icon{margin-right:4px;margin-left:0}.ant-notification-rtl .ant-notification-notice-close{right:auto;left:22px}.ant-notification-rtl .ant-notification-notice-btn{float:left}.ant-notification-bottom,.ant-notification-top{margin-right:0;margin-left:0}.ant-notification-top .ant-notification-fade-appear.ant-notification-fade-appear-active,.ant-notification-top .ant-notification-fade-enter.ant-notification-fade-enter-active{animation-name:NotificationTopFadeIn}.ant-notification-bottom .ant-notification-fade-appear.ant-notification-fade-appear-active,.ant-notification-bottom .ant-notification-fade-enter.ant-notification-fade-enter-active{animation-name:NotificationBottomFadeIn}.ant-notification-bottomLeft,.ant-notification-topLeft{margin-right:0;margin-left:24px}.ant-notification-bottomLeft .ant-notification-fade-appear.ant-notification-fade-appear-active,.ant-notification-bottomLeft .ant-notification-fade-enter.ant-notification-fade-enter-active,.ant-notification-topLeft .ant-notification-fade-appear.ant-notification-fade-appear-active,.ant-notification-topLeft .ant-notification-fade-enter.ant-notification-fade-enter-active{animation-name:NotificationLeftFadeIn}@keyframes NotificationTopFadeIn{0%{margin-top:-100%;opacity:0}100%{margin-top:0;opacity:1}}@keyframes NotificationBottomFadeIn{0%{margin-bottom:-100%;opacity:0}100%{margin-bottom:0;opacity:1}}@keyframes NotificationLeftFadeIn{0%{right:384px;opacity:0}100%{right:0;opacity:1}}.ant-page-header{box-sizing:border-box;margin:0;color:rgba(0,0,0,.85);font-size:12px;font-variant:tabular-nums;line-height:1.66667;list-style:none;font-feature-settings:tnum;padding:8px 16px;background-color:#fff}.ant-page-header-content,.ant-page-header.has-breadcrumb{padding-top:8px}.ant-page-header-ghost{background-color:inherit}.ant-page-header.has-footer{padding-bottom:0}.ant-page-header-back{margin-right:8px;font-size:16px;line-height:1}.ant-page-header-back-button{text-decoration:none;outline:0;transition:color .3s;color:#000;cursor:pointer}.ant-page-header-back-button:focus,.ant-page-header-back-button:hover{color:#40a9ff}.ant-page-header-back-button:active{color:#096dd9}.ant-page-header .ant-divider-vertical{height:14px;margin:0 8px;vertical-align:middle}.ant-breadcrumb+.ant-page-header-heading{margin-top:4px}.ant-page-header-heading{display:flex}.ant-page-header-heading-left{display:flex;align-items:center;margin:2px 0;overflow:hidden}.ant-page-header-heading-title{margin-right:8px;margin-bottom:0;color:rgba(0,0,0,.85);font-weight:600;font-size:16px;line-height:28px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-page-header-heading .ant-avatar{margin-right:8px}.ant-page-header-heading-sub-title{margin-right:8px;color:rgba(0,0,0,.45);font-size:12px;line-height:1.66667;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-page-header-heading-extra{margin:2px 0;white-space:nowrap}.ant-page-header-heading-extra>*{white-space:unset}.ant-page-header-footer{margin-top:8px}.ant-page-header-footer .ant-tabs>.ant-tabs-nav{margin:0}.ant-page-header-footer .ant-tabs>.ant-tabs-nav::before{border:none}.ant-page-header-footer .ant-tabs .ant-tabs-tab{padding-top:4px;padding-bottom:4px;font-size:14px}.ant-page-header-compact .ant-page-header-heading{flex-wrap:wrap}.ant-page-header-rtl .ant-page-header-back{float:right;margin-right:0;margin-left:16px}.ant-page-header-rtl .ant-page-header-heading .ant-avatar,.ant-page-header-rtl .ant-page-header-heading-title{margin-right:0;margin-left:8px}.ant-page-header-rtl .ant-page-header-heading-sub-title{float:right;margin-right:0;margin-left:12px}.ant-page-header-rtl .ant-page-header-heading-tags{float:right}.ant-page-header-rtl .ant-page-header-heading-extra{float:left}.ant-page-header-rtl .ant-page-header-heading-extra>*{margin-right:8px;margin-left:0}.ant-pagination,.ant-pagination ol,.ant-pagination ul{margin:0;list-style:none;padding:0}.ant-page-header-rtl .ant-page-header-heading-extra>:first-child{margin-right:0}.ant-page-header-rtl .ant-page-header-footer .ant-tabs-bar .ant-tabs-nav{float:right}.ant-page-header-back-button{border:0;background:0 0;padding:0;line-height:inherit;display:inline-block}nz-page-header,nz-page-header-content,nz-page-header-footer{display:block}.ant-pagination{box-sizing:border-box;color:rgba(0,0,0,.85);font-size:12px;font-variant:tabular-nums;line-height:1.66667;font-feature-settings:tnum}.ant-pagination::after{display:block;clear:both;height:0;overflow:hidden;visibility:hidden;content:' '}.ant-pagination-item,.ant-pagination-total-text{display:inline-block;margin-right:8px;line-height:26px;vertical-align:middle}.ant-pagination-total-text{height:28px}.ant-pagination-item{min-width:28px;height:28px;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,'Noto Sans',sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji';text-align:center;list-style:none;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;outline:0;cursor:pointer;user-select:none}.ant-pagination-item a{display:block;padding:0 6px;color:rgba(0,0,0,.85);transition:none}.ant-pagination-item-active a,.ant-pagination-item:focus-visible a,.ant-pagination-item:hover a{color:#1890ff}.ant-pagination-item a:hover{text-decoration:none}.ant-pagination-item:hover{border-color:#1890ff;transition:all .3s}.ant-pagination-item:focus-visible{border-color:#1890ff;transition:all .3s}.ant-pagination-item-active{font-weight:500;background:#fff;border-color:#1890ff}.ant-pagination-item-active:focus-visible,.ant-pagination-item-active:hover,.ant-pagination-next:hover button,.ant-pagination-prev:hover button{border-color:#40a9ff}.ant-pagination-item-active:focus-visible a,.ant-pagination-item-active:hover a{color:#40a9ff}.ant-pagination-jump-next,.ant-pagination-jump-prev{outline:0}.ant-pagination-jump-next .ant-pagination-item-container .ant-pagination-item-link-icon,.ant-pagination-jump-prev .ant-pagination-item-container .ant-pagination-item-link-icon{color:#1890ff;font-size:12px;letter-spacing:-1px;opacity:0;transition:all .2s}.ant-pagination-jump-next .ant-pagination-item-container .ant-pagination-item-link-icon-svg,.ant-pagination-jump-prev .ant-pagination-item-container .ant-pagination-item-link-icon-svg{top:0;right:0;bottom:0;left:0;margin:auto}.ant-pagination-jump-next .ant-pagination-item-container .ant-pagination-item-ellipsis,.ant-pagination-jump-prev .ant-pagination-item-container .ant-pagination-item-ellipsis{position:absolute;top:0;right:0;bottom:0;left:0;display:block;margin:auto;color:rgba(0,0,0,.25);font-family:Arial,Helvetica,sans-serif;letter-spacing:2px;text-align:center;text-indent:.13em;opacity:1;transition:all .2s}.ant-pagination-jump-next,.ant-pagination-jump-prev,.ant-pagination-next,.ant-pagination-prev,.ant-select-multiple .ant-select-selection-search-input,.ant-select-multiple .ant-select-selection-search-mirror,.ant-statistic-content,.ant-steps-item-icon{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,'Noto Sans',sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji'}.ant-pagination-jump-next:hover .ant-pagination-item-link-icon,.ant-pagination-jump-prev:hover .ant-pagination-item-link-icon{opacity:1}.ant-pagination-jump-next:hover .ant-pagination-item-ellipsis,.ant-pagination-jump-prev:hover .ant-pagination-item-ellipsis{opacity:0}.ant-pagination-jump-next:focus-visible .ant-pagination-item-link-icon,.ant-pagination-jump-prev:focus-visible .ant-pagination-item-link-icon{opacity:1}.ant-pagination-jump-next:focus-visible .ant-pagination-item-ellipsis,.ant-pagination-jump-prev:focus-visible .ant-pagination-item-ellipsis{opacity:0}.ant-pagination-jump-next,.ant-pagination-jump-prev,.ant-pagination-prev{margin-right:8px}.ant-pagination-jump-next,.ant-pagination-jump-prev,.ant-pagination-next,.ant-pagination-prev{display:inline-block;min-width:28px;height:28px;color:rgba(0,0,0,.85);line-height:28px;text-align:center;vertical-align:middle;list-style:none;border-radius:2px;cursor:pointer;transition:all .3s}.ant-pagination-next,.ant-pagination-prev{font-family:Arial,Helvetica,sans-serif;outline:0}.ant-pagination-next button,.ant-pagination-prev button{color:rgba(0,0,0,.85);cursor:pointer;user-select:none}.ant-pagination-next .ant-pagination-item-link,.ant-pagination-prev .ant-pagination-item-link{display:block;width:100%;height:100%;padding:0;font-size:12px;text-align:center;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;outline:0;transition:all .3s}.ant-pagination-next:focus-visible .ant-pagination-item-link,.ant-pagination-next:hover .ant-pagination-item-link,.ant-pagination-prev:focus-visible .ant-pagination-item-link,.ant-pagination-prev:hover .ant-pagination-item-link{color:#1890ff;border-color:#1890ff}.ant-pagination-disabled .ant-pagination-item-link,.ant-pagination-disabled:focus-visible .ant-pagination-item-link,.ant-pagination-disabled:hover .ant-pagination-item-link{color:rgba(0,0,0,.25);border-color:#d9d9d9;cursor:not-allowed}.ant-pagination-disabled,.ant-pagination-disabled:hover{cursor:not-allowed}.ant-pagination-disabled:focus-visible{cursor:not-allowed}.ant-pagination-slash{margin:0 10px 0 5px}.ant-pagination-options{display:inline-block;margin-left:16px;vertical-align:middle}@media all and (-ms-high-contrast:none){.ant-pagination-options,.ant-pagination-options ::-ms-backdrop{vertical-align:top}}.ant-pagination-options-size-changer.ant-select{display:inline-block;width:auto}.ant-pagination-options-quick-jumper{display:inline-block;height:28px;margin-left:4px;line-height:28px;vertical-align:top}.ant-pagination-options-quick-jumper input{position:relative;display:inline-block;min-width:0;padding:3px 7px;color:rgba(0,0,0,.85);font-size:12px;line-height:1.66667;background-color:#fff;background-image:none;border:1px solid #d9d9d9;border-radius:2px;transition:all .3s;width:50px;height:28px;margin:0 8px}.ant-pagination-options-quick-jumper input::-moz-placeholder{opacity:1}.ant-pagination-options-quick-jumper input::placeholder{color:#bfbfbf;user-select:none}.ant-pagination-options-quick-jumper input:placeholder-shown{text-overflow:ellipsis}.ant-pagination-options-quick-jumper input:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-pagination-options-quick-jumper input:hover{border-right-width:0;border-left-width:1px!important}.ant-pagination-options-quick-jumper input-focused,.ant-pagination-options-quick-jumper input:focus{border-color:#40a9ff;box-shadow:0 0 0 2px rgba(24,144,255,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-pagination-options-quick-jumper input-focused,.ant-input-rtl .ant-pagination-options-quick-jumper input:focus{border-right-width:0;border-left-width:1px!important}.ant-pagination-options-quick-jumper input-disabled:hover,.ant-pagination-options-quick-jumper input[disabled]:hover{border-color:#d9d9d9;border-right-width:1px}.ant-pagination-options-quick-jumper input-disabled{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;pointer-events:none;color:rgba(0,0,0,.25)}.ant-pagination-options-quick-jumper input[disabled]{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;pointer-events:none;color:rgba(0,0,0,.25)}.ant-pagination-options-quick-jumper input-borderless,.ant-pagination-options-quick-jumper input-borderless-disabled,.ant-pagination-options-quick-jumper input-borderless-focused,.ant-pagination-options-quick-jumper input-borderless:focus,.ant-pagination-options-quick-jumper input-borderless:hover,.ant-pagination-options-quick-jumper input-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-pagination-options-quick-jumper input{max-width:100%;height:auto;min-height:28px;line-height:1.66667;vertical-align:bottom;transition:all .3s,height 0s}.ant-pagination-options-quick-jumper input-lg{padding:3.4px 11px;font-size:14px}.ant-pagination-options-quick-jumper input-sm{padding:0 7px}.ant-pagination-options-quick-jumper input-stepperless[type=number]{-moz-appearance:textfield}.ant-pagination-options-quick-jumper input-stepperless[type=number] ::-webkit-outer-spin-button,.ant-pagination-options-quick-jumper input-stepperless[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ant-pagination-simple .ant-pagination-next,.ant-pagination-simple .ant-pagination-prev{height:22px;line-height:22px;vertical-align:top}.ant-pagination-simple .ant-pagination-next .ant-pagination-item-link,.ant-pagination-simple .ant-pagination-prev .ant-pagination-item-link{height:22px;background-color:transparent;border:0}.ant-pagination-simple .ant-pagination-next .ant-pagination-item-link::after,.ant-pagination-simple .ant-pagination-prev .ant-pagination-item-link::after{height:22px;line-height:22px}.ant-pagination-simple .ant-pagination-simple-pager{display:inline-block;height:22px;margin-right:8px}.ant-pagination-simple .ant-pagination-simple-pager input{box-sizing:border-box;height:100%;margin-right:8px;padding:0 6px;text-align:center;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;outline:0;transition:border-color .3s}.ant-pagination-simple .ant-pagination-simple-pager input:hover{border-color:#1890ff}.ant-pagination-simple .ant-pagination-simple-pager input:focus{border-color:#40a9ff;box-shadow:0 0 0 2px rgba(24,144,255,.2)}.ant-pagination-simple .ant-pagination-simple-pager input[disabled]{color:rgba(0,0,0,.25);background:#f5f5f5;border-color:#d9d9d9;cursor:not-allowed}.ant-pagination.mini .ant-pagination-item:not(.ant-pagination-item-active),.ant-pagination.mini .ant-pagination-next .ant-pagination-item-link,.ant-pagination.mini .ant-pagination-prev .ant-pagination-item-link{background:0 0;border-color:transparent}.ant-pagination.mini .ant-pagination-simple-pager,.ant-pagination.mini .ant-pagination-total-text{height:22px;line-height:22px}.ant-pagination.mini .ant-pagination-item{min-width:22px;height:22px;margin:0;line-height:20px}.ant-pagination.mini .ant-pagination-next,.ant-pagination.mini .ant-pagination-prev{min-width:22px;height:22px;margin:0;line-height:22px}.ant-pagination.mini .ant-pagination-next .ant-pagination-item-link::after,.ant-pagination.mini .ant-pagination-prev .ant-pagination-item-link::after{height:22px;line-height:22px}.ant-pagination.mini .ant-pagination-jump-next,.ant-pagination.mini .ant-pagination-jump-prev{height:22px;margin-right:0;line-height:22px}.ant-pagination.mini .ant-pagination-options{margin-left:2px}.ant-pagination.mini .ant-pagination-options-size-changer{top:1px}.ant-pagination.mini .ant-pagination-options-quick-jumper{height:22px;line-height:22px}.ant-popover,.ant-progress{box-sizing:border-box;font-variant:tabular-nums;line-height:1.66667;list-style:none;font-feature-settings:tnum;font-size:12px}.ant-pagination.mini .ant-pagination-options-quick-jumper input{padding:0 7px;width:44px;height:22px}.ant-pagination.ant-pagination-disabled{cursor:not-allowed}.ant-pagination.ant-pagination-disabled .ant-pagination-item{background:#f5f5f5;border-color:#d9d9d9;cursor:not-allowed}.ant-pagination.ant-pagination-disabled .ant-pagination-item a{color:rgba(0,0,0,.25);background:0 0;border:none;cursor:not-allowed}.ant-pagination.ant-pagination-disabled .ant-pagination-item-active{background:#e6e6e6}.ant-pagination.ant-pagination-disabled .ant-pagination-item-active a{color:rgba(0,0,0,.25)}.ant-pagination.ant-pagination-disabled .ant-pagination-item-link{color:rgba(0,0,0,.25);background:#f5f5f5;border-color:#d9d9d9;cursor:not-allowed}.ant-pagination-simple.ant-pagination.ant-pagination-disabled .ant-pagination-item-link{background:0 0}.ant-pagination.ant-pagination-disabled .ant-pagination-item-link-icon{opacity:0}.ant-pagination.ant-pagination-disabled .ant-pagination-item-ellipsis{opacity:1}.ant-pagination.ant-pagination-disabled .ant-pagination-simple-pager{color:rgba(0,0,0,.25)}@media only screen and (max-width:992px){.ant-pagination-item-after-jump-prev,.ant-pagination-item-before-jump-next{display:none}}@media only screen and (max-width:576px){.ant-pagination-options{display:none}}.ant-pagination-rtl .ant-pagination-item,.ant-pagination-rtl .ant-pagination-jump-next,.ant-pagination-rtl .ant-pagination-jump-prev,.ant-pagination-rtl .ant-pagination-prev,.ant-pagination-rtl .ant-pagination-total-text{margin-right:0;margin-left:8px}.ant-pagination-rtl .ant-pagination-slash{margin:0 5px 0 10px}.ant-pagination-rtl .ant-pagination-options{margin-right:16px;margin-left:0}.ant-pagination-rtl .ant-pagination-options .ant-pagination-options-size-changer.ant-select{margin-right:0;margin-left:8px}.ant-pagination-rtl .ant-pagination-options .ant-pagination-options-quick-jumper{margin-left:0}.ant-pagination-rtl.ant-pagination-simple .ant-pagination-simple-pager,.ant-pagination-rtl.ant-pagination-simple .ant-pagination-simple-pager input{margin-right:0;margin-left:8px}.ant-pagination-rtl.ant-pagination.mini .ant-pagination-options{margin-right:2px;margin-left:0}nz-pagination{display:block}.ant-popover-hidden,.ant-radio+span:empty{display:none}.ant-popover{margin:0;padding:0;color:rgba(0,0,0,.85);top:0;left:0;z-index:1030;font-weight:400;white-space:normal;text-align:left;cursor:auto;user-select:text}.ant-popover::after{position:absolute;background:rgba(255,255,255,.01);content:''}.ant-popover-placement-top,.ant-popover-placement-topLeft,.ant-popover-placement-topRight{padding-bottom:15.31px}.ant-popover-placement-right,.ant-popover-placement-rightBottom,.ant-popover-placement-rightTop{padding-left:15.31px}.ant-popover-placement-bottom,.ant-popover-placement-bottomLeft,.ant-popover-placement-bottomRight{padding-top:15.31px}.ant-popover-placement-left,.ant-popover-placement-leftBottom,.ant-popover-placement-leftTop{padding-right:15.31px}.ant-popover-inner{background-color:#fff;background-clip:padding-box;border-radius:2px;box-shadow:0 3px 6px -4px rgba(0,0,0,.12),0 6px 16px 0 rgba(0,0,0,.08),0 9px 28px 8px rgba(0,0,0,.05);box-shadow:0 0 8px rgba(0,0,0,.15)\9}@media screen and (-ms-high-contrast:active),(-ms-high-contrast:none){.ant-popover-inner{box-shadow:0 3px 6px -4px rgba(0,0,0,.12),0 6px 16px 0 rgba(0,0,0,.08),0 9px 28px 8px rgba(0,0,0,.05)}}.ant-popover-title{min-width:177px;min-height:28px;margin:0;padding:5px 12px 4px;color:rgba(0,0,0,.85);font-weight:500;border-bottom:1px solid #f0f0f0}.ant-popover-inner-content{padding:8px 12px;color:rgba(0,0,0,.85)}.ant-popover-message{position:relative;padding:4px 0 12px;color:rgba(0,0,0,.85);font-size:12px}.ant-popover-message>.anticon{position:absolute;top:8px;color:#faad14;font-size:12px}.ant-popover-message-title{padding-left:20px}.ant-popover-buttons{margin-bottom:4px;text-align:right}.ant-popover-buttons button{margin-left:8px}.ant-popover-arrow{position:absolute;display:block;width:16px;height:16px;overflow:hidden;background:0 0;pointer-events:none}.ant-popover-arrow-content{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:11.31px;height:11.31px;margin:auto;background-color:#fff;content:'';border-radius:0 0 2px;pointer-events:none}.ant-popover-placement-bottomRight .ant-popover-arrow,.ant-popover-placement-topRight .ant-popover-arrow{right:16px}.ant-progress,.ant-progress-steps{display:inline-block}.ant-popover-arrow-content::before{position:absolute;top:-11.31px;left:-11.31px;width:33.94px;height:33.94px;background:-10px -10px no-repeat #fff;content:'';clip-path:path('M 9.849242404917499 24.091883092036785 A 5 5 0 0 1 13.384776310850237 22.627416997969522 L 20.627416997969522 22.627416997969522 A 2 2 0 0 0 22.627416997969522 20.627416997969522 L 22.627416997969522 13.384776310850237 A 5 5 0 0 1 24.091883092036785 9.849242404917499 L 23.091883092036785 9.849242404917499 L 9.849242404917499 23.091883092036785 Z')}.ant-popover-magenta .ant-popover-arrow-content,.ant-popover-magenta .ant-popover-inner,.ant-popover-pink .ant-popover-arrow-content,.ant-popover-pink .ant-popover-inner,.ant-tooltip-magenta .ant-tooltip-inner,.ant-tooltip-pink .ant-tooltip-inner{background-color:#eb2f96}.ant-popover-placement-top .ant-popover-arrow,.ant-popover-placement-topLeft .ant-popover-arrow,.ant-popover-placement-topRight .ant-popover-arrow{bottom:-.69px}.ant-popover-placement-top .ant-popover-arrow-content,.ant-popover-placement-topLeft .ant-popover-arrow-content,.ant-popover-placement-topRight .ant-popover-arrow-content{box-shadow:3px 3px 7px rgba(0,0,0,.07);transform:translateY(-8px) rotate(45deg)}.ant-popover-placement-top .ant-popover-arrow{left:50%;transform:translateX(-50%)}.ant-popover-placement-topLeft .ant-popover-arrow{left:16px}.ant-popover-placement-right .ant-popover-arrow,.ant-popover-placement-rightBottom .ant-popover-arrow,.ant-popover-placement-rightTop .ant-popover-arrow{left:-.69px}.ant-popover-placement-right .ant-popover-arrow-content,.ant-popover-placement-rightBottom .ant-popover-arrow-content,.ant-popover-placement-rightTop .ant-popover-arrow-content{box-shadow:3px 3px 7px rgba(0,0,0,.07);transform:translateX(8px) rotate(135deg)}.ant-popover-placement-right .ant-popover-arrow{top:50%;transform:translateY(-50%)}.ant-popover-placement-rightTop .ant-popover-arrow{top:12px}.ant-popover-placement-bottom .ant-popover-arrow,.ant-popover-placement-bottomLeft .ant-popover-arrow,.ant-popover-placement-bottomRight .ant-popover-arrow{top:-.69px}.ant-popover-placement-bottom .ant-popover-arrow-content,.ant-popover-placement-bottomLeft .ant-popover-arrow-content,.ant-popover-placement-bottomRight .ant-popover-arrow-content{box-shadow:2px 2px 5px rgba(0,0,0,.06);transform:translateY(8px) rotate(-135deg)}.ant-popover-placement-bottom .ant-popover-arrow{left:50%;transform:translateX(-50%)}.ant-popover-placement-bottomLeft .ant-popover-arrow{left:16px}.ant-popover-placement-left .ant-popover-arrow,.ant-popover-placement-leftBottom .ant-popover-arrow,.ant-popover-placement-leftTop .ant-popover-arrow{right:-.69px}.ant-popover-placement-left .ant-popover-arrow-content,.ant-popover-placement-leftBottom .ant-popover-arrow-content,.ant-popover-placement-leftTop .ant-popover-arrow-content{box-shadow:3px 3px 7px rgba(0,0,0,.07);transform:translateX(-8px) rotate(-45deg)}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):focus-within,.ant-radio-button-wrapper:focus-within,.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):focus-within,.ant-radio-input:focus+.ant-radio-inner{box-shadow:0 0 0 3px #e6f7ff}.ant-popover-placement-left .ant-popover-arrow{top:50%;transform:translateY(-50%)}.ant-popover-placement-leftTop .ant-popover-arrow{top:12px}.ant-popover-red .ant-popover-arrow-content,.ant-popover-red .ant-popover-inner{background-color:#f5222d}.ant-popover-volcano .ant-popover-arrow-content,.ant-popover-volcano .ant-popover-inner{background-color:#fa541c}.ant-popover-orange .ant-popover-arrow-content,.ant-popover-orange .ant-popover-inner{background-color:#fa8c16}.ant-popover-yellow .ant-popover-arrow-content,.ant-popover-yellow .ant-popover-inner{background-color:#fadb14}.ant-popover-gold .ant-popover-arrow-content,.ant-popover-gold .ant-popover-inner{background-color:#faad14}.ant-popover-cyan .ant-popover-arrow-content,.ant-popover-cyan .ant-popover-inner{background-color:#13c2c2}.ant-popover-lime .ant-popover-arrow-content,.ant-popover-lime .ant-popover-inner{background-color:#a0d911}.ant-popover-green .ant-popover-arrow-content,.ant-popover-green .ant-popover-inner{background-color:#52c41a}.ant-popover-blue .ant-popover-arrow-content,.ant-popover-blue .ant-popover-inner{background-color:#1890ff}.ant-popover-geekblue .ant-popover-arrow-content,.ant-popover-geekblue .ant-popover-inner{background-color:#2f54eb}.ant-popover-purple .ant-popover-arrow-content,.ant-popover-purple .ant-popover-inner{background-color:#722ed1}.ant-popover-rtl{text-align:right}.ant-popover-rtl .ant-popover-message-title{padding-right:20px;padding-left:8px}.ant-popover-rtl .ant-popover-buttons{text-align:left}.ant-popover-rtl .ant-popover-buttons button{margin-right:8px;margin-left:0}.ant-popover{position:relative}.ant-progress{margin:0;padding:0;color:rgba(0,0,0,.85)}.ant-progress-line{position:relative;width:100%;font-size:12px}.ant-progress-steps-outer{display:flex;flex-direction:row;align-items:center}.ant-progress-steps-item{flex-shrink:0;min-width:2px;margin-right:2px;background:#f3f3f3;transition:all .3s}.ant-progress-steps-item-active{background:#1890ff}.ant-progress-small.ant-progress-line,.ant-progress-small.ant-progress-line .ant-progress-text .anticon{font-size:12px}.ant-progress-outer{display:inline-block;width:100%;margin-right:0;padding-right:0}.ant-progress-show-info .ant-progress-outer{margin-right:calc(-2em - 8px);padding-right:calc(2em + 8px)}.ant-progress-inner{position:relative;display:inline-block;width:100%;overflow:hidden;vertical-align:middle;background-color:#f5f5f5;border-radius:100px}.ant-progress-circle-trail{stroke:#f5f5f5}.ant-progress-circle-path{animation:ant-progress-appear .3s}.ant-progress-inner:not(.ant-progress-circle-gradient) .ant-progress-circle-path{stroke:#1890ff}.ant-progress-bg,.ant-progress-success-bg{position:relative;background-color:#1890ff;border-radius:100px;transition:all .4s cubic-bezier(.08,.82,.17,1) 0s}.ant-progress-success-bg{position:absolute;top:0;left:0;background-color:#52c41a}.ant-progress-text{display:inline-block;width:2em;margin-left:8px;color:rgba(0,0,0,.85);font-size:1em;line-height:1;white-space:nowrap;text-align:left;vertical-align:middle;word-break:normal}.ant-progress-text .anticon{font-size:12px}.ant-progress-status-active .ant-progress-bg::before{position:absolute;top:0;right:0;bottom:0;left:0;background:#fff;border-radius:10px;opacity:0;animation:ant-progress-active 2.4s cubic-bezier(.23,1,.32,1) infinite;content:''}.ant-progress-status-exception .ant-progress-bg{background-color:#ff4d4f}.ant-progress-status-exception .ant-progress-text{color:#ff4d4f}.ant-progress-status-exception .ant-progress-inner:not(.ant-progress-circle-gradient) .ant-progress-circle-path{stroke:#ff4d4f}.ant-progress-status-success .ant-progress-bg{background-color:#52c41a}.ant-progress-status-success .ant-progress-text{color:#52c41a}.ant-progress-status-success .ant-progress-inner:not(.ant-progress-circle-gradient) .ant-progress-circle-path{stroke:#52c41a}.ant-progress-circle .ant-progress-inner{position:relative;line-height:1;background-color:transparent}.ant-progress-circle .ant-progress-text{position:absolute;top:50%;left:50%;width:100%;margin:0;padding:0;color:rgba(0,0,0,.85);font-size:.833333em;line-height:1;white-space:normal;text-align:center;transform:translate(-50%,-50%)}.ant-progress-circle .ant-progress-text .anticon{font-size:1.16666667em}.ant-progress-circle.ant-progress-status-exception .ant-progress-text{color:#ff4d4f}.ant-progress-circle.ant-progress-status-success .ant-progress-text{color:#52c41a}@keyframes ant-progress-active{0%{transform:translateX(-100%) scaleX(0);opacity:.1}20%{transform:translateX(-100%) scaleX(0);opacity:.5}100%{transform:translateX(0) scaleX(1);opacity:0}}.ant-progress-rtl.ant-progress-show-info .ant-progress-outer{margin-right:0;margin-left:calc(-2em - 8px);padding-right:0;padding-left:calc(2em + 8px)}.ant-progress-rtl .ant-progress-success-bg{right:0;left:auto}.ant-progress-rtl.ant-progress-line .ant-progress-text,.ant-progress-rtl.ant-progress-steps .ant-progress-text{margin-right:8px;margin-left:0;text-align:right}.ant-radio,.ant-radio-group{box-sizing:border-box;margin:0;padding:0;color:rgba(0,0,0,.85);line-height:1.66667;font-variant:tabular-nums;font-feature-settings:tnum;list-style:none}.ant-radio-group{display:inline-block;font-size:0}.ant-radio-group .ant-badge-count{z-index:1}.ant-radio-group>.ant-badge:not(:first-child)>.ant-radio-button-wrapper{border-left:none}.ant-radio-wrapper{box-sizing:border-box;margin:0 6px 0 0;padding:0;color:rgba(0,0,0,.85);font-size:12px;font-variant:tabular-nums;line-height:1.66667;list-style:none;font-feature-settings:tnum;position:relative;display:inline-flex;align-items:baseline;cursor:pointer}.ant-radio-wrapper-disabled{cursor:not-allowed}.ant-radio-wrapper::after{display:inline-block;width:0;overflow:hidden;content:'\a0'}.ant-radio-wrapper.ant-radio-wrapper-in-form-item input[type=radio]{width:14px;height:14px}.ant-radio{font-size:12px;position:relative;top:.2em;display:inline-block;outline:0;cursor:pointer}.ant-radio-input:focus+.ant-radio-inner,.ant-radio-wrapper:hover .ant-radio,.ant-radio:hover .ant-radio-inner{border-color:#1890ff}.ant-radio-checked::after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #1890ff;border-radius:50%;visibility:hidden;animation:antRadioEffect .36s ease-in-out;animation-fill-mode:both;content:''}.ant-radio-wrapper:hover .ant-radio::after,.ant-radio:hover::after,.ant-tooltip{visibility:visible}.ant-radio-inner{position:relative;top:0;left:0;display:block;width:14px;height:14px;background-color:#fff;border-color:#d9d9d9;border-style:solid;border-width:1px;border-radius:50%;transition:all .3s}.ant-radio-inner::after{position:absolute;top:50%;left:50%;display:block;width:14px;height:14px;margin-top:-7px;margin-left:-7px;background-color:#1890ff;border-top:0;border-left:0;border-radius:14px;transform:scale(0);opacity:0;transition:all .3s cubic-bezier(.78,.14,.15,.86);content:' '}.ant-radio-input{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;cursor:pointer;opacity:0}.ant-radio-button-wrapper-disabled,.ant-radio-disabled,.ant-radio-disabled .ant-radio-inner,.ant-radio-disabled .ant-radio-input,.ant-radio-disabled+span{cursor:not-allowed}.ant-radio-checked .ant-radio-inner{border-color:#1890ff}.ant-radio-checked .ant-radio-inner::after{transform:scale(.42857143);opacity:1;transition:all .3s cubic-bezier(.78,.14,.15,.86)}.ant-radio-disabled .ant-radio-inner{background-color:#f5f5f5;border-color:#d9d9d9!important}.ant-radio-disabled .ant-radio-inner::after{background-color:rgba(0,0,0,.2)}.ant-radio-disabled+span{color:rgba(0,0,0,.25)}span.ant-radio+*{padding-right:8px;padding-left:8px}.ant-radio-button-wrapper{position:relative;display:inline-block;height:28px;margin:0;padding:0 7px;color:rgba(0,0,0,.85);font-size:12px;line-height:26px;background:#fff;border:1px solid #d9d9d9;border-top-width:1.02px;border-left-width:0;cursor:pointer;transition:color .3s,background .3s,border-color .3s,box-shadow .3s}.ant-radio-button-wrapper a{color:rgba(0,0,0,.85)}.ant-radio-button-wrapper>.ant-radio-button{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%}.ant-radio-group-large .ant-radio-button-wrapper{height:32px;font-size:14px;line-height:30px}.ant-radio-group-small .ant-radio-button-wrapper{height:22px;padding:0 7px;line-height:20px}.ant-radio-button-wrapper:not(:first-child)::before{position:absolute;top:-1px;left:-1px;display:block;box-sizing:content-box;width:1px;height:100%;padding:1px 0;background-color:#d9d9d9;transition:background-color .3s;content:''}.ant-radio-button-wrapper:first-child{border-left:1px solid #d9d9d9;border-radius:2px 0 0 2px}.ant-radio-button-wrapper:last-child{border-radius:0 2px 2px 0}.ant-radio-button-wrapper:first-child:last-child{border-radius:2px}.ant-radio-button-wrapper:hover{position:relative;color:#1890ff}.ant-radio-button-wrapper .ant-radio-inner,.ant-radio-button-wrapper input[type=radio],.ant-radio-button-wrapper input[type=checkbox]{width:0;height:0;opacity:0;pointer-events:none}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled){z-index:1;color:#1890ff;background:#fff;border-color:#1890ff}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled)::before{background-color:#1890ff}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):first-child{border-color:#1890ff}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):hover{color:#40a9ff;border-color:#40a9ff}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):hover::before{background-color:#40a9ff}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):active{color:#096dd9;border-color:#096dd9}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):active::before{background-color:#096dd9}.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled){color:#fff;background:#1890ff;border-color:#1890ff}.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):hover{color:#fff;background:#40a9ff;border-color:#40a9ff}.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):active{color:#fff;background:#096dd9;border-color:#096dd9}.ant-radio-button-wrapper-disabled,.ant-radio-button-wrapper-disabled:first-child,.ant-radio-button-wrapper-disabled:hover{color:rgba(0,0,0,.25);background-color:#f5f5f5;border-color:#d9d9d9}.ant-radio-button-wrapper-disabled:first-child{border-left-color:#d9d9d9}.ant-radio-button-wrapper-disabled.ant-radio-button-wrapper-checked{color:rgba(0,0,0,.25);background-color:#e6e6e6;border-color:#d9d9d9;box-shadow:none}@keyframes antRadioEffect{0%{transform:scale(1);opacity:.5}100%{transform:scale(1.6);opacity:0}}.ant-radio-wrapper.ant-radio-wrapper-rtl{margin-right:0;margin-left:6px}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl{border-right-width:0;border-left-width:1px}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl.ant-radio-button-wrapper:not(:first-child)::before{right:-1px;left:0}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl.ant-radio-button-wrapper:first-child{border-right:1px solid #d9d9d9;border-radius:0 2px 2px 0}.ant-radio-button-wrapper-checked:not([class*=' ant-radio-button-wrapper-disabled']).ant-radio-button-wrapper:first-child{border-right-color:#40a9ff}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl.ant-radio-button-wrapper:last-child{border-radius:2px 0 0 2px}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl.ant-radio-button-wrapper-disabled:first-child{border-right-color:#d9d9d9}.ant-rate,.ant-rate-star,.ant-rate-text{display:inline-block}.ant-rate{box-sizing:border-box;font-variant:tabular-nums;font-feature-settings:tnum;margin:0;padding:0;color:#fadb14;font-size:16px;line-height:unset;list-style:none;outline:0}.ant-rate-disabled .ant-rate-star{cursor:default}.ant-rate-disabled .ant-rate-star>div:hover{transform:scale(1)}.ant-rate-star{position:relative;color:inherit;cursor:pointer}.ant-rate-star:not(:last-child){margin-right:8px}.ant-rate-star>div{transition:all .3s,outline 0s}.ant-rate-star>div:hover{transform:scale(1.1)}.ant-rate-star>div:focus{outline:0}.ant-rate-star>div:focus-visible{outline:#fadb14 dashed 1px;transform:scale(1.1)}.ant-rate-star-first,.ant-rate-star-second{color:#f0f0f0;transition:all .3s;user-select:none}.ant-rate-star-first .anticon,.ant-rate-star-second .anticon{vertical-align:middle}.ant-rate-star-first{position:absolute;top:0;left:0;width:50%;height:100%;overflow:hidden;opacity:0}.ant-rate-star-half .ant-rate-star-first,.ant-rate-star-half .ant-rate-star-second{opacity:1}.ant-rate-star-full .ant-rate-star-second,.ant-rate-star-half .ant-rate-star-first{color:inherit}.ant-rate-text{margin:0 8px;font-size:12px}.ant-rate-rtl .ant-rate-star:not(:last-child){margin-right:0;margin-left:8px}.ant-rate-rtl .ant-rate-star-first{right:0;left:auto}.ant-select-single .ant-select-selector{display:flex}.ant-select-single .ant-select-selector .ant-select-selection-search{position:absolute;top:0;right:7px;bottom:0;left:7px}.ant-select-single .ant-select-selector .ant-select-selection-search-input{width:100%}.ant-select-single .ant-select-selector .ant-select-selection-item,.ant-select-single .ant-select-selector .ant-select-selection-placeholder{padding:0;line-height:26px;transition:all .3s}@supports (-moz-appearance:meterbar){.ant-select-single .ant-select-selector .ant-select-selection-item,.ant-select-single .ant-select-selector .ant-select-selection-placeholder{line-height:26px}}.ant-select-single .ant-select-selector .ant-select-selection-item{position:relative;user-select:none}.ant-select-single .ant-select-selector .ant-select-selection-placeholder{transition:none;pointer-events:none}.ant-select-single .ant-select-selector .ant-select-selection-item::after,.ant-select-single .ant-select-selector .ant-select-selection-placeholder::after,.ant-select-single .ant-select-selector::after{display:inline-block;width:0;visibility:hidden;content:'\a0'}.ant-select-single.ant-select-customize-input .ant-select-selector .ant-select-selection-placeholder::after,.ant-select-single.ant-select-customize-input .ant-select-selector::after{display:none}.ant-select-single.ant-select-show-arrow .ant-select-selection-search{right:19px}.ant-select-single.ant-select-show-arrow .ant-select-selection-item,.ant-select-single.ant-select-show-arrow .ant-select-selection-placeholder{padding-right:15px}.ant-select-single.ant-select-open .ant-select-selection-item{color:#bfbfbf}.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{width:100%;height:28px;padding:0 7px}.ant-select-single:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-search-input{height:26px}.ant-select-single:not(.ant-select-customize-input) .ant-select-selector::after{line-height:26px}.ant-select-single.ant-select-customize-input .ant-select-selector .ant-select-selection-search{position:static;width:100%}.ant-select-single.ant-select-customize-input .ant-select-selector .ant-select-selection-placeholder{position:absolute;right:0;left:0;padding:0 7px}.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector{height:32px}.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-item,.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-placeholder,.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector::after{line-height:30px}.ant-select-single.ant-select-lg:not(.ant-select-customize-input):not(.ant-select-customize-input) .ant-select-selection-search-input{height:30px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector{height:22px;padding:0 7px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-item,.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-placeholder,.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector::after{line-height:20px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input):not(.ant-select-customize-input) .ant-select-selection-search-input{height:20px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selection-search{right:7px;left:7px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-search{right:25px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-item,.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-placeholder{padding-right:18px}.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector{padding:0 11px}.ant-select-selection-overflow{position:relative;display:flex;flex:auto;flex-wrap:wrap;max-width:100%}.ant-select-selection-overflow-item{flex:none;align-self:center;max-width:100%}.ant-select-multiple .ant-select-selector{display:flex;flex-wrap:wrap;align-items:center;padding:0 3px}.ant-select-show-search.ant-select-multiple .ant-select-selector{cursor:text}.ant-select-disabled.ant-select-multiple .ant-select-selector{background:#f5f5f5;cursor:not-allowed}.ant-select-multiple .ant-select-selector::after{display:inline-block;width:0;margin:3px 0;line-height:20px;content:'\a0'}.ant-select-multiple.ant-select-allow-clear .ant-select-selector,.ant-select-multiple.ant-select-show-arrow .ant-select-selector{padding-right:20px}.ant-select-multiple .ant-select-selection-item{position:relative;display:flex;flex:none;box-sizing:border-box;max-width:100%;height:20px;margin-top:3px;margin-bottom:3px;line-height:18px;background:#f5f5f5;border:1px solid #f0f0f0;border-radius:2px;cursor:default;transition:font-size .3s,line-height .3s,height .3s;user-select:none;margin-inline-end:3px;padding-inline-start:4px;padding-inline-end:2px}.ant-select-disabled.ant-select-multiple .ant-select-selection-item{color:#bfbfbf;border-color:#d9d9d9;cursor:not-allowed}.ant-select-multiple .ant-select-selection-item-content{display:inline-block;margin-right:2px;overflow:hidden;white-space:pre;text-overflow:ellipsis}.ant-select-multiple .ant-select-selection-item-remove{color:inherit;font-style:normal;text-align:center;text-transform:none;vertical-align:-.125em;display:inline-block;color:rgba(0,0,0,.45);font-weight:700;font-size:10px;line-height:inherit;cursor:pointer}.ant-select-arrow,.ant-select-arrow>*,.ant-select-clear,.ant-select-multiple .ant-select-selection-item-remove>*{line-height:1}.ant-select-multiple .ant-select-selection-item-remove svg{display:inline-block}.ant-select-disabled .ant-select-selection-item-remove,.ant-select-multiple .ant-select-selection-item-remove::before{display:none}.ant-select-multiple .ant-select-selection-item-remove .ant-select-multiple .ant-select-selection-item-remove-icon{display:block}.ant-select-multiple .ant-select-selection-item-remove>.anticon{vertical-align:middle}.ant-select-multiple .ant-select-selection-item-remove:hover{color:rgba(0,0,0,.75)}.ant-select-multiple .ant-select-selection-overflow-item+.ant-select-selection-overflow-item .ant-select-selection-search{margin-inline-start:0}.ant-select-multiple .ant-select-selection-search{position:relative;max-width:100%;margin-inline-start:4px}.ant-select-multiple .ant-select-selection-search-input,.ant-select-multiple .ant-select-selection-search-mirror{height:20px;line-height:20px;transition:all .3s}.ant-select-multiple .ant-select-selection-search-input{width:100%;min-width:4.1px}.ant-select-multiple .ant-select-selection-search-mirror{position:absolute;top:0;left:0;z-index:999;white-space:pre;visibility:hidden}.ant-select-multiple .ant-select-selection-placeholder{position:absolute;top:50%;right:7px;left:7px;transform:translateY(-50%);transition:all .3s}.ant-select-status-error.ant-select-has-feedback .ant-select-clear,.ant-select-status-success.ant-select-has-feedback .ant-select-clear,.ant-select-status-validating.ant-select-has-feedback .ant-select-clear,.ant-select-status-warning.ant-select-has-feedback .ant-select-clear,.theme-btn{right:32px}.ant-select-multiple.ant-select-lg .ant-select-selector::after{line-height:26px}.ant-select-multiple.ant-select-lg .ant-select-selection-search{height:26px;line-height:26px}.ant-select-multiple.ant-select-lg .ant-select-selection-search-input,.ant-select-multiple.ant-select-lg .ant-select-selection-search-mirror{height:26px;line-height:24px}.ant-select-multiple.ant-select-sm .ant-select-selector::after{line-height:16px}.ant-select-multiple.ant-select-sm .ant-select-selection-item{height:16px;line-height:14px}.ant-select-multiple.ant-select-sm .ant-select-selection-search{height:16px;line-height:16px;margin-inline-start:3px}.ant-select-multiple.ant-select-sm .ant-select-selection-search-input,.ant-select-multiple.ant-select-sm .ant-select-selection-search-mirror{height:16px;line-height:14px}.ant-select-multiple.ant-select-sm .ant-select-selection-placeholder{left:7px}.ant-select-multiple.ant-select-lg .ant-select-selection-item{height:24px;line-height:24px}.ant-select-status-error.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input) .ant-select-selector{background-color:#fff;border-color:#ff4d4f!important}.ant-select-status-error.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input).ant-select-focused .ant-select-selector,.ant-select-status-error.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input).ant-select-open .ant-select-selector{border-color:#ff7875;box-shadow:0 0 0 2px rgba(255,77,79,.2);border-right-width:1px;outline:0}.ant-select-status-warning.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input) .ant-select-selector{background-color:#fff;border-color:#faad14!important}.ant-select-status-warning.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input).ant-select-focused .ant-select-selector,.ant-select-status-warning.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input).ant-select-open .ant-select-selector{border-color:#ffc53d;box-shadow:0 0 0 2px rgba(250,173,20,.2);border-right-width:1px;outline:0}.ant-select-status-error.ant-select-has-feedback .ant-select-selection-selected-value,.ant-select-status-success.ant-select-has-feedback .ant-select-selection-selected-value,.ant-select-status-validating.ant-select-has-feedback .ant-select-selection-selected-value,.ant-select-status-warning.ant-select-has-feedback .ant-select-selection-selected-value{padding-right:42px}.ant-select{box-sizing:border-box;margin:0;padding:0;color:rgba(0,0,0,.85);font-size:12px;font-variant:tabular-nums;line-height:1.66667;list-style:none;font-feature-settings:tnum;position:relative;display:inline-block;cursor:pointer}.ant-select:not(.ant-select-customize-input) .ant-select-selector{position:relative;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;transition:all .3s cubic-bezier(.645,.045,.355,1)}.ant-select:not(.ant-select-customize-input) .ant-select-selector input{cursor:pointer}.ant-select-show-search.ant-select:not(.ant-select-customize-input) .ant-select-selector{cursor:text}.ant-select-show-search.ant-select:not(.ant-select-customize-input) .ant-select-selector input{cursor:auto}.ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector{border-color:#40a9ff;box-shadow:0 0 0 2px rgba(24,144,255,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector{border-right-width:0;border-left-width:1px!important}.ant-select-disabled.ant-select:not(.ant-select-customize-input) .ant-select-selector{color:rgba(0,0,0,.25);background:#f5f5f5;cursor:not-allowed}.ant-select-multiple.ant-select-disabled.ant-select:not(.ant-select-customize-input) .ant-select-selector{background:#f5f5f5}.ant-select-disabled.ant-select:not(.ant-select-customize-input) .ant-select-selector input{cursor:not-allowed}.ant-select:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-search-input{margin:0;padding:0;background:0 0;border:none;outline:0;appearance:none}.ant-select-arrow,.ant-select-clear{position:absolute;top:50%;right:7px;height:12px;margin-top:-6px;font-size:12px;text-transform:none;text-align:center;font-style:normal}.ant-select:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-search-input::-webkit-search-cancel-button{display:none;-webkit-appearance:none}.ant-select:not(.ant-select-disabled):hover .ant-select-selector{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-select:not(.ant-select-disabled):hover .ant-select-selector{border-right-width:0;border-left-width:1px!important}.ant-select-selection-item{flex:1;overflow:hidden;font-weight:400;white-space:nowrap;text-overflow:ellipsis}@media all and (-ms-high-contrast:none){.ant-select-selection-item,.ant-select-selection-item ::-ms-backdrop{flex:auto}}.ant-select-selection-placeholder{flex:1;overflow:hidden;color:#bfbfbf;white-space:nowrap;text-overflow:ellipsis;pointer-events:none}@media all and (-ms-high-contrast:none){.ant-select-selection-placeholder,.ant-select-selection-placeholder ::-ms-backdrop{flex:auto}}.ant-select-arrow{color:inherit;vertical-align:-.125em;display:flex;align-items:center;color:rgba(0,0,0,.25);pointer-events:none}.ant-select-arrow svg{display:inline-block}.ant-select-arrow::before{display:none}.ant-select-arrow .ant-select-arrow-icon{display:block}.ant-select-arrow .anticon{vertical-align:top;transition:transform .3s}.ant-select-arrow .anticon>svg{vertical-align:top}.ant-select-arrow .anticon:not(.ant-select-suffix){pointer-events:auto}.ant-select-disabled .ant-select-arrow{cursor:not-allowed}.ant-select-arrow>:not(:last-child){margin-inline-end:4px}.ant-select-clear{z-index:1;display:inline-block;width:12px;color:rgba(0,0,0,.25);background:#fff;cursor:pointer;opacity:0;transition:color .3s ease,opacity .15s ease;text-rendering:auto}.ant-segmented,.ant-select-dropdown{box-sizing:border-box;line-height:1.66667;font-feature-settings:tnum;border-radius:2px}.ant-select-clear::before{display:block}.ant-select-clear:hover{color:rgba(0,0,0,.45)}.ant-select:hover .ant-select-clear{opacity:1}.ant-select-dropdown{margin:0;color:rgba(0,0,0,.85);list-style:none;z-index:1050;padding:4px 0;overflow:hidden;font-size:12px;font-variant:initial;background-color:#fff;outline:0;box-shadow:0 3px 6px -4px rgba(0,0,0,.12),0 6px 16px 0 rgba(0,0,0,.08),0 9px 28px 8px rgba(0,0,0,.05)}.ant-select-item,.ant-select-item-empty{display:block;min-height:28px;line-height:18px;font-size:12px;position:relative;font-weight:400}.ant-select-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-select-dropdown-placement-topLeft,.ant-select-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-select-dropdown-placement-topLeft{animation-name:antSlideDownIn}.ant-select-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-select-dropdown-placement-bottomLeft{animation-name:antSlideUpOut}.ant-select-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-select-dropdown-placement-topLeft{animation-name:antSlideDownOut}.ant-select-dropdown-empty{color:rgba(0,0,0,.25)}.ant-select-item-empty{padding:5px 8px;color:rgba(0,0,0,.25)}.ant-select-item{padding:5px 8px;color:rgba(0,0,0,.85);cursor:pointer;transition:background .3s ease}.ant-select-item-group{color:rgba(0,0,0,.45);font-size:12px;cursor:default}.ant-select-item-option{display:flex}.ant-select-item-option-content{flex:auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-select-item-option-state{flex:none}.ant-select-item-option-active:not(.ant-select-item-option-disabled){background-color:#f5f5f5}.ant-select-item-option-selected:not(.ant-select-item-option-disabled){color:rgba(0,0,0,.85);font-weight:600;background-color:#e6f7ff}.ant-select-item-option-selected:not(.ant-select-item-option-disabled) .ant-select-item-option-state{color:#1890ff}.ant-select-item-option-disabled,.segmented-disabled-item,.segmented-disabled-item:focus,.segmented-disabled-item:hover{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-select-item-option-disabled.ant-select-item-option-selected{background-color:#f5f5f5}.ant-select-item-option-grouped{padding-left:16px}.ant-select-lg{font-size:14px}.ant-select-borderless .ant-select-selector{background-color:transparent!important;border-color:transparent!important;box-shadow:none!important}.ant-select.ant-select-in-form-item{width:100%}.ant-select-rtl .ant-select-arrow,.ant-select-rtl .ant-select-clear{right:initial;left:7px}.ant-select-dropdown-rtl .ant-select-item-option-grouped{padding-right:16px;padding-left:8px}.ant-select-rtl.ant-select-multiple.ant-select-allow-clear .ant-select-selector,.ant-select-rtl.ant-select-multiple.ant-select-show-arrow .ant-select-selector{padding-right:3px;padding-left:20px}.ant-select-rtl.ant-select-multiple .ant-select-selection-item{text-align:right}.ant-select-rtl.ant-select-multiple .ant-select-selection-item-content{margin-right:0;margin-left:2px;text-align:right}.ant-select-rtl.ant-select-multiple .ant-select-selection-search-mirror{right:0;left:auto}.ant-select-rtl.ant-select-multiple .ant-select-selection-placeholder{right:7px;left:auto}.ant-select-rtl.ant-select-multiple.ant-select-sm .ant-select-selection-placeholder{right:7px}.ant-select-rtl.ant-select-single .ant-select-selector .ant-select-selection-item,.ant-select-rtl.ant-select-single .ant-select-selector .ant-select-selection-placeholder{right:0;left:9px;text-align:right}.ant-select-rtl.ant-select-single.ant-select-show-arrow .ant-select-selection-search{right:7px;left:19px}.ant-select-rtl.ant-select-single.ant-select-show-arrow .ant-select-selection-item,.ant-select-rtl.ant-select-single.ant-select-show-arrow .ant-select-selection-placeholder{padding-right:0;padding-left:15px}.ant-select-rtl.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-search{right:6px}.ant-select-rtl.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-item,.ant-select-rtl.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-placeholder{padding-right:0;padding-left:18px}.ant-select-dropdown{top:100%;left:0;position:relative;width:100%;margin-top:4px;margin-bottom:4px;display:block}.ant-select-dropdown .cdk-virtual-scroll-content-wrapper{right:0}.ant-select-dropdown .full-width{contain:initial}.ant-select-dropdown .full-width .cdk-virtual-scroll-content-wrapper{position:static}.ant-select-dropdown .full-width .cdk-virtual-scroll-spacer{position:absolute;top:0;width:1px}.segmented-item-selected{background-color:#fff;border-radius:2px;box-shadow:0 2px 8px -2px rgba(0,0,0,.05),0 1px 4px -1px rgba(0,0,0,.07),0 0 1px 0 rgba(0,0,0,.08)}.segmented-text-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all}.ant-segmented{margin:0;font-size:12px;font-variant:tabular-nums;list-style:none;display:inline-block;padding:2px;color:rgba(0,0,0,.65);background-color:rgba(0,0,0,.04);transition:all .3s cubic-bezier(.645,.045,.355,1)}.ant-segmented-item-selected,.ant-segmented-item:focus,.ant-segmented-item:hover{color:#262626}.ant-segmented-group{position:relative;display:flex;align-items:stretch;justify-items:flex-start;width:100%}.ant-segmented.ant-segmented-block{display:flex}.ant-segmented.ant-segmented-block .ant-segmented-item{flex:1;min-width:0}.ant-segmented:not(.ant-segmented-disabled):focus,.ant-segmented:not(.ant-segmented-disabled):hover{background-color:rgba(0,0,0,.06)}.ant-segmented-item-selected,.ant-segmented-thumb{background-color:#fff;box-shadow:0 2px 8px -2px rgba(0,0,0,.05),0 1px 4px -1px rgba(0,0,0,.07),0 0 1px 0 rgba(0,0,0,.08);border-radius:2px}.ant-segmented-item{position:relative;text-align:center;cursor:pointer;transition:color .3s cubic-bezier(.645,.045,.355,1)}.ant-segmented-item-label{min-height:24px;padding:0 7px;line-height:24px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all}.ant-segmented-item-icon+*{margin-left:8px/2}.ant-segmented-item-input{position:absolute;top:0;left:0;width:0;height:0;opacity:0;pointer-events:none}.ant-segmented.ant-segmented-lg .ant-segmented-item-label{min-height:28px;padding:0 11px;font-size:14px;line-height:28px}.ant-segmented.ant-segmented-sm .ant-segmented-item-label{min-height:18px;padding:0 7px;line-height:18px}.ant-segmented-item-disabled,.ant-segmented-item-disabled:focus,.ant-segmented-item-disabled:hover{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-segmented-thumb{position:absolute;top:0;left:0;width:0;height:100%;padding:4px 0}.ant-skeleton-header .ant-skeleton-avatar-lg.ant-skeleton-avatar-circle,.ant-skeleton-header .ant-skeleton-avatar-sm.ant-skeleton-avatar-circle,.ant-skeleton-header .ant-skeleton-avatar.ant-skeleton-avatar-circle{border-radius:50%}.ant-segmented-thumb-motion-appear-active{transition:transform .3s cubic-bezier(.645,.045,.355,1),width .3s cubic-bezier(.645,.045,.355,1);will-change:transform,width}.ant-segmented.ant-segmented-rtl .ant-segmented-item-icon{margin-right:0;margin-left:6px}.ant-skeleton{display:table;width:100%}.ant-skeleton-header{display:table-cell;padding-right:8px;vertical-align:top}.ant-skeleton-header .ant-skeleton-avatar{display:inline-block;vertical-align:top;background:rgba(190,190,190,.2);width:28px;height:28px;line-height:28px}.ant-skeleton-header .ant-skeleton-avatar-lg{width:32px;height:32px;line-height:32px}.ant-skeleton-header .ant-skeleton-avatar-sm{width:22px;height:22px;line-height:22px}.ant-skeleton-content{display:table-cell;width:100%;vertical-align:top}.ant-skeleton-content .ant-skeleton-title{width:100%;height:14px;margin-top:8px;background:rgba(190,190,190,.2);border-radius:4px}.ant-skeleton-content .ant-skeleton-title+.ant-skeleton-paragraph{margin-top:20px}.ant-skeleton-content .ant-skeleton-paragraph{padding:0}.ant-skeleton-content .ant-skeleton-paragraph>li{width:100%;height:14px;list-style:none;background:rgba(190,190,190,.2);border-radius:4px}.ant-skeleton-content .ant-skeleton-paragraph>li:last-child:not(:first-child):not(:nth-child(2)){width:61%}.ant-skeleton-content .ant-skeleton-paragraph>li+li{margin-top:12px}.ant-skeleton-with-avatar .ant-skeleton-content .ant-skeleton-title{margin-top:8px}.ant-skeleton-with-avatar .ant-skeleton-content .ant-skeleton-title+.ant-skeleton-paragraph{margin-top:20px}.ant-skeleton-round .ant-skeleton-content .ant-skeleton-paragraph>li,.ant-skeleton-round .ant-skeleton-content .ant-skeleton-title{border-radius:100px}.ant-skeleton.ant-skeleton-active .ant-skeleton-avatar,.ant-skeleton.ant-skeleton-active .ant-skeleton-button,.ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-paragraph>li,.ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-title,.ant-skeleton.ant-skeleton-active .ant-skeleton-image,.ant-skeleton.ant-skeleton-active .ant-skeleton-input{background:linear-gradient(90deg,rgba(190,190,190,.2) 25%,rgba(129,129,129,.24) 37%,rgba(190,190,190,.2) 63%);background-size:400% 100%;animation:ant-skeleton-loading 1.4s ease infinite}.ant-skeleton.ant-skeleton-block,.ant-skeleton.ant-skeleton-block .ant-skeleton-button,.ant-skeleton.ant-skeleton-block .ant-skeleton-input{width:100%}.ant-skeleton-element{display:inline-block;width:auto}.ant-skeleton-element .ant-skeleton-button{display:inline-block;vertical-align:top;background:rgba(190,190,190,.2);border-radius:2px;width:56px;min-width:56px;height:28px;line-height:28px}.ant-skeleton-element .ant-skeleton-button.ant-skeleton-button-circle{width:28px;min-width:28px;border-radius:50%}.ant-skeleton-element .ant-skeleton-button.ant-skeleton-button-round{border-radius:28px}.ant-skeleton-element .ant-skeleton-button-lg{width:64px;min-width:64px;height:32px;line-height:32px}.ant-skeleton-element .ant-skeleton-button-lg.ant-skeleton-button-circle{width:32px;min-width:32px;border-radius:50%}.ant-skeleton-element .ant-skeleton-button-lg.ant-skeleton-button-round{border-radius:32px}.ant-skeleton-element .ant-skeleton-button-sm{width:44px;min-width:44px;height:22px;line-height:22px}.ant-skeleton-element .ant-skeleton-button-sm.ant-skeleton-button-circle{width:22px;min-width:22px;border-radius:50%}.ant-skeleton-element .ant-skeleton-button-sm.ant-skeleton-button-round{border-radius:22px}.ant-image-preview-switch-left,.ant-image-preview-switch-right,.ant-skeleton-element .ant-skeleton-avatar-lg.ant-skeleton-avatar-circle,.ant-skeleton-element .ant-skeleton-avatar-sm.ant-skeleton-avatar-circle,.ant-skeleton-element .ant-skeleton-avatar.ant-skeleton-avatar-circle,.ant-skeleton-element .ant-skeleton-image-svg.ant-skeleton-image-circle,.ant-skeleton-element .ant-skeleton-image.ant-skeleton-image-circle{border-radius:50%}.ant-skeleton-element .ant-skeleton-avatar{display:inline-block;vertical-align:top;background:rgba(190,190,190,.2);width:28px;height:28px;line-height:28px}.ant-skeleton-element .ant-skeleton-avatar-lg{width:32px;height:32px;line-height:32px}.ant-skeleton-element .ant-skeleton-avatar-sm{width:22px;height:22px;line-height:22px}.ant-skeleton-element .ant-skeleton-input{display:inline-block;vertical-align:top;background:rgba(190,190,190,.2);width:140px;min-width:140px;height:28px;line-height:28px}.ant-skeleton-element .ant-skeleton-input-lg{width:160px;min-width:160px;height:32px;line-height:32px}.ant-skeleton-element .ant-skeleton-input-sm{width:110px;min-width:110px;height:22px;line-height:22px}.ant-skeleton-element .ant-skeleton-image{display:flex;align-items:center;justify-content:center;vertical-align:top;background:rgba(190,190,190,.2);width:96px;height:96px;line-height:96px}.ant-skeleton-element .ant-skeleton-image-path{fill:#bfbfbf}.ant-skeleton-element .ant-skeleton-image-svg{width:48px;height:48px;line-height:48px;max-width:192px;max-height:192px}.ant-slider,.ant-spin{font-size:12px;font-variant:tabular-nums;line-height:1.66667;list-style:none;font-feature-settings:tnum;box-sizing:border-box}@keyframes ant-skeleton-loading{0%{background-position:100% 50%}100%{background-position:0 50%}}.ant-skeleton-rtl .ant-skeleton-header{padding-right:0;padding-left:16px}.ant-skeleton-rtl.ant-skeleton.ant-skeleton-active .ant-skeleton-avatar,.ant-skeleton-rtl.ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-paragraph>li,.ant-skeleton-rtl.ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-title{animation-name:ant-skeleton-loading-rtl}@keyframes ant-skeleton-loading-rtl{0%{background-position:0 50%}100%{background-position:100% 50%}}.ant-slider{color:rgba(0,0,0,.85);position:relative;height:12px;margin:10px 6px;padding:4px 0;cursor:pointer;touch-action:none}.ant-slider-vertical{width:12px;height:100%;margin:6px 10px;padding:0 4px}.ant-slider-vertical .ant-slider-rail{width:4px;height:100%}.ant-slider-vertical .ant-slider-track{width:4px}.ant-slider-vertical .ant-slider-handle{margin-top:-6px;margin-left:-5px}.ant-slider-vertical .ant-slider-mark{top:0;left:12px;width:18px;height:100%}.ant-slider-vertical .ant-slider-mark-text{left:4px;white-space:nowrap}.ant-slider-vertical .ant-slider-step{width:4px;height:100%}.ant-slider-rail,.ant-slider-track{height:4px;transition:background-color .3s;position:absolute}.ant-slider-vertical .ant-slider-dot{top:auto;margin-left:-2px}.ant-slider-rtl.ant-slider-vertical .ant-slider-handle{margin-right:-5px;margin-left:0}.ant-slider-rtl.ant-slider-vertical .ant-slider-mark{right:12px;left:auto}.ant-slider-rtl.ant-slider-vertical .ant-slider-mark-text{right:4px;left:auto}.ant-slider-rtl.ant-slider-vertical .ant-slider-dot{right:2px;left:auto}.ant-slider-with-marks{margin-bottom:28px}.ant-slider-rail{width:100%;background-color:#f5f5f5;border-radius:2px}.ant-slider-track{background-color:#91d5ff;border-radius:2px}.ant-slider-handle{position:absolute;width:12px;height:12px;margin-top:-4px;background-color:#fff;border:2px solid #91d5ff;border-radius:50%;box-shadow:0;cursor:pointer;transition:border-color .3s,box-shadow .6s,transform .3s cubic-bezier(.18,.89,.32,1.28)}.ant-slider-handle-dragging{z-index:1}.ant-slider-handle:focus{border-color:#46a6ff;outline:0;box-shadow:0 0 0 5px rgba(24,144,255,.12)}.ant-slider-handle.ant-tooltip-open{border-color:#1890ff}.ant-slider:hover .ant-slider-rail{background-color:#e1e1e1}.ant-slider:hover .ant-slider-track{background-color:#69c0ff}.ant-slider:hover .ant-slider-handle:not(.ant-tooltip-open){border-color:#69c0ff}.ant-slider-mark{position:absolute;top:14px;left:0;width:100%;font-size:12px}.ant-slider-mark-text{position:absolute;display:inline-block;color:rgba(0,0,0,.45);text-align:center;word-break:keep-all;cursor:pointer;user-select:none}.ant-slider-mark-text-active{color:rgba(0,0,0,.85)}.ant-slider-step{position:absolute;width:100%;height:4px;background:0 0;pointer-events:none}.ant-slider-dot{position:absolute;top:-2px;width:8px;height:8px;background-color:#fff;border:2px solid #f0f0f0;border-radius:50%;cursor:pointer}.ant-slider-dot-active{border-color:#8cc8ff}.ant-slider-disabled{cursor:not-allowed}.ant-slider-disabled .ant-slider-rail{background-color:#f5f5f5!important}.ant-slider-disabled .ant-slider-track{background-color:rgba(0,0,0,.25)!important}.ant-slider-disabled .ant-slider-dot,.ant-slider-disabled .ant-slider-handle{background-color:#fff;border-color:rgba(0,0,0,.25)!important;box-shadow:none;cursor:not-allowed}.ant-slider-disabled .ant-slider-dot,.ant-slider-disabled .ant-slider-mark-text{cursor:not-allowed!important}.ant-slider-rtl .ant-slider-mark{right:0;left:auto}.ant-spin{margin:0;padding:0;position:absolute;display:none;color:#1890ff;text-align:center;vertical-align:middle;opacity:0;transition:transform .3s cubic-bezier(.78,.14,.15,.86)}.ant-spin-spinning{position:static;display:inline-block;opacity:1}.ant-spin-nested-loading{position:relative}.ant-spin-nested-loading>div>.ant-spin{position:absolute;top:0;left:0;z-index:4;display:block;width:100%;height:100%;max-height:400px}.ant-spin-nested-loading>div>.ant-spin .ant-spin-dot{position:absolute;top:50%;left:50%;margin:-10px}.ant-spin-nested-loading>div>.ant-spin .ant-spin-text{position:absolute;top:50%;width:100%;padding-top:6px;text-shadow:0 1px 2px #fff}.ant-spin-nested-loading>div>.ant-spin.ant-spin-show-text .ant-spin-dot{margin-top:-20px}.ant-spin-nested-loading>div>.ant-spin-sm .ant-spin-dot{margin:-7px}.ant-spin-nested-loading>div>.ant-spin-sm .ant-spin-text{padding-top:3px}.ant-spin-nested-loading>div>.ant-spin-sm.ant-spin-show-text .ant-spin-dot{margin-top:-17px}.ant-spin-nested-loading>div>.ant-spin-lg .ant-spin-dot{margin:-16px}.ant-spin-nested-loading>div>.ant-spin-lg .ant-spin-text{padding-top:12px}.ant-statistic,.ant-steps{padding:0;line-height:1.66667;font-feature-settings:tnum;font-variant:tabular-nums;list-style:none}.ant-spin-nested-loading>div>.ant-spin-lg.ant-spin-show-text .ant-spin-dot{margin-top:-26px}.ant-spin-container{position:relative;transition:opacity .3s}.ant-spin-container::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;display:none\9;width:100%;height:100%;background:#fff;opacity:0;transition:all .3s;content:'';pointer-events:none}.ant-spin-blur{clear:both;opacity:.5;user-select:none;pointer-events:none}.ant-spin-blur::after{opacity:.4;pointer-events:auto}.ant-spin-tip{color:rgba(0,0,0,.45)}.ant-spin-dot{position:relative;display:inline-block;width:1em;height:1em}.ant-spin-dot-item{position:absolute;display:block;width:9px;height:9px;background-color:#1890ff;border-radius:100%;transform:scale(.75);transform-origin:50% 50%;opacity:.3;animation:antSpinMove 1s infinite linear alternate}.ant-spin-dot-item:nth-child(1){top:0;left:0}.ant-spin-dot-item:nth-child(2){top:0;right:0;animation-delay:.4s}.ant-spin-dot-item:nth-child(3){right:0;bottom:0;animation-delay:.8s}.ant-spin-dot-item:nth-child(4){bottom:0;left:0;animation-delay:1.2s}.ant-spin-dot-spin{transform:rotate(0);animation:antRotate 1.2s infinite linear}.ant-spin-sm .ant-spin-dot{font-size:14px}.ant-spin-sm .ant-spin-dot i{width:6px;height:6px}.ant-spin-lg .ant-spin-dot{font-size:32px}.ant-spin-lg .ant-spin-dot i{width:14px;height:14px}.ant-spin.ant-spin-show-text .ant-spin-text{display:block}@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){.ant-spin-blur{background:#fff;opacity:.5}}@keyframes antSpinMove{to{opacity:1}}@keyframes antRotate{to{transform:rotate(360deg)}}.ant-spin-rtl .ant-spin-dot-spin{transform:rotate(-45deg);animation-name:antRotateRtl}@keyframes antRotateRtl{to{transform:rotate(-405deg)}}nz-spin{display:block}.ant-statistic{box-sizing:border-box;margin:0;color:rgba(0,0,0,.85);font-size:12px}.ant-statistic-title{margin-bottom:0;color:rgba(0,0,0,.45);font-size:12px}.ant-statistic-content{color:rgba(0,0,0,.85);font-size:20px}.ant-statistic-content-value{display:inline-block;direction:ltr}.ant-statistic-rtl,.ant-steps-rtl,.ant-switch-rtl,.ant-table-rtl,.ant-table-wrapper-rtl,.ant-tabs-dropdown-rtl,.ant-tabs-rtl,.ant-tag.ant-tag-rtl,.ant-timeline-rtl,.ant-tooltip-rtl,.ant-transfer-rtl,.ant-typography-rtl,.ant-upload-list-rtl,.ant-upload-rtl{direction:rtl}.ant-statistic-content-prefix,.ant-statistic-content-suffix{display:inline-block}.ant-statistic-content-prefix{margin-right:4px}.ant-statistic-content-suffix{margin-left:4px}.ant-statistic-rtl .ant-statistic-content-prefix{margin-right:0;margin-left:4px}.ant-statistic-rtl .ant-statistic-content-suffix{margin-right:4px;margin-left:0}.ant-steps{box-sizing:border-box;margin:0;color:rgba(0,0,0,.85);display:flex;width:100%;font-size:0;text-align:initial}.ant-steps-item{position:relative;display:inline-block;flex:1;overflow:hidden;vertical-align:top}.ant-steps-item-container{outline:0}.ant-steps-item:last-child{flex:none}.ant-steps-item:last-child>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after,.ant-steps-item:last-child>.ant-steps-item-container>.ant-steps-item-tail{display:none}.ant-steps-item-content,.ant-steps-item-icon{display:inline-block;vertical-align:top}.ant-steps-item-icon{width:24px;height:24px;margin:2px 8px 2px 0;font-size:12px;line-height:24px;text-align:center;border:1px solid rgba(0,0,0,.25);border-radius:24px;transition:background-color .3s,border-color .3s}.ant-steps-item-icon .ant-steps-icon{position:relative;top:0;color:#1890ff;line-height:1}.ant-steps-item-tail{position:absolute;top:12px;left:0;width:100%;padding:0 10px}.ant-steps-item-tail::after{display:inline-block;width:100%;height:1px;background:#f0f0f0;border-radius:1px;transition:background .3s;content:''}.ant-steps-item-title{position:relative;display:inline-block;padding-right:16px;color:rgba(0,0,0,.85);font-size:14px;line-height:28px}.ant-steps-item-description,.ant-steps-item-subtitle{color:rgba(0,0,0,.45);font-size:12px}.ant-steps-item-title::after{position:absolute;top:14px;left:100%;display:block;width:9999px;height:1px;background:#f0f0f0;content:''}.ant-steps-item-subtitle{display:inline;margin-left:8px;font-weight:400}.ant-steps-item-wait .ant-steps-item-icon{background-color:#fff;border-color:rgba(0,0,0,.25)}.ant-steps-item-wait .ant-steps-item-icon>.ant-steps-icon{color:rgba(0,0,0,.25)}.ant-steps-item-wait>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-description,.ant-steps-item-wait>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title{color:rgba(0,0,0,.45)}.ant-steps-item-wait .ant-steps-item-icon>.ant-steps-icon .ant-steps-icon-dot{background:rgba(0,0,0,.25)}.ant-steps-item-wait>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after,.ant-steps-item-wait>.ant-steps-item-container>.ant-steps-item-tail::after{background-color:#f0f0f0}.ant-steps-item-process .ant-steps-item-icon{background-color:#fff;border-color:#1890ff}.ant-steps-item-process .ant-steps-item-icon>.ant-steps-icon{color:#1890ff}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-description,.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title{color:rgba(0,0,0,.85)}.ant-steps-item-process .ant-steps-item-icon>.ant-steps-icon .ant-steps-icon-dot{background:#1890ff}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after,.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-tail::after{background-color:#f0f0f0}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-icon{background:#1890ff}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-icon .ant-steps-icon{color:#fff}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-title{font-weight:500}.ant-steps-item-finish .ant-steps-item-icon{background-color:#fff;border-color:#1890ff}.ant-steps-item-finish>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after,.ant-steps-item-finish>.ant-steps-item-container>.ant-steps-item-tail::after{background-color:#1890ff}.ant-steps-item-finish .ant-steps-item-icon>.ant-steps-icon{color:#1890ff}.ant-steps-item-finish>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title,.ant-switch{color:rgba(0,0,0,.85)}.ant-steps-item-finish .ant-steps-item-icon>.ant-steps-icon .ant-steps-icon-dot{background:#1890ff}.ant-steps-item-finish>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-description{color:rgba(0,0,0,.45)}.ant-steps-item-error .ant-steps-item-icon>.ant-steps-icon,.ant-steps-item-error>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-description,.ant-steps-item-error>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title{color:#ff4d4f}.ant-steps-item-error .ant-steps-item-icon{background-color:#fff;border-color:#ff4d4f}.ant-steps-item-error .ant-steps-item-icon>.ant-steps-icon .ant-steps-icon-dot{background:#ff4d4f}.ant-steps-item-error>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after,.ant-steps-item-error>.ant-steps-item-container>.ant-steps-item-tail::after,.g2-radar__legend-item::after,.number-info:not(:first-child)::after{background-color:#f0f0f0}.ant-steps .ant-steps-item:not(.ant-steps-item-active):not(.ant-steps-item-process)>.ant-steps-item-container[role=button]:hover .ant-steps-item-icon .ant-steps-icon,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button]:hover .ant-steps-item-description,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button]:hover .ant-steps-item-subtitle,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button]:hover .ant-steps-item-title,.ant-steps-item-custom.ant-steps-item-process .ant-steps-item-icon>.ant-steps-icon{color:#1890ff}.ant-steps-item.ant-steps-next-error .ant-steps-item-title::after{background:#ff4d4f}.ant-steps-item-disabled{cursor:not-allowed}.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button],.ant-steps-navigation .ant-steps-item:not(.ant-steps-item-active) .ant-steps-item-container[role=button],.ant-switch{cursor:pointer}.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button] .ant-steps-item-description,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button] .ant-steps-item-icon .ant-steps-icon,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button] .ant-steps-item-subtitle,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button] .ant-steps-item-title{transition:color .3s}.ant-steps .ant-steps-item:not(.ant-steps-item-active):not(.ant-steps-item-process)>.ant-steps-item-container[role=button]:hover .ant-steps-item-icon{border-color:#1890ff}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item{padding-left:16px;white-space:nowrap}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:first-child{padding-left:0}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:last-child .ant-steps-item-title{padding-right:0}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item-tail{display:none}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item-description{max-width:140px;white-space:normal}.ant-steps-item-custom>.ant-steps-item-container>.ant-steps-item-icon{height:auto;background:0 0;border:0}.ant-steps-item-custom>.ant-steps-item-container>.ant-steps-item-icon>.ant-steps-icon{top:2px;left:.5px;width:20px;height:20px;font-size:20px;line-height:20px}.ant-steps:not(.ant-steps-vertical) .ant-steps-item-custom .ant-steps-item-icon{width:auto;background:0 0}.ant-steps-small.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item{padding-left:12px}.ant-steps-small.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:first-child{padding-left:0}.ant-steps-small .ant-steps-item-icon{width:20px;height:20px;margin:0 8px 0 0;font-size:12px;line-height:20px;text-align:center;border-radius:20px}.ant-steps-small .ant-steps-item-title{padding-right:12px;font-size:12px;line-height:20px}.ant-steps-small .ant-steps-item-title::after{top:10px}.ant-steps-small .ant-steps-item-description{color:rgba(0,0,0,.45);font-size:12px}.ant-steps-small .ant-steps-item-tail{top:8px}.ant-steps-small .ant-steps-item-custom .ant-steps-item-icon{width:inherit;height:inherit;line-height:inherit;background:0 0;border:0;border-radius:0}.ant-steps-small .ant-steps-item-custom .ant-steps-item-icon>.ant-steps-icon{font-size:20px;line-height:20px;transform:none}.ant-steps-vertical{display:flex;flex-direction:column}.ant-steps-vertical>.ant-steps-item{display:block;flex:1 0 auto;padding-left:0;overflow:visible}.ant-steps-vertical>.ant-steps-item .ant-steps-item-icon{float:left;margin-right:12px}.ant-steps-vertical>.ant-steps-item .ant-steps-item-content{display:block;min-height:48px;overflow:hidden}.ant-steps-vertical>.ant-steps-item .ant-steps-item-title{line-height:24px}.ant-steps-vertical>.ant-steps-item .ant-steps-item-description{padding-bottom:12px}.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{position:absolute;top:0;left:12px;width:1px;height:100%;padding:30px 0 6px}.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail::after{width:1px;height:100%}.ant-steps-vertical>.ant-steps-item:not(:last-child)>.ant-steps-item-container>.ant-steps-item-tail{display:block}.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after{display:none}.ant-steps-vertical.ant-steps-small .ant-steps-item-container .ant-steps-item-tail{position:absolute;top:0;left:10px;padding:26px 0 6px}.ant-steps-vertical.ant-steps-small .ant-steps-item-container .ant-steps-item-title{line-height:20px}.ant-steps-label-vertical .ant-steps-item{overflow:visible}.ant-steps-label-vertical .ant-steps-item-tail{margin-left:58px;padding:3.5px 24px}.ant-steps-label-vertical .ant-steps-item-content{display:block;width:108px;margin-top:8px;text-align:center}.ant-steps-label-vertical .ant-steps-item-icon{display:inline-block;margin-left:42px}.ant-steps-label-vertical .ant-steps-item-title{padding-right:0;padding-left:0}.ant-steps-label-vertical .ant-steps-item-title::after{display:none}.ant-steps-label-vertical .ant-steps-item-subtitle{display:block;margin-bottom:4px;margin-left:0;line-height:1.66667}.ant-steps-label-vertical.ant-steps-small:not(.ant-steps-dot) .ant-steps-item-icon{margin-left:46px}.ant-steps-dot .ant-steps-item-title,.ant-steps-dot.ant-steps-small .ant-steps-item-title{line-height:1.66667}.ant-steps-dot .ant-steps-item-tail,.ant-steps-dot.ant-steps-small .ant-steps-item-tail{top:4px;width:100%;margin:0 0 0 70px;padding:0}.ant-steps-dot .ant-steps-item-tail::after,.ant-steps-dot.ant-steps-small .ant-steps-item-tail::after{width:calc(100% - 20px);height:3px;margin-left:12px}.ant-steps-dot .ant-steps-item:first-child .ant-steps-icon-dot,.ant-steps-dot.ant-steps-small .ant-steps-item:first-child .ant-steps-icon-dot{left:2px}.ant-steps-dot .ant-steps-item-icon,.ant-steps-dot.ant-steps-small .ant-steps-item-icon{width:8px;height:8px;margin-left:67px;padding-right:0;line-height:8px;background:0 0;border:0}.ant-steps-dot .ant-steps-item-icon .ant-steps-icon-dot,.ant-steps-dot.ant-steps-small .ant-steps-item-icon .ant-steps-icon-dot{position:relative;float:left;width:100%;height:100%;border-radius:100px;transition:all .3s}.ant-steps-dot .ant-steps-item-icon .ant-steps-icon-dot::after,.ant-steps-dot.ant-steps-small .ant-steps-item-icon .ant-steps-icon-dot::after{position:absolute;top:-12px;left:-26px;width:60px;height:32px;background:rgba(0,0,0,.001);content:''}.ant-steps-dot .ant-steps-item-content,.ant-steps-dot.ant-steps-small .ant-steps-item-content{width:140px}.ant-steps-dot .ant-steps-item-process .ant-steps-item-icon,.ant-steps-dot.ant-steps-small .ant-steps-item-process .ant-steps-item-icon{position:relative;top:-1px;width:10px;height:10px;line-height:10px;background:0 0}.ant-steps-dot .ant-steps-item-process .ant-steps-icon:first-child .ant-steps-icon-dot,.ant-steps-dot.ant-steps-small .ant-steps-item-process .ant-steps-icon:first-child .ant-steps-icon-dot{left:0}.ant-steps-vertical.ant-steps-dot .ant-steps-item-icon{margin-top:13px;margin-left:0;background:0 0}.ant-steps-vertical.ant-steps-dot .ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{top:6.5px;left:-9px;margin:0;padding:22px 0 4px}.ant-steps-vertical.ant-steps-dot.ant-steps-small .ant-steps-item-icon{margin-top:10px}.ant-steps-vertical.ant-steps-dot.ant-steps-small .ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{top:3.5px}.ant-steps-vertical.ant-steps-dot .ant-steps-item:first-child .ant-steps-icon-dot{left:0}.ant-steps-vertical.ant-steps-dot .ant-steps-item-content{width:inherit}.ant-steps-vertical.ant-steps-dot .ant-steps-item-process .ant-steps-item-container .ant-steps-item-icon .ant-steps-icon-dot{top:-1px;left:-1px}.ant-steps-navigation{padding-top:12px}.ant-steps-navigation.ant-steps-small .ant-steps-item-container{margin-left:-12px}.ant-steps-navigation .ant-steps-item{overflow:visible;text-align:center}.ant-steps-navigation .ant-steps-item-container{display:inline-block;height:100%;margin-left:-16px;padding-bottom:12px;text-align:left;transition:opacity .3s}.ant-steps-navigation .ant-steps-item-container .ant-steps-item-title::after,.ant-steps-navigation .ant-steps-item:last-child::after{display:none}.ant-steps-navigation .ant-steps-item-container .ant-steps-item-content{max-width:auto}.ant-steps-navigation .ant-steps-item-container .ant-steps-item-title{max-width:100%;padding-right:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-steps-navigation .ant-steps-item:not(.ant-steps-item-active) .ant-steps-item-container[role=button]:hover{opacity:.85}.ant-steps-navigation .ant-steps-item:last-child{flex:1}.ant-steps-navigation .ant-steps-item::after{position:absolute;top:50%;left:100%;display:inline-block;width:12px;height:12px;margin-top:-14px;margin-left:-2px;border:1px solid rgba(0,0,0,.25);border-bottom:none;border-left:none;transform:rotate(45deg);content:''}.ant-steps-navigation .ant-steps-item::before{position:absolute;bottom:0;left:50%;display:inline-block;width:0;height:2px;background-color:#1890ff;transition:width .3s,left .3s;transition-timing-function:ease-out;content:''}.ant-steps-navigation .ant-steps-item.ant-steps-item-active::before{left:0;width:100%}.ant-steps-navigation.ant-steps-vertical>.ant-steps-item{margin-right:0!important}.ant-steps-navigation.ant-steps-vertical>.ant-steps-item::before{display:none}.ant-steps-navigation.ant-steps-vertical>.ant-steps-item.ant-steps-item-active::before{top:0;right:0;left:unset;display:block;width:3px;height:calc(100% - 24px)}.ant-steps-navigation.ant-steps-vertical>.ant-steps-item::after{position:relative;top:-2px;left:50%;display:block;width:8px;height:8px;margin-bottom:8px;text-align:center;transform:rotate(135deg)}.ant-steps-navigation.ant-steps-horizontal>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail,.ant-steps-navigation.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{visibility:hidden}.ant-steps.ant-steps-rtl .ant-steps-item-icon{margin-right:0;margin-left:8px}.ant-steps-rtl .ant-steps-item-tail{right:0;left:auto}.ant-steps-rtl .ant-steps-item-title{padding-right:0;padding-left:16px}.ant-steps-rtl .ant-steps-item-title .ant-steps-item-subtitle{float:left;margin-right:8px;margin-left:0}.ant-steps-rtl .ant-steps-item-title::after{right:100%;left:auto}.ant-steps-rtl.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item{padding-right:16px;padding-left:0}.ant-steps-rtl.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:first-child{padding-right:0}.ant-steps-rtl.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:last-child .ant-steps-item-title{padding-left:0}.ant-steps-rtl .ant-steps-item-custom .ant-steps-item-icon>.ant-steps-icon{right:.5px;left:auto}.ant-steps-rtl.ant-steps-navigation.ant-steps-small .ant-steps-item-container{margin-right:-12px;margin-left:0}.ant-steps-rtl.ant-steps-navigation .ant-steps-item-container{margin-right:-16px;margin-left:0;text-align:right}.ant-steps-rtl.ant-steps-navigation .ant-steps-item-container .ant-steps-item-title{padding-left:0}.ant-steps-rtl.ant-steps-navigation .ant-steps-item::after{right:100%;left:auto;margin-right:-2px;margin-left:0;transform:rotate(225deg)}.ant-steps-rtl.ant-steps-small.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item{padding-right:12px;padding-left:0}.ant-steps-rtl.ant-steps-small.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:first-child{padding-right:0}.ant-steps-rtl.ant-steps-small .ant-steps-item-title{padding-right:0;padding-left:12px}.ant-steps-rtl.ant-steps-vertical>.ant-steps-item .ant-steps-item-icon{float:right;margin-right:0;margin-left:12px}.ant-steps-rtl.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{right:12px;left:auto}.ant-steps-rtl.ant-steps-vertical.ant-steps-small .ant-steps-item-container .ant-steps-item-tail{right:10px;left:auto}.ant-steps-rtl.ant-steps-label-vertical .ant-steps-item-title{padding-left:0}.ant-steps-rtl.ant-steps-dot .ant-steps-item-tail,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-tail{margin:0 70px 0 0}.ant-steps-rtl.ant-steps-dot .ant-steps-item-tail::after,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-tail::after{margin-right:12px;margin-left:0}.ant-steps-rtl.ant-steps-dot .ant-steps-item:first-child .ant-steps-icon-dot,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item:first-child .ant-steps-icon-dot{right:2px;left:auto}.ant-steps-rtl.ant-steps-dot .ant-steps-item-icon,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-icon{margin-right:67px;margin-left:0}.ant-steps-rtl.ant-steps-dot .ant-steps-item-icon .ant-steps-icon-dot,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-icon .ant-steps-icon-dot{float:right}.ant-steps-rtl.ant-steps-dot .ant-steps-item-icon .ant-steps-icon-dot::after,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-icon .ant-steps-icon-dot::after{right:-26px;left:auto}.ant-steps-rtl.ant-steps-vertical.ant-steps-dot .ant-steps-item-icon{margin-right:0;margin-left:16px}.ant-steps-rtl.ant-steps-vertical.ant-steps-dot .ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{right:-9px;left:auto}.ant-steps-rtl.ant-steps-vertical.ant-steps-dot .ant-steps-item:first-child .ant-steps-icon-dot{right:0;left:auto}.ant-steps-rtl.ant-steps-vertical.ant-steps-dot .ant-steps-item-process .ant-steps-icon-dot{right:-2px;left:auto}.ant-steps-rtl.ant-steps-with-progress.ant-steps-horizontal.ant-steps-label-horizontal .ant-steps-item:first-child{padding-right:4px;padding-left:0}.ant-steps-rtl.ant-steps-with-progress.ant-steps-horizontal.ant-steps-label-horizontal .ant-steps-item:first-child.ant-steps-item-active{padding-right:4px}.ant-steps-with-progress .ant-steps-item{padding-top:4px}.ant-steps-with-progress .ant-steps-item .ant-steps-item-tail{top:4px!important}.ant-steps-with-progress.ant-steps-horizontal .ant-steps-item:first-child{padding-bottom:4px;padding-left:4px}.ant-steps-with-progress .ant-steps-item-icon{position:relative}.ant-steps-with-progress .ant-steps-item-icon .ant-progress{position:absolute;top:-5px;right:-5px;bottom:-5px;left:-5px}.ant-switch{margin:0;padding:0;font-size:12px;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;position:relative;display:inline-block;box-sizing:border-box;min-width:40px;height:20px;line-height:20px;vertical-align:middle;background-image:linear-gradient(to right,rgba(0,0,0,.25),rgba(0,0,0,.25)),linear-gradient(to right,#fff,#fff);border:0;border-radius:100px;transition:all .2s;user-select:none}.ant-switch-checked,.ant-tabs-ink-bar{background:#1890ff}.ant-switch:focus{outline:0;box-shadow:0 0 0 2px rgba(0,0,0,.1)}.ant-switch-checked:focus{box-shadow:0 0 0 2px #e6f7ff}.ant-switch:focus:hover{box-shadow:none}.ant-switch-disabled,.ant-switch-loading{cursor:not-allowed;opacity:.4}.ant-switch-disabled *,.ant-switch-loading *{box-shadow:none;cursor:not-allowed}.ant-switch-inner{display:block;margin:0 4px 0 22px;color:#fff;font-size:12px;transition:margin .2s}.ant-switch-handle,.ant-switch-handle::before{transition:all .2s ease-in-out;position:absolute}.ant-switch-checked .ant-switch-inner{margin:0 22px 0 4px}.ant-switch-handle{top:2px;left:2px;width:16px;height:16px}.ant-switch-handle::before{top:0;right:0;bottom:0;left:0;background-color:#fff;border-radius:8px;box-shadow:0 2px 4px 0 rgba(0,35,11,.2);content:''}.ant-switch-checked .ant-switch-handle{left:calc(100% - 16px - 2px)}.ant-switch:not(.ant-switch-disabled):active .ant-switch-handle::before{right:-30%;left:0}.ant-switch:not(.ant-switch-disabled):active.ant-switch-checked .ant-switch-handle::before{right:0;left:-30%}.ant-switch-loading-icon.anticon{position:relative;top:2px;color:rgba(0,0,0,.65);vertical-align:top}.ant-switch-checked .ant-switch-loading-icon{color:#1890ff}.ant-switch-small{min-width:24px;height:14px;line-height:14px}.ant-switch-small .ant-switch-inner{margin:0 5px 0 16px;font-size:12px}.ant-switch-small .ant-switch-handle{width:10px;height:10px}.ant-switch-small .ant-switch-loading-icon{top:.5px;font-size:9px}.ant-table.ant-table-middle,.ant-table.ant-table-small{font-size:12px}.ant-switch-small.ant-switch-checked .ant-switch-inner{margin:0 16px 0 5px}.ant-switch-small.ant-switch-checked .ant-switch-handle{left:calc(100% - 10px - 2px)}.ant-switch-rtl .ant-switch-inner{margin:0 22px 0 4px}.ant-switch-rtl .ant-switch-handle{right:2px;left:auto}.ant-switch-rtl:not(.ant-switch-rtl-disabled):active .ant-switch-handle::before{right:0;left:-30%}.ant-switch-rtl:not(.ant-switch-rtl-disabled):active.ant-switch-checked .ant-switch-handle::before{right:-30%;left:0}.ant-switch-rtl.ant-switch-checked .ant-switch-inner{margin:0 4px 0 22px}.ant-switch-rtl.ant-switch-checked .ant-switch-handle{right:calc(100% - 16px - 2px)}.ant-switch-rtl.ant-switch-small.ant-switch-checked .ant-switch-handle{right:calc(100% - 10px - 2px)}nz-switch{display:inline-block}.ant-table-wrapper::after,.ant-table-wrapper::before{display:table;content:''}.ant-table.ant-table-middle .ant-table-footer,.ant-table.ant-table-middle .ant-table-tbody>tr>td,.ant-table.ant-table-middle .ant-table-thead>tr>th,.ant-table.ant-table-middle .ant-table-title,.ant-table.ant-table-middle tfoot>tr>td,.ant-table.ant-table-middle tfoot>tr>th{padding:8px}.ant-table.ant-table-middle .ant-table-filter-trigger{margin-right:-4px}.ant-table.ant-table-middle .ant-table-expanded-row-fixed{margin:-8px}.ant-table.ant-table-middle .ant-table-tbody .ant-table-wrapper:only-child .ant-table{margin:-8px -8px -8px 25px}.ant-table.ant-table-middle .ant-table-selection-column{padding-inline-start:2px}.ant-table.ant-table-small .ant-table-footer,.ant-table.ant-table-small .ant-table-tbody>tr>td,.ant-table.ant-table-small .ant-table-thead>tr>th,.ant-table.ant-table-small .ant-table-title,.ant-table.ant-table-small tfoot>tr>td,.ant-table.ant-table-small tfoot>tr>th{padding:4px}.ant-table.ant-table-small .ant-table-filter-trigger{margin-right:-2px}.ant-table.ant-table-small .ant-table-expanded-row-fixed{margin:-4px}.ant-table.ant-table-small .ant-table-tbody .ant-table-wrapper:only-child .ant-table{margin:-4px -4px -4px 21px}.ant-table.ant-table-small .ant-table-selection-column{padding-inline-start:1px}.ant-table,.ant-table-filter-dropdown{padding:0;font-size:12px;box-sizing:border-box;font-feature-settings:tnum}.ant-table.ant-table-bordered>.ant-table-title{border:1px solid #f0f0f0;border-bottom:0}.ant-table-thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr:not(:last-child)>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr:not(:last-child)>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr:not(:last-child)>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr:not(:last-child)>th{border-bottom:1px solid #f0f0f0}.ant-table.ant-table-bordered>.ant-table-container{border-left:1px solid #f0f0f0}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr>th{border-right:1px solid #f0f0f0}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr>th::before,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr>th::before,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr>th::before,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr>th::before{background-color:transparent!important}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tfoot>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tfoot>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tfoot>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tfoot>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr>.ant-table-cell-fix-right-first::after{border-right:1px solid #f0f0f0}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-12px -9px}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>td>.ant-table-expanded-row-fixed::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>td>.ant-table-expanded-row-fixed::after{position:absolute;top:0;right:1px;bottom:0;border-right:1px solid #f0f0f0;content:''}.ant-table.ant-table-bordered.ant-table-scroll-horizontal>.ant-table-container>.ant-table-body>table>tbody>tr.ant-table-expanded-row>td,.ant-table.ant-table-bordered.ant-table-scroll-horizontal>.ant-table-container>.ant-table-body>table>tbody>tr.ant-table-placeholder>td{border-right:0}.ant-table.ant-table-bordered.ant-table-middle>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered.ant-table-middle>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-8px -9px}.ant-table.ant-table-bordered.ant-table-small>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered.ant-table-small>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-4px -5px}.ant-table.ant-table-bordered>.ant-table-footer{border:1px solid #f0f0f0;border-top:0}.ant-table-cell .ant-table-container:first-child{border-top:0}.ant-table-cell-scrollbar:not([rowspan]){box-shadow:0 1px 0 1px #fafafa}.ant-table-wrapper{clear:both;max-width:100%}.ant-table-wrapper::after{clear:both}.ant-table{margin:0;color:rgba(0,0,0,.85);font-variant:tabular-nums;line-height:1.66667;list-style:none;position:relative;background:#fff;border-radius:2px}.ant-table-footer,.ant-table-thead>tr>th{color:rgba(0,0,0,.85);background:#fafafa}.ant-table table,.ant-table-title{border-radius:2px 2px 0 0}.ant-table table{width:100%;text-align:left;border-collapse:separate;border-spacing:0}.ant-table tfoot>tr>td,.ant-table tfoot>tr>th,.ant-table-tbody>tr>td,.ant-table-thead>tr>th{position:relative;padding:12px 8px;overflow-wrap:break-word}.ant-table-cell-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all}.ant-table-cell-ellipsis.ant-table-cell-fix-left-last,.ant-table-cell-ellipsis.ant-table-cell-fix-right-first{overflow:visible}.ant-table-cell-ellipsis.ant-table-cell-fix-left-last .ant-table-cell-content,.ant-table-cell-ellipsis.ant-table-cell-fix-right-first .ant-table-cell-content{display:block;overflow:hidden;text-overflow:ellipsis}.ant-table-cell-ellipsis .ant-table-column-title{overflow:hidden;text-overflow:ellipsis;word-break:keep-all}.ant-table-footer,.ant-table-title{padding:12px 8px}.ant-table-thead>tr>th{position:relative;font-weight:500;text-align:left;transition:background .3s ease}.ant-table-thead>tr>th[colspan]:not([colspan='1']){text-align:center}.ant-table-thead>tr>th:not(:last-child):not(.ant-table-selection-column):not(.ant-table-row-expand-icon-cell):not([colspan])::before{position:absolute;top:50%;right:0;width:1px;height:1.6em;background-color:rgba(0,0,0,.06);transform:translateY(-50%);transition:background-color .3s;content:''}.ant-table-thead>tr:not(:last-child)>th[colspan]{border-bottom:0}.ant-table-tbody>tr>td{border-bottom:1px solid #f0f0f0;transition:background .3s}.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td,.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td,.notice-icon .ant-list-item:last-child{border-bottom:0}.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table,.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table{margin:-12px -8px -12px 25px}.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:first-child,.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:last-child,.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:first-child,.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:last-child{border-radius:0}.ant-table-tbody>tr.ant-table-row:hover>td,.ant-table-tbody>tr>td.ant-table-cell-row-hover{background:#fafafa}.ant-table-tbody>tr.ant-table-row-selected>td{background:#e6f7ff;border-color:rgba(0,0,0,.03)}.ant-table-tbody>tr.ant-table-row-selected:hover>td{background:#dcf4ff}.ant-table-summary{position:relative;z-index:2;background:#fff}div.ant-table-summary{box-shadow:0 -1px 0 #f0f0f0}.ant-table-summary>tr>td,.ant-table-summary>tr>th{border-bottom:1px solid #f0f0f0}.ant-table-pagination.ant-pagination{margin:16px 0}.ant-table-pagination{display:flex;flex-wrap:wrap;row-gap:4px}.ant-table-pagination>*{flex:none}.ant-table-pagination-left{justify-content:flex-start}.ant-table-pagination-center{justify-content:center}.ant-table-pagination-right{justify-content:flex-end}.ant-table-thead th.ant-table-column-has-sorters{outline:0;cursor:pointer;transition:all .3s}.ant-table-thead th.ant-table-column-has-sorters:hover{background:rgba(0,0,0,.04)}.ant-table-thead th.ant-table-column-has-sorters:hover::before{background-color:transparent!important}.ant-table-thead th.ant-table-column-has-sorters:focus-visible{color:#1890ff}.ant-table-thead th.ant-table-column-has-sorters.ant-table-cell-fix-left:hover,.ant-table-thead th.ant-table-column-has-sorters.ant-table-cell-fix-right:hover,.ant-table-thead th.ant-table-column-sort{background:#f5f5f5}.ant-table-thead th.ant-table-column-sort::before{background-color:transparent!important}td.ant-table-column-sort{background:#fafafa}.ant-table-column-title{position:relative;z-index:1;flex:1}.ant-table-column-sorters{display:flex;flex:auto;align-items:center;justify-content:space-between}.ant-table-column-sorters::after{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;content:''}.ant-table-column-sorter{margin-left:4px;color:#bfbfbf;font-size:0;transition:color .3s}.ant-table-column-sorter-inner{display:inline-flex;flex-direction:column;align-items:center}.ant-table-column-sorter-down,.ant-table-column-sorter-up{font-size:11px}.ant-table-column-sorter-down.active,.ant-table-column-sorter-up.active{color:#1890ff}.ant-table-column-sorter-up+.ant-table-column-sorter-down{margin-top:-.3em}.ant-table-column-sorters:hover .ant-table-column-sorter{color:#a6a6a6}.ant-table-filter-column{display:flex;justify-content:space-between}.ant-table-filter-trigger{position:relative;display:flex;align-items:center;margin:-4px -4px -4px 4px;padding:0 4px;color:#bfbfbf;font-size:12px;border-radius:2px;cursor:pointer;transition:all .3s}.ant-table-filter-trigger:hover{color:rgba(0,0,0,.45);background:rgba(0,0,0,.04)}.ant-table-filter-trigger.active{color:#1890ff}.ant-table-filter-dropdown{margin:0;color:rgba(0,0,0,.85);font-variant:tabular-nums;line-height:1.66667;list-style:none;min-width:120px;background-color:#fff;border-radius:2px;box-shadow:0 3px 6px -4px rgba(0,0,0,.12),0 6px 16px 0 rgba(0,0,0,.08),0 9px 28px 8px rgba(0,0,0,.05)}.ant-table-filter-dropdown .ant-dropdown-menu{max-height:264px;overflow-x:hidden;border:0;box-shadow:none}.ant-table-filter-dropdown .ant-dropdown-menu:empty::after{display:block;padding:8px 0;color:rgba(0,0,0,.25);font-size:12px;text-align:center;content:'Not Found'}.ant-table-filter-dropdown-tree{padding:8px 8px 0}.ant-table-filter-dropdown-tree .ant-tree-treenode .ant-tree-node-content-wrapper:hover{background-color:#f5f5f5}.ant-table-filter-dropdown-tree .ant-tree-treenode-checkbox-checked .ant-tree-node-content-wrapper,.ant-table-filter-dropdown-tree .ant-tree-treenode-checkbox-checked .ant-tree-node-content-wrapper:hover{background-color:#bae7ff}.ant-table-filter-dropdown-search{padding:8px;border-bottom:1px #f0f0f0 solid}.ant-table-filter-dropdown-search-input input{min-width:140px}.ant-table-filter-dropdown-search-input .anticon{color:rgba(0,0,0,.25)}.ant-table-filter-dropdown-checkall{width:100%;margin-bottom:4px;margin-left:4px}.ant-table-filter-dropdown-submenu>ul{max-height:calc(100vh - 130px);overflow-x:hidden;overflow-y:auto}.ant-table-custom-column .ant-table-tbody .ant-table-row td,.ant-table-custom-column .ant-table-thead .ant-table-row th,.ant-table-filter-dropdown-btns{overflow:hidden}.ant-table-filter-dropdown .ant-checkbox-wrapper+span,.ant-table-filter-dropdown-submenu .ant-checkbox-wrapper+span{padding-left:8px}.ant-table-filter-dropdown-btns{display:flex;justify-content:space-between;padding:7px 8px;background-color:inherit;border-top:1px solid #f0f0f0}.ant-table-selection-col{width:32px}.ant-table-bordered .ant-table-selection-col{width:50px}table tr td.ant-table-selection-column,table tr th.ant-table-selection-column{padding-right:4px;padding-left:4px;text-align:center}table tr td.ant-table-selection-column .ant-radio-wrapper,table tr th.ant-table-selection-column .ant-radio-wrapper{margin-right:0}table tr th.ant-table-selection-column.ant-table-cell-fix-left{z-index:3}table tr th.ant-table-selection-column::after{background-color:transparent!important}.ant-table-selection{position:relative;display:inline-flex;flex-direction:column}.ant-table-selection-extra{position:absolute;top:0;z-index:1;cursor:pointer;transition:all .3s;margin-inline-start:100%;padding-inline-start:2px}.ant-table-selection-extra .anticon{color:#bfbfbf;font-size:10px}.ant-table-selection-extra .anticon:hover{color:#a6a6a6}.ant-table-expand-icon-col{width:48px}.ant-table-row-expand-icon-cell{text-align:center}.ant-table-row-indent{float:left;height:1px}.ant-table-row-expand-icon{text-decoration:none;cursor:pointer;position:relative;display:inline-flex;float:left;box-sizing:border-box;width:17px;height:17px;padding:0;color:inherit;line-height:17px;background:#fff;border:1px solid #f0f0f0;border-radius:2px;outline:0;transform:scale(.82352941);transition:all .3s;user-select:none}.ant-table-row-expand-icon::after,.ant-tree-rtl .ant-tree-switcher_close .ant-tree-switcher-icon svg,.ant-tree-select-dropdown-rtl .ant-select-tree .ant-select-tree-switcher_close .ant-select-tree-switcher-icon svg{transform:rotate(90deg)}.ant-table-row-expand-icon:focus,.ant-table-row-expand-icon:hover{color:#40a9ff}.ant-table-row-expand-icon:active{color:#096dd9}.ant-table-row-expand-icon:active,.ant-table-row-expand-icon:focus,.ant-table-row-expand-icon:hover{border-color:currentcolor}.ant-table-row-expand-icon::after,.ant-table-row-expand-icon::before{position:absolute;background:currentcolor;transition:transform .3s ease-out;content:''}.ant-table-row-expand-icon::before{top:7px;right:3px;left:3px;height:1px}.ant-table-row-expand-icon::after{top:3px;bottom:3px;left:7px;width:1px}.ant-table-row-expand-icon-collapsed::before{transform:rotate(-180deg)}.ant-table-row-expand-icon-collapsed::after{transform:rotate(0)}.ant-table-row-expand-icon-spaced{background:0 0;border:0;visibility:hidden}.ant-table-row-expand-icon-spaced::after,.ant-table-row-expand-icon-spaced::before{display:none;content:none}.ant-table-row-indent+.ant-table-row-expand-icon{margin-top:1.5px;margin-right:4px}tr.ant-table-expanded-row:hover>td,tr.ant-table-expanded-row>td{background:#fbfbfb}tr.ant-table-expanded-row .ant-descriptions-view{display:flex}tr.ant-table-expanded-row .ant-descriptions-view table{flex:auto;width:auto}.ant-table .ant-table-expanded-row-fixed{position:relative;margin:-12px -8px;padding:12px 8px}.ant-table-tbody>tr.ant-table-placeholder{text-align:center}.ant-table-empty .ant-table-tbody>tr.ant-table-placeholder{color:rgba(0,0,0,.25)}.ant-table-tbody>tr.ant-table-placeholder:hover>td{background:#fff}.ant-table-cell-fix-left,.ant-table-cell-fix-right{position:sticky!important;z-index:2;background:#fff}.ant-table .ant-table-container::after,.ant-table .ant-table-container::before,.ant-table-cell-fix-left-first::after,.ant-table-cell-fix-left-last::after,.ant-table-cell-fix-right-first::after,.ant-table-cell-fix-right-last::after{position:absolute;width:30px;transition:box-shadow .3s;top:0;pointer-events:none;content:''}.ant-table-cell-fix-left-first::after,.ant-table-cell-fix-left-last::after{right:0;bottom:-1px;transform:translateX(100%)}.ant-table-cell-fix-right-first::after,.ant-table-cell-fix-right-last::after{bottom:-1px;left:0;transform:translateX(-100%)}.ant-table .ant-table-container::after,.ant-table .ant-table-container::before{bottom:0;z-index:1}.ant-table .ant-table-container::before{left:0}.ant-table .ant-table-container::after{right:0}.ant-table-ping-left:not(.ant-table-has-fix-left) .ant-table-container{position:relative}.ant-table-ping-left .ant-table-cell-fix-left-first::after,.ant-table-ping-left .ant-table-cell-fix-left-last::after,.ant-table-ping-left:not(.ant-table-has-fix-left) .ant-table-container::before{box-shadow:inset 10px 0 8px -8px rgba(0,0,0,.15)}.ant-table-ping-left .ant-table-cell-fix-left-last::before{background-color:transparent!important}.ant-table-ping-right:not(.ant-table-has-fix-right) .ant-table-container{position:relative}.ant-table-sticky-holder,.ant-table-sticky-scroll{position:sticky;z-index:calc(2 + 1);background:#fff}.ant-table-ping-right .ant-table-cell-fix-right-first::after,.ant-table-ping-right .ant-table-cell-fix-right-last::after,.ant-table-ping-right:not(.ant-table-has-fix-right) .ant-table-container::after{box-shadow:inset -10px 0 8px -8px rgba(0,0,0,.15)}.ant-table-sticky-scroll{bottom:0;display:flex;align-items:center;border-top:1px solid #f0f0f0;opacity:.6}.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-left::before,.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-right::after,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-left::before,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-right::after,.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-bottom::after,.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-top::before,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-bottom::after,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-top::before,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-bottom::after,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-top::before,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-bottom::after,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-top::before,.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-left::before,.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-right::after,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-left::before,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-right::after,.ant-tag{opacity:1}.ant-table-sticky-scroll:hover{transform-origin:center bottom}.ant-table-sticky-scroll-bar{height:8px;background-color:rgba(0,0,0,.35);border-radius:4px}.ant-table-sticky-scroll-bar-active,.ant-table-sticky-scroll-bar:hover{background-color:rgba(0,0,0,.8)}.ant-table-custom-column col{width:auto!important;min-width:auto!important;display:none}.ant-table-custom-column .ant-table-thead .ant-table-row{width:100%;display:flex;justify-content:space-between}.ant-table-custom-column .ant-table-tbody .ant-table-row{width:100%;display:flex;justify-content:space-between}.ant-table-custom-column .ant-table-tbody .ant-table-row .nz-disable-td{width:100%}.ant-table-custom-column .ant-table-fixed tr .ant-table-cell-fix-left-last,.ant-table-custom-column .ant-table-fixed tr .ant-table-cell-fix-right-first{overflow:visible}.ant-table-custom-column .ant-table-fixed .ant-table-row{width:100%}@media all and (-ms-high-contrast:none){.ant-table-ping-left .ant-table-cell-fix-left-last::after,.ant-table-ping-right .ant-table-cell-fix-right-first::after{box-shadow:none!important}}.ant-table-title+.ant-table-container{border-top-left-radius:0;border-top-right-radius:0}.ant-table-title+.ant-table-container table>thead>tr:first-child th:first-child,.ant-table-title+.ant-table-container table>thead>tr:first-child th:last-child{border-radius:0}.ant-table-container,.ant-table-container table>thead>tr:first-child th:first-child{border-top-left-radius:2px}.ant-table-container,.ant-table-container table>thead>tr:first-child th:last-child{border-top-right-radius:2px}.ant-table-footer{border-radius:0 0 2px 2px}.ant-table-wrapper-rtl .ant-table table{text-align:right}.ant-table-wrapper-rtl .ant-table-thead>tr>th[colspan]:not([colspan='1']){text-align:center}.ant-table-wrapper-rtl .ant-table-thead>tr>th:not(:last-child):not(.ant-table-selection-column):not(.ant-table-row-expand-icon-cell):not([colspan])::before{right:auto;left:0}.ant-table-wrapper-rtl .ant-table-thead>tr>th{text-align:right}.ant-table-wrapper-rtl .ant-table thead>tr>th.ant-table-selection-column,.ant-table-wrapper-rtl .ant-table-selection{text-align:center}.ant-table-tbody>tr .ant-table-wrapper:only-child .ant-table.ant-table-rtl{margin:-12px 25px -12px -8px}.ant-table-wrapper.ant-table-wrapper-rtl .ant-table-pagination-left{justify-content:flex-end}.ant-table-wrapper.ant-table-wrapper-rtl .ant-table-pagination-right{justify-content:flex-start}.ant-table-wrapper-rtl .ant-table-column-sorter{margin-right:4px;margin-left:0}.ant-table-wrapper-rtl .ant-table-filter-column-title{padding:12px 8px 12px 2.3em}.ant-table-rtl .ant-table-thead tr th.ant-table-column-has-sorters .ant-table-filter-column-title{padding:0 0 0 2.3em}.ant-table-wrapper-rtl .ant-table-filter-trigger{margin:-4px 4px -4px -4px}.ant-dropdown-menu-submenu-rtl.ant-table-filter-dropdown .ant-checkbox-wrapper+span,.ant-dropdown-menu-submenu-rtl.ant-table-filter-dropdown-submenu .ant-checkbox-wrapper+span,.ant-dropdown-rtl .ant-table-filter-dropdown .ant-checkbox-wrapper+span,.ant-dropdown-rtl .ant-table-filter-dropdown-submenu .ant-checkbox-wrapper+span{padding-right:8px;padding-left:0}.ant-table-wrapper-rtl .ant-table-row-expand-icon,.ant-table-wrapper-rtl .ant-table-row-indent{float:right}.ant-table-wrapper-rtl .ant-table-row-indent+.ant-table-row-expand-icon{margin-right:0;margin-left:4px}.ant-table-wrapper-rtl .ant-table-row-expand-icon::after{transform:rotate(-90deg)}.ant-table-wrapper-rtl .ant-table-row-expand-icon-collapsed::before{transform:rotate(180deg)}.ant-table-wrapper-rtl .ant-table-row-expand-icon-collapsed::after{transform:rotate(0)}nz-table,nz-table-inner-default,nz-table-inner-scroll,nz-table-selection,nz-table-title-footer{display:block}nz-filter-trigger{display:inline-flex}.nz-table-out-bordered>.ant-table-container,.nz-table-out-bordered>.ant-table-title{border:1px solid #f0f0f0;border-bottom:0}.nz-table-out-bordered>.ant-table-footer{border:1px solid #f0f0f0;border-top:0}cdk-virtual-scroll-viewport.ant-table-body{overflow-y:scroll}.nz-table-hide-scrollbar{scrollbar-color:#fafafa #fafafa}.nz-table-hide-scrollbar::-webkit-scrollbar{background-color:#fafafa}.ant-table.ant-table-small .nz-table-hide-scrollbar{scrollbar-color:#fafafa #fafafa}.ant-table.ant-table-small .nz-table-hide-scrollbar::-webkit-scrollbar{background-color:transparent}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>thead>tr>th{border-right:1px solid #f0f0f0}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>thead>tr:not(:last-child)>th{border-bottom:1px solid #f0f0f0}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tfoot>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>thead>tr>.ant-table-cell-fix-right-first::after{border-right:1px solid #f0f0f0}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-12px -9px}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td>.ant-table-expanded-row-fixed::after{position:absolute;top:0;right:1px;bottom:0;border-right:1px solid #f0f0f0;content:''}.ant-table.ant-table-bordered.ant-table-scroll-horizontal>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr.ant-table-expanded-row>td,.ant-table.ant-table-bordered.ant-table-scroll-horizontal>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr.ant-table-placeholder>td{border-right:0}.ant-table.ant-table-bordered.ant-table-middle>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-8px -9px}.ant-table.ant-table-bordered.ant-table-small>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-4px -5px}.ant-tabs-small>.ant-tabs-nav .ant-tabs-tab{padding:4px 0;font-size:12px}.ant-tabs-large>.ant-tabs-nav .ant-tabs-tab{padding:8px 0;font-size:14px}.ant-tabs-card.ant-tabs-small>.ant-tabs-nav .ant-tabs-tab{padding:6px 8px}.ant-tabs-card.ant-tabs-large>.ant-tabs-nav .ant-tabs-tab{padding:7px 8px 6px}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab{margin:0 0 0 32px}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab:last-of-type{margin-left:0}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab .anticon{margin-right:0;margin-left:8px}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab .ant-tabs-tab-remove{margin-right:4px;margin-left:0}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab .ant-tabs-tab-remove .anticon{margin:0}.ant-tabs-rtl.ant-tabs-left>.ant-tabs-content-holder,.ant-tabs-rtl.ant-tabs-right>.ant-tabs-nav{order:0}.ant-tabs-rtl.ant-tabs-right>.ant-tabs-content-holder{order:1}.ant-tabs-rtl.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs-rtl.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-rtl.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs-rtl.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-rtl.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs-rtl.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-rtl.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs-rtl.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab{margin-right:2px;margin-left:0}.ant-tabs-dropdown-rtl .ant-tabs-dropdown-menu-item{text-align:right}.ant-tabs-bottom,.ant-tabs-top{flex-direction:column}.ant-tabs-bottom>.ant-tabs-nav,.ant-tabs-bottom>div>.ant-tabs-nav,.ant-tabs-top>.ant-tabs-nav,.ant-tabs-top>div>.ant-tabs-nav{margin:0 0 8px}.ant-tabs-bottom>.ant-tabs-nav::before,.ant-tabs-bottom>div>.ant-tabs-nav::before,.ant-tabs-top>.ant-tabs-nav::before,.ant-tabs-top>div>.ant-tabs-nav::before{position:absolute;right:0;left:0;border-bottom:1px solid #f0f0f0;content:''}.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-top>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-ink-bar{height:2px}.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-top>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-ink-bar-animated{transition:width .3s,left .3s,right .3s}.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap::before{top:0;bottom:0;width:30px}.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap::before{left:0;box-shadow:inset 10px 0 8px -8px rgba(0,0,0,.08)}.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap::after{right:0;box-shadow:inset -10px 0 8px -8px rgba(0,0,0,.08)}.ant-tabs-top>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-top>.ant-tabs-nav::before,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-top>div>.ant-tabs-nav::before{bottom:0}.ant-tabs-bottom>.ant-tabs-nav,.ant-tabs-bottom>div>.ant-tabs-nav{order:1;margin-top:8px;margin-bottom:0}.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-bottom>.ant-tabs-nav::before,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-bottom>div>.ant-tabs-nav::before{top:0}.ant-tabs-bottom>.ant-tabs-content-holder,.ant-tabs-bottom>div>.ant-tabs-content-holder{order:0}.ant-tabs-left>.ant-tabs-nav,.ant-tabs-left>div>.ant-tabs-nav,.ant-tabs-right>.ant-tabs-nav,.ant-tabs-right>div>.ant-tabs-nav{flex-direction:column;min-width:50px}.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab{padding:4px 16px;text-align:center}.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab{margin:8px 0 0}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap{flex-direction:column}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap::before{right:0;left:0;height:30px}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap::before{top:0;box-shadow:inset 0 10px 8px -8px rgba(0,0,0,.08)}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap::after{bottom:0;box-shadow:inset 0 -10px 8px -8px rgba(0,0,0,.08)}.ant-tabs-dropdown-menu,.ant-tooltip-inner,.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu,.theme-btn .ant-avatar{box-shadow:0 3px 6px -4px rgba(0,0,0,.12),0 6px 16px 0 rgba(0,0,0,.08),0 9px 28px 8px rgba(0,0,0,.05)}.ant-tabs-left>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-right>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-ink-bar{width:2px}.ant-tabs-left>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-right>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-ink-bar-animated{transition:height .3s,top .3s}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-operations,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-operations,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-operations,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-operations{flex:1 0 auto;flex-direction:column}.ant-tabs-left>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-ink-bar{right:0}.ant-tabs-left>.ant-tabs-content-holder,.ant-tabs-left>div>.ant-tabs-content-holder{margin-left:-1px;border-left:1px solid #f0f0f0}.ant-tabs-left>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane,.ant-tabs-left>div>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane{padding-left:16px}.ant-tabs-right>.ant-tabs-nav,.ant-tabs-right>div>.ant-tabs-nav{order:1}.ant-tabs-right>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-ink-bar{left:0}.ant-tabs-right>.ant-tabs-content-holder,.ant-tabs-right>div>.ant-tabs-content-holder{order:0;margin-right:-1px;border-right:1px solid #f0f0f0}.ant-tabs-right>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane,.ant-tabs-right>div>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane{padding-right:16px}.ant-tabs-dropdown{box-sizing:border-box;margin:0;padding:0;color:rgba(0,0,0,.85);font-size:12px;font-variant:tabular-nums;line-height:1.66667;list-style:none;font-feature-settings:tnum;position:absolute;top:-9999px;left:-9999px;z-index:1050;display:block}.ant-tabs-dropdown-menu-item,.ant-tag,.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item{line-height:18px;transition:all .3s;white-space:nowrap}.ant-tabs-dropdown-hidden{display:none}.ant-tabs-dropdown-menu{max-height:200px;margin:0;padding:4px 0;overflow-x:hidden;overflow-y:auto;text-align:left;list-style-type:none;background-color:#fff;background-clip:padding-box;border-radius:2px;outline:0}.ant-tabs-dropdown-menu-item{display:flex;align-items:center;min-width:120px;margin:0;padding:5px 8px;overflow:hidden;color:rgba(0,0,0,.85);font-weight:400;font-size:12px;text-overflow:ellipsis;cursor:pointer}.ant-tabs-dropdown-menu-item>span{flex:1;white-space:nowrap}.ant-tabs-dropdown-menu-item-remove{flex:none;margin-left:8px;color:rgba(0,0,0,.45);font-size:12px;background:0 0;border:0;cursor:pointer}.ant-tabs-dropdown-menu-item-remove:hover{color:#40a9ff}.ant-tabs-dropdown-menu-item:hover{background:#f5f5f5}.ant-tabs-dropdown-menu-item-disabled,.ant-tabs-dropdown-menu-item-disabled:hover{color:rgba(0,0,0,.25);background:0 0;cursor:not-allowed}.ant-tabs-card>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card>div>.ant-tabs-nav .ant-tabs-tab{margin:0;padding:4px 8px;background:#fafafa;border:1px solid #f0f0f0;transition:all .3s cubic-bezier(.645,.045,.355,1)}.ant-tabs,.ant-timeline{line-height:1.66667;font-feature-settings:tnum;padding:0;font-variant:tabular-nums;box-sizing:border-box}.ant-tabs-card>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card>div>.ant-tabs-nav .ant-tabs-tab-active{color:#1890ff;background:#fff}.ant-tabs-card>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-card>div>.ant-tabs-nav .ant-tabs-ink-bar{visibility:hidden}.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab{margin-left:2px}.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-tab{border-radius:2px 2px 0 0}.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-tab-active{border-bottom-color:#fff}.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-tab{border-radius:0 0 2px 2px}.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-tab-active{border-top-color:#fff}.ant-tabs-card.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab{margin-top:2px}.ant-tabs-card.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab{border-radius:2px 0 0 2px}.ant-tabs-card.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab-active{border-right-color:#fff}.ant-tabs-card.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab{border-radius:0 2px 2px 0}.ant-tabs-card.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab-active{border-left-color:#fff}.ant-tabs{margin:0;color:rgba(0,0,0,.85);font-size:12px;list-style:none;display:flex}.ant-tabs>.ant-tabs-nav,.ant-tabs>div>.ant-tabs-nav{position:relative;display:flex;flex:none;align-items:center}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-wrap,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-wrap{position:relative;display:inline-block;display:flex;flex:auto;align-self:stretch;overflow:hidden;white-space:nowrap;transform:translate(0)}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-wrap::before{position:absolute;z-index:1;opacity:0;transition:opacity .3s;content:'';pointer-events:none}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-list{position:relative;display:flex;transition:transform .3s}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-operations,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-operations{display:flex;align-self:stretch}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-operations-hidden,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-operations-hidden{position:absolute;visibility:hidden;pointer-events:none}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-more,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-more{position:relative;padding:4px 8px;background:0 0;border:0}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-more::after,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-more::after{position:absolute;right:0;bottom:0;left:0;height:5px;transform:translateY(100%);content:''}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add{min-width:40px;margin-left:2px;padding:0 4px;background:#fafafa;border:1px solid #f0f0f0;border-radius:2px 2px 0 0;outline:0;cursor:pointer;transition:all .3s cubic-bezier(.645,.045,.355,1)}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add:hover,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add:hover{color:#40a9ff}.ant-tabs-tab-btn:active,.ant-tabs-tab-btn:focus,.ant-tabs-tab-remove:active,.ant-tabs-tab-remove:focus,.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add:active,.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add:focus,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add:active,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add:focus{color:#096dd9}.ant-tabs-extra-content{flex:none}.ant-tabs-centered>.ant-tabs-nav .ant-tabs-nav-wrap:not([class*=ant-tabs-nav-wrap-ping]),.ant-tabs-centered>div>.ant-tabs-nav .ant-tabs-nav-wrap:not([class*=ant-tabs-nav-wrap-ping]){justify-content:center}.ant-tabs-ink-bar{position:absolute;pointer-events:none}.ant-tabs-tab,.ant-tabs-tab-remove{background:0 0;cursor:pointer;font-size:12px;outline:0}.ant-tabs-tab{position:relative;display:inline-flex;align-items:center;padding:8px 0;border:0}.ant-tabs-tab-btn{outline:0;transition:all .3s}.ant-tabs-tab-remove{flex:none;margin-right:0;margin-left:4px;color:rgba(0,0,0,.45);border:none;transition:all .3s}.ant-tabs-tab-remove:hover{color:rgba(0,0,0,.85)}.ant-tabs-tab:hover{color:#40a9ff}.ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn{color:#1890ff;text-shadow:0 0 .25px currentcolor}.ant-tabs-tab.ant-tabs-tab-disabled{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-tabs-tab.ant-tabs-tab-disabled .ant-tabs-tab-btn:active,.ant-tabs-tab.ant-tabs-tab-disabled .ant-tabs-tab-btn:focus,.ant-tabs-tab.ant-tabs-tab-disabled .ant-tabs-tab-remove:active,.ant-tabs-tab.ant-tabs-tab-disabled .ant-tabs-tab-remove:focus{color:rgba(0,0,0,.25)}.ant-tabs-tab .ant-tabs-tab-remove .anticon{margin:0}.ant-tabs-tab .anticon{margin-right:8px}.ant-tabs-tab+.ant-tabs-tab{margin:0 0 0 32px}.ant-tabs-content{display:flex;width:100%}.ant-tabs-content-holder{flex:auto;min-width:0;min-height:0}.ant-tabs-content-animated{transition:margin .3s}.ant-tabs-tabpane{flex:none;width:100%;outline:0}.ant-tabs-dropdown-menu-item a[nz-tab-link]{position:relative}.ant-tabs-tab a[nz-tab-link]::before{position:absolute;top:0;left:0;right:0;bottom:0;background-color:transparent;content:''}.ant-tabs-tab a[nz-tab-link]~*{position:relative}nz-tab-nav-operation,nz-tabs-nav,nz-tabset{display:block;overflow:hidden}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu{max-height:200px;margin:0;padding:4px 0;overflow-x:hidden;overflow-y:auto;text-align:left;list-style-type:none;background-color:#fff;background-clip:padding-box;border-radius:2px;outline:0}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item{min-width:120px;margin:0;padding:5px 8px;overflow:hidden;color:rgba(0,0,0,.85);font-weight:400;font-size:12px;text-overflow:ellipsis;cursor:pointer}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item:hover{background:#f5f5f5}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item-disabled,.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item-disabled:hover{color:rgba(0,0,0,.25);background:0 0;cursor:not-allowed}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item-disabled a,.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item-disabled:hover a{pointer-events:none;color:rgba(0,0,0,.25)}.ant-tabs-rtl .ant-tabs-rtl-tab-next{right:auto;left:2px}.ant-tabs-tab-disabled a{pointer-events:none;color:rgba(0,0,0,.25)}.ant-tag{box-sizing:border-box;margin:0 8px 0 0;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;display:inline-block;height:auto;padding:0 7px;font-size:12px;background:#fafafa;border:1px solid #d9d9d9;border-radius:2px}.ant-tag-checkable,.ant-tag-has-color{border-color:transparent}.ant-tag,.ant-tag a,.ant-tag a:hover{color:rgba(0,0,0,.85)}.ant-tag>a:first-child:last-child{display:inline-block;margin:0 -8px;padding:0 8px}.ant-tag-hidden,.ant-timeline-item-last>.ant-timeline-item-tail,.ant-timeline-item-pending .ant-timeline-item-tail{display:none}.ant-tag-close-icon{margin-left:3px;color:rgba(0,0,0,.45);font-size:10px;cursor:pointer;transition:all .3s}.ant-tag-close-icon:hover{color:rgba(0,0,0,.85)}.ant-tag-has-color,.ant-tag-has-color .anticon-close,.ant-tag-has-color .anticon-close:hover,.ant-tag-has-color a,.ant-tag-has-color a:hover{color:#fff}.ant-tag-checkable{background-color:transparent;cursor:pointer}.ant-tag-checkable:not(.ant-tag-checkable-checked):hover{color:#1890ff}.ant-tag-checkable-checked,.ant-tag-checkable:active{color:#fff}.ant-tag-checkable-checked{background-color:#1890ff}.ant-tag-checkable:active{background-color:#096dd9}.ant-tag-pink{color:#c41d7f;background:#fff0f6;border-color:#ffadd2}.ant-tag-pink-inverse{color:#fff;background:#eb2f96;border-color:#eb2f96}.ant-tag-magenta{color:#c41d7f;background:#fff0f6;border-color:#ffadd2}.ant-tag-magenta-inverse,.ant-tooltip-magenta .ant-tooltip-arrow-content::before,.ant-tooltip-pink .ant-tooltip-arrow-content::before{background:#eb2f96}.ant-tag-magenta-inverse{color:#fff;border-color:#eb2f96}.ant-tag-red{color:#cf1322;background:#fff1f0;border-color:#ffa39e}.ant-tag-red-inverse{color:#fff;background:#f5222d;border-color:#f5222d}.ant-tag-volcano{color:#d4380d;background:#fff2e8;border-color:#ffbb96}.ant-tag-volcano-inverse{color:#fff;background:#fa541c;border-color:#fa541c}.ant-tag-orange{color:#d46b08;background:#fff7e6;border-color:#ffd591}.ant-tag-orange-inverse{color:#fff;background:#fa8c16;border-color:#fa8c16}.ant-tag-yellow{color:#d4b106;background:#feffe6;border-color:#fffb8f}.ant-tag-yellow-inverse{color:#fff;background:#fadb14;border-color:#fadb14}.ant-tag-gold{color:#d48806;background:#fffbe6;border-color:#ffe58f}.ant-tag-gold-inverse{color:#fff;background:#faad14;border-color:#faad14}.ant-tag-cyan{color:#08979c;background:#e6fffb;border-color:#87e8de}.ant-tag-cyan-inverse{color:#fff;background:#13c2c2;border-color:#13c2c2}.ant-tag-lime{color:#7cb305;background:#fcffe6;border-color:#eaff8f}.ant-tag-lime-inverse{color:#fff;background:#a0d911;border-color:#a0d911}.ant-tag-green{color:#389e0d;background:#f6ffed;border-color:#b7eb8f}.ant-tag-green-inverse{color:#fff;background:#52c41a;border-color:#52c41a}.ant-tag-blue{color:#096dd9;background:#e6f7ff;border-color:#91d5ff}.ant-tag-blue-inverse{color:#fff;background:#1890ff;border-color:#1890ff}.ant-tag-geekblue{color:#1d39c4;background:#f0f5ff;border-color:#adc6ff}.ant-tag-geekblue-inverse{color:#fff;background:#2f54eb;border-color:#2f54eb}.ant-tag-purple{color:#531dab;background:#f9f0ff;border-color:#d3adf7}.ant-tag-purple-inverse{color:#fff;background:#722ed1;border-color:#722ed1}.ant-tag-success{color:#52c41a;background:#f6ffed;border-color:#b7eb8f}.ant-tag-processing{color:#1890ff;background:#e6f7ff;border-color:#91d5ff}.ant-tag-error{color:#ff4d4f;background:#fff2f0;border-color:#ffccc7}.ant-tag-warning{color:#faad14;background:#fffbe6;border-color:#ffe58f}.ant-tag>.anticon+span,.ant-tag>span+.anticon{margin-left:7px}.ant-tag.ant-tag-rtl{margin-right:0;margin-left:8px;text-align:right}.ant-tag-rtl .ant-tag-close-icon{margin-right:3px;margin-left:0}.ant-tag-rtl.ant-tag>.anticon+span,.ant-tag-rtl.ant-tag>span+.anticon{margin-right:7px;margin-left:0}.ant-timeline,.ant-timeline-item{margin:0;list-style:none;font-size:12px}.ant-timeline{color:rgba(0,0,0,.85)}.ant-timeline-item{position:relative;padding-bottom:20px}.ant-timeline-item-tail{position:absolute;top:10px;left:4px;height:calc(100% - 10px);border-left:2px solid #f0f0f0}.ant-timeline-item-pending .ant-timeline-item-head{font-size:12px;background-color:transparent}.ant-timeline-item-head{position:absolute;width:10px;height:10px;background-color:#fff;border:2px solid transparent;border-radius:100px}.ant-timeline-item-head-blue{color:#1890ff;border-color:#1890ff}.ant-timeline-item-head-red{color:#ff4d4f;border-color:#ff4d4f}.ant-timeline-item-head-green{color:#52c41a;border-color:#52c41a}.ant-timeline-item-head-gray{color:rgba(0,0,0,.25);border-color:rgba(0,0,0,.25)}.ant-timeline-item-head-custom{position:absolute;top:5.5px;left:5px;width:auto;height:auto;margin-top:0;padding:3px 1px;line-height:1;text-align:center;border:0;border-radius:0;transform:translate(-50%,-50%)}.ant-tooltip,.ant-transfer{color:rgba(0,0,0,.85);font-size:12px;line-height:1.66667;font-feature-settings:tnum;list-style:none}.ant-timeline-item-content{position:relative;top:-7px;margin:0 0 0 18px;word-break:break-word}.ant-timeline-item-last>.ant-timeline-item-content{min-height:48px}.ant-timeline.ant-timeline-alternate .ant-timeline-item-head,.ant-timeline.ant-timeline-alternate .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-alternate .ant-timeline-item-tail,.ant-timeline.ant-timeline-label .ant-timeline-item-head,.ant-timeline.ant-timeline-label .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-label .ant-timeline-item-tail,.ant-timeline.ant-timeline-right .ant-timeline-item-head,.ant-timeline.ant-timeline-right .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-right .ant-timeline-item-tail{left:50%}.ant-timeline.ant-timeline-alternate .ant-timeline-item-head,.ant-timeline.ant-timeline-label .ant-timeline-item-head,.ant-timeline.ant-timeline-right .ant-timeline-item-head{margin-left:-4px}.ant-timeline.ant-timeline-alternate .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-label .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-right .ant-timeline-item-head-custom{margin-left:1px}.ant-timeline.ant-timeline-alternate .ant-timeline-item-left .ant-timeline-item-content,.ant-timeline.ant-timeline-label .ant-timeline-item-left .ant-timeline-item-content,.ant-timeline.ant-timeline-right .ant-timeline-item-left .ant-timeline-item-content{left:calc(50% - 4px);width:calc(50% - 14px);text-align:left}.ant-timeline.ant-timeline-alternate .ant-timeline-item-right .ant-timeline-item-content,.ant-timeline.ant-timeline-label .ant-timeline-item-right .ant-timeline-item-content,.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-content{width:calc(50% - 12px);margin:0;text-align:right}.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-head,.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-tail{left:calc(100% - 4px - 2px)}.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-content{width:calc(100% - 18px)}.ant-timeline.ant-timeline-pending .ant-timeline-item-last .ant-timeline-item-tail{display:block;height:calc(100% - 14px);border-left:2px dotted #f0f0f0}.ant-timeline.ant-timeline-reverse .ant-timeline-item-last .ant-timeline-item-tail{display:none}.ant-timeline.ant-timeline-reverse .ant-timeline-item-pending .ant-timeline-item-tail{top:15px;display:block;height:calc(100% - 15px);border-left:2px dotted #f0f0f0}.ant-timeline.ant-timeline-reverse .ant-timeline-item-pending .ant-timeline-item-content{min-height:48px}.ant-timeline.ant-timeline-label .ant-timeline-item-label{position:absolute;top:-7px;width:calc(50% - 12px);text-align:right}.ant-timeline.ant-timeline-label .ant-timeline-item-right .ant-timeline-item-label{left:calc(50% + 14px);width:calc(50% - 14px);text-align:left}.ant-timeline-rtl .ant-timeline-item-tail{right:4px;left:auto;border-right:2px solid #f0f0f0;border-left:none}.ant-timeline-rtl .ant-timeline-item-head-custom{right:5px;left:auto;transform:translate(50%,-50%)}.ant-timeline-rtl .ant-timeline-item-content{margin:0 18px 0 0}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-tail,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-tail,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-tail{right:50%;left:auto}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-head{margin-right:-4px;margin-left:0}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-head-custom{margin-right:1px;margin-left:0}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-left .ant-timeline-item-content,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-left .ant-timeline-item-content,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-left .ant-timeline-item-content{right:calc(50% - 4px);left:auto;text-align:right}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-right .ant-timeline-item-content,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-right .ant-timeline-item-content,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-content{text-align:left}.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-tail{right:0;left:auto}.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-content{width:100%;margin-right:18px;text-align:right}.ant-timeline-rtl.ant-timeline.ant-timeline-pending .ant-timeline-item-last .ant-timeline-item-tail,.ant-timeline-rtl.ant-timeline.ant-timeline-reverse .ant-timeline-item-pending .ant-timeline-item-tail{border-right:2px dotted #f0f0f0;border-left:none}.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-label{text-align:left}.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-right .ant-timeline-item-label{right:calc(50% + 14px);text-align:right}.ant-tooltip{box-sizing:border-box;margin:0;padding:0;font-variant:tabular-nums;z-index:1070;display:block;width:max-content;width:intrinsic;max-width:250px}.ant-tooltip-content{position:relative}.ant-tooltip-hidden{display:none}.ant-tooltip-arrow,.ant-tooltip-arrow-content{display:block;position:absolute;pointer-events:none}.ant-tooltip-placement-top,.ant-tooltip-placement-topLeft,.ant-tooltip-placement-topRight{padding-bottom:14.31px}.ant-tooltip-placement-right,.ant-tooltip-placement-rightBottom,.ant-tooltip-placement-rightTop{padding-left:14.31px}.ant-tooltip-placement-bottom,.ant-tooltip-placement-bottomLeft,.ant-tooltip-placement-bottomRight{padding-top:14.31px}.ant-tooltip-placement-left,.ant-tooltip-placement-leftBottom,.ant-tooltip-placement-leftTop{padding-right:14.31px}.ant-tooltip-inner{min-width:30px;min-height:32px;padding:6px 8px;color:#fff;text-align:left;text-decoration:none;word-wrap:break-word;background-color:rgba(0,0,0,.75);border-radius:2px}.ant-tooltip-arrow{z-index:2;width:22px;height:22px;overflow:hidden;background:0 0}.ant-tooltip-arrow-content{--antd-arrow-background-color:linear-gradient(to right bottom, rgba(0, 0, 0, 0.65), rgba(0, 0, 0, 0.75));top:0;right:0;bottom:0;left:0;width:11.31px;height:11.31px;margin:auto;background-color:transparent;content:'';border-radius:0 0 2px}.ant-tooltip-arrow-content::before{position:absolute;top:-11.31px;left:-11.31px;width:33.94px;height:33.94px;background:var(--antd-arrow-background-color);background-repeat:no-repeat;background-position:-10px -10px;content:'';clip-path:path('M 9.849242404917499 24.091883092036785 A 5 5 0 0 1 13.384776310850237 22.627416997969522 L 20.627416997969522 22.627416997969522 A 2 2 0 0 0 22.627416997969522 20.627416997969522 L 22.627416997969522 13.384776310850237 A 5 5 0 0 1 24.091883092036785 9.849242404917499 L 23.091883092036785 9.849242404917499 L 9.849242404917499 23.091883092036785 Z')}.ant-tooltip-placement-top .ant-tooltip-arrow,.ant-tooltip-placement-topLeft .ant-tooltip-arrow,.ant-tooltip-placement-topRight .ant-tooltip-arrow{bottom:0;transform:translateY(100%)}.ant-tooltip-placement-top .ant-tooltip-arrow-content,.ant-tooltip-placement-topLeft .ant-tooltip-arrow-content,.ant-tooltip-placement-topRight .ant-tooltip-arrow-content{box-shadow:3px 3px 7px rgba(0,0,0,.07);transform:translateY(-11px) rotate(45deg)}.ant-tooltip-placement-top .ant-tooltip-arrow{left:50%;transform:translateY(100%) translateX(-50%)}.ant-tooltip-placement-topLeft .ant-tooltip-arrow{left:13px}.ant-tooltip-placement-topRight .ant-tooltip-arrow{right:13px}.ant-tooltip-placement-right .ant-tooltip-arrow,.ant-tooltip-placement-rightBottom .ant-tooltip-arrow,.ant-tooltip-placement-rightTop .ant-tooltip-arrow{left:0;transform:translateX(-100%)}.ant-tooltip-placement-right .ant-tooltip-arrow-content,.ant-tooltip-placement-rightBottom .ant-tooltip-arrow-content,.ant-tooltip-placement-rightTop .ant-tooltip-arrow-content{box-shadow:-3px 3px 7px rgba(0,0,0,.07);transform:translateX(11px) rotate(135deg)}.ant-tooltip-placement-right .ant-tooltip-arrow{top:50%;transform:translateX(-100%) translateY(-50%)}.ant-tooltip-placement-rightTop .ant-tooltip-arrow{top:5px}.ant-tooltip-placement-rightBottom .ant-tooltip-arrow{bottom:5px}.ant-tooltip-placement-left .ant-tooltip-arrow,.ant-tooltip-placement-leftBottom .ant-tooltip-arrow,.ant-tooltip-placement-leftTop .ant-tooltip-arrow{right:0;transform:translateX(100%)}.ant-tooltip-placement-left .ant-tooltip-arrow-content,.ant-tooltip-placement-leftBottom .ant-tooltip-arrow-content,.ant-tooltip-placement-leftTop .ant-tooltip-arrow-content{box-shadow:3px -3px 7px rgba(0,0,0,.07);transform:translateX(-11px) rotate(315deg)}.ant-tooltip-placement-left .ant-tooltip-arrow{top:50%;transform:translateX(100%) translateY(-50%)}.ant-tooltip-placement-leftTop .ant-tooltip-arrow{top:5px}.ant-tooltip-placement-leftBottom .ant-tooltip-arrow{bottom:5px}.ant-tooltip-placement-bottom .ant-tooltip-arrow,.ant-tooltip-placement-bottomLeft .ant-tooltip-arrow,.ant-tooltip-placement-bottomRight .ant-tooltip-arrow{top:0;transform:translateY(-100%)}.ant-tooltip-placement-bottom .ant-tooltip-arrow-content,.ant-tooltip-placement-bottomLeft .ant-tooltip-arrow-content,.ant-tooltip-placement-bottomRight .ant-tooltip-arrow-content{box-shadow:-3px -3px 7px rgba(0,0,0,.07);transform:translateY(11px) rotate(225deg)}.ant-tooltip-placement-bottom .ant-tooltip-arrow{left:50%;transform:translateY(-100%) translateX(-50%)}.ant-tooltip-placement-bottomLeft .ant-tooltip-arrow{left:13px}.ant-tooltip-placement-bottomRight .ant-tooltip-arrow{right:13px}.ant-tooltip-red .ant-tooltip-inner{background-color:#f5222d}.ant-tooltip-red .ant-tooltip-arrow-content::before{background:#f5222d}.ant-tooltip-volcano .ant-tooltip-inner{background-color:#fa541c}.ant-tooltip-volcano .ant-tooltip-arrow-content::before{background:#fa541c}.ant-tooltip-orange .ant-tooltip-inner{background-color:#fa8c16}.ant-tooltip-orange .ant-tooltip-arrow-content::before{background:#fa8c16}.ant-tooltip-yellow .ant-tooltip-inner{background-color:#fadb14}.ant-tooltip-yellow .ant-tooltip-arrow-content::before{background:#fadb14}.ant-tooltip-gold .ant-tooltip-inner{background-color:#faad14}.ant-tooltip-gold .ant-tooltip-arrow-content::before{background:#faad14}.ant-tooltip-cyan .ant-tooltip-inner{background-color:#13c2c2}.ant-tooltip-cyan .ant-tooltip-arrow-content::before{background:#13c2c2}.ant-tooltip-lime .ant-tooltip-inner{background-color:#a0d911}.ant-tooltip-lime .ant-tooltip-arrow-content::before{background:#a0d911}.ant-tooltip-green .ant-tooltip-inner{background-color:#52c41a}.ant-tooltip-green .ant-tooltip-arrow-content::before{background:#52c41a}.ant-tooltip-blue .ant-tooltip-inner{background-color:#1890ff}.ant-tooltip-blue .ant-tooltip-arrow-content::before{background:#1890ff}.ant-tooltip-geekblue .ant-tooltip-inner{background-color:#2f54eb}.ant-tooltip-geekblue .ant-tooltip-arrow-content::before{background:#2f54eb}.ant-tooltip-purple .ant-tooltip-inner{background-color:#722ed1}.ant-tooltip-purple .ant-tooltip-arrow-content::before{background:#722ed1}.ant-tooltip-rtl .ant-tooltip-inner{text-align:right}.ant-tooltip{position:relative}.ant-transfer-customize-list .ant-transfer-list{flex:1 1 50%;width:auto;height:auto;min-height:200px}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small{border:0;border-radius:0}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small .ant-table-selection-column{width:40px;min-width:40px}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small>.ant-table-content>.ant-table-body>table>.ant-table-thead>tr>th{background:#fafafa}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small>.ant-table-content .ant-table-row:last-child td{border-bottom:1px solid #f0f0f0}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small .ant-table-body{margin:0}.ant-transfer-customize-list .ant-table-wrapper .ant-table-pagination.ant-pagination{margin:16px 0 4px}.ant-transfer-customize-list .ant-input[disabled]{background-color:transparent}.ant-transfer-status-error .ant-transfer-list{border-color:#ff4d4f}.ant-transfer-status-error .ant-transfer-list-search:not([disabled]){border-color:#d9d9d9}.ant-transfer-status-error .ant-transfer-list-search:not([disabled]):hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-transfer-status-error .ant-transfer-list-search:not([disabled]):hover{border-right-width:0;border-left-width:1px!important}.ant-transfer-status-error .ant-transfer-list-search:not([disabled]):focus{border-color:#40a9ff;box-shadow:0 0 0 2px rgba(24,144,255,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-transfer-status-error .ant-transfer-list-search:not([disabled]):focus{border-right-width:0;border-left-width:1px!important}.ant-transfer-status-warning .ant-transfer-list{border-color:#faad14}.ant-transfer-status-warning .ant-transfer-list-search:not([disabled]){border-color:#d9d9d9}.ant-transfer-status-warning .ant-transfer-list-search:not([disabled]):hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-transfer-status-warning .ant-transfer-list-search:not([disabled]):hover{border-right-width:0;border-left-width:1px!important}.ant-transfer-status-warning .ant-transfer-list-search:not([disabled]):focus{border-color:#40a9ff;box-shadow:0 0 0 2px rgba(24,144,255,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-transfer-status-warning .ant-transfer-list-search:not([disabled]):focus{border-right-width:0;border-left-width:1px!important}.ant-transfer{box-sizing:border-box;margin:0;padding:0;font-variant:tabular-nums;position:relative;display:flex;align-items:stretch}.ant-transfer-disabled .ant-transfer-list{background:#f5f5f5}.ant-transfer-list{display:flex;flex-direction:column;width:180px;height:200px;border:1px solid #d9d9d9;border-radius:2px}.ant-transfer-list-with-pagination{width:250px;height:auto}.ant-transfer-list-search .anticon-search{color:rgba(0,0,0,.25)}.ant-transfer-list-header{display:flex;flex:none;align-items:center;height:36px;padding:7px 8px 8px;color:rgba(0,0,0,.85);background:#fff;border-bottom:1px solid #f0f0f0;border-radius:2px 2px 0 0}.ant-transfer-list-header>:not(:last-child){margin-right:4px}.ant-transfer-list-header>*{flex:none}.ant-transfer-list-header-title{flex:auto;overflow:hidden;white-space:nowrap;text-align:right;text-overflow:ellipsis}.ant-transfer-list-header-dropdown{font-size:10px;transform:translateY(10%);cursor:pointer}.ant-transfer-list-header-dropdown[disabled]{cursor:not-allowed}.ant-transfer-list-body{display:flex;flex:auto;flex-direction:column;overflow:hidden;font-size:12px}.ant-transfer-list-body-search-wrapper{position:relative;flex:none;padding:8px}.ant-transfer-list-content{flex:auto;margin:0;padding:0;overflow:auto;list-style:none}.ant-transfer-list-content-item{display:flex;align-items:center;min-height:28px;padding:3px 8px;line-height:22px;transition:all .3s}.ant-transfer-list-content-item>:not(:last-child){margin-right:8px}.ant-transfer-list-content-item>*{flex:none}.ant-transfer-list-content-item-text{flex:auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-transfer-list-content-item-remove{text-decoration:none;outline:0;cursor:pointer;transition:color .3s;position:relative;color:#d9d9d9}.ant-transfer-list-content-item-remove:focus,.ant-transfer-list-content-item-remove:hover{color:#40a9ff}.ant-transfer-list-content-item-remove:active{color:#096dd9}.ant-transfer-list-content-item-remove::after{position:absolute;top:-3px;right:-50%;bottom:-3px;left:-50%;content:''}.ant-transfer-list-content-item-remove:hover{color:#40a9ff}.ant-transfer-list-content-item:not(.ant-transfer-list-content-item-disabled):hover{background-color:#f5f5f5;cursor:pointer}.ant-transfer-list-content-item:not(.ant-transfer-list-content-item-disabled).ant-transfer-list-content-item-checked:hover{background-color:#dcf4ff}.ant-transfer-list-content-show-remove .ant-transfer-list-content-item:not(.ant-transfer-list-content-item-disabled):hover{background:0 0;cursor:default}.ant-transfer-list-content-item-checked{background-color:#e6f7ff}.ant-transfer-list-content-item-disabled{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-transfer-list-pagination{padding:4px 0;text-align:right;border-top:1px solid #f0f0f0}.ant-transfer-list-body-not-found{flex:none;width:100%;margin:auto 0;color:rgba(0,0,0,.25);text-align:center}.ant-transfer-rtl .ant-transfer-list-header-title,.ant-transfer-rtl .ant-transfer-list-pagination{text-align:left}.ant-transfer-list-footer{border-top:1px solid #f0f0f0}.ant-transfer-operation{display:flex;flex:none;flex-direction:column;align-self:center;margin:0 8px;vertical-align:middle}.ant-transfer-operation .ant-btn{display:block}.ant-transfer-operation .ant-btn:first-child{margin-bottom:4px}.ant-transfer-operation .ant-btn .anticon{font-size:12px}.ant-transfer .ant-empty-image{max-height:-4px}.ant-transfer-rtl .ant-transfer-list-search{padding-right:8px;padding-left:24px}.ant-transfer-rtl .ant-transfer-list-search-action{right:auto;left:12px}.ant-transfer-rtl .ant-transfer-list-footer,.ant-transfer-rtl .ant-transfer-list-header{right:0;left:auto}.ant-transfer-rtl .ant-transfer-list-header>:not(:last-child){margin-right:0;margin-left:4px}.ant-transfer-rtl .ant-transfer-list-content-item>:not(:last-child){margin-right:0;margin-left:8px}.ant-typography{color:rgba(0,0,0,.85);overflow-wrap:break-word}.ant-typography.ant-typography-secondary{color:rgba(0,0,0,.45)}.ant-typography.ant-typography-success{color:#52c41a}.ant-typography.ant-typography-warning{color:#faad14}.ant-typography.ant-typography-danger{color:#ff4d4f}a.ant-typography.ant-typography-danger:active,a.ant-typography.ant-typography-danger:focus{color:#d9363e}a.ant-typography.ant-typography-danger:hover{color:#ff7875}.ant-typography.ant-typography-disabled{color:rgba(0,0,0,.25);cursor:not-allowed;user-select:none}.ant-typography p,div.ant-typography{margin-bottom:1em}.ant-typography h1,div.ant-typography-h1,div.ant-typography-h1>textarea,h1.ant-typography{margin-bottom:.5em;color:rgba(0,0,0,.85);font-weight:600;font-size:33px;line-height:1.23}.ant-typography h2,div.ant-typography-h2,div.ant-typography-h2>textarea,h2.ant-typography{margin-bottom:.5em;color:rgba(0,0,0,.85);font-weight:600;font-size:26px;line-height:1.35}.ant-typography h3,div.ant-typography-h3,div.ant-typography-h3>textarea,h3.ant-typography{margin-bottom:.5em;color:rgba(0,0,0,.85);font-weight:600;font-size:21px;line-height:1.35}.ant-typography h4,div.ant-typography-h4,div.ant-typography-h4>textarea,h4.ant-typography{margin-bottom:.5em;color:rgba(0,0,0,.85);font-weight:600;font-size:18px;line-height:1.4}.ant-typography h5,div.ant-typography-h5,div.ant-typography-h5>textarea,h5.ant-typography{margin-bottom:.5em;color:rgba(0,0,0,.85);font-weight:600;font-size:14px;line-height:1.5}.ant-typography div+h1,.ant-typography div+h2,.ant-typography div+h3,.ant-typography div+h4,.ant-typography div+h5,.ant-typography h1+h1,.ant-typography h1+h2,.ant-typography h1+h3,.ant-typography h1+h4,.ant-typography h1+h5,.ant-typography h2+h1,.ant-typography h2+h2,.ant-typography h2+h3,.ant-typography h2+h4,.ant-typography h2+h5,.ant-typography h3+h1,.ant-typography h3+h2,.ant-typography h3+h3,.ant-typography h3+h4,.ant-typography h3+h5,.ant-typography h4+h1,.ant-typography h4+h2,.ant-typography h4+h3,.ant-typography h4+h4,.ant-typography h4+h5,.ant-typography h5+h1,.ant-typography h5+h2,.ant-typography h5+h3,.ant-typography h5+h4,.ant-typography h5+h5,.ant-typography li+h1,.ant-typography li+h2,.ant-typography li+h3,.ant-typography li+h4,.ant-typography li+h5,.ant-typography p+h1,.ant-typography p+h2,.ant-typography p+h3,.ant-typography p+h4,.ant-typography p+h5,.ant-typography ul+h1,.ant-typography ul+h2,.ant-typography ul+h3,.ant-typography ul+h4,.ant-typography ul+h5,.ant-typography+h1.ant-typography,.ant-typography+h2.ant-typography,.ant-typography+h3.ant-typography,.ant-typography+h4.ant-typography,.ant-typography+h5.ant-typography{margin-top:1.2em}.ant-typography code,.ant-typography kbd{margin:0 .2em;border:1px solid rgba(100,100,100,.2)}a.ant-typography-ellipsis,span.ant-typography-ellipsis{display:inline-block;max-width:100%}.ant-typography a,a.ant-typography{color:#1890ff;outline:0;cursor:pointer;transition:color .3s;text-decoration:none}.ant-typography a:focus,.ant-typography a:hover,a.ant-typography:focus,a.ant-typography:hover{color:#40a9ff}.ant-typography a:active,a.ant-typography:active{color:#096dd9}.ant-typography a:active,.ant-typography a:hover,a.ant-typography:active,a.ant-typography:hover{text-decoration:none}.ant-typography a.ant-typography-disabled,.ant-typography a[disabled],a.ant-typography.ant-typography-disabled,a.ant-typography[disabled]{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-typography a.ant-typography-disabled:active,.ant-typography a.ant-typography-disabled:hover,.ant-typography a[disabled]:active,.ant-typography a[disabled]:hover,a.ant-typography.ant-typography-disabled:active,a.ant-typography.ant-typography-disabled:hover,a.ant-typography[disabled]:active,a.ant-typography[disabled]:hover{color:rgba(0,0,0,.25)}.ant-typography a.ant-typography-disabled:active,.ant-typography a[disabled]:active,a.ant-typography.ant-typography-disabled:active,a.ant-typography[disabled]:active{pointer-events:none}.ant-typography code{padding:.2em .4em .1em;font-size:85%;background:rgba(150,150,150,.1);border-radius:3px}.ant-typography kbd{padding:.15em .4em .1em;font-size:90%;background:rgba(150,150,150,.06);border-bottom-width:2px;border-radius:3px}.ant-typography mark{padding:0;background-color:#ffe58f}.ant-typography ins,.ant-typography u{text-decoration:underline;text-decoration-skip-ink:auto}.ant-typography del,.ant-typography s,.menu-deprecated .ant-badge,.text-deleted{text-decoration:line-through}.ant-typography strong{font-weight:600}.ant-typography-copy,.ant-typography-edit,.ant-typography-expand{color:#1890ff;text-decoration:none;outline:0;cursor:pointer;transition:color .3s;margin-left:4px}.ant-typography-copy:focus,.ant-typography-copy:hover,.ant-typography-edit:focus,.ant-typography-edit:hover,.ant-typography-expand:focus,.ant-typography-expand:hover{color:#40a9ff}.ant-typography-copy:active,.ant-typography-edit:active,.ant-typography-expand:active{color:#096dd9}.ant-typography-copy-success,.ant-typography-copy-success:focus,.ant-typography-copy-success:hover{color:#52c41a}.ant-typography-edit-content{position:relative}div.ant-typography-edit-content{left:-8px;margin-top:-4px;margin-bottom:calc(1em - 3px - 1px)}.ant-typography-edit-content-confirm{position:absolute;right:10px;bottom:8px;color:rgba(0,0,0,.45);font-weight:400;font-size:12px;font-style:normal;pointer-events:none}.ant-typography-edit-content textarea{height:1em;margin:0!important;-moz-transition:none}.ant-typography ol,.ant-typography ul{margin:0 0 1em;padding:0}.ant-typography ol li,.ant-typography ul li{margin:0 0 0 20px;padding:0 0 0 4px}.ant-typography ul{list-style-type:circle}.ant-typography ul ul{list-style-type:disc}.ant-typography ol{list-style-type:decimal}.ant-typography blockquote,.ant-typography pre{margin:1em 0}.ant-typography pre{padding:.4em .6em;white-space:pre-wrap;word-wrap:break-word;background:rgba(150,150,150,.1);border:1px solid rgba(100,100,100,.2);border-radius:3px}.ant-typography pre code{display:inline;margin:0;padding:0;font-size:inherit;font-family:inherit;background:0 0;border:0}.ant-typography blockquote{padding:0 0 0 .6em;border-left:4px solid rgba(100,100,100,.2);opacity:.85}.ant-typography-single-line{white-space:nowrap}.ant-typography-ellipsis-single-line{overflow:hidden;text-overflow:ellipsis}a.ant-typography-ellipsis-single-line,span.ant-typography-ellipsis-single-line{vertical-align:bottom}.ant-typography-ellipsis-multiple-line{display:-webkit-box;overflow:hidden;-webkit-line-clamp:3;/*! autoprefixer: ignore next */-webkit-box-orient:vertical}.ant-typography-rtl .ant-typography-copy,.ant-typography-rtl .ant-typography-edit,.ant-typography-rtl .ant-typography-expand{margin-right:4px;margin-left:0}.ant-typography-rtl .ant-typography-expand{float:left}div.ant-typography-edit-content.ant-typography-rtl{right:-8px;left:auto}.ant-typography-rtl .ant-typography-edit-content-confirm{right:auto;left:10px}.ant-typography-rtl.ant-typography ol li,.ant-typography-rtl.ant-typography ul li{margin:0 20px 0 0;padding:0 4px 0 0}.ant-upload{box-sizing:border-box;margin:0;padding:0;color:rgba(0,0,0,.85);font-size:12px;font-variant:tabular-nums;line-height:1.66667;list-style:none;font-feature-settings:tnum;outline:0}.ant-upload p{margin:0}.ant-upload-btn{display:block;width:100%;outline:0}.ant-upload input[type=file]{cursor:pointer}.ant-upload.ant-upload-select{display:inline-block}.ant-upload.ant-upload-disabled{cursor:not-allowed}.ant-upload.ant-upload-select-picture-card{width:104px;height:104px;margin-right:8px;margin-bottom:8px;text-align:center;vertical-align:top;background-color:#fafafa;border:1px dashed #d9d9d9;border-radius:2px;cursor:pointer;transition:border-color .3s}.ant-upload.ant-upload-select-picture-card>.ant-upload{display:flex;align-items:center;justify-content:center;height:100%;text-align:center}.ant-upload.ant-upload-select-picture-card:hover{border-color:#1890ff}.ant-upload-disabled.ant-upload.ant-upload-select-picture-card:hover{border-color:#d9d9d9}.ant-upload.ant-upload-drag{position:relative;width:100%;height:100%;text-align:center;background:#fafafa;border:1px dashed #d9d9d9;border-radius:2px;cursor:pointer;transition:border-color .3s}.ant-upload.ant-upload-drag .ant-upload{padding:8px 0}.ant-upload.ant-upload-drag.ant-upload-drag-hover:not(.ant-upload-disabled){border-color:#096dd9}.ant-upload.ant-upload-drag.ant-upload-disabled{cursor:not-allowed}.ant-upload.ant-upload-drag .ant-upload-btn{display:table;height:100%}.ant-upload.ant-upload-drag .ant-upload-drag-container{display:table-cell;vertical-align:middle}.ant-upload.ant-upload-drag:not(.ant-upload-disabled):hover{border-color:#40a9ff}.ant-upload.ant-upload-drag p.ant-upload-drag-icon{margin-bottom:20px}.ant-upload.ant-upload-drag p.ant-upload-drag-icon .anticon{color:#40a9ff;font-size:48px}.ant-upload.ant-upload-drag p.ant-upload-text{margin:0 0 4px;color:rgba(0,0,0,.85);font-size:14px}.ant-upload.ant-upload-drag p.ant-upload-hint{color:rgba(0,0,0,.45);font-size:12px}.ant-upload.ant-upload-drag .anticon-plus{color:rgba(0,0,0,.25);font-size:30px;transition:all .3s}.ant-upload.ant-upload-drag .anticon-plus:hover,.ant-upload.ant-upload-drag:hover .anticon-plus{color:rgba(0,0,0,.45)}.ant-upload-picture-card-wrapper{display:inline-block;width:100%}.ant-upload-list::after,.ant-upload-list::before,.ant-upload-picture-card-wrapper::after,.ant-upload-picture-card-wrapper::before{display:table;content:''}.ant-upload-picture-card-wrapper::after{clear:both}.ant-upload-list{box-sizing:border-box;margin:0;padding:0;color:rgba(0,0,0,.85);font-size:12px;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;line-height:1.66667}.ant-upload-list::after{clear:both}.ant-upload-list-item{position:relative;height:20px;margin-top:4px;font-size:12px}.ant-upload-list-item-name{display:inline-block;width:100%;padding-left:20px;overflow:hidden;line-height:1.66667;white-space:nowrap;text-overflow:ellipsis}.ant-upload-list-item-card-actions{position:absolute;right:0}.ant-upload-list-item-card-actions-btn{opacity:0}.ant-upload-list-item-card-actions-btn:focus,.ant-upload-list-item-card-actions.picture .ant-upload-list-item-card-actions-btn,.ant-upload-list-item-error .ant-upload-list-item-card-actions-btn,.ant-upload-list-item:hover .ant-upload-list-item-card-actions-btn{opacity:1}.ant-upload-list-item-card-actions-btn.ant-btn-sm{height:20px;line-height:1;vertical-align:top}.ant-upload-list-item-card-actions.picture{top:22px;line-height:0}.ant-upload-list-item-card-actions .anticon{color:rgba(0,0,0,.45);transition:all .3s}.ant-upload-list-item-card-actions:hover .anticon{color:rgba(0,0,0,.85)}.ant-upload-list-item-info{height:100%;transition:background-color .3s}.ant-upload-list-item-info>span{display:block;width:100%;height:100%}.ant-upload-list-item-info .ant-upload-text-icon .anticon,.ant-upload-list-item-info .anticon-loading .anticon{position:absolute;top:4px;color:rgba(0,0,0,.45);font-size:12px}.ant-upload-list-item:hover .ant-upload-list-item-info{background-color:#f5f5f5}.ant-upload-list-picture .ant-upload-list-item:hover,.ant-upload-list-picture .ant-upload-list-item:hover .ant-upload-list-item-info,.ant-upload-list-picture-card .ant-upload-list-item:hover,.ant-upload-list-picture-card .ant-upload-list-item:hover .ant-upload-list-item-info{background:0 0}.ant-upload-list-item-error,.ant-upload-list-item-error .ant-upload-list-item-card-actions .anticon,.ant-upload-list-item-error .ant-upload-list-item-name,.ant-upload-list-item-error .ant-upload-text-icon>.anticon{color:#ff4d4f}.ant-upload-list-item-progress{position:absolute;bottom:-12px;width:100%;padding-left:24px;font-size:12px;line-height:0}.ant-upload-list-picture .ant-upload-list-item,.ant-upload-list-picture-card .ant-upload-list-item{position:relative;height:66px;padding:4px;border:1px solid #d9d9d9;border-radius:2px}.ant-upload-list-picture .ant-upload-list-item-error,.ant-upload-list-picture-card .ant-upload-list-item-error{border-color:#ff4d4f}.ant-upload-list-picture .ant-upload-list-item-uploading,.ant-upload-list-picture-card .ant-upload-list-item-uploading{border-style:dashed}.ant-upload-list-picture .ant-upload-list-item-thumbnail,.ant-upload-list-picture-card .ant-upload-list-item-thumbnail{width:48px;height:48px;line-height:60px;text-align:center;opacity:.8}.ant-upload-list-picture .ant-upload-list-item-thumbnail .anticon,.ant-upload-list-picture-card .ant-upload-list-item-thumbnail .anticon{font-size:26px}.ant-upload-list-picture .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill='#e6f7ff'],.ant-upload-list-picture-card .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill='#e6f7ff']{fill:#fff2f0}.ant-upload-list-picture .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill='#1890ff'],.ant-upload-list-picture-card .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill='#1890ff']{fill:#ff4d4f}.ant-upload-list-picture .ant-upload-list-item-icon,.ant-upload-list-picture-card .ant-upload-list-item-icon{position:absolute;top:50%;left:50%;font-size:26px;transform:translate(-50%,-50%)}.ant-upload-list-picture .ant-upload-list-item-icon .anticon,.ant-upload-list-picture-card .ant-upload-list-item-icon .anticon{font-size:26px}.ant-upload-list-picture .ant-upload-list-item-image,.ant-upload-list-picture-card .ant-upload-list-item-image{max-width:100%}.ant-upload-list-picture .ant-upload-list-item-thumbnail img,.ant-upload-list-picture-card .ant-upload-list-item-thumbnail img{display:block;width:48px;height:48px;overflow:hidden}.ant-upload-list-picture .ant-upload-list-item-name,.ant-upload-list-picture-card .ant-upload-list-item-name{display:inline-block;box-sizing:border-box;max-width:100%;margin:0 0 0 8px;padding-right:8px;padding-left:48px;overflow:hidden;line-height:44px;white-space:nowrap;text-overflow:ellipsis;transition:all .3s}.ant-upload-list-picture .ant-upload-list-item-uploading .ant-upload-list-item-name,.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-name{margin-bottom:12px}.ant-upload-list-picture .ant-upload-list-item-progress,.ant-upload-list-picture-card .ant-upload-list-item-progress{bottom:14px;width:calc(100% - 24px);margin-top:0;padding-left:56px}.ant-upload-list-picture-card-container{display:inline-block;width:104px;height:104px;margin:0 4px 4px 0;vertical-align:top}.ant-upload-list-picture-card .ant-upload-list-item{height:100%;margin:0}.ant-upload-list-picture-card .ant-upload-list-item-info{position:relative;height:100%;overflow:hidden}.ant-upload-list-picture-card .ant-upload-list-item-info::before{position:absolute;z-index:1;width:100%;height:100%;background-color:rgba(0,0,0,.5);opacity:0;transition:all .3s;content:' '}.ant-upload-list-picture-card .ant-upload-list-item:hover .ant-upload-list-item-info::before{opacity:1}.ant-upload-list-picture-card .ant-upload-list-item-actions{position:absolute;top:50%;left:50%;z-index:10;white-space:nowrap;transform:translate(-50%,-50%);opacity:0;transition:all .3s}.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-delete,.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-download,.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-eye{z-index:10;width:16px;margin:0 4px;color:rgba(255,255,255,.85);font-size:16px;cursor:pointer;transition:all .3s}.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-delete:hover,.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-download:hover,.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-eye:hover{color:#fff}.ant-upload-list-picture-card .ant-upload-list-item-actions:hover,.ant-upload-list-picture-card .ant-upload-list-item-info:hover+.ant-upload-list-item-actions{opacity:1}.ant-upload-list-picture-card .ant-upload-list-item-thumbnail,.ant-upload-list-picture-card .ant-upload-list-item-thumbnail img{position:static;display:block;width:100%;height:100%;object-fit:contain}.ant-upload-list-picture-card .ant-upload-list-item-name{display:none;margin:8px 0 0;padding:0;line-height:1.66667;text-align:center}.ant-upload-list-picture-card .ant-upload-list-item-file+.ant-upload-list-item-name{position:absolute;bottom:10px;display:block}.ant-upload-list-picture-card .ant-upload-list-item-uploading.ant-upload-list-item{background-color:#fafafa}.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-info{height:auto}.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-info .anticon-delete,.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-info .anticon-eye,.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-info::before{display:none}.ant-upload-list-picture-card .ant-upload-list-item-progress{bottom:32px;width:calc(100% - 14px);padding-left:0}.ant-upload-list-picture-container,.ant-upload-list-text-container{transition:opacity .3s,height .3s}.ant-upload-list-picture-container::before,.ant-upload-list-text-container::before{display:table;width:0;height:0;content:''}.ant-upload-list-picture-container .ant-upload-span,.ant-upload-list-text-container .ant-upload-span{display:block;flex:auto}.ant-upload-list-picture .ant-upload-span,.ant-upload-list-text .ant-upload-span{display:flex;align-items:center}.ant-upload-list-picture .ant-upload-span>*,.ant-upload-list-text .ant-upload-span>*{flex:none}.ant-upload-list-picture .ant-upload-list-item-name,.ant-upload-list-text .ant-upload-list-item-name{flex:auto;margin:0;padding:0 4px}.ant-upload-list-picture .ant-upload-list-item-card-actions,.ant-upload-list-text .ant-upload-list-item-card-actions,.ant-upload-list-text .ant-upload-text-icon .anticon{position:static}.ant-upload-list .ant-upload-animate-inline-appear,.ant-upload-list .ant-upload-animate-inline-enter,.ant-upload-list .ant-upload-animate-inline-leave{animation-duration:.3s;animation-fill-mode:cubic-bezier(.78,.14,.15,.86)}.ant-upload-list .ant-upload-animate-inline-appear,.ant-upload-list .ant-upload-animate-inline-enter{animation-name:uploadAnimateInlineIn}.ant-upload-list .ant-upload-animate-inline-leave{animation-name:uploadAnimateInlineOut}@keyframes uploadAnimateInlineIn{from{width:0;height:0;margin:0;padding:0;opacity:0}}@keyframes uploadAnimateInlineOut{to{width:0;height:0;margin:0;padding:0;opacity:0}}.ant-upload-rtl.ant-upload.ant-upload-select-picture-card{margin-right:auto;margin-left:8px}.ant-upload-list-rtl .ant-upload-list-item-list-type-text:hover .ant-upload-list-item-name-icon-count-1{padding-right:22px;padding-left:14px}.ant-upload-list-rtl .ant-upload-list-item-list-type-text:hover .ant-upload-list-item-name-icon-count-2{padding-right:22px;padding-left:28px}.ant-upload-list-rtl .ant-upload-list-item-name{padding-right:20px;padding-left:0}.ant-upload-list-rtl .ant-upload-list-item-name-icon-count-1{padding-left:14px}.ant-upload-list-rtl .ant-upload-list-item-card-actions{right:auto;left:0}.ant-upload-list-rtl .ant-upload-list-item-card-actions .anticon{padding-right:0;padding-left:5px}.ant-upload-list-rtl .ant-upload-list-item-info{padding:0 4px 0 12px}.ant-upload-list-rtl .ant-upload-list-item-error .ant-upload-list-item-card-actions .anticon{padding-right:0;padding-left:5px}.ant-upload-list-rtl .ant-upload-list-item-progress{padding-right:24px;padding-left:0}.ant-upload-list-picture .ant-upload-list-item-info,.ant-upload-list-picture-card .ant-upload-list-item-info{padding:0}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-thumbnail,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-thumbnail{right:8px;left:auto}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-icon,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-actions,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-icon{right:50%;left:auto;transform:translate(50%,-50%)}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-name,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-name{margin:0 8px 0 0;padding-right:48px;padding-left:8px}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-name-icon-count-1,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-name-icon-count-1{padding-right:48px;padding-left:18px}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-name-icon-count-2,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-name-icon-count-2{padding-right:48px;padding-left:36px}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-progress,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-progress{padding-right:0;padding-left:0}.ant-upload-list-rtl .ant-upload-list-picture-card-container{margin:0 0 4px 4px}.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-file+.ant-upload-list-item-name{margin:8px 0 0;padding:0}.ant-cascader-checkbox,.ant-cascader-checkbox-wrapper,.ant-select-auto-complete{margin:0;padding:0;font-variant:tabular-nums;font-feature-settings:tnum}.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item{float:unset}.ant-select-auto-complete{box-sizing:border-box;color:rgba(0,0,0,.85);font-size:12px;line-height:1.66667;list-style:none}.ant-select-auto-complete .ant-select-clear{right:13px}.ant-select-dropdown-hidden{display:none}.ant-cascader-checkbox{box-sizing:border-box;color:rgba(0,0,0,.85);font-size:12px;list-style:none;position:relative;line-height:1;white-space:nowrap;outline:0;cursor:pointer}.ant-cascader-checkbox-input:focus+.ant-cascader-checkbox-inner,.ant-cascader-checkbox-wrapper:hover .ant-cascader-checkbox-inner,.ant-cascader-checkbox:hover .ant-cascader-checkbox-inner{border-color:#1890ff}.ant-cascader-checkbox-checked::after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #1890ff;border-radius:2px;visibility:hidden;animation:antCheckboxEffect .36s ease-in-out;animation-fill-mode:backwards;content:''}.ant-cascader-checkbox-wrapper:hover .ant-cascader-checkbox::after,.ant-cascader-checkbox:hover::after{visibility:visible}.ant-cascader-checkbox-inner{position:relative;top:0;left:0;display:block;width:14px;height:14px;direction:ltr;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;border-collapse:separate;transition:all .3s}.ant-cascader-checkbox-inner::after,.ant-tree-checkbox-inner::after{top:50%;width:5px;transform:rotate(45deg) scale(0) translate(-50%,-50%)}.ant-cascader-checkbox-rtl,.ant-picker-calendar-rtl,.ant-result-rtl,.ant-select-tree-checkbox-rtl,.ant-space-rtl,.ant-tree .ant-tree-treenode-rtl,.ant-tree-checkbox-rtl,.ant-tree-rtl,.ant-tree-select-dropdown-rtl,.avatar-list-rtl,.error-collect-rtl,.exception-rtl,.global-footer-rtl,.loading-default-rtl,.onboarding-rtl,.page-header-rtl,.result-rtl,.reuse-tab-rtl,.setting-drawer-rtl,.tag-select-rtl,html.rtl{direction:rtl}.ant-cascader-checkbox-inner::after{position:absolute;left:21.5%;display:table;height:8px;border:2px solid #fff;border-top:0;border-left:0;opacity:0;transition:all .1s cubic-bezier(.71,-.46,.88,.6),opacity .1s;content:' '}.ant-cascader-checkbox-input{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;cursor:pointer;opacity:0}.ant-cascader-checkbox-checked .ant-cascader-checkbox-inner::after{position:absolute;display:table;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(1) translate(-50%,-50%);opacity:1;transition:all .2s cubic-bezier(.12,.4,.29,1.46) .1s;content:' '}.ant-cascader-checkbox-checked .ant-cascader-checkbox-inner{background-color:#1890ff;border-color:#1890ff}.ant-cascader-checkbox-disabled{cursor:not-allowed}.ant-cascader-checkbox-disabled.ant-cascader-checkbox-checked .ant-cascader-checkbox-inner::after{border-color:rgba(0,0,0,.25);animation-name:none}.ant-cascader-checkbox-disabled .ant-cascader-checkbox-input{cursor:not-allowed;pointer-events:none}.ant-cascader-checkbox-disabled .ant-cascader-checkbox-inner{background-color:#f5f5f5;border-color:#d9d9d9!important}.ant-cascader-checkbox-disabled .ant-cascader-checkbox-inner::after{border-color:#f5f5f5;border-collapse:separate;animation-name:none}.ant-cascader-checkbox-disabled+span{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-cascader-checkbox-group,.ant-cascader-checkbox-wrapper{box-sizing:border-box;color:rgba(0,0,0,.85);font-size:12px;list-style:none}.ant-cascader-checkbox-disabled:hover::after,.ant-cascader-checkbox-wrapper:hover .ant-cascader-checkbox-disabled::after{visibility:hidden}.ant-cascader-checkbox-wrapper{display:inline-flex;align-items:baseline;line-height:unset;cursor:pointer}.ant-cascader-checkbox-wrapper::after{display:inline-block;width:0;overflow:hidden;content:'\a0'}.ant-cascader-checkbox-wrapper.ant-cascader-checkbox-wrapper-disabled{cursor:not-allowed}.ant-cascader-checkbox-wrapper+.ant-cascader-checkbox-wrapper{margin-left:8px}.ant-cascader-checkbox-wrapper.ant-cascader-checkbox-wrapper-in-form-item input[type=checkbox]{width:14px;height:14px}.ant-cascader-checkbox+span{padding-right:8px;padding-left:8px}.ant-cascader-checkbox-group{margin:0;padding:0;font-variant:tabular-nums;line-height:1.66667;font-feature-settings:tnum;display:inline-block}.ant-cascader-checkbox-group-item{margin-right:6px}.ant-cascader-checkbox-group-item:last-child{margin-right:0}.ant-cascader-checkbox-group-item+.ant-cascader-checkbox-group-item{margin-left:0}.ant-cascader-checkbox-indeterminate .ant-cascader-checkbox-inner{background-color:#fff;border-color:#d9d9d9}.ant-cascader-checkbox-indeterminate .ant-cascader-checkbox-inner::after{top:50%;left:50%;width:6px;height:6px;background-color:#1890ff;border:0;transform:translate(-50%,-50%) scale(1);opacity:1;content:' '}.ant-cascader-checkbox-indeterminate.ant-cascader-checkbox-disabled .ant-cascader-checkbox-inner::after{background-color:rgba(0,0,0,.25);border-color:rgba(0,0,0,.25)}.ant-cascader-menu,.ant-row-rtl #search-box,.sv__bordered .sv__item,.sv__bordered .sv__label{border-right:1px solid #f0f0f0}.ant-cascader-checkbox-group-rtl .ant-cascader-checkbox-group-item{margin-right:0;margin-left:6px}.ant-cascader-checkbox-group-rtl .ant-cascader-checkbox-group-item:last-child{margin-left:0!important}.ant-cascader-checkbox-group-rtl .ant-cascader-checkbox-group-item+.ant-cascader-checkbox-group-item{margin-left:6px}.ant-cascader{width:184px}.ant-cascader-checkbox{top:0;margin-right:4px}.ant-cascader-menus{display:flex;flex-wrap:nowrap;align-items:flex-start}.ant-cascader-menus.ant-cascader-menu-empty .ant-cascader-menu{width:100%;height:auto}.ant-cascader-menu{flex-grow:1;min-width:111px;height:180px;margin:-4px 0;padding:4px 0;overflow:auto;vertical-align:top;list-style:none;-ms-overflow-style:-ms-autohiding-scrollbar}.ant-cascader-menu-item{display:flex;flex-wrap:nowrap;align-items:center;padding:5px 8px;overflow:hidden;line-height:18px;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:all .3s}.ant-cascader-menu-item:hover{background:#f5f5f5}.ant-cascader-menu-item-disabled{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-cascader-menu-item-disabled:hover{background:0 0}.ant-cascader-menu-empty .ant-cascader-menu-item{color:rgba(0,0,0,.25);cursor:default;pointer-events:none}.ant-cascader-menu-item-active:not(.ant-cascader-menu-item-disabled),.ant-cascader-menu-item-active:not(.ant-cascader-menu-item-disabled):hover{font-weight:600;background-color:#e6f7ff}.ant-cascader-menu-item-content{flex:auto}.ant-cascader-menu-item-expand .ant-cascader-menu-item-expand-icon,.ant-cascader-menu-item-loading-icon{margin-left:0;color:rgba(0,0,0,.45);font-size:10px}.ant-tree-checkbox,.ant-tree-checkbox-wrapper{box-sizing:border-box;padding:0;font-size:12px;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum}.ant-cascader-menu-item-disabled.ant-cascader-menu-item-expand .ant-cascader-menu-item-expand-icon,.ant-cascader-menu-item-disabled.ant-cascader-menu-item-loading-icon{color:rgba(0,0,0,.25)}.ant-cascader-menu-item-keyword{color:#ff4d4f}.ant-cascader-rtl .ant-cascader-menu-item-expand-icon,.ant-cascader-rtl .ant-cascader-menu-item-loading-icon{margin-right:0;margin-left:0}.ant-cascader-rtl .ant-cascader-checkbox{top:0;margin-right:0;margin-left:4px}.ant-cascader-menus{position:relative;margin-top:2px;margin-bottom:2px}nz-tree-virtual-scroll-view{display:block;position:relative;overflow:auto;contain:strict;transform:translateZ(0);will-change:scroll-position;-webkit-overflow-scrolling:touch}nz-tree-virtual-scroll-view .ant-tree-list,nz-tree-virtual-scroll-view .ant-tree-list-holder{height:100%}nz-tree-view .ant-tree-switcher+.ant-tree-switcher.nz-tree-leaf-line-icon,nz-tree-virtual-scroll-view .ant-tree-switcher+.ant-tree-switcher.nz-tree-leaf-line-icon{display:none}nz-tree-view .ant-tree-list-holder-inner{display:flex;flex-direction:column}@keyframes ant-tree-node-fx-do-not-use{0%{opacity:0}100%{opacity:1}}.ant-tree.ant-tree-directory .ant-tree-treenode{position:relative}.ant-tree.ant-tree-directory .ant-tree-treenode::before{position:absolute;top:0;right:0;bottom:4px;left:0;transition:background-color .3s;content:'';pointer-events:none}.ant-tree.ant-tree-directory .ant-tree-treenode:hover::before{background:#f5f5f5}.ant-tree.ant-tree-directory .ant-tree-treenode>*{z-index:1}.ant-tree.ant-tree-directory .ant-tree-treenode .ant-tree-switcher{transition:color .3s}.ant-tree.ant-tree-directory .ant-tree-treenode .ant-tree-node-content-wrapper{border-radius:0;user-select:none}.ant-tree.ant-tree-directory .ant-tree-treenode .ant-tree-node-content-wrapper:hover{background:0 0}.ant-tree.ant-tree-directory .ant-tree-treenode .ant-tree-node-content-wrapper.ant-tree-node-selected{color:#fff;background:0 0}.ant-tree.ant-tree-directory .ant-tree-treenode-selected::before,.ant-tree.ant-tree-directory .ant-tree-treenode-selected:hover::before{background:#1890ff}.ant-tree.ant-tree-directory .ant-tree-treenode-selected .ant-tree-switcher{color:#fff}.ant-tree.ant-tree-directory .ant-tree-treenode-selected .ant-tree-node-content-wrapper{color:#fff;background:0 0}.ant-tree-checkbox{color:rgba(0,0,0,.85);position:relative;line-height:1;white-space:nowrap;outline:0;cursor:pointer}.ant-tree-checkbox-input:focus+.ant-tree-checkbox-inner,.ant-tree-checkbox-wrapper:hover .ant-tree-checkbox-inner,.ant-tree-checkbox:hover .ant-tree-checkbox-inner{border-color:#1890ff}.ant-tree-checkbox-checked::after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #1890ff;border-radius:2px;visibility:hidden;animation:antCheckboxEffect .36s ease-in-out;animation-fill-mode:backwards;content:''}.ant-tree-checkbox-wrapper:hover .ant-tree-checkbox::after,.ant-tree-checkbox:hover::after{visibility:visible}.ant-tree-checkbox-inner{position:relative;top:0;left:0;display:block;width:14px;height:14px;direction:ltr;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;border-collapse:separate;transition:all .3s}.ant-select-tree-checkbox-inner::after,.ant-tree-checkbox-inner::after{transition:all .1s cubic-bezier(.71,-.46,.88,.6),opacity .1s;opacity:0}.ant-tree-checkbox-inner::after{position:absolute;left:21.5%;display:table;height:8px;border:2px solid #fff;border-top:0;border-left:0;content:' '}.ant-tree-checkbox-input{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;cursor:pointer;opacity:0}.ant-tree-checkbox-checked .ant-tree-checkbox-inner::after{position:absolute;display:table;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(1) translate(-50%,-50%);opacity:1;transition:all .2s cubic-bezier(.12,.4,.29,1.46) .1s;content:' '}.ant-select-tree,.ant-tree{transition:background-color .3s}.ant-tree-checkbox-checked .ant-tree-checkbox-inner{background-color:#1890ff;border-color:#1890ff}.ant-tree-checkbox-disabled{cursor:not-allowed}.ant-tree-checkbox-disabled.ant-tree-checkbox-checked .ant-tree-checkbox-inner::after{border-color:rgba(0,0,0,.25);animation-name:none}.ant-tree-checkbox-disabled .ant-tree-checkbox-input{cursor:not-allowed;pointer-events:none}.ant-tree-checkbox-disabled .ant-tree-checkbox-inner{background-color:#f5f5f5;border-color:#d9d9d9!important}.ant-tree-checkbox-disabled .ant-tree-checkbox-inner::after{border-color:#f5f5f5;border-collapse:separate;animation-name:none}.ant-tree-checkbox-disabled+span{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-tree-checkbox-disabled:hover::after,.ant-tree-checkbox-wrapper:hover .ant-tree-checkbox-disabled::after{visibility:hidden}.ant-tree-checkbox-wrapper{margin:0;color:rgba(0,0,0,.85);display:inline-flex;align-items:baseline;line-height:unset;cursor:pointer}.ant-tree-checkbox-wrapper::after{display:inline-block;width:0;overflow:hidden;content:'\a0'}.ant-tree-checkbox-wrapper.ant-tree-checkbox-wrapper-disabled{cursor:not-allowed}.ant-tree-checkbox-wrapper+.ant-tree-checkbox-wrapper{margin-left:8px}.ant-tree-checkbox-wrapper.ant-tree-checkbox-wrapper-in-form-item input[type=checkbox]{width:14px;height:14px}.ant-tree-checkbox+span{padding-right:8px;padding-left:8px}.ant-tree,.ant-tree-checkbox-group{padding:0;color:rgba(0,0,0,.85);font-size:12px;line-height:1.66667;box-sizing:border-box;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum}.ant-tree-checkbox-group{margin:0;display:inline-block}.ant-tree-checkbox-group-item{margin-right:6px}.ant-tree-checkbox-group-item:last-child{margin-right:0}.ant-tree-checkbox-group-item+.ant-tree-checkbox-group-item{margin-left:0}.ant-tree-checkbox-indeterminate .ant-tree-checkbox-inner{background-color:#fff;border-color:#d9d9d9}.ant-tree-checkbox-indeterminate .ant-tree-checkbox-inner::after{top:50%;left:50%;width:6px;height:6px;background-color:#1890ff;border:0;transform:translate(-50%,-50%) scale(1);opacity:1;content:' '}.ant-tree-checkbox-indeterminate.ant-tree-checkbox-disabled .ant-tree-checkbox-inner::after{background-color:rgba(0,0,0,.25);border-color:rgba(0,0,0,.25)}.ant-tree-checkbox-group-rtl .ant-tree-checkbox-group-item{margin-right:0;margin-left:6px}.ant-tree-checkbox-group-rtl .ant-tree-checkbox-group-item:last-child{margin-left:0!important}.ant-tree-checkbox-group-rtl .ant-tree-checkbox-group-item+.ant-tree-checkbox-group-item{margin-left:6px}.ant-tree{margin:0;background:#fff;border-radius:2px}.ant-tree-focused:not(:hover):not(.ant-tree-active-focused){background:#e6f7ff}.ant-tree.ant-tree-block-node .ant-tree-list-holder-inner{align-items:stretch}.ant-tree.ant-tree-block-node .ant-tree-list-holder-inner .ant-tree-node-content-wrapper{flex:auto}.ant-tree.ant-tree-block-node .ant-tree-list-holder-inner .ant-tree-treenode.dragging{position:relative}.ant-tree.ant-tree-block-node .ant-tree-list-holder-inner .ant-tree-treenode.dragging::after{position:absolute;top:0;right:0;bottom:2px;left:0;border:1px solid #1890ff;opacity:0;animation:ant-tree-node-fx-do-not-use .3s;animation-play-state:running;animation-fill-mode:forwards;content:'';pointer-events:none}.ant-tree .ant-tree-treenode{display:flex;align-items:flex-start;padding:0 0 2px;outline:0}.ant-select-tree-switcher,.ant-tree-switcher{flex:none;align-self:stretch;text-align:center;user-select:none}.ant-tree .ant-tree-treenode-disabled .ant-tree-node-content-wrapper{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-tree .ant-tree-treenode-disabled .ant-tree-node-content-wrapper:hover{background:0 0}.ant-tree .ant-tree-treenode-active .ant-tree-node-content-wrapper{background:#f5f5f5}.ant-tree .ant-tree-treenode:not(.ant-tree .ant-tree-treenode-disabled).filter-node .ant-tree-title{color:inherit;font-weight:500}.ant-tree-indent{align-self:stretch;white-space:nowrap;user-select:none}.ant-tree-indent-unit{display:inline-block;width:20px}.ant-tree-draggable-icon{width:20px;line-height:20px;text-align:center;opacity:.2;transition:opacity .3s}.ant-tree-treenode:hover .ant-tree-draggable-icon{opacity:.45}.ant-tree-switcher{position:relative;width:20px;margin:0;line-height:20px;cursor:pointer}.ant-tree-switcher .ant-select-tree-switcher-icon,.ant-tree-switcher .ant-tree-switcher-icon{display:inline-block;font-size:10px;vertical-align:baseline}.ant-tree-switcher .ant-select-tree-switcher-icon svg,.ant-tree-switcher .ant-tree-switcher-icon svg{transition:transform .3s}.ant-tree-switcher-noop{cursor:default}.ant-tree-switcher_close .ant-tree-switcher-icon svg{transform:rotate(-90deg)}.ant-tree-switcher-loading-icon{color:#1890ff}.ant-tree-switcher-leaf-line{position:relative;z-index:1;display:inline-block;width:100%;height:100%}.ant-tree-switcher-leaf-line::before{position:absolute;top:0;right:12px;bottom:-2px;margin-left:-1px;border-right:1px solid #d9d9d9;content:' '}.ant-tree-switcher-leaf-line::after{position:absolute;width:6px;height:10px;border-bottom:1px solid #d9d9d9;content:' '}.ant-tree-checkbox{top:initial;margin:3px 8px 0 0}.ant-tree .ant-tree-node-content-wrapper{position:relative;z-index:auto;min-height:20px;margin:0;padding:0 4px;color:inherit;line-height:20px;background:0 0;border-radius:2px;cursor:pointer;transition:all .3s,border 0s,line-height 0s,box-shadow 0s}.ant-tree .ant-tree-node-content-wrapper:hover{background-color:#f5f5f5}.ant-tree .ant-tree-node-content-wrapper.ant-tree-node-selected{background-color:#bae7ff}.ant-tree .ant-tree-node-content-wrapper .ant-tree-iconEle{display:inline-block;width:20px;height:20px;line-height:20px;text-align:center;vertical-align:top}.ant-tree .ant-tree-node-content-wrapper .ant-tree-iconEle:empty,.ant-tree-show-line .ant-tree-indent-unit-end::before{display:none}.ant-tree-unselectable .ant-tree-node-content-wrapper:hover{background-color:transparent}.ant-tree-node-content-wrapper{line-height:20px;user-select:none}.ant-tree-node-content-wrapper .ant-tree-drop-indicator{position:absolute;z-index:1;height:2px;background-color:#1890ff;border-radius:1px;pointer-events:none}.ant-tree-node-content-wrapper .ant-tree-drop-indicator::after{position:absolute;top:-3px;left:-6px;width:8px;height:8px;background-color:transparent;border:2px solid #1890ff;border-radius:50%;content:''}.ant-tree .ant-tree-treenode.drop-container>[draggable]{box-shadow:0 0 0 2px #1890ff}.ant-tree-show-line .ant-tree-indent-unit{position:relative;height:100%}.ant-tree-show-line .ant-tree-indent-unit::before{position:absolute;top:0;right:10px;bottom:-2px;border-right:1px solid #d9d9d9;content:''}.ant-tree-show-line .ant-tree-switcher{background:#fff}.ant-tree-show-line .ant-tree-switcher-line-icon{vertical-align:-.15em}.ant-tree .ant-tree-treenode-leaf-last .ant-tree-switcher-leaf-line::before{top:auto!important;bottom:auto!important;height:10px!important}.ant-tree-rtl .ant-tree-node-content-wrapper[draggable=true] .ant-tree-drop-indicator::after{right:-6px;left:unset}.ant-tree-rtl.ant-tree-show-line .ant-tree-indent-unit::before{right:auto;left:-11px;border-right:none;border-left:1px solid #d9d9d9}.ant-tree-rtl .ant-tree-checkbox,.ant-tree-select-dropdown-rtl .ant-select-tree-checkbox{margin:3px 0 0 8px}.font-highlight{color:#ff4d4f}.ant-tree-child-tree{overflow:hidden}nz-tree{display:block}.ant-select-tree-checkbox{box-sizing:border-box;padding:0;color:rgba(0,0,0,.85);font-size:12px;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;position:relative;line-height:1;white-space:nowrap;outline:0;cursor:pointer}.ant-select-tree-checkbox-input:focus+.ant-select-tree-checkbox-inner,.ant-select-tree-checkbox-wrapper:hover .ant-select-tree-checkbox-inner,.ant-select-tree-checkbox:hover .ant-select-tree-checkbox-inner{border-color:#1890ff}.ant-select-tree-checkbox-checked::after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #1890ff;border-radius:2px;visibility:hidden;animation:antCheckboxEffect .36s ease-in-out;animation-fill-mode:backwards;content:''}.ant-color-picker,.ant-select-tree-checkbox-wrapper:hover .ant-select-tree-checkbox::after,.ant-select-tree-checkbox:hover::after{visibility:visible}.ant-input-number__hide-step .ant-input-number-handler-wrap,.ant-select-tree-checkbox-disabled:hover::after,.ant-select-tree-checkbox-wrapper:hover .ant-select-tree-checkbox-disabled::after,.exception__img-block::after{visibility:hidden}.ant-select-tree-checkbox-inner{position:relative;top:0;left:0;display:block;width:14px;height:14px;direction:ltr;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;border-collapse:separate;transition:all .3s}.ant-select-tree-checkbox-inner::after{position:absolute;top:50%;left:21.5%;display:table;width:5px;height:8px;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(0) translate(-50%,-50%);content:' '}.ant-select-tree-checkbox-input{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;cursor:pointer;opacity:0}.ant-select-tree-checkbox-checked .ant-select-tree-checkbox-inner::after{position:absolute;display:table;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(1) translate(-50%,-50%);opacity:1;transition:all .2s cubic-bezier(.12,.4,.29,1.46) .1s;content:' '}.ant-select-tree-checkbox-checked .ant-select-tree-checkbox-inner{background-color:#1890ff;border-color:#1890ff}.ant-select-tree-checkbox-disabled{cursor:not-allowed}.ant-select-tree-checkbox-disabled.ant-select-tree-checkbox-checked .ant-select-tree-checkbox-inner::after{border-color:rgba(0,0,0,.25);animation-name:none}.ant-select-tree-checkbox-disabled .ant-select-tree-checkbox-input{cursor:not-allowed;pointer-events:none}.ant-select-tree-checkbox-disabled .ant-select-tree-checkbox-inner{background-color:#f5f5f5;border-color:#d9d9d9!important}.ant-select-tree-checkbox-disabled .ant-select-tree-checkbox-inner::after{border-color:#f5f5f5;border-collapse:separate;animation-name:none}.ant-select-tree-checkbox-disabled+span{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-select-tree-checkbox-group,.ant-select-tree-checkbox-wrapper{box-sizing:border-box;color:rgba(0,0,0,.85);font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;font-size:12px}.ant-select-tree-checkbox-wrapper{margin:0;padding:0;display:inline-flex;align-items:baseline;line-height:unset;cursor:pointer}.ant-select-tree-checkbox-wrapper::after{display:inline-block;width:0;overflow:hidden;content:'\a0'}.ant-select-tree-checkbox-wrapper.ant-select-tree-checkbox-wrapper-disabled{cursor:not-allowed}.ant-select-tree-checkbox-wrapper+.ant-select-tree-checkbox-wrapper{margin-left:8px}.ant-select-tree-checkbox-wrapper.ant-select-tree-checkbox-wrapper-in-form-item input[type=checkbox]{width:14px;height:14px}.ant-select-tree-checkbox+span{padding-right:8px;padding-left:8px}.ant-select-tree-checkbox-group{margin:0;padding:0;line-height:1.66667;display:inline-block}.ant-select-tree-checkbox-group-item{margin-right:6px}.ant-select-tree-checkbox-group-item:last-child{margin-right:0}.ant-select-tree-checkbox-group-item+.ant-select-tree-checkbox-group-item{margin-left:0}.ant-select-tree-checkbox-indeterminate .ant-select-tree-checkbox-inner{background-color:#fff;border-color:#d9d9d9}.ant-select-tree-checkbox-indeterminate .ant-select-tree-checkbox-inner::after{top:50%;left:50%;width:6px;height:6px;background-color:#1890ff;border:0;transform:translate(-50%,-50%) scale(1);opacity:1;content:' '}.ant-select-tree-checkbox-indeterminate.ant-select-tree-checkbox-disabled .ant-select-tree-checkbox-inner::after{background-color:rgba(0,0,0,.25);border-color:rgba(0,0,0,.25)}.ant-select-tree-checkbox-group-rtl .ant-select-tree-checkbox-group-item{margin-right:0;margin-left:6px}.ant-select-tree-checkbox-group-rtl .ant-select-tree-checkbox-group-item:last-child{margin-left:0!important}.ant-select-tree-checkbox-group-rtl .ant-select-tree-checkbox-group-item+.ant-select-tree-checkbox-group-item{margin-left:6px}.ant-tree-select-dropdown{padding:4px 2px}.ant-picker-calendar,.ant-select-tree{padding:0;line-height:1.66667;color:rgba(0,0,0,.85);font-feature-settings:tnum;list-style:none;box-sizing:border-box;font-variant:tabular-nums}.ant-tree-select-dropdown .ant-select-tree{border-radius:0}.ant-tree-select-dropdown .ant-select-tree-list-holder-inner{align-items:stretch}.ant-tree-select-dropdown .ant-select-tree-list-holder-inner .ant-select-tree-treenode .ant-select-tree-node-content-wrapper{flex:auto}.ant-select-tree{margin:0;font-size:12px;background:#fff;border-radius:2px}.ant-select-tree-focused:not(:hover):not(.ant-select-tree-active-focused){background:#e6f7ff}.ant-select-tree-list-holder-inner{align-items:flex-start}.ant-select-tree.ant-select-tree-block-node .ant-select-tree-list-holder-inner{align-items:stretch}.ant-select-tree.ant-select-tree-block-node .ant-select-tree-list-holder-inner .ant-select-tree-node-content-wrapper{flex:auto}.ant-select-tree.ant-select-tree-block-node .ant-select-tree-list-holder-inner .ant-select-tree-treenode.dragging{position:relative}.ant-select-tree.ant-select-tree-block-node .ant-select-tree-list-holder-inner .ant-select-tree-treenode.dragging::after{position:absolute;top:0;right:0;bottom:2px;left:0;border:1px solid #1890ff;opacity:0;animation:ant-tree-node-fx-do-not-use .3s;animation-play-state:running;animation-fill-mode:forwards;content:'';pointer-events:none}.ant-select-tree .ant-select-tree-treenode{display:flex;align-items:flex-start;padding:0 0 2px;outline:0}.ant-select-tree .ant-select-tree-treenode-disabled .ant-select-tree-node-content-wrapper{color:rgba(0,0,0,.25);cursor:not-allowed}.ant-select-tree .ant-select-tree-treenode-disabled .ant-select-tree-node-content-wrapper:hover{background:0 0}.ant-select-tree .ant-select-tree-treenode-active .ant-select-tree-node-content-wrapper{background:#f5f5f5}.ant-select-tree .ant-select-tree-treenode:not(.ant-select-tree .ant-select-tree-treenode-disabled).filter-node .ant-select-tree-title{color:inherit;font-weight:500}.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected .ant-picker-calendar-date .ant-picker-calendar-date-value,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected .ant-picker-calendar-date-today .ant-picker-calendar-date-value,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected:hover .ant-picker-calendar-date .ant-picker-calendar-date-value,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected:hover .ant-picker-calendar-date-today .ant-picker-calendar-date-value,.ant-select-tree-switcher-loading-icon{color:#1890ff}.ant-select-tree-indent{align-self:stretch;white-space:nowrap;user-select:none}.ant-select-tree-indent-unit{display:inline-block;width:20px}.ant-select-tree-draggable-icon{width:20px;line-height:20px;text-align:center;opacity:.2;transition:opacity .3s}.ant-select-tree-treenode:hover .ant-select-tree-draggable-icon{opacity:.45}.ant-select-tree-switcher{position:relative;width:20px;margin:0;line-height:20px;cursor:pointer}.ant-select-tree-switcher .ant-select-tree-switcher-icon,.ant-select-tree-switcher .ant-tree-switcher-icon{display:inline-block;font-size:10px;vertical-align:baseline}.ant-select-tree-switcher .ant-select-tree-switcher-icon svg,.ant-select-tree-switcher .ant-tree-switcher-icon svg{transition:transform .3s}.ant-select-tree-switcher-noop{cursor:default}.ant-select-tree-switcher_close .ant-select-tree-switcher-icon svg{transform:rotate(-90deg)}.ant-select-tree-switcher-leaf-line{position:relative;z-index:1;display:inline-block;width:100%;height:100%}.ant-select-tree-switcher-leaf-line::before{position:absolute;top:0;right:12px;bottom:-2px;margin-left:-1px;border-right:1px solid #d9d9d9;content:' '}.ant-select-tree-switcher-leaf-line::after{position:absolute;width:6px;height:10px;border-bottom:1px solid #d9d9d9;content:' '}.ant-select-tree-checkbox{top:initial;margin:3px 8px 0 0}.ant-select-tree .ant-select-tree-node-content-wrapper{position:relative;z-index:auto;min-height:20px;margin:0;padding:0 4px;color:inherit;line-height:20px;background:0 0;border-radius:2px;cursor:pointer;transition:all .3s,border 0s,line-height 0s,box-shadow 0s}.ant-select-tree .ant-select-tree-node-content-wrapper:hover{background-color:#f5f5f5}.ant-select-tree .ant-select-tree-node-content-wrapper.ant-select-tree-node-selected{background-color:#bae7ff}.ant-select-tree .ant-select-tree-node-content-wrapper .ant-select-tree-iconEle{display:inline-block;width:20px;height:20px;line-height:20px;text-align:center;vertical-align:top}.ant-select-tree .ant-select-tree-node-content-wrapper .ant-select-tree-iconEle:empty,.ant-select-tree-show-line .ant-select-tree-indent-unit-end::before{display:none}.ant-select-tree-unselectable .ant-select-tree-node-content-wrapper:hover{background-color:transparent}.ant-select-tree-node-content-wrapper{line-height:20px;user-select:none}.ant-select-tree-node-content-wrapper .ant-tree-drop-indicator{position:absolute;z-index:1;height:2px;background-color:#1890ff;border-radius:1px;pointer-events:none}.ant-select-tree-node-content-wrapper .ant-tree-drop-indicator::after{position:absolute;top:-3px;left:-6px;width:8px;height:8px;background-color:transparent;border:2px solid #1890ff;border-radius:50%;content:''}.ant-select-tree .ant-select-tree-treenode.drop-container>[draggable]{box-shadow:0 0 0 2px #1890ff}.ant-select-tree-show-line .ant-select-tree-indent-unit{position:relative;height:100%}.ant-select-tree-show-line .ant-select-tree-indent-unit::before{position:absolute;top:0;right:10px;bottom:-2px;border-right:1px solid #d9d9d9;content:''}.ant-select-tree-show-line .ant-select-tree-switcher{background:#fff}.ant-select-tree-show-line .ant-select-tree-switcher-line-icon{vertical-align:-.15em}.ant-select-tree .ant-select-tree-treenode-leaf-last .ant-select-tree-switcher-leaf-line::before{top:auto!important;bottom:auto!important;height:10px!important}.ant-tree-select-dropdown-rtl .ant-select-tree .ant-select-tree-switcher-loading-icon{transform:scaleY(-1)}.ant-tree.ant-select-tree.ant-tree-show-line nz-tree-node[builtin]:not(:last-child)>li::before{content:' ';width:1px;border-left:1px solid #d9d9d9;height:calc(100% - 16px);position:absolute;left:12px;margin:26px 0}.ant-select-dropdown.ant-select-tree-dropdown{top:100%;left:0;position:relative;width:100%;margin-top:4px;margin-bottom:4px;overflow:auto}.ant-picker-calendar{margin:0;font-size:12px;background:#fff}.ant-picker-calendar-header{display:flex;justify-content:flex-end;padding:8px 0}.ant-picker-calendar-header .ant-picker-calendar-year-select{min-width:80px}.ant-picker-calendar-header .ant-picker-calendar-month-select{min-width:70px;margin-left:4px}.ant-picker-calendar-header .ant-picker-calendar-mode-switch{margin-left:4px}.ant-picker-calendar .ant-picker-panel{background:#fff;border:0;border-top:1px solid #f0f0f0;border-radius:0}.ant-picker-calendar .ant-picker-panel .ant-picker-date-panel,.ant-picker-calendar .ant-picker-panel .ant-picker-month-panel{width:auto}.ant-picker-calendar .ant-picker-panel .ant-picker-body{padding:4px 0}.ant-picker-calendar .ant-picker-panel .ant-picker-content{width:100%}.ant-picker-calendar-mini{border-radius:2px}.ant-picker-calendar-mini .ant-picker-calendar-header{padding-right:4px;padding-left:4px}.ant-picker-calendar-mini .ant-picker-panel{border-radius:0 0 2px 2px}.ant-picker-calendar-mini .ant-picker-content{height:256px}.ant-picker-calendar-mini .ant-picker-content th{height:auto;padding:0;line-height:18px}.ant-picker-calendar-mini .ant-picker-cell::before{pointer-events:none}.ant-picker-calendar-full .ant-picker-panel{display:block;width:100%;text-align:right;background:#fff;border:0}.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell .ant-picker-calendar-date-today::before,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell::before{display:none}.ant-picker-calendar-full .ant-picker-panel .ant-picker-body td,.ant-picker-calendar-full .ant-picker-panel .ant-picker-body th{padding:0}.ant-picker-calendar-full .ant-picker-panel .ant-picker-body th{height:auto;padding:0 12px 5px 0;line-height:18px}.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell:hover .ant-picker-calendar-date{background:#f5f5f5}.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected .ant-picker-calendar-date,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected .ant-picker-calendar-date-today,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected:hover .ant-picker-calendar-date,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected:hover .ant-picker-calendar-date-today{background:#e6f7ff}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date{display:block;width:auto;height:auto;margin:0 2px;padding:2px 4px 0;border:0;border-top:2px solid #f0f0f0;border-radius:0;transition:background .3s}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-value{line-height:24px;transition:color .3s}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-content{position:static;width:auto;height:86px;overflow-y:auto;color:rgba(0,0,0,.85);line-height:1.66667;text-align:left}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-today{border-color:#1890ff}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-today .ant-picker-calendar-date-value{color:rgba(0,0,0,.85)}@media only screen and (max-width:480px){.ant-picker-calendar-header{display:block}.ant-picker-calendar-header .ant-picker-calendar-year-select{width:50%}.ant-picker-calendar-header .ant-picker-calendar-month-select{width:calc(50% - 4px)}.ant-picker-calendar-header .ant-picker-calendar-mode-switch{width:100%;margin-top:4px;margin-left:0}.ant-picker-calendar-header .ant-picker-calendar-mode-switch>label{width:50%;text-align:center}}.ant-picker-calendar-rtl .ant-picker-calendar-header .ant-picker-calendar-mode-switch,.ant-picker-calendar-rtl .ant-picker-calendar-header .ant-picker-calendar-month-select{margin-right:4px;margin-left:0}.ant-picker-calendar-rtl.ant-picker-calendar-full .ant-picker-panel{text-align:left}.ant-picker-calendar-rtl.ant-picker-calendar-full .ant-picker-panel .ant-picker-body th{padding:0 0 5px 12px}.ant-picker-calendar-rtl.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-content{text-align:right}.ant-result{padding:48px 32px}.ant-result-success .ant-result-icon>.anticon{color:#52c41a}.ant-result-error .ant-result-icon>.anticon{color:#ff4d4f}.ant-result-info .ant-result-icon>.anticon{color:#1890ff}.ant-result-warning .ant-result-icon>.anticon{color:#faad14}.ant-result-image{width:250px;height:295px;margin:auto}.ant-result-icon{margin-bottom:24px;text-align:center}.ant-result-icon>.anticon{font-size:64px}.ant-result-title{color:rgba(0,0,0,.85);font-size:20px;line-height:1.8;text-align:center}.ant-result-subtitle{color:rgba(0,0,0,.45);font-size:12px;line-height:1.6;text-align:center}.ant-result-extra{margin:24px 0 0;text-align:center}.ant-result-extra>*{margin-right:8px}.ant-result-extra>:last-child{margin-right:0}.ant-result-content{margin-top:24px;padding:24px 40px;background-color:#fafafa}.ant-result-rtl .ant-result-extra>*{margin-right:0;margin-left:8px}.ant-result-rtl .ant-result-extra>:last-child{margin-left:0}nz-result{display:block}.ant-space{display:inline-flex}.ant-space-vertical{flex-direction:column}.ant-space-align-center{align-items:center}.ant-space-align-start{align-items:flex-start}.ant-space-align-end{align-items:flex-end}.ant-space-align-baseline{align-items:baseline}.ant-space-item:empty{display:none}nz-space-item{display:block}.ant-image{position:relative;display:inline-block}.ant-image-mask,.ant-image-placeholder{position:absolute;left:0;top:0;right:0;bottom:0}.ant-image-img{width:100%;height:auto;vertical-align:middle}.ant-image-img-placeholder{background-color:#f5f5f5;background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTQuNSAyLjVoLTEzQS41LjUgMCAwIDAgMSAzdjEwYS41LjUgMCAwIDAgLjUuNWgxM2EuNS41IDAgMCAwIC41LS41VjNhLjUuNSAwIDAgMC0uNS0uNXpNNS4yODEgNC43NWExIDEgMCAwIDEgMCAyIDEgMSAwIDAgMSAwLTJ6bTguMDMgNi44M2EuMTI3LjEyNyAwIDAgMS0uMDgxLjAzSDIuNzY5YS4xMjUuMTI1IDAgMCAxLS4wOTYtLjIwN2wyLjY2MS0zLjE1NmEuMTI2LjEyNiAwIDAgMSAuMTc3LS4wMTZsLjAxNi4wMTZMNy4wOCAxMC4wOWwyLjQ3LTIuOTNhLjEyNi4xMjYgMCAwIDEgLjE3Ny0uMDE2bC4wMTUuMDE2IDMuNTg4IDQuMjQ0YS4xMjcuMTI3IDAgMCAxLS4wMi4xNzV6IiBmaWxsPSIjOEM4QzhDIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz48L3N2Zz4=);background-repeat:no-repeat;background-position:center center;background-size:30%}.ant-image-mask{display:flex;align-items:center;justify-content:center;color:#fff;background:rgba(0,0,0,.5);cursor:pointer;opacity:0;transition:opacity .3s}.ant-image-mask:hover,.cdk-overlay-backdrop.ant-image-preview-mask{opacity:1}.ant-image-preview-img,.ant-image-preview-img-wrapper{transition:transform .3s cubic-bezier(.215,.61,.355,1) 0s}.ant-image-mask-info{padding:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-image-mask-info .anticon{margin-inline-end:0}.ant-image-preview{pointer-events:none;height:100%;text-align:center}.ant-image-preview.ant-zoom-appear,.ant-image-preview.ant-zoom-enter{transform:none;opacity:0;animation-duration:.3s;user-select:none}.ant-image-preview-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;height:100%;background-color:rgba(0,0,0,.45)}.ant-image-preview-mask-hidden{display:none}.ant-image-preview-wrap{position:fixed;top:0;right:0;bottom:0;left:0;overflow:auto;outline:0;-webkit-overflow-scrolling:touch;z-index:1080}.ant-image-preview-body{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.ant-image-preview-img{max-width:100%;max-height:100%;vertical-align:middle;transform:scale3d(1,1,1);cursor:grab;user-select:none;pointer-events:auto}.ant-image-preview-img-wrapper{position:absolute;top:0;right:0;bottom:0;left:0}.ant-image-preview-img-wrapper::before{display:inline-block;width:1px;height:50%;margin-right:-1px;content:''}.ant-image-preview-moving .ant-image-preview-img{cursor:grabbing}.ant-image-preview-moving .ant-image-preview-img-wrapper{transition-duration:0s}.ant-image-preview-operations{box-sizing:border-box;margin:0;padding:0;font-size:12px;font-variant:tabular-nums;line-height:1.66667;font-feature-settings:tnum;position:absolute;top:0;right:0;z-index:1;display:flex;flex-direction:row-reverse;align-items:center;width:100%;color:rgba(255,255,255,.85);list-style:none;background:rgba(0,0,0,.1);pointer-events:auto}.ant-image-preview-operations-icon,.ant-image-preview-switch-left>.anticon,.ant-image-preview-switch-right>.anticon{font-size:18px}.ant-image-preview-operations-operation{margin-left:8px;padding:8px;cursor:pointer}.ant-image-preview-operations-operation-disabled{color:rgba(255,255,255,.25);pointer-events:none}.ant-image-preview-operations-operation:last-of-type{margin-left:0}.ant-image-preview-operations-progress{position:absolute;left:50%;transform:translateX(-50%)}.ant-image-preview-switch-left,.ant-image-preview-switch-right{position:absolute;top:50%;right:10px;z-index:1;display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin-top:-22px;color:rgba(255,255,255,.85);background:rgba(0,0,0,.1);cursor:pointer;pointer-events:auto}.ant-color-picker-color-block,.ant-color-picker-slider-alpha{background-image:conic-gradient(rgba(0,0,0,.06) 0 25%,transparent 0 50%,rgba(0,0,0,.06) 0 75%,transparent 0)}.ant-image-preview-switch-left-disabled,.ant-image-preview-switch-right-disabled{color:rgba(255,255,255,.25);cursor:not-allowed}.ant-image-preview-switch-left-disabled>.anticon,.ant-image-preview-switch-right-disabled>.anticon{cursor:not-allowed}.ant-image-preview-switch-left{left:10px}.ant-image-preview-switch-right{right:10px}.ant-cron-expression{display:flex;flex-wrap:nowrap}.ant-cron-expression-content{width:100%}.ant-cron-expression-content .ant-cron-expression-input-group-error-focus{box-shadow:0 0 0 2px rgba(255,77,79,.2)}.ant-cron-expression nz-cron-expression-input{width:20%}.ant-cron-expression-input-group{display:flex;flex-wrap:nowrap;align-items:center}.ant-cron-expression-input-group input{border:none!important;box-shadow:none!important;width:100%;outline:0;padding:0;border-radius:0}.ant-cron-expression-label-group,.pb0,.py0{padding-bottom:0!important}.ant-cron-expression-input-group-focus{border-color:#1890ff;box-shadow:0 0 0 2px rgba(24,144,255,.2);outline:0}.ant-cron-expression nz-cron-expression-label{width:20%}.ant-cron-expression-label-group{display:flex;width:100%;flex-wrap:nowrap;justify-content:space-around;padding-top:0!important}.ant-cron-expression-label-group-default{padding:0 8px}.ant-cron-expression-label-foucs{color:#1890ff}.ant-cron-expression-map{margin-left:8px}.ant-cron-expression-preview{display:flex;padding:8px}.ant-cron-expression-preview-dateTime{flex:1 1 auto;display:flex;align-items:center}.ant-cron-expression-preview-dateTime-center{justify-content:center}.ant-cron-expression-preview-content{flex:0 0 220px;display:flex;align-items:center;padding-left:8px}.ant-cron-expression-preview-content-date{flex:1 1 auto}.ant-cron-expression-preview-icon,.ant-cron-expression-preview-icon li,.ant-cron-expression-preview-list,.ant-cron-expression-preview-list li{list-style:none;margin:0;padding:0}.ant-cron-expression-preview-list{overflow-y:scroll;height:132px}.ant-cron-expression-preview-icon{height:100%}.ant-cron-expression-error{color:#ff4d4f}.ant-cron-expression-hint p{display:flex}.ant-cron-expression-hint span{display:inline-block;min-width:40px}.ant-qrcode{display:inline-block;position:relative;padding:8px}.ant-qrcode>canvas{display:block}.ant-qrcode-border{border-radius:2px;border:1px solid #f0f0f0}.ant-qrcode-mask{position:absolute;top:0;right:0;z-index:10;display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;text-align:center;background-color:rgba(255,255,255,.96)}.ant-color-picker-clear,.ant-color-picker-color-block,.ant-water-mark,.half-float{position:relative}.ant-qrcode-expired{color:rgba(0,0,0,.85)}.ant-color-picker{position:absolute;z-index:1;display:block;width:max-content;min-width:250px}.ant-color-picker-hidden{display:none}.ant-color-picker-panel{display:flex;flex-direction:column;width:250px;border-radius:2px}.ant-color-picker-panel-disabled{cursor:not-allowed}.ant-color-picker-select{margin-bottom:8px}.ant-color-picker-select .ant-color-picker-palette{min-height:160px;overflow:hidden;border-radius:2px}.ant-color-picker-select .ant-color-picker-palette>.ant-color-picker-gradient{border-top-left-radius:5px}.ant-color-picker-saturation{position:absolute;border-radius:inherit;top:0;left:0;right:0;bottom:0}.ant-color-picker-handler{box-sizing:border-box;width:16px;height:16px;border:1px solid #fff;border-radius:50%}.ant-color-picker-handler-sm{width:12px;height:12px}.ant-color-picker-slider{width:100%;margin-bottom:8px}.ant-color-picker-slider .ant-color-picker-palette{height:8px}.ant-color-picker-slider .ant-color-picker-gradient{border-radius:2px}.ant-color-picker-slider-alpha{background-size:8px 8px}.ant-color-picker-trigger{min-width:32px;height:32px;border-radius:2px;border:1px solid #f0f0f0;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;padding:3px}.ant-color-picker-trigger:hover{border-color:#1890ff}.ant-color-picker-trigger-text{margin:0 0 0 4px;font-size:12px}.ant-color-picker-sm{min-width:24px;height:24px}.ant-color-picker-lg{min-width:40px;height:40px}.ant-color-picker-lg .ant-color-picker-trigger-text{font-size:14px}.ant-color-picker-color-block{width:28px;height:28px;margin-left:4px;background-size:50% 50%;overflow:hidden;border-radius:2px}.ant-color-picker-color-block-inner{box-sizing:border-box;width:100%;height:100%;border:1px solid #f0f0f0}.ant-color-picker-slider-container{display:flex}.ant-color-picker-slider-container .ant-color-picker-slider-group{flex:1}.ant-color-picker-slider-container .ant-color-picker-slider-group-disabled-alpha{display:flex;align-items:center}.ant-color-picker-slider-container .ant-color-picker-slider-group-disabled-alpha .ant-color-picker-slider{margin-bottom:0}.ant-color-picker-title{display:flex}.ant-color-picker-title-content{flex:1;margin-bottom:4px}.ant-color-picker-title .ant-color-picker-clear{flex:0 0 18px;margin-left:4px}.ant-color-picker-input-container .ant-color-picker-input,.search__form .ant-form-item-control{flex:1}.ant-color-picker-clear{width:18px;height:18px;border-radius:2px;border:1px solid #f0f0f0;cursor:pointer;overflow:hidden;margin-bottom:4px}.ant-color-picker-clear::after{content:"";position:absolute;inset-inline-end:1px;top:0;display:block;width:40px;height:2px;transform-origin:right;transform:rotate(-45deg);background-color:#f5222d}.ant-color-picker-input-container{display:flex}.ant-color-picker-input-container .ant-input,.ant-color-picker-input-container .ant-select{font-size:12px}.ant-color-picker-input-container .ant-input-number{font-size:12px;width:auto}.ant-color-picker-input-container .ant-input-number-sm input{padding:0 0 0 4px}.ant-color-picker-input-container .ant-select-selector{padding:0}.ant-color-picker-input-container .ant-color-picker-format-select{width:auto}.ant-color-picker-input-container .ant-color-picker-input .ant-color-picker-hex-input{padding:0;margin-right:0}.ant-color-picker-input-container .ant-color-picker-input .ant-color-picker-hsb-input,.ant-color-picker-input-container .ant-color-picker-input .ant-color-picker-rgb-input{display:flex;gap:4px;align-items:center}.ant-color-picker-input-container .ant-color-picker-alpha-input,.ant-color-picker-input-container .ant-color-picker-steppers{flex:0 0 44px}.ant-color-picker-disabled{color:rgba(0,0,0,.25);background:#f5f5f5;cursor:not-allowed}.ant-color-picker-disabled .ant-color-picker-trigger{cursor:not-allowed}.ant-color-picker-disabled .ant-color-picker-trigger:hover{border-color:#f0f0f0}.ant-color-picker-inline{display:inline-block}.ant-color-picker-inline .ant-color-picker-color-block{margin:0;width:24px;height:24px}.ant-color-picker-inline-lg .ant-color-picker-color-block{width:32px;height:32px}.ant-color-picker-inline-sm .ant-color-picker-color-block{width:16px;height:16px}sf+st{margin-top:16px}.ant-btn:not(.ant-btn-link)+.ant-btn,.ant-btn:not(.ant-btn-link)+nz-button-group,.ant-btn:not(.ant-btn-link)+nz-dropdown,.ant-btn:not(.ant-btn-link)+nz-popconfirm,nz-button-group+.ant-btn,nz-button-group+nz-popconfirm,nz-dropdown+.ant-btn,nz-popconfirm+.ant-btn,nz-popconfirm+nz-button-group,nz-popconfirm+nz-popconfirm{margin-left:8px}.ant-btn-group .ant-btn+.ant-btn{margin-left:-1px}.ant-transfer-operation .ant-btn+.ant-btn{margin-left:initial}[dir=rtl] .ant-btn+.ant-btn,[dir=rtl] .ant-btn+nz-button-group,[dir=rtl] .ant-btn+nz-dropdown,[dir=rtl] .ant-btn+nz-popconfirm,[dir=rtl] nz-button-group+.ant-btn,[dir=rtl] nz-button-group+nz-popconfirm,[dir=rtl] nz-dropdown+.ant-btn,[dir=rtl] nz-popconfirm+.ant-btn,[dir=rtl] nz-popconfirm+nz-button-group,[dir=rtl] nz-popconfirm+nz-popconfirm{margin-right:8px;margin-left:inherit}a:focus{text-decoration:none}.ant-card{margin-bottom:16px}.ant-card__body-nopadding .ant-card-body{padding:0!important}@media (min-width:300px){.ant-drawer-left .drawer-sm,.ant-drawer-right .drawer-sm{width:auto!important;max-width:300px}}@media (max-width:299px){.ant-drawer-left .drawer-sm,.ant-drawer-right .drawer-sm{width:100%!important}}@media (min-width:600px){.ant-drawer-left .drawer-md,.ant-drawer-right .drawer-md{width:auto!important;max-width:600px}}@media (max-width:599px){.ant-drawer-left .drawer-md,.ant-drawer-right .drawer-md{width:100%!important}}@media (min-width:900px){.ant-drawer-left .drawer-lg,.ant-drawer-right .drawer-lg{width:auto!important;max-width:900px}}@media (max-width:899px){.ant-drawer-left .drawer-lg,.ant-drawer-right .drawer-lg{width:100%!important}}@media (min-width:1200px){.ant-drawer-left .drawer-xl,.ant-drawer-right .drawer-xl{width:auto!important;max-width:1200px}}@media (max-width:1199px){.ant-drawer-left .drawer-xl,.ant-drawer-right .drawer-xl{width:100%!important}}@media (min-height:200px){.ant-drawer-bottom .drawer-sm,.ant-drawer-top .drawer-sm{height:auto!important;max-height:200px}}@media (max-height:199px){.ant-drawer-bottom .drawer-sm,.ant-drawer-top .drawer-sm{height:100%!important}}@media (min-height:400px){.ant-drawer-bottom .drawer-md,.ant-drawer-top .drawer-md{height:auto!important;max-height:400px}}@media (max-height:399px){.ant-drawer-bottom .drawer-md,.ant-drawer-top .drawer-md{height:100%!important}}@media (min-height:600px){.ant-drawer-bottom .drawer-lg,.ant-drawer-top .drawer-lg{height:auto!important;max-height:600px}}@media (max-height:599px){.ant-drawer-bottom .drawer-lg,.ant-drawer-top .drawer-lg{height:100%!important}}@media (min-height:800px){.ant-drawer-bottom .drawer-xl,.ant-drawer-top .drawer-xl{height:auto!important;max-height:800px}}@media (max-height:799px){.ant-drawer-bottom .drawer-xl,.ant-drawer-top .drawer-xl{height:100%!important}}.drawer-footer{position:absolute;bottom:0;left:0;width:100%;padding:8px 16px;text-align:right;background:#fff;border-top:1px solid #f0f0f0;border-radius:0 0 2px 2px}.ant-form-item-label em{color:#bfbfbf}.ant-form-item-control em{margin-left:8px}[dir=rtl] .ant-form-item-control em{margin-right:8px;margin-left:inherit}@media (min-width:576px){.modal-sm .ant-modal{width:auto!important;max-width:300px}}@media (min-width:768px){.modal-md .ant-modal{width:auto!important;max-width:600px}}@media (min-width:992px){.modal-lg .ant-modal{width:auto!important;max-width:900px}}@media (min-width:1600px){.modal-xl .ant-modal{width:auto!important;max-width:1200px}}.modal-header{display:flex;justify-content:space-between;margin:-16px -16px 16px;padding:11px 16px;background:#fff;border-bottom:1px solid #f0f0f0;border-radius:2px 2px 0 0}.modal-footer,.notice-icon__clear{border-radius:0 0 2px 2px;border-top:1px solid #f0f0f0}.modal-title{margin:0;font-size:14px;font-weight:500;line-height:22px;color:rgba(0,0,0,.85);word-wrap:break-word}.modal-title small{margin-left:8px;font-size:12px;color:#8c8c8c}.modal-spin{display:block;min-height:150px;line-height:150px;text-align:center}.modal-footer{margin:16px -16px -16px;padding:8px 16px;text-align:right}.modal-include-tabs nz-tabset{margin-top:-16px}.modal-body-nopadding .ant-modal-body{padding:0!important}.MODAL-DRAG-HANDLE{cursor:move}.ant-table td .img,.ant-table td>img{max-width:32px;max-height:32px;vertical-align:middle;border-radius:4px}.ant-table td .img:not(:last-child),.ant-table td>img:not(:last-child){margin-right:4px}.ant-table-rep__hide-header-footer .ant-table-footer,.ant-table-rep__hide-header-footer .ant-table-title,.ant-table-rep__title{display:none}[dir=rtl] .ant-table td .img,[dir=rtl] .ant-table td>img{margin-right:inherit;margin-left:4px}@media screen and (max-width:767px){.ant-table-rep__title{display:inline-block;width:100px;padding-right:8px;color:rgba(0,0,0,.5);text-align:right}.ant-table-rep__hide-header-footer .ant-table-footer,.ant-table-rep__hide-header-footer .ant-table-title{display:block}.ant-table-rep .ant-table table{table-layout:auto!important}.ant-table-rep .ant-table col,.ant-table-rep .ant-table table{width:100%!important;min-width:auto!important}.ant-table-rep .ant-table-thead{display:none}.ant-table-rep .ant-table-title{text-align:center;background:#f0f0f0}.ant-table-rep .ant-table-tbody>tr:nth-child(4n+3){background:#f9f9f9}.ant-table-rep .ant-table-tbody>tr>td{display:flex;align-items:center;width:100%;padding:6px 4px;text-align:left!important;white-space:inherit;border-bottom:none}.ant-table-rep .ant-table-tbody>tr>td .ant-table-rep__title+:not(.ant-avatar){flex:1;word-break:break-all}}.ant-tag__plus .ant-tag{background:#fff;border-style:dashed}.tag-wrap-list-spacing{margin-top:-8px}.tag-wrap-list-spacing .ant-tag{margin-top:8px}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small{font-size:65%}.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small{font-size:75%}.h1{font-size:32px}.h2{font-size:24px}.h3{font-size:20px}.h4{font-size:16px}.h5{font-size:14px}.h6{font-size:12px}.list-styled{list-style:inherit;padding-right:18px;padding-left:0}.list-unstyled{list-style:none;padding-right:0;padding-left:inherit}fieldset{border:none}.display-1{font-size:32px}.display-2{font-size:24px}.display-3{font-size:20px}.search__form .ant-form-item{margin-right:0;margin-bottom:16px}.half-float img{display:block;max-width:100%;height:auto}.half-float .half-float-bottom{position:absolute;z-index:2;left:50%}.half-float.half-float-sm{margin-bottom:42px}.half-float.half-float-sm .half-float-bottom{bottom:-32px;width:64px;height:64px;margin-left:-32px}.half-float.half-float-md{margin-bottom:50px}.half-float.half-float-md .half-float-bottom{bottom:-40px;width:80px;height:80px;margin-left:-40px}.half-float.half-float-lg{margin-bottom:58px}.half-float.half-float-lg .half-float-bottom{bottom:-48px;width:96px;height:96px;margin-left:-48px}.row-masonry{position:relative;column-gap:16px;width:100%;margin:0;padding:0}.row-masonry>.col-masonry{display:inline-block;width:100%;min-height:1em;margin-bottom:15px}.sf__array>.ant-form-item,.sf__title{margin-bottom:8px}.row-masonry img{max-width:100%}@media only screen and (min-width:480px){.row-masonry-xs-1{column-count:1;columns:1}.row-masonry-xs-2{column-count:2;columns:2}.row-masonry-xs-3{column-count:3;columns:3}.row-masonry-xs-4{column-count:4;columns:4}.row-masonry-xs-5{column-count:5;columns:5}.row-masonry-xs-6{column-count:6;columns:6}.row-masonry-xs-7{column-count:7;columns:7}.row-masonry-xs-8{column-count:8;columns:8}.row-masonry-xs-9{column-count:9;columns:9}}@media only screen and (min-width:576px){.row-masonry-sm-1{column-count:1;columns:1}.row-masonry-sm-2{column-count:2;columns:2}.row-masonry-sm-3{column-count:3;columns:3}.row-masonry-sm-4{column-count:4;columns:4}.row-masonry-sm-5{column-count:5;columns:5}.row-masonry-sm-6{column-count:6;columns:6}.row-masonry-sm-7{column-count:7;columns:7}.row-masonry-sm-8{column-count:8;columns:8}.row-masonry-sm-9{column-count:9;columns:9}}@media only screen and (min-width:768px){.row-masonry-md-1{column-count:1;columns:1}.row-masonry-md-2{column-count:2;columns:2}.row-masonry-md-3{column-count:3;columns:3}.row-masonry-md-4{column-count:4;columns:4}.row-masonry-md-5{column-count:5;columns:5}.row-masonry-md-6{column-count:6;columns:6}.row-masonry-md-7{column-count:7;columns:7}.row-masonry-md-8{column-count:8;columns:8}.row-masonry-md-9{column-count:9;columns:9}}@media only screen and (min-width:992px){.row-masonry-lg-1{column-count:1;columns:1}.row-masonry-lg-2{column-count:2;columns:2}.row-masonry-lg-3{column-count:3;columns:3}.row-masonry-lg-4{column-count:4;columns:4}.row-masonry-lg-5{column-count:5;columns:5}.row-masonry-lg-6{column-count:6;columns:6}.row-masonry-lg-7{column-count:7;columns:7}.row-masonry-lg-8{column-count:8;columns:8}.row-masonry-lg-9{column-count:9;columns:9}}@media only screen and (min-width:1200px){.row-masonry-xl-1{column-count:1;columns:1}.row-masonry-xl-2{column-count:2;columns:2}.row-masonry-xl-3{column-count:3;columns:3}.row-masonry-xl-4{column-count:4;columns:4}.row-masonry-xl-5{column-count:5;columns:5}.row-masonry-xl-6{column-count:6;columns:6}.row-masonry-xl-7{column-count:7;columns:7}.row-masonry-xl-8{column-count:8;columns:8}.row-masonry-xl-9{column-count:9;columns:9}}.header-dropdown{background-color:#fff;border-radius:4px}@media screen and (max-width:480px){.header-dropdown{right:0!important;left:0!important;width:100%!important;border-radius:0!important}}.sf{display:block}.sf__optional{margin-left:2px;color:rgba(0,0,0,.35)}.sf__fixed{display:flex}.sf__fixed .ant-form-item-control-wrapper{flex:1}.sf__title{padding:0 16px;font-weight:700;text-align:left}.sf__object-card .ant-card-body{padding-left:0}.sf__object-card .sf__fixed{flex-wrap:wrap}.sf__object-card-fold .ant-card-body{display:none}.sf__array-add{margin-right:16px}.sf__array-container .ant-card{margin:0 16px 16px 0}.sf__array-container .ant-card-body{padding-bottom:0}.sf__array-container .ant-card .sf__array-remove{cursor:pointer;position:absolute;top:-16px;right:-16px;display:none;width:32px;height:32px;font-size:20px;line-height:32px;text-align:center;background:rgba(0,0,0,.26);border-radius:50%}.sf__array-container .ant-card .sf__array-remove i{color:#fff}.sf__array-container .ant-card:hover .sf__array-remove{display:block}@media (max-width:767px){.sf__array>.ant-form-item>.ant-form-item-control-wrapper,.sf__array>.ant-form-item>.ant-form-item-label{flex:0 0 100%;max-width:100%}.sf__array>.ant-form-item>.ant-form-item-label{display:flex;margin-bottom:8px}.sf__array-container .ant-card{margin-right:0}.sf__array-container .ant-card .sf__array-remove{right:8px;display:block}.sf__array-container>.sf__array-item{flex:0 0 100%;max-width:100%}}.sf .ant-upload-select-picture-card i{font-size:32px;color:#999}.sf .ant-upload.ant-upload-drag{height:180px}.sf .ant-transfer-list-header label{position:unset}.sf .ant-transfer .ant-btn+.ant-btn{margin-left:0}.sf__no-error .ant-form-item{margin-bottom:8px}.sf__inline .sf__item{display:inline-block;margin-bottom:8px;vertical-align:top}.sf__inline .ant-form-inline>.sf__item,.sf__inline .sf__array-container .ant-card-body>.sf__item{margin-bottom:0}.sf__inline .ant-form-inline .ant-select{min-width:100px}.sf__inline .sf__array-container>.sf__array-item{flex:initial;width:100%;max-width:100%}.sf__inline .sf__array-container .ant-card{margin:0}.sf__inline .sf__array-container .ant-card-body{padding:8px 0 0 8px}.sf__inline .sf-btns{display:inline-block;margin-right:0}@media (max-width:767px){.sf__inline .sf__item{display:block;width:100%}.sf__inline .sf__item .ant-form-item{display:block!important;width:initial!important;margin-right:0}.sf__inline .ant-form-item-control,.sf__inline .ant-form-item-label{display:block!important;padding:inherit}}.sf__horizontal .ant-form-item-label>label{display:flex;justify-content:flex-end}.sf__horizontal .sf__label-text{overflow:hidden;text-overflow:ellipsis}@media (max-width:767px){.sf__horizontal .ant-form-item-label>label{justify-content:flex-start}}.sf__no-colon .ant-form-item-label label::after{content:' '}.sf__compact .ant-form-item{margin-bottom:8px}.sf__compact .sf__array-container .ant-card{margin:0 8px 8px 0}.sf__compact .sf__array-item .ant-card-body{padding:8px}.pr0,.px0{padding-right:0!important}.pl0,.px0,[dir=rtl] .pr0{padding-left:0!important}.sf__item .ant-cascader-picker,.sf__item .ant-select{width:100%}.acl__hide{display:none!important}.setting-drawer__content{position:relative;min-height:100%;background:#fff}.setting-drawer__body-item{display:flex;align-items:center;justify-content:space-between;padding-top:12px;padding-bottom:12px}.setting-drawer__body-item:first-child{padding-top:0}.setting-drawer__body-item:last-child{padding-bottom:0}.setting-drawer__title{margin-bottom:12px;font-size:14px;line-height:22px;color:rgba(0,0,0,.85)}.setting-drawer__theme{overflow:hidden;margin-top:24px}.setting-drawer__theme-tag{cursor:pointer;float:left;width:20px;height:20px;margin-right:8px;font-weight:700;color:#fff;text-align:center;border-radius:2px}.setting-drawer__handle{pointer-events:auto;cursor:pointer;position:fixed;z-index:999;top:240px;right:0;display:flex;align-items:center;justify-content:center;width:48px;height:48px;font-size:16px;text-align:center;background:#1890ff;border-radius:4px 0 0 4px;transition:right .3s cubic-bezier(.9,0,.3,.7)}#search-box .anticon,.alain-default__top-menu-item-disabled,.cell__disabled[data-type=link],.disabled,.drawer,.nz-resizable-disabled .nz-resizable-handle,.onboarding__light,.reuse-tab__disabled,.st__btn-disabled .st__btn-text{pointer-events:none}.setting-drawer__handle-icon{font-size:20px;color:#fff}.setting-drawer__handle-opened{z-index:1001;right:500px}.setting-drawer-rtl .setting-drawer__handle{right:inherit;left:0;border-radius:0 4px 4px 0}.setting-drawer-rtl .setting-drawer__handle-opened{right:inherit;left:500px}.theme-btn .ant-avatar{color:#000;background-color:#fff;transition:color .3s}.theme-btn .ant-avatar:hover,.yn__yes{color:#1890ff}.bg-blue-dark-h,.bg-blue-h,.bg-blue-light-h,.bg-cyan-dark-h,.bg-cyan-h,.bg-cyan-light-h,.bg-error-h,.bg-geekblue-dark-h,.bg-geekblue-h,.bg-geekblue-light-h,.bg-gold-dark-h,.bg-gold-h,.bg-gold-light-h,.bg-green-dark-h,.bg-green-h,.bg-green-light-h,.bg-grey-dark-h,.bg-grey-darker-h,.bg-grey-h,.bg-grey-light-h,.bg-grey-lighter-h,.bg-highlight-h,.bg-info-h,.bg-lime-dark-h,.bg-lime-h,.bg-lime-light-h,.bg-magenta-dark-h,.bg-magenta-h,.bg-magenta-light-h,.bg-normal-h,.bg-orange-dark-h,.bg-orange-h,.bg-orange-light-h,.bg-primary-h,.bg-processing-h,.bg-purple-dark-h,.bg-purple-h,.bg-purple-light-h,.bg-red-dark-h,.bg-red-h,.bg-red-light-h,.bg-success-h,.bg-volcano-dark-h,.bg-volcano-h,.bg-volcano-light-h,.bg-warning-h,.bg-yellow-dark-h,.bg-yellow-h,.bg-yellow-light-h{transition:background-color .3s}.theme-btn-rtl{right:inherit;left:32px}.yn__no,.yn__yes{display:inline-flex;align-items:center;font-style:normal}.yn__no span,.yn__yes span{margin-left:4px}.yn__no{color:#8c8c8c}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.border{border:1px solid #f0f0f0!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-1{border:1px solid #f0f0f0!important}.rounded-md,.rounded-sm{border-radius:2px}.rounded-top-left-md,.rounded-top-left-sm{border-top-left-radius:2px}.rounded-top-right-md,.rounded-top-right-sm{border-top-right-radius:2px}.rounded-bottom-left-md,.rounded-bottom-left-sm{border-bottom-left-radius:2px}.rounded-bottom-right-md,.rounded-bottom-right-sm{border-bottom-right-radius:2px}.border-top-1{border-top:1px solid #f0f0f0!important}.border-right-1{border-right:1px solid #f0f0f0!important}.border-bottom-1{border-bottom:1px solid #f0f0f0!important}.border-left-1{border-left:1px solid #f0f0f0!important}.border-red{border-color:#f5222d!important}.border-volcano{border-color:#fa541c!important}.border-orange{border-color:#fa8c16!important}.border-gold{border-color:#faad14!important}.border-yellow{border-color:#fadb14!important}.border-lime{border-color:#a0d911!important}.border-green{border-color:#52c41a!important}.border-cyan{border-color:#13c2c2!important}.border-blue{border-color:#1890ff!important}.border-geekblue{border-color:#2f54eb!important}.border-purple{border-color:#722ed1!important}.border-magenta{border-color:#eb2f96!important}.border-grey{border-color:#bfbfbf!important}.border-primary{border-color:#1890ff!important}.border-success{border-color:#52c41a!important}.border-error{border-color:#ff4d4f!important}.border-warning{border-color:#faad14!important}.border-info,.border-processing{border-color:#1890ff!important}.border-highlight{border-color:#ff4d4f!important}.border-normal{border-color:#d9d9d9!important}.rounded-lg{border-radius:4px}.rounded-top-left-lg{border-top-left-radius:4px}.rounded-top-right-lg{border-top-right-radius:4px}.rounded-bottom-left-lg{border-bottom-left-radius:4px}.rounded-bottom-right-lg{border-bottom-right-radius:4px}.rounded-circle{border-radius:50%}.rounded-0{border-radius:0}.border-white{border-color:#fff!important}.rotate-360{transform:rotate(360deg)}.rotate-345{transform:rotate(345deg)}.rotate-330{transform:rotate(330deg)}.rotate-315{transform:rotate(315deg)}.rotate-300{transform:rotate(300deg)}.rotate-285{transform:rotate(285deg)}.rotate-270{transform:rotate(270deg)}.rotate-255{transform:rotate(255deg)}.rotate-240{transform:rotate(240deg)}.rotate-225{transform:rotate(225deg)}.rotate-210{transform:rotate(210deg)}.rotate-195{transform:rotate(195deg)}.rotate-180{transform:rotate(180deg)}.rotate-165{transform:rotate(165deg)}.rotate-150{transform:rotate(150deg)}.rotate-135{transform:rotate(135deg)}.rotate-120{transform:rotate(120deg)}.rotate-105{transform:rotate(105deg)}.rotate-90{transform:rotate(90deg)}.rotate-75{transform:rotate(75deg)}.rotate-60{transform:rotate(60deg)}.rotate-45{transform:rotate(45deg)}.rotate-30{transform:rotate(30deg)}.rotate-15{transform:rotate(15deg)}code{font-size:90%;background-color:#f7f7f7;border:1px solid #eee;border-radius:2px}.bg-white{background-color:#fff!important}.bg-transparent{background-color:transparent!important}.text-white{color:#fff!important}.text-hover{cursor:pointer}.text-hover:hover{color:#1890ff!important}.bg-red-light{background-color:#ff4d4f!important}.bg-red{background-color:#f5222d!important}.bg-red-dark{background-color:#cf1322!important}.bg-red-light-h:hover{background-color:#ff4d4f!important}.bg-red-h:hover{background-color:#f5222d!important}.bg-red-dark-h:hover{background-color:#cf1322!important}.text-red-light{color:#ff4d4f!important}.text-red{color:#f5222d!important}.text-red-dark{color:#cf1322!important}.bg-volcano-light{background-color:#ff7a45!important}.bg-volcano{background-color:#fa541c!important}.bg-volcano-dark{background-color:#d4380d!important}.bg-volcano-light-h:hover{background-color:#ff7a45!important}.bg-volcano-h:hover{background-color:#fa541c!important}.bg-volcano-dark-h:hover{background-color:#d4380d!important}.text-volcano-light{color:#ff7a45!important}.text-volcano{color:#fa541c!important}.text-volcano-dark{color:#d4380d!important}.bg-orange-light{background-color:#ffa940!important}.bg-orange{background-color:#fa8c16!important}.bg-orange-dark{background-color:#d46b08!important}.bg-orange-light-h:hover{background-color:#ffa940!important}.bg-orange-h:hover{background-color:#fa8c16!important}.bg-orange-dark-h:hover{background-color:#d46b08!important}.text-orange-light{color:#ffa940!important}.text-orange{color:#fa8c16!important}.text-orange-dark{color:#d46b08!important}.bg-gold-light{background-color:#ffc53d!important}.bg-gold{background-color:#faad14!important}.bg-gold-dark{background-color:#d48806!important}.bg-gold-light-h:hover{background-color:#ffc53d!important}.bg-gold-h:hover{background-color:#faad14!important}.bg-gold-dark-h:hover{background-color:#d48806!important}.text-gold-light{color:#ffc53d!important}.text-gold{color:#faad14!important}.text-gold-dark{color:#d48806!important}.bg-yellow-light{background-color:#ffec3d!important}.bg-yellow{background-color:#fadb14!important}.bg-yellow-dark{background-color:#d4b106!important}.bg-yellow-light-h:hover{background-color:#ffec3d!important}.bg-yellow-h:hover{background-color:#fadb14!important}.bg-yellow-dark-h:hover{background-color:#d4b106!important}.text-yellow-light{color:#ffec3d!important}.text-yellow{color:#fadb14!important}.text-yellow-dark{color:#d4b106!important}.bg-lime-light{background-color:#bae637!important}.bg-lime{background-color:#a0d911!important}.bg-lime-dark{background-color:#7cb305!important}.bg-lime-light-h:hover{background-color:#bae637!important}.bg-lime-h:hover{background-color:#a0d911!important}.bg-lime-dark-h:hover{background-color:#7cb305!important}.text-lime-light{color:#bae637!important}.text-lime{color:#a0d911!important}.text-lime-dark{color:#7cb305!important}.bg-green-light{background-color:#73d13d!important}.bg-green{background-color:#52c41a!important}.bg-green-dark{background-color:#389e0d!important}.bg-green-light-h:hover{background-color:#73d13d!important}.bg-green-h:hover{background-color:#52c41a!important}.bg-green-dark-h:hover{background-color:#389e0d!important}.text-green-light{color:#73d13d!important}.text-green{color:#52c41a!important}.text-green-dark{color:#389e0d!important}.bg-cyan-light{background-color:#36cfc9!important}.bg-cyan{background-color:#13c2c2!important}.bg-cyan-dark{background-color:#08979c!important}.bg-cyan-light-h:hover{background-color:#36cfc9!important}.bg-cyan-h:hover{background-color:#13c2c2!important}.bg-cyan-dark-h:hover{background-color:#08979c!important}.text-cyan-light{color:#36cfc9!important}.text-cyan{color:#13c2c2!important}.text-cyan-dark{color:#08979c!important}.bg-blue-light{background-color:#40a9ff!important}.bg-blue{background-color:#1890ff!important}.bg-blue-dark{background-color:#096dd9!important}.bg-blue-light-h:hover{background-color:#40a9ff!important}.bg-blue-h:hover{background-color:#1890ff!important}.bg-blue-dark-h:hover{background-color:#096dd9!important}.text-blue-light{color:#40a9ff!important}.text-blue{color:#1890ff!important}.text-blue-dark{color:#096dd9!important}.bg-geekblue-light{background-color:#597ef7!important}.bg-geekblue{background-color:#2f54eb!important}.bg-geekblue-dark{background-color:#1d39c4!important}.bg-geekblue-light-h:hover{background-color:#597ef7!important}.bg-geekblue-h:hover{background-color:#2f54eb!important}.bg-geekblue-dark-h:hover{background-color:#1d39c4!important}.text-geekblue-light{color:#597ef7!important}.text-geekblue{color:#2f54eb!important}.text-geekblue-dark{color:#1d39c4!important}.bg-purple-light{background-color:#9254de!important}.bg-purple{background-color:#722ed1!important}.bg-purple-dark{background-color:#531dab!important}.bg-purple-light-h:hover{background-color:#9254de!important}.bg-purple-h:hover{background-color:#722ed1!important}.bg-purple-dark-h:hover{background-color:#531dab!important}.text-purple-light{color:#9254de!important}.text-purple{color:#722ed1!important}.text-purple-dark{color:#531dab!important}.bg-magenta-light{background-color:#f759ab!important}.bg-magenta{background-color:#eb2f96!important}.bg-magenta-dark{background-color:#c41d7f!important}.bg-magenta-light-h:hover{background-color:#f759ab!important}.bg-magenta-h:hover{background-color:#eb2f96!important}.bg-magenta-dark-h:hover{background-color:#c41d7f!important}.text-magenta-light{color:#f759ab!important}.text-magenta{color:#eb2f96!important}.text-magenta-dark{color:#c41d7f!important}.bg-grey-light{background-color:#d9d9d9!important}.bg-grey{background-color:#bfbfbf!important}.bg-grey-dark{background-color:#8c8c8c!important}.bg-grey-light-h:hover{background-color:#d9d9d9!important}.bg-grey-h:hover{background-color:#bfbfbf!important}.bg-grey-dark-h:hover{background-color:#8c8c8c!important}.text-grey-light{color:#d9d9d9!important}.text-grey{color:#bfbfbf!important}.text-grey-dark{color:#8c8c8c!important}.bg-primary-light{background-color:#40a9ff!important}.bg-primary{background-color:#1890ff!important}.bg-primary-dark{background-color:#096dd9!important}.bg-primary-h:hover{background-color:#1890ff!important}.text-primary-light{color:#40a9ff!important}.text-primary{color:#1890ff!important}.text-primary-dark{color:#096dd9!important}.bg-success-light{background-color:#73d13d!important}.bg-success{background-color:#52c41a!important}.bg-success-dark{background-color:#389e0d!important}.bg-success-h:hover{background-color:#52c41a!important}.text-success-light{color:#73d13d!important}.text-success{color:#52c41a!important}.text-success-dark{color:#389e0d!important}.bg-error-light{background-color:#ff7875!important}.bg-error{background-color:#ff4d4f!important}.bg-error-dark{background-color:#d9363e!important}.bg-error-h:hover{background-color:#ff4d4f!important}.text-error-light{color:#ff7875!important}.text-error{color:#ff4d4f!important}.text-error-dark{color:#d9363e!important}.bg-warning-light{background-color:#ffc53d!important}.bg-warning{background-color:#faad14!important}.bg-warning-dark{background-color:#d48806!important}.bg-warning-h:hover{background-color:#faad14!important}.text-warning-light{color:#ffc53d!important}.text-warning{color:#faad14!important}.text-warning-dark{color:#d48806!important}.bg-info-light{background-color:#40a9ff!important}.bg-info{background-color:#1890ff!important}.bg-info-dark{background-color:#096dd9!important}.bg-info-h:hover{background-color:#1890ff!important}.text-info-light{color:#40a9ff!important}.text-info{color:#1890ff!important}.text-info-dark{color:#096dd9!important}.bg-processing-light{background-color:#40a9ff!important}.bg-processing{background-color:#1890ff!important}.bg-processing-dark{background-color:#096dd9!important}.bg-processing-h:hover{background-color:#1890ff!important}.text-processing-light{color:#40a9ff!important}.text-processing{color:#1890ff!important}.text-processing-dark{color:#096dd9!important}.bg-highlight-light{background-color:#ff7875!important}.bg-highlight{background-color:#ff4d4f!important}.bg-highlight-dark{background-color:#d9363e!important}.bg-highlight-h:hover{background-color:#ff4d4f!important}.text-highlight-light{color:#ff7875!important}.text-highlight{color:#ff4d4f!important}.text-highlight-dark{color:#d9363e!important}.bg-normal-light{background-color:#e6d8d8!important}.bg-normal{background-color:#d9d9d9!important}.bg-normal-dark{background-color:#b3a8a8!important}.bg-normal-h:hover{background-color:#d9d9d9!important}.bg-grey-lighter,.bg-grey-lighter-h:hover{background-color:#f5f5f5!important}.text-normal-light{color:#e6d8d8!important}.text-normal{color:#d9d9d9!important}.text-normal-dark{color:#b3a8a8!important}.bg-grey-darker,.bg-grey-darker-h:hover{background-color:#262626!important}.text-grey-lighter{color:#f5f5f5!important}.text-grey-darker{color:#262626!important}.disabled,.no-data{color:rgba(0,0,0,.25)}.d-none{display:none!important}.d-block{display:block!important}.d-inline-block{display:inline-block!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}.flex-center,.flex-center-between{display:flex!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center,.flex-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}.flex-1{flex:1!important}.flex-column{flex-direction:column!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-center-between{align-items:center!important;justify-content:space-between!important}.float-none{float:none!important}.float-left{float:left!important}.float-right{float:right!important}.icon-sm{font-size:24px!important}.icon-md{font-size:48px!important}.icon-lg{font-size:72px!important}.icon-xl{font-size:96px!important}.icon-xxl{font-size:120px!important}.img-fluid{max-width:100%;height:auto}.point{cursor:pointer}.no-resize{resize:none;min-width:100%;max-width:100%}.no-data{font-size:16px;line-height:64px;text-align:center}.no-data i{position:relative;top:3px;margin-right:16px;font-size:24px}.block-center{margin:0 auto}.mr0,.mx0{margin-right:0!important}.ml0,.mx0{margin-left:0!important}.mt0,.my0{margin-top:0!important}.mb0,.my0{margin-bottom:0!important}.bg-center{background-position:center center;background-size:cover}.page-loading{position:absolute;z-index:10000;inset:0;padding-top:200px;text-align:center;background:#f5f5f5}.pt0,.py0{padding-top:0!important}.color-weak{display:block;filter:invert(80%)}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.fixed-bottom,.fixed-top{position:fixed;z-index:9;right:0;left:0}.fixed-top{top:0}.fixed-bottom{bottom:0}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}@media (max-width:575px){.hidden-xs{display:none!important}}@media (max-width:991px){.hidden-md{display:none!important}}@media (max-width:1199px){.hidden-lg{display:none!important}}@media (max-width:1599px){.hidden-xl{display:none!important}}@media (min-width:768px){.hidden-pc{display:none!important}}.m0{margin:0!important}.mr-xs,.mx-xs{margin-right:4px!important}.ml-xs,.mx-xs{margin-left:4px!important}.mt-xs,.my-xs{margin-top:4px!important}.mb-xs,.my-xs{margin-bottom:4px!important}.p0{padding:0!important}.pr-xs,.px-xs{padding-right:4px!important}.pl-xs,.px-xs{padding-left:4px!important}.pt-xs,.py-xs{padding-top:4px!important}.pb-xs,.py-xs{padding-bottom:4px!important}.m-xs{margin:4px!important}.mr-sm,.mx-sm{margin-right:8px!important}.ml-sm,.mx-sm{margin-left:8px!important}.mt-sm,.my-sm{margin-top:8px!important}.mb-sm,.my-sm{margin-bottom:8px!important}.p-xs{padding:4px!important}.pr-sm,.px-sm{padding-right:8px!important}.pl-sm,.px-sm,[dir=rtl] .pr-sm{padding-left:8px!important}.pt-sm,.py-sm{padding-top:8px!important}.pb-sm,.py-sm{padding-bottom:8px!important}.m-sm{margin:8px!important}.mr-md,.mx-md{margin-right:16px!important}.ml-md,.mx-md{margin-left:16px!important}.mt-md,.my-md{margin-top:16px!important}.mb-md,.my-md{margin-bottom:16px!important}.p-sm{padding:8px!important}.pr-md,.px-md{padding-right:16px!important}.pl-md,.px-md{padding-left:16px!important}.pt-md,.py-md{padding-top:16px!important}.pb-md,.py-md{padding-bottom:16px!important}.m-md{margin:16px!important}.mr-lg,.mx-lg{margin-right:24px!important}.ml-lg,.mx-lg{margin-left:24px!important}.mt-lg,.my-lg{margin-top:24px!important}.mb-lg,.my-lg{margin-bottom:24px!important}.p-md{padding:16px!important}.pr-lg,.px-lg{padding-right:24px!important}.pl-lg,.px-lg,[dir=rtl] .pr-lg{padding-left:24px!important}.pt-lg,.py-lg{padding-top:24px!important}.pb-lg,.py-lg{padding-bottom:24px!important}.m-lg{margin:24px!important}.mr-xl,.mx-xl{margin-right:32px!important}.ml-xl,.mx-xl{margin-left:32px!important}.mt-xl,.my-xl{margin-top:32px!important}.mb-xl,.my-xl{margin-bottom:32px!important}.p-lg{padding:24px!important}.pr-xl,.px-xl{padding-right:32px!important}.pl-xl,.px-xl{padding-left:32px!important}.pt-xl,.py-xl{padding-top:32px!important}.pb-xl,.py-xl{padding-bottom:32px!important}.m-xl{margin:32px!important}.mr-xxl,.mx-xxl{margin-right:48px!important}.ml-xxl,.mx-xxl{margin-left:48px!important}.mt-xxl,.my-xxl{margin-top:48px!important}.mb-xxl,.my-xxl{margin-bottom:48px!important}.p-xl{padding:32px!important}.pr-xxl,.px-xxl{padding-right:48px!important}.pl-xxl,.px-xxl,[dir=rtl] .pr-xxl{padding-left:48px!important}.pt-xxl,.py-xxl{padding-top:48px!important}.pb-xxl,.py-xxl{padding-bottom:48px!important}.m-xxl{margin:48px!important}.p-xxl{padding:48px!important}[dir=rtl] .mr0{margin-left:0!important;margin-right:inherit!important}[dir=rtl] .ml0{margin-right:0!important;margin-left:inherit!important}[dir=rtl] .pr0{padding-right:inherit!important}[dir=rtl] .pl0{padding-right:0!important;padding-left:inherit!important}[dir=rtl] .mr-xs{margin-left:4px!important;margin-right:inherit!important}[dir=rtl] .ml-xs{margin-right:4px!important;margin-left:inherit!important}[dir=rtl] .pr-xs{padding-left:4px!important;padding-right:inherit!important}[dir=rtl] .pl-xs{padding-right:4px!important;padding-left:inherit!important}[dir=rtl] .mr-sm{margin-left:8px!important;margin-right:inherit!important}[dir=rtl] .ml-sm{margin-right:8px!important;margin-left:inherit!important}[dir=rtl] .pr-sm{padding-right:inherit!important}[dir=rtl] .pl-sm{padding-right:8px!important;padding-left:inherit!important}[dir=rtl] .mr-md{margin-left:16px!important;margin-right:inherit!important}[dir=rtl] .ml-md{margin-right:16px!important;margin-left:inherit!important}[dir=rtl] .pr-md{padding-left:16px!important;padding-right:inherit!important}[dir=rtl] .pl-md{padding-right:16px!important;padding-left:inherit!important}[dir=rtl] .mr-lg{margin-left:24px!important;margin-right:inherit!important}[dir=rtl] .ml-lg{margin-right:24px!important;margin-left:inherit!important}[dir=rtl] .pr-lg{padding-right:inherit!important}[dir=rtl] .pl-lg{padding-right:24px!important;padding-left:inherit!important}[dir=rtl] .mr-xl{margin-left:32px!important;margin-right:inherit!important}[dir=rtl] .ml-xl{margin-right:32px!important;margin-left:inherit!important}[dir=rtl] .pr-xl{padding-left:32px!important;padding-right:inherit!important}[dir=rtl] .pl-xl{padding-right:32px!important;padding-left:inherit!important}[dir=rtl] .mr-xxl{margin-left:48px!important;margin-right:inherit!important}[dir=rtl] .ml-xxl{margin-right:48px!important;margin-left:inherit!important}.exception__cont-actions .ant-btn:not(:last-child),.st .nz-resizable.ant-table-column-has-sorters .nz-resizable-handle{margin-right:8px}[dir=rtl] .pr-xxl{padding-right:inherit!important}[dir=rtl] .pl-xxl{padding-right:48px!important;padding-left:inherit!important}.text-left{text-align:left!important}.text-center{text-align:center!important}.text-right,[dir=rtl] .text-left{text-align:right!important}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.text-nowrap{white-space:nowrap!important}.text-wrap{white-space:pre-wrap!important}.text-truncate{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.font-weight-normal{font-weight:400}.font-weight-bold{font-weight:700}.text-xs{font-size:10px!important}.text-sm{font-size:12px!important}.text-md{font-size:14px!important}.text-lg{font-size:16px!important}.text-xl{font-size:20px!important}.text-xxl{font-size:26px!important}[dir=rtl] .text-right{text-align:left!important}.width-xs{width:80px!important}.max-width-xs{max-width:80px!important}.min-width-xs{min-width:80px!important}.width-sm{width:160px!important}.max-width-sm{max-width:160px!important}.min-width-sm{min-width:160px!important}.width-md{width:240px!important}.max-width-md{max-width:240px!important}.min-width-md{min-width:240px!important}.width-lg{width:320px!important}.max-width-lg{max-width:320px!important}.min-width-lg{min-width:320px!important}.width-xl{width:400px!important}.max-width-xl{max-width:400px!important}.min-width-xl{min-width:400px!important}.width-xxl{width:480px!important}.max-width-xxl{max-width:480px!important}.min-width-xxl{min-width:480px!important}.width-10{width:10%!important}.max-width-10{max-width:10%!important}.min-width-10{min-width:10%!important}.width-20{width:20%!important}.max-width-20{max-width:20%!important}.min-width-20{min-width:20%!important}.width-30{width:30%!important}.max-width-30{max-width:30%!important}.min-width-30{min-width:30%!important}.width-40{width:40%!important}.max-width-40{max-width:40%!important}.min-width-40{min-width:40%!important}.width-50{width:50%!important}.max-width-50{max-width:50%!important}.min-width-50{min-width:50%!important}.width-60{width:60%!important}.max-width-60{max-width:60%!important}.min-width-60{min-width:60%!important}.width-70{width:70%!important}.max-width-70{max-width:70%!important}.min-width-70{min-width:70%!important}.width-80{width:80%!important}.max-width-80{max-width:80%!important}.min-width-80{min-width:80%!important}.width-90{width:90%!important}.max-width-90{max-width:90%!important}.min-width-90{min-width:90%!important}.width-100{width:100%!important}.max-width-100{max-width:100%!important}.min-width-100{min-width:100%!important}@media (max-width:767px){.hidden-mobile,.hidden-sm{display:none!important}.max-width-sm,.min-width-sm,.width-sm{width:100%!important}}.scrollbar{overflow:auto}.scrollbar-x{overflow:auto hidden}.scrollbar-y{overflow:hidden auto}.ant-anchor-wrapper,.ant-dialog-wrap,.ant-drawer-body,.ant-drawer-wrapper-body,.scrollbar,body,textarea.ant-input{scrollbar-color:rgba(0,0,0,.3) #6e6e6e;scrollbar-width:thin}.ant-anchor-wrapper::-webkit-scrollbar,.ant-dialog-wrap::-webkit-scrollbar,.ant-drawer-body::-webkit-scrollbar,.ant-drawer-wrapper-body::-webkit-scrollbar,.scrollbar::-webkit-scrollbar,body::-webkit-scrollbar,textarea.ant-input::-webkit-scrollbar{width:6px;height:6px}.ant-anchor-wrapper::-webkit-scrollbar-track,.ant-dialog-wrap::-webkit-scrollbar-track,.ant-drawer-body::-webkit-scrollbar-track,.ant-drawer-wrapper-body::-webkit-scrollbar-track,.scrollbar::-webkit-scrollbar-track,body::-webkit-scrollbar-track,textarea.ant-input::-webkit-scrollbar-track{box-shadow:inset 0 0 6px rgba(0,0,0,.3)}#search-box input,.alain-default__search .ant-input:focus,.st__filter-date .ant-picker-panel-container{box-shadow:none}.ant-anchor-wrapper::-webkit-scrollbar-thumb,.ant-dialog-wrap::-webkit-scrollbar-thumb,.ant-drawer-body::-webkit-scrollbar-thumb,.ant-drawer-wrapper-body::-webkit-scrollbar-thumb,.scrollbar::-webkit-scrollbar-thumb,body::-webkit-scrollbar-thumb,textarea.ant-input::-webkit-scrollbar-thumb{background-color:#6e6e6e;outline:#333 solid 1px}.st{display:block}.st__p-left .ant-table-pagination{float:none;display:block;text-align:left}.st__p-center .ant-table-pagination{float:none;display:block;text-align:center}.st__btn-sub .st__btn-text{width:100%;color:inherit}.st__btn-disabled .st__btn-text{color:rgba(0,0,0,.25)}.st .nz-resizable-handle{display:flex;align-items:center;justify-content:center}.st .nz-resizable-handle>i{width:1px;height:60%;background:#d9d9d9}.st .nz-resizable-preview{border-width:0 1px 0 0}.st .ant-table~nz-pagination>.ant-pagination{margin-bottom:0}.st__filter-keyword{padding:8px}.st__filter-date .ant-picker-panel-container .ant-picker-panel{border:none}.st .ant-table-tbody>tr .ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td,.sv__bordered,.sv__bordered .sv__item{border-bottom:1px solid #f0f0f0}.st__has-filter .ant-table-column-sorters{padding-right:16px}.st__has-filter .st__filter{position:absolute;top:0;right:0;bottom:0;display:flex;place-items:center center}.st__has-filter .ant-table-filter-trigger{height:100%}.st__has-filter.ant-table-column-has-sorters .st__filter{right:-32px}.st__head-optional,.st__head-tip{margin-left:2px;color:rgba(0,0,0,.35)}.st .ant-table-thead>tr>th .ant-table-filter-selected.ant-table-filter-icon{color:#1890ff}.st__checkall-selection{display:inline-block;margin-left:4px}.st .ant-table-tbody>tr .ant-table-wrapper:only-child .ant-table{margin:0}.st .text-truncate.ant-table-cell-fix-left-first::after,.st .text-truncate.ant-table-cell-fix-left-last::after{transform:translateX(80%)}.st .text-truncate.ant-table-cell-fix-right-first::after,.st .text-truncate.ant-table-cell-fix-right-last::after{transform:translateX(-80%)}.st__no-column .ant-table{height:100px}.st__no-column .ant-table-content{display:none}.sv,.sv__container{display:block}.st__row-class .ant-table-tbody>tr>td .ant-table-cell-fix-left,.st__row-class .ant-table-tbody>tr>td .ant-table-cell-fix-right{background:inherit}@media screen and (min-width:768px){.st__width-strict .ant-table-body>table,.st__width-strict .ant-table-content>table{table-layout:fixed!important;word-wrap:break-word!important}}.sv+.sv{margin-top:16px}.sv__container .ant-row{overflow:hidden;margin-bottom:-16px}.sv__item-fixed{display:flex}.sv__item-fixed .sv__label{overflow:hidden;flex:0 0 auto;text-align:right;text-overflow:ellipsis}.sv__item-fixed .sv__detail{flex:1 0 0}.sv__item+.ant-divider{margin:0 0 16px}.sv__title{float:none;clear:both;display:block;width:100%;margin-bottom:16px;font-size:14px;font-weight:500;color:rgba(0,0,0,.85)}.sv__detail,.sv__label{display:table-cell;padding-bottom:16px;line-height:22px}.code-box-code-copy.anticon-check,.code-box-code-icon.anticon-check,.hljs-strong,.se__title,.token.bold,.token.important,[data-theme=dark] .hljs-strong{font-weight:700}.sv__label{color:rgba(0,0,0,.5);white-space:nowrap}.sv__label:not(.sv__label-empty)::after{content:':';position:relative;top:-.5px;margin:0 8px 0 2px}.sv__label-optional{margin-left:2px;color:rgba(0,0,0,.35)}.sv__label-optional-no-text{margin-left:0}.sv__label-optional>.anticon{margin-left:2px}.sv__detail{width:100%;color:rgba(0,0,0,.85);word-break:break-all;vertical-align:top}.se__line,.sv__small .sv__detail,.sv__small .sv__label,.sv__vertical .sv__label{padding-bottom:8px}.sv__type-primary .sv__detail{color:#1890ff}.sv__type-success .sv__detail{color:#52c41a}.sv__type-danger .sv__detail{color:#ff4d4f}.sv__type-warning .sv__detail{color:#faad14}.sv__default::before{content:'-'}.sv__default~.sv__unit{display:none!important}.sv__unit{display:inline;margin-left:8px;color:#8c8c8c}.sv__small .ant-row{margin-bottom:-8px}.sv__small .sv__title{margin-bottom:12px;color:rgba(0,0,0,.85)}.sv__value{display:inline-flex;align-items:center}.sv__value-prefix,.sv__value-unit{font-size:12px;font-style:normal;color:rgba(0,0,0,.5)}.sv__value-prefix{padding-right:3px}.sv__value-text{font-size:18px}.sv__value-unit{padding-left:3px}.sv__value:not(:first-child){position:relative;margin-left:8px;padding-left:14px}.sv__value:not(:first-child)::before{content:'/';position:absolute;left:0;width:6px;color:rgba(0,0,0,.5)}.sv__value-small .sv__value-text{font-size:14px}.sv__value-large .sv__value-text{font-size:24px}.sv__large .sv__title{font-size:16px}.sv__horizontal .sv__label-width{display:flex;justify-content:flex-end}.se__title,.sv__vertical .sv__detail,.sv__vertical .sv__label{display:block}.sv__horizontal .sv__label-width .sv__label-text{overflow:hidden;text-overflow:ellipsis}.sv__no-colon::after{content:' '!important}.alain-default__aside::after,.g2-radar__legend-item::after,.number-info:not(:first-child)::after,.se__item-empty::before{content:''}.sv__bordered{overflow:hidden;border-top:1px solid #f0f0f0;border-left:1px solid #f0f0f0}.sv__bordered .sv__label{background-color:#fafafa}.sv__bordered .sv__detail,.sv__bordered .sv__label{padding:8px 16px}.sv__bordered.sv__large .sv__detail,.sv__bordered.sv__large .sv__label{padding:12px 16px}.sv__bordered.sv__small .sv__detail,.sv__bordered.sv__small .sv__label{padding:4px 8px}.se__title{float:none;clear:both;width:100%;font-size:14px;line-height:1.66667;color:rgba(0,0,0,.85)}.se__item{transition:none}.se__item:last-child{margin-bottom:0;padding-bottom:0}.code-box,.se__item+.ant-divider{margin:0 0 16px}.se__item-empty::before{display:inline-block}.se__label{display:table-cell;flex:0 0 auto;width:initial;text-align:right;white-space:nowrap}.se__label-optional{margin-left:2px;color:rgba(0,0,0,.35)}.se__label-optional-no-text{margin-left:0}.se__label-optional>.anticon{margin-left:2px}.se__control{flex:1 0 0;width:100%}.se__compact>.se__item,.se__compact>.se__title{margin-bottom:8px}.se__compact>.se__item+.ant-divider,.se__compact>.se__title+.ant-divider{margin:0 0 8px}.se__compact .ant-form-item-extra{display:none}.se__line{border-bottom:1px dashed #f0f0f0}.se__hide-label .se__nolabel,.se__inline .se__nolabel,.se__vertical .se__nolabel{display:none!important}.se__horizontal>.se__item{display:flex}.se__horizontal>.se__item:last-child{margin-bottom:0}.se__horizontal>.se__item .se__label{display:flex;justify-content:flex-end}.se__horizontal>.se__item .se__label-text{overflow:hidden;text-overflow:ellipsis}.se__horizontal>.se__item .ant-form-item-required::before{line-height:inherit}.se__horizontal>.se__item .ant-form-item-label>label::after{margin-left:4px}.se__vertical>.se__item{display:block;width:100%}.se__inline .ant-form-item-label,.se__inline .se__control{display:inline-block;width:initial!important;text-align:left;vertical-align:top}.se__inline>.se__item{margin-right:16px}.se__inline>.se__item[col='1']{flex-basis:auto;width:100%}.se__inline>.se__item:last-child{margin-right:0}.se__no-colon::after{content:' '!important}@media (max-width:767px){.se__horizontal>.se__item{display:block}.se__horizontal>.se__item .ant-form-item-label{width:100%!important;text-align:left}.se__horizontal>.se__item .se__label{justify-content:normal}.se__horizontal .se__control,.se__horizontal .se__label,.se__vertical .se__control,.se__vertical .se__label{width:100%!important}}.avatar-list,.avatar-list__item,.avatar-list__wrap{display:inline-block}.avatar-list__wrap{margin-left:8px;padding:0;font-size:0}.avatar-list__item{width:28px;height:28px;margin-left:-8px;font-size:12px}.avatar-list__item .ant-avatar{cursor:pointer;border:1px solid #fff}.avatar-list__large{width:32px;height:32px}.avatar-list__small{width:22px;height:22px}.avatar-list__mini{width:20px;height:20px}.avatar-list__mini .ant-avatar{width:20px;height:20px;line-height:20px}.avatar-list__mini .ant-avatar-string{font-size:12px;line-height:18px}ellipsis{display:inline}.ellipsis{overflow:hidden;display:inline-block;width:100%;word-break:break-all}.ellipsis__lines{position:relative}.ellipsis__line-clamp{position:relative;overflow:hidden;display:-webkit-box;text-overflow:ellipsis}.ellipsis__shadow{position:absolute;z-index:-999;display:block;color:transparent;opacity:0}.error-collect{cursor:pointer;padding-right:24px;color:#f5222d}.error-collect__count{padding-left:8px}.error-collect-rtl{padding-right:0;padding-left:24px}.error-collect-rtl .error-collect__count{padding-right:8px;padding-left:0}.exception{display:flex;align-items:center;height:100%}.exception__img-block{zoom:1;flex:0 0 62.5%;width:62.5%;padding-right:152px}.exception__img-block::after,.exception__img-block::before{content:' ';display:table}.exception__img-block::after{clear:both;height:0;font-size:0}.exception__img{float:right;width:100%;max-width:430px;height:360px;background-repeat:no-repeat;background-position:50% 50%;background-size:100% 100%}.exception__cont{flex:auto}.alain-default__nav-middle,.footer-toolbar__left{flex:1}.exception__cont-title{margin-bottom:24px;font-size:72px;font-weight:600;line-height:72px;color:#434e59}.exception__cont-desc{margin-bottom:16px;font-size:20px;line-height:28px;color:rgba(0,0,0,.45)}@media screen and (max-width:1200px){.exception__img-block{padding-right:88px}}@media screen and (max-width:576px){.exception{display:block;text-align:center}.exception__img-block{margin:0 auto 24px;padding-right:0}}@media screen and (max-width:480px){.exception__img-block{overflow:hidden;margin-bottom:-24px}}.exception-rtl .exception__cont-actions .ant-btn:not(:last-child){margin-right:0}.footer-toolbar{position:fixed;z-index:9;right:0;bottom:0;display:flex;width:100%;height:56px;padding:0 24px;line-height:56px;background:#fff;border-top:1px solid #f0f0f0;box-shadow:0 -1px 2px rgba(0,0,0,.03);transition:all .3s}.full-content{overflow:auto;display:block;height:100%}.full-content__body{overflow:hidden}.global-footer{display:block;margin:48px 0 24px;padding:0 16px;text-align:center}.global-footer__links{margin-bottom:8px}.global-footer__links-item{display:inline-block;color:rgba(0,0,0,.45);transition:all .3s}.global-footer__links-item:not(:last-child){margin-right:40px}.global-footer__links-item:hover{color:rgba(0,0,0,.85)}.global-footer__copyright{font-size:12px;color:rgba(0,0,0,.45)}.global-footer-rtl .global-footer__links-item:not(:last-child){margin-right:inherit;margin-left:40px}.notice-icon{width:336px}.notice-icon__btn{cursor:pointer;display:inline-block;transition:all .3s}.notice-icon .ant-popover-inner-content{padding:0}.notice-icon .ant-tabs-bar{margin-bottom:4px}.notice-icon__tab-left .ant-tabs-nav-list .ant-tabs-tab:first-child{margin-left:32px}.notice-icon .ant-list{overflow:auto;max-height:400px}.notice-icon .ant-list-item{cursor:pointer;overflow:hidden;padding-right:24px;padding-left:24px;transition:all .3s}.code-box-demo,.page-header,.page-header .ant-tabs-bar{border-bottom:1px solid #f0f0f0}.notice-icon .ant-list-item:hover{background:#e6f7ff}.notice-icon .ant-list-item-meta{width:100%}.notice-icon .ant-list-item-meta-title{margin-bottom:8px;font-weight:400}.notice-icon .ant-list-item .ant-avatar{margin-top:4px;background:#fff}.notice-icon__notfound{padding:73px 0 88px;color:rgba(0,0,0,.45);text-align:center}.notice-icon__clear,.notice-icon__clear:hover{color:rgba(0,0,0,.85)}.notice-icon__notfound-img{display:inline-block;height:76px;margin-bottom:16px}.notice-icon__clear{cursor:pointer;height:46px;line-height:46px;text-align:center;transition:all .3s}.notice-icon__item-desc,.notice-icon__item-time{font-size:12px;line-height:1.66667}.notice-icon__item .ant-badge-count{top:-10px}.notice-icon__item-read{opacity:.4}.notice-icon__item-time{margin-top:4px}.notice-icon__item-extra{float:right;margin-top:-1.5px;margin-right:0;font-weight:400;color:rgba(0,0,0,.45)}.page-header{display:block;padding:16px;background-color:#fff}.page-header__wide{max-width:1200px;margin:auto}.page-header .ant-breadcrumb{margin-bottom:8px}.page-header .ant-tabs{margin:0 0 -9px}.page-header__detail{display:flex}.page-header__row{display:flex;width:100%}.page-header__logo{flex:0 1 auto;margin-right:8px;padding-top:1px}.page-header__logo img{display:block;width:28px;height:28px;border-radius:2px}.page-header__title{font-size:20px;font-weight:500;color:rgba(0,0,0,.85)}.page-header__title small{padding-left:8px;font-size:14px;font-weight:400;color:rgba(0,0,0,.4)}.page-header__action{min-width:266px;margin-left:56px}.page-header__desc,.page-header__title{flex:auto}.page-header__action,.page-header__extra,.page-header__main{flex:0 1 auto}.page-header__main{width:100%}.page-header__action,.page-header__desc,.page-header__extra,.page-header__logo,.page-header__title{margin-bottom:8px}.page-header__action,.page-header__extra{display:flex;justify-content:flex-end}.page-header__extra{min-width:242px;margin-left:88px}@media screen and (max-width:1200px){.page-header__extra{margin-left:44px}}@media screen and (max-width:992px){.page-header__extra{margin-left:20px}}@media screen and (max-width:768px){.page-header__row{display:block}.page-header__action,.page-header__extra{justify-content:start;margin-left:0}}@media screen and (max-width:576px){.page-header__detail{display:block}}@media screen and (max-width:480px){.page-header__action .ant-btn,.page-header__action .ant-btn-group{display:block;margin-bottom:8px}.page-header__action .ant-input-search-enter-button .ant-btn{margin-bottom:0}.page-header__action .ant-btn-group>.ant-btn{display:inline-block;margin-bottom:0}}.page-header-rtl .page-header__logo{margin-right:0;margin-left:8px}.page-header-rtl .page-header__title small{padding-right:8px;padding-left:0}.page-header-rtl .page-header__action{margin-right:56px;margin-left:0}.page-header-rtl .page-header__extra{margin-right:88px;margin-left:0}@media screen and (max-width:1200px){.page-header-rtl .page-header__extra{margin-right:44px;margin-left:0}}@media screen and (max-width:992px){.page-header-rtl .page-header__extra{margin-right:20px;margin-left:0}}.quick-menu{position:fixed;z-index:11;right:-1px;left:auto;display:block;backface-visibility:hidden;transition:margin .3s cubic-bezier(1,0,0,1)}.quick-menu,.quick-menu__ctrl{background-color:#fff;border:1px solid #fff;box-shadow:0 6px 16px -8px rgba(0,0,0,.08),0 9px 28px 0 rgba(0,0,0,.05),0 12px 48px 16px rgba(0,0,0,.03)}.quick-menu__inner{position:relative;padding:0 12px}.quick-menu__ctrl{cursor:pointer;position:absolute;top:-1px;left:-50px;width:50px;height:50px;text-align:center;border-right:0;border-radius:3px 0 0 3px}.quick-menu__ctrl-icon{font-size:20px;line-height:49px}.result{display:block;width:72%;margin:0 auto;text-align:center}.result__icon{margin-bottom:24px;font-size:72px;line-height:72px}.result__icon-success{color:#52c41a}.result__icon-error{color:#ff4d4f}.result__title{margin-bottom:16px;font-size:24px;font-weight:500;line-height:32px;color:rgba(0,0,0,.85)}.result__desc{margin-bottom:24px;font-size:14px;line-height:22px;color:rgba(0,0,0,.45)}.result__extra{padding:24px 40px;text-align:left;background:#fafafa;border-radius:2px}.result__actions{margin-top:32px}.result__actions button:not(:last-child){margin-right:8px}.result .ant-steps .ant-steps-head,.result .ant-steps .ant-steps-title{background:#fafafa}@media screen and (max-width:480px){.result__extra{padding:18px 20px}.result{width:100%}}.reuse-tab{user-select:none;display:block;background-color:#fff;outline:0}.reuse-tab .ant-tabs-nav .ant-tabs-tab .reuse-tab__op{position:absolute;display:none;margin:0;font-size:10px;color:rgba(0,0,0,.85)}.reuse-tab .ant-tabs-nav .ant-tabs-tab:hover .reuse-tab__op{display:block}.reuse-tab .ant-tabs-nav .ant-tabs-tab .reuse-tab__name-width{overflow:hidden;display:inline-block;text-overflow:ellipsis}.reuse-tab .ant-tabs>.ant-tabs-nav{margin:0}.reuse-tab__line{padding:8px;border-bottom:1px solid #d9d9d9}.reuse-tab__line .ant-tabs-nav::before{border-bottom:none}.reuse-tab__line .ant-tabs-nav .ant-tabs-tab{padding:0}.reuse-tab__line .ant-tabs-nav .ant-tabs-tab .reuse-tab__op{top:12px;right:2px}.reuse-tab__line .ant-tabs-nav .ant-tabs-tab .reuse-tab__name{display:inline-block;padding:8px 20px}.reuse-tab__card{padding-top:8px}.reuse-tab__card .ant-tabs-nav-container{padding:0 8px}.reuse-tab__card .ant-tabs-nav .ant-tabs-tab .reuse-tab__op{top:4px;right:4px}.reuse-tab__disabled{opacity:.8}.reuse-tab__cm .ant-menu{border:1px solid #e9e9e9}.tag-select{user-select:none;position:relative;overflow:hidden;display:block;max-height:36px;margin-top:-16px;margin-left:-8px;line-height:1.66667;transition:all .3s}.tag-select__expanded{max-height:200px;transition:all .3s}.tag-select__has-expand{padding-right:50px}.tag-select .ant-tag{margin-top:16px;margin-right:24px}.tag-select__trigger{position:absolute;top:0;right:0;display:flex;align-items:center;margin-right:0!important;color:#1890ff}.tag-select__trigger>.anticon{margin-left:2px;font-size:8px;transition:transform .24s}.tag-select-rtl{margin-right:-8px;margin-left:0}.tag-select-rtl__has-expand{padding-right:0!important;padding-left:50px!important}.tag-select-rtl .tag-select .ant-tag{margin-right:0;margin-left:24px}.tag-select-rtl .tag-select__trigger-icon,[dir=rtl] .sidebar-nav__item-icon{margin-right:0;margin-left:8px}.tag-select-rtl .tag-select__trigger{right:initial;left:0}.cell[data-type=img] .img:not(:last-child),.main-color-item{margin-right:4px}.down-file__not-support{display:none}.loading-backdrop{z-index:9999;opacity:1;background-color:rgba(0,0,0,.15)}.loading-default{position:fixed;z-index:10000;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.g2-mini-progress,.g2-pie,g2,g2-bar,g2-chart,g2-custom,g2-gauge,g2-mini-area,g2-mini-bar,g2-single-bar,g2-tag-cloud,g2-timeline{display:block}.loading-default__icon{margin-bottom:8px;font-size:24px;color:#1890ff}.loading-default__text{color:#1890ff}.loading-default__custom{width:64px;height:64px;fill:#fff}.onboarding+.cdk-overlay-container{z-index:99999}.onboarding__mask{position:fixed;z-index:99998;inset:0;opacity:.5;background-color:#000}.onboarding__item,.onboarding__light,.pdf-container{position:absolute}.onboarding__light{z-index:99999;background-color:rgba(255,255,255,.9);animation:2.5s cubic-bezier(.55,.05,.6,.2) 0s infinite normal none running onboardingAnt}.onboarding__light-el{z-index:100000!important}.onboarding__light-ant{transition:all .3s ease-out}.onboarding__footer{margin-top:8px}.onboarding__total{color:rgba(0,0,0,.85)}@keyframes onboardingAnt{0%,33%{box-shadow:#fff 0 0 0 2px,#fff 0 0 0}100%,66%{box-shadow:#fff 0 0 0 2px,rgba(255,255,255,.01) 0 0 0 10px}}.pdf-container{overflow-x:auto;width:100%;height:100%;-webkit-overflow-scrolling:touch}.g2-card,.g2-card__top{position:relative}.cell__has-unit{align-items:baseline}.cell__has-default{color:rgba(0,0,0,.45)}.cell__primary{color:#1890ff}.cell__success{color:#52c41a}.cell__danger{color:#ff4d4f}.cell__warning{color:#faad14}.cell__large{font-size:18px}.cell .unit,.cell__small,.g2-card__meta{font-size:12px}.cell .img{vertical-align:middle;border-radius:4px}.cell .unit{margin-left:2px;color:rgba(0,0,0,.45)}.cell__disabled[data-type=link]>a{color:rgba(0,0,0,.85)}g2-bar,g2-tag-cloud{width:100%}.g2-card__top{overflow:hidden;width:100%}.g2-card__top-margin{margin-bottom:12px}.g2-card__top-has-margin{margin-bottom:20px}.g2-card__meta{height:22px;line-height:22px;color:rgba(0,0,0,.45)}.g2-card__total,.g2-pie__legend-title{color:rgba(0,0,0,.85)}.g2-card__meta-wrap{float:left}.g2-card__meta-action{cursor:pointer;position:absolute;top:4px;right:0;line-height:1}.g2-card__avatar{position:relative;top:4px;float:left;margin-right:20px}.g2-card__avatar img{border-radius:100%}.g2-card__total{overflow:hidden;height:38px;margin-top:4px;margin-bottom:0;font-size:30px;line-height:38px;text-overflow:ellipsis;word-break:break-all;white-space:nowrap}.g2-card__desc{width:100%;margin-bottom:12px}.g2-card__footer{margin-top:8px;padding-top:9px;border-top:1px solid #f0f0f0}.g2-card__footer>*{position:relative}.g2-mini-progress{position:relative;width:100%;padding:5px 0}.g2-mini-progress__wrap{position:relative;background-color:#f5f5f5}.g2-mini-progress__value{width:0;height:100%;background-color:#1890ff;border-radius:1px 0 0 1px;transition:all .4s cubic-bezier(.08,.82,.17,1) 0s}.g2-mini-progress__target{position:absolute;top:0;bottom:0}.g2-mini-progress__target-item{position:absolute;top:0;left:0;width:2px;height:4px;border-radius:100px}.g2-pie,.g2-pie__chart{position:relative}.g2-mini-progress__target-item:last-child{top:auto;bottom:0}.g2-pie__legend{position:absolute;top:50%;right:0;transform:translateY(-50%);min-width:250px;margin:0 20px;padding:0;list-style:none}.g2-pie__legend-item{cursor:pointer;height:22px;margin-bottom:16px;line-height:22px}.g2-pie__legend-item:last-child{margin-bottom:0}.g2-pie__legend-percent,.g2-pie__total-title,.g2-radar__legend-item{color:rgba(0,0,0,.45)}.g2-pie__legend-dot{position:relative;top:-1px;display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:8px}.g2-pie__legend-value{position:absolute;right:0}.g2-pie__legend-has .g2-pie__chart{width:calc(100% - 240px)}.g2-pie__legend-block .g2-pie__chart{width:100%;margin:0 0 32px}.g2-pie__legend-block .g2-pie__legend{position:relative;transform:none;min-width:auto}.g2-pie__total{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);height:62px;text-align:center}.g2-pie__total-title{height:22px;margin-bottom:8px;font-size:14px;font-weight:400;line-height:22px}.g2-pie__total-stat{display:block;height:32px;font-size:1.2em;line-height:32px;color:rgba(0,0,0,.85);white-space:nowrap}.g2-pie__mini .g2-pie__total-title{margin-top:4px;margin-bottom:0}.g2-radar{display:block}.g2-radar__legend{margin-top:16px}.g2-radar__legend-item{cursor:pointer;position:relative;line-height:22px;text-align:center}.g2-radar__legend-item::after{position:absolute;top:8px;right:0;width:1px;height:40px}.g2-radar__legend-item:last-child::after{display:none}.g2-radar__legend-dot,.g2-water-wave,.number-info,.number-info__value-text,.trend{display:inline-block}.g2-radar__legend-title{margin-top:4px;margin-bottom:0;padding-left:16px;font-size:24px;line-height:32px;color:rgba(0,0,0,.85)}.g2-radar__legend-dot{position:relative;top:-1px;width:6px;height:6px;margin-right:6px;border-radius:6px}.g2-water-wave{position:relative;transform-origin:left}.g2-water-wave__desc{position:absolute;top:32px;left:0;width:100%;text-align:center}.g2-water-wave__desc-title{font-size:14px;line-height:22px;color:rgba(0,0,0,.45)}.g2-water-wave__desc-percent{font-size:24px;line-height:32px;color:rgba(0,0,0,.85)}.g2-water-wave__canvas{transform-origin:0 0;transform:scale(.5)}.number-info__title{margin-bottom:16px;font-size:14px;color:rgba(0,0,0,.85);transition:all .3s}.number-info__title-sub{overflow:hidden;height:22px;font-size:12px;line-height:22px;color:rgba(0,0,0,.45);text-overflow:ellipsis;word-break:break-all;white-space:nowrap}.number-info__value{overflow:hidden;margin-top:4px;font-size:0;text-overflow:ellipsis;word-break:break-all;white-space:nowrap}.number-info__value-suffix{margin-left:4px;font-size:16px;font-style:normal;color:rgba(0,0,0,.85)}.number-info__value-text{height:32px;font-size:24px;line-height:32px;color:rgba(0,0,0,.85)}app-root,body,html{height:100%}.number-info__value-sub{margin-left:32px;font-size:14px;color:rgba(0,0,0,.45);vertical-align:top}.number-info__value-sub .anticon{transform:scale(.82);margin-left:4px;font-size:12px}.number-info__value-sub .anticon-caret-up{color:#f5222d}.number-info__value-sub .anticon-caret-down{color:#52c41a}.number-info__light .number-info__value-text{color:rgba(0,0,0,.85)}.number-info:not(:first-child){position:relative;margin-left:32px;padding-left:32px}.number-info:not(:first-child)::after{position:absolute;top:0;bottom:0;left:0;width:1px;margin:8px 0}.trend{font-size:12px;line-height:22px}.trend__down,.trend__up{position:relative;top:1px;margin-left:4px}.trend__down i,.trend__up i{transform:scale(.83);font-size:12px}.trend__up{color:#f5222d}.trend__down{top:-1px;color:#52c41a}.trend__grey .trend__down,.trend__grey .trend__up{color:rgba(0,0,0,.85)}.trend__reverse .trend__up{color:#52c41a}.trend__reverse .trend__down{color:#f5222d}html{--antd-wave-shadow-color:#1890ff;--scroll-bar:0;direction:ltr}body{background-color:#f5f7fa}.alain-default{position:relative;overflow-x:hidden;display:block;width:100%;height:auto;min-height:100%}.alain-default__unwrap{margin-right:-24px;margin-left:-24px}@media (max-width:767px){.alain-default__unwrap{margin-right:0;margin-left:0}}.alain-default__content{margin:0 24px 24px}.alain-default__content-title{display:flex;align-items:center;justify-content:space-between;margin-right:-24px;margin-bottom:24px;margin-left:-24px;padding:12px 24px;color:#929292;background-color:#fafbfc;border-bottom:1px solid #efe3e5}.alain-default__content-title>h1{margin-bottom:0;font-size:18px;font-weight:400}.alain-default__content-title>h1>small{display:block;font-size:12px;color:#8c8c8c}.alain-default__content nz-input-group{width:auto}.alain-default__hide-aside .alain-default__content{transform:none!important;margin-left:24px!important}.alain-default__hide-header .alain-default__aside{margin-top:0}@media (min-width:768px){.alain-default__content{margin-left:224px}.alain-default__collapsed .alain-default__sidebar{width:64px}.alain-default__collapsed .alain-default__content{margin-left:88px}[dir=rtl] .alain-default__content{margin-right:224px;margin-left:0}[dir=rtl] .alain-default__collapsed .alain-default__content{margin-right:88px;margin-left:0}}.alain-default__header{z-index:19;display:flex;align-items:center;width:100%;height:64px;padding:0 16px;background-color:#1890ff;box-shadow:0 1px 10px rgba(0,0,0,.2)}.alain-default__header-logo{width:200px;margin-left:-16px;transition:width .2s cubic-bezier(.25,0,.15,1)}.alain-default__header-logo-link{display:block;text-align:center}.alain-default__header-logo-collapsed,.alain-default__header-logo-expanded{max-width:100%;max-height:36px;vertical-align:middle;animation:fadeIn 1s}.alain-default__header-logo-collapsed{display:none}.alain-default__header-logo-expanded{display:inline-block}.alain-default__nav{display:flex;align-items:center;margin:0;padding:0}.alain-default__nav:first-child{margin-right:16px}.alain-default__nav-wrap{display:flex;flex:1;justify-content:space-between}.alain-default__nav>li{display:inline-block;vertical-align:middle}.alain-default__nav nz-badge,.alain-default__nav-item{color:#fff}.alain-default__nav-item{cursor:pointer;display:block;min-width:50px;padding:8px 2px;line-height:100%;text-align:center;border-radius:2px;outline:0;transition:background-color .3s}.alain-default__nav-item:hover{color:#fff;background-color:rgba(255,255,255,.2)}.alain-default__nav-item-icon,.alain-default__nav-item>i{transform:none!important;font-size:18px!important}.alain-default__top-menu-item{display:flex;align-items:center;height:64px;padding:0 16px;border-radius:0}.alain-default__top-menu-item-selected{color:#fff;background-color:rgba(255,255,255,.2)}.alain-default__top-menu-item-disabled{opacity:.5}.alain-default__search{position:relative;display:flex;flex:1;align-items:center;margin:0 24px}.alain-default__search .ant-input{padding-left:0}.alain-default__search .ant-input,.alain-default__search .ant-input-affix-wrapper,.alain-default__search .ant-input-group-addon{color:#fff;background-color:rgba(255,255,255,.2);border:none}.alain-default__search .ant-input-affix-wrapper::placeholder,.alain-default__search .ant-input-group-addon::placeholder,.alain-default__search .ant-input::placeholder{color:#fff;opacity:1}.alain-default__search .ant-input-affix-wrapper .ant-input{background-color:transparent}.alain-default__search .ant-input-affix-wrapper i,.alain-default__search .ant-input-group-addon i{color:#fff;transition:color .3s,transform .4s}.alain-default__search-focus .ant-input,.alain-default__search-focus .ant-input-affix-wrapper,.alain-default__search-focus .ant-input-group-addon{color:#595959;background-color:#f3f3f3}.alain-default__search-focus .ant-input-affix-wrapper::placeholder,.alain-default__search-focus .ant-input-group-addon::placeholder,.alain-default__search-focus .ant-input::placeholder{color:#595959;opacity:1}.alain-default__search-focus .ant-input-affix-wrapper i,.alain-default__search-focus .ant-input-group-addon i{transform:rotate(90deg);color:#595959}@media (max-width:767px){.alain-default__search{position:absolute;z-index:29;top:0;left:0;align-items:center;width:100%;height:100%;margin:0;padding:0 16px;background-color:#fff;transition:transform .3s}.alain-default__search-toggled{display:flex}.alain-default__search:not(.alain-default__search-toggled){transform:translate3d(0,-105%,0)}}.alain-default__collapsed .alain-default__header-logo{width:64px}.alain-default__collapsed .alain-default__header-logo-collapsed{display:inline-block}.alain-default__collapsed .alain-default__header-logo-expanded{display:none}@media (max-width:767px){.alain-default__header-logo{width:64px}.alain-default__header-logo-collapsed{display:inline}.alain-default__header-logo-expanded{display:none}}[dir=rtl] .alain-default__header-logo{margin-right:-16px;margin-left:0}.alain-default__aside{position:absolute;z-index:14;top:0;bottom:0;overflow:hidden;width:200px;margin-top:64px;backface-visibility:hidden;background-color:#fff;transition:width .2s cubic-bezier(.25,0,.15,1),translate .2s cubic-bezier(.25,0,.15,1);-webkit-overflow-scrolling:touch}.alain-default__aside::after{position:absolute;top:0;right:0;bottom:0;border-right:1px solid #efe3e5}.alain-default__aside-wrap{display:flex;flex-direction:column;height:100%}.alain-default__aside-inner{scrollbar-width:none;scroll-snap-type:proximity;overflow-x:hidden scroll;flex:1 1 0%;-webkit-overflow-scrolling:touch;scroll-snap-points-x:snaplist(100%,200%,300%,400%,500%)}.alain-default__aside-inner::-webkit-scrollbar{width:0;height:0}.alain-default__aside-inner::-webkit-scrollbar-track{box-shadow:inset 0 0 0 transparent}.alain-default__aside-inner::-webkit-scrollbar-thumb{background-color:transparent}.alain-default__aside-link{border-top:1px solid #efe3e5}.alain-default__aside-link-collapsed{cursor:pointer;padding:8px 0;font-size:16px;text-align:center}@media (min-width:768px){.alain-default__collapsed .alain-default__aside{width:64px}}[dir=rtl] .alain-default__aside::after{right:inherit;left:0}@media (max-width:767px){.alain-default__aside,.alain-default__content{transition:transform .3s ease}.alain-default__content{transform:translate3d(200px,0,0)}.alain-default__collapsed .alain-default__aside{transform:translate3d(-100%,0,0)}.alain-default__collapsed .alain-default__content{transform:translateZ(0)}[dir=rtl] .alain-default__content{transform:translate3d(-200px,0,0)}[dir=rtl] .alain-default__collapsed .alain-default__aside{transform:translate3d(100%,0,0)}[dir=rtl] .alain-default__collapsed .alain-default__content{transform:translateZ(0)}}.alain-default__progress-bar{position:fixed;z-index:29;overflow:hidden;width:100vw;height:4px;background:rgba(221,221,221,.4)}.alain-default__progress-bar::after{content:' ';transform-origin:top left;display:block;width:33.3vw;height:100%;animation:gradcolours 5s steps(1) infinite,loadthird 1s infinite linear}@keyframes loadthird{0%{transform:translateX(-33.3vw)}100%{transform:translateX(100vw)}}@keyframes gradcolours{0%{background:linear-gradient(90deg,rgba(232,128,152,0) 0,#e88098 30%,#e88098 50%,#e88098 70%,rgba(232,128,152,0) 100%)}20%{background:linear-gradient(90deg,rgba(132,190,190,0) 0,#84bebe 30%,#84bebe 50%,#84bebe 70%,rgba(132,190,190,0) 100%)}40%{background:linear-gradient(90deg,rgba(233,135,36,0) 0,#e98724 30%,#e98724 50%,#e98724 70%,rgba(233,135,36,0) 100%)}60%{background:linear-gradient(90deg,rgba(175,201,78,0) 0,#afc94e 30%,#afc94e 50%,#afc94e 70%,rgba(175,201,78,0) 100%)}80%{background:linear-gradient(90deg,rgba(98,151,164,0) 0,#6297a4 30%,#6297a4 50%,#6297a4 70%,rgba(98,151,164,0) 100%)}}.sidebar-nav{display:block;margin:0;padding:0;font-size:14px}.sidebar-nav__item{position:relative;display:flex;flex-direction:column;border-left:3px solid transparent;transition:border-left-color .4s ease}.sidebar-nav__item-link{user-select:none;position:relative;overflow:hidden;display:block;padding:8px 32px 8px 16px;color:rgba(0,0,0,.85);text-decoration:none!important;text-overflow:ellipsis;white-space:nowrap}.sidebar-nav__item-link:hover{color:#1890ff}.sidebar-nav__item-icon{display:inline-block;min-width:14px;margin-right:8px;transition:font-size .15s cubic-bezier(.215,.61,.355,1),margin .3s cubic-bezier(.645,.045,.355,1)}.sidebar-nav__item-img,.sidebar-nav__item-svg{width:14px;height:14px}.sidebar-nav__item-text{opacity:1;transition:opacity .3s cubic-bezier(.645,.045,.355,1),width .3s cubic-bezier(.645,.045,.355,1)}.sidebar-nav__item-disabled{cursor:default;opacity:.6}.sidebar-nav__item-disabled:hover{color:rgba(0,0,0,.85)}.sidebar-nav__selected{background-color:#fcfcfc;border-left-color:#1890ff}.sidebar-nav__selected>.sidebar-nav__item-link{color:#1890ff}.sidebar-nav__open>.sidebar-nav__sub{display:block;animation:fadeIn .5s}.sidebar-nav__open>.sidebar-nav__item-link .sidebar-nav__sub-arrow{transform:translateY(-2px)}.sidebar-nav__open>.sidebar-nav__item-link .sidebar-nav__sub-arrow::before{transform:rotate(45deg) translateX(2px)}.sidebar-nav__open>.sidebar-nav__item-link .sidebar-nav__sub-arrow::after{transform:rotate(-45deg) translateX(-2px)}.sidebar-nav__group-title{padding:8px 16px;color:rgba(0,0,0,.45)}.sidebar-nav__sub{overflow:hidden;display:none}.sidebar-nav__sub .sidebar-nav__item{border-left:0!important}.sidebar-nav__sub-arrow{position:absolute;top:50%;right:16px;width:10px;transition:transform .3s cubic-bezier(.645,.045,.355,1)}.sidebar-nav__sub-arrow::after,.sidebar-nav__sub-arrow::before{content:'';position:absolute;width:6px;height:1.5px;background:#fff;background-image:linear-gradient(to right,rgba(0,0,0,.85),rgba(0,0,0,.85));border-radius:2px;transition:background-color .3s cubic-bezier(.645,.045,.355,1),transform .3s cubic-bezier(.645,.045,.355,1),top .3s cubic-bezier(.645,.045,.355,1)}.sidebar-nav__sub-arrow::before{transform:rotate(-45deg) translateX(2px)}.sidebar-nav__sub-arrow::after{transform:rotate(45deg) translateX(-2px)}.sidebar-nav .ant-badge{position:absolute;top:8px;right:8px}.sidebar-nav .ant-badge-dot{top:10px!important;right:16px!important}.sidebar-nav__depth1 .sidebar-nav__item-link{padding-left:38px}.sidebar-nav__depth2 .sidebar-nav__item-link{padding-left:46px}.sidebar-nav__depth3 .sidebar-nav__item-link{padding-left:54px}.sidebar-nav__depth4 .sidebar-nav__item-link{padding-left:62px}.sidebar-nav__depth5 .sidebar-nav__item-link{padding-left:70px}.sidebar-nav__floating{position:absolute;z-index:16;display:none;min-width:160px;background-color:#fff;border:1px solid #efe3e5;border-radius:4px}.sidebar-nav__floating .sidebar-nav__item-link{padding-left:16px}.sidebar-nav__floating .sidebar-nav__sub,.sidebar-nav__floating-show{display:block}.algolia-autocomplete .ds-dropdown-menu::before,.sidebar-nav__floating .sidebar-nav__sub-arrow{display:none}.sidebar-nav__floating .sidebar-nav__depth2 .sidebar-nav__item-link{padding-left:24px}.sidebar-nav__floating .sidebar-nav__depth3 .sidebar-nav__item-link{padding-left:32px}#logo,.sidebar-nav__floating .sidebar-nav__depth4 .sidebar-nav__item-link{padding-left:40px}[dir=rtl] .sidebar-nav .ant-badge{right:inherit;left:16px}@media (min-width:768px){.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item{border:none}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link{display:flex;justify-content:center;padding:16px 0}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link .sidebar-nav__item-icon{margin-right:0;font-size:24px}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link .sidebar-nav__item-img{width:24px;height:24px}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link .sidebar-nav__item-text{display:none;opacity:0}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__group-title{display:none}.alain-default__collapsed .sidebar-nav__sub{display:none!important}.alain-default__collapsed .sidebar-nav__sub-arrow{display:none}[dir=rtl] .alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link .sidebar-nav__item-icon{margin-left:0}}.footer-toolbar__left{margin-left:200px}.alain-default__collapsed .footer-toolbar__left,.prev-next-nav{margin-left:64px}.footer-toolbar__body .alain-default__content{margin-bottom:64px}.full-content__body .alain-default__content router-outlet+*{display:block;width:100%;height:100%}.full-content__hidden-title .alain-default__content-title,.full-content__hidden-title .page-header,.full-content__opened .alain-default__aside,.full-content__opened .alain-default__header,.full-content__opened reuse-tab{display:none!important}.full-content__body .alain-default__content-title{margin-left:-24px}.full-content__opened .alain-default__content{margin:24px!important}.alain-default .page-header{margin-right:-24px;margin-bottom:24px;margin-left:-24px;padding:12px 24px 0;border-bottom:1px solid #efe3e5}@media (max-width:767px){.quick-menu{right:-25px!important}}.reuse-tab{margin:0 -24px}.alain-default__fixed .reuse-tab{position:fixed;z-index:10;top:64px;right:24px;left:224px}.alain-default__collapsed .reuse-tab{left:88px}.alain-default__hide-aside .reuse-tab{left:24px}.alain-default__hide-header .reuse-tab{top:0}@media (min-width:768px){.alain-default__fixed .reuse-tab+router-outlet{display:block;height:52px}}@media (max-width:767px){.alain-default__fixed .reuse-tab{position:unset;width:initial;margin-top:52px}}[dir=rtl] .alain-default__fixed .reuse-tab{right:224px;left:24px}[dir=rtl] .alain-default__collapsed .reuse-tab{right:88px;left:0}.alain-default__nav-item .ant-badge-count{top:6px;right:18px}.app-icons{padding:16px}.app-icons .ant-col-6{cursor:pointer;padding:16px 0;text-align:center;border-radius:4px;transition:background-color .3s}.app-icons .ant-col-6:hover{background-color:#f5f5f5}.app-icons i{padding:15px;font-size:22px;border-radius:50%}.app-icons small{display:block;padding-top:4px;font-size:14px;color:#9c9c9c}.alain-default__aside-user,.alain-default__aside-user .ant-dropdown-trigger{display:flex;align-items:center}.alain-default__aside-user-info,.header-link,body{color:rgba(0,0,0,.85)}.alain-default__aside-user{cursor:pointer;justify-content:center;margin:24px 24px 0}.alain-default__aside-user-info{overflow:hidden;flex:1;text-overflow:ellipsis;white-space:nowrap}.alain-default__aside-user-avatar{margin-right:8px}[dir=rtl] .alain-default__aside-user-avatar{margin-right:0;margin-left:8px}@media (min-width:768px){[dir=rtl] .alain-default__collapsed .alain-default__aside-user{margin-right:0}[dir=rtl] .alain-default__collapsed .alain-default__aside-user-avatar{margin:0 auto}.alain-default__collapsed .alain-default__aside-user{width:64px;margin-left:0}.alain-default__collapsed .alain-default__aside-user-info{display:none}.alain-default__collapsed .alain-default__aside-user-avatar{margin:0 auto}}.alain-default__fixed .alain-default__header{position:fixed;top:0;left:0}.alain-default__fixed .alain-default__aside{position:fixed}.alain-default__fixed:not(.alain-default__hide-header) .alain-default__content{margin-top:64px}.nz-resizable-preview{position:absolute;top:0;left:0;z-index:8;border:1px dashed #d1d1d1}.nz-resizable-handle{position:absolute;user-select:none;z-index:9}.nz-resizable-handle-top{width:100%;height:10px;top:-5px;left:0}.nz-resizable-handle-right{width:10px;height:100%;top:0;right:-5px}.nz-resizable-handle-bottom{width:100%;height:10px;bottom:-5px;left:0}.nz-resizable-handle-left{width:10px;height:100%;top:0;left:-5px}.nz-resizable-handle-topRight{width:20px;height:20px;top:-5px;right:-5px;z-index:10}.nz-resizable-handle-bottomRight{width:20px;height:20px;right:-5px;bottom:-5px;z-index:10}.nz-resizable-handle-bottomLeft{width:20px;height:20px;bottom:-5px;left:-5px;z-index:10}.nz-resizable-handle-topLeft{width:20px;height:20px;top:-5px;left:-5px;z-index:10}.nz-resizable .nz-resizable-handle-cursor-type-window.nz-resizable-handle-bottom,.nz-resizable .nz-resizable-handle-cursor-type-window.nz-resizable-handle-top{cursor:ns-resize}.nz-resizable .nz-resizable-handle-cursor-type-window.nz-resizable-handle-left,.nz-resizable .nz-resizable-handle-cursor-type-window.nz-resizable-handle-right{cursor:ew-resize}.nz-resizable .nz-resizable-handle-cursor-type-grid.nz-resizable-handle-bottom,.nz-resizable .nz-resizable-handle-cursor-type-grid.nz-resizable-handle-top{cursor:row-resize}.nz-resizable .nz-resizable-handle-cursor-type-grid.nz-resizable-handle-left,.nz-resizable .nz-resizable-handle-cursor-type-grid.nz-resizable-handle-right{cursor:col-resize}.nz-resizable .nz-resizable-handle-bottomRight,.nz-resizable .nz-resizable-handle-topLeft{cursor:nwse-resize}.nz-resizable .nz-resizable-handle-bottomLeft,.nz-resizable .nz-resizable-handle-topRight{cursor:nesw-resize}.color-palettes{margin:0 1%}.color-palettes-dark{margin:0;padding:0 28px;background-color:#141414}.color-palettes-dark .color-title{color:rgba(255,255,255,.85)}.color-palettes-dark .color-description{color:rgba(255,255,255,.45)}.color-palettes-dark .color-palette{margin:45px 3.5% 45px 0}.color-palettes-dark .color-palette .main-color-item,.color-palettes-dark .color-palette:nth-of-type(3n){margin-right:0}.color-palettes-dark .color-palette .main-color-item:hover{margin-right:-8px}.color-palette{display:inline-block;width:31%;margin:45px 1%}.color-palette-pick{margin:0 0 20px;font-size:20px;text-align:center}.color-palette-picker{margin:24px 0}.color-palette-picker-value{position:relative;top:-3px;margin-left:16px;font-family:Consolas,sans-serif;font-size:14px}.color-palette-picker-validation{position:relative;top:-3px;margin-left:16px;font-size:13px;color:#ff4d4f}.color-palette-picker-validation-dark{margin-left:0}.main-color{text-align:left}.main-color .palette-gray-11{background:#1f1f1f}.main-color .palette-gray-12{background:#141414}.drawer-mask,.main-color .palette-gray-13{background:#000}.main-color-item{cursor:pointer;position:relative;height:44px;padding:0 12px;font-family:Consolas,sans-serif;font-size:14px;line-height:44px;transition:all .2s}.main-color-item:first-child{border-radius:4px 4px 0 0}.main-color-item:last-child{border-radius:0 0 4px 4px}.main-color-item:hover{margin-right:-8px;border-radius:0 4px 4px 0}.main-color-item .main-color-text{float:left;transition:all .3s}.main-color-item .main-color-value{position:relative;left:3px;transform-origin:100% 50%;transform:scale(.85);float:right;opacity:0;transition:all .3s}.main-color .palette-blue-1{background:#e6f7ff}.main-color .palette-blue-2{background:#bae7ff}.main-color .palette-blue-3{background:#91d5ff}.main-color .palette-blue-4{background:#69c0ff}.main-color .palette-blue-5{background:#40a9ff}.main-color .palette-blue-6{background:#1890ff}.main-color .palette-blue-7{background:#096dd9}.main-color .palette-blue-8{background:#0050b3}.main-color .palette-blue-9{background:#003a8c}.main-color .palette-blue-10{background:#002766}.main-color .palette-purple-1{background:#f9f0ff}.main-color .palette-purple-2{background:#efdbff}.main-color .palette-purple-3{background:#d3adf7}.main-color .palette-purple-4{background:#b37feb}.main-color .palette-purple-5{background:#9254de}.main-color .palette-purple-6{background:#722ed1}.main-color .palette-purple-7{background:#531dab}.main-color .palette-purple-8{background:#391085}.main-color .palette-purple-9{background:#22075e}.main-color .palette-purple-10{background:#120338}.main-color .palette-cyan-1{background:#e6fffb}.main-color .palette-cyan-2{background:#b5f5ec}.main-color .palette-cyan-3{background:#87e8de}.main-color .palette-cyan-4{background:#5cdbd3}.main-color .palette-cyan-5{background:#36cfc9}.main-color .palette-cyan-6{background:#13c2c2}.main-color .palette-cyan-7{background:#08979c}.main-color .palette-cyan-8{background:#006d75}.main-color .palette-cyan-9{background:#00474f}.main-color .palette-cyan-10{background:#002329}.main-color .palette-green-1{background:#f6ffed}.main-color .palette-green-2{background:#d9f7be}.main-color .palette-green-3{background:#b7eb8f}.main-color .palette-green-4{background:#95de64}.main-color .palette-green-5{background:#73d13d}.main-color .palette-green-6{background:#52c41a}.main-color .palette-green-7{background:#389e0d}.main-color .palette-green-8{background:#237804}.main-color .palette-green-9{background:#135200}.main-color .palette-green-10{background:#092b00}.main-color .palette-magenta-1{background:#fff0f6}.main-color .palette-magenta-2{background:#ffd6e7}.main-color .palette-magenta-3{background:#ffadd2}.main-color .palette-magenta-4{background:#ff85c0}.main-color .palette-magenta-5{background:#f759ab}.main-color .palette-magenta-6{background:#eb2f96}.main-color .palette-magenta-7{background:#c41d7f}.main-color .palette-magenta-8{background:#9e1068}.main-color .palette-magenta-9{background:#780650}.main-color .palette-magenta-10{background:#520339}.main-color .palette-red-1{background:#fff1f0}.main-color .palette-red-2{background:#ffccc7}.main-color .palette-red-3{background:#ffa39e}.main-color .palette-red-4{background:#ff7875}.main-color .palette-red-5{background:#ff4d4f}.main-color .palette-red-6{background:#f5222d}.main-color .palette-red-7{background:#cf1322}.main-color .palette-red-8{background:#a8071a}.main-color .palette-red-9{background:#820014}.main-color .palette-red-10{background:#5c0011}.main-color .palette-volcano-1{background:#fff2e8}.main-color .palette-volcano-2{background:#ffd8bf}.main-color .palette-volcano-3{background:#ffbb96}.main-color .palette-volcano-4{background:#ff9c6e}.main-color .palette-volcano-5{background:#ff7a45}.main-color .palette-volcano-6{background:#fa541c}.main-color .palette-volcano-7{background:#d4380d}.main-color .palette-volcano-8{background:#ad2102}.main-color .palette-volcano-9{background:#871400}.main-color .palette-volcano-10{background:#610b00}.main-color .palette-orange-1{background:#fff7e6}.main-color .palette-orange-2{background:#ffe7ba}.main-color .palette-orange-3{background:#ffd591}.main-color .palette-orange-4{background:#ffc069}.main-color .palette-orange-5{background:#ffa940}.main-color .palette-orange-6{background:#fa8c16}.main-color .palette-orange-7{background:#d46b08}.main-color .palette-orange-8{background:#ad4e00}.main-color .palette-orange-9{background:#873800}.main-color .palette-orange-10{background:#612500}.main-color .palette-gold-1{background:#fffbe6}.main-color .palette-gold-2{background:#fff1b8}.main-color .palette-gold-3{background:#ffe58f}.main-color .palette-gold-4{background:#ffd666}.main-color .palette-gold-5{background:#ffc53d}.main-color .palette-gold-6{background:#faad14}.main-color .palette-gold-7{background:#d48806}.main-color .palette-gold-8{background:#ad6800}.main-color .palette-gold-9{background:#874d00}.main-color .palette-gold-10{background:#613400}.main-color .palette-yellow-1{background:#feffe6}.main-color .palette-yellow-2{background:#ffffb8}.main-color .palette-yellow-3{background:#fffb8f}.main-color .palette-yellow-4{background:#fff566}.main-color .palette-yellow-5{background:#ffec3d}.main-color .palette-yellow-6{background:#fadb14}.main-color .palette-yellow-7{background:#d4b106}.main-color .palette-yellow-8{background:#ad8b00}.main-color .palette-yellow-9{background:#876800}.main-color .palette-yellow-10{background:#614700}.main-color .palette-lime-1{background:#fcffe6}.main-color .palette-lime-2{background:#f4ffb8}.main-color .palette-lime-3{background:#eaff8f}.main-color .palette-lime-4{background:#d3f261}.main-color .palette-lime-5{background:#bae637}.main-color .palette-lime-6{background:#a0d911}.main-color .palette-lime-7{background:#7cb305}.main-color .palette-lime-8{background:#5b8c00}.main-color .palette-lime-9{background:#3f6600}.main-color .palette-lime-10{background:#254000}.main-color .palette-geekblue-1{background:#f0f5ff}.main-color .palette-geekblue-2{background:#d6e4ff}.main-color .palette-geekblue-3{background:#adc6ff}.main-color .palette-geekblue-4{background:#85a5ff}.main-color .palette-geekblue-5{background:#597ef7}.main-color .palette-geekblue-6{background:#2f54eb}.main-color .palette-geekblue-7{background:#1d39c4}.main-color .palette-geekblue-8{background:#10239e}.main-color .palette-geekblue-9{background:#061178}.main-color .palette-geekblue-10{background:#030852}.main-color .palette-gray-1{background:#fff}.main-color .palette-gray-2{background:#fafafa}.main-color .palette-gray-3{background:#f5f5f5}.main-color .palette-gray-4{background:#f0f0f0}.main-color .palette-gray-5{background:#d9d9d9}.main-color .palette-gray-6{background:#bfbfbf}.main-color .palette-gray-7{background:#8c8c8c}.main-color .palette-gray-8{background:#595959}.main-color .palette-gray-9{background:#434343}.main-color .palette-gray-10{background:#262626}.color-title{margin:0 0 24px;font-size:22px;font-weight:500;color:#5c6b77;text-align:center;text-transform:capitalize}#header>.ant-row>.ant-col h1,.color-palette-horizontal-dark .color-palette-picker{margin-bottom:0}.color-description{display:block;font-size:14px;font-weight:lighter;color:#777}.main-color:hover .main-color-value{left:0;opacity:.7}.color-palette-horizontal{width:100%}.color-palette-horizontal-dark{height:303px;padding:32px 28px;background-color:#141414}#header,body{background:#fff}.color-palette-horizontal-dark .color-palette-pick{color:rgba(255,255,255,.65);text-align:left}.color-palette-horizontal-dark .color-palette-pick-hex{color:rgba(255,255,255,.65)}.color-palette-horizontal .main-color{display:flex}.color-palette-horizontal .main-color-item{position:relative;flex:1;height:86px;margin-right:0;padding:37px 0 0;line-height:normal;text-align:center;border-radius:0}.color-palette-horizontal .main-color-item .main-color-text{float:none}.color-palette-horizontal .main-color-item:hover{height:96px;margin-top:-10px;border-radius:4px 4px 0 0}.color-palette-horizontal .main-color-value{position:absolute;bottom:0;left:0;transform-origin:unset;width:100%;text-align:center}.color-palette-horizontal .main-color:hover .main-color-item{padding-top:8px}.color-palette-horizontal .main-color:hover .main-color-value{bottom:8px;opacity:.7}article,aside,blockquote,body,button,code,dd,details,div,dl,dt,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,hr,input,legend,li,menu,nav,ol,p,pre,section,td,textarea,th,ul{margin:0;padding:0}ol,ul{list-style:none}body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,'Noto Sans',sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji';font-size:14px;transition:background 1s cubic-bezier(.075,.82,.165,1)}#logo,#nav,.aside-container,.markdown h1,.markdown h2,.markdown h3,.markdown h4,.markdown h5,.markdown h6{font-family:Avenir,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,'Noto Sans',sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji',sans-serif}a{transition:color .3s ease}#ng-content{display:block;height:100%;transition:transform .3s cubic-bezier(.78,.14,.15,.86)}.fetching{position:absolute;z-index:99;top:16px;left:16px}#header,#logo img,#search-box{position:relative}#demo-toc.toc,#header,#header #nav.ant-menu,#header #search-box,.main-wrapper,.main-wrapper .main-container,.main-wrapper>.ant-row>.main-menu .main-menu-inner>.ant-menu,.main-wrapper>.ant-row>.main-menu .main-menu-inner>.ant-menu.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title::after{transition:all .3s cubic-bezier(.78,.14,.15,.86)}.ant-menu-item-active .header-link{color:#1890ff}#header{z-index:10;display:block;max-width:100%;box-shadow:0 2px 8px #f0f1f2}#header .menu-row{display:flex;align-items:center;margin:0}#header .menu-row>*{flex:none;margin:0 16px 0 0}#header .menu-row>:last-child{margin-right:40px}#header .ant-row-rtl .menu-row>:last-child{margin-right:16px;margin-left:40px}#header .header-button{color:rgba(0,0,0,.85);border-color:#d9d9d9}#logo{overflow:hidden;height:64px;font-size:18px;line-height:64px;color:rgba(0,0,0,.85);text-decoration:none;white-space:nowrap}.ant-row-rtl #logo{float:right;padding-right:40px;padding-left:0}#logo img{top:-1.5px;height:32px;margin-right:16px}.ant-row-rtl #logo img{margin-right:0;margin-left:16px}#search-box{display:flex;flex:auto!important;align-items:center;height:22px;margin:0 auto 0 0!important;padding-left:16px;line-height:22px;white-space:nowrap;border-left:1px solid #f0f0f0;transition:width .5s}.ant-row-rtl #search-box{margin:0 0 0 auto!important;padding-right:16px;padding-left:0;border-left:none}#search-box>*{flex:auto}#search-box .anticon{position:absolute;z-index:1;top:50%;transform:translateY(-50%);flex:none;color:#ced4d9}#search-box input{width:100%;max-width:200px;padding-left:20px;font-size:14px;background:0 0;border:0}#search-box.narrow-mode input,.ant-row-rtl #search-box input{padding-right:20px;padding-left:11px}#search-box input::placeholder{color:#a3b1bf}#search-box.narrow-mode{flex:none!important;width:30px}#search-box.narrow-mode:hover .anticon{color:#a3b1bf}#search-box.narrow-mode .anticon{right:0;left:auto}.ant-row-rtl #search-box.narrow-mode .anticon{right:auto;left:0}#search-box.narrow-mode input{cursor:pointer;max-width:none}.ant-row-rtl #search-box.narrow-mode input{padding-right:11px;padding-left:20px}#search-box.narrow-mode.focused{width:500px}#search-box.narrow-mode.focused .anticon{color:#ced4d9}#search-box.narrow-mode.focused input{cursor:text}.algolia-autocomplete .ds-dropdown-menu{border:none;box-shadow:0 3px 6px -4px rgba(0,0,0,.12),0 6px 16px 0 rgba(0,0,0,.08),0 9px 28px 8px rgba(0,0,0,.05)}.algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-]{background:#fff;border:none}.algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-] .algolia-docsearch-suggestion{background:#fff}.algolia-autocomplete .algolia-docsearch-suggestion--title{color:rgba(0,0,0,.85)}#nav.ant-menu-horizontal>.ant-menu-item-selected a,.algolia-autocomplete .algolia-docsearch-suggestion--highlight{color:#1890ff}.nav-phone-icon{cursor:pointer;position:absolute;z-index:1;top:25px;right:30px;width:16px;height:22px}#nav{height:100%;font-size:14px;border:0}#nav.ant-menu-horizontal{border-bottom:none}#nav.ant-menu-horizontal>.ant-menu-item,#nav.ant-menu-horizontal>.ant-menu-submenu{min-width:72px;height:64px;line-height:60px;border-top:2px solid transparent}#nav.ant-menu-horizontal>.ant-menu-item::after,#nav.ant-menu-horizontal>.ant-menu-submenu::after{content:none}.browser-mockup::after,.browser-mockup::before{content:'';position:absolute}#nav.ant-menu-horizontal>.ant-menu-item:hover,#nav.ant-menu-horizontal>.ant-menu-submenu:hover{border-top:2px solid #1890ff;border-bottom:none}#nav.ant-menu-horizontal .ant-menu-submenu-title .anticon{margin:0}#nav.ant-menu-horizontal>.ant-menu-item-selected,#nav.ant-menu-horizontal>.ant-menu-submenu-open{border-top:2px solid #1890ff;border-bottom:2px solid transparent}#nav>.ant-menu-item,#nav>.ant-menu-submenu{text-align:center}.popover-menu{width:300px}.popover-menu .ant-popover-inner-content{padding:0}.popover-menu .ant-popover-inner-content #nav .ant-menu-item,.popover-menu .ant-popover-inner-content #nav .ant-menu-submenu{text-align:left}.popover-menu .ant-popover-inner-content #nav .ant-menu-item-group-title{padding-left:24px}.popover-menu .ant-popover-inner-content #nav .ant-menu-item-group-list{padding:0 16px}.popover-menu .ant-popover-inner-content #nav .ant-menu-item,.popover-menu .ant-popover-inner-content #nav a{color:#333}@media only screen and (max-width:1200px){#header{text-align:center}#logo{padding-right:0;padding-left:0}#search-box{display:none}}[dir=rtl] .nav-phone-icon{right:inherit;left:30px}.main-wrapper{position:relative;display:block;padding:40px 0 0;background:#fff}.main-container{position:relative;min-height:500px;padding:0 170px 32px 64px;background:#fff}.ant-row-rtl .main-container{padding:0 64px 144px 186px}.main-menu{z-index:1}.main-menu-inner{overflow:hidden;height:100%;max-height:100vh}.main-menu:hover .main-menu-inner{overflow-y:auto}.main-menu>div,.main-menu>div>div{height:100%}.aside-container{min-height:100%;padding-bottom:48px}.aside-container.ant-menu-inline .ant-menu-item a,.aside-container.ant-menu-inline .ant-menu-submenu-title h4,.aside-container.ant-menu-inline>.ant-menu-item{overflow:hidden;font-size:14px;text-overflow:ellipsis}.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title{margin-top:16px;margin-bottom:16px;font-size:13px}.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title::after{content:'';position:relative;top:12px;display:block;width:calc(100% - 20px);height:1px;background:#f0f0f0}.aside-container.ant-menu-inline.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item,.aside-container.ant-menu-inline>.ant-menu-item,.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item,.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title,.aside-container.ant-menu-inline>.ant-menu-submenu>.ant-menu-submenu-title{padding-left:40px!important}.ant-row-rtl .aside-container.ant-menu-inline.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item,.ant-row-rtl .aside-container.ant-menu-inline>.ant-menu-item,.ant-row-rtl .aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item,.ant-row-rtl .aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title,.ant-row-rtl .aside-container.ant-menu-inline>.ant-menu-submenu>.ant-menu-submenu-title{padding-right:40px!important;padding-left:16px!important}.aside-container.ant-menu-inline.ant-menu-inline .ant-menu-item-group-title{padding-left:56px}.ant-row-rtl .aside-container.ant-menu-inline.ant-menu-inline .ant-menu-item-group-title{padding-right:56px;padding-left:16px}.aside-container.ant-menu-inline.ant-menu-inline .ant-menu-item-group-list>.ant-menu-item{padding-left:80px!important}.ant-row-rtl .aside-container.ant-menu-inline.ant-menu-inline .ant-menu-item-group-list>.ant-menu-item{padding-right:80px!important;padding-left:16px!important}.aside-container.ant-menu-inline .ant-menu-item-group:first-child .ant-menu-item-group-title{margin-top:0}.aside-container a[disabled]{color:#ccc}.aside-container .menu-item-link-outside{position:relative}.aside-container .menu-item-link-outside .anticon{position:absolute;top:16px;right:-10px;font-size:12px;color:#1890ff;opacity:0;transition:all .3s}.aside-container .menu-item-link-outside:hover .anticon{opacity:1}.aside-container .chinese{margin-left:6px;font-size:12px;font-weight:400;opacity:.67}@media (max-width:1200px){.main-container{padding-right:48px;padding-left:48px}.ant-row-rtl .main-container{padding-right:24px;padding-left:24px}.main-container .toc-affix{display:none}}.drawer{position:fixed;z-index:9999;top:0;width:100%;height:100%}.drawer>*{transition:transform .3s cubic-bezier(.78,.14,.15,.86),opacity .3s cubic-bezier(.78,.14,.15,.86),box-shaow .3s cubic-bezier(.78,.14,.15,.86),-webkit-transform .3s cubic-bezier(.78,.14,.15,.86)}.drawer-content-wrapper,.drawer-mask{position:absolute;height:100%}.drawer-mask{top:0;width:100%;opacity:0}.drawer-content-wrapper{left:-60vw;width:60vw;background:#fff;box-shadow:2px 0 10px rgba(0,0,0,.15)}.drawer-content{overflow:auto;height:100%}.drawer-button{pointer-events:auto;cursor:pointer;position:absolute;z-index:0;top:72px;right:-40px;display:flex;align-items:center;justify-content:center;width:41px;height:40px;font-size:16px;line-height:40px;text-align:center;background:#fff;border-radius:0 4px 4px 0;box-shadow:2px 0 8px rgba(0,0,0,.15)}.markdown ul>li:empty,.prev-next-nav>.next-page .footer-nav-icon-before,.prev-next-nav>a.prev-page .footer-nav-icon-after,.toc-affix .ant-anchor-ink-ball.visible{display:none}.drawer-open{pointer-events:auto;transform:translateX(60vw);transition:transform .3s cubic-bezier(.78,.14,.15,.86) 0s}.drawer-open .drawer-mask{opacity:.3}@media (max-width:767px){.drawer .ant-menu-inline .ant-menu-item::after,.drawer .ant-menu-vertical .ant-menu-item::after{right:auto;left:0}}.prev-next-nav{overflow:hidden;width:calc(100% - 128px);margin-right:64px;font-size:14px;border-top:1px solid #f0f0f0}.prev-next-nav>.next-page,.prev-next-nav>.prev-page{float:left;width:50%;height:72px;line-height:72px;text-decoration:none}.ant-row-rtl .prev-next-nav>.next-page,.ant-row-rtl .prev-next-nav>.prev-page{float:right}.ant-row-rtl .prev-next-nav>.next-page .footer-nav-icon-after,.ant-row-rtl .prev-next-nav>.next-page .footer-nav-icon-before,.ant-row-rtl .prev-next-nav>.prev-page .footer-nav-icon-after,.ant-row-rtl .prev-next-nav>.prev-page .footer-nav-icon-before{transform:rotate(180deg)}.prev-next-nav>a.prev-page .footer-nav-icon-before{position:relative;left:0;margin-right:1em;font-size:12px;color:rgba(0,0,0,.45);transition:all .3s}.ant-row-rtl .prev-next-nav>a.prev-page .footer-nav-icon-before{right:0;left:auto;margin-right:0;margin-left:1em}.prev-next-nav>a.prev-page:hover .footer-nav-icon-before{left:-3px;color:#1890ff}.ant-row-rtl .prev-next-nav>a.prev-page:hover .footer-nav-icon-before{right:-3px;left:auto}.prev-next-nav>.next-page{float:right;text-align:right}.ant-row-rtl .prev-next-nav>.next-page{float:left;text-align:left}.prev-next-nav>.next-page .footer-nav-icon-after{position:relative;right:0;margin-left:1em;font-size:12px;color:rgba(0,0,0,.45);transition:all .3s}.ant-row-rtl .prev-next-nav>.next-page .footer-nav-icon-after{right:auto;left:0;margin-right:1em;margin-left:0}.prev-next-nav>.next-page:hover .footer-nav-icon-after{right:-3px;color:#1890ff}.ant-row-rtl .prev-next-nav>.next-page:hover .footer-nav-icon-after{right:auto;left:-3px}.prev-next-nav .chinese{margin-left:.5em}.footer{position:relative;clear:both;display:block;font-size:14px;color:rgba(255,255,255,.65);background-color:#000;box-shadow:0 1000px 0 1000px #fff}.footer .ant-row{text-align:center}.footer__center{display:inline-block;text-align:left}.footer__center>h2{position:relative;margin:0 auto 24px;font-size:16px;font-weight:500}.footer__center>h2>.title-icon{width:27px;margin-right:16px}.footer__center>h2>.anticon{position:absolute;top:3px;left:-22px;font-size:16px;color:#aaa}.footer__center>div{margin:12px 0}.footer__wrap{position:relative;padding:86px 144px 16px;border-bottom:1px solid rgba(255,255,255,.25)}.footer a{color:rgba(255,255,255,.9)}.footer h2,.footer h2>span{color:#fff}.footer__small .footer__wrap{padding:86px 24px 93px}.theme-color{cursor:pointer;display:inline-block;padding:4px;vertical-align:middle;background:#fff;border-radius:2px;box-shadow:rgba(0,0,0,.1) 0 0 0 1px}.theme-color-value{width:80px;height:16px;border-radius:2px}.theme-color-content .ant-popover-inner-content{width:200px;padding:0}@media (max-width:1200px){.footer,.footer .footer__center{text-align:center}.footer .footer__wrap{padding:40px}.footer .footer__wrap .ant-row{padding:0}.footer .footer__wrap .ant-row>div:nth-child(2),.footer .footer__wrap .ant-row>div:nth-child(4){display:none}.footer .footer__wrap .ant-row>div a{font-weight:300}.footer h2{margin-top:16px}}.code-box .code-expand-icon>span,.theme-btn{display:flex}.theme-btn{cursor:pointer;position:fixed;z-index:2147483640;bottom:102px;flex-direction:column}.theme-btn-tooltip .ant-tooltip-inner{min-width:100px}.theme-btn>div{display:block}.theme-btn-active{width:44px;height:44px;font-size:22px;line-height:44px;color:#1890ff}.theme-btn .theme-btn-avatar{color:#000;background-color:#fff;box-shadow:0 3px 6px -4px rgba(0,0,0,.12),0 6px 16px 0 rgba(0,0,0,.08),0 9px 28px 8px rgba(0,0,0,.05);transition:color .3s}.theme-btn .theme-btn-avatar:hover{color:#1890ff}.toc-affix{position:absolute;top:8px;right:20px}.toc-affix .ant-anchor .ant-anchor-link-active{position:relative;z-index:2;margin-left:-2px;border-left:2px solid #1890ff}.toc-affix .ant-anchor-link-title{max-width:120px}.ant-row-rtl .toc-affix{right:auto;left:20px}@media (max-width:767px){.toc-affix{display:none}}.markdown{font-size:14px;line-height:2;color:rgba(0,0,0,.85)}.markdown img{max-width:calc(100% - 32px)}.markdown p>img{margin:34px 0;box-shadow:0 8px 20px rgba(143,168,191,.35)}.markdown p>img.markdown-inline-image{margin:0;box-shadow:none}.markdown h1{margin-top:8px;margin-bottom:20px;font-size:30px;font-weight:500;line-height:38px;color:rgba(0,0,0,.85)}.markdown h1 .subtitle{margin-left:12px}.ant-row-rtl .markdown h1 .subtitle{margin-right:12px;margin-left:0}.markdown h2{font-size:24px;line-height:32px}.markdown h2,.markdown h3,.markdown h4,.markdown h5,.markdown h6{clear:both;margin:1.6em 0 .6em;font-weight:500;color:rgba(0,0,0,.85)}.markdown pre,.markdown.api-container table{font-family:SFMono-Regular,Consolas,'Liberation Mono',Menlo,Courier,monospace}.markdown h3{font-size:18px}.markdown h4{font-size:16px}.markdown h5{font-size:14px}.markdown h6{font-size:12px}.markdown hr{clear:both;height:1px;margin:56px 0;background:#f0f0f0;border:0}.markdown p,.markdown pre{margin:1em 0}.markdown ul>li{margin-left:20px;padding-left:4px;list-style-type:circle}.ant-row-rtl .markdown ul>li{margin-right:20px;margin-left:0;padding-right:4px;padding-left:0}.markdown ol>li{margin-left:20px;padding-left:4px;list-style-type:decimal}.ant-row-rtl .markdown ol>li{margin-right:20px;margin-left:0;padding-right:4px;padding-left:0}.markdown ol>li>p,.markdown ul>li>p{margin:.2em 0}.markdown code{margin:0 1px;padding:.2em .4em;font-size:.9em;background:#f2f4f5;border:1px solid #f0f0f0;border-radius:3px}.markdown pre{background:#f2f4f5;border-radius:2px}.markdown pre code{overflow:auto;margin:0;padding:0;font-size:11px;color:rgba(0,0,0,.85);background:#f5f5f5;border:none}.markdown b,.markdown strong{font-weight:500}.markdown>table{border-spacing:0;empty-cells:show;width:100%;margin:8px 0 16px;border:1px solid #f0f0f0}.markdown>table tbody tr{transition:all .3s}.markdown>table tbody tr:hover{background:rgba(60,90,100,.04)}.markdown>table th:nth-child(1),.markdown>table th:nth-child(2){word-break:keep-all;white-space:nowrap}.markdown>table th{font-weight:500;color:#5c6b77;background:rgba(0,0,0,.02)}.markdown>table td,.markdown>table th{padding:16px 24px;text-align:left;border:1px solid #f0f0f0}.markdown blockquote{margin:1em 0;padding-left:.8em;font-size:90%;color:rgba(0,0,0,.45);border-left:4px solid #f0f0f0}.ant-row-rtl .markdown blockquote{padding-right:.8em;padding-left:0;border-right:4px solid #f0f0f0;border-left:none}.markdown blockquote p{margin:0}.markdown .anchor{margin-left:8px;opacity:0;transition:opacity .3s}.ant-row-rtl .markdown .anchor{margin-right:8px;margin-left:0}.markdown .waiting{cursor:not-allowed;color:#ccc}.code-box-code-icon,.code-box-code-icon:hover,.markdown a.edit-button i{color:rgba(0,0,0,.45)}.markdown a.edit-button{display:inline-block;margin-left:8px;text-decoration:none}.ant-row-rtl .markdown a.edit-button{margin-right:8px;margin-left:0}.markdown a.edit-button i:hover{color:#1890ff}.markdown a.edit-button .anticon{display:block;font-size:16px}.markdown h1:hover .anchor,.markdown h2:hover .anchor,.markdown h3:hover .anchor,.markdown h4:hover .anchor,.markdown h5:hover .anchor,.markdown h6:hover .anchor{display:inline-block;opacity:1}.markdown>br,.markdown>p>br{clear:both}.markdown.api-container{overflow-x:auto}.markdown.api-container table{table-layout:auto;min-width:720px;margin:2em 0;font-size:11px;line-height:1.66667;border:1px solid #f0f0f0}.markdown.api-container table td,.markdown.api-container table th{padding:12px;border-color:#f0f0f0;border-width:1px 0}.markdown.api-container table th{padding-top:14px;white-space:nowrap;border-width:0 0 2px}.markdown.api-container table th:nth-child(2){word-break:normal;white-space:normal}.markdown.api-container table th:nth-child(4),.markdown.api-container table th:nth-child(5){word-break:keep-all;white-space:nowrap}.markdown.api-container table td:first-child{font-weight:600;color:#595959}.markdown.api-container table td:nth-child(3){width:22%;font-size:11px;color:#c41d7f;word-break:break-all}.markdown.api-container table td:nth-child(4){font-size:11px}.markdown.api-container hr{margin:12px 0}.grid-demo .code-box-demo .demo-row,.grid-demo .demo-row,[id^=components-grid-demo-] .code-box-demo .demo-row,[id^=components-grid-demo-] .demo-row{overflow:hidden;margin-bottom:8px;background-image:linear-gradient(90deg,#f5f5f5 4.16666667%,transparent 4.16666667%,transparent 8.33333333%,#f5f5f5 8.33333333%,#f5f5f5 12.5%,transparent 12.5%,transparent 16.66666667%,#f5f5f5 16.66666667%,#f5f5f5 20.83333333%,transparent 20.83333333%,transparent 25%,#f5f5f5 25%,#f5f5f5 29.16666667%,transparent 29.16666667%,transparent 33.33333333%,#f5f5f5 33.33333333%,#f5f5f5 37.5%,transparent 37.5%,transparent 41.66666667%,#f5f5f5 41.66666667%,#f5f5f5 45.83333333%,transparent 45.83333333%,transparent 50%,#f5f5f5 50%,#f5f5f5 54.16666667%,transparent 54.16666667%,transparent 58.33333333%,#f5f5f5 58.33333333%,#f5f5f5 62.5%,transparent 62.5%,transparent 66.66666667%,#f5f5f5 66.66666667%,#f5f5f5 70.83333333%,transparent 70.83333333%,transparent 75%,#f5f5f5 75%,#f5f5f5 79.16666667%,transparent 79.16666667%,transparent 83.33333333%,#f5f5f5 83.33333333%,#f5f5f5 87.5%,transparent 87.5%,transparent 91.66666667%,#f5f5f5 91.66666667%,#f5f5f5 95.83333333%,transparent 95.83333333%)}.grid-demo .ant-row>div,.grid-demo .code-box-demo .ant-row>div,[id^=components-grid-demo-] .ant-row>div,[id^=components-grid-demo-] .code-box-demo .ant-row>div{min-height:30px;margin-top:8px;margin-bottom:8px;color:#fff;text-align:center;border-radius:0}.grid-demo .code-box-demo .ant-row>div:not(.gutter-row),[id^=components-grid-demo-] .code-box-demo .ant-row>div:not(.gutter-row){padding:16px 0;background:#0092ff}.grid-demo .ant-row .demo-col-1,.grid-demo .code-box-demo .ant-row>div:not(.gutter-row):nth-child(2n+1),[id^=components-grid-demo-] .ant-row .demo-col-1,[id^=components-grid-demo-] .code-box-demo .ant-row>div:not(.gutter-row):nth-child(2n+1){background:rgba(0,146,255,.75)}.grid-demo .ant-row .demo-col,.grid-demo .code-box-demo .ant-row .demo-col,[id^=components-grid-demo-] .ant-row .demo-col,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col{margin-top:0;margin-bottom:0;padding:30px 0;font-size:18px;color:#fff;text-align:center;border:none}.grid-demo .ant-row .demo-col-2,.grid-demo .code-box-demo .ant-row .demo-col-2,[id^=components-grid-demo-] .ant-row .demo-col-2,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-2{background:rgba(0,146,255,.5)}.grid-demo .ant-row .demo-col-3,.grid-demo .code-box-demo .ant-row .demo-col-3,[id^=components-grid-demo-] .ant-row .demo-col-3,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-3{color:#999;background:rgba(255,255,255,.2)}.grid-demo .ant-row .demo-col-4,.grid-demo .code-box-demo .ant-row .demo-col-4,[id^=components-grid-demo-] .ant-row .demo-col-4,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-4{background:rgba(0,146,255,.6)}.grid-demo .ant-row .demo-col-5,.grid-demo .code-box-demo .ant-row .demo-col-5,[id^=components-grid-demo-] .ant-row .demo-col-5,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-5{color:#999;background:rgba(255,255,255,.2)}.grid-demo .code-box-demo .height-100,[id^=components-grid-demo-] .code-box-demo .height-100{height:100px;line-height:100px}.grid-demo .code-box-demo .height-50,[id^=components-grid-demo-] .code-box-demo .height-50{height:50px;line-height:50px}.grid-demo .code-box-demo .height-120,[id^=components-grid-demo-] .code-box-demo .height-120{height:120px;line-height:120px}.grid-demo .code-box-demo .height-80,[id^=components-grid-demo-] .code-box-demo .height-80{height:80px;line-height:80px}[id=components-grid-demo-playground]>.code-box-demo .ant-row>div,[id=components-grid-demo-gutter]>.code-box-demo .ant-row>div{margin-top:0;margin-bottom:0}.markdown ul.ant-timeline{line-height:2}.markdown ul.ant-timeline li.ant-timeline-item{margin:0;padding:0 0 30px;list-style:none}.markdown ul.ant-timeline li.ant-timeline-item .ant-timeline-item-content{position:relative;top:-14px;padding-left:32px;font-size:14px}.markdown ul.ant-timeline li.ant-timeline-item .ant-timeline-item-content>h2{margin-top:0;padding-top:4px}.markdown ul.ant-timeline li.ant-timeline-item:first-child{margin-top:40px}code[class*=hljs],pre[class*=hljs]{direction:ltr;line-height:1.5;hyphens:none;color:#000;text-align:left;text-shadow:0 1px #fff;word-break:normal;word-spacing:normal;word-wrap:normal;tab-size:4;white-space:pre;background:0 0}pre[class*=hljs]::selection{text-shadow:none;background:#b3d4fc}code[class*=hljs] ::selection,code[class*=hljs]::selection,pre[class*=hljs] ::selection,pre[class*=hljs]::selection{text-shadow:none;background:#b3d4fc}@media print{code[class*=hljs],pre[class*=hljs]{text-shadow:none}}pre[class*=hljs]{overflow:auto;margin:1.2em 0;padding:1em}:not(pre)>code[class*=hljs],pre[class*=hljs]{background:#f7f7f7}:not(pre)>code[class*=hljs]{padding:.1em;white-space:normal;border-radius:.3em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#708090}.token.punctuation{color:#999}.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#bb0606}.hljscss .token.string,.style .token.string,.token.attr-name,.token.builtin,.token.char,.token.entity,.token.inserted,.token.operator,.token.selector,.token.string,.token.url{color:#690}.token.atrule,.token.attr-value,.token.keyword{color:#07a}.token.function{color:#dd4a68}.token.important,.token.regex,.token.variable{color:#e90}.token.entity{cursor:help}.hljs-comment,.hljs-quote{color:#8e908c}.hljs-deletion,.hljs-name,.hljs-regexp,.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#bb0606}.hljs-built_in,.hljs-builtin-name,.hljs-link,.hljs-literal,.hljs-meta,.hljs-number,.hljs-params,.hljs-type{color:#f5871f}.hljs-attribute{color:#eab700}.hljs-addition,.hljs-bullet,.hljs-string,.hljs-symbol{color:#690}.hljs-section,.hljs-title{color:#dd4a68}.hljs-keyword,.hljs-selector-tag{color:#07a}.hljs{overflow-x:auto;display:block;padding:.5em;color:#4d4d4c;background:#fff}.highlight-wrapper:hover .code-box-code-copy,.highlight-wrapper:hover .code-box-codepen,.highlight-wrapper:hover .code-box-riddle{opacity:.66}.highlight{position:relative;line-height:1.5}.code-box-code-copy.anticon-check{color:#00a854!important}.code-box{position:relative;display:inline-block;width:100%;border:1px solid #f0f0f0;border-radius:2px;transition:all .2s}.code-box .code-box-title,.code-box .code-box-title a{color:rgba(0,0,0,.85);background:#fff}.code-box .code-box-description p{color:rgba(0,0,0,.85)}.code-box a.edit-button .anticon{color:inherit}.code-box a.edit-button .anticon:hover{color:rgba(0,0,0,.75)}.code-box,.code-box .code-box-demo{background-color:#fff}.code-box p{margin:0}.code-box:target{z-index:10;border:1px solid #1890ff}.code-box-expand-trigger{cursor:pointer;position:relative;margin-left:12px;font-size:20px;color:#3b4357;opacity:.75;transition:all .3s}.code-box-expand-trigger:hover{opacity:1}.ant-row-rtl .code-box-expand-trigger{margin-right:8px;margin-left:0}.code-box-title{position:absolute;top:-14px;margin-left:16px;padding:1px 8px;color:#777;background:#fff;border-radius:2px 2px 0 0;transition:background-color .4s}.ant-row-rtl .code-box-title{margin-right:16px;margin-left:0;border-radius:2px 0 0 2px}.code-box-title a,.code-box-title a:hover{font-size:12px;font-weight:500;color:rgba(0,0,0,.85)}.code-box-title .edit-button .anticon{font-size:12px}.code-box-description{padding:18px 24px 12px}.code-box .edit-button{position:absolute;top:7px;right:-16px;transform:scale(.9);padding-right:6px;font-size:12px;text-decoration:none;background:inherit}.ant-row-rtl .code-box .edit-button{right:auto;left:-21px;padding-right:0;padding-left:6px}.code-box-demo{padding:42px 24px 50px;color:rgba(0,0,0,.85)}.code-box iframe{width:100%;border:0}.code-box .highlight:not(:first-child),.code-box-actions{border-top:1px dashed #f0f0f0}.code-box-meta.markdown{position:relative;width:100%;font-size:12px;border-radius:0 0 2px 2px;transition:background-color .4s}.code-box-meta blockquote,.code-box-meta h4,section.code-box-meta p{margin:0}.code-box-meta>p{width:100%;margin:.5em 0;padding-right:25px;font-size:12px;word-break:break-word}.ant-row-rtl .code-box-meta>p{padding-right:0;padding-left:25px}.code-box.expand .code-box-meta{border-bottom:1px dashed #f0f0f0;border-radius:0}.code-box .code-expand-icon-hide,.code-box .code-expand-icon-show{cursor:pointer;width:16px;max-width:100%;height:16px;transition:all .4s}.code-box .code-expand-icon-show{pointer-events:auto;opacity:.55}.code-box .code-expand-icon-show:hover,.code-box .code-expand-icon.ant-tooltip-open .code-expand-icon-show{opacity:1}.code-box .code-expand-icon-hide{pointer-events:none;display:none}.code-box .highlight{position:relative}.code-box .highlight-wrapper{overflow:auto;display:none;border-radius:0 0 2px 2px}.code-box .highlight-wrapper-expand{display:block}.code-box .highlight pre{margin:0;padding:0;background:#fff}.code-box-actions{display:flex;align-items:center;justify-content:center;padding:12px;text-align:center;opacity:.7;transition:opacity .3s}.code-box-actions:hover{opacity:1}.code-box-actions>i{display:flex;margin-left:16px}.ant-row-rtl .code-box-actions>i{margin-right:16px;margin-left:0}.code-box-actions>i:first-child{margin-left:0}.ant-row-rtl .code-box-actions>i:first-child{margin-right:0}.code-box-code-icon{cursor:pointer;transition:all .24s}.code-box-code-icon.anticon-check{color:#52c41a!important}.code-box pre{width:auto;margin:0}.code-box pre code{display:block;padding:16px 32px;font-size:14px;line-height:2;color:rgba(0,0,0,.85);background:#fff;border:none;border-radius:2px}.browser-mockup{position:relative;font-size:14px;border-top:2em solid rgba(230,230,230,.7);border-radius:3px 3px 0 0;box-shadow:0 .1em .5em 0 rgba(0,0,0,.28)}.browser-mockup::before{top:-1.25em;left:1em;display:block;width:.5em;height:.5em;background-color:#f44;border-radius:50%;box-shadow:0 0 0 2px #f44,1.5em 0 0 2px #9b3,3em 0 0 2px #fb5}.browser-mockup::after{top:-2em;left:5.5em;display:block;width:20%;height:0;border-right:.8em solid transparent;border-bottom:2em solid #fff;border-left:.8em solid transparent}.deprecated,h2,h3,h4,h5{position:relative}.browser-mockup .browser-scroll{overflow:auto;height:100%;background:#f5f5f5}.menu-site .ant-dropdown-trigger,.menu-site nz-dropdown,app-docs,app-root{display:block}.ant-btn+.ant-btn{margin-left:8px}.ant-menu-item{outline:0}#page-404{position:fixed;z-index:100;inset:0;width:100%;height:100%;background-image:url(https://os.alipayobjects.com/rmsportal/NOAjOBbnYCrNzrW.jpg);background-repeat:no-repeat;background-attachment:fixed;background-position:center;background-size:100%}#page-404 section{position:absolute;top:48%;left:55%;margin:-103px 0 0 -120px;text-align:center}#page-404 h1{font-size:120px;font-weight:500;color:#1890ff}#page-404 .links{font-size:18px;color:rgba(0,0,0,.85)}#page-404 .links a{margin-left:8px}.deprecated::before{cursor:pointer;content:'D';font-style:normal;color:#fa541c}h2 .lake-link,h3 .lake-link,h4 .lake-link,h5 .lake-link{position:absolute;top:4px;left:-30px;display:none;align-items:center;justify-content:center;width:30px;height:24px}h2 .lake-link>i,h3 .lake-link>i,h4 .lake-link>i,h5 .lake-link>i{display:inline-block;width:18px;height:18px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1024 1024'%3E%3Cpath fill='rgba(0, 0, 0, 0.45)' d='M574 665.4a8.03 8.03 0 0 0-11.3 0L446.5 781.6c-53.8 53.8-144.6 59.5-204 0-59.5-59.5-53.8-150.2 0-204l116.2-116.2c3.1-3.1 3.1-8.2 0-11.3l-39.8-39.8a8.03 8.03 0 0 0-11.3 0L191.4 526.5c-84.6 84.6-84.6 221.5 0 306s221.5 84.6 306 0l116.2-116.2c3.1-3.1 3.1-8.2 0-11.3L574 665.4zm258.6-474c-84.6-84.6-221.5-84.6-306 0L410.3 307.6a8.03 8.03 0 0 0 0 11.3l39.7 39.7c3.1 3.1 8.2 3.1 11.3 0l116.2-116.2c53.8-53.8 144.6-59.5 204 0 59.5 59.5 53.8 150.2 0 204L665.3 562.6a8.03 8.03 0 0 0 0 11.3l39.8 39.8c3.1 3.1 8.2 3.1 11.3 0l116.2-116.2c84.5-84.6 84.5-221.5 0-306.1zM610.1 372.3a8.03 8.03 0 0 0-11.3 0L372.3 598.7a8.03 8.03 0 0 0 0 11.3l39.6 39.6c3.1 3.1 8.2 3.1 11.3 0l226.4-226.4c3.1-3.1 3.1-8.2 0-11.3l-39.5-39.6z'/%3E%3C/svg%3E%0A")}h2:hover .lake-link,h3:hover .lake-link,h4:hover .lake-link,h5:hover .lake-link{display:flex}[dir=rtl] h2 .lake-link,[dir=rtl] h3 .lake-link,[dir=rtl] h4 .lake-link,[dir=rtl] h5 .lake-link{right:-30px;left:inherit}.index-page{color:#697b8c}.index-page #header{width:100%;max-width:1280px;margin:20px auto 0;padding:0 24px;background:0 0;box-shadow:none}.index-page .page,.index-page .page-banner{position:relative;width:100%;max-width:1200px;margin:auto}.index-page #nav.ant-menu-horizontal>.ant-menu-item-selected{border-top:none}.index-page .page{padding:0 24px}.index-page .page-wrapper{position:relative;overflow:inherit;font-family:Avenir,'Chinese Quote',-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC','Hiragino Sans GB','Microsoft YaHei','Helvetica Neue',Helvetica,Arial,sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol';font-variant:tabular-nums;color:#314659}.index-page .page h2{padding:80px 0 40px;font-size:38px;font-weight:400;line-height:46px;color:#314659;text-align:center}.index-page .page-banner{display:flex;align-items:center;justify-content:space-between;height:520px;padding:0 24px}.index-page .page-banner__slogan{width:54%;min-width:420px;max-width:560px;min-height:336px;color:#0d1a26}.index-page .page-banner__slogan h1{margin:12px 0;font-family:Futura,'Helvetica Neue For Number',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'PingFang SC','Hiragino Sans GB','Microsoft YaHei','Helvetica Neue',Helvetica,Arial,sans-serif;font-size:54px}.index-page .page-banner__slogan p{font-size:20px}.index-page .page-banner__slogan .ant-btn{min-width:110px;height:40px;margin-right:16px;font-size:16px;border-radius:20px}.index-page .page-banner__slogan-btn{display:flex;align-items:center;margin-top:64px;line-height:40px}.index-page .page-banner__slogan-btn .github{display:flex}.index-page .page-banner__img{position:absolute;right:0;bottom:0;overflow:hidden;width:46%;max-width:482px;height:420px}.index-page .page-banner__img img{max-height:100%;border-radius:8px}.index-page .page-feature{position:relative;padding-bottom:80px;color:#fff}.index-page .page-feature__bg{position:absolute;inset:0;transform:skewY(-4.5deg);margin:0;background:#49a9ee}.index-page .page-feature__bg-bottom{position:absolute;right:0;bottom:0;left:0;height:200px;background:#49a9ee}.index-page .page-feature h2,.index-page .page-feature h3{color:#fff}.index-page .page-feature h2{padding-top:100px}.index-page .page-feature h3{font-size:18px}.index-page .page-feature__item{display:flex;height:100px;margin-bottom:56px}.index-page .page-feature .anticon{margin-right:16px;padding-top:8px;font-size:36px}.index-page .page-theme{overflow:hidden;margin-bottom:48px;background:#fff}.index-page .page-theme__item{display:block;margin-bottom:32px;color:#314659;text-align:center}.index-page .page-theme__item:hover{color:#49a9ee}.index-page .page-theme__item img{max-width:80%}.index-page .page-theme__item h3,.index-page .page-theme__item p{margin-top:16px}@media (max-width:991px){.index-page #logo{padding-left:0}.index-page .page-banner__slogan{width:100%;min-width:100%;max-width:100%;text-align:center}.index-page .page-banner__slogan-btn{flex-wrap:wrap;justify-content:center}.index-page .page-banner__slogan-btn>a,.index-page .page-banner__slogan-btn>github-button{margin-bottom:16px}.index-page .page-banner__img{display:none}.index-page .page-feature__item{flex-direction:column;text-align:center}.index-page .page-feature__item .anticon{margin:0 0 16px}[dir=rtl] .index-page #logo{float:left}}[dir=rtl] .index-page .page-banner__slogan .ant-btn,[dir=rtl] .index-page .page-feature .anticon{margin-right:0;margin-left:16px}[dir=rtl] .index-page .page-banner__img{right:initial;left:0}[dir=rtl] .index-page .page-feature__bg{transform:skewY(4.5deg)}#header .ant-row-rtl github-button .gh-count{display:none!important}.copy-import-module{cursor:pointer;padding:2px 6px;font-size:12px;color:#fff;background:#ff4d4f;border-radius:34px}.menu-deprecated .ant-badge{color:#ff4d4f;opacity:.5}[data-theme=dark] input:-webkit-autofill,[data-theme=dark] input:-webkit-autofill:focus,[data-theme=dark] input:-webkit-autofill:hover,[data-theme=dark] select:-webkit-autofill,[data-theme=dark] select:-webkit-autofill:focus,[data-theme=dark] select:-webkit-autofill:hover,[data-theme=dark] textarea:-webkit-autofill,[data-theme=dark] textarea:-webkit-autofill:focus,[data-theme=dark] textarea:-webkit-autofill:hover{border:1px solid #d9d9d9;box-shadow:none;transition:background-color 5000s ease-in-out 0s;-webkit-text-fill-color:rgba(0,0,0,.85)}[data-theme=dark] #header,[data-theme=dark] .drawer-button{box-shadow:0 2px 8px 0 rgba(0,0,0,.65)}[data-theme=dark] #search-box input::placeholder{color:rgba(255,255,255,.3)}[data-theme=dark] .toc-affix .ant-affix{background:#fff}[data-theme=dark] :not(pre)>code[class*=language-],[data-theme=dark] pre[class*=language-]{color:rgba(255,255,255,.65);background:#262626}[data-theme=dark] .code-box{border:1px solid #f0f0f0}[data-theme=dark] .code-box .markdown pre{margin:.5em 0;padding:6px 12px}[data-theme=dark] .code-box .markdown pre code{margin:0;background:#262626}[data-theme=dark] .code-box-debug{border-color:#d3adf7}[data-theme=dark] .code-box-expand-trigger{cursor:pointer;position:relative;margin-left:12px;font-size:20px;color:#fff;opacity:.45;transition:all .3s}[data-theme=dark] .code-box-expand-trigger:hover{opacity:.65}[data-theme=dark] .code-box-demo{border-bottom:1px solid #f0f0f0}[data-theme=dark] .code-box-codepen{background:url(https://gw.alipayobjects.com/zos/antfincdn/1B3MOCiI5F/OtZslpOjYXijshDERXwc.svg) center/14px no-repeat}[data-theme=dark] .code-box-riddle{background:url(https://gw.alipayobjects.com/zos/antfincdn/NByOhhT9rO/DlHbxMCyeuyOrqOdbgik.svg) center/14px no-repeat}[data-theme=dark] .code-box-codesandbox{background:url(https://gw.alipayobjects.com/zos/antfincdn/hNEf2p1ZnS/aaYmtdDyHSCkXyLZVgGK.svg) center/14px no-repeat}[data-theme=dark] .code-box .highlight pre{background:#fff}[data-theme=dark] ul.anticons-list li{color:#acacac}[data-theme=dark] ul.anticons-list li.TwoTone:hover{background-color:#15395b}[data-theme=dark] ul.anticons-list li:hover .anticon{color:#fff}[data-theme=dark] .markdown code,[data-theme=dark] .markdown pre,[data-theme=dark] .markdown pre code,[data-theme=dark] .markdown.api-container table tbody tr:hover{background:#262626}[data-theme=dark] .markdown code{background:rgba(255,255,255,.08)}[data-theme=dark] .prev-next-nav>a.prev-page .footer-nav-icon-before{color:rgba(255,255,255,.45)}[data-theme=dark] .prev-next-nav>a.prev-page:hover .footer-nav-icon-before{left:-3px;color:#1890ff}[data-theme=dark] .prev-next-nav>.next-page .footer-nav-icon-after{color:rgba(255,255,255,.45)}[data-theme=dark] .prev-next-nav>.next-page:hover .footer-nav-icon-after{right:-3px;color:#1890ff}[data-theme=dark] .grid-demo .code-box-demo .demo-row,[data-theme=dark] .grid-demo .demo-row,[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .demo-row,[data-theme=dark] [id^=components-grid-demo-] .demo-row{background-image:linear-gradient(90deg,#1d1d1d 4.16666667%,transparent 4.16666667%,transparent 8.33333333%,#1d1d1d 8.33333333%,#1d1d1d 12.5%,transparent 12.5%,transparent 16.66666667%,#1d1d1d 16.66666667%,#1d1d1d 20.83333333%,transparent 20.83333333%,transparent 25%,#1d1d1d 25%,#1d1d1d 29.16666667%,transparent 29.16666667%,transparent 33.33333333%,#1d1d1d 33.33333333%,#1d1d1d 37.5%,transparent 37.5%,transparent 41.66666667%,#1d1d1d 41.66666667%,#1d1d1d 45.83333333%,transparent 45.83333333%,transparent 50%,#1d1d1d 50%,#1d1d1d 54.16666667%,transparent 54.16666667%,transparent 58.33333333%,#1d1d1d 58.33333333%,#1d1d1d 62.5%,transparent 62.5%,transparent 66.66666667%,#1d1d1d 66.66666667%,#1d1d1d 70.83333333%,transparent 70.83333333%,transparent 75%,#1d1d1d 75%,#1d1d1d 79.16666667%,transparent 79.16666667%,transparent 83.33333333%,#1d1d1d 83.33333333%,#1d1d1d 87.5%,transparent 87.5%,transparent 91.66666667%,#1d1d1d 91.66666667%,#1d1d1d 95.83333333%,transparent 95.83333333%)}[data-theme=dark] .grid-demo .code-box-demo .ant-row>div:not(.gutter-row),[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row>div:not(.gutter-row){padding:16px 0;background:#028ac8}[data-theme=dark] .grid-demo .ant-row .demo-col-1,[data-theme=dark] .grid-demo .code-box-demo .ant-row>div:not(.gutter-row):nth-child(2n+1),[data-theme=dark] [id^=components-grid-demo-] .ant-row .demo-col-1,[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row>div:not(.gutter-row):nth-child(2n+1){background:rgba(0,136,198,.7)}[data-theme=dark] .grid-demo .ant-row .demo-col,[data-theme=dark] .grid-demo .code-box-demo .ant-row .demo-col,[data-theme=dark] [id^=components-grid-demo-] .ant-row .demo-col,[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row .demo-col{margin-top:0;margin-bottom:0;padding:30px 0;font-size:18px;color:#000;text-align:center;border:none}[data-theme=dark] .grid-demo .ant-row .demo-col-3,[data-theme=dark] .grid-demo .ant-row .demo-col-5,[data-theme=dark] .grid-demo .code-box-demo .ant-row .demo-col-3,[data-theme=dark] .grid-demo .code-box-demo .ant-row .demo-col-5,[data-theme=dark] [id^=components-grid-demo-] .ant-row .demo-col-3,[data-theme=dark] [id^=components-grid-demo-] .ant-row .demo-col-5,[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-3,[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-5{color:rgba(0,0,0,.45);background:unset}[data-theme=dark] .markdown>table th{color:rgba(255,255,255,.65);background:#1d1d1d}[data-theme=dark] .copied-code{background:rgba(255,255,255,.08)}[data-theme=dark] .browser-mockup.with-url::after{background-color:#fff}[data-theme=dark] .browser-mockup{border-top:2em solid #262626}[data-theme=dark] .browser-mockup::before{background-color:#fb4742;box-shadow:0 0 0 2px #fb4742,1.5em 0 0 2px #99bc2e,3em 0 0 2px #ffba5a}[data-theme=dark] .browser-mockup::after{border-bottom:2em solid #fff}[data-theme=dark] .browser-scroll{background:#262626}[data-theme=dark] .algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-],[data-theme=dark] .algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-] .algolia-docsearch-suggestion{background:#fff}[data-theme=dark] .algolia-autocomplete .ds-dropdown-menu .ds-suggestion.ds-cursor .algolia-docsearch-suggestion:not(.suggestion-layout-simple) .algolia-docsearch-suggestion--content{background-color:rgba(255,255,255,.08)}[data-theme=dark] .algolia-autocomplete .algolia-docsearch-suggestion--category-header{color:rgba(255,255,255,.65);border-bottom:1px solid #f0f0f0}[data-theme=dark] .algolia-autocomplete .algolia-docsearch-suggestion--content::before,[data-theme=dark] .algolia-autocomplete .algolia-docsearch-suggestion--subcategory-column::before{background:#f0f0f0}[data-theme=dark] code[class*=hljs],[data-theme=dark] pre[class*=hljs]{text-shadow:none}[data-theme=dark] .hljs-comment,[data-theme=dark] .hljs-quote{color:#b6b18b}[data-theme=dark] .hljs-deletion,[data-theme=dark] .hljs-name,[data-theme=dark] .hljs-regexp,[data-theme=dark] .hljs-selector-class,[data-theme=dark] .hljs-selector-id,[data-theme=dark] .hljs-tag,[data-theme=dark] .hljs-template-variable,[data-theme=dark] .hljs-variable{color:#eb3c54}[data-theme=dark] .hljs-built_in,[data-theme=dark] .hljs-builtin-name,[data-theme=dark] .hljs-link,[data-theme=dark] .hljs-literal,[data-theme=dark] .hljs-meta,[data-theme=dark] .hljs-number,[data-theme=dark] .hljs-params,[data-theme=dark] .hljs-type{color:#e7ce56}[data-theme=dark] .hljs-attribute{color:#ee7c2b}[data-theme=dark] .hljs-addition,[data-theme=dark] .hljs-bullet,[data-theme=dark] .hljs-string,[data-theme=dark] .hljs-symbol{color:#1890ff}[data-theme=dark] .hljs-section,[data-theme=dark] .hljs-title{color:#78bb65}[data-theme=dark] .hljs-keyword,[data-theme=dark] .hljs-selector-tag{color:#b45ea4}[data-theme=dark] .hljs{overflow-x:auto;display:block;padding:.5em;color:#c0c5ce;background:#1c1d21}[data-theme=dark].index-page{background:#fff}[data-theme=dark].index-page #header{box-shadow:none}[data-theme=dark].index-page .page-banner__slogan{color:rgba(0,0,0,.85)}@media (max-width:767px){[data-theme=dark] .header-menu .menu-site{background:0 0}}.ant-affix{scrollbar-color:rgba(0,0,0,.3) #6e6e6e;scrollbar-width:thin}.ant-affix::-webkit-scrollbar{width:6px;height:6px}.ant-affix::-webkit-scrollbar-track{box-shadow:inset 0 0 6px rgba(0,0,0,.3)}.ant-affix::-webkit-scrollbar-thumb{background-color:#6e6e6e;outline:#333 solid 1px} \ No newline at end of file diff --git a/assets/style.dark.css b/assets/style.dark.css index 2f3d2e947..2a9ad6be3 100644 --- a/assets/style.dark.css +++ b/assets/style.dark.css @@ -1 +1 @@ -.ant-alert,body{line-height:1.5715}a,a:active,a:focus,a:hover{outline:0;text-decoration:none}address,dl,ol,p,pre,ul{margin-bottom:1em}.ant-btn,[role=button],a,area,button,html,input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}pre,textarea{overflow:auto}dd,h1,h2,h3,h4,h5,h6,legend{margin-bottom:.5em}.ant-badge-status,progress,sub,sup{vertical-align:baseline}[ant-click-animating-without-extra-node=true],[ant-click-animating=true],sub,sup{position:relative}.ant-carousel .slick-slider,.cdk-overlay-backdrop,html{-webkit-tap-highlight-color:transparent}.ant-alert.ant-alert-rtl,.ant-anchor-rtl,.ant-back-top-rtl{direction:rtl}[class*=ant-] input::-ms-clear,[class*=ant-] input::-ms-reveal,[class*=ant-]::-ms-clear,[class^=ant-] input::-ms-clear,[class^=ant-] input::-ms-reveal,[class^=ant-]::-ms-clear{display:none}body,html{width:100%}input::-ms-clear,input::-ms-reveal{display:none}*,::after,::before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar}@-ms-viewport{width:device-width}body{font-variant:tabular-nums;font-feature-settings:tnum}[tabindex='-1']:focus{outline:0!important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;color:rgba(255,255,255,.85);font-weight:500}dl,ol,p,ul{margin-top:0}abbr[data-original-title],abbr[title]{text-decoration:underline;text-decoration:underline dotted;border-bottom:0;cursor:help}address{font-style:normal;line-height:inherit}.font-italic,.hljs-emphasis,.token.italic,[data-theme=dark] .hljs-emphasis,dfn{font-style:italic}input[type=number],input[type=text],input[type=password],textarea{-webkit-appearance:none}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:500}dd{margin-left:0}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{font-size:75%;line-height:0}sub{bottom:-.25em}sup{top:-.5em}a{color:#177ddc;background-color:transparent;cursor:pointer;-webkit-text-decoration-skip:objects}a:hover{color:#165996}a:active{color:#388ed3}a[disabled]{color:rgba(255,255,255,.3);cursor:not-allowed}code,kbd,pre,samp{font-size:1em;font-family:SFMono-Regular,Consolas,'Liberation Mono',Menlo,Courier,monospace}pre{margin-top:0}img{vertical-align:middle;border-style:none}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;color:rgba(255,255,255,.45);text-align:left;caption-side:bottom}button,input,optgroup,select,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{resize:vertical}fieldset{min-width:0}legend{display:block;width:100%;max-width:100%;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}.ant-input-number-handler-down-inner,.ant-input-number-handler-up-inner,.anticon{text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-style:normal;text-transform:none}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}.clearfix::after,.clearfix::before{display:table;content:''}mark{padding:.2em;background-color:#2b2611}::selection{color:#fff;background:#177ddc}.clearfix::after{clear:both}.anticon,.anticon svg{display:inline-block}.anticon{color:inherit;line-height:0;text-align:center;vertical-align:-.125em}.anticon>*{line-height:1}.anticon::before{display:none}.anticon .anticon-icon{display:block}.anticon>.anticon{line-height:0;vertical-align:0}.anticon[tabindex]{cursor:pointer}.anticon-spin,.anticon-spin::before{display:inline-block;animation:loadingCircle 1s infinite linear}.ant-fade-appear,.ant-fade-enter,.ant-fade-leave{animation-timing-function:linear}.ant-fade-appear,.ant-fade-enter,.ant-fade-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-fade-appear.ant-fade-appear-active,.ant-fade-enter.ant-fade-enter-active{animation-name:antFadeIn;animation-play-state:running}.ant-fade-leave.ant-fade-leave-active{animation-name:antFadeOut;animation-play-state:running;pointer-events:none}.ant-fade-appear,.ant-fade-enter{opacity:0}@keyframes antFadeIn{0%{opacity:0}100%{opacity:1}}@keyframes antFadeOut{0%{opacity:1}100%{opacity:0}}.ant-move-up-appear,.ant-move-up-enter,.ant-move-up-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-move-up-appear.ant-move-up-appear-active,.ant-move-up-enter.ant-move-up-enter-active{animation-name:antMoveUpIn;animation-play-state:running}.ant-move-up-leave.ant-move-up-leave-active{animation-name:antMoveUpOut;animation-play-state:running;pointer-events:none}.ant-move-up-appear,.ant-move-up-enter{opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-move-up-leave{animation-timing-function:cubic-bezier(.6,.04,.98,.34)}.ant-move-down-appear,.ant-move-down-enter,.ant-move-down-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-move-down-appear.ant-move-down-appear-active,.ant-move-down-enter.ant-move-down-enter-active{animation-name:antMoveDownIn;animation-play-state:running}.ant-move-down-leave.ant-move-down-leave-active{animation-name:antMoveDownOut;animation-play-state:running;pointer-events:none}.ant-move-down-appear,.ant-move-down-enter{opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-move-down-leave{animation-timing-function:cubic-bezier(.6,.04,.98,.34)}.ant-move-left-appear,.ant-move-left-enter,.ant-move-left-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-move-left-appear.ant-move-left-appear-active,.ant-move-left-enter.ant-move-left-enter-active{animation-name:antMoveLeftIn;animation-play-state:running}.ant-move-left-leave.ant-move-left-leave-active{animation-name:antMoveLeftOut;animation-play-state:running;pointer-events:none}.ant-move-left-appear,.ant-move-left-enter{opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-move-left-leave{animation-timing-function:cubic-bezier(.6,.04,.98,.34)}.ant-move-right-appear,.ant-move-right-enter,.ant-move-right-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-move-right-appear.ant-move-right-appear-active,.ant-move-right-enter.ant-move-right-enter-active{animation-name:antMoveRightIn;animation-play-state:running}.ant-move-right-leave.ant-move-right-leave-active{animation-name:antMoveRightOut;animation-play-state:running;pointer-events:none}.ant-move-right-appear,.ant-move-right-enter{opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-move-right-leave{animation-timing-function:cubic-bezier(.6,.04,.98,.34)}@keyframes antMoveDownIn{0%{transform:translateY(100%);transform-origin:0 0;opacity:0}100%{transform:translateY(0);transform-origin:0 0;opacity:1}}@keyframes antMoveDownOut{0%{transform:translateY(0);transform-origin:0 0;opacity:1}100%{transform:translateY(100%);transform-origin:0 0;opacity:0}}@keyframes antMoveLeftIn{0%{transform:translateX(-100%);transform-origin:0 0;opacity:0}100%{transform:translateX(0);transform-origin:0 0;opacity:1}}@keyframes antMoveLeftOut{0%{transform:translateX(0);transform-origin:0 0;opacity:1}100%{transform:translateX(-100%);transform-origin:0 0;opacity:0}}@keyframes antMoveRightIn{0%{transform:translateX(100%);transform-origin:0 0;opacity:0}100%{transform:translateX(0);transform-origin:0 0;opacity:1}}@keyframes antMoveRightOut{0%{transform:translateX(0);transform-origin:0 0;opacity:1}100%{transform:translateX(100%);transform-origin:0 0;opacity:0}}@keyframes antMoveUpIn{0%{transform:translateY(-100%);transform-origin:0 0;opacity:0}100%{transform:translateY(0);transform-origin:0 0;opacity:1}}@keyframes antMoveUpOut{0%{transform:translateY(0);transform-origin:0 0;opacity:1}100%{transform:translateY(-100%);transform-origin:0 0;opacity:0}}@keyframes loadingCircle{100%{transform:rotate(360deg)}}.ant-click-animating-node,[ant-click-animating-without-extra-node=true]::after{position:absolute;top:0;right:0;bottom:0;left:0;display:block;border-radius:inherit;box-shadow:0 0 0 0 #177ddc;box-shadow:0 0 0 0 var(--antd-wave-shadow-color);opacity:.2;animation:fadeEffect 2s cubic-bezier(.08,.82,.17,1),waveEffect .4s cubic-bezier(.08,.82,.17,1);animation-fill-mode:forwards;content:'';pointer-events:none}@keyframes waveEffect{100%{box-shadow:0 0 0 #177ddc;box-shadow:0 0 0 6px var(--antd-wave-shadow-color)}}@keyframes fadeEffect{100%{opacity:0}}.ant-slide-up-appear,.ant-slide-up-enter,.ant-slide-up-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-slide-up-appear.ant-slide-up-appear-active,.ant-slide-up-enter.ant-slide-up-enter-active{animation-name:antSlideUpIn;animation-play-state:running}.ant-slide-up-leave.ant-slide-up-leave-active{animation-name:antSlideUpOut;animation-play-state:running;pointer-events:none}.ant-slide-up-appear,.ant-slide-up-enter{opacity:0;animation-timing-function:cubic-bezier(.23,1,.32,1)}.ant-slide-up-leave{animation-timing-function:cubic-bezier(.755,.05,.855,.06)}.ant-slide-down-appear,.ant-slide-down-enter,.ant-slide-down-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-slide-down-appear.ant-slide-down-appear-active,.ant-slide-down-enter.ant-slide-down-enter-active{animation-name:antSlideDownIn;animation-play-state:running}.ant-slide-down-leave.ant-slide-down-leave-active{animation-name:antSlideDownOut;animation-play-state:running;pointer-events:none}.ant-slide-down-appear,.ant-slide-down-enter{opacity:0;animation-timing-function:cubic-bezier(.23,1,.32,1)}.ant-slide-down-leave{animation-timing-function:cubic-bezier(.755,.05,.855,.06)}.ant-slide-left-appear,.ant-slide-left-enter,.ant-slide-left-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-slide-left-appear.ant-slide-left-appear-active,.ant-slide-left-enter.ant-slide-left-enter-active{animation-name:antSlideLeftIn;animation-play-state:running}.ant-slide-left-leave.ant-slide-left-leave-active{animation-name:antSlideLeftOut;animation-play-state:running;pointer-events:none}.ant-slide-left-appear,.ant-slide-left-enter{opacity:0;animation-timing-function:cubic-bezier(.23,1,.32,1)}.ant-slide-left-leave{animation-timing-function:cubic-bezier(.755,.05,.855,.06)}.ant-slide-right-appear,.ant-slide-right-enter,.ant-slide-right-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-slide-right-appear.ant-slide-right-appear-active,.ant-slide-right-enter.ant-slide-right-enter-active{animation-name:antSlideRightIn;animation-play-state:running}.ant-slide-right-leave.ant-slide-right-leave-active{animation-name:antSlideRightOut;animation-play-state:running;pointer-events:none}.ant-slide-right-appear,.ant-slide-right-enter{opacity:0;animation-timing-function:cubic-bezier(.23,1,.32,1)}.ant-slide-right-leave{animation-timing-function:cubic-bezier(.755,.05,.855,.06)}@keyframes antSlideUpIn{0%{transform:scaleY(.8);transform-origin:0 0;opacity:0}100%{transform:scaleY(1);transform-origin:0 0;opacity:1}}@keyframes antSlideUpOut{0%{transform:scaleY(1);transform-origin:0 0;opacity:1}100%{transform:scaleY(.8);transform-origin:0 0;opacity:0}}@keyframes antSlideDownIn{0%{transform:scaleY(.8);transform-origin:100% 100%;opacity:0}100%{transform:scaleY(1);transform-origin:100% 100%;opacity:1}}@keyframes antSlideDownOut{0%{transform:scaleY(1);transform-origin:100% 100%;opacity:1}100%{transform:scaleY(.8);transform-origin:100% 100%;opacity:0}}@keyframes antSlideLeftIn{0%{transform:scaleX(.8);transform-origin:0 0;opacity:0}100%{transform:scaleX(1);transform-origin:0 0;opacity:1}}@keyframes antSlideLeftOut{0%{transform:scaleX(1);transform-origin:0 0;opacity:1}100%{transform:scaleX(.8);transform-origin:0 0;opacity:0}}@keyframes antSlideRightIn{0%{transform:scaleX(.8);transform-origin:100% 0;opacity:0}100%{transform:scaleX(1);transform-origin:100% 0;opacity:1}}@keyframes antSlideRightOut{0%{transform:scaleX(1);transform-origin:100% 0;opacity:1}100%{transform:scaleX(.8);transform-origin:100% 0;opacity:0}}.ant-zoom-appear,.ant-zoom-enter,.ant-zoom-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-appear.ant-zoom-appear-active,.ant-zoom-enter.ant-zoom-enter-active{animation-name:antZoomIn;animation-play-state:running}.ant-zoom-leave.ant-zoom-leave-active{animation-name:antZoomOut;animation-play-state:running;pointer-events:none}.ant-zoom-appear,.ant-zoom-enter{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-appear-prepare,.ant-zoom-enter-prepare{transform:none}.ant-zoom-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-big-appear,.ant-zoom-big-enter,.ant-zoom-big-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-big-appear.ant-zoom-big-appear-active,.ant-zoom-big-enter.ant-zoom-big-enter-active{animation-name:antZoomBigIn;animation-play-state:running}.ant-zoom-big-leave.ant-zoom-big-leave-active{animation-name:antZoomBigOut;animation-play-state:running;pointer-events:none}.ant-zoom-big-appear,.ant-zoom-big-enter{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-big-appear-prepare,.ant-zoom-big-enter-prepare{transform:none}.ant-zoom-big-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-big-fast-appear,.ant-zoom-big-fast-enter,.ant-zoom-big-fast-leave{animation-duration:.1s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-big-fast-appear.ant-zoom-big-fast-appear-active,.ant-zoom-big-fast-enter.ant-zoom-big-fast-enter-active{animation-name:antZoomBigIn;animation-play-state:running}.ant-zoom-big-fast-leave.ant-zoom-big-fast-leave-active{animation-name:antZoomBigOut;animation-play-state:running;pointer-events:none}.ant-zoom-big-fast-appear,.ant-zoom-big-fast-enter{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-big-fast-appear-prepare,.ant-zoom-big-fast-enter-prepare{transform:none}.ant-zoom-big-fast-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-up-appear,.ant-zoom-up-enter,.ant-zoom-up-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-up-appear.ant-zoom-up-appear-active,.ant-zoom-up-enter.ant-zoom-up-enter-active{animation-name:antZoomUpIn;animation-play-state:running}.ant-zoom-up-leave.ant-zoom-up-leave-active{animation-name:antZoomUpOut;animation-play-state:running;pointer-events:none}.ant-zoom-up-appear,.ant-zoom-up-enter{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-up-appear-prepare,.ant-zoom-up-enter-prepare{transform:none}.ant-zoom-up-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-down-appear,.ant-zoom-down-enter,.ant-zoom-down-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-down-appear.ant-zoom-down-appear-active,.ant-zoom-down-enter.ant-zoom-down-enter-active{animation-name:antZoomDownIn;animation-play-state:running}.ant-zoom-down-leave.ant-zoom-down-leave-active{animation-name:antZoomDownOut;animation-play-state:running;pointer-events:none}.ant-zoom-down-appear,.ant-zoom-down-enter{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-down-appear-prepare,.ant-zoom-down-enter-prepare{transform:none}.ant-zoom-down-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-left-appear,.ant-zoom-left-enter,.ant-zoom-left-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-left-appear.ant-zoom-left-appear-active,.ant-zoom-left-enter.ant-zoom-left-enter-active{animation-name:antZoomLeftIn;animation-play-state:running}.ant-zoom-left-leave.ant-zoom-left-leave-active{animation-name:antZoomLeftOut;animation-play-state:running;pointer-events:none}.ant-zoom-left-appear,.ant-zoom-left-enter{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-left-appear-prepare,.ant-zoom-left-enter-prepare{transform:none}.ant-zoom-left-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-right-appear,.ant-zoom-right-enter,.ant-zoom-right-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-right-appear.ant-zoom-right-appear-active,.ant-zoom-right-enter.ant-zoom-right-enter-active{animation-name:antZoomRightIn;animation-play-state:running}.ant-zoom-right-leave.ant-zoom-right-leave-active{animation-name:antZoomRightOut;animation-play-state:running;pointer-events:none}.ant-zoom-right-appear,.ant-zoom-right-enter{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-right-appear-prepare,.ant-zoom-right-enter-prepare{transform:none}.ant-zoom-right-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}@keyframes antZoomIn{0%{transform:scale(.2);opacity:0}100%{transform:scale(1);opacity:1}}@keyframes antZoomOut{0%{transform:scale(1)}100%{transform:scale(.2);opacity:0}}@keyframes antZoomBigIn{0%{transform:scale(.8);opacity:0}100%{transform:scale(1);opacity:1}}@keyframes antZoomBigOut{0%{transform:scale(1)}100%{transform:scale(.8);opacity:0}}@keyframes antZoomUpIn{0%{transform:scale(.8);transform-origin:50% 0;opacity:0}100%{transform:scale(1);transform-origin:50% 0}}@keyframes antZoomUpOut{0%{transform:scale(1);transform-origin:50% 0}100%{transform:scale(.8);transform-origin:50% 0;opacity:0}}@keyframes antZoomLeftIn{0%{transform:scale(.8);transform-origin:0 50%;opacity:0}100%{transform:scale(1);transform-origin:0 50%}}@keyframes antZoomLeftOut{0%{transform:scale(1);transform-origin:0 50%}100%{transform:scale(.8);transform-origin:0 50%;opacity:0}}@keyframes antZoomRightIn{0%{transform:scale(.8);transform-origin:100% 50%;opacity:0}100%{transform:scale(1);transform-origin:100% 50%}}@keyframes antZoomRightOut{0%{transform:scale(1);transform-origin:100% 50%}100%{transform:scale(.8);transform-origin:100% 50%;opacity:0}}@keyframes antZoomDownIn{0%{transform:scale(.8);transform-origin:50% 100%;opacity:0}100%{transform:scale(1);transform-origin:50% 100%}}@keyframes antZoomDownOut{0%{transform:scale(1);transform-origin:50% 100%}100%{transform:scale(.8);transform-origin:50% 100%;opacity:0}}.ant-motion-collapse-legacy{overflow:hidden}.ant-motion-collapse-legacy-active{transition:height .2s cubic-bezier(.645,.045,.355,1),opacity .2s cubic-bezier(.645,.045,.355,1)!important}.ant-motion-collapse{overflow:hidden;transition:height .2s cubic-bezier(.645,.045,.355,1),opacity .2s cubic-bezier(.645,.045,.355,1)!important}.cdk-global-overlay-wrapper,.cdk-overlay-container{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper,.cdk-overlay-connected-position-bounding-box,.cdk-overlay-pane{position:absolute;z-index:1000;display:flex}.cdk-overlay-pane{pointer-events:auto;box-sizing:border-box;max-width:100%;max-height:100%}.cdk-overlay-backdrop{position:absolute;top:0;bottom:0;left:0;right:0;z-index:1000;pointer-events:auto;transition:opacity .4s cubic-bezier(.25,.8,.25,1);opacity:0}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:1}.cdk-high-contrast-active .cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:.6}.cdk-overlay-dark-backdrop{background:rgba(0,0,0,.32)}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{flex-direction:column;min-width:1px;min-height:1px}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}.cdk-visually-hidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;outline:0;-webkit-appearance:none;-moz-appearance:none}.nz-overlay-transparent-backdrop,.nz-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0}.nz-animate-disabled.ant-drawer.ant-drawer-open .ant-drawer-mask,.nz-animate-disabled.ant-scroll-number-only{animation:none;transition:none}.nz-animate-disabled.ant-drawer>*{transition:none}.nz-animate-disabled .ant-modal,.nz-animate-disabled .ant-modal-mask,.nz-animate-disabled .ant-modal-mask.zoom-enter,.nz-animate-disabled .ant-modal-mask.zoom-enter-active,.nz-animate-disabled .ant-modal-mask.zoom-leave,.nz-animate-disabled .ant-modal-mask.zoom-leave-active,.nz-animate-disabled .ant-modal.zoom-enter,.nz-animate-disabled .ant-modal.zoom-enter-active,.nz-animate-disabled .ant-modal.zoom-leave,.nz-animate-disabled .ant-modal.zoom-leave-active{animation:none;transition:none}.nz-animate-disabled.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow svg,.nz-animate-disabled.ant-menu,.nz-animate-disabled.ant-menu .ant-menu-item,.nz-animate-disabled.ant-menu .ant-menu-item .anticon,.nz-animate-disabled.ant-menu .ant-menu-item .anticon+span,.nz-animate-disabled.ant-menu .ant-menu-submenu-title,.nz-animate-disabled.ant-menu .ant-menu-submenu-title .anticon,.nz-animate-disabled.ant-menu .ant-menu-submenu-title .anticon+span,.nz-animate-disabled.ant-tabs .ant-tabs-bottom-content.ant-tabs-content-animated,.nz-animate-disabled.ant-tabs .ant-tabs-bottom-content>.ant-tabs-tabpane,.nz-animate-disabled.ant-tabs .ant-tabs-top-content.ant-tabs-content-animated,.nz-animate-disabled.ant-tabs .ant-tabs-top-content>.ant-tabs-tabpane,.nz-animate-disabled.ant-tabs.ant-tabs-bottom .ant-tabs-ink-bar-animated,.nz-animate-disabled.ant-tabs.ant-tabs-left .ant-tabs-ink-bar-animated,.nz-animate-disabled.ant-tabs.ant-tabs-right .ant-tabs-ink-bar-animated,.nz-animate-disabled.ant-tabs.ant-tabs-top .ant-tabs-ink-bar-animated{transition:none}.ant-affix{position:fixed;z-index:10}.ant-alert,.ant-anchor{position:relative;list-style:none;font-feature-settings:tnum}nz-affix{display:block}.ant-alert{box-sizing:border-box;margin:0;color:rgba(255,255,255,.85);font-size:14px;font-variant:tabular-nums;display:flex;align-items:center;padding:8px 15px;word-wrap:break-word;border-radius:2px}.ant-alert-content{flex:1;min-width:0}.ant-alert-icon{margin-right:8px}.ant-alert-description{display:none;font-size:14px;line-height:22px}.ant-alert-success{background-color:#162312;border:1px solid #274916}.ant-alert-success .ant-alert-icon{color:#49aa19}.ant-alert-info{background-color:#111b26;border:1px solid #153450}.ant-alert-info .ant-alert-icon{color:#177ddc}.ant-alert-warning{background-color:#2b2111;border:1px solid #594214}.ant-alert-warning .ant-alert-icon{color:#d89614}.ant-alert-error{background-color:#2a1215;border:1px solid #58181c}.ant-alert-error .ant-alert-icon{color:#a61d24}.ant-alert-error .ant-alert-description>pre{margin:0;padding:0}.ant-alert-action{margin-left:8px}.ant-alert-close-icon{margin-left:8px;padding:0;overflow:hidden;font-size:12px;line-height:12px;background-color:transparent;border:none;outline:0;cursor:pointer}.ant-alert-close-icon .anticon-close{color:rgba(255,255,255,.45);transition:color .3s}.ant-alert-close-icon .anticon-close:hover{color:rgba(255,255,255,.75)}.ant-alert-close-text{color:rgba(255,255,255,.45);transition:color .3s}.ant-alert-close-text:hover{color:rgba(255,255,255,.75)}.ant-alert-message,.ant-alert-with-description .ant-alert-message,.ant-anchor,.ant-anchor-link-title,.ant-back-top{color:rgba(255,255,255,.85)}.ant-alert-with-description{align-items:flex-start;padding:15px 15px 15px 24px}.ant-alert-with-description.ant-alert-no-icon{padding:15px}.ant-alert-with-description .ant-alert-icon{margin-right:15px;font-size:24px}.ant-alert-with-description .ant-alert-message{display:block;margin-bottom:4px;font-size:16px}.ant-anchor,.ant-avatar{font-size:14px;font-variant:tabular-nums;box-sizing:border-box}.ant-alert-with-description .ant-alert-description{display:block}.ant-alert.ant-alert-motion-leave{overflow:hidden;opacity:1;transition:max-height .3s cubic-bezier(.78,.14,.15,.86),opacity .3s cubic-bezier(.78,.14,.15,.86),padding-top .3s cubic-bezier(.78,.14,.15,.86),padding-bottom .3s cubic-bezier(.78,.14,.15,.86),margin-bottom .3s cubic-bezier(.78,.14,.15,.86)}.ant-alert.ant-alert-motion-leave-active{max-height:0;margin-bottom:0!important;padding-top:0;padding-bottom:0;opacity:0}.ant-alert-banner{margin-bottom:0;border:0;border-radius:0}.ant-alert-rtl .ant-alert-icon{margin-right:auto;margin-left:8px}.ant-alert-rtl .ant-alert-action,.ant-alert-rtl .ant-alert-close-icon{margin-right:8px;margin-left:auto}.ant-alert-rtl.ant-alert-with-description{padding-right:24px;padding-left:15px}.ant-alert-rtl.ant-alert-with-description .ant-alert-icon{margin-right:auto;margin-left:15px}nz-alert{display:block}.ant-alert-icon{line-height:1}.ant-anchor{margin:0;padding:0 0 0 2px;line-height:1.5715}.ant-anchor-wrapper{margin-left:-4px;padding-left:4px;overflow:auto;background-color:transparent}.ant-anchor-ink{position:absolute;top:0;left:0;height:100%}.ant-anchor-ink::before{position:relative;display:block;width:2px;height:100%;margin:0 auto;background-color:#303030;content:' '}.ant-anchor-ink-ball{position:absolute;left:50%;display:none;width:8px;height:8px;background-color:#141414;border:2px solid #177ddc;border-radius:8px;transform:translateX(-50%);transition:top .3s ease-in-out}.ant-anchor-link-title,.ant-avatar{position:relative;white-space:nowrap}.ant-anchor-ink-ball.visible{display:inline-block}.ant-anchor-fixed .ant-anchor-ink .ant-anchor-ink-ball{display:none}.ant-anchor-link{padding:4px 0 4px 16px}.ant-anchor-link-title{display:block;margin-bottom:3px;overflow:hidden;text-overflow:ellipsis;transition:all .3s}.ant-anchor-link-title:only-child{margin-bottom:0}.ant-anchor-link-active>.ant-anchor-link-title{color:#177ddc}.ant-anchor-link .ant-anchor-link{padding-top:2px;padding-bottom:2px}.ant-anchor-rtl.ant-anchor-wrapper{margin-right:-4px;margin-left:0;padding-right:4px;padding-left:0}.ant-avatar,.ant-avatar-lg.ant-avatar-icon>.anticon,.ant-avatar-sm.ant-avatar-icon>.anticon,.ant-avatar.ant-avatar-icon>.anticon{margin:0}.ant-anchor-rtl .ant-anchor-ink{right:0;left:auto}.ant-anchor-rtl .ant-anchor-ink-ball{right:50%;left:0;transform:translateX(50%)}.ant-anchor-rtl .ant-anchor-link{padding:4px 16px 4px 0}nz-link{display:block}.ant-avatar{padding:0;list-style:none;font-feature-settings:tnum;display:inline-block;overflow:hidden;color:#fff;text-align:center;vertical-align:middle;background:rgba(255,255,255,.3);width:32px;height:32px;line-height:32px;border-radius:50%}.ant-avatar-lg-string,.ant-avatar-sm-string,.ant-avatar-string{position:absolute;left:50%;transform-origin:0 center}.ant-avatar-image{background:0 0}.ant-avatar .ant-image-img{display:block}.ant-avatar.ant-avatar-icon{font-size:18px}.ant-avatar-lg{width:40px;height:40px;line-height:40px;border-radius:50%}.ant-avatar-lg.ant-avatar-icon{font-size:24px}.ant-avatar-sm.ant-avatar-icon,.ant-back-top{font-size:14px}.ant-avatar-sm{width:24px;height:24px;line-height:24px;border-radius:50%}.ant-avatar-square{border-radius:2px}.ant-avatar>img{display:block;width:100%;height:100%;object-fit:cover}.ant-avatar-group,.ant-btn-group{display:inline-flex}.ant-avatar-group .ant-avatar{border:1px solid #fff}.ant-avatar-group .ant-avatar:not(:first-child){margin-left:-8px}.ant-avatar-group-popover .ant-avatar+.ant-avatar{margin-left:3px}.ant-avatar-group-rtl .ant-avatar:not(:first-child){margin-right:-8px;margin-left:0}.ant-avatar-group-popover.ant-popover-rtl .ant-avatar+.ant-avatar{margin-right:3px;margin-left:0}.ant-back-top,.ant-badge{margin:0;padding:0;list-style:none;font-variant:tabular-nums;font-feature-settings:tnum}.ant-back-top{box-sizing:border-box;line-height:1.5715;position:fixed;right:100px;bottom:50px;z-index:10;width:40px;height:40px;cursor:pointer}.ant-back-top:empty{display:none}.ant-badge,.ant-badge-status-dot{display:inline-block;position:relative}.ant-back-top-rtl{right:auto;left:100px}.ant-back-top-content{width:40px;height:40px;overflow:hidden;color:#fff;text-align:center;background-color:rgba(255,255,255,.45);border-radius:20px;transition:all .3s}.ant-back-top-content:hover{background-color:rgba(255,255,255,.85);transition:all .3s}.ant-badge-count,.ant-badge-dot{z-index:auto;background:#a61d24;box-shadow:0 0 0 1px #141414}.ant-back-top-icon{font-size:24px;line-height:40px}@media screen and (max-width:768px){.ant-back-top{right:60px}.ant-back-top-rtl{right:auto;left:60px}}@media screen and (max-width:480px){.ant-back-top{right:20px}.ant-back-top-rtl{right:auto;left:20px}}.ant-badge{box-sizing:border-box;color:rgba(255,255,255,.85);font-size:14px;line-height:1}.ant-badge-count{min-width:20px;height:20px;padding:0 6px;color:#fff;font-weight:400;font-size:12px;line-height:20px;white-space:nowrap;text-align:center;border-radius:10px}.ant-badge-count a,.ant-badge-count a:hover{color:#fff}.ant-badge-count-sm{min-width:14px;height:14px;padding:0;font-size:12px;line-height:14px;border-radius:7px}.ant-badge-multiple-words{padding:0 8px}.ant-badge-dot{width:6px;min-width:6px;height:6px;border-radius:100%}.ant-badge-dot.ant-scroll-number{transition:background 1.5s}.ant-badge .ant-scroll-number-custom-component,.ant-badge-count,.ant-badge-dot{position:absolute;top:0;right:0;transform:translate(50%,-50%);transform-origin:100% 0}.ant-badge .ant-scroll-number-custom-component.anticon-spin,.ant-badge-count.anticon-spin,.ant-badge-dot.anticon-spin{animation:antBadgeLoadingCircle 1s infinite linear}.ant-badge-status{line-height:inherit}.ant-badge-not-a-wrapper:not(.ant-badge-status),.ant-badge-status-dot{vertical-align:middle}.ant-badge-status-dot{top:-1px;width:6px;height:6px;border-radius:50%}.ant-badge-status-success{background-color:#49aa19}.ant-badge-status-processing{position:relative;background-color:#177ddc}.ant-badge-status-processing::after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #177ddc;border-radius:50%;animation:antStatusProcessing 1.2s infinite ease-in-out;content:''}.ant-badge-status-default{background-color:#d9d9d9}.ant-badge-status-error{background-color:#a61d24}.ant-badge-status-warning{background-color:#d89614}.ant-badge-status-magenta,.ant-badge-status-pink{background:#cb2b83}.ant-badge-status-red{background:#d32029}.ant-badge-status-volcano{background:#d84a1b}.ant-badge-status-orange{background:#d87a16}.ant-badge-status-yellow{background:#d8bd14}.ant-badge-status-gold{background:#d89614}.ant-badge-status-cyan{background:#13a8a8}.ant-badge-status-lime{background:#8bbb11}.ant-badge-status-green{background:#49aa19}.ant-badge-status-blue{background:#177ddc}.ant-badge-status-geekblue{background:#2b4acb}.ant-badge-status-purple{background:#642ab5}.ant-badge-status-text{margin-left:8px;color:rgba(255,255,255,.85);font-size:14px}.ant-badge-zoom-appear,.ant-badge-zoom-enter{animation:antZoomBadgeIn .3s cubic-bezier(.12,.4,.29,1.46);animation-fill-mode:both}.ant-badge-zoom-leave{animation:antZoomBadgeOut .3s cubic-bezier(.71,-.46,.88,.6);animation-fill-mode:both}.ant-badge-not-a-wrapper .ant-badge-zoom-appear,.ant-badge-not-a-wrapper .ant-badge-zoom-enter{animation:antNoWrapperZoomBadgeIn .3s cubic-bezier(.12,.4,.29,1.46)}.ant-badge-not-a-wrapper .ant-badge-zoom-leave{animation:antNoWrapperZoomBadgeOut .3s cubic-bezier(.71,-.46,.88,.6)}.ant-badge-not-a-wrapper .ant-badge-count,.ant-badge-not-a-wrapper .ant-scroll-number-custom-component{transform:none}.ant-badge-not-a-wrapper .ant-scroll-number,.ant-badge-not-a-wrapper .ant-scroll-number-custom-component{position:relative;top:auto;display:block;transform-origin:50% 50%}@keyframes antStatusProcessing{0%{transform:scale(.8);opacity:.5}100%{transform:scale(2.4);opacity:0}}.ant-scroll-number-only,.ant-scroll-number-only>p.ant-scroll-number-only-unit{height:20px;-webkit-transform-style:preserve-3d;-webkit-backface-visibility:hidden}.ant-scroll-number{overflow:hidden;direction:ltr}.ant-scroll-number-only{position:relative;display:inline-block;transition:all .3s cubic-bezier(.645,.045,.355,1)}.ant-scroll-number-only>p.ant-scroll-number-only-unit{margin:0}.ant-scroll-number-symbol{vertical-align:top}@keyframes antZoomBadgeIn{0%{transform:scale(0) translate(50%,-50%);opacity:0}100%{transform:scale(1) translate(50%,-50%)}}@keyframes antZoomBadgeOut{0%{transform:scale(1) translate(50%,-50%)}100%{transform:scale(0) translate(50%,-50%);opacity:0}}@keyframes antNoWrapperZoomBadgeIn{0%{transform:scale(0);opacity:0}100%{transform:scale(1)}}@keyframes antNoWrapperZoomBadgeOut{0%{transform:scale(1)}100%{transform:scale(0);opacity:0}}@keyframes antBadgeLoadingCircle{0%{transform-origin:50%}100%{transform:translate(50%,-50%) rotate(360deg);transform-origin:50%}}.ant-ribbon-wrapper{position:relative}.ant-ribbon{box-sizing:border-box;margin:0;font-size:14px;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;position:absolute;top:8px;height:22px;padding:0 8px;color:#fff;line-height:22px;white-space:nowrap;background-color:#177ddc;border-radius:2px}.ant-breadcrumb,.ant-btn{line-height:1.5715;font-size:14px}.ant-ribbon-text{color:#fff}.ant-ribbon-corner{position:absolute;top:100%;width:8px;height:8px;color:currentcolor;border:4px solid;transform:scaleY(.75);transform-origin:top}.ant-ribbon-corner::after{position:absolute;top:-4px;left:-4px;width:inherit;height:inherit;color:rgba(0,0,0,.25);border:inherit;content:''}.ant-ribbon-color-magenta,.ant-ribbon-color-pink{color:#cb2b83;background:#cb2b83}.ant-ribbon-color-red{color:#d32029;background:#d32029}.ant-ribbon-color-volcano{color:#d84a1b;background:#d84a1b}.ant-ribbon-color-orange{color:#d87a16;background:#d87a16}.ant-ribbon-color-yellow{color:#d8bd14;background:#d8bd14}.ant-ribbon-color-gold{color:#d89614;background:#d89614}.ant-ribbon-color-cyan{color:#13a8a8;background:#13a8a8}.ant-ribbon-color-lime{color:#8bbb11;background:#8bbb11}.ant-ribbon-color-green{color:#49aa19;background:#49aa19}.ant-ribbon-color-blue{color:#177ddc;background:#177ddc}.ant-ribbon-color-geekblue{color:#2b4acb;background:#2b4acb}.ant-ribbon-color-purple{color:#642ab5;background:#642ab5}.ant-ribbon.ant-ribbon-placement-end{right:-8px;border-bottom-right-radius:0}.ant-ribbon.ant-ribbon-placement-end .ant-ribbon-corner{right:0;border-color:currentcolor transparent transparent currentcolor}.ant-ribbon-rtl.ant-ribbon-placement-end .ant-ribbon-corner,.ant-ribbon-rtl.ant-ribbon-placement-end .ant-ribbon-corner::after,.ant-ribbon.ant-ribbon-placement-start .ant-ribbon-corner{border-color:currentcolor currentcolor transparent transparent}.ant-ribbon.ant-ribbon-placement-start{left:-8px;border-bottom-left-radius:0}.ant-ribbon.ant-ribbon-placement-start .ant-ribbon-corner{left:0}.ant-badge-rtl{direction:rtl}.ant-badge-rtl.ant-badge:not(.ant-badge-not-a-wrapper) .ant-badge-count,.ant-badge-rtl.ant-badge:not(.ant-badge-not-a-wrapper) .ant-badge-dot,.ant-badge-rtl.ant-badge:not(.ant-badge-not-a-wrapper) .ant-scroll-number-custom-component{right:auto;left:0;direction:ltr;transform:translate(-50%,-50%);transform-origin:0 0}.ant-breadcrumb-rtl,.ant-btn-group.ant-btn-group-rtl,.ant-btn-rtl,.ant-card-rtl,.ant-carousel-rtl,.ant-checkbox-rtl,.ant-collapse-rtl,.ant-comment-rtl,.ant-descriptions-rtl,.ant-divider-rtl,.ant-drawer-rtl,.ant-dropdown-menu-submenu-rtl .ant-dropdown-menu-item-group-title,.ant-dropdown-menu.ant-dropdown-menu-rtl,.ant-dropdown-rtl,.ant-dropdown-rtl .ant-dropdown-menu-item-group-title,.ant-empty-rtl,.ant-input-affix-wrapper-rtl,.ant-input-group-rtl,.ant-input-group-wrapper-rtl,.ant-input-number-affix-wrapper-rtl,.ant-input-number-rtl,.ant-input-rtl,.ant-input-search-rtl,.ant-input-textarea-rtl,.ant-picker-dropdown-rtl .ant-picker-footer-extra,.ant-picker-input>input-rtl,.ant-picker-panel-rtl,.ant-picker-rtl,.ant-ribbon-rtl,.ant-row-rtl{direction:rtl}.ant-badge-rtl.ant-badge:not(.ant-badge-not-a-wrapper) .ant-scroll-number-custom-component{right:auto;left:0;transform:translate(-50%,-50%);transform-origin:0 0}.ant-badge-rtl .ant-badge-status-text{margin-right:8px;margin-left:0}.ant-breadcrumb,.ant-breadcrumb ol{margin:0;padding:0;list-style:none}.ant-badge:not(.ant-badge-not-a-wrapper).ant-badge-rtl .ant-badge-zoom-appear,.ant-badge:not(.ant-badge-not-a-wrapper).ant-badge-rtl .ant-badge-zoom-enter{animation-name:antZoomBadgeInRtl}.ant-badge:not(.ant-badge-not-a-wrapper).ant-badge-rtl .ant-badge-zoom-leave{animation-name:antZoomBadgeOutRtl}.ant-ribbon-rtl.ant-ribbon-placement-end{right:unset;left:-8px;border-bottom-right-radius:2px;border-bottom-left-radius:0}.ant-ribbon-rtl.ant-ribbon-placement-end .ant-ribbon-corner{right:unset;left:0}.ant-ribbon-rtl.ant-ribbon-placement-start .ant-ribbon-corner,.ant-ribbon-rtl.ant-ribbon-placement-start .ant-ribbon-corner::after{border-color:currentcolor transparent transparent currentcolor}.ant-ribbon-rtl.ant-ribbon-placement-start{right:-8px;left:unset;border-bottom-right-radius:0;border-bottom-left-radius:2px}.ant-ribbon-rtl.ant-ribbon-placement-start .ant-ribbon-corner{right:0;left:unset}@keyframes antZoomBadgeInRtl{0%{transform:scale(0) translate(-50%,-50%);opacity:0}100%{transform:scale(1) translate(-50%,-50%)}}@keyframes antZoomBadgeOutRtl{0%{transform:scale(1) translate(-50%,-50%)}100%{transform:scale(0) translate(-50%,-50%);opacity:0}}.ant-badge .ant-scroll-number:only-child{position:relative;top:auto;display:block}.ant-badge .ant-badge-count:only-child{transform:none}nz-ribbon{display:block}.ant-breadcrumb{box-sizing:border-box;font-variant:tabular-nums;font-feature-settings:tnum;color:rgba(255,255,255,.45)}.ant-breadcrumb .anticon{font-size:14px}.ant-breadcrumb ol{display:flex;flex-wrap:wrap}.ant-breadcrumb a{color:rgba(255,255,255,.45);transition:color .3s}.ant-breadcrumb a:hover,.ant-breadcrumb li:last-child,.ant-breadcrumb li:last-child a{color:rgba(255,255,255,.85)}li:last-child .ant-breadcrumb-separator{display:none}.ant-breadcrumb-rtl::after,.ant-breadcrumb-rtl::before{display:table;content:''}.ant-breadcrumb-separator{margin:0 8px;color:rgba(255,255,255,.45)}.ant-breadcrumb>nz-breadcrumb-item:last-child,.ant-breadcrumb>nz-breadcrumb-item:last-child a,.ant-btn{color:rgba(255,255,255,.85)}.ant-breadcrumb-link>.anticon+a,.ant-breadcrumb-link>.anticon+span,.ant-breadcrumb-overlay-link>.anticon{margin-left:4px}.ant-breadcrumb-rtl::after{clear:both}.ant-breadcrumb-rtl>span{float:right}.ant-breadcrumb-rtl .ant-breadcrumb-link>.anticon+a,.ant-breadcrumb-rtl .ant-breadcrumb-link>.anticon+span,.ant-breadcrumb-rtl .ant-breadcrumb-overlay-link>.anticon{margin-right:4px;margin-left:0}.ant-breadcrumb-link .anticon+span{margin-left:4px}.ant-breadcrumb-rtl>nz-breadcrumb-item{float:right}nz-breadcrumb{display:block}nz-breadcrumb-item:last-child .ant-breadcrumb-separator{display:none}.ant-btn,.ant-btn>span{display:inline-block}.ant-btn{position:relative;font-weight:400;white-space:nowrap;text-align:center;border:1px solid #434343;box-shadow:0 2px 0 rgba(0,0,0,.015);cursor:pointer;transition:all .3s cubic-bezier(.645,.045,.355,1);user-select:none;height:32px;padding:4px 15px;border-radius:2px;background:0 0}.ant-btn>.anticon,.ant-checkbox{line-height:1}.ant-btn,.ant-btn:active,.ant-btn:focus{outline:0}.ant-btn:not([disabled]):hover{text-decoration:none}.ant-btn:not([disabled]):active{outline:0;box-shadow:none}.ant-btn[disabled]{cursor:not-allowed}.ant-btn[disabled]>*{pointer-events:none}.ant-btn-lg{height:40px;padding:6.4px 15px;font-size:16px;border-radius:2px}.ant-btn-sm{height:24px;padding:0 7px;font-size:14px;border-radius:2px}.ant-btn>a:only-child{color:currentcolor}.ant-btn>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn:focus,.ant-btn:hover{color:#165996;border-color:#165996}.ant-btn:focus>a:only-child,.ant-btn:hover>a:only-child{color:currentcolor}.ant-btn:focus>a:only-child::after,.ant-btn:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn:active{color:#388ed3;border-color:#388ed3}.ant-btn:active>a:only-child{color:currentcolor}.ant-btn:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn[disabled],.ant-btn[disabled]:active,.ant-btn[disabled]:focus,.ant-btn[disabled]:hover{color:rgba(255,255,255,.3);border-color:#434343;background:rgba(255,255,255,.08);text-shadow:none;box-shadow:none}.ant-btn[disabled]:active>a:only-child,.ant-btn[disabled]:focus>a:only-child,.ant-btn[disabled]:hover>a:only-child,.ant-btn[disabled]>a:only-child{color:currentcolor}.ant-btn[disabled]:active>a:only-child::after,.ant-btn[disabled]:focus>a:only-child::after,.ant-btn[disabled]:hover>a:only-child::after,.ant-btn[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn:active,.ant-btn:focus,.ant-btn:hover{text-decoration:none;background:0 0}.ant-btn-primary{color:#fff;border-color:#177ddc;background:#177ddc;text-shadow:0 -1px 0 rgba(0,0,0,.12);box-shadow:0 2px 0 rgba(0,0,0,.045)}.ant-btn-primary>a:only-child{color:currentcolor}.ant-btn-primary>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-primary:focus,.ant-btn-primary:hover{color:#fff;border-color:#095cb5;background:#095cb5}.ant-btn-primary:focus>a:only-child,.ant-btn-primary:hover>a:only-child{color:currentcolor}.ant-btn-primary:focus>a:only-child::after,.ant-btn-primary:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-primary:active{color:#fff;border-color:#3c9be8;background:#3c9be8}.ant-btn-primary:active>a:only-child{color:currentcolor}.ant-btn-primary:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-primary[disabled],.ant-btn-primary[disabled]:active,.ant-btn-primary[disabled]:focus,.ant-btn-primary[disabled]:hover{color:rgba(255,255,255,.3);border-color:#434343;background:rgba(255,255,255,.08);text-shadow:none;box-shadow:none}.ant-btn-primary[disabled]:active>a:only-child,.ant-btn-primary[disabled]:focus>a:only-child,.ant-btn-primary[disabled]:hover>a:only-child,.ant-btn-primary[disabled]>a:only-child{color:currentcolor}.ant-btn-primary[disabled]:active>a:only-child::after,.ant-btn-primary[disabled]:focus>a:only-child::after,.ant-btn-primary[disabled]:hover>a:only-child::after,.ant-btn-primary[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-group .ant-btn-primary:not(:first-child):not(:last-child){border-right-color:#165996;border-left-color:#165996}.ant-btn-group .ant-btn-primary:not(:first-child):not(:last-child):disabled{border-color:#434343}.ant-btn-group .ant-btn-primary:first-child:not(:last-child){border-right-color:#165996}.ant-btn-group .ant-btn-primary:first-child:not(:last-child)[disabled]{border-right-color:#434343}.ant-btn-group .ant-btn-primary+.ant-btn-primary,.ant-btn-group .ant-btn-primary:last-child:not(:first-child){border-left-color:#165996}.ant-btn-group .ant-btn-primary+.ant-btn-primary[disabled],.ant-btn-group .ant-btn-primary:last-child:not(:first-child)[disabled]{border-left-color:#434343}.ant-btn-ghost{color:rgba(255,255,255,.85);border-color:#434343;background:0 0}.ant-btn-ghost>a:only-child{color:currentcolor}.ant-btn-ghost>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-ghost:focus,.ant-btn-ghost:hover{color:#165996;border-color:#165996;background:0 0}.ant-btn-ghost:focus>a:only-child,.ant-btn-ghost:hover>a:only-child{color:currentcolor}.ant-btn-ghost:focus>a:only-child::after,.ant-btn-ghost:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-ghost:active{color:#388ed3;border-color:#388ed3;background:0 0}.ant-btn-ghost:active>a:only-child{color:currentcolor}.ant-btn-ghost:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-ghost[disabled],.ant-btn-ghost[disabled]:active,.ant-btn-ghost[disabled]:focus,.ant-btn-ghost[disabled]:hover{color:rgba(255,255,255,.3);border-color:#434343;background:rgba(255,255,255,.08);text-shadow:none;box-shadow:none}.ant-btn-ghost[disabled]:active>a:only-child,.ant-btn-ghost[disabled]:focus>a:only-child,.ant-btn-ghost[disabled]:hover>a:only-child,.ant-btn-ghost[disabled]>a:only-child{color:currentcolor}.ant-btn-ghost[disabled]:active>a:only-child::after,.ant-btn-ghost[disabled]:focus>a:only-child::after,.ant-btn-ghost[disabled]:hover>a:only-child::after,.ant-btn-ghost[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dashed{color:rgba(255,255,255,.85);border-color:#434343;background:0 0;border-style:dashed}.ant-btn-dashed>a:only-child{color:currentcolor}.ant-btn-dashed>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dashed:focus,.ant-btn-dashed:hover{color:#165996;border-color:#165996;background:0 0}.ant-btn-dashed:focus>a:only-child,.ant-btn-dashed:hover>a:only-child{color:currentcolor}.ant-btn-dashed:focus>a:only-child::after,.ant-btn-dashed:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dashed:active{color:#388ed3;border-color:#388ed3;background:0 0}.ant-btn-dashed:active>a:only-child{color:currentcolor}.ant-btn-dashed:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dashed[disabled],.ant-btn-dashed[disabled]:active,.ant-btn-dashed[disabled]:focus,.ant-btn-dashed[disabled]:hover{color:rgba(255,255,255,.3);border-color:#434343;background:rgba(255,255,255,.08);text-shadow:none;box-shadow:none}.ant-btn-dashed[disabled]:active>a:only-child,.ant-btn-dashed[disabled]:focus>a:only-child,.ant-btn-dashed[disabled]:hover>a:only-child,.ant-btn-dashed[disabled]>a:only-child{color:currentcolor}.ant-btn-dashed[disabled]:active>a:only-child::after,.ant-btn-dashed[disabled]:focus>a:only-child::after,.ant-btn-dashed[disabled]:hover>a:only-child::after,.ant-btn-dashed[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-danger{color:#fff;border-color:#a61d24;background:#a61d24;text-shadow:0 -1px 0 rgba(0,0,0,.12);box-shadow:0 2px 0 rgba(0,0,0,.045)}.ant-btn-danger>a:only-child{color:currentcolor}.ant-btn-danger>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-danger:focus,.ant-btn-danger:hover{color:#fff;border-color:#800f19;background:#800f19}.ant-btn-danger:focus>a:only-child,.ant-btn-danger:hover>a:only-child{color:currentcolor}.ant-btn-danger:focus>a:only-child::after,.ant-btn-danger:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-danger:active{color:#fff;border-color:#b33b3d;background:#b33b3d}.ant-btn-danger:active>a:only-child{color:currentcolor}.ant-btn-danger:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-danger[disabled],.ant-btn-danger[disabled]:active,.ant-btn-danger[disabled]:focus,.ant-btn-danger[disabled]:hover{color:rgba(255,255,255,.3);border-color:#434343;background:rgba(255,255,255,.08);text-shadow:none;box-shadow:none}.ant-btn-danger[disabled]:active>a:only-child,.ant-btn-danger[disabled]:focus>a:only-child,.ant-btn-danger[disabled]:hover>a:only-child,.ant-btn-danger[disabled]>a:only-child{color:currentcolor}.ant-btn-danger[disabled]:active>a:only-child::after,.ant-btn-danger[disabled]:focus>a:only-child::after,.ant-btn-danger[disabled]:hover>a:only-child::after,.ant-btn-danger[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-link{color:#177ddc;border-color:transparent;background:0 0;box-shadow:none}.ant-btn-link>a:only-child{color:currentcolor}.ant-btn-link>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-link:focus,.ant-btn-link:hover{color:#165996;background:0 0}.ant-btn-link:focus>a:only-child,.ant-btn-link:hover>a:only-child{color:currentcolor}.ant-btn-link:focus>a:only-child::after,.ant-btn-link:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-link:active{color:#388ed3;background:0 0}.ant-btn-link:active>a:only-child{color:currentcolor}.ant-btn-link:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-link:hover{background:0 0}.ant-btn-link:active,.ant-btn-link:focus,.ant-btn-link:hover{border-color:transparent}.ant-btn-link[disabled],.ant-btn-link[disabled]:active,.ant-btn-link[disabled]:focus,.ant-btn-link[disabled]:hover{color:rgba(255,255,255,.3);border-color:transparent;background:0 0;text-shadow:none;box-shadow:none}.ant-btn-link[disabled]:active>a:only-child,.ant-btn-link[disabled]:focus>a:only-child,.ant-btn-link[disabled]:hover>a:only-child,.ant-btn-link[disabled]>a:only-child{color:currentcolor}.ant-btn-link[disabled]:active>a:only-child::after,.ant-btn-link[disabled]:focus>a:only-child::after,.ant-btn-link[disabled]:hover>a:only-child::after,.ant-btn-link[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-text{color:rgba(255,255,255,.85);border-color:transparent;background:0 0;box-shadow:none}.ant-btn-text>a:only-child{color:currentcolor}.ant-btn-text>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-text:focus,.ant-btn-text:hover{color:#165996}.ant-btn-text:focus>a:only-child,.ant-btn-text:hover>a:only-child{color:currentcolor}.ant-btn-text:focus>a:only-child::after,.ant-btn-text:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-text:active{color:#388ed3}.ant-btn-text:active>a:only-child{color:currentcolor}.ant-btn-text:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-text:focus,.ant-btn-text:hover{color:rgba(255,255,255,.85);background:rgba(255,255,255,.03);border-color:transparent}.ant-btn-text:active{color:rgba(255,255,255,.85);background:rgba(255,255,255,.04);border-color:transparent}.ant-btn-text[disabled],.ant-btn-text[disabled]:active,.ant-btn-text[disabled]:focus,.ant-btn-text[disabled]:hover{color:rgba(255,255,255,.3);border-color:transparent;background:0 0;text-shadow:none;box-shadow:none}.ant-btn-text[disabled]:active>a:only-child,.ant-btn-text[disabled]:focus>a:only-child,.ant-btn-text[disabled]:hover>a:only-child,.ant-btn-text[disabled]>a:only-child{color:currentcolor}.ant-btn-text[disabled]:active>a:only-child::after,.ant-btn-text[disabled]:focus>a:only-child::after,.ant-btn-text[disabled]:hover>a:only-child::after,.ant-btn-text[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous{color:#a61d24;border-color:#a61d24;background:0 0}.ant-btn-dangerous>a:only-child{color:currentcolor}.ant-btn-dangerous>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous:focus,.ant-btn-dangerous:hover{color:#800f19;border-color:#800f19;background:0 0}.ant-btn-dangerous:focus>a:only-child,.ant-btn-dangerous:hover>a:only-child{color:currentcolor}.ant-btn-dangerous:focus>a:only-child::after,.ant-btn-dangerous:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous:active{color:#b33b3d;border-color:#b33b3d;background:0 0}.ant-btn-dangerous:active>a:only-child{color:currentcolor}.ant-btn-dangerous:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous[disabled],.ant-btn-dangerous[disabled]:active,.ant-btn-dangerous[disabled]:focus,.ant-btn-dangerous[disabled]:hover{color:rgba(255,255,255,.3);border-color:#434343;background:rgba(255,255,255,.08);text-shadow:none;box-shadow:none}.ant-btn-dangerous[disabled]:active>a:only-child,.ant-btn-dangerous[disabled]:focus>a:only-child,.ant-btn-dangerous[disabled]:hover>a:only-child,.ant-btn-dangerous[disabled]>a:only-child{color:currentcolor}.ant-btn-dangerous[disabled]:active>a:only-child::after,.ant-btn-dangerous[disabled]:focus>a:only-child::after,.ant-btn-dangerous[disabled]:hover>a:only-child::after,.ant-btn-dangerous[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-primary{color:#fff;border-color:#a61d24;background:#a61d24;text-shadow:0 -1px 0 rgba(0,0,0,.12);box-shadow:0 2px 0 rgba(0,0,0,.045)}.ant-btn-dangerous.ant-btn-primary>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-primary>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-primary:focus,.ant-btn-dangerous.ant-btn-primary:hover{color:#fff;border-color:#800f19;background:#800f19}.ant-btn-dangerous.ant-btn-primary:focus>a:only-child,.ant-btn-dangerous.ant-btn-primary:hover>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-primary:focus>a:only-child::after,.ant-btn-dangerous.ant-btn-primary:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-primary:active{color:#fff;border-color:#b33b3d;background:#b33b3d}.ant-btn-dangerous.ant-btn-primary:active>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-primary:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-primary[disabled],.ant-btn-dangerous.ant-btn-primary[disabled]:active,.ant-btn-dangerous.ant-btn-primary[disabled]:focus,.ant-btn-dangerous.ant-btn-primary[disabled]:hover{color:rgba(255,255,255,.3);border-color:#434343;background:rgba(255,255,255,.08);text-shadow:none;box-shadow:none}.ant-btn-dangerous.ant-btn-primary[disabled]:active>a:only-child,.ant-btn-dangerous.ant-btn-primary[disabled]:focus>a:only-child,.ant-btn-dangerous.ant-btn-primary[disabled]:hover>a:only-child,.ant-btn-dangerous.ant-btn-primary[disabled]>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-primary[disabled]:active>a:only-child::after,.ant-btn-dangerous.ant-btn-primary[disabled]:focus>a:only-child::after,.ant-btn-dangerous.ant-btn-primary[disabled]:hover>a:only-child::after,.ant-btn-dangerous.ant-btn-primary[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-link{color:#a61d24;border-color:transparent;background:0 0;box-shadow:none}.ant-btn-dangerous.ant-btn-link>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-link>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-link:focus,.ant-btn-dangerous.ant-btn-link:hover{color:#800f19;border-color:transparent;background:0 0}.ant-btn-dangerous.ant-btn-link:focus>a:only-child,.ant-btn-dangerous.ant-btn-link:hover>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-link:focus>a:only-child::after,.ant-btn-dangerous.ant-btn-link:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-link:active{color:#b33b3d;border-color:transparent;background:0 0}.ant-btn-dangerous.ant-btn-link:active>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-link:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-link[disabled],.ant-btn-dangerous.ant-btn-link[disabled]:active,.ant-btn-dangerous.ant-btn-link[disabled]:focus,.ant-btn-dangerous.ant-btn-link[disabled]:hover{color:rgba(255,255,255,.3);border-color:transparent;background:0 0;text-shadow:none;box-shadow:none}.ant-btn-dangerous.ant-btn-link[disabled]:active>a:only-child,.ant-btn-dangerous.ant-btn-link[disabled]:focus>a:only-child,.ant-btn-dangerous.ant-btn-link[disabled]:hover>a:only-child,.ant-btn-dangerous.ant-btn-link[disabled]>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-link[disabled]:active>a:only-child::after,.ant-btn-dangerous.ant-btn-link[disabled]:focus>a:only-child::after,.ant-btn-dangerous.ant-btn-link[disabled]:hover>a:only-child::after,.ant-btn-dangerous.ant-btn-link[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-text{color:#a61d24;border-color:transparent;background:0 0;box-shadow:none}.ant-btn-dangerous.ant-btn-text>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-text>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-text:focus,.ant-btn-dangerous.ant-btn-text:hover{color:#800f19;border-color:transparent;background:rgba(255,255,255,.03)}.ant-btn-dangerous.ant-btn-text:focus>a:only-child,.ant-btn-dangerous.ant-btn-text:hover>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-text:focus>a:only-child::after,.ant-btn-dangerous.ant-btn-text:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-text:active{color:#b33b3d;border-color:transparent;background:rgba(255,255,255,.04)}.ant-btn-dangerous.ant-btn-text:active>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-text:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-text[disabled],.ant-btn-dangerous.ant-btn-text[disabled]:active,.ant-btn-dangerous.ant-btn-text[disabled]:focus,.ant-btn-dangerous.ant-btn-text[disabled]:hover{color:rgba(255,255,255,.3);border-color:transparent;background:0 0;text-shadow:none;box-shadow:none}.ant-btn-dangerous.ant-btn-text[disabled]:active>a:only-child,.ant-btn-dangerous.ant-btn-text[disabled]:focus>a:only-child,.ant-btn-dangerous.ant-btn-text[disabled]:hover>a:only-child,.ant-btn-dangerous.ant-btn-text[disabled]>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-text[disabled]:active>a:only-child::after,.ant-btn-dangerous.ant-btn-text[disabled]:focus>a:only-child::after,.ant-btn-dangerous.ant-btn-text[disabled]:hover>a:only-child::after,.ant-btn-dangerous.ant-btn-text[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-icon-only{width:32px;height:32px;padding:2.4px 0;font-size:16px;border-radius:2px;vertical-align:-3px}.ant-btn-icon-only>*{font-size:16px}.ant-btn-icon-only.ant-btn-lg{width:40px;height:40px;padding:4.9px 0;font-size:18px;border-radius:2px}.ant-btn-icon-only.ant-btn-lg>*{font-size:18px}.ant-btn-icon-only.ant-btn-sm{width:24px;height:24px;padding:0;font-size:14px;border-radius:2px}.ant-btn-icon-only.ant-btn-sm>*{font-size:14px}.ant-btn-icon-only>.anticon{display:flex;justify-content:center}a.ant-btn-icon-only{vertical-align:-1px}a.ant-btn-icon-only>.anticon{display:inline}.ant-btn-round{height:32px;padding:4px 16px;font-size:14px;border-radius:32px}.ant-btn-round.ant-btn-lg{height:40px;padding:6.4px 20px;font-size:16px;border-radius:40px}.ant-btn-round.ant-btn-sm{height:24px;padding:0 12px;font-size:14px;border-radius:24px}.ant-btn-round.ant-btn-icon-only{width:auto}.ant-btn-circle{min-width:32px;padding-right:0;padding-left:0;text-align:center;border-radius:50%}.ant-btn-circle.ant-btn-lg{min-width:40px;border-radius:50%}.ant-btn-circle.ant-btn-sm{min-width:24px;border-radius:50%}.ant-btn::before{position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;z-index:1;display:none;background:#141414;border-radius:inherit;opacity:.35;transition:opacity .2s;content:'';pointer-events:none}.ant-btn-group,.ant-btn-group>.ant-btn,.ant-btn-group>span>.ant-btn,.ant-btn.ant-btn-loading,.ant-btn:active>span,.ant-btn:focus>span{position:relative}.ant-btn .anticon{transition:margin-left .3s cubic-bezier(.645,.045,.355,1)}.ant-btn .anticon.anticon-minus>svg,.ant-btn .anticon.anticon-plus>svg{shape-rendering:optimizespeed}.ant-btn.ant-btn-loading{cursor:default}.ant-btn.ant-btn-loading::before{display:block}.ant-btn>.ant-btn-loading-icon{transition:width .3s cubic-bezier(.645,.045,.355,1),opacity .3s cubic-bezier(.645,.045,.355,1)}.ant-btn>.ant-btn-loading-icon .anticon{padding-right:8px;animation:none}.ant-btn>.ant-btn-loading-icon .anticon svg{animation:loadingCircle 1s infinite linear}.ant-btn>.ant-btn-loading-icon:only-child .anticon{padding-right:0}.ant-btn-group>.ant-btn:active,.ant-btn-group>.ant-btn:focus,.ant-btn-group>.ant-btn:hover,.ant-btn-group>span>.ant-btn:active,.ant-btn-group>span>.ant-btn:focus,.ant-btn-group>span>.ant-btn:hover{z-index:2}.ant-btn-group>.ant-btn[disabled],.ant-btn-group>span>.ant-btn[disabled]{z-index:0}.ant-btn-group .ant-btn-icon-only{font-size:14px}.ant-btn+.ant-btn-group,.ant-btn-group .ant-btn+.ant-btn,.ant-btn-group .ant-btn+span,.ant-btn-group span+.ant-btn,.ant-btn-group+.ant-btn,.ant-btn-group+.ant-btn-group,.ant-btn-group>span+span{margin-left:-1px}.ant-btn-group .ant-btn-primary+.ant-btn:not(.ant-btn-primary):not([disabled]){border-left-color:transparent}.ant-btn-group .ant-btn{border-radius:0}.ant-btn-group-sm>.ant-btn:only-child,.ant-btn-group-sm>span:only-child>.ant-btn,.ant-btn-group>.ant-btn:only-child,.ant-btn-group>span:only-child>.ant-btn,.ant-card{border-radius:2px}.ant-btn-group-sm>.ant-btn:first-child:not(:last-child),.ant-btn-group-sm>span:first-child:not(:last-child)>.ant-btn,.ant-btn-group>.ant-btn:first-child:not(:last-child),.ant-btn-group>span:first-child:not(:last-child)>.ant-btn{border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-btn-group-sm>.ant-btn:last-child:not(:first-child),.ant-btn-group-sm>span:last-child:not(:first-child)>.ant-btn,.ant-btn-group>.ant-btn:last-child:not(:first-child),.ant-btn-group>span:last-child:not(:first-child)>.ant-btn{border-top-right-radius:2px;border-bottom-right-radius:2px}.ant-btn-group>.ant-btn:first-child,.ant-btn-group>span:first-child>.ant-btn{margin-left:0}.ant-btn-group>.ant-btn-group{float:left}.ant-btn-group>.ant-btn-group:not(:first-child):not(:last-child)>.ant-btn{border-radius:0}.ant-btn-group>.ant-btn-group:first-child:not(:last-child)>.ant-btn:last-child{padding-right:8px;border-top-right-radius:0;border-bottom-right-radius:0}.ant-btn-group>.ant-btn-group:last-child:not(:first-child)>.ant-btn:first-child{padding-left:8px;border-top-left-radius:0;border-bottom-left-radius:0}.ant-btn-group-rtl.ant-btn+.ant-btn-group,.ant-btn-group-rtl.ant-btn-group .ant-btn+.ant-btn,.ant-btn-group-rtl.ant-btn-group .ant-btn+span,.ant-btn-group-rtl.ant-btn-group span+.ant-btn,.ant-btn-group-rtl.ant-btn-group+.ant-btn,.ant-btn-group-rtl.ant-btn-group+.ant-btn-group,.ant-btn-group-rtl.ant-btn-group>span+span,.ant-btn-rtl.ant-btn+.ant-btn-group,.ant-btn-rtl.ant-btn-group .ant-btn+.ant-btn,.ant-btn-rtl.ant-btn-group .ant-btn+span,.ant-btn-rtl.ant-btn-group span+.ant-btn,.ant-btn-rtl.ant-btn-group+.ant-btn,.ant-btn-rtl.ant-btn-group+.ant-btn-group,.ant-btn-rtl.ant-btn-group>span+span{margin-right:-1px;margin-left:auto}.ant-btn-group-rtl.ant-btn-group>.ant-btn:first-child:not(:last-child),.ant-btn-group-rtl.ant-btn-group>span:first-child:not(:last-child)>.ant-btn{border-radius:0 2px 2px 0}.ant-btn-group-rtl.ant-btn-group>.ant-btn:last-child:not(:first-child),.ant-btn-group-rtl.ant-btn-group>span:last-child:not(:first-child)>.ant-btn{border-radius:2px 0 0 2px}.ant-btn-group-rtl.ant-btn-group-sm>.ant-btn:first-child:not(:last-child),.ant-btn-group-rtl.ant-btn-group-sm>span:first-child:not(:last-child)>.ant-btn{border-radius:0 2px 2px 0}.ant-btn-group-rtl.ant-btn-group-sm>.ant-btn:last-child:not(:first-child),.ant-btn-group-rtl.ant-btn-group-sm>span:last-child:not(:first-child)>.ant-btn{border-radius:2px 0 0 2px}.ant-btn-background-ghost.ant-btn-primary:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-primary:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-primary:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-primary>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn>.anticon+span,.ant-btn>span+.anticon{margin-left:8px}.ant-btn.ant-btn-background-ghost{color:rgba(255,255,255,.85);border-color:rgba(255,255,255,.25)}.ant-btn.ant-btn-background-ghost,.ant-btn.ant-btn-background-ghost:active,.ant-btn.ant-btn-background-ghost:focus,.ant-btn.ant-btn-background-ghost:hover{background:0 0}.ant-btn.ant-btn-background-ghost:focus,.ant-btn.ant-btn-background-ghost:hover{color:#3c9be8;border-color:#3c9be8}.ant-btn.ant-btn-background-ghost:active{color:#095cb5;border-color:#095cb5}.ant-btn.ant-btn-background-ghost[disabled]{color:rgba(255,255,255,.3);background:0 0;border-color:#434343}.ant-btn-background-ghost.ant-btn-primary{color:#177ddc;border-color:#177ddc;text-shadow:none}.ant-btn-background-ghost.ant-btn-primary>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-primary:focus,.ant-btn-background-ghost.ant-btn-primary:hover{color:#095cb5;border-color:#095cb5}.ant-btn-background-ghost.ant-btn-primary:focus>a:only-child,.ant-btn-background-ghost.ant-btn-primary:hover>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-primary:active{color:#3c9be8;border-color:#3c9be8}.ant-btn-background-ghost.ant-btn-primary:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-primary[disabled],.ant-btn-background-ghost.ant-btn-primary[disabled]:active,.ant-btn-background-ghost.ant-btn-primary[disabled]:focus,.ant-btn-background-ghost.ant-btn-primary[disabled]:hover{color:rgba(255,255,255,.3);border-color:#434343;background:rgba(255,255,255,.08);text-shadow:none;box-shadow:none}.ant-btn-background-ghost.ant-btn-danger:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-danger:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-danger:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-danger>a:only-child::after,.ant-btn-background-ghost.ant-btn-primary[disabled]:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-primary[disabled]:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-primary[disabled]:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-primary[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-background-ghost.ant-btn-primary[disabled]:active>a:only-child,.ant-btn-background-ghost.ant-btn-primary[disabled]:focus>a:only-child,.ant-btn-background-ghost.ant-btn-primary[disabled]:hover>a:only-child,.ant-btn-background-ghost.ant-btn-primary[disabled]>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-danger{color:#a61d24;border-color:#a61d24;text-shadow:none}.ant-btn-background-ghost.ant-btn-danger>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-danger:focus,.ant-btn-background-ghost.ant-btn-danger:hover{color:#800f19;border-color:#800f19}.ant-btn-background-ghost.ant-btn-danger:focus>a:only-child,.ant-btn-background-ghost.ant-btn-danger:hover>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-danger:active{color:#b33b3d;border-color:#b33b3d}.ant-btn-background-ghost.ant-btn-danger:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-danger[disabled],.ant-btn-background-ghost.ant-btn-danger[disabled]:active,.ant-btn-background-ghost.ant-btn-danger[disabled]:focus,.ant-btn-background-ghost.ant-btn-danger[disabled]:hover{color:rgba(255,255,255,.3);border-color:#434343;background:rgba(255,255,255,.08);text-shadow:none;box-shadow:none}.ant-btn-background-ghost.ant-btn-danger[disabled]:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-danger[disabled]:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-danger[disabled]:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-danger[disabled]>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-background-ghost.ant-btn-danger[disabled]:active>a:only-child,.ant-btn-background-ghost.ant-btn-danger[disabled]:focus>a:only-child,.ant-btn-background-ghost.ant-btn-danger[disabled]:hover>a:only-child,.ant-btn-background-ghost.ant-btn-danger[disabled]>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous{color:#a61d24;border-color:#a61d24;text-shadow:none}.ant-btn-background-ghost.ant-btn-dangerous>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous:focus,.ant-btn-background-ghost.ant-btn-dangerous:hover{color:#800f19;border-color:#800f19}.ant-btn-background-ghost.ant-btn-dangerous:focus>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous:hover>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous:active{color:#b33b3d;border-color:#b33b3d}.ant-btn-background-ghost.ant-btn-dangerous:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous[disabled],.ant-btn-background-ghost.ant-btn-dangerous[disabled]:active,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:focus,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:hover{color:rgba(255,255,255,.3);border-color:#434343;background:rgba(255,255,255,.08);text-shadow:none;box-shadow:none}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous[disabled]>a:only-child::after{background:0 0;position:absolute;content:'';top:0;left:0;right:0;bottom:0}.ant-btn-background-ghost.ant-btn-dangerous[disabled]:active>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:focus>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:hover>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous[disabled]>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link{color:#a61d24;border-color:transparent;text-shadow:none}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:focus,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:hover{color:#800f19;border-color:transparent}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:focus>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:hover>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:active{color:#b33b3d;border-color:transparent}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled],.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:active,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:focus,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:hover{color:rgba(255,255,255,.3);border-color:#434343;background:rgba(255,255,255,.08);text-shadow:none;box-shadow:none}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:active>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:focus>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:hover>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]>a:only-child{color:currentcolor}.ant-card,.ant-card-extra,.ant-card-head,.ant-card-head .ant-tabs-top{color:rgba(255,255,255,.85)}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-two-chinese-chars::first-letter{letter-spacing:.34em}.ant-btn-two-chinese-chars>:not(.anticon){margin-right:-.34em;letter-spacing:.34em}.ant-btn.ant-btn-block{width:100%}.ant-btn:empty{display:inline-block;width:0;visibility:hidden;content:'\a0'}.ant-card-head::after,.ant-card-head::before{display:table;content:''}a.ant-btn{padding-top:.01px!important;line-height:30px}a.ant-btn-lg{line-height:38px}a.ant-btn-sm{line-height:22px}.ant-card,.ant-card-actions>li>span{line-height:1.5715;position:relative}.ant-btn-group-rtl.ant-btn-group .ant-btn-primary+.ant-btn-primary,.ant-btn-group-rtl.ant-btn-group .ant-btn-primary:last-child:not(:first-child){border-right-color:#165996;border-left-color:#434343}.ant-btn-group-rtl.ant-btn-group .ant-btn-primary+.ant-btn-primary[disabled],.ant-btn-group-rtl.ant-btn-group .ant-btn-primary:last-child:not(:first-child)[disabled]{border-right-color:#434343;border-left-color:#165996}.ant-btn-rtl.ant-btn>.ant-btn-loading-icon .anticon{padding-right:0;padding-left:8px}.ant-btn>.ant-btn-loading-icon:only-child .anticon{padding-left:0}.ant-btn-rtl.ant-btn>.anticon+span,.ant-btn-rtl.ant-btn>span+.anticon{margin-right:8px;margin-left:0}.ant-card{box-sizing:border-box;margin:0;padding:0;font-size:14px;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;background:#141414}.ant-card-hoverable{cursor:pointer;transition:box-shadow .3s,border-color .3s}.ant-card-hoverable:hover{border-color:transparent;box-shadow:0 1px 2px -2px rgba(0,0,0,.64),0 3px 6px 0 rgba(0,0,0,.48),0 5px 12px 4px rgba(0,0,0,.36)}.ant-card-head,.ant-card-head .ant-tabs-top-bar{border-bottom:1px solid #303030}.ant-card-bordered{border:1px solid #303030}.ant-card-head{min-height:48px;margin-bottom:-1px;padding:0 24px;font-weight:500;font-size:16px;background:0 0;border-radius:2px 2px 0 0}.ant-card-head::after{clear:both}.ant-card-head-wrapper{display:flex;align-items:center}.ant-card-head-title{display:inline-block;flex:1;padding:16px 0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-card-body::after,.ant-card-body::before{display:table;content:''}.ant-card-head-title>.ant-typography,.ant-card-head-title>.ant-typography-edit-content{left:0;margin-top:0;margin-bottom:0}.ant-card-head .ant-tabs-top{clear:both;margin-bottom:-17px;font-weight:400;font-size:14px}.ant-card-extra{float:right;margin-left:auto;padding:16px 0;font-weight:400;font-size:14px}.ant-card-rtl .ant-card-extra{margin-right:auto;margin-left:0}.ant-card-body{padding:24px}.ant-card-body::after{clear:both}.ant-card-contain-grid:not(.ant-card-loading) .ant-card-body{margin:-1px 0 0 -1px;padding:0}.ant-card-grid{float:left;width:33.33%;padding:24px;border:0;border-radius:0;box-shadow:1px 0 0 0 #303030,0 1px 0 0 #303030,1px 1px 0 0 #303030,1px 0 0 0 #303030 inset,0 1px 0 0 #303030 inset;transition:all .3s}.ant-card-rtl .ant-card-grid{float:right}.ant-card-grid-hoverable:hover{position:relative;z-index:1;box-shadow:0 1px 2px -2px rgba(0,0,0,.64),0 3px 6px 0 rgba(0,0,0,.48),0 5px 12px 4px rgba(0,0,0,.36)}.ant-card-contain-tabs>.ant-card-head .ant-card-head-title{min-height:32px;padding-bottom:0}.ant-card-contain-tabs>.ant-card-head .ant-card-extra{padding-bottom:0}.ant-card-bordered .ant-card-cover{margin-top:-1px;margin-right:-1px;margin-left:-1px}.ant-card-cover>*{display:block;width:100%}.ant-card-actions::after,.ant-card-actions::before{display:table;content:''}.ant-card-cover img{border-radius:2px 2px 0 0}.ant-card-actions{margin:0;padding:0;list-style:none;background:#141414;border-top:1px solid #303030}.ant-card-actions::after{clear:both}.ant-card-actions>li{float:left;margin:12px 0;color:rgba(255,255,255,.45);text-align:center}.ant-card-rtl .ant-card-actions>li{float:right}.ant-card-actions>li>span{display:block;min-width:32px;font-size:14px;cursor:pointer}.ant-card-actions>li>span:hover{color:#177ddc;transition:color .3s}.ant-card-actions>li>span a:not(.ant-btn),.ant-card-actions>li>span>.anticon{display:inline-block;width:100%;color:rgba(255,255,255,.45);line-height:22px;transition:color .3s}.ant-card-meta::after,.ant-card-meta::before{display:table;content:''}.ant-card-actions>li>span a:not(.ant-btn):hover,.ant-card-actions>li>span>.anticon:hover{color:#177ddc}.ant-card-actions>li>span>.anticon{font-size:16px;line-height:22px}.ant-card-actions>li:not(:last-child){border-right:1px solid #303030}.ant-card-rtl .ant-card-actions>li:not(:last-child){border-right:none;border-left:1px solid #303030}.ant-card-type-inner .ant-card-head{padding:0 24px;background:rgba(255,255,255,.04)}.ant-card-type-inner .ant-card-head-title{padding:12px 0;font-size:14px}.ant-card-type-inner .ant-card-body{padding:16px 24px}.ant-card-type-inner .ant-card-extra{padding:13.5px 0}.ant-card-meta{margin:-4px 0}.ant-card-meta::after{clear:both}.ant-card-meta-avatar{float:left;padding-right:16px}.ant-card-rtl .ant-card-meta-avatar{float:right;padding-right:0;padding-left:16px}.ant-card-meta-detail{overflow:hidden}.ant-card-meta-detail>div:not(:last-child){margin-bottom:8px}.ant-card-meta-title{overflow:hidden;color:rgba(255,255,255,.85);font-weight:500;font-size:16px;white-space:nowrap;text-overflow:ellipsis}.ant-card-meta-description,.ant-comment-content-author-name,.ant-comment-content-author-name>*,.ant-comment-content-author-name>:hover{color:rgba(255,255,255,.45)}.ant-carousel,.ant-checkbox{color:rgba(255,255,255,.85);font-size:14px}.ant-card-loading{overflow:hidden}.ant-card-loading .ant-card-body{user-select:none}.ant-card-loading-content p{margin:0}.ant-card-loading-block{height:14px;margin:4px 0;background:linear-gradient(90deg,rgba(48,48,48,.2),rgba(48,48,48,.4),rgba(48,48,48,.2));background-size:600% 600%;border-radius:2px;animation:card-loading 1.4s ease infinite}@keyframes card-loading{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}.ant-card-small>.ant-card-head{min-height:36px;padding:0 12px;font-size:14px}.ant-card-small>.ant-card-head>.ant-card-head-wrapper>.ant-card-head-title{padding:8px 0}.ant-card-small>.ant-card-head>.ant-card-head-wrapper>.ant-card-extra{padding:8px 0;font-size:14px}.ant-card-small>.ant-card-body{padding:12px}.ant-card-rtl .ant-skeleton-header{padding:0 0 0 16px}nz-card,nz-card-loading,nz-card-meta{display:block}.ant-carousel{box-sizing:border-box;margin:0;padding:0;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum}.ant-carousel .slick-slider{position:relative;display:block;box-sizing:border-box;touch-action:pan-y;-webkit-touch-callout:none}.ant-carousel .slick-list{position:relative;display:block;margin:0;padding:0;overflow:hidden}.ant-carousel .slick-list:focus{outline:0}.ant-carousel .slick-list.dragging{cursor:pointer}.ant-carousel .slick-list .slick-slide{pointer-events:none}.ant-carousel .slick-list .slick-slide input.ant-checkbox-input,.ant-carousel .slick-list .slick-slide input.ant-radio-input{visibility:hidden}.ant-carousel .slick-list .slick-slide.slick-active{pointer-events:auto}.ant-carousel .slick-list .slick-slide.slick-active input.ant-checkbox-input,.ant-carousel .slick-list .slick-slide.slick-active input.ant-radio-input{visibility:visible}.ant-carousel .slick-loading .slick-slide,.ant-checkbox-checked::after,.slick-loading .ant-carousel .slick-track{visibility:hidden}.ant-carousel .slick-list .slick-slide>div>div{vertical-align:bottom}.ant-carousel .slick-slider .slick-list,.ant-carousel .slick-slider .slick-track{transform:translate3d(0,0,0);touch-action:pan-y}.ant-carousel .slick-track{position:relative;top:0;left:0;display:block}.ant-carousel .slick-track::after,.ant-carousel .slick-track::before{display:table;content:''}.ant-carousel .slick-track::after{clear:both}.ant-carousel .slick-slide{display:none;float:left;height:100%;min-height:1px}.ant-carousel .slick-slide img{display:block}.ant-carousel .slick-slide.slick-loading img{display:none}.ant-carousel .slick-slide.dragging img{pointer-events:none}.ant-carousel .slick-initialized .slick-slide{display:block}.ant-carousel .slick-vertical .slick-slide{display:block;height:auto}.ant-carousel .slick-arrow.slick-hidden{display:none}.ant-carousel .slick-next,.ant-carousel .slick-prev{position:absolute;top:50%;display:block;width:20px;height:20px;margin-top:-10px;padding:0;color:transparent;font-size:0;line-height:0;background:0 0;border:0;outline:0;cursor:pointer}.ant-carousel .slick-next:focus,.ant-carousel .slick-next:hover,.ant-carousel .slick-prev:focus,.ant-carousel .slick-prev:hover{color:transparent;background:0 0;outline:0}.ant-carousel .slick-next:focus::before,.ant-carousel .slick-next:hover::before,.ant-carousel .slick-prev:focus::before,.ant-carousel .slick-prev:hover::before{opacity:1}.ant-carousel .slick-next.slick-disabled::before,.ant-carousel .slick-prev.slick-disabled::before{opacity:.25}.ant-carousel .slick-prev{left:-25px}.ant-carousel .slick-prev::before{content:'←'}.ant-carousel .slick-next::before,.ant-carousel-rtl .ant-carousel .slick-prev::before{content:'→'}.ant-carousel .slick-next{right:-25px}.ant-carousel .slick-dots{position:absolute;right:0;bottom:0;left:0;z-index:15;display:flex!important;justify-content:center;margin-right:15%;margin-left:15%;padding-left:0;list-style:none}.ant-carousel .slick-dots-bottom{bottom:12px}.ant-carousel .slick-dots-top{top:12px;bottom:auto}.ant-carousel .slick-dots li{position:relative;display:inline-block;flex:0 1 auto;box-sizing:content-box;width:16px;height:3px;margin:0 3px;padding:0;text-align:center;text-indent:-999px;vertical-align:top;transition:all .5s}.ant-carousel .slick-dots li button{display:block;width:100%;height:3px;padding:0;color:transparent;font-size:0;background:#141414;border:0;border-radius:1px;outline:0;cursor:pointer;opacity:.3;transition:all .5s}.ant-carousel .slick-dots li button:focus,.ant-carousel .slick-dots li button:hover{opacity:.75}.ant-carousel .slick-dots li.slick-active{width:24px}.ant-carousel .slick-dots li.slick-active button{background:#141414;opacity:1}.ant-carousel .slick-dots li.slick-active:focus,.ant-carousel .slick-dots li.slick-active:hover{opacity:1}.ant-carousel-vertical .slick-dots{top:50%;bottom:auto;flex-direction:column;width:3px;height:auto;margin:0;transform:translateY(-50%)}.ant-carousel-vertical .slick-dots-left{right:auto;left:12px}.ant-carousel-vertical .slick-dots-right{right:12px;left:auto}.ant-carousel-vertical .slick-dots li{width:3px;height:16px;margin:4px 2px;vertical-align:baseline}.ant-checkbox,.ant-checkbox-wrapper{box-sizing:border-box;margin:0;padding:0;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum}.ant-carousel-vertical .slick-dots li button{width:3px;height:16px}.ant-carousel-vertical .slick-dots li.slick-active,.ant-carousel-vertical .slick-dots li.slick-active button{width:3px;height:24px}.ant-carousel-rtl .ant-carousel .slick-track{right:0;left:auto}.ant-carousel-rtl .ant-carousel .slick-prev{right:-25px;left:auto}.ant-carousel-rtl .ant-carousel .slick-next{right:auto;left:-25px}.ant-carousel-rtl .ant-carousel .slick-next::before{content:'←'}.ant-carousel-rtl.ant-carousel .slick-dots{flex-direction:row-reverse}.ant-carousel-rtl.ant-carousel-vertical .slick-dots{flex-direction:column}nz-carousel{display:block;position:relative;overflow:hidden;width:100%;height:100%}.slick-dots{display:block}.slick-track{opacity:1}.slick-list{direction:ltr}@keyframes antCheckboxEffect{0%{transform:scale(1);opacity:.5}100%{transform:scale(1.6);opacity:0}}.ant-checkbox{position:relative;top:.2em;white-space:nowrap;outline:0;cursor:pointer}.ant-checkbox-input:focus+.ant-checkbox-inner,.ant-checkbox-wrapper:hover .ant-checkbox-inner,.ant-checkbox:hover .ant-checkbox-inner{border-color:#177ddc}.ant-checkbox-checked::after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #177ddc;border-radius:2px;animation:antCheckboxEffect .36s ease-in-out;animation-fill-mode:backwards;content:''}.ant-checkbox-wrapper:hover .ant-checkbox::after,.ant-checkbox:hover::after{visibility:visible}.ant-checkbox-inner{position:relative;top:0;left:0;display:block;width:16px;height:16px;direction:ltr;background-color:transparent;border:1px solid #434343;border-radius:2px;border-collapse:separate;transition:all .3s}.ant-checkbox-inner::after{position:absolute;top:50%;left:21.5%;display:table;width:5.71px;height:9.14px;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(0) translate(-50%,-50%);opacity:0;transition:all .1s cubic-bezier(.71,-.46,.88,.6),opacity .1s;content:' '}.ant-checkbox-input{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;cursor:pointer;opacity:0}.ant-checkbox-checked .ant-checkbox-inner::after{position:absolute;display:table;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(1) translate(-50%,-50%);opacity:1;transition:all .2s cubic-bezier(.12,.4,.29,1.46) .1s;content:' '}.ant-checkbox-checked .ant-checkbox-inner{background-color:#177ddc;border-color:#177ddc}.ant-checkbox-disabled{cursor:not-allowed}.ant-checkbox-disabled.ant-checkbox-checked .ant-checkbox-inner::after{border-color:rgba(255,255,255,.3);animation-name:none}.ant-checkbox-disabled .ant-checkbox-input{cursor:not-allowed;pointer-events:none}.ant-checkbox-disabled .ant-checkbox-inner{background-color:rgba(255,255,255,.08);border-color:#434343!important}.ant-checkbox-disabled .ant-checkbox-inner::after{border-color:rgba(255,255,255,.08);border-collapse:separate;animation-name:none}.ant-checkbox-disabled+span{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-checkbox-disabled:hover::after,.ant-checkbox-wrapper:hover .ant-checkbox-disabled::after{visibility:hidden}.ant-checkbox-wrapper{color:rgba(255,255,255,.85);font-size:14px;display:inline-flex;align-items:baseline;line-height:unset;cursor:pointer}.ant-checkbox-wrapper::after{display:inline-block;width:0;overflow:hidden;content:'\a0'}.ant-checkbox-wrapper.ant-checkbox-wrapper-disabled{cursor:not-allowed}.ant-checkbox-wrapper+.ant-checkbox-wrapper{margin-left:8px}.ant-checkbox-wrapper.ant-checkbox-wrapper-in-form-item input[type=checkbox]{width:14px;height:14px}.ant-checkbox+span{padding-right:8px;padding-left:8px}.ant-checkbox-group,.ant-collapse{padding:0;font-size:14px;line-height:1.5715;color:rgba(255,255,255,.85);box-sizing:border-box;font-variant:tabular-nums;font-feature-settings:tnum;list-style:none}.ant-checkbox-group{margin:0;display:inline-block}.ant-checkbox-group-item{margin-right:8px}.ant-checkbox-group-item:last-child{margin-right:0}.ant-checkbox-group-item+.ant-checkbox-group-item{margin-left:0}.ant-checkbox-indeterminate .ant-checkbox-inner{background-color:transparent;border-color:#434343}.ant-checkbox-indeterminate .ant-checkbox-inner::after{top:50%;left:50%;width:8px;height:8px;background-color:#177ddc;border:0;transform:translate(-50%,-50%) scale(1);opacity:1;content:' '}.ant-checkbox-indeterminate.ant-checkbox-disabled .ant-checkbox-inner::after{background-color:rgba(255,255,255,.3);border-color:rgba(255,255,255,.3)}.ant-checkbox-group-rtl .ant-checkbox-group-item{margin-right:0;margin-left:8px}.ant-checkbox-group-rtl .ant-checkbox-group-item:last-child{margin-left:0!important}.ant-checkbox-group-rtl .ant-checkbox-group-item+.ant-checkbox-group-item{margin-left:8px}.ant-checkbox+span:empty{display:none}.ant-collapse{margin:0;background-color:rgba(255,255,255,.04);border:1px solid #434343;border-bottom:0;border-radius:2px}.ant-collapse-item:last-child>.ant-collapse-content,.ant-collapse>.ant-collapse-item:last-child,.ant-collapse>.ant-collapse-item:last-child>.ant-collapse-header{border-radius:0 0 2px 2px}.ant-collapse>.ant-collapse-item{border-bottom:1px solid #434343}.ant-collapse>.ant-collapse-item>.ant-collapse-header{position:relative;display:flex;flex-wrap:nowrap;align-items:flex-start;padding:12px 16px;color:rgba(255,255,255,.85);line-height:1.5715;cursor:pointer;transition:all .3s,visibility 0s}.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow{display:inline-block;margin-right:12px;font-size:12px;vertical-align:-1px}.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow svg{transition:transform .24s}.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-extra{margin-left:auto}.ant-collapse>.ant-collapse-item>.ant-collapse-header:focus{outline:0}.ant-collapse>.ant-collapse-item .ant-collapse-header-collapsible-only{cursor:default}.ant-collapse>.ant-collapse-item .ant-collapse-header-collapsible-only .ant-collapse-header-text{cursor:pointer}.ant-collapse>.ant-collapse-item.ant-collapse-no-arrow>.ant-collapse-header{padding-left:12px}.ant-collapse-icon-position-right>.ant-collapse-item>.ant-collapse-header{position:relative;padding:12px 40px 12px 16px}.ant-collapse-icon-position-right>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow{position:absolute;top:50%;right:16px;left:auto;margin:0;transform:translateY(-50%)}.ant-collapse-rtl.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow svg,.ant-dropdown-wrap-open .anticon-down::before,.ant-picker-rtl .ant-picker-separator{transform:rotate(180deg)}.ant-collapse-content{color:rgba(255,255,255,.85);background-color:#141414;border-top:1px solid #434343}.ant-collapse-borderless,.ant-descriptions-bordered .ant-descriptions-item-label{background-color:rgba(255,255,255,.04)}.ant-collapse-content>.ant-collapse-content-box{padding:16px}.ant-collapse-content-hidden{display:none}nz-collapse,nz-collapse-panel,nz-comment,nz-comment-content{display:block}.ant-collapse-borderless{border:0}.ant-collapse-borderless>.ant-collapse-item{border-bottom:1px solid #434343}.ant-collapse-borderless>.ant-collapse-item:last-child,.ant-collapse-borderless>.ant-collapse-item:last-child .ant-collapse-header{border-radius:0}.ant-collapse-borderless>.ant-collapse-item:last-child{border-bottom:0}.ant-collapse-borderless>.ant-collapse-item>.ant-collapse-content{background-color:transparent;border-top:0}.ant-collapse-borderless>.ant-collapse-item>.ant-collapse-content>.ant-collapse-content-box{padding-top:4px}.ant-collapse-ghost{background-color:transparent;border:0}.ant-collapse-ghost>.ant-collapse-item{border-bottom:0}.ant-collapse-ghost>.ant-collapse-item>.ant-collapse-content{background-color:transparent;border-top:0}.ant-collapse-ghost>.ant-collapse-item>.ant-collapse-content>.ant-collapse-content-box{padding-top:12px;padding-bottom:12px}.ant-collapse .ant-collapse-item-disabled>.ant-collapse-header,.ant-collapse .ant-collapse-item-disabled>.ant-collapse-header>.arrow{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-collapse-rtl .ant-collapse>.ant-collapse-item>.ant-collapse-header{padding:12px 40px 12px 16px}.ant-collapse-rtl.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow{margin-right:0;margin-left:12px}.ant-collapse-rtl.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-extra{margin-right:auto;margin-left:0}.ant-collapse-rtl.ant-collapse>.ant-collapse-item.ant-collapse-no-arrow>.ant-collapse-header{padding-right:12px;padding-left:0}.ant-comment{position:relative;background-color:transparent}.ant-comment-inner{display:flex;padding:16px 0}.ant-comment-avatar{position:relative;flex-shrink:0;margin-right:12px;cursor:pointer}.ant-comment-avatar img{width:32px;height:32px;border-radius:50%}.ant-comment-content{position:relative;flex:1 1 auto;min-width:1px;font-size:14px;word-wrap:break-word}.ant-comment-content-author{display:flex;flex-wrap:wrap;justify-content:flex-start;margin-bottom:4px;font-size:14px}.ant-comment-content-author>a,.ant-comment-content-author>span{padding-right:8px;font-size:12px;line-height:18px}.ant-comment-content-author-name{font-size:14px;transition:color .3s}.ant-comment-content-author-time{color:rgba(255,255,255,.3);white-space:nowrap;cursor:auto}.ant-comment-content-detail p{margin-bottom:inherit;white-space:pre-wrap}.ant-comment-actions{margin-top:12px;margin-bottom:inherit;padding-left:0}.ant-comment-actions>li{display:inline-block;color:rgba(255,255,255,.45)}.ant-comment-actions>li>span{margin-right:10px;color:rgba(255,255,255,.45);font-size:12px;cursor:pointer;transition:color .3s;user-select:none}.ant-comment-actions>li>span:hover{color:rgba(255,255,255,.65)}.ant-picker,.ant-picker-dropdown,.ant-picker-header,.ant-picker-input>input{color:rgba(255,255,255,.85)}.ant-comment-nested{margin-left:44px}.ant-comment-rtl .ant-comment-avatar{margin-right:0;margin-left:12px}.ant-comment-rtl .ant-comment-content-author>a,.ant-comment-rtl .ant-comment-content-author>span{padding-right:0;padding-left:8px}.ant-comment-rtl .ant-comment-actions{padding-right:0}.ant-comment-rtl .ant-comment-actions>li>span{margin-right:0;margin-left:10px}.ant-comment-rtl .ant-comment-nested{margin-right:44px;margin-left:0}.ant-picker-status-error.ant-picker,.ant-picker-status-error.ant-picker:not([disabled]):hover{background-color:transparent;border-color:#a61d24}.ant-picker-status-error.ant-picker-focused,.ant-picker-status-error.ant-picker:focus{border-color:#a61d24;box-shadow:0 0 0 2px rgba(166,29,36,.2);border-right-width:1px;outline:0}.ant-picker-status-warning.ant-picker,.ant-picker-status-warning.ant-picker:not([disabled]):hover{background-color:transparent;border-color:#d89614}.ant-picker-status-warning.ant-picker-focused,.ant-picker-status-warning.ant-picker:focus{border-color:#d89614;box-shadow:0 0 0 2px rgba(216,150,20,.2);border-right-width:1px;outline:0}.ant-picker{box-sizing:border-box;margin:0;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum;padding:4px 11px;position:relative;display:inline-flex;align-items:center;background:0 0;border:1px solid #434343;border-radius:2px;transition:border .3s,box-shadow .3s}.ant-picker-cell:hover:not(.ant-picker-cell-in-view) .ant-picker-cell-inner,.ant-picker-cell:hover:not(.ant-picker-cell-selected):not(.ant-picker-cell-range-start):not(.ant-picker-cell-range-end):not(.ant-picker-cell-range-hover-start):not(.ant-picker-cell-range-hover-end) .ant-picker-cell-inner,.ant-picker.ant-picker-disabled{background:rgba(255,255,255,.08)}.ant-picker-focused,.ant-picker:hover{border-color:#165996;border-right-width:1px}.ant-input-rtl .ant-picker-focused,.ant-input-rtl .ant-picker:hover{border-right-width:0;border-left-width:1px!important}.ant-picker-focused{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-picker-focused{border-right-width:0;border-left-width:1px!important}.ant-picker.ant-picker-disabled{border-color:#434343;cursor:not-allowed}.ant-picker.ant-picker-disabled .ant-picker-suffix{color:rgba(255,255,255,.3)}.ant-picker.ant-picker-borderless{background-color:transparent!important;border-color:transparent!important;box-shadow:none!important}.ant-picker-input{position:relative;display:inline-flex;align-items:center;width:100%}.ant-picker-input>input{position:relative;display:inline-block;width:100%;font-size:14px;line-height:1.5715;border-radius:2px;transition:all .3s;flex:auto;min-width:1px;height:auto;padding:0;background:0 0;border:0}.ant-picker-input>input-disabled,.ant-picker-input>input[disabled]{background-color:rgba(255,255,255,.08);cursor:not-allowed;color:rgba(255,255,255,.3);opacity:1;pointer-events:none}.ant-picker-input>input::-moz-placeholder{opacity:1}.ant-picker-input>input::placeholder{color:rgba(255,255,255,.3);user-select:none}.ant-picker-input>input:placeholder-shown{text-overflow:ellipsis}.ant-picker-input>input:hover{border-color:#165996;border-right-width:1px}.ant-input-rtl .ant-picker-input>input:hover{border-right-width:0;border-left-width:1px!important}.ant-picker-input>input-focused,.ant-picker-input>input:focus{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-picker-input>input-focused,.ant-input-rtl .ant-picker-input>input:focus{border-right-width:0;border-left-width:1px!important}.ant-picker-input>input-disabled:hover,.ant-picker-input>input[disabled]:hover{border-color:#434343;border-right-width:1px}.ant-picker-input>input-disabled{border-color:#434343;box-shadow:none}.ant-picker-input>input[disabled]{border-color:#434343;box-shadow:none}.ant-picker-input>input-borderless,.ant-picker-input>input-borderless-disabled,.ant-picker-input>input-borderless-focused,.ant-picker-input>input-borderless:focus,.ant-picker-input>input-borderless:hover,.ant-picker-input>input-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-picker-input>input{max-width:100%;height:auto;min-height:32px;line-height:1.5715;vertical-align:bottom;transition:all .3s,height 0s}.ant-picker-input>input-lg{padding:6.5px 11px;font-size:16px}.ant-picker-input>input-sm{padding:0 7px}.ant-picker-input>input-stepperless[type=number]{-moz-appearance:textfield}.ant-picker-input>input-stepperless[type=number] ::-webkit-outer-spin-button,.ant-picker-input>input-stepperless[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ant-picker-input>input:focus{box-shadow:none}.ant-picker-input>input[disabled]{background:0 0}.ant-picker-input:hover .ant-picker-clear{opacity:1}.ant-picker-input-placeholder>input{color:rgba(255,255,255,.3)}.ant-picker-large{padding:6.5px 11px}.ant-picker-large .ant-picker-input>input{font-size:16px}.ant-picker-small{padding:0 7px}.ant-picker-suffix{display:flex;flex:none;align-self:center;margin-left:4px;color:rgba(255,255,255,.3);line-height:1;pointer-events:none}.ant-picker-suffix>*{vertical-align:top}.ant-picker-suffix>:not(:last-child){margin-right:8px}.ant-picker-clear{position:absolute;top:50%;right:0;color:rgba(255,255,255,.3);line-height:1;background:#141414;transform:translateY(-50%);cursor:pointer;opacity:0;transition:opacity .3s,color .3s}.ant-picker-clear>*{vertical-align:top}.ant-picker-clear:hover{color:rgba(255,255,255,.45)}.ant-picker-separator{position:relative;display:inline-block;width:1em;height:16px;color:rgba(255,255,255,.3);font-size:16px;vertical-align:top;cursor:default}.ant-picker-focused .ant-picker-separator{color:rgba(255,255,255,.45)}.ant-picker-disabled .ant-picker-range-separator .ant-picker-separator{cursor:not-allowed}.ant-picker-range{position:relative;display:inline-flex}.ant-picker-range .ant-picker-clear{right:11px}.ant-picker-range:hover .ant-picker-clear{opacity:1}.ant-picker-range .ant-picker-active-bar{bottom:-1px;height:2px;margin-left:11px;background:#177ddc;opacity:0;transition:all .3s ease-out;pointer-events:none}.ant-picker-range.ant-picker-focused .ant-picker-active-bar{opacity:1}.ant-picker-range-separator{align-items:center;padding:0 8px;line-height:1}.ant-picker-range.ant-picker-small .ant-picker-clear{right:7px}.ant-picker-range.ant-picker-small .ant-picker-active-bar{margin-left:7px}.ant-picker-dropdown{box-sizing:border-box;margin:0;padding:0;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum;position:absolute;z-index:1050}.ant-picker-dropdown-hidden{display:none}.ant-picker-dropdown-placement-bottomLeft .ant-picker-range-arrow{top:2.59px;display:block;transform:rotate(-135deg) translateY(1px)}.ant-picker-dropdown-placement-topLeft .ant-picker-range-arrow{bottom:2.59px;display:block;transform:rotate(45deg)}.ant-picker-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-picker-dropdown-placement-topLeft,.ant-picker-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-picker-dropdown-placement-topRight,.ant-picker-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-picker-dropdown-placement-topLeft,.ant-picker-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-picker-dropdown-placement-topRight{animation-name:antSlideDownIn}.ant-picker-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-picker-dropdown-placement-bottomLeft,.ant-picker-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-picker-dropdown-placement-bottomRight,.ant-picker-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-picker-dropdown-placement-bottomLeft,.ant-picker-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-picker-dropdown-placement-bottomRight{animation-name:antSlideUpIn}.ant-picker-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-picker-dropdown-placement-topLeft,.ant-picker-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-picker-dropdown-placement-topRight{animation-name:antSlideDownOut}.ant-picker-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-picker-dropdown-placement-bottomLeft,.ant-picker-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-picker-dropdown-placement-bottomRight{animation-name:antSlideUpOut}.ant-picker-dropdown-range{padding:7.54px 0}.ant-picker-dropdown .ant-picker-panel>.ant-picker-time-panel,.ant-steps-with-progress .ant-steps-item{padding-top:4px}.ant-picker-dropdown-range-hidden{display:none}.ant-picker-ranges{margin-bottom:0;padding:4px 12px;overflow:hidden;line-height:34px;text-align:left;list-style:none}.ant-picker-ranges>li{display:inline-block}.ant-picker-ranges .ant-picker-preset>.ant-tag-blue{color:#177ddc;background:#111b26;border-color:#153450;cursor:pointer}.ant-dropdown-arrow,.ant-picker-range-arrow{background:linear-gradient(135deg,transparent 40%,#1f1f1f 40%);border-radius:0 0 2px;pointer-events:none}.ant-picker-ranges .ant-picker-ok{float:right;margin-left:8px}.ant-picker-range-wrapper{display:flex}.ant-picker-range-arrow{position:absolute;z-index:1;display:none;width:11.31px;height:11.31px;margin-left:16.5px;box-shadow:2px 2px 6px -2px rgba(0,0,0,.1);transition:left .3s ease-out}.ant-picker-range-arrow::before{position:absolute;top:-11.31px;left:-11.31px;width:33.94px;height:33.94px;background:-10px -10px no-repeat #1f1f1f;content:'';clip-path:path('M 9.849242404917499 24.091883092036785 A 5 5 0 0 1 13.384776310850237 22.627416997969522 L 20.627416997969522 22.627416997969522 A 2 2 0 0 0 22.627416997969522 20.627416997969522 L 22.627416997969522 13.384776310850237 A 5 5 0 0 1 24.091883092036785 9.849242404917499 L 23.091883092036785 9.849242404917499 L 9.849242404917499 23.091883092036785 Z')}.ant-picker-panel-container{overflow:hidden;vertical-align:top;background:#1f1f1f;border-radius:2px;box-shadow:0 3px 6px -4px rgba(0,0,0,.48),0 6px 16px 0 rgba(0,0,0,.32),0 9px 28px 8px rgba(0,0,0,.2);transition:margin .3s}.ant-picker-panel-container .ant-picker-panels{display:inline-flex;flex-wrap:nowrap;direction:ltr}.ant-picker-panel-container .ant-picker-panel{vertical-align:top;background:0 0;border-width:0 0 1px;border-radius:0}.ant-picker-panel-container .ant-picker-panel .ant-picker-content,.ant-picker-panel-container .ant-picker-panel table{text-align:center}.ant-picker-panel-container .ant-picker-panel-focused{border-color:#303030}.ant-picker-panel{display:inline-flex;flex-direction:column;text-align:center;background:#1f1f1f;border:1px solid #303030;border-radius:2px;outline:0}.ant-picker-panel-focused{border-color:#177ddc}.ant-picker-date-panel,.ant-picker-decade-panel,.ant-picker-month-panel,.ant-picker-quarter-panel,.ant-picker-time-panel,.ant-picker-week-panel,.ant-picker-year-panel{display:flex;flex-direction:column;width:280px}.ant-picker-header{display:flex;padding:0 8px;border-bottom:1px solid #303030}.ant-picker-header>*{flex:none}.ant-picker-header button{padding:0;color:rgba(255,255,255,.3);line-height:40px;background:0 0;border:0;cursor:pointer;transition:color .3s}.ant-picker-header>button{min-width:1.6em;font-size:14px}.ant-picker-header>button:hover{color:rgba(255,255,255,.85)}.ant-picker-header-view{flex:auto;font-weight:500;line-height:40px}.ant-picker-header-view button{color:inherit;font-weight:inherit}.ant-picker-header-view button:not(:first-child){margin-left:8px}.ant-picker-header-view button:hover{color:#177ddc}.ant-picker-next-icon,.ant-picker-prev-icon,.ant-picker-super-next-icon,.ant-picker-super-prev-icon{position:relative;display:inline-block;width:7px;height:7px}.ant-picker-next-icon::before,.ant-picker-prev-icon::before,.ant-picker-super-next-icon::before,.ant-picker-super-prev-icon::before{position:absolute;top:0;left:0;display:inline-block;width:7px;height:7px;border:0 solid currentcolor;border-width:1.5px 0 0 1.5px;content:''}.ant-picker-super-next-icon::after,.ant-picker-super-prev-icon::after{position:absolute;top:4px;left:4px;display:inline-block;width:7px;height:7px;border:0 solid currentcolor;border-width:1.5px 0 0 1.5px;content:''}.ant-picker-prev-icon,.ant-picker-super-prev-icon{transform:rotate(-45deg)}.ant-picker-next-icon,.ant-picker-super-next-icon{transform:rotate(135deg)}.ant-picker-content{width:100%;table-layout:fixed;border-collapse:collapse}.ant-picker-content td,.ant-picker-content th{position:relative;min-width:24px;font-weight:400}.ant-picker-content th{height:30px;color:rgba(255,255,255,.85);line-height:30px}.ant-picker-cell{padding:3px 0;color:rgba(255,255,255,.3);cursor:pointer}.ant-picker-cell-in-view{color:rgba(255,255,255,.85)}.ant-picker-cell::before{position:absolute;top:50%;right:0;left:0;z-index:1;height:24px;transform:translateY(-50%);transition:all .3s;content:''}.ant-picker-cell-in-view.ant-picker-cell-today .ant-picker-cell-inner::before{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;border:1px solid #177ddc;border-radius:2px;content:''}.ant-picker-cell-in-view.ant-picker-cell-in-range{position:relative}.ant-picker-cell-in-view.ant-picker-cell-in-range::before{background:#111b26}.ant-picker-cell-in-view.ant-picker-cell-range-end .ant-picker-cell-inner,.ant-picker-cell-in-view.ant-picker-cell-range-start .ant-picker-cell-inner,.ant-picker-cell-in-view.ant-picker-cell-selected .ant-picker-cell-inner{color:#fff;background:#177ddc}.ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single)::before,.ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single)::before{background:#111b26}.ant-picker-cell-in-view.ant-picker-cell-range-start::before{left:50%}.ant-picker-cell-in-view.ant-picker-cell-range-end::before{right:50%}.ant-picker-cell-in-view.ant-picker-cell-range-hover-end.ant-picker-cell-range-end-single::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-end.ant-picker-cell-range-start.ant-picker-cell-range-end.ant-picker-cell-range-start-near-hover::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-end:not(.ant-picker-cell-in-range):not(.ant-picker-cell-range-start):not(.ant-picker-cell-range-end)::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-start.ant-picker-cell-range-start-single::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-start.ant-picker-cell-range-start.ant-picker-cell-range-end.ant-picker-cell-range-end-near-hover::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-start:not(.ant-picker-cell-in-range):not(.ant-picker-cell-range-start):not(.ant-picker-cell-range-end)::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover:not(.ant-picker-cell-in-range)::after{position:absolute;top:50%;z-index:0;height:24px;border-top:1px dashed #0e4980;border-bottom:1px dashed #0e4980;transform:translateY(-50%);transition:all .3s;content:''}.ant-picker-cell-range-hover-end::after,.ant-picker-cell-range-hover-start::after,.ant-picker-cell-range-hover::after{right:0;left:2px}.ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover::before,.ant-picker-cell-in-view.ant-picker-cell-range-end.ant-picker-cell-range-hover::before,.ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single).ant-picker-cell-range-hover-end::before,.ant-picker-cell-in-view.ant-picker-cell-range-start.ant-picker-cell-range-hover::before,.ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single).ant-picker-cell-range-hover-start::before,.ant-picker-panel>:not(.ant-picker-date-panel) .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end::before,.ant-picker-panel>:not(.ant-picker-date-panel) .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start::before{background:#06213a}.ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single):not(.ant-picker-cell-range-end) .ant-picker-cell-inner{border-radius:2px 0 0 2px}.ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single):not(.ant-picker-cell-range-start) .ant-picker-cell-inner{border-radius:0 2px 2px 0}.ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end .ant-picker-cell-inner::after,.ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start .ant-picker-cell-inner::after{position:absolute;top:0;bottom:0;z-index:-1;background:#06213a;transition:all .3s;content:''}.ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start .ant-picker-cell-inner::after{right:-6px;left:0}.ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end .ant-picker-cell-inner::after{right:0;left:-6px}.ant-picker-cell-range-hover.ant-picker-cell-range-start::after{right:50%}.ant-picker-cell-range-hover.ant-picker-cell-range-end::after{left:50%}.ant-picker-cell-in-view.ant-picker-cell-range-hover-edge-start:not(.ant-picker-cell-range-hover-edge-start-near-range)::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-start::after,.ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover-edge-start.ant-picker-cell-range-hover-edge-start-near-range::after,tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover-end:first-child::after,tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover:first-child::after{left:6px;border-left:1px dashed #0e4980;border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-picker-cell-in-view.ant-picker-cell-end.ant-picker-cell-range-hover-edge-end.ant-picker-cell-range-hover-edge-end-near-range::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-edge-end:not(.ant-picker-cell-range-hover-edge-end-near-range)::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-end::after,tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover-start:last-child::after,tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover:last-child::after{right:6px;border-right:1px dashed #0e4980;border-top-right-radius:2px;border-bottom-right-radius:2px}.ant-picker-cell-disabled{color:rgba(255,255,255,.3);pointer-events:none}.ant-picker-cell-disabled .ant-picker-cell-inner{background:0 0}.ant-picker-cell-disabled::before{background:#303030}.ant-picker-cell-disabled.ant-picker-cell-today .ant-picker-cell-inner::before{border-color:rgba(255,255,255,.3)}.ant-picker-decade-panel .ant-picker-content,.ant-picker-month-panel .ant-picker-content,.ant-picker-quarter-panel .ant-picker-content,.ant-picker-year-panel .ant-picker-content{height:264px}.ant-picker-decade-panel .ant-picker-cell-inner,.ant-picker-month-panel .ant-picker-cell-inner,.ant-picker-quarter-panel .ant-picker-cell-inner,.ant-picker-year-panel .ant-picker-cell-inner{padding:0 8px}.ant-picker-quarter-panel .ant-picker-content{height:56px}.ant-picker-footer{width:min-content;min-width:100%;line-height:38px;text-align:center;border-bottom:1px solid transparent}.ant-picker-panel .ant-picker-footer{border-top:1px solid #303030}.ant-picker-footer-extra{padding:0 12px;line-height:38px;text-align:left}.ant-picker-footer-extra:not(:last-child){border-bottom:1px solid #303030}.ant-picker-now{text-align:left}.ant-picker-today-btn{color:#177ddc}.ant-picker-today-btn:hover{color:#165996}.ant-picker-today-btn:active{color:#388ed3}.ant-picker-today-btn.ant-picker-today-btn-disabled{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-picker-decade-panel .ant-picker-cell-inner{padding:0 4px}.ant-picker-decade-panel .ant-picker-cell::before{display:none}.ant-picker-month-panel .ant-picker-body,.ant-picker-quarter-panel .ant-picker-body,.ant-picker-year-panel .ant-picker-body{padding:0 8px}.ant-picker-date-panel .ant-picker-body,.ant-picker-week-panel .ant-picker-body{padding:8px 12px}.ant-picker-month-panel .ant-picker-cell-inner,.ant-picker-quarter-panel .ant-picker-cell-inner,.ant-picker-year-panel .ant-picker-cell-inner{width:60px}.ant-picker-month-panel .ant-picker-cell-range-hover-start::after,.ant-picker-quarter-panel .ant-picker-cell-range-hover-start::after,.ant-picker-year-panel .ant-picker-cell-range-hover-start::after{left:14px;border-left:1px dashed #0e4980;border-radius:2px 0 0 2px}.ant-picker-month-panel .ant-picker-cell-range-hover-end::after,.ant-picker-panel-rtl .ant-picker-month-panel .ant-picker-cell-range-hover-start::after,.ant-picker-panel-rtl .ant-picker-quarter-panel .ant-picker-cell-range-hover-start::after,.ant-picker-panel-rtl .ant-picker-year-panel .ant-picker-cell-range-hover-start::after,.ant-picker-quarter-panel .ant-picker-cell-range-hover-end::after,.ant-picker-year-panel .ant-picker-cell-range-hover-end::after{right:14px;border-right:1px dashed #0e4980;border-radius:0 2px 2px 0}.ant-picker-panel-rtl .ant-picker-month-panel .ant-picker-cell-range-hover-end::after,.ant-picker-panel-rtl .ant-picker-quarter-panel .ant-picker-cell-range-hover-end::after,.ant-picker-panel-rtl .ant-picker-year-panel .ant-picker-cell-range-hover-end::after{left:14px;border-left:1px dashed #0e4980;border-radius:2px 0 0 2px}.ant-picker-week-panel .ant-picker-cell .ant-picker-cell-inner,.ant-picker-week-panel .ant-picker-cell-selected .ant-picker-cell-inner,.ant-picker-week-panel .ant-picker-cell:hover .ant-picker-cell-inner{background:0 0!important}.ant-picker-week-panel-row td{transition:background .3s}.ant-picker-week-panel-row:hover td{background:rgba(255,255,255,.08)}.ant-picker-week-panel-row-selected td,.ant-picker-week-panel-row-selected:hover td{background:#177ddc}.ant-picker-week-panel-row-selected td.ant-picker-cell-week,.ant-picker-week-panel-row-selected:hover td.ant-picker-cell-week{color:rgba(255,255,255,.5)}.ant-picker-week-panel-row-selected td.ant-picker-cell-today .ant-picker-cell-inner::before,.ant-picker-week-panel-row-selected:hover td.ant-picker-cell-today .ant-picker-cell-inner::before{border-color:#fff}.ant-picker-datetime-panel .ant-picker-time-panel,.ant-picker-time-panel-column:not(:first-child){border-left:1px solid #303030}.ant-picker-week-panel-row-selected td .ant-picker-cell-inner,.ant-picker-week-panel-row-selected:hover td .ant-picker-cell-inner{color:#fff}.ant-picker-date-panel .ant-picker-content{width:252px}.ant-picker-date-panel .ant-picker-content th{width:36px}.ant-picker-datetime-panel{display:flex}.ant-picker-datetime-panel .ant-picker-date-panel,.ant-picker-datetime-panel .ant-picker-time-panel{transition:opacity .3s}.ant-picker-datetime-panel-active .ant-picker-date-panel,.ant-picker-datetime-panel-active .ant-picker-time-panel{opacity:.3}.ant-picker-datetime-panel-active .ant-picker-date-panel-active,.ant-picker-datetime-panel-active .ant-picker-time-panel-active{opacity:1}.ant-picker-time-panel{width:auto;min-width:auto}.ant-picker-time-panel .ant-picker-content{display:flex;flex:auto;height:224px}.ant-picker-time-panel-column{flex:1 0 auto;width:56px;margin:0;padding:0;overflow-y:hidden;text-align:left;list-style:none;transition:background .3s}.ant-picker-time-panel-column::after{display:block;height:196px;content:''}.ant-picker-datetime-panel .ant-picker-time-panel-column::after{height:198px}.ant-picker-time-panel-column-active{background:rgba(17,27,38,.2)}.ant-input-number-handler:active,.ant-picker-time-panel-column>li.ant-picker-time-panel-cell .ant-picker-time-panel-cell-inner:hover{background:rgba(255,255,255,.08)}.ant-picker-time-panel-column:hover{overflow-y:auto}.ant-picker-time-panel-column>li{margin:0;padding:0}.ant-picker-time-panel-column>li.ant-picker-time-panel-cell .ant-picker-time-panel-cell-inner{display:block;width:100%;height:28px;margin:0;padding:0 0 0 14px;color:rgba(255,255,255,.85);line-height:28px;border-radius:0;cursor:pointer;transition:background .3s}.ant-menu-item:active,.ant-menu-submenu-title:active,.ant-picker-time-panel-column>li.ant-picker-time-panel-cell-selected .ant-picker-time-panel-cell-inner{background:#111b26}.ant-picker-time-panel-column>li.ant-picker-time-panel-cell-disabled .ant-picker-time-panel-cell-inner{color:rgba(255,255,255,.3);background:0 0;cursor:not-allowed}:root .ant-picker-range-wrapper .ant-picker-month-panel .ant-picker-cell,:root .ant-picker-range-wrapper .ant-picker-year-panel .ant-picker-cell,_:-ms-fullscreen .ant-picker-range-wrapper .ant-picker-month-panel .ant-picker-cell,_:-ms-fullscreen .ant-picker-range-wrapper .ant-picker-year-panel .ant-picker-cell{padding:21px 0}.ant-picker-rtl .ant-picker-suffix{margin-right:4px;margin-left:0}.ant-picker-rtl .ant-picker-clear{right:auto;left:0}.ant-picker-panel-rtl .ant-picker-header-view button:not(:first-child){margin-right:8px;margin-left:0}.ant-picker-rtl.ant-picker-range .ant-picker-clear{right:auto;left:11px}.ant-picker-rtl.ant-picker-range .ant-picker-active-bar{margin-right:11px;margin-left:0}.ant-picker-rtl.ant-picker-range.ant-picker-small .ant-picker-active-bar{margin-right:7px}.ant-picker-dropdown-rtl .ant-picker-ranges{text-align:right}.ant-picker-dropdown-rtl .ant-picker-ranges .ant-picker-ok{float:left;margin-right:8px;margin-left:0}.ant-picker-panel-rtl .ant-picker-prev-icon,.ant-picker-panel-rtl .ant-picker-super-prev-icon{transform:rotate(135deg)}.ant-picker-panel-rtl .ant-picker-next-icon,.ant-picker-panel-rtl .ant-picker-super-next-icon{transform:rotate(-45deg)}.ant-picker-cell .ant-picker-cell-inner{position:relative;z-index:2;display:inline-block;min-width:24px;height:24px;line-height:24px;border-radius:2px;transition:background .3s,border .3s}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-start::before{right:50%;left:0}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-end::before{right:0;left:50%}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-start.ant-picker-cell-range-end::before{right:50%;left:50%}.ant-picker-panel-rtl .ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start .ant-picker-cell-inner::after{right:0;left:-6px}.ant-picker-panel-rtl .ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end .ant-picker-cell-inner::after{right:-6px;left:0}.ant-picker-panel-rtl .ant-picker-cell-range-hover.ant-picker-cell-range-start::after{right:0;left:50%}.ant-picker-panel-rtl .ant-picker-cell-range-hover.ant-picker-cell-range-end::after{right:50%;left:0}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single):not(.ant-picker-cell-range-end) .ant-picker-cell-inner{border-radius:0 2px 2px 0}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single):not(.ant-picker-cell-range-start) .ant-picker-cell-inner{border-radius:2px 0 0 2px}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-hover-edge-start:not(.ant-picker-cell-range-hover-edge-start-near-range)::after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-hover-start::after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover-edge-start.ant-picker-cell-range-hover-edge-start-near-range::after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover:not(.ant-picker-cell-selected):first-child::after{right:6px;left:0;border-right:1px dashed #0e4980;border-left:none;border-radius:0 2px 2px 0}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-end.ant-picker-cell-range-hover-edge-end.ant-picker-cell-range-hover-edge-end-near-range::after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-hover-edge-end:not(.ant-picker-cell-range-hover-edge-end-near-range)::after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-hover-end::after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover:not(.ant-picker-cell-selected):last-child::after{right:0;left:6px;border-right:none;border-left:1px dashed #0e4980;border-radius:2px 0 0 2px}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-end.ant-picker-cell-range-hover-start.ant-picker-cell-range-hover-edge-end:not(.ant-picker-cell-range-hover)::after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover-edge-start:not(.ant-picker-cell-range-hover)::after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover-end.ant-picker-cell-range-hover-edge-start:not(.ant-picker-cell-range-hover)::after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-end.ant-picker-cell-range-hover.ant-picker-cell-range-hover-edge-end:first-child::after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover-end:first-child::after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover-start:last-child::after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover.ant-picker-cell-range-hover-edge-start:last-child::after{right:6px;left:6px;border-right:1px dashed #0e4980;border-left:1px dashed #0e4980;border-radius:2px}.ant-picker-dropdown-rtl .ant-picker-footer-extra{text-align:right}.ant-picker-panel-rtl .ant-picker-time-panel{direction:ltr}.ant-picker-inline{border:none;padding:0}.ant-picker-inline .ant-picker-range-arrow{display:none!important}.ant-picker-inline .ant-picker-dropdown{z-index:auto}.ant-picker-dropdown{top:unset;left:unset}.ant-picker-panel-container.ant-picker-week-number .ant-picker-date-panel .ant-picker-content{width:100%}.ant-picker-panel-container.ant-picker-week-number .ant-picker-date-panel .ant-picker-content th{width:inherit}.ant-picker-range-arrow{margin-right:16.5px}.ant-descriptions-header{display:flex;align-items:center;margin-bottom:20px}.ant-descriptions-title{flex:auto;overflow:hidden;color:rgba(255,255,255,.85);font-weight:700;font-size:16px;line-height:1.5715;white-space:nowrap;text-overflow:ellipsis}.ant-descriptions-extra,.ant-descriptions-item-content,.ant-descriptions-item-label,.ant-divider{font-size:14px;color:rgba(255,255,255,.85)}.ant-descriptions-extra{margin-left:auto}.ant-descriptions-view{width:100%;border-radius:2px}.ant-descriptions-view table{width:100%;table-layout:fixed}.ant-descriptions-row>td,.ant-descriptions-row>th{padding-bottom:16px}.ant-descriptions-row:last-child{border-bottom:none}.ant-descriptions-item-label{font-weight:400;line-height:1.5715;text-align:start}.ant-descriptions-item-label::after{content:':';position:relative;top:-.5px;margin:0 8px 0 2px}.ant-descriptions-item-label.ant-descriptions-item-no-colon::after,.ant-dropdown::before{content:' '}.ant-descriptions-item-no-label::after{margin:0;content:''}.ant-descriptions-item-content{display:table-cell;flex:1;line-height:1.5715;word-break:break-word;overflow-wrap:break-word}.ant-descriptions-item{padding-bottom:0;vertical-align:top}.ant-descriptions-item-container{display:flex}.ant-descriptions-item-container .ant-descriptions-item-content,.ant-descriptions-item-container .ant-descriptions-item-label{display:inline-flex;align-items:baseline}.ant-descriptions-middle .ant-descriptions-row>td,.ant-descriptions-middle .ant-descriptions-row>th{padding-bottom:12px}.ant-descriptions-small .ant-descriptions-row>td,.ant-descriptions-small .ant-descriptions-row>th{padding-bottom:8px}.ant-descriptions-bordered .ant-descriptions-view{border:1px solid #303030}.ant-descriptions-bordered .ant-descriptions-view>table{table-layout:auto;border-collapse:collapse}.ant-descriptions-bordered .ant-descriptions-item-content,.ant-descriptions-bordered .ant-descriptions-item-label{padding:16px 24px;border-right:1px solid #303030}.ant-descriptions-bordered .ant-descriptions-item-content:last-child,.ant-descriptions-bordered .ant-descriptions-item-label:last-child{border-right:none}.ant-descriptions-bordered .ant-descriptions-item-label::after{display:none}.ant-descriptions-bordered .ant-descriptions-row{border-bottom:1px solid #303030}.ant-descriptions-bordered .ant-descriptions-row:last-child{border-bottom:none}.ant-descriptions-bordered.ant-descriptions-middle .ant-descriptions-item-content,.ant-descriptions-bordered.ant-descriptions-middle .ant-descriptions-item-label{padding:12px 24px}.ant-descriptions-bordered.ant-descriptions-small .ant-descriptions-item-content,.ant-descriptions-bordered.ant-descriptions-small .ant-descriptions-item-label{padding:8px 16px}.ant-descriptions-rtl .ant-descriptions-item-label::after{margin:0 2px 0 8px}.ant-descriptions-rtl.ant-descriptions-bordered .ant-descriptions-item-content,.ant-descriptions-rtl.ant-descriptions-bordered .ant-descriptions-item-label{border-right:none;border-left:1px solid #303030}.ant-descriptions-rtl.ant-descriptions-bordered .ant-descriptions-item-content:last-child,.ant-descriptions-rtl.ant-descriptions-bordered .ant-descriptions-item-label:last-child{border-left:none}nz-descriptions{display:block}.ant-divider{box-sizing:border-box;margin:0;padding:0;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum;border-top:1px solid rgba(255,255,255,.12)}.ant-divider-vertical{position:relative;top:-.06em;display:inline-block;height:.9em;margin:0 8px;vertical-align:middle;border-top:0;border-left:1px solid rgba(255,255,255,.12)}.ant-divider-horizontal{display:flex;clear:both;width:100%;min-width:100%;margin:24px 0}.ant-divider-horizontal.ant-divider-with-text{display:flex;margin:16px 0;color:rgba(255,255,255,.85);font-weight:500;font-size:16px;white-space:nowrap;text-align:center;border-top:0;border-top-color:rgba(255,255,255,.12)}.ant-divider-horizontal.ant-divider-with-text::after,.ant-divider-horizontal.ant-divider-with-text::before{position:relative;top:50%;width:50%;border-top:1px solid transparent;border-top-color:inherit;border-bottom:0;transform:translateY(50%);content:''}.ant-divider-horizontal.ant-divider-with-text-left::before{top:50%;width:5%}.ant-divider-horizontal.ant-divider-with-text-left::after,.ant-divider-horizontal.ant-divider-with-text-right::before{top:50%;width:95%}.ant-divider-horizontal.ant-divider-with-text-right::after{top:50%;width:5%}.ant-divider-inner-text{display:inline-block;padding:0 1em}.ant-divider-dashed{background:0 0;border-color:rgba(255,255,255,.12);border-style:dashed;border-width:1px 0 0}.ant-divider-horizontal.ant-divider-with-text.ant-divider-dashed::after,.ant-divider-horizontal.ant-divider-with-text.ant-divider-dashed::before{border-style:dashed none none}.ant-divider-vertical.ant-divider-dashed{border-width:0 0 0 1px}.ant-divider-plain.ant-divider-with-text{color:rgba(255,255,255,.85);font-weight:400;font-size:14px}.ant-divider-horizontal.ant-divider-with-text-left.ant-divider-no-default-orientation-margin-left::before{width:0}.ant-divider-horizontal.ant-divider-with-text-left.ant-divider-no-default-orientation-margin-left::after,.ant-divider-horizontal.ant-divider-with-text-right.ant-divider-no-default-orientation-margin-right::before{width:100%}.ant-divider-horizontal.ant-divider-with-text-left.ant-divider-no-default-orientation-margin-left .ant-divider-inner-text{padding-left:0}.ant-divider-horizontal.ant-divider-with-text-right.ant-divider-no-default-orientation-margin-right::after{width:0}.ant-divider-horizontal.ant-divider-with-text-right.ant-divider-no-default-orientation-margin-right .ant-divider-inner-text{padding-right:0}.ant-divider-rtl.ant-divider-horizontal.ant-divider-with-text-left::before{width:95%}.ant-divider-rtl.ant-divider-horizontal.ant-divider-with-text-left::after,.ant-divider-rtl.ant-divider-horizontal.ant-divider-with-text-right::before{width:5%}.ant-divider-rtl.ant-divider-horizontal.ant-divider-with-text-right::after{width:95%}.ant-drawer{position:fixed;z-index:1000;width:0%;height:100%;transition:width 0s ease .3s,height 0s ease .3s}.ant-drawer-content-wrapper{position:absolute;width:100%;height:100%;transition:transform .3s cubic-bezier(.23,1,.32,1),box-shadow .3s cubic-bezier(.23,1,.32,1)}.ant-drawer .ant-drawer-content{width:100%;height:100%}.ant-drawer-left,.ant-drawer-right{top:0;width:0%;height:100%}.ant-drawer-left .ant-drawer-content-wrapper,.ant-drawer-right .ant-drawer-content-wrapper{height:100%}.ant-drawer-left.ant-drawer-open,.ant-drawer-right.ant-drawer-open{width:100%;transition:transform .3s cubic-bezier(.23,1,.32,1)}.ant-drawer-left,.ant-drawer-left .ant-drawer-content-wrapper{left:0}.ant-drawer-left.ant-drawer-open .ant-drawer-content-wrapper{box-shadow:6px 0 16px -8px rgba(0,0,0,.32),9px 0 28px 0 rgba(0,0,0,.2),12px 0 48px 16px rgba(0,0,0,.12)}.ant-drawer-right,.ant-drawer-right .ant-drawer-content-wrapper{right:0}.ant-drawer-right.ant-drawer-open .ant-drawer-content-wrapper{box-shadow:-6px 0 16px -8px rgba(0,0,0,.08),-9px 0 28px 0 rgba(0,0,0,.05),-12px 0 48px 16px rgba(0,0,0,.03)}.ant-drawer-top.ant-drawer-open .ant-drawer-content-wrapper,.header-dropdown{box-shadow:0 6px 16px -8px rgba(0,0,0,.32),0 9px 28px 0 rgba(0,0,0,.2),0 12px 48px 16px rgba(0,0,0,.12)}.ant-drawer-right.ant-drawer-open.no-mask{right:1px;transform:translateX(1px)}.ant-drawer-bottom,.ant-drawer-top{left:0;width:100%;height:0%}.ant-drawer-bottom .ant-drawer-content-wrapper,.ant-drawer-top .ant-drawer-content-wrapper{width:100%}.ant-drawer-bottom.ant-drawer-open,.ant-drawer-top.ant-drawer-open{height:100%;transition:transform .3s cubic-bezier(.23,1,.32,1)}.ant-drawer-top{top:0}.ant-drawer-bottom,.ant-drawer-bottom .ant-drawer-content-wrapper{bottom:0}.ant-drawer-bottom.ant-drawer-open .ant-drawer-content-wrapper{box-shadow:0 -6px 16px -8px rgba(0,0,0,.32),0 -9px 28px 0 rgba(0,0,0,.2),0 -12px 48px 16px rgba(0,0,0,.12)}.ant-drawer-bottom.ant-drawer-open.no-mask{bottom:1px;transform:translateY(1px)}.ant-drawer.ant-drawer-open .ant-drawer-mask{height:100%;opacity:1;transition:none;animation:antdDrawerFadeIn .3s cubic-bezier(.23,1,.32,1);pointer-events:auto}.ant-dropdown.ant-slide-down-appear.ant-slide-down-appear-active.ant-dropdown-placement-bottom,.ant-dropdown.ant-slide-down-appear.ant-slide-down-appear-active.ant-dropdown-placement-bottomLeft,.ant-dropdown.ant-slide-down-appear.ant-slide-down-appear-active.ant-dropdown-placement-bottomRight,.ant-dropdown.ant-slide-down-enter.ant-slide-down-enter-active.ant-dropdown-placement-bottom,.ant-dropdown.ant-slide-down-enter.ant-slide-down-enter-active.ant-dropdown-placement-bottomLeft,.ant-dropdown.ant-slide-down-enter.ant-slide-down-enter-active.ant-dropdown-placement-bottomRight,.ant-select-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-select-dropdown-placement-bottomLeft,.ant-select-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-select-dropdown-placement-bottomLeft{animation-name:antSlideUpIn}.ant-drawer-title{flex:1;margin:0;color:rgba(255,255,255,.85);font-weight:500;font-size:16px;line-height:22px}.ant-drawer-content{position:relative;z-index:1;overflow:auto;background-color:#1f1f1f;background-clip:padding-box;border:0}.ant-drawer-close{display:inline-block;margin-right:12px;color:rgba(255,255,255,.45);font-weight:700;font-size:16px;font-style:normal;line-height:1;text-align:center;text-transform:none;text-decoration:none;background:0 0;border:0;outline:0;cursor:pointer;transition:color .3s;text-rendering:auto}.ant-drawer-close:focus,.ant-drawer-close:hover{color:rgba(255,255,255,.75);text-decoration:none}.ant-drawer-header{position:relative;display:flex;align-items:center;justify-content:space-between;padding:16px 24px;color:rgba(255,255,255,.85);background:#1f1f1f;border-bottom:1px solid #303030;border-radius:2px 2px 0 0}.ant-drawer-header-title{display:flex;flex:1;align-items:center;justify-content:space-between}.ant-drawer-header-close-only{padding-bottom:0;border:none}.ant-drawer .ant-table tbody>tr>td,.ant-drawer .ant-table tfoot>tr>td,.ant-drawer .ant-table tfoot>tr>th,.ant-drawer .ant-table thead>tr>th,.ant-drawer .ant-table.ant-table-small thead>tr>th,.ant-drawer .ant-transfer-list-header{border-bottom:1px solid #3a3a3a}.ant-drawer .ant-table.ant-table-bordered .ant-table-cell-fix-right-first::after,.ant-drawer .ant-table.ant-table-bordered .ant-table-expanded-row-fixed::after,.ant-drawer .ant-table.ant-table-bordered tbody>tr>td,.ant-drawer .ant-table.ant-table-bordered tfoot>tr>td,.ant-drawer .ant-table.ant-table-bordered tfoot>tr>th,.ant-drawer .ant-table.ant-table-bordered thead>tr>th,.ant-modal .ant-table.ant-table-bordered .ant-table-cell-fix-right-first::after,.ant-modal .ant-table.ant-table-bordered .ant-table-expanded-row-fixed::after,.ant-modal .ant-table.ant-table-bordered tbody>tr>td,.ant-modal .ant-table.ant-table-bordered tfoot>tr>td,.ant-modal .ant-table.ant-table-bordered tfoot>tr>th,.ant-modal .ant-table.ant-table-bordered thead>tr>th,.ant-notification .ant-table.ant-table-bordered .ant-table-cell-fix-right-first::after,.ant-notification .ant-table.ant-table-bordered .ant-table-expanded-row-fixed::after,.ant-notification .ant-table.ant-table-bordered tbody>tr>td,.ant-notification .ant-table.ant-table-bordered tfoot>tr>td,.ant-notification .ant-table.ant-table-bordered tfoot>tr>th,.ant-notification .ant-table.ant-table-bordered thead>tr>th{border-right:1px solid #3a3a3a}.ant-drawer-wrapper-body{display:flex;flex-flow:column nowrap;width:100%;height:100%}.ant-drawer-body{flex-grow:1;padding:24px;overflow:auto;font-size:14px;line-height:1.5715;word-wrap:break-word}.ant-drawer-footer{flex-shrink:0;padding:10px 16px;border-top:1px solid #303030}.ant-drawer .ant-table .ant-table-row-expand-icon,.ant-drawer .ant-table.ant-table-bordered .ant-table-title{border:1px solid #3a3a3a}.ant-drawer-mask{position:absolute;top:0;left:0;width:100%;height:0;background-color:rgba(0,0,0,.45);opacity:0;transition:opacity .3s linear,height 0s ease .3s;pointer-events:none}.ant-drawer .ant-picker-clear{background:#1f1f1f}@keyframes antdDrawerFadeIn{0%{opacity:0}100%{opacity:1}}.ant-drawer-rtl .ant-drawer-close{margin-right:0;margin-left:12px}.ant-drawer .ant-anchor-wrapper,.ant-drawer .ant-card,.ant-drawer .ant-collapse-content,.ant-drawer .ant-picker-clear,.ant-drawer .ant-slider-handle,.ant-drawer .ant-timeline-item-head{background-color:#1f1f1f}.ant-drawer .ant-transfer-list-header{background:#1f1f1f}.ant-drawer .ant-transfer-list-content-item:not(.ant-transfer-list-content-item-disabled):hover{background-color:rgba(255,255,255,.08)}.ant-drawer tr.ant-table-expanded-row:hover>td,.ant-drawer tr.ant-table-expanded-row>td{background:#272727}.ant-drawer .ant-table,.ant-drawer .ant-table.ant-table-small thead>tr>th{background-color:#1f1f1f}.ant-drawer .ant-table thead>tr>th{background-color:#272727}.ant-drawer .ant-table tbody>tr>td.ant-table-cell-fix-left,.ant-drawer .ant-table tbody>tr>td.ant-table-cell-fix-right{background-color:#1f1f1f}.ant-drawer .ant-table tbody>tr.ant-table-row:hover>td{background:#303030}.ant-drawer .ant-table.ant-table-bordered table thead>tr:not(:last-child)>th,.ant-list-split .ant-list-item{border-bottom:1px solid #303030}.ant-drawer .ant-table.ant-table-bordered .ant-table-container,.ant-drawer .ant-table.ant-table-bordered .ant-table-footer{border:1px solid #3a3a3a}.ant-drawer .ant-table .ant-table-filter-trigger-container-open{background-color:#525252}.ant-drawer .ant-picker-calendar-full,.ant-drawer .ant-picker-calendar-full .ant-picker-panel{background-color:#1f1f1f}.ant-drawer .ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date{border-top:2px solid #3a3a3a}.ant-drawer .ant-tabs.ant-tabs-card .ant-tabs-card-bar .ant-tabs-tab-active{background-color:#1f1f1f;border-bottom:1px solid #1f1f1f}.ant-drawer .ant-badge-count{box-shadow:0 0 0 1px #1f1f1f}.ant-drawer .ant-tree-show-line .ant-tree-switcher{background:#1f1f1f}.ant-dropdown-menu-item.ant-dropdown-menu-item-danger{color:#a61d24}.ant-dropdown-menu-item.ant-dropdown-menu-item-danger:hover{color:#fff;background-color:#a61d24}.ant-dropdown{box-sizing:border-box;margin:0;padding:0;color:rgba(255,255,255,.85);font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum;z-index:1050;display:block}.ant-dropdown::before{position:absolute;top:-4px;right:0;bottom:-4px;left:-7px;z-index:-9999;opacity:.0001}.ant-dropdown-arrow::before,.ant-popover-arrow-content::before{left:-11.31px;clip-path:path('M 9.849242404917499 24.091883092036785 A 5 5 0 0 1 13.384776310850237 22.627416997969522 L 20.627416997969522 22.627416997969522 A 2 2 0 0 0 22.627416997969522 20.627416997969522 L 22.627416997969522 13.384776310850237 A 5 5 0 0 1 24.091883092036785 9.849242404917499 L 23.091883092036785 9.849242404917499 L 9.849242404917499 23.091883092036785 Z')}.ant-dropdown-wrap{position:relative}.ant-dropdown-wrap .ant-btn>.anticon-down{font-size:10px}.ant-dropdown-wrap .anticon-down::before{transition:transform .2s}.ant-dropdown-hidden,.ant-dropdown-menu-hidden,.ant-dropdown-menu-submenu-hidden{display:none}.ant-dropdown-show-arrow.ant-dropdown-placement-top,.ant-dropdown-show-arrow.ant-dropdown-placement-topLeft,.ant-dropdown-show-arrow.ant-dropdown-placement-topRight{padding-bottom:15.31px}.ant-dropdown-show-arrow.ant-dropdown-placement-bottom,.ant-dropdown-show-arrow.ant-dropdown-placement-bottomLeft,.ant-dropdown-show-arrow.ant-dropdown-placement-bottomRight{padding-top:15.31px}.ant-dropdown-arrow{position:absolute;z-index:1;display:block;width:11.31px;height:11.31px}.ant-dropdown-arrow::before{position:absolute;top:-11.31px;width:33.94px;height:33.94px;background:-10px -10px no-repeat #1f1f1f;content:''}.ant-dropdown-placement-top>.ant-dropdown-arrow,.ant-dropdown-placement-topLeft>.ant-dropdown-arrow,.ant-dropdown-placement-topRight>.ant-dropdown-arrow{bottom:10px;box-shadow:3px 3px 7px -3px rgba(0,0,0,.1);transform:rotate(45deg)}.ant-dropdown-placement-top>.ant-dropdown-arrow{left:50%;transform:translateX(-50%) rotate(45deg)}.ant-dropdown-placement-topLeft>.ant-dropdown-arrow{left:16px}.ant-dropdown-placement-topRight>.ant-dropdown-arrow{right:16px}.ant-dropdown-placement-bottom>.ant-dropdown-arrow,.ant-dropdown-placement-bottomLeft>.ant-dropdown-arrow,.ant-dropdown-placement-bottomRight>.ant-dropdown-arrow{top:9.41px;box-shadow:2px 2px 5px -2px rgba(0,0,0,.1);transform:rotate(-135deg) translateY(-.5px)}.ant-dropdown-placement-bottom>.ant-dropdown-arrow{left:50%;transform:translateX(-50%) rotate(-135deg) translateY(-.5px)}.ant-dropdown-placement-bottomLeft>.ant-dropdown-arrow{left:16px}.ant-dropdown-placement-bottomRight>.ant-dropdown-arrow{right:16px}.ant-dropdown-menu{position:relative;margin:0;padding:4px 0;text-align:left;list-style-type:none;background-color:#1f1f1f;background-clip:padding-box;border-radius:2px;outline:0;box-shadow:0 3px 6px -4px rgba(0,0,0,.48),0 6px 16px 0 rgba(0,0,0,.32),0 9px 28px 8px rgba(0,0,0,.2)}.ant-input,.ant-input-affix-wrapper{border:1px solid #434343;font-size:14px}.ant-dropdown-menu-item-group-title{padding:5px 12px;color:rgba(255,255,255,.45);transition:all .3s}.ant-dropdown-menu-submenu-popup{position:absolute;z-index:1050;background:0 0;box-shadow:none;transform-origin:0 0}.ant-dropdown-menu-submenu-popup li,.ant-dropdown-menu-submenu-popup ul{list-style:none}.ant-dropdown-menu-submenu-popup ul{margin-right:.3em;margin-left:.3em}.ant-dropdown-menu-item{position:relative;display:flex;align-items:center}.ant-dropdown-button.ant-btn-group>.ant-btn-loading+.ant-btn::before,nz-empty{display:block}.ant-dropdown-menu-item-icon{min-width:12px;margin-right:8px;font-size:12px}.ant-dropdown-menu-title-content{flex:auto}.ant-dropdown-menu-title-content>a{color:inherit;transition:all .3s}.ant-dropdown-menu-title-content>a:hover{color:inherit}.ant-dropdown-menu-title-content>a::after{position:absolute;top:0;right:0;bottom:0;left:0;content:''}.ant-dropdown-menu-item,.ant-dropdown-menu-submenu-title{clear:both;margin:0;padding:5px 12px;color:rgba(255,255,255,.85);font-weight:400;font-size:14px;line-height:22px;cursor:pointer;transition:all .3s}.ant-dropdown-menu-item-selected,.ant-dropdown-menu-submenu-title-selected{color:#177ddc;background-color:#111b26}.ant-dropdown-menu-item.ant-dropdown-menu-item-active,.ant-dropdown-menu-item.ant-dropdown-menu-submenu-title-active,.ant-dropdown-menu-item:hover,.ant-dropdown-menu-submenu-title.ant-dropdown-menu-item-active,.ant-dropdown-menu-submenu-title.ant-dropdown-menu-submenu-title-active,.ant-dropdown-menu-submenu-title:hover{background-color:rgba(255,255,255,.08)}.ant-dropdown-menu-item-disabled,.ant-dropdown-menu-submenu-title-disabled{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-dropdown-menu-item-disabled:hover,.ant-dropdown-menu-submenu-title-disabled:hover{color:rgba(255,255,255,.3);background-color:transparent;cursor:not-allowed}.ant-dropdown-menu-item-disabled a,.ant-dropdown-menu-submenu-title-disabled a{pointer-events:none}.ant-dropdown-menu-item-divider,.ant-dropdown-menu-submenu-title-divider{height:1px;margin:4px 0;overflow:hidden;line-height:0;background-color:#303030}.ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon,.ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon{position:absolute;right:8px}.ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon,.ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon{margin-right:0!important;color:rgba(255,255,255,.45);font-size:10px;font-style:normal}.ant-dropdown-menu-item-group-list{margin:0 8px;padding:0;list-style:none}.ant-dropdown-menu-submenu-title{padding-right:24px}.ant-dropdown-menu-submenu-vertical{position:relative}.ant-dropdown-menu-submenu-vertical>.ant-dropdown-menu{position:absolute;top:0;left:100%;min-width:100%;margin-left:4px;transform-origin:0 0}.ant-dropdown-menu-submenu.ant-dropdown-menu-submenu-disabled .ant-dropdown-menu-submenu-title,.ant-dropdown-menu-submenu.ant-dropdown-menu-submenu-disabled .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-arrow-icon{color:rgba(255,255,255,.3);background-color:transparent;cursor:not-allowed}.ant-dropdown-menu-submenu-selected .ant-dropdown-menu-submenu-title{color:#177ddc}.ant-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-dropdown-placement-top,.ant-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-dropdown-placement-topLeft,.ant-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-dropdown-placement-topRight,.ant-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-dropdown-placement-top,.ant-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-dropdown-placement-topLeft,.ant-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-dropdown-placement-topRight{animation-name:antSlideDownIn}.ant-dropdown.ant-slide-down-leave.ant-slide-down-leave-active.ant-dropdown-placement-bottom,.ant-dropdown.ant-slide-down-leave.ant-slide-down-leave-active.ant-dropdown-placement-bottomLeft,.ant-dropdown.ant-slide-down-leave.ant-slide-down-leave-active.ant-dropdown-placement-bottomRight{animation-name:antSlideUpOut}.ant-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-dropdown-placement-top,.ant-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-dropdown-placement-topLeft,.ant-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-dropdown-placement-topRight{animation-name:antSlideDownOut}.ant-dropdown-button>.anticon.anticon-down,.ant-dropdown-link>.anticon.anticon-down,.ant-dropdown-trigger>.anticon.anticon-down{font-size:10px;vertical-align:baseline}.ant-dropdown-button{white-space:nowrap}.ant-dropdown-button.ant-btn-group>.ant-btn-loading,.ant-dropdown-button.ant-btn-group>.ant-btn-loading+.ant-btn{cursor:default;pointer-events:none}.ant-dropdown-button.ant-btn-group>.ant-btn:last-child:not(:first-child):not(.ant-btn-icon-only){padding-right:8px;padding-left:8px}.ant-dropdown-menu-dark,.ant-dropdown-menu-dark .ant-dropdown-menu{background:#1f1f1f}.ant-dropdown-menu-dark .ant-dropdown-menu-item,.ant-dropdown-menu-dark .ant-dropdown-menu-item .ant-dropdown-menu-submenu-arrow::after,.ant-dropdown-menu-dark .ant-dropdown-menu-item>.anticon+span>a,.ant-dropdown-menu-dark .ant-dropdown-menu-item>.anticon+span>a .ant-dropdown-menu-submenu-arrow::after,.ant-dropdown-menu-dark .ant-dropdown-menu-item>a,.ant-dropdown-menu-dark .ant-dropdown-menu-item>a .ant-dropdown-menu-submenu-arrow::after,.ant-dropdown-menu-dark .ant-dropdown-menu-submenu-title,.ant-dropdown-menu-dark .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-arrow::after{color:rgba(255,255,255,.65)}.ant-dropdown-menu-dark .ant-dropdown-menu-item:hover,.ant-dropdown-menu-dark .ant-dropdown-menu-item>.anticon+span>a:hover,.ant-dropdown-menu-dark .ant-dropdown-menu-item>a:hover,.ant-dropdown-menu-dark .ant-dropdown-menu-submenu-title:hover{color:#fff;background:0 0}.ant-dropdown-menu-dark .ant-dropdown-menu-item-selected,.ant-dropdown-menu-dark .ant-dropdown-menu-item-selected:hover,.ant-dropdown-menu-dark .ant-dropdown-menu-item-selected>a{color:#fff;background:#177ddc}.ant-dropdown-rtl.ant-dropdown::before{right:-7px;left:0}.ant-dropdown-menu-submenu-rtl .ant-dropdown-menu-item-group-title,.ant-dropdown-menu.ant-dropdown-menu-rtl,.ant-dropdown-rtl .ant-dropdown-menu-item-group-title{text-align:right}.ant-dropdown-menu-submenu-popup.ant-dropdown-menu-submenu-rtl{transform-origin:100% 0}.ant-dropdown-rtl .ant-dropdown-menu-item,.ant-dropdown-rtl .ant-dropdown-menu-submenu-popup li,.ant-dropdown-rtl .ant-dropdown-menu-submenu-popup ul,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title{text-align:right}.ant-dropdown-rtl .ant-dropdown-menu-item>.anticon:first-child,.ant-dropdown-rtl .ant-dropdown-menu-item>span>.anticon:first-child,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title>.anticon:first-child,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title>span>.anticon:first-child{margin-right:0;margin-left:8px}.ant-dropdown-rtl .ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon{right:auto;left:8px}.ant-dropdown-rtl .ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon{margin-left:0!important;transform:scaleX(-1)}.ant-dropdown-rtl .ant-dropdown-menu-submenu-title{padding-right:12px;padding-left:24px}.ant-dropdown-rtl .ant-dropdown-menu-submenu-vertical>.ant-dropdown-menu{right:100%;left:0;margin-right:4px;margin-left:0}.ant-dropdown-menu>ul{list-style:inherit;margin:0;padding:0}.ant-dropdown{top:0;left:0;position:relative;width:100%;margin-top:6px;margin-bottom:6px}.ant-dropdown-rtl .ant-dropdown-menu-item .ant-dropdown-menu-submenu-arrow,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-arrow{transform:rotate(180deg)}.ant-empty{margin:0 8px;font-size:14px;line-height:1.5715;text-align:center}.ant-empty-image{height:100px;margin-bottom:8px}.ant-empty-image img{height:100%}.ant-empty-image svg{height:100%;margin:auto}.ant-empty-normal .ant-empty-image,.ant-input-group-lg .ant-select-single .ant-select-selector{height:40px}.ant-empty-footer{margin-top:16px}.ant-empty-normal{margin:32px 0;color:rgba(255,255,255,.3)}.ant-empty-small{margin:8px 0;color:rgba(255,255,255,.3)}.ant-empty-small .ant-empty-image{height:35px}.ant-empty-img-default-ellipse{fill:#fff;fill-opacity:.08}.ant-empty-img-default-path-1{fill:#262626}.ant-empty-img-default-path-2{fill:url(#linearGradient-1)}.ant-empty-img-default-path-3{fill:#595959}.ant-empty-img-default-path-4{fill:#434343}.ant-empty-img-default-path-5{fill:#595959}.ant-empty-img-default-g{fill:#434343}.ant-empty-img-simple-ellipse{fill:#fff;fill-opacity:.08}.ant-empty-img-simple-g{stroke:#434343}.ant-empty-img-simple-path{fill:#262626;stroke:#434343}.ant-row,.ant-row::after,.ant-row::before{display:flex}.ant-row{flex-flow:row wrap}.ant-col-1,.ant-col-10,.ant-col-11,.ant-col-12,.ant-col-13,.ant-col-14,.ant-col-15,.ant-col-16,.ant-col-17,.ant-col-18,.ant-col-19,.ant-col-2,.ant-col-20,.ant-col-21,.ant-col-22,.ant-col-23,.ant-col-24,.ant-col-3,.ant-col-4,.ant-col-5,.ant-col-6,.ant-col-7,.ant-col-8,.ant-col-9{display:block}.ant-row-no-wrap{flex-wrap:nowrap}.ant-row-start{justify-content:flex-start}.ant-row-center{justify-content:center}.ant-row-end{justify-content:flex-end}.ant-page-header-heading,.ant-row-space-between{justify-content:space-between}.ant-row-space-around{justify-content:space-around}.ant-row-space-evenly{justify-content:space-evenly}.ant-row-top{align-items:flex-start}.ant-row-middle{align-items:center}.ant-row-bottom{align-items:flex-end}.ant-col{position:relative;max-width:100%;min-height:1px}.ant-col-24{flex:0 0 100%;max-width:100%}.ant-col-push-24{left:100%}.ant-col-pull-24{right:100%}.ant-col-offset-24{margin-left:100%}.ant-col-order-24{order:24}.ant-col-23{flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-push-23{left:95.83333333%}.ant-col-pull-23{right:95.83333333%}.ant-col-offset-23{margin-left:95.83333333%}.ant-col-order-23{order:23}.ant-col-22{flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-push-22{left:91.66666667%}.ant-col-pull-22{right:91.66666667%}.ant-col-offset-22{margin-left:91.66666667%}.ant-col-order-22{order:22}.ant-col-21{flex:0 0 87.5%;max-width:87.5%}.ant-col-push-21{left:87.5%}.ant-col-pull-21{right:87.5%}.ant-col-offset-21{margin-left:87.5%}.ant-col-order-21{order:21}.ant-col-20{flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-push-20{left:83.33333333%}.ant-col-pull-20{right:83.33333333%}.ant-col-offset-20{margin-left:83.33333333%}.ant-col-order-20{order:20}.ant-col-19{flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-push-19{left:79.16666667%}.ant-col-pull-19{right:79.16666667%}.ant-col-offset-19{margin-left:79.16666667%}.ant-col-order-19{order:19}.ant-col-18{flex:0 0 75%;max-width:75%}.ant-col-push-18{left:75%}.ant-col-pull-18{right:75%}.ant-col-offset-18{margin-left:75%}.ant-col-order-18{order:18}.ant-col-17{flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-push-17{left:70.83333333%}.ant-col-pull-17{right:70.83333333%}.ant-col-offset-17{margin-left:70.83333333%}.ant-col-order-17{order:17}.ant-col-16{flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-push-16{left:66.66666667%}.ant-col-pull-16{right:66.66666667%}.ant-col-offset-16{margin-left:66.66666667%}.ant-col-order-16{order:16}.ant-col-15{flex:0 0 62.5%;max-width:62.5%}.ant-col-push-15{left:62.5%}.ant-col-pull-15{right:62.5%}.ant-col-offset-15{margin-left:62.5%}.ant-col-order-15{order:15}.ant-col-14{flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-push-14{left:58.33333333%}.ant-col-pull-14{right:58.33333333%}.ant-col-offset-14{margin-left:58.33333333%}.ant-col-order-14{order:14}.ant-col-13{flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-push-13{left:54.16666667%}.ant-col-pull-13{right:54.16666667%}.ant-col-offset-13{margin-left:54.16666667%}.ant-col-order-13{order:13}.ant-col-12{flex:0 0 50%;max-width:50%}.ant-col-push-12{left:50%}.ant-col-pull-12{right:50%}.ant-col-offset-12{margin-left:50%}.ant-col-order-12{order:12}.ant-col-11{flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-push-11{left:45.83333333%}.ant-col-pull-11{right:45.83333333%}.ant-col-offset-11{margin-left:45.83333333%}.ant-col-order-11{order:11}.ant-col-10{flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-push-10{left:41.66666667%}.ant-col-pull-10{right:41.66666667%}.ant-col-offset-10{margin-left:41.66666667%}.ant-col-order-10{order:10}.ant-col-9{flex:0 0 37.5%;max-width:37.5%}.ant-col-push-9{left:37.5%}.ant-col-pull-9{right:37.5%}.ant-col-offset-9{margin-left:37.5%}.ant-col-order-9{order:9}.ant-col-8{flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-push-8{left:33.33333333%}.ant-col-pull-8{right:33.33333333%}.ant-col-offset-8{margin-left:33.33333333%}.ant-col-order-8{order:8}.ant-col-7{flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-push-7{left:29.16666667%}.ant-col-pull-7{right:29.16666667%}.ant-col-offset-7{margin-left:29.16666667%}.ant-col-order-7{order:7}.ant-col-6{flex:0 0 25%;max-width:25%}.ant-col-push-6{left:25%}.ant-col-pull-6{right:25%}.ant-col-offset-6{margin-left:25%}.ant-col-order-6{order:6}.ant-col-5{flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-push-5{left:20.83333333%}.ant-col-pull-5{right:20.83333333%}.ant-col-offset-5{margin-left:20.83333333%}.ant-col-order-5{order:5}.ant-col-4{flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-push-4{left:16.66666667%}.ant-col-pull-4{right:16.66666667%}.ant-col-offset-4{margin-left:16.66666667%}.ant-col-order-4{order:4}.ant-col-3{flex:0 0 12.5%;max-width:12.5%}.ant-col-push-3{left:12.5%}.ant-col-pull-3{right:12.5%}.ant-col-offset-3{margin-left:12.5%}.ant-col-order-3{order:3}.ant-col-2{flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-push-2{left:8.33333333%}.ant-col-pull-2{right:8.33333333%}.ant-col-offset-2{margin-left:8.33333333%}.ant-col-order-2{order:2}.ant-col-1{flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-push-1{left:4.16666667%}.ant-col-pull-1{right:4.16666667%}.ant-col-offset-1{margin-left:4.16666667%}.ant-col-order-1{order:1}.ant-col-0{display:none}.ant-col-offset-0{margin-left:0}.ant-col-order-0{order:0}.ant-col-offset-0.ant-col-rtl{margin-right:0}.ant-col-push-1.ant-col-rtl{right:4.16666667%;left:auto}.ant-col-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}.ant-col-xs-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-xs-push-24{left:100%}.ant-col-xs-pull-24{right:100%}.ant-col-xs-offset-24{margin-left:100%}.ant-col-xs-order-24{order:24}.ant-col-xs-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-xs-push-23{left:95.83333333%}.ant-col-xs-pull-23{right:95.83333333%}.ant-col-xs-offset-23{margin-left:95.83333333%}.ant-col-xs-order-23{order:23}.ant-col-xs-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-xs-push-22{left:91.66666667%}.ant-col-xs-pull-22{right:91.66666667%}.ant-col-xs-offset-22{margin-left:91.66666667%}.ant-col-xs-order-22{order:22}.ant-col-xs-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-xs-push-21{left:87.5%}.ant-col-xs-pull-21{right:87.5%}.ant-col-xs-offset-21{margin-left:87.5%}.ant-col-xs-order-21{order:21}.ant-col-xs-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-xs-push-20{left:83.33333333%}.ant-col-xs-pull-20{right:83.33333333%}.ant-col-xs-offset-20{margin-left:83.33333333%}.ant-col-xs-order-20{order:20}.ant-col-xs-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-xs-push-19{left:79.16666667%}.ant-col-xs-pull-19{right:79.16666667%}.ant-col-xs-offset-19{margin-left:79.16666667%}.ant-col-xs-order-19{order:19}.ant-col-xs-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-xs-push-18{left:75%}.ant-col-xs-pull-18{right:75%}.ant-col-xs-offset-18{margin-left:75%}.ant-col-xs-order-18{order:18}.ant-col-xs-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-xs-push-17{left:70.83333333%}.ant-col-xs-pull-17{right:70.83333333%}.ant-col-xs-offset-17{margin-left:70.83333333%}.ant-col-xs-order-17{order:17}.ant-col-xs-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-xs-push-16{left:66.66666667%}.ant-col-xs-pull-16{right:66.66666667%}.ant-col-xs-offset-16{margin-left:66.66666667%}.ant-col-xs-order-16{order:16}.ant-col-xs-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-xs-push-15{left:62.5%}.ant-col-xs-pull-15{right:62.5%}.ant-col-xs-offset-15{margin-left:62.5%}.ant-col-xs-order-15{order:15}.ant-col-xs-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-xs-push-14{left:58.33333333%}.ant-col-xs-pull-14{right:58.33333333%}.ant-col-xs-offset-14{margin-left:58.33333333%}.ant-col-xs-order-14{order:14}.ant-col-xs-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-xs-push-13{left:54.16666667%}.ant-col-xs-pull-13{right:54.16666667%}.ant-col-xs-offset-13{margin-left:54.16666667%}.ant-col-xs-order-13{order:13}.ant-col-xs-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-xs-push-12{left:50%}.ant-col-xs-pull-12{right:50%}.ant-col-xs-offset-12{margin-left:50%}.ant-col-xs-order-12{order:12}.ant-col-xs-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-xs-push-11{left:45.83333333%}.ant-col-xs-pull-11{right:45.83333333%}.ant-col-xs-offset-11{margin-left:45.83333333%}.ant-col-xs-order-11{order:11}.ant-col-xs-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-xs-push-10{left:41.66666667%}.ant-col-xs-pull-10{right:41.66666667%}.ant-col-xs-offset-10{margin-left:41.66666667%}.ant-col-xs-order-10{order:10}.ant-col-xs-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-xs-push-9{left:37.5%}.ant-col-xs-pull-9{right:37.5%}.ant-col-xs-offset-9{margin-left:37.5%}.ant-col-xs-order-9{order:9}.ant-col-xs-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-xs-push-8{left:33.33333333%}.ant-col-xs-pull-8{right:33.33333333%}.ant-col-xs-offset-8{margin-left:33.33333333%}.ant-col-xs-order-8{order:8}.ant-col-xs-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-xs-push-7{left:29.16666667%}.ant-col-xs-pull-7{right:29.16666667%}.ant-col-xs-offset-7{margin-left:29.16666667%}.ant-col-xs-order-7{order:7}.ant-col-xs-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-xs-push-6{left:25%}.ant-col-xs-pull-6{right:25%}.ant-col-xs-offset-6{margin-left:25%}.ant-col-xs-order-6{order:6}.ant-col-xs-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-xs-push-5{left:20.83333333%}.ant-col-xs-pull-5{right:20.83333333%}.ant-col-xs-offset-5{margin-left:20.83333333%}.ant-col-xs-order-5{order:5}.ant-col-xs-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-xs-push-4{left:16.66666667%}.ant-col-xs-pull-4{right:16.66666667%}.ant-col-xs-offset-4{margin-left:16.66666667%}.ant-col-xs-order-4{order:4}.ant-col-xs-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-xs-push-3{left:12.5%}.ant-col-xs-pull-3{right:12.5%}.ant-col-xs-offset-3{margin-left:12.5%}.ant-col-xs-order-3{order:3}.ant-col-xs-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-xs-push-2{left:8.33333333%}.ant-col-xs-pull-2{right:8.33333333%}.ant-col-xs-offset-2{margin-left:8.33333333%}.ant-col-xs-order-2{order:2}.ant-col-xs-order-1,.ant-layout-sider-right,.ant-tabs-rtl.ant-tabs-left>.ant-tabs-nav{order:1}.ant-col-xs-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-xs-push-1{left:4.16666667%}.ant-col-pull-0.ant-col-rtl,.ant-col-push-0,.ant-col-xs-pull-0.ant-col-rtl,.ant-col-xs-push-0,.ant-col-xs-push-1.ant-col-rtl{left:auto}.ant-col-xs-pull-1{right:4.16666667%}.ant-col-pull-0,.ant-col-push-0.ant-col-rtl,.ant-col-xs-pull-0,.ant-col-xs-push-0.ant-col-rtl{right:auto}.ant-col-xs-offset-1{margin-left:4.16666667%}.ant-col-xs-0{display:none}.ant-col-xs-offset-0{margin-left:0}.ant-col-xs-order-0{order:0}.ant-col-xs-offset-0.ant-col-rtl{margin-right:0}.ant-col-xs-push-1.ant-col-rtl{right:4.16666667%}.ant-col-xs-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-xs-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-xs-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-xs-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-xs-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-xs-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-xs-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-xs-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-xs-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-xs-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-xs-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-xs-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-xs-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-xs-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-xs-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-xs-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-xs-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-xs-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-xs-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-xs-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-xs-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-xs-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-xs-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-xs-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-xs-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-xs-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-xs-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-xs-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-xs-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-xs-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-xs-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-xs-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-xs-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-xs-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-xs-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-xs-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-xs-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-xs-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-xs-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-xs-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-xs-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-xs-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-xs-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-xs-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-xs-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-xs-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-xs-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-xs-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-xs-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-xs-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-xs-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-xs-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-xs-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-xs-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-xs-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-xs-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-xs-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-xs-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-xs-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-xs-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-xs-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-xs-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-xs-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-xs-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-xs-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-xs-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-xs-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-xs-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-xs-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-xs-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-xs-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}@media (min-width:576px){.ant-col-sm-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-sm-push-24{left:100%}.ant-col-sm-pull-24{right:100%}.ant-col-sm-offset-24{margin-left:100%}.ant-col-sm-order-24{order:24}.ant-col-sm-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-sm-push-23{left:95.83333333%}.ant-col-sm-pull-23{right:95.83333333%}.ant-col-sm-offset-23{margin-left:95.83333333%}.ant-col-sm-order-23{order:23}.ant-col-sm-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-sm-push-22{left:91.66666667%}.ant-col-sm-pull-22{right:91.66666667%}.ant-col-sm-offset-22{margin-left:91.66666667%}.ant-col-sm-order-22{order:22}.ant-col-sm-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-sm-push-21{left:87.5%}.ant-col-sm-pull-21{right:87.5%}.ant-col-sm-offset-21{margin-left:87.5%}.ant-col-sm-order-21{order:21}.ant-col-sm-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-sm-push-20{left:83.33333333%}.ant-col-sm-pull-20{right:83.33333333%}.ant-col-sm-offset-20{margin-left:83.33333333%}.ant-col-sm-order-20{order:20}.ant-col-sm-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-sm-push-19{left:79.16666667%}.ant-col-sm-pull-19{right:79.16666667%}.ant-col-sm-offset-19{margin-left:79.16666667%}.ant-col-sm-order-19{order:19}.ant-col-sm-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-sm-push-18{left:75%}.ant-col-sm-pull-18{right:75%}.ant-col-sm-offset-18{margin-left:75%}.ant-col-sm-order-18{order:18}.ant-col-sm-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-sm-push-17{left:70.83333333%}.ant-col-sm-pull-17{right:70.83333333%}.ant-col-sm-offset-17{margin-left:70.83333333%}.ant-col-sm-order-17{order:17}.ant-col-sm-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-sm-push-16{left:66.66666667%}.ant-col-sm-pull-16{right:66.66666667%}.ant-col-sm-offset-16{margin-left:66.66666667%}.ant-col-sm-order-16{order:16}.ant-col-sm-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-sm-push-15{left:62.5%}.ant-col-sm-pull-15{right:62.5%}.ant-col-sm-offset-15{margin-left:62.5%}.ant-col-sm-order-15{order:15}.ant-col-sm-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-sm-push-14{left:58.33333333%}.ant-col-sm-pull-14{right:58.33333333%}.ant-col-sm-offset-14{margin-left:58.33333333%}.ant-col-sm-order-14{order:14}.ant-col-sm-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-sm-push-13{left:54.16666667%}.ant-col-sm-pull-13{right:54.16666667%}.ant-col-sm-offset-13{margin-left:54.16666667%}.ant-col-sm-order-13{order:13}.ant-col-sm-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-sm-push-12{left:50%}.ant-col-sm-pull-12{right:50%}.ant-col-sm-offset-12{margin-left:50%}.ant-col-sm-order-12{order:12}.ant-col-sm-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-sm-push-11{left:45.83333333%}.ant-col-sm-pull-11{right:45.83333333%}.ant-col-sm-offset-11{margin-left:45.83333333%}.ant-col-sm-order-11{order:11}.ant-col-sm-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-sm-push-10{left:41.66666667%}.ant-col-sm-pull-10{right:41.66666667%}.ant-col-sm-offset-10{margin-left:41.66666667%}.ant-col-sm-order-10{order:10}.ant-col-sm-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-sm-push-9{left:37.5%}.ant-col-sm-pull-9{right:37.5%}.ant-col-sm-offset-9{margin-left:37.5%}.ant-col-sm-order-9{order:9}.ant-col-sm-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-sm-push-8{left:33.33333333%}.ant-col-sm-pull-8{right:33.33333333%}.ant-col-sm-offset-8{margin-left:33.33333333%}.ant-col-sm-order-8{order:8}.ant-col-sm-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-sm-push-7{left:29.16666667%}.ant-col-sm-pull-7{right:29.16666667%}.ant-col-sm-offset-7{margin-left:29.16666667%}.ant-col-sm-order-7{order:7}.ant-col-sm-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-sm-push-6{left:25%}.ant-col-sm-pull-6{right:25%}.ant-col-sm-offset-6{margin-left:25%}.ant-col-sm-order-6{order:6}.ant-col-sm-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-sm-push-5{left:20.83333333%}.ant-col-sm-pull-5{right:20.83333333%}.ant-col-sm-offset-5{margin-left:20.83333333%}.ant-col-sm-order-5{order:5}.ant-col-sm-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-sm-push-4{left:16.66666667%}.ant-col-sm-pull-4{right:16.66666667%}.ant-col-sm-offset-4{margin-left:16.66666667%}.ant-col-sm-order-4{order:4}.ant-col-sm-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-sm-push-3{left:12.5%}.ant-col-sm-pull-3{right:12.5%}.ant-col-sm-offset-3{margin-left:12.5%}.ant-col-sm-order-3{order:3}.ant-col-sm-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-sm-push-2{left:8.33333333%}.ant-col-sm-pull-2{right:8.33333333%}.ant-col-sm-offset-2{margin-left:8.33333333%}.ant-col-sm-order-2{order:2}.ant-col-sm-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-sm-push-1{left:4.16666667%}.ant-col-pull-0.ant-col-rtl,.ant-col-push-0,.ant-col-sm-pull-0.ant-col-rtl,.ant-col-sm-push-0,.ant-col-sm-push-1.ant-col-rtl{left:auto}.ant-col-sm-pull-1{right:4.16666667%}.ant-col-pull-0,.ant-col-push-0.ant-col-rtl,.ant-col-sm-pull-0,.ant-col-sm-push-0.ant-col-rtl{right:auto}.ant-col-sm-offset-1{margin-left:4.16666667%}.ant-col-sm-order-1{order:1}.ant-col-sm-0{display:none}.ant-col-sm-offset-0{margin-left:0}.ant-col-sm-order-0{order:0}.ant-col-sm-offset-0.ant-col-rtl{margin-right:0}.ant-col-sm-push-1.ant-col-rtl{right:4.16666667%}.ant-col-sm-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-sm-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-sm-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-sm-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-sm-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-sm-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-sm-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-sm-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-sm-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-sm-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-sm-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-sm-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-sm-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-sm-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-sm-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-sm-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-sm-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-sm-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-sm-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-sm-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-sm-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-sm-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-sm-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-sm-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-sm-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-sm-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-sm-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-sm-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-sm-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-sm-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-sm-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-sm-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-sm-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-sm-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-sm-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-sm-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-sm-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-sm-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-sm-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-sm-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-sm-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-sm-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-sm-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-sm-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-sm-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-sm-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-sm-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-sm-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-sm-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-sm-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-sm-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-sm-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-sm-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-sm-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-sm-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-sm-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-sm-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-sm-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-sm-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-sm-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-sm-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-sm-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-sm-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-sm-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-sm-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-sm-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-sm-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-sm-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-sm-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-sm-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-sm-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}@media (min-width:768px){.ant-col-md-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-md-push-24{left:100%}.ant-col-md-pull-24{right:100%}.ant-col-md-offset-24{margin-left:100%}.ant-col-md-order-24{order:24}.ant-col-md-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-md-push-23{left:95.83333333%}.ant-col-md-pull-23{right:95.83333333%}.ant-col-md-offset-23{margin-left:95.83333333%}.ant-col-md-order-23{order:23}.ant-col-md-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-md-push-22{left:91.66666667%}.ant-col-md-pull-22{right:91.66666667%}.ant-col-md-offset-22{margin-left:91.66666667%}.ant-col-md-order-22{order:22}.ant-col-md-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-md-push-21{left:87.5%}.ant-col-md-pull-21{right:87.5%}.ant-col-md-offset-21{margin-left:87.5%}.ant-col-md-order-21{order:21}.ant-col-md-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-md-push-20{left:83.33333333%}.ant-col-md-pull-20{right:83.33333333%}.ant-col-md-offset-20{margin-left:83.33333333%}.ant-col-md-order-20{order:20}.ant-col-md-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-md-push-19{left:79.16666667%}.ant-col-md-pull-19{right:79.16666667%}.ant-col-md-offset-19{margin-left:79.16666667%}.ant-col-md-order-19{order:19}.ant-col-md-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-md-push-18{left:75%}.ant-col-md-pull-18{right:75%}.ant-col-md-offset-18{margin-left:75%}.ant-col-md-order-18{order:18}.ant-col-md-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-md-push-17{left:70.83333333%}.ant-col-md-pull-17{right:70.83333333%}.ant-col-md-offset-17{margin-left:70.83333333%}.ant-col-md-order-17{order:17}.ant-col-md-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-md-push-16{left:66.66666667%}.ant-col-md-pull-16{right:66.66666667%}.ant-col-md-offset-16{margin-left:66.66666667%}.ant-col-md-order-16{order:16}.ant-col-md-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-md-push-15{left:62.5%}.ant-col-md-pull-15{right:62.5%}.ant-col-md-offset-15{margin-left:62.5%}.ant-col-md-order-15{order:15}.ant-col-md-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-md-push-14{left:58.33333333%}.ant-col-md-pull-14{right:58.33333333%}.ant-col-md-offset-14{margin-left:58.33333333%}.ant-col-md-order-14{order:14}.ant-col-md-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-md-push-13{left:54.16666667%}.ant-col-md-pull-13{right:54.16666667%}.ant-col-md-offset-13{margin-left:54.16666667%}.ant-col-md-order-13{order:13}.ant-col-md-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-md-push-12{left:50%}.ant-col-md-pull-12{right:50%}.ant-col-md-offset-12{margin-left:50%}.ant-col-md-order-12{order:12}.ant-col-md-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-md-push-11{left:45.83333333%}.ant-col-md-pull-11{right:45.83333333%}.ant-col-md-offset-11{margin-left:45.83333333%}.ant-col-md-order-11{order:11}.ant-col-md-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-md-push-10{left:41.66666667%}.ant-col-md-pull-10{right:41.66666667%}.ant-col-md-offset-10{margin-left:41.66666667%}.ant-col-md-order-10{order:10}.ant-col-md-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-md-push-9{left:37.5%}.ant-col-md-pull-9{right:37.5%}.ant-col-md-offset-9{margin-left:37.5%}.ant-col-md-order-9{order:9}.ant-col-md-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-md-push-8{left:33.33333333%}.ant-col-md-pull-8{right:33.33333333%}.ant-col-md-offset-8{margin-left:33.33333333%}.ant-col-md-order-8{order:8}.ant-col-md-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-md-push-7{left:29.16666667%}.ant-col-md-pull-7{right:29.16666667%}.ant-col-md-offset-7{margin-left:29.16666667%}.ant-col-md-order-7{order:7}.ant-col-md-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-md-push-6{left:25%}.ant-col-md-pull-6{right:25%}.ant-col-md-offset-6{margin-left:25%}.ant-col-md-order-6{order:6}.ant-col-md-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-md-push-5{left:20.83333333%}.ant-col-md-pull-5{right:20.83333333%}.ant-col-md-offset-5{margin-left:20.83333333%}.ant-col-md-order-5{order:5}.ant-col-md-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-md-push-4{left:16.66666667%}.ant-col-md-pull-4{right:16.66666667%}.ant-col-md-offset-4{margin-left:16.66666667%}.ant-col-md-order-4{order:4}.ant-col-md-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-md-push-3{left:12.5%}.ant-col-md-pull-3{right:12.5%}.ant-col-md-offset-3{margin-left:12.5%}.ant-col-md-order-3{order:3}.ant-col-md-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-md-push-2{left:8.33333333%}.ant-col-md-pull-2{right:8.33333333%}.ant-col-md-offset-2{margin-left:8.33333333%}.ant-col-md-order-2{order:2}.ant-col-md-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-md-push-1{left:4.16666667%}.ant-col-md-pull-0.ant-col-rtl,.ant-col-md-push-0,.ant-col-md-push-1.ant-col-rtl,.ant-col-pull-0.ant-col-rtl,.ant-col-push-0{left:auto}.ant-col-md-pull-1{right:4.16666667%}.ant-col-md-pull-0,.ant-col-md-push-0.ant-col-rtl,.ant-col-pull-0,.ant-col-push-0.ant-col-rtl{right:auto}.ant-col-md-offset-1{margin-left:4.16666667%}.ant-col-md-order-1{order:1}.ant-col-md-0{display:none}.ant-col-md-offset-0{margin-left:0}.ant-col-md-order-0{order:0}.ant-col-md-offset-0.ant-col-rtl{margin-right:0}.ant-col-md-push-1.ant-col-rtl{right:4.16666667%}.ant-col-md-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-md-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-md-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-md-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-md-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-md-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-md-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-md-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-md-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-md-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-md-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-md-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-md-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-md-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-md-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-md-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-md-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-md-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-md-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-md-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-md-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-md-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-md-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-md-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-md-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-md-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-md-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-md-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-md-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-md-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-md-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-md-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-md-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-md-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-md-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-md-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-md-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-md-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-md-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-md-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-md-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-md-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-md-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-md-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-md-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-md-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-md-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-md-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-md-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-md-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-md-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-md-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-md-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-md-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-md-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-md-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-md-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-md-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-md-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-md-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-md-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-md-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-md-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-md-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-md-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-md-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-md-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-md-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-md-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-md-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-md-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}@media (min-width:992px){.ant-col-lg-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-lg-push-24{left:100%}.ant-col-lg-pull-24{right:100%}.ant-col-lg-offset-24{margin-left:100%}.ant-col-lg-order-24{order:24}.ant-col-lg-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-lg-push-23{left:95.83333333%}.ant-col-lg-pull-23{right:95.83333333%}.ant-col-lg-offset-23{margin-left:95.83333333%}.ant-col-lg-order-23{order:23}.ant-col-lg-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-lg-push-22{left:91.66666667%}.ant-col-lg-pull-22{right:91.66666667%}.ant-col-lg-offset-22{margin-left:91.66666667%}.ant-col-lg-order-22{order:22}.ant-col-lg-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-lg-push-21{left:87.5%}.ant-col-lg-pull-21{right:87.5%}.ant-col-lg-offset-21{margin-left:87.5%}.ant-col-lg-order-21{order:21}.ant-col-lg-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-lg-push-20{left:83.33333333%}.ant-col-lg-pull-20{right:83.33333333%}.ant-col-lg-offset-20{margin-left:83.33333333%}.ant-col-lg-order-20{order:20}.ant-col-lg-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-lg-push-19{left:79.16666667%}.ant-col-lg-pull-19{right:79.16666667%}.ant-col-lg-offset-19{margin-left:79.16666667%}.ant-col-lg-order-19{order:19}.ant-col-lg-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-lg-push-18{left:75%}.ant-col-lg-pull-18{right:75%}.ant-col-lg-offset-18{margin-left:75%}.ant-col-lg-order-18{order:18}.ant-col-lg-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-lg-push-17{left:70.83333333%}.ant-col-lg-pull-17{right:70.83333333%}.ant-col-lg-offset-17{margin-left:70.83333333%}.ant-col-lg-order-17{order:17}.ant-col-lg-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-lg-push-16{left:66.66666667%}.ant-col-lg-pull-16{right:66.66666667%}.ant-col-lg-offset-16{margin-left:66.66666667%}.ant-col-lg-order-16{order:16}.ant-col-lg-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-lg-push-15{left:62.5%}.ant-col-lg-pull-15{right:62.5%}.ant-col-lg-offset-15{margin-left:62.5%}.ant-col-lg-order-15{order:15}.ant-col-lg-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-lg-push-14{left:58.33333333%}.ant-col-lg-pull-14{right:58.33333333%}.ant-col-lg-offset-14{margin-left:58.33333333%}.ant-col-lg-order-14{order:14}.ant-col-lg-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-lg-push-13{left:54.16666667%}.ant-col-lg-pull-13{right:54.16666667%}.ant-col-lg-offset-13{margin-left:54.16666667%}.ant-col-lg-order-13{order:13}.ant-col-lg-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-lg-push-12{left:50%}.ant-col-lg-pull-12{right:50%}.ant-col-lg-offset-12{margin-left:50%}.ant-col-lg-order-12{order:12}.ant-col-lg-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-lg-push-11{left:45.83333333%}.ant-col-lg-pull-11{right:45.83333333%}.ant-col-lg-offset-11{margin-left:45.83333333%}.ant-col-lg-order-11{order:11}.ant-col-lg-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-lg-push-10{left:41.66666667%}.ant-col-lg-pull-10{right:41.66666667%}.ant-col-lg-offset-10{margin-left:41.66666667%}.ant-col-lg-order-10{order:10}.ant-col-lg-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-lg-push-9{left:37.5%}.ant-col-lg-pull-9{right:37.5%}.ant-col-lg-offset-9{margin-left:37.5%}.ant-col-lg-order-9{order:9}.ant-col-lg-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-lg-push-8{left:33.33333333%}.ant-col-lg-pull-8{right:33.33333333%}.ant-col-lg-offset-8{margin-left:33.33333333%}.ant-col-lg-order-8{order:8}.ant-col-lg-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-lg-push-7{left:29.16666667%}.ant-col-lg-pull-7{right:29.16666667%}.ant-col-lg-offset-7{margin-left:29.16666667%}.ant-col-lg-order-7{order:7}.ant-col-lg-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-lg-push-6{left:25%}.ant-col-lg-pull-6{right:25%}.ant-col-lg-offset-6{margin-left:25%}.ant-col-lg-order-6{order:6}.ant-col-lg-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-lg-push-5{left:20.83333333%}.ant-col-lg-pull-5{right:20.83333333%}.ant-col-lg-offset-5{margin-left:20.83333333%}.ant-col-lg-order-5{order:5}.ant-col-lg-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-lg-push-4{left:16.66666667%}.ant-col-lg-pull-4{right:16.66666667%}.ant-col-lg-offset-4{margin-left:16.66666667%}.ant-col-lg-order-4{order:4}.ant-col-lg-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-lg-push-3{left:12.5%}.ant-col-lg-pull-3{right:12.5%}.ant-col-lg-offset-3{margin-left:12.5%}.ant-col-lg-order-3{order:3}.ant-col-lg-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-lg-push-2{left:8.33333333%}.ant-col-lg-pull-2{right:8.33333333%}.ant-col-lg-offset-2{margin-left:8.33333333%}.ant-col-lg-order-2{order:2}.ant-col-lg-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-lg-push-1{left:4.16666667%}.ant-col-lg-pull-0.ant-col-rtl,.ant-col-lg-push-0,.ant-col-lg-push-1.ant-col-rtl,.ant-col-pull-0.ant-col-rtl,.ant-col-push-0{left:auto}.ant-col-lg-pull-1{right:4.16666667%}.ant-col-lg-pull-0,.ant-col-lg-push-0.ant-col-rtl,.ant-col-pull-0,.ant-col-push-0.ant-col-rtl{right:auto}.ant-col-lg-offset-1{margin-left:4.16666667%}.ant-col-lg-order-1{order:1}.ant-col-lg-0{display:none}.ant-col-lg-offset-0{margin-left:0}.ant-col-lg-order-0{order:0}.ant-col-lg-offset-0.ant-col-rtl{margin-right:0}.ant-col-lg-push-1.ant-col-rtl{right:4.16666667%}.ant-col-lg-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-lg-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-lg-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-lg-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-lg-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-lg-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-lg-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-lg-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-lg-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-lg-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-lg-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-lg-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-lg-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-lg-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-lg-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-lg-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-lg-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-lg-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-lg-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-lg-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-lg-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-lg-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-lg-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-lg-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-lg-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-lg-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-lg-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-lg-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-lg-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-lg-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-lg-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-lg-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-lg-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-lg-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-lg-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-lg-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-lg-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-lg-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-lg-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-lg-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-lg-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-lg-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-lg-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-lg-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-lg-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-lg-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-lg-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-lg-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-lg-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-lg-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-lg-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-lg-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-lg-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-lg-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-lg-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-lg-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-lg-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-lg-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-lg-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-lg-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-lg-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-lg-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-lg-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-lg-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-lg-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-lg-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-lg-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-lg-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-lg-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-lg-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-lg-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}@media (min-width:1200px){.ant-col-xl-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-xl-push-24{left:100%}.ant-col-xl-pull-24{right:100%}.ant-col-xl-offset-24{margin-left:100%}.ant-col-xl-order-24{order:24}.ant-col-xl-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-xl-push-23{left:95.83333333%}.ant-col-xl-pull-23{right:95.83333333%}.ant-col-xl-offset-23{margin-left:95.83333333%}.ant-col-xl-order-23{order:23}.ant-col-xl-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-xl-push-22{left:91.66666667%}.ant-col-xl-pull-22{right:91.66666667%}.ant-col-xl-offset-22{margin-left:91.66666667%}.ant-col-xl-order-22{order:22}.ant-col-xl-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-xl-push-21{left:87.5%}.ant-col-xl-pull-21{right:87.5%}.ant-col-xl-offset-21{margin-left:87.5%}.ant-col-xl-order-21{order:21}.ant-col-xl-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-xl-push-20{left:83.33333333%}.ant-col-xl-pull-20{right:83.33333333%}.ant-col-xl-offset-20{margin-left:83.33333333%}.ant-col-xl-order-20{order:20}.ant-col-xl-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-xl-push-19{left:79.16666667%}.ant-col-xl-pull-19{right:79.16666667%}.ant-col-xl-offset-19{margin-left:79.16666667%}.ant-col-xl-order-19{order:19}.ant-col-xl-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-xl-push-18{left:75%}.ant-col-xl-pull-18{right:75%}.ant-col-xl-offset-18{margin-left:75%}.ant-col-xl-order-18{order:18}.ant-col-xl-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-xl-push-17{left:70.83333333%}.ant-col-xl-pull-17{right:70.83333333%}.ant-col-xl-offset-17{margin-left:70.83333333%}.ant-col-xl-order-17{order:17}.ant-col-xl-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-xl-push-16{left:66.66666667%}.ant-col-xl-pull-16{right:66.66666667%}.ant-col-xl-offset-16{margin-left:66.66666667%}.ant-col-xl-order-16{order:16}.ant-col-xl-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-xl-push-15{left:62.5%}.ant-col-xl-pull-15{right:62.5%}.ant-col-xl-offset-15{margin-left:62.5%}.ant-col-xl-order-15{order:15}.ant-col-xl-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-xl-push-14{left:58.33333333%}.ant-col-xl-pull-14{right:58.33333333%}.ant-col-xl-offset-14{margin-left:58.33333333%}.ant-col-xl-order-14{order:14}.ant-col-xl-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-xl-push-13{left:54.16666667%}.ant-col-xl-pull-13{right:54.16666667%}.ant-col-xl-offset-13{margin-left:54.16666667%}.ant-col-xl-order-13{order:13}.ant-col-xl-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-xl-push-12{left:50%}.ant-col-xl-pull-12{right:50%}.ant-col-xl-offset-12{margin-left:50%}.ant-col-xl-order-12{order:12}.ant-col-xl-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-xl-push-11{left:45.83333333%}.ant-col-xl-pull-11{right:45.83333333%}.ant-col-xl-offset-11{margin-left:45.83333333%}.ant-col-xl-order-11{order:11}.ant-col-xl-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-xl-push-10{left:41.66666667%}.ant-col-xl-pull-10{right:41.66666667%}.ant-col-xl-offset-10{margin-left:41.66666667%}.ant-col-xl-order-10{order:10}.ant-col-xl-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-xl-push-9{left:37.5%}.ant-col-xl-pull-9{right:37.5%}.ant-col-xl-offset-9{margin-left:37.5%}.ant-col-xl-order-9{order:9}.ant-col-xl-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-xl-push-8{left:33.33333333%}.ant-col-xl-pull-8{right:33.33333333%}.ant-col-xl-offset-8{margin-left:33.33333333%}.ant-col-xl-order-8{order:8}.ant-col-xl-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-xl-push-7{left:29.16666667%}.ant-col-xl-pull-7{right:29.16666667%}.ant-col-xl-offset-7{margin-left:29.16666667%}.ant-col-xl-order-7{order:7}.ant-col-xl-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-xl-push-6{left:25%}.ant-col-xl-pull-6{right:25%}.ant-col-xl-offset-6{margin-left:25%}.ant-col-xl-order-6{order:6}.ant-col-xl-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-xl-push-5{left:20.83333333%}.ant-col-xl-pull-5{right:20.83333333%}.ant-col-xl-offset-5{margin-left:20.83333333%}.ant-col-xl-order-5{order:5}.ant-col-xl-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-xl-push-4{left:16.66666667%}.ant-col-xl-pull-4{right:16.66666667%}.ant-col-xl-offset-4{margin-left:16.66666667%}.ant-col-xl-order-4{order:4}.ant-col-xl-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-xl-push-3{left:12.5%}.ant-col-xl-pull-3{right:12.5%}.ant-col-xl-offset-3{margin-left:12.5%}.ant-col-xl-order-3{order:3}.ant-col-xl-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-xl-push-2{left:8.33333333%}.ant-col-xl-pull-2{right:8.33333333%}.ant-col-xl-offset-2{margin-left:8.33333333%}.ant-col-xl-order-2{order:2}.ant-col-xl-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-xl-push-1{left:4.16666667%}.ant-col-pull-0.ant-col-rtl,.ant-col-push-0,.ant-col-xl-pull-0.ant-col-rtl,.ant-col-xl-push-0,.ant-col-xl-push-1.ant-col-rtl{left:auto}.ant-col-xl-pull-1{right:4.16666667%}.ant-col-pull-0,.ant-col-push-0.ant-col-rtl,.ant-col-xl-pull-0,.ant-col-xl-push-0.ant-col-rtl{right:auto}.ant-col-xl-offset-1{margin-left:4.16666667%}.ant-col-xl-order-1{order:1}.ant-col-xl-0{display:none}.ant-col-xl-offset-0{margin-left:0}.ant-col-xl-order-0{order:0}.ant-col-xl-offset-0.ant-col-rtl{margin-right:0}.ant-col-xl-push-1.ant-col-rtl{right:4.16666667%}.ant-col-xl-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-xl-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-xl-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-xl-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-xl-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-xl-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-xl-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-xl-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-xl-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-xl-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-xl-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-xl-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-xl-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-xl-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-xl-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-xl-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-xl-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-xl-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-xl-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-xl-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-xl-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-xl-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-xl-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-xl-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-xl-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-xl-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-xl-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-xl-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-xl-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-xl-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-xl-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-xl-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-xl-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-xl-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-xl-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-xl-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-xl-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-xl-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-xl-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-xl-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-xl-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-xl-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-xl-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-xl-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-xl-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-xl-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-xl-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-xl-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-xl-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-xl-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-xl-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-xl-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-xl-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-xl-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-xl-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-xl-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-xl-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-xl-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-xl-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-xl-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-xl-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-xl-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-xl-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-xl-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-xl-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-xl-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-xl-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-xl-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-xl-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-xl-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-xl-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}@media (min-width:1600px){.ant-col-xxl-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-xxl-push-24{left:100%}.ant-col-xxl-pull-24{right:100%}.ant-col-xxl-offset-24{margin-left:100%}.ant-col-xxl-order-24{order:24}.ant-col-xxl-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-xxl-push-23{left:95.83333333%}.ant-col-xxl-pull-23{right:95.83333333%}.ant-col-xxl-offset-23{margin-left:95.83333333%}.ant-col-xxl-order-23{order:23}.ant-col-xxl-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-xxl-push-22{left:91.66666667%}.ant-col-xxl-pull-22{right:91.66666667%}.ant-col-xxl-offset-22{margin-left:91.66666667%}.ant-col-xxl-order-22{order:22}.ant-col-xxl-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-xxl-push-21{left:87.5%}.ant-col-xxl-pull-21{right:87.5%}.ant-col-xxl-offset-21{margin-left:87.5%}.ant-col-xxl-order-21{order:21}.ant-col-xxl-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-xxl-push-20{left:83.33333333%}.ant-col-xxl-pull-20{right:83.33333333%}.ant-col-xxl-offset-20{margin-left:83.33333333%}.ant-col-xxl-order-20{order:20}.ant-col-xxl-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-xxl-push-19{left:79.16666667%}.ant-col-xxl-pull-19{right:79.16666667%}.ant-col-xxl-offset-19{margin-left:79.16666667%}.ant-col-xxl-order-19{order:19}.ant-col-xxl-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-xxl-push-18{left:75%}.ant-col-xxl-pull-18{right:75%}.ant-col-xxl-offset-18{margin-left:75%}.ant-col-xxl-order-18{order:18}.ant-col-xxl-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-xxl-push-17{left:70.83333333%}.ant-col-xxl-pull-17{right:70.83333333%}.ant-col-xxl-offset-17{margin-left:70.83333333%}.ant-col-xxl-order-17{order:17}.ant-col-xxl-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-xxl-push-16{left:66.66666667%}.ant-col-xxl-pull-16{right:66.66666667%}.ant-col-xxl-offset-16{margin-left:66.66666667%}.ant-col-xxl-order-16{order:16}.ant-col-xxl-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-xxl-push-15{left:62.5%}.ant-col-xxl-pull-15{right:62.5%}.ant-col-xxl-offset-15{margin-left:62.5%}.ant-col-xxl-order-15{order:15}.ant-col-xxl-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-xxl-push-14{left:58.33333333%}.ant-col-xxl-pull-14{right:58.33333333%}.ant-col-xxl-offset-14{margin-left:58.33333333%}.ant-col-xxl-order-14{order:14}.ant-col-xxl-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-xxl-push-13{left:54.16666667%}.ant-col-xxl-pull-13{right:54.16666667%}.ant-col-xxl-offset-13{margin-left:54.16666667%}.ant-col-xxl-order-13{order:13}.ant-col-xxl-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-xxl-push-12{left:50%}.ant-col-xxl-pull-12{right:50%}.ant-col-xxl-offset-12{margin-left:50%}.ant-col-xxl-order-12{order:12}.ant-col-xxl-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-xxl-push-11{left:45.83333333%}.ant-col-xxl-pull-11{right:45.83333333%}.ant-col-xxl-offset-11{margin-left:45.83333333%}.ant-col-xxl-order-11{order:11}.ant-col-xxl-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-xxl-push-10{left:41.66666667%}.ant-col-xxl-pull-10{right:41.66666667%}.ant-col-xxl-offset-10{margin-left:41.66666667%}.ant-col-xxl-order-10{order:10}.ant-col-xxl-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-xxl-push-9{left:37.5%}.ant-col-xxl-pull-9{right:37.5%}.ant-col-xxl-offset-9{margin-left:37.5%}.ant-col-xxl-order-9{order:9}.ant-col-xxl-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-xxl-push-8{left:33.33333333%}.ant-col-xxl-pull-8{right:33.33333333%}.ant-col-xxl-offset-8{margin-left:33.33333333%}.ant-col-xxl-order-8{order:8}.ant-col-xxl-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-xxl-push-7{left:29.16666667%}.ant-col-xxl-pull-7{right:29.16666667%}.ant-col-xxl-offset-7{margin-left:29.16666667%}.ant-col-xxl-order-7{order:7}.ant-col-xxl-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-xxl-push-6{left:25%}.ant-col-xxl-pull-6{right:25%}.ant-col-xxl-offset-6{margin-left:25%}.ant-col-xxl-order-6{order:6}.ant-col-xxl-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-xxl-push-5{left:20.83333333%}.ant-col-xxl-pull-5{right:20.83333333%}.ant-col-xxl-offset-5{margin-left:20.83333333%}.ant-col-xxl-order-5{order:5}.ant-col-xxl-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-xxl-push-4{left:16.66666667%}.ant-col-xxl-pull-4{right:16.66666667%}.ant-col-xxl-offset-4{margin-left:16.66666667%}.ant-col-xxl-order-4{order:4}.ant-col-xxl-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-xxl-push-3{left:12.5%}.ant-col-xxl-pull-3{right:12.5%}.ant-col-xxl-offset-3{margin-left:12.5%}.ant-col-xxl-order-3{order:3}.ant-col-xxl-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-xxl-push-2{left:8.33333333%}.ant-col-xxl-pull-2{right:8.33333333%}.ant-col-xxl-offset-2{margin-left:8.33333333%}.ant-col-xxl-order-2{order:2}.ant-col-xxl-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-xxl-push-1{left:4.16666667%}.ant-col-pull-0.ant-col-rtl,.ant-col-push-0,.ant-col-xxl-pull-0.ant-col-rtl,.ant-col-xxl-push-0,.ant-col-xxl-push-1.ant-col-rtl{left:auto}.ant-col-xxl-pull-1{right:4.16666667%}.ant-col-pull-0,.ant-col-push-0.ant-col-rtl,.ant-col-xxl-pull-0,.ant-col-xxl-push-0.ant-col-rtl{right:auto}.ant-col-xxl-offset-1{margin-left:4.16666667%}.ant-col-xxl-order-1{order:1}.ant-col-xxl-0{display:none}.ant-col-xxl-offset-0{margin-left:0}.ant-col-xxl-order-0{order:0}.ant-col-xxl-offset-0.ant-col-rtl{margin-right:0}.ant-col-xxl-push-1.ant-col-rtl{right:4.16666667%}.ant-col-xxl-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-xxl-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-xxl-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-xxl-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-xxl-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-xxl-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-xxl-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-xxl-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-xxl-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-xxl-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-xxl-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-xxl-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-xxl-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-xxl-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-xxl-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-xxl-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-xxl-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-xxl-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-xxl-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-xxl-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-xxl-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-xxl-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-xxl-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-xxl-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-xxl-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-xxl-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-xxl-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-xxl-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-xxl-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-xxl-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-xxl-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-xxl-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-xxl-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-xxl-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-xxl-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-xxl-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-xxl-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-xxl-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-xxl-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-xxl-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-xxl-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-xxl-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-xxl-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-xxl-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-xxl-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-xxl-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-xxl-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-xxl-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-xxl-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-xxl-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-xxl-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-xxl-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-xxl-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-xxl-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-xxl-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-xxl-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-xxl-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-xxl-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-xxl-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-xxl-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-xxl-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-xxl-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-xxl-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-xxl-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-xxl-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-xxl-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-xxl-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-xxl-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-xxl-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-xxl-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-xxl-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}.ant-input-affix-wrapper{position:relative;width:100%;min-width:0;padding:4px 11px;color:rgba(255,255,255,.85);line-height:1.5715;background-color:transparent;background-image:none;border-radius:2px;transition:all .3s;display:inline-flex}.ant-input-affix-wrapper-disabled,.ant-input-affix-wrapper[disabled]{background-color:rgba(255,255,255,.08);cursor:not-allowed;opacity:1;color:rgba(255,255,255,.3);pointer-events:none}.ant-input-affix-wrapper::-moz-placeholder{opacity:1}.ant-input-affix-wrapper::placeholder{color:rgba(255,255,255,.3);user-select:none}.ant-input-affix-wrapper:placeholder-shown{text-overflow:ellipsis}.ant-input-affix-wrapper:hover{border-color:#165996;border-right-width:1px}.ant-input-rtl .ant-input-affix-wrapper:hover{border-right-width:0;border-left-width:1px!important}.ant-input-affix-wrapper-focused,.ant-input-affix-wrapper:focus{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-input-affix-wrapper-focused,.ant-input-rtl .ant-input-affix-wrapper:focus{border-right-width:0;border-left-width:1px!important}.ant-input-affix-wrapper-disabled:hover,.ant-input-affix-wrapper[disabled]:hover{border-color:#434343;border-right-width:1px}.ant-input-affix-wrapper-disabled{border-color:#434343;box-shadow:none}.ant-input-affix-wrapper[disabled]{border-color:#434343;box-shadow:none}.ant-input-affix-wrapper-borderless,.ant-input-affix-wrapper-borderless-disabled,.ant-input-affix-wrapper-borderless-focused,.ant-input-affix-wrapper-borderless:focus,.ant-input-affix-wrapper-borderless:hover,.ant-input-affix-wrapper-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-input-affix-wrapper{max-width:100%;height:auto;min-height:32px;line-height:1.5715;vertical-align:bottom;transition:all .3s,height 0s}.ant-input-affix-wrapper-lg{padding:6.5px 11px;font-size:16px}.ant-input-affix-wrapper-sm{padding:0 7px}.ant-input-affix-wrapper-stepperless[type=number]{-moz-appearance:textfield}.ant-input-affix-wrapper-stepperless[type=number] ::-webkit-outer-spin-button,.ant-input-affix-wrapper-stepperless[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover{border-color:#165996;border-right-width:1px;z-index:1}.ant-input-rtl .ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover{border-right-width:0;border-left-width:1px!important}.ant-input-search-with-button .ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover{z-index:0}.ant-input-affix-wrapper-focused,.ant-input-affix-wrapper:focus{z-index:1}.ant-input-affix-wrapper-disabled .ant-input[disabled]{background:0 0}.ant-input-affix-wrapper>input.ant-input{padding:0;border:none;outline:0}.ant-input-affix-wrapper>input.ant-input:focus{box-shadow:none!important}.ant-input-affix-wrapper::before{width:0;visibility:hidden;content:'\a0'}.ant-input-prefix,.ant-input-suffix{display:flex;flex:none;align-items:center}.ant-input-prefix>:not(:last-child),.ant-input-suffix>:not(:last-child){margin-right:8px}.ant-input-show-count-suffix{color:rgba(255,255,255,.45)}.ant-input-show-count-has-suffix{margin-right:2px}.ant-input-prefix{margin-right:4px}.ant-input-suffix{margin-left:4px}.ant-input-clear-icon,.anticon.ant-input-clear-icon{margin:0;color:rgba(255,255,255,.3);font-size:12px;vertical-align:-1px;cursor:pointer;transition:color .3s}.ant-input-clear-icon:hover,.anticon.ant-input-clear-icon:hover{color:rgba(255,255,255,.45)}.ant-input-clear-icon:active,.anticon.ant-input-clear-icon:active{color:rgba(255,255,255,.85)}.ant-input-clear-icon-hidden,.anticon.ant-input-clear-icon-hidden{visibility:hidden}.ant-input-clear-icon-has-suffix,.anticon.ant-input-clear-icon-has-suffix{margin:0 4px}.ant-input,.ant-input-group{box-sizing:border-box;margin:0;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum;width:100%}.ant-input-affix-wrapper-textarea-with-clear-btn{padding:0!important;border:0!important}.ant-input-affix-wrapper-textarea-with-clear-btn .ant-input-clear-icon{position:absolute;top:8px;right:8px;z-index:1}.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input,.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:hover{background:0 0;border-color:#a61d24}.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input-focused,.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:focus{border-color:#a61d24;box-shadow:0 0 0 2px rgba(166,29,36,.2);border-right-width:1px;outline:0}.ant-input-status-error .ant-input-prefix{color:#a61d24}.ant-input-status-warning:not(.ant-input-disabled):not(.ant-input-borderless).ant-input,.ant-input-status-warning:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:hover{background:0 0;border-color:#d89614}.ant-input-status-warning:not(.ant-input-disabled):not(.ant-input-borderless).ant-input-focused,.ant-input-status-warning:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:focus{border-color:#d89614;box-shadow:0 0 0 2px rgba(216,150,20,.2);border-right-width:1px;outline:0}.ant-input-status-warning .ant-input-prefix{color:#d89614}.ant-input-affix-wrapper-status-error:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper,.ant-input-affix-wrapper-status-error:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper:hover{background:0 0;border-color:#a61d24}.ant-input-affix-wrapper-status-error:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper-focused,.ant-input-affix-wrapper-status-error:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper:focus{border-color:#a61d24;box-shadow:0 0 0 2px rgba(166,29,36,.2);border-right-width:1px;outline:0}.ant-input-affix-wrapper-status-error .ant-input-prefix{color:#a61d24}.ant-input-affix-wrapper-status-warning:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper,.ant-input-affix-wrapper-status-warning:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper:hover{background:0 0;border-color:#d89614}.ant-input-affix-wrapper-status-warning:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper-focused,.ant-input-affix-wrapper-status-warning:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper:focus{border-color:#d89614;box-shadow:0 0 0 2px rgba(216,150,20,.2);border-right-width:1px;outline:0}.ant-input-affix-wrapper-status-warning .ant-input-prefix{color:#d89614}.ant-input-textarea-status-error.ant-input-textarea-has-feedback .ant-input,.ant-input-textarea-status-success.ant-input-textarea-has-feedback .ant-input,.ant-input-textarea-status-validating.ant-input-textarea-has-feedback .ant-input,.ant-input-textarea-status-warning.ant-input-textarea-has-feedback .ant-input{padding-right:24px}.ant-input-group-wrapper-status-error .ant-input-group-addon{color:#a61d24;border-color:#a61d24}.ant-input-group-wrapper-status-warning .ant-input-group-addon{color:#d89614;border-color:#d89614}.ant-input{position:relative;display:inline-block;min-width:0;padding:4px 11px;color:rgba(255,255,255,.85);background-color:transparent;background-image:none;border-radius:2px;transition:all .3s}.ant-input-disabled,.ant-input[disabled]{background-color:rgba(255,255,255,.08);cursor:not-allowed;opacity:1;color:rgba(255,255,255,.3);pointer-events:none}.ant-input::-moz-placeholder{opacity:1}.ant-input::placeholder{color:rgba(255,255,255,.3);user-select:none}.ant-input:placeholder-shown{text-overflow:ellipsis}.ant-input:hover{border-color:#165996;border-right-width:1px}.ant-input-rtl .ant-input:hover{border-right-width:0;border-left-width:1px!important}.ant-input-focused,.ant-input:focus{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-input-focused,.ant-input-rtl .ant-input:focus{border-right-width:0;border-left-width:1px!important}.ant-input-disabled:hover,.ant-input[disabled]:hover{border-color:#434343;border-right-width:1px}.ant-input-disabled{border-color:#434343;box-shadow:none}.ant-input[disabled]{border-color:#434343;box-shadow:none}.ant-input-borderless,.ant-input-borderless-disabled,.ant-input-borderless-focused,.ant-input-borderless:focus,.ant-input-borderless:hover,.ant-input-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-input{max-width:100%;height:auto;min-height:32px;line-height:1.5715;vertical-align:bottom;transition:all .3s,height 0s}.ant-input-lg{padding:6.5px 11px;font-size:16px}.ant-input-group,.ant-input-group-addon{position:relative;color:rgba(255,255,255,.85);font-size:14px}.ant-input-sm{padding:0 7px}.ant-input-stepperless[type=number]{-moz-appearance:textfield}.ant-input-stepperless[type=number] ::-webkit-outer-spin-button,.ant-input-stepperless[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ant-input-group{padding:0;display:table;border-collapse:separate;border-spacing:0}.ant-input-group[class*=col-]{float:none;padding-right:0;padding-left:0}.ant-input-group>[class*=col-]{padding-right:8px}.ant-input-group>[class*=col-]:last-child{padding-right:0}.ant-input-group-addon,.ant-input-group-wrap,.ant-input-group>.ant-input{display:table-cell}.ant-input-group-addon:not(:first-child):not(:last-child),.ant-input-group-wrap:not(:first-child):not(:last-child),.ant-input-group>.ant-input:not(:first-child):not(:last-child){border-radius:0}.ant-input-group-addon,.ant-input-group-wrap{width:1px;white-space:nowrap;vertical-align:middle}.ant-input-group-wrap>*{display:block!important}.ant-input-group .ant-input{float:left;width:100%;margin-bottom:0;text-align:inherit}.ant-input-group .ant-input:focus,.ant-input-group .ant-input:hover{z-index:1;border-right-width:1px}.ant-input-search-with-button .ant-input-group .ant-input:hover{z-index:0}.ant-input-group-addon{padding:0 11px;font-weight:400;text-align:center;background-color:rgba(255,255,255,.04);border:1px solid #434343;border-radius:2px;transition:all .3s}.ant-input-group-addon .ant-select{margin:-5px -11px}.ant-input-group-addon .ant-select.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{background-color:inherit;border:1px solid transparent;box-shadow:none}.ant-input-group-addon .ant-select-focused .ant-select-selector,.ant-input-group-addon .ant-select-open .ant-select-selector{color:#177ddc}.ant-input-group-addon .ant-cascader-picker{margin:-9px -12px;background-color:transparent}.ant-input-group-addon .ant-cascader-picker .ant-cascader-input{text-align:left;border:0;box-shadow:none}.ant-input-group-addon:last-child,.ant-input-group-addon:last-child .ant-select .ant-select-selector,.ant-input-group>.ant-input-affix-wrapper:not(:first-child) .ant-input,.ant-input-group>.ant-input:last-child,.ant-input-group>.ant-input:last-child .ant-select .ant-select-selector{border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-group .ant-input-affix-wrapper:not(:last-child),.ant-input-group-addon:first-child,.ant-input-group-addon:first-child .ant-select .ant-select-selector,.ant-input-group>.ant-input-affix-wrapper:not(:last-child) .ant-input,.ant-input-group>.ant-input:first-child,.ant-input-group>.ant-input:first-child .ant-select .ant-select-selector{border-top-right-radius:0;border-bottom-right-radius:0}.ant-input-group-addon:first-child{border-right:0}.ant-input-group-addon:last-child{border-left:0}.ant-input-group-lg .ant-input,.ant-input-group-lg>.ant-input-group-addon{padding:6.5px 11px;font-size:16px}.ant-input-group-sm .ant-input,.ant-input-group-sm>.ant-input-group-addon{padding:0 7px}.ant-input-group-sm .ant-select-single .ant-select-selector{height:24px}.ant-input-search-button,.ant-input[type=color]{height:32px}.ant-input-search .ant-input-group .ant-input-affix-wrapper:not(:last-child){border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-input-group .ant-input-affix-wrapper:not(:first-child),.ant-input-search .ant-input-group .ant-input-affix-wrapper:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-group.ant-input-group-compact{display:block}.ant-input-group.ant-input-group-compact::after,.ant-input-group.ant-input-group-compact::before{display:table;content:''}.ant-input-group.ant-input-group-compact::after{clear:both}.ant-input-group.ant-input-group-compact-addon:not(:first-child):not(:last-child),.ant-input-group.ant-input-group-compact-wrap:not(:first-child):not(:last-child),.ant-input-group.ant-input-group-compact>.ant-input:not(:first-child):not(:last-child){border-right-width:1px}.ant-input-group.ant-input-group-compact-addon:not(:first-child):not(:last-child):focus,.ant-input-group.ant-input-group-compact-addon:not(:first-child):not(:last-child):hover,.ant-input-group.ant-input-group-compact-wrap:not(:first-child):not(:last-child):focus,.ant-input-group.ant-input-group-compact-wrap:not(:first-child):not(:last-child):hover,.ant-input-group.ant-input-group-compact>.ant-input:not(:first-child):not(:last-child):focus,.ant-input-group.ant-input-group-compact>.ant-input:not(:first-child):not(:last-child):hover{z-index:1}.ant-input-group.ant-input-group-compact>*{display:inline-block;float:none;vertical-align:top;border-radius:0}.ant-input-group.ant-input-group-compact>.ant-input-affix-wrapper,.ant-input-group.ant-input-group-compact>.ant-picker-range{display:inline-flex}.ant-input-group.ant-input-group-compact>:not(:last-child){margin-right:-1px;border-right-width:1px}.ant-input-group.ant-input-group-compact .ant-input{float:none}.ant-input-group.ant-input-group-compact>.ant-cascader-picker .ant-input,.ant-input-group.ant-input-group-compact>.ant-input-group-wrapper .ant-input,.ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input,.ant-input-group.ant-input-group-compact>.ant-select>.ant-select-selector{border-right-width:1px;border-radius:0}.ant-input-group.ant-input-group-compact>.ant-cascader-picker .ant-input:focus,.ant-input-group.ant-input-group-compact>.ant-cascader-picker .ant-input:hover,.ant-input-group.ant-input-group-compact>.ant-input-group-wrapper .ant-input:focus,.ant-input-group.ant-input-group-compact>.ant-input-group-wrapper .ant-input:hover,.ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input:focus,.ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input:hover,.ant-input-group.ant-input-group-compact>.ant-select-focused,.ant-input-group.ant-input-group-compact>.ant-select>.ant-select-arrow,.ant-input-group.ant-input-group-compact>.ant-select>.ant-select-selector:focus,.ant-input-group.ant-input-group-compact>.ant-select>.ant-select-selector:hover{z-index:1}.ant-input-group.ant-input-group-compact>.ant-cascader-picker:first-child .ant-input,.ant-input-group.ant-input-group-compact>.ant-select-auto-complete:first-child .ant-input,.ant-input-group.ant-input-group-compact>.ant-select:first-child>.ant-select-selector,.ant-input-group.ant-input-group-compact>:first-child{border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-input-group.ant-input-group-compact>.ant-cascader-picker-focused:last-child .ant-input,.ant-input-group.ant-input-group-compact>.ant-cascader-picker:last-child .ant-input,.ant-input-group.ant-input-group-compact>.ant-select:last-child>.ant-select-selector,.ant-input-group.ant-input-group-compact>:last-child{border-right-width:1px;border-top-right-radius:2px;border-bottom-right-radius:2px}.ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input{vertical-align:top}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper+.ant-input-group-wrapper{margin-left:-1px}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper+.ant-input-group-wrapper .ant-input-affix-wrapper,.ant-input-group.ant-input-group-compact .ant-input-group-wrapper:not(:last-child).ant-input-search>.ant-input-group>.ant-input-group-addon>.ant-input-search-button{border-radius:0}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper:not(:last-child).ant-input-search>.ant-input-group>.ant-input{border-radius:2px 0 0 2px}.ant-input-group-rtl .ant-input-group-addon:first-child,.ant-input-group>.ant-input-rtl:first-child{border-radius:0 2px 2px 0}.ant-input-group-rtl .ant-input-group-addon:first-child{border-right:1px solid #434343;border-left:0}.ant-input-group-rtl .ant-input-group-addon:last-child{border-right:0;border-left:1px solid #434343}.ant-input-group-rtl.ant-input-group .ant-input-affix-wrapper:not(:first-child),.ant-input-group-rtl.ant-input-group-addon:last-child,.ant-input-group-rtl.ant-input-group>.ant-input:last-child{border-radius:2px 0 0 2px}.ant-input-group-rtl.ant-input-group .ant-input-affix-wrapper:not(:last-child),.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-cascader-picker:first-child .ant-input,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-select-auto-complete:first-child .ant-input,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-select:first-child>.ant-select-selector,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>:first-child{border-radius:0 2px 2px 0}.ant-input-group-rtl.ant-input-group.ant-input-group-compact>:not(:last-child){margin-right:0;margin-left:-1px;border-left-width:1px}.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-cascader-picker-focused:last-child .ant-input,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-cascader-picker:last-child .ant-input,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-select-auto-complete:last-child .ant-input,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-select:last-child>.ant-select-selector,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>:last-child{border-left-width:1px;border-radius:2px 0 0 2px}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper-rtl+.ant-input-group-wrapper-rtl{margin-right:-1px;margin-left:0}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper-rtl:not(:last-child).ant-input-search>.ant-input-group>.ant-input{border-radius:0 2px 2px 0}.ant-input-group-wrapper{display:inline-block;width:100%;text-align:start;vertical-align:top}.ant-input-password-icon.anticon{color:rgba(255,255,255,.45);cursor:pointer;transition:all .3s}.ant-input-password-icon.anticon:hover{color:rgba(255,255,255,.85)}.ant-input[type=color].ant-input-lg{height:40px}.ant-input[type=color].ant-input-sm{height:24px;padding-top:3px;padding-bottom:3px}.ant-input-textarea-show-count>.ant-input{height:100%}.ant-input-textarea-show-count::after{float:right;color:rgba(255,255,255,.45);white-space:nowrap;content:attr(data-count);pointer-events:none}.ant-input-textarea-show-count.ant-input-textarea-in-form-item::after{margin-bottom:-22px}.ant-input-textarea-suffix{position:absolute;top:0;right:11px;bottom:0;z-index:1;display:inline-flex;align-items:center;margin:auto}.ant-input-search .ant-input:focus,.ant-input-search .ant-input:hover{border-color:#165996}.ant-input-search .ant-input:focus+.ant-input-group-addon .ant-input-search-button:not(.ant-btn-primary),.ant-input-search .ant-input:hover+.ant-input-group-addon .ant-input-search-button:not(.ant-btn-primary){border-left-color:#165996}.ant-input-search .ant-input-affix-wrapper{border-radius:0}.ant-input-search .ant-input-lg{line-height:1.5713}.ant-input-search>.ant-input-group>.ant-input-group-addon:last-child{left:-1px;padding:0;border:0}.ant-input-search>.ant-input-group>.ant-input-group-addon:last-child .ant-input-search-button{padding-top:0;padding-bottom:0;border-radius:0 2px 2px 0}.ant-input-search>.ant-input-group>.ant-input-group-addon:last-child .ant-input-search-button:not(.ant-btn-primary){color:rgba(255,255,255,.45)}.ant-input-search>.ant-input-group>.ant-input-group-addon:last-child .ant-input-search-button:not(.ant-btn-primary).ant-btn-loading::before{top:0;right:0;bottom:0;left:0}.ant-input-search-button:focus,.ant-input-search-button:hover{z-index:1}.ant-input-search-large .ant-input-search-button{height:40px}.ant-input-search-small .ant-input-search-button{height:24px}.ant-input-affix-wrapper.ant-input-affix-wrapper-rtl>input.ant-input{border:none;outline:0}.ant-input-affix-wrapper-rtl .ant-input-prefix{margin:0 0 0 4px}.ant-input-affix-wrapper-rtl .ant-input-suffix{margin:0 4px 0 0}.ant-input-textarea-rtl.ant-input-textarea-show-count::after{text-align:left}.ant-input-affix-wrapper-rtl .ant-input-clear-icon-has-suffix{margin-right:0;margin-left:4px}.ant-input-affix-wrapper-rtl .ant-input-clear-icon{right:auto;left:8px}.ant-input-search-rtl .ant-input:focus+.ant-input-group-addon .ant-input-search-button:not(.ant-btn-primary),.ant-input-search-rtl .ant-input:hover+.ant-input-group-addon .ant-input-search-button:not(.ant-btn-primary){border-right-color:#165996;border-left-color:#434343}.ant-input-search-rtl>.ant-input-group>.ant-input-affix-wrapper-focused,.ant-input-search-rtl>.ant-input-group>.ant-input-affix-wrapper:hover{border-right-color:#165996}.ant-input-search-rtl>.ant-input-group>.ant-input-group-addon{right:-1px;left:auto}.ant-input-search-rtl>.ant-input-group>.ant-input-group-addon .ant-input-search-button{border-radius:2px 0 0 2px}@media screen and (-ms-high-contrast:active),(-ms-high-contrast:none){.ant-input{height:32px}.ant-input-lg{height:40px}.ant-input-sm{height:24px}.ant-input-affix-wrapper>input.ant-input{height:auto}}textarea.nz-textarea-autosize-measuring{height:auto!important;overflow:hidden!important;padding:2px 0!important}.ant-input-search-rtl.ant-input-search-enter-button input+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only,.ant-input-search-rtl.ant-input-search-enter-button+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only{width:32px;height:32px}.ant-input-search-rtl.ant-input-search-enter-button input+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only.ant-btn-sm,.ant-input-search-rtl.ant-input-search-enter-button+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only.ant-btn-sm{width:24px;height:24px}.ant-input-search-rtl.ant-input-search-enter-button input+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only.ant-btn-lg,.ant-input-search-rtl.ant-input-search-enter-button+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only.ant-btn-lg{width:40px;height:40px}.ant-input-affix-wrapper-textarea-with-clear-btn .ant-input-suffix{margin-left:0}nz-form-item-feedback-icon.ant-input-suffix{display:flex;flex:none;align-items:center;pointer-events:none;position:absolute;top:0;right:0;z-index:1;height:100%;margin-right:12px;margin-left:4px}.ant-input-status-error.ant-input-has-feedback,.ant-input-status-success.ant-input-has-feedback,.ant-input-status-validating.ant-input-has-feedback,.ant-input-status-warning.ant-input-has-feedback{padding-right:28px}.ant-input-textarea-show-count{display:block;position:relative}.ant-input-number-affix-wrapper{min-width:0;color:rgba(255,255,255,.85);font-size:14px;line-height:1.5715;background-color:transparent;background-image:none;border:1px solid #434343;border-radius:2px;transition:all .3s;position:relative;display:inline-flex;width:90px;padding:0;padding-inline-start:11px}.ant-input-number-affix-wrapper-disabled,.ant-input-number-affix-wrapper[disabled]{background-color:rgba(255,255,255,.08);cursor:not-allowed;color:rgba(255,255,255,.3);pointer-events:none;opacity:1}.ant-input-number-affix-wrapper::-moz-placeholder{opacity:1}.ant-input-number-affix-wrapper::placeholder{color:rgba(255,255,255,.3);user-select:none}.ant-input-number-affix-wrapper:placeholder-shown{text-overflow:ellipsis}.ant-input-number-affix-wrapper:hover{border-color:#165996;border-right-width:1px}.ant-input-rtl .ant-input-number-affix-wrapper:hover{border-right-width:0;border-left-width:1px!important}.ant-input-number-affix-wrapper-focused,.ant-input-number-affix-wrapper:focus{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);border-right-width:1px;outline:0;z-index:1}.ant-input-rtl .ant-input-number-affix-wrapper-focused,.ant-input-rtl .ant-input-number-affix-wrapper:focus{border-right-width:0;border-left-width:1px!important}.ant-input-number-affix-wrapper-disabled:hover,.ant-input-number-affix-wrapper[disabled]:hover{border-color:#434343;border-right-width:1px}.ant-input-number-affix-wrapper-disabled{border-color:#434343;box-shadow:none}.ant-input-number-affix-wrapper[disabled]{border-color:#434343;box-shadow:none}.ant-input-number-affix-wrapper-borderless,.ant-input-number-affix-wrapper-borderless-disabled,.ant-input-number-affix-wrapper-borderless-focused,.ant-input-number-affix-wrapper-borderless:focus,.ant-input-number-affix-wrapper-borderless:hover,.ant-input-number-affix-wrapper-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-input-number-affix-wrapper{max-width:100%;height:auto;min-height:32px;line-height:1.5715;vertical-align:bottom;transition:all .3s,height 0s}.ant-input-number-affix-wrapper-lg{padding:6.5px 11px;font-size:16px}.ant-input-number-affix-wrapper-sm{padding:0 7px}.ant-input-number-affix-wrapper-stepperless[type=number]{-moz-appearance:textfield}.ant-input-number-affix-wrapper-stepperless[type=number] ::-webkit-outer-spin-button,.ant-input-number-affix-wrapper-stepperless[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ant-input-number-affix-wrapper:not(.ant-input-number-affix-wrapper-disabled):hover{border-color:#165996;border-right-width:1px;z-index:1}.ant-input-rtl .ant-input-number-affix-wrapper:not(.ant-input-number-affix-wrapper-disabled):hover{border-right-width:0;border-left-width:1px!important}.ant-input-number-affix-wrapper-disabled .ant-input-number[disabled]{background:0 0}.ant-input-number-affix-wrapper>div.ant-input-number{width:100%;border:none;outline:0}.ant-input-number-affix-wrapper>div.ant-input-number.ant-input-number-focused{box-shadow:none!important}.ant-input-number-affix-wrapper input.ant-input-number-input{padding:0}.ant-input-number-affix-wrapper::before{width:0;visibility:hidden;content:'\a0'}.ant-input-number-affix-wrapper .ant-input-number-handler-wrap{z-index:2}.ant-input-number-prefix,.ant-input-number-suffix{display:flex;flex:none;align-items:center;pointer-events:none}.ant-input-number-prefix{margin-inline-end:4px}.ant-input-number-suffix{position:absolute;top:0;right:0;z-index:1;height:100%;margin-right:11px;margin-left:4px}.ant-input-number,.ant-input-number-group{margin:0;line-height:1.5715;font-size:14px;position:relative;box-sizing:border-box;list-style:none;font-feature-settings:tnum;font-variant:tabular-nums}.ant-input-number-group-wrapper .ant-input-number-affix-wrapper{width:100%}.ant-input-number-status-error:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number,.ant-input-number-status-error:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number:hover{background:0 0;border-color:#a61d24}.ant-input-number-status-error:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number-focused,.ant-input-number-status-error:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number:focus{border-color:#a61d24;box-shadow:0 0 0 2px rgba(166,29,36,.2);border-right-width:1px;outline:0}.ant-input-number-status-error .ant-input-number-prefix{color:#a61d24}.ant-input-number-status-warning:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number,.ant-input-number-status-warning:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number:hover{background:0 0;border-color:#d89614}.ant-input-number-status-warning:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number-focused,.ant-input-number-status-warning:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number:focus{border-color:#d89614;box-shadow:0 0 0 2px rgba(216,150,20,.2);border-right-width:1px;outline:0}.ant-input-number-status-warning .ant-input-number-prefix{color:#d89614}.ant-input-number-affix-wrapper-status-error:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper,.ant-input-number-affix-wrapper-status-error:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper:hover{background:0 0;border-color:#a61d24}.ant-input-number-affix-wrapper-status-error:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper-focused,.ant-input-number-affix-wrapper-status-error:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper:focus{border-color:#a61d24;box-shadow:0 0 0 2px rgba(166,29,36,.2);border-right-width:1px;outline:0}.ant-input-number-affix-wrapper-status-error .ant-input-number-prefix{color:#a61d24}.ant-input-number-affix-wrapper-status-warning:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper,.ant-input-number-affix-wrapper-status-warning:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper:hover{background:0 0;border-color:#d89614}.ant-input-number-affix-wrapper-status-warning:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper-focused,.ant-input-number-affix-wrapper-status-warning:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper:focus{border-color:#d89614;box-shadow:0 0 0 2px rgba(216,150,20,.2);border-right-width:1px;outline:0}.ant-input-number-affix-wrapper-status-warning .ant-input-number-prefix{color:#d89614}.ant-input-number-group-wrapper-status-error .ant-input-number-group-addon{color:#a61d24;border-color:#a61d24}.ant-input-number-group-wrapper-status-warning .ant-input-number-group-addon{color:#d89614;border-color:#d89614}.ant-input-number{min-width:0;color:rgba(255,255,255,.85);background-color:transparent;background-image:none;transition:all .3s;display:inline-block;width:90px;padding:0;border:1px solid #434343;border-radius:2px}.ant-input-number-disabled,.ant-input-number[disabled]{background-color:rgba(255,255,255,.08);cursor:not-allowed;color:rgba(255,255,255,.3);pointer-events:none}.ant-input-number::-moz-placeholder{opacity:1}.ant-input-number::placeholder{color:rgba(255,255,255,.3);user-select:none}.ant-input-number:placeholder-shown{text-overflow:ellipsis}.ant-input-rtl .ant-input-number:hover{border-right-width:0;border-left-width:1px!important}.ant-input-number-focused,.ant-input-number:focus{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-input-number-focused,.ant-input-rtl .ant-input-number:focus{border-right-width:0;border-left-width:1px!important}.ant-input-number[disabled]{border-color:#434343;box-shadow:none;opacity:1}.ant-input-number[disabled]:hover{border-color:#434343;border-right-width:1px}.ant-input-number-borderless,.ant-input-number-borderless-disabled,.ant-input-number-borderless-focused,.ant-input-number-borderless:focus,.ant-input-number-borderless:hover,.ant-input-number-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-input-number{max-width:100%;height:auto;min-height:32px;line-height:1.5715;vertical-align:bottom;transition:all .3s,height 0s}.ant-input-number-stepperless[type=number]{-moz-appearance:textfield}.ant-input-number-stepperless[type=number] ::-webkit-outer-spin-button,.ant-input-number-stepperless[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ant-input-number-group{padding:0;color:rgba(255,255,255,.85);display:table;width:100%;border-collapse:separate;border-spacing:0}.ant-input-number-group[class*=col-]{float:none;padding-right:0;padding-left:0}.ant-input-number-group>[class*=col-]{padding-right:8px}.ant-input-number-group>[class*=col-]:last-child{padding-right:0}.ant-input-number-group-addon,.ant-input-number-group-wrap,.ant-input-number-group>.ant-input-number{display:table-cell}.ant-input-number-group-addon:not(:first-child):not(:last-child),.ant-input-number-group-wrap:not(:first-child):not(:last-child),.ant-input-number-group>.ant-input-number:not(:first-child):not(:last-child){border-radius:0}.ant-input-number-group-addon,.ant-input-number-group-wrap{width:1px;white-space:nowrap;vertical-align:middle}.ant-input-number-group-wrap>*{display:block!important}.ant-input-number-group .ant-input-number{float:left;width:100%;margin-bottom:0;text-align:inherit}.ant-input-number-group .ant-input-number:focus,.ant-input-number-group .ant-input-number:hover{z-index:1;border-right-width:1px}.ant-input-search-with-button .ant-input-number-group .ant-input-number:hover{z-index:0}.ant-input-number-group.ant-input-number-group-compact-addon:not(:first-child):not(:last-child):focus,.ant-input-number-group.ant-input-number-group-compact-addon:not(:first-child):not(:last-child):hover,.ant-input-number-group.ant-input-number-group-compact-wrap:not(:first-child):not(:last-child):focus,.ant-input-number-group.ant-input-number-group-compact-wrap:not(:first-child):not(:last-child):hover,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker .ant-input:focus,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker .ant-input:hover,.ant-input-number-group.ant-input-number-group-compact>.ant-input-group-wrapper .ant-input:focus,.ant-input-number-group.ant-input-number-group-compact>.ant-input-group-wrapper .ant-input:hover,.ant-input-number-group.ant-input-number-group-compact>.ant-input-number:not(:first-child):not(:last-child):focus,.ant-input-number-group.ant-input-number-group-compact>.ant-input-number:not(:first-child):not(:last-child):hover,.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete .ant-input:focus,.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete .ant-input:hover,.ant-input-number-group.ant-input-number-group-compact>.ant-select-focused,.ant-input-number-group.ant-input-number-group-compact>.ant-select>.ant-select-arrow,.ant-input-number-group.ant-input-number-group-compact>.ant-select>.ant-select-selector:focus,.ant-input-number-group.ant-input-number-group-compact>.ant-select>.ant-select-selector:hover{z-index:1}.ant-input-number-group-addon{position:relative;padding:0 11px;color:rgba(255,255,255,.85);font-weight:400;font-size:14px;text-align:center;background-color:rgba(255,255,255,.04);border:1px solid #434343;border-radius:2px;transition:all .3s}.ant-input-number-group-addon .ant-select{margin:-5px -11px}.ant-input-number-group-addon .ant-select.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{background-color:inherit;border:1px solid transparent;box-shadow:none}.ant-input-number-group-addon .ant-select-focused .ant-select-selector,.ant-input-number-group-addon .ant-select-open .ant-select-selector{color:#177ddc}.ant-input-number-group-addon .ant-cascader-picker{margin:-9px -12px;background-color:transparent}.ant-input-number-group-addon .ant-cascader-picker .ant-cascader-input{text-align:left;border:0;box-shadow:none}.ant-input-number-group-addon:last-child,.ant-input-number-group-addon:last-child .ant-select .ant-select-selector,.ant-input-number-group>.ant-input-number-affix-wrapper:not(:first-child) .ant-input-number,.ant-input-number-group>.ant-input-number:last-child,.ant-input-number-group>.ant-input-number:last-child .ant-select .ant-select-selector{border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-number-group .ant-input-number-affix-wrapper:not(:last-child),.ant-input-number-group-addon:first-child,.ant-input-number-group-addon:first-child .ant-select .ant-select-selector,.ant-input-number-group>.ant-input-number-affix-wrapper:not(:last-child) .ant-input-number,.ant-input-number-group>.ant-input-number:first-child,.ant-input-number-group>.ant-input-number:first-child .ant-select .ant-select-selector{border-top-right-radius:0;border-bottom-right-radius:0}.ant-input-number-group-addon:first-child{border-right:0}.ant-input-number-group-addon:last-child{border-left:0}.ant-input-number-group-lg .ant-input-number,.ant-input-number-group-lg>.ant-input-number-group-addon{padding:6.5px 11px;font-size:16px}.ant-input-number-group-sm .ant-input-number,.ant-input-number-group-sm>.ant-input-number-group-addon{padding:0 7px}.ant-input-number-group-lg .ant-select-single .ant-select-selector{height:40px}.ant-input-number-group-sm .ant-select-single .ant-select-selector{height:24px}.ant-input-search .ant-input-number-group .ant-input-number-affix-wrapper:not(:last-child){border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-input-number-group .ant-input-number-affix-wrapper:not(:first-child),.ant-input-search .ant-input-number-group .ant-input-number-affix-wrapper:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-number-group.ant-input-number-group-compact{display:block}.ant-input-number-group.ant-input-number-group-compact::before{display:table;content:''}.ant-input-number-group.ant-input-number-group-compact::after{display:table;clear:both;content:''}.ant-input-number-group.ant-input-number-group-compact-addon:not(:first-child):not(:last-child),.ant-input-number-group.ant-input-number-group-compact-wrap:not(:first-child):not(:last-child),.ant-input-number-group.ant-input-number-group-compact>.ant-input-number:not(:first-child):not(:last-child){border-right-width:1px}.ant-input-number-group.ant-input-number-group-compact>*{display:inline-block;float:none;vertical-align:top;border-radius:0}.ant-input-number-group.ant-input-number-group-compact>.ant-input-number-affix-wrapper,.ant-input-number-group.ant-input-number-group-compact>.ant-picker-range{display:inline-flex}.ant-input-number-group.ant-input-number-group-compact>:not(:last-child){margin-right:-1px;border-right-width:1px}.ant-input-number-group.ant-input-number-group-compact .ant-input-number{float:none}.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-input-group-wrapper .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-select>.ant-select-selector{border-right-width:1px;border-radius:0}.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker:first-child .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete:first-child .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-select:first-child>.ant-select-selector,.ant-input-number-group.ant-input-number-group-compact>:first-child{border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker-focused:last-child .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker:last-child .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-select:last-child>.ant-select-selector,.ant-input-number-group.ant-input-number-group-compact>:last-child{border-right-width:1px;border-top-right-radius:2px;border-bottom-right-radius:2px}.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete .ant-input{vertical-align:top}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper+.ant-input-group-wrapper{margin-left:-1px}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper+.ant-input-group-wrapper .ant-input-affix-wrapper,.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper:not(:last-child).ant-input-search>.ant-input-group>.ant-input-group-addon>.ant-input-search-button{border-radius:0}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper:not(:last-child).ant-input-search>.ant-input-group>.ant-input{border-radius:2px 0 0 2px}.ant-input-number-group-rtl .ant-input-number-group-addon:first-child,.ant-input-number-group>.ant-input-number-rtl:first-child{border-radius:0 2px 2px 0}.ant-input-number-group-rtl .ant-input-number-group-addon:first-child{border-right:1px solid #434343;border-left:0}.ant-input-number-group-rtl .ant-input-number-group-addon:last-child{border-right:0;border-left:1px solid #434343}.ant-input-number-group-rtl.ant-input-number-group .ant-input-number-affix-wrapper:not(:first-child),.ant-input-number-group-rtl.ant-input-number-group-addon:last-child,.ant-input-number-group-rtl.ant-input-number-group>.ant-input-number:last-child{border-radius:2px 0 0 2px}.ant-input-number-group-rtl.ant-input-number-group .ant-input-number-affix-wrapper:not(:last-child),.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker:first-child .ant-input,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete:first-child .ant-input,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-select:first-child>.ant-select-selector,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>:first-child{border-radius:0 2px 2px 0}.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>:not(:last-child){margin-right:0;margin-left:-1px;border-left-width:1px}.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker-focused:last-child .ant-input,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker:last-child .ant-input,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete:last-child .ant-input,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-select:last-child>.ant-select-selector,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>:last-child{border-left-width:1px;border-radius:2px 0 0 2px}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper-rtl+.ant-input-group-wrapper-rtl{margin-right:-1px;margin-left:0}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper-rtl:not(:last-child).ant-input-search>.ant-input-group>.ant-input{border-radius:0 2px 2px 0}.ant-input-number-group-wrapper{display:inline-block;text-align:start;vertical-align:top}.ant-input-number-handler{position:relative;display:block;width:100%;height:50%;overflow:hidden;color:rgba(255,255,255,.45);font-weight:700;line-height:0;text-align:center;border-left:1px solid #434343;transition:all .1s linear}.ant-input-number-handler:hover .ant-input-number-handler-down-inner,.ant-input-number-handler:hover .ant-input-number-handler-up-inner{color:#165996}.ant-input-number-handler-down-inner,.ant-input-number-handler-up-inner{display:inline-block;color:inherit;vertical-align:-.125em;position:absolute;right:4px;width:12px;height:12px;color:rgba(255,255,255,.45);line-height:12px;transition:all .1s linear;user-select:none}.ant-input-number-handler-down-inner>*,.ant-input-number-handler-up-inner>*{line-height:1}.ant-input-number-handler-down-inner svg,.ant-input-number-handler-up-inner svg{display:inline-block}.ant-input-number-disabled .ant-input-number-handler-wrap,.ant-input-number-handler-down-inner::before,.ant-input-number-handler-up-inner::before,.ant-input-number-readonly .ant-input-number-handler-wrap{display:none}.ant-input-number-handler-down-inner .ant-input-number-handler-down-inner-icon,.ant-input-number-handler-down-inner .ant-input-number-handler-up-inner-icon,.ant-input-number-handler-up-inner .ant-input-number-handler-down-inner-icon,.ant-input-number-handler-up-inner .ant-input-number-handler-up-inner-icon,nz-content,nz-footer,nz-header{display:block}.ant-input-number:hover{border-color:#165996;border-right-width:1px}.ant-input-number:hover+.ant-form-item-children-icon{opacity:0;transition:opacity .24s linear .24s}.ant-input-number-focused{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-input-number-focused{border-right-width:0;border-left-width:1px!important}.ant-input-number-disabled{border-color:#434343;box-shadow:none;opacity:1}.ant-input-number-disabled:hover{border-color:#434343;border-right-width:1px}.ant-input-number-disabled .ant-input-number-input{cursor:not-allowed}.ant-input-number-input{width:100%;height:30px;padding:0 11px;text-align:left;background-color:transparent;border:0;border-radius:2px;outline:0;transition:all .3s linear;appearance:textfield!important}.ant-input-number-input::-moz-placeholder{opacity:1}.ant-input-number-input::placeholder{color:rgba(255,255,255,.3);user-select:none}.ant-input-number-input:placeholder-shown{text-overflow:ellipsis}.ant-input-number-input[type=number]::-webkit-inner-spin-button,.ant-input-number-input[type=number]::-webkit-outer-spin-button{margin:0;-webkit-appearance:none;appearance:none}.ant-input-number-lg{padding:0;font-size:16px}.ant-input-number-lg input{height:38px}.ant-input-number-sm{padding:0}.ant-input-number-sm input{height:22px;padding:0 7px}.ant-input-number-handler-wrap{position:absolute;top:0;right:0;width:22px;height:100%;background:#141414;border-radius:0 2px 2px 0;opacity:0;transition:opacity .24s linear .1s}.ant-input-number-handler-wrap .ant-input-number-handler .ant-input-number-handler-down-inner,.ant-input-number-handler-wrap .ant-input-number-handler .ant-input-number-handler-up-inner{display:flex;align-items:center;justify-content:center;min-width:auto;margin-right:0;font-size:7px}.ant-input-number-borderless .ant-input-number-handler-wrap{border-left-width:0}.ant-input-number-handler-wrap:hover .ant-input-number-handler{height:40%}.ant-input-number-handler-down:hover,.ant-input-number-handler-up:hover{height:60%!important}.ant-input-number-focused .ant-input-number-handler-wrap,.ant-input-number:hover .ant-input-number-handler-wrap{opacity:1}.ant-input-number-handler-up{border-top-right-radius:2px;cursor:pointer}.ant-input-number-handler-up-inner{top:50%;margin-top:-5px;text-align:center}.ant-input-number-handler-down{top:0;border-top:1px solid #434343;border-bottom-right-radius:2px;cursor:pointer}.ant-input-number-handler-down-inner{top:50%;text-align:center;transform:translateY(-50%)}.ant-input-number-borderless .ant-input-number-handler-down{border-top-width:0}.ant-input-number-handler-down-disabled,.ant-input-number-handler-up-disabled{cursor:not-allowed}.ant-input-number-handler-down-disabled:hover .ant-input-number-handler-down-inner,.ant-input-number-handler-up-disabled:hover .ant-input-number-handler-up-inner{color:rgba(255,255,255,.3)}.ant-input-number-borderless{box-shadow:none}.ant-input-number-out-of-range input{color:#a61d24}.ant-input-number-rtl .ant-input-number-handler{border-right:1px solid #434343;border-left:0}.ant-input-number-rtl .ant-input-number-handler-wrap{right:auto;left:0}.ant-input-number-rtl.ant-input-number-borderless .ant-input-number-handler-wrap{border-right-width:0}.ant-input-number-rtl .ant-input-number-handler-up{border-top-right-radius:0}.ant-input-number-rtl .ant-input-number-handler-down{border-bottom-right-radius:0}.ant-input-number-rtl .ant-input-number-input{direction:ltr;text-align:right}.ant-form-rtl,.ant-layout-rtl,.ant-list-rtl,.ant-list-rtl .ReactVirtualized__List .ant-list-item,.ant-mentions-rtl,.ant-menu.ant-menu-rtl,.ant-message-rtl,.ant-message-rtl span,.ant-modal-wrap-rtl,.ant-modal-wrap-rtl .ant-modal-confirm-body,.ant-notification-rtl,.ant-page-header-rtl,.ant-pagination-options-quick-jumper input-rtl,.ant-popover-rtl,.ant-progress-rtl,.ant-radio-group.ant-radio-group-rtl,.ant-radio-wrapper.ant-radio-wrapper-rtl,.ant-rate-rtl,.ant-segmented.ant-segmented-rtl,.ant-select-dropdown-rtl,.ant-select-rtl,.ant-skeleton-rtl,.ant-slider-rtl,.ant-spin-rtl{direction:rtl}.ant-input-number-affix-wrapper>nz-input-number.ant-input-number{width:100%;border:none;outline:0}.ant-input-number-affix-wrapper>nz-input-number.ant-input-number.ant-input-number-focused{box-shadow:none!important}.ant-mentions-dropdown,.ant-menu,.ant-message-notice-content,.ant-modal-content{box-shadow:0 3px 6px -4px rgba(0,0,0,.48),0 6px 16px 0 rgba(0,0,0,.32),0 9px 28px 8px rgba(0,0,0,.2)}.ant-input-number.ant-input-number-has-feedback .ant-input-number-handler-wrap{z-index:2}.ant-layout{display:flex;flex:auto;flex-direction:column;min-height:0;background:#000}.ant-layout,.ant-layout *{box-sizing:border-box}.ant-layout.ant-layout-has-sider{flex-direction:row}.ant-layout.ant-layout-has-sider>.ant-layout,.ant-layout.ant-layout-has-sider>.ant-layout-content{width:0}.ant-layout-footer,.ant-layout-header{flex:0 0 auto}.ant-layout-header{height:64px;padding:0 50px;color:rgba(255,255,255,.85);line-height:64px;background:#1f1f1f}.ant-layout-footer{padding:24px 50px;color:rgba(255,255,255,.85);font-size:14px;background:#000}.ant-layout-content{flex:auto;min-height:0}.ant-layout-sider{position:relative;min-width:0;background:#1f1f1f;transition:all .2s}.ant-layout-sider-children{height:100%;margin-top:-.1px;padding-top:.1px}.ant-layout-sider-children .ant-menu.ant-menu-inline-collapsed{width:auto}.ant-layout-sider-has-trigger{padding-bottom:48px}.ant-layout-sider-trigger{position:fixed;bottom:0;z-index:1;height:48px;color:#fff;line-height:48px;text-align:center;background:#262626;cursor:pointer;transition:all .2s}.ant-layout-sider-zero-width>*{overflow:hidden}.ant-layout-sider-zero-width-trigger{position:absolute;top:64px;right:-36px;z-index:1;width:36px;height:42px;color:#fff;font-size:18px;line-height:42px;text-align:center;background:#1f1f1f;border-radius:0 2px 2px 0;cursor:pointer;transition:background .3s ease}.ant-form select[multiple],.ant-form select[size],.ant-form-vertical .ant-form-item-label>label{height:auto}.ant-layout-sider-zero-width-trigger::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;transition:all .3s;content:''}.ant-layout-sider-zero-width-trigger:hover::after{background:rgba(255,255,255,.1)}.ant-layout-sider-zero-width-trigger-right{left:-36px;border-radius:2px 0 0 2px}.ant-layout-sider-light{background:#fff}.ant-layout-sider-light .ant-layout-sider-trigger,.ant-layout-sider-light .ant-layout-sider-zero-width-trigger{color:rgba(255,255,255,.85);background:#fff}.ant-form-item .ant-input-number+.ant-form-text{margin-left:8px}.ant-form-inline{display:flex;flex-wrap:wrap}.ant-form-inline .ant-form-item{flex:none;flex-wrap:nowrap;margin-right:16px;margin-bottom:0}.ant-form-inline .ant-form-item-with-help{margin-bottom:24px}.ant-form-inline .ant-form-item>.ant-form-item-control,.ant-form-inline .ant-form-item>.ant-form-item-label{display:inline-block;vertical-align:top}.ant-form-inline .ant-form-item>.ant-form-item-label{flex:none}.ant-form-inline .ant-form-item .ant-form-item-has-feedback,.ant-form-inline .ant-form-item .ant-form-text{display:inline-block}.ant-form-horizontal .ant-form-item-label{flex-grow:0}.ant-form-horizontal .ant-form-item-control{flex:1 1 0;min-width:0}.ant-form-horizontal .ant-form-item-label[class$='-24']+.ant-form-item-control,.ant-form-horizontal .ant-form-item-label[class*='-24 ']+.ant-form-item-control,.ant-slider-tooltip .ant-tooltip-inner{min-width:unset}.ant-form-vertical .ant-form-item{flex-direction:column}.ant-col-24.ant-form-item-label,.ant-col-xl-24.ant-form-item-label,.ant-form-vertical .ant-form-item-label{padding:0 0 8px;line-height:1.5715;white-space:initial;text-align:left}.ant-col-24.ant-form-item-label>label,.ant-col-xl-24.ant-form-item-label>label,.ant-form-vertical .ant-form-item-label>label{margin:0}.ant-col-24.ant-form-item-label>label::after,.ant-col-xl-24.ant-form-item-label>label::after,.ant-form-vertical .ant-form-item-label>label::after{display:none}.ant-form-rtl.ant-col-24.ant-form-item-label,.ant-form-rtl.ant-col-xl-24.ant-form-item-label,.ant-form-rtl.ant-form-vertical .ant-form-item-label{text-align:right}@media (max-width:575px){.ant-col-xs-24.ant-form-item-label>label,.ant-form-item .ant-form-item-label>label{margin:0}.ant-col-xs-24.ant-form-item-label>label::after,.ant-form-item .ant-form-item-label>label::after{display:none}.ant-form-item .ant-form-item-label{padding:0 0 8px;line-height:1.5715;white-space:initial;text-align:left}.ant-form-rtl.ant-form-item .ant-form-item-label{text-align:right}.ant-form .ant-form-item{flex-wrap:wrap}.ant-form .ant-form-item .ant-form-item-control,.ant-form .ant-form-item .ant-form-item-label{flex:0 0 100%;max-width:100%}.ant-col-xs-24.ant-form-item-label{padding:0 0 8px;line-height:1.5715;white-space:initial;text-align:left}.ant-form-rtl.ant-col-xs-24.ant-form-item-label{text-align:right}}@media (max-width:767px){.ant-col-sm-24.ant-form-item-label{padding:0 0 8px;line-height:1.5715;white-space:initial;text-align:left}.ant-col-sm-24.ant-form-item-label>label{margin:0}.ant-col-sm-24.ant-form-item-label>label::after{display:none}.ant-form-rtl.ant-col-sm-24.ant-form-item-label{text-align:right}}@media (max-width:991px){.ant-col-md-24.ant-form-item-label{padding:0 0 8px;line-height:1.5715;white-space:initial;text-align:left}.ant-col-md-24.ant-form-item-label>label{margin:0}.ant-col-md-24.ant-form-item-label>label::after{display:none}.ant-form-rtl.ant-col-md-24.ant-form-item-label{text-align:right}}@media (max-width:1199px){.ant-col-lg-24.ant-form-item-label{padding:0 0 8px;line-height:1.5715;white-space:initial;text-align:left}.ant-col-lg-24.ant-form-item-label>label{margin:0}.ant-col-lg-24.ant-form-item-label>label::after{display:none}.ant-form-rtl.ant-col-lg-24.ant-form-item-label{text-align:right}}@media (max-width:1599px){.ant-col-xl-24.ant-form-item-label{padding:0 0 8px;line-height:1.5715;white-space:initial;text-align:left}.ant-col-xl-24.ant-form-item-label>label{margin:0}.ant-col-xl-24.ant-form-item-label>label::after{display:none}.ant-form-rtl.ant-col-xl-24.ant-form-item-label{text-align:right}}.ant-form-item-explain-error{color:#a61d24}.ant-form-item-explain-warning,.ant-form-item-has-warning .ant-form-item-split{color:#d89614}.ant-form-item-has-feedback .ant-switch{margin:2px 0 4px}.ant-form-item-has-error .ant-form-item-split{color:#a61d24}.ant-form{box-sizing:border-box;margin:0;padding:0;color:rgba(255,255,255,.85);font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum}.ant-form legend{display:block;width:100%;margin-bottom:20px;padding:0;color:rgba(255,255,255,.45);font-size:16px;line-height:inherit;border:0;border-bottom:1px solid #434343}.ant-form label{font-size:14px}.ant-form input[type=search]{box-sizing:border-box}.ant-form input[type=radio],.ant-form input[type=checkbox]{line-height:normal}.ant-form output,.ant-form-item{line-height:1.5715;color:rgba(255,255,255,.85);font-size:14px}.ant-form input[type=file]{display:block}.ant-form input[type=range]{display:block;width:100%}.ant-form input[type=radio]:focus,.ant-form input[type=checkbox]:focus,.ant-form input[type=file]:focus{outline:dotted thin;outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}.ant-form output{display:block;padding-top:15px}.ant-form .ant-form-text{display:inline-block;padding-right:8px}.ant-form-small .ant-form-item-label>label{height:24px}.ant-form-small .ant-form-item-control-input{min-height:24px}.ant-form-large .ant-form-item-label>label{height:40px}.ant-form-large .ant-form-item-control-input{min-height:40px}.ant-form-item{box-sizing:border-box;margin:0 0 24px;padding:0;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;vertical-align:top;transition:margin-bottom .3s 17ms linear}.ant-form-item-with-help{margin-bottom:0;transition:none}.ant-form-item-hidden,.ant-form-item-hidden.ant-row{display:none}.ant-form-item-label{display:inline-block;flex-grow:0;overflow:hidden;white-space:nowrap;text-align:right;vertical-align:middle}.ant-form-item-label-left{text-align:left}.ant-form-item-label-wrap{overflow:unset;line-height:1.3215em;white-space:unset}.ant-form-item-label>label{position:relative;display:inline-flex;align-items:center;max-width:100%;height:32px;color:rgba(255,255,255,.85);font-size:14px}.ant-form-item-label>label>.anticon{font-size:14px;vertical-align:top}.ant-form-item-label>label.ant-form-item-required:not(.ant-form-item-required-mark-optional)::before{display:inline-block;margin-right:4px;color:#a61d24;font-size:14px;font-family:SimSun,sans-serif;line-height:1;content:'*'}.ant-form-hide-required-mark .ant-form-item-label>label.ant-form-item-required:not(.ant-form-item-required-mark-optional)::before{display:none}.ant-form-item-label>label .ant-form-item-optional{display:inline-block;margin-left:4px;color:rgba(255,255,255,.45)}.ant-form-hide-required-mark .ant-form-item-label>label .ant-form-item-optional{display:none}.ant-form-item-label>label .ant-form-item-tooltip{color:rgba(255,255,255,.45);cursor:help;writing-mode:horizontal-tb;margin-inline-start:4px}.ant-form-item-label>label::after{content:':';position:relative;top:-.5px;margin:0 8px 0 2px}.ant-form-item-label>label.ant-form-item-no-colon::after{content:' '}.ant-form-item-control{display:flex;flex-direction:column;flex-grow:1}.ant-form-item-control:first-child:not([class^=ant-col-]):not([class*=' ant-col-']){width:100%}.ant-form-item-control-input{position:relative;display:flex;align-items:center;min-height:32px}.ant-form-item-control-input-content{flex:auto;max-width:100%}.ant-form-item-explain,.ant-form-item-extra{clear:both;color:rgba(255,255,255,.45);font-size:14px;line-height:1.5715;transition:color .3s cubic-bezier(.215,.61,.355,1)}.ant-form-item-explain-connected{height:0;min-height:0;opacity:0}.ant-form-item-extra{min-height:24px}.ant-form-item-with-help .ant-form-item-explain{height:auto;min-height:24px;opacity:1}.ant-form-item-feedback-icon{font-size:14px;text-align:center;visibility:visible;animation:zoomIn .3s cubic-bezier(.12,.4,.29,1.46);pointer-events:none}.ant-form-item-feedback-icon-success{color:#49aa19}.ant-form-item-feedback-icon-error{color:#a61d24}.ant-form-item-feedback-icon-warning{color:#d89614}.ant-form-item-feedback-icon-validating{color:#177ddc}.ant-list,.ant-list-item,.ant-list-item-meta-content,.ant-list-item-meta-title,.ant-list-item-meta-title>a{color:rgba(255,255,255,.85)}.ant-show-help{transition:height .3s linear,min-height .3s linear,margin-bottom .3s cubic-bezier(.645,.045,.355,1),opacity .3s cubic-bezier(.645,.045,.355,1)}.ant-show-help-leave{min-height:24px}.ant-show-help-leave-active{min-height:0}.ant-list-spin,.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add{min-height:40px}.ant-show-help-item{overflow:hidden;transition:height .3s cubic-bezier(.645,.045,.355,1),opacity .3s cubic-bezier(.645,.045,.355,1),transform .3s cubic-bezier(.645,.045,.355,1)!important}.ant-show-help-item-appear,.ant-show-help-item-enter{transform:translateY(-5px);opacity:0}.ant-show-help-item-appear-active,.ant-show-help-item-enter-active{transform:translateY(0);opacity:1}.ant-show-help-item-leave-active{transform:translateY(-5px)}@keyframes diffZoomIn1{0%{transform:scale(0);opacity:0}100%{transform:scale(1);opacity:1}}@keyframes diffZoomIn2{0%{transform:scale(0);opacity:0}100%{transform:scale(1);opacity:1}}@keyframes diffZoomIn3{0%{transform:scale(0);opacity:0}100%{transform:scale(1);opacity:1}}.ant-form-rtl .ant-form-item-label{text-align:left}.ant-form-rtl .ant-form-item-label>label.ant-form-item-required::before{margin-right:0;margin-left:4px}.ant-form-rtl .ant-form-item-label>label::after{margin:0 2px 0 8px}.ant-form-rtl .ant-form-item-label>label .ant-form-item-optional{margin-right:4px;margin-left:0}.ant-col-rtl .ant-form-item-control:first-child{width:100%}.ant-form-rtl .ant-form-item-has-feedback .ant-input{padding-right:11px;padding-left:24px}.ant-form-rtl .ant-form-item-has-feedback .ant-input-affix-wrapper .ant-input-suffix{padding-right:11px;padding-left:18px}.ant-form-rtl .ant-form-item-has-feedback .ant-input-affix-wrapper .ant-input,.ant-form-rtl .ant-form-item-has-feedback .ant-input-number-affix-wrapper .ant-input-number{padding:0}.ant-form-rtl .ant-form-item-has-feedback .ant-input-search:not(.ant-input-search-enter-button) .ant-input-suffix{right:auto;left:28px}.ant-form-rtl .ant-form-item-has-feedback .ant-cascader-picker-clear,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-group-addon)>.ant-select .ant-select-arrow,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-group-addon)>.ant-select .ant-select-clear,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-number-group-addon)>.ant-select .ant-select-arrow,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-number-group-addon)>.ant-select .ant-select-clear,.ant-form-rtl .ant-form-item-has-feedback>.ant-select .ant-select-arrow,.ant-form-rtl .ant-form-item-has-feedback>.ant-select .ant-select-clear{left:32px;right:auto}.ant-form-rtl .ant-form-item-has-feedback .ant-input-number{padding-left:18px}.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-group-addon)>.ant-select .ant-select-selection-selected-value,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-number-group-addon)>.ant-select .ant-select-selection-selected-value,.ant-form-rtl .ant-form-item-has-feedback>.ant-select .ant-select-selection-selected-value{padding-right:0;padding-left:42px}.ant-form-rtl .ant-form-item-has-feedback .ant-cascader-picker-arrow{margin-right:0;margin-left:19px}.ant-form-rtl .ant-form-item-has-feedback .ant-picker,.ant-form-rtl .ant-form-item-has-feedback .ant-picker-large{padding-right:11px;padding-left:29.2px}.ant-form-rtl .ant-form-item-has-feedback .ant-picker-small{padding-right:7px;padding-left:25.2px}.ant-form-rtl .ant-form-item-has-feedback.ant-form-item-has-error .ant-form-item-children-icon,.ant-form-rtl .ant-form-item-has-feedback.ant-form-item-has-success .ant-form-item-children-icon,.ant-form-rtl .ant-form-item-has-feedback.ant-form-item-has-warning .ant-form-item-children-icon,.ant-form-rtl .ant-form-item-has-feedback.ant-form-item-is-validating .ant-form-item-children-icon{right:auto;left:0}.ant-form-rtl.ant-form-inline .ant-form-item{margin-right:0;margin-left:16px}nz-form-item.ant-form-item{transition:none}.ant-list .ant-card{background:0 0}.ant-list{box-sizing:border-box;margin:0;padding:0;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum;position:relative}.ant-list *{outline:0}.ant-list-pagination{margin-top:24px;text-align:right}.ant-list-pagination .ant-pagination-options{text-align:left}.ant-list-more{margin-top:12px;text-align:center}.ant-list-more button{padding-right:32px;padding-left:32px}.ant-list-spin{text-align:center}.ant-list-empty-text{padding:16px;color:rgba(255,255,255,.3);font-size:14px;text-align:center}.ant-list-items{margin:0;padding:0;list-style:none}.ant-list-item{display:flex;align-items:center;justify-content:space-between;padding:12px 0}.ant-list-item-meta{display:flex;flex:1;align-items:flex-start;max-width:100%}.ant-list-item-meta-avatar{margin-right:16px}.ant-list-item-meta-content{flex:1 0;width:0}.ant-list-item-meta-title{margin-bottom:4px;font-size:14px;line-height:1.5715}.ant-list-item-meta-title>a{transition:all .3s}.ant-list-item-meta-title>a:hover{color:#177ddc}.ant-list-item-meta-description{color:rgba(255,255,255,.45);font-size:14px;line-height:1.5715}.ant-list-item-action{flex:0 0 auto;margin-left:48px;padding:0;font-size:0;list-style:none}.ant-list-item-action>li{position:relative;display:inline-block;padding:0 8px;color:rgba(255,255,255,.45);font-size:14px;line-height:1.5715;text-align:center}.ant-list-item-action>li:first-child{padding-left:0}.ant-list-item-action-split{position:absolute;top:50%;right:0;width:1px;height:14px;margin-top:-7px;background-color:#303030}.ant-list-footer,.ant-list-header{background:0 0;padding-top:12px;padding-bottom:12px}.ant-list-empty{padding:16px 0;color:rgba(255,255,255,.45);font-size:12px;text-align:center}.ant-list-split .ant-list-item:last-child{border-bottom:none}.ant-list-split .ant-list-header,.ant-list-split.ant-list-something-after-last-item .ant-spin-container>.ant-list-items>.ant-list-item:last-child{border-bottom:1px solid #303030}.ant-list-split.ant-list-empty .ant-list-footer{border-top:1px solid #303030}.ant-list-loading .ant-list-spin-nested-loading{min-height:32px}.ant-list-lg .ant-list-item{padding:16px 24px}.ant-list-sm .ant-list-item{padding:8px 16px}.ant-list-vertical .ant-list-item{align-items:initial}.ant-list-vertical .ant-list-item-main{display:block;flex:1}.ant-list-vertical .ant-list-item-extra{margin-left:40px}.ant-list-vertical .ant-list-item-meta{margin-bottom:16px}.ant-list-vertical .ant-list-item-meta-title{margin-bottom:12px;color:rgba(255,255,255,.85);font-size:16px;line-height:24px}.ant-menu-dark .ant-menu-item-danger.ant-menu-item,.ant-menu-dark .ant-menu-item-danger.ant-menu-item:hover,.ant-menu-dark .ant-menu-item-danger.ant-menu-item>a,.ant-menu-item-danger.ant-menu-item,.ant-menu-item-danger.ant-menu-item-active,.ant-menu-item-danger.ant-menu-item-selected,.ant-menu-item-danger.ant-menu-item-selected>a,.ant-menu-item-danger.ant-menu-item-selected>a:hover,.ant-menu-item-danger.ant-menu-item:hover{color:#a61d24}.ant-list-vertical .ant-list-item-action{margin-top:16px;margin-left:auto}.ant-list-vertical .ant-list-item-action>li{padding:0 16px}.ant-list-vertical .ant-list-item-action>li:first-child{padding-left:0}.ant-list-grid .ant-col>.ant-list-item{display:block;max-width:100%;margin-bottom:16px;padding-top:0;padding-bottom:0;border-bottom:none}.ant-list-item-no-flex{display:block}.ant-list:not(.ant-list-vertical) .ant-list-item-no-flex .ant-list-item-action{float:right}.ant-list-bordered{border:1px solid #434343;border-radius:2px}.ant-list-bordered .ant-list-footer,.ant-list-bordered .ant-list-header,.ant-list-bordered .ant-list-item{padding-right:24px;padding-left:24px}.ant-list-bordered .ant-list-pagination{margin:16px 24px}.ant-list-bordered.ant-list-sm .ant-list-footer,.ant-list-bordered.ant-list-sm .ant-list-header,.ant-list-bordered.ant-list-sm .ant-list-item{padding:8px 16px}.ant-list-bordered.ant-list-lg .ant-list-footer,.ant-list-bordered.ant-list-lg .ant-list-header,.ant-list-bordered.ant-list-lg .ant-list-item{padding:16px 24px}.ant-list-rtl .ant-list-vertical .ant-list-item-action>li:first-child,.ant-list.ant-list-rtl .ant-list-item-action>li:first-child{padding-right:0;padding-left:16px}@media screen and (max-width:768px){.ant-list-item-action,.ant-list-vertical .ant-list-item-extra{margin-left:24px}}@media screen and (max-width:576px){.ant-list-item{flex-wrap:wrap}.ant-list-item-action{margin-left:12px}.ant-list-vertical .ant-list-item{flex-wrap:wrap-reverse}.ant-list-vertical .ant-list-item-main{min-width:220px}.ant-list-vertical .ant-list-item-extra{margin:auto auto 16px}}.ant-list-rtl{text-align:right}.ant-list-rtl .ant-list-pagination,.ant-menu{text-align:left}.ant-list-rtl .ant-list-item-meta-avatar{margin-right:0;margin-left:16px}.ant-list-rtl .ant-list-item-action{margin-right:48px;margin-left:0}.ant-list-rtl .ant-list-item-action-split{right:auto;left:0}.ant-list-rtl.ant-list-vertical .ant-list-item-extra{margin-right:40px;margin-left:0}.ant-list-rtl.ant-list-vertical .ant-list-item-action{margin-right:auto}.ant-list-rtl .ant-list:not(.ant-list-vertical) .ant-list-item-no-flex .ant-list-item-action{float:left}@media screen and (max-width:768px){.ant-list-rtl .ant-list-item-action,.ant-list-rtl .ant-list-vertical .ant-list-item-extra{margin-right:24px;margin-left:0}}@media screen and (max-width:576px){.ant-list-rtl .ant-list-item-action{margin-right:22px;margin-left:0}.ant-list-rtl.ant-list-vertical .ant-list-item-extra{margin:auto auto 16px}}nz-list,nz-list nz-spin,nz-list-empty,nz-list-footer,nz-list-header,nz-list-item-extra,nz-list-pagination{display:block}.ant-menu::after,.ant-menu::before{display:table;content:''}.ant-menu-item-danger.ant-menu-item:active{background:#2a1215}.ant-menu:not(.ant-menu-horizontal) .ant-menu-item-danger.ant-menu-item-selected{background-color:#2a1215}.ant-menu-inline .ant-menu-item-danger.ant-menu-item::after{border-right-color:#a61d24}.ant-menu-dark.ant-menu-dark:not(.ant-menu-horizontal) .ant-menu-item-danger.ant-menu-item-selected{color:#fff;background-color:#a61d24}.ant-menu{box-sizing:border-box;margin:0;padding:0;font-variant:tabular-nums;font-feature-settings:tnum;color:rgba(255,255,255,.85);font-size:14px;line-height:0;list-style:none;background:#141414;outline:0;transition:background .3s,width .3s cubic-bezier(.2,0,0,1) 0s}.ant-menu::after{clear:both}.ant-menu ol,.ant-menu ul{margin:0;padding:0;list-style:none}.ant-menu-overflow{display:flex}.ant-menu-hidden,.ant-menu-submenu-hidden,.ant-menu-submenu-horizontal .ant-menu-submenu-arrow{display:none}.ant-menu-overflow-item{flex:none}.ant-menu-item-group-title{height:1.5715;padding:8px 16px;color:rgba(255,255,255,.45);font-size:14px;line-height:1.5715;transition:all .3s}.ant-menu-horizontal .ant-menu-submenu{transition:border-color .3s cubic-bezier(.645,.045,.355,1),background .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-submenu,.ant-menu-submenu-inline{transition:border-color .3s cubic-bezier(.645,.045,.355,1),background .3s cubic-bezier(.645,.045,.355,1),padding .15s cubic-bezier(.645,.045,.355,1)}.ant-menu-submenu-selected{color:#177ddc}.ant-menu-horizontal>.ant-menu-item-active,.ant-menu-horizontal>.ant-menu-item:hover,.ant-menu-horizontal>.ant-menu-submenu .ant-menu-submenu-title:hover,.ant-menu-item a::before{background-color:transparent}.ant-menu-submenu .ant-menu-sub{cursor:initial;transition:background .3s cubic-bezier(.645,.045,.355,1),padding .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-title-content{transition:color .3s}.ant-menu-item a{color:rgba(255,255,255,.85)}.ant-menu-item a:hover{color:#177ddc}.ant-menu-item a::before{position:absolute;top:0;right:0;bottom:0;left:0;content:''}.ant-menu-item>.ant-badge a{color:rgba(255,255,255,.85)}.ant-menu-item-selected,.ant-menu-item-selected a,.ant-menu-item-selected a:hover,.ant-menu-item>.ant-badge a:hover{color:#177ddc}.ant-menu-item-divider{overflow:hidden;line-height:0;border-color:#303030;border-style:solid;border-width:1px 0 0}.ant-menu-item-divider-dashed{border-style:dashed}.ant-menu-horizontal .ant-menu-item,.ant-menu-horizontal .ant-menu-submenu{margin-top:-1px}.ant-menu:not(.ant-menu-horizontal) .ant-menu-item-selected{background-color:#111b26}.ant-menu-inline,.ant-menu-vertical,.ant-menu-vertical-left{border-right:1px solid #303030}.ant-menu-vertical-right{border-left:1px solid #303030}.ant-menu-vertical-left.ant-menu-sub,.ant-menu-vertical-right.ant-menu-sub,.ant-menu-vertical.ant-menu-sub{min-width:160px;max-height:calc(100vh - 100px);padding:0;overflow:hidden;border-right:0}.ant-menu-vertical-left.ant-menu-sub:not([class*='-active']),.ant-menu-vertical-right.ant-menu-sub:not([class*='-active']),.ant-menu-vertical.ant-menu-sub:not([class*='-active']){overflow-x:hidden;overflow-y:auto}.ant-menu-vertical-left.ant-menu-sub .ant-menu-item,.ant-menu-vertical-right.ant-menu-sub .ant-menu-item,.ant-menu-vertical.ant-menu-sub .ant-menu-item{left:0;margin-left:0;border-right:0}.ant-menu-vertical-left.ant-menu-sub .ant-menu-item::after,.ant-menu-vertical-right.ant-menu-sub .ant-menu-item::after,.ant-menu-vertical.ant-menu-sub .ant-menu-item::after{border-right:0}.ant-menu-vertical-left.ant-menu-sub>.ant-menu-item,.ant-menu-vertical-left.ant-menu-sub>.ant-menu-submenu,.ant-menu-vertical-right.ant-menu-sub>.ant-menu-item,.ant-menu-vertical-right.ant-menu-sub>.ant-menu-submenu,.ant-menu-vertical.ant-menu-sub>.ant-menu-item,.ant-menu-vertical.ant-menu-sub>.ant-menu-submenu{transform-origin:0 0}.ant-menu-horizontal.ant-menu-sub{min-width:114px}.ant-menu-horizontal .ant-menu-item,.ant-menu-horizontal .ant-menu-submenu-title{transition:border-color .3s,background .3s}.ant-menu-item,.ant-menu-submenu-title{position:relative;display:block;margin:0;padding:0 20px;white-space:nowrap;cursor:pointer;transition:border-color .3s,background .3s,padding .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-item .ant-menu-item-icon,.ant-menu-item .anticon,.ant-menu-submenu-title .ant-menu-item-icon,.ant-menu-submenu-title .anticon{min-width:14px;font-size:14px;transition:font-size .15s cubic-bezier(.215,.61,.355,1),margin .3s cubic-bezier(.645,.045,.355,1),color .3s}.ant-menu-item .ant-menu-item-icon+span,.ant-menu-item .anticon+span,.ant-menu-submenu-title .ant-menu-item-icon+span,.ant-menu-submenu-title .anticon+span{margin-left:10px;opacity:1;transition:opacity .3s cubic-bezier(.645,.045,.355,1),margin .3s,color .3s}.ant-menu-submenu-arrow,.ant-menu-submenu-expand-icon,.ant-menu-submenu>.ant-menu-submenu-title::after{transition:transform .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-item .ant-menu-item-icon.svg,.ant-menu-submenu-title .ant-menu-item-icon.svg{vertical-align:-.125em}.ant-menu-item.ant-menu-item-only-child>.ant-menu-item-icon,.ant-menu-item.ant-menu-item-only-child>.anticon,.ant-menu-submenu-title.ant-menu-item-only-child>.ant-menu-item-icon,.ant-menu-submenu-title.ant-menu-item-only-child>.anticon{margin-right:0}.ant-menu-item:focus-visible,.ant-menu-submenu-title:focus-visible{box-shadow:0 0 0 2px #11263c}.ant-menu>.ant-menu-item-divider{margin:1px 0;padding:0}.ant-menu-submenu-popup{position:absolute;z-index:1050;background:0 0;border-radius:2px;box-shadow:none;transform-origin:0 0}.ant-menu-submenu-popup::before{position:absolute;top:-7px;right:0;bottom:0;left:0;z-index:-1;width:100%;height:100%;opacity:.0001;content:' '}.ant-menu-submenu-placement-rightTop::before{top:0;left:-7px}.ant-menu-submenu>.ant-menu{background-color:#141414;border-radius:2px}.ant-menu-submenu-popup>.ant-menu{background-color:#1f1f1f}.ant-menu-submenu-arrow,.ant-menu-submenu-expand-icon{position:absolute;top:50%;right:16px;width:10px;color:rgba(255,255,255,.85);transform:translateY(-50%)}.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-active,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-open,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-selected,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item:hover,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-active,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-open,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-selected,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu:hover,.ant-menu-submenu:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-submenu:hover>.ant-menu-submenu-title>.ant-menu-submenu-expand-icon,.ant-menu-vertical .ant-menu-submenu-selected,.ant-menu-vertical-left .ant-menu-submenu-selected,.ant-menu-vertical-right .ant-menu-submenu-selected{color:#177ddc}.ant-menu-submenu-arrow::after,.ant-menu-submenu-arrow::before{position:absolute;width:6px;height:1.5px;background-color:currentcolor;border-radius:2px;transition:background .3s cubic-bezier(.645,.045,.355,1),transform .3s cubic-bezier(.645,.045,.355,1),top .3s cubic-bezier(.645,.045,.355,1),color .3s cubic-bezier(.645,.045,.355,1);content:''}.ant-menu-submenu-arrow::before{transform:rotate(45deg) translateY(-2.5px)}.ant-menu-submenu-arrow::after{transform:rotate(-45deg) translateY(2.5px)}.ant-menu-inline-collapsed .ant-menu-submenu-arrow::before,.ant-menu-submenu-inline .ant-menu-submenu-arrow::before{transform:rotate(-45deg) translateX(2.5px)}.ant-menu-inline-collapsed .ant-menu-submenu-arrow::after,.ant-menu-submenu-inline .ant-menu-submenu-arrow::after{transform:rotate(45deg) translateX(-2.5px)}.ant-menu-submenu-open.ant-menu-submenu-inline>.ant-menu-submenu-title>.ant-menu-submenu-arrow{transform:translateY(-2px)}.ant-menu-submenu-open.ant-menu-submenu-inline>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after{transform:rotate(-45deg) translateX(-2.5px)}.ant-menu-submenu-open.ant-menu-submenu-inline>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before{transform:rotate(45deg) translateX(2.5px)}.ant-menu-horizontal{line-height:46px;border:0;border-bottom:1px solid #303030;box-shadow:none}.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu{margin-top:-1px;margin-bottom:0;padding:0 20px}.ant-menu-horizontal>.ant-menu-item a,.ant-menu.ant-menu-inline-collapsed-tooltip a{color:rgba(255,255,255,.85)}.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-active::after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-open::after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-selected::after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item:hover::after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-active::after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-open::after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-selected::after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu:hover::after{border-bottom:2px solid #177ddc}.ant-menu-horizontal>.ant-menu-item,.ant-menu-horizontal>.ant-menu-submenu{position:relative;top:1px;display:inline-block;vertical-align:bottom}.ant-menu-horizontal>.ant-menu-item::after,.ant-menu-horizontal>.ant-menu-submenu::after{position:absolute;right:20px;bottom:0;left:20px;border-bottom:2px solid transparent;transition:border-color .3s cubic-bezier(.645,.045,.355,1);content:''}.ant-menu-horizontal>.ant-menu-submenu>.ant-menu-submenu-title{padding:0}.ant-menu-horizontal>.ant-menu-item a:hover,.ant-menu-horizontal>.ant-menu-item-selected a{color:#177ddc}.ant-menu-horizontal>.ant-menu-item a::before{bottom:-2px}.ant-menu-horizontal::after{display:block;clear:both;height:0;content:'\20'}.ant-menu-inline .ant-menu-item,.ant-menu-vertical .ant-menu-item,.ant-menu-vertical-left .ant-menu-item,.ant-menu-vertical-right .ant-menu-item{position:relative}.ant-menu-inline .ant-menu-item::after,.ant-menu-vertical .ant-menu-item::after,.ant-menu-vertical-left .ant-menu-item::after,.ant-menu-vertical-right .ant-menu-item::after{position:absolute;top:0;right:0;bottom:0;border-right:3px solid #177ddc;transform:scaleY(.0001);opacity:0;transition:transform .15s cubic-bezier(.215,.61,.355,1),opacity .15s cubic-bezier(.215,.61,.355,1);content:''}.ant-menu-inline .ant-menu-item,.ant-menu-inline .ant-menu-submenu-title,.ant-menu-vertical .ant-menu-item,.ant-menu-vertical .ant-menu-submenu-title,.ant-menu-vertical-left .ant-menu-item,.ant-menu-vertical-left .ant-menu-submenu-title,.ant-menu-vertical-right .ant-menu-item,.ant-menu-vertical-right .ant-menu-submenu-title{height:40px;margin-top:4px;margin-bottom:4px;padding:0 16px;overflow:hidden;line-height:40px;text-overflow:ellipsis}.ant-menu-inline .ant-menu-item-group-list .ant-menu-submenu-title,.ant-menu-inline .ant-menu-submenu-title,.ant-menu-vertical .ant-menu-item-group-list .ant-menu-submenu-title,.ant-menu-vertical .ant-menu-submenu-title{padding-right:34px}.ant-menu-inline .ant-menu-submenu,.ant-menu-vertical .ant-menu-submenu,.ant-menu-vertical-left .ant-menu-submenu,.ant-menu-vertical-right .ant-menu-submenu{padding-bottom:.02px}.ant-menu-inline .ant-menu-item:not(:last-child),.ant-menu-vertical .ant-menu-item:not(:last-child),.ant-menu-vertical-left .ant-menu-item:not(:last-child),.ant-menu-vertical-right .ant-menu-item:not(:last-child){margin-bottom:8px}.ant-menu-inline>.ant-menu-item,.ant-menu-inline>.ant-menu-submenu>.ant-menu-submenu-title,.ant-menu-vertical-left>.ant-menu-item,.ant-menu-vertical-left>.ant-menu-submenu>.ant-menu-submenu-title,.ant-menu-vertical-right>.ant-menu-item,.ant-menu-vertical-right>.ant-menu-submenu>.ant-menu-submenu-title,.ant-menu-vertical>.ant-menu-item,.ant-menu-vertical>.ant-menu-submenu>.ant-menu-submenu-title{height:40px;line-height:40px}.ant-menu-inline{width:100%}.ant-menu-inline .ant-menu-item-selected::after,.ant-menu-inline .ant-menu-selected::after{transform:scaleY(1);opacity:1;transition:transform .15s cubic-bezier(.645,.045,.355,1),opacity .15s cubic-bezier(.645,.045,.355,1)}.ant-menu-inline .ant-menu-item,.ant-menu-inline .ant-menu-submenu-title{width:calc(100% + 1px)}.ant-menu-inline.ant-menu-root .ant-menu-item,.ant-menu-inline.ant-menu-root .ant-menu-submenu-title{display:flex;align-items:center;transition:border-color .3s,background .3s,padding .1s cubic-bezier(.215,.61,.355,1)}.ant-menu-inline.ant-menu-root .ant-menu-item>.ant-menu-title-content,.ant-menu-inline.ant-menu-root .ant-menu-submenu-title>.ant-menu-title-content{flex:auto;min-width:0;overflow:hidden;text-overflow:ellipsis}.ant-menu-inline.ant-menu-root .ant-menu-item>*,.ant-menu-inline.ant-menu-root .ant-menu-submenu-title>*{flex:none}.ant-menu.ant-menu-inline-collapsed{width:80px}.ant-menu.ant-menu-inline-collapsed>.ant-menu-item,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title{left:0;padding:0 calc(50% - 16px / 2);text-overflow:clip}.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .ant-menu-submenu-arrow,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .ant-menu-submenu-arrow,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-submenu-arrow{opacity:0}.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .anticon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .anticon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .anticon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .anticon{margin:0;font-size:16px;line-height:40px}.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .ant-menu-item-icon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .anticon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .ant-menu-item-icon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .anticon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-item-icon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .anticon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-item-icon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .anticon+span{display:inline-block;opacity:0}.ant-menu.ant-menu-inline-collapsed .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed .anticon{display:inline-block}.ant-menu.ant-menu-inline-collapsed-tooltip{pointer-events:none}.ant-menu.ant-menu-inline-collapsed-tooltip .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed-tooltip .anticon{display:none}.ant-menu.ant-menu-inline-collapsed .ant-menu-item-group-title{padding-right:4px;padding-left:4px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-menu-item-group-list{margin:0;padding:0}.ant-menu-item-group-list .ant-menu-item,.ant-menu-item-group-list .ant-menu-submenu-title{padding:0 16px 0 28px}.ant-menu-root.ant-menu-inline,.ant-menu-root.ant-menu-vertical,.ant-menu-root.ant-menu-vertical-left,.ant-menu-root.ant-menu-vertical-right{box-shadow:none}.ant-menu-root.ant-menu-inline-collapsed .ant-menu-item>.ant-menu-inline-collapsed-noicon,.ant-menu-root.ant-menu-inline-collapsed .ant-menu-submenu .ant-menu-submenu-title>.ant-menu-inline-collapsed-noicon{font-size:16px;text-align:center}.ant-menu-rtl .ant-menu-item-group-title,.ant-menu-rtl.ant-menu-inline .ant-menu-item,.ant-menu-rtl.ant-menu-inline .ant-menu-submenu-title,.ant-menu-rtl.ant-menu-vertical .ant-menu-item,.ant-menu-rtl.ant-menu-vertical .ant-menu-submenu-title,.ant-menu-rtl.ant-menu-vertical-left .ant-menu-item,.ant-menu-rtl.ant-menu-vertical-left .ant-menu-submenu-title,.ant-menu-rtl.ant-menu-vertical-right .ant-menu-item,.ant-menu-rtl.ant-menu-vertical-right .ant-menu-submenu-title,.ant-menu.ant-menu-rtl{text-align:right}.ant-menu-sub.ant-menu-inline{padding:0;background:rgba(255,255,255,.04);border-radius:0;box-shadow:none}.ant-menu-sub.ant-menu-inline>.ant-menu-item,.ant-menu-sub.ant-menu-inline>.ant-menu-submenu>.ant-menu-submenu-title{height:40px;line-height:40px;list-style-position:inside;list-style-type:disc}.ant-menu-sub.ant-menu-inline .ant-menu-item-group-title{padding-left:32px}.ant-menu-item-disabled,.ant-menu-submenu-disabled{color:rgba(255,255,255,.3)!important;background:0 0;cursor:not-allowed}.ant-menu-item-disabled::after,.ant-menu-submenu-disabled::after{border-color:transparent!important}.ant-menu-item-disabled a,.ant-menu-submenu-disabled a{color:rgba(255,255,255,.3)!important;pointer-events:none}.ant-menu-item-disabled>.ant-menu-submenu-title,.ant-menu-submenu-disabled>.ant-menu-submenu-title{color:rgba(255,255,255,.3)!important;cursor:not-allowed}.ant-menu-item-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-item-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-submenu-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-submenu-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before{background:rgba(255,255,255,.3)!important}.ant-layout-header .ant-menu{line-height:inherit}.ant-menu-inline-collapsed-tooltip a,.ant-menu-inline-collapsed-tooltip a:hover{color:#fff}.ant-menu-light .ant-menu-item-active,.ant-menu-light .ant-menu-item:hover,.ant-menu-light .ant-menu-submenu-active,.ant-menu-light .ant-menu-submenu-title:hover,.ant-menu-light .ant-menu:not(.ant-menu-inline) .ant-menu-submenu-open{color:#177ddc}.ant-menu-dark .ant-menu-item:focus-visible,.ant-menu-dark .ant-menu-submenu-title:focus-visible,.ant-menu.ant-menu-root:focus-visible{box-shadow:0 0 0 2px #388ed3}.ant-menu-dark .ant-menu-sub,.ant-menu.ant-menu-dark,.ant-menu.ant-menu-dark .ant-menu-sub{color:rgba(255,255,255,.65);background:#1f1f1f}.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu.ant-menu-dark .ant-menu-submenu-title .ant-menu-submenu-arrow{opacity:.45;transition:all .3s}.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow::before,.ant-menu.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow::before,.ant-menu.ant-menu-dark .ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu.ant-menu-dark .ant-menu-submenu-title .ant-menu-submenu-arrow::before{background:#fff}.ant-menu-dark.ant-menu-submenu-popup{background:0 0}.ant-menu-dark .ant-menu-inline.ant-menu-sub{background:#141414}.ant-menu-dark.ant-menu-horizontal{border-bottom:0}.ant-menu-dark.ant-menu-horizontal>.ant-menu-item,.ant-menu-dark.ant-menu-horizontal>.ant-menu-submenu{top:0;margin-top:0;padding:0 20px;border-color:#1f1f1f;border-bottom:0}.ant-menu-dark.ant-menu-horizontal>.ant-menu-item:hover{background-color:#177ddc}.ant-menu-dark.ant-menu-horizontal>.ant-menu-item>a::before{bottom:0}.ant-menu-dark .ant-menu-item,.ant-menu-dark .ant-menu-item-group-title,.ant-menu-dark .ant-menu-item>a,.ant-menu-dark .ant-menu-item>span>a{color:rgba(255,255,255,.65)}.ant-menu-dark.ant-menu-inline,.ant-menu-dark.ant-menu-vertical,.ant-menu-dark.ant-menu-vertical-left,.ant-menu-dark.ant-menu-vertical-right{border-right:0}.ant-menu-dark.ant-menu-inline .ant-menu-item,.ant-menu-dark.ant-menu-vertical .ant-menu-item,.ant-menu-dark.ant-menu-vertical-left .ant-menu-item,.ant-menu-dark.ant-menu-vertical-right .ant-menu-item{left:0;margin-left:0;border-right:0}.ant-menu-dark.ant-menu-inline .ant-menu-item::after,.ant-menu-dark.ant-menu-vertical .ant-menu-item::after,.ant-menu-dark.ant-menu-vertical-left .ant-menu-item::after,.ant-menu-dark.ant-menu-vertical-right .ant-menu-item::after{border-right:0}.ant-menu-dark.ant-menu-inline .ant-menu-item,.ant-menu-dark.ant-menu-inline .ant-menu-submenu-title{width:100%}.ant-menu-dark .ant-menu-item-active,.ant-menu-dark .ant-menu-item:hover,.ant-menu-dark .ant-menu-submenu-active,.ant-menu-dark .ant-menu-submenu-open,.ant-menu-dark .ant-menu-submenu-selected,.ant-menu-dark .ant-menu-submenu-title:hover{color:#fff;background-color:transparent}.ant-menu-dark .ant-menu-item-active>a,.ant-menu-dark .ant-menu-item-active>span>a,.ant-menu-dark .ant-menu-item:hover>a,.ant-menu-dark .ant-menu-item:hover>span>a,.ant-menu-dark .ant-menu-submenu-active>a,.ant-menu-dark .ant-menu-submenu-active>span>a,.ant-menu-dark .ant-menu-submenu-open>a,.ant-menu-dark .ant-menu-submenu-open>span>a,.ant-menu-dark .ant-menu-submenu-selected>a,.ant-menu-dark .ant-menu-submenu-selected>span>a,.ant-menu-dark .ant-menu-submenu-title:hover>a,.ant-menu-dark .ant-menu-submenu-title:hover>span>a{color:#fff}.ant-menu-dark .ant-menu-item-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-item:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-open>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-selected>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-title:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow{opacity:1}.ant-menu-dark .ant-menu-item-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-item-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-item:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-item:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-submenu-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-submenu-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-submenu-open>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-submenu-open>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-submenu-selected>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-submenu-selected>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-submenu-title:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-submenu-title:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before{background:#fff}.ant-menu-dark .ant-menu-item:hover{background-color:transparent}.ant-menu-dark.ant-menu-dark:not(.ant-menu-horizontal) .ant-menu-item-selected,.ant-menu-submenu-popup.ant-menu-dark .ant-menu-item-selected,.ant-menu.ant-menu-dark .ant-menu-item-selected{background-color:#177ddc}.ant-menu-dark .ant-menu-item-selected{color:#fff;border-right:0}.ant-menu-dark .ant-menu-item-selected::after{border-right:0}.ant-menu-dark .ant-menu-item-selected .ant-menu-item-icon,.ant-menu-dark .ant-menu-item-selected .ant-menu-item-icon+span,.ant-menu-dark .ant-menu-item-selected .anticon,.ant-menu-dark .ant-menu-item-selected .anticon+span,.ant-menu-dark .ant-menu-item-selected>a,.ant-menu-dark .ant-menu-item-selected>a:hover,.ant-menu-dark .ant-menu-item-selected>span>a,.ant-menu-dark .ant-menu-item-selected>span>a:hover{color:#fff}.ant-menu-dark .ant-menu-item-disabled,.ant-menu-dark .ant-menu-item-disabled>a,.ant-menu-dark .ant-menu-item-disabled>span>a,.ant-menu-dark .ant-menu-submenu-disabled,.ant-menu-dark .ant-menu-submenu-disabled>a,.ant-menu-dark .ant-menu-submenu-disabled>span>a{color:rgba(255,255,255,.3)!important;opacity:.8}.ant-menu-dark .ant-menu-item-disabled>.ant-menu-submenu-title,.ant-menu-dark .ant-menu-submenu-disabled>.ant-menu-submenu-title{color:rgba(255,255,255,.3)!important}.ant-menu-dark .ant-menu-item-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-item-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-submenu-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-submenu-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before{background:rgba(255,255,255,.3)!important}.ant-menu-rtl.ant-menu-inline,.ant-menu-rtl.ant-menu-vertical{border-right:none;border-left:1px solid #303030}.ant-menu-rtl.ant-menu-dark.ant-menu-inline,.ant-menu-rtl.ant-menu-dark.ant-menu-vertical{border-left:none}.ant-menu-rtl.ant-menu-vertical-left.ant-menu-sub>.ant-menu-item,.ant-menu-rtl.ant-menu-vertical-left.ant-menu-sub>.ant-menu-submenu,.ant-menu-rtl.ant-menu-vertical-right.ant-menu-sub>.ant-menu-item,.ant-menu-rtl.ant-menu-vertical-right.ant-menu-sub>.ant-menu-submenu,.ant-menu-rtl.ant-menu-vertical.ant-menu-sub>.ant-menu-item,.ant-menu-rtl.ant-menu-vertical.ant-menu-sub>.ant-menu-submenu{transform-origin:top right}.ant-menu-rtl .ant-menu-item .ant-menu-item-icon,.ant-menu-rtl .ant-menu-item .anticon,.ant-menu-rtl .ant-menu-submenu-title .ant-menu-item-icon,.ant-menu-rtl .ant-menu-submenu-title .anticon{margin-right:auto;margin-left:10px}.ant-menu-rtl .ant-menu-item.ant-menu-item-only-child>.ant-menu-item-icon,.ant-menu-rtl .ant-menu-item.ant-menu-item-only-child>.anticon,.ant-menu-rtl .ant-menu-submenu-title.ant-menu-item-only-child>.ant-menu-item-icon,.ant-menu-rtl .ant-menu-submenu-title.ant-menu-item-only-child>.anticon{margin-left:0}.ant-menu-submenu-rtl.ant-menu-submenu-popup{transform-origin:100% 0}.ant-menu-rtl .ant-menu-submenu-inline>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu-rtl .ant-menu-submenu-vertical-left>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu-rtl .ant-menu-submenu-vertical-right>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu-rtl .ant-menu-submenu-vertical>.ant-menu-submenu-title .ant-menu-submenu-arrow{right:auto;left:16px}.ant-menu-rtl .ant-menu-submenu-vertical-left>.ant-menu-submenu-title .ant-menu-submenu-arrow::before,.ant-menu-rtl .ant-menu-submenu-vertical-right>.ant-menu-submenu-title .ant-menu-submenu-arrow::before,.ant-menu-rtl .ant-menu-submenu-vertical>.ant-menu-submenu-title .ant-menu-submenu-arrow::before{transform:rotate(-45deg) translateY(-2px)}.ant-menu-rtl .ant-menu-submenu-vertical-left>.ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu-rtl .ant-menu-submenu-vertical-right>.ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu-rtl .ant-menu-submenu-vertical>.ant-menu-submenu-title .ant-menu-submenu-arrow::after{transform:rotate(45deg) translateY(2px)}.ant-menu-rtl.ant-menu-inline .ant-menu-item::after,.ant-menu-rtl.ant-menu-vertical .ant-menu-item::after,.ant-menu-rtl.ant-menu-vertical-left .ant-menu-item::after,.ant-menu-rtl.ant-menu-vertical-right .ant-menu-item::after{right:auto;left:0}.ant-menu-rtl.ant-menu-inline .ant-menu-submenu-title{padding-right:0;padding-left:34px}.ant-menu-rtl.ant-menu-vertical .ant-menu-submenu-title{padding-right:16px;padding-left:34px}.ant-menu-rtl.ant-menu-inline-collapsed.ant-menu-vertical .ant-menu-submenu-title{padding:0 calc(50% - 16px / 2)}.ant-menu-rtl .ant-menu-item-group-list .ant-menu-item,.ant-menu-rtl .ant-menu-item-group-list .ant-menu-submenu-title{padding:0 28px 0 16px}.ant-menu-sub.ant-menu-inline{border:0}.ant-menu-rtl.ant-menu-sub.ant-menu-inline .ant-menu-item-group-title{padding-right:32px;padding-left:0}.ant-menu-submenu.ant-menu-submenu-placement-bottom{top:6px;position:relative}.ant-menu-submenu.ant-menu-submenu-placement-right{left:4px;position:relative}.ant-menu-submenu.ant-menu-submenu-placement-right.ant-menu-submenu-rtl{left:auto;right:4px}.ant-menu-submenu.ant-menu-submenu-placement-left{right:4px;position:relative}.ant-menu-submenu.ant-menu-submenu-placement-left.ant-menu-submenu-rtl{right:auto;left:4px}.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions,.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:hover{background:0 0;border-color:#a61d24}.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions-focused,.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:focus{border-color:#a61d24;box-shadow:0 0 0 2px rgba(166,29,36,.2);border-right-width:1px;outline:0}.ant-mentions-status-error .ant-input-prefix{color:#a61d24}.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions,.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:hover{background:0 0;border-color:#d89614}.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions-focused,.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:focus{border-color:#d89614;box-shadow:0 0 0 2px rgba(216,150,20,.2);border-right-width:1px;outline:0}.ant-mentions-status-warning .ant-input-prefix{color:#d89614}.ant-mentions{box-sizing:border-box;margin:0;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;width:100%;min-width:0;color:rgba(255,255,255,.85);font-size:14px;background-color:transparent;background-image:none;border:1px solid #434343;border-radius:2px;transition:all .3s;position:relative;display:inline-block;height:auto;padding:0;overflow:hidden;line-height:1.5715;white-space:pre-wrap;vertical-align:bottom}.ant-mentions-disabled,.ant-mentions[disabled]{background-color:rgba(255,255,255,.08);opacity:1;color:rgba(255,255,255,.3);pointer-events:none}.ant-mentions::-moz-placeholder{opacity:1}.ant-mentions::placeholder{color:rgba(255,255,255,.3);user-select:none}.ant-mentions:placeholder-shown{text-overflow:ellipsis}.ant-mentions:hover{border-color:#165996;border-right-width:1px}.ant-input-rtl .ant-mentions:hover{border-right-width:0;border-left-width:1px!important}.ant-mentions-focused,.ant-mentions:focus{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-mentions-focused,.ant-input-rtl .ant-mentions:focus{border-right-width:0;border-left-width:1px!important}.ant-mentions-disabled:hover,.ant-mentions[disabled]:hover{border-color:#434343;border-right-width:1px}.ant-mentions-disabled{border-color:#434343;box-shadow:none;cursor:not-allowed}.ant-mentions[disabled]{border-color:#434343;box-shadow:none;cursor:not-allowed}.ant-mentions-borderless,.ant-mentions-borderless-disabled,.ant-mentions-borderless-focused,.ant-mentions-borderless:focus,.ant-mentions-borderless:hover,.ant-mentions-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-mentions{max-width:100%;height:auto;min-height:32px;line-height:1.5715;vertical-align:bottom;transition:all .3s,height 0s}.ant-mentions-lg{padding:6.5px 11px;font-size:16px}.ant-mentions-sm{padding:0 7px}.ant-mentions-stepperless[type=number]{-moz-appearance:textfield}.ant-mentions-stepperless[type=number] ::-webkit-outer-spin-button,.ant-mentions-stepperless[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ant-mentions-disabled>textarea{background-color:rgba(255,255,255,.08);border-color:#434343;box-shadow:none;cursor:not-allowed;opacity:1;color:rgba(255,255,255,.3);pointer-events:none}.ant-mentions-disabled>textarea:hover{border-color:#434343;border-right-width:1px}.ant-mentions-focused{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-mentions-focused{border-right-width:0;border-left-width:1px!important}.ant-mentions-measure,.ant-mentions>textarea{min-height:30px;margin:0;padding:4px 11px;overflow:inherit;overflow-x:hidden;overflow-y:auto;font-weight:inherit;font-size:inherit;font-family:inherit;font-style:inherit;font-variant:inherit;font-size-adjust:inherit;font-stretch:inherit;line-height:inherit;direction:inherit;letter-spacing:inherit;white-space:inherit;text-align:inherit;vertical-align:top;word-wrap:break-word;word-break:inherit;tab-size:inherit}.ant-mentions-dropdown,.ant-message{font-size:14px;list-style:none;font-feature-settings:tnum;box-sizing:border-box}.ant-mentions>textarea{width:100%;border:none;outline:0;resize:none;background-color:transparent}.ant-mentions>textarea::-moz-placeholder{opacity:1}.ant-mentions>textarea::placeholder{color:rgba(255,255,255,.3);user-select:none}.ant-mentions>textarea:placeholder-shown{text-overflow:ellipsis}.ant-mentions-measure{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;color:transparent;pointer-events:none}.ant-mentions-measure>span{display:inline-block;min-height:1em}.ant-mentions-dropdown{margin:0;padding:0;color:rgba(255,255,255,.85);line-height:1.5715;z-index:1050;font-variant:initial;background-color:#1f1f1f;border-radius:2px;outline:0}.ant-mentions-dropdown-hidden{display:none}.ant-mentions-dropdown-menu{max-height:250px;margin-bottom:0;padding-left:0;overflow:auto;list-style:none;outline:0}.ant-mentions-dropdown-menu-item{position:relative;display:block;min-width:100px;padding:5px 12px;overflow:hidden;color:rgba(255,255,255,.85);font-weight:400;line-height:1.5715;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:background .3s ease}.ant-mentions-dropdown-menu-item:hover{background-color:rgba(255,255,255,.08)}.ant-mentions-dropdown-menu-item:first-child{border-radius:2px 2px 0 0}.ant-mentions-dropdown-menu-item:last-child{border-radius:0 0 2px 2px}.ant-mentions-dropdown-menu-item-disabled{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-mentions-dropdown-menu-item-disabled:hover{color:rgba(255,255,255,.3);background-color:#1f1f1f;cursor:not-allowed}.ant-mentions-dropdown-menu-item-selected{color:rgba(255,255,255,.85);font-weight:600;background-color:rgba(255,255,255,.04)}.ant-mentions-dropdown-menu-item-active{background-color:rgba(255,255,255,.08)}.ant-mentions-suffix{position:absolute;top:0;right:11px;bottom:0;z-index:1;display:inline-flex;align-items:center;margin:auto}.ant-mentions-dropdown{top:100%;left:12px;position:relative;width:100%;margin-top:8px;margin-bottom:4px}.ant-mentions:focus-within{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-mentions:focus-within{border-right-width:0;border-left-width:1px!important}.ant-mentions.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:focus-within{border-color:#a61d24;box-shadow:0 0 0 2px rgba(166,29,36,.2);border-right-width:1px;outline:0}.ant-mentions.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:focus-within{border-color:#d89614;box-shadow:0 0 0 2px rgba(216,150,20,.2);border-right-width:1px;outline:0}.ant-message{margin:0;padding:0;color:rgba(255,255,255,.85);font-variant:tabular-nums;line-height:1.5715;position:fixed;top:8px;left:0;z-index:1010;width:100%;pointer-events:none}.ant-message-notice{padding:8px;text-align:center}.ant-message-notice-content{display:inline-block;padding:10px 16px;background:#1f1f1f;border-radius:2px;pointer-events:all}.ant-message-success .anticon{color:#49aa19}.ant-message-error .anticon{color:#a61d24}.ant-message-warning .anticon{color:#d89614}.ant-message-info .anticon,.ant-message-loading .anticon{color:#177ddc}.ant-modal,.ant-modal-title{color:rgba(255,255,255,.85)}.ant-message .anticon{position:relative;top:1px;margin-right:8px;font-size:16px}.ant-message-notice.ant-move-up-leave.ant-move-up-leave-active{animation-name:MessageMoveOut;animation-duration:.3s}@keyframes MessageMoveOut{0%{max-height:150px;padding:8px;opacity:1}100%{max-height:0;padding:0;opacity:0}}.ant-message-rtl .anticon{margin-right:0;margin-left:8px}.ant-modal{box-sizing:border-box;padding:0 0 24px;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum;pointer-events:none;position:relative;top:100px;width:auto;max-width:calc(100vw - 32px);margin:0 auto}.ant-modal.ant-zoom-appear,.ant-modal.ant-zoom-enter{transform:none;opacity:0;animation-duration:.3s;user-select:none}.ant-modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;height:100%;background-color:rgba(0,0,0,.45)}.ant-modal .ant-anchor-wrapper,.ant-modal .ant-card,.ant-modal .ant-collapse-content,.ant-modal .ant-picker-clear,.ant-modal .ant-slider-handle,.ant-modal .ant-timeline-item-head,.ant-modal-content{background-color:#1f1f1f}.ant-modal-mask-hidden{display:none}.ant-modal-wrap{position:fixed;top:0;right:0;bottom:0;left:0;overflow:auto;outline:0;-webkit-overflow-scrolling:touch;z-index:1000}.ant-modal-title{margin:0;font-weight:500;font-size:16px;line-height:22px;word-wrap:break-word}.ant-modal-content{position:relative;background-clip:padding-box;border:0;border-radius:2px;pointer-events:auto}.ant-modal .ant-badge-count,.ant-notification .ant-badge-count{box-shadow:0 0 0 1px #1f1f1f}.ant-modal-close{position:absolute;top:0;right:0;z-index:10;padding:0;color:rgba(255,255,255,.45);font-weight:700;line-height:1;text-decoration:none;background:0 0;border:0;outline:0;cursor:pointer;transition:color .3s}.ant-modal-close-x{display:block;width:56px;height:56px;font-size:16px;font-style:normal;line-height:56px;text-align:center;text-transform:none;text-rendering:auto}.ant-modal-close:focus,.ant-modal-close:hover{color:rgba(255,255,255,.75);text-decoration:none}.ant-modal-header{padding:16px 24px;color:rgba(255,255,255,.85);background:#1f1f1f;border-bottom:1px solid #303030;border-radius:2px 2px 0 0}.ant-modal .ant-table tbody>tr>td,.ant-modal .ant-table tfoot>tr>td,.ant-modal .ant-table tfoot>tr>th,.ant-modal .ant-table thead>tr>th,.ant-modal .ant-table.ant-table-small thead>tr>th,.ant-modal .ant-transfer-list-header{border-bottom:1px solid #3a3a3a}.ant-modal-body{padding:24px;font-size:14px;line-height:1.5715;word-wrap:break-word}.ant-modal-footer{padding:10px 16px;text-align:right;background:0 0;border-top:1px solid #303030;border-radius:0 0 2px 2px}.ant-modal .ant-table .ant-table-row-expand-icon,.ant-modal .ant-table.ant-table-bordered .ant-table-title{border:1px solid #3a3a3a}.ant-modal-footer .ant-btn+.ant-btn:not(.ant-dropdown-trigger){margin-bottom:0;margin-left:8px}.ant-modal-open{overflow:hidden}.ant-modal-centered{text-align:center}.ant-modal-centered::before{display:inline-block;width:0;height:100%;vertical-align:middle;content:''}.ant-modal-centered .ant-modal{top:0;display:inline-block;padding-bottom:0;text-align:left;vertical-align:middle}@media (max-width:767px){.ant-modal{max-width:calc(100vw - 16px);margin:8px auto}.ant-modal-centered .ant-modal{flex:1}}.ant-modal-confirm .ant-modal-header{display:none}.ant-modal-confirm-body-wrapper::after,.ant-modal-confirm-body-wrapper::before{display:table;content:''}.ant-modal-confirm .ant-modal-body{padding:32px 32px 24px}.ant-modal-confirm-body-wrapper::after{clear:both}.ant-modal-confirm-body .ant-modal-confirm-title{display:block;overflow:hidden;color:rgba(255,255,255,.85);font-weight:500;font-size:16px;line-height:1.4}.ant-modal-confirm-body .ant-modal-confirm-content{margin-top:8px;color:rgba(255,255,255,.85);font-size:14px}.ant-modal-confirm-body>.anticon{float:left;margin-right:16px;font-size:22px}.ant-modal-confirm-body>.anticon+.ant-modal-confirm-title+.ant-modal-confirm-content{margin-left:38px}.ant-modal-confirm .ant-modal-confirm-btns{float:right;margin-top:24px}.ant-modal-confirm .ant-modal-confirm-btns .ant-btn+.ant-btn{margin-bottom:0;margin-left:8px}.ant-modal-confirm-error .ant-modal-confirm-body>.anticon{color:#a61d24}.ant-modal-confirm-confirm .ant-modal-confirm-body>.anticon,.ant-modal-confirm-warning .ant-modal-confirm-body>.anticon{color:#d89614}.ant-modal-confirm-info .ant-modal-confirm-body>.anticon{color:#177ddc}.ant-modal-confirm-success .ant-modal-confirm-body>.anticon{color:#49aa19}.ant-modal-wrap-rtl .ant-modal-close{right:initial;left:0}.ant-modal-wrap-rtl .ant-modal-footer{text-align:left}.ant-modal-wrap-rtl .ant-modal-footer .ant-btn+.ant-btn{margin-right:8px;margin-left:0}.ant-modal-wrap-rtl .ant-modal-confirm-body>.anticon{float:right;margin-right:0;margin-left:16px}.ant-modal-wrap-rtl .ant-modal-confirm-body>.anticon+.ant-modal-confirm-title+.ant-modal-confirm-content{margin-right:38px;margin-left:0}.ant-modal-wrap-rtl .ant-modal-confirm-btns{float:left}.ant-modal-wrap-rtl .ant-modal-confirm-btns .ant-btn+.ant-btn{margin-right:8px;margin-left:0}.ant-modal-wrap-rtl.ant-modal-centered .ant-modal{text-align:right}.ant-modal .ant-transfer-list-header{background:#1f1f1f}.ant-modal .ant-transfer-list-content-item:not(.ant-transfer-list-content-item-disabled):hover{background-color:rgba(255,255,255,.08)}.ant-modal tr.ant-table-expanded-row:hover>td,.ant-modal tr.ant-table-expanded-row>td{background:#272727}.ant-modal .ant-table,.ant-modal .ant-table.ant-table-small thead>tr>th{background-color:#1f1f1f}.ant-modal .ant-table thead>tr>th{background-color:#272727}.ant-modal .ant-table tbody>tr>td.ant-table-cell-fix-left,.ant-modal .ant-table tbody>tr>td.ant-table-cell-fix-right{background-color:#1f1f1f}.ant-modal .ant-table tbody>tr.ant-table-row:hover>td{background:#303030}.ant-modal .ant-table.ant-table-bordered table thead>tr:not(:last-child)>th{border-bottom:1px solid #303030}.ant-modal .ant-table.ant-table-bordered .ant-table-container,.ant-modal .ant-table.ant-table-bordered .ant-table-footer{border:1px solid #3a3a3a}.ant-modal .ant-table .ant-table-filter-trigger-container-open{background-color:#525252}.ant-modal .ant-picker-calendar-full,.ant-modal .ant-picker-calendar-full .ant-picker-panel{background-color:#1f1f1f}.ant-modal .ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date{border-top:2px solid #3a3a3a}.ant-modal .ant-tabs.ant-tabs-card .ant-tabs-card-bar .ant-tabs-tab-active{background-color:#1f1f1f;border-bottom:1px solid #1f1f1f}.ant-notification .ant-table .ant-table-row-expand-icon,.ant-notification .ant-table.ant-table-bordered .ant-table-title{border:1px solid #3a3a3a}.ant-modal .ant-tree-show-line .ant-tree-switcher{background:#1f1f1f}.ant-notification .ant-anchor-wrapper,.ant-notification .ant-card,.ant-notification .ant-collapse-content,.ant-notification .ant-picker-clear,.ant-notification .ant-slider-handle,.ant-notification .ant-timeline-item-head{background-color:#1f1f1f}.ant-notification .ant-transfer-list-header{background:#1f1f1f;border-bottom:1px solid #3a3a3a}.ant-notification .ant-transfer-list-content-item:not(.ant-transfer-list-content-item-disabled):hover{background-color:rgba(255,255,255,.08)}.ant-notification tr.ant-table-expanded-row:hover>td,.ant-notification tr.ant-table-expanded-row>td{background:#272727}.ant-notification .ant-table.ant-table-small thead>tr>th{background-color:#1f1f1f;border-bottom:1px solid #3a3a3a}.ant-notification .ant-table{background-color:#1f1f1f}.ant-notification .ant-table tfoot>tr>td,.ant-notification .ant-table tfoot>tr>th{border-bottom:1px solid #3a3a3a}.ant-notification .ant-table thead>tr>th{background-color:#272727;border-bottom:1px solid #3a3a3a}.ant-notification .ant-table tbody>tr>td{border-bottom:1px solid #3a3a3a}.ant-notification .ant-table tbody>tr>td.ant-table-cell-fix-left,.ant-notification .ant-table tbody>tr>td.ant-table-cell-fix-right{background-color:#1f1f1f}.ant-notification .ant-table tbody>tr.ant-table-row:hover>td{background:#303030}.ant-notification .ant-table.ant-table-bordered table thead>tr:not(:last-child)>th{border-bottom:1px solid #303030}.ant-notification .ant-table.ant-table-bordered .ant-table-container,.ant-notification .ant-table.ant-table-bordered .ant-table-footer{border:1px solid #3a3a3a}.ant-notification .ant-table .ant-table-filter-trigger-container-open{background-color:#525252}.ant-notification .ant-picker-calendar-full,.ant-notification .ant-picker-calendar-full .ant-picker-panel{background-color:#1f1f1f}.ant-notification .ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date{border-top:2px solid #3a3a3a}.ant-notification .ant-tabs.ant-tabs-card .ant-tabs-card-bar .ant-tabs-tab-active{background-color:#1f1f1f;border-bottom:1px solid #1f1f1f}.ant-notification .ant-tree-show-line .ant-tree-switcher{background:#1f1f1f}.ant-notification{box-sizing:border-box;margin:0 24px 0 0;padding:0;color:rgba(255,255,255,.85);font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum;position:fixed;z-index:1010}.ant-notification-close-icon{font-size:14px;cursor:pointer}.ant-notification-hook-holder{position:relative}.ant-notification-notice{position:relative;width:384px;max-width:calc(100vw - 24px * 2);margin-bottom:16px;margin-left:auto;padding:16px 24px;overflow:hidden;line-height:1.5715;word-wrap:break-word;background:#1f1f1f;border-radius:2px;box-shadow:0 3px 6px -4px rgba(0,0,0,.48),0 6px 16px 0 rgba(0,0,0,.32),0 9px 28px 8px rgba(0,0,0,.2)}.ant-notification-bottom .ant-notification-notice,.ant-notification-top .ant-notification-notice{margin-right:auto;margin-left:auto}.ant-notification-bottomLeft .ant-notification-notice,.ant-notification-topLeft .ant-notification-notice{margin-right:auto;margin-left:0}.ant-notification-notice-message{margin-bottom:8px;color:rgba(255,255,255,.85);font-size:16px;line-height:24px}.ant-notification-notice-message-single-line-auto-margin{display:block;width:calc(384px - 24px * 2 - 24px - 48px - 100%);max-width:4px;background-color:transparent;pointer-events:none}.ant-notification-notice-message-single-line-auto-margin::before{display:block;content:''}.ant-notification-notice-description{font-size:14px}.ant-notification-notice-closable .ant-notification-notice-message{padding-right:24px}.ant-notification-notice-with-icon .ant-notification-notice-message{margin-bottom:4px;margin-left:48px;font-size:16px}.ant-notification-notice-with-icon .ant-notification-notice-description{margin-left:48px;font-size:14px}.ant-notification-notice-icon{position:absolute;margin-left:4px;font-size:24px;line-height:24px}.anticon.ant-notification-notice-icon-success{color:#49aa19}.anticon.ant-notification-notice-icon-info{color:#177ddc}.anticon.ant-notification-notice-icon-warning{color:#d89614}.anticon.ant-notification-notice-icon-error{color:#a61d24}.ant-notification-notice-close{position:absolute;top:16px;right:22px;color:rgba(255,255,255,.45);outline:0}.ant-notification-notice-close:hover,.ant-page-header{color:rgba(255,255,255,.85)}.ant-notification-notice-btn{float:right;margin-top:16px}.ant-notification .notification-fade-effect{animation-duration:.24s;animation-timing-function:cubic-bezier(.645,.045,.355,1);animation-fill-mode:both}.ant-notification-fade-appear,.ant-notification-fade-enter{animation-duration:.24s;animation-timing-function:cubic-bezier(.645,.045,.355,1);animation-fill-mode:both;opacity:0;animation-play-state:paused}.ant-notification-fade-leave{animation-timing-function:cubic-bezier(.645,.045,.355,1);animation-fill-mode:both;animation-duration:.2s;animation-play-state:paused}.ant-notification-fade-appear.ant-notification-fade-appear-active,.ant-notification-fade-enter.ant-notification-fade-enter-active{animation-name:NotificationFadeIn;animation-play-state:running}.ant-notification-fade-leave.ant-notification-fade-leave-active{animation-name:NotificationFadeOut;animation-play-state:running}@keyframes NotificationFadeIn{0%{left:384px;opacity:0}100%{left:0;opacity:1}}@keyframes NotificationFadeOut{0%{max-height:150px;margin-bottom:16px;opacity:1}100%{max-height:0;margin-bottom:0;padding-top:0;padding-bottom:0;opacity:0}}.ant-notification-rtl .ant-notification-notice-closable .ant-notification-notice-message{padding-right:0;padding-left:24px}.ant-notification-rtl .ant-notification-notice-with-icon .ant-notification-notice-description,.ant-notification-rtl .ant-notification-notice-with-icon .ant-notification-notice-message{margin-right:48px;margin-left:0}.ant-notification-rtl .ant-notification-notice-icon{margin-right:4px;margin-left:0}.ant-notification-rtl .ant-notification-notice-close{right:auto;left:22px}.ant-notification-rtl .ant-notification-notice-btn{float:left}.ant-notification-bottom,.ant-notification-top{margin-right:0;margin-left:0}.ant-notification-top .ant-notification-fade-appear.ant-notification-fade-appear-active,.ant-notification-top .ant-notification-fade-enter.ant-notification-fade-enter-active{animation-name:NotificationTopFadeIn}.ant-notification-bottom .ant-notification-fade-appear.ant-notification-fade-appear-active,.ant-notification-bottom .ant-notification-fade-enter.ant-notification-fade-enter-active{animation-name:NotificationBottomFadeIn}.ant-notification-bottomLeft,.ant-notification-topLeft{margin-right:0;margin-left:24px}.ant-notification-bottomLeft .ant-notification-fade-appear.ant-notification-fade-appear-active,.ant-notification-bottomLeft .ant-notification-fade-enter.ant-notification-fade-enter-active,.ant-notification-topLeft .ant-notification-fade-appear.ant-notification-fade-appear-active,.ant-notification-topLeft .ant-notification-fade-enter.ant-notification-fade-enter-active{animation-name:NotificationLeftFadeIn}@keyframes NotificationTopFadeIn{0%{margin-top:-100%;opacity:0}100%{margin-top:0;opacity:1}}@keyframes NotificationBottomFadeIn{0%{margin-bottom:-100%;opacity:0}100%{margin-bottom:0;opacity:1}}@keyframes NotificationLeftFadeIn{0%{right:384px;opacity:0}100%{right:0;opacity:1}}.ant-page-header{box-sizing:border-box;margin:0;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum;position:relative;padding:16px 24px;background-color:#141414}.ant-page-header-content,.ant-page-header.has-breadcrumb{padding-top:12px}.ant-page-header-ghost{background-color:transparent}.ant-page-header.has-footer{padding-bottom:0}.ant-page-header-back{margin-right:16px;font-size:16px;line-height:1}.ant-page-header-back-button{text-decoration:none;outline:0;transition:color .3s;color:inherit;cursor:pointer}.ant-page-header-back-button:focus,.ant-page-header-back-button:hover{color:#165996}.ant-page-header-back-button:active{color:#388ed3}.ant-page-header .ant-divider-vertical{height:14px;margin:0 12px;vertical-align:middle}.ant-breadcrumb+.ant-page-header-heading{margin-top:8px}.ant-page-header-heading{display:flex}.ant-page-header-heading-left{display:flex;align-items:center;margin:4px 0;overflow:hidden}.ant-page-header-heading-title{margin-right:12px;margin-bottom:0;color:rgba(255,255,255,.85);font-weight:600;font-size:20px;line-height:32px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-page-header-heading .ant-avatar{margin-right:12px}.ant-page-header-heading-sub-title{margin-right:12px;color:rgba(255,255,255,.45);font-size:14px;line-height:1.5715;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-page-header-heading-extra{margin:4px 0;white-space:nowrap}.ant-page-header-heading-extra>*{white-space:unset}.ant-page-header-footer{margin-top:16px}.ant-page-header-footer .ant-tabs>.ant-tabs-nav{margin:0}.ant-page-header-footer .ant-tabs>.ant-tabs-nav::before{border:none}.ant-page-header-footer .ant-tabs .ant-tabs-tab{padding-top:8px;padding-bottom:8px;font-size:16px}.ant-page-header-compact .ant-page-header-heading{flex-wrap:wrap}.ant-page-header-rtl .ant-page-header-back{float:right;margin-right:0;margin-left:16px}.ant-page-header-rtl .ant-page-header-heading .ant-avatar,.ant-page-header-rtl .ant-page-header-heading-title{margin-right:0;margin-left:12px}.ant-page-header-rtl .ant-page-header-heading-sub-title{float:right;margin-right:0;margin-left:12px}.ant-page-header-rtl .ant-page-header-heading-tags{float:right}.ant-page-header-rtl .ant-page-header-heading-extra{float:left}.ant-page-header-rtl .ant-page-header-heading-extra>*{margin-right:12px;margin-left:0}.ant-pagination,.ant-pagination ol,.ant-pagination ul{margin:0;list-style:none;padding:0}.ant-page-header-rtl .ant-page-header-heading-extra>:first-child{margin-right:0}.ant-page-header-rtl .ant-page-header-footer .ant-tabs-bar .ant-tabs-nav{float:right}.ant-page-header-back-button{border:0;background:0 0;padding:0;line-height:inherit;display:inline-block}nz-page-header,nz-page-header-content,nz-page-header-footer{display:block}.ant-pagination{box-sizing:border-box;color:rgba(255,255,255,.85);font-size:14px;font-variant:tabular-nums;line-height:1.5715;font-feature-settings:tnum}.ant-pagination::after{display:block;clear:both;height:0;overflow:hidden;visibility:hidden;content:' '}.ant-pagination-item,.ant-pagination-total-text{display:inline-block;margin-right:8px;vertical-align:middle;line-height:30px}.ant-pagination-total-text{height:32px}.ant-pagination-item{min-width:32px;height:32px;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,'Noto Sans',sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji';text-align:center;list-style:none;background-color:transparent;border:1px solid #434343;border-radius:2px;outline:0;cursor:pointer;user-select:none}.ant-pagination-item a{display:block;padding:0 6px;color:rgba(255,255,255,.85);transition:none}.ant-pagination-item-active a,.ant-pagination-item:focus-visible a,.ant-pagination-item:hover a{color:#177ddc}.ant-pagination-item a:hover{text-decoration:none}.ant-pagination-item:hover{border-color:#177ddc;transition:all .3s}.ant-pagination-item:focus-visible{border-color:#177ddc;transition:all .3s}.ant-pagination-item-active{font-weight:500;background:0 0;border-color:#177ddc}.ant-pagination-item-active:focus-visible,.ant-pagination-item-active:hover,.ant-pagination-next:hover button,.ant-pagination-prev:hover button{border-color:#165996}.ant-pagination-item-active:focus-visible a,.ant-pagination-item-active:hover a{color:#165996}.ant-pagination-jump-next,.ant-pagination-jump-prev{outline:0}.ant-pagination-jump-next .ant-pagination-item-container,.ant-pagination-jump-prev .ant-pagination-item-container{position:relative}.ant-pagination-jump-next .ant-pagination-item-container .ant-pagination-item-link-icon,.ant-pagination-jump-prev .ant-pagination-item-container .ant-pagination-item-link-icon{color:#177ddc;font-size:12px;letter-spacing:-1px;opacity:0;transition:all .2s}.ant-pagination-jump-next .ant-pagination-item-container .ant-pagination-item-link-icon-svg,.ant-pagination-jump-prev .ant-pagination-item-container .ant-pagination-item-link-icon-svg{top:0;right:0;bottom:0;left:0;margin:auto}.ant-pagination-jump-next .ant-pagination-item-container .ant-pagination-item-ellipsis,.ant-pagination-jump-prev .ant-pagination-item-container .ant-pagination-item-ellipsis{position:absolute;top:0;right:0;bottom:0;left:0;display:block;margin:auto;color:rgba(255,255,255,.3);font-family:Arial,Helvetica,sans-serif;letter-spacing:2px;text-align:center;text-indent:.13em;opacity:1;transition:all .2s}.ant-pagination-jump-next,.ant-pagination-jump-prev,.ant-pagination-next,.ant-pagination-prev,.ant-select-multiple .ant-select-selection-search-input,.ant-select-multiple .ant-select-selection-search-mirror,.ant-statistic-content,.ant-steps-item-icon,body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,'Noto Sans',sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji'}.ant-pagination-jump-next:hover .ant-pagination-item-link-icon,.ant-pagination-jump-prev:hover .ant-pagination-item-link-icon{opacity:1}.ant-pagination-jump-next:hover .ant-pagination-item-ellipsis,.ant-pagination-jump-prev:hover .ant-pagination-item-ellipsis{opacity:0}.ant-pagination-jump-next:focus-visible .ant-pagination-item-link-icon,.ant-pagination-jump-prev:focus-visible .ant-pagination-item-link-icon{opacity:1}.ant-pagination-jump-next:focus-visible .ant-pagination-item-ellipsis,.ant-pagination-jump-prev:focus-visible .ant-pagination-item-ellipsis{opacity:0}.ant-pagination-jump-next,.ant-pagination-jump-prev,.ant-pagination-prev{margin-right:8px}.ant-pagination-jump-next,.ant-pagination-jump-prev,.ant-pagination-next,.ant-pagination-prev{display:inline-block;min-width:32px;height:32px;color:rgba(255,255,255,.85);line-height:32px;text-align:center;vertical-align:middle;list-style:none;border-radius:2px;cursor:pointer;transition:all .3s}.ant-pagination-next,.ant-pagination-prev{font-family:Arial,Helvetica,sans-serif;outline:0}.ant-pagination-next button,.ant-pagination-prev button{color:rgba(255,255,255,.85);cursor:pointer;user-select:none}.ant-pagination-next .ant-pagination-item-link,.ant-pagination-prev .ant-pagination-item-link{display:block;width:100%;height:100%;padding:0;font-size:12px;text-align:center;background-color:transparent;border:1px solid #434343;border-radius:2px;outline:0;transition:all .3s}.ant-pagination-next:focus-visible .ant-pagination-item-link,.ant-pagination-next:hover .ant-pagination-item-link,.ant-pagination-prev:focus-visible .ant-pagination-item-link,.ant-pagination-prev:hover .ant-pagination-item-link{color:#177ddc;border-color:#177ddc}.ant-pagination-disabled .ant-pagination-item-link,.ant-pagination-disabled:focus-visible .ant-pagination-item-link,.ant-pagination-disabled:hover .ant-pagination-item-link{color:rgba(255,255,255,.3);border-color:#434343;cursor:not-allowed}.ant-pagination-disabled,.ant-pagination-disabled:hover{cursor:not-allowed}.ant-pagination-disabled:focus-visible{cursor:not-allowed}.ant-pagination-slash{margin:0 10px 0 5px}.ant-pagination-options{display:inline-block;margin-left:16px;vertical-align:middle}@media all and (-ms-high-contrast:none){.ant-pagination-options,.ant-pagination-options ::-ms-backdrop{vertical-align:top}}.ant-pagination-options-size-changer.ant-select{display:inline-block;width:auto}.ant-pagination-options-quick-jumper{display:inline-block;height:32px;margin-left:8px;line-height:32px;vertical-align:top}.ant-pagination-options-quick-jumper input{position:relative;display:inline-block;min-width:0;padding:4px 11px;color:rgba(255,255,255,.85);font-size:14px;line-height:1.5715;background-color:transparent;background-image:none;border:1px solid #434343;border-radius:2px;transition:all .3s;width:50px;height:32px;margin:0 8px}.ant-pagination-options-quick-jumper input-disabled,.ant-pagination-options-quick-jumper input[disabled]{background-color:rgba(255,255,255,.08);opacity:1;color:rgba(255,255,255,.3);cursor:not-allowed;pointer-events:none}.ant-pagination-options-quick-jumper input::-moz-placeholder{opacity:1}.ant-pagination-options-quick-jumper input::placeholder{color:rgba(255,255,255,.3);user-select:none}.ant-pagination-options-quick-jumper input:placeholder-shown{text-overflow:ellipsis}.ant-pagination-options-quick-jumper input:hover{border-color:#165996;border-right-width:1px}.ant-input-rtl .ant-pagination-options-quick-jumper input:hover{border-right-width:0;border-left-width:1px!important}.ant-pagination-options-quick-jumper input-focused,.ant-pagination-options-quick-jumper input:focus{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-pagination-options-quick-jumper input-focused,.ant-input-rtl .ant-pagination-options-quick-jumper input:focus{border-right-width:0;border-left-width:1px!important}.ant-pagination-options-quick-jumper input-disabled{border-color:#434343;box-shadow:none}.ant-pagination-options-quick-jumper input-disabled:hover{border-color:#434343;border-right-width:1px}.ant-pagination-options-quick-jumper input[disabled]{border-color:#434343;box-shadow:none}.ant-pagination-options-quick-jumper input[disabled]:hover{border-color:#434343;border-right-width:1px}.ant-pagination-options-quick-jumper input-borderless,.ant-pagination-options-quick-jumper input-borderless-disabled,.ant-pagination-options-quick-jumper input-borderless-focused,.ant-pagination-options-quick-jumper input-borderless:focus,.ant-pagination-options-quick-jumper input-borderless:hover,.ant-pagination-options-quick-jumper input-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-pagination-options-quick-jumper input{max-width:100%;height:auto;min-height:32px;line-height:1.5715;vertical-align:bottom;transition:all .3s,height 0s}.ant-pagination-options-quick-jumper input-lg{padding:6.5px 11px;font-size:16px}.ant-pagination-options-quick-jumper input-sm{padding:0 7px}.ant-pagination-options-quick-jumper input-stepperless[type=number]{-moz-appearance:textfield}.ant-pagination-options-quick-jumper input-stepperless[type=number] ::-webkit-outer-spin-button,.ant-pagination-options-quick-jumper input-stepperless[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ant-pagination-simple .ant-pagination-next,.ant-pagination-simple .ant-pagination-prev{height:24px;line-height:24px;vertical-align:top}.ant-pagination-simple .ant-pagination-next .ant-pagination-item-link,.ant-pagination-simple .ant-pagination-prev .ant-pagination-item-link{height:24px;background-color:transparent;border:0}.ant-pagination-simple .ant-pagination-next .ant-pagination-item-link::after,.ant-pagination-simple .ant-pagination-prev .ant-pagination-item-link::after{height:24px;line-height:24px}.ant-pagination-simple .ant-pagination-simple-pager{display:inline-block;height:24px;margin-right:8px}.ant-pagination-simple .ant-pagination-simple-pager input{box-sizing:border-box;height:100%;margin-right:8px;padding:0 6px;text-align:center;background-color:transparent;border:1px solid #434343;border-radius:2px;outline:0;transition:border-color .3s}.ant-pagination-simple .ant-pagination-simple-pager input:hover{border-color:#177ddc}.ant-pagination-simple .ant-pagination-simple-pager input:focus{border-color:#3c9be8;box-shadow:0 0 0 2px rgba(23,125,220,.2)}.ant-pagination-simple .ant-pagination-simple-pager input[disabled]{color:rgba(255,255,255,.3);background:rgba(255,255,255,.08);border-color:#434343;cursor:not-allowed}.ant-pagination.mini .ant-pagination-item:not(.ant-pagination-item-active),.ant-pagination.mini .ant-pagination-next .ant-pagination-item-link,.ant-pagination.mini .ant-pagination-prev .ant-pagination-item-link{background:0 0;border-color:transparent}.ant-pagination.mini .ant-pagination-simple-pager,.ant-pagination.mini .ant-pagination-total-text{height:24px;line-height:24px}.ant-pagination.mini .ant-pagination-item{min-width:24px;height:24px;margin:0;line-height:22px}.ant-pagination.mini .ant-pagination-next,.ant-pagination.mini .ant-pagination-prev{min-width:24px;height:24px;margin:0;line-height:24px}.ant-pagination.mini .ant-pagination-next .ant-pagination-item-link::after,.ant-pagination.mini .ant-pagination-prev .ant-pagination-item-link::after{height:24px;line-height:24px}.ant-pagination.mini .ant-pagination-jump-next,.ant-pagination.mini .ant-pagination-jump-prev{height:24px;margin-right:0;line-height:24px}.ant-pagination.mini .ant-pagination-options{margin-left:2px}.ant-pagination.mini .ant-pagination-options-size-changer{top:0}.ant-pagination.mini .ant-pagination-options-quick-jumper{height:24px;line-height:24px}.ant-popover,.ant-progress{box-sizing:border-box;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum;font-size:14px}.ant-pagination.mini .ant-pagination-options-quick-jumper input{padding:0 7px;width:44px;height:24px}.ant-pagination.ant-pagination-disabled{cursor:not-allowed}.ant-pagination.ant-pagination-disabled .ant-pagination-item{background:rgba(255,255,255,.08);border-color:#434343;cursor:not-allowed}.ant-pagination.ant-pagination-disabled .ant-pagination-item a{color:rgba(255,255,255,.3);background:0 0;border:none;cursor:not-allowed}.ant-pagination.ant-pagination-disabled .ant-pagination-item-active{background:rgba(255,255,255,.25)}.ant-pagination.ant-pagination-disabled .ant-pagination-item-active a{color:#000}.ant-pagination.ant-pagination-disabled .ant-pagination-item-link{color:rgba(255,255,255,.3);background:rgba(255,255,255,.08);border-color:#434343;cursor:not-allowed}.ant-pagination-simple.ant-pagination.ant-pagination-disabled .ant-pagination-item-link{background:0 0}.ant-pagination.ant-pagination-disabled .ant-pagination-item-link-icon{opacity:0}.ant-pagination.ant-pagination-disabled .ant-pagination-item-ellipsis{opacity:1}.ant-pagination.ant-pagination-disabled .ant-pagination-simple-pager{color:rgba(255,255,255,.3)}@media only screen and (max-width:992px){.ant-pagination-item-after-jump-prev,.ant-pagination-item-before-jump-next{display:none}}@media only screen and (max-width:576px){.ant-pagination-options{display:none}}.ant-pagination-rtl .ant-pagination-item,.ant-pagination-rtl .ant-pagination-jump-next,.ant-pagination-rtl .ant-pagination-jump-prev,.ant-pagination-rtl .ant-pagination-prev,.ant-pagination-rtl .ant-pagination-total-text{margin-right:0;margin-left:8px}.ant-pagination-rtl .ant-pagination-slash{margin:0 5px 0 10px}.ant-pagination-rtl .ant-pagination-options{margin-right:16px;margin-left:0}.ant-pagination-rtl .ant-pagination-options .ant-pagination-options-size-changer.ant-select{margin-right:0;margin-left:8px}.ant-pagination-rtl .ant-pagination-options .ant-pagination-options-quick-jumper{margin-left:0}.ant-pagination-rtl.ant-pagination-simple .ant-pagination-simple-pager,.ant-pagination-rtl.ant-pagination-simple .ant-pagination-simple-pager input{margin-right:0;margin-left:8px}.ant-pagination-rtl.ant-pagination.mini .ant-pagination-options{margin-right:2px;margin-left:0}.ant-popover,.ant-popover-title{margin:0;color:rgba(255,255,255,.85)}nz-pagination{display:block}.ant-popover-hidden,.ant-radio+span:empty{display:none}.ant-popover{padding:0;top:0;left:0;z-index:1030;font-weight:400;white-space:normal;text-align:left;cursor:auto;user-select:text}.ant-popover::after{position:absolute;background:rgba(255,255,255,.01);content:''}.ant-popover-placement-top,.ant-popover-placement-topLeft,.ant-popover-placement-topRight{padding-bottom:15.31px}.ant-popover-placement-right,.ant-popover-placement-rightBottom,.ant-popover-placement-rightTop{padding-left:15.31px}.ant-popover-placement-bottom,.ant-popover-placement-bottomLeft,.ant-popover-placement-bottomRight{padding-top:15.31px}.ant-popover-placement-left,.ant-popover-placement-leftBottom,.ant-popover-placement-leftTop{padding-right:15.31px}.ant-popover-inner{background-color:#1f1f1f;background-clip:padding-box;border-radius:2px;box-shadow:0 3px 6px -4px rgba(0,0,0,.48),0 6px 16px 0 rgba(0,0,0,.32),0 9px 28px 8px rgba(0,0,0,.2);box-shadow:0 0 8px rgba(0,0,0,.45)\9}@media screen and (-ms-high-contrast:active),(-ms-high-contrast:none){.ant-popover-inner{box-shadow:0 3px 6px -4px rgba(0,0,0,.48),0 6px 16px 0 rgba(0,0,0,.32),0 9px 28px 8px rgba(0,0,0,.2)}}.ant-popover-title{min-width:177px;min-height:32px;padding:5px 16px 4px;font-weight:500;border-bottom:1px solid #303030}.ant-popover-inner-content{padding:12px 16px;color:rgba(255,255,255,.85)}.ant-popover-message{position:relative;padding:4px 0 12px;color:rgba(255,255,255,.85);font-size:14px}.ant-popover-message>.anticon{position:absolute;top:8px;color:#d89614;font-size:14px}.ant-popover-message-title{padding-left:22px}.ant-popover-buttons{margin-bottom:4px;text-align:right}.ant-popover-buttons button{margin-left:8px}.ant-popover-arrow{position:absolute;display:block;width:16px;height:16px;overflow:hidden;background:0 0;pointer-events:none}.ant-popover-arrow-content{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:11.31px;height:11.31px;margin:auto;background-color:#1f1f1f;content:'';border-radius:0 0 2px;pointer-events:none}.ant-progress,.ant-progress-inner,.ant-progress-outer,.ant-progress-steps,.ant-progress-text,.ant-radio-group{display:inline-block}.ant-popover-arrow-content::before{position:absolute;top:-11.31px;width:33.94px;height:33.94px;background:-10px -10px no-repeat #1f1f1f;content:''}.ant-popover-magenta .ant-popover-arrow-content,.ant-popover-magenta .ant-popover-inner,.ant-popover-pink .ant-popover-arrow-content,.ant-popover-pink .ant-popover-inner,.ant-tooltip-magenta .ant-tooltip-inner,.ant-tooltip-pink .ant-tooltip-inner{background-color:#cb2b83}.ant-popover-placement-top .ant-popover-arrow,.ant-popover-placement-topLeft .ant-popover-arrow,.ant-popover-placement-topRight .ant-popover-arrow{bottom:-.69px}.ant-popover-placement-leftBottom .ant-popover-arrow,.ant-popover-placement-rightBottom .ant-popover-arrow{bottom:12px}.ant-popover-placement-top .ant-popover-arrow-content,.ant-popover-placement-topLeft .ant-popover-arrow-content,.ant-popover-placement-topRight .ant-popover-arrow-content{box-shadow:3px 3px 7px rgba(0,0,0,.07);transform:translateY(-8px) rotate(45deg)}.ant-popover-placement-top .ant-popover-arrow{left:50%;transform:translateX(-50%)}.ant-popover-placement-topLeft .ant-popover-arrow{left:16px}.ant-popover-placement-topRight .ant-popover-arrow{right:16px}.ant-popover-placement-right .ant-popover-arrow,.ant-popover-placement-rightBottom .ant-popover-arrow,.ant-popover-placement-rightTop .ant-popover-arrow{left:-.69px}.ant-popover-placement-right .ant-popover-arrow-content,.ant-popover-placement-rightBottom .ant-popover-arrow-content,.ant-popover-placement-rightTop .ant-popover-arrow-content{box-shadow:3px 3px 7px rgba(0,0,0,.07);transform:translateX(8px) rotate(135deg)}.ant-popover-placement-right .ant-popover-arrow{top:50%;transform:translateY(-50%)}.ant-popover-placement-rightTop .ant-popover-arrow{top:12px}.ant-popover-placement-bottom .ant-popover-arrow,.ant-popover-placement-bottomLeft .ant-popover-arrow,.ant-popover-placement-bottomRight .ant-popover-arrow{top:-.69px}.ant-popover-placement-bottom .ant-popover-arrow-content,.ant-popover-placement-bottomLeft .ant-popover-arrow-content,.ant-popover-placement-bottomRight .ant-popover-arrow-content{box-shadow:2px 2px 5px rgba(0,0,0,.06);transform:translateY(8px) rotate(-135deg)}.ant-popover-placement-bottom .ant-popover-arrow{left:50%;transform:translateX(-50%)}.ant-popover-placement-bottomLeft .ant-popover-arrow{left:16px}.ant-popover-placement-bottomRight .ant-popover-arrow{right:16px}.ant-popover-placement-left .ant-popover-arrow,.ant-popover-placement-leftBottom .ant-popover-arrow,.ant-popover-placement-leftTop .ant-popover-arrow{right:-.69px}.ant-popover-placement-left .ant-popover-arrow-content,.ant-popover-placement-leftBottom .ant-popover-arrow-content,.ant-popover-placement-leftTop .ant-popover-arrow-content{box-shadow:3px 3px 7px rgba(0,0,0,.07);transform:translateX(-8px) rotate(-45deg)}.ant-popover-placement-left .ant-popover-arrow{top:50%;transform:translateY(-50%)}.ant-popover-placement-leftTop .ant-popover-arrow{top:12px}.ant-popover-red .ant-popover-arrow-content,.ant-popover-red .ant-popover-inner{background-color:#d32029}.ant-popover-volcano .ant-popover-arrow-content,.ant-popover-volcano .ant-popover-inner{background-color:#d84a1b}.ant-popover-orange .ant-popover-arrow-content,.ant-popover-orange .ant-popover-inner{background-color:#d87a16}.ant-popover-yellow .ant-popover-arrow-content,.ant-popover-yellow .ant-popover-inner{background-color:#d8bd14}.ant-popover-gold .ant-popover-arrow-content,.ant-popover-gold .ant-popover-inner{background-color:#d89614}.ant-popover-cyan .ant-popover-arrow-content,.ant-popover-cyan .ant-popover-inner{background-color:#13a8a8}.ant-popover-lime .ant-popover-arrow-content,.ant-popover-lime .ant-popover-inner{background-color:#8bbb11}.ant-popover-green .ant-popover-arrow-content,.ant-popover-green .ant-popover-inner{background-color:#49aa19}.ant-popover-blue .ant-popover-arrow-content,.ant-popover-blue .ant-popover-inner{background-color:#177ddc}.ant-popover-geekblue .ant-popover-arrow-content,.ant-popover-geekblue .ant-popover-inner{background-color:#2b4acb}.ant-popover-purple .ant-popover-arrow-content,.ant-popover-purple .ant-popover-inner{background-color:#642ab5}.ant-popover-rtl{text-align:right}.ant-popover-rtl .ant-popover-message-title{padding-right:22px;padding-left:16px}.ant-popover-rtl .ant-popover-buttons{text-align:left}.ant-popover-rtl .ant-popover-buttons button{margin-right:8px;margin-left:0}.ant-popover{position:relative}.ant-progress{margin:0;padding:0;color:rgba(255,255,255,.85)}.ant-progress-line{position:relative;width:100%;font-size:14px}.ant-progress-steps-outer{display:flex;flex-direction:row;align-items:center}.ant-progress-steps-item{flex-shrink:0;min-width:2px;margin-right:2px;background:rgba(255,255,255,.08);transition:all .3s}.ant-progress-steps-item-active{background:#177ddc}.ant-progress-small.ant-progress-line,.ant-progress-small.ant-progress-line .ant-progress-text .anticon{font-size:12px}.ant-progress-outer{width:100%;margin-right:0;padding-right:0}.ant-progress-show-info .ant-progress-outer{margin-right:calc(-2em - 8px);padding-right:calc(2em + 8px)}.ant-progress-inner{position:relative;width:100%;overflow:hidden;vertical-align:middle;background-color:rgba(255,255,255,.08);border-radius:100px}.ant-progress-circle-trail{stroke:rgba(255,255,255,.08)}.ant-progress-circle-path{animation:ant-progress-appear .3s}.ant-progress-inner:not(.ant-progress-circle-gradient) .ant-progress-circle-path{stroke:#177ddc}.ant-progress-bg,.ant-progress-success-bg{position:relative;background-color:#177ddc;border-radius:100px;transition:all .4s cubic-bezier(.08,.82,.17,1) 0s}.ant-progress-success-bg{position:absolute;top:0;left:0;background-color:#49aa19}.ant-progress-text{width:2em;margin-left:8px;color:rgba(255,255,255,.85);font-size:1em;line-height:1;white-space:nowrap;text-align:left;vertical-align:middle;word-break:normal}.ant-progress-text .anticon{font-size:14px}.ant-progress-status-active .ant-progress-bg::before{position:absolute;top:0;right:0;bottom:0;left:0;background:#141414;border-radius:10px;opacity:0;animation:ant-progress-active 2.4s cubic-bezier(.23,1,.32,1) infinite;content:''}.ant-progress-status-exception .ant-progress-bg{background-color:#a61d24}.ant-progress-status-exception .ant-progress-text{color:#a61d24}.ant-progress-status-exception .ant-progress-inner:not(.ant-progress-circle-gradient) .ant-progress-circle-path{stroke:#a61d24}.ant-progress-status-success .ant-progress-bg{background-color:#49aa19}.ant-progress-status-success .ant-progress-text{color:#49aa19}.ant-progress-status-success .ant-progress-inner:not(.ant-progress-circle-gradient) .ant-progress-circle-path{stroke:#49aa19}.ant-progress-circle .ant-progress-inner{position:relative;line-height:1;background-color:transparent}.ant-progress-circle .ant-progress-text{position:absolute;top:50%;left:50%;width:100%;margin:0;padding:0;color:rgba(255,255,255,.85);font-size:1em;line-height:1;white-space:normal;text-align:center;transform:translate(-50%,-50%)}.ant-progress-circle .ant-progress-text .anticon{font-size:1.16666667em}.ant-progress-circle.ant-progress-status-exception .ant-progress-text{color:#a61d24}.ant-progress-circle.ant-progress-status-success .ant-progress-text{color:#49aa19}@keyframes ant-progress-active{0%{transform:translateX(-100%) scaleX(0);opacity:.1}20%{transform:translateX(-100%) scaleX(0);opacity:.5}100%{transform:translateX(0) scaleX(1);opacity:0}}.ant-progress-rtl.ant-progress-show-info .ant-progress-outer{margin-right:0;margin-left:calc(-2em - 8px);padding-right:0;padding-left:calc(2em + 8px)}.ant-progress-rtl .ant-progress-success-bg{right:0;left:auto}.ant-progress-rtl.ant-progress-line .ant-progress-text,.ant-progress-rtl.ant-progress-steps .ant-progress-text{margin-right:8px;margin-left:0;text-align:right}.ant-radio,.ant-radio-group{box-sizing:border-box;margin:0;padding:0;color:rgba(255,255,255,.85);line-height:1.5715;font-feature-settings:tnum;list-style:none;font-variant:tabular-nums}.ant-radio-group{font-size:0}.ant-radio-group .ant-badge-count{z-index:1}.ant-radio-group>.ant-badge:not(:first-child)>.ant-radio-button-wrapper{border-left:none}.ant-radio-wrapper{box-sizing:border-box;margin:0 8px 0 0;padding:0;color:rgba(255,255,255,.85);font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum;position:relative;display:inline-flex;align-items:baseline;cursor:pointer}.ant-radio-wrapper-disabled{cursor:not-allowed}.ant-radio-wrapper::after{display:inline-block;width:0;overflow:hidden;content:'\a0'}.ant-radio-wrapper.ant-radio-wrapper-in-form-item input[type=radio]{width:14px;height:14px}.ant-radio{font-size:14px;position:relative;top:.2em;display:inline-block;outline:0;cursor:pointer}.ant-radio-input:focus+.ant-radio-inner,.ant-radio-wrapper:hover .ant-radio,.ant-radio:hover .ant-radio-inner{border-color:#177ddc}.ant-radio-input:focus+.ant-radio-inner{box-shadow:0 0 0 3px #111b26}.ant-radio-checked::after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #177ddc;border-radius:50%;visibility:hidden;animation:antRadioEffect .36s ease-in-out;animation-fill-mode:both;content:''}.ant-radio-wrapper:hover .ant-radio::after,.ant-radio:hover::after,.ant-tooltip{visibility:visible}.ant-radio-inner{position:relative;top:0;left:0;display:block;width:16px;height:16px;background-color:transparent;border-color:#434343;border-style:solid;border-width:1px;border-radius:50%;transition:all .3s}.ant-radio-inner::after{position:absolute;top:50%;left:50%;display:block;width:16px;height:16px;margin-top:-8px;margin-left:-8px;background-color:#177ddc;border-top:0;border-left:0;border-radius:16px;transform:scale(0);opacity:0;transition:all .3s cubic-bezier(.78,.14,.15,.86);content:' '}.ant-radio-input{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;cursor:pointer;opacity:0}.ant-radio-checked .ant-radio-inner{border-color:#177ddc}.ant-radio-checked .ant-radio-inner::after{transform:scale(.5);opacity:1;transition:all .3s cubic-bezier(.78,.14,.15,.86)}.ant-radio-disabled{cursor:not-allowed}.ant-radio-disabled .ant-radio-inner{background-color:rgba(255,255,255,.08);border-color:#434343!important;cursor:not-allowed}.ant-radio-disabled .ant-radio-inner::after{background-color:rgba(255,255,255,.2)}.ant-radio-disabled .ant-radio-input{cursor:not-allowed}.ant-radio-disabled+span{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-radio-button-wrapper,.ant-radio-button-wrapper a{color:rgba(255,255,255,.85)}span.ant-radio+*{padding-right:8px;padding-left:8px}.ant-radio-button-wrapper{position:relative;display:inline-block;height:32px;margin:0;padding:0 15px;font-size:14px;line-height:30px;background:0 0;border:1px solid #434343;border-top-width:1.02px;border-left-width:0;cursor:pointer;transition:color .3s,background .3s,border-color .3s,box-shadow .3s}.ant-radio-button-wrapper>.ant-radio-button{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%}.ant-radio-group-large .ant-radio-button-wrapper{height:40px;font-size:16px;line-height:38px}.ant-radio-group-small .ant-radio-button-wrapper{height:24px;padding:0 7px;line-height:22px}.ant-radio-button-wrapper:not(:first-child)::before{position:absolute;top:-1px;left:-1px;display:block;box-sizing:content-box;width:1px;height:100%;padding:1px 0;background-color:#434343;transition:background-color .3s;content:''}.ant-radio-button-wrapper:first-child{border-left:1px solid #434343;border-radius:2px 0 0 2px}.ant-radio-button-wrapper:last-child{border-radius:0 2px 2px 0}.ant-radio-button-wrapper:first-child:last-child{border-radius:2px}.ant-radio-button-wrapper:hover{position:relative;color:#177ddc}.ant-radio-button-wrapper:focus-within{box-shadow:0 0 0 3px #111b26}.ant-radio-button-wrapper .ant-radio-inner,.ant-radio-button-wrapper input[type=radio],.ant-radio-button-wrapper input[type=checkbox]{width:0;height:0;opacity:0;pointer-events:none}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled){z-index:1;color:#177ddc;background:0 0;border-color:#177ddc}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled)::before{background-color:#177ddc}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):first-child{border-color:#177ddc}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):hover{color:#165996;border-color:#165996}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):hover::before{background-color:#165996}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):active{color:#388ed3;border-color:#388ed3}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):active::before{background-color:#388ed3}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):focus-within{box-shadow:0 0 0 3px #111b26}.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled){color:#fff;background:#177ddc;border-color:#177ddc}.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):hover{color:#fff;background:#165996;border-color:#165996}.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):active{color:#fff;background:#388ed3;border-color:#388ed3}.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):focus-within{box-shadow:0 0 0 3px #111b26}.ant-radio-button-wrapper-disabled{color:rgba(255,255,255,.3);background-color:rgba(255,255,255,.08);border-color:#434343;cursor:not-allowed}.ant-radio-button-wrapper-disabled:first-child,.ant-radio-button-wrapper-disabled:hover{color:rgba(255,255,255,.3);background-color:rgba(255,255,255,.08);border-color:#434343}.ant-radio-button-wrapper-disabled:first-child{border-left-color:#434343}.ant-radio-button-wrapper-disabled.ant-radio-button-wrapper-checked{color:rgba(255,255,255,.3);background-color:rgba(255,255,255,.2);border-color:#434343;box-shadow:none}@keyframes antRadioEffect{0%{transform:scale(1);opacity:.5}100%{transform:scale(1.6);opacity:0}}.ant-radio-wrapper.ant-radio-wrapper-rtl{margin-right:0;margin-left:8px}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl{border-right-width:0;border-left-width:1px}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl.ant-radio-button-wrapper:not(:first-child)::before{right:-1px;left:0}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl.ant-radio-button-wrapper:first-child{border-right:1px solid #434343;border-radius:0 2px 2px 0}.ant-radio-button-wrapper-checked:not([class*=' ant-radio-button-wrapper-disabled']).ant-radio-button-wrapper:first-child{border-right-color:#165996}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl.ant-radio-button-wrapper:last-child{border-radius:2px 0 0 2px}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl.ant-radio-button-wrapper-disabled:first-child{border-right-color:#434343}.ant-rate,.ant-rate-star,.ant-rate-text{display:inline-block}.ant-rate{box-sizing:border-box;font-variant:tabular-nums;font-feature-settings:tnum;margin:0;padding:0;color:#d8bd14;font-size:20px;line-height:unset;list-style:none;outline:0}.ant-rate-disabled .ant-rate-star{cursor:default}.ant-rate-disabled .ant-rate-star>div:hover{transform:scale(1)}.ant-rate-star{position:relative;color:inherit;cursor:pointer}.ant-rate-star:not(:last-child){margin-right:8px}.ant-rate-star>div{transition:all .3s,outline 0s}.ant-rate-star>div:hover{transform:scale(1.1)}.ant-rate-star>div:focus{outline:0}.ant-rate-star>div:focus-visible{outline:#d8bd14 dashed 1px;transform:scale(1.1)}.ant-rate-star-first,.ant-rate-star-second{color:rgba(255,255,255,.12);transition:all .3s;user-select:none}.ant-rate-star-first .anticon,.ant-rate-star-second .anticon{vertical-align:middle}.ant-rate-star-first{position:absolute;top:0;left:0;width:50%;height:100%;overflow:hidden;opacity:0}.ant-rate-star-half .ant-rate-star-first,.ant-rate-star-half .ant-rate-star-second{opacity:1}.ant-rate-star-full .ant-rate-star-second,.ant-rate-star-half .ant-rate-star-first{color:inherit}.ant-rate-text{margin:0 8px;font-size:14px}.ant-rate-rtl .ant-rate-star:not(:last-child){margin-right:0;margin-left:8px}.ant-rate-rtl .ant-rate-star-first{right:0;left:auto}.ant-select-single .ant-select-selector{display:flex}.ant-select-single .ant-select-selector .ant-select-selection-search{position:absolute;top:0;right:11px;bottom:0;left:11px}.ant-select-single .ant-select-selector .ant-select-selection-search-input{width:100%}.ant-select-single .ant-select-selector .ant-select-selection-item,.ant-select-single .ant-select-selector .ant-select-selection-placeholder{padding:0;line-height:30px;transition:all .3s}@supports (-moz-appearance:meterbar){.ant-select-single .ant-select-selector .ant-select-selection-item,.ant-select-single .ant-select-selector .ant-select-selection-placeholder{line-height:30px}}.ant-select-single .ant-select-selector .ant-select-selection-item{position:relative;user-select:none}.ant-select-single .ant-select-selector .ant-select-selection-placeholder{transition:none;pointer-events:none}.ant-select-single .ant-select-selector .ant-select-selection-item::after,.ant-select-single .ant-select-selector .ant-select-selection-placeholder::after,.ant-select-single .ant-select-selector::after{display:inline-block;width:0;visibility:hidden;content:'\a0'}.ant-select-single.ant-select-customize-input .ant-select-selector .ant-select-selection-placeholder::after,.ant-select-single.ant-select-customize-input .ant-select-selector::after{display:none}.ant-select-single.ant-select-show-arrow .ant-select-selection-search{right:25px}.ant-select-single.ant-select-show-arrow .ant-select-selection-item,.ant-select-single.ant-select-show-arrow .ant-select-selection-placeholder{padding-right:18px}.ant-select-single.ant-select-open .ant-select-selection-item{color:rgba(255,255,255,.3)}.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{width:100%;height:32px;padding:0 11px}.ant-select-single:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-search-input{height:30px}.ant-select-single:not(.ant-select-customize-input) .ant-select-selector::after{line-height:30px}.ant-select-single.ant-select-customize-input .ant-select-selector .ant-select-selection-search{position:static;width:100%}.ant-select-single.ant-select-customize-input .ant-select-selector .ant-select-selection-placeholder{position:absolute;right:0;left:0;padding:0 11px}.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector{height:40px}.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-item,.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-placeholder,.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector::after{line-height:38px}.ant-select-single.ant-select-lg:not(.ant-select-customize-input):not(.ant-select-customize-input) .ant-select-selection-search-input{height:38px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector{height:24px;padding:0 7px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-item,.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-placeholder,.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector::after{line-height:22px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input):not(.ant-select-customize-input) .ant-select-selection-search-input{height:22px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selection-search{right:7px;left:7px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-search{right:28px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-item,.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-placeholder{padding-right:21px}.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector{padding:0 11px}.ant-select-selection-overflow{position:relative;display:flex;flex:auto;flex-wrap:wrap;max-width:100%}.ant-select-selection-overflow-item{flex:none;align-self:center;max-width:100%}.ant-select-multiple .ant-select-selector{display:flex;flex-wrap:wrap;align-items:center;padding:1px 4px}.ant-select-show-search.ant-select-multiple .ant-select-selector{cursor:text}.ant-select-disabled.ant-select-multiple .ant-select-selector{background:#141414;cursor:not-allowed}.ant-select-multiple .ant-select-selector::after{display:inline-block;width:0;margin:2px 0;line-height:24px;content:'\a0'}.ant-select-multiple.ant-select-allow-clear .ant-select-selector,.ant-select-multiple.ant-select-show-arrow .ant-select-selector{padding-right:24px}.ant-select-multiple .ant-select-selection-item{position:relative;display:flex;flex:none;box-sizing:border-box;max-width:100%;height:24px;margin-top:2px;margin-bottom:2px;line-height:22px;background:rgba(255,255,255,.08);border:1px solid #303030;border-radius:2px;cursor:default;transition:font-size .3s,line-height .3s,height .3s;user-select:none;margin-inline-end:4px;padding-inline-start:8px;padding-inline-end:4px}.ant-select-disabled.ant-select-multiple .ant-select-selection-item{color:#595959;border-color:#1f1f1f;cursor:not-allowed}.ant-select-arrow,.ant-select-multiple .ant-select-selection-item-remove{color:inherit;vertical-align:-.125em;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-align:center}.ant-select-multiple .ant-select-selection-item-content{display:inline-block;margin-right:4px;overflow:hidden;white-space:pre;text-overflow:ellipsis}.ant-select-multiple .ant-select-selection-item-remove{font-style:normal;text-transform:none;display:inline-block;color:rgba(255,255,255,.45);font-weight:700;font-size:10px;line-height:inherit;cursor:pointer}.ant-select-multiple .ant-select-selection-item-remove>.anticon,.ant-spin,.ant-switch,.ant-transfer-operation{vertical-align:middle}.ant-select-multiple .ant-select-selection-item-remove>*{line-height:1}.ant-select-multiple .ant-select-selection-item-remove svg{display:inline-block}.ant-select-disabled .ant-select-selection-item-remove,.ant-select-multiple .ant-select-selection-item-remove::before{display:none}.ant-select-multiple .ant-select-selection-item-remove .ant-select-multiple .ant-select-selection-item-remove-icon{display:block}.ant-select-multiple .ant-select-selection-item-remove:hover{color:rgba(255,255,255,.75)}.ant-select-multiple .ant-select-selection-overflow-item+.ant-select-selection-overflow-item .ant-select-selection-search{margin-inline-start:0}.ant-select-multiple .ant-select-selection-search{position:relative;max-width:100%;margin-inline-start:7px}.ant-select-multiple .ant-select-selection-search-input,.ant-select-multiple .ant-select-selection-search-mirror{height:24px;line-height:24px;transition:all .3s}.ant-select-multiple .ant-select-selection-search-input{width:100%;min-width:4.1px}.ant-select-multiple .ant-select-selection-search-mirror{position:absolute;top:0;left:0;z-index:999;white-space:pre;visibility:hidden}.ant-select-multiple .ant-select-selection-placeholder{position:absolute;top:50%;right:11px;left:11px;transform:translateY(-50%);transition:all .3s}.ant-select-status-error.ant-select-has-feedback .ant-select-clear,.ant-select-status-success.ant-select-has-feedback .ant-select-clear,.ant-select-status-validating.ant-select-has-feedback .ant-select-clear,.ant-select-status-warning.ant-select-has-feedback .ant-select-clear,.theme-btn{right:32px}.ant-select-multiple.ant-select-lg .ant-select-selector::after{line-height:32px}.ant-select-multiple.ant-select-lg .ant-select-selection-search{height:32px;line-height:32px}.ant-select-multiple.ant-select-lg .ant-select-selection-search-input,.ant-select-multiple.ant-select-lg .ant-select-selection-search-mirror{height:32px;line-height:30px}.ant-select-multiple.ant-select-sm .ant-select-selector::after{line-height:16px}.ant-select-multiple.ant-select-sm .ant-select-selection-item,.ant-select-multiple.ant-select-sm .ant-select-selection-search-input,.ant-select-multiple.ant-select-sm .ant-select-selection-search-mirror{height:16px;line-height:14px}.ant-select-multiple.ant-select-sm .ant-select-selection-search{height:16px;line-height:16px;margin-inline-start:3px}.ant-select-multiple.ant-select-sm .ant-select-selection-placeholder{left:7px}.ant-select-multiple.ant-select-lg .ant-select-selection-item{height:32px;line-height:32px}.ant-select,.ant-select-dropdown{line-height:1.5715;box-sizing:border-box;list-style:none;font-feature-settings:tnum}.ant-select-status-error.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input) .ant-select-selector{background-color:transparent;border-color:#a61d24!important}.ant-select-status-error.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input).ant-select-focused .ant-select-selector,.ant-select-status-error.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input).ant-select-open .ant-select-selector{border-color:#a61d24;box-shadow:0 0 0 2px rgba(166,29,36,.2);border-right-width:1px;outline:0}.ant-select-status-warning.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input) .ant-select-selector{background-color:transparent;border-color:#d89614!important}.ant-select-status-warning.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input).ant-select-focused .ant-select-selector,.ant-select-status-warning.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input).ant-select-open .ant-select-selector{border-color:#d89614;box-shadow:0 0 0 2px rgba(216,150,20,.2);border-right-width:1px;outline:0}.ant-select-status-error.ant-select-has-feedback .ant-select-selection-selected-value,.ant-select-status-success.ant-select-has-feedback .ant-select-selection-selected-value,.ant-select-status-validating.ant-select-has-feedback .ant-select-selection-selected-value,.ant-select-status-warning.ant-select-has-feedback .ant-select-selection-selected-value{padding-right:42px}.ant-select{margin:0;padding:0;color:rgba(255,255,255,.85);font-size:14px;font-variant:tabular-nums;position:relative;display:inline-block;cursor:pointer}.ant-select:not(.ant-select-customize-input) .ant-select-selector{position:relative;background-color:transparent;border:1px solid #434343;border-radius:2px;transition:all .3s cubic-bezier(.645,.045,.355,1)}.ant-select:not(.ant-select-customize-input) .ant-select-selector input{cursor:pointer}.ant-select-show-search.ant-select:not(.ant-select-customize-input) .ant-select-selector{cursor:text}.ant-select-show-search.ant-select:not(.ant-select-customize-input) .ant-select-selector input{cursor:auto}.ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector{border-right-width:0;border-left-width:1px!important}.ant-select-disabled.ant-select:not(.ant-select-customize-input) .ant-select-selector{color:rgba(255,255,255,.3);background:rgba(255,255,255,.08);cursor:not-allowed}.ant-select-multiple.ant-select-disabled.ant-select:not(.ant-select-customize-input) .ant-select-selector{background:#141414}.ant-select-disabled.ant-select:not(.ant-select-customize-input) .ant-select-selector input{cursor:not-allowed}.ant-select:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-search-input{margin:0;padding:0;background:0 0;border:none;outline:0;appearance:none}.ant-select-arrow,.ant-select-clear{position:absolute;right:11px;height:12px;margin-top:-6px;font-size:12px;line-height:1;text-transform:none;font-style:normal}.ant-select:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-search-input::-webkit-search-cancel-button{display:none;-webkit-appearance:none}.ant-select:not(.ant-select-disabled):hover .ant-select-selector{border-color:#165996;border-right-width:1px}.ant-input-rtl .ant-select:not(.ant-select-disabled):hover .ant-select-selector{border-right-width:0;border-left-width:1px!important}.ant-select-selection-item{flex:1;overflow:hidden;font-weight:400;white-space:nowrap;text-overflow:ellipsis}@media all and (-ms-high-contrast:none){.ant-select-selection-item,.ant-select-selection-item ::-ms-backdrop{flex:auto}}.ant-select-selection-placeholder{flex:1;overflow:hidden;color:rgba(255,255,255,.3);white-space:nowrap;text-overflow:ellipsis;pointer-events:none}@media all and (-ms-high-contrast:none){.ant-select-selection-placeholder,.ant-select-selection-placeholder ::-ms-backdrop{flex:auto}}.ant-select-arrow{top:50%;display:flex;align-items:center;color:rgba(255,255,255,.3);pointer-events:none}.ant-select-arrow svg,.ant-select-clear{display:inline-block}.ant-select-arrow>*{line-height:1}.ant-select-arrow::before{display:none}.ant-select-arrow .ant-select-arrow-icon{display:block}.ant-select-arrow .anticon{vertical-align:top;transition:transform .3s}.ant-select-arrow .anticon>svg{vertical-align:top}.ant-select-arrow .anticon:not(.ant-select-suffix){pointer-events:auto}.ant-select-disabled .ant-select-arrow{cursor:not-allowed}.ant-select-arrow>:not(:last-child){margin-inline-end:8px}.ant-select-clear{top:50%;z-index:1;width:12px;color:rgba(255,255,255,.3);text-align:center;background:#141414;cursor:pointer;opacity:0;transition:color .3s ease,opacity .15s ease;text-rendering:auto}.ant-select-clear::before{display:block}.ant-select-clear:hover{color:rgba(255,255,255,.45)}.ant-select:hover .ant-select-clear{opacity:1}.ant-select-dropdown{margin:0;color:rgba(255,255,255,.85);z-index:1050;padding:4px 0;overflow:hidden;font-size:14px;font-variant:initial;background-color:#1f1f1f;border-radius:2px;outline:0;box-shadow:0 3px 6px -4px rgba(0,0,0,.48),0 6px 16px 0 rgba(0,0,0,.32),0 9px 28px 8px rgba(0,0,0,.2)}.ant-select-dropdown-empty,.ant-select-item-empty{color:rgba(255,255,255,.3)}.ant-select-item,.ant-select-item-empty{display:block;padding:5px 12px;font-size:14px;line-height:22px;position:relative;font-weight:400;min-height:32px}.ant-select-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-select-dropdown-placement-topLeft,.ant-select-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-select-dropdown-placement-topLeft{animation-name:antSlideDownIn}.ant-select-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-select-dropdown-placement-bottomLeft{animation-name:antSlideUpOut}.ant-select-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-select-dropdown-placement-topLeft{animation-name:antSlideDownOut}.ant-select-item{color:rgba(255,255,255,.85);cursor:pointer;transition:background .3s ease}.ant-select-item-group{color:rgba(255,255,255,.45);font-size:12px;cursor:default}.ant-select-item-option{display:flex}.ant-select-item-option-content{flex:auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-select-item-option-state{flex:none}.ant-select-item-option-active:not(.ant-select-item-option-disabled){background-color:rgba(255,255,255,.08)}.ant-select-item-option-selected:not(.ant-select-item-option-disabled){color:rgba(255,255,255,.85);font-weight:600;background-color:#111b26}.ant-select-item-option-selected:not(.ant-select-item-option-disabled) .ant-select-item-option-state{color:#177ddc}.ant-select-item-option-disabled,.segmented-disabled-item,.segmented-disabled-item:focus,.segmented-disabled-item:hover{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-select-item-option-disabled.ant-select-item-option-selected{background-color:#141414}.ant-select-item-option-grouped{padding-left:24px}.ant-select-lg{font-size:16px}.ant-segmented,.ant-slider,.ant-slider-mark,.ant-spin,.ant-spin-sm .ant-spin-dot{font-size:14px}.ant-select-borderless .ant-select-selector{background-color:transparent!important;border-color:transparent!important;box-shadow:none!important}.ant-select.ant-select-in-form-item{width:100%}.ant-select-rtl .ant-select-arrow,.ant-select-rtl .ant-select-clear{right:initial;left:11px}.ant-select-dropdown-rtl .ant-select-item-option-grouped{padding-right:24px;padding-left:12px}.ant-select-rtl.ant-select-multiple.ant-select-allow-clear .ant-select-selector,.ant-select-rtl.ant-select-multiple.ant-select-show-arrow .ant-select-selector{padding-right:4px;padding-left:24px}.ant-select-rtl.ant-select-multiple .ant-select-selection-item{text-align:right}.ant-select-rtl.ant-select-multiple .ant-select-selection-item-content{margin-right:0;margin-left:4px;text-align:right}.ant-select-rtl.ant-select-multiple .ant-select-selection-search-mirror{right:0;left:auto}.ant-select-rtl.ant-select-multiple .ant-select-selection-placeholder{right:11px;left:auto}.ant-select-rtl.ant-select-multiple.ant-select-sm .ant-select-selection-placeholder{right:7px}.ant-select-rtl.ant-select-single .ant-select-selector .ant-select-selection-item,.ant-select-rtl.ant-select-single .ant-select-selector .ant-select-selection-placeholder{right:0;left:9px;text-align:right}.ant-select-rtl.ant-select-single.ant-select-show-arrow .ant-select-selection-search{right:11px;left:25px}.ant-select-rtl.ant-select-single.ant-select-show-arrow .ant-select-selection-item,.ant-select-rtl.ant-select-single.ant-select-show-arrow .ant-select-selection-placeholder{padding-right:0;padding-left:18px}.ant-select-rtl.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-search{right:6px}.ant-select-rtl.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-item,.ant-select-rtl.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-placeholder{padding-right:0;padding-left:21px}.ant-select-dropdown{top:100%;left:0;position:relative;width:100%;margin-top:4px;margin-bottom:4px;display:block}.ant-select-dropdown .cdk-virtual-scroll-content-wrapper{right:0}.ant-select-dropdown .full-width{contain:initial}.ant-select-dropdown .full-width .cdk-virtual-scroll-content-wrapper{position:static}.ant-select-dropdown .full-width .cdk-virtual-scroll-spacer{position:absolute;top:0;width:1px}.segmented-item-selected{background-color:#333;border-radius:2px;box-shadow:0 2px 8px -2px rgba(0,0,0,.05),0 1px 4px -1px rgba(0,0,0,.07),0 0 1px 0 rgba(0,0,0,.08)}.segmented-text-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all}.ant-segmented{box-sizing:border-box;margin:0;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum;display:inline-block;padding:2px;color:rgba(255,255,255,.65);background-color:rgba(0,0,0,.25);border-radius:2px;transition:all .3s cubic-bezier(.645,.045,.355,1)}.ant-segmented-item-selected,.ant-segmented-item:focus,.ant-segmented-item:hover,.ant-slider{color:rgba(255,255,255,.85)}.ant-segmented-group{position:relative;display:flex;align-items:stretch;justify-items:flex-start;width:100%}.ant-segmented.ant-segmented-block{display:flex}.ant-segmented.ant-segmented-block .ant-segmented-item{flex:1;min-width:0}.ant-segmented:not(.ant-segmented-disabled):focus,.ant-segmented:not(.ant-segmented-disabled):hover{background-color:rgba(0,0,0,.45)}.ant-segmented-item-selected,.ant-segmented-thumb{background-color:#333;border-radius:2px;box-shadow:0 2px 8px -2px rgba(0,0,0,.05),0 1px 4px -1px rgba(0,0,0,.07),0 0 1px 0 rgba(0,0,0,.08)}.ant-segmented-item{position:relative;text-align:center;cursor:pointer;transition:color .3s cubic-bezier(.645,.045,.355,1)}.ant-segmented-item-label{min-height:28px;padding:0 11px;line-height:28px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all}.ant-segmented-item-icon+*{margin-left:12px/2}.ant-segmented-item-input{position:absolute;top:0;left:0;width:0;height:0;opacity:0;pointer-events:none}.ant-segmented.ant-segmented-lg .ant-segmented-item-label{min-height:36px;padding:0 11px;font-size:16px;line-height:36px}.ant-segmented.ant-segmented-sm .ant-segmented-item-label{min-height:20px;padding:0 7px;line-height:20px}.ant-segmented-item-disabled,.ant-segmented-item-disabled:focus,.ant-segmented-item-disabled:hover{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-segmented-thumb{position:absolute;top:0;left:0;width:0;height:100%;padding:4px 0}.ant-skeleton-header .ant-skeleton-avatar-lg.ant-skeleton-avatar-circle,.ant-skeleton-header .ant-skeleton-avatar-sm.ant-skeleton-avatar-circle,.ant-skeleton-header .ant-skeleton-avatar.ant-skeleton-avatar-circle{border-radius:50%}.ant-segmented-thumb-motion-appear-active{transition:transform .3s cubic-bezier(.645,.045,.355,1),width .3s cubic-bezier(.645,.045,.355,1);will-change:transform,width}.ant-segmented.ant-segmented-rtl .ant-segmented-item-icon{margin-right:0;margin-left:6px}.ant-skeleton{display:table;width:100%}.ant-skeleton-header{display:table-cell;padding-right:16px;vertical-align:top}.ant-skeleton-header .ant-skeleton-avatar{display:inline-block;vertical-align:top;background:rgba(190,190,190,.2);width:32px;height:32px;line-height:32px}.ant-skeleton-header .ant-skeleton-avatar-lg{width:40px;height:40px;line-height:40px}.ant-skeleton-header .ant-skeleton-avatar-sm{width:24px;height:24px;line-height:24px}.ant-skeleton-content{display:table-cell;width:100%;vertical-align:top}.ant-skeleton-content .ant-skeleton-title{width:100%;height:16px;margin-top:16px;background:rgba(190,190,190,.2);border-radius:4px}.ant-skeleton-content .ant-skeleton-title+.ant-skeleton-paragraph{margin-top:24px}.ant-skeleton-content .ant-skeleton-paragraph{padding:0}.ant-skeleton-content .ant-skeleton-paragraph>li{width:100%;height:16px;list-style:none;background:rgba(190,190,190,.2);border-radius:4px}.ant-skeleton-content .ant-skeleton-paragraph>li:last-child:not(:first-child):not(:nth-child(2)){width:61%}.ant-skeleton-content .ant-skeleton-paragraph>li+li{margin-top:16px}.ant-skeleton-with-avatar .ant-skeleton-content .ant-skeleton-title{margin-top:12px}.ant-skeleton-with-avatar .ant-skeleton-content .ant-skeleton-title+.ant-skeleton-paragraph{margin-top:28px}.ant-skeleton-round .ant-skeleton-content .ant-skeleton-paragraph>li,.ant-skeleton-round .ant-skeleton-content .ant-skeleton-title{border-radius:100px}.ant-skeleton.ant-skeleton-active .ant-skeleton-avatar,.ant-skeleton.ant-skeleton-active .ant-skeleton-button,.ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-paragraph>li,.ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-title,.ant-skeleton.ant-skeleton-active .ant-skeleton-image,.ant-skeleton.ant-skeleton-active .ant-skeleton-input{background:linear-gradient(90deg,rgba(190,190,190,.2) 25%,rgba(255,255,255,.16) 37%,rgba(190,190,190,.2) 63%);background-size:400% 100%;animation:ant-skeleton-loading 1.4s ease infinite}.ant-skeleton.ant-skeleton-block,.ant-skeleton.ant-skeleton-block .ant-skeleton-button,.ant-skeleton.ant-skeleton-block .ant-skeleton-input{width:100%}.ant-skeleton-element{display:inline-block;width:auto}.ant-skeleton-element .ant-skeleton-button{display:inline-block;vertical-align:top;background:rgba(190,190,190,.2);border-radius:2px;width:64px;min-width:64px;height:32px;line-height:32px}.ant-skeleton-element .ant-skeleton-button.ant-skeleton-button-circle{width:32px;min-width:32px;border-radius:50%}.ant-skeleton-element .ant-skeleton-button.ant-skeleton-button-round{border-radius:32px}.ant-skeleton-element .ant-skeleton-button-lg{width:80px;min-width:80px;height:40px;line-height:40px}.ant-skeleton-element .ant-skeleton-button-lg.ant-skeleton-button-circle{width:40px;min-width:40px;border-radius:50%}.ant-skeleton-element .ant-skeleton-button-lg.ant-skeleton-button-round{border-radius:40px}.ant-skeleton-element .ant-skeleton-button-sm{width:48px;min-width:48px;height:24px;line-height:24px}.ant-skeleton-element .ant-skeleton-button-sm.ant-skeleton-button-circle{width:24px;min-width:24px;border-radius:50%}.ant-skeleton-element .ant-skeleton-button-sm.ant-skeleton-button-round{border-radius:24px}.ant-image-preview-switch-left,.ant-image-preview-switch-right,.ant-skeleton-element .ant-skeleton-avatar-lg.ant-skeleton-avatar-circle,.ant-skeleton-element .ant-skeleton-avatar-sm.ant-skeleton-avatar-circle,.ant-skeleton-element .ant-skeleton-avatar.ant-skeleton-avatar-circle,.ant-skeleton-element .ant-skeleton-image-svg.ant-skeleton-image-circle,.ant-skeleton-element .ant-skeleton-image.ant-skeleton-image-circle{border-radius:50%}.ant-skeleton-element .ant-skeleton-avatar{display:inline-block;vertical-align:top;background:rgba(190,190,190,.2);width:32px;height:32px;line-height:32px}.ant-skeleton-element .ant-skeleton-avatar-lg{width:40px;height:40px;line-height:40px}.ant-skeleton-element .ant-skeleton-avatar-sm{width:24px;height:24px;line-height:24px}.ant-skeleton-element .ant-skeleton-input{display:inline-block;vertical-align:top;background:rgba(190,190,190,.2);width:160px;min-width:160px;height:32px;line-height:32px}.ant-skeleton-element .ant-skeleton-input-lg{width:200px;min-width:200px;height:40px;line-height:40px}.ant-skeleton-element .ant-skeleton-input-sm{width:120px;min-width:120px;height:24px;line-height:24px}.ant-skeleton-element .ant-skeleton-image{display:flex;align-items:center;justify-content:center;vertical-align:top;background:rgba(190,190,190,.2);width:96px;height:96px;line-height:96px}.ant-skeleton-element .ant-skeleton-image-path{fill:#bfbfbf}.ant-skeleton-element .ant-skeleton-image-svg{width:48px;height:48px;line-height:48px;max-width:192px;max-height:192px}@keyframes ant-skeleton-loading{0%{background-position:100% 50%}100%{background-position:0 50%}}.ant-skeleton-rtl .ant-skeleton-header{padding-right:0;padding-left:16px}.ant-skeleton-rtl.ant-skeleton.ant-skeleton-active .ant-skeleton-avatar,.ant-skeleton-rtl.ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-paragraph>li,.ant-skeleton-rtl.ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-title{animation-name:ant-skeleton-loading-rtl}@keyframes ant-skeleton-loading-rtl{0%{background-position:0 50%}100%{background-position:100% 50%}}.ant-slider{box-sizing:border-box;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum;position:relative;height:12px;margin:10px 6px;padding:4px 0;cursor:pointer;touch-action:none}.ant-slider-vertical{width:12px;height:100%;margin:6px 10px;padding:0 4px}.ant-slider-vertical .ant-slider-rail{width:4px;height:100%}.ant-slider-vertical .ant-slider-track{width:4px}.ant-slider-vertical .ant-slider-handle{margin-top:-6px;margin-left:-5px}.ant-slider-vertical .ant-slider-mark{top:0;left:12px;width:18px;height:100%}.ant-slider-vertical .ant-slider-mark-text{left:4px;white-space:nowrap}.ant-slider-vertical .ant-slider-step{width:4px;height:100%}.ant-slider-rail,.ant-slider-track{height:4px;border-radius:2px;transition:background-color .3s;position:absolute}.ant-slider-vertical .ant-slider-dot{top:auto;margin-left:-2px}.ant-slider-rtl.ant-slider-vertical .ant-slider-handle{margin-right:-5px;margin-left:0}.ant-slider-rtl.ant-slider-vertical .ant-slider-mark{right:12px;left:auto}.ant-slider-rtl.ant-slider-vertical .ant-slider-mark-text{right:4px;left:auto}.ant-slider-rtl.ant-slider-vertical .ant-slider-dot{right:2px;left:auto}.ant-slider-with-marks{margin-bottom:28px}.ant-slider-rail{width:100%;background-color:#262626}.ant-slider-track{background-color:#153450}.ant-slider-handle{position:absolute;width:14px;height:14px;margin-top:-5px;background-color:#141414;border:2px solid #153450;border-radius:50%;box-shadow:0;cursor:pointer;transition:border-color .3s,box-shadow .6s,transform .3s cubic-bezier(.18,.89,.32,1.28)}.ant-spin,.ant-statistic,.ant-steps{margin:0;padding:0;line-height:1.5715;font-variant:tabular-nums;box-sizing:border-box;list-style:none}.ant-slider:hover .ant-slider-rail,.ant-tooltip-inner{background-color:#434343}.ant-slider-handle-dragging{z-index:1}.ant-slider-handle:focus{border-color:#4697e3;outline:0;box-shadow:0 0 0 5px rgba(23,125,220,.12)}.ant-slider-handle.ant-tooltip-open{border-color:#177ddc}.ant-slider:hover .ant-slider-track{background-color:#16436e}.ant-slider:hover .ant-slider-handle:not(.ant-tooltip-open){border-color:#16436e}.ant-slider-mark{position:absolute;top:14px;left:0;width:100%}.ant-slider-mark-text{position:absolute;display:inline-block;color:rgba(255,255,255,.45);text-align:center;word-break:keep-all;cursor:pointer;user-select:none}.ant-slider-mark-text-active{color:rgba(255,255,255,.85)}.ant-slider-step{position:absolute;width:100%;height:4px;background:0 0;pointer-events:none}.ant-slider-dot{position:absolute;top:-2px;width:8px;height:8px;background-color:#141414;border:2px solid #303030;border-radius:50%;cursor:pointer}.ant-slider-dot-active{border-color:#16436e}.ant-slider-disabled{cursor:not-allowed}.ant-slider-disabled .ant-slider-rail{background-color:#262626!important}.ant-slider-disabled .ant-slider-track{background-color:rgba(255,255,255,.3)!important}.ant-slider-disabled .ant-slider-dot,.ant-slider-disabled .ant-slider-handle{background-color:#141414;border-color:rgba(255,255,255,.3)!important;box-shadow:none;cursor:not-allowed}.ant-slider-disabled .ant-slider-dot,.ant-slider-disabled .ant-slider-mark-text{cursor:not-allowed!important}.ant-slider-rtl .ant-slider-mark{right:0;left:auto}.ant-spin{font-feature-settings:tnum;position:absolute;display:none;color:#177ddc;text-align:center;opacity:0;transition:transform .3s cubic-bezier(.78,.14,.15,.86)}.ant-spin-spinning,.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-left::before,.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-right::after,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-left::before,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-right::after,.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-bottom::after,.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-top::before,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-bottom::after,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-top::before,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-bottom::after,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-top::before,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-bottom::after,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-top::before,.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-left::before,.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-right::after,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-left::before,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-right::after{opacity:1}.ant-spin-spinning{position:static;display:inline-block}.ant-spin-nested-loading{position:relative}.ant-spin-nested-loading>div>.ant-spin{position:absolute;top:0;left:0;z-index:4;display:block;width:100%;height:100%;max-height:400px}.ant-spin-nested-loading>div>.ant-spin .ant-spin-dot{position:absolute;top:50%;left:50%;margin:-10px}.ant-spin-nested-loading>div>.ant-spin .ant-spin-text{position:absolute;top:50%;width:100%;padding-top:5px;text-shadow:0 1px 2px #141414}.ant-spin-nested-loading>div>.ant-spin.ant-spin-show-text .ant-spin-dot{margin-top:-20px}.ant-spin-nested-loading>div>.ant-spin-sm .ant-spin-dot{margin:-7px}.ant-spin-nested-loading>div>.ant-spin-sm .ant-spin-text{padding-top:2px}.ant-spin-nested-loading>div>.ant-spin-sm.ant-spin-show-text .ant-spin-dot{margin-top:-17px}.ant-spin-nested-loading>div>.ant-spin-lg .ant-spin-dot{margin:-16px}.ant-spin-nested-loading>div>.ant-spin-lg .ant-spin-text{padding-top:11px}.ant-spin-nested-loading>div>.ant-spin-lg.ant-spin-show-text .ant-spin-dot{margin-top:-26px}.ant-spin-container{position:relative;transition:opacity .3s}.ant-spin-container::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;display:none\9;width:100%;height:100%;background:#141414;opacity:0;transition:all .3s;content:'';pointer-events:none}.ant-spin-blur{clear:both;opacity:.5;user-select:none;pointer-events:none}.ant-spin-blur::after{opacity:.4;pointer-events:auto}.ant-spin-tip{color:rgba(255,255,255,.45)}.ant-spin-dot{position:relative;display:inline-block;font-size:20px;width:1em;height:1em}.ant-spin-dot-item{position:absolute;display:block;width:9px;height:9px;background-color:#177ddc;border-radius:100%;transform:scale(.75);transform-origin:50% 50%;opacity:.3;animation:antSpinMove 1s infinite linear alternate}.ant-spin-dot-item:nth-child(1){top:0;left:0}.ant-spin-dot-item:nth-child(2){top:0;right:0;animation-delay:.4s}.ant-spin-dot-item:nth-child(3){right:0;bottom:0;animation-delay:.8s}.ant-spin-dot-item:nth-child(4){bottom:0;left:0;animation-delay:1.2s}.ant-spin-dot-spin{transform:rotate(0);animation:antRotate 1.2s infinite linear}.ant-spin-sm .ant-spin-dot i{width:6px;height:6px}.ant-spin-lg .ant-spin-dot{font-size:32px}.ant-spin-lg .ant-spin-dot i{width:14px;height:14px}.ant-spin.ant-spin-show-text .ant-spin-text{display:block}@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){.ant-spin-blur{background:#141414;opacity:.5}}@keyframes antSpinMove{to{opacity:1}}@keyframes antRotate{to{transform:rotate(360deg)}}.ant-spin-rtl .ant-spin-dot-spin{transform:rotate(-45deg);animation-name:antRotateRtl}@keyframes antRotateRtl{to{transform:rotate(-405deg)}}nz-spin{display:block}.ant-statistic{color:rgba(255,255,255,.85);font-size:14px;font-feature-settings:tnum}.ant-statistic-title{margin-bottom:4px;color:rgba(255,255,255,.45);font-size:14px}.ant-statistic-content{color:rgba(255,255,255,.85);font-size:24px}.ant-statistic-content-value{display:inline-block;direction:ltr}.ant-cascader-checkbox-rtl,.ant-statistic-rtl,.ant-steps-rtl,.ant-switch-rtl,.ant-table-rtl,.ant-table-wrapper-rtl,.ant-tabs-dropdown-rtl,.ant-tabs-rtl,.ant-tag.ant-tag-rtl,.ant-timeline-rtl,.ant-tooltip-rtl,.ant-transfer-rtl,.ant-typography-rtl,.ant-upload-list-rtl,.ant-upload-rtl{direction:rtl}.ant-statistic-content-prefix,.ant-statistic-content-suffix{display:inline-block}.ant-statistic-content-prefix{margin-right:4px}.ant-statistic-content-suffix{margin-left:4px}.ant-statistic-rtl .ant-statistic-content-prefix{margin-right:0;margin-left:4px}.ant-statistic-rtl .ant-statistic-content-suffix{margin-right:4px;margin-left:0}.ant-steps{color:rgba(255,255,255,.85);font-feature-settings:tnum;display:flex;width:100%;font-size:0;text-align:initial}.ant-steps-item{position:relative;display:inline-block;flex:1;overflow:hidden;vertical-align:top}.ant-steps-item-container{outline:0}.ant-steps-item:last-child{flex:none}.ant-steps-item:last-child>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after,.ant-steps-item:last-child>.ant-steps-item-container>.ant-steps-item-tail{display:none}.ant-steps-item-content,.ant-steps-item-icon{display:inline-block;vertical-align:top}.ant-steps-item-icon{width:32px;height:32px;margin:0 8px 0 0;font-size:16px;line-height:32px;text-align:center;border:1px solid rgba(255,255,255,.3);border-radius:32px;transition:background-color .3s,border-color .3s}.ant-steps-item-icon .ant-steps-icon{position:relative;top:-.5px;color:#177ddc;line-height:1}.ant-steps-item-tail{position:absolute;top:12px;left:0;width:100%;padding:0 10px}.ant-steps-item-tail::after{display:inline-block;width:100%;height:1px;background:#303030;border-radius:1px;transition:background .3s;content:''}.ant-steps-item-title{position:relative;display:inline-block;padding-right:16px;color:rgba(255,255,255,.85);font-size:16px;line-height:32px}.ant-steps-item-description,.ant-steps-item-subtitle{color:rgba(255,255,255,.45);font-size:14px}.ant-steps-item-title::after{position:absolute;top:16px;left:100%;display:block;width:9999px;height:1px;background:#303030;content:''}.ant-steps-item-subtitle{display:inline;margin-left:8px;font-weight:400}.ant-steps-item-wait .ant-steps-item-icon{background-color:transparent;border-color:rgba(255,255,255,.3)}.ant-steps-item-wait .ant-steps-item-icon>.ant-steps-icon{color:rgba(255,255,255,.3)}.ant-steps-item-wait>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-description,.ant-steps-item-wait>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title{color:rgba(255,255,255,.45)}.ant-steps-item-wait .ant-steps-item-icon>.ant-steps-icon .ant-steps-icon-dot{background:rgba(255,255,255,.3)}.ant-steps-item-wait>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after,.ant-steps-item-wait>.ant-steps-item-container>.ant-steps-item-tail::after{background-color:#303030}.ant-steps-item-process .ant-steps-item-icon{background-color:transparent;border-color:#177ddc}.ant-steps-item-process .ant-steps-item-icon>.ant-steps-icon{color:#177ddc}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-description,.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title{color:rgba(255,255,255,.85)}.ant-steps-item-process .ant-steps-item-icon>.ant-steps-icon .ant-steps-icon-dot{background:#177ddc}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after,.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-tail::after{background-color:#303030}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-icon{background:#177ddc}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-icon .ant-steps-icon{color:#fff}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-title{font-weight:500}.ant-steps-item-finish .ant-steps-item-icon{background-color:transparent;border-color:#177ddc}.ant-steps-item-finish>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after,.ant-steps-item-finish>.ant-steps-item-container>.ant-steps-item-tail::after{background-color:#177ddc}.ant-steps-item-finish .ant-steps-item-icon>.ant-steps-icon{color:#177ddc}.ant-steps-item-finish .ant-steps-item-icon>.ant-steps-icon .ant-steps-icon-dot{background:#177ddc}.ant-steps-item-finish>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title{color:rgba(255,255,255,.85)}.ant-steps-item-finish>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-description{color:rgba(255,255,255,.45)}.ant-steps-item-error .ant-steps-item-icon>.ant-steps-icon,.ant-steps-item-error>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-description,.ant-steps-item-error>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title{color:#a61d24}.ant-steps-item-error .ant-steps-item-icon{background-color:transparent;border-color:#a61d24}.ant-steps-item-error .ant-steps-item-icon>.ant-steps-icon .ant-steps-icon-dot{background:#a61d24}.ant-steps-item-error>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after,.ant-steps-item-error>.ant-steps-item-container>.ant-steps-item-tail::after,.g2-radar__legend-item::after,.number-info:not(:first-child)::after{background-color:#303030}.ant-steps .ant-steps-item:not(.ant-steps-item-active):not(.ant-steps-item-process)>.ant-steps-item-container[role=button]:hover .ant-steps-item-icon .ant-steps-icon,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button]:hover .ant-steps-item-description,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button]:hover .ant-steps-item-subtitle,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button]:hover .ant-steps-item-title,.ant-steps-item-custom.ant-steps-item-process .ant-steps-item-icon>.ant-steps-icon{color:#177ddc}.ant-steps-item.ant-steps-next-error .ant-steps-item-title::after{background:#a61d24}.ant-steps-item-disabled{cursor:not-allowed}.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button]{cursor:pointer}.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button] .ant-steps-item-description,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button] .ant-steps-item-icon .ant-steps-icon,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button] .ant-steps-item-subtitle,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button] .ant-steps-item-title{transition:color .3s}.ant-steps .ant-steps-item:not(.ant-steps-item-active):not(.ant-steps-item-process)>.ant-steps-item-container[role=button]:hover .ant-steps-item-icon{border-color:#177ddc}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item{padding-left:16px;white-space:nowrap}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:first-child{padding-left:0}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:last-child .ant-steps-item-title{padding-right:0}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item-tail{display:none}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item-description{max-width:140px;white-space:normal}.ant-steps-item-custom>.ant-steps-item-container>.ant-steps-item-icon{height:auto;background:0 0;border:0}.ant-steps-item-custom>.ant-steps-item-container>.ant-steps-item-icon>.ant-steps-icon{top:0;left:.5px;width:32px;height:32px;font-size:24px;line-height:32px}.ant-steps:not(.ant-steps-vertical) .ant-steps-item-custom .ant-steps-item-icon{width:auto;background:0 0}.ant-steps-small.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item{padding-left:12px}.ant-steps-small.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:first-child{padding-left:0}.ant-steps-small .ant-steps-item-icon{width:24px;height:24px;margin:0 8px 0 0;font-size:12px;line-height:24px;text-align:center;border-radius:24px}.ant-steps-small .ant-steps-item-title{padding-right:12px;font-size:14px;line-height:24px}.ant-steps-small .ant-steps-item-title::after{top:12px}.ant-steps-small .ant-steps-item-description{color:rgba(255,255,255,.45);font-size:14px}.ant-switch,.ant-table,.ant-table-footer,.ant-table-thead>tr>th{color:rgba(255,255,255,.85)}.ant-steps-small .ant-steps-item-tail{top:8px}.ant-steps-small .ant-steps-item-custom .ant-steps-item-icon{width:inherit;height:inherit;line-height:inherit;background:0 0;border:0;border-radius:0}.ant-steps-small .ant-steps-item-custom .ant-steps-item-icon>.ant-steps-icon{font-size:24px;line-height:24px;transform:none}.ant-steps-vertical{display:flex;flex-direction:column}.ant-steps-vertical>.ant-steps-item{display:block;flex:1 0 auto;padding-left:0;overflow:visible}.ant-steps-vertical>.ant-steps-item .ant-steps-item-icon{float:left;margin-right:16px}.ant-steps-vertical>.ant-steps-item .ant-steps-item-content{display:block;min-height:48px;overflow:hidden}.ant-steps-vertical>.ant-steps-item .ant-steps-item-title{line-height:32px}.ant-steps-vertical>.ant-steps-item .ant-steps-item-description{padding-bottom:12px}.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{position:absolute;top:0;left:16px;width:1px;height:100%;padding:38px 0 6px}.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail::after{width:1px;height:100%}.ant-steps-vertical>.ant-steps-item:not(:last-child)>.ant-steps-item-container>.ant-steps-item-tail{display:block}.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after{display:none}.ant-steps-vertical.ant-steps-small .ant-steps-item-container .ant-steps-item-tail{position:absolute;top:0;left:12px;padding:30px 0 6px}.ant-steps-vertical.ant-steps-small .ant-steps-item-container .ant-steps-item-title{line-height:24px}.ant-steps-label-vertical .ant-steps-item{overflow:visible}.ant-steps-label-vertical .ant-steps-item-tail{margin-left:58px;padding:3.5px 24px}.ant-steps-label-vertical .ant-steps-item-content{display:block;width:116px;margin-top:8px;text-align:center}.ant-steps-label-vertical .ant-steps-item-icon{display:inline-block;margin-left:42px}.ant-steps-label-vertical .ant-steps-item-title{padding-right:0;padding-left:0}.ant-steps-label-vertical .ant-steps-item-title::after{display:none}.ant-steps-label-vertical .ant-steps-item-subtitle{display:block;margin-bottom:4px;margin-left:0;line-height:1.5715}.ant-steps-label-vertical.ant-steps-small:not(.ant-steps-dot) .ant-steps-item-icon{margin-left:46px}.ant-steps-dot .ant-steps-item-title,.ant-steps-dot.ant-steps-small .ant-steps-item-title{line-height:1.5715}.ant-steps-dot .ant-steps-item-tail,.ant-steps-dot.ant-steps-small .ant-steps-item-tail{top:2px;width:100%;margin:0 0 0 70px;padding:0}.ant-steps-dot .ant-steps-item-tail::after,.ant-steps-dot.ant-steps-small .ant-steps-item-tail::after{width:calc(100% - 20px);height:3px;margin-left:12px}.ant-steps-dot .ant-steps-item:first-child .ant-steps-icon-dot,.ant-steps-dot.ant-steps-small .ant-steps-item:first-child .ant-steps-icon-dot{left:2px}.ant-steps-dot .ant-steps-item-icon,.ant-steps-dot.ant-steps-small .ant-steps-item-icon{width:8px;height:8px;margin-left:67px;padding-right:0;line-height:8px;background:0 0;border:0}.ant-steps-dot .ant-steps-item-icon .ant-steps-icon-dot,.ant-steps-dot.ant-steps-small .ant-steps-item-icon .ant-steps-icon-dot{position:relative;float:left;width:100%;height:100%;border-radius:100px;transition:all .3s}.ant-steps-dot .ant-steps-item-icon .ant-steps-icon-dot::after,.ant-steps-dot.ant-steps-small .ant-steps-item-icon .ant-steps-icon-dot::after{position:absolute;top:-12px;left:-26px;width:60px;height:32px;background:rgba(0,0,0,.001);content:''}.ant-steps-dot .ant-steps-item-content,.ant-steps-dot.ant-steps-small .ant-steps-item-content{width:140px}.ant-steps-dot .ant-steps-item-process .ant-steps-item-icon,.ant-steps-dot.ant-steps-small .ant-steps-item-process .ant-steps-item-icon{position:relative;top:-1px;width:10px;height:10px;line-height:10px;background:0 0}.ant-steps-dot .ant-steps-item-process .ant-steps-icon:first-child .ant-steps-icon-dot,.ant-steps-dot.ant-steps-small .ant-steps-item-process .ant-steps-icon:first-child .ant-steps-icon-dot{left:0}.ant-steps-vertical.ant-steps-dot .ant-steps-item-icon{margin-top:13px;margin-left:0;background:0 0}.ant-steps-vertical.ant-steps-dot .ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{top:6.5px;left:-9px;margin:0;padding:22px 0 4px}.ant-steps-vertical.ant-steps-dot.ant-steps-small .ant-steps-item-icon{margin-top:10px}.ant-steps-vertical.ant-steps-dot.ant-steps-small .ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{top:3.5px}.ant-steps-vertical.ant-steps-dot .ant-steps-item:first-child .ant-steps-icon-dot{left:0}.ant-steps-vertical.ant-steps-dot .ant-steps-item-content{width:inherit}.ant-steps-vertical.ant-steps-dot .ant-steps-item-process .ant-steps-item-container .ant-steps-item-icon .ant-steps-icon-dot{top:-1px;left:-1px}.ant-steps-navigation{padding-top:12px}.ant-steps-navigation.ant-steps-small .ant-steps-item-container{margin-left:-12px}.ant-steps-navigation .ant-steps-item{overflow:visible;text-align:center}.ant-steps-navigation .ant-steps-item-container{display:inline-block;height:100%;margin-left:-16px;padding-bottom:12px;text-align:left;transition:opacity .3s}.ant-steps-navigation .ant-steps-item-container .ant-steps-item-title::after,.ant-steps-navigation .ant-steps-item:last-child::after{display:none}.ant-steps-navigation .ant-steps-item-container .ant-steps-item-content{max-width:auto}.ant-steps-navigation .ant-steps-item-container .ant-steps-item-title{max-width:100%;padding-right:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-steps-navigation .ant-steps-item:not(.ant-steps-item-active) .ant-steps-item-container[role=button]{cursor:pointer}.ant-steps-navigation .ant-steps-item:not(.ant-steps-item-active) .ant-steps-item-container[role=button]:hover{opacity:.85}.ant-steps-navigation .ant-steps-item:last-child{flex:1}.ant-steps-navigation .ant-steps-item::after{position:absolute;top:50%;left:100%;display:inline-block;width:12px;height:12px;margin-top:-14px;margin-left:-2px;border:1px solid rgba(255,255,255,.2);border-bottom:none;border-left:none;transform:rotate(45deg);content:''}.ant-steps-navigation .ant-steps-item::before{position:absolute;bottom:0;left:50%;display:inline-block;width:0;height:2px;background-color:#177ddc;transition:width .3s,left .3s;transition-timing-function:ease-out;content:''}.ant-steps-navigation .ant-steps-item.ant-steps-item-active::before{left:0;width:100%}.ant-steps-navigation.ant-steps-vertical>.ant-steps-item{margin-right:0!important}.ant-steps-navigation.ant-steps-vertical>.ant-steps-item::before{display:none}.ant-steps-navigation.ant-steps-vertical>.ant-steps-item.ant-steps-item-active::before{top:0;right:0;left:unset;display:block;width:3px;height:calc(100% - 24px)}.ant-steps-navigation.ant-steps-vertical>.ant-steps-item::after{position:relative;top:-2px;left:50%;display:block;width:8px;height:8px;margin-bottom:8px;text-align:center;transform:rotate(135deg)}.ant-steps-navigation.ant-steps-horizontal>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail,.ant-steps-navigation.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{visibility:hidden}.ant-steps.ant-steps-rtl .ant-steps-item-icon{margin-right:0;margin-left:8px}.ant-steps-rtl .ant-steps-item-tail{right:0;left:auto}.ant-steps-rtl .ant-steps-item-title{padding-right:0;padding-left:16px}.ant-steps-rtl .ant-steps-item-title .ant-steps-item-subtitle{float:left;margin-right:8px;margin-left:0}.ant-steps-rtl .ant-steps-item-title::after{right:100%;left:auto}.ant-steps-rtl.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item{padding-right:16px;padding-left:0}.ant-steps-rtl.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:first-child{padding-right:0}.ant-steps-rtl.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:last-child .ant-steps-item-title{padding-left:0}.ant-steps-rtl .ant-steps-item-custom .ant-steps-item-icon>.ant-steps-icon{right:.5px;left:auto}.ant-steps-rtl.ant-steps-navigation.ant-steps-small .ant-steps-item-container{margin-right:-12px;margin-left:0}.ant-steps-rtl.ant-steps-navigation .ant-steps-item-container{margin-right:-16px;margin-left:0;text-align:right}.ant-steps-rtl.ant-steps-navigation .ant-steps-item-container .ant-steps-item-title{padding-left:0}.ant-steps-rtl.ant-steps-navigation .ant-steps-item::after{right:100%;left:auto;margin-right:-2px;margin-left:0;transform:rotate(225deg)}.ant-steps-rtl.ant-steps-small.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item{padding-right:12px;padding-left:0}.ant-steps-rtl.ant-steps-small.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:first-child{padding-right:0}.ant-steps-rtl.ant-steps-small .ant-steps-item-title{padding-right:0;padding-left:12px}.ant-steps-rtl.ant-steps-vertical>.ant-steps-item .ant-steps-item-icon{float:right;margin-right:0;margin-left:16px}.ant-steps-rtl.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{right:16px;left:auto}.ant-steps-rtl.ant-steps-vertical.ant-steps-small .ant-steps-item-container .ant-steps-item-tail{right:12px;left:auto}.ant-steps-rtl.ant-steps-label-vertical .ant-steps-item-title{padding-left:0}.ant-steps-rtl.ant-steps-dot .ant-steps-item-tail,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-tail{margin:0 70px 0 0}.ant-steps-rtl.ant-steps-dot .ant-steps-item-tail::after,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-tail::after{margin-right:12px;margin-left:0}.ant-steps-rtl.ant-steps-dot .ant-steps-item:first-child .ant-steps-icon-dot,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item:first-child .ant-steps-icon-dot{right:2px;left:auto}.ant-steps-rtl.ant-steps-dot .ant-steps-item-icon,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-icon{margin-right:67px;margin-left:0}.ant-steps-rtl.ant-steps-dot .ant-steps-item-icon .ant-steps-icon-dot,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-icon .ant-steps-icon-dot{float:right}.ant-steps-rtl.ant-steps-dot .ant-steps-item-icon .ant-steps-icon-dot::after,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-icon .ant-steps-icon-dot::after{right:-26px;left:auto}.ant-steps-rtl.ant-steps-vertical.ant-steps-dot .ant-steps-item-icon{margin-right:0;margin-left:16px}.ant-steps-rtl.ant-steps-vertical.ant-steps-dot .ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{right:-9px;left:auto}.ant-steps-rtl.ant-steps-vertical.ant-steps-dot .ant-steps-item:first-child .ant-steps-icon-dot{right:0;left:auto}.ant-steps-rtl.ant-steps-vertical.ant-steps-dot .ant-steps-item-process .ant-steps-icon-dot{right:-2px;left:auto}.ant-steps-rtl.ant-steps-with-progress.ant-steps-horizontal.ant-steps-label-horizontal .ant-steps-item:first-child{padding-right:4px;padding-left:0}.ant-steps-rtl.ant-steps-with-progress.ant-steps-horizontal.ant-steps-label-horizontal .ant-steps-item:first-child.ant-steps-item-active{padding-right:4px}.ant-steps-with-progress .ant-steps-item .ant-steps-item-tail{top:4px!important}.ant-steps-with-progress.ant-steps-horizontal .ant-steps-item:first-child{padding-bottom:4px;padding-left:4px}.ant-steps-with-progress .ant-steps-item-icon{position:relative}.ant-steps-with-progress .ant-steps-item-icon .ant-progress{position:absolute;top:-5px;right:-5px;bottom:-5px;left:-5px}.ant-switch{margin:0;padding:0;font-size:14px;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;position:relative;display:inline-block;box-sizing:border-box;min-width:44px;height:22px;line-height:22px;background-image:linear-gradient(to right,rgba(255,255,255,.3),rgba(255,255,255,.3)),linear-gradient(to right,#141414,#141414);border:0;border-radius:100px;cursor:pointer;transition:all .2s;user-select:none}.ant-switch:focus{outline:0;box-shadow:0 0 0 2px rgba(255,255,255,.1)}.ant-switch-checked:focus{box-shadow:0 0 0 2px #111b26}.ant-switch:focus:hover{box-shadow:none}.ant-switch-checked{background:#177ddc}.ant-switch-disabled,.ant-switch-loading{cursor:not-allowed;opacity:.4}.ant-switch-disabled *,.ant-switch-loading *{box-shadow:none;cursor:not-allowed}.ant-switch-inner{display:block;margin:0 7px 0 25px;color:#fff;font-size:12px;transition:margin .2s}.ant-switch-checked .ant-switch-inner{margin:0 25px 0 7px}.ant-switch-handle{position:absolute;top:2px;left:2px;width:18px;height:18px;transition:all .2s ease-in-out}.ant-switch-handle::before{position:absolute;top:0;right:0;bottom:0;left:0;background-color:#fff;border-radius:9px;box-shadow:0 2px 4px 0 rgba(0,35,11,.2);transition:all .2s ease-in-out;content:''}.ant-switch-checked .ant-switch-handle{left:calc(100% - 18px - 2px)}.ant-switch:not(.ant-switch-disabled):active .ant-switch-handle::before{right:-30%;left:0}.ant-switch:not(.ant-switch-disabled):active.ant-switch-checked .ant-switch-handle::before{right:0;left:-30%}.ant-switch-loading-icon.anticon{position:relative;top:2px;color:rgba(0,0,0,.65);vertical-align:top}.ant-switch-checked .ant-switch-loading-icon{color:#177ddc}.ant-switch-small{min-width:28px;height:16px;line-height:16px}.ant-table,.ant-table-filter-dropdown{line-height:1.5715;font-feature-settings:tnum;box-sizing:border-box;font-variant:tabular-nums}.ant-switch-small .ant-switch-inner{margin:0 5px 0 18px;font-size:12px}.ant-switch-small .ant-switch-handle{width:12px;height:12px}.ant-switch-small .ant-switch-loading-icon{top:1.5px;font-size:9px}.ant-table,.ant-table.ant-table-middle,.ant-table.ant-table-small{font-size:14px}.ant-switch-small.ant-switch-checked .ant-switch-inner{margin:0 18px 0 5px}.ant-switch-small.ant-switch-checked .ant-switch-handle{left:calc(100% - 12px - 2px)}.ant-switch-rtl .ant-switch-inner{margin:0 25px 0 7px}.ant-switch-rtl .ant-switch-handle{right:2px;left:auto}.ant-switch-rtl:not(.ant-switch-rtl-disabled):active .ant-switch-handle::before{right:0;left:-30%}.ant-switch-rtl:not(.ant-switch-rtl-disabled):active.ant-switch-checked .ant-switch-handle::before{right:-30%;left:0}.ant-switch-rtl.ant-switch-checked .ant-switch-inner{margin:0 7px 0 25px}.ant-switch-rtl.ant-switch-checked .ant-switch-handle{right:calc(100% - 18px - 2px)}.ant-switch-rtl.ant-switch-small.ant-switch-checked .ant-switch-handle{right:calc(100% - 12px - 2px)}nz-switch{display:inline-block}.ant-table-wrapper::after,.ant-table-wrapper::before{display:table;content:''}.ant-table.ant-table-middle .ant-table-footer,.ant-table.ant-table-middle .ant-table-tbody>tr>td,.ant-table.ant-table-middle .ant-table-thead>tr>th,.ant-table.ant-table-middle .ant-table-title,.ant-table.ant-table-middle tfoot>tr>td,.ant-table.ant-table-middle tfoot>tr>th{padding:12px 8px}.ant-table.ant-table-middle .ant-table-filter-trigger{margin-right:-4px}.ant-table.ant-table-middle .ant-table-expanded-row-fixed{margin:-12px -8px}.ant-table.ant-table-middle .ant-table-tbody .ant-table-wrapper:only-child .ant-table{margin:-12px -8px -12px 25px}.ant-table.ant-table-middle .ant-table-selection-column{padding-inline-start:2px}.ant-table.ant-table-small .ant-table-footer,.ant-table.ant-table-small .ant-table-tbody>tr>td,.ant-table.ant-table-small .ant-table-thead>tr>th,.ant-table.ant-table-small .ant-table-title,.ant-table.ant-table-small tfoot>tr>td,.ant-table.ant-table-small tfoot>tr>th{padding:8px}.ant-table.ant-table-small .ant-table-filter-trigger{margin-right:-4px}.ant-table.ant-table-small .ant-table-expanded-row-fixed{margin:-8px}.ant-table.ant-table-small .ant-table-tbody .ant-table-wrapper:only-child .ant-table{margin:-8px -8px -8px 25px}.ant-table.ant-table-small .ant-table-selection-column{padding-inline-start:2px}.ant-table.ant-table-bordered>.ant-table-title{border:1px solid #303030;border-bottom:0}.ant-table-thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr:not(:last-child)>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr:not(:last-child)>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr:not(:last-child)>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr:not(:last-child)>th{border-bottom:1px solid #303030}.ant-table.ant-table-bordered>.ant-table-container{border-left:1px solid #303030}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr>th{border-right:1px solid #303030}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr>th::before,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr>th::before,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr>th::before,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr>th::before{background-color:transparent!important}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tfoot>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tfoot>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tfoot>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tfoot>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr>.ant-table-cell-fix-right-first::after{border-right:1px solid #303030}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-16px -17px}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>td>.ant-table-expanded-row-fixed::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>td>.ant-table-expanded-row-fixed::after{position:absolute;top:0;right:1px;bottom:0;border-right:1px solid #303030;content:''}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table{border-top:1px solid #303030}.ant-table.ant-table-bordered.ant-table-scroll-horizontal>.ant-table-container>.ant-table-body>table>tbody>tr.ant-table-expanded-row>td,.ant-table.ant-table-bordered.ant-table-scroll-horizontal>.ant-table-container>.ant-table-body>table>tbody>tr.ant-table-placeholder>td{border-right:0}.ant-table.ant-table-bordered.ant-table-middle>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered.ant-table-middle>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-12px -9px}.ant-table.ant-table-bordered.ant-table-small>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered.ant-table-small>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-8px -9px}.ant-table.ant-table-bordered>.ant-table-footer{border:1px solid #303030;border-top:0}.ant-table-cell .ant-table-container:first-child{border-top:0}.ant-table-cell-scrollbar:not([rowspan]){box-shadow:0 1px 0 1px #1d1d1d}.ant-table-wrapper{clear:both;max-width:100%}.ant-table-wrapper::after{clear:both}.ant-table{margin:0;padding:0;list-style:none;position:relative;background:#141414;border-radius:2px}.ant-table table,.ant-table-title{border-radius:2px 2px 0 0}.ant-table table{width:100%;text-align:left;border-collapse:separate;border-spacing:0}.ant-table tfoot>tr>td,.ant-table tfoot>tr>th,.ant-table-tbody>tr>td,.ant-table-thead>tr>th{position:relative;padding:16px;overflow-wrap:break-word}.ant-table-cell-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all}.ant-table-cell-ellipsis.ant-table-cell-fix-left-last,.ant-table-cell-ellipsis.ant-table-cell-fix-right-first{overflow:visible}.ant-table-cell-ellipsis.ant-table-cell-fix-left-last .ant-table-cell-content,.ant-table-cell-ellipsis.ant-table-cell-fix-right-first .ant-table-cell-content{display:block;overflow:hidden;text-overflow:ellipsis}.ant-table-cell-ellipsis .ant-table-column-title{overflow:hidden;text-overflow:ellipsis;word-break:keep-all}.ant-table-title{padding:16px}.ant-table-footer{padding:16px;background:rgba(255,255,255,.04)}.ant-table-thead>tr>th{position:relative;font-weight:500;text-align:left;background:#1d1d1d;transition:background .3s ease}.ant-table-thead>tr>th[colspan]:not([colspan='1']){text-align:center}.ant-table-thead>tr>th:not(:last-child):not(.ant-table-selection-column):not(.ant-table-row-expand-icon-cell):not([colspan])::before{position:absolute;top:50%;right:0;width:1px;height:1.6em;background-color:rgba(255,255,255,.08);transform:translateY(-50%);transition:background-color .3s;content:''}.ant-table-thead>tr:not(:last-child)>th[colspan]{border-bottom:0}.ant-table-tbody>tr>td{border-bottom:1px solid #303030;transition:background .3s}.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td,.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td,.notice-icon .ant-list-item:last-child{border-bottom:0}.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table,.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table{margin:-16px -16px -16px 33px}.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:first-child,.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:last-child,.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:first-child,.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:last-child{border-radius:0}.ant-table-tbody>tr.ant-table-row:hover>td,.ant-table-tbody>tr>td.ant-table-cell-row-hover{background:#262626}.ant-table-tbody>tr.ant-table-row-selected>td{background:#111b26;border-color:rgba(0,0,0,.03)}.ant-table-tbody>tr.ant-table-row-selected:hover>td{background:#0e161f}.ant-table-summary{position:relative;z-index:2;background:#141414}div.ant-table-summary{box-shadow:0 -1px 0 #303030}.ant-table-summary>tr>td,.ant-table-summary>tr>th{border-bottom:1px solid #303030}.ant-table-pagination.ant-pagination{margin:16px 0}.ant-table-pagination{display:flex;flex-wrap:wrap;row-gap:8px}.ant-table-pagination>*{flex:none}.ant-table-pagination-left{justify-content:flex-start}.ant-table-pagination-center{justify-content:center}.ant-table-pagination-right{justify-content:flex-end}.ant-table-thead th.ant-table-column-has-sorters{outline:0;cursor:pointer;transition:all .3s}.ant-table-thead th.ant-table-column-has-sorters:hover{background:#303030}.ant-table-thead th.ant-table-column-has-sorters:hover::before{background-color:transparent!important}.ant-table-thead th.ant-table-column-has-sorters:focus-visible{color:#177ddc}.ant-table-thead th.ant-table-column-has-sorters.ant-table-cell-fix-left:hover,.ant-table-thead th.ant-table-column-has-sorters.ant-table-cell-fix-right:hover{background:#222}.ant-table-thead th.ant-table-column-sort{background:#262626}.ant-table-thead th.ant-table-column-sort::before{background-color:transparent!important}td.ant-table-column-sort{background:rgba(255,255,255,.01)}.ant-table-column-title{position:relative;z-index:1;flex:1}.ant-table-column-sorters{display:flex;flex:auto;align-items:center;justify-content:space-between}.ant-table-column-sorters::after{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;content:''}.ant-table-column-sorter{margin-left:4px;color:#bfbfbf;font-size:0;transition:color .3s}.ant-table-column-sorter-inner{display:inline-flex;flex-direction:column;align-items:center}.ant-table-column-sorter-down,.ant-table-column-sorter-up{font-size:11px}.ant-table-column-sorter-down.active,.ant-table-column-sorter-up.active{color:#177ddc}.ant-table-column-sorter-up+.ant-table-column-sorter-down{margin-top:-.3em}.ant-table-column-sorters:hover .ant-table-column-sorter{color:#a6a6a6}.ant-table-filter-column{display:flex;justify-content:space-between}.ant-table-filter-trigger{position:relative;display:flex;align-items:center;margin:-4px -8px -4px 4px;padding:0 4px;color:#bfbfbf;font-size:12px;border-radius:2px;cursor:pointer;transition:all .3s}.ant-table-filter-trigger:hover{color:rgba(255,255,255,.45);background:#434343}.ant-table-filter-trigger.active{color:#177ddc}.ant-table-filter-dropdown{margin:0;padding:0;color:rgba(255,255,255,.85);font-size:14px;list-style:none;min-width:120px;background-color:#1f1f1f;border-radius:2px;box-shadow:0 3px 6px -4px rgba(0,0,0,.48),0 6px 16px 0 rgba(0,0,0,.32),0 9px 28px 8px rgba(0,0,0,.2)}.ant-table-filter-dropdown .ant-dropdown-menu{max-height:264px;overflow-x:hidden;border:0;box-shadow:none}.ant-table-filter-dropdown .ant-dropdown-menu:empty::after{display:block;padding:8px 0;color:rgba(255,255,255,.3);font-size:12px;text-align:center;content:'Not Found'}.ant-table-filter-dropdown-tree{padding:8px 8px 0}.ant-table-filter-dropdown-tree .ant-tree-treenode .ant-tree-node-content-wrapper:hover{background-color:rgba(255,255,255,.08)}.ant-table-filter-dropdown-tree .ant-tree-treenode-checkbox-checked .ant-tree-node-content-wrapper,.ant-table-filter-dropdown-tree .ant-tree-treenode-checkbox-checked .ant-tree-node-content-wrapper:hover{background-color:#11263c}.ant-table-filter-dropdown-search{padding:8px;border-bottom:1px #303030 solid}.ant-table-filter-dropdown-search-input input{min-width:140px}.ant-table-filter-dropdown-search-input .anticon{color:rgba(255,255,255,.3)}.ant-table-filter-dropdown-checkall{width:100%;margin-bottom:4px;margin-left:4px}.ant-table-filter-dropdown-submenu>ul{max-height:calc(100vh - 130px);overflow-x:hidden;overflow-y:auto}.ant-table-custom-column .ant-table-tbody .ant-table-row td,.ant-table-custom-column .ant-table-thead .ant-table-row th,.ant-table-filter-dropdown-btns{overflow:hidden}.ant-table-filter-dropdown .ant-checkbox-wrapper+span,.ant-table-filter-dropdown-submenu .ant-checkbox-wrapper+span{padding-left:8px}.ant-table-filter-dropdown-btns{display:flex;justify-content:space-between;padding:7px 8px;background-color:#1f1f1f;border-top:1px solid #303030}.ant-table-selection-col{width:32px}.ant-table-bordered .ant-table-selection-col{width:50px}table tr td.ant-table-selection-column,table tr th.ant-table-selection-column{padding-right:8px;padding-left:8px;text-align:center}table tr td.ant-table-selection-column .ant-radio-wrapper,table tr th.ant-table-selection-column .ant-radio-wrapper{margin-right:0}table tr th.ant-table-selection-column.ant-table-cell-fix-left{z-index:3}table tr th.ant-table-selection-column::after{background-color:transparent!important}.ant-table-selection{position:relative;display:inline-flex;flex-direction:column}.ant-table-selection-extra{position:absolute;top:0;z-index:1;cursor:pointer;transition:all .3s;margin-inline-start:100%;padding-inline-start:4px}.ant-table-selection-extra .anticon{color:#bfbfbf;font-size:10px}.ant-tabs-dropdown,.ant-tabs-dropdown-menu-item{font-size:14px;color:rgba(255,255,255,.85);margin:0}.ant-table-selection-extra .anticon:hover{color:#a6a6a6}.ant-table-expand-icon-col{width:48px}.ant-table-row-expand-icon-cell{text-align:center}.ant-table-row-indent{float:left;height:1px}.ant-table-row-expand-icon{text-decoration:none;cursor:pointer;position:relative;display:inline-flex;float:left;box-sizing:border-box;width:17px;height:17px;padding:0;color:inherit;line-height:17px;background:0 0;border:1px solid #303030;border-radius:2px;outline:0;transform:scale(.94117647);transition:all .3s;user-select:none}.ant-tabs,.ant-tabs-dropdown,.ant-timeline{line-height:1.5715;font-feature-settings:tnum}.ant-table-row-expand-icon:focus,.ant-table-row-expand-icon:hover{color:#165996}.ant-table-row-expand-icon:active{color:#388ed3}.ant-table-row-expand-icon:active,.ant-table-row-expand-icon:focus,.ant-table-row-expand-icon:hover{border-color:currentcolor}.ant-table-row-expand-icon::after,.ant-table-row-expand-icon::before{position:absolute;background:currentcolor;transition:transform .3s ease-out;content:''}.ant-table-row-expand-icon::before{top:7px;right:3px;left:3px;height:1px}.ant-table-row-expand-icon::after{top:3px;bottom:3px;left:7px;width:1px;transform:rotate(90deg)}.ant-table-row-expand-icon-collapsed::before{transform:rotate(-180deg)}.ant-table-row-expand-icon-collapsed::after{transform:rotate(0)}.ant-table-row-expand-icon-spaced{background:0 0;border:0;visibility:hidden}.ant-table-row-expand-icon-spaced::after,.ant-table-row-expand-icon-spaced::before{display:none;content:none}.ant-table-row-indent+.ant-table-row-expand-icon{margin-top:2.5px;margin-right:8px}tr.ant-table-expanded-row:hover>td,tr.ant-table-expanded-row>td{background:#1d1d1d}tr.ant-table-expanded-row .ant-descriptions-view{display:flex}tr.ant-table-expanded-row .ant-descriptions-view table{flex:auto;width:auto}.ant-table .ant-table-expanded-row-fixed{position:relative;margin:-16px;padding:16px}.ant-table-tbody>tr.ant-table-placeholder{text-align:center}.ant-table-empty .ant-table-tbody>tr.ant-table-placeholder{color:rgba(255,255,255,.3)}.ant-table-tbody>tr.ant-table-placeholder:hover>td{background:#141414}.ant-table-cell-fix-left,.ant-table-cell-fix-right{position:sticky!important;z-index:2;background:#141414}.ant-table .ant-table-container::after,.ant-table .ant-table-container::before,.ant-table-cell-fix-left-first::after,.ant-table-cell-fix-left-last::after,.ant-table-cell-fix-right-first::after,.ant-table-cell-fix-right-last::after{position:absolute;width:30px;transition:box-shadow .3s;top:0;pointer-events:none;content:''}.ant-table-cell-fix-left-first::after,.ant-table-cell-fix-left-last::after{right:0;bottom:-1px;transform:translateX(100%)}.ant-table-cell-fix-right-first::after,.ant-table-cell-fix-right-last::after{bottom:-1px;left:0;transform:translateX(-100%)}.ant-table .ant-table-container::after,.ant-table .ant-table-container::before{bottom:0;z-index:1}.ant-table-ping-left:not(.ant-table-has-fix-left) .ant-table-container,.ant-table-ping-right:not(.ant-table-has-fix-right) .ant-table-container{position:relative}.ant-table .ant-table-container::before{left:0}.ant-table .ant-table-container::after{right:0}.ant-table-ping-left .ant-table-cell-fix-left-first::after,.ant-table-ping-left .ant-table-cell-fix-left-last::after,.ant-table-ping-left:not(.ant-table-has-fix-left) .ant-table-container::before{box-shadow:inset 10px 0 8px -8px rgba(0,0,0,.45)}.ant-table-ping-left .ant-table-cell-fix-left-last::before{background-color:transparent!important}.ant-table-ping-right .ant-table-cell-fix-right-first::after,.ant-table-ping-right .ant-table-cell-fix-right-last::after,.ant-table-ping-right:not(.ant-table-has-fix-right) .ant-table-container::after{box-shadow:inset -10px 0 8px -8px rgba(0,0,0,.45)}.ant-table-sticky-holder{position:sticky;z-index:calc(2 + 1);background:#141414}.ant-table-sticky-scroll{position:sticky;bottom:0;z-index:calc(2 + 1);display:flex;align-items:center;background:#fcfcfc;border-top:1px solid #303030;opacity:.6}.ant-table-sticky-scroll:hover{transform-origin:center bottom}.ant-table-wrapper-rtl .ant-table-row-expand-icon::after,.ant-tree-switcher_close .ant-tree-switcher-icon svg{transform:rotate(-90deg)}.ant-table-sticky-scroll-bar{height:8px;background-color:rgba(0,0,0,.35);border-radius:4px}.ant-table-sticky-scroll-bar-active,.ant-table-sticky-scroll-bar:hover{background-color:rgba(0,0,0,.8)}.ant-table-custom-column col{width:auto!important;min-width:auto!important;display:none}.ant-table-custom-column .ant-table-thead .ant-table-row{width:100%;display:flex;justify-content:space-between}.ant-table-custom-column .ant-table-tbody .ant-table-row{width:100%;display:flex;justify-content:space-between}.ant-table-custom-column .ant-table-tbody .ant-table-row .nz-disable-td{width:100%}.ant-table-custom-column .ant-table-fixed tr .ant-table-cell-fix-left-last,.ant-table-custom-column .ant-table-fixed tr .ant-table-cell-fix-right-first{overflow:visible}.ant-table-custom-column .ant-table-fixed .ant-table-row{width:100%}@media all and (-ms-high-contrast:none){.ant-table-ping-left .ant-table-cell-fix-left-last::after,.ant-table-ping-right .ant-table-cell-fix-right-first::after{box-shadow:none!important}}.ant-table-title+.ant-table-container{border-top-left-radius:0;border-top-right-radius:0}.ant-table-title+.ant-table-container table>thead>tr:first-child th:first-child,.ant-table-title+.ant-table-container table>thead>tr:first-child th:last-child{border-radius:0}.ant-table-container,.ant-table-container table>thead>tr:first-child th:first-child{border-top-left-radius:2px}.ant-table-container,.ant-table-container table>thead>tr:first-child th:last-child{border-top-right-radius:2px}.ant-table-footer{border-radius:0 0 2px 2px}.ant-table-wrapper-rtl .ant-table table{text-align:right}.ant-table-wrapper-rtl .ant-table-thead>tr>th[colspan]:not([colspan='1']){text-align:center}.ant-table-wrapper-rtl .ant-table-thead>tr>th:not(:last-child):not(.ant-table-selection-column):not(.ant-table-row-expand-icon-cell):not([colspan])::before{right:auto;left:0}.ant-table-wrapper-rtl .ant-table-thead>tr>th{text-align:right}.ant-table-wrapper-rtl .ant-table thead>tr>th.ant-table-selection-column,.ant-table-wrapper-rtl .ant-table-selection{text-align:center}.ant-table-tbody>tr .ant-table-wrapper:only-child .ant-table.ant-table-rtl{margin:-16px 33px -16px -16px}.ant-table-wrapper.ant-table-wrapper-rtl .ant-table-pagination-left{justify-content:flex-end}.ant-table-wrapper.ant-table-wrapper-rtl .ant-table-pagination-right{justify-content:flex-start}.ant-table-wrapper-rtl .ant-table-column-sorter{margin-right:4px;margin-left:0}.ant-table-wrapper-rtl .ant-table-filter-column-title{padding:16px 16px 16px 2.3em}.ant-table-rtl .ant-table-thead tr th.ant-table-column-has-sorters .ant-table-filter-column-title{padding:0 0 0 2.3em}.ant-table-wrapper-rtl .ant-table-filter-trigger{margin:-4px 4px -4px -8px}.ant-dropdown-menu-submenu-rtl.ant-table-filter-dropdown .ant-checkbox-wrapper+span,.ant-dropdown-menu-submenu-rtl.ant-table-filter-dropdown-submenu .ant-checkbox-wrapper+span,.ant-dropdown-rtl .ant-table-filter-dropdown .ant-checkbox-wrapper+span,.ant-dropdown-rtl .ant-table-filter-dropdown-submenu .ant-checkbox-wrapper+span{padding-right:8px;padding-left:0}.ant-table-wrapper-rtl .ant-table-row-expand-icon,.ant-table-wrapper-rtl .ant-table-row-indent{float:right}.ant-table-wrapper-rtl .ant-table-row-indent+.ant-table-row-expand-icon{margin-right:0;margin-left:8px}.ant-table-wrapper-rtl .ant-table-row-expand-icon-collapsed::before{transform:rotate(180deg)}.ant-table-wrapper-rtl .ant-table-row-expand-icon-collapsed::after{transform:rotate(0)}nz-table,nz-table-inner-default,nz-table-inner-scroll,nz-table-selection,nz-table-title-footer{display:block}nz-filter-trigger{display:inline-flex}.nz-table-out-bordered>.ant-table-container,.nz-table-out-bordered>.ant-table-title{border:1px solid #303030;border-bottom:0}.nz-table-out-bordered>.ant-table-footer{border:1px solid #303030;border-top:0}cdk-virtual-scroll-viewport.ant-table-body{overflow-y:scroll}.nz-table-hide-scrollbar{scrollbar-color:#1d1d1d #1d1d1d}.nz-table-hide-scrollbar::-webkit-scrollbar{background-color:#1d1d1d}.ant-table.ant-table-small .nz-table-hide-scrollbar{scrollbar-color:#1d1d1d #1d1d1d}.ant-table.ant-table-small .nz-table-hide-scrollbar::-webkit-scrollbar{background-color:transparent}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>thead>tr>th{border-right:1px solid #303030}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>thead>tr:not(:last-child)>th{border-bottom:1px solid #303030}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tfoot>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>thead>tr>.ant-table-cell-fix-right-first::after{border-right:1px solid #303030}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-16px -17px}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td>.ant-table-expanded-row-fixed::after{position:absolute;top:0;right:1px;bottom:0;border-right:1px solid #303030;content:''}.ant-table.ant-table-bordered.ant-table-scroll-horizontal>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr.ant-table-expanded-row>td,.ant-table.ant-table-bordered.ant-table-scroll-horizontal>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr.ant-table-placeholder>td{border-right:0}.ant-table.ant-table-bordered.ant-table-middle>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-12px -9px}.ant-table.ant-table-bordered.ant-table-small>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-8px -9px}.ant-tabs-small>.ant-tabs-nav .ant-tabs-tab{padding:8px 0;font-size:14px}.ant-tabs-large>.ant-tabs-nav .ant-tabs-tab{padding:16px 0;font-size:16px}.ant-tabs-card.ant-tabs-small>.ant-tabs-nav .ant-tabs-tab{padding:6px 16px}.ant-tabs-card.ant-tabs-large>.ant-tabs-nav .ant-tabs-tab{padding:7px 16px 6px}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab{margin:0 0 0 32px}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab:last-of-type{margin-left:0}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab .anticon{margin-right:0;margin-left:12px}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab .ant-tabs-tab-remove{margin-right:8px;margin-left:-4px}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab .ant-tabs-tab-remove .anticon{margin:0}.ant-tabs-rtl.ant-tabs-left>.ant-tabs-content-holder,.ant-tabs-rtl.ant-tabs-right>.ant-tabs-nav{order:0}.ant-tabs-rtl.ant-tabs-right>.ant-tabs-content-holder{order:1}.ant-tabs-rtl.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs-rtl.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-rtl.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs-rtl.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-rtl.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs-rtl.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-rtl.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs-rtl.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab{margin-right:2px;margin-left:0}.ant-tabs-dropdown-rtl .ant-tabs-dropdown-menu-item{text-align:right}.ant-tabs-bottom,.ant-tabs-top{flex-direction:column}.ant-tabs-bottom>.ant-tabs-nav,.ant-tabs-bottom>div>.ant-tabs-nav,.ant-tabs-top>.ant-tabs-nav,.ant-tabs-top>div>.ant-tabs-nav{margin:0 0 16px}.ant-tabs-bottom>.ant-tabs-nav::before,.ant-tabs-bottom>div>.ant-tabs-nav::before,.ant-tabs-top>.ant-tabs-nav::before,.ant-tabs-top>div>.ant-tabs-nav::before{position:absolute;right:0;left:0;border-bottom:1px solid #303030;content:''}.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-top>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-ink-bar{height:2px}.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-top>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-ink-bar-animated{transition:width .3s,left .3s,right .3s}.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap::before{top:0;bottom:0;width:30px}.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap::before{left:0;box-shadow:inset 10px 0 8px -8px rgba(0,0,0,.08)}.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap::after{right:0;box-shadow:inset -10px 0 8px -8px rgba(0,0,0,.08)}.ant-tabs-top>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-top>.ant-tabs-nav::before,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-top>div>.ant-tabs-nav::before{bottom:0}.ant-tabs-bottom>.ant-tabs-nav,.ant-tabs-bottom>div>.ant-tabs-nav{order:1;margin-top:16px;margin-bottom:0}.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-bottom>.ant-tabs-nav::before,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-bottom>div>.ant-tabs-nav::before{top:0}.ant-tabs-bottom>.ant-tabs-content-holder,.ant-tabs-bottom>div>.ant-tabs-content-holder{order:0}.ant-tabs-left>.ant-tabs-nav,.ant-tabs-left>div>.ant-tabs-nav,.ant-tabs-right>.ant-tabs-nav,.ant-tabs-right>div>.ant-tabs-nav{flex-direction:column;min-width:50px}.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab{padding:8px 24px;text-align:center}.ant-tabs-right>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane,.ant-tabs-right>div>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane,.error-collect{padding-right:24px}.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab{margin:16px 0 0}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap{flex-direction:column}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap::before{right:0;left:0;height:30px}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap::before{top:0;box-shadow:inset 0 10px 8px -8px rgba(0,0,0,.08)}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap::after{bottom:0;box-shadow:inset 0 -10px 8px -8px rgba(0,0,0,.08)}.ant-tabs-dropdown-menu,.ant-tooltip-inner,.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu,.theme-btn .ant-avatar{box-shadow:0 3px 6px -4px rgba(0,0,0,.48),0 6px 16px 0 rgba(0,0,0,.32),0 9px 28px 8px rgba(0,0,0,.2)}.ant-tabs-left>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-right>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-ink-bar{width:2px}.ant-tabs-left>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-right>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-ink-bar-animated{transition:height .3s,top .3s}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-operations,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-operations,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-operations,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-operations{flex:1 0 auto;flex-direction:column}.ant-tabs-left>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-ink-bar{right:0}.ant-tabs-left>.ant-tabs-content-holder,.ant-tabs-left>div>.ant-tabs-content-holder{margin-left:-1px;border-left:1px solid #303030}.ant-tabs-left>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane,.ant-tabs-left>div>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane{padding-left:24px}.ant-tabs-right>.ant-tabs-nav,.ant-tabs-right>div>.ant-tabs-nav{order:1}.ant-tabs-right>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-ink-bar{left:0}.ant-tabs-right>.ant-tabs-content-holder,.ant-tabs-right>div>.ant-tabs-content-holder{order:0;margin-right:-1px;border-right:1px solid #303030}.ant-tabs-dropdown{box-sizing:border-box;padding:0;font-variant:tabular-nums;list-style:none;position:absolute;top:-9999px;left:-9999px;z-index:1050;display:block}.ant-tabs-dropdown-hidden{display:none}.ant-tabs-dropdown-menu{max-height:200px;margin:0;padding:4px 0;overflow-x:hidden;overflow-y:auto;text-align:left;list-style-type:none;background-color:#1f1f1f;background-clip:padding-box;border-radius:2px;outline:0}.ant-tabs-dropdown-menu-item{display:flex;align-items:center;min-width:120px;padding:5px 12px;overflow:hidden;font-weight:400;line-height:22px;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:all .3s}.ant-tabs-dropdown-menu-item>span{flex:1;white-space:nowrap}.ant-tabs-dropdown-menu-item-remove{flex:none;margin-left:12px;color:rgba(255,255,255,.45);font-size:12px;background:0 0;border:0;cursor:pointer}.ant-tabs-dropdown-menu-item-remove:hover{color:#165996}.ant-tabs-dropdown-menu-item:hover{background:rgba(255,255,255,.08)}.ant-tabs-dropdown-menu-item-disabled,.ant-tabs-dropdown-menu-item-disabled:hover{color:rgba(255,255,255,.3);background:0 0;cursor:not-allowed}.ant-tabs-card>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card>div>.ant-tabs-nav .ant-tabs-tab{margin:0;padding:8px 16px;background:rgba(255,255,255,.04);border:1px solid #303030;transition:all .3s cubic-bezier(.645,.045,.355,1)}.ant-tabs-card>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card>div>.ant-tabs-nav .ant-tabs-tab-active{color:#177ddc;background:#141414}.ant-tabs-card>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-card>div>.ant-tabs-nav .ant-tabs-ink-bar{visibility:hidden}.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab{margin-left:2px}.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-tab{border-radius:2px 2px 0 0}.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-tab-active{border-bottom-color:#141414}.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-tab{border-radius:0 0 2px 2px}.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-tab-active{border-top-color:#141414}.ant-tabs-card.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab{margin-top:2px}.ant-tabs-card.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab{border-radius:2px 0 0 2px}.ant-tabs-card.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab-active{border-right-color:#141414}.ant-tabs-card.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab{border-radius:0 2px 2px 0}.ant-tabs-card.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab-active{border-left-color:#141414}.ant-tabs{box-sizing:border-box;margin:0;padding:0;color:rgba(255,255,255,.85);font-size:14px;font-variant:tabular-nums;list-style:none;display:flex}.ant-tabs>.ant-tabs-nav,.ant-tabs>div>.ant-tabs-nav{position:relative;display:flex;flex:none;align-items:center}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-wrap,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-wrap{position:relative;display:inline-block;display:flex;flex:auto;align-self:stretch;overflow:hidden;white-space:nowrap;transform:translate(0)}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-wrap::before{position:absolute;z-index:1;opacity:0;transition:opacity .3s;content:'';pointer-events:none}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-list{position:relative;display:flex;transition:transform .3s}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-operations,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-operations{display:flex;align-self:stretch}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-operations-hidden,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-operations-hidden{position:absolute;visibility:hidden;pointer-events:none}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-more,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-more{position:relative;padding:8px 16px;background:0 0;border:0}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-more::after,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-more::after{position:absolute;right:0;bottom:0;left:0;height:5px;transform:translateY(100%);content:''}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add{min-width:40px;margin-left:2px;padding:0 8px;background:rgba(255,255,255,.04);border:1px solid #303030;border-radius:2px 2px 0 0;outline:0;cursor:pointer;transition:all .3s cubic-bezier(.645,.045,.355,1)}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add:hover,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add:hover{color:#165996}.ant-tabs-tab-btn:active,.ant-tabs-tab-btn:focus,.ant-tabs-tab-remove:active,.ant-tabs-tab-remove:focus,.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add:active,.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add:focus,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add:active,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add:focus{color:#388ed3}.ant-tabs-extra-content{flex:none}.ant-tabs-centered>.ant-tabs-nav .ant-tabs-nav-wrap:not([class*=ant-tabs-nav-wrap-ping]),.ant-tabs-centered>div>.ant-tabs-nav .ant-tabs-nav-wrap:not([class*=ant-tabs-nav-wrap-ping]){justify-content:center}.ant-tabs-ink-bar{position:absolute;background:#177ddc;pointer-events:none}.ant-tabs-tab,.ant-tabs-tab-remove{background:0 0;cursor:pointer;outline:0}.ant-tabs-tab{position:relative;display:inline-flex;align-items:center;padding:12px 0;font-size:14px;border:0}.ant-tabs-tab-btn{outline:0;transition:all .3s}.ant-tabs-tab-remove{flex:none;margin-right:-4px;margin-left:8px;color:rgba(255,255,255,.45);font-size:12px;border:none;transition:all .3s}.ant-tabs-tab-remove:hover{color:rgba(255,255,255,.85)}.ant-tabs-tab:hover{color:#165996}.ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn{color:#177ddc;text-shadow:0 0 .25px currentcolor}.ant-tabs-tab.ant-tabs-tab-disabled{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-tabs-tab.ant-tabs-tab-disabled .ant-tabs-tab-btn:active,.ant-tabs-tab.ant-tabs-tab-disabled .ant-tabs-tab-btn:focus,.ant-tabs-tab.ant-tabs-tab-disabled .ant-tabs-tab-remove:active,.ant-tabs-tab.ant-tabs-tab-disabled .ant-tabs-tab-remove:focus{color:rgba(255,255,255,.3)}.ant-tabs-tab .ant-tabs-tab-remove .anticon{margin:0}.ant-tabs-tab .anticon{margin-right:12px}.ant-tabs-tab+.ant-tabs-tab{margin:0 0 0 32px}.ant-tabs-content{display:flex;width:100%}.ant-tabs-content-holder{flex:auto;min-width:0;min-height:0}.ant-tabs-content-animated{transition:margin .3s}.ant-tabs-tabpane{flex:none;width:100%;outline:0}.ant-tabs-dropdown-menu-item a[nz-tab-link]{position:relative}.ant-tabs-tab a[nz-tab-link]::before{position:absolute;top:0;left:0;right:0;bottom:0;background-color:transparent;content:''}.ant-tabs-tab a[nz-tab-link]~*{position:relative}nz-tab-nav-operation,nz-tabs-nav,nz-tabset{display:block;overflow:hidden}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu{max-height:200px;margin:0;padding:4px 0;overflow-x:hidden;overflow-y:auto;text-align:left;list-style-type:none;background-color:#1f1f1f;background-clip:padding-box;border-radius:2px;outline:0}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item{min-width:120px;margin:0;padding:5px 12px;overflow:hidden;color:rgba(255,255,255,.85);font-weight:400;font-size:14px;line-height:22px;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:all .3s}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item:hover{background:rgba(255,255,255,.08)}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item-disabled,.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item-disabled:hover{color:rgba(255,255,255,.3);background:0 0;cursor:not-allowed}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item-disabled a,.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item-disabled:hover a{pointer-events:none;color:rgba(255,255,255,.3)}.ant-tabs-rtl .ant-tabs-rtl-tab-next{right:auto;left:2px}.ant-tabs-tab-disabled a{pointer-events:none;color:rgba(255,255,255,.3)}.ant-tag{box-sizing:border-box;margin:0 8px 0 0;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;display:inline-block;height:auto;padding:0 7px;font-size:12px;line-height:20px;white-space:nowrap;background:rgba(255,255,255,.04);border:1px solid #434343;border-radius:2px;opacity:1;transition:all .3s}.ant-tag-checkable,.ant-tag-has-color{border-color:transparent}.ant-tag,.ant-tag a,.ant-tag a:hover{color:rgba(255,255,255,.85)}.ant-tag>a:first-child:last-child{display:inline-block;margin:0 -8px;padding:0 8px}.ant-tag-hidden,.ant-timeline-item-last>.ant-timeline-item-tail,.ant-timeline-item-pending .ant-timeline-item-tail{display:none}.ant-tag-close-icon{margin-left:3px;color:rgba(255,255,255,.45);font-size:10px;cursor:pointer;transition:all .3s}.ant-tag-close-icon:hover{color:rgba(255,255,255,.85)}.ant-tag-has-color,.ant-tag-has-color .anticon-close,.ant-tag-has-color .anticon-close:hover,.ant-tag-has-color a,.ant-tag-has-color a:hover{color:#fff}.ant-tag-checkable{background-color:transparent;cursor:pointer}.ant-tag-checkable:not(.ant-tag-checkable-checked):hover{color:#177ddc}.ant-tag-checkable-checked,.ant-tag-checkable:active{color:#fff}.ant-tag-checkable-checked{background-color:#177ddc}.ant-tag-checkable:active{background-color:#388ed3}.ant-tag-pink{color:#e0529c;background:#291321;border-color:#551c3b}.ant-tag-pink-inverse{color:#fff;background:#cb2b83;border-color:#cb2b83}.ant-tag-magenta{color:#e0529c;background:#291321;border-color:#551c3b}.ant-tag-magenta-inverse,.ant-tooltip-magenta .ant-tooltip-arrow-content::before,.ant-tooltip-pink .ant-tooltip-arrow-content::before{background:#cb2b83}.ant-tag-magenta-inverse{color:#fff;border-color:#cb2b83}.ant-tag-red{color:#e84749;background:#2a1215;border-color:#58181c}.ant-tag-red-inverse{color:#fff;background:#d32029;border-color:#d32029}.ant-tag-volcano{color:#e87040;background:#2b1611;border-color:#592716}.ant-tag-volcano-inverse{color:#fff;background:#d84a1b;border-color:#d84a1b}.ant-tag-orange{color:#e89a3c;background:#2b1d11;border-color:#593815}.ant-tag-orange-inverse{color:#fff;background:#d87a16;border-color:#d87a16}.ant-tag-yellow{color:#e8d639;background:#2b2611;border-color:#595014}.ant-tag-yellow-inverse{color:#fff;background:#d8bd14;border-color:#d8bd14}.ant-tag-gold{color:#e8b339;background:#2b2111;border-color:#594214}.ant-tag-gold-inverse{color:#fff;background:#d89614;border-color:#d89614}.ant-tag-cyan{color:#33bcb7;background:#112123;border-color:#144848}.ant-tag-cyan-inverse{color:#fff;background:#13a8a8;border-color:#13a8a8}.ant-tag-lime{color:#a9d134;background:#1f2611;border-color:#3e4f13}.ant-tag-lime-inverse{color:#fff;background:#8bbb11;border-color:#8bbb11}.ant-tag-green{color:#6abe39;background:#162312;border-color:#274916}.ant-tag-green-inverse{color:#fff;background:#49aa19;border-color:#49aa19}.ant-tag-blue{color:#3c9ae8;background:#111d2c;border-color:#15395b}.ant-tag-blue-inverse{color:#fff;background:#177ddc;border-color:#177ddc}.ant-tag-geekblue{color:#5273e0;background:#131629;border-color:#1c2755}.ant-tag-geekblue-inverse{color:#fff;background:#2b4acb;border-color:#2b4acb}.ant-tag-purple{color:#854eca;background:#1a1325;border-color:#301c4d}.ant-tag-purple-inverse{color:#fff;background:#642ab5;border-color:#642ab5}.ant-tag-success{color:#49aa19;background:#162312;border-color:#274916}.ant-tag-processing{color:#177ddc;background:#111b26;border-color:#153450}.ant-tag-error{color:#a61d24;background:#2a1215;border-color:#58181c}.ant-tag-warning{color:#d89614;background:#2b1d11;border-color:#593815}.ant-timeline,.ant-tooltip{color:rgba(255,255,255,.85);padding:0;box-sizing:border-box;font-variant:tabular-nums}.ant-tag>.anticon+span,.ant-tag>span+.anticon{margin-left:7px}.ant-tag.ant-tag-rtl{margin-right:0;margin-left:8px;text-align:right}.ant-tag-rtl .ant-tag-close-icon{margin-right:3px;margin-left:0}.ant-tag-rtl.ant-tag>.anticon+span,.ant-tag-rtl.ant-tag>span+.anticon{margin-right:7px;margin-left:0}.ant-timeline,.ant-timeline-item{margin:0;font-size:14px;list-style:none}.ant-timeline-item{position:relative;padding-bottom:20px}.ant-timeline-item-tail{position:absolute;top:10px;left:4px;height:calc(100% - 10px);border-left:2px solid #303030}.ant-timeline-item-pending .ant-timeline-item-head{font-size:12px;background-color:transparent}.ant-timeline-item-head{position:absolute;width:10px;height:10px;background-color:#141414;border:2px solid transparent;border-radius:100px}.ant-timeline-item-head-blue{color:#177ddc;border-color:#177ddc}.ant-timeline-item-head-red{color:#a61d24;border-color:#a61d24}.ant-timeline-item-head-green{color:#49aa19;border-color:#49aa19}.ant-timeline-item-head-gray{color:rgba(255,255,255,.3);border-color:rgba(255,255,255,.3)}.ant-timeline-item-head-custom{position:absolute;top:5.5px;left:5px;width:auto;height:auto;margin-top:0;padding:3px 1px;line-height:1;text-align:center;border:0;border-radius:0;transform:translate(-50%,-50%)}.ant-tooltip,.ant-transfer{font-size:14px;line-height:1.5715;font-feature-settings:tnum;list-style:none}.ant-timeline-item-content{position:relative;top:-7px;margin:0 0 0 26px;word-break:break-word}.ant-timeline-item-last>.ant-timeline-item-content{min-height:48px}.ant-timeline.ant-timeline-alternate .ant-timeline-item-head,.ant-timeline.ant-timeline-alternate .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-alternate .ant-timeline-item-tail,.ant-timeline.ant-timeline-label .ant-timeline-item-head,.ant-timeline.ant-timeline-label .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-label .ant-timeline-item-tail,.ant-timeline.ant-timeline-right .ant-timeline-item-head,.ant-timeline.ant-timeline-right .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-right .ant-timeline-item-tail{left:50%}.ant-timeline.ant-timeline-alternate .ant-timeline-item-head,.ant-timeline.ant-timeline-label .ant-timeline-item-head,.ant-timeline.ant-timeline-right .ant-timeline-item-head{margin-left:-4px}.ant-timeline.ant-timeline-alternate .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-label .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-right .ant-timeline-item-head-custom{margin-left:1px}.ant-timeline.ant-timeline-alternate .ant-timeline-item-left .ant-timeline-item-content,.ant-timeline.ant-timeline-label .ant-timeline-item-left .ant-timeline-item-content,.ant-timeline.ant-timeline-right .ant-timeline-item-left .ant-timeline-item-content{left:calc(50% - 4px);width:calc(50% - 14px);text-align:left}.ant-timeline.ant-timeline-alternate .ant-timeline-item-right .ant-timeline-item-content,.ant-timeline.ant-timeline-label .ant-timeline-item-right .ant-timeline-item-content,.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-content{width:calc(50% - 12px);margin:0;text-align:right}.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-head,.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-tail{left:calc(100% - 4px - 2px)}.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-content{width:calc(100% - 18px)}.ant-timeline.ant-timeline-pending .ant-timeline-item-last .ant-timeline-item-tail{display:block;height:calc(100% - 14px);border-left:2px dotted #303030}.ant-timeline.ant-timeline-reverse .ant-timeline-item-last .ant-timeline-item-tail{display:none}.ant-timeline.ant-timeline-reverse .ant-timeline-item-pending .ant-timeline-item-tail{top:15px;display:block;height:calc(100% - 15px);border-left:2px dotted #303030}.ant-timeline.ant-timeline-reverse .ant-timeline-item-pending .ant-timeline-item-content{min-height:48px}.ant-timeline.ant-timeline-label .ant-timeline-item-label{position:absolute;top:-7px;width:calc(50% - 12px);text-align:right}.ant-timeline.ant-timeline-label .ant-timeline-item-right .ant-timeline-item-label{left:calc(50% + 14px);width:calc(50% - 14px);text-align:left}.ant-timeline-rtl .ant-timeline-item-tail{right:4px;left:auto;border-right:2px solid #303030;border-left:none}.ant-timeline-rtl .ant-timeline-item-head-custom{right:5px;left:auto;transform:translate(50%,-50%)}.ant-timeline-rtl .ant-timeline-item-content{margin:0 18px 0 0}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-tail,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-tail,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-tail{right:50%;left:auto}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-head{margin-right:-4px;margin-left:0}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-head-custom{margin-right:1px;margin-left:0}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-left .ant-timeline-item-content,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-left .ant-timeline-item-content,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-left .ant-timeline-item-content{right:calc(50% - 4px);left:auto;text-align:right}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-right .ant-timeline-item-content,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-right .ant-timeline-item-content,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-content{text-align:left}.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-tail{right:0;left:auto}.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-content{width:100%;margin-right:18px;text-align:right}.ant-timeline-rtl.ant-timeline.ant-timeline-pending .ant-timeline-item-last .ant-timeline-item-tail,.ant-timeline-rtl.ant-timeline.ant-timeline-reverse .ant-timeline-item-pending .ant-timeline-item-tail{border-right:2px dotted #303030;border-left:none}.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-label{text-align:left}.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-right .ant-timeline-item-label{right:calc(50% + 14px);text-align:right}.ant-tooltip{margin:0;z-index:1070;display:block;width:max-content;width:intrinsic;max-width:250px}.ant-tooltip-content{position:relative}.ant-tooltip-hidden{display:none}.ant-tooltip-arrow,.ant-tooltip-arrow-content{display:block;position:absolute;pointer-events:none}.ant-tooltip-placement-top,.ant-tooltip-placement-topLeft,.ant-tooltip-placement-topRight{padding-bottom:14.31px}.ant-tooltip-placement-right,.ant-tooltip-placement-rightBottom,.ant-tooltip-placement-rightTop{padding-left:14.31px}.ant-tooltip-placement-bottom,.ant-tooltip-placement-bottomLeft,.ant-tooltip-placement-bottomRight{padding-top:14.31px}.ant-tooltip-placement-left,.ant-tooltip-placement-leftBottom,.ant-tooltip-placement-leftTop{padding-right:14.31px}.ant-tooltip-inner{min-width:30px;min-height:32px;padding:6px 8px;color:#fff;text-align:left;text-decoration:none;word-wrap:break-word;border-radius:2px}.ant-tooltip-arrow{z-index:2;width:22px;height:22px;overflow:hidden;background:0 0}.ant-tooltip-arrow-content{--antd-arrow-background-color:linear-gradient(to right bottom, rgba(67, 67, 67, 0.9), #434343);top:0;right:0;bottom:0;left:0;width:11.31px;height:11.31px;margin:auto;background-color:transparent;content:'';border-radius:0 0 2px}.ant-tooltip-arrow-content::before{position:absolute;top:-11.31px;left:-11.31px;width:33.94px;height:33.94px;background:var(--antd-arrow-background-color);background-repeat:no-repeat;background-position:-10px -10px;content:'';clip-path:path('M 9.849242404917499 24.091883092036785 A 5 5 0 0 1 13.384776310850237 22.627416997969522 L 20.627416997969522 22.627416997969522 A 2 2 0 0 0 22.627416997969522 20.627416997969522 L 22.627416997969522 13.384776310850237 A 5 5 0 0 1 24.091883092036785 9.849242404917499 L 23.091883092036785 9.849242404917499 L 9.849242404917499 23.091883092036785 Z')}.ant-tooltip-placement-top .ant-tooltip-arrow,.ant-tooltip-placement-topLeft .ant-tooltip-arrow,.ant-tooltip-placement-topRight .ant-tooltip-arrow{bottom:0;transform:translateY(100%)}.ant-tooltip-placement-top .ant-tooltip-arrow-content,.ant-tooltip-placement-topLeft .ant-tooltip-arrow-content,.ant-tooltip-placement-topRight .ant-tooltip-arrow-content{box-shadow:3px 3px 7px rgba(0,0,0,.07);transform:translateY(-11px) rotate(45deg)}.ant-tooltip-placement-top .ant-tooltip-arrow{left:50%;transform:translateY(100%) translateX(-50%)}.ant-tooltip-placement-topLeft .ant-tooltip-arrow{left:13px}.ant-tooltip-placement-topRight .ant-tooltip-arrow{right:13px}.ant-tooltip-placement-right .ant-tooltip-arrow,.ant-tooltip-placement-rightBottom .ant-tooltip-arrow,.ant-tooltip-placement-rightTop .ant-tooltip-arrow{left:0;transform:translateX(-100%)}.ant-tooltip-placement-right .ant-tooltip-arrow-content,.ant-tooltip-placement-rightBottom .ant-tooltip-arrow-content,.ant-tooltip-placement-rightTop .ant-tooltip-arrow-content{box-shadow:-3px 3px 7px rgba(0,0,0,.07);transform:translateX(11px) rotate(135deg)}.ant-tooltip-placement-right .ant-tooltip-arrow{top:50%;transform:translateX(-100%) translateY(-50%)}.ant-tooltip-placement-rightTop .ant-tooltip-arrow{top:5px}.ant-tooltip-placement-rightBottom .ant-tooltip-arrow{bottom:5px}.ant-tooltip-placement-left .ant-tooltip-arrow,.ant-tooltip-placement-leftBottom .ant-tooltip-arrow,.ant-tooltip-placement-leftTop .ant-tooltip-arrow{right:0;transform:translateX(100%)}.ant-tooltip-placement-left .ant-tooltip-arrow-content,.ant-tooltip-placement-leftBottom .ant-tooltip-arrow-content,.ant-tooltip-placement-leftTop .ant-tooltip-arrow-content{box-shadow:3px -3px 7px rgba(0,0,0,.07);transform:translateX(-11px) rotate(315deg)}.ant-tooltip-placement-left .ant-tooltip-arrow{top:50%;transform:translateX(100%) translateY(-50%)}.ant-tooltip-placement-leftTop .ant-tooltip-arrow{top:5px}.ant-tooltip-placement-leftBottom .ant-tooltip-arrow{bottom:5px}.ant-tooltip-placement-bottom .ant-tooltip-arrow,.ant-tooltip-placement-bottomLeft .ant-tooltip-arrow,.ant-tooltip-placement-bottomRight .ant-tooltip-arrow{top:0;transform:translateY(-100%)}.ant-tooltip-placement-bottom .ant-tooltip-arrow-content,.ant-tooltip-placement-bottomLeft .ant-tooltip-arrow-content,.ant-tooltip-placement-bottomRight .ant-tooltip-arrow-content{box-shadow:-3px -3px 7px rgba(0,0,0,.07);transform:translateY(11px) rotate(225deg)}.ant-tooltip-placement-bottom .ant-tooltip-arrow{left:50%;transform:translateY(-100%) translateX(-50%)}.ant-tooltip-placement-bottomLeft .ant-tooltip-arrow{left:13px}.ant-tooltip-placement-bottomRight .ant-tooltip-arrow{right:13px}.ant-tooltip-red .ant-tooltip-inner{background-color:#d32029}.ant-tooltip-red .ant-tooltip-arrow-content::before{background:#d32029}.ant-tooltip-volcano .ant-tooltip-inner{background-color:#d84a1b}.ant-tooltip-volcano .ant-tooltip-arrow-content::before{background:#d84a1b}.ant-tooltip-orange .ant-tooltip-inner{background-color:#d87a16}.ant-tooltip-orange .ant-tooltip-arrow-content::before{background:#d87a16}.ant-tooltip-yellow .ant-tooltip-inner{background-color:#d8bd14}.ant-tooltip-yellow .ant-tooltip-arrow-content::before{background:#d8bd14}.ant-tooltip-gold .ant-tooltip-inner{background-color:#d89614}.ant-tooltip-gold .ant-tooltip-arrow-content::before{background:#d89614}.ant-tooltip-cyan .ant-tooltip-inner{background-color:#13a8a8}.ant-tooltip-cyan .ant-tooltip-arrow-content::before{background:#13a8a8}.ant-tooltip-lime .ant-tooltip-inner{background-color:#8bbb11}.ant-tooltip-lime .ant-tooltip-arrow-content::before{background:#8bbb11}.ant-tooltip-green .ant-tooltip-inner{background-color:#49aa19}.ant-tooltip-green .ant-tooltip-arrow-content::before{background:#49aa19}.ant-tooltip-blue .ant-tooltip-inner{background-color:#177ddc}.ant-tooltip-blue .ant-tooltip-arrow-content::before{background:#177ddc}.ant-tooltip-geekblue .ant-tooltip-inner{background-color:#2b4acb}.ant-tooltip-geekblue .ant-tooltip-arrow-content::before{background:#2b4acb}.ant-tooltip-purple .ant-tooltip-inner{background-color:#642ab5}.ant-tooltip-purple .ant-tooltip-arrow-content::before{background:#642ab5}.ant-tooltip-rtl .ant-tooltip-inner{text-align:right}.ant-tooltip{position:relative}.ant-transfer-customize-list .ant-transfer-list{flex:1 1 50%;width:auto;height:auto;min-height:200px}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small{border:0;border-radius:0}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small .ant-table-selection-column{width:40px;min-width:40px}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small>.ant-table-content>.ant-table-body>table>.ant-table-thead>tr>th{background:#1d1d1d}.ant-cascader-checkbox-inner,.ant-transfer-customize-list .ant-input[disabled]{background-color:transparent}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small>.ant-table-content .ant-table-row:last-child td{border-bottom:1px solid #303030}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small .ant-table-body{margin:0}.ant-transfer-customize-list .ant-table-wrapper .ant-table-pagination.ant-pagination{margin:16px 0 4px}.ant-transfer-status-error .ant-transfer-list{border-color:#a61d24}.ant-transfer-status-error .ant-transfer-list-search:not([disabled]){border-color:#434343}.ant-transfer-status-error .ant-transfer-list-search:not([disabled]):hover{border-color:#165996;border-right-width:1px}.ant-input-rtl .ant-transfer-status-error .ant-transfer-list-search:not([disabled]):hover{border-right-width:0;border-left-width:1px!important}.ant-transfer-status-error .ant-transfer-list-search:not([disabled]):focus{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-transfer-status-error .ant-transfer-list-search:not([disabled]):focus{border-right-width:0;border-left-width:1px!important}.ant-transfer-status-warning .ant-transfer-list{border-color:#d89614}.ant-transfer-status-warning .ant-transfer-list-search:not([disabled]){border-color:#434343}.ant-transfer-status-warning .ant-transfer-list-search:not([disabled]):hover{border-color:#165996;border-right-width:1px}.ant-input-rtl .ant-transfer-status-warning .ant-transfer-list-search:not([disabled]):hover{border-right-width:0;border-left-width:1px!important}.ant-transfer-status-warning .ant-transfer-list-search:not([disabled]):focus{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-transfer-status-warning .ant-transfer-list-search:not([disabled]):focus{border-right-width:0;border-left-width:1px!important}.ant-transfer{box-sizing:border-box;margin:0;padding:0;color:rgba(255,255,255,.85);font-variant:tabular-nums;position:relative;display:flex;align-items:stretch}.ant-transfer-disabled .ant-transfer-list{background:rgba(255,255,255,.08)}.ant-transfer-list{display:flex;flex-direction:column;width:180px;height:200px;border:1px solid #434343;border-radius:2px}.ant-transfer-list-with-pagination{width:250px;height:auto}.ant-transfer-list-search .anticon-search{color:rgba(255,255,255,.3)}.ant-transfer-list-header{display:flex;flex:none;align-items:center;height:40px;padding:8px 12px 9px;color:rgba(255,255,255,.85);background:#141414;border-bottom:1px solid #303030;border-radius:2px 2px 0 0}.ant-transfer-list-header>:not(:last-child){margin-right:4px}.ant-transfer-list-header>*{flex:none}.ant-transfer-list-header-title{flex:auto;overflow:hidden;white-space:nowrap;text-align:right;text-overflow:ellipsis}.ant-transfer-list-header-dropdown{font-size:10px;transform:translateY(10%);cursor:pointer}.ant-transfer-list-header-dropdown[disabled]{cursor:not-allowed}.ant-transfer-list-body{display:flex;flex:auto;flex-direction:column;overflow:hidden;font-size:14px}.ant-transfer-list-body-search-wrapper{position:relative;flex:none;padding:12px}.ant-transfer-list-content{flex:auto;margin:0;padding:0;overflow:auto;list-style:none}.ant-transfer-list-content-item{display:flex;align-items:center;min-height:32px;padding:6px 12px;line-height:20px;transition:all .3s}.ant-transfer-list-content-item>:not(:last-child){margin-right:8px}.ant-transfer-list-content-item>*{flex:none}.ant-transfer-list-content-item-text{flex:auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-transfer-list-content-item-remove{text-decoration:none;outline:0;cursor:pointer;transition:color .3s;position:relative;color:#434343}.ant-transfer-list-content-item-remove:focus,.ant-transfer-list-content-item-remove:hover{color:#165996}.ant-transfer-list-content-item-remove:active{color:#388ed3}.ant-transfer-list-content-item-remove::after{position:absolute;top:-6px;right:-50%;bottom:-6px;left:-50%;content:''}.ant-transfer-list-content-item-remove:hover{color:#165996}.ant-transfer-list-content-item:not(.ant-transfer-list-content-item-disabled):hover{background-color:#262626;cursor:pointer}.ant-transfer-list-content-item:not(.ant-transfer-list-content-item-disabled).ant-transfer-list-content-item-checked:hover{background-color:#0e161f}.ant-transfer-list-content-show-remove .ant-transfer-list-content-item:not(.ant-transfer-list-content-item-disabled):hover{background:0 0;cursor:default}.ant-transfer-list-content-item-checked{background-color:#111b26}.ant-transfer-list-content-item-disabled{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-transfer-list-pagination{padding:8px 0;text-align:right;border-top:1px solid #303030}.ant-transfer-list-body-not-found{flex:none;width:100%;margin:auto 0;color:rgba(255,255,255,.3);text-align:center}.ant-transfer-rtl .ant-transfer-list-header-title,.ant-transfer-rtl .ant-transfer-list-pagination{text-align:left}.ant-transfer-list-footer{border-top:1px solid #303030}.ant-transfer-operation{display:flex;flex:none;flex-direction:column;align-self:center;margin:0 8px}.ant-transfer-operation .ant-btn{display:block}.ant-transfer-operation .ant-btn:first-child{margin-bottom:4px}.ant-transfer-operation .ant-btn .anticon{font-size:12px}.ant-transfer .ant-empty-image{max-height:-2px}.ant-transfer-rtl .ant-transfer-list-search{padding-right:8px;padding-left:24px}.ant-transfer-rtl .ant-transfer-list-search-action{right:auto;left:12px}.ant-transfer-rtl .ant-transfer-list-footer,.ant-transfer-rtl .ant-transfer-list-header{right:0;left:auto}.ant-transfer-rtl .ant-transfer-list-header>:not(:last-child){margin-right:0;margin-left:4px}.ant-transfer-rtl .ant-transfer-list-content-item>:not(:last-child){margin-right:0;margin-left:8px}.ant-typography{color:rgba(255,255,255,.85);overflow-wrap:break-word}.ant-typography.ant-typography-secondary{color:rgba(255,255,255,.45)}.ant-typography.ant-typography-success{color:#49aa19}.ant-typography.ant-typography-warning{color:#d89614}.ant-typography.ant-typography-danger{color:#a61d24}a.ant-typography.ant-typography-danger:active,a.ant-typography.ant-typography-danger:focus{color:#800f19}a.ant-typography.ant-typography-danger:hover{color:#b33b3d}.ant-typography.ant-typography-disabled{color:rgba(255,255,255,.3);cursor:not-allowed;user-select:none}.ant-typography p,div.ant-typography{margin-bottom:1em}.ant-typography h1,div.ant-typography-h1,div.ant-typography-h1>textarea,h1.ant-typography{margin-bottom:.5em;color:rgba(255,255,255,.85);font-weight:600;font-size:38px;line-height:1.23}.ant-typography h2,div.ant-typography-h2,div.ant-typography-h2>textarea,h2.ant-typography{margin-bottom:.5em;color:rgba(255,255,255,.85);font-weight:600;font-size:30px;line-height:1.35}.ant-typography h3,div.ant-typography-h3,div.ant-typography-h3>textarea,h3.ant-typography{margin-bottom:.5em;color:rgba(255,255,255,.85);font-weight:600;font-size:24px;line-height:1.35}.ant-typography h4,div.ant-typography-h4,div.ant-typography-h4>textarea,h4.ant-typography{margin-bottom:.5em;color:rgba(255,255,255,.85);font-weight:600;font-size:20px;line-height:1.4}.ant-typography h5,div.ant-typography-h5,div.ant-typography-h5>textarea,h5.ant-typography{margin-bottom:.5em;color:rgba(255,255,255,.85);font-weight:600;font-size:16px;line-height:1.5}.ant-typography div+h1,.ant-typography div+h2,.ant-typography div+h3,.ant-typography div+h4,.ant-typography div+h5,.ant-typography h1+h1,.ant-typography h1+h2,.ant-typography h1+h3,.ant-typography h1+h4,.ant-typography h1+h5,.ant-typography h2+h1,.ant-typography h2+h2,.ant-typography h2+h3,.ant-typography h2+h4,.ant-typography h2+h5,.ant-typography h3+h1,.ant-typography h3+h2,.ant-typography h3+h3,.ant-typography h3+h4,.ant-typography h3+h5,.ant-typography h4+h1,.ant-typography h4+h2,.ant-typography h4+h3,.ant-typography h4+h4,.ant-typography h4+h5,.ant-typography h5+h1,.ant-typography h5+h2,.ant-typography h5+h3,.ant-typography h5+h4,.ant-typography h5+h5,.ant-typography li+h1,.ant-typography li+h2,.ant-typography li+h3,.ant-typography li+h4,.ant-typography li+h5,.ant-typography p+h1,.ant-typography p+h2,.ant-typography p+h3,.ant-typography p+h4,.ant-typography p+h5,.ant-typography ul+h1,.ant-typography ul+h2,.ant-typography ul+h3,.ant-typography ul+h4,.ant-typography ul+h5,.ant-typography+h1.ant-typography,.ant-typography+h2.ant-typography,.ant-typography+h3.ant-typography,.ant-typography+h4.ant-typography,.ant-typography+h5.ant-typography{margin-top:1.2em}.ant-typography code,.ant-typography kbd{margin:0 .2em;border:1px solid rgba(100,100,100,.2)}a.ant-typography-ellipsis,span.ant-typography-ellipsis{display:inline-block;max-width:100%}.ant-typography a,a.ant-typography{color:#177ddc;outline:0;cursor:pointer;transition:color .3s;text-decoration:none}.ant-typography a:focus,.ant-typography a:hover,a.ant-typography:focus,a.ant-typography:hover{color:#165996}.ant-typography a:active,a.ant-typography:active{color:#388ed3}.ant-typography a:active,.ant-typography a:hover,a.ant-typography:active,a.ant-typography:hover{text-decoration:none}.ant-typography a.ant-typography-disabled,.ant-typography a[disabled],a.ant-typography.ant-typography-disabled,a.ant-typography[disabled]{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-typography a.ant-typography-disabled:active,.ant-typography a.ant-typography-disabled:hover,.ant-typography a[disabled]:active,.ant-typography a[disabled]:hover,a.ant-typography.ant-typography-disabled:active,a.ant-typography.ant-typography-disabled:hover,a.ant-typography[disabled]:active,a.ant-typography[disabled]:hover{color:rgba(255,255,255,.3)}.ant-typography a.ant-typography-disabled:active,.ant-typography a[disabled]:active,a.ant-typography.ant-typography-disabled:active,a.ant-typography[disabled]:active{pointer-events:none}.ant-typography code{padding:.2em .4em .1em;font-size:85%;background:rgba(150,150,150,.1);border-radius:3px}.ant-typography kbd{padding:.15em .4em .1em;font-size:90%;background:rgba(150,150,150,.06);border-bottom-width:2px;border-radius:3px}.ant-typography mark{padding:0;background-color:#594214}.ant-typography ins,.ant-typography u{text-decoration:underline;text-decoration-skip-ink:auto}.ant-typography del,.ant-typography s,.menu-deprecated .ant-badge,.text-deleted{text-decoration:line-through}.ant-typography strong{font-weight:600}.ant-typography-copy,.ant-typography-edit,.ant-typography-expand{color:#177ddc;text-decoration:none;outline:0;cursor:pointer;transition:color .3s;margin-left:4px}.ant-typography-copy:focus,.ant-typography-copy:hover,.ant-typography-edit:focus,.ant-typography-edit:hover,.ant-typography-expand:focus,.ant-typography-expand:hover{color:#165996}.ant-typography-copy:active,.ant-typography-edit:active,.ant-typography-expand:active{color:#388ed3}.ant-typography-copy-success,.ant-typography-copy-success:focus,.ant-typography-copy-success:hover{color:#49aa19}.ant-typography-edit-content{position:relative}div.ant-typography-edit-content{left:-12px;margin-top:-5px;margin-bottom:calc(1em - 4px - 1px)}.ant-typography-edit-content-confirm{position:absolute;right:10px;bottom:8px;color:rgba(255,255,255,.45);font-weight:400;font-size:14px;font-style:normal;pointer-events:none}.ant-typography-edit-content textarea{height:1em;margin:0!important;-moz-transition:none}.ant-typography ol,.ant-typography ul{margin:0 0 1em;padding:0}.ant-typography ol li,.ant-typography ul li{margin:0 0 0 20px;padding:0 0 0 4px}.ant-typography ul{list-style-type:circle}.ant-typography ul ul{list-style-type:disc}.ant-typography ol{list-style-type:decimal}.ant-typography blockquote,.ant-typography pre{margin:1em 0}.ant-typography pre{padding:.4em .6em;white-space:pre-wrap;word-wrap:break-word;background:rgba(150,150,150,.1);border:1px solid rgba(100,100,100,.2);border-radius:3px}.ant-typography pre code{display:inline;margin:0;padding:0;font-size:inherit;font-family:inherit;background:0 0;border:0}.ant-typography blockquote{padding:0 0 0 .6em;border-left:4px solid rgba(100,100,100,.2);opacity:.85}.ant-typography-single-line{white-space:nowrap}.ant-typography-ellipsis-single-line{overflow:hidden;text-overflow:ellipsis}a.ant-typography-ellipsis-single-line,span.ant-typography-ellipsis-single-line{vertical-align:bottom}.ant-typography-ellipsis-multiple-line{display:-webkit-box;overflow:hidden;-webkit-line-clamp:3;/*! autoprefixer: ignore next */-webkit-box-orient:vertical}.ant-typography-rtl .ant-typography-copy,.ant-typography-rtl .ant-typography-edit,.ant-typography-rtl .ant-typography-expand{margin-right:4px;margin-left:0}.ant-typography-rtl .ant-typography-expand{float:left}div.ant-typography-edit-content.ant-typography-rtl{right:-12px;left:auto}.ant-typography-rtl .ant-typography-edit-content-confirm{right:auto;left:10px}.ant-typography-rtl.ant-typography ol li,.ant-typography-rtl.ant-typography ul li{margin:0 20px 0 0;padding:0 4px 0 0}.ant-upload{box-sizing:border-box;margin:0;padding:0;color:rgba(255,255,255,.85);font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum;outline:0}.ant-upload p{margin:0}.ant-upload-btn{display:block;width:100%;outline:0}.ant-upload input[type=file]{cursor:pointer}.ant-upload.ant-upload-select{display:inline-block}.ant-upload.ant-upload-disabled{cursor:not-allowed}.ant-upload.ant-upload-select-picture-card{width:104px;height:104px;margin-right:8px;margin-bottom:8px;text-align:center;vertical-align:top;background-color:rgba(255,255,255,.04);border:1px dashed #434343;border-radius:2px;cursor:pointer;transition:border-color .3s}.ant-upload.ant-upload-select-picture-card>.ant-upload{display:flex;align-items:center;justify-content:center;height:100%;text-align:center}.ant-upload.ant-upload-select-picture-card:hover{border-color:#177ddc}.ant-upload-disabled.ant-upload.ant-upload-select-picture-card:hover{border-color:#434343}.ant-upload.ant-upload-drag{position:relative;width:100%;height:100%;text-align:center;background:rgba(255,255,255,.04);border:1px dashed #434343;border-radius:2px;cursor:pointer;transition:border-color .3s}.ant-upload.ant-upload-drag .ant-upload{padding:16px 0}.ant-upload.ant-upload-drag.ant-upload-drag-hover:not(.ant-upload-disabled){border-color:#388ed3}.ant-upload.ant-upload-drag.ant-upload-disabled{cursor:not-allowed}.ant-upload.ant-upload-drag .ant-upload-btn{display:table;height:100%}.ant-upload.ant-upload-drag .ant-upload-drag-container{display:table-cell;vertical-align:middle}.ant-upload-list-item-name,.ant-upload-picture-card-wrapper{display:inline-block;width:100%}.ant-upload.ant-upload-drag:not(.ant-upload-disabled):hover{border-color:#165996}.ant-upload.ant-upload-drag p.ant-upload-drag-icon{margin-bottom:20px}.ant-upload.ant-upload-drag p.ant-upload-drag-icon .anticon{color:#165996;font-size:48px}.ant-upload.ant-upload-drag p.ant-upload-text{margin:0 0 4px;color:rgba(255,255,255,.85);font-size:16px}.ant-upload.ant-upload-drag p.ant-upload-hint{color:rgba(255,255,255,.45);font-size:14px}.ant-upload.ant-upload-drag .anticon-plus{color:rgba(255,255,255,.3);font-size:30px;transition:all .3s}.ant-upload.ant-upload-drag .anticon-plus:hover,.ant-upload.ant-upload-drag:hover .anticon-plus{color:rgba(255,255,255,.45)}.ant-upload-list::after,.ant-upload-list::before,.ant-upload-picture-card-wrapper::after,.ant-upload-picture-card-wrapper::before{display:table;content:''}.ant-upload-picture-card-wrapper::after{clear:both}.ant-upload-list{box-sizing:border-box;margin:0;padding:0;color:rgba(255,255,255,.85);font-size:14px;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;line-height:1.5715}.ant-upload-list::after{clear:both}.ant-upload-list-item{position:relative;height:22px;margin-top:8px;font-size:14px}.ant-upload-list-item-name{padding-left:22px;overflow:hidden;line-height:1.5715;white-space:nowrap;text-overflow:ellipsis}.ant-upload-list-item-card-actions{position:absolute;right:0}.ant-upload-list-item-card-actions-btn{opacity:0}.ant-upload-list-item-card-actions-btn:focus,.ant-upload-list-item-card-actions.picture .ant-upload-list-item-card-actions-btn,.ant-upload-list-item-error .ant-upload-list-item-card-actions-btn,.ant-upload-list-item:hover .ant-upload-list-item-card-actions-btn{opacity:1}.ant-upload-list-item-card-actions-btn.ant-btn-sm{height:22px;line-height:1;vertical-align:top}.ant-upload-list-item-card-actions.picture{top:22px;line-height:0}.ant-upload-list-item-card-actions .anticon{color:rgba(255,255,255,.45);transition:all .3s}.ant-upload-list-item-card-actions:hover .anticon{color:rgba(255,255,255,.85)}.ant-upload-list-item-info{height:100%;transition:background-color .3s}.ant-upload-list-item-info>span{display:block;width:100%;height:100%}.ant-upload-list-item-info .ant-upload-text-icon .anticon,.ant-upload-list-item-info .anticon-loading .anticon{position:absolute;top:5px;color:rgba(255,255,255,.45);font-size:14px}.ant-upload-list-item:hover .ant-upload-list-item-info{background-color:rgba(255,255,255,.08)}.ant-upload-list-picture .ant-upload-list-item:hover,.ant-upload-list-picture .ant-upload-list-item:hover .ant-upload-list-item-info,.ant-upload-list-picture-card .ant-upload-list-item:hover,.ant-upload-list-picture-card .ant-upload-list-item:hover .ant-upload-list-item-info{background:0 0}.ant-upload-list-item-error,.ant-upload-list-item-error .ant-upload-list-item-card-actions .anticon,.ant-upload-list-item-error .ant-upload-list-item-name,.ant-upload-list-item-error .ant-upload-text-icon>.anticon{color:#a61d24}.ant-upload-list-item-progress{position:absolute;bottom:-12px;width:100%;padding-left:26px;font-size:14px;line-height:0}.ant-upload-list-picture .ant-upload-list-item,.ant-upload-list-picture-card .ant-upload-list-item{position:relative;height:66px;padding:8px;border:1px solid #434343;border-radius:2px}.ant-upload-list-picture .ant-upload-list-item-error,.ant-upload-list-picture-card .ant-upload-list-item-error{border-color:#a61d24}.ant-upload-list-picture .ant-upload-list-item-uploading,.ant-upload-list-picture-card .ant-upload-list-item-uploading{border-style:dashed}.ant-upload-list-picture .ant-upload-list-item-thumbnail,.ant-upload-list-picture-card .ant-upload-list-item-thumbnail{width:48px;height:48px;line-height:60px;text-align:center;opacity:.8}.ant-upload-list-picture .ant-upload-list-item-thumbnail .anticon,.ant-upload-list-picture-card .ant-upload-list-item-thumbnail .anticon{font-size:26px}.ant-upload-list-picture .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill='#e6f7ff'],.ant-upload-list-picture-card .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill='#e6f7ff']{fill:#2a1215}.ant-upload-list-picture .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill='#1890ff'],.ant-upload-list-picture-card .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill='#1890ff']{fill:#a61d24}.ant-upload-list-picture .ant-upload-list-item-icon,.ant-upload-list-picture-card .ant-upload-list-item-icon{position:absolute;top:50%;left:50%;font-size:26px;transform:translate(-50%,-50%)}.ant-upload-list-picture .ant-upload-list-item-icon .anticon,.ant-upload-list-picture-card .ant-upload-list-item-icon .anticon{font-size:26px}.ant-upload-list-picture .ant-upload-list-item-image,.ant-upload-list-picture-card .ant-upload-list-item-image{max-width:100%}.ant-upload-list-picture .ant-upload-list-item-thumbnail img,.ant-upload-list-picture-card .ant-upload-list-item-thumbnail img{display:block;width:48px;height:48px;overflow:hidden}.ant-upload-list-picture .ant-upload-list-item-name,.ant-upload-list-picture-card .ant-upload-list-item-name{display:inline-block;box-sizing:border-box;max-width:100%;margin:0 0 0 8px;padding-right:8px;padding-left:48px;overflow:hidden;line-height:44px;white-space:nowrap;text-overflow:ellipsis;transition:all .3s}.ant-upload-list-picture .ant-upload-list-item-uploading .ant-upload-list-item-name,.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-name{margin-bottom:12px}.ant-upload-list-picture .ant-upload-list-item-progress,.ant-upload-list-picture-card .ant-upload-list-item-progress{bottom:14px;width:calc(100% - 24px);margin-top:0;padding-left:56px}.ant-upload-list-picture-card-container{display:inline-block;width:104px;height:104px;margin:0 8px 8px 0;vertical-align:top}.ant-upload-list-picture-card .ant-upload-list-item{height:100%;margin:0}.ant-upload-list-picture-card .ant-upload-list-item-info{position:relative;height:100%;overflow:hidden}.ant-upload-list-picture-card .ant-upload-list-item-info::before{position:absolute;z-index:1;width:100%;height:100%;background-color:rgba(0,0,0,.5);opacity:0;transition:all .3s;content:' '}.ant-result-content,.ant-upload-list-picture-card .ant-upload-list-item-uploading.ant-upload-list-item{background-color:rgba(255,255,255,.04)}.ant-upload-list-picture-card .ant-upload-list-item:hover .ant-upload-list-item-info::before{opacity:1}.ant-upload-list-picture-card .ant-upload-list-item-actions{position:absolute;top:50%;left:50%;z-index:10;white-space:nowrap;transform:translate(-50%,-50%);opacity:0;transition:all .3s}.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-delete,.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-download,.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-eye{z-index:10;width:16px;margin:0 4px;color:rgba(255,255,255,.85);font-size:16px;cursor:pointer;transition:all .3s}.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-delete:hover,.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-download:hover,.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-eye:hover{color:#fff}.ant-upload-list-picture-card .ant-upload-list-item-actions:hover,.ant-upload-list-picture-card .ant-upload-list-item-info:hover+.ant-upload-list-item-actions{opacity:1}.ant-upload-list-picture-card .ant-upload-list-item-thumbnail,.ant-upload-list-picture-card .ant-upload-list-item-thumbnail img{position:static;display:block;width:100%;height:100%;object-fit:contain}.ant-upload-list-picture-card .ant-upload-list-item-name{display:none;margin:8px 0 0;padding:0;line-height:1.5715;text-align:center}.ant-upload-list-picture-card .ant-upload-list-item-file+.ant-upload-list-item-name{position:absolute;bottom:10px;display:block}.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-info{height:auto}.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-info .anticon-delete,.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-info .anticon-eye,.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-info::before{display:none}.ant-upload-list-picture-card .ant-upload-list-item-progress{bottom:32px;width:calc(100% - 14px);padding-left:0}.ant-upload-list-picture-container,.ant-upload-list-text-container{transition:opacity .3s,height .3s}.ant-upload-list-picture-container::before,.ant-upload-list-text-container::before{display:table;width:0;height:0;content:''}.ant-upload-list-picture-container .ant-upload-span,.ant-upload-list-text-container .ant-upload-span{display:block;flex:auto}.ant-upload-list-picture .ant-upload-span,.ant-upload-list-text .ant-upload-span{display:flex;align-items:center}.ant-upload-list-picture .ant-upload-span>*,.ant-upload-list-text .ant-upload-span>*{flex:none}.ant-upload-list-picture .ant-upload-list-item-name,.ant-upload-list-text .ant-upload-list-item-name{flex:auto;margin:0;padding:0 8px}.ant-upload-list-picture .ant-upload-list-item-card-actions,.ant-upload-list-text .ant-upload-list-item-card-actions,.ant-upload-list-text .ant-upload-text-icon .anticon{position:static}.ant-upload-list .ant-upload-animate-inline-appear,.ant-upload-list .ant-upload-animate-inline-enter,.ant-upload-list .ant-upload-animate-inline-leave{animation-duration:.3s;animation-fill-mode:cubic-bezier(.78,.14,.15,.86)}.ant-upload-list .ant-upload-animate-inline-appear,.ant-upload-list .ant-upload-animate-inline-enter{animation-name:uploadAnimateInlineIn}.ant-upload-list .ant-upload-animate-inline-leave{animation-name:uploadAnimateInlineOut}@keyframes uploadAnimateInlineIn{from{width:0;height:0;margin:0;padding:0;opacity:0}}@keyframes uploadAnimateInlineOut{to{width:0;height:0;margin:0;padding:0;opacity:0}}.ant-upload-rtl.ant-upload.ant-upload-select-picture-card{margin-right:auto;margin-left:8px}.ant-upload-list-rtl .ant-upload-list-item-list-type-text:hover .ant-upload-list-item-name-icon-count-1{padding-right:22px;padding-left:14px}.ant-upload-list-rtl .ant-upload-list-item-list-type-text:hover .ant-upload-list-item-name-icon-count-2{padding-right:22px;padding-left:28px}.ant-upload-list-rtl .ant-upload-list-item-name{padding-right:22px;padding-left:0}.ant-upload-list-rtl .ant-upload-list-item-name-icon-count-1{padding-left:14px}.ant-upload-list-rtl .ant-upload-list-item-card-actions{right:auto;left:0}.ant-upload-list-rtl .ant-upload-list-item-card-actions .anticon{padding-right:0;padding-left:5px}.ant-upload-list-rtl .ant-upload-list-item-info{padding:0 4px 0 12px}.ant-upload-list-rtl .ant-upload-list-item-error .ant-upload-list-item-card-actions .anticon{padding-right:0;padding-left:5px}.ant-upload-list-rtl .ant-upload-list-item-progress{padding-right:26px;padding-left:0}.ant-upload-list-picture .ant-upload-list-item-info,.ant-upload-list-picture-card .ant-upload-list-item-info{padding:0}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-thumbnail,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-thumbnail{right:8px;left:auto}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-icon,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-actions,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-icon{right:50%;transform:translate(50%,-50%);left:auto}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-name,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-name{margin:0 8px 0 0;padding-right:48px;padding-left:8px}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-name-icon-count-1,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-name-icon-count-1{padding-right:48px;padding-left:18px}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-name-icon-count-2,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-name-icon-count-2{padding-right:48px;padding-left:36px}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-progress,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-progress{padding-right:0;padding-left:0}.ant-upload-list-rtl .ant-upload-list-picture-card-container{margin:0 0 8px 8px}.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-file+.ant-upload-list-item-name{margin:8px 0 0;padding:0}.ant-cascader-checkbox,.ant-cascader-checkbox-wrapper,.ant-select-auto-complete{margin:0;padding:0;box-sizing:border-box;font-feature-settings:tnum}.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item{float:unset}.ant-select-auto-complete{color:rgba(255,255,255,.85);font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none}.ant-select-auto-complete .ant-select-clear{right:13px}.ant-select-dropdown-hidden{display:none}.ant-cascader-checkbox{color:rgba(255,255,255,.85);font-size:14px;font-variant:tabular-nums;list-style:none;position:relative;line-height:1;white-space:nowrap;outline:0;cursor:pointer}.ant-cascader-checkbox-input:focus+.ant-cascader-checkbox-inner,.ant-cascader-checkbox-wrapper:hover .ant-cascader-checkbox-inner,.ant-cascader-checkbox:hover .ant-cascader-checkbox-inner{border-color:#177ddc}.ant-cascader-checkbox-checked::after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #177ddc;border-radius:2px;visibility:hidden;animation:antCheckboxEffect .36s ease-in-out;animation-fill-mode:backwards;content:''}.ant-cascader-checkbox-wrapper:hover .ant-cascader-checkbox::after,.ant-cascader-checkbox:hover::after{visibility:visible}.ant-cascader-checkbox-disabled:hover::after,.ant-cascader-checkbox-wrapper:hover .ant-cascader-checkbox-disabled::after,.ant-input-number__hide-step .ant-input-number-handler-wrap,.ant-select-tree-checkbox-checked::after,.ant-select-tree-checkbox-disabled:hover::after,.ant-select-tree-checkbox-wrapper:hover .ant-select-tree-checkbox-disabled::after,.ant-tree-checkbox-checked::after,.ant-tree-checkbox-disabled:hover::after,.ant-tree-checkbox-wrapper:hover .ant-tree-checkbox-disabled::after,.exception__img-block::after{visibility:hidden}.ant-cascader-checkbox-inner{position:relative;top:0;left:0;display:block;width:16px;height:16px;direction:ltr;border:1px solid #434343;border-radius:2px;border-collapse:separate;transition:all .3s}.ant-cascader-checkbox-inner::after,.ant-tree-checkbox-inner::after{height:9.14px;opacity:0;transform:rotate(45deg) scale(0) translate(-50%,-50%)}.ant-cascader-checkbox-inner::after{position:absolute;top:50%;left:21.5%;display:table;width:5.71px;border:2px solid #fff;border-top:0;border-left:0;transition:all .1s cubic-bezier(.71,-.46,.88,.6),opacity .1s;content:' '}.ant-cascader-checkbox-input{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;cursor:pointer;opacity:0}.ant-cascader-checkbox-checked .ant-cascader-checkbox-inner::after{position:absolute;display:table;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(1) translate(-50%,-50%);opacity:1;transition:all .2s cubic-bezier(.12,.4,.29,1.46) .1s;content:' '}.ant-cascader-checkbox-checked .ant-cascader-checkbox-inner{background-color:#177ddc;border-color:#177ddc}.ant-cascader-checkbox-disabled{cursor:not-allowed}.ant-cascader-checkbox-disabled.ant-cascader-checkbox-checked .ant-cascader-checkbox-inner::after{border-color:rgba(255,255,255,.3);animation-name:none}.ant-cascader-checkbox-disabled .ant-cascader-checkbox-input{cursor:not-allowed;pointer-events:none}.ant-cascader-checkbox-disabled .ant-cascader-checkbox-inner{background-color:rgba(255,255,255,.08);border-color:#434343!important}.ant-cascader-checkbox-disabled .ant-cascader-checkbox-inner::after{border-color:rgba(255,255,255,.08);border-collapse:separate;animation-name:none}.ant-cascader-checkbox-disabled+span{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-cascader-checkbox-group,.ant-cascader-checkbox-wrapper{color:rgba(255,255,255,.85);font-size:14px;font-variant:tabular-nums;list-style:none}.ant-cascader-checkbox-wrapper{display:inline-flex;align-items:baseline;line-height:unset;cursor:pointer}.ant-cascader-checkbox-wrapper::after{display:inline-block;width:0;overflow:hidden;content:'\a0'}.ant-cascader-checkbox-wrapper.ant-cascader-checkbox-wrapper-disabled{cursor:not-allowed}.ant-cascader-checkbox-wrapper+.ant-cascader-checkbox-wrapper{margin-left:8px}.ant-cascader-checkbox-wrapper.ant-cascader-checkbox-wrapper-in-form-item input[type=checkbox]{width:14px;height:14px}.ant-cascader-checkbox+span{padding-right:8px;padding-left:8px}.ant-cascader-checkbox-group{box-sizing:border-box;margin:0;padding:0;line-height:1.5715;font-feature-settings:tnum;display:inline-block}.ant-cascader-checkbox-group-item{margin-right:8px}.ant-cascader-checkbox-group-item:last-child{margin-right:0}.ant-cascader-checkbox-group-item+.ant-cascader-checkbox-group-item{margin-left:0}.ant-cascader-checkbox-indeterminate .ant-cascader-checkbox-inner{background-color:transparent;border-color:#434343}.ant-cascader-checkbox-indeterminate .ant-cascader-checkbox-inner::after{top:50%;left:50%;width:8px;height:8px;background-color:#177ddc;border:0;transform:translate(-50%,-50%) scale(1);opacity:1;content:' '}.ant-cascader-checkbox-indeterminate.ant-cascader-checkbox-disabled .ant-cascader-checkbox-inner::after{background-color:rgba(255,255,255,.3);border-color:rgba(255,255,255,.3)}.ant-cascader-menu,.ant-row-rtl #search-box,.sv__bordered .sv__item,.sv__bordered .sv__label{border-right:1px solid #303030}.ant-cascader-checkbox-group-rtl .ant-cascader-checkbox-group-item{margin-right:0;margin-left:8px}.ant-cascader-checkbox-group-rtl .ant-cascader-checkbox-group-item:last-child{margin-left:0!important}.ant-cascader-checkbox-group-rtl .ant-cascader-checkbox-group-item+.ant-cascader-checkbox-group-item{margin-left:8px}.ant-cascader{width:184px}.ant-cascader-checkbox{top:0;margin-right:8px}.ant-cascader-menus{display:flex;flex-wrap:nowrap;align-items:flex-start}.ant-cascader-menus.ant-cascader-menu-empty .ant-cascader-menu{width:100%;height:auto}.ant-cascader-menu{flex-grow:1;min-width:111px;height:180px;margin:-4px 0;padding:4px 0;overflow:auto;vertical-align:top;list-style:none;-ms-overflow-style:-ms-autohiding-scrollbar}.ant-cascader-menu-item{display:flex;flex-wrap:nowrap;align-items:center;padding:5px 12px;overflow:hidden;line-height:22px;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:all .3s}.ant-cascader-menu-item:hover{background:rgba(255,255,255,.08)}.ant-cascader-menu-item-disabled{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-cascader-menu-item-disabled:hover{background:0 0}.ant-cascader-menu-empty .ant-cascader-menu-item{color:rgba(255,255,255,.3);cursor:default;pointer-events:none}.ant-cascader-menu-item-active:not(.ant-cascader-menu-item-disabled),.ant-cascader-menu-item-active:not(.ant-cascader-menu-item-disabled):hover{font-weight:600;background-color:#111b26}.ant-cascader-menu-item-content{flex:auto}.ant-cascader-menu-item-expand .ant-cascader-menu-item-expand-icon,.ant-cascader-menu-item-loading-icon{margin-left:4px;color:rgba(255,255,255,.45);font-size:10px}.ant-tree-checkbox,.ant-tree-checkbox-wrapper{box-sizing:border-box;padding:0;font-size:14px;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum}.ant-cascader-menu-item-disabled.ant-cascader-menu-item-expand .ant-cascader-menu-item-expand-icon,.ant-cascader-menu-item-disabled.ant-cascader-menu-item-loading-icon{color:rgba(255,255,255,.3)}.ant-cascader-menu-item-keyword{color:#a61d24}.ant-cascader-rtl .ant-cascader-menu-item-expand-icon,.ant-cascader-rtl .ant-cascader-menu-item-loading-icon{margin-right:4px;margin-left:0}.ant-cascader-rtl .ant-cascader-checkbox{top:0;margin-right:0;margin-left:8px}.ant-cascader-menus{position:relative;margin-top:2px;margin-bottom:2px}nz-tree-virtual-scroll-view{display:block;position:relative;overflow:auto;contain:strict;transform:translateZ(0);will-change:scroll-position;-webkit-overflow-scrolling:touch}nz-tree-virtual-scroll-view .ant-tree-list,nz-tree-virtual-scroll-view .ant-tree-list-holder{height:100%}nz-tree-view .ant-tree-switcher+.ant-tree-switcher.nz-tree-leaf-line-icon,nz-tree-virtual-scroll-view .ant-tree-switcher+.ant-tree-switcher.nz-tree-leaf-line-icon{display:none}nz-tree-view .ant-tree-list-holder-inner{display:flex;flex-direction:column}@keyframes ant-tree-node-fx-do-not-use{0%{opacity:0}100%{opacity:1}}.ant-tree.ant-tree-directory .ant-tree-treenode{position:relative}.ant-tree.ant-tree-directory .ant-tree-treenode::before{position:absolute;top:0;right:0;bottom:4px;left:0;transition:background-color .3s;content:'';pointer-events:none}.ant-tree.ant-tree-directory .ant-tree-treenode:hover::before{background:rgba(255,255,255,.08)}.ant-tree.ant-tree-directory .ant-tree-treenode>*{z-index:1}.ant-tree.ant-tree-directory .ant-tree-treenode .ant-tree-switcher{transition:color .3s}.ant-tree.ant-tree-directory .ant-tree-treenode .ant-tree-node-content-wrapper{border-radius:0;user-select:none}.ant-tree.ant-tree-directory .ant-tree-treenode .ant-tree-node-content-wrapper:hover{background:0 0}.ant-tree.ant-tree-directory .ant-tree-treenode .ant-tree-node-content-wrapper.ant-tree-node-selected{color:#fff;background:0 0}.ant-tree.ant-tree-directory .ant-tree-treenode-selected::before,.ant-tree.ant-tree-directory .ant-tree-treenode-selected:hover::before{background:#177ddc}.ant-tree.ant-tree-directory .ant-tree-treenode-selected .ant-tree-switcher{color:#fff}.ant-tree.ant-tree-directory .ant-tree-treenode-selected .ant-tree-node-content-wrapper{color:#fff;background:0 0}.ant-tree-checkbox{color:rgba(255,255,255,.85);position:relative;line-height:1;white-space:nowrap;outline:0;cursor:pointer}.ant-tree-checkbox-input:focus+.ant-tree-checkbox-inner,.ant-tree-checkbox-wrapper:hover .ant-tree-checkbox-inner,.ant-tree-checkbox:hover .ant-tree-checkbox-inner{border-color:#177ddc}.ant-tree-checkbox-checked::after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #177ddc;border-radius:2px;animation:antCheckboxEffect .36s ease-in-out;animation-fill-mode:backwards;content:''}.ant-tree-checkbox-wrapper:hover .ant-tree-checkbox::after,.ant-tree-checkbox:hover::after{visibility:visible}.ant-tree-checkbox-inner{position:relative;top:0;left:0;display:block;width:16px;height:16px;direction:ltr;background-color:transparent;border:1px solid #434343;border-radius:2px;border-collapse:separate;transition:all .3s}.ant-picker-calendar-rtl,.ant-result-rtl,.ant-select-tree-checkbox-rtl,.ant-space-rtl,.ant-tree .ant-tree-treenode-rtl,.ant-tree-checkbox-rtl,.ant-tree-rtl,.ant-tree-select-dropdown-rtl,.avatar-list-rtl,.error-collect-rtl,.exception-rtl,.global-footer-rtl,.loading-default-rtl,.onboarding-rtl,.page-header-rtl,.result-rtl,.reuse-tab-rtl,.setting-drawer-rtl,.tag-select-rtl,html.rtl{direction:rtl}.ant-tree-checkbox-inner::after{position:absolute;top:50%;left:21.5%;display:table;width:5.71px;border:2px solid #fff;border-top:0;border-left:0;transition:all .1s cubic-bezier(.71,-.46,.88,.6),opacity .1s;content:' '}.ant-tree-checkbox-input{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;cursor:pointer;opacity:0}.ant-tree-checkbox-checked .ant-tree-checkbox-inner::after{position:absolute;display:table;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(1) translate(-50%,-50%);opacity:1;transition:all .2s cubic-bezier(.12,.4,.29,1.46) .1s;content:' '}.ant-select-tree,.ant-tree{transition:background-color .3s}.ant-tree-checkbox-checked .ant-tree-checkbox-inner{background-color:#177ddc;border-color:#177ddc}.ant-tree-checkbox-disabled{cursor:not-allowed}.ant-tree-checkbox-disabled.ant-tree-checkbox-checked .ant-tree-checkbox-inner::after{border-color:rgba(255,255,255,.3);animation-name:none}.ant-tree-checkbox-disabled .ant-tree-checkbox-input{cursor:not-allowed;pointer-events:none}.ant-tree-checkbox-disabled .ant-tree-checkbox-inner{background-color:rgba(255,255,255,.08);border-color:#434343!important}.ant-tree-checkbox-disabled .ant-tree-checkbox-inner::after{border-color:rgba(255,255,255,.08);border-collapse:separate;animation-name:none}.ant-tree-checkbox-disabled+span{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-tree-checkbox-wrapper{margin:0;color:rgba(255,255,255,.85);display:inline-flex;align-items:baseline;line-height:unset;cursor:pointer}.ant-tree-checkbox-wrapper::after{display:inline-block;width:0;overflow:hidden;content:'\a0'}.ant-tree-checkbox-wrapper.ant-tree-checkbox-wrapper-disabled{cursor:not-allowed}.ant-tree-checkbox-wrapper+.ant-tree-checkbox-wrapper{margin-left:8px}.ant-tree-checkbox-wrapper.ant-tree-checkbox-wrapper-in-form-item input[type=checkbox]{width:14px;height:14px}.ant-tree-checkbox+span{padding-right:8px;padding-left:8px}.ant-tree,.ant-tree-checkbox-group{box-sizing:border-box;padding:0;color:rgba(255,255,255,.85);font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum}.ant-tree-checkbox-group{margin:0;display:inline-block}.ant-tree-checkbox-group-item{margin-right:8px}.ant-tree-checkbox-group-item:last-child{margin-right:0}.ant-tree-checkbox-group-item+.ant-tree-checkbox-group-item{margin-left:0}.ant-tree-checkbox-indeterminate .ant-tree-checkbox-inner{background-color:transparent;border-color:#434343}.ant-tree-checkbox-indeterminate .ant-tree-checkbox-inner::after{top:50%;left:50%;width:8px;height:8px;background-color:#177ddc;border:0;transform:translate(-50%,-50%) scale(1);opacity:1;content:' '}.ant-tree-checkbox-indeterminate.ant-tree-checkbox-disabled .ant-tree-checkbox-inner::after{background-color:rgba(255,255,255,.3);border-color:rgba(255,255,255,.3)}.ant-tree-checkbox-group-rtl .ant-tree-checkbox-group-item{margin-right:0;margin-left:8px}.ant-tree-checkbox-group-rtl .ant-tree-checkbox-group-item:last-child{margin-left:0!important}.ant-tree-checkbox-group-rtl .ant-tree-checkbox-group-item+.ant-tree-checkbox-group-item{margin-left:8px}.ant-tree{margin:0;background:0 0;border-radius:2px}.ant-tree-focused:not(:hover):not(.ant-tree-active-focused){background:#111b26}.ant-tree-list-holder-inner{align-items:flex-start}.ant-tree.ant-tree-block-node .ant-tree-list-holder-inner{align-items:stretch}.ant-tree.ant-tree-block-node .ant-tree-list-holder-inner .ant-tree-node-content-wrapper{flex:auto}.ant-tree.ant-tree-block-node .ant-tree-list-holder-inner .ant-tree-treenode.dragging{position:relative}.ant-tree.ant-tree-block-node .ant-tree-list-holder-inner .ant-tree-treenode.dragging::after{position:absolute;top:0;right:0;bottom:4px;left:0;border:1px solid #177ddc;opacity:0;animation:ant-tree-node-fx-do-not-use .3s;animation-play-state:running;animation-fill-mode:forwards;content:'';pointer-events:none}.ant-tree .ant-tree-treenode{display:flex;align-items:flex-start;padding:0 0 4px;outline:0}.ant-tree .ant-tree-treenode-disabled .ant-tree-node-content-wrapper{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-tree .ant-tree-treenode-disabled .ant-tree-node-content-wrapper:hover{background:0 0}.ant-tree .ant-tree-treenode-active .ant-tree-node-content-wrapper{background:rgba(255,255,255,.08)}.ant-tree .ant-tree-treenode:not(.ant-tree .ant-tree-treenode-disabled).filter-node .ant-tree-title{color:inherit;font-weight:500}.ant-tree-indent{align-self:stretch;white-space:nowrap;user-select:none}.ant-tree-indent-unit{display:inline-block;width:24px}.ant-tree-draggable-icon{width:24px;line-height:24px;text-align:center;opacity:.2;transition:opacity .3s}.ant-tree-treenode:hover .ant-tree-draggable-icon{opacity:.45}.ant-tree-switcher{position:relative;flex:none;align-self:stretch;width:24px;margin:0;line-height:24px;text-align:center;cursor:pointer;user-select:none}.ant-tree-switcher .ant-select-tree-switcher-icon,.ant-tree-switcher .ant-tree-switcher-icon{display:inline-block;font-size:10px;vertical-align:baseline}.ant-tree-switcher .ant-select-tree-switcher-icon svg,.ant-tree-switcher .ant-tree-switcher-icon svg{transition:transform .3s}.ant-tree-switcher-noop{cursor:default}.ant-tree-rtl .ant-tree-switcher_close .ant-tree-switcher-icon svg,.ant-tree-select-dropdown-rtl .ant-select-tree .ant-select-tree-switcher_close .ant-select-tree-switcher-icon svg{transform:rotate(90deg)}.ant-tree-switcher-loading-icon{color:#177ddc}.ant-tree-switcher-leaf-line{position:relative;z-index:1;display:inline-block;width:100%;height:100%}.ant-tree-switcher-leaf-line::before{position:absolute;top:0;right:12px;bottom:-4px;margin-left:-1px;border-right:1px solid #d9d9d9;content:' '}.ant-tree-switcher-leaf-line::after{position:absolute;width:10px;height:14px;border-bottom:1px solid #d9d9d9;content:' '}.ant-tree-checkbox{top:initial;margin:4px 8px 0 0}.ant-tree .ant-tree-node-content-wrapper{position:relative;z-index:auto;min-height:24px;margin:0;padding:0 4px;color:inherit;line-height:24px;background:0 0;border-radius:2px;cursor:pointer;transition:all .3s,border 0s,line-height 0s,box-shadow 0s}.ant-tree .ant-tree-node-content-wrapper:hover{background-color:rgba(255,255,255,.08)}.ant-tree .ant-tree-node-content-wrapper.ant-tree-node-selected{background-color:#11263c}.ant-tree .ant-tree-node-content-wrapper .ant-tree-iconEle{display:inline-block;width:24px;height:24px;line-height:24px;text-align:center;vertical-align:top}.ant-tree .ant-tree-node-content-wrapper .ant-tree-iconEle:empty,.ant-tree-show-line .ant-tree-indent-unit-end::before{display:none}.ant-tree-unselectable .ant-tree-node-content-wrapper:hover{background-color:transparent}.ant-tree-node-content-wrapper{line-height:24px;user-select:none}.ant-tree-node-content-wrapper .ant-tree-drop-indicator{position:absolute;z-index:1;height:2px;background-color:#177ddc;border-radius:1px;pointer-events:none}.ant-tree-node-content-wrapper .ant-tree-drop-indicator::after{position:absolute;top:-3px;left:-6px;width:8px;height:8px;background-color:transparent;border:2px solid #177ddc;border-radius:50%;content:''}.ant-tree .ant-tree-treenode.drop-container>[draggable]{box-shadow:0 0 0 2px #177ddc}.ant-tree-show-line .ant-tree-indent-unit{position:relative;height:100%}.ant-tree-show-line .ant-tree-indent-unit::before{position:absolute;top:0;right:12px;bottom:-4px;border-right:1px solid #434343;content:''}.ant-tree-show-line .ant-tree-switcher{background:#141414}.ant-tree-show-line .ant-tree-switcher-line-icon{vertical-align:-.15em}.ant-tree .ant-tree-treenode-leaf-last .ant-tree-switcher-leaf-line::before{top:auto!important;bottom:auto!important;height:14px!important}.ant-tree-rtl .ant-tree-node-content-wrapper[draggable=true] .ant-tree-drop-indicator::after{right:-6px;left:unset}.ant-tree-rtl.ant-tree-show-line .ant-tree-indent-unit::before{right:auto;left:-13px;border-right:none;border-left:1px solid #434343}.ant-tree-rtl .ant-tree-checkbox,.ant-tree-select-dropdown-rtl .ant-select-tree-checkbox{margin:4px 0 0 8px}.font-highlight{color:#a61d24}.ant-select-tree-checkbox,.ant-select-tree-checkbox-wrapper{box-sizing:border-box;padding:0;color:rgba(255,255,255,.85);font-size:14px;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum}.ant-tree-child-tree{overflow:hidden}nz-tree{display:block}.ant-select-tree-checkbox{position:relative;line-height:1;white-space:nowrap;outline:0;cursor:pointer}.ant-select-tree-checkbox-input:focus+.ant-select-tree-checkbox-inner,.ant-select-tree-checkbox-wrapper:hover .ant-select-tree-checkbox-inner,.ant-select-tree-checkbox:hover .ant-select-tree-checkbox-inner{border-color:#177ddc}.ant-select-tree-checkbox-checked::after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #177ddc;border-radius:2px;animation:antCheckboxEffect .36s ease-in-out;animation-fill-mode:backwards;content:''}.ant-color-picker,.ant-select-tree-checkbox-wrapper:hover .ant-select-tree-checkbox::after,.ant-select-tree-checkbox:hover::after{visibility:visible}.ant-select-tree-checkbox-inner{position:relative;top:0;left:0;display:block;width:16px;height:16px;direction:ltr;background-color:transparent;border:1px solid #434343;border-radius:2px;border-collapse:separate;transition:all .3s}.ant-select-tree-checkbox-inner::after{position:absolute;top:50%;left:21.5%;display:table;width:5.71px;height:9.14px;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(0) translate(-50%,-50%);opacity:0;transition:all .1s cubic-bezier(.71,-.46,.88,.6),opacity .1s;content:' '}.ant-select-tree-checkbox-input{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;cursor:pointer;opacity:0}.ant-select-tree-checkbox-checked .ant-select-tree-checkbox-inner::after{position:absolute;display:table;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(1) translate(-50%,-50%);opacity:1;transition:all .2s cubic-bezier(.12,.4,.29,1.46) .1s;content:' '}.ant-select-tree-checkbox-checked .ant-select-tree-checkbox-inner{background-color:#177ddc;border-color:#177ddc}.ant-select-tree-checkbox-disabled{cursor:not-allowed}.ant-select-tree-checkbox-disabled.ant-select-tree-checkbox-checked .ant-select-tree-checkbox-inner::after{border-color:rgba(255,255,255,.3);animation-name:none}.ant-select-tree-checkbox-disabled .ant-select-tree-checkbox-input{cursor:not-allowed;pointer-events:none}.ant-select-tree-checkbox-disabled .ant-select-tree-checkbox-inner{background-color:rgba(255,255,255,.08);border-color:#434343!important}.ant-select-tree-checkbox-disabled .ant-select-tree-checkbox-inner::after{border-color:rgba(255,255,255,.08);border-collapse:separate;animation-name:none}.ant-select-tree-checkbox-disabled+span{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-select-tree-checkbox-wrapper{margin:0;display:inline-flex;align-items:baseline;line-height:unset;cursor:pointer}.ant-select-tree,.ant-select-tree-checkbox-group{color:rgba(255,255,255,.85);line-height:1.5715;font-size:14px;font-feature-settings:tnum;list-style:none;box-sizing:border-box;font-variant:tabular-nums}.ant-select-tree-checkbox-wrapper::after{display:inline-block;width:0;overflow:hidden;content:'\a0'}.ant-select-tree-checkbox-wrapper.ant-select-tree-checkbox-wrapper-disabled{cursor:not-allowed}.ant-select-tree-checkbox-wrapper+.ant-select-tree-checkbox-wrapper{margin-left:8px}.ant-select-tree-checkbox-wrapper.ant-select-tree-checkbox-wrapper-in-form-item input[type=checkbox]{width:14px;height:14px}.ant-select-tree-checkbox+span{padding-right:8px;padding-left:8px}.ant-select-tree-checkbox-group{margin:0;padding:0;display:inline-block}.ant-select-tree-checkbox-group-item{margin-right:8px}.ant-select-tree-checkbox-group-item:last-child{margin-right:0}.ant-select-tree-checkbox-group-item+.ant-select-tree-checkbox-group-item{margin-left:0}.ant-select-tree-checkbox-indeterminate .ant-select-tree-checkbox-inner{background-color:transparent;border-color:#434343}.ant-select-tree-checkbox-indeterminate .ant-select-tree-checkbox-inner::after{top:50%;left:50%;width:8px;height:8px;background-color:#177ddc;border:0;transform:translate(-50%,-50%) scale(1);opacity:1;content:' '}.ant-select-tree-checkbox-indeterminate.ant-select-tree-checkbox-disabled .ant-select-tree-checkbox-inner::after{background-color:rgba(255,255,255,.3);border-color:rgba(255,255,255,.3)}.ant-select-tree-checkbox-group-rtl .ant-select-tree-checkbox-group-item{margin-right:0;margin-left:8px}.ant-select-tree-checkbox-group-rtl .ant-select-tree-checkbox-group-item:last-child{margin-left:0!important}.ant-select-tree-checkbox-group-rtl .ant-select-tree-checkbox-group-item+.ant-select-tree-checkbox-group-item{margin-left:8px}.ant-tree-select-dropdown{padding:8px 4px}.ant-tree-select-dropdown .ant-select-tree{border-radius:0}.ant-tree-select-dropdown .ant-select-tree-list-holder-inner{align-items:stretch}.ant-tree-select-dropdown .ant-select-tree-list-holder-inner .ant-select-tree-treenode .ant-select-tree-node-content-wrapper{flex:auto}.ant-select-tree{margin:0;padding:0;background:0 0;border-radius:2px}.ant-select-tree-focused:not(:hover):not(.ant-select-tree-active-focused){background:#111b26}.ant-select-tree-list-holder-inner{align-items:flex-start}.ant-select-tree.ant-select-tree-block-node .ant-select-tree-list-holder-inner{align-items:stretch}.ant-select-tree.ant-select-tree-block-node .ant-select-tree-list-holder-inner .ant-select-tree-node-content-wrapper{flex:auto}.ant-select-tree.ant-select-tree-block-node .ant-select-tree-list-holder-inner .ant-select-tree-treenode.dragging{position:relative}.ant-select-tree.ant-select-tree-block-node .ant-select-tree-list-holder-inner .ant-select-tree-treenode.dragging::after{position:absolute;top:0;right:0;bottom:4px;left:0;border:1px solid #177ddc;opacity:0;animation:ant-tree-node-fx-do-not-use .3s;animation-play-state:running;animation-fill-mode:forwards;content:'';pointer-events:none}.ant-select-tree .ant-select-tree-treenode{display:flex;align-items:flex-start;padding:0 0 4px;outline:0}.ant-select-tree .ant-select-tree-treenode-disabled .ant-select-tree-node-content-wrapper{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-select-tree .ant-select-tree-treenode-disabled .ant-select-tree-node-content-wrapper:hover{background:0 0}.ant-select-tree .ant-select-tree-treenode-active .ant-select-tree-node-content-wrapper{background:rgba(255,255,255,.08)}.ant-select-tree .ant-select-tree-treenode:not(.ant-select-tree .ant-select-tree-treenode-disabled).filter-node .ant-select-tree-title{color:inherit;font-weight:500}.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected .ant-picker-calendar-date .ant-picker-calendar-date-value,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected .ant-picker-calendar-date-today .ant-picker-calendar-date-value,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected:hover .ant-picker-calendar-date .ant-picker-calendar-date-value,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected:hover .ant-picker-calendar-date-today .ant-picker-calendar-date-value,.ant-select-tree-switcher-loading-icon{color:#177ddc}.ant-select-tree-indent{align-self:stretch;white-space:nowrap;user-select:none}.ant-select-tree-indent-unit{display:inline-block;width:24px}.ant-select-tree-draggable-icon{width:24px;line-height:24px;text-align:center;opacity:.2;transition:opacity .3s}.ant-select-tree-treenode:hover .ant-select-tree-draggable-icon{opacity:.45}.ant-select-tree-switcher{position:relative;flex:none;align-self:stretch;width:24px;margin:0;line-height:24px;text-align:center;cursor:pointer;user-select:none}.ant-select-tree-switcher .ant-select-tree-switcher-icon,.ant-select-tree-switcher .ant-tree-switcher-icon{display:inline-block;font-size:10px;vertical-align:baseline}.ant-select-tree-switcher .ant-select-tree-switcher-icon svg,.ant-select-tree-switcher .ant-tree-switcher-icon svg{transition:transform .3s}.ant-select-tree-switcher-noop{cursor:default}.ant-select-tree-switcher_close .ant-select-tree-switcher-icon svg{transform:rotate(-90deg)}.ant-select-tree-switcher-leaf-line{position:relative;z-index:1;display:inline-block;width:100%;height:100%}.ant-select-tree-switcher-leaf-line::before{position:absolute;top:0;right:12px;bottom:-4px;margin-left:-1px;border-right:1px solid #d9d9d9;content:' '}.ant-select-tree-switcher-leaf-line::after{position:absolute;width:10px;height:14px;border-bottom:1px solid #d9d9d9;content:' '}.ant-select-tree-checkbox{top:initial;margin:4px 8px 0 0}.ant-select-tree .ant-select-tree-node-content-wrapper{position:relative;z-index:auto;min-height:24px;margin:0;padding:0 4px;color:inherit;line-height:24px;background:0 0;border-radius:2px;cursor:pointer;transition:all .3s,border 0s,line-height 0s,box-shadow 0s}.ant-select-tree .ant-select-tree-node-content-wrapper:hover,.g2-mini-progress__wrap{background-color:rgba(255,255,255,.08)}.ant-select-tree .ant-select-tree-node-content-wrapper.ant-select-tree-node-selected{background-color:#11263c}.ant-select-tree .ant-select-tree-node-content-wrapper .ant-select-tree-iconEle{display:inline-block;width:24px;height:24px;line-height:24px;text-align:center;vertical-align:top}.ant-select-tree .ant-select-tree-node-content-wrapper .ant-select-tree-iconEle:empty,.ant-select-tree-show-line .ant-select-tree-indent-unit-end::before{display:none}.ant-select-tree-unselectable .ant-select-tree-node-content-wrapper:hover{background-color:transparent}.ant-select-tree-node-content-wrapper{line-height:24px;user-select:none}.ant-select-tree-node-content-wrapper .ant-tree-drop-indicator{position:absolute;z-index:1;height:2px;background-color:#177ddc;border-radius:1px;pointer-events:none}.ant-select-tree-node-content-wrapper .ant-tree-drop-indicator::after{position:absolute;top:-3px;left:-6px;width:8px;height:8px;background-color:transparent;border:2px solid #177ddc;border-radius:50%;content:''}.ant-select-tree .ant-select-tree-treenode.drop-container>[draggable]{box-shadow:0 0 0 2px #177ddc}.ant-select-tree-show-line .ant-select-tree-indent-unit{position:relative;height:100%}.ant-select-tree-show-line .ant-select-tree-indent-unit::before{position:absolute;top:0;right:12px;bottom:-4px;border-right:1px solid #434343;content:''}.ant-select-tree-show-line .ant-select-tree-switcher{background:#141414}.ant-select-tree-show-line .ant-select-tree-switcher-line-icon{vertical-align:-.15em}.ant-select-tree .ant-select-tree-treenode-leaf-last .ant-select-tree-switcher-leaf-line::before{top:auto!important;bottom:auto!important;height:14px!important}.ant-tree-select-dropdown-rtl .ant-select-tree .ant-select-tree-switcher-loading-icon{transform:scaleY(-1)}.ant-tree.ant-select-tree.ant-tree-show-line nz-tree-node[builtin]:not(:last-child)>li::before{content:' ';width:1px;border-left:1px solid #d9d9d9;height:calc(100% - 16px);position:absolute;left:12px;margin:26px 0}.ant-select-dropdown.ant-select-tree-dropdown{top:100%;left:0;position:relative;width:100%;margin-top:4px;margin-bottom:4px;overflow:auto}.ant-picker-calendar{box-sizing:border-box;margin:0;padding:0;color:rgba(255,255,255,.85);font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum;background:#141414}.ant-picker-calendar-header{display:flex;justify-content:flex-end;padding:12px 0}.ant-picker-calendar-header .ant-picker-calendar-year-select{min-width:80px}.ant-picker-calendar-header .ant-picker-calendar-month-select{min-width:70px;margin-left:8px}.ant-picker-calendar-header .ant-picker-calendar-mode-switch{margin-left:8px}.ant-picker-calendar .ant-picker-panel{background:#141414;border:0;border-top:1px solid #303030;border-radius:0}.ant-picker-calendar .ant-picker-panel .ant-picker-date-panel,.ant-picker-calendar .ant-picker-panel .ant-picker-month-panel{width:auto}.ant-picker-calendar .ant-picker-panel .ant-picker-body{padding:8px 0}.ant-picker-calendar .ant-picker-panel .ant-picker-content{width:100%}.ant-picker-calendar-mini{border-radius:2px}.ant-picker-calendar-mini .ant-picker-calendar-header{padding-right:8px;padding-left:8px}.ant-picker-calendar-mini .ant-picker-panel{border-radius:0 0 2px 2px}.ant-picker-calendar-mini .ant-picker-content{height:256px}.ant-picker-calendar-mini .ant-picker-content th{height:auto;padding:0;line-height:18px}.ant-picker-calendar-mini .ant-picker-cell::before{pointer-events:none}.ant-picker-calendar-full .ant-picker-panel{display:block;width:100%;text-align:right;background:#141414;border:0}.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell .ant-picker-calendar-date-today::before,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell::before{display:none}.ant-picker-calendar-full .ant-picker-panel .ant-picker-body td,.ant-picker-calendar-full .ant-picker-panel .ant-picker-body th{padding:0}.ant-picker-calendar-full .ant-picker-panel .ant-picker-body th{height:auto;padding:0 12px 5px 0;line-height:18px}.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell:hover .ant-picker-calendar-date{background:rgba(255,255,255,.08)}.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected .ant-picker-calendar-date,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected .ant-picker-calendar-date-today,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected:hover .ant-picker-calendar-date,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected:hover .ant-picker-calendar-date-today{background:#111b26}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date{display:block;width:auto;height:auto;margin:0 4px;padding:4px 8px 0;border:0;border-top:2px solid #303030;border-radius:0;transition:background .3s}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-value{line-height:24px;transition:color .3s}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-content{position:static;width:auto;height:86px;overflow-y:auto;color:rgba(255,255,255,.85);line-height:1.5715;text-align:left}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-today{border-color:#177ddc}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-today .ant-picker-calendar-date-value{color:rgba(255,255,255,.85)}@media only screen and (max-width:480px){.ant-picker-calendar-header{display:block}.ant-picker-calendar-header .ant-picker-calendar-year-select{width:50%}.ant-picker-calendar-header .ant-picker-calendar-month-select{width:calc(50% - 8px)}.ant-picker-calendar-header .ant-picker-calendar-mode-switch{width:100%;margin-top:8px;margin-left:0}.ant-picker-calendar-header .ant-picker-calendar-mode-switch>label{width:50%;text-align:center}}.ant-picker-calendar-rtl .ant-picker-calendar-header .ant-picker-calendar-mode-switch,.ant-picker-calendar-rtl .ant-picker-calendar-header .ant-picker-calendar-month-select{margin-right:8px;margin-left:0}.ant-picker-calendar-rtl.ant-picker-calendar-full .ant-picker-panel{text-align:left}.ant-picker-calendar-rtl.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-content,.drawer-footer{text-align:right}.ant-picker-calendar-rtl.ant-picker-calendar-full .ant-picker-panel .ant-picker-body th{padding:0 0 5px 12px}.ant-result{padding:48px 32px}.ant-result-success .ant-result-icon>.anticon{color:#49aa19}.ant-result-error .ant-result-icon>.anticon{color:#a61d24}.ant-result-info .ant-result-icon>.anticon{color:#177ddc}.ant-result-warning .ant-result-icon>.anticon{color:#d89614}.ant-result-image{width:250px;height:295px;margin:auto}.ant-result-icon{margin-bottom:24px;text-align:center}.ant-result-icon>.anticon{font-size:72px}.ant-result-title{color:rgba(255,255,255,.85);font-size:24px;line-height:1.8;text-align:center}.ant-result-subtitle{color:rgba(255,255,255,.45);font-size:14px;line-height:1.6;text-align:center}.ant-result-extra{margin:24px 0 0;text-align:center}.ant-result-extra>*{margin-right:8px}.ant-result-extra>:last-child{margin-right:0}.ant-result-content{margin-top:24px;padding:24px 40px}.ant-result-rtl .ant-result-extra>*{margin-right:0;margin-left:8px}.ant-result-rtl .ant-result-extra>:last-child{margin-left:0}nz-result{display:block}.ant-space{display:inline-flex}.ant-space-vertical{flex-direction:column}.ant-space-align-center{align-items:center}.ant-space-align-start{align-items:flex-start}.ant-space-align-end{align-items:flex-end}.ant-space-align-baseline{align-items:baseline}.ant-space-item:empty{display:none}nz-space-item{display:block}.ant-image{position:relative;display:inline-block}.ant-image-mask,.ant-image-placeholder{position:absolute;left:0;top:0;right:0;bottom:0}.ant-image-img{width:100%;height:auto;vertical-align:middle}.ant-image-img-placeholder{background-color:#f5f5f5;background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTQuNSAyLjVoLTEzQS41LjUgMCAwIDAgMSAzdjEwYS41LjUgMCAwIDAgLjUuNWgxM2EuNS41IDAgMCAwIC41LS41VjNhLjUuNSAwIDAgMC0uNS0uNXpNNS4yODEgNC43NWExIDEgMCAwIDEgMCAyIDEgMSAwIDAgMSAwLTJ6bTguMDMgNi44M2EuMTI3LjEyNyAwIDAgMS0uMDgxLjAzSDIuNzY5YS4xMjUuMTI1IDAgMCAxLS4wOTYtLjIwN2wyLjY2MS0zLjE1NmEuMTI2LjEyNiAwIDAgMSAuMTc3LS4wMTZsLjAxNi4wMTZMNy4wOCAxMC4wOWwyLjQ3LTIuOTNhLjEyNi4xMjYgMCAwIDEgLjE3Ny0uMDE2bC4wMTUuMDE2IDMuNTg4IDQuMjQ0YS4xMjcuMTI3IDAgMCAxLS4wMi4xNzV6IiBmaWxsPSIjOEM4QzhDIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz48L3N2Zz4=);background-repeat:no-repeat;background-position:center center;background-size:30%}.ant-image-mask{display:flex;align-items:center;justify-content:center;color:#fff;background:rgba(0,0,0,.5);cursor:pointer;opacity:0;transition:opacity .3s}.ant-image-mask:hover,.cdk-overlay-backdrop.ant-image-preview-mask{opacity:1}.ant-image-preview-img,.ant-image-preview-img-wrapper{transition:transform .3s cubic-bezier(.215,.61,.355,1) 0s}.ant-image-mask-info{padding:0 4px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-image-mask-info .anticon{margin-inline-end:4px}.ant-image-preview{pointer-events:none;height:100%;text-align:center}.ant-image-preview.ant-zoom-appear,.ant-image-preview.ant-zoom-enter{transform:none;opacity:0;animation-duration:.3s;user-select:none}.ant-image-preview-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;height:100%;background-color:rgba(0,0,0,.45)}.ant-image-preview-mask-hidden{display:none}.ant-image-preview-wrap{position:fixed;top:0;right:0;bottom:0;left:0;overflow:auto;outline:0;-webkit-overflow-scrolling:touch;z-index:1080}.ant-image-preview-body{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.ant-image-preview-img{max-width:100%;max-height:100%;vertical-align:middle;transform:scale3d(1,1,1);cursor:grab;user-select:none;pointer-events:auto}.ant-image-preview-img-wrapper{position:absolute;top:0;right:0;bottom:0;left:0}.ant-image-preview-img-wrapper::before{display:inline-block;width:1px;height:50%;margin-right:-1px;content:''}.ant-image-preview-moving .ant-image-preview-img{cursor:grabbing}.ant-image-preview-moving .ant-image-preview-img-wrapper{transition-duration:0s}.ant-image-preview-operations{box-sizing:border-box;margin:0;padding:0;font-size:14px;font-variant:tabular-nums;line-height:1.5715;font-feature-settings:tnum;position:absolute;top:0;right:0;z-index:1;display:flex;flex-direction:row-reverse;align-items:center;width:100%;color:rgba(255,255,255,.85);list-style:none;background:rgba(0,0,0,.1);pointer-events:auto}.ant-image-preview-operations-icon,.ant-image-preview-switch-left>.anticon,.ant-image-preview-switch-right>.anticon{font-size:18px}.ant-image-preview-operations-operation{margin-left:12px;padding:12px;cursor:pointer}.ant-image-preview-operations-operation-disabled{color:rgba(255,255,255,.25);pointer-events:none}.ant-image-preview-operations-operation:last-of-type{margin-left:0}.ant-image-preview-operations-progress{position:absolute;left:50%;transform:translateX(-50%)}.ant-image-preview-switch-left,.ant-image-preview-switch-right{position:absolute;top:50%;right:10px;z-index:1;display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin-top:-22px;color:rgba(255,255,255,.85);background:rgba(0,0,0,.1);cursor:pointer;pointer-events:auto}.ant-color-picker-color-block,.ant-color-picker-slider-alpha{background-image:conic-gradient(rgba(0,0,0,.06) 0 25%,transparent 0 50%,rgba(0,0,0,.06) 0 75%,transparent 0)}.ant-image-preview-switch-left-disabled,.ant-image-preview-switch-right-disabled{color:rgba(255,255,255,.25);cursor:not-allowed}.ant-image-preview-switch-left-disabled>.anticon,.ant-image-preview-switch-right-disabled>.anticon{cursor:not-allowed}.ant-image-preview-switch-left{left:10px}.ant-image-preview-switch-right{right:10px}.ant-cron-expression{display:flex;flex-wrap:nowrap}.ant-cron-expression-content{width:100%}.ant-cron-expression-content .ant-cron-expression-input-group-error-focus{box-shadow:0 0 0 2px rgba(166,29,36,.2)}.ant-cron-expression nz-cron-expression-input{width:20%}.ant-cron-expression-input-group{display:flex;flex-wrap:nowrap;align-items:center}.ant-cron-expression-input-group input{border:none!important;box-shadow:none!important;width:100%;outline:0;padding:0;border-radius:0}.ant-cron-expression-input-group-focus{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);outline:0}.ant-cron-expression nz-cron-expression-label{width:20%}.ant-cron-expression-label-group{display:flex;width:100%;flex-wrap:nowrap;justify-content:space-around;padding-top:0!important;padding-bottom:0!important}.ant-cron-expression-label-group-default{padding:0 12px}.ant-cron-expression-label-foucs{color:#177ddc}.ant-cron-expression-map{margin-left:12px}.ant-cron-expression-preview{display:flex;padding:12px}.ant-cron-expression-preview-dateTime{flex:1 1 auto;display:flex;align-items:center}.ant-cron-expression-preview-dateTime-center{justify-content:center}.ant-cron-expression-preview-content{flex:0 0 220px;display:flex;align-items:center;padding-left:16px}.ant-cron-expression-preview-content-date{flex:1 1 auto}.ant-cron-expression-preview-icon,.ant-cron-expression-preview-icon li,.ant-cron-expression-preview-list,.ant-cron-expression-preview-list li{list-style:none;margin:0;padding:0}.ant-cron-expression-preview-list{overflow-y:scroll;height:132px}.ant-cron-expression-preview-icon{height:100%}.ant-cron-expression-error{color:#a61d24}.ant-cron-expression-hint p{display:flex}.ant-cron-expression-hint span{display:inline-block;min-width:40px}.ant-qrcode{display:inline-block;position:relative;padding:12px}.ant-qrcode>canvas{display:block}.ant-qrcode-border{border-radius:2px;border:1px solid #303030}.ant-qrcode-mask{position:absolute;top:0;right:0;z-index:10;display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;text-align:center;background-color:rgba(255,255,255,.96)}.ant-color-picker-clear,.ant-color-picker-color-block,.ant-water-mark,.half-float{position:relative}.ant-qrcode-expired{color:rgba(0,0,0,.85)}.ant-color-picker{position:absolute;z-index:1;display:block;width:max-content;min-width:250px}.ant-color-picker-hidden{display:none}.ant-color-picker-panel{display:flex;flex-direction:column;width:250px;border-radius:2px}.ant-color-picker-panel-disabled{cursor:not-allowed}.ant-color-picker-select{margin-bottom:12px}.ant-color-picker-select .ant-color-picker-palette{min-height:160px;overflow:hidden;border-radius:2px}.ant-color-picker-select .ant-color-picker-palette>.ant-color-picker-gradient{border-top-left-radius:5px}.ant-color-picker-saturation{position:absolute;border-radius:inherit;top:0;left:0;right:0;bottom:0}.ant-color-picker-handler{box-sizing:border-box;width:16px;height:16px;border:1px solid #fff;border-radius:50%}.ant-color-picker-handler-sm{width:12px;height:12px}.ant-color-picker-slider{width:100%;margin-bottom:12px}.ant-color-picker-slider .ant-color-picker-palette{height:8px}.ant-color-picker-slider .ant-color-picker-gradient{border-radius:2px}.ant-color-picker-slider-alpha{background-size:8px 8px}.ant-color-picker-trigger{min-width:32px;height:32px;border-radius:2px;border:1px solid #303030;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;padding:3px}.ant-color-picker-trigger:hover{border-color:#177ddc}.ant-color-picker-trigger-text{margin:0 4px 0 8px;font-size:14px}.ant-color-picker-sm{min-width:24px;height:24px}.ant-color-picker-lg{min-width:40px;height:40px}.ant-color-picker-lg .ant-color-picker-trigger-text{font-size:16px}.ant-color-picker-color-block{width:28px;height:28px;margin-left:8px;background-size:50% 50%;overflow:hidden;border-radius:2px}.ant-color-picker-color-block-inner{box-sizing:border-box;width:100%;height:100%;border:1px solid #303030}.ant-color-picker-slider-container{display:flex}.ant-color-picker-slider-container .ant-color-picker-slider-group{flex:1}.ant-color-picker-slider-container .ant-color-picker-slider-group-disabled-alpha{display:flex;align-items:center}.ant-color-picker-slider-container .ant-color-picker-slider-group-disabled-alpha .ant-color-picker-slider{margin-bottom:0}.ant-color-picker-title{display:flex}.ant-color-picker-title-content{flex:1;margin-bottom:8px}.ant-color-picker-title .ant-color-picker-clear{flex:0 0 18px;margin-left:8px}.ant-color-picker-input-container .ant-color-picker-input,.search__form .ant-form-item-control{flex:1}.ant-color-picker-clear{width:18px;height:18px;border-radius:2px;border:1px solid #303030;cursor:pointer;overflow:hidden;margin-bottom:8px}.ant-color-picker-clear::after{content:"";position:absolute;inset-inline-end:1px;top:0;display:block;width:40px;height:2px;transform-origin:right;transform:rotate(-45deg);background-color:#f5222d}.ant-color-picker-input-container{display:flex}.ant-color-picker-input-container .ant-input,.ant-color-picker-input-container .ant-select{font-size:12px}.ant-color-picker-input-container .ant-input-number{font-size:12px;width:auto}.ant-color-picker-input-container .ant-input-number-sm input{padding:0 0 0 4px}.ant-color-picker-input-container .ant-select-selector{padding:0}.ant-color-picker-input-container .ant-color-picker-format-select{width:auto}.ant-color-picker-input-container .ant-color-picker-input .ant-color-picker-hex-input{padding:0;margin-right:4px}.ant-color-picker-input-container .ant-color-picker-input .ant-color-picker-hsb-input,.ant-color-picker-input-container .ant-color-picker-input .ant-color-picker-rgb-input{display:flex;gap:4px;align-items:center}.ant-color-picker-input-container .ant-color-picker-alpha-input,.ant-color-picker-input-container .ant-color-picker-steppers{flex:0 0 44px}.ant-color-picker-disabled{color:rgba(255,255,255,.3);background:rgba(255,255,255,.08);cursor:not-allowed}.ant-color-picker-disabled .ant-color-picker-trigger{cursor:not-allowed}.ant-color-picker-disabled .ant-color-picker-trigger:hover{border-color:#303030}.modal-header,.st .ant-table-tbody>tr .ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td,.sv__bordered,.sv__bordered .sv__item{border-bottom:1px solid #303030}.ant-color-picker-inline{display:inline-block}.ant-color-picker-inline .ant-color-picker-color-block{margin:0;width:24px;height:24px}.ant-color-picker-inline-lg .ant-color-picker-color-block{width:32px;height:32px}.ant-color-picker-inline-sm .ant-color-picker-color-block{width:16px;height:16px}sf+st{margin-top:16px}.ant-btn:not(.ant-btn-link)+.ant-btn,.ant-btn:not(.ant-btn-link)+nz-button-group,.ant-btn:not(.ant-btn-link)+nz-dropdown,.ant-btn:not(.ant-btn-link)+nz-popconfirm,nz-button-group+.ant-btn,nz-button-group+nz-popconfirm,nz-dropdown+.ant-btn,nz-popconfirm+.ant-btn,nz-popconfirm+nz-button-group,nz-popconfirm+nz-popconfirm{margin-left:8px}.ant-btn-group .ant-btn+.ant-btn{margin-left:-1px}.ant-transfer-operation .ant-btn+.ant-btn{margin-left:initial}[dir=rtl] .ant-btn+.ant-btn,[dir=rtl] .ant-btn+nz-button-group,[dir=rtl] .ant-btn+nz-dropdown,[dir=rtl] .ant-btn+nz-popconfirm,[dir=rtl] nz-button-group+.ant-btn,[dir=rtl] nz-button-group+nz-popconfirm,[dir=rtl] nz-dropdown+.ant-btn,[dir=rtl] nz-popconfirm+.ant-btn,[dir=rtl] nz-popconfirm+nz-button-group,[dir=rtl] nz-popconfirm+nz-popconfirm{margin-right:8px;margin-left:inherit}a:focus{text-decoration:none}.ant-card{margin-bottom:16px}.ant-card__body-nopadding .ant-card-body{padding:0!important}@media (min-width:300px){.ant-drawer-left .drawer-sm,.ant-drawer-right .drawer-sm{width:auto!important;max-width:300px}}@media (max-width:299px){.ant-drawer-left .drawer-sm,.ant-drawer-right .drawer-sm{width:100%!important}}@media (min-width:600px){.ant-drawer-left .drawer-md,.ant-drawer-right .drawer-md{width:auto!important;max-width:600px}}@media (max-width:599px){.ant-drawer-left .drawer-md,.ant-drawer-right .drawer-md{width:100%!important}}@media (min-width:900px){.ant-drawer-left .drawer-lg,.ant-drawer-right .drawer-lg{width:auto!important;max-width:900px}}@media (max-width:899px){.ant-drawer-left .drawer-lg,.ant-drawer-right .drawer-lg{width:100%!important}}@media (min-width:1200px){.ant-drawer-left .drawer-xl,.ant-drawer-right .drawer-xl{width:auto!important;max-width:1200px}}@media (max-width:1199px){.ant-drawer-left .drawer-xl,.ant-drawer-right .drawer-xl{width:100%!important}}@media (min-height:200px){.ant-drawer-bottom .drawer-sm,.ant-drawer-top .drawer-sm{height:auto!important;max-height:200px}}@media (max-height:199px){.ant-drawer-bottom .drawer-sm,.ant-drawer-top .drawer-sm{height:100%!important}}@media (min-height:400px){.ant-drawer-bottom .drawer-md,.ant-drawer-top .drawer-md{height:auto!important;max-height:400px}}@media (max-height:399px){.ant-drawer-bottom .drawer-md,.ant-drawer-top .drawer-md{height:100%!important}}@media (min-height:600px){.ant-drawer-bottom .drawer-lg,.ant-drawer-top .drawer-lg{height:auto!important;max-height:600px}}@media (max-height:599px){.ant-drawer-bottom .drawer-lg,.ant-drawer-top .drawer-lg{height:100%!important}}@media (min-height:800px){.ant-drawer-bottom .drawer-xl,.ant-drawer-top .drawer-xl{height:auto!important;max-height:800px}}@media (max-height:799px){.ant-drawer-bottom .drawer-xl,.ant-drawer-top .drawer-xl{height:100%!important}}.drawer-footer{position:absolute;bottom:0;left:0;width:100%;padding:10px 24px;background:#1f1f1f;border-top:1px solid #303030;border-radius:0 0 2px 2px}.ant-form-item-label em{color:#bfbfbf}.ant-form-item-control em{margin-left:8px}[dir=rtl] .ant-form-item-control em{margin-right:8px;margin-left:inherit}@media (min-width:576px){.modal-sm .ant-modal{width:auto!important;max-width:300px}}@media (min-width:768px){.modal-md .ant-modal{width:auto!important;max-width:600px}}@media (min-width:992px){.modal-lg .ant-modal{width:auto!important;max-width:900px}}@media (min-width:1600px){.modal-xl .ant-modal{width:auto!important;max-width:1200px}}.modal-header{display:flex;justify-content:space-between;margin:-24px -24px 24px;padding:16px 24px;background:#141414;border-radius:2px 2px 0 0}.modal-footer,.notice-icon__clear{border-radius:0 0 2px 2px;border-top:1px solid #303030}.modal-title{margin:0;color:rgba(255,255,255,.85);font-weight:500;font-size:16px;line-height:22px;word-wrap:break-word}.modal-title small{margin-left:8px;color:#8c8c8c;font-size:12px}.modal-spin{display:block;min-height:150px;line-height:150px;text-align:center}.modal-footer{margin:24px -24px -24px;padding:10px 16px;text-align:right}.modal-include-tabs nz-tabset{margin-top:-16px}.modal-body-nopadding .ant-modal-body{padding:0!important}.MODAL-DRAG-HANDLE{cursor:move}.ant-table td .img,.ant-table td>img{max-width:32px;max-height:32px;vertical-align:middle;border-radius:4px}.ant-table td .img:not(:last-child),.ant-table td>img:not(:last-child){margin-right:4px}.ant-table-rep__hide-header-footer .ant-table-footer,.ant-table-rep__hide-header-footer .ant-table-title,.ant-table-rep__title{display:none}[dir=rtl] .ant-table td .img,[dir=rtl] .ant-table td>img{margin-right:inherit;margin-left:4px}@media screen and (max-width:767px){.ant-table-rep__title{display:inline-block;width:100px;padding-right:8px;color:rgba(0,0,0,.5);text-align:right}.ant-table-rep__hide-header-footer .ant-table-footer,.ant-table-rep__hide-header-footer .ant-table-title{display:block}.ant-table-rep .ant-table table{table-layout:auto!important}.ant-table-rep .ant-table col,.ant-table-rep .ant-table table{width:100%!important;min-width:auto!important}.ant-table-rep .ant-table-thead{display:none}.ant-table-rep .ant-table-title{text-align:center;background:#303030}.ant-table-rep .ant-table-tbody>tr:nth-child(4n+3){background:#f9f9f9}.ant-table-rep .ant-table-tbody>tr>td{display:flex;align-items:center;width:100%;padding:8px;white-space:inherit;text-align:left!important;border-bottom:none}.ant-table-rep .ant-table-tbody>tr>td .ant-table-rep__title+:not(.ant-avatar){flex:1;word-break:break-all}}.ant-tag__plus .ant-tag{background:#fff;border-style:dashed}.tag-wrap-list-spacing{margin-top:-8px}.tag-wrap-list-spacing .ant-tag{margin-top:8px}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small{font-size:65%}.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small{font-size:75%}.h1{font-size:34px}.h2{font-size:26px}.h3{font-size:22px}.h4{font-size:18px}.h5{font-size:16px}.h6{font-size:14px}.list-styled{list-style:inherit;padding-right:18px;padding-left:0}.list-unstyled{list-style:none;padding-right:0;padding-left:inherit}fieldset{border:none}.display-1{font-size:32px}.display-2{font-size:24px}.display-3{font-size:20px}.search__form .ant-form-item{margin-right:0;margin-bottom:24px}.half-float img{display:block;max-width:100%;height:auto}.half-float .half-float-bottom{position:absolute;left:50%;z-index:2}.half-float.half-float-sm{margin-bottom:42px}.half-float.half-float-sm .half-float-bottom{bottom:-32px;width:64px;height:64px;margin-left:-32px}.half-float.half-float-md{margin-bottom:50px}.half-float.half-float-md .half-float-bottom{bottom:-40px;width:80px;height:80px;margin-left:-40px}.half-float.half-float-lg{margin-bottom:58px}.half-float.half-float-lg .half-float-bottom{bottom:-48px;width:96px;height:96px;margin-left:-48px}.row-masonry{position:relative;width:100%;margin:0;padding:0;column-gap:16px}.row-masonry>.col-masonry{display:inline-block;width:100%;min-height:1em;margin-bottom:15px}.sf__array>.ant-form-item,.sf__title{margin-bottom:8px}.row-masonry img{max-width:100%}@media only screen and (min-width:480px){.row-masonry-xs-1{column-count:1;columns:1}.row-masonry-xs-2{column-count:2;columns:2}.row-masonry-xs-3{column-count:3;columns:3}.row-masonry-xs-4{column-count:4;columns:4}.row-masonry-xs-5{column-count:5;columns:5}.row-masonry-xs-6{column-count:6;columns:6}.row-masonry-xs-7{column-count:7;columns:7}.row-masonry-xs-8{column-count:8;columns:8}.row-masonry-xs-9{column-count:9;columns:9}}@media only screen and (min-width:576px){.row-masonry-sm-1{column-count:1;columns:1}.row-masonry-sm-2{column-count:2;columns:2}.row-masonry-sm-3{column-count:3;columns:3}.row-masonry-sm-4{column-count:4;columns:4}.row-masonry-sm-5{column-count:5;columns:5}.row-masonry-sm-6{column-count:6;columns:6}.row-masonry-sm-7{column-count:7;columns:7}.row-masonry-sm-8{column-count:8;columns:8}.row-masonry-sm-9{column-count:9;columns:9}}@media only screen and (min-width:768px){.row-masonry-md-1{column-count:1;columns:1}.row-masonry-md-2{column-count:2;columns:2}.row-masonry-md-3{column-count:3;columns:3}.row-masonry-md-4{column-count:4;columns:4}.row-masonry-md-5{column-count:5;columns:5}.row-masonry-md-6{column-count:6;columns:6}.row-masonry-md-7{column-count:7;columns:7}.row-masonry-md-8{column-count:8;columns:8}.row-masonry-md-9{column-count:9;columns:9}}@media only screen and (min-width:992px){.row-masonry-lg-1{column-count:1;columns:1}.row-masonry-lg-2{column-count:2;columns:2}.row-masonry-lg-3{column-count:3;columns:3}.row-masonry-lg-4{column-count:4;columns:4}.row-masonry-lg-5{column-count:5;columns:5}.row-masonry-lg-6{column-count:6;columns:6}.row-masonry-lg-7{column-count:7;columns:7}.row-masonry-lg-8{column-count:8;columns:8}.row-masonry-lg-9{column-count:9;columns:9}}@media only screen and (min-width:1200px){.row-masonry-xl-1{column-count:1;columns:1}.row-masonry-xl-2{column-count:2;columns:2}.row-masonry-xl-3{column-count:3;columns:3}.row-masonry-xl-4{column-count:4;columns:4}.row-masonry-xl-5{column-count:5;columns:5}.row-masonry-xl-6{column-count:6;columns:6}.row-masonry-xl-7{column-count:7;columns:7}.row-masonry-xl-8{column-count:8;columns:8}.row-masonry-xl-9{column-count:9;columns:9}}.header-dropdown{background-color:#1f1f1f;border-radius:4px}@media screen and (max-width:480px){.header-dropdown{right:0!important;left:0!important;width:100%!important;border-radius:0!important}}.sf{display:block}.sf__optional{margin-left:2px;color:rgba(0,0,0,.35)}.sf__fixed{display:flex}.sf__fixed .ant-form-item-control-wrapper{flex:1}.sf__title{padding:0 16px;font-weight:700;text-align:left}.sf__object-card .ant-card-body{padding-left:0}.sf__object-card .sf__fixed{flex-wrap:wrap}.sf__object-card-fold .ant-card-body{display:none}.sf__array-add{margin-right:16px}.sf__array-container .ant-card{margin:0 16px 16px 0}.sf__array-container .ant-card-body{padding-bottom:0}.sf__array-container .ant-card .sf__array-remove{position:absolute;top:-16px;right:-16px;display:none;width:32px;height:32px;font-size:20px;line-height:32px;text-align:center;background:rgba(0,0,0,.26);border-radius:50%;cursor:pointer}.sf__array-container .ant-card .sf__array-remove i{color:#fff}.sf__array-container .ant-card:hover .sf__array-remove{display:block}@media (max-width:767px){.sf__array>.ant-form-item>.ant-form-item-control-wrapper,.sf__array>.ant-form-item>.ant-form-item-label{flex:0 0 100%;max-width:100%}.sf__array>.ant-form-item>.ant-form-item-label{display:flex;margin-bottom:8px}.sf__array-container .ant-card{margin-right:0}.sf__array-container .ant-card .sf__array-remove{right:8px;display:block}.sf__array-container>.sf__array-item{flex:0 0 100%;max-width:100%}}.sf .ant-upload-select-picture-card i{color:#999;font-size:32px}.sf .ant-upload.ant-upload-drag{height:180px}.sf .ant-transfer-list-header label{position:unset}.sf .ant-transfer .ant-btn+.ant-btn{margin-left:0}.sf__no-error .ant-form-item{margin-bottom:8px}.sf__inline .sf__item{display:inline-block;margin-bottom:8px;vertical-align:top}.sf__inline .ant-form-inline>.sf__item,.sf__inline .sf__array-container .ant-card-body>.sf__item{margin-bottom:0}.sf__inline .ant-form-inline .ant-select{min-width:100px}.sf__inline .sf__array-container>.sf__array-item{flex:initial;width:100%;max-width:100%}.sf__inline .sf__array-container .ant-card{margin:0}.sf__inline .sf__array-container .ant-card-body{padding:8px 0 0 8px}.sf__inline .sf-btns{display:inline-block;margin-right:0}@media (max-width:767px){.sf__inline .sf__item{display:block;width:100%}.sf__inline .sf__item .ant-form-item{display:block!important;width:initial!important;margin-right:0}.sf__inline .ant-form-item-control,.sf__inline .ant-form-item-label{display:block!important;padding:inherit}}.sf__horizontal .ant-form-item-label>label{display:flex;justify-content:flex-end}.sf__horizontal .sf__label-text{overflow:hidden;text-overflow:ellipsis}@media (max-width:767px){.sf__horizontal .ant-form-item-label>label{justify-content:flex-start}}.sf__no-colon .ant-form-item-label label::after{content:' '}.sf__compact .ant-form-item{margin-bottom:8px}.sf__compact .sf__array-container .ant-card{margin:0 8px 8px 0}.sf__compact .sf__array-item .ant-card-body{padding:8px}.pl0,.px0,[dir=rtl] .pr0{padding-left:0!important}.sf__item .ant-cascader-picker,.sf__item .ant-select{width:100%}.acl__hide{display:none!important}.setting-drawer__content{position:relative;min-height:100%;background:#1f1f1f}.setting-drawer__body-item{display:flex;align-items:center;justify-content:space-between;padding-top:12px;padding-bottom:12px}.setting-drawer__body-item:first-child{padding-top:0}.setting-drawer__body-item:last-child{padding-bottom:0}.pb0,.py0{padding-bottom:0!important}.setting-drawer__title{margin-bottom:12px;color:rgba(255,255,255,.85);font-size:14px;line-height:22px}.setting-drawer__theme{margin-top:24px;overflow:hidden}.setting-drawer__theme-tag{float:left;width:20px;height:20px;margin-right:8px;color:#fff;font-weight:700;text-align:center;border-radius:2px;cursor:pointer}.setting-drawer__handle{position:fixed;top:240px;right:0;z-index:999;display:flex;align-items:center;justify-content:center;width:48px;height:48px;font-size:16px;text-align:center;background:#177ddc;border-radius:4px 0 0 4px;cursor:pointer;transition:right .3s cubic-bezier(.9,0,.3,.7);pointer-events:auto}.setting-drawer__handle-icon{color:#fff;font-size:20px}.setting-drawer__handle-opened{right:500px;z-index:1001}.setting-drawer-rtl .setting-drawer__handle{right:inherit;left:0;border-radius:0 4px 4px 0}.setting-drawer-rtl .setting-drawer__handle-opened{right:inherit;left:500px}.theme-btn .ant-avatar{color:#000;background-color:#fff;transition:color .3s}.theme-btn .ant-avatar:hover,.yn__yes{color:#177ddc}.bg-blue-dark-h,.bg-blue-h,.bg-blue-light-h,.bg-cyan-dark-h,.bg-cyan-h,.bg-cyan-light-h,.bg-error-h,.bg-geekblue-dark-h,.bg-geekblue-h,.bg-geekblue-light-h,.bg-gold-dark-h,.bg-gold-h,.bg-gold-light-h,.bg-green-dark-h,.bg-green-h,.bg-green-light-h,.bg-grey-dark-h,.bg-grey-darker-h,.bg-grey-h,.bg-grey-light-h,.bg-grey-lighter-h,.bg-highlight-h,.bg-info-h,.bg-lime-dark-h,.bg-lime-h,.bg-lime-light-h,.bg-magenta-dark-h,.bg-magenta-h,.bg-magenta-light-h,.bg-normal-h,.bg-orange-dark-h,.bg-orange-h,.bg-orange-light-h,.bg-primary-h,.bg-processing-h,.bg-purple-dark-h,.bg-purple-h,.bg-purple-light-h,.bg-red-dark-h,.bg-red-h,.bg-red-light-h,.bg-success-h,.bg-volcano-dark-h,.bg-volcano-h,.bg-volcano-light-h,.bg-warning-h,.bg-yellow-dark-h,.bg-yellow-h,.bg-yellow-light-h{transition:background-color .3s}.theme-btn-rtl{right:inherit;left:32px}.yn__no,.yn__yes{display:inline-flex;align-items:center;font-style:normal}.yn__no span,.yn__yes span{margin-left:4px}.yn__no{color:#8c8c8c}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.border{border:1px solid #303030!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-1{border:1px solid #303030!important}.rounded-md,.rounded-sm{border-radius:2px}.rounded-top-left-md,.rounded-top-left-sm{border-top-left-radius:2px}.rounded-top-right-md,.rounded-top-right-sm{border-top-right-radius:2px}.rounded-bottom-left-md,.rounded-bottom-left-sm{border-bottom-left-radius:2px}.rounded-bottom-right-md,.rounded-bottom-right-sm{border-bottom-right-radius:2px}.border-top-1{border-top:1px solid #303030!important}.border-right-1{border-right:1px solid #303030!important}.border-bottom-1{border-bottom:1px solid #303030!important}.border-left-1{border-left:1px solid #303030!important}.border-red{border-color:#d32029!important}.border-volcano{border-color:#d84a1b!important}.border-orange{border-color:#d87a16!important}.border-gold{border-color:#d89614!important}.border-yellow{border-color:#d8bd14!important}.border-lime{border-color:#8bbb11!important}.border-green{border-color:#49aa19!important}.border-cyan{border-color:#13a8a8!important}.border-blue{border-color:#177ddc!important}.border-geekblue{border-color:#2b4acb!important}.border-purple{border-color:#642ab5!important}.border-magenta{border-color:#cb2b83!important}.border-grey{border-color:#bfbfbf!important}.border-primary{border-color:#177ddc!important}.border-success{border-color:#49aa19!important}.border-error{border-color:#a61d24!important}.border-warning{border-color:#d89614!important}.border-info,.border-processing{border-color:#177ddc!important}.border-highlight{border-color:#a61d24!important}.border-normal{border-color:#d9d9d9!important}.rounded-lg{border-radius:4px}.rounded-top-left-lg{border-top-left-radius:4px}.rounded-top-right-lg{border-top-right-radius:4px}.rounded-bottom-left-lg{border-bottom-left-radius:4px}.rounded-bottom-right-lg{border-bottom-right-radius:4px}.rounded-circle{border-radius:50%}.rounded-0{border-radius:0}.border-white{border-color:#fff!important}.rotate-360{transform:rotate(360deg)}.rotate-345{transform:rotate(345deg)}.rotate-330{transform:rotate(330deg)}.rotate-315{transform:rotate(315deg)}.rotate-300{transform:rotate(300deg)}.rotate-285{transform:rotate(285deg)}.rotate-270{transform:rotate(270deg)}.rotate-255{transform:rotate(255deg)}.rotate-240{transform:rotate(240deg)}.rotate-225{transform:rotate(225deg)}.rotate-210{transform:rotate(210deg)}.rotate-195{transform:rotate(195deg)}.rotate-180{transform:rotate(180deg)}.rotate-165{transform:rotate(165deg)}.rotate-150{transform:rotate(150deg)}.rotate-135{transform:rotate(135deg)}.rotate-120{transform:rotate(120deg)}.rotate-105{transform:rotate(105deg)}.rotate-90{transform:rotate(90deg)}.rotate-75{transform:rotate(75deg)}.rotate-60{transform:rotate(60deg)}.rotate-45{transform:rotate(45deg)}.rotate-30{transform:rotate(30deg)}.rotate-15{transform:rotate(15deg)}code{font-size:90%;background-color:#f7f7f7;border:1px solid #eee;border-radius:2px}.bg-white{background-color:#fff!important}.bg-transparent{background-color:transparent!important}.text-white{color:#fff!important}.text-hover{cursor:pointer}.text-hover:hover{color:#177ddc!important}.bg-red-light{background-color:#a61d24!important}.bg-red{background-color:#d32029!important}.bg-red-dark{background-color:#e84749!important}.bg-red-light-h:hover{background-color:#a61d24!important}.bg-red-h:hover{background-color:#d32029!important}.bg-red-dark-h:hover{background-color:#e84749!important}.text-red-light{color:#a61d24!important}.text-red{color:#d32029!important}.text-red-dark{color:#e84749!important}.bg-volcano-light{background-color:#aa3e19!important}.bg-volcano{background-color:#d84a1b!important}.bg-volcano-dark{background-color:#e87040!important}.bg-volcano-light-h:hover{background-color:#aa3e19!important}.bg-volcano-h:hover{background-color:#d84a1b!important}.bg-volcano-dark-h:hover{background-color:#e87040!important}.text-volcano-light{color:#aa3e19!important}.text-volcano{color:#d84a1b!important}.text-volcano-dark{color:#e87040!important}.bg-orange-light{background-color:#aa6215!important}.bg-orange{background-color:#d87a16!important}.bg-orange-dark{background-color:#e89a3c!important}.bg-orange-light-h:hover{background-color:#aa6215!important}.bg-orange-h:hover{background-color:#d87a16!important}.bg-orange-dark-h:hover{background-color:#e89a3c!important}.text-orange-light{color:#aa6215!important}.text-orange{color:#d87a16!important}.text-orange-dark{color:#e89a3c!important}.bg-gold-light{background-color:#aa7714!important}.bg-gold{background-color:#d89614!important}.bg-gold-dark{background-color:#e8b339!important}.bg-gold-light-h:hover{background-color:#aa7714!important}.bg-gold-h:hover{background-color:#d89614!important}.bg-gold-dark-h:hover{background-color:#e8b339!important}.text-gold-light{color:#aa7714!important}.text-gold{color:#d89614!important}.text-gold-dark{color:#e8b339!important}.bg-yellow-light{background-color:#aa9514!important}.bg-yellow{background-color:#d8bd14!important}.bg-yellow-dark{background-color:#e8d639!important}.bg-yellow-light-h:hover{background-color:#aa9514!important}.bg-yellow-h:hover{background-color:#d8bd14!important}.bg-yellow-dark-h:hover{background-color:#e8d639!important}.text-yellow-light{color:#aa9514!important}.text-yellow{color:#d8bd14!important}.text-yellow-dark{color:#e8d639!important}.bg-lime-light{background-color:#6f9412!important}.bg-lime{background-color:#8bbb11!important}.bg-lime-dark{background-color:#a9d134!important}.bg-lime-light-h:hover{background-color:#6f9412!important}.bg-lime-h:hover{background-color:#8bbb11!important}.bg-lime-dark-h:hover{background-color:#a9d134!important}.text-lime-light{color:#6f9412!important}.text-lime{color:#8bbb11!important}.text-lime-dark{color:#a9d134!important}.bg-green-light{background-color:#3c8618!important}.bg-green{background-color:#49aa19!important}.bg-green-dark{background-color:#6abe39!important}.bg-green-light-h:hover{background-color:#3c8618!important}.bg-green-h:hover{background-color:#49aa19!important}.bg-green-dark-h:hover{background-color:#6abe39!important}.text-green-light{color:#3c8618!important}.text-green{color:#49aa19!important}.text-green-dark{color:#6abe39!important}.bg-cyan-light{background-color:#138585!important}.bg-cyan{background-color:#13a8a8!important}.bg-cyan-dark{background-color:#33bcb7!important}.bg-cyan-light-h:hover{background-color:#138585!important}.bg-cyan-h:hover{background-color:#13a8a8!important}.bg-cyan-dark-h:hover{background-color:#33bcb7!important}.text-cyan-light{color:#138585!important}.text-cyan{color:#13a8a8!important}.text-cyan-dark{color:#33bcb7!important}.bg-blue-light{background-color:#1765ad!important}.bg-blue{background-color:#177ddc!important}.bg-blue-dark{background-color:#3c9ae8!important}.bg-blue-light-h:hover{background-color:#1765ad!important}.bg-blue-h:hover{background-color:#177ddc!important}.bg-blue-dark-h:hover{background-color:#3c9ae8!important}.text-blue-light{color:#1765ad!important}.text-blue{color:#177ddc!important}.text-blue-dark{color:#3c9ae8!important}.bg-geekblue-light{background-color:#263ea0!important}.bg-geekblue{background-color:#2b4acb!important}.bg-geekblue-dark{background-color:#5273e0!important}.bg-geekblue-light-h:hover{background-color:#263ea0!important}.bg-geekblue-h:hover{background-color:#2b4acb!important}.bg-geekblue-dark-h:hover{background-color:#5273e0!important}.text-geekblue-light{color:#263ea0!important}.text-geekblue{color:#2b4acb!important}.text-geekblue-dark{color:#5273e0!important}.bg-purple-light{background-color:#51258f!important}.bg-purple{background-color:#642ab5!important}.bg-purple-dark{background-color:#854eca!important}.bg-purple-light-h:hover{background-color:#51258f!important}.bg-purple-h:hover{background-color:#642ab5!important}.bg-purple-dark-h:hover{background-color:#854eca!important}.text-purple-light{color:#51258f!important}.text-purple{color:#642ab5!important}.text-purple-dark{color:#854eca!important}.bg-magenta-light{background-color:#a02669!important}.bg-magenta{background-color:#cb2b83!important}.bg-magenta-dark{background-color:#e0529c!important}.bg-magenta-light-h:hover{background-color:#a02669!important}.bg-magenta-h:hover{background-color:#cb2b83!important}.bg-magenta-dark-h:hover{background-color:#e0529c!important}.text-magenta-light{color:#a02669!important}.text-magenta{color:#cb2b83!important}.text-magenta-dark{color:#e0529c!important}.bg-grey-light{background-color:#d9d9d9!important}.bg-grey{background-color:#bfbfbf!important}.bg-grey-dark{background-color:#8c8c8c!important}.bg-grey-light-h:hover{background-color:#d9d9d9!important}.bg-grey-h:hover{background-color:#bfbfbf!important}.bg-grey-dark-h:hover{background-color:#8c8c8c!important}.text-grey-light{color:#d9d9d9!important}.text-grey{color:#bfbfbf!important}.text-grey-dark{color:#8c8c8c!important}.bg-primary-light{background-color:#3c9be8!important}.bg-primary{background-color:#177ddc!important}.bg-primary-dark{background-color:#095cb5!important}.bg-primary-h:hover{background-color:#177ddc!important}.text-primary-light{color:#3c9be8!important}.text-primary{color:#177ddc!important}.text-primary-dark{color:#095cb5!important}.bg-success-light{background-color:#67b839!important}.bg-success{background-color:#49aa19!important}.bg-success-dark{background-color:#31850d!important}.bg-success-h:hover{background-color:#49aa19!important}.text-success-light{color:#67b839!important}.text-success{color:#49aa19!important}.text-success-dark{color:#31850d!important}.bg-error-light{background-color:#b33b3d!important}.bg-error{background-color:#a61d24!important}.bg-error-dark{background-color:#800f19!important}.bg-error-h:hover{background-color:#a61d24!important}.text-error-light{color:#b33b3d!important}.text-error{color:#a61d24!important}.text-error-dark{color:#800f19!important}.bg-warning-light{background-color:#e6b239!important}.bg-warning{background-color:#d89614!important}.bg-warning-dark{background-color:#b37407!important}.bg-warning-h:hover{background-color:#d89614!important}.text-warning-light{color:#e6b239!important}.text-warning{color:#d89614!important}.text-warning-dark{color:#b37407!important}.bg-info-light{background-color:#3c9be8!important}.bg-info{background-color:#177ddc!important}.bg-info-dark{background-color:#095cb5!important}.bg-info-h:hover{background-color:#177ddc!important}.text-info-light{color:#3c9be8!important}.text-info{color:#177ddc!important}.text-info-dark{color:#095cb5!important}.bg-processing-light{background-color:#3c9be8!important}.bg-processing{background-color:#177ddc!important}.bg-processing-dark{background-color:#095cb5!important}.bg-processing-h:hover{background-color:#177ddc!important}.text-processing-light{color:#3c9be8!important}.text-processing{color:#177ddc!important}.text-processing-dark{color:#095cb5!important}.bg-highlight-light{background-color:#b33b3d!important}.bg-highlight{background-color:#a61d24!important}.bg-highlight-dark{background-color:#800f19!important}.bg-highlight-h:hover{background-color:#a61d24!important}.text-highlight-light{color:#b33b3d!important}.text-highlight{color:#a61d24!important}.text-highlight-dark{color:#800f19!important}.bg-normal-light{background-color:#e6d8d8!important}.bg-normal{background-color:#d9d9d9!important}.bg-normal-dark{background-color:#b3a8a8!important}.bg-normal-h:hover{background-color:#d9d9d9!important}.bg-grey-lighter,.bg-grey-lighter-h:hover{background-color:#f5f5f5!important}.text-normal-light{color:#e6d8d8!important}.text-normal{color:#d9d9d9!important}.text-normal-dark{color:#b3a8a8!important}.bg-grey-darker,.bg-grey-darker-h:hover{background-color:#262626!important}.text-grey-lighter{color:#f5f5f5!important}.text-grey-darker{color:#262626!important}.d-none{display:none!important}.d-block{display:block!important}.d-inline-block{display:inline-block!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}.flex-center,.flex-center-between{display:flex!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center,.flex-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}.flex-1{flex:1!important}.flex-column{flex-direction:column!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-center-between{align-items:center!important;justify-content:space-between!important}.float-none{float:none!important}.float-left{float:left!important}.float-right{float:right!important}.icon-sm{font-size:28px!important}.icon-md{font-size:56px!important}.icon-lg{font-size:84px!important}.icon-xl{font-size:112px!important}.icon-xxl{font-size:140px!important}.img-fluid{max-width:100%;height:auto}.point{cursor:pointer}.no-resize{min-width:100%;max-width:100%;resize:none}.no-data{color:rgba(0,0,0,.25);font-size:16px;line-height:64px;text-align:center}.no-data i{position:relative;top:3px;margin-right:16px;font-size:24px}.block-center{margin:0 auto}.mr0,.mx0{margin-right:0!important}.ml0,.mx0{margin-left:0!important}.mt0,.my0{margin-top:0!important}.mb0,.my0{margin-bottom:0!important}.bg-center{background-position:center center;background-size:cover}.page-loading{position:absolute;inset:0;z-index:10000;padding-top:200px;text-align:center;background:rgba(255,255,255,.08)}.pt0,.py0{padding-top:0!important}.color-weak{display:block;filter:invert(80%)}.disabled{color:rgba(255,255,255,.3);pointer-events:none}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.fixed-bottom,.fixed-top{position:fixed;z-index:9;right:0;left:0}.fixed-top{top:0}.fixed-bottom{bottom:0}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}@media (max-width:575px){.hidden-xs{display:none!important}}@media (max-width:991px){.hidden-md{display:none!important}}@media (max-width:1199px){.hidden-lg{display:none!important}}@media (max-width:1599px){.hidden-xl{display:none!important}}@media (min-width:768px){.hidden-pc{display:none!important}}.m0{margin:0!important}.mr-xs,.mx-xs{margin-right:4px!important}.ml-xs,.mx-xs{margin-left:4px!important}.mt-xs,.my-xs{margin-top:4px!important}.mb-xs,.my-xs{margin-bottom:4px!important}.p0{padding:0!important}.pr0{padding-right:0!important}.px0{padding-right:0!important}.pr-xs,.px-xs{padding-right:4px!important}.pl-xs,.px-xs{padding-left:4px!important}.pt-xs,.py-xs{padding-top:4px!important}.pb-xs,.py-xs{padding-bottom:4px!important}.m-xs{margin:4px!important}.mr-sm,.mx-sm{margin-right:8px!important}.ml-sm,.mx-sm{margin-left:8px!important}.mt-sm,.my-sm{margin-top:8px!important}.mb-sm,.my-sm{margin-bottom:8px!important}.p-xs{padding:4px!important}.pr-sm,.px-sm{padding-right:8px!important}.pl-sm,.px-sm,[dir=rtl] .pr-sm{padding-left:8px!important}.pt-sm,.py-sm{padding-top:8px!important}.pb-sm,.py-sm{padding-bottom:8px!important}.m-sm{margin:8px!important}.mr-md,.mx-md{margin-right:16px!important}.ml-md,.mx-md{margin-left:16px!important}.mt-md,.my-md{margin-top:16px!important}.mb-md,.my-md{margin-bottom:16px!important}.p-sm{padding:8px!important}.pr-md,.px-md{padding-right:16px!important}.pl-md,.px-md{padding-left:16px!important}.pt-md,.py-md{padding-top:16px!important}.pb-md,.py-md{padding-bottom:16px!important}.m-md{margin:16px!important}.mr-lg,.mx-lg{margin-right:24px!important}.ml-lg,.mx-lg{margin-left:24px!important}.mt-lg,.my-lg{margin-top:24px!important}.mb-lg,.my-lg{margin-bottom:24px!important}.p-md{padding:16px!important}.pr-lg,.px-lg{padding-right:24px!important}.pl-lg,.px-lg,[dir=rtl] .pr-lg{padding-left:24px!important}.pt-lg,.py-lg{padding-top:24px!important}.pb-lg,.py-lg{padding-bottom:24px!important}.m-lg{margin:24px!important}.mr-xl,.mx-xl{margin-right:32px!important}.ml-xl,.mx-xl{margin-left:32px!important}.mt-xl,.my-xl{margin-top:32px!important}.mb-xl,.my-xl{margin-bottom:32px!important}.p-lg{padding:24px!important}.pr-xl,.px-xl{padding-right:32px!important}.pl-xl,.px-xl{padding-left:32px!important}.pt-xl,.py-xl{padding-top:32px!important}.pb-xl,.py-xl{padding-bottom:32px!important}.m-xl{margin:32px!important}.mr-xxl,.mx-xxl{margin-right:48px!important}.ml-xxl,.mx-xxl{margin-left:48px!important}.mt-xxl,.my-xxl{margin-top:48px!important}.mb-xxl,.my-xxl{margin-bottom:48px!important}.p-xl{padding:32px!important}.pr-xxl,.px-xxl{padding-right:48px!important}.pl-xxl,.px-xxl,[dir=rtl] .pr-xxl{padding-left:48px!important}.pt-xxl,.py-xxl{padding-top:48px!important}.pb-xxl,.py-xxl{padding-bottom:48px!important}.m-xxl{margin:48px!important}.p-xxl{padding:48px!important}[dir=rtl] .mr0{margin-left:0!important;margin-right:inherit!important}[dir=rtl] .ml0{margin-right:0!important;margin-left:inherit!important}[dir=rtl] .pr0{padding-right:inherit!important}[dir=rtl] .pl0{padding-right:0!important;padding-left:inherit!important}[dir=rtl] .mr-xs{margin-left:4px!important;margin-right:inherit!important}[dir=rtl] .ml-xs{margin-right:4px!important;margin-left:inherit!important}[dir=rtl] .pr-xs{padding-left:4px!important;padding-right:inherit!important}[dir=rtl] .pl-xs{padding-right:4px!important;padding-left:inherit!important}[dir=rtl] .mr-sm{margin-left:8px!important;margin-right:inherit!important}[dir=rtl] .ml-sm{margin-right:8px!important;margin-left:inherit!important}[dir=rtl] .pr-sm{padding-right:inherit!important}[dir=rtl] .pl-sm{padding-right:8px!important;padding-left:inherit!important}[dir=rtl] .mr-md{margin-left:16px!important;margin-right:inherit!important}[dir=rtl] .ml-md{margin-right:16px!important;margin-left:inherit!important}[dir=rtl] .pr-md{padding-left:16px!important;padding-right:inherit!important}[dir=rtl] .pl-md{padding-right:16px!important;padding-left:inherit!important}[dir=rtl] .mr-lg{margin-left:24px!important;margin-right:inherit!important}[dir=rtl] .ml-lg{margin-right:24px!important;margin-left:inherit!important}[dir=rtl] .pr-lg{padding-right:inherit!important}[dir=rtl] .pl-lg{padding-right:24px!important;padding-left:inherit!important}[dir=rtl] .mr-xl{margin-left:32px!important;margin-right:inherit!important}[dir=rtl] .ml-xl{margin-right:32px!important;margin-left:inherit!important}[dir=rtl] .pr-xl{padding-left:32px!important;padding-right:inherit!important}[dir=rtl] .pl-xl{padding-right:32px!important;padding-left:inherit!important}[dir=rtl] .mr-xxl{margin-left:48px!important;margin-right:inherit!important}[dir=rtl] .ml-xxl{margin-right:48px!important;margin-left:inherit!important}[dir=rtl] .pr-xxl{padding-right:inherit!important}[dir=rtl] .pl-xxl{padding-right:48px!important;padding-left:inherit!important}.text-left{text-align:left!important}.text-center{text-align:center!important}.text-right,[dir=rtl] .text-left{text-align:right!important}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.text-nowrap{white-space:nowrap!important}.text-wrap{white-space:pre-wrap!important}.text-truncate{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.font-weight-normal{font-weight:400}.code-box-code-copy.anticon-check,.font-weight-bold,.hljs-strong,.se__title,.token.bold,.token.important{font-weight:700}.text-xs{font-size:12px!important}.text-sm{font-size:14px!important}.text-md{font-size:16px!important}.text-lg{font-size:18px!important}.text-xl{font-size:22px!important}.text-xxl{font-size:28px!important}[dir=rtl] .text-right{text-align:left!important}.width-xs{width:80px!important}.max-width-xs{max-width:80px!important}.min-width-xs{min-width:80px!important}.width-sm{width:160px!important}.max-width-sm{max-width:160px!important}.min-width-sm{min-width:160px!important}.width-md{width:240px!important}.max-width-md{max-width:240px!important}.min-width-md{min-width:240px!important}.width-lg{width:320px!important}.max-width-lg{max-width:320px!important}.min-width-lg{min-width:320px!important}.width-xl{width:400px!important}.max-width-xl{max-width:400px!important}.min-width-xl{min-width:400px!important}.width-xxl{width:480px!important}.max-width-xxl{max-width:480px!important}.min-width-xxl{min-width:480px!important}.width-10{width:10%!important}.max-width-10{max-width:10%!important}.min-width-10{min-width:10%!important}.width-20{width:20%!important}.max-width-20{max-width:20%!important}.min-width-20{min-width:20%!important}.width-30{width:30%!important}.max-width-30{max-width:30%!important}.min-width-30{min-width:30%!important}.width-40{width:40%!important}.max-width-40{max-width:40%!important}.min-width-40{min-width:40%!important}.width-50{width:50%!important}.max-width-50{max-width:50%!important}.min-width-50{min-width:50%!important}.width-60{width:60%!important}.max-width-60{max-width:60%!important}.min-width-60{min-width:60%!important}.width-70{width:70%!important}.max-width-70{max-width:70%!important}.min-width-70{min-width:70%!important}.width-80{width:80%!important}.max-width-80{max-width:80%!important}.min-width-80{min-width:80%!important}.width-90{width:90%!important}.max-width-90{max-width:90%!important}.min-width-90{min-width:90%!important}.width-100{width:100%!important}.max-width-100{max-width:100%!important}.min-width-100{min-width:100%!important}@media (max-width:767px){.hidden-mobile,.hidden-sm{display:none!important}.max-width-sm,.min-width-sm,.width-sm{width:100%!important}}.scrollbar{overflow:auto}.scrollbar-x{overflow:auto hidden}.scrollbar-y{overflow:hidden auto}.ant-anchor-wrapper,.ant-dialog-wrap,.ant-drawer-body,.ant-drawer-wrapper-body,.scrollbar,body,textarea.ant-input{scrollbar-color:rgba(0,0,0,.3) #6e6e6e;scrollbar-width:thin}.ant-anchor-wrapper::-webkit-scrollbar,.ant-dialog-wrap::-webkit-scrollbar,.ant-drawer-body::-webkit-scrollbar,.ant-drawer-wrapper-body::-webkit-scrollbar,.scrollbar::-webkit-scrollbar,body::-webkit-scrollbar,textarea.ant-input::-webkit-scrollbar{width:6px;height:6px}.ant-anchor-wrapper::-webkit-scrollbar-track,.ant-dialog-wrap::-webkit-scrollbar-track,.ant-drawer-body::-webkit-scrollbar-track,.ant-drawer-wrapper-body::-webkit-scrollbar-track,.scrollbar::-webkit-scrollbar-track,body::-webkit-scrollbar-track,textarea.ant-input::-webkit-scrollbar-track{box-shadow:inset 0 0 6px rgba(0,0,0,.3)}.alain-default__search .ant-input:focus,.st__filter-date .ant-picker-panel-container{box-shadow:none}.ant-anchor-wrapper::-webkit-scrollbar-thumb,.ant-dialog-wrap::-webkit-scrollbar-thumb,.ant-drawer-body::-webkit-scrollbar-thumb,.ant-drawer-wrapper-body::-webkit-scrollbar-thumb,.scrollbar::-webkit-scrollbar-thumb,body::-webkit-scrollbar-thumb,textarea.ant-input::-webkit-scrollbar-thumb{background-color:#6e6e6e;outline:#333 solid 1px}.st{display:block}.st__p-left .ant-table-pagination{display:block;float:none;text-align:left}.st__p-center .ant-table-pagination{display:block;float:none;text-align:center}.st__btn-sub .st__btn-text{width:100%;color:inherit}.st__btn-disabled .st__btn-text{color:rgba(0,0,0,.25);pointer-events:none}.st .nz-resizable-handle{display:flex;align-items:center;justify-content:center}.st .nz-resizable-handle>i{width:1px;height:60%;background:#434343}.st .nz-resizable-preview{border-width:0 1px 0 0}.st .nz-resizable.ant-table-column-has-sorters .nz-resizable-handle{margin-right:8px}.st .ant-table~nz-pagination>.ant-pagination{margin-bottom:0}.st__filter-keyword{padding:8px}.st__filter-date .ant-picker-panel-container .ant-picker-panel{border:none}.st__has-filter .ant-table-column-sorters{padding-right:16px}.st__has-filter .st__filter{position:absolute;top:0;right:0;bottom:0;display:flex;place-items:center center}.st__has-filter .ant-table-filter-trigger{height:100%}.st__has-filter.ant-table-column-has-sorters .st__filter{right:-32px}.st__head-optional,.st__head-tip{margin-left:2px;color:rgba(0,0,0,.35)}.st .ant-table-thead>tr>th .ant-table-filter-selected.ant-table-filter-icon{color:#177ddc}.st__checkall-selection{display:inline-block;margin-left:4px}.st .ant-table-tbody>tr .ant-table-wrapper:only-child .ant-table{margin:0}.st .text-truncate.ant-table-cell-fix-left-first::after,.st .text-truncate.ant-table-cell-fix-left-last::after{transform:translateX(80%)}.st .text-truncate.ant-table-cell-fix-right-first::after,.st .text-truncate.ant-table-cell-fix-right-last::after{transform:translateX(-80%)}.st__no-column .ant-table{height:100px}.st__no-column .ant-table-content{display:none}.sv,.sv__container{display:block}.st__row-class .ant-table-tbody>tr>td .ant-table-cell-fix-left,.st__row-class .ant-table-tbody>tr>td .ant-table-cell-fix-right{background:inherit}@media screen and (min-width:768px){.st__width-strict .ant-table-body>table,.st__width-strict .ant-table-content>table{word-wrap:break-word!important;table-layout:fixed!important}}.sv+.sv{margin-top:16px}.sv__container .ant-row{margin-bottom:-16px;overflow:hidden}.code-box,.sv__item+.ant-divider{margin:0 0 16px}.sv__item-fixed{display:flex}.sv__item-fixed .sv__label{flex:0 0 auto;overflow:hidden;text-align:right;text-overflow:ellipsis}.sv__item-fixed .sv__detail{flex:1 0 0}.sv__title{display:block;float:none;clear:both;width:100%;margin-bottom:16px;color:rgba(255,255,255,.85);font-weight:500;font-size:14px}.sv__detail,.sv__label{display:table-cell;padding-bottom:16px;line-height:22px}.sv__label{color:rgba(0,0,0,.5);white-space:nowrap}.sv__label:not(.sv__label-empty)::after{position:relative;top:-.5px;margin:0 8px 0 2px;content:':'}.sv__label-optional{margin-left:2px;color:rgba(0,0,0,.35)}.sv__label-optional-no-text{margin-left:0}.sv__label-optional>.anticon{margin-left:2px}.sv__detail{width:100%;color:rgba(255,255,255,.85);vertical-align:top;word-break:break-all}.se__line,.sv__small .sv__detail,.sv__small .sv__label,.sv__vertical .sv__label{padding-bottom:8px}.sv__type-primary .sv__detail{color:#177ddc}.sv__type-success .sv__detail{color:#49aa19}.sv__type-danger .sv__detail{color:#a61d24}.sv__type-warning .sv__detail{color:#d89614}.sv__default::before{content:'-'}.sv__default~.sv__unit{display:none!important}.sv__unit{display:inline;margin-left:8px;color:#8c8c8c}.sv__small .ant-row{margin-bottom:-8px}.sv__small .sv__title{margin-bottom:12px;color:rgba(255,255,255,.85)}.sv__value{display:inline-flex;align-items:center}.sv__value-prefix,.sv__value-unit{color:rgba(0,0,0,.5);font-size:12px;font-style:normal}.sv__value-prefix{padding-right:3px}.sv__value-text{font-size:18px}.sv__value-unit{padding-left:3px}.sv__value:not(:first-child){position:relative;margin-left:8px;padding-left:14px}.sv__value:not(:first-child)::before{position:absolute;left:0;width:6px;color:rgba(0,0,0,.5);content:'/'}.sv__value-small .sv__value-text{font-size:14px}.sv__value-large .sv__value-text{font-size:24px}.sv__large .sv__title{font-size:16px}.sv__horizontal .sv__label-width{display:flex;justify-content:flex-end}.se__title,.sv__vertical .sv__detail,.sv__vertical .sv__label{display:block}.sv__horizontal .sv__label-width .sv__label-text{overflow:hidden;text-overflow:ellipsis}.sv__no-colon::after{content:' '!important}.sv__bordered{overflow:hidden;border-top:1px solid #303030;border-left:1px solid #303030}.sv__bordered .sv__label{background-color:rgba(255,255,255,.04)}.sv__bordered .sv__detail,.sv__bordered .sv__label{padding:12px 24px}.sv__bordered.sv__large .sv__detail,.sv__bordered.sv__large .sv__label{padding:16px 24px}.sv__bordered.sv__small .sv__detail,.sv__bordered.sv__small .sv__label{padding:8px 16px}.se__title{float:none;clear:both;width:100%;color:rgba(255,255,255,.85);font-size:14px;line-height:1.5715}.se__item{transition:none}.se__item:last-child{margin-bottom:0;padding-bottom:0}.se__item-empty::before{display:inline-block;content:''}.se__item+.ant-divider{margin:0 0 24px}.se__label{display:table-cell;flex:0 0 auto;width:initial;white-space:nowrap;text-align:right}.se__label-optional{margin-left:2px;color:rgba(0,0,0,.35)}.se__label-optional-no-text{margin-left:0}.se__label-optional>.anticon{margin-left:2px}.se__control{flex:1 0 0;width:100%}.se__compact>.se__item,.se__compact>.se__title{margin-bottom:8px}.se__compact>.se__item+.ant-divider,.se__compact>.se__title+.ant-divider{margin:0 0 8px}.se__compact .ant-form-item-extra{display:none}.se__line{border-bottom:1px dashed #303030}.se__hide-label .se__nolabel,.se__inline .se__nolabel,.se__vertical .se__nolabel{display:none!important}.se__horizontal>.se__item{display:flex}.se__horizontal>.se__item:last-child{margin-bottom:0}.se__horizontal>.se__item .se__label{display:flex;justify-content:flex-end}.se__horizontal>.se__item .se__label-text{overflow:hidden;text-overflow:ellipsis}.se__horizontal>.se__item .ant-form-item-required::before{line-height:inherit}.se__horizontal>.se__item .ant-form-item-label>label::after{margin-left:4px}.se__vertical>.se__item{display:block;width:100%}.se__inline .ant-form-item-label,.se__inline .se__control{display:inline-block;width:initial!important;text-align:left;vertical-align:top}.se__inline>.se__item{margin-right:16px}.se__inline>.se__item[col='1']{flex-basis:auto;width:100%}.se__inline>.se__item:last-child{margin-right:0}.se__no-colon::after{content:' '!important}@media (max-width:767px){.se__horizontal>.se__item{display:block}.se__horizontal>.se__item .ant-form-item-label{width:100%!important;text-align:left}.se__horizontal>.se__item .se__label{justify-content:normal}.se__horizontal .se__control,.se__horizontal .se__label,.se__vertical .se__control,.se__vertical .se__label{width:100%!important}}.avatar-list,.avatar-list__item,.avatar-list__wrap{display:inline-block}.avatar-list__wrap{margin-left:8px;padding:0;font-size:0}.avatar-list__item{width:32px;height:32px;margin-left:-8px;font-size:14px}.avatar-list__item .ant-avatar{border:1px solid #fff;cursor:pointer}.avatar-list__large{width:40px;height:40px}.avatar-list__small{width:24px;height:24px}.avatar-list__mini{width:20px;height:20px}.avatar-list__mini .ant-avatar{width:20px;height:20px;line-height:20px}.avatar-list__mini .ant-avatar-string{font-size:12px;line-height:18px}ellipsis{display:inline}.ellipsis{display:inline-block;width:100%;overflow:hidden;word-break:break-all}.ellipsis__lines{position:relative}.ellipsis__line-clamp{position:relative;display:-webkit-box;overflow:hidden;text-overflow:ellipsis}.ellipsis__shadow{position:absolute;z-index:-999;display:block;color:transparent;opacity:0}.error-collect{color:#f5222d;cursor:pointer}.error-collect__count{padding-left:8px}.error-collect-rtl{padding-right:0;padding-left:24px}.error-collect-rtl .error-collect__count{padding-right:8px;padding-left:0}.exception{display:flex;align-items:center;height:100%}.exception__img-block{flex:0 0 62.5%;width:62.5%;padding-right:152px;zoom:1}.exception__img-block::after,.exception__img-block::before{display:table;content:' '}.exception__img-block::after{clear:both;height:0;font-size:0}.exception__img{float:right;width:100%;max-width:430px;height:360px;background-repeat:no-repeat;background-position:50% 50%;background-size:100% 100%}.exception__cont{flex:auto}.alain-default__nav-middle,.footer-toolbar__left{flex:1}.exception__cont-title{margin-bottom:24px;color:#434e59;font-weight:600;font-size:72px;line-height:72px}.exception__cont-desc{margin-bottom:16px;color:rgba(255,255,255,.45);font-size:20px;line-height:28px}.exception__cont-actions .ant-btn:not(:last-child){margin-right:8px}@media screen and (max-width:1200px){.exception__img-block{padding-right:88px}}@media screen and (max-width:576px){.exception{display:block;text-align:center}.exception__img-block{margin:0 auto 24px;padding-right:0}}@media screen and (max-width:480px){.exception__img-block{margin-bottom:-24px;overflow:hidden}}.exception-rtl .exception__cont-actions .ant-btn:not(:last-child){margin-right:0}.footer-toolbar{position:fixed;right:0;bottom:0;z-index:9;display:flex;width:100%;height:56px;padding:0 24px;line-height:56px;background:#fff;border-top:1px solid #303030;box-shadow:0 -1px 2px rgba(0,0,0,.03);transition:all .3s}.full-content{display:block;height:100%;overflow:auto}.full-content__body{overflow:hidden}.global-footer{display:block;margin:48px 0 24px;padding:0 16px;text-align:center}.global-footer__links{margin-bottom:8px}.global-footer__links-item{display:inline-block;color:rgba(255,255,255,.45);transition:all .3s}.global-footer__links-item:not(:last-child){margin-right:40px}.global-footer__links-item:hover{color:rgba(255,255,255,.85)}.global-footer__copyright{color:rgba(255,255,255,.45);font-size:14px}.global-footer-rtl .global-footer__links-item:not(:last-child){margin-right:inherit;margin-left:40px}.notice-icon{width:336px}.notice-icon__btn{display:inline-block;cursor:pointer;transition:all .3s}.notice-icon .ant-popover-inner-content{padding:0}.notice-icon .ant-tabs-bar{margin-bottom:4px}.notice-icon__tab-left .ant-tabs-nav-list .ant-tabs-tab:first-child{margin-left:32px}.notice-icon .ant-list{max-height:400px;overflow:auto}.notice-icon .ant-list-item{padding-right:24px;padding-left:24px;overflow:hidden;cursor:pointer;transition:all .3s}.page-header,.page-header .ant-tabs-bar{border-bottom:1px solid #303030}.notice-icon .ant-list-item:hover{background:#111b26}.notice-icon .ant-list-item-meta{width:100%}.notice-icon .ant-list-item-meta-title{margin-bottom:8px;font-weight:400}.notice-icon .ant-list-item .ant-avatar{margin-top:4px;background:#fff}.notice-icon__notfound{padding:73px 0 88px;color:rgba(255,255,255,.45);text-align:center}.notice-icon__clear,.notice-icon__clear:hover{color:rgba(255,255,255,.85)}.notice-icon__notfound-img{display:inline-block;height:76px;margin-bottom:16px}.notice-icon__clear{height:46px;line-height:46px;text-align:center;cursor:pointer;transition:all .3s}.notice-icon__item-desc,.notice-icon__item-time{font-size:12px;line-height:1.5715}.notice-icon__item .ant-badge-count{top:-10px}.notice-icon__item-read{opacity:.4}.notice-icon__item-time{margin-top:4px}.notice-icon__item-extra{float:right;margin-top:-1.5px;margin-right:0;color:rgba(255,255,255,.45);font-weight:400}.page-header{display:block;padding:24px;background-color:#fff}.page-header__wide{max-width:1200px;margin:auto}.page-header .ant-breadcrumb{margin-bottom:16px}.page-header .ant-tabs{margin:0 0 -17px}.page-header__detail{display:flex}.page-header__row{display:flex;width:100%}.page-header__logo{flex:0 1 auto;margin-right:16px;padding-top:1px}.page-header__logo img{display:block;width:28px;height:28px;border-radius:2px}.page-header__title{color:rgba(255,255,255,.85);font-weight:500;font-size:20px}.page-header__title small{padding-left:8px;color:rgba(255,255,255,.4);font-weight:400;font-size:14px}.page-header__action{min-width:266px;margin-left:56px}.page-header__desc,.page-header__title{flex:auto}.page-header__action,.page-header__extra,.page-header__main{flex:0 1 auto}.page-header__main{width:100%}.page-header__action,.page-header__desc,.page-header__extra,.page-header__logo,.page-header__title{margin-bottom:16px}.page-header__action,.page-header__extra{display:flex;justify-content:flex-end}.page-header__extra{min-width:242px;margin-left:88px}@media screen and (max-width:1200px){.page-header__extra{margin-left:44px}}@media screen and (max-width:992px){.page-header__extra{margin-left:20px}}@media screen and (max-width:768px){.page-header__row{display:block}.page-header__action,.page-header__extra{justify-content:start;margin-left:0}}@media screen and (max-width:576px){.page-header__detail{display:block}}@media screen and (max-width:480px){.page-header__action .ant-btn,.page-header__action .ant-btn-group{display:block;margin-bottom:8px}.page-header__action .ant-input-search-enter-button .ant-btn{margin-bottom:0}.page-header__action .ant-btn-group>.ant-btn{display:inline-block;margin-bottom:0}}.page-header-rtl .page-header__logo{margin-right:0;margin-left:16px}.page-header-rtl .page-header__title small{padding-right:8px;padding-left:0}.page-header-rtl .page-header__action{margin-right:56px;margin-left:0}.page-header-rtl .page-header__extra{margin-right:88px;margin-left:0}@media screen and (max-width:1200px){.page-header-rtl .page-header__extra{margin-right:44px;margin-left:0}}@media screen and (max-width:992px){.page-header-rtl .page-header__extra{margin-right:20px;margin-left:0}}.quick-menu{position:fixed;right:-1px;left:auto;z-index:11;display:block;backface-visibility:hidden;transition:margin .3s cubic-bezier(1,0,0,1)}.quick-menu,.quick-menu__ctrl{background-color:#fff;border:1px solid #fff;box-shadow:0 6px 16px -8px rgba(0,0,0,.32),0 9px 28px 0 rgba(0,0,0,.2),0 12px 48px 16px rgba(0,0,0,.12)}.quick-menu__inner{position:relative;padding:0 12px}.quick-menu__ctrl{position:absolute;top:-1px;left:-50px;width:50px;height:50px;text-align:center;border-right:0;border-radius:3px 0 0 3px;cursor:pointer}.quick-menu__ctrl-icon{font-size:20px;line-height:49px}.result{display:block;width:72%;margin:0 auto;text-align:center}.result__icon{margin-bottom:24px;font-size:72px;line-height:72px}.result__icon-success{color:#49aa19}.result__icon-error{color:#a61d24}.result__title{margin-bottom:16px;color:rgba(255,255,255,.85);font-weight:500;font-size:24px;line-height:32px}.result__desc{margin-bottom:24px;color:rgba(255,255,255,.45);font-size:14px;line-height:22px}.result__extra{padding:24px 40px;text-align:left;background:#fafafa;border-radius:2px}@media screen and (max-width:480px){.result{width:100%}.result__extra{padding:18px 20px}}.result__actions{margin-top:32px}.result__actions button:not(:last-child){margin-right:8px}.result .ant-steps .ant-steps-head,.result .ant-steps .ant-steps-title{background:#fafafa}.reuse-tab{display:block;background-color:#fff;outline:0;user-select:none}.reuse-tab .ant-tabs-nav .ant-tabs-tab .reuse-tab__op{position:absolute;display:none;margin:0;color:rgba(255,255,255,.85);font-size:10px}.reuse-tab .ant-tabs-nav .ant-tabs-tab:hover .reuse-tab__op{display:block}.reuse-tab .ant-tabs-nav .ant-tabs-tab .reuse-tab__name-width{display:inline-block;overflow:hidden;text-overflow:ellipsis}.reuse-tab .ant-tabs>.ant-tabs-nav{margin:0}.reuse-tab__line{padding:8px;border-bottom:1px solid #d9d9d9}.reuse-tab__line .ant-tabs-nav::before{border-bottom:none}.reuse-tab__line .ant-tabs-nav .ant-tabs-tab{padding:0}.reuse-tab__line .ant-tabs-nav .ant-tabs-tab .reuse-tab__op{top:12px;right:2px}.reuse-tab__line .ant-tabs-nav .ant-tabs-tab .reuse-tab__name{display:inline-block;padding:8px 20px}.reuse-tab__card{padding-top:8px}.reuse-tab__card .ant-tabs-nav-container{padding:0 8px}.reuse-tab__card .ant-tabs-nav .ant-tabs-tab .reuse-tab__op{top:4px;right:4px}.reuse-tab__disabled{opacity:.8;pointer-events:none}.reuse-tab__cm .ant-menu{border:1px solid #e9e9e9}.tag-select{position:relative;display:block;max-height:38px;margin-top:-16px;margin-left:-8px;overflow:hidden;line-height:1.5715;transition:all .3s;user-select:none}.tag-select__expanded{max-height:200px;transition:all .3s}.tag-select__has-expand{padding-right:50px}.tag-select .ant-tag{margin-top:16px;margin-right:24px}.tag-select__trigger{position:absolute;top:0;right:0;display:flex;align-items:center;margin-right:0!important;color:#177ddc}.tag-select__trigger>.anticon{margin-left:2px;font-size:8px;transition:transform .24s}.tag-select-rtl{margin-right:-8px;margin-left:0}.tag-select-rtl__has-expand{padding-right:0!important;padding-left:50px!important}.tag-select-rtl .tag-select .ant-tag{margin-right:0;margin-left:24px}.tag-select-rtl .tag-select__trigger{right:initial;left:0}.tag-select-rtl .tag-select__trigger-icon{margin-right:0;margin-left:8px}.down-file__not-support{display:none}.loading-backdrop{z-index:9999;background-color:rgba(0,0,0,.15);opacity:1}.loading-default{position:fixed;inset:0;z-index:10000;display:flex;flex-direction:column;align-items:center;justify-content:center}.g2-mini-progress,.g2-pie,g2,g2-bar,g2-chart,g2-custom,g2-gauge,g2-mini-area,g2-mini-bar,g2-single-bar,g2-tag-cloud,g2-timeline{display:block}.loading-default__icon{margin-bottom:8px;color:#177ddc;font-size:24px}.loading-default__text{color:#177ddc}.loading-default__custom{width:64px;height:64px;fill:#fff}.onboarding+.cdk-overlay-container{z-index:99999}.onboarding__mask{position:fixed;inset:0;z-index:99998;background-color:#000;opacity:.5}.onboarding__item,.onboarding__light,.pdf-container{position:absolute}.onboarding__light{z-index:99999;background-color:rgba(255,255,255,.9);animation:2.5s cubic-bezier(.55,.05,.6,.2) 0s infinite normal none running onboardingAnt;pointer-events:none}.onboarding__light-el{z-index:100000!important}.onboarding__light-ant{transition:all .3s ease-out}.onboarding__footer{margin-top:8px}.onboarding__total{color:rgba(255,255,255,.85)}@keyframes onboardingAnt{0%,33%{box-shadow:#fff 0 0 0 2px,#fff 0 0 0}100%,66%{box-shadow:#fff 0 0 0 2px,rgba(255,255,255,.01) 0 0 0 10px}}.pdf-container{width:100%;height:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.g2-card,.g2-card__top{position:relative}.cell__has-unit{align-items:baseline}.cell__has-default{color:rgba(255,255,255,.45)}.cell__primary{color:#177ddc}.cell__success{color:#49aa19}.cell__danger{color:#a61d24}.cell__warning{color:#d89614}.cell__large{font-size:18px}.cell .unit,.cell__small{font-size:12px}.cell[data-type=img] .img:not(:last-child){margin-right:4px}.cell .img{vertical-align:middle;border-radius:4px}.cell .unit{margin-left:2px;color:rgba(255,255,255,.45)}.cell__disabled[data-type=link]{pointer-events:none}.cell__disabled[data-type=link]>a{color:rgba(255,255,255,.85)}g2-bar,g2-tag-cloud{width:100%}.g2-card__top{width:100%;overflow:hidden}.g2-card__top-margin{margin-bottom:12px}.g2-card__top-has-margin{margin-bottom:20px}.g2-card__meta{height:22px;color:rgba(255,255,255,.45);font-size:14px;line-height:22px}.g2-card__total,.g2-pie__legend-title{color:rgba(255,255,255,.85)}.g2-card__meta-wrap{float:left}.g2-card__meta-action{position:absolute;top:4px;right:0;line-height:1;cursor:pointer}.g2-card__avatar{position:relative;top:4px;float:left;margin-right:20px}.g2-card__avatar img{border-radius:100%}.g2-card__total{height:38px;margin-top:4px;margin-bottom:0;overflow:hidden;font-size:30px;line-height:38px;white-space:nowrap;text-overflow:ellipsis;word-break:break-all}.g2-card__desc{width:100%;margin-bottom:12px}.g2-card__footer{margin-top:8px;padding-top:9px;border-top:1px solid #303030}.g2-card__footer>*{position:relative}.g2-mini-progress{position:relative;width:100%;padding:5px 0}.g2-mini-progress__wrap{position:relative}.g2-mini-progress__value{width:0;height:100%;background-color:#177ddc;border-radius:1px 0 0 1px;transition:all .4s cubic-bezier(.08,.82,.17,1) 0s}.g2-mini-progress__target{position:absolute;top:0;bottom:0}.g2-mini-progress__target-item{position:absolute;top:0;left:0;width:2px;height:4px;border-radius:100px}.g2-pie,.g2-pie__chart{position:relative}.g2-mini-progress__target-item:last-child{top:auto;bottom:0}.g2-pie__legend{position:absolute;top:50%;right:0;min-width:250px;margin:0 20px;padding:0;list-style:none;transform:translateY(-50%)}.g2-pie__legend-item{height:22px;margin-bottom:16px;line-height:22px;cursor:pointer}.g2-pie__legend-item:last-child{margin-bottom:0}.g2-pie__legend-percent,.g2-pie__total-title{color:rgba(255,255,255,.45)}.g2-pie__legend-dot{position:relative;top:-1px;display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:8px}.g2-pie__legend-value{position:absolute;right:0}.g2-pie__legend-has .g2-pie__chart{width:calc(100% - 240px)}.g2-pie__legend-block .g2-pie__chart{width:100%;margin:0 0 32px}.g2-pie__legend-block .g2-pie__legend{position:relative;min-width:auto;transform:none}.g2-pie__total{position:absolute;top:50%;left:50%;height:62px;text-align:center;transform:translate(-50%,-50%)}.g2-pie__total-title{height:22px;margin-bottom:8px;font-weight:400;font-size:14px;line-height:22px}.g2-pie__total-stat{display:block;height:32px;color:rgba(255,255,255,.85);font-size:1.2em;line-height:32px;white-space:nowrap}.g2-pie__mini .g2-pie__total-title{margin-top:4px;margin-bottom:0}.g2-radar{display:block}.g2-radar__legend{margin-top:16px}.g2-radar__legend-item{position:relative;color:rgba(255,255,255,.45);line-height:22px;text-align:center;cursor:pointer}.g2-radar__legend-item::after{position:absolute;top:8px;right:0;width:1px;height:40px;content:''}.g2-radar__legend-item:last-child::after{display:none}.g2-radar__legend-dot,.g2-water-wave,.number-info,.number-info__value-text,.trend{display:inline-block}.g2-radar__legend-title{margin-top:4px;margin-bottom:0;padding-left:16px;color:rgba(255,255,255,.85);font-size:24px;line-height:32px}.g2-radar__legend-dot{position:relative;top:-1px;width:6px;height:6px;margin-right:6px;border-radius:6px}.g2-water-wave{position:relative;transform-origin:left}.g2-water-wave__desc{position:absolute;top:32px;left:0;width:100%;text-align:center}.g2-water-wave__desc-title{color:rgba(255,255,255,.45);font-size:14px;line-height:22px}.g2-water-wave__desc-percent{color:rgba(255,255,255,.85);font-size:24px;line-height:32px}.g2-water-wave__canvas{transform:scale(.5);transform-origin:0 0}.number-info__title{margin-bottom:16px;color:rgba(255,255,255,.85);font-size:16px;transition:all .3s}.number-info__title-sub{height:22px;overflow:hidden;color:rgba(255,255,255,.45);font-size:14px;line-height:22px;white-space:nowrap;text-overflow:ellipsis;word-break:break-all}.number-info__value{margin-top:4px;overflow:hidden;font-size:0;white-space:nowrap;text-overflow:ellipsis;word-break:break-all}.number-info__value-suffix{margin-left:4px;color:rgba(255,255,255,.85);font-size:16px;font-style:normal}.number-info__value-text{height:32px;color:rgba(255,255,255,.85);font-size:24px;line-height:32px}.number-info__value-sub{margin-left:32px;color:rgba(255,255,255,.45);font-size:16px;vertical-align:top}.number-info__value-sub .anticon{margin-left:4px;font-size:12px;transform:scale(.82)}.number-info__value-sub .anticon-caret-up{color:#d32029}.number-info__value-sub .anticon-caret-down{color:#49aa19}.number-info__light .number-info__value-text{color:rgba(255,255,255,.85)}.number-info:not(:first-child){position:relative;margin-left:32px;padding-left:32px}.number-info:not(:first-child)::after{position:absolute;top:0;bottom:0;left:0;width:1px;margin:8px 0;content:''}.trend{font-size:14px;line-height:22px}.trend__down,.trend__up{position:relative;top:1px;margin-left:4px}.trend__down i,.trend__up i{font-size:12px;transform:scale(.83)}.trend__up{color:#d32029}.trend__down{top:-1px;color:#49aa19}.trend__grey .trend__down,.trend__grey .trend__up{color:rgba(255,255,255,.85)}.trend__reverse .trend__up{color:#49aa19}.trend__reverse .trend__down{color:#d32029}html{--antd-wave-shadow-color:#177ddc;--scroll-bar:0;direction:ltr}app-root,body,html{height:100%}body{background-color:#f5f7fa}.alain-default{position:relative;display:block;width:100%;height:auto;min-height:100%;overflow-x:hidden}.alain-default__unwrap{margin-right:-24px;margin-left:-24px}@media (max-width:767px){.alain-default__unwrap{margin-right:0;margin-left:0}}.alain-default__content{margin:0 24px 24px}.alain-default__content-title{display:flex;align-items:center;justify-content:space-between;margin-right:-24px;margin-bottom:24px;margin-left:-24px;padding:12px 24px;color:#929292;background-color:#fafbfc;border-bottom:1px solid #efe3e5}.alain-default__content-title>h1{margin-bottom:0;font-weight:400;font-size:18px}.alain-default__content-title>h1>small{display:block;color:#8c8c8c;font-size:12px}.alain-default__content nz-input-group{width:auto}.alain-default__hide-aside .alain-default__content{margin-left:24px!important;transform:none!important}.alain-default__hide-header .alain-default__aside{margin-top:0}@media (min-width:768px){.alain-default__content{margin-left:224px}.alain-default__collapsed .alain-default__sidebar{width:64px}.alain-default__collapsed .alain-default__content{margin-left:88px}[dir=rtl] .alain-default__content{margin-right:224px;margin-left:0}[dir=rtl] .alain-default__collapsed .alain-default__content{margin-right:88px;margin-left:0}}.alain-default__header{z-index:19;display:flex;align-items:center;width:100%;height:64px;padding:0 16px;background-color:#177ddc;box-shadow:0 1px 10px rgba(0,0,0,.2)}.alain-default__header-logo{width:200px;margin-left:-16px;transition:width .2s cubic-bezier(.25,0,.15,1)}.alain-default__header-logo-link{display:block;text-align:center}.alain-default__header-logo-collapsed,.alain-default__header-logo-expanded{max-width:100%;max-height:36px;vertical-align:middle;animation:fadeIn 1s}.alain-default__header-logo-collapsed{display:none}.alain-default__header-logo-expanded{display:inline-block}.alain-default__nav{display:flex;align-items:center;margin:0;padding:0}.alain-default__nav:first-child{margin-right:16px}.alain-default__nav-wrap{display:flex;flex:1;justify-content:space-between}.alain-default__nav>li{display:inline-block;vertical-align:middle}.alain-default__nav nz-badge,.alain-default__nav-item{color:#fff}.alain-default__nav-item{display:block;min-width:50px;padding:8px 2px;line-height:100%;text-align:center;border-radius:2px;outline:0;cursor:pointer;transition:background-color .3s}.alain-default__nav-item:hover{color:#fff;background-color:rgba(255,255,255,.2)}.alain-default__nav-item-icon,.alain-default__nav-item>i{font-size:18px!important;transform:none!important}.alain-default__top-menu-item{display:flex;align-items:center;height:64px;padding:0 16px;border-radius:0}.alain-default__top-menu-item-selected{color:#fff;background-color:rgba(255,255,255,.2)}.alain-default__top-menu-item-disabled{opacity:.5;pointer-events:none}.alain-default__search{position:relative;display:flex;flex:1;align-items:center;margin:0 24px}.alain-default__search .ant-input{padding-left:0}.alain-default__search .ant-input,.alain-default__search .ant-input-affix-wrapper,.alain-default__search .ant-input-group-addon{color:#fff;background-color:rgba(255,255,255,.2);border:none}.alain-default__search .ant-input-affix-wrapper::placeholder,.alain-default__search .ant-input-group-addon::placeholder,.alain-default__search .ant-input::placeholder{color:#fff;opacity:1}.alain-default__search .ant-input-affix-wrapper .ant-input{background-color:transparent}.alain-default__search .ant-input-affix-wrapper i,.alain-default__search .ant-input-group-addon i{color:#fff;transition:color .3s,transform .4s}.alain-default__search-focus .ant-input,.alain-default__search-focus .ant-input-affix-wrapper,.alain-default__search-focus .ant-input-group-addon{color:#595959;background-color:#f3f3f3}.alain-default__search-focus .ant-input-affix-wrapper::placeholder,.alain-default__search-focus .ant-input-group-addon::placeholder,.alain-default__search-focus .ant-input::placeholder{color:#595959;opacity:1}.alain-default__search-focus .ant-input-affix-wrapper i,.alain-default__search-focus .ant-input-group-addon i{color:#595959;transform:rotate(90deg)}@media (max-width:767px){.alain-default__search{position:absolute;top:0;left:0;z-index:29;align-items:center;width:100%;height:100%;margin:0;padding:0 16px;background-color:#fff;transition:transform .3s}.alain-default__search-toggled{display:flex}.alain-default__search:not(.alain-default__search-toggled){transform:translate3d(0,-105%,0)}}.alain-default__collapsed .alain-default__header-logo{width:64px}.alain-default__collapsed .alain-default__header-logo-collapsed{display:inline-block}.alain-default__collapsed .alain-default__header-logo-expanded{display:none}@media (max-width:767px){.alain-default__header-logo{width:64px}.alain-default__header-logo-collapsed{display:inline}.alain-default__header-logo-expanded{display:none}}[dir=rtl] .alain-default__header-logo{margin-right:-16px;margin-left:0}.alain-default__aside{position:absolute;top:0;bottom:0;z-index:14;width:200px;margin-top:64px;overflow:hidden;background-color:#fff;backface-visibility:hidden;transition:width .2s cubic-bezier(.25,0,.15,1),translate .2s cubic-bezier(.25,0,.15,1);-webkit-overflow-scrolling:touch}.alain-default__aside::after{position:absolute;top:0;right:0;bottom:0;border-right:1px solid #efe3e5;content:''}.alain-default__aside-wrap{display:flex;flex-direction:column;height:100%}.alain-default__aside-inner{flex:1 1 0%;overflow-x:hidden scroll;-webkit-overflow-scrolling:touch;scroll-snap-type:proximity;scroll-snap-points-x:snaplist(100%,200%,300%,400%,500%);scrollbar-width:none}.alain-default__aside-inner::-webkit-scrollbar{width:0;height:0}.alain-default__aside-inner::-webkit-scrollbar-track{box-shadow:inset 0 0 0 transparent}.alain-default__aside-inner::-webkit-scrollbar-thumb{background-color:transparent}.alain-default__aside-link{border-top:1px solid #efe3e5}.alain-default__aside-link-collapsed{padding:8px 0;font-size:16px;text-align:center;cursor:pointer}@media (min-width:768px){.alain-default__collapsed .alain-default__aside{width:64px}}[dir=rtl] .alain-default__aside::after{right:inherit;left:0}@media (max-width:767px){.alain-default__aside,.alain-default__content{transition:transform .3s ease}.alain-default__content{transform:translate3d(200px,0,0)}.alain-default__collapsed .alain-default__aside{transform:translate3d(-100%,0,0)}.alain-default__collapsed .alain-default__content{transform:translateZ(0)}[dir=rtl] .alain-default__content{transform:translate3d(-200px,0,0)}[dir=rtl] .alain-default__collapsed .alain-default__aside{transform:translate3d(100%,0,0)}[dir=rtl] .alain-default__collapsed .alain-default__content{transform:translateZ(0)}}.alain-default__progress-bar{position:fixed;z-index:29;width:100vw;height:4px;overflow:hidden;background:rgba(221,221,221,.4)}.alain-default__progress-bar::after{display:block;width:33.3vw;height:100%;transform-origin:top left;animation:gradcolours 5s steps(1) infinite,loadthird 1s infinite linear;content:' '}@keyframes loadthird{0%{transform:translateX(-33.3vw)}100%{transform:translateX(100vw)}}@keyframes gradcolours{0%{background:linear-gradient(90deg,rgba(232,128,152,0) 0,#e88098 30%,#e88098 50%,#e88098 70%,rgba(232,128,152,0) 100%)}20%{background:linear-gradient(90deg,rgba(132,190,190,0) 0,#84bebe 30%,#84bebe 50%,#84bebe 70%,rgba(132,190,190,0) 100%)}40%{background:linear-gradient(90deg,rgba(233,135,36,0) 0,#e98724 30%,#e98724 50%,#e98724 70%,rgba(233,135,36,0) 100%)}60%{background:linear-gradient(90deg,rgba(175,201,78,0) 0,#afc94e 30%,#afc94e 50%,#afc94e 70%,rgba(175,201,78,0) 100%)}80%{background:linear-gradient(90deg,rgba(98,151,164,0) 0,#6297a4 30%,#6297a4 50%,#6297a4 70%,rgba(98,151,164,0) 100%)}}.sidebar-nav{display:block;margin:0;padding:0;font-size:14px}.sidebar-nav__item{position:relative;display:flex;flex-direction:column;border-left:3px solid transparent;transition:border-left-color .4s ease}.sidebar-nav__item-link{position:relative;display:block;padding:8px 32px 8px 16px;overflow:hidden;color:rgba(255,255,255,.85);white-space:nowrap;text-decoration:none!important;text-overflow:ellipsis;user-select:none}.sidebar-nav__item-link:hover{color:#177ddc}.sidebar-nav__item-icon{display:inline-block;min-width:14px;margin-right:8px;transition:font-size .15s cubic-bezier(.215,.61,.355,1),margin .3s cubic-bezier(.645,.045,.355,1)}.sidebar-nav__item-img,.sidebar-nav__item-svg{width:14px;height:14px}.sidebar-nav__item-text{opacity:1;transition:opacity .3s cubic-bezier(.645,.045,.355,1),width .3s cubic-bezier(.645,.045,.355,1)}.sidebar-nav__item-disabled{cursor:default;opacity:.6}.sidebar-nav__item-disabled:hover{color:rgba(255,255,255,.85)}.sidebar-nav__selected{background-color:#fcfcfc;border-left-color:#177ddc}.sidebar-nav__selected>.sidebar-nav__item-link{color:#177ddc}.sidebar-nav__open>.sidebar-nav__sub{display:block;animation:fadeIn .5s}.sidebar-nav__open>.sidebar-nav__item-link .sidebar-nav__sub-arrow{transform:translateY(-2px)}.sidebar-nav__open>.sidebar-nav__item-link .sidebar-nav__sub-arrow::before{transform:rotate(45deg) translateX(2px)}.sidebar-nav__open>.sidebar-nav__item-link .sidebar-nav__sub-arrow::after{transform:rotate(-45deg) translateX(-2px)}.sidebar-nav__group-title{padding:8px 16px;color:rgba(255,255,255,.45)}.sidebar-nav__sub{display:none;overflow:hidden}.sidebar-nav__sub .sidebar-nav__item{border-left:0!important}.sidebar-nav__sub-arrow{position:absolute;top:50%;right:16px;width:10px;transition:transform .3s cubic-bezier(.645,.045,.355,1)}.sidebar-nav__sub-arrow::after,.sidebar-nav__sub-arrow::before{position:absolute;width:6px;height:1.5px;background:#fff;background-image:linear-gradient(to right,rgba(255,255,255,.85),rgba(255,255,255,.85));border-radius:2px;transition:background-color .3s cubic-bezier(.645,.045,.355,1),transform .3s cubic-bezier(.645,.045,.355,1),top .3s cubic-bezier(.645,.045,.355,1);content:''}.sidebar-nav__sub-arrow::before{transform:rotate(-45deg) translateX(2px)}.sidebar-nav__sub-arrow::after{transform:rotate(45deg) translateX(-2px)}.sidebar-nav .ant-badge{position:absolute;top:8px;right:8px}.sidebar-nav .ant-badge-dot{top:10px!important;right:16px!important}.sidebar-nav__depth1 .sidebar-nav__item-link{padding-left:38px}.sidebar-nav__depth2 .sidebar-nav__item-link{padding-left:46px}.sidebar-nav__depth3 .sidebar-nav__item-link{padding-left:54px}.sidebar-nav__depth4 .sidebar-nav__item-link{padding-left:62px}.sidebar-nav__depth5 .sidebar-nav__item-link{padding-left:70px}.sidebar-nav__floating{position:absolute;z-index:16;display:none;min-width:160px;background-color:#fff;border:1px solid #efe3e5;border-radius:4px}.sidebar-nav__floating .sidebar-nav__item-link{padding-left:16px}.sidebar-nav__floating .sidebar-nav__sub,.sidebar-nav__floating-show{display:block}.sidebar-nav__floating .sidebar-nav__sub-arrow{display:none}.sidebar-nav__floating .sidebar-nav__depth2 .sidebar-nav__item-link{padding-left:24px}.sidebar-nav__floating .sidebar-nav__depth3 .sidebar-nav__item-link{padding-left:32px}#logo,.sidebar-nav__floating .sidebar-nav__depth4 .sidebar-nav__item-link{padding-left:40px}[dir=rtl] .sidebar-nav__item-icon{margin-right:0;margin-left:8px}[dir=rtl] .sidebar-nav .ant-badge{right:inherit;left:16px}@media (min-width:768px){.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item{border:none}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link{display:flex;justify-content:center;padding:16px 0}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link .sidebar-nav__item-icon{margin-right:0;font-size:24px}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link .sidebar-nav__item-img{width:24px;height:24px}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link .sidebar-nav__item-text{display:none;opacity:0}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__group-title{display:none}.alain-default__collapsed .sidebar-nav__sub{display:none!important}.alain-default__collapsed .sidebar-nav__sub-arrow{display:none}[dir=rtl] .alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link .sidebar-nav__item-icon{margin-left:0}}.footer-toolbar__left{margin-left:200px}.alain-default__collapsed .footer-toolbar__left{margin-left:64px}.footer-toolbar__body .alain-default__content{margin-bottom:64px}.full-content__body .alain-default__content router-outlet+*{display:block;width:100%;height:100%}.full-content__hidden-title .alain-default__content-title,.full-content__hidden-title .page-header,.full-content__opened .alain-default__aside,.full-content__opened .alain-default__header,.full-content__opened reuse-tab{display:none!important}.full-content__body .alain-default__content-title{margin-left:-24px}.full-content__opened .alain-default__content{margin:24px!important}.alain-default .page-header{margin-right:-24px;margin-bottom:24px;margin-left:-24px;padding:12px 24px 0;border-bottom:1px solid #efe3e5}@media (max-width:767px){.quick-menu{right:-25px!important}}.reuse-tab{margin:0 -24px}.alain-default__fixed .reuse-tab{position:fixed;top:64px;right:24px;left:224px;z-index:10}.alain-default__collapsed .reuse-tab{left:88px}.alain-default__hide-aside .reuse-tab{left:24px}.alain-default__hide-header .reuse-tab{top:0}@media (min-width:768px){.alain-default__fixed .reuse-tab+router-outlet{display:block;height:52px}}@media (max-width:767px){.alain-default__fixed .reuse-tab{position:unset;width:initial;margin-top:52px}}[dir=rtl] .alain-default__fixed .reuse-tab{right:224px;left:24px}[dir=rtl] .alain-default__collapsed .reuse-tab{right:88px;left:0}.alain-default__nav-item .ant-badge-count{top:6px;right:18px}.app-icons{padding:16px}.app-icons .ant-col-6{padding:16px 0;text-align:center;border-radius:4px;cursor:pointer;transition:background-color .3s}.app-icons .ant-col-6:hover{background-color:rgba(255,255,255,.08)}.app-icons i{padding:15px;font-size:22px;border-radius:50%}.app-icons small{display:block;padding-top:4px;color:#9c9c9c;font-size:14px}.alain-default__aside-user-info,.color-palettes-dark .color-title,.header-link,body{color:rgba(255,255,255,.85)}.alain-default__aside-user{display:flex;align-items:center;justify-content:center;margin:24px 24px 0;cursor:pointer}.alain-default__aside-user .ant-dropdown-trigger{display:flex;align-items:center}.alain-default__aside-user-info{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.alain-default__aside-user-avatar{margin-right:8px}@media (min-width:768px){.alain-default__collapsed .alain-default__aside-user{width:64px;margin-left:0}.alain-default__collapsed .alain-default__aside-user-info{display:none}.alain-default__collapsed .alain-default__aside-user-avatar{margin:0 auto}}[dir=rtl] .alain-default__aside-user-avatar{margin-right:0;margin-left:8px}@media (min-width:768px){[dir=rtl] .alain-default__collapsed .alain-default__aside-user{margin-right:0}[dir=rtl] .alain-default__collapsed .alain-default__aside-user-avatar{margin:0 auto}}.alain-default__fixed .alain-default__header{position:fixed;top:0;left:0}.alain-default__fixed .alain-default__aside{position:fixed}.alain-default__fixed:not(.alain-default__hide-header) .alain-default__content{margin-top:64px}.nz-resizable-preview{position:absolute;top:0;left:0;z-index:8;border:1px dashed #d1d1d1}.nz-resizable-handle{position:absolute;user-select:none;z-index:9}.nz-resizable-handle-top{width:100%;height:10px;top:-5px;left:0}.nz-resizable-handle-right{width:10px;height:100%;top:0;right:-5px}.nz-resizable-handle-bottom{width:100%;height:10px;bottom:-5px;left:0}.nz-resizable-handle-left{width:10px;height:100%;top:0;left:-5px}.nz-resizable-handle-topRight{width:20px;height:20px;top:-5px;right:-5px;z-index:10}.nz-resizable-handle-bottomRight{width:20px;height:20px;right:-5px;bottom:-5px;z-index:10}.nz-resizable-handle-bottomLeft{width:20px;height:20px;bottom:-5px;left:-5px;z-index:10}.nz-resizable-handle-topLeft{width:20px;height:20px;top:-5px;left:-5px;z-index:10}.nz-resizable .nz-resizable-handle-cursor-type-window.nz-resizable-handle-bottom,.nz-resizable .nz-resizable-handle-cursor-type-window.nz-resizable-handle-top{cursor:ns-resize}.nz-resizable .nz-resizable-handle-cursor-type-window.nz-resizable-handle-left,.nz-resizable .nz-resizable-handle-cursor-type-window.nz-resizable-handle-right{cursor:ew-resize}.nz-resizable .nz-resizable-handle-cursor-type-grid.nz-resizable-handle-bottom,.nz-resizable .nz-resizable-handle-cursor-type-grid.nz-resizable-handle-top{cursor:row-resize}.nz-resizable .nz-resizable-handle-cursor-type-grid.nz-resizable-handle-left,.nz-resizable .nz-resizable-handle-cursor-type-grid.nz-resizable-handle-right{cursor:col-resize}.nz-resizable .nz-resizable-handle-bottomRight,.nz-resizable .nz-resizable-handle-topLeft{cursor:nwse-resize}.nz-resizable .nz-resizable-handle-bottomLeft,.nz-resizable .nz-resizable-handle-topRight{cursor:nesw-resize}.nz-resizable-disabled .nz-resizable-handle{pointer-events:none}.color-palettes{margin:0 1%}.color-palettes-dark{margin:0;padding:0 28px;background-color:#141414}.color-palettes-dark .color-description{color:rgba(255,255,255,.45)}.color-palettes-dark .color-palette{margin:45px 3.5% 45px 0}.color-palettes-dark .color-palette .main-color-item,.color-palettes-dark .color-palette:nth-of-type(3n){margin-right:0}.color-palettes-dark .color-palette .main-color-item:hover{margin-right:-8px}.color-palette{display:inline-block;width:31%;margin:45px 1%}.color-palette-pick{margin:0 0 20px;font-size:20px;text-align:center}.color-palette-picker{margin:24px 0}.color-palette-picker-value{position:relative;top:-3px;margin-left:16px;font-size:14px;font-family:Consolas,sans-serif}.color-palette-picker-validation{position:relative;top:-3px;margin-left:16px;color:#a61d24;font-size:13px}.color-palette-picker-validation-dark{margin-left:0}.main-color{text-align:left}.main-color .palette-blue-1{background:#111d2c}.main-color .palette-blue-2{background:#112a45}.main-color .palette-blue-3{background:#15395b}.main-color .palette-blue-4{background:#164c7e}.main-color .palette-blue-5{background:#1765ad}.main-color .palette-blue-6{background:#177ddc}.main-color .palette-blue-7{background:#3c9ae8}.main-color .palette-blue-8{background:#65b7f3}.main-color .palette-blue-9{background:#8dcff8}.main-color .palette-blue-10{background:#b7e3fa}.main-color .palette-purple-1{background:#1a1325}.main-color .palette-purple-2{background:#24163a}.main-color .palette-purple-3{background:#301c4d}.main-color .palette-purple-4{background:#3e2069}.main-color .palette-purple-5{background:#51258f}.main-color .palette-purple-6{background:#642ab5}.main-color .palette-purple-7{background:#854eca}.main-color .palette-purple-8{background:#ab7ae0}.main-color .palette-purple-9{background:#cda8f0}.main-color .palette-purple-10{background:#ebd7fa}.main-color .palette-cyan-1{background:#112123}.main-color .palette-cyan-2{background:#113536}.main-color .palette-cyan-3{background:#144848}.main-color .palette-cyan-4{background:#146262}.main-color .palette-cyan-5{background:#138585}.main-color .palette-cyan-6{background:#13a8a8}.main-color .palette-cyan-7{background:#33bcb7}.main-color .palette-cyan-8{background:#58d1c9}.main-color .palette-cyan-9{background:#84e2d8}.main-color .palette-cyan-10{background:#b2f1e8}.main-color .palette-green-1{background:#162312}.main-color .palette-green-2{background:#1d3712}.main-color .palette-green-3{background:#274916}.main-color .palette-green-4{background:#306317}.main-color .palette-green-5{background:#3c8618}.main-color .palette-green-6{background:#49aa19}.main-color .palette-green-7{background:#6abe39}.main-color .palette-green-8{background:#8fd460}.main-color .palette-green-9{background:#b2e58b}.main-color .palette-green-10{background:#d5f2bb}.main-color .palette-magenta-1{background:#291321}.main-color .palette-magenta-2{background:#40162f}.main-color .palette-magenta-3{background:#551c3b}.main-color .palette-magenta-4{background:#75204f}.main-color .palette-magenta-5{background:#a02669}.main-color .palette-magenta-6{background:#cb2b83}.main-color .palette-magenta-7{background:#e0529c}.main-color .palette-magenta-8{background:#f37fb7}.main-color .palette-magenta-9{background:#f8a8cc}.main-color .palette-magenta-10{background:#fad2e3}.main-color .palette-red-1{background:#2a1215}.main-color .palette-red-2{background:#431418}.main-color .palette-red-3{background:#58181c}.main-color .palette-red-4{background:#791a1f}.main-color .palette-red-5{background:#a61d24}.main-color .palette-red-6{background:#d32029}.main-color .palette-red-7{background:#e84749}.main-color .palette-red-8{background:#f37370}.main-color .palette-red-9{background:#f89f9a}.main-color .palette-red-10{background:#fac8c3}.main-color .palette-volcano-1{background:#2b1611}.main-color .palette-volcano-2{background:#441d12}.main-color .palette-volcano-3{background:#592716}.main-color .palette-volcano-4{background:#7c3118}.main-color .palette-volcano-5{background:#aa3e19}.main-color .palette-volcano-6{background:#d84a1b}.main-color .palette-volcano-7{background:#e87040}.main-color .palette-volcano-8{background:#f3956a}.main-color .palette-volcano-9{background:#f8b692}.main-color .palette-volcano-10{background:#fad4bc}.main-color .palette-orange-1{background:#2b1d11}.main-color .palette-orange-2{background:#442a11}.main-color .palette-orange-3{background:#593815}.main-color .palette-orange-4{background:#7c4a15}.main-color .palette-orange-5{background:#aa6215}.main-color .palette-orange-6{background:#d87a16}.main-color .palette-orange-7{background:#e89a3c}.main-color .palette-orange-8{background:#f3b765}.main-color .palette-orange-9{background:#f8cf8d}.main-color .palette-orange-10{background:#fae3b7}.main-color .palette-gold-1{background:#2b2111}.main-color .palette-gold-2{background:#443111}.main-color .palette-gold-3{background:#594214}.main-color .palette-gold-4{background:#7c5914}.main-color .palette-gold-5{background:#aa7714}.main-color .palette-gold-6{background:#d89614}.main-color .palette-gold-7{background:#e8b339}.main-color .palette-gold-8{background:#f3cc62}.main-color .palette-gold-9{background:#f8df8b}.main-color .palette-gold-10{background:#faedb5}.main-color .palette-yellow-1{background:#2b2611}.main-color .palette-yellow-2{background:#443b11}.main-color .palette-yellow-3{background:#595014}.main-color .palette-yellow-4{background:#7c6e14}.main-color .palette-yellow-5{background:#aa9514}.main-color .palette-yellow-6{background:#d8bd14}.main-color .palette-yellow-7{background:#e8d639}.main-color .palette-yellow-8{background:#f3ea62}.main-color .palette-yellow-9{background:#f8f48b}.main-color .palette-yellow-10{background:#fafab5}.main-color .palette-lime-1{background:#1f2611}.main-color .palette-lime-2{background:#2e3c10}.main-color .palette-lime-3{background:#3e4f13}.main-color .palette-lime-4{background:#536d13}.main-color .palette-lime-5{background:#6f9412}.main-color .palette-lime-6{background:#8bbb11}.main-color .palette-lime-7{background:#a9d134}.main-color .palette-lime-8{background:#c9e75d}.main-color .palette-lime-9{background:#e4f88b}.main-color .palette-lime-10{background:#f0fab5}.main-color .palette-geekblue-1{background:#131629}.main-color .palette-geekblue-2{background:#161d40}.main-color .palette-geekblue-3{background:#1c2755}.main-color .palette-geekblue-4{background:#203175}.main-color .palette-geekblue-5{background:#263ea0}.main-color .palette-geekblue-6{background:#2b4acb}.main-color .palette-geekblue-7{background:#5273e0}.main-color .palette-geekblue-8{background:#7f9ef3}.main-color .palette-geekblue-9{background:#a8c1f8}.main-color .palette-geekblue-10{background:#d2e0fa}.main-color .palette-gray-1{background:#fff}.main-color .palette-gray-2{background:#fafafa}.main-color .palette-gray-3{background:#f5f5f5}.main-color .palette-gray-4{background:#f0f0f0}.main-color .palette-gray-5{background:#d9d9d9}.main-color .palette-gray-6{background:#bfbfbf}.main-color .palette-gray-7{background:#8c8c8c}.main-color .palette-gray-8{background:#595959}.main-color .palette-gray-9{background:#434343}.main-color .palette-gray-10{background:#262626}.main-color .palette-gray-11{background:#1f1f1f}.main-color .palette-gray-12{background:#141414}.main-color .palette-gray-13{background:#000}.main-color-item{position:relative;height:44px;margin-right:4px;padding:0 12px;font-size:14px;font-family:Consolas,sans-serif;line-height:44px;cursor:pointer;transition:all .2s}.main-color-item:first-child{border-radius:4px 4px 0 0}.main-color-item:last-child{border-radius:0 0 4px 4px}.main-color-item:hover{margin-right:-8px;border-radius:0 4px 4px 0}.main-color-item .main-color-text{float:left;transition:all .3s}.main-color-item .main-color-value{position:relative;left:3px;float:right;transform:scale(.85);transform-origin:100% 50%;opacity:0;transition:all .3s}.color-title{margin:0 0 24px;color:#5c6b77;font-weight:500;font-size:22px;text-align:center;text-transform:capitalize}#header>.ant-row>.ant-col h1,.color-palette-horizontal-dark .color-palette-picker{margin-bottom:0}.color-description{display:block;color:#777;font-weight:lighter;font-size:14px}.main-color:hover .main-color-value{left:0;opacity:.7}.color-palette-horizontal{width:100%}.color-palette-horizontal-dark{height:303px;padding:32px 28px;background-color:#141414}.color-palette-horizontal-dark .color-palette-pick{color:rgba(255,255,255,.65);text-align:left}.color-palette-horizontal-dark .color-palette-pick-hex{color:rgba(255,255,255,.65)}.color-palette-horizontal .main-color{display:flex}.color-palette-horizontal .main-color-item{position:relative;flex:1;height:86px;margin-right:0;padding:37px 0 0;line-height:normal;text-align:center;border-radius:0}.color-palette-horizontal .main-color-item .main-color-text{float:none}.color-palette-horizontal .main-color-item:hover{height:96px;margin-top:-10px;border-radius:4px 4px 0 0}.color-palette-horizontal .main-color-value{position:absolute;bottom:0;left:0;width:100%;text-align:center;transform-origin:unset}.color-palette-horizontal .main-color:hover .main-color-item{padding-top:8px}.color-palette-horizontal .main-color:hover .main-color-value{bottom:8px;opacity:.7}article,aside,blockquote,body,button,code,dd,details,div,dl,dt,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,hr,input,legend,li,menu,nav,ol,p,pre,section,td,textarea,th,ul{margin:0;padding:0}ol,ul{list-style:none}body{font-size:14px;background:#000;transition:background 1s cubic-bezier(.075,.82,.165,1)}a{transition:color .3s ease}#ng-content{display:block;height:100%;transition:transform .3s cubic-bezier(.78,.14,.15,.86)}.fetching{position:absolute;top:16px;left:16px;z-index:99}#header,#logo img,#search-box{position:relative}#demo-toc.toc,#header,#header #nav.ant-menu,#header #search-box,.main-wrapper,.main-wrapper .main-container,.main-wrapper>.ant-row>.main-menu .main-menu-inner>.ant-menu,.main-wrapper>.ant-row>.main-menu .main-menu-inner>.ant-menu.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title::after{transition:all .3s cubic-bezier(.78,.14,.15,.86)}.ant-menu-item-active .header-link{color:#177ddc}#header{z-index:10;display:block;max-width:100%;background:#141414;box-shadow:0 2px 8px #f0f1f2}#header .menu-row{display:flex;align-items:center;margin:0}#header .menu-row>*{flex:none;margin:0 16px 0 0}#header .menu-row>:last-child{margin-right:40px}#header .ant-row-rtl .menu-row>:last-child{margin-right:16px;margin-left:40px}#header .header-button{color:rgba(255,255,255,.85);border-color:#434343}#logo{height:64px;overflow:hidden;color:rgba(255,255,255,.85);font-size:18px;font-family:Avenir,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,'Noto Sans',sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji',sans-serif;line-height:64px;white-space:nowrap;text-decoration:none}.ant-row-rtl #logo{float:right;padding-right:40px;padding-left:0}#logo img{top:-1.5px;height:32px;margin-right:16px}.ant-row-rtl #logo img{margin-right:0;margin-left:16px}#search-box{display:flex;flex:auto!important;align-items:center;height:22px;margin:0 auto 0 0!important;padding-left:16px;line-height:22px;white-space:nowrap;border-left:1px solid #303030;transition:width .5s}.ant-row-rtl #search-box{margin:0 0 0 auto!important;padding-right:16px;padding-left:0;border-left:none}#search-box>*{flex:auto}#search-box .anticon{position:absolute;top:50%;z-index:1;flex:none;color:#ced4d9;transform:translateY(-50%);pointer-events:none}#search-box input{width:100%;max-width:200px;padding-left:20px;font-size:14px;background:0 0;border:0;box-shadow:none}#search-box.narrow-mode input,.ant-row-rtl #search-box input{padding-right:20px;padding-left:11px}#search-box input::placeholder{color:#a3b1bf}#search-box.narrow-mode{flex:none!important;width:30px}#search-box.narrow-mode:hover .anticon{color:#a3b1bf}#search-box.narrow-mode .anticon{right:0;left:auto}.ant-row-rtl #search-box.narrow-mode .anticon{right:auto;left:0}#search-box.narrow-mode input{max-width:none;cursor:pointer}.ant-row-rtl #search-box.narrow-mode input{padding-right:11px;padding-left:20px}#search-box.narrow-mode.focused{width:500px}#search-box.narrow-mode.focused .anticon{color:#ced4d9}#search-box.narrow-mode.focused input{cursor:text}.algolia-autocomplete .ds-dropdown-menu{border:none;box-shadow:0 3px 6px -4px rgba(0,0,0,.48),0 6px 16px 0 rgba(0,0,0,.32),0 9px 28px 8px rgba(0,0,0,.2)}.algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-]{background:#141414;border:none}.algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-] .algolia-docsearch-suggestion{background:#141414}.algolia-autocomplete .ds-dropdown-menu::before{display:none}.algolia-autocomplete .algolia-docsearch-suggestion--title{color:rgba(255,255,255,.85)}#nav.ant-menu-horizontal>.ant-menu-item-selected a,.algolia-autocomplete .algolia-docsearch-suggestion--highlight{color:#177ddc}.nav-phone-icon{position:absolute;top:25px;right:30px;z-index:1;width:16px;height:22px;cursor:pointer}#nav{height:100%;font-size:14px;font-family:Avenir,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,'Noto Sans',sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji',sans-serif;border:0}#nav.ant-menu-horizontal{border-bottom:none}#nav.ant-menu-horizontal>.ant-menu-item,#nav.ant-menu-horizontal>.ant-menu-submenu{min-width:72px;height:64px;line-height:60px;border-top:2px solid transparent}#nav.ant-menu-horizontal>.ant-menu-item:hover,#nav.ant-menu-horizontal>.ant-menu-submenu:hover{border-top:2px solid #177ddc;border-bottom:none}#nav.ant-menu-horizontal>.ant-menu-item::after,#nav.ant-menu-horizontal>.ant-menu-submenu::after{content:none}.browser-mockup::after,.browser-mockup::before{content:'';position:absolute}#nav.ant-menu-horizontal .ant-menu-submenu-title .anticon{margin:0}#nav.ant-menu-horizontal>.ant-menu-item-selected,#nav.ant-menu-horizontal>.ant-menu-submenu-open{border-top:2px solid #177ddc;border-bottom:2px solid transparent}#nav>.ant-menu-item,#nav>.ant-menu-submenu{text-align:center}.popover-menu{width:300px}.popover-menu .ant-popover-inner-content{padding:0}.popover-menu .ant-popover-inner-content #nav .ant-menu-item,.popover-menu .ant-popover-inner-content #nav .ant-menu-submenu{text-align:left}.popover-menu .ant-popover-inner-content #nav .ant-menu-item-group-title{padding-left:24px}.popover-menu .ant-popover-inner-content #nav .ant-menu-item-group-list{padding:0 16px}.popover-menu .ant-popover-inner-content #nav .ant-menu-item,.popover-menu .ant-popover-inner-content #nav a{color:#333}@media only screen and (max-width:1200px){#header{text-align:center}#logo{padding-right:0;padding-left:0}#search-box{display:none}}[dir=rtl] .nav-phone-icon{right:inherit;left:30px}.main-wrapper{position:relative;display:block;padding:40px 0 0;background:#141414}.main-container{position:relative;min-height:500px;padding:0 170px 32px 64px;background:#141414}.ant-row-rtl .main-container{padding:0 64px 144px 186px}.main-menu{z-index:1}.main-menu-inner{height:100%;max-height:100vh;overflow:hidden}.main-menu:hover .main-menu-inner{overflow-y:auto}.main-menu>div,.main-menu>div>div{height:100%}.aside-container{min-height:100%;padding-bottom:48px;font-family:Avenir,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,'Noto Sans',sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji',sans-serif}.aside-container.ant-menu-inline .ant-menu-item a,.aside-container.ant-menu-inline .ant-menu-submenu-title h4,.aside-container.ant-menu-inline>.ant-menu-item{overflow:hidden;font-size:14px;text-overflow:ellipsis}.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title{margin-top:16px;margin-bottom:16px;font-size:13px}.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title::after{position:relative;top:12px;display:block;width:calc(100% - 20px);height:1px;background:#303030;content:''}.aside-container.ant-menu-inline.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item,.aside-container.ant-menu-inline>.ant-menu-item,.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item,.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title,.aside-container.ant-menu-inline>.ant-menu-submenu>.ant-menu-submenu-title{padding-left:40px!important}.ant-row-rtl .aside-container.ant-menu-inline.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item,.ant-row-rtl .aside-container.ant-menu-inline>.ant-menu-item,.ant-row-rtl .aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item,.ant-row-rtl .aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title,.ant-row-rtl .aside-container.ant-menu-inline>.ant-menu-submenu>.ant-menu-submenu-title{padding-right:40px!important;padding-left:16px!important}.aside-container.ant-menu-inline.ant-menu-inline .ant-menu-item-group-title{padding-left:56px}.ant-row-rtl .aside-container.ant-menu-inline.ant-menu-inline .ant-menu-item-group-title{padding-right:56px;padding-left:16px}.aside-container.ant-menu-inline.ant-menu-inline .ant-menu-item-group-list>.ant-menu-item{padding-left:80px!important}.ant-row-rtl .aside-container.ant-menu-inline.ant-menu-inline .ant-menu-item-group-list>.ant-menu-item{padding-right:80px!important;padding-left:16px!important}.aside-container.ant-menu-inline .ant-menu-item-group:first-child .ant-menu-item-group-title{margin-top:0}.aside-container a[disabled]{color:#ccc}.aside-container .menu-item-link-outside{position:relative}.aside-container .menu-item-link-outside .anticon{position:absolute;top:16px;right:-10px;color:#177ddc;font-size:12px;opacity:0;transition:all .3s}.aside-container .menu-item-link-outside:hover .anticon{opacity:1}.aside-container .chinese{margin-left:6px;font-weight:400;font-size:12px;opacity:.67}@media (max-width:1200px){.main-container{padding-right:48px;padding-left:48px}.ant-row-rtl .main-container{padding-right:24px;padding-left:24px}.main-container .toc-affix{display:none}}.drawer{position:fixed;top:0;z-index:9999;width:100%;height:100%;pointer-events:none}.drawer>*{transition:transform .3s cubic-bezier(.78,.14,.15,.86),opacity .3s cubic-bezier(.78,.14,.15,.86),box-shaow .3s cubic-bezier(.78,.14,.15,.86),-webkit-transform .3s cubic-bezier(.78,.14,.15,.86)}.drawer-content-wrapper,.drawer-mask{position:absolute;height:100%}.drawer-mask{top:0;width:100%;background:#000;opacity:0}.drawer-content-wrapper{left:-60vw;width:60vw;background:#fff;box-shadow:2px 0 10px rgba(0,0,0,.15)}.drawer-content{height:100%;overflow:auto}.drawer-button{position:absolute;top:72px;right:-40px;z-index:0;display:flex;align-items:center;justify-content:center;width:41px;height:40px;font-size:16px;line-height:40px;text-align:center;background:#141414;border-radius:0 4px 4px 0;box-shadow:2px 0 8px rgba(0,0,0,.15);cursor:pointer;pointer-events:auto}.drawer-open{transform:translateX(60vw);transition:transform .3s cubic-bezier(.78,.14,.15,.86) 0s;pointer-events:auto}.drawer-open .drawer-mask{opacity:.3}@media (max-width:767px){.drawer .ant-menu-inline .ant-menu-item::after,.drawer .ant-menu-vertical .ant-menu-item::after{right:auto;left:0}}.prev-next-nav{width:calc(100% - 128px);margin-right:64px;margin-left:64px;overflow:hidden;font-size:14px;border-top:1px solid #303030}.prev-next-nav>.next-page,.prev-next-nav>.prev-page{float:left;width:50%;height:72px;line-height:72px;text-decoration:none}.ant-row-rtl .prev-next-nav>.next-page,.ant-row-rtl .prev-next-nav>.prev-page{float:right}.ant-row-rtl .prev-next-nav>.next-page .footer-nav-icon-after,.ant-row-rtl .prev-next-nav>.next-page .footer-nav-icon-before,.ant-row-rtl .prev-next-nav>.prev-page .footer-nav-icon-after,.ant-row-rtl .prev-next-nav>.prev-page .footer-nav-icon-before{transform:rotate(180deg)}.prev-next-nav>a.prev-page .footer-nav-icon-before{position:relative;left:0;margin-right:1em;color:rgba(255,255,255,.45);font-size:12px;transition:all .3s}.ant-row-rtl .prev-next-nav>a.prev-page .footer-nav-icon-before{right:0;left:auto;margin-right:0;margin-left:1em}.prev-next-nav>a.prev-page .footer-nav-icon-after{display:none}.prev-next-nav>a.prev-page:hover .footer-nav-icon-before{left:-3px;color:#177ddc}.ant-row-rtl .prev-next-nav>a.prev-page:hover .footer-nav-icon-before{right:-3px;left:auto}.prev-next-nav>.next-page{float:right;text-align:right}.ant-row-rtl .prev-next-nav>.next-page{float:left;text-align:left}.prev-next-nav>.next-page .footer-nav-icon-after{position:relative;right:0;margin-left:1em;color:rgba(255,255,255,.45);font-size:12px;transition:all .3s}.ant-row-rtl .prev-next-nav>.next-page .footer-nav-icon-after{right:auto;left:0;margin-right:1em;margin-left:0}.prev-next-nav>.next-page .footer-nav-icon-before{display:none}.prev-next-nav>.next-page:hover .footer-nav-icon-after{right:-3px;color:#177ddc}.ant-row-rtl .prev-next-nav>.next-page:hover .footer-nav-icon-after{right:auto;left:-3px}.prev-next-nav .chinese{margin-left:.5em}.footer{position:relative;display:block;clear:both;color:rgba(255,255,255,.65);font-size:14px;background-color:#000;box-shadow:0 1000px 0 1000px #fff}.footer .ant-row{text-align:center}.footer__center{display:inline-block;text-align:left}.footer__center>h2{position:relative;margin:0 auto 24px;font-weight:500;font-size:16px}.footer__center>h2>.title-icon{width:27px;margin-right:16px}.footer__center>h2>.anticon{position:absolute;top:3px;left:-22px;color:#aaa;font-size:16px}.footer__center>div{margin:12px 0}.footer__wrap{position:relative;padding:86px 144px 16px;border-bottom:1px solid rgba(255,255,255,.25)}.footer a{color:rgba(255,255,255,.9)}.footer h2,.footer h2>span{color:#fff}.footer__small .footer__wrap{padding:86px 24px 93px}.theme-color{display:inline-block;padding:4px;vertical-align:middle;background:#fff;border-radius:2px;box-shadow:rgba(0,0,0,.1) 0 0 0 1px;cursor:pointer}.theme-color-value{width:80px;height:16px;border-radius:2px}.theme-color-content .ant-popover-inner-content{width:200px;padding:0}@media (max-width:1200px){.footer,.footer .footer__center{text-align:center}.footer .footer__wrap{padding:40px}.footer .footer__wrap .ant-row{padding:0}.footer .footer__wrap .ant-row>div:nth-child(2),.footer .footer__wrap .ant-row>div:nth-child(4){display:none}.footer .footer__wrap .ant-row>div a{font-weight:300}.footer h2{margin-top:16px}}.code-box .code-expand-icon>span,.theme-btn{display:flex}.theme-btn{position:fixed;bottom:102px;z-index:2147483640;flex-direction:column;cursor:pointer}.theme-btn-tooltip .ant-tooltip-inner{min-width:100px}.theme-btn>div{display:block}.theme-btn-active{width:44px;height:44px;color:#177ddc;font-size:22px;line-height:44px}.theme-btn .theme-btn-avatar{color:#000;background-color:#fff;box-shadow:0 3px 6px -4px rgba(0,0,0,.48),0 6px 16px 0 rgba(0,0,0,.32),0 9px 28px 8px rgba(0,0,0,.2);transition:color .3s}.theme-btn .theme-btn-avatar:hover{color:#177ddc}.toc-affix{position:absolute;top:8px;right:20px}.toc-affix .ant-anchor-ink-ball.visible{display:none}.toc-affix .ant-anchor .ant-anchor-link-active{position:relative;z-index:2;margin-left:-2px;border-left:2px solid #1890ff}.toc-affix .ant-anchor-link-title{max-width:120px}.ant-row-rtl .toc-affix{right:auto;left:20px}@media (max-width:767px){.toc-affix{display:none}}.markdown{color:rgba(255,255,255,.85);font-size:14px;line-height:2}.markdown img{max-width:calc(100% - 32px)}.markdown p>img{margin:34px 0;box-shadow:0 8px 20px rgba(143,168,191,.35)}.markdown p>img.markdown-inline-image{margin:0;box-shadow:none}.markdown h1{margin-top:8px;margin-bottom:20px;color:rgba(255,255,255,.85);font-weight:500;font-size:30px;font-family:Avenir,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,'Noto Sans',sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji',sans-serif;line-height:38px}.markdown h1 .subtitle{margin-left:12px}.ant-row-rtl .markdown h1 .subtitle{margin-right:12px;margin-left:0}.markdown h2{font-size:24px;line-height:32px}.markdown h2,.markdown h3,.markdown h4,.markdown h5,.markdown h6{clear:both;margin:1.6em 0 .6em;color:rgba(255,255,255,.85);font-weight:500;font-family:Avenir,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,'Noto Sans',sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji',sans-serif}.markdown pre,.markdown.api-container table{font-family:SFMono-Regular,Consolas,'Liberation Mono',Menlo,Courier,monospace}.markdown h3{font-size:18px}.markdown h4{font-size:16px}.markdown h5{font-size:14px}.markdown h6{font-size:12px}.markdown hr{clear:both;height:1px;margin:56px 0;background:#303030;border:0}.markdown p,.markdown pre{margin:1em 0}.markdown ul>li{margin-left:20px;padding-left:4px;list-style-type:circle}.ant-row-rtl .markdown ul>li{margin-right:20px;margin-left:0;padding-right:4px;padding-left:0}.markdown ul>li:empty{display:none}.markdown ol>li{margin-left:20px;padding-left:4px;list-style-type:decimal}.ant-row-rtl .markdown ol>li{margin-right:20px;margin-left:0;padding-right:4px;padding-left:0}.markdown ol>li>p,.markdown ul>li>p{margin:.2em 0}.markdown code{margin:0 1px;padding:.2em .4em;font-size:.9em;background:#f2f4f5;border:1px solid #303030;border-radius:3px}.markdown pre{background:#f2f4f5;border-radius:2px}.markdown pre code{margin:0;padding:0;overflow:auto;color:rgba(255,255,255,.85);font-size:13px;background:#f5f5f5;border:none}.markdown b,.markdown strong{font-weight:500}.markdown>table{width:100%;margin:8px 0 16px;table-layout:auto;empty-cells:show;border:1px solid #303030;border-collapse:collapse;border-spacing:0}.markdown>table tbody tr{transition:all .3s}.markdown>table tbody tr:hover{background:rgba(60,90,100,.04)}.markdown>table th:nth-child(1),.markdown>table th:nth-child(2){white-space:nowrap;word-break:keep-all}.markdown>table th{color:#5c6b77;font-weight:500;background:rgba(0,0,0,.02)}.markdown>table td,.markdown>table th{padding:16px 24px;text-align:left;border:1px solid #303030}.markdown blockquote{margin:1em 0;padding-left:.8em;color:rgba(255,255,255,.45);font-size:90%;border-left:4px solid #303030}.ant-row-rtl .markdown blockquote{padding-right:.8em;padding-left:0;border-right:4px solid #303030;border-left:none}.markdown blockquote p{margin:0}.markdown .anchor{margin-left:8px;opacity:0;transition:opacity .3s}.ant-row-rtl .markdown .anchor{margin-right:8px;margin-left:0}.markdown .waiting{color:#ccc;cursor:not-allowed}.code-box-code-icon,.code-box-code-icon:hover,.markdown a.edit-button i{color:rgba(255,255,255,.45)}.markdown a.edit-button{display:inline-block;margin-left:8px;text-decoration:none}.ant-row-rtl .markdown a.edit-button{margin-right:8px;margin-left:0}#page-404 h1,.markdown a.edit-button i:hover{color:#177ddc}.markdown a.edit-button .anticon{display:block;font-size:16px}.markdown h1:hover .anchor,.markdown h2:hover .anchor,.markdown h3:hover .anchor,.markdown h4:hover .anchor,.markdown h5:hover .anchor,.markdown h6:hover .anchor{display:inline-block;opacity:1}.markdown>br,.markdown>p>br{clear:both}.markdown.api-container{overflow-x:auto}.markdown.api-container table{min-width:720px;margin:2em 0;font-size:13px;line-height:1.5715;table-layout:auto;border:1px solid #303030}.markdown.api-container table td,.markdown.api-container table th{padding:12px;border-color:#303030;border-width:1px 0}.markdown.api-container table th{padding-top:14px;white-space:nowrap;border-width:0 0 2px}.markdown.api-container table th:nth-child(2){white-space:normal;word-break:normal}.markdown.api-container table th:nth-child(4),.markdown.api-container table th:nth-child(5){white-space:nowrap;word-break:keep-all}.markdown.api-container table td:first-child{color:#595959;font-weight:600}.markdown.api-container table td:nth-child(3){width:22%;color:#e0529c;font-size:13px;word-break:break-all}.markdown.api-container table td:nth-child(4){font-size:13px}.markdown.api-container hr{margin:12px 0}.grid-demo .code-box-demo .demo-row,.grid-demo .demo-row,[id^=components-grid-demo-] .code-box-demo .demo-row,[id^=components-grid-demo-] .demo-row{margin-bottom:8px;overflow:hidden;background-image:linear-gradient(90deg,#f5f5f5 4.16666667%,transparent 4.16666667%,transparent 8.33333333%,#f5f5f5 8.33333333%,#f5f5f5 12.5%,transparent 12.5%,transparent 16.66666667%,#f5f5f5 16.66666667%,#f5f5f5 20.83333333%,transparent 20.83333333%,transparent 25%,#f5f5f5 25%,#f5f5f5 29.16666667%,transparent 29.16666667%,transparent 33.33333333%,#f5f5f5 33.33333333%,#f5f5f5 37.5%,transparent 37.5%,transparent 41.66666667%,#f5f5f5 41.66666667%,#f5f5f5 45.83333333%,transparent 45.83333333%,transparent 50%,#f5f5f5 50%,#f5f5f5 54.16666667%,transparent 54.16666667%,transparent 58.33333333%,#f5f5f5 58.33333333%,#f5f5f5 62.5%,transparent 62.5%,transparent 66.66666667%,#f5f5f5 66.66666667%,#f5f5f5 70.83333333%,transparent 70.83333333%,transparent 75%,#f5f5f5 75%,#f5f5f5 79.16666667%,transparent 79.16666667%,transparent 83.33333333%,#f5f5f5 83.33333333%,#f5f5f5 87.5%,transparent 87.5%,transparent 91.66666667%,#f5f5f5 91.66666667%,#f5f5f5 95.83333333%,transparent 95.83333333%)}.grid-demo .ant-row>div,.grid-demo .code-box-demo .ant-row>div,[id^=components-grid-demo-] .ant-row>div,[id^=components-grid-demo-] .code-box-demo .ant-row>div{min-height:30px;margin-top:8px;margin-bottom:8px;color:#fff;text-align:center;border-radius:0}.grid-demo .code-box-demo .ant-row>div:not(.gutter-row),[id^=components-grid-demo-] .code-box-demo .ant-row>div:not(.gutter-row){padding:16px 0;background:#0092ff}.grid-demo .ant-row .demo-col-1,.grid-demo .code-box-demo .ant-row>div:not(.gutter-row):nth-child(2n+1),[id^=components-grid-demo-] .ant-row .demo-col-1,[id^=components-grid-demo-] .code-box-demo .ant-row>div:not(.gutter-row):nth-child(2n+1){background:rgba(0,146,255,.75)}.grid-demo .ant-row .demo-col,.grid-demo .code-box-demo .ant-row .demo-col,[id^=components-grid-demo-] .ant-row .demo-col,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col{margin-top:0;margin-bottom:0;padding:30px 0;color:#fff;font-size:18px;text-align:center;border:none}.grid-demo .ant-row .demo-col-2,.grid-demo .code-box-demo .ant-row .demo-col-2,[id^=components-grid-demo-] .ant-row .demo-col-2,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-2{background:rgba(0,146,255,.5)}.grid-demo .ant-row .demo-col-3,.grid-demo .code-box-demo .ant-row .demo-col-3,[id^=components-grid-demo-] .ant-row .demo-col-3,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-3{color:#999;background:rgba(255,255,255,.2)}.grid-demo .ant-row .demo-col-4,.grid-demo .code-box-demo .ant-row .demo-col-4,[id^=components-grid-demo-] .ant-row .demo-col-4,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-4{background:rgba(0,146,255,.6)}.grid-demo .ant-row .demo-col-5,.grid-demo .code-box-demo .ant-row .demo-col-5,[id^=components-grid-demo-] .ant-row .demo-col-5,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-5{color:#999;background:rgba(255,255,255,.2)}.grid-demo .code-box-demo .height-100,[id^=components-grid-demo-] .code-box-demo .height-100{height:100px;line-height:100px}.grid-demo .code-box-demo .height-50,[id^=components-grid-demo-] .code-box-demo .height-50{height:50px;line-height:50px}.grid-demo .code-box-demo .height-120,[id^=components-grid-demo-] .code-box-demo .height-120{height:120px;line-height:120px}.grid-demo .code-box-demo .height-80,[id^=components-grid-demo-] .code-box-demo .height-80{height:80px;line-height:80px}[id=components-grid-demo-playground]>.code-box-demo .ant-row>div,[id=components-grid-demo-gutter]>.code-box-demo .ant-row>div{margin-top:0;margin-bottom:0}.markdown ul.ant-timeline{line-height:2}.markdown ul.ant-timeline li.ant-timeline-item{margin:0;padding:0 0 30px;list-style:none}.markdown ul.ant-timeline li.ant-timeline-item .ant-timeline-item-content{position:relative;top:-14px;padding-left:32px;font-size:14px}.markdown ul.ant-timeline li.ant-timeline-item .ant-timeline-item-content>h2{margin-top:0;padding-top:4px}.markdown ul.ant-timeline li.ant-timeline-item:first-child{margin-top:40px}code[class*=hljs],pre[class*=hljs]{color:#000;line-height:1.5;direction:ltr;white-space:pre;text-align:left;text-shadow:0 1px #fff;word-wrap:normal;word-break:normal;word-spacing:normal;tab-size:4;hyphens:none;background:0 0}pre[class*=hljs]::selection{text-shadow:none;background:#b3d4fc}code[class*=hljs] ::selection,code[class*=hljs]::selection,pre[class*=hljs] ::selection,pre[class*=hljs]::selection{text-shadow:none;background:#b3d4fc}@media print{code[class*=hljs],pre[class*=hljs]{text-shadow:none}}pre[class*=hljs]{margin:1.2em 0;padding:1em;overflow:auto}:not(pre)>code[class*=hljs],pre[class*=hljs]{background:#f7f7f7}:not(pre)>code[class*=hljs]{padding:.1em;white-space:normal;border-radius:.3em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#708090}.token.punctuation{color:#999}.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#bb0606}.hljscss .token.string,.style .token.string,.token.attr-name,.token.builtin,.token.char,.token.entity,.token.inserted,.token.operator,.token.selector,.token.string,.token.url{color:#690}.token.atrule,.token.attr-value,.token.keyword{color:#07a}.token.function{color:#dd4a68}.token.important,.token.regex,.token.variable{color:#e90}.token.entity{cursor:help}.hljs-comment,.hljs-quote{color:#8e908c}.hljs-deletion,.hljs-name,.hljs-regexp,.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#bb0606}.hljs-built_in,.hljs-builtin-name,.hljs-link,.hljs-literal,.hljs-meta,.hljs-number,.hljs-params,.hljs-type{color:#f5871f}.hljs-attribute{color:#eab700}.hljs-addition,.hljs-bullet,.hljs-string,.hljs-symbol{color:#690}.hljs-section,.hljs-title{color:#dd4a68}.hljs-keyword,.hljs-selector-tag{color:#07a}.hljs{display:block;padding:.5em;overflow-x:auto;color:#4d4d4c;background:#fff}.highlight-wrapper:hover .code-box-code-copy,.highlight-wrapper:hover .code-box-codepen,.highlight-wrapper:hover .code-box-riddle{opacity:.66}.highlight{position:relative;line-height:1.5}.code-box-code-copy.anticon-check{color:#00a854!important}.code-box{position:relative;display:inline-block;width:100%;border:1px solid #303030;border-radius:2px;transition:all .2s}.code-box .code-box-title,.code-box .code-box-title a{color:rgba(255,255,255,.85);background:#141414}.code-box .code-box-description p{color:rgba(255,255,255,.85)}.code-box a.edit-button .anticon{color:inherit}.code-box a.edit-button .anticon:hover{color:rgba(255,255,255,.75)}.code-box,.code-box .code-box-demo{background-color:#141414}.code-box p{margin:0}.code-box:target{z-index:10;border:1px solid #177ddc}.code-box-expand-trigger{position:relative;margin-left:12px;color:#3b4357;font-size:20px;cursor:pointer;opacity:.75;transition:all .3s}.code-box-expand-trigger:hover{opacity:1}.ant-row-rtl .code-box-expand-trigger{margin-right:8px;margin-left:0}.code-box-title{position:absolute;top:-14px;margin-left:16px;padding:1px 8px;color:#777;background:#000;border-radius:2px 2px 0 0;transition:background-color .4s}.ant-row-rtl .code-box-title{margin-right:16px;margin-left:0;border-radius:2px 0 0 2px}.code-box-title a,.code-box-title a:hover{color:rgba(255,255,255,.85);font-weight:500;font-size:14px}.code-box-title .edit-button .anticon{font-size:12px}.code-box-description{padding:18px 24px 12px}.code-box .edit-button{position:absolute;top:7px;right:-16px;padding-right:6px;font-size:12px;text-decoration:none;background:inherit;transform:scale(.9)}.ant-row-rtl .code-box .edit-button{right:auto;left:-21px;padding-right:0;padding-left:6px}.code-box-demo{padding:42px 24px 50px;color:rgba(255,255,255,.85);border-bottom:1px solid #303030}.code-box iframe{width:100%;border:0}.code-box .highlight:not(:first-child),.code-box-actions{border-top:1px dashed #303030}.code-box-meta.markdown{position:relative;width:100%;font-size:14px;border-radius:0 0 2px 2px;transition:background-color .4s}.code-box-meta blockquote,.code-box-meta h4,section.code-box-meta p{margin:0}.code-box-meta>p{width:100%;margin:.5em 0;padding-right:25px;font-size:12px;word-break:break-word}.ant-row-rtl .code-box-meta>p{padding-right:0;padding-left:25px}.code-box.expand .code-box-meta{border-bottom:1px dashed #303030;border-radius:0}.code-box .code-expand-icon-hide,.code-box .code-expand-icon-show{width:16px;max-width:100%;height:16px;cursor:pointer;transition:all .4s}.code-box .code-expand-icon-show{opacity:.55;pointer-events:auto}.code-box .code-expand-icon-show:hover,.code-box .code-expand-icon.ant-tooltip-open .code-expand-icon-show{opacity:1}.code-box .code-expand-icon-hide{display:none;pointer-events:none}.code-box .highlight{position:relative}.code-box .highlight-wrapper{display:none;overflow:auto;border-radius:0 0 2px 2px}.code-box .highlight-wrapper-expand{display:block}.code-box .highlight pre{margin:0;padding:0;background:#141414}.code-box-actions{display:flex;align-items:center;justify-content:center;padding:12px;text-align:center;opacity:.7;transition:opacity .3s}.code-box-actions:hover{opacity:1}.code-box-actions>i{display:flex;margin-left:16px}.ant-row-rtl .code-box-actions>i{margin-right:16px;margin-left:0}.code-box-actions>i:first-child{margin-left:0}.ant-row-rtl .code-box-actions>i:first-child{margin-right:0}.code-box-code-icon{cursor:pointer;transition:all .24s}.code-box-code-icon.anticon-check{color:#49aa19!important;font-weight:700}.code-box pre{width:auto;margin:0}.code-box pre code{display:block;padding:16px 32px;color:rgba(255,255,255,.85);font-size:14px;line-height:2;background:#141414;border:none;border-radius:2px}.browser-mockup{position:relative;font-size:14px;border-top:2em solid rgba(230,230,230,.7);border-radius:3px 3px 0 0;box-shadow:0 .1em .5em 0 rgba(0,0,0,.28)}.browser-mockup::before{top:-1.25em;left:1em;display:block;width:.5em;height:.5em;background-color:#f44;border-radius:50%;box-shadow:0 0 0 2px #f44,1.5em 0 0 2px #9b3,3em 0 0 2px #fb5}.browser-mockup::after{top:-2em;left:5.5em;display:block;width:20%;height:0;border-right:.8em solid transparent;border-bottom:2em solid #fff;border-left:.8em solid transparent}.deprecated,.index-page .page,.index-page .page-banner,.index-page .page-wrapper,h2,h3,h4,h5{position:relative}.browser-mockup .browser-scroll{height:100%;overflow:auto;background:#f5f5f5}.menu-site .ant-dropdown-trigger,.menu-site nz-dropdown,app-docs,app-root{display:block}.ant-btn+.ant-btn{margin-left:8px}.ant-menu-item{outline:0}#page-404{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;width:100%;height:100%;background-image:url(https://os.alipayobjects.com/rmsportal/NOAjOBbnYCrNzrW.jpg);background-repeat:no-repeat;background-position:center;background-size:100%;background-attachment:fixed}#page-404 section{position:absolute;top:48%;left:55%;margin:-103px 0 0 -120px;text-align:center}#page-404 h1{font-weight:500;font-size:120px}#page-404 .links{color:rgba(255,255,255,.85);font-size:18px}#page-404 .links a{margin-left:8px}.deprecated::before{color:#d84a1b;font-style:normal;cursor:pointer;content:'D'}h2 .lake-link,h3 .lake-link,h4 .lake-link,h5 .lake-link{position:absolute;top:4px;left:-30px;display:none;align-items:center;justify-content:center;width:30px;height:24px}h2 .lake-link>i,h3 .lake-link>i,h4 .lake-link>i,h5 .lake-link>i{display:inline-block;width:18px;height:18px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1024 1024'%3E%3Cpath fill='rgba(255, 255, 255, 0.45)' d='M574 665.4a8.03 8.03 0 0 0-11.3 0L446.5 781.6c-53.8 53.8-144.6 59.5-204 0-59.5-59.5-53.8-150.2 0-204l116.2-116.2c3.1-3.1 3.1-8.2 0-11.3l-39.8-39.8a8.03 8.03 0 0 0-11.3 0L191.4 526.5c-84.6 84.6-84.6 221.5 0 306s221.5 84.6 306 0l116.2-116.2c3.1-3.1 3.1-8.2 0-11.3L574 665.4zm258.6-474c-84.6-84.6-221.5-84.6-306 0L410.3 307.6a8.03 8.03 0 0 0 0 11.3l39.7 39.7c3.1 3.1 8.2 3.1 11.3 0l116.2-116.2c53.8-53.8 144.6-59.5 204 0 59.5 59.5 53.8 150.2 0 204L665.3 562.6a8.03 8.03 0 0 0 0 11.3l39.8 39.8c3.1 3.1 8.2 3.1 11.3 0l116.2-116.2c84.5-84.6 84.5-221.5 0-306.1zM610.1 372.3a8.03 8.03 0 0 0-11.3 0L372.3 598.7a8.03 8.03 0 0 0 0 11.3l39.6 39.6c3.1 3.1 8.2 3.1 11.3 0l226.4-226.4c3.1-3.1 3.1-8.2 0-11.3l-39.5-39.6z'/%3E%3C/svg%3E%0A")}h2:hover .lake-link,h3:hover .lake-link,h4:hover .lake-link,h5:hover .lake-link{display:flex}[dir=rtl] h2 .lake-link,[dir=rtl] h3 .lake-link,[dir=rtl] h4 .lake-link,[dir=rtl] h5 .lake-link{right:-30px;left:inherit}.index-page{color:#697b8c}.index-page #header{width:100%;max-width:1280px;margin:20px auto 0;padding:0 24px;background:0 0;box-shadow:none}.index-page #nav.ant-menu-horizontal>.ant-menu-item-selected{border-top:none}.index-page .page{width:100%;max-width:1200px;margin:auto;padding:0 24px}.index-page .page-wrapper{overflow:inherit;color:#314659;font-family:Avenir,'Chinese Quote',-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC','Hiragino Sans GB','Microsoft YaHei','Helvetica Neue',Helvetica,Arial,sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol';font-variant:tabular-nums}.index-page .page h2{padding:80px 0 40px;color:#314659;font-weight:400;font-size:38px;line-height:46px;text-align:center}.index-page .page-banner{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:1200px;height:520px;margin:auto;padding:0 24px}.index-page .page-banner__slogan{width:54%;min-width:420px;max-width:560px;min-height:336px;color:#0d1a26}.index-page .page-banner__slogan h1{margin:12px 0;font-size:54px;font-family:Futura,'Helvetica Neue For Number',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'PingFang SC','Hiragino Sans GB','Microsoft YaHei','Helvetica Neue',Helvetica,Arial,sans-serif}.index-page .page-banner__slogan p{font-size:20px}.index-page .page-banner__slogan .ant-btn{min-width:110px;height:40px;margin-right:16px;font-size:16px;border-radius:20px}.index-page .page-banner__slogan-btn{display:flex;align-items:center;margin-top:64px;line-height:40px}.index-page .page-banner__slogan-btn .github{display:flex}.index-page .page-banner__img{position:absolute;right:0;bottom:0;width:46%;max-width:482px;height:420px;overflow:hidden}.index-page .page-banner__img img{max-height:100%;border-radius:8px}.index-page .page-feature{position:relative;padding-bottom:80px;color:#fff}.index-page .page-feature__bg{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;background:#49a9ee;transform:skewY(-4.5deg)}.index-page .page-feature__bg-bottom{position:absolute;right:0;bottom:0;left:0;height:200px;background:#49a9ee}.index-page .page-feature h2,.index-page .page-feature h3{color:#fff}.index-page .page-feature h2{padding-top:100px}.index-page .page-feature h3{font-size:18px}.index-page .page-feature__item{display:flex;height:100px;margin-bottom:56px}.index-page .page-feature .anticon{margin-right:16px;padding-top:8px;font-size:36px}.index-page .page-theme{margin-bottom:48px;overflow:hidden;background:#fff}.index-page .page-theme__item{display:block;margin-bottom:32px;color:#314659;text-align:center}.index-page .page-theme__item:hover{color:#49a9ee}.index-page .page-theme__item img{max-width:80%}.index-page .page-theme__item h3,.index-page .page-theme__item p{margin-top:16px}@media (max-width:991px){.index-page #logo{padding-left:0}.index-page .page-banner__slogan{width:100%;min-width:100%;max-width:100%;text-align:center}.index-page .page-banner__slogan-btn{flex-wrap:wrap;justify-content:center}.index-page .page-banner__slogan-btn>a,.index-page .page-banner__slogan-btn>github-button{margin-bottom:16px}.index-page .page-banner__img{display:none}.index-page .page-feature__item{flex-direction:column;text-align:center}.index-page .page-feature__item .anticon{margin:0 0 16px}[dir=rtl] .index-page #logo{float:left}}[dir=rtl] .index-page .page-banner__slogan .ant-btn,[dir=rtl] .index-page .page-feature .anticon{margin-right:0;margin-left:16px}[dir=rtl] .index-page .page-banner__img{right:initial;left:0}[dir=rtl] .index-page .page-feature__bg{transform:skewY(4.5deg)}#header .ant-row-rtl github-button .gh-count{display:none!important}.copy-import-module{padding:2px 6px;color:#fff;font-size:12px;background:#a61d24;border-radius:34px;cursor:pointer}.menu-deprecated .ant-badge{color:#a61d24;opacity:.5}[data-theme=dark] input:-webkit-autofill,[data-theme=dark] input:-webkit-autofill:focus,[data-theme=dark] input:-webkit-autofill:hover,[data-theme=dark] select:-webkit-autofill,[data-theme=dark] select:-webkit-autofill:focus,[data-theme=dark] select:-webkit-autofill:hover,[data-theme=dark] textarea:-webkit-autofill,[data-theme=dark] textarea:-webkit-autofill:focus,[data-theme=dark] textarea:-webkit-autofill:hover{border:1px solid #434343;-webkit-text-fill-color:rgba(255,255,255,.85);box-shadow:none;transition:background-color 5000s ease-in-out 0s}[data-theme=dark] #header,[data-theme=dark] .drawer-button{box-shadow:0 2px 8px 0 rgba(0,0,0,.65)}[data-theme=dark] #search-box input::placeholder{color:rgba(255,255,255,.3)}@media (max-width:767px){[data-theme=dark] .header-menu .menu-site{background:0 0}}[data-theme=dark] .toc-affix .ant-affix{background:#141414}[data-theme=dark] :not(pre)>code[class*=language-],[data-theme=dark] pre[class*=language-]{color:rgba(255,255,255,.65);background:#262626}[data-theme=dark] .code-box{border:1px solid #303030}[data-theme=dark] .code-box .markdown pre{margin:.5em 0;padding:6px 12px}[data-theme=dark] .code-box .markdown pre code{margin:0;background:#262626}[data-theme=dark] .code-box-debug{border-color:#301c4d}[data-theme=dark] .code-box-expand-trigger{position:relative;margin-left:12px;color:#fff;font-size:20px;cursor:pointer;opacity:.45;transition:all .3s}[data-theme=dark] .code-box-expand-trigger:hover{opacity:.65}[data-theme=dark] .code-box-demo{border-bottom:1px solid #303030}[data-theme=dark] .code-box-codepen{background:url(https://gw.alipayobjects.com/zos/antfincdn/1B3MOCiI5F/OtZslpOjYXijshDERXwc.svg) center/14px no-repeat}[data-theme=dark] .code-box-riddle{background:url(https://gw.alipayobjects.com/zos/antfincdn/NByOhhT9rO/DlHbxMCyeuyOrqOdbgik.svg) center/14px no-repeat}[data-theme=dark] .code-box-codesandbox{background:url(https://gw.alipayobjects.com/zos/antfincdn/hNEf2p1ZnS/aaYmtdDyHSCkXyLZVgGK.svg) center/14px no-repeat}[data-theme=dark] .code-box .highlight pre{background:#141414}[data-theme=dark] ul.anticons-list li{color:#acacac}[data-theme=dark] ul.anticons-list li.TwoTone:hover{background-color:#15395b}[data-theme=dark] ul.anticons-list li:hover .anticon{color:#fff}[data-theme=dark] .markdown code,[data-theme=dark] .markdown pre,[data-theme=dark] .markdown pre code,[data-theme=dark] .markdown.api-container table tbody tr:hover{background:#262626}[data-theme=dark] .markdown code{background:rgba(255,255,255,.08)}[data-theme=dark] .prev-next-nav>a.prev-page .footer-nav-icon-before{color:rgba(255,255,255,.45)}[data-theme=dark] .prev-next-nav>a.prev-page:hover .footer-nav-icon-before{left:-3px;color:#177ddc}[data-theme=dark] .prev-next-nav>.next-page .footer-nav-icon-after{color:rgba(255,255,255,.45)}[data-theme=dark] .prev-next-nav>.next-page:hover .footer-nav-icon-after{right:-3px;color:#177ddc}[data-theme=dark] .grid-demo .code-box-demo .demo-row,[data-theme=dark] .grid-demo .demo-row,[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .demo-row,[data-theme=dark] [id^=components-grid-demo-] .demo-row{background-image:linear-gradient(90deg,#1d1d1d 4.16666667%,transparent 4.16666667%,transparent 8.33333333%,#1d1d1d 8.33333333%,#1d1d1d 12.5%,transparent 12.5%,transparent 16.66666667%,#1d1d1d 16.66666667%,#1d1d1d 20.83333333%,transparent 20.83333333%,transparent 25%,#1d1d1d 25%,#1d1d1d 29.16666667%,transparent 29.16666667%,transparent 33.33333333%,#1d1d1d 33.33333333%,#1d1d1d 37.5%,transparent 37.5%,transparent 41.66666667%,#1d1d1d 41.66666667%,#1d1d1d 45.83333333%,transparent 45.83333333%,transparent 50%,#1d1d1d 50%,#1d1d1d 54.16666667%,transparent 54.16666667%,transparent 58.33333333%,#1d1d1d 58.33333333%,#1d1d1d 62.5%,transparent 62.5%,transparent 66.66666667%,#1d1d1d 66.66666667%,#1d1d1d 70.83333333%,transparent 70.83333333%,transparent 75%,#1d1d1d 75%,#1d1d1d 79.16666667%,transparent 79.16666667%,transparent 83.33333333%,#1d1d1d 83.33333333%,#1d1d1d 87.5%,transparent 87.5%,transparent 91.66666667%,#1d1d1d 91.66666667%,#1d1d1d 95.83333333%,transparent 95.83333333%)}[data-theme=dark] .grid-demo .code-box-demo .ant-row>div:not(.gutter-row),[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row>div:not(.gutter-row){padding:16px 0;background:#028ac8}[data-theme=dark] .grid-demo .ant-row .demo-col-1,[data-theme=dark] .grid-demo .code-box-demo .ant-row>div:not(.gutter-row):nth-child(2n+1),[data-theme=dark] [id^=components-grid-demo-] .ant-row .demo-col-1,[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row>div:not(.gutter-row):nth-child(2n+1){background:rgba(0,136,198,.7)}[data-theme=dark] .grid-demo .ant-row .demo-col,[data-theme=dark] .grid-demo .code-box-demo .ant-row .demo-col,[data-theme=dark] [id^=components-grid-demo-] .ant-row .demo-col,[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row .demo-col{margin-top:0;margin-bottom:0;padding:30px 0;color:#000;font-size:18px;text-align:center;border:none}[data-theme=dark] .grid-demo .ant-row .demo-col-3,[data-theme=dark] .grid-demo .ant-row .demo-col-5,[data-theme=dark] .grid-demo .code-box-demo .ant-row .demo-col-3,[data-theme=dark] .grid-demo .code-box-demo .ant-row .demo-col-5,[data-theme=dark] [id^=components-grid-demo-] .ant-row .demo-col-3,[data-theme=dark] [id^=components-grid-demo-] .ant-row .demo-col-5,[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-3,[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-5{color:rgba(255,255,255,.45);background:unset}[data-theme=dark] .markdown>table th{color:rgba(255,255,255,.65);background:#1d1d1d}[data-theme=dark] .copied-code{background:rgba(255,255,255,.08)}[data-theme=dark] .browser-mockup.with-url::after{background-color:#141414}[data-theme=dark] .browser-mockup{border-top:2em solid #262626}[data-theme=dark] .browser-mockup::before{background-color:#fb4742;box-shadow:0 0 0 2px #fb4742,1.5em 0 0 2px #99bc2e,3em 0 0 2px #ffba5a}[data-theme=dark] .browser-mockup::after{border-bottom:2em solid #141414}[data-theme=dark] .browser-scroll{background:#262626}[data-theme=dark] .algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-],[data-theme=dark] .algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-] .algolia-docsearch-suggestion{background:#1f1f1f}[data-theme=dark] .algolia-autocomplete .ds-dropdown-menu .ds-suggestion.ds-cursor .algolia-docsearch-suggestion:not(.suggestion-layout-simple) .algolia-docsearch-suggestion--content{background-color:rgba(255,255,255,.08)}[data-theme=dark] .algolia-autocomplete .algolia-docsearch-suggestion--category-header{color:rgba(255,255,255,.65);border-bottom:1px solid #303030}[data-theme=dark] .algolia-autocomplete .algolia-docsearch-suggestion--content::before,[data-theme=dark] .algolia-autocomplete .algolia-docsearch-suggestion--subcategory-column::before{background:#303030}[data-theme=dark] code[class*=hljs],[data-theme=dark] pre[class*=hljs]{text-shadow:none}[data-theme=dark] .hljs-comment,[data-theme=dark] .hljs-quote{color:#b6b18b}[data-theme=dark] .hljs-deletion,[data-theme=dark] .hljs-name,[data-theme=dark] .hljs-regexp,[data-theme=dark] .hljs-selector-class,[data-theme=dark] .hljs-selector-id,[data-theme=dark] .hljs-tag,[data-theme=dark] .hljs-template-variable,[data-theme=dark] .hljs-variable{color:#eb3c54}[data-theme=dark] .hljs-built_in,[data-theme=dark] .hljs-builtin-name,[data-theme=dark] .hljs-link,[data-theme=dark] .hljs-literal,[data-theme=dark] .hljs-meta,[data-theme=dark] .hljs-number,[data-theme=dark] .hljs-params,[data-theme=dark] .hljs-type{color:#e7ce56}[data-theme=dark] .hljs-attribute{color:#ee7c2b}[data-theme=dark] .hljs-addition,[data-theme=dark] .hljs-bullet,[data-theme=dark] .hljs-string,[data-theme=dark] .hljs-symbol{color:#177ddc}[data-theme=dark] .hljs-section,[data-theme=dark] .hljs-title{color:#78bb65}[data-theme=dark] .hljs-keyword,[data-theme=dark] .hljs-selector-tag{color:#b45ea4}[data-theme=dark] .hljs{display:block;padding:.5em;overflow-x:auto;color:#c0c5ce;background:#1c1d21}[data-theme=dark] .hljs-strong{font-weight:700}[data-theme=dark].index-page{background:#141414}[data-theme=dark].index-page #header{box-shadow:none}[data-theme=dark].index-page .page-banner__slogan{color:rgba(255,255,255,.85)}.ant-affix{scrollbar-color:rgba(0,0,0,.3) #6e6e6e;scrollbar-width:thin}.ant-affix::-webkit-scrollbar{width:6px;height:6px}.ant-affix::-webkit-scrollbar-track{box-shadow:inset 0 0 6px rgba(0,0,0,.3)}.ant-affix::-webkit-scrollbar-thumb{background-color:#6e6e6e;outline:#333 solid 1px} \ No newline at end of file +.ant-alert,body{line-height:1.5715}address,dl,ol,p,pre,ul{margin-bottom:1em}.ant-avatar,img{vertical-align:middle}.ant-btn,[role=button],a,area,button,html,input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}pre,textarea{overflow:auto}dd,h1,h2,h3,h4,h5,h6,legend{margin-bottom:.5em}.ant-badge-status,progress,sub,sup{vertical-align:baseline}[ant-click-animating-without-extra-node=true],[ant-click-animating=true],sub,sup{position:relative}.ant-carousel .slick-slider,.cdk-overlay-backdrop,html{-webkit-tap-highlight-color:transparent}[class*=ant-] input::-ms-clear,[class*=ant-] input::-ms-reveal,[class*=ant-]::-ms-clear,[class^=ant-] input::-ms-clear,[class^=ant-] input::-ms-reveal,[class^=ant-]::-ms-clear{display:none}body,html{width:100%}input::-ms-clear,input::-ms-reveal{display:none}*,::after,::before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar}@-ms-viewport{width:device-width}body{font-variant:tabular-nums;font-feature-settings:tnum}[tabindex='-1']:focus{outline:0!important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;color:rgba(255,255,255,.85);font-weight:500}dl,ol,p,ul{margin-top:0}abbr[data-original-title],abbr[title]{text-decoration:underline;text-decoration:underline dotted;border-bottom:0;cursor:help}address{font-style:normal;line-height:inherit}.font-italic,.hljs-emphasis,.token.italic,[data-theme=dark] .hljs-emphasis,dfn{font-style:italic}input[type=number],input[type=text],input[type=password],textarea{-webkit-appearance:none}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:500}dd{margin-left:0}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{font-size:75%;line-height:0}sub{bottom:-.25em}sup{top:-.5em}a{color:#177ddc;text-decoration:none;background-color:transparent;outline:0;cursor:pointer;-webkit-text-decoration-skip:objects}a:hover{color:#165996}a:active{color:#388ed3}a:active,a:focus,a:hover{text-decoration:none;outline:0}a[disabled]{color:rgba(255,255,255,.3);cursor:not-allowed}code,kbd,pre,samp{font-size:1em;font-family:SFMono-Regular,Consolas,'Liberation Mono',Menlo,Courier,monospace}pre{margin-top:0}img{border-style:none}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;color:rgba(255,255,255,.45);text-align:left;caption-side:bottom}button,input,optgroup,select,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{resize:vertical}fieldset{min-width:0}legend{display:block;width:100%;max-width:100%;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}.ant-input-number-handler-down-inner,.ant-input-number-handler-up-inner,.ant-select-arrow,.ant-select-multiple .ant-select-selection-item-remove,.anticon{text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}.clearfix::after,.clearfix::before{display:table;content:''}mark{padding:.2em;background-color:#2b2611}::selection{color:#fff;background:#177ddc}.clearfix::after{clear:both}.anticon,.anticon svg{display:inline-block}.anticon{color:inherit;font-style:normal;line-height:0;text-align:center;text-transform:none;vertical-align:-.125em}.anticon>*{line-height:1}.anticon::before{display:none}.anticon .anticon-icon{display:block}.anticon>.anticon{line-height:0;vertical-align:0}.anticon[tabindex]{cursor:pointer}.anticon-spin,.anticon-spin::before{display:inline-block;animation:loadingCircle 1s infinite linear}.ant-fade-appear,.ant-fade-enter,.ant-fade-leave{animation-timing-function:linear}.ant-fade-appear,.ant-fade-enter,.ant-fade-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-fade-appear.ant-fade-appear-active,.ant-fade-enter.ant-fade-enter-active{animation-name:antFadeIn;animation-play-state:running}.ant-fade-leave.ant-fade-leave-active{animation-name:antFadeOut;animation-play-state:running;pointer-events:none}.ant-fade-appear,.ant-fade-enter{opacity:0}@keyframes antFadeIn{0%{opacity:0}100%{opacity:1}}@keyframes antFadeOut{0%{opacity:1}100%{opacity:0}}.ant-move-up-appear,.ant-move-up-enter,.ant-move-up-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-move-up-appear.ant-move-up-appear-active,.ant-move-up-enter.ant-move-up-enter-active{animation-name:antMoveUpIn;animation-play-state:running}.ant-move-up-leave.ant-move-up-leave-active{animation-name:antMoveUpOut;animation-play-state:running;pointer-events:none}.ant-move-up-appear,.ant-move-up-enter{opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-move-up-leave{animation-timing-function:cubic-bezier(.6,.04,.98,.34)}.ant-move-down-appear,.ant-move-down-enter,.ant-move-down-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-move-down-appear.ant-move-down-appear-active,.ant-move-down-enter.ant-move-down-enter-active{animation-name:antMoveDownIn;animation-play-state:running}.ant-move-down-leave.ant-move-down-leave-active{animation-name:antMoveDownOut;animation-play-state:running;pointer-events:none}.ant-move-down-appear,.ant-move-down-enter{opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-move-down-leave{animation-timing-function:cubic-bezier(.6,.04,.98,.34)}.ant-move-left-appear,.ant-move-left-enter,.ant-move-left-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-move-left-appear.ant-move-left-appear-active,.ant-move-left-enter.ant-move-left-enter-active{animation-name:antMoveLeftIn;animation-play-state:running}.ant-move-left-leave.ant-move-left-leave-active{animation-name:antMoveLeftOut;animation-play-state:running;pointer-events:none}.ant-move-left-appear,.ant-move-left-enter{opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-move-left-leave{animation-timing-function:cubic-bezier(.6,.04,.98,.34)}.ant-move-right-appear,.ant-move-right-enter,.ant-move-right-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-move-right-appear.ant-move-right-appear-active,.ant-move-right-enter.ant-move-right-enter-active{animation-name:antMoveRightIn;animation-play-state:running}.ant-move-right-leave.ant-move-right-leave-active{animation-name:antMoveRightOut;animation-play-state:running;pointer-events:none}.ant-move-right-appear,.ant-move-right-enter{opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-move-right-leave{animation-timing-function:cubic-bezier(.6,.04,.98,.34)}@keyframes antMoveDownIn{0%{transform:translateY(100%);transform-origin:0 0;opacity:0}100%{transform:translateY(0);transform-origin:0 0;opacity:1}}@keyframes antMoveDownOut{0%{transform:translateY(0);transform-origin:0 0;opacity:1}100%{transform:translateY(100%);transform-origin:0 0;opacity:0}}@keyframes antMoveLeftIn{0%{transform:translateX(-100%);transform-origin:0 0;opacity:0}100%{transform:translateX(0);transform-origin:0 0;opacity:1}}@keyframes antMoveLeftOut{0%{transform:translateX(0);transform-origin:0 0;opacity:1}100%{transform:translateX(-100%);transform-origin:0 0;opacity:0}}@keyframes antMoveRightIn{0%{transform:translateX(100%);transform-origin:0 0;opacity:0}100%{transform:translateX(0);transform-origin:0 0;opacity:1}}@keyframes antMoveRightOut{0%{transform:translateX(0);transform-origin:0 0;opacity:1}100%{transform:translateX(100%);transform-origin:0 0;opacity:0}}@keyframes antMoveUpIn{0%{transform:translateY(-100%);transform-origin:0 0;opacity:0}100%{transform:translateY(0);transform-origin:0 0;opacity:1}}@keyframes antMoveUpOut{0%{transform:translateY(0);transform-origin:0 0;opacity:1}100%{transform:translateY(-100%);transform-origin:0 0;opacity:0}}@keyframes loadingCircle{100%{transform:rotate(360deg)}}.ant-click-animating-node,[ant-click-animating-without-extra-node=true]::after{position:absolute;top:0;right:0;bottom:0;left:0;display:block;border-radius:inherit;box-shadow:0 0 0 0 #177ddc;box-shadow:0 0 0 0 var(--antd-wave-shadow-color);opacity:.2;animation:fadeEffect 2s cubic-bezier(.08,.82,.17,1),waveEffect .4s cubic-bezier(.08,.82,.17,1);animation-fill-mode:forwards;content:'';pointer-events:none}@keyframes waveEffect{100%{box-shadow:0 0 0 #177ddc;box-shadow:0 0 0 6px var(--antd-wave-shadow-color)}}@keyframes fadeEffect{100%{opacity:0}}.ant-slide-up-appear,.ant-slide-up-enter,.ant-slide-up-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-slide-up-appear.ant-slide-up-appear-active,.ant-slide-up-enter.ant-slide-up-enter-active{animation-name:antSlideUpIn;animation-play-state:running}.ant-slide-up-leave.ant-slide-up-leave-active{animation-name:antSlideUpOut;animation-play-state:running;pointer-events:none}.ant-slide-up-appear,.ant-slide-up-enter{opacity:0;animation-timing-function:cubic-bezier(.23,1,.32,1)}.ant-slide-up-leave{animation-timing-function:cubic-bezier(.755,.05,.855,.06)}.ant-slide-down-appear,.ant-slide-down-enter,.ant-slide-down-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-slide-down-appear.ant-slide-down-appear-active,.ant-slide-down-enter.ant-slide-down-enter-active{animation-name:antSlideDownIn;animation-play-state:running}.ant-slide-down-leave.ant-slide-down-leave-active{animation-name:antSlideDownOut;animation-play-state:running;pointer-events:none}.ant-slide-down-appear,.ant-slide-down-enter{opacity:0;animation-timing-function:cubic-bezier(.23,1,.32,1)}.ant-slide-down-leave{animation-timing-function:cubic-bezier(.755,.05,.855,.06)}.ant-slide-left-appear,.ant-slide-left-enter,.ant-slide-left-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-slide-left-appear.ant-slide-left-appear-active,.ant-slide-left-enter.ant-slide-left-enter-active{animation-name:antSlideLeftIn;animation-play-state:running}.ant-slide-left-leave.ant-slide-left-leave-active{animation-name:antSlideLeftOut;animation-play-state:running;pointer-events:none}.ant-slide-left-appear,.ant-slide-left-enter{opacity:0;animation-timing-function:cubic-bezier(.23,1,.32,1)}.ant-slide-left-leave{animation-timing-function:cubic-bezier(.755,.05,.855,.06)}.ant-slide-right-appear,.ant-slide-right-enter,.ant-slide-right-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-slide-right-appear.ant-slide-right-appear-active,.ant-slide-right-enter.ant-slide-right-enter-active{animation-name:antSlideRightIn;animation-play-state:running}.ant-slide-right-leave.ant-slide-right-leave-active{animation-name:antSlideRightOut;animation-play-state:running;pointer-events:none}.ant-slide-right-appear,.ant-slide-right-enter{opacity:0;animation-timing-function:cubic-bezier(.23,1,.32,1)}.ant-slide-right-leave{animation-timing-function:cubic-bezier(.755,.05,.855,.06)}@keyframes antSlideUpIn{0%{transform:scaleY(.8);transform-origin:0 0;opacity:0}100%{transform:scaleY(1);transform-origin:0 0;opacity:1}}@keyframes antSlideUpOut{0%{transform:scaleY(1);transform-origin:0 0;opacity:1}100%{transform:scaleY(.8);transform-origin:0 0;opacity:0}}@keyframes antSlideDownIn{0%{transform:scaleY(.8);transform-origin:100% 100%;opacity:0}100%{transform:scaleY(1);transform-origin:100% 100%;opacity:1}}@keyframes antSlideDownOut{0%{transform:scaleY(1);transform-origin:100% 100%;opacity:1}100%{transform:scaleY(.8);transform-origin:100% 100%;opacity:0}}@keyframes antSlideLeftIn{0%{transform:scaleX(.8);transform-origin:0 0;opacity:0}100%{transform:scaleX(1);transform-origin:0 0;opacity:1}}@keyframes antSlideLeftOut{0%{transform:scaleX(1);transform-origin:0 0;opacity:1}100%{transform:scaleX(.8);transform-origin:0 0;opacity:0}}@keyframes antSlideRightIn{0%{transform:scaleX(.8);transform-origin:100% 0;opacity:0}100%{transform:scaleX(1);transform-origin:100% 0;opacity:1}}@keyframes antSlideRightOut{0%{transform:scaleX(1);transform-origin:100% 0;opacity:1}100%{transform:scaleX(.8);transform-origin:100% 0;opacity:0}}.ant-zoom-appear,.ant-zoom-enter,.ant-zoom-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-appear.ant-zoom-appear-active,.ant-zoom-enter.ant-zoom-enter-active{animation-name:antZoomIn;animation-play-state:running}.ant-zoom-leave.ant-zoom-leave-active{animation-name:antZoomOut;animation-play-state:running;pointer-events:none}.ant-zoom-appear,.ant-zoom-enter{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-appear-prepare,.ant-zoom-enter-prepare{transform:none}.ant-zoom-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-big-appear,.ant-zoom-big-enter,.ant-zoom-big-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-big-appear.ant-zoom-big-appear-active,.ant-zoom-big-enter.ant-zoom-big-enter-active{animation-name:antZoomBigIn;animation-play-state:running}.ant-zoom-big-leave.ant-zoom-big-leave-active{animation-name:antZoomBigOut;animation-play-state:running;pointer-events:none}.ant-zoom-big-appear,.ant-zoom-big-enter{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-big-appear-prepare,.ant-zoom-big-enter-prepare{transform:none}.ant-zoom-big-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-big-fast-appear,.ant-zoom-big-fast-enter,.ant-zoom-big-fast-leave{animation-duration:.1s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-big-fast-appear.ant-zoom-big-fast-appear-active,.ant-zoom-big-fast-enter.ant-zoom-big-fast-enter-active{animation-name:antZoomBigIn;animation-play-state:running}.ant-zoom-big-fast-leave.ant-zoom-big-fast-leave-active{animation-name:antZoomBigOut;animation-play-state:running;pointer-events:none}.ant-zoom-big-fast-appear,.ant-zoom-big-fast-enter{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-big-fast-appear-prepare,.ant-zoom-big-fast-enter-prepare{transform:none}.ant-zoom-big-fast-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-up-appear,.ant-zoom-up-enter,.ant-zoom-up-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-up-appear.ant-zoom-up-appear-active,.ant-zoom-up-enter.ant-zoom-up-enter-active{animation-name:antZoomUpIn;animation-play-state:running}.ant-zoom-up-leave.ant-zoom-up-leave-active{animation-name:antZoomUpOut;animation-play-state:running;pointer-events:none}.ant-zoom-up-appear,.ant-zoom-up-enter{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-up-appear-prepare,.ant-zoom-up-enter-prepare{transform:none}.ant-zoom-up-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-down-appear,.ant-zoom-down-enter,.ant-zoom-down-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-down-appear.ant-zoom-down-appear-active,.ant-zoom-down-enter.ant-zoom-down-enter-active{animation-name:antZoomDownIn;animation-play-state:running}.ant-zoom-down-leave.ant-zoom-down-leave-active{animation-name:antZoomDownOut;animation-play-state:running;pointer-events:none}.ant-zoom-down-appear,.ant-zoom-down-enter{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-down-appear-prepare,.ant-zoom-down-enter-prepare{transform:none}.ant-zoom-down-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-left-appear,.ant-zoom-left-enter,.ant-zoom-left-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-left-appear.ant-zoom-left-appear-active,.ant-zoom-left-enter.ant-zoom-left-enter-active{animation-name:antZoomLeftIn;animation-play-state:running}.ant-zoom-left-leave.ant-zoom-left-leave-active{animation-name:antZoomLeftOut;animation-play-state:running;pointer-events:none}.ant-zoom-left-appear,.ant-zoom-left-enter{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-left-appear-prepare,.ant-zoom-left-enter-prepare{transform:none}.ant-zoom-left-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-right-appear,.ant-zoom-right-enter,.ant-zoom-right-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-right-appear.ant-zoom-right-appear-active,.ant-zoom-right-enter.ant-zoom-right-enter-active{animation-name:antZoomRightIn;animation-play-state:running}.ant-zoom-right-leave.ant-zoom-right-leave-active{animation-name:antZoomRightOut;animation-play-state:running;pointer-events:none}.ant-zoom-right-appear,.ant-zoom-right-enter{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-right-appear-prepare,.ant-zoom-right-enter-prepare{transform:none}.ant-zoom-right-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}@keyframes antZoomIn{0%{transform:scale(.2);opacity:0}100%{transform:scale(1);opacity:1}}@keyframes antZoomOut{0%{transform:scale(1)}100%{transform:scale(.2);opacity:0}}@keyframes antZoomBigIn{0%{transform:scale(.8);opacity:0}100%{transform:scale(1);opacity:1}}@keyframes antZoomBigOut{0%{transform:scale(1)}100%{transform:scale(.8);opacity:0}}@keyframes antZoomUpIn{0%{transform:scale(.8);transform-origin:50% 0;opacity:0}100%{transform:scale(1);transform-origin:50% 0}}@keyframes antZoomUpOut{0%{transform:scale(1);transform-origin:50% 0}100%{transform:scale(.8);transform-origin:50% 0;opacity:0}}@keyframes antZoomLeftIn{0%{transform:scale(.8);transform-origin:0 50%;opacity:0}100%{transform:scale(1);transform-origin:0 50%}}@keyframes antZoomLeftOut{0%{transform:scale(1);transform-origin:0 50%}100%{transform:scale(.8);transform-origin:0 50%;opacity:0}}@keyframes antZoomRightIn{0%{transform:scale(.8);transform-origin:100% 50%;opacity:0}100%{transform:scale(1);transform-origin:100% 50%}}@keyframes antZoomRightOut{0%{transform:scale(1);transform-origin:100% 50%}100%{transform:scale(.8);transform-origin:100% 50%;opacity:0}}@keyframes antZoomDownIn{0%{transform:scale(.8);transform-origin:50% 100%;opacity:0}100%{transform:scale(1);transform-origin:50% 100%}}@keyframes antZoomDownOut{0%{transform:scale(1);transform-origin:50% 100%}100%{transform:scale(.8);transform-origin:50% 100%;opacity:0}}.ant-motion-collapse-legacy{overflow:hidden}.ant-motion-collapse-legacy-active{transition:height .2s cubic-bezier(.645,.045,.355,1),opacity .2s cubic-bezier(.645,.045,.355,1)!important}.ant-motion-collapse{overflow:hidden;transition:height .2s cubic-bezier(.645,.045,.355,1),opacity .2s cubic-bezier(.645,.045,.355,1)!important}.cdk-global-overlay-wrapper,.cdk-overlay-container{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper,.cdk-overlay-connected-position-bounding-box,.cdk-overlay-pane{position:absolute;display:flex;z-index:1000}.cdk-overlay-pane{pointer-events:auto;box-sizing:border-box;max-width:100%;max-height:100%}.cdk-overlay-backdrop{position:absolute;top:0;bottom:0;left:0;right:0;z-index:1000;pointer-events:auto;transition:opacity .4s cubic-bezier(.25,.8,.25,1);opacity:0}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:1}.cdk-high-contrast-active .cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:.6}.cdk-overlay-dark-backdrop{background:rgba(0,0,0,.32)}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{flex-direction:column;min-width:1px;min-height:1px}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}.cdk-visually-hidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;outline:0;-webkit-appearance:none;-moz-appearance:none}.nz-overlay-transparent-backdrop,.nz-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0}.nz-animate-disabled.ant-drawer.ant-drawer-open .ant-drawer-mask,.nz-animate-disabled.ant-scroll-number-only{animation:none;transition:none}.nz-animate-disabled.ant-drawer>*{transition:none}.nz-animate-disabled .ant-modal,.nz-animate-disabled .ant-modal-mask,.nz-animate-disabled .ant-modal-mask.zoom-enter,.nz-animate-disabled .ant-modal-mask.zoom-enter-active,.nz-animate-disabled .ant-modal-mask.zoom-leave,.nz-animate-disabled .ant-modal-mask.zoom-leave-active,.nz-animate-disabled .ant-modal.zoom-enter,.nz-animate-disabled .ant-modal.zoom-enter-active,.nz-animate-disabled .ant-modal.zoom-leave,.nz-animate-disabled .ant-modal.zoom-leave-active{animation:none;transition:none}.nz-animate-disabled.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow svg,.nz-animate-disabled.ant-menu,.nz-animate-disabled.ant-menu .ant-menu-item,.nz-animate-disabled.ant-menu .ant-menu-item .anticon,.nz-animate-disabled.ant-menu .ant-menu-item .anticon+span,.nz-animate-disabled.ant-menu .ant-menu-submenu-title,.nz-animate-disabled.ant-menu .ant-menu-submenu-title .anticon,.nz-animate-disabled.ant-menu .ant-menu-submenu-title .anticon+span,.nz-animate-disabled.ant-tabs .ant-tabs-bottom-content.ant-tabs-content-animated,.nz-animate-disabled.ant-tabs .ant-tabs-bottom-content>.ant-tabs-tabpane,.nz-animate-disabled.ant-tabs .ant-tabs-top-content.ant-tabs-content-animated,.nz-animate-disabled.ant-tabs .ant-tabs-top-content>.ant-tabs-tabpane,.nz-animate-disabled.ant-tabs.ant-tabs-bottom .ant-tabs-ink-bar-animated,.nz-animate-disabled.ant-tabs.ant-tabs-left .ant-tabs-ink-bar-animated,.nz-animate-disabled.ant-tabs.ant-tabs-right .ant-tabs-ink-bar-animated,.nz-animate-disabled.ant-tabs.ant-tabs-top .ant-tabs-ink-bar-animated{transition:none}.ant-affix{position:fixed;z-index:10}.ant-alert,.ant-anchor{font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;position:relative}nz-affix{display:block}.ant-alert{box-sizing:border-box;margin:0;color:rgba(255,255,255,.85);font-size:14px;display:flex;align-items:center;padding:8px 15px;word-wrap:break-word;border-radius:2px}.ant-alert-content{flex:1;min-width:0}.ant-alert-icon{margin-right:8px}.ant-alert-description{display:none;font-size:14px;line-height:22px}.ant-alert-success{background-color:#162312;border:1px solid #274916}.ant-alert-success .ant-alert-icon{color:#49aa19}.ant-alert-info{background-color:#111b26;border:1px solid #153450}.ant-alert-info .ant-alert-icon{color:#177ddc}.ant-alert-warning{background-color:#2b2111;border:1px solid #594214}.ant-alert-warning .ant-alert-icon{color:#d89614}.ant-alert-error{background-color:#2a1215;border:1px solid #58181c}.ant-alert-error .ant-alert-icon{color:#a61d24}.ant-alert-error .ant-alert-description>pre{margin:0;padding:0}.ant-alert-action{margin-left:8px}.ant-alert-close-icon{margin-left:8px;padding:0;overflow:hidden;font-size:12px;line-height:12px;background-color:transparent;border:none;outline:0;cursor:pointer}.ant-alert-close-icon .anticon-close{color:rgba(255,255,255,.45);transition:color .3s}.ant-alert-close-icon .anticon-close:hover{color:rgba(255,255,255,.75)}.ant-alert-close-text{color:rgba(255,255,255,.45);transition:color .3s}.ant-alert-close-text:hover{color:rgba(255,255,255,.75)}.ant-alert-message,.ant-alert-with-description .ant-alert-message,.ant-anchor,.ant-anchor-link-title{color:rgba(255,255,255,.85)}.ant-alert-with-description{align-items:flex-start;padding:15px 15px 15px 24px}.ant-alert-with-description.ant-alert-no-icon{padding:15px}.ant-alert-with-description .ant-alert-icon{margin-right:15px;font-size:24px}.ant-alert-with-description .ant-alert-message{display:block;margin-bottom:4px;font-size:16px}.ant-alert-with-description .ant-alert-description{display:block}.ant-alert.ant-alert-motion-leave{overflow:hidden;opacity:1;transition:max-height .3s cubic-bezier(.78,.14,.15,.86),opacity .3s cubic-bezier(.78,.14,.15,.86),padding-top .3s cubic-bezier(.78,.14,.15,.86),padding-bottom .3s cubic-bezier(.78,.14,.15,.86),margin-bottom .3s cubic-bezier(.78,.14,.15,.86)}.ant-alert.ant-alert-motion-leave-active{max-height:0;margin-bottom:0!important;padding-top:0;padding-bottom:0;opacity:0}.ant-alert-banner{margin-bottom:0;border:0;border-radius:0}.ant-alert.ant-alert-rtl{direction:rtl}.ant-alert-rtl .ant-alert-icon{margin-right:auto;margin-left:8px}.ant-alert-rtl .ant-alert-action,.ant-alert-rtl .ant-alert-close-icon{margin-right:8px;margin-left:auto}.ant-alert-rtl.ant-alert-with-description{padding-right:24px;padding-left:15px}.ant-alert-rtl.ant-alert-with-description .ant-alert-icon{margin-right:auto;margin-left:15px}nz-alert{display:block}.ant-alert-icon{line-height:1}.ant-anchor,.ant-back-top{line-height:1.5715;box-sizing:border-box}.ant-anchor{margin:0;padding:0 0 0 2px;font-size:14px}.ant-anchor-wrapper{margin-left:-4px;padding-left:4px;overflow:auto;background-color:transparent}.ant-anchor-ink{position:absolute;top:0;left:0;height:100%}.ant-anchor-ink::before{position:relative;display:block;width:2px;height:100%;margin:0 auto;background-color:#303030;content:' '}.ant-anchor-ink-ball{position:absolute;left:50%;display:none;width:8px;height:8px;background-color:#141414;border:2px solid #177ddc;border-radius:8px;transform:translateX(-50%);transition:top .3s ease-in-out}.ant-anchor-link-title,.ant-avatar{position:relative;white-space:nowrap;overflow:hidden}.ant-anchor-ink-ball.visible{display:inline-block}.ant-anchor-fixed .ant-anchor-ink .ant-anchor-ink-ball{display:none}.ant-anchor-link{padding:4px 0 4px 16px}.ant-anchor-link-title{display:block;margin-bottom:3px;text-overflow:ellipsis;transition:all .3s}.ant-anchor-link-title:only-child{margin-bottom:0}.ant-anchor-link-active>.ant-anchor-link-title{color:#177ddc}.ant-anchor-link .ant-anchor-link{padding-top:2px;padding-bottom:2px}.ant-anchor-rtl{direction:rtl}.ant-anchor-rtl.ant-anchor-wrapper{margin-right:-4px;margin-left:0;padding-right:4px;padding-left:0}.ant-anchor-rtl .ant-anchor-ink{right:0;left:auto}.ant-anchor-rtl .ant-anchor-ink-ball{right:50%;left:0;transform:translateX(50%)}.ant-anchor-rtl .ant-anchor-link{padding:4px 16px 4px 0}.ant-avatar,.ant-back-top,.ant-badge{margin:0;padding:0;list-style:none;font-variant:tabular-nums;font-feature-settings:tnum}nz-link{display:block}.ant-avatar{box-sizing:border-box;font-size:14px;display:inline-block;color:#fff;text-align:center;background:rgba(255,255,255,.3);width:32px;height:32px;line-height:32px;border-radius:50%}.ant-avatar-lg-string,.ant-avatar-sm-string,.ant-avatar-string{position:absolute;left:50%;transform-origin:0 center}.ant-avatar-image{background:0 0}.ant-avatar .ant-image-img{display:block}.ant-avatar.ant-avatar-icon{font-size:18px}.ant-avatar.ant-avatar-icon>.anticon{margin:0}.ant-avatar-lg{width:40px;height:40px;line-height:40px;border-radius:50%}.ant-avatar-lg.ant-avatar-icon{font-size:24px}.ant-avatar-sm.ant-avatar-icon,.ant-back-top{font-size:14px}.ant-avatar-lg.ant-avatar-icon>.anticon{margin:0}.ant-avatar-sm{width:24px;height:24px;line-height:24px;border-radius:50%}.ant-avatar-sm.ant-avatar-icon>.anticon{margin:0}.ant-avatar-square{border-radius:2px}.ant-avatar>img{display:block;width:100%;height:100%;object-fit:cover}.ant-avatar-group,.ant-btn-group{display:inline-flex}.ant-avatar-group .ant-avatar{border:1px solid #fff}.ant-avatar-group .ant-avatar:not(:first-child){margin-left:-8px}.ant-avatar-group-popover .ant-avatar+.ant-avatar{margin-left:3px}.ant-avatar-group-rtl .ant-avatar:not(:first-child){margin-right:-8px;margin-left:0}.ant-avatar-group-popover.ant-popover-rtl .ant-avatar+.ant-avatar{margin-right:3px;margin-left:0}.ant-back-top{color:rgba(255,255,255,.85);position:fixed;right:100px;bottom:50px;z-index:10;width:40px;height:40px;cursor:pointer}.ant-back-top:empty{display:none}.ant-badge,.ant-badge-status-dot{display:inline-block;position:relative}.ant-back-top-rtl{right:auto;left:100px;direction:rtl}.ant-back-top-content{width:40px;height:40px;overflow:hidden;color:#fff;text-align:center;background-color:rgba(255,255,255,.45);border-radius:20px;transition:all .3s}.ant-back-top-content:hover{background-color:rgba(255,255,255,.85);transition:all .3s}.ant-badge-count,.ant-badge-dot{z-index:auto;background:#a61d24;box-shadow:0 0 0 1px #141414}.ant-back-top-icon{font-size:24px;line-height:40px}@media screen and (max-width:768px){.ant-back-top{right:60px}.ant-back-top-rtl{right:auto;left:60px}}@media screen and (max-width:480px){.ant-back-top{right:20px}.ant-back-top-rtl{right:auto;left:20px}}.ant-badge{box-sizing:border-box;color:rgba(255,255,255,.85);font-size:14px;line-height:1}.ant-badge-count{min-width:20px;height:20px;padding:0 6px;color:#fff;font-weight:400;font-size:12px;line-height:20px;white-space:nowrap;text-align:center;border-radius:10px}.ant-badge-count a,.ant-badge-count a:hover{color:#fff}.ant-badge-count-sm{min-width:14px;height:14px;padding:0;font-size:12px;line-height:14px;border-radius:7px}.ant-badge-multiple-words{padding:0 8px}.ant-badge-dot{width:6px;min-width:6px;height:6px;border-radius:100%}.ant-badge-dot.ant-scroll-number{transition:background 1.5s}.ant-badge .ant-scroll-number-custom-component,.ant-badge-count,.ant-badge-dot{position:absolute;top:0;right:0;transform:translate(50%,-50%);transform-origin:100% 0}.ant-badge .ant-scroll-number-custom-component.anticon-spin,.ant-badge-count.anticon-spin,.ant-badge-dot.anticon-spin{animation:antBadgeLoadingCircle 1s infinite linear}.ant-badge-status{line-height:inherit}.ant-badge-not-a-wrapper:not(.ant-badge-status),.ant-badge-status-dot{vertical-align:middle}.ant-badge-status-dot{top:-1px;width:6px;height:6px;border-radius:50%}.ant-badge-status-success{background-color:#49aa19}.ant-badge-status-processing{position:relative;background-color:#177ddc}.ant-badge-status-processing::after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #177ddc;border-radius:50%;animation:antStatusProcessing 1.2s infinite ease-in-out;content:''}.ant-badge-status-default{background-color:#d9d9d9}.ant-badge-status-error{background-color:#a61d24}.ant-badge-status-warning{background-color:#d89614}.ant-badge-status-magenta,.ant-badge-status-pink{background:#cb2b83}.ant-badge-status-red{background:#d32029}.ant-badge-status-volcano{background:#d84a1b}.ant-badge-status-orange{background:#d87a16}.ant-badge-status-yellow{background:#d8bd14}.ant-badge-status-gold{background:#d89614}.ant-badge-status-cyan{background:#13a8a8}.ant-badge-status-lime{background:#8bbb11}.ant-badge-status-green{background:#49aa19}.ant-badge-status-blue{background:#177ddc}.ant-badge-status-geekblue{background:#2b4acb}.ant-badge-status-purple{background:#642ab5}.ant-badge-status-text{margin-left:8px;color:rgba(255,255,255,.85);font-size:14px}.ant-badge-zoom-appear,.ant-badge-zoom-enter{animation:antZoomBadgeIn .3s cubic-bezier(.12,.4,.29,1.46);animation-fill-mode:both}.ant-badge-zoom-leave{animation:antZoomBadgeOut .3s cubic-bezier(.71,-.46,.88,.6);animation-fill-mode:both}.ant-badge-not-a-wrapper .ant-badge-zoom-appear,.ant-badge-not-a-wrapper .ant-badge-zoom-enter{animation:antNoWrapperZoomBadgeIn .3s cubic-bezier(.12,.4,.29,1.46)}.ant-badge-not-a-wrapper .ant-badge-zoom-leave{animation:antNoWrapperZoomBadgeOut .3s cubic-bezier(.71,-.46,.88,.6)}.ant-badge-not-a-wrapper .ant-badge-count,.ant-badge-not-a-wrapper .ant-scroll-number-custom-component{transform:none}.ant-badge-not-a-wrapper .ant-scroll-number,.ant-badge-not-a-wrapper .ant-scroll-number-custom-component{position:relative;top:auto;display:block;transform-origin:50% 50%}@keyframes antStatusProcessing{0%{transform:scale(.8);opacity:.5}100%{transform:scale(2.4);opacity:0}}.ant-scroll-number-only,.ant-scroll-number-only>p.ant-scroll-number-only-unit{height:20px;-webkit-transform-style:preserve-3d;-webkit-backface-visibility:hidden}.ant-scroll-number{overflow:hidden;direction:ltr}.ant-scroll-number-only{position:relative;display:inline-block;transition:all .3s cubic-bezier(.645,.045,.355,1)}.ant-scroll-number-only>p.ant-scroll-number-only-unit{margin:0}.ant-scroll-number-symbol{vertical-align:top}@keyframes antZoomBadgeIn{0%{transform:scale(0) translate(50%,-50%);opacity:0}100%{transform:scale(1) translate(50%,-50%)}}@keyframes antZoomBadgeOut{0%{transform:scale(1) translate(50%,-50%)}100%{transform:scale(0) translate(50%,-50%);opacity:0}}@keyframes antNoWrapperZoomBadgeIn{0%{transform:scale(0);opacity:0}100%{transform:scale(1)}}@keyframes antNoWrapperZoomBadgeOut{0%{transform:scale(1)}100%{transform:scale(0);opacity:0}}@keyframes antBadgeLoadingCircle{0%{transform-origin:50%}100%{transform:translate(50%,-50%) rotate(360deg);transform-origin:50%}}.ant-ribbon-wrapper{position:relative}.ant-ribbon{box-sizing:border-box;margin:0;font-size:14px;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;position:absolute;top:8px;height:22px;padding:0 8px;color:#fff;line-height:22px;white-space:nowrap;background-color:#177ddc;border-radius:2px}.ant-breadcrumb,.ant-btn{line-height:1.5715;font-size:14px}.ant-ribbon-text{color:#fff}.ant-ribbon-corner{position:absolute;top:100%;width:8px;height:8px;color:currentcolor;border:4px solid;transform:scaleY(.75);transform-origin:top}.ant-ribbon-corner::after{position:absolute;top:-4px;left:-4px;width:inherit;height:inherit;color:rgba(0,0,0,.25);border:inherit;content:''}.ant-ribbon-color-magenta,.ant-ribbon-color-pink{color:#cb2b83;background:#cb2b83}.ant-ribbon-color-red{color:#d32029;background:#d32029}.ant-ribbon-color-volcano{color:#d84a1b;background:#d84a1b}.ant-ribbon-color-orange{color:#d87a16;background:#d87a16}.ant-ribbon-color-yellow{color:#d8bd14;background:#d8bd14}.ant-ribbon-color-gold{color:#d89614;background:#d89614}.ant-ribbon-color-cyan{color:#13a8a8;background:#13a8a8}.ant-ribbon-color-lime{color:#8bbb11;background:#8bbb11}.ant-ribbon-color-green{color:#49aa19;background:#49aa19}.ant-ribbon-color-blue{color:#177ddc;background:#177ddc}.ant-ribbon-color-geekblue{color:#2b4acb;background:#2b4acb}.ant-ribbon-color-purple{color:#642ab5;background:#642ab5}.ant-ribbon.ant-ribbon-placement-end{right:-8px;border-bottom-right-radius:0}.ant-ribbon.ant-ribbon-placement-end .ant-ribbon-corner{right:0;border-color:currentcolor transparent transparent currentcolor}.ant-ribbon-rtl.ant-ribbon-placement-end .ant-ribbon-corner,.ant-ribbon-rtl.ant-ribbon-placement-end .ant-ribbon-corner::after,.ant-ribbon.ant-ribbon-placement-start .ant-ribbon-corner{border-color:currentcolor currentcolor transparent transparent}.ant-ribbon.ant-ribbon-placement-start{left:-8px;border-bottom-left-radius:0}.ant-ribbon.ant-ribbon-placement-start .ant-ribbon-corner{left:0}.ant-badge-rtl{direction:rtl}.ant-badge-rtl.ant-badge:not(.ant-badge-not-a-wrapper) .ant-badge-count,.ant-badge-rtl.ant-badge:not(.ant-badge-not-a-wrapper) .ant-badge-dot,.ant-badge-rtl.ant-badge:not(.ant-badge-not-a-wrapper) .ant-scroll-number-custom-component{right:auto;left:0;direction:ltr;transform:translate(-50%,-50%);transform-origin:0 0}.ant-breadcrumb-rtl,.ant-btn-group.ant-btn-group-rtl,.ant-btn-rtl,.ant-card-rtl,.ant-carousel-rtl,.ant-checkbox-rtl,.ant-collapse-rtl,.ant-comment-rtl,.ant-picker-dropdown-rtl .ant-picker-footer-extra,.ant-picker-input>input-rtl,.ant-picker-panel-rtl,.ant-picker-rtl,.ant-ribbon-rtl{direction:rtl}.ant-badge-rtl.ant-badge:not(.ant-badge-not-a-wrapper) .ant-scroll-number-custom-component{right:auto;left:0;transform:translate(-50%,-50%);transform-origin:0 0}.ant-badge-rtl .ant-badge-status-text{margin-right:8px;margin-left:0}.ant-breadcrumb,.ant-breadcrumb ol{margin:0;padding:0;list-style:none}.ant-badge:not(.ant-badge-not-a-wrapper).ant-badge-rtl .ant-badge-zoom-appear,.ant-badge:not(.ant-badge-not-a-wrapper).ant-badge-rtl .ant-badge-zoom-enter{animation-name:antZoomBadgeInRtl}.ant-badge:not(.ant-badge-not-a-wrapper).ant-badge-rtl .ant-badge-zoom-leave{animation-name:antZoomBadgeOutRtl}.ant-ribbon-rtl.ant-ribbon-placement-end{right:unset;left:-8px;border-bottom-right-radius:2px;border-bottom-left-radius:0}.ant-ribbon-rtl.ant-ribbon-placement-end .ant-ribbon-corner{right:unset;left:0}.ant-ribbon-rtl.ant-ribbon-placement-start .ant-ribbon-corner,.ant-ribbon-rtl.ant-ribbon-placement-start .ant-ribbon-corner::after{border-color:currentcolor transparent transparent currentcolor}.ant-ribbon-rtl.ant-ribbon-placement-start{right:-8px;left:unset;border-bottom-right-radius:0;border-bottom-left-radius:2px}.ant-ribbon-rtl.ant-ribbon-placement-start .ant-ribbon-corner{right:0;left:unset}@keyframes antZoomBadgeInRtl{0%{transform:scale(0) translate(-50%,-50%);opacity:0}100%{transform:scale(1) translate(-50%,-50%)}}@keyframes antZoomBadgeOutRtl{0%{transform:scale(1) translate(-50%,-50%)}100%{transform:scale(0) translate(-50%,-50%);opacity:0}}.ant-badge .ant-scroll-number:only-child{position:relative;top:auto;display:block}.ant-badge .ant-badge-count:only-child{transform:none}nz-ribbon{display:block}.ant-breadcrumb{box-sizing:border-box;font-variant:tabular-nums;font-feature-settings:tnum;color:rgba(255,255,255,.45)}.ant-breadcrumb .anticon{font-size:14px}.ant-breadcrumb ol{display:flex;flex-wrap:wrap}.ant-breadcrumb a{color:rgba(255,255,255,.45);transition:color .3s}.ant-breadcrumb a:hover,.ant-breadcrumb li:last-child,.ant-breadcrumb li:last-child a{color:rgba(255,255,255,.85)}li:last-child .ant-breadcrumb-separator{display:none}.ant-breadcrumb-rtl::after,.ant-breadcrumb-rtl::before{display:table;content:''}.ant-breadcrumb-separator{margin:0 8px;color:rgba(255,255,255,.45)}.ant-breadcrumb>nz-breadcrumb-item:last-child,.ant-breadcrumb>nz-breadcrumb-item:last-child a,.ant-btn{color:rgba(255,255,255,.85)}.ant-breadcrumb-link>.anticon+a,.ant-breadcrumb-link>.anticon+span,.ant-breadcrumb-overlay-link>.anticon{margin-left:4px}.ant-breadcrumb-rtl::after{clear:both}.ant-breadcrumb-rtl>span{float:right}.ant-breadcrumb-rtl .ant-breadcrumb-link>.anticon+a,.ant-breadcrumb-rtl .ant-breadcrumb-link>.anticon+span,.ant-breadcrumb-rtl .ant-breadcrumb-overlay-link>.anticon{margin-right:4px;margin-left:0}.ant-breadcrumb-link .anticon+span{margin-left:4px}.ant-breadcrumb-rtl>nz-breadcrumb-item{float:right}nz-breadcrumb{display:block}nz-breadcrumb-item:last-child .ant-breadcrumb-separator{display:none}.ant-btn,.ant-btn:empty,.ant-btn>span{display:inline-block}.ant-btn{position:relative;font-weight:400;white-space:nowrap;text-align:center;border:1px solid #434343;box-shadow:0 2px 0 rgba(0,0,0,.015);cursor:pointer;transition:all .3s cubic-bezier(.645,.045,.355,1);user-select:none;height:32px;padding:4px 15px;border-radius:2px;background:0 0}.ant-btn>.anticon,.ant-checkbox{line-height:1}.ant-btn,.ant-btn:active,.ant-btn:focus{outline:0}.ant-btn:not([disabled]):hover{text-decoration:none}.ant-btn:not([disabled]):active{outline:0;box-shadow:none}.ant-btn[disabled]{cursor:not-allowed}.ant-btn[disabled]>*{pointer-events:none}.ant-btn-lg{height:40px;padding:6.4px 15px;font-size:16px;border-radius:2px}.ant-btn-sm{height:24px;padding:0 7px;font-size:14px;border-radius:2px}.ant-btn>a:only-child{color:currentcolor}.ant-btn>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn:focus,.ant-btn:hover{color:#165996;border-color:#165996}.ant-btn:focus>a:only-child,.ant-btn:hover>a:only-child{color:currentcolor}.ant-btn:focus>a:only-child::after,.ant-btn:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn:active{color:#388ed3;border-color:#388ed3}.ant-btn:active>a:only-child{color:currentcolor}.ant-btn:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn[disabled],.ant-btn[disabled]:active,.ant-btn[disabled]:focus,.ant-btn[disabled]:hover{color:rgba(255,255,255,.3);border-color:#434343;background:rgba(255,255,255,.08);text-shadow:none;box-shadow:none}.ant-btn[disabled]:active>a:only-child,.ant-btn[disabled]:focus>a:only-child,.ant-btn[disabled]:hover>a:only-child,.ant-btn[disabled]>a:only-child{color:currentcolor}.ant-btn[disabled]:active>a:only-child::after,.ant-btn[disabled]:focus>a:only-child::after,.ant-btn[disabled]:hover>a:only-child::after,.ant-btn[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn:active,.ant-btn:focus,.ant-btn:hover{text-decoration:none;background:0 0}.ant-btn-primary{color:#fff;border-color:#177ddc;background:#177ddc;text-shadow:0 -1px 0 rgba(0,0,0,.12);box-shadow:0 2px 0 rgba(0,0,0,.045)}.ant-btn-primary>a:only-child{color:currentcolor}.ant-btn-primary>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-primary:focus,.ant-btn-primary:hover{color:#fff;border-color:#095cb5;background:#095cb5}.ant-btn-primary:focus>a:only-child,.ant-btn-primary:hover>a:only-child{color:currentcolor}.ant-btn-primary:focus>a:only-child::after,.ant-btn-primary:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-primary:active{color:#fff;border-color:#3c9be8;background:#3c9be8}.ant-btn-primary:active>a:only-child{color:currentcolor}.ant-btn-primary:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-primary[disabled],.ant-btn-primary[disabled]:active,.ant-btn-primary[disabled]:focus,.ant-btn-primary[disabled]:hover{color:rgba(255,255,255,.3);border-color:#434343;background:rgba(255,255,255,.08);text-shadow:none;box-shadow:none}.ant-btn-primary[disabled]:active>a:only-child,.ant-btn-primary[disabled]:focus>a:only-child,.ant-btn-primary[disabled]:hover>a:only-child,.ant-btn-primary[disabled]>a:only-child{color:currentcolor}.ant-btn-primary[disabled]:active>a:only-child::after,.ant-btn-primary[disabled]:focus>a:only-child::after,.ant-btn-primary[disabled]:hover>a:only-child::after,.ant-btn-primary[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-group .ant-btn-primary:not(:first-child):not(:last-child){border-right-color:#165996;border-left-color:#165996}.ant-btn-group .ant-btn-primary:not(:first-child):not(:last-child):disabled{border-color:#434343}.ant-btn-group .ant-btn-primary:first-child:not(:last-child){border-right-color:#165996}.ant-btn-group .ant-btn-primary:first-child:not(:last-child)[disabled]{border-right-color:#434343}.ant-btn-group .ant-btn-primary+.ant-btn-primary,.ant-btn-group .ant-btn-primary:last-child:not(:first-child){border-left-color:#165996}.ant-btn-group .ant-btn-primary+.ant-btn-primary[disabled],.ant-btn-group .ant-btn-primary:last-child:not(:first-child)[disabled]{border-left-color:#434343}.ant-btn-ghost{color:rgba(255,255,255,.85);border-color:#434343;background:0 0}.ant-btn-ghost>a:only-child{color:currentcolor}.ant-btn-ghost>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-ghost:focus,.ant-btn-ghost:hover{color:#165996;border-color:#165996;background:0 0}.ant-btn-ghost:focus>a:only-child,.ant-btn-ghost:hover>a:only-child{color:currentcolor}.ant-btn-ghost:focus>a:only-child::after,.ant-btn-ghost:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-ghost:active{color:#388ed3;border-color:#388ed3;background:0 0}.ant-btn-ghost:active>a:only-child{color:currentcolor}.ant-btn-ghost:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-ghost[disabled],.ant-btn-ghost[disabled]:active,.ant-btn-ghost[disabled]:focus,.ant-btn-ghost[disabled]:hover{color:rgba(255,255,255,.3);border-color:#434343;background:rgba(255,255,255,.08);text-shadow:none;box-shadow:none}.ant-btn-ghost[disabled]:active>a:only-child,.ant-btn-ghost[disabled]:focus>a:only-child,.ant-btn-ghost[disabled]:hover>a:only-child,.ant-btn-ghost[disabled]>a:only-child{color:currentcolor}.ant-btn-ghost[disabled]:active>a:only-child::after,.ant-btn-ghost[disabled]:focus>a:only-child::after,.ant-btn-ghost[disabled]:hover>a:only-child::after,.ant-btn-ghost[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dashed{color:rgba(255,255,255,.85);border-color:#434343;background:0 0;border-style:dashed}.ant-btn-dashed>a:only-child{color:currentcolor}.ant-btn-dashed>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dashed:focus,.ant-btn-dashed:hover{color:#165996;border-color:#165996;background:0 0}.ant-btn-dashed:focus>a:only-child,.ant-btn-dashed:hover>a:only-child{color:currentcolor}.ant-btn-dashed:focus>a:only-child::after,.ant-btn-dashed:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dashed:active{color:#388ed3;border-color:#388ed3;background:0 0}.ant-btn-dashed:active>a:only-child{color:currentcolor}.ant-btn-dashed:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dashed[disabled],.ant-btn-dashed[disabled]:active,.ant-btn-dashed[disabled]:focus,.ant-btn-dashed[disabled]:hover{color:rgba(255,255,255,.3);border-color:#434343;background:rgba(255,255,255,.08);text-shadow:none;box-shadow:none}.ant-btn-dashed[disabled]:active>a:only-child,.ant-btn-dashed[disabled]:focus>a:only-child,.ant-btn-dashed[disabled]:hover>a:only-child,.ant-btn-dashed[disabled]>a:only-child{color:currentcolor}.ant-btn-dashed[disabled]:active>a:only-child::after,.ant-btn-dashed[disabled]:focus>a:only-child::after,.ant-btn-dashed[disabled]:hover>a:only-child::after,.ant-btn-dashed[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-danger{color:#fff;border-color:#a61d24;background:#a61d24;text-shadow:0 -1px 0 rgba(0,0,0,.12);box-shadow:0 2px 0 rgba(0,0,0,.045)}.ant-btn-danger>a:only-child{color:currentcolor}.ant-btn-danger>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-danger:focus,.ant-btn-danger:hover{color:#fff;border-color:#800f19;background:#800f19}.ant-btn-danger:focus>a:only-child,.ant-btn-danger:hover>a:only-child{color:currentcolor}.ant-btn-danger:focus>a:only-child::after,.ant-btn-danger:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-danger:active{color:#fff;border-color:#b33b3d;background:#b33b3d}.ant-btn-danger:active>a:only-child{color:currentcolor}.ant-btn-danger:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-danger[disabled],.ant-btn-danger[disabled]:active,.ant-btn-danger[disabled]:focus,.ant-btn-danger[disabled]:hover{color:rgba(255,255,255,.3);border-color:#434343;background:rgba(255,255,255,.08);text-shadow:none;box-shadow:none}.ant-btn-danger[disabled]:active>a:only-child,.ant-btn-danger[disabled]:focus>a:only-child,.ant-btn-danger[disabled]:hover>a:only-child,.ant-btn-danger[disabled]>a:only-child{color:currentcolor}.ant-btn-danger[disabled]:active>a:only-child::after,.ant-btn-danger[disabled]:focus>a:only-child::after,.ant-btn-danger[disabled]:hover>a:only-child::after,.ant-btn-danger[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-link{color:#177ddc;border-color:transparent;background:0 0;box-shadow:none}.ant-btn-link>a:only-child{color:currentcolor}.ant-btn-link>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-link:focus,.ant-btn-link:hover{color:#165996;background:0 0}.ant-btn-link:focus>a:only-child,.ant-btn-link:hover>a:only-child{color:currentcolor}.ant-btn-link:focus>a:only-child::after,.ant-btn-link:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-link:active{color:#388ed3;background:0 0}.ant-btn-link:active>a:only-child{color:currentcolor}.ant-btn-link:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-link:hover{background:0 0}.ant-btn-link:active,.ant-btn-link:focus,.ant-btn-link:hover{border-color:transparent}.ant-btn-link[disabled],.ant-btn-link[disabled]:active,.ant-btn-link[disabled]:focus,.ant-btn-link[disabled]:hover{color:rgba(255,255,255,.3);border-color:transparent;background:0 0;text-shadow:none;box-shadow:none}.ant-btn-link[disabled]:active>a:only-child,.ant-btn-link[disabled]:focus>a:only-child,.ant-btn-link[disabled]:hover>a:only-child,.ant-btn-link[disabled]>a:only-child{color:currentcolor}.ant-btn-link[disabled]:active>a:only-child::after,.ant-btn-link[disabled]:focus>a:only-child::after,.ant-btn-link[disabled]:hover>a:only-child::after,.ant-btn-link[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-text{color:rgba(255,255,255,.85);border-color:transparent;background:0 0;box-shadow:none}.ant-btn-text>a:only-child{color:currentcolor}.ant-btn-text>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-text:focus,.ant-btn-text:hover{color:#165996}.ant-btn-text:focus>a:only-child,.ant-btn-text:hover>a:only-child{color:currentcolor}.ant-btn-text:focus>a:only-child::after,.ant-btn-text:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-text:active{color:#388ed3}.ant-btn-text:active>a:only-child{color:currentcolor}.ant-btn-text:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-text:focus,.ant-btn-text:hover{color:rgba(255,255,255,.85);background:rgba(255,255,255,.03);border-color:transparent}.ant-btn-text:active{color:rgba(255,255,255,.85);background:rgba(255,255,255,.04);border-color:transparent}.ant-btn-text[disabled],.ant-btn-text[disabled]:active,.ant-btn-text[disabled]:focus,.ant-btn-text[disabled]:hover{color:rgba(255,255,255,.3);border-color:transparent;background:0 0;text-shadow:none;box-shadow:none}.ant-btn-text[disabled]:active>a:only-child,.ant-btn-text[disabled]:focus>a:only-child,.ant-btn-text[disabled]:hover>a:only-child,.ant-btn-text[disabled]>a:only-child{color:currentcolor}.ant-btn-text[disabled]:active>a:only-child::after,.ant-btn-text[disabled]:focus>a:only-child::after,.ant-btn-text[disabled]:hover>a:only-child::after,.ant-btn-text[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous{color:#a61d24;border-color:#a61d24;background:0 0}.ant-btn-dangerous>a:only-child{color:currentcolor}.ant-btn-dangerous>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous:focus,.ant-btn-dangerous:hover{color:#800f19;border-color:#800f19;background:0 0}.ant-btn-dangerous:focus>a:only-child,.ant-btn-dangerous:hover>a:only-child{color:currentcolor}.ant-btn-dangerous:focus>a:only-child::after,.ant-btn-dangerous:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous:active{color:#b33b3d;border-color:#b33b3d;background:0 0}.ant-btn-dangerous:active>a:only-child{color:currentcolor}.ant-btn-dangerous:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous[disabled],.ant-btn-dangerous[disabled]:active,.ant-btn-dangerous[disabled]:focus,.ant-btn-dangerous[disabled]:hover{color:rgba(255,255,255,.3);border-color:#434343;background:rgba(255,255,255,.08);text-shadow:none;box-shadow:none}.ant-btn-dangerous[disabled]:active>a:only-child,.ant-btn-dangerous[disabled]:focus>a:only-child,.ant-btn-dangerous[disabled]:hover>a:only-child,.ant-btn-dangerous[disabled]>a:only-child{color:currentcolor}.ant-btn-dangerous[disabled]:active>a:only-child::after,.ant-btn-dangerous[disabled]:focus>a:only-child::after,.ant-btn-dangerous[disabled]:hover>a:only-child::after,.ant-btn-dangerous[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-primary{color:#fff;border-color:#a61d24;background:#a61d24;text-shadow:0 -1px 0 rgba(0,0,0,.12);box-shadow:0 2px 0 rgba(0,0,0,.045)}.ant-btn-dangerous.ant-btn-primary>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-primary>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-primary:focus,.ant-btn-dangerous.ant-btn-primary:hover{color:#fff;border-color:#800f19;background:#800f19}.ant-btn-dangerous.ant-btn-primary:focus>a:only-child,.ant-btn-dangerous.ant-btn-primary:hover>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-primary:focus>a:only-child::after,.ant-btn-dangerous.ant-btn-primary:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-primary:active{color:#fff;border-color:#b33b3d;background:#b33b3d}.ant-btn-dangerous.ant-btn-primary:active>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-primary:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-primary[disabled],.ant-btn-dangerous.ant-btn-primary[disabled]:active,.ant-btn-dangerous.ant-btn-primary[disabled]:focus,.ant-btn-dangerous.ant-btn-primary[disabled]:hover{color:rgba(255,255,255,.3);border-color:#434343;background:rgba(255,255,255,.08);text-shadow:none;box-shadow:none}.ant-btn-dangerous.ant-btn-primary[disabled]:active>a:only-child,.ant-btn-dangerous.ant-btn-primary[disabled]:focus>a:only-child,.ant-btn-dangerous.ant-btn-primary[disabled]:hover>a:only-child,.ant-btn-dangerous.ant-btn-primary[disabled]>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-primary[disabled]:active>a:only-child::after,.ant-btn-dangerous.ant-btn-primary[disabled]:focus>a:only-child::after,.ant-btn-dangerous.ant-btn-primary[disabled]:hover>a:only-child::after,.ant-btn-dangerous.ant-btn-primary[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-link{color:#a61d24;border-color:transparent;background:0 0;box-shadow:none}.ant-btn-dangerous.ant-btn-link>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-link>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-link:focus,.ant-btn-dangerous.ant-btn-link:hover{color:#800f19;border-color:transparent;background:0 0}.ant-btn-dangerous.ant-btn-link:focus>a:only-child,.ant-btn-dangerous.ant-btn-link:hover>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-link:focus>a:only-child::after,.ant-btn-dangerous.ant-btn-link:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-link:active{color:#b33b3d;border-color:transparent;background:0 0}.ant-btn-dangerous.ant-btn-link:active>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-link:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-link[disabled],.ant-btn-dangerous.ant-btn-link[disabled]:active,.ant-btn-dangerous.ant-btn-link[disabled]:focus,.ant-btn-dangerous.ant-btn-link[disabled]:hover{color:rgba(255,255,255,.3);border-color:transparent;background:0 0;text-shadow:none;box-shadow:none}.ant-btn-dangerous.ant-btn-link[disabled]:active>a:only-child,.ant-btn-dangerous.ant-btn-link[disabled]:focus>a:only-child,.ant-btn-dangerous.ant-btn-link[disabled]:hover>a:only-child,.ant-btn-dangerous.ant-btn-link[disabled]>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-link[disabled]:active>a:only-child::after,.ant-btn-dangerous.ant-btn-link[disabled]:focus>a:only-child::after,.ant-btn-dangerous.ant-btn-link[disabled]:hover>a:only-child::after,.ant-btn-dangerous.ant-btn-link[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-text{color:#a61d24;border-color:transparent;background:0 0;box-shadow:none}.ant-btn-dangerous.ant-btn-text>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-text>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-text:focus,.ant-btn-dangerous.ant-btn-text:hover{color:#800f19;border-color:transparent;background:rgba(255,255,255,.03)}.ant-btn-dangerous.ant-btn-text:focus>a:only-child,.ant-btn-dangerous.ant-btn-text:hover>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-text:focus>a:only-child::after,.ant-btn-dangerous.ant-btn-text:hover>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-text:active{color:#b33b3d;border-color:transparent;background:rgba(255,255,255,.04)}.ant-btn-dangerous.ant-btn-text:active>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-text:active>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-dangerous.ant-btn-text[disabled],.ant-btn-dangerous.ant-btn-text[disabled]:active,.ant-btn-dangerous.ant-btn-text[disabled]:focus,.ant-btn-dangerous.ant-btn-text[disabled]:hover{color:rgba(255,255,255,.3);border-color:transparent;background:0 0;text-shadow:none;box-shadow:none}.ant-btn-dangerous.ant-btn-text[disabled]:active>a:only-child,.ant-btn-dangerous.ant-btn-text[disabled]:focus>a:only-child,.ant-btn-dangerous.ant-btn-text[disabled]:hover>a:only-child,.ant-btn-dangerous.ant-btn-text[disabled]>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-text[disabled]:active>a:only-child::after,.ant-btn-dangerous.ant-btn-text[disabled]:focus>a:only-child::after,.ant-btn-dangerous.ant-btn-text[disabled]:hover>a:only-child::after,.ant-btn-dangerous.ant-btn-text[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-icon-only{width:32px;height:32px;padding:2.4px 0;font-size:16px;border-radius:2px;vertical-align:-3px}.ant-btn-icon-only>*{font-size:16px}.ant-btn-icon-only.ant-btn-lg{width:40px;height:40px;padding:4.9px 0;font-size:18px;border-radius:2px}.ant-btn-icon-only.ant-btn-lg>*{font-size:18px}.ant-btn-icon-only.ant-btn-sm{width:24px;height:24px;padding:0;font-size:14px;border-radius:2px}.ant-btn-icon-only.ant-btn-sm>*{font-size:14px}.ant-btn-icon-only>.anticon{display:flex;justify-content:center}a.ant-btn-icon-only{vertical-align:-1px}a.ant-btn-icon-only>.anticon{display:inline}.ant-btn-round{height:32px;padding:4px 16px;font-size:14px;border-radius:32px}.ant-btn-round.ant-btn-lg{height:40px;padding:6.4px 20px;font-size:16px;border-radius:40px}.ant-btn-round.ant-btn-sm{height:24px;padding:0 12px;font-size:14px;border-radius:24px}.ant-btn-round.ant-btn-icon-only{width:auto}.ant-btn-circle{min-width:32px;padding-right:0;padding-left:0;text-align:center;border-radius:50%}.ant-btn-circle.ant-btn-lg{min-width:40px;border-radius:50%}.ant-btn-circle.ant-btn-sm{min-width:24px;border-radius:50%}.ant-btn::before{position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;z-index:1;display:none;background:#141414;border-radius:inherit;opacity:.35;transition:opacity .2s;content:'';pointer-events:none}.ant-btn-group,.ant-btn-group>.ant-btn,.ant-btn-group>span>.ant-btn,.ant-btn.ant-btn-loading,.ant-btn:active>span,.ant-btn:focus>span{position:relative}.ant-btn .anticon{transition:margin-left .3s cubic-bezier(.645,.045,.355,1)}.ant-btn .anticon.anticon-minus>svg,.ant-btn .anticon.anticon-plus>svg{shape-rendering:optimizespeed}.ant-btn.ant-btn-loading{cursor:default}.ant-btn.ant-btn-loading::before{display:block}.ant-btn>.ant-btn-loading-icon{transition:width .3s cubic-bezier(.645,.045,.355,1),opacity .3s cubic-bezier(.645,.045,.355,1)}.ant-btn>.ant-btn-loading-icon .anticon{padding-right:8px;animation:none}.ant-btn>.ant-btn-loading-icon .anticon svg{animation:loadingCircle 1s infinite linear}.ant-btn>.ant-btn-loading-icon:only-child .anticon{padding-right:0}.ant-btn-group>.ant-btn:active,.ant-btn-group>.ant-btn:focus,.ant-btn-group>.ant-btn:hover,.ant-btn-group>span>.ant-btn:active,.ant-btn-group>span>.ant-btn:focus,.ant-btn-group>span>.ant-btn:hover{z-index:2}.ant-btn-group>.ant-btn[disabled],.ant-btn-group>span>.ant-btn[disabled]{z-index:0}.ant-btn-group .ant-btn-icon-only{font-size:14px}.ant-btn+.ant-btn-group,.ant-btn-group .ant-btn+.ant-btn,.ant-btn-group .ant-btn+span,.ant-btn-group span+.ant-btn,.ant-btn-group+.ant-btn,.ant-btn-group+.ant-btn-group,.ant-btn-group>span+span{margin-left:-1px}.ant-btn-group .ant-btn-primary+.ant-btn:not(.ant-btn-primary):not([disabled]){border-left-color:transparent}.ant-btn-group .ant-btn{border-radius:0}.ant-btn-group-sm>.ant-btn:only-child,.ant-btn-group-sm>span:only-child>.ant-btn,.ant-btn-group>.ant-btn:only-child,.ant-btn-group>span:only-child>.ant-btn,.ant-card{border-radius:2px}.ant-btn-group-sm>.ant-btn:first-child:not(:last-child),.ant-btn-group-sm>span:first-child:not(:last-child)>.ant-btn,.ant-btn-group>.ant-btn:first-child:not(:last-child),.ant-btn-group>span:first-child:not(:last-child)>.ant-btn{border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-btn-group-sm>.ant-btn:last-child:not(:first-child),.ant-btn-group-sm>span:last-child:not(:first-child)>.ant-btn,.ant-btn-group>.ant-btn:last-child:not(:first-child),.ant-btn-group>span:last-child:not(:first-child)>.ant-btn{border-top-right-radius:2px;border-bottom-right-radius:2px}.ant-btn-group>.ant-btn:first-child,.ant-btn-group>span:first-child>.ant-btn{margin-left:0}.ant-btn-group>.ant-btn-group{float:left}.ant-btn-group>.ant-btn-group:not(:first-child):not(:last-child)>.ant-btn{border-radius:0}.ant-btn-group>.ant-btn-group:first-child:not(:last-child)>.ant-btn:last-child{padding-right:8px;border-top-right-radius:0;border-bottom-right-radius:0}.ant-btn-group>.ant-btn-group:last-child:not(:first-child)>.ant-btn:first-child{padding-left:8px;border-top-left-radius:0;border-bottom-left-radius:0}.ant-btn-group-rtl.ant-btn+.ant-btn-group,.ant-btn-group-rtl.ant-btn-group .ant-btn+.ant-btn,.ant-btn-group-rtl.ant-btn-group .ant-btn+span,.ant-btn-group-rtl.ant-btn-group span+.ant-btn,.ant-btn-group-rtl.ant-btn-group+.ant-btn,.ant-btn-group-rtl.ant-btn-group+.ant-btn-group,.ant-btn-group-rtl.ant-btn-group>span+span,.ant-btn-rtl.ant-btn+.ant-btn-group,.ant-btn-rtl.ant-btn-group .ant-btn+.ant-btn,.ant-btn-rtl.ant-btn-group .ant-btn+span,.ant-btn-rtl.ant-btn-group span+.ant-btn,.ant-btn-rtl.ant-btn-group+.ant-btn,.ant-btn-rtl.ant-btn-group+.ant-btn-group,.ant-btn-rtl.ant-btn-group>span+span{margin-right:-1px;margin-left:auto}.ant-btn-group-rtl.ant-btn-group>.ant-btn:first-child:not(:last-child),.ant-btn-group-rtl.ant-btn-group>span:first-child:not(:last-child)>.ant-btn{border-radius:0 2px 2px 0}.ant-btn-group-rtl.ant-btn-group>.ant-btn:last-child:not(:first-child),.ant-btn-group-rtl.ant-btn-group>span:last-child:not(:first-child)>.ant-btn{border-radius:2px 0 0 2px}.ant-btn-group-rtl.ant-btn-group-sm>.ant-btn:first-child:not(:last-child),.ant-btn-group-rtl.ant-btn-group-sm>span:first-child:not(:last-child)>.ant-btn{border-radius:0 2px 2px 0}.ant-btn-group-rtl.ant-btn-group-sm>.ant-btn:last-child:not(:first-child),.ant-btn-group-rtl.ant-btn-group-sm>span:last-child:not(:first-child)>.ant-btn{border-radius:2px 0 0 2px}.ant-btn-background-ghost.ant-btn-primary:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-primary:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-primary:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-primary>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn>.anticon+span,.ant-btn>span+.anticon{margin-left:8px}.ant-btn.ant-btn-background-ghost{color:rgba(255,255,255,.85);border-color:rgba(255,255,255,.25)}.ant-btn.ant-btn-background-ghost,.ant-btn.ant-btn-background-ghost:active,.ant-btn.ant-btn-background-ghost:focus,.ant-btn.ant-btn-background-ghost:hover{background:0 0}.ant-btn.ant-btn-background-ghost:focus,.ant-btn.ant-btn-background-ghost:hover{color:#3c9be8;border-color:#3c9be8}.ant-btn.ant-btn-background-ghost:active{color:#095cb5;border-color:#095cb5}.ant-btn.ant-btn-background-ghost[disabled]{color:rgba(255,255,255,.3);background:0 0;border-color:#434343}.ant-btn-background-ghost.ant-btn-primary{color:#177ddc;border-color:#177ddc;text-shadow:none}.ant-btn-background-ghost.ant-btn-primary>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-primary:focus,.ant-btn-background-ghost.ant-btn-primary:hover{color:#095cb5;border-color:#095cb5}.ant-btn-background-ghost.ant-btn-primary:focus>a:only-child,.ant-btn-background-ghost.ant-btn-primary:hover>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-primary:active{color:#3c9be8;border-color:#3c9be8}.ant-btn-background-ghost.ant-btn-primary:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-primary[disabled],.ant-btn-background-ghost.ant-btn-primary[disabled]:active,.ant-btn-background-ghost.ant-btn-primary[disabled]:focus,.ant-btn-background-ghost.ant-btn-primary[disabled]:hover{color:rgba(255,255,255,.3);border-color:#434343;background:rgba(255,255,255,.08);text-shadow:none;box-shadow:none}.ant-btn-background-ghost.ant-btn-danger:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-danger:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-danger:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-danger>a:only-child::after,.ant-btn-background-ghost.ant-btn-primary[disabled]:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-primary[disabled]:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-primary[disabled]:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-primary[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-background-ghost.ant-btn-primary[disabled]:active>a:only-child,.ant-btn-background-ghost.ant-btn-primary[disabled]:focus>a:only-child,.ant-btn-background-ghost.ant-btn-primary[disabled]:hover>a:only-child,.ant-btn-background-ghost.ant-btn-primary[disabled]>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-danger{color:#a61d24;border-color:#a61d24;text-shadow:none}.ant-btn-background-ghost.ant-btn-danger>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-danger:focus,.ant-btn-background-ghost.ant-btn-danger:hover{color:#800f19;border-color:#800f19}.ant-btn-background-ghost.ant-btn-danger:focus>a:only-child,.ant-btn-background-ghost.ant-btn-danger:hover>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-danger:active{color:#b33b3d;border-color:#b33b3d}.ant-btn-background-ghost.ant-btn-danger:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-danger[disabled],.ant-btn-background-ghost.ant-btn-danger[disabled]:active,.ant-btn-background-ghost.ant-btn-danger[disabled]:focus,.ant-btn-background-ghost.ant-btn-danger[disabled]:hover{color:rgba(255,255,255,.3);border-color:#434343;background:rgba(255,255,255,.08);text-shadow:none;box-shadow:none}.ant-btn-background-ghost.ant-btn-danger[disabled]:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-danger[disabled]:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-danger[disabled]:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-danger[disabled]>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-background-ghost.ant-btn-danger[disabled]:active>a:only-child,.ant-btn-background-ghost.ant-btn-danger[disabled]:focus>a:only-child,.ant-btn-background-ghost.ant-btn-danger[disabled]:hover>a:only-child,.ant-btn-background-ghost.ant-btn-danger[disabled]>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous{color:#a61d24;border-color:#a61d24;text-shadow:none}.ant-btn-background-ghost.ant-btn-dangerous>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous:focus,.ant-btn-background-ghost.ant-btn-dangerous:hover{color:#800f19;border-color:#800f19}.ant-btn-background-ghost.ant-btn-dangerous:focus>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous:hover>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous:active{color:#b33b3d;border-color:#b33b3d}.ant-btn-background-ghost.ant-btn-dangerous:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous[disabled],.ant-btn-background-ghost.ant-btn-dangerous[disabled]:active,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:focus,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:hover{color:rgba(255,255,255,.3);border-color:#434343;background:rgba(255,255,255,.08);text-shadow:none;box-shadow:none}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous[disabled]>a:only-child::after{background:0 0;position:absolute;right:0;content:'';top:0;left:0;bottom:0}.ant-btn-background-ghost.ant-btn-dangerous[disabled]:active>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:focus>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:hover>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous[disabled]>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link{color:#a61d24;border-color:transparent;text-shadow:none}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:focus,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:hover{color:#800f19;border-color:transparent}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:focus>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:hover>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:active{color:#b33b3d;border-color:transparent}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled],.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:active,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:focus,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:hover{color:rgba(255,255,255,.3);border-color:#434343;background:rgba(255,255,255,.08);text-shadow:none;box-shadow:none}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:active>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:focus>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:hover>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]>a:only-child{color:currentcolor}.ant-card,.ant-card-extra,.ant-card-head,.ant-card-head .ant-tabs-top{color:rgba(255,255,255,.85)}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:active>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:focus>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:hover>a:only-child::after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]>a:only-child::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;content:''}.ant-btn-two-chinese-chars::first-letter{letter-spacing:.34em}.ant-btn-two-chinese-chars>:not(.anticon){margin-right:-.34em;letter-spacing:.34em}.ant-btn.ant-btn-block{width:100%}.ant-btn:empty{width:0;visibility:hidden;content:'\a0'}.ant-card-head::after,.ant-card-head::before{display:table;content:''}a.ant-btn{padding-top:.01px!important;line-height:30px}a.ant-btn-lg{line-height:38px}a.ant-btn-sm{line-height:22px}.ant-card,.ant-card-actions>li>span{line-height:1.5715;position:relative}.ant-btn-group-rtl.ant-btn-group .ant-btn-primary+.ant-btn-primary,.ant-btn-group-rtl.ant-btn-group .ant-btn-primary:last-child:not(:first-child){border-right-color:#165996;border-left-color:#434343}.ant-btn-group-rtl.ant-btn-group .ant-btn-primary+.ant-btn-primary[disabled],.ant-btn-group-rtl.ant-btn-group .ant-btn-primary:last-child:not(:first-child)[disabled]{border-right-color:#434343;border-left-color:#165996}.ant-btn-rtl.ant-btn>.ant-btn-loading-icon .anticon{padding-right:0;padding-left:8px}.ant-btn>.ant-btn-loading-icon:only-child .anticon{padding-left:0}.ant-btn-rtl.ant-btn>.anticon+span,.ant-btn-rtl.ant-btn>span+.anticon{margin-right:8px;margin-left:0}.ant-card{box-sizing:border-box;margin:0;padding:0;font-size:14px;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;background:#141414}.ant-card-hoverable{cursor:pointer;transition:box-shadow .3s,border-color .3s}.ant-card-hoverable:hover{border-color:transparent;box-shadow:0 1px 2px -2px rgba(0,0,0,.64),0 3px 6px 0 rgba(0,0,0,.48),0 5px 12px 4px rgba(0,0,0,.36)}.ant-card-head,.ant-card-head .ant-tabs-top-bar{border-bottom:1px solid #303030}.ant-card-bordered{border:1px solid #303030}.ant-card-head{min-height:48px;margin-bottom:-1px;padding:0 24px;font-weight:500;font-size:16px;background:0 0;border-radius:2px 2px 0 0}.ant-card-head::after{clear:both}.ant-card-head-wrapper{display:flex;align-items:center}.ant-card-head-title{display:inline-block;flex:1;padding:16px 0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-card-body::after,.ant-card-body::before{display:table;content:''}.ant-card-head-title>.ant-typography,.ant-card-head-title>.ant-typography-edit-content{left:0;margin-top:0;margin-bottom:0}.ant-card-head .ant-tabs-top{clear:both;margin-bottom:-17px;font-weight:400;font-size:14px}.ant-card-extra{float:right;margin-left:auto;padding:16px 0;font-weight:400;font-size:14px}.ant-card-rtl .ant-card-extra{margin-right:auto;margin-left:0}.ant-card-body{padding:24px}.ant-card-body::after{clear:both}.ant-card-contain-grid:not(.ant-card-loading) .ant-card-body{margin:-1px 0 0 -1px;padding:0}.ant-card-grid{float:left;width:33.33%;padding:24px;border:0;border-radius:0;box-shadow:1px 0 0 0 #303030,0 1px 0 0 #303030,1px 1px 0 0 #303030,1px 0 0 0 #303030 inset,0 1px 0 0 #303030 inset;transition:all .3s}.ant-card-rtl .ant-card-grid{float:right}.ant-card-grid-hoverable:hover{position:relative;z-index:1;box-shadow:0 1px 2px -2px rgba(0,0,0,.64),0 3px 6px 0 rgba(0,0,0,.48),0 5px 12px 4px rgba(0,0,0,.36)}.ant-card-contain-tabs>.ant-card-head .ant-card-head-title{min-height:32px;padding-bottom:0}.ant-card-contain-tabs>.ant-card-head .ant-card-extra{padding-bottom:0}.ant-card-bordered .ant-card-cover{margin-top:-1px;margin-right:-1px;margin-left:-1px}.ant-card-cover>*{display:block;width:100%}.ant-card-actions::after,.ant-card-actions::before{display:table;content:''}.ant-card-cover img{border-radius:2px 2px 0 0}.ant-card-actions{margin:0;padding:0;list-style:none;background:#141414;border-top:1px solid #303030}.ant-card-actions::after{clear:both}.ant-card-actions>li{float:left;margin:12px 0;color:rgba(255,255,255,.45);text-align:center}.ant-card-rtl .ant-card-actions>li{float:right}.ant-card-actions>li>span{display:block;min-width:32px;font-size:14px;cursor:pointer}.ant-card-actions>li>span:hover{color:#177ddc;transition:color .3s}.ant-card-actions>li>span a:not(.ant-btn),.ant-card-actions>li>span>.anticon{display:inline-block;width:100%;color:rgba(255,255,255,.45);line-height:22px;transition:color .3s}.ant-card-meta::after,.ant-card-meta::before{display:table;content:''}.ant-card-actions>li>span a:not(.ant-btn):hover,.ant-card-actions>li>span>.anticon:hover{color:#177ddc}.ant-card-actions>li>span>.anticon{font-size:16px;line-height:22px}.ant-card-actions>li:not(:last-child){border-right:1px solid #303030}.ant-card-rtl .ant-card-actions>li:not(:last-child){border-right:none;border-left:1px solid #303030}.ant-card-type-inner .ant-card-head{padding:0 24px;background:rgba(255,255,255,.04)}.ant-card-type-inner .ant-card-head-title{padding:12px 0;font-size:14px}.ant-card-type-inner .ant-card-body{padding:16px 24px}.ant-card-type-inner .ant-card-extra{padding:13.5px 0}.ant-card-meta{margin:-4px 0}.ant-card-meta::after{clear:both}.ant-card-meta-avatar{float:left;padding-right:16px}.ant-card-rtl .ant-card-meta-avatar{float:right;padding-right:0;padding-left:16px}.ant-card-meta-detail{overflow:hidden}.ant-card-meta-detail>div:not(:last-child){margin-bottom:8px}.ant-card-meta-title{overflow:hidden;color:rgba(255,255,255,.85);font-weight:500;font-size:16px;white-space:nowrap;text-overflow:ellipsis}.ant-card-meta-description,.ant-comment-content-author-name,.ant-comment-content-author-name>*,.ant-comment-content-author-name>:hover{color:rgba(255,255,255,.45)}.ant-card-loading{overflow:hidden}.ant-card-loading .ant-card-body{user-select:none}.ant-card-loading-content p{margin:0}.ant-card-loading-block{height:14px;margin:4px 0;background:linear-gradient(90deg,rgba(48,48,48,.2),rgba(48,48,48,.4),rgba(48,48,48,.2));background-size:600% 600%;border-radius:2px;animation:card-loading 1.4s ease infinite}@keyframes card-loading{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}.ant-card-small>.ant-card-head{min-height:36px;padding:0 12px;font-size:14px}.ant-card-small>.ant-card-head>.ant-card-head-wrapper>.ant-card-head-title{padding:8px 0}.ant-card-small>.ant-card-head>.ant-card-head-wrapper>.ant-card-extra{padding:8px 0;font-size:14px}.ant-card-small>.ant-card-body{padding:12px}.ant-card-rtl .ant-skeleton-header{padding:0 0 0 16px}nz-card,nz-card-loading,nz-card-meta{display:block}.ant-carousel{box-sizing:border-box;margin:0;padding:0;color:rgba(255,255,255,.85);font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum}.ant-carousel .slick-slider{position:relative;display:block;box-sizing:border-box;touch-action:pan-y;-webkit-touch-callout:none}.ant-carousel .slick-list{position:relative;display:block;margin:0;padding:0;overflow:hidden}.ant-carousel .slick-list:focus{outline:0}.ant-carousel .slick-list.dragging{cursor:pointer}.ant-carousel .slick-list .slick-slide{pointer-events:none}.ant-carousel .slick-list .slick-slide input.ant-checkbox-input,.ant-carousel .slick-list .slick-slide input.ant-radio-input{visibility:hidden}.ant-carousel .slick-list .slick-slide.slick-active{pointer-events:auto}.ant-carousel .slick-list .slick-slide.slick-active input.ant-checkbox-input,.ant-carousel .slick-list .slick-slide.slick-active input.ant-radio-input{visibility:visible}.ant-carousel .slick-loading .slick-slide,.ant-checkbox-checked::after,.slick-loading .ant-carousel .slick-track{visibility:hidden}.ant-carousel .slick-list .slick-slide>div>div{vertical-align:bottom}.ant-carousel .slick-slider .slick-list,.ant-carousel .slick-slider .slick-track{transform:translate3d(0,0,0);touch-action:pan-y}.ant-carousel .slick-track{position:relative;top:0;left:0;display:block}.ant-carousel .slick-track::after,.ant-carousel .slick-track::before{display:table;content:''}.ant-carousel .slick-track::after{clear:both}.ant-carousel .slick-slide{display:none;float:left;height:100%;min-height:1px}.ant-carousel .slick-slide img{display:block}.ant-carousel .slick-slide.slick-loading img{display:none}.ant-carousel .slick-slide.dragging img{pointer-events:none}.ant-carousel .slick-initialized .slick-slide{display:block}.ant-carousel .slick-vertical .slick-slide{display:block;height:auto}.ant-carousel .slick-arrow.slick-hidden{display:none}.ant-carousel .slick-next,.ant-carousel .slick-prev{position:absolute;top:50%;display:block;width:20px;height:20px;margin-top:-10px;padding:0;color:transparent;font-size:0;line-height:0;background:0 0;border:0;outline:0;cursor:pointer}.ant-carousel .slick-next:focus,.ant-carousel .slick-next:hover,.ant-carousel .slick-prev:focus,.ant-carousel .slick-prev:hover{color:transparent;background:0 0;outline:0}.ant-carousel .slick-next:focus::before,.ant-carousel .slick-next:hover::before,.ant-carousel .slick-prev:focus::before,.ant-carousel .slick-prev:hover::before{opacity:1}.ant-carousel .slick-next.slick-disabled::before,.ant-carousel .slick-prev.slick-disabled::before{opacity:.25}.ant-carousel .slick-prev{left:-25px}.ant-carousel .slick-prev::before{content:'←'}.ant-carousel .slick-next::before,.ant-carousel-rtl .ant-carousel .slick-prev::before{content:'→'}.ant-carousel .slick-next{right:-25px}.ant-carousel .slick-dots{position:absolute;right:0;bottom:0;left:0;z-index:15;display:flex!important;justify-content:center;margin-right:15%;margin-left:15%;padding-left:0;list-style:none}.ant-carousel .slick-dots-bottom{bottom:12px}.ant-carousel .slick-dots-top{top:12px;bottom:auto}.ant-carousel .slick-dots li{position:relative;display:inline-block;flex:0 1 auto;box-sizing:content-box;width:16px;height:3px;margin:0 3px;padding:0;text-align:center;text-indent:-999px;vertical-align:top;transition:all .5s}.ant-carousel .slick-dots li button{display:block;width:100%;height:3px;padding:0;color:transparent;font-size:0;background:#141414;border:0;border-radius:1px;outline:0;cursor:pointer;opacity:.3;transition:all .5s}.ant-carousel .slick-dots li button:focus,.ant-carousel .slick-dots li button:hover{opacity:.75}.ant-carousel .slick-dots li.slick-active{width:24px}.ant-carousel .slick-dots li.slick-active button{background:#141414;opacity:1}.ant-carousel .slick-dots li.slick-active:focus,.ant-carousel .slick-dots li.slick-active:hover{opacity:1}.ant-carousel-vertical .slick-dots{top:50%;bottom:auto;flex-direction:column;width:3px;height:auto;margin:0;transform:translateY(-50%)}.ant-carousel-vertical .slick-dots-left{right:auto;left:12px}.ant-carousel-vertical .slick-dots-right{right:12px;left:auto}.ant-carousel-vertical .slick-dots li{width:3px;height:16px;margin:4px 2px;vertical-align:baseline}.ant-checkbox,.ant-checkbox-wrapper{box-sizing:border-box;margin:0;padding:0;font-size:14px;font-variant:tabular-nums}.ant-carousel-vertical .slick-dots li button{width:3px;height:16px}.ant-carousel-vertical .slick-dots li.slick-active,.ant-carousel-vertical .slick-dots li.slick-active button{width:3px;height:24px}.ant-carousel-rtl .ant-carousel .slick-track{right:0;left:auto}.ant-carousel-rtl .ant-carousel .slick-prev{right:-25px;left:auto}.ant-carousel-rtl .ant-carousel .slick-next{right:auto;left:-25px}.ant-carousel-rtl .ant-carousel .slick-next::before{content:'←'}.ant-carousel-rtl.ant-carousel .slick-dots{flex-direction:row-reverse}.ant-carousel-rtl.ant-carousel-vertical .slick-dots{flex-direction:column}nz-carousel{display:block;position:relative;overflow:hidden;width:100%;height:100%}.slick-dots{display:block}.slick-track{opacity:1}.slick-list{direction:ltr}@keyframes antCheckboxEffect{0%{transform:scale(1);opacity:.5}100%{transform:scale(1.6);opacity:0}}.ant-checkbox{color:rgba(255,255,255,.85);list-style:none;font-feature-settings:tnum;position:relative;top:.2em;white-space:nowrap;outline:0;cursor:pointer}.ant-checkbox-input:focus+.ant-checkbox-inner,.ant-checkbox-wrapper:hover .ant-checkbox-inner,.ant-checkbox:hover .ant-checkbox-inner{border-color:#177ddc}.ant-checkbox-checked::after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #177ddc;border-radius:2px;animation:antCheckboxEffect .36s ease-in-out;animation-fill-mode:backwards;content:''}.ant-checkbox-wrapper:hover .ant-checkbox::after,.ant-checkbox:hover::after{visibility:visible}.ant-checkbox-inner{position:relative;top:0;left:0;display:block;width:16px;height:16px;direction:ltr;background-color:transparent;border:1px solid #434343;border-radius:2px;border-collapse:separate;transition:all .3s}.ant-checkbox-inner::after{position:absolute;top:50%;left:21.5%;display:table;width:5.71px;height:9.14px;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(0) translate(-50%,-50%);opacity:0;transition:all .1s cubic-bezier(.71,-.46,.88,.6),opacity .1s;content:' '}.ant-checkbox-input{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;cursor:pointer;opacity:0}.ant-checkbox-checked .ant-checkbox-inner::after{position:absolute;display:table;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(1) translate(-50%,-50%);opacity:1;transition:all .2s cubic-bezier(.12,.4,.29,1.46) .1s;content:' '}.ant-checkbox-checked .ant-checkbox-inner{background-color:#177ddc;border-color:#177ddc}.ant-checkbox-disabled{cursor:not-allowed}.ant-checkbox-disabled.ant-checkbox-checked .ant-checkbox-inner::after{border-color:rgba(255,255,255,.3);animation-name:none}.ant-checkbox-disabled .ant-checkbox-input{cursor:not-allowed;pointer-events:none}.ant-checkbox-disabled .ant-checkbox-inner{background-color:rgba(255,255,255,.08);border-color:#434343!important}.ant-checkbox-disabled .ant-checkbox-inner::after{border-color:rgba(255,255,255,.08);border-collapse:separate;animation-name:none}.ant-checkbox-disabled+span{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-checkbox-disabled:hover::after,.ant-checkbox-wrapper:hover .ant-checkbox-disabled::after{visibility:hidden}.ant-checkbox-wrapper{color:rgba(255,255,255,.85);list-style:none;font-feature-settings:tnum;display:inline-flex;align-items:baseline;line-height:unset;cursor:pointer}.ant-checkbox-wrapper::after{display:inline-block;width:0;overflow:hidden;content:'\a0'}.ant-checkbox-wrapper.ant-checkbox-wrapper-disabled{cursor:not-allowed}.ant-checkbox-wrapper+.ant-checkbox-wrapper{margin-left:8px}.ant-checkbox-wrapper.ant-checkbox-wrapper-in-form-item input[type=checkbox]{width:14px;height:14px}.ant-checkbox+span{padding-right:8px;padding-left:8px}.ant-checkbox-group,.ant-collapse{padding:0;font-size:14px;line-height:1.5715;color:rgba(255,255,255,.85);box-sizing:border-box;font-variant:tabular-nums;font-feature-settings:tnum;list-style:none}.ant-checkbox-group{margin:0;display:inline-block}.ant-checkbox-group-item{margin-right:8px}.ant-checkbox-group-item:last-child{margin-right:0}.ant-checkbox-group-item+.ant-checkbox-group-item{margin-left:0}.ant-checkbox-indeterminate .ant-checkbox-inner{background-color:transparent;border-color:#434343}.ant-checkbox-indeterminate .ant-checkbox-inner::after{top:50%;left:50%;width:8px;height:8px;background-color:#177ddc;border:0;transform:translate(-50%,-50%) scale(1);opacity:1;content:' '}.ant-checkbox-indeterminate.ant-checkbox-disabled .ant-checkbox-inner::after{background-color:rgba(255,255,255,.3);border-color:rgba(255,255,255,.3)}.ant-checkbox-group-rtl .ant-checkbox-group-item{margin-right:0;margin-left:8px}.ant-checkbox-group-rtl .ant-checkbox-group-item:last-child{margin-left:0!important}.ant-checkbox-group-rtl .ant-checkbox-group-item+.ant-checkbox-group-item{margin-left:8px}.ant-checkbox+span:empty{display:none}.ant-collapse{margin:0;background-color:rgba(255,255,255,.04);border:1px solid #434343;border-bottom:0;border-radius:2px}.ant-collapse-item:last-child>.ant-collapse-content,.ant-collapse>.ant-collapse-item:last-child,.ant-collapse>.ant-collapse-item:last-child>.ant-collapse-header{border-radius:0 0 2px 2px}.ant-collapse>.ant-collapse-item{border-bottom:1px solid #434343}.ant-collapse>.ant-collapse-item>.ant-collapse-header{position:relative;display:flex;flex-wrap:nowrap;align-items:flex-start;padding:12px 16px;color:rgba(255,255,255,.85);line-height:1.5715;cursor:pointer;transition:all .3s,visibility 0s}.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow{display:inline-block;margin-right:12px;font-size:12px;vertical-align:-1px}.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow svg{transition:transform .24s}.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-extra{margin-left:auto}.ant-collapse>.ant-collapse-item>.ant-collapse-header:focus{outline:0}.ant-collapse>.ant-collapse-item .ant-collapse-header-collapsible-only{cursor:default}.ant-collapse>.ant-collapse-item .ant-collapse-header-collapsible-only .ant-collapse-header-text{cursor:pointer}.ant-collapse>.ant-collapse-item.ant-collapse-no-arrow>.ant-collapse-header{padding-left:12px}.ant-collapse-icon-position-right>.ant-collapse-item>.ant-collapse-header{position:relative;padding:12px 40px 12px 16px}.ant-collapse-icon-position-right>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow{position:absolute;top:50%;right:16px;left:auto;margin:0;transform:translateY(-50%)}.ant-collapse-rtl.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow svg,.ant-dropdown-wrap-open .anticon-down::before,.ant-picker-rtl .ant-picker-separator{transform:rotate(180deg)}.ant-collapse-content{color:rgba(255,255,255,.85);background-color:#141414;border-top:1px solid #434343}.ant-collapse-borderless,.ant-descriptions-bordered .ant-descriptions-item-label{background-color:rgba(255,255,255,.04)}.ant-collapse-content>.ant-collapse-content-box{padding:16px}.ant-collapse-content-hidden{display:none}nz-collapse,nz-collapse-panel,nz-comment,nz-comment-content{display:block}.ant-collapse-borderless{border:0}.ant-collapse-borderless>.ant-collapse-item{border-bottom:1px solid #434343}.ant-collapse-borderless>.ant-collapse-item:last-child,.ant-collapse-borderless>.ant-collapse-item:last-child .ant-collapse-header{border-radius:0}.ant-collapse-borderless>.ant-collapse-item:last-child{border-bottom:0}.ant-collapse-borderless>.ant-collapse-item>.ant-collapse-content{background-color:transparent;border-top:0}.ant-collapse-borderless>.ant-collapse-item>.ant-collapse-content>.ant-collapse-content-box{padding-top:4px}.ant-collapse-ghost{background-color:transparent;border:0}.ant-collapse-ghost>.ant-collapse-item{border-bottom:0}.ant-collapse-ghost>.ant-collapse-item>.ant-collapse-content{background-color:transparent;border-top:0}.ant-collapse-ghost>.ant-collapse-item>.ant-collapse-content>.ant-collapse-content-box{padding-top:12px;padding-bottom:12px}.ant-collapse .ant-collapse-item-disabled>.ant-collapse-header,.ant-collapse .ant-collapse-item-disabled>.ant-collapse-header>.arrow{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-collapse-rtl .ant-collapse>.ant-collapse-item>.ant-collapse-header{padding:12px 40px 12px 16px}.ant-collapse-rtl.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow{margin-right:0;margin-left:12px}.ant-collapse-rtl.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-extra{margin-right:auto;margin-left:0}.ant-collapse-rtl.ant-collapse>.ant-collapse-item.ant-collapse-no-arrow>.ant-collapse-header{padding-right:12px;padding-left:0}.ant-comment{position:relative;background-color:transparent}.ant-comment-inner{display:flex;padding:16px 0}.ant-comment-avatar{position:relative;flex-shrink:0;margin-right:12px;cursor:pointer}.ant-comment-avatar img{width:32px;height:32px;border-radius:50%}.ant-comment-content{position:relative;flex:1 1 auto;min-width:1px;font-size:14px;word-wrap:break-word}.ant-comment-content-author{display:flex;flex-wrap:wrap;justify-content:flex-start;margin-bottom:4px;font-size:14px}.ant-comment-content-author>a,.ant-comment-content-author>span{padding-right:8px;font-size:12px;line-height:18px}.ant-comment-content-author-name{font-size:14px;transition:color .3s}.ant-comment-content-author-time{color:rgba(255,255,255,.3);white-space:nowrap;cursor:auto}.ant-comment-content-detail p{margin-bottom:inherit;white-space:pre-wrap}.ant-comment-actions{margin-top:12px;margin-bottom:inherit;padding-left:0}.ant-comment-actions>li{display:inline-block;color:rgba(255,255,255,.45)}.ant-comment-actions>li>span{margin-right:10px;color:rgba(255,255,255,.45);font-size:12px;cursor:pointer;transition:color .3s;user-select:none}.ant-comment-actions>li>span:hover{color:rgba(255,255,255,.65)}.ant-comment-nested{margin-left:44px}.ant-comment-rtl .ant-comment-avatar{margin-right:0;margin-left:12px}.ant-comment-rtl .ant-comment-content-author>a,.ant-comment-rtl .ant-comment-content-author>span{padding-right:0;padding-left:8px}.ant-comment-rtl .ant-comment-actions{padding-right:0}.ant-comment-rtl .ant-comment-actions>li>span{margin-right:0;margin-left:10px}.ant-comment-rtl .ant-comment-nested{margin-right:44px;margin-left:0}.ant-picker,.ant-picker-input{display:inline-flex;position:relative}.ant-picker-status-error.ant-picker,.ant-picker-status-error.ant-picker:not([disabled]):hover{background-color:transparent;border-color:#a61d24}.ant-picker-status-error.ant-picker-focused,.ant-picker-status-error.ant-picker:focus{border-color:#a61d24;box-shadow:0 0 0 2px rgba(166,29,36,.2);border-right-width:1px;outline:0}.ant-picker-status-warning.ant-picker,.ant-picker-status-warning.ant-picker:not([disabled]):hover{background-color:transparent;border-color:#d89614}.ant-picker-status-warning.ant-picker-focused,.ant-picker-status-warning.ant-picker:focus{border-color:#d89614;box-shadow:0 0 0 2px rgba(216,150,20,.2);border-right-width:1px;outline:0}.ant-input-affix-wrapper,.ant-picker{padding:4px 11px;border:1px solid #434343}.ant-picker{box-sizing:border-box;margin:0;color:rgba(255,255,255,.85);font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum;align-items:center;background:0 0;border-radius:2px;transition:border .3s,box-shadow .3s}.ant-picker-cell:hover:not(.ant-picker-cell-in-view) .ant-picker-cell-inner,.ant-picker-cell:hover:not(.ant-picker-cell-selected):not(.ant-picker-cell-range-start):not(.ant-picker-cell-range-end):not(.ant-picker-cell-range-hover-start):not(.ant-picker-cell-range-hover-end) .ant-picker-cell-inner,.ant-picker.ant-picker-disabled{background:rgba(255,255,255,.08)}.ant-picker-focused,.ant-picker:hover{border-color:#165996;border-right-width:1px}.ant-input-rtl .ant-picker-focused,.ant-input-rtl .ant-picker:hover{border-right-width:0;border-left-width:1px!important}.ant-picker-focused{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-picker-focused{border-right-width:0;border-left-width:1px!important}.ant-picker.ant-picker-disabled{border-color:#434343;cursor:not-allowed}.ant-picker.ant-picker-disabled .ant-picker-suffix{color:rgba(255,255,255,.3)}.ant-picker.ant-picker-borderless{background-color:transparent!important;border-color:transparent!important;box-shadow:none!important}.ant-picker-input{align-items:center;width:100%}.ant-picker-input>input{position:relative;display:inline-block;width:100%;color:rgba(255,255,255,.85);font-size:14px;line-height:1.5715;border-radius:2px;transition:all .3s;flex:auto;min-width:1px;height:auto;padding:0;background:0 0;border:0}.ant-picker-input>input-disabled,.ant-picker-input>input[disabled]{background-color:rgba(255,255,255,.08);cursor:not-allowed;color:rgba(255,255,255,.3);opacity:1;pointer-events:none}.ant-picker-input>input::-moz-placeholder{opacity:1}.ant-picker-input>input::placeholder{color:rgba(255,255,255,.3);user-select:none}.ant-picker-input>input:placeholder-shown{text-overflow:ellipsis}.ant-picker-input>input:hover{border-color:#165996;border-right-width:1px}.ant-input-rtl .ant-picker-input>input:hover{border-right-width:0;border-left-width:1px!important}.ant-picker-input>input-focused,.ant-picker-input>input:focus{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-picker-input>input-focused,.ant-input-rtl .ant-picker-input>input:focus{border-right-width:0;border-left-width:1px!important}.ant-picker-input>input-disabled:hover,.ant-picker-input>input[disabled]:hover{border-color:#434343;border-right-width:1px}.ant-picker-input>input-disabled{border-color:#434343;box-shadow:none}.ant-picker-input>input[disabled]{border-color:#434343;box-shadow:none}.ant-picker-input>input-borderless,.ant-picker-input>input-borderless-disabled,.ant-picker-input>input-borderless-focused,.ant-picker-input>input-borderless:focus,.ant-picker-input>input-borderless:hover,.ant-picker-input>input-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-picker-input>input{max-width:100%;height:auto;min-height:32px;line-height:1.5715;vertical-align:bottom;transition:all .3s,height 0s}.ant-picker-input>input-lg{padding:6.5px 11px;font-size:16px}.ant-picker-input>input-sm{padding:0 7px}.ant-picker-input>input-stepperless[type=number]{-moz-appearance:textfield}.ant-picker-input>input-stepperless[type=number] ::-webkit-outer-spin-button,.ant-picker-input>input-stepperless[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ant-picker-input>input:focus{box-shadow:none}.ant-picker-input>input[disabled]{background:0 0}.ant-picker-input:hover .ant-picker-clear{opacity:1}.ant-picker-input-placeholder>input{color:rgba(255,255,255,.3)}.ant-picker-large{padding:6.5px 11px}.ant-picker-large .ant-picker-input>input{font-size:16px}.ant-picker-small{padding:0 7px}.ant-picker-suffix{display:flex;flex:none;align-self:center;margin-left:4px;color:rgba(255,255,255,.3);line-height:1;pointer-events:none}.ant-picker-suffix>*{vertical-align:top}.ant-picker-suffix>:not(:last-child){margin-right:8px}.ant-picker-clear{position:absolute;top:50%;right:0;color:rgba(255,255,255,.3);line-height:1;background:#141414;transform:translateY(-50%);cursor:pointer;opacity:0;transition:opacity .3s,color .3s}.ant-picker-clear>*{vertical-align:top}.ant-picker-clear:hover{color:rgba(255,255,255,.45)}.ant-picker-separator{position:relative;display:inline-block;width:1em;height:16px;color:rgba(255,255,255,.3);font-size:16px;vertical-align:top;cursor:default}.ant-picker-focused .ant-picker-separator{color:rgba(255,255,255,.45)}.ant-picker-disabled .ant-picker-range-separator .ant-picker-separator{cursor:not-allowed}.ant-picker-range{position:relative;display:inline-flex}.ant-picker-range .ant-picker-clear{right:11px}.ant-picker-range:hover .ant-picker-clear{opacity:1}.ant-picker-range .ant-picker-active-bar{bottom:-1px;height:2px;margin-left:11px;background:#177ddc;opacity:0;transition:all .3s ease-out;pointer-events:none}.ant-picker-range.ant-picker-small .ant-picker-active-bar,.ant-tag>.anticon+span,.ant-tag>span+.anticon{margin-left:7px}.ant-picker-range.ant-picker-focused .ant-picker-active-bar{opacity:1}.ant-picker-range-separator{align-items:center;padding:0 8px;line-height:1}.ant-picker-range.ant-picker-small .ant-picker-clear{right:7px}.ant-picker-dropdown{box-sizing:border-box;margin:0;padding:0;color:rgba(255,255,255,.85);font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum;position:absolute;z-index:1050}.ant-picker-dropdown-hidden{display:none}.ant-picker-dropdown-placement-bottomLeft .ant-picker-range-arrow{top:2.59px;display:block;transform:rotate(-135deg) translateY(1px)}.ant-picker-dropdown-placement-topLeft .ant-picker-range-arrow{bottom:2.59px;display:block;transform:rotate(45deg)}.ant-picker-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-picker-dropdown-placement-topLeft,.ant-picker-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-picker-dropdown-placement-topRight,.ant-picker-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-picker-dropdown-placement-topLeft,.ant-picker-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-picker-dropdown-placement-topRight{animation-name:antSlideDownIn}.ant-dropdown.ant-slide-down-appear.ant-slide-down-appear-active.ant-dropdown-placement-bottom,.ant-dropdown.ant-slide-down-appear.ant-slide-down-appear-active.ant-dropdown-placement-bottomLeft,.ant-dropdown.ant-slide-down-appear.ant-slide-down-appear-active.ant-dropdown-placement-bottomRight,.ant-dropdown.ant-slide-down-enter.ant-slide-down-enter-active.ant-dropdown-placement-bottom,.ant-dropdown.ant-slide-down-enter.ant-slide-down-enter-active.ant-dropdown-placement-bottomLeft,.ant-dropdown.ant-slide-down-enter.ant-slide-down-enter-active.ant-dropdown-placement-bottomRight,.ant-picker-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-picker-dropdown-placement-bottomLeft,.ant-picker-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-picker-dropdown-placement-bottomRight,.ant-picker-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-picker-dropdown-placement-bottomLeft,.ant-picker-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-picker-dropdown-placement-bottomRight,.ant-select-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-select-dropdown-placement-bottomLeft,.ant-select-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-select-dropdown-placement-bottomLeft{animation-name:antSlideUpIn}.ant-picker-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-picker-dropdown-placement-topLeft,.ant-picker-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-picker-dropdown-placement-topRight{animation-name:antSlideDownOut}.ant-picker-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-picker-dropdown-placement-bottomLeft,.ant-picker-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-picker-dropdown-placement-bottomRight{animation-name:antSlideUpOut}.ant-picker-dropdown-range{padding:7.54px 0}.ant-picker-dropdown .ant-picker-panel>.ant-picker-time-panel,.ant-steps-with-progress .ant-steps-item{padding-top:4px}.ant-picker-dropdown-range-hidden{display:none}.ant-picker-ranges{margin-bottom:0;padding:4px 12px;overflow:hidden;line-height:34px;text-align:left;list-style:none}.ant-picker-ranges>li{display:inline-block}.ant-picker-ranges .ant-picker-preset>.ant-tag-blue{color:#177ddc;background:#111b26;border-color:#153450;cursor:pointer}.ant-dropdown-arrow,.ant-picker-range-arrow{height:11.31px;background:linear-gradient(135deg,transparent 40%,#1f1f1f 40%);pointer-events:none}.ant-picker-ranges .ant-picker-ok{float:right;margin-left:8px}.ant-picker-range-wrapper{display:flex}.ant-picker-range-arrow{position:absolute;z-index:1;display:none;width:11.31px;margin-left:16.5px;box-shadow:2px 2px 6px -2px rgba(0,0,0,.1);transition:left .3s ease-out;border-radius:0 0 2px}.ant-dropdown-arrow::before,.ant-picker-range-arrow::before{width:33.94px;clip-path:path('M 9.849242404917499 24.091883092036785 A 5 5 0 0 1 13.384776310850237 22.627416997969522 L 20.627416997969522 22.627416997969522 A 2 2 0 0 0 22.627416997969522 20.627416997969522 L 22.627416997969522 13.384776310850237 A 5 5 0 0 1 24.091883092036785 9.849242404917499 L 23.091883092036785 9.849242404917499 L 9.849242404917499 23.091883092036785 Z')}.ant-picker-range-arrow::before{position:absolute;top:-11.31px;left:-11.31px;height:33.94px;background:-10px -10px no-repeat #1f1f1f;content:''}.ant-picker-panel-container{overflow:hidden;vertical-align:top;background:#1f1f1f;border-radius:2px;box-shadow:0 3px 6px -4px rgba(0,0,0,.48),0 6px 16px 0 rgba(0,0,0,.32),0 9px 28px 8px rgba(0,0,0,.2);transition:margin .3s}.ant-picker-panel-container .ant-picker-panels{display:inline-flex;flex-wrap:nowrap;direction:ltr}.ant-picker-panel-container .ant-picker-panel{vertical-align:top;background:0 0;border-width:0 0 1px;border-radius:0}.ant-picker-panel-container .ant-picker-panel .ant-picker-content,.ant-picker-panel-container .ant-picker-panel table{text-align:center}.ant-picker-panel-container .ant-picker-panel-focused{border-color:#303030}.ant-picker-panel{display:inline-flex;flex-direction:column;text-align:center;background:#1f1f1f;border:1px solid #303030;border-radius:2px;outline:0}.ant-picker-panel-focused{border-color:#177ddc}.ant-picker-date-panel,.ant-picker-decade-panel,.ant-picker-month-panel,.ant-picker-quarter-panel,.ant-picker-time-panel,.ant-picker-week-panel,.ant-picker-year-panel{display:flex;flex-direction:column;width:280px}.ant-picker-header{display:flex;padding:0 8px;color:rgba(255,255,255,.85);border-bottom:1px solid #303030}.ant-picker-header>*{flex:none}.ant-picker-header button{padding:0;color:rgba(255,255,255,.3);line-height:40px;background:0 0;border:0;cursor:pointer;transition:color .3s}.ant-picker-header>button{min-width:1.6em;font-size:14px}.ant-picker-header>button:hover{color:rgba(255,255,255,.85)}.ant-picker-header-view{flex:auto;font-weight:500;line-height:40px}.ant-picker-header-view button{color:inherit;font-weight:inherit}.ant-picker-header-view button:not(:first-child){margin-left:8px}.ant-picker-header-view button:hover{color:#177ddc}.ant-picker-next-icon,.ant-picker-prev-icon,.ant-picker-super-next-icon,.ant-picker-super-prev-icon{position:relative;display:inline-block;width:7px;height:7px}.ant-picker-next-icon::before,.ant-picker-prev-icon::before,.ant-picker-super-next-icon::before,.ant-picker-super-prev-icon::before{position:absolute;top:0;left:0;display:inline-block;width:7px;height:7px;border:0 solid currentcolor;border-width:1.5px 0 0 1.5px;content:''}.ant-picker-super-next-icon::after,.ant-picker-super-prev-icon::after{position:absolute;top:4px;left:4px;display:inline-block;width:7px;height:7px;border:0 solid currentcolor;border-width:1.5px 0 0 1.5px;content:''}.ant-picker-prev-icon,.ant-picker-super-prev-icon{transform:rotate(-45deg)}.ant-picker-next-icon,.ant-picker-super-next-icon{transform:rotate(135deg)}.ant-picker-content{width:100%;table-layout:fixed;border-collapse:collapse}.ant-picker-content td,.ant-picker-content th{position:relative;min-width:24px;font-weight:400}.ant-picker-content th{height:30px;color:rgba(255,255,255,.85);line-height:30px}.ant-picker-cell{padding:3px 0;color:rgba(255,255,255,.3);cursor:pointer}.ant-picker-cell-in-view{color:rgba(255,255,255,.85)}.ant-picker-cell::before{position:absolute;top:50%;right:0;left:0;z-index:1;height:24px;transform:translateY(-50%);transition:all .3s;content:''}.ant-picker-cell-in-view.ant-picker-cell-today .ant-picker-cell-inner::before{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;border:1px solid #177ddc;border-radius:2px;content:''}.ant-picker-cell-in-view.ant-picker-cell-in-range{position:relative}.ant-picker-cell-in-view.ant-picker-cell-in-range::before{background:#111b26}.ant-picker-cell-in-view.ant-picker-cell-range-end .ant-picker-cell-inner,.ant-picker-cell-in-view.ant-picker-cell-range-start .ant-picker-cell-inner,.ant-picker-cell-in-view.ant-picker-cell-selected .ant-picker-cell-inner{color:#fff;background:#177ddc}.ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single)::before,.ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single)::before{background:#111b26}.ant-picker-cell-in-view.ant-picker-cell-range-start::before{left:50%}.ant-picker-cell-in-view.ant-picker-cell-range-end::before{right:50%}.ant-picker-cell-in-view.ant-picker-cell-range-hover-end.ant-picker-cell-range-end-single::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-end.ant-picker-cell-range-start.ant-picker-cell-range-end.ant-picker-cell-range-start-near-hover::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-end:not(.ant-picker-cell-in-range):not(.ant-picker-cell-range-start):not(.ant-picker-cell-range-end)::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-start.ant-picker-cell-range-start-single::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-start.ant-picker-cell-range-start.ant-picker-cell-range-end.ant-picker-cell-range-end-near-hover::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-start:not(.ant-picker-cell-in-range):not(.ant-picker-cell-range-start):not(.ant-picker-cell-range-end)::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover:not(.ant-picker-cell-in-range)::after{position:absolute;top:50%;z-index:0;height:24px;border-top:1px dashed #0e4980;border-bottom:1px dashed #0e4980;transform:translateY(-50%);transition:all .3s;content:''}.ant-picker-cell-range-hover-end::after,.ant-picker-cell-range-hover-start::after,.ant-picker-cell-range-hover::after{right:0;left:2px}.ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover::before,.ant-picker-cell-in-view.ant-picker-cell-range-end.ant-picker-cell-range-hover::before,.ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single).ant-picker-cell-range-hover-end::before,.ant-picker-cell-in-view.ant-picker-cell-range-start.ant-picker-cell-range-hover::before,.ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single).ant-picker-cell-range-hover-start::before,.ant-picker-panel>:not(.ant-picker-date-panel) .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end::before,.ant-picker-panel>:not(.ant-picker-date-panel) .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start::before{background:#06213a}.ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single):not(.ant-picker-cell-range-end) .ant-picker-cell-inner{border-radius:2px 0 0 2px}.ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single):not(.ant-picker-cell-range-start) .ant-picker-cell-inner{border-radius:0 2px 2px 0}.ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end .ant-picker-cell-inner::after,.ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start .ant-picker-cell-inner::after{position:absolute;top:0;bottom:0;z-index:-1;background:#06213a;transition:all .3s;content:''}.ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start .ant-picker-cell-inner::after{right:-6px;left:0}.ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end .ant-picker-cell-inner::after{right:0;left:-6px}.ant-picker-cell-range-hover.ant-picker-cell-range-start::after{right:50%}.ant-picker-cell-range-hover.ant-picker-cell-range-end::after{left:50%}.ant-picker-cell-in-view.ant-picker-cell-range-hover-edge-start:not(.ant-picker-cell-range-hover-edge-start-near-range)::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-start::after,.ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover-edge-start.ant-picker-cell-range-hover-edge-start-near-range::after,tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover-end:first-child::after,tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover:first-child::after{left:6px;border-left:1px dashed #0e4980;border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-picker-cell-in-view.ant-picker-cell-end.ant-picker-cell-range-hover-edge-end.ant-picker-cell-range-hover-edge-end-near-range::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-edge-end:not(.ant-picker-cell-range-hover-edge-end-near-range)::after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-end::after,tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover-start:last-child::after,tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover:last-child::after{right:6px;border-right:1px dashed #0e4980;border-top-right-radius:2px;border-bottom-right-radius:2px}.ant-picker-cell-disabled{color:rgba(255,255,255,.3);pointer-events:none}.ant-picker-cell-disabled .ant-picker-cell-inner{background:0 0}.ant-picker-cell-disabled::before{background:#303030}.ant-picker-cell-disabled.ant-picker-cell-today .ant-picker-cell-inner::before{border-color:rgba(255,255,255,.3)}.ant-picker-decade-panel .ant-picker-content,.ant-picker-month-panel .ant-picker-content,.ant-picker-quarter-panel .ant-picker-content,.ant-picker-year-panel .ant-picker-content{height:264px}.ant-picker-decade-panel .ant-picker-cell-inner,.ant-picker-month-panel .ant-picker-cell-inner,.ant-picker-quarter-panel .ant-picker-cell-inner,.ant-picker-year-panel .ant-picker-cell-inner{padding:0 8px}.ant-picker-quarter-panel .ant-picker-content{height:56px}.ant-picker-footer{width:min-content;min-width:100%;line-height:38px;text-align:center;border-bottom:1px solid transparent}.ant-picker-panel .ant-picker-footer{border-top:1px solid #303030}.ant-picker-footer-extra{padding:0 12px;line-height:38px;text-align:left}.ant-picker-footer-extra:not(:last-child){border-bottom:1px solid #303030}.ant-picker-now{text-align:left}.ant-picker-today-btn{color:#177ddc}.ant-picker-today-btn:hover{color:#165996}.ant-picker-today-btn:active{color:#388ed3}.ant-picker-today-btn.ant-picker-today-btn-disabled{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-picker-decade-panel .ant-picker-cell-inner{padding:0 4px}.ant-picker-decade-panel .ant-picker-cell::before{display:none}.ant-picker-month-panel .ant-picker-body,.ant-picker-quarter-panel .ant-picker-body,.ant-picker-year-panel .ant-picker-body{padding:0 8px}.ant-picker-date-panel .ant-picker-body,.ant-picker-week-panel .ant-picker-body{padding:8px 12px}.ant-picker-month-panel .ant-picker-cell-inner,.ant-picker-quarter-panel .ant-picker-cell-inner,.ant-picker-year-panel .ant-picker-cell-inner{width:60px}.ant-picker-month-panel .ant-picker-cell-range-hover-start::after,.ant-picker-quarter-panel .ant-picker-cell-range-hover-start::after,.ant-picker-year-panel .ant-picker-cell-range-hover-start::after{left:14px;border-left:1px dashed #0e4980;border-radius:2px 0 0 2px}.ant-picker-month-panel .ant-picker-cell-range-hover-end::after,.ant-picker-panel-rtl .ant-picker-month-panel .ant-picker-cell-range-hover-start::after,.ant-picker-panel-rtl .ant-picker-quarter-panel .ant-picker-cell-range-hover-start::after,.ant-picker-panel-rtl .ant-picker-year-panel .ant-picker-cell-range-hover-start::after,.ant-picker-quarter-panel .ant-picker-cell-range-hover-end::after,.ant-picker-year-panel .ant-picker-cell-range-hover-end::after{right:14px;border-right:1px dashed #0e4980;border-radius:0 2px 2px 0}.ant-picker-panel-rtl .ant-picker-month-panel .ant-picker-cell-range-hover-end::after,.ant-picker-panel-rtl .ant-picker-quarter-panel .ant-picker-cell-range-hover-end::after,.ant-picker-panel-rtl .ant-picker-year-panel .ant-picker-cell-range-hover-end::after{left:14px;border-left:1px dashed #0e4980;border-radius:2px 0 0 2px}.ant-picker-week-panel .ant-picker-cell .ant-picker-cell-inner,.ant-picker-week-panel .ant-picker-cell-selected .ant-picker-cell-inner,.ant-picker-week-panel .ant-picker-cell:hover .ant-picker-cell-inner{background:0 0!important}.ant-picker-week-panel-row td{transition:background .3s}.ant-picker-week-panel-row:hover td{background:rgba(255,255,255,.08)}.ant-picker-week-panel-row-selected td,.ant-picker-week-panel-row-selected:hover td{background:#177ddc}.ant-picker-week-panel-row-selected td.ant-picker-cell-week,.ant-picker-week-panel-row-selected:hover td.ant-picker-cell-week{color:rgba(255,255,255,.5)}.ant-picker-week-panel-row-selected td.ant-picker-cell-today .ant-picker-cell-inner::before,.ant-picker-week-panel-row-selected:hover td.ant-picker-cell-today .ant-picker-cell-inner::before{border-color:#fff}.ant-picker-datetime-panel .ant-picker-time-panel,.ant-picker-time-panel-column:not(:first-child){border-left:1px solid #303030}.ant-picker-week-panel-row-selected td .ant-picker-cell-inner,.ant-picker-week-panel-row-selected:hover td .ant-picker-cell-inner{color:#fff}.ant-picker-date-panel .ant-picker-content{width:252px}.ant-picker-date-panel .ant-picker-content th{width:36px}.ant-picker-datetime-panel{display:flex}.ant-picker-datetime-panel .ant-picker-date-panel,.ant-picker-datetime-panel .ant-picker-time-panel{transition:opacity .3s}.ant-picker-datetime-panel-active .ant-picker-date-panel,.ant-picker-datetime-panel-active .ant-picker-time-panel{opacity:.3}.ant-picker-datetime-panel-active .ant-picker-date-panel-active,.ant-picker-datetime-panel-active .ant-picker-time-panel-active{opacity:1}.ant-picker-time-panel{width:auto;min-width:auto}.ant-picker-time-panel .ant-picker-content{display:flex;flex:auto;height:224px}.ant-picker-time-panel-column{flex:1 0 auto;width:56px;margin:0;padding:0;overflow-y:hidden;text-align:left;list-style:none;transition:background .3s}.ant-picker-time-panel-column::after{display:block;height:196px;content:''}.ant-picker-datetime-panel .ant-picker-time-panel-column::after{height:198px}.ant-picker-time-panel-column-active{background:rgba(17,27,38,.2)}.ant-input-number-handler:active,.ant-picker-time-panel-column>li.ant-picker-time-panel-cell .ant-picker-time-panel-cell-inner:hover{background:rgba(255,255,255,.08)}.ant-picker-time-panel-column:hover{overflow-y:auto}.ant-picker-time-panel-column>li{margin:0;padding:0}.ant-picker-time-panel-column>li.ant-picker-time-panel-cell .ant-picker-time-panel-cell-inner{display:block;width:100%;height:28px;margin:0;padding:0 0 0 14px;color:rgba(255,255,255,.85);line-height:28px;border-radius:0;cursor:pointer;transition:background .3s}.ant-menu-item:active,.ant-menu-submenu-title:active,.ant-picker-time-panel-column>li.ant-picker-time-panel-cell-selected .ant-picker-time-panel-cell-inner{background:#111b26}.ant-picker-time-panel-column>li.ant-picker-time-panel-cell-disabled .ant-picker-time-panel-cell-inner{color:rgba(255,255,255,.3);background:0 0;cursor:not-allowed}:root .ant-picker-range-wrapper .ant-picker-month-panel .ant-picker-cell,:root .ant-picker-range-wrapper .ant-picker-year-panel .ant-picker-cell,_:-ms-fullscreen .ant-picker-range-wrapper .ant-picker-month-panel .ant-picker-cell,_:-ms-fullscreen .ant-picker-range-wrapper .ant-picker-year-panel .ant-picker-cell{padding:21px 0}.ant-picker-rtl .ant-picker-suffix{margin-right:4px;margin-left:0}.ant-picker-rtl .ant-picker-clear{right:auto;left:0}.ant-picker-panel-rtl .ant-picker-header-view button:not(:first-child){margin-right:8px;margin-left:0}.ant-picker-rtl.ant-picker-range .ant-picker-clear{right:auto;left:11px}.ant-picker-rtl.ant-picker-range .ant-picker-active-bar{margin-right:11px;margin-left:0}.ant-picker-rtl.ant-picker-range.ant-picker-small .ant-picker-active-bar{margin-right:7px}.ant-picker-dropdown-rtl .ant-picker-ranges{text-align:right}.ant-picker-dropdown-rtl .ant-picker-ranges .ant-picker-ok{float:left;margin-right:8px;margin-left:0}.ant-picker-panel-rtl .ant-picker-prev-icon,.ant-picker-panel-rtl .ant-picker-super-prev-icon{transform:rotate(135deg)}.ant-picker-panel-rtl .ant-picker-next-icon,.ant-picker-panel-rtl .ant-picker-super-next-icon{transform:rotate(-45deg)}.ant-picker-cell .ant-picker-cell-inner{position:relative;z-index:2;display:inline-block;min-width:24px;height:24px;line-height:24px;border-radius:2px;transition:background .3s,border .3s}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-start::before{right:50%;left:0}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-end::before{right:0;left:50%}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-start.ant-picker-cell-range-end::before{right:50%;left:50%}.ant-picker-panel-rtl .ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start .ant-picker-cell-inner::after{right:0;left:-6px}.ant-picker-panel-rtl .ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end .ant-picker-cell-inner::after{right:-6px;left:0}.ant-picker-panel-rtl .ant-picker-cell-range-hover.ant-picker-cell-range-start::after{right:0;left:50%}.ant-picker-panel-rtl .ant-picker-cell-range-hover.ant-picker-cell-range-end::after{right:50%;left:0}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single):not(.ant-picker-cell-range-end) .ant-picker-cell-inner{border-radius:0 2px 2px 0}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single):not(.ant-picker-cell-range-start) .ant-picker-cell-inner{border-radius:2px 0 0 2px}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-hover-edge-start:not(.ant-picker-cell-range-hover-edge-start-near-range)::after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-hover-start::after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover-edge-start.ant-picker-cell-range-hover-edge-start-near-range::after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover:not(.ant-picker-cell-selected):first-child::after{right:6px;left:0;border-right:1px dashed #0e4980;border-left:none;border-radius:0 2px 2px 0}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-end.ant-picker-cell-range-hover-edge-end.ant-picker-cell-range-hover-edge-end-near-range::after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-hover-edge-end:not(.ant-picker-cell-range-hover-edge-end-near-range)::after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-hover-end::after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover:not(.ant-picker-cell-selected):last-child::after{right:0;left:6px;border-right:none;border-left:1px dashed #0e4980;border-radius:2px 0 0 2px}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-end.ant-picker-cell-range-hover-start.ant-picker-cell-range-hover-edge-end:not(.ant-picker-cell-range-hover)::after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover-edge-start:not(.ant-picker-cell-range-hover)::after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover-end.ant-picker-cell-range-hover-edge-start:not(.ant-picker-cell-range-hover)::after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-end.ant-picker-cell-range-hover.ant-picker-cell-range-hover-edge-end:first-child::after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover-end:first-child::after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover-start:last-child::after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover.ant-picker-cell-range-hover-edge-start:last-child::after{right:6px;left:6px;border-right:1px dashed #0e4980;border-left:1px dashed #0e4980;border-radius:2px}.ant-picker-dropdown-rtl .ant-picker-footer-extra{text-align:right}.ant-picker-panel-rtl .ant-picker-time-panel{direction:ltr}.ant-descriptions-rtl,.ant-divider-rtl,.ant-drawer-rtl,.ant-dropdown-menu-submenu-rtl .ant-dropdown-menu-item-group-title,.ant-dropdown-menu.ant-dropdown-menu-rtl,.ant-dropdown-rtl,.ant-dropdown-rtl .ant-dropdown-menu-item-group-title,.ant-empty-rtl,.ant-input-affix-wrapper-rtl,.ant-input-group-rtl,.ant-input-group-wrapper-rtl,.ant-input-number-affix-wrapper-rtl,.ant-input-number-rtl,.ant-input-rtl,.ant-input-search-rtl,.ant-input-textarea-rtl,.ant-row-rtl{direction:rtl}.ant-picker-inline{border:none;padding:0}.ant-picker-inline .ant-picker-range-arrow{display:none!important}.ant-picker-inline .ant-picker-dropdown{z-index:auto}.ant-picker-dropdown{top:unset;left:unset}.ant-picker-panel-container.ant-picker-week-number .ant-picker-date-panel .ant-picker-content{width:100%}.ant-picker-panel-container.ant-picker-week-number .ant-picker-date-panel .ant-picker-content th{width:inherit}.ant-picker-range-arrow{margin-right:16.5px}.ant-descriptions-header{display:flex;align-items:center;margin-bottom:20px}.ant-descriptions-title{flex:auto;overflow:hidden;color:rgba(255,255,255,.85);font-weight:700;font-size:16px;line-height:1.5715;white-space:nowrap;text-overflow:ellipsis}.ant-descriptions-extra,.ant-descriptions-item-content,.ant-descriptions-item-label,.ant-divider{font-size:14px;color:rgba(255,255,255,.85)}.ant-descriptions-extra{margin-left:auto}.ant-descriptions-view{width:100%;border-radius:2px}.ant-descriptions-view table{width:100%;table-layout:fixed}.ant-descriptions-row>td,.ant-descriptions-row>th{padding-bottom:16px}.ant-descriptions-row:last-child{border-bottom:none}.ant-descriptions-item-label{font-weight:400;line-height:1.5715;text-align:start}.ant-descriptions-item-label::after{content:':';position:relative;top:-.5px;margin:0 8px 0 2px}.ant-descriptions-item-label.ant-descriptions-item-no-colon::after{content:' '}.ant-descriptions-item-no-label::after{margin:0;content:''}.ant-descriptions-item-content{display:table-cell;flex:1;line-height:1.5715;word-break:break-word;overflow-wrap:break-word}.ant-descriptions-item{padding-bottom:0;vertical-align:top}.ant-descriptions-item-container{display:flex}.ant-descriptions-item-container .ant-descriptions-item-content,.ant-descriptions-item-container .ant-descriptions-item-label{display:inline-flex;align-items:baseline}.ant-descriptions-middle .ant-descriptions-row>td,.ant-descriptions-middle .ant-descriptions-row>th{padding-bottom:12px}.ant-descriptions-small .ant-descriptions-row>td,.ant-descriptions-small .ant-descriptions-row>th{padding-bottom:8px}.ant-descriptions-bordered .ant-descriptions-view{border:1px solid #303030}.ant-descriptions-bordered .ant-descriptions-view>table{table-layout:auto;border-collapse:collapse}.ant-descriptions-bordered .ant-descriptions-item-content,.ant-descriptions-bordered .ant-descriptions-item-label{padding:16px 24px;border-right:1px solid #303030}.ant-descriptions-bordered .ant-descriptions-item-content:last-child,.ant-descriptions-bordered .ant-descriptions-item-label:last-child{border-right:none}.ant-descriptions-bordered .ant-descriptions-item-label::after{display:none}.ant-descriptions-bordered .ant-descriptions-row{border-bottom:1px solid #303030}.ant-descriptions-bordered .ant-descriptions-row:last-child{border-bottom:none}.ant-descriptions-bordered.ant-descriptions-middle .ant-descriptions-item-content,.ant-descriptions-bordered.ant-descriptions-middle .ant-descriptions-item-label{padding:12px 24px}.ant-descriptions-bordered.ant-descriptions-small .ant-descriptions-item-content,.ant-descriptions-bordered.ant-descriptions-small .ant-descriptions-item-label{padding:8px 16px}.ant-descriptions-rtl .ant-descriptions-item-label::after{margin:0 2px 0 8px}.ant-descriptions-rtl.ant-descriptions-bordered .ant-descriptions-item-content,.ant-descriptions-rtl.ant-descriptions-bordered .ant-descriptions-item-label{border-right:none;border-left:1px solid #303030}.ant-descriptions-rtl.ant-descriptions-bordered .ant-descriptions-item-content:last-child,.ant-descriptions-rtl.ant-descriptions-bordered .ant-descriptions-item-label:last-child{border-left:none}nz-descriptions{display:block}.ant-divider{box-sizing:border-box;margin:0;padding:0;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum;border-top:1px solid rgba(255,255,255,.12)}.ant-divider-vertical{position:relative;top:-.06em;display:inline-block;height:.9em;margin:0 8px;vertical-align:middle;border-top:0;border-left:1px solid rgba(255,255,255,.12)}.ant-divider-horizontal{display:flex;clear:both;width:100%;min-width:100%;margin:24px 0}.ant-divider-horizontal.ant-divider-with-text{display:flex;margin:16px 0;color:rgba(255,255,255,.85);font-weight:500;font-size:16px;white-space:nowrap;text-align:center;border-top:0;border-top-color:rgba(255,255,255,.12)}.ant-divider-horizontal.ant-divider-with-text::after,.ant-divider-horizontal.ant-divider-with-text::before{position:relative;top:50%;width:50%;border-top:1px solid transparent;border-top-color:inherit;border-bottom:0;transform:translateY(50%);content:''}.ant-divider-horizontal.ant-divider-with-text-left::before{top:50%;width:5%}.ant-divider-horizontal.ant-divider-with-text-left::after,.ant-divider-horizontal.ant-divider-with-text-right::before{top:50%;width:95%}.ant-divider-horizontal.ant-divider-with-text-right::after{top:50%;width:5%}.ant-divider-inner-text{display:inline-block;padding:0 1em}.ant-divider-dashed{background:0 0;border-color:rgba(255,255,255,.12);border-style:dashed;border-width:1px 0 0}.ant-divider-horizontal.ant-divider-with-text.ant-divider-dashed::after,.ant-divider-horizontal.ant-divider-with-text.ant-divider-dashed::before{border-style:dashed none none}.ant-divider-vertical.ant-divider-dashed{border-width:0 0 0 1px}.ant-divider-plain.ant-divider-with-text{color:rgba(255,255,255,.85);font-weight:400;font-size:14px}.ant-divider-horizontal.ant-divider-with-text-left.ant-divider-no-default-orientation-margin-left::before{width:0}.ant-divider-horizontal.ant-divider-with-text-left.ant-divider-no-default-orientation-margin-left::after,.ant-divider-horizontal.ant-divider-with-text-right.ant-divider-no-default-orientation-margin-right::before{width:100%}.ant-divider-horizontal.ant-divider-with-text-left.ant-divider-no-default-orientation-margin-left .ant-divider-inner-text{padding-left:0}.ant-divider-horizontal.ant-divider-with-text-right.ant-divider-no-default-orientation-margin-right::after{width:0}.ant-divider-horizontal.ant-divider-with-text-right.ant-divider-no-default-orientation-margin-right .ant-divider-inner-text{padding-right:0}.ant-divider-rtl.ant-divider-horizontal.ant-divider-with-text-left::before{width:95%}.ant-divider-rtl.ant-divider-horizontal.ant-divider-with-text-left::after,.ant-divider-rtl.ant-divider-horizontal.ant-divider-with-text-right::before{width:5%}.ant-divider-rtl.ant-divider-horizontal.ant-divider-with-text-right::after{width:95%}.ant-drawer{position:fixed;z-index:1000;width:0%;height:100%;transition:width 0s ease .3s,height 0s ease .3s}.ant-drawer-content-wrapper{position:absolute;width:100%;height:100%;transition:transform .3s cubic-bezier(.23,1,.32,1),box-shadow .3s cubic-bezier(.23,1,.32,1)}.ant-drawer .ant-drawer-content{width:100%;height:100%}.ant-drawer-left,.ant-drawer-right{top:0;width:0%;height:100%}.ant-drawer-left .ant-drawer-content-wrapper,.ant-drawer-right .ant-drawer-content-wrapper{height:100%}.ant-drawer-left.ant-drawer-open,.ant-drawer-right.ant-drawer-open{width:100%;transition:transform .3s cubic-bezier(.23,1,.32,1)}.ant-drawer-left,.ant-drawer-left .ant-drawer-content-wrapper{left:0}.ant-drawer-left.ant-drawer-open .ant-drawer-content-wrapper{box-shadow:6px 0 16px -8px rgba(0,0,0,.32),9px 0 28px 0 rgba(0,0,0,.2),12px 0 48px 16px rgba(0,0,0,.12)}.ant-drawer-right,.ant-drawer-right .ant-drawer-content-wrapper{right:0}.ant-drawer-right.ant-drawer-open .ant-drawer-content-wrapper{box-shadow:-6px 0 16px -8px rgba(0,0,0,.08),-9px 0 28px 0 rgba(0,0,0,.05),-12px 0 48px 16px rgba(0,0,0,.03)}.ant-drawer-top.ant-drawer-open .ant-drawer-content-wrapper,.header-dropdown{box-shadow:0 6px 16px -8px rgba(0,0,0,.32),0 9px 28px 0 rgba(0,0,0,.2),0 12px 48px 16px rgba(0,0,0,.12)}.ant-drawer-right.ant-drawer-open.no-mask{right:1px;transform:translateX(1px)}.ant-drawer-bottom,.ant-drawer-top{left:0;width:100%;height:0%}.ant-drawer-bottom .ant-drawer-content-wrapper,.ant-drawer-top .ant-drawer-content-wrapper{width:100%}.ant-drawer-bottom.ant-drawer-open,.ant-drawer-top.ant-drawer-open{height:100%;transition:transform .3s cubic-bezier(.23,1,.32,1)}.ant-drawer-top{top:0}.ant-drawer-bottom,.ant-drawer-bottom .ant-drawer-content-wrapper{bottom:0}.ant-drawer-bottom.ant-drawer-open .ant-drawer-content-wrapper{box-shadow:0 -6px 16px -8px rgba(0,0,0,.32),0 -9px 28px 0 rgba(0,0,0,.2),0 -12px 48px 16px rgba(0,0,0,.12)}.ant-drawer-bottom.ant-drawer-open.no-mask{bottom:1px;transform:translateY(1px)}.ant-drawer.ant-drawer-open .ant-drawer-mask{height:100%;opacity:1;transition:none;animation:antdDrawerFadeIn .3s cubic-bezier(.23,1,.32,1);pointer-events:auto}.ant-drawer-title{flex:1;margin:0;color:rgba(255,255,255,.85);font-weight:500;font-size:16px;line-height:22px}.ant-drawer-content{position:relative;z-index:1;overflow:auto;background-color:#1f1f1f;background-clip:padding-box;border:0}.ant-drawer-close{display:inline-block;margin-right:12px;color:rgba(255,255,255,.45);font-weight:700;font-size:16px;font-style:normal;line-height:1;text-align:center;text-transform:none;text-decoration:none;background:0 0;border:0;outline:0;cursor:pointer;transition:color .3s;text-rendering:auto}.ant-drawer-close:focus,.ant-drawer-close:hover{color:rgba(255,255,255,.75);text-decoration:none}.ant-drawer-header{position:relative;display:flex;align-items:center;justify-content:space-between;padding:16px 24px;color:rgba(255,255,255,.85);background:#1f1f1f;border-bottom:1px solid #303030;border-radius:2px 2px 0 0}.ant-drawer-header-title{display:flex;flex:1;align-items:center;justify-content:space-between}.ant-drawer-header-close-only{padding-bottom:0;border:none}.ant-drawer .ant-table tbody>tr>td,.ant-drawer .ant-table tfoot>tr>td,.ant-drawer .ant-table tfoot>tr>th,.ant-drawer .ant-table thead>tr>th,.ant-drawer .ant-table.ant-table-small thead>tr>th,.ant-drawer .ant-transfer-list-header{border-bottom:1px solid #3a3a3a}.ant-drawer .ant-table.ant-table-bordered .ant-table-cell-fix-right-first::after,.ant-drawer .ant-table.ant-table-bordered .ant-table-expanded-row-fixed::after,.ant-drawer .ant-table.ant-table-bordered tbody>tr>td,.ant-drawer .ant-table.ant-table-bordered tfoot>tr>td,.ant-drawer .ant-table.ant-table-bordered tfoot>tr>th,.ant-drawer .ant-table.ant-table-bordered thead>tr>th,.ant-modal .ant-table.ant-table-bordered .ant-table-cell-fix-right-first::after,.ant-modal .ant-table.ant-table-bordered .ant-table-expanded-row-fixed::after,.ant-modal .ant-table.ant-table-bordered tbody>tr>td,.ant-modal .ant-table.ant-table-bordered tfoot>tr>td,.ant-modal .ant-table.ant-table-bordered tfoot>tr>th,.ant-modal .ant-table.ant-table-bordered thead>tr>th,.ant-notification .ant-table.ant-table-bordered .ant-table-cell-fix-right-first::after,.ant-notification .ant-table.ant-table-bordered .ant-table-expanded-row-fixed::after,.ant-notification .ant-table.ant-table-bordered tbody>tr>td,.ant-notification .ant-table.ant-table-bordered tfoot>tr>td,.ant-notification .ant-table.ant-table-bordered tfoot>tr>th,.ant-notification .ant-table.ant-table-bordered thead>tr>th{border-right:1px solid #3a3a3a}.ant-drawer-wrapper-body{display:flex;flex-flow:column nowrap;width:100%;height:100%}.ant-drawer-body{flex-grow:1;padding:24px;overflow:auto;font-size:14px;line-height:1.5715;word-wrap:break-word}.ant-drawer-footer{flex-shrink:0;padding:10px 16px;border-top:1px solid #303030}.ant-drawer .ant-table .ant-table-row-expand-icon,.ant-drawer .ant-table.ant-table-bordered .ant-table-title{border:1px solid #3a3a3a}.ant-drawer-mask{position:absolute;top:0;left:0;width:100%;height:0;background-color:rgba(0,0,0,.45);opacity:0;transition:opacity .3s linear,height 0s ease .3s;pointer-events:none}.ant-drawer .ant-picker-clear{background:#1f1f1f}@keyframes antdDrawerFadeIn{0%{opacity:0}100%{opacity:1}}.ant-drawer-rtl .ant-drawer-close{margin-right:0;margin-left:12px}.ant-drawer .ant-anchor-wrapper,.ant-drawer .ant-card,.ant-drawer .ant-collapse-content,.ant-drawer .ant-picker-clear,.ant-drawer .ant-slider-handle,.ant-drawer .ant-timeline-item-head{background-color:#1f1f1f}.ant-drawer .ant-transfer-list-header{background:#1f1f1f}.ant-drawer .ant-transfer-list-content-item:not(.ant-transfer-list-content-item-disabled):hover{background-color:rgba(255,255,255,.08)}.ant-drawer tr.ant-table-expanded-row:hover>td,.ant-drawer tr.ant-table-expanded-row>td{background:#272727}.ant-drawer .ant-table,.ant-drawer .ant-table.ant-table-small thead>tr>th{background-color:#1f1f1f}.ant-drawer .ant-table thead>tr>th{background-color:#272727}.ant-drawer .ant-table tbody>tr>td.ant-table-cell-fix-left,.ant-drawer .ant-table tbody>tr>td.ant-table-cell-fix-right{background-color:#1f1f1f}.ant-drawer .ant-table tbody>tr.ant-table-row:hover>td{background:#303030}.ant-drawer .ant-table.ant-table-bordered table thead>tr:not(:last-child)>th{border-bottom:1px solid #303030}.ant-drawer .ant-table.ant-table-bordered .ant-table-container,.ant-drawer .ant-table.ant-table-bordered .ant-table-footer{border:1px solid #3a3a3a}.ant-drawer .ant-table .ant-table-filter-trigger-container-open{background-color:#525252}.ant-drawer .ant-picker-calendar-full,.ant-drawer .ant-picker-calendar-full .ant-picker-panel{background-color:#1f1f1f}.ant-drawer .ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date{border-top:2px solid #3a3a3a}.ant-drawer .ant-tabs.ant-tabs-card .ant-tabs-card-bar .ant-tabs-tab-active{background-color:#1f1f1f;border-bottom:1px solid #1f1f1f}.ant-drawer .ant-badge-count{box-shadow:0 0 0 1px #1f1f1f}.ant-drawer .ant-tree-show-line .ant-tree-switcher{background:#1f1f1f}.ant-dropdown-menu-item.ant-dropdown-menu-item-danger{color:#a61d24}.ant-dropdown-menu-item.ant-dropdown-menu-item-danger:hover{color:#fff;background-color:#a61d24}.ant-dropdown{box-sizing:border-box;margin:0;padding:0;color:rgba(255,255,255,.85);font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum;z-index:1050;display:block}.ant-dropdown::before{position:absolute;top:-4px;right:0;bottom:-4px;left:-7px;z-index:-9999;opacity:.0001;content:' '}.ant-dropdown-wrap{position:relative}.ant-dropdown-wrap .ant-btn>.anticon-down{font-size:10px}.ant-dropdown-wrap .anticon-down::before{transition:transform .2s}.ant-dropdown-hidden,.ant-dropdown-menu-hidden,.ant-dropdown-menu-submenu-hidden{display:none}.ant-dropdown-arrow,.ant-dropdown-button.ant-btn-group>.ant-btn-loading+.ant-btn::before,nz-empty{display:block}.ant-dropdown-show-arrow.ant-dropdown-placement-top,.ant-dropdown-show-arrow.ant-dropdown-placement-topLeft,.ant-dropdown-show-arrow.ant-dropdown-placement-topRight{padding-bottom:15.31px}.ant-dropdown-show-arrow.ant-dropdown-placement-bottom,.ant-dropdown-show-arrow.ant-dropdown-placement-bottomLeft,.ant-dropdown-show-arrow.ant-dropdown-placement-bottomRight{padding-top:15.31px}.ant-dropdown-arrow{position:absolute;z-index:1;width:11.31px;border-radius:0 0 2px}.ant-dropdown-arrow::before{position:absolute;top:-11.31px;left:-11.31px;height:33.94px;background:-10px -10px no-repeat #1f1f1f;content:''}.ant-dropdown-placement-top>.ant-dropdown-arrow,.ant-dropdown-placement-topLeft>.ant-dropdown-arrow,.ant-dropdown-placement-topRight>.ant-dropdown-arrow{bottom:10px;box-shadow:3px 3px 7px -3px rgba(0,0,0,.1);transform:rotate(45deg)}.ant-dropdown-placement-top>.ant-dropdown-arrow{left:50%;transform:translateX(-50%) rotate(45deg)}.ant-dropdown-placement-topLeft>.ant-dropdown-arrow{left:16px}.ant-dropdown-placement-topRight>.ant-dropdown-arrow{right:16px}.ant-dropdown-placement-bottom>.ant-dropdown-arrow,.ant-dropdown-placement-bottomLeft>.ant-dropdown-arrow,.ant-dropdown-placement-bottomRight>.ant-dropdown-arrow{top:9.41px;box-shadow:2px 2px 5px -2px rgba(0,0,0,.1);transform:rotate(-135deg) translateY(-.5px)}.ant-dropdown-menu,.ant-menu{box-shadow:0 3px 6px -4px rgba(0,0,0,.48),0 6px 16px 0 rgba(0,0,0,.32),0 9px 28px 8px rgba(0,0,0,.2)}.ant-dropdown-placement-bottom>.ant-dropdown-arrow{left:50%;transform:translateX(-50%) rotate(-135deg) translateY(-.5px)}.ant-dropdown-placement-bottomLeft>.ant-dropdown-arrow{left:16px}.ant-dropdown-placement-bottomRight>.ant-dropdown-arrow{right:16px}.ant-dropdown-menu{position:relative;margin:0;padding:4px 0;text-align:left;list-style-type:none;background-color:#1f1f1f;background-clip:padding-box;border-radius:2px;outline:0}.ant-dropdown-menu-item-group-title{padding:5px 12px;color:rgba(255,255,255,.45);transition:all .3s}.ant-dropdown-menu-submenu-popup{position:absolute;z-index:1050;background:0 0;box-shadow:none;transform-origin:0 0}.ant-dropdown-menu-submenu-popup li,.ant-dropdown-menu-submenu-popup ul{list-style:none}.ant-dropdown-menu-submenu-popup ul{margin-right:.3em;margin-left:.3em}.ant-dropdown-menu-item{position:relative;display:flex;align-items:center}.ant-dropdown-menu-item-icon{min-width:12px;margin-right:8px;font-size:12px}.ant-dropdown-menu-title-content{flex:auto}.ant-dropdown-menu-title-content>a{color:inherit;transition:all .3s}.ant-dropdown-menu-title-content>a:hover{color:inherit}.ant-dropdown-menu-title-content>a::after{position:absolute;top:0;right:0;bottom:0;left:0;content:''}.ant-dropdown-menu-item,.ant-dropdown-menu-submenu-title{clear:both;margin:0;padding:5px 12px;color:rgba(255,255,255,.85);font-weight:400;font-size:14px;line-height:22px;cursor:pointer;transition:all .3s}.ant-dropdown-menu-item-selected,.ant-dropdown-menu-submenu-title-selected{color:#177ddc;background-color:#111b26}.ant-dropdown-menu-item.ant-dropdown-menu-item-active,.ant-dropdown-menu-item.ant-dropdown-menu-submenu-title-active,.ant-dropdown-menu-item:hover,.ant-dropdown-menu-submenu-title.ant-dropdown-menu-item-active,.ant-dropdown-menu-submenu-title.ant-dropdown-menu-submenu-title-active,.ant-dropdown-menu-submenu-title:hover{background-color:rgba(255,255,255,.08)}.ant-dropdown-menu-item-disabled,.ant-dropdown-menu-submenu-title-disabled{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-dropdown-menu-item-disabled:hover,.ant-dropdown-menu-submenu-title-disabled:hover{color:rgba(255,255,255,.3);background-color:transparent;cursor:not-allowed}.ant-dropdown-menu-item-disabled a,.ant-dropdown-menu-submenu-title-disabled a{pointer-events:none}.ant-dropdown-menu-item-divider,.ant-dropdown-menu-submenu-title-divider{height:1px;margin:4px 0;overflow:hidden;line-height:0;background-color:#303030}.ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon,.ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon{position:absolute;right:8px}.ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon,.ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon{margin-right:0!important;color:rgba(255,255,255,.45);font-size:10px;font-style:normal}.ant-dropdown-menu-item-group-list{margin:0 8px;padding:0;list-style:none}.ant-dropdown-menu-submenu-title{padding-right:24px}.ant-dropdown-menu-submenu-vertical{position:relative}.ant-dropdown-menu-submenu-vertical>.ant-dropdown-menu{position:absolute;top:0;left:100%;min-width:100%;margin-left:4px;transform-origin:0 0}.ant-dropdown-menu-submenu.ant-dropdown-menu-submenu-disabled .ant-dropdown-menu-submenu-title,.ant-dropdown-menu-submenu.ant-dropdown-menu-submenu-disabled .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-arrow-icon{color:rgba(255,255,255,.3);background-color:transparent;cursor:not-allowed}.ant-dropdown-menu-submenu-selected .ant-dropdown-menu-submenu-title{color:#177ddc}.ant-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-dropdown-placement-top,.ant-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-dropdown-placement-topLeft,.ant-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-dropdown-placement-topRight,.ant-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-dropdown-placement-top,.ant-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-dropdown-placement-topLeft,.ant-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-dropdown-placement-topRight{animation-name:antSlideDownIn}.ant-dropdown.ant-slide-down-leave.ant-slide-down-leave-active.ant-dropdown-placement-bottom,.ant-dropdown.ant-slide-down-leave.ant-slide-down-leave-active.ant-dropdown-placement-bottomLeft,.ant-dropdown.ant-slide-down-leave.ant-slide-down-leave-active.ant-dropdown-placement-bottomRight{animation-name:antSlideUpOut}.ant-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-dropdown-placement-top,.ant-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-dropdown-placement-topLeft,.ant-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-dropdown-placement-topRight{animation-name:antSlideDownOut}.ant-dropdown-button>.anticon.anticon-down,.ant-dropdown-link>.anticon.anticon-down,.ant-dropdown-trigger>.anticon.anticon-down{font-size:10px;vertical-align:baseline}.ant-dropdown-button{white-space:nowrap}.ant-dropdown-button.ant-btn-group>.ant-btn-loading,.ant-dropdown-button.ant-btn-group>.ant-btn-loading+.ant-btn{cursor:default;pointer-events:none}.ant-dropdown-button.ant-btn-group>.ant-btn:last-child:not(:first-child):not(.ant-btn-icon-only){padding-right:8px;padding-left:8px}.ant-dropdown-menu-dark,.ant-dropdown-menu-dark .ant-dropdown-menu{background:#1f1f1f}.ant-dropdown-menu-dark .ant-dropdown-menu-item,.ant-dropdown-menu-dark .ant-dropdown-menu-item .ant-dropdown-menu-submenu-arrow::after,.ant-dropdown-menu-dark .ant-dropdown-menu-item>.anticon+span>a,.ant-dropdown-menu-dark .ant-dropdown-menu-item>.anticon+span>a .ant-dropdown-menu-submenu-arrow::after,.ant-dropdown-menu-dark .ant-dropdown-menu-item>a,.ant-dropdown-menu-dark .ant-dropdown-menu-item>a .ant-dropdown-menu-submenu-arrow::after,.ant-dropdown-menu-dark .ant-dropdown-menu-submenu-title,.ant-dropdown-menu-dark .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-arrow::after{color:rgba(255,255,255,.65)}.ant-dropdown-menu-dark .ant-dropdown-menu-item:hover,.ant-dropdown-menu-dark .ant-dropdown-menu-item>.anticon+span>a:hover,.ant-dropdown-menu-dark .ant-dropdown-menu-item>a:hover,.ant-dropdown-menu-dark .ant-dropdown-menu-submenu-title:hover{color:#fff;background:0 0}.ant-dropdown-menu-dark .ant-dropdown-menu-item-selected,.ant-dropdown-menu-dark .ant-dropdown-menu-item-selected:hover,.ant-dropdown-menu-dark .ant-dropdown-menu-item-selected>a{color:#fff;background:#177ddc}.ant-dropdown-rtl.ant-dropdown::before{right:-7px;left:0}.ant-dropdown-menu-submenu-rtl .ant-dropdown-menu-item-group-title,.ant-dropdown-menu.ant-dropdown-menu-rtl,.ant-dropdown-rtl .ant-dropdown-menu-item-group-title{text-align:right}.ant-dropdown-menu-submenu-popup.ant-dropdown-menu-submenu-rtl{transform-origin:100% 0}.ant-dropdown-rtl .ant-dropdown-menu-item,.ant-dropdown-rtl .ant-dropdown-menu-submenu-popup li,.ant-dropdown-rtl .ant-dropdown-menu-submenu-popup ul,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title{text-align:right}.ant-dropdown-rtl .ant-dropdown-menu-item>.anticon:first-child,.ant-dropdown-rtl .ant-dropdown-menu-item>span>.anticon:first-child,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title>.anticon:first-child,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title>span>.anticon:first-child{margin-right:0;margin-left:8px}.ant-dropdown-rtl .ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon{right:auto;left:8px}.ant-dropdown-rtl .ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon{margin-left:0!important;transform:scaleX(-1)}.ant-dropdown-rtl .ant-dropdown-menu-submenu-title{padding-right:12px;padding-left:24px}.ant-dropdown-rtl .ant-dropdown-menu-submenu-vertical>.ant-dropdown-menu{right:100%;left:0;margin-right:4px;margin-left:0}.ant-dropdown-menu>ul{list-style:inherit;margin:0;padding:0}.ant-dropdown{top:0;left:0;position:relative;width:100%;margin-top:6px;margin-bottom:6px}.ant-dropdown-rtl .ant-dropdown-menu-item .ant-dropdown-menu-submenu-arrow,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-arrow{transform:rotate(180deg)}.ant-empty{margin:0 8px;font-size:14px;line-height:1.5715;text-align:center}.ant-empty-image{height:100px;margin-bottom:8px}.ant-empty-image img{height:100%}.ant-empty-image svg{height:100%;margin:auto}.ant-empty-normal .ant-empty-image,.ant-input-group-lg .ant-select-single .ant-select-selector{height:40px}.ant-empty-footer{margin-top:16px}.ant-empty-normal{margin:32px 0;color:rgba(255,255,255,.3)}.ant-empty-small{margin:8px 0;color:rgba(255,255,255,.3)}.ant-empty-small .ant-empty-image{height:35px}.ant-empty-img-default-ellipse{fill:#fff;fill-opacity:.08}.ant-empty-img-default-path-1{fill:#262626}.ant-empty-img-default-path-2{fill:url(#linearGradient-1)}.ant-empty-img-default-path-3{fill:#595959}.ant-empty-img-default-path-4{fill:#434343}.ant-empty-img-default-path-5{fill:#595959}.ant-empty-img-default-g{fill:#434343}.ant-empty-img-simple-ellipse{fill:#fff;fill-opacity:.08}.ant-empty-img-simple-g{stroke:#434343}.ant-empty-img-simple-path{fill:#262626;stroke:#434343}.ant-row,.ant-row::after,.ant-row::before{display:flex}.ant-row{flex-flow:row wrap}.ant-col-1,.ant-col-10,.ant-col-11,.ant-col-12,.ant-col-13,.ant-col-14,.ant-col-15,.ant-col-16,.ant-col-17,.ant-col-18,.ant-col-19,.ant-col-2,.ant-col-20,.ant-col-21,.ant-col-22,.ant-col-23,.ant-col-24,.ant-col-3,.ant-col-4,.ant-col-5,.ant-col-6,.ant-col-7,.ant-col-8,.ant-col-9{display:block}.ant-row-no-wrap{flex-wrap:nowrap}.ant-row-start{justify-content:flex-start}.ant-row-center{justify-content:center}.ant-row-end{justify-content:flex-end}.ant-row-space-between{justify-content:space-between}.ant-row-space-around{justify-content:space-around}.ant-row-space-evenly{justify-content:space-evenly}.ant-row-top{align-items:flex-start}.ant-row-middle{align-items:center}.ant-row-bottom{align-items:flex-end}.ant-col{position:relative;max-width:100%;min-height:1px}.ant-col-24{flex:0 0 100%;max-width:100%}.ant-col-push-24{left:100%}.ant-col-pull-24{right:100%}.ant-col-offset-24{margin-left:100%}.ant-col-order-24{order:24}.ant-col-23{flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-push-23{left:95.83333333%}.ant-col-pull-23{right:95.83333333%}.ant-col-offset-23{margin-left:95.83333333%}.ant-col-order-23{order:23}.ant-col-22{flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-push-22{left:91.66666667%}.ant-col-pull-22{right:91.66666667%}.ant-col-offset-22{margin-left:91.66666667%}.ant-col-order-22{order:22}.ant-col-21{flex:0 0 87.5%;max-width:87.5%}.ant-col-push-21{left:87.5%}.ant-col-pull-21{right:87.5%}.ant-col-offset-21{margin-left:87.5%}.ant-col-order-21{order:21}.ant-col-20{flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-push-20{left:83.33333333%}.ant-col-pull-20{right:83.33333333%}.ant-col-offset-20{margin-left:83.33333333%}.ant-col-order-20{order:20}.ant-col-19{flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-push-19{left:79.16666667%}.ant-col-pull-19{right:79.16666667%}.ant-col-offset-19{margin-left:79.16666667%}.ant-col-order-19{order:19}.ant-col-18{flex:0 0 75%;max-width:75%}.ant-col-push-18{left:75%}.ant-col-pull-18{right:75%}.ant-col-offset-18{margin-left:75%}.ant-col-order-18{order:18}.ant-col-17{flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-push-17{left:70.83333333%}.ant-col-pull-17{right:70.83333333%}.ant-col-offset-17{margin-left:70.83333333%}.ant-col-order-17{order:17}.ant-col-16{flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-push-16{left:66.66666667%}.ant-col-pull-16{right:66.66666667%}.ant-col-offset-16{margin-left:66.66666667%}.ant-col-order-16{order:16}.ant-col-15{flex:0 0 62.5%;max-width:62.5%}.ant-col-push-15{left:62.5%}.ant-col-pull-15{right:62.5%}.ant-col-offset-15{margin-left:62.5%}.ant-col-order-15{order:15}.ant-col-14{flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-push-14{left:58.33333333%}.ant-col-pull-14{right:58.33333333%}.ant-col-offset-14{margin-left:58.33333333%}.ant-col-order-14{order:14}.ant-col-13{flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-push-13{left:54.16666667%}.ant-col-pull-13{right:54.16666667%}.ant-col-offset-13{margin-left:54.16666667%}.ant-col-order-13{order:13}.ant-col-12{flex:0 0 50%;max-width:50%}.ant-col-push-12{left:50%}.ant-col-pull-12{right:50%}.ant-col-offset-12{margin-left:50%}.ant-col-order-12{order:12}.ant-col-11{flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-push-11{left:45.83333333%}.ant-col-pull-11{right:45.83333333%}.ant-col-offset-11{margin-left:45.83333333%}.ant-col-order-11{order:11}.ant-col-10{flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-push-10{left:41.66666667%}.ant-col-pull-10{right:41.66666667%}.ant-col-offset-10{margin-left:41.66666667%}.ant-col-order-10{order:10}.ant-col-9{flex:0 0 37.5%;max-width:37.5%}.ant-col-push-9{left:37.5%}.ant-col-pull-9{right:37.5%}.ant-col-offset-9{margin-left:37.5%}.ant-col-order-9{order:9}.ant-col-8{flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-push-8{left:33.33333333%}.ant-col-pull-8{right:33.33333333%}.ant-col-offset-8{margin-left:33.33333333%}.ant-col-order-8{order:8}.ant-col-7{flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-push-7{left:29.16666667%}.ant-col-pull-7{right:29.16666667%}.ant-col-offset-7{margin-left:29.16666667%}.ant-col-order-7{order:7}.ant-col-6{flex:0 0 25%;max-width:25%}.ant-col-push-6{left:25%}.ant-col-pull-6{right:25%}.ant-col-offset-6{margin-left:25%}.ant-col-order-6{order:6}.ant-col-5{flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-push-5{left:20.83333333%}.ant-col-pull-5{right:20.83333333%}.ant-col-offset-5{margin-left:20.83333333%}.ant-col-order-5{order:5}.ant-col-4{flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-push-4{left:16.66666667%}.ant-col-pull-4{right:16.66666667%}.ant-col-offset-4{margin-left:16.66666667%}.ant-col-order-4{order:4}.ant-col-3{flex:0 0 12.5%;max-width:12.5%}.ant-col-push-3{left:12.5%}.ant-col-pull-3{right:12.5%}.ant-col-offset-3{margin-left:12.5%}.ant-col-order-3{order:3}.ant-col-2{flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-push-2{left:8.33333333%}.ant-col-pull-2{right:8.33333333%}.ant-col-offset-2{margin-left:8.33333333%}.ant-col-order-2{order:2}.ant-col-1{flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-push-1{left:4.16666667%}.ant-col-pull-1{right:4.16666667%}.ant-col-offset-1{margin-left:4.16666667%}.ant-col-order-1{order:1}.ant-col-0{display:none}.ant-col-offset-0{margin-left:0}.ant-col-order-0{order:0}.ant-col-offset-0.ant-col-rtl{margin-right:0}.ant-col-push-1.ant-col-rtl{right:4.16666667%;left:auto}.ant-col-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}.ant-col-xs-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-xs-push-24{left:100%}.ant-col-xs-pull-24{right:100%}.ant-col-xs-offset-24{margin-left:100%}.ant-col-xs-order-24{order:24}.ant-col-xs-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-xs-push-23{left:95.83333333%}.ant-col-xs-pull-23{right:95.83333333%}.ant-col-xs-offset-23{margin-left:95.83333333%}.ant-col-xs-order-23{order:23}.ant-col-xs-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-xs-push-22{left:91.66666667%}.ant-col-xs-pull-22{right:91.66666667%}.ant-col-xs-offset-22{margin-left:91.66666667%}.ant-col-xs-order-22{order:22}.ant-col-xs-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-xs-push-21{left:87.5%}.ant-col-xs-pull-21{right:87.5%}.ant-col-xs-offset-21{margin-left:87.5%}.ant-col-xs-order-21{order:21}.ant-col-xs-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-xs-push-20{left:83.33333333%}.ant-col-xs-pull-20{right:83.33333333%}.ant-col-xs-offset-20{margin-left:83.33333333%}.ant-col-xs-order-20{order:20}.ant-col-xs-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-xs-push-19{left:79.16666667%}.ant-col-xs-pull-19{right:79.16666667%}.ant-col-xs-offset-19{margin-left:79.16666667%}.ant-col-xs-order-19{order:19}.ant-col-xs-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-xs-push-18{left:75%}.ant-col-xs-pull-18{right:75%}.ant-col-xs-offset-18{margin-left:75%}.ant-col-xs-order-18{order:18}.ant-col-xs-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-xs-push-17{left:70.83333333%}.ant-col-xs-pull-17{right:70.83333333%}.ant-col-xs-offset-17{margin-left:70.83333333%}.ant-col-xs-order-17{order:17}.ant-col-xs-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-xs-push-16{left:66.66666667%}.ant-col-xs-pull-16{right:66.66666667%}.ant-col-xs-offset-16{margin-left:66.66666667%}.ant-col-xs-order-16{order:16}.ant-col-xs-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-xs-push-15{left:62.5%}.ant-col-xs-pull-15{right:62.5%}.ant-col-xs-offset-15{margin-left:62.5%}.ant-col-xs-order-15{order:15}.ant-col-xs-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-xs-push-14{left:58.33333333%}.ant-col-xs-pull-14{right:58.33333333%}.ant-col-xs-offset-14{margin-left:58.33333333%}.ant-col-xs-order-14{order:14}.ant-col-xs-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-xs-push-13{left:54.16666667%}.ant-col-xs-pull-13{right:54.16666667%}.ant-col-xs-offset-13{margin-left:54.16666667%}.ant-col-xs-order-13{order:13}.ant-col-xs-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-xs-push-12{left:50%}.ant-col-xs-pull-12{right:50%}.ant-col-xs-offset-12{margin-left:50%}.ant-col-xs-order-12{order:12}.ant-col-xs-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-xs-push-11{left:45.83333333%}.ant-col-xs-pull-11{right:45.83333333%}.ant-col-xs-offset-11{margin-left:45.83333333%}.ant-col-xs-order-11{order:11}.ant-col-xs-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-xs-push-10{left:41.66666667%}.ant-col-xs-pull-10{right:41.66666667%}.ant-col-xs-offset-10{margin-left:41.66666667%}.ant-col-xs-order-10{order:10}.ant-col-xs-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-xs-push-9{left:37.5%}.ant-col-xs-pull-9{right:37.5%}.ant-col-xs-offset-9{margin-left:37.5%}.ant-col-xs-order-9{order:9}.ant-col-xs-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-xs-push-8{left:33.33333333%}.ant-col-xs-pull-8{right:33.33333333%}.ant-col-xs-offset-8{margin-left:33.33333333%}.ant-col-xs-order-8{order:8}.ant-col-xs-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-xs-push-7{left:29.16666667%}.ant-col-xs-pull-7{right:29.16666667%}.ant-col-xs-offset-7{margin-left:29.16666667%}.ant-col-xs-order-7{order:7}.ant-col-xs-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-xs-push-6{left:25%}.ant-col-xs-pull-6{right:25%}.ant-col-xs-offset-6{margin-left:25%}.ant-col-xs-order-6{order:6}.ant-col-xs-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-xs-push-5{left:20.83333333%}.ant-col-xs-pull-5{right:20.83333333%}.ant-col-xs-offset-5{margin-left:20.83333333%}.ant-col-xs-order-5{order:5}.ant-col-xs-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-xs-push-4{left:16.66666667%}.ant-col-xs-pull-4{right:16.66666667%}.ant-col-xs-offset-4{margin-left:16.66666667%}.ant-col-xs-order-4{order:4}.ant-col-xs-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-xs-push-3{left:12.5%}.ant-col-xs-pull-3{right:12.5%}.ant-col-xs-offset-3{margin-left:12.5%}.ant-col-xs-order-3{order:3}.ant-col-xs-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-xs-push-2{left:8.33333333%}.ant-col-xs-pull-2{right:8.33333333%}.ant-col-xs-offset-2{margin-left:8.33333333%}.ant-col-xs-order-2{order:2}.ant-col-xs-order-1,.ant-layout-sider-right,.ant-tabs-rtl.ant-tabs-left>.ant-tabs-nav{order:1}.ant-col-xs-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-xs-push-1{left:4.16666667%}.ant-col-pull-0.ant-col-rtl,.ant-col-push-0,.ant-col-xs-pull-0.ant-col-rtl,.ant-col-xs-push-0,.ant-col-xs-push-1.ant-col-rtl{left:auto}.ant-col-xs-pull-1{right:4.16666667%}.ant-col-pull-0,.ant-col-push-0.ant-col-rtl,.ant-col-xs-pull-0,.ant-col-xs-push-0.ant-col-rtl{right:auto}.ant-col-xs-offset-1{margin-left:4.16666667%}.ant-col-xs-0{display:none}.ant-col-xs-offset-0{margin-left:0}.ant-col-xs-order-0{order:0}.ant-col-xs-offset-0.ant-col-rtl{margin-right:0}.ant-col-xs-push-1.ant-col-rtl{right:4.16666667%}.ant-col-xs-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-xs-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-xs-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-xs-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-xs-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-xs-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-xs-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-xs-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-xs-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-xs-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-xs-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-xs-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-xs-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-xs-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-xs-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-xs-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-xs-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-xs-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-xs-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-xs-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-xs-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-xs-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-xs-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-xs-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-xs-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-xs-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-xs-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-xs-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-xs-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-xs-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-xs-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-xs-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-xs-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-xs-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-xs-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-xs-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-xs-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-xs-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-xs-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-xs-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-xs-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-xs-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-xs-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-xs-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-xs-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-xs-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-xs-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-xs-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-xs-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-xs-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-xs-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-xs-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-xs-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-xs-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-xs-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-xs-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-xs-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-xs-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-xs-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-xs-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-xs-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-xs-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-xs-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-xs-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-xs-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-xs-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-xs-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-xs-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-xs-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-xs-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-xs-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}@media (min-width:576px){.ant-col-sm-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-sm-push-24{left:100%}.ant-col-sm-pull-24{right:100%}.ant-col-sm-offset-24{margin-left:100%}.ant-col-sm-order-24{order:24}.ant-col-sm-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-sm-push-23{left:95.83333333%}.ant-col-sm-pull-23{right:95.83333333%}.ant-col-sm-offset-23{margin-left:95.83333333%}.ant-col-sm-order-23{order:23}.ant-col-sm-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-sm-push-22{left:91.66666667%}.ant-col-sm-pull-22{right:91.66666667%}.ant-col-sm-offset-22{margin-left:91.66666667%}.ant-col-sm-order-22{order:22}.ant-col-sm-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-sm-push-21{left:87.5%}.ant-col-sm-pull-21{right:87.5%}.ant-col-sm-offset-21{margin-left:87.5%}.ant-col-sm-order-21{order:21}.ant-col-sm-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-sm-push-20{left:83.33333333%}.ant-col-sm-pull-20{right:83.33333333%}.ant-col-sm-offset-20{margin-left:83.33333333%}.ant-col-sm-order-20{order:20}.ant-col-sm-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-sm-push-19{left:79.16666667%}.ant-col-sm-pull-19{right:79.16666667%}.ant-col-sm-offset-19{margin-left:79.16666667%}.ant-col-sm-order-19{order:19}.ant-col-sm-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-sm-push-18{left:75%}.ant-col-sm-pull-18{right:75%}.ant-col-sm-offset-18{margin-left:75%}.ant-col-sm-order-18{order:18}.ant-col-sm-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-sm-push-17{left:70.83333333%}.ant-col-sm-pull-17{right:70.83333333%}.ant-col-sm-offset-17{margin-left:70.83333333%}.ant-col-sm-order-17{order:17}.ant-col-sm-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-sm-push-16{left:66.66666667%}.ant-col-sm-pull-16{right:66.66666667%}.ant-col-sm-offset-16{margin-left:66.66666667%}.ant-col-sm-order-16{order:16}.ant-col-sm-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-sm-push-15{left:62.5%}.ant-col-sm-pull-15{right:62.5%}.ant-col-sm-offset-15{margin-left:62.5%}.ant-col-sm-order-15{order:15}.ant-col-sm-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-sm-push-14{left:58.33333333%}.ant-col-sm-pull-14{right:58.33333333%}.ant-col-sm-offset-14{margin-left:58.33333333%}.ant-col-sm-order-14{order:14}.ant-col-sm-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-sm-push-13{left:54.16666667%}.ant-col-sm-pull-13{right:54.16666667%}.ant-col-sm-offset-13{margin-left:54.16666667%}.ant-col-sm-order-13{order:13}.ant-col-sm-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-sm-push-12{left:50%}.ant-col-sm-pull-12{right:50%}.ant-col-sm-offset-12{margin-left:50%}.ant-col-sm-order-12{order:12}.ant-col-sm-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-sm-push-11{left:45.83333333%}.ant-col-sm-pull-11{right:45.83333333%}.ant-col-sm-offset-11{margin-left:45.83333333%}.ant-col-sm-order-11{order:11}.ant-col-sm-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-sm-push-10{left:41.66666667%}.ant-col-sm-pull-10{right:41.66666667%}.ant-col-sm-offset-10{margin-left:41.66666667%}.ant-col-sm-order-10{order:10}.ant-col-sm-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-sm-push-9{left:37.5%}.ant-col-sm-pull-9{right:37.5%}.ant-col-sm-offset-9{margin-left:37.5%}.ant-col-sm-order-9{order:9}.ant-col-sm-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-sm-push-8{left:33.33333333%}.ant-col-sm-pull-8{right:33.33333333%}.ant-col-sm-offset-8{margin-left:33.33333333%}.ant-col-sm-order-8{order:8}.ant-col-sm-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-sm-push-7{left:29.16666667%}.ant-col-sm-pull-7{right:29.16666667%}.ant-col-sm-offset-7{margin-left:29.16666667%}.ant-col-sm-order-7{order:7}.ant-col-sm-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-sm-push-6{left:25%}.ant-col-sm-pull-6{right:25%}.ant-col-sm-offset-6{margin-left:25%}.ant-col-sm-order-6{order:6}.ant-col-sm-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-sm-push-5{left:20.83333333%}.ant-col-sm-pull-5{right:20.83333333%}.ant-col-sm-offset-5{margin-left:20.83333333%}.ant-col-sm-order-5{order:5}.ant-col-sm-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-sm-push-4{left:16.66666667%}.ant-col-sm-pull-4{right:16.66666667%}.ant-col-sm-offset-4{margin-left:16.66666667%}.ant-col-sm-order-4{order:4}.ant-col-sm-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-sm-push-3{left:12.5%}.ant-col-sm-pull-3{right:12.5%}.ant-col-sm-offset-3{margin-left:12.5%}.ant-col-sm-order-3{order:3}.ant-col-sm-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-sm-push-2{left:8.33333333%}.ant-col-sm-pull-2{right:8.33333333%}.ant-col-sm-offset-2{margin-left:8.33333333%}.ant-col-sm-order-2{order:2}.ant-col-sm-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-sm-push-1{left:4.16666667%}.ant-col-pull-0.ant-col-rtl,.ant-col-push-0,.ant-col-sm-pull-0.ant-col-rtl,.ant-col-sm-push-0,.ant-col-sm-push-1.ant-col-rtl{left:auto}.ant-col-sm-pull-1{right:4.16666667%}.ant-col-pull-0,.ant-col-push-0.ant-col-rtl,.ant-col-sm-pull-0,.ant-col-sm-push-0.ant-col-rtl{right:auto}.ant-col-sm-offset-1{margin-left:4.16666667%}.ant-col-sm-order-1{order:1}.ant-col-sm-0{display:none}.ant-col-sm-offset-0{margin-left:0}.ant-col-sm-order-0{order:0}.ant-col-sm-offset-0.ant-col-rtl{margin-right:0}.ant-col-sm-push-1.ant-col-rtl{right:4.16666667%}.ant-col-sm-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-sm-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-sm-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-sm-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-sm-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-sm-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-sm-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-sm-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-sm-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-sm-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-sm-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-sm-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-sm-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-sm-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-sm-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-sm-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-sm-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-sm-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-sm-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-sm-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-sm-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-sm-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-sm-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-sm-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-sm-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-sm-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-sm-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-sm-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-sm-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-sm-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-sm-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-sm-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-sm-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-sm-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-sm-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-sm-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-sm-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-sm-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-sm-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-sm-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-sm-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-sm-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-sm-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-sm-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-sm-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-sm-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-sm-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-sm-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-sm-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-sm-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-sm-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-sm-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-sm-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-sm-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-sm-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-sm-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-sm-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-sm-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-sm-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-sm-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-sm-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-sm-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-sm-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-sm-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-sm-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-sm-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-sm-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-sm-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-sm-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-sm-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-sm-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}@media (min-width:768px){.ant-col-md-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-md-push-24{left:100%}.ant-col-md-pull-24{right:100%}.ant-col-md-offset-24{margin-left:100%}.ant-col-md-order-24{order:24}.ant-col-md-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-md-push-23{left:95.83333333%}.ant-col-md-pull-23{right:95.83333333%}.ant-col-md-offset-23{margin-left:95.83333333%}.ant-col-md-order-23{order:23}.ant-col-md-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-md-push-22{left:91.66666667%}.ant-col-md-pull-22{right:91.66666667%}.ant-col-md-offset-22{margin-left:91.66666667%}.ant-col-md-order-22{order:22}.ant-col-md-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-md-push-21{left:87.5%}.ant-col-md-pull-21{right:87.5%}.ant-col-md-offset-21{margin-left:87.5%}.ant-col-md-order-21{order:21}.ant-col-md-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-md-push-20{left:83.33333333%}.ant-col-md-pull-20{right:83.33333333%}.ant-col-md-offset-20{margin-left:83.33333333%}.ant-col-md-order-20{order:20}.ant-col-md-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-md-push-19{left:79.16666667%}.ant-col-md-pull-19{right:79.16666667%}.ant-col-md-offset-19{margin-left:79.16666667%}.ant-col-md-order-19{order:19}.ant-col-md-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-md-push-18{left:75%}.ant-col-md-pull-18{right:75%}.ant-col-md-offset-18{margin-left:75%}.ant-col-md-order-18{order:18}.ant-col-md-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-md-push-17{left:70.83333333%}.ant-col-md-pull-17{right:70.83333333%}.ant-col-md-offset-17{margin-left:70.83333333%}.ant-col-md-order-17{order:17}.ant-col-md-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-md-push-16{left:66.66666667%}.ant-col-md-pull-16{right:66.66666667%}.ant-col-md-offset-16{margin-left:66.66666667%}.ant-col-md-order-16{order:16}.ant-col-md-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-md-push-15{left:62.5%}.ant-col-md-pull-15{right:62.5%}.ant-col-md-offset-15{margin-left:62.5%}.ant-col-md-order-15{order:15}.ant-col-md-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-md-push-14{left:58.33333333%}.ant-col-md-pull-14{right:58.33333333%}.ant-col-md-offset-14{margin-left:58.33333333%}.ant-col-md-order-14{order:14}.ant-col-md-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-md-push-13{left:54.16666667%}.ant-col-md-pull-13{right:54.16666667%}.ant-col-md-offset-13{margin-left:54.16666667%}.ant-col-md-order-13{order:13}.ant-col-md-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-md-push-12{left:50%}.ant-col-md-pull-12{right:50%}.ant-col-md-offset-12{margin-left:50%}.ant-col-md-order-12{order:12}.ant-col-md-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-md-push-11{left:45.83333333%}.ant-col-md-pull-11{right:45.83333333%}.ant-col-md-offset-11{margin-left:45.83333333%}.ant-col-md-order-11{order:11}.ant-col-md-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-md-push-10{left:41.66666667%}.ant-col-md-pull-10{right:41.66666667%}.ant-col-md-offset-10{margin-left:41.66666667%}.ant-col-md-order-10{order:10}.ant-col-md-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-md-push-9{left:37.5%}.ant-col-md-pull-9{right:37.5%}.ant-col-md-offset-9{margin-left:37.5%}.ant-col-md-order-9{order:9}.ant-col-md-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-md-push-8{left:33.33333333%}.ant-col-md-pull-8{right:33.33333333%}.ant-col-md-offset-8{margin-left:33.33333333%}.ant-col-md-order-8{order:8}.ant-col-md-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-md-push-7{left:29.16666667%}.ant-col-md-pull-7{right:29.16666667%}.ant-col-md-offset-7{margin-left:29.16666667%}.ant-col-md-order-7{order:7}.ant-col-md-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-md-push-6{left:25%}.ant-col-md-pull-6{right:25%}.ant-col-md-offset-6{margin-left:25%}.ant-col-md-order-6{order:6}.ant-col-md-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-md-push-5{left:20.83333333%}.ant-col-md-pull-5{right:20.83333333%}.ant-col-md-offset-5{margin-left:20.83333333%}.ant-col-md-order-5{order:5}.ant-col-md-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-md-push-4{left:16.66666667%}.ant-col-md-pull-4{right:16.66666667%}.ant-col-md-offset-4{margin-left:16.66666667%}.ant-col-md-order-4{order:4}.ant-col-md-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-md-push-3{left:12.5%}.ant-col-md-pull-3{right:12.5%}.ant-col-md-offset-3{margin-left:12.5%}.ant-col-md-order-3{order:3}.ant-col-md-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-md-push-2{left:8.33333333%}.ant-col-md-pull-2{right:8.33333333%}.ant-col-md-offset-2{margin-left:8.33333333%}.ant-col-md-order-2{order:2}.ant-col-md-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-md-push-1{left:4.16666667%}.ant-col-md-pull-0.ant-col-rtl,.ant-col-md-push-0,.ant-col-md-push-1.ant-col-rtl,.ant-col-pull-0.ant-col-rtl,.ant-col-push-0{left:auto}.ant-col-md-pull-1{right:4.16666667%}.ant-col-md-pull-0,.ant-col-md-push-0.ant-col-rtl,.ant-col-pull-0,.ant-col-push-0.ant-col-rtl{right:auto}.ant-col-md-offset-1{margin-left:4.16666667%}.ant-col-md-order-1{order:1}.ant-col-md-0{display:none}.ant-col-md-offset-0{margin-left:0}.ant-col-md-order-0{order:0}.ant-col-md-offset-0.ant-col-rtl{margin-right:0}.ant-col-md-push-1.ant-col-rtl{right:4.16666667%}.ant-col-md-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-md-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-md-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-md-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-md-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-md-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-md-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-md-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-md-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-md-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-md-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-md-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-md-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-md-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-md-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-md-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-md-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-md-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-md-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-md-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-md-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-md-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-md-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-md-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-md-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-md-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-md-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-md-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-md-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-md-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-md-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-md-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-md-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-md-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-md-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-md-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-md-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-md-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-md-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-md-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-md-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-md-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-md-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-md-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-md-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-md-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-md-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-md-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-md-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-md-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-md-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-md-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-md-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-md-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-md-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-md-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-md-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-md-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-md-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-md-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-md-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-md-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-md-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-md-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-md-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-md-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-md-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-md-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-md-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-md-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-md-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}@media (min-width:992px){.ant-col-lg-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-lg-push-24{left:100%}.ant-col-lg-pull-24{right:100%}.ant-col-lg-offset-24{margin-left:100%}.ant-col-lg-order-24{order:24}.ant-col-lg-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-lg-push-23{left:95.83333333%}.ant-col-lg-pull-23{right:95.83333333%}.ant-col-lg-offset-23{margin-left:95.83333333%}.ant-col-lg-order-23{order:23}.ant-col-lg-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-lg-push-22{left:91.66666667%}.ant-col-lg-pull-22{right:91.66666667%}.ant-col-lg-offset-22{margin-left:91.66666667%}.ant-col-lg-order-22{order:22}.ant-col-lg-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-lg-push-21{left:87.5%}.ant-col-lg-pull-21{right:87.5%}.ant-col-lg-offset-21{margin-left:87.5%}.ant-col-lg-order-21{order:21}.ant-col-lg-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-lg-push-20{left:83.33333333%}.ant-col-lg-pull-20{right:83.33333333%}.ant-col-lg-offset-20{margin-left:83.33333333%}.ant-col-lg-order-20{order:20}.ant-col-lg-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-lg-push-19{left:79.16666667%}.ant-col-lg-pull-19{right:79.16666667%}.ant-col-lg-offset-19{margin-left:79.16666667%}.ant-col-lg-order-19{order:19}.ant-col-lg-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-lg-push-18{left:75%}.ant-col-lg-pull-18{right:75%}.ant-col-lg-offset-18{margin-left:75%}.ant-col-lg-order-18{order:18}.ant-col-lg-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-lg-push-17{left:70.83333333%}.ant-col-lg-pull-17{right:70.83333333%}.ant-col-lg-offset-17{margin-left:70.83333333%}.ant-col-lg-order-17{order:17}.ant-col-lg-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-lg-push-16{left:66.66666667%}.ant-col-lg-pull-16{right:66.66666667%}.ant-col-lg-offset-16{margin-left:66.66666667%}.ant-col-lg-order-16{order:16}.ant-col-lg-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-lg-push-15{left:62.5%}.ant-col-lg-pull-15{right:62.5%}.ant-col-lg-offset-15{margin-left:62.5%}.ant-col-lg-order-15{order:15}.ant-col-lg-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-lg-push-14{left:58.33333333%}.ant-col-lg-pull-14{right:58.33333333%}.ant-col-lg-offset-14{margin-left:58.33333333%}.ant-col-lg-order-14{order:14}.ant-col-lg-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-lg-push-13{left:54.16666667%}.ant-col-lg-pull-13{right:54.16666667%}.ant-col-lg-offset-13{margin-left:54.16666667%}.ant-col-lg-order-13{order:13}.ant-col-lg-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-lg-push-12{left:50%}.ant-col-lg-pull-12{right:50%}.ant-col-lg-offset-12{margin-left:50%}.ant-col-lg-order-12{order:12}.ant-col-lg-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-lg-push-11{left:45.83333333%}.ant-col-lg-pull-11{right:45.83333333%}.ant-col-lg-offset-11{margin-left:45.83333333%}.ant-col-lg-order-11{order:11}.ant-col-lg-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-lg-push-10{left:41.66666667%}.ant-col-lg-pull-10{right:41.66666667%}.ant-col-lg-offset-10{margin-left:41.66666667%}.ant-col-lg-order-10{order:10}.ant-col-lg-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-lg-push-9{left:37.5%}.ant-col-lg-pull-9{right:37.5%}.ant-col-lg-offset-9{margin-left:37.5%}.ant-col-lg-order-9{order:9}.ant-col-lg-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-lg-push-8{left:33.33333333%}.ant-col-lg-pull-8{right:33.33333333%}.ant-col-lg-offset-8{margin-left:33.33333333%}.ant-col-lg-order-8{order:8}.ant-col-lg-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-lg-push-7{left:29.16666667%}.ant-col-lg-pull-7{right:29.16666667%}.ant-col-lg-offset-7{margin-left:29.16666667%}.ant-col-lg-order-7{order:7}.ant-col-lg-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-lg-push-6{left:25%}.ant-col-lg-pull-6{right:25%}.ant-col-lg-offset-6{margin-left:25%}.ant-col-lg-order-6{order:6}.ant-col-lg-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-lg-push-5{left:20.83333333%}.ant-col-lg-pull-5{right:20.83333333%}.ant-col-lg-offset-5{margin-left:20.83333333%}.ant-col-lg-order-5{order:5}.ant-col-lg-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-lg-push-4{left:16.66666667%}.ant-col-lg-pull-4{right:16.66666667%}.ant-col-lg-offset-4{margin-left:16.66666667%}.ant-col-lg-order-4{order:4}.ant-col-lg-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-lg-push-3{left:12.5%}.ant-col-lg-pull-3{right:12.5%}.ant-col-lg-offset-3{margin-left:12.5%}.ant-col-lg-order-3{order:3}.ant-col-lg-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-lg-push-2{left:8.33333333%}.ant-col-lg-pull-2{right:8.33333333%}.ant-col-lg-offset-2{margin-left:8.33333333%}.ant-col-lg-order-2{order:2}.ant-col-lg-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-lg-push-1{left:4.16666667%}.ant-col-lg-pull-0.ant-col-rtl,.ant-col-lg-push-0,.ant-col-lg-push-1.ant-col-rtl,.ant-col-pull-0.ant-col-rtl,.ant-col-push-0{left:auto}.ant-col-lg-pull-1{right:4.16666667%}.ant-col-lg-pull-0,.ant-col-lg-push-0.ant-col-rtl,.ant-col-pull-0,.ant-col-push-0.ant-col-rtl{right:auto}.ant-col-lg-offset-1{margin-left:4.16666667%}.ant-col-lg-order-1{order:1}.ant-col-lg-0{display:none}.ant-col-lg-offset-0{margin-left:0}.ant-col-lg-order-0{order:0}.ant-col-lg-offset-0.ant-col-rtl{margin-right:0}.ant-col-lg-push-1.ant-col-rtl{right:4.16666667%}.ant-col-lg-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-lg-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-lg-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-lg-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-lg-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-lg-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-lg-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-lg-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-lg-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-lg-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-lg-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-lg-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-lg-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-lg-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-lg-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-lg-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-lg-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-lg-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-lg-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-lg-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-lg-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-lg-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-lg-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-lg-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-lg-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-lg-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-lg-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-lg-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-lg-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-lg-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-lg-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-lg-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-lg-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-lg-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-lg-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-lg-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-lg-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-lg-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-lg-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-lg-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-lg-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-lg-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-lg-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-lg-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-lg-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-lg-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-lg-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-lg-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-lg-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-lg-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-lg-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-lg-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-lg-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-lg-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-lg-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-lg-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-lg-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-lg-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-lg-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-lg-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-lg-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-lg-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-lg-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-lg-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-lg-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-lg-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-lg-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-lg-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-lg-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-lg-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-lg-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}@media (min-width:1200px){.ant-col-xl-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-xl-push-24{left:100%}.ant-col-xl-pull-24{right:100%}.ant-col-xl-offset-24{margin-left:100%}.ant-col-xl-order-24{order:24}.ant-col-xl-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-xl-push-23{left:95.83333333%}.ant-col-xl-pull-23{right:95.83333333%}.ant-col-xl-offset-23{margin-left:95.83333333%}.ant-col-xl-order-23{order:23}.ant-col-xl-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-xl-push-22{left:91.66666667%}.ant-col-xl-pull-22{right:91.66666667%}.ant-col-xl-offset-22{margin-left:91.66666667%}.ant-col-xl-order-22{order:22}.ant-col-xl-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-xl-push-21{left:87.5%}.ant-col-xl-pull-21{right:87.5%}.ant-col-xl-offset-21{margin-left:87.5%}.ant-col-xl-order-21{order:21}.ant-col-xl-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-xl-push-20{left:83.33333333%}.ant-col-xl-pull-20{right:83.33333333%}.ant-col-xl-offset-20{margin-left:83.33333333%}.ant-col-xl-order-20{order:20}.ant-col-xl-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-xl-push-19{left:79.16666667%}.ant-col-xl-pull-19{right:79.16666667%}.ant-col-xl-offset-19{margin-left:79.16666667%}.ant-col-xl-order-19{order:19}.ant-col-xl-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-xl-push-18{left:75%}.ant-col-xl-pull-18{right:75%}.ant-col-xl-offset-18{margin-left:75%}.ant-col-xl-order-18{order:18}.ant-col-xl-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-xl-push-17{left:70.83333333%}.ant-col-xl-pull-17{right:70.83333333%}.ant-col-xl-offset-17{margin-left:70.83333333%}.ant-col-xl-order-17{order:17}.ant-col-xl-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-xl-push-16{left:66.66666667%}.ant-col-xl-pull-16{right:66.66666667%}.ant-col-xl-offset-16{margin-left:66.66666667%}.ant-col-xl-order-16{order:16}.ant-col-xl-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-xl-push-15{left:62.5%}.ant-col-xl-pull-15{right:62.5%}.ant-col-xl-offset-15{margin-left:62.5%}.ant-col-xl-order-15{order:15}.ant-col-xl-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-xl-push-14{left:58.33333333%}.ant-col-xl-pull-14{right:58.33333333%}.ant-col-xl-offset-14{margin-left:58.33333333%}.ant-col-xl-order-14{order:14}.ant-col-xl-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-xl-push-13{left:54.16666667%}.ant-col-xl-pull-13{right:54.16666667%}.ant-col-xl-offset-13{margin-left:54.16666667%}.ant-col-xl-order-13{order:13}.ant-col-xl-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-xl-push-12{left:50%}.ant-col-xl-pull-12{right:50%}.ant-col-xl-offset-12{margin-left:50%}.ant-col-xl-order-12{order:12}.ant-col-xl-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-xl-push-11{left:45.83333333%}.ant-col-xl-pull-11{right:45.83333333%}.ant-col-xl-offset-11{margin-left:45.83333333%}.ant-col-xl-order-11{order:11}.ant-col-xl-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-xl-push-10{left:41.66666667%}.ant-col-xl-pull-10{right:41.66666667%}.ant-col-xl-offset-10{margin-left:41.66666667%}.ant-col-xl-order-10{order:10}.ant-col-xl-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-xl-push-9{left:37.5%}.ant-col-xl-pull-9{right:37.5%}.ant-col-xl-offset-9{margin-left:37.5%}.ant-col-xl-order-9{order:9}.ant-col-xl-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-xl-push-8{left:33.33333333%}.ant-col-xl-pull-8{right:33.33333333%}.ant-col-xl-offset-8{margin-left:33.33333333%}.ant-col-xl-order-8{order:8}.ant-col-xl-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-xl-push-7{left:29.16666667%}.ant-col-xl-pull-7{right:29.16666667%}.ant-col-xl-offset-7{margin-left:29.16666667%}.ant-col-xl-order-7{order:7}.ant-col-xl-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-xl-push-6{left:25%}.ant-col-xl-pull-6{right:25%}.ant-col-xl-offset-6{margin-left:25%}.ant-col-xl-order-6{order:6}.ant-col-xl-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-xl-push-5{left:20.83333333%}.ant-col-xl-pull-5{right:20.83333333%}.ant-col-xl-offset-5{margin-left:20.83333333%}.ant-col-xl-order-5{order:5}.ant-col-xl-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-xl-push-4{left:16.66666667%}.ant-col-xl-pull-4{right:16.66666667%}.ant-col-xl-offset-4{margin-left:16.66666667%}.ant-col-xl-order-4{order:4}.ant-col-xl-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-xl-push-3{left:12.5%}.ant-col-xl-pull-3{right:12.5%}.ant-col-xl-offset-3{margin-left:12.5%}.ant-col-xl-order-3{order:3}.ant-col-xl-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-xl-push-2{left:8.33333333%}.ant-col-xl-pull-2{right:8.33333333%}.ant-col-xl-offset-2{margin-left:8.33333333%}.ant-col-xl-order-2{order:2}.ant-col-xl-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-xl-push-1{left:4.16666667%}.ant-col-pull-0.ant-col-rtl,.ant-col-push-0,.ant-col-xl-pull-0.ant-col-rtl,.ant-col-xl-push-0,.ant-col-xl-push-1.ant-col-rtl{left:auto}.ant-col-xl-pull-1{right:4.16666667%}.ant-col-pull-0,.ant-col-push-0.ant-col-rtl,.ant-col-xl-pull-0,.ant-col-xl-push-0.ant-col-rtl{right:auto}.ant-col-xl-offset-1{margin-left:4.16666667%}.ant-col-xl-order-1{order:1}.ant-col-xl-0{display:none}.ant-col-xl-offset-0{margin-left:0}.ant-col-xl-order-0{order:0}.ant-col-xl-offset-0.ant-col-rtl{margin-right:0}.ant-col-xl-push-1.ant-col-rtl{right:4.16666667%}.ant-col-xl-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-xl-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-xl-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-xl-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-xl-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-xl-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-xl-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-xl-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-xl-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-xl-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-xl-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-xl-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-xl-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-xl-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-xl-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-xl-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-xl-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-xl-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-xl-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-xl-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-xl-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-xl-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-xl-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-xl-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-xl-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-xl-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-xl-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-xl-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-xl-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-xl-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-xl-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-xl-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-xl-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-xl-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-xl-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-xl-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-xl-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-xl-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-xl-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-xl-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-xl-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-xl-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-xl-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-xl-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-xl-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-xl-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-xl-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-xl-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-xl-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-xl-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-xl-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-xl-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-xl-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-xl-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-xl-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-xl-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-xl-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-xl-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-xl-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-xl-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-xl-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-xl-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-xl-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-xl-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-xl-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-xl-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-xl-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-xl-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-xl-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-xl-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-xl-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}@media (min-width:1600px){.ant-col-xxl-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-xxl-push-24{left:100%}.ant-col-xxl-pull-24{right:100%}.ant-col-xxl-offset-24{margin-left:100%}.ant-col-xxl-order-24{order:24}.ant-col-xxl-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-xxl-push-23{left:95.83333333%}.ant-col-xxl-pull-23{right:95.83333333%}.ant-col-xxl-offset-23{margin-left:95.83333333%}.ant-col-xxl-order-23{order:23}.ant-col-xxl-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-xxl-push-22{left:91.66666667%}.ant-col-xxl-pull-22{right:91.66666667%}.ant-col-xxl-offset-22{margin-left:91.66666667%}.ant-col-xxl-order-22{order:22}.ant-col-xxl-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-xxl-push-21{left:87.5%}.ant-col-xxl-pull-21{right:87.5%}.ant-col-xxl-offset-21{margin-left:87.5%}.ant-col-xxl-order-21{order:21}.ant-col-xxl-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-xxl-push-20{left:83.33333333%}.ant-col-xxl-pull-20{right:83.33333333%}.ant-col-xxl-offset-20{margin-left:83.33333333%}.ant-col-xxl-order-20{order:20}.ant-col-xxl-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-xxl-push-19{left:79.16666667%}.ant-col-xxl-pull-19{right:79.16666667%}.ant-col-xxl-offset-19{margin-left:79.16666667%}.ant-col-xxl-order-19{order:19}.ant-col-xxl-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-xxl-push-18{left:75%}.ant-col-xxl-pull-18{right:75%}.ant-col-xxl-offset-18{margin-left:75%}.ant-col-xxl-order-18{order:18}.ant-col-xxl-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-xxl-push-17{left:70.83333333%}.ant-col-xxl-pull-17{right:70.83333333%}.ant-col-xxl-offset-17{margin-left:70.83333333%}.ant-col-xxl-order-17{order:17}.ant-col-xxl-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-xxl-push-16{left:66.66666667%}.ant-col-xxl-pull-16{right:66.66666667%}.ant-col-xxl-offset-16{margin-left:66.66666667%}.ant-col-xxl-order-16{order:16}.ant-col-xxl-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-xxl-push-15{left:62.5%}.ant-col-xxl-pull-15{right:62.5%}.ant-col-xxl-offset-15{margin-left:62.5%}.ant-col-xxl-order-15{order:15}.ant-col-xxl-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-xxl-push-14{left:58.33333333%}.ant-col-xxl-pull-14{right:58.33333333%}.ant-col-xxl-offset-14{margin-left:58.33333333%}.ant-col-xxl-order-14{order:14}.ant-col-xxl-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-xxl-push-13{left:54.16666667%}.ant-col-xxl-pull-13{right:54.16666667%}.ant-col-xxl-offset-13{margin-left:54.16666667%}.ant-col-xxl-order-13{order:13}.ant-col-xxl-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-xxl-push-12{left:50%}.ant-col-xxl-pull-12{right:50%}.ant-col-xxl-offset-12{margin-left:50%}.ant-col-xxl-order-12{order:12}.ant-col-xxl-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-xxl-push-11{left:45.83333333%}.ant-col-xxl-pull-11{right:45.83333333%}.ant-col-xxl-offset-11{margin-left:45.83333333%}.ant-col-xxl-order-11{order:11}.ant-col-xxl-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-xxl-push-10{left:41.66666667%}.ant-col-xxl-pull-10{right:41.66666667%}.ant-col-xxl-offset-10{margin-left:41.66666667%}.ant-col-xxl-order-10{order:10}.ant-col-xxl-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-xxl-push-9{left:37.5%}.ant-col-xxl-pull-9{right:37.5%}.ant-col-xxl-offset-9{margin-left:37.5%}.ant-col-xxl-order-9{order:9}.ant-col-xxl-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-xxl-push-8{left:33.33333333%}.ant-col-xxl-pull-8{right:33.33333333%}.ant-col-xxl-offset-8{margin-left:33.33333333%}.ant-col-xxl-order-8{order:8}.ant-col-xxl-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-xxl-push-7{left:29.16666667%}.ant-col-xxl-pull-7{right:29.16666667%}.ant-col-xxl-offset-7{margin-left:29.16666667%}.ant-col-xxl-order-7{order:7}.ant-col-xxl-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-xxl-push-6{left:25%}.ant-col-xxl-pull-6{right:25%}.ant-col-xxl-offset-6{margin-left:25%}.ant-col-xxl-order-6{order:6}.ant-col-xxl-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-xxl-push-5{left:20.83333333%}.ant-col-xxl-pull-5{right:20.83333333%}.ant-col-xxl-offset-5{margin-left:20.83333333%}.ant-col-xxl-order-5{order:5}.ant-col-xxl-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-xxl-push-4{left:16.66666667%}.ant-col-xxl-pull-4{right:16.66666667%}.ant-col-xxl-offset-4{margin-left:16.66666667%}.ant-col-xxl-order-4{order:4}.ant-col-xxl-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-xxl-push-3{left:12.5%}.ant-col-xxl-pull-3{right:12.5%}.ant-col-xxl-offset-3{margin-left:12.5%}.ant-col-xxl-order-3{order:3}.ant-col-xxl-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-xxl-push-2{left:8.33333333%}.ant-col-xxl-pull-2{right:8.33333333%}.ant-col-xxl-offset-2{margin-left:8.33333333%}.ant-col-xxl-order-2{order:2}.ant-col-xxl-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-xxl-push-1{left:4.16666667%}.ant-col-pull-0.ant-col-rtl,.ant-col-push-0,.ant-col-xxl-pull-0.ant-col-rtl,.ant-col-xxl-push-0,.ant-col-xxl-push-1.ant-col-rtl{left:auto}.ant-col-xxl-pull-1{right:4.16666667%}.ant-col-pull-0,.ant-col-push-0.ant-col-rtl,.ant-col-xxl-pull-0,.ant-col-xxl-push-0.ant-col-rtl{right:auto}.ant-col-xxl-offset-1{margin-left:4.16666667%}.ant-col-xxl-order-1{order:1}.ant-col-xxl-0{display:none}.ant-col-xxl-offset-0{margin-left:0}.ant-col-xxl-order-0{order:0}.ant-col-xxl-offset-0.ant-col-rtl{margin-right:0}.ant-col-xxl-push-1.ant-col-rtl{right:4.16666667%}.ant-col-xxl-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-xxl-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-xxl-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-xxl-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-xxl-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-xxl-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-xxl-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-xxl-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-xxl-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-xxl-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-xxl-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-xxl-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-xxl-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-xxl-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-xxl-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-xxl-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-xxl-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-xxl-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-xxl-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-xxl-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-xxl-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-xxl-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-xxl-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-xxl-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-xxl-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-xxl-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-xxl-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-xxl-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-xxl-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-xxl-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-xxl-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-xxl-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-xxl-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-xxl-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-xxl-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-xxl-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-xxl-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-xxl-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-xxl-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-xxl-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-xxl-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-xxl-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-xxl-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-xxl-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-xxl-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-xxl-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-xxl-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-xxl-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-xxl-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-xxl-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-xxl-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-xxl-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-xxl-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-xxl-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-xxl-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-xxl-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-xxl-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-xxl-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-xxl-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-xxl-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-xxl-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-xxl-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-xxl-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-xxl-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-xxl-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-xxl-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-xxl-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-xxl-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-xxl-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-xxl-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-xxl-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}.ant-input-affix-wrapper{position:relative;width:100%;min-width:0;color:rgba(255,255,255,.85);font-size:14px;line-height:1.5715;background-color:transparent;background-image:none;border-radius:2px;transition:all .3s;display:inline-flex}.ant-input-affix-wrapper-disabled,.ant-input-affix-wrapper[disabled]{background-color:rgba(255,255,255,.08);opacity:1;pointer-events:none;color:rgba(255,255,255,.3)}.ant-input-affix-wrapper::-moz-placeholder{opacity:1}.ant-input-affix-wrapper::placeholder{color:rgba(255,255,255,.3);user-select:none}.ant-input-affix-wrapper:placeholder-shown{text-overflow:ellipsis}.ant-input-affix-wrapper:hover{border-color:#165996;border-right-width:1px}.ant-input-rtl .ant-input-affix-wrapper:hover{border-right-width:0;border-left-width:1px!important}.ant-input-affix-wrapper-focused,.ant-input-affix-wrapper:focus{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-input-affix-wrapper-focused,.ant-input-rtl .ant-input-affix-wrapper:focus{border-right-width:0;border-left-width:1px!important}.ant-input-affix-wrapper-disabled:hover,.ant-input-affix-wrapper[disabled]:hover{border-color:#434343;border-right-width:1px}.ant-input-affix-wrapper-disabled{border-color:#434343;box-shadow:none;cursor:not-allowed}.ant-input-affix-wrapper[disabled]{border-color:#434343;box-shadow:none;cursor:not-allowed}.ant-input-affix-wrapper-borderless,.ant-input-affix-wrapper-borderless-disabled,.ant-input-affix-wrapper-borderless-focused,.ant-input-affix-wrapper-borderless:focus,.ant-input-affix-wrapper-borderless:hover,.ant-input-affix-wrapper-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-input-affix-wrapper{max-width:100%;height:auto;min-height:32px;line-height:1.5715;vertical-align:bottom;transition:all .3s,height 0s}.ant-input-affix-wrapper-lg{padding:6.5px 11px;font-size:16px}.ant-input-affix-wrapper-sm{padding:0 7px}.ant-input-affix-wrapper-stepperless[type=number]{-moz-appearance:textfield}.ant-input-affix-wrapper-stepperless[type=number] ::-webkit-outer-spin-button,.ant-input-affix-wrapper-stepperless[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover{border-color:#165996;border-right-width:1px;z-index:1}.ant-input-rtl .ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover{border-right-width:0;border-left-width:1px!important}.ant-input-search-with-button .ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover{z-index:0}.ant-input-affix-wrapper-focused,.ant-input-affix-wrapper:focus{z-index:1}.ant-input-affix-wrapper-disabled .ant-input[disabled]{background:0 0}.ant-input-affix-wrapper>input.ant-input{padding:0;border:none;outline:0}.ant-input-affix-wrapper>input.ant-input:focus{box-shadow:none!important}.ant-input-affix-wrapper::before{width:0;visibility:hidden;content:'\a0'}.ant-input-prefix,.ant-input-suffix{display:flex;flex:none;align-items:center}.ant-input-prefix>:not(:last-child),.ant-input-suffix>:not(:last-child){margin-right:8px}.ant-input-show-count-suffix{color:rgba(255,255,255,.45)}.ant-input-show-count-has-suffix{margin-right:2px}.ant-input-prefix{margin-right:4px}.ant-input-suffix{margin-left:4px}.ant-input-clear-icon,.anticon.ant-input-clear-icon{margin:0;color:rgba(255,255,255,.3);font-size:12px;vertical-align:-1px;cursor:pointer;transition:color .3s}.ant-input-clear-icon:hover,.anticon.ant-input-clear-icon:hover{color:rgba(255,255,255,.45)}.ant-input,.ant-input-clear-icon:active,.anticon.ant-input-clear-icon:active{color:rgba(255,255,255,.85)}.ant-input-clear-icon-hidden,.anticon.ant-input-clear-icon-hidden{visibility:hidden}.ant-input-clear-icon-has-suffix,.anticon.ant-input-clear-icon-has-suffix{margin:0 4px}.ant-input,.ant-input-group{box-sizing:border-box;margin:0;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum;width:100%}.ant-input-affix-wrapper-textarea-with-clear-btn{padding:0!important;border:0!important}.ant-input-affix-wrapper-textarea-with-clear-btn .ant-input-clear-icon{position:absolute;top:8px;right:8px;z-index:1}.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input,.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:hover{background:0 0;border-color:#a61d24}.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input-focused,.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:focus{border-color:#a61d24;box-shadow:0 0 0 2px rgba(166,29,36,.2);border-right-width:1px;outline:0}.ant-input-status-error .ant-input-prefix{color:#a61d24}.ant-input-status-warning:not(.ant-input-disabled):not(.ant-input-borderless).ant-input,.ant-input-status-warning:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:hover{background:0 0;border-color:#d89614}.ant-input-status-warning:not(.ant-input-disabled):not(.ant-input-borderless).ant-input-focused,.ant-input-status-warning:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:focus{border-color:#d89614;box-shadow:0 0 0 2px rgba(216,150,20,.2);border-right-width:1px;outline:0}.ant-input-status-warning .ant-input-prefix{color:#d89614}.ant-input-affix-wrapper-status-error:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper,.ant-input-affix-wrapper-status-error:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper:hover{background:0 0;border-color:#a61d24}.ant-input-affix-wrapper-status-error:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper-focused,.ant-input-affix-wrapper-status-error:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper:focus{border-color:#a61d24;box-shadow:0 0 0 2px rgba(166,29,36,.2);border-right-width:1px;outline:0}.ant-input-affix-wrapper-status-error .ant-input-prefix{color:#a61d24}.ant-input-affix-wrapper-status-warning:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper,.ant-input-affix-wrapper-status-warning:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper:hover{background:0 0;border-color:#d89614}.ant-input-affix-wrapper-status-warning:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper-focused,.ant-input-affix-wrapper-status-warning:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper:focus{border-color:#d89614;box-shadow:0 0 0 2px rgba(216,150,20,.2);border-right-width:1px;outline:0}.ant-input-affix-wrapper-status-warning .ant-input-prefix{color:#d89614}.ant-input-textarea-status-error.ant-input-textarea-has-feedback .ant-input,.ant-input-textarea-status-success.ant-input-textarea-has-feedback .ant-input,.ant-input-textarea-status-validating.ant-input-textarea-has-feedback .ant-input,.ant-input-textarea-status-warning.ant-input-textarea-has-feedback .ant-input{padding-right:24px}.ant-input-group-wrapper-status-error .ant-input-group-addon{color:#a61d24;border-color:#a61d24}.ant-input-group-wrapper-status-warning .ant-input-group-addon{color:#d89614;border-color:#d89614}.ant-input{position:relative;display:inline-block;min-width:0;padding:4px 11px;font-size:14px;background-color:transparent;background-image:none;border:1px solid #434343;border-radius:2px;transition:all .3s}.ant-input-disabled,.ant-input[disabled]{background-color:rgba(255,255,255,.08);cursor:not-allowed;opacity:1;color:rgba(255,255,255,.3);pointer-events:none}.ant-input::-moz-placeholder{opacity:1}.ant-input::placeholder{color:rgba(255,255,255,.3);user-select:none}.ant-input:placeholder-shown{text-overflow:ellipsis}.ant-input:hover{border-color:#165996;border-right-width:1px}.ant-input-rtl .ant-input:hover{border-right-width:0;border-left-width:1px!important}.ant-input-focused,.ant-input:focus{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-input-focused,.ant-input-rtl .ant-input:focus{border-right-width:0;border-left-width:1px!important}.ant-input-disabled:hover,.ant-input[disabled]:hover{border-color:#434343;border-right-width:1px}.ant-input-disabled{border-color:#434343;box-shadow:none}.ant-input[disabled]{border-color:#434343;box-shadow:none}.ant-input-borderless,.ant-input-borderless-disabled,.ant-input-borderless-focused,.ant-input-borderless:focus,.ant-input-borderless:hover,.ant-input-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-input{max-width:100%;height:auto;min-height:32px;line-height:1.5715;vertical-align:bottom;transition:all .3s,height 0s}.ant-input-lg{padding:6.5px 11px;font-size:16px}.ant-input-group,.ant-input-group-addon{position:relative;color:rgba(255,255,255,.85);font-size:14px}.ant-input-sm{padding:0 7px}.ant-input-stepperless[type=number]{-moz-appearance:textfield}.ant-input-stepperless[type=number] ::-webkit-outer-spin-button,.ant-input-stepperless[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ant-input-group{padding:0;display:table;border-collapse:separate;border-spacing:0}.ant-input-group[class*=col-]{float:none;padding-right:0;padding-left:0}.ant-input-group>[class*=col-]{padding-right:8px}.ant-input-group>[class*=col-]:last-child{padding-right:0}.ant-input-group-addon,.ant-input-group-wrap,.ant-input-group>.ant-input{display:table-cell}.ant-input-group-addon:not(:first-child):not(:last-child),.ant-input-group-wrap:not(:first-child):not(:last-child),.ant-input-group>.ant-input:not(:first-child):not(:last-child){border-radius:0}.ant-input-group-addon,.ant-input-group-wrap{width:1px;white-space:nowrap;vertical-align:middle}.ant-input-group-wrap>*{display:block!important}.ant-input-group .ant-input{float:left;width:100%;margin-bottom:0;text-align:inherit}.ant-input-group .ant-input:focus,.ant-input-group .ant-input:hover{z-index:1;border-right-width:1px}.ant-input-search-with-button .ant-input-group .ant-input:hover{z-index:0}.ant-input-group-addon{padding:0 11px;font-weight:400;text-align:center;background-color:rgba(255,255,255,.04);border:1px solid #434343;border-radius:2px;transition:all .3s}.ant-input-group-addon .ant-select{margin:-5px -11px}.ant-input-group-addon .ant-select.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{background-color:inherit;border:1px solid transparent;box-shadow:none}.ant-input-group-addon .ant-select-focused .ant-select-selector,.ant-input-group-addon .ant-select-open .ant-select-selector{color:#177ddc}.ant-input-group-addon .ant-cascader-picker{margin:-9px -12px;background-color:transparent}.ant-input-group-addon .ant-cascader-picker .ant-cascader-input{text-align:left;border:0;box-shadow:none}.ant-input-group-addon:last-child,.ant-input-group-addon:last-child .ant-select .ant-select-selector,.ant-input-group>.ant-input-affix-wrapper:not(:first-child) .ant-input,.ant-input-group>.ant-input:last-child,.ant-input-group>.ant-input:last-child .ant-select .ant-select-selector{border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-group .ant-input-affix-wrapper:not(:last-child),.ant-input-group-addon:first-child,.ant-input-group-addon:first-child .ant-select .ant-select-selector,.ant-input-group>.ant-input-affix-wrapper:not(:last-child) .ant-input,.ant-input-group>.ant-input:first-child,.ant-input-group>.ant-input:first-child .ant-select .ant-select-selector{border-top-right-radius:0;border-bottom-right-radius:0}.ant-input-group-addon:first-child{border-right:0}.ant-input-group-addon:last-child{border-left:0}.ant-input-group-lg .ant-input,.ant-input-group-lg>.ant-input-group-addon{padding:6.5px 11px;font-size:16px}.ant-input-group-sm .ant-input,.ant-input-group-sm>.ant-input-group-addon{padding:0 7px}.ant-input-group-sm .ant-select-single .ant-select-selector{height:24px}.ant-input-search-button,.ant-input[type=color]{height:32px}.ant-input-search .ant-input-group .ant-input-affix-wrapper:not(:last-child){border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-input-group .ant-input-affix-wrapper:not(:first-child),.ant-input-search .ant-input-group .ant-input-affix-wrapper:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-group.ant-input-group-compact{display:block}.ant-input-group.ant-input-group-compact::after,.ant-input-group.ant-input-group-compact::before{display:table;content:''}.ant-input-group.ant-input-group-compact::after{clear:both}.ant-input-group.ant-input-group-compact-addon:not(:first-child):not(:last-child),.ant-input-group.ant-input-group-compact-wrap:not(:first-child):not(:last-child),.ant-input-group.ant-input-group-compact>.ant-input:not(:first-child):not(:last-child){border-right-width:1px}.ant-input-group.ant-input-group-compact-addon:not(:first-child):not(:last-child):focus,.ant-input-group.ant-input-group-compact-addon:not(:first-child):not(:last-child):hover,.ant-input-group.ant-input-group-compact-wrap:not(:first-child):not(:last-child):focus,.ant-input-group.ant-input-group-compact-wrap:not(:first-child):not(:last-child):hover,.ant-input-group.ant-input-group-compact>.ant-input:not(:first-child):not(:last-child):focus,.ant-input-group.ant-input-group-compact>.ant-input:not(:first-child):not(:last-child):hover{z-index:1}.ant-input-group.ant-input-group-compact>*{display:inline-block;float:none;vertical-align:top;border-radius:0}.ant-input-group.ant-input-group-compact>.ant-input-affix-wrapper,.ant-input-group.ant-input-group-compact>.ant-picker-range{display:inline-flex}.ant-input-group.ant-input-group-compact>:not(:last-child){margin-right:-1px;border-right-width:1px}.ant-input-group.ant-input-group-compact .ant-input{float:none}.ant-input-group.ant-input-group-compact>.ant-cascader-picker .ant-input,.ant-input-group.ant-input-group-compact>.ant-input-group-wrapper .ant-input,.ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input,.ant-input-group.ant-input-group-compact>.ant-select>.ant-select-selector{border-right-width:1px;border-radius:0}.ant-input-group.ant-input-group-compact>.ant-cascader-picker .ant-input:focus,.ant-input-group.ant-input-group-compact>.ant-cascader-picker .ant-input:hover,.ant-input-group.ant-input-group-compact>.ant-input-group-wrapper .ant-input:focus,.ant-input-group.ant-input-group-compact>.ant-input-group-wrapper .ant-input:hover,.ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input:focus,.ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input:hover,.ant-input-group.ant-input-group-compact>.ant-select-focused,.ant-input-group.ant-input-group-compact>.ant-select>.ant-select-arrow,.ant-input-group.ant-input-group-compact>.ant-select>.ant-select-selector:focus,.ant-input-group.ant-input-group-compact>.ant-select>.ant-select-selector:hover{z-index:1}.ant-input-group.ant-input-group-compact>.ant-cascader-picker:first-child .ant-input,.ant-input-group.ant-input-group-compact>.ant-select-auto-complete:first-child .ant-input,.ant-input-group.ant-input-group-compact>.ant-select:first-child>.ant-select-selector,.ant-input-group.ant-input-group-compact>:first-child{border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-input-group.ant-input-group-compact>.ant-cascader-picker-focused:last-child .ant-input,.ant-input-group.ant-input-group-compact>.ant-cascader-picker:last-child .ant-input,.ant-input-group.ant-input-group-compact>.ant-select:last-child>.ant-select-selector,.ant-input-group.ant-input-group-compact>:last-child{border-right-width:1px;border-top-right-radius:2px;border-bottom-right-radius:2px}.ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input{vertical-align:top}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper+.ant-input-group-wrapper{margin-left:-1px}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper+.ant-input-group-wrapper .ant-input-affix-wrapper,.ant-input-group.ant-input-group-compact .ant-input-group-wrapper:not(:last-child).ant-input-search>.ant-input-group>.ant-input-group-addon>.ant-input-search-button{border-radius:0}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper:not(:last-child).ant-input-search>.ant-input-group>.ant-input{border-radius:2px 0 0 2px}.ant-input-group-rtl .ant-input-group-addon:first-child,.ant-input-group>.ant-input-rtl:first-child{border-radius:0 2px 2px 0}.ant-input-group-rtl .ant-input-group-addon:first-child{border-right:1px solid #434343;border-left:0}.ant-input-group-rtl .ant-input-group-addon:last-child{border-right:0;border-left:1px solid #434343}.ant-input-group-rtl.ant-input-group .ant-input-affix-wrapper:not(:first-child),.ant-input-group-rtl.ant-input-group-addon:last-child,.ant-input-group-rtl.ant-input-group>.ant-input:last-child{border-radius:2px 0 0 2px}.ant-input-group-rtl.ant-input-group .ant-input-affix-wrapper:not(:last-child),.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-cascader-picker:first-child .ant-input,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-select-auto-complete:first-child .ant-input,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-select:first-child>.ant-select-selector,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>:first-child{border-radius:0 2px 2px 0}.ant-input-group-rtl.ant-input-group.ant-input-group-compact>:not(:last-child){margin-right:0;margin-left:-1px;border-left-width:1px}.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-cascader-picker-focused:last-child .ant-input,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-cascader-picker:last-child .ant-input,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-select-auto-complete:last-child .ant-input,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-select:last-child>.ant-select-selector,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>:last-child{border-left-width:1px;border-radius:2px 0 0 2px}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper-rtl+.ant-input-group-wrapper-rtl{margin-right:-1px;margin-left:0}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper-rtl:not(:last-child).ant-input-search>.ant-input-group>.ant-input{border-radius:0 2px 2px 0}.ant-input-group-wrapper{display:inline-block;width:100%;text-align:start;vertical-align:top}.ant-input-password-icon.anticon{color:rgba(255,255,255,.45);cursor:pointer;transition:all .3s}.ant-input-password-icon.anticon:hover{color:rgba(255,255,255,.85)}.ant-input[type=color].ant-input-lg{height:40px}.ant-input[type=color].ant-input-sm{height:24px;padding-top:3px;padding-bottom:3px}.ant-input-textarea-show-count>.ant-input{height:100%}.ant-input-textarea-show-count::after{float:right;color:rgba(255,255,255,.45);white-space:nowrap;content:attr(data-count);pointer-events:none}.ant-input-textarea-show-count.ant-input-textarea-in-form-item::after{margin-bottom:-22px}.ant-input-textarea-suffix{position:absolute;top:0;right:11px;bottom:0;z-index:1;display:inline-flex;align-items:center;margin:auto}.ant-input-search .ant-input:focus,.ant-input-search .ant-input:hover{border-color:#165996}.ant-input-search .ant-input:focus+.ant-input-group-addon .ant-input-search-button:not(.ant-btn-primary),.ant-input-search .ant-input:hover+.ant-input-group-addon .ant-input-search-button:not(.ant-btn-primary){border-left-color:#165996}.ant-input-search .ant-input-affix-wrapper{border-radius:0}.ant-input-search .ant-input-lg{line-height:1.5713}.ant-input-search>.ant-input-group>.ant-input-group-addon:last-child{left:-1px;padding:0;border:0}.ant-input-search>.ant-input-group>.ant-input-group-addon:last-child .ant-input-search-button{padding-top:0;padding-bottom:0;border-radius:0 2px 2px 0}.ant-input-search>.ant-input-group>.ant-input-group-addon:last-child .ant-input-search-button:not(.ant-btn-primary){color:rgba(255,255,255,.45)}.ant-input-search>.ant-input-group>.ant-input-group-addon:last-child .ant-input-search-button:not(.ant-btn-primary).ant-btn-loading::before{top:0;right:0;bottom:0;left:0}.ant-input-search-button:focus,.ant-input-search-button:hover{z-index:1}.ant-input-search-large .ant-input-search-button{height:40px}.ant-input-search-small .ant-input-search-button{height:24px}.ant-input-affix-wrapper.ant-input-affix-wrapper-rtl>input.ant-input{border:none;outline:0}.ant-input-affix-wrapper-rtl .ant-input-prefix{margin:0 0 0 4px}.ant-input-affix-wrapper-rtl .ant-input-suffix{margin:0 4px 0 0}.ant-input-textarea-rtl.ant-input-textarea-show-count::after{text-align:left}.ant-input-affix-wrapper-rtl .ant-input-clear-icon-has-suffix{margin-right:0;margin-left:4px}.ant-input-affix-wrapper-rtl .ant-input-clear-icon{right:auto;left:8px}.ant-input-search-rtl .ant-input:focus+.ant-input-group-addon .ant-input-search-button:not(.ant-btn-primary),.ant-input-search-rtl .ant-input:hover+.ant-input-group-addon .ant-input-search-button:not(.ant-btn-primary){border-right-color:#165996;border-left-color:#434343}.ant-input-search-rtl>.ant-input-group>.ant-input-affix-wrapper-focused,.ant-input-search-rtl>.ant-input-group>.ant-input-affix-wrapper:hover{border-right-color:#165996}.ant-input-search-rtl>.ant-input-group>.ant-input-group-addon{right:-1px;left:auto}.ant-input-search-rtl>.ant-input-group>.ant-input-group-addon .ant-input-search-button{border-radius:2px 0 0 2px}@media screen and (-ms-high-contrast:active),(-ms-high-contrast:none){.ant-input{height:32px}.ant-input-lg{height:40px}.ant-input-sm{height:24px}.ant-input-affix-wrapper>input.ant-input{height:auto}}textarea.nz-textarea-autosize-measuring{height:auto!important;overflow:hidden!important;padding:2px 0!important}.ant-input-search-rtl.ant-input-search-enter-button input+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only,.ant-input-search-rtl.ant-input-search-enter-button+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only{width:32px;height:32px}.ant-input-search-rtl.ant-input-search-enter-button input+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only.ant-btn-sm,.ant-input-search-rtl.ant-input-search-enter-button+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only.ant-btn-sm{width:24px;height:24px}.ant-input-search-rtl.ant-input-search-enter-button input+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only.ant-btn-lg,.ant-input-search-rtl.ant-input-search-enter-button+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only.ant-btn-lg{width:40px;height:40px}.ant-input-affix-wrapper-textarea-with-clear-btn .ant-input-suffix{margin-left:0}nz-form-item-feedback-icon.ant-input-suffix{display:flex;flex:none;align-items:center;pointer-events:none;position:absolute;top:0;right:0;z-index:1;height:100%;margin-right:12px;margin-left:4px}.ant-input-number,.ant-input-number-group{margin:0;line-height:1.5715;box-sizing:border-box;font-feature-settings:tnum;list-style:none;font-variant:tabular-nums}.ant-input-status-error.ant-input-has-feedback,.ant-input-status-success.ant-input-has-feedback,.ant-input-status-validating.ant-input-has-feedback,.ant-input-status-warning.ant-input-has-feedback{padding-right:28px}.ant-input-textarea-show-count{display:block;position:relative}.ant-input-number-affix-wrapper{min-width:0;color:rgba(255,255,255,.85);font-size:14px;line-height:1.5715;background-color:transparent;background-image:none;border:1px solid #434343;border-radius:2px;transition:all .3s;position:relative;display:inline-flex;width:90px;padding:0;padding-inline-start:11px}.ant-input-number-affix-wrapper-disabled,.ant-input-number-affix-wrapper[disabled]{background-color:rgba(255,255,255,.08);cursor:not-allowed;color:rgba(255,255,255,.3);pointer-events:none;opacity:1}.ant-input-number-affix-wrapper::-moz-placeholder{opacity:1}.ant-input-number-affix-wrapper::placeholder{color:rgba(255,255,255,.3);user-select:none}.ant-input-number-affix-wrapper:placeholder-shown{text-overflow:ellipsis}.ant-input-number-affix-wrapper:hover{border-color:#165996;border-right-width:1px}.ant-input-rtl .ant-input-number-affix-wrapper:hover{border-right-width:0;border-left-width:1px!important}.ant-input-number-affix-wrapper-focused,.ant-input-number-affix-wrapper:focus{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);border-right-width:1px;outline:0;z-index:1}.ant-input-rtl .ant-input-number-affix-wrapper-focused,.ant-input-rtl .ant-input-number-affix-wrapper:focus{border-right-width:0;border-left-width:1px!important}.ant-input-number-affix-wrapper-disabled:hover,.ant-input-number-affix-wrapper[disabled]:hover{border-color:#434343;border-right-width:1px}.ant-input-number-affix-wrapper-disabled{border-color:#434343;box-shadow:none}.ant-input-number-affix-wrapper[disabled]{border-color:#434343;box-shadow:none}.ant-input-number-affix-wrapper-borderless,.ant-input-number-affix-wrapper-borderless-disabled,.ant-input-number-affix-wrapper-borderless-focused,.ant-input-number-affix-wrapper-borderless:focus,.ant-input-number-affix-wrapper-borderless:hover,.ant-input-number-affix-wrapper-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-input-number-affix-wrapper{max-width:100%;height:auto;min-height:32px;line-height:1.5715;vertical-align:bottom;transition:all .3s,height 0s}.ant-input-number-affix-wrapper-lg{padding:6.5px 11px;font-size:16px}.ant-input-number-affix-wrapper-sm{padding:0 7px}.ant-input-number-affix-wrapper-stepperless[type=number]{-moz-appearance:textfield}.ant-input-number-affix-wrapper-stepperless[type=number] ::-webkit-outer-spin-button,.ant-input-number-affix-wrapper-stepperless[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ant-input-number-affix-wrapper:not(.ant-input-number-affix-wrapper-disabled):hover{border-color:#165996;border-right-width:1px;z-index:1}.ant-input-rtl .ant-input-number-affix-wrapper:not(.ant-input-number-affix-wrapper-disabled):hover{border-right-width:0;border-left-width:1px!important}.ant-input-number-affix-wrapper-disabled .ant-input-number[disabled]{background:0 0}.ant-input-number-affix-wrapper>div.ant-input-number{width:100%;border:none;outline:0}.ant-input-number-affix-wrapper>div.ant-input-number.ant-input-number-focused{box-shadow:none!important}.ant-input-number-affix-wrapper input.ant-input-number-input{padding:0}.ant-input-number-affix-wrapper::before{width:0;visibility:hidden;content:'\a0'}.ant-input-number-affix-wrapper .ant-input-number-handler-wrap{z-index:2}.ant-input-number-prefix,.ant-input-number-suffix{display:flex;flex:none;align-items:center;pointer-events:none}.ant-input-number-prefix{margin-inline-end:4px}.ant-input-number-suffix{position:absolute;top:0;right:0;z-index:1;height:100%;margin-right:11px;margin-left:4px}.ant-input-number-group-wrapper .ant-input-number-affix-wrapper{width:100%}.ant-input-number-status-error:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number,.ant-input-number-status-error:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number:hover{background:0 0;border-color:#a61d24}.ant-input-number-status-error:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number-focused,.ant-input-number-status-error:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number:focus{border-color:#a61d24;box-shadow:0 0 0 2px rgba(166,29,36,.2);border-right-width:1px;outline:0}.ant-input-number-status-error .ant-input-number-prefix{color:#a61d24}.ant-input-number-status-warning:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number,.ant-input-number-status-warning:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number:hover{background:0 0;border-color:#d89614}.ant-input-number-status-warning:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number-focused,.ant-input-number-status-warning:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number:focus{border-color:#d89614;box-shadow:0 0 0 2px rgba(216,150,20,.2);border-right-width:1px;outline:0}.ant-input-number-status-warning .ant-input-number-prefix{color:#d89614}.ant-input-number-affix-wrapper-status-error:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper,.ant-input-number-affix-wrapper-status-error:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper:hover{background:0 0;border-color:#a61d24}.ant-input-number-affix-wrapper-status-error:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper-focused,.ant-input-number-affix-wrapper-status-error:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper:focus{border-color:#a61d24;box-shadow:0 0 0 2px rgba(166,29,36,.2);border-right-width:1px;outline:0}.ant-input-number-affix-wrapper-status-error .ant-input-number-prefix{color:#a61d24}.ant-input-number-affix-wrapper-status-warning:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper,.ant-input-number-affix-wrapper-status-warning:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper:hover{background:0 0;border-color:#d89614}.ant-input-number-affix-wrapper-status-warning:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper-focused,.ant-input-number-affix-wrapper-status-warning:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper:focus{border-color:#d89614;box-shadow:0 0 0 2px rgba(216,150,20,.2);border-right-width:1px;outline:0}.ant-input-number-affix-wrapper-status-warning .ant-input-number-prefix{color:#d89614}.ant-input-number-group-wrapper-status-error .ant-input-number-group-addon{color:#a61d24;border-color:#a61d24}.ant-input-number-group-wrapper-status-warning .ant-input-number-group-addon{color:#d89614;border-color:#d89614}.ant-input-number{position:relative;min-width:0;color:rgba(255,255,255,.85);font-size:14px;background-color:transparent;background-image:none;transition:all .3s;display:inline-block;width:90px;padding:0;border:1px solid #434343;border-radius:2px}.ant-input-number-disabled,.ant-input-number[disabled]{background-color:rgba(255,255,255,.08);cursor:not-allowed;color:rgba(255,255,255,.3);pointer-events:none}.ant-input-number::-moz-placeholder{opacity:1}.ant-input-number::placeholder{color:rgba(255,255,255,.3);user-select:none}.ant-input-number:placeholder-shown{text-overflow:ellipsis}.ant-input-rtl .ant-input-number:hover{border-right-width:0;border-left-width:1px!important}.ant-input-number-focused,.ant-input-number:focus{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-input-number-focused,.ant-input-rtl .ant-input-number:focus{border-right-width:0;border-left-width:1px!important}.ant-input-number[disabled]{border-color:#434343;box-shadow:none;opacity:1}.ant-input-number[disabled]:hover{border-color:#434343;border-right-width:1px}.ant-input-number-borderless,.ant-input-number-borderless-disabled,.ant-input-number-borderless-focused,.ant-input-number-borderless:focus,.ant-input-number-borderless:hover,.ant-input-number-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-input-number{max-width:100%;height:auto;min-height:32px;line-height:1.5715;vertical-align:bottom;transition:all .3s,height 0s}.ant-input-number-stepperless[type=number]{-moz-appearance:textfield}.ant-input-number-stepperless[type=number] ::-webkit-outer-spin-button,.ant-input-number-stepperless[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ant-input-number-group{padding:0;color:rgba(255,255,255,.85);font-size:14px;position:relative;display:table;width:100%;border-collapse:separate;border-spacing:0}.ant-input-number-group[class*=col-]{float:none;padding-right:0;padding-left:0}.ant-input-number-group>[class*=col-]{padding-right:8px}.ant-input-number-group>[class*=col-]:last-child{padding-right:0}.ant-input-number-group-addon,.ant-input-number-group-wrap,.ant-input-number-group>.ant-input-number{display:table-cell}.ant-input-number-group-addon:not(:first-child):not(:last-child),.ant-input-number-group-wrap:not(:first-child):not(:last-child),.ant-input-number-group>.ant-input-number:not(:first-child):not(:last-child){border-radius:0}.ant-input-number-group-addon,.ant-input-number-group-wrap{width:1px;white-space:nowrap;vertical-align:middle}.ant-input-number-group-wrap>*{display:block!important}.ant-input-number-group .ant-input-number{float:left;width:100%;margin-bottom:0;text-align:inherit}.ant-input-number-group .ant-input-number:focus,.ant-input-number-group .ant-input-number:hover{z-index:1;border-right-width:1px}.ant-input-search-with-button .ant-input-number-group .ant-input-number:hover{z-index:0}.ant-input-number-group.ant-input-number-group-compact-addon:not(:first-child):not(:last-child):focus,.ant-input-number-group.ant-input-number-group-compact-addon:not(:first-child):not(:last-child):hover,.ant-input-number-group.ant-input-number-group-compact-wrap:not(:first-child):not(:last-child):focus,.ant-input-number-group.ant-input-number-group-compact-wrap:not(:first-child):not(:last-child):hover,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker .ant-input:focus,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker .ant-input:hover,.ant-input-number-group.ant-input-number-group-compact>.ant-input-group-wrapper .ant-input:focus,.ant-input-number-group.ant-input-number-group-compact>.ant-input-group-wrapper .ant-input:hover,.ant-input-number-group.ant-input-number-group-compact>.ant-input-number:not(:first-child):not(:last-child):focus,.ant-input-number-group.ant-input-number-group-compact>.ant-input-number:not(:first-child):not(:last-child):hover,.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete .ant-input:focus,.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete .ant-input:hover,.ant-input-number-group.ant-input-number-group-compact>.ant-select-focused,.ant-input-number-group.ant-input-number-group-compact>.ant-select>.ant-select-arrow,.ant-input-number-group.ant-input-number-group-compact>.ant-select>.ant-select-selector:focus,.ant-input-number-group.ant-input-number-group-compact>.ant-select>.ant-select-selector:hover{z-index:1}.ant-input-number-group-addon{position:relative;padding:0 11px;color:rgba(255,255,255,.85);font-weight:400;font-size:14px;text-align:center;background-color:rgba(255,255,255,.04);border:1px solid #434343;border-radius:2px;transition:all .3s}.ant-input-number-group-addon .ant-select{margin:-5px -11px}.ant-input-number-group-addon .ant-select.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{background-color:inherit;border:1px solid transparent;box-shadow:none}.ant-input-number-group-addon .ant-select-focused .ant-select-selector,.ant-input-number-group-addon .ant-select-open .ant-select-selector{color:#177ddc}.ant-input-number-group-addon .ant-cascader-picker{margin:-9px -12px;background-color:transparent}.ant-input-number-group-addon .ant-cascader-picker .ant-cascader-input{text-align:left;border:0;box-shadow:none}.ant-input-number-group-addon:last-child,.ant-input-number-group-addon:last-child .ant-select .ant-select-selector,.ant-input-number-group>.ant-input-number-affix-wrapper:not(:first-child) .ant-input-number,.ant-input-number-group>.ant-input-number:last-child,.ant-input-number-group>.ant-input-number:last-child .ant-select .ant-select-selector{border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-number-group .ant-input-number-affix-wrapper:not(:last-child),.ant-input-number-group-addon:first-child,.ant-input-number-group-addon:first-child .ant-select .ant-select-selector,.ant-input-number-group>.ant-input-number-affix-wrapper:not(:last-child) .ant-input-number,.ant-input-number-group>.ant-input-number:first-child,.ant-input-number-group>.ant-input-number:first-child .ant-select .ant-select-selector{border-top-right-radius:0;border-bottom-right-radius:0}.ant-input-number-group-addon:first-child{border-right:0}.ant-input-number-group-addon:last-child{border-left:0}.ant-input-number-group-lg .ant-input-number,.ant-input-number-group-lg>.ant-input-number-group-addon{padding:6.5px 11px;font-size:16px}.ant-input-number-group-sm .ant-input-number,.ant-input-number-group-sm>.ant-input-number-group-addon{padding:0 7px}.ant-input-number-group-lg .ant-select-single .ant-select-selector{height:40px}.ant-input-number-group-sm .ant-select-single .ant-select-selector{height:24px}.ant-input-search .ant-input-number-group .ant-input-number-affix-wrapper:not(:last-child){border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-input-number-group .ant-input-number-affix-wrapper:not(:first-child),.ant-input-search .ant-input-number-group .ant-input-number-affix-wrapper:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-number-group.ant-input-number-group-compact{display:block}.ant-input-number-group.ant-input-number-group-compact::before{display:table;content:''}.ant-input-number-group.ant-input-number-group-compact::after{display:table;clear:both;content:''}.ant-input-number-group.ant-input-number-group-compact-addon:not(:first-child):not(:last-child),.ant-input-number-group.ant-input-number-group-compact-wrap:not(:first-child):not(:last-child),.ant-input-number-group.ant-input-number-group-compact>.ant-input-number:not(:first-child):not(:last-child){border-right-width:1px}.ant-input-number-group.ant-input-number-group-compact>*{display:inline-block;float:none;vertical-align:top;border-radius:0}.ant-input-number-group.ant-input-number-group-compact>.ant-input-number-affix-wrapper,.ant-input-number-group.ant-input-number-group-compact>.ant-picker-range{display:inline-flex}.ant-input-number-group.ant-input-number-group-compact>:not(:last-child){margin-right:-1px;border-right-width:1px}.ant-input-number-group.ant-input-number-group-compact .ant-input-number{float:none}.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-input-group-wrapper .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-select>.ant-select-selector{border-right-width:1px;border-radius:0}.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker:first-child .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete:first-child .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-select:first-child>.ant-select-selector,.ant-input-number-group.ant-input-number-group-compact>:first-child{border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker-focused:last-child .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker:last-child .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-select:last-child>.ant-select-selector,.ant-input-number-group.ant-input-number-group-compact>:last-child{border-right-width:1px;border-top-right-radius:2px;border-bottom-right-radius:2px}.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete .ant-input{vertical-align:top}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper+.ant-input-group-wrapper{margin-left:-1px}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper+.ant-input-group-wrapper .ant-input-affix-wrapper,.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper:not(:last-child).ant-input-search>.ant-input-group>.ant-input-group-addon>.ant-input-search-button{border-radius:0}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper:not(:last-child).ant-input-search>.ant-input-group>.ant-input{border-radius:2px 0 0 2px}.ant-input-number-group-rtl .ant-input-number-group-addon:first-child,.ant-input-number-group>.ant-input-number-rtl:first-child{border-radius:0 2px 2px 0}.ant-input-number-group-rtl .ant-input-number-group-addon:first-child{border-right:1px solid #434343;border-left:0}.ant-input-number-group-rtl .ant-input-number-group-addon:last-child{border-right:0;border-left:1px solid #434343}.ant-input-number-group-rtl.ant-input-number-group .ant-input-number-affix-wrapper:not(:first-child),.ant-input-number-group-rtl.ant-input-number-group-addon:last-child,.ant-input-number-group-rtl.ant-input-number-group>.ant-input-number:last-child{border-radius:2px 0 0 2px}.ant-input-number-group-rtl.ant-input-number-group .ant-input-number-affix-wrapper:not(:last-child),.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker:first-child .ant-input,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete:first-child .ant-input,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-select:first-child>.ant-select-selector,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>:first-child{border-radius:0 2px 2px 0}.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>:not(:last-child){margin-right:0;margin-left:-1px;border-left-width:1px}.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker-focused:last-child .ant-input,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker:last-child .ant-input,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete:last-child .ant-input,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-select:last-child>.ant-select-selector,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>:last-child{border-left-width:1px;border-radius:2px 0 0 2px}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper-rtl+.ant-input-group-wrapper-rtl{margin-right:-1px;margin-left:0}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper-rtl:not(:last-child).ant-input-search>.ant-input-group>.ant-input{border-radius:0 2px 2px 0}.ant-input-number-group-wrapper{display:inline-block;text-align:start;vertical-align:top}.ant-input-number-handler{position:relative;display:block;width:100%;height:50%;overflow:hidden;color:rgba(255,255,255,.45);font-weight:700;line-height:0;text-align:center;border-left:1px solid #434343;transition:all .1s linear}.ant-input-number-handler:hover .ant-input-number-handler-down-inner,.ant-input-number-handler:hover .ant-input-number-handler-up-inner{color:#165996}.ant-input-number-handler-down-inner,.ant-input-number-handler-up-inner{display:inline-block;color:inherit;font-style:normal;text-transform:none;vertical-align:-.125em;position:absolute;right:4px;width:12px;height:12px;color:rgba(255,255,255,.45);line-height:12px;transition:all .1s linear;user-select:none}.ant-input-number-handler-down-inner>*,.ant-input-number-handler-up-inner>*{line-height:1}.ant-input-number-handler-down-inner svg,.ant-input-number-handler-up-inner svg{display:inline-block}.ant-input-number-disabled .ant-input-number-handler-wrap,.ant-input-number-handler-down-inner::before,.ant-input-number-handler-up-inner::before,.ant-input-number-readonly .ant-input-number-handler-wrap{display:none}.ant-input-number-handler-down-inner .ant-input-number-handler-down-inner-icon,.ant-input-number-handler-down-inner .ant-input-number-handler-up-inner-icon,.ant-input-number-handler-up-inner .ant-input-number-handler-down-inner-icon,.ant-input-number-handler-up-inner .ant-input-number-handler-up-inner-icon,nz-content,nz-footer,nz-header{display:block}.ant-input-number:hover{border-color:#165996;border-right-width:1px}.ant-input-number:hover+.ant-form-item-children-icon{opacity:0;transition:opacity .24s linear .24s}.ant-input-number-focused{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-input-number-focused{border-right-width:0;border-left-width:1px!important}.ant-input-number-disabled{border-color:#434343;box-shadow:none;opacity:1}.ant-input-number-disabled:hover{border-color:#434343;border-right-width:1px}.ant-input-number-disabled .ant-input-number-input{cursor:not-allowed}.ant-input-number-input{width:100%;height:30px;padding:0 11px;text-align:left;background-color:transparent;border:0;border-radius:2px;outline:0;transition:all .3s linear;appearance:textfield!important}.ant-input-number-input::-moz-placeholder{opacity:1}.ant-input-number-input::placeholder{color:rgba(255,255,255,.3);user-select:none}.ant-input-number-input:placeholder-shown{text-overflow:ellipsis}.ant-input-number-input[type=number]::-webkit-inner-spin-button,.ant-input-number-input[type=number]::-webkit-outer-spin-button{margin:0;-webkit-appearance:none;appearance:none}.ant-input-number-lg{padding:0;font-size:16px}.ant-input-number-lg input{height:38px}.ant-input-number-sm{padding:0}.ant-input-number-sm input{height:22px;padding:0 7px}.ant-input-number-handler-wrap{position:absolute;top:0;right:0;width:22px;height:100%;background:#141414;border-radius:0 2px 2px 0;opacity:0;transition:opacity .24s linear .1s}.ant-input-number-handler-wrap .ant-input-number-handler .ant-input-number-handler-down-inner,.ant-input-number-handler-wrap .ant-input-number-handler .ant-input-number-handler-up-inner{display:flex;align-items:center;justify-content:center;min-width:auto;margin-right:0;font-size:7px}.ant-input-number-borderless .ant-input-number-handler-wrap{border-left-width:0}.ant-input-number-handler-wrap:hover .ant-input-number-handler{height:40%}.ant-input-number-handler-down:hover,.ant-input-number-handler-up:hover{height:60%!important}.ant-input-number-focused .ant-input-number-handler-wrap,.ant-input-number:hover .ant-input-number-handler-wrap{opacity:1}.ant-input-number-handler-up{border-top-right-radius:2px;cursor:pointer}.ant-input-number-handler-up-inner{top:50%;margin-top:-5px;text-align:center}.ant-input-number-handler-down{top:0;border-top:1px solid #434343;border-bottom-right-radius:2px;cursor:pointer}.ant-input-number-handler-down-inner{top:50%;text-align:center;transform:translateY(-50%)}.ant-input-number-borderless .ant-input-number-handler-down{border-top-width:0}.ant-input-number-handler-down-disabled,.ant-input-number-handler-up-disabled{cursor:not-allowed}.ant-input-number-handler-down-disabled:hover .ant-input-number-handler-down-inner,.ant-input-number-handler-up-disabled:hover .ant-input-number-handler-up-inner{color:rgba(255,255,255,.3)}.ant-input-number-borderless{box-shadow:none}.ant-input-number-out-of-range input{color:#a61d24}.ant-input-number-rtl .ant-input-number-handler{border-right:1px solid #434343;border-left:0}.ant-input-number-rtl .ant-input-number-handler-wrap{right:auto;left:0}.ant-input-number-rtl.ant-input-number-borderless .ant-input-number-handler-wrap{border-right-width:0}.ant-input-number-rtl .ant-input-number-handler-up{border-top-right-radius:0}.ant-input-number-rtl .ant-input-number-handler-down{border-bottom-right-radius:0}.ant-input-number-rtl .ant-input-number-input{direction:ltr;text-align:right}.ant-form-rtl,.ant-layout-rtl,.ant-list-rtl,.ant-list-rtl .ReactVirtualized__List .ant-list-item,.ant-menu.ant-menu-rtl{direction:rtl}.ant-input-number-affix-wrapper>nz-input-number.ant-input-number{width:100%;border:none;outline:0}.ant-input-number-affix-wrapper>nz-input-number.ant-input-number.ant-input-number-focused{box-shadow:none!important}.ant-input-number.ant-input-number-has-feedback .ant-input-number-handler-wrap{z-index:2}.ant-layout{display:flex;flex:auto;flex-direction:column;min-height:0;background:#000}.ant-layout,.ant-layout *{box-sizing:border-box}.ant-layout.ant-layout-has-sider{flex-direction:row}.ant-layout.ant-layout-has-sider>.ant-layout,.ant-layout.ant-layout-has-sider>.ant-layout-content{width:0}.ant-layout-footer,.ant-layout-header{flex:0 0 auto}.ant-layout-header{height:64px;padding:0 50px;color:rgba(255,255,255,.85);line-height:64px;background:#1f1f1f}.ant-layout-footer{padding:24px 50px;color:rgba(255,255,255,.85);font-size:14px;background:#000}.ant-layout-content{flex:auto;min-height:0}.ant-layout-sider{position:relative;min-width:0;background:#1f1f1f;transition:all .2s}.ant-layout-sider-children{height:100%;margin-top:-.1px;padding-top:.1px}.ant-layout-sider-children .ant-menu.ant-menu-inline-collapsed{width:auto}.ant-layout-sider-has-trigger{padding-bottom:48px}.ant-layout-sider-trigger{position:fixed;bottom:0;z-index:1;height:48px;color:#fff;line-height:48px;text-align:center;background:#262626;cursor:pointer;transition:all .2s}.ant-layout-sider-zero-width>*{overflow:hidden}.ant-layout-sider-zero-width-trigger{position:absolute;top:64px;right:-36px;z-index:1;width:36px;height:42px;color:#fff;font-size:18px;line-height:42px;text-align:center;background:#1f1f1f;border-radius:0 2px 2px 0;cursor:pointer;transition:background .3s ease}.ant-form select[multiple],.ant-form select[size],.ant-form-vertical .ant-form-item-label>label{height:auto}.ant-layout-sider-zero-width-trigger::after{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;transition:all .3s;content:''}.ant-layout-sider-zero-width-trigger:hover::after{background:rgba(255,255,255,.1)}.ant-layout-sider-zero-width-trigger-right{left:-36px;border-radius:2px 0 0 2px}.ant-layout-sider-light{background:#fff}.ant-layout-sider-light .ant-layout-sider-trigger,.ant-layout-sider-light .ant-layout-sider-zero-width-trigger{color:rgba(255,255,255,.85);background:#fff}.ant-form-item .ant-input-number+.ant-form-text{margin-left:8px}.ant-form-inline{display:flex;flex-wrap:wrap}.ant-form-inline .ant-form-item{flex:none;flex-wrap:nowrap;margin-right:16px;margin-bottom:0}.ant-form-inline .ant-form-item-with-help{margin-bottom:24px}.ant-form-inline .ant-form-item>.ant-form-item-control,.ant-form-inline .ant-form-item>.ant-form-item-label{display:inline-block;vertical-align:top}.ant-form-inline .ant-form-item>.ant-form-item-label{flex:none}.ant-form-inline .ant-form-item .ant-form-item-has-feedback,.ant-form-inline .ant-form-item .ant-form-text{display:inline-block}.ant-form-horizontal .ant-form-item-label{flex-grow:0}.ant-form-horizontal .ant-form-item-control{flex:1 1 0;min-width:0}.ant-form-horizontal .ant-form-item-label[class$='-24']+.ant-form-item-control,.ant-form-horizontal .ant-form-item-label[class*='-24 ']+.ant-form-item-control,.ant-slider-tooltip .ant-tooltip-inner{min-width:unset}.ant-form-vertical .ant-form-item{flex-direction:column}.ant-col-24.ant-form-item-label,.ant-col-xl-24.ant-form-item-label,.ant-form-vertical .ant-form-item-label{padding:0 0 8px;line-height:1.5715;white-space:initial;text-align:left}.ant-col-24.ant-form-item-label>label,.ant-col-xl-24.ant-form-item-label>label,.ant-form-vertical .ant-form-item-label>label{margin:0}.ant-col-24.ant-form-item-label>label::after,.ant-col-xl-24.ant-form-item-label>label::after,.ant-form-vertical .ant-form-item-label>label::after{display:none}.ant-form-rtl.ant-col-24.ant-form-item-label,.ant-form-rtl.ant-col-xl-24.ant-form-item-label,.ant-form-rtl.ant-form-vertical .ant-form-item-label{text-align:right}@media (max-width:575px){.ant-col-xs-24.ant-form-item-label>label,.ant-form-item .ant-form-item-label>label{margin:0}.ant-col-xs-24.ant-form-item-label>label::after,.ant-form-item .ant-form-item-label>label::after{display:none}.ant-form-item .ant-form-item-label{padding:0 0 8px;line-height:1.5715;white-space:initial;text-align:left}.ant-form-rtl.ant-form-item .ant-form-item-label{text-align:right}.ant-form .ant-form-item{flex-wrap:wrap}.ant-form .ant-form-item .ant-form-item-control,.ant-form .ant-form-item .ant-form-item-label{flex:0 0 100%;max-width:100%}.ant-col-xs-24.ant-form-item-label{padding:0 0 8px;line-height:1.5715;white-space:initial;text-align:left}.ant-form-rtl.ant-col-xs-24.ant-form-item-label{text-align:right}}@media (max-width:767px){.ant-col-sm-24.ant-form-item-label{padding:0 0 8px;line-height:1.5715;white-space:initial;text-align:left}.ant-col-sm-24.ant-form-item-label>label{margin:0}.ant-col-sm-24.ant-form-item-label>label::after{display:none}.ant-form-rtl.ant-col-sm-24.ant-form-item-label{text-align:right}}@media (max-width:991px){.ant-col-md-24.ant-form-item-label{padding:0 0 8px;line-height:1.5715;white-space:initial;text-align:left}.ant-col-md-24.ant-form-item-label>label{margin:0}.ant-col-md-24.ant-form-item-label>label::after{display:none}.ant-form-rtl.ant-col-md-24.ant-form-item-label{text-align:right}}@media (max-width:1199px){.ant-col-lg-24.ant-form-item-label{padding:0 0 8px;line-height:1.5715;white-space:initial;text-align:left}.ant-col-lg-24.ant-form-item-label>label{margin:0}.ant-col-lg-24.ant-form-item-label>label::after{display:none}.ant-form-rtl.ant-col-lg-24.ant-form-item-label{text-align:right}}@media (max-width:1599px){.ant-col-xl-24.ant-form-item-label{padding:0 0 8px;line-height:1.5715;white-space:initial;text-align:left}.ant-col-xl-24.ant-form-item-label>label{margin:0}.ant-col-xl-24.ant-form-item-label>label::after{display:none}.ant-form-rtl.ant-col-xl-24.ant-form-item-label{text-align:right}}.ant-form-item-explain-error{color:#a61d24}.ant-form-item-explain-warning,.ant-form-item-has-warning .ant-form-item-split{color:#d89614}.ant-form-item-has-feedback .ant-switch{margin:2px 0 4px}.ant-form-item-has-error .ant-form-item-split{color:#a61d24}.ant-form{box-sizing:border-box;margin:0;padding:0;color:rgba(255,255,255,.85);font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum}.ant-form legend{display:block;width:100%;margin-bottom:20px;padding:0;color:rgba(255,255,255,.45);font-size:16px;line-height:inherit;border:0;border-bottom:1px solid #434343}.ant-form label{font-size:14px}.ant-form input[type=search]{box-sizing:border-box}.ant-form input[type=radio],.ant-form input[type=checkbox]{line-height:normal}.ant-form output,.ant-form-item{line-height:1.5715;color:rgba(255,255,255,.85);font-size:14px}.ant-form input[type=file]{display:block}.ant-form input[type=range]{display:block;width:100%}.ant-form input[type=radio]:focus,.ant-form input[type=checkbox]:focus,.ant-form input[type=file]:focus{outline:dotted thin;outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}.ant-form output{display:block;padding-top:15px}.ant-form .ant-form-text{display:inline-block;padding-right:8px}.ant-form-small .ant-form-item-label>label{height:24px}.ant-form-small .ant-form-item-control-input{min-height:24px}.ant-form-large .ant-form-item-label>label{height:40px}.ant-form-large .ant-form-item-control-input{min-height:40px}.ant-form-item{box-sizing:border-box;margin:0 0 24px;padding:0;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;vertical-align:top;transition:margin-bottom .3s 17ms linear}.ant-form-item-with-help{margin-bottom:0;transition:none}.ant-form-item-hidden,.ant-form-item-hidden.ant-row{display:none}.ant-form-item-label{display:inline-block;flex-grow:0;overflow:hidden;white-space:nowrap;text-align:right;vertical-align:middle}.ant-form-item-label-left{text-align:left}.ant-form-item-label-wrap{overflow:unset;line-height:1.3215em;white-space:unset}.ant-form-item-label>label{position:relative;display:inline-flex;align-items:center;max-width:100%;height:32px;color:rgba(255,255,255,.85);font-size:14px}.ant-form-item-label>label>.anticon{font-size:14px;vertical-align:top}.ant-form-item-label>label.ant-form-item-required:not(.ant-form-item-required-mark-optional)::before{display:inline-block;margin-right:4px;color:#a61d24;font-size:14px;font-family:SimSun,sans-serif;line-height:1;content:'*'}.ant-form-hide-required-mark .ant-form-item-label>label.ant-form-item-required:not(.ant-form-item-required-mark-optional)::before{display:none}.ant-form-item-label>label .ant-form-item-optional{display:inline-block;margin-left:4px;color:rgba(255,255,255,.45)}.ant-form-hide-required-mark .ant-form-item-label>label .ant-form-item-optional{display:none}.ant-form-item-label>label .ant-form-item-tooltip{color:rgba(255,255,255,.45);cursor:help;writing-mode:horizontal-tb;margin-inline-start:4px}.ant-form-item-label>label::after{content:':';position:relative;top:-.5px;margin:0 8px 0 2px}.ant-form-item-label>label.ant-form-item-no-colon::after{content:' '}.ant-form-item-control{display:flex;flex-direction:column;flex-grow:1}.ant-form-item-control:first-child:not([class^=ant-col-]):not([class*=' ant-col-']){width:100%}.ant-form-item-control-input{position:relative;display:flex;align-items:center;min-height:32px}.ant-form-item-control-input-content{flex:auto;max-width:100%}.ant-form-item-explain,.ant-form-item-extra{clear:both;color:rgba(255,255,255,.45);font-size:14px;line-height:1.5715;transition:color .3s cubic-bezier(.215,.61,.355,1)}.ant-form-item-explain-connected{height:0;min-height:0;opacity:0}.ant-form-item-extra{min-height:24px}.ant-form-item-with-help .ant-form-item-explain{height:auto;min-height:24px;opacity:1}.ant-form-item-feedback-icon{font-size:14px;text-align:center;visibility:visible;animation:zoomIn .3s cubic-bezier(.12,.4,.29,1.46);pointer-events:none}.ant-form-item-feedback-icon-success{color:#49aa19}.ant-form-item-feedback-icon-error{color:#a61d24}.ant-form-item-feedback-icon-warning{color:#d89614}.ant-form-item-feedback-icon-validating{color:#177ddc}.ant-list,.ant-list-item,.ant-list-item-meta-content,.ant-list-item-meta-title,.ant-list-item-meta-title>a{color:rgba(255,255,255,.85)}.ant-show-help{transition:height .3s linear,min-height .3s linear,margin-bottom .3s cubic-bezier(.645,.045,.355,1),opacity .3s cubic-bezier(.645,.045,.355,1)}.ant-show-help-leave{min-height:24px}.ant-show-help-leave-active{min-height:0}.ant-list-spin,.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add{min-height:40px}.ant-show-help-item{overflow:hidden;transition:height .3s cubic-bezier(.645,.045,.355,1),opacity .3s cubic-bezier(.645,.045,.355,1),transform .3s cubic-bezier(.645,.045,.355,1)!important}.ant-show-help-item-appear,.ant-show-help-item-enter{transform:translateY(-5px);opacity:0}.ant-show-help-item-appear-active,.ant-show-help-item-enter-active{transform:translateY(0);opacity:1}.ant-show-help-item-leave-active{transform:translateY(-5px)}@keyframes diffZoomIn1{0%{transform:scale(0);opacity:0}100%{transform:scale(1);opacity:1}}@keyframes diffZoomIn2{0%{transform:scale(0);opacity:0}100%{transform:scale(1);opacity:1}}@keyframes diffZoomIn3{0%{transform:scale(0);opacity:0}100%{transform:scale(1);opacity:1}}.ant-form-rtl .ant-form-item-label{text-align:left}.ant-form-rtl .ant-form-item-label>label.ant-form-item-required::before{margin-right:0;margin-left:4px}.ant-form-rtl .ant-form-item-label>label::after{margin:0 2px 0 8px}.ant-form-rtl .ant-form-item-label>label .ant-form-item-optional{margin-right:4px;margin-left:0}.ant-col-rtl .ant-form-item-control:first-child{width:100%}.ant-form-rtl .ant-form-item-has-feedback .ant-input{padding-right:11px;padding-left:24px}.ant-form-rtl .ant-form-item-has-feedback .ant-input-affix-wrapper .ant-input-suffix{padding-right:11px;padding-left:18px}.ant-form-rtl .ant-form-item-has-feedback .ant-input-affix-wrapper .ant-input,.ant-form-rtl .ant-form-item-has-feedback .ant-input-number-affix-wrapper .ant-input-number{padding:0}.ant-form-rtl .ant-form-item-has-feedback .ant-input-search:not(.ant-input-search-enter-button) .ant-input-suffix{right:auto;left:28px}.ant-form-rtl .ant-form-item-has-feedback .ant-cascader-picker-clear,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-group-addon)>.ant-select .ant-select-arrow,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-group-addon)>.ant-select .ant-select-clear,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-number-group-addon)>.ant-select .ant-select-arrow,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-number-group-addon)>.ant-select .ant-select-clear,.ant-form-rtl .ant-form-item-has-feedback>.ant-select .ant-select-arrow,.ant-form-rtl .ant-form-item-has-feedback>.ant-select .ant-select-clear{left:32px;right:auto}.ant-form-rtl .ant-form-item-has-feedback .ant-input-number{padding-left:18px}.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-group-addon)>.ant-select .ant-select-selection-selected-value,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-number-group-addon)>.ant-select .ant-select-selection-selected-value,.ant-form-rtl .ant-form-item-has-feedback>.ant-select .ant-select-selection-selected-value{padding-right:0;padding-left:42px}.ant-form-rtl .ant-form-item-has-feedback .ant-cascader-picker-arrow{margin-right:0;margin-left:19px}.ant-form-rtl .ant-form-item-has-feedback .ant-picker,.ant-form-rtl .ant-form-item-has-feedback .ant-picker-large{padding-right:11px;padding-left:29.2px}.ant-form-rtl .ant-form-item-has-feedback .ant-picker-small{padding-right:7px;padding-left:25.2px}.ant-form-rtl .ant-form-item-has-feedback.ant-form-item-has-error .ant-form-item-children-icon,.ant-form-rtl .ant-form-item-has-feedback.ant-form-item-has-success .ant-form-item-children-icon,.ant-form-rtl .ant-form-item-has-feedback.ant-form-item-has-warning .ant-form-item-children-icon,.ant-form-rtl .ant-form-item-has-feedback.ant-form-item-is-validating .ant-form-item-children-icon{right:auto;left:0}.ant-form-rtl.ant-form-inline .ant-form-item{margin-right:0;margin-left:16px}nz-form-item.ant-form-item{transition:none}.ant-list .ant-card{background:0 0}.ant-list{box-sizing:border-box;margin:0;padding:0;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum;position:relative}.ant-list *{outline:0}.ant-list-pagination{margin-top:24px;text-align:right}.ant-list-pagination .ant-pagination-options{text-align:left}.ant-list-more{margin-top:12px;text-align:center}.ant-list-more button{padding-right:32px;padding-left:32px}.ant-list-spin{text-align:center}.ant-list-empty-text{padding:16px;color:rgba(255,255,255,.3);font-size:14px;text-align:center}.ant-list-items{margin:0;padding:0;list-style:none}.ant-list-item{display:flex;align-items:center;justify-content:space-between;padding:12px 0}.ant-list-item-meta{display:flex;flex:1;align-items:flex-start;max-width:100%}.ant-list-item-meta-avatar{margin-right:16px}.ant-list-item-meta-content{flex:1 0;width:0}.ant-list-item-meta-title{margin-bottom:4px;font-size:14px;line-height:1.5715}.ant-list-item-meta-title>a{transition:all .3s}.ant-list-item-meta-title>a:hover{color:#177ddc}.ant-list-item-meta-description{color:rgba(255,255,255,.45);font-size:14px;line-height:1.5715}.ant-list-item-action{flex:0 0 auto;margin-left:48px;padding:0;font-size:0;list-style:none}.ant-list-item-action>li{position:relative;display:inline-block;padding:0 8px;color:rgba(255,255,255,.45);font-size:14px;line-height:1.5715;text-align:center}.ant-list-item-action>li:first-child{padding-left:0}.ant-list-item-action-split{position:absolute;top:50%;right:0;width:1px;height:14px;margin-top:-7px;background-color:#303030}.ant-list-footer,.ant-list-header{background:0 0;padding-top:12px;padding-bottom:12px}.ant-list-empty{padding:16px 0;color:rgba(255,255,255,.45);font-size:12px;text-align:center}.ant-list-split .ant-list-item{border-bottom:1px solid #303030}.ant-list-split .ant-list-item:last-child{border-bottom:none}.ant-list-split .ant-list-header,.ant-list-split.ant-list-something-after-last-item .ant-spin-container>.ant-list-items>.ant-list-item:last-child{border-bottom:1px solid #303030}.ant-list-split.ant-list-empty .ant-list-footer{border-top:1px solid #303030}.ant-list-loading .ant-list-spin-nested-loading{min-height:32px}.ant-list-lg .ant-list-item{padding:16px 24px}.ant-list-sm .ant-list-item{padding:8px 16px}.ant-list-vertical .ant-list-item{align-items:initial}.ant-list-vertical .ant-list-item-main{display:block;flex:1}.ant-list-vertical .ant-list-item-extra{margin-left:40px}.ant-list-vertical .ant-list-item-meta{margin-bottom:16px}.ant-list-vertical .ant-list-item-meta-title{margin-bottom:12px;color:rgba(255,255,255,.85);font-size:16px;line-height:24px}.ant-menu-dark .ant-menu-item-danger.ant-menu-item,.ant-menu-dark .ant-menu-item-danger.ant-menu-item:hover,.ant-menu-dark .ant-menu-item-danger.ant-menu-item>a,.ant-menu-item-danger.ant-menu-item,.ant-menu-item-danger.ant-menu-item-active,.ant-menu-item-danger.ant-menu-item-selected,.ant-menu-item-danger.ant-menu-item-selected>a,.ant-menu-item-danger.ant-menu-item-selected>a:hover,.ant-menu-item-danger.ant-menu-item:hover{color:#a61d24}.ant-list-vertical .ant-list-item-action{margin-top:16px;margin-left:auto}.ant-list-vertical .ant-list-item-action>li{padding:0 16px}.ant-list-vertical .ant-list-item-action>li:first-child{padding-left:0}.ant-list-grid .ant-col>.ant-list-item{display:block;max-width:100%;margin-bottom:16px;padding-top:0;padding-bottom:0;border-bottom:none}.ant-list-item-no-flex{display:block}.ant-list:not(.ant-list-vertical) .ant-list-item-no-flex .ant-list-item-action{float:right}.ant-list-bordered{border:1px solid #434343;border-radius:2px}.ant-list-bordered .ant-list-footer,.ant-list-bordered .ant-list-header,.ant-list-bordered .ant-list-item{padding-right:24px;padding-left:24px}.ant-list-bordered .ant-list-pagination{margin:16px 24px}.ant-list-bordered.ant-list-sm .ant-list-footer,.ant-list-bordered.ant-list-sm .ant-list-header,.ant-list-bordered.ant-list-sm .ant-list-item{padding:8px 16px}.ant-list-bordered.ant-list-lg .ant-list-footer,.ant-list-bordered.ant-list-lg .ant-list-header,.ant-list-bordered.ant-list-lg .ant-list-item{padding:16px 24px}.ant-list-rtl .ant-list-vertical .ant-list-item-action>li:first-child,.ant-list.ant-list-rtl .ant-list-item-action>li:first-child{padding-right:0;padding-left:16px}@media screen and (max-width:768px){.ant-list-item-action,.ant-list-vertical .ant-list-item-extra{margin-left:24px}}@media screen and (max-width:576px){.ant-list-item{flex-wrap:wrap}.ant-list-item-action{margin-left:12px}.ant-list-vertical .ant-list-item{flex-wrap:wrap-reverse}.ant-list-vertical .ant-list-item-main{min-width:220px}.ant-list-vertical .ant-list-item-extra{margin:auto auto 16px}}.ant-list-rtl{text-align:right}.ant-list-rtl .ant-list-pagination,.ant-menu{text-align:left}.ant-list-rtl .ant-list-item-meta-avatar{margin-right:0;margin-left:16px}.ant-list-rtl .ant-list-item-action{margin-right:48px;margin-left:0}.ant-list-rtl .ant-list-item-action-split{right:auto;left:0}.ant-list-rtl.ant-list-vertical .ant-list-item-extra{margin-right:40px;margin-left:0}.ant-list-rtl.ant-list-vertical .ant-list-item-action{margin-right:auto}.ant-list-rtl .ant-list:not(.ant-list-vertical) .ant-list-item-no-flex .ant-list-item-action{float:left}@media screen and (max-width:768px){.ant-list-rtl .ant-list-item-action,.ant-list-rtl .ant-list-vertical .ant-list-item-extra{margin-right:24px;margin-left:0}}@media screen and (max-width:576px){.ant-list-rtl .ant-list-item-action{margin-right:22px;margin-left:0}.ant-list-rtl.ant-list-vertical .ant-list-item-extra{margin:auto auto 16px}}nz-list,nz-list nz-spin,nz-list-empty,nz-list-footer,nz-list-header,nz-list-item-extra,nz-list-pagination{display:block}.ant-menu::after,.ant-menu::before{display:table;content:''}.ant-menu-item-danger.ant-menu-item:active{background:#2a1215}.ant-menu:not(.ant-menu-horizontal) .ant-menu-item-danger.ant-menu-item-selected{background-color:#2a1215}.ant-menu-inline .ant-menu-item-danger.ant-menu-item::after{border-right-color:#a61d24}.ant-menu-dark.ant-menu-dark:not(.ant-menu-horizontal) .ant-menu-item-danger.ant-menu-item-selected{color:#fff;background-color:#a61d24}.ant-menu{box-sizing:border-box;margin:0;padding:0;font-variant:tabular-nums;font-feature-settings:tnum;color:rgba(255,255,255,.85);font-size:14px;line-height:0;list-style:none;background:#141414;outline:0;transition:background .3s,width .3s cubic-bezier(.2,0,0,1) 0s}.ant-menu::after{clear:both}.ant-menu ol,.ant-menu ul{margin:0;padding:0;list-style:none}.ant-menu-overflow{display:flex}.ant-menu-hidden,.ant-menu-submenu-hidden,.ant-menu-submenu-horizontal .ant-menu-submenu-arrow{display:none}.ant-menu-overflow-item{flex:none}.ant-menu-item-group-title{height:1.5715;padding:8px 16px;color:rgba(255,255,255,.45);font-size:14px;line-height:1.5715;transition:all .3s}.ant-menu-horizontal .ant-menu-submenu{transition:border-color .3s cubic-bezier(.645,.045,.355,1),background .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-submenu,.ant-menu-submenu-inline{transition:border-color .3s cubic-bezier(.645,.045,.355,1),background .3s cubic-bezier(.645,.045,.355,1),padding .15s cubic-bezier(.645,.045,.355,1)}.ant-menu-submenu-selected{color:#177ddc}.ant-menu-horizontal>.ant-menu-item-active,.ant-menu-horizontal>.ant-menu-item:hover,.ant-menu-horizontal>.ant-menu-submenu .ant-menu-submenu-title:hover,.ant-menu-item a::before{background-color:transparent}.ant-menu-submenu .ant-menu-sub{cursor:initial;transition:background .3s cubic-bezier(.645,.045,.355,1),padding .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-title-content{transition:color .3s}.ant-menu-item a{color:rgba(255,255,255,.85)}.ant-menu-item a:hover{color:#177ddc}.ant-menu-item a::before{position:absolute;top:0;right:0;bottom:0;left:0;content:''}.ant-menu-item>.ant-badge a{color:rgba(255,255,255,.85)}.ant-menu-item-selected,.ant-menu-item-selected a,.ant-menu-item-selected a:hover,.ant-menu-item>.ant-badge a:hover{color:#177ddc}.ant-menu-item-divider{overflow:hidden;line-height:0;border-color:#303030;border-style:solid;border-width:1px 0 0}.ant-menu-item-divider-dashed{border-style:dashed}.ant-menu-horizontal .ant-menu-item,.ant-menu-horizontal .ant-menu-submenu{margin-top:-1px}.ant-menu:not(.ant-menu-horizontal) .ant-menu-item-selected{background-color:#111b26}.ant-menu-inline,.ant-menu-vertical,.ant-menu-vertical-left{border-right:1px solid #303030}.ant-menu-vertical-right{border-left:1px solid #303030}.ant-menu-vertical-left.ant-menu-sub,.ant-menu-vertical-right.ant-menu-sub,.ant-menu-vertical.ant-menu-sub{min-width:160px;max-height:calc(100vh - 100px);padding:0;overflow:hidden;border-right:0}.ant-menu-vertical-left.ant-menu-sub:not([class*='-active']),.ant-menu-vertical-right.ant-menu-sub:not([class*='-active']),.ant-menu-vertical.ant-menu-sub:not([class*='-active']){overflow-x:hidden;overflow-y:auto}.ant-menu-vertical-left.ant-menu-sub .ant-menu-item,.ant-menu-vertical-right.ant-menu-sub .ant-menu-item,.ant-menu-vertical.ant-menu-sub .ant-menu-item{left:0;margin-left:0;border-right:0}.ant-menu-vertical-left.ant-menu-sub .ant-menu-item::after,.ant-menu-vertical-right.ant-menu-sub .ant-menu-item::after,.ant-menu-vertical.ant-menu-sub .ant-menu-item::after{border-right:0}.ant-menu-vertical-left.ant-menu-sub>.ant-menu-item,.ant-menu-vertical-left.ant-menu-sub>.ant-menu-submenu,.ant-menu-vertical-right.ant-menu-sub>.ant-menu-item,.ant-menu-vertical-right.ant-menu-sub>.ant-menu-submenu,.ant-menu-vertical.ant-menu-sub>.ant-menu-item,.ant-menu-vertical.ant-menu-sub>.ant-menu-submenu{transform-origin:0 0}.ant-menu-horizontal.ant-menu-sub{min-width:114px}.ant-menu-horizontal .ant-menu-item,.ant-menu-horizontal .ant-menu-submenu-title{transition:border-color .3s,background .3s}.ant-menu-item,.ant-menu-submenu-title{position:relative;display:block;margin:0;padding:0 20px;white-space:nowrap;cursor:pointer;transition:border-color .3s,background .3s,padding .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-item .ant-menu-item-icon,.ant-menu-item .anticon,.ant-menu-submenu-title .ant-menu-item-icon,.ant-menu-submenu-title .anticon{min-width:14px;font-size:14px;transition:font-size .15s cubic-bezier(.215,.61,.355,1),margin .3s cubic-bezier(.645,.045,.355,1),color .3s}.ant-menu-item .ant-menu-item-icon+span,.ant-menu-item .anticon+span,.ant-menu-submenu-title .ant-menu-item-icon+span,.ant-menu-submenu-title .anticon+span{margin-left:10px;opacity:1;transition:opacity .3s cubic-bezier(.645,.045,.355,1),margin .3s,color .3s}.ant-menu-submenu-arrow,.ant-menu-submenu-expand-icon,.ant-menu-submenu>.ant-menu-submenu-title::after{transition:transform .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-item .ant-menu-item-icon.svg,.ant-menu-submenu-title .ant-menu-item-icon.svg{vertical-align:-.125em}.ant-menu-item.ant-menu-item-only-child>.ant-menu-item-icon,.ant-menu-item.ant-menu-item-only-child>.anticon,.ant-menu-submenu-title.ant-menu-item-only-child>.ant-menu-item-icon,.ant-menu-submenu-title.ant-menu-item-only-child>.anticon{margin-right:0}.ant-menu-item:focus-visible,.ant-menu-submenu-title:focus-visible{box-shadow:0 0 0 2px #11263c}.ant-menu>.ant-menu-item-divider{margin:1px 0;padding:0}.ant-menu-submenu-popup{position:absolute;z-index:1050;background:0 0;border-radius:2px;box-shadow:none;transform-origin:0 0}.ant-menu-submenu-popup::before{position:absolute;top:-7px;right:0;bottom:0;left:0;z-index:-1;width:100%;height:100%;opacity:.0001;content:' '}.ant-menu-submenu-placement-rightTop::before{top:0;left:-7px}.ant-menu-submenu>.ant-menu{background-color:#141414;border-radius:2px}.ant-menu-submenu-popup>.ant-menu{background-color:#1f1f1f}.ant-menu-submenu-arrow,.ant-menu-submenu-expand-icon{position:absolute;top:50%;right:16px;width:10px;color:rgba(255,255,255,.85);transform:translateY(-50%)}.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-active,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-open,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-selected,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item:hover,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-active,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-open,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-selected,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu:hover,.ant-menu-submenu:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-submenu:hover>.ant-menu-submenu-title>.ant-menu-submenu-expand-icon,.ant-menu-vertical .ant-menu-submenu-selected,.ant-menu-vertical-left .ant-menu-submenu-selected,.ant-menu-vertical-right .ant-menu-submenu-selected{color:#177ddc}.ant-menu-submenu-arrow::after,.ant-menu-submenu-arrow::before{position:absolute;width:6px;height:1.5px;background-color:currentcolor;border-radius:2px;transition:background .3s cubic-bezier(.645,.045,.355,1),transform .3s cubic-bezier(.645,.045,.355,1),top .3s cubic-bezier(.645,.045,.355,1),color .3s cubic-bezier(.645,.045,.355,1);content:''}.ant-menu-submenu-arrow::before{transform:rotate(45deg) translateY(-2.5px)}.ant-menu-submenu-arrow::after{transform:rotate(-45deg) translateY(2.5px)}.ant-menu-inline-collapsed .ant-menu-submenu-arrow::before,.ant-menu-submenu-inline .ant-menu-submenu-arrow::before{transform:rotate(-45deg) translateX(2.5px)}.ant-menu-inline-collapsed .ant-menu-submenu-arrow::after,.ant-menu-submenu-inline .ant-menu-submenu-arrow::after{transform:rotate(45deg) translateX(-2.5px)}.ant-menu-submenu-open.ant-menu-submenu-inline>.ant-menu-submenu-title>.ant-menu-submenu-arrow{transform:translateY(-2px)}.ant-menu-submenu-open.ant-menu-submenu-inline>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after{transform:rotate(-45deg) translateX(-2.5px)}.ant-menu-submenu-open.ant-menu-submenu-inline>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before{transform:rotate(45deg) translateX(2.5px)}.ant-menu-horizontal{line-height:46px;border:0;border-bottom:1px solid #303030;box-shadow:none}.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu{margin-top:-1px;margin-bottom:0;padding:0 20px}.ant-menu-horizontal>.ant-menu-item a,.ant-menu.ant-menu-inline-collapsed-tooltip a{color:rgba(255,255,255,.85)}.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-active::after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-open::after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-selected::after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item:hover::after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-active::after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-open::after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-selected::after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu:hover::after{border-bottom:2px solid #177ddc}.ant-menu-horizontal>.ant-menu-item,.ant-menu-horizontal>.ant-menu-submenu{position:relative;top:1px;display:inline-block;vertical-align:bottom}.ant-menu-horizontal>.ant-menu-item::after,.ant-menu-horizontal>.ant-menu-submenu::after{position:absolute;right:20px;bottom:0;left:20px;border-bottom:2px solid transparent;transition:border-color .3s cubic-bezier(.645,.045,.355,1);content:''}.ant-menu-horizontal>.ant-menu-submenu>.ant-menu-submenu-title{padding:0}.ant-menu-horizontal>.ant-menu-item a:hover,.ant-menu-horizontal>.ant-menu-item-selected a{color:#177ddc}.ant-menu-horizontal>.ant-menu-item a::before{bottom:-2px}.ant-menu-horizontal::after{display:block;clear:both;height:0;content:'\20'}.ant-menu-inline .ant-menu-item,.ant-menu-vertical .ant-menu-item,.ant-menu-vertical-left .ant-menu-item,.ant-menu-vertical-right .ant-menu-item{position:relative}.ant-menu-inline .ant-menu-item::after,.ant-menu-vertical .ant-menu-item::after,.ant-menu-vertical-left .ant-menu-item::after,.ant-menu-vertical-right .ant-menu-item::after{position:absolute;top:0;right:0;bottom:0;border-right:3px solid #177ddc;transform:scaleY(.0001);opacity:0;transition:transform .15s cubic-bezier(.215,.61,.355,1),opacity .15s cubic-bezier(.215,.61,.355,1);content:''}.ant-menu-inline .ant-menu-item,.ant-menu-inline .ant-menu-submenu-title,.ant-menu-vertical .ant-menu-item,.ant-menu-vertical .ant-menu-submenu-title,.ant-menu-vertical-left .ant-menu-item,.ant-menu-vertical-left .ant-menu-submenu-title,.ant-menu-vertical-right .ant-menu-item,.ant-menu-vertical-right .ant-menu-submenu-title{height:40px;margin-top:4px;margin-bottom:4px;padding:0 16px;overflow:hidden;line-height:40px;text-overflow:ellipsis}.ant-menu-inline .ant-menu-item-group-list .ant-menu-submenu-title,.ant-menu-inline .ant-menu-submenu-title,.ant-menu-vertical .ant-menu-item-group-list .ant-menu-submenu-title,.ant-menu-vertical .ant-menu-submenu-title{padding-right:34px}.ant-menu-inline .ant-menu-submenu,.ant-menu-vertical .ant-menu-submenu,.ant-menu-vertical-left .ant-menu-submenu,.ant-menu-vertical-right .ant-menu-submenu{padding-bottom:.02px}.ant-menu-inline .ant-menu-item:not(:last-child),.ant-menu-vertical .ant-menu-item:not(:last-child),.ant-menu-vertical-left .ant-menu-item:not(:last-child),.ant-menu-vertical-right .ant-menu-item:not(:last-child){margin-bottom:8px}.ant-menu-inline>.ant-menu-item,.ant-menu-inline>.ant-menu-submenu>.ant-menu-submenu-title,.ant-menu-vertical-left>.ant-menu-item,.ant-menu-vertical-left>.ant-menu-submenu>.ant-menu-submenu-title,.ant-menu-vertical-right>.ant-menu-item,.ant-menu-vertical-right>.ant-menu-submenu>.ant-menu-submenu-title,.ant-menu-vertical>.ant-menu-item,.ant-menu-vertical>.ant-menu-submenu>.ant-menu-submenu-title{height:40px;line-height:40px}.ant-menu-inline{width:100%}.ant-menu-inline .ant-menu-item-selected::after,.ant-menu-inline .ant-menu-selected::after{transform:scaleY(1);opacity:1;transition:transform .15s cubic-bezier(.645,.045,.355,1),opacity .15s cubic-bezier(.645,.045,.355,1)}.ant-menu-inline .ant-menu-item,.ant-menu-inline .ant-menu-submenu-title{width:calc(100% + 1px)}.ant-menu-inline.ant-menu-root .ant-menu-item,.ant-menu-inline.ant-menu-root .ant-menu-submenu-title{display:flex;align-items:center;transition:border-color .3s,background .3s,padding .1s cubic-bezier(.215,.61,.355,1)}.ant-menu-inline.ant-menu-root .ant-menu-item>.ant-menu-title-content,.ant-menu-inline.ant-menu-root .ant-menu-submenu-title>.ant-menu-title-content{flex:auto;min-width:0;overflow:hidden;text-overflow:ellipsis}.ant-menu-inline.ant-menu-root .ant-menu-item>*,.ant-menu-inline.ant-menu-root .ant-menu-submenu-title>*{flex:none}.ant-menu.ant-menu-inline-collapsed{width:80px}.ant-menu.ant-menu-inline-collapsed>.ant-menu-item,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title{left:0;padding:0 calc(50% - 16px / 2);text-overflow:clip}.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .ant-menu-submenu-arrow,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .ant-menu-submenu-arrow,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-submenu-arrow{opacity:0}.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .anticon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .anticon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .anticon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .anticon{margin:0;font-size:16px;line-height:40px}.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .ant-menu-item-icon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .anticon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .ant-menu-item-icon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .anticon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-item-icon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .anticon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-item-icon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .anticon+span{display:inline-block;opacity:0}.ant-menu.ant-menu-inline-collapsed .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed .anticon{display:inline-block}.ant-menu.ant-menu-inline-collapsed-tooltip{pointer-events:none}.ant-menu.ant-menu-inline-collapsed-tooltip .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed-tooltip .anticon{display:none}.ant-menu.ant-menu-inline-collapsed .ant-menu-item-group-title{padding-right:4px;padding-left:4px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-menu-item-group-list{margin:0;padding:0}.ant-menu-item-group-list .ant-menu-item,.ant-menu-item-group-list .ant-menu-submenu-title{padding:0 16px 0 28px}.ant-menu-root.ant-menu-inline,.ant-menu-root.ant-menu-vertical,.ant-menu-root.ant-menu-vertical-left,.ant-menu-root.ant-menu-vertical-right{box-shadow:none}.ant-menu-root.ant-menu-inline-collapsed .ant-menu-item>.ant-menu-inline-collapsed-noicon,.ant-menu-root.ant-menu-inline-collapsed .ant-menu-submenu .ant-menu-submenu-title>.ant-menu-inline-collapsed-noicon{font-size:16px;text-align:center}.ant-menu-rtl .ant-menu-item-group-title,.ant-menu-rtl.ant-menu-inline .ant-menu-item,.ant-menu-rtl.ant-menu-inline .ant-menu-submenu-title,.ant-menu-rtl.ant-menu-vertical .ant-menu-item,.ant-menu-rtl.ant-menu-vertical .ant-menu-submenu-title,.ant-menu-rtl.ant-menu-vertical-left .ant-menu-item,.ant-menu-rtl.ant-menu-vertical-left .ant-menu-submenu-title,.ant-menu-rtl.ant-menu-vertical-right .ant-menu-item,.ant-menu-rtl.ant-menu-vertical-right .ant-menu-submenu-title,.ant-menu.ant-menu-rtl{text-align:right}.ant-menu-sub.ant-menu-inline{padding:0;background:rgba(255,255,255,.04);border-radius:0;box-shadow:none}.ant-menu-sub.ant-menu-inline>.ant-menu-item,.ant-menu-sub.ant-menu-inline>.ant-menu-submenu>.ant-menu-submenu-title{height:40px;line-height:40px;list-style-position:inside;list-style-type:disc}.ant-menu-sub.ant-menu-inline .ant-menu-item-group-title{padding-left:32px}.ant-menu-item-disabled,.ant-menu-submenu-disabled{color:rgba(255,255,255,.3)!important;background:0 0;cursor:not-allowed}.ant-menu-item-disabled::after,.ant-menu-submenu-disabled::after{border-color:transparent!important}.ant-menu-item-disabled a,.ant-menu-submenu-disabled a{color:rgba(255,255,255,.3)!important;pointer-events:none}.ant-menu-item-disabled>.ant-menu-submenu-title,.ant-menu-submenu-disabled>.ant-menu-submenu-title{color:rgba(255,255,255,.3)!important;cursor:not-allowed}.ant-menu-item-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-item-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-submenu-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-submenu-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before{background:rgba(255,255,255,.3)!important}.ant-layout-header .ant-menu{line-height:inherit}.ant-menu-inline-collapsed-tooltip a,.ant-menu-inline-collapsed-tooltip a:hover{color:#fff}.ant-menu-light .ant-menu-item-active,.ant-menu-light .ant-menu-item:hover,.ant-menu-light .ant-menu-submenu-active,.ant-menu-light .ant-menu-submenu-title:hover,.ant-menu-light .ant-menu:not(.ant-menu-inline) .ant-menu-submenu-open{color:#177ddc}.ant-menu-dark .ant-menu-item:focus-visible,.ant-menu-dark .ant-menu-submenu-title:focus-visible,.ant-menu.ant-menu-root:focus-visible{box-shadow:0 0 0 2px #388ed3}.ant-menu-dark .ant-menu-sub,.ant-menu.ant-menu-dark,.ant-menu.ant-menu-dark .ant-menu-sub{color:rgba(255,255,255,.65);background:#1f1f1f}.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu.ant-menu-dark .ant-menu-submenu-title .ant-menu-submenu-arrow{opacity:.45;transition:all .3s}.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow::before,.ant-menu.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow::before,.ant-menu.ant-menu-dark .ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu.ant-menu-dark .ant-menu-submenu-title .ant-menu-submenu-arrow::before{background:#fff}.ant-menu-dark.ant-menu-submenu-popup{background:0 0}.ant-menu-dark .ant-menu-inline.ant-menu-sub{background:#141414}.ant-menu-dark.ant-menu-horizontal{border-bottom:0}.ant-menu-dark.ant-menu-horizontal>.ant-menu-item,.ant-menu-dark.ant-menu-horizontal>.ant-menu-submenu{top:0;margin-top:0;padding:0 20px;border-color:#1f1f1f;border-bottom:0}.ant-menu-dark.ant-menu-horizontal>.ant-menu-item:hover{background-color:#177ddc}.ant-menu-dark.ant-menu-horizontal>.ant-menu-item>a::before{bottom:0}.ant-menu-dark .ant-menu-item,.ant-menu-dark .ant-menu-item-group-title,.ant-menu-dark .ant-menu-item>a,.ant-menu-dark .ant-menu-item>span>a{color:rgba(255,255,255,.65)}.ant-menu-dark.ant-menu-inline,.ant-menu-dark.ant-menu-vertical,.ant-menu-dark.ant-menu-vertical-left,.ant-menu-dark.ant-menu-vertical-right{border-right:0}.ant-menu-dark.ant-menu-inline .ant-menu-item,.ant-menu-dark.ant-menu-vertical .ant-menu-item,.ant-menu-dark.ant-menu-vertical-left .ant-menu-item,.ant-menu-dark.ant-menu-vertical-right .ant-menu-item{left:0;margin-left:0;border-right:0}.ant-menu-dark.ant-menu-inline .ant-menu-item::after,.ant-menu-dark.ant-menu-vertical .ant-menu-item::after,.ant-menu-dark.ant-menu-vertical-left .ant-menu-item::after,.ant-menu-dark.ant-menu-vertical-right .ant-menu-item::after{border-right:0}.ant-menu-dark.ant-menu-inline .ant-menu-item,.ant-menu-dark.ant-menu-inline .ant-menu-submenu-title{width:100%}.ant-menu-dark .ant-menu-item-active,.ant-menu-dark .ant-menu-item:hover,.ant-menu-dark .ant-menu-submenu-active,.ant-menu-dark .ant-menu-submenu-open,.ant-menu-dark .ant-menu-submenu-selected,.ant-menu-dark .ant-menu-submenu-title:hover{color:#fff;background-color:transparent}.ant-menu-dark .ant-menu-item-active>a,.ant-menu-dark .ant-menu-item-active>span>a,.ant-menu-dark .ant-menu-item:hover>a,.ant-menu-dark .ant-menu-item:hover>span>a,.ant-menu-dark .ant-menu-submenu-active>a,.ant-menu-dark .ant-menu-submenu-active>span>a,.ant-menu-dark .ant-menu-submenu-open>a,.ant-menu-dark .ant-menu-submenu-open>span>a,.ant-menu-dark .ant-menu-submenu-selected>a,.ant-menu-dark .ant-menu-submenu-selected>span>a,.ant-menu-dark .ant-menu-submenu-title:hover>a,.ant-menu-dark .ant-menu-submenu-title:hover>span>a{color:#fff}.ant-menu-dark .ant-menu-item-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-item:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-open>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-selected>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-title:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow{opacity:1}.ant-menu-dark .ant-menu-item-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-item-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-item:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-item:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-submenu-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-submenu-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-submenu-open>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-submenu-open>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-submenu-selected>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-submenu-selected>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-submenu-title:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-submenu-title:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before{background:#fff}.ant-menu-dark .ant-menu-item:hover{background-color:transparent}.ant-menu-dark.ant-menu-dark:not(.ant-menu-horizontal) .ant-menu-item-selected,.ant-menu-submenu-popup.ant-menu-dark .ant-menu-item-selected,.ant-menu.ant-menu-dark .ant-menu-item-selected{background-color:#177ddc}.ant-menu-dark .ant-menu-item-selected{color:#fff;border-right:0}.ant-menu-dark .ant-menu-item-selected::after{border-right:0}.ant-menu-dark .ant-menu-item-selected .ant-menu-item-icon,.ant-menu-dark .ant-menu-item-selected .ant-menu-item-icon+span,.ant-menu-dark .ant-menu-item-selected .anticon,.ant-menu-dark .ant-menu-item-selected .anticon+span,.ant-menu-dark .ant-menu-item-selected>a,.ant-menu-dark .ant-menu-item-selected>a:hover,.ant-menu-dark .ant-menu-item-selected>span>a,.ant-menu-dark .ant-menu-item-selected>span>a:hover{color:#fff}.ant-menu-dark .ant-menu-item-disabled,.ant-menu-dark .ant-menu-item-disabled>a,.ant-menu-dark .ant-menu-item-disabled>span>a,.ant-menu-dark .ant-menu-submenu-disabled,.ant-menu-dark .ant-menu-submenu-disabled>a,.ant-menu-dark .ant-menu-submenu-disabled>span>a{color:rgba(255,255,255,.3)!important;opacity:.8}.ant-menu-dark .ant-menu-item-disabled>.ant-menu-submenu-title,.ant-menu-dark .ant-menu-submenu-disabled>.ant-menu-submenu-title{color:rgba(255,255,255,.3)!important}.ant-menu-dark .ant-menu-item-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-item-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-submenu-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-submenu-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before{background:rgba(255,255,255,.3)!important}.ant-menu-rtl.ant-menu-inline,.ant-menu-rtl.ant-menu-vertical{border-right:none;border-left:1px solid #303030}.ant-menu-rtl.ant-menu-dark.ant-menu-inline,.ant-menu-rtl.ant-menu-dark.ant-menu-vertical{border-left:none}.ant-menu-rtl.ant-menu-vertical-left.ant-menu-sub>.ant-menu-item,.ant-menu-rtl.ant-menu-vertical-left.ant-menu-sub>.ant-menu-submenu,.ant-menu-rtl.ant-menu-vertical-right.ant-menu-sub>.ant-menu-item,.ant-menu-rtl.ant-menu-vertical-right.ant-menu-sub>.ant-menu-submenu,.ant-menu-rtl.ant-menu-vertical.ant-menu-sub>.ant-menu-item,.ant-menu-rtl.ant-menu-vertical.ant-menu-sub>.ant-menu-submenu{transform-origin:top right}.ant-menu-rtl .ant-menu-item .ant-menu-item-icon,.ant-menu-rtl .ant-menu-item .anticon,.ant-menu-rtl .ant-menu-submenu-title .ant-menu-item-icon,.ant-menu-rtl .ant-menu-submenu-title .anticon{margin-right:auto;margin-left:10px}.ant-menu-rtl .ant-menu-item.ant-menu-item-only-child>.ant-menu-item-icon,.ant-menu-rtl .ant-menu-item.ant-menu-item-only-child>.anticon,.ant-menu-rtl .ant-menu-submenu-title.ant-menu-item-only-child>.ant-menu-item-icon,.ant-menu-rtl .ant-menu-submenu-title.ant-menu-item-only-child>.anticon{margin-left:0}.ant-menu-submenu-rtl.ant-menu-submenu-popup{transform-origin:100% 0}.ant-menu-rtl .ant-menu-submenu-inline>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu-rtl .ant-menu-submenu-vertical-left>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu-rtl .ant-menu-submenu-vertical-right>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu-rtl .ant-menu-submenu-vertical>.ant-menu-submenu-title .ant-menu-submenu-arrow{right:auto;left:16px}.ant-menu-rtl .ant-menu-submenu-vertical-left>.ant-menu-submenu-title .ant-menu-submenu-arrow::before,.ant-menu-rtl .ant-menu-submenu-vertical-right>.ant-menu-submenu-title .ant-menu-submenu-arrow::before,.ant-menu-rtl .ant-menu-submenu-vertical>.ant-menu-submenu-title .ant-menu-submenu-arrow::before{transform:rotate(-45deg) translateY(-2px)}.ant-menu-rtl .ant-menu-submenu-vertical-left>.ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu-rtl .ant-menu-submenu-vertical-right>.ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu-rtl .ant-menu-submenu-vertical>.ant-menu-submenu-title .ant-menu-submenu-arrow::after{transform:rotate(45deg) translateY(2px)}.ant-menu-rtl.ant-menu-inline .ant-menu-item::after,.ant-menu-rtl.ant-menu-vertical .ant-menu-item::after,.ant-menu-rtl.ant-menu-vertical-left .ant-menu-item::after,.ant-menu-rtl.ant-menu-vertical-right .ant-menu-item::after{right:auto;left:0}.ant-menu-rtl.ant-menu-inline .ant-menu-submenu-title{padding-right:0;padding-left:34px}.ant-menu-rtl.ant-menu-vertical .ant-menu-submenu-title{padding-right:16px;padding-left:34px}.ant-menu-rtl.ant-menu-inline-collapsed.ant-menu-vertical .ant-menu-submenu-title{padding:0 calc(50% - 16px / 2)}.ant-menu-rtl .ant-menu-item-group-list .ant-menu-item,.ant-menu-rtl .ant-menu-item-group-list .ant-menu-submenu-title{padding:0 28px 0 16px}.ant-menu-sub.ant-menu-inline{border:0}.ant-menu-rtl.ant-menu-sub.ant-menu-inline .ant-menu-item-group-title{padding-right:32px;padding-left:0}.ant-mentions,.ant-mentions-dropdown{margin:0;padding:0;font-feature-settings:tnum;box-sizing:border-box;list-style:none}.ant-menu-submenu.ant-menu-submenu-placement-bottom{top:6px;position:relative}.ant-menu-submenu.ant-menu-submenu-placement-right{left:4px;position:relative}.ant-menu-submenu.ant-menu-submenu-placement-right.ant-menu-submenu-rtl{left:auto;right:4px}.ant-menu-submenu.ant-menu-submenu-placement-left{right:4px;position:relative}.ant-menu-submenu.ant-menu-submenu-placement-left.ant-menu-submenu-rtl{right:auto;left:4px}.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions,.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:hover{background:0 0;border-color:#a61d24}.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions-focused,.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:focus{border-color:#a61d24;box-shadow:0 0 0 2px rgba(166,29,36,.2);border-right-width:1px;outline:0}.ant-mentions-status-error .ant-input-prefix{color:#a61d24}.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions,.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:hover{background:0 0;border-color:#d89614}.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions-focused,.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:focus{border-color:#d89614;box-shadow:0 0 0 2px rgba(216,150,20,.2);border-right-width:1px;outline:0}.ant-mentions-status-warning .ant-input-prefix{color:#d89614}.ant-mentions{font-variant:tabular-nums;width:100%;min-width:0;color:rgba(255,255,255,.85);font-size:14px;background-color:transparent;background-image:none;border:1px solid #434343;border-radius:2px;transition:all .3s;position:relative;display:inline-block;height:auto;overflow:hidden;line-height:1.5715;white-space:pre-wrap;vertical-align:bottom}.ant-mentions-disabled,.ant-mentions[disabled]{background-color:rgba(255,255,255,.08);opacity:1;color:rgba(255,255,255,.3);pointer-events:none}.ant-mentions::-moz-placeholder{opacity:1}.ant-mentions::placeholder{color:rgba(255,255,255,.3);user-select:none}.ant-mentions:placeholder-shown{text-overflow:ellipsis}.ant-mentions:hover{border-color:#165996;border-right-width:1px}.ant-input-rtl .ant-mentions:hover{border-right-width:0;border-left-width:1px!important}.ant-mentions-focused,.ant-mentions:focus{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-mentions-focused,.ant-input-rtl .ant-mentions:focus{border-right-width:0;border-left-width:1px!important}.ant-mentions-disabled:hover,.ant-mentions[disabled]:hover{border-color:#434343;border-right-width:1px}.ant-mentions-disabled{border-color:#434343;box-shadow:none;cursor:not-allowed}.ant-mentions[disabled]{border-color:#434343;box-shadow:none;cursor:not-allowed}.ant-mentions-borderless,.ant-mentions-borderless-disabled,.ant-mentions-borderless-focused,.ant-mentions-borderless:focus,.ant-mentions-borderless:hover,.ant-mentions-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-mentions{max-width:100%;height:auto;min-height:32px;line-height:1.5715;vertical-align:bottom;transition:all .3s,height 0s}.ant-mentions-lg{padding:6.5px 11px;font-size:16px}.ant-mentions-sm{padding:0 7px}.ant-mentions-stepperless[type=number]{-moz-appearance:textfield}.ant-mentions-stepperless[type=number] ::-webkit-outer-spin-button,.ant-mentions-stepperless[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ant-mentions-disabled>textarea{background-color:rgba(255,255,255,.08);border-color:#434343;box-shadow:none;cursor:not-allowed;opacity:1;pointer-events:none;color:rgba(255,255,255,.3)}.ant-mentions-disabled>textarea:hover{border-color:#434343;border-right-width:1px}.ant-mentions-focused{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-mentions-focused{border-right-width:0;border-left-width:1px!important}.ant-mentions-measure,.ant-mentions>textarea{min-height:30px;margin:0;padding:4px 11px;overflow:inherit;overflow-x:hidden;overflow-y:auto;font-weight:inherit;font-size:inherit;font-family:inherit;font-style:inherit;font-variant:inherit;font-size-adjust:inherit;font-stretch:inherit;line-height:inherit;direction:inherit;letter-spacing:inherit;white-space:inherit;text-align:inherit;vertical-align:top;word-wrap:break-word;word-break:inherit;tab-size:inherit}.ant-mentions-rtl,.ant-message-rtl,.ant-message-rtl span,.ant-modal-wrap-rtl,.ant-modal-wrap-rtl .ant-modal-confirm-body,.ant-notification-rtl,.ant-page-header-rtl,.ant-pagination-options-quick-jumper input-rtl,.ant-popover-rtl,.ant-progress-rtl,.ant-radio-group.ant-radio-group-rtl,.ant-radio-wrapper.ant-radio-wrapper-rtl,.ant-rate-rtl,.ant-segmented.ant-segmented-rtl,.ant-select-dropdown-rtl,.ant-select-rtl,.ant-skeleton-rtl,.ant-slider-rtl,.ant-spin-rtl{direction:rtl}.ant-mentions>textarea{width:100%;border:none;outline:0;resize:none;background-color:transparent}.ant-mentions-dropdown,.ant-message-notice-content{border-radius:2px;box-shadow:0 3px 6px -4px rgba(0,0,0,.48),0 6px 16px 0 rgba(0,0,0,.32),0 9px 28px 8px rgba(0,0,0,.2)}.ant-mentions>textarea::-moz-placeholder{opacity:1}.ant-mentions>textarea::placeholder{color:rgba(255,255,255,.3);user-select:none}.ant-mentions>textarea:placeholder-shown{text-overflow:ellipsis}.ant-mentions-measure{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;color:transparent;pointer-events:none}.ant-mentions-measure>span{display:inline-block;min-height:1em}.ant-mentions-dropdown{color:rgba(255,255,255,.85);line-height:1.5715;z-index:1050;font-size:14px;font-variant:initial;background-color:#1f1f1f;outline:0}.ant-message,.ant-modal,.ant-notification,.ant-page-header,.ant-pagination,.ant-popover,.ant-progress{box-sizing:border-box;font-variant:tabular-nums;font-feature-settings:tnum}.ant-mentions-dropdown-hidden{display:none}.ant-mentions-dropdown-menu{max-height:250px;margin-bottom:0;padding-left:0;overflow:auto;list-style:none;outline:0}.ant-mentions-dropdown-menu-item{position:relative;display:block;min-width:100px;padding:5px 12px;overflow:hidden;color:rgba(255,255,255,.85);font-weight:400;line-height:1.5715;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:background .3s ease}.ant-mentions-dropdown-menu-item:hover{background-color:rgba(255,255,255,.08)}.ant-mentions-dropdown-menu-item:first-child{border-radius:2px 2px 0 0}.ant-mentions-dropdown-menu-item:last-child{border-radius:0 0 2px 2px}.ant-mentions-dropdown-menu-item-disabled{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-mentions-dropdown-menu-item-disabled:hover{color:rgba(255,255,255,.3);background-color:#1f1f1f;cursor:not-allowed}.ant-mentions-dropdown-menu-item-selected{color:rgba(255,255,255,.85);font-weight:600;background-color:rgba(255,255,255,.04)}.ant-mentions-dropdown-menu-item-active{background-color:rgba(255,255,255,.08)}.ant-mentions-suffix{position:absolute;top:0;right:11px;bottom:0;z-index:1;display:inline-flex;align-items:center;margin:auto}.ant-mentions-dropdown{top:100%;left:12px;position:relative;width:100%;margin-top:8px;margin-bottom:4px}.ant-mentions:focus-within{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-mentions:focus-within{border-right-width:0;border-left-width:1px!important}.ant-mentions.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:focus-within{border-color:#a61d24;box-shadow:0 0 0 2px rgba(166,29,36,.2);border-right-width:1px;outline:0}.ant-mentions.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:focus-within{border-color:#d89614;box-shadow:0 0 0 2px rgba(216,150,20,.2);border-right-width:1px;outline:0}.ant-message{margin:0;padding:0;color:rgba(255,255,255,.85);font-size:14px;line-height:1.5715;list-style:none;position:fixed;top:8px;left:0;z-index:1010;width:100%;pointer-events:none}.ant-message-notice{padding:8px;text-align:center}.ant-message-notice-content{display:inline-block;padding:10px 16px;background:#1f1f1f;pointer-events:all}.ant-message-success .anticon{color:#49aa19}.ant-message-error .anticon{color:#a61d24}.ant-message-warning .anticon{color:#d89614}.ant-message-info .anticon,.ant-message-loading .anticon{color:#177ddc}.ant-modal,.ant-modal-title{color:rgba(255,255,255,.85)}.ant-message .anticon{position:relative;top:1px;margin-right:8px;font-size:16px}.ant-message-notice.ant-move-up-leave.ant-move-up-leave-active{animation-name:MessageMoveOut;animation-duration:.3s}@keyframes MessageMoveOut{0%{max-height:150px;padding:8px;opacity:1}100%{max-height:0;padding:0;opacity:0}}.ant-message-rtl .anticon{margin-right:0;margin-left:8px}.ant-modal{padding:0 0 24px;font-size:14px;line-height:1.5715;list-style:none;pointer-events:none;position:relative;top:100px;width:auto;max-width:calc(100vw - 32px);margin:0 auto}.ant-modal.ant-zoom-appear,.ant-modal.ant-zoom-enter{transform:none;opacity:0;animation-duration:.3s;user-select:none}.ant-modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;height:100%;background-color:rgba(0,0,0,.45)}.ant-modal .ant-anchor-wrapper,.ant-modal .ant-card,.ant-modal .ant-collapse-content,.ant-modal .ant-picker-clear,.ant-modal .ant-slider-handle,.ant-modal .ant-timeline-item-head,.ant-modal-content{background-color:#1f1f1f}.ant-modal-mask-hidden{display:none}.ant-modal-wrap{position:fixed;top:0;right:0;bottom:0;left:0;overflow:auto;outline:0;-webkit-overflow-scrolling:touch;z-index:1000}.ant-modal-title{margin:0;font-weight:500;font-size:16px;line-height:22px;word-wrap:break-word}.ant-modal-content{position:relative;background-clip:padding-box;border:0;border-radius:2px;box-shadow:0 3px 6px -4px rgba(0,0,0,.48),0 6px 16px 0 rgba(0,0,0,.32),0 9px 28px 8px rgba(0,0,0,.2);pointer-events:auto}.ant-modal .ant-badge-count,.ant-notification .ant-badge-count{box-shadow:0 0 0 1px #1f1f1f}.ant-modal-close{position:absolute;top:0;right:0;z-index:10;padding:0;color:rgba(255,255,255,.45);font-weight:700;line-height:1;text-decoration:none;background:0 0;border:0;outline:0;cursor:pointer;transition:color .3s}.ant-modal-close-x{display:block;width:56px;height:56px;font-size:16px;font-style:normal;line-height:56px;text-align:center;text-transform:none;text-rendering:auto}.ant-modal-close:focus,.ant-modal-close:hover{color:rgba(255,255,255,.75);text-decoration:none}.ant-modal-header{padding:16px 24px;color:rgba(255,255,255,.85);background:#1f1f1f;border-bottom:1px solid #303030;border-radius:2px 2px 0 0}.ant-modal .ant-table tbody>tr>td,.ant-modal .ant-table tfoot>tr>td,.ant-modal .ant-table tfoot>tr>th,.ant-modal .ant-table thead>tr>th,.ant-modal .ant-table.ant-table-small thead>tr>th,.ant-modal .ant-transfer-list-header{border-bottom:1px solid #3a3a3a}.ant-modal-body{padding:24px;font-size:14px;line-height:1.5715;word-wrap:break-word}.ant-modal-footer{padding:10px 16px;text-align:right;background:0 0;border-top:1px solid #303030;border-radius:0 0 2px 2px}.ant-modal .ant-table .ant-table-row-expand-icon,.ant-modal .ant-table.ant-table-bordered .ant-table-title{border:1px solid #3a3a3a}.ant-modal-footer .ant-btn+.ant-btn:not(.ant-dropdown-trigger){margin-bottom:0;margin-left:8px}.ant-modal-open{overflow:hidden}.ant-modal-centered{text-align:center}.ant-modal-centered::before{display:inline-block;width:0;height:100%;vertical-align:middle;content:''}.ant-modal-centered .ant-modal{top:0;display:inline-block;padding-bottom:0;text-align:left;vertical-align:middle}@media (max-width:767px){.ant-modal{max-width:calc(100vw - 16px);margin:8px auto}.ant-modal-centered .ant-modal{flex:1}}.ant-modal-confirm .ant-modal-header{display:none}.ant-modal-confirm-body-wrapper::after,.ant-modal-confirm-body-wrapper::before{display:table;content:''}.ant-modal-confirm .ant-modal-body{padding:32px 32px 24px}.ant-modal-confirm-body-wrapper::after{clear:both}.ant-modal-confirm-body .ant-modal-confirm-title{display:block;overflow:hidden;color:rgba(255,255,255,.85);font-weight:500;font-size:16px;line-height:1.4}.ant-modal-confirm-body .ant-modal-confirm-content{margin-top:8px;color:rgba(255,255,255,.85);font-size:14px}.ant-modal-confirm-body>.anticon{float:left;margin-right:16px;font-size:22px}.ant-modal-confirm-body>.anticon+.ant-modal-confirm-title+.ant-modal-confirm-content{margin-left:38px}.ant-modal-confirm .ant-modal-confirm-btns{float:right;margin-top:24px}.ant-modal-confirm .ant-modal-confirm-btns .ant-btn+.ant-btn{margin-bottom:0;margin-left:8px}.ant-modal-confirm-error .ant-modal-confirm-body>.anticon{color:#a61d24}.ant-modal-confirm-confirm .ant-modal-confirm-body>.anticon,.ant-modal-confirm-warning .ant-modal-confirm-body>.anticon{color:#d89614}.ant-modal-confirm-info .ant-modal-confirm-body>.anticon{color:#177ddc}.ant-modal-confirm-success .ant-modal-confirm-body>.anticon{color:#49aa19}.ant-modal-wrap-rtl .ant-modal-close{right:initial;left:0}.ant-modal-wrap-rtl .ant-modal-footer{text-align:left}.ant-modal-wrap-rtl .ant-modal-footer .ant-btn+.ant-btn{margin-right:8px;margin-left:0}.ant-modal-wrap-rtl .ant-modal-confirm-body>.anticon{float:right;margin-right:0;margin-left:16px}.ant-modal-wrap-rtl .ant-modal-confirm-body>.anticon+.ant-modal-confirm-title+.ant-modal-confirm-content{margin-right:38px;margin-left:0}.ant-modal-wrap-rtl .ant-modal-confirm-btns{float:left}.ant-modal-wrap-rtl .ant-modal-confirm-btns .ant-btn+.ant-btn{margin-right:8px;margin-left:0}.ant-modal-wrap-rtl.ant-modal-centered .ant-modal{text-align:right}.ant-modal .ant-transfer-list-header{background:#1f1f1f}.ant-modal .ant-transfer-list-content-item:not(.ant-transfer-list-content-item-disabled):hover{background-color:rgba(255,255,255,.08)}.ant-modal tr.ant-table-expanded-row:hover>td,.ant-modal tr.ant-table-expanded-row>td{background:#272727}.ant-modal .ant-table,.ant-modal .ant-table.ant-table-small thead>tr>th{background-color:#1f1f1f}.ant-modal .ant-table thead>tr>th{background-color:#272727}.ant-modal .ant-table tbody>tr>td.ant-table-cell-fix-left,.ant-modal .ant-table tbody>tr>td.ant-table-cell-fix-right{background-color:#1f1f1f}.ant-modal .ant-table tbody>tr.ant-table-row:hover>td{background:#303030}.ant-modal .ant-table.ant-table-bordered table thead>tr:not(:last-child)>th{border-bottom:1px solid #303030}.ant-modal .ant-table.ant-table-bordered .ant-table-container,.ant-modal .ant-table.ant-table-bordered .ant-table-footer{border:1px solid #3a3a3a}.ant-modal .ant-table .ant-table-filter-trigger-container-open{background-color:#525252}.ant-modal .ant-picker-calendar-full,.ant-modal .ant-picker-calendar-full .ant-picker-panel{background-color:#1f1f1f}.ant-modal .ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date{border-top:2px solid #3a3a3a}.ant-modal .ant-tabs.ant-tabs-card .ant-tabs-card-bar .ant-tabs-tab-active{background-color:#1f1f1f;border-bottom:1px solid #1f1f1f}.ant-notification .ant-table .ant-table-row-expand-icon,.ant-notification .ant-table.ant-table-bordered .ant-table-title{border:1px solid #3a3a3a}.ant-modal .ant-tree-show-line .ant-tree-switcher{background:#1f1f1f}.ant-notification .ant-anchor-wrapper,.ant-notification .ant-card,.ant-notification .ant-collapse-content,.ant-notification .ant-picker-clear,.ant-notification .ant-slider-handle,.ant-notification .ant-timeline-item-head{background-color:#1f1f1f}.ant-notification .ant-transfer-list-header{background:#1f1f1f;border-bottom:1px solid #3a3a3a}.ant-notification .ant-transfer-list-content-item:not(.ant-transfer-list-content-item-disabled):hover{background-color:rgba(255,255,255,.08)}.ant-notification tr.ant-table-expanded-row:hover>td,.ant-notification tr.ant-table-expanded-row>td{background:#272727}.ant-notification .ant-table.ant-table-small thead>tr>th{background-color:#1f1f1f;border-bottom:1px solid #3a3a3a}.ant-notification .ant-table{background-color:#1f1f1f}.ant-notification .ant-table tfoot>tr>td,.ant-notification .ant-table tfoot>tr>th{border-bottom:1px solid #3a3a3a}.ant-notification .ant-table thead>tr>th{background-color:#272727;border-bottom:1px solid #3a3a3a}.ant-notification .ant-table tbody>tr>td{border-bottom:1px solid #3a3a3a}.ant-notification .ant-table tbody>tr>td.ant-table-cell-fix-left,.ant-notification .ant-table tbody>tr>td.ant-table-cell-fix-right{background-color:#1f1f1f}.ant-notification .ant-table tbody>tr.ant-table-row:hover>td{background:#303030}.ant-notification .ant-table.ant-table-bordered table thead>tr:not(:last-child)>th{border-bottom:1px solid #303030}.ant-notification .ant-table.ant-table-bordered .ant-table-container,.ant-notification .ant-table.ant-table-bordered .ant-table-footer{border:1px solid #3a3a3a}.ant-notification .ant-table .ant-table-filter-trigger-container-open{background-color:#525252}.ant-notification .ant-picker-calendar-full,.ant-notification .ant-picker-calendar-full .ant-picker-panel{background-color:#1f1f1f}.ant-notification .ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date{border-top:2px solid #3a3a3a}.ant-notification .ant-tabs.ant-tabs-card .ant-tabs-card-bar .ant-tabs-tab-active{background-color:#1f1f1f;border-bottom:1px solid #1f1f1f}.ant-notification .ant-tree-show-line .ant-tree-switcher{background:#1f1f1f}.ant-notification{margin:0 24px 0 0;padding:0;color:rgba(255,255,255,.85);font-size:14px;line-height:1.5715;list-style:none;position:fixed;z-index:1010}.ant-notification-close-icon{font-size:14px;cursor:pointer}.ant-notification-hook-holder{position:relative}.ant-notification-notice{position:relative;width:384px;max-width:calc(100vw - 24px * 2);margin-bottom:16px;margin-left:auto;padding:16px 24px;overflow:hidden;line-height:1.5715;word-wrap:break-word;background:#1f1f1f;border-radius:2px;box-shadow:0 3px 6px -4px rgba(0,0,0,.48),0 6px 16px 0 rgba(0,0,0,.32),0 9px 28px 8px rgba(0,0,0,.2)}.ant-notification-bottom .ant-notification-notice,.ant-notification-top .ant-notification-notice{margin-right:auto;margin-left:auto}.ant-notification-bottomLeft .ant-notification-notice,.ant-notification-topLeft .ant-notification-notice{margin-right:auto;margin-left:0}.ant-notification-notice-message{margin-bottom:8px;color:rgba(255,255,255,.85);font-size:16px;line-height:24px}.ant-notification-notice-message-single-line-auto-margin{display:block;width:calc(384px - 24px * 2 - 24px - 48px - 100%);max-width:4px;background-color:transparent;pointer-events:none}.ant-notification-notice-message-single-line-auto-margin::before{display:block;content:''}.ant-notification-notice-description{font-size:14px}.ant-notification-notice-closable .ant-notification-notice-message{padding-right:24px}.ant-notification-notice-with-icon .ant-notification-notice-message{margin-bottom:4px;margin-left:48px;font-size:16px}.ant-notification-notice-with-icon .ant-notification-notice-description{margin-left:48px;font-size:14px}.ant-notification-notice-icon{position:absolute;margin-left:4px;font-size:24px;line-height:24px}.anticon.ant-notification-notice-icon-success{color:#49aa19}.anticon.ant-notification-notice-icon-info{color:#177ddc}.anticon.ant-notification-notice-icon-warning{color:#d89614}.anticon.ant-notification-notice-icon-error{color:#a61d24}.ant-notification-notice-close{position:absolute;top:16px;right:22px;color:rgba(255,255,255,.45);outline:0}.ant-page-header,.ant-pagination-jump-next .ant-pagination-item-container,.ant-pagination-jump-prev .ant-pagination-item-container{position:relative}.ant-notification-notice-close:hover,.ant-page-header{color:rgba(255,255,255,.85)}.ant-notification-notice-btn{float:right;margin-top:16px}.ant-notification .notification-fade-effect{animation-duration:.24s;animation-timing-function:cubic-bezier(.645,.045,.355,1);animation-fill-mode:both}.ant-notification-fade-appear,.ant-notification-fade-enter{animation-duration:.24s;animation-timing-function:cubic-bezier(.645,.045,.355,1);animation-fill-mode:both;opacity:0;animation-play-state:paused}.ant-notification-fade-leave{animation-timing-function:cubic-bezier(.645,.045,.355,1);animation-fill-mode:both;animation-duration:.2s;animation-play-state:paused}.ant-notification-fade-appear.ant-notification-fade-appear-active,.ant-notification-fade-enter.ant-notification-fade-enter-active{animation-name:NotificationFadeIn;animation-play-state:running}.ant-notification-fade-leave.ant-notification-fade-leave-active{animation-name:NotificationFadeOut;animation-play-state:running}@keyframes NotificationFadeIn{0%{left:384px;opacity:0}100%{left:0;opacity:1}}@keyframes NotificationFadeOut{0%{max-height:150px;margin-bottom:16px;opacity:1}100%{max-height:0;margin-bottom:0;padding-top:0;padding-bottom:0;opacity:0}}.ant-notification-rtl .ant-notification-notice-closable .ant-notification-notice-message{padding-right:0;padding-left:24px}.ant-notification-rtl .ant-notification-notice-with-icon .ant-notification-notice-description,.ant-notification-rtl .ant-notification-notice-with-icon .ant-notification-notice-message{margin-right:48px;margin-left:0}.ant-notification-rtl .ant-notification-notice-icon{margin-right:4px;margin-left:0}.ant-notification-rtl .ant-notification-notice-close{right:auto;left:22px}.ant-notification-rtl .ant-notification-notice-btn{float:left}.ant-notification-bottom,.ant-notification-top{margin-right:0;margin-left:0}.ant-notification-top .ant-notification-fade-appear.ant-notification-fade-appear-active,.ant-notification-top .ant-notification-fade-enter.ant-notification-fade-enter-active{animation-name:NotificationTopFadeIn}.ant-notification-bottom .ant-notification-fade-appear.ant-notification-fade-appear-active,.ant-notification-bottom .ant-notification-fade-enter.ant-notification-fade-enter-active{animation-name:NotificationBottomFadeIn}.ant-notification-bottomLeft,.ant-notification-topLeft{margin-right:0;margin-left:24px}.ant-notification-bottomLeft .ant-notification-fade-appear.ant-notification-fade-appear-active,.ant-notification-bottomLeft .ant-notification-fade-enter.ant-notification-fade-enter-active,.ant-notification-topLeft .ant-notification-fade-appear.ant-notification-fade-appear-active,.ant-notification-topLeft .ant-notification-fade-enter.ant-notification-fade-enter-active{animation-name:NotificationLeftFadeIn}@keyframes NotificationTopFadeIn{0%{margin-top:-100%;opacity:0}100%{margin-top:0;opacity:1}}@keyframes NotificationBottomFadeIn{0%{margin-bottom:-100%;opacity:0}100%{margin-bottom:0;opacity:1}}@keyframes NotificationLeftFadeIn{0%{right:384px;opacity:0}100%{right:0;opacity:1}}.ant-page-header{margin:0;font-size:14px;line-height:1.5715;list-style:none;padding:16px 24px;background-color:#141414}.ant-page-header-content,.ant-page-header.has-breadcrumb{padding-top:12px}.ant-page-header-ghost{background-color:transparent}.ant-page-header.has-footer{padding-bottom:0}.ant-page-header-back{margin-right:16px;font-size:16px;line-height:1}.ant-page-header-back-button{text-decoration:none;outline:0;transition:color .3s;color:inherit;cursor:pointer}.ant-page-header-back-button:focus,.ant-page-header-back-button:hover{color:#165996}.ant-page-header-back-button:active{color:#388ed3}.ant-page-header .ant-divider-vertical{height:14px;margin:0 12px;vertical-align:middle}.ant-breadcrumb+.ant-page-header-heading{margin-top:8px}.ant-page-header-heading{display:flex;justify-content:space-between}.ant-page-header-heading-left{display:flex;align-items:center;margin:4px 0;overflow:hidden}.ant-page-header-heading-title{margin-right:12px;margin-bottom:0;color:rgba(255,255,255,.85);font-weight:600;font-size:20px;line-height:32px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-page-header-heading .ant-avatar{margin-right:12px}.ant-page-header-heading-sub-title{margin-right:12px;color:rgba(255,255,255,.45);font-size:14px;line-height:1.5715;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-page-header-heading-extra{margin:4px 0;white-space:nowrap}.ant-page-header-heading-extra>*{white-space:unset}.ant-page-header-footer{margin-top:16px}.ant-page-header-footer .ant-tabs>.ant-tabs-nav{margin:0}.ant-page-header-footer .ant-tabs>.ant-tabs-nav::before{border:none}.ant-page-header-footer .ant-tabs .ant-tabs-tab{padding-top:8px;padding-bottom:8px;font-size:16px}.ant-page-header-compact .ant-page-header-heading{flex-wrap:wrap}.ant-page-header-rtl .ant-page-header-back{float:right;margin-right:0;margin-left:16px}.ant-page-header-rtl .ant-page-header-heading .ant-avatar,.ant-page-header-rtl .ant-page-header-heading-title{margin-right:0;margin-left:12px}.ant-page-header-rtl .ant-page-header-heading-sub-title{float:right;margin-right:0;margin-left:12px}.ant-page-header-rtl .ant-page-header-heading-tags{float:right}.ant-page-header-rtl .ant-page-header-heading-extra{float:left}.ant-page-header-rtl .ant-page-header-heading-extra>*{margin-right:12px;margin-left:0}.ant-pagination,.ant-pagination ol,.ant-pagination ul{margin:0;padding:0;list-style:none}.ant-page-header-rtl .ant-page-header-heading-extra>:first-child{margin-right:0}.ant-page-header-rtl .ant-page-header-footer .ant-tabs-bar .ant-tabs-nav{float:right}.ant-page-header-back-button{border:0;background:0 0;padding:0;line-height:inherit;display:inline-block}nz-page-header,nz-page-header-content,nz-page-header-footer{display:block}.ant-pagination{color:rgba(255,255,255,.85);font-size:14px;line-height:1.5715}.ant-pagination::after{display:block;clear:both;height:0;overflow:hidden;visibility:hidden;content:' '}.ant-pagination-item,.ant-pagination-total-text{display:inline-block;margin-right:8px;vertical-align:middle;line-height:30px}.ant-pagination-total-text{height:32px}.ant-pagination-item{min-width:32px;height:32px;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,'Noto Sans',sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji';text-align:center;list-style:none;background-color:transparent;border:1px solid #434343;border-radius:2px;outline:0;cursor:pointer;user-select:none}.ant-pagination-item a{display:block;padding:0 6px;color:rgba(255,255,255,.85);transition:none}.ant-pagination-item-active a,.ant-pagination-item:focus-visible a,.ant-pagination-item:hover a{color:#177ddc}.ant-pagination-item:focus-visible,.ant-pagination-item:hover{transition:all .3s;border-color:#177ddc}.ant-pagination-item a:hover{text-decoration:none}.ant-pagination-item-active{font-weight:500;background:0 0;border-color:#177ddc}.ant-pagination-item-active:focus-visible,.ant-pagination-item-active:hover,.ant-pagination-next:hover button,.ant-pagination-prev:hover button{border-color:#165996}.ant-pagination-item-active:focus-visible a,.ant-pagination-item-active:hover a{color:#165996}.ant-pagination-jump-next,.ant-pagination-jump-prev{outline:0}.ant-pagination-jump-next .ant-pagination-item-container .ant-pagination-item-link-icon,.ant-pagination-jump-prev .ant-pagination-item-container .ant-pagination-item-link-icon{color:#177ddc;font-size:12px;letter-spacing:-1px;opacity:0;transition:all .2s}.ant-pagination-jump-next .ant-pagination-item-container .ant-pagination-item-link-icon-svg,.ant-pagination-jump-prev .ant-pagination-item-container .ant-pagination-item-link-icon-svg{top:0;right:0;bottom:0;left:0;margin:auto}.ant-pagination-jump-next .ant-pagination-item-container .ant-pagination-item-ellipsis,.ant-pagination-jump-prev .ant-pagination-item-container .ant-pagination-item-ellipsis{position:absolute;top:0;right:0;bottom:0;left:0;display:block;margin:auto;color:rgba(255,255,255,.3);font-family:Arial,Helvetica,sans-serif;letter-spacing:2px;text-align:center;text-indent:.13em;opacity:1;transition:all .2s}.ant-pagination-jump-next,.ant-pagination-jump-prev,.ant-pagination-next,.ant-pagination-prev,.ant-select-multiple .ant-select-selection-search-input,.ant-select-multiple .ant-select-selection-search-mirror,.ant-statistic-content,.ant-steps-item-icon{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,'Noto Sans',sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji'}.ant-pagination-jump-next:hover .ant-pagination-item-link-icon,.ant-pagination-jump-prev:hover .ant-pagination-item-link-icon{opacity:1}.ant-pagination-jump-next:hover .ant-pagination-item-ellipsis,.ant-pagination-jump-prev:hover .ant-pagination-item-ellipsis{opacity:0}.ant-pagination-jump-next:focus-visible .ant-pagination-item-link-icon,.ant-pagination-jump-prev:focus-visible .ant-pagination-item-link-icon{opacity:1}.ant-pagination-jump-next:focus-visible .ant-pagination-item-ellipsis,.ant-pagination-jump-prev:focus-visible .ant-pagination-item-ellipsis,.ant-pagination.ant-pagination-disabled .ant-pagination-item-link-icon{opacity:0}.ant-pagination-jump-next,.ant-pagination-jump-prev,.ant-pagination-prev{margin-right:8px}.ant-pagination-jump-next,.ant-pagination-jump-prev,.ant-pagination-next,.ant-pagination-prev{display:inline-block;min-width:32px;height:32px;color:rgba(255,255,255,.85);line-height:32px;text-align:center;vertical-align:middle;list-style:none;border-radius:2px;cursor:pointer;transition:all .3s}.ant-pagination-next,.ant-pagination-prev{font-family:Arial,Helvetica,sans-serif;outline:0}.ant-pagination-next button,.ant-pagination-prev button{color:rgba(255,255,255,.85);cursor:pointer;user-select:none}.ant-pagination-next .ant-pagination-item-link,.ant-pagination-prev .ant-pagination-item-link{display:block;width:100%;height:100%;padding:0;font-size:12px;text-align:center;background-color:transparent;border:1px solid #434343;border-radius:2px;outline:0;transition:all .3s}.ant-pagination-next:focus-visible .ant-pagination-item-link,.ant-pagination-next:hover .ant-pagination-item-link,.ant-pagination-prev:focus-visible .ant-pagination-item-link,.ant-pagination-prev:hover .ant-pagination-item-link{color:#177ddc;border-color:#177ddc}.ant-pagination-disabled .ant-pagination-item-link,.ant-pagination-disabled:focus-visible .ant-pagination-item-link,.ant-pagination-disabled:hover .ant-pagination-item-link{color:rgba(255,255,255,.3);border-color:#434343;cursor:not-allowed}.ant-pagination-disabled,.ant-pagination-disabled:hover{cursor:not-allowed}.ant-pagination-disabled:focus-visible{cursor:not-allowed}.ant-pagination-slash{margin:0 10px 0 5px}.ant-pagination-options{display:inline-block;margin-left:16px;vertical-align:middle}@media all and (-ms-high-contrast:none){.ant-pagination-options,.ant-pagination-options ::-ms-backdrop{vertical-align:top}}.ant-pagination-options-size-changer.ant-select{display:inline-block;width:auto}.ant-pagination-options-quick-jumper{display:inline-block;height:32px;margin-left:8px;line-height:32px;vertical-align:top}.ant-pagination-options-quick-jumper input{position:relative;display:inline-block;min-width:0;padding:4px 11px;color:rgba(255,255,255,.85);font-size:14px;line-height:1.5715;background-color:transparent;background-image:none;border:1px solid #434343;border-radius:2px;transition:all .3s;width:50px;height:32px;margin:0 8px}.ant-pagination-options-quick-jumper input-disabled,.ant-pagination-options-quick-jumper input[disabled]{background-color:rgba(255,255,255,.08);opacity:1;color:rgba(255,255,255,.3);cursor:not-allowed;pointer-events:none}.ant-pagination-options-quick-jumper input::-moz-placeholder{opacity:1}.ant-pagination-options-quick-jumper input::placeholder{color:rgba(255,255,255,.3);user-select:none}.ant-pagination-options-quick-jumper input:placeholder-shown{text-overflow:ellipsis}.ant-pagination-options-quick-jumper input:hover{border-color:#165996;border-right-width:1px}.ant-input-rtl .ant-pagination-options-quick-jumper input:hover{border-right-width:0;border-left-width:1px!important}.ant-pagination-options-quick-jumper input-focused,.ant-pagination-options-quick-jumper input:focus{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-pagination-options-quick-jumper input-focused,.ant-input-rtl .ant-pagination-options-quick-jumper input:focus{border-right-width:0;border-left-width:1px!important}.ant-pagination-options-quick-jumper input-disabled:hover,.ant-pagination-options-quick-jumper input[disabled]:hover{border-color:#434343;border-right-width:1px}.ant-pagination-options-quick-jumper input-disabled{border-color:#434343;box-shadow:none}.ant-pagination-options-quick-jumper input[disabled]{border-color:#434343;box-shadow:none}.ant-pagination-options-quick-jumper input-borderless,.ant-pagination-options-quick-jumper input-borderless-disabled,.ant-pagination-options-quick-jumper input-borderless-focused,.ant-pagination-options-quick-jumper input-borderless:focus,.ant-pagination-options-quick-jumper input-borderless:hover,.ant-pagination-options-quick-jumper input-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-pagination-options-quick-jumper input{max-width:100%;height:auto;min-height:32px;line-height:1.5715;vertical-align:bottom;transition:all .3s,height 0s}.ant-pagination-options-quick-jumper input-lg{padding:6.5px 11px;font-size:16px}.ant-pagination-options-quick-jumper input-sm{padding:0 7px}.ant-pagination-options-quick-jumper input-stepperless[type=number]{-moz-appearance:textfield}.ant-pagination-options-quick-jumper input-stepperless[type=number] ::-webkit-outer-spin-button,.ant-pagination-options-quick-jumper input-stepperless[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ant-pagination-simple .ant-pagination-next,.ant-pagination-simple .ant-pagination-prev{height:24px;line-height:24px;vertical-align:top}.ant-pagination-simple .ant-pagination-next .ant-pagination-item-link,.ant-pagination-simple .ant-pagination-prev .ant-pagination-item-link{height:24px;background-color:transparent;border:0}.ant-pagination-simple .ant-pagination-next .ant-pagination-item-link::after,.ant-pagination-simple .ant-pagination-prev .ant-pagination-item-link::after{height:24px;line-height:24px}.ant-pagination-simple .ant-pagination-simple-pager{display:inline-block;height:24px;margin-right:8px}.ant-pagination-simple .ant-pagination-simple-pager input{box-sizing:border-box;height:100%;margin-right:8px;padding:0 6px;text-align:center;background-color:transparent;border:1px solid #434343;border-radius:2px;outline:0;transition:border-color .3s}.ant-pagination-simple .ant-pagination-simple-pager input:hover{border-color:#177ddc}.ant-pagination-simple .ant-pagination-simple-pager input:focus{border-color:#3c9be8;box-shadow:0 0 0 2px rgba(23,125,220,.2)}.ant-pagination-simple .ant-pagination-simple-pager input[disabled]{color:rgba(255,255,255,.3);background:rgba(255,255,255,.08);border-color:#434343;cursor:not-allowed}.ant-pagination.mini .ant-pagination-item:not(.ant-pagination-item-active),.ant-pagination.mini .ant-pagination-next .ant-pagination-item-link,.ant-pagination.mini .ant-pagination-prev .ant-pagination-item-link{background:0 0;border-color:transparent}.ant-pagination.mini .ant-pagination-simple-pager,.ant-pagination.mini .ant-pagination-total-text{height:24px;line-height:24px}.ant-pagination.mini .ant-pagination-item{min-width:24px;height:24px;margin:0;line-height:22px}.ant-pagination.mini .ant-pagination-next,.ant-pagination.mini .ant-pagination-prev{min-width:24px;height:24px;margin:0;line-height:24px}.ant-pagination.mini .ant-pagination-next .ant-pagination-item-link::after,.ant-pagination.mini .ant-pagination-prev .ant-pagination-item-link::after{height:24px;line-height:24px}.ant-pagination.mini .ant-pagination-jump-next,.ant-pagination.mini .ant-pagination-jump-prev{height:24px;margin-right:0;line-height:24px}.ant-pagination.mini .ant-pagination-options{margin-left:2px}.ant-pagination.mini .ant-pagination-options-size-changer{top:0}.ant-pagination.mini .ant-pagination-options-quick-jumper{height:24px;line-height:24px}.ant-pagination.mini .ant-pagination-options-quick-jumper input{padding:0 7px;width:44px;height:24px}.ant-pagination.ant-pagination-disabled{cursor:not-allowed}.ant-pagination.ant-pagination-disabled .ant-pagination-item{background:rgba(255,255,255,.08);border-color:#434343;cursor:not-allowed}.ant-pagination.ant-pagination-disabled .ant-pagination-item a{color:rgba(255,255,255,.3);background:0 0;border:none;cursor:not-allowed}.ant-pagination.ant-pagination-disabled .ant-pagination-item-active{background:rgba(255,255,255,.25)}.ant-pagination.ant-pagination-disabled .ant-pagination-item-active a{color:#000}.ant-pagination.ant-pagination-disabled .ant-pagination-item-link{color:rgba(255,255,255,.3);background:rgba(255,255,255,.08);border-color:#434343;cursor:not-allowed}.ant-pagination-simple.ant-pagination.ant-pagination-disabled .ant-pagination-item-link{background:0 0}.ant-pagination.ant-pagination-disabled .ant-pagination-item-ellipsis{opacity:1}.ant-pagination.ant-pagination-disabled .ant-pagination-simple-pager{color:rgba(255,255,255,.3)}@media only screen and (max-width:992px){.ant-pagination-item-after-jump-prev,.ant-pagination-item-before-jump-next{display:none}}@media only screen and (max-width:576px){.ant-pagination-options{display:none}}.ant-pagination-rtl .ant-pagination-item,.ant-pagination-rtl .ant-pagination-jump-next,.ant-pagination-rtl .ant-pagination-jump-prev,.ant-pagination-rtl .ant-pagination-prev,.ant-pagination-rtl .ant-pagination-total-text{margin-right:0;margin-left:8px}.ant-pagination-rtl .ant-pagination-slash{margin:0 5px 0 10px}.ant-pagination-rtl .ant-pagination-options{margin-right:16px;margin-left:0}.ant-pagination-rtl .ant-pagination-options .ant-pagination-options-size-changer.ant-select{margin-right:0;margin-left:8px}.ant-pagination-rtl .ant-pagination-options .ant-pagination-options-quick-jumper{margin-left:0}.ant-pagination-rtl.ant-pagination-simple .ant-pagination-simple-pager,.ant-pagination-rtl.ant-pagination-simple .ant-pagination-simple-pager input{margin-right:0;margin-left:8px}.ant-pagination-rtl.ant-pagination.mini .ant-pagination-options{margin-right:2px;margin-left:0}.ant-popover,.ant-popover-title{margin:0;color:rgba(255,255,255,.85)}nz-pagination{display:block}.ant-popover-hidden,.ant-radio+span:empty{display:none}.ant-popover{padding:0;font-size:14px;line-height:1.5715;list-style:none;top:0;left:0;z-index:1030;font-weight:400;white-space:normal;text-align:left;cursor:auto;user-select:text}.ant-popover::after{position:absolute;background:rgba(255,255,255,.01);content:''}.ant-popover-placement-top,.ant-popover-placement-topLeft,.ant-popover-placement-topRight{padding-bottom:15.31px}.ant-popover-placement-right,.ant-popover-placement-rightBottom,.ant-popover-placement-rightTop{padding-left:15.31px}.ant-popover-placement-bottom,.ant-popover-placement-bottomLeft,.ant-popover-placement-bottomRight{padding-top:15.31px}.ant-popover-placement-left,.ant-popover-placement-leftBottom,.ant-popover-placement-leftTop{padding-right:15.31px}.ant-popover-inner{background-color:#1f1f1f;background-clip:padding-box;border-radius:2px;box-shadow:0 3px 6px -4px rgba(0,0,0,.48),0 6px 16px 0 rgba(0,0,0,.32),0 9px 28px 8px rgba(0,0,0,.2);box-shadow:0 0 8px rgba(0,0,0,.45)\9}@media screen and (-ms-high-contrast:active),(-ms-high-contrast:none){.ant-popover-inner{box-shadow:0 3px 6px -4px rgba(0,0,0,.48),0 6px 16px 0 rgba(0,0,0,.32),0 9px 28px 8px rgba(0,0,0,.2)}}.ant-popover-title{min-width:177px;min-height:32px;padding:5px 16px 4px;font-weight:500;border-bottom:1px solid #303030}.ant-popover-inner-content{padding:12px 16px;color:rgba(255,255,255,.85)}.ant-popover-message{position:relative;padding:4px 0 12px;color:rgba(255,255,255,.85);font-size:14px}.ant-popover-message>.anticon{position:absolute;top:8px;color:#d89614;font-size:14px}.ant-popover-message-title{padding-left:22px}.ant-popover-buttons{margin-bottom:4px;text-align:right}.ant-popover-buttons button{margin-left:8px}.ant-popover-arrow{position:absolute;display:block;width:16px;height:16px;overflow:hidden;background:0 0;pointer-events:none}.ant-popover-arrow-content{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:11.31px;height:11.31px;margin:auto;background-color:#1f1f1f;content:'';border-radius:0 0 2px;pointer-events:none}.ant-popover-arrow-content::before{position:absolute;top:-11.31px;left:-11.31px;width:33.94px;height:33.94px;background:-10px -10px no-repeat #1f1f1f;content:'';clip-path:path('M 9.849242404917499 24.091883092036785 A 5 5 0 0 1 13.384776310850237 22.627416997969522 L 20.627416997969522 22.627416997969522 A 2 2 0 0 0 22.627416997969522 20.627416997969522 L 22.627416997969522 13.384776310850237 A 5 5 0 0 1 24.091883092036785 9.849242404917499 L 23.091883092036785 9.849242404917499 L 9.849242404917499 23.091883092036785 Z')}.ant-popover-magenta .ant-popover-arrow-content,.ant-popover-magenta .ant-popover-inner,.ant-popover-pink .ant-popover-arrow-content,.ant-popover-pink .ant-popover-inner,.ant-tooltip-magenta .ant-tooltip-inner,.ant-tooltip-pink .ant-tooltip-inner{background-color:#cb2b83}.ant-popover-placement-top .ant-popover-arrow,.ant-popover-placement-topLeft .ant-popover-arrow,.ant-popover-placement-topRight .ant-popover-arrow{bottom:-.69px}.ant-popover-placement-leftBottom .ant-popover-arrow,.ant-popover-placement-rightBottom .ant-popover-arrow{bottom:12px}.ant-popover-placement-top .ant-popover-arrow-content,.ant-popover-placement-topLeft .ant-popover-arrow-content,.ant-popover-placement-topRight .ant-popover-arrow-content{box-shadow:3px 3px 7px rgba(0,0,0,.07);transform:translateY(-8px) rotate(45deg)}.ant-popover-placement-top .ant-popover-arrow{left:50%;transform:translateX(-50%)}.ant-popover-placement-topLeft .ant-popover-arrow{left:16px}.ant-popover-placement-topRight .ant-popover-arrow{right:16px}.ant-popover-placement-right .ant-popover-arrow,.ant-popover-placement-rightBottom .ant-popover-arrow,.ant-popover-placement-rightTop .ant-popover-arrow{left:-.69px}.ant-popover-placement-right .ant-popover-arrow-content,.ant-popover-placement-rightBottom .ant-popover-arrow-content,.ant-popover-placement-rightTop .ant-popover-arrow-content{box-shadow:3px 3px 7px rgba(0,0,0,.07);transform:translateX(8px) rotate(135deg)}.ant-popover-placement-right .ant-popover-arrow{top:50%;transform:translateY(-50%)}.ant-popover-placement-rightTop .ant-popover-arrow{top:12px}.ant-popover-placement-bottom .ant-popover-arrow,.ant-popover-placement-bottomLeft .ant-popover-arrow,.ant-popover-placement-bottomRight .ant-popover-arrow{top:-.69px}.ant-popover-placement-bottom .ant-popover-arrow-content,.ant-popover-placement-bottomLeft .ant-popover-arrow-content,.ant-popover-placement-bottomRight .ant-popover-arrow-content{box-shadow:2px 2px 5px rgba(0,0,0,.06);transform:translateY(8px) rotate(-135deg)}.ant-popover-placement-bottom .ant-popover-arrow{left:50%;transform:translateX(-50%)}.ant-popover-placement-bottomLeft .ant-popover-arrow{left:16px}.ant-popover-placement-bottomRight .ant-popover-arrow{right:16px}.ant-popover-placement-left .ant-popover-arrow,.ant-popover-placement-leftBottom .ant-popover-arrow,.ant-popover-placement-leftTop .ant-popover-arrow{right:-.69px}.ant-popover-placement-left .ant-popover-arrow-content,.ant-popover-placement-leftBottom .ant-popover-arrow-content,.ant-popover-placement-leftTop .ant-popover-arrow-content{box-shadow:3px 3px 7px rgba(0,0,0,.07);transform:translateX(-8px) rotate(-45deg)}.ant-popover-placement-left .ant-popover-arrow{top:50%;transform:translateY(-50%)}.ant-popover-placement-leftTop .ant-popover-arrow{top:12px}.ant-popover-red .ant-popover-arrow-content,.ant-popover-red .ant-popover-inner{background-color:#d32029}.ant-popover-volcano .ant-popover-arrow-content,.ant-popover-volcano .ant-popover-inner{background-color:#d84a1b}.ant-popover-orange .ant-popover-arrow-content,.ant-popover-orange .ant-popover-inner{background-color:#d87a16}.ant-popover-yellow .ant-popover-arrow-content,.ant-popover-yellow .ant-popover-inner{background-color:#d8bd14}.ant-popover-gold .ant-popover-arrow-content,.ant-popover-gold .ant-popover-inner{background-color:#d89614}.ant-popover-cyan .ant-popover-arrow-content,.ant-popover-cyan .ant-popover-inner{background-color:#13a8a8}.ant-popover-lime .ant-popover-arrow-content,.ant-popover-lime .ant-popover-inner{background-color:#8bbb11}.ant-popover-green .ant-popover-arrow-content,.ant-popover-green .ant-popover-inner{background-color:#49aa19}.ant-popover-blue .ant-popover-arrow-content,.ant-popover-blue .ant-popover-inner{background-color:#177ddc}.ant-popover-geekblue .ant-popover-arrow-content,.ant-popover-geekblue .ant-popover-inner{background-color:#2b4acb}.ant-popover-purple .ant-popover-arrow-content,.ant-popover-purple .ant-popover-inner{background-color:#642ab5}.ant-popover-rtl{text-align:right}.ant-popover-rtl .ant-popover-message-title{padding-right:22px;padding-left:16px}.ant-popover-rtl .ant-popover-buttons{text-align:left}.ant-popover-rtl .ant-popover-buttons button{margin-right:8px;margin-left:0}.ant-popover{position:relative}.ant-progress{margin:0;padding:0;color:rgba(255,255,255,.85);font-size:14px;line-height:1.5715;list-style:none;display:inline-block}.ant-progress-line{position:relative;width:100%;font-size:14px}.ant-progress-steps{display:inline-block}.ant-progress-steps-outer{display:flex;flex-direction:row;align-items:center}.ant-progress-steps-item{flex-shrink:0;min-width:2px;margin-right:2px;background:rgba(255,255,255,.08);transition:all .3s}.ant-progress-steps-item-active{background:#177ddc}.ant-progress-small.ant-progress-line,.ant-progress-small.ant-progress-line .ant-progress-text .anticon{font-size:12px}.ant-progress-outer{display:inline-block;width:100%;margin-right:0;padding-right:0}.ant-progress-show-info .ant-progress-outer{margin-right:calc(-2em - 8px);padding-right:calc(2em + 8px)}.ant-progress-inner{position:relative;display:inline-block;width:100%;overflow:hidden;vertical-align:middle;background-color:rgba(255,255,255,.08);border-radius:100px}.ant-progress-circle-trail{stroke:rgba(255,255,255,.08)}.ant-progress-circle-path{animation:ant-progress-appear .3s}.ant-progress-inner:not(.ant-progress-circle-gradient) .ant-progress-circle-path{stroke:#177ddc}.ant-progress-bg,.ant-progress-success-bg{position:relative;background-color:#177ddc;border-radius:100px;transition:all .4s cubic-bezier(.08,.82,.17,1) 0s}.ant-progress-success-bg{position:absolute;top:0;left:0;background-color:#49aa19}.ant-progress-text{display:inline-block;width:2em;margin-left:8px;color:rgba(255,255,255,.85);font-size:1em;line-height:1;white-space:nowrap;text-align:left;vertical-align:middle;word-break:normal}.ant-progress-text .anticon{font-size:14px}.ant-progress-status-active .ant-progress-bg::before{position:absolute;top:0;right:0;bottom:0;left:0;background:#141414;border-radius:10px;opacity:0;animation:ant-progress-active 2.4s cubic-bezier(.23,1,.32,1) infinite;content:''}.ant-progress-status-exception .ant-progress-bg{background-color:#a61d24}.ant-progress-status-exception .ant-progress-text{color:#a61d24}.ant-progress-status-exception .ant-progress-inner:not(.ant-progress-circle-gradient) .ant-progress-circle-path{stroke:#a61d24}.ant-progress-status-success .ant-progress-bg{background-color:#49aa19}.ant-progress-status-success .ant-progress-text{color:#49aa19}.ant-progress-status-success .ant-progress-inner:not(.ant-progress-circle-gradient) .ant-progress-circle-path{stroke:#49aa19}.ant-progress-circle .ant-progress-inner{position:relative;line-height:1;background-color:transparent}.ant-progress-circle .ant-progress-text{position:absolute;top:50%;left:50%;width:100%;margin:0;padding:0;color:rgba(255,255,255,.85);font-size:1em;line-height:1;white-space:normal;text-align:center;transform:translate(-50%,-50%)}.ant-radio,.ant-radio-wrapper{position:relative;font-size:14px}.ant-progress-circle .ant-progress-text .anticon{font-size:1.16666667em}.ant-progress-circle.ant-progress-status-exception .ant-progress-text{color:#a61d24}.ant-progress-circle.ant-progress-status-success .ant-progress-text{color:#49aa19}@keyframes ant-progress-active{0%{transform:translateX(-100%) scaleX(0);opacity:.1}20%{transform:translateX(-100%) scaleX(0);opacity:.5}100%{transform:translateX(0) scaleX(1);opacity:0}}.ant-progress-rtl.ant-progress-show-info .ant-progress-outer{margin-right:0;margin-left:calc(-2em - 8px);padding-right:0;padding-left:calc(2em + 8px)}.ant-radio,.ant-radio-group,.ant-radio-wrapper{box-sizing:border-box;padding:0;color:rgba(255,255,255,.85);line-height:1.5715;font-variant:tabular-nums;font-feature-settings:tnum}.ant-progress-rtl .ant-progress-success-bg{right:0;left:auto}.ant-progress-rtl.ant-progress-line .ant-progress-text,.ant-progress-rtl.ant-progress-steps .ant-progress-text{margin-right:8px;margin-left:0;text-align:right}.ant-radio-group{margin:0;list-style:none;display:inline-block;font-size:0}.ant-radio-group .ant-badge-count{z-index:1}.ant-radio-group>.ant-badge:not(:first-child)>.ant-radio-button-wrapper{border-left:none}.ant-radio-wrapper{margin:0 8px 0 0;list-style:none;display:inline-flex;align-items:baseline;cursor:pointer}.ant-radio-wrapper-disabled{cursor:not-allowed}.ant-radio-wrapper::after{display:inline-block;width:0;overflow:hidden;content:'\a0'}.ant-radio-wrapper.ant-radio-wrapper-in-form-item input[type=radio]{width:14px;height:14px}.ant-radio{margin:0;list-style:none;top:.2em;display:inline-block;outline:0;cursor:pointer}.ant-radio-input:focus+.ant-radio-inner,.ant-radio-wrapper:hover .ant-radio,.ant-radio:hover .ant-radio-inner{border-color:#177ddc}.ant-radio-input:focus+.ant-radio-inner{box-shadow:0 0 0 3px #111b26}.ant-radio-checked::after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #177ddc;border-radius:50%;visibility:hidden;animation:antRadioEffect .36s ease-in-out;animation-fill-mode:both;content:''}.ant-radio-wrapper:hover .ant-radio::after,.ant-radio:hover::after,.ant-tooltip{visibility:visible}.ant-radio-inner{position:relative;top:0;left:0;display:block;width:16px;height:16px;background-color:transparent;border-color:#434343;border-style:solid;border-width:1px;border-radius:50%;transition:all .3s}.ant-radio-inner::after{position:absolute;top:50%;left:50%;display:block;width:16px;height:16px;margin-top:-8px;margin-left:-8px;background-color:#177ddc;border-top:0;border-left:0;border-radius:16px;transform:scale(0);opacity:0;transition:all .3s cubic-bezier(.78,.14,.15,.86);content:' '}.ant-radio-input{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;cursor:pointer;opacity:0}.ant-radio-checked .ant-radio-inner{border-color:#177ddc}.ant-radio-checked .ant-radio-inner::after{transform:scale(.5);opacity:1;transition:all .3s cubic-bezier(.78,.14,.15,.86)}.ant-radio-disabled{cursor:not-allowed}.ant-radio-disabled .ant-radio-inner{background-color:rgba(255,255,255,.08);border-color:#434343!important;cursor:not-allowed}.ant-radio-disabled .ant-radio-inner::after{background-color:rgba(255,255,255,.2)}.ant-radio-disabled .ant-radio-input{cursor:not-allowed}.ant-radio-disabled+span{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-radio-button-wrapper,.ant-radio-button-wrapper a{color:rgba(255,255,255,.85)}span.ant-radio+*{padding-right:8px;padding-left:8px}.ant-radio-button-wrapper{position:relative;display:inline-block;height:32px;margin:0;padding:0 15px;font-size:14px;line-height:30px;background:0 0;border:1px solid #434343;border-top-width:1.02px;border-left-width:0;cursor:pointer;transition:color .3s,background .3s,border-color .3s,box-shadow .3s}.ant-radio-button-wrapper>.ant-radio-button{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%}.ant-radio-group-large .ant-radio-button-wrapper{height:40px;font-size:16px;line-height:38px}.ant-radio-group-small .ant-radio-button-wrapper{height:24px;padding:0 7px;line-height:22px}.ant-radio-button-wrapper:not(:first-child)::before{position:absolute;top:-1px;left:-1px;display:block;box-sizing:content-box;width:1px;height:100%;padding:1px 0;background-color:#434343;transition:background-color .3s;content:''}.ant-radio-button-wrapper:first-child{border-left:1px solid #434343;border-radius:2px 0 0 2px}.ant-radio-button-wrapper:last-child{border-radius:0 2px 2px 0}.ant-radio-button-wrapper:first-child:last-child{border-radius:2px}.ant-radio-button-wrapper:hover{position:relative;color:#177ddc}.ant-radio-button-wrapper:focus-within{box-shadow:0 0 0 3px #111b26}.ant-radio-button-wrapper .ant-radio-inner,.ant-radio-button-wrapper input[type=radio],.ant-radio-button-wrapper input[type=checkbox]{width:0;height:0;opacity:0;pointer-events:none}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled){z-index:1;color:#177ddc;background:0 0;border-color:#177ddc}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled)::before{background-color:#177ddc}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):first-child{border-color:#177ddc}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):hover{color:#165996;border-color:#165996}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):hover::before{background-color:#165996}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):active{color:#388ed3;border-color:#388ed3}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):active::before{background-color:#388ed3}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):focus-within{box-shadow:0 0 0 3px #111b26}.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled){color:#fff;background:#177ddc;border-color:#177ddc}.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):hover{color:#fff;background:#165996;border-color:#165996}.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):active{color:#fff;background:#388ed3;border-color:#388ed3}.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):focus-within{box-shadow:0 0 0 3px #111b26}.ant-radio-button-wrapper-disabled{color:rgba(255,255,255,.3);background-color:rgba(255,255,255,.08);border-color:#434343;cursor:not-allowed}.ant-radio-button-wrapper-disabled:first-child,.ant-radio-button-wrapper-disabled:hover{color:rgba(255,255,255,.3);background-color:rgba(255,255,255,.08);border-color:#434343}.ant-radio-button-wrapper-disabled:first-child{border-left-color:#434343}.ant-radio-button-wrapper-disabled.ant-radio-button-wrapper-checked{color:rgba(255,255,255,.3);background-color:rgba(255,255,255,.2);border-color:#434343;box-shadow:none}@keyframes antRadioEffect{0%{transform:scale(1);opacity:.5}100%{transform:scale(1.6);opacity:0}}.ant-radio-wrapper.ant-radio-wrapper-rtl{margin-right:0;margin-left:8px}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl{border-right-width:0;border-left-width:1px}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl.ant-radio-button-wrapper:not(:first-child)::before{right:-1px;left:0}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl.ant-radio-button-wrapper:first-child{border-right:1px solid #434343;border-radius:0 2px 2px 0}.ant-radio-button-wrapper-checked:not([class*=' ant-radio-button-wrapper-disabled']).ant-radio-button-wrapper:first-child{border-right-color:#165996}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl.ant-radio-button-wrapper:last-child{border-radius:2px 0 0 2px}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl.ant-radio-button-wrapper-disabled:first-child{border-right-color:#434343}.ant-rate,.ant-rate-star,.ant-rate-text{display:inline-block}.ant-rate{box-sizing:border-box;font-variant:tabular-nums;font-feature-settings:tnum;margin:0;padding:0;color:#d8bd14;font-size:20px;line-height:unset;list-style:none;outline:0}.ant-rate-disabled .ant-rate-star{cursor:default}.ant-rate-disabled .ant-rate-star>div:hover{transform:scale(1)}.ant-rate-star{position:relative;color:inherit;cursor:pointer}.ant-rate-star:not(:last-child){margin-right:8px}.ant-rate-star>div{transition:all .3s,outline 0s}.ant-rate-star>div:hover{transform:scale(1.1)}.ant-rate-star>div:focus{outline:0}.ant-rate-star>div:focus-visible{outline:#d8bd14 dashed 1px;transform:scale(1.1)}.ant-rate-star-first,.ant-rate-star-second{color:rgba(255,255,255,.12);transition:all .3s;user-select:none}.ant-rate-star-first .anticon,.ant-rate-star-second .anticon{vertical-align:middle}.ant-rate-star-first{position:absolute;top:0;left:0;width:50%;height:100%;overflow:hidden;opacity:0}.ant-rate-star-half .ant-rate-star-first,.ant-rate-star-half .ant-rate-star-second{opacity:1}.ant-rate-star-full .ant-rate-star-second,.ant-rate-star-half .ant-rate-star-first{color:inherit}.ant-rate-text{margin:0 8px;font-size:14px}.ant-rate-rtl .ant-rate-star:not(:last-child){margin-right:0;margin-left:8px}.ant-rate-rtl .ant-rate-star-first{right:0;left:auto}.ant-select-single .ant-select-selector{display:flex}.ant-select-single .ant-select-selector .ant-select-selection-search{position:absolute;top:0;right:11px;bottom:0;left:11px}.ant-select-single .ant-select-selector .ant-select-selection-search-input{width:100%}.ant-select-single .ant-select-selector .ant-select-selection-item,.ant-select-single .ant-select-selector .ant-select-selection-placeholder{padding:0;line-height:30px;transition:all .3s}@supports (-moz-appearance:meterbar){.ant-select-single .ant-select-selector .ant-select-selection-item,.ant-select-single .ant-select-selector .ant-select-selection-placeholder{line-height:30px}}.ant-select-single .ant-select-selector .ant-select-selection-item{position:relative;user-select:none}.ant-select-single .ant-select-selector .ant-select-selection-placeholder{transition:none;pointer-events:none}.ant-select-single .ant-select-selector .ant-select-selection-item::after,.ant-select-single .ant-select-selector .ant-select-selection-placeholder::after,.ant-select-single .ant-select-selector::after{display:inline-block;width:0;visibility:hidden;content:'\a0'}.ant-select-single.ant-select-customize-input .ant-select-selector .ant-select-selection-placeholder::after,.ant-select-single.ant-select-customize-input .ant-select-selector::after{display:none}.ant-select-single.ant-select-show-arrow .ant-select-selection-search{right:25px}.ant-select-single.ant-select-show-arrow .ant-select-selection-item,.ant-select-single.ant-select-show-arrow .ant-select-selection-placeholder{padding-right:18px}.ant-select-single.ant-select-open .ant-select-selection-item{color:rgba(255,255,255,.3)}.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{width:100%;height:32px;padding:0 11px}.ant-select-single:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-search-input{height:30px}.ant-select-single:not(.ant-select-customize-input) .ant-select-selector::after{line-height:30px}.ant-select-single.ant-select-customize-input .ant-select-selector .ant-select-selection-search{position:static;width:100%}.ant-select-single.ant-select-customize-input .ant-select-selector .ant-select-selection-placeholder{position:absolute;right:0;left:0;padding:0 11px}.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector{height:40px}.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-item,.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-placeholder,.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector::after{line-height:38px}.ant-select-single.ant-select-lg:not(.ant-select-customize-input):not(.ant-select-customize-input) .ant-select-selection-search-input{height:38px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector{height:24px;padding:0 7px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-item,.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-placeholder,.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector::after{line-height:22px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input):not(.ant-select-customize-input) .ant-select-selection-search-input{height:22px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selection-search{right:7px;left:7px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-search{right:28px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-item,.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-placeholder{padding-right:21px}.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector{padding:0 11px}.ant-select-selection-overflow{position:relative;display:flex;flex:auto;flex-wrap:wrap;max-width:100%}.ant-select-selection-overflow-item{flex:none;align-self:center;max-width:100%}.ant-select-multiple .ant-select-selector{display:flex;flex-wrap:wrap;align-items:center;padding:1px 4px}.ant-select-show-search.ant-select-multiple .ant-select-selector{cursor:text}.ant-select-disabled.ant-select-multiple .ant-select-selector{background:#141414;cursor:not-allowed}.ant-select-multiple .ant-select-selector::after{display:inline-block;width:0;margin:2px 0;line-height:24px;content:'\a0'}.ant-select-multiple.ant-select-allow-clear .ant-select-selector,.ant-select-multiple.ant-select-show-arrow .ant-select-selector{padding-right:24px}.ant-select-multiple .ant-select-selection-item{position:relative;display:flex;flex:none;box-sizing:border-box;max-width:100%;height:24px;margin-top:2px;margin-bottom:2px;line-height:22px;background:rgba(255,255,255,.08);border:1px solid #303030;border-radius:2px;cursor:default;transition:font-size .3s,line-height .3s,height .3s;user-select:none;margin-inline-end:4px;padding-inline-start:8px;padding-inline-end:4px}.ant-select-disabled.ant-select-multiple .ant-select-selection-item{color:#595959;border-color:#1f1f1f;cursor:not-allowed}.ant-select-multiple .ant-select-selection-item-content{display:inline-block;margin-right:4px;overflow:hidden;white-space:pre;text-overflow:ellipsis}.ant-select-multiple .ant-select-selection-item-remove{color:inherit;font-style:normal;text-align:center;text-transform:none;vertical-align:-.125em;display:inline-block;color:rgba(255,255,255,.45);font-weight:700;font-size:10px;line-height:inherit;cursor:pointer}.ant-select-arrow,.ant-select-arrow>*,.ant-select-clear,.ant-select-multiple .ant-select-selection-item-remove>*{line-height:1}.ant-select-multiple .ant-select-selection-item-remove svg{display:inline-block}.ant-select-disabled .ant-select-selection-item-remove,.ant-select-multiple .ant-select-selection-item-remove::before{display:none}.ant-select-multiple .ant-select-selection-item-remove .ant-select-multiple .ant-select-selection-item-remove-icon{display:block}.ant-select-multiple .ant-select-selection-item-remove>.anticon{vertical-align:middle}.ant-select-multiple .ant-select-selection-item-remove:hover{color:rgba(255,255,255,.75)}.ant-select-multiple .ant-select-selection-overflow-item+.ant-select-selection-overflow-item .ant-select-selection-search{margin-inline-start:0}.ant-select-multiple .ant-select-selection-search{position:relative;max-width:100%;margin-inline-start:7px}.ant-select-multiple .ant-select-selection-search-input,.ant-select-multiple .ant-select-selection-search-mirror{height:24px;line-height:24px;transition:all .3s}.ant-select-multiple .ant-select-selection-search-input{width:100%;min-width:4.1px}.ant-select-multiple .ant-select-selection-search-mirror{position:absolute;top:0;left:0;z-index:999;white-space:pre;visibility:hidden}.ant-select-multiple .ant-select-selection-placeholder{position:absolute;top:50%;right:11px;left:11px;transform:translateY(-50%);transition:all .3s}.ant-select-status-error.ant-select-has-feedback .ant-select-clear,.ant-select-status-success.ant-select-has-feedback .ant-select-clear,.ant-select-status-validating.ant-select-has-feedback .ant-select-clear,.ant-select-status-warning.ant-select-has-feedback .ant-select-clear,.theme-btn{right:32px}.ant-select-multiple.ant-select-lg .ant-select-selector::after{line-height:32px}.ant-select-multiple.ant-select-lg .ant-select-selection-search{height:32px;line-height:32px}.ant-select-multiple.ant-select-lg .ant-select-selection-search-input,.ant-select-multiple.ant-select-lg .ant-select-selection-search-mirror{height:32px;line-height:30px}.ant-select-multiple.ant-select-sm .ant-select-selector::after{line-height:16px}.ant-select-multiple.ant-select-sm .ant-select-selection-item{height:16px;line-height:14px}.ant-select-multiple.ant-select-sm .ant-select-selection-search{height:16px;line-height:16px;margin-inline-start:3px}.ant-select-multiple.ant-select-sm .ant-select-selection-search-input,.ant-select-multiple.ant-select-sm .ant-select-selection-search-mirror{height:16px;line-height:14px}.ant-select-multiple.ant-select-sm .ant-select-selection-placeholder{left:7px}.ant-select-multiple.ant-select-lg .ant-select-selection-item{height:32px;line-height:32px}.ant-select-status-error.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input) .ant-select-selector{background-color:transparent;border-color:#a61d24!important}.ant-select-status-error.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input).ant-select-focused .ant-select-selector,.ant-select-status-error.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input).ant-select-open .ant-select-selector{border-color:#a61d24;box-shadow:0 0 0 2px rgba(166,29,36,.2);border-right-width:1px;outline:0}.ant-select-status-warning.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input) .ant-select-selector{background-color:transparent;border-color:#d89614!important}.ant-select-status-warning.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input).ant-select-focused .ant-select-selector,.ant-select-status-warning.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input).ant-select-open .ant-select-selector{border-color:#d89614;box-shadow:0 0 0 2px rgba(216,150,20,.2);border-right-width:1px;outline:0}.ant-select-status-error.ant-select-has-feedback .ant-select-selection-selected-value,.ant-select-status-success.ant-select-has-feedback .ant-select-selection-selected-value,.ant-select-status-validating.ant-select-has-feedback .ant-select-selection-selected-value,.ant-select-status-warning.ant-select-has-feedback .ant-select-selection-selected-value{padding-right:42px}.ant-select{box-sizing:border-box;margin:0;padding:0;color:rgba(255,255,255,.85);font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum;position:relative;display:inline-block;cursor:pointer}.ant-select:not(.ant-select-customize-input) .ant-select-selector{position:relative;background-color:transparent;border:1px solid #434343;border-radius:2px;transition:all .3s cubic-bezier(.645,.045,.355,1)}.ant-select:not(.ant-select-customize-input) .ant-select-selector input{cursor:pointer}.ant-select-show-search.ant-select:not(.ant-select-customize-input) .ant-select-selector{cursor:text}.ant-select-show-search.ant-select:not(.ant-select-customize-input) .ant-select-selector input{cursor:auto}.ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector{border-right-width:0;border-left-width:1px!important}.ant-select-disabled.ant-select:not(.ant-select-customize-input) .ant-select-selector{color:rgba(255,255,255,.3);background:rgba(255,255,255,.08);cursor:not-allowed}.ant-select-multiple.ant-select-disabled.ant-select:not(.ant-select-customize-input) .ant-select-selector{background:#141414}.ant-select-disabled.ant-select:not(.ant-select-customize-input) .ant-select-selector input{cursor:not-allowed}.ant-select:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-search-input{margin:0;padding:0;background:0 0;border:none;outline:0;appearance:none}.ant-select-arrow,.ant-select-clear{position:absolute;right:11px;height:12px;margin-top:-6px;font-size:12px;text-transform:none;top:50%;text-align:center;font-style:normal}.ant-select:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-search-input::-webkit-search-cancel-button{display:none;-webkit-appearance:none}.ant-select:not(.ant-select-disabled):hover .ant-select-selector{border-color:#165996;border-right-width:1px}.ant-input-rtl .ant-select:not(.ant-select-disabled):hover .ant-select-selector{border-right-width:0;border-left-width:1px!important}.ant-select-selection-item{flex:1;overflow:hidden;font-weight:400;white-space:nowrap;text-overflow:ellipsis}@media all and (-ms-high-contrast:none){.ant-select-selection-item,.ant-select-selection-item ::-ms-backdrop{flex:auto}}.ant-select-selection-placeholder{flex:1;overflow:hidden;color:rgba(255,255,255,.3);white-space:nowrap;text-overflow:ellipsis;pointer-events:none}@media all and (-ms-high-contrast:none){.ant-select-selection-placeholder,.ant-select-selection-placeholder ::-ms-backdrop{flex:auto}}.ant-select-arrow{color:inherit;vertical-align:-.125em;display:flex;align-items:center;color:rgba(255,255,255,.3);pointer-events:none}.ant-select-arrow svg{display:inline-block}.ant-select-arrow::before{display:none}.ant-select-arrow .ant-select-arrow-icon{display:block}.ant-select-arrow .anticon{vertical-align:top;transition:transform .3s}.ant-select-arrow .anticon>svg{vertical-align:top}.ant-select-arrow .anticon:not(.ant-select-suffix){pointer-events:auto}.ant-select-disabled .ant-select-arrow{cursor:not-allowed}.ant-select-arrow>:not(:last-child){margin-inline-end:8px}.ant-select-clear{z-index:1;display:inline-block;width:12px;color:rgba(255,255,255,.3);background:#141414;cursor:pointer;opacity:0;transition:color .3s ease,opacity .15s ease;text-rendering:auto}.ant-select-clear::before{display:block}.ant-select-clear:hover{color:rgba(255,255,255,.45)}.ant-select:hover .ant-select-clear{opacity:1}.ant-select-dropdown{margin:0;color:rgba(255,255,255,.85);line-height:1.5715;list-style:none;font-feature-settings:tnum;z-index:1050;box-sizing:border-box;padding:4px 0;overflow:hidden;font-size:14px;font-variant:initial;background-color:#1f1f1f;border-radius:2px;outline:0;box-shadow:0 3px 6px -4px rgba(0,0,0,.48),0 6px 16px 0 rgba(0,0,0,.32),0 9px 28px 8px rgba(0,0,0,.2)}.ant-select-dropdown-empty,.ant-select-item-empty{color:rgba(255,255,255,.3)}.ant-select-item,.ant-select-item-empty{display:block;min-height:32px;padding:5px 12px;font-size:14px;line-height:22px;position:relative;font-weight:400}.ant-select-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-select-dropdown-placement-topLeft,.ant-select-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-select-dropdown-placement-topLeft{animation-name:antSlideDownIn}.ant-select-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-select-dropdown-placement-bottomLeft{animation-name:antSlideUpOut}.ant-select-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-select-dropdown-placement-topLeft{animation-name:antSlideDownOut}.ant-select-item{color:rgba(255,255,255,.85);cursor:pointer;transition:background .3s ease}.ant-segmented,.ant-slider,.ant-spin,.ant-statistic,.ant-steps{line-height:1.5715;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;box-sizing:border-box}.ant-select-item-group{color:rgba(255,255,255,.45);font-size:12px;cursor:default}.ant-select-item-option{display:flex}.ant-select-item-option-content{flex:auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-select-item-option-state{flex:none}.ant-select-item-option-active:not(.ant-select-item-option-disabled){background-color:rgba(255,255,255,.08)}.ant-select-item-option-selected:not(.ant-select-item-option-disabled){color:rgba(255,255,255,.85);font-weight:600;background-color:#111b26}.ant-select-item-option-selected:not(.ant-select-item-option-disabled) .ant-select-item-option-state{color:#177ddc}.ant-select-item-option-disabled,.segmented-disabled-item,.segmented-disabled-item:focus,.segmented-disabled-item:hover{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-select-item-option-disabled.ant-select-item-option-selected{background-color:#141414}.ant-select-item-option-grouped{padding-left:24px}.ant-select-lg{font-size:16px}.ant-segmented,.ant-slider,.ant-slider-mark,.ant-spin,.ant-spin-sm .ant-spin-dot{font-size:14px}.ant-select-borderless .ant-select-selector{background-color:transparent!important;border-color:transparent!important;box-shadow:none!important}.ant-select.ant-select-in-form-item{width:100%}.ant-select-rtl .ant-select-arrow,.ant-select-rtl .ant-select-clear{right:initial;left:11px}.ant-select-dropdown-rtl .ant-select-item-option-grouped{padding-right:24px;padding-left:12px}.ant-select-rtl.ant-select-multiple.ant-select-allow-clear .ant-select-selector,.ant-select-rtl.ant-select-multiple.ant-select-show-arrow .ant-select-selector{padding-right:4px;padding-left:24px}.ant-select-rtl.ant-select-multiple .ant-select-selection-item{text-align:right}.ant-select-rtl.ant-select-multiple .ant-select-selection-item-content{margin-right:0;margin-left:4px;text-align:right}.ant-select-rtl.ant-select-multiple .ant-select-selection-search-mirror{right:0;left:auto}.ant-select-rtl.ant-select-multiple .ant-select-selection-placeholder{right:11px;left:auto}.ant-select-rtl.ant-select-multiple.ant-select-sm .ant-select-selection-placeholder{right:7px}.ant-select-rtl.ant-select-single .ant-select-selector .ant-select-selection-item,.ant-select-rtl.ant-select-single .ant-select-selector .ant-select-selection-placeholder{right:0;left:9px;text-align:right}.ant-select-rtl.ant-select-single.ant-select-show-arrow .ant-select-selection-search{right:11px;left:25px}.ant-select-rtl.ant-select-single.ant-select-show-arrow .ant-select-selection-item,.ant-select-rtl.ant-select-single.ant-select-show-arrow .ant-select-selection-placeholder{padding-right:0;padding-left:18px}.ant-select-rtl.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-search{right:6px}.ant-select-rtl.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-item,.ant-select-rtl.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-placeholder{padding-right:0;padding-left:21px}.ant-select-dropdown{top:100%;left:0;position:relative;width:100%;margin-top:4px;margin-bottom:4px;display:block}.ant-select-dropdown .cdk-virtual-scroll-content-wrapper{right:0}.ant-select-dropdown .full-width{contain:initial}.ant-select-dropdown .full-width .cdk-virtual-scroll-content-wrapper{position:static}.ant-select-dropdown .full-width .cdk-virtual-scroll-spacer{position:absolute;top:0;width:1px}.segmented-item-selected{background-color:#333;border-radius:2px;box-shadow:0 2px 8px -2px rgba(0,0,0,.05),0 1px 4px -1px rgba(0,0,0,.07),0 0 1px 0 rgba(0,0,0,.08)}.segmented-text-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all}.ant-segmented{margin:0;display:inline-block;padding:2px;color:rgba(255,255,255,.65);background-color:rgba(0,0,0,.25);border-radius:2px;transition:all .3s cubic-bezier(.645,.045,.355,1)}.ant-segmented-item-selected,.ant-segmented-item:focus,.ant-segmented-item:hover{color:rgba(255,255,255,.85)}.ant-segmented-group{position:relative;display:flex;align-items:stretch;justify-items:flex-start;width:100%}.ant-segmented.ant-segmented-block{display:flex}.ant-segmented.ant-segmented-block .ant-segmented-item{flex:1;min-width:0}.ant-segmented:not(.ant-segmented-disabled):focus,.ant-segmented:not(.ant-segmented-disabled):hover{background-color:rgba(0,0,0,.45)}.ant-segmented-item-selected,.ant-segmented-thumb{background-color:#333;border-radius:2px;box-shadow:0 2px 8px -2px rgba(0,0,0,.05),0 1px 4px -1px rgba(0,0,0,.07),0 0 1px 0 rgba(0,0,0,.08)}.ant-segmented-item{position:relative;text-align:center;cursor:pointer;transition:color .3s cubic-bezier(.645,.045,.355,1)}.ant-segmented-item-label{min-height:28px;padding:0 11px;line-height:28px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all}.ant-segmented-item-icon+*{margin-left:12px/2}.ant-segmented-item-input{position:absolute;top:0;left:0;width:0;height:0;opacity:0;pointer-events:none}.ant-segmented.ant-segmented-lg .ant-segmented-item-label{min-height:36px;padding:0 11px;font-size:16px;line-height:36px}.ant-segmented.ant-segmented-sm .ant-segmented-item-label{min-height:20px;padding:0 7px;line-height:20px}.ant-segmented-item-disabled,.ant-segmented-item-disabled:focus,.ant-segmented-item-disabled:hover{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-segmented-thumb{position:absolute;top:0;left:0;width:0;height:100%;padding:4px 0}.ant-skeleton-header .ant-skeleton-avatar-lg.ant-skeleton-avatar-circle,.ant-skeleton-header .ant-skeleton-avatar-sm.ant-skeleton-avatar-circle,.ant-skeleton-header .ant-skeleton-avatar.ant-skeleton-avatar-circle{border-radius:50%}.ant-segmented-thumb-motion-appear-active{transition:transform .3s cubic-bezier(.645,.045,.355,1),width .3s cubic-bezier(.645,.045,.355,1);will-change:transform,width}.ant-segmented.ant-segmented-rtl .ant-segmented-item-icon{margin-right:0;margin-left:6px}.ant-skeleton{display:table;width:100%}.ant-skeleton-header{display:table-cell;padding-right:16px;vertical-align:top}.ant-skeleton-header .ant-skeleton-avatar{display:inline-block;vertical-align:top;background:rgba(190,190,190,.2);width:32px;height:32px;line-height:32px}.ant-skeleton-header .ant-skeleton-avatar-lg{width:40px;height:40px;line-height:40px}.ant-skeleton-header .ant-skeleton-avatar-sm{width:24px;height:24px;line-height:24px}.ant-skeleton-content{display:table-cell;width:100%;vertical-align:top}.ant-skeleton-content .ant-skeleton-title{width:100%;height:16px;margin-top:16px;background:rgba(190,190,190,.2);border-radius:4px}.ant-skeleton-content .ant-skeleton-title+.ant-skeleton-paragraph{margin-top:24px}.ant-skeleton-content .ant-skeleton-paragraph{padding:0}.ant-skeleton-content .ant-skeleton-paragraph>li{width:100%;height:16px;list-style:none;background:rgba(190,190,190,.2);border-radius:4px}.ant-skeleton-content .ant-skeleton-paragraph>li:last-child:not(:first-child):not(:nth-child(2)){width:61%}.ant-skeleton-content .ant-skeleton-paragraph>li+li{margin-top:16px}.ant-skeleton-with-avatar .ant-skeleton-content .ant-skeleton-title{margin-top:12px}.ant-skeleton-with-avatar .ant-skeleton-content .ant-skeleton-title+.ant-skeleton-paragraph{margin-top:28px}.ant-skeleton-round .ant-skeleton-content .ant-skeleton-paragraph>li,.ant-skeleton-round .ant-skeleton-content .ant-skeleton-title{border-radius:100px}.ant-skeleton.ant-skeleton-active .ant-skeleton-avatar,.ant-skeleton.ant-skeleton-active .ant-skeleton-button,.ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-paragraph>li,.ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-title,.ant-skeleton.ant-skeleton-active .ant-skeleton-image,.ant-skeleton.ant-skeleton-active .ant-skeleton-input{background:linear-gradient(90deg,rgba(190,190,190,.2) 25%,rgba(255,255,255,.16) 37%,rgba(190,190,190,.2) 63%);background-size:400% 100%;animation:ant-skeleton-loading 1.4s ease infinite}.ant-skeleton.ant-skeleton-block,.ant-skeleton.ant-skeleton-block .ant-skeleton-button,.ant-skeleton.ant-skeleton-block .ant-skeleton-input{width:100%}.ant-skeleton-element{display:inline-block;width:auto}.ant-skeleton-element .ant-skeleton-button{display:inline-block;vertical-align:top;background:rgba(190,190,190,.2);border-radius:2px;width:64px;min-width:64px;height:32px;line-height:32px}.ant-skeleton-element .ant-skeleton-button.ant-skeleton-button-circle{width:32px;min-width:32px;border-radius:50%}.ant-skeleton-element .ant-skeleton-button.ant-skeleton-button-round{border-radius:32px}.ant-skeleton-element .ant-skeleton-button-lg{width:80px;min-width:80px;height:40px;line-height:40px}.ant-skeleton-element .ant-skeleton-button-lg.ant-skeleton-button-circle{width:40px;min-width:40px;border-radius:50%}.ant-skeleton-element .ant-skeleton-button-lg.ant-skeleton-button-round{border-radius:40px}.ant-skeleton-element .ant-skeleton-button-sm{width:48px;min-width:48px;height:24px;line-height:24px}.ant-skeleton-element .ant-skeleton-button-sm.ant-skeleton-button-circle{width:24px;min-width:24px;border-radius:50%}.ant-skeleton-element .ant-skeleton-button-sm.ant-skeleton-button-round{border-radius:24px}.ant-image-preview-switch-left,.ant-image-preview-switch-right,.ant-skeleton-element .ant-skeleton-avatar-lg.ant-skeleton-avatar-circle,.ant-skeleton-element .ant-skeleton-avatar-sm.ant-skeleton-avatar-circle,.ant-skeleton-element .ant-skeleton-avatar.ant-skeleton-avatar-circle,.ant-skeleton-element .ant-skeleton-image-svg.ant-skeleton-image-circle,.ant-skeleton-element .ant-skeleton-image.ant-skeleton-image-circle{border-radius:50%}.ant-skeleton-element .ant-skeleton-avatar{display:inline-block;vertical-align:top;background:rgba(190,190,190,.2);width:32px;height:32px;line-height:32px}.ant-skeleton-element .ant-skeleton-avatar-lg{width:40px;height:40px;line-height:40px}.ant-skeleton-element .ant-skeleton-avatar-sm{width:24px;height:24px;line-height:24px}.ant-skeleton-element .ant-skeleton-input{display:inline-block;vertical-align:top;background:rgba(190,190,190,.2);width:160px;min-width:160px;height:32px;line-height:32px}.ant-skeleton-element .ant-skeleton-input-lg{width:200px;min-width:200px;height:40px;line-height:40px}.ant-skeleton-element .ant-skeleton-input-sm{width:120px;min-width:120px;height:24px;line-height:24px}.ant-skeleton-element .ant-skeleton-image{display:flex;align-items:center;justify-content:center;vertical-align:top;background:rgba(190,190,190,.2);width:96px;height:96px;line-height:96px}.ant-skeleton-element .ant-skeleton-image-path{fill:#bfbfbf}.ant-skeleton-element .ant-skeleton-image-svg{width:48px;height:48px;line-height:48px;max-width:192px;max-height:192px}@keyframes ant-skeleton-loading{0%{background-position:100% 50%}100%{background-position:0 50%}}.ant-skeleton-rtl .ant-skeleton-header{padding-right:0;padding-left:16px}.ant-skeleton-rtl.ant-skeleton.ant-skeleton-active .ant-skeleton-avatar,.ant-skeleton-rtl.ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-paragraph>li,.ant-skeleton-rtl.ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-title{animation-name:ant-skeleton-loading-rtl}@keyframes ant-skeleton-loading-rtl{0%{background-position:0 50%}100%{background-position:100% 50%}}.ant-slider{color:rgba(255,255,255,.85);position:relative;height:12px;margin:10px 6px;padding:4px 0;cursor:pointer;touch-action:none}.ant-slider-vertical{width:12px;height:100%;margin:6px 10px;padding:0 4px}.ant-slider-vertical .ant-slider-rail{width:4px;height:100%}.ant-slider-vertical .ant-slider-track{width:4px}.ant-slider-vertical .ant-slider-handle{margin-top:-6px;margin-left:-5px}.ant-slider-vertical .ant-slider-mark{top:0;left:12px;width:18px;height:100%}.ant-slider-vertical .ant-slider-mark-text{left:4px;white-space:nowrap}.ant-slider-vertical .ant-slider-step{width:4px;height:100%}.ant-slider-rail,.ant-slider-track{height:4px;border-radius:2px;transition:background-color .3s;position:absolute}.ant-slider-vertical .ant-slider-dot{top:auto;margin-left:-2px}.ant-slider-rtl.ant-slider-vertical .ant-slider-handle{margin-right:-5px;margin-left:0}.ant-slider-rtl.ant-slider-vertical .ant-slider-mark{right:12px;left:auto}.ant-slider-rtl.ant-slider-vertical .ant-slider-mark-text{right:4px;left:auto}.ant-slider-rtl.ant-slider-vertical .ant-slider-dot{right:2px;left:auto}.ant-slider-with-marks{margin-bottom:28px}.ant-slider-rail{width:100%;background-color:#262626}.ant-slider-track{background-color:#153450}.ant-slider-handle{position:absolute;width:14px;height:14px;margin-top:-5px;background-color:#141414;border:2px solid #153450;border-radius:50%;box-shadow:0;cursor:pointer;transition:border-color .3s,box-shadow .6s,transform .3s cubic-bezier(.18,.89,.32,1.28)}.ant-slider:hover .ant-slider-rail,.ant-tooltip-inner{background-color:#434343}#ng-content,.ant-spin{transition:transform .3s cubic-bezier(.78,.14,.15,.86)}.ant-slider-handle-dragging{z-index:1}.ant-slider-handle:focus{border-color:#4697e3;outline:0;box-shadow:0 0 0 5px rgba(23,125,220,.12)}.ant-slider-handle.ant-tooltip-open{border-color:#177ddc}.ant-slider:hover .ant-slider-track{background-color:#16436e}.ant-slider:hover .ant-slider-handle:not(.ant-tooltip-open){border-color:#16436e}.ant-slider-mark{position:absolute;top:14px;left:0;width:100%}.ant-slider-mark-text{position:absolute;display:inline-block;color:rgba(255,255,255,.45);text-align:center;word-break:keep-all;cursor:pointer;user-select:none}.ant-slider-mark-text-active{color:rgba(255,255,255,.85)}.ant-slider-step{position:absolute;width:100%;height:4px;background:0 0;pointer-events:none}.ant-slider-dot{position:absolute;top:-2px;width:8px;height:8px;background-color:#141414;border:2px solid #303030;border-radius:50%;cursor:pointer}.ant-slider-dot-active{border-color:#16436e}.ant-slider-disabled{cursor:not-allowed}.ant-slider-disabled .ant-slider-rail{background-color:#262626!important}.ant-slider-disabled .ant-slider-track{background-color:rgba(255,255,255,.3)!important}.ant-slider-disabled .ant-slider-dot,.ant-slider-disabled .ant-slider-handle{background-color:#141414;border-color:rgba(255,255,255,.3)!important;box-shadow:none;cursor:not-allowed}.ant-slider-disabled .ant-slider-dot,.ant-slider-disabled .ant-slider-mark-text{cursor:not-allowed!important}.ant-slider-rtl .ant-slider-mark{right:0;left:auto}.ant-spin{margin:0;padding:0;position:absolute;display:none;color:#177ddc;text-align:center;vertical-align:middle;opacity:0}.ant-spin-spinning,.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-left::before,.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-right::after,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-left::before,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-right::after,.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-bottom::after,.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-top::before,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-bottom::after,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-top::before,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-bottom::after,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-top::before,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-bottom::after,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-top::before,.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-left::before,.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-right::after,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-left::before,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-right::after{opacity:1}.ant-spin-spinning{position:static;display:inline-block}.ant-spin-nested-loading{position:relative}.ant-spin-nested-loading>div>.ant-spin{position:absolute;top:0;left:0;z-index:4;display:block;width:100%;height:100%;max-height:400px}.ant-spin-nested-loading>div>.ant-spin .ant-spin-dot{position:absolute;top:50%;left:50%;margin:-10px}.ant-spin-nested-loading>div>.ant-spin .ant-spin-text{position:absolute;top:50%;width:100%;padding-top:5px;text-shadow:0 1px 2px #141414}.ant-spin-nested-loading>div>.ant-spin.ant-spin-show-text .ant-spin-dot{margin-top:-20px}.ant-spin-nested-loading>div>.ant-spin-sm .ant-spin-dot{margin:-7px}.ant-spin-nested-loading>div>.ant-spin-sm .ant-spin-text{padding-top:2px}.ant-spin-nested-loading>div>.ant-spin-sm.ant-spin-show-text .ant-spin-dot{margin-top:-17px}.ant-spin-nested-loading>div>.ant-spin-lg .ant-spin-dot{margin:-16px}.ant-spin-nested-loading>div>.ant-spin-lg .ant-spin-text{padding-top:11px}.ant-spin-nested-loading>div>.ant-spin-lg.ant-spin-show-text .ant-spin-dot{margin-top:-26px}.ant-spin-container{position:relative;transition:opacity .3s}.ant-spin-container::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;display:none\9;width:100%;height:100%;background:#141414;opacity:0;transition:all .3s;content:'';pointer-events:none}.ant-spin-blur{clear:both;opacity:.5;user-select:none;pointer-events:none}.ant-spin-blur::after{opacity:.4;pointer-events:auto}.ant-spin-tip{color:rgba(255,255,255,.45)}.ant-spin-dot{position:relative;display:inline-block;font-size:20px;width:1em;height:1em}.ant-spin-dot-item{position:absolute;display:block;width:9px;height:9px;background-color:#177ddc;border-radius:100%;transform:scale(.75);transform-origin:50% 50%;opacity:.3;animation:antSpinMove 1s infinite linear alternate}.ant-spin-dot-item:nth-child(1){top:0;left:0}.ant-spin-dot-item:nth-child(2){top:0;right:0;animation-delay:.4s}.ant-spin-dot-item:nth-child(3){right:0;bottom:0;animation-delay:.8s}.ant-spin-dot-item:nth-child(4){bottom:0;left:0;animation-delay:1.2s}.ant-spin-dot-spin{transform:rotate(0);animation:antRotate 1.2s infinite linear}.ant-spin-sm .ant-spin-dot i{width:6px;height:6px}.ant-spin-lg .ant-spin-dot{font-size:32px}.ant-spin-lg .ant-spin-dot i{width:14px;height:14px}.ant-spin.ant-spin-show-text .ant-spin-text{display:block}@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){.ant-spin-blur{background:#141414;opacity:.5}}@keyframes antSpinMove{to{opacity:1}}@keyframes antRotate{to{transform:rotate(360deg)}}.ant-spin-rtl .ant-spin-dot-spin{transform:rotate(-45deg);animation-name:antRotateRtl}@keyframes antRotateRtl{to{transform:rotate(-405deg)}}nz-spin{display:block}.ant-statistic{margin:0;padding:0;color:rgba(255,255,255,.85);font-size:14px}.ant-statistic-title{margin-bottom:4px;color:rgba(255,255,255,.45);font-size:14px}.ant-statistic-content{color:rgba(255,255,255,.85);font-size:24px}.ant-statistic-content-value{display:inline-block;direction:ltr}.ant-statistic-rtl,.ant-steps-rtl,.ant-switch-rtl,.ant-table-rtl,.ant-table-wrapper-rtl,.ant-tabs-dropdown-rtl,.ant-tabs-rtl,.ant-tag.ant-tag-rtl,.ant-timeline-rtl,.ant-tooltip-rtl,.ant-transfer-rtl,.ant-typography-rtl,.ant-upload-list-rtl,.ant-upload-rtl{direction:rtl}.ant-statistic-content-prefix,.ant-statistic-content-suffix{display:inline-block}.ant-statistic-content-prefix{margin-right:4px}.ant-statistic-content-suffix{margin-left:4px}.ant-statistic-rtl .ant-statistic-content-prefix{margin-right:0;margin-left:4px}.ant-statistic-rtl .ant-statistic-content-suffix{margin-right:4px;margin-left:0}.ant-steps{margin:0;padding:0;color:rgba(255,255,255,.85);display:flex;width:100%;font-size:0;text-align:initial}.ant-steps-item{position:relative;display:inline-block;flex:1;overflow:hidden;vertical-align:top}.ant-steps-item-container{outline:0}.ant-steps-item:last-child{flex:none}.ant-steps-item:last-child>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after,.ant-steps-item:last-child>.ant-steps-item-container>.ant-steps-item-tail{display:none}.ant-steps-item-content,.ant-steps-item-icon{display:inline-block;vertical-align:top}.ant-steps-item-icon{width:32px;height:32px;margin:0 8px 0 0;font-size:16px;line-height:32px;text-align:center;border:1px solid rgba(255,255,255,.3);border-radius:32px;transition:background-color .3s,border-color .3s}.ant-steps-item-icon .ant-steps-icon{position:relative;top:-.5px;color:#177ddc;line-height:1}.ant-steps-item-tail{position:absolute;top:12px;left:0;width:100%;padding:0 10px}.ant-steps-item-tail::after{display:inline-block;width:100%;height:1px;background:#303030;border-radius:1px;transition:background .3s;content:''}.ant-steps-item-title{position:relative;display:inline-block;padding-right:16px;color:rgba(255,255,255,.85);font-size:16px;line-height:32px}.ant-steps-item-description,.ant-steps-item-subtitle{color:rgba(255,255,255,.45);font-size:14px}.ant-steps-item-title::after{position:absolute;top:16px;left:100%;display:block;width:9999px;height:1px;background:#303030;content:''}.ant-steps-item-subtitle{display:inline;margin-left:8px;font-weight:400}.ant-steps-item-wait .ant-steps-item-icon{background-color:transparent;border-color:rgba(255,255,255,.3)}.ant-steps-item-wait .ant-steps-item-icon>.ant-steps-icon{color:rgba(255,255,255,.3)}.ant-steps-item-wait>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-description,.ant-steps-item-wait>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title{color:rgba(255,255,255,.45)}.ant-steps-item-wait .ant-steps-item-icon>.ant-steps-icon .ant-steps-icon-dot{background:rgba(255,255,255,.3)}.ant-steps-item-wait>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after,.ant-steps-item-wait>.ant-steps-item-container>.ant-steps-item-tail::after{background-color:#303030}.ant-steps-item-process .ant-steps-item-icon{background-color:transparent;border-color:#177ddc}.ant-steps-item-process .ant-steps-item-icon>.ant-steps-icon{color:#177ddc}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-description,.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title{color:rgba(255,255,255,.85)}.ant-steps-item-process .ant-steps-item-icon>.ant-steps-icon .ant-steps-icon-dot{background:#177ddc}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after,.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-tail::after{background-color:#303030}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-icon{background:#177ddc}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-icon .ant-steps-icon{color:#fff}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-title{font-weight:500}.ant-steps-item-finish .ant-steps-item-icon{background-color:transparent;border-color:#177ddc}.ant-steps-item-finish>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after,.ant-steps-item-finish>.ant-steps-item-container>.ant-steps-item-tail::after{background-color:#177ddc}.ant-steps-item-finish .ant-steps-item-icon>.ant-steps-icon{color:#177ddc}.ant-steps-item-finish .ant-steps-item-icon>.ant-steps-icon .ant-steps-icon-dot{background:#177ddc}.ant-steps-item-finish>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title{color:rgba(255,255,255,.85)}.ant-steps-item-finish>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-description{color:rgba(255,255,255,.45)}.ant-steps-item-error .ant-steps-item-icon>.ant-steps-icon,.ant-steps-item-error>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-description,.ant-steps-item-error>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title{color:#a61d24}.ant-steps-item-error .ant-steps-item-icon{background-color:transparent;border-color:#a61d24}.ant-steps-item-error .ant-steps-item-icon>.ant-steps-icon .ant-steps-icon-dot{background:#a61d24}.ant-steps-item-error>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after,.ant-steps-item-error>.ant-steps-item-container>.ant-steps-item-tail::after,.g2-radar__legend-item::after,.number-info:not(:first-child)::after{background-color:#303030}.ant-steps .ant-steps-item:not(.ant-steps-item-active):not(.ant-steps-item-process)>.ant-steps-item-container[role=button]:hover .ant-steps-item-icon .ant-steps-icon,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button]:hover .ant-steps-item-description,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button]:hover .ant-steps-item-subtitle,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button]:hover .ant-steps-item-title,.ant-steps-item-custom.ant-steps-item-process .ant-steps-item-icon>.ant-steps-icon{color:#177ddc}.ant-steps-item.ant-steps-next-error .ant-steps-item-title::after{background:#a61d24}.ant-steps-item-disabled{cursor:not-allowed}.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button]{cursor:pointer}.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button] .ant-steps-item-description,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button] .ant-steps-item-icon .ant-steps-icon,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button] .ant-steps-item-subtitle,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button] .ant-steps-item-title{transition:color .3s}.ant-steps .ant-steps-item:not(.ant-steps-item-active):not(.ant-steps-item-process)>.ant-steps-item-container[role=button]:hover .ant-steps-item-icon{border-color:#177ddc}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item{padding-left:16px;white-space:nowrap}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:first-child{padding-left:0}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:last-child .ant-steps-item-title{padding-right:0}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item-tail{display:none}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item-description{max-width:140px;white-space:normal}.ant-steps-item-custom>.ant-steps-item-container>.ant-steps-item-icon{height:auto;background:0 0;border:0}.ant-steps-item-custom>.ant-steps-item-container>.ant-steps-item-icon>.ant-steps-icon{top:0;left:.5px;width:32px;height:32px;font-size:24px;line-height:32px}.ant-steps:not(.ant-steps-vertical) .ant-steps-item-custom .ant-steps-item-icon{width:auto;background:0 0}.ant-steps-small.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item{padding-left:12px}.ant-steps-small.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:first-child{padding-left:0}.ant-steps-small .ant-steps-item-icon{width:24px;height:24px;margin:0 8px 0 0;font-size:12px;line-height:24px;text-align:center;border-radius:24px}.ant-steps-small .ant-steps-item-title{padding-right:12px;font-size:14px;line-height:24px}.ant-steps-small .ant-steps-item-title::after{top:12px}.ant-steps-small .ant-steps-item-description{color:rgba(255,255,255,.45);font-size:14px}.ant-switch,.ant-table,.ant-table-footer,.ant-table-thead>tr>th{color:rgba(255,255,255,.85)}.ant-steps-small .ant-steps-item-tail{top:8px}.ant-steps-small .ant-steps-item-custom .ant-steps-item-icon{width:inherit;height:inherit;line-height:inherit;background:0 0;border:0;border-radius:0}.ant-steps-small .ant-steps-item-custom .ant-steps-item-icon>.ant-steps-icon{font-size:24px;line-height:24px;transform:none}.ant-steps-vertical{display:flex;flex-direction:column}.ant-steps-vertical>.ant-steps-item{display:block;flex:1 0 auto;padding-left:0;overflow:visible}.ant-steps-vertical>.ant-steps-item .ant-steps-item-icon{float:left;margin-right:16px}.ant-steps-vertical>.ant-steps-item .ant-steps-item-content{display:block;min-height:48px;overflow:hidden}.ant-steps-vertical>.ant-steps-item .ant-steps-item-title{line-height:32px}.ant-steps-vertical>.ant-steps-item .ant-steps-item-description{padding-bottom:12px}.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{position:absolute;top:0;left:16px;width:1px;height:100%;padding:38px 0 6px}.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail::after{width:1px;height:100%}.ant-steps-vertical>.ant-steps-item:not(:last-child)>.ant-steps-item-container>.ant-steps-item-tail{display:block}.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after{display:none}.ant-steps-vertical.ant-steps-small .ant-steps-item-container .ant-steps-item-tail{position:absolute;top:0;left:12px;padding:30px 0 6px}.ant-steps-vertical.ant-steps-small .ant-steps-item-container .ant-steps-item-title{line-height:24px}.ant-steps-label-vertical .ant-steps-item{overflow:visible}.ant-steps-label-vertical .ant-steps-item-tail{margin-left:58px;padding:3.5px 24px}.ant-steps-label-vertical .ant-steps-item-content{display:block;width:116px;margin-top:8px;text-align:center}.ant-steps-label-vertical .ant-steps-item-icon{display:inline-block;margin-left:42px}.ant-steps-label-vertical .ant-steps-item-title{padding-right:0;padding-left:0}.ant-steps-label-vertical .ant-steps-item-title::after{display:none}.ant-steps-label-vertical .ant-steps-item-subtitle{display:block;margin-bottom:4px;margin-left:0;line-height:1.5715}.ant-steps-label-vertical.ant-steps-small:not(.ant-steps-dot) .ant-steps-item-icon{margin-left:46px}.ant-steps-dot .ant-steps-item-title,.ant-steps-dot.ant-steps-small .ant-steps-item-title{line-height:1.5715}.ant-steps-dot .ant-steps-item-tail,.ant-steps-dot.ant-steps-small .ant-steps-item-tail{top:2px;width:100%;margin:0 0 0 70px;padding:0}.ant-steps-dot .ant-steps-item-tail::after,.ant-steps-dot.ant-steps-small .ant-steps-item-tail::after{width:calc(100% - 20px);height:3px;margin-left:12px}.ant-steps-dot .ant-steps-item:first-child .ant-steps-icon-dot,.ant-steps-dot.ant-steps-small .ant-steps-item:first-child .ant-steps-icon-dot{left:2px}.ant-steps-dot .ant-steps-item-icon,.ant-steps-dot.ant-steps-small .ant-steps-item-icon{width:8px;height:8px;margin-left:67px;padding-right:0;line-height:8px;background:0 0;border:0}.ant-steps-dot .ant-steps-item-icon .ant-steps-icon-dot,.ant-steps-dot.ant-steps-small .ant-steps-item-icon .ant-steps-icon-dot{position:relative;float:left;width:100%;height:100%;border-radius:100px;transition:all .3s}.ant-steps-dot .ant-steps-item-icon .ant-steps-icon-dot::after,.ant-steps-dot.ant-steps-small .ant-steps-item-icon .ant-steps-icon-dot::after{position:absolute;top:-12px;left:-26px;width:60px;height:32px;background:rgba(0,0,0,.001);content:''}.ant-steps-dot .ant-steps-item-content,.ant-steps-dot.ant-steps-small .ant-steps-item-content{width:140px}.ant-steps-dot .ant-steps-item-process .ant-steps-item-icon,.ant-steps-dot.ant-steps-small .ant-steps-item-process .ant-steps-item-icon{position:relative;top:-1px;width:10px;height:10px;line-height:10px;background:0 0}.ant-steps-dot .ant-steps-item-process .ant-steps-icon:first-child .ant-steps-icon-dot,.ant-steps-dot.ant-steps-small .ant-steps-item-process .ant-steps-icon:first-child .ant-steps-icon-dot{left:0}.ant-steps-vertical.ant-steps-dot .ant-steps-item-icon{margin-top:13px;margin-left:0;background:0 0}.ant-steps-vertical.ant-steps-dot .ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{top:6.5px;left:-9px;margin:0;padding:22px 0 4px}.ant-steps-vertical.ant-steps-dot.ant-steps-small .ant-steps-item-icon{margin-top:10px}.ant-steps-vertical.ant-steps-dot.ant-steps-small .ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{top:3.5px}.ant-steps-vertical.ant-steps-dot .ant-steps-item:first-child .ant-steps-icon-dot{left:0}.ant-steps-vertical.ant-steps-dot .ant-steps-item-content{width:inherit}.ant-steps-vertical.ant-steps-dot .ant-steps-item-process .ant-steps-item-container .ant-steps-item-icon .ant-steps-icon-dot{top:-1px;left:-1px}.ant-steps-navigation{padding-top:12px}.ant-steps-navigation.ant-steps-small .ant-steps-item-container{margin-left:-12px}.ant-steps-navigation .ant-steps-item{overflow:visible;text-align:center}.ant-steps-navigation .ant-steps-item-container{display:inline-block;height:100%;margin-left:-16px;padding-bottom:12px;text-align:left;transition:opacity .3s}.ant-steps-navigation .ant-steps-item-container .ant-steps-item-title::after,.ant-steps-navigation .ant-steps-item:last-child::after{display:none}.ant-steps-navigation .ant-steps-item-container .ant-steps-item-content{max-width:auto}.ant-steps-navigation .ant-steps-item-container .ant-steps-item-title{max-width:100%;padding-right:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-steps-navigation .ant-steps-item:not(.ant-steps-item-active) .ant-steps-item-container[role=button]{cursor:pointer}.ant-steps-navigation .ant-steps-item:not(.ant-steps-item-active) .ant-steps-item-container[role=button]:hover{opacity:.85}.ant-steps-navigation .ant-steps-item:last-child{flex:1}.ant-steps-navigation .ant-steps-item::after{position:absolute;top:50%;left:100%;display:inline-block;width:12px;height:12px;margin-top:-14px;margin-left:-2px;border:1px solid rgba(255,255,255,.2);border-bottom:none;border-left:none;transform:rotate(45deg);content:''}.ant-steps-navigation .ant-steps-item::before{position:absolute;bottom:0;left:50%;display:inline-block;width:0;height:2px;background-color:#177ddc;transition:width .3s,left .3s;transition-timing-function:ease-out;content:''}.ant-steps-navigation .ant-steps-item.ant-steps-item-active::before{left:0;width:100%}.ant-steps-navigation.ant-steps-vertical>.ant-steps-item{margin-right:0!important}.ant-steps-navigation.ant-steps-vertical>.ant-steps-item::before{display:none}.ant-steps-navigation.ant-steps-vertical>.ant-steps-item.ant-steps-item-active::before{top:0;right:0;left:unset;display:block;width:3px;height:calc(100% - 24px)}.ant-steps-navigation.ant-steps-vertical>.ant-steps-item::after{position:relative;top:-2px;left:50%;display:block;width:8px;height:8px;margin-bottom:8px;text-align:center;transform:rotate(135deg)}.ant-steps-navigation.ant-steps-horizontal>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail,.ant-steps-navigation.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{visibility:hidden}.ant-steps.ant-steps-rtl .ant-steps-item-icon{margin-right:0;margin-left:8px}.ant-steps-rtl .ant-steps-item-tail{right:0;left:auto}.ant-steps-rtl .ant-steps-item-title{padding-right:0;padding-left:16px}.ant-steps-rtl .ant-steps-item-title .ant-steps-item-subtitle{float:left;margin-right:8px;margin-left:0}.ant-steps-rtl .ant-steps-item-title::after{right:100%;left:auto}.ant-steps-rtl.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item{padding-right:16px;padding-left:0}.ant-steps-rtl.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:first-child{padding-right:0}.ant-steps-rtl.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:last-child .ant-steps-item-title{padding-left:0}.ant-steps-rtl .ant-steps-item-custom .ant-steps-item-icon>.ant-steps-icon{right:.5px;left:auto}.ant-steps-rtl.ant-steps-navigation.ant-steps-small .ant-steps-item-container{margin-right:-12px;margin-left:0}.ant-steps-rtl.ant-steps-navigation .ant-steps-item-container{margin-right:-16px;margin-left:0;text-align:right}.ant-steps-rtl.ant-steps-navigation .ant-steps-item-container .ant-steps-item-title{padding-left:0}.ant-steps-rtl.ant-steps-navigation .ant-steps-item::after{right:100%;left:auto;margin-right:-2px;margin-left:0;transform:rotate(225deg)}.ant-steps-rtl.ant-steps-small.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item{padding-right:12px;padding-left:0}.ant-steps-rtl.ant-steps-small.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:first-child{padding-right:0}.ant-steps-rtl.ant-steps-small .ant-steps-item-title{padding-right:0;padding-left:12px}.ant-steps-rtl.ant-steps-vertical>.ant-steps-item .ant-steps-item-icon{float:right;margin-right:0;margin-left:16px}.ant-steps-rtl.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{right:16px;left:auto}.ant-steps-rtl.ant-steps-vertical.ant-steps-small .ant-steps-item-container .ant-steps-item-tail{right:12px;left:auto}.ant-steps-rtl.ant-steps-label-vertical .ant-steps-item-title{padding-left:0}.ant-steps-rtl.ant-steps-dot .ant-steps-item-tail,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-tail{margin:0 70px 0 0}.ant-steps-rtl.ant-steps-dot .ant-steps-item-tail::after,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-tail::after{margin-right:12px;margin-left:0}.ant-steps-rtl.ant-steps-dot .ant-steps-item:first-child .ant-steps-icon-dot,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item:first-child .ant-steps-icon-dot{right:2px;left:auto}.ant-steps-rtl.ant-steps-dot .ant-steps-item-icon,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-icon{margin-right:67px;margin-left:0}.ant-steps-rtl.ant-steps-dot .ant-steps-item-icon .ant-steps-icon-dot,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-icon .ant-steps-icon-dot{float:right}.ant-steps-rtl.ant-steps-dot .ant-steps-item-icon .ant-steps-icon-dot::after,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-icon .ant-steps-icon-dot::after{right:-26px;left:auto}.ant-steps-rtl.ant-steps-vertical.ant-steps-dot .ant-steps-item-icon{margin-right:0;margin-left:16px}.ant-steps-rtl.ant-steps-vertical.ant-steps-dot .ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{right:-9px;left:auto}.ant-steps-rtl.ant-steps-vertical.ant-steps-dot .ant-steps-item:first-child .ant-steps-icon-dot{right:0;left:auto}.ant-steps-rtl.ant-steps-vertical.ant-steps-dot .ant-steps-item-process .ant-steps-icon-dot{right:-2px;left:auto}.ant-steps-rtl.ant-steps-with-progress.ant-steps-horizontal.ant-steps-label-horizontal .ant-steps-item:first-child{padding-right:4px;padding-left:0}.ant-steps-rtl.ant-steps-with-progress.ant-steps-horizontal.ant-steps-label-horizontal .ant-steps-item:first-child.ant-steps-item-active{padding-right:4px}.ant-steps-with-progress .ant-steps-item .ant-steps-item-tail{top:4px!important}.ant-steps-with-progress.ant-steps-horizontal .ant-steps-item:first-child{padding-bottom:4px;padding-left:4px}.ant-steps-with-progress .ant-steps-item-icon{position:relative}.ant-steps-with-progress .ant-steps-item-icon .ant-progress{position:absolute;top:-5px;right:-5px;bottom:-5px;left:-5px}.ant-switch{margin:0;padding:0;font-size:14px;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;position:relative;display:inline-block;box-sizing:border-box;min-width:44px;height:22px;line-height:22px;vertical-align:middle;background-image:linear-gradient(to right,rgba(255,255,255,.3),rgba(255,255,255,.3)),linear-gradient(to right,#141414,#141414);border:0;border-radius:100px;cursor:pointer;transition:all .2s;user-select:none}.ant-switch:focus{outline:0;box-shadow:0 0 0 2px rgba(255,255,255,.1)}.ant-switch-checked:focus{box-shadow:0 0 0 2px #111b26}.ant-switch:focus:hover{box-shadow:none}.ant-switch-checked{background:#177ddc}.ant-switch-disabled,.ant-switch-loading{cursor:not-allowed;opacity:.4}.ant-switch-disabled *,.ant-switch-loading *{box-shadow:none;cursor:not-allowed}.ant-switch-inner{display:block;margin:0 7px 0 25px;color:#fff;font-size:12px;transition:margin .2s}.ant-switch-handle,.ant-switch-handle::before{position:absolute;transition:all .2s ease-in-out}.ant-switch-checked .ant-switch-inner{margin:0 25px 0 7px}.ant-switch-handle{top:2px;left:2px;width:18px;height:18px}.ant-switch-handle::before{top:0;right:0;bottom:0;left:0;background-color:#fff;border-radius:9px;box-shadow:0 2px 4px 0 rgba(0,35,11,.2);content:''}.ant-switch-checked .ant-switch-handle{left:calc(100% - 18px - 2px)}.ant-switch:not(.ant-switch-disabled):active .ant-switch-handle::before{right:-30%;left:0}.ant-switch:not(.ant-switch-disabled):active.ant-switch-checked .ant-switch-handle::before{right:0;left:-30%}.ant-switch-loading-icon.anticon{position:relative;top:2px;color:rgba(0,0,0,.65);vertical-align:top}.ant-switch-checked .ant-switch-loading-icon{color:#177ddc}.ant-switch-small{min-width:28px;height:16px;line-height:16px}.ant-table,.ant-table-filter-dropdown,.ant-tabs-dropdown{font-variant:tabular-nums;line-height:1.5715;font-feature-settings:tnum;list-style:none;box-sizing:border-box}.ant-switch-small .ant-switch-inner{margin:0 5px 0 18px;font-size:12px}.ant-switch-small .ant-switch-handle{width:12px;height:12px}.ant-switch-small .ant-switch-loading-icon{top:1.5px;font-size:9px}.ant-table,.ant-table.ant-table-middle,.ant-table.ant-table-small{font-size:14px}.ant-switch-small.ant-switch-checked .ant-switch-inner{margin:0 18px 0 5px}.ant-switch-small.ant-switch-checked .ant-switch-handle{left:calc(100% - 12px - 2px)}.ant-switch-rtl .ant-switch-inner{margin:0 25px 0 7px}.ant-switch-rtl .ant-switch-handle{right:2px;left:auto}.ant-switch-rtl:not(.ant-switch-rtl-disabled):active .ant-switch-handle::before{right:0;left:-30%}.ant-switch-rtl:not(.ant-switch-rtl-disabled):active.ant-switch-checked .ant-switch-handle::before{right:-30%;left:0}.ant-switch-rtl.ant-switch-checked .ant-switch-inner{margin:0 7px 0 25px}.ant-switch-rtl.ant-switch-checked .ant-switch-handle{right:calc(100% - 18px - 2px)}.ant-switch-rtl.ant-switch-small.ant-switch-checked .ant-switch-handle{right:calc(100% - 12px - 2px)}nz-switch{display:inline-block}.ant-table-wrapper::after,.ant-table-wrapper::before{display:table;content:''}.ant-table.ant-table-middle .ant-table-footer,.ant-table.ant-table-middle .ant-table-tbody>tr>td,.ant-table.ant-table-middle .ant-table-thead>tr>th,.ant-table.ant-table-middle .ant-table-title,.ant-table.ant-table-middle tfoot>tr>td,.ant-table.ant-table-middle tfoot>tr>th{padding:12px 8px}.ant-table.ant-table-middle .ant-table-filter-trigger{margin-right:-4px}.ant-table.ant-table-middle .ant-table-expanded-row-fixed{margin:-12px -8px}.ant-table.ant-table-middle .ant-table-tbody .ant-table-wrapper:only-child .ant-table{margin:-12px -8px -12px 25px}.ant-table.ant-table-middle .ant-table-selection-column{padding-inline-start:2px}.ant-table.ant-table-small .ant-table-footer,.ant-table.ant-table-small .ant-table-tbody>tr>td,.ant-table.ant-table-small .ant-table-thead>tr>th,.ant-table.ant-table-small .ant-table-title,.ant-table.ant-table-small tfoot>tr>td,.ant-table.ant-table-small tfoot>tr>th{padding:8px}.ant-table.ant-table-small .ant-table-filter-trigger{margin-right:-4px}.ant-table.ant-table-small .ant-table-expanded-row-fixed{margin:-8px}.ant-table.ant-table-small .ant-table-tbody .ant-table-wrapper:only-child .ant-table{margin:-8px -8px -8px 25px}.ant-table.ant-table-small .ant-table-selection-column{padding-inline-start:2px}.ant-table.ant-table-bordered>.ant-table-title{border:1px solid #303030;border-bottom:0}.ant-table-thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr:not(:last-child)>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr:not(:last-child)>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr:not(:last-child)>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr:not(:last-child)>th{border-bottom:1px solid #303030}.ant-table.ant-table-bordered>.ant-table-container{border-left:1px solid #303030}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr>th{border-right:1px solid #303030}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr>th::before,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr>th::before,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr>th::before,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr>th::before{background-color:transparent!important}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tfoot>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tfoot>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tfoot>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tfoot>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr>.ant-table-cell-fix-right-first::after{border-right:1px solid #303030}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-16px -17px}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>td>.ant-table-expanded-row-fixed::after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>td>.ant-table-expanded-row-fixed::after{position:absolute;top:0;right:1px;bottom:0;border-right:1px solid #303030;content:''}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table{border-top:1px solid #303030}.ant-table.ant-table-bordered.ant-table-scroll-horizontal>.ant-table-container>.ant-table-body>table>tbody>tr.ant-table-expanded-row>td,.ant-table.ant-table-bordered.ant-table-scroll-horizontal>.ant-table-container>.ant-table-body>table>tbody>tr.ant-table-placeholder>td{border-right:0}.ant-table.ant-table-bordered.ant-table-middle>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered.ant-table-middle>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-12px -9px}.ant-table.ant-table-bordered.ant-table-small>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered.ant-table-small>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-8px -9px}.ant-table.ant-table-bordered>.ant-table-footer{border:1px solid #303030;border-top:0}.ant-table-cell .ant-table-container:first-child{border-top:0}.ant-table-cell-scrollbar:not([rowspan]){box-shadow:0 1px 0 1px #1d1d1d}.ant-table-wrapper{clear:both;max-width:100%}.ant-table-wrapper::after{clear:both}.ant-table{margin:0;padding:0;position:relative;background:#141414;border-radius:2px}.ant-table table,.ant-table-title{border-radius:2px 2px 0 0}.ant-table table{width:100%;text-align:left;border-collapse:separate;border-spacing:0}.ant-table tfoot>tr>td,.ant-table tfoot>tr>th,.ant-table-tbody>tr>td,.ant-table-thead>tr>th{position:relative;padding:16px;overflow-wrap:break-word}.ant-table-cell-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all}.ant-table-cell-ellipsis.ant-table-cell-fix-left-last,.ant-table-cell-ellipsis.ant-table-cell-fix-right-first{overflow:visible}.ant-table-cell-ellipsis.ant-table-cell-fix-left-last .ant-table-cell-content,.ant-table-cell-ellipsis.ant-table-cell-fix-right-first .ant-table-cell-content{display:block;overflow:hidden;text-overflow:ellipsis}.ant-table-cell-ellipsis .ant-table-column-title{overflow:hidden;text-overflow:ellipsis;word-break:keep-all}.ant-table-title{padding:16px}.ant-table-footer{padding:16px;background:rgba(255,255,255,.04)}.ant-table-thead>tr>th{position:relative;font-weight:500;text-align:left;background:#1d1d1d;transition:background .3s ease}.ant-table-thead>tr>th[colspan]:not([colspan='1']){text-align:center}.ant-table-thead>tr>th:not(:last-child):not(.ant-table-selection-column):not(.ant-table-row-expand-icon-cell):not([colspan])::before{position:absolute;top:50%;right:0;width:1px;height:1.6em;background-color:rgba(255,255,255,.08);transform:translateY(-50%);transition:background-color .3s;content:''}.ant-table-thead>tr:not(:last-child)>th[colspan]{border-bottom:0}.ant-table-tbody>tr>td{border-bottom:1px solid #303030;transition:background .3s}.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td,.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td,.notice-icon .ant-list-item:last-child{border-bottom:0}.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table,.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table{margin:-16px -16px -16px 33px}.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:first-child,.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:last-child,.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:first-child,.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:last-child{border-radius:0}.ant-table-tbody>tr.ant-table-row:hover>td,.ant-table-tbody>tr>td.ant-table-cell-row-hover{background:#262626}.ant-table-tbody>tr.ant-table-row-selected>td{background:#111b26;border-color:rgba(0,0,0,.03)}.ant-table-tbody>tr.ant-table-row-selected:hover>td{background:#0e161f}.ant-table-summary{position:relative;z-index:2;background:#141414}div.ant-table-summary{box-shadow:0 -1px 0 #303030}.ant-table-summary>tr>td,.ant-table-summary>tr>th{border-bottom:1px solid #303030}.ant-table-pagination.ant-pagination{margin:16px 0}.ant-table-pagination{display:flex;flex-wrap:wrap;row-gap:8px}.ant-table-pagination>*{flex:none}.ant-table-pagination-left{justify-content:flex-start}.ant-table-pagination-center{justify-content:center}.ant-table-pagination-right{justify-content:flex-end}.ant-table-thead th.ant-table-column-has-sorters{outline:0;cursor:pointer;transition:all .3s}.ant-table-thead th.ant-table-column-has-sorters:hover{background:#303030}.ant-table-thead th.ant-table-column-has-sorters:hover::before{background-color:transparent!important}.ant-table-thead th.ant-table-column-has-sorters:focus-visible{color:#177ddc}.ant-table-thead th.ant-table-column-has-sorters.ant-table-cell-fix-left:hover,.ant-table-thead th.ant-table-column-has-sorters.ant-table-cell-fix-right:hover{background:#222}.ant-table-thead th.ant-table-column-sort{background:#262626}.ant-table-thead th.ant-table-column-sort::before{background-color:transparent!important}td.ant-table-column-sort{background:rgba(255,255,255,.01)}.ant-table-column-title{position:relative;z-index:1;flex:1}.ant-table-column-sorters{display:flex;flex:auto;align-items:center;justify-content:space-between}.ant-table-column-sorters::after{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;content:''}.ant-table-column-sorter{margin-left:4px;color:#bfbfbf;font-size:0;transition:color .3s}.ant-table-column-sorter-inner{display:inline-flex;flex-direction:column;align-items:center}.ant-table-column-sorter-down,.ant-table-column-sorter-up{font-size:11px}.ant-table-column-sorter-down.active,.ant-table-column-sorter-up.active{color:#177ddc}.ant-table-column-sorter-up+.ant-table-column-sorter-down{margin-top:-.3em}.ant-table-column-sorters:hover .ant-table-column-sorter{color:#a6a6a6}.ant-table-filter-column{display:flex;justify-content:space-between}.ant-table-filter-trigger{position:relative;display:flex;align-items:center;margin:-4px -8px -4px 4px;padding:0 4px;color:#bfbfbf;font-size:12px;border-radius:2px;cursor:pointer;transition:all .3s}.ant-table-filter-trigger:hover{color:rgba(255,255,255,.45);background:#434343}.ant-table-filter-trigger.active{color:#177ddc}.ant-table-filter-dropdown{margin:0;padding:0;color:rgba(255,255,255,.85);font-size:14px;min-width:120px;background-color:#1f1f1f;border-radius:2px;box-shadow:0 3px 6px -4px rgba(0,0,0,.48),0 6px 16px 0 rgba(0,0,0,.32),0 9px 28px 8px rgba(0,0,0,.2)}.ant-table-filter-dropdown .ant-dropdown-menu{max-height:264px;overflow-x:hidden;border:0;box-shadow:none}.ant-table-filter-dropdown .ant-dropdown-menu:empty::after{display:block;padding:8px 0;color:rgba(255,255,255,.3);font-size:12px;text-align:center;content:'Not Found'}.ant-table-filter-dropdown-tree{padding:8px 8px 0}.ant-table-filter-dropdown-tree .ant-tree-treenode .ant-tree-node-content-wrapper:hover{background-color:rgba(255,255,255,.08)}.ant-table-filter-dropdown-tree .ant-tree-treenode-checkbox-checked .ant-tree-node-content-wrapper,.ant-table-filter-dropdown-tree .ant-tree-treenode-checkbox-checked .ant-tree-node-content-wrapper:hover{background-color:#11263c}.ant-table-filter-dropdown-search{padding:8px;border-bottom:1px #303030 solid}.ant-table-filter-dropdown-search-input input{min-width:140px}.ant-table-filter-dropdown-search-input .anticon{color:rgba(255,255,255,.3)}.ant-table-filter-dropdown-checkall{width:100%;margin-bottom:4px;margin-left:4px}.ant-table-filter-dropdown-submenu>ul{max-height:calc(100vh - 130px);overflow-x:hidden;overflow-y:auto}.ant-table-custom-column .ant-table-tbody .ant-table-row td,.ant-table-custom-column .ant-table-thead .ant-table-row th,.ant-table-filter-dropdown-btns{overflow:hidden}.ant-table-filter-dropdown .ant-checkbox-wrapper+span,.ant-table-filter-dropdown-submenu .ant-checkbox-wrapper+span{padding-left:8px}.ant-table-filter-dropdown-btns{display:flex;justify-content:space-between;padding:7px 8px;background-color:#1f1f1f;border-top:1px solid #303030}.ant-table-selection-col{width:32px}.ant-table-bordered .ant-table-selection-col{width:50px}table tr td.ant-table-selection-column,table tr th.ant-table-selection-column{padding-right:8px;padding-left:8px;text-align:center}table tr td.ant-table-selection-column .ant-radio-wrapper,table tr th.ant-table-selection-column .ant-radio-wrapper{margin-right:0}table tr th.ant-table-selection-column.ant-table-cell-fix-left{z-index:3}table tr th.ant-table-selection-column::after{background-color:transparent!important}.ant-table-selection{position:relative;display:inline-flex;flex-direction:column}.ant-table-selection-extra{position:absolute;top:0;z-index:1;cursor:pointer;transition:all .3s;margin-inline-start:100%;padding-inline-start:4px}.ant-table-selection-extra .anticon{color:#bfbfbf;font-size:10px}.ant-table-selection-extra .anticon:hover{color:#a6a6a6}.ant-table-expand-icon-col{width:48px}.ant-table-row-expand-icon-cell{text-align:center}.ant-table-row-indent{float:left;height:1px}.ant-table-row-expand-icon{text-decoration:none;cursor:pointer;position:relative;display:inline-flex;float:left;box-sizing:border-box;width:17px;height:17px;padding:0;color:inherit;line-height:17px;background:0 0;border:1px solid #303030;border-radius:2px;outline:0;transform:scale(.94117647);transition:all .3s;user-select:none}.ant-table-row-expand-icon:focus,.ant-table-row-expand-icon:hover{color:#165996}.ant-table-row-expand-icon:active{color:#388ed3}.ant-table-row-expand-icon:active,.ant-table-row-expand-icon:focus,.ant-table-row-expand-icon:hover{border-color:currentcolor}.ant-table-row-expand-icon::after,.ant-table-row-expand-icon::before{position:absolute;background:currentcolor;transition:transform .3s ease-out;content:''}.ant-table-row-expand-icon::before{top:7px;right:3px;left:3px;height:1px}.ant-table-row-expand-icon::after{top:3px;bottom:3px;left:7px;width:1px;transform:rotate(90deg)}.ant-table-row-expand-icon-collapsed::before{transform:rotate(-180deg)}.ant-table-row-expand-icon-collapsed::after{transform:rotate(0)}.ant-table-row-expand-icon-spaced{background:0 0;border:0;visibility:hidden}.ant-table-row-expand-icon-spaced::after,.ant-table-row-expand-icon-spaced::before{display:none;content:none}.ant-table-row-indent+.ant-table-row-expand-icon{margin-top:2.5px;margin-right:8px}tr.ant-table-expanded-row:hover>td,tr.ant-table-expanded-row>td{background:#1d1d1d}tr.ant-table-expanded-row .ant-descriptions-view{display:flex}tr.ant-table-expanded-row .ant-descriptions-view table{flex:auto;width:auto}.ant-table .ant-table-expanded-row-fixed{position:relative;margin:-16px;padding:16px}.ant-table-tbody>tr.ant-table-placeholder{text-align:center}.ant-table-empty .ant-table-tbody>tr.ant-table-placeholder{color:rgba(255,255,255,.3)}.ant-table-tbody>tr.ant-table-placeholder:hover>td{background:#141414}.ant-table-cell-fix-left,.ant-table-cell-fix-right{position:sticky!important;z-index:2;background:#141414}.ant-table .ant-table-container::after,.ant-table .ant-table-container::before,.ant-table-cell-fix-left-first::after,.ant-table-cell-fix-left-last::after,.ant-table-cell-fix-right-first::after,.ant-table-cell-fix-right-last::after{position:absolute;width:30px;transition:box-shadow .3s;pointer-events:none;top:0;content:''}.ant-table-cell-fix-left-first::after,.ant-table-cell-fix-left-last::after{right:0;bottom:-1px;transform:translateX(100%)}.ant-table-cell-fix-right-first::after,.ant-table-cell-fix-right-last::after{bottom:-1px;left:0;transform:translateX(-100%)}.ant-table .ant-table-container::after,.ant-table .ant-table-container::before{bottom:0;z-index:1}.ant-table .ant-table-container::before{left:0}.ant-table .ant-table-container::after{right:0}.ant-table-ping-left:not(.ant-table-has-fix-left) .ant-table-container{position:relative}.ant-table-ping-left .ant-table-cell-fix-left-first::after,.ant-table-ping-left .ant-table-cell-fix-left-last::after,.ant-table-ping-left:not(.ant-table-has-fix-left) .ant-table-container::before{box-shadow:inset 10px 0 8px -8px rgba(0,0,0,.45)}.ant-table-ping-left .ant-table-cell-fix-left-last::before{background-color:transparent!important}.ant-table-ping-right:not(.ant-table-has-fix-right) .ant-table-container{position:relative}.ant-table-ping-right .ant-table-cell-fix-right-first::after,.ant-table-ping-right .ant-table-cell-fix-right-last::after,.ant-table-ping-right:not(.ant-table-has-fix-right) .ant-table-container::after{box-shadow:inset -10px 0 8px -8px rgba(0,0,0,.45)}.ant-table-sticky-holder{position:sticky;z-index:calc(2 + 1);background:#141414}.ant-table-sticky-scroll{position:sticky;bottom:0;z-index:calc(2 + 1);display:flex;align-items:center;background:#fcfcfc;border-top:1px solid #303030;opacity:.6}.ant-table-sticky-scroll:hover{transform-origin:center bottom}.ant-table-wrapper-rtl .ant-table-row-expand-icon::after,.ant-tree-switcher_close .ant-tree-switcher-icon svg{transform:rotate(-90deg)}.ant-table-sticky-scroll-bar{height:8px;background-color:rgba(0,0,0,.35);border-radius:4px}.ant-table-sticky-scroll-bar-active,.ant-table-sticky-scroll-bar:hover{background-color:rgba(0,0,0,.8)}.ant-table-custom-column col{width:auto!important;min-width:auto!important;display:none}.ant-table-custom-column .ant-table-thead .ant-table-row{width:100%;display:flex;justify-content:space-between}.ant-table-custom-column .ant-table-tbody .ant-table-row{width:100%;display:flex;justify-content:space-between}.ant-table-custom-column .ant-table-tbody .ant-table-row .nz-disable-td{width:100%}.ant-table-custom-column .ant-table-fixed tr .ant-table-cell-fix-left-last,.ant-table-custom-column .ant-table-fixed tr .ant-table-cell-fix-right-first{overflow:visible}.ant-table-custom-column .ant-table-fixed .ant-table-row{width:100%}@media all and (-ms-high-contrast:none){.ant-table-ping-left .ant-table-cell-fix-left-last::after,.ant-table-ping-right .ant-table-cell-fix-right-first::after{box-shadow:none!important}}.ant-table-title+.ant-table-container{border-top-left-radius:0;border-top-right-radius:0}.ant-table-title+.ant-table-container table>thead>tr:first-child th:first-child,.ant-table-title+.ant-table-container table>thead>tr:first-child th:last-child{border-radius:0}.ant-table-container,.ant-table-container table>thead>tr:first-child th:first-child{border-top-left-radius:2px}.ant-table-container,.ant-table-container table>thead>tr:first-child th:last-child{border-top-right-radius:2px}.ant-table-footer{border-radius:0 0 2px 2px}.ant-table-wrapper-rtl .ant-table table{text-align:right}.ant-table-wrapper-rtl .ant-table-thead>tr>th[colspan]:not([colspan='1']){text-align:center}.ant-table-wrapper-rtl .ant-table-thead>tr>th:not(:last-child):not(.ant-table-selection-column):not(.ant-table-row-expand-icon-cell):not([colspan])::before{right:auto;left:0}.ant-table-wrapper-rtl .ant-table-thead>tr>th{text-align:right}.ant-table-wrapper-rtl .ant-table thead>tr>th.ant-table-selection-column,.ant-table-wrapper-rtl .ant-table-selection{text-align:center}.ant-table-tbody>tr .ant-table-wrapper:only-child .ant-table.ant-table-rtl{margin:-16px 33px -16px -16px}.ant-table-wrapper.ant-table-wrapper-rtl .ant-table-pagination-left{justify-content:flex-end}.ant-table-wrapper.ant-table-wrapper-rtl .ant-table-pagination-right{justify-content:flex-start}.ant-table-wrapper-rtl .ant-table-column-sorter{margin-right:4px;margin-left:0}.ant-table-wrapper-rtl .ant-table-filter-column-title{padding:16px 16px 16px 2.3em}.ant-table-rtl .ant-table-thead tr th.ant-table-column-has-sorters .ant-table-filter-column-title{padding:0 0 0 2.3em}.ant-table-wrapper-rtl .ant-table-filter-trigger{margin:-4px 4px -4px -8px}.ant-dropdown-menu-submenu-rtl.ant-table-filter-dropdown .ant-checkbox-wrapper+span,.ant-dropdown-menu-submenu-rtl.ant-table-filter-dropdown-submenu .ant-checkbox-wrapper+span,.ant-dropdown-rtl .ant-table-filter-dropdown .ant-checkbox-wrapper+span,.ant-dropdown-rtl .ant-table-filter-dropdown-submenu .ant-checkbox-wrapper+span{padding-right:8px;padding-left:0}.ant-table-wrapper-rtl .ant-table-row-expand-icon,.ant-table-wrapper-rtl .ant-table-row-indent{float:right}.ant-table-wrapper-rtl .ant-table-row-indent+.ant-table-row-expand-icon{margin-right:0;margin-left:8px}.ant-table-wrapper-rtl .ant-table-row-expand-icon-collapsed::before{transform:rotate(180deg)}.ant-table-wrapper-rtl .ant-table-row-expand-icon-collapsed::after{transform:rotate(0)}nz-table,nz-table-inner-default,nz-table-inner-scroll,nz-table-selection,nz-table-title-footer{display:block}nz-filter-trigger{display:inline-flex}.nz-table-out-bordered>.ant-table-container,.nz-table-out-bordered>.ant-table-title{border:1px solid #303030;border-bottom:0}.nz-table-out-bordered>.ant-table-footer{border:1px solid #303030;border-top:0}cdk-virtual-scroll-viewport.ant-table-body{overflow-y:scroll}.nz-table-hide-scrollbar{scrollbar-color:#1d1d1d #1d1d1d}.nz-table-hide-scrollbar::-webkit-scrollbar{background-color:#1d1d1d}.ant-table.ant-table-small .nz-table-hide-scrollbar{scrollbar-color:#1d1d1d #1d1d1d}.ant-table.ant-table-small .nz-table-hide-scrollbar::-webkit-scrollbar{background-color:transparent}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>thead>tr>th{border-right:1px solid #303030}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>thead>tr:not(:last-child)>th{border-bottom:1px solid #303030}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tfoot>tr>.ant-table-cell-fix-right-first::after,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>thead>tr>.ant-table-cell-fix-right-first::after{border-right:1px solid #303030}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-16px -17px}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td>.ant-table-expanded-row-fixed::after{position:absolute;top:0;right:1px;bottom:0;border-right:1px solid #303030;content:''}.ant-table.ant-table-bordered.ant-table-scroll-horizontal>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr.ant-table-expanded-row>td,.ant-table.ant-table-bordered.ant-table-scroll-horizontal>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr.ant-table-placeholder>td{border-right:0}.ant-table.ant-table-bordered.ant-table-middle>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-12px -9px}.ant-table.ant-table-bordered.ant-table-small>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-8px -9px}.ant-tabs-small>.ant-tabs-nav .ant-tabs-tab{padding:8px 0;font-size:14px}.ant-tabs-large>.ant-tabs-nav .ant-tabs-tab{padding:16px 0;font-size:16px}.ant-tabs-card.ant-tabs-small>.ant-tabs-nav .ant-tabs-tab{padding:6px 16px}.ant-tabs-card.ant-tabs-large>.ant-tabs-nav .ant-tabs-tab{padding:7px 16px 6px}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab{margin:0 0 0 32px}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab:last-of-type{margin-left:0}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab .anticon{margin-right:0;margin-left:12px}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab .ant-tabs-tab-remove{margin-right:8px;margin-left:-4px}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab .ant-tabs-tab-remove .anticon{margin:0}.ant-tabs-rtl.ant-tabs-left>.ant-tabs-content-holder,.ant-tabs-rtl.ant-tabs-right>.ant-tabs-nav{order:0}.ant-tabs-rtl.ant-tabs-right>.ant-tabs-content-holder{order:1}.ant-tabs-rtl.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs-rtl.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-rtl.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs-rtl.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-rtl.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs-rtl.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-rtl.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs-rtl.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab{margin-right:2px;margin-left:0}.ant-tabs-dropdown-rtl .ant-tabs-dropdown-menu-item{text-align:right}.ant-tabs-bottom,.ant-tabs-top{flex-direction:column}.ant-tabs-bottom>.ant-tabs-nav,.ant-tabs-bottom>div>.ant-tabs-nav,.ant-tabs-top>.ant-tabs-nav,.ant-tabs-top>div>.ant-tabs-nav{margin:0 0 16px}.ant-tabs-bottom>.ant-tabs-nav::before,.ant-tabs-bottom>div>.ant-tabs-nav::before,.ant-tabs-top>.ant-tabs-nav::before,.ant-tabs-top>div>.ant-tabs-nav::before{position:absolute;right:0;left:0;border-bottom:1px solid #303030;content:''}.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-top>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-ink-bar{height:2px}.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-top>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-ink-bar-animated{transition:width .3s,left .3s,right .3s}.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap::before{top:0;bottom:0;width:30px}.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap::before{left:0;box-shadow:inset 10px 0 8px -8px rgba(0,0,0,.08)}.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap::after{right:0;box-shadow:inset -10px 0 8px -8px rgba(0,0,0,.08)}.ant-tabs-top>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-top>.ant-tabs-nav::before,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-top>div>.ant-tabs-nav::before{bottom:0}.ant-tabs-bottom>.ant-tabs-nav,.ant-tabs-bottom>div>.ant-tabs-nav{order:1;margin-top:16px;margin-bottom:0}.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-bottom>.ant-tabs-nav::before,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-bottom>div>.ant-tabs-nav::before{top:0}.ant-tabs-bottom>.ant-tabs-content-holder,.ant-tabs-bottom>div>.ant-tabs-content-holder{order:0}.ant-tabs-left>.ant-tabs-nav,.ant-tabs-left>div>.ant-tabs-nav,.ant-tabs-right>.ant-tabs-nav,.ant-tabs-right>div>.ant-tabs-nav{flex-direction:column;min-width:50px}.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab{padding:8px 24px;text-align:center}.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab{margin:16px 0 0}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap{flex-direction:column}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap::before{right:0;left:0;height:30px}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap::before{top:0;box-shadow:inset 0 10px 8px -8px rgba(0,0,0,.08)}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap::after{bottom:0;box-shadow:inset 0 -10px 8px -8px rgba(0,0,0,.08)}.ant-tabs-dropdown-menu,.ant-tooltip-inner,.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu,.theme-btn .ant-avatar{box-shadow:0 3px 6px -4px rgba(0,0,0,.48),0 6px 16px 0 rgba(0,0,0,.32),0 9px 28px 8px rgba(0,0,0,.2)}.ant-tabs-left>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-right>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-ink-bar{width:2px}.ant-tabs-left>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-right>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-ink-bar-animated{transition:height .3s,top .3s}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-operations,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-operations,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-operations,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-operations{flex:1 0 auto;flex-direction:column}.ant-tabs-left>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-ink-bar{right:0}.ant-tabs-left>.ant-tabs-content-holder,.ant-tabs-left>div>.ant-tabs-content-holder{margin-left:-1px;border-left:1px solid #303030}.ant-tabs-left>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane,.ant-tabs-left>div>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane{padding-left:24px}.ant-tabs-right>.ant-tabs-nav,.ant-tabs-right>div>.ant-tabs-nav{order:1}.ant-tabs-right>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-ink-bar{left:0}.ant-tabs-right>.ant-tabs-content-holder,.ant-tabs-right>div>.ant-tabs-content-holder{order:0;margin-right:-1px;border-right:1px solid #303030}.ant-tabs-right>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane,.ant-tabs-right>div>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane{padding-right:24px}.ant-tabs-dropdown{margin:0;padding:0;color:rgba(255,255,255,.85);font-size:14px;position:absolute;top:-9999px;left:-9999px;z-index:1050;display:block}.ant-tabs-dropdown-hidden{display:none}.ant-tabs-dropdown-menu{max-height:200px;margin:0;padding:4px 0;overflow-x:hidden;overflow-y:auto;text-align:left;list-style-type:none;background-color:#1f1f1f;background-clip:padding-box;border-radius:2px;outline:0}.ant-tabs-dropdown-menu-item{display:flex;align-items:center;min-width:120px;margin:0;padding:5px 12px;overflow:hidden;color:rgba(255,255,255,.85);font-weight:400;font-size:14px;line-height:22px;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:all .3s}.ant-tabs-dropdown-menu-item>span{flex:1;white-space:nowrap}.ant-tabs-dropdown-menu-item-remove{flex:none;margin-left:12px;color:rgba(255,255,255,.45);font-size:12px;background:0 0;border:0;cursor:pointer}.ant-tabs-dropdown-menu-item-remove:hover{color:#165996}.ant-tabs-dropdown-menu-item:hover{background:rgba(255,255,255,.08)}.ant-tabs-dropdown-menu-item-disabled,.ant-tabs-dropdown-menu-item-disabled:hover{color:rgba(255,255,255,.3);background:0 0;cursor:not-allowed}.ant-tabs-card>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card>div>.ant-tabs-nav .ant-tabs-tab{margin:0;padding:8px 16px;background:rgba(255,255,255,.04);border:1px solid #303030;transition:all .3s cubic-bezier(.645,.045,.355,1)}.ant-tabs,.ant-timeline{line-height:1.5715;font-feature-settings:tnum;padding:0;font-variant:tabular-nums}.ant-tabs-card>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card>div>.ant-tabs-nav .ant-tabs-tab-active{color:#177ddc;background:#141414}.ant-tabs-card>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-card>div>.ant-tabs-nav .ant-tabs-ink-bar{visibility:hidden}.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab{margin-left:2px}.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-tab{border-radius:2px 2px 0 0}.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-tab-active{border-bottom-color:#141414}.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-tab{border-radius:0 0 2px 2px}.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-tab-active{border-top-color:#141414}.ant-tabs-card.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab{margin-top:2px}.ant-tabs-card.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab{border-radius:2px 0 0 2px}.ant-tabs-card.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab-active{border-right-color:#141414}.ant-tabs-card.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab{border-radius:0 2px 2px 0}.ant-tabs-card.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab-active{border-left-color:#141414}.ant-tabs{box-sizing:border-box;margin:0;color:rgba(255,255,255,.85);font-size:14px;list-style:none;display:flex}.ant-tabs>.ant-tabs-nav,.ant-tabs>div>.ant-tabs-nav{position:relative;display:flex;flex:none;align-items:center}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-wrap,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-wrap{position:relative;display:inline-block;display:flex;flex:auto;align-self:stretch;overflow:hidden;white-space:nowrap;transform:translate(0)}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-wrap::before{position:absolute;z-index:1;opacity:0;transition:opacity .3s;content:'';pointer-events:none}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-list{position:relative;display:flex;transition:transform .3s}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-operations,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-operations{display:flex;align-self:stretch}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-operations-hidden,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-operations-hidden{position:absolute;visibility:hidden;pointer-events:none}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-more,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-more{position:relative;padding:8px 16px;background:0 0;border:0}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-more::after,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-more::after{position:absolute;right:0;bottom:0;left:0;height:5px;transform:translateY(100%);content:''}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add{min-width:40px;margin-left:2px;padding:0 8px;background:rgba(255,255,255,.04);border:1px solid #303030;border-radius:2px 2px 0 0;outline:0;cursor:pointer;transition:all .3s cubic-bezier(.645,.045,.355,1)}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add:hover,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add:hover{color:#165996}.ant-tabs-tab-btn:active,.ant-tabs-tab-btn:focus,.ant-tabs-tab-remove:active,.ant-tabs-tab-remove:focus,.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add:active,.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add:focus,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add:active,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add:focus{color:#388ed3}.ant-tabs-extra-content{flex:none}.ant-tabs-centered>.ant-tabs-nav .ant-tabs-nav-wrap:not([class*=ant-tabs-nav-wrap-ping]),.ant-tabs-centered>div>.ant-tabs-nav .ant-tabs-nav-wrap:not([class*=ant-tabs-nav-wrap-ping]){justify-content:center}.ant-tabs-ink-bar{position:absolute;background:#177ddc;pointer-events:none}.ant-tabs-dropdown-menu-item a[nz-tab-link],.ant-tabs-tab{position:relative}.ant-tabs-tab,.ant-tabs-tab-remove{background:0 0;cursor:pointer;outline:0}.ant-tabs-tab{display:inline-flex;align-items:center;padding:12px 0;font-size:14px;border:0}.ant-tabs-tab-btn{outline:0;transition:all .3s}.ant-tabs-tab-remove{flex:none;margin-right:-4px;margin-left:8px;color:rgba(255,255,255,.45);font-size:12px;border:none;transition:all .3s}.ant-tabs-tab-remove:hover{color:rgba(255,255,255,.85)}.ant-tabs-tab:hover{color:#165996}.ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn{color:#177ddc;text-shadow:0 0 .25px currentcolor}.ant-tabs-tab.ant-tabs-tab-disabled{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-tabs-tab.ant-tabs-tab-disabled .ant-tabs-tab-btn:active,.ant-tabs-tab.ant-tabs-tab-disabled .ant-tabs-tab-btn:focus,.ant-tabs-tab.ant-tabs-tab-disabled .ant-tabs-tab-remove:active,.ant-tabs-tab.ant-tabs-tab-disabled .ant-tabs-tab-remove:focus{color:rgba(255,255,255,.3)}.ant-tabs-tab .ant-tabs-tab-remove .anticon{margin:0}.ant-tabs-tab .anticon{margin-right:12px}.ant-tabs-tab+.ant-tabs-tab{margin:0 0 0 32px}.ant-tabs-content{display:flex;width:100%}.ant-tabs-content-holder{flex:auto;min-width:0;min-height:0}.ant-tabs-content-animated{transition:margin .3s}.ant-tabs-tabpane{flex:none;width:100%;outline:0}.ant-tabs-tab a[nz-tab-link]::before{position:absolute;top:0;left:0;right:0;bottom:0;background-color:transparent;content:''}.ant-tabs-tab a[nz-tab-link]~*{position:relative}nz-tab-nav-operation,nz-tabs-nav,nz-tabset{display:block;overflow:hidden}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu{max-height:200px;margin:0;padding:4px 0;overflow-x:hidden;overflow-y:auto;text-align:left;list-style-type:none;background-color:#1f1f1f;background-clip:padding-box;border-radius:2px;outline:0}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item{min-width:120px;margin:0;padding:5px 12px;overflow:hidden;color:rgba(255,255,255,.85);font-weight:400;font-size:14px;line-height:22px;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:all .3s}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item:hover{background:rgba(255,255,255,.08)}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item-disabled,.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item-disabled:hover{color:rgba(255,255,255,.3);background:0 0;cursor:not-allowed}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item-disabled a,.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item-disabled:hover a{pointer-events:none;color:rgba(255,255,255,.3)}.ant-tabs-rtl .ant-tabs-rtl-tab-next{right:auto;left:2px}.ant-tabs-tab-disabled a{pointer-events:none;color:rgba(255,255,255,.3)}.ant-tag{box-sizing:border-box;margin:0 8px 0 0;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;display:inline-block;height:auto;padding:0 7px;font-size:12px;line-height:20px;white-space:nowrap;background:rgba(255,255,255,.04);border:1px solid #434343;border-radius:2px;opacity:1;transition:all .3s}.ant-tag-checkable,.ant-tag-has-color{border-color:transparent}.ant-tag,.ant-tag a,.ant-tag a:hover{color:rgba(255,255,255,.85)}.ant-tag>a:first-child:last-child{display:inline-block;margin:0 -8px;padding:0 8px}.ant-tag-hidden,.ant-timeline-item-last>.ant-timeline-item-tail,.ant-timeline-item-pending .ant-timeline-item-tail{display:none}.ant-tag-close-icon{margin-left:3px;color:rgba(255,255,255,.45);font-size:10px;cursor:pointer;transition:all .3s}.ant-tag-close-icon:hover{color:rgba(255,255,255,.85)}.ant-tag-has-color,.ant-tag-has-color .anticon-close,.ant-tag-has-color .anticon-close:hover,.ant-tag-has-color a,.ant-tag-has-color a:hover{color:#fff}.ant-tag-checkable{background-color:transparent;cursor:pointer}.ant-tag-checkable:not(.ant-tag-checkable-checked):hover{color:#177ddc}.ant-tag-checkable-checked,.ant-tag-checkable:active{color:#fff}.ant-tag-checkable-checked{background-color:#177ddc}.ant-tag-checkable:active{background-color:#388ed3}.ant-tag-pink{color:#e0529c;background:#291321;border-color:#551c3b}.ant-tag-pink-inverse{color:#fff;background:#cb2b83;border-color:#cb2b83}.ant-tag-magenta{color:#e0529c;background:#291321;border-color:#551c3b}.ant-tag-magenta-inverse,.ant-tooltip-magenta .ant-tooltip-arrow-content::before,.ant-tooltip-pink .ant-tooltip-arrow-content::before{background:#cb2b83}.ant-tag-magenta-inverse{color:#fff;border-color:#cb2b83}.ant-tag-red{color:#e84749;background:#2a1215;border-color:#58181c}.ant-tag-red-inverse{color:#fff;background:#d32029;border-color:#d32029}.ant-tag-volcano{color:#e87040;background:#2b1611;border-color:#592716}.ant-tag-volcano-inverse{color:#fff;background:#d84a1b;border-color:#d84a1b}.ant-tag-orange{color:#e89a3c;background:#2b1d11;border-color:#593815}.ant-tag-orange-inverse{color:#fff;background:#d87a16;border-color:#d87a16}.ant-tag-yellow{color:#e8d639;background:#2b2611;border-color:#595014}.ant-tag-yellow-inverse{color:#fff;background:#d8bd14;border-color:#d8bd14}.ant-tag-gold{color:#e8b339;background:#2b2111;border-color:#594214}.ant-tag-gold-inverse{color:#fff;background:#d89614;border-color:#d89614}.ant-tag-cyan{color:#33bcb7;background:#112123;border-color:#144848}.ant-tag-cyan-inverse{color:#fff;background:#13a8a8;border-color:#13a8a8}.ant-tag-lime{color:#a9d134;background:#1f2611;border-color:#3e4f13}.ant-tag-lime-inverse{color:#fff;background:#8bbb11;border-color:#8bbb11}.ant-tag-green{color:#6abe39;background:#162312;border-color:#274916}.ant-tag-green-inverse{color:#fff;background:#49aa19;border-color:#49aa19}.ant-tag-blue{color:#3c9ae8;background:#111d2c;border-color:#15395b}.ant-tag-blue-inverse{color:#fff;background:#177ddc;border-color:#177ddc}.ant-tag-geekblue{color:#5273e0;background:#131629;border-color:#1c2755}.ant-tag-geekblue-inverse{color:#fff;background:#2b4acb;border-color:#2b4acb}.ant-tag-purple{color:#854eca;background:#1a1325;border-color:#301c4d}.ant-tag-purple-inverse{color:#fff;background:#642ab5;border-color:#642ab5}.ant-tag-success{color:#49aa19;background:#162312;border-color:#274916}.ant-tag-processing{color:#177ddc;background:#111b26;border-color:#153450}.ant-tag-error{color:#a61d24;background:#2a1215;border-color:#58181c}.ant-tag-warning{color:#d89614;background:#2b1d11;border-color:#593815}.ant-tag.ant-tag-rtl{margin-right:0;margin-left:8px;text-align:right}.ant-tag-rtl .ant-tag-close-icon{margin-right:3px;margin-left:0}.ant-tag-rtl.ant-tag>.anticon+span,.ant-tag-rtl.ant-tag>span+.anticon{margin-right:7px;margin-left:0}.ant-timeline,.ant-timeline-item{margin:0;font-size:14px;list-style:none}.ant-timeline{box-sizing:border-box;color:rgba(255,255,255,.85)}.ant-timeline-item{position:relative;padding-bottom:20px}.ant-timeline-item-tail{position:absolute;top:10px;left:4px;height:calc(100% - 10px);border-left:2px solid #303030}.ant-timeline-item-pending .ant-timeline-item-head{font-size:12px;background-color:transparent}.ant-timeline-item-head{position:absolute;width:10px;height:10px;background-color:#141414;border:2px solid transparent;border-radius:100px}.ant-timeline-item-head-blue{color:#177ddc;border-color:#177ddc}.ant-timeline-item-head-red{color:#a61d24;border-color:#a61d24}.ant-timeline-item-head-green{color:#49aa19;border-color:#49aa19}.ant-timeline-item-head-gray{color:rgba(255,255,255,.3);border-color:rgba(255,255,255,.3)}.ant-timeline-item-head-custom{position:absolute;top:5.5px;left:5px;width:auto;height:auto;margin-top:0;padding:3px 1px;line-height:1;text-align:center;border:0;border-radius:0;transform:translate(-50%,-50%)}.ant-tooltip,.ant-transfer{color:rgba(255,255,255,.85);font-size:14px;line-height:1.5715;list-style:none;font-feature-settings:tnum}.ant-timeline-item-content{position:relative;top:-7px;margin:0 0 0 26px;word-break:break-word}.ant-timeline-item-last>.ant-timeline-item-content{min-height:48px}.ant-timeline.ant-timeline-alternate .ant-timeline-item-head,.ant-timeline.ant-timeline-alternate .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-alternate .ant-timeline-item-tail,.ant-timeline.ant-timeline-label .ant-timeline-item-head,.ant-timeline.ant-timeline-label .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-label .ant-timeline-item-tail,.ant-timeline.ant-timeline-right .ant-timeline-item-head,.ant-timeline.ant-timeline-right .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-right .ant-timeline-item-tail{left:50%}.ant-timeline.ant-timeline-alternate .ant-timeline-item-head,.ant-timeline.ant-timeline-label .ant-timeline-item-head,.ant-timeline.ant-timeline-right .ant-timeline-item-head{margin-left:-4px}.ant-timeline.ant-timeline-alternate .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-label .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-right .ant-timeline-item-head-custom{margin-left:1px}.ant-timeline.ant-timeline-alternate .ant-timeline-item-left .ant-timeline-item-content,.ant-timeline.ant-timeline-label .ant-timeline-item-left .ant-timeline-item-content,.ant-timeline.ant-timeline-right .ant-timeline-item-left .ant-timeline-item-content{left:calc(50% - 4px);width:calc(50% - 14px);text-align:left}.ant-timeline.ant-timeline-alternate .ant-timeline-item-right .ant-timeline-item-content,.ant-timeline.ant-timeline-label .ant-timeline-item-right .ant-timeline-item-content,.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-content{width:calc(50% - 12px);margin:0;text-align:right}.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-head,.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-tail{left:calc(100% - 4px - 2px)}.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-content{width:calc(100% - 18px)}.ant-timeline.ant-timeline-pending .ant-timeline-item-last .ant-timeline-item-tail{display:block;height:calc(100% - 14px);border-left:2px dotted #303030}.ant-timeline.ant-timeline-reverse .ant-timeline-item-last .ant-timeline-item-tail{display:none}.ant-timeline.ant-timeline-reverse .ant-timeline-item-pending .ant-timeline-item-tail{top:15px;display:block;height:calc(100% - 15px);border-left:2px dotted #303030}.ant-timeline.ant-timeline-reverse .ant-timeline-item-pending .ant-timeline-item-content{min-height:48px}.ant-timeline.ant-timeline-label .ant-timeline-item-label{position:absolute;top:-7px;width:calc(50% - 12px);text-align:right}.ant-timeline.ant-timeline-label .ant-timeline-item-right .ant-timeline-item-label{left:calc(50% + 14px);width:calc(50% - 14px);text-align:left}.ant-timeline-rtl .ant-timeline-item-tail{right:4px;left:auto;border-right:2px solid #303030;border-left:none}.ant-timeline-rtl .ant-timeline-item-head-custom{right:5px;left:auto;transform:translate(50%,-50%)}.ant-timeline-rtl .ant-timeline-item-content{margin:0 18px 0 0}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-tail,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-tail,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-tail{right:50%;left:auto}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-head{margin-right:-4px;margin-left:0}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-head-custom{margin-right:1px;margin-left:0}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-left .ant-timeline-item-content,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-left .ant-timeline-item-content,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-left .ant-timeline-item-content{right:calc(50% - 4px);left:auto;text-align:right}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-right .ant-timeline-item-content,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-right .ant-timeline-item-content,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-content{text-align:left}.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-tail{right:0;left:auto}.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-content{width:100%;margin-right:18px;text-align:right}.ant-timeline-rtl.ant-timeline.ant-timeline-pending .ant-timeline-item-last .ant-timeline-item-tail,.ant-timeline-rtl.ant-timeline.ant-timeline-reverse .ant-timeline-item-pending .ant-timeline-item-tail{border-right:2px dotted #303030;border-left:none}.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-label{text-align:left}.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-right .ant-timeline-item-label{right:calc(50% + 14px);text-align:right}.ant-tooltip{box-sizing:border-box;margin:0;padding:0;font-variant:tabular-nums;z-index:1070;display:block;width:max-content;width:intrinsic;max-width:250px}.ant-tooltip-content{position:relative}.ant-tooltip-hidden{display:none}.ant-tooltip-arrow,.ant-tooltip-arrow-content{display:block;position:absolute;pointer-events:none}.ant-tooltip-placement-top,.ant-tooltip-placement-topLeft,.ant-tooltip-placement-topRight{padding-bottom:14.31px}.ant-tooltip-placement-right,.ant-tooltip-placement-rightBottom,.ant-tooltip-placement-rightTop{padding-left:14.31px}.ant-tooltip-placement-bottom,.ant-tooltip-placement-bottomLeft,.ant-tooltip-placement-bottomRight{padding-top:14.31px}.ant-tooltip-placement-left,.ant-tooltip-placement-leftBottom,.ant-tooltip-placement-leftTop{padding-right:14.31px}.ant-tooltip-inner{min-width:30px;min-height:32px;padding:6px 8px;color:#fff;text-align:left;text-decoration:none;word-wrap:break-word;border-radius:2px}.ant-tooltip-arrow{z-index:2;width:22px;height:22px;overflow:hidden;background:0 0}.ant-tooltip-arrow-content{--antd-arrow-background-color:linear-gradient(to right bottom, rgba(67, 67, 67, 0.9), #434343);top:0;right:0;bottom:0;left:0;width:11.31px;height:11.31px;margin:auto;background-color:transparent;content:'';border-radius:0 0 2px}.ant-tooltip-arrow-content::before{position:absolute;top:-11.31px;left:-11.31px;width:33.94px;height:33.94px;background:var(--antd-arrow-background-color);background-repeat:no-repeat;background-position:-10px -10px;content:'';clip-path:path('M 9.849242404917499 24.091883092036785 A 5 5 0 0 1 13.384776310850237 22.627416997969522 L 20.627416997969522 22.627416997969522 A 2 2 0 0 0 22.627416997969522 20.627416997969522 L 22.627416997969522 13.384776310850237 A 5 5 0 0 1 24.091883092036785 9.849242404917499 L 23.091883092036785 9.849242404917499 L 9.849242404917499 23.091883092036785 Z')}.ant-tooltip-placement-top .ant-tooltip-arrow,.ant-tooltip-placement-topLeft .ant-tooltip-arrow,.ant-tooltip-placement-topRight .ant-tooltip-arrow{bottom:0;transform:translateY(100%)}.ant-tooltip-placement-top .ant-tooltip-arrow-content,.ant-tooltip-placement-topLeft .ant-tooltip-arrow-content,.ant-tooltip-placement-topRight .ant-tooltip-arrow-content{box-shadow:3px 3px 7px rgba(0,0,0,.07);transform:translateY(-11px) rotate(45deg)}.ant-tooltip-placement-top .ant-tooltip-arrow{left:50%;transform:translateY(100%) translateX(-50%)}.ant-tooltip-placement-topLeft .ant-tooltip-arrow{left:13px}.ant-tooltip-placement-topRight .ant-tooltip-arrow{right:13px}.ant-tooltip-placement-right .ant-tooltip-arrow,.ant-tooltip-placement-rightBottom .ant-tooltip-arrow,.ant-tooltip-placement-rightTop .ant-tooltip-arrow{left:0;transform:translateX(-100%)}.ant-tooltip-placement-right .ant-tooltip-arrow-content,.ant-tooltip-placement-rightBottom .ant-tooltip-arrow-content,.ant-tooltip-placement-rightTop .ant-tooltip-arrow-content{box-shadow:-3px 3px 7px rgba(0,0,0,.07);transform:translateX(11px) rotate(135deg)}.ant-tooltip-placement-right .ant-tooltip-arrow{top:50%;transform:translateX(-100%) translateY(-50%)}.ant-tooltip-placement-rightTop .ant-tooltip-arrow{top:5px}.ant-tooltip-placement-rightBottom .ant-tooltip-arrow{bottom:5px}.ant-tooltip-placement-left .ant-tooltip-arrow,.ant-tooltip-placement-leftBottom .ant-tooltip-arrow,.ant-tooltip-placement-leftTop .ant-tooltip-arrow{right:0;transform:translateX(100%)}.ant-select-auto-complete .ant-select-clear,.ant-tooltip-placement-bottomRight .ant-tooltip-arrow{right:13px}.ant-tooltip-placement-left .ant-tooltip-arrow-content,.ant-tooltip-placement-leftBottom .ant-tooltip-arrow-content,.ant-tooltip-placement-leftTop .ant-tooltip-arrow-content{box-shadow:3px -3px 7px rgba(0,0,0,.07);transform:translateX(-11px) rotate(315deg)}.ant-tooltip-placement-left .ant-tooltip-arrow{top:50%;transform:translateX(100%) translateY(-50%)}.ant-tooltip-placement-leftTop .ant-tooltip-arrow{top:5px}.ant-tooltip-placement-leftBottom .ant-tooltip-arrow{bottom:5px}.ant-tooltip-placement-bottom .ant-tooltip-arrow,.ant-tooltip-placement-bottomLeft .ant-tooltip-arrow,.ant-tooltip-placement-bottomRight .ant-tooltip-arrow{top:0;transform:translateY(-100%)}.ant-tooltip-placement-bottom .ant-tooltip-arrow-content,.ant-tooltip-placement-bottomLeft .ant-tooltip-arrow-content,.ant-tooltip-placement-bottomRight .ant-tooltip-arrow-content{box-shadow:-3px -3px 7px rgba(0,0,0,.07);transform:translateY(11px) rotate(225deg)}.ant-tooltip-placement-bottom .ant-tooltip-arrow{left:50%;transform:translateY(-100%) translateX(-50%)}.ant-tooltip-placement-bottomLeft .ant-tooltip-arrow{left:13px}.ant-tooltip-red .ant-tooltip-inner{background-color:#d32029}.ant-tooltip-red .ant-tooltip-arrow-content::before{background:#d32029}.ant-tooltip-volcano .ant-tooltip-inner{background-color:#d84a1b}.ant-tooltip-volcano .ant-tooltip-arrow-content::before{background:#d84a1b}.ant-tooltip-orange .ant-tooltip-inner{background-color:#d87a16}.ant-tooltip-orange .ant-tooltip-arrow-content::before{background:#d87a16}.ant-tooltip-yellow .ant-tooltip-inner{background-color:#d8bd14}.ant-tooltip-yellow .ant-tooltip-arrow-content::before{background:#d8bd14}.ant-tooltip-gold .ant-tooltip-inner{background-color:#d89614}.ant-tooltip-gold .ant-tooltip-arrow-content::before{background:#d89614}.ant-tooltip-cyan .ant-tooltip-inner{background-color:#13a8a8}.ant-tooltip-cyan .ant-tooltip-arrow-content::before{background:#13a8a8}.ant-tooltip-lime .ant-tooltip-inner{background-color:#8bbb11}.ant-tooltip-lime .ant-tooltip-arrow-content::before{background:#8bbb11}.ant-tooltip-green .ant-tooltip-inner{background-color:#49aa19}.ant-tooltip-green .ant-tooltip-arrow-content::before{background:#49aa19}.ant-tooltip-blue .ant-tooltip-inner{background-color:#177ddc}.ant-tooltip-blue .ant-tooltip-arrow-content::before{background:#177ddc}.ant-tooltip-geekblue .ant-tooltip-inner{background-color:#2b4acb}.ant-tooltip-geekblue .ant-tooltip-arrow-content::before{background:#2b4acb}.ant-tooltip-purple .ant-tooltip-inner{background-color:#642ab5}.ant-tooltip-purple .ant-tooltip-arrow-content::before{background:#642ab5}.ant-tooltip-rtl .ant-tooltip-inner{text-align:right}.ant-tooltip{position:relative}.ant-transfer-customize-list .ant-transfer-list{flex:1 1 50%;width:auto;height:auto;min-height:200px}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small{border:0;border-radius:0}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small .ant-table-selection-column{width:40px;min-width:40px}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small>.ant-table-content>.ant-table-body>table>.ant-table-thead>tr>th{background:#1d1d1d}.ant-cascader-checkbox-inner,.ant-transfer-customize-list .ant-input[disabled]{background-color:transparent}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small>.ant-table-content .ant-table-row:last-child td{border-bottom:1px solid #303030}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small .ant-table-body{margin:0}.ant-transfer-customize-list .ant-table-wrapper .ant-table-pagination.ant-pagination{margin:16px 0 4px}.ant-transfer-status-error .ant-transfer-list{border-color:#a61d24}.ant-transfer-status-error .ant-transfer-list-search:not([disabled]){border-color:#434343}.ant-transfer-status-error .ant-transfer-list-search:not([disabled]):hover{border-color:#165996;border-right-width:1px}.ant-input-rtl .ant-transfer-status-error .ant-transfer-list-search:not([disabled]):hover{border-right-width:0;border-left-width:1px!important}.ant-transfer-status-error .ant-transfer-list-search:not([disabled]):focus{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-transfer-status-error .ant-transfer-list-search:not([disabled]):focus{border-right-width:0;border-left-width:1px!important}.ant-transfer-status-warning .ant-transfer-list{border-color:#d89614}.ant-transfer-status-warning .ant-transfer-list-search:not([disabled]){border-color:#434343}.ant-transfer-status-warning .ant-transfer-list-search:not([disabled]):hover{border-color:#165996;border-right-width:1px}.ant-input-rtl .ant-transfer-status-warning .ant-transfer-list-search:not([disabled]):hover{border-right-width:0;border-left-width:1px!important}.ant-transfer-status-warning .ant-transfer-list-search:not([disabled]):focus{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);border-right-width:1px;outline:0}.ant-input-rtl .ant-transfer-status-warning .ant-transfer-list-search:not([disabled]):focus{border-right-width:0;border-left-width:1px!important}.ant-transfer{box-sizing:border-box;margin:0;padding:0;font-variant:tabular-nums;position:relative;display:flex;align-items:stretch}.ant-transfer-disabled .ant-transfer-list{background:rgba(255,255,255,.08)}.ant-transfer-list{display:flex;flex-direction:column;width:180px;height:200px;border:1px solid #434343;border-radius:2px}.ant-transfer-list-with-pagination{width:250px;height:auto}.ant-transfer-list-search .anticon-search{color:rgba(255,255,255,.3)}.ant-transfer-list-header{display:flex;flex:none;align-items:center;height:40px;padding:8px 12px 9px;color:rgba(255,255,255,.85);background:#141414;border-bottom:1px solid #303030;border-radius:2px 2px 0 0}.ant-transfer-list-header>:not(:last-child){margin-right:4px}.ant-transfer-list-header>*{flex:none}.ant-transfer-list-header-title{flex:auto;overflow:hidden;white-space:nowrap;text-align:right;text-overflow:ellipsis}.ant-transfer-list-header-dropdown{font-size:10px;transform:translateY(10%);cursor:pointer}.ant-transfer-list-header-dropdown[disabled]{cursor:not-allowed}.ant-transfer-list-body{display:flex;flex:auto;flex-direction:column;overflow:hidden;font-size:14px}.ant-transfer-list-body-search-wrapper{position:relative;flex:none;padding:12px}.ant-transfer-list-content{flex:auto;margin:0;padding:0;overflow:auto;list-style:none}.ant-transfer-list-content-item{display:flex;align-items:center;min-height:32px;padding:6px 12px;line-height:20px;transition:all .3s}.ant-transfer-list-content-item>:not(:last-child){margin-right:8px}.ant-transfer-list-content-item>*{flex:none}.ant-transfer-list-content-item-text{flex:auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-transfer-list-content-item-remove{text-decoration:none;outline:0;cursor:pointer;transition:color .3s;position:relative;color:#434343}.ant-transfer-list-content-item-remove:focus,.ant-transfer-list-content-item-remove:hover{color:#165996}.ant-transfer-list-content-item-remove:active{color:#388ed3}.ant-transfer-list-content-item-remove::after{position:absolute;top:-6px;right:-50%;bottom:-6px;left:-50%;content:''}.ant-transfer-list-content-item-remove:hover{color:#165996}.ant-transfer-list-content-item:not(.ant-transfer-list-content-item-disabled):hover{background-color:#262626;cursor:pointer}.ant-transfer-list-content-item:not(.ant-transfer-list-content-item-disabled).ant-transfer-list-content-item-checked:hover{background-color:#0e161f}.ant-transfer-list-content-show-remove .ant-transfer-list-content-item:not(.ant-transfer-list-content-item-disabled):hover{background:0 0;cursor:default}.ant-transfer-list-content-item-checked{background-color:#111b26}.ant-transfer-list-content-item-disabled{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-transfer-list-pagination{padding:8px 0;text-align:right;border-top:1px solid #303030}.ant-transfer-list-body-not-found{flex:none;width:100%;margin:auto 0;color:rgba(255,255,255,.3);text-align:center}.ant-transfer-rtl .ant-transfer-list-header-title,.ant-transfer-rtl .ant-transfer-list-pagination{text-align:left}.ant-transfer-list-footer{border-top:1px solid #303030}.ant-transfer-operation{display:flex;flex:none;flex-direction:column;align-self:center;margin:0 8px;vertical-align:middle}.ant-transfer-operation .ant-btn{display:block}.ant-transfer-operation .ant-btn:first-child{margin-bottom:4px}.ant-transfer-operation .ant-btn .anticon{font-size:12px}.ant-transfer .ant-empty-image{max-height:-2px}.ant-transfer-rtl .ant-transfer-list-search{padding-right:8px;padding-left:24px}.ant-transfer-rtl .ant-transfer-list-search-action{right:auto;left:12px}.ant-transfer-rtl .ant-transfer-list-footer,.ant-transfer-rtl .ant-transfer-list-header{right:0;left:auto}.ant-transfer-rtl .ant-transfer-list-header>:not(:last-child){margin-right:0;margin-left:4px}.ant-transfer-rtl .ant-transfer-list-content-item>:not(:last-child){margin-right:0;margin-left:8px}.ant-typography{color:rgba(255,255,255,.85);overflow-wrap:break-word}.ant-typography.ant-typography-secondary{color:rgba(255,255,255,.45)}.ant-typography.ant-typography-success{color:#49aa19}.ant-typography.ant-typography-warning{color:#d89614}.ant-typography.ant-typography-danger{color:#a61d24}a.ant-typography.ant-typography-danger:active,a.ant-typography.ant-typography-danger:focus{color:#800f19}a.ant-typography.ant-typography-danger:hover{color:#b33b3d}.ant-typography.ant-typography-disabled{color:rgba(255,255,255,.3);cursor:not-allowed;user-select:none}.ant-typography p,div.ant-typography{margin-bottom:1em}.ant-typography h1,div.ant-typography-h1,div.ant-typography-h1>textarea,h1.ant-typography{margin-bottom:.5em;color:rgba(255,255,255,.85);font-weight:600;font-size:38px;line-height:1.23}.ant-typography h2,div.ant-typography-h2,div.ant-typography-h2>textarea,h2.ant-typography{margin-bottom:.5em;color:rgba(255,255,255,.85);font-weight:600;font-size:30px;line-height:1.35}.ant-typography h3,div.ant-typography-h3,div.ant-typography-h3>textarea,h3.ant-typography{margin-bottom:.5em;color:rgba(255,255,255,.85);font-weight:600;font-size:24px;line-height:1.35}.ant-typography h4,div.ant-typography-h4,div.ant-typography-h4>textarea,h4.ant-typography{margin-bottom:.5em;color:rgba(255,255,255,.85);font-weight:600;font-size:20px;line-height:1.4}.ant-typography h5,div.ant-typography-h5,div.ant-typography-h5>textarea,h5.ant-typography{margin-bottom:.5em;color:rgba(255,255,255,.85);font-weight:600;font-size:16px;line-height:1.5}.ant-typography div+h1,.ant-typography div+h2,.ant-typography div+h3,.ant-typography div+h4,.ant-typography div+h5,.ant-typography h1+h1,.ant-typography h1+h2,.ant-typography h1+h3,.ant-typography h1+h4,.ant-typography h1+h5,.ant-typography h2+h1,.ant-typography h2+h2,.ant-typography h2+h3,.ant-typography h2+h4,.ant-typography h2+h5,.ant-typography h3+h1,.ant-typography h3+h2,.ant-typography h3+h3,.ant-typography h3+h4,.ant-typography h3+h5,.ant-typography h4+h1,.ant-typography h4+h2,.ant-typography h4+h3,.ant-typography h4+h4,.ant-typography h4+h5,.ant-typography h5+h1,.ant-typography h5+h2,.ant-typography h5+h3,.ant-typography h5+h4,.ant-typography h5+h5,.ant-typography li+h1,.ant-typography li+h2,.ant-typography li+h3,.ant-typography li+h4,.ant-typography li+h5,.ant-typography p+h1,.ant-typography p+h2,.ant-typography p+h3,.ant-typography p+h4,.ant-typography p+h5,.ant-typography ul+h1,.ant-typography ul+h2,.ant-typography ul+h3,.ant-typography ul+h4,.ant-typography ul+h5,.ant-typography+h1.ant-typography,.ant-typography+h2.ant-typography,.ant-typography+h3.ant-typography,.ant-typography+h4.ant-typography,.ant-typography+h5.ant-typography{margin-top:1.2em}.ant-typography code,.ant-typography kbd{margin:0 .2em;border:1px solid rgba(100,100,100,.2)}a.ant-typography-ellipsis,span.ant-typography-ellipsis{display:inline-block;max-width:100%}.ant-typography a,a.ant-typography{color:#177ddc;outline:0;cursor:pointer;transition:color .3s;text-decoration:none}.ant-typography a:focus,.ant-typography a:hover,a.ant-typography:focus,a.ant-typography:hover{color:#165996}.ant-typography a:active,a.ant-typography:active{color:#388ed3}.ant-typography a:active,.ant-typography a:hover,a.ant-typography:active,a.ant-typography:hover{text-decoration:none}.ant-typography a.ant-typography-disabled,.ant-typography a[disabled],a.ant-typography.ant-typography-disabled,a.ant-typography[disabled]{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-typography a.ant-typography-disabled:active,.ant-typography a.ant-typography-disabled:hover,.ant-typography a[disabled]:active,.ant-typography a[disabled]:hover,a.ant-typography.ant-typography-disabled:active,a.ant-typography.ant-typography-disabled:hover,a.ant-typography[disabled]:active,a.ant-typography[disabled]:hover{color:rgba(255,255,255,.3)}.ant-typography a.ant-typography-disabled:active,.ant-typography a[disabled]:active,a.ant-typography.ant-typography-disabled:active,a.ant-typography[disabled]:active{pointer-events:none}.ant-typography code{padding:.2em .4em .1em;font-size:85%;background:rgba(150,150,150,.1);border-radius:3px}.ant-typography kbd{padding:.15em .4em .1em;font-size:90%;background:rgba(150,150,150,.06);border-bottom-width:2px;border-radius:3px}.ant-typography mark{padding:0;background-color:#594214}.ant-typography ins,.ant-typography u{text-decoration:underline;text-decoration-skip-ink:auto}.ant-typography del,.ant-typography s,.menu-deprecated .ant-badge,.text-deleted{text-decoration:line-through}.ant-typography strong{font-weight:600}.ant-typography-copy,.ant-typography-edit,.ant-typography-expand{color:#177ddc;text-decoration:none;outline:0;cursor:pointer;transition:color .3s;margin-left:4px}.ant-typography-copy:focus,.ant-typography-copy:hover,.ant-typography-edit:focus,.ant-typography-edit:hover,.ant-typography-expand:focus,.ant-typography-expand:hover{color:#165996}.ant-typography-copy:active,.ant-typography-edit:active,.ant-typography-expand:active{color:#388ed3}.ant-typography-copy-success,.ant-typography-copy-success:focus,.ant-typography-copy-success:hover{color:#49aa19}.ant-typography-edit-content{position:relative}div.ant-typography-edit-content{left:-12px;margin-top:-5px;margin-bottom:calc(1em - 4px - 1px)}.ant-typography-edit-content-confirm{position:absolute;right:10px;bottom:8px;color:rgba(255,255,255,.45);font-weight:400;font-size:14px;font-style:normal;pointer-events:none}.ant-typography-edit-content textarea{height:1em;margin:0!important;-moz-transition:none}.ant-typography ol,.ant-typography ul{margin:0 0 1em;padding:0}.ant-typography ol li,.ant-typography ul li{margin:0 0 0 20px;padding:0 0 0 4px}.ant-typography ul{list-style-type:circle}.ant-typography ul ul{list-style-type:disc}.ant-typography ol{list-style-type:decimal}.ant-typography blockquote,.ant-typography pre{margin:1em 0}.ant-typography pre{padding:.4em .6em;white-space:pre-wrap;word-wrap:break-word;background:rgba(150,150,150,.1);border:1px solid rgba(100,100,100,.2);border-radius:3px}.ant-typography pre code{display:inline;margin:0;padding:0;font-size:inherit;font-family:inherit;background:0 0;border:0}.ant-result-content,.ant-upload-list-picture-card .ant-upload-list-item-uploading.ant-upload-list-item,.ant-upload.ant-upload-select-picture-card,.sv__bordered .sv__label{background-color:rgba(255,255,255,.04)}.ant-typography blockquote{padding:0 0 0 .6em;border-left:4px solid rgba(100,100,100,.2);opacity:.85}.ant-typography-single-line{white-space:nowrap}.ant-typography-ellipsis-single-line{overflow:hidden;text-overflow:ellipsis}a.ant-typography-ellipsis-single-line,span.ant-typography-ellipsis-single-line{vertical-align:bottom}.ant-typography-ellipsis-multiple-line{display:-webkit-box;overflow:hidden;-webkit-line-clamp:3;/*! autoprefixer: ignore next */-webkit-box-orient:vertical}.ant-typography-rtl .ant-typography-copy,.ant-typography-rtl .ant-typography-edit,.ant-typography-rtl .ant-typography-expand{margin-right:4px;margin-left:0}.ant-typography-rtl .ant-typography-expand{float:left}div.ant-typography-edit-content.ant-typography-rtl{right:-12px;left:auto}.ant-typography-rtl .ant-typography-edit-content-confirm{right:auto;left:10px}.ant-typography-rtl.ant-typography ol li,.ant-typography-rtl.ant-typography ul li{margin:0 20px 0 0;padding:0 4px 0 0}.ant-upload{box-sizing:border-box;margin:0;padding:0;color:rgba(255,255,255,.85);font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum;outline:0}.ant-upload p{margin:0}.ant-upload-btn{display:block;width:100%;outline:0}.ant-upload input[type=file]{cursor:pointer}.ant-upload.ant-upload-select{display:inline-block}.ant-upload.ant-upload-disabled{cursor:not-allowed}.ant-upload.ant-upload-select-picture-card{width:104px;height:104px;margin-right:8px;margin-bottom:8px;text-align:center;vertical-align:top;border:1px dashed #434343;border-radius:2px;cursor:pointer;transition:border-color .3s}.ant-cascader-checkbox-input:focus+.ant-cascader-checkbox-inner,.ant-cascader-checkbox-wrapper:hover .ant-cascader-checkbox-inner,.ant-cascader-checkbox:hover .ant-cascader-checkbox-inner,.ant-upload.ant-upload-select-picture-card:hover{border-color:#177ddc}.ant-upload.ant-upload-select-picture-card>.ant-upload{display:flex;align-items:center;justify-content:center;height:100%;text-align:center}.ant-upload-disabled.ant-upload.ant-upload-select-picture-card:hover{border-color:#434343}.ant-upload.ant-upload-drag{position:relative;width:100%;height:100%;text-align:center;background:rgba(255,255,255,.04);border:1px dashed #434343;border-radius:2px;cursor:pointer;transition:border-color .3s}.ant-upload.ant-upload-drag .ant-upload{padding:16px 0}.ant-upload.ant-upload-drag.ant-upload-drag-hover:not(.ant-upload-disabled){border-color:#388ed3}.ant-upload.ant-upload-drag.ant-upload-disabled{cursor:not-allowed}.ant-upload.ant-upload-drag .ant-upload-btn{display:table;height:100%}.ant-upload.ant-upload-drag .ant-upload-drag-container{display:table-cell;vertical-align:middle}.ant-upload.ant-upload-drag:not(.ant-upload-disabled):hover{border-color:#165996}.ant-upload.ant-upload-drag p.ant-upload-drag-icon{margin-bottom:20px}.ant-upload.ant-upload-drag p.ant-upload-drag-icon .anticon{color:#165996;font-size:48px}.ant-upload.ant-upload-drag p.ant-upload-text{margin:0 0 4px;color:rgba(255,255,255,.85);font-size:16px}.ant-upload.ant-upload-drag p.ant-upload-hint{color:rgba(255,255,255,.45);font-size:14px}.ant-upload.ant-upload-drag .anticon-plus{color:rgba(255,255,255,.3);font-size:30px;transition:all .3s}.ant-upload.ant-upload-drag .anticon-plus:hover,.ant-upload.ant-upload-drag:hover .anticon-plus{color:rgba(255,255,255,.45)}.ant-upload-picture-card-wrapper{display:inline-block;width:100%}.ant-upload-list::after,.ant-upload-list::before,.ant-upload-picture-card-wrapper::after,.ant-upload-picture-card-wrapper::before{display:table;content:''}.ant-upload-picture-card-wrapper::after{clear:both}.ant-upload-list{box-sizing:border-box;margin:0;padding:0;color:rgba(255,255,255,.85);font-size:14px;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum;line-height:1.5715}.ant-upload-list::after{clear:both}.ant-upload-list-item{position:relative;height:22px;margin-top:8px;font-size:14px}.ant-upload-list-item-name{display:inline-block;width:100%;padding-left:22px;overflow:hidden;line-height:1.5715;white-space:nowrap;text-overflow:ellipsis}.ant-upload-list-item-card-actions{position:absolute;right:0}.ant-upload-list-item-card-actions-btn{opacity:0}.ant-upload-list-item-card-actions-btn:focus,.ant-upload-list-item-card-actions.picture .ant-upload-list-item-card-actions-btn,.ant-upload-list-item-error .ant-upload-list-item-card-actions-btn,.ant-upload-list-item:hover .ant-upload-list-item-card-actions-btn{opacity:1}.ant-upload-list-item-card-actions-btn.ant-btn-sm{height:22px;line-height:1;vertical-align:top}.ant-upload-list-item-card-actions.picture{top:22px;line-height:0}.ant-upload-list-item-card-actions .anticon{color:rgba(255,255,255,.45);transition:all .3s}.ant-upload-list-item-card-actions:hover .anticon{color:rgba(255,255,255,.85)}.ant-upload-list-item-info{height:100%;transition:background-color .3s}.ant-upload-list-item-info>span{display:block;width:100%;height:100%}.ant-upload-list-item-info .ant-upload-text-icon .anticon,.ant-upload-list-item-info .anticon-loading .anticon{position:absolute;top:5px;color:rgba(255,255,255,.45);font-size:14px}.ant-upload-list-item:hover .ant-upload-list-item-info{background-color:rgba(255,255,255,.08)}.ant-upload-list-picture .ant-upload-list-item:hover,.ant-upload-list-picture .ant-upload-list-item:hover .ant-upload-list-item-info,.ant-upload-list-picture-card .ant-upload-list-item:hover,.ant-upload-list-picture-card .ant-upload-list-item:hover .ant-upload-list-item-info{background:0 0}.ant-upload-list-item-error,.ant-upload-list-item-error .ant-upload-list-item-card-actions .anticon,.ant-upload-list-item-error .ant-upload-list-item-name,.ant-upload-list-item-error .ant-upload-text-icon>.anticon{color:#a61d24}.ant-upload-list-item-progress{position:absolute;bottom:-12px;width:100%;padding-left:26px;font-size:14px;line-height:0}.ant-upload-list-picture .ant-upload-list-item,.ant-upload-list-picture-card .ant-upload-list-item{position:relative;height:66px;padding:8px;border:1px solid #434343;border-radius:2px}.ant-upload-list-picture .ant-upload-list-item-error,.ant-upload-list-picture-card .ant-upload-list-item-error{border-color:#a61d24}.ant-upload-list-picture .ant-upload-list-item-uploading,.ant-upload-list-picture-card .ant-upload-list-item-uploading{border-style:dashed}.ant-upload-list-picture .ant-upload-list-item-thumbnail,.ant-upload-list-picture-card .ant-upload-list-item-thumbnail{width:48px;height:48px;line-height:60px;text-align:center;opacity:.8}.ant-upload-list-picture .ant-upload-list-item-thumbnail .anticon,.ant-upload-list-picture-card .ant-upload-list-item-thumbnail .anticon{font-size:26px}.ant-upload-list-picture .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill='#e6f7ff'],.ant-upload-list-picture-card .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill='#e6f7ff']{fill:#2a1215}.ant-upload-list-picture .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill='#1890ff'],.ant-upload-list-picture-card .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill='#1890ff']{fill:#a61d24}.ant-upload-list-picture .ant-upload-list-item-icon,.ant-upload-list-picture-card .ant-upload-list-item-icon{position:absolute;top:50%;left:50%;font-size:26px;transform:translate(-50%,-50%)}.ant-upload-list-picture .ant-upload-list-item-icon .anticon,.ant-upload-list-picture-card .ant-upload-list-item-icon .anticon{font-size:26px}.ant-upload-list-picture .ant-upload-list-item-image,.ant-upload-list-picture-card .ant-upload-list-item-image{max-width:100%}.ant-upload-list-picture .ant-upload-list-item-thumbnail img,.ant-upload-list-picture-card .ant-upload-list-item-thumbnail img{display:block;width:48px;height:48px;overflow:hidden}.ant-upload-list-picture .ant-upload-list-item-name,.ant-upload-list-picture-card .ant-upload-list-item-name{display:inline-block;box-sizing:border-box;max-width:100%;margin:0 0 0 8px;padding-right:8px;padding-left:48px;overflow:hidden;line-height:44px;white-space:nowrap;text-overflow:ellipsis;transition:all .3s}.ant-upload-list-picture .ant-upload-list-item-uploading .ant-upload-list-item-name,.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-name{margin-bottom:12px}.ant-upload-list-picture .ant-upload-list-item-progress,.ant-upload-list-picture-card .ant-upload-list-item-progress{bottom:14px;width:calc(100% - 24px);margin-top:0;padding-left:56px}.ant-upload-list-picture-card-container{display:inline-block;width:104px;height:104px;margin:0 8px 8px 0;vertical-align:top}.ant-upload-list-picture-card .ant-upload-list-item{height:100%;margin:0}.ant-upload-list-picture-card .ant-upload-list-item-info{position:relative;height:100%;overflow:hidden}.ant-upload-list-picture-card .ant-upload-list-item-info::before{position:absolute;z-index:1;width:100%;height:100%;background-color:rgba(0,0,0,.5);opacity:0;transition:all .3s;content:' '}.ant-upload-list-picture-card .ant-upload-list-item:hover .ant-upload-list-item-info::before{opacity:1}.ant-upload-list-picture-card .ant-upload-list-item-actions{position:absolute;top:50%;left:50%;z-index:10;white-space:nowrap;transform:translate(-50%,-50%);opacity:0;transition:all .3s}.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-delete,.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-download,.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-eye{z-index:10;width:16px;margin:0 4px;color:rgba(255,255,255,.85);font-size:16px;cursor:pointer;transition:all .3s}.ant-cascader-checkbox,.ant-select-auto-complete{font-size:14px;font-variant:tabular-nums;list-style:none}.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-delete:hover,.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-download:hover,.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-eye:hover{color:#fff}.ant-upload-list-picture-card .ant-upload-list-item-actions:hover,.ant-upload-list-picture-card .ant-upload-list-item-info:hover+.ant-upload-list-item-actions{opacity:1}.ant-upload-list-picture-card .ant-upload-list-item-thumbnail,.ant-upload-list-picture-card .ant-upload-list-item-thumbnail img{position:static;display:block;width:100%;height:100%;object-fit:contain}.ant-upload-list-picture-card .ant-upload-list-item-name{display:none;margin:8px 0 0;padding:0;line-height:1.5715;text-align:center}.ant-upload-list-picture-card .ant-upload-list-item-file+.ant-upload-list-item-name{position:absolute;bottom:10px;display:block}.ant-select-dropdown-hidden,.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-info .anticon-delete,.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-info .anticon-eye,.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-info::before{display:none}.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-info{height:auto}.ant-upload-list-picture-card .ant-upload-list-item-progress{bottom:32px;width:calc(100% - 14px);padding-left:0}.ant-upload-list-picture-container,.ant-upload-list-text-container{transition:opacity .3s,height .3s}.ant-upload-list-picture-container::before,.ant-upload-list-text-container::before{display:table;width:0;height:0;content:''}.ant-upload-list-picture-container .ant-upload-span,.ant-upload-list-text-container .ant-upload-span{display:block;flex:auto}.ant-upload-list-picture .ant-upload-span,.ant-upload-list-text .ant-upload-span{display:flex;align-items:center}.ant-upload-list-picture .ant-upload-span>*,.ant-upload-list-text .ant-upload-span>*{flex:none}.ant-upload-list-picture .ant-upload-list-item-name,.ant-upload-list-text .ant-upload-list-item-name{flex:auto;margin:0;padding:0 8px}.ant-upload-list-picture .ant-upload-list-item-card-actions,.ant-upload-list-text .ant-upload-list-item-card-actions,.ant-upload-list-text .ant-upload-text-icon .anticon{position:static}.ant-upload-list .ant-upload-animate-inline-appear,.ant-upload-list .ant-upload-animate-inline-enter,.ant-upload-list .ant-upload-animate-inline-leave{animation-duration:.3s;animation-fill-mode:cubic-bezier(.78,.14,.15,.86)}.ant-upload-list .ant-upload-animate-inline-appear,.ant-upload-list .ant-upload-animate-inline-enter{animation-name:uploadAnimateInlineIn}.ant-upload-list .ant-upload-animate-inline-leave{animation-name:uploadAnimateInlineOut}@keyframes uploadAnimateInlineIn{from{width:0;height:0;margin:0;padding:0;opacity:0}}@keyframes uploadAnimateInlineOut{to{width:0;height:0;margin:0;padding:0;opacity:0}}.ant-upload-rtl.ant-upload.ant-upload-select-picture-card{margin-right:auto;margin-left:8px}.ant-upload-list-rtl .ant-upload-list-item-list-type-text:hover .ant-upload-list-item-name-icon-count-1{padding-right:22px;padding-left:14px}.ant-upload-list-rtl .ant-upload-list-item-list-type-text:hover .ant-upload-list-item-name-icon-count-2{padding-right:22px;padding-left:28px}.ant-upload-list-rtl .ant-upload-list-item-name{padding-right:22px;padding-left:0}.ant-upload-list-rtl .ant-upload-list-item-name-icon-count-1{padding-left:14px}.ant-upload-list-rtl .ant-upload-list-item-card-actions{right:auto;left:0}.ant-upload-list-rtl .ant-upload-list-item-card-actions .anticon{padding-right:0;padding-left:5px}.ant-upload-list-rtl .ant-upload-list-item-info{padding:0 4px 0 12px}.ant-upload-list-rtl .ant-upload-list-item-error .ant-upload-list-item-card-actions .anticon{padding-right:0;padding-left:5px}.ant-upload-list-rtl .ant-upload-list-item-progress{padding-right:26px;padding-left:0}.ant-upload-list-picture .ant-upload-list-item-info,.ant-upload-list-picture-card .ant-upload-list-item-info{padding:0}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-thumbnail,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-thumbnail{right:8px;left:auto}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-icon,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-actions,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-icon{right:50%;left:auto;transform:translate(50%,-50%)}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-name,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-name{margin:0 8px 0 0;padding-right:48px;padding-left:8px}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-name-icon-count-1,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-name-icon-count-1{padding-right:48px;padding-left:18px}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-name-icon-count-2,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-name-icon-count-2{padding-right:48px;padding-left:36px}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-progress,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-progress{padding-right:0;padding-left:0}.ant-upload-list-rtl .ant-upload-list-picture-card-container{margin:0 0 8px 8px}.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-file+.ant-upload-list-item-name{margin:8px 0 0;padding:0}.ant-cascader-checkbox,.ant-cascader-checkbox-wrapper,.ant-select-auto-complete{margin:0;padding:0;font-feature-settings:tnum}.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item{float:unset}.ant-select-auto-complete{box-sizing:border-box;color:rgba(255,255,255,.85);line-height:1.5715}.ant-cascader-checkbox,.ant-tree-checkbox{line-height:1;box-sizing:border-box;white-space:nowrap}.ant-cascader-checkbox{color:rgba(255,255,255,.85);position:relative;outline:0;cursor:pointer}.ant-cascader-checkbox-checked::after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #177ddc;border-radius:2px;visibility:hidden;animation:antCheckboxEffect .36s ease-in-out;animation-fill-mode:backwards;content:''}.ant-cascader-checkbox-wrapper:hover .ant-cascader-checkbox::after,.ant-cascader-checkbox:hover::after{visibility:visible}.ant-cascader-checkbox-inner{position:relative;top:0;left:0;display:block;width:16px;height:16px;direction:ltr;border:1px solid #434343;border-radius:2px;border-collapse:separate;transition:all .3s}.ant-cascader-checkbox-rtl,.ant-tree .ant-tree-treenode-rtl,.ant-tree-checkbox-rtl,.ant-tree-rtl{direction:rtl}.ant-cascader-checkbox-inner::after{position:absolute;top:50%;left:21.5%;display:table;width:5.71px;height:9.14px;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(0) translate(-50%,-50%);opacity:0;transition:all .1s cubic-bezier(.71,-.46,.88,.6),opacity .1s;content:' '}.ant-cascader-checkbox-input{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;cursor:pointer;opacity:0}.ant-cascader-checkbox-checked .ant-cascader-checkbox-inner::after{position:absolute;display:table;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(1) translate(-50%,-50%);opacity:1;transition:all .2s cubic-bezier(.12,.4,.29,1.46) .1s;content:' '}.ant-cascader-checkbox-checked .ant-cascader-checkbox-inner{background-color:#177ddc;border-color:#177ddc}.ant-cascader-checkbox-disabled{cursor:not-allowed}.ant-cascader-checkbox-disabled.ant-cascader-checkbox-checked .ant-cascader-checkbox-inner::after{border-color:rgba(255,255,255,.3);animation-name:none}.ant-cascader-checkbox-disabled .ant-cascader-checkbox-input{cursor:not-allowed;pointer-events:none}.ant-cascader-checkbox-disabled .ant-cascader-checkbox-inner{background-color:rgba(255,255,255,.08);border-color:#434343!important}.ant-cascader-checkbox-disabled .ant-cascader-checkbox-inner::after{border-color:rgba(255,255,255,.08);border-collapse:separate;animation-name:none}.ant-cascader-checkbox-disabled+span{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-cascader-checkbox-group,.ant-cascader-checkbox-wrapper{color:rgba(255,255,255,.85);font-size:14px;font-variant:tabular-nums;list-style:none}.ant-cascader-checkbox-disabled:hover::after,.ant-cascader-checkbox-wrapper:hover .ant-cascader-checkbox-disabled::after{visibility:hidden}.ant-cascader-checkbox-wrapper{box-sizing:border-box;display:inline-flex;align-items:baseline;line-height:unset;cursor:pointer}.ant-cascader-checkbox-wrapper::after{display:inline-block;width:0;overflow:hidden;content:'\a0'}.ant-cascader-checkbox-wrapper.ant-cascader-checkbox-wrapper-disabled{cursor:not-allowed}.ant-cascader-checkbox-wrapper+.ant-cascader-checkbox-wrapper{margin-left:8px}.ant-cascader-checkbox-wrapper.ant-cascader-checkbox-wrapper-in-form-item input[type=checkbox]{width:14px;height:14px}.ant-cascader-checkbox+span{padding-right:8px;padding-left:8px}.ant-cascader-checkbox-group{box-sizing:border-box;margin:0;padding:0;line-height:1.5715;font-feature-settings:tnum;display:inline-block}.ant-cascader-checkbox-group-item{margin-right:8px}.ant-cascader-checkbox-group-item:last-child{margin-right:0}.ant-cascader-checkbox-group-item+.ant-cascader-checkbox-group-item{margin-left:0}.ant-cascader-checkbox-indeterminate .ant-cascader-checkbox-inner{background-color:transparent;border-color:#434343}.ant-cascader-checkbox-indeterminate .ant-cascader-checkbox-inner::after{top:50%;left:50%;width:8px;height:8px;background-color:#177ddc;border:0;transform:translate(-50%,-50%) scale(1);opacity:1;content:' '}.ant-cascader-checkbox-indeterminate.ant-cascader-checkbox-disabled .ant-cascader-checkbox-inner::after{background-color:rgba(255,255,255,.3);border-color:rgba(255,255,255,.3)}.ant-cascader-checkbox-group-rtl .ant-cascader-checkbox-group-item{margin-right:0;margin-left:8px}.ant-cascader-checkbox-group-rtl .ant-cascader-checkbox-group-item:last-child{margin-left:0!important}.ant-cascader-checkbox-group-rtl .ant-cascader-checkbox-group-item+.ant-cascader-checkbox-group-item{margin-left:8px}.ant-cascader{width:184px}.ant-cascader-checkbox{top:0;margin-right:8px}.ant-cascader-menus{display:flex;flex-wrap:nowrap;align-items:flex-start}.ant-cascader-menus.ant-cascader-menu-empty .ant-cascader-menu{width:100%;height:auto}.ant-cascader-menu{flex-grow:1;min-width:111px;height:180px;margin:-4px 0;padding:4px 0;overflow:auto;vertical-align:top;list-style:none;border-right:1px solid #303030;-ms-overflow-style:-ms-autohiding-scrollbar}.ant-cascader-menu-item{display:flex;flex-wrap:nowrap;align-items:center;padding:5px 12px;overflow:hidden;line-height:22px;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:all .3s}.ant-cascader-menu-item:hover{background:rgba(255,255,255,.08)}.ant-cascader-menu-item-disabled{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-cascader-menu-item-disabled:hover{background:0 0}.ant-cascader-menu-empty .ant-cascader-menu-item{color:rgba(255,255,255,.3);cursor:default;pointer-events:none}.ant-cascader-menu-item-active:not(.ant-cascader-menu-item-disabled),.ant-cascader-menu-item-active:not(.ant-cascader-menu-item-disabled):hover{font-weight:600;background-color:#111b26}.ant-cascader-menu-item-content{flex:auto}.ant-cascader-menu-item-expand .ant-cascader-menu-item-expand-icon,.ant-cascader-menu-item-loading-icon{margin-left:4px;color:rgba(255,255,255,.45);font-size:10px}.ant-tree-checkbox,.ant-tree-checkbox-wrapper{padding:0;font-size:14px;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum}.ant-cascader-menu-item-disabled.ant-cascader-menu-item-expand .ant-cascader-menu-item-expand-icon,.ant-cascader-menu-item-disabled.ant-cascader-menu-item-loading-icon{color:rgba(255,255,255,.3)}.ant-cascader-menu-item-keyword{color:#a61d24}.ant-cascader-rtl .ant-cascader-menu-item-expand-icon,.ant-cascader-rtl .ant-cascader-menu-item-loading-icon{margin-right:4px;margin-left:0}.ant-cascader-rtl .ant-cascader-checkbox{top:0;margin-right:0;margin-left:8px}.ant-cascader-menus{position:relative;margin-top:2px;margin-bottom:2px}nz-tree-virtual-scroll-view{display:block;position:relative;overflow:auto;contain:strict;transform:translateZ(0);will-change:scroll-position;-webkit-overflow-scrolling:touch}nz-tree-virtual-scroll-view .ant-tree-list,nz-tree-virtual-scroll-view .ant-tree-list-holder{height:100%}nz-tree-view .ant-tree-switcher+.ant-tree-switcher.nz-tree-leaf-line-icon,nz-tree-virtual-scroll-view .ant-tree-switcher+.ant-tree-switcher.nz-tree-leaf-line-icon{display:none}nz-tree-view .ant-tree-list-holder-inner{display:flex;flex-direction:column}@keyframes ant-tree-node-fx-do-not-use{0%{opacity:0}100%{opacity:1}}.ant-tree.ant-tree-directory .ant-tree-treenode{position:relative}.ant-tree.ant-tree-directory .ant-tree-treenode::before{position:absolute;top:0;right:0;bottom:4px;left:0;transition:background-color .3s;content:'';pointer-events:none}.ant-tree.ant-tree-directory .ant-tree-treenode:hover::before{background:rgba(255,255,255,.08)}.ant-tree.ant-tree-directory .ant-tree-treenode>*{z-index:1}.ant-tree.ant-tree-directory .ant-tree-treenode .ant-tree-switcher{transition:color .3s}.ant-tree.ant-tree-directory .ant-tree-treenode .ant-tree-node-content-wrapper{border-radius:0;user-select:none}.ant-tree.ant-tree-directory .ant-tree-treenode .ant-tree-node-content-wrapper:hover{background:0 0}.ant-tree.ant-tree-directory .ant-tree-treenode .ant-tree-node-content-wrapper.ant-tree-node-selected{color:#fff;background:0 0}.ant-tree.ant-tree-directory .ant-tree-treenode-selected::before,.ant-tree.ant-tree-directory .ant-tree-treenode-selected:hover::before{background:#177ddc}.ant-tree.ant-tree-directory .ant-tree-treenode-selected .ant-tree-switcher{color:#fff}.ant-tree.ant-tree-directory .ant-tree-treenode-selected .ant-tree-node-content-wrapper{color:#fff;background:0 0}.ant-tree-checkbox{color:rgba(255,255,255,.85);position:relative;outline:0;cursor:pointer}.ant-tree-checkbox-input:focus+.ant-tree-checkbox-inner,.ant-tree-checkbox-wrapper:hover .ant-tree-checkbox-inner,.ant-tree-checkbox:hover .ant-tree-checkbox-inner{border-color:#177ddc}.ant-tree-checkbox-checked::after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #177ddc;border-radius:2px;visibility:hidden;animation:antCheckboxEffect .36s ease-in-out;animation-fill-mode:backwards;content:''}.ant-tree-checkbox-wrapper:hover .ant-tree-checkbox::after,.ant-tree-checkbox:hover::after{visibility:visible}.ant-input-number__hide-step .ant-input-number-handler-wrap,.ant-select-tree-checkbox-checked::after,.ant-select-tree-checkbox-disabled:hover::after,.ant-select-tree-checkbox-wrapper:hover .ant-select-tree-checkbox-disabled::after,.ant-tree-checkbox-disabled:hover::after,.ant-tree-checkbox-wrapper:hover .ant-tree-checkbox-disabled::after,.exception__img-block::after{visibility:hidden}.ant-tree-checkbox-inner{position:relative;top:0;left:0;display:block;width:16px;height:16px;direction:ltr;background-color:transparent;border:1px solid #434343;border-radius:2px;border-collapse:separate;transition:all .3s}.ant-select-tree-checkbox-inner::after,.ant-tree-checkbox-inner::after{left:21.5%;width:5.71px;transform:rotate(45deg) scale(0) translate(-50%,-50%);opacity:0}.ant-tree-checkbox-inner::after{position:absolute;top:50%;display:table;height:9.14px;border:2px solid #fff;border-top:0;border-left:0;transition:all .1s cubic-bezier(.71,-.46,.88,.6),opacity .1s;content:' '}.ant-tree-checkbox-input{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;cursor:pointer;opacity:0}.ant-tree-checkbox-checked .ant-tree-checkbox-inner::after{position:absolute;display:table;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(1) translate(-50%,-50%);opacity:1;transition:all .2s cubic-bezier(.12,.4,.29,1.46) .1s;content:' '}.ant-tree-checkbox-checked .ant-tree-checkbox-inner{background-color:#177ddc;border-color:#177ddc}.ant-tree-checkbox-disabled{cursor:not-allowed}.ant-tree-checkbox-disabled.ant-tree-checkbox-checked .ant-tree-checkbox-inner::after{border-color:rgba(255,255,255,.3);animation-name:none}.ant-tree-checkbox-disabled .ant-tree-checkbox-input{cursor:not-allowed;pointer-events:none}.ant-tree-checkbox-disabled .ant-tree-checkbox-inner{background-color:rgba(255,255,255,.08);border-color:#434343!important}.ant-tree-checkbox-disabled .ant-tree-checkbox-inner::after{border-color:rgba(255,255,255,.08);border-collapse:separate;animation-name:none}.ant-tree-checkbox-disabled+span{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-tree-checkbox-wrapper{box-sizing:border-box;margin:0;color:rgba(255,255,255,.85);display:inline-flex;align-items:baseline;line-height:unset;cursor:pointer}.ant-tree,.ant-tree-checkbox-group{color:rgba(255,255,255,.85);font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum}.ant-tree-checkbox-wrapper::after{display:inline-block;width:0;overflow:hidden;content:'\a0'}.ant-tree-checkbox-wrapper.ant-tree-checkbox-wrapper-disabled{cursor:not-allowed}.ant-tree-checkbox-wrapper+.ant-tree-checkbox-wrapper{margin-left:8px}.ant-tree-checkbox-wrapper.ant-tree-checkbox-wrapper-in-form-item input[type=checkbox]{width:14px;height:14px}.ant-tree-checkbox+span{padding-right:8px;padding-left:8px}.ant-select-tree-checkbox,.ant-select-tree-checkbox-wrapper,.ant-tree,.ant-tree-checkbox-group{box-sizing:border-box;padding:0}.ant-tree-checkbox-group{margin:0;display:inline-block}.ant-tree-checkbox-group-item{margin-right:8px}.ant-tree-checkbox-group-item:last-child{margin-right:0}.ant-tree-checkbox-group-item+.ant-tree-checkbox-group-item{margin-left:0}.ant-tree-checkbox-indeterminate .ant-tree-checkbox-inner{background-color:transparent;border-color:#434343}.ant-tree-checkbox-indeterminate .ant-tree-checkbox-inner::after{top:50%;left:50%;width:8px;height:8px;background-color:#177ddc;border:0;transform:translate(-50%,-50%) scale(1);opacity:1;content:' '}.ant-tree-checkbox-indeterminate.ant-tree-checkbox-disabled .ant-tree-checkbox-inner::after{background-color:rgba(255,255,255,.3);border-color:rgba(255,255,255,.3)}.ant-tree-checkbox-group-rtl .ant-tree-checkbox-group-item{margin-right:0;margin-left:8px}.ant-tree-checkbox-group-rtl .ant-tree-checkbox-group-item:last-child{margin-left:0!important}.ant-tree-checkbox-group-rtl .ant-tree-checkbox-group-item+.ant-tree-checkbox-group-item{margin-left:8px}.ant-tree{margin:0;background:0 0;border-radius:2px;transition:background-color .3s}.ant-tree-focused:not(:hover):not(.ant-tree-active-focused){background:#111b26}.ant-tree-list-holder-inner{align-items:flex-start}.ant-tree.ant-tree-block-node .ant-tree-list-holder-inner{align-items:stretch}.ant-tree.ant-tree-block-node .ant-tree-list-holder-inner .ant-tree-node-content-wrapper{flex:auto}.ant-tree.ant-tree-block-node .ant-tree-list-holder-inner .ant-tree-treenode.dragging{position:relative}.ant-tree.ant-tree-block-node .ant-tree-list-holder-inner .ant-tree-treenode.dragging::after{position:absolute;top:0;right:0;bottom:4px;left:0;border:1px solid #177ddc;opacity:0;animation:ant-tree-node-fx-do-not-use .3s;animation-play-state:running;animation-fill-mode:forwards;content:'';pointer-events:none}.ant-tree .ant-tree-treenode{display:flex;align-items:flex-start;padding:0 0 4px;outline:0}.ant-tree .ant-tree-treenode-disabled .ant-tree-node-content-wrapper{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-tree .ant-tree-treenode-disabled .ant-tree-node-content-wrapper:hover{background:0 0}.ant-tree .ant-tree-treenode-active .ant-tree-node-content-wrapper{background:rgba(255,255,255,.08)}.ant-tree .ant-tree-treenode:not(.ant-tree .ant-tree-treenode-disabled).filter-node .ant-tree-title{color:inherit;font-weight:500}.ant-tree-indent{align-self:stretch;white-space:nowrap;user-select:none}.ant-tree-indent-unit{display:inline-block;width:24px}.ant-tree-draggable-icon{width:24px;line-height:24px;text-align:center;opacity:.2;transition:opacity .3s}.ant-tree-treenode:hover .ant-tree-draggable-icon{opacity:.45}.ant-tree-switcher{position:relative;flex:none;align-self:stretch;width:24px;margin:0;line-height:24px;text-align:center;cursor:pointer;user-select:none}.ant-tree-switcher .ant-select-tree-switcher-icon,.ant-tree-switcher .ant-tree-switcher-icon{display:inline-block;font-size:10px;vertical-align:baseline}.ant-select-tree-checkbox,.ant-select-tree-checkbox-wrapper{font-size:14px;font-variant:tabular-nums;list-style:none;font-feature-settings:tnum}.ant-tree-switcher .ant-select-tree-switcher-icon svg,.ant-tree-switcher .ant-tree-switcher-icon svg{transition:transform .3s}.ant-tree-switcher-noop{cursor:default}.ant-tree-rtl .ant-tree-switcher_close .ant-tree-switcher-icon svg,.ant-tree-select-dropdown-rtl .ant-select-tree .ant-select-tree-switcher_close .ant-select-tree-switcher-icon svg{transform:rotate(90deg)}.ant-tree-switcher-loading-icon{color:#177ddc}.ant-tree-switcher-leaf-line{position:relative;z-index:1;display:inline-block;width:100%;height:100%}.ant-tree-switcher-leaf-line::before{position:absolute;top:0;right:12px;bottom:-4px;margin-left:-1px;border-right:1px solid #d9d9d9;content:' '}.ant-tree-switcher-leaf-line::after{position:absolute;width:10px;height:14px;border-bottom:1px solid #d9d9d9;content:' '}.ant-tree-checkbox{top:initial;margin:4px 8px 0 0}.ant-tree .ant-tree-node-content-wrapper{position:relative;z-index:auto;min-height:24px;margin:0;padding:0 4px;color:inherit;line-height:24px;background:0 0;border-radius:2px;cursor:pointer;transition:all .3s,border 0s,line-height 0s,box-shadow 0s}.ant-tree .ant-tree-node-content-wrapper:hover{background-color:rgba(255,255,255,.08)}.ant-tree .ant-tree-node-content-wrapper.ant-tree-node-selected{background-color:#11263c}.ant-tree .ant-tree-node-content-wrapper .ant-tree-iconEle{display:inline-block;width:24px;height:24px;line-height:24px;text-align:center;vertical-align:top}.ant-tree .ant-tree-node-content-wrapper .ant-tree-iconEle:empty,.ant-tree-show-line .ant-tree-indent-unit-end::before{display:none}.ant-tree-unselectable .ant-tree-node-content-wrapper:hover{background-color:transparent}.ant-tree-node-content-wrapper{line-height:24px;user-select:none}.ant-tree-node-content-wrapper .ant-tree-drop-indicator{position:absolute;z-index:1;height:2px;background-color:#177ddc;border-radius:1px;pointer-events:none}.ant-tree-node-content-wrapper .ant-tree-drop-indicator::after{position:absolute;top:-3px;left:-6px;width:8px;height:8px;background-color:transparent;border:2px solid #177ddc;border-radius:50%;content:''}.ant-tree .ant-tree-treenode.drop-container>[draggable]{box-shadow:0 0 0 2px #177ddc}.ant-tree-show-line .ant-tree-indent-unit{position:relative;height:100%}.ant-tree-show-line .ant-tree-indent-unit::before{position:absolute;top:0;right:12px;bottom:-4px;border-right:1px solid #434343;content:''}.ant-tree-show-line .ant-tree-switcher{background:#141414}.ant-tree-show-line .ant-tree-switcher-line-icon{vertical-align:-.15em}.ant-tree .ant-tree-treenode-leaf-last .ant-tree-switcher-leaf-line::before{top:auto!important;bottom:auto!important;height:14px!important}.ant-tree-rtl .ant-tree-node-content-wrapper[draggable=true] .ant-tree-drop-indicator::after{right:-6px;left:unset}.ant-tree-rtl.ant-tree-show-line .ant-tree-indent-unit::before{right:auto;left:-13px;border-right:none;border-left:1px solid #434343}.ant-tree-rtl .ant-tree-checkbox,.ant-tree-select-dropdown-rtl .ant-select-tree-checkbox{margin:4px 0 0 8px}.font-highlight{color:#a61d24}.ant-tree-child-tree{overflow:hidden}nz-tree{display:block}.ant-select-tree-checkbox{color:rgba(255,255,255,.85);position:relative;line-height:1;white-space:nowrap;outline:0;cursor:pointer}.ant-select-tree-checkbox-input:focus+.ant-select-tree-checkbox-inner,.ant-select-tree-checkbox-wrapper:hover .ant-select-tree-checkbox-inner,.ant-select-tree-checkbox:hover .ant-select-tree-checkbox-inner{border-color:#177ddc}.ant-select-tree-checkbox-checked::after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #177ddc;border-radius:2px;animation:antCheckboxEffect .36s ease-in-out;animation-fill-mode:backwards;content:''}.ant-color-picker,.ant-select-tree-checkbox-wrapper:hover .ant-select-tree-checkbox::after,.ant-select-tree-checkbox:hover::after{visibility:visible}.ant-select-tree-checkbox-inner{position:relative;top:0;left:0;display:block;width:16px;height:16px;direction:ltr;background-color:transparent;border:1px solid #434343;border-radius:2px;border-collapse:separate;transition:all .3s}.ant-picker-calendar-rtl,.ant-result-rtl,.ant-select-tree-checkbox-rtl,.ant-space-rtl,.ant-tree-select-dropdown-rtl,.avatar-list-rtl,.error-collect-rtl,.exception-rtl,.global-footer-rtl,.loading-default-rtl,.onboarding-rtl,.page-header-rtl,.result-rtl,.reuse-tab-rtl,.setting-drawer-rtl,.tag-select-rtl,html.rtl{direction:rtl}.ant-select-tree-checkbox-inner::after{position:absolute;top:50%;display:table;height:9.14px;border:2px solid #fff;border-top:0;border-left:0;transition:all .1s cubic-bezier(.71,-.46,.88,.6),opacity .1s;content:' '}.ant-select-tree-checkbox-input{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;cursor:pointer;opacity:0}.ant-select-tree-checkbox-checked .ant-select-tree-checkbox-inner::after{position:absolute;display:table;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(1) translate(-50%,-50%);opacity:1;transition:all .2s cubic-bezier(.12,.4,.29,1.46) .1s;content:' '}.ant-select-tree-checkbox-checked .ant-select-tree-checkbox-inner{background-color:#177ddc;border-color:#177ddc}.ant-select-tree-checkbox-disabled{cursor:not-allowed}.ant-select-tree-checkbox-disabled.ant-select-tree-checkbox-checked .ant-select-tree-checkbox-inner::after{border-color:rgba(255,255,255,.3);animation-name:none}.ant-select-tree-checkbox-disabled .ant-select-tree-checkbox-input{cursor:not-allowed;pointer-events:none}.ant-select-tree-checkbox-disabled .ant-select-tree-checkbox-inner{background-color:rgba(255,255,255,.08);border-color:#434343!important}.ant-select-tree-checkbox-disabled .ant-select-tree-checkbox-inner::after{border-color:rgba(255,255,255,.08);border-collapse:separate;animation-name:none}.ant-select-tree-checkbox-disabled+span{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-select-tree-checkbox-wrapper{margin:0;color:rgba(255,255,255,.85);display:inline-flex;align-items:baseline;line-height:unset;cursor:pointer}.ant-select-tree,.ant-select-tree-checkbox-group{color:rgba(255,255,255,.85);line-height:1.5715;font-size:14px;font-feature-settings:tnum;list-style:none;box-sizing:border-box;font-variant:tabular-nums}.ant-select-tree-checkbox-wrapper::after{display:inline-block;width:0;overflow:hidden;content:'\a0'}.ant-select-tree-checkbox-wrapper.ant-select-tree-checkbox-wrapper-disabled{cursor:not-allowed}.ant-select-tree-checkbox-wrapper+.ant-select-tree-checkbox-wrapper{margin-left:8px}.ant-select-tree-checkbox-wrapper.ant-select-tree-checkbox-wrapper-in-form-item input[type=checkbox]{width:14px;height:14px}.ant-select-tree-checkbox+span{padding-right:8px;padding-left:8px}.ant-select-tree-checkbox-group{margin:0;padding:0;display:inline-block}.ant-select-tree-checkbox-group-item{margin-right:8px}.ant-select-tree-checkbox-group-item:last-child{margin-right:0}.ant-select-tree-checkbox-group-item+.ant-select-tree-checkbox-group-item{margin-left:0}.ant-select-tree-checkbox-indeterminate .ant-select-tree-checkbox-inner{background-color:transparent;border-color:#434343}.ant-select-tree-checkbox-indeterminate .ant-select-tree-checkbox-inner::after{top:50%;left:50%;width:8px;height:8px;background-color:#177ddc;border:0;transform:translate(-50%,-50%) scale(1);opacity:1;content:' '}.ant-select-tree-checkbox-indeterminate.ant-select-tree-checkbox-disabled .ant-select-tree-checkbox-inner::after{background-color:rgba(255,255,255,.3);border-color:rgba(255,255,255,.3)}.ant-select-tree-checkbox-group-rtl .ant-select-tree-checkbox-group-item{margin-right:0;margin-left:8px}.ant-select-tree-checkbox-group-rtl .ant-select-tree-checkbox-group-item:last-child{margin-left:0!important}.ant-select-tree-checkbox-group-rtl .ant-select-tree-checkbox-group-item+.ant-select-tree-checkbox-group-item{margin-left:8px}.ant-tree-select-dropdown{padding:8px 4px}.ant-tree-select-dropdown .ant-select-tree{border-radius:0}.ant-tree-select-dropdown .ant-select-tree-list-holder-inner{align-items:stretch}.ant-tree-select-dropdown .ant-select-tree-list-holder-inner .ant-select-tree-treenode .ant-select-tree-node-content-wrapper{flex:auto}.ant-select-tree{margin:0;padding:0;background:0 0;border-radius:2px;transition:background-color .3s}.ant-select-tree-focused:not(:hover):not(.ant-select-tree-active-focused){background:#111b26}.ant-select-tree-list-holder-inner{align-items:flex-start}.ant-select-tree.ant-select-tree-block-node .ant-select-tree-list-holder-inner{align-items:stretch}.ant-select-tree.ant-select-tree-block-node .ant-select-tree-list-holder-inner .ant-select-tree-node-content-wrapper{flex:auto}.ant-select-tree.ant-select-tree-block-node .ant-select-tree-list-holder-inner .ant-select-tree-treenode.dragging{position:relative}.ant-select-tree.ant-select-tree-block-node .ant-select-tree-list-holder-inner .ant-select-tree-treenode.dragging::after{position:absolute;top:0;right:0;bottom:4px;left:0;border:1px solid #177ddc;opacity:0;animation:ant-tree-node-fx-do-not-use .3s;animation-play-state:running;animation-fill-mode:forwards;content:'';pointer-events:none}.ant-select-tree .ant-select-tree-treenode{display:flex;align-items:flex-start;padding:0 0 4px;outline:0}.ant-select-tree .ant-select-tree-treenode-disabled .ant-select-tree-node-content-wrapper{color:rgba(255,255,255,.3);cursor:not-allowed}.ant-select-tree .ant-select-tree-treenode-disabled .ant-select-tree-node-content-wrapper:hover{background:0 0}.ant-select-tree .ant-select-tree-treenode-active .ant-select-tree-node-content-wrapper{background:rgba(255,255,255,.08)}.ant-select-tree .ant-select-tree-treenode:not(.ant-select-tree .ant-select-tree-treenode-disabled).filter-node .ant-select-tree-title{color:inherit;font-weight:500}.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected .ant-picker-calendar-date .ant-picker-calendar-date-value,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected .ant-picker-calendar-date-today .ant-picker-calendar-date-value,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected:hover .ant-picker-calendar-date .ant-picker-calendar-date-value,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected:hover .ant-picker-calendar-date-today .ant-picker-calendar-date-value,.ant-select-tree-switcher-loading-icon{color:#177ddc}.ant-select-tree-indent{align-self:stretch;white-space:nowrap;user-select:none}.ant-select-tree-indent-unit{display:inline-block;width:24px}.ant-select-tree-draggable-icon{width:24px;line-height:24px;text-align:center;opacity:.2;transition:opacity .3s}.ant-select-tree-treenode:hover .ant-select-tree-draggable-icon{opacity:.45}.ant-select-tree-switcher{position:relative;flex:none;align-self:stretch;width:24px;margin:0;line-height:24px;text-align:center;cursor:pointer;user-select:none}.ant-select-tree-switcher .ant-select-tree-switcher-icon,.ant-select-tree-switcher .ant-tree-switcher-icon{display:inline-block;font-size:10px;vertical-align:baseline}.ant-select-tree-switcher .ant-select-tree-switcher-icon svg,.ant-select-tree-switcher .ant-tree-switcher-icon svg{transition:transform .3s}.ant-select-tree-switcher-noop{cursor:default}.ant-select-tree-switcher_close .ant-select-tree-switcher-icon svg{transform:rotate(-90deg)}.ant-select-tree-switcher-leaf-line{position:relative;z-index:1;display:inline-block;width:100%;height:100%}.ant-select-tree-switcher-leaf-line::before{position:absolute;top:0;right:12px;bottom:-4px;margin-left:-1px;border-right:1px solid #d9d9d9;content:' '}.ant-select-tree-switcher-leaf-line::after{position:absolute;width:10px;height:14px;border-bottom:1px solid #d9d9d9;content:' '}.ant-select-tree-checkbox{top:initial;margin:4px 8px 0 0}.ant-select-tree .ant-select-tree-node-content-wrapper{position:relative;z-index:auto;min-height:24px;margin:0;padding:0 4px;color:inherit;line-height:24px;background:0 0;border-radius:2px;cursor:pointer;transition:all .3s,border 0s,line-height 0s,box-shadow 0s}.ant-select-tree .ant-select-tree-node-content-wrapper:hover,.g2-mini-progress__wrap{background-color:rgba(255,255,255,.08)}.ant-select-tree .ant-select-tree-node-content-wrapper.ant-select-tree-node-selected{background-color:#11263c}.ant-select-tree .ant-select-tree-node-content-wrapper .ant-select-tree-iconEle{display:inline-block;width:24px;height:24px;line-height:24px;text-align:center;vertical-align:top}.ant-select-tree .ant-select-tree-node-content-wrapper .ant-select-tree-iconEle:empty,.ant-select-tree-show-line .ant-select-tree-indent-unit-end::before{display:none}.ant-select-tree-unselectable .ant-select-tree-node-content-wrapper:hover{background-color:transparent}.ant-select-tree-node-content-wrapper{line-height:24px;user-select:none}.ant-select-tree-node-content-wrapper .ant-tree-drop-indicator{position:absolute;z-index:1;height:2px;background-color:#177ddc;border-radius:1px;pointer-events:none}.ant-select-tree-node-content-wrapper .ant-tree-drop-indicator::after{position:absolute;top:-3px;left:-6px;width:8px;height:8px;background-color:transparent;border:2px solid #177ddc;border-radius:50%;content:''}.ant-select-tree .ant-select-tree-treenode.drop-container>[draggable]{box-shadow:0 0 0 2px #177ddc}.ant-select-tree-show-line .ant-select-tree-indent-unit{position:relative;height:100%}.ant-select-tree-show-line .ant-select-tree-indent-unit::before{position:absolute;top:0;right:12px;bottom:-4px;border-right:1px solid #434343;content:''}.ant-select-tree-show-line .ant-select-tree-switcher{background:#141414}.ant-select-tree-show-line .ant-select-tree-switcher-line-icon{vertical-align:-.15em}.ant-select-tree .ant-select-tree-treenode-leaf-last .ant-select-tree-switcher-leaf-line::before{top:auto!important;bottom:auto!important;height:14px!important}.ant-tree-select-dropdown-rtl .ant-select-tree .ant-select-tree-switcher-loading-icon{transform:scaleY(-1)}.ant-tree.ant-select-tree.ant-tree-show-line nz-tree-node[builtin]:not(:last-child)>li::before{content:' ';width:1px;border-left:1px solid #d9d9d9;height:calc(100% - 16px);position:absolute;left:12px;margin:26px 0}.ant-select-dropdown.ant-select-tree-dropdown{top:100%;left:0;position:relative;width:100%;margin-top:4px;margin-bottom:4px;overflow:auto}.ant-picker-calendar{box-sizing:border-box;margin:0;padding:0;color:rgba(255,255,255,.85);font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:tnum;background:#141414}.ant-picker-calendar-header{display:flex;justify-content:flex-end;padding:12px 0}.ant-picker-calendar-header .ant-picker-calendar-year-select{min-width:80px}.ant-picker-calendar-header .ant-picker-calendar-month-select{min-width:70px;margin-left:8px}.ant-picker-calendar-header .ant-picker-calendar-mode-switch{margin-left:8px}.ant-picker-calendar .ant-picker-panel{background:#141414;border:0;border-top:1px solid #303030;border-radius:0}.ant-picker-calendar .ant-picker-panel .ant-picker-date-panel,.ant-picker-calendar .ant-picker-panel .ant-picker-month-panel{width:auto}.ant-picker-calendar .ant-picker-panel .ant-picker-body{padding:8px 0}.ant-picker-calendar .ant-picker-panel .ant-picker-content{width:100%}.ant-picker-calendar-mini{border-radius:2px}.ant-picker-calendar-mini .ant-picker-calendar-header{padding-right:8px;padding-left:8px}.ant-picker-calendar-mini .ant-picker-panel{border-radius:0 0 2px 2px}.ant-picker-calendar-mini .ant-picker-content{height:256px}.ant-picker-calendar-mini .ant-picker-content th{height:auto;padding:0;line-height:18px}.ant-picker-calendar-mini .ant-picker-cell::before{pointer-events:none}.ant-picker-calendar-full .ant-picker-panel{display:block;width:100%;text-align:right;background:#141414;border:0}.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell .ant-picker-calendar-date-today::before,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell::before{display:none}.ant-picker-calendar-full .ant-picker-panel .ant-picker-body td,.ant-picker-calendar-full .ant-picker-panel .ant-picker-body th{padding:0}.ant-picker-calendar-full .ant-picker-panel .ant-picker-body th{height:auto;padding:0 12px 5px 0;line-height:18px}.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell:hover .ant-picker-calendar-date{background:rgba(255,255,255,.08)}.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected .ant-picker-calendar-date,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected .ant-picker-calendar-date-today,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected:hover .ant-picker-calendar-date,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected:hover .ant-picker-calendar-date-today{background:#111b26}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date{display:block;width:auto;height:auto;margin:0 4px;padding:4px 8px 0;border:0;border-top:2px solid #303030;border-radius:0;transition:background .3s}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-value{line-height:24px;transition:color .3s}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-content{position:static;width:auto;height:86px;overflow-y:auto;color:rgba(255,255,255,.85);line-height:1.5715;text-align:left}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-today{border-color:#177ddc}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-today .ant-picker-calendar-date-value{color:rgba(255,255,255,.85)}@media only screen and (max-width:480px){.ant-picker-calendar-header{display:block}.ant-picker-calendar-header .ant-picker-calendar-year-select{width:50%}.ant-picker-calendar-header .ant-picker-calendar-month-select{width:calc(50% - 8px)}.ant-picker-calendar-header .ant-picker-calendar-mode-switch{width:100%;margin-top:8px;margin-left:0}.ant-picker-calendar-header .ant-picker-calendar-mode-switch>label{width:50%;text-align:center}}.ant-picker-calendar-rtl .ant-picker-calendar-header .ant-picker-calendar-mode-switch,.ant-picker-calendar-rtl .ant-picker-calendar-header .ant-picker-calendar-month-select{margin-right:8px;margin-left:0}.ant-picker-calendar-rtl.ant-picker-calendar-full .ant-picker-panel{text-align:left}.ant-picker-calendar-rtl.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-content,.drawer-footer{text-align:right}.ant-picker-calendar-rtl.ant-picker-calendar-full .ant-picker-panel .ant-picker-body th{padding:0 0 5px 12px}.ant-result{padding:48px 32px}.ant-result-success .ant-result-icon>.anticon{color:#49aa19}.ant-result-error .ant-result-icon>.anticon{color:#a61d24}.ant-result-info .ant-result-icon>.anticon{color:#177ddc}.ant-result-warning .ant-result-icon>.anticon{color:#d89614}.ant-result-image{width:250px;height:295px;margin:auto}.ant-result-icon{margin-bottom:24px;text-align:center}.ant-result-icon>.anticon{font-size:72px}.ant-result-title{color:rgba(255,255,255,.85);font-size:24px;line-height:1.8;text-align:center}.ant-result-subtitle{color:rgba(255,255,255,.45);font-size:14px;line-height:1.6;text-align:center}.ant-result-extra{margin:24px 0 0;text-align:center}.ant-result-extra>*{margin-right:8px}.ant-result-extra>:last-child{margin-right:0}.ant-result-content{margin-top:24px;padding:24px 40px}.ant-result-rtl .ant-result-extra>*{margin-right:0;margin-left:8px}.ant-result-rtl .ant-result-extra>:last-child{margin-left:0}nz-result{display:block}.ant-space{display:inline-flex}.ant-space-vertical{flex-direction:column}.ant-space-align-center{align-items:center}.ant-space-align-start{align-items:flex-start}.ant-space-align-end{align-items:flex-end}.ant-space-align-baseline{align-items:baseline}.ant-space-item:empty{display:none}nz-space-item{display:block}.ant-image{position:relative;display:inline-block}.ant-image-mask,.ant-image-placeholder{position:absolute;left:0;right:0;bottom:0}.ant-image-img{width:100%;height:auto;vertical-align:middle}.ant-image-img-placeholder{background-color:#f5f5f5;background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTQuNSAyLjVoLTEzQS41LjUgMCAwIDAgMSAzdjEwYS41LjUgMCAwIDAgLjUuNWgxM2EuNS41IDAgMCAwIC41LS41VjNhLjUuNSAwIDAgMC0uNS0uNXpNNS4yODEgNC43NWExIDEgMCAwIDEgMCAyIDEgMSAwIDAgMSAwLTJ6bTguMDMgNi44M2EuMTI3LjEyNyAwIDAgMS0uMDgxLjAzSDIuNzY5YS4xMjUuMTI1IDAgMCAxLS4wOTYtLjIwN2wyLjY2MS0zLjE1NmEuMTI2LjEyNiAwIDAgMSAuMTc3LS4wMTZsLjAxNi4wMTZMNy4wOCAxMC4wOWwyLjQ3LTIuOTNhLjEyNi4xMjYgMCAwIDEgLjE3Ny0uMDE2bC4wMTUuMDE2IDMuNTg4IDQuMjQ0YS4xMjcuMTI3IDAgMCAxLS4wMi4xNzV6IiBmaWxsPSIjOEM4QzhDIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz48L3N2Zz4=);background-repeat:no-repeat;background-position:center center;background-size:30%}.ant-image-mask{top:0;display:flex;align-items:center;justify-content:center;color:#fff;background:rgba(0,0,0,.5);cursor:pointer;opacity:0;transition:opacity .3s}.ant-image-mask:hover,.cdk-overlay-backdrop.ant-image-preview-mask{opacity:1}.ant-image-preview-img,.ant-image-preview-img-wrapper{transition:transform .3s cubic-bezier(.215,.61,.355,1) 0s}.ant-image-mask-info{padding:0 4px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-image-mask-info .anticon{margin-inline-end:4px}.ant-image-placeholder{top:0}.ant-image-preview{pointer-events:none;height:100%;text-align:center}.ant-image-preview.ant-zoom-appear,.ant-image-preview.ant-zoom-enter{transform:none;opacity:0;animation-duration:.3s;user-select:none}.ant-image-preview-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;height:100%;background-color:rgba(0,0,0,.45)}.ant-image-preview-mask-hidden{display:none}.ant-image-preview-wrap{position:fixed;top:0;right:0;bottom:0;left:0;overflow:auto;outline:0;-webkit-overflow-scrolling:touch;z-index:1080}.ant-image-preview-body{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.ant-image-preview-img{max-width:100%;max-height:100%;vertical-align:middle;transform:scale3d(1,1,1);cursor:grab;user-select:none;pointer-events:auto}.ant-image-preview-img-wrapper{position:absolute;top:0;right:0;bottom:0;left:0}.ant-image-preview-img-wrapper::before{display:inline-block;width:1px;height:50%;margin-right:-1px;content:''}.ant-image-preview-moving .ant-image-preview-img{cursor:grabbing}.ant-image-preview-moving .ant-image-preview-img-wrapper{transition-duration:0s}.ant-image-preview-operations{box-sizing:border-box;margin:0;padding:0;font-size:14px;font-variant:tabular-nums;line-height:1.5715;font-feature-settings:tnum;position:absolute;top:0;right:0;z-index:1;display:flex;flex-direction:row-reverse;align-items:center;width:100%;color:rgba(255,255,255,.85);list-style:none;background:rgba(0,0,0,.1);pointer-events:auto}.ant-image-preview-operations-icon,.ant-image-preview-switch-left>.anticon,.ant-image-preview-switch-right>.anticon{font-size:18px}.ant-image-preview-operations-operation{margin-left:12px;padding:12px;cursor:pointer}.ant-image-preview-operations-operation-disabled{color:rgba(255,255,255,.25);pointer-events:none}.ant-image-preview-operations-operation:last-of-type{margin-left:0}.ant-image-preview-operations-progress{position:absolute;left:50%;transform:translateX(-50%)}.ant-image-preview-switch-left,.ant-image-preview-switch-right{position:absolute;top:50%;right:10px;z-index:1;display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin-top:-22px;color:rgba(255,255,255,.85);background:rgba(0,0,0,.1);cursor:pointer;pointer-events:auto}.ant-color-picker-color-block,.ant-color-picker-slider-alpha{background-image:conic-gradient(rgba(0,0,0,.06) 0 25%,transparent 0 50%,rgba(0,0,0,.06) 0 75%,transparent 0)}.ant-image-preview-switch-left-disabled,.ant-image-preview-switch-right-disabled{color:rgba(255,255,255,.25);cursor:not-allowed}.ant-image-preview-switch-left-disabled>.anticon,.ant-image-preview-switch-right-disabled>.anticon{cursor:not-allowed}.ant-image-preview-switch-left{left:10px}.ant-image-preview-switch-right{right:10px}.ant-cron-expression{display:flex;flex-wrap:nowrap}.ant-cron-expression-content{width:100%}.ant-cron-expression-content .ant-cron-expression-input-group-error-focus{box-shadow:0 0 0 2px rgba(166,29,36,.2)}.ant-cron-expression nz-cron-expression-input{width:20%}.ant-cron-expression-input-group{display:flex;flex-wrap:nowrap;align-items:center}.ant-cron-expression-input-group input{border:none!important;box-shadow:none!important;width:100%;outline:0;padding:0;border-radius:0}.ant-cron-expression-label-group,.pb0,.py0{padding-bottom:0!important}.ant-cron-expression-input-group-focus{border-color:#177ddc;box-shadow:0 0 0 2px rgba(23,125,220,.2);outline:0}.ant-cron-expression nz-cron-expression-label{width:20%}.ant-cron-expression-label-group{display:flex;width:100%;flex-wrap:nowrap;justify-content:space-around;padding-top:0!important}.ant-cron-expression-label-group-default{padding:0 12px}.ant-cron-expression-label-foucs{color:#177ddc}.ant-cron-expression-map{margin-left:12px}.ant-cron-expression-preview{display:flex;padding:12px}.ant-cron-expression-preview-dateTime{flex:1 1 auto;display:flex;align-items:center}.ant-cron-expression-preview-dateTime-center{justify-content:center}.ant-cron-expression-preview-content{flex:0 0 220px;display:flex;align-items:center;padding-left:16px}.ant-cron-expression-preview-content-date{flex:1 1 auto}.ant-cron-expression-preview-icon,.ant-cron-expression-preview-icon li,.ant-cron-expression-preview-list,.ant-cron-expression-preview-list li{list-style:none;margin:0;padding:0}.ant-cron-expression-preview-list{overflow-y:scroll;height:132px}.ant-cron-expression-preview-icon{height:100%}.ant-cron-expression-error{color:#a61d24}.ant-cron-expression-hint p{display:flex}.ant-cron-expression-hint span{display:inline-block;min-width:40px}.ant-qrcode{display:inline-block;position:relative;padding:12px}.ant-qrcode>canvas{display:block}.ant-qrcode-border{border-radius:2px;border:1px solid #303030}.ant-qrcode-mask{position:absolute;top:0;right:0;z-index:10;display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;text-align:center;background-color:rgba(255,255,255,.96)}.ant-qrcode-expired{color:rgba(0,0,0,.85)}.ant-water-mark{position:relative}.ant-color-picker{position:absolute;z-index:1;display:block;width:max-content;min-width:250px}.ant-color-picker-hidden{display:none}.ant-color-picker-panel{display:flex;flex-direction:column;width:250px;border-radius:2px}.ant-color-picker-panel-disabled{cursor:not-allowed}.ant-color-picker-select{margin-bottom:12px}.ant-color-picker-select .ant-color-picker-palette{min-height:160px;overflow:hidden;border-radius:2px}.ant-color-picker-select .ant-color-picker-palette>.ant-color-picker-gradient{border-top-left-radius:5px}.ant-color-picker-saturation{position:absolute;border-radius:inherit;top:0;left:0;right:0;bottom:0}.ant-color-picker-handler{box-sizing:border-box;width:16px;height:16px;border:1px solid #fff;border-radius:50%}.ant-color-picker-handler-sm{width:12px;height:12px}.ant-color-picker-slider{width:100%;margin-bottom:12px}.ant-color-picker-slider .ant-color-picker-palette{height:8px}.ant-color-picker-slider .ant-color-picker-gradient{border-radius:2px}.ant-color-picker-slider-alpha{background-size:8px 8px}.ant-color-picker-trigger{min-width:32px;height:32px;border-radius:2px;border:1px solid #303030;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;padding:3px}.ant-color-picker-trigger:hover{border-color:#177ddc}.ant-color-picker-trigger-text{margin:0 4px 0 8px;font-size:14px}.ant-color-picker-sm{min-width:24px;height:24px}.ant-color-picker-lg{min-width:40px;height:40px}.ant-color-picker-lg .ant-color-picker-trigger-text{font-size:16px}.ant-color-picker-color-block{position:relative;width:28px;height:28px;margin-left:8px;background-size:50% 50%;overflow:hidden;border-radius:2px}.ant-color-picker-color-block-inner{box-sizing:border-box;width:100%;height:100%;border:1px solid #303030}.ant-color-picker-slider-container{display:flex}.ant-color-picker-slider-container .ant-color-picker-slider-group{flex:1}.ant-color-picker-slider-container .ant-color-picker-slider-group-disabled-alpha{display:flex;align-items:center}.ant-color-picker-slider-container .ant-color-picker-slider-group-disabled-alpha .ant-color-picker-slider{margin-bottom:0}.ant-color-picker-title{display:flex}.ant-color-picker-title-content{flex:1;margin-bottom:8px}.ant-color-picker-title .ant-color-picker-clear{flex:0 0 18px;margin-left:8px}.ant-color-picker-input-container .ant-color-picker-input,.search__form .ant-form-item-control{flex:1}.ant-color-picker-clear{width:18px;height:18px;border-radius:2px;border:1px solid #303030;position:relative;cursor:pointer;overflow:hidden;margin-bottom:8px}.ant-color-picker-clear::after{content:"";position:absolute;inset-inline-end:1px;top:0;display:block;width:40px;height:2px;transform-origin:right;transform:rotate(-45deg);background-color:#f5222d}.ant-color-picker-input-container{display:flex}.ant-color-picker-input-container .ant-input,.ant-color-picker-input-container .ant-select{font-size:12px}.ant-color-picker-input-container .ant-input-number{font-size:12px;width:auto}.ant-color-picker-input-container .ant-input-number-sm input{padding:0 0 0 4px}.ant-color-picker-input-container .ant-select-selector{padding:0}.ant-color-picker-input-container .ant-color-picker-format-select{width:auto}.ant-color-picker-input-container .ant-color-picker-input .ant-color-picker-hex-input{padding:0;margin-right:4px}.ant-color-picker-input-container .ant-color-picker-input .ant-color-picker-hsb-input,.ant-color-picker-input-container .ant-color-picker-input .ant-color-picker-rgb-input{display:flex;gap:4px;align-items:center}.ant-color-picker-input-container .ant-color-picker-alpha-input,.ant-color-picker-input-container .ant-color-picker-steppers{flex:0 0 44px}.ant-color-picker-disabled{color:rgba(255,255,255,.3);background:rgba(255,255,255,.08);cursor:not-allowed}.ant-color-picker-disabled .ant-color-picker-trigger{cursor:not-allowed}.ant-color-picker-disabled .ant-color-picker-trigger:hover{border-color:#303030}.ant-color-picker-inline{display:inline-block}.ant-color-picker-inline .ant-color-picker-color-block{margin:0;width:24px;height:24px}.ant-color-picker-inline-lg .ant-color-picker-color-block{width:32px;height:32px}.ant-color-picker-inline-sm .ant-color-picker-color-block{width:16px;height:16px}sf+st{margin-top:16px}.ant-btn:not(.ant-btn-link)+.ant-btn,.ant-btn:not(.ant-btn-link)+nz-button-group,.ant-btn:not(.ant-btn-link)+nz-dropdown,.ant-btn:not(.ant-btn-link)+nz-popconfirm,nz-button-group+.ant-btn,nz-button-group+nz-popconfirm,nz-dropdown+.ant-btn,nz-popconfirm+.ant-btn,nz-popconfirm+nz-button-group,nz-popconfirm+nz-popconfirm{margin-left:8px}.ant-btn-group .ant-btn+.ant-btn{margin-left:-1px}.ant-transfer-operation .ant-btn+.ant-btn{margin-left:initial}[dir=rtl] .ant-btn+.ant-btn,[dir=rtl] .ant-btn+nz-button-group,[dir=rtl] .ant-btn+nz-dropdown,[dir=rtl] .ant-btn+nz-popconfirm,[dir=rtl] nz-button-group+.ant-btn,[dir=rtl] nz-button-group+nz-popconfirm,[dir=rtl] nz-dropdown+.ant-btn,[dir=rtl] nz-popconfirm+.ant-btn,[dir=rtl] nz-popconfirm+nz-button-group,[dir=rtl] nz-popconfirm+nz-popconfirm{margin-right:8px;margin-left:inherit}a:focus{text-decoration:none}.ant-card{margin-bottom:16px}.ant-card__body-nopadding .ant-card-body{padding:0!important}@media (min-width:300px){.ant-drawer-left .drawer-sm,.ant-drawer-right .drawer-sm{width:auto!important;max-width:300px}}@media (max-width:299px){.ant-drawer-left .drawer-sm,.ant-drawer-right .drawer-sm{width:100%!important}}@media (min-width:600px){.ant-drawer-left .drawer-md,.ant-drawer-right .drawer-md{width:auto!important;max-width:600px}}@media (max-width:599px){.ant-drawer-left .drawer-md,.ant-drawer-right .drawer-md{width:100%!important}}@media (min-width:900px){.ant-drawer-left .drawer-lg,.ant-drawer-right .drawer-lg{width:auto!important;max-width:900px}}@media (max-width:899px){.ant-drawer-left .drawer-lg,.ant-drawer-right .drawer-lg{width:100%!important}}@media (min-width:1200px){.ant-drawer-left .drawer-xl,.ant-drawer-right .drawer-xl{width:auto!important;max-width:1200px}}@media (max-width:1199px){.ant-drawer-left .drawer-xl,.ant-drawer-right .drawer-xl{width:100%!important}}@media (min-height:200px){.ant-drawer-bottom .drawer-sm,.ant-drawer-top .drawer-sm{height:auto!important;max-height:200px}}@media (max-height:199px){.ant-drawer-bottom .drawer-sm,.ant-drawer-top .drawer-sm{height:100%!important}}@media (min-height:400px){.ant-drawer-bottom .drawer-md,.ant-drawer-top .drawer-md{height:auto!important;max-height:400px}}@media (max-height:399px){.ant-drawer-bottom .drawer-md,.ant-drawer-top .drawer-md{height:100%!important}}@media (min-height:600px){.ant-drawer-bottom .drawer-lg,.ant-drawer-top .drawer-lg{height:auto!important;max-height:600px}}@media (max-height:599px){.ant-drawer-bottom .drawer-lg,.ant-drawer-top .drawer-lg{height:100%!important}}@media (min-height:800px){.ant-drawer-bottom .drawer-xl,.ant-drawer-top .drawer-xl{height:auto!important;max-height:800px}}@media (max-height:799px){.ant-drawer-bottom .drawer-xl,.ant-drawer-top .drawer-xl{height:100%!important}}.drawer-footer{position:absolute;bottom:0;left:0;width:100%;padding:10px 24px;background:#1f1f1f;border-top:1px solid #303030;border-radius:0 0 2px 2px}.ant-form-item-label em{color:#bfbfbf}.ant-form-item-control em{margin-left:8px}[dir=rtl] .ant-form-item-control em{margin-right:8px;margin-left:inherit}@media (min-width:576px){.modal-sm .ant-modal{width:auto!important;max-width:300px}}@media (min-width:768px){.modal-md .ant-modal{width:auto!important;max-width:600px}}@media (min-width:992px){.modal-lg .ant-modal{width:auto!important;max-width:900px}}@media (min-width:1600px){.modal-xl .ant-modal{width:auto!important;max-width:1200px}}.modal-header{display:flex;justify-content:space-between;margin:-24px -24px 24px;padding:16px 24px;background:#141414;border-bottom:1px solid #303030;border-radius:2px 2px 0 0}.modal-footer,.notice-icon__clear{border-top:1px solid #303030;border-radius:0 0 2px 2px}.modal-title{margin:0;font-size:16px;font-weight:500;line-height:22px;color:rgba(255,255,255,.85);word-wrap:break-word}.modal-title small{margin-left:8px;font-size:12px;color:#8c8c8c}.modal-spin{display:block;min-height:150px;line-height:150px;text-align:center}.modal-footer{margin:24px -24px -24px;padding:10px 16px;text-align:right}.modal-include-tabs nz-tabset{margin-top:-16px}.modal-body-nopadding .ant-modal-body{padding:0!important}.MODAL-DRAG-HANDLE{cursor:move}.ant-table td .img,.ant-table td>img{max-width:32px;max-height:32px;vertical-align:middle;border-radius:4px}.ant-table td .img:not(:last-child),.ant-table td>img:not(:last-child){margin-right:4px}.ant-table-rep__hide-header-footer .ant-table-footer,.ant-table-rep__hide-header-footer .ant-table-title,.ant-table-rep__title{display:none}[dir=rtl] .ant-table td .img,[dir=rtl] .ant-table td>img{margin-right:inherit;margin-left:4px}@media screen and (max-width:767px){.ant-table-rep__title{display:inline-block;width:100px;padding-right:8px;color:rgba(0,0,0,.5);text-align:right}.ant-table-rep__hide-header-footer .ant-table-footer,.ant-table-rep__hide-header-footer .ant-table-title{display:block}.ant-table-rep .ant-table table{table-layout:auto!important}.ant-table-rep .ant-table col,.ant-table-rep .ant-table table{width:100%!important;min-width:auto!important}.ant-table-rep .ant-table-thead{display:none}.ant-table-rep .ant-table-title{text-align:center;background:#303030}.ant-table-rep .ant-table-tbody>tr:nth-child(4n+3){background:#f9f9f9}.ant-table-rep .ant-table-tbody>tr>td{display:flex;align-items:center;width:100%;padding:8px;text-align:left!important;white-space:inherit;border-bottom:none}.ant-table-rep .ant-table-tbody>tr>td .ant-table-rep__title+:not(.ant-avatar){flex:1;word-break:break-all}}.ant-tag__plus .ant-tag{background:#fff;border-style:dashed}.tag-wrap-list-spacing{margin-top:-8px}.onboarding__footer,.tag-wrap-list-spacing .ant-tag{margin-top:8px}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small{font-size:65%}.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small{font-size:75%}.h1{font-size:34px}.h2{font-size:26px}.h3{font-size:22px}.h4{font-size:18px}.h5{font-size:16px}.h6{font-size:14px}.list-styled{list-style:inherit;padding-right:18px;padding-left:0}.list-unstyled{list-style:none;padding-right:0;padding-left:inherit}fieldset{border:none}.display-1{font-size:32px}.display-2{font-size:24px}.display-3{font-size:20px}.search__form .ant-form-item{margin-right:0;margin-bottom:24px}.half-float{position:relative}.half-float img{display:block;max-width:100%;height:auto}.half-float .half-float-bottom{position:absolute;z-index:2;left:50%}.half-float.half-float-sm{margin-bottom:42px}.half-float.half-float-sm .half-float-bottom{bottom:-32px;width:64px;height:64px;margin-left:-32px}.half-float.half-float-md{margin-bottom:50px}.half-float.half-float-md .half-float-bottom{bottom:-40px;width:80px;height:80px;margin-left:-40px}.half-float.half-float-lg{margin-bottom:58px}.half-float.half-float-lg .half-float-bottom{bottom:-48px;width:96px;height:96px;margin-left:-48px}.row-masonry{position:relative;column-gap:16px;width:100%;margin:0;padding:0}.row-masonry>.col-masonry{display:inline-block;width:100%;min-height:1em;margin-bottom:15px}.sf__array>.ant-form-item,.sf__title{margin-bottom:8px}.row-masonry img{max-width:100%}@media only screen and (min-width:480px){.row-masonry-xs-1{column-count:1;columns:1}.row-masonry-xs-2{column-count:2;columns:2}.row-masonry-xs-3{column-count:3;columns:3}.row-masonry-xs-4{column-count:4;columns:4}.row-masonry-xs-5{column-count:5;columns:5}.row-masonry-xs-6{column-count:6;columns:6}.row-masonry-xs-7{column-count:7;columns:7}.row-masonry-xs-8{column-count:8;columns:8}.row-masonry-xs-9{column-count:9;columns:9}}@media only screen and (min-width:576px){.row-masonry-sm-1{column-count:1;columns:1}.row-masonry-sm-2{column-count:2;columns:2}.row-masonry-sm-3{column-count:3;columns:3}.row-masonry-sm-4{column-count:4;columns:4}.row-masonry-sm-5{column-count:5;columns:5}.row-masonry-sm-6{column-count:6;columns:6}.row-masonry-sm-7{column-count:7;columns:7}.row-masonry-sm-8{column-count:8;columns:8}.row-masonry-sm-9{column-count:9;columns:9}}@media only screen and (min-width:768px){.row-masonry-md-1{column-count:1;columns:1}.row-masonry-md-2{column-count:2;columns:2}.row-masonry-md-3{column-count:3;columns:3}.row-masonry-md-4{column-count:4;columns:4}.row-masonry-md-5{column-count:5;columns:5}.row-masonry-md-6{column-count:6;columns:6}.row-masonry-md-7{column-count:7;columns:7}.row-masonry-md-8{column-count:8;columns:8}.row-masonry-md-9{column-count:9;columns:9}}@media only screen and (min-width:992px){.row-masonry-lg-1{column-count:1;columns:1}.row-masonry-lg-2{column-count:2;columns:2}.row-masonry-lg-3{column-count:3;columns:3}.row-masonry-lg-4{column-count:4;columns:4}.row-masonry-lg-5{column-count:5;columns:5}.row-masonry-lg-6{column-count:6;columns:6}.row-masonry-lg-7{column-count:7;columns:7}.row-masonry-lg-8{column-count:8;columns:8}.row-masonry-lg-9{column-count:9;columns:9}}@media only screen and (min-width:1200px){.row-masonry-xl-1{column-count:1;columns:1}.row-masonry-xl-2{column-count:2;columns:2}.row-masonry-xl-3{column-count:3;columns:3}.row-masonry-xl-4{column-count:4;columns:4}.row-masonry-xl-5{column-count:5;columns:5}.row-masonry-xl-6{column-count:6;columns:6}.row-masonry-xl-7{column-count:7;columns:7}.row-masonry-xl-8{column-count:8;columns:8}.row-masonry-xl-9{column-count:9;columns:9}}.header-dropdown{background-color:#1f1f1f;border-radius:4px}@media screen and (max-width:480px){.header-dropdown{right:0!important;left:0!important;width:100%!important;border-radius:0!important}}.sf{display:block}.sf__optional{margin-left:2px;color:rgba(0,0,0,.35)}.sf__fixed{display:flex}.sf__fixed .ant-form-item-control-wrapper{flex:1}.sf__title{padding:0 16px;font-weight:700;text-align:left}.sf__object-card .ant-card-body{padding-left:0}.sf__object-card .sf__fixed{flex-wrap:wrap}.sf__object-card-fold .ant-card-body{display:none}.sf__array-add{margin-right:16px}.sf__array-container .ant-card{margin:0 16px 16px 0}.sf__array-container .ant-card-body{padding-bottom:0}.sf__array-container .ant-card .sf__array-remove{cursor:pointer;position:absolute;top:-16px;right:-16px;display:none;width:32px;height:32px;font-size:20px;line-height:32px;text-align:center;background:rgba(0,0,0,.26);border-radius:50%}.sf__array-container .ant-card .sf__array-remove i{color:#fff}.sf__array-container .ant-card:hover .sf__array-remove{display:block}@media (max-width:767px){.sf__array>.ant-form-item>.ant-form-item-control-wrapper,.sf__array>.ant-form-item>.ant-form-item-label{flex:0 0 100%;max-width:100%}.sf__array>.ant-form-item>.ant-form-item-label{display:flex;margin-bottom:8px}.sf__array-container .ant-card{margin-right:0}.sf__array-container .ant-card .sf__array-remove{right:8px;display:block}.sf__array-container>.sf__array-item{flex:0 0 100%;max-width:100%}}.sf .ant-upload-select-picture-card i{font-size:32px;color:#999}.sf .ant-upload.ant-upload-drag{height:180px}.sf .ant-transfer-list-header label{position:unset}.sf .ant-transfer .ant-btn+.ant-btn{margin-left:0}.sf__no-error .ant-form-item{margin-bottom:8px}.sf__inline .sf__item{display:inline-block;margin-bottom:8px;vertical-align:top}.sf__inline .ant-form-inline>.sf__item,.sf__inline .sf__array-container .ant-card-body>.sf__item{margin-bottom:0}.sf__inline .ant-form-inline .ant-select{min-width:100px}.sf__inline .sf__array-container>.sf__array-item{flex:initial;width:100%;max-width:100%}.sf__inline .sf__array-container .ant-card{margin:0}.sf__inline .sf__array-container .ant-card-body{padding:8px 0 0 8px}.sf__inline .sf-btns{display:inline-block;margin-right:0}@media (max-width:767px){.sf__inline .sf__item{display:block;width:100%}.sf__inline .sf__item .ant-form-item{display:block!important;width:initial!important;margin-right:0}.sf__inline .ant-form-item-control,.sf__inline .ant-form-item-label{display:block!important;padding:inherit}}.sf__horizontal .ant-form-item-label>label{display:flex;justify-content:flex-end}.sf__horizontal .sf__label-text{overflow:hidden;text-overflow:ellipsis}@media (max-width:767px){.sf__horizontal .ant-form-item-label>label{justify-content:flex-start}}.sf__no-colon .ant-form-item-label label::after{content:' '}.sf__compact .ant-form-item{margin-bottom:8px}.sf__compact .sf__array-container .ant-card{margin:0 8px 8px 0}.sf__compact .sf__array-item .ant-card-body{padding:8px}.pr0,.px0{padding-right:0!important}.sf__item .ant-cascader-picker,.sf__item .ant-select{width:100%}.acl__hide{display:none!important}.setting-drawer__content{position:relative;min-height:100%;background:#1f1f1f}.setting-drawer__body-item{display:flex;align-items:center;justify-content:space-between;padding-top:12px;padding-bottom:12px}.setting-drawer__body-item:first-child{padding-top:0}.setting-drawer__body-item:last-child{padding-bottom:0}.setting-drawer__title{margin-bottom:12px;font-size:14px;line-height:22px;color:rgba(255,255,255,.85)}.setting-drawer__theme{overflow:hidden;margin-top:24px}.setting-drawer__theme-tag{cursor:pointer;float:left;width:20px;height:20px;margin-right:8px;font-weight:700;color:#fff;text-align:center;border-radius:2px}.setting-drawer__handle{pointer-events:auto;cursor:pointer;position:fixed;z-index:999;top:240px;right:0;display:flex;align-items:center;justify-content:center;width:48px;height:48px;font-size:16px;text-align:center;background:#177ddc;border-radius:4px 0 0 4px;transition:right .3s cubic-bezier(.9,0,.3,.7)}#search-box .anticon,.alain-default__top-menu-item-disabled,.cell__disabled[data-type=link],.disabled,.drawer,.nz-resizable-disabled .nz-resizable-handle,.onboarding__light,.reuse-tab__disabled,.st__btn-disabled .st__btn-text{pointer-events:none}.setting-drawer__handle-icon{font-size:20px;color:#fff}.setting-drawer__handle-opened{z-index:1001;right:500px}.setting-drawer-rtl .setting-drawer__handle{right:inherit;left:0;border-radius:0 4px 4px 0}.setting-drawer-rtl .setting-drawer__handle-opened{right:inherit;left:500px}.theme-btn .ant-avatar{color:#000;background-color:#fff;transition:color .3s}.theme-btn .ant-avatar:hover,.yn__yes{color:#177ddc}.bg-blue-dark-h,.bg-blue-h,.bg-blue-light-h,.bg-cyan-dark-h,.bg-cyan-h,.bg-cyan-light-h,.bg-error-h,.bg-geekblue-dark-h,.bg-geekblue-h,.bg-geekblue-light-h,.bg-gold-dark-h,.bg-gold-h,.bg-gold-light-h,.bg-green-dark-h,.bg-green-h,.bg-green-light-h,.bg-grey-dark-h,.bg-grey-darker-h,.bg-grey-h,.bg-grey-light-h,.bg-grey-lighter-h,.bg-highlight-h,.bg-info-h,.bg-lime-dark-h,.bg-lime-h,.bg-lime-light-h,.bg-magenta-dark-h,.bg-magenta-h,.bg-magenta-light-h,.bg-normal-h,.bg-orange-dark-h,.bg-orange-h,.bg-orange-light-h,.bg-primary-h,.bg-processing-h,.bg-purple-dark-h,.bg-purple-h,.bg-purple-light-h,.bg-red-dark-h,.bg-red-h,.bg-red-light-h,.bg-success-h,.bg-volcano-dark-h,.bg-volcano-h,.bg-volcano-light-h,.bg-warning-h,.bg-yellow-dark-h,.bg-yellow-h,.bg-yellow-light-h{transition:background-color .3s}.theme-btn-rtl{right:inherit;left:32px}.yn__no,.yn__yes{display:inline-flex;align-items:center;font-style:normal}.yn__no span,.yn__yes span{margin-left:4px}.yn__no{color:#8c8c8c}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.border{border:1px solid #303030!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-1{border:1px solid #303030!important}.rounded-md,.rounded-sm{border-radius:2px}.rounded-top-left-md,.rounded-top-left-sm{border-top-left-radius:2px}.rounded-top-right-md,.rounded-top-right-sm{border-top-right-radius:2px}.rounded-bottom-left-md,.rounded-bottom-left-sm{border-bottom-left-radius:2px}.rounded-bottom-right-md,.rounded-bottom-right-sm{border-bottom-right-radius:2px}.border-top-1{border-top:1px solid #303030!important}.border-right-1{border-right:1px solid #303030!important}.border-bottom-1{border-bottom:1px solid #303030!important}.border-left-1{border-left:1px solid #303030!important}.border-red{border-color:#d32029!important}.border-volcano{border-color:#d84a1b!important}.border-orange{border-color:#d87a16!important}.border-gold{border-color:#d89614!important}.border-yellow{border-color:#d8bd14!important}.border-lime{border-color:#8bbb11!important}.border-green{border-color:#49aa19!important}.border-cyan{border-color:#13a8a8!important}.border-blue{border-color:#177ddc!important}.border-geekblue{border-color:#2b4acb!important}.border-purple{border-color:#642ab5!important}.border-magenta{border-color:#cb2b83!important}.border-grey{border-color:#bfbfbf!important}.border-primary{border-color:#177ddc!important}.border-success{border-color:#49aa19!important}.border-error{border-color:#a61d24!important}.border-warning{border-color:#d89614!important}.border-info,.border-processing{border-color:#177ddc!important}.border-highlight{border-color:#a61d24!important}.border-normal{border-color:#d9d9d9!important}.rounded-lg{border-radius:4px}.rounded-top-left-lg{border-top-left-radius:4px}.rounded-top-right-lg{border-top-right-radius:4px}.rounded-bottom-left-lg{border-bottom-left-radius:4px}.rounded-bottom-right-lg{border-bottom-right-radius:4px}.rounded-circle{border-radius:50%}.rounded-0{border-radius:0}.border-white{border-color:#fff!important}.rotate-360{transform:rotate(360deg)}.rotate-345{transform:rotate(345deg)}.rotate-330{transform:rotate(330deg)}.rotate-315{transform:rotate(315deg)}.rotate-300{transform:rotate(300deg)}.rotate-285{transform:rotate(285deg)}.rotate-270{transform:rotate(270deg)}.rotate-255{transform:rotate(255deg)}.rotate-240{transform:rotate(240deg)}.rotate-225{transform:rotate(225deg)}.rotate-210{transform:rotate(210deg)}.rotate-195{transform:rotate(195deg)}.rotate-180{transform:rotate(180deg)}.rotate-165{transform:rotate(165deg)}.rotate-150{transform:rotate(150deg)}.rotate-135{transform:rotate(135deg)}.rotate-120{transform:rotate(120deg)}.rotate-105{transform:rotate(105deg)}.rotate-90{transform:rotate(90deg)}.rotate-75{transform:rotate(75deg)}.rotate-60{transform:rotate(60deg)}.rotate-45{transform:rotate(45deg)}.rotate-30{transform:rotate(30deg)}.rotate-15{transform:rotate(15deg)}code{font-size:90%;background-color:#f7f7f7;border:1px solid #eee;border-radius:2px}.bg-white{background-color:#fff!important}.bg-transparent{background-color:transparent!important}.text-white{color:#fff!important}.text-hover{cursor:pointer}.text-hover:hover{color:#177ddc!important}.bg-red-light{background-color:#a61d24!important}.bg-red{background-color:#d32029!important}.bg-red-dark{background-color:#e84749!important}.bg-red-light-h:hover{background-color:#a61d24!important}.bg-red-h:hover{background-color:#d32029!important}.bg-red-dark-h:hover{background-color:#e84749!important}.text-red-light{color:#a61d24!important}.text-red{color:#d32029!important}.text-red-dark{color:#e84749!important}.bg-volcano-light{background-color:#aa3e19!important}.bg-volcano{background-color:#d84a1b!important}.bg-volcano-dark{background-color:#e87040!important}.bg-volcano-light-h:hover{background-color:#aa3e19!important}.bg-volcano-h:hover{background-color:#d84a1b!important}.bg-volcano-dark-h:hover{background-color:#e87040!important}.text-volcano-light{color:#aa3e19!important}.text-volcano{color:#d84a1b!important}.text-volcano-dark{color:#e87040!important}.bg-orange-light{background-color:#aa6215!important}.bg-orange{background-color:#d87a16!important}.bg-orange-dark{background-color:#e89a3c!important}.bg-orange-light-h:hover{background-color:#aa6215!important}.bg-orange-h:hover{background-color:#d87a16!important}.bg-orange-dark-h:hover{background-color:#e89a3c!important}.text-orange-light{color:#aa6215!important}.text-orange{color:#d87a16!important}.text-orange-dark{color:#e89a3c!important}.bg-gold-light{background-color:#aa7714!important}.bg-gold{background-color:#d89614!important}.bg-gold-dark{background-color:#e8b339!important}.bg-gold-light-h:hover{background-color:#aa7714!important}.bg-gold-h:hover{background-color:#d89614!important}.bg-gold-dark-h:hover{background-color:#e8b339!important}.text-gold-light{color:#aa7714!important}.text-gold{color:#d89614!important}.text-gold-dark{color:#e8b339!important}.bg-yellow-light{background-color:#aa9514!important}.bg-yellow{background-color:#d8bd14!important}.bg-yellow-dark{background-color:#e8d639!important}.bg-yellow-light-h:hover{background-color:#aa9514!important}.bg-yellow-h:hover{background-color:#d8bd14!important}.bg-yellow-dark-h:hover{background-color:#e8d639!important}.text-yellow-light{color:#aa9514!important}.text-yellow{color:#d8bd14!important}.text-yellow-dark{color:#e8d639!important}.bg-lime-light{background-color:#6f9412!important}.bg-lime{background-color:#8bbb11!important}.bg-lime-dark{background-color:#a9d134!important}.bg-lime-light-h:hover{background-color:#6f9412!important}.bg-lime-h:hover{background-color:#8bbb11!important}.bg-lime-dark-h:hover{background-color:#a9d134!important}.text-lime-light{color:#6f9412!important}.text-lime{color:#8bbb11!important}.text-lime-dark{color:#a9d134!important}.bg-green-light{background-color:#3c8618!important}.bg-green{background-color:#49aa19!important}.bg-green-dark{background-color:#6abe39!important}.bg-green-light-h:hover{background-color:#3c8618!important}.bg-green-h:hover{background-color:#49aa19!important}.bg-green-dark-h:hover{background-color:#6abe39!important}.text-green-light{color:#3c8618!important}.text-green{color:#49aa19!important}.text-green-dark{color:#6abe39!important}.bg-cyan-light{background-color:#138585!important}.bg-cyan{background-color:#13a8a8!important}.bg-cyan-dark{background-color:#33bcb7!important}.bg-cyan-light-h:hover{background-color:#138585!important}.bg-cyan-h:hover{background-color:#13a8a8!important}.bg-cyan-dark-h:hover{background-color:#33bcb7!important}.text-cyan-light{color:#138585!important}.text-cyan{color:#13a8a8!important}.text-cyan-dark{color:#33bcb7!important}.bg-blue-light{background-color:#1765ad!important}.bg-blue{background-color:#177ddc!important}.bg-blue-dark{background-color:#3c9ae8!important}.bg-blue-light-h:hover{background-color:#1765ad!important}.bg-blue-h:hover{background-color:#177ddc!important}.bg-blue-dark-h:hover{background-color:#3c9ae8!important}.text-blue-light{color:#1765ad!important}.text-blue{color:#177ddc!important}.text-blue-dark{color:#3c9ae8!important}.bg-geekblue-light{background-color:#263ea0!important}.bg-geekblue{background-color:#2b4acb!important}.bg-geekblue-dark{background-color:#5273e0!important}.bg-geekblue-light-h:hover{background-color:#263ea0!important}.bg-geekblue-h:hover{background-color:#2b4acb!important}.bg-geekblue-dark-h:hover{background-color:#5273e0!important}.text-geekblue-light{color:#263ea0!important}.text-geekblue{color:#2b4acb!important}.text-geekblue-dark{color:#5273e0!important}.bg-purple-light{background-color:#51258f!important}.bg-purple{background-color:#642ab5!important}.bg-purple-dark{background-color:#854eca!important}.bg-purple-light-h:hover{background-color:#51258f!important}.bg-purple-h:hover{background-color:#642ab5!important}.bg-purple-dark-h:hover{background-color:#854eca!important}.text-purple-light{color:#51258f!important}.text-purple{color:#642ab5!important}.text-purple-dark{color:#854eca!important}.bg-magenta-light{background-color:#a02669!important}.bg-magenta{background-color:#cb2b83!important}.bg-magenta-dark{background-color:#e0529c!important}.bg-magenta-light-h:hover{background-color:#a02669!important}.bg-magenta-h:hover{background-color:#cb2b83!important}.bg-magenta-dark-h:hover{background-color:#e0529c!important}.text-magenta-light{color:#a02669!important}.text-magenta{color:#cb2b83!important}.text-magenta-dark{color:#e0529c!important}.bg-grey-light{background-color:#d9d9d9!important}.bg-grey{background-color:#bfbfbf!important}.bg-grey-dark{background-color:#8c8c8c!important}.bg-grey-light-h:hover{background-color:#d9d9d9!important}.bg-grey-h:hover{background-color:#bfbfbf!important}.bg-grey-dark-h:hover{background-color:#8c8c8c!important}.text-grey-light{color:#d9d9d9!important}.text-grey{color:#bfbfbf!important}.text-grey-dark{color:#8c8c8c!important}.bg-primary-light{background-color:#3c9be8!important}.bg-primary{background-color:#177ddc!important}.bg-primary-dark{background-color:#095cb5!important}.bg-primary-h:hover{background-color:#177ddc!important}.text-primary-light{color:#3c9be8!important}.text-primary{color:#177ddc!important}.text-primary-dark{color:#095cb5!important}.bg-success-light{background-color:#67b839!important}.bg-success{background-color:#49aa19!important}.bg-success-dark{background-color:#31850d!important}.bg-success-h:hover{background-color:#49aa19!important}.text-success-light{color:#67b839!important}.text-success{color:#49aa19!important}.text-success-dark{color:#31850d!important}.bg-error-light{background-color:#b33b3d!important}.bg-error{background-color:#a61d24!important}.bg-error-dark{background-color:#800f19!important}.bg-error-h:hover{background-color:#a61d24!important}.text-error-light{color:#b33b3d!important}.text-error{color:#a61d24!important}.text-error-dark{color:#800f19!important}.bg-warning-light{background-color:#e6b239!important}.bg-warning{background-color:#d89614!important}.bg-warning-dark{background-color:#b37407!important}.bg-warning-h:hover{background-color:#d89614!important}.text-warning-light{color:#e6b239!important}.text-warning{color:#d89614!important}.text-warning-dark{color:#b37407!important}.bg-info-light{background-color:#3c9be8!important}.bg-info{background-color:#177ddc!important}.bg-info-dark{background-color:#095cb5!important}.bg-info-h:hover{background-color:#177ddc!important}.text-info-light{color:#3c9be8!important}.text-info{color:#177ddc!important}.text-info-dark{color:#095cb5!important}.bg-processing-light{background-color:#3c9be8!important}.bg-processing{background-color:#177ddc!important}.bg-processing-dark{background-color:#095cb5!important}.bg-processing-h:hover{background-color:#177ddc!important}.text-processing-light{color:#3c9be8!important}.text-processing{color:#177ddc!important}.text-processing-dark{color:#095cb5!important}.bg-highlight-light{background-color:#b33b3d!important}.bg-highlight{background-color:#a61d24!important}.bg-highlight-dark{background-color:#800f19!important}.bg-highlight-h:hover{background-color:#a61d24!important}.text-highlight-light{color:#b33b3d!important}.text-highlight{color:#a61d24!important}.text-highlight-dark{color:#800f19!important}.bg-normal-light{background-color:#e6d8d8!important}.bg-normal{background-color:#d9d9d9!important}.bg-normal-dark{background-color:#b3a8a8!important}.bg-normal-h:hover{background-color:#d9d9d9!important}.bg-grey-lighter,.bg-grey-lighter-h:hover{background-color:#f5f5f5!important}.text-normal-light{color:#e6d8d8!important}.text-normal{color:#d9d9d9!important}.text-normal-dark{color:#b3a8a8!important}.bg-grey-darker,.bg-grey-darker-h:hover{background-color:#262626!important}.text-grey-lighter{color:#f5f5f5!important}.text-grey-darker{color:#262626!important}.d-none{display:none!important}.d-block{display:block!important}.d-inline-block{display:inline-block!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}.flex-center,.flex-center-between{display:flex!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center,.flex-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}.flex-1{flex:1!important}.flex-column{flex-direction:column!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-center-between{align-items:center!important;justify-content:space-between!important}.float-none{float:none!important}.float-left{float:left!important}.float-right{float:right!important}.icon-sm{font-size:28px!important}.icon-md{font-size:56px!important}.icon-lg{font-size:84px!important}.icon-xl{font-size:112px!important}.icon-xxl{font-size:140px!important}.img-fluid{max-width:100%;height:auto}.point{cursor:pointer}.no-resize{resize:none;min-width:100%;max-width:100%}.no-data{font-size:16px;line-height:64px;color:rgba(0,0,0,.25);text-align:center}.no-data i{position:relative;top:3px;margin-right:16px;font-size:24px}.block-center{margin:0 auto}.mr0,.mx0{margin-right:0!important}.ml0,.mx0{margin-left:0!important}.mt0,.my0{margin-top:0!important}.mb0,.my0{margin-bottom:0!important}.bg-center{background-position:center center;background-size:cover}.page-loading{position:absolute;z-index:10000;inset:0;padding-top:200px;text-align:center;background:rgba(255,255,255,.08)}.pt0,.py0{padding-top:0!important}.color-weak{display:block;filter:invert(80%)}.disabled{color:rgba(255,255,255,.3)}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.fixed-bottom,.fixed-top{position:fixed;z-index:9;left:0}.fixed-top{top:0;right:0}.fixed-bottom{right:0;bottom:0}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}@media (max-width:575px){.hidden-xs{display:none!important}}@media (max-width:991px){.hidden-md{display:none!important}}@media (max-width:1199px){.hidden-lg{display:none!important}}@media (max-width:1599px){.hidden-xl{display:none!important}}@media (min-width:768px){.hidden-pc{display:none!important}}.m0{margin:0!important}.mr-xs,.mx-xs{margin-right:4px!important}.ml-xs,.mx-xs{margin-left:4px!important}.mt-xs,.my-xs{margin-top:4px!important}.mb-xs,.my-xs{margin-bottom:4px!important}.p0{padding:0!important}.pl0,.px0{padding-left:0!important}.pr-xs,.px-xs{padding-right:4px!important}.pl-xs,.px-xs{padding-left:4px!important}.pt-xs,.py-xs{padding-top:4px!important}.pb-xs,.py-xs{padding-bottom:4px!important}.m-xs{margin:4px!important}.mr-sm,.mx-sm{margin-right:8px!important}.ml-sm,.mx-sm{margin-left:8px!important}.mt-sm,.my-sm{margin-top:8px!important}.mb-sm,.my-sm{margin-bottom:8px!important}.p-xs{padding:4px!important}.pr-sm,.px-sm{padding-right:8px!important}.pl-sm,.px-sm,[dir=rtl] .pr-sm{padding-left:8px!important}.pt-sm,.py-sm{padding-top:8px!important}.pb-sm,.py-sm{padding-bottom:8px!important}.m-sm{margin:8px!important}.mr-md,.mx-md{margin-right:16px!important}.ml-md,.mx-md{margin-left:16px!important}.mt-md,.my-md{margin-top:16px!important}.mb-md,.my-md{margin-bottom:16px!important}.p-sm{padding:8px!important}.pr-md,.px-md{padding-right:16px!important}.pl-md,.px-md{padding-left:16px!important}.pt-md,.py-md{padding-top:16px!important}.pb-md,.py-md{padding-bottom:16px!important}.m-md{margin:16px!important}.mr-lg,.mx-lg{margin-right:24px!important}.ml-lg,.mx-lg{margin-left:24px!important}.mt-lg,.my-lg{margin-top:24px!important}.mb-lg,.my-lg{margin-bottom:24px!important}.p-md{padding:16px!important}.pr-lg,.px-lg{padding-right:24px!important}.pl-lg,.px-lg,[dir=rtl] .pr-lg{padding-left:24px!important}.pt-lg,.py-lg{padding-top:24px!important}.pb-lg,.py-lg{padding-bottom:24px!important}.m-lg{margin:24px!important}.mr-xl,.mx-xl{margin-right:32px!important}.ml-xl,.mx-xl{margin-left:32px!important}.mt-xl,.my-xl{margin-top:32px!important}.mb-xl,.my-xl{margin-bottom:32px!important}.p-lg{padding:24px!important}.pr-xl,.px-xl{padding-right:32px!important}.pl-xl,.px-xl{padding-left:32px!important}.pt-xl,.py-xl{padding-top:32px!important}.pb-xl,.py-xl{padding-bottom:32px!important}.m-xl{margin:32px!important}.mr-xxl,.mx-xxl{margin-right:48px!important}.ml-xxl,.mx-xxl{margin-left:48px!important}.mt-xxl,.my-xxl{margin-top:48px!important}.mb-xxl,.my-xxl{margin-bottom:48px!important}.p-xl{padding:32px!important}.pr-xxl,.px-xxl{padding-right:48px!important}.pl-xxl,.px-xxl,[dir=rtl] .pr-xxl{padding-left:48px!important}.pt-xxl,.py-xxl{padding-top:48px!important}.pb-xxl,.py-xxl{padding-bottom:48px!important}.m-xxl{margin:48px!important}.p-xxl{padding:48px!important}[dir=rtl] .mr0{margin-left:0!important;margin-right:inherit!important}[dir=rtl] .ml0{margin-right:0!important;margin-left:inherit!important}[dir=rtl] .pr0{padding-left:0!important;padding-right:inherit!important}[dir=rtl] .pl0{padding-right:0!important;padding-left:inherit!important}[dir=rtl] .mr-xs{margin-left:4px!important;margin-right:inherit!important}[dir=rtl] .ml-xs{margin-right:4px!important;margin-left:inherit!important}[dir=rtl] .pr-xs{padding-left:4px!important;padding-right:inherit!important}[dir=rtl] .pl-xs{padding-right:4px!important;padding-left:inherit!important}[dir=rtl] .mr-sm{margin-left:8px!important;margin-right:inherit!important}[dir=rtl] .ml-sm{margin-right:8px!important;margin-left:inherit!important}[dir=rtl] .pr-sm{padding-right:inherit!important}[dir=rtl] .pl-sm{padding-right:8px!important;padding-left:inherit!important}[dir=rtl] .mr-md{margin-left:16px!important;margin-right:inherit!important}[dir=rtl] .ml-md{margin-right:16px!important;margin-left:inherit!important}[dir=rtl] .pr-md{padding-left:16px!important;padding-right:inherit!important}[dir=rtl] .pl-md{padding-right:16px!important;padding-left:inherit!important}[dir=rtl] .mr-lg{margin-left:24px!important;margin-right:inherit!important}[dir=rtl] .ml-lg{margin-right:24px!important;margin-left:inherit!important}[dir=rtl] .pr-lg{padding-right:inherit!important}[dir=rtl] .pl-lg{padding-right:24px!important;padding-left:inherit!important}[dir=rtl] .mr-xl{margin-left:32px!important;margin-right:inherit!important}[dir=rtl] .ml-xl{margin-right:32px!important;margin-left:inherit!important}[dir=rtl] .pr-xl{padding-left:32px!important;padding-right:inherit!important}[dir=rtl] .pl-xl{padding-right:32px!important;padding-left:inherit!important}[dir=rtl] .mr-xxl{margin-left:48px!important;margin-right:inherit!important}[dir=rtl] .ml-xxl{margin-right:48px!important;margin-left:inherit!important}.exception__cont-actions .ant-btn:not(:last-child),.st .nz-resizable.ant-table-column-has-sorters .nz-resizable-handle{margin-right:8px}[dir=rtl] .pr-xxl{padding-right:inherit!important}[dir=rtl] .pl-xxl{padding-right:48px!important;padding-left:inherit!important}.text-left{text-align:left!important}.text-center{text-align:center!important}.text-right,[dir=rtl] .text-left{text-align:right!important}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.text-nowrap{white-space:nowrap!important}.text-wrap{white-space:pre-wrap!important}.text-truncate{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.font-weight-normal{font-weight:400}.font-weight-bold{font-weight:700}.text-xs{font-size:12px!important}.text-sm{font-size:14px!important}.text-md{font-size:16px!important}.text-lg{font-size:18px!important}.text-xl{font-size:22px!important}.text-xxl{font-size:28px!important}[dir=rtl] .text-right{text-align:left!important}.width-xs{width:80px!important}.max-width-xs{max-width:80px!important}.min-width-xs{min-width:80px!important}.width-sm{width:160px!important}.max-width-sm{max-width:160px!important}.min-width-sm{min-width:160px!important}.width-md{width:240px!important}.max-width-md{max-width:240px!important}.min-width-md{min-width:240px!important}.width-lg{width:320px!important}.max-width-lg{max-width:320px!important}.min-width-lg{min-width:320px!important}.width-xl{width:400px!important}.max-width-xl{max-width:400px!important}.min-width-xl{min-width:400px!important}.width-xxl{width:480px!important}.max-width-xxl{max-width:480px!important}.min-width-xxl{min-width:480px!important}.width-10{width:10%!important}.max-width-10{max-width:10%!important}.min-width-10{min-width:10%!important}.width-20{width:20%!important}.max-width-20{max-width:20%!important}.min-width-20{min-width:20%!important}.width-30{width:30%!important}.max-width-30{max-width:30%!important}.min-width-30{min-width:30%!important}.width-40{width:40%!important}.max-width-40{max-width:40%!important}.min-width-40{min-width:40%!important}.width-50{width:50%!important}.max-width-50{max-width:50%!important}.min-width-50{min-width:50%!important}.width-60{width:60%!important}.max-width-60{max-width:60%!important}.min-width-60{min-width:60%!important}.width-70{width:70%!important}.max-width-70{max-width:70%!important}.min-width-70{min-width:70%!important}.width-80{width:80%!important}.max-width-80{max-width:80%!important}.min-width-80{min-width:80%!important}.width-90{width:90%!important}.max-width-90{max-width:90%!important}.min-width-90{min-width:90%!important}.width-100{width:100%!important}.max-width-100{max-width:100%!important}.min-width-100{min-width:100%!important}@media (max-width:767px){.hidden-mobile,.hidden-sm{display:none!important}.max-width-sm,.min-width-sm,.width-sm{width:100%!important}}.scrollbar{overflow:auto}.scrollbar-x{overflow:auto hidden}.scrollbar-y{overflow:hidden auto}.ant-anchor-wrapper,.ant-dialog-wrap,.ant-drawer-body,.ant-drawer-wrapper-body,.scrollbar,body,textarea.ant-input{scrollbar-color:rgba(0,0,0,.3) #6e6e6e;scrollbar-width:thin}.ant-anchor-wrapper::-webkit-scrollbar,.ant-dialog-wrap::-webkit-scrollbar,.ant-drawer-body::-webkit-scrollbar,.ant-drawer-wrapper-body::-webkit-scrollbar,.scrollbar::-webkit-scrollbar,body::-webkit-scrollbar,textarea.ant-input::-webkit-scrollbar{width:6px;height:6px}.ant-anchor-wrapper::-webkit-scrollbar-track,.ant-dialog-wrap::-webkit-scrollbar-track,.ant-drawer-body::-webkit-scrollbar-track,.ant-drawer-wrapper-body::-webkit-scrollbar-track,.scrollbar::-webkit-scrollbar-track,body::-webkit-scrollbar-track,textarea.ant-input::-webkit-scrollbar-track{box-shadow:inset 0 0 6px rgba(0,0,0,.3)}.ant-anchor-wrapper::-webkit-scrollbar-thumb,.ant-dialog-wrap::-webkit-scrollbar-thumb,.ant-drawer-body::-webkit-scrollbar-thumb,.ant-drawer-wrapper-body::-webkit-scrollbar-thumb,.scrollbar::-webkit-scrollbar-thumb,body::-webkit-scrollbar-thumb,textarea.ant-input::-webkit-scrollbar-thumb{background-color:#6e6e6e;outline:#333 solid 1px}.st{display:block}.st__p-left .ant-table-pagination{float:none;display:block;text-align:left}.st__p-center .ant-table-pagination{float:none;display:block;text-align:center}.st__btn-sub .st__btn-text{width:100%;color:inherit}.st__btn-disabled .st__btn-text{color:rgba(0,0,0,.25)}.st .nz-resizable-handle{display:flex;align-items:center;justify-content:center}.st .nz-resizable-handle>i{width:1px;height:60%;background:#434343}.st .nz-resizable-preview{border-width:0 1px 0 0}.st .ant-table~nz-pagination>.ant-pagination{margin-bottom:0}.st__filter-keyword{padding:8px}.st__filter-date .ant-picker-panel-container{box-shadow:none}.st__filter-date .ant-picker-panel-container .ant-picker-panel{border:none}.st .ant-table-tbody>tr .ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td,.sv__bordered,.sv__bordered .sv__item{border-bottom:1px solid #303030}.st__has-filter .ant-table-column-sorters{padding-right:16px}.st__has-filter .st__filter{position:absolute;top:0;right:0;bottom:0;display:flex;place-items:center center}.st__has-filter .ant-table-filter-trigger{height:100%}.st__has-filter.ant-table-column-has-sorters .st__filter{right:-32px}.st__head-optional,.st__head-tip{margin-left:2px;color:rgba(0,0,0,.35)}.st .ant-table-thead>tr>th .ant-table-filter-selected.ant-table-filter-icon{color:#177ddc}.st__checkall-selection{display:inline-block;margin-left:4px}.st .ant-table-tbody>tr .ant-table-wrapper:only-child .ant-table{margin:0}.st .text-truncate.ant-table-cell-fix-left-first::after,.st .text-truncate.ant-table-cell-fix-left-last::after{transform:translateX(80%)}.st .text-truncate.ant-table-cell-fix-right-first::after,.st .text-truncate.ant-table-cell-fix-right-last::after{transform:translateX(-80%)}.st__no-column .ant-table{height:100px}.st__no-column .ant-table-content{display:none}.sv,.sv__container{display:block}.st__row-class .ant-table-tbody>tr>td .ant-table-cell-fix-left,.st__row-class .ant-table-tbody>tr>td .ant-table-cell-fix-right{background:inherit}@media screen and (min-width:768px){.st__width-strict .ant-table-body>table,.st__width-strict .ant-table-content>table{table-layout:fixed!important;word-wrap:break-word!important}}.sv+.sv{margin-top:16px}.sv__container .ant-row{overflow:hidden;margin-bottom:-16px}.code-box,.sv__item+.ant-divider{margin:0 0 16px}.sv__item-fixed{display:flex}.sv__item-fixed .sv__label{overflow:hidden;flex:0 0 auto;text-align:right;text-overflow:ellipsis}.sv__item-fixed .sv__detail{flex:1 0 0}.sv__title{float:none;clear:both;display:block;width:100%;margin-bottom:16px;font-size:14px;font-weight:500;color:rgba(255,255,255,.85)}.sv__detail,.sv__label{display:table-cell;padding-bottom:16px;line-height:22px}.code-box-code-copy.anticon-check,.hljs-strong,.se__title,.token.bold,.token.important{font-weight:700}.sv__label{color:rgba(0,0,0,.5);white-space:nowrap}.sv__label:not(.sv__label-empty)::after{content:':';position:relative;top:-.5px;margin:0 8px 0 2px}.sv__label-optional{margin-left:2px;color:rgba(0,0,0,.35)}.sv__label-optional-no-text{margin-left:0}.sv__label-optional>.anticon{margin-left:2px}.sv__detail{width:100%;color:rgba(255,255,255,.85);word-break:break-all;vertical-align:top}.se__line,.sv__small .sv__detail,.sv__small .sv__label,.sv__vertical .sv__label{padding-bottom:8px}.sv__type-primary .sv__detail{color:#177ddc}.sv__type-success .sv__detail{color:#49aa19}.sv__type-danger .sv__detail{color:#a61d24}.sv__type-warning .sv__detail{color:#d89614}.sv__default::before{content:'-'}.sv__default~.sv__unit{display:none!important}.sv__unit{display:inline;margin-left:8px;color:#8c8c8c}.sv__small .ant-row{margin-bottom:-8px}.sv__small .sv__title{margin-bottom:12px;color:rgba(255,255,255,.85)}.sv__value{display:inline-flex;align-items:center}.sv__value-prefix,.sv__value-unit{font-size:12px;font-style:normal;color:rgba(0,0,0,.5)}.sv__value-prefix{padding-right:3px}.sv__value-text{font-size:18px}.sv__value-unit{padding-left:3px}.sv__value:not(:first-child){position:relative;margin-left:8px;padding-left:14px}.sv__value:not(:first-child)::before{content:'/';position:absolute;left:0;width:6px;color:rgba(0,0,0,.5)}.sv__value-small .sv__value-text{font-size:14px}.sv__value-large .sv__value-text{font-size:24px}.sv__large .sv__title{font-size:16px}.sv__horizontal .sv__label-width{display:flex;justify-content:flex-end}.se__title,.sv__vertical .sv__detail,.sv__vertical .sv__label{display:block}.sv__horizontal .sv__label-width .sv__label-text{overflow:hidden;text-overflow:ellipsis}.sv__no-colon::after{content:' '!important}.alain-default__aside::after,.g2-radar__legend-item::after,.number-info:not(:first-child)::after,.se__item-empty::before{content:''}.sv__bordered{overflow:hidden;border-top:1px solid #303030;border-left:1px solid #303030}.sv__bordered .sv__item,.sv__bordered .sv__label{border-right:1px solid #303030}.sv__bordered .sv__detail,.sv__bordered .sv__label{padding:12px 24px}.sv__bordered.sv__large .sv__detail,.sv__bordered.sv__large .sv__label{padding:16px 24px}.sv__bordered.sv__small .sv__detail,.sv__bordered.sv__small .sv__label{padding:8px 16px}.se__title{float:none;clear:both;width:100%;font-size:14px;line-height:1.5715;color:rgba(255,255,255,.85)}.se__item{transition:none}.se__item:last-child{margin-bottom:0;padding-bottom:0}.se__item-empty::before{display:inline-block}.se__item+.ant-divider{margin:0 0 24px}.se__label{display:table-cell;flex:0 0 auto;width:initial;text-align:right;white-space:nowrap}.se__label-optional{margin-left:2px;color:rgba(0,0,0,.35)}.se__label-optional-no-text{margin-left:0}.se__label-optional>.anticon{margin-left:2px}.se__control{flex:1 0 0;width:100%}.se__compact>.se__item,.se__compact>.se__title{margin-bottom:8px}.se__compact>.se__item+.ant-divider,.se__compact>.se__title+.ant-divider{margin:0 0 8px}.se__compact .ant-form-item-extra{display:none}.se__line{border-bottom:1px dashed #303030}.se__hide-label .se__nolabel,.se__inline .se__nolabel,.se__vertical .se__nolabel{display:none!important}.se__horizontal>.se__item{display:flex}.se__horizontal>.se__item:last-child{margin-bottom:0}.se__horizontal>.se__item .se__label{display:flex;justify-content:flex-end}.se__horizontal>.se__item .se__label-text{overflow:hidden;text-overflow:ellipsis}.se__horizontal>.se__item .ant-form-item-required::before{line-height:inherit}.se__horizontal>.se__item .ant-form-item-label>label::after{margin-left:4px}.se__vertical>.se__item{display:block;width:100%}.se__inline .ant-form-item-label,.se__inline .se__control{display:inline-block;width:initial!important;text-align:left;vertical-align:top}.se__inline>.se__item{margin-right:16px}.se__inline>.se__item[col='1']{flex-basis:auto;width:100%}.se__inline>.se__item:last-child{margin-right:0}.se__no-colon::after{content:' '!important}@media (max-width:767px){.se__horizontal>.se__item{display:block}.se__horizontal>.se__item .ant-form-item-label{width:100%!important;text-align:left}.se__horizontal>.se__item .se__label{justify-content:normal}.se__horizontal .se__control,.se__horizontal .se__label,.se__vertical .se__control,.se__vertical .se__label{width:100%!important}}.avatar-list,.avatar-list__item,.avatar-list__wrap{display:inline-block}.avatar-list__wrap{margin-left:8px;padding:0;font-size:0}.avatar-list__item{width:32px;height:32px;margin-left:-8px;font-size:14px}.avatar-list__item .ant-avatar{cursor:pointer;border:1px solid #fff}.avatar-list__large{width:40px;height:40px}.avatar-list__small{width:24px;height:24px}.avatar-list__mini{width:20px;height:20px}.avatar-list__mini .ant-avatar{width:20px;height:20px;line-height:20px}.avatar-list__mini .ant-avatar-string{font-size:12px;line-height:18px}ellipsis{display:inline}.ellipsis{overflow:hidden;display:inline-block;width:100%;word-break:break-all}.ellipsis__lines{position:relative}.ellipsis__line-clamp{position:relative;overflow:hidden;display:-webkit-box;text-overflow:ellipsis}.ellipsis__shadow{position:absolute;z-index:-999;display:block;color:transparent;opacity:0}.error-collect{cursor:pointer;padding-right:24px;color:#f5222d}.error-collect__count{padding-left:8px}.error-collect-rtl{padding-right:0;padding-left:24px}.error-collect-rtl .error-collect__count{padding-right:8px;padding-left:0}.exception{display:flex;align-items:center;height:100%}.exception__img-block{zoom:1;flex:0 0 62.5%;width:62.5%;padding-right:152px}.exception__img-block::after,.exception__img-block::before{content:' ';display:table}.exception__img-block::after{clear:both;height:0;font-size:0}.exception__img{float:right;width:100%;max-width:430px;height:360px;background-repeat:no-repeat;background-position:50% 50%;background-size:100% 100%}.exception__cont{flex:auto}.alain-default__nav-middle,.footer-toolbar__left{flex:1}.exception__cont-title{margin-bottom:24px;font-size:72px;font-weight:600;line-height:72px;color:#434e59}.exception__cont-desc{margin-bottom:16px;font-size:20px;line-height:28px;color:rgba(255,255,255,.45)}@media screen and (max-width:1200px){.exception__img-block{padding-right:88px}}@media screen and (max-width:576px){.exception{display:block;text-align:center}.exception__img-block{margin:0 auto 24px;padding-right:0}}@media screen and (max-width:480px){.exception__img-block{overflow:hidden;margin-bottom:-24px}}.exception-rtl .exception__cont-actions .ant-btn:not(:last-child){margin-right:0}.footer-toolbar{position:fixed;z-index:9;right:0;bottom:0;display:flex;width:100%;height:56px;padding:0 24px;line-height:56px;background:#fff;border-top:1px solid #303030;box-shadow:0 -1px 2px rgba(0,0,0,.03);transition:all .3s}.full-content{overflow:auto;display:block;height:100%}.full-content__body{overflow:hidden}.global-footer{display:block;margin:48px 0 24px;padding:0 16px;text-align:center}.global-footer__links{margin-bottom:8px}.global-footer__links-item{display:inline-block;color:rgba(255,255,255,.45);transition:all .3s}.global-footer__links-item:not(:last-child){margin-right:40px}.global-footer__links-item:hover{color:rgba(255,255,255,.85)}.global-footer__copyright{font-size:14px;color:rgba(255,255,255,.45)}.global-footer-rtl .global-footer__links-item:not(:last-child){margin-right:inherit;margin-left:40px}.notice-icon{width:336px}.notice-icon__btn{cursor:pointer;display:inline-block;transition:all .3s}.notice-icon .ant-popover-inner-content{padding:0}.notice-icon .ant-tabs-bar{margin-bottom:4px}.notice-icon__tab-left .ant-tabs-nav-list .ant-tabs-tab:first-child{margin-left:32px}.notice-icon .ant-list{overflow:auto;max-height:400px}.notice-icon .ant-list-item{cursor:pointer;overflow:hidden;padding-right:24px;padding-left:24px;transition:all .3s}.page-header,.page-header .ant-tabs-bar{border-bottom:1px solid #303030}.notice-icon .ant-list-item:hover{background:#111b26}.notice-icon .ant-list-item-meta{width:100%}.notice-icon .ant-list-item-meta-title{margin-bottom:8px;font-weight:400}.notice-icon .ant-list-item .ant-avatar{margin-top:4px;background:#fff}.notice-icon__notfound{padding:73px 0 88px;color:rgba(255,255,255,.45);text-align:center}.notice-icon__clear,.notice-icon__clear:hover{color:rgba(255,255,255,.85)}.notice-icon__notfound-img{display:inline-block;height:76px;margin-bottom:16px}.notice-icon__clear{cursor:pointer;height:46px;line-height:46px;text-align:center;transition:all .3s}.notice-icon__item-desc,.notice-icon__item-time{font-size:12px;line-height:1.5715}.notice-icon__item .ant-badge-count{top:-10px}.notice-icon__item-read{opacity:.4}.notice-icon__item-time{margin-top:4px}.notice-icon__item-extra{float:right;margin-top:-1.5px;margin-right:0;font-weight:400;color:rgba(255,255,255,.45)}.page-header{display:block;padding:24px;background-color:#fff}.page-header__wide{max-width:1200px;margin:auto}.page-header .ant-breadcrumb{margin-bottom:16px}.page-header .ant-tabs{margin:0 0 -17px}.page-header__detail{display:flex}.page-header__row{display:flex;width:100%}.page-header__logo{flex:0 1 auto;margin-right:16px;padding-top:1px}.page-header__logo img{display:block;width:28px;height:28px;border-radius:2px}.page-header__title{font-size:20px;font-weight:500;color:rgba(255,255,255,.85)}.page-header__title small{padding-left:8px;font-size:14px;font-weight:400;color:rgba(255,255,255,.4)}.page-header__action{min-width:266px;margin-left:56px}.page-header__desc,.page-header__title{flex:auto}.page-header__action,.page-header__extra,.page-header__main{flex:0 1 auto}.page-header__main{width:100%}.page-header__action,.page-header__desc,.page-header__extra,.page-header__logo,.page-header__title{margin-bottom:16px}.page-header__action,.page-header__extra{display:flex;justify-content:flex-end}.page-header__extra{min-width:242px;margin-left:88px}@media screen and (max-width:1200px){.page-header__extra{margin-left:44px}}@media screen and (max-width:992px){.page-header__extra{margin-left:20px}}@media screen and (max-width:768px){.page-header__row{display:block}.page-header__action,.page-header__extra{justify-content:start;margin-left:0}}@media screen and (max-width:576px){.page-header__detail{display:block}}@media screen and (max-width:480px){.page-header__action .ant-btn,.page-header__action .ant-btn-group{display:block;margin-bottom:8px}.page-header__action .ant-input-search-enter-button .ant-btn{margin-bottom:0}.page-header__action .ant-btn-group>.ant-btn{display:inline-block;margin-bottom:0}}.page-header-rtl .page-header__logo{margin-right:0;margin-left:16px}.page-header-rtl .page-header__title small{padding-right:8px;padding-left:0}.page-header-rtl .page-header__action{margin-right:56px;margin-left:0}.page-header-rtl .page-header__extra{margin-right:88px;margin-left:0}@media screen and (max-width:1200px){.page-header-rtl .page-header__extra{margin-right:44px;margin-left:0}}@media screen and (max-width:992px){.page-header-rtl .page-header__extra{margin-right:20px;margin-left:0}}.quick-menu{position:fixed;z-index:11;right:-1px;left:auto;display:block;backface-visibility:hidden;transition:margin .3s cubic-bezier(1,0,0,1)}.quick-menu,.quick-menu__ctrl{background-color:#fff;border:1px solid #fff;box-shadow:0 6px 16px -8px rgba(0,0,0,.32),0 9px 28px 0 rgba(0,0,0,.2),0 12px 48px 16px rgba(0,0,0,.12)}.quick-menu__inner{position:relative;padding:0 12px}.quick-menu__ctrl{cursor:pointer;position:absolute;top:-1px;left:-50px;width:50px;height:50px;text-align:center;border-right:0;border-radius:3px 0 0 3px}.quick-menu__ctrl-icon{font-size:20px;line-height:49px}.result{display:block;width:72%;margin:0 auto;text-align:center}.result__icon{margin-bottom:24px;font-size:72px;line-height:72px}.result__icon-success{color:#49aa19}.result__icon-error{color:#a61d24}.result__title{margin-bottom:16px;font-size:24px;font-weight:500;line-height:32px;color:rgba(255,255,255,.85)}.result__desc{margin-bottom:24px;font-size:14px;line-height:22px;color:rgba(255,255,255,.45)}.result__extra{padding:24px 40px;text-align:left;background:#fafafa;border-radius:2px}.result__actions{margin-top:32px}.result__actions button:not(:last-child){margin-right:8px}.result .ant-steps .ant-steps-head,.result .ant-steps .ant-steps-title{background:#fafafa}@media screen and (max-width:480px){.result__extra{padding:18px 20px}.result{width:100%}}.reuse-tab{user-select:none;display:block;background-color:#fff;outline:0}.reuse-tab .ant-tabs-nav .ant-tabs-tab .reuse-tab__op{position:absolute;display:none;margin:0;font-size:10px;color:rgba(255,255,255,.85)}.reuse-tab .ant-tabs-nav .ant-tabs-tab:hover .reuse-tab__op{display:block}.reuse-tab .ant-tabs-nav .ant-tabs-tab .reuse-tab__name-width{overflow:hidden;display:inline-block;text-overflow:ellipsis}.reuse-tab .ant-tabs>.ant-tabs-nav{margin:0}.reuse-tab__line{padding:8px;border-bottom:1px solid #d9d9d9}.reuse-tab__line .ant-tabs-nav::before{border-bottom:none}.reuse-tab__line .ant-tabs-nav .ant-tabs-tab{padding:0}.reuse-tab__line .ant-tabs-nav .ant-tabs-tab .reuse-tab__op{top:12px;right:2px}.reuse-tab__line .ant-tabs-nav .ant-tabs-tab .reuse-tab__name{display:inline-block;padding:8px 20px}.reuse-tab__card{padding-top:8px}.reuse-tab__card .ant-tabs-nav-container{padding:0 8px}.reuse-tab__card .ant-tabs-nav .ant-tabs-tab .reuse-tab__op{top:4px;right:4px}.reuse-tab__disabled{opacity:.8}.reuse-tab__cm .ant-menu{border:1px solid #e9e9e9}.tag-select{user-select:none;position:relative;overflow:hidden;display:block;max-height:38px;margin-top:-16px;margin-left:-8px;line-height:1.5715;transition:all .3s}.tag-select__expanded{max-height:200px;transition:all .3s}.tag-select__has-expand{padding-right:50px}.tag-select .ant-tag{margin-top:16px;margin-right:24px}.tag-select__trigger{position:absolute;top:0;right:0;display:flex;align-items:center;margin-right:0!important;color:#177ddc}.tag-select__trigger>.anticon{margin-left:2px;font-size:8px;transition:transform .24s}.tag-select-rtl{margin-right:-8px;margin-left:0}.tag-select-rtl__has-expand{padding-right:0!important;padding-left:50px!important}.tag-select-rtl .tag-select .ant-tag{margin-right:0;margin-left:24px}.tag-select-rtl .tag-select__trigger{right:initial;left:0}.tag-select-rtl .tag-select__trigger-icon{margin-right:0;margin-left:8px}.down-file__not-support{display:none}.loading-backdrop{z-index:9999;opacity:1;background-color:rgba(0,0,0,.15)}.loading-default{position:fixed;z-index:10000;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.g2-mini-progress,.g2-pie,g2,g2-bar,g2-chart,g2-custom,g2-gauge,g2-mini-area,g2-mini-bar,g2-single-bar,g2-tag-cloud,g2-timeline{display:block}.loading-default__icon{margin-bottom:8px;font-size:24px;color:#177ddc}.loading-default__text{color:#177ddc}.loading-default__custom{width:64px;height:64px;fill:#fff}.onboarding+.cdk-overlay-container{z-index:99999}.onboarding__mask{position:fixed;z-index:99998;inset:0;opacity:.5;background-color:#000}.onboarding__item,.onboarding__light,.pdf-container{position:absolute}.onboarding__light{z-index:99999;background-color:rgba(255,255,255,.9);animation:2.5s cubic-bezier(.55,.05,.6,.2) 0s infinite normal none running onboardingAnt}.onboarding__light-el{z-index:100000!important}.onboarding__light-ant{transition:all .3s ease-out}.onboarding__total{color:rgba(255,255,255,.85)}@keyframes onboardingAnt{0%,33%{box-shadow:#fff 0 0 0 2px,#fff 0 0 0}100%,66%{box-shadow:#fff 0 0 0 2px,rgba(255,255,255,.01) 0 0 0 10px}}.pdf-container{overflow-x:auto;width:100%;height:100%;-webkit-overflow-scrolling:touch}.g2-card,.g2-card__top{position:relative}.cell__has-unit{align-items:baseline}.cell__has-default{color:rgba(255,255,255,.45)}.cell__primary{color:#177ddc}.cell__success{color:#49aa19}.cell__danger{color:#a61d24}.cell__warning{color:#d89614}.cell__large{font-size:18px}.cell .unit,.cell__small{font-size:12px}.cell[data-type=img] .img:not(:last-child){margin-right:4px}.cell .img{vertical-align:middle;border-radius:4px}.cell .unit{margin-left:2px;color:rgba(255,255,255,.45)}.cell__disabled[data-type=link]>a{color:rgba(255,255,255,.85)}g2-bar,g2-tag-cloud{width:100%}.g2-card__top{overflow:hidden;width:100%}.g2-card__top-margin{margin-bottom:12px}.g2-card__top-has-margin{margin-bottom:20px}.g2-card__meta{height:22px;font-size:14px;line-height:22px;color:rgba(255,255,255,.45)}.g2-card__total,.g2-pie__legend-title{color:rgba(255,255,255,.85)}.g2-card__meta-wrap{float:left}.g2-card__meta-action{cursor:pointer;position:absolute;top:4px;right:0;line-height:1}.g2-card__avatar{position:relative;top:4px;float:left;margin-right:20px}.g2-card__avatar img{border-radius:100%}.g2-card__total{overflow:hidden;height:38px;margin-top:4px;margin-bottom:0;font-size:30px;line-height:38px;text-overflow:ellipsis;word-break:break-all;white-space:nowrap}.g2-card__desc{width:100%;margin-bottom:12px}.g2-card__footer{margin-top:8px;padding-top:9px;border-top:1px solid #303030}.g2-card__footer>*{position:relative}.g2-mini-progress{position:relative;width:100%;padding:5px 0}.g2-mini-progress__wrap{position:relative}.g2-mini-progress__value{width:0;height:100%;background-color:#177ddc;border-radius:1px 0 0 1px;transition:all .4s cubic-bezier(.08,.82,.17,1) 0s}.g2-mini-progress__target{position:absolute;top:0;bottom:0}.g2-mini-progress__target-item{position:absolute;top:0;left:0;width:2px;height:4px;border-radius:100px}.g2-pie,.g2-pie__chart{position:relative}.g2-mini-progress__target-item:last-child{top:auto;bottom:0}.g2-pie__legend{position:absolute;top:50%;right:0;transform:translateY(-50%);min-width:250px;margin:0 20px;padding:0;list-style:none}.g2-pie__legend-item{cursor:pointer;height:22px;margin-bottom:16px;line-height:22px}.g2-pie__mini .g2-pie__total-title,.g2-radar__legend-title{margin-bottom:0;margin-top:4px}.g2-pie__legend-item:last-child{margin-bottom:0}.g2-pie__legend-percent,.g2-pie__total-title{color:rgba(255,255,255,.45)}.g2-pie__legend-dot{position:relative;top:-1px;display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:8px}.g2-pie__legend-value{position:absolute;right:0}.g2-pie__legend-has .g2-pie__chart{width:calc(100% - 240px)}.g2-pie__legend-block .g2-pie__chart{width:100%;margin:0 0 32px}.g2-pie__legend-block .g2-pie__legend{position:relative;transform:none;min-width:auto}.g2-pie__total{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);height:62px;text-align:center}.g2-pie__total-title{height:22px;margin-bottom:8px;font-size:14px;font-weight:400;line-height:22px}.g2-pie__total-stat{display:block;height:32px;font-size:1.2em;line-height:32px;color:rgba(255,255,255,.85);white-space:nowrap}.g2-radar{display:block}.g2-radar__legend{margin-top:16px}.g2-radar__legend-item{cursor:pointer;position:relative;line-height:22px;color:rgba(255,255,255,.45);text-align:center}.g2-radar__legend-item::after{position:absolute;top:8px;right:0;width:1px;height:40px}.g2-radar__legend-item:last-child::after{display:none}.g2-radar__legend-dot,.g2-water-wave,.number-info,.number-info__value-text,.trend{display:inline-block}.g2-radar__legend-title{padding-left:16px;font-size:24px;line-height:32px;color:rgba(255,255,255,.85)}.g2-radar__legend-dot{position:relative;top:-1px;width:6px;height:6px;margin-right:6px;border-radius:6px}.g2-water-wave{position:relative;transform-origin:left}.g2-water-wave__desc{position:absolute;top:32px;left:0;width:100%;text-align:center}.g2-water-wave__desc-title{font-size:14px;line-height:22px;color:rgba(255,255,255,.45)}.g2-water-wave__desc-percent{font-size:24px;line-height:32px;color:rgba(255,255,255,.85)}.g2-water-wave__canvas{transform-origin:0 0;transform:scale(.5)}.number-info__title{margin-bottom:16px;font-size:16px;color:rgba(255,255,255,.85);transition:all .3s}.number-info__title-sub{overflow:hidden;height:22px;font-size:14px;line-height:22px;color:rgba(255,255,255,.45);text-overflow:ellipsis;word-break:break-all;white-space:nowrap}.number-info__value{overflow:hidden;margin-top:4px;font-size:0;text-overflow:ellipsis;word-break:break-all;white-space:nowrap}.number-info__value-suffix{margin-left:4px;font-size:16px;font-style:normal;color:rgba(255,255,255,.85)}.number-info__value-text{height:32px;font-size:24px;line-height:32px;color:rgba(255,255,255,.85)}app-root,body,html{height:100%}.number-info__value-sub{margin-left:32px;font-size:16px;color:rgba(255,255,255,.45);vertical-align:top}.number-info__value-sub .anticon{transform:scale(.82);margin-left:4px;font-size:12px}.number-info__value-sub .anticon-caret-up{color:#d32029}.number-info__value-sub .anticon-caret-down{color:#49aa19}.number-info__light .number-info__value-text{color:rgba(255,255,255,.85)}.number-info:not(:first-child){position:relative;margin-left:32px;padding-left:32px}.number-info:not(:first-child)::after{position:absolute;top:0;bottom:0;left:0;width:1px;margin:8px 0}.trend{font-size:14px;line-height:22px}.trend__down,.trend__up{position:relative;top:1px;margin-left:4px}.trend__down i,.trend__up i{transform:scale(.83);font-size:12px}.trend__up{color:#d32029}.trend__down{top:-1px;color:#49aa19}.sidebar-nav__item-link,.trend__grey .trend__down,.trend__grey .trend__up{color:rgba(255,255,255,.85)}.trend__reverse .trend__up{color:#49aa19}.trend__reverse .trend__down{color:#d32029}html{--antd-wave-shadow-color:#177ddc;--scroll-bar:0;direction:ltr}body{background-color:#f5f7fa}.alain-default{position:relative;overflow-x:hidden;display:block;width:100%;height:auto;min-height:100%}.alain-default__unwrap{margin-right:-24px;margin-left:-24px}@media (max-width:767px){.alain-default__unwrap{margin-right:0;margin-left:0}}.alain-default__content{margin:0 24px 24px}.alain-default__content-title{display:flex;align-items:center;justify-content:space-between;margin-right:-24px;margin-bottom:24px;margin-left:-24px;padding:12px 24px;color:#929292;background-color:#fafbfc;border-bottom:1px solid #efe3e5}.alain-default__content-title>h1{margin-bottom:0;font-size:18px;font-weight:400}.alain-default__content-title>h1>small{display:block;font-size:12px;color:#8c8c8c}.alain-default__content nz-input-group{width:auto}.alain-default__hide-aside .alain-default__content{transform:none!important;margin-left:24px!important}.alain-default__hide-header .alain-default__aside{margin-top:0}@media (min-width:768px){.alain-default__content{margin-left:224px}.alain-default__collapsed .alain-default__sidebar{width:64px}.alain-default__collapsed .alain-default__content{margin-left:88px}[dir=rtl] .alain-default__content{margin-right:224px;margin-left:0}[dir=rtl] .alain-default__collapsed .alain-default__content{margin-right:88px;margin-left:0}}.alain-default__header{z-index:19;display:flex;align-items:center;width:100%;height:64px;padding:0 16px;background-color:#177ddc;box-shadow:0 1px 10px rgba(0,0,0,.2)}.alain-default__header-logo{width:200px;margin-left:-16px;transition:width .2s cubic-bezier(.25,0,.15,1)}.alain-default__nav-item,.app-icons .ant-col-6{transition:background-color .3s;cursor:pointer;text-align:center}.alain-default__header-logo-link{display:block;text-align:center}.alain-default__header-logo-collapsed,.alain-default__header-logo-expanded{max-width:100%;max-height:36px;vertical-align:middle;animation:fadeIn 1s}.alain-default__header-logo-collapsed{display:none}.alain-default__header-logo-expanded{display:inline-block}.alain-default__nav{display:flex;align-items:center;margin:0;padding:0}.alain-default__nav:first-child{margin-right:16px}.alain-default__nav-wrap{display:flex;flex:1;justify-content:space-between}.alain-default__nav>li{display:inline-block;vertical-align:middle}.alain-default__nav nz-badge,.alain-default__nav-item{color:#fff}.alain-default__nav-item{display:block;min-width:50px;padding:8px 2px;line-height:100%;border-radius:2px;outline:0}.alain-default__nav-item:hover{color:#fff;background-color:rgba(255,255,255,.2)}.alain-default__nav-item-icon,.alain-default__nav-item>i{transform:none!important;font-size:18px!important}.alain-default__top-menu-item{display:flex;align-items:center;height:64px;padding:0 16px;border-radius:0}.alain-default__top-menu-item-selected{color:#fff;background-color:rgba(255,255,255,.2)}.alain-default__top-menu-item-disabled{opacity:.5}.alain-default__search{position:relative;display:flex;flex:1;align-items:center;margin:0 24px}.alain-default__search .ant-input{padding-left:0}.alain-default__search .ant-input:focus{box-shadow:none}.alain-default__search .ant-input,.alain-default__search .ant-input-affix-wrapper,.alain-default__search .ant-input-group-addon{color:#fff;background-color:rgba(255,255,255,.2);border:none}.alain-default__search .ant-input-affix-wrapper::placeholder,.alain-default__search .ant-input-group-addon::placeholder,.alain-default__search .ant-input::placeholder{color:#fff;opacity:1}.alain-default__search .ant-input-affix-wrapper .ant-input{background-color:transparent}.alain-default__search .ant-input-affix-wrapper i,.alain-default__search .ant-input-group-addon i{color:#fff;transition:color .3s,transform .4s}.alain-default__search-focus .ant-input,.alain-default__search-focus .ant-input-affix-wrapper,.alain-default__search-focus .ant-input-group-addon{color:#595959;background-color:#f3f3f3}.alain-default__search-focus .ant-input-affix-wrapper::placeholder,.alain-default__search-focus .ant-input-group-addon::placeholder,.alain-default__search-focus .ant-input::placeholder{color:#595959;opacity:1}.alain-default__search-focus .ant-input-affix-wrapper i,.alain-default__search-focus .ant-input-group-addon i{transform:rotate(90deg);color:#595959}@media (max-width:767px){.alain-default__search{position:absolute;z-index:29;top:0;left:0;align-items:center;width:100%;height:100%;margin:0;padding:0 16px;background-color:#fff;transition:transform .3s}.alain-default__search-toggled{display:flex}.alain-default__search:not(.alain-default__search-toggled){transform:translate3d(0,-105%,0)}}.alain-default__collapsed .alain-default__header-logo{width:64px}.alain-default__collapsed .alain-default__header-logo-collapsed{display:inline-block}.alain-default__collapsed .alain-default__header-logo-expanded{display:none}@media (max-width:767px){.alain-default__header-logo{width:64px}.alain-default__header-logo-collapsed{display:inline}.alain-default__header-logo-expanded{display:none}}[dir=rtl] .alain-default__header-logo{margin-right:-16px;margin-left:0}.alain-default__aside{position:absolute;z-index:14;top:0;bottom:0;overflow:hidden;width:200px;margin-top:64px;backface-visibility:hidden;background-color:#fff;transition:width .2s cubic-bezier(.25,0,.15,1),translate .2s cubic-bezier(.25,0,.15,1);-webkit-overflow-scrolling:touch}.alain-default__aside::after{position:absolute;top:0;right:0;bottom:0;border-right:1px solid #efe3e5}.alain-default__aside-wrap{display:flex;flex-direction:column;height:100%}.alain-default__aside-inner{scrollbar-width:none;scroll-snap-type:proximity;overflow-x:hidden scroll;flex:1 1 0%;-webkit-overflow-scrolling:touch;scroll-snap-points-x:snaplist(100%,200%,300%,400%,500%)}.alain-default__aside-inner::-webkit-scrollbar{width:0;height:0}.alain-default__aside-inner::-webkit-scrollbar-track{box-shadow:inset 0 0 0 transparent}.alain-default__aside-inner::-webkit-scrollbar-thumb{background-color:transparent}.alain-default__aside-link{border-top:1px solid #efe3e5}.alain-default__aside-link-collapsed{cursor:pointer;padding:8px 0;font-size:16px;text-align:center}@media (min-width:768px){.alain-default__collapsed .alain-default__aside{width:64px}}[dir=rtl] .alain-default__aside::after{right:inherit;left:0}@media (max-width:767px){.alain-default__aside,.alain-default__content{transition:transform .3s ease}.alain-default__content{transform:translate3d(200px,0,0)}.alain-default__collapsed .alain-default__aside{transform:translate3d(-100%,0,0)}.alain-default__collapsed .alain-default__content{transform:translateZ(0)}[dir=rtl] .alain-default__content{transform:translate3d(-200px,0,0)}[dir=rtl] .alain-default__collapsed .alain-default__aside{transform:translate3d(100%,0,0)}[dir=rtl] .alain-default__collapsed .alain-default__content{transform:translateZ(0)}}.alain-default__progress-bar{position:fixed;z-index:29;overflow:hidden;width:100vw;height:4px;background:rgba(221,221,221,.4)}.alain-default__progress-bar::after{content:' ';transform-origin:top left;display:block;width:33.3vw;height:100%;animation:gradcolours 5s steps(1) infinite,loadthird 1s infinite linear}@keyframes loadthird{0%{transform:translateX(-33.3vw)}100%{transform:translateX(100vw)}}@keyframes gradcolours{0%{background:linear-gradient(90deg,rgba(232,128,152,0) 0,#e88098 30%,#e88098 50%,#e88098 70%,rgba(232,128,152,0) 100%)}20%{background:linear-gradient(90deg,rgba(132,190,190,0) 0,#84bebe 30%,#84bebe 50%,#84bebe 70%,rgba(132,190,190,0) 100%)}40%{background:linear-gradient(90deg,rgba(233,135,36,0) 0,#e98724 30%,#e98724 50%,#e98724 70%,rgba(233,135,36,0) 100%)}60%{background:linear-gradient(90deg,rgba(175,201,78,0) 0,#afc94e 30%,#afc94e 50%,#afc94e 70%,rgba(175,201,78,0) 100%)}80%{background:linear-gradient(90deg,rgba(98,151,164,0) 0,#6297a4 30%,#6297a4 50%,#6297a4 70%,rgba(98,151,164,0) 100%)}}.sidebar-nav{display:block;margin:0;padding:0;font-size:14px}.sidebar-nav__item{position:relative;display:flex;flex-direction:column;border-left:3px solid transparent;transition:border-left-color .4s ease}.sidebar-nav__item-link{user-select:none;position:relative;overflow:hidden;display:block;padding:8px 32px 8px 16px;text-decoration:none!important;text-overflow:ellipsis;white-space:nowrap}.sidebar-nav__item-link:hover{color:#177ddc}.sidebar-nav__item-icon{display:inline-block;min-width:14px;margin-right:8px;transition:font-size .15s cubic-bezier(.215,.61,.355,1),margin .3s cubic-bezier(.645,.045,.355,1)}.sidebar-nav__item-img,.sidebar-nav__item-svg{width:14px;height:14px}.sidebar-nav__item-text{opacity:1;transition:opacity .3s cubic-bezier(.645,.045,.355,1),width .3s cubic-bezier(.645,.045,.355,1)}.sidebar-nav__item-disabled{cursor:default;opacity:.6}.sidebar-nav__item-disabled:hover{color:rgba(255,255,255,.85)}.sidebar-nav__selected{background-color:#fcfcfc;border-left-color:#177ddc}.sidebar-nav__selected>.sidebar-nav__item-link{color:#177ddc}.sidebar-nav__open>.sidebar-nav__sub{display:block;animation:fadeIn .5s}.sidebar-nav__open>.sidebar-nav__item-link .sidebar-nav__sub-arrow{transform:translateY(-2px)}.sidebar-nav__open>.sidebar-nav__item-link .sidebar-nav__sub-arrow::before{transform:rotate(45deg) translateX(2px)}.sidebar-nav__open>.sidebar-nav__item-link .sidebar-nav__sub-arrow::after{transform:rotate(-45deg) translateX(-2px)}.sidebar-nav__group-title{padding:8px 16px;color:rgba(255,255,255,.45)}.sidebar-nav__sub{overflow:hidden;display:none}.sidebar-nav__sub .sidebar-nav__item{border-left:0!important}.sidebar-nav__sub-arrow{position:absolute;top:50%;right:16px;width:10px;transition:transform .3s cubic-bezier(.645,.045,.355,1)}.sidebar-nav__sub-arrow::after,.sidebar-nav__sub-arrow::before{content:'';position:absolute;width:6px;height:1.5px;background:#fff;background-image:linear-gradient(to right,rgba(255,255,255,.85),rgba(255,255,255,.85));border-radius:2px;transition:background-color .3s cubic-bezier(.645,.045,.355,1),transform .3s cubic-bezier(.645,.045,.355,1),top .3s cubic-bezier(.645,.045,.355,1)}.sidebar-nav__sub-arrow::before{transform:rotate(-45deg) translateX(2px)}.sidebar-nav__sub-arrow::after{transform:rotate(45deg) translateX(-2px)}.sidebar-nav .ant-badge{position:absolute;top:8px;right:8px}.sidebar-nav .ant-badge-dot{top:10px!important;right:16px!important}.sidebar-nav__depth1 .sidebar-nav__item-link{padding-left:38px}.sidebar-nav__depth2 .sidebar-nav__item-link{padding-left:46px}.sidebar-nav__depth3 .sidebar-nav__item-link{padding-left:54px}.sidebar-nav__depth4 .sidebar-nav__item-link{padding-left:62px}.sidebar-nav__depth5 .sidebar-nav__item-link{padding-left:70px}.sidebar-nav__floating{position:absolute;z-index:16;display:none;min-width:160px;background-color:#fff;border:1px solid #efe3e5;border-radius:4px}.sidebar-nav__floating .sidebar-nav__item-link{padding-left:16px}.sidebar-nav__floating .sidebar-nav__sub,.sidebar-nav__floating-show{display:block}.algolia-autocomplete .ds-dropdown-menu::before,.sidebar-nav__floating .sidebar-nav__sub-arrow{display:none}.sidebar-nav__floating .sidebar-nav__depth2 .sidebar-nav__item-link{padding-left:24px}.sidebar-nav__floating .sidebar-nav__depth3 .sidebar-nav__item-link{padding-left:32px}#logo,.sidebar-nav__floating .sidebar-nav__depth4 .sidebar-nav__item-link{padding-left:40px}[dir=rtl] .sidebar-nav__item-icon{margin-right:0;margin-left:8px}[dir=rtl] .sidebar-nav .ant-badge{right:inherit;left:16px}@media (min-width:768px){.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item{border:none}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link{display:flex;justify-content:center;padding:16px 0}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link .sidebar-nav__item-icon{margin-right:0;font-size:24px}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link .sidebar-nav__item-img{width:24px;height:24px}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link .sidebar-nav__item-text{display:none;opacity:0}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__group-title{display:none}.alain-default__collapsed .sidebar-nav__sub{display:none!important}.alain-default__collapsed .sidebar-nav__sub-arrow{display:none}[dir=rtl] .alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link .sidebar-nav__item-icon{margin-left:0}}.footer-toolbar__left{margin-left:200px}.alain-default__collapsed .footer-toolbar__left,.prev-next-nav{margin-left:64px}.footer-toolbar__body .alain-default__content{margin-bottom:64px}.full-content__body .alain-default__content router-outlet+*{display:block;width:100%;height:100%}.full-content__hidden-title .alain-default__content-title,.full-content__hidden-title .page-header,.full-content__opened .alain-default__aside,.full-content__opened .alain-default__header,.full-content__opened reuse-tab{display:none!important}.full-content__body .alain-default__content-title{margin-left:-24px}.full-content__opened .alain-default__content{margin:24px!important}.alain-default .page-header{margin-right:-24px;margin-bottom:24px;margin-left:-24px;padding:12px 24px 0;border-bottom:1px solid #efe3e5}@media (max-width:767px){.quick-menu{right:-25px!important}}.reuse-tab{margin:0 -24px}.alain-default__fixed .reuse-tab{position:fixed;z-index:10;top:64px;right:24px;left:224px}.alain-default__collapsed .reuse-tab{left:88px}.alain-default__hide-aside .reuse-tab{left:24px}.alain-default__hide-header .reuse-tab{top:0}@media (min-width:768px){.alain-default__fixed .reuse-tab+router-outlet{display:block;height:52px}}@media (max-width:767px){.alain-default__fixed .reuse-tab{position:unset;width:initial;margin-top:52px}}[dir=rtl] .alain-default__fixed .reuse-tab{right:224px;left:24px}[dir=rtl] .alain-default__collapsed .reuse-tab{right:88px;left:0}.alain-default__nav-item .ant-badge-count{top:6px;right:18px}.app-icons{padding:16px}.app-icons .ant-col-6{padding:16px 0;border-radius:4px}.app-icons .ant-col-6:hover{background-color:rgba(255,255,255,.08)}.app-icons i{padding:15px;font-size:22px;border-radius:50%}.app-icons small{display:block;padding-top:4px;font-size:14px;color:#9c9c9c}.alain-default__aside-user-info,.color-palettes-dark .color-title,.header-link,body{color:rgba(255,255,255,.85)}.alain-default__aside-user{cursor:pointer;display:flex;align-items:center;justify-content:center;margin:24px 24px 0}.alain-default__aside-user .ant-dropdown-trigger{display:flex;align-items:center}.alain-default__aside-user-info{overflow:hidden;flex:1;text-overflow:ellipsis;white-space:nowrap}.alain-default__aside-user-avatar{margin-right:8px}[dir=rtl] .alain-default__aside-user-avatar{margin-right:0;margin-left:8px}@media (min-width:768px){[dir=rtl] .alain-default__collapsed .alain-default__aside-user{margin-right:0}[dir=rtl] .alain-default__collapsed .alain-default__aside-user-avatar{margin:0 auto}.alain-default__collapsed .alain-default__aside-user{width:64px;margin-left:0}.alain-default__collapsed .alain-default__aside-user-info{display:none}.alain-default__collapsed .alain-default__aside-user-avatar{margin:0 auto}}.alain-default__fixed .alain-default__header{position:fixed;top:0;left:0}.alain-default__fixed .alain-default__aside{position:fixed}.alain-default__fixed:not(.alain-default__hide-header) .alain-default__content{margin-top:64px}.nz-resizable-preview{position:absolute;top:0;left:0;z-index:8;border:1px dashed #d1d1d1}.nz-resizable-handle{position:absolute;user-select:none;z-index:9}.nz-resizable-handle-top{width:100%;height:10px;top:-5px;left:0}.nz-resizable-handle-right{width:10px;height:100%;top:0;right:-5px}.nz-resizable-handle-bottom{width:100%;height:10px;bottom:-5px;left:0}.nz-resizable-handle-left{width:10px;height:100%;top:0;left:-5px}.nz-resizable-handle-topRight{width:20px;height:20px;top:-5px;right:-5px;z-index:10}.nz-resizable-handle-bottomRight{width:20px;height:20px;right:-5px;bottom:-5px;z-index:10}.nz-resizable-handle-bottomLeft{width:20px;height:20px;bottom:-5px;left:-5px;z-index:10}.nz-resizable-handle-topLeft{width:20px;height:20px;top:-5px;left:-5px;z-index:10}.nz-resizable .nz-resizable-handle-cursor-type-window.nz-resizable-handle-bottom,.nz-resizable .nz-resizable-handle-cursor-type-window.nz-resizable-handle-top{cursor:ns-resize}.nz-resizable .nz-resizable-handle-cursor-type-window.nz-resizable-handle-left,.nz-resizable .nz-resizable-handle-cursor-type-window.nz-resizable-handle-right{cursor:ew-resize}.nz-resizable .nz-resizable-handle-cursor-type-grid.nz-resizable-handle-bottom,.nz-resizable .nz-resizable-handle-cursor-type-grid.nz-resizable-handle-top{cursor:row-resize}.nz-resizable .nz-resizable-handle-cursor-type-grid.nz-resizable-handle-left,.nz-resizable .nz-resizable-handle-cursor-type-grid.nz-resizable-handle-right{cursor:col-resize}.nz-resizable .nz-resizable-handle-bottomRight,.nz-resizable .nz-resizable-handle-topLeft{cursor:nwse-resize}.nz-resizable .nz-resizable-handle-bottomLeft,.nz-resizable .nz-resizable-handle-topRight{cursor:nesw-resize}.color-palettes{margin:0 1%}.color-palettes-dark{margin:0;padding:0 28px;background-color:#141414}.color-palettes-dark .color-description{color:rgba(255,255,255,.45)}.color-palettes-dark .color-palette{margin:45px 3.5% 45px 0}.color-palettes-dark .color-palette .main-color-item,.color-palettes-dark .color-palette:nth-of-type(3n){margin-right:0}.color-palettes-dark .color-palette .main-color-item:hover{margin-right:-8px}.color-palette{display:inline-block;width:31%;margin:45px 1%}.color-palette-pick{margin:0 0 20px;font-size:20px;text-align:center}.color-palette-picker{margin:24px 0}.color-palette-picker-value{position:relative;top:-3px;margin-left:16px;font-family:Consolas,sans-serif;font-size:14px}.color-palette-picker-validation{position:relative;top:-3px;margin-left:16px;font-size:13px;color:#a61d24}.color-palette-picker-validation-dark{margin-left:0}.main-color{text-align:left}.main-color .palette-gray-11{background:#1f1f1f}.main-color .palette-gray-12{background:#141414}.main-color .palette-gray-13{background:#000}.main-color-item{cursor:pointer;position:relative;height:44px;margin-right:4px;padding:0 12px;font-family:Consolas,sans-serif;font-size:14px;line-height:44px;transition:all .2s}.main-color-item:first-child{border-radius:4px 4px 0 0}.main-color-item:last-child{border-radius:0 0 4px 4px}.main-color-item:hover{margin-right:-8px;border-radius:0 4px 4px 0}.main-color-item .main-color-text{float:left;transition:all .3s}.main-color-item .main-color-value{position:relative;left:3px;transform-origin:100% 50%;transform:scale(.85);float:right;opacity:0;transition:all .3s}.main-color .palette-blue-1{background:#111d2c}.main-color .palette-blue-2{background:#112a45}.main-color .palette-blue-3{background:#15395b}.main-color .palette-blue-4{background:#164c7e}.main-color .palette-blue-5{background:#1765ad}.main-color .palette-blue-6{background:#177ddc}.main-color .palette-blue-7{background:#3c9ae8}.main-color .palette-blue-8{background:#65b7f3}.main-color .palette-blue-9{background:#8dcff8}.main-color .palette-blue-10{background:#b7e3fa}.main-color .palette-purple-1{background:#1a1325}.main-color .palette-purple-2{background:#24163a}.main-color .palette-purple-3{background:#301c4d}.main-color .palette-purple-4{background:#3e2069}.main-color .palette-purple-5{background:#51258f}.main-color .palette-purple-6{background:#642ab5}.main-color .palette-purple-7{background:#854eca}.main-color .palette-purple-8{background:#ab7ae0}.main-color .palette-purple-9{background:#cda8f0}.main-color .palette-purple-10{background:#ebd7fa}.main-color .palette-cyan-1{background:#112123}.main-color .palette-cyan-2{background:#113536}.main-color .palette-cyan-3{background:#144848}.main-color .palette-cyan-4{background:#146262}.main-color .palette-cyan-5{background:#138585}.main-color .palette-cyan-6{background:#13a8a8}.main-color .palette-cyan-7{background:#33bcb7}.main-color .palette-cyan-8{background:#58d1c9}.main-color .palette-cyan-9{background:#84e2d8}.main-color .palette-cyan-10{background:#b2f1e8}.main-color .palette-green-1{background:#162312}.main-color .palette-green-2{background:#1d3712}.main-color .palette-green-3{background:#274916}.main-color .palette-green-4{background:#306317}.main-color .palette-green-5{background:#3c8618}.main-color .palette-green-6{background:#49aa19}.main-color .palette-green-7{background:#6abe39}.main-color .palette-green-8{background:#8fd460}.main-color .palette-green-9{background:#b2e58b}.main-color .palette-green-10{background:#d5f2bb}.main-color .palette-magenta-1{background:#291321}.main-color .palette-magenta-2{background:#40162f}.main-color .palette-magenta-3{background:#551c3b}.main-color .palette-magenta-4{background:#75204f}.main-color .palette-magenta-5{background:#a02669}.main-color .palette-magenta-6{background:#cb2b83}.main-color .palette-magenta-7{background:#e0529c}.main-color .palette-magenta-8{background:#f37fb7}.main-color .palette-magenta-9{background:#f8a8cc}.main-color .palette-magenta-10{background:#fad2e3}.main-color .palette-red-1{background:#2a1215}.main-color .palette-red-2{background:#431418}.main-color .palette-red-3{background:#58181c}.main-color .palette-red-4{background:#791a1f}.main-color .palette-red-5{background:#a61d24}.main-color .palette-red-6{background:#d32029}.main-color .palette-red-7{background:#e84749}.main-color .palette-red-8{background:#f37370}.main-color .palette-red-9{background:#f89f9a}.main-color .palette-red-10{background:#fac8c3}.main-color .palette-volcano-1{background:#2b1611}.main-color .palette-volcano-2{background:#441d12}.main-color .palette-volcano-3{background:#592716}.main-color .palette-volcano-4{background:#7c3118}.main-color .palette-volcano-5{background:#aa3e19}.main-color .palette-volcano-6{background:#d84a1b}.main-color .palette-volcano-7{background:#e87040}.main-color .palette-volcano-8{background:#f3956a}.main-color .palette-volcano-9{background:#f8b692}.main-color .palette-volcano-10{background:#fad4bc}.main-color .palette-orange-1{background:#2b1d11}.main-color .palette-orange-2{background:#442a11}.main-color .palette-orange-3{background:#593815}.main-color .palette-orange-4{background:#7c4a15}.main-color .palette-orange-5{background:#aa6215}.main-color .palette-orange-6{background:#d87a16}.main-color .palette-orange-7{background:#e89a3c}.main-color .palette-orange-8{background:#f3b765}.main-color .palette-orange-9{background:#f8cf8d}.main-color .palette-orange-10{background:#fae3b7}.main-color .palette-gold-1{background:#2b2111}.main-color .palette-gold-2{background:#443111}.main-color .palette-gold-3{background:#594214}.main-color .palette-gold-4{background:#7c5914}.main-color .palette-gold-5{background:#aa7714}.main-color .palette-gold-6{background:#d89614}.main-color .palette-gold-7{background:#e8b339}.main-color .palette-gold-8{background:#f3cc62}.main-color .palette-gold-9{background:#f8df8b}.main-color .palette-gold-10{background:#faedb5}.main-color .palette-yellow-1{background:#2b2611}.main-color .palette-yellow-2{background:#443b11}.main-color .palette-yellow-3{background:#595014}.main-color .palette-yellow-4{background:#7c6e14}.main-color .palette-yellow-5{background:#aa9514}.main-color .palette-yellow-6{background:#d8bd14}.main-color .palette-yellow-7{background:#e8d639}.main-color .palette-yellow-8{background:#f3ea62}.main-color .palette-yellow-9{background:#f8f48b}.main-color .palette-yellow-10{background:#fafab5}.main-color .palette-lime-1{background:#1f2611}.main-color .palette-lime-2{background:#2e3c10}.main-color .palette-lime-3{background:#3e4f13}.main-color .palette-lime-4{background:#536d13}.main-color .palette-lime-5{background:#6f9412}.main-color .palette-lime-6{background:#8bbb11}.main-color .palette-lime-7{background:#a9d134}.main-color .palette-lime-8{background:#c9e75d}.main-color .palette-lime-9{background:#e4f88b}.main-color .palette-lime-10{background:#f0fab5}.main-color .palette-geekblue-1{background:#131629}.main-color .palette-geekblue-2{background:#161d40}.main-color .palette-geekblue-3{background:#1c2755}.main-color .palette-geekblue-4{background:#203175}.main-color .palette-geekblue-5{background:#263ea0}.main-color .palette-geekblue-6{background:#2b4acb}.main-color .palette-geekblue-7{background:#5273e0}.main-color .palette-geekblue-8{background:#7f9ef3}.main-color .palette-geekblue-9{background:#a8c1f8}.main-color .palette-geekblue-10{background:#d2e0fa}.main-color .palette-gray-1{background:#fff}.main-color .palette-gray-2{background:#fafafa}.main-color .palette-gray-3{background:#f5f5f5}.main-color .palette-gray-4{background:#f0f0f0}.main-color .palette-gray-5{background:#d9d9d9}.main-color .palette-gray-6{background:#bfbfbf}.main-color .palette-gray-7{background:#8c8c8c}.main-color .palette-gray-8{background:#595959}.main-color .palette-gray-9{background:#434343}.main-color .palette-gray-10{background:#262626}.color-title{margin:0 0 24px;font-size:22px;font-weight:500;color:#5c6b77;text-align:center;text-transform:capitalize}#header>.ant-row>.ant-col h1,.color-palette-horizontal-dark .color-palette-picker{margin-bottom:0}.color-description{display:block;font-size:14px;font-weight:lighter;color:#777}.main-color:hover .main-color-value{left:0;opacity:.7}.color-palette-horizontal{width:100%}.color-palette-horizontal-dark{height:303px;padding:32px 28px;background-color:#141414}.color-palette-horizontal-dark .color-palette-pick{color:rgba(255,255,255,.65);text-align:left}.color-palette-horizontal-dark .color-palette-pick-hex{color:rgba(255,255,255,.65)}.color-palette-horizontal .main-color{display:flex}.color-palette-horizontal .main-color-item{position:relative;flex:1;height:86px;margin-right:0;padding:37px 0 0;line-height:normal;text-align:center;border-radius:0}.color-palette-horizontal .main-color-item .main-color-text{float:none}.color-palette-horizontal .main-color-item:hover{height:96px;margin-top:-10px;border-radius:4px 4px 0 0}.color-palette-horizontal .main-color-value{position:absolute;bottom:0;left:0;transform-origin:unset;width:100%;text-align:center}.color-palette-horizontal .main-color:hover .main-color-item{padding-top:8px}.color-palette-horizontal .main-color:hover .main-color-value{bottom:8px;opacity:.7}article,aside,blockquote,body,button,code,dd,details,div,dl,dt,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,hr,input,legend,li,menu,nav,ol,p,pre,section,td,textarea,th,ul{margin:0;padding:0}ol,ul{list-style:none}body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,'Noto Sans',sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji';font-size:14px;background:#000;transition:background 1s cubic-bezier(.075,.82,.165,1)}#logo,#nav,.aside-container,.markdown h1,.markdown h2,.markdown h3,.markdown h4,.markdown h5,.markdown h6{font-family:Avenir,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,'Noto Sans',sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji',sans-serif}a{transition:color .3s ease}#ng-content{display:block;height:100%}.fetching{position:absolute;z-index:99;top:16px;left:16px}#header,#logo img,#search-box{position:relative}#demo-toc.toc,#header,#header #nav.ant-menu,#header #search-box,.main-wrapper,.main-wrapper .main-container,.main-wrapper>.ant-row>.main-menu .main-menu-inner>.ant-menu,.main-wrapper>.ant-row>.main-menu .main-menu-inner>.ant-menu.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title::after{transition:all .3s cubic-bezier(.78,.14,.15,.86)}.ant-menu-item-active .header-link{color:#177ddc}#header{z-index:10;display:block;max-width:100%;background:#141414;box-shadow:0 2px 8px #f0f1f2}#header .menu-row{display:flex;align-items:center;margin:0}#header .menu-row>*{flex:none;margin:0 16px 0 0}#header .menu-row>:last-child{margin-right:40px}#header .ant-row-rtl .menu-row>:last-child{margin-right:16px;margin-left:40px}#header .header-button{color:rgba(255,255,255,.85);border-color:#434343}#logo{overflow:hidden;height:64px;font-size:18px;line-height:64px;color:rgba(255,255,255,.85);text-decoration:none;white-space:nowrap}.ant-row-rtl #logo{float:right;padding-right:40px;padding-left:0}#logo img{top:-1.5px;height:32px;margin-right:16px}.ant-row-rtl #logo img{margin-right:0;margin-left:16px}#search-box{display:flex;flex:auto!important;align-items:center;height:22px;margin:0 auto 0 0!important;padding-left:16px;line-height:22px;white-space:nowrap;border-left:1px solid #303030;transition:width .5s}.ant-row-rtl #search-box{margin:0 0 0 auto!important;padding-right:16px;padding-left:0;border-right:1px solid #303030;border-left:none}#search-box>*{flex:auto}#search-box .anticon{position:absolute;z-index:1;top:50%;transform:translateY(-50%);flex:none;color:#ced4d9}#search-box input{width:100%;max-width:200px;padding-left:20px;font-size:14px;background:0 0;border:0;box-shadow:none}#search-box.narrow-mode input,.ant-row-rtl #search-box input{padding-right:20px;padding-left:11px}#search-box input::placeholder{color:#a3b1bf}#search-box.narrow-mode{flex:none!important;width:30px}#search-box.narrow-mode:hover .anticon{color:#a3b1bf}#search-box.narrow-mode .anticon{right:0;left:auto}.ant-row-rtl #search-box.narrow-mode .anticon{right:auto;left:0}#search-box.narrow-mode input{cursor:pointer;max-width:none}.ant-row-rtl #search-box.narrow-mode input{padding-right:11px;padding-left:20px}#search-box.narrow-mode.focused{width:500px}#search-box.narrow-mode.focused .anticon{color:#ced4d9}#search-box.narrow-mode.focused input{cursor:text}.algolia-autocomplete .ds-dropdown-menu{border:none;box-shadow:0 3px 6px -4px rgba(0,0,0,.48),0 6px 16px 0 rgba(0,0,0,.32),0 9px 28px 8px rgba(0,0,0,.2)}.algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-]{background:#141414;border:none}.algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-] .algolia-docsearch-suggestion{background:#141414}.algolia-autocomplete .algolia-docsearch-suggestion--title{color:rgba(255,255,255,.85)}#nav.ant-menu-horizontal>.ant-menu-item-selected a,.algolia-autocomplete .algolia-docsearch-suggestion--highlight{color:#177ddc}.nav-phone-icon{cursor:pointer;position:absolute;z-index:1;top:25px;right:30px;width:16px;height:22px}#nav{height:100%;font-size:14px;border:0}#nav.ant-menu-horizontal{border-bottom:none}#nav.ant-menu-horizontal>.ant-menu-item,#nav.ant-menu-horizontal>.ant-menu-submenu{min-width:72px;height:64px;line-height:60px;border-top:2px solid transparent}#nav.ant-menu-horizontal>.ant-menu-item::after,#nav.ant-menu-horizontal>.ant-menu-submenu::after{content:none}.browser-mockup::after,.browser-mockup::before{content:'';position:absolute}#nav.ant-menu-horizontal>.ant-menu-item:hover,#nav.ant-menu-horizontal>.ant-menu-submenu:hover{border-top:2px solid #177ddc;border-bottom:none}#nav.ant-menu-horizontal .ant-menu-submenu-title .anticon{margin:0}#nav.ant-menu-horizontal>.ant-menu-item-selected,#nav.ant-menu-horizontal>.ant-menu-submenu-open{border-top:2px solid #177ddc;border-bottom:2px solid transparent}#nav>.ant-menu-item,#nav>.ant-menu-submenu{text-align:center}.popover-menu{width:300px}.popover-menu .ant-popover-inner-content{padding:0}.popover-menu .ant-popover-inner-content #nav .ant-menu-item,.popover-menu .ant-popover-inner-content #nav .ant-menu-submenu{text-align:left}.popover-menu .ant-popover-inner-content #nav .ant-menu-item-group-title{padding-left:24px}.popover-menu .ant-popover-inner-content #nav .ant-menu-item-group-list{padding:0 16px}.popover-menu .ant-popover-inner-content #nav .ant-menu-item,.popover-menu .ant-popover-inner-content #nav a{color:#333}@media only screen and (max-width:1200px){#header{text-align:center}#logo{padding-right:0;padding-left:0}#search-box{display:none}}[dir=rtl] .nav-phone-icon{right:inherit;left:30px}.main-wrapper{position:relative;display:block;padding:40px 0 0;background:#141414}.main-container{position:relative;min-height:500px;padding:0 170px 32px 64px;background:#141414}.ant-row-rtl .main-container{padding:0 64px 144px 186px}.main-menu{z-index:1}.main-menu-inner{overflow:hidden;height:100%;max-height:100vh}.main-menu:hover .main-menu-inner{overflow-y:auto}.main-menu>div,.main-menu>div>div{height:100%}.aside-container{min-height:100%;padding-bottom:48px}.aside-container.ant-menu-inline .ant-menu-item a,.aside-container.ant-menu-inline .ant-menu-submenu-title h4,.aside-container.ant-menu-inline>.ant-menu-item{overflow:hidden;font-size:14px;text-overflow:ellipsis}.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title{margin-top:16px;margin-bottom:16px;font-size:13px}.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title::after{content:'';position:relative;top:12px;display:block;width:calc(100% - 20px);height:1px;background:#303030}.aside-container.ant-menu-inline.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item,.aside-container.ant-menu-inline>.ant-menu-item,.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item,.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title,.aside-container.ant-menu-inline>.ant-menu-submenu>.ant-menu-submenu-title{padding-left:40px!important}.ant-row-rtl .aside-container.ant-menu-inline.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item,.ant-row-rtl .aside-container.ant-menu-inline>.ant-menu-item,.ant-row-rtl .aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item,.ant-row-rtl .aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title,.ant-row-rtl .aside-container.ant-menu-inline>.ant-menu-submenu>.ant-menu-submenu-title{padding-right:40px!important;padding-left:16px!important}.aside-container.ant-menu-inline.ant-menu-inline .ant-menu-item-group-title{padding-left:56px}.ant-row-rtl .aside-container.ant-menu-inline.ant-menu-inline .ant-menu-item-group-title{padding-right:56px;padding-left:16px}.aside-container.ant-menu-inline.ant-menu-inline .ant-menu-item-group-list>.ant-menu-item{padding-left:80px!important}.ant-row-rtl .aside-container.ant-menu-inline.ant-menu-inline .ant-menu-item-group-list>.ant-menu-item{padding-right:80px!important;padding-left:16px!important}.aside-container.ant-menu-inline .ant-menu-item-group:first-child .ant-menu-item-group-title{margin-top:0}.aside-container a[disabled]{color:#ccc}.aside-container .menu-item-link-outside{position:relative}.aside-container .menu-item-link-outside .anticon{position:absolute;top:16px;right:-10px;font-size:12px;color:#177ddc;opacity:0;transition:all .3s}.aside-container .menu-item-link-outside:hover .anticon{opacity:1}.aside-container .chinese{margin-left:6px;font-size:12px;font-weight:400;opacity:.67}@media (max-width:1200px){.main-container{padding-right:48px;padding-left:48px}.ant-row-rtl .main-container{padding-right:24px;padding-left:24px}.main-container .toc-affix{display:none}}.drawer{position:fixed;z-index:9999;top:0;width:100%;height:100%}.drawer>*{transition:transform .3s cubic-bezier(.78,.14,.15,.86),opacity .3s cubic-bezier(.78,.14,.15,.86),box-shaow .3s cubic-bezier(.78,.14,.15,.86),-webkit-transform .3s cubic-bezier(.78,.14,.15,.86)}.drawer-content-wrapper,.drawer-mask{position:absolute;height:100%}.drawer-mask{top:0;width:100%;opacity:0;background:#000}.drawer-content-wrapper{left:-60vw;width:60vw;background:#fff;box-shadow:2px 0 10px rgba(0,0,0,.15)}.drawer-content{overflow:auto;height:100%}.drawer-button{pointer-events:auto;cursor:pointer;position:absolute;z-index:0;top:72px;right:-40px;display:flex;align-items:center;justify-content:center;width:41px;height:40px;font-size:16px;line-height:40px;text-align:center;background:#141414;border-radius:0 4px 4px 0;box-shadow:2px 0 8px rgba(0,0,0,.15)}.prev-next-nav>.next-page .footer-nav-icon-before,.prev-next-nav>a.prev-page .footer-nav-icon-after{display:none}.drawer-open{pointer-events:auto;transform:translateX(60vw);transition:transform .3s cubic-bezier(.78,.14,.15,.86) 0s}.drawer-open .drawer-mask{opacity:.3}@media (max-width:767px){.drawer .ant-menu-inline .ant-menu-item::after,.drawer .ant-menu-vertical .ant-menu-item::after{right:auto;left:0}}.prev-next-nav{overflow:hidden;width:calc(100% - 128px);margin-right:64px;font-size:14px;border-top:1px solid #303030}.prev-next-nav>.next-page,.prev-next-nav>.prev-page{float:left;width:50%;height:72px;line-height:72px;text-decoration:none}.ant-row-rtl .prev-next-nav>.next-page,.ant-row-rtl .prev-next-nav>.prev-page{float:right}.ant-row-rtl .prev-next-nav>.next-page .footer-nav-icon-after,.ant-row-rtl .prev-next-nav>.next-page .footer-nav-icon-before,.ant-row-rtl .prev-next-nav>.prev-page .footer-nav-icon-after,.ant-row-rtl .prev-next-nav>.prev-page .footer-nav-icon-before{transform:rotate(180deg)}.prev-next-nav>a.prev-page .footer-nav-icon-before{position:relative;left:0;margin-right:1em;font-size:12px;color:rgba(255,255,255,.45);transition:all .3s}.ant-row-rtl .prev-next-nav>a.prev-page .footer-nav-icon-before{right:0;left:auto;margin-right:0;margin-left:1em}.prev-next-nav>a.prev-page:hover .footer-nav-icon-before{left:-3px;color:#177ddc}.ant-row-rtl .prev-next-nav>a.prev-page:hover .footer-nav-icon-before{right:-3px;left:auto}.prev-next-nav>.next-page{float:right;text-align:right}.ant-row-rtl .prev-next-nav>.next-page{float:left;text-align:left}.prev-next-nav>.next-page .footer-nav-icon-after{position:relative;right:0;margin-left:1em;font-size:12px;color:rgba(255,255,255,.45);transition:all .3s}.ant-row-rtl .prev-next-nav>.next-page .footer-nav-icon-after{right:auto;left:0;margin-right:1em;margin-left:0}.prev-next-nav>.next-page:hover .footer-nav-icon-after{right:-3px;color:#177ddc}.ant-row-rtl .prev-next-nav>.next-page:hover .footer-nav-icon-after{right:auto;left:-3px}.prev-next-nav .chinese{margin-left:.5em}.footer{position:relative;clear:both;display:block;font-size:14px;color:rgba(255,255,255,.65);background-color:#000;box-shadow:0 1000px 0 1000px #fff}.footer .ant-row{text-align:center}.footer__center{display:inline-block;text-align:left}.footer__center>h2{position:relative;margin:0 auto 24px;font-size:16px;font-weight:500}.footer__center>h2>.title-icon{width:27px;margin-right:16px}.footer__center>h2>.anticon{position:absolute;top:3px;left:-22px;font-size:16px;color:#aaa}.footer__center>div{margin:12px 0}.footer__wrap{position:relative;padding:86px 144px 16px;border-bottom:1px solid rgba(255,255,255,.25)}.footer a{color:rgba(255,255,255,.9)}.footer h2,.footer h2>span{color:#fff}.footer__small .footer__wrap{padding:86px 24px 93px}.theme-color{cursor:pointer;display:inline-block;padding:4px;vertical-align:middle;background:#fff;border-radius:2px;box-shadow:rgba(0,0,0,.1) 0 0 0 1px}.theme-color-value{width:80px;height:16px;border-radius:2px}.theme-color-content .ant-popover-inner-content{width:200px;padding:0}@media (max-width:1200px){.footer,.footer .footer__center{text-align:center}.footer .footer__wrap{padding:40px}.footer .footer__wrap .ant-row{padding:0}.footer .footer__wrap .ant-row>div:nth-child(2),.footer .footer__wrap .ant-row>div:nth-child(4){display:none}.footer .footer__wrap .ant-row>div a{font-weight:300}.footer h2{margin-top:16px}}.code-box .code-expand-icon>span,.theme-btn{display:flex}.theme-btn{cursor:pointer;position:fixed;z-index:2147483640;bottom:102px;flex-direction:column}.theme-btn-tooltip .ant-tooltip-inner{min-width:100px}.theme-btn>div{display:block}.markdown ul>li:empty,.toc-affix .ant-anchor-ink-ball.visible{display:none}.theme-btn-active{width:44px;height:44px;font-size:22px;line-height:44px;color:#177ddc}.theme-btn .theme-btn-avatar{color:#000;background-color:#fff;box-shadow:0 3px 6px -4px rgba(0,0,0,.48),0 6px 16px 0 rgba(0,0,0,.32),0 9px 28px 8px rgba(0,0,0,.2);transition:color .3s}.theme-btn .theme-btn-avatar:hover{color:#177ddc}.toc-affix{position:absolute;top:8px;right:20px}.toc-affix .ant-anchor .ant-anchor-link-active{position:relative;z-index:2;margin-left:-2px;border-left:2px solid #1890ff}.toc-affix .ant-anchor-link-title{max-width:120px}.ant-row-rtl .toc-affix{right:auto;left:20px}@media (max-width:767px){.toc-affix{display:none}}.markdown{font-size:14px;line-height:2;color:rgba(255,255,255,.85)}.markdown img{max-width:calc(100% - 32px)}.markdown p>img{margin:34px 0;box-shadow:0 8px 20px rgba(143,168,191,.35)}.markdown p>img.markdown-inline-image{margin:0;box-shadow:none}.markdown h1{margin-top:8px;margin-bottom:20px;font-size:30px;font-weight:500;line-height:38px;color:rgba(255,255,255,.85)}.markdown h1 .subtitle{margin-left:12px}.ant-row-rtl .markdown h1 .subtitle{margin-right:12px;margin-left:0}.markdown h2{font-size:24px;line-height:32px}.markdown h2,.markdown h3,.markdown h4,.markdown h5,.markdown h6{clear:both;margin:1.6em 0 .6em;font-weight:500;color:rgba(255,255,255,.85)}.markdown pre,.markdown.api-container table{font-family:SFMono-Regular,Consolas,'Liberation Mono',Menlo,Courier,monospace}.markdown h3{font-size:18px}.markdown h4{font-size:16px}.markdown h5{font-size:14px}.markdown h6{font-size:12px}.markdown hr{clear:both;height:1px;margin:56px 0;background:#303030;border:0}.markdown p,.markdown pre{margin:1em 0}.markdown ul>li{margin-left:20px;padding-left:4px;list-style-type:circle}.ant-row-rtl .markdown ul>li{margin-right:20px;margin-left:0;padding-right:4px;padding-left:0}.markdown ol>li{margin-left:20px;padding-left:4px;list-style-type:decimal}.ant-row-rtl .markdown ol>li{margin-right:20px;margin-left:0;padding-right:4px;padding-left:0}.markdown ol>li>p,.markdown ul>li>p{margin:.2em 0}.markdown code{margin:0 1px;padding:.2em .4em;font-size:.9em;background:#f2f4f5;border:1px solid #303030;border-radius:3px}.markdown pre{background:#f2f4f5;border-radius:2px}.markdown pre code{overflow:auto;margin:0;padding:0;font-size:13px;color:rgba(255,255,255,.85);background:#f5f5f5;border:none}.markdown b,.markdown strong{font-weight:500}.markdown>table{table-layout:auto;border-spacing:0;border-collapse:collapse;empty-cells:show;width:100%;margin:8px 0 16px;border:1px solid #303030}.markdown>table tbody tr{transition:all .3s}.markdown>table tbody tr:hover{background:rgba(60,90,100,.04)}.markdown>table th:nth-child(1),.markdown>table th:nth-child(2){word-break:keep-all;white-space:nowrap}.markdown>table th{font-weight:500;color:#5c6b77;background:rgba(0,0,0,.02)}.markdown>table td,.markdown>table th{padding:16px 24px;text-align:left;border:1px solid #303030}.markdown blockquote{margin:1em 0;padding-left:.8em;font-size:90%;color:rgba(255,255,255,.45);border-left:4px solid #303030}.ant-row-rtl .markdown blockquote{padding-right:.8em;padding-left:0;border-right:4px solid #303030;border-left:none}.markdown blockquote p{margin:0}.markdown .anchor{margin-left:8px;opacity:0;transition:opacity .3s}.ant-row-rtl .markdown .anchor{margin-right:8px;margin-left:0}.markdown .waiting{cursor:not-allowed;color:#ccc}.code-box-code-icon,.code-box-code-icon:hover,.markdown a.edit-button i{color:rgba(255,255,255,.45)}.markdown a.edit-button{display:inline-block;margin-left:8px;text-decoration:none}.ant-row-rtl .markdown a.edit-button{margin-right:8px;margin-left:0}#page-404 h1,.markdown a.edit-button i:hover{color:#177ddc}.markdown a.edit-button .anticon{display:block;font-size:16px}.markdown h1:hover .anchor,.markdown h2:hover .anchor,.markdown h3:hover .anchor,.markdown h4:hover .anchor,.markdown h5:hover .anchor,.markdown h6:hover .anchor{display:inline-block;opacity:1}.markdown>br,.markdown>p>br{clear:both}.markdown.api-container{overflow-x:auto}.markdown.api-container table{table-layout:auto;min-width:720px;margin:2em 0;font-size:13px;line-height:1.5715;border:1px solid #303030}.markdown.api-container table td,.markdown.api-container table th{padding:12px;border-color:#303030;border-width:1px 0}.markdown.api-container table th{padding-top:14px;white-space:nowrap;border-width:0 0 2px}.markdown.api-container table th:nth-child(2){word-break:normal;white-space:normal}.markdown.api-container table th:nth-child(4),.markdown.api-container table th:nth-child(5){word-break:keep-all;white-space:nowrap}.markdown.api-container table td:first-child{font-weight:600;color:#595959}.markdown.api-container table td:nth-child(3){width:22%;font-size:13px;color:#e0529c;word-break:break-all}.markdown.api-container table td:nth-child(4){font-size:13px}.markdown.api-container hr{margin:12px 0}.grid-demo .code-box-demo .demo-row,.grid-demo .demo-row,[id^=components-grid-demo-] .code-box-demo .demo-row,[id^=components-grid-demo-] .demo-row{overflow:hidden;margin-bottom:8px;background-image:linear-gradient(90deg,#f5f5f5 4.16666667%,transparent 4.16666667%,transparent 8.33333333%,#f5f5f5 8.33333333%,#f5f5f5 12.5%,transparent 12.5%,transparent 16.66666667%,#f5f5f5 16.66666667%,#f5f5f5 20.83333333%,transparent 20.83333333%,transparent 25%,#f5f5f5 25%,#f5f5f5 29.16666667%,transparent 29.16666667%,transparent 33.33333333%,#f5f5f5 33.33333333%,#f5f5f5 37.5%,transparent 37.5%,transparent 41.66666667%,#f5f5f5 41.66666667%,#f5f5f5 45.83333333%,transparent 45.83333333%,transparent 50%,#f5f5f5 50%,#f5f5f5 54.16666667%,transparent 54.16666667%,transparent 58.33333333%,#f5f5f5 58.33333333%,#f5f5f5 62.5%,transparent 62.5%,transparent 66.66666667%,#f5f5f5 66.66666667%,#f5f5f5 70.83333333%,transparent 70.83333333%,transparent 75%,#f5f5f5 75%,#f5f5f5 79.16666667%,transparent 79.16666667%,transparent 83.33333333%,#f5f5f5 83.33333333%,#f5f5f5 87.5%,transparent 87.5%,transparent 91.66666667%,#f5f5f5 91.66666667%,#f5f5f5 95.83333333%,transparent 95.83333333%)}.grid-demo .ant-row>div,.grid-demo .code-box-demo .ant-row>div,[id^=components-grid-demo-] .ant-row>div,[id^=components-grid-demo-] .code-box-demo .ant-row>div{min-height:30px;margin-top:8px;margin-bottom:8px;color:#fff;text-align:center;border-radius:0}.grid-demo .code-box-demo .ant-row>div:not(.gutter-row),[id^=components-grid-demo-] .code-box-demo .ant-row>div:not(.gutter-row){padding:16px 0;background:#0092ff}.grid-demo .ant-row .demo-col-1,.grid-demo .code-box-demo .ant-row>div:not(.gutter-row):nth-child(2n+1),[id^=components-grid-demo-] .ant-row .demo-col-1,[id^=components-grid-demo-] .code-box-demo .ant-row>div:not(.gutter-row):nth-child(2n+1){background:rgba(0,146,255,.75)}.grid-demo .ant-row .demo-col,.grid-demo .code-box-demo .ant-row .demo-col,[id^=components-grid-demo-] .ant-row .demo-col,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col{margin-top:0;margin-bottom:0;padding:30px 0;font-size:18px;color:#fff;text-align:center;border:none}.grid-demo .ant-row .demo-col-2,.grid-demo .code-box-demo .ant-row .demo-col-2,[id^=components-grid-demo-] .ant-row .demo-col-2,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-2{background:rgba(0,146,255,.5)}.grid-demo .ant-row .demo-col-3,.grid-demo .code-box-demo .ant-row .demo-col-3,[id^=components-grid-demo-] .ant-row .demo-col-3,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-3{color:#999;background:rgba(255,255,255,.2)}.grid-demo .ant-row .demo-col-4,.grid-demo .code-box-demo .ant-row .demo-col-4,[id^=components-grid-demo-] .ant-row .demo-col-4,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-4{background:rgba(0,146,255,.6)}.grid-demo .ant-row .demo-col-5,.grid-demo .code-box-demo .ant-row .demo-col-5,[id^=components-grid-demo-] .ant-row .demo-col-5,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-5{color:#999;background:rgba(255,255,255,.2)}.grid-demo .code-box-demo .height-100,[id^=components-grid-demo-] .code-box-demo .height-100{height:100px;line-height:100px}.grid-demo .code-box-demo .height-50,[id^=components-grid-demo-] .code-box-demo .height-50{height:50px;line-height:50px}.grid-demo .code-box-demo .height-120,[id^=components-grid-demo-] .code-box-demo .height-120{height:120px;line-height:120px}.grid-demo .code-box-demo .height-80,[id^=components-grid-demo-] .code-box-demo .height-80{height:80px;line-height:80px}[id=components-grid-demo-playground]>.code-box-demo .ant-row>div,[id=components-grid-demo-gutter]>.code-box-demo .ant-row>div{margin-top:0;margin-bottom:0}.markdown ul.ant-timeline{line-height:2}.markdown ul.ant-timeline li.ant-timeline-item{margin:0;padding:0 0 30px;list-style:none}.markdown ul.ant-timeline li.ant-timeline-item .ant-timeline-item-content{position:relative;top:-14px;padding-left:32px;font-size:14px}.markdown ul.ant-timeline li.ant-timeline-item .ant-timeline-item-content>h2{margin-top:0;padding-top:4px}.markdown ul.ant-timeline li.ant-timeline-item:first-child{margin-top:40px}code[class*=hljs],pre[class*=hljs]{direction:ltr;line-height:1.5;hyphens:none;color:#000;text-align:left;text-shadow:0 1px #fff;word-break:normal;word-spacing:normal;word-wrap:normal;tab-size:4;white-space:pre;background:0 0}pre[class*=hljs]::selection{text-shadow:none;background:#b3d4fc}code[class*=hljs] ::selection,code[class*=hljs]::selection,pre[class*=hljs] ::selection,pre[class*=hljs]::selection{text-shadow:none;background:#b3d4fc}@media print{code[class*=hljs],pre[class*=hljs]{text-shadow:none}}pre[class*=hljs]{overflow:auto;margin:1.2em 0;padding:1em}:not(pre)>code[class*=hljs],pre[class*=hljs]{background:#f7f7f7}:not(pre)>code[class*=hljs]{padding:.1em;white-space:normal;border-radius:.3em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#708090}.token.punctuation{color:#999}.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#bb0606}.hljscss .token.string,.style .token.string,.token.attr-name,.token.builtin,.token.char,.token.entity,.token.inserted,.token.operator,.token.selector,.token.string,.token.url{color:#690}.token.atrule,.token.attr-value,.token.keyword{color:#07a}.token.function{color:#dd4a68}.token.important,.token.regex,.token.variable{color:#e90}.token.entity{cursor:help}.hljs-comment,.hljs-quote{color:#8e908c}.hljs-deletion,.hljs-name,.hljs-regexp,.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#bb0606}.hljs-built_in,.hljs-builtin-name,.hljs-link,.hljs-literal,.hljs-meta,.hljs-number,.hljs-params,.hljs-type{color:#f5871f}.hljs-attribute{color:#eab700}.hljs-addition,.hljs-bullet,.hljs-string,.hljs-symbol{color:#690}.hljs-section,.hljs-title{color:#dd4a68}.hljs-keyword,.hljs-selector-tag{color:#07a}.hljs{overflow-x:auto;display:block;padding:.5em;color:#4d4d4c;background:#fff}.highlight-wrapper:hover .code-box-code-copy,.highlight-wrapper:hover .code-box-codepen,.highlight-wrapper:hover .code-box-riddle{opacity:.66}.highlight{position:relative;line-height:1.5}.code-box-code-copy.anticon-check{color:#00a854!important}.code-box{position:relative;display:inline-block;width:100%;border:1px solid #303030;border-radius:2px;transition:all .2s}.code-box .code-box-title,.code-box .code-box-title a{color:rgba(255,255,255,.85);background:#141414}.code-box .code-box-description p{color:rgba(255,255,255,.85)}.code-box a.edit-button .anticon{color:inherit}.code-box a.edit-button .anticon:hover{color:rgba(255,255,255,.75)}.code-box,.code-box .code-box-demo{background-color:#141414}.code-box p{margin:0}.code-box:target{z-index:10;border:1px solid #177ddc}.code-box-expand-trigger{cursor:pointer;position:relative;margin-left:12px;font-size:20px;color:#3b4357;opacity:.75;transition:all .3s}.code-box-expand-trigger:hover{opacity:1}.ant-row-rtl .code-box-expand-trigger{margin-right:8px;margin-left:0}.code-box-title{position:absolute;top:-14px;margin-left:16px;padding:1px 8px;color:#777;background:#000;border-radius:2px 2px 0 0;transition:background-color .4s}.ant-row-rtl .code-box-title{margin-right:16px;margin-left:0;border-radius:2px 0 0 2px}.code-box-title a,.code-box-title a:hover{font-size:14px;font-weight:500;color:rgba(255,255,255,.85)}.code-box-title .edit-button .anticon{font-size:12px}.code-box-description{padding:18px 24px 12px}.code-box .edit-button{position:absolute;top:7px;right:-16px;transform:scale(.9);padding-right:6px;font-size:12px;text-decoration:none;background:inherit}.ant-row-rtl .code-box .edit-button{right:auto;left:-21px;padding-right:0;padding-left:6px}.code-box-demo{padding:42px 24px 50px;color:rgba(255,255,255,.85);border-bottom:1px solid #303030}.code-box iframe{width:100%;border:0}.code-box .highlight:not(:first-child),.code-box-actions{border-top:1px dashed #303030}.code-box-meta.markdown{position:relative;width:100%;font-size:14px;border-radius:0 0 2px 2px;transition:background-color .4s}.code-box-meta blockquote,.code-box-meta h4,section.code-box-meta p{margin:0}.code-box-meta>p{width:100%;margin:.5em 0;padding-right:25px;font-size:12px;word-break:break-word}.ant-row-rtl .code-box-meta>p{padding-right:0;padding-left:25px}.code-box.expand .code-box-meta{border-bottom:1px dashed #303030;border-radius:0}.code-box .code-expand-icon-hide,.code-box .code-expand-icon-show{cursor:pointer;width:16px;max-width:100%;height:16px;transition:all .4s}.code-box .code-expand-icon-show{pointer-events:auto;opacity:.55}.code-box .code-expand-icon-show:hover,.code-box .code-expand-icon.ant-tooltip-open .code-expand-icon-show{opacity:1}.code-box .code-expand-icon-hide{pointer-events:none;display:none}.code-box .highlight{position:relative}.code-box .highlight-wrapper{overflow:auto;display:none;border-radius:0 0 2px 2px}.code-box .highlight-wrapper-expand{display:block}.code-box .highlight pre{margin:0;padding:0;background:#141414}.code-box-actions{display:flex;align-items:center;justify-content:center;padding:12px;text-align:center;opacity:.7;transition:opacity .3s}.code-box-actions:hover{opacity:1}.code-box-actions>i{display:flex;margin-left:16px}.ant-row-rtl .code-box-actions>i{margin-right:16px;margin-left:0}.code-box-actions>i:first-child{margin-left:0}.ant-row-rtl .code-box-actions>i:first-child{margin-right:0}.code-box-code-icon{cursor:pointer;transition:all .24s}.code-box-code-icon.anticon-check{font-weight:700;color:#49aa19!important}.code-box pre{width:auto;margin:0}#page-404 .links a,.ant-btn+.ant-btn{margin-left:8px}.code-box pre code{display:block;padding:16px 32px;font-size:14px;line-height:2;color:rgba(255,255,255,.85);background:#141414;border:none;border-radius:2px}.browser-mockup{position:relative;font-size:14px;border-top:2em solid rgba(230,230,230,.7);border-radius:3px 3px 0 0;box-shadow:0 .1em .5em 0 rgba(0,0,0,.28)}.browser-mockup::before{top:-1.25em;left:1em;display:block;width:.5em;height:.5em;background-color:#f44;border-radius:50%;box-shadow:0 0 0 2px #f44,1.5em 0 0 2px #9b3,3em 0 0 2px #fb5}.browser-mockup::after{top:-2em;left:5.5em;display:block;width:20%;height:0;border-right:.8em solid transparent;border-bottom:2em solid #fff;border-left:.8em solid transparent}.deprecated,h2,h3,h4,h5{position:relative}.browser-mockup .browser-scroll{overflow:auto;height:100%;background:#f5f5f5}.menu-site .ant-dropdown-trigger,.menu-site nz-dropdown,app-docs,app-root{display:block}.ant-menu-item{outline:0}#page-404{position:fixed;z-index:100;inset:0;width:100%;height:100%;background-image:url(https://os.alipayobjects.com/rmsportal/NOAjOBbnYCrNzrW.jpg);background-repeat:no-repeat;background-attachment:fixed;background-position:center;background-size:100%}#page-404 section{position:absolute;top:48%;left:55%;margin:-103px 0 0 -120px;text-align:center}#page-404 h1{font-size:120px;font-weight:500}#page-404 .links{font-size:18px;color:rgba(255,255,255,.85)}.deprecated::before{cursor:pointer;content:'D';font-style:normal;color:#d84a1b}h2 .lake-link,h3 .lake-link,h4 .lake-link,h5 .lake-link{position:absolute;top:4px;left:-30px;display:none;align-items:center;justify-content:center;width:30px;height:24px}h2 .lake-link>i,h3 .lake-link>i,h4 .lake-link>i,h5 .lake-link>i{display:inline-block;width:18px;height:18px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1024 1024'%3E%3Cpath fill='rgba(255, 255, 255, 0.45)' d='M574 665.4a8.03 8.03 0 0 0-11.3 0L446.5 781.6c-53.8 53.8-144.6 59.5-204 0-59.5-59.5-53.8-150.2 0-204l116.2-116.2c3.1-3.1 3.1-8.2 0-11.3l-39.8-39.8a8.03 8.03 0 0 0-11.3 0L191.4 526.5c-84.6 84.6-84.6 221.5 0 306s221.5 84.6 306 0l116.2-116.2c3.1-3.1 3.1-8.2 0-11.3L574 665.4zm258.6-474c-84.6-84.6-221.5-84.6-306 0L410.3 307.6a8.03 8.03 0 0 0 0 11.3l39.7 39.7c3.1 3.1 8.2 3.1 11.3 0l116.2-116.2c53.8-53.8 144.6-59.5 204 0 59.5 59.5 53.8 150.2 0 204L665.3 562.6a8.03 8.03 0 0 0 0 11.3l39.8 39.8c3.1 3.1 8.2 3.1 11.3 0l116.2-116.2c84.5-84.6 84.5-221.5 0-306.1zM610.1 372.3a8.03 8.03 0 0 0-11.3 0L372.3 598.7a8.03 8.03 0 0 0 0 11.3l39.6 39.6c3.1 3.1 8.2 3.1 11.3 0l226.4-226.4c3.1-3.1 3.1-8.2 0-11.3l-39.5-39.6z'/%3E%3C/svg%3E%0A")}h2:hover .lake-link,h3:hover .lake-link,h4:hover .lake-link,h5:hover .lake-link{display:flex}[dir=rtl] h2 .lake-link,[dir=rtl] h3 .lake-link,[dir=rtl] h4 .lake-link,[dir=rtl] h5 .lake-link{right:-30px;left:inherit}.index-page{color:#697b8c}.index-page #header{width:100%;max-width:1280px;margin:20px auto 0;padding:0 24px;background:0 0;box-shadow:none}.index-page .page,.index-page .page-banner{position:relative;width:100%;max-width:1200px;margin:auto}.index-page #nav.ant-menu-horizontal>.ant-menu-item-selected{border-top:none}.index-page .page{padding:0 24px}.index-page .page-wrapper{position:relative;overflow:inherit;font-family:Avenir,'Chinese Quote',-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC','Hiragino Sans GB','Microsoft YaHei','Helvetica Neue',Helvetica,Arial,sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol';font-variant:tabular-nums;color:#314659}.index-page .page h2{padding:80px 0 40px;font-size:38px;font-weight:400;line-height:46px;color:#314659;text-align:center}.index-page .page-banner{display:flex;align-items:center;justify-content:space-between;height:520px;padding:0 24px}.index-page .page-banner__slogan{width:54%;min-width:420px;max-width:560px;min-height:336px;color:#0d1a26}.index-page .page-banner__slogan h1{margin:12px 0;font-family:Futura,'Helvetica Neue For Number',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'PingFang SC','Hiragino Sans GB','Microsoft YaHei','Helvetica Neue',Helvetica,Arial,sans-serif;font-size:54px}.index-page .page-banner__slogan p{font-size:20px}.index-page .page-banner__slogan .ant-btn{min-width:110px;height:40px;margin-right:16px;font-size:16px;border-radius:20px}.index-page .page-banner__slogan-btn{display:flex;align-items:center;margin-top:64px;line-height:40px}.index-page .page-banner__slogan-btn .github{display:flex}.index-page .page-banner__img{position:absolute;right:0;bottom:0;overflow:hidden;width:46%;max-width:482px;height:420px}.index-page .page-banner__img img{max-height:100%;border-radius:8px}.index-page .page-feature{position:relative;padding-bottom:80px;color:#fff}.index-page .page-feature__bg{position:absolute;inset:0;transform:skewY(-4.5deg);margin:0;background:#49a9ee}.index-page .page-feature__bg-bottom{position:absolute;right:0;bottom:0;left:0;height:200px;background:#49a9ee}.index-page .page-feature h2,.index-page .page-feature h3{color:#fff}.index-page .page-feature h2{padding-top:100px}.index-page .page-feature h3{font-size:18px}.index-page .page-feature__item{display:flex;height:100px;margin-bottom:56px}.index-page .page-feature .anticon{margin-right:16px;padding-top:8px;font-size:36px}.index-page .page-theme{overflow:hidden;margin-bottom:48px;background:#fff}.index-page .page-theme__item{display:block;margin-bottom:32px;color:#314659;text-align:center}.index-page .page-theme__item:hover{color:#49a9ee}.index-page .page-theme__item img{max-width:80%}.index-page .page-theme__item h3,.index-page .page-theme__item p{margin-top:16px}@media (max-width:991px){.index-page #logo{padding-left:0}.index-page .page-banner__slogan{width:100%;min-width:100%;max-width:100%;text-align:center}.index-page .page-banner__slogan-btn{flex-wrap:wrap;justify-content:center}.index-page .page-banner__slogan-btn>a,.index-page .page-banner__slogan-btn>github-button{margin-bottom:16px}.index-page .page-banner__img{display:none}.index-page .page-feature__item{flex-direction:column;text-align:center}.index-page .page-feature__item .anticon{margin:0 0 16px}[dir=rtl] .index-page #logo{float:left}}[dir=rtl] .index-page .page-banner__slogan .ant-btn,[dir=rtl] .index-page .page-feature .anticon{margin-right:0;margin-left:16px}[dir=rtl] .index-page .page-banner__img{right:initial;left:0}[dir=rtl] .index-page .page-feature__bg{transform:skewY(4.5deg)}#header .ant-row-rtl github-button .gh-count{display:none!important}.copy-import-module{cursor:pointer;padding:2px 6px;font-size:12px;color:#fff;background:#a61d24;border-radius:34px}.menu-deprecated .ant-badge{color:#a61d24;opacity:.5}[data-theme=dark] input:-webkit-autofill,[data-theme=dark] input:-webkit-autofill:focus,[data-theme=dark] input:-webkit-autofill:hover,[data-theme=dark] select:-webkit-autofill,[data-theme=dark] select:-webkit-autofill:focus,[data-theme=dark] select:-webkit-autofill:hover,[data-theme=dark] textarea:-webkit-autofill,[data-theme=dark] textarea:-webkit-autofill:focus,[data-theme=dark] textarea:-webkit-autofill:hover{border:1px solid #434343;box-shadow:none;transition:background-color 5000s ease-in-out 0s;-webkit-text-fill-color:rgba(255,255,255,.85)}[data-theme=dark] #header,[data-theme=dark] .drawer-button{box-shadow:0 2px 8px 0 rgba(0,0,0,.65)}[data-theme=dark] #search-box input::placeholder{color:rgba(255,255,255,.3)}[data-theme=dark] .toc-affix .ant-affix{background:#141414}[data-theme=dark] :not(pre)>code[class*=language-],[data-theme=dark] pre[class*=language-]{color:rgba(255,255,255,.65);background:#262626}[data-theme=dark] .code-box{border:1px solid #303030}[data-theme=dark] .code-box .markdown pre{margin:.5em 0;padding:6px 12px}[data-theme=dark] .code-box .markdown pre code{margin:0;background:#262626}[data-theme=dark] .code-box-debug{border-color:#301c4d}[data-theme=dark] .code-box-expand-trigger{cursor:pointer;position:relative;margin-left:12px;font-size:20px;color:#fff;opacity:.45;transition:all .3s}[data-theme=dark] .code-box-expand-trigger:hover{opacity:.65}[data-theme=dark] .code-box-demo{border-bottom:1px solid #303030}[data-theme=dark] .code-box-codepen{background:url(https://gw.alipayobjects.com/zos/antfincdn/1B3MOCiI5F/OtZslpOjYXijshDERXwc.svg) center/14px no-repeat}[data-theme=dark] .code-box-riddle{background:url(https://gw.alipayobjects.com/zos/antfincdn/NByOhhT9rO/DlHbxMCyeuyOrqOdbgik.svg) center/14px no-repeat}[data-theme=dark] .code-box-codesandbox{background:url(https://gw.alipayobjects.com/zos/antfincdn/hNEf2p1ZnS/aaYmtdDyHSCkXyLZVgGK.svg) center/14px no-repeat}[data-theme=dark] .code-box .highlight pre{background:#141414}[data-theme=dark] ul.anticons-list li{color:#acacac}[data-theme=dark] ul.anticons-list li.TwoTone:hover{background-color:#15395b}[data-theme=dark] ul.anticons-list li:hover .anticon{color:#fff}[data-theme=dark] .markdown code,[data-theme=dark] .markdown pre,[data-theme=dark] .markdown pre code,[data-theme=dark] .markdown.api-container table tbody tr:hover{background:#262626}[data-theme=dark] .markdown code{background:rgba(255,255,255,.08)}[data-theme=dark] .prev-next-nav>a.prev-page .footer-nav-icon-before{color:rgba(255,255,255,.45)}[data-theme=dark] .prev-next-nav>a.prev-page:hover .footer-nav-icon-before{left:-3px;color:#177ddc}[data-theme=dark] .prev-next-nav>.next-page .footer-nav-icon-after{color:rgba(255,255,255,.45)}[data-theme=dark] .prev-next-nav>.next-page:hover .footer-nav-icon-after{right:-3px;color:#177ddc}[data-theme=dark] .grid-demo .code-box-demo .demo-row,[data-theme=dark] .grid-demo .demo-row,[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .demo-row,[data-theme=dark] [id^=components-grid-demo-] .demo-row{background-image:linear-gradient(90deg,#1d1d1d 4.16666667%,transparent 4.16666667%,transparent 8.33333333%,#1d1d1d 8.33333333%,#1d1d1d 12.5%,transparent 12.5%,transparent 16.66666667%,#1d1d1d 16.66666667%,#1d1d1d 20.83333333%,transparent 20.83333333%,transparent 25%,#1d1d1d 25%,#1d1d1d 29.16666667%,transparent 29.16666667%,transparent 33.33333333%,#1d1d1d 33.33333333%,#1d1d1d 37.5%,transparent 37.5%,transparent 41.66666667%,#1d1d1d 41.66666667%,#1d1d1d 45.83333333%,transparent 45.83333333%,transparent 50%,#1d1d1d 50%,#1d1d1d 54.16666667%,transparent 54.16666667%,transparent 58.33333333%,#1d1d1d 58.33333333%,#1d1d1d 62.5%,transparent 62.5%,transparent 66.66666667%,#1d1d1d 66.66666667%,#1d1d1d 70.83333333%,transparent 70.83333333%,transparent 75%,#1d1d1d 75%,#1d1d1d 79.16666667%,transparent 79.16666667%,transparent 83.33333333%,#1d1d1d 83.33333333%,#1d1d1d 87.5%,transparent 87.5%,transparent 91.66666667%,#1d1d1d 91.66666667%,#1d1d1d 95.83333333%,transparent 95.83333333%)}[data-theme=dark] .grid-demo .code-box-demo .ant-row>div:not(.gutter-row),[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row>div:not(.gutter-row){padding:16px 0;background:#028ac8}[data-theme=dark] .grid-demo .ant-row .demo-col-1,[data-theme=dark] .grid-demo .code-box-demo .ant-row>div:not(.gutter-row):nth-child(2n+1),[data-theme=dark] [id^=components-grid-demo-] .ant-row .demo-col-1,[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row>div:not(.gutter-row):nth-child(2n+1){background:rgba(0,136,198,.7)}[data-theme=dark] .grid-demo .ant-row .demo-col,[data-theme=dark] .grid-demo .code-box-demo .ant-row .demo-col,[data-theme=dark] [id^=components-grid-demo-] .ant-row .demo-col,[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row .demo-col{margin-top:0;margin-bottom:0;padding:30px 0;font-size:18px;color:#000;text-align:center;border:none}[data-theme=dark] .grid-demo .ant-row .demo-col-3,[data-theme=dark] .grid-demo .ant-row .demo-col-5,[data-theme=dark] .grid-demo .code-box-demo .ant-row .demo-col-3,[data-theme=dark] .grid-demo .code-box-demo .ant-row .demo-col-5,[data-theme=dark] [id^=components-grid-demo-] .ant-row .demo-col-3,[data-theme=dark] [id^=components-grid-demo-] .ant-row .demo-col-5,[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-3,[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-5{color:rgba(255,255,255,.45);background:unset}[data-theme=dark] .markdown>table th{color:rgba(255,255,255,.65);background:#1d1d1d}[data-theme=dark] .copied-code{background:rgba(255,255,255,.08)}[data-theme=dark] .browser-mockup.with-url::after{background-color:#141414}[data-theme=dark] .browser-mockup{border-top:2em solid #262626}[data-theme=dark] .browser-mockup::before{background-color:#fb4742;box-shadow:0 0 0 2px #fb4742,1.5em 0 0 2px #99bc2e,3em 0 0 2px #ffba5a}[data-theme=dark] .browser-mockup::after{border-bottom:2em solid #141414}[data-theme=dark] .browser-scroll{background:#262626}[data-theme=dark] .algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-],[data-theme=dark] .algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-] .algolia-docsearch-suggestion{background:#1f1f1f}[data-theme=dark] .algolia-autocomplete .ds-dropdown-menu .ds-suggestion.ds-cursor .algolia-docsearch-suggestion:not(.suggestion-layout-simple) .algolia-docsearch-suggestion--content{background-color:rgba(255,255,255,.08)}[data-theme=dark] .algolia-autocomplete .algolia-docsearch-suggestion--category-header{color:rgba(255,255,255,.65);border-bottom:1px solid #303030}[data-theme=dark] .algolia-autocomplete .algolia-docsearch-suggestion--content::before,[data-theme=dark] .algolia-autocomplete .algolia-docsearch-suggestion--subcategory-column::before{background:#303030}[data-theme=dark] code[class*=hljs],[data-theme=dark] pre[class*=hljs]{text-shadow:none}[data-theme=dark] .hljs-comment,[data-theme=dark] .hljs-quote{color:#b6b18b}[data-theme=dark] .hljs-deletion,[data-theme=dark] .hljs-name,[data-theme=dark] .hljs-regexp,[data-theme=dark] .hljs-selector-class,[data-theme=dark] .hljs-selector-id,[data-theme=dark] .hljs-tag,[data-theme=dark] .hljs-template-variable,[data-theme=dark] .hljs-variable{color:#eb3c54}[data-theme=dark] .hljs-built_in,[data-theme=dark] .hljs-builtin-name,[data-theme=dark] .hljs-link,[data-theme=dark] .hljs-literal,[data-theme=dark] .hljs-meta,[data-theme=dark] .hljs-number,[data-theme=dark] .hljs-params,[data-theme=dark] .hljs-type{color:#e7ce56}[data-theme=dark] .hljs-attribute{color:#ee7c2b}[data-theme=dark] .hljs-addition,[data-theme=dark] .hljs-bullet,[data-theme=dark] .hljs-string,[data-theme=dark] .hljs-symbol{color:#177ddc}[data-theme=dark] .hljs-section,[data-theme=dark] .hljs-title{color:#78bb65}[data-theme=dark] .hljs-keyword,[data-theme=dark] .hljs-selector-tag{color:#b45ea4}[data-theme=dark] .hljs{overflow-x:auto;display:block;padding:.5em;color:#c0c5ce;background:#1c1d21}[data-theme=dark] .hljs-strong{font-weight:700}[data-theme=dark].index-page{background:#141414}[data-theme=dark].index-page #header{box-shadow:none}[data-theme=dark].index-page .page-banner__slogan{color:rgba(255,255,255,.85)}@media (max-width:767px){[data-theme=dark] .header-menu .menu-site{background:0 0}}.ant-affix{scrollbar-color:rgba(0,0,0,.3) #6e6e6e;scrollbar-width:thin}.ant-affix::-webkit-scrollbar{width:6px;height:6px}.ant-affix::-webkit-scrollbar-track{box-shadow:inset 0 0 6px rgba(0,0,0,.3)}.ant-affix::-webkit-scrollbar-thumb{background-color:#6e6e6e;outline:#333 solid 1px} \ No newline at end of file diff --git a/auth/get/en/index.html b/auth/get/en/index.html new file mode 100644 index 000000000..49dc6c7d5 --- /dev/null +++ b/auth/get/en/index.html @@ -0,0 +1,24 @@ +获取Token - NG-ALAIN

获取Token

Token 的获取分为两大类,一是自己的用户认证中心,二是社会化登录(本质上还是需要走自己的用户认证中心)。

用户认证中心

一般来说后端会提供一个URL认证地址,我们可以像平常访问一个普通 HTTP 请求一样,将用户输入的用户名和密码等信息发送给用户认证中心,最后会返回一个用户信息包含 Token。因此,对于只需要将这此Token信息存储起来即可。

社会化登录

一个完整的社会化登录大概需要两个步骤:

打开

SocialService 提供了 open() 方法,用于打开一个登录框。默认情况下它本身并不在注册到任何模块当中,因为 @delon/auth 认为需要这类服务通常只会在登录过程中产生,因此没有必要在全局注入;只需要在使用 SocialService 对应组件中注入即可,当然你要愿意也可以在根模块中注入。

@Component({
+  providers: [ SocialService ]
+})
+export class ProUserLoginComponent {
+  constructor(private socialService: SocialService) {}
+}

最后,利用 type 属性指定以采用什么形式打开一个授权框:

this.socialService.login(`//github.com/login/oauth/authorize?xxxxxx`, '/', { type: 'href' });
+// 或使用 window.open 打开授权框并订阅结果
+this.socialService.login(`//github.com/login/oauth/authorize?xxxxxx`, '/', {
+  type: 'window'
+}).subscribe(res => {
+
+});

回调

回调页面是指授权成功后携带的认证信息;以往你可能直接在后端将认证信息写入 Cookie 会自动在请求结束后写入浏览器,而对于 Angular 这类单页而言,特别是前后端分离部署时,这种方式变成无法实现。

因此 @delon/auth 是从回调页 URL 地址上携带信息作为获取源,当然它会受 URL 本身受限(例如:长度);但我想对一个 Token 值是足够长的,你可以获取到 Token,再获取用户信息。

需要创建一个用于回调的页面,而页面唯一要做的就是在 ngOnInit 时调用 callback() 方法(例如:callback.component.ts):

// 1、默认根据当前URL地址
+this.socialService.callback();
+// 2、非 `{ useHash: true }` 路由
+this.socialService.callback(`/callback?token=40SOJV-L8oOwwUIs&name=cipchk&uid=1`);
+// 3、带有 `{ useHash: true }` 路由
+this.socialService.callback(`/?token=40SOJV-L8oOwwUIs&name=cipchk&uid=1#/callback`);
+// 4、指定 `ITokenModel` 对象
+this.socialService.callback({
+  token: '123456789',
+  name: 'cipchk',
+  id: 10000,
+  time: +new Date
+});

callback() 会把URL自动转换成效的 ITokenModel

注:对于 { useHash: true } 的路由在很多第三方授权框是不支持回调,若是自己的账号体系,你依然可以使用第3种示例中的URL形式。

\ No newline at end of file diff --git a/auth/get/zh/index.html b/auth/get/zh/index.html new file mode 100644 index 000000000..f71eb7c7b --- /dev/null +++ b/auth/get/zh/index.html @@ -0,0 +1,24 @@ +获取Token - NG-ALAIN

获取Token

Token 的获取分为两大类,一是自己的用户认证中心,二是社会化登录(本质上还是需要走自己的用户认证中心)。

用户认证中心

一般来说后端会提供一个URL认证地址,我们可以像平常访问一个普通 HTTP 请求一样,将用户输入的用户名和密码等信息发送给用户认证中心,最后会返回一个用户信息包含 Token。因此,对于只需要将这此Token信息存储起来即可。

社会化登录

一个完整的社会化登录大概需要两个步骤:

打开

SocialService 提供了 open() 方法,用于打开一个登录框。默认情况下它本身并不在注册到任何模块当中,因为 @delon/auth 认为需要这类服务通常只会在登录过程中产生,因此没有必要在全局注入;只需要在使用 SocialService 对应组件中注入即可,当然你要愿意也可以在根模块中注入。

@Component({
+  providers: [ SocialService ]
+})
+export class ProUserLoginComponent {
+  constructor(private socialService: SocialService) {}
+}

最后,利用 type 属性指定以采用什么形式打开一个授权框:

this.socialService.login(`//github.com/login/oauth/authorize?xxxxxx`, '/', { type: 'href' });
+// 或使用 window.open 打开授权框并订阅结果
+this.socialService.login(`//github.com/login/oauth/authorize?xxxxxx`, '/', {
+  type: 'window'
+}).subscribe(res => {
+
+});

回调

回调页面是指授权成功后携带的认证信息;以往你可能直接在后端将认证信息写入 Cookie 会自动在请求结束后写入浏览器,而对于 Angular 这类单页而言,特别是前后端分离部署时,这种方式变成无法实现。

因此 @delon/auth 是从回调页 URL 地址上携带信息作为获取源,当然它会受 URL 本身受限(例如:长度);但我想对一个 Token 值是足够长的,你可以获取到 Token,再获取用户信息。

需要创建一个用于回调的页面,而页面唯一要做的就是在 ngOnInit 时调用 callback() 方法(例如:callback.component.ts):

// 1、默认根据当前URL地址
+this.socialService.callback();
+// 2、非 `{ useHash: true }` 路由
+this.socialService.callback(`/callback?token=40SOJV-L8oOwwUIs&name=cipchk&uid=1`);
+// 3、带有 `{ useHash: true }` 路由
+this.socialService.callback(`/?token=40SOJV-L8oOwwUIs&name=cipchk&uid=1#/callback`);
+// 4、指定 `ITokenModel` 对象
+this.socialService.callback({
+  token: '123456789',
+  name: 'cipchk',
+  id: 10000,
+  time: +new Date
+});

callback() 会把URL自动转换成效的 ITokenModel

注:对于 { useHash: true } 的路由在很多第三方授权框是不支持回调,若是自己的账号体系,你依然可以使用第3种示例中的URL形式。

\ No newline at end of file diff --git a/auth/getting-started/en/index.html b/auth/getting-started/en/index.html new file mode 100644 index 000000000..7dc90ec23 --- /dev/null +++ b/auth/getting-started/en/index.html @@ -0,0 +1,12 @@ +开始使用 - NG-ALAIN

开始使用

写在前面

@delon/auth 是对认证过程进一步处理,通常其核心在于 Access token 的获取、使用环节,因此将集中解决以下三个问题:

  • 如何获取认证信息行为方式,例如:账密、社会化登录Github等

  • 如何存取认证信息,监听认证信息变化

  • 何时使用认证信息,区分不同的认证方式的使用规则,例如:JWT

@delon/auth 并不会关心用户界面是怎么样,只需要当登录成功后将 Token 信息转化为 ITokenService 类型,它会存储在 localStorage 当中(默认情况下)。当你操作 HTTP 请求时,它会自动在 header (或其他地方) 里加入 Token 信息。

因此,@delon/auth 不限于 ng-alain 脚手架,任何 Angular 项目都可以使用它。

@delon/auth 只是解决认证环节,有关于权限控制可以使用 @delon/acl

流程

  • 获取 Token

  • 存储 Token

  • 利用HTTP拦截器,将 Token 发送给后端

名词解释

Token

@delon/auth 认为请求时需要发送的加密字符串称它为 Token 值,不管是采用 JWT 的 Authorization 参数,还是 OAuth2 的 access_token,这也是每个 HTTP 请求时所携带的值。 因此,ITokenModel 接口用于表述认证信息,且只有一个 token 属性。

注意:Token 值务必是一个字符串值。

认证风格

目前衍生两种风格:Simple Web Token (使用 SimpleTokenModel)、Json Web Token(使用 JWTTokenModel)具有解析 payload 能力。如果有特殊需求也可以自定义实现 ITokenModel 接口。

如何使用

安装 @delon/auth 依赖包:

yarn add @delon/auth

导入 DelonAuthModule 模块:

import { DelonAuthModule, SimpleInterceptor } from '@delon/auth';
+
+@NgModule({
+  imports: [
+    DelonAuthModule
+  ],
+  providers: [
+    // 指定认证风格对应的HTTP拦截器
+    { provide: HTTP_INTERCEPTORS, useClass: SimpleInterceptor, multi: true}
+  ]
+})
+export class AppModule { }

为什么需要手动注册HTTP_INTERCEPTORS

默认 DelonAuthModule 并不会注册任何HTTP拦截器,主要是因为 @delon/auth 提供了多种不同认证风格

AlainAuthConfig

成员说明类型默认值全局配置
[store_key]string_tokenlocalStorage 的存储KEY值
[token_invalid_redirect]booleantrue无效时跳转至登录页,包括:无效token值、token已过期(限JWT)
[token_exp_offset]number10JWT token过期时间偏移值(单位:秒)
[token_send_key]stringToken发送token参数名
[token_send_template]string${token}发送token模板,以 ${属性名} 表示占位符,属性名要确保存在否则以空字符代替
[token_send_place]header,body,urlheader发送token参数位置
[login_url]string/login登录页路由地址
[ignores]RegExp[][ /\/login/, /assets\// ]忽略 URL 地址清单,除此之外还可以通过 ALLOW_ANONYMOUS 进行控制是否忽略。
[executeOtherInterceptors]booleantrue是否校验失效时命中后继续调用后续拦截器的 intercept 方法
[refreshTime]number3000刷新时长(单位:ms)
[refreshOffset]number6000偏移值(单位:ms),建议根据 refreshTime 倍数来设置

可以通过全局配置覆盖它们。

FAQ

解决同域下多个NG-ALAIN项目Token污染问题

可以在每个项目里通过全局配置修改 store_key

\ No newline at end of file diff --git a/auth/getting-started/zh/index.html b/auth/getting-started/zh/index.html new file mode 100644 index 000000000..41ff06eb4 --- /dev/null +++ b/auth/getting-started/zh/index.html @@ -0,0 +1,12 @@ +开始使用 - NG-ALAIN

开始使用

写在前面

@delon/auth 是对认证过程进一步处理,通常其核心在于 Access token 的获取、使用环节,因此将集中解决以下三个问题:

  • 如何获取认证信息行为方式,例如:账密、社会化登录Github等

  • 如何存取认证信息,监听认证信息变化

  • 何时使用认证信息,区分不同的认证方式的使用规则,例如:JWT

@delon/auth 并不会关心用户界面是怎么样,只需要当登录成功后将 Token 信息转化为 ITokenService 类型,它会存储在 localStorage 当中(默认情况下)。当你操作 HTTP 请求时,它会自动在 header (或其他地方) 里加入 Token 信息。

因此,@delon/auth 不限于 ng-alain 脚手架,任何 Angular 项目都可以使用它。

@delon/auth 只是解决认证环节,有关于权限控制可以使用 @delon/acl

流程

  • 获取 Token

  • 存储 Token

  • 利用HTTP拦截器,将 Token 发送给后端

名词解释

Token

@delon/auth 认为请求时需要发送的加密字符串称它为 Token 值,不管是采用 JWT 的 Authorization 参数,还是 OAuth2 的 access_token,这也是每个 HTTP 请求时所携带的值。 因此,ITokenModel 接口用于表述认证信息,且只有一个 token 属性。

注意:Token 值务必是一个字符串值。

认证风格

目前衍生两种风格:Simple Web Token (使用 SimpleTokenModel)、Json Web Token(使用 JWTTokenModel)具有解析 payload 能力。如果有特殊需求也可以自定义实现 ITokenModel 接口。

如何使用

安装 @delon/auth 依赖包:

yarn add @delon/auth

导入 DelonAuthModule 模块:

import { DelonAuthModule, SimpleInterceptor } from '@delon/auth';
+
+@NgModule({
+  imports: [
+    DelonAuthModule
+  ],
+  providers: [
+    // 指定认证风格对应的HTTP拦截器
+    { provide: HTTP_INTERCEPTORS, useClass: SimpleInterceptor, multi: true}
+  ]
+})
+export class AppModule { }

为什么需要手动注册HTTP_INTERCEPTORS

默认 DelonAuthModule 并不会注册任何HTTP拦截器,主要是因为 @delon/auth 提供了多种不同认证风格

AlainAuthConfig

成员说明类型默认值全局配置
[store_key]string_tokenlocalStorage 的存储KEY值
[token_invalid_redirect]booleantrue无效时跳转至登录页,包括:无效token值、token已过期(限JWT)
[token_exp_offset]number10JWT token过期时间偏移值(单位:秒)
[token_send_key]stringToken发送token参数名
[token_send_template]string${token}发送token模板,以 ${属性名} 表示占位符,属性名要确保存在否则以空字符代替
[token_send_place]header,body,urlheader发送token参数位置
[login_url]string/login登录页路由地址
[ignores]RegExp[][ /\/login/, /assets\// ]忽略 URL 地址清单,除此之外还可以通过 ALLOW_ANONYMOUS 进行控制是否忽略。
[executeOtherInterceptors]booleantrue是否校验失效时命中后继续调用后续拦截器的 intercept 方法
[refreshTime]number3000刷新时长(单位:ms)
[refreshOffset]number6000偏移值(单位:ms),建议根据 refreshTime 倍数来设置

可以通过全局配置覆盖它们。

FAQ

解决同域下多个NG-ALAIN项目Token污染问题

可以在每个项目里通过全局配置修改 store_key

\ No newline at end of file diff --git a/auth/guard/en/index.html b/auth/guard/en/index.html new file mode 100644 index 000000000..37ad41f34 --- /dev/null +++ b/auth/guard/en/index.html @@ -0,0 +1,18 @@ +路由守卫 - NG-ALAIN

路由守卫

写在前面

当某个路由未发起请求时,意味着无法在拦截器里面对其进行 Token 有效性的验证,而路由守卫可以解决这一问题,例如在你的根路径里:

[
+  {
+    path: 'home',
+    component: MockComponent,
+    canActivate: [authJWTCanActivate],
+  },
+  {
+    path: 'my',
+    canActivateChild: [authJWTCanActivateChild],
+    children: [
+      { path: 'profile', component: MockComponent }
+    ],
+  },
+  {
+    path: 'login',
+    component: MockComponent,
+  },
+]

如何选择?

同样,针对不同认证风格分别为:

  • authSimpleCanActivate, authSimpleCanActivateChild, authSimpleCanMatch 基于 Simple Web Token 认证风格

  • authJWTCanActivate, authJWTCanActivateChild, authJWTCanMatch 基于 Json Web Token 认证风格

    <
\ No newline at end of file diff --git a/auth/guard/zh/index.html b/auth/guard/zh/index.html new file mode 100644 index 000000000..4f07a655b --- /dev/null +++ b/auth/guard/zh/index.html @@ -0,0 +1,18 @@ +路由守卫 - NG-ALAIN

路由守卫

写在前面

当某个路由未发起请求时,意味着无法在拦截器里面对其进行 Token 有效性的验证,而路由守卫可以解决这一问题,例如在你的根路径里:

[
+  {
+    path: 'home',
+    component: MockComponent,
+    canActivate: [authJWTCanActivate],
+  },
+  {
+    path: 'my',
+    canActivateChild: [authJWTCanActivateChild],
+    children: [
+      { path: 'profile', component: MockComponent }
+    ],
+  },
+  {
+    path: 'login',
+    component: MockComponent,
+  },
+]

如何选择?

同样,针对不同认证风格分别为:

  • authSimpleCanActivate, authSimpleCanActivateChild, authSimpleCanMatch 基于 Simple Web Token 认证风格

  • authJWTCanActivate, authJWTCanActivateChild, authJWTCanMatch 基于 Json Web Token 认证风格

    <
\ No newline at end of file diff --git a/auth/qa/en/index.html b/auth/qa/en/index.html new file mode 100644 index 000000000..e7101ac2c --- /dev/null +++ b/auth/qa/en/index.html @@ -0,0 +1,16 @@ +常见问题 - NG-ALAIN

常见问题

如何忽略某个请求

在调用请求时,加上 ALLOW_ANONYMOUS

this.http.post(`login`, {
+ name: 'cipchk', pwd: '123456'
+}, {
+ context: new HttpContext().set(ALLOW_ANONYMOUS, true)
+});

如何捕获无Token时被拦截信息?

// 利用订阅 Error
+this.http.get('/user').subscribe(
+  res => console.log('success', res),
+  err => console.error('error', err)
+);
+// 或使用 catchError
+this.http.get('/user').pipe(
+  catchError(err => {
+    console.error('error', err);
+    return of({});
+  })
+).subscribe();
\ No newline at end of file diff --git a/auth/qa/zh/index.html b/auth/qa/zh/index.html new file mode 100644 index 000000000..2e95edb67 --- /dev/null +++ b/auth/qa/zh/index.html @@ -0,0 +1,16 @@ +常见问题 - NG-ALAIN

常见问题

如何忽略某个请求

在调用请求时,加上 ALLOW_ANONYMOUS

this.http.post(`login`, {
+ name: 'cipchk', pwd: '123456'
+}, {
+ context: new HttpContext().set(ALLOW_ANONYMOUS, true)
+});

如何捕获无Token时被拦截信息?

// 利用订阅 Error
+this.http.get('/user').subscribe(
+  res => console.log('success', res),
+  err => console.error('error', err)
+);
+// 或使用 catchError
+this.http.get('/user').pipe(
+  catchError(err => {
+    console.error('error', err);
+    return of({});
+  })
+).subscribe();
\ No newline at end of file diff --git a/auth/send/en/index.html b/auth/send/en/index.html new file mode 100644 index 000000000..10575a583 --- /dev/null +++ b/auth/send/en/index.html @@ -0,0 +1,3 @@ +发送Token - NG-ALAIN

发送Token

认证风格

通过HTTP拦截器在每一个请求中加入相应的认证信息,这是再好不过。@delonn/auth 根据两种不同认证风格,实现两种各自的HTTP拦截器。

SimpleInterceptor

透过 DelonAuthConfig 可以指定参数名以及其发送位置,例如:

token_send_key = 'token';
+token_send_template = 'Bearer ${token}';
+token_send_place = 'header';

表示在每一个请求的 header 加上 { token: 'Bearer token_string' } 数据。

JWTInterceptor

它是一个标准JWT的发送规则,即在 header 自动加上 { Authorization: 'Bearer token_string' }

如何选择?

SimpleInterceptor 是一种自由度非常高的风格,你可以将 token 放在请求体、请求头等当中。

JWTInterceptor 是一个 JWT 标准,这需要确保后端也采用这类标准。

如何加载

默认情况下 DelonAuthModule 是不会加载任何HTTP拦截器,这需要你手工在你的相应的模块中加上:

{ provide: HTTP_INTERCEPTORS, useClass: SimpleInterceptor, multi: true }

示例

DEMO,账密或其他登录方式登录,并观察浏览器 localStorage 存储数

\ No newline at end of file diff --git a/auth/send/zh/index.html b/auth/send/zh/index.html new file mode 100644 index 000000000..4c130ec85 --- /dev/null +++ b/auth/send/zh/index.html @@ -0,0 +1,3 @@ +发送Token - NG-ALAIN

发送Token

认证风格

通过HTTP拦截器在每一个请求中加入相应的认证信息,这是再好不过。@delonn/auth 根据两种不同认证风格,实现两种各自的HTTP拦截器。

SimpleInterceptor

透过 DelonAuthConfig 可以指定参数名以及其发送位置,例如:

token_send_key = 'token';
+token_send_template = 'Bearer ${token}';
+token_send_place = 'header';

表示在每一个请求的 header 加上 { token: 'Bearer token_string' } 数据。

JWTInterceptor

它是一个标准JWT的发送规则,即在 header 自动加上 { Authorization: 'Bearer token_string' }

如何选择?

SimpleInterceptor 是一种自由度非常高的风格,你可以将 token 放在请求体、请求头等当中。

JWTInterceptor 是一个 JWT 标准,这需要确保后端也采用这类标准。

如何加载

默认情况下 DelonAuthModule 是不会加载任何HTTP拦截器,这需要你手工在你的相应的模块中加上:

{ provide: HTTP_INTERCEPTORS, useClass: SimpleInterceptor, multi: true }

示例

DEMO,账密或其他登录方式登录,并观察浏览器 localStorage 存储数

\ No newline at end of file diff --git a/auth/service/en/index.html b/auth/service/en/index.html new file mode 100644 index 000000000..6d703bc51 --- /dev/null +++ b/auth/service/en/index.html @@ -0,0 +1,5 @@ +TokenService - NG-ALAIN

TokenService

ITokenService 接口包含了一些对 Token 操作的服务类,例如获取当前 Token 信息:

constructor(@Inject(DA_SERVICE_TOKEN) private tokenService: ITokenService) {
+  console.log(tokenService.get().token);
+  // 如果是 JWT
+  console.log(tokenService.get(JWTTokenModel).token);
+}

过期刷新

订阅 refresh 后 Token 过期时会自动触发,当后端支持 Token 刷新可以,可以在过期前刷新 Token 来延长用户授权时长。

建议 refresh 在整个应用中只订阅一次。

API

属性

参数名类型描述
[login_url]string获取 DelonAuthConfig 配置的登录地址
[referrer]AuthReferrer获取授权失败前路由信息
[refresh]Observable<ITokenModel>订阅刷新,订阅时会自动产生一个定时器,每隔一段时间进行一些校验;注意 会多次触发,请务必做好业务判断

方法

方法名返回类型描述
change()Observable<ITokenModel>监听 Token 变化回调
set(data: ITokenModel)boolean设置 Token
get(type?: any)ITokenModel获取 Token
clear(options?: { onlyToken: boolean })void清空 Token
\ No newline at end of file diff --git a/auth/service/zh/index.html b/auth/service/zh/index.html new file mode 100644 index 000000000..f8b8b6786 --- /dev/null +++ b/auth/service/zh/index.html @@ -0,0 +1,5 @@ +TokenService - NG-ALAIN

TokenService

ITokenService 接口包含了一些对 Token 操作的服务类,例如获取当前 Token 信息:

constructor(@Inject(DA_SERVICE_TOKEN) private tokenService: ITokenService) {
+  console.log(tokenService.get().token);
+  // 如果是 JWT
+  console.log(tokenService.get(JWTTokenModel).token);
+}

过期刷新

订阅 refresh 后 Token 过期时会自动触发,当后端支持 Token 刷新可以,可以在过期前刷新 Token 来延长用户授权时长。

建议 refresh 在整个应用中只订阅一次。

API

属性

参数名类型描述
[login_url]string获取 DelonAuthConfig 配置的登录地址
[referrer]AuthReferrer获取授权失败前路由信息
[refresh]Observable<ITokenModel>订阅刷新,订阅时会自动产生一个定时器,每隔一段时间进行一些校验;注意 会多次触发,请务必做好业务判断

方法

方法名返回类型描述
change()Observable<ITokenModel>监听 Token 变化回调
set(data: ITokenModel)boolean设置 Token
get(type?: any)ITokenModel获取 Token
clear(options?: { onlyToken: boolean })void清空 Token
\ No newline at end of file diff --git a/auth/set/en/index.html b/auth/set/en/index.html new file mode 100644 index 000000000..4b6c4995a --- /dev/null +++ b/auth/set/en/index.html @@ -0,0 +1,14 @@ +存储Token - NG-ALAIN

存储Token

如何使用

ITokenService 接口(默认实现 TokenService),只有四个方法及 login_url 属性:

  • set(data: ITokenModel): boolean 设置认证信息,同时触发 change

  • get(): ITokenModel 获取认证信息

  • clear() 清除认证信息,同时触发 change 参数为 null

  • change(): Observable<ITokenModel> 订阅认证信息变更回调

  • login_url 获取登录地址,等同 forRoot() 所配置的值

因此,当登录过程中后端返回相应的认证信息时,只要符合 ITokenModel 接口对象,都可以调用 set 方法将认证存储至 IStore (默认实现 LocalStorageStore) 当中。

constructor(@Inject(DA_SERVICE_TOKEN) service: ITokenService) {
+  service.set({ token: `asdf` });
+
+  service.get().token; // output: asdf
+}

存储类型

默认是采用 LocalStorageStore 持久化存储,你可以在 global-config.module.ts 或根模块里变更其他存储方式。

export class GlobalConfigModule {
+  static forRoot(): ModuleWithProviders {
+    return {
+      ngModule: GlobalConfigModule,
+      providers: [
+        { provide: DA_STORE_TOKEN, useClass: MemoryStore }
+      ]
+    };
+  }
+}

包含三种存储类型:

LocalStorageStore

localStorage 存储,关掉浏览器后不丢失

SessionStorageStore

sessionStorage 存储,关掉浏览器后丢失

MemoryStore

内存存储,关掉浏览器标签后丢失

CookieStorageStore

Cooki

\ No newline at end of file diff --git a/auth/set/zh/index.html b/auth/set/zh/index.html new file mode 100644 index 000000000..3394f7ce5 --- /dev/null +++ b/auth/set/zh/index.html @@ -0,0 +1,14 @@ +存储Token - NG-ALAIN

存储Token

如何使用

ITokenService 接口(默认实现 TokenService),只有四个方法及 login_url 属性:

  • set(data: ITokenModel): boolean 设置认证信息,同时触发 change

  • get(): ITokenModel 获取认证信息

  • clear() 清除认证信息,同时触发 change 参数为 null

  • change(): Observable<ITokenModel> 订阅认证信息变更回调

  • login_url 获取登录地址,等同 forRoot() 所配置的值

因此,当登录过程中后端返回相应的认证信息时,只要符合 ITokenModel 接口对象,都可以调用 set 方法将认证存储至 IStore (默认实现 LocalStorageStore) 当中。

constructor(@Inject(DA_SERVICE_TOKEN) service: ITokenService) {
+  service.set({ token: `asdf` });
+
+  service.get().token; // output: asdf
+}

存储类型

默认是采用 LocalStorageStore 持久化存储,你可以在 global-config.module.ts 或根模块里变更其他存储方式。

export class GlobalConfigModule {
+  static forRoot(): ModuleWithProviders {
+    return {
+      ngModule: GlobalConfigModule,
+      providers: [
+        { provide: DA_STORE_TOKEN, useClass: MemoryStore }
+      ]
+    };
+  }
+}

包含三种存储类型:

LocalStorageStore

localStorage 存储,关掉浏览器后不丢失

SessionStorageStore

sessionStorage 存储,关掉浏览器后丢失

MemoryStore

内存存储,关掉浏览器标签后丢失

CookieStorageStore

Cooki

\ No newline at end of file diff --git a/cache/getting-started/en/index.html b/cache/getting-started/en/index.html new file mode 100644 index 000000000..e855dc1ac --- /dev/null +++ b/cache/getting-started/en/index.html @@ -0,0 +1,69 @@ +开始使用 - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

开始使用

写在前面

通常把一些远程数据缓存在内存或 localStorage 持久化,目的是为了减少 Http 请求的成本;这样的数据通常是字典、城市数据等。

缓存的获取应该是非常简单的,我们不应该把时间浪费在如何保证加载这件事情上,因此 @delon/cache 更多是以约定为前提。key 作为缓存的唯一键值,它不应该只是单纯的一个标识符,如果遵守某种约定它的存在会更有价值。@delon/cache 默认情况下不光把 key 当作唯一标识符,同时它还是一个用于获取远程数据的有效HTTP,例如:

cacheService.get('/data/unit');

在以往我们会认为,在它之前应该需要加一个:

cacheService.set('/data/unit', [ '个', '件' ]);

才能够确保获取到缓存数据。

而对于 @delon/cache 而言,你无须 set 方法,直接使用 get 获取到单位字典,因为我们有一种约定,当缓存不存在透过 key 作为HTTP请求数据缓存后再返回。

缓存的获取与设置都是通过 CacheService 来操作,你只需要将 CacheService 导入对应的类当中即可。

如何使用

安装

yarn add @delon/cache

注册

在根模块 AppModule 导入 DelonCacheModule

import { DelonCacheModule } from '@delon/cache';
+
+@NgModule({
+  imports: [
+    DelonCacheModule
+  ]
+})

建议在根模块中导入,因为它只有 Service 为了防止重复被导入。

参数

成员说明类型默认值全局配置
[mode]promise,nonepromise缓存模式;promise 约定模式,允许 key 作为 http 获取数据;none 正常模式
[reName]string-重命名返回参数,例如:
null 返回体为内容
list 返回体应 { list: [] }
result.list 返回体应 { result: { list: [] } }
[expire]number-设置默认过期时间值(单位:秒)
[prefix]string-持久化数据键值前缀
[meta_key]string__cache_meta持久化数据元数据存储键名
[request](key: string) => Observable<unknown>-自定义请求体

可以通过全局配置覆盖它们。

代码演示

value:

Basic:
Key is valid request:
Notify:
基础样例

最简单的用法。

expand codeexpand code
import { Component, OnDestroy } from '@angular/core';
+import { CacheService } from '@delon/cache';
+import { NzMessageService } from 'ng-zorro-antd/message';
+import { Subscription } from 'rxjs';
+
+@Component({
+  selector: 'cache-getting-started-simple',
+  template: `
+    <p>value: {{ value | json }}</p>
+    <div class="pt-sm">
+      Basic:
+      <button nz-button (click)="srv.set(key, newValue)">Set</button>
+      <button nz-button (click)="value = srv.getNone(key)">Get</button>
+      <button nz-button (click)="srv.remove(key)">Remove</button>
+      <button nz-button (click)="srv.clear()">Clear</button>
+    </div>
+    <div class="pt-sm">
+      Key is valid request:
+      <button nz-button (click)="getByHttp()">Get</button>
+    </div>
+    <div class="pt-sm">
+      Notify:
+      <button nz-button (click)="registerNotify()">Register</button>
+      <button nz-button (click)="unRegisterNotify()">UnRegister</button>
+    </div>
+  `,
+})
+export class CacheGettingStartedSimpleComponent implements OnDestroy {
+  value: any;
+  key = 'demo';
+  private notify$?: Subscription;
+
+  get newValue(): number {
+    return +new Date();
+  }
+
+  constructor(public srv: CacheService, private msg: NzMessageService) {}
+
+  getByHttp(): void {
+    this.srv.get(`https://randomuser.me/api/?results=1`).subscribe(res => {
+      this.value = res;
+    });
+  }
+
+  registerNotify(): void {
+    if (this.notify$) this.notify$.unsubscribe();
+    this.notify$ = this.srv.notify(this.key).subscribe(res => {
+      if (res == null) {
+        this.msg.success('register success');
+        return;
+      }
+      this.msg.warning(`"${this.key}" new status: ${res.type}`);
+    });
+  }
+
+  unRegisterNotify(): void {
+    this.srv.cancelNotify(this.key);
+  }
+
+  ngOnDestroy(): void {
+    if (this.notify$) this.notify$.unsubscribe();
+  }
+}
\ No newline at end of file diff --git a/cache/getting-started/zh/index.html b/cache/getting-started/zh/index.html new file mode 100644 index 000000000..20b6009d5 --- /dev/null +++ b/cache/getting-started/zh/index.html @@ -0,0 +1,69 @@ +开始使用 - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

开始使用

写在前面

通常把一些远程数据缓存在内存或 localStorage 持久化,目的是为了减少 Http 请求的成本;这样的数据通常是字典、城市数据等。

缓存的获取应该是非常简单的,我们不应该把时间浪费在如何保证加载这件事情上,因此 @delon/cache 更多是以约定为前提。key 作为缓存的唯一键值,它不应该只是单纯的一个标识符,如果遵守某种约定它的存在会更有价值。@delon/cache 默认情况下不光把 key 当作唯一标识符,同时它还是一个用于获取远程数据的有效HTTP,例如:

cacheService.get('/data/unit');

在以往我们会认为,在它之前应该需要加一个:

cacheService.set('/data/unit', [ '个', '件' ]);

才能够确保获取到缓存数据。

而对于 @delon/cache 而言,你无须 set 方法,直接使用 get 获取到单位字典,因为我们有一种约定,当缓存不存在透过 key 作为HTTP请求数据缓存后再返回。

缓存的获取与设置都是通过 CacheService 来操作,你只需要将 CacheService 导入对应的类当中即可。

如何使用

安装

yarn add @delon/cache

注册

在根模块 AppModule 导入 DelonCacheModule

import { DelonCacheModule } from '@delon/cache';
+
+@NgModule({
+  imports: [
+    DelonCacheModule
+  ]
+})

建议在根模块中导入,因为它只有 Service 为了防止重复被导入。

参数

成员说明类型默认值全局配置
[mode]promise,nonepromise缓存模式;promise 约定模式,允许 key 作为 http 获取数据;none 正常模式
[reName]string-重命名返回参数,例如:
null 返回体为内容
list 返回体应 { list: [] }
result.list 返回体应 { result: { list: [] } }
[expire]number-设置默认过期时间值(单位:秒)
[prefix]string-持久化数据键值前缀
[meta_key]string__cache_meta持久化数据元数据存储键名
[request](key: string) => Observable<unknown>-自定义请求体

可以通过全局配置覆盖它们。

代码演示

value:

Basic:
Key is valid request:
Notify:
基础样例

最简单的用法。

expand codeexpand code
import { Component, OnDestroy } from '@angular/core';
+import { CacheService } from '@delon/cache';
+import { NzMessageService } from 'ng-zorro-antd/message';
+import { Subscription } from 'rxjs';
+
+@Component({
+  selector: 'cache-getting-started-simple',
+  template: `
+    <p>value: {{ value | json }}</p>
+    <div class="pt-sm">
+      Basic:
+      <button nz-button (click)="srv.set(key, newValue)">Set</button>
+      <button nz-button (click)="value = srv.getNone(key)">Get</button>
+      <button nz-button (click)="srv.remove(key)">Remove</button>
+      <button nz-button (click)="srv.clear()">Clear</button>
+    </div>
+    <div class="pt-sm">
+      Key is valid request:
+      <button nz-button (click)="getByHttp()">Get</button>
+    </div>
+    <div class="pt-sm">
+      Notify:
+      <button nz-button (click)="registerNotify()">Register</button>
+      <button nz-button (click)="unRegisterNotify()">UnRegister</button>
+    </div>
+  `,
+})
+export class CacheGettingStartedSimpleComponent implements OnDestroy {
+  value: any;
+  key = 'demo';
+  private notify$?: Subscription;
+
+  get newValue(): number {
+    return +new Date();
+  }
+
+  constructor(public srv: CacheService, private msg: NzMessageService) {}
+
+  getByHttp(): void {
+    this.srv.get(`https://randomuser.me/api/?results=1`).subscribe(res => {
+      this.value = res;
+    });
+  }
+
+  registerNotify(): void {
+    if (this.notify$) this.notify$.unsubscribe();
+    this.notify$ = this.srv.notify(this.key).subscribe(res => {
+      if (res == null) {
+        this.msg.success('register success');
+        return;
+      }
+      this.msg.warning(`"${this.key}" new status: ${res.type}`);
+    });
+  }
+
+  unRegisterNotify(): void {
+    this.srv.cancelNotify(this.key);
+  }
+
+  ngOnDestroy(): void {
+    if (this.notify$) this.notify$.unsubscribe();
+  }
+}
\ No newline at end of file diff --git a/cache/service/en/index.html b/cache/service/en/index.html new file mode 100644 index 000000000..af66b3662 --- /dev/null +++ b/cache/service/en/index.html @@ -0,0 +1,72 @@ +CacheService - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

CacheService

代码演示

value:

Basic:
Key is valid request:
Notify:
基础样例

最简单的用法。

expand codeexpand code
import { Component, OnDestroy } from '@angular/core';
+import { CacheService } from '@delon/cache';
+import { NzMessageService } from 'ng-zorro-antd/message';
+import { Subscription } from 'rxjs';
+
+@Component({
+  selector: 'cache-service-simple',
+  template: `
+    <p>value: {{ value | json }}</p>
+    <div class="pt-sm">
+      Basic:
+      <button nz-button (click)="srv.set(key, newValue)">Set</button>
+      <button nz-button (click)="value = srv.getNone(key)">Get</button>
+      <button nz-button (click)="srv.remove(key)">Remove</button>
+      <button nz-button (click)="srv.clear()">Clear</button>
+    </div>
+    <div class="pt-sm">
+      Key is valid request:
+      <button nz-button (click)="getByHttp()">Get</button>
+    </div>
+    <div class="pt-sm">
+      Notify:
+      <button nz-button (click)="registerNotify()">Register</button>
+      <button nz-button (click)="unRegisterNotify()">UnRegister</button>
+    </div>
+  `,
+})
+export class CacheServiceSimpleComponent implements OnDestroy {
+  value: any;
+  key = 'demo';
+  private notify$?: Subscription;
+
+  get newValue(): number {
+    return +new Date();
+  }
+
+  constructor(public srv: CacheService, private msg: NzMessageService) {}
+
+  getByHttp(): void {
+    this.srv.get(`https://randomuser.me/api/?results=1`).subscribe(res => {
+      this.value = res;
+    });
+  }
+
+  registerNotify(): void {
+    if (this.notify$) this.notify$.unsubscribe();
+    this.notify$ = this.srv.notify(this.key).subscribe(res => {
+      if (res == null) {
+        this.msg.success('register success');
+        return;
+      }
+      this.msg.warning(`"${this.key}" new status: ${res.type}`);
+    });
+  }
+
+  unRegisterNotify(): void {
+    this.srv.cancelNotify(this.key);
+  }
+
+  ngOnDestroy(): void {
+    if (this.notify$) this.notify$.unsubscribe();
+  }
+}

API

set()

参数名类型描述
keystring缓存唯一标识符
dataany | Observable<any>缓存数据源,数据源为 Observable 时,依然返回 Observable,否则返回 void
options{ type?: 'm' | 's', expire?: number, emitNotify?: boolean }type 存储类型,'m' 表示内存,'s' 表示持久
expire 过期时间,单位

get()

参数名类型描述
keystring缓存唯一标识符
options{ mode?: 'promise' | 'none', type?: 'm' | 's', expire?: number, emitNotify?: boolean }mode 指定获取缓存的模式:
1、promise 表示若不存 key 则把 key 当URL发起请求并缓存且返回 Observable
2、none 表示直接返回数据若KEY不存在则直接返回 null

type 存储类型,'m' 表示内存,'s' 表示持久
expire 过期时间,单位

getNone()

获取缓存数据,若 key 不存在或已过期则返回 null。

tryGet()

获取缓存,若不存在则设置缓存对象,参数等同 set()

has()

是否缓存 key

remove()

移除缓存 key

clear()

清空所有缓存。

notify()

key 监听,当 key 变更、过期、移除时通知,注意以下若干细节:

  • 调用后除再次调用 cancelNotify 否则永远不过期

  • 监听器每 freq (默认:3秒) 执行一次过期检查

cancelNotify()

取消 key 监听

hasNotify()

key 是否已经监听

clearNotify()

清空所有 key 的监听

freq()

设置监听频率,单位:毫秒且最低 20ms,默认:3000ms

gettryGet 的区别

本质都是获取并返回缓存数据,get 相比 tryGet 更简化,前者按KEY即是URL约定的风格,后者需指定数据源对象。

酷操作

async 管道

RxJS 和 async 管道二者的配合可以帮助我们非常友好的使用缓存数据,例如:

@Component({
+  template: `<li *ngFor="let unit of units | async">{{unit}}</li>`
+})
+export class Component {
+  units: this.srv.get('/data/unit')
+}

缓存与请求

有时需要依赖字典获取远程数据时:

this.srv
+  .get('/data/unit')
+  .pipe(
+    map(units => this.http.get(`/trade?unit=${units}`))
+  );
\ No newline at end of file diff --git a/cache/service/zh/index.html b/cache/service/zh/index.html new file mode 100644 index 000000000..1f8f8b1ab --- /dev/null +++ b/cache/service/zh/index.html @@ -0,0 +1,72 @@ +CacheService - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

CacheService

代码演示

value:

Basic:
Key is valid request:
Notify:
基础样例

最简单的用法。

expand codeexpand code
import { Component, OnDestroy } from '@angular/core';
+import { CacheService } from '@delon/cache';
+import { NzMessageService } from 'ng-zorro-antd/message';
+import { Subscription } from 'rxjs';
+
+@Component({
+  selector: 'cache-service-simple',
+  template: `
+    <p>value: {{ value | json }}</p>
+    <div class="pt-sm">
+      Basic:
+      <button nz-button (click)="srv.set(key, newValue)">Set</button>
+      <button nz-button (click)="value = srv.getNone(key)">Get</button>
+      <button nz-button (click)="srv.remove(key)">Remove</button>
+      <button nz-button (click)="srv.clear()">Clear</button>
+    </div>
+    <div class="pt-sm">
+      Key is valid request:
+      <button nz-button (click)="getByHttp()">Get</button>
+    </div>
+    <div class="pt-sm">
+      Notify:
+      <button nz-button (click)="registerNotify()">Register</button>
+      <button nz-button (click)="unRegisterNotify()">UnRegister</button>
+    </div>
+  `,
+})
+export class CacheServiceSimpleComponent implements OnDestroy {
+  value: any;
+  key = 'demo';
+  private notify$?: Subscription;
+
+  get newValue(): number {
+    return +new Date();
+  }
+
+  constructor(public srv: CacheService, private msg: NzMessageService) {}
+
+  getByHttp(): void {
+    this.srv.get(`https://randomuser.me/api/?results=1`).subscribe(res => {
+      this.value = res;
+    });
+  }
+
+  registerNotify(): void {
+    if (this.notify$) this.notify$.unsubscribe();
+    this.notify$ = this.srv.notify(this.key).subscribe(res => {
+      if (res == null) {
+        this.msg.success('register success');
+        return;
+      }
+      this.msg.warning(`"${this.key}" new status: ${res.type}`);
+    });
+  }
+
+  unRegisterNotify(): void {
+    this.srv.cancelNotify(this.key);
+  }
+
+  ngOnDestroy(): void {
+    if (this.notify$) this.notify$.unsubscribe();
+  }
+}

API

set()

参数名类型描述
keystring缓存唯一标识符
dataany | Observable<any>缓存数据源,数据源为 Observable 时,依然返回 Observable,否则返回 void
options{ type?: 'm' | 's', expire?: number, emitNotify?: boolean }type 存储类型,'m' 表示内存,'s' 表示持久
expire 过期时间,单位

get()

参数名类型描述
keystring缓存唯一标识符
options{ mode?: 'promise' | 'none', type?: 'm' | 's', expire?: number, emitNotify?: boolean }mode 指定获取缓存的模式:
1、promise 表示若不存 key 则把 key 当URL发起请求并缓存且返回 Observable
2、none 表示直接返回数据若KEY不存在则直接返回 null

type 存储类型,'m' 表示内存,'s' 表示持久
expire 过期时间,单位

getNone()

获取缓存数据,若 key 不存在或已过期则返回 null。

tryGet()

获取缓存,若不存在则设置缓存对象,参数等同 set()

has()

是否缓存 key

remove()

移除缓存 key

clear()

清空所有缓存。

notify()

key 监听,当 key 变更、过期、移除时通知,注意以下若干细节:

  • 调用后除再次调用 cancelNotify 否则永远不过期

  • 监听器每 freq (默认:3秒) 执行一次过期检查

cancelNotify()

取消 key 监听

hasNotify()

key 是否已经监听

clearNotify()

清空所有 key 的监听

freq()

设置监听频率,单位:毫秒且最低 20ms,默认:3000ms

gettryGet 的区别

本质都是获取并返回缓存数据,get 相比 tryGet 更简化,前者按KEY即是URL约定的风格,后者需指定数据源对象。

酷操作

async 管道

RxJS 和 async 管道二者的配合可以帮助我们非常友好的使用缓存数据,例如:

@Component({
+  template: `<li *ngFor="let unit of units | async">{{unit}}</li>`
+})
+export class Component {
+  units: this.srv.get('/data/unit')
+}

缓存与请求

有时需要依赖字典获取远程数据时:

this.srv
+  .get('/data/unit')
+  .pipe(
+    map(units => this.http.get(`/trade?unit=${units}`))
+  );
\ No newline at end of file diff --git a/chart/bar/en/index.html b/chart/bar/en/index.html new file mode 100644 index 000000000..9e83ecf7d --- /dev/null +++ b/chart/bar/en/index.html @@ -0,0 +1,32 @@ +g2-bar - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

柱状图
IMPORT MODULE

使用垂直的柱子显示类别之间的数值比较。其中一个轴表示需要对比的分类维度,另一个轴代表相应的数值。

代码演示

销售额趋势

基本

通过设置 xy 属性,可以快速的构建出一个漂亮的柱状图,各种纬度的关系则是通过自定义的数据展现。

expand codeexpand code
import { Component } from '@angular/core';
+import { G2BarClickItem, G2BarData } from '@delon/chart/bar';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'chart-bar-basic',
+  template: `
+    <button nz-button (click)="refresh()" nzType="primary">Refresh</button>
+    <g2-bar height="200" [title]="'销售额趋势'" [data]="salesData" (clickItem)="handleClick($event)"></g2-bar>
+  `,
+})
+export class ChartBarBasicComponent {
+  constructor(private msg: NzMessageService) {}
+
+  salesData = this.genData();
+
+  private genData(): G2BarData[] {
+    return new Array(12).fill({}).map((_i, idx) => ({
+      x: `${idx + 1}月`,
+      y: Math.floor(Math.random() * 1000) + 200,
+      color: idx > 5 ? '#f50' : undefined,
+    }));
+  }
+
+  refresh(): void {
+    this.salesData = this.genData();
+  }
+
+  handleClick(data: G2BarClickItem): void {
+    this.msg.info(`${data.item.x} - ${data.item.y}`);
+  }
+}

API

g2-bar

参数说明类型默认值
[repaint]数据再次变更时是否重绘booleantrue
[delay]延迟渲染,单位:毫秒number0
[title]图表标题string,TemplateRef<void>-
[color]图表颜色stringrgba(24, 144, 255, 0.85)
[padding]图表内部间距Array<number | string> | string[32, 0, 32, 40]
[height]图表高度number-
[data]数据G2BarData[][]
[autoLabel]在宽度不足时,自动隐藏 x 轴的 labelbooleantrue
[interaction]交互类型,none 无 element-active 图形元素,active-region 图表组件,brush 框选,drag-move 移动InteractionTypenone
[theme]定制图表主题string | LooseObject-
(clickItem)点击项回调EventEmitter<G2BarClickItem>-
(ready)当G2完成初始化后调用EventEmitter<Chart>-

G2BarData

参数说明类型默认值
[x]x轴any-
[y]y轴any-
[color]轴颜色string-
\ No newline at end of file diff --git a/chart/bar/zh/index.html b/chart/bar/zh/index.html new file mode 100644 index 000000000..749606404 --- /dev/null +++ b/chart/bar/zh/index.html @@ -0,0 +1,32 @@ +g2-bar - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

柱状图
IMPORT MODULE

使用垂直的柱子显示类别之间的数值比较。其中一个轴表示需要对比的分类维度,另一个轴代表相应的数值。

代码演示

销售额趋势

基本

通过设置 xy 属性,可以快速的构建出一个漂亮的柱状图,各种纬度的关系则是通过自定义的数据展现。

expand codeexpand code
import { Component } from '@angular/core';
+import { G2BarClickItem, G2BarData } from '@delon/chart/bar';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'chart-bar-basic',
+  template: `
+    <button nz-button (click)="refresh()" nzType="primary">Refresh</button>
+    <g2-bar height="200" [title]="'销售额趋势'" [data]="salesData" (clickItem)="handleClick($event)"></g2-bar>
+  `,
+})
+export class ChartBarBasicComponent {
+  constructor(private msg: NzMessageService) {}
+
+  salesData = this.genData();
+
+  private genData(): G2BarData[] {
+    return new Array(12).fill({}).map((_i, idx) => ({
+      x: `${idx + 1}月`,
+      y: Math.floor(Math.random() * 1000) + 200,
+      color: idx > 5 ? '#f50' : undefined,
+    }));
+  }
+
+  refresh(): void {
+    this.salesData = this.genData();
+  }
+
+  handleClick(data: G2BarClickItem): void {
+    this.msg.info(`${data.item.x} - ${data.item.y}`);
+  }
+}

API

g2-bar

参数说明类型默认值
[repaint]数据再次变更时是否重绘booleantrue
[delay]延迟渲染,单位:毫秒number0
[title]图表标题string,TemplateRef<void>-
[color]图表颜色stringrgba(24, 144, 255, 0.85)
[padding]图表内部间距Array<number | string> | string[32, 0, 32, 40]
[height]图表高度number-
[data]数据G2BarData[][]
[autoLabel]在宽度不足时,自动隐藏 x 轴的 labelbooleantrue
[interaction]交互类型,none 无 element-active 图形元素,active-region 图表组件,brush 框选,drag-move 移动InteractionTypenone
[theme]定制图表主题string | LooseObject-
(clickItem)点击项回调EventEmitter<G2BarClickItem>-
(ready)当G2完成初始化后调用EventEmitter<Chart>-

G2BarData

参数说明类型默认值
[x]x轴any-
[y]y轴any-
[color]轴颜色string-
\ No newline at end of file diff --git a/chart/card/en/index.html b/chart/card/en/index.html new file mode 100644 index 000000000..7d47cc983 --- /dev/null +++ b/chart/card/en/index.html @@ -0,0 +1,43 @@ +g2-card - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

图表卡片
IMPORT MODULE

图表卡片,用于展示图表的卡片容器,可以方便的配合其它图表套件展示丰富信息。

代码演示

销售额

¥ 126,560.00

周同比12%日环比11%
风格一

风格一用法。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'chart-card-style1',
+  template: `
+    <g2-card [title]="'销售额'" [bordered]="true" [total]="'¥ 126,560.00'" footer="日访问量 12,423" contentHeight="46" [action]="action">
+      <ng-template #action>
+        <i nz-tooltip nzTooltipTitle="指标说明" nz-icon nzType="info-circle"></i>
+      </ng-template>
+      周同比
+      <trend flag="up" style="margin: 0 16px 0 8px; color: rgba(0,0,0,.85)">12%</trend>
+      日环比
+      <trend flag="down" style="margin: 0 0 0 8px; color: rgba(0,0,0,.85)">11%</trend>
+    </g2-card>
+  `,
+})
+export class ChartCardStyle1Component {}
移动指标

¥ 126,560.00

风格三

风格三用法。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'chart-card-style3',
+  template: `
+    <g2-card [title]="'移动指标'" [bordered]="true" [total]="'¥ 126,560.00'" [avatar]="avatar" [action]="action">
+      <ng-template #avatar><img style="width:56px; height: 56px" src="./assets/img/logo-color.svg" /></ng-template>
+      <ng-template #action>
+        <i nz-tooltip nzTooltipTitle="指标说明" nz-icon nzType="info-circle"></i>
+      </ng-template>
+    </g2-card>
+  `,
+})
+export class ChartCardStyle3Component {}
移动指标

¥ 126,560.00

风格二

风格二用法。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'chart-card-style2',
+  template: `
+    <g2-card [title]="'移动指标'" [bordered]="true" [total]="'¥ 126,560.00'" footer="日访问量 12,423" [avatar]="avatar" [action]="action">
+      <ng-template #avatar><img style="width:56px; height: 56px" src="./assets/img/logo-color.svg" /></ng-template>
+      <ng-template #action>
+        <i nz-tooltip nzTooltipTitle="指标说明" nz-icon nzType="info-circle"></i>
+      </ng-template>
+    </g2-card>
+  `,
+})
+export class ChartCardStyle2Component {}

API

g2-card

参数说明类型默认值
[title]卡片标题string,TemplateRef<void>-
[avatar]头像string,TemplateRef<void>-
[action]卡片操作string,TemplateRef<void>-
[total]数据总量(支持HTML)string-
[footer]卡片底部string,TemplateRef<void>-
[contentHeight]内容区域高度(单位:pxstring-
[bordered]是否显示边框booleanfalse
\ No newline at end of file diff --git a/chart/card/zh/index.html b/chart/card/zh/index.html new file mode 100644 index 000000000..cfafec203 --- /dev/null +++ b/chart/card/zh/index.html @@ -0,0 +1,43 @@ +g2-card - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

图表卡片
IMPORT MODULE

图表卡片,用于展示图表的卡片容器,可以方便的配合其它图表套件展示丰富信息。

代码演示

销售额

¥ 126,560.00

周同比12%日环比11%
风格一

风格一用法。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'chart-card-style1',
+  template: `
+    <g2-card [title]="'销售额'" [bordered]="true" [total]="'¥ 126,560.00'" footer="日访问量 12,423" contentHeight="46" [action]="action">
+      <ng-template #action>
+        <i nz-tooltip nzTooltipTitle="指标说明" nz-icon nzType="info-circle"></i>
+      </ng-template>
+      周同比
+      <trend flag="up" style="margin: 0 16px 0 8px; color: rgba(0,0,0,.85)">12%</trend>
+      日环比
+      <trend flag="down" style="margin: 0 0 0 8px; color: rgba(0,0,0,.85)">11%</trend>
+    </g2-card>
+  `,
+})
+export class ChartCardStyle1Component {}
移动指标

¥ 126,560.00

风格三

风格三用法。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'chart-card-style3',
+  template: `
+    <g2-card [title]="'移动指标'" [bordered]="true" [total]="'¥ 126,560.00'" [avatar]="avatar" [action]="action">
+      <ng-template #avatar><img style="width:56px; height: 56px" src="./assets/img/logo-color.svg" /></ng-template>
+      <ng-template #action>
+        <i nz-tooltip nzTooltipTitle="指标说明" nz-icon nzType="info-circle"></i>
+      </ng-template>
+    </g2-card>
+  `,
+})
+export class ChartCardStyle3Component {}
移动指标

¥ 126,560.00

风格二

风格二用法。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'chart-card-style2',
+  template: `
+    <g2-card [title]="'移动指标'" [bordered]="true" [total]="'¥ 126,560.00'" footer="日访问量 12,423" [avatar]="avatar" [action]="action">
+      <ng-template #avatar><img style="width:56px; height: 56px" src="./assets/img/logo-color.svg" /></ng-template>
+      <ng-template #action>
+        <i nz-tooltip nzTooltipTitle="指标说明" nz-icon nzType="info-circle"></i>
+      </ng-template>
+    </g2-card>
+  `,
+})
+export class ChartCardStyle2Component {}

API

g2-card

参数说明类型默认值
[title]卡片标题string,TemplateRef<void>-
[avatar]头像string,TemplateRef<void>-
[action]卡片操作string,TemplateRef<void>-
[total]数据总量(支持HTML)string-
[footer]卡片底部string,TemplateRef<void>-
[contentHeight]内容区域高度(单位:pxstring-
[bordered]是否显示边框booleanfalse
\ No newline at end of file diff --git a/chart/chart-echarts/en/index.html b/chart/chart-echarts/en/index.html new file mode 100644 index 000000000..c5605c7ba --- /dev/null +++ b/chart/chart-echarts/en/index.html @@ -0,0 +1,102 @@ +chart-echarts - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

ECharts
IMPORT MODULE

ECharts 一个基于 JavaScript 的开源可视化图表库。使用懒加载 ECharts 脚本,开箱启用。

代码演示

Dark

基本

最简单的用法。

expand codeexpand code
import { Component } from '@angular/core';
+import { ChartEChartsEvent, ChartEChartsOption } from '@delon/chart/chart-echarts';
+
+@Component({
+  selector: 'chart-chart-echarts-basic',
+  template: `
+    <div class="mb-md">
+      <nz-switch [(ngModel)]="dark"></nz-switch> Dark
+      <button nz-button (click)="two = !two" nzType="primary">Change Option</button>
+    </div>
+    <chart-echarts [option]="two ? option1 : option2" [theme]="dark ? 'dark' : null" (events)="handleEvents($event)"></chart-echarts>
+  `,
+})
+export class ChartChartEchartsBasicComponent {
+  dark = false;
+  two = false;
+
+  option1: ChartEChartsOption = {
+    tooltip: {
+      formatter: '{a} <br/>{b} : {c}%',
+    },
+    series: [
+      {
+        name: 'Pressure',
+        type: 'gauge',
+        detail: {
+          formatter: '{value}',
+        },
+        data: [
+          {
+            value: 50,
+            name: 'SCORE',
+          },
+        ],
+      },
+    ],
+  };
+
+  option2: ChartEChartsOption = {
+    title: {
+      text: 'ECharts 入门示例',
+    },
+    tooltip: {},
+    legend: {
+      data: ['销量'],
+    },
+    xAxis: {
+      data: ['衬衫', '羊毛衫', '雪纺衫', '裤子', '高跟鞋', '袜子'],
+    },
+    yAxis: {},
+    series: [
+      {
+        name: '销量',
+        type: 'bar',
+        data: [5, 20, 36, 10, 10, 20],
+      },
+    ],
+  };
+
+  handleEvents(ev: ChartEChartsEvent): void {
+    console.log(ev);
+  }
+}

绑定事件

使用 on 属性,等同于 ECharts on

expand codeexpand code
import { Component } from '@angular/core';
+
+import { ChartEChartsOn, ChartEChartsOption } from '@delon/chart/chart-echarts';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'chart-chart-echarts-on',
+  template: ` <chart-echarts [option]="option" [on]="on"></chart-echarts> `
+})
+export class ChartChartEchartsOnComponent {
+  dark = false;
+  two = false;
+
+  on: ChartEChartsOn[] = [
+    {
+      eventName: 'click',
+      handler: ({ event, chart }) => {
+        this.msg.info(`${event.type}: ${event.name} - ${event.value} (${chart.id})`);
+      }
+    }
+  ];
+
+  option: ChartEChartsOption = {
+    xAxis: {
+      type: 'category',
+      data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
+    },
+    yAxis: {
+      type: 'value'
+    },
+    series: [
+      {
+        data: [150, 230, 224, 218, 135, 147, 260],
+        type: 'line'
+      }
+    ]
+  };
+
+  constructor(private msg: NzMessageService) {}
+}

API

chart-echarts

参数说明类型默认值
[width]图表宽度number, string100%
[height]图表高度number, string400px
[option]配置项ChartEChartsOption-
[theme]主题配置string, object-
[on]等同于 ECharts onChartEChartsOn[]-
(events)事件回调EventEmitter<ChartEChartsEvent>-
\ No newline at end of file diff --git a/chart/chart-echarts/zh/index.html b/chart/chart-echarts/zh/index.html new file mode 100644 index 000000000..b21ee66ed --- /dev/null +++ b/chart/chart-echarts/zh/index.html @@ -0,0 +1,102 @@ +chart-echarts - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

ECharts
IMPORT MODULE

ECharts 一个基于 JavaScript 的开源可视化图表库。使用懒加载 ECharts 脚本,开箱启用。

代码演示

Dark

基本

最简单的用法。

expand codeexpand code
import { Component } from '@angular/core';
+import { ChartEChartsEvent, ChartEChartsOption } from '@delon/chart/chart-echarts';
+
+@Component({
+  selector: 'chart-chart-echarts-basic',
+  template: `
+    <div class="mb-md">
+      <nz-switch [(ngModel)]="dark"></nz-switch> Dark
+      <button nz-button (click)="two = !two" nzType="primary">Change Option</button>
+    </div>
+    <chart-echarts [option]="two ? option1 : option2" [theme]="dark ? 'dark' : null" (events)="handleEvents($event)"></chart-echarts>
+  `,
+})
+export class ChartChartEchartsBasicComponent {
+  dark = false;
+  two = false;
+
+  option1: ChartEChartsOption = {
+    tooltip: {
+      formatter: '{a} <br/>{b} : {c}%',
+    },
+    series: [
+      {
+        name: 'Pressure',
+        type: 'gauge',
+        detail: {
+          formatter: '{value}',
+        },
+        data: [
+          {
+            value: 50,
+            name: 'SCORE',
+          },
+        ],
+      },
+    ],
+  };
+
+  option2: ChartEChartsOption = {
+    title: {
+      text: 'ECharts 入门示例',
+    },
+    tooltip: {},
+    legend: {
+      data: ['销量'],
+    },
+    xAxis: {
+      data: ['衬衫', '羊毛衫', '雪纺衫', '裤子', '高跟鞋', '袜子'],
+    },
+    yAxis: {},
+    series: [
+      {
+        name: '销量',
+        type: 'bar',
+        data: [5, 20, 36, 10, 10, 20],
+      },
+    ],
+  };
+
+  handleEvents(ev: ChartEChartsEvent): void {
+    console.log(ev);
+  }
+}

绑定事件

使用 on 属性,等同于 ECharts on

expand codeexpand code
import { Component } from '@angular/core';
+
+import { ChartEChartsOn, ChartEChartsOption } from '@delon/chart/chart-echarts';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'chart-chart-echarts-on',
+  template: ` <chart-echarts [option]="option" [on]="on"></chart-echarts> `
+})
+export class ChartChartEchartsOnComponent {
+  dark = false;
+  two = false;
+
+  on: ChartEChartsOn[] = [
+    {
+      eventName: 'click',
+      handler: ({ event, chart }) => {
+        this.msg.info(`${event.type}: ${event.name} - ${event.value} (${chart.id})`);
+      }
+    }
+  ];
+
+  option: ChartEChartsOption = {
+    xAxis: {
+      type: 'category',
+      data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
+    },
+    yAxis: {
+      type: 'value'
+    },
+    series: [
+      {
+        data: [150, 230, 224, 218, 135, 147, 260],
+        type: 'line'
+      }
+    ]
+  };
+
+  constructor(private msg: NzMessageService) {}
+}

API

chart-echarts

参数说明类型默认值
[width]图表宽度number, string100%
[height]图表高度number, string400px
[option]配置项ChartEChartsOption-
[theme]主题配置string, object-
[on]等同于 ECharts onChartEChartsOn[]-
(events)事件回调EventEmitter<ChartEChartsEvent>-
\ No newline at end of file diff --git a/chart/custom/en/index.html b/chart/custom/en/index.html new file mode 100644 index 000000000..dd4395ec9 --- /dev/null +++ b/chart/custom/en/index.html @@ -0,0 +1,124 @@ +g2-chart - NG-ALAIN

自定义图表
IMPORT MODULE

使用 g2-custom 组件可以更快速的封装自己的图表组件。

如何使用

一个简单示例模板:

import { Component, ElementRef } from '@angular/core';
+
+@Component({
+  selector: 'app-demo',
+  template: `
+  <g2-custom (render)="render($event)"></g2-custom>
+  `,
+})
+export class DemoComponent {
+  render(el: ElementRef) {
+    // 开始编写 G2 代码
+  }
+}

如何开发 G2

可能你会遇到未找到 G2,请参考常见问题

链接

代码演示

基础

模仿自 antv基础漏斗图

expand codeexpand code
import { Component, ElementRef, NgZone } from '@angular/core';
+import type { Chart } from '@antv/g2';
+
+@Component({
+  selector: 'chart-custom-basic',
+  template: ` <g2-custom delay="100" (render)="render($event)"></g2-custom> `,
+})
+export class ChartCustomBasicComponent {
+  constructor(private ngZone: NgZone) {}
+
+  render(el: ElementRef<HTMLDivElement>): void {
+    this.ngZone.runOutsideAngular(() => this.init(el.nativeElement));
+  }
+
+  private init(el: HTMLElement): void {
+    const data: Array<{ action: string; pv: number; percent: number }> = [
+      { action: '浏览网站', pv: 50000, percent: 0 },
+      { action: '放入购物车', pv: 35000, percent: 0 },
+      { action: '生成订单', pv: 25000, percent: 0 },
+      { action: '支付订单', pv: 15000, percent: 0 },
+      { action: '完成交易', pv: 8000, percent: 0 },
+    ].map(row => {
+      row.percent = row.pv / 50000;
+      return row;
+    });
+    const chart: Chart = new (window as any).G2.Chart({
+      container: el,
+      autoFit: true,
+      height: 500,
+      width: el.clientWidth,
+      padding: [20, 120, 95],
+    });
+    chart.data(data);
+    chart.axis(false);
+    chart.tooltip({
+      showTitle: false,
+      showMarkers: false,
+      itemTpl:
+        '<li style="margin-bottom:4px;list-style-type:none;padding: 0;">' +
+        '<span style="background-color:{color};" class="g2-tooltip-marker"></span>' +
+        '{name}<br/>' +
+        '<span style="padding-left: 16px;line-height: 16px;">浏览人数:{pv}</span><br/>' +
+        '<span style="padding-left: 16px;line-height: 16px;">占比:{percent}</span><br/>' +
+        '</li>',
+    });
+
+    chart.coordinate('rect').transpose().scale(1, -1);
+    chart
+      .interval()
+      .adjust('symmetric')
+      .position('action*percent')
+      .shape('funnel')
+      .color('action', ['#0050B3', '#1890FF', '#40A9FF', '#69C0FF', '#BAE7FF'])
+      .label(
+        'action*pv',
+        (action, pv) => {
+          return {
+            content: `${action} ${pv}`,
+          };
+        },
+        {
+          offset: 35,
+          labelLine: {
+            style: {
+              lineWidth: 1,
+              stroke: 'rgba(0, 0, 0, 0.15)',
+            },
+          },
+        },
+      )
+      .tooltip('action*pv*percent', (action, pv, percent) => {
+        return {
+          name: action,
+          percent: +percent * 100 + '%',
+          pv,
+        };
+      })
+      .animate({
+        appear: {
+          animation: 'fade-in',
+        },
+        update: {
+          // annotation: 'fade-in'
+        },
+      });
+
+    chart.interaction('element-active');
+
+    chart.on('beforepaint', () => {
+      chart.annotation().clear(true);
+      const chartData = chart.getData();
+      // 中间标签文本
+      chartData.forEach(obj => {
+        chart.annotation().text({
+          top: true,
+          position: {
+            action: obj.action,
+            percent: 'median',
+          },
+          content: +obj.percent * 100 + '%', // 显示的文本内容
+          style: {
+            stroke: null,
+            fill: '#fff',
+            textAlign: 'center',
+          },
+        });
+      });
+    });
+
+    chart.render();
+  }
+}

API

g2-custom

参数说明类型默认值
[delay]延迟渲染,单位:毫秒number0
[height]number-
[resizeTime]resize 事件去抖时长number200
(render)渲染事件EventEmitter<ElementRef>-
(resize)resize 事件EventEmitter<ElementRef>-
(destroy)销毁事件EventEmitter<ElementRef>-
[theme]定制图表主题string | LooseObject-
\ No newline at end of file diff --git a/chart/custom/zh/index.html b/chart/custom/zh/index.html new file mode 100644 index 000000000..66eb8820c --- /dev/null +++ b/chart/custom/zh/index.html @@ -0,0 +1,124 @@ +g2-chart - NG-ALAIN

自定义图表
IMPORT MODULE

使用 g2-custom 组件可以更快速的封装自己的图表组件。

如何使用

一个简单示例模板:

import { Component, ElementRef } from '@angular/core';
+
+@Component({
+  selector: 'app-demo',
+  template: `
+  <g2-custom (render)="render($event)"></g2-custom>
+  `,
+})
+export class DemoComponent {
+  render(el: ElementRef) {
+    // 开始编写 G2 代码
+  }
+}

如何开发 G2

可能你会遇到未找到 G2,请参考常见问题

链接

代码演示

基础

模仿自 antv基础漏斗图

expand codeexpand code
import { Component, ElementRef, NgZone } from '@angular/core';
+import type { Chart } from '@antv/g2';
+
+@Component({
+  selector: 'chart-custom-basic',
+  template: ` <g2-custom delay="100" (render)="render($event)"></g2-custom> `,
+})
+export class ChartCustomBasicComponent {
+  constructor(private ngZone: NgZone) {}
+
+  render(el: ElementRef<HTMLDivElement>): void {
+    this.ngZone.runOutsideAngular(() => this.init(el.nativeElement));
+  }
+
+  private init(el: HTMLElement): void {
+    const data: Array<{ action: string; pv: number; percent: number }> = [
+      { action: '浏览网站', pv: 50000, percent: 0 },
+      { action: '放入购物车', pv: 35000, percent: 0 },
+      { action: '生成订单', pv: 25000, percent: 0 },
+      { action: '支付订单', pv: 15000, percent: 0 },
+      { action: '完成交易', pv: 8000, percent: 0 },
+    ].map(row => {
+      row.percent = row.pv / 50000;
+      return row;
+    });
+    const chart: Chart = new (window as any).G2.Chart({
+      container: el,
+      autoFit: true,
+      height: 500,
+      width: el.clientWidth,
+      padding: [20, 120, 95],
+    });
+    chart.data(data);
+    chart.axis(false);
+    chart.tooltip({
+      showTitle: false,
+      showMarkers: false,
+      itemTpl:
+        '<li style="margin-bottom:4px;list-style-type:none;padding: 0;">' +
+        '<span style="background-color:{color};" class="g2-tooltip-marker"></span>' +
+        '{name}<br/>' +
+        '<span style="padding-left: 16px;line-height: 16px;">浏览人数:{pv}</span><br/>' +
+        '<span style="padding-left: 16px;line-height: 16px;">占比:{percent}</span><br/>' +
+        '</li>',
+    });
+
+    chart.coordinate('rect').transpose().scale(1, -1);
+    chart
+      .interval()
+      .adjust('symmetric')
+      .position('action*percent')
+      .shape('funnel')
+      .color('action', ['#0050B3', '#1890FF', '#40A9FF', '#69C0FF', '#BAE7FF'])
+      .label(
+        'action*pv',
+        (action, pv) => {
+          return {
+            content: `${action} ${pv}`,
+          };
+        },
+        {
+          offset: 35,
+          labelLine: {
+            style: {
+              lineWidth: 1,
+              stroke: 'rgba(0, 0, 0, 0.15)',
+            },
+          },
+        },
+      )
+      .tooltip('action*pv*percent', (action, pv, percent) => {
+        return {
+          name: action,
+          percent: +percent * 100 + '%',
+          pv,
+        };
+      })
+      .animate({
+        appear: {
+          animation: 'fade-in',
+        },
+        update: {
+          // annotation: 'fade-in'
+        },
+      });
+
+    chart.interaction('element-active');
+
+    chart.on('beforepaint', () => {
+      chart.annotation().clear(true);
+      const chartData = chart.getData();
+      // 中间标签文本
+      chartData.forEach(obj => {
+        chart.annotation().text({
+          top: true,
+          position: {
+            action: obj.action,
+            percent: 'median',
+          },
+          content: +obj.percent * 100 + '%', // 显示的文本内容
+          style: {
+            stroke: null,
+            fill: '#fff',
+            textAlign: 'center',
+          },
+        });
+      });
+    });
+
+    chart.render();
+  }
+}

API

g2-custom

参数说明类型默认值
[delay]延迟渲染,单位:毫秒number0
[height]number-
[resizeTime]resize 事件去抖时长number200
(render)渲染事件EventEmitter<ElementRef>-
(resize)resize 事件EventEmitter<ElementRef>-
(destroy)销毁事件EventEmitter<ElementRef>-
[theme]定制图表主题string | LooseObject-
\ No newline at end of file diff --git a/chart/faq/en/index.html b/chart/faq/en/index.html new file mode 100644 index 000000000..340cf12ce --- /dev/null +++ b/chart/faq/en/index.html @@ -0,0 +1 @@ +常见问题 - NG-ALAIN

常见问题

如何自适应容器宽高?

G2 当前版本并不会根据容器宽高自适应,目前只会根据浏览器窗体大小才会重新变更图表尺寸,因此需要手动监听容器大小的变化并调用 chart.forceFit() 重新渲染图表尺寸。

\ No newline at end of file diff --git a/chart/faq/zh/index.html b/chart/faq/zh/index.html new file mode 100644 index 000000000..cd8d19161 --- /dev/null +++ b/chart/faq/zh/index.html @@ -0,0 +1 @@ +常见问题 - NG-ALAIN

常见问题

如何自适应容器宽高?

G2 当前版本并不会根据容器宽高自适应,目前只会根据浏览器窗体大小才会重新变更图表尺寸,因此需要手动监听容器大小的变化并调用 chart.forceFit() 重新渲染图表尺寸。

\ No newline at end of file diff --git a/chart/gauge/en/index.html b/chart/gauge/en/index.html new file mode 100644 index 000000000..06f8a40bb --- /dev/null +++ b/chart/gauge/en/index.html @@ -0,0 +1,29 @@ +g2-gauge - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

仪表盘
IMPORT MODULE

一种进度展示方式,可以更直观的展示当前的进展情况,通常也可表示占比。

代码演示

基础

基础用法。

expand codeexpand code
import { Platform } from '@angular/cdk/platform';
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, OnDestroy } from '@angular/core';
+
+import type { NzSafeAny } from 'ng-zorro-antd/core/types';
+
+@Component({
+  selector: 'chart-gauge-basic',
+  template: ` <g2-gauge [title]="'核销率'" height="164" [percent]="percent" [color]="color"></g2-gauge> `,
+  changeDetection: ChangeDetectionStrategy.OnPush
+})
+export class ChartGaugeBasicComponent implements OnDestroy {
+  percent = 36;
+  color = '#2f9cff';
+  private time$: NzSafeAny;
+
+  constructor(platform: Platform, cdr: ChangeDetectorRef) {
+    if (!platform.isBrowser) return;
+
+    this.time$ = setInterval(() => {
+      this.percent = parseInt((Math.random() * 100).toString(), 10);
+      this.color = this.percent > 50 ? '#f50' : '#2f9cff';
+      cdr.detectChanges();
+    }, 1000);
+  }
+
+  ngOnDestroy(): void {
+    clearInterval(this.time$);
+  }
+}

API

g2-gauge

参数说明类型默认值
[repaint]数据再次变更时是否重绘booleantrue
[delay]延迟渲染,单位:毫秒number0
[title]图表标题string-
[height]图表高度number-
[color]图表颜色string#2F9CFF
[bgColor]图表背景色string#F0F2F5
[percent]进度比例number-
[padding]内边距Array<number | string>[10, 10, 30, 10]
[format]坐标轴格式(text: string, item: {}, index: number) => string-
[theme]定制图表主题string | LooseObject-
(ready)当G2完成初始化后调用EventEmitter<Chart>-
\ No newline at end of file diff --git a/chart/gauge/zh/index.html b/chart/gauge/zh/index.html new file mode 100644 index 000000000..f5d9dba2c --- /dev/null +++ b/chart/gauge/zh/index.html @@ -0,0 +1,29 @@ +g2-gauge - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

仪表盘
IMPORT MODULE

一种进度展示方式,可以更直观的展示当前的进展情况,通常也可表示占比。

代码演示

基础

基础用法。

expand codeexpand code
import { Platform } from '@angular/cdk/platform';
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, OnDestroy } from '@angular/core';
+
+import type { NzSafeAny } from 'ng-zorro-antd/core/types';
+
+@Component({
+  selector: 'chart-gauge-basic',
+  template: ` <g2-gauge [title]="'核销率'" height="164" [percent]="percent" [color]="color"></g2-gauge> `,
+  changeDetection: ChangeDetectionStrategy.OnPush
+})
+export class ChartGaugeBasicComponent implements OnDestroy {
+  percent = 36;
+  color = '#2f9cff';
+  private time$: NzSafeAny;
+
+  constructor(platform: Platform, cdr: ChangeDetectorRef) {
+    if (!platform.isBrowser) return;
+
+    this.time$ = setInterval(() => {
+      this.percent = parseInt((Math.random() * 100).toString(), 10);
+      this.color = this.percent > 50 ? '#f50' : '#2f9cff';
+      cdr.detectChanges();
+    }, 1000);
+  }
+
+  ngOnDestroy(): void {
+    clearInterval(this.time$);
+  }
+}

API

g2-gauge

参数说明类型默认值
[repaint]数据再次变更时是否重绘booleantrue
[delay]延迟渲染,单位:毫秒number0
[title]图表标题string-
[height]图表高度number-
[color]图表颜色string#2F9CFF
[bgColor]图表背景色string#F0F2F5
[percent]进度比例number-
[padding]内边距Array<number | string>[10, 10, 30, 10]
[format]坐标轴格式(text: string, item: {}, index: number) => string-
[theme]定制图表主题string | LooseObject-
(ready)当G2完成初始化后调用EventEmitter<Chart>-
\ No newline at end of file diff --git a/chart/getting-started/en/index.html b/chart/getting-started/en/index.html new file mode 100644 index 000000000..a4654b3d9 --- /dev/null +++ b/chart/getting-started/en/index.html @@ -0,0 +1,61 @@ +开始使用 - NG-ALAIN

开始使用

图表是基于 G2 (3.0) 的基础上二次封装,提供了业务中常用的图表套件,可以单独使用,也可以组合起来实现复杂的展示效果。

图表的作用,是帮助我们更好地看懂数据。选择什么图表,需要回答的首要问题是『我有什么数据,需要用图表做什么』,而不是 『图表长成什么样』 。

分类名组件清单描述
比较类迷你柱状图:g2-mini-bar
单一柱状图:g2-single-bar
柱状图:g2-bar
雷达图:g2-radar
迷你区域图:g2-mini-area
迷你进度条:g2-mini-progress
-
分布类折线图:g2-timeline-
占比类饼图:g2-pie
水波图:g2-water-wave
迷你进度条:g2-mini-progress
迷你区域图:g2-mini-area
-
区间类仪表盘:g2-gauge
迷你区域图:g2-mini-area
-
趋势类折线图:g2-timeline
迷你区域图:g2-mini-area
-
时间类折线图:g2-timeline
迷你区域图:g2-mini-area
-
其它标签云:g2-tag-cloud
图表卡片:g2-chart-card
自定义图表:g2-chart
-

如何使用

G2类库加载

默认情况下,在全局配置已经指定类库 CDN 地址:

// global-config.module.ts
+const alainConfig: AlainConfig = {
+  chart: { 
+    // 以下是默认配置,如果项目无法外网访问,可以根据 `angular.json` 配置将依赖包直接使用 `./assets***` 路径
+    libs: [
+      'https://gw.alipayobjects.com/os/lib/antv/g2/4.1.4/dist/g2.min.js',
+      'https://gw.alipayobjects.com/os/lib/antv/data-set/0.11.7/dist/data-set.js',
+    ],
+  },
+};
+
+export class DelonModule {
+  static forRoot(): ModuleWithProviders {
+    return {
+      ngModule: DelonModule,
+      providers: [
+        { provide: ALAIN_CONFIG, useValue: alainConfig }
+      ]
+    };
+  }
+}

当然也可以在 index.html 直接引入 CDN 地址,例如:

<!-- 引入在线资源,选择你需要的 g2 版本以替换 version 变量 -->
+<script src="https://gw.alipayobjects.com/os/lib/antv/g2/{{version}}/dist/g2.min.js"></script>

也可以在 angular.json 配置 assets 选项(有关 assets 文档),从 node_modules 来获得G2类库,例如:

"assets": [
+  {
+    "glob": "**/*",
+    "input": "./node_modules/@antv/g2/dist",
+    "output": "/@antv/g2/"
+  },
+  {
+    "glob": "**/*",
+    "input": "./node_modules/@antv/data-set/dist",
+    "output": "/@antv/data-set/"
+  }
+]

最后修改全局配置的 libs 参数为:

// global-config.module.ts
+const alainConfig: AlainConfig = {
+  chart: { 
+    libs: [
+      './assets/@antv/g2/g2.min.js',
+      './assets/@antv/data-set/data-set.js',
+    ],
+  },
+};

导入模块

// shared.module.ts
+import { G2BarModule } from '@delon/chart/bar';
+
+@NgModule({
+  imports: [ G2BarModule ],
+  exports: [ G2BarModule ]
+})

自定义 G2 组件

使用 g2-chart 组件快速自定义一个图表,可以减少不必要的组件渲染过程中所产生的奇怪问题。

配置图表主题

对所有 G2 进行配置图表主题,但只提供接口,有关配置图表主题参数,请参考G2官网

// global-config.module.ts
+const alainConfig: AlainConfig = {
+  chart: { theme: 'dark' },
+};
+
+export class DelonModule {
+  static forRoot(): ModuleWithProviders {
+    return {
+      ngModule: DelonModule,
+      providers: [
+        { provide: ALAIN_CONFIG, useValue: alainConfig }
+      ]
+    };
+  }
+}
\ No newline at end of file diff --git a/chart/getting-started/zh/index.html b/chart/getting-started/zh/index.html new file mode 100644 index 000000000..6bad06a76 --- /dev/null +++ b/chart/getting-started/zh/index.html @@ -0,0 +1,61 @@ +开始使用 - NG-ALAIN

开始使用

图表是基于 G2 (3.0) 的基础上二次封装,提供了业务中常用的图表套件,可以单独使用,也可以组合起来实现复杂的展示效果。

图表的作用,是帮助我们更好地看懂数据。选择什么图表,需要回答的首要问题是『我有什么数据,需要用图表做什么』,而不是 『图表长成什么样』 。

分类名组件清单描述
比较类迷你柱状图:g2-mini-bar
单一柱状图:g2-single-bar
柱状图:g2-bar
雷达图:g2-radar
迷你区域图:g2-mini-area
迷你进度条:g2-mini-progress
-
分布类折线图:g2-timeline-
占比类饼图:g2-pie
水波图:g2-water-wave
迷你进度条:g2-mini-progress
迷你区域图:g2-mini-area
-
区间类仪表盘:g2-gauge
迷你区域图:g2-mini-area
-
趋势类折线图:g2-timeline
迷你区域图:g2-mini-area
-
时间类折线图:g2-timeline
迷你区域图:g2-mini-area
-
其它标签云:g2-tag-cloud
图表卡片:g2-chart-card
自定义图表:g2-chart
-

如何使用

G2类库加载

默认情况下,在全局配置已经指定类库 CDN 地址:

// global-config.module.ts
+const alainConfig: AlainConfig = {
+  chart: { 
+    // 以下是默认配置,如果项目无法外网访问,可以根据 `angular.json` 配置将依赖包直接使用 `./assets***` 路径
+    libs: [
+      'https://gw.alipayobjects.com/os/lib/antv/g2/4.1.4/dist/g2.min.js',
+      'https://gw.alipayobjects.com/os/lib/antv/data-set/0.11.7/dist/data-set.js',
+    ],
+  },
+};
+
+export class DelonModule {
+  static forRoot(): ModuleWithProviders {
+    return {
+      ngModule: DelonModule,
+      providers: [
+        { provide: ALAIN_CONFIG, useValue: alainConfig }
+      ]
+    };
+  }
+}

当然也可以在 index.html 直接引入 CDN 地址,例如:

<!-- 引入在线资源,选择你需要的 g2 版本以替换 version 变量 -->
+<script src="https://gw.alipayobjects.com/os/lib/antv/g2/{{version}}/dist/g2.min.js"></script>

也可以在 angular.json 配置 assets 选项(有关 assets 文档),从 node_modules 来获得G2类库,例如:

"assets": [
+  {
+    "glob": "**/*",
+    "input": "./node_modules/@antv/g2/dist",
+    "output": "/@antv/g2/"
+  },
+  {
+    "glob": "**/*",
+    "input": "./node_modules/@antv/data-set/dist",
+    "output": "/@antv/data-set/"
+  }
+]

最后修改全局配置的 libs 参数为:

// global-config.module.ts
+const alainConfig: AlainConfig = {
+  chart: { 
+    libs: [
+      './assets/@antv/g2/g2.min.js',
+      './assets/@antv/data-set/data-set.js',
+    ],
+  },
+};

导入模块

// shared.module.ts
+import { G2BarModule } from '@delon/chart/bar';
+
+@NgModule({
+  imports: [ G2BarModule ],
+  exports: [ G2BarModule ]
+})

自定义 G2 组件

使用 g2-chart 组件快速自定义一个图表,可以减少不必要的组件渲染过程中所产生的奇怪问题。

配置图表主题

对所有 G2 进行配置图表主题,但只提供接口,有关配置图表主题参数,请参考G2官网

// global-config.module.ts
+const alainConfig: AlainConfig = {
+  chart: { theme: 'dark' },
+};
+
+export class DelonModule {
+  static forRoot(): ModuleWithProviders {
+    return {
+      ngModule: DelonModule,
+      providers: [
+        { provide: ALAIN_CONFIG, useValue: alainConfig }
+      ]
+    };
+  }
+}
\ No newline at end of file diff --git a/chart/mini-area/en/index.html b/chart/mini-area/en/index.html new file mode 100644 index 000000000..3e3c93060 --- /dev/null +++ b/chart/mini-area/en/index.html @@ -0,0 +1,75 @@ +g2-mini-area - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

迷你区域图
IMPORT MODULE

面积图又叫区域图。 它是在折线图的基础之上形成的, 它将折线图中折线与自变量坐标轴之间的区域使用颜色或者纹理填充,这样一个填充区域我们叫做面积,颜色的填充可以更好的突出趋势信息。

代码演示

基础

基础用法。

expand codeexpand code
import { Component } from '@angular/core';
+import { G2MiniAreaClickItem, G2MiniAreaData } from '@delon/chart/mini-area';
+import { format } from 'date-fns';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'chart-mini-area-basic',
+  template: `
+    <button nz-button (click)="refresh()" nzType="primary">Refresh</button>
+    <g2-mini-area line color="#cceafe" height="45" [data]="visitData" (clickItem)="handleClick($event)"></g2-mini-area>
+  `,
+})
+export class ChartMiniAreaBasicComponent {
+  visitData = this.genData();
+
+  constructor(private msg: NzMessageService) {}
+
+  private genData(): G2MiniAreaData[] {
+    const beginDay = new Date().getTime();
+    const res: G2MiniAreaData[] = [];
+    for (let i = 0; i < 20; i += 1) {
+      res.push({
+        x: format(new Date(beginDay + 1000 * 60 * 60 * 24 * i), 'yyyy-MM-dd'),
+        y: Math.floor(Math.random() * 100) + 10,
+      });
+    }
+    return res;
+  }
+
+  refresh(): void {
+    this.visitData = this.genData();
+  }
+
+  handleClick(data: G2MiniAreaClickItem): void {
+    this.msg.info(`${data.item.x} - ${data.item.y}`);
+  }
+}
Mini tooltip

指定 tooltipType 值来表示简化tooltip,可以更好的运用于表格。

expand codeexpand code
import { Component, OnInit } from '@angular/core';
+import { G2MiniAreaData } from '@delon/chart/mini-area';
+import { format } from 'date-fns';
+
+@Component({
+  selector: 'chart-mini-area-mini',
+  template: ` <g2-mini-area line color="#cceafe" height="45" [data]="visitData" tooltipType="mini"></g2-mini-area> `,
+})
+export class ChartMiniAreaMiniComponent implements OnInit {
+  visitData: G2MiniAreaData[] = [];
+  ngOnInit(): void {
+    const beginDay = new Date().getTime();
+    for (let i = 0; i < 20; i += 1) {
+      this.visitData.push({
+        x: format(new Date(beginDay + 1000 * 60 * 60 * 24 * i), 'yyyy-MM-dd'),
+        y: Math.floor(Math.random() * 100) + 10,
+      });
+    }
+  }
+}
Tooltip

指定 yTooltipSuffix 值来表示单位。

expand codeexpand code
import { Component, OnInit } from '@angular/core';
+import { G2MiniAreaData } from '@delon/chart/mini-area';
+import { format } from 'date-fns';
+
+@Component({
+  selector: 'chart-mini-area-tooltip',
+  template: ` <g2-mini-area line color="#cceafe" height="45" [data]="visitData" yTooltipSuffix="%"></g2-mini-area> `,
+})
+export class ChartMiniAreaTooltipComponent implements OnInit {
+  visitData: G2MiniAreaData[] = [];
+  ngOnInit(): void {
+    const beginDay = new Date().getTime();
+    for (let i = 0; i < 20; i += 1) {
+      this.visitData.push({
+        x: format(new Date(beginDay + 1000 * 60 * 60 * 24 * i), 'yyyy-MM-dd'),
+        y: Math.floor(Math.random() * 100) + 10,
+      });
+    }
+  }
+}

API

g2-mini-area

参数说明类型默认值
[repaint]数据再次变更时是否重绘booleantrue
[delay]延迟渲染,单位:毫秒number0
[color]图表颜色stringrgba(24, 144, 255, 0.2)
[borderColor]图表边颜色string#1890FF
[height]图表高度number56
[line]是否显示描边booleanfalse
[animate]是否显示动画booleantrue
[padding]图表内部间距array[8, 8, 8, 8]
[xAxis]x 轴配置object-
[yAxis]y 轴配置object-
[yTooltipSuffix]y 轴Tooltip后缀,一般指定单位string-
[tooltipType]Tooltip显示类型'mini','default''default'
[data]数据G2MiniAreaData[]-
[theme]定制图表主题string | LooseObject-
(clickItem)点击项回调EventEmitter<G2MiniAreaClickItem>-
(ready)当G2完成初始化后调用EventEmitter<Chart>-

G2MiniAreaData

参数说明类型默认值
[x]x轴any-
[y]y轴any-
\ No newline at end of file diff --git a/chart/mini-area/zh/index.html b/chart/mini-area/zh/index.html new file mode 100644 index 000000000..94e305006 --- /dev/null +++ b/chart/mini-area/zh/index.html @@ -0,0 +1,75 @@ +g2-mini-area - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

迷你区域图
IMPORT MODULE

面积图又叫区域图。 它是在折线图的基础之上形成的, 它将折线图中折线与自变量坐标轴之间的区域使用颜色或者纹理填充,这样一个填充区域我们叫做面积,颜色的填充可以更好的突出趋势信息。

代码演示

基础

基础用法。

expand codeexpand code
import { Component } from '@angular/core';
+import { G2MiniAreaClickItem, G2MiniAreaData } from '@delon/chart/mini-area';
+import { format } from 'date-fns';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'chart-mini-area-basic',
+  template: `
+    <button nz-button (click)="refresh()" nzType="primary">Refresh</button>
+    <g2-mini-area line color="#cceafe" height="45" [data]="visitData" (clickItem)="handleClick($event)"></g2-mini-area>
+  `,
+})
+export class ChartMiniAreaBasicComponent {
+  visitData = this.genData();
+
+  constructor(private msg: NzMessageService) {}
+
+  private genData(): G2MiniAreaData[] {
+    const beginDay = new Date().getTime();
+    const res: G2MiniAreaData[] = [];
+    for (let i = 0; i < 20; i += 1) {
+      res.push({
+        x: format(new Date(beginDay + 1000 * 60 * 60 * 24 * i), 'yyyy-MM-dd'),
+        y: Math.floor(Math.random() * 100) + 10,
+      });
+    }
+    return res;
+  }
+
+  refresh(): void {
+    this.visitData = this.genData();
+  }
+
+  handleClick(data: G2MiniAreaClickItem): void {
+    this.msg.info(`${data.item.x} - ${data.item.y}`);
+  }
+}
Mini tooltip

指定 tooltipType 值来表示简化tooltip,可以更好的运用于表格。

expand codeexpand code
import { Component, OnInit } from '@angular/core';
+import { G2MiniAreaData } from '@delon/chart/mini-area';
+import { format } from 'date-fns';
+
+@Component({
+  selector: 'chart-mini-area-mini',
+  template: ` <g2-mini-area line color="#cceafe" height="45" [data]="visitData" tooltipType="mini"></g2-mini-area> `,
+})
+export class ChartMiniAreaMiniComponent implements OnInit {
+  visitData: G2MiniAreaData[] = [];
+  ngOnInit(): void {
+    const beginDay = new Date().getTime();
+    for (let i = 0; i < 20; i += 1) {
+      this.visitData.push({
+        x: format(new Date(beginDay + 1000 * 60 * 60 * 24 * i), 'yyyy-MM-dd'),
+        y: Math.floor(Math.random() * 100) + 10,
+      });
+    }
+  }
+}
Tooltip

指定 yTooltipSuffix 值来表示单位。

expand codeexpand code
import { Component, OnInit } from '@angular/core';
+import { G2MiniAreaData } from '@delon/chart/mini-area';
+import { format } from 'date-fns';
+
+@Component({
+  selector: 'chart-mini-area-tooltip',
+  template: ` <g2-mini-area line color="#cceafe" height="45" [data]="visitData" yTooltipSuffix="%"></g2-mini-area> `,
+})
+export class ChartMiniAreaTooltipComponent implements OnInit {
+  visitData: G2MiniAreaData[] = [];
+  ngOnInit(): void {
+    const beginDay = new Date().getTime();
+    for (let i = 0; i < 20; i += 1) {
+      this.visitData.push({
+        x: format(new Date(beginDay + 1000 * 60 * 60 * 24 * i), 'yyyy-MM-dd'),
+        y: Math.floor(Math.random() * 100) + 10,
+      });
+    }
+  }
+}

API

g2-mini-area

参数说明类型默认值
[repaint]数据再次变更时是否重绘booleantrue
[delay]延迟渲染,单位:毫秒number0
[color]图表颜色stringrgba(24, 144, 255, 0.2)
[borderColor]图表边颜色string#1890FF
[height]图表高度number56
[line]是否显示描边booleanfalse
[animate]是否显示动画booleantrue
[padding]图表内部间距array[8, 8, 8, 8]
[xAxis]x 轴配置object-
[yAxis]y 轴配置object-
[yTooltipSuffix]y 轴Tooltip后缀,一般指定单位string-
[tooltipType]Tooltip显示类型'mini','default''default'
[data]数据G2MiniAreaData[]-
[theme]定制图表主题string | LooseObject-
(clickItem)点击项回调EventEmitter<G2MiniAreaClickItem>-
(ready)当G2完成初始化后调用EventEmitter<Chart>-

G2MiniAreaData

参数说明类型默认值
[x]x轴any-
[y]y轴any-
\ No newline at end of file diff --git a/chart/mini-bar/en/index.html b/chart/mini-bar/en/index.html new file mode 100644 index 000000000..1f50d600e --- /dev/null +++ b/chart/mini-bar/en/index.html @@ -0,0 +1,75 @@ +g2-mini-bar - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

迷你柱状图
IMPORT MODULE

迷你柱状图更适合展示简单的区间数据,简洁的表现方式可以很好的减少大数据量的视觉展现压力。

代码演示

基础

基础用法。

expand codeexpand code
import { Component } from '@angular/core';
+import { G2MiniAreaClickItem, G2MiniAreaData } from '@delon/chart/mini-area';
+import { format } from 'date-fns';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'chart-mini-bar-basic',
+  template: `
+    <button nz-button (click)="refresh()" nzType="primary">Refresh</button>
+    <g2-mini-bar height="45" [data]="visitData" (clickItem)="handleClick($event)"></g2-mini-bar>
+  `,
+})
+export class ChartMiniBarBasicComponent {
+  visitData = this.genData();
+
+  constructor(private msg: NzMessageService) {}
+
+  private genData(): G2MiniAreaData[] {
+    const beginDay = new Date().getTime();
+    const res: G2MiniAreaData[] = [];
+    for (let i = 0; i < 20; i += 1) {
+      res.push({
+        x: format(new Date(beginDay + 1000 * 60 * 60 * 24 * i), 'yyyy-MM-dd'),
+        y: Math.floor(Math.random() * 100) + 10,
+      });
+    }
+    return res;
+  }
+
+  refresh(): void {
+    this.visitData = this.genData();
+  }
+
+  handleClick(data: G2MiniAreaClickItem): void {
+    this.msg.info(`${data.item.x} - ${data.item.y}`);
+  }
+}
Tooltip

指定 yTooltipSuffix 值来表示单位。

expand codeexpand code
import { Component, OnInit } from '@angular/core';
+import { G2MiniBarData } from '@delon/chart/mini-bar';
+import { format } from 'date-fns';
+
+@Component({
+  selector: 'chart-mini-bar-tooltip',
+  template: ` <g2-mini-bar height="45" [data]="visitData" yTooltipSuffix="%"></g2-mini-bar> `,
+})
+export class ChartMiniBarTooltipComponent implements OnInit {
+  visitData: G2MiniBarData[] = [];
+  ngOnInit(): void {
+    const beginDay = new Date().getTime();
+    for (let i = 0; i < 20; i += 1) {
+      this.visitData.push({
+        x: format(new Date(beginDay + 1000 * 60 * 60 * 24 * i), 'yyyy-MM-dd'),
+        y: Math.floor(Math.random() * 100) + 10,
+      });
+    }
+  }
+}
Mini tooltip

指定 tooltipType 值来表示简化tooltip,可以更好的运用于表格。

expand codeexpand code
import { Component, OnInit } from '@angular/core';
+import { G2MiniBarData } from '@delon/chart/mini-bar';
+import { format } from 'date-fns';
+
+@Component({
+  selector: 'chart-mini-bar-mini',
+  template: ` <g2-mini-bar height="45" [data]="visitData" yTooltipSuffix="%" tooltipType="mini"></g2-mini-bar> `,
+})
+export class ChartMiniBarMiniComponent implements OnInit {
+  visitData: G2MiniBarData[] = [];
+  ngOnInit(): void {
+    const beginDay = new Date().getTime();
+    for (let i = 0; i < 20; i += 1) {
+      this.visitData.push({
+        x: format(new Date(beginDay + 1000 * 60 * 60 * 24 * i), 'yyyy-MM-dd'),
+        y: Math.floor(Math.random() * 100) + 10,
+      });
+    }
+  }
+}

API

g2-mini-bar

参数说明类型默认值
[repaint]数据再次变更时是否重绘booleantrue
[delay]延迟渲染,单位:毫秒number0
[color]图表颜色string#1890FF
[height]图表高度number-
[yTooltipSuffix]y 轴Tooltip后缀,一般指定单位string-
[tooltipType]Tooltip显示类型'mini','default''default'
[borderWidth]线条粗细number5
[padding]图表内部间距array[8, 8, 8, 8]
[data]数据G2MiniBarData[]-
[theme]定制图表主题string | LooseObject-
(clickItem)点击项回调EventEmitter<G2MiniBarClickItem>-
(ready)当G2完成初始化后调用EventEmitter<Chart>-

G2MiniBarData

参数说明类型默认值
[x]x轴any-
[y]y轴any-
[color]轴颜色string-
\ No newline at end of file diff --git a/chart/mini-bar/zh/index.html b/chart/mini-bar/zh/index.html new file mode 100644 index 000000000..6697124ee --- /dev/null +++ b/chart/mini-bar/zh/index.html @@ -0,0 +1,75 @@ +g2-mini-bar - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

迷你柱状图
IMPORT MODULE

迷你柱状图更适合展示简单的区间数据,简洁的表现方式可以很好的减少大数据量的视觉展现压力。

代码演示

基础

基础用法。

expand codeexpand code
import { Component } from '@angular/core';
+import { G2MiniAreaClickItem, G2MiniAreaData } from '@delon/chart/mini-area';
+import { format } from 'date-fns';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'chart-mini-bar-basic',
+  template: `
+    <button nz-button (click)="refresh()" nzType="primary">Refresh</button>
+    <g2-mini-bar height="45" [data]="visitData" (clickItem)="handleClick($event)"></g2-mini-bar>
+  `,
+})
+export class ChartMiniBarBasicComponent {
+  visitData = this.genData();
+
+  constructor(private msg: NzMessageService) {}
+
+  private genData(): G2MiniAreaData[] {
+    const beginDay = new Date().getTime();
+    const res: G2MiniAreaData[] = [];
+    for (let i = 0; i < 20; i += 1) {
+      res.push({
+        x: format(new Date(beginDay + 1000 * 60 * 60 * 24 * i), 'yyyy-MM-dd'),
+        y: Math.floor(Math.random() * 100) + 10,
+      });
+    }
+    return res;
+  }
+
+  refresh(): void {
+    this.visitData = this.genData();
+  }
+
+  handleClick(data: G2MiniAreaClickItem): void {
+    this.msg.info(`${data.item.x} - ${data.item.y}`);
+  }
+}
Tooltip

指定 yTooltipSuffix 值来表示单位。

expand codeexpand code
import { Component, OnInit } from '@angular/core';
+import { G2MiniBarData } from '@delon/chart/mini-bar';
+import { format } from 'date-fns';
+
+@Component({
+  selector: 'chart-mini-bar-tooltip',
+  template: ` <g2-mini-bar height="45" [data]="visitData" yTooltipSuffix="%"></g2-mini-bar> `,
+})
+export class ChartMiniBarTooltipComponent implements OnInit {
+  visitData: G2MiniBarData[] = [];
+  ngOnInit(): void {
+    const beginDay = new Date().getTime();
+    for (let i = 0; i < 20; i += 1) {
+      this.visitData.push({
+        x: format(new Date(beginDay + 1000 * 60 * 60 * 24 * i), 'yyyy-MM-dd'),
+        y: Math.floor(Math.random() * 100) + 10,
+      });
+    }
+  }
+}
Mini tooltip

指定 tooltipType 值来表示简化tooltip,可以更好的运用于表格。

expand codeexpand code
import { Component, OnInit } from '@angular/core';
+import { G2MiniBarData } from '@delon/chart/mini-bar';
+import { format } from 'date-fns';
+
+@Component({
+  selector: 'chart-mini-bar-mini',
+  template: ` <g2-mini-bar height="45" [data]="visitData" yTooltipSuffix="%" tooltipType="mini"></g2-mini-bar> `,
+})
+export class ChartMiniBarMiniComponent implements OnInit {
+  visitData: G2MiniBarData[] = [];
+  ngOnInit(): void {
+    const beginDay = new Date().getTime();
+    for (let i = 0; i < 20; i += 1) {
+      this.visitData.push({
+        x: format(new Date(beginDay + 1000 * 60 * 60 * 24 * i), 'yyyy-MM-dd'),
+        y: Math.floor(Math.random() * 100) + 10,
+      });
+    }
+  }
+}

API

g2-mini-bar

参数说明类型默认值
[repaint]数据再次变更时是否重绘booleantrue
[delay]延迟渲染,单位:毫秒number0
[color]图表颜色string#1890FF
[height]图表高度number-
[yTooltipSuffix]y 轴Tooltip后缀,一般指定单位string-
[tooltipType]Tooltip显示类型'mini','default''default'
[borderWidth]线条粗细number5
[padding]图表内部间距array[8, 8, 8, 8]
[data]数据G2MiniBarData[]-
[theme]定制图表主题string | LooseObject-
(clickItem)点击项回调EventEmitter<G2MiniBarClickItem>-
(ready)当G2完成初始化后调用EventEmitter<Chart>-

G2MiniBarData

参数说明类型默认值
[x]x轴any-
[y]y轴any-
[color]轴颜色string-
\ No newline at end of file diff --git a/chart/mini-progress/en/index.html b/chart/mini-progress/en/index.html new file mode 100644 index 000000000..240e312be --- /dev/null +++ b/chart/mini-progress/en/index.html @@ -0,0 +1,7 @@ +g2-mini-progress - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

迷你进度条
IMPORT MODULE

用于显示跟速度相关图形再适合不过。

代码演示

基础

基础用法。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'chart-mini-progress-basic',
+  template: ` <g2-mini-progress percent="78" strokeWidth="8" target="80"></g2-mini-progress> `,
+})
+export class ChartMiniProgressBasicComponent {}

API

g2-mini-progress

参数说明类型默认值
[target]目标比例number-
[color]进度条颜色string-
[strokeWidth]进度条高度number-
[percent]进度比例number-
\ No newline at end of file diff --git a/chart/mini-progress/zh/index.html b/chart/mini-progress/zh/index.html new file mode 100644 index 000000000..07678ec1a --- /dev/null +++ b/chart/mini-progress/zh/index.html @@ -0,0 +1,7 @@ +g2-mini-progress - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

迷你进度条
IMPORT MODULE

用于显示跟速度相关图形再适合不过。

代码演示

基础

基础用法。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'chart-mini-progress-basic',
+  template: ` <g2-mini-progress percent="78" strokeWidth="8" target="80"></g2-mini-progress> `,
+})
+export class ChartMiniProgressBasicComponent {}

API

g2-mini-progress

参数说明类型默认值
[target]目标比例number-
[color]进度条颜色string-
[strokeWidth]进度条高度number-
[percent]进度比例number-
\ No newline at end of file diff --git a/chart/number-info/en/index.html b/chart/number-info/en/index.html new file mode 100644 index 000000000..de5e24eff --- /dev/null +++ b/chart/number-info/en/index.html @@ -0,0 +1,23 @@ +number-info - NG-ALAIN

数据文本
IMPORT MODULE

常用在数据卡片中,用于突出展示某个业务数据。

代码演示

本周访问
12,32117.1
基本

各种数据文案的展现方式。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'chart-number-info-basic',
+  template: ` <number-info subTitle="本周访问" total="12,321" subTotal="17.1" status="up"></number-info> `,
+})
+export class ChartNumberInfoBasicComponent {}
今日访问
12,321
本周访问
12,32100
本月访问
12,32100000
多列

多个number-info组件在一起时增加分隔符。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'chart-number-info-multiple',
+  template: `
+    <number-info subTitle="今日访问" total="12,321"></number-info>
+    <number-info subTitle="本周访问" total="12,32100"></number-info>
+    <number-info subTitle="本月访问" total="12,32100000"></number-info>
+  `,
+})
+export class ChartNumberInfoMultipleComponent {}
本周访问
12,32117.1
主题

暗系。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'chart-number-info-theme',
+  template: ` <number-info subTitle="本周访问" total="12,321" subTotal="17.1" status="down" theme="default"></number-info> `,
+})
+export class ChartNumberInfoThemeComponent {}

API

number-info

参数说明类型默认值
[title]标题TemplateRef<void>-
[subTitle]子标题TemplateRef<void>-
[total]总量string, number-
[suffix]总量后缀string-
[subTotal]子总量string, number-
[status]增加状态'up','down'-
[theme]状态样式'light','default''light'
[gap]设置数字和描述直接的间距(像素)number8
\ No newline at end of file diff --git a/chart/number-info/zh/index.html b/chart/number-info/zh/index.html new file mode 100644 index 000000000..364e08589 --- /dev/null +++ b/chart/number-info/zh/index.html @@ -0,0 +1,23 @@ +number-info - NG-ALAIN

数据文本
IMPORT MODULE

常用在数据卡片中,用于突出展示某个业务数据。

代码演示

本周访问
12,32117.1
基本

各种数据文案的展现方式。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'chart-number-info-basic',
+  template: ` <number-info subTitle="本周访问" total="12,321" subTotal="17.1" status="up"></number-info> `,
+})
+export class ChartNumberInfoBasicComponent {}
今日访问
12,321
本周访问
12,32100
本月访问
12,32100000
多列

多个number-info组件在一起时增加分隔符。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'chart-number-info-multiple',
+  template: `
+    <number-info subTitle="今日访问" total="12,321"></number-info>
+    <number-info subTitle="本周访问" total="12,32100"></number-info>
+    <number-info subTitle="本月访问" total="12,32100000"></number-info>
+  `,
+})
+export class ChartNumberInfoMultipleComponent {}
本周访问
12,32117.1
主题

暗系。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'chart-number-info-theme',
+  template: ` <number-info subTitle="本周访问" total="12,321" subTotal="17.1" status="down" theme="default"></number-info> `,
+})
+export class ChartNumberInfoThemeComponent {}

API

number-info

参数说明类型默认值
[title]标题TemplateRef<void>-
[subTitle]子标题TemplateRef<void>-
[total]总量string, number-
[suffix]总量后缀string-
[subTotal]子总量string, number-
[status]增加状态'up','down'-
[theme]状态样式'light','default''light'
[gap]设置数字和描述直接的间距(像素)number8
\ No newline at end of file diff --git a/chart/pie/en/index.html b/chart/pie/en/index.html new file mode 100644 index 000000000..0202ed1f6 --- /dev/null +++ b/chart/pie/en/index.html @@ -0,0 +1,86 @@ +g2-pie - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

饼状图
IMPORT MODULE

用于显示跟速度相关图形再适合不过。

代码演示

销售额

¥ 13126.00
基础

基础用法。默认情况下丝滑更新数据的判断标准是以只更新 data 为准,这里利用 repaint 进行手动调用 changeData 改变数据达到丝滑更新的效果。

expand codeexpand code
import { Component, ViewChild } from '@angular/core';
+import { G2PieClickItem, G2PieComponent, G2PieData } from '@delon/chart/pie';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'chart-pie-basic',
+  template: `
+    <button nz-button (click)="refresh()" nzType="primary">Refresh</button>
+    <g2-pie
+      #pie
+      [hasLegend]="true"
+      title="销售额"
+      subTitle="销售额"
+      [total]="total"
+      [valueFormat]="format"
+      [data]="salesPieData"
+      height="294"
+      repaint="false"
+      (clickItem)="handleClick($event)"
+    ></g2-pie>
+  `,
+})
+export class ChartPieBasicComponent {
+  @ViewChild('pie', { static: false }) readonly pie!: G2PieComponent;
+  salesPieData: G2PieData[] = [];
+  total = '';
+
+  constructor(private msg: NzMessageService) {
+    this.refresh();
+  }
+
+  refresh(): void {
+    const rv = (min: number = 0, max: number = 5000) => Math.floor(Math.random() * (max - min + 1) + min);
+    this.salesPieData = [
+      {
+        x: '家用电器',
+        y: rv(),
+      },
+      {
+        x: '食用酒水',
+        y: rv(),
+      },
+      {
+        x: '个护健康',
+        y: rv(),
+      },
+      {
+        x: '服饰箱包',
+        y: rv(),
+      },
+      {
+        x: '母婴产品',
+        y: rv(),
+      },
+    ];
+    if (Math.random() > 0.5) {
+      this.salesPieData.push({
+        x: '其他',
+        y: rv(),
+      });
+    }
+    this.total = `&yen ${this.salesPieData.reduce((pre, now) => now.y + pre, 0).toFixed(2)}`;
+    if (this.pie) {
+      // 等待组件渲染
+      setTimeout(() => this.pie.changeData());
+    }
+  }
+
+  format(val: number): string {
+    return `&yen ${val.toFixed(2)}`;
+  }
+
+  handleClick(data: G2PieClickItem): void {
+    this.msg.info(`${data.item.x} - ${data.item.y}`);
+  }
+}

中式快餐

28%
迷你型

通过简化 pie 属性的设置,可以快速的实现极简的饼状图,可配合 chart-card 组合展现更多业务场景。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'chart-pie-mini',
+  template: `
+    <div style="width: 200px; display: inline-block">
+      <g2-pie percent="28" subTitle="中式快餐" total="28%" height="130"></g2-pie>
+    </div>
+  `,
+})
+export class ChartPieMiniComponent {}

API

g2-pie

参数说明类型默认值
[repaint]数据再次变更时是否重绘booleantrue
[delay]延迟渲染,单位:毫秒number0
[animate]是否显示动画booleantrue
[color]图表颜色stringrgba(24, 144, 255, 0.85)
[height]图表高度number-
[hasLegend]是否显示 legendbooleanfalse
[padding]图表内部间距number[][12, 0, 12, 0]
[percent]占比number-
[lineWidth]边框粗细number0
[inner]内部极坐标系的半径number0.75
[blockMaxWidth]多少宽度为块显示number380
[tooltip]是否显示 tooltipbooleantrue
[subTitle]图表子标题string,TemplateRef<void>-
[total]总量string,number,TemplateRef<void>-
[valueFormat]y轴格式化(y: number) => string-
[data]数据G2PieData[]-
[colors]颜色列表string[]-
[interaction]交互类型,none 无 element-active 图形元素,active-region 图表组件,brush 框选,drag-move 移动InteractionTypenone
[ratio]百分比配置项G2PieRatio{ text: '占比', inverse: '反比', color: '', inverseColor: '#F0F2F5' }
[theme]定制图表主题string | LooseObject-
(clickItem)点击项回调EventEmitter<G2PieClickItem>-
(ready)当G2完成初始化后调用EventEmitter<Chart>-

G2PieData

参数说明类型默认值
[x]x轴any-
[y]y轴number-
\ No newline at end of file diff --git a/chart/pie/zh/index.html b/chart/pie/zh/index.html new file mode 100644 index 000000000..b6f4a742f --- /dev/null +++ b/chart/pie/zh/index.html @@ -0,0 +1,86 @@ +g2-pie - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

饼状图
IMPORT MODULE

用于显示跟速度相关图形再适合不过。

代码演示

销售额

¥ 17538.00
基础

基础用法。默认情况下丝滑更新数据的判断标准是以只更新 data 为准,这里利用 repaint 进行手动调用 changeData 改变数据达到丝滑更新的效果。

expand codeexpand code
import { Component, ViewChild } from '@angular/core';
+import { G2PieClickItem, G2PieComponent, G2PieData } from '@delon/chart/pie';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'chart-pie-basic',
+  template: `
+    <button nz-button (click)="refresh()" nzType="primary">Refresh</button>
+    <g2-pie
+      #pie
+      [hasLegend]="true"
+      title="销售额"
+      subTitle="销售额"
+      [total]="total"
+      [valueFormat]="format"
+      [data]="salesPieData"
+      height="294"
+      repaint="false"
+      (clickItem)="handleClick($event)"
+    ></g2-pie>
+  `,
+})
+export class ChartPieBasicComponent {
+  @ViewChild('pie', { static: false }) readonly pie!: G2PieComponent;
+  salesPieData: G2PieData[] = [];
+  total = '';
+
+  constructor(private msg: NzMessageService) {
+    this.refresh();
+  }
+
+  refresh(): void {
+    const rv = (min: number = 0, max: number = 5000) => Math.floor(Math.random() * (max - min + 1) + min);
+    this.salesPieData = [
+      {
+        x: '家用电器',
+        y: rv(),
+      },
+      {
+        x: '食用酒水',
+        y: rv(),
+      },
+      {
+        x: '个护健康',
+        y: rv(),
+      },
+      {
+        x: '服饰箱包',
+        y: rv(),
+      },
+      {
+        x: '母婴产品',
+        y: rv(),
+      },
+    ];
+    if (Math.random() > 0.5) {
+      this.salesPieData.push({
+        x: '其他',
+        y: rv(),
+      });
+    }
+    this.total = `&yen ${this.salesPieData.reduce((pre, now) => now.y + pre, 0).toFixed(2)}`;
+    if (this.pie) {
+      // 等待组件渲染
+      setTimeout(() => this.pie.changeData());
+    }
+  }
+
+  format(val: number): string {
+    return `&yen ${val.toFixed(2)}`;
+  }
+
+  handleClick(data: G2PieClickItem): void {
+    this.msg.info(`${data.item.x} - ${data.item.y}`);
+  }
+}

中式快餐

28%
迷你型

通过简化 pie 属性的设置,可以快速的实现极简的饼状图,可配合 chart-card 组合展现更多业务场景。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'chart-pie-mini',
+  template: `
+    <div style="width: 200px; display: inline-block">
+      <g2-pie percent="28" subTitle="中式快餐" total="28%" height="130"></g2-pie>
+    </div>
+  `,
+})
+export class ChartPieMiniComponent {}

API

g2-pie

参数说明类型默认值
[repaint]数据再次变更时是否重绘booleantrue
[delay]延迟渲染,单位:毫秒number0
[animate]是否显示动画booleantrue
[color]图表颜色stringrgba(24, 144, 255, 0.85)
[height]图表高度number-
[hasLegend]是否显示 legendbooleanfalse
[padding]图表内部间距number[][12, 0, 12, 0]
[percent]占比number-
[lineWidth]边框粗细number0
[inner]内部极坐标系的半径number0.75
[blockMaxWidth]多少宽度为块显示number380
[tooltip]是否显示 tooltipbooleantrue
[subTitle]图表子标题string,TemplateRef<void>-
[total]总量string,number,TemplateRef<void>-
[valueFormat]y轴格式化(y: number) => string-
[data]数据G2PieData[]-
[colors]颜色列表string[]-
[interaction]交互类型,none 无 element-active 图形元素,active-region 图表组件,brush 框选,drag-move 移动InteractionTypenone
[ratio]百分比配置项G2PieRatio{ text: '占比', inverse: '反比', color: '', inverseColor: '#F0F2F5' }
[theme]定制图表主题string | LooseObject-
(clickItem)点击项回调EventEmitter<G2PieClickItem>-
(ready)当G2完成初始化后调用EventEmitter<Chart>-

G2PieData

参数说明类型默认值
[x]x轴any-
[y]y轴number-
\ No newline at end of file diff --git a/chart/radar/en/index.html b/chart/radar/en/index.html new file mode 100644 index 000000000..bd66b7aa2 --- /dev/null +++ b/chart/radar/en/index.html @@ -0,0 +1,57 @@ +g2-radar - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

雷达图
IMPORT MODULE

雷达图是以相同点开始的轴上表示的三个或更多个定量变量的二维图形的形式显示多变量数据的图形方法。轴的相对位置和角度通常是不知情的。

代码演示

基础

基础用法。

expand codeexpand code
import { Component } from '@angular/core';
+import { G2RadarClickItem, G2RadarData } from '@delon/chart/radar';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'chart-radar-basic',
+  template: `
+    <button nz-button (click)="refresh()" nzType="primary">Refresh</button>
+    <g2-radar [hasLegend]="true" [data]="radarData" height="286" (clickItem)="handleClick($event)"></g2-radar>
+  `,
+})
+export class ChartRadarBasicComponent {
+  radarData: G2RadarData[] = [];
+
+  constructor(private msg: NzMessageService) {
+    this.refresh();
+  }
+
+  refresh(): void {
+    const rv = (min: number = 1, max: number = 10) => Math.floor(Math.random() * (max - min + 1) + min);
+    const radarOriginData = ['个人', '团队', '部门'].map(name => ({
+      name,
+      ref: rv(),
+      koubei: rv(),
+      output: rv(),
+      contribute: rv(),
+      hot: rv(),
+    }));
+    const radarTitleMap: { [key: string]: string } = {
+      ref: '引用',
+      koubei: '口碑',
+      output: '产量',
+      contribute: '贡献',
+      hot: '热度',
+    };
+    if (Math.random() > 0.5) {
+      delete radarTitleMap.hot;
+    }
+    const res: G2RadarData[] = [];
+    radarOriginData.forEach((item: { [key: string]: any }) => {
+      Object.keys(item).forEach(key => {
+        if (key !== 'name') {
+          res.push({
+            name: item.name,
+            label: radarTitleMap[key],
+            value: item[key],
+          });
+        }
+      });
+    });
+    this.radarData = res;
+  }
+
+  handleClick(data: G2RadarClickItem): void {
+    this.msg.info(`${data.item.label} - ${data.item.name} - ${data.item.value}`);
+  }
+}

API

g2-radar

参数说明类型默认值
[repaint]数据再次变更时是否重绘booleantrue
[delay]延迟渲染,单位:毫秒number0
[title]图表标题string,TemplateRef<void>-
[height]图表高度number-
[hasLegend]是否显示 legendbooleanfalse
[padding]图表内部间距array[24, 30, 16, 30]
[colors]颜色列表string[]-
[data]数据G2RadarData[]-
[theme]定制图表主题string | LooseObject-
(clickItem)点击项回调EventEmitter<G2RadarClickItem>-
(ready)当G2完成初始化后调用EventEmitter<Chart>-

G2RadarData

参数说明类型默认值
[name]名称string-
[label]标签string-
[value]number-
\ No newline at end of file diff --git a/chart/radar/zh/index.html b/chart/radar/zh/index.html new file mode 100644 index 000000000..2bf2ce763 --- /dev/null +++ b/chart/radar/zh/index.html @@ -0,0 +1,57 @@ +g2-radar - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

雷达图
IMPORT MODULE

雷达图是以相同点开始的轴上表示的三个或更多个定量变量的二维图形的形式显示多变量数据的图形方法。轴的相对位置和角度通常是不知情的。

代码演示

基础

基础用法。

expand codeexpand code
import { Component } from '@angular/core';
+import { G2RadarClickItem, G2RadarData } from '@delon/chart/radar';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'chart-radar-basic',
+  template: `
+    <button nz-button (click)="refresh()" nzType="primary">Refresh</button>
+    <g2-radar [hasLegend]="true" [data]="radarData" height="286" (clickItem)="handleClick($event)"></g2-radar>
+  `,
+})
+export class ChartRadarBasicComponent {
+  radarData: G2RadarData[] = [];
+
+  constructor(private msg: NzMessageService) {
+    this.refresh();
+  }
+
+  refresh(): void {
+    const rv = (min: number = 1, max: number = 10) => Math.floor(Math.random() * (max - min + 1) + min);
+    const radarOriginData = ['个人', '团队', '部门'].map(name => ({
+      name,
+      ref: rv(),
+      koubei: rv(),
+      output: rv(),
+      contribute: rv(),
+      hot: rv(),
+    }));
+    const radarTitleMap: { [key: string]: string } = {
+      ref: '引用',
+      koubei: '口碑',
+      output: '产量',
+      contribute: '贡献',
+      hot: '热度',
+    };
+    if (Math.random() > 0.5) {
+      delete radarTitleMap.hot;
+    }
+    const res: G2RadarData[] = [];
+    radarOriginData.forEach((item: { [key: string]: any }) => {
+      Object.keys(item).forEach(key => {
+        if (key !== 'name') {
+          res.push({
+            name: item.name,
+            label: radarTitleMap[key],
+            value: item[key],
+          });
+        }
+      });
+    });
+    this.radarData = res;
+  }
+
+  handleClick(data: G2RadarClickItem): void {
+    this.msg.info(`${data.item.label} - ${data.item.name} - ${data.item.value}`);
+  }
+}

API

g2-radar

参数说明类型默认值
[repaint]数据再次变更时是否重绘booleantrue
[delay]延迟渲染,单位:毫秒number0
[title]图表标题string,TemplateRef<void>-
[height]图表高度number-
[hasLegend]是否显示 legendbooleanfalse
[padding]图表内部间距array[24, 30, 16, 30]
[colors]颜色列表string[]-
[data]数据G2RadarData[]-
[theme]定制图表主题string | LooseObject-
(clickItem)点击项回调EventEmitter<G2RadarClickItem>-
(ready)当G2完成初始化后调用EventEmitter<Chart>-

G2RadarData

参数说明类型默认值
[name]名称string-
[label]标签string-
[value]number-
\ No newline at end of file diff --git a/chart/single-bar/en/index.html b/chart/single-bar/en/index.html new file mode 100644 index 000000000..73fda8723 --- /dev/null +++ b/chart/single-bar/en/index.html @@ -0,0 +1,50 @@ +g2-single-bar - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

单一柱状图
IMPORT MODULE

单一柱状图更适合在列表中展示简单的区间数据,简洁的表现方式可以很好的减少大数据量的视觉展现压力。

代码演示

序号服务调用次数数据有负值
1
2
3
4
5
基础

基础用法。

expand codeexpand code
import { Component, ViewEncapsulation } from '@angular/core';
+
+@Component({
+  selector: 'chart-single-bar-basic',
+  template: `
+    <button nz-button (click)="refresh()" nzType="primary">Refresh</button>
+    <nz-table [nzData]="list" [nzShowPagination]="false">
+      <thead>
+        <tr>
+          <th>序号</th>
+          <th nzWidth="350px">服务调用次数</th>
+          <th nzWidth="350px">数据有负值</th>
+        </tr>
+      </thead>
+      <tbody>
+        <tr *ngFor="let i of list; let idx = index">
+          <td>{{ idx + 1 }}</td>
+          <td>
+            <g2-single-bar height="24" [value]="i.value"></g2-single-bar>
+          </td>
+          <td>
+            <g2-single-bar height="60" [value]="i.other" min="-100" line></g2-single-bar>
+          </td>
+        </tr>
+      </tbody>
+    </nz-table>
+  `,
+  styles: [
+    `
+      :host ::ng-deep .ant-table tbody > tr > td {
+        padding: 0;
+      }
+    `,
+  ],
+  encapsulation: ViewEncapsulation.Emulated,
+})
+export class ChartSingleBarBasicComponent {
+  list: Array<{ id: number; value: number; other: number }> = new Array(5).fill({}).map(() => ({
+    id: Math.floor(Math.random() * 10000),
+    value: Math.floor(Math.random() * 100),
+    other: Math.floor(Math.random() * 100) > 50 ? Math.floor(Math.random() * 100) : -Math.floor(Math.random() * 100),
+  }));
+
+  refresh(): void {
+    this.list.forEach(v => {
+      v.value = Math.floor(Math.random() * 100);
+      v.other = Math.floor(Math.random() * 100) > 50 ? Math.floor(Math.random() * 100) : -Math.floor(Math.random() * 100);
+    });
+  }
+}

API

g2-single-bar

参数说明类型默认值
[repaint]数据再次变更时是否重绘booleantrue
[delay]延迟渲染,单位:毫秒number0
[plusColor]图表颜色string#40a9ff
[minusColor]负值图表颜色string#ff4d4f
[height]图表高度number60
[barSize]柱状高度number30
[min]最小值number0
[max]最大值,若小于0表示显示负值number100
[padding]图表内部间距any0
[value]number0
[format]显示值格式(value: number) => string-
[textStyle]显示值样式any{ fontSize: 12, color: '#595959' }
[theme]定制图表主题string | LooseObject-
(ready)当G2完成初始化后调用EventEmitter<Chart>-
\ No newline at end of file diff --git a/chart/single-bar/zh/index.html b/chart/single-bar/zh/index.html new file mode 100644 index 000000000..7e4a7163f --- /dev/null +++ b/chart/single-bar/zh/index.html @@ -0,0 +1,50 @@ +g2-single-bar - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

单一柱状图
IMPORT MODULE

单一柱状图更适合在列表中展示简单的区间数据,简洁的表现方式可以很好的减少大数据量的视觉展现压力。

代码演示

序号服务调用次数数据有负值
1
2
3
4
5
基础

基础用法。

expand codeexpand code
import { Component, ViewEncapsulation } from '@angular/core';
+
+@Component({
+  selector: 'chart-single-bar-basic',
+  template: `
+    <button nz-button (click)="refresh()" nzType="primary">Refresh</button>
+    <nz-table [nzData]="list" [nzShowPagination]="false">
+      <thead>
+        <tr>
+          <th>序号</th>
+          <th nzWidth="350px">服务调用次数</th>
+          <th nzWidth="350px">数据有负值</th>
+        </tr>
+      </thead>
+      <tbody>
+        <tr *ngFor="let i of list; let idx = index">
+          <td>{{ idx + 1 }}</td>
+          <td>
+            <g2-single-bar height="24" [value]="i.value"></g2-single-bar>
+          </td>
+          <td>
+            <g2-single-bar height="60" [value]="i.other" min="-100" line></g2-single-bar>
+          </td>
+        </tr>
+      </tbody>
+    </nz-table>
+  `,
+  styles: [
+    `
+      :host ::ng-deep .ant-table tbody > tr > td {
+        padding: 0;
+      }
+    `,
+  ],
+  encapsulation: ViewEncapsulation.Emulated,
+})
+export class ChartSingleBarBasicComponent {
+  list: Array<{ id: number; value: number; other: number }> = new Array(5).fill({}).map(() => ({
+    id: Math.floor(Math.random() * 10000),
+    value: Math.floor(Math.random() * 100),
+    other: Math.floor(Math.random() * 100) > 50 ? Math.floor(Math.random() * 100) : -Math.floor(Math.random() * 100),
+  }));
+
+  refresh(): void {
+    this.list.forEach(v => {
+      v.value = Math.floor(Math.random() * 100);
+      v.other = Math.floor(Math.random() * 100) > 50 ? Math.floor(Math.random() * 100) : -Math.floor(Math.random() * 100);
+    });
+  }
+}

API

g2-single-bar

参数说明类型默认值
[repaint]数据再次变更时是否重绘booleantrue
[delay]延迟渲染,单位:毫秒number0
[plusColor]图表颜色string#40a9ff
[minusColor]负值图表颜色string#ff4d4f
[height]图表高度number60
[barSize]柱状高度number30
[min]最小值number0
[max]最大值,若小于0表示显示负值number100
[padding]图表内部间距any0
[value]number0
[format]显示值格式(value: number) => string-
[textStyle]显示值样式any{ fontSize: 12, color: '#595959' }
[theme]定制图表主题string | LooseObject-
(ready)当G2完成初始化后调用EventEmitter<Chart>-
\ No newline at end of file diff --git a/chart/tag-cloud/en/index.html b/chart/tag-cloud/en/index.html new file mode 100644 index 000000000..04cf29abd --- /dev/null +++ b/chart/tag-cloud/en/index.html @@ -0,0 +1,209 @@ +g2-tag-cloud - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

标签云
IMPORT MODULE

标签云是一套相关的标签以及与此相应的权重展示方式,一般典型的标签云有 30 至 150 个标签,而权重影响使用的字体大小或其他视觉效果。

代码演示

基础

基础用法。

expand codeexpand code
import { Component } from '@angular/core';
+import { G2TagCloudClickItem, G2TagCloudData } from '@delon/chart/tag-cloud';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'chart-tag-cloud-basic',
+  template: `
+    <button nz-button (click)="refresh()" nzType="primary">Refresh</button>
+    <g2-tag-cloud [data]="tags" height="400" (clickItem)="handleClick($event)"></g2-tag-cloud>
+  `,
+})
+export class ChartTagCloudBasicComponent {
+  tags: G2TagCloudData[] = [];
+
+  constructor(private msg: NzMessageService) {
+    this.refresh();
+  }
+
+  refresh(): void {
+    const rv = (min: number = 1, max: number = 10) => Math.floor(Math.random() * (max - min + 1) + min);
+
+    this.tags = [
+      { value: rv(), name: 'NG-ALAIN' },
+      { value: rv(), name: 'AntV' },
+      { value: rv(), name: 'F2' },
+      { value: rv(), name: 'G2' },
+      { value: rv(), name: 'G6' },
+      { value: rv(), name: 'DataSet' },
+      { value: rv(), name: '墨者学院' },
+      { value: rv(), name: 'Analysis' },
+      { value: rv(), name: 'Data Mining' },
+      { value: rv(), name: 'Data Vis' },
+      { value: rv(), name: 'Design' },
+      { value: rv(), name: 'Grammar' },
+      { value: rv(), name: 'Graphics' },
+      { value: rv(), name: 'Graph' },
+      { value: rv(), name: 'Hierarchy' },
+      { value: rv(), name: 'Labeling' },
+      { value: rv(), name: 'Layout' },
+      { value: rv(), name: 'Quantitative' },
+      { value: rv(), name: 'Relation' },
+      { value: rv(), name: 'Statistics' },
+      { value: rv(), name: '可视化' },
+      { value: rv(), name: '数据' },
+      { value: rv(), name: '数据可视化' },
+      { value: rv(), name: 'Arc Diagram' },
+      { value: rv(), name: 'Bar Chart' },
+      { value: rv(), name: 'Canvas' },
+      { value: rv(), name: 'Chart' },
+      { value: rv(), name: 'DAG' },
+      { value: rv(), name: 'DG' },
+      { value: rv(), name: 'Facet' },
+      { value: rv(), name: 'Geo' },
+      { value: rv(), name: 'Line' },
+      { value: rv(), name: 'MindMap' },
+      { value: rv(), name: 'Pie' },
+      { value: rv(), name: 'Pizza Chart' },
+      { value: rv(), name: 'Punch Card' },
+      { value: rv(), name: 'SVG' },
+      { value: rv(), name: 'Sunburst' },
+      { value: rv(), name: 'Tree' },
+      { value: rv(), name: 'UML' },
+      { value: rv(), name: 'Chart' },
+      { value: rv(), name: 'View' },
+      { value: rv(), name: 'Geom' },
+      { value: rv(), name: 'Shape' },
+      { value: rv(), name: 'Scale' },
+      { value: rv(), name: 'Animate' },
+      { value: rv(), name: 'Global' },
+      { value: rv(), name: 'Slider' },
+      { value: rv(), name: 'Connector' },
+      { value: rv(), name: 'Transform' },
+      { value: rv(), name: 'Util' },
+      { value: rv(), name: 'DomUtil' },
+      { value: rv(), name: 'MatrixUtil' },
+      { value: rv(), name: 'PathUtil' },
+      { value: rv(), name: 'G' },
+      { value: rv(), name: '2D' },
+      { value: rv(), name: '3D' },
+      { value: rv(), name: 'Line' },
+      { value: rv(), name: 'Area' },
+      { value: rv(), name: 'Interval' },
+      { value: rv(), name: 'Schema' },
+      { value: rv(), name: 'Edge' },
+      { value: rv(), name: 'Polygon' },
+      { value: rv(), name: 'Heatmap' },
+      { value: rv(), name: 'Render' },
+      { value: rv(), name: 'Tooltip' },
+      { value: rv(), name: 'Axis' },
+      { value: rv(), name: 'Guide' },
+      { value: rv(), name: 'Coord' },
+      { value: rv(), name: 'Legend' },
+      { value: rv(), name: 'Path' },
+      { value: rv(), name: 'Helix' },
+      { value: rv(), name: 'Theta' },
+      { value: rv(), name: 'Rect' },
+      { value: rv(), name: 'Polar' },
+      { value: rv(), name: 'Dsv' },
+      { value: rv(), name: 'Csv' },
+      { value: rv(), name: 'Tsv' },
+      { value: rv(), name: 'GeoJSON' },
+      { value: rv(), name: 'TopoJSON' },
+      { value: rv(), name: 'Filter' },
+      { value: rv(), name: 'Map' },
+      { value: rv(), name: 'Pick' },
+      { value: rv(), name: 'Rename' },
+      { value: rv(), name: 'Filter' },
+      { value: rv(), name: 'Map' },
+      { value: rv(), name: 'Pick' },
+      { value: rv(), name: 'Rename' },
+      { value: rv(), name: 'Reverse' },
+      { value: rv(), name: 'sort' },
+      { value: rv(), name: 'Subset' },
+      { value: rv(), name: 'Partition' },
+      { value: rv(), name: 'Imputation' },
+      { value: rv(), name: 'Fold' },
+      { value: rv(), name: 'Aggregate' },
+      { value: rv(), name: 'Proportion' },
+      { value: rv(), name: 'Histogram' },
+      { value: rv(), name: 'Quantile' },
+      { value: rv(), name: 'Treemap' },
+      { value: rv(), name: 'Hexagon' },
+      { value: rv(), name: 'Binning' },
+      { value: rv(), name: 'kernel' },
+      { value: rv(), name: 'Regression' },
+      { value: rv(), name: 'Density' },
+      { value: rv(), name: 'Sankey' },
+      { value: rv(), name: 'Voronoi' },
+      { value: rv(), name: 'Projection' },
+      { value: rv(), name: 'Centroid' },
+      { value: rv(), name: 'H5' },
+      { value: rv(), name: 'Mobile' },
+      { value: rv(), name: 'K线图' },
+      { value: rv(), name: '关系图' },
+      { value: rv(), name: '烛形图' },
+      { value: rv(), name: '股票图' },
+      { value: rv(), name: '直方图' },
+      { value: rv(), name: '金字塔图' },
+      { value: rv(), name: '分面' },
+      { value: rv(), name: '南丁格尔玫瑰图' },
+      { value: rv(), name: '饼图' },
+      { value: rv(), name: '线图' },
+      { value: rv(), name: '点图' },
+      { value: rv(), name: '散点图' },
+      { value: rv(), name: '子弹图' },
+      { value: rv(), name: '柱状图' },
+      { value: rv(), name: '仪表盘' },
+      { value: rv(), name: '气泡图' },
+      { value: rv(), name: '漏斗图' },
+      { value: rv(), name: '热力图' },
+      { value: rv(), name: '玉玦图' },
+      { value: rv(), name: '直方图' },
+      { value: rv(), name: '矩形树图' },
+      { value: rv(), name: '箱形图' },
+      { value: rv(), name: '色块图' },
+      { value: rv(), name: '螺旋图' },
+      { value: rv(), name: '词云' },
+      { value: rv(), name: '词云图' },
+      { value: rv(), name: '雷达图' },
+      { value: rv(), name: '面积图' },
+      { value: rv(), name: '马赛克图' },
+      { value: rv(), name: '盒须图' },
+      { value: rv(), name: '坐标轴' },
+      { value: rv(), name: '' },
+      { value: rv(), name: 'Jacques Bertin' },
+      { value: rv(), name: 'Leland Wilkinson' },
+      { value: rv(), name: 'William Playfair' },
+      { value: rv(), name: '关联' },
+      { value: rv(), name: '分布' },
+      { value: rv(), name: '区间' },
+      { value: rv(), name: '占比' },
+      { value: rv(), name: '地图' },
+      { value: rv(), name: '时间' },
+      { value: rv(), name: '比较' },
+      { value: rv(), name: '流程' },
+      { value: rv(), name: '趋势' },
+      { value: rv(), name: '亦叶' },
+      { value: rv(), name: '再飞' },
+      { value: rv(), name: '完白' },
+      { value: rv(), name: '巴思' },
+      { value: rv(), name: '张初尘' },
+      { value: rv(), name: '御术' },
+      { value: rv(), name: '有田' },
+      { value: rv(), name: '沉鱼' },
+      { value: rv(), name: '玉伯' },
+      { value: rv(), name: '画康' },
+      { value: rv(), name: '祯逸' },
+      { value: rv(), name: '绝云' },
+      { value: rv(), name: '罗宪' },
+      { value: rv(), name: '萧庆' },
+      { value: rv(), name: '董珊珊' },
+      { value: rv(), name: '陆沉' },
+      { value: rv(), name: '顾倾' },
+      { value: rv(), name: 'Domo' },
+      { value: rv(), name: 'GPL' },
+      { value: rv(), name: 'PAI' },
+      { value: rv(), name: 'SPSS' },
+      { value: rv(), name: 'SYSTAT' },
+      { value: rv(), name: 'Tableau' },
+      { value: rv(), name: 'D3' },
+      { value: rv(), name: 'Vega' },
+      { value: rv(), name: '统计图表' },
+    ];
+  }
+
+  handleClick(data: G2TagCloudClickItem): void {
+    this.msg.info(`${data.item.name} - ${data.item.value}`);
+  }
+}

API

g2-tag-cloud

参数说明类型默认值
[repaint]数据再次变更时是否重绘booleantrue
[delay]延迟渲染,单位:毫秒number200
[height]高度值number200
[width]宽度值,若不指定自动按宿主元素的宽度number0
[data]数据G2TagCloudData[][]
[theme]定制图表主题string | LooseObject-
(clickItem)点击项回调EventEmitter<G2TagCloudClickItem>-
(ready)当G2完成初始化后调用EventEmitter<Chart>-

G2TagCloudData

参数说明类型默认值
[name]名称string-
[value]number-
\ No newline at end of file diff --git a/chart/tag-cloud/zh/index.html b/chart/tag-cloud/zh/index.html new file mode 100644 index 000000000..4b80137e8 --- /dev/null +++ b/chart/tag-cloud/zh/index.html @@ -0,0 +1,209 @@ +g2-tag-cloud - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

标签云
IMPORT MODULE

标签云是一套相关的标签以及与此相应的权重展示方式,一般典型的标签云有 30 至 150 个标签,而权重影响使用的字体大小或其他视觉效果。

代码演示

基础

基础用法。

expand codeexpand code
import { Component } from '@angular/core';
+import { G2TagCloudClickItem, G2TagCloudData } from '@delon/chart/tag-cloud';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'chart-tag-cloud-basic',
+  template: `
+    <button nz-button (click)="refresh()" nzType="primary">Refresh</button>
+    <g2-tag-cloud [data]="tags" height="400" (clickItem)="handleClick($event)"></g2-tag-cloud>
+  `,
+})
+export class ChartTagCloudBasicComponent {
+  tags: G2TagCloudData[] = [];
+
+  constructor(private msg: NzMessageService) {
+    this.refresh();
+  }
+
+  refresh(): void {
+    const rv = (min: number = 1, max: number = 10) => Math.floor(Math.random() * (max - min + 1) + min);
+
+    this.tags = [
+      { value: rv(), name: 'NG-ALAIN' },
+      { value: rv(), name: 'AntV' },
+      { value: rv(), name: 'F2' },
+      { value: rv(), name: 'G2' },
+      { value: rv(), name: 'G6' },
+      { value: rv(), name: 'DataSet' },
+      { value: rv(), name: '墨者学院' },
+      { value: rv(), name: 'Analysis' },
+      { value: rv(), name: 'Data Mining' },
+      { value: rv(), name: 'Data Vis' },
+      { value: rv(), name: 'Design' },
+      { value: rv(), name: 'Grammar' },
+      { value: rv(), name: 'Graphics' },
+      { value: rv(), name: 'Graph' },
+      { value: rv(), name: 'Hierarchy' },
+      { value: rv(), name: 'Labeling' },
+      { value: rv(), name: 'Layout' },
+      { value: rv(), name: 'Quantitative' },
+      { value: rv(), name: 'Relation' },
+      { value: rv(), name: 'Statistics' },
+      { value: rv(), name: '可视化' },
+      { value: rv(), name: '数据' },
+      { value: rv(), name: '数据可视化' },
+      { value: rv(), name: 'Arc Diagram' },
+      { value: rv(), name: 'Bar Chart' },
+      { value: rv(), name: 'Canvas' },
+      { value: rv(), name: 'Chart' },
+      { value: rv(), name: 'DAG' },
+      { value: rv(), name: 'DG' },
+      { value: rv(), name: 'Facet' },
+      { value: rv(), name: 'Geo' },
+      { value: rv(), name: 'Line' },
+      { value: rv(), name: 'MindMap' },
+      { value: rv(), name: 'Pie' },
+      { value: rv(), name: 'Pizza Chart' },
+      { value: rv(), name: 'Punch Card' },
+      { value: rv(), name: 'SVG' },
+      { value: rv(), name: 'Sunburst' },
+      { value: rv(), name: 'Tree' },
+      { value: rv(), name: 'UML' },
+      { value: rv(), name: 'Chart' },
+      { value: rv(), name: 'View' },
+      { value: rv(), name: 'Geom' },
+      { value: rv(), name: 'Shape' },
+      { value: rv(), name: 'Scale' },
+      { value: rv(), name: 'Animate' },
+      { value: rv(), name: 'Global' },
+      { value: rv(), name: 'Slider' },
+      { value: rv(), name: 'Connector' },
+      { value: rv(), name: 'Transform' },
+      { value: rv(), name: 'Util' },
+      { value: rv(), name: 'DomUtil' },
+      { value: rv(), name: 'MatrixUtil' },
+      { value: rv(), name: 'PathUtil' },
+      { value: rv(), name: 'G' },
+      { value: rv(), name: '2D' },
+      { value: rv(), name: '3D' },
+      { value: rv(), name: 'Line' },
+      { value: rv(), name: 'Area' },
+      { value: rv(), name: 'Interval' },
+      { value: rv(), name: 'Schema' },
+      { value: rv(), name: 'Edge' },
+      { value: rv(), name: 'Polygon' },
+      { value: rv(), name: 'Heatmap' },
+      { value: rv(), name: 'Render' },
+      { value: rv(), name: 'Tooltip' },
+      { value: rv(), name: 'Axis' },
+      { value: rv(), name: 'Guide' },
+      { value: rv(), name: 'Coord' },
+      { value: rv(), name: 'Legend' },
+      { value: rv(), name: 'Path' },
+      { value: rv(), name: 'Helix' },
+      { value: rv(), name: 'Theta' },
+      { value: rv(), name: 'Rect' },
+      { value: rv(), name: 'Polar' },
+      { value: rv(), name: 'Dsv' },
+      { value: rv(), name: 'Csv' },
+      { value: rv(), name: 'Tsv' },
+      { value: rv(), name: 'GeoJSON' },
+      { value: rv(), name: 'TopoJSON' },
+      { value: rv(), name: 'Filter' },
+      { value: rv(), name: 'Map' },
+      { value: rv(), name: 'Pick' },
+      { value: rv(), name: 'Rename' },
+      { value: rv(), name: 'Filter' },
+      { value: rv(), name: 'Map' },
+      { value: rv(), name: 'Pick' },
+      { value: rv(), name: 'Rename' },
+      { value: rv(), name: 'Reverse' },
+      { value: rv(), name: 'sort' },
+      { value: rv(), name: 'Subset' },
+      { value: rv(), name: 'Partition' },
+      { value: rv(), name: 'Imputation' },
+      { value: rv(), name: 'Fold' },
+      { value: rv(), name: 'Aggregate' },
+      { value: rv(), name: 'Proportion' },
+      { value: rv(), name: 'Histogram' },
+      { value: rv(), name: 'Quantile' },
+      { value: rv(), name: 'Treemap' },
+      { value: rv(), name: 'Hexagon' },
+      { value: rv(), name: 'Binning' },
+      { value: rv(), name: 'kernel' },
+      { value: rv(), name: 'Regression' },
+      { value: rv(), name: 'Density' },
+      { value: rv(), name: 'Sankey' },
+      { value: rv(), name: 'Voronoi' },
+      { value: rv(), name: 'Projection' },
+      { value: rv(), name: 'Centroid' },
+      { value: rv(), name: 'H5' },
+      { value: rv(), name: 'Mobile' },
+      { value: rv(), name: 'K线图' },
+      { value: rv(), name: '关系图' },
+      { value: rv(), name: '烛形图' },
+      { value: rv(), name: '股票图' },
+      { value: rv(), name: '直方图' },
+      { value: rv(), name: '金字塔图' },
+      { value: rv(), name: '分面' },
+      { value: rv(), name: '南丁格尔玫瑰图' },
+      { value: rv(), name: '饼图' },
+      { value: rv(), name: '线图' },
+      { value: rv(), name: '点图' },
+      { value: rv(), name: '散点图' },
+      { value: rv(), name: '子弹图' },
+      { value: rv(), name: '柱状图' },
+      { value: rv(), name: '仪表盘' },
+      { value: rv(), name: '气泡图' },
+      { value: rv(), name: '漏斗图' },
+      { value: rv(), name: '热力图' },
+      { value: rv(), name: '玉玦图' },
+      { value: rv(), name: '直方图' },
+      { value: rv(), name: '矩形树图' },
+      { value: rv(), name: '箱形图' },
+      { value: rv(), name: '色块图' },
+      { value: rv(), name: '螺旋图' },
+      { value: rv(), name: '词云' },
+      { value: rv(), name: '词云图' },
+      { value: rv(), name: '雷达图' },
+      { value: rv(), name: '面积图' },
+      { value: rv(), name: '马赛克图' },
+      { value: rv(), name: '盒须图' },
+      { value: rv(), name: '坐标轴' },
+      { value: rv(), name: '' },
+      { value: rv(), name: 'Jacques Bertin' },
+      { value: rv(), name: 'Leland Wilkinson' },
+      { value: rv(), name: 'William Playfair' },
+      { value: rv(), name: '关联' },
+      { value: rv(), name: '分布' },
+      { value: rv(), name: '区间' },
+      { value: rv(), name: '占比' },
+      { value: rv(), name: '地图' },
+      { value: rv(), name: '时间' },
+      { value: rv(), name: '比较' },
+      { value: rv(), name: '流程' },
+      { value: rv(), name: '趋势' },
+      { value: rv(), name: '亦叶' },
+      { value: rv(), name: '再飞' },
+      { value: rv(), name: '完白' },
+      { value: rv(), name: '巴思' },
+      { value: rv(), name: '张初尘' },
+      { value: rv(), name: '御术' },
+      { value: rv(), name: '有田' },
+      { value: rv(), name: '沉鱼' },
+      { value: rv(), name: '玉伯' },
+      { value: rv(), name: '画康' },
+      { value: rv(), name: '祯逸' },
+      { value: rv(), name: '绝云' },
+      { value: rv(), name: '罗宪' },
+      { value: rv(), name: '萧庆' },
+      { value: rv(), name: '董珊珊' },
+      { value: rv(), name: '陆沉' },
+      { value: rv(), name: '顾倾' },
+      { value: rv(), name: 'Domo' },
+      { value: rv(), name: 'GPL' },
+      { value: rv(), name: 'PAI' },
+      { value: rv(), name: 'SPSS' },
+      { value: rv(), name: 'SYSTAT' },
+      { value: rv(), name: 'Tableau' },
+      { value: rv(), name: 'D3' },
+      { value: rv(), name: 'Vega' },
+      { value: rv(), name: '统计图表' },
+    ];
+  }
+
+  handleClick(data: G2TagCloudClickItem): void {
+    this.msg.info(`${data.item.name} - ${data.item.value}`);
+  }
+}

API

g2-tag-cloud

参数说明类型默认值
[repaint]数据再次变更时是否重绘booleantrue
[delay]延迟渲染,单位:毫秒number200
[height]高度值number200
[width]宽度值,若不指定自动按宿主元素的宽度number0
[data]数据G2TagCloudData[][]
[theme]定制图表主题string | LooseObject-
(clickItem)点击项回调EventEmitter<G2TagCloudClickItem>-
(ready)当G2完成初始化后调用EventEmitter<Chart>-

G2TagCloudData

参数说明类型默认值
[name]名称string-
[value]number-
\ No newline at end of file diff --git a/chart/timeline/en/index.html b/chart/timeline/en/index.html new file mode 100644 index 000000000..7a968af4b --- /dev/null +++ b/chart/timeline/en/index.html @@ -0,0 +1,113 @@ +g2-timeline - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

折线图
IMPORT MODULE

使用 timeline 组件可以实现带有时间轴的柱状图展现,而其中的 x 属性,则是时间值的指向,默认最多支持同时展现两个指标,分别是 y1y2

代码演示

基础

带有时间轴的图表。

expand codeexpand code
import { Component, OnInit } from '@angular/core';
+import { G2TimelineClickItem, G2TimelineData } from '@delon/chart/timeline';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'chart-timeline-basic',
+  template: ` <g2-timeline
+    [data]="chartData"
+    [titleMap]="{ y1: '客流量', y2: '支付笔数' }"
+    [height]="200"
+    (clickItem)="handleClick($event)"
+  ></g2-timeline>`,
+})
+export class ChartTimelineBasicComponent implements OnInit {
+  chartData: G2TimelineData[] = [];
+
+  constructor(private msg: NzMessageService) {}
+
+  ngOnInit(): void {
+    for (let i = 0; i < 20; i += 1) {
+      this.chartData.push({
+        time: new Date().getTime() + 1000 * 60 * 30 * i,
+        y1: Math.floor(Math.random() * 100) + 1000,
+        y2: Math.floor(Math.random() * 100) + 10,
+      });
+    }
+  }
+
+  handleClick(data: G2TimelineClickItem): void {
+    this.msg.info(`客流量: ${data.item.y1}, 支付笔数: ${data.item.y2}`);
+  }
+}

多指标

利用 maxAxis 属性来调整多个指标,最多支持 5 个指标值。

expand codeexpand code
import { Component } from '@angular/core';
+
+import { G2TimelineData, G2TimelineMap } from '@delon/chart/timeline';
+
+@Component({
+  selector: 'chart-timeline-max-axis',
+  template: `
+    <button nz-button (click)="refresh()" nzType="primary">Refresh</button>
+    <button *ngFor="let i of axisList" nz-button (click)="refresh(i)" nzType="primary">{{ i }} axis</button>
+    <g2-timeline [maxAxis]="maxAxis" [data]="chartData" [titleMap]="titleMap" [height]="300" />
+  `
+})
+export class ChartTimelineMaxAxisComponent {
+  chartData: G2TimelineData[] = [];
+  titleMap: G2TimelineMap = { y1: '指标1', y2: '指标2' };
+  maxAxis = 2;
+  axisList = new Array(5).fill(0).map((_, idx) => idx + 1);
+
+  constructor() {
+    this.refresh();
+  }
+
+  private genData(max: number): { titleMap: G2TimelineMap; data: G2TimelineData[] } {
+    const titleMap: G2TimelineMap = { y1: '' };
+    for (let i = 1; i <= max; i++) {
+      titleMap[`y${i}`] = `指标${i}`;
+    }
+
+    const data: G2TimelineData[] = [];
+    for (let i = 0; i < 20; i += 1) {
+      const item: G2TimelineData = {
+        time: new Date().getTime() + 1000 * 60 * 30 * i,
+        y1: 0
+      };
+      for (let i = 1; i <= max; i++) {
+        item[`y${i}`] = Math.floor(Math.random() * 100) + 500 * i;
+      }
+      data.push(item);
+    }
+    return { titleMap, data };
+  }
+
+  refresh(max?: number): void {
+    this.maxAxis = max ?? this.maxAxis;
+    const { titleMap, data } = this.genData(this.maxAxis);
+    this.chartData = data;
+    this.titleMap = titleMap;
+  }
+}

时间格式化

利用 maskmaskSlider 来改变时间格式。

expand codeexpand code
import { Component, OnInit } from '@angular/core';
+import { G2TimelineClickItem, G2TimelineData } from '@delon/chart/timeline';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'chart-timeline-mask',
+  template: ` <g2-timeline
+    [data]="chartData"
+    [titleMap]="{ y1: '客流量', y2: '支付笔数' }"
+    [height]="200"
+    mask="MM月DD日"
+    maskSlider="MM月dd日"
+    (clickItem)="handleClick($event)"
+  ></g2-timeline>`,
+})
+export class ChartTimelineMaskComponent implements OnInit {
+  chartData: G2TimelineData[] = [];
+
+  constructor(private msg: NzMessageService) {}
+
+  ngOnInit(): void {
+    for (let i = 0; i < 20; i += 1) {
+      this.chartData.push({
+        time: new Date().getTime() + 1000 * 60 * 60 * 24 * i,
+        y1: Math.floor(Math.random() * 100) + 1000,
+        y2: Math.floor(Math.random() * 100) + 10,
+      });
+    }
+  }
+
+  handleClick(data: G2TimelineClickItem): void {
+    this.msg.info(`客流量: ${data.item.y1}, 支付笔数: ${data.item.y2}`);
+  }
+}

API

g2-timeline

参数说明类型默认值
[repaint]数据再次变更时是否重绘booleantrue
[delay]延迟渲染,单位:毫秒number0
[title]图表标题string,TemplateRef<void>-
[maxAxis]最大指标数量number2
[data]数据,注:根据 maxAxis 值传递指标数据G2TimelineData[]-
[titleMap]指标别名G2TimelineMap-
[colorMap]颜色G2TimelineMap{ y1: '#5B8FF9', y2: '#5AD8A6', y3: '#5D7092', y4: '#F6BD16', y5: '#E86452' }
[height]高度值number400
[padding]图表内部间距number[][40, 8, 64, 40]
[borderWidth]线条number2
[mask]日期格式,使用 G2 Mask日期格式stringHH:mm
[maskSlider]滑动条日期格式,使用 date-fns 日期格式stringHH:mm
[position]标题位置'top','right','bottom','left''top'
[slider]是否需要滑动条booleantrue
[theme]定制图表主题string | LooseObject-
(clickItem)点击项回调EventEmitter<G2TimelineClickItem>-
(ready)当G2完成初始化后调用EventEmitter<Chart>-

G2TimelineData

参数说明类型默认值
[time]日期格式Date | number-
[y1]指标1数据number-
[y2]指标2数据number-
[y3]指标3数据number-
[y4]指标4数据number-
[y5]指标5数据number-

G2TimelineMap

参数说明类型默认值
[y1]指标1string-
[y2]指标2string-
[y3]指标3string-
[y4]指标4string-
[y5]指标5string-
\ No newline at end of file diff --git a/chart/timeline/zh/index.html b/chart/timeline/zh/index.html new file mode 100644 index 000000000..f4ed46abc --- /dev/null +++ b/chart/timeline/zh/index.html @@ -0,0 +1,113 @@ +g2-timeline - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

折线图
IMPORT MODULE

使用 timeline 组件可以实现带有时间轴的柱状图展现,而其中的 x 属性,则是时间值的指向,默认最多支持同时展现两个指标,分别是 y1y2

代码演示

基础

带有时间轴的图表。

expand codeexpand code
import { Component, OnInit } from '@angular/core';
+import { G2TimelineClickItem, G2TimelineData } from '@delon/chart/timeline';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'chart-timeline-basic',
+  template: ` <g2-timeline
+    [data]="chartData"
+    [titleMap]="{ y1: '客流量', y2: '支付笔数' }"
+    [height]="200"
+    (clickItem)="handleClick($event)"
+  ></g2-timeline>`,
+})
+export class ChartTimelineBasicComponent implements OnInit {
+  chartData: G2TimelineData[] = [];
+
+  constructor(private msg: NzMessageService) {}
+
+  ngOnInit(): void {
+    for (let i = 0; i < 20; i += 1) {
+      this.chartData.push({
+        time: new Date().getTime() + 1000 * 60 * 30 * i,
+        y1: Math.floor(Math.random() * 100) + 1000,
+        y2: Math.floor(Math.random() * 100) + 10,
+      });
+    }
+  }
+
+  handleClick(data: G2TimelineClickItem): void {
+    this.msg.info(`客流量: ${data.item.y1}, 支付笔数: ${data.item.y2}`);
+  }
+}

多指标

利用 maxAxis 属性来调整多个指标,最多支持 5 个指标值。

expand codeexpand code
import { Component } from '@angular/core';
+
+import { G2TimelineData, G2TimelineMap } from '@delon/chart/timeline';
+
+@Component({
+  selector: 'chart-timeline-max-axis',
+  template: `
+    <button nz-button (click)="refresh()" nzType="primary">Refresh</button>
+    <button *ngFor="let i of axisList" nz-button (click)="refresh(i)" nzType="primary">{{ i }} axis</button>
+    <g2-timeline [maxAxis]="maxAxis" [data]="chartData" [titleMap]="titleMap" [height]="300" />
+  `
+})
+export class ChartTimelineMaxAxisComponent {
+  chartData: G2TimelineData[] = [];
+  titleMap: G2TimelineMap = { y1: '指标1', y2: '指标2' };
+  maxAxis = 2;
+  axisList = new Array(5).fill(0).map((_, idx) => idx + 1);
+
+  constructor() {
+    this.refresh();
+  }
+
+  private genData(max: number): { titleMap: G2TimelineMap; data: G2TimelineData[] } {
+    const titleMap: G2TimelineMap = { y1: '' };
+    for (let i = 1; i <= max; i++) {
+      titleMap[`y${i}`] = `指标${i}`;
+    }
+
+    const data: G2TimelineData[] = [];
+    for (let i = 0; i < 20; i += 1) {
+      const item: G2TimelineData = {
+        time: new Date().getTime() + 1000 * 60 * 30 * i,
+        y1: 0
+      };
+      for (let i = 1; i <= max; i++) {
+        item[`y${i}`] = Math.floor(Math.random() * 100) + 500 * i;
+      }
+      data.push(item);
+    }
+    return { titleMap, data };
+  }
+
+  refresh(max?: number): void {
+    this.maxAxis = max ?? this.maxAxis;
+    const { titleMap, data } = this.genData(this.maxAxis);
+    this.chartData = data;
+    this.titleMap = titleMap;
+  }
+}

时间格式化

利用 maskmaskSlider 来改变时间格式。

expand codeexpand code
import { Component, OnInit } from '@angular/core';
+import { G2TimelineClickItem, G2TimelineData } from '@delon/chart/timeline';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'chart-timeline-mask',
+  template: ` <g2-timeline
+    [data]="chartData"
+    [titleMap]="{ y1: '客流量', y2: '支付笔数' }"
+    [height]="200"
+    mask="MM月DD日"
+    maskSlider="MM月dd日"
+    (clickItem)="handleClick($event)"
+  ></g2-timeline>`,
+})
+export class ChartTimelineMaskComponent implements OnInit {
+  chartData: G2TimelineData[] = [];
+
+  constructor(private msg: NzMessageService) {}
+
+  ngOnInit(): void {
+    for (let i = 0; i < 20; i += 1) {
+      this.chartData.push({
+        time: new Date().getTime() + 1000 * 60 * 60 * 24 * i,
+        y1: Math.floor(Math.random() * 100) + 1000,
+        y2: Math.floor(Math.random() * 100) + 10,
+      });
+    }
+  }
+
+  handleClick(data: G2TimelineClickItem): void {
+    this.msg.info(`客流量: ${data.item.y1}, 支付笔数: ${data.item.y2}`);
+  }
+}

API

g2-timeline

参数说明类型默认值
[repaint]数据再次变更时是否重绘booleantrue
[delay]延迟渲染,单位:毫秒number0
[title]图表标题string,TemplateRef<void>-
[maxAxis]最大指标数量number2
[data]数据,注:根据 maxAxis 值传递指标数据G2TimelineData[]-
[titleMap]指标别名G2TimelineMap-
[colorMap]颜色G2TimelineMap{ y1: '#5B8FF9', y2: '#5AD8A6', y3: '#5D7092', y4: '#F6BD16', y5: '#E86452' }
[height]高度值number400
[padding]图表内部间距number[][40, 8, 64, 40]
[borderWidth]线条number2
[mask]日期格式,使用 G2 Mask日期格式stringHH:mm
[maskSlider]滑动条日期格式,使用 date-fns 日期格式stringHH:mm
[position]标题位置'top','right','bottom','left''top'
[slider]是否需要滑动条booleantrue
[theme]定制图表主题string | LooseObject-
(clickItem)点击项回调EventEmitter<G2TimelineClickItem>-
(ready)当G2完成初始化后调用EventEmitter<Chart>-

G2TimelineData

参数说明类型默认值
[time]日期格式Date | number-
[y1]指标1数据number-
[y2]指标2数据number-
[y3]指标3数据number-
[y4]指标4数据number-
[y5]指标5数据number-

G2TimelineMap

参数说明类型默认值
[y1]指标1string-
[y2]指标2string-
[y3]指标3string-
[y4]指标4string-
[y5]指标5string-
\ No newline at end of file diff --git a/chart/trend/en/index.html b/chart/trend/en/index.html new file mode 100644 index 000000000..d972151bb --- /dev/null +++ b/chart/trend/en/index.html @@ -0,0 +1,19 @@ +trend - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

趋势标记
IMPORT MODULE

趋势符号,标记上升和下降趋势。通常用绿色代表“好”,红色代表“不好”,股票涨跌场景除外。

代码演示

12%11%
演示

在数值背后添加一个小图标来标识涨跌情况。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'chart-trend-basic',
+  template: `
+    <trend flag="up">12%</trend>
+    <trend flag="down" class="ml-sm">11%</trend>
+  `,
+})
+export class ChartTrendBasicComponent {}
12%11%
颜色反转

在数值背后添加一个小图标来标识涨跌情况。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'chart-trend-reverse',
+  template: `
+    <trend flag="up" reverseColor>12%</trend>
+    <trend flag="down" reverseColor class="ml-sm">11%</trend>
+  `,
+})
+export class ChartTrendReverseComponent {}

API

trend

成员说明类型默认值
[colorful]是否彩色标记booleantrue
[flag]上升下降标识'up','down'-
[reverseColor]颜色反转booleanfalse
\ No newline at end of file diff --git a/chart/trend/zh/index.html b/chart/trend/zh/index.html new file mode 100644 index 000000000..3b04c7a51 --- /dev/null +++ b/chart/trend/zh/index.html @@ -0,0 +1,19 @@ +trend - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

趋势标记
IMPORT MODULE

趋势符号,标记上升和下降趋势。通常用绿色代表“好”,红色代表“不好”,股票涨跌场景除外。

代码演示

12%11%
演示

在数值背后添加一个小图标来标识涨跌情况。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'chart-trend-basic',
+  template: `
+    <trend flag="up">12%</trend>
+    <trend flag="down" class="ml-sm">11%</trend>
+  `,
+})
+export class ChartTrendBasicComponent {}
12%11%
颜色反转

在数值背后添加一个小图标来标识涨跌情况。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'chart-trend-reverse',
+  template: `
+    <trend flag="up" reverseColor>12%</trend>
+    <trend flag="down" reverseColor class="ml-sm">11%</trend>
+  `,
+})
+export class ChartTrendReverseComponent {}

API

trend

成员说明类型默认值
[colorful]是否彩色标记booleantrue
[flag]上升下降标识'up','down'-
[reverseColor]颜色反转booleanfalse
\ No newline at end of file diff --git a/chart/water-wave/en/index.html b/chart/water-wave/en/index.html new file mode 100644 index 000000000..e05fdac03 --- /dev/null +++ b/chart/water-wave/en/index.html @@ -0,0 +1,12 @@ +g2-water-wave - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

水波图
IMPORT MODULE

水波图是一种比例的展示方式,可以更直观的展示关键值的占比。

默认不支持父元素自适应,可以监听父元素的变化并使用 render() 方法来重置渲染。

代码演示

补贴资金剩余

34%

基础

基础用法。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'chart-water-wave-basic',
+  template: `
+    <g2-water-wave [title]="'补贴资金剩余'" [percent]="34" [height]="161"></g2-water-wave>
+  `,
+  host: {
+    '[class.d-block]': 'true'
+  }
+})
+export class ChartWaterWaveBasicComponent {}

API

g2-water-wave

参数说明类型默认值
[animate]是否显示动画booleantrue
[delay]延迟渲染,单位:毫秒number0
[title]图表标题string,TemplateRef<void>-
[height]图表高度number160
[color]图表颜色string#1890FF
[percent]进度比例number-
\ No newline at end of file diff --git a/chart/water-wave/zh/index.html b/chart/water-wave/zh/index.html new file mode 100644 index 000000000..af3797979 --- /dev/null +++ b/chart/water-wave/zh/index.html @@ -0,0 +1,12 @@ +g2-water-wave - NG-ALAIN
This article has not been translated, hope that your can PR to translated it. Help us!

水波图
IMPORT MODULE

水波图是一种比例的展示方式,可以更直观的展示关键值的占比。

默认不支持父元素自适应,可以监听父元素的变化并使用 render() 方法来重置渲染。

代码演示

补贴资金剩余

34%

基础

基础用法。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'chart-water-wave-basic',
+  template: `
+    <g2-water-wave [title]="'补贴资金剩余'" [percent]="34" [height]="161"></g2-water-wave>
+  `,
+  host: {
+    '[class.d-block]': 'true'
+  }
+})
+export class ChartWaterWaveBasicComponent {}

API

g2-water-wave

参数说明类型默认值
[animate]是否显示动画booleantrue
[delay]延迟渲染,单位:毫秒number0
[title]图表标题string,TemplateRef<void>-
[height]图表高度number160
[color]图表颜色string#1890FF
[percent]进度比例number-
\ No newline at end of file diff --git a/cli/add/en/index.html b/cli/add/en/index.html new file mode 100644 index 000000000..8114a42c4 --- /dev/null +++ b/cli/add/en/index.html @@ -0,0 +1,3 @@ +ng add - NG-ALAIN

创建脚手架

命令格式

ng add ng-alain
+# 如果你想创建一个英文版本,则:
+ng add ng-alain --defaultLanguage=en

额外参数

参数名默认值描述
--formtrue是否需要动态表单
--mocktrue是否需要 mock 功能
--defaultLanguagezh默认语言,支持语言列表
--codeStylefalse是否需要代码风格
--i18nfalse是否需要国际化支持
--npmfalse是否需要 npm 淘宝镜像配置文件
--yarnfalse是否需要 yarn 淘宝镜像配置文件

例如生成一个带有国际化项目:

ng add ng-alain --i18n --defaultLanguage=en

查看更多插件

\ No newline at end of file diff --git a/cli/add/zh/index.html b/cli/add/zh/index.html new file mode 100644 index 000000000..7425ea407 --- /dev/null +++ b/cli/add/zh/index.html @@ -0,0 +1,3 @@ +ng add - NG-ALAIN

创建脚手架

命令格式

ng add ng-alain
+# 如果你想创建一个英文版本,则:
+ng add ng-alain --defaultLanguage=en

额外参数

参数名默认值描述
--formtrue是否需要动态表单
--mocktrue是否需要 mock 功能
--defaultLanguagezh默认语言,支持语言列表
--codeStylefalse是否需要代码风格
--i18nfalse是否需要国际化支持
--npmfalse是否需要 npm 淘宝镜像配置文件
--yarnfalse是否需要 yarn 淘宝镜像配置文件

例如生成一个带有国际化项目:

ng add ng-alain --i18n --defaultLanguage=en

查看更多插件

\ No newline at end of file diff --git a/cli/default/en/index.html b/cli/default/en/index.html new file mode 100644 index 000000000..ae2bb5fc0 --- /dev/null +++ b/cli/default/en/index.html @@ -0,0 +1,37 @@ +默认参数 - NG-ALAIN

默认参数

ng-alain 提供诸多生成模块、页模板,但实际上继承了原生 Angular CLI 组件页的一些参数,例如:spec 表示是否生成测试页、flat 表示扁平目录、inline-template 表示内联模板内容等。

然而,对于这些参数我们没有必要每一次执行命令时都写一遍,可以通过 angular.json 对参数预设。

例如:

// angular.json
+{
+  "schematics": {
+    "ng-alain:module": {
+      "routing": true
+    },
+    "ng-alain:list": {
+      "skipTests": false
+    },
+    "ng-alain:edit": {
+      "skipTests": false,
+      "modal": true
+    },
+    "ng-alain:view": {
+      "skipTests": false,
+      "modal": true
+    },
+    "ng-alain:curd": {
+      "skipTests": false
+    },
+    "@schematics/angular:module": {
+      "routing": true
+    },
+    "@schematics/angular:component": {
+      "skipTests": false,
+      "flat": false,
+      "inlineStyle": true,
+      "inlineTemplate": false
+    },
+    "@schematics/angular:directive": {
+      "skipTests": false
+    },
+    "@schematics/angular:service": {
+      "skipTests": false
+    }
+  }
+}

可以通过执行下列命令来获取所有参数描述:

ng g ng-alain:list --help
\ No newline at end of file diff --git a/cli/default/zh/index.html b/cli/default/zh/index.html new file mode 100644 index 000000000..5c9c86e64 --- /dev/null +++ b/cli/default/zh/index.html @@ -0,0 +1,37 @@ +默认参数 - NG-ALAIN

默认参数

ng-alain 提供诸多生成模块、页模板,但实际上继承了原生 Angular CLI 组件页的一些参数,例如:spec 表示是否生成测试页、flat 表示扁平目录、inline-template 表示内联模板内容等。

然而,对于这些参数我们没有必要每一次执行命令时都写一遍,可以通过 angular.json 对参数预设。

例如:

// angular.json
+{
+  "schematics": {
+    "ng-alain:module": {
+      "routing": true
+    },
+    "ng-alain:list": {
+      "skipTests": false
+    },
+    "ng-alain:edit": {
+      "skipTests": false,
+      "modal": true
+    },
+    "ng-alain:view": {
+      "skipTests": false,
+      "modal": true
+    },
+    "ng-alain:curd": {
+      "skipTests": false
+    },
+    "@schematics/angular:module": {
+      "routing": true
+    },
+    "@schematics/angular:component": {
+      "skipTests": false,
+      "flat": false,
+      "inlineStyle": true,
+      "inlineTemplate": false
+    },
+    "@schematics/angular:directive": {
+      "skipTests": false
+    },
+    "@schematics/angular:service": {
+      "skipTests": false
+    }
+  }
+}

可以通过执行下列命令来获取所有参数描述:

ng g ng-alain:list --help
\ No newline at end of file diff --git a/cli/generate/en/index.html b/cli/generate/en/index.html new file mode 100644 index 000000000..e7a8fae24 --- /dev/null +++ b/cli/generate/en/index.html @@ -0,0 +1,55 @@ +ng g - NG-ALAIN

业务页

写在前面

ng generate(简写:ng g)用于生成业务组件页,默认 Angular 所提供的模板跟 ng-alain 所需要的会有一些不同,例如我们希望生成一个模块时应该包括导入 SharedModule

ng-alain 在此基础上增加了很多很酷的骚操作。

默认情况下所有的代码统一存放于 app/routes 下面,可通过 ng-alain.json 指向其他目录,例如:

{
+  "$schema": "./node_modules/ng-alain/schema.json",
+  "projects": {
+    // 表示 ng-alain 项目都存放于 `app/pages` 下
+    "ng-alain": {
+      "routesRoot": "app/pages"
+    }
+  }
+}

命令格式

ng g ng-alain:[command name] [name] [options]

示例:

# 生成一个 trade 模块
+ng g ng-alain:module trade
+# trade 模块下生成一个 TradeListComponent List组件
+ng g ng-alain:list list -m=trade
+# trade 模块下生成一个 TradeEditComponent List组件 及 TradeService 服务类
+ng g ng-alain:list list -m=trade --service=root
+# trade 模块下生成一个 ListComponent List组件
+ng g ng-alain:list list -m=trade --withoutModulePrefixInComponentName=true
+# trade 模块下生成一个 TradeEditComponent Edit组件
+ng g ng-alain:edit edit -m=trade

ng-alain 有自己的一套文件组织结构,当你破坏这些结构时,可能会导致下列指令产生异常。

参数描述
-m--module指定目标模块
-t--target指定目标路径,支持 bus/list 写法
--modal指定是否使用模态框
--withoutPrefix指定选择器名不加前缀
--withoutModulePrefixInComponentName组件名不加模块名前缀
--service指定如何生成服务类,包含:ignorerootnone

Module 模块

生成一个 trade 模块:

ng g ng-alain:module trade

会在 routes/trade 生成两个文件 trade.module.tstrade-routing.module.ts,你无法指定不生成 *-routing.module.ts 因为这是 ng-alain 的任性。

模块内容包括了导入 SharedModule 以及一些统一性导入与导出的方式,并且你不可能破坏这些变量名(例如:COMPONENTSroutes)。

业务页

目前包含的业务组件页,包括:

  • empty 空白页

  • list 列表页

  • edit 编辑页

  • view 查看页

  • curd 列表、编辑、查看

trade 下生成 list 列表页:

ng g ng-alain:list list -m=trade

注意: -m 是必须指定的,因为 ng-alain 认为页面应该在某个具体的模块里,而不是幽灵。

骚操作

一般而言,一个模块可能会包含相同类型的业务页,而我们产生的文件结构可能希望是:

sys
+  log
+    view
+      view.component.ts
+    log.component.ts
+  sys.module.ts

因此,当你希望生成的查看应该是在 log 组件(支持 log/list 多级写法)下面时,你可以这样子:

ng g ng-alain:view view -m=sys -t=log

覆盖默认模板页

listeditviewempty 四个指令所产生默认页并非所在业务期望,可以覆盖它们。

例如覆盖 list 命令默认模板,在根目录 _cli-tpl 下创建目录名 _list,目录结构务必等同 原始list目录 的结构。

edit & view 页

对于 editview 默认是以模态框展示来生成,你可以改用页面展示则:

ng g ng-alain:edit [page name] --modal=false

如果你不小心将收到【No provider for NzModalRef! 】表明你把一个需要使用 nzModalService 打开的模态框组件,用了路由注册的方式。打开模态框组件无须注册路由。

自定义页

除上述默认业务页以外,也可以自定义属于项目级别业务页,例如我们创建一个自己的编辑页模板,则只需要在项目的根目录创建以下目录结构(你可以通过 Github 上来获取):

└── _cli-tpl
+│   └── edit                                                       // 模板名称
+│       └── __path__                                               // (名称固定值)
+│           └── __name@dasherize@if-flat__                         // (名称固定值)
+│               ├── __name@dasherize__.component.ts.template       // 组件类文件(名称固定值)
+│               ├── __name@dasherize__.component.html.template     // 组件模板文件(名称固定值)
+│               └── __name@dasherize__.component.spec.ts.template  // 组件测试文件(名称固定值)
+└── src

之后,只需要运行:

ng g ng-alain:tpl [your template name] [name] -m=trade

自定义页参数同业务页一致。

如何编写模板文件

在自定义页的目录结构里我们看到文件名以 __ 前缀开头,事实上他们是一些变量占位符,Cli 默认传递一些参数及方法:

类型参数名默认描述
变量project-项目名
变量name-名称,相当于命令行的 <name>
变量path-目标路径
变量flatfalse文件是否扁平结构
变量inlineTemplatefalse是否内联模板(固定值:false
变量selector-组件 selector
变量componentName-组件名称
变量changeDetectionDefault组件 changeDetection
变量modal-是否使用 Modal 展示
方法decamelize-将字母串转换为由下划线分隔的所有小写字母
方法dasherize-将空格或下划线用破折号替换
方法camelize-返回字符串的小骆驼拼写法形式
方法classify-返回字符串的大骆驼拼写法形式
方法underscore-将字母串转换为由下划线分隔的所有小写字母
方法capitalize-返回字符串首字母大写

这些变量或方法可以在模板中使用,例如:<%=componentName%> 表示组件名,任何使用 <% %> 内可以使用 JavaScript 代码。有关模板编写可以参考:

自定义数据

tpl 命令在生成文件之前允许你进一步处理数据,命令在执行过程中会检查是否存在 _cli-tpl/_fix.js 文件,并调用 fix 方法,方法必须返回一个 Promise 对象,例如:

注: CLI 是一个 Node JS 程序,因此语法以 Node JS 为准。

function fix(options) {
+  return new Promise((resolve) => {
+    resolve();
+  });
+}
+
+module.exports = {
+  fix
+};

fix 只有一个 options 参数,它包含 CLI 产生所有参数数据,哪怕是一些未定义参数,例如:

ng g ng-alain:tpl list -m=setting --import-type=UserDto

其中 import-type 并不是命令自身的定义参数,但 options 会将这些未定义参数转换成 extraArgs 对象,因此你接收到的 options 会是:

{
+  "tplName": "test",
+  "modal": true,
+  ...
+  "extraArgs": {
+    "import-type": "UserDto"
+  }
+}

options 对象会传递给模板引擎,由此你可以附加一些处理后的数据给 options,并在模板文件内使用它们,例如:

{
+  "tplName": "test",
+  "modal": true,
+  ...
+  "extraArgs": {
+    "import-type": "UserDto",
+    "newData": "asdf"
+  }
+}

你可以将 newData 应用到模板当中,例如 __name@dasherize__.component.html

<page-header></page-header>
+<%= extraArgs.newData %>

结果为:

<page-header></page-header>
+asdf
\ No newline at end of file diff --git a/cli/generate/zh/index.html b/cli/generate/zh/index.html new file mode 100644 index 000000000..b6528ca42 --- /dev/null +++ b/cli/generate/zh/index.html @@ -0,0 +1,55 @@ +ng g - NG-ALAIN

业务页

写在前面

ng generate(简写:ng g)用于生成业务组件页,默认 Angular 所提供的模板跟 ng-alain 所需要的会有一些不同,例如我们希望生成一个模块时应该包括导入 SharedModule

ng-alain 在此基础上增加了很多很酷的骚操作。

默认情况下所有的代码统一存放于 app/routes 下面,可通过 ng-alain.json 指向其他目录,例如:

{
+  "$schema": "./node_modules/ng-alain/schema.json",
+  "projects": {
+    // 表示 ng-alain 项目都存放于 `app/pages` 下
+    "ng-alain": {
+      "routesRoot": "app/pages"
+    }
+  }
+}

命令格式

ng g ng-alain:[command name] [name] [options]

示例:

# 生成一个 trade 模块
+ng g ng-alain:module trade
+# trade 模块下生成一个 TradeListComponent List组件
+ng g ng-alain:list list -m=trade
+# trade 模块下生成一个 TradeEditComponent List组件 及 TradeService 服务类
+ng g ng-alain:list list -m=trade --service=root
+# trade 模块下生成一个 ListComponent List组件
+ng g ng-alain:list list -m=trade --withoutModulePrefixInComponentName=true
+# trade 模块下生成一个 TradeEditComponent Edit组件
+ng g ng-alain:edit edit -m=trade

ng-alain 有自己的一套文件组织结构,当你破坏这些结构时,可能会导致下列指令产生异常。

参数描述
-m--module指定目标模块
-t--target指定目标路径,支持 bus/list 写法
--modal指定是否使用模态框
--withoutPrefix指定选择器名不加前缀
--withoutModulePrefixInComponentName组件名不加模块名前缀
--service指定如何生成服务类,包含:ignorerootnone

Module 模块

生成一个 trade 模块:

ng g ng-alain:module trade

会在 routes/trade 生成两个文件 trade.module.tstrade-routing.module.ts,你无法指定不生成 *-routing.module.ts 因为这是 ng-alain 的任性。

模块内容包括了导入 SharedModule 以及一些统一性导入与导出的方式,并且你不可能破坏这些变量名(例如:COMPONENTSroutes)。

业务页

目前包含的业务组件页,包括:

  • empty 空白页

  • list 列表页

  • edit 编辑页

  • view 查看页

  • curd 列表、编辑、查看

trade 下生成 list 列表页:

ng g ng-alain:list list -m=trade

注意: -m 是必须指定的,因为 ng-alain 认为页面应该在某个具体的模块里,而不是幽灵。

骚操作

一般而言,一个模块可能会包含相同类型的业务页,而我们产生的文件结构可能希望是:

sys
+  log
+    view
+      view.component.ts
+    log.component.ts
+  sys.module.ts

因此,当你希望生成的查看应该是在 log 组件(支持 log/list 多级写法)下面时,你可以这样子:

ng g ng-alain:view view -m=sys -t=log

覆盖默认模板页

listeditviewempty 四个指令所产生默认页并非所在业务期望,可以覆盖它们。

例如覆盖 list 命令默认模板,在根目录 _cli-tpl 下创建目录名 _list,目录结构务必等同 原始list目录 的结构。

edit & view 页

对于 editview 默认是以模态框展示来生成,你可以改用页面展示则:

ng g ng-alain:edit [page name] --modal=false

如果你不小心将收到【No provider for NzModalRef! 】表明你把一个需要使用 nzModalService 打开的模态框组件,用了路由注册的方式。打开模态框组件无须注册路由。

自定义页

除上述默认业务页以外,也可以自定义属于项目级别业务页,例如我们创建一个自己的编辑页模板,则只需要在项目的根目录创建以下目录结构(你可以通过 Github 上来获取):

└── _cli-tpl
+│   └── edit                                                       // 模板名称
+│       └── __path__                                               // (名称固定值)
+│           └── __name@dasherize@if-flat__                         // (名称固定值)
+│               ├── __name@dasherize__.component.ts.template       // 组件类文件(名称固定值)
+│               ├── __name@dasherize__.component.html.template     // 组件模板文件(名称固定值)
+│               └── __name@dasherize__.component.spec.ts.template  // 组件测试文件(名称固定值)
+└── src

之后,只需要运行:

ng g ng-alain:tpl [your template name] [name] -m=trade

自定义页参数同业务页一致。

如何编写模板文件

在自定义页的目录结构里我们看到文件名以 __ 前缀开头,事实上他们是一些变量占位符,Cli 默认传递一些参数及方法:

类型参数名默认描述
变量project-项目名
变量name-名称,相当于命令行的 <name>
变量path-目标路径
变量flatfalse文件是否扁平结构
变量inlineTemplatefalse是否内联模板(固定值:false
变量selector-组件 selector
变量componentName-组件名称
变量changeDetectionDefault组件 changeDetection
变量modal-是否使用 Modal 展示
方法decamelize-将字母串转换为由下划线分隔的所有小写字母
方法dasherize-将空格或下划线用破折号替换
方法camelize-返回字符串的小骆驼拼写法形式
方法classify-返回字符串的大骆驼拼写法形式
方法underscore-将字母串转换为由下划线分隔的所有小写字母
方法capitalize-返回字符串首字母大写

这些变量或方法可以在模板中使用,例如:<%=componentName%> 表示组件名,任何使用 <% %> 内可以使用 JavaScript 代码。有关模板编写可以参考:

自定义数据

tpl 命令在生成文件之前允许你进一步处理数据,命令在执行过程中会检查是否存在 _cli-tpl/_fix.js 文件,并调用 fix 方法,方法必须返回一个 Promise 对象,例如:

注: CLI 是一个 Node JS 程序,因此语法以 Node JS 为准。

function fix(options) {
+  return new Promise((resolve) => {
+    resolve();
+  });
+}
+
+module.exports = {
+  fix
+};

fix 只有一个 options 参数,它包含 CLI 产生所有参数数据,哪怕是一些未定义参数,例如:

ng g ng-alain:tpl list -m=setting --import-type=UserDto

其中 import-type 并不是命令自身的定义参数,但 options 会将这些未定义参数转换成 extraArgs 对象,因此你接收到的 options 会是:

{
+  "tplName": "test",
+  "modal": true,
+  ...
+  "extraArgs": {
+    "import-type": "UserDto"
+  }
+}

options 对象会传递给模板引擎,由此你可以附加一些处理后的数据给 options,并在模板文件内使用它们,例如:

{
+  "tplName": "test",
+  "modal": true,
+  ...
+  "extraArgs": {
+    "import-type": "UserDto",
+    "newData": "asdf"
+  }
+}

你可以将 newData 应用到模板当中,例如 __name@dasherize__.component.html

<page-header></page-header>
+<%= extraArgs.newData %>

结果为:

<page-header></page-header>
+asdf
\ No newline at end of file diff --git a/cli/getting-started/en/index.html b/cli/getting-started/en/index.html new file mode 100644 index 000000000..01e70be3d --- /dev/null +++ b/cli/getting-started/en/index.html @@ -0,0 +1,4 @@ +开始使用 - NG-ALAIN

开始使用

写在前面

使用 ng-alain 脚手架应尽可能的使用 Angular CLI 所提供的 ng 命令组,来构建、升级等,ng-alain 也实现了一些比较酷的事:

  • 使用 ng add 构建空脚手架

  • 使用 ng g 来构建模块、业务页

  • 可插拔 插件

如何使用

我们不建议直接克隆 Github 源代码,而应该使用 ng add 来构建 ng-alain 项目,而构建一个空 ng-alain 只需要简单几个动作:

1、创建一个空 angular 项目

# 确保使用的是最新版本 Angular cli
+ng new demo --style less

2、添加 ng-alain 脚手架

ng add ng-alain
+# 如果你想创建一个英文版本,则:
+ng add ng-alain --defaultLanguage=en

遇到问题请阅读 常见问题

3、运行项目

ng serve

如何升级

建议 Star 或 Watch 源代码仓库,有助于你更好的在第一时间了解变更细节。

除DEMO示例页以外,会有一些影响外,对于大版本会提供 ng update 来解决破坏性变更,对于其他情况的升级请参考 升级脚手架

\ No newline at end of file diff --git a/cli/getting-started/zh/index.html b/cli/getting-started/zh/index.html new file mode 100644 index 000000000..c04bf9f72 --- /dev/null +++ b/cli/getting-started/zh/index.html @@ -0,0 +1,4 @@ +开始使用 - NG-ALAIN

开始使用

写在前面

使用 ng-alain 脚手架应尽可能的使用 Angular CLI 所提供的 ng 命令组,来构建、升级等,ng-alain 也实现了一些比较酷的事:

  • 使用 ng add 构建空脚手架

  • 使用 ng g 来构建模块、业务页

  • 可插拔 插件

如何使用

我们不建议直接克隆 Github 源代码,而应该使用 ng add 来构建 ng-alain 项目,而构建一个空 ng-alain 只需要简单几个动作:

1、创建一个空 angular 项目

# 确保使用的是最新版本 Angular cli
+ng new demo --style less

2、添加 ng-alain 脚手架

ng add ng-alain
+# 如果你想创建一个英文版本,则:
+ng add ng-alain --defaultLanguage=en

遇到问题请阅读 常见问题

3、运行项目

ng serve

如何升级

建议 Star 或 Watch 源代码仓库,有助于你更好的在第一时间了解变更细节。

除DEMO示例页以外,会有一些影响外,对于大版本会提供 ng update 来解决破坏性变更,对于其他情况的升级请参考 升级脚手架

\ No newline at end of file diff --git a/cli/plugin/en/index.html b/cli/plugin/en/index.html new file mode 100644 index 000000000..bdab37cec --- /dev/null +++ b/cli/plugin/en/index.html @@ -0,0 +1,40 @@ +插件 - NG-ALAIN

插件

写在前面

插件主要是针对项目一些额外 可选 行为的添加或移除,例如当你觉得代码风格对你来说意义不大(虽然我不这么看),只需要:

ng g ng-alain:plugin codeStyle -t=remove

又或者希望项目应该有一个统一风格时:

ng g ng-alain:plugin codeStyle

命令格式

ng g ng-alain:plugin [plugin name] -t=[add | remove]

其中 [plugin name] 插件名称,从插件列表中获取,-t 支持两种值 add(默认) 和 remove

插件列表

codeStyle

代码风格,有几个规则:

ng-alain 默认提供了一部分的代码风格配置方案,你可以在项目的根目录下找到这些配置信息,依照你自己的风格进行修饰。

# add
+ng g ng-alain:plugin codeStyle
+# remove
+ng g ng-alain:plugin codeStyle -t=remove

docker

支持 Docker 部署。

# add
+ng g ng-alain:plugin docker
+# remove
+ng g ng-alain:plugin docker -t=remove

defaultLanguage

变更当前默认语言,参考:国际化-默认语言

# change to [en]
+ng g ng-alain:plugin defaultLanguage --defaultLanguage=en
+# change to [zh]
+ng g ng-alain:plugin defaultLanguage --defaultLanguage=zh
+# change to [zh-tw]
+ng g ng-alain:plugin defaultLanguage --defaultLanguage=zh-tw

支持语言列表

名称语言包名称对应 Angular 语言包对应 Zorro 语言包对应 Delon 语言包
简体中文zh-Hans,zh-cn,zh-Hans-CN,zhzh-Hans,zh-cn,zh-Hans-CN,zhzh_CNzh_CN
繁体中文zh-Hant,zh-tw,zh-Hant-TWzh-Hant,zh-tw,zh-Hant-TWzh_TWzh_TW
英语(美式)enenen_USen_US
土耳其语trtrtr_TRtr_TR
波兰语plplpl_PLpl_PL
希腊语elelel_GRel_GR
朝鲜语kokoko_KRko_KR
克罗地亚hrhrhr_HRhr_HR
斯洛文尼亚文slslsl_SIsl_SI
法文frfrfr_FRfr_FR
西班牙语eseses_ESes_ES
意大利语ititit_ITit_IT

networkEnv

在国内使用 npm 或 yarn 始终是一个“痛”,因此你可以增加一个使用淘宝镜像配置文件 .npmrc.yarnrc,来解决网络问题。

# add npm
+ng g ng-alain:plugin networkEnv --packageManager=npm
+# add yarn
+ng g ng-alain:plugin networkEnv --packageManager=yarn
+# remove npm
+ng g ng-alain:plugin networkEnv --packageManager=npm -t=remove
+# remove yarn
+ng g ng-alain:plugin networkEnv --packageManager=yarn -t=remove

sts

ng-alain-sts 插件,构建 Swagger API 转换为列表、编辑页,更多有趣的玩法请自行想象。

# add
+ng g ng-alain:plugin sts
+# remove
+ng g ng-alain:plugin sts -t=remove

icon

尽可能从项目中分析并生成静态 Icon,插件会自动在 src 目录下生成两个文件:

  • src/style-icons.ts 自定义部分无法解析(例如:远程菜单图标)

  • src/style-icons-auto.ts 命令自动生成文件

自动排除 ng-zorro-antd@delon 已经加载的图标。

ng g ng-alain:plugin icon

同时,需要手动在 startup.service.ts 中导入:

import { ICONS_AUTO } from '../../../style-icons-auto';
+import { ICONS } from '../../../style-icons';
+
+@Injectable()
+export class StartupService {
+  constructor(iconSrv: NzIconService) {
+    iconSrv.addIcon(...ICONS_AUTO, ...ICONS);
+  }
+}

有效语法

<i class="anticon anticon-user"></i>
+<i class="anticon anticon-question-circle-o"></i>
+<i class="anticon anticon-spin anticon-loading"></i>
+<i nz-icon class="anticon anticon-user"></i>
+<i nz-icon nzType="align-{{type ? 'left' : 'right'}}"></i>
+<i nz-icon [type]="type ? 'menu-fold' : 'menu-unfold'" [theme]="theme ? 'outline' : 'fill'"></i>
+<i nz-icon [type]="type ? 'fullscreen' : 'fullscreen-exit'"></i>
+<i nz-icon [nzType]="d.status === 'NORMAL' ? 'close1' : 'close2'"></i>
+<i nz-icon nzType="{{ type ? 'arrow-left' : 'arrow-right' }}"></i>
+<i nz-icon nzType="filter" theme="outline"></i>
+<nz-input-group [nzAddOnBeforeIcon]="focus ? 'anticon anticon-arrow-down' : 'anticon anticon-search'"></nz-input-group>

rtl

支持 RTL 插件,即文本方向设置为“从右向左”。

ng g ng-alain:plugin rtl

该插件不支持移除功能,需要自行手动移除相关代码。

\ No newline at end of file diff --git a/cli/plugin/zh/index.html b/cli/plugin/zh/index.html new file mode 100644 index 000000000..14251e6df --- /dev/null +++ b/cli/plugin/zh/index.html @@ -0,0 +1,40 @@ +插件 - NG-ALAIN

插件

写在前面

插件主要是针对项目一些额外 可选 行为的添加或移除,例如当你觉得代码风格对你来说意义不大(虽然我不这么看),只需要:

ng g ng-alain:plugin codeStyle -t=remove

又或者希望项目应该有一个统一风格时:

ng g ng-alain:plugin codeStyle

命令格式

ng g ng-alain:plugin [plugin name] -t=[add | remove]

其中 [plugin name] 插件名称,从插件列表中获取,-t 支持两种值 add(默认) 和 remove

插件列表

codeStyle

代码风格,有几个规则:

ng-alain 默认提供了一部分的代码风格配置方案,你可以在项目的根目录下找到这些配置信息,依照你自己的风格进行修饰。

# add
+ng g ng-alain:plugin codeStyle
+# remove
+ng g ng-alain:plugin codeStyle -t=remove

docker

支持 Docker 部署。

# add
+ng g ng-alain:plugin docker
+# remove
+ng g ng-alain:plugin docker -t=remove

defaultLanguage

变更当前默认语言,参考:国际化-默认语言

# change to [en]
+ng g ng-alain:plugin defaultLanguage --defaultLanguage=en
+# change to [zh]
+ng g ng-alain:plugin defaultLanguage --defaultLanguage=zh
+# change to [zh-tw]
+ng g ng-alain:plugin defaultLanguage --defaultLanguage=zh-tw

支持语言列表

名称语言包名称对应 Angular 语言包对应 Zorro 语言包对应 Delon 语言包
简体中文zh-Hans,zh-cn,zh-Hans-CN,zhzh-Hans,zh-cn,zh-Hans-CN,zhzh_CNzh_CN
繁体中文zh-Hant,zh-tw,zh-Hant-TWzh-Hant,zh-tw,zh-Hant-TWzh_TWzh_TW
英语(美式)enenen_USen_US
土耳其语trtrtr_TRtr_TR
波兰语plplpl_PLpl_PL
希腊语elelel_GRel_GR
朝鲜语kokoko_KRko_KR
克罗地亚hrhrhr_HRhr_HR
斯洛文尼亚文slslsl_SIsl_SI
法文frfrfr_FRfr_FR
西班牙语eseses_ESes_ES
意大利语ititit_ITit_IT

networkEnv

在国内使用 npm 或 yarn 始终是一个“痛”,因此你可以增加一个使用淘宝镜像配置文件 .npmrc.yarnrc,来解决网络问题。

# add npm
+ng g ng-alain:plugin networkEnv --packageManager=npm
+# add yarn
+ng g ng-alain:plugin networkEnv --packageManager=yarn
+# remove npm
+ng g ng-alain:plugin networkEnv --packageManager=npm -t=remove
+# remove yarn
+ng g ng-alain:plugin networkEnv --packageManager=yarn -t=remove

sts

ng-alain-sts 插件,构建 Swagger API 转换为列表、编辑页,更多有趣的玩法请自行想象。

# add
+ng g ng-alain:plugin sts
+# remove
+ng g ng-alain:plugin sts -t=remove

icon

尽可能从项目中分析并生成静态 Icon,插件会自动在 src 目录下生成两个文件:

  • src/style-icons.ts 自定义部分无法解析(例如:远程菜单图标)

  • src/style-icons-auto.ts 命令自动生成文件

自动排除 ng-zorro-antd@delon 已经加载的图标。

ng g ng-alain:plugin icon

同时,需要手动在 startup.service.ts 中导入:

import { ICONS_AUTO } from '../../../style-icons-auto';
+import { ICONS } from '../../../style-icons';
+
+@Injectable()
+export class StartupService {
+  constructor(iconSrv: NzIconService) {
+    iconSrv.addIcon(...ICONS_AUTO, ...ICONS);
+  }
+}

有效语法

<i class="anticon anticon-user"></i>
+<i class="anticon anticon-question-circle-o"></i>
+<i class="anticon anticon-spin anticon-loading"></i>
+<i nz-icon class="anticon anticon-user"></i>
+<i nz-icon nzType="align-{{type ? 'left' : 'right'}}"></i>
+<i nz-icon [type]="type ? 'menu-fold' : 'menu-unfold'" [theme]="theme ? 'outline' : 'fill'"></i>
+<i nz-icon [type]="type ? 'fullscreen' : 'fullscreen-exit'"></i>
+<i nz-icon [nzType]="d.status === 'NORMAL' ? 'close1' : 'close2'"></i>
+<i nz-icon nzType="{{ type ? 'arrow-left' : 'arrow-right' }}"></i>
+<i nz-icon nzType="filter" theme="outline"></i>
+<nz-input-group [nzAddOnBeforeIcon]="focus ? 'anticon anticon-arrow-down' : 'anticon anticon-search'"></nz-input-group>

rtl

支持 RTL 插件,即文本方向设置为“从右向左”。

ng g ng-alain:plugin rtl

该插件不支持移除功能,需要自行手动移除相关代码。

\ No newline at end of file diff --git a/cli/sta/en/index.html b/cli/sta/en/index.html new file mode 100644 index 000000000..455660419 --- /dev/null +++ b/cli/sta/en/index.html @@ -0,0 +1,19 @@ +sta - NG-ALAIN

Swagger API 生成器

写在前面

若后端API文档是由 Swagger 来描述,将可以通过以下命令来生成一组完整的 API 代码:

ng g ng-alain:sta --url=https://petstore3.swagger.io/api/v3/openapi.json 

命令格式

ng g ng-alain:sta --name=<Swagger name> --url=<远程URL地址> --filePath=<本地Swagger.json文件> --output=<输出路径>
参数名默认描述
namestaSwagger 项目名称
url-远程 Swagger.json 文件,urlfilePath 必须二选一
filePath-本地 Swagger.json 文件路径,urlfilePath 必须二选一
outputsrc/app/${name}输出目录
responseDataField-Response 的真实数据字段
modelTypePrefix-数据契约名称前缀
httpClientTypedelonHttpClient 请求方式,1. delon 使用 @delon/theme_HttpClient,2. angular 使用 HttpClient
generateApiOptions-swagger-typescript-api options
tagsMapping-Swagger标签映射字典,当标签为中文时,可以指定用于转换成更加符合规范 Service 名

使用配置文件

在项目根目录增加 sta.json

{
+  "$schema": "./node_modules/ng-alain/sta/schema.json",
+  "filePath": "swagger.json",
+  "tagsMapping": {
+    "部门": "Dept"
+  }
+}

执行:

ng g ng-alain:sta

常见问题

路径与Service的关联

默认会将每个 path 第一个 tags 合并为一个 Service,请尽可能使用 [a-zA-Z][-_a-zA-Z]+ 来描述 tag

不符合预期的名称

默认情况下,会根据 operationId 项目来处理,否则会自动根据 pathmethod 组合。为了保持与后端的统一项,建议开启 operationId 支持,以下是几种语言开启方法:

.NET CORE

// Swashbuckle
+services.AddSwaggerGen(c =>
+{
+  c.CustomOperationIds(e =>
+  {
+    var name = e.ActionDescriptor.RouteValues["action"] ?? "";
+    return name[0].ToString().ToLower() + name.Substring(1);
+  });
+}

JAVA

参考 Configuring the output of operationId in a Swagger 2.0 spec.

全局Response

当所有 path 有固定输出格式时,比如成功、异常都有统一格式时都返回时:

{
+  "status": 200,
+  "error": "Error Message",
+  "result": {}
+}

若是通过拦截器来处理异常消息时,订阅时只需要始终获取 result 字段数据时,可以通过指定 --responseDataField="result"

\ No newline at end of file diff --git a/cli/sta/zh/index.html b/cli/sta/zh/index.html new file mode 100644 index 000000000..939735aae --- /dev/null +++ b/cli/sta/zh/index.html @@ -0,0 +1,19 @@ +sta - NG-ALAIN

Swagger API 生成器

写在前面

若后端API文档是由 Swagger 来描述,将可以通过以下命令来生成一组完整的 API 代码:

ng g ng-alain:sta --url=https://petstore3.swagger.io/api/v3/openapi.json 

命令格式

ng g ng-alain:sta --name=<Swagger name> --url=<远程URL地址> --filePath=<本地Swagger.json文件> --output=<输出路径>
参数名默认描述
namestaSwagger 项目名称
url-远程 Swagger.json 文件,urlfilePath 必须二选一
filePath-本地 Swagger.json 文件路径,urlfilePath 必须二选一
outputsrc/app/${name}输出目录
responseDataField-Response 的真实数据字段
modelTypePrefix-数据契约名称前缀
httpClientTypedelonHttpClient 请求方式,1. delon 使用 @delon/theme_HttpClient,2. angular 使用 HttpClient
generateApiOptions-swagger-typescript-api options
tagsMapping-Swagger标签映射字典,当标签为中文时,可以指定用于转换成更加符合规范 Service 名

使用配置文件

在项目根目录增加 sta.json

{
+  "$schema": "./node_modules/ng-alain/sta/schema.json",
+  "filePath": "swagger.json",
+  "tagsMapping": {
+    "部门": "Dept"
+  }
+}

执行:

ng g ng-alain:sta

常见问题

路径与Service的关联

默认会将每个 path 第一个 tags 合并为一个 Service,请尽可能使用 [a-zA-Z][-_a-zA-Z]+ 来描述 tag

不符合预期的名称

默认情况下,会根据 operationId 项目来处理,否则会自动根据 pathmethod 组合。为了保持与后端的统一项,建议开启 operationId 支持,以下是几种语言开启方法:

.NET CORE

// Swashbuckle
+services.AddSwaggerGen(c =>
+{
+  c.CustomOperationIds(e =>
+  {
+    var name = e.ActionDescriptor.RouteValues["action"] ?? "";
+    return name[0].ToString().ToLower() + name.Substring(1);
+  });
+}

JAVA

参考 Configuring the output of operationId in a Swagger 2.0 spec.

全局Response

当所有 path 有固定输出格式时,比如成功、异常都有统一格式时都返回时:

{
+  "status": 200,
+  "error": "Error Message",
+  "result": {}
+}

若是通过拦截器来处理异常消息时,订阅时只需要始终获取 result 字段数据时,可以通过指定 --responseDataField="result"

\ No newline at end of file diff --git a/components/auto-focus/en/index.html b/components/auto-focus/en/index.html new file mode 100644 index 000000000..ed842ed31 --- /dev/null +++ b/components/auto-focus/en/index.html @@ -0,0 +1,14 @@ +auto-focus - NG-ALAIN

自动获得焦点
IMPORT MODULE

允许在HTML元素出现后立即对其进行设置焦点,默认情况下会对 inputtextarea 带有 [autofocus="autofocus"] 生效。

代码演示

基础样例

最简单的用法。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-auto-focus-simple',
+  template: `
+    <button nz-button (click)="showInput = !showInput">Toggle Input</button>
+    <div *ngIf="showInput" class="mt-md">
+      <input nz-input auto-focus />
+    </div>
+  `,
+})
+export class ComponentsAutoFocusSimpleComponent {
+  showInput = false;
+}

API

auto-focus

成员说明类型默认值
[enabled]是否启用booleantrue
[delay]延迟时长(单位:毫秒)number300
\ No newline at end of file diff --git a/components/auto-focus/zh/index.html b/components/auto-focus/zh/index.html new file mode 100644 index 000000000..0b97163dd --- /dev/null +++ b/components/auto-focus/zh/index.html @@ -0,0 +1,14 @@ +auto-focus - NG-ALAIN

自动获得焦点
IMPORT MODULE

允许在HTML元素出现后立即对其进行设置焦点,默认情况下会对 inputtextarea 带有 [autofocus="autofocus"] 生效。

代码演示

基础样例

最简单的用法。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-auto-focus-simple',
+  template: `
+    <button nz-button (click)="showInput = !showInput">Toggle Input</button>
+    <div *ngIf="showInput" class="mt-md">
+      <input nz-input auto-focus />
+    </div>
+  `,
+})
+export class ComponentsAutoFocusSimpleComponent {
+  showInput = false;
+}

API

auto-focus

成员说明类型默认值
[enabled]是否启用booleantrue
[delay]延迟时长(单位:毫秒)number300
\ No newline at end of file diff --git a/components/avatar-list/en/index.html b/components/avatar-list/en/index.html new file mode 100644 index 000000000..504103479 --- /dev/null +++ b/components/avatar-list/en/index.html @@ -0,0 +1,25 @@ +avatar-list - NG-ALAIN

用户头像列表
IMPORT MODULE

一组用户头像,常用在项目/团队成员列表。可通过设置 size 属性来指定头像大小。

代码演示

  • +2
要显示的最大项目

maxLength attribute specifies the maximum number of items to show while excessItemsStyle style the excess item component.

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-avatar-list-maxLength',
+  template: ` <avatar-list size="mini" maxLength="3" [excessItemsStyle]="{ color: '#f56a00', backgroundColor: '#fde3cf' }">
+    <avatar-list-item tips="Jake" src="https://gw.alipayobjects.com/zos/rmsportal/zOsKZmFRdUtvpqCImOVY.png"></avatar-list-item>
+    <avatar-list-item tips="Andy" src="https://gw.alipayobjects.com/zos/rmsportal/sfjbOqnsXXJgNCjCzDBL.png"></avatar-list-item>
+    <avatar-list-item tips="Niko" src="https://gw.alipayobjects.com/zos/rmsportal/kZzEzemZyKLKFsojXItE.png"></avatar-list-item>
+    <avatar-list-item tips="Cipchk" text="Cipchk"></avatar-list-item>
+    <avatar-list-item tips="heart-o" icon="heart-o"></avatar-list-item>
+  </avatar-list>`,
+})
+export class ComponentsAvatarListMaxLengthComponent {}
  • Cipchk
基础样例

最简单的用法。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-avatar-list-simple',
+  template: ` <avatar-list size="mini">
+    <avatar-list-item tips="Jake" src="https://gw.alipayobjects.com/zos/rmsportal/zOsKZmFRdUtvpqCImOVY.png"></avatar-list-item>
+    <avatar-list-item tips="Andy" src="https://gw.alipayobjects.com/zos/rmsportal/sfjbOqnsXXJgNCjCzDBL.png"></avatar-list-item>
+    <avatar-list-item tips="Niko" src="https://gw.alipayobjects.com/zos/rmsportal/kZzEzemZyKLKFsojXItE.png"></avatar-list-item>
+    <avatar-list-item tips="Cipchk" text="Cipchk"></avatar-list-item>
+    <avatar-list-item tips="heart-o" icon="heart-o"></avatar-list-item>
+  </avatar-list>`,
+})
+export class ComponentsAvatarListSimpleComponent {}

API

avatar-list

成员说明类型默认值
[size]头像大小'large','small','mini','default''default'
[maxLength]要显示的最大项目number-
[excessItemsStyle]多余的项目风格{ [key: string]: string }-

avatar-list-item

成员说明类型默认值
[tips]头像展示文案string-
[src]头像图片连接string-
[text]文本类头像string-
[icon]图标类型string-
\ No newline at end of file diff --git a/components/avatar-list/zh/index.html b/components/avatar-list/zh/index.html new file mode 100644 index 000000000..e1bfa24eb --- /dev/null +++ b/components/avatar-list/zh/index.html @@ -0,0 +1,25 @@ +avatar-list - NG-ALAIN

用户头像列表
IMPORT MODULE

一组用户头像,常用在项目/团队成员列表。可通过设置 size 属性来指定头像大小。

代码演示

  • +2
要显示的最大项目

maxLength attribute specifies the maximum number of items to show while excessItemsStyle style the excess item component.

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-avatar-list-maxLength',
+  template: ` <avatar-list size="mini" maxLength="3" [excessItemsStyle]="{ color: '#f56a00', backgroundColor: '#fde3cf' }">
+    <avatar-list-item tips="Jake" src="https://gw.alipayobjects.com/zos/rmsportal/zOsKZmFRdUtvpqCImOVY.png"></avatar-list-item>
+    <avatar-list-item tips="Andy" src="https://gw.alipayobjects.com/zos/rmsportal/sfjbOqnsXXJgNCjCzDBL.png"></avatar-list-item>
+    <avatar-list-item tips="Niko" src="https://gw.alipayobjects.com/zos/rmsportal/kZzEzemZyKLKFsojXItE.png"></avatar-list-item>
+    <avatar-list-item tips="Cipchk" text="Cipchk"></avatar-list-item>
+    <avatar-list-item tips="heart-o" icon="heart-o"></avatar-list-item>
+  </avatar-list>`,
+})
+export class ComponentsAvatarListMaxLengthComponent {}
  • Cipchk
基础样例

最简单的用法。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-avatar-list-simple',
+  template: ` <avatar-list size="mini">
+    <avatar-list-item tips="Jake" src="https://gw.alipayobjects.com/zos/rmsportal/zOsKZmFRdUtvpqCImOVY.png"></avatar-list-item>
+    <avatar-list-item tips="Andy" src="https://gw.alipayobjects.com/zos/rmsportal/sfjbOqnsXXJgNCjCzDBL.png"></avatar-list-item>
+    <avatar-list-item tips="Niko" src="https://gw.alipayobjects.com/zos/rmsportal/kZzEzemZyKLKFsojXItE.png"></avatar-list-item>
+    <avatar-list-item tips="Cipchk" text="Cipchk"></avatar-list-item>
+    <avatar-list-item tips="heart-o" icon="heart-o"></avatar-list-item>
+  </avatar-list>`,
+})
+export class ComponentsAvatarListSimpleComponent {}

API

avatar-list

成员说明类型默认值
[size]头像大小'large','small','mini','default''default'
[maxLength]要显示的最大项目number-
[excessItemsStyle]多余的项目风格{ [key: string]: string }-

avatar-list-item

成员说明类型默认值
[tips]头像展示文案string-
[src]头像图片连接string-
[text]文本类头像string-
[icon]图标类型string-
\ No newline at end of file diff --git a/components/cell/en/index.html b/components/cell/en/index.html new file mode 100644 index 000000000..adbab2a0d --- /dev/null +++ b/components/cell/en/index.html @@ -0,0 +1,241 @@ +cell - NG-ALAIN

单元格数据
IMPORT MODULE

内置支持十几种数据类型的格式化,且支持小部件自定义模式。

代码演示

"string" =>string
true =>
false =>
100 =>100
1000000 =>1000000
"2023-10-31T13:22:00.983Z" =>2023-10-31 13:22:00
date-fn =>3 days
mega =>15.9亿
mask =>159****0000
currency =>100000$
cny =>壹拾万元整
img =>
img preview =>
img list =>
html =>Strong
SafeHtml =>Strong HtmlupdateSafeHtml
badge =>Done
tag =>Wait
checkbox =>Change Disabled
enum =>SuccessChange Value(enum value: 1)
default =>-
primary =>primary
success =>success
danger =>danger
warning =>warning
size =>small,default,large
tooltip =>tooltip
loading =>Change
Async =>
Unit =>3
Text Unit =>100
custom widget =>
基础样例

最简单的用法。

expand codeexpand code
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, OnInit } from '@angular/core';
+import { DomSanitizer } from '@angular/platform-browser';
+import { delay, finalize, of, take } from 'rxjs';
+
+import { subDays } from 'date-fns';
+
+import { CellBadge, CellFuValue, CellOptions, CellRenderType } from '@delon/abc/cell';
+
+@Component({
+  selector: 'components-cell-simple',
+  template: `
+    <div nz-row nzGutter="16" class="mt-md">
+      <div *ngFor="let i of baseList" nz-col nzSpan="8"> {{ i | json }} => <cell [value]="i" /> </div>
+      <div nz-col nzSpan="8"> date-fn => <cell [value]="day3" [options]="{ date: { format: 'fn' } }" /> </div>
+      <div nz-col nzSpan="8"> mega => <cell value="15900000000" size="large" [options]="{ type: 'mega' }" /> </div>
+      <div nz-col nzSpan="8"> mask => <cell value="15900000000" [options]="{ mask: '999****9999' }" /> </div>
+      <div nz-col nzSpan="8"> currency => <cell value="100000" [options]="{ unit: '$' }" /> </div>
+      <div nz-col nzSpan="8"> cny => <cell value="100000" [options]="{ type: 'cny' }" /> </div>
+      <div nz-col nzSpan="8">
+        yn => <cell [value]="yn" [options]="{ type: 'boolean' }" />
+        <a (click)="yn = !yn">Change Value</a>
+      </div>
+      <div nz-col nzSpan="8">
+        img =>
+        <cell
+          value="https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ.png"
+          [options]="{ type: 'img' }"
+        />
+      </div>
+      <div nz-col nzSpan="8">
+        img preview =>
+        <cell value="https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ.png" [options]="bigImg" />
+      </div>
+      <div nz-col nzSpan="8">
+        img list =>
+        <cell
+          [value]="[
+            'https://randomuser.me/api/portraits/thumb/women/46.jpg',
+            'https://randomuser.me/api/portraits/thumb/women/47.jpg'
+          ]"
+          [options]="{ type: 'img' }"
+        />
+      </div>
+      <div nz-col nzSpan="8">
+        link =>
+        <cell value="Link" [options]="{ link: { url: 'https://ng-alain.com' } }" [disabled]="disabled" />
+        <a (click)="disabled = !disabled" class="ml-sm">Change Disabled</a>
+      </div>
+      <div nz-col nzSpan="8">
+        html =>
+        <cell [value]="HTML" [options]="{ type: 'html' }" />
+      </div>
+      <div nz-col nzSpan="8">
+        SafeHtml =>
+        <cell [value]="safeHtml" />
+        <a (click)="updateSafeHtml()" class="ml-sm">updateSafeHtml</a>
+      </div>
+      <div nz-col nzSpan="8">
+        badge =>
+        <cell value="FINISHED" [options]="{ badge: { data: status } }" />
+      </div>
+      <div nz-col nzSpan="8">
+        tag =>
+        <cell value="WAIT" [options]="{ tag: { data: status } }" />
+      </div>
+      <div nz-col nzSpan="8">
+        checkbox =>
+        <cell
+          [(value)]="checkbox"
+          [options]="{ type: 'checkbox', tooltip: 'Tooltip', checkbox: { label: 'Label' } }"
+          [disabled]="disabled"
+        />
+        <a (click)="disabled = !disabled" class="ml-sm">Change Disabled</a>
+      </div>
+      <div nz-col nzSpan="8">
+        radio =>
+        <cell
+          [(value)]="radio"
+          [options]="{ type: 'radio', tooltip: 'Tooltip', radio: { label: 'Radio' } }"
+          [disabled]="disabled"
+        />
+        <a (click)="radio = !radio">Change Value</a>
+        <a (click)="disabled = !disabled" class="ml-sm">Change Disabled</a>
+      </div>
+      <div nz-col nzSpan="8">
+        enum =>
+        <cell [(value)]="enumValue" [options]="{ enum }" />
+        <a (click)="enumValue = enumValue === 1 ? 2 : 1">Change Value</a>(enum value: {{ enumValue }})
+      </div>
+      <div nz-col nzSpan="8">
+        default =>
+        <cell [value]="null" />
+      </div>
+      <div *ngFor="let i of typeList" nz-col nzSpan="8">
+        {{ i }} =>
+        <cell [value]="i" [options]="{ renderType: i }" />
+      </div>
+      <div nz-col nzSpan="8">
+        size =>
+        <cell value="small" size="small" />, <cell value="default" />,
+        <cell value="large" size="large" />
+      </div>
+      <div nz-col nzSpan="8">
+        tooltip =>
+        <cell value="tooltip" [options]="{ tooltip: 'Tooltip' }" />
+      </div>
+      <div nz-col nzSpan="8">
+        loading =>
+        <cell value="Done" [loading]="loading" />
+        <a (click)="loading = !loading" class="ml-md">Change</a>
+      </div>
+      <div nz-col nzSpan="8">
+        Async =>
+        <cell [value]="async" [loading]="asyncLoading" />
+        <a *ngIf="!asyncLoading" (click)="again()" class="ml-md">Again</a>
+      </div>
+      <div nz-col nzSpan="8"> Unit => <cell value="3" [options]="{ unit: '人' }" /> </div>
+      <div nz-col nzSpan="8"> Text Unit => <cell [value]="{ text: '100', unit: '元' }" /> </div>
+      <div nz-col nzSpan="8">
+        custom widget =>
+        <cell
+          value="https://randomuser.me/api/portraits/thumb/women/47.jpg"
+          [options]="{ widget: { key: 'test', data: 'new url' } }"
+        />
+      </div>
+    </div>
+  `,
+  styles: [
+    `
+      :host ::ng-deep .ant-col {
+        margin-bottom: 8px;
+      }
+    `
+  ],
+  changeDetection: ChangeDetectionStrategy.OnPush
+})
+export class ComponentsCellSimpleComponent implements OnInit {
+  value: unknown = 'string';
+  checkbox = false;
+  radio = true;
+  disabled = false;
+  yn = true;
+  default: string = '-';
+  defaultCondition: unknown = '*';
+  options?: CellOptions;
+  baseList = ['string', true, false, 100, 1000000, new Date()];
+  typeList: CellRenderType[] = ['primary', 'success', 'danger', 'warning'];
+  now = new Date();
+  day3 = subDays(new Date(), 3);
+  HTML = `<strong>Strong</string>`;
+  status: CellBadge = {
+    WAIT: { text: 'Wait', tooltip: 'Refers to waiting for the user to ship' },
+    FINISHED: { text: 'Done', color: 'success' }
+  };
+  loading = true;
+  asyncLoading = true;
+  async?: CellFuValue;
+  safeHtml = this.ds.bypassSecurityTrustHtml(`<strong>Strong Html</strong>`);
+  enum = { 1: 'Success', 2: 'Error' };
+  enumValue = 1;
+  bigImg: CellOptions = {
+    img: {
+      size: 32,
+      big: true // 'https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ.png'
+    }
+  };
+
+  constructor(
+    private ds: DomSanitizer,
+    private cdr: ChangeDetectorRef
+  ) {}
+
+  ngOnInit(): void {
+    this.again();
+  }
+
+  refresh(): void {
+    this.value = new Date();
+    this.cdr.detectChanges();
+  }
+
+  again(): void {
+    this.asyncLoading = true;
+    this.async = (() =>
+      of({ text: `${+new Date()}` }).pipe(
+        take(1),
+        delay(1000 * 1),
+        finalize(() => {
+          this.asyncLoading = false;
+          this.cdr.detectChanges();
+        })
+      )) as CellFuValue;
+    this.cdr.detectChanges();
+  }
+
+  updateSafeHtml(): void {
+    this.safeHtml = this.ds.bypassSecurityTrustHtml(`alert('a');<script>alert('a')</script>`);
+    this.cdr.detectChanges();
+  }
+}

API

cell

成员说明类型默认值
[value]unknown-
[options]选项CellOptions-
[loading]是否加载中booleanfalse

CellOptions

成员说明类型默认值
[type]渲染类型--
[tooltip]文字提示string-
[renderType]渲染类型primary,success,danger,warning-
[size]大小large,small-
[unit]单位,也可通过 value: {text: 100, unit: '元'} 来指定string-
[default]默认文本string | CellDefaultText-
[mask]格式化掩码, 参考文档string, FormatMaskOption-
[widget]小部件配置{key?: string, data?: string}-
[date]日期配置,支持 几分钟前 格式化{format?: string}-
[mega]大数据格式化配置CurrencyMegaOptions-
[currency]货币配置CurrencyFormatOptions-
[boolean]布尔配置YNOptions-
[img]图像配置,支持大图预览{ size?: number; big?: boolean }-
[link]链接配置{ url?: string; target?: string }-
[html]HTML 配置{ safe?: string }-
[badge]徽章配置{ data?: CellBadge }-
[tag]标签配置{ data?: CellTag }-
[checkbox]复选框配置{ label?: string }-
[radio]单选框配置{ label?: string }-

渲染类型

  • string 字符串

  • number 数字

  • mega 大数据格式化

  • currency 货币

  • cny 转化成人民币表示法

  • boolean 布尔

  • date 日期

  • img 图像,支持大图预览

  • link 链接

  • html HTML

  • badge 徽章

  • tag 标签

  • checkbox 复选框(支持 disabled

  • radio 单选框(支持 disabled

  • enum 枚举转换

  • widget 自定义小部件

自定义小部件

实现 CellWidgetInstance 接口即可,例如:

import { ChangeDetectionStrategy, Component } from '@angular/core';
+
+import type { CellWidgetData, CellWidgetInstance } from '@delon/abc/cell';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'cell-widget-test',
+  template: ` <img nz-tooltip nzTooltipTitle="Client it" [src]="data.value" class="img" style="cursor: pointer" /> `,
+  host: {
+    '(click)': 'show()'
+  },
+  changeDetection: ChangeDetectionStrategy.OnPush
+})
+export class CellTestWidget implements CellWidgetInstance {
+  static readonly KEY = 'test';
+
+  readonly data!: CellWidgetData;
+
+  constructor(private msg: NzMessageService) {}
+
+  show(): void {
+    this.msg.info(`click`);
+  }
+}

其中 data 为固定参数,包含 valueoptions 配置项。

其次,还需要调用 CellService.registerWidget 注册小部件;通常会单独构建一个新的模块,例如:

import { NgModule } from '@angular/core';
+
+import { CellService } from '@delon/abc/cell';
+
+import { CellTestWidget } from './test';
+import { SharedModule } from '../shared.module';
+
+export const CELL_WIDGET_COMPONENTS = [CellTestWidget];
+
+@NgModule({
+  declarations: CELL_WIDGET_COMPONENTS,
+  imports: [SharedModule],
+  exports: CELL_WIDGET_COMPONENTS
+})
+export class CellWidgetModule {
+  constructor(srv: CellService) {
+    srv.registerWidget(CellTestWidget.KEY, CellTestWidget);
+  }
+}

最后,将 CellWidgetModule 注册到根模块下即可。

\ No newline at end of file diff --git a/components/cell/zh/index.html b/components/cell/zh/index.html new file mode 100644 index 000000000..c51603997 --- /dev/null +++ b/components/cell/zh/index.html @@ -0,0 +1,241 @@ +cell - NG-ALAIN

单元格数据
IMPORT MODULE

内置支持十几种数据类型的格式化,且支持小部件自定义模式。

代码演示

"string" =>string
true =>
false =>
100 =>100
1000000 =>1000000
"2023-10-31T13:22:03.492Z" =>2023-10-31 13:22:03
date-fn =>3 days
mega =>15.9亿
mask =>159****0000
currency =>100000$
cny =>壹拾万元整
img =>
img preview =>
img list =>
html =>Strong
SafeHtml =>Strong HtmlupdateSafeHtml
badge =>Done
tag =>Wait
checkbox =>Change Disabled
enum =>SuccessChange Value(enum value: 1)
default =>-
primary =>primary
success =>success
danger =>danger
warning =>warning
size =>small,default,large
tooltip =>tooltip
loading =>Change
Async =>
Unit =>3
Text Unit =>100
custom widget =>
基础样例

最简单的用法。

expand codeexpand code
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, OnInit } from '@angular/core';
+import { DomSanitizer } from '@angular/platform-browser';
+import { delay, finalize, of, take } from 'rxjs';
+
+import { subDays } from 'date-fns';
+
+import { CellBadge, CellFuValue, CellOptions, CellRenderType } from '@delon/abc/cell';
+
+@Component({
+  selector: 'components-cell-simple',
+  template: `
+    <div nz-row nzGutter="16" class="mt-md">
+      <div *ngFor="let i of baseList" nz-col nzSpan="8"> {{ i | json }} => <cell [value]="i" /> </div>
+      <div nz-col nzSpan="8"> date-fn => <cell [value]="day3" [options]="{ date: { format: 'fn' } }" /> </div>
+      <div nz-col nzSpan="8"> mega => <cell value="15900000000" size="large" [options]="{ type: 'mega' }" /> </div>
+      <div nz-col nzSpan="8"> mask => <cell value="15900000000" [options]="{ mask: '999****9999' }" /> </div>
+      <div nz-col nzSpan="8"> currency => <cell value="100000" [options]="{ unit: '$' }" /> </div>
+      <div nz-col nzSpan="8"> cny => <cell value="100000" [options]="{ type: 'cny' }" /> </div>
+      <div nz-col nzSpan="8">
+        yn => <cell [value]="yn" [options]="{ type: 'boolean' }" />
+        <a (click)="yn = !yn">Change Value</a>
+      </div>
+      <div nz-col nzSpan="8">
+        img =>
+        <cell
+          value="https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ.png"
+          [options]="{ type: 'img' }"
+        />
+      </div>
+      <div nz-col nzSpan="8">
+        img preview =>
+        <cell value="https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ.png" [options]="bigImg" />
+      </div>
+      <div nz-col nzSpan="8">
+        img list =>
+        <cell
+          [value]="[
+            'https://randomuser.me/api/portraits/thumb/women/46.jpg',
+            'https://randomuser.me/api/portraits/thumb/women/47.jpg'
+          ]"
+          [options]="{ type: 'img' }"
+        />
+      </div>
+      <div nz-col nzSpan="8">
+        link =>
+        <cell value="Link" [options]="{ link: { url: 'https://ng-alain.com' } }" [disabled]="disabled" />
+        <a (click)="disabled = !disabled" class="ml-sm">Change Disabled</a>
+      </div>
+      <div nz-col nzSpan="8">
+        html =>
+        <cell [value]="HTML" [options]="{ type: 'html' }" />
+      </div>
+      <div nz-col nzSpan="8">
+        SafeHtml =>
+        <cell [value]="safeHtml" />
+        <a (click)="updateSafeHtml()" class="ml-sm">updateSafeHtml</a>
+      </div>
+      <div nz-col nzSpan="8">
+        badge =>
+        <cell value="FINISHED" [options]="{ badge: { data: status } }" />
+      </div>
+      <div nz-col nzSpan="8">
+        tag =>
+        <cell value="WAIT" [options]="{ tag: { data: status } }" />
+      </div>
+      <div nz-col nzSpan="8">
+        checkbox =>
+        <cell
+          [(value)]="checkbox"
+          [options]="{ type: 'checkbox', tooltip: 'Tooltip', checkbox: { label: 'Label' } }"
+          [disabled]="disabled"
+        />
+        <a (click)="disabled = !disabled" class="ml-sm">Change Disabled</a>
+      </div>
+      <div nz-col nzSpan="8">
+        radio =>
+        <cell
+          [(value)]="radio"
+          [options]="{ type: 'radio', tooltip: 'Tooltip', radio: { label: 'Radio' } }"
+          [disabled]="disabled"
+        />
+        <a (click)="radio = !radio">Change Value</a>
+        <a (click)="disabled = !disabled" class="ml-sm">Change Disabled</a>
+      </div>
+      <div nz-col nzSpan="8">
+        enum =>
+        <cell [(value)]="enumValue" [options]="{ enum }" />
+        <a (click)="enumValue = enumValue === 1 ? 2 : 1">Change Value</a>(enum value: {{ enumValue }})
+      </div>
+      <div nz-col nzSpan="8">
+        default =>
+        <cell [value]="null" />
+      </div>
+      <div *ngFor="let i of typeList" nz-col nzSpan="8">
+        {{ i }} =>
+        <cell [value]="i" [options]="{ renderType: i }" />
+      </div>
+      <div nz-col nzSpan="8">
+        size =>
+        <cell value="small" size="small" />, <cell value="default" />,
+        <cell value="large" size="large" />
+      </div>
+      <div nz-col nzSpan="8">
+        tooltip =>
+        <cell value="tooltip" [options]="{ tooltip: 'Tooltip' }" />
+      </div>
+      <div nz-col nzSpan="8">
+        loading =>
+        <cell value="Done" [loading]="loading" />
+        <a (click)="loading = !loading" class="ml-md">Change</a>
+      </div>
+      <div nz-col nzSpan="8">
+        Async =>
+        <cell [value]="async" [loading]="asyncLoading" />
+        <a *ngIf="!asyncLoading" (click)="again()" class="ml-md">Again</a>
+      </div>
+      <div nz-col nzSpan="8"> Unit => <cell value="3" [options]="{ unit: '人' }" /> </div>
+      <div nz-col nzSpan="8"> Text Unit => <cell [value]="{ text: '100', unit: '元' }" /> </div>
+      <div nz-col nzSpan="8">
+        custom widget =>
+        <cell
+          value="https://randomuser.me/api/portraits/thumb/women/47.jpg"
+          [options]="{ widget: { key: 'test', data: 'new url' } }"
+        />
+      </div>
+    </div>
+  `,
+  styles: [
+    `
+      :host ::ng-deep .ant-col {
+        margin-bottom: 8px;
+      }
+    `
+  ],
+  changeDetection: ChangeDetectionStrategy.OnPush
+})
+export class ComponentsCellSimpleComponent implements OnInit {
+  value: unknown = 'string';
+  checkbox = false;
+  radio = true;
+  disabled = false;
+  yn = true;
+  default: string = '-';
+  defaultCondition: unknown = '*';
+  options?: CellOptions;
+  baseList = ['string', true, false, 100, 1000000, new Date()];
+  typeList: CellRenderType[] = ['primary', 'success', 'danger', 'warning'];
+  now = new Date();
+  day3 = subDays(new Date(), 3);
+  HTML = `<strong>Strong</string>`;
+  status: CellBadge = {
+    WAIT: { text: 'Wait', tooltip: 'Refers to waiting for the user to ship' },
+    FINISHED: { text: 'Done', color: 'success' }
+  };
+  loading = true;
+  asyncLoading = true;
+  async?: CellFuValue;
+  safeHtml = this.ds.bypassSecurityTrustHtml(`<strong>Strong Html</strong>`);
+  enum = { 1: 'Success', 2: 'Error' };
+  enumValue = 1;
+  bigImg: CellOptions = {
+    img: {
+      size: 32,
+      big: true // 'https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ.png'
+    }
+  };
+
+  constructor(
+    private ds: DomSanitizer,
+    private cdr: ChangeDetectorRef
+  ) {}
+
+  ngOnInit(): void {
+    this.again();
+  }
+
+  refresh(): void {
+    this.value = new Date();
+    this.cdr.detectChanges();
+  }
+
+  again(): void {
+    this.asyncLoading = true;
+    this.async = (() =>
+      of({ text: `${+new Date()}` }).pipe(
+        take(1),
+        delay(1000 * 1),
+        finalize(() => {
+          this.asyncLoading = false;
+          this.cdr.detectChanges();
+        })
+      )) as CellFuValue;
+    this.cdr.detectChanges();
+  }
+
+  updateSafeHtml(): void {
+    this.safeHtml = this.ds.bypassSecurityTrustHtml(`alert('a');<script>alert('a')</script>`);
+    this.cdr.detectChanges();
+  }
+}

API

cell

成员说明类型默认值
[value]unknown-
[options]选项CellOptions-
[loading]是否加载中booleanfalse

CellOptions

成员说明类型默认值
[type]渲染类型--
[tooltip]文字提示string-
[renderType]渲染类型primary,success,danger,warning-
[size]大小large,small-
[unit]单位,也可通过 value: {text: 100, unit: '元'} 来指定string-
[default]默认文本string | CellDefaultText-
[mask]格式化掩码, 参考文档string, FormatMaskOption-
[widget]小部件配置{key?: string, data?: string}-
[date]日期配置,支持 几分钟前 格式化{format?: string}-
[mega]大数据格式化配置CurrencyMegaOptions-
[currency]货币配置CurrencyFormatOptions-
[boolean]布尔配置YNOptions-
[img]图像配置,支持大图预览{ size?: number; big?: boolean }-
[link]链接配置{ url?: string; target?: string }-
[html]HTML 配置{ safe?: string }-
[badge]徽章配置{ data?: CellBadge }-
[tag]标签配置{ data?: CellTag }-
[checkbox]复选框配置{ label?: string }-
[radio]单选框配置{ label?: string }-

渲染类型

  • string 字符串

  • number 数字

  • mega 大数据格式化

  • currency 货币

  • cny 转化成人民币表示法

  • boolean 布尔

  • date 日期

  • img 图像,支持大图预览

  • link 链接

  • html HTML

  • badge 徽章

  • tag 标签

  • checkbox 复选框(支持 disabled

  • radio 单选框(支持 disabled

  • enum 枚举转换

  • widget 自定义小部件

自定义小部件

实现 CellWidgetInstance 接口即可,例如:

import { ChangeDetectionStrategy, Component } from '@angular/core';
+
+import type { CellWidgetData, CellWidgetInstance } from '@delon/abc/cell';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'cell-widget-test',
+  template: ` <img nz-tooltip nzTooltipTitle="Client it" [src]="data.value" class="img" style="cursor: pointer" /> `,
+  host: {
+    '(click)': 'show()'
+  },
+  changeDetection: ChangeDetectionStrategy.OnPush
+})
+export class CellTestWidget implements CellWidgetInstance {
+  static readonly KEY = 'test';
+
+  readonly data!: CellWidgetData;
+
+  constructor(private msg: NzMessageService) {}
+
+  show(): void {
+    this.msg.info(`click`);
+  }
+}

其中 data 为固定参数,包含 valueoptions 配置项。

其次,还需要调用 CellService.registerWidget 注册小部件;通常会单独构建一个新的模块,例如:

import { NgModule } from '@angular/core';
+
+import { CellService } from '@delon/abc/cell';
+
+import { CellTestWidget } from './test';
+import { SharedModule } from '../shared.module';
+
+export const CELL_WIDGET_COMPONENTS = [CellTestWidget];
+
+@NgModule({
+  declarations: CELL_WIDGET_COMPONENTS,
+  imports: [SharedModule],
+  exports: CELL_WIDGET_COMPONENTS
+})
+export class CellWidgetModule {
+  constructor(srv: CellService) {
+    srv.registerWidget(CellTestWidget.KEY, CellTestWidget);
+  }
+}

最后,将 CellWidgetModule 注册到根模块下即可。

\ No newline at end of file diff --git a/components/count-down/en/index.html b/components/count-down/en/index.html new file mode 100644 index 000000000..6a27c953e --- /dev/null +++ b/components/count-down/en/index.html @@ -0,0 +1,35 @@ +count-down - NG-ALAIN

倒计时
IMPORT MODULE

倒计时组件,依赖 ngx-countdown

依赖

yarn add ngx-countdown

代码演示

00:00:09
基本

简单的倒计时组件使用。

expand codeexpand code
import { Component } from '@angular/core';
+import { NzMessageService } from 'ng-zorro-antd/message';
+import { CountdownEvent } from 'ngx-countdown';
+
+@Component({
+  selector: 'components-count-down-simple',
+  template: `
+    <div>
+      <count-down #cd [target]="10" (event)="handleEvent($event)" style="font-size: 20px;"></count-down>
+    </div>
+    <button nz-button (click)="cd.instance.pause()">Pause</button>
+    <button nz-button (click)="cd.instance.resume()">Resume</button>
+  `,
+})
+export class ComponentsCountDownSimpleComponent {
+  constructor(private msg: NzMessageService) {}
+
+  handleEvent(e: CountdownEvent): void {
+    if (e.action === 'done') {
+      this.msg.success('finised');
+    }
+  }
+}
29.8
精度

0.1s精度使用方式。

expand codeexpand code
import { Component } from '@angular/core';
+import { CountdownConfig } from 'ngx-countdown';
+
+@Component({
+  selector: 'components-count-down-accuracy',
+  template: ` <count-down [config]="config"></count-down> `,
+})
+export class ComponentsCountDownAccuracyComponent {
+  config: CountdownConfig = {
+    format: `s.S`,
+    leftTime: 30,
+  };
+}

API

count-down

成员说明类型默认值
[target]目标时间,number 表示秒number | Date-
[config]完整 Config 参数CountdownConfig-
(event)事件通知EventEmitter<CountdownEvent>-
\ No newline at end of file diff --git a/components/count-down/zh/index.html b/components/count-down/zh/index.html new file mode 100644 index 000000000..ebe0af7a8 --- /dev/null +++ b/components/count-down/zh/index.html @@ -0,0 +1,35 @@ +count-down - NG-ALAIN

倒计时
IMPORT MODULE

倒计时组件,依赖 ngx-countdown

依赖

yarn add ngx-countdown

代码演示

00:00:09
基本

简单的倒计时组件使用。

expand codeexpand code
import { Component } from '@angular/core';
+import { NzMessageService } from 'ng-zorro-antd/message';
+import { CountdownEvent } from 'ngx-countdown';
+
+@Component({
+  selector: 'components-count-down-simple',
+  template: `
+    <div>
+      <count-down #cd [target]="10" (event)="handleEvent($event)" style="font-size: 20px;"></count-down>
+    </div>
+    <button nz-button (click)="cd.instance.pause()">Pause</button>
+    <button nz-button (click)="cd.instance.resume()">Resume</button>
+  `,
+})
+export class ComponentsCountDownSimpleComponent {
+  constructor(private msg: NzMessageService) {}
+
+  handleEvent(e: CountdownEvent): void {
+    if (e.action === 'done') {
+      this.msg.success('finised');
+    }
+  }
+}
29.8
精度

0.1s精度使用方式。

expand codeexpand code
import { Component } from '@angular/core';
+import { CountdownConfig } from 'ngx-countdown';
+
+@Component({
+  selector: 'components-count-down-accuracy',
+  template: ` <count-down [config]="config"></count-down> `,
+})
+export class ComponentsCountDownAccuracyComponent {
+  config: CountdownConfig = {
+    format: `s.S`,
+    leftTime: 30,
+  };
+}

API

count-down

成员说明类型默认值
[target]目标时间,number 表示秒number | Date-
[config]完整 Config 参数CountdownConfig-
(event)事件通知EventEmitter<CountdownEvent>-
\ No newline at end of file diff --git a/components/date-picker/en/index.html b/components/date-picker/en/index.html new file mode 100644 index 000000000..38900fe7e --- /dev/null +++ b/components/date-picker/en/index.html @@ -0,0 +1,23 @@ +range-picker - NG-ALAIN

日期范围
IMPORT MODULE

基于 nz-range-picker 进一步优化,更好的服务于开始与结束日期。

代码演示

result: {}
基础

使用 ngModelngModelEnd 来表示开始与结束值。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-date-picker-basic',
+  template: `
+    result: {{ i | json }}<br />
+    <nz-range-picker [(ngModel)]="i.start" extend [(ngModelEnd)]="i.end"></nz-range-picker>
+  `,
+})
+export class ComponentsDatePickerBasicComponent {
+  i: { start?: Date; end?: Date } = {};
+}
result: {}
快捷键

使用 shortcuts 自定义快捷面板(支持全局配置)。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-date-picker-shortcut',
+  template: `
+    result: {{ i | json }}<br />
+    <nz-range-picker [(ngModel)]="i.start" extend [(ngModelEnd)]="i.end" shortcut></nz-range-picker>
+  `,
+})
+export class ComponentsDatePickerShortcutComponent {
+  i: { start?: Date; end?: Date } = {};
+}

API

extend

需要配合 nz-range-picker 一起使用,例如:

<nz-range-picker [(ngModel)]="i.start" extend [(ngModelEnd)]="i.end"></nz-range-picker>
成员说明类型默认值全局配置
[(ngModelEnd)]结束日期,开始与结束同时有值才会生效Date-
[shortcut]设置快捷键boolean, DateRangePickerShortcutfalse

DateRangePickerShortcut

成员说明类型默认值
[enabled]是否启用booleanfalse
[closed]是否点击后立即关闭面板booleantrue
[enabled]快捷列表DateRangePickerShortcutItem[]今天,昨天,近3天,近7天,本周,本月,全年
\ No newline at end of file diff --git a/components/date-picker/zh/index.html b/components/date-picker/zh/index.html new file mode 100644 index 000000000..7b75a3a02 --- /dev/null +++ b/components/date-picker/zh/index.html @@ -0,0 +1,23 @@ +range-picker - NG-ALAIN

日期范围
IMPORT MODULE

基于 nz-range-picker 进一步优化,更好的服务于开始与结束日期。

代码演示

result: {}
基础

使用 ngModelngModelEnd 来表示开始与结束值。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-date-picker-basic',
+  template: `
+    result: {{ i | json }}<br />
+    <nz-range-picker [(ngModel)]="i.start" extend [(ngModelEnd)]="i.end"></nz-range-picker>
+  `,
+})
+export class ComponentsDatePickerBasicComponent {
+  i: { start?: Date; end?: Date } = {};
+}
result: {}
快捷键

使用 shortcuts 自定义快捷面板(支持全局配置)。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-date-picker-shortcut',
+  template: `
+    result: {{ i | json }}<br />
+    <nz-range-picker [(ngModel)]="i.start" extend [(ngModelEnd)]="i.end" shortcut></nz-range-picker>
+  `,
+})
+export class ComponentsDatePickerShortcutComponent {
+  i: { start?: Date; end?: Date } = {};
+}

API

extend

需要配合 nz-range-picker 一起使用,例如:

<nz-range-picker [(ngModel)]="i.start" extend [(ngModelEnd)]="i.end"></nz-range-picker>
成员说明类型默认值全局配置
[(ngModelEnd)]结束日期,开始与结束同时有值才会生效Date-
[shortcut]设置快捷键boolean, DateRangePickerShortcutfalse

DateRangePickerShortcut

成员说明类型默认值
[enabled]是否启用booleanfalse
[closed]是否点击后立即关闭面板booleantrue
[enabled]快捷列表DateRangePickerShortcutItem[]今天,昨天,近3天,近7天,本周,本月,全年
\ No newline at end of file diff --git a/components/down-file/en/index.html b/components/down-file/en/index.html new file mode 100644 index 000000000..a94e4c0b3 --- /dev/null +++ b/components/down-file/en/index.html @@ -0,0 +1,26 @@ +down-file - NG-ALAIN

下载文件
IMPORT MODULE

一个基于 blob 的文件下载。

代码演示

基础

下载一个文件。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-down-file-simple',
+  template: `
+    <button
+      *ngFor="let i of fileTypes"
+      nz-button
+      down-file
+      [http-data]="data"
+      http-url="./assets/demo{{ i }}"
+      file-name="demo中文"
+      class="mr-sm"
+    >
+      {{ i }}
+    </button>
+  `,
+})
+export class ComponentsDownFileSimpleComponent {
+  fileTypes = ['.xlsx', '.docx', '.pptx', '.pdf'];
+
+  data = {
+    otherdata: 1,
+    time: new Date(),
+  };
+}

API

down-file

成员说明类型默认值
[http-data]URL请求参数{}-
[http-body]POST请求响应体{}-
[http-method]请求类型'POST','GET','HEAD','PUT','PATCH','DELETE''GET'
[http-url]下载地址string-
[file-name]指定文件名,若为空从服务端返回的 header 中获取 filenamex-filenamestring, (rep: HttpResponse<Blob>) => string-
[pre]下载前回调(ev: MouseEvent) => Promise<boolean>-
(success)成功回调EventEmitter<HttpResponse>-
(error)错误回调EventEmitter<any>-

常见问题

文件名获取顺序

  1. file-name

  2. content-dispositionfilename*filename

  3. header 参数 filenamex-filename

兼容性

使用 new Blob() 来校验浏览器兼容,若不兼容会在目标元素上增加 down-file__not-support 样式。

默认不兼容处理行为为隐藏,可以设置 Less 变量为 @down-file-not-support-behavior: 'disabled' 表示禁止点击。

\ No newline at end of file diff --git a/components/down-file/zh/index.html b/components/down-file/zh/index.html new file mode 100644 index 000000000..bc59cfd81 --- /dev/null +++ b/components/down-file/zh/index.html @@ -0,0 +1,26 @@ +down-file - NG-ALAIN

下载文件
IMPORT MODULE

一个基于 blob 的文件下载。

代码演示

基础

下载一个文件。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-down-file-simple',
+  template: `
+    <button
+      *ngFor="let i of fileTypes"
+      nz-button
+      down-file
+      [http-data]="data"
+      http-url="./assets/demo{{ i }}"
+      file-name="demo中文"
+      class="mr-sm"
+    >
+      {{ i }}
+    </button>
+  `,
+})
+export class ComponentsDownFileSimpleComponent {
+  fileTypes = ['.xlsx', '.docx', '.pptx', '.pdf'];
+
+  data = {
+    otherdata: 1,
+    time: new Date(),
+  };
+}

API

down-file

成员说明类型默认值
[http-data]URL请求参数{}-
[http-body]POST请求响应体{}-
[http-method]请求类型'POST','GET','HEAD','PUT','PATCH','DELETE''GET'
[http-url]下载地址string-
[file-name]指定文件名,若为空从服务端返回的 header 中获取 filenamex-filenamestring, (rep: HttpResponse<Blob>) => string-
[pre]下载前回调(ev: MouseEvent) => Promise<boolean>-
(success)成功回调EventEmitter<HttpResponse>-
(error)错误回调EventEmitter<any>-

常见问题

文件名获取顺序

  1. file-name

  2. content-dispositionfilename*filename

  3. header 参数 filenamex-filename

兼容性

使用 new Blob() 来校验浏览器兼容,若不兼容会在目标元素上增加 down-file__not-support 样式。

默认不兼容处理行为为隐藏,可以设置 Less 变量为 @down-file-not-support-behavior: 'disabled' 表示禁止点击。

\ No newline at end of file diff --git a/components/ellipsis/en/index.html b/components/ellipsis/en/index.html new file mode 100644 index 000000000..8a6339599 --- /dev/null +++ b/components/ellipsis/en/index.html @@ -0,0 +1,27 @@ +ellipsis - NG-ALAIN

文本自动省略号
IMPORT MODULE

文本过长自动处理省略号,支持按照文本长度和最大行数两种方式截取。

代码演示

There were injuries alleged in three cases in 2015, and a fourth incident in September, according to the safety recall report. After meeting with US regulators in October, the firm decided to issue a voluntary recall.
There were injuries alleged in three cases in 2015, and a fourth incident in September, according to...

Show Tooltip

There were injuries alleged in three cases in 2015, and a fourth incident in September, according to the safety recall report. After meeting with US regulators in October, the firm decided to issue a voluntary recall.
There were injuries alleged in three cases in 2015, and a fourth incident in September, according to...
按照字符数省略

通过设置 length 属性指定文本最长长度,如果超过这个长度会自动截取。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-ellipsis-number',
+  template: `
+    <ellipsis length="100">{{ article }}</ellipsis>
+    <h4 class="mt-lg">Show Tooltip</h4>
+    <ellipsis length="100" tooltip>{{ article }}</ellipsis>
+  `,
+})
+export class ComponentsEllipsisNumberComponent {
+  article =
+    'There were injuries alleged in three cases in 2015, and a fourth incident in September, according to the safety recall report. After meeting with US regulators in October, the firm decided to issue a voluntary recall.';
+}

There were injuries alleged in three cases in 2015, and a fourth incident in September, according to the safety recall report. After meeting with US regulators in October, the firm decided to issue a voluntary recall.

There were injuries alleged in three cases in 2015, and a fourth incident in September, according to the safety recall report. After meeting with US regulators in October, the firm decided to issue a voluntary recall.

按照行数省略

通过设置 lines 属性指定最大行数,如果超过这个行数的文本会自动截取。但是在这种模式下所有 ng-content 将会被转换成纯文本。

并且注意在这种模式下,外容器需要有指定的宽度(或设置自身宽度)。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-ellipsis-line',
+  template: `
+    <ellipsis lines="3" tooltip style="width: 200px">
+      <p>
+        There were injuries alleged in three <a href="#cover">cases in 2015</a>, and a fourth incident in September, according to the safety
+        recall report. After meeting with US regulators in October, the firm decided to issue a voluntary recall.
+      </p>
+    </ellipsis>
+  `,
+})
+export class ComponentsEllipsisLineComponent {}

API

ellipsis

成员说明类型默认值
[tooltip]移动到文本展示完整内容的提示booleanfalse
[length]在按照长度截取下的文本最大字符数,超过则截取省略number-
[lines]在按照行数截取下最大的行数,超过则截取省略number-
[fullWidthRecognition]是否将全角字符的长度视为2来计算字符串长度booleanfalse
[tail]指定溢出尾巴string'...'
\ No newline at end of file diff --git a/components/ellipsis/zh/index.html b/components/ellipsis/zh/index.html new file mode 100644 index 000000000..1b117f3cc --- /dev/null +++ b/components/ellipsis/zh/index.html @@ -0,0 +1,27 @@ +ellipsis - NG-ALAIN

文本自动省略号
IMPORT MODULE

文本过长自动处理省略号,支持按照文本长度和最大行数两种方式截取。

代码演示

There were injuries alleged in three cases in 2015, and a fourth incident in September, according to the safety recall report. After meeting with US regulators in October, the firm decided to issue a voluntary recall.
There were injuries alleged in three cases in 2015, and a fourth incident in September, according to...

Show Tooltip

There were injuries alleged in three cases in 2015, and a fourth incident in September, according to the safety recall report. After meeting with US regulators in October, the firm decided to issue a voluntary recall.
There were injuries alleged in three cases in 2015, and a fourth incident in September, according to...
按照字符数省略

通过设置 length 属性指定文本最长长度,如果超过这个长度会自动截取。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-ellipsis-number',
+  template: `
+    <ellipsis length="100">{{ article }}</ellipsis>
+    <h4 class="mt-lg">Show Tooltip</h4>
+    <ellipsis length="100" tooltip>{{ article }}</ellipsis>
+  `,
+})
+export class ComponentsEllipsisNumberComponent {
+  article =
+    'There were injuries alleged in three cases in 2015, and a fourth incident in September, according to the safety recall report. After meeting with US regulators in October, the firm decided to issue a voluntary recall.';
+}

There were injuries alleged in three cases in 2015, and a fourth incident in September, according to the safety recall report. After meeting with US regulators in October, the firm decided to issue a voluntary recall.

There were injuries alleged in three cases in 2015, and a fourth incident in September, according to the safety recall report. After meeting with US regulators in October, the firm decided to issue a voluntary recall.

按照行数省略

通过设置 lines 属性指定最大行数,如果超过这个行数的文本会自动截取。但是在这种模式下所有 ng-content 将会被转换成纯文本。

并且注意在这种模式下,外容器需要有指定的宽度(或设置自身宽度)。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-ellipsis-line',
+  template: `
+    <ellipsis lines="3" tooltip style="width: 200px">
+      <p>
+        There were injuries alleged in three <a href="#cover">cases in 2015</a>, and a fourth incident in September, according to the safety
+        recall report. After meeting with US regulators in October, the firm decided to issue a voluntary recall.
+      </p>
+    </ellipsis>
+  `,
+})
+export class ComponentsEllipsisLineComponent {}

API

ellipsis

成员说明类型默认值
[tooltip]移动到文本展示完整内容的提示booleanfalse
[length]在按照长度截取下的文本最大字符数,超过则截取省略number-
[lines]在按照行数截取下最大的行数,超过则截取省略number-
[fullWidthRecognition]是否将全角字符的长度视为2来计算字符串长度booleanfalse
[tail]指定溢出尾巴string'...'
\ No newline at end of file diff --git a/components/error-collect/en/index.html b/components/error-collect/en/index.html new file mode 100644 index 000000000..0d2a3949e --- /dev/null +++ b/components/error-collect/en/index.html @@ -0,0 +1,29 @@ +error-collect - NG-ALAIN

表单异常消息采集器
IMPORT MODULE

一个简单的表单异常消息采集器,点击图标跳转相应的位置;必须是一个标准 form 表单。

代码演示

0
基础

一般配合 footer-toolbar 一起使用。

expand codeexpand code
import { Component, OnInit } from '@angular/core';
+import { FormControl, FormGroup, Validators } from '@angular/forms';
+
+@Component({
+  selector: 'components-error-collect-basic',
+  template: `
+    <form nz-form [formGroup]="validateForm">
+      <nz-form-item>
+        <nz-form-control>
+          <input nz-input formControlName="email" id="email" />
+        </nz-form-control>
+      </nz-form-item>
+      <error-collect></error-collect>
+    </form>
+  `
+})
+export class ComponentsErrorCollectBasicComponent implements OnInit {
+  validateForm = new FormGroup({
+    email: new FormControl(null, [Validators.required])
+  });
+
+  get email(): FormControl<string | null> {
+    return this.validateForm.controls.email;
+  }
+
+  ngOnInit(): void {
+    this.email.markAsDirty();
+  }
+}

API

error-collect

成员说明类型默认值全局配置
[freq]监听频率,单位:毫秒number500
[offsetTop]顶部偏移值,单位:pxnumber145
\ No newline at end of file diff --git a/components/error-collect/zh/index.html b/components/error-collect/zh/index.html new file mode 100644 index 000000000..313b10594 --- /dev/null +++ b/components/error-collect/zh/index.html @@ -0,0 +1,29 @@ +error-collect - NG-ALAIN

表单异常消息采集器
IMPORT MODULE

一个简单的表单异常消息采集器,点击图标跳转相应的位置;必须是一个标准 form 表单。

代码演示

0
基础

一般配合 footer-toolbar 一起使用。

expand codeexpand code
import { Component, OnInit } from '@angular/core';
+import { FormControl, FormGroup, Validators } from '@angular/forms';
+
+@Component({
+  selector: 'components-error-collect-basic',
+  template: `
+    <form nz-form [formGroup]="validateForm">
+      <nz-form-item>
+        <nz-form-control>
+          <input nz-input formControlName="email" id="email" />
+        </nz-form-control>
+      </nz-form-item>
+      <error-collect></error-collect>
+    </form>
+  `
+})
+export class ComponentsErrorCollectBasicComponent implements OnInit {
+  validateForm = new FormGroup({
+    email: new FormControl(null, [Validators.required])
+  });
+
+  get email(): FormControl<string | null> {
+    return this.validateForm.controls.email;
+  }
+
+  ngOnInit(): void {
+    this.email.markAsDirty();
+  }
+}

API

error-collect

成员说明类型默认值全局配置
[freq]监听频率,单位:毫秒number500
[offsetTop]顶部偏移值,单位:pxnumber145
\ No newline at end of file diff --git a/components/exception/en/index.html b/components/exception/en/index.html new file mode 100644 index 000000000..91a2167d3 --- /dev/null +++ b/components/exception/en/index.html @@ -0,0 +1,24 @@ +exception - NG-ALAIN

异常
IMPORT MODULE

异常页用于对页面特定的异常状态进行反馈。通常,它包含对错误状态的阐述,并向用户提供建议或操作,避免用户感到迷失和困惑。

代码演示

404

抱歉,你访问的页面不存在

404 页面。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-exception-404',
+  template: ` <exception [type]="404"></exception>`,
+})
+export class ComponentsException404Component {}

500

抱歉,服务器出错了

500 页面。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-exception-500',
+  template: ` <exception [type]="500"></exception>`,
+})
+export class ComponentsException500Component {}

403

抱歉,你无权访问该页面

403 页面,配合自定义操作。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-exception-403',
+  template: ` 
+  <exception [type]="403">
+    <button nz-button [nzType]="'primary'">回到首页</button>
+    <button nz-button>查看详情</button>
+  </exception>
+  `,
+})
+export class ComponentsException403Component {}

API

exception

成员说明类型默认值全局配置
[type]页面类型,若配置,则自带对应类型默认的 titledescimg,此默认设置可以被 titledescimg 覆盖'403','404','500'-
[title]标题string--
[desc]补充描述string--
[img]背景图片地址string--
[backRouterLink]后退路由链接string, any[]/-
ng-content建议操作,配置此属性时默认的『返回首页』按钮不生效TemplateRef<void>--
\ No newline at end of file diff --git a/components/exception/zh/index.html b/components/exception/zh/index.html new file mode 100644 index 000000000..de5420bcc --- /dev/null +++ b/components/exception/zh/index.html @@ -0,0 +1,24 @@ +exception - NG-ALAIN

异常
IMPORT MODULE

异常页用于对页面特定的异常状态进行反馈。通常,它包含对错误状态的阐述,并向用户提供建议或操作,避免用户感到迷失和困惑。

代码演示

404

抱歉,你访问的页面不存在

404 页面。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-exception-404',
+  template: ` <exception [type]="404"></exception>`,
+})
+export class ComponentsException404Component {}

500

抱歉,服务器出错了

500 页面。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-exception-500',
+  template: ` <exception [type]="500"></exception>`,
+})
+export class ComponentsException500Component {}

403

抱歉,你无权访问该页面

403 页面,配合自定义操作。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-exception-403',
+  template: ` 
+  <exception [type]="403">
+    <button nz-button [nzType]="'primary'">回到首页</button>
+    <button nz-button>查看详情</button>
+  </exception>
+  `,
+})
+export class ComponentsException403Component {}

API

exception

成员说明类型默认值全局配置
[type]页面类型,若配置,则自带对应类型默认的 titledescimg,此默认设置可以被 titledescimg 覆盖'403','404','500'-
[title]标题string--
[desc]补充描述string--
[img]背景图片地址string--
[backRouterLink]后退路由链接string, any[]/-
ng-content建议操作,配置此属性时默认的『返回首页』按钮不生效TemplateRef<void>--
\ No newline at end of file diff --git a/components/footer-toolbar/en/index.html b/components/footer-toolbar/en/index.html new file mode 100644 index 000000000..9e45499c5 --- /dev/null +++ b/components/footer-toolbar/en/index.html @@ -0,0 +1,31 @@ +footer-toolbar - NG-ALAIN

底部工具栏
IMPORT MODULE

固定在底部的工具栏。

何时使用

固定在内容区域的底部,不随滚动条移动,常用于长页面的数据搜集和提交工作。

代码演示

基础

浮动固定页脚,常用于表单页。

expand codeexpand code
import { Component, OnInit } from '@angular/core';
+import { FormControl, FormGroup, Validators } from '@angular/forms';
+
+@Component({
+  selector: 'components-footer-toolbar-basic',
+  template: `
+    <form nz-form [formGroup]="form">
+      <nz-form-item>
+        <nz-form-control [nzValidateStatus]="name">
+          <input nz-input formControlName="name" placeholder="required" />
+        </nz-form-control>
+      </nz-form-item>
+      <footer-toolbar errorCollect extra="This is extra area">
+        <button nz-button nzType="primary">Submit</button>
+      </footer-toolbar>
+    </form>
+  `
+})
+export class ComponentsFooterToolbarBasicComponent implements OnInit {
+  form = new FormGroup({
+    name: new FormControl(null, [Validators.required])
+  });
+
+  get name(): FormControl<string | null> {
+    return this.form.controls.name;
+  }
+
+  ngOnInit(): void {
+    this.name.markAsDirty();
+  }
+}

API

成员说明类型默认值
ng-content工具栏内容,向右对齐--
[errorCollect]是否需要 error-collect,务必包裹在 <form> 元素内booleanfalse
[extra]额外信息,向左对齐string,TemplateRef<void>-
\ No newline at end of file diff --git a/components/footer-toolbar/zh/index.html b/components/footer-toolbar/zh/index.html new file mode 100644 index 000000000..71e107caf --- /dev/null +++ b/components/footer-toolbar/zh/index.html @@ -0,0 +1,31 @@ +footer-toolbar - NG-ALAIN

底部工具栏
IMPORT MODULE

固定在底部的工具栏。

何时使用

固定在内容区域的底部,不随滚动条移动,常用于长页面的数据搜集和提交工作。

代码演示

基础

浮动固定页脚,常用于表单页。

expand codeexpand code
import { Component, OnInit } from '@angular/core';
+import { FormControl, FormGroup, Validators } from '@angular/forms';
+
+@Component({
+  selector: 'components-footer-toolbar-basic',
+  template: `
+    <form nz-form [formGroup]="form">
+      <nz-form-item>
+        <nz-form-control [nzValidateStatus]="name">
+          <input nz-input formControlName="name" placeholder="required" />
+        </nz-form-control>
+      </nz-form-item>
+      <footer-toolbar errorCollect extra="This is extra area">
+        <button nz-button nzType="primary">Submit</button>
+      </footer-toolbar>
+    </form>
+  `
+})
+export class ComponentsFooterToolbarBasicComponent implements OnInit {
+  form = new FormGroup({
+    name: new FormControl(null, [Validators.required])
+  });
+
+  get name(): FormControl<string | null> {
+    return this.form.controls.name;
+  }
+
+  ngOnInit(): void {
+    this.name.markAsDirty();
+  }
+}

API

成员说明类型默认值
ng-content工具栏内容,向右对齐--
[errorCollect]是否需要 error-collect,务必包裹在 <form> 元素内booleanfalse
[extra]额外信息,向左对齐string,TemplateRef<void>-
\ No newline at end of file diff --git a/components/full-content/en/index.html b/components/full-content/en/index.html new file mode 100644 index 000000000..5a3bd6ff4 --- /dev/null +++ b/components/full-content/en/index.html @@ -0,0 +1 @@ +full-content - NG-ALAIN

全屏工作区
IMPORT MODULE

全屏工作区,常用于带有滚动条表格,一个在线示例

API

full-content

参数说明类型默认值
[(fullscreen)]是否完整全屏(不包括顶部、侧边栏等)boolean-
[hideTitle]完整全屏时是否隐藏标题booleantrue
[padding]工作区内边距number24

full-toggle

切换是否全屏。

全屏控制

包含三种方式:

  • 使用 fullscreen 双向绑定

  • 使用 [full-toggle] 指令

  • 使用 FullContentService.toggle() 服务

\ No newline at end of file diff --git a/components/full-content/zh/index.html b/components/full-content/zh/index.html new file mode 100644 index 000000000..8618db0e6 --- /dev/null +++ b/components/full-content/zh/index.html @@ -0,0 +1 @@ +full-content - NG-ALAIN

全屏工作区
IMPORT MODULE

全屏工作区,常用于带有滚动条表格,一个在线示例

API

full-content

参数说明类型默认值
[(fullscreen)]是否完整全屏(不包括顶部、侧边栏等)boolean-
[hideTitle]完整全屏时是否隐藏标题booleantrue
[padding]工作区内边距number24

full-toggle

切换是否全屏。

全屏控制

包含三种方式:

  • 使用 fullscreen 双向绑定

  • 使用 [full-toggle] 指令

  • 使用 FullContentService.toggle() 服务

\ No newline at end of file diff --git a/components/global-footer/en/index.html b/components/global-footer/en/index.html new file mode 100644 index 000000000..1bef40a85 --- /dev/null +++ b/components/global-footer/en/index.html @@ -0,0 +1,61 @@ +global-footer - NG-ALAIN

全局页脚
IMPORT MODULE

页脚属于全局导航的一部分,作为对顶部导航的补充,通过传递数据控制展示内容。

代码演示

演示

基本页脚。

expand codeexpand code
import { Component } from '@angular/core';
+import { GlobalFooterLink } from '@delon/abc/global-footer';
+
+@Component({
+  selector: 'components-global-footer-basic',
+  template: `
+    <div style="height: 280px;"></div>
+    <global-footer [links]="links">
+      Copyright<i nz-icon nzType="copyright" class="mx-sm"></i>2019<a href="//github.com/cipchk" target="_blank" class="mx-sm">卡色</a>出品
+    </global-footer>
+  `,
+  styles: [
+    `
+      :host {
+        display: block;
+      }
+    `,
+  ],
+})
+export class ComponentsGlobalFooterBasicComponent {
+  links: GlobalFooterLink[] = [
+    {
+      title: '帮助',
+      href: 'https://ng-alain.com/',
+      blankTarget: true,
+    },
+    {
+      title: 'Github',
+      href: 'https://github.com/ng-alain',
+      blankTarget: true,
+    },
+    {
+      title: '预览',
+      href: 'https://ng-alain.surge.sh/',
+      blankTarget: true,
+    },
+  ];
+}
自定义

使用 global-footer-item 自定义图标。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-global-footer-custom',
+  template: `
+    <div style="height: 280px;"></div>
+    <global-footer>
+      <global-footer-item href="https://ng-alain.com/" blankTarget>帮助</global-footer-item>
+      <global-footer-item href="https://github.com/ng-alain" blankTarget>
+        <i nz-icon nzType="github"></i>
+      </global-footer-item>
+      <global-footer-item href="https://ng-alain.surge.sh/" blankTarget>预览</global-footer-item>
+      Copyright<i nz-icon nzType="copyright" class="mx-sm"></i>2019<a href="//github.com/cipchk" target="_blank" class="mx-sm">卡色</a>出品
+    </global-footer>
+  `,
+  styles: [
+    `
+      :host {
+        display: block;
+      }
+    `,
+  ],
+})
+export class ComponentsGlobalFooterCustomComponent {}

API

参数说明类型默认值
[links]链接数据GlobalFooterLink-
[copyright]版权信息TemplateRef-
参数说明类型默认值
ng-content标题string-
[href]路由链接string-
[blankTarget]是否打开新窗口booleanfalse
参数说明类型默认值
[title]标题string-
[href]路由链接string-
[blankTarget]是否打开新窗口booleanfalse
\ No newline at end of file diff --git a/components/global-footer/zh/index.html b/components/global-footer/zh/index.html new file mode 100644 index 000000000..ea7a65100 --- /dev/null +++ b/components/global-footer/zh/index.html @@ -0,0 +1,61 @@ +global-footer - NG-ALAIN

全局页脚
IMPORT MODULE

页脚属于全局导航的一部分,作为对顶部导航的补充,通过传递数据控制展示内容。

代码演示

演示

基本页脚。

expand codeexpand code
import { Component } from '@angular/core';
+import { GlobalFooterLink } from '@delon/abc/global-footer';
+
+@Component({
+  selector: 'components-global-footer-basic',
+  template: `
+    <div style="height: 280px;"></div>
+    <global-footer [links]="links">
+      Copyright<i nz-icon nzType="copyright" class="mx-sm"></i>2019<a href="//github.com/cipchk" target="_blank" class="mx-sm">卡色</a>出品
+    </global-footer>
+  `,
+  styles: [
+    `
+      :host {
+        display: block;
+      }
+    `,
+  ],
+})
+export class ComponentsGlobalFooterBasicComponent {
+  links: GlobalFooterLink[] = [
+    {
+      title: '帮助',
+      href: 'https://ng-alain.com/',
+      blankTarget: true,
+    },
+    {
+      title: 'Github',
+      href: 'https://github.com/ng-alain',
+      blankTarget: true,
+    },
+    {
+      title: '预览',
+      href: 'https://ng-alain.surge.sh/',
+      blankTarget: true,
+    },
+  ];
+}
自定义

使用 global-footer-item 自定义图标。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-global-footer-custom',
+  template: `
+    <div style="height: 280px;"></div>
+    <global-footer>
+      <global-footer-item href="https://ng-alain.com/" blankTarget>帮助</global-footer-item>
+      <global-footer-item href="https://github.com/ng-alain" blankTarget>
+        <i nz-icon nzType="github"></i>
+      </global-footer-item>
+      <global-footer-item href="https://ng-alain.surge.sh/" blankTarget>预览</global-footer-item>
+      Copyright<i nz-icon nzType="copyright" class="mx-sm"></i>2019<a href="//github.com/cipchk" target="_blank" class="mx-sm">卡色</a>出品
+    </global-footer>
+  `,
+  styles: [
+    `
+      :host {
+        display: block;
+      }
+    `,
+  ],
+})
+export class ComponentsGlobalFooterCustomComponent {}

API

参数说明类型默认值
[links]链接数据GlobalFooterLink-
[copyright]版权信息TemplateRef-
参数说明类型默认值
ng-content标题string-
[href]路由链接string-
[blankTarget]是否打开新窗口booleanfalse
参数说明类型默认值
[title]标题string-
[href]路由链接string-
[blankTarget]是否打开新窗口booleanfalse
\ No newline at end of file diff --git a/components/highlight/en/index.html b/components/highlight/en/index.html new file mode 100644 index 000000000..5695ccd5d --- /dev/null +++ b/components/highlight/en/index.html @@ -0,0 +1,25 @@ +highlight - NG-ALAIN

高亮
IMPORT MODULE

来自 ng-zorro-antd/core/highlight

代码演示

abcdefghijklmnopqrstuvwxyz

StringSearch Value
基本

最简单的用法。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-highlight-simple',
+  template: `
+    <p class="mb-md" [innerHTML]="str | nzHighlight: searchValue:'i':'highlight'"></p>
+    <nz-input-group nzAddOnBefore="String" class="mb-md">
+      <input type="text" nz-input [(ngModel)]="str" />
+    </nz-input-group>
+    <nz-input-group nzAddOnBefore="Search Value">
+      <input type="text" nz-input [(ngModel)]="searchValue" />
+    </nz-input-group>
+  `,
+  styles: [
+    `
+      :host ::ng-deep .highlight {
+        color: #f50;
+      }
+    `,
+  ],
+})
+export class ComponentsHighlightSimpleComponent {
+  str = [...Array(26)].map((_, i) => (i + 10).toString(36)).join('');
+  searchValue = 'mn';
+}
\ No newline at end of file diff --git a/components/highlight/zh/index.html b/components/highlight/zh/index.html new file mode 100644 index 000000000..c5ac576f9 --- /dev/null +++ b/components/highlight/zh/index.html @@ -0,0 +1,25 @@ +highlight - NG-ALAIN

高亮
IMPORT MODULE

来自 ng-zorro-antd/core/highlight

代码演示

abcdefghijklmnopqrstuvwxyz

StringSearch Value
基本

最简单的用法。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-highlight-simple',
+  template: `
+    <p class="mb-md" [innerHTML]="str | nzHighlight: searchValue:'i':'highlight'"></p>
+    <nz-input-group nzAddOnBefore="String" class="mb-md">
+      <input type="text" nz-input [(ngModel)]="str" />
+    </nz-input-group>
+    <nz-input-group nzAddOnBefore="Search Value">
+      <input type="text" nz-input [(ngModel)]="searchValue" />
+    </nz-input-group>
+  `,
+  styles: [
+    `
+      :host ::ng-deep .highlight {
+        color: #f50;
+      }
+    `,
+  ],
+})
+export class ComponentsHighlightSimpleComponent {
+  str = [...Array(26)].map((_, i) => (i + 10).toString(36)).join('');
+  searchValue = 'mn';
+}
\ No newline at end of file diff --git a/components/hotkey/en/index.html b/components/hotkey/en/index.html new file mode 100644 index 000000000..8c4f9cf0f --- /dev/null +++ b/components/hotkey/en/index.html @@ -0,0 +1,56 @@ +hotkey - NG-ALAIN

热键
IMPORT MODULE

基于 @github/hotke 热键库。

如果不清楚热键值,可通过热键代码来获取。

代码演示







Press o k click this link
基础

最简单的用法。

expand codeexpand code
import { Component } from '@angular/core';
+
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-hotkey-basic',
+  template: `
+    <button
+      nz-button
+      nzType="primary"
+      (click)="show('clicked button 1!')"
+      hotkey="Control+d,Meta+d"
+      data-hotkey-scope="text-area-1"
+    >
+      press meta+d or ctrl+d in text area 1 to click button 1
+    </button>
+    <br />
+    <textarea nz-input id="text-area-1" rows="4" cols="40" hotkey="q" #textArea1 (focus)="selectText(textArea1)">
+text area 1, press q to focus this textarea and select all text</textarea
+    >
+    <br />
+    <button
+      nz-button
+      nzType="primary"
+      (click)="show('clicked button 2!')"
+      hotkey="Control+d,Meta+d"
+      data-hotkey-scope="text-area-2"
+    >
+      press meta+d or ctrl+d in text area 2 to click button 2
+    </button>
+    <br />
+    <textarea nz-input nzType="primary" id="text-area-2" rows="4" cols="40">text area 2</textarea><br />
+    <label><input nz-input hotkey="t" type="text" />Press <kbd>t</kbd> to focus this field</label><br />
+    <label><nz-switch hotkey="r"></nz-switch>Press <kbd>r</kbd> to check/uncheck this checkbox</label><br />
+    <a (click)="show('click link')" nz-button nzType="link" hotkey="o k"> Press <kbd>o k</kbd> click this link </a>
+  `,
+  styles: [
+    `
+      :host kbd {
+        color: #f50;
+        padding: 0 8px;
+      }
+    `
+  ]
+})
+export class ComponentsHotkeyBasicComponent {
+  constructor(private msg: NzMessageService) {}
+
+  show(msg: string): void {
+    this.msg.info(msg);
+  }
+
+  selectText(el: HTMLTextAreaElement): void {
+    el.select();
+  }
+}

API

hotkey

成员说明类型默认值
hotkey指定热键格式string-
\ No newline at end of file diff --git a/components/hotkey/zh/index.html b/components/hotkey/zh/index.html new file mode 100644 index 000000000..eb81334e4 --- /dev/null +++ b/components/hotkey/zh/index.html @@ -0,0 +1,56 @@ +hotkey - NG-ALAIN

热键
IMPORT MODULE

基于 @github/hotke 热键库。

如果不清楚热键值,可通过热键代码来获取。

代码演示







Press o k click this link
基础

最简单的用法。

expand codeexpand code
import { Component } from '@angular/core';
+
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-hotkey-basic',
+  template: `
+    <button
+      nz-button
+      nzType="primary"
+      (click)="show('clicked button 1!')"
+      hotkey="Control+d,Meta+d"
+      data-hotkey-scope="text-area-1"
+    >
+      press meta+d or ctrl+d in text area 1 to click button 1
+    </button>
+    <br />
+    <textarea nz-input id="text-area-1" rows="4" cols="40" hotkey="q" #textArea1 (focus)="selectText(textArea1)">
+text area 1, press q to focus this textarea and select all text</textarea
+    >
+    <br />
+    <button
+      nz-button
+      nzType="primary"
+      (click)="show('clicked button 2!')"
+      hotkey="Control+d,Meta+d"
+      data-hotkey-scope="text-area-2"
+    >
+      press meta+d or ctrl+d in text area 2 to click button 2
+    </button>
+    <br />
+    <textarea nz-input nzType="primary" id="text-area-2" rows="4" cols="40">text area 2</textarea><br />
+    <label><input nz-input hotkey="t" type="text" />Press <kbd>t</kbd> to focus this field</label><br />
+    <label><nz-switch hotkey="r"></nz-switch>Press <kbd>r</kbd> to check/uncheck this checkbox</label><br />
+    <a (click)="show('click link')" nz-button nzType="link" hotkey="o k"> Press <kbd>o k</kbd> click this link </a>
+  `,
+  styles: [
+    `
+      :host kbd {
+        color: #f50;
+        padding: 0 8px;
+      }
+    `
+  ]
+})
+export class ComponentsHotkeyBasicComponent {
+  constructor(private msg: NzMessageService) {}
+
+  show(msg: string): void {
+    this.msg.info(msg);
+  }
+
+  selectText(el: HTMLTextAreaElement): void {
+    el.select();
+  }
+}

API

hotkey

成员说明类型默认值
hotkey指定热键格式string-
\ No newline at end of file diff --git a/components/let/en/index.html b/components/let/en/index.html new file mode 100644 index 000000000..04f151110 --- /dev/null +++ b/components/let/en/index.html @@ -0,0 +1,69 @@ +let - NG-ALAIN

定义
IMPORT MODULE

允许在模板内复用计算值(包含异步),避免重复重新计算。

<div *let="value1 as v">
+  <p>{{ v }}</p>
+</div>
+<div *let="time$ | async as time">
+  <p>{{ time }}</p>
+</div>

代码演示

v1 (use *let directive) called count: 0; v2 called count: 0;

v1

v1

v2

v2

基础样例

最简单的用法。

expand codeexpand code
import { ChangeDetectionStrategy, Component } from '@angular/core';
+
+@Component({
+  selector: 'components-let-simple',
+  template: `
+    <p>v1 (use *let directive) called count: {{ v1Count }}; v2 called count: {{ v2Count }};</p>
+    <div *let="value1 as v">
+      <p>{{ v }}</p>
+      <p>{{ v }}</p>
+    </div>
+    <p>{{ value2 }}</p>
+    <p>{{ value2 }}</p>
+    <button nz-button (click)="update()">Random Value</button>
+  `,
+  changeDetection: ChangeDetectionStrategy.OnPush,
+})
+export class ComponentsLetSimpleComponent {
+  v1Count = 0;
+  v2Count = 0;
+  v1 = 'v1';
+  v2 = 'v2';
+
+  get value1(): string {
+    ++this.v1Count;
+    return this.v1;
+  }
+
+  get value2(): string {
+    ++this.v2Count;
+    return this.v2;
+  }
+
+  update(): void {
+    this.v1 = `v1-${Math.random()}`;
+    this.v2 = `v2-${Math.random()}`;
+  }
+}
异步

一次订阅多次使用。

expand codeexpand code
import { Platform } from '@angular/cdk/platform';
+import { ChangeDetectionStrategy, Component } from '@angular/core';
+import { interval, startWith } from 'rxjs';
+
+import { NzSafeAny } from 'ng-zorro-antd/core/types';
+
+@Component({
+  selector: 'components-let-async',
+  template: `
+    <ng-container *ngIf="timer$ !== null">
+      <ng-container *let="timer$ | async as time">
+        <p>Timer value: {{ time }}</p>
+        <p>Timer value: {{ time }}</p>
+        <p>Timer value: {{ time }}</p>
+      </ng-container>
+    </ng-container>
+  `,
+  changeDetection: ChangeDetectionStrategy.OnPush
+})
+export class ComponentsLetAsyncComponent {
+  timer$: NzSafeAny | null = null;
+
+  constructor(platform: Platform) {
+    if (!platform.isBrowser) return;
+
+    this.timer$ = interval(1000).pipe(startWith(0));
+  }
+}

API

let

参数说明类型默认值全局配置
[let]表达式T--
\ No newline at end of file diff --git a/components/let/zh/index.html b/components/let/zh/index.html new file mode 100644 index 000000000..8ad7355f2 --- /dev/null +++ b/components/let/zh/index.html @@ -0,0 +1,69 @@ +let - NG-ALAIN

定义
IMPORT MODULE

允许在模板内复用计算值(包含异步),避免重复重新计算。

<div *let="value1 as v">
+  <p>{{ v }}</p>
+</div>
+<div *let="time$ | async as time">
+  <p>{{ time }}</p>
+</div>

代码演示

v1 (use *let directive) called count: 0; v2 called count: 0;

v1

v1

v2

v2

基础样例

最简单的用法。

expand codeexpand code
import { ChangeDetectionStrategy, Component } from '@angular/core';
+
+@Component({
+  selector: 'components-let-simple',
+  template: `
+    <p>v1 (use *let directive) called count: {{ v1Count }}; v2 called count: {{ v2Count }};</p>
+    <div *let="value1 as v">
+      <p>{{ v }}</p>
+      <p>{{ v }}</p>
+    </div>
+    <p>{{ value2 }}</p>
+    <p>{{ value2 }}</p>
+    <button nz-button (click)="update()">Random Value</button>
+  `,
+  changeDetection: ChangeDetectionStrategy.OnPush,
+})
+export class ComponentsLetSimpleComponent {
+  v1Count = 0;
+  v2Count = 0;
+  v1 = 'v1';
+  v2 = 'v2';
+
+  get value1(): string {
+    ++this.v1Count;
+    return this.v1;
+  }
+
+  get value2(): string {
+    ++this.v2Count;
+    return this.v2;
+  }
+
+  update(): void {
+    this.v1 = `v1-${Math.random()}`;
+    this.v2 = `v2-${Math.random()}`;
+  }
+}
异步

一次订阅多次使用。

expand codeexpand code
import { Platform } from '@angular/cdk/platform';
+import { ChangeDetectionStrategy, Component } from '@angular/core';
+import { interval, startWith } from 'rxjs';
+
+import { NzSafeAny } from 'ng-zorro-antd/core/types';
+
+@Component({
+  selector: 'components-let-async',
+  template: `
+    <ng-container *ngIf="timer$ !== null">
+      <ng-container *let="timer$ | async as time">
+        <p>Timer value: {{ time }}</p>
+        <p>Timer value: {{ time }}</p>
+        <p>Timer value: {{ time }}</p>
+      </ng-container>
+    </ng-container>
+  `,
+  changeDetection: ChangeDetectionStrategy.OnPush
+})
+export class ComponentsLetAsyncComponent {
+  timer$: NzSafeAny | null = null;
+
+  constructor(platform: Platform) {
+    if (!platform.isBrowser) return;
+
+    this.timer$ = interval(1000).pipe(startWith(0));
+  }
+}

API

let

参数说明类型默认值全局配置
[let]表达式T--
\ No newline at end of file diff --git a/components/loading/en/index.html b/components/loading/en/index.html new file mode 100644 index 000000000..d96bab296 --- /dev/null +++ b/components/loading/en/index.html @@ -0,0 +1,256 @@ +loading - NG-ALAIN

加载指示符
IMPORT MODULE

全局加载指示符,一般用于某个操作需要中断用户操作。

代码演示

基础

最简单的用法。

expand codeexpand code
import { Component } from '@angular/core';
+import { LoadingService, LoadingType } from '@delon/abc/loading';
+
+@Component({
+  selector: 'components-loading-basic',
+  template: `
+    <button nz-button (click)="show('icon')">Icon</button>
+    <button nz-button (click)="show('spin')">Spin</button>
+    <button nz-button (click)="show('text')">Only Text</button>
+  `,
+})
+export class ComponentsLoadingBasicComponent {
+  constructor(private loadingSrv: LoadingService) {}
+
+  show(type: LoadingType): void {
+    this.loadingSrv.open({ type });
+
+    setTimeout(() => this.loadingSrv.close(), 1000 * 3);
+  }
+}
自定义图标

设置 type: 'custom' 自定义加载指示符图标。

expand codeexpand code
import { Component } from '@angular/core';
+import { DomSanitizer } from '@angular/platform-browser';
+import { LoadingCustom, LoadingService } from '@delon/abc/loading';
+
+@Component({
+  selector: 'components-loading-custom',
+  template: ` <button *ngFor="let i of customs" nz-button (click)="show(i)">{{ i.name }}</button> `,
+})
+export class ComponentsLoadingCustomComponent {
+  customs: LoadingCustom[] = [
+    {
+      name: 'Balls',
+      style: {
+        height: '40px',
+        fill: '#1890ff',
+      },
+      html: this.dom.bypassSecurityTrustHtml(`
+      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
+        <path transform="translate(-8 0)" d="M4 12 A4 4 0 0 0 4 20 A4 4 0 0 0 4 12">
+          <animateTransform attributeName="transform" type="translate" values="-8 0; 2 0; 2 0;" dur="0.8s" repeatCount="indefinite" begin="0" keytimes="0;.25;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline"  />
+        </path>
+        <path transform="translate(2 0)" d="M4 12 A4 4 0 0 0 4 20 A4 4 0 0 0 4 12">
+          <animateTransform attributeName="transform" type="translate" values="2 0; 12 0; 12 0;" dur="0.8s" repeatCount="indefinite" begin="0" keytimes="0;.35;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline"  />
+        </path>
+        <path transform="translate(12 0)" d="M4 12 A4 4 0 0 0 4 20 A4 4 0 0 0 4 12">
+          <animateTransform attributeName="transform" type="translate" values="12 0; 22 0; 22 0;" dur="0.8s" repeatCount="indefinite" begin="0" keytimes="0;.45;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline"  />
+        </path>
+        <path transform="translate(24 0)" d="M4 12 A4 4 0 0 0 4 20 A4 4 0 0 0 4 12">
+          <animateTransform attributeName="transform" type="translate" values="22 0; 32 0; 32 0;" dur="0.8s" repeatCount="indefinite" begin="0" keytimes="0;.55;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline"  />
+        </path>
+      </svg>`),
+    },
+    {
+      name: 'Bars',
+      style: {
+        fill: '#1890ff',
+      },
+      html: this.dom.bypassSecurityTrustHtml(`
+      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
+        <path transform="translate(2)" d="M0 12 V20 H4 V12z">
+          <animate attributeName="d" values="M0 12 V20 H4 V12z; M0 4 V28 H4 V4z; M0 12 V20 H4 V12z; M0 12 V20 H4 V12z" dur="1.2s" repeatCount="indefinite" begin="0" keytimes="0;.2;.5;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8;0.2 0.8 0.4 0.8" calcMode="spline"  />
+        </path>
+        <path transform="translate(8)" d="M0 12 V20 H4 V12z">
+          <animate attributeName="d" values="M0 12 V20 H4 V12z; M0 4 V28 H4 V4z; M0 12 V20 H4 V12z; M0 12 V20 H4 V12z" dur="1.2s" repeatCount="indefinite" begin="0.2" keytimes="0;.2;.5;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8;0.2 0.8 0.4 0.8" calcMode="spline"  />
+        </path>
+        <path transform="translate(14)" d="M0 12 V20 H4 V12z">
+          <animate attributeName="d" values="M0 12 V20 H4 V12z; M0 4 V28 H4 V4z; M0 12 V20 H4 V12z; M0 12 V20 H4 V12z" dur="1.2s" repeatCount="indefinite" begin="0.4" keytimes="0;.2;.5;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8;0.2 0.8 0.4 0.8" calcMode="spline" />
+        </path>
+        <path transform="translate(20)" d="M0 12 V20 H4 V12z">
+          <animate attributeName="d" values="M0 12 V20 H4 V12z; M0 4 V28 H4 V4z; M0 12 V20 H4 V12z; M0 12 V20 H4 V12z" dur="1.2s" repeatCount="indefinite" begin="0.6" keytimes="0;.2;.5;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8;0.2 0.8 0.4 0.8" calcMode="spline" />
+        </path>
+        <path transform="translate(26)" d="M0 12 V20 H4 V12z">
+          <animate attributeName="d" values="M0 12 V20 H4 V12z; M0 4 V28 H4 V4z; M0 12 V20 H4 V12z; M0 12 V20 H4 V12z" dur="1.2s" repeatCount="indefinite" begin="0.8" keytimes="0;.2;.5;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8;0.2 0.8 0.4 0.8" calcMode="spline" />
+        </path>
+      </svg>`),
+    },
+    {
+      name: 'Bubbles',
+      style: {
+        height: '40px',
+        fill: '#1890ff',
+      },
+      html: this.dom.bypassSecurityTrustHtml(`
+      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
+        <circle transform="translate(8 0)" cx="0" cy="16" r="0">
+          <animate attributeName="r" values="0; 4; 0; 0" dur="1.2s" repeatCount="indefinite" begin="0"
+            keytimes="0;0.2;0.7;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline" />
+        </circle>
+        <circle transform="translate(16 0)" cx="0" cy="16" r="0">
+          <animate attributeName="r" values="0; 4; 0; 0" dur="1.2s" repeatCount="indefinite" begin="0.3"
+            keytimes="0;0.2;0.7;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline" />
+        </circle>
+        <circle transform="translate(24 0)" cx="0" cy="16" r="0">
+          <animate attributeName="r" values="0; 4; 0; 0" dur="1.2s" repeatCount="indefinite" begin="0.6"
+            keytimes="0;0.2;0.7;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline" />
+        </circle>
+      </svg>`),
+    },
+    {
+      name: 'Cubes',
+      style: {
+        height: '40px',
+        fill: '#1890ff',
+      },
+      html: this.dom.bypassSecurityTrustHtml(`
+      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
+        <path transform="translate(-8 0)" d="M0 12 V20 H8 V12z">
+          <animateTransform attributeName="transform" type="translate" values="-8 0; 2 0; 2 0;" dur="0.8s" repeatCount="indefinite" begin="0" keytimes="0;.25;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline"  />
+        </path>
+        <path transform="translate(2 0)" d="M0 12 V20 H8 V12z">
+          <animateTransform attributeName="transform" type="translate" values="2 0; 12 0; 12 0;" dur="0.8s" repeatCount="indefinite" begin="0" keytimes="0;.35;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline"  />
+        </path>
+        <path transform="translate(12 0)" d="M0 12 V20 H8 V12z">
+          <animateTransform attributeName="transform" type="translate" values="12 0; 22 0; 22 0;" dur="0.8s" repeatCount="indefinite" begin="0" keytimes="0;.45;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline"  />
+        </path>
+        <path transform="translate(24 0)" d="M0 12 V20 H8 V12z">
+          <animateTransform attributeName="transform" type="translate" values="22 0; 32 0; 32 0;" dur="0.8s" repeatCount="indefinite" begin="0" keytimes="0;.55;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline"  />
+        </path>
+      </svg>`),
+    },
+    {
+      name: 'Cylon',
+      style: {
+        height: '40px',
+        fill: '#1890ff',
+      },
+      html: this.dom.bypassSecurityTrustHtml(`
+      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
+        <path transform="translate(0 0)" d="M0 12 V20 H4 V12z">
+          <animateTransform attributeName="transform" type="translate" values="0 0; 28 0; 0 0; 0 0" dur="1.5s" begin="0" repeatCount="indefinite" keytimes="0;0.3;0.6;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
+        </path>
+        <path opacity="0.5" transform="translate(0 0)" d="M0 12 V20 H4 V12z">
+          <animateTransform attributeName="transform" type="translate" values="0 0; 28 0; 0 0; 0 0" dur="1.5s" begin="0.1s" repeatCount="indefinite" keytimes="0;0.3;0.6;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
+        </path>
+        <path opacity="0.25" transform="translate(0 0)" d="M0 12 V20 H4 V12z">
+          <animateTransform attributeName="transform" type="translate" values="0 0; 28 0; 0 0; 0 0" dur="1.5s" begin="0.2s" repeatCount="indefinite" keytimes="0;0.3;0.6;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
+        </path>
+      </svg>`),
+    },
+    {
+      name: 'Spin',
+      style: {
+        fill: '#1890ff',
+      },
+      html: this.dom.bypassSecurityTrustHtml(`
+      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
+        <path opacity=".25" d="M16 0 A16 16 0 0 0 16 32 A16 16 0 0 0 16 0 M16 4 A12 12 0 0 1 16 28 A12 12 0 0 1 16 4"/>
+        <path d="M16 0 A16 16 0 0 1 32 16 L28 16 A12 12 0 0 0 16 4z">
+          <animateTransform attributeName="transform" type="rotate" from="0 16 16" to="360 16 16" dur="0.8s" repeatCount="indefinite" />
+        </path>
+      </svg>`),
+    },
+    {
+      name: 'Spinning Bubbles',
+      style: {
+        fill: '#1890ff',
+      },
+      html: this.dom.bypassSecurityTrustHtml(`
+      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
+        <circle cx="16" cy="3" r="0">
+          <animate attributeName="r" values="0;3;0;0" dur="1s" repeatCount="indefinite" begin="0" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
+        </circle>
+        <circle transform="rotate(45 16 16)" cx="16" cy="3" r="0">
+          <animate attributeName="r" values="0;3;0;0" dur="1s" repeatCount="indefinite" begin="0.125s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
+        </circle>
+        <circle transform="rotate(90 16 16)" cx="16" cy="3" r="0">
+          <animate attributeName="r" values="0;3;0;0" dur="1s" repeatCount="indefinite" begin="0.25s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
+        </circle>
+        <circle transform="rotate(135 16 16)" cx="16" cy="3" r="0">
+          <animate attributeName="r" values="0;3;0;0" dur="1s" repeatCount="indefinite" begin="0.375s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
+        </circle>
+        <circle transform="rotate(180 16 16)" cx="16" cy="3" r="0">
+          <animate attributeName="r" values="0;3;0;0" dur="1s" repeatCount="indefinite" begin="0.5s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
+        </circle>
+        <circle transform="rotate(225 16 16)" cx="16" cy="3" r="0">
+          <animate attributeName="r" values="0;3;0;0" dur="1s" repeatCount="indefinite" begin="0.625s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
+        </circle>
+        <circle transform="rotate(270 16 16)" cx="16" cy="3" r="0">
+          <animate attributeName="r" values="0;3;0;0" dur="1s" repeatCount="indefinite" begin="0.75s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
+        </circle>
+        <circle transform="rotate(315 16 16)" cx="16" cy="3" r="0">
+          <animate attributeName="r" values="0;3;0;0" dur="1s" repeatCount="indefinite" begin="0.875s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
+        </circle>
+        <circle transform="rotate(180 16 16)" cx="16" cy="3" r="0">
+          <animate attributeName="r" values="0;3;0;0" dur="1s" repeatCount="indefinite" begin="0.5s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
+        </circle>
+      </svg>`),
+    },
+    {
+      name: 'Spokes',
+      style: {
+        fill: '#1890ff',
+      },
+      html: this.dom.bypassSecurityTrustHtml(`
+      <svg id="loading" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
+        <path opacity=".1" d="M14 0 H18 V8 H14 z" transform="rotate(0 16 16)">
+          <animate attributeName="opacity" from="1" to=".1" dur="1s" repeatCount="indefinite" begin="0"/>
+        </path>
+        <path opacity=".1" d="M14 0 H18 V8 H14 z" transform="rotate(45 16 16)">
+          <animate attributeName="opacity" from="1" to=".1" dur="1s" repeatCount="indefinite" begin="0.125s"/>
+        </path>
+        <path opacity=".1" d="M14 0 H18 V8 H14 z" transform="rotate(90 16 16)">
+          <animate attributeName="opacity" from="1" to=".1" dur="1s" repeatCount="indefinite" begin="0.25s"/>
+        </path>
+        <path opacity=".1" d="M14 0 H18 V8 H14 z" transform="rotate(135 16 16)">
+          <animate attributeName="opacity" from="1" to=".1" dur="1s" repeatCount="indefinite" begin="0.375s"/>
+        </path>
+        <path opacity=".1" d="M14 0 H18 V8 H14 z" transform="rotate(180 16 16)">
+          <animate attributeName="opacity" from="1" to=".1" dur="1s" repeatCount="indefinite" begin="0.5s"/>
+        </path>
+        <path opacity=".1" d="M14 0 H18 V8 H14 z" transform="rotate(225 16 16)">
+          <animate attributeName="opacity" from="1" to=".1" dur="1s" repeatCount="indefinite" begin="0.675s"/>
+        </path>
+        <path opacity=".1" d="M14 0 H18 V8 H14 z" transform="rotate(270 16 16)">
+          <animate attributeName="opacity" from="1" to=".1" dur="1s" repeatCount="indefinite" begin="0.75s"/>
+        </path>
+        <path opacity=".1" d="M14 0 H18 V8 H14 z" transform="rotate(315 16 16)">
+          <animate attributeName="opacity" from="1" to=".1" dur="1s" repeatCount="indefinite" begin="0.875s"/>
+        </path>
+      </svg>`),
+    },
+  ];
+
+  constructor(private loadingSrv: LoadingService, private dom: DomSanitizer) {}
+
+  show(custom: LoadingCustom): void {
+    this.loadingSrv.open({
+      type: 'custom',
+      custom,
+      text: 'Loading...(Auto close after 3s)',
+    });
+
+    setTimeout(() => this.loadingSrv.close(), 1000 * 3);
+  }
+}
延迟

延迟显示 loading 效果。当调用 open()delay 时间内调用 close(),则不显示 loading 状态。

expand codeexpand code
import { Component } from '@angular/core';
+import { LoadingService } from '@delon/abc/loading';
+
+@Component({
+  selector: 'components-loading-delay',
+  template: `
+    <button nz-button (click)="show()">Display after 1 seconds</button>
+    <button nz-button (click)="close()">Close</button>
+  `,
+})
+export class ComponentsLoadingDelayComponent {
+  constructor(private loadingSrv: LoadingService) {}
+
+  show(): void {
+    this.loadingSrv.open({ delay: 1000 });
+
+    setTimeout(() => this.loadingSrv.close(), 1000 * 5);
+  }
+
+  close(): void {
+    this.loadingSrv.close();
+  }
+}

API

LoadingService

名称说明
open(options?: LoadingShowOptions)打开一个新加载指示符
close()关闭一个加载指示符

LoadingShowOptions

成员说明类型默认值全局配置
type显示类型LoadingTypespin
text描述文案string加载中...
icon类型为 icon 的配置项LoadingIcon-
custom类型为 custom 的配置项LoadingCustom-
delay延迟显示加载效果的时间(防止闪烁),单位:毫秒number-
\ No newline at end of file diff --git a/components/loading/zh/index.html b/components/loading/zh/index.html new file mode 100644 index 000000000..28b146ed1 --- /dev/null +++ b/components/loading/zh/index.html @@ -0,0 +1,256 @@ +loading - NG-ALAIN

加载指示符
IMPORT MODULE

全局加载指示符,一般用于某个操作需要中断用户操作。

代码演示

基础

最简单的用法。

expand codeexpand code
import { Component } from '@angular/core';
+import { LoadingService, LoadingType } from '@delon/abc/loading';
+
+@Component({
+  selector: 'components-loading-basic',
+  template: `
+    <button nz-button (click)="show('icon')">Icon</button>
+    <button nz-button (click)="show('spin')">Spin</button>
+    <button nz-button (click)="show('text')">Only Text</button>
+  `,
+})
+export class ComponentsLoadingBasicComponent {
+  constructor(private loadingSrv: LoadingService) {}
+
+  show(type: LoadingType): void {
+    this.loadingSrv.open({ type });
+
+    setTimeout(() => this.loadingSrv.close(), 1000 * 3);
+  }
+}
自定义图标

设置 type: 'custom' 自定义加载指示符图标。

expand codeexpand code
import { Component } from '@angular/core';
+import { DomSanitizer } from '@angular/platform-browser';
+import { LoadingCustom, LoadingService } from '@delon/abc/loading';
+
+@Component({
+  selector: 'components-loading-custom',
+  template: ` <button *ngFor="let i of customs" nz-button (click)="show(i)">{{ i.name }}</button> `,
+})
+export class ComponentsLoadingCustomComponent {
+  customs: LoadingCustom[] = [
+    {
+      name: 'Balls',
+      style: {
+        height: '40px',
+        fill: '#1890ff',
+      },
+      html: this.dom.bypassSecurityTrustHtml(`
+      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
+        <path transform="translate(-8 0)" d="M4 12 A4 4 0 0 0 4 20 A4 4 0 0 0 4 12">
+          <animateTransform attributeName="transform" type="translate" values="-8 0; 2 0; 2 0;" dur="0.8s" repeatCount="indefinite" begin="0" keytimes="0;.25;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline"  />
+        </path>
+        <path transform="translate(2 0)" d="M4 12 A4 4 0 0 0 4 20 A4 4 0 0 0 4 12">
+          <animateTransform attributeName="transform" type="translate" values="2 0; 12 0; 12 0;" dur="0.8s" repeatCount="indefinite" begin="0" keytimes="0;.35;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline"  />
+        </path>
+        <path transform="translate(12 0)" d="M4 12 A4 4 0 0 0 4 20 A4 4 0 0 0 4 12">
+          <animateTransform attributeName="transform" type="translate" values="12 0; 22 0; 22 0;" dur="0.8s" repeatCount="indefinite" begin="0" keytimes="0;.45;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline"  />
+        </path>
+        <path transform="translate(24 0)" d="M4 12 A4 4 0 0 0 4 20 A4 4 0 0 0 4 12">
+          <animateTransform attributeName="transform" type="translate" values="22 0; 32 0; 32 0;" dur="0.8s" repeatCount="indefinite" begin="0" keytimes="0;.55;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline"  />
+        </path>
+      </svg>`),
+    },
+    {
+      name: 'Bars',
+      style: {
+        fill: '#1890ff',
+      },
+      html: this.dom.bypassSecurityTrustHtml(`
+      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
+        <path transform="translate(2)" d="M0 12 V20 H4 V12z">
+          <animate attributeName="d" values="M0 12 V20 H4 V12z; M0 4 V28 H4 V4z; M0 12 V20 H4 V12z; M0 12 V20 H4 V12z" dur="1.2s" repeatCount="indefinite" begin="0" keytimes="0;.2;.5;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8;0.2 0.8 0.4 0.8" calcMode="spline"  />
+        </path>
+        <path transform="translate(8)" d="M0 12 V20 H4 V12z">
+          <animate attributeName="d" values="M0 12 V20 H4 V12z; M0 4 V28 H4 V4z; M0 12 V20 H4 V12z; M0 12 V20 H4 V12z" dur="1.2s" repeatCount="indefinite" begin="0.2" keytimes="0;.2;.5;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8;0.2 0.8 0.4 0.8" calcMode="spline"  />
+        </path>
+        <path transform="translate(14)" d="M0 12 V20 H4 V12z">
+          <animate attributeName="d" values="M0 12 V20 H4 V12z; M0 4 V28 H4 V4z; M0 12 V20 H4 V12z; M0 12 V20 H4 V12z" dur="1.2s" repeatCount="indefinite" begin="0.4" keytimes="0;.2;.5;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8;0.2 0.8 0.4 0.8" calcMode="spline" />
+        </path>
+        <path transform="translate(20)" d="M0 12 V20 H4 V12z">
+          <animate attributeName="d" values="M0 12 V20 H4 V12z; M0 4 V28 H4 V4z; M0 12 V20 H4 V12z; M0 12 V20 H4 V12z" dur="1.2s" repeatCount="indefinite" begin="0.6" keytimes="0;.2;.5;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8;0.2 0.8 0.4 0.8" calcMode="spline" />
+        </path>
+        <path transform="translate(26)" d="M0 12 V20 H4 V12z">
+          <animate attributeName="d" values="M0 12 V20 H4 V12z; M0 4 V28 H4 V4z; M0 12 V20 H4 V12z; M0 12 V20 H4 V12z" dur="1.2s" repeatCount="indefinite" begin="0.8" keytimes="0;.2;.5;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8;0.2 0.8 0.4 0.8" calcMode="spline" />
+        </path>
+      </svg>`),
+    },
+    {
+      name: 'Bubbles',
+      style: {
+        height: '40px',
+        fill: '#1890ff',
+      },
+      html: this.dom.bypassSecurityTrustHtml(`
+      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
+        <circle transform="translate(8 0)" cx="0" cy="16" r="0">
+          <animate attributeName="r" values="0; 4; 0; 0" dur="1.2s" repeatCount="indefinite" begin="0"
+            keytimes="0;0.2;0.7;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline" />
+        </circle>
+        <circle transform="translate(16 0)" cx="0" cy="16" r="0">
+          <animate attributeName="r" values="0; 4; 0; 0" dur="1.2s" repeatCount="indefinite" begin="0.3"
+            keytimes="0;0.2;0.7;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline" />
+        </circle>
+        <circle transform="translate(24 0)" cx="0" cy="16" r="0">
+          <animate attributeName="r" values="0; 4; 0; 0" dur="1.2s" repeatCount="indefinite" begin="0.6"
+            keytimes="0;0.2;0.7;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline" />
+        </circle>
+      </svg>`),
+    },
+    {
+      name: 'Cubes',
+      style: {
+        height: '40px',
+        fill: '#1890ff',
+      },
+      html: this.dom.bypassSecurityTrustHtml(`
+      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
+        <path transform="translate(-8 0)" d="M0 12 V20 H8 V12z">
+          <animateTransform attributeName="transform" type="translate" values="-8 0; 2 0; 2 0;" dur="0.8s" repeatCount="indefinite" begin="0" keytimes="0;.25;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline"  />
+        </path>
+        <path transform="translate(2 0)" d="M0 12 V20 H8 V12z">
+          <animateTransform attributeName="transform" type="translate" values="2 0; 12 0; 12 0;" dur="0.8s" repeatCount="indefinite" begin="0" keytimes="0;.35;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline"  />
+        </path>
+        <path transform="translate(12 0)" d="M0 12 V20 H8 V12z">
+          <animateTransform attributeName="transform" type="translate" values="12 0; 22 0; 22 0;" dur="0.8s" repeatCount="indefinite" begin="0" keytimes="0;.45;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline"  />
+        </path>
+        <path transform="translate(24 0)" d="M0 12 V20 H8 V12z">
+          <animateTransform attributeName="transform" type="translate" values="22 0; 32 0; 32 0;" dur="0.8s" repeatCount="indefinite" begin="0" keytimes="0;.55;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline"  />
+        </path>
+      </svg>`),
+    },
+    {
+      name: 'Cylon',
+      style: {
+        height: '40px',
+        fill: '#1890ff',
+      },
+      html: this.dom.bypassSecurityTrustHtml(`
+      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
+        <path transform="translate(0 0)" d="M0 12 V20 H4 V12z">
+          <animateTransform attributeName="transform" type="translate" values="0 0; 28 0; 0 0; 0 0" dur="1.5s" begin="0" repeatCount="indefinite" keytimes="0;0.3;0.6;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
+        </path>
+        <path opacity="0.5" transform="translate(0 0)" d="M0 12 V20 H4 V12z">
+          <animateTransform attributeName="transform" type="translate" values="0 0; 28 0; 0 0; 0 0" dur="1.5s" begin="0.1s" repeatCount="indefinite" keytimes="0;0.3;0.6;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
+        </path>
+        <path opacity="0.25" transform="translate(0 0)" d="M0 12 V20 H4 V12z">
+          <animateTransform attributeName="transform" type="translate" values="0 0; 28 0; 0 0; 0 0" dur="1.5s" begin="0.2s" repeatCount="indefinite" keytimes="0;0.3;0.6;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
+        </path>
+      </svg>`),
+    },
+    {
+      name: 'Spin',
+      style: {
+        fill: '#1890ff',
+      },
+      html: this.dom.bypassSecurityTrustHtml(`
+      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
+        <path opacity=".25" d="M16 0 A16 16 0 0 0 16 32 A16 16 0 0 0 16 0 M16 4 A12 12 0 0 1 16 28 A12 12 0 0 1 16 4"/>
+        <path d="M16 0 A16 16 0 0 1 32 16 L28 16 A12 12 0 0 0 16 4z">
+          <animateTransform attributeName="transform" type="rotate" from="0 16 16" to="360 16 16" dur="0.8s" repeatCount="indefinite" />
+        </path>
+      </svg>`),
+    },
+    {
+      name: 'Spinning Bubbles',
+      style: {
+        fill: '#1890ff',
+      },
+      html: this.dom.bypassSecurityTrustHtml(`
+      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
+        <circle cx="16" cy="3" r="0">
+          <animate attributeName="r" values="0;3;0;0" dur="1s" repeatCount="indefinite" begin="0" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
+        </circle>
+        <circle transform="rotate(45 16 16)" cx="16" cy="3" r="0">
+          <animate attributeName="r" values="0;3;0;0" dur="1s" repeatCount="indefinite" begin="0.125s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
+        </circle>
+        <circle transform="rotate(90 16 16)" cx="16" cy="3" r="0">
+          <animate attributeName="r" values="0;3;0;0" dur="1s" repeatCount="indefinite" begin="0.25s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
+        </circle>
+        <circle transform="rotate(135 16 16)" cx="16" cy="3" r="0">
+          <animate attributeName="r" values="0;3;0;0" dur="1s" repeatCount="indefinite" begin="0.375s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
+        </circle>
+        <circle transform="rotate(180 16 16)" cx="16" cy="3" r="0">
+          <animate attributeName="r" values="0;3;0;0" dur="1s" repeatCount="indefinite" begin="0.5s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
+        </circle>
+        <circle transform="rotate(225 16 16)" cx="16" cy="3" r="0">
+          <animate attributeName="r" values="0;3;0;0" dur="1s" repeatCount="indefinite" begin="0.625s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
+        </circle>
+        <circle transform="rotate(270 16 16)" cx="16" cy="3" r="0">
+          <animate attributeName="r" values="0;3;0;0" dur="1s" repeatCount="indefinite" begin="0.75s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
+        </circle>
+        <circle transform="rotate(315 16 16)" cx="16" cy="3" r="0">
+          <animate attributeName="r" values="0;3;0;0" dur="1s" repeatCount="indefinite" begin="0.875s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
+        </circle>
+        <circle transform="rotate(180 16 16)" cx="16" cy="3" r="0">
+          <animate attributeName="r" values="0;3;0;0" dur="1s" repeatCount="indefinite" begin="0.5s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
+        </circle>
+      </svg>`),
+    },
+    {
+      name: 'Spokes',
+      style: {
+        fill: '#1890ff',
+      },
+      html: this.dom.bypassSecurityTrustHtml(`
+      <svg id="loading" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
+        <path opacity=".1" d="M14 0 H18 V8 H14 z" transform="rotate(0 16 16)">
+          <animate attributeName="opacity" from="1" to=".1" dur="1s" repeatCount="indefinite" begin="0"/>
+        </path>
+        <path opacity=".1" d="M14 0 H18 V8 H14 z" transform="rotate(45 16 16)">
+          <animate attributeName="opacity" from="1" to=".1" dur="1s" repeatCount="indefinite" begin="0.125s"/>
+        </path>
+        <path opacity=".1" d="M14 0 H18 V8 H14 z" transform="rotate(90 16 16)">
+          <animate attributeName="opacity" from="1" to=".1" dur="1s" repeatCount="indefinite" begin="0.25s"/>
+        </path>
+        <path opacity=".1" d="M14 0 H18 V8 H14 z" transform="rotate(135 16 16)">
+          <animate attributeName="opacity" from="1" to=".1" dur="1s" repeatCount="indefinite" begin="0.375s"/>
+        </path>
+        <path opacity=".1" d="M14 0 H18 V8 H14 z" transform="rotate(180 16 16)">
+          <animate attributeName="opacity" from="1" to=".1" dur="1s" repeatCount="indefinite" begin="0.5s"/>
+        </path>
+        <path opacity=".1" d="M14 0 H18 V8 H14 z" transform="rotate(225 16 16)">
+          <animate attributeName="opacity" from="1" to=".1" dur="1s" repeatCount="indefinite" begin="0.675s"/>
+        </path>
+        <path opacity=".1" d="M14 0 H18 V8 H14 z" transform="rotate(270 16 16)">
+          <animate attributeName="opacity" from="1" to=".1" dur="1s" repeatCount="indefinite" begin="0.75s"/>
+        </path>
+        <path opacity=".1" d="M14 0 H18 V8 H14 z" transform="rotate(315 16 16)">
+          <animate attributeName="opacity" from="1" to=".1" dur="1s" repeatCount="indefinite" begin="0.875s"/>
+        </path>
+      </svg>`),
+    },
+  ];
+
+  constructor(private loadingSrv: LoadingService, private dom: DomSanitizer) {}
+
+  show(custom: LoadingCustom): void {
+    this.loadingSrv.open({
+      type: 'custom',
+      custom,
+      text: 'Loading...(Auto close after 3s)',
+    });
+
+    setTimeout(() => this.loadingSrv.close(), 1000 * 3);
+  }
+}
延迟

延迟显示 loading 效果。当调用 open()delay 时间内调用 close(),则不显示 loading 状态。

expand codeexpand code
import { Component } from '@angular/core';
+import { LoadingService } from '@delon/abc/loading';
+
+@Component({
+  selector: 'components-loading-delay',
+  template: `
+    <button nz-button (click)="show()">Display after 1 seconds</button>
+    <button nz-button (click)="close()">Close</button>
+  `,
+})
+export class ComponentsLoadingDelayComponent {
+  constructor(private loadingSrv: LoadingService) {}
+
+  show(): void {
+    this.loadingSrv.open({ delay: 1000 });
+
+    setTimeout(() => this.loadingSrv.close(), 1000 * 5);
+  }
+
+  close(): void {
+    this.loadingSrv.close();
+  }
+}

API

LoadingService

名称说明
open(options?: LoadingShowOptions)打开一个新加载指示符
close()关闭一个加载指示符

LoadingShowOptions

成员说明类型默认值全局配置
type显示类型LoadingTypespin
text描述文案string加载中...
icon类型为 icon 的配置项LoadingIcon-
custom类型为 custom 的配置项LoadingCustom-
delay延迟显示加载效果的时间(防止闪烁),单位:毫秒number-
\ No newline at end of file diff --git a/components/lodop/en/index.html b/components/lodop/en/index.html new file mode 100644 index 000000000..bbbe1910f --- /dev/null +++ b/components/lodop/en/index.html @@ -0,0 +1,237 @@ +lodop - NG-ALAIN

Lodop打印
IMPORT MODULE

Lodop 打印的基础实现,商用需要购买KEY。(同时感谢 lodop 为 ng-alain 免费提供正版KEY)

运行示例的前提条件必须安装Lodop

代码演示

请选择打印机
请选择纸张类型
仅限HTML,更多类型支持请参考官网
基础

获取打印服务器(包括:远程)信息。

expand codeexpand code
import { Component } from '@angular/core';
+import { Lodop, LodopService } from '@delon/abc/lodop';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-lodop-print',
+  template: `
+    <nz-alert *ngIf="error" [nzType]="'warning'" [nzMessage]="message">
+      <ng-template #message>
+        请先下载<a href="http://c-lodop.com/download.html" target="_blank">Lodop插件</a>, 安装后点击<a (click)="reload()">重试</a>。
+      </ng-template>
+    </nz-alert>
+    <form *ngIf="!error" nz-form>
+      <nz-form-item nz-row>
+        <nz-form-label nz-col [nzSm]="6">打印服务器</nz-form-label>
+        <nz-form-control nz-col [nzSm]="18">
+          <nz-input-group>
+            <div nz-col [nzSpan]="16">
+              <input nz-input nzPlaceHolder="https://localhost:8443/CLodopfuncs.js" [(ngModel)]="cog.url" name="url" />
+            </div>
+            <div nz-col [nzSpan]="8">
+              <button nz-button (click)="reload(null)">重新加载打印机</button>
+            </div>
+          </nz-input-group>
+        </nz-form-control>
+      </nz-form-item>
+      <nz-form-item nz-row>
+        <nz-form-label nz-col [nzSm]="6">打印机</nz-form-label>
+        <nz-form-control nz-col [nzSm]="18">
+          <nz-select
+            style="width:90%;"
+            nzPlaceHolder="请选择打印机"
+            nzShowSearch
+            nzAllowClear
+            [(ngModel)]="cog.printer"
+            name="printer"
+            (ngModelChange)="changePinter($event)"
+          >
+            <nz-option *ngFor="let name of pinters" [nzLabel]="name" [nzValue]="name"> </nz-option>
+          </nz-select>
+        </nz-form-control>
+      </nz-form-item>
+      <nz-form-item nz-row>
+        <nz-form-label nz-col [nzSm]="6">纸张类型</nz-form-label>
+        <nz-form-control nz-col [nzSm]="18">
+          <nz-select style="width:90%;" nzPlaceHolder="请选择纸张类型" nzShowSearch nzAllowClear [(ngModel)]="cog.paper" name="paper">
+            <nz-option *ngFor="let name of papers" [nzLabel]="name" [nzValue]="name"> </nz-option>
+          </nz-select>
+        </nz-form-control>
+      </nz-form-item>
+      <nz-form-item nz-row>
+        <nz-form-label nz-col [nzSm]="6">打印内容</nz-form-label>
+        <nz-form-control nz-col [nzSm]="18" nzExtra="仅限HTML,更多类型支持请参考官网">
+          <textarea nz-input [(ngModel)]="cog.html" name="html" nzAutosize></textarea>
+        </nz-form-control>
+      </nz-form-item>
+      <nz-form-item nz-row>
+        <nz-form-control nz-col [nzSm]="18" [nzOffset]="6">
+          <button nz-button (click)="print(true)" [nzLoading]="printing">打印预览</button>
+          <button nz-button (click)="print()" [nzLoading]="printing">直接打印</button>
+        </nz-form-control>
+      </nz-form-item>
+    </form>
+  `,
+})
+export class ComponentsLodopPrintComponent {
+  constructor(private lodopSrv: LodopService, private msg: NzMessageService) {
+    this.lodopSrv.lodop.subscribe(({ lodop, ok }) => {
+      if (!ok) {
+        this.error = true;
+        return;
+      }
+      this.error = false;
+      this.msg.success(`打印机加载成功`);
+      this.lodop = lodop as Lodop;
+      this.pinters = this.lodopSrv.printer;
+    });
+  }
+  cog: any = {
+    url: 'https://localhost:8443/CLodopfuncs.js',
+    printer: '',
+    paper: '',
+    html: `
+        <h1>Title</h1>
+        <p>这~!@#¥%……&*()——sdilfjnvn</p>
+        <p>这~!@#¥%……&*()——sdilfjnvn</p>
+        <p>这~!@#¥%……&*()——sdilfjnvn</p>
+        <p>这~!@#¥%……&*()——sdilfjnvn</p>
+        <p>这~!@#¥%……&*()——sdilfjnvn</p>
+        `,
+  };
+  error = false;
+  lodop: Lodop | null = null;
+  pinters: any[] = [];
+  papers: string[] = [];
+
+  printing = false;
+
+  reload(options: any = { url: 'https://localhost:8443/CLodopfuncs.js' }): void {
+    this.pinters = [];
+    this.papers = [];
+    this.cog.printer = '';
+    this.cog.paper = '';
+
+    this.lodopSrv.cog = { ...this.cog, ...options };
+    this.error = false;
+    if (options === null) this.lodopSrv.reset();
+  }
+
+  changePinter(name: string): void {
+    this.papers = this.lodop!.GET_PAGESIZES_LIST(name, '\n').split('\n');
+  }
+  print(isPrivew: boolean = false): void {
+    const LODOP = this.lodop!;
+    LODOP.PRINT_INITA(10, 20, 810, 610, '测试C-Lodop远程打印四步骤');
+    LODOP.SET_PRINTER_INDEXA(this.cog.printer);
+    LODOP.SET_PRINT_PAGESIZE(0, 0, 0, this.cog.paper);
+    LODOP.ADD_PRINT_TEXT(1, 1, 300, 200, '下面输出的是本页源代码及其展现效果:');
+    LODOP.ADD_PRINT_TEXT(20, 10, '90%', '95%', this.cog.html);
+    LODOP.SET_PRINT_STYLEA(0, 'ItemType', 4);
+    LODOP.NewPageA();
+    LODOP.ADD_PRINT_HTM(20, 10, '90%', '95%', this.cog.html);
+    if (isPrivew) LODOP.PREVIEW();
+    else LODOP.PRINT();
+  }
+}
打印设计

使用打印设计对字体、字号、对象排版等,并利用 attachCode 方法自动附加设计生成的代码至 Lodop 对象,且支持动态参数。调用 print 方法来打印数据并通过监听 events 判断进行下一个打印,从而实现无限制批量套打。

expand codeexpand code
import { Component } from '@angular/core';
+import { Lodop, LodopService } from '@delon/abc/lodop';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-lodop-design',
+  template: `
+    <nz-alert *ngIf="error" [nzType]="'warning'" [nzMessage]="message">
+      <ng-template #message> 请先下载<a href="http://c-lodop.com/download.html" target="_blank">Lodop插件</a>。 </ng-template>
+    </nz-alert>
+    <form *ngIf="lodop && !error" nz-form>
+      <nz-form-item nz-row>
+        <nz-form-label nz-col [nzSm]="6">标题</nz-form-label>
+        <nz-form-control nz-col [nzSm]="18">
+          <input nz-input [(ngModel)]="context['标题']" name="标题" />
+        </nz-form-control>
+      </nz-form-item>
+      <nz-form-item nz-row>
+        <nz-form-label nz-col [nzSm]="6">费用</nz-form-label>
+        <nz-form-control nz-col [nzSm]="18">
+          <input nz-input [(ngModel)]="context['费用']" name="费用" />
+        </nz-form-control>
+      </nz-form-item>
+      <nz-form-item nz-row>
+        <nz-form-label nz-col [nzSm]="6">打印内容</nz-form-label>
+        <nz-form-control nz-col [nzSm]="18">
+          <textarea [(ngModel)]="code" name="code" nz-input [nzAutosize]="{ minRows: 2, maxRows: 6 }"></textarea>
+        </nz-form-control>
+      </nz-form-item>
+      <nz-form-item nz-row>
+        <nz-form-control nz-col [nzSm]="18" [nzOffset]="6">
+          <button nz-button (click)="design()" [nzLoading]="doing">打印设计</button>
+          <button nz-button (click)="setup()">打印维护</button>
+          <button nz-button (click)="print()">打印预览</button>
+          <button nz-button (click)="printBatch()" [nzLoading]="doing">批量打印3张</button>
+        </nz-form-control>
+      </nz-form-item>
+    </form>
+  `,
+})
+export class ComponentsLodopDesignComponent {
+  doing = false;
+  error = false;
+  lodop: Lodop | null = null;
+  context: { 标题: string; 费用: string } = {
+    标题: '自定义标题',
+    费用: '100.00 元',
+  };
+  code = `LODOP.PRINT_INITA(10,10,762,533,"测试套打");
+LODOP.ADD_PRINT_TEXT(38,78,408,30,"{{标题}}");
+LODOP.SET_PRINT_STYLEA(0,"FontSize",15);
+LODOP.SET_PRINT_STYLEA(0,"FontColor","#800000");
+LODOP.SET_PRINT_STYLEA(0,"Alignment",2);
+LODOP.ADD_PRINT_TEXT(259,579,100,23,"{{费用}}");
+LODOP.ADD_PRINT_TEXT(260,520,58,24,"合计:");`;
+  constructor(private lodopSrv: LodopService, private msg: NzMessageService) {
+    this.lodopSrv.lodop.subscribe(({ lodop, ok }) => {
+      if (!ok) {
+        this.error = true;
+        return;
+      }
+      this.error = false;
+      this.lodop = lodop as Lodop;
+    });
+  }
+
+  design(): void {
+    this.lodopSrv.attachCode(this.code);
+    this.doing = true;
+    this.lodopSrv.design().then(code => {
+      this.code = code;
+      this.doing = false;
+    });
+  }
+
+  setup(): void {
+    this.lodopSrv.attachCode(this.code);
+    this.lodop!.PRINT_SETUP();
+  }
+
+  print(): void {
+    this.lodopSrv.attachCode(this.code, this.context);
+    this.lodop!.PREVIEW();
+  }
+
+  printBatch(): void {
+    this.doing = true;
+    const data = new Array(3).fill({}).map((_, index) => ({ index: index + 1, ...this.context }));
+    this.lodopSrv.print(
+      this.code +
+        `
+    LODOP.ADD_PRINT_TEXT(10,10,100,100,"第{{index}}张");
+    `,
+      data,
+    );
+    const batch$ = this.lodopSrv.events.subscribe(res => {
+      console.log('finish', res);
+      if (res.item.index === data.length - 1) {
+        this.msg.success(`全部打印完成`);
+        this.doing = false;
+        batch$.unsubscribe();
+      }
+    });
+  }
+}

API

LodopService

成员说明类型默认值
cog获取或设置配置项AlainLodopConfig-
events打印过程通知Observable<LodopPrintResult>-
lodop获取 Lodop 对象Observable<LodopResult>-

Lodop加载成功后辅助API

成员说明类型默认值
printer获取打印机列表string[]-
attachCode()附加代码至 lodop 对象上void-
design()运行打印设计手动关闭后返回代码Promise<string>-
print()立即打印,一般用于批量套打void-

LodopPrintResult

成员说明类型默认值
ok是否打印成功boolean-
error错误信息string-
code代码string-
item动态参数上下文对象any-
parser代码解析表达式RegExp-

LodopResult

成员说明类型默认值
ok表示是否加载成功boolean-
status状态码string-
lodopLodop 对象Lodop-
error错误明细any-

AlainLodopConfig

成员说明类型默认值全局配置
companyName注册单位名称string-
license主注册号string-
licenseA附加注册号Astring-
licenseB附加注册号Bstring-
urlLodop 远程脚本URL地址,注意务必使用 name 属性指定变量值string//localhost:8443/Lodopfuncs.js
nameLodop 变量名stringLODOP
checkMaxCount检查次数,默认 100,当检查超过时视为异常,这是因为 Lodop 需要连接 WebSocketnumber100
\ No newline at end of file diff --git a/components/lodop/zh/index.html b/components/lodop/zh/index.html new file mode 100644 index 000000000..f6ac9dbe0 --- /dev/null +++ b/components/lodop/zh/index.html @@ -0,0 +1,237 @@ +lodop - NG-ALAIN

Lodop打印
IMPORT MODULE

Lodop 打印的基础实现,商用需要购买KEY。(同时感谢 lodop 为 ng-alain 免费提供正版KEY)

运行示例的前提条件必须安装Lodop

代码演示

请选择打印机
请选择纸张类型
仅限HTML,更多类型支持请参考官网
基础

获取打印服务器(包括:远程)信息。

expand codeexpand code
import { Component } from '@angular/core';
+import { Lodop, LodopService } from '@delon/abc/lodop';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-lodop-print',
+  template: `
+    <nz-alert *ngIf="error" [nzType]="'warning'" [nzMessage]="message">
+      <ng-template #message>
+        请先下载<a href="http://c-lodop.com/download.html" target="_blank">Lodop插件</a>, 安装后点击<a (click)="reload()">重试</a>。
+      </ng-template>
+    </nz-alert>
+    <form *ngIf="!error" nz-form>
+      <nz-form-item nz-row>
+        <nz-form-label nz-col [nzSm]="6">打印服务器</nz-form-label>
+        <nz-form-control nz-col [nzSm]="18">
+          <nz-input-group>
+            <div nz-col [nzSpan]="16">
+              <input nz-input nzPlaceHolder="https://localhost:8443/CLodopfuncs.js" [(ngModel)]="cog.url" name="url" />
+            </div>
+            <div nz-col [nzSpan]="8">
+              <button nz-button (click)="reload(null)">重新加载打印机</button>
+            </div>
+          </nz-input-group>
+        </nz-form-control>
+      </nz-form-item>
+      <nz-form-item nz-row>
+        <nz-form-label nz-col [nzSm]="6">打印机</nz-form-label>
+        <nz-form-control nz-col [nzSm]="18">
+          <nz-select
+            style="width:90%;"
+            nzPlaceHolder="请选择打印机"
+            nzShowSearch
+            nzAllowClear
+            [(ngModel)]="cog.printer"
+            name="printer"
+            (ngModelChange)="changePinter($event)"
+          >
+            <nz-option *ngFor="let name of pinters" [nzLabel]="name" [nzValue]="name"> </nz-option>
+          </nz-select>
+        </nz-form-control>
+      </nz-form-item>
+      <nz-form-item nz-row>
+        <nz-form-label nz-col [nzSm]="6">纸张类型</nz-form-label>
+        <nz-form-control nz-col [nzSm]="18">
+          <nz-select style="width:90%;" nzPlaceHolder="请选择纸张类型" nzShowSearch nzAllowClear [(ngModel)]="cog.paper" name="paper">
+            <nz-option *ngFor="let name of papers" [nzLabel]="name" [nzValue]="name"> </nz-option>
+          </nz-select>
+        </nz-form-control>
+      </nz-form-item>
+      <nz-form-item nz-row>
+        <nz-form-label nz-col [nzSm]="6">打印内容</nz-form-label>
+        <nz-form-control nz-col [nzSm]="18" nzExtra="仅限HTML,更多类型支持请参考官网">
+          <textarea nz-input [(ngModel)]="cog.html" name="html" nzAutosize></textarea>
+        </nz-form-control>
+      </nz-form-item>
+      <nz-form-item nz-row>
+        <nz-form-control nz-col [nzSm]="18" [nzOffset]="6">
+          <button nz-button (click)="print(true)" [nzLoading]="printing">打印预览</button>
+          <button nz-button (click)="print()" [nzLoading]="printing">直接打印</button>
+        </nz-form-control>
+      </nz-form-item>
+    </form>
+  `,
+})
+export class ComponentsLodopPrintComponent {
+  constructor(private lodopSrv: LodopService, private msg: NzMessageService) {
+    this.lodopSrv.lodop.subscribe(({ lodop, ok }) => {
+      if (!ok) {
+        this.error = true;
+        return;
+      }
+      this.error = false;
+      this.msg.success(`打印机加载成功`);
+      this.lodop = lodop as Lodop;
+      this.pinters = this.lodopSrv.printer;
+    });
+  }
+  cog: any = {
+    url: 'https://localhost:8443/CLodopfuncs.js',
+    printer: '',
+    paper: '',
+    html: `
+        <h1>Title</h1>
+        <p>这~!@#¥%……&*()——sdilfjnvn</p>
+        <p>这~!@#¥%……&*()——sdilfjnvn</p>
+        <p>这~!@#¥%……&*()——sdilfjnvn</p>
+        <p>这~!@#¥%……&*()——sdilfjnvn</p>
+        <p>这~!@#¥%……&*()——sdilfjnvn</p>
+        `,
+  };
+  error = false;
+  lodop: Lodop | null = null;
+  pinters: any[] = [];
+  papers: string[] = [];
+
+  printing = false;
+
+  reload(options: any = { url: 'https://localhost:8443/CLodopfuncs.js' }): void {
+    this.pinters = [];
+    this.papers = [];
+    this.cog.printer = '';
+    this.cog.paper = '';
+
+    this.lodopSrv.cog = { ...this.cog, ...options };
+    this.error = false;
+    if (options === null) this.lodopSrv.reset();
+  }
+
+  changePinter(name: string): void {
+    this.papers = this.lodop!.GET_PAGESIZES_LIST(name, '\n').split('\n');
+  }
+  print(isPrivew: boolean = false): void {
+    const LODOP = this.lodop!;
+    LODOP.PRINT_INITA(10, 20, 810, 610, '测试C-Lodop远程打印四步骤');
+    LODOP.SET_PRINTER_INDEXA(this.cog.printer);
+    LODOP.SET_PRINT_PAGESIZE(0, 0, 0, this.cog.paper);
+    LODOP.ADD_PRINT_TEXT(1, 1, 300, 200, '下面输出的是本页源代码及其展现效果:');
+    LODOP.ADD_PRINT_TEXT(20, 10, '90%', '95%', this.cog.html);
+    LODOP.SET_PRINT_STYLEA(0, 'ItemType', 4);
+    LODOP.NewPageA();
+    LODOP.ADD_PRINT_HTM(20, 10, '90%', '95%', this.cog.html);
+    if (isPrivew) LODOP.PREVIEW();
+    else LODOP.PRINT();
+  }
+}
打印设计

使用打印设计对字体、字号、对象排版等,并利用 attachCode 方法自动附加设计生成的代码至 Lodop 对象,且支持动态参数。调用 print 方法来打印数据并通过监听 events 判断进行下一个打印,从而实现无限制批量套打。

expand codeexpand code
import { Component } from '@angular/core';
+import { Lodop, LodopService } from '@delon/abc/lodop';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-lodop-design',
+  template: `
+    <nz-alert *ngIf="error" [nzType]="'warning'" [nzMessage]="message">
+      <ng-template #message> 请先下载<a href="http://c-lodop.com/download.html" target="_blank">Lodop插件</a>。 </ng-template>
+    </nz-alert>
+    <form *ngIf="lodop && !error" nz-form>
+      <nz-form-item nz-row>
+        <nz-form-label nz-col [nzSm]="6">标题</nz-form-label>
+        <nz-form-control nz-col [nzSm]="18">
+          <input nz-input [(ngModel)]="context['标题']" name="标题" />
+        </nz-form-control>
+      </nz-form-item>
+      <nz-form-item nz-row>
+        <nz-form-label nz-col [nzSm]="6">费用</nz-form-label>
+        <nz-form-control nz-col [nzSm]="18">
+          <input nz-input [(ngModel)]="context['费用']" name="费用" />
+        </nz-form-control>
+      </nz-form-item>
+      <nz-form-item nz-row>
+        <nz-form-label nz-col [nzSm]="6">打印内容</nz-form-label>
+        <nz-form-control nz-col [nzSm]="18">
+          <textarea [(ngModel)]="code" name="code" nz-input [nzAutosize]="{ minRows: 2, maxRows: 6 }"></textarea>
+        </nz-form-control>
+      </nz-form-item>
+      <nz-form-item nz-row>
+        <nz-form-control nz-col [nzSm]="18" [nzOffset]="6">
+          <button nz-button (click)="design()" [nzLoading]="doing">打印设计</button>
+          <button nz-button (click)="setup()">打印维护</button>
+          <button nz-button (click)="print()">打印预览</button>
+          <button nz-button (click)="printBatch()" [nzLoading]="doing">批量打印3张</button>
+        </nz-form-control>
+      </nz-form-item>
+    </form>
+  `,
+})
+export class ComponentsLodopDesignComponent {
+  doing = false;
+  error = false;
+  lodop: Lodop | null = null;
+  context: { 标题: string; 费用: string } = {
+    标题: '自定义标题',
+    费用: '100.00 元',
+  };
+  code = `LODOP.PRINT_INITA(10,10,762,533,"测试套打");
+LODOP.ADD_PRINT_TEXT(38,78,408,30,"{{标题}}");
+LODOP.SET_PRINT_STYLEA(0,"FontSize",15);
+LODOP.SET_PRINT_STYLEA(0,"FontColor","#800000");
+LODOP.SET_PRINT_STYLEA(0,"Alignment",2);
+LODOP.ADD_PRINT_TEXT(259,579,100,23,"{{费用}}");
+LODOP.ADD_PRINT_TEXT(260,520,58,24,"合计:");`;
+  constructor(private lodopSrv: LodopService, private msg: NzMessageService) {
+    this.lodopSrv.lodop.subscribe(({ lodop, ok }) => {
+      if (!ok) {
+        this.error = true;
+        return;
+      }
+      this.error = false;
+      this.lodop = lodop as Lodop;
+    });
+  }
+
+  design(): void {
+    this.lodopSrv.attachCode(this.code);
+    this.doing = true;
+    this.lodopSrv.design().then(code => {
+      this.code = code;
+      this.doing = false;
+    });
+  }
+
+  setup(): void {
+    this.lodopSrv.attachCode(this.code);
+    this.lodop!.PRINT_SETUP();
+  }
+
+  print(): void {
+    this.lodopSrv.attachCode(this.code, this.context);
+    this.lodop!.PREVIEW();
+  }
+
+  printBatch(): void {
+    this.doing = true;
+    const data = new Array(3).fill({}).map((_, index) => ({ index: index + 1, ...this.context }));
+    this.lodopSrv.print(
+      this.code +
+        `
+    LODOP.ADD_PRINT_TEXT(10,10,100,100,"第{{index}}张");
+    `,
+      data,
+    );
+    const batch$ = this.lodopSrv.events.subscribe(res => {
+      console.log('finish', res);
+      if (res.item.index === data.length - 1) {
+        this.msg.success(`全部打印完成`);
+        this.doing = false;
+        batch$.unsubscribe();
+      }
+    });
+  }
+}

API

LodopService

成员说明类型默认值
cog获取或设置配置项AlainLodopConfig-
events打印过程通知Observable<LodopPrintResult>-
lodop获取 Lodop 对象Observable<LodopResult>-

Lodop加载成功后辅助API

成员说明类型默认值
printer获取打印机列表string[]-
attachCode()附加代码至 lodop 对象上void-
design()运行打印设计手动关闭后返回代码Promise<string>-
print()立即打印,一般用于批量套打void-

LodopPrintResult

成员说明类型默认值
ok是否打印成功boolean-
error错误信息string-
code代码string-
item动态参数上下文对象any-
parser代码解析表达式RegExp-

LodopResult

成员说明类型默认值
ok表示是否加载成功boolean-
status状态码string-
lodopLodop 对象Lodop-
error错误明细any-

AlainLodopConfig

成员说明类型默认值全局配置
companyName注册单位名称string-
license主注册号string-
licenseA附加注册号Astring-
licenseB附加注册号Bstring-
urlLodop 远程脚本URL地址,注意务必使用 name 属性指定变量值string//localhost:8443/Lodopfuncs.js
nameLodop 变量名stringLODOP
checkMaxCount检查次数,默认 100,当检查超过时视为异常,这是因为 Lodop 需要连接 WebSocketnumber100
\ No newline at end of file diff --git a/components/media/en/index.html b/components/media/en/index.html new file mode 100644 index 000000000..501d27c28 --- /dev/null +++ b/components/media/en/index.html @@ -0,0 +1,97 @@ +media - NG-ALAIN

HTML5媒体
IMPORT MODULE

基于 plyr HTML5播放器。

依赖

由于 plyr 脚本大小以及对视频播放并不是刚需的原因,因此采用一种延迟加载脚本的形式,可以通过全局配置配置来改变默认 CDN 路径,默认情况下使用 https://cdn.jsdelivr.net/npm/plyr/dist/plyr.min.jshttps://cdn.jsdelivr.net/npm/plyr/dist/plyr.css

使用本地路径

// angular.json
+{
+  "glob": "**/{plyr.min.js,plyr.css,plyr.svg}",
+  "input": "./node_modules/plyr/dist",
+  "output": "assets/plyr/"
+}
// global-config.module.ts
+const alainConfig: AlainConfig = {
+  media: {
+    urls: ['assets/plyr/plyr.min.js', 'assets/plyr/plyr.css'],
+    options: {
+      iconUrl: 'assets/plyr/plyr.svg',
+      blankVideo: 'https://cdn.plyr.io/static/blank.mp4'
+    }
+  }
+};

代码演示

MP4基础样例

最简单的用法。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-media-mp4',
+  template: `
+    <div class="mb-sm">
+      <button nz-button (click)="media.player?.play()">Play</button>
+      <button nz-button (click)="media.player?.pause()">Pause</button>
+      <button nz-button (click)="media.player?.restart()">Restart</button>
+    </div>
+    <media #media [source]="mp4"></media>
+  `,
+})
+export class ComponentsMediaMp4Component {
+  mp4 = `https://blz-videos.nosdn.127.net/1/OverWatch/AnimatedShots/Overwatch_AnimatedShot_Bastion_TheLastBastion.mp4`;
+}
自定义

指定 sourceoptions 来自定义播放器。

expand codeexpand code
import { Component } from '@angular/core';
+
+import type Plyr from 'plyr';
+
+@Component({
+  selector: 'components-media-custom',
+  template: `
+    <div class="mb-sm">
+      <button nz-button (click)="play('video')">Change Play Video</button>
+      <button nz-button (click)="play('audio')">Change Play Audio</button>
+    </div>
+    <media #media [source]="source" [options]="options"></media>
+  `
+})
+export class ComponentsMediaCustomComponent {
+  source: Plyr.SourceInfo = {
+    type: 'video',
+    sources: [
+      {
+        src: ``
+      }
+    ],
+    // 字幕
+    tracks: []
+  };
+
+  options: Plyr.Options = {
+    // If you any problems, open `debug` and you can quickly find the issues
+    debug: true,
+    // controls: ['play-large'],
+    i18n: {
+      // For more parameters, please refer to: https://github.com/sampotts/plyr/blob/master/src/js/config/defaults.js#L151
+      play: '播放',
+      pause: '暂停',
+      speed: '速度',
+      normal: '正常'
+    }
+  };
+
+  constructor() {
+    this.play('video');
+  }
+
+  play(type: 'audio' | 'video'): void {
+    this.source.type = type;
+    if (type === 'video') {
+      this.source.sources[0].src = `https://blz-videos.nosdn.127.net/1/OverWatch/AnimatedShots/Overwatch_AnimatedShot_Bastion_TheLastBastion.mp4`;
+    } else {
+      this.source.sources[0].src = `http://h5player.bytedance.com/video/music/audio.mp3`;
+    }
+    this.source = { ...this.source };
+  }
+}
MP3基础样例

指定 type="audio" 来播放 MP3。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-media-mp3',
+  template: `
+    <div class="mb-sm">
+      <button nz-button (click)="media.player?.play()">Play</button>
+      <button nz-button (click)="media.player?.pause()">Pause</button>
+      <button nz-button (click)="media.player?.restart()">Restart</button>
+    </div>
+    <media #media type="audio" [source]="mp3"></media>
+  `,
+})
+export class ComponentsMediaMp3Component {
+  mp3 = `https://cdn.plyr.io/static/demo/Kishi_Bashi_-_It_All_Began_With_a_Burst.mp3`;
+}

API

media

成员说明类型默认值全局配置
[type]媒体类型audio, videovideo-
[source]媒体数据源string, PlyrMediaSource--
[options]播放器参数 plyr optionsany-
[delay]延迟初始化,单位:毫秒number--
(ready)准备就绪回调EventEmitter<Plyr>--

FAQ

如何更友好的使用 Plyr 类型

import type Plyr from 'plyr';
\ No newline at end of file diff --git a/components/media/zh/index.html b/components/media/zh/index.html new file mode 100644 index 000000000..9d455ec8f --- /dev/null +++ b/components/media/zh/index.html @@ -0,0 +1,97 @@ +media - NG-ALAIN

HTML5媒体
IMPORT MODULE

基于 plyr HTML5播放器。

依赖

由于 plyr 脚本大小以及对视频播放并不是刚需的原因,因此采用一种延迟加载脚本的形式,可以通过全局配置配置来改变默认 CDN 路径,默认情况下使用 https://cdn.jsdelivr.net/npm/plyr/dist/plyr.min.jshttps://cdn.jsdelivr.net/npm/plyr/dist/plyr.css

使用本地路径

// angular.json
+{
+  "glob": "**/{plyr.min.js,plyr.css,plyr.svg}",
+  "input": "./node_modules/plyr/dist",
+  "output": "assets/plyr/"
+}
// global-config.module.ts
+const alainConfig: AlainConfig = {
+  media: {
+    urls: ['assets/plyr/plyr.min.js', 'assets/plyr/plyr.css'],
+    options: {
+      iconUrl: 'assets/plyr/plyr.svg',
+      blankVideo: 'https://cdn.plyr.io/static/blank.mp4'
+    }
+  }
+};

代码演示

MP4基础样例

最简单的用法。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-media-mp4',
+  template: `
+    <div class="mb-sm">
+      <button nz-button (click)="media.player?.play()">Play</button>
+      <button nz-button (click)="media.player?.pause()">Pause</button>
+      <button nz-button (click)="media.player?.restart()">Restart</button>
+    </div>
+    <media #media [source]="mp4"></media>
+  `,
+})
+export class ComponentsMediaMp4Component {
+  mp4 = `https://blz-videos.nosdn.127.net/1/OverWatch/AnimatedShots/Overwatch_AnimatedShot_Bastion_TheLastBastion.mp4`;
+}
自定义

指定 sourceoptions 来自定义播放器。

expand codeexpand code
import { Component } from '@angular/core';
+
+import type Plyr from 'plyr';
+
+@Component({
+  selector: 'components-media-custom',
+  template: `
+    <div class="mb-sm">
+      <button nz-button (click)="play('video')">Change Play Video</button>
+      <button nz-button (click)="play('audio')">Change Play Audio</button>
+    </div>
+    <media #media [source]="source" [options]="options"></media>
+  `
+})
+export class ComponentsMediaCustomComponent {
+  source: Plyr.SourceInfo = {
+    type: 'video',
+    sources: [
+      {
+        src: ``
+      }
+    ],
+    // 字幕
+    tracks: []
+  };
+
+  options: Plyr.Options = {
+    // If you any problems, open `debug` and you can quickly find the issues
+    debug: true,
+    // controls: ['play-large'],
+    i18n: {
+      // For more parameters, please refer to: https://github.com/sampotts/plyr/blob/master/src/js/config/defaults.js#L151
+      play: '播放',
+      pause: '暂停',
+      speed: '速度',
+      normal: '正常'
+    }
+  };
+
+  constructor() {
+    this.play('video');
+  }
+
+  play(type: 'audio' | 'video'): void {
+    this.source.type = type;
+    if (type === 'video') {
+      this.source.sources[0].src = `https://blz-videos.nosdn.127.net/1/OverWatch/AnimatedShots/Overwatch_AnimatedShot_Bastion_TheLastBastion.mp4`;
+    } else {
+      this.source.sources[0].src = `http://h5player.bytedance.com/video/music/audio.mp3`;
+    }
+    this.source = { ...this.source };
+  }
+}
MP3基础样例

指定 type="audio" 来播放 MP3。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-media-mp3',
+  template: `
+    <div class="mb-sm">
+      <button nz-button (click)="media.player?.play()">Play</button>
+      <button nz-button (click)="media.player?.pause()">Pause</button>
+      <button nz-button (click)="media.player?.restart()">Restart</button>
+    </div>
+    <media #media type="audio" [source]="mp3"></media>
+  `,
+})
+export class ComponentsMediaMp3Component {
+  mp3 = `https://cdn.plyr.io/static/demo/Kishi_Bashi_-_It_All_Began_With_a_Burst.mp3`;
+}

API

media

成员说明类型默认值全局配置
[type]媒体类型audio, videovideo-
[source]媒体数据源string, PlyrMediaSource--
[options]播放器参数 plyr optionsany-
[delay]延迟初始化,单位:毫秒number--
(ready)准备就绪回调EventEmitter<Plyr>--

FAQ

如何更友好的使用 Plyr 类型

import type Plyr from 'plyr';
\ No newline at end of file diff --git a/components/notice-icon/en/index.html b/components/notice-icon/en/index.html new file mode 100644 index 000000000..416c5818e --- /dev/null +++ b/components/notice-icon/en/index.html @@ -0,0 +1,207 @@ +notice-icon - NG-ALAIN

通知菜单
IMPORT MODULE

用在导航工具栏上,作为整个产品统一的通知中心。

代码演示

0

1

2

3

4

5

6

7

8

9

通知图标

通常用在导航工具栏上。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-notice-icon-basic',
+  template: ` <notice-icon count="5"></notice-icon> `,
+})
+export class ComponentsNoticeIconBasicComponent {}

0

1

2

3

4

5

6

7

8

9

带浮层卡片

点击展开通知卡片,展现多种类型的通知,通常放在导航工具栏。

expand codeexpand code
import { Component, TemplateRef, ViewChild } from '@angular/core';
+import { NoticeIconList, NoticeIconSelect, NoticeItem } from '@delon/abc/notice-icon';
+import { add, formatDistanceToNow, parse } from 'date-fns';
+import { NzI18nService } from 'ng-zorro-antd/i18n';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-notice-icon-popover',
+  template: `
+    <div
+      style="text-align: right; height: 64px; line-height: 64px; box-shadow: rgba(0, 21, 41, 0.12) 0 1px 4px; padding: 0 32px; width: 400px;"
+    >
+      <notice-icon
+        [data]="data"
+        [count]="count"
+        [loading]="loading"
+        (select)="select($event)"
+        (clear)="clear($event)"
+        (popoverVisibleChange)="loadData()"
+      ></notice-icon>
+      <ng-template #titleTpl let-i> {{ i.id }} Title By NgTemplate </ng-template>
+      <ng-template #descTpl let-i>
+        <a (click)="showOK()">{{ i.id }}</a>
+        Descriptioin By NgTemplate
+      </ng-template>
+    </div>
+  `,
+})
+export class ComponentsNoticeIconPopoverComponent {
+  @ViewChild('titleTpl') private titleTpl!: TemplateRef<{ $implicit: NoticeIconList }>;
+  @ViewChild('descTpl') private descTpl!: TemplateRef<{ $implicit: NoticeIconList }>;
+  data: NoticeItem[] = [
+    {
+      title: '通知',
+      list: [],
+      emptyText: '你已查看所有通知',
+      emptyImage: 'https://gw.alipayobjects.com/zos/rmsportal/wAhyIChODzsoKIOBHcBk.svg',
+      clearText: '清空通知',
+    },
+    {
+      title: '消息',
+      list: [],
+      emptyText: '您已读完所有消息',
+      emptyImage: 'https://gw.alipayobjects.com/zos/rmsportal/sAuJeJzSKbUmHfBQRzmZ.svg',
+      clearText: '清空消息',
+    },
+    {
+      title: '待办',
+      list: [],
+      emptyText: '你已完成所有待办',
+      emptyImage: 'https://gw.alipayobjects.com/zos/rmsportal/HsIsxMZiWKrNUavQUXqx.svg',
+      clearText: '清空待办',
+    },
+  ];
+  count = 5;
+  loading = false;
+
+  constructor(private msg: NzMessageService, private nzI18n: NzI18nService) {}
+
+  updateNoticeData(notices: NoticeIconList[]): NoticeItem[] {
+    const data = this.data.slice();
+    data.forEach(i => (i.list = []));
+
+    notices.forEach(item => {
+      const newItem = { ...item };
+      if (typeof newItem.datetime === 'string') {
+        newItem.datetime = parse(newItem.datetime, 'yyyy-MM-dd', new Date());
+      }
+      if (newItem.datetime) {
+        newItem.datetime = formatDistanceToNow(newItem.datetime as Date, { locale: this.nzI18n.getDateLocale() });
+      }
+      if (newItem.extra && newItem.status) {
+        newItem.color = ({
+          todo: undefined,
+          processing: 'blue',
+          urgent: 'red',
+          doing: 'gold',
+        } as { [key: string]: string | undefined })[newItem.status];
+      }
+      data.find(w => w.title === newItem.type)!.list.push(newItem);
+    });
+    return data;
+  }
+
+  loadData(): void {
+    if (this.loading) return;
+    this.loading = true;
+    setTimeout(() => {
+      const now = new Date();
+      console.log(this.descTpl);
+      this.data = this.updateNoticeData([
+        {
+          id: '000000001',
+          avatar: 'https://gw.alipayobjects.com/zos/rmsportal/ThXAXghbEsBCCSDihZxY.png',
+          title: '你收到了 14 份新周报',
+          datetime: add(now, { days: 10 }),
+          type: '通知',
+        },
+        {
+          id: '000000002',
+          avatar: 'https://gw.alipayobjects.com/zos/rmsportal/OKJXDXrmkNshAMvwtvhu.png',
+          title: '你推荐的 曲妮妮 已通过第三轮面试',
+          datetime: add(now, { days: -3 }),
+          type: '通知',
+        },
+        {
+          id: '000000003',
+          avatar: 'https://gw.alipayobjects.com/zos/rmsportal/kISTdvpyTAhtGxpovNWd.png',
+          title: '这种模板可以区分多种通知类型',
+          datetime: add(now, { months: -3 }),
+          read: true,
+          type: '通知',
+        },
+        {
+          id: '000000004',
+          avatar: 'https://gw.alipayobjects.com/zos/rmsportal/GvqBnKhFgObvnSGkDsje.png',
+          title: '左侧图标用于区分不同的类型',
+          datetime: add(now, { years: -1 }),
+          type: '通知',
+        },
+        {
+          id: '000000005',
+          avatar: 'https://gw.alipayobjects.com/zos/rmsportal/ThXAXghbEsBCCSDihZxY.png',
+          title: '内容不要超过两行字,超出时自动截断',
+          datetime: '2017-08-07',
+          type: '通知',
+        },
+        {
+          id: '000000006',
+          avatar: 'https://gw.alipayobjects.com/zos/rmsportal/fcHMVNCjPOsbUGdEduuv.jpeg',
+          title: '曲丽丽 评论了你',
+          description: '描述信息描述信息描述信息',
+          datetime: '2017-08-07',
+          type: '消息',
+        },
+        {
+          id: '000000007',
+          avatar: 'https://gw.alipayobjects.com/zos/rmsportal/fcHMVNCjPOsbUGdEduuv.jpeg',
+          title: '朱偏右 回复了你',
+          description: '这种模板用于提醒谁与你发生了互动,左侧放『谁』的头像',
+          datetime: '2017-08-07',
+          type: '消息',
+        },
+        {
+          id: '000000008',
+          avatar: 'https://gw.alipayobjects.com/zos/rmsportal/fcHMVNCjPOsbUGdEduuv.jpeg',
+          title: this.titleTpl,
+          description: this.descTpl,
+          datetime: '2017-08-07',
+          type: '消息',
+        },
+        {
+          id: '000000009',
+          title: '任务名称',
+          description: '任务需要在 2017-01-12 20:00 前启动',
+          extra: '未开始',
+          status: 'todo',
+          type: '待办',
+        },
+        {
+          id: '000000010',
+          title: '第三方紧急代码变更',
+          description: '冠霖提交于 2017-01-06,需在 2017-01-07 前完成代码变更任务',
+          extra: '马上到期',
+          status: 'urgent',
+          type: '待办',
+        },
+        {
+          id: '000000011',
+          title: '信息安全考试',
+          description: '指派竹尔于 2017-01-09 前完成更新并发布',
+          extra: '已耗时 8 天',
+          status: 'doing',
+          type: '待办',
+        },
+        {
+          id: '000000012',
+          title: 'ABCD 版本发布',
+          description: '冠霖提交于 2017-01-06,需在 2017-01-07 前完成代码变更任务',
+          extra: '进行中',
+          status: 'processing',
+          type: '待办',
+        },
+      ]);
+
+      this.loading = false;
+    }, 500);
+  }
+
+  clear(type: string): void {
+    this.msg.success(`清空了 ${type}`);
+  }
+
+  select(res: NoticeIconSelect): void {
+    this.msg.success(`点击了 ${res.title} 的 ${res.item.title}`);
+  }
+
+  showOK(): void {
+    this.msg.info(`ok`);
+  }
+}

API

notice-icon

参数说明类型默认值
[data]数据NoticeItem[]-
[count]图标上的消息总数number-
[loading]弹出卡片加载状态booleanfalse
[centered]标签页是否居中booleanfalse
(select)点击列表项的回调EventEmitter<NoticeIconSelect>-
(clear)点击清空按钮的回调EventEmitter<string>-
[popoverVisible]手动控制Popover显示booleanfalse
(popoverVisibleChange)Popover显隐回调EventEmitter<boolean>-
[btnClass]按钮类ngClass-
[btnIconClass]Icon图标类ngClass-

NoticeItem

参数说明类型默认值
[title]标题string-
[list]列表数据,格式参照下表NoticeIconList[]-
[emptyText]针对每个 Tab 定制空数据文案string | TemplateRef<void>无通知
[emptyImage]针对每个 Tab 定制空数据图片string-
[clearText]针对每个 Tab 清空按钮文本string清空

NoticeIconList

参数说明类型默认值
[avatar]头像图片链接string-
[title]标题string | TemplateRef<{ $implicit: NoticeIconList }>-
[description]描述信息string | TemplateRef<{ $implicit: NoticeIconList }>-
[datetime]时间戳string-
[extra]额外信息,在列表项右上角string-
[read]是否已读状态boolean-

NoticeIconSelect

参数说明类型默认值
[title]标题string-
[item]数据项NoticeItem-
\ No newline at end of file diff --git a/components/notice-icon/zh/index.html b/components/notice-icon/zh/index.html new file mode 100644 index 000000000..4b0ce8265 --- /dev/null +++ b/components/notice-icon/zh/index.html @@ -0,0 +1,207 @@ +notice-icon - NG-ALAIN

通知菜单
IMPORT MODULE

用在导航工具栏上,作为整个产品统一的通知中心。

代码演示

0

1

2

3

4

5

6

7

8

9

通知图标

通常用在导航工具栏上。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-notice-icon-basic',
+  template: ` <notice-icon count="5"></notice-icon> `,
+})
+export class ComponentsNoticeIconBasicComponent {}

0

1

2

3

4

5

6

7

8

9

带浮层卡片

点击展开通知卡片,展现多种类型的通知,通常放在导航工具栏。

expand codeexpand code
import { Component, TemplateRef, ViewChild } from '@angular/core';
+import { NoticeIconList, NoticeIconSelect, NoticeItem } from '@delon/abc/notice-icon';
+import { add, formatDistanceToNow, parse } from 'date-fns';
+import { NzI18nService } from 'ng-zorro-antd/i18n';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-notice-icon-popover',
+  template: `
+    <div
+      style="text-align: right; height: 64px; line-height: 64px; box-shadow: rgba(0, 21, 41, 0.12) 0 1px 4px; padding: 0 32px; width: 400px;"
+    >
+      <notice-icon
+        [data]="data"
+        [count]="count"
+        [loading]="loading"
+        (select)="select($event)"
+        (clear)="clear($event)"
+        (popoverVisibleChange)="loadData()"
+      ></notice-icon>
+      <ng-template #titleTpl let-i> {{ i.id }} Title By NgTemplate </ng-template>
+      <ng-template #descTpl let-i>
+        <a (click)="showOK()">{{ i.id }}</a>
+        Descriptioin By NgTemplate
+      </ng-template>
+    </div>
+  `,
+})
+export class ComponentsNoticeIconPopoverComponent {
+  @ViewChild('titleTpl') private titleTpl!: TemplateRef<{ $implicit: NoticeIconList }>;
+  @ViewChild('descTpl') private descTpl!: TemplateRef<{ $implicit: NoticeIconList }>;
+  data: NoticeItem[] = [
+    {
+      title: '通知',
+      list: [],
+      emptyText: '你已查看所有通知',
+      emptyImage: 'https://gw.alipayobjects.com/zos/rmsportal/wAhyIChODzsoKIOBHcBk.svg',
+      clearText: '清空通知',
+    },
+    {
+      title: '消息',
+      list: [],
+      emptyText: '您已读完所有消息',
+      emptyImage: 'https://gw.alipayobjects.com/zos/rmsportal/sAuJeJzSKbUmHfBQRzmZ.svg',
+      clearText: '清空消息',
+    },
+    {
+      title: '待办',
+      list: [],
+      emptyText: '你已完成所有待办',
+      emptyImage: 'https://gw.alipayobjects.com/zos/rmsportal/HsIsxMZiWKrNUavQUXqx.svg',
+      clearText: '清空待办',
+    },
+  ];
+  count = 5;
+  loading = false;
+
+  constructor(private msg: NzMessageService, private nzI18n: NzI18nService) {}
+
+  updateNoticeData(notices: NoticeIconList[]): NoticeItem[] {
+    const data = this.data.slice();
+    data.forEach(i => (i.list = []));
+
+    notices.forEach(item => {
+      const newItem = { ...item };
+      if (typeof newItem.datetime === 'string') {
+        newItem.datetime = parse(newItem.datetime, 'yyyy-MM-dd', new Date());
+      }
+      if (newItem.datetime) {
+        newItem.datetime = formatDistanceToNow(newItem.datetime as Date, { locale: this.nzI18n.getDateLocale() });
+      }
+      if (newItem.extra && newItem.status) {
+        newItem.color = ({
+          todo: undefined,
+          processing: 'blue',
+          urgent: 'red',
+          doing: 'gold',
+        } as { [key: string]: string | undefined })[newItem.status];
+      }
+      data.find(w => w.title === newItem.type)!.list.push(newItem);
+    });
+    return data;
+  }
+
+  loadData(): void {
+    if (this.loading) return;
+    this.loading = true;
+    setTimeout(() => {
+      const now = new Date();
+      console.log(this.descTpl);
+      this.data = this.updateNoticeData([
+        {
+          id: '000000001',
+          avatar: 'https://gw.alipayobjects.com/zos/rmsportal/ThXAXghbEsBCCSDihZxY.png',
+          title: '你收到了 14 份新周报',
+          datetime: add(now, { days: 10 }),
+          type: '通知',
+        },
+        {
+          id: '000000002',
+          avatar: 'https://gw.alipayobjects.com/zos/rmsportal/OKJXDXrmkNshAMvwtvhu.png',
+          title: '你推荐的 曲妮妮 已通过第三轮面试',
+          datetime: add(now, { days: -3 }),
+          type: '通知',
+        },
+        {
+          id: '000000003',
+          avatar: 'https://gw.alipayobjects.com/zos/rmsportal/kISTdvpyTAhtGxpovNWd.png',
+          title: '这种模板可以区分多种通知类型',
+          datetime: add(now, { months: -3 }),
+          read: true,
+          type: '通知',
+        },
+        {
+          id: '000000004',
+          avatar: 'https://gw.alipayobjects.com/zos/rmsportal/GvqBnKhFgObvnSGkDsje.png',
+          title: '左侧图标用于区分不同的类型',
+          datetime: add(now, { years: -1 }),
+          type: '通知',
+        },
+        {
+          id: '000000005',
+          avatar: 'https://gw.alipayobjects.com/zos/rmsportal/ThXAXghbEsBCCSDihZxY.png',
+          title: '内容不要超过两行字,超出时自动截断',
+          datetime: '2017-08-07',
+          type: '通知',
+        },
+        {
+          id: '000000006',
+          avatar: 'https://gw.alipayobjects.com/zos/rmsportal/fcHMVNCjPOsbUGdEduuv.jpeg',
+          title: '曲丽丽 评论了你',
+          description: '描述信息描述信息描述信息',
+          datetime: '2017-08-07',
+          type: '消息',
+        },
+        {
+          id: '000000007',
+          avatar: 'https://gw.alipayobjects.com/zos/rmsportal/fcHMVNCjPOsbUGdEduuv.jpeg',
+          title: '朱偏右 回复了你',
+          description: '这种模板用于提醒谁与你发生了互动,左侧放『谁』的头像',
+          datetime: '2017-08-07',
+          type: '消息',
+        },
+        {
+          id: '000000008',
+          avatar: 'https://gw.alipayobjects.com/zos/rmsportal/fcHMVNCjPOsbUGdEduuv.jpeg',
+          title: this.titleTpl,
+          description: this.descTpl,
+          datetime: '2017-08-07',
+          type: '消息',
+        },
+        {
+          id: '000000009',
+          title: '任务名称',
+          description: '任务需要在 2017-01-12 20:00 前启动',
+          extra: '未开始',
+          status: 'todo',
+          type: '待办',
+        },
+        {
+          id: '000000010',
+          title: '第三方紧急代码变更',
+          description: '冠霖提交于 2017-01-06,需在 2017-01-07 前完成代码变更任务',
+          extra: '马上到期',
+          status: 'urgent',
+          type: '待办',
+        },
+        {
+          id: '000000011',
+          title: '信息安全考试',
+          description: '指派竹尔于 2017-01-09 前完成更新并发布',
+          extra: '已耗时 8 天',
+          status: 'doing',
+          type: '待办',
+        },
+        {
+          id: '000000012',
+          title: 'ABCD 版本发布',
+          description: '冠霖提交于 2017-01-06,需在 2017-01-07 前完成代码变更任务',
+          extra: '进行中',
+          status: 'processing',
+          type: '待办',
+        },
+      ]);
+
+      this.loading = false;
+    }, 500);
+  }
+
+  clear(type: string): void {
+    this.msg.success(`清空了 ${type}`);
+  }
+
+  select(res: NoticeIconSelect): void {
+    this.msg.success(`点击了 ${res.title} 的 ${res.item.title}`);
+  }
+
+  showOK(): void {
+    this.msg.info(`ok`);
+  }
+}

API

notice-icon

参数说明类型默认值
[data]数据NoticeItem[]-
[count]图标上的消息总数number-
[loading]弹出卡片加载状态booleanfalse
[centered]标签页是否居中booleanfalse
(select)点击列表项的回调EventEmitter<NoticeIconSelect>-
(clear)点击清空按钮的回调EventEmitter<string>-
[popoverVisible]手动控制Popover显示booleanfalse
(popoverVisibleChange)Popover显隐回调EventEmitter<boolean>-
[btnClass]按钮类ngClass-
[btnIconClass]Icon图标类ngClass-

NoticeItem

参数说明类型默认值
[title]标题string-
[list]列表数据,格式参照下表NoticeIconList[]-
[emptyText]针对每个 Tab 定制空数据文案string | TemplateRef<void>无通知
[emptyImage]针对每个 Tab 定制空数据图片string-
[clearText]针对每个 Tab 清空按钮文本string清空

NoticeIconList

参数说明类型默认值
[avatar]头像图片链接string-
[title]标题string | TemplateRef<{ $implicit: NoticeIconList }>-
[description]描述信息string | TemplateRef<{ $implicit: NoticeIconList }>-
[datetime]时间戳string-
[extra]额外信息,在列表项右上角string-
[read]是否已读状态boolean-

NoticeIconSelect

参数说明类型默认值
[title]标题string-
[item]数据项NoticeItem-
\ No newline at end of file diff --git a/components/observers/en/index.html b/components/observers/en/index.html new file mode 100644 index 000000000..9a16554a4 --- /dev/null +++ b/components/observers/en/index.html @@ -0,0 +1,52 @@ +Observers - NG-ALAIN

观察者
IMPORT MODULE

ObserversModule 包提供了基于原生 Web 平台的观察者 API(比如 MutationObserver) 的便捷指令。

代码演示

基础样例

最简单的用法。

expand codeexpand code
import { Component } from '@angular/core';
+
+import { ChartEChartsEvent, ChartEChartsOption } from '@delon/chart/chart-echarts';
+
+@Component({
+  selector: 'components-observers-basic',
+  template: `
+    <div class="mb-md">
+      <button nz-button (click)="addWidth()">Add width of div element</button>
+      <button nz-button (click)="reduceWidth()">Reduce width of div element</button>
+    </div>
+    <div (observeSize)="echart?.chart?.resize()" [style.width.px]="width">
+      <chart-echarts #echart [option]="option" (events)="handleEvents($event)"></chart-echarts>
+    </div>
+  `
+})
+export class ComponentsObserversBasicComponent {
+  width = 200;
+
+  option: ChartEChartsOption = {
+    tooltip: {
+      formatter: '{a} <br/>{b} : {c}%'
+    },
+    series: [
+      {
+        name: 'Pressure',
+        type: 'gauge',
+        detail: {
+          formatter: '{value}'
+        },
+        data: [
+          {
+            value: 50,
+            name: 'SCORE'
+          }
+        ]
+      }
+    ]
+  };
+
+  handleEvents(ev: ChartEChartsEvent): void {
+    console.log(ev);
+  }
+
+  addWidth(): void {
+    this.width += 100;
+  }
+
+  reduceWidth(): void {
+    this.width -= 100;
+  }
+}

API

observeSize

观察DOM大小变化。

成员说明类型默认值全局配置
(observeSize)事件MutationRecord[]-
\ No newline at end of file diff --git a/components/observers/zh/index.html b/components/observers/zh/index.html new file mode 100644 index 000000000..82f8996c6 --- /dev/null +++ b/components/observers/zh/index.html @@ -0,0 +1,52 @@ +Observers - NG-ALAIN

观察者
IMPORT MODULE

ObserversModule 包提供了基于原生 Web 平台的观察者 API(比如 MutationObserver) 的便捷指令。

代码演示

基础样例

最简单的用法。

expand codeexpand code
import { Component } from '@angular/core';
+
+import { ChartEChartsEvent, ChartEChartsOption } from '@delon/chart/chart-echarts';
+
+@Component({
+  selector: 'components-observers-basic',
+  template: `
+    <div class="mb-md">
+      <button nz-button (click)="addWidth()">Add width of div element</button>
+      <button nz-button (click)="reduceWidth()">Reduce width of div element</button>
+    </div>
+    <div (observeSize)="echart?.chart?.resize()" [style.width.px]="width">
+      <chart-echarts #echart [option]="option" (events)="handleEvents($event)"></chart-echarts>
+    </div>
+  `
+})
+export class ComponentsObserversBasicComponent {
+  width = 200;
+
+  option: ChartEChartsOption = {
+    tooltip: {
+      formatter: '{a} <br/>{b} : {c}%'
+    },
+    series: [
+      {
+        name: 'Pressure',
+        type: 'gauge',
+        detail: {
+          formatter: '{value}'
+        },
+        data: [
+          {
+            value: 50,
+            name: 'SCORE'
+          }
+        ]
+      }
+    ]
+  };
+
+  handleEvents(ev: ChartEChartsEvent): void {
+    console.log(ev);
+  }
+
+  addWidth(): void {
+    this.width += 100;
+  }
+
+  reduceWidth(): void {
+    this.width -= 100;
+  }
+}

API

observeSize

观察DOM大小变化。

成员说明类型默认值全局配置
(observeSize)事件MutationRecord[]-
\ No newline at end of file diff --git a/components/onboarding/en/index.html b/components/onboarding/en/index.html new file mode 100644 index 000000000..30a336a9b --- /dev/null +++ b/components/onboarding/en/index.html @@ -0,0 +1,115 @@ +onboarding - NG-ALAIN

用户引导流程
IMPORT MODULE

用户引导流程,是帮助用户更好的理解和使用产品。

代码演示

onboarding.json
基础样例

最简单的用法。

expand codeexpand code
import { Component } from '@angular/core';
+
+import { OnboardingConfig, OnboardingService } from '@delon/abc/onboarding';
+import { _HttpClient } from '@delon/theme';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-onboarding-basic',
+  template: `
+    <div class="mb-md pb-md border-bottom-1">
+      <button class="test1-1" nz-button nzType="primary" (click)="handleClick()">First Button</button>
+      <button class="test1-2" nz-button nzType="link">Second Button</button>
+      <button class="test1-3" nz-button nzType="dashed">Third Button</button>
+    </div>
+    <button nz-button (click)="start()">Start</button>
+    <button nz-button (click)="startOnce()">Start Once (Set 'key')</button>
+    <button nz-button (click)="viaHttp()">Start Via Http</button>
+    <a
+      href="https://github.com/ng-alain/delon/blob/master/src/assets/schema/onboarding.json"
+      target="_blank"
+      class="ml-md"
+    >
+      onboarding.json
+    </a>
+  `
+})
+export class ComponentsOnboardingBasicComponent {
+  private def: OnboardingConfig = {
+    items: [
+      {
+        selectors: '.test1-1',
+        content: 'The user guidance is to help users better understand and use the product',
+        width: 300
+      },
+      {
+        selectors: '.test1-2',
+        title: 'Test2',
+        content: 'The user guidance is to help users better understand and use the product'
+      },
+      {
+        selectors: '.test1-3',
+        title: 'Test3',
+        content: 'The user guidance is to help users better understand and use the product'
+      }
+    ]
+  };
+  constructor(
+    private srv: OnboardingService,
+    private msg: NzMessageService,
+    private http: _HttpClient
+  ) {}
+
+  handleClick(): void {
+    this.msg.info(`click`);
+  }
+
+  start(): void {
+    this.srv.start({ ...this.def });
+  }
+
+  viaHttp(): void {
+    this.http.get(`./assets/schema/onboarding.json`).subscribe(res => {
+      console.log(res);
+      this.srv.start(res);
+    });
+  }
+
+  startOnce(): void {
+    this.srv.start({ ...this.def, key: 'obs-once' });
+  }
+}
多页

使用 url 变更路由地址,建议配合 before 的延迟来处理目标页是否完成,否则可能会遇到无法获取目标元素。

expand codeexpand code
import { Component } from '@angular/core';
+import { OnboardingService } from '@delon/abc/onboarding';
+import { _HttpClient } from '@delon/theme';
+
+@Component({
+  selector: 'components-onboarding-multiple-pages',
+  template: `
+    <div class="mb-md pb-md border-bottom-1">
+      <button class="test2-1" nz-button nzType="primary">First Button</button>
+      <button class="test2-3" nz-button nzType="dashed">Third Button</button>
+    </div>
+    <button nz-button (click)="start()">Start</button>
+  `,
+})
+export class ComponentsOnboardingMultiplePagesComponent {
+  constructor(private srv: OnboardingService) {}
+
+  start(): void {
+    this.srv.start({
+      items: [
+        {
+          selectors: '.test2-1',
+          content: 'The user guidance is to help users better understand and use the product',
+          next: `Go to home`,
+          width: 300,
+          url: '/components/onboarding',
+        },
+        {
+          selectors: '.page-banner__slogan',
+          content:
+            'ng-alain is an MIT-licensed open source project. In order to achieve better and sustainable development of the project, we expect to gain more backers. You can support us in any of the following ways, Or purchasing our <a href="https://e.ng-alain.com/" target="_blank">business theme</a>',
+          width: 300,
+          url: '/',
+          before: 200,
+        },
+        {
+          selectors: '.test2-3',
+          title: 'Test3',
+          content: 'The user guidance is to help users better understand and use the product',
+          url: '/components/onboarding',
+        },
+      ],
+    });
+  }
+}

API

OnboardingService

组件只支持使用 OnboardingService 服务来构建。

成员说明
start(data: OnboardingData)开启新的用户引导流程
next()下一项
prev()上一项
done()完成

OnboardingData

成员说明类型默认值
[key]存储标识Key;默认 localStorage 本地存储,允许使用 ONBOARDING_STORE_TOKEN 变更存储方式string-
[keyVersion]当前版本unknown-
[items]引导项列表OnboardingItem[][]
[mask]是否展示遮罩booleantrue
[maskClosable]点击蒙层是否允许关闭booleantrue
[showTotal]是否显示总量booleanfalse

OnboardingItem

成员说明类型默认值
[selectors]CSS选项项,用于查找目标元素string-
[position]引导面板显示位置top, left, right, bottom, topLeft, topRight, bottomLeft, bottomRight, leftTop, leftBottom, rightTop, rightBottombottomLeft
[className]引导面板类名string-
[width]引导面板宽度number-
[title]引导面板标题string, TemplateRef<void>-
[content]引导面板内容string, SafeHtml, TemplateRef<void>-
[skip]跳过按钮文本,null 表示强击不显示string, TemplateRef<void>, null跳过
[prev]跳过按钮文本,null 表示强击不显示string, TemplateRef<void>, null上一项
[next]跳过按钮文本,null 表示强击不显示string, TemplateRef<void>, null下一项
[done]跳过按钮文本,null 表示强击不显示string, TemplateRef<void>, null完成
[url]目标路由页string-
[before]当触发 next 时表示进入前回调,number 表示延迟Observable<any>, number-
[after]当触发 prev 时表示进入前回调,number 表示延迟Observable<any>, number-
\ No newline at end of file diff --git a/components/onboarding/zh/index.html b/components/onboarding/zh/index.html new file mode 100644 index 000000000..ba235617f --- /dev/null +++ b/components/onboarding/zh/index.html @@ -0,0 +1,115 @@ +onboarding - NG-ALAIN

用户引导流程
IMPORT MODULE

用户引导流程,是帮助用户更好的理解和使用产品。

代码演示

onboarding.json
基础样例

最简单的用法。

expand codeexpand code
import { Component } from '@angular/core';
+
+import { OnboardingConfig, OnboardingService } from '@delon/abc/onboarding';
+import { _HttpClient } from '@delon/theme';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-onboarding-basic',
+  template: `
+    <div class="mb-md pb-md border-bottom-1">
+      <button class="test1-1" nz-button nzType="primary" (click)="handleClick()">First Button</button>
+      <button class="test1-2" nz-button nzType="link">Second Button</button>
+      <button class="test1-3" nz-button nzType="dashed">Third Button</button>
+    </div>
+    <button nz-button (click)="start()">Start</button>
+    <button nz-button (click)="startOnce()">Start Once (Set 'key')</button>
+    <button nz-button (click)="viaHttp()">Start Via Http</button>
+    <a
+      href="https://github.com/ng-alain/delon/blob/master/src/assets/schema/onboarding.json"
+      target="_blank"
+      class="ml-md"
+    >
+      onboarding.json
+    </a>
+  `
+})
+export class ComponentsOnboardingBasicComponent {
+  private def: OnboardingConfig = {
+    items: [
+      {
+        selectors: '.test1-1',
+        content: 'The user guidance is to help users better understand and use the product',
+        width: 300
+      },
+      {
+        selectors: '.test1-2',
+        title: 'Test2',
+        content: 'The user guidance is to help users better understand and use the product'
+      },
+      {
+        selectors: '.test1-3',
+        title: 'Test3',
+        content: 'The user guidance is to help users better understand and use the product'
+      }
+    ]
+  };
+  constructor(
+    private srv: OnboardingService,
+    private msg: NzMessageService,
+    private http: _HttpClient
+  ) {}
+
+  handleClick(): void {
+    this.msg.info(`click`);
+  }
+
+  start(): void {
+    this.srv.start({ ...this.def });
+  }
+
+  viaHttp(): void {
+    this.http.get(`./assets/schema/onboarding.json`).subscribe(res => {
+      console.log(res);
+      this.srv.start(res);
+    });
+  }
+
+  startOnce(): void {
+    this.srv.start({ ...this.def, key: 'obs-once' });
+  }
+}
多页

使用 url 变更路由地址,建议配合 before 的延迟来处理目标页是否完成,否则可能会遇到无法获取目标元素。

expand codeexpand code
import { Component } from '@angular/core';
+import { OnboardingService } from '@delon/abc/onboarding';
+import { _HttpClient } from '@delon/theme';
+
+@Component({
+  selector: 'components-onboarding-multiple-pages',
+  template: `
+    <div class="mb-md pb-md border-bottom-1">
+      <button class="test2-1" nz-button nzType="primary">First Button</button>
+      <button class="test2-3" nz-button nzType="dashed">Third Button</button>
+    </div>
+    <button nz-button (click)="start()">Start</button>
+  `,
+})
+export class ComponentsOnboardingMultiplePagesComponent {
+  constructor(private srv: OnboardingService) {}
+
+  start(): void {
+    this.srv.start({
+      items: [
+        {
+          selectors: '.test2-1',
+          content: 'The user guidance is to help users better understand and use the product',
+          next: `Go to home`,
+          width: 300,
+          url: '/components/onboarding',
+        },
+        {
+          selectors: '.page-banner__slogan',
+          content:
+            'ng-alain is an MIT-licensed open source project. In order to achieve better and sustainable development of the project, we expect to gain more backers. You can support us in any of the following ways, Or purchasing our <a href="https://e.ng-alain.com/" target="_blank">business theme</a>',
+          width: 300,
+          url: '/',
+          before: 200,
+        },
+        {
+          selectors: '.test2-3',
+          title: 'Test3',
+          content: 'The user guidance is to help users better understand and use the product',
+          url: '/components/onboarding',
+        },
+      ],
+    });
+  }
+}

API

OnboardingService

组件只支持使用 OnboardingService 服务来构建。

成员说明
start(data: OnboardingData)开启新的用户引导流程
next()下一项
prev()上一项
done()完成

OnboardingData

成员说明类型默认值
[key]存储标识Key;默认 localStorage 本地存储,允许使用 ONBOARDING_STORE_TOKEN 变更存储方式string-
[keyVersion]当前版本unknown-
[items]引导项列表OnboardingItem[][]
[mask]是否展示遮罩booleantrue
[maskClosable]点击蒙层是否允许关闭booleantrue
[showTotal]是否显示总量booleanfalse

OnboardingItem

成员说明类型默认值
[selectors]CSS选项项,用于查找目标元素string-
[position]引导面板显示位置top, left, right, bottom, topLeft, topRight, bottomLeft, bottomRight, leftTop, leftBottom, rightTop, rightBottombottomLeft
[className]引导面板类名string-
[width]引导面板宽度number-
[title]引导面板标题string, TemplateRef<void>-
[content]引导面板内容string, SafeHtml, TemplateRef<void>-
[skip]跳过按钮文本,null 表示强击不显示string, TemplateRef<void>, null跳过
[prev]跳过按钮文本,null 表示强击不显示string, TemplateRef<void>, null上一项
[next]跳过按钮文本,null 表示强击不显示string, TemplateRef<void>, null下一项
[done]跳过按钮文本,null 表示强击不显示string, TemplateRef<void>, null完成
[url]目标路由页string-
[before]当触发 next 时表示进入前回调,number 表示延迟Observable<any>, number-
[after]当触发 prev 时表示进入前回调,number 表示延迟Observable<any>, number-
\ No newline at end of file diff --git a/components/page-header/en/index.html b/components/page-header/en/index.html new file mode 100644 index 000000000..a7e156306 --- /dev/null +++ b/components/page-header/en/index.html @@ -0,0 +1,173 @@ +页面标题 - NG-ALAIN

页头
IMPORT MODULE

页头用来声明页面的主题,包含了用户所关注的最重要的信息,使用户可以快速理解当前页面是什么以及它的功能。

代码演示

基本结构

基本结构,具备响应式布局功能,主要断点为 768px 和 576px,拖动窗口改变大小试试看。

expand codeexpand code
import { Component, ViewEncapsulation } from '@angular/core';
+
+@Component({
+  selector: 'components-page-header-structure',
+  template: `
+    <page-header
+      [title]="'title'"
+      [titleSub]="'titleSub'"
+      [breadcrumb]="breadcrumb"
+      [logo]="logo"
+      [action]="action"
+      [extra]="extra"
+      [content]="content"
+      [tab]="tab"
+    >
+      <ng-template #breadcrumb>面包屑</ng-template>
+      <ng-template #logo><div class="logo">logo</div></ng-template>
+      <ng-template #action><div class="action">action</div></ng-template>
+      <ng-template #content><div class="desc">content</div></ng-template>
+      <ng-template #extra><div class="extra">extra</div></ng-template>
+      <ng-template #tab>
+        <nz-tabset [nzSize]="'default'">
+          <nz-tab nzTitle="页签一"></nz-tab>
+          <nz-tab nzTitle="页签二"></nz-tab>
+          <nz-tab nzTitle="页签三"></nz-tab>
+        </nz-tabset>
+      </ng-template>
+    </page-header>
+  `,
+  styles: [
+    `
+      :host ::ng-deep .logo {
+        background: #3ba0e9;
+        color: #fff;
+        height: 100%;
+      }
+      :host ::ng-deep h1.title {
+        background: rgba(16, 142, 233, 1);
+        color: #fff;
+      }
+      :host ::ng-deep .action,
+      :host ::ng-deep .desc,
+      :host ::ng-deep .extra {
+        background: #7dbcea;
+        color: #fff;
+      }
+    `,
+  ],
+  encapsulation: ViewEncapsulation.Emulated,
+})
+export class ComponentsPageHeaderStructureComponent {}
标准

标准页头。

expand codeexpand code
import { Component } from '@angular/core';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-page-header-standard',
+  template: `
+    <page-header
+      [title]="'单号:234231029431'"
+      [breadcrumb]="breadcrumb"
+      [logo]="logo"
+      [action]="action"
+      [extra]="extra"
+      [content]="content"
+      [tab]="tab"
+    >
+      <ng-template #breadcrumb>
+        <nz-breadcrumb>
+          <nz-breadcrumb-item><a>一级菜单</a></nz-breadcrumb-item>
+          <nz-breadcrumb-item><a>二级菜单</a></nz-breadcrumb-item>
+          <nz-breadcrumb-item><a>三级菜单</a></nz-breadcrumb-item>
+        </nz-breadcrumb>
+      </ng-template>
+      <ng-template #logo><img src="https://gw.alipayobjects.com/zos/rmsportal/nxkuOJlFJuAUhzlMTCEe.png" /></ng-template>
+      <ng-template #action>
+        <nz-button-group>
+          <button nz-button>操作</button>
+          <button nz-button>操作</button>
+        </nz-button-group>
+        <button nz-button nz-dropdown [nzDropdownMenu]="actionMoreMenu" class="mx-sm">
+          <i nz-icon nzType="ellipsis"></i>
+        </button>
+        <nz-dropdown-menu #actionMoreMenu="nzDropdownMenu">
+          <ul nz-menu>
+            <li nz-menu-item>选项一</li>
+            <li nz-menu-item>选项二</li>
+            <li nz-menu-item>选项三</li>
+          </ul>
+        </nz-dropdown-menu>
+        <button nz-button [nzType]="'primary'">主操作</button>
+      </ng-template>
+      <ng-template #content>
+        <sv-container size="small" col="2">
+          <sv label="创建人">曲丽丽</sv>
+          <sv label="订购产品">XX 服务</sv>
+          <sv label="创建时间">2017-07-07</sv>
+          <sv label="关联单据"><a (click)="msg.success('yes')">12421</a></sv>
+          <sv label="生效日期">2017-07-07 ~ 2017-08-08</sv>
+          <sv label="备注">请于两个工作日内确认</sv>
+        </sv-container>
+      </ng-template>
+      <ng-template #extra>
+        <div nz-row>
+          <div nz-col nzXs="24" nzSm="12">
+            <p class="text-grey">状态</p>
+            <p class="text-lg">待审批</p>
+          </div>
+          <div nz-col nzXs="24" nzSm="12">
+            <p class="text-grey">订单金额</p>
+            <p class="text-lg">¥ 568.08</p>
+          </div>
+        </div>
+      </ng-template>
+      <ng-template #tab>
+        <nz-tabset [nzSize]="'default'">
+          <nz-tab nzTitle="详情"></nz-tab>
+          <nz-tab nzTitle="规则"></nz-tab>
+        </nz-tabset>
+      </ng-template>
+    </page-header>
+  `,
+})
+export class ComponentsPageHeaderStandardComponent {
+  constructor(public msg: NzMessageService) {}
+}
带图

带图片的页头。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-page-header-image',
+  template: `
+    <page-header [title]="'卡片列表'" [breadcrumb]="breadcrumb" [extra]="extra" [content]="content">
+      <ng-template #breadcrumb>
+        <nz-breadcrumb>
+          <nz-breadcrumb-item><a>一级菜单</a></nz-breadcrumb-item>
+          <nz-breadcrumb-item><a>二级菜单</a></nz-breadcrumb-item>
+          <nz-breadcrumb-item><a>三级菜单</a></nz-breadcrumb-item>
+        </nz-breadcrumb>
+      </ng-template>
+      <ng-template #extra>
+        <div style="margin-top: -60px; text-align: center; width: 195px;">
+          <img class="img-fluid" src="https://gw.alipayobjects.com/zos/rmsportal/RzwpdLnhmvDJToTdfDPe.png" />
+        </div>
+      </ng-template>
+      <ng-template #content>
+        <p>段落示意:蚂蚁金服务设计平台 ant.design,用最小的工作量,无缝接入蚂蚁金服生态,提供跨越设计与开发的体验解决方案。</p>
+        <div class="d-flex pt-md">
+          <a class="d-flex pr-lg">
+            <img class="pr-sm" src="https://gw.alipayobjects.com/zos/rmsportal/MjEImQtenlyueSmVEfUD.svg" />快速开始
+          </a>
+          <a class="d-flex pr-lg">
+            <img class="pr-sm" src="https://gw.alipayobjects.com/zos/rmsportal/NbuDUAuBlIApFuDvWiND.svg" />产品简介
+          </a>
+          <a class="d-flex"> <img class="pr-sm" src="https://gw.alipayobjects.com/zos/rmsportal/ohOEPSYdDTNnyMbGuyLb.svg" />产品文档 </a>
+        </div>
+      </ng-template>
+    </page-header>
+  `,
+})
+export class ComponentsPageHeaderImageComponent {}
Simple

简单的页头。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-page-header-simple',
+  template: `
+    <page-header [title]="'页面标题'" [breadcrumb]="breadcrumb">
+      <ng-template #breadcrumb>
+        <nz-breadcrumb>
+          <nz-breadcrumb-item><a>一级菜单</a></nz-breadcrumb-item>
+          <nz-breadcrumb-item><a>二级菜单</a></nz-breadcrumb-item>
+          <nz-breadcrumb-item><a>三级菜单</a></nz-breadcrumb-item>
+        </nz-breadcrumb>
+      </ng-template>
+    </page-header>
+  `,
+})
+export class ComponentsPageHeaderSimpleComponent {}

API

成员说明类型默认值全局配置
[title]标题名string,TemplateRef<void>-
[titleSub]子标题string,TemplateRef<void>-
[autoTitle]是否自动生成标题,以当前路由从主菜单中定位booleantrue
[syncTitle]是否自动将标题同步至 TitleServiceReuseService 下,仅 titlestring 类型时有效booleantrue
[home]首页文本,若指定空表示不显示string首页
[homeLink]首页链接string/
[homeI18n]首页链接国际化参数string-
[autoBreadcrumb]是否自动生成导航,以当前路由从主菜单中定位booleantrue
[recursiveBreadcrumb]是否自动向上递归查找,菜单数据源包含 /ware,则 /ware/1 也视为 /warebooleanfalse
[loading]是否加载中booleanfalse-
[wide]是否定宽booleanfalse-
[fixed]是否固定模式booleanfalse
[fixedOffsetTop]固定偏移值number64
[breadcrumb]自定义导航区域TemplateRef<void>--
[logo]自定义LOGO区域TemplateRef<void>--
[action]自定义操作区域TemplateRef<void>--
[content]自定义内容区域TemplateRef<void>--
[extra]自定义额外信息区域TemplateRef<void>--
[tab]自定义标签区域TemplateRef<void>--

常见问题

自动生成导航

默认情况下会根据菜单数据自动生成导航,有时你可能希望隐藏某个节点菜单数据时,可以指定菜单的 hideInBreadcrumb: true

固定模式

固定模式在滚动过程中会覆盖 reuse-tab 组件。

\ No newline at end of file diff --git a/components/page-header/zh/index.html b/components/page-header/zh/index.html new file mode 100644 index 000000000..9c9116cd0 --- /dev/null +++ b/components/page-header/zh/index.html @@ -0,0 +1,173 @@ +页面标题 - NG-ALAIN

页头
IMPORT MODULE

页头用来声明页面的主题,包含了用户所关注的最重要的信息,使用户可以快速理解当前页面是什么以及它的功能。

代码演示

基本结构

基本结构,具备响应式布局功能,主要断点为 768px 和 576px,拖动窗口改变大小试试看。

expand codeexpand code
import { Component, ViewEncapsulation } from '@angular/core';
+
+@Component({
+  selector: 'components-page-header-structure',
+  template: `
+    <page-header
+      [title]="'title'"
+      [titleSub]="'titleSub'"
+      [breadcrumb]="breadcrumb"
+      [logo]="logo"
+      [action]="action"
+      [extra]="extra"
+      [content]="content"
+      [tab]="tab"
+    >
+      <ng-template #breadcrumb>面包屑</ng-template>
+      <ng-template #logo><div class="logo">logo</div></ng-template>
+      <ng-template #action><div class="action">action</div></ng-template>
+      <ng-template #content><div class="desc">content</div></ng-template>
+      <ng-template #extra><div class="extra">extra</div></ng-template>
+      <ng-template #tab>
+        <nz-tabset [nzSize]="'default'">
+          <nz-tab nzTitle="页签一"></nz-tab>
+          <nz-tab nzTitle="页签二"></nz-tab>
+          <nz-tab nzTitle="页签三"></nz-tab>
+        </nz-tabset>
+      </ng-template>
+    </page-header>
+  `,
+  styles: [
+    `
+      :host ::ng-deep .logo {
+        background: #3ba0e9;
+        color: #fff;
+        height: 100%;
+      }
+      :host ::ng-deep h1.title {
+        background: rgba(16, 142, 233, 1);
+        color: #fff;
+      }
+      :host ::ng-deep .action,
+      :host ::ng-deep .desc,
+      :host ::ng-deep .extra {
+        background: #7dbcea;
+        color: #fff;
+      }
+    `,
+  ],
+  encapsulation: ViewEncapsulation.Emulated,
+})
+export class ComponentsPageHeaderStructureComponent {}
标准

标准页头。

expand codeexpand code
import { Component } from '@angular/core';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-page-header-standard',
+  template: `
+    <page-header
+      [title]="'单号:234231029431'"
+      [breadcrumb]="breadcrumb"
+      [logo]="logo"
+      [action]="action"
+      [extra]="extra"
+      [content]="content"
+      [tab]="tab"
+    >
+      <ng-template #breadcrumb>
+        <nz-breadcrumb>
+          <nz-breadcrumb-item><a>一级菜单</a></nz-breadcrumb-item>
+          <nz-breadcrumb-item><a>二级菜单</a></nz-breadcrumb-item>
+          <nz-breadcrumb-item><a>三级菜单</a></nz-breadcrumb-item>
+        </nz-breadcrumb>
+      </ng-template>
+      <ng-template #logo><img src="https://gw.alipayobjects.com/zos/rmsportal/nxkuOJlFJuAUhzlMTCEe.png" /></ng-template>
+      <ng-template #action>
+        <nz-button-group>
+          <button nz-button>操作</button>
+          <button nz-button>操作</button>
+        </nz-button-group>
+        <button nz-button nz-dropdown [nzDropdownMenu]="actionMoreMenu" class="mx-sm">
+          <i nz-icon nzType="ellipsis"></i>
+        </button>
+        <nz-dropdown-menu #actionMoreMenu="nzDropdownMenu">
+          <ul nz-menu>
+            <li nz-menu-item>选项一</li>
+            <li nz-menu-item>选项二</li>
+            <li nz-menu-item>选项三</li>
+          </ul>
+        </nz-dropdown-menu>
+        <button nz-button [nzType]="'primary'">主操作</button>
+      </ng-template>
+      <ng-template #content>
+        <sv-container size="small" col="2">
+          <sv label="创建人">曲丽丽</sv>
+          <sv label="订购产品">XX 服务</sv>
+          <sv label="创建时间">2017-07-07</sv>
+          <sv label="关联单据"><a (click)="msg.success('yes')">12421</a></sv>
+          <sv label="生效日期">2017-07-07 ~ 2017-08-08</sv>
+          <sv label="备注">请于两个工作日内确认</sv>
+        </sv-container>
+      </ng-template>
+      <ng-template #extra>
+        <div nz-row>
+          <div nz-col nzXs="24" nzSm="12">
+            <p class="text-grey">状态</p>
+            <p class="text-lg">待审批</p>
+          </div>
+          <div nz-col nzXs="24" nzSm="12">
+            <p class="text-grey">订单金额</p>
+            <p class="text-lg">¥ 568.08</p>
+          </div>
+        </div>
+      </ng-template>
+      <ng-template #tab>
+        <nz-tabset [nzSize]="'default'">
+          <nz-tab nzTitle="详情"></nz-tab>
+          <nz-tab nzTitle="规则"></nz-tab>
+        </nz-tabset>
+      </ng-template>
+    </page-header>
+  `,
+})
+export class ComponentsPageHeaderStandardComponent {
+  constructor(public msg: NzMessageService) {}
+}
带图

带图片的页头。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-page-header-image',
+  template: `
+    <page-header [title]="'卡片列表'" [breadcrumb]="breadcrumb" [extra]="extra" [content]="content">
+      <ng-template #breadcrumb>
+        <nz-breadcrumb>
+          <nz-breadcrumb-item><a>一级菜单</a></nz-breadcrumb-item>
+          <nz-breadcrumb-item><a>二级菜单</a></nz-breadcrumb-item>
+          <nz-breadcrumb-item><a>三级菜单</a></nz-breadcrumb-item>
+        </nz-breadcrumb>
+      </ng-template>
+      <ng-template #extra>
+        <div style="margin-top: -60px; text-align: center; width: 195px;">
+          <img class="img-fluid" src="https://gw.alipayobjects.com/zos/rmsportal/RzwpdLnhmvDJToTdfDPe.png" />
+        </div>
+      </ng-template>
+      <ng-template #content>
+        <p>段落示意:蚂蚁金服务设计平台 ant.design,用最小的工作量,无缝接入蚂蚁金服生态,提供跨越设计与开发的体验解决方案。</p>
+        <div class="d-flex pt-md">
+          <a class="d-flex pr-lg">
+            <img class="pr-sm" src="https://gw.alipayobjects.com/zos/rmsportal/MjEImQtenlyueSmVEfUD.svg" />快速开始
+          </a>
+          <a class="d-flex pr-lg">
+            <img class="pr-sm" src="https://gw.alipayobjects.com/zos/rmsportal/NbuDUAuBlIApFuDvWiND.svg" />产品简介
+          </a>
+          <a class="d-flex"> <img class="pr-sm" src="https://gw.alipayobjects.com/zos/rmsportal/ohOEPSYdDTNnyMbGuyLb.svg" />产品文档 </a>
+        </div>
+      </ng-template>
+    </page-header>
+  `,
+})
+export class ComponentsPageHeaderImageComponent {}
Simple

简单的页头。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-page-header-simple',
+  template: `
+    <page-header [title]="'页面标题'" [breadcrumb]="breadcrumb">
+      <ng-template #breadcrumb>
+        <nz-breadcrumb>
+          <nz-breadcrumb-item><a>一级菜单</a></nz-breadcrumb-item>
+          <nz-breadcrumb-item><a>二级菜单</a></nz-breadcrumb-item>
+          <nz-breadcrumb-item><a>三级菜单</a></nz-breadcrumb-item>
+        </nz-breadcrumb>
+      </ng-template>
+    </page-header>
+  `,
+})
+export class ComponentsPageHeaderSimpleComponent {}

API

成员说明类型默认值全局配置
[title]标题名string,TemplateRef<void>-
[titleSub]子标题string,TemplateRef<void>-
[autoTitle]是否自动生成标题,以当前路由从主菜单中定位booleantrue
[syncTitle]是否自动将标题同步至 TitleServiceReuseService 下,仅 titlestring 类型时有效booleantrue
[home]首页文本,若指定空表示不显示string首页
[homeLink]首页链接string/
[homeI18n]首页链接国际化参数string-
[autoBreadcrumb]是否自动生成导航,以当前路由从主菜单中定位booleantrue
[recursiveBreadcrumb]是否自动向上递归查找,菜单数据源包含 /ware,则 /ware/1 也视为 /warebooleanfalse
[loading]是否加载中booleanfalse-
[wide]是否定宽booleanfalse-
[fixed]是否固定模式booleanfalse
[fixedOffsetTop]固定偏移值number64
[breadcrumb]自定义导航区域TemplateRef<void>--
[logo]自定义LOGO区域TemplateRef<void>--
[action]自定义操作区域TemplateRef<void>--
[content]自定义内容区域TemplateRef<void>--
[extra]自定义额外信息区域TemplateRef<void>--
[tab]自定义标签区域TemplateRef<void>--

常见问题

自动生成导航

默认情况下会根据菜单数据自动生成导航,有时你可能希望隐藏某个节点菜单数据时,可以指定菜单的 hideInBreadcrumb: true

固定模式

固定模式在滚动过程中会覆盖 reuse-tab 组件。

\ No newline at end of file diff --git a/components/pdf/en/index.html b/components/pdf/en/index.html new file mode 100644 index 000000000..fff81616e --- /dev/null +++ b/components/pdf/en/index.html @@ -0,0 +1,218 @@ +pdf - NG-ALAIN

Pdf
IMPORT MODULE

基于 pdf.js 的PDF预览组件。

默认PDF预览并不是刚需的原因,因此采用一种延迟加载脚本的形式,可以通过全局配置配置来改变默认 pdf.js 类库的根路径。

组件也是受 ng2-pdf-viewer 启发。

使用本地路径

yarn add pdfjs-dist
// angular.json
+{
+  "glob": "{build,web}/**",
+  "input": "./node_modules/pdfjs-dist/",
+  "ignore": ["*.js.map", "*.d.ts"],
+  "output": "assets/pdfjs/"
+}
// global-config.module.ts
+const alainConfig: AlainConfig = {
+  pdf: {
+    lib: '/assets/pdfjs/'
+  }
+};

代码演示

基础样例

最简单的用法。

expand codeexpand code
import { Component } from '@angular/core';
+
+import type { PdfChangeEvent } from '@delon/abc/pdf';
+
+@Component({
+  selector: 'components-pdf-basic',
+  template: `
+    <button nz-button nzType="primary" (click)="src = src === one ? two : one">Change File</button>
+    <pdf [src]="src" style="height: 300px" (change)="handle($event)"></pdf>
+  `
+})
+export class ComponentsPdfBasicComponent {
+  one = `https://raw.githubusercontent.com/mozilla/pdf.js/master/web/compressed.tracemonkey-pldi-09.pdf`;
+  two = `https://raw.githubusercontent.com/mozilla/pdf.js/master/examples/learning/helloworld.pdf`;
+  src = this.one;
+
+  handle(ev: PdfChangeEvent): void {
+    console.log(ev);
+  }
+}

定制化

提供丰富接口用于定制化。

expand codeexpand code
import { ChangeDetectorRef, Component, OnInit, ViewChild } from '@angular/core';
+import { Subject } from 'rxjs';
+
+import { PdfChangeEvent, PdfComponent, PdfZoomScale } from '@delon/abc/pdf';
+import type { NzSafeAny } from 'ng-zorro-antd/core/types';
+import { NzUploadFile } from 'ng-zorro-antd/upload';
+
+@Component({
+  selector: 'components-pdf-design',
+  template: `
+    <div nz-row [nzGutter]="16">
+      <div nz-col nzSpan="8">
+        <div se-container col="1">
+          <se label="Url of the pdf file (Press enter to run)">
+            <input #url nz-input [ngModel]="src" (keyup.enter)="uploadSrc(url.value)" />
+          </se>
+          <se label="Local of the pdf file">
+            <nz-upload nzAccept=".pdf" [nzBeforeUpload]="beforeUpload">
+              <button nz-button><i nz-icon nzType="upload"></i>Select File</button>
+            </nz-upload>
+          </se>
+          <se label="Render Text">
+            <nz-switch [(ngModel)]="renderText"></nz-switch>
+          </se>
+          <se label="Original size">
+            <nz-switch [(ngModel)]="originalSize"></nz-switch>
+          </se>
+          <se *ngIf="originalSize" label="Fit to page">
+            <nz-switch [(ngModel)]="fitToPage"></nz-switch>
+          </se>
+          <se label="Auto size">
+            <nz-switch [(ngModel)]="autoReSize"></nz-switch>
+          </se>
+          <se label="Show All Pages">
+            <nz-switch [(ngModel)]="showAll" (ngModelChange)="changeShowAllPages($event)"></nz-switch>
+          </se>
+          <se *ngIf="!originalSize" label="Zoom Scale">
+            <nz-select [(ngModel)]="zoomScale">
+              <nz-option nzValue="page-height" nzLabel="Page Height"></nz-option>
+              <nz-option nzValue="page-fit" nzLabel="Page Fit"></nz-option>
+              <nz-option nzValue="page-width" nzLabel="Page Width"></nz-option>
+            </nz-select>
+          </se>
+          <se label="Zoom">
+            <nz-input-number [(ngModel)]="zoom" [nzStep]="0.1"></nz-input-number>
+          </se>
+          <se *ngIf="showAll" label="Stick to page ">
+            <nz-switch [(ngModel)]="stickToPage"></nz-switch>
+          </se>
+          <se *ngIf="stickToPage" label="Page">
+            <nz-pagination [(nzPageIndex)]="pi" [nzPageSize]="1" [nzTotal]="total" nzSimple></nz-pagination>
+          </se>
+          <se label="Rotation">
+            <nz-input-number [(ngModel)]="rotation" [nzStep]="90"></nz-input-number>
+          </se>
+          <se label="Outline">
+            <nz-switch [(ngModel)]="outline"></nz-switch>
+          </se>
+          <se *ngIf="outline" [label]="null">
+            <nz-empty *ngIf="outlineList === null"></nz-empty>
+            <ng-template #outlineTpl let-ls let-level="level">
+              <li *ngFor="let i of ls" [style.paddingLeft.px]="level * 16">
+                <a (click)="navigateTo(i.dest)">{{ i.title }}</a>
+                <ul *ngIf="i.items && i.items.length > 0">
+                  <ng-container
+                    *ngTemplateOutlet="outlineTpl; context: { $implicit: i.items, level: level + 1 }"
+                  ></ng-container>
+                </ul>
+              </li>
+            </ng-template>
+            <ul *ngIf="outlineList">
+              <ng-container
+                *ngTemplateOutlet="outlineTpl; context: { $implicit: outlineList, level: 0 }"
+              ></ng-container>
+            </ul>
+          </se>
+          <se label="Search pdf">
+            <input
+              #qIpt
+              nz-input
+              placeholder="Search..."
+              (input)="search$.next(qIpt.value)"
+              (keyup.enter)="search$.next(qIpt.value)"
+            />
+          </se>
+        </div>
+      </div>
+      <div nz-col nzSpan="16" style="background-color: #fafafa; padding: 32px 0;">
+        <pdf
+          #pdf
+          [src]="src"
+          [pi]="pi"
+          [renderText]="renderText"
+          [showAll]="showAll"
+          [originalSize]="originalSize"
+          [fitToPage]="fitToPage"
+          [stickToPage]="stickToPage"
+          [zoomScale]="zoomScale"
+          [zoom]="zoom"
+          [rotation]="rotation"
+          [autoReSize]="autoReSize"
+          (change)="change($event)"
+          style="height: 600px"
+        ></pdf>
+      </div>
+    </div>
+  `
+})
+export class ComponentsPdfDesignComponent implements OnInit {
+  @ViewChild('pdf') private comp!: PdfComponent;
+  src = `https://raw.githubusercontent.com/mozilla/pdf.js/master/web/compressed.tracemonkey-pldi-09.pdf`;
+  pi = 1;
+  total = 0;
+  renderText = true;
+  stickToPage = true;
+  originalSize = true;
+  fitToPage = false;
+  showAll = true;
+  zoomScale: PdfZoomScale = 'page-width';
+  rotation = 0;
+  zoom = 1;
+  autoReSize = true;
+  outline = false;
+  outlineList: NzSafeAny = null;
+  q = '';
+  search$ = new Subject<string>();
+
+  constructor(private cdr: ChangeDetectorRef) {}
+
+  ngOnInit(): void {
+    this.search$.subscribe((q: string) => {
+      if (q !== this.q) {
+        this.q = q;
+        this.comp.eventBus?.dispatch('find', {
+          query: this.q,
+          highlightAll: true
+        });
+      } else {
+        this.comp.eventBus?.dispatch('findagain', {
+          query: this.q,
+          highlightAll: true
+        });
+      }
+    });
+  }
+
+  change(ev: PdfChangeEvent): void {
+    switch (ev.type) {
+      case 'loaded':
+        this.total = ev.total!;
+        this.loadOutline();
+        break;
+      case 'pi':
+        this.pi = ev.pi!;
+        break;
+    }
+
+    if (ev.type !== 'load-progress') console.log(ev);
+  }
+
+  uploadSrc(src: string): void {
+    this.src = src;
+  }
+
+  changeShowAllPages(_val: boolean): void {
+    this.stickToPage = true;
+  }
+
+  beforeUpload = (file: NzUploadFile): boolean => {
+    const reader = new FileReader();
+    reader.onload = (e: ProgressEvent<FileReader>) => {
+      this.src = e.target!.result as string;
+      this.cdr.detectChanges();
+    };
+    reader.readAsArrayBuffer(file as unknown as Blob);
+    return false;
+  };
+
+  loadOutline(): void {
+    this.comp.pdf?.getOutline().then((outline: NzSafeAny) => {
+      this.outlineList = outline;
+    });
+  }
+
+  navigateTo(dest: string): void {
+    this.comp.linkService?.goToDestination(dest);
+  }
+}

API

pdf

成员说明类型默认值全局配置
[src]指定文档路径string, object, UInt8Array--
[pi]当前页number1-
[showAll]是否显示全部页booleantrue
[renderText]是否启用文字层,开启后允许文字选择booleantrue
[textLayerMode]文字层渲染模式PdfTextLayerModeENABLE-
[showBorders]是否显示页面边框booleanfalse
[stickToPage]是否视野保持在 pi 页上booleanfalse-
[originalSize]控制文档显示大小,true 按原始大小,false 按容器大小booleantrue
[fitToPage]控制原始尺寸不会超出容器大小booleanfalse
[zoom]控制缩放文档number1-
[zoomScale]缩放文档的计算方式PdfZoomScalepage-width-
[rotation]旋转文档number0-
[autoReSize]是否自动缩放booleantrue
[externalLinkTarget]外部链接打开形式PdfExternalLinkTargetBLANK-
[delay]延迟初始化,单位:毫秒number--
(change)变更时回调EventEmitter<PdfChangeEvent>--

组件属性

提供一些常用的API接口。

名称说明
pdf当前 PDF 实例
eventBusPDF 文件的事件总线,例如:查找文档等
findController查找控制器,不够新版本已经被 eventBus 替代
pageViewer查看控件
linkService导航服务

常见问题

为什么有时需要指定高度

当启用显示全部页时,如果要让页码的控制产生有效,需要确保组件的高度是一个有效值。

\ No newline at end of file diff --git a/components/pdf/zh/index.html b/components/pdf/zh/index.html new file mode 100644 index 000000000..1a473e54f --- /dev/null +++ b/components/pdf/zh/index.html @@ -0,0 +1,218 @@ +pdf - NG-ALAIN

Pdf
IMPORT MODULE

基于 pdf.js 的PDF预览组件。

默认PDF预览并不是刚需的原因,因此采用一种延迟加载脚本的形式,可以通过全局配置配置来改变默认 pdf.js 类库的根路径。

组件也是受 ng2-pdf-viewer 启发。

使用本地路径

yarn add pdfjs-dist
// angular.json
+{
+  "glob": "{build,web}/**",
+  "input": "./node_modules/pdfjs-dist/",
+  "ignore": ["*.js.map", "*.d.ts"],
+  "output": "assets/pdfjs/"
+}
// global-config.module.ts
+const alainConfig: AlainConfig = {
+  pdf: {
+    lib: '/assets/pdfjs/'
+  }
+};

代码演示

基础样例

最简单的用法。

expand codeexpand code
import { Component } from '@angular/core';
+
+import type { PdfChangeEvent } from '@delon/abc/pdf';
+
+@Component({
+  selector: 'components-pdf-basic',
+  template: `
+    <button nz-button nzType="primary" (click)="src = src === one ? two : one">Change File</button>
+    <pdf [src]="src" style="height: 300px" (change)="handle($event)"></pdf>
+  `
+})
+export class ComponentsPdfBasicComponent {
+  one = `https://raw.githubusercontent.com/mozilla/pdf.js/master/web/compressed.tracemonkey-pldi-09.pdf`;
+  two = `https://raw.githubusercontent.com/mozilla/pdf.js/master/examples/learning/helloworld.pdf`;
+  src = this.one;
+
+  handle(ev: PdfChangeEvent): void {
+    console.log(ev);
+  }
+}

定制化

提供丰富接口用于定制化。

expand codeexpand code
import { ChangeDetectorRef, Component, OnInit, ViewChild } from '@angular/core';
+import { Subject } from 'rxjs';
+
+import { PdfChangeEvent, PdfComponent, PdfZoomScale } from '@delon/abc/pdf';
+import type { NzSafeAny } from 'ng-zorro-antd/core/types';
+import { NzUploadFile } from 'ng-zorro-antd/upload';
+
+@Component({
+  selector: 'components-pdf-design',
+  template: `
+    <div nz-row [nzGutter]="16">
+      <div nz-col nzSpan="8">
+        <div se-container col="1">
+          <se label="Url of the pdf file (Press enter to run)">
+            <input #url nz-input [ngModel]="src" (keyup.enter)="uploadSrc(url.value)" />
+          </se>
+          <se label="Local of the pdf file">
+            <nz-upload nzAccept=".pdf" [nzBeforeUpload]="beforeUpload">
+              <button nz-button><i nz-icon nzType="upload"></i>Select File</button>
+            </nz-upload>
+          </se>
+          <se label="Render Text">
+            <nz-switch [(ngModel)]="renderText"></nz-switch>
+          </se>
+          <se label="Original size">
+            <nz-switch [(ngModel)]="originalSize"></nz-switch>
+          </se>
+          <se *ngIf="originalSize" label="Fit to page">
+            <nz-switch [(ngModel)]="fitToPage"></nz-switch>
+          </se>
+          <se label="Auto size">
+            <nz-switch [(ngModel)]="autoReSize"></nz-switch>
+          </se>
+          <se label="Show All Pages">
+            <nz-switch [(ngModel)]="showAll" (ngModelChange)="changeShowAllPages($event)"></nz-switch>
+          </se>
+          <se *ngIf="!originalSize" label="Zoom Scale">
+            <nz-select [(ngModel)]="zoomScale">
+              <nz-option nzValue="page-height" nzLabel="Page Height"></nz-option>
+              <nz-option nzValue="page-fit" nzLabel="Page Fit"></nz-option>
+              <nz-option nzValue="page-width" nzLabel="Page Width"></nz-option>
+            </nz-select>
+          </se>
+          <se label="Zoom">
+            <nz-input-number [(ngModel)]="zoom" [nzStep]="0.1"></nz-input-number>
+          </se>
+          <se *ngIf="showAll" label="Stick to page ">
+            <nz-switch [(ngModel)]="stickToPage"></nz-switch>
+          </se>
+          <se *ngIf="stickToPage" label="Page">
+            <nz-pagination [(nzPageIndex)]="pi" [nzPageSize]="1" [nzTotal]="total" nzSimple></nz-pagination>
+          </se>
+          <se label="Rotation">
+            <nz-input-number [(ngModel)]="rotation" [nzStep]="90"></nz-input-number>
+          </se>
+          <se label="Outline">
+            <nz-switch [(ngModel)]="outline"></nz-switch>
+          </se>
+          <se *ngIf="outline" [label]="null">
+            <nz-empty *ngIf="outlineList === null"></nz-empty>
+            <ng-template #outlineTpl let-ls let-level="level">
+              <li *ngFor="let i of ls" [style.paddingLeft.px]="level * 16">
+                <a (click)="navigateTo(i.dest)">{{ i.title }}</a>
+                <ul *ngIf="i.items && i.items.length > 0">
+                  <ng-container
+                    *ngTemplateOutlet="outlineTpl; context: { $implicit: i.items, level: level + 1 }"
+                  ></ng-container>
+                </ul>
+              </li>
+            </ng-template>
+            <ul *ngIf="outlineList">
+              <ng-container
+                *ngTemplateOutlet="outlineTpl; context: { $implicit: outlineList, level: 0 }"
+              ></ng-container>
+            </ul>
+          </se>
+          <se label="Search pdf">
+            <input
+              #qIpt
+              nz-input
+              placeholder="Search..."
+              (input)="search$.next(qIpt.value)"
+              (keyup.enter)="search$.next(qIpt.value)"
+            />
+          </se>
+        </div>
+      </div>
+      <div nz-col nzSpan="16" style="background-color: #fafafa; padding: 32px 0;">
+        <pdf
+          #pdf
+          [src]="src"
+          [pi]="pi"
+          [renderText]="renderText"
+          [showAll]="showAll"
+          [originalSize]="originalSize"
+          [fitToPage]="fitToPage"
+          [stickToPage]="stickToPage"
+          [zoomScale]="zoomScale"
+          [zoom]="zoom"
+          [rotation]="rotation"
+          [autoReSize]="autoReSize"
+          (change)="change($event)"
+          style="height: 600px"
+        ></pdf>
+      </div>
+    </div>
+  `
+})
+export class ComponentsPdfDesignComponent implements OnInit {
+  @ViewChild('pdf') private comp!: PdfComponent;
+  src = `https://raw.githubusercontent.com/mozilla/pdf.js/master/web/compressed.tracemonkey-pldi-09.pdf`;
+  pi = 1;
+  total = 0;
+  renderText = true;
+  stickToPage = true;
+  originalSize = true;
+  fitToPage = false;
+  showAll = true;
+  zoomScale: PdfZoomScale = 'page-width';
+  rotation = 0;
+  zoom = 1;
+  autoReSize = true;
+  outline = false;
+  outlineList: NzSafeAny = null;
+  q = '';
+  search$ = new Subject<string>();
+
+  constructor(private cdr: ChangeDetectorRef) {}
+
+  ngOnInit(): void {
+    this.search$.subscribe((q: string) => {
+      if (q !== this.q) {
+        this.q = q;
+        this.comp.eventBus?.dispatch('find', {
+          query: this.q,
+          highlightAll: true
+        });
+      } else {
+        this.comp.eventBus?.dispatch('findagain', {
+          query: this.q,
+          highlightAll: true
+        });
+      }
+    });
+  }
+
+  change(ev: PdfChangeEvent): void {
+    switch (ev.type) {
+      case 'loaded':
+        this.total = ev.total!;
+        this.loadOutline();
+        break;
+      case 'pi':
+        this.pi = ev.pi!;
+        break;
+    }
+
+    if (ev.type !== 'load-progress') console.log(ev);
+  }
+
+  uploadSrc(src: string): void {
+    this.src = src;
+  }
+
+  changeShowAllPages(_val: boolean): void {
+    this.stickToPage = true;
+  }
+
+  beforeUpload = (file: NzUploadFile): boolean => {
+    const reader = new FileReader();
+    reader.onload = (e: ProgressEvent<FileReader>) => {
+      this.src = e.target!.result as string;
+      this.cdr.detectChanges();
+    };
+    reader.readAsArrayBuffer(file as unknown as Blob);
+    return false;
+  };
+
+  loadOutline(): void {
+    this.comp.pdf?.getOutline().then((outline: NzSafeAny) => {
+      this.outlineList = outline;
+    });
+  }
+
+  navigateTo(dest: string): void {
+    this.comp.linkService?.goToDestination(dest);
+  }
+}

API

pdf

成员说明类型默认值全局配置
[src]指定文档路径string, object, UInt8Array--
[pi]当前页number1-
[showAll]是否显示全部页booleantrue
[renderText]是否启用文字层,开启后允许文字选择booleantrue
[textLayerMode]文字层渲染模式PdfTextLayerModeENABLE-
[showBorders]是否显示页面边框booleanfalse
[stickToPage]是否视野保持在 pi 页上booleanfalse-
[originalSize]控制文档显示大小,true 按原始大小,false 按容器大小booleantrue
[fitToPage]控制原始尺寸不会超出容器大小booleanfalse
[zoom]控制缩放文档number1-
[zoomScale]缩放文档的计算方式PdfZoomScalepage-width-
[rotation]旋转文档number0-
[autoReSize]是否自动缩放booleantrue
[externalLinkTarget]外部链接打开形式PdfExternalLinkTargetBLANK-
[delay]延迟初始化,单位:毫秒number--
(change)变更时回调EventEmitter<PdfChangeEvent>--

组件属性

提供一些常用的API接口。

名称说明
pdf当前 PDF 实例
eventBusPDF 文件的事件总线,例如:查找文档等
findController查找控制器,不够新版本已经被 eventBus 替代
pageViewer查看控件
linkService导航服务

常见问题

为什么有时需要指定高度

当启用显示全部页时,如果要让页码的控制产生有效,需要确保组件的高度是一个有效值。

\ No newline at end of file diff --git a/components/qr/en/index.html b/components/qr/en/index.html new file mode 100644 index 000000000..e70afce36 --- /dev/null +++ b/components/qr/en/index.html @@ -0,0 +1,168 @@ +qr - NG-ALAIN

二维码
IMPORT MODULE

将在 18.0.0 中移除,请使用 nz-qrcode 替代

基于 qrious 生成二维码。

默认二维码的操作并不是刚需的原因,因此采用一种延迟加载脚本的形式,可以通过全局配置配置来改变默认 CDN 路径,默认情况下使用 https://cdn.jsdelivr.net/npm/qrious/dist/qrious.min.js。或安装 npm i --save qrious 依赖包并在 angular.jsonscripts 引用 "node_modules/qrious/dist/qrious.min.js"

使用本地路径

// angular.json
+{
+  "glob": "**/qrious.min.js",
+  "input": "./node_modules/qrious/dist",
+  "output": "assets/qrious/"
+}
// global-config.module.ts
+const alainConfig: AlainConfig = {
+  qr: {
+    lib: '/assets/qrious/qrious.min.js'
+  }
+};

代码演示

url

基础样例

最简单的用法。

expand codeexpand code
import { Component, OnInit } from '@angular/core';
+
+@Component({
+  selector: 'components-qr-basic',
+  template: `
+    <h3>{{ type }}</h3>
+    <qr [value]="value"></qr>
+    <div>
+      <button *ngFor="let t of types" nz-button (click)="change(t)">{{ t }}</button>
+    </div>
+  `,
+})
+export class ComponentsQrBasicComponent implements OnInit {
+  types = ['url', 'email', 'tel', 'cn', 'vcard'];
+  value = '';
+  type = '';
+  change(type: string): void {
+    this.type = type;
+    switch (type) {
+      case 'url':
+        this.value = 'https://ng-alain.com/';
+        break;
+      case 'email':
+        this.value = 'mailto:cipchk@qq.com';
+        break;
+      case 'tel':
+        this.value = 'tel:15900000000';
+        break;
+      case 'cn':
+        this.value = '你好🇨🇳';
+        break;
+      case 'vcard':
+        this.value = `BEGIN:VCARD
+VERSION:4.0
+N:色;卡;;Mr.;
+FN:卡色
+ORG:NG-ALAIN
+TITLE:NG-ALAIN
+PHOTO;MEDIATYPE=image/svg:https://ng-alain.com/assets/img/logo-color.svg
+TEL;TYPE=work,voice;VALUE=uri:tel:15900000000
+ADR;TYPE=WORK;PREF=1;LABEL="中国上海":;;上海;中国
+EMAIL:cipchk@qq.com
+x-qq:94458893
+END:VCARD`;
+        break;
+    }
+  }
+
+  ngOnInit(): void {
+    this.change('url');
+  }
+}
L
image/png
px
px
设计器

利用 change 可以回调二维码 dataURL 值。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-qr-design',
+  template: `
+    <div nz-row [nzGutter]="24">
+      <div nz-col [nzSpan]="8" class="text-center">
+        <qr
+          [value]="value"
+          [background]="background"
+          [backgroundAlpha]="backgroundAlpha"
+          [foreground]="foreground"
+          [foregroundAlpha]="foregroundAlpha"
+          [level]="level"
+          [mime]="mime"
+          [padding]="padding"
+          [size]="size"
+          (change)="change($event)"
+          style="border:1px solid #999"
+        ></qr>
+      </div>
+      <div nz-col [nzSpan]="16">
+        <se-container col="1">
+          <se label="背景">
+            <nz-input-group>
+              <div nz-row [nzGutter]="8">
+                <div nz-col nzSpan="12">
+                  <input nz-input type="color" [(ngModel)]="background" [ngModelOptions]="{ standalone: true }" />
+                </div>
+                <div nz-col nzSpan="12">
+                  <nz-input-number
+                    [(ngModel)]="backgroundAlpha"
+                    [nzMin]="0"
+                    [nzMax]="1"
+                    [nzStep]="0.1"
+                    [ngModelOptions]="{ standalone: true }"
+                  ></nz-input-number>
+                </div>
+              </div>
+            </nz-input-group>
+          </se>
+          <se label="前景">
+            <nz-input-group>
+              <div nz-row [nzGutter]="8">
+                <div nz-col nzSpan="12">
+                  <input nz-input type="color" [(ngModel)]="foreground" [ngModelOptions]="{ standalone: true }" />
+                </div>
+                <div nz-col nzSpan="12">
+                  <nz-input-number
+                    [(ngModel)]="foregroundAlpha"
+                    [nzMin]="0"
+                    [nzMax]="1"
+                    [nzStep]="0.1"
+                    [ngModelOptions]="{ standalone: true }"
+                  ></nz-input-number>
+                </div>
+              </div>
+            </nz-input-group>
+          </se>
+          <se label="误差">
+            <nz-select [(ngModel)]="level" [ngModelOptions]="{ standalone: true }">
+              <nz-option nzValue="L" nzLabel="L"></nz-option>
+              <nz-option nzValue="M" nzLabel="M"></nz-option>
+              <nz-option nzValue="Q" nzLabel="Q"></nz-option>
+              <nz-option nzValue="H" nzLabel="H"></nz-option>
+            </nz-select>
+          </se>
+          <se label="Mime">
+            <nz-select [(ngModel)]="mime" [ngModelOptions]="{ standalone: true }">
+              <nz-option nzValue="image/png" nzLabel="image/png"></nz-option>
+              <nz-option nzValue="image/jpeg" nzLabel="image/jpeg"></nz-option>
+              <nz-option nzValue="image/gif" nzLabel="image/gif"></nz-option>
+            </nz-select>
+          </se>
+          <se label="内边距">
+            <nz-input-number [(ngModel)]="padding" [ngModelOptions]="{ standalone: true }" [nzMin]="0" [nzMax]="100"></nz-input-number> px
+          </se>
+          <se label="大小">
+            <nz-input-number
+              [(ngModel)]="size"
+              [ngModelOptions]="{ standalone: true }"
+              [nzMin]="100"
+              [nzMax]="1000"
+              [nzStep]="padding"
+            ></nz-input-number>
+            px
+          </se>
+        </se-container>
+      </div>
+    </div>
+  `,
+})
+export class ComponentsQrDesignComponent {
+  value = 'https://ng-alain.com/';
+  background = '#ffffff';
+  backgroundAlpha = 1.0;
+  foreground = '#000000';
+  foregroundAlpha = 1.0;
+  level = 'L';
+  mime = 'image/png';
+  padding = 10;
+  size = 220;
+
+  change(dataURL: string): void {
+    console.log(dataURL);
+  }
+}

API

qr

成员说明类型默认值全局配置
[value]string | () => string-
[background]背景stringwhite
[backgroundAlpha]背景透明级别,范围:0-1 之间number1
[foreground]前景stringwhite
[foregroundAlpha]前景透明级别,范围:0-1 之间number1
[level]误差校正级别'L','M','Q','H''L'
[mime]二维码输出图片MIME类型stringimage/png
[padding]内边距(单位:px)number,null10
[size]大小(单位:px)number220
[delay]延迟渲染,单位:毫秒number0
(change)变更时回调,返回二维码dataURL值EventEmitter<string>-

常见问题

参考 #100 的写法。

为什么没有居中

原因请参考 #111,解决的办法设置 paddingnull,例如:

<qr [value]="value" [padding]="null"></qr>
\ No newline at end of file diff --git a/components/qr/zh/index.html b/components/qr/zh/index.html new file mode 100644 index 000000000..d76c90644 --- /dev/null +++ b/components/qr/zh/index.html @@ -0,0 +1,168 @@ +qr - NG-ALAIN

二维码
IMPORT MODULE

将在 18.0.0 中移除,请使用 nz-qrcode 替代

基于 qrious 生成二维码。

默认二维码的操作并不是刚需的原因,因此采用一种延迟加载脚本的形式,可以通过全局配置配置来改变默认 CDN 路径,默认情况下使用 https://cdn.jsdelivr.net/npm/qrious/dist/qrious.min.js。或安装 npm i --save qrious 依赖包并在 angular.jsonscripts 引用 "node_modules/qrious/dist/qrious.min.js"

使用本地路径

// angular.json
+{
+  "glob": "**/qrious.min.js",
+  "input": "./node_modules/qrious/dist",
+  "output": "assets/qrious/"
+}
// global-config.module.ts
+const alainConfig: AlainConfig = {
+  qr: {
+    lib: '/assets/qrious/qrious.min.js'
+  }
+};

代码演示

url

基础样例

最简单的用法。

expand codeexpand code
import { Component, OnInit } from '@angular/core';
+
+@Component({
+  selector: 'components-qr-basic',
+  template: `
+    <h3>{{ type }}</h3>
+    <qr [value]="value"></qr>
+    <div>
+      <button *ngFor="let t of types" nz-button (click)="change(t)">{{ t }}</button>
+    </div>
+  `,
+})
+export class ComponentsQrBasicComponent implements OnInit {
+  types = ['url', 'email', 'tel', 'cn', 'vcard'];
+  value = '';
+  type = '';
+  change(type: string): void {
+    this.type = type;
+    switch (type) {
+      case 'url':
+        this.value = 'https://ng-alain.com/';
+        break;
+      case 'email':
+        this.value = 'mailto:cipchk@qq.com';
+        break;
+      case 'tel':
+        this.value = 'tel:15900000000';
+        break;
+      case 'cn':
+        this.value = '你好🇨🇳';
+        break;
+      case 'vcard':
+        this.value = `BEGIN:VCARD
+VERSION:4.0
+N:色;卡;;Mr.;
+FN:卡色
+ORG:NG-ALAIN
+TITLE:NG-ALAIN
+PHOTO;MEDIATYPE=image/svg:https://ng-alain.com/assets/img/logo-color.svg
+TEL;TYPE=work,voice;VALUE=uri:tel:15900000000
+ADR;TYPE=WORK;PREF=1;LABEL="中国上海":;;上海;中国
+EMAIL:cipchk@qq.com
+x-qq:94458893
+END:VCARD`;
+        break;
+    }
+  }
+
+  ngOnInit(): void {
+    this.change('url');
+  }
+}
L
image/png
px
px
设计器

利用 change 可以回调二维码 dataURL 值。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-qr-design',
+  template: `
+    <div nz-row [nzGutter]="24">
+      <div nz-col [nzSpan]="8" class="text-center">
+        <qr
+          [value]="value"
+          [background]="background"
+          [backgroundAlpha]="backgroundAlpha"
+          [foreground]="foreground"
+          [foregroundAlpha]="foregroundAlpha"
+          [level]="level"
+          [mime]="mime"
+          [padding]="padding"
+          [size]="size"
+          (change)="change($event)"
+          style="border:1px solid #999"
+        ></qr>
+      </div>
+      <div nz-col [nzSpan]="16">
+        <se-container col="1">
+          <se label="背景">
+            <nz-input-group>
+              <div nz-row [nzGutter]="8">
+                <div nz-col nzSpan="12">
+                  <input nz-input type="color" [(ngModel)]="background" [ngModelOptions]="{ standalone: true }" />
+                </div>
+                <div nz-col nzSpan="12">
+                  <nz-input-number
+                    [(ngModel)]="backgroundAlpha"
+                    [nzMin]="0"
+                    [nzMax]="1"
+                    [nzStep]="0.1"
+                    [ngModelOptions]="{ standalone: true }"
+                  ></nz-input-number>
+                </div>
+              </div>
+            </nz-input-group>
+          </se>
+          <se label="前景">
+            <nz-input-group>
+              <div nz-row [nzGutter]="8">
+                <div nz-col nzSpan="12">
+                  <input nz-input type="color" [(ngModel)]="foreground" [ngModelOptions]="{ standalone: true }" />
+                </div>
+                <div nz-col nzSpan="12">
+                  <nz-input-number
+                    [(ngModel)]="foregroundAlpha"
+                    [nzMin]="0"
+                    [nzMax]="1"
+                    [nzStep]="0.1"
+                    [ngModelOptions]="{ standalone: true }"
+                  ></nz-input-number>
+                </div>
+              </div>
+            </nz-input-group>
+          </se>
+          <se label="误差">
+            <nz-select [(ngModel)]="level" [ngModelOptions]="{ standalone: true }">
+              <nz-option nzValue="L" nzLabel="L"></nz-option>
+              <nz-option nzValue="M" nzLabel="M"></nz-option>
+              <nz-option nzValue="Q" nzLabel="Q"></nz-option>
+              <nz-option nzValue="H" nzLabel="H"></nz-option>
+            </nz-select>
+          </se>
+          <se label="Mime">
+            <nz-select [(ngModel)]="mime" [ngModelOptions]="{ standalone: true }">
+              <nz-option nzValue="image/png" nzLabel="image/png"></nz-option>
+              <nz-option nzValue="image/jpeg" nzLabel="image/jpeg"></nz-option>
+              <nz-option nzValue="image/gif" nzLabel="image/gif"></nz-option>
+            </nz-select>
+          </se>
+          <se label="内边距">
+            <nz-input-number [(ngModel)]="padding" [ngModelOptions]="{ standalone: true }" [nzMin]="0" [nzMax]="100"></nz-input-number> px
+          </se>
+          <se label="大小">
+            <nz-input-number
+              [(ngModel)]="size"
+              [ngModelOptions]="{ standalone: true }"
+              [nzMin]="100"
+              [nzMax]="1000"
+              [nzStep]="padding"
+            ></nz-input-number>
+            px
+          </se>
+        </se-container>
+      </div>
+    </div>
+  `,
+})
+export class ComponentsQrDesignComponent {
+  value = 'https://ng-alain.com/';
+  background = '#ffffff';
+  backgroundAlpha = 1.0;
+  foreground = '#000000';
+  foregroundAlpha = 1.0;
+  level = 'L';
+  mime = 'image/png';
+  padding = 10;
+  size = 220;
+
+  change(dataURL: string): void {
+    console.log(dataURL);
+  }
+}

API

qr

成员说明类型默认值全局配置
[value]string | () => string-
[background]背景stringwhite
[backgroundAlpha]背景透明级别,范围:0-1 之间number1
[foreground]前景stringwhite
[foregroundAlpha]前景透明级别,范围:0-1 之间number1
[level]误差校正级别'L','M','Q','H''L'
[mime]二维码输出图片MIME类型stringimage/png
[padding]内边距(单位:px)number,null10
[size]大小(单位:px)number220
[delay]延迟渲染,单位:毫秒number0
(change)变更时回调,返回二维码dataURL值EventEmitter<string>-

常见问题

参考 #100 的写法。

为什么没有居中

原因请参考 #111,解决的办法设置 paddingnull,例如:

<qr [value]="value" [padding]="null"></qr>
\ No newline at end of file diff --git a/components/quick-menu/en/index.html b/components/quick-menu/en/index.html new file mode 100644 index 000000000..3fd19c3ae --- /dev/null +++ b/components/quick-menu/en/index.html @@ -0,0 +1,20 @@ +quick-menu - NG-ALAIN

快速菜单
IMPORT MODULE

快速菜单,用于右侧隐式辅助列表。

代码演示

基础样例

点击右侧问号切换状态菜单。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-quick-menu-simple',
+  template: `
+    <button nz-button type="button" (click)="expand = !expand">{{ expand ? '收缩' : '展开' }}</button>
+    <quick-menu [(expand)]="expand">
+      <nz-list [nzBordered]="false" [nzSplit]="false">
+        <nz-list-item><a href="#">Link1</a></nz-list-item>
+        <nz-list-item><a href="#">Link2</a></nz-list-item>
+        <nz-list-item><a href="#">Link3</a></nz-list-item>
+        <nz-list-item><a href="#">Link4</a></nz-list-item>
+        <nz-list-item><a href="#">Link5</a></nz-list-item>
+      </nz-list>
+    </quick-menu>
+  `,
+})
+export class ComponentsQuickMenuSimpleComponent {
+  expand = false;
+}

API

quick-menu

成员说明类型默认值
[icon]图标string,TemplateRef<void>question-circle
[top]距离顶部number120
[width]打开后宽度number200
[bgColor]背景string-
[borderColor]边框颜色string-
[expand]当前展开状态,可双向绑定boolean-
(expandChange)当前展开状态改变回调函数EventEmitter<boolean>-
\ No newline at end of file diff --git a/components/quick-menu/zh/index.html b/components/quick-menu/zh/index.html new file mode 100644 index 000000000..111d78ff2 --- /dev/null +++ b/components/quick-menu/zh/index.html @@ -0,0 +1,20 @@ +quick-menu - NG-ALAIN

快速菜单
IMPORT MODULE

快速菜单,用于右侧隐式辅助列表。

代码演示

基础样例

点击右侧问号切换状态菜单。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-quick-menu-simple',
+  template: `
+    <button nz-button type="button" (click)="expand = !expand">{{ expand ? '收缩' : '展开' }}</button>
+    <quick-menu [(expand)]="expand">
+      <nz-list [nzBordered]="false" [nzSplit]="false">
+        <nz-list-item><a href="#">Link1</a></nz-list-item>
+        <nz-list-item><a href="#">Link2</a></nz-list-item>
+        <nz-list-item><a href="#">Link3</a></nz-list-item>
+        <nz-list-item><a href="#">Link4</a></nz-list-item>
+        <nz-list-item><a href="#">Link5</a></nz-list-item>
+      </nz-list>
+    </quick-menu>
+  `,
+})
+export class ComponentsQuickMenuSimpleComponent {
+  expand = false;
+}

API

quick-menu

成员说明类型默认值
[icon]图标string,TemplateRef<void>question-circle
[top]距离顶部number120
[width]打开后宽度number200
[bgColor]背景string-
[borderColor]边框颜色string-
[expand]当前展开状态,可双向绑定boolean-
(expandChange)当前展开状态改变回调函数EventEmitter<boolean>-
\ No newline at end of file diff --git a/components/result/en/index.html b/components/result/en/index.html new file mode 100644 index 000000000..ad5bd0b51 --- /dev/null +++ b/components/result/en/index.html @@ -0,0 +1,94 @@ +result - NG-ALAIN

处理结果
IMPORT MODULE

结果页用于对用户进行的一系列任务处理结果进行反馈。

代码演示

提交成功
提交结果页用于反馈一系列操作任务的处理结果,如果仅是简单操作,使用 Message 全局提示反馈即可。本文字区域可以展示简单的补充说明,如果有类似展示x“单据”的需求,下面这个灰色区域可以呈现比较复杂的内容。
项目 ID: 23421
负责人: 曲丽丽
生效时间: 2016-12-12 ~ 2017-12-12
创建项目
曲丽丽
2016-12-12 12:32
部门初审
周毛毛
财务复核
完成
Classic

典型结果页面。

expand codeexpand code
import { Component } from '@angular/core';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-result-classic',
+  template: `
+    <result
+      type="success"
+      [title]="'提交成功'"
+      description="提交结果页用于反馈一系列操作任务的处理结果,如果仅是简单操作,使用 Message 全局提示反馈即可。本文字区域可以展示简单的补充说明,如果有类似展示x“单据”的需求,下面这个灰色区域可以呈现比较复杂的内容。"
+      [extra]="resultExtra"
+    >
+      <ng-template #resultExtra>
+        <div nz-row [nzGutter]="16" class="mb-md">
+          <div nz-col [nzXs]="24" [nzSm]="12" [nzMd]="12" [nzLg]="12" [nzXl]="6">
+            <span class="text-grey-darker">项目 ID:</span>
+            23421
+          </div>
+          <div nz-col [nzXs]="24" [nzSm]="12" [nzMd]="12" [nzLg]="12" [nzXl]="6">
+            <span class="text-grey-darker">负责人:</span>
+            曲丽丽
+          </div>
+          <div nz-col [nzXs]="24" [nzSm]="24" [nzMd]="24" [nzLg]="24" [nzXl]="12">
+            <span class="text-grey-darker">生效时间:</span>
+            2016-12-12 ~ 2017-12-12
+          </div>
+        </div>
+        <nz-steps [nzCurrent]="1" nzProgressDot>
+          <nz-step [nzTitle]="'创建项目'" [nzDescription]="createDesc">
+            <ng-template #createDesc>
+              <div style="font-size: 14px; position: relative; left: 38px; text-align: left;">
+                <div style="margin-top: 8px; margin-bottom: 4px;">曲丽丽<i nz-icon nzType="dingding" class="ml-sm"></i></div>
+                <div style="margin-top: 8px; margin-bottom: 4px;">2016-12-12 12:32</div>
+              </div>
+            </ng-template>
+          </nz-step>
+          <nz-step [nzTitle]="'部门初审'" [nzDescription]="checkedDesc">
+            <ng-template #checkedDesc>
+              <div style="font-size: 14px; position: relative; left: 38px; text-align: left;">
+                <div style="margin-top: 8px; margin-bottom: 4px;">
+                  周毛毛<i nz-icon nzType="dingding" class="ml-sm" style="color: #00a0e9;"></i>
+                </div>
+                <div style="margin-top: 8px; margin-bottom: 4px;">
+                  <a (click)="msg.success('click')">催一下</a>
+                </div>
+              </div>
+            </ng-template>
+          </nz-step>
+          <nz-step [nzTitle]="'财务复核'"></nz-step>
+          <nz-step [nzTitle]="'完成'"></nz-step>
+        </nz-steps>
+      </ng-template>
+      <button nz-button [nzType]="'primary'">返回列表</button>
+      <button nz-button>查看项目</button>
+      <button nz-button>打 印</button>
+    </result>
+  `,
+})
+export class ComponentsResultClassicComponent {
+  constructor(public msg: NzMessageService) {}
+}
提交失败
请核对并修改以下信息后,再重新提交。
您提交的内容有如下错误:
您的账户已被冻结 立即解冻
您的账户还不具备申请资格 立即升级
Failed

提交失败。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-result-fail',
+  template: `
+    <result type="error" [title]="'提交失败'" description="请核对并修改以下信息后,再重新提交。" [extra]="resultExtra">
+      <ng-template #resultExtra>
+        <div class="mb-md text-lg">您提交的内容有如下错误:</div>
+        <div class="mb-md">
+          <i nz-icon nzType="close-circle" class="text-error pr-sm"></i>您的账户已被冻结
+          <a class="ml-md">立即解冻<i nz-icon nzType="right" class="pl-sm"></i></a>
+        </div>
+        <div>
+          <i nz-icon nzType="close-circle" class="text-error pr-sm"></i>您的账户还不具备申请资格
+          <a class="ml-md">立即升级<i nz-icon nzType="right" class="pl-sm"></i></a>
+        </div>
+      </ng-template>
+      <button nz-button [nzType]="'primary'">返回修改</button>
+    </result>
+  `,
+})
+export class ComponentsResultFailComponent {}
标题
结果描述
其他补充信息,自带灰底效果
操作建议,一般放置按钮组
Structure

结构包含 处理结果补充信息 以及 操作建议 三个部分,其中 处理结果提示图标标题结果描述 组成。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-result-structure',
+  template: `
+    <result type="success" [title]="title" [description]="description" extra="其他补充信息,自带灰底效果">
+      <ng-template #title><div style="background:#7dbcea; color: #fff;">标题</div></ng-template>
+      <ng-template #description><div style="background:rgba(16, 142, 233, 1); color: #fff;">结果描述</div></ng-template>
+      <div style="background: #3ba0e9; color:#fff">操作建议,一般放置按钮组</div>
+    </result>
+  `,
+})
+export class ComponentsResultStructureComponent {}

API

result

成员说明类型默认值
[type]类型,不同类型自带对应的图标string-
[title]标题string,TemplateRef<void>-
[description]结果描述string,TemplateRef<void>-
[extra]补充信息,有默认的灰色背景string,TemplateRef<void>-
ng-content操作建议,推荐放置跳转链接,按钮组等ng-content-
\ No newline at end of file diff --git a/components/result/zh/index.html b/components/result/zh/index.html new file mode 100644 index 000000000..d0d3b15cc --- /dev/null +++ b/components/result/zh/index.html @@ -0,0 +1,94 @@ +result - NG-ALAIN

处理结果
IMPORT MODULE

结果页用于对用户进行的一系列任务处理结果进行反馈。

代码演示

提交成功
提交结果页用于反馈一系列操作任务的处理结果,如果仅是简单操作,使用 Message 全局提示反馈即可。本文字区域可以展示简单的补充说明,如果有类似展示x“单据”的需求,下面这个灰色区域可以呈现比较复杂的内容。
项目 ID: 23421
负责人: 曲丽丽
生效时间: 2016-12-12 ~ 2017-12-12
创建项目
曲丽丽
2016-12-12 12:32
部门初审
周毛毛
财务复核
完成
Classic

典型结果页面。

expand codeexpand code
import { Component } from '@angular/core';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-result-classic',
+  template: `
+    <result
+      type="success"
+      [title]="'提交成功'"
+      description="提交结果页用于反馈一系列操作任务的处理结果,如果仅是简单操作,使用 Message 全局提示反馈即可。本文字区域可以展示简单的补充说明,如果有类似展示x“单据”的需求,下面这个灰色区域可以呈现比较复杂的内容。"
+      [extra]="resultExtra"
+    >
+      <ng-template #resultExtra>
+        <div nz-row [nzGutter]="16" class="mb-md">
+          <div nz-col [nzXs]="24" [nzSm]="12" [nzMd]="12" [nzLg]="12" [nzXl]="6">
+            <span class="text-grey-darker">项目 ID:</span>
+            23421
+          </div>
+          <div nz-col [nzXs]="24" [nzSm]="12" [nzMd]="12" [nzLg]="12" [nzXl]="6">
+            <span class="text-grey-darker">负责人:</span>
+            曲丽丽
+          </div>
+          <div nz-col [nzXs]="24" [nzSm]="24" [nzMd]="24" [nzLg]="24" [nzXl]="12">
+            <span class="text-grey-darker">生效时间:</span>
+            2016-12-12 ~ 2017-12-12
+          </div>
+        </div>
+        <nz-steps [nzCurrent]="1" nzProgressDot>
+          <nz-step [nzTitle]="'创建项目'" [nzDescription]="createDesc">
+            <ng-template #createDesc>
+              <div style="font-size: 14px; position: relative; left: 38px; text-align: left;">
+                <div style="margin-top: 8px; margin-bottom: 4px;">曲丽丽<i nz-icon nzType="dingding" class="ml-sm"></i></div>
+                <div style="margin-top: 8px; margin-bottom: 4px;">2016-12-12 12:32</div>
+              </div>
+            </ng-template>
+          </nz-step>
+          <nz-step [nzTitle]="'部门初审'" [nzDescription]="checkedDesc">
+            <ng-template #checkedDesc>
+              <div style="font-size: 14px; position: relative; left: 38px; text-align: left;">
+                <div style="margin-top: 8px; margin-bottom: 4px;">
+                  周毛毛<i nz-icon nzType="dingding" class="ml-sm" style="color: #00a0e9;"></i>
+                </div>
+                <div style="margin-top: 8px; margin-bottom: 4px;">
+                  <a (click)="msg.success('click')">催一下</a>
+                </div>
+              </div>
+            </ng-template>
+          </nz-step>
+          <nz-step [nzTitle]="'财务复核'"></nz-step>
+          <nz-step [nzTitle]="'完成'"></nz-step>
+        </nz-steps>
+      </ng-template>
+      <button nz-button [nzType]="'primary'">返回列表</button>
+      <button nz-button>查看项目</button>
+      <button nz-button>打 印</button>
+    </result>
+  `,
+})
+export class ComponentsResultClassicComponent {
+  constructor(public msg: NzMessageService) {}
+}
提交失败
请核对并修改以下信息后,再重新提交。
您提交的内容有如下错误:
您的账户已被冻结 立即解冻
您的账户还不具备申请资格 立即升级
Failed

提交失败。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-result-fail',
+  template: `
+    <result type="error" [title]="'提交失败'" description="请核对并修改以下信息后,再重新提交。" [extra]="resultExtra">
+      <ng-template #resultExtra>
+        <div class="mb-md text-lg">您提交的内容有如下错误:</div>
+        <div class="mb-md">
+          <i nz-icon nzType="close-circle" class="text-error pr-sm"></i>您的账户已被冻结
+          <a class="ml-md">立即解冻<i nz-icon nzType="right" class="pl-sm"></i></a>
+        </div>
+        <div>
+          <i nz-icon nzType="close-circle" class="text-error pr-sm"></i>您的账户还不具备申请资格
+          <a class="ml-md">立即升级<i nz-icon nzType="right" class="pl-sm"></i></a>
+        </div>
+      </ng-template>
+      <button nz-button [nzType]="'primary'">返回修改</button>
+    </result>
+  `,
+})
+export class ComponentsResultFailComponent {}
标题
结果描述
其他补充信息,自带灰底效果
操作建议,一般放置按钮组
Structure

结构包含 处理结果补充信息 以及 操作建议 三个部分,其中 处理结果提示图标标题结果描述 组成。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-result-structure',
+  template: `
+    <result type="success" [title]="title" [description]="description" extra="其他补充信息,自带灰底效果">
+      <ng-template #title><div style="background:#7dbcea; color: #fff;">标题</div></ng-template>
+      <ng-template #description><div style="background:rgba(16, 142, 233, 1); color: #fff;">结果描述</div></ng-template>
+      <div style="background: #3ba0e9; color:#fff">操作建议,一般放置按钮组</div>
+    </result>
+  `,
+})
+export class ComponentsResultStructureComponent {}

API

result

成员说明类型默认值
[type]类型,不同类型自带对应的图标string-
[title]标题string,TemplateRef<void>-
[description]结果描述string,TemplateRef<void>-
[extra]补充信息,有默认的灰色背景string,TemplateRef<void>-
ng-content操作建议,推荐放置跳转链接,按钮组等ng-content-
\ No newline at end of file diff --git a/components/reuse-tab/en/index.html b/components/reuse-tab/en/index.html new file mode 100644 index 000000000..717f5d0d6 --- /dev/null +++ b/components/reuse-tab/en/index.html @@ -0,0 +1,44 @@ +reuse-tab - NG-ALAIN

路由复用标签
IMPORT MODULE

复用标签在中台系统非常常见,本质是解决不同路由页切换时组件数据不丢失问题。

最新打开的永远是当前页,而路由复用是指当我们离开当前页时若符合复用条件(即:匹配模式)则保存当前路由所有组件状态(包括子组件),待下一次进入相同路由(即:匹配模式)时再从中缓存中获取到。

如何使用

默认 ReuseTabModule 并不会注册 RouteReuseStrategy,这是因为若默认在模块内注册会导致所有引入 @delon/abc 模块都会强制使用路由复用(不管是否模板是否包括 <reuse-tab>)。因此:

注册RouteReuseStrategy

ng-alain 使用方式参考:global-config.module.ts

// global-config.module.ts
+import { RouteReuseStrategy } from '@angular/router';
+import { ReuseTabService, ReuseTabStrategy } from '@delon/abc/reuse-tab';
+alainProvides.push({
+  provide: RouteReuseStrategy,
+  useClass: ReuseTabStrategy,
+  deps: [ReuseTabService],
+} as any);

添加组件

位置 src/app/layout/basic/basic.component.ts

<reuse-tab #reuseTab></reuse-tab>
+<router-outlet (activate)="reuseTab.activate($event)" (attach)="reuseTab.activate($event)"></router-outlet>

注意:若不指定 (activate) 事件,无法刷新未缓存过的当前标签页。

位置 src/app/layout/layout.module.ts

import { ReuseTabModule } from '@delon/abc/reuse-tab'; // 新增 import
+
+@NgModule({
+  imports: [
+  // ...
+  ReuseTabModule, // 导入模块
+  ],
+  // ...
+})
+export class LayoutModule {}

匹配模式

在项目的任何位置(建议:startup.service.ts)注入 ReuseTabService 类,并设置 mode 属性,或通过 <reuse-tab [mode]="0"> 重新设置值,包括:

0、Menu(推荐,默认值)

按菜单 (Menu) 配置。

可复用:

{ text:'Dashboard' }
+{ text:'Dashboard', reuse: true }

不可复用:

{ text:'Dashboard', reuse: false }

1、MenuForce

按菜单 (Menu) 强制配置。

可复用:

{ text:'Dashboard', reuse: true }

不可复用:

{ text:'Dashboard' }
+{ text:'Dashboard', reuse: false }

2、URL

对所有路由有效,可以配合 excludes 过滤无须复用路由。

标签文本

根据以下顺序获取标签文本:

  1. 使用 ReuseTabService.title = 'new title' 在组件内覆盖文本

  2. 路由配置中 data 属性中包含 reuseTitle > title

  3. 菜单数据中 text 属性

ReuseTabService 代码示例:

export class DemoReuseTabEditComponent implements OnInit {
+  id: any;
+
+  constructor(private route: ActivatedRoute, private reuseTabService: ReuseTabService) {}
+
+  ngOnInit(): void {
+    this.route.params.subscribe(params => {
+      this.id = params.id;
+      this.reuseTabService.title = `编辑 ${this.id}`;
+    });
+  }
+}

生命周期

路由复用不会触发现Angular组件生命周期钩子(例如:ngOnInit 等),但是往往需要在复用过程中刷新数据,因此提供了两种新生命周期钩子用于临时解决这类问题。

OnReuseInit 接口

  • _onReuseInit(type?: ReuseHookOnReuseInitType): void;

当目前路由在复用过程中时触发,type 值分别为:

  • init 当路由复用时

  • refresh 当触发刷新动作时

OnReuseDestroy 接口

  • _onReuseDestroy(): void;

当目前路由允许复用且进入新路由时触发。

_ 开头希望未来 Angular 会有相应的钩子用于快速替换,一个简单的示例:

import { OnReuseDestroy, OnReuseInit, ReuseHookOnReuseInitType } from '@delon/abc/reuse-tab';
+
+@Component()
+export class DemoComponent implements OnReuseInit, OnReuseDestroy {
+  _onReuseInit(type: ReuseHookOnReuseInitType) {
+    console.log('_onReuseInit', type);
+  }
+  _onReuseDestroy() {
+    console.log('_onReuseDestroy');
+  }
+}

滚动条位置

开启 keepingScroll 会在复用后恢复之前的滚动条位置,有几项注意细节:

务必使用路由选项 scrollPositionRestoration 来管理滚动条位置

  • true:表示保持之前滚动条位置

  • false:表示不对滚动条任何操作

  • 若全站使用路由复用时,则设置 scrollPositionRestoration: 'disabled',避免延迟滚动

  • 若部分页面路由复用时,则受限于 scrollPositionRestoration 优先值 ,会有 1ms 延迟恢复滚动条位置

API

ReuseTabService

属性

成员说明类型默认值
[max]允许最多复用多少个页面,值发生变更时会强制关闭且忽略可关闭条件number10
[mode]设置匹配模式ReuseTabMatchMode0
[debug]是否Debug模式booleanfalse
[keepingScroll]保持滚动条位置booleanfalse
[keepingScrollContainer]保持滚动条容器Elementwindow
[excludes]排除规则,限 mode=URLRegExp[]-
[items]获取已缓存的路由ReuseTabCached[]-
[count]获取当前缓存的路由总数number-
[change]订阅缓存变更通知Observable<ReuseTabNotify>-
[title]自定义当前标题string-
[closable]自定义当前 closable 状态boolean-

方法

方法名说明返回类型
index(url)获取指定路径缓存所在位置,-1 表示无缓存number
exists(url)获取指定路径缓存是否存在boolean
get(url)获取指定路径缓存ReuseTabCached
getTitle(url, route?: ActivatedRouteSnapshot)获取标题string
clearTitleCached()清空自定义标题数据void
getClosable(url, route?: ActivatedRouteSnapshot)获取 closable 状态string
clearClosableCached()清空 closable 缓存void
remove(url)根据URL移除标签,同时触 change remove事件void
move(url, position)移动缓存数据,同时触 change move事件void
clear()清除所有缓存,同时触 change clear事件void
refresh()无任何动作,但会触 change refresh事件void
replace(url)强制关闭当前路由(包含不可关闭状态),并重新导航至 newUrl 路由void

reuse-tab

成员说明类型默认值
[i18n]右击菜单国际化,支持HTMLReuseContextI18n-
[mode]设置匹配模式ReuseTabMatchMode0
[debug]是否Debug模式booleanfalse
[max]允许最多复用多少个页面number10
[keepingScroll]保持滚动条位置booleanfalse
[keepingScrollContainer]保持滚动条容器string | Elementwindow
[excludes]排除规则,限 mode=URLRegExp[]-
[allowClose]允许关闭booleantrue
[customContextMenu]自定义右键菜单ReuseCustomContextMenu[]-
[tabBarExtraContent]tab bar 上额外的元素TemplateRef<void>-
[tabBarStyle]tab bar 的样式对象object-
[tabBarGutter]tabs 之间的间隙number-
[tabType]tabs 页签的基本样式line, cardline
[tabMaxWidth]tabs 页签每一项最大宽度,单位:pxnumber-
[routeParamMatchMode]包含路由参数时匹配模式,例如:/view/:id
- strict 严格模式 /view/1/view/2 不同页
- loose 宽松模式 /view/1/view/2 相同页且只呈现一个标签
strict,loosestrict
[disabled]是否禁用booleanfalse
[titleRender]自定义标题渲染TemplateRef<{ $implicit: ReuseItem }>-
[storageState]是否存储状态,保持最后一次浏览器的状态booleanfalse
[canClose]关闭时二次校验(options: { item: ReuseItem; includeNonCloseable: boolean }) => Observable<boolean>-
(close)关闭回调EventEmitter-
(change)切换时回调,接收的参数至少包含:activelist 两个参数EventEmitter-

右击菜单

当按下键盘 ctrl 时会强制移除不可关闭项。

ReuseTabCached

成员说明类型默认值
[title]标题string-
[url]URL地址string-
[closable]是否允许关闭boolean-

ReuseTabNotify

成员说明类型默认值
[active]事件类型title,close,closeRight,clear,move,closable,refresh,add-

ReuseContextI18n

成员说明类型默认值
[close]关闭string-
[closeOther]关闭其它string-
[closeRight]关闭右边string-
[clear]清空string-

ReuseCustomContextMenu

成员说明类型默认值
[id]唯一标识符string-
[title]标题string-
[fn]处理方法(item: ReuseItem, menu: ReuseCustomContextMenu) => void-
[disabled]是否禁用(item: ReuseItem) => boolean-

路由data

透过路由 data 附加数据,可以对部分页面提供覆盖全局配置,例如:

// 指定不复路由
+{ path: 'p1', component: DemoComponent, data: { reuse: false } }
+// 指定标签标题
+{ path: 'p1', component: DemoComponent, data: { title: 'New Title' } }
成员说明类型默认值
[reuse]是否复用boolean-
[title]标题string-
[titleI18n]I18n标题Keystring-
[reuseClosable]是否允许关闭boolean-
[keepingScroll]是否保持滚动条boolean-

注: 以上数据也可在 Menu 数据中体现。

常见问题

如何Debug?

路由复用会保留组件状态,这可能会带来另一个弊端;复用过程中不会触发Angular生命周期勾子,大部分情况下都能正常运行,有几个常见问题:

  • OnDestroy 可能会处理一些组件外部(例如:body)的样式等,可以参考生命周期解决。

  • 开启 debug 模式后会在 console 很多信息这有助于分析路由复用的过程。

Max参数

限定最大复用数据可以减少内存的增长,有几个问题需要注意:

  • max 参数值发生变更时会强制关闭且忽略可关闭条件

  • 超出 max 值时,会关掉最先打开 可关闭 的页面,若所有页面都为 不可关闭 则忽略关闭

不支持 QueryString 查询参数

复用采用URL来区分是否同一个页面,而 QueryString 查询参数很容易产生重复性误用,因此不支持查询参数,且在复用过程中会强制忽略掉 QueryString 部分。

多应用缓存处理

允许覆盖 REUSE_TAB_CACHED_MANAGER 改变缓存存储,例如在使用微前端(类似ngx-planet)可以重写缓存数据到 window 下来实现数据共享。

\ No newline at end of file diff --git a/components/reuse-tab/zh/index.html b/components/reuse-tab/zh/index.html new file mode 100644 index 000000000..17ff16382 --- /dev/null +++ b/components/reuse-tab/zh/index.html @@ -0,0 +1,44 @@ +reuse-tab - NG-ALAIN

路由复用标签
IMPORT MODULE

复用标签在中台系统非常常见,本质是解决不同路由页切换时组件数据不丢失问题。

最新打开的永远是当前页,而路由复用是指当我们离开当前页时若符合复用条件(即:匹配模式)则保存当前路由所有组件状态(包括子组件),待下一次进入相同路由(即:匹配模式)时再从中缓存中获取到。

如何使用

默认 ReuseTabModule 并不会注册 RouteReuseStrategy,这是因为若默认在模块内注册会导致所有引入 @delon/abc 模块都会强制使用路由复用(不管是否模板是否包括 <reuse-tab>)。因此:

注册RouteReuseStrategy

ng-alain 使用方式参考:global-config.module.ts

// global-config.module.ts
+import { RouteReuseStrategy } from '@angular/router';
+import { ReuseTabService, ReuseTabStrategy } from '@delon/abc/reuse-tab';
+alainProvides.push({
+  provide: RouteReuseStrategy,
+  useClass: ReuseTabStrategy,
+  deps: [ReuseTabService],
+} as any);

添加组件

位置 src/app/layout/basic/basic.component.ts

<reuse-tab #reuseTab></reuse-tab>
+<router-outlet (activate)="reuseTab.activate($event)" (attach)="reuseTab.activate($event)"></router-outlet>

注意:若不指定 (activate) 事件,无法刷新未缓存过的当前标签页。

位置 src/app/layout/layout.module.ts

import { ReuseTabModule } from '@delon/abc/reuse-tab'; // 新增 import
+
+@NgModule({
+  imports: [
+  // ...
+  ReuseTabModule, // 导入模块
+  ],
+  // ...
+})
+export class LayoutModule {}

匹配模式

在项目的任何位置(建议:startup.service.ts)注入 ReuseTabService 类,并设置 mode 属性,或通过 <reuse-tab [mode]="0"> 重新设置值,包括:

0、Menu(推荐,默认值)

按菜单 (Menu) 配置。

可复用:

{ text:'Dashboard' }
+{ text:'Dashboard', reuse: true }

不可复用:

{ text:'Dashboard', reuse: false }

1、MenuForce

按菜单 (Menu) 强制配置。

可复用:

{ text:'Dashboard', reuse: true }

不可复用:

{ text:'Dashboard' }
+{ text:'Dashboard', reuse: false }

2、URL

对所有路由有效,可以配合 excludes 过滤无须复用路由。

标签文本

根据以下顺序获取标签文本:

  1. 使用 ReuseTabService.title = 'new title' 在组件内覆盖文本

  2. 路由配置中 data 属性中包含 reuseTitle > title

  3. 菜单数据中 text 属性

ReuseTabService 代码示例:

export class DemoReuseTabEditComponent implements OnInit {
+  id: any;
+
+  constructor(private route: ActivatedRoute, private reuseTabService: ReuseTabService) {}
+
+  ngOnInit(): void {
+    this.route.params.subscribe(params => {
+      this.id = params.id;
+      this.reuseTabService.title = `编辑 ${this.id}`;
+    });
+  }
+}

生命周期

路由复用不会触发现Angular组件生命周期钩子(例如:ngOnInit 等),但是往往需要在复用过程中刷新数据,因此提供了两种新生命周期钩子用于临时解决这类问题。

OnReuseInit 接口

  • _onReuseInit(type?: ReuseHookOnReuseInitType): void;

当目前路由在复用过程中时触发,type 值分别为:

  • init 当路由复用时

  • refresh 当触发刷新动作时

OnReuseDestroy 接口

  • _onReuseDestroy(): void;

当目前路由允许复用且进入新路由时触发。

_ 开头希望未来 Angular 会有相应的钩子用于快速替换,一个简单的示例:

import { OnReuseDestroy, OnReuseInit, ReuseHookOnReuseInitType } from '@delon/abc/reuse-tab';
+
+@Component()
+export class DemoComponent implements OnReuseInit, OnReuseDestroy {
+  _onReuseInit(type: ReuseHookOnReuseInitType) {
+    console.log('_onReuseInit', type);
+  }
+  _onReuseDestroy() {
+    console.log('_onReuseDestroy');
+  }
+}

滚动条位置

开启 keepingScroll 会在复用后恢复之前的滚动条位置,有几项注意细节:

务必使用路由选项 scrollPositionRestoration 来管理滚动条位置

  • true:表示保持之前滚动条位置

  • false:表示不对滚动条任何操作

  • 若全站使用路由复用时,则设置 scrollPositionRestoration: 'disabled',避免延迟滚动

  • 若部分页面路由复用时,则受限于 scrollPositionRestoration 优先值 ,会有 1ms 延迟恢复滚动条位置

API

ReuseTabService

属性

成员说明类型默认值
[max]允许最多复用多少个页面,值发生变更时会强制关闭且忽略可关闭条件number10
[mode]设置匹配模式ReuseTabMatchMode0
[debug]是否Debug模式booleanfalse
[keepingScroll]保持滚动条位置booleanfalse
[keepingScrollContainer]保持滚动条容器Elementwindow
[excludes]排除规则,限 mode=URLRegExp[]-
[items]获取已缓存的路由ReuseTabCached[]-
[count]获取当前缓存的路由总数number-
[change]订阅缓存变更通知Observable<ReuseTabNotify>-
[title]自定义当前标题string-
[closable]自定义当前 closable 状态boolean-

方法

方法名说明返回类型
index(url)获取指定路径缓存所在位置,-1 表示无缓存number
exists(url)获取指定路径缓存是否存在boolean
get(url)获取指定路径缓存ReuseTabCached
getTitle(url, route?: ActivatedRouteSnapshot)获取标题string
clearTitleCached()清空自定义标题数据void
getClosable(url, route?: ActivatedRouteSnapshot)获取 closable 状态string
clearClosableCached()清空 closable 缓存void
remove(url)根据URL移除标签,同时触 change remove事件void
move(url, position)移动缓存数据,同时触 change move事件void
clear()清除所有缓存,同时触 change clear事件void
refresh()无任何动作,但会触 change refresh事件void
replace(url)强制关闭当前路由(包含不可关闭状态),并重新导航至 newUrl 路由void

reuse-tab

成员说明类型默认值
[i18n]右击菜单国际化,支持HTMLReuseContextI18n-
[mode]设置匹配模式ReuseTabMatchMode0
[debug]是否Debug模式booleanfalse
[max]允许最多复用多少个页面number10
[keepingScroll]保持滚动条位置booleanfalse
[keepingScrollContainer]保持滚动条容器string | Elementwindow
[excludes]排除规则,限 mode=URLRegExp[]-
[allowClose]允许关闭booleantrue
[customContextMenu]自定义右键菜单ReuseCustomContextMenu[]-
[tabBarExtraContent]tab bar 上额外的元素TemplateRef<void>-
[tabBarStyle]tab bar 的样式对象object-
[tabBarGutter]tabs 之间的间隙number-
[tabType]tabs 页签的基本样式line, cardline
[tabMaxWidth]tabs 页签每一项最大宽度,单位:pxnumber-
[routeParamMatchMode]包含路由参数时匹配模式,例如:/view/:id
- strict 严格模式 /view/1/view/2 不同页
- loose 宽松模式 /view/1/view/2 相同页且只呈现一个标签
strict,loosestrict
[disabled]是否禁用booleanfalse
[titleRender]自定义标题渲染TemplateRef<{ $implicit: ReuseItem }>-
[storageState]是否存储状态,保持最后一次浏览器的状态booleanfalse
[canClose]关闭时二次校验(options: { item: ReuseItem; includeNonCloseable: boolean }) => Observable<boolean>-
(close)关闭回调EventEmitter-
(change)切换时回调,接收的参数至少包含:activelist 两个参数EventEmitter-

右击菜单

当按下键盘 ctrl 时会强制移除不可关闭项。

ReuseTabCached

成员说明类型默认值
[title]标题string-
[url]URL地址string-
[closable]是否允许关闭boolean-

ReuseTabNotify

成员说明类型默认值
[active]事件类型title,close,closeRight,clear,move,closable,refresh,add-

ReuseContextI18n

成员说明类型默认值
[close]关闭string-
[closeOther]关闭其它string-
[closeRight]关闭右边string-
[clear]清空string-

ReuseCustomContextMenu

成员说明类型默认值
[id]唯一标识符string-
[title]标题string-
[fn]处理方法(item: ReuseItem, menu: ReuseCustomContextMenu) => void-
[disabled]是否禁用(item: ReuseItem) => boolean-

路由data

透过路由 data 附加数据,可以对部分页面提供覆盖全局配置,例如:

// 指定不复路由
+{ path: 'p1', component: DemoComponent, data: { reuse: false } }
+// 指定标签标题
+{ path: 'p1', component: DemoComponent, data: { title: 'New Title' } }
成员说明类型默认值
[reuse]是否复用boolean-
[title]标题string-
[titleI18n]I18n标题Keystring-
[reuseClosable]是否允许关闭boolean-
[keepingScroll]是否保持滚动条boolean-

注: 以上数据也可在 Menu 数据中体现。

常见问题

如何Debug?

路由复用会保留组件状态,这可能会带来另一个弊端;复用过程中不会触发Angular生命周期勾子,大部分情况下都能正常运行,有几个常见问题:

  • OnDestroy 可能会处理一些组件外部(例如:body)的样式等,可以参考生命周期解决。

  • 开启 debug 模式后会在 console 很多信息这有助于分析路由复用的过程。

Max参数

限定最大复用数据可以减少内存的增长,有几个问题需要注意:

  • max 参数值发生变更时会强制关闭且忽略可关闭条件

  • 超出 max 值时,会关掉最先打开 可关闭 的页面,若所有页面都为 不可关闭 则忽略关闭

不支持 QueryString 查询参数

复用采用URL来区分是否同一个页面,而 QueryString 查询参数很容易产生重复性误用,因此不支持查询参数,且在复用过程中会强制忽略掉 QueryString 部分。

多应用缓存处理

允许覆盖 REUSE_TAB_CACHED_MANAGER 改变缓存存储,例如在使用微前端(类似ngx-planet)可以重写缓存数据到 window 下来实现数据共享。

\ No newline at end of file diff --git a/components/se/en/index.html b/components/se/en/index.html new file mode 100644 index 000000000..4cf8fb27e --- /dev/null +++ b/components/se/en/index.html @@ -0,0 +1,331 @@ +se - NG-ALAIN

编辑
IMPORT MODULE

简化表单HTML模板的高阶组件,并进一步优化了一些细节:

  • 更友好的表单校验状态

  • 自动化响应式布局

  • 自动维护表单 id

它由 se-container 容器(指令)和 se 组件来表示一个表单,一个简单HTML模板表单是这么写的:

<form nz-form #f="ngForm" se-container="2">
+  <se label="App Key">
+    <input type="text" nz-input [(ngModel)]="i.ak" name="ak" required>
+  </se>
+  <se label="App Secret">
+    <input type="text" nz-input [(ngModel)]="i.sk" name="sk" required maxlength="32">
+  </se>
+  <se>
+    <button nz-button nzType="primary" [disabled]="f.invalid">Save</button>
+  </se>
+</form>

同时,会自动处理所有 Angular 内置校验指令,例如:requiredmaxlengthminpattern 等,并以红色边框来表示无效值状态。

代码演示

基础

一行两列表单。

expand codeexpand code
import { Component } from '@angular/core';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-se-basic',
+  template: ` <form nz-form #f="ngForm" se-container gutter="32">
+    <se label="App Key" [error]="{ required: '请填写', pattern: '只能包含a-z, 0-9之间' }">
+      <input
+        type="text"
+        nz-input
+        [(ngModel)]="i.ak"
+        name="ak"
+        required
+        pattern="^[a-z0-9]*$"
+        placeholder="必填项,且只能包含a-z, 0-9之间"
+      />
+    </se>
+    <ng-template #appSecretRequired> 请填写,密钥<a (click)="msg.success('success')">生成</a>地址。 </ng-template>
+    <se label="App Secret" [error]="{ required: appSecretRequired, pattern: '只能包含0-9之间' }">
+      <input
+        type="text"
+        nz-input
+        [(ngModel)]="i.sk"
+        name="sk"
+        required
+        maxlength="32"
+        pattern="^[0-9]*$"
+        placeholder="必填项,且只能包含0-9之间"
+      />
+    </se>
+    <se>
+      <button nz-button nzType="primary" [disabled]="f.invalid">Save</button>
+    </se>
+  </form>`,
+})
+export class ComponentsSeBasicComponent {
+  i: { ak?: string; sk?: string } = {};
+
+  constructor(public msg: NzMessageService) {}
+}
响应式表单

支持响应式表单。

注意:

  • 响应式表单无法自动获取 Validators.required 来判断是否需要必填项标识符,因此需要手动标识 required 属性。

  • 当需要使用 patchValue 赋值时,因为 dirty 依然保持为 false 的因素,需要对所有表单元素设置 markAsDirty() 或者使用 ingoreDirty 属性强制忽略 dirty 的校验。

expand codeexpand code
import { Component } from '@angular/core';
+import { FormControl, FormGroup, Validators } from '@angular/forms';
+
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-se-reactive',
+  template: ` <form nz-form [formGroup]="validateForm" (ngSubmit)="submitForm()" se-container gutter="32" ingoreDirty>
+    <se
+      label="App Key"
+      required
+      [error]="{ required: 'Please input your username!', pattern: 'Incorrect format, muse be A' }"
+    >
+      <input formControlName="userName" nz-input placeholder="Username" />
+    </se>
+    <se label="App Secret" required error="Please input your Password!">
+      <input formControlName="password" nz-input type="password" placeholder="Password" />
+    </se>
+    <se>
+      <button nz-button nzType="primary" [disabled]="!validateForm.valid">Log in</button>
+      <button nz-button nzType="link" type="button" (click)="updateValue()">Update value via patchValue</button>
+    </se>
+  </form>`
+})
+export class ComponentsSeReactiveComponent {
+  validateForm = new FormGroup({
+    userName: new FormControl<string | null>(null, [Validators.required, Validators.pattern(/A/)]),
+    password: new FormControl(null, [Validators.required]),
+    remember: new FormControl(true)
+  });
+  constructor(private msg: NzMessageService) {}
+
+  submitForm(): void {
+    this.msg.success(JSON.stringify(this.validateForm.value));
+  }
+
+  updateValue(): void {
+    this.validateForm.patchValue({ userName: 'a' });
+  }
+}
紧凑型

强制忽略 errorextra 展示。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-se-compact',
+  template: ` <form nz-form #f="ngForm" se-container labelWidth="150" gutter="32" size="compact">
+    <se label="App Key" error="请填写" optional="(选填)" optionalHelp="通过控制台-查看KEY获取" extra="额外提示信息">
+      <input type="text" nz-input [(ngModel)]="i.ak" name="ak" required />
+    </se>
+    <se label="App Secret" error="请填写,最多32位">
+      <input type="text" nz-input [(ngModel)]="i.sk" name="sk" required maxlength="32" />
+    </se>
+    <se>
+      <button nz-button nzType="primary" [disabled]="f.invalid">Save</button>
+    </se>
+  </form>`,
+})
+export class ComponentsSeCompactComponent {
+  i: { ak?: string; sk?: string } = {};
+}
额外提示信息
水平排列

一行一列表单。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-se-horizontal',
+  template: ` <form nz-form #f="ngForm" se-container="1" labelWidth="150">
+    <se label="App Key" error="请填写" optional="(选填)" optionalHelp="通过控制台-查看KEY获取" extra="额外提示信息">
+      <input type="text" nz-input [(ngModel)]="i.ak" name="ak" required />
+    </se>
+    <se label="App Secret" error="请填写,最多32位">
+      <input type="text" nz-input [(ngModel)]="i.sk" name="sk" required maxlength="32" />
+    </se>
+    <se>
+      <button nz-button nzType="primary" [disabled]="f.invalid">Save</button>
+    </se>
+  </form>`,
+})
+export class ComponentsSeHorizontalComponent {
+  i: { ak?: string; sk?: string } = {};
+}
内联布局

nzLayout: inline 时强制使用紧凑型,一般用于搜索框。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-se-inline',
+  template: `
+  <form nz-form nzLayout="inline" #f="ngForm" se-container>
+    <se label="App Key" error="请填写" optional="(选填)" optionalHelp="通过控制台-查看KEY获取" extra="额外提示信息">
+      <input type="text" nz-input [(ngModel)]="i.ak" name="ak" required>
+    </se>
+    <se label="App Secret" error="请填写,最多32位">
+      <input type="text" nz-input [(ngModel)]="i.sk" name="sk" required maxlength="32">
+    </se>
+    <se>
+      <button nz-button nzType="primary" [disabled]="f.invalid">Save</button>
+    </se>
+  </form>`,
+})
+export class ComponentsSeInlineComponent {
+  i: { ak?: string; sk?: string } = {};
+}
额外提示信息
垂直布局

垂直布局表单。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-se-vertical',
+  template: ` <form nz-form nzLayout="vertical" #f="ngForm" se-container>
+    <se label="App Key" error="请填写" optional="(选填)" optionalHelp="通过控制台-查看KEY获取" extra="额外提示信息">
+      <input type="text" nz-input [(ngModel)]="i.ak" name="ak" required />
+    </se>
+    <se label="App Secret" error="请填写,最多32位">
+      <input type="text" nz-input [(ngModel)]="i.sk" name="sk" required maxlength="32" />
+    </se>
+    <se>
+      <button nz-button nzType="primary" [disabled]="f.invalid">Save</button>
+    </se>
+  </form>`,
+})
+export class ComponentsSeVerticalComponent {
+  i: { ak?: string; sk?: string } = {};
+}
头像
分隔线

构建一个左右结构的标准表单行。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-se-line',
+  template: ` <form nz-form #f="ngForm" se-container="1" size="compact" gutter="32">
+    <se label="所属类目" line>头像</se>
+    <se label="图片">
+      <nz-input-group nzSearch [nzAddOnAfter]="suffixButton">
+        <input type="text" nz-input placeholder="请贴入网络图片地址" />
+      </nz-input-group>
+      <ng-template #suffixButton>
+        <button nz-button nzType="primary" nzSearch>提取</button>
+      </ng-template>
+    </se>
+  </form>`,
+})
+export class ComponentsSeLineComponent {}

Operating

Reactive

批量重置错误消息

利用 errors 可以批量对所有 se 组件重置 error 值。

expand codeexpand code
import { Component } from '@angular/core';
+import { FormControl, FormGroup, Validators } from '@angular/forms';
+
+import { SEErrorRefresh } from '@delon/abc/se';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-se-reset-errors',
+  template: `
+    <h3>Operating</h3>
+    <div class="mb-md">
+      <button nz-button (click)="resetErrors()">Reset all errors</button>
+    </div>
+    <form nz-form #f="ngForm" se-container [errors]="ngModelErrors" gutter="32">
+      <se label="App Key" [error]="{ required: '请填写', pattern: '只能包含a-z, 0-9之间' }">
+        <input
+          type="text"
+          nz-input
+          [(ngModel)]="i.ak"
+          name="ak"
+          required
+          pattern="^[a-z0-9]*$"
+          placeholder="必填项,且只能包含a-z, 0-9之间"
+        />
+      </se>
+      <ng-template #appSecretRequired> 请填写,密钥<a (click)="msg.success('success')">生成</a>地址。 </ng-template>
+      <se label="App Secret" [error]="{ required: appSecretRequired, pattern: '只能包含0-9之间' }">
+        <input
+          type="text"
+          nz-input
+          [(ngModel)]="i.sk"
+          name="sk"
+          required
+          maxlength="32"
+          pattern="^[0-9]*$"
+          placeholder="必填项,且只能包含0-9之间"
+        />
+      </se>
+      <se>
+        <button nz-button nzType="primary" [disabled]="f.invalid">Save</button>
+      </se>
+    </form>
+    <h3>Reactive</h3>
+    <form nz-form [formGroup]="validateForm" se-container gutter="32" [errors]="reactiveErrors">
+      <se label="App Key" [error]="{ required: 'Please input your username!', pattern: 'Incorrect format, muse be A' }">
+        <input formControlName="userName" nz-input placeholder="Username" />
+      </se>
+      <se label="App Secret" error="Please input your Password!">
+        <input formControlName="password" nz-input type="password" placeholder="Password" />
+      </se>
+      <se>
+        <button nz-button nzType="primary" [disabled]="!validateForm.valid">Log in</button>
+      </se>
+    </form>
+  `
+})
+export class ComponentsSeResetErrorsComponent {
+  validateForm = new FormGroup({
+    userName: new FormControl<string | null>(null, [Validators.required, Validators.pattern(/A/)]),
+    password: new FormControl(null, [Validators.required]),
+    remember: new FormControl(true)
+  });
+
+  i: { ak?: string; sk?: string } = {};
+  ngModelErrors: SEErrorRefresh[] = [];
+  reactiveErrors: SEErrorRefresh[] = [];
+
+  constructor(public msg: NzMessageService) {}
+
+  resetErrors(): void {
+    this.ngModelErrors = [{ name: 'ak', error: 'Required field, and can only contain a-z, 0-9' }];
+    this.reactiveErrors = [
+      { name: 'userName', error: 'Required username' },
+      { name: 'password', error: 'Required password' }
+    ];
+  }
+}
Title 1
1000
3
+86
Title 2
id

暂无数据

不规则布局

利用 col 可以构建复杂不规则布局。

expand codeexpand code
import { Component } from '@angular/core';
+
+import { STColumn } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-se-complex',
+  template: `
+    <form nz-form #f="ngForm" se-container="3" size="compact" gutter="24">
+      <se-title>Title 1</se-title>
+      <se label="ID" col="1" [optionalHelp]="optionalHelpTpl">
+        1000
+        <ng-template #optionalHelpTpl> Via by ng-template </ng-template>
+      </se>
+      <se label="Name" required col="2" optionalHelp="The background color is #f50" optionalHelpColor="#f50">
+        <input type="text" nz-input [(ngModel)]="i.user_name" name="user_name" required placeholder="占两栏" />
+      </se>
+      <se label="Age" required>
+        <nz-select [(ngModel)]="i.user_age" name="user_age" nzAllowClear nzPlaceHolder="Choose">
+          <nz-option [nzValue]="1" nzLabel="1"></nz-option>
+          <nz-option [nzValue]="2" nzLabel="2"></nz-option>
+          <nz-option [nzValue]="3" nzLabel="3"></nz-option>
+          <nz-option [nzValue]="4" nzLabel="4"></nz-option>
+          <nz-option [nzValue]="5" nzLabel="5"></nz-option>
+        </nz-select>
+      </se>
+      <se label="Brithday" required>
+        <nz-date-picker [(ngModel)]="i.user_birthday" name="user_birthday" nzShowTime></nz-date-picker>
+      </se>
+      <se label="App Key" required>
+        <input type="text" nz-input [(ngModel)]="i.ak" name="ak" required />
+      </se>
+      <se label="App Secret" required>
+        <input type="text" nz-input [(ngModel)]="i.sk" name="sk" required maxlength="32" />
+      </se>
+      <nz-divider></nz-divider>
+      <se label="Phone Number" required>
+        <nz-input-group [nzAddOnBefore]="addOnBeforeTemplate">
+          <ng-template #addOnBeforeTemplate>
+            <nz-select [(ngModel)]="i.phoneNumberPrefix" name="phoneNumberPrefix" style="width: 70px;">
+              <nz-option nzLabel="+86" nzValue="+86"></nz-option>
+              <nz-option nzLabel="+87" nzValue="+87"></nz-option>
+            </nz-select>
+          </ng-template>
+          <input type="text" nz-input [(ngModel)]="i.phoneNumber" name="phoneNumber" required maxlength="32" />
+        </nz-input-group>
+      </se>
+      <se>
+        <label nz-checkbox [(ngModel)]="i.agree" name="agree">
+          <span>I have read the <a>agreement</a></span>
+        </label>
+      </se>
+      <se-title>Title 2</se-title>
+      <se label="Long Long Long Long Long Long Label" col="1">
+        <textarea [(ngModel)]="i.comment" name="comment" nz-input rows="2" placeholder="write any thing"></textarea>
+      </se>
+      <se hideLabel col="1">
+        <st [columns]="columns" size="small"></st>
+      </se>
+      <se col="1">
+        <button nz-button nzType="primary" [disabled]="f.invalid">Save</button>
+      </se>
+    </form>
+  `
+})
+export class ComponentsSeComplexComponent {
+  i = {
+    user_name: '',
+    user_age: 3,
+    user_birthday: '',
+    ak: '',
+    sk: '',
+    phoneNumberPrefix: '+86',
+    phoneNumber: '',
+    agree: true,
+    comment: ''
+  };
+  columns: STColumn[] = [{ title: 'id' }];
+}

API

se-container

成员说明类型默认值全局配置
[gutter]间距,当 nzLayout:horizontal 时有效number32
[se-container]指定表单元素最多分几列展示,最终一行几列由 col 配置结合响应式规则决定'1','2','3','4','5','6'-
[col]指定表单元素最多分几列展示,最终一行几列由 col 配置结合响应式规则决定'1','2','3','4','5','6'-
[labelWidth]表单元素默认标签文本宽度,单位:pxnumber150
[nzLayout]表单布局,当 inline 时强制大小为 compact'horizontal','vertical','inline''horizontal'
[size]大小 compact 紧凑型,强制忽略 errorextra 展示'default','compact''default'
[firstVisual]是否立即呈现错误视觉booleanfalse
[ingoreDirty]是否忽略 dirty 校验booleanfalse
[line]分隔线booleanfalse-
[title]标题string,TemplateRef<void>-
[errors]批量修改 se 错误消息描述SEErrorRefresh[]-
[noColon]默认是否不显示 label 后面的冒号booleanfalse-

se

成员说明类型默认值
[col]指定表单元素最多分几列展示,最终一行几列由 col 配置结合响应式规则决定(继承于 se-container'1','2','3','4','5','6'-
[label]标签文本string, TemplateRef<void>-
[labelWidth]标签文本宽度,单位:px(继承于 se-containernumber-
[hideLabel]是否隐藏当前 labelbooleanfalse
[optional]标签可选信息string, TemplateRef<void>-
[optionalHelp]标签可选帮助string, TemplateRef<void>-
[optionalHelpColor]标签可选帮助背景颜色string-
[error]错误描述string, TemplateRef<void>, { [key: string]: string, TemplateRef}-
[extra]额外提示信息string, TemplateRef<void>-
[required]是否必填项标识符,若不设置自动根据表单元素是否有 RequiredValidator 校验来设置值string-
[controlClass]控件区域样式名string-
[id]自定义组件 idstring-
[line]分隔线(继承于 se-containerboolean-
[noColon]是否不显示 label 后面的冒号booleanfalse-

se-title

用于展示标题,单独一行。

常见问题

什么时候自定义组件id

点击表单的 Label 会将光标定位至相应组件下,而 ng-edit 会自动根据 ngModel 状态合理的设定 id,绝大多数情况下你无须关心 id 的绑定状态,当然若你手动指定 id 值则优先级更高但同时你需要自己维护组件对应的 id 值。

\ No newline at end of file diff --git a/components/se/zh/index.html b/components/se/zh/index.html new file mode 100644 index 000000000..ca5fb6bba --- /dev/null +++ b/components/se/zh/index.html @@ -0,0 +1,331 @@ +se - NG-ALAIN

编辑
IMPORT MODULE

简化表单HTML模板的高阶组件,并进一步优化了一些细节:

  • 更友好的表单校验状态

  • 自动化响应式布局

  • 自动维护表单 id

它由 se-container 容器(指令)和 se 组件来表示一个表单,一个简单HTML模板表单是这么写的:

<form nz-form #f="ngForm" se-container="2">
+  <se label="App Key">
+    <input type="text" nz-input [(ngModel)]="i.ak" name="ak" required>
+  </se>
+  <se label="App Secret">
+    <input type="text" nz-input [(ngModel)]="i.sk" name="sk" required maxlength="32">
+  </se>
+  <se>
+    <button nz-button nzType="primary" [disabled]="f.invalid">Save</button>
+  </se>
+</form>

同时,会自动处理所有 Angular 内置校验指令,例如:requiredmaxlengthminpattern 等,并以红色边框来表示无效值状态。

代码演示

基础

一行两列表单。

expand codeexpand code
import { Component } from '@angular/core';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-se-basic',
+  template: ` <form nz-form #f="ngForm" se-container gutter="32">
+    <se label="App Key" [error]="{ required: '请填写', pattern: '只能包含a-z, 0-9之间' }">
+      <input
+        type="text"
+        nz-input
+        [(ngModel)]="i.ak"
+        name="ak"
+        required
+        pattern="^[a-z0-9]*$"
+        placeholder="必填项,且只能包含a-z, 0-9之间"
+      />
+    </se>
+    <ng-template #appSecretRequired> 请填写,密钥<a (click)="msg.success('success')">生成</a>地址。 </ng-template>
+    <se label="App Secret" [error]="{ required: appSecretRequired, pattern: '只能包含0-9之间' }">
+      <input
+        type="text"
+        nz-input
+        [(ngModel)]="i.sk"
+        name="sk"
+        required
+        maxlength="32"
+        pattern="^[0-9]*$"
+        placeholder="必填项,且只能包含0-9之间"
+      />
+    </se>
+    <se>
+      <button nz-button nzType="primary" [disabled]="f.invalid">Save</button>
+    </se>
+  </form>`,
+})
+export class ComponentsSeBasicComponent {
+  i: { ak?: string; sk?: string } = {};
+
+  constructor(public msg: NzMessageService) {}
+}
响应式表单

支持响应式表单。

注意:

  • 响应式表单无法自动获取 Validators.required 来判断是否需要必填项标识符,因此需要手动标识 required 属性。

  • 当需要使用 patchValue 赋值时,因为 dirty 依然保持为 false 的因素,需要对所有表单元素设置 markAsDirty() 或者使用 ingoreDirty 属性强制忽略 dirty 的校验。

expand codeexpand code
import { Component } from '@angular/core';
+import { FormControl, FormGroup, Validators } from '@angular/forms';
+
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-se-reactive',
+  template: ` <form nz-form [formGroup]="validateForm" (ngSubmit)="submitForm()" se-container gutter="32" ingoreDirty>
+    <se
+      label="App Key"
+      required
+      [error]="{ required: 'Please input your username!', pattern: 'Incorrect format, muse be A' }"
+    >
+      <input formControlName="userName" nz-input placeholder="Username" />
+    </se>
+    <se label="App Secret" required error="Please input your Password!">
+      <input formControlName="password" nz-input type="password" placeholder="Password" />
+    </se>
+    <se>
+      <button nz-button nzType="primary" [disabled]="!validateForm.valid">Log in</button>
+      <button nz-button nzType="link" type="button" (click)="updateValue()">Update value via patchValue</button>
+    </se>
+  </form>`
+})
+export class ComponentsSeReactiveComponent {
+  validateForm = new FormGroup({
+    userName: new FormControl<string | null>(null, [Validators.required, Validators.pattern(/A/)]),
+    password: new FormControl(null, [Validators.required]),
+    remember: new FormControl(true)
+  });
+  constructor(private msg: NzMessageService) {}
+
+  submitForm(): void {
+    this.msg.success(JSON.stringify(this.validateForm.value));
+  }
+
+  updateValue(): void {
+    this.validateForm.patchValue({ userName: 'a' });
+  }
+}
紧凑型

强制忽略 errorextra 展示。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-se-compact',
+  template: ` <form nz-form #f="ngForm" se-container labelWidth="150" gutter="32" size="compact">
+    <se label="App Key" error="请填写" optional="(选填)" optionalHelp="通过控制台-查看KEY获取" extra="额外提示信息">
+      <input type="text" nz-input [(ngModel)]="i.ak" name="ak" required />
+    </se>
+    <se label="App Secret" error="请填写,最多32位">
+      <input type="text" nz-input [(ngModel)]="i.sk" name="sk" required maxlength="32" />
+    </se>
+    <se>
+      <button nz-button nzType="primary" [disabled]="f.invalid">Save</button>
+    </se>
+  </form>`,
+})
+export class ComponentsSeCompactComponent {
+  i: { ak?: string; sk?: string } = {};
+}
额外提示信息
水平排列

一行一列表单。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-se-horizontal',
+  template: ` <form nz-form #f="ngForm" se-container="1" labelWidth="150">
+    <se label="App Key" error="请填写" optional="(选填)" optionalHelp="通过控制台-查看KEY获取" extra="额外提示信息">
+      <input type="text" nz-input [(ngModel)]="i.ak" name="ak" required />
+    </se>
+    <se label="App Secret" error="请填写,最多32位">
+      <input type="text" nz-input [(ngModel)]="i.sk" name="sk" required maxlength="32" />
+    </se>
+    <se>
+      <button nz-button nzType="primary" [disabled]="f.invalid">Save</button>
+    </se>
+  </form>`,
+})
+export class ComponentsSeHorizontalComponent {
+  i: { ak?: string; sk?: string } = {};
+}
内联布局

nzLayout: inline 时强制使用紧凑型,一般用于搜索框。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-se-inline',
+  template: `
+  <form nz-form nzLayout="inline" #f="ngForm" se-container>
+    <se label="App Key" error="请填写" optional="(选填)" optionalHelp="通过控制台-查看KEY获取" extra="额外提示信息">
+      <input type="text" nz-input [(ngModel)]="i.ak" name="ak" required>
+    </se>
+    <se label="App Secret" error="请填写,最多32位">
+      <input type="text" nz-input [(ngModel)]="i.sk" name="sk" required maxlength="32">
+    </se>
+    <se>
+      <button nz-button nzType="primary" [disabled]="f.invalid">Save</button>
+    </se>
+  </form>`,
+})
+export class ComponentsSeInlineComponent {
+  i: { ak?: string; sk?: string } = {};
+}
额外提示信息
垂直布局

垂直布局表单。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-se-vertical',
+  template: ` <form nz-form nzLayout="vertical" #f="ngForm" se-container>
+    <se label="App Key" error="请填写" optional="(选填)" optionalHelp="通过控制台-查看KEY获取" extra="额外提示信息">
+      <input type="text" nz-input [(ngModel)]="i.ak" name="ak" required />
+    </se>
+    <se label="App Secret" error="请填写,最多32位">
+      <input type="text" nz-input [(ngModel)]="i.sk" name="sk" required maxlength="32" />
+    </se>
+    <se>
+      <button nz-button nzType="primary" [disabled]="f.invalid">Save</button>
+    </se>
+  </form>`,
+})
+export class ComponentsSeVerticalComponent {
+  i: { ak?: string; sk?: string } = {};
+}
头像
分隔线

构建一个左右结构的标准表单行。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-se-line',
+  template: ` <form nz-form #f="ngForm" se-container="1" size="compact" gutter="32">
+    <se label="所属类目" line>头像</se>
+    <se label="图片">
+      <nz-input-group nzSearch [nzAddOnAfter]="suffixButton">
+        <input type="text" nz-input placeholder="请贴入网络图片地址" />
+      </nz-input-group>
+      <ng-template #suffixButton>
+        <button nz-button nzType="primary" nzSearch>提取</button>
+      </ng-template>
+    </se>
+  </form>`,
+})
+export class ComponentsSeLineComponent {}

Operating

Reactive

批量重置错误消息

利用 errors 可以批量对所有 se 组件重置 error 值。

expand codeexpand code
import { Component } from '@angular/core';
+import { FormControl, FormGroup, Validators } from '@angular/forms';
+
+import { SEErrorRefresh } from '@delon/abc/se';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-se-reset-errors',
+  template: `
+    <h3>Operating</h3>
+    <div class="mb-md">
+      <button nz-button (click)="resetErrors()">Reset all errors</button>
+    </div>
+    <form nz-form #f="ngForm" se-container [errors]="ngModelErrors" gutter="32">
+      <se label="App Key" [error]="{ required: '请填写', pattern: '只能包含a-z, 0-9之间' }">
+        <input
+          type="text"
+          nz-input
+          [(ngModel)]="i.ak"
+          name="ak"
+          required
+          pattern="^[a-z0-9]*$"
+          placeholder="必填项,且只能包含a-z, 0-9之间"
+        />
+      </se>
+      <ng-template #appSecretRequired> 请填写,密钥<a (click)="msg.success('success')">生成</a>地址。 </ng-template>
+      <se label="App Secret" [error]="{ required: appSecretRequired, pattern: '只能包含0-9之间' }">
+        <input
+          type="text"
+          nz-input
+          [(ngModel)]="i.sk"
+          name="sk"
+          required
+          maxlength="32"
+          pattern="^[0-9]*$"
+          placeholder="必填项,且只能包含0-9之间"
+        />
+      </se>
+      <se>
+        <button nz-button nzType="primary" [disabled]="f.invalid">Save</button>
+      </se>
+    </form>
+    <h3>Reactive</h3>
+    <form nz-form [formGroup]="validateForm" se-container gutter="32" [errors]="reactiveErrors">
+      <se label="App Key" [error]="{ required: 'Please input your username!', pattern: 'Incorrect format, muse be A' }">
+        <input formControlName="userName" nz-input placeholder="Username" />
+      </se>
+      <se label="App Secret" error="Please input your Password!">
+        <input formControlName="password" nz-input type="password" placeholder="Password" />
+      </se>
+      <se>
+        <button nz-button nzType="primary" [disabled]="!validateForm.valid">Log in</button>
+      </se>
+    </form>
+  `
+})
+export class ComponentsSeResetErrorsComponent {
+  validateForm = new FormGroup({
+    userName: new FormControl<string | null>(null, [Validators.required, Validators.pattern(/A/)]),
+    password: new FormControl(null, [Validators.required]),
+    remember: new FormControl(true)
+  });
+
+  i: { ak?: string; sk?: string } = {};
+  ngModelErrors: SEErrorRefresh[] = [];
+  reactiveErrors: SEErrorRefresh[] = [];
+
+  constructor(public msg: NzMessageService) {}
+
+  resetErrors(): void {
+    this.ngModelErrors = [{ name: 'ak', error: 'Required field, and can only contain a-z, 0-9' }];
+    this.reactiveErrors = [
+      { name: 'userName', error: 'Required username' },
+      { name: 'password', error: 'Required password' }
+    ];
+  }
+}
Title 1
1000
3
+86
Title 2
id

暂无数据

不规则布局

利用 col 可以构建复杂不规则布局。

expand codeexpand code
import { Component } from '@angular/core';
+
+import { STColumn } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-se-complex',
+  template: `
+    <form nz-form #f="ngForm" se-container="3" size="compact" gutter="24">
+      <se-title>Title 1</se-title>
+      <se label="ID" col="1" [optionalHelp]="optionalHelpTpl">
+        1000
+        <ng-template #optionalHelpTpl> Via by ng-template </ng-template>
+      </se>
+      <se label="Name" required col="2" optionalHelp="The background color is #f50" optionalHelpColor="#f50">
+        <input type="text" nz-input [(ngModel)]="i.user_name" name="user_name" required placeholder="占两栏" />
+      </se>
+      <se label="Age" required>
+        <nz-select [(ngModel)]="i.user_age" name="user_age" nzAllowClear nzPlaceHolder="Choose">
+          <nz-option [nzValue]="1" nzLabel="1"></nz-option>
+          <nz-option [nzValue]="2" nzLabel="2"></nz-option>
+          <nz-option [nzValue]="3" nzLabel="3"></nz-option>
+          <nz-option [nzValue]="4" nzLabel="4"></nz-option>
+          <nz-option [nzValue]="5" nzLabel="5"></nz-option>
+        </nz-select>
+      </se>
+      <se label="Brithday" required>
+        <nz-date-picker [(ngModel)]="i.user_birthday" name="user_birthday" nzShowTime></nz-date-picker>
+      </se>
+      <se label="App Key" required>
+        <input type="text" nz-input [(ngModel)]="i.ak" name="ak" required />
+      </se>
+      <se label="App Secret" required>
+        <input type="text" nz-input [(ngModel)]="i.sk" name="sk" required maxlength="32" />
+      </se>
+      <nz-divider></nz-divider>
+      <se label="Phone Number" required>
+        <nz-input-group [nzAddOnBefore]="addOnBeforeTemplate">
+          <ng-template #addOnBeforeTemplate>
+            <nz-select [(ngModel)]="i.phoneNumberPrefix" name="phoneNumberPrefix" style="width: 70px;">
+              <nz-option nzLabel="+86" nzValue="+86"></nz-option>
+              <nz-option nzLabel="+87" nzValue="+87"></nz-option>
+            </nz-select>
+          </ng-template>
+          <input type="text" nz-input [(ngModel)]="i.phoneNumber" name="phoneNumber" required maxlength="32" />
+        </nz-input-group>
+      </se>
+      <se>
+        <label nz-checkbox [(ngModel)]="i.agree" name="agree">
+          <span>I have read the <a>agreement</a></span>
+        </label>
+      </se>
+      <se-title>Title 2</se-title>
+      <se label="Long Long Long Long Long Long Label" col="1">
+        <textarea [(ngModel)]="i.comment" name="comment" nz-input rows="2" placeholder="write any thing"></textarea>
+      </se>
+      <se hideLabel col="1">
+        <st [columns]="columns" size="small"></st>
+      </se>
+      <se col="1">
+        <button nz-button nzType="primary" [disabled]="f.invalid">Save</button>
+      </se>
+    </form>
+  `
+})
+export class ComponentsSeComplexComponent {
+  i = {
+    user_name: '',
+    user_age: 3,
+    user_birthday: '',
+    ak: '',
+    sk: '',
+    phoneNumberPrefix: '+86',
+    phoneNumber: '',
+    agree: true,
+    comment: ''
+  };
+  columns: STColumn[] = [{ title: 'id' }];
+}

API

se-container

成员说明类型默认值全局配置
[gutter]间距,当 nzLayout:horizontal 时有效number32
[se-container]指定表单元素最多分几列展示,最终一行几列由 col 配置结合响应式规则决定'1','2','3','4','5','6'-
[col]指定表单元素最多分几列展示,最终一行几列由 col 配置结合响应式规则决定'1','2','3','4','5','6'-
[labelWidth]表单元素默认标签文本宽度,单位:pxnumber150
[nzLayout]表单布局,当 inline 时强制大小为 compact'horizontal','vertical','inline''horizontal'
[size]大小 compact 紧凑型,强制忽略 errorextra 展示'default','compact''default'
[firstVisual]是否立即呈现错误视觉booleanfalse
[ingoreDirty]是否忽略 dirty 校验booleanfalse
[line]分隔线booleanfalse-
[title]标题string,TemplateRef<void>-
[errors]批量修改 se 错误消息描述SEErrorRefresh[]-
[noColon]默认是否不显示 label 后面的冒号booleanfalse-

se

成员说明类型默认值
[col]指定表单元素最多分几列展示,最终一行几列由 col 配置结合响应式规则决定(继承于 se-container'1','2','3','4','5','6'-
[label]标签文本string, TemplateRef<void>-
[labelWidth]标签文本宽度,单位:px(继承于 se-containernumber-
[hideLabel]是否隐藏当前 labelbooleanfalse
[optional]标签可选信息string, TemplateRef<void>-
[optionalHelp]标签可选帮助string, TemplateRef<void>-
[optionalHelpColor]标签可选帮助背景颜色string-
[error]错误描述string, TemplateRef<void>, { [key: string]: string, TemplateRef}-
[extra]额外提示信息string, TemplateRef<void>-
[required]是否必填项标识符,若不设置自动根据表单元素是否有 RequiredValidator 校验来设置值string-
[controlClass]控件区域样式名string-
[id]自定义组件 idstring-
[line]分隔线(继承于 se-containerboolean-
[noColon]是否不显示 label 后面的冒号booleanfalse-

se-title

用于展示标题,单独一行。

常见问题

什么时候自定义组件id

点击表单的 Label 会将光标定位至相应组件下,而 ng-edit 会自动根据 ngModel 状态合理的设定 id,绝大多数情况下你无须关心 id 的绑定状态,当然若你手动指定 id 值则优先级更高但同时你需要自己维护组件对应的 id 值。

\ No newline at end of file diff --git a/components/sg/en/index.html b/components/sg/en/index.html new file mode 100644 index 000000000..14c96f2b4 --- /dev/null +++ b/components/sg/en/index.html @@ -0,0 +1,42 @@ +sg - NG-ALAIN

简易栅格
IMPORT MODULE

简化栅格系统运用的高阶组件,它由 sg-container 容器(指令)和 sg 组件组合代替一个响应式布局:

<div nz-row [nzGutter]="32">
+  <nz-col nzXs="24" nzSm="12" nzMd="8" nzLg="6">1</nz-col>
+  <nz-col nzXs="24" nzSm="12" nzMd="8" nzLg="6">2</nz-col>
+  <nz-col nzXs="24" nzSm="12" nzMd="8" nzLg="6">3</nz-col>
+  <nz-col nzXs="24" nzSm="12" nzMd="8" nzLg="6">4</nz-col>
+</div>

替代:

<div sg-container="4">
+  <sg>1</sg>
+  <sg>2</sg>
+  <sg>3</sg>
+  <sg>4</sg>
+</div>

代码演示

1
2
3
4
5
6
7
8
9
10
11
基础

一行四列布局。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-sg-basic',
+  template: ` <div sg-container="4">
+    <sg *ngFor="let i of ls; let idx = index" [col]="idx === 5 ? 2 : null">
+      <div class="item">{{ idx + 1 }}</div>
+    </sg>
+  </div>`,
+  styles: [
+    `
+      :host .sg__item {
+        padding: 5px 0;
+        text-align: center;
+        border-radius: 0;
+        min-height: 30px;
+        margin-top: 8px;
+        margin-bottom: 8px;
+        color: #fff;
+      }
+      :host .item {
+        background: #00a0e9;
+        height: 120px;
+        line-height: 120px;
+        font-size: 13px;
+      }
+    `
+  ]
+})
+export class ComponentsSgBasicComponent {
+  ls = Array(11).fill(0);
+}

API

sg-container

成员说明类型默认值全局配置
[gutter]间距,当 nzLayout:horizontal 时有效number32
[sg-container]指定表单元素最多分几列展示,最终一行几列由 col 配置结合响应式规则决定,'1','2','3','4','5','6'--
[col]指定表单元素最多分几列展示,最终一行几列由 col 配置结合响应式规则决定,'1','2','3','4','5','6'2

sg

成员说明类型默认值
[col]指定表单元素最多分几列展示,最终一行几列由 col 配置结合响应式规则决定,'1','2','3','4','5','6'-
\ No newline at end of file diff --git a/components/sg/zh/index.html b/components/sg/zh/index.html new file mode 100644 index 000000000..f30645837 --- /dev/null +++ b/components/sg/zh/index.html @@ -0,0 +1,42 @@ +sg - NG-ALAIN

简易栅格
IMPORT MODULE

简化栅格系统运用的高阶组件,它由 sg-container 容器(指令)和 sg 组件组合代替一个响应式布局:

<div nz-row [nzGutter]="32">
+  <nz-col nzXs="24" nzSm="12" nzMd="8" nzLg="6">1</nz-col>
+  <nz-col nzXs="24" nzSm="12" nzMd="8" nzLg="6">2</nz-col>
+  <nz-col nzXs="24" nzSm="12" nzMd="8" nzLg="6">3</nz-col>
+  <nz-col nzXs="24" nzSm="12" nzMd="8" nzLg="6">4</nz-col>
+</div>

替代:

<div sg-container="4">
+  <sg>1</sg>
+  <sg>2</sg>
+  <sg>3</sg>
+  <sg>4</sg>
+</div>

代码演示

1
2
3
4
5
6
7
8
9
10
11
基础

一行四列布局。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-sg-basic',
+  template: ` <div sg-container="4">
+    <sg *ngFor="let i of ls; let idx = index" [col]="idx === 5 ? 2 : null">
+      <div class="item">{{ idx + 1 }}</div>
+    </sg>
+  </div>`,
+  styles: [
+    `
+      :host .sg__item {
+        padding: 5px 0;
+        text-align: center;
+        border-radius: 0;
+        min-height: 30px;
+        margin-top: 8px;
+        margin-bottom: 8px;
+        color: #fff;
+      }
+      :host .item {
+        background: #00a0e9;
+        height: 120px;
+        line-height: 120px;
+        font-size: 13px;
+      }
+    `
+  ]
+})
+export class ComponentsSgBasicComponent {
+  ls = Array(11).fill(0);
+}

API

sg-container

成员说明类型默认值全局配置
[gutter]间距,当 nzLayout:horizontal 时有效number32
[sg-container]指定表单元素最多分几列展示,最终一行几列由 col 配置结合响应式规则决定,'1','2','3','4','5','6'--
[col]指定表单元素最多分几列展示,最终一行几列由 col 配置结合响应式规则决定,'1','2','3','4','5','6'2

sg

成员说明类型默认值
[col]指定表单元素最多分几列展示,最终一行几列由 col 配置结合响应式规则决定,'1','2','3','4','5','6'-
\ No newline at end of file diff --git a/components/st/en/index.html b/components/st/en/index.html new file mode 100644 index 000000000..ecad45cab --- /dev/null +++ b/components/st/en/index.html @@ -0,0 +1,1228 @@ +st - NG-ALAIN

表格
IMPORT MODULE

st 并不是在创造另一个表格组件,而是在 nz-table 基础上以可配置形式渲染表格,在中后台里这种方式可以满足绝大多数场景,但又可以更易地管理表格渲染动作。

关于数据源

data 支持三种不同格式数据源,整体分为:URL和静态数据两类;但可以透过参数的配置达到不同的效果,同时有非常多参数可通过 AlainSTConfig 重置默认值,使整个 st 组件模板达到极简。

URL

指的是通过一个 URL 字符串来获取数据。

  • 通过 req.paramsreq.method 等参数解决请求数据格式问题

  • 通过 res.reName 重置数据 key 而无须担心后端数据格式是否满足 st 需求

  • 通过 res.process 可以对表格渲染前对数据进一步优化

  • 通过 page.zeroIndexed 可以调整 http 请求时 pi 参数是否遵循 0 基索引,默认情况下为 1 基索引

  • 若返回体的值是数组类型,则强制不分页

  • 使用 _HttpClient 发起请求,因此满足 AlainThemeConfig 的配置也适用

静态数据

指的是通过指定值为 STData[]Observable<STData[]>,二者都遵循以下规则:

  • page.front 前端分页,默认:true

    • truest 根据 data 长度受控分页,包括:排序、过滤等

    • false 由用户通过 totaldata 参数受控分页,并维护 (change) 当分页变更时重新加载数据

  • page.show 是否显示分页器;当未指定时若 ps>total 情况下自动不显示

常见问题

Cannot read property 'text' of undefined

若组件已经加载完毕,此时如果再次改变 columns 时可能会出现该错误,这是因为 st 每次只会根据 columns 对数据处理,当列定义发生改变后可能会因为列定义与现有数据无法配对,可能需要使用 this.st.resetColumns({ columns: [], emitReload: true }) 来更新列定义并重新加载数据。

某列显示INVALID DATA

当在解析列数据时抛出异常时,会强制显示 INVALID DATA,例如当某指定 type: 'number' 时,而实际获得值为非有效数字型时就会抛出异常。

代码演示

编号头像邮箱电话佣金(单位:元)注册时间
编号1头像邮箱aaa8@qq.com电话phone-37094佣金(单位:元)8,413,027注册时间2023-10-31 13:23
编号2头像邮箱aaa1@qq.com电话phone-98280佣金(单位:元)1,348,984注册时间2023-10-31 13:23
编号3头像邮箱aaa3@qq.com电话phone-10075佣金(单位:元)7,232,371注册时间2023-10-31 13:23
  • 共 2 条
  • 1
基本

快速生成表格;利用 res 可以适配后端数据格式。

expand codeexpand code
import { Component, ViewChild } from '@angular/core';
+
+import { STColumn, STComponent } from '@delon/abc/st';
+
+interface User {
+  id: number;
+  picture: {
+    thumbnail: string;
+  };
+  name: {
+    last: string;
+    first: string;
+  };
+  nat: string;
+  gender: string;
+  email: string;
+  phone: string;
+  price: number;
+  registered: Date;
+}
+
+@Component({
+  selector: 'components-st-basic',
+  template: `
+    <button nz-button nzType="primary" (click)="setRow()">setRow Method</button>
+    <st #st [widthMode]="{ type: 'strict' }" [data]="url" [req]="{ params: params }" [columns]="columns"></st>
+  `
+})
+export class ComponentsStBasicComponent {
+  url = `/users?total=2&field=list`;
+  params = { a: 1, b: 2 };
+  @ViewChild('st', { static: false }) private st!: STComponent;
+  columns: Array<STColumn<User>> = [
+    { title: '编号', index: 'id', width: 80 },
+    { title: '头像', index: 'picture.thumbnail', type: 'img', width: 60 },
+    { title: '邮箱', index: 'email', width: 80 },
+    { title: '电话', index: 'phone' },
+    {
+      title: { text: '佣金', optional: '(单位:元)', optionalHelp: '计算公式=订单金额 * 0.6%' },
+      index: 'price',
+      type: 'currency'
+    },
+    { title: '注册时间', type: 'date', index: 'registered' }
+  ];
+
+  setRow(): void {
+    this.st.setRow(0, { price: 100000000 });
+  }
+}
姓名年龄状态DateCustom
编号姓名name 1年龄29状态SuccessDate2023-10-31 13:23Customname 1
编号姓名name 2年龄28状态DefaultDate2023-10-31 13:23Customname 2
编号姓名name 3年龄24状态ErrorDate2023-10-31 13:23Customname 3
自定义数据

data 属性支持 STData[]Observable 数据类型。

expand codeexpand code
import { Component, OnInit, TemplateRef, ViewChild } from '@angular/core';
+import { of, delay } from 'rxjs';
+
+import { STChange, STColumn, STColumnFilter, STColumnFilterHandle, STData } from '@delon/abc/st';
+import { dateTimePickerUtil } from '@delon/util/date-time';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-st-custom-data',
+  template: `
+    <div class="mb-md">
+      <button (click)="st.clear()" nz-button>Clear Data</button>
+      <button (click)="st.reload()" nz-button>Reload Data</button>
+      <button (click)="st.clearStatus(); st.reload()" nz-button>Clear Status</button>
+      <button (click)="st.setRow(0, { className: 'text-success' })" nz-button>Update Row ClassName</button>
+    </div>
+    <st #st [data]="users" [columns]="columns" (change)="change($event)"> </st>
+    <ng-template #customFilter let-f let-col="col" let-handle="handle">
+      <div class="p-lg">
+        <p>Custom body</p>
+        <button nz-button nzType="primary" (click)="close(f, handle, true)">confirm</button>
+        <button nz-button (click)="close(f, handle, false)">reset</button>
+      </div>
+    </ng-template>
+  `
+})
+export class ComponentsStCustomDataComponent implements OnInit {
+  users: STData[] = [];
+  @ViewChild('customFilter', { static: true }) readonly customFilter!: TemplateRef<{
+    $implicit: STColumnFilter;
+    col: STColumn;
+    handle: STColumnFilterHandle;
+  }>;
+  columns: STColumn[] = [];
+
+  constructor(private msg: NzMessageService) {}
+
+  ngOnInit(): void {
+    this.columns = [
+      {
+        title: '编号',
+        index: 'id',
+        type: 'checkbox',
+        selections: [
+          {
+            text: '小于25岁',
+            select: data => data.forEach(item => (item.checked = item.age < 25))
+          },
+          {
+            text: '大于25岁',
+            select: data => data.forEach(item => (item.checked = item.age >= 25))
+          }
+        ]
+      },
+      {
+        title: '姓名',
+        index: 'name',
+        sort: {
+          compare: (a, b) => a.name.length - b.name.length
+        },
+        filter: {
+          type: 'keyword',
+          placeholder: '输入后按回车搜索',
+          fn: (filter, record) => !filter.value || record.name.indexOf(filter.value) !== -1
+        }
+      },
+      {
+        title: '年龄',
+        index: 'age',
+        sort: {
+          compare: (a, b) => a.age - b.age
+        },
+        filter: {
+          type: 'number',
+          placeholder: '范围 10 ~ 100 之间',
+          number: {
+            min: 10,
+            max: 100
+          },
+          fn: (filter, record) => (filter.value != null ? record.age >= +filter.value : true)
+        }
+      },
+      {
+        title: '状态',
+        type: 'badge',
+        index: 'status',
+        badge: {
+          1: { text: 'Success', color: 'success' },
+          2: { text: 'Error', color: 'error' },
+          3: { text: 'Processing', color: 'processing' },
+          4: { text: 'Default', color: 'default' },
+          5: { text: 'Warning', color: 'warning' }
+        },
+        filter: {
+          menus: [
+            { text: 'Success', value: 1 },
+            { text: 'Error', value: 2 }
+          ],
+          fn: (filter, record) => record.age >= filter.value[0] && record.age <= filter.value[1],
+          multiple: true
+        }
+      },
+      {
+        title: 'Date',
+        index: 'created',
+        type: 'date',
+        filter: {
+          type: 'date',
+          date: {
+            mode: 'date',
+            showToday: false,
+            disabledDate: dateTimePickerUtil.disabledAfterDate()
+          },
+          fn: () => true
+        }
+      },
+      {
+        title: 'Custom',
+        index: 'name',
+        filter: {
+          type: 'custom',
+          icon: { type: 'search', theme: 'outline' },
+          custom: this.customFilter,
+          showOPArea: false,
+          fn: (filter, record) => !filter.value || record.name.indexOf(filter.value) !== -1
+        }
+      }
+    ];
+    const data = Array(100)
+      .fill({})
+      .map((_, idx) => ({
+        id: idx + 1,
+        name: `name ${idx + 1}`,
+        age: Math.ceil(Math.random() * 10) + 20,
+        status: Math.floor(Math.random() * 5) + 1,
+        created: new Date()
+      }));
+    of(data)
+      .pipe(delay(500))
+      .subscribe(res => (this.users = res));
+  }
+
+  close(f: STColumnFilter, handle: STColumnFilterHandle, result: boolean): void {
+    this.msg.info(`Process result: ${result}${result ? '(only name 2)' : ''}`);
+    f.menus = [{ value: result ? 'name 2' : null }];
+    handle.close(result);
+  }
+
+  change(e: STChange): void {
+    console.log(e);
+  }
+}
行号姓名年龄HTMLTexttagbadgeEnumyn
行号1姓名name 1年龄35HTML1 OtherText<strong>1</strong> Othertag警告badge错误Enumyn
行号2姓名name 2年龄35HTML2 OtherText<strong>2</strong> Othertag进行中badge成功Enumyn
行号3姓名name 3年龄13HTML3 OtherText<strong>3</strong> Othertag进行中badge错误Enumyn
列类型

支持十种不同列类型:行号、多选、单选、徽标、标签、图片、数字、货币、日期、布尔徽章、枚举。也可以使用自定义列完成更复杂渲染。

expand codeexpand code
import { Component } from '@angular/core';
+
+import { STColumn, STColumnBadge, STColumnTag, STData } from '@delon/abc/st';
+
+const BADGE: STColumnBadge = {
+  1: { text: '成功', color: 'success' },
+  2: { text: '错误', color: 'error', tooltip: 'TIPS' },
+  3: { text: '进行中', color: 'processing' },
+  4: { text: '默认', color: 'default' },
+  5: { text: '警告', color: 'warning' }
+};
+const TAG: STColumnTag = {
+  1: { text: '成功', color: 'green' },
+  2: { text: '错误', color: 'red' },
+  3: { text: '进行中', color: 'blue' },
+  4: { text: '默认', color: '' },
+  5: { text: '警告', color: 'orange', tooltip: 'TIPS' }
+};
+const r = (min: number, max: number): number => Math.floor(Math.random() * (max - min + 1) + min);
+
+@Component({
+  selector: 'components-st-type',
+  template: `
+    <button nz-button (click)="reload()">Reload</button>
+    <st #st [data]="users" [columns]="columns" [page]="{ position: 'both' }"></st>
+  `
+})
+export class ComponentsStTypeComponent {
+  users: STData[] = [];
+  columns: STColumn[] = [
+    { title: '行号', type: 'no' },
+    { title: '姓名', index: 'name' },
+    { title: '年龄', index: 'age', type: 'number' },
+    { title: 'HTML', index: 'html', safeType: 'safeHtml' },
+    { title: 'Text', index: 'html', safeType: 'text' },
+    { title: 'tag', index: 'tag', type: 'tag', tag: TAG },
+    { title: 'badge', index: 'badge', type: 'badge', badge: BADGE },
+    { title: 'Enum', index: 'enum', type: 'enum', enum: { 1: '壹', 2: '贰', 3: '叁' } },
+    { title: 'yn', index: 'yn', type: 'yn' }
+  ];
+
+  reload(): void {
+    this.users = Array(10)
+      .fill({})
+      .map((_, idx) => ({
+        id: idx + 1,
+        name: `name ${idx + 1}`,
+        age: r(10, 50),
+        tag: r(1, 5),
+        badge: r(1, 5),
+        enum: r(1, 3),
+        yn: [true, false][r(1, 5) % 2],
+        html: `<strong>${idx + 1}</strong> Other`
+      }));
+  }
+
+  constructor() {
+    this.reload();
+  }
+}
编号类型头像邮箱电话佣金人民币写法Site可用注册时间
编号1类型会员头像邮箱aaa10@qq.com电话****5465佣金3,911,406人民币写法肆佰陆拾伍万陆仟柒佰肆拾陆元整Sitehttps://7076084.com/可用注册时间2023-10-31 13:23:20
编号2类型管理头像邮箱aaa6@qq.com电话****144佣金3,441,061人民币写法伍佰叁拾玖万柒仟柒佰叁拾捌元整Sitehttps://7731369.com/可用注册时间2023-10-31 13:23:20
编号3类型管理头像邮箱aaa6@qq.com电话****2169佣金9,107,777人民币写法肆拾壹万贰仟伍佰捌拾元整Sitehttps://3311280.com/可用注册时间2023-10-31 13:23:20
  • 共 2 条
  • 1
单元格

使用 cell 组件更丰富的渲染。

expand codeexpand code
import { Component, ViewChild } from '@angular/core';
+import { STColumn, STComponent } from '@delon/abc/st';
+import type { CellOptions } from '@delon/abc/cell';
+
+@Component({
+  selector: 'components-st-cell',
+  template: `
+    <button nz-button nzType="primary" (click)="setRow()">setRow Method</button>
+    <st #st [widthMode]="{ type: 'strict' }" [data]="url" [req]="{ params: params }" [columns]="columns"></st>
+  `,
+})
+export class ComponentsStCellComponent {
+  url = `/users?total=2&field=list`;
+  params = { a: 1, b: 2 };
+  @ViewChild('st', { static: false }) private st!: STComponent;
+  columns: STColumn[] = [
+    { title: '编号', index: 'id', width: 55 },
+    { title: '类型', index: 'type', width: 60, cell: { enum: { 1: '普通', 2: '会员', 3: '管理' } } },
+    { title: '头像', index: 'picture.thumbnail', width: 64, cell: { type: 'img' } },
+    { title: '邮箱', index: 'email', width: 120 },
+    { title: '电话', index: 'phone', cell: { mask: '999****9999' } },
+    {
+      title: { text: '佣金', optionalHelp: '计算公式=订单金额 * 0.6%' },
+      index: 'price',
+      cell: {
+        type: 'currency',
+        unit: '元'
+      }
+    },
+    {
+      title: '人民币写法',
+      index: 'total',
+      cell: {
+        type: 'cny'
+      }
+    },
+    {
+      title: 'Site',
+      index: 'website',
+      width: 100,
+      cell: record => {
+        return {
+          tooltip: record.website,
+          link: {
+            url: record.website
+          }
+        } as CellOptions;
+      }
+    },
+    { title: '可用', index: 'disabled', width: 64, cell: { type: 'boolean' } },
+    { title: '注册时间', index: 'registered', width: 180, cell: { type: 'date' } }
+  ];
+
+  setRow(): void {
+    this.st.setRow(0, { price: 100000000 });
+  }
+}
头像邮箱电话注册时间
编号头像邮箱aaa10@qq.com电话phone-3413注册时间2023-10-31 13:23
编号头像邮箱aaa6@qq.com电话phone-55684注册时间2023-10-31 13:23
编号头像邮箱aaa3@qq.com电话phone-33627注册时间2023-10-31 13:23
可选择

利用 change 监听所选的数据。

expand codeexpand code
import { Component } from '@angular/core';
+
+import { STChange, STColumn, STData } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-st-checkbox',
+  template: ` <div class="mb-md">
+      <button nz-button (click)="st.checkAll(true)">All</button>
+      <button nz-button (click)="st.clearCheck()">Clean</button>
+    </div>
+    <st
+      #st
+      [data]="url"
+      [columns]="columns"
+      [req]="{ params: params }"
+      [res]="{ process: dataProcess }"
+      (change)="change($event)"
+    ></st>`
+})
+export class ComponentsStCheckboxComponent {
+  url = `/users?total=100`;
+  params = { a: 1, b: 2 };
+  columns: STColumn[] = [
+    { title: '编号', index: 'id.value', type: 'checkbox' },
+    { title: '头像', type: 'img', width: 60, index: 'picture.thumbnail' },
+    { title: '邮箱', index: 'email' },
+    { title: '电话', index: 'phone' },
+    { title: '注册时间', type: 'date', index: 'registered' }
+  ];
+  change(e: STChange): void {
+    console.log('change', e);
+  }
+  dataProcess(data: STData[]): STData[] {
+    return data.map((i, index) => {
+      i.disabled = index === 0;
+      if (index === 1) i.checked = true;
+      return i;
+    });
+  }
+}
编号头像邮箱电话注册时间
编号头像邮箱aaa9@qq.com电话phone-40343注册时间2023-10-31 13:23
编号头像邮箱aaa3@qq.com电话phone-23732注册时间2023-10-31 13:23
编号头像邮箱aaa6@qq.com电话phone-20593注册时间2023-10-31 13:23
单选框

利用 change 监听所选的数据。

expand codeexpand code
import { Component } from '@angular/core';
+
+import { STChange, STColumn, STData } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-st-radio',
+  template: ` <div class="mb-md">
+      <button nz-button (click)="st.setRow(1, { checked: true })">Radio second</button>
+      <button nz-button (click)="st.clearRadio()">Clean</button>
+    </div>
+    <st
+      #st
+      [data]="url"
+      [columns]="columns"
+      [req]="{ params: params }"
+      [res]="{ process: dataChange }"
+      (change)="change($event)"
+    ></st>`
+})
+export class ComponentsStRadioComponent {
+  url = `/users?total=300`;
+  params = { a: 1, b: 2 };
+  columns: STColumn[] = [
+    { title: '编号', index: 'id', type: 'radio', width: 70 },
+    { title: '头像', type: 'img', width: 60, index: 'picture.thumbnail' },
+    { title: '邮箱', index: 'email' },
+    { title: '电话', index: 'phone' },
+    { title: '注册时间', type: 'date', index: 'registered' }
+  ];
+
+  change(ret: STChange): void {
+    console.log('change', ret);
+  }
+
+  dataChange(data: STData[]): STData[] {
+    return data.map((i, index) => {
+      i.disabled = index === 0;
+      i.hidden = index === 1;
+      return i;
+    });
+  }
+}
编号邮箱电话注册时间
编号1邮箱aaa3@qq.com电话phone-89500注册时间2023-10-31 13:23
编号2邮箱aaa5@qq.com电话phone-18502注册时间2023-10-31 13:23
编号3邮箱aaa7@qq.com电话phone-45587注册时间2023-10-31 13:23
  • 共 2 条
  • 1
右键菜单

利用 contextmenu 实现点击整个表格右键菜单。

expand codeexpand code
import { Component } from '@angular/core';
+import { STColumn, STContextmenuFn, STContextmenuItem, STContextmenuOptions } from '@delon/abc/st';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-st-contextmenu',
+  template: `
+    <st
+      #st
+      [widthMode]="{ type: 'strict' }"
+      [data]="url"
+      [req]="{ params: params }"
+      [columns]="columns"
+      [contextmenu]="handleContextmenu"
+    ></st>
+  `,
+})
+export class ComponentsStContextmenuComponent {
+  url = `/users?total=2&field=list`;
+  params = { a: 1, b: 2 };
+  columns: STColumn[] = [
+    { title: '编号', index: 'id', width: 80 },
+    { title: '邮箱', index: 'email', width: 80 },
+    { title: '电话', index: 'phone' },
+    { title: '注册时间', type: 'date', index: 'registered' },
+  ];
+
+  constructor(private msg: NzMessageService) {}
+
+  private show(options: STContextmenuOptions, item: STContextmenuItem): void {
+    if (options.type === 'head') {
+      this.msg.info(`点击标题,下标为:${options.colIndex},当前按钮为:${item.text}`);
+    } else {
+      this.msg.info(`点击单元格,行下标为:${options.rowIndex},列下标为:${options.colIndex},当前按钮为:${item.text}`);
+    }
+  }
+
+  handleContextmenu: STContextmenuFn = (options): STContextmenuItem[] => {
+    if (options.type === 'head') {
+      return [
+        {
+          text: 'Click me',
+          fn: item => this.show(options, item),
+        },
+      ];
+    }
+    return [
+      {
+        text: 'Edit',
+        fn: item => this.show(options, item),
+      },
+      {
+        text: 'View',
+        fn: item => this.show(options, item),
+      },
+      {
+        text: 'Next',
+        children: [
+          {
+            text: 'Nothing',
+            fn: item => this.show(options, item),
+          },
+          {
+            text: 'asdf',
+            fn: item => this.show(options, item),
+          },
+        ],
+      },
+    ];
+  };
+}
编号姓名年龄启用OP
编号1姓名name 1年龄28启用YOPEdit
编号2姓名name 2年龄27启用NOPEdit
编号3姓名name 3年龄25启用YOPEdit
可编辑行

定制带行编辑功能的表格,自由操作行内容。

expand codeexpand code
import { Component, ViewChild } from '@angular/core';
+import { STColumn, STComponent, STData } from '@delon/abc/st';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-st-edit-row',
+  template: `
+    <st #st [data]="users" [columns]="columns">
+      <ng-template st-row="nameTpl" let-item let-index="index">
+        <input *ngIf="item.edit" nz-input [ngModel]="item.name" (ngModelChange)="st.setRow(index, { name: $event })" />
+        <ng-container *ngIf="!item.edit">{{ item.name }}</ng-container>
+      </ng-template>
+      <ng-template st-row="ageTpl" let-item let-index="index">
+        <nz-input-number *ngIf="item.edit" [ngModel]="item.age" (ngModelChange)="st.setRow(index, { age: $event })"></nz-input-number>
+        <ng-container *ngIf="!item.edit">{{ item.age }}</ng-container>
+      </ng-template>
+      <ng-template st-row="enabledTpl" let-item let-index="index">
+        <nz-switch *ngIf="item.edit" [ngModel]="item.enabled" (ngModelChange)="st.setRow(index, { enabled: $event })"></nz-switch>
+        <ng-container *ngIf="!item.edit">{{ item.enabled ? 'Y' : 'N' }}</ng-container>
+      </ng-template>
+    </st>
+  `,
+})
+export class ComponentsStEditRowComponent {
+  @ViewChild('st') private st!: STComponent;
+  users: STData[] = Array(10)
+    .fill({})
+    .map((_, idx) => {
+      return {
+        id: idx + 1,
+        name: `name ${idx + 1}`,
+        age: Math.ceil(Math.random() * 10) + 20,
+        enabled: idx % 2 === 0,
+      };
+    });
+  columns: STColumn[] = [
+    { title: '编号', index: 'id' },
+    { title: '姓名', index: 'name', render: 'nameTpl' },
+    { title: '年龄', index: 'age', render: 'ageTpl' },
+    { title: '启用', index: 'enabled', render: 'enabledTpl' },
+    {
+      title: 'OP',
+      buttons: [
+        {
+          text: `Edit`,
+          iif: i => !i.edit,
+          click: i => this.updateEdit(i, true),
+        },
+        {
+          text: `Save`,
+          iif: i => i.edit,
+          click: i => {
+            this.submit(i);
+          },
+        },
+        {
+          text: `Cancel`,
+          iif: i => i.edit,
+          click: i => this.updateEdit(i, false),
+        },
+      ],
+    },
+  ];
+
+  constructor(private msg: NzMessageService) {}
+
+  private submit(i: STData): void {
+    this.msg.success(JSON.stringify(this.st.pureItem(i)));
+    this.updateEdit(i, false);
+  }
+
+  private updateEdit(i: STData, edit: boolean): void {
+    this.st.setRow(i, { edit }, { refreshSchema: true });
+  }
+}
编号头像邮箱电话注册时间
编号1头像邮箱aaa10@qq.com电话phone-29343注册时间2023-10-31 13:23
编号2头像邮箱aaa2@qq.com电话phone-51604注册时间2023-10-31 13:23
编号3头像邮箱aaa5@qq.com电话phone-85164注册时间2023-10-31 13:23
搜索表单

配合 load() & reset() 实现搜索表单。

expand codeexpand code
import { Component } from '@angular/core';
+import { STColumn } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-st-form',
+  template: `
+    <div class="mb-md">
+      <input nz-input [(ngModel)]="params.name" name="name" nzPlaceHolder="请输入姓名" style="width: 100px;" class="mr-sm" />
+      <button nz-button (click)="st.load(1)" [nzType]="'primary'">搜索</button>
+      <button nz-button (click)="params = {}; st.reset()">重置</button>
+    </div>
+    <st #st [data]="url" [req]="{ params: params }" [columns]="columns"></st>
+  `,
+})
+export class ComponentsStFormComponent {
+  url = `/users?total=100`;
+  params: { name?: string } = { name: 'asdf' };
+  columns: STColumn[] = [
+    { title: '编号', index: 'id', default: '-' },
+    { title: '头像', type: 'img', width: 60, index: 'picture.thumbnail' },
+    { title: '邮箱', index: 'email' },
+    { title: '电话', index: 'phone' },
+    { title: '注册时间', type: 'date', index: 'registered' },
+  ];
+}
编号邮箱电话
编号1邮箱aaa9@qq.com电话phone-96574
编号2邮箱aaa4@qq.com电话phone-89481
编号3邮箱aaa3@qq.com电话phone-8802
行操作

利用 addRowremoveRowsetRow 方法对行的操作。

打开控制面板了解打印明细。

expand codeexpand code
import { Component } from '@angular/core';
+
+import { STChange, STClickRowClassNameType, STColumn } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-st-row-op',
+  template: ` <button nz-button (click)="st.addRow({ id: 1000, email: 'add@email.com', phone: '123' })"> addRow</button>
+    <button nz-button (click)="st.removeRow(0)"> removeRow index: 0 </button>
+    <button nz-button (click)="st.setRow(0, { className: 'text-success' })"> Via setRow method </button>
+    <st
+      #st
+      [data]="url"
+      [req]="{ params: params }"
+      [columns]="columns"
+      (change)="_click($event)"
+      [clickRowClassName]="clickRowClassName"
+    ></st>`
+})
+export class ComponentsStRowOpComponent {
+  url = `/users?results=3`;
+  params = { a: 1, b: 2 };
+  clickRowClassName: STClickRowClassNameType = { exclusive: true, fn: () => 'text-error' };
+  columns: STColumn[] = [
+    { title: '编号', index: 'id' },
+    { title: '邮箱', index: 'email' },
+    { title: '电话', index: 'phone' }
+  ];
+
+  _click(e: STChange): void {
+    console.log('click', e);
+  }
+}
编号头像姓名国家性别注册时间
编号1头像姓名1: last-5 first-20国家CH性别male注册时间2023-10-31 13:23
编号2头像姓名2: last-3 first-16国家US性别female注册时间2023-10-31 13:23
编号3头像姓名3: last-3 first-11国家DE性别male注册时间2023-10-31 13:23
后端筛选和排序

利用 multiSort 支持多字段排序。

expand codeexpand code
import { Component } from '@angular/core';
+import { STColumn, STData } from '@delon/abc/st';
+
+interface UserData extends STData {
+  name: {
+    last: string;
+    first: string;
+  }
+}
+
+@Component({
+  selector: 'components-st-sort',
+  template: `
+    <button nz-button (click)="st.reset()">重置</button>
+    <st #st [data]="url" [req]="{ params: params }" [columns]="columns" multiSort></st>
+  `,
+})
+export class ComponentsStSortComponent {
+  url = `/users?total=200`;
+  params = { a: 1, b: 2 };
+  columns: STColumn<UserData>[] = [
+    { title: '编号', index: 'id' },
+    { title: '头像', type: 'img', width: 60, index: 'picture.thumbnail' },
+    {
+      title: '姓名',
+      index: 'name.last',
+      format: (item, _col, index) => `${index + 1}: ${item.name.last} ${item.name.first}`,
+      sort: true,
+    },
+    {
+      title: '国家',
+      index: 'nat',
+      filter: {
+        menus: [
+          { text: '中国', value: 'CH' },
+          { text: '美国', value: 'US' },
+          { text: '德国', value: 'DE' },
+        ],
+      },
+      sort: true,
+    },
+    {
+      title: '性别',
+      index: 'gender',
+      filter: {
+        menus: [
+          { text: 'male', value: 'male' },
+          { text: 'female', value: 'female' },
+        ],
+        multiple: false,
+      },
+      sort: true,
+    },
+    { title: '注册时间', type: 'date', index: 'registered' },
+  ];
+}
编号姓名年龄
编号1姓名name 1年龄23Button
编号2姓名name 2年龄25Button
编号3姓名name 3年龄23Button
可展开

使用 #expand 模板实现可展开,允许接收 itemindexcolumn 三个值。附加可实现:嵌套子表格。

expand codeexpand code
import { Component } from '@angular/core';
+import { STColumn, STData } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-st-expand',
+  template: `
+    <st [data]="users" [columns]="columns" [expand]="expand" expandRowByClick expandAccordion>
+      <ng-template #expand let-item let-index="index" let-column="column">
+        {{ item.description }}
+      </ng-template>
+    </st>
+  `,
+})
+export class ComponentsStExpandComponent {
+  users: STData[] = Array(10)
+    .fill({})
+    .map((_, idx) => ({
+      id: idx + 1,
+      name: `name ${idx + 1}`,
+      age: Math.ceil(Math.random() * 10) + 20,
+      // 是否显示展开按钮
+      showExpand: idx !== 0,
+      description: `${idx + 1}. My name is John Brown, I am 32 years old, living in New York No. 1 Lake Park.`,
+    }));
+  columns: STColumn[] = [
+    { title: '编号', index: 'id' },
+    { title: '姓名', index: 'name' },
+    { title: '年龄', index: 'age' },
+    {
+      buttons: [
+        {
+          text: 'Button',
+        },
+      ],
+    },
+  ];
+}
编号姓名年龄自定义
编号1姓名name 1年龄23自定义tooltip: 23-0
编号2姓名name 2年龄24自定义tooltip: 24-1
编号3姓名name 3年龄26自定义tooltip: 26-2
自定义列

创建一个带有 st-row="custom-name"ng-template,并在列描述 render: 'custom-name' 指定名称;模板允许接收 itemindexcolumn 三个值。

如果指定 type="title" 表示是对标题自定义列。附加可实现:表头分组。

expand codeexpand code
import { Component } from '@angular/core';
+import { STColumn, STData } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-st-render',
+  template: `
+    <div class="mb-md">
+      <nz-checkbox-group
+        [(ngModel)]="customColumns"
+        name="customColumns"
+        (ngModelChange)="st.resetColumns({ emitReload: true })"
+      ></nz-checkbox-group>
+    </div>
+    <st #st [data]="users" [columns]="columns">
+      <ng-template st-row="customTitle" type="title" let-c>
+        {{ c.title.text }}
+        <span nz-dropdown [nzDropdownMenu]="menuTpl" nzTrigger="click" [nzClickHide]="false" nzPlacement="bottomRight">
+          <i nz-icon nzType="down"></i>
+        </span>
+        <nz-dropdown-menu #menuTpl="nzDropdownMenu">
+          <div class="ant-table-filter-dropdown p-sm">
+            <input type="text" nz-input placeholder="Search name" [(ngModel)]="searchValue" name="searchValue" class="width-sm mr-sm" />
+            <button nz-button [nzType]="'primary'" (click)="st.load(2)">Search</button>
+          </div>
+        </nz-dropdown-menu>
+      </ng-template>
+      <ng-template st-row="custom" let-item let-index="index">
+        <span nz-tooltip [nzTooltipTitle]="'年龄:' + item.age">tooltip: {{ item.age }}-{{ index }}</span>
+      </ng-template>
+    </st>
+  `,
+})
+export class ComponentsStRenderComponent {
+  searchValue?: string;
+  users: STData[] = Array(10)
+    .fill({})
+    .map((_, idx) => {
+      return {
+        id: idx + 1,
+        name: `name ${idx + 1}`,
+        age: Math.ceil(Math.random() * 10) + 20,
+      };
+    });
+  columns: STColumn[] = [
+    { title: '编号', index: 'id' },
+    { title: '姓名', index: 'name', iif: () => this.isChoose('name') },
+    { title: '年龄', index: 'age', iif: () => this.isChoose('age') },
+    {
+      title: '自定义',
+      renderTitle: 'customTitle',
+      render: 'custom',
+      iif: () => this.isChoose('custom'),
+    },
+  ];
+  customColumns = [
+    { label: '姓名', value: 'name', checked: true },
+    { label: '年龄', value: 'age', checked: true },
+    { label: '自定义', value: 'custom', checked: true },
+  ];
+
+  isChoose(key: string): boolean {
+    return !!this.customColumns.find(w => w.value === key && w.checked);
+  }
+}
序号编号姓名年龄操作区
序号1编号1姓名name 1年龄30操作区EditDrawer更多
序号2编号2姓名name 2年龄22操作区EditDrawer更多
序号3编号3姓名name 3年龄26操作区EditDrawer更多
自定义按钮组

透过简单的配置产生一组日常按钮组(目标组件示例:DemoModalComponentDemoDrawerComponent)。

对话框由ModalHelper处理,抽屉由DrawerHelper处理。

expand codeexpand code
import { Component, ViewChild } from '@angular/core';
+
+import { DemoDrawerComponent, DemoModalComponent } from '@shared';
+
+import { STChange, STColumn, STComponent, STData } from '@delon/abc/st';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-st-buttons',
+  template: ` <st #st [data]="users" [columns]="columns" (change)="change($event)"></st> `
+})
+export class ComponentsStButtonsComponent {
+  @ViewChild('st') readonly st!: STComponent;
+  constructor(private message: NzMessageService) {}
+
+  users: STData[] = Array(10)
+    .fill({})
+    .map((_, idx) => ({
+      id: idx + 1,
+      name: `name ${idx + 1}`,
+      age: Math.ceil(Math.random() * 10) + 20
+    }));
+  columns: STColumn[] = [
+    { title: '序号', type: 'no' },
+    { title: '编号', index: 'id' },
+    { title: '姓名', index: 'name' },
+    { title: '年龄', index: 'age' },
+    {
+      title: '操作区',
+      buttons: [
+        {
+          text: i => (i.ok ? 'Click' : 'Edit'),
+          icon: i => ({ type: i.ok ? 'edit' : 'delete' }),
+          className: i => (i.ok ? 'text-error' : null),
+          type: 'modal',
+          modal: {
+            component: DemoModalComponent
+          },
+          click: (i, modal) => {
+            this.message.success(`重新加载页面,回传值:${JSON.stringify(modal)}`);
+            // 触发更新按钮的文本、颜色、Icon
+            this.st.setRow(i, { ok: !i.ok });
+          }
+        },
+        {
+          text: 'Drawer',
+          type: 'drawer',
+          drawer: {
+            title: '编辑',
+            component: DemoDrawerComponent
+          },
+          click: (_record, modal) => this.message.success(`重新加载页面,回传值:${JSON.stringify(modal)}`)
+        },
+        {
+          icon: 'check-circle',
+          click: record => this.message.info(`check-${record.name}`),
+          iif: record => record.id % 2 === 0,
+          iifBehavior: 'disabled',
+          tooltip: `Is disabled button`
+        },
+        {
+          icon: 'delete',
+          type: 'del',
+          pop: {
+            title: 'Yar you sure?',
+            okType: 'danger',
+            icon: 'star'
+          },
+          click: (record, _modal, comp) => {
+            this.message.success(`成功删除【${record.name}】`);
+            comp!.removeRow(record);
+          },
+          iif: record => record.id % 2 === 0
+        },
+        {
+          text: '更多',
+          children: [
+            {
+              text: record => (record.id === 1 ? `过期` : `正常`),
+              click: record => this.message.error(`${record.id === 1 ? `过期` : `正常`}【${record.name}】`)
+            },
+            {
+              text: `审核`,
+              click: record => this.message.info(`check-${record.name}`),
+              iif: record => record.id % 2 === 0,
+              iifBehavior: 'disabled',
+              tooltip: 'This is tooltip'
+            },
+            {
+              type: 'divider'
+            },
+            {
+              text: `重新开始`,
+              icon: 'edit',
+              click: record => this.message.success(`重新开始【${record.name}】`)
+            }
+          ]
+        }
+      ]
+    }
+  ];
+
+  change(e: STChange): void {
+    console.log(e);
+  }
+}
编号自定义头像邮箱
编号1自定义头像邮箱aaa10@qq.com
编号2自定义头像邮箱aaa2@qq.com
编号3自定义头像邮箱aaa7@qq.com
自定义小部件

类型为 widget 自定义小部件,例如点击头像处理,查看源代码

expand codeexpand code
import { Component, ViewChild } from '@angular/core';
+import { STColumn, STComponent } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-st-widget',
+  template: `
+    <div class="mb-md">
+      <button (click)="st.clear()" nz-button>Clear Data</button>
+      <button (click)="st.reload()" nz-button>Reload Data</button>
+      <button (click)="st.clearStatus(); st.reload()" nz-button>Clear Status</button>
+      <button (click)="changeImg()" nz-button>Change Img Data</button>
+    </div>
+    <st #st [data]="url" [columns]="columns"></st>
+  `,
+})
+export class ComponentsStWidgetComponent {
+  url = `/users?total=100`;
+  @ViewChild('st', { static: false }) private st!: STComponent;
+  columns: STColumn[] = [
+    { title: '编号', index: 'id', width: 80 },
+    {
+      title: '自定义头像',
+      type: 'widget',
+      widget: { type: 'img', params: ({ record }) => ({ img: record.picture.thumbnail }) },
+      width: 150,
+    },
+    { title: '邮箱', index: 'email' },
+  ];
+
+  changeImg(): void {
+    this.st.setRow(
+      0,
+      { picture: { thumbnail: 'https://ng-alain.com/assets/img/logo-color.svg' } },
+      { refreshSchema: true, emitReload: false },
+    );
+  }
+}
编号头像邮箱firstlast
编号1头像邮箱aaa7@qq.comfirstfirst-12lastlast-7
编号2头像邮箱aaa5@qq.com
编号3头像邮箱aaa8@qq.comfirstfirst-16lastlast-9
编号4头像邮箱aaa10@qq.comfirstfirst-17lastlast-10
编号5头像邮箱aaa1@qq.comlastlast-6
  • 共 2 条
  • 1
表格行/列合并

表格支持行/列合并,使用 onCell 进行设置,若返回 colSpan 或者 rowSpan 设值为 0 时,设置的表格不会渲染。

expand codeexpand code
import { Component } from '@angular/core';
+
+import { STColumn, STData, STOnCellResult } from '@delon/abc/st';
+
+// In the fifth row, other columns are merged into first column
+// by setting it's colSpan to be 0
+const sharedOnCell = (_: STData, index: number): STOnCellResult => {
+  if (index === 1) {
+    return { colSpan: 0 };
+  }
+
+  return {};
+};
+
+@Component({
+  selector: 'components-st-colspan-rowspan',
+  template: ` <st #st [data]="url" [ps]="5" [req]="{ params: params }" [columns]="columns" bordered size="middle">
+  </st>`
+})
+export class ComponentsStColspanRowspanComponent {
+  url = `/users?total=2&field=list`;
+  params = { a: 1, b: 2 };
+
+  columns: STColumn[] = [
+    { title: '编号', index: 'id', sort: true, width: 100 },
+    { title: '头像', type: 'img', index: 'picture.thumbnail', width: 60 },
+    {
+      title: '邮箱',
+      index: 'email',
+      onCell: (_, index) => ({
+        colSpan: index === 1 ? 5 : 1
+      })
+    },
+    {
+      title: 'first',
+      index: 'name.first',
+      sort: true,
+      className: 'text-center',
+      onCell: (_, index) => {
+        if (index === 3) {
+          return { rowSpan: 2 };
+        }
+        // These two are merged into above cell
+        if (index === 4) {
+          return { rowSpan: 0 };
+        }
+        if (index === 1) {
+          return { colSpan: 0 };
+        }
+
+        return {};
+      }
+    },
+    { title: 'last', index: 'name.last', onCell: sharedOnCell }
+  ];
+}
编号1编号2编号3编号4编号5编号6编号7编号8编号8编号8编号8编号8姓名10姓名11年龄12
编号11编号21编号31编号41编号51编号61编号71编号81编号81编号81编号81编号81姓名10name 1姓名11name 1年龄1228
编号12编号22编号32编号42编号52编号62编号72编号82编号82编号82编号82编号82姓名10name 2姓名11name 2年龄1227
编号13编号23编号33编号43编号53编号63编号73编号83编号83编号83编号83编号83姓名10name 3姓名11name 3年龄1225
固定列

对于列数很多的数据,可以使用 leftright 固定前后的列,横向滚动查看其它数据,需要和 scroll.x 配合使用。

固定列使用了 sticky 属性,浏览器支持情况可以参考这里

  • 若列头与内容不对齐或出现列重复,请指定列的宽度 width

  • 建议指定 scroll.x 为大于表格宽度的固定值或百分比。注意,且非固定列宽度之和不要超过 scroll.x

expand codeexpand code
import { Component } from '@angular/core';
+import { STColumn, STData } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-st-fixed',
+  template: ` <st [data]="users" [columns]="columns" [scroll]="{ x: '1300px' }"></st> `,
+})
+export class ComponentsStFixedComponent {
+  users: STData[] = Array(10)
+    .fill({})
+    .map((_, idx) => {
+      return {
+        id: idx + 1,
+        name: `name ${idx + 1}`,
+        age: Math.ceil(Math.random() * 10) + 20,
+      };
+    });
+  columns: STColumn[] = [
+    { title: '编号1', index: 'id', fixed: 'left', width: 100 },
+    { title: '编号2', index: 'id', fixed: 'left', width: 100 },
+    { title: '编号3', index: 'id', fixed: 'left', width: 100 },
+    { title: '编号4', index: 'id' },
+    { title: '编号5', index: 'id' },
+    { title: '编号6', index: 'id' },
+    { title: '编号7', index: 'id' },
+    { title: '编号8', index: 'id' },
+    { title: '编号8', index: 'id' },
+    { title: '编号8', index: 'id' },
+    { title: '编号8', index: 'id' },
+    { title: '编号8', index: 'id' },
+    { title: '姓名10', index: 'name', fixed: 'right', width: 100 },
+    { title: '姓名11', index: 'name', fixed: 'right', width: 100 },
+    { title: '年龄12', index: 'age', fixed: 'right', width: 100 },
+  ];
+}
编号Other
头像邮箱姓名
firstlast
编号1头像邮箱aaa4@qq.comfirstfirst-16lastlast-8
编号2头像邮箱aaa7@qq.comfirstfirst-16lastlast-2
编号3头像邮箱aaa3@qq.comfirstfirst-20lastlast-4
  • 共 2 条
  • 1
表头分组

columns[n] 可以内嵌 children,以渲染分组表头。

expand codeexpand code
import { Component } from '@angular/core';
+import { STColumn } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-st-grouping-columns',
+  template: ` <st #st [data]="url" [req]="{ params: params }" [columns]="columns" bordered size="middle"> </st>`,
+})
+export class ComponentsStGroupingColumnsComponent {
+  url = `/users?total=2&field=list`;
+  params = { a: 1, b: 2 };
+  columns: STColumn[] = [
+    { title: '编号', index: 'id', sort: true, width: 100 },
+    {
+      title: 'Other',
+      children: [
+        { title: '头像', type: 'img', index: 'picture.thumbnail', width: 60 },
+        { title: '邮箱', index: 'email' },
+        {
+          title: '姓名',
+          sort: true,
+          children: [
+            { title: 'first', index: 'name.first', sort: true },
+            { title: 'last', index: 'name.last' },
+          ],
+        },
+      ],
+    },
+  ];
+}
The header
编号头像邮箱电话注册时间
编号1头像邮箱aaa4@qq.com电话phone-96588注册时间2023-10-31 13:23
编号2头像邮箱aaa9@qq.com电话phone-56615注册时间2023-10-31 13:23
编号3头像邮箱aaa4@qq.com电话phone-82202注册时间2023-10-31 13:23
The footer
响应式

小屏幕下将以响应模式堆叠显示,responsiveHideHeaderFooter 属性可以使大屏幕不显示头和尾,反之。

expand codeexpand code
import { Component } from '@angular/core';
+import { STColumn } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-st-responsive',
+  template: ` <st
+    [data]="url"
+    [req]="{ params: params }"
+    [columns]="columns"
+    header="The header"
+    footer="The footer"
+    responsiveHideHeaderFooter
+  >
+  </st>`,
+})
+export class ComponentsStResponsiveComponent {
+  url = `/users?total=100`;
+  params = { a: 1, b: 2 };
+  columns: STColumn[] = [
+    { title: '编号', index: 'id' },
+    { title: '头像', type: 'img', width: 60, index: 'picture.thumbnail' },
+    { title: '邮箱', index: 'email' },
+    { title: '电话', index: 'phone' },
+    { title: '注册时间', type: 'date', index: 'registered' },
+  ];
+}
行号编号性别SumAverageMinMaxCustom
行号1编号1性别Sum55Average55Min55Max55Custom55
行号2编号2性别Sum86Average86Min86Max86Custom86
行号3编号3性别Sum90Average90Min90Max90Custom90
合计3 个123177559055
性别平均值77
统计

支持 countdistinctCountsumaveragemaxmin、自定义统计方法。

expand codeexpand code
import { Component } from '@angular/core';
+import { STColumn, STData } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-st-statistical',
+  template: `
+    <button nz-button (click)="data = []">Clean Data</button>
+    <st #st [data]="data" [columns]="columns" [body]="bodyTpl">
+      <ng-template #bodyTpl let-s>
+        <ng-container *ngIf="st.count > 0">
+          <tr>
+            <td>合计</td>
+            <td>{{ s.len.text }} 个</td>
+            <td>{{ s.dc.text }}</td>
+            <td class="text-right">{{ s.sum.text }}</td>
+            <td class="text-right">{{ s.avg.text }}</td>
+            <td class="text-right">{{ s.min.text }}</td>
+            <td class="text-right">{{ s.max.text }}</td>
+            <td class="text-right">{{ s.custom.text }}</td>
+          </tr>
+          <tr class="bg-grey-lighter">
+            <td colspan="3">性别平均值</td>
+            <td class="text-right">{{ s.sum.value / s.len.value | price }}</td>
+            <td colspan="4"></td>
+          </tr>
+        </ng-container>
+      </ng-template>
+    </st>
+  `,
+})
+export class ComponentsStStatisticalComponent {
+  data: STData[] = Array(100)
+    .fill({})
+    .map((_, idx) => ({
+      id: idx + 1,
+      price: ~~(Math.random() * 100),
+      age: ~~(Math.random() * 100) > 50 ? '女' : '男',
+    }));
+  columns: STColumn[] = [
+    { title: '行号', type: 'no' },
+    { title: '编号', index: 'id', statistical: 'count', key: 'len' },
+    { title: '性别', index: 'age', statistical: 'distinctCount', key: 'dc' },
+    { title: 'Sum', index: 'price', type: 'currency', statistical: 'sum', key: 'sum' },
+    { title: 'Average', index: 'price', type: 'currency', statistical: 'average', key: 'avg' },
+    { title: 'Min', index: 'price', type: 'currency', statistical: 'min', key: 'min' },
+    { title: 'Max', index: 'price', type: 'currency', statistical: 'max', key: 'max' },
+    {
+      title: 'Custom',
+      index: 'price',
+      type: 'currency',
+      statistical: { type: values => ({ value: values[0], text: `**${values[0]}` }), currency: false },
+      key: 'custom',
+    },
+  ];
+}
编号价格1价格2价格3价格4价格5价格6价格7价格8价格9价格10
虚拟滚动

虚拟滚动,结合 cdk scrolling 的虚拟滚动,用于巨量数据加载。可以通过获得 cdkVirtualScrollViewport 进行进一步操作,见本示例及 API

expand codeexpand code
import { AfterViewInit, Component, DestroyRef, ViewChild, inject } from '@angular/core';
+import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
+
+import { STColumn, STComponent, STPage } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-st-virtual',
+  template: `
+    <button nz-button (click)="scrollToIndex(200)">Scroll To Index 200</button>
+    <st #st [data]="data" [columns]="columns" [page]="page" virtualScroll [scroll]="{ x: '1300px', y: '240px' }"></st>
+  `
+})
+export class ComponentsStVirtualComponent implements AfterViewInit {
+  private destroy$ = inject(DestroyRef);
+  @ViewChild('st', { static: false }) st!: STComponent;
+
+  page: STPage = {
+    front: false,
+    show: false
+  };
+  data: Array<{ id: number; price: number }> = Array(2000)
+    .fill({})
+    .map((_, idx) => ({
+      id: idx + 1,
+      price: ~~(Math.random() * 100)
+    }));
+  columns: STColumn[] = [
+    { title: '编号', index: 'id', width: 100 },
+    { title: '价格1', index: 'price', width: 100 },
+    { title: '价格2', index: 'price', width: 100 },
+    { title: '价格3', index: 'price', width: 100 },
+    { title: '价格4', index: 'price', width: 100 },
+    { title: '价格5', index: 'price', width: 100 },
+    { title: '价格6', index: 'price', width: 100 },
+    { title: '价格7', index: 'price', width: 100 },
+    { title: '价格8', index: 'price', width: 100 },
+    { title: '价格9', index: 'price', width: 100 },
+    { title: '价格10', index: 'price', width: 100 }
+  ];
+
+  scrollToIndex(index: number): void {
+    this.st.cdkVirtualScrollViewport?.scrollToIndex(index);
+  }
+
+  ngAfterViewInit(): void {
+    this.st.cdkVirtualScrollViewport?.scrolledIndexChange.pipe(takeUntilDestroyed(this.destroy$)).subscribe(data => {
+      console.log('scroll index to', data);
+    });
+  }
+}
编号头像邮箱电话数字货币注册时间
编号1头像邮箱e1@qq.com电话phone - 1数字13,325,815货币13,325,815注册时间2023-10-31 13:23
编号2头像邮箱e2@qq.com电话phone - 2数字18,207,466货币18,207,466注册时间2023-10-31 13:23
编号3头像邮箱e3@qq.com电话phone - 3数字13,304,122货币13,304,122注册时间2023-10-31 13:23
导出Excel

将表格数据保存为 Excel。

expand codeexpand code
import { Component, ViewChild } from '@angular/core';
+import { STColumn, STComponent, STData } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-st-export',
+  template: `
+    <button nz-button (click)="st.export()">Export</button>
+    <button nz-button (click)="st.export(true)">Export Filtered Data</button>
+    <button nz-button (click)="st.export(data, { filename: 'via-data.xlsx', sheetname: 'user' })">Export via data</button>
+    <st #st [data]="data" [columns]="columns" class="mt-sm"></st>
+  `,
+})
+export class ComponentsStExportComponent {
+  @ViewChild('st', { static: false }) st!: STComponent;
+  data: STData[] = Array(10000)
+    .fill({})
+    .map((_, index) => ({
+      id: index + 1,
+      picture: {
+        thumbnail: `https://dummyimage.com/100x100&text=${Math.min(index + 1, 30)}`,
+      },
+      email: `e${index + 1}@qq.com`,
+      phone: `phone - ${index + 1}`,
+      price: Math.ceil(Math.random() * 10000000) + 10000000,
+      registered: new Date(),
+    }));
+  columns: STColumn[] = [
+    { title: '编号', index: 'id' },
+    {
+      title: '头像',
+      type: 'img',
+      width: 60,
+      index: 'picture.thumbnail',
+      exported: false,
+    },
+    { title: '邮箱', index: 'email' },
+    { title: '电话', index: 'phone' },
+    {
+      title: '数字',
+      index: 'price',
+      type: 'number',
+      sort: {
+        compare: (a, b) => a.price - b.price,
+      },
+    },
+    { title: '货币', index: 'price', type: 'currency' },
+    { title: '注册时间', type: 'date', index: 'registered' },
+  ];
+}
编号头像邮箱电话佣金注册时间
编号1头像邮箱aaa2@qq.com电话phone-93578佣金6,121,906注册时间2023-10-31 13:23
编号2头像邮箱aaa2@qq.com电话phone-81956佣金8,552,887注册时间2023-10-31 13:23
编号3头像邮箱aaa6@qq.com电话phone-30539佣金9,860,414注册时间2023-10-31 13:23
  • 共 2 条
  • 1
调整尺寸

基于 nz-resizable 调整表头宽度。

  • 注意:不要忘记在 src/styles 下导入 nz-resizable Less 样式文件(@import 'ng-zorro-antd/resizable/style/entry.less';

  • 不支持多表头

expand codeexpand code
import { Component } from '@angular/core';
+import { STChange, STColumn } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-st-resizable',
+  template: `
+    <st
+      [data]="url"
+      [columns]="columns"
+      [widthMode]="{ type: 'strict' }"
+      resizable
+      (change)="onChange($event)"
+    ></st>
+  `,
+})
+export class ComponentsStResizableComponent {
+  url = `/users?total=2&field=list`;
+  columns: STColumn[] = [
+    { title: '编号', index: 'id', width: 80, resizable: false },
+    { title: '头像', type: 'img', width: 60, index: 'picture.thumbnail' },
+    { title: '邮箱', index: 'email', width: 150, resizable: { minWidth: 150 } },
+    { title: '电话', index: 'phone' },
+    { title: '佣金', index: 'price', type: 'currency' },
+    { title: '注册时间', type: 'date', index: 'registered' },
+  ];
+
+  onChange({ type, resize }: STChange): void {
+    if (type === 'resize') {
+      console.log(resize?.width);
+    }
+  }
+}

API

st

成员说明类型默认值全局配置
[columns]列描述STColumn[]--
[data]数据源string, STData[], Observable<STData[]>--
[req]请求体配置STReq-
[res]返回体配置STRes-
[pi]当前页码number1
[ps]每页数量,默认:10number10
[total]当前总数据,在服务器渲染时需要传入,默认:0number0-
[page]分页器配置STPage-
[noResult]无数据时显示内容string,TemplateRef<void>-
[bordered]是否显示边框booleanfalse
[size]table大小'small','middle','default''default'
[widthMode]设置表格宽度模式STWidthMode-
[rowClassName]表格行的类名(record: STData, index: number) => string-
[clickRowClassName]点击行切换类名string, STClickRowClassNameType-
[loading]页面是否加载中,当指定 null 由 st 受控boolean | nullnull-
[loadingIndicator]加载指示符TemplateRef<void>-
[loadingDelay]延迟显示加载效果的时间(防止闪烁)number0
[scroll]横向或纵向支持滚动,也可用于指定滚动区域的宽高度:{ x: "300px", y: "300px" }{ y?: string; x?: string }--
[virtualScroll]是否启用虚拟滚动模式,与 [nzScroll] 配合使用booleanfalse
[virtualItemSize]虚拟滚动时每一列的高度,与 cdk itemSize 相同number54
[virtualMaxBufferPx]缓冲区最大像素高度,与 cdk maxBufferPx 相同number200
[virtualMinBufferPx]缓冲区最小像素高度,低于该值时将加载新结构,与 cdk minBufferPx 相同number100
[virtualForTrackBy]虚拟滚动数据 TrackByFunction 函数TrackByFunction<T>-
[singleSort]单排序规则
若不指定,则返回:columnName=ascend|descend
若指定,则返回:sort=columnName.(ascend|descend)
STSingleSortnull
[multiSort]是否多排序,当 sort 多个相同值时自动合并,建议后端支持时使用boolean, STMultiSortfalse
[header]表格标题string,TemplateRef<void>--
[showHeader]是否显示列头行booleantrue-
[footer]表格底部string,TemplateRef<void>--
[bodyHeader]表格顶部额外内容,一般用于添加合计行TemplateRef<STStatisticalResults>--
[body]表格额外内容,一般用于添加合计行TemplateRef<STStatisticalResults>--
[widthConfig]表头分组时指定每列宽度,与 STColumn 的 width 不可混用string[]--
[expandRowByClick]通过点击行来展开子行booleanfalse
[expandAccordion]手风琴模式booleanfalse
[expand]当前列是否包含展开按钮,当数据源中包括 expand 表示展开状态TemplateRef<void>--
[responsive]是否开启响应式booleantrue
[responsiveHideHeaderFooter]是否在小屏幕下才显示顶部与底部booleanfalse
[resizable]当前表格所有列的调整表头配置项,不支持多表头STResizable, boolean--
(change)变化时回调,包括:pipscheckboxradiosortfilterclickdblClickexpand 变动EventEmitter<STChange>--
(error)异常时回调EventEmitter<STError>--

组件属性与方法

名称说明
[filteredData]获取过滤后所有数据
- 本地数据:包含排序、过滤后不分页数据
- 远程数据:不传递 pips 两个参数
[count]获取当前页的条目数
[list]获取当前页的数据列表
resetColumns(options?: STResetColumnsOption)重置列描述
load(pi = 1, extraParams?: any, options?: STLoadOptions)加载指定页
reload(extraParams?: any, options?: STLoadOptions)刷新当前页
reset(extraParams?: any, options?: STLoadOptions)重置且重新设置 pi1,包含单多选、排序、过滤状态(同默认状态一并清除)
addRow(data: STData | STData[], options?: { index?: number })添加行
removeRow(data: STData | STData[] | number)移除行
setRow(index: number | STData, item: STData, options?: { refreshSchema?: boolean; emitReload?: boolean })修改行数据,支持部分字段更新
pureItem(itemOrIndex: STData | number)返回纯净数据,st 内部会维护一组用于缓存的数据,这部分数据可能会影响后端
clear(cleanStatus = true)清空所有数据
clearStatus()清空所有状态(包含单多选、排序、过滤状态)
clearCheck()清除所有 checkbox
clearRadio()清除所有 radio
export(newData?: STData[] | true, opt?: STExportOptions)导出Excel,确保已经导入 XlsxModule

一些细节:

  • extraParams 若不传递表示保留原始值

  • STLoadOptions.merge 是否合并模式,即 extraParams 跟新值合并而非替代

  • STLoadOptions.toTop 是否跳转至顶部,若不指定由 page.toTop 来决定

使用方式

@Component({
+  template: `
+    <st #st></st>
+    <button (click)="st.load()"></button>
+    <button (click)="st.reset()">重置</button>
+  `
+})
+class TestComponent {
+  @ViewChild('st', { static: false }) comp: STComponent;
+  // this.comp.load();
+}

STReq

成员说明类型默认值全局配置
[type]分页类型,page 使用 pips 组合;skip 使用 skiplimit 组合page,skippage
[params]额外请求参数,默认自动附加 pips 至URLany--
[ignoreParamNull]是否忽略参数中 nullundefindBooleanfalse
[method]请求方法'POST','GET','HEAD','PUT','PATCH','DELETE''GET'
[body]请求体 body,当 method: POST 时有效any--
[headers]请求体 headersany-
[reName]重命名请求参数 pipsSTReqReNameType, ((result: any, options: { pi: number; ps: number; total: number }) => { total: number; list: T[] }){ pi: 'pi', ps: 'ps', skip: 'skip', limit: 'limit' }
[allInBody]是否将请求所有参数数据都放入 body 当中(url 地址本身参数除外),仅当 method: 'POST' 时有效booleanfalse
[lazyLoad]是否延迟加载数据,即渲染结束后不会主动发起请求booleanfalse
[process]请求前数据处理(requestOptions: STRequestOptions) => STRequestOptions-

STRes

成员说明类型默认值全局配置
[reName]重命名返回参数 totallist,支持 a.b.c 的嵌套写法{total:string;list:string}-
[process]数据预处理(data: STData[], rawData?: any) => STData[]-

STPage

成员说明类型默认值全局配置
[front]前端分页,当 dataany[]Observable<any[]> 有效booleantrue
[zeroIndexed]后端分页是否采用0基索引,只在data类型为string时有效booleanfalse
[position]指定分页显示的位置top,bottom,bothbottom
[placement]指定分页分页方向left,center,rightright
[show]是否显示分页器booleantrue
[showSize]是否显示分页器中改变页数booleanfalse
[pageSizes]分页器中每页显示条目数下拉框值number[][10, 20, 30, 40, 50]
[showQuickJumper]是否显示分页器中快速跳转booleanfalse
[total]是否显示总数据量,字符串表示自定义模板(支持三个变量名:total 表示数据总量、range[0]range[1] 表示当前数据范围;变量名统一使用双花括号包裹)boolean, stringfalse
[toTop]切换分页时返回顶部booleantrue
[toTopOffset]返回顶部偏移值number100
[itemRender]用于自定义页码的结构,用法参照 Pagination 组件TemplateRef<{ $implicit: 'page' \| 'prev' \| 'next', page: number }>-
[simple]当添加该属性时,显示为简单分页boolean-

STError

成员说明类型默认值
[type]异常类型,req 表示HTTP请求req-
[error]异常内容any-

STChange

成员说明类型默认值
[type]变更类型,包括:loadedpipscheckboxradiosortfilterfilterChangeclickdblClickexpandSTChangeType-
[pi]当前页码number-
[ps]每页数量number-
[total]数据总量number-
[loaded]loaded 参数STData[]-
[checkbox]checkbox 参数STData[]-
[radio]radio 参数STData-
[sort]排序参数STChangeSort-
[filter]过滤参数STColumn-
[click]行点击参数STChangeRowClick-
[dblClick]行双击参数STChangeRowClick-
[expand]expand 参数STData-

STChangeSort

成员说明类型默认值
[value]当前列排序状态ascend,descend-
[map]所有列排序状态{ [key: string]: string }-
[column]行描述STColumn-

STChangeRowClick

成员说明类型默认值
[e]当前行事件Event-
[item]当前行数据STData-
[index]当前行索引number-

STExportOptions

成员说明类型默认值
[sheetname]工作薄名称stringSheet1
[filename]保存的文件名stringexport.xslx
[callback]保存前的回调(wb: WorkBook) => void-

STSingleSort

成员说明类型默认值全局配置
[key]请求参数名stringsort
[nameSeparator]列名与状态间分隔符string.

STMultiSort

成员说明类型默认值全局配置
[key]请求参数名stringsort
[separator]不同属性间分隔符string-
[nameSeparator]列名与状态间分隔符string.
[arrayParam]是否以数组的形式传递参数
true 表示使用 url?sort=name.asc&sort=age.desc 形式
false 表示使用 url?sort=name.asc-age.desc 形式
booleanfalse
[keepEmptyKey]是否保持空值的键名
true 表示不管是否有排序都会发送 key 键名
false 表示无排序动作时不会发送 key 键名
booleantrue
[global]仅限全局配置项有效,是否全局多排序模式
true 表示所有 st 默认为多排序
false 表示需要为每个 st 添加 multiSort 才会视为多排序模式
booleantrue

STData

成员说明类型默认值
[checked]选择框或单选框状态值boolean-
[disabled]选择框或单选框 disabledboolean-
[expand]是否展开状态boolean-
[showExpand]是否显示展开按钮boolean-
[className]行样式string-

STColumn

成员说明类型默认值
[title]列名string, STColumnTitle-
[i18n]列名i18nstring-
[type]no 行号
checkbox 多选
radio 单选
link 链接,可触发 click
img 图像且居中
number 数字且居右
currency 货币且居右
date 日期格式且居中
badge 徽标
tag 标签
ynboolean类型徽章化 document
使用 cell 组件渲染,见cell
widget 自定义小部件来渲染列
string-
[cell]使用 cell 组件渲染,见cellCellOptions | ((record: T, column: STColumn) => CellOptions)-
[index]列数据在数据项中对应的 key,支持 a.b.c 的嵌套写法string, string[]-
[render]自定义渲染IDstring, TemplateRef, TemplateRef<{ $implicit: STData; index: number }>-
[renderTitle]标题自定义渲染IDstring, TemplateRef<void>, TemplateRef<{ $implicit: STColumn; index: number }>-
[default]当不存在数据(值类型为 undefined)时以默认值替代string-
[buttons]按钮组STColumnButton[]-
[maxMultipleButton]配置最多显示多少个按钮,多余部分自动生成至 更多 下面STColumnMaxMultipleButton, number-
[width]列宽(数字型表示 px 值,注意: 若固定列必须是数字),例如:10010%100pxstring,number-
[fixed]固定前后列,当指定时务必指定 width 否则视为无效left,right-
[format]格式化列值(item: STData, col: STColumn, index: number) => string-
[className]class 属性值,例如:text-center 居中; text-right 居右; text-error 异常色,更多参考样式工具类string-
[colSpan]合并列number-
[onCell]设置单元格属性(item: T, index: number) => STOnCellResult;-
[sort]排序配置项,远程数据配置优先规则:
true 表示允许排序,且若数据源为本地数据时会自动生成 compare: (a, b) => a[index] - b[index] 方法
string 表示远程数据排序相对应 key
true,string,STColumnSort-
[filter]过滤配置项STColumnFilter-
[selections]选择功能配置STColumnSelection[]-
[numberDigits]数字格式,type=number 有效string-
[dateFormat]日期格式,type=date 有效stringyyyy-MM-dd HH:mm
[currency]货币格式选项,type=currency 有效STColumnCurrency-
[yn]type=yn 有效STColumnYn-
[exported]是否允许导出booleantrue
[acl]ACL权限,等同 can() 参数值ACLCanType-
[click]链接回调(record: STData, instance?: STComponent) => void-
[badge]徽标配置项STColumnBadge-
[tag]徽标配置项STColumnTag-
[enum]枚举配置项{ [key: string]: string; [key: number]: string }-
[widget]小部件配置项STWidgetColumn-
[noIndex]行号索引开始值number,(item: STData, col: STColumn, idx: number) => number1
[iif]条件表达式
1、仅赋值 columns 时执行一次
2、可调用 resetColumns() 再一次触发
(item: STColumn) => boolean-
[statistical]统计信息STStatisticalType,STStatistical-
[resizable]调整表头配置项,不支持多表头STResizable, boolean--
[children]多表头STColumn[]-
[safeType]安全渲染方式,支持全局配置text,html,safeHtmlsafeHtml
[customRequest]覆盖默认的请求行为,可以自定义自己的请求实现,例如:Graphql,支持全局配置(options: STCustomRequestOptions) => Observable<any>-

STColumnTitle

成员说明类型默认值
[text]列标题,texti18n 必选其一string-
[i18n]列标题i18n主键,texti18n 必选其一string-
[optional]标签可选信息string-
[optionalHelp]标签可选帮助string-

STColumnSort

成员说明类型默认值
[default]排序的受控属性ascend,descend-
[compare]本地数据的排序函数,使用一个函数(参考 Array.sort 的 compareFunction),null 忽略本地排序,但保持排序功能(a: any, b: any) => number, null-
[key]远程数据的排序时后端相对应的KEY,默认使用 index 属性
multiSort: false 时:key: 'name' => ?name=1&pi=1
multiSort: true 允许多个排序 key 存在,或使用 STMultiSort 指定多列排序key合并规则
string-
[reName]远程数据的排序时后端相对应的VALUE
{ ascend: '0', descend: '1' } 结果 ?name=1&pi=1
{ ascend: 'asc', descend: 'desc' } 结果 ?name=desc&pi=1
{ ascend?: string, descend?: string }-

STColumnFilter

成员说明类型默认值
[type]类型,keyword 文本框形式default,keyword,number,date,customdefault
[menus]表头的筛选菜单项,至少一项才会生效STColumnFilterMenu[]-
[fn]本地数据的筛选函数(filter: STColumnFilterMenu, record: STData) => boolean-
[default]标识数据是否经过过滤,筛选图标会高亮boolean-
[icon]自定义 fiter 图标
type='default' 默认 filter
type='keyword' 默认 search
string | STIconfilter
[multiple]是否多选booleantrue
[confirmText]filter 确认按钮文本string-
[clearText]filter 清除按钮文本string-
[key]远程数据的过滤时后端相对应的KEY,默认使用 index 属性string-
[reName]远程数据的过滤时后端相对应的VALUE(list: STColumnFilterMenu[], col: STColumn) => Object-
[custom]自定义模版TemplateRef<{ $implicit: STColumnFilter; col: STColumn; handle: STColumnFilterHandle }>-
[showOPArea]是否显示操作区域booleantrue
[placeholder]在文字框中显示提示讯息booleantrue
[number]类型为 number 的配置项Object-
[date]类型为 date 的配置项Object-

STColumnFilterMenu

成员说明类型默认值
[text]文本
type: 'keyword' 时表示 placeholder
string-
[value]any-
[checked]是否选中boolean-
[acl]权限,等同 can() 参数值ACLCanType-

STColumnButton

成员说明类型默认值
[text]文本与图标共存string | (record: T, btn: STColumnButton) => string-
[icon]图标与文本共存string | STIcon | ((record: T, btn: STColumnButton) => STIcon | null | undefined)-
[i18n]文本i18nstring-
[type]按钮类型none,del,modal,static,drawer,link-
[click]点击回调;函数: type=modal 只会在 确认 时触发且 modal 参数有效
reload: 重新刷新当前页
load: 重新加载数据,并重置页码为:1
(record: STData, modal?: any, instance?: STComponent) => void | reload-
[pop]是否需要气泡确认框boolean, string, STColumnButtonPopfalse
[modal]模态框配置STColumnButtonModal-
[drawer]抽屉配置STColumnButtonDrawer-
[children]下拉菜单,当存在时以 dropdown 形式渲染;只支持一级STColumnButton[]-
[acl]ACL权限,等同 can() 参数值ACLCanType-
[iif]自定义条件表达式(item: STData, btn: STColumnButton, column: STColumn) => boolean() => true
[iifBehavior]表达式 false 值时渲染方式hide,disabledhide
[tooltip]按钮文字提示string-
[className]按钮 class 属性值,例如:text-error 异常色,更多参考样式工具类string | ((record: T, btn: STColumnButton) => NgClassType | null | undefined)-

STIcon

成员说明类型默认值全局配置
[type]图标类型string--
[theme]图标主题风格outline | twotone | filloutline
[spin]是否有旋转动画booleanfalse
[twoToneColor]仅适用双色图标,设置双色图标的主要颜色,仅对当前 icon 生效string-
[iconfont]指定来自 IconFont 的图标类型string-

STColumnButtonModal

成员说明类型默认值全局配置
[component]目标组件对象any--
[params]目标组件的接收参数对象(record: STData) => Object--
[paramsName]目标组件的接收参数名,若目标组件接收值为空时,检查 global-config.module.ts 全局设置stringrecord
[size]对话框大小,支持数字类型'sm','md','lg','xl''lg'
[exact]是否精准(默认:true),若返回值非空值(nullundefined)视为成功,否则视为错误booleantrue
[includeTabs]是否包裹标签页,修复模态包含标签间距问题boolean--
[modalOptions]对话框 ModalOptions 参数any-

STColumnButtonDrawer

成员说明类型默认值全局配置
[title]标题any--
[component]目标组件对象any--
[params]目标组件的接收参数对象(record: STData) => Object--
[paramsName]目标组件的接收参数名,若目标组件接收值为空时,检查 global-config.module.ts 全局设置stringrecord
[size]抽屉大小,支持数字类型'sm','md','lg','xl''md'
[drawerOptions]抽屉 NzDrawerOptions 参数any-
[footer]是否包含底部工具条booleantrue
[footerHeight]底部工具条高度number55

STColumnSelection

成员说明类型默认值
[text]文本string-
[select]选择项点击回调,允许对参数 data.checked 进行操作(data: STData[]) => void-
[acl]ACL权限,等同 can() 参数值ACLCanType-

STColumnYn

成员说明类型默认值
[truth]真值条件anytrue
[yes]徽章 true 时文本string
[no]徽章 false 时文本string
[mode]显示模式full,icon,texticon

STcolumnCurrency

成员说明类型默认值
[type]货币渲染类型commas, megacommas
[format]CurrencyService.formatCurrencyFormatOptions-

STColumnBadge

成员说明类型默认值
[text]文本string-
[color]徽标颜色值success,processing,default,error,warning-
[tooltip]文字提示string-

STColumnTag

成员说明类型默认值
[text]文本string-
[color]Tag颜色值string-
[tooltip]文字提示string-

STWidgetColumn

成员说明类型默认值
[type]指定类型名,可通过定义 STWidgetRegistry 来定制,例如string-
[params]目标组件的参数(options: { record: STData; column: STColumn }) => {}-

STWidthMode

成员说明类型默认值全局配置
[type]类型strict,defaultdefault
[strictBehavior]strict 的行为类型wrap,truncatetruncate

STStatistical

成员说明类型默认值
[type]统计类型STStatisticalType | STStatisticalFn-
[digits]保留小数位数number2
[currency]是否需要货币格式化,默认当 typeSTStatisticalFnsumaveragemaxmin 时为 trueboolean-

STStatisticalFn

(
+  values: number[],
+  col: STColumn,
+  list: STData[],
+  rawData?: any,
+) => STStatisticalResult

STResizable

成员说明类型默认值
[disabled]Disable resizebooleantrue
[bounds]调整尺寸的边界window, parent, ElementRef<HTMLElement>window
[maxWidth]最大宽度(超过边界部分忽略)number360
[minWidth]最小宽度number60
[preview]开启预览booleantrue

Theme

成员说明默认值
@nz-table-img-radius图像圆角大小4px
@nz-table-img-margin-right图像右边距4px
@nz-table-img-max-height图像最大高度32px
@nz-table-img-max-width图像最大宽度32px
@nz-table-even-background行奇偶背景色none
@nz-table-rep-max-width可视区域小于时触发
@nz-table-rep-min-width可视区域大于时触发
@nz-table-rep-header-background响应式下标题背景颜色@border-color-split
@nz-table-rep-even-background响应式下奇偶颜色#f9f9f9
@nz-table-rep-column-name-color响应式下文本颜色rgba(0, 0, 0, 0.5)
@nz-table-rep-column-name-text-align响应式下标题文本对齐方式right
@nz-table-rep-column-name-width响应式下标题宽度100px
@nz-table-rep-column-name-padding-right响应式下标题与内容右边距8px
@table-row-hover-bg行悬停背景色#fafafa
@st-btn-disabled-color禁用按钮的文本颜色rgba(0, 0, 0, 0.25)
@st-title-optional-color标题可选文本颜色rgba(0, 0, 0, 0.35)
@st-resizable-handle-width拖拽宽度1px
@st-resizable-handle-height拖拽高度60%
@st-resizable-handle-color拖拽颜色@border-color-base
\ No newline at end of file diff --git a/components/st/zh/index.html b/components/st/zh/index.html new file mode 100644 index 000000000..314d6680f --- /dev/null +++ b/components/st/zh/index.html @@ -0,0 +1,1228 @@ +st - NG-ALAIN

表格
IMPORT MODULE

st 并不是在创造另一个表格组件,而是在 nz-table 基础上以可配置形式渲染表格,在中后台里这种方式可以满足绝大多数场景,但又可以更易地管理表格渲染动作。

关于数据源

data 支持三种不同格式数据源,整体分为:URL和静态数据两类;但可以透过参数的配置达到不同的效果,同时有非常多参数可通过 AlainSTConfig 重置默认值,使整个 st 组件模板达到极简。

URL

指的是通过一个 URL 字符串来获取数据。

  • 通过 req.paramsreq.method 等参数解决请求数据格式问题

  • 通过 res.reName 重置数据 key 而无须担心后端数据格式是否满足 st 需求

  • 通过 res.process 可以对表格渲染前对数据进一步优化

  • 通过 page.zeroIndexed 可以调整 http 请求时 pi 参数是否遵循 0 基索引,默认情况下为 1 基索引

  • 若返回体的值是数组类型,则强制不分页

  • 使用 _HttpClient 发起请求,因此满足 AlainThemeConfig 的配置也适用

静态数据

指的是通过指定值为 STData[]Observable<STData[]>,二者都遵循以下规则:

  • page.front 前端分页,默认:true

    • truest 根据 data 长度受控分页,包括:排序、过滤等

    • false 由用户通过 totaldata 参数受控分页,并维护 (change) 当分页变更时重新加载数据

  • page.show 是否显示分页器;当未指定时若 ps>total 情况下自动不显示

常见问题

Cannot read property 'text' of undefined

若组件已经加载完毕,此时如果再次改变 columns 时可能会出现该错误,这是因为 st 每次只会根据 columns 对数据处理,当列定义发生改变后可能会因为列定义与现有数据无法配对,可能需要使用 this.st.resetColumns({ columns: [], emitReload: true }) 来更新列定义并重新加载数据。

某列显示INVALID DATA

当在解析列数据时抛出异常时,会强制显示 INVALID DATA,例如当某指定 type: 'number' 时,而实际获得值为非有效数字型时就会抛出异常。

代码演示

编号头像邮箱电话佣金(单位:元)注册时间
编号1头像邮箱aaa8@qq.com电话phone-50807佣金(单位:元)1,692,090注册时间2023-10-31 13:23
编号2头像邮箱aaa10@qq.com电话phone-98941佣金(单位:元)9,476,587注册时间2023-10-31 13:23
编号3头像邮箱aaa3@qq.com电话phone-92877佣金(单位:元)8,112,574注册时间2023-10-31 13:23
  • 共 2 条
  • 1
基本

快速生成表格;利用 res 可以适配后端数据格式。

expand codeexpand code
import { Component, ViewChild } from '@angular/core';
+
+import { STColumn, STComponent } from '@delon/abc/st';
+
+interface User {
+  id: number;
+  picture: {
+    thumbnail: string;
+  };
+  name: {
+    last: string;
+    first: string;
+  };
+  nat: string;
+  gender: string;
+  email: string;
+  phone: string;
+  price: number;
+  registered: Date;
+}
+
+@Component({
+  selector: 'components-st-basic',
+  template: `
+    <button nz-button nzType="primary" (click)="setRow()">setRow Method</button>
+    <st #st [widthMode]="{ type: 'strict' }" [data]="url" [req]="{ params: params }" [columns]="columns"></st>
+  `
+})
+export class ComponentsStBasicComponent {
+  url = `/users?total=2&field=list`;
+  params = { a: 1, b: 2 };
+  @ViewChild('st', { static: false }) private st!: STComponent;
+  columns: Array<STColumn<User>> = [
+    { title: '编号', index: 'id', width: 80 },
+    { title: '头像', index: 'picture.thumbnail', type: 'img', width: 60 },
+    { title: '邮箱', index: 'email', width: 80 },
+    { title: '电话', index: 'phone' },
+    {
+      title: { text: '佣金', optional: '(单位:元)', optionalHelp: '计算公式=订单金额 * 0.6%' },
+      index: 'price',
+      type: 'currency'
+    },
+    { title: '注册时间', type: 'date', index: 'registered' }
+  ];
+
+  setRow(): void {
+    this.st.setRow(0, { price: 100000000 });
+  }
+}
姓名年龄状态DateCustom
编号姓名name 1年龄25状态ProcessingDate2023-10-31 13:23Customname 1
编号姓名name 2年龄23状态ProcessingDate2023-10-31 13:23Customname 2
编号姓名name 3年龄22状态WarningDate2023-10-31 13:23Customname 3
自定义数据

data 属性支持 STData[]Observable 数据类型。

expand codeexpand code
import { Component, OnInit, TemplateRef, ViewChild } from '@angular/core';
+import { of, delay } from 'rxjs';
+
+import { STChange, STColumn, STColumnFilter, STColumnFilterHandle, STData } from '@delon/abc/st';
+import { dateTimePickerUtil } from '@delon/util/date-time';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-st-custom-data',
+  template: `
+    <div class="mb-md">
+      <button (click)="st.clear()" nz-button>Clear Data</button>
+      <button (click)="st.reload()" nz-button>Reload Data</button>
+      <button (click)="st.clearStatus(); st.reload()" nz-button>Clear Status</button>
+      <button (click)="st.setRow(0, { className: 'text-success' })" nz-button>Update Row ClassName</button>
+    </div>
+    <st #st [data]="users" [columns]="columns" (change)="change($event)"> </st>
+    <ng-template #customFilter let-f let-col="col" let-handle="handle">
+      <div class="p-lg">
+        <p>Custom body</p>
+        <button nz-button nzType="primary" (click)="close(f, handle, true)">confirm</button>
+        <button nz-button (click)="close(f, handle, false)">reset</button>
+      </div>
+    </ng-template>
+  `
+})
+export class ComponentsStCustomDataComponent implements OnInit {
+  users: STData[] = [];
+  @ViewChild('customFilter', { static: true }) readonly customFilter!: TemplateRef<{
+    $implicit: STColumnFilter;
+    col: STColumn;
+    handle: STColumnFilterHandle;
+  }>;
+  columns: STColumn[] = [];
+
+  constructor(private msg: NzMessageService) {}
+
+  ngOnInit(): void {
+    this.columns = [
+      {
+        title: '编号',
+        index: 'id',
+        type: 'checkbox',
+        selections: [
+          {
+            text: '小于25岁',
+            select: data => data.forEach(item => (item.checked = item.age < 25))
+          },
+          {
+            text: '大于25岁',
+            select: data => data.forEach(item => (item.checked = item.age >= 25))
+          }
+        ]
+      },
+      {
+        title: '姓名',
+        index: 'name',
+        sort: {
+          compare: (a, b) => a.name.length - b.name.length
+        },
+        filter: {
+          type: 'keyword',
+          placeholder: '输入后按回车搜索',
+          fn: (filter, record) => !filter.value || record.name.indexOf(filter.value) !== -1
+        }
+      },
+      {
+        title: '年龄',
+        index: 'age',
+        sort: {
+          compare: (a, b) => a.age - b.age
+        },
+        filter: {
+          type: 'number',
+          placeholder: '范围 10 ~ 100 之间',
+          number: {
+            min: 10,
+            max: 100
+          },
+          fn: (filter, record) => (filter.value != null ? record.age >= +filter.value : true)
+        }
+      },
+      {
+        title: '状态',
+        type: 'badge',
+        index: 'status',
+        badge: {
+          1: { text: 'Success', color: 'success' },
+          2: { text: 'Error', color: 'error' },
+          3: { text: 'Processing', color: 'processing' },
+          4: { text: 'Default', color: 'default' },
+          5: { text: 'Warning', color: 'warning' }
+        },
+        filter: {
+          menus: [
+            { text: 'Success', value: 1 },
+            { text: 'Error', value: 2 }
+          ],
+          fn: (filter, record) => record.age >= filter.value[0] && record.age <= filter.value[1],
+          multiple: true
+        }
+      },
+      {
+        title: 'Date',
+        index: 'created',
+        type: 'date',
+        filter: {
+          type: 'date',
+          date: {
+            mode: 'date',
+            showToday: false,
+            disabledDate: dateTimePickerUtil.disabledAfterDate()
+          },
+          fn: () => true
+        }
+      },
+      {
+        title: 'Custom',
+        index: 'name',
+        filter: {
+          type: 'custom',
+          icon: { type: 'search', theme: 'outline' },
+          custom: this.customFilter,
+          showOPArea: false,
+          fn: (filter, record) => !filter.value || record.name.indexOf(filter.value) !== -1
+        }
+      }
+    ];
+    const data = Array(100)
+      .fill({})
+      .map((_, idx) => ({
+        id: idx + 1,
+        name: `name ${idx + 1}`,
+        age: Math.ceil(Math.random() * 10) + 20,
+        status: Math.floor(Math.random() * 5) + 1,
+        created: new Date()
+      }));
+    of(data)
+      .pipe(delay(500))
+      .subscribe(res => (this.users = res));
+  }
+
+  close(f: STColumnFilter, handle: STColumnFilterHandle, result: boolean): void {
+    this.msg.info(`Process result: ${result}${result ? '(only name 2)' : ''}`);
+    f.menus = [{ value: result ? 'name 2' : null }];
+    handle.close(result);
+  }
+
+  change(e: STChange): void {
+    console.log(e);
+  }
+}
行号姓名年龄HTMLTexttagbadgeEnumyn
行号1姓名name 1年龄19HTML1 OtherText<strong>1</strong> Othertag成功badge进行中Enumyn
行号2姓名name 2年龄26HTML2 OtherText<strong>2</strong> Othertag警告badge错误Enumyn
行号3姓名name 3年龄33HTML3 OtherText<strong>3</strong> Othertag警告badge默认Enumyn
列类型

支持十种不同列类型:行号、多选、单选、徽标、标签、图片、数字、货币、日期、布尔徽章、枚举。也可以使用自定义列完成更复杂渲染。

expand codeexpand code
import { Component } from '@angular/core';
+
+import { STColumn, STColumnBadge, STColumnTag, STData } from '@delon/abc/st';
+
+const BADGE: STColumnBadge = {
+  1: { text: '成功', color: 'success' },
+  2: { text: '错误', color: 'error', tooltip: 'TIPS' },
+  3: { text: '进行中', color: 'processing' },
+  4: { text: '默认', color: 'default' },
+  5: { text: '警告', color: 'warning' }
+};
+const TAG: STColumnTag = {
+  1: { text: '成功', color: 'green' },
+  2: { text: '错误', color: 'red' },
+  3: { text: '进行中', color: 'blue' },
+  4: { text: '默认', color: '' },
+  5: { text: '警告', color: 'orange', tooltip: 'TIPS' }
+};
+const r = (min: number, max: number): number => Math.floor(Math.random() * (max - min + 1) + min);
+
+@Component({
+  selector: 'components-st-type',
+  template: `
+    <button nz-button (click)="reload()">Reload</button>
+    <st #st [data]="users" [columns]="columns" [page]="{ position: 'both' }"></st>
+  `
+})
+export class ComponentsStTypeComponent {
+  users: STData[] = [];
+  columns: STColumn[] = [
+    { title: '行号', type: 'no' },
+    { title: '姓名', index: 'name' },
+    { title: '年龄', index: 'age', type: 'number' },
+    { title: 'HTML', index: 'html', safeType: 'safeHtml' },
+    { title: 'Text', index: 'html', safeType: 'text' },
+    { title: 'tag', index: 'tag', type: 'tag', tag: TAG },
+    { title: 'badge', index: 'badge', type: 'badge', badge: BADGE },
+    { title: 'Enum', index: 'enum', type: 'enum', enum: { 1: '壹', 2: '贰', 3: '叁' } },
+    { title: 'yn', index: 'yn', type: 'yn' }
+  ];
+
+  reload(): void {
+    this.users = Array(10)
+      .fill({})
+      .map((_, idx) => ({
+        id: idx + 1,
+        name: `name ${idx + 1}`,
+        age: r(10, 50),
+        tag: r(1, 5),
+        badge: r(1, 5),
+        enum: r(1, 3),
+        yn: [true, false][r(1, 5) % 2],
+        html: `<strong>${idx + 1}</strong> Other`
+      }));
+  }
+
+  constructor() {
+    this.reload();
+  }
+}
编号类型头像邮箱电话佣金人民币写法Site可用注册时间
编号1类型普通头像邮箱aaa10@qq.com电话****3285佣金6,503,432人民币写法陆佰柒拾叁万捌仟零陆拾柒元整Sitehttps://5846139.com/可用注册时间2023-10-31 13:23:35
编号2类型普通头像邮箱aaa5@qq.com电话****3378佣金1,319,963人民币写法陆佰零壹万肆仟玖佰贰拾肆元整Sitehttps://3514849.com/可用注册时间2023-10-31 13:23:35
编号3类型会员头像邮箱aaa7@qq.com电话****3131佣金9,108,979人民币写法玖佰捌拾捌万零柒佰玖拾玖元整Sitehttps://5566010.com/可用注册时间2023-10-31 13:23:35
  • 共 2 条
  • 1
单元格

使用 cell 组件更丰富的渲染。

expand codeexpand code
import { Component, ViewChild } from '@angular/core';
+import { STColumn, STComponent } from '@delon/abc/st';
+import type { CellOptions } from '@delon/abc/cell';
+
+@Component({
+  selector: 'components-st-cell',
+  template: `
+    <button nz-button nzType="primary" (click)="setRow()">setRow Method</button>
+    <st #st [widthMode]="{ type: 'strict' }" [data]="url" [req]="{ params: params }" [columns]="columns"></st>
+  `,
+})
+export class ComponentsStCellComponent {
+  url = `/users?total=2&field=list`;
+  params = { a: 1, b: 2 };
+  @ViewChild('st', { static: false }) private st!: STComponent;
+  columns: STColumn[] = [
+    { title: '编号', index: 'id', width: 55 },
+    { title: '类型', index: 'type', width: 60, cell: { enum: { 1: '普通', 2: '会员', 3: '管理' } } },
+    { title: '头像', index: 'picture.thumbnail', width: 64, cell: { type: 'img' } },
+    { title: '邮箱', index: 'email', width: 120 },
+    { title: '电话', index: 'phone', cell: { mask: '999****9999' } },
+    {
+      title: { text: '佣金', optionalHelp: '计算公式=订单金额 * 0.6%' },
+      index: 'price',
+      cell: {
+        type: 'currency',
+        unit: '元'
+      }
+    },
+    {
+      title: '人民币写法',
+      index: 'total',
+      cell: {
+        type: 'cny'
+      }
+    },
+    {
+      title: 'Site',
+      index: 'website',
+      width: 100,
+      cell: record => {
+        return {
+          tooltip: record.website,
+          link: {
+            url: record.website
+          }
+        } as CellOptions;
+      }
+    },
+    { title: '可用', index: 'disabled', width: 64, cell: { type: 'boolean' } },
+    { title: '注册时间', index: 'registered', width: 180, cell: { type: 'date' } }
+  ];
+
+  setRow(): void {
+    this.st.setRow(0, { price: 100000000 });
+  }
+}
头像邮箱电话注册时间
编号头像邮箱aaa10@qq.com电话phone-80704注册时间2023-10-31 13:23
编号头像邮箱aaa4@qq.com电话phone-16317注册时间2023-10-31 13:23
编号头像邮箱aaa3@qq.com电话phone-9777注册时间2023-10-31 13:23
可选择

利用 change 监听所选的数据。

expand codeexpand code
import { Component } from '@angular/core';
+
+import { STChange, STColumn, STData } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-st-checkbox',
+  template: ` <div class="mb-md">
+      <button nz-button (click)="st.checkAll(true)">All</button>
+      <button nz-button (click)="st.clearCheck()">Clean</button>
+    </div>
+    <st
+      #st
+      [data]="url"
+      [columns]="columns"
+      [req]="{ params: params }"
+      [res]="{ process: dataProcess }"
+      (change)="change($event)"
+    ></st>`
+})
+export class ComponentsStCheckboxComponent {
+  url = `/users?total=100`;
+  params = { a: 1, b: 2 };
+  columns: STColumn[] = [
+    { title: '编号', index: 'id.value', type: 'checkbox' },
+    { title: '头像', type: 'img', width: 60, index: 'picture.thumbnail' },
+    { title: '邮箱', index: 'email' },
+    { title: '电话', index: 'phone' },
+    { title: '注册时间', type: 'date', index: 'registered' }
+  ];
+  change(e: STChange): void {
+    console.log('change', e);
+  }
+  dataProcess(data: STData[]): STData[] {
+    return data.map((i, index) => {
+      i.disabled = index === 0;
+      if (index === 1) i.checked = true;
+      return i;
+    });
+  }
+}
编号头像邮箱电话注册时间
编号头像邮箱aaa7@qq.com电话phone-13994注册时间2023-10-31 13:23
编号头像邮箱aaa10@qq.com电话phone-12011注册时间2023-10-31 13:23
编号头像邮箱aaa5@qq.com电话phone-3953注册时间2023-10-31 13:23
单选框

利用 change 监听所选的数据。

expand codeexpand code
import { Component } from '@angular/core';
+
+import { STChange, STColumn, STData } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-st-radio',
+  template: ` <div class="mb-md">
+      <button nz-button (click)="st.setRow(1, { checked: true })">Radio second</button>
+      <button nz-button (click)="st.clearRadio()">Clean</button>
+    </div>
+    <st
+      #st
+      [data]="url"
+      [columns]="columns"
+      [req]="{ params: params }"
+      [res]="{ process: dataChange }"
+      (change)="change($event)"
+    ></st>`
+})
+export class ComponentsStRadioComponent {
+  url = `/users?total=300`;
+  params = { a: 1, b: 2 };
+  columns: STColumn[] = [
+    { title: '编号', index: 'id', type: 'radio', width: 70 },
+    { title: '头像', type: 'img', width: 60, index: 'picture.thumbnail' },
+    { title: '邮箱', index: 'email' },
+    { title: '电话', index: 'phone' },
+    { title: '注册时间', type: 'date', index: 'registered' }
+  ];
+
+  change(ret: STChange): void {
+    console.log('change', ret);
+  }
+
+  dataChange(data: STData[]): STData[] {
+    return data.map((i, index) => {
+      i.disabled = index === 0;
+      i.hidden = index === 1;
+      return i;
+    });
+  }
+}
编号邮箱电话注册时间
编号1邮箱aaa4@qq.com电话phone-61393注册时间2023-10-31 13:23
编号2邮箱aaa2@qq.com电话phone-88627注册时间2023-10-31 13:23
编号3邮箱aaa8@qq.com电话phone-64329注册时间2023-10-31 13:23
  • 共 2 条
  • 1
右键菜单

利用 contextmenu 实现点击整个表格右键菜单。

expand codeexpand code
import { Component } from '@angular/core';
+import { STColumn, STContextmenuFn, STContextmenuItem, STContextmenuOptions } from '@delon/abc/st';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-st-contextmenu',
+  template: `
+    <st
+      #st
+      [widthMode]="{ type: 'strict' }"
+      [data]="url"
+      [req]="{ params: params }"
+      [columns]="columns"
+      [contextmenu]="handleContextmenu"
+    ></st>
+  `,
+})
+export class ComponentsStContextmenuComponent {
+  url = `/users?total=2&field=list`;
+  params = { a: 1, b: 2 };
+  columns: STColumn[] = [
+    { title: '编号', index: 'id', width: 80 },
+    { title: '邮箱', index: 'email', width: 80 },
+    { title: '电话', index: 'phone' },
+    { title: '注册时间', type: 'date', index: 'registered' },
+  ];
+
+  constructor(private msg: NzMessageService) {}
+
+  private show(options: STContextmenuOptions, item: STContextmenuItem): void {
+    if (options.type === 'head') {
+      this.msg.info(`点击标题,下标为:${options.colIndex},当前按钮为:${item.text}`);
+    } else {
+      this.msg.info(`点击单元格,行下标为:${options.rowIndex},列下标为:${options.colIndex},当前按钮为:${item.text}`);
+    }
+  }
+
+  handleContextmenu: STContextmenuFn = (options): STContextmenuItem[] => {
+    if (options.type === 'head') {
+      return [
+        {
+          text: 'Click me',
+          fn: item => this.show(options, item),
+        },
+      ];
+    }
+    return [
+      {
+        text: 'Edit',
+        fn: item => this.show(options, item),
+      },
+      {
+        text: 'View',
+        fn: item => this.show(options, item),
+      },
+      {
+        text: 'Next',
+        children: [
+          {
+            text: 'Nothing',
+            fn: item => this.show(options, item),
+          },
+          {
+            text: 'asdf',
+            fn: item => this.show(options, item),
+          },
+        ],
+      },
+    ];
+  };
+}
编号姓名年龄启用OP
编号1姓名name 1年龄23启用YOPEdit
编号2姓名name 2年龄25启用NOPEdit
编号3姓名name 3年龄28启用YOPEdit
可编辑行

定制带行编辑功能的表格,自由操作行内容。

expand codeexpand code
import { Component, ViewChild } from '@angular/core';
+import { STColumn, STComponent, STData } from '@delon/abc/st';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-st-edit-row',
+  template: `
+    <st #st [data]="users" [columns]="columns">
+      <ng-template st-row="nameTpl" let-item let-index="index">
+        <input *ngIf="item.edit" nz-input [ngModel]="item.name" (ngModelChange)="st.setRow(index, { name: $event })" />
+        <ng-container *ngIf="!item.edit">{{ item.name }}</ng-container>
+      </ng-template>
+      <ng-template st-row="ageTpl" let-item let-index="index">
+        <nz-input-number *ngIf="item.edit" [ngModel]="item.age" (ngModelChange)="st.setRow(index, { age: $event })"></nz-input-number>
+        <ng-container *ngIf="!item.edit">{{ item.age }}</ng-container>
+      </ng-template>
+      <ng-template st-row="enabledTpl" let-item let-index="index">
+        <nz-switch *ngIf="item.edit" [ngModel]="item.enabled" (ngModelChange)="st.setRow(index, { enabled: $event })"></nz-switch>
+        <ng-container *ngIf="!item.edit">{{ item.enabled ? 'Y' : 'N' }}</ng-container>
+      </ng-template>
+    </st>
+  `,
+})
+export class ComponentsStEditRowComponent {
+  @ViewChild('st') private st!: STComponent;
+  users: STData[] = Array(10)
+    .fill({})
+    .map((_, idx) => {
+      return {
+        id: idx + 1,
+        name: `name ${idx + 1}`,
+        age: Math.ceil(Math.random() * 10) + 20,
+        enabled: idx % 2 === 0,
+      };
+    });
+  columns: STColumn[] = [
+    { title: '编号', index: 'id' },
+    { title: '姓名', index: 'name', render: 'nameTpl' },
+    { title: '年龄', index: 'age', render: 'ageTpl' },
+    { title: '启用', index: 'enabled', render: 'enabledTpl' },
+    {
+      title: 'OP',
+      buttons: [
+        {
+          text: `Edit`,
+          iif: i => !i.edit,
+          click: i => this.updateEdit(i, true),
+        },
+        {
+          text: `Save`,
+          iif: i => i.edit,
+          click: i => {
+            this.submit(i);
+          },
+        },
+        {
+          text: `Cancel`,
+          iif: i => i.edit,
+          click: i => this.updateEdit(i, false),
+        },
+      ],
+    },
+  ];
+
+  constructor(private msg: NzMessageService) {}
+
+  private submit(i: STData): void {
+    this.msg.success(JSON.stringify(this.st.pureItem(i)));
+    this.updateEdit(i, false);
+  }
+
+  private updateEdit(i: STData, edit: boolean): void {
+    this.st.setRow(i, { edit }, { refreshSchema: true });
+  }
+}
编号头像邮箱电话注册时间
编号1头像邮箱aaa3@qq.com电话phone-58102注册时间2023-10-31 13:23
编号2头像邮箱aaa2@qq.com电话phone-32605注册时间2023-10-31 13:23
编号3头像邮箱aaa6@qq.com电话phone-51910注册时间2023-10-31 13:23
搜索表单

配合 load() & reset() 实现搜索表单。

expand codeexpand code
import { Component } from '@angular/core';
+import { STColumn } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-st-form',
+  template: `
+    <div class="mb-md">
+      <input nz-input [(ngModel)]="params.name" name="name" nzPlaceHolder="请输入姓名" style="width: 100px;" class="mr-sm" />
+      <button nz-button (click)="st.load(1)" [nzType]="'primary'">搜索</button>
+      <button nz-button (click)="params = {}; st.reset()">重置</button>
+    </div>
+    <st #st [data]="url" [req]="{ params: params }" [columns]="columns"></st>
+  `,
+})
+export class ComponentsStFormComponent {
+  url = `/users?total=100`;
+  params: { name?: string } = { name: 'asdf' };
+  columns: STColumn[] = [
+    { title: '编号', index: 'id', default: '-' },
+    { title: '头像', type: 'img', width: 60, index: 'picture.thumbnail' },
+    { title: '邮箱', index: 'email' },
+    { title: '电话', index: 'phone' },
+    { title: '注册时间', type: 'date', index: 'registered' },
+  ];
+}
编号邮箱电话
编号1邮箱aaa3@qq.com电话phone-83595
编号2邮箱aaa5@qq.com电话phone-99476
编号3邮箱aaa1@qq.com电话phone-16743
行操作

利用 addRowremoveRowsetRow 方法对行的操作。

打开控制面板了解打印明细。

expand codeexpand code
import { Component } from '@angular/core';
+
+import { STChange, STClickRowClassNameType, STColumn } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-st-row-op',
+  template: ` <button nz-button (click)="st.addRow({ id: 1000, email: 'add@email.com', phone: '123' })"> addRow</button>
+    <button nz-button (click)="st.removeRow(0)"> removeRow index: 0 </button>
+    <button nz-button (click)="st.setRow(0, { className: 'text-success' })"> Via setRow method </button>
+    <st
+      #st
+      [data]="url"
+      [req]="{ params: params }"
+      [columns]="columns"
+      (change)="_click($event)"
+      [clickRowClassName]="clickRowClassName"
+    ></st>`
+})
+export class ComponentsStRowOpComponent {
+  url = `/users?results=3`;
+  params = { a: 1, b: 2 };
+  clickRowClassName: STClickRowClassNameType = { exclusive: true, fn: () => 'text-error' };
+  columns: STColumn[] = [
+    { title: '编号', index: 'id' },
+    { title: '邮箱', index: 'email' },
+    { title: '电话', index: 'phone' }
+  ];
+
+  _click(e: STChange): void {
+    console.log('click', e);
+  }
+}
编号头像姓名国家性别注册时间
编号1头像姓名1: last-8 first-10国家CH性别male注册时间2023-10-31 13:23
编号2头像姓名2: last-5 first-20国家US性别female注册时间2023-10-31 13:23
编号3头像姓名3: last-1 first-19国家DE性别male注册时间2023-10-31 13:23
后端筛选和排序

利用 multiSort 支持多字段排序。

expand codeexpand code
import { Component } from '@angular/core';
+import { STColumn, STData } from '@delon/abc/st';
+
+interface UserData extends STData {
+  name: {
+    last: string;
+    first: string;
+  }
+}
+
+@Component({
+  selector: 'components-st-sort',
+  template: `
+    <button nz-button (click)="st.reset()">重置</button>
+    <st #st [data]="url" [req]="{ params: params }" [columns]="columns" multiSort></st>
+  `,
+})
+export class ComponentsStSortComponent {
+  url = `/users?total=200`;
+  params = { a: 1, b: 2 };
+  columns: STColumn<UserData>[] = [
+    { title: '编号', index: 'id' },
+    { title: '头像', type: 'img', width: 60, index: 'picture.thumbnail' },
+    {
+      title: '姓名',
+      index: 'name.last',
+      format: (item, _col, index) => `${index + 1}: ${item.name.last} ${item.name.first}`,
+      sort: true,
+    },
+    {
+      title: '国家',
+      index: 'nat',
+      filter: {
+        menus: [
+          { text: '中国', value: 'CH' },
+          { text: '美国', value: 'US' },
+          { text: '德国', value: 'DE' },
+        ],
+      },
+      sort: true,
+    },
+    {
+      title: '性别',
+      index: 'gender',
+      filter: {
+        menus: [
+          { text: 'male', value: 'male' },
+          { text: 'female', value: 'female' },
+        ],
+        multiple: false,
+      },
+      sort: true,
+    },
+    { title: '注册时间', type: 'date', index: 'registered' },
+  ];
+}
编号姓名年龄
编号1姓名name 1年龄23Button
编号2姓名name 2年龄29Button
编号3姓名name 3年龄26Button
可展开

使用 #expand 模板实现可展开,允许接收 itemindexcolumn 三个值。附加可实现:嵌套子表格。

expand codeexpand code
import { Component } from '@angular/core';
+import { STColumn, STData } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-st-expand',
+  template: `
+    <st [data]="users" [columns]="columns" [expand]="expand" expandRowByClick expandAccordion>
+      <ng-template #expand let-item let-index="index" let-column="column">
+        {{ item.description }}
+      </ng-template>
+    </st>
+  `,
+})
+export class ComponentsStExpandComponent {
+  users: STData[] = Array(10)
+    .fill({})
+    .map((_, idx) => ({
+      id: idx + 1,
+      name: `name ${idx + 1}`,
+      age: Math.ceil(Math.random() * 10) + 20,
+      // 是否显示展开按钮
+      showExpand: idx !== 0,
+      description: `${idx + 1}. My name is John Brown, I am 32 years old, living in New York No. 1 Lake Park.`,
+    }));
+  columns: STColumn[] = [
+    { title: '编号', index: 'id' },
+    { title: '姓名', index: 'name' },
+    { title: '年龄', index: 'age' },
+    {
+      buttons: [
+        {
+          text: 'Button',
+        },
+      ],
+    },
+  ];
+}
编号姓名年龄自定义
编号1姓名name 1年龄26自定义tooltip: 26-0
编号2姓名name 2年龄26自定义tooltip: 26-1
编号3姓名name 3年龄23自定义tooltip: 23-2
自定义列

创建一个带有 st-row="custom-name"ng-template,并在列描述 render: 'custom-name' 指定名称;模板允许接收 itemindexcolumn 三个值。

如果指定 type="title" 表示是对标题自定义列。附加可实现:表头分组。

expand codeexpand code
import { Component } from '@angular/core';
+import { STColumn, STData } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-st-render',
+  template: `
+    <div class="mb-md">
+      <nz-checkbox-group
+        [(ngModel)]="customColumns"
+        name="customColumns"
+        (ngModelChange)="st.resetColumns({ emitReload: true })"
+      ></nz-checkbox-group>
+    </div>
+    <st #st [data]="users" [columns]="columns">
+      <ng-template st-row="customTitle" type="title" let-c>
+        {{ c.title.text }}
+        <span nz-dropdown [nzDropdownMenu]="menuTpl" nzTrigger="click" [nzClickHide]="false" nzPlacement="bottomRight">
+          <i nz-icon nzType="down"></i>
+        </span>
+        <nz-dropdown-menu #menuTpl="nzDropdownMenu">
+          <div class="ant-table-filter-dropdown p-sm">
+            <input type="text" nz-input placeholder="Search name" [(ngModel)]="searchValue" name="searchValue" class="width-sm mr-sm" />
+            <button nz-button [nzType]="'primary'" (click)="st.load(2)">Search</button>
+          </div>
+        </nz-dropdown-menu>
+      </ng-template>
+      <ng-template st-row="custom" let-item let-index="index">
+        <span nz-tooltip [nzTooltipTitle]="'年龄:' + item.age">tooltip: {{ item.age }}-{{ index }}</span>
+      </ng-template>
+    </st>
+  `,
+})
+export class ComponentsStRenderComponent {
+  searchValue?: string;
+  users: STData[] = Array(10)
+    .fill({})
+    .map((_, idx) => {
+      return {
+        id: idx + 1,
+        name: `name ${idx + 1}`,
+        age: Math.ceil(Math.random() * 10) + 20,
+      };
+    });
+  columns: STColumn[] = [
+    { title: '编号', index: 'id' },
+    { title: '姓名', index: 'name', iif: () => this.isChoose('name') },
+    { title: '年龄', index: 'age', iif: () => this.isChoose('age') },
+    {
+      title: '自定义',
+      renderTitle: 'customTitle',
+      render: 'custom',
+      iif: () => this.isChoose('custom'),
+    },
+  ];
+  customColumns = [
+    { label: '姓名', value: 'name', checked: true },
+    { label: '年龄', value: 'age', checked: true },
+    { label: '自定义', value: 'custom', checked: true },
+  ];
+
+  isChoose(key: string): boolean {
+    return !!this.customColumns.find(w => w.value === key && w.checked);
+  }
+}
序号编号姓名年龄操作区
序号1编号1姓名name 1年龄24操作区EditDrawer更多
序号2编号2姓名name 2年龄29操作区EditDrawer更多
序号3编号3姓名name 3年龄24操作区EditDrawer更多
自定义按钮组

透过简单的配置产生一组日常按钮组(目标组件示例:DemoModalComponentDemoDrawerComponent)。

对话框由ModalHelper处理,抽屉由DrawerHelper处理。

expand codeexpand code
import { Component, ViewChild } from '@angular/core';
+
+import { DemoDrawerComponent, DemoModalComponent } from '@shared';
+
+import { STChange, STColumn, STComponent, STData } from '@delon/abc/st';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-st-buttons',
+  template: ` <st #st [data]="users" [columns]="columns" (change)="change($event)"></st> `
+})
+export class ComponentsStButtonsComponent {
+  @ViewChild('st') readonly st!: STComponent;
+  constructor(private message: NzMessageService) {}
+
+  users: STData[] = Array(10)
+    .fill({})
+    .map((_, idx) => ({
+      id: idx + 1,
+      name: `name ${idx + 1}`,
+      age: Math.ceil(Math.random() * 10) + 20
+    }));
+  columns: STColumn[] = [
+    { title: '序号', type: 'no' },
+    { title: '编号', index: 'id' },
+    { title: '姓名', index: 'name' },
+    { title: '年龄', index: 'age' },
+    {
+      title: '操作区',
+      buttons: [
+        {
+          text: i => (i.ok ? 'Click' : 'Edit'),
+          icon: i => ({ type: i.ok ? 'edit' : 'delete' }),
+          className: i => (i.ok ? 'text-error' : null),
+          type: 'modal',
+          modal: {
+            component: DemoModalComponent
+          },
+          click: (i, modal) => {
+            this.message.success(`重新加载页面,回传值:${JSON.stringify(modal)}`);
+            // 触发更新按钮的文本、颜色、Icon
+            this.st.setRow(i, { ok: !i.ok });
+          }
+        },
+        {
+          text: 'Drawer',
+          type: 'drawer',
+          drawer: {
+            title: '编辑',
+            component: DemoDrawerComponent
+          },
+          click: (_record, modal) => this.message.success(`重新加载页面,回传值:${JSON.stringify(modal)}`)
+        },
+        {
+          icon: 'check-circle',
+          click: record => this.message.info(`check-${record.name}`),
+          iif: record => record.id % 2 === 0,
+          iifBehavior: 'disabled',
+          tooltip: `Is disabled button`
+        },
+        {
+          icon: 'delete',
+          type: 'del',
+          pop: {
+            title: 'Yar you sure?',
+            okType: 'danger',
+            icon: 'star'
+          },
+          click: (record, _modal, comp) => {
+            this.message.success(`成功删除【${record.name}】`);
+            comp!.removeRow(record);
+          },
+          iif: record => record.id % 2 === 0
+        },
+        {
+          text: '更多',
+          children: [
+            {
+              text: record => (record.id === 1 ? `过期` : `正常`),
+              click: record => this.message.error(`${record.id === 1 ? `过期` : `正常`}【${record.name}】`)
+            },
+            {
+              text: `审核`,
+              click: record => this.message.info(`check-${record.name}`),
+              iif: record => record.id % 2 === 0,
+              iifBehavior: 'disabled',
+              tooltip: 'This is tooltip'
+            },
+            {
+              type: 'divider'
+            },
+            {
+              text: `重新开始`,
+              icon: 'edit',
+              click: record => this.message.success(`重新开始【${record.name}】`)
+            }
+          ]
+        }
+      ]
+    }
+  ];
+
+  change(e: STChange): void {
+    console.log(e);
+  }
+}
编号自定义头像邮箱
编号1自定义头像邮箱aaa2@qq.com
编号2自定义头像邮箱aaa6@qq.com
编号3自定义头像邮箱aaa3@qq.com
自定义小部件

类型为 widget 自定义小部件,例如点击头像处理,查看源代码

expand codeexpand code
import { Component, ViewChild } from '@angular/core';
+import { STColumn, STComponent } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-st-widget',
+  template: `
+    <div class="mb-md">
+      <button (click)="st.clear()" nz-button>Clear Data</button>
+      <button (click)="st.reload()" nz-button>Reload Data</button>
+      <button (click)="st.clearStatus(); st.reload()" nz-button>Clear Status</button>
+      <button (click)="changeImg()" nz-button>Change Img Data</button>
+    </div>
+    <st #st [data]="url" [columns]="columns"></st>
+  `,
+})
+export class ComponentsStWidgetComponent {
+  url = `/users?total=100`;
+  @ViewChild('st', { static: false }) private st!: STComponent;
+  columns: STColumn[] = [
+    { title: '编号', index: 'id', width: 80 },
+    {
+      title: '自定义头像',
+      type: 'widget',
+      widget: { type: 'img', params: ({ record }) => ({ img: record.picture.thumbnail }) },
+      width: 150,
+    },
+    { title: '邮箱', index: 'email' },
+  ];
+
+  changeImg(): void {
+    this.st.setRow(
+      0,
+      { picture: { thumbnail: 'https://ng-alain.com/assets/img/logo-color.svg' } },
+      { refreshSchema: true, emitReload: false },
+    );
+  }
+}
编号头像邮箱firstlast
编号1头像邮箱aaa5@qq.comfirstfirst-12lastlast-2
编号2头像邮箱aaa2@qq.com
编号3头像邮箱aaa4@qq.comfirstfirst-16lastlast-8
编号4头像邮箱aaa7@qq.comfirstfirst-17lastlast-9
编号5头像邮箱aaa9@qq.comlastlast-10
  • 共 2 条
  • 1
表格行/列合并

表格支持行/列合并,使用 onCell 进行设置,若返回 colSpan 或者 rowSpan 设值为 0 时,设置的表格不会渲染。

expand codeexpand code
import { Component } from '@angular/core';
+
+import { STColumn, STData, STOnCellResult } from '@delon/abc/st';
+
+// In the fifth row, other columns are merged into first column
+// by setting it's colSpan to be 0
+const sharedOnCell = (_: STData, index: number): STOnCellResult => {
+  if (index === 1) {
+    return { colSpan: 0 };
+  }
+
+  return {};
+};
+
+@Component({
+  selector: 'components-st-colspan-rowspan',
+  template: ` <st #st [data]="url" [ps]="5" [req]="{ params: params }" [columns]="columns" bordered size="middle">
+  </st>`
+})
+export class ComponentsStColspanRowspanComponent {
+  url = `/users?total=2&field=list`;
+  params = { a: 1, b: 2 };
+
+  columns: STColumn[] = [
+    { title: '编号', index: 'id', sort: true, width: 100 },
+    { title: '头像', type: 'img', index: 'picture.thumbnail', width: 60 },
+    {
+      title: '邮箱',
+      index: 'email',
+      onCell: (_, index) => ({
+        colSpan: index === 1 ? 5 : 1
+      })
+    },
+    {
+      title: 'first',
+      index: 'name.first',
+      sort: true,
+      className: 'text-center',
+      onCell: (_, index) => {
+        if (index === 3) {
+          return { rowSpan: 2 };
+        }
+        // These two are merged into above cell
+        if (index === 4) {
+          return { rowSpan: 0 };
+        }
+        if (index === 1) {
+          return { colSpan: 0 };
+        }
+
+        return {};
+      }
+    },
+    { title: 'last', index: 'name.last', onCell: sharedOnCell }
+  ];
+}
编号1编号2编号3编号4编号5编号6编号7编号8编号8编号8编号8编号8姓名10姓名11年龄12
编号11编号21编号31编号41编号51编号61编号71编号81编号81编号81编号81编号81姓名10name 1姓名11name 1年龄1228
编号12编号22编号32编号42编号52编号62编号72编号82编号82编号82编号82编号82姓名10name 2姓名11name 2年龄1229
编号13编号23编号33编号43编号53编号63编号73编号83编号83编号83编号83编号83姓名10name 3姓名11name 3年龄1225
固定列

对于列数很多的数据,可以使用 leftright 固定前后的列,横向滚动查看其它数据,需要和 scroll.x 配合使用。

固定列使用了 sticky 属性,浏览器支持情况可以参考这里

  • 若列头与内容不对齐或出现列重复,请指定列的宽度 width

  • 建议指定 scroll.x 为大于表格宽度的固定值或百分比。注意,且非固定列宽度之和不要超过 scroll.x

expand codeexpand code
import { Component } from '@angular/core';
+import { STColumn, STData } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-st-fixed',
+  template: ` <st [data]="users" [columns]="columns" [scroll]="{ x: '1300px' }"></st> `,
+})
+export class ComponentsStFixedComponent {
+  users: STData[] = Array(10)
+    .fill({})
+    .map((_, idx) => {
+      return {
+        id: idx + 1,
+        name: `name ${idx + 1}`,
+        age: Math.ceil(Math.random() * 10) + 20,
+      };
+    });
+  columns: STColumn[] = [
+    { title: '编号1', index: 'id', fixed: 'left', width: 100 },
+    { title: '编号2', index: 'id', fixed: 'left', width: 100 },
+    { title: '编号3', index: 'id', fixed: 'left', width: 100 },
+    { title: '编号4', index: 'id' },
+    { title: '编号5', index: 'id' },
+    { title: '编号6', index: 'id' },
+    { title: '编号7', index: 'id' },
+    { title: '编号8', index: 'id' },
+    { title: '编号8', index: 'id' },
+    { title: '编号8', index: 'id' },
+    { title: '编号8', index: 'id' },
+    { title: '编号8', index: 'id' },
+    { title: '姓名10', index: 'name', fixed: 'right', width: 100 },
+    { title: '姓名11', index: 'name', fixed: 'right', width: 100 },
+    { title: '年龄12', index: 'age', fixed: 'right', width: 100 },
+  ];
+}
编号Other
头像邮箱姓名
firstlast
编号1头像邮箱aaa5@qq.comfirstfirst-11lastlast-7
编号2头像邮箱aaa9@qq.comfirstfirst-20lastlast-8
编号3头像邮箱aaa4@qq.comfirstfirst-12lastlast-9
  • 共 2 条
  • 1
表头分组

columns[n] 可以内嵌 children,以渲染分组表头。

expand codeexpand code
import { Component } from '@angular/core';
+import { STColumn } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-st-grouping-columns',
+  template: ` <st #st [data]="url" [req]="{ params: params }" [columns]="columns" bordered size="middle"> </st>`,
+})
+export class ComponentsStGroupingColumnsComponent {
+  url = `/users?total=2&field=list`;
+  params = { a: 1, b: 2 };
+  columns: STColumn[] = [
+    { title: '编号', index: 'id', sort: true, width: 100 },
+    {
+      title: 'Other',
+      children: [
+        { title: '头像', type: 'img', index: 'picture.thumbnail', width: 60 },
+        { title: '邮箱', index: 'email' },
+        {
+          title: '姓名',
+          sort: true,
+          children: [
+            { title: 'first', index: 'name.first', sort: true },
+            { title: 'last', index: 'name.last' },
+          ],
+        },
+      ],
+    },
+  ];
+}
The header
编号头像邮箱电话注册时间
编号1头像邮箱aaa2@qq.com电话phone-59206注册时间2023-10-31 13:23
编号2头像邮箱aaa8@qq.com电话phone-43309注册时间2023-10-31 13:23
编号3头像邮箱aaa8@qq.com电话phone-55322注册时间2023-10-31 13:23
The footer
响应式

小屏幕下将以响应模式堆叠显示,responsiveHideHeaderFooter 属性可以使大屏幕不显示头和尾,反之。

expand codeexpand code
import { Component } from '@angular/core';
+import { STColumn } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-st-responsive',
+  template: ` <st
+    [data]="url"
+    [req]="{ params: params }"
+    [columns]="columns"
+    header="The header"
+    footer="The footer"
+    responsiveHideHeaderFooter
+  >
+  </st>`,
+})
+export class ComponentsStResponsiveComponent {
+  url = `/users?total=100`;
+  params = { a: 1, b: 2 };
+  columns: STColumn[] = [
+    { title: '编号', index: 'id' },
+    { title: '头像', type: 'img', width: 60, index: 'picture.thumbnail' },
+    { title: '邮箱', index: 'email' },
+    { title: '电话', index: 'phone' },
+    { title: '注册时间', type: 'date', index: 'registered' },
+  ];
+}
行号编号性别SumAverageMinMaxCustom
行号1编号1性别Sum38Average38Min38Max38Custom38
行号2编号2性别Sum44Average44Min44Max44Custom44
行号3编号3性别Sum46Average46Min46Max46Custom46
合计3 个212842.67384638
性别平均值42.67
统计

支持 countdistinctCountsumaveragemaxmin、自定义统计方法。

expand codeexpand code
import { Component } from '@angular/core';
+import { STColumn, STData } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-st-statistical',
+  template: `
+    <button nz-button (click)="data = []">Clean Data</button>
+    <st #st [data]="data" [columns]="columns" [body]="bodyTpl">
+      <ng-template #bodyTpl let-s>
+        <ng-container *ngIf="st.count > 0">
+          <tr>
+            <td>合计</td>
+            <td>{{ s.len.text }} 个</td>
+            <td>{{ s.dc.text }}</td>
+            <td class="text-right">{{ s.sum.text }}</td>
+            <td class="text-right">{{ s.avg.text }}</td>
+            <td class="text-right">{{ s.min.text }}</td>
+            <td class="text-right">{{ s.max.text }}</td>
+            <td class="text-right">{{ s.custom.text }}</td>
+          </tr>
+          <tr class="bg-grey-lighter">
+            <td colspan="3">性别平均值</td>
+            <td class="text-right">{{ s.sum.value / s.len.value | price }}</td>
+            <td colspan="4"></td>
+          </tr>
+        </ng-container>
+      </ng-template>
+    </st>
+  `,
+})
+export class ComponentsStStatisticalComponent {
+  data: STData[] = Array(100)
+    .fill({})
+    .map((_, idx) => ({
+      id: idx + 1,
+      price: ~~(Math.random() * 100),
+      age: ~~(Math.random() * 100) > 50 ? '女' : '男',
+    }));
+  columns: STColumn[] = [
+    { title: '行号', type: 'no' },
+    { title: '编号', index: 'id', statistical: 'count', key: 'len' },
+    { title: '性别', index: 'age', statistical: 'distinctCount', key: 'dc' },
+    { title: 'Sum', index: 'price', type: 'currency', statistical: 'sum', key: 'sum' },
+    { title: 'Average', index: 'price', type: 'currency', statistical: 'average', key: 'avg' },
+    { title: 'Min', index: 'price', type: 'currency', statistical: 'min', key: 'min' },
+    { title: 'Max', index: 'price', type: 'currency', statistical: 'max', key: 'max' },
+    {
+      title: 'Custom',
+      index: 'price',
+      type: 'currency',
+      statistical: { type: values => ({ value: values[0], text: `**${values[0]}` }), currency: false },
+      key: 'custom',
+    },
+  ];
+}
编号价格1价格2价格3价格4价格5价格6价格7价格8价格9价格10
虚拟滚动

虚拟滚动,结合 cdk scrolling 的虚拟滚动,用于巨量数据加载。可以通过获得 cdkVirtualScrollViewport 进行进一步操作,见本示例及 API

expand codeexpand code
import { AfterViewInit, Component, DestroyRef, ViewChild, inject } from '@angular/core';
+import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
+
+import { STColumn, STComponent, STPage } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-st-virtual',
+  template: `
+    <button nz-button (click)="scrollToIndex(200)">Scroll To Index 200</button>
+    <st #st [data]="data" [columns]="columns" [page]="page" virtualScroll [scroll]="{ x: '1300px', y: '240px' }"></st>
+  `
+})
+export class ComponentsStVirtualComponent implements AfterViewInit {
+  private destroy$ = inject(DestroyRef);
+  @ViewChild('st', { static: false }) st!: STComponent;
+
+  page: STPage = {
+    front: false,
+    show: false
+  };
+  data: Array<{ id: number; price: number }> = Array(2000)
+    .fill({})
+    .map((_, idx) => ({
+      id: idx + 1,
+      price: ~~(Math.random() * 100)
+    }));
+  columns: STColumn[] = [
+    { title: '编号', index: 'id', width: 100 },
+    { title: '价格1', index: 'price', width: 100 },
+    { title: '价格2', index: 'price', width: 100 },
+    { title: '价格3', index: 'price', width: 100 },
+    { title: '价格4', index: 'price', width: 100 },
+    { title: '价格5', index: 'price', width: 100 },
+    { title: '价格6', index: 'price', width: 100 },
+    { title: '价格7', index: 'price', width: 100 },
+    { title: '价格8', index: 'price', width: 100 },
+    { title: '价格9', index: 'price', width: 100 },
+    { title: '价格10', index: 'price', width: 100 }
+  ];
+
+  scrollToIndex(index: number): void {
+    this.st.cdkVirtualScrollViewport?.scrollToIndex(index);
+  }
+
+  ngAfterViewInit(): void {
+    this.st.cdkVirtualScrollViewport?.scrolledIndexChange.pipe(takeUntilDestroyed(this.destroy$)).subscribe(data => {
+      console.log('scroll index to', data);
+    });
+  }
+}
编号头像邮箱电话数字货币注册时间
编号1头像邮箱e1@qq.com电话phone - 1数字13,384,848货币13,384,848注册时间2023-10-31 13:23
编号2头像邮箱e2@qq.com电话phone - 2数字11,315,405货币11,315,405注册时间2023-10-31 13:23
编号3头像邮箱e3@qq.com电话phone - 3数字17,135,763货币17,135,763注册时间2023-10-31 13:23
导出Excel

将表格数据保存为 Excel。

expand codeexpand code
import { Component, ViewChild } from '@angular/core';
+import { STColumn, STComponent, STData } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-st-export',
+  template: `
+    <button nz-button (click)="st.export()">Export</button>
+    <button nz-button (click)="st.export(true)">Export Filtered Data</button>
+    <button nz-button (click)="st.export(data, { filename: 'via-data.xlsx', sheetname: 'user' })">Export via data</button>
+    <st #st [data]="data" [columns]="columns" class="mt-sm"></st>
+  `,
+})
+export class ComponentsStExportComponent {
+  @ViewChild('st', { static: false }) st!: STComponent;
+  data: STData[] = Array(10000)
+    .fill({})
+    .map((_, index) => ({
+      id: index + 1,
+      picture: {
+        thumbnail: `https://dummyimage.com/100x100&text=${Math.min(index + 1, 30)}`,
+      },
+      email: `e${index + 1}@qq.com`,
+      phone: `phone - ${index + 1}`,
+      price: Math.ceil(Math.random() * 10000000) + 10000000,
+      registered: new Date(),
+    }));
+  columns: STColumn[] = [
+    { title: '编号', index: 'id' },
+    {
+      title: '头像',
+      type: 'img',
+      width: 60,
+      index: 'picture.thumbnail',
+      exported: false,
+    },
+    { title: '邮箱', index: 'email' },
+    { title: '电话', index: 'phone' },
+    {
+      title: '数字',
+      index: 'price',
+      type: 'number',
+      sort: {
+        compare: (a, b) => a.price - b.price,
+      },
+    },
+    { title: '货币', index: 'price', type: 'currency' },
+    { title: '注册时间', type: 'date', index: 'registered' },
+  ];
+}
编号头像邮箱电话佣金注册时间
编号1头像邮箱aaa8@qq.com电话phone-20041佣金7,450,596注册时间2023-10-31 13:23
编号2头像邮箱aaa8@qq.com电话phone-8157佣金2,153,507注册时间2023-10-31 13:23
编号3头像邮箱aaa6@qq.com电话phone-83497佣金7,761,957注册时间2023-10-31 13:23
  • 共 2 条
  • 1
调整尺寸

基于 nz-resizable 调整表头宽度。

  • 注意:不要忘记在 src/styles 下导入 nz-resizable Less 样式文件(@import 'ng-zorro-antd/resizable/style/entry.less';

  • 不支持多表头

expand codeexpand code
import { Component } from '@angular/core';
+import { STChange, STColumn } from '@delon/abc/st';
+
+@Component({
+  selector: 'components-st-resizable',
+  template: `
+    <st
+      [data]="url"
+      [columns]="columns"
+      [widthMode]="{ type: 'strict' }"
+      resizable
+      (change)="onChange($event)"
+    ></st>
+  `,
+})
+export class ComponentsStResizableComponent {
+  url = `/users?total=2&field=list`;
+  columns: STColumn[] = [
+    { title: '编号', index: 'id', width: 80, resizable: false },
+    { title: '头像', type: 'img', width: 60, index: 'picture.thumbnail' },
+    { title: '邮箱', index: 'email', width: 150, resizable: { minWidth: 150 } },
+    { title: '电话', index: 'phone' },
+    { title: '佣金', index: 'price', type: 'currency' },
+    { title: '注册时间', type: 'date', index: 'registered' },
+  ];
+
+  onChange({ type, resize }: STChange): void {
+    if (type === 'resize') {
+      console.log(resize?.width);
+    }
+  }
+}

API

st

成员说明类型默认值全局配置
[columns]列描述STColumn[]--
[data]数据源string, STData[], Observable<STData[]>--
[req]请求体配置STReq-
[res]返回体配置STRes-
[pi]当前页码number1
[ps]每页数量,默认:10number10
[total]当前总数据,在服务器渲染时需要传入,默认:0number0-
[page]分页器配置STPage-
[noResult]无数据时显示内容string,TemplateRef<void>-
[bordered]是否显示边框booleanfalse
[size]table大小'small','middle','default''default'
[widthMode]设置表格宽度模式STWidthMode-
[rowClassName]表格行的类名(record: STData, index: number) => string-
[clickRowClassName]点击行切换类名string, STClickRowClassNameType-
[loading]页面是否加载中,当指定 null 由 st 受控boolean | nullnull-
[loadingIndicator]加载指示符TemplateRef<void>-
[loadingDelay]延迟显示加载效果的时间(防止闪烁)number0
[scroll]横向或纵向支持滚动,也可用于指定滚动区域的宽高度:{ x: "300px", y: "300px" }{ y?: string; x?: string }--
[virtualScroll]是否启用虚拟滚动模式,与 [nzScroll] 配合使用booleanfalse
[virtualItemSize]虚拟滚动时每一列的高度,与 cdk itemSize 相同number54
[virtualMaxBufferPx]缓冲区最大像素高度,与 cdk maxBufferPx 相同number200
[virtualMinBufferPx]缓冲区最小像素高度,低于该值时将加载新结构,与 cdk minBufferPx 相同number100
[virtualForTrackBy]虚拟滚动数据 TrackByFunction 函数TrackByFunction<T>-
[singleSort]单排序规则
若不指定,则返回:columnName=ascend|descend
若指定,则返回:sort=columnName.(ascend|descend)
STSingleSortnull
[multiSort]是否多排序,当 sort 多个相同值时自动合并,建议后端支持时使用boolean, STMultiSortfalse
[header]表格标题string,TemplateRef<void>--
[showHeader]是否显示列头行booleantrue-
[footer]表格底部string,TemplateRef<void>--
[bodyHeader]表格顶部额外内容,一般用于添加合计行TemplateRef<STStatisticalResults>--
[body]表格额外内容,一般用于添加合计行TemplateRef<STStatisticalResults>--
[widthConfig]表头分组时指定每列宽度,与 STColumn 的 width 不可混用string[]--
[expandRowByClick]通过点击行来展开子行booleanfalse
[expandAccordion]手风琴模式booleanfalse
[expand]当前列是否包含展开按钮,当数据源中包括 expand 表示展开状态TemplateRef<void>--
[responsive]是否开启响应式booleantrue
[responsiveHideHeaderFooter]是否在小屏幕下才显示顶部与底部booleanfalse
[resizable]当前表格所有列的调整表头配置项,不支持多表头STResizable, boolean--
(change)变化时回调,包括:pipscheckboxradiosortfilterclickdblClickexpand 变动EventEmitter<STChange>--
(error)异常时回调EventEmitter<STError>--

组件属性与方法

名称说明
[filteredData]获取过滤后所有数据
- 本地数据:包含排序、过滤后不分页数据
- 远程数据:不传递 pips 两个参数
[count]获取当前页的条目数
[list]获取当前页的数据列表
resetColumns(options?: STResetColumnsOption)重置列描述
load(pi = 1, extraParams?: any, options?: STLoadOptions)加载指定页
reload(extraParams?: any, options?: STLoadOptions)刷新当前页
reset(extraParams?: any, options?: STLoadOptions)重置且重新设置 pi1,包含单多选、排序、过滤状态(同默认状态一并清除)
addRow(data: STData | STData[], options?: { index?: number })添加行
removeRow(data: STData | STData[] | number)移除行
setRow(index: number | STData, item: STData, options?: { refreshSchema?: boolean; emitReload?: boolean })修改行数据,支持部分字段更新
pureItem(itemOrIndex: STData | number)返回纯净数据,st 内部会维护一组用于缓存的数据,这部分数据可能会影响后端
clear(cleanStatus = true)清空所有数据
clearStatus()清空所有状态(包含单多选、排序、过滤状态)
clearCheck()清除所有 checkbox
clearRadio()清除所有 radio
export(newData?: STData[] | true, opt?: STExportOptions)导出Excel,确保已经导入 XlsxModule

一些细节:

  • extraParams 若不传递表示保留原始值

  • STLoadOptions.merge 是否合并模式,即 extraParams 跟新值合并而非替代

  • STLoadOptions.toTop 是否跳转至顶部,若不指定由 page.toTop 来决定

使用方式

@Component({
+  template: `
+    <st #st></st>
+    <button (click)="st.load()"></button>
+    <button (click)="st.reset()">重置</button>
+  `
+})
+class TestComponent {
+  @ViewChild('st', { static: false }) comp: STComponent;
+  // this.comp.load();
+}

STReq

成员说明类型默认值全局配置
[type]分页类型,page 使用 pips 组合;skip 使用 skiplimit 组合page,skippage
[params]额外请求参数,默认自动附加 pips 至URLany--
[ignoreParamNull]是否忽略参数中 nullundefindBooleanfalse
[method]请求方法'POST','GET','HEAD','PUT','PATCH','DELETE''GET'
[body]请求体 body,当 method: POST 时有效any--
[headers]请求体 headersany-
[reName]重命名请求参数 pipsSTReqReNameType, ((result: any, options: { pi: number; ps: number; total: number }) => { total: number; list: T[] }){ pi: 'pi', ps: 'ps', skip: 'skip', limit: 'limit' }
[allInBody]是否将请求所有参数数据都放入 body 当中(url 地址本身参数除外),仅当 method: 'POST' 时有效booleanfalse
[lazyLoad]是否延迟加载数据,即渲染结束后不会主动发起请求booleanfalse
[process]请求前数据处理(requestOptions: STRequestOptions) => STRequestOptions-

STRes

成员说明类型默认值全局配置
[reName]重命名返回参数 totallist,支持 a.b.c 的嵌套写法{total:string;list:string}-
[process]数据预处理(data: STData[], rawData?: any) => STData[]-

STPage

成员说明类型默认值全局配置
[front]前端分页,当 dataany[]Observable<any[]> 有效booleantrue
[zeroIndexed]后端分页是否采用0基索引,只在data类型为string时有效booleanfalse
[position]指定分页显示的位置top,bottom,bothbottom
[placement]指定分页分页方向left,center,rightright
[show]是否显示分页器booleantrue
[showSize]是否显示分页器中改变页数booleanfalse
[pageSizes]分页器中每页显示条目数下拉框值number[][10, 20, 30, 40, 50]
[showQuickJumper]是否显示分页器中快速跳转booleanfalse
[total]是否显示总数据量,字符串表示自定义模板(支持三个变量名:total 表示数据总量、range[0]range[1] 表示当前数据范围;变量名统一使用双花括号包裹)boolean, stringfalse
[toTop]切换分页时返回顶部booleantrue
[toTopOffset]返回顶部偏移值number100
[itemRender]用于自定义页码的结构,用法参照 Pagination 组件TemplateRef<{ $implicit: 'page' \| 'prev' \| 'next', page: number }>-
[simple]当添加该属性时,显示为简单分页boolean-

STError

成员说明类型默认值
[type]异常类型,req 表示HTTP请求req-
[error]异常内容any-

STChange

成员说明类型默认值
[type]变更类型,包括:loadedpipscheckboxradiosortfilterfilterChangeclickdblClickexpandSTChangeType-
[pi]当前页码number-
[ps]每页数量number-
[total]数据总量number-
[loaded]loaded 参数STData[]-
[checkbox]checkbox 参数STData[]-
[radio]radio 参数STData-
[sort]排序参数STChangeSort-
[filter]过滤参数STColumn-
[click]行点击参数STChangeRowClick-
[dblClick]行双击参数STChangeRowClick-
[expand]expand 参数STData-

STChangeSort

成员说明类型默认值
[value]当前列排序状态ascend,descend-
[map]所有列排序状态{ [key: string]: string }-
[column]行描述STColumn-

STChangeRowClick

成员说明类型默认值
[e]当前行事件Event-
[item]当前行数据STData-
[index]当前行索引number-

STExportOptions

成员说明类型默认值
[sheetname]工作薄名称stringSheet1
[filename]保存的文件名stringexport.xslx
[callback]保存前的回调(wb: WorkBook) => void-

STSingleSort

成员说明类型默认值全局配置
[key]请求参数名stringsort
[nameSeparator]列名与状态间分隔符string.

STMultiSort

成员说明类型默认值全局配置
[key]请求参数名stringsort
[separator]不同属性间分隔符string-
[nameSeparator]列名与状态间分隔符string.
[arrayParam]是否以数组的形式传递参数
true 表示使用 url?sort=name.asc&sort=age.desc 形式
false 表示使用 url?sort=name.asc-age.desc 形式
booleanfalse
[keepEmptyKey]是否保持空值的键名
true 表示不管是否有排序都会发送 key 键名
false 表示无排序动作时不会发送 key 键名
booleantrue
[global]仅限全局配置项有效,是否全局多排序模式
true 表示所有 st 默认为多排序
false 表示需要为每个 st 添加 multiSort 才会视为多排序模式
booleantrue

STData

成员说明类型默认值
[checked]选择框或单选框状态值boolean-
[disabled]选择框或单选框 disabledboolean-
[expand]是否展开状态boolean-
[showExpand]是否显示展开按钮boolean-
[className]行样式string-

STColumn

成员说明类型默认值
[title]列名string, STColumnTitle-
[i18n]列名i18nstring-
[type]no 行号
checkbox 多选
radio 单选
link 链接,可触发 click
img 图像且居中
number 数字且居右
currency 货币且居右
date 日期格式且居中
badge 徽标
tag 标签
ynboolean类型徽章化 document
使用 cell 组件渲染,见cell
widget 自定义小部件来渲染列
string-
[cell]使用 cell 组件渲染,见cellCellOptions | ((record: T, column: STColumn) => CellOptions)-
[index]列数据在数据项中对应的 key,支持 a.b.c 的嵌套写法string, string[]-
[render]自定义渲染IDstring, TemplateRef, TemplateRef<{ $implicit: STData; index: number }>-
[renderTitle]标题自定义渲染IDstring, TemplateRef<void>, TemplateRef<{ $implicit: STColumn; index: number }>-
[default]当不存在数据(值类型为 undefined)时以默认值替代string-
[buttons]按钮组STColumnButton[]-
[maxMultipleButton]配置最多显示多少个按钮,多余部分自动生成至 更多 下面STColumnMaxMultipleButton, number-
[width]列宽(数字型表示 px 值,注意: 若固定列必须是数字),例如:10010%100pxstring,number-
[fixed]固定前后列,当指定时务必指定 width 否则视为无效left,right-
[format]格式化列值(item: STData, col: STColumn, index: number) => string-
[className]class 属性值,例如:text-center 居中; text-right 居右; text-error 异常色,更多参考样式工具类string-
[colSpan]合并列number-
[onCell]设置单元格属性(item: T, index: number) => STOnCellResult;-
[sort]排序配置项,远程数据配置优先规则:
true 表示允许排序,且若数据源为本地数据时会自动生成 compare: (a, b) => a[index] - b[index] 方法
string 表示远程数据排序相对应 key
true,string,STColumnSort-
[filter]过滤配置项STColumnFilter-
[selections]选择功能配置STColumnSelection[]-
[numberDigits]数字格式,type=number 有效string-
[dateFormat]日期格式,type=date 有效stringyyyy-MM-dd HH:mm
[currency]货币格式选项,type=currency 有效STColumnCurrency-
[yn]type=yn 有效STColumnYn-
[exported]是否允许导出booleantrue
[acl]ACL权限,等同 can() 参数值ACLCanType-
[click]链接回调(record: STData, instance?: STComponent) => void-
[badge]徽标配置项STColumnBadge-
[tag]徽标配置项STColumnTag-
[enum]枚举配置项{ [key: string]: string; [key: number]: string }-
[widget]小部件配置项STWidgetColumn-
[noIndex]行号索引开始值number,(item: STData, col: STColumn, idx: number) => number1
[iif]条件表达式
1、仅赋值 columns 时执行一次
2、可调用 resetColumns() 再一次触发
(item: STColumn) => boolean-
[statistical]统计信息STStatisticalType,STStatistical-
[resizable]调整表头配置项,不支持多表头STResizable, boolean--
[children]多表头STColumn[]-
[safeType]安全渲染方式,支持全局配置text,html,safeHtmlsafeHtml
[customRequest]覆盖默认的请求行为,可以自定义自己的请求实现,例如:Graphql,支持全局配置(options: STCustomRequestOptions) => Observable<any>-

STColumnTitle

成员说明类型默认值
[text]列标题,texti18n 必选其一string-
[i18n]列标题i18n主键,texti18n 必选其一string-
[optional]标签可选信息string-
[optionalHelp]标签可选帮助string-

STColumnSort

成员说明类型默认值
[default]排序的受控属性ascend,descend-
[compare]本地数据的排序函数,使用一个函数(参考 Array.sort 的 compareFunction),null 忽略本地排序,但保持排序功能(a: any, b: any) => number, null-
[key]远程数据的排序时后端相对应的KEY,默认使用 index 属性
multiSort: false 时:key: 'name' => ?name=1&pi=1
multiSort: true 允许多个排序 key 存在,或使用 STMultiSort 指定多列排序key合并规则
string-
[reName]远程数据的排序时后端相对应的VALUE
{ ascend: '0', descend: '1' } 结果 ?name=1&pi=1
{ ascend: 'asc', descend: 'desc' } 结果 ?name=desc&pi=1
{ ascend?: string, descend?: string }-

STColumnFilter

成员说明类型默认值
[type]类型,keyword 文本框形式default,keyword,number,date,customdefault
[menus]表头的筛选菜单项,至少一项才会生效STColumnFilterMenu[]-
[fn]本地数据的筛选函数(filter: STColumnFilterMenu, record: STData) => boolean-
[default]标识数据是否经过过滤,筛选图标会高亮boolean-
[icon]自定义 fiter 图标
type='default' 默认 filter
type='keyword' 默认 search
string | STIconfilter
[multiple]是否多选booleantrue
[confirmText]filter 确认按钮文本string-
[clearText]filter 清除按钮文本string-
[key]远程数据的过滤时后端相对应的KEY,默认使用 index 属性string-
[reName]远程数据的过滤时后端相对应的VALUE(list: STColumnFilterMenu[], col: STColumn) => Object-
[custom]自定义模版TemplateRef<{ $implicit: STColumnFilter; col: STColumn; handle: STColumnFilterHandle }>-
[showOPArea]是否显示操作区域booleantrue
[placeholder]在文字框中显示提示讯息booleantrue
[number]类型为 number 的配置项Object-
[date]类型为 date 的配置项Object-

STColumnFilterMenu

成员说明类型默认值
[text]文本
type: 'keyword' 时表示 placeholder
string-
[value]any-
[checked]是否选中boolean-
[acl]权限,等同 can() 参数值ACLCanType-

STColumnButton

成员说明类型默认值
[text]文本与图标共存string | (record: T, btn: STColumnButton) => string-
[icon]图标与文本共存string | STIcon | ((record: T, btn: STColumnButton) => STIcon | null | undefined)-
[i18n]文本i18nstring-
[type]按钮类型none,del,modal,static,drawer,link-
[click]点击回调;函数: type=modal 只会在 确认 时触发且 modal 参数有效
reload: 重新刷新当前页
load: 重新加载数据,并重置页码为:1
(record: STData, modal?: any, instance?: STComponent) => void | reload-
[pop]是否需要气泡确认框boolean, string, STColumnButtonPopfalse
[modal]模态框配置STColumnButtonModal-
[drawer]抽屉配置STColumnButtonDrawer-
[children]下拉菜单,当存在时以 dropdown 形式渲染;只支持一级STColumnButton[]-
[acl]ACL权限,等同 can() 参数值ACLCanType-
[iif]自定义条件表达式(item: STData, btn: STColumnButton, column: STColumn) => boolean() => true
[iifBehavior]表达式 false 值时渲染方式hide,disabledhide
[tooltip]按钮文字提示string-
[className]按钮 class 属性值,例如:text-error 异常色,更多参考样式工具类string | ((record: T, btn: STColumnButton) => NgClassType | null | undefined)-

STIcon

成员说明类型默认值全局配置
[type]图标类型string--
[theme]图标主题风格outline | twotone | filloutline
[spin]是否有旋转动画booleanfalse
[twoToneColor]仅适用双色图标,设置双色图标的主要颜色,仅对当前 icon 生效string-
[iconfont]指定来自 IconFont 的图标类型string-

STColumnButtonModal

成员说明类型默认值全局配置
[component]目标组件对象any--
[params]目标组件的接收参数对象(record: STData) => Object--
[paramsName]目标组件的接收参数名,若目标组件接收值为空时,检查 global-config.module.ts 全局设置stringrecord
[size]对话框大小,支持数字类型'sm','md','lg','xl''lg'
[exact]是否精准(默认:true),若返回值非空值(nullundefined)视为成功,否则视为错误booleantrue
[includeTabs]是否包裹标签页,修复模态包含标签间距问题boolean--
[modalOptions]对话框 ModalOptions 参数any-

STColumnButtonDrawer

成员说明类型默认值全局配置
[title]标题any--
[component]目标组件对象any--
[params]目标组件的接收参数对象(record: STData) => Object--
[paramsName]目标组件的接收参数名,若目标组件接收值为空时,检查 global-config.module.ts 全局设置stringrecord
[size]抽屉大小,支持数字类型'sm','md','lg','xl''md'
[drawerOptions]抽屉 NzDrawerOptions 参数any-
[footer]是否包含底部工具条booleantrue
[footerHeight]底部工具条高度number55

STColumnSelection

成员说明类型默认值
[text]文本string-
[select]选择项点击回调,允许对参数 data.checked 进行操作(data: STData[]) => void-
[acl]ACL权限,等同 can() 参数值ACLCanType-

STColumnYn

成员说明类型默认值
[truth]真值条件anytrue
[yes]徽章 true 时文本string
[no]徽章 false 时文本string
[mode]显示模式full,icon,texticon

STcolumnCurrency

成员说明类型默认值
[type]货币渲染类型commas, megacommas
[format]CurrencyService.formatCurrencyFormatOptions-

STColumnBadge

成员说明类型默认值
[text]文本string-
[color]徽标颜色值success,processing,default,error,warning-
[tooltip]文字提示string-

STColumnTag

成员说明类型默认值
[text]文本string-
[color]Tag颜色值string-
[tooltip]文字提示string-

STWidgetColumn

成员说明类型默认值
[type]指定类型名,可通过定义 STWidgetRegistry 来定制,例如string-
[params]目标组件的参数(options: { record: STData; column: STColumn }) => {}-

STWidthMode

成员说明类型默认值全局配置
[type]类型strict,defaultdefault
[strictBehavior]strict 的行为类型wrap,truncatetruncate

STStatistical

成员说明类型默认值
[type]统计类型STStatisticalType | STStatisticalFn-
[digits]保留小数位数number2
[currency]是否需要货币格式化,默认当 typeSTStatisticalFnsumaveragemaxmin 时为 trueboolean-

STStatisticalFn

(
+  values: number[],
+  col: STColumn,
+  list: STData[],
+  rawData?: any,
+) => STStatisticalResult

STResizable

成员说明类型默认值
[disabled]Disable resizebooleantrue
[bounds]调整尺寸的边界window, parent, ElementRef<HTMLElement>window
[maxWidth]最大宽度(超过边界部分忽略)number360
[minWidth]最小宽度number60
[preview]开启预览booleantrue

Theme

成员说明默认值
@nz-table-img-radius图像圆角大小4px
@nz-table-img-margin-right图像右边距4px
@nz-table-img-max-height图像最大高度32px
@nz-table-img-max-width图像最大宽度32px
@nz-table-even-background行奇偶背景色none
@nz-table-rep-max-width可视区域小于时触发
@nz-table-rep-min-width可视区域大于时触发
@nz-table-rep-header-background响应式下标题背景颜色@border-color-split
@nz-table-rep-even-background响应式下奇偶颜色#f9f9f9
@nz-table-rep-column-name-color响应式下文本颜色rgba(0, 0, 0, 0.5)
@nz-table-rep-column-name-text-align响应式下标题文本对齐方式right
@nz-table-rep-column-name-width响应式下标题宽度100px
@nz-table-rep-column-name-padding-right响应式下标题与内容右边距8px
@table-row-hover-bg行悬停背景色#fafafa
@st-btn-disabled-color禁用按钮的文本颜色rgba(0, 0, 0, 0.25)
@st-title-optional-color标题可选文本颜色rgba(0, 0, 0, 0.35)
@st-resizable-handle-width拖拽宽度1px
@st-resizable-handle-height拖拽高度60%
@st-resizable-handle-color拖拽颜色@border-color-base
\ No newline at end of file diff --git a/components/sv/en/index.html b/components/sv/en/index.html new file mode 100644 index 000000000..c9c7ebb07 --- /dev/null +++ b/components/sv/en/index.html @@ -0,0 +1,135 @@ +sv - NG-ALAIN

查看
IMPORT MODULE

查看栅格系统是在原 Grid 栅格 基础上构建更高阶的组件,用于简化查看页布局。

代码演示

title
Firefox
A free, open source, cross-platform, graphical web browser developed by the Mozilla Corporation and hundreds of volunteers.
Firefox
A free, open source, cross-platform, graphical web browser developed by the Mozilla Corporation and hundreds of volunteers.
Firefox
A free, open source, cross-platform, graphical web browser developed by the Mozilla Corporation and hundreds of volunteers.
Default
Unit
10
Unit
Col2
占两栏
Value
50.11亿
Mulit Value
103
Value Size
DefaultSamllLarge
基本

基本查看页。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-sv-basic',
+  template: `
+    <sv-container>
+      <sv-title>title</sv-title>
+      <sv label="Firefox">
+        A free, open source, cross-platform, graphical web browser developed by the Mozilla Corporation and hundreds of volunteers.
+      </sv>
+      <sv label="Firefox">
+        A free, open source, cross-platform, graphical web browser developed by the Mozilla Corporation and hundreds of volunteers.
+      </sv>
+      <sv label="Firefox">
+        A free, open source, cross-platform, graphical web browser developed by the Mozilla Corporation and hundreds of volunteers.
+      </sv>
+      <nz-divider></nz-divider>
+      <sv label="Default"></sv>
+      <sv label="Unit" unit="个">10</sv>
+      <sv label="Unit" unit="个"></sv>
+      <sv label="Col2" col="2">占两栏</sv>
+      <sv label="Value">
+        <sv-value prefix="约" unit="亿" tooltip="5,011,000,000">50.11</sv-value>
+      </sv>
+      <sv label="Mulit Value">
+        <sv-value>10</sv-value>
+        <sv-value>3</sv-value>
+      </sv>
+      <sv label="Value Size">
+        <sv-value>Default</sv-value>
+        <sv-value size="small">Samll</sv-value>
+        <sv-value size="large">Large</sv-value>
+      </sv>
+    </sv-container>
+  `,
+})
+export class ComponentsSvBasicComponent {}
ID
1
Name
asdf
Age
25
Long Optional Long Optional(RMB)
Optional
Optional
Optional Help
Default

Custom label

Custom label

Custom label

带边框的

带边框和背景颜色。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-sv-border',
+  template: `
+    <div class="mb-md">
+      <button nz-button (click)="bordered = !bordered">切换边框</button>
+      <nz-radio-group [(ngModel)]="size" class="ml-md">
+        <label nz-radio nzValue="default">default</label>
+        <label nz-radio nzValue="large">large</label>
+        <label nz-radio nzValue="small">small</label>
+      </nz-radio-group>
+    </div>
+    <div sv-container labelWidth="150" [bordered]="bordered" [size]="size">
+      <sv label="ID">1</sv>
+      <sv label="Name">asdf</sv>
+      <sv label="Age">25</sv>
+      <sv label="Long Optional Long Optional" optional="(RMB)">Optional</sv>
+      <sv label="Optional" optionalHelp="Tips">Optional Help</sv>
+      <sv label="Default" optionalHelp="The background color is #f50" optionalHelpColor="#f50"></sv>
+      <sv [label]="label" col="1">
+        <ng-template #label>
+          <a nz-tooltip="test">long</a>
+        </ng-template>
+        <p>Custom label</p>
+        <p>Custom label</p>
+        <p>Custom label</p>
+      </sv>
+    </div>
+  `
+})
+export class ComponentsSvBorderComponent {
+  bordered = true;
+  size?: 'small' | 'large' | 'default' = 'default';
+}
ID
1
Name
asdf
Age
25
Reject
OMG Fixed
Long Optional Long Optional(RMB)
Optional
Optional
Optional Help
Default
Custom label
id

暂无数据

固定标签宽度

固定标签宽度让布局看起来更加整洁。

expand codeexpand code
import { Component } from '@angular/core';
+
+import { STColumn } from '@delon/abc/st';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-sv-fixed',
+  template: `
+    <sv-container labelWidth="150">
+      <sv label="ID">1</sv>
+      <sv label="Name">asdf</sv>
+      <sv label="Age">25</sv>
+      <sv label="Reject" type="danger" col="1"> OMG <a class="ml-sm" (click)="msg.success('to')">Fixed</a> </sv>
+      <sv label="Long Optional Long Optional" optional="(RMB)">Optional</sv>
+      <sv label="Optional" optionalHelp="Tips">Optional Help</sv>
+      <sv label="Default" optionalHelp="The background color is #f50" optionalHelpColor="#f50"></sv>
+      <sv [label]="label">
+        <ng-template #label>
+          <a nz-tooltip="test">long</a>
+        </ng-template>
+        Custom label
+      </sv>
+      <sv hideLabel col="1">
+        <st [columns]="columns" size="small"></st>
+      </sv>
+    </sv-container>
+  `
+})
+export class ComponentsSvFixedComponent {
+  columns: STColumn[] = [{ title: 'id' }];
+
+  constructor(public msg: NzMessageService) {}
+}
primary
hhhh
success
hhhh
warning
hhhh
danger
hhhh
内容类型

通常用于展示页,成功、异常、警告等字段展示。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-sv-type',
+  template: `
+    <sv-container col="4">
+      <sv label="primary" type="primary">hhhh</sv>
+      <sv label="success" type="success">hhhh</sv>
+      <sv label="warning" type="warning">hhhh</sv>
+      <sv label="danger" type="danger">hhhh</sv>
+    </sv-container>
+  `,
+})
+export class ComponentsSvTypeComponent {}
title
Firefox
A free, open source, cross-platform, graphical web browser developed by the Mozilla Corporation and hundreds of volunteers.
Firefox
A free, open source, cross-platform, graphical web browser developed by the Mozilla Corporation and hundreds of volunteers.
Firefox
A free, open source, cross-platform, graphical web browser developed by the Mozilla Corporation and hundreds of volunteers.
垂直布局

垂直布局。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-sv-vertical',
+  template: `
+    <sv-container layout="vertical">
+      <sv-title>title</sv-title>
+      <sv label="Firefox">
+        A free, open source, cross-platform, graphical web browser developed by the Mozilla Corporation and hundreds of volunteers.
+      </sv>
+      <sv label="Firefox">
+        A free, open source, cross-platform, graphical web browser developed by the Mozilla Corporation and hundreds of volunteers.
+      </sv>
+      <sv label="Firefox">
+        A free, open source, cross-platform, graphical web browser developed by the Mozilla Corporation and hundreds of volunteers.
+      </sv>
+    </sv-container>
+  `,
+})
+export class ComponentsSvVerticalComponent {}

API

sv-container

参数说明类型默认值全局配置
[sv-container]指定信息最多分几列展示,最终一行几列由 col 配置结合响应式规则决定,'1','2','3','4','5','6'--
[col]指定信息最多分几列展示,最终一行几列由 col 配置结合响应式规则决定'1','2','3','4','5','6'3
[size]大小'small','large''large'
[layout]布局'horizontal','vertical''horizontal'
[gutter]间距number32
[labelWidth]默认标签文本宽度number-
[default]默认是否显示默认文本booleantrue
[title]标题string,TemplateRef<void>--
[noColon]默认是否不显示 label 后面的冒号booleanfalse-
[bordered]是否展示边框booleanfalse-

sv

参数说明类型默认值
[col]指定信息最多分几列展示,最终一行几列由 col 配置结合响应式规则决定,继承 sv-container'1','2','3','4','5','6'-
[label]标签string,TemplateRef<void>-
[unit]单位string,TemplateRef<void>-
[default]是否显示默认文本,继承 sv-containerboolean-
[type]类型'primary','success','danger','warning'-
[optional]标签可选信息string, TemplateRef<void>-
[optionalHelp]标签可选帮助string, TemplateRef<void>-
[optionalHelpColor]标签可选帮助背景颜色string-
[noColon]是否不显示 label 后面的冒号booleanfalse-
[hideLabel]是否隐藏当前 labelbooleanfalse

sv-title

用于展示标题,单独一行。

sv-value

值展示。

参数说明类型默认值
[prefix]前缀string-
[unit]单位string-
[tooltip]文字提示内容string, TemplateRef<void>-
[size]大小'large','small','default'default
\ No newline at end of file diff --git a/components/sv/zh/index.html b/components/sv/zh/index.html new file mode 100644 index 000000000..b219dc8e3 --- /dev/null +++ b/components/sv/zh/index.html @@ -0,0 +1,135 @@ +sv - NG-ALAIN

查看
IMPORT MODULE

查看栅格系统是在原 Grid 栅格 基础上构建更高阶的组件,用于简化查看页布局。

代码演示

title
Firefox
A free, open source, cross-platform, graphical web browser developed by the Mozilla Corporation and hundreds of volunteers.
Firefox
A free, open source, cross-platform, graphical web browser developed by the Mozilla Corporation and hundreds of volunteers.
Firefox
A free, open source, cross-platform, graphical web browser developed by the Mozilla Corporation and hundreds of volunteers.
Default
Unit
10
Unit
Col2
占两栏
Value
50.11亿
Mulit Value
103
Value Size
DefaultSamllLarge
基本

基本查看页。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-sv-basic',
+  template: `
+    <sv-container>
+      <sv-title>title</sv-title>
+      <sv label="Firefox">
+        A free, open source, cross-platform, graphical web browser developed by the Mozilla Corporation and hundreds of volunteers.
+      </sv>
+      <sv label="Firefox">
+        A free, open source, cross-platform, graphical web browser developed by the Mozilla Corporation and hundreds of volunteers.
+      </sv>
+      <sv label="Firefox">
+        A free, open source, cross-platform, graphical web browser developed by the Mozilla Corporation and hundreds of volunteers.
+      </sv>
+      <nz-divider></nz-divider>
+      <sv label="Default"></sv>
+      <sv label="Unit" unit="个">10</sv>
+      <sv label="Unit" unit="个"></sv>
+      <sv label="Col2" col="2">占两栏</sv>
+      <sv label="Value">
+        <sv-value prefix="约" unit="亿" tooltip="5,011,000,000">50.11</sv-value>
+      </sv>
+      <sv label="Mulit Value">
+        <sv-value>10</sv-value>
+        <sv-value>3</sv-value>
+      </sv>
+      <sv label="Value Size">
+        <sv-value>Default</sv-value>
+        <sv-value size="small">Samll</sv-value>
+        <sv-value size="large">Large</sv-value>
+      </sv>
+    </sv-container>
+  `,
+})
+export class ComponentsSvBasicComponent {}
ID
1
Name
asdf
Age
25
Long Optional Long Optional(RMB)
Optional
Optional
Optional Help
Default

Custom label

Custom label

Custom label

带边框的

带边框和背景颜色。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-sv-border',
+  template: `
+    <div class="mb-md">
+      <button nz-button (click)="bordered = !bordered">切换边框</button>
+      <nz-radio-group [(ngModel)]="size" class="ml-md">
+        <label nz-radio nzValue="default">default</label>
+        <label nz-radio nzValue="large">large</label>
+        <label nz-radio nzValue="small">small</label>
+      </nz-radio-group>
+    </div>
+    <div sv-container labelWidth="150" [bordered]="bordered" [size]="size">
+      <sv label="ID">1</sv>
+      <sv label="Name">asdf</sv>
+      <sv label="Age">25</sv>
+      <sv label="Long Optional Long Optional" optional="(RMB)">Optional</sv>
+      <sv label="Optional" optionalHelp="Tips">Optional Help</sv>
+      <sv label="Default" optionalHelp="The background color is #f50" optionalHelpColor="#f50"></sv>
+      <sv [label]="label" col="1">
+        <ng-template #label>
+          <a nz-tooltip="test">long</a>
+        </ng-template>
+        <p>Custom label</p>
+        <p>Custom label</p>
+        <p>Custom label</p>
+      </sv>
+    </div>
+  `
+})
+export class ComponentsSvBorderComponent {
+  bordered = true;
+  size?: 'small' | 'large' | 'default' = 'default';
+}
ID
1
Name
asdf
Age
25
Reject
OMG Fixed
Long Optional Long Optional(RMB)
Optional
Optional
Optional Help
Default
Custom label
id

暂无数据

固定标签宽度

固定标签宽度让布局看起来更加整洁。

expand codeexpand code
import { Component } from '@angular/core';
+
+import { STColumn } from '@delon/abc/st';
+import { NzMessageService } from 'ng-zorro-antd/message';
+
+@Component({
+  selector: 'components-sv-fixed',
+  template: `
+    <sv-container labelWidth="150">
+      <sv label="ID">1</sv>
+      <sv label="Name">asdf</sv>
+      <sv label="Age">25</sv>
+      <sv label="Reject" type="danger" col="1"> OMG <a class="ml-sm" (click)="msg.success('to')">Fixed</a> </sv>
+      <sv label="Long Optional Long Optional" optional="(RMB)">Optional</sv>
+      <sv label="Optional" optionalHelp="Tips">Optional Help</sv>
+      <sv label="Default" optionalHelp="The background color is #f50" optionalHelpColor="#f50"></sv>
+      <sv [label]="label">
+        <ng-template #label>
+          <a nz-tooltip="test">long</a>
+        </ng-template>
+        Custom label
+      </sv>
+      <sv hideLabel col="1">
+        <st [columns]="columns" size="small"></st>
+      </sv>
+    </sv-container>
+  `
+})
+export class ComponentsSvFixedComponent {
+  columns: STColumn[] = [{ title: 'id' }];
+
+  constructor(public msg: NzMessageService) {}
+}
primary
hhhh
success
hhhh
warning
hhhh
danger
hhhh
内容类型

通常用于展示页,成功、异常、警告等字段展示。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-sv-type',
+  template: `
+    <sv-container col="4">
+      <sv label="primary" type="primary">hhhh</sv>
+      <sv label="success" type="success">hhhh</sv>
+      <sv label="warning" type="warning">hhhh</sv>
+      <sv label="danger" type="danger">hhhh</sv>
+    </sv-container>
+  `,
+})
+export class ComponentsSvTypeComponent {}
title
Firefox
A free, open source, cross-platform, graphical web browser developed by the Mozilla Corporation and hundreds of volunteers.
Firefox
A free, open source, cross-platform, graphical web browser developed by the Mozilla Corporation and hundreds of volunteers.
Firefox
A free, open source, cross-platform, graphical web browser developed by the Mozilla Corporation and hundreds of volunteers.
垂直布局

垂直布局。

expand codeexpand code
import { Component } from '@angular/core';
+
+@Component({
+  selector: 'components-sv-vertical',
+  template: `
+    <sv-container layout="vertical">
+      <sv-title>title</sv-title>
+      <sv label="Firefox">
+        A free, open source, cross-platform, graphical web browser developed by the Mozilla Corporation and hundreds of volunteers.
+      </sv>
+      <sv label="Firefox">
+        A free, open source, cross-platform, graphical web browser developed by the Mozilla Corporation and hundreds of volunteers.
+      </sv>
+      <sv label="Firefox">
+        A free, open source, cross-platform, graphical web browser developed by the Mozilla Corporation and hundreds of volunteers.
+      </sv>
+    </sv-container>
+  `,
+})
+export class ComponentsSvVerticalComponent {}

API

sv-container

参数说明类型默认值全局配置
[sv-container]指定信息最多分几列展示,最终一行几列由 col 配置结合响应式规则决定,'1','2','3','4','5','6'--
[col]指定信息最多分几列展示,最终一行几列由 col 配置结合响应式规则决定'1','2','3','4','5','6'3
[size]大小'small','large''large'
[layout]布局'horizontal','vertical''horizontal'
[gutter]间距number32
[labelWidth]默认标签文本宽度number-
[default]默认是否显示默认文本booleantrue
[title]标题string,TemplateRef<void>--
[noColon]默认是否不显示 label 后面的冒号booleanfalse-
[bordered]是否展示边框booleanfalse-

sv

参数说明类型默认值
[col]指定信息最多分几列展示,最终一行几列由 col 配置结合响应式规则决定,继承 sv-container'1','2','3','4','5','6'-
[label]标签string,TemplateRef<void>-
[unit]单位string,TemplateRef<void>-
[default]是否显示默认文本,继承 sv-containerboolean-
[type]类型'primary','success','danger','warning'-
[optional]标签可选信息string, TemplateRef<void>-
[optionalHelp]标签可选帮助string, TemplateRef<void>-
[optionalHelpColor]标签可选帮助背景颜色string-
[noColon]是否不显示 label 后面的冒号booleanfalse-
[hideLabel]是否隐藏当前 labelbooleanfalse

sv-title

用于展示标题,单独一行。

sv-value

值展示。

参数说明类型默认值
[prefix]前缀string-
[unit]单位string-
[tooltip]文字提示内容string, TemplateRef<void>-
[size]大小'large','small','default'default
\ No newline at end of file diff --git a/components/tag-select/en/index.html b/components/tag-select/en/index.html new file mode 100644 index 000000000..195deb82f --- /dev/null +++ b/components/tag-select/en/index.html @@ -0,0 +1,51 @@ +tag-select - NG-ALAIN

标签选择器
IMPORT MODULE

增加标签的展开与收进功能。

代码演示

全部类目一类目二类目三类目四类目五类目六类目七类目八类目九类目十类目十一类目十二类目十三类目十四类目十五展开
基础样例

结合 nz-checkable-tagtag-select 组件,方便的应用于筛选类目的业务场景中。

expand codeexpand code
import { Component } from '@angular/core';
+
+interface TagSelectDemoItem {
+  id: number;
+  text: string;
+  value: boolean;
+}
+
+@Component({
+  selector: 'components-tag-select-simple',
+  template: `
+    <tag-select>
+      <nz-tag
+        *ngFor="let i of categories; let idx = index"
+        nzMode="checkable"
+        [(nzChecked)]="i.value"
+        (nzCheckedChange)="change(i)"
+      >
+        {{ i.text }}
+      </nz-tag>
+    </tag-select>
+  `
+})
+export class ComponentsTagSelectSimpleComponent {
+  categories: TagSelectDemoItem[] = [
+    { id: 0, text: '全部', value: false },
+    { id: 1, text: '类目一', value: false },
+    { id: 2, text: '类目二', value: false },
+    { id: 3, text: '类目三', value: false },
+    { id: 4, text: '类目四', value: false },
+    { id: 5, text: '类目五', value: false },
+    { id: 6, text: '类目六', value: false },
+    { id: 7, text: '类目七', value: false },
+    { id: 8, text: '类目八', value: false },
+    { id: 9, text: '类目九', value: false },
+    { id: 10, text: '类目十', value: false },
+    { id: 11, text: '类目十一', value: false },
+    { id: 12, text: '类目十二', value: false },
+    { id: 13, text: '类目十三', value: false },
+    { id: 14, text: '类目十四', value: false },
+    { id: 15, text: '类目十五', value: false }
+  ];
+
+  change(item: TagSelectDemoItem): void {
+    if (item.id === 0) {
+      this.categories.forEach(i => (i.value = item.value));
+      return;
+    }
+    this.categories.find(w => w.id === 0)!.value = false;
+  }
+}

API

tag-select

成员说明类型默认值
[expandable]是否启用 展开与收进booleantrue
(change)展开与收进回调函数,参数:booleanEventEmitter<boolean>-
\ No newline at end of file diff --git a/components/tag-select/zh/index.html b/components/tag-select/zh/index.html new file mode 100644 index 000000000..67f1928c7 --- /dev/null +++ b/components/tag-select/zh/index.html @@ -0,0 +1,51 @@ +tag-select - NG-ALAIN

标签选择器
IMPORT MODULE

增加标签的展开与收进功能。

代码演示

全部类目一类目二类目三类目四类目五类目六类目七类目八类目九类目十类目十一类目十二类目十三类目十四类目十五展开
基础样例

结合 nz-checkable-tagtag-select 组件,方便的应用于筛选类目的业务场景中。

expand codeexpand code
import { Component } from '@angular/core';
+
+interface TagSelectDemoItem {
+  id: number;
+  text: string;
+  value: boolean;
+}
+
+@Component({
+  selector: 'components-tag-select-simple',
+  template: `
+    <tag-select>
+      <nz-tag
+        *ngFor="let i of categories; let idx = index"
+        nzMode="checkable"
+        [(nzChecked)]="i.value"
+        (nzCheckedChange)="change(i)"
+      >
+        {{ i.text }}
+      </nz-tag>
+    </tag-select>
+  `
+})
+export class ComponentsTagSelectSimpleComponent {
+  categories: TagSelectDemoItem[] = [
+    { id: 0, text: '全部', value: false },
+    { id: 1, text: '类目一', value: false },
+    { id: 2, text: '类目二', value: false },
+    { id: 3, text: '类目三', value: false },
+    { id: 4, text: '类目四', value: false },
+    { id: 5, text: '类目五', value: false },
+    { id: 6, text: '类目六', value: false },
+    { id: 7, text: '类目七', value: false },
+    { id: 8, text: '类目八', value: false },
+    { id: 9, text: '类目九', value: false },
+    { id: 10, text: '类目十', value: false },
+    { id: 11, text: '类目十一', value: false },
+    { id: 12, text: '类目十二', value: false },
+    { id: 13, text: '类目十三', value: false },
+    { id: 14, text: '类目十四', value: false },
+    { id: 15, text: '类目十五', value: false }
+  ];
+
+  change(item: TagSelectDemoItem): void {
+    if (item.id === 0) {
+      this.categories.forEach(i => (i.value = item.value));
+      return;
+    }
+    this.categories.find(w => w.id === 0)!.value = false;
+  }
+}

API

tag-select

成员说明类型默认值
[expandable]是否启用 展开与收进booleantrue
(change)展开与收进回调函数,参数:booleanEventEmitter<boolean>-
\ No newline at end of file diff --git a/components/xlsx/en/index.html b/components/xlsx/en/index.html new file mode 100644 index 000000000..f54b7c691 --- /dev/null +++ b/components/xlsx/en/index.html @@ -0,0 +1,86 @@ +xlsx - NG-ALAIN

Excel 操作
IMPORT MODULE

一个基于 SheetJS 的Excel文件操作,它是目前在浏览器中包含最全的Excel操作的脚本库。

注:你也可以使用 js-xlsx 是另一个 Fork sheetjs 的类库,它提供包括:图片、样式等额外选项。最后你利用 callback 选项重要渲染你的 excel。

依赖

由于 sheetjs 脚本大小以及对 Excel 的操作并不是刚需的原因,因此采用一种延迟加载脚本的形式,可以通过全局配置配置来改变默认 CDN 路径,默认情况下使用 https://cdn.jsdelivr.net/npm/xlsx/dist/xlsx.full.min.js

使用本地路径

// angular.json
+{
+  "glob": "**/{xlsx.full.min,cpexcel}.js",
+  "input": "./node_modules/xlsx/dist",
+  "output": "assets/xlsx/"
+}
// global-config.module.ts
+const alainConfig: AlainConfig = {
+  xlsx: {
+    url: '/assets/xlsx/xlsx.full.min.js',
+    modules: [`/assets/xlsx/cpexcel.js`]
+  }
+};

代码演示

result:

导入

导入Excel并输出JSON,支持 File、URL 格式。

expand codeexpand code
import { ChangeDetectionStrategy, ChangeDetectorRef, Component } from '@angular/core';
+import { XlsxService } from '@delon/abc/xlsx';
+
+@Component({
+  selector: 'components-xlsx-import',
+  template: `
+    <button nz-button (click)="url()">Via Url</button>
+    <input type="file" (change)="change($event)" multiple="false" class="ml-sm" />
+    <p class="mt-sm">result: {{ data | json }}</p>
+  `,
+  changeDetection: ChangeDetectionStrategy.OnPush,
+})
+export class ComponentsXlsxImportComponent {
+  data: any;
+
+  constructor(private xlsx: XlsxService, private cdr: ChangeDetectorRef) {}
+
+  url(): void {
+    this.xlsx.import(`./assets/demo.xlsx`).then(res => {
+      this.data = res;
+      this.cdr.detectChanges();
+    });
+  }
+
+  change(e: Event): void {
+    const node = e.target as HTMLInputElement;
+    this.xlsx.import(node.files![0]).then(res => {
+      this.data = res;
+      this.cdr.detectChanges();
+    });
+    node.value = '';
+  }
+}
姓名年龄
编号姓名name 1年龄23
编号姓名name 2年龄28
编号姓名name 3年龄24
导出

导出Excel并自动弹出保存对话框。

expand codeexpand code
import { Component } from '@angular/core';
+
+import { STColumn, STData } from '@delon/abc/st';
+import { XlsxService } from '@delon/abc/xlsx';
+
+@Component({
+  selector: 'components-xlsx-export',
+  template: `
+    <button nz-button (click)="download('xlsx')">Export Xlsx</button>
+    <button nz-button (click)="download('csv')">Export Csv</button>
+    <st [data]="users" [ps]="3" [columns]="columns" class="mt-sm"></st>
+  `
+})
+export class ComponentsXlsxExportComponent {
+  constructor(private xlsx: XlsxService) {}
+
+  users: STData[] = Array(100)
+    .fill({})
+    .map((_, idx) => ({
+      id: idx + 1,
+      name: `name ${idx + 1}`,
+      age: Math.ceil(Math.random() * 10) + 20
+    }));
+  columns: STColumn[] = [
+    { title: '编号', index: 'id', type: 'checkbox' },
+    { title: '姓名', index: 'name' },
+    { title: '年龄', index: 'age' }
+  ];
+
+  download(format: 'xlsx' | 'csv'): void {
+    const data = [this.columns.map(i => i.title)];
+    this.users.forEach(i => data.push(this.columns.map(c => i[c.index as string])));
+    this.xlsx.export({
+      sheets: [
+        {
+          data,
+          name: 'sheet name'
+        }
+      ],
+      format
+    });
+  }
+}

API

LazyService

成员说明类型默认值
import(fileOrUrl: File | string)导入Excel,返回 JSONPromise<{ [key: string]: any[][] }>-
export(options: XlsxExportOptions)导出ExcelPromise<void>-
numberToSchema(val: number)数值转符号名string-

XlsxExportOptions

成员说明类型默认值
[sheets]数据源{ [sheet: string]: WorkSheet } | XlsxExportSheet[]-
[filename]Excel文件名stringexport.xlsx
[opts]Excel写入选项,见 WritingOptionsWritingOptions-
[callback]保存前触发(wb: WorkBook) => void-

xlsx

xlsx 指令。

<div [xlsx]="XlsxExportOptions">导出</div>
\ No newline at end of file diff --git a/components/xlsx/zh/index.html b/components/xlsx/zh/index.html new file mode 100644 index 000000000..d24fa911b --- /dev/null +++ b/components/xlsx/zh/index.html @@ -0,0 +1,86 @@ +xlsx - NG-ALAIN

Excel 操作
IMPORT MODULE

一个基于 SheetJS 的Excel文件操作,它是目前在浏览器中包含最全的Excel操作的脚本库。

注:你也可以使用 js-xlsx 是另一个 Fork sheetjs 的类库,它提供包括:图片、样式等额外选项。最后你利用 callback 选项重要渲染你的 excel。

依赖

由于 sheetjs 脚本大小以及对 Excel 的操作并不是刚需的原因,因此采用一种延迟加载脚本的形式,可以通过全局配置配置来改变默认 CDN 路径,默认情况下使用 https://cdn.jsdelivr.net/npm/xlsx/dist/xlsx.full.min.js

使用本地路径

// angular.json
+{
+  "glob": "**/{xlsx.full.min,cpexcel}.js",
+  "input": "./node_modules/xlsx/dist",
+  "output": "assets/xlsx/"
+}
// global-config.module.ts
+const alainConfig: AlainConfig = {
+  xlsx: {
+    url: '/assets/xlsx/xlsx.full.min.js',
+    modules: [`/assets/xlsx/cpexcel.js`]
+  }
+};

代码演示

result:

导入

导入Excel并输出JSON,支持 File、URL 格式。

expand codeexpand code
import { ChangeDetectionStrategy, ChangeDetectorRef, Component } from '@angular/core';
+import { XlsxService } from '@delon/abc/xlsx';
+
+@Component({
+  selector: 'components-xlsx-import',
+  template: `
+    <button nz-button (click)="url()">Via Url</button>
+    <input type="file" (change)="change($event)" multiple="false" class="ml-sm" />
+    <p class="mt-sm">result: {{ data | json }}</p>
+  `,
+  changeDetection: ChangeDetectionStrategy.OnPush,
+})
+export class ComponentsXlsxImportComponent {
+  data: any;
+
+  constructor(private xlsx: XlsxService, private cdr: ChangeDetectorRef) {}
+
+  url(): void {
+    this.xlsx.import(`./assets/demo.xlsx`).then(res => {
+      this.data = res;
+      this.cdr.detectChanges();
+    });
+  }
+
+  change(e: Event): void {
+    const node = e.target as HTMLInputElement;
+    this.xlsx.import(node.files![0]).then(res => {
+      this.data = res;
+      this.cdr.detectChanges();
+    });
+    node.value = '';
+  }
+}
姓名年龄
编号姓名name 1年龄21
编号姓名name 2年龄22
编号姓名name 3年龄24
导出

导出Excel并自动弹出保存对话框。

expand codeexpand code
import { Component } from '@angular/core';
+
+import { STColumn, STData } from '@delon/abc/st';
+import { XlsxService } from '@delon/abc/xlsx';
+
+@Component({
+  selector: 'components-xlsx-export',
+  template: `
+    <button nz-button (click)="download('xlsx')">Export Xlsx</button>
+    <button nz-button (click)="download('csv')">Export Csv</button>
+    <st [data]="users" [ps]="3" [columns]="columns" class="mt-sm"></st>
+  `
+})
+export class ComponentsXlsxExportComponent {
+  constructor(private xlsx: XlsxService) {}
+
+  users: STData[] = Array(100)
+    .fill({})
+    .map((_, idx) => ({
+      id: idx + 1,
+      name: `name ${idx + 1}`,
+      age: Math.ceil(Math.random() * 10) + 20
+    }));
+  columns: STColumn[] = [
+    { title: '编号', index: 'id', type: 'checkbox' },
+    { title: '姓名', index: 'name' },
+    { title: '年龄', index: 'age' }
+  ];
+
+  download(format: 'xlsx' | 'csv'): void {
+    const data = [this.columns.map(i => i.title)];
+    this.users.forEach(i => data.push(this.columns.map(c => i[c.index as string])));
+    this.xlsx.export({
+      sheets: [
+        {
+          data,
+          name: 'sheet name'
+        }
+      ],
+      format
+    });
+  }
+}

API

LazyService

成员说明类型默认值
import(fileOrUrl: File | string)导入Excel,返回 JSONPromise<{ [key: string]: any[][] }>-
export(options: XlsxExportOptions)导出ExcelPromise<void>-
numberToSchema(val: number)数值转符号名string-

XlsxExportOptions

成员说明类型默认值
[sheets]数据源{ [sheet: string]: WorkSheet } | XlsxExportSheet[]-
[filename]Excel文件名stringexport.xlsx
[opts]Excel写入选项,见 WritingOptionsWritingOptions-
[callback]保存前触发(wb: WorkBook) => void-

xlsx

xlsx 指令。

<div [xlsx]="XlsxExportOptions">导出</div>
\ No newline at end of file diff --git a/components/zip/en/index.html b/components/zip/en/index.html new file mode 100644 index 000000000..e728c3d1c --- /dev/null +++ b/components/zip/en/index.html @@ -0,0 +1,116 @@ +zip - NG-ALAIN

Zip 操作
IMPORT MODULE

一个基于 jszip 的Zip文件操作。

依赖

由于 jszip 脚本大小以及对 Zip 的操作并不是刚需的原因,因此采用一种延迟加载脚本的形式,可以通过全局配置配置来改变默认 CDN 路径,默认情况下使用 https://cdn.jsdelivr.net/npm/jszip@3/dist/jszip.min.js

使用本地路径

// angular.json
+{
+  "glob": "**/jszip.min.js",
+  "input": "./node_modules/jszip/dist",
+  "output": "assets/jszip/"
+}
// global-config.module.ts
+const alainConfig: AlainConfig = {
+  zip: {
+    url: '/assets/jszip/jszip.min.js'
+  }
+};

代码演示

    解压

    读取Zip文件信息(含内容),支持 File、URL 形式。

    expand codeexpand code
    import { ChangeDetectionStrategy, ChangeDetectorRef, Component } from '@angular/core';
    +
    +import type jsZipType from 'jszip';
    +
    +import { ZipService } from '@delon/abc/zip';
    +
    +@Component({
    +  selector: 'components-zip-read',
    +  template: `
    +    <button nz-button (click)="url()">Via Url</button>
    +    <input type="file" (change)="change($event)" multiple="false" class="ml-sm" />
    +    <ol>
    +      <li *ngFor="let i of data">{{ i | json }}</li>
    +    </ol>
    +  `,
    +  changeDetection: ChangeDetectionStrategy.OnPush
    +})
    +export class ComponentsZipReadComponent {
    +  data: Array<{ name: string; dir: boolean; date: Date }> = [];
    +
    +  constructor(private zip: ZipService, private cdr: ChangeDetectorRef) {}
    +
    +  private format(data: jsZipType): void {
    +    const files = data.files;
    +    this.data = Object.keys(files).map(key => ({
    +      name: key,
    +      dir: files[key].dir,
    +      date: files[key].date
    +    }));
    +    this.cdr.detectChanges();
    +  }
    +
    +  url(): void {
    +    this.zip.read(`./assets/demo.zip`).then(res => this.format(res));
    +  }
    +
    +  change(e: Event): void {
    +    const file = (e.target as HTMLInputElement).files![0];
    +    this.zip.read(file).then(res => this.format(res));
    +  }
    +}
    压缩

    通过 pushUrl 可以快速将URL资源写入 Zip 实例。

    expand codeexpand code
    import { ChangeDetectorRef, Component } from '@angular/core';
    +
    +import type jsZipType from 'jszip';
    +
    +import { ZipService } from '@delon/abc/zip';
    +import { NzMessageService } from 'ng-zorro-antd/message';
    +
    +@Component({
    +  selector: 'components-zip-save',
    +  template: `
    +    <div *ngIf="instance">
    +      <button nz-button (click)="add()" [nzType]="'primary'">new</button>
    +      <button nz-button (click)="download()" class="ml-sm">download</button>
    +      <nz-table [nzData]="data" [nzFrontPagination]="false" [nzShowPagination]="false" class="mt-sm">
    +        <thead>
    +          <tr>
    +            <th><span>path</span></th>
    +            <th><span>url</span></th>
    +          </tr>
    +        </thead>
    +        <tbody>
    +          <tr *ngFor="let i of data; let index = index">
    +            <td><input nz-input [(ngModel)]="i.path" name="path{{ index }}" /></td>
    +            <td><input nz-input [(ngModel)]="i.url" name="url{{ index }}" /></td>
    +          </tr>
    +        </tbody>
    +      </nz-table>
    +    </div>
    +  `
    +})
    +export class ComponentsZipSaveComponent {
    +  instance: jsZipType | null = null;
    +  data: Array<{ path: string; url: string }> = [
    +    { path: '小程序标志.zip', url: 'https://wximg.gtimg.com/shake_tv/mina/standard_logo.zip' }
    +  ];
    +
    +  constructor(private zip: ZipService, private msg: NzMessageService, cdr: ChangeDetectorRef) {
    +    this.zip.create().then(ret => {
    +      this.instance = ret;
    +      cdr.detectChanges();
    +    });
    +  }
    +
    +  add(): void {
    +    this.data.push({ path: '', url: '' });
    +  }
    +
    +  download(): void {
    +    const promises: Array<Promise<void>> = [];
    +    this.data.forEach(item => {
    +      promises.push(this.zip.pushUrl(this.instance, item.path, item.url));
    +    });
    +    Promise.all(promises).then(
    +      () => {
    +        this.zip.save(this.instance).then(() => {
    +          this.msg.success('download success');
    +          this.data = [];
    +        });
    +      },
    +      (error: {}) => {
    +        console.warn(error);
    +        this.msg.error(JSON.stringify(error));
    +      }
    +    );
    +  }
    +}

    API

    ZipService

    成员说明类型默认值
    read(fileOrUrl: File | string, options?: JSZip.JSZipLoadOptions)解压Promise<JSZip>-
    create()创建 Zip 实例,用于创建压缩文件Promise<JSZip>-
    pushUrl(zip: JSZip, path: string, url: string)下载URL资源并写入 zipPromise<void>-
    save(zip: JSZip, options?: ZipWriteOptions)保存ZipPromise<void>-
    \ No newline at end of file diff --git a/components/zip/zh/index.html b/components/zip/zh/index.html new file mode 100644 index 000000000..3472a1a11 --- /dev/null +++ b/components/zip/zh/index.html @@ -0,0 +1,116 @@ +zip - NG-ALAIN

    Zip 操作
    IMPORT MODULE

    一个基于 jszip 的Zip文件操作。

    依赖

    由于 jszip 脚本大小以及对 Zip 的操作并不是刚需的原因,因此采用一种延迟加载脚本的形式,可以通过全局配置配置来改变默认 CDN 路径,默认情况下使用 https://cdn.jsdelivr.net/npm/jszip@3/dist/jszip.min.js

    使用本地路径

    // angular.json
    +{
    +  "glob": "**/jszip.min.js",
    +  "input": "./node_modules/jszip/dist",
    +  "output": "assets/jszip/"
    +}
    // global-config.module.ts
    +const alainConfig: AlainConfig = {
    +  zip: {
    +    url: '/assets/jszip/jszip.min.js'
    +  }
    +};

    代码演示

      解压

      读取Zip文件信息(含内容),支持 File、URL 形式。

      expand codeexpand code
      import { ChangeDetectionStrategy, ChangeDetectorRef, Component } from '@angular/core';
      +
      +import type jsZipType from 'jszip';
      +
      +import { ZipService } from '@delon/abc/zip';
      +
      +@Component({
      +  selector: 'components-zip-read',
      +  template: `
      +    <button nz-button (click)="url()">Via Url</button>
      +    <input type="file" (change)="change($event)" multiple="false" class="ml-sm" />
      +    <ol>
      +      <li *ngFor="let i of data">{{ i | json }}</li>
      +    </ol>
      +  `,
      +  changeDetection: ChangeDetectionStrategy.OnPush
      +})
      +export class ComponentsZipReadComponent {
      +  data: Array<{ name: string; dir: boolean; date: Date }> = [];
      +
      +  constructor(private zip: ZipService, private cdr: ChangeDetectorRef) {}
      +
      +  private format(data: jsZipType): void {
      +    const files = data.files;
      +    this.data = Object.keys(files).map(key => ({
      +      name: key,
      +      dir: files[key].dir,
      +      date: files[key].date
      +    }));
      +    this.cdr.detectChanges();
      +  }
      +
      +  url(): void {
      +    this.zip.read(`./assets/demo.zip`).then(res => this.format(res));
      +  }
      +
      +  change(e: Event): void {
      +    const file = (e.target as HTMLInputElement).files![0];
      +    this.zip.read(file).then(res => this.format(res));
      +  }
      +}
      压缩

      通过 pushUrl 可以快速将URL资源写入 Zip 实例。

      expand codeexpand code
      import { ChangeDetectorRef, Component } from '@angular/core';
      +
      +import type jsZipType from 'jszip';
      +
      +import { ZipService } from '@delon/abc/zip';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'components-zip-save',
      +  template: `
      +    <div *ngIf="instance">
      +      <button nz-button (click)="add()" [nzType]="'primary'">new</button>
      +      <button nz-button (click)="download()" class="ml-sm">download</button>
      +      <nz-table [nzData]="data" [nzFrontPagination]="false" [nzShowPagination]="false" class="mt-sm">
      +        <thead>
      +          <tr>
      +            <th><span>path</span></th>
      +            <th><span>url</span></th>
      +          </tr>
      +        </thead>
      +        <tbody>
      +          <tr *ngFor="let i of data; let index = index">
      +            <td><input nz-input [(ngModel)]="i.path" name="path{{ index }}" /></td>
      +            <td><input nz-input [(ngModel)]="i.url" name="url{{ index }}" /></td>
      +          </tr>
      +        </tbody>
      +      </nz-table>
      +    </div>
      +  `
      +})
      +export class ComponentsZipSaveComponent {
      +  instance: jsZipType | null = null;
      +  data: Array<{ path: string; url: string }> = [
      +    { path: '小程序标志.zip', url: 'https://wximg.gtimg.com/shake_tv/mina/standard_logo.zip' }
      +  ];
      +
      +  constructor(private zip: ZipService, private msg: NzMessageService, cdr: ChangeDetectorRef) {
      +    this.zip.create().then(ret => {
      +      this.instance = ret;
      +      cdr.detectChanges();
      +    });
      +  }
      +
      +  add(): void {
      +    this.data.push({ path: '', url: '' });
      +  }
      +
      +  download(): void {
      +    const promises: Array<Promise<void>> = [];
      +    this.data.forEach(item => {
      +      promises.push(this.zip.pushUrl(this.instance, item.path, item.url));
      +    });
      +    Promise.all(promises).then(
      +      () => {
      +        this.zip.save(this.instance).then(() => {
      +          this.msg.success('download success');
      +          this.data = [];
      +        });
      +      },
      +      (error: {}) => {
      +        console.warn(error);
      +        this.msg.error(JSON.stringify(error));
      +      }
      +    );
      +  }
      +}

      API

      ZipService

      成员说明类型默认值
      read(fileOrUrl: File | string, options?: JSZip.JSZipLoadOptions)解压Promise<JSZip>-
      create()创建 Zip 实例,用于创建压缩文件Promise<JSZip>-
      pushUrl(zip: JSZip, path: string, url: string)下载URL资源并写入 zipPromise<void>-
      save(zip: JSZip, options?: ZipWriteOptions)保存ZipPromise<void>-
      \ No newline at end of file diff --git a/docs/acl/en/index.html b/docs/acl/en/index.html new file mode 100644 index 000000000..9263be54e --- /dev/null +++ b/docs/acl/en/index.html @@ -0,0 +1 @@ +Not Page Name - NG-ALAIN
      This article has not been translated, hope that your can PR to translated it. Help us!

      ACL

      \ No newline at end of file diff --git a/docs/acl/zh/index.html b/docs/acl/zh/index.html new file mode 100644 index 000000000..9263be54e --- /dev/null +++ b/docs/acl/zh/index.html @@ -0,0 +1 @@ +Not Page Name - NG-ALAIN
      This article has not been translated, hope that your can PR to translated it. Help us!

      ACL

      \ No newline at end of file diff --git a/docs/architecture/en/index.html b/docs/architecture/en/index.html new file mode 100644 index 000000000..36318e4f0 --- /dev/null +++ b/docs/architecture/en/index.html @@ -0,0 +1,27 @@ +体系结构 - NG-ALAIN
      This article need re-translated, hope that your can PR to translated it. Help us!

      体系结构

      NG-ALAIN 目标是提供更多通用性业务模块,让开发者更加专注于业务。所以在你着手开始开发前,有必要了解整个 NG-ALAIN 的体系结构,从整体上了解 NG-ALAIN 包含了哪些东西及其含义,才能更好的利用这些业务组件库快速构建项目。

      结构图

      类库文档描述
      @delon/theme文档主题系统除了包含 NG-ALAIN 基础框架及所需样式(包含CSS工具集,一套类似Bootstrap)以外,还包含一些通用的数据渲染(Pipe)、服务工具类(页面标题、滚动条等)的集合,这些是日常必不可少的一些组成
      @delon/abc文档脚手架内提供了一套默认业务组件,这些组件抽象了控制台业务中的一些常见区块。我们将持续维护和迭代这些组件,为中后台业务提供比 Ant Design 基础组件更高级别的抽象
      @delon/chart文档基于 G2 的基础上二次封装,提供了业务中常用的图表套件,可以单独使用,也可以组合起来实现复杂的展示效果
      @delon/form文档基于 JSON Schema 标准的动态构建表单
      @delon/auth文档用户认证模块,用于解决如何获取、存取、使用这三个步骤的用户认证环节
      @delon/acl文档访问控制列表,是一种非常简单的基于角色权限控制,甚至达到控制某个按钮显隐的粒度
      @delon/cache文档将字典、城市数据等缓存至内存或持久化当中,有效减少 Http 请求
      @delon/mock文档Mock 会拦截 Angular Http 请求并返回测试数据,当后端未完成接口时 Mock 技术是一项不会影响前端开发进度的工具
      @delon/util文档包含数组、延迟、字符串、日期、校验等常见工具集
      @delon/testing-常用测试套件
      CLI Schematics文档快速生成统一的模板、可插拔的插件等

      目录结构

      当使用 ng add ng-alain 生成后的 NG-ALAIN 脚手架,它的基本目录结构概略图如下:

      ├── _mock                                       # Mock 数据规则目录
      +├── angular.json                                # Angular 项目配置文件
      +├── src
      +│   ├── app
      +│   │   ├── core                                # 核心模块
      +│   │   │   ├── i18n
      +│   │   │   ├── net
      +│   │   │   │   └── default.interceptor.ts      # 默认HTTP拦截器
      +│   │   │   ├── services
      +│   │   │   │   └── startup.service.ts          # 初始化项目配置
      +│   │   │   └── core.module.ts                  # 核心模块文件
      +│   │   ├── layout                              # 通用布局
      +│   │   ├── routes
      +│   │   │   ├── **                              # 业务目录
      +│   │   │   ├── routes.module.ts                # 业务路由模块
      +│   │   │   └── routes-routing.module.ts        # 业务路由注册口
      +│   │   ├── shared                              # 共享模块
      +│   │   │   ├── shared-delon.module.ts          # @Delon/* 次级共享模块导入
      +│   │   │   ├── shared-zorro.module.ts          # NG-ZORRO 次级共享模块导入
      +│   │   │   └── shared.module.ts                # 共享模块文件
      +│   │   ├── app.component.ts                    # 根组件
      +│   │   └── app.module.ts                       # 根模块
      +│   │   └── global-config.module.ts             # @delon & ng-zorro 全局配置项
      +│   ├── assets                                  # 本地静态资源
      +│   ├── environments                            # 环境变量配置
      +│   ├── styles                                  # 样式目录
      +└── └── style.less                              # 样式引导入口

      以下是针对各个目录及文件说明及使用目的:

      名称描述
      angular.jsonAngular 工作区及项目的配置文件,参考Angular文档
      _mockMock 数据规则目录,若你通过 命令行工具 创建项目时可以指定 --mock 参数决定是否需要 Mock 功能
      src/app/core/core.module.ts核心模块,只会导入一次。因此,针对整个业务模块都需要使用的纯服务类(例如:消息、数据访问等)
      src/app/core/i18n国际化数据加载及处理相关类,若你通过 命令行工具 创建项目时可以指定 -di 参数决定是否需要国际化支持
      src/app/core/net默认拦截器,你可以在这里统一处理请求参数、请求异常、业务异常等动作
      src/app/core/services/startup.service.ts当你需要在 Angular 启动前执行一些远程数据(例如:应用信息、用户信息等)时非常有用
      src/app/layout布局目录,包含基础布局、空白布局、用户登录布局
      src/app/routes业务模块,你的所有业务代码都将在这里
      src/app/shared/shared.module.ts共享模块,指当你需要针对整个业务模块都需要使用的一些第三方模块、自定义组件、自定义指令,都应该存在这里。除此之外,针对 @delon & NG-ZORRO 分别构建了 shared-delon.module.tsshared-zorro.module.ts 两种次级共享模块的导入。
      src/app/global-config.module.ts针对 @delon & NG-ZORRO 的全局配置项
      src/environments应用环境变量,包含以下值:SERVER_URL 所有HTTP请求的前缀;production 是否生产环境;useHash 路由是否useHash模式
      \ No newline at end of file diff --git a/docs/architecture/zh/index.html b/docs/architecture/zh/index.html new file mode 100644 index 000000000..f91459e92 --- /dev/null +++ b/docs/architecture/zh/index.html @@ -0,0 +1,27 @@ +体系结构 - NG-ALAIN
      This article need re-translated, hope that your can PR to translated it. Help us!

      体系结构

      NG-ALAIN 目标是提供更多通用性业务模块,让开发者更加专注于业务。所以在你着手开始开发前,有必要了解整个 NG-ALAIN 的体系结构,从整体上了解 NG-ALAIN 包含了哪些东西及其含义,才能更好的利用这些业务组件库快速构建项目。

      结构图

      类库文档描述
      @delon/theme文档主题系统除了包含 NG-ALAIN 基础框架及所需样式(包含CSS工具集,一套类似Bootstrap)以外,还包含一些通用的数据渲染(Pipe)、服务工具类(页面标题、滚动条等)的集合,这些是日常必不可少的一些组成
      @delon/abc文档脚手架内提供了一套默认业务组件,这些组件抽象了控制台业务中的一些常见区块。我们将持续维护和迭代这些组件,为中后台业务提供比 Ant Design 基础组件更高级别的抽象
      @delon/chart文档基于 G2 的基础上二次封装,提供了业务中常用的图表套件,可以单独使用,也可以组合起来实现复杂的展示效果
      @delon/form文档基于 JSON Schema 标准的动态构建表单
      @delon/auth文档用户认证模块,用于解决如何获取、存取、使用这三个步骤的用户认证环节
      @delon/acl文档访问控制列表,是一种非常简单的基于角色权限控制,甚至达到控制某个按钮显隐的粒度
      @delon/cache文档将字典、城市数据等缓存至内存或持久化当中,有效减少 Http 请求
      @delon/mock文档Mock 会拦截 Angular Http 请求并返回测试数据,当后端未完成接口时 Mock 技术是一项不会影响前端开发进度的工具
      @delon/util文档包含数组、延迟、字符串、日期、校验等常见工具集
      @delon/testing-常用测试套件
      CLI Schematics文档快速生成统一的模板、可插拔的插件等

      目录结构

      当使用 ng add ng-alain 生成后的 NG-ALAIN 脚手架,它的基本目录结构概略图如下:

      ├── _mock                                       # Mock 数据规则目录
      +├── angular.json                                # Angular 项目配置文件
      +├── src
      +│   ├── app
      +│   │   ├── core                                # 核心模块
      +│   │   │   ├── i18n
      +│   │   │   ├── net
      +│   │   │   │   └── default.interceptor.ts      # 默认HTTP拦截器
      +│   │   │   ├── services
      +│   │   │   │   └── startup.service.ts          # 初始化项目配置
      +│   │   │   └── core.module.ts                  # 核心模块文件
      +│   │   ├── layout                              # 通用布局
      +│   │   ├── routes
      +│   │   │   ├── **                              # 业务目录
      +│   │   │   ├── routes.module.ts                # 业务路由模块
      +│   │   │   └── routes-routing.module.ts        # 业务路由注册口
      +│   │   ├── shared                              # 共享模块
      +│   │   │   ├── shared-delon.module.ts          # @Delon/* 次级共享模块导入
      +│   │   │   ├── shared-zorro.module.ts          # NG-ZORRO 次级共享模块导入
      +│   │   │   └── shared.module.ts                # 共享模块文件
      +│   │   ├── app.component.ts                    # 根组件
      +│   │   └── app.module.ts                       # 根模块
      +│   │   └── global-config.module.ts             # @delon & ng-zorro 全局配置项
      +│   ├── assets                                  # 本地静态资源
      +│   ├── environments                            # 环境变量配置
      +│   ├── styles                                  # 样式目录
      +└── └── style.less                              # 样式引导入口

      以下是针对各个目录及文件说明及使用目的:

      名称描述
      angular.jsonAngular 工作区及项目的配置文件,参考Angular文档
      _mockMock 数据规则目录,若你通过 命令行工具 创建项目时可以指定 --mock 参数决定是否需要 Mock 功能
      src/app/core/core.module.ts核心模块,只会导入一次。因此,针对整个业务模块都需要使用的纯服务类(例如:消息、数据访问等)
      src/app/core/i18n国际化数据加载及处理相关类,若你通过 命令行工具 创建项目时可以指定 -di 参数决定是否需要国际化支持
      src/app/core/net默认拦截器,你可以在这里统一处理请求参数、请求异常、业务异常等动作
      src/app/core/services/startup.service.ts当你需要在 Angular 启动前执行一些远程数据(例如:应用信息、用户信息等)时非常有用
      src/app/layout布局目录,包含基础布局、空白布局、用户登录布局
      src/app/routes业务模块,你的所有业务代码都将在这里
      src/app/shared/shared.module.ts共享模块,指当你需要针对整个业务模块都需要使用的一些第三方模块、自定义组件、自定义指令,都应该存在这里。除此之外,针对 @delon & NG-ZORRO 分别构建了 shared-delon.module.tsshared-zorro.module.ts 两种次级共享模块的导入。
      src/app/global-config.module.ts针对 @delon & NG-ZORRO 的全局配置项
      src/environments应用环境变量,包含以下值:SERVER_URL 所有HTTP请求的前缀;production 是否生产环境;useHash 路由是否useHash模式
      \ No newline at end of file diff --git a/docs/auth/en/index.html b/docs/auth/en/index.html new file mode 100644 index 000000000..9bbd237de --- /dev/null +++ b/docs/auth/en/index.html @@ -0,0 +1 @@ +Not Page Name - NG-ALAIN
      This article has not been translated, hope that your can PR to translated it. Help us!

      用户认证

      \ No newline at end of file diff --git a/docs/auth/zh/index.html b/docs/auth/zh/index.html new file mode 100644 index 000000000..9bbd237de --- /dev/null +++ b/docs/auth/zh/index.html @@ -0,0 +1 @@ +Not Page Name - NG-ALAIN
      This article has not been translated, hope that your can PR to translated it. Help us!

      用户认证

      \ No newline at end of file diff --git a/docs/cache/en/index.html b/docs/cache/en/index.html new file mode 100644 index 000000000..433e9a598 --- /dev/null +++ b/docs/cache/en/index.html @@ -0,0 +1 @@ +Not Page Name - NG-ALAIN
      This article has not been translated, hope that your can PR to translated it. Help us!

      缓存

      \ No newline at end of file diff --git a/docs/cache/zh/index.html b/docs/cache/zh/index.html new file mode 100644 index 000000000..433e9a598 --- /dev/null +++ b/docs/cache/zh/index.html @@ -0,0 +1 @@ +Not Page Name - NG-ALAIN
      This article has not been translated, hope that your can PR to translated it. Help us!

      缓存

      \ No newline at end of file diff --git a/docs/changelog/en/index.html b/docs/changelog/en/index.html new file mode 100644 index 000000000..ae761b5f7 --- /dev/null +++ b/docs/changelog/en/index.html @@ -0,0 +1 @@ +更新日志 - NG-ALAIN

      更新日志

      NG-ALAIN 严格遵循 Semantic Versioning 2.0.0 语义化版本规范。

      发布周期

      • 修订版本号:每周末会进行日常 bugfix 更新。(如果有紧急的 bugfix,则任何时候都可发布)

      • 次版本号:每月发布一个带有新特性的向下兼容的版本。

      • 主版本号:含有破坏性更新和新特性,不在发布周期内。


      16.4.2 (2023-10-26)

      Performance Improvements

      16.4.1 (2023-10-20)

      Bug Fixes

      16.4.0 (2023-10-19)

      Bug Fixes

      • abc:onboarding: 纠正暗黑风格 (#1650) (7a21933)

      • abc:st: 纠正导出 Excel 中的宽度未对齐问题 (#1655) (76db16c)

      • cli: 修复 Angular 16 下 ng new ng-alain 缺失 fileReplacements (#1658) (c5b46ee)

      • form:array: 修复 ui 属性无法合并 ui (#1657) (6b3c711)

      • form:select: 纠正有默认值时初始化时无法触发 onSearch (#1660) (fa234cd)

      • form: 修复设置 visibleIf 触发时也会触发 reset 方法 (#1653) (d80f8fb)

      • form: 修复渲染UI不应被继承(#1661) (ee96aaa)

      • fix(form:widget:object): 修复 card 样式缺失 optional (#1661) (ee96aaa)

      Features

      • abc:onboarding: 新增 key 用于自动判断是否发生版本变化 (#1652) (5edaa97)

      • abc:theme: 纠正 ng-tag 列表换行间距问题 (#1647) (5da4ecb)

      • cli: add provide function (#1654) (c8779f4)

      16.3.0 (2023-09-01)

      SCAFFOLDING

      • 启用 bindToComponentInputs #2409.

      Bug Fixes

      • abc:pdf: 忽略依赖 pdfjs-dist(若使用本地加载模式,需要自行安装该依赖,pdfjs-dist 依赖了 canvas 可能会因为环境因素安装依赖很慢) (#1641) (b987bab)

      • form:select: 当设置 onSearch 时重置数据时会忽略更新预选数据 (#1644) (1f8def7)

      • theme:http: 纠正 HttpOptions 缺少 content (#1640) (28eeceb)

      Features

      16.2.1 (2023-08-06)

      Bug Fixes

      • abc:reuse-tab: 修复缺少导出缓存相关 (#1633) (2c7def7)

      • auth:cookie: 修复过期值应与 expires 同步 (#1636) (eca7bcb)

      • theme:table: 修复单图像的间距问题 (#1629) (994e2be)

      • theme:title: 修复应忽略空标题 (#1638) (c7bf339)

      16.2.0 (2023-07-21)

      SCAFFOLDING

      • 路由守卫的破坏性变更 #2407.

      • 代码风格变更 #2405.

      Bug Fixes

      • abc:onboarding: 修复使用过期方法 ComponentFactoryResolver (#1624) (ae065c2)

      • chat:timeline: 修复 y2 指标数据为可选 (#1622) (b565ddf)

      • cli: 移除生成模块时包含无效参数 skipTests (#1616) (0da83f8)

      • 修复 col 占位符不对齐问题,涉及 se, sv, sg 组件 (#1617) (83b08c9)

      • theme:modal: 修复过期参数 nzComponentParams (#1615) (45863a1)

      Features

      • abc:st: 新增 onCell 方法支持合并列或行 (#1613) (9ab109e)

      • abc:st: 新增 icon, className 方法支持动态调整 (#1618) (6bf27da)

      • theme:layout-default: 新增 fetchingStrictly, fetching 属性用于自主受控顶部加载动画状态 (#1614) (8446da6)

      BREAKING CHANGE

      • acl: 重构 ACLGuardaclCanMatch, aclCanActivate, aclCanActivateChild

      • auth:simple 重构 SimpleGuardauthSimpleCanMatch, authSimpleCanActivate, authSimpleCanActivateChild

      • auth:jtw 重构 JWTGuardauthJWTCanMatch, authJWTCanActivate, authJWTCanActivateChild

      • i18n 重构 AlainI18NGuardalainI18nCanMatch, alainI18nCanActivate, alainI18nCanActivateChild

      16.1.1 (2023-07-16)

      Bug Fixes

      • cli: 移除过期库 stylelint-config-prettier (#1606) (2ecc28b)

      • theme: 修复忽略两个 nzType="link" 按错时间距 (#1605) (0fdd15d)

      Features

      • abc:reuse-tab: 新增可自定义缓存存储 (#1609) (11599d9)

      • theme:modal: 新增支持拖拽参数 drag (#1607) (3cd73f7)

      16.0.1 (2023-06-08)

      • 修复 ng-zorro-antd 错位版本依赖

      16.0.0 (2023-06-07)

      Bug Fixes

      • abc:st: 修复固定列样式错误 (#1598) (d2bf211)

      • form: 修复ui由于继承关系导致重复引用 (#1600) (a0150e7)

      历史版本

      历史版本的更新记录可以在 Github

      \ No newline at end of file diff --git a/docs/changelog/zh/index.html b/docs/changelog/zh/index.html new file mode 100644 index 000000000..701dd46a9 --- /dev/null +++ b/docs/changelog/zh/index.html @@ -0,0 +1 @@ +更新日志 - NG-ALAIN

      更新日志

      NG-ALAIN 严格遵循 Semantic Versioning 2.0.0 语义化版本规范。

      发布周期

      • 修订版本号:每周末会进行日常 bugfix 更新。(如果有紧急的 bugfix,则任何时候都可发布)

      • 次版本号:每月发布一个带有新特性的向下兼容的版本。

      • 主版本号:含有破坏性更新和新特性,不在发布周期内。


      16.4.2 (2023-10-26)

      Performance Improvements

      16.4.1 (2023-10-20)

      Bug Fixes

      16.4.0 (2023-10-19)

      Bug Fixes

      • abc:onboarding: 纠正暗黑风格 (#1650) (7a21933)

      • abc:st: 纠正导出 Excel 中的宽度未对齐问题 (#1655) (76db16c)

      • cli: 修复 Angular 16 下 ng new ng-alain 缺失 fileReplacements (#1658) (c5b46ee)

      • form:array: 修复 ui 属性无法合并 ui (#1657) (6b3c711)

      • form:select: 纠正有默认值时初始化时无法触发 onSearch (#1660) (fa234cd)

      • form: 修复设置 visibleIf 触发时也会触发 reset 方法 (#1653) (d80f8fb)

      • form: 修复渲染UI不应被继承(#1661) (ee96aaa)

      • fix(form:widget:object): 修复 card 样式缺失 optional (#1661) (ee96aaa)

      Features

      • abc:onboarding: 新增 key 用于自动判断是否发生版本变化 (#1652) (5edaa97)

      • abc:theme: 纠正 ng-tag 列表换行间距问题 (#1647) (5da4ecb)

      • cli: add provide function (#1654) (c8779f4)

      16.3.0 (2023-09-01)

      SCAFFOLDING

      • 启用 bindToComponentInputs #2409.

      Bug Fixes

      • abc:pdf: 忽略依赖 pdfjs-dist(若使用本地加载模式,需要自行安装该依赖,pdfjs-dist 依赖了 canvas 可能会因为环境因素安装依赖很慢) (#1641) (b987bab)

      • form:select: 当设置 onSearch 时重置数据时会忽略更新预选数据 (#1644) (1f8def7)

      • theme:http: 纠正 HttpOptions 缺少 content (#1640) (28eeceb)

      Features

      16.2.1 (2023-08-06)

      Bug Fixes

      • abc:reuse-tab: 修复缺少导出缓存相关 (#1633) (2c7def7)

      • auth:cookie: 修复过期值应与 expires 同步 (#1636) (eca7bcb)

      • theme:table: 修复单图像的间距问题 (#1629) (994e2be)

      • theme:title: 修复应忽略空标题 (#1638) (c7bf339)

      16.2.0 (2023-07-21)

      SCAFFOLDING

      • 路由守卫的破坏性变更 #2407.

      • 代码风格变更 #2405.

      Bug Fixes

      • abc:onboarding: 修复使用过期方法 ComponentFactoryResolver (#1624) (ae065c2)

      • chat:timeline: 修复 y2 指标数据为可选 (#1622) (b565ddf)

      • cli: 移除生成模块时包含无效参数 skipTests (#1616) (0da83f8)

      • 修复 col 占位符不对齐问题,涉及 se, sv, sg 组件 (#1617) (83b08c9)

      • theme:modal: 修复过期参数 nzComponentParams (#1615) (45863a1)

      Features

      • abc:st: 新增 onCell 方法支持合并列或行 (#1613) (9ab109e)

      • abc:st: 新增 icon, className 方法支持动态调整 (#1618) (6bf27da)

      • theme:layout-default: 新增 fetchingStrictly, fetching 属性用于自主受控顶部加载动画状态 (#1614) (8446da6)

      BREAKING CHANGE

      • acl: 重构 ACLGuardaclCanMatch, aclCanActivate, aclCanActivateChild

      • auth:simple 重构 SimpleGuardauthSimpleCanMatch, authSimpleCanActivate, authSimpleCanActivateChild

      • auth:jtw 重构 JWTGuardauthJWTCanMatch, authJWTCanActivate, authJWTCanActivateChild

      • i18n 重构 AlainI18NGuardalainI18nCanMatch, alainI18nCanActivate, alainI18nCanActivateChild

      16.1.1 (2023-07-16)

      Bug Fixes

      • cli: 移除过期库 stylelint-config-prettier (#1606) (2ecc28b)

      • theme: 修复忽略两个 nzType="link" 按错时间距 (#1605) (0fdd15d)

      Features

      • abc:reuse-tab: 新增可自定义缓存存储 (#1609) (11599d9)

      • theme:modal: 新增支持拖拽参数 drag (#1607) (3cd73f7)

      16.0.1 (2023-06-08)

      • 修复 ng-zorro-antd 错位版本依赖

      16.0.0 (2023-06-07)

      Bug Fixes

      • abc:st: 修复固定列样式错误 (#1598) (d2bf211)

      • form: 修复ui由于继承关系导致重复引用 (#1600) (a0150e7)

      历史版本

      历史版本的更新记录可以在 Github

      \ No newline at end of file diff --git a/docs/cli/en/index.html b/docs/cli/en/index.html new file mode 100644 index 000000000..073b216a8 --- /dev/null +++ b/docs/cli/en/index.html @@ -0,0 +1 @@ +Not Page Name - NG-ALAIN
      This article has not been translated, hope that your can PR to translated it. Help us!

      命令行工具

      \ No newline at end of file diff --git a/docs/cli/zh/index.html b/docs/cli/zh/index.html new file mode 100644 index 000000000..073b216a8 --- /dev/null +++ b/docs/cli/zh/index.html @@ -0,0 +1 @@ +Not Page Name - NG-ALAIN
      This article has not been translated, hope that your can PR to translated it. Help us!

      命令行工具

      \ No newline at end of file diff --git a/docs/contributing/en/index.html b/docs/contributing/en/index.html new file mode 100644 index 000000000..f5afaefff --- /dev/null +++ b/docs/contributing/en/index.html @@ -0,0 +1 @@ +贡献指南 - NG-ALAIN

      贡献指南

      这篇指南会指导你如何为 NG-ALAIN 贡献一份自己的力量,请在你要提 issue 或者 pull request 之前花几分钟来阅读一遍这篇指南。

      行为准则

      我们有一份 行为准则,希望所有的贡献者都能遵守,请花时间阅读一遍全文以确保你能明白哪些是可以做的,哪些是不可以做的。

      透明的开发

      我们所有的工作都会放在 ng-alaindelon 上。不管是核心团队的成员还是外部贡献者的 pull request 都需要经过同样流程的 review。

      Bugs

      我们使用 GitHub Issues 来做 bug 追踪。如果你想要你发现的 bug 被快速解决,最好的办法就是按照 issues 呈现的模板认真填写每一项;并且能使用这个 模板 来提供重现。

      在你报告一个 bug 之前,请先确保已经搜索过已有的 issue 和阅读了 文档站

      新增功能

      如果你有改进我们的 API 或者新增功能的想法,同样按照 issues 呈现的模板认真填写每一项。

      第一次贡献

      如果你还不清楚怎么在 GitHub 上提 Pull Request ,可以阅读下面这篇文章来学习:

      如何优雅地在 GitHub 上贡献代码

      为了能帮助你开始你的第一次尝试,我们用 good first issues 标记了一些比较比较容易修复的 bug 和小功能。这些 issue 可以很好地做为你的首次尝试。

      如果你打算开始处理一个 issue,请先检查一下 issue 下面的留言以确保没有别人正在处理这个 issue。如果当前没有人在处理的话你可以留言告知其他人你将会处理这个 issue,以免别人重复劳动。

      如果之前有人留言说会处理这个 issue 但是一两个星期都没有动静,那么你也可以接手处理这个 issue,当然还是需要留言告知其他人。

      Pull Request

      NG-ALAIN 会关注所有的 pull request,我们会 review 以及合并你的代码,也有可能要求你做一些修改或者告诉你我们为什么不能接受这样的修改。

      在你发送 Pull Request 之前,请确认你是按照下面的步骤来做的:

      1. 在项目根目录下运行了 yarn

      2. 如果你修复了一个 bug 或者新增了一个功能,请确保写了相应的测试,这很重要。

      3. 确认所有的测试都是通过的 npm run test

      4. 确保你的代码通过了 lint 检查 npm run lint。小贴士: Lint 会在你 git commit 的时候自动运行。

      5. 确保你的代码在提交之前经过了正确的 Rebase

      6. 确保你的提交符合规范

      开发流程

      在你 clone 了 ng-alain 或 delon 的代码并且使用 yarn 安装完依赖后,你还可以运行下面几个常用的命令:

      delon 基建类库

      1. npm run site 在本地运行 ng-alain.com 网站

      2. npm run lint 检查 packages 代码风格

      3. npm run test 运行 packages 所有类库测试

      4. npm run release 构建 packages 发布包

      ng-alain 脚手架

      1. npm start 在本地运行脚手架

      2. npm run lint 检查代码风格

      3. npm test 运行测试

      4. npm run build 构建生产环境网站

        <
      \ No newline at end of file diff --git a/docs/contributing/zh/index.html b/docs/contributing/zh/index.html new file mode 100644 index 000000000..3c435e9e2 --- /dev/null +++ b/docs/contributing/zh/index.html @@ -0,0 +1 @@ +贡献指南 - NG-ALAIN

      贡献指南

      这篇指南会指导你如何为 NG-ALAIN 贡献一份自己的力量,请在你要提 issue 或者 pull request 之前花几分钟来阅读一遍这篇指南。

      行为准则

      我们有一份 行为准则,希望所有的贡献者都能遵守,请花时间阅读一遍全文以确保你能明白哪些是可以做的,哪些是不可以做的。

      透明的开发

      我们所有的工作都会放在 ng-alaindelon 上。不管是核心团队的成员还是外部贡献者的 pull request 都需要经过同样流程的 review。

      Bugs

      我们使用 GitHub Issues 来做 bug 追踪。如果你想要你发现的 bug 被快速解决,最好的办法就是按照 issues 呈现的模板认真填写每一项;并且能使用这个 模板 来提供重现。

      在你报告一个 bug 之前,请先确保已经搜索过已有的 issue 和阅读了 文档站

      新增功能

      如果你有改进我们的 API 或者新增功能的想法,同样按照 issues 呈现的模板认真填写每一项。

      第一次贡献

      如果你还不清楚怎么在 GitHub 上提 Pull Request ,可以阅读下面这篇文章来学习:

      如何优雅地在 GitHub 上贡献代码

      为了能帮助你开始你的第一次尝试,我们用 good first issues 标记了一些比较比较容易修复的 bug 和小功能。这些 issue 可以很好地做为你的首次尝试。

      如果你打算开始处理一个 issue,请先检查一下 issue 下面的留言以确保没有别人正在处理这个 issue。如果当前没有人在处理的话你可以留言告知其他人你将会处理这个 issue,以免别人重复劳动。

      如果之前有人留言说会处理这个 issue 但是一两个星期都没有动静,那么你也可以接手处理这个 issue,当然还是需要留言告知其他人。

      Pull Request

      NG-ALAIN 会关注所有的 pull request,我们会 review 以及合并你的代码,也有可能要求你做一些修改或者告诉你我们为什么不能接受这样的修改。

      在你发送 Pull Request 之前,请确认你是按照下面的步骤来做的:

      1. 在项目根目录下运行了 yarn

      2. 如果你修复了一个 bug 或者新增了一个功能,请确保写了相应的测试,这很重要。

      3. 确认所有的测试都是通过的 npm run test

      4. 确保你的代码通过了 lint 检查 npm run lint。小贴士: Lint 会在你 git commit 的时候自动运行。

      5. 确保你的代码在提交之前经过了正确的 Rebase

      6. 确保你的提交符合规范

      开发流程

      在你 clone 了 ng-alain 或 delon 的代码并且使用 yarn 安装完依赖后,你还可以运行下面几个常用的命令:

      delon 基建类库

      1. npm run site 在本地运行 ng-alain.com 网站

      2. npm run lint 检查 packages 代码风格

      3. npm run test 运行 packages 所有类库测试

      4. npm run release 构建 packages 发布包

      ng-alain 脚手架

      1. npm start 在本地运行脚手架

      2. npm run lint 检查代码风格

      3. npm test 运行测试

      4. npm run build 构建生产环境网站

        <
      \ No newline at end of file diff --git a/docs/deploy/en/index.html b/docs/deploy/en/index.html new file mode 100644 index 000000000..8b2643663 --- /dev/null +++ b/docs/deploy/en/index.html @@ -0,0 +1,19 @@ +构建和发布 - NG-ALAIN

      构建和发布

      构建

      当项目开发完毕,只需要运行一行命令就可以打包你的应用:

      npm run build

      NG-ALAIN 本身是一个 Angular CLI 项目,因此也可以参照 Build 完成更复杂的构建需求。构建打包成功之后,会在根目录生成 dist 文件夹,里面就是构建打包好的文件,包含若干 *.js*.cssindex.html 等静态文件。

      JavaScript heap out of memory

      避免执行 ng build 时抛出 JavaScript heap out of memory

      {
      +  "scripts": {
      +    "build": "node --max_old_space_size=5120 ./node_modules/@angular/cli/bin/ng build"
      +  }
      +}

      环境变量

      当你需要区别开发和部署以及测试环境的时候,可以通过 src/environments 文件夹根据不同环境配置相应的参数,配置项同时也可以在应用当中直接调用它们。同时,还需要配置 angular.json 内的配置项,最后你可以透过命令改变环境配置。

      分析构建文件体积

      如果构建文件很大,可以通过 analyze 命令构建并分析依赖模块的体积分布,从而优化你的代码。

      npm run analyze

      查看分析页:

      npm run analyze:view

      发布

      对于发布来讲,只需要将最终生成的静态文件,也就是通常情况下 dist 文件夹的静态文件发布到你的 cdn 或者静态服务器即可,需要注意的是其中的 index.html 通常会是你后台服务的入口页面,在确定了 js 和 css 的静态之后可能需要改变页面的引入路径。

      默认的静态资源引用路径直接指向 dist 文件夹发布所处应用的目录下,例如你将 dist 发布至 ng-alain.com 站点的根目录里则请求的网址是 //ng-alain.com/***.js//ng-alain.com/***.css,若 dist 发布至某站点下某个目录如 v2 文件夹下,则请求的网址是 //ng-alain.com/v2/***.js//ng-alain.com/v2/***.css

      如果你的静态资源是部署到其他域名(例如独立的 cdn 地址),你可以透过 -d 参数指定一个 cdn 地址。

      ng build -d=//cdn.ng-alain.com/

      这样生成的 index.html*.js*.css 会自动加上 //cdn.ng-alain.com/*.js

      路由策略

      Angular 前端路由有两种不同策略 HashLocationStrategyPathLocationStrategy。前者是以 # 后面的路径进行路由处理,通过 HTML5 History 进行前端路由管理,而后者则是类似页面访问路径并没有 #,通过服务端的配置,能够访问指定 URL 都定向到当前页面,从而能够进行前端路由管理。

      如果你想采用 PathLocationStrategy 策略,则需要将 ./src/app/routes/routes.module.tsRouterModule.forRoot(routes, { useHash: true }) 换成 RouterModule.forRoot(routes)。同时需要服务端做一个映射,比如:

      express 的例子:

      app.use(express.static(path.join(__dirname, 'build')));
      +
      +app.get('/*', function (req, res) {
      +  res.sendFile(path.join(__dirname, 'build', 'index.html'));
      +});

      egg 的例子:

      // controller
      +exports.index = function* () {
      +  yield this.render('App.jsx', {
      +    context: {
      +      user: this.session.user,
      +    },
      +  });
      +};
      +
      +// router
      +app.get('home', '/*', 'home.index');

      有关更多 Angular 路由相当问题,请阅读官网

      Docker

      NG-ALAIN 提供了一个基于 nginx WEB服务完整的构建Angular项目的镜像文件。其中 nginx 是采用 nginx:1.13.5-alpine 的镜像,基本上可以满足 NG-ALAIN 项目的良好运行环境,倘若有更多需求,你可以利用 docker run 轻易的指定 nginx.conf

      1、构建镜像

      根据 Dockerfile 构建一个完整的 NG-ALAIN 所需要的运行环境的镜像。

      docker build -t ng-alain .

      2、运行

      基于compose(推荐)

      docker-compose up -d

      其细节可以通过 docker-compose.yml 修改。

      基于命令式

      docker run -d -p 80:80 --name alain ng-alain

      最后你可以访问:http://localhost/

      3、关于SSL

      NG-ALAIN 提供的 Dockerfile 文件相对于比较简单,而实际项目中最常用的是对SSL的支持。

      因此,默认情况下你可以将证书放置 _nginx/ssl 目录下,并开启 _nginx/default.conf 相关SSL配置项即可。

      最后,增加 docker-compose.ymlports 节点:

      - 443:443

      容器部署

      参考 Angular 容器部署

      \ No newline at end of file diff --git a/docs/deploy/zh/index.html b/docs/deploy/zh/index.html new file mode 100644 index 000000000..e870e81de --- /dev/null +++ b/docs/deploy/zh/index.html @@ -0,0 +1,19 @@ +构建和发布 - NG-ALAIN

      构建和发布

      构建

      当项目开发完毕,只需要运行一行命令就可以打包你的应用:

      npm run build

      NG-ALAIN 本身是一个 Angular CLI 项目,因此也可以参照 Build 完成更复杂的构建需求。构建打包成功之后,会在根目录生成 dist 文件夹,里面就是构建打包好的文件,包含若干 *.js*.cssindex.html 等静态文件。

      JavaScript heap out of memory

      避免执行 ng build 时抛出 JavaScript heap out of memory

      {
      +  "scripts": {
      +    "build": "node --max_old_space_size=5120 ./node_modules/@angular/cli/bin/ng build"
      +  }
      +}

      环境变量

      当你需要区别开发和部署以及测试环境的时候,可以通过 src/environments 文件夹根据不同环境配置相应的参数,配置项同时也可以在应用当中直接调用它们。同时,还需要配置 angular.json 内的配置项,最后你可以透过命令改变环境配置。

      分析构建文件体积

      如果构建文件很大,可以通过 analyze 命令构建并分析依赖模块的体积分布,从而优化你的代码。

      npm run analyze

      查看分析页:

      npm run analyze:view

      发布

      对于发布来讲,只需要将最终生成的静态文件,也就是通常情况下 dist 文件夹的静态文件发布到你的 cdn 或者静态服务器即可,需要注意的是其中的 index.html 通常会是你后台服务的入口页面,在确定了 js 和 css 的静态之后可能需要改变页面的引入路径。

      默认的静态资源引用路径直接指向 dist 文件夹发布所处应用的目录下,例如你将 dist 发布至 ng-alain.com 站点的根目录里则请求的网址是 //ng-alain.com/***.js//ng-alain.com/***.css,若 dist 发布至某站点下某个目录如 v2 文件夹下,则请求的网址是 //ng-alain.com/v2/***.js//ng-alain.com/v2/***.css

      如果你的静态资源是部署到其他域名(例如独立的 cdn 地址),你可以透过 -d 参数指定一个 cdn 地址。

      ng build -d=//cdn.ng-alain.com/

      这样生成的 index.html*.js*.css 会自动加上 //cdn.ng-alain.com/*.js

      路由策略

      Angular 前端路由有两种不同策略 HashLocationStrategyPathLocationStrategy。前者是以 # 后面的路径进行路由处理,通过 HTML5 History 进行前端路由管理,而后者则是类似页面访问路径并没有 #,通过服务端的配置,能够访问指定 URL 都定向到当前页面,从而能够进行前端路由管理。

      如果你想采用 PathLocationStrategy 策略,则需要将 ./src/app/routes/routes.module.tsRouterModule.forRoot(routes, { useHash: true }) 换成 RouterModule.forRoot(routes)。同时需要服务端做一个映射,比如:

      express 的例子:

      app.use(express.static(path.join(__dirname, 'build')));
      +
      +app.get('/*', function (req, res) {
      +  res.sendFile(path.join(__dirname, 'build', 'index.html'));
      +});

      egg 的例子:

      // controller
      +exports.index = function* () {
      +  yield this.render('App.jsx', {
      +    context: {
      +      user: this.session.user,
      +    },
      +  });
      +};
      +
      +// router
      +app.get('home', '/*', 'home.index');

      有关更多 Angular 路由相当问题,请阅读官网

      Docker

      NG-ALAIN 提供了一个基于 nginx WEB服务完整的构建Angular项目的镜像文件。其中 nginx 是采用 nginx:1.13.5-alpine 的镜像,基本上可以满足 NG-ALAIN 项目的良好运行环境,倘若有更多需求,你可以利用 docker run 轻易的指定 nginx.conf

      1、构建镜像

      根据 Dockerfile 构建一个完整的 NG-ALAIN 所需要的运行环境的镜像。

      docker build -t ng-alain .

      2、运行

      基于compose(推荐)

      docker-compose up -d

      其细节可以通过 docker-compose.yml 修改。

      基于命令式

      docker run -d -p 80:80 --name alain ng-alain

      最后你可以访问:http://localhost/

      3、关于SSL

      NG-ALAIN 提供的 Dockerfile 文件相对于比较简单,而实际项目中最常用的是对SSL的支持。

      因此,默认情况下你可以将证书放置 _nginx/ssl 目录下,并开启 _nginx/default.conf 相关SSL配置项即可。

      最后,增加 docker-compose.ymlports 节点:

      - 443:443

      容器部署

      参考 Angular 容器部署

      \ No newline at end of file diff --git a/docs/faq/en/index.html b/docs/faq/en/index.html new file mode 100644 index 000000000..a15a2d1de --- /dev/null +++ b/docs/faq/en/index.html @@ -0,0 +1,96 @@ + + + 常见问题 - NG-ALAIN + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

      常见问题

      提问之前,请先查阅下面的常见问题。

      基础

      Can't Bind to since it isn't a known property of

      当你有多个懒模块时,希望每个子模块都需要使用组件库时(例如:NgZorroAntdModuleNgxTinymceModule)应在 ShareModule 中 export,请参考模块注册指导原则

      Expression Changed After It Has Been Checked Error 错误

      Angular 下常见错误,这篇文章 会帮助你理解原因。

      Can't bind to 'formGroup' since it isn't a known property of 'form'

      Angular 下常见错误,使用 Reactive Forms 需要额外引入 ReactiveFormsModule,可以参考官方文档

      数据修改后页面为什么没有更新

      NG-ZORRO 及 @delon/* 组件默认在 OnPush 模式下工作,mutate 对象或者数组不会触发 Angular 的变更检测,请使用 immutable 方式。

      如何使用@delon每日构建版本

      NG-ALAIN 提供一个 delon-builds 仓储作为每日构建版本,它并不是最终稳定版本,但包含最新已修复BUG、最新功能,要使用可以在根目录创建 delon.sh

      #!/usr/bin/env bash
      +set -e
      +echo "Download latest @delon version"
      +rm -rf delon-builds
      +git clone --depth 1 https://github.com/ng-alain/delon-builds.git
      +rm -rf node_modules/@delon
      +rm -rf node_modules/ng-alain
      +rsync -am delon-builds/ node_modules/
      +NG_ALAIN_VERSION=$(node -p "require('./node_modules/ng-alain/package.json').version")
      +rm -rf delon-builds
      +echo "Using ng-alain version: ${NG_ALAIN_VERSION}"

      当需要使用@delon的每日构建版本,只需要在运行:

      bash delon.sh

      如果是 Windows 环境,请使用 WSL 来执行 Bash 脚本。

      安装

      为什么找不到 ng-zorro-antd/src/*.less 样式?

      两种情况:

      • 使用 cnpm 安装依赖包,会遇到无法找到样式文件。这是由于 cnpm 采用的是软链接路径形式,导致 ng-zorro-antd 文件夹名有所变动,因此建议改用 yarn 安装依赖包,如果是网络因素,请参考下方的如何正确使用淘宝源。

      • ng-zorro-antd 版本过旧导致部分组件无法加载到相应样式

      如何正确使用淘宝源?

      最简单是使用 networkEnv 插件。

      或手动修复:

      yarn config set registry https://registry.npmmirror.com
      +yarn config set sass_binary_site https://npmmirror.com/mirrors/node-sass
      +# 恢复
      +yarn config delete registry
      +yarn config delete sass_binary_site

      配置

      如何本地部署 antd 图标?

      首先,最新的 iconfont 文件可以到 此链接镜像) 下载。

      最后,在 src/styles/theme.less 重新定义新的路径:

      @icon-url: "/assets/iconfont";

      使用绝对路径或CDN地址。

      Missing locale data for the locale "zh-cn"

      缺少语言导入,参考app.module.ts

      如何本地部署ng-alain.com文档

      线上文档将只保留最近三个主版本号的数据,若是低版本可以通过本地部署来查看:

      git clone --depth 1 -b full https://github.com/ng-alain/archive-docs.git ng-alain-doc
      +cd ng-alain-doc
      +yarn
      +yarn start

      修复360浏览器下部分显示异常

      部分360浏览器内置的 Chrome 核心过低,导致部分 CSS3 未支持,可以手动增加 .browserslistrc 更多细节参考 #2310

      + + + + + + + + \ No newline at end of file diff --git a/docs/faq/zh/index.html b/docs/faq/zh/index.html new file mode 100644 index 000000000..222c568e5 --- /dev/null +++ b/docs/faq/zh/index.html @@ -0,0 +1,96 @@ + + + 常见问题 - NG-ALAIN + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

      常见问题

      提问之前,请先查阅下面的常见问题。

      基础

      Can't Bind to since it isn't a known property of

      当你有多个懒模块时,希望每个子模块都需要使用组件库时(例如:NgZorroAntdModuleNgxTinymceModule)应在 ShareModule 中 export,请参考模块注册指导原则

      Expression Changed After It Has Been Checked Error 错误

      Angular 下常见错误,这篇文章 会帮助你理解原因。

      Can't bind to 'formGroup' since it isn't a known property of 'form'

      Angular 下常见错误,使用 Reactive Forms 需要额外引入 ReactiveFormsModule,可以参考官方文档

      数据修改后页面为什么没有更新

      NG-ZORRO 及 @delon/* 组件默认在 OnPush 模式下工作,mutate 对象或者数组不会触发 Angular 的变更检测,请使用 immutable 方式。

      如何使用@delon每日构建版本

      NG-ALAIN 提供一个 delon-builds 仓储作为每日构建版本,它并不是最终稳定版本,但包含最新已修复BUG、最新功能,要使用可以在根目录创建 delon.sh

      #!/usr/bin/env bash
      +set -e
      +echo "Download latest @delon version"
      +rm -rf delon-builds
      +git clone --depth 1 https://github.com/ng-alain/delon-builds.git
      +rm -rf node_modules/@delon
      +rm -rf node_modules/ng-alain
      +rsync -am delon-builds/ node_modules/
      +NG_ALAIN_VERSION=$(node -p "require('./node_modules/ng-alain/package.json').version")
      +rm -rf delon-builds
      +echo "Using ng-alain version: ${NG_ALAIN_VERSION}"

      当需要使用@delon的每日构建版本,只需要在运行:

      bash delon.sh

      如果是 Windows 环境,请使用 WSL 来执行 Bash 脚本。

      安装

      为什么找不到 ng-zorro-antd/src/*.less 样式?

      两种情况:

      • 使用 cnpm 安装依赖包,会遇到无法找到样式文件。这是由于 cnpm 采用的是软链接路径形式,导致 ng-zorro-antd 文件夹名有所变动,因此建议改用 yarn 安装依赖包,如果是网络因素,请参考下方的如何正确使用淘宝源。

      • ng-zorro-antd 版本过旧导致部分组件无法加载到相应样式

      如何正确使用淘宝源?

      最简单是使用 networkEnv 插件。

      或手动修复:

      yarn config set registry https://registry.npmmirror.com
      +yarn config set sass_binary_site https://npmmirror.com/mirrors/node-sass
      +# 恢复
      +yarn config delete registry
      +yarn config delete sass_binary_site

      配置

      如何本地部署 antd 图标?

      首先,最新的 iconfont 文件可以到 此链接镜像) 下载。

      最后,在 src/styles/theme.less 重新定义新的路径:

      @icon-url: "/assets/iconfont";

      使用绝对路径或CDN地址。

      Missing locale data for the locale "zh-cn"

      缺少语言导入,参考app.module.ts

      如何本地部署ng-alain.com文档

      线上文档将只保留最近三个主版本号的数据,若是低版本可以通过本地部署来查看:

      git clone --depth 1 -b full https://github.com/ng-alain/archive-docs.git ng-alain-doc
      +cd ng-alain-doc
      +yarn
      +yarn start

      修复360浏览器下部分显示异常

      部分360浏览器内置的 Chrome 核心过低,导致部分 CSS3 未支持,可以手动增加 .browserslistrc 更多细节参考 #2310

      + + + + + + + + \ No newline at end of file diff --git a/docs/getting-started/en/index.html b/docs/getting-started/en/index.html new file mode 100644 index 000000000..741ac3147 --- /dev/null +++ b/docs/getting-started/en/index.html @@ -0,0 +1,9 @@ +介绍 - NG-ALAIN
      This article need re-translated, hope that your can PR to translated it. Help us!

      介绍

      什么是NG-ALAIN

      NG-ALAIN 是一个企业级中后台前端/设计解决方案脚手架,我们秉承 Ant Design 的设计价值观,目标也非常简单,希望在Angular上面开发企业后台更简单、更快速。随着『设计者』的不断反馈,将持续迭代,逐步沉淀和总结出更多设计模式和相应的代码实现,阐述中后台产品模板/组件/业务场景的最佳实践,也十分期待你的参与和共建。

      环境搭建

      Angular 开发环境至少需要安装 Node.js(Node.js 内置了 npm 无须单独安装,但推荐使用 Yarn 但你需要单独额外安装)、VSCode编辑器,其中 Node.js 建议安装 LTS 版本,安装完成后可以通过终端窗口中运行:

      node -v # 查看 Node.js 当前版本
      +yarn -v # 查看 Yarn 当前版本

      Yarn 默认从国外源来下载包信息,鉴于国内环境因素,在开始下一步前先设定淘宝提供镜像:

      yarn config set registry https://registry.npmmirror.com
      +yarn config set sass_binary_site https://npmmirror.com/mirrors/node-sass
      +# restore
      +yarn config delete registry
      +yarn config delete sass_binary_site

      也可以使用 nrm 包,可以快速切换不同国内镜像源。

      安装

      全局 Angular Cli

      安装之前请先确保本地已经安装全局 Angular Cli,只有这样才能随时随地在终端使用 ng 命令,可以通过终端窗口中运行:

      yarn global add @angular/cli

      创建NG-ALAIN项目

      NG-ALAIN 必须先创建一个全新的 Angular 项目,可以通过终端窗口中运行:

      ng new my-project --style less --routing --package-manager yarn

      如果你想了解 --style--routing 参数,请参考 ng new 文档。

      接下来只需要将 NG-ALAIN 添加到 my-project 项目中即可,在 my-project 目录下通过终端窗口中运行:

      cd my-project
      +ng add ng-alain

      NG-ALAIN 会询问是否需要一些额外的插件,一开始完全可以一路回车,这些插件都是可插拔,后期可以自行添加与移除。

      以上只会生成干净的项目,可以直接用于生产环境中。你可能在预览上看到许多示例页,它们全都可以在 Github 查看到源代码,当然也可以通过 Git 克隆代码的形式获得:

      git clone --depth=1 https://github.com/ng-alain/ng-alain.git my-project
      +cd my-project
      +yarn install

      运行

      yarn start

      启动完成后会打开浏览器访问 http://localhost:4200,若你看到如下页面则代表成功了。

      恭喜你,你已经成功部署一个 NG-ALAIN 项目。

      支持环境

      IE / Edge
      IE / Edge
      Firefox
      Firefox
      Chrome
      Chrome
      Safari
      Safari
      Opera
      Opera
      Electron
      Electron
      Edgelast 2 versionslast 2 versionslast 2 versionslast 2 versionslast 2 versions

      如何贡献

      在任何形式的参与前,请先阅读 贡献者文档。如果你希望参与贡献,欢迎 Pull Request,或给我们 报告 Bug

      强烈推荐阅读 《提问的智慧》(本指南不提供此项目的实际支持服务!)、《如何向开源社区提问题》《如何有效地报告 Bug》《如何向开源项目提交无法解答的问题》,更好的问题更容易获得帮助。

      社区互助

      如果您在使用的过程中碰到问题,可以通过下面几个途径寻求帮助,同时我们也鼓励资深用户通过下面的途径给新人提供帮助。

      通过 Stack Overflow 或者 Segment Fault 提问时,建议加上 ng-alain 标签。

      1. QQ 群

      2. Segment Fault(中文)

      3. 加入 NG-ALAIN 自助服务群(中文)

      捐助

      如果你觉得 NG-ALAIN 不错,可以考虑自愿为本站打赏或捐助。

      \ No newline at end of file diff --git a/docs/getting-started/zh/index.html b/docs/getting-started/zh/index.html new file mode 100644 index 000000000..b337572b0 --- /dev/null +++ b/docs/getting-started/zh/index.html @@ -0,0 +1,9 @@ +介绍 - NG-ALAIN
      This article need re-translated, hope that your can PR to translated it. Help us!

      介绍

      什么是NG-ALAIN

      NG-ALAIN 是一个企业级中后台前端/设计解决方案脚手架,我们秉承 Ant Design 的设计价值观,目标也非常简单,希望在Angular上面开发企业后台更简单、更快速。随着『设计者』的不断反馈,将持续迭代,逐步沉淀和总结出更多设计模式和相应的代码实现,阐述中后台产品模板/组件/业务场景的最佳实践,也十分期待你的参与和共建。

      环境搭建

      Angular 开发环境至少需要安装 Node.js(Node.js 内置了 npm 无须单独安装,但推荐使用 Yarn 但你需要单独额外安装)、VSCode编辑器,其中 Node.js 建议安装 LTS 版本,安装完成后可以通过终端窗口中运行:

      node -v # 查看 Node.js 当前版本
      +yarn -v # 查看 Yarn 当前版本

      Yarn 默认从国外源来下载包信息,鉴于国内环境因素,在开始下一步前先设定淘宝提供镜像:

      yarn config set registry https://registry.npmmirror.com
      +yarn config set sass_binary_site https://npmmirror.com/mirrors/node-sass
      +# restore
      +yarn config delete registry
      +yarn config delete sass_binary_site

      也可以使用 nrm 包,可以快速切换不同国内镜像源。

      安装

      全局 Angular Cli

      安装之前请先确保本地已经安装全局 Angular Cli,只有这样才能随时随地在终端使用 ng 命令,可以通过终端窗口中运行:

      yarn global add @angular/cli

      创建NG-ALAIN项目

      NG-ALAIN 必须先创建一个全新的 Angular 项目,可以通过终端窗口中运行:

      ng new my-project --style less --routing --package-manager yarn

      如果你想了解 --style--routing 参数,请参考 ng new 文档。

      接下来只需要将 NG-ALAIN 添加到 my-project 项目中即可,在 my-project 目录下通过终端窗口中运行:

      cd my-project
      +ng add ng-alain

      NG-ALAIN 会询问是否需要一些额外的插件,一开始完全可以一路回车,这些插件都是可插拔,后期可以自行添加与移除。

      以上只会生成干净的项目,可以直接用于生产环境中。你可能在预览上看到许多示例页,它们全都可以在 Github 查看到源代码,当然也可以通过 Git 克隆代码的形式获得:

      git clone --depth=1 https://github.com/ng-alain/ng-alain.git my-project
      +cd my-project
      +yarn install

      运行

      yarn start

      启动完成后会打开浏览器访问 http://localhost:4200,若你看到如下页面则代表成功了。

      恭喜你,你已经成功部署一个 NG-ALAIN 项目。

      支持环境

      IE / Edge
      IE / Edge
      Firefox
      Firefox
      Chrome
      Chrome
      Safari
      Safari
      Opera
      Opera
      Electron
      Electron
      Edgelast 2 versionslast 2 versionslast 2 versionslast 2 versionslast 2 versions

      如何贡献

      在任何形式的参与前,请先阅读 贡献者文档。如果你希望参与贡献,欢迎 Pull Request,或给我们 报告 Bug

      强烈推荐阅读 《提问的智慧》(本指南不提供此项目的实际支持服务!)、《如何向开源社区提问题》《如何有效地报告 Bug》《如何向开源项目提交无法解答的问题》,更好的问题更容易获得帮助。

      社区互助

      如果您在使用的过程中碰到问题,可以通过下面几个途径寻求帮助,同时我们也鼓励资深用户通过下面的途径给新人提供帮助。

      通过 Stack Overflow 或者 Segment Fault 提问时,建议加上 ng-alain 标签。

      1. QQ 群

      2. Segment Fault(中文)

      3. 加入 NG-ALAIN 自助服务群(中文)

      捐助

      如果你觉得 NG-ALAIN 不错,可以考虑自愿为本站打赏或捐助。

      \ No newline at end of file diff --git a/docs/global-config/en/index.html b/docs/global-config/en/index.html new file mode 100644 index 000000000..aef687551 --- /dev/null +++ b/docs/global-config/en/index.html @@ -0,0 +1,13 @@ +全局配置项 - NG-ALAIN

      全局配置项

      我们给众多组件添加了全局配置功能,你可以通过全局配置来定义组件的默认行为,从而减少在模板中需要写的代码(让你的代码更加清爽),还能在运行时修改全局配置项。

      如何使用

      想要为某些组件提供默认配置项,请在根注入器中根据注入令牌 ALAIN_CONFIG 提供一个符合 AlainConfig 接口的对象,例如:

      // global-config.module.ts
      +import { AlainConfig, ALAIN_CONFIG } from '@delon/util/config';
      +
      +const alainConfig: AlainConfig = {
      +  st: { ps: 3 },
      +};
      +
      +@NgModule({
      +  providers: [
      +    { provide: ALAIN_CONFIG, useValue: alainConfig },
      +  ],
      +})
      +export class GlobalConfigModule {}

      这些全局配置项将会被注入 AlainConfigService 当中并保存。

      关于 NG-ZORRO 全局配置项

      请参考 NG-ZORRO 官网文档

      \ No newline at end of file diff --git a/docs/global-config/zh/index.html b/docs/global-config/zh/index.html new file mode 100644 index 000000000..e13ce90d5 --- /dev/null +++ b/docs/global-config/zh/index.html @@ -0,0 +1,13 @@ +全局配置项 - NG-ALAIN

      全局配置项

      我们给众多组件添加了全局配置功能,你可以通过全局配置来定义组件的默认行为,从而减少在模板中需要写的代码(让你的代码更加清爽),还能在运行时修改全局配置项。

      如何使用

      想要为某些组件提供默认配置项,请在根注入器中根据注入令牌 ALAIN_CONFIG 提供一个符合 AlainConfig 接口的对象,例如:

      // global-config.module.ts
      +import { AlainConfig, ALAIN_CONFIG } from '@delon/util/config';
      +
      +const alainConfig: AlainConfig = {
      +  st: { ps: 3 },
      +};
      +
      +@NgModule({
      +  providers: [
      +    { provide: ALAIN_CONFIG, useValue: alainConfig },
      +  ],
      +})
      +export class GlobalConfigModule {}

      这些全局配置项将会被注入 AlainConfigService 当中并保存。

      关于 NG-ZORRO 全局配置项

      请参考 NG-ZORRO 官网文档

      \ No newline at end of file diff --git a/docs/graph/en/index.html b/docs/graph/en/index.html new file mode 100644 index 000000000..eaea03e9d --- /dev/null +++ b/docs/graph/en/index.html @@ -0,0 +1 @@ +Not Page Name - NG-ALAIN
      This article has not been translated, hope that your can PR to translated it. Help us!

      图表

      \ No newline at end of file diff --git a/docs/graph/zh/index.html b/docs/graph/zh/index.html new file mode 100644 index 000000000..eaea03e9d --- /dev/null +++ b/docs/graph/zh/index.html @@ -0,0 +1 @@ +Not Page Name - NG-ALAIN
      This article has not been translated, hope that your can PR to translated it. Help us!

      图表

      \ No newline at end of file diff --git a/docs/how-to-start/en/index.html b/docs/how-to-start/en/index.html new file mode 100644 index 000000000..f3167dc04 --- /dev/null +++ b/docs/how-to-start/en/index.html @@ -0,0 +1,80 @@ +如何开始 - NG-ALAIN
      This article need re-translated, hope that your can PR to translated it. Help us!

      如何开始

      前序准备

      NG-ALAIN 技术栈基于 Typescript、Angular、图表G2 和 NG-ZORRO,在开始尝试使用 NG-ALAIN 脚手架前,请先提前了解和学习这些知识会非常有帮助。如果你是一名 Java 或 C# 后端开发人员,那么恭喜你,你所见到的不管是结构、代码、开发体验等都是你所想的那样。但不管怎么样,想写好 Angular 代码,以下这些文章及社区是你必须要知道的:

      写在前面

      很多人在学习一项新东西时,无外乎写个 Hello World 或是写一个 Http 请求,然后慢慢开始辐射所需要的技术知识。一个 HTTP 请求对中后台而言便是涵盖了 CURD 主要任务,甚至可以说90%时间及功能都在做这项工作。在介绍章节中已经描述创建一个 NG-ALAIN 项目并如何运行它,如果此时你也想要写个 Hello World,那么只需要利用 VSCode 打开这个项目,并在 dashboard.component.html 文件内输入文本,500ms 后就会在页面上立即呈现。

      流程

      回过头来我们试着回想一下,一个中后台项目,从启动再到呈现一份订单列表的功能,对于开发者而言包含了哪些事件。无外乎项目启动时应该加载点什么系统配置项,哪些页面用户无权进入;把粒度再想细一点,同一个页面不同的按钮给不同的人用,HTTP请求若产生错误是不是得每次都写相同的处理代码等等。

      初始化项目数据

      Angular 提供一个DI(依赖注入)令牌 APP_INITIALIZER 让应用启动时可以做一些会影响渲染结果的数据,比如:语言数据、菜单数据、用户信息数据、字典数据等,并且必须返回一个 Promise 异步函数,异步意味者可以做很多有趣的事,比如数据来自远程。APP_INITIALIZER 只会执行一次,只需要在 AppModule 模块注册它就行了。

      export function StartupServiceFactory(startupService: StartupService): () => Promise {
      +  return () => startupService.load();
      +}
      +
      +@NgModule({
      +  declarations: [AppComponent],
      +  imports: [BrowserModule]
      +  providers: [{
      +    StartupService,
      +    {
      +      provide: APP_INITIALIZER,
      +      useFactory: StartupServiceFactory,
      +      deps: [StartupService],
      +      multi: true,
      +    },
      +  }],
      +  bootstrap: [AppComponent],
      +})
      +export class AppModule {}

      StartupService 如下:

      @Injectable()
      +export class StartupService {
      +  constructor(private httpClient: HttpClient) {}
      +
      +  load(): Promise { 
      +    return new Promise((resolve) => {
      +      this.httpClient.get(``).subscribe(() => {
      +        resolve();
      +      });
      +    });
      +  }
      +}

      哪怕 Http 请求失败,这里也必须执行 resolve(),否则应用就无法启动。而 NG-ALAIN 提供的 startup.service.ts 内容更加丰富一点,对于完整的中后台而言,大多数项目中以下这些信息都可以必备的:

      数据类型描述
      应用信息应用名称、描述、年份,信息可以直接注入 SettingsServiceAPI)后直接在HTML模板中访问。
      例如:this.settingService.setApp(res.app);
      用户信息当前用户的姓名、头像、邮箱地址等,信息可以直接注入 SettingsServiceAPI)后直接在HTML模板中访问。
      例如:this.settingService.setUser(res.user);
      布局信息调整主题配置,例如:固定顶部菜单、折叠菜单等。
      例如:this.settingService.setLayout("fixed", false);this.settingService.setLayout("collapsed", false);
      菜单数据NG-ALAIN 认为菜单数据也是来自远程,也可以任意位置注入 MenuServiceAPI)来改变菜单数据,当然在 Angular 启动之前执行菜单赋值更为合理。
      菜单数据务必确保 Menu 格式,菜单数据贯穿整个应用,例如:页头自动导航 page-header,页标题文本 TitleService 等。
      例如:this.menuService.add(res.menu);
      页面标题若页面标题总希望加上应用名称为后缀时,可以注入 TitleServiceAPI)重新调整 suffix 属性值。
      例如设置页面标题的后缀:this.titleService.suffix = res.app.name;
      ACL访问控制列表数据,建议在启动前加载ACL访问控制权限数据,有关更多细节可参考 访问控制列表
      例如设置全量权限:this.aclService.setFull(true);
      国际化建议在启动前优先加载国际化数据包,这样可确保项目启动后页面渲染为目标语言。更多细节参考国际化

      业务路由

      当 Angular 项目正式启动后会进入渲染动作,根据当前的路由地址来决定一个页面如何渲染,从最顶层路由 routes-routing.module.ts 开始一层层寻找,其结构如下:

      const routes: Routes = [
      +  {
      +    path: '',
      +    component: LayoutBasicComponent,
      +    children: [
      +      { path: '', redirectTo: 'dashboard', pathMatch: 'full' },
      +      { path: 'dashboard', component: DashboardComponent, data: { title: '仪表盘' } },
      +      // 业务子模块
      +      // { path: 'trade', loadChildren: './trade/trade.module#TradeModule' }
      +    ]
      +  },
      +  // 空白布局
      +  {
      +    path: 'blank',
      +    component: LayoutBlankComponent,
      +    children: [
      +    ]
      +  },
      +  // passport
      +  {
      +    path: 'passport',
      +    component: LayoutPassportComponent,
      +    children: [
      +      { path: 'login', component: UserLoginComponent },
      +    ]
      +  },
      +  // 单页不包裹Layout
      +  { path: 'passport/callback/:type', component: CallbackComponent },
      +  { path: 'exception', loadChildren: () => import('./exception/exception.module').then((m) => m.ExceptionModule) },
      +  // 未命中路由全部跳转至 `exception/404` 页面上
      +  { path: '**', redirectTo: 'exception/404' },
      +];

      上述在业务模块中使用了 LayoutBasicComponent 基础布局、用户授权使用了 LayoutPassportComponent 用户授权布局以及 LayoutBlankComponent 空白布局,以上三种布局都可以在 layout 目录下找得到。

      例如当用户访问 /dashboard 路由时,会先经过 LayoutBasicComponent -> DashboardComponent,最终换形成一个庞大的组件树来表示一个具体的页面。NG-ALAIN 脚手架帮助你完成大多数工作,而一个新入门的人更多只需要关心 DashboardComponent 业务组件该如何实现。

      什么情况下不使用懒加载?

      Angular 启动是从顶层组件开始向下渲染,当遇到懒模块时会先发起脚本请求,此时会因为网络请求导致仪表盘或登录页短暂的空白,这对体验并不好。

      用户认证与授权

      页面能否访问取决于用户是否登录、已经登录还得判断否有授权,而这两项工作分别交给 @delon/auth@delon/acl 来完成。

      用户认证

      首先用户访问页面时是由顶层路由开始寻找命中后进行渲染,要想让所有未登录用户跳转到登录页面,可以配置 canActivate 选项,@delon/auth 已经提供了具体的实现,例如:

      const routes: Routes = [
      +  {
      +    path: '',
      +    component: LayoutBasicComponent,
      +    canActivate: [authSimpleCanActivate],
      +    children: [
      +      { path: '', redirectTo: 'dashboard', pathMatch: 'full' },
      +      { path: 'dashboard', component: DashboardComponent, data: { title: '仪表盘' } },
      +    ]
      +  },
      +];

      这里的 authSimpleCanActivate 是因为采用基于 Simple Web Token 认证风格,其他认证方式请参考用户认证章节。

      当用户未登录时会直接跳转至 /passport/login 页面,如果采用的是 JWT 认证方式,还会对 Token 是否有效进行检验。

      用户授权

      接者用户访问的页面还需要取决于授权程度,例如系统配置页普通用户肯定无法进入。在初始化项目数据小节里会根据当前用户的 Token 来获得授权的数据,并将数据交给 @delon/acl,同时它也提供一组路由守卫的具体实现 aclCanActivate 方法,例如希望整个系统配置模块都必须是 admin 角色才能访问,则:

      const routes: Routes = [
      +  {
      +    path: 'sys',
      +    canActivate: [aclCanActivate],
      +    data: { guard: 'admin' },
      +    children: [
      +      { path: 'config', component: ConfigComponent },
      +    ]
      +  },
      +];

      此时,当一个未授权 admin 角色的用户尝试访问 /sys/config 页面时会被跳转至未授权错误页上。

      当然还支持粒度有更细操作,比如某个按钮,请参考ACL章节。

      拦截网络请求

      网络请求是一项非常频繁的工作,如果想优雅的在业务组件内使用网络请求动作的话,那么将服务端URL前缀、异常处理、Token 刷新等操作集中处理是必不可少的,NG-ALAIN 脚手架提供一个 default.interceptor.ts 文件。它会利用令牌 HTTP_INTERCEPTORS 起到一种拦截器的效果。

      有关以上集中处理的动作细节,请参考 default.interceptor.ts 文件。

      IDE

      “工欲善其事,必先利其器是”,NG-ALAIN 脚手架推荐使用 Visual Studio Code IDE,因为 NG-ALAIN 针对 VSCode 增加一些额外的特性,可以更好的帮助你开发。

      或者直接使用 NG-ALAIN Extension Pack 套件。

      代码片断

      Class样式智能提醒

      ng-alain 内置了大量的工具集样式(API),安装以下插件可以直接在HTML模板里直接访问到它们。

      \ No newline at end of file diff --git a/docs/how-to-start/zh/index.html b/docs/how-to-start/zh/index.html new file mode 100644 index 000000000..302f26dbe --- /dev/null +++ b/docs/how-to-start/zh/index.html @@ -0,0 +1,80 @@ +如何开始 - NG-ALAIN
      This article need re-translated, hope that your can PR to translated it. Help us!

      如何开始

      前序准备

      NG-ALAIN 技术栈基于 Typescript、Angular、图表G2 和 NG-ZORRO,在开始尝试使用 NG-ALAIN 脚手架前,请先提前了解和学习这些知识会非常有帮助。如果你是一名 Java 或 C# 后端开发人员,那么恭喜你,你所见到的不管是结构、代码、开发体验等都是你所想的那样。但不管怎么样,想写好 Angular 代码,以下这些文章及社区是你必须要知道的:

      写在前面

      很多人在学习一项新东西时,无外乎写个 Hello World 或是写一个 Http 请求,然后慢慢开始辐射所需要的技术知识。一个 HTTP 请求对中后台而言便是涵盖了 CURD 主要任务,甚至可以说90%时间及功能都在做这项工作。在介绍章节中已经描述创建一个 NG-ALAIN 项目并如何运行它,如果此时你也想要写个 Hello World,那么只需要利用 VSCode 打开这个项目,并在 dashboard.component.html 文件内输入文本,500ms 后就会在页面上立即呈现。

      流程

      回过头来我们试着回想一下,一个中后台项目,从启动再到呈现一份订单列表的功能,对于开发者而言包含了哪些事件。无外乎项目启动时应该加载点什么系统配置项,哪些页面用户无权进入;把粒度再想细一点,同一个页面不同的按钮给不同的人用,HTTP请求若产生错误是不是得每次都写相同的处理代码等等。

      初始化项目数据

      Angular 提供一个DI(依赖注入)令牌 APP_INITIALIZER 让应用启动时可以做一些会影响渲染结果的数据,比如:语言数据、菜单数据、用户信息数据、字典数据等,并且必须返回一个 Promise 异步函数,异步意味者可以做很多有趣的事,比如数据来自远程。APP_INITIALIZER 只会执行一次,只需要在 AppModule 模块注册它就行了。

      export function StartupServiceFactory(startupService: StartupService): () => Promise {
      +  return () => startupService.load();
      +}
      +
      +@NgModule({
      +  declarations: [AppComponent],
      +  imports: [BrowserModule]
      +  providers: [{
      +    StartupService,
      +    {
      +      provide: APP_INITIALIZER,
      +      useFactory: StartupServiceFactory,
      +      deps: [StartupService],
      +      multi: true,
      +    },
      +  }],
      +  bootstrap: [AppComponent],
      +})
      +export class AppModule {}

      StartupService 如下:

      @Injectable()
      +export class StartupService {
      +  constructor(private httpClient: HttpClient) {}
      +
      +  load(): Promise { 
      +    return new Promise((resolve) => {
      +      this.httpClient.get(``).subscribe(() => {
      +        resolve();
      +      });
      +    });
      +  }
      +}

      哪怕 Http 请求失败,这里也必须执行 resolve(),否则应用就无法启动。而 NG-ALAIN 提供的 startup.service.ts 内容更加丰富一点,对于完整的中后台而言,大多数项目中以下这些信息都可以必备的:

      数据类型描述
      应用信息应用名称、描述、年份,信息可以直接注入 SettingsServiceAPI)后直接在HTML模板中访问。
      例如:this.settingService.setApp(res.app);
      用户信息当前用户的姓名、头像、邮箱地址等,信息可以直接注入 SettingsServiceAPI)后直接在HTML模板中访问。
      例如:this.settingService.setUser(res.user);
      布局信息调整主题配置,例如:固定顶部菜单、折叠菜单等。
      例如:this.settingService.setLayout("fixed", false);this.settingService.setLayout("collapsed", false);
      菜单数据NG-ALAIN 认为菜单数据也是来自远程,也可以任意位置注入 MenuServiceAPI)来改变菜单数据,当然在 Angular 启动之前执行菜单赋值更为合理。
      菜单数据务必确保 Menu 格式,菜单数据贯穿整个应用,例如:页头自动导航 page-header,页标题文本 TitleService 等。
      例如:this.menuService.add(res.menu);
      页面标题若页面标题总希望加上应用名称为后缀时,可以注入 TitleServiceAPI)重新调整 suffix 属性值。
      例如设置页面标题的后缀:this.titleService.suffix = res.app.name;
      ACL访问控制列表数据,建议在启动前加载ACL访问控制权限数据,有关更多细节可参考 访问控制列表
      例如设置全量权限:this.aclService.setFull(true);
      国际化建议在启动前优先加载国际化数据包,这样可确保项目启动后页面渲染为目标语言。更多细节参考国际化

      业务路由

      当 Angular 项目正式启动后会进入渲染动作,根据当前的路由地址来决定一个页面如何渲染,从最顶层路由 routes-routing.module.ts 开始一层层寻找,其结构如下:

      const routes: Routes = [
      +  {
      +    path: '',
      +    component: LayoutBasicComponent,
      +    children: [
      +      { path: '', redirectTo: 'dashboard', pathMatch: 'full' },
      +      { path: 'dashboard', component: DashboardComponent, data: { title: '仪表盘' } },
      +      // 业务子模块
      +      // { path: 'trade', loadChildren: './trade/trade.module#TradeModule' }
      +    ]
      +  },
      +  // 空白布局
      +  {
      +    path: 'blank',
      +    component: LayoutBlankComponent,
      +    children: [
      +    ]
      +  },
      +  // passport
      +  {
      +    path: 'passport',
      +    component: LayoutPassportComponent,
      +    children: [
      +      { path: 'login', component: UserLoginComponent },
      +    ]
      +  },
      +  // 单页不包裹Layout
      +  { path: 'passport/callback/:type', component: CallbackComponent },
      +  { path: 'exception', loadChildren: () => import('./exception/exception.module').then((m) => m.ExceptionModule) },
      +  // 未命中路由全部跳转至 `exception/404` 页面上
      +  { path: '**', redirectTo: 'exception/404' },
      +];

      上述在业务模块中使用了 LayoutBasicComponent 基础布局、用户授权使用了 LayoutPassportComponent 用户授权布局以及 LayoutBlankComponent 空白布局,以上三种布局都可以在 layout 目录下找得到。

      例如当用户访问 /dashboard 路由时,会先经过 LayoutBasicComponent -> DashboardComponent,最终换形成一个庞大的组件树来表示一个具体的页面。NG-ALAIN 脚手架帮助你完成大多数工作,而一个新入门的人更多只需要关心 DashboardComponent 业务组件该如何实现。

      什么情况下不使用懒加载?

      Angular 启动是从顶层组件开始向下渲染,当遇到懒模块时会先发起脚本请求,此时会因为网络请求导致仪表盘或登录页短暂的空白,这对体验并不好。

      用户认证与授权

      页面能否访问取决于用户是否登录、已经登录还得判断否有授权,而这两项工作分别交给 @delon/auth@delon/acl 来完成。

      用户认证

      首先用户访问页面时是由顶层路由开始寻找命中后进行渲染,要想让所有未登录用户跳转到登录页面,可以配置 canActivate 选项,@delon/auth 已经提供了具体的实现,例如:

      const routes: Routes = [
      +  {
      +    path: '',
      +    component: LayoutBasicComponent,
      +    canActivate: [authSimpleCanActivate],
      +    children: [
      +      { path: '', redirectTo: 'dashboard', pathMatch: 'full' },
      +      { path: 'dashboard', component: DashboardComponent, data: { title: '仪表盘' } },
      +    ]
      +  },
      +];

      这里的 authSimpleCanActivate 是因为采用基于 Simple Web Token 认证风格,其他认证方式请参考用户认证章节。

      当用户未登录时会直接跳转至 /passport/login 页面,如果采用的是 JWT 认证方式,还会对 Token 是否有效进行检验。

      用户授权

      接者用户访问的页面还需要取决于授权程度,例如系统配置页普通用户肯定无法进入。在初始化项目数据小节里会根据当前用户的 Token 来获得授权的数据,并将数据交给 @delon/acl,同时它也提供一组路由守卫的具体实现 aclCanActivate 方法,例如希望整个系统配置模块都必须是 admin 角色才能访问,则:

      const routes: Routes = [
      +  {
      +    path: 'sys',
      +    canActivate: [aclCanActivate],
      +    data: { guard: 'admin' },
      +    children: [
      +      { path: 'config', component: ConfigComponent },
      +    ]
      +  },
      +];

      此时,当一个未授权 admin 角色的用户尝试访问 /sys/config 页面时会被跳转至未授权错误页上。

      当然还支持粒度有更细操作,比如某个按钮,请参考ACL章节。

      拦截网络请求

      网络请求是一项非常频繁的工作,如果想优雅的在业务组件内使用网络请求动作的话,那么将服务端URL前缀、异常处理、Token 刷新等操作集中处理是必不可少的,NG-ALAIN 脚手架提供一个 default.interceptor.ts 文件。它会利用令牌 HTTP_INTERCEPTORS 起到一种拦截器的效果。

      有关以上集中处理的动作细节,请参考 default.interceptor.ts 文件。

      IDE

      “工欲善其事,必先利其器是”,NG-ALAIN 脚手架推荐使用 Visual Studio Code IDE,因为 NG-ALAIN 针对 VSCode 增加一些额外的特性,可以更好的帮助你开发。

      或者直接使用 NG-ALAIN Extension Pack 套件。

      代码片断

      Class样式智能提醒

      ng-alain 内置了大量的工具集样式(API),安装以下插件可以直接在HTML模板里直接访问到它们。

      \ No newline at end of file diff --git a/docs/i18n/en/index.html b/docs/i18n/en/index.html new file mode 100644 index 000000000..c31e6a37c --- /dev/null +++ b/docs/i18n/en/index.html @@ -0,0 +1,109 @@ +国际化 - NG-ALAIN

      国际化

      Angular 国际化提供一种可被提取语言文件的方案,但对于 NG-ALAIN 而言,这并不是最好的方式;这主要受限于 @Delon/* 组件库需要提供一套带有动态翻译的服务,因此,NG-ALAIN 内置一个简易的国际化服务 ALAIN_I18N_TOKEN 接口。

      如何配置

      脚手架是由 ng-zorro-antd@delon/* 类库两个重要部分组件,而这两个类库有自己的国际化配置,当进行国际化时需要对这些类库进行相同语言的配置。

      Angular

      Angular 配置主要是针对货币、日期格式等,例如中文版本:

      import { registerLocaleData } from '@angular/common';
      +import zh from '@angular/common/locales/zh';
      +registerLocaleData(zh);

      ng-zorro-antd

      NG-ZORRO 国际化默认是中文版,例如默认为英文版本:

      import { en_US, provideNzI18n } from 'ng-zorro-antd/i18n';
      +@NgModule({
      +  providers: [provideNzI18n(en_US)]
      +})
      +export class App1Module {}

      当然,也可以使用运行时更改:

      import { en_US, NzI18nService } from 'ng-zorro-antd/i18n';
      +...
      +constructor(private nzI18nService:NzI18nService) {
      +}
      +
      +switchLanguage() {
      +  this.nzI18nService.setLocale(en_US);
      +}

      @delon

      @delon 国际化默认是中文版,例如默认为英文版本:

      import { DELON_LOCALE, en_US } from '@delon/theme';
      +@NgModule({
      +  ...
      +  providers   : [ { provide: DELON_LOCALE, useValue: en_US } ]
      +})
      +export class AppModule { }

      当然,也可以使用运行时更改:

      import { en_US, DelonLocaleService } from '@delon/theme';
      +...
      +constructor(private delonLocaleService: DelonLocaleService) {
      +}
      +
      +switchLanguage() {
      +  this.delonLocaleService.setLocale(en_US);
      +}

      ALAIN_I18N_TOKEN

      @delon/* 类库有许多带有 i18n 字样的数据接口属性(例如:page-headerst 列描述、Menu 菜单数据等等),当你希望这些组件的数据接口能动态根据 Key 值按当前语言自动切换时,你还需要对 ALAIN_I18N_TOKEN 定义一个自实现服务接口(例如:I18NService),并在根模块下注册。

      import { ALAIN_I18N_TOKEN } from '@delon/theme';
      +import { I18NService } from '@core';
      +
      +@NgModule({
      +  ...
      +  providers: [
      +    { provide: ALAIN_I18N_TOKEN, useClass: I18NService, multi: false }
      +  ]
      +})
      +export class AppModule {}

      i18n管道

      为了不受第三方各自管道的命名方式,脚手架包含一个 i18n 的管道,它相当于直接调用 ALAIN_I18N_TOKENfanyi 方法。

      | i18n 不会监听语言变更通知所以会有更好的性能,当你明确在切换语言后会重新渲染 Angular 项目时 | i18n 会更适合。

      如何添加

      创建脚手架命令行 ng add ng-alain 时允许指定 --i18n 表示是否包含国际化示例代码。

      如何删除

      示例代码涉及内容包括:

      • src/app/core/i18n 目录

      • 替换掉默认布局可能出现的 I18n 的 Pipe 使用 | i18n

      默认语言

      不管是否需要国际化,由于 Angularng-zorro-antd@delon/* 等类库的默认语言都不同,因此还需要确保这些类库的默认语言是同一类型。一个简单的示例办法可以了解各类库当前语言情况:

      import { Component } from '@angular/core';
      +
      +@Component({
      +  selector: 'app-i18n-test',
      +  template: `
      +  <h2>angular</h2>
      +  <p>Date: {{now | date}}</p>
      +  <h2>ng-zorro-antd</h2>
      +  <nz-transfer [nzDataSource]="[]"></nz-transfer>
      +  <h2>@delon</h2>
      +  <div style="width: 200px">
      +    <tag-select>
      +      <nz-tag>1</nz-tag>
      +    </tag-select>
      +  </div>`,
      +})
      +export class I18nTestComponent {
      +  now = new Date();
      +}

      示例

      为了使语言统一性,NG-ALAIN 提供一个在 AppModule 根模块里简单的统一配置方式。

      中文版

      // #region i18n
      +import { default as ngLang } from '@angular/common/locales/zh';
      +import { provideNzI18n, zh_CN as zorroLang } from 'ng-zorro-antd/i18n';
      +import { DELON_LOCALE, zh_CN as delonLang } from '@delon/theme';
      +const LANG = {
      +  abbr: 'zh',
      +  ng: ngLang,
      +  zorro: zorroLang,
      +  delon: delonLang,
      +};
      +// register angular
      +import { registerLocaleData } from '@angular/common';
      +registerLocaleData(LANG.ng, LANG.abbr);
      +const LANG_PROVIDES = [
      +  { provide: LOCALE_ID, useValue: LANG.abbr },
      +  provideNzI18n(LANG.zorro),
      +  { provide: DELON_LOCALE, useValue: LANG.delon },
      +];
      +// #endregion
      +
      +@NgModule({
      +  providers: [...LANG_PROVIDES],
      +})
      +export class AppModule {}

      英文版

      // #region i18n
      +import { default as ngLang } from '@angular/common/locales/en';
      +import { provideNzI18n, en_US as zorroLang } from 'ng-zorro-antd/i18n';
      +import { DELON_LOCALE, en_US as delonLang } from '@delon/theme';
      +const LANG = {
      +  abbr: 'en',
      +  ng: ngLang,
      +  zorro: zorroLang,
      +  delon: delonLang,
      +};
      +// register angular
      +import { registerLocaleData } from '@angular/common';
      +registerLocaleData(LANG.ng, LANG.abbr);
      +const LANG_PROVIDES = [
      +  { provide: LOCALE_ID, useValue: LANG.abbr },
      +  provideNzI18n(LANG.zorro),
      +  { provide: DELON_LOCALE, useValue: LANG.delon },
      +];
      +// #endregion
      +
      +@NgModule({
      +  providers: [...LANG_PROVIDES],
      +})
      +export class AppModule {}

      命令行

      使用 defaultLanguage 插件可以快速切换默认语言环境。

      国际化路由

      若想通过路由的URL来切换国际化,例如:通过访问 /zh/en 来变更语言,则只需要在根路由中使用 alainI18nCanActivate 守卫:

      const routes: Route[] = [
      +  {
      +    path: '',
      +    component: LayoutComponent,
      +    canActivateChild: [alainI18nCanActivate],
      +    children: [
      +      { path: '', redirectTo: 'en', pathMatch: 'full' },
      +      { path: ':i18n', component: HomeComponent }
      +    ]
      +  }
      +];

      其中 :i18n 是参数固定值,可以通过全局配置 paramNameOfUrlGuard 来调整。

      \ No newline at end of file diff --git a/docs/i18n/zh/index.html b/docs/i18n/zh/index.html new file mode 100644 index 000000000..94c88880d --- /dev/null +++ b/docs/i18n/zh/index.html @@ -0,0 +1,109 @@ +国际化 - NG-ALAIN

      国际化

      Angular 国际化提供一种可被提取语言文件的方案,但对于 NG-ALAIN 而言,这并不是最好的方式;这主要受限于 @Delon/* 组件库需要提供一套带有动态翻译的服务,因此,NG-ALAIN 内置一个简易的国际化服务 ALAIN_I18N_TOKEN 接口。

      如何配置

      脚手架是由 ng-zorro-antd@delon/* 类库两个重要部分组件,而这两个类库有自己的国际化配置,当进行国际化时需要对这些类库进行相同语言的配置。

      Angular

      Angular 配置主要是针对货币、日期格式等,例如中文版本:

      import { registerLocaleData } from '@angular/common';
      +import zh from '@angular/common/locales/zh';
      +registerLocaleData(zh);

      ng-zorro-antd

      NG-ZORRO 国际化默认是中文版,例如默认为英文版本:

      import { en_US, provideNzI18n } from 'ng-zorro-antd/i18n';
      +@NgModule({
      +  providers: [provideNzI18n(en_US)]
      +})
      +export class App1Module {}

      当然,也可以使用运行时更改:

      import { en_US, NzI18nService } from 'ng-zorro-antd/i18n';
      +...
      +constructor(private nzI18nService:NzI18nService) {
      +}
      +
      +switchLanguage() {
      +  this.nzI18nService.setLocale(en_US);
      +}

      @delon

      @delon 国际化默认是中文版,例如默认为英文版本:

      import { DELON_LOCALE, en_US } from '@delon/theme';
      +@NgModule({
      +  ...
      +  providers   : [ { provide: DELON_LOCALE, useValue: en_US } ]
      +})
      +export class AppModule { }

      当然,也可以使用运行时更改:

      import { en_US, DelonLocaleService } from '@delon/theme';
      +...
      +constructor(private delonLocaleService: DelonLocaleService) {
      +}
      +
      +switchLanguage() {
      +  this.delonLocaleService.setLocale(en_US);
      +}

      ALAIN_I18N_TOKEN

      @delon/* 类库有许多带有 i18n 字样的数据接口属性(例如:page-headerst 列描述、Menu 菜单数据等等),当你希望这些组件的数据接口能动态根据 Key 值按当前语言自动切换时,你还需要对 ALAIN_I18N_TOKEN 定义一个自实现服务接口(例如:I18NService),并在根模块下注册。

      import { ALAIN_I18N_TOKEN } from '@delon/theme';
      +import { I18NService } from '@core';
      +
      +@NgModule({
      +  ...
      +  providers: [
      +    { provide: ALAIN_I18N_TOKEN, useClass: I18NService, multi: false }
      +  ]
      +})
      +export class AppModule {}

      i18n管道

      为了不受第三方各自管道的命名方式,脚手架包含一个 i18n 的管道,它相当于直接调用 ALAIN_I18N_TOKENfanyi 方法。

      | i18n 不会监听语言变更通知所以会有更好的性能,当你明确在切换语言后会重新渲染 Angular 项目时 | i18n 会更适合。

      如何添加

      创建脚手架命令行 ng add ng-alain 时允许指定 --i18n 表示是否包含国际化示例代码。

      如何删除

      示例代码涉及内容包括:

      • src/app/core/i18n 目录

      • 替换掉默认布局可能出现的 I18n 的 Pipe 使用 | i18n

      默认语言

      不管是否需要国际化,由于 Angularng-zorro-antd@delon/* 等类库的默认语言都不同,因此还需要确保这些类库的默认语言是同一类型。一个简单的示例办法可以了解各类库当前语言情况:

      import { Component } from '@angular/core';
      +
      +@Component({
      +  selector: 'app-i18n-test',
      +  template: `
      +  <h2>angular</h2>
      +  <p>Date: {{now | date}}</p>
      +  <h2>ng-zorro-antd</h2>
      +  <nz-transfer [nzDataSource]="[]"></nz-transfer>
      +  <h2>@delon</h2>
      +  <div style="width: 200px">
      +    <tag-select>
      +      <nz-tag>1</nz-tag>
      +    </tag-select>
      +  </div>`,
      +})
      +export class I18nTestComponent {
      +  now = new Date();
      +}

      示例

      为了使语言统一性,NG-ALAIN 提供一个在 AppModule 根模块里简单的统一配置方式。

      中文版

      // #region i18n
      +import { default as ngLang } from '@angular/common/locales/zh';
      +import { provideNzI18n, zh_CN as zorroLang } from 'ng-zorro-antd/i18n';
      +import { DELON_LOCALE, zh_CN as delonLang } from '@delon/theme';
      +const LANG = {
      +  abbr: 'zh',
      +  ng: ngLang,
      +  zorro: zorroLang,
      +  delon: delonLang,
      +};
      +// register angular
      +import { registerLocaleData } from '@angular/common';
      +registerLocaleData(LANG.ng, LANG.abbr);
      +const LANG_PROVIDES = [
      +  { provide: LOCALE_ID, useValue: LANG.abbr },
      +  provideNzI18n(LANG.zorro),
      +  { provide: DELON_LOCALE, useValue: LANG.delon },
      +];
      +// #endregion
      +
      +@NgModule({
      +  providers: [...LANG_PROVIDES],
      +})
      +export class AppModule {}

      英文版

      // #region i18n
      +import { default as ngLang } from '@angular/common/locales/en';
      +import { provideNzI18n, en_US as zorroLang } from 'ng-zorro-antd/i18n';
      +import { DELON_LOCALE, en_US as delonLang } from '@delon/theme';
      +const LANG = {
      +  abbr: 'en',
      +  ng: ngLang,
      +  zorro: zorroLang,
      +  delon: delonLang,
      +};
      +// register angular
      +import { registerLocaleData } from '@angular/common';
      +registerLocaleData(LANG.ng, LANG.abbr);
      +const LANG_PROVIDES = [
      +  { provide: LOCALE_ID, useValue: LANG.abbr },
      +  provideNzI18n(LANG.zorro),
      +  { provide: DELON_LOCALE, useValue: LANG.delon },
      +];
      +// #endregion
      +
      +@NgModule({
      +  providers: [...LANG_PROVIDES],
      +})
      +export class AppModule {}

      命令行

      使用 defaultLanguage 插件可以快速切换默认语言环境。

      国际化路由

      若想通过路由的URL来切换国际化,例如:通过访问 /zh/en 来变更语言,则只需要在根路由中使用 alainI18nCanActivate 守卫:

      const routes: Route[] = [
      +  {
      +    path: '',
      +    component: LayoutComponent,
      +    canActivateChild: [alainI18nCanActivate],
      +    children: [
      +      { path: '', redirectTo: 'en', pathMatch: 'full' },
      +      { path: ':i18n', component: HomeComponent }
      +    ]
      +  }
      +];

      其中 :i18n 是参数固定值,可以通过全局配置 paramNameOfUrlGuard 来调整。

      \ No newline at end of file diff --git a/docs/import/en/index.html b/docs/import/en/index.html new file mode 100644 index 000000000..67d4fb41b --- /dev/null +++ b/docs/import/en/index.html @@ -0,0 +1,22 @@ +使用第三方类库 - NG-ALAIN

      使用第三方类库

      除了 NG-ZORRO 基础组件以及 @delon 业务组件以外,有时我们还需要引用其他外部类库,以下将介绍如何使用富文本组件 ngx-tinymce

      Angular组件

      安装依赖包

      yarn add ngx-tinymce

      注册

      像富文本框你可能需要在所有子模块中都会可能会用到,因为建议在 SharedModule 模块中导入和导出他。

      // #region third libs
      +import { NgxTinymceModule } from 'ngx-tinymce';
      +const THIRDMODULES = [ NgxTinymceModule ];
      +// #endregion

      region: third libs 区域是NG-ALAIN的一个编码约定,将所有第三方组件注册至 THIRDMODULES 变量中即可,而无须关心 @NgModule 内在的写法,有关更多编码约定可以参考编码规范建议

      对于部分第三方组件,可能会需要一些配置项,建议在根模块中注册,例如:

      import { NgxTinymceModule } from 'ngx-tinymce';
      +@NgModule({
      +  imports: [
      +    BrowserModule,
      +    NgxTinymceModule.forRoot({
      +      baseURL: '//cdn.bootcss.com/tinymce/4.7.13/'
      +    })
      +  ]
      +})
      +export class AppModule { }

      接下来你可以在任何子模块中使用 ngx-tinymce

      <tinymce [(ngModel)]="html"></tinymce>

      非Angular组件

      引用一个非 Angular 组件实际上是一个 JavaScript 类库,例如二维码类库 qrious,这是一个纯洁的 JavaScript 类库(建议尽可能使用纯洁类库而非带有依赖其他)。

      安装依赖包

      yarn add qrious

      导入脚本

      angular.json 找到 scripts 节点并增加:

      "scripts": [
      +  "node_modules/qrious/dist/qrious.min.js"
      +]

      如果第三方类库需要额外的样式,还需要在 styles 增加路径。

      注意:需要重新运行 ng s 才会生效。

      延迟加载脚本

      上述导入脚本方式会把代码直接打包进 scripts.js,这会导致 scripts.js 体积变大,NG-ALAIN 提供另一种延迟加载CDN类库脚本解决方案,适用低使用率的业务(例如:zip 压缩),可以利用 LazyService 延迟加载远程CDN脚本。

      使用

      Angular 是采用 TypeScript 语言,所有类型都必须明确定义才能使用,细节请参考 Angular 如何使用第三方库

      一个调用的示例代码:

      declare var QRious: any;
      +
      +@Component()
      +export class DEMOComponent {
      +  constructor() {
      +    const qr = new QRious();
      +  }
      +}
      \ No newline at end of file diff --git a/docs/import/zh/index.html b/docs/import/zh/index.html new file mode 100644 index 000000000..dc781dcdd --- /dev/null +++ b/docs/import/zh/index.html @@ -0,0 +1,22 @@ +使用第三方类库 - NG-ALAIN

      使用第三方类库

      除了 NG-ZORRO 基础组件以及 @delon 业务组件以外,有时我们还需要引用其他外部类库,以下将介绍如何使用富文本组件 ngx-tinymce

      Angular组件

      安装依赖包

      yarn add ngx-tinymce

      注册

      像富文本框你可能需要在所有子模块中都会可能会用到,因为建议在 SharedModule 模块中导入和导出他。

      // #region third libs
      +import { NgxTinymceModule } from 'ngx-tinymce';
      +const THIRDMODULES = [ NgxTinymceModule ];
      +// #endregion

      region: third libs 区域是NG-ALAIN的一个编码约定,将所有第三方组件注册至 THIRDMODULES 变量中即可,而无须关心 @NgModule 内在的写法,有关更多编码约定可以参考编码规范建议

      对于部分第三方组件,可能会需要一些配置项,建议在根模块中注册,例如:

      import { NgxTinymceModule } from 'ngx-tinymce';
      +@NgModule({
      +  imports: [
      +    BrowserModule,
      +    NgxTinymceModule.forRoot({
      +      baseURL: '//cdn.bootcss.com/tinymce/4.7.13/'
      +    })
      +  ]
      +})
      +export class AppModule { }

      接下来你可以在任何子模块中使用 ngx-tinymce

      <tinymce [(ngModel)]="html"></tinymce>

      非Angular组件

      引用一个非 Angular 组件实际上是一个 JavaScript 类库,例如二维码类库 qrious,这是一个纯洁的 JavaScript 类库(建议尽可能使用纯洁类库而非带有依赖其他)。

      安装依赖包

      yarn add qrious

      导入脚本

      angular.json 找到 scripts 节点并增加:

      "scripts": [
      +  "node_modules/qrious/dist/qrious.min.js"
      +]

      如果第三方类库需要额外的样式,还需要在 styles 增加路径。

      注意:需要重新运行 ng s 才会生效。

      延迟加载脚本

      上述导入脚本方式会把代码直接打包进 scripts.js,这会导致 scripts.js 体积变大,NG-ALAIN 提供另一种延迟加载CDN类库脚本解决方案,适用低使用率的业务(例如:zip 压缩),可以利用 LazyService 延迟加载远程CDN脚本。

      使用

      Angular 是采用 TypeScript 语言,所有类型都必须明确定义才能使用,细节请参考 Angular 如何使用第三方库

      一个调用的示例代码:

      declare var QRious: any;
      +
      +@Component()
      +export class DEMOComponent {
      +  constructor() {
      +    const qr = new QRious();
      +  }
      +}
      \ No newline at end of file diff --git a/docs/mock/en/index.html b/docs/mock/en/index.html new file mode 100644 index 000000000..3b675fde4 --- /dev/null +++ b/docs/mock/en/index.html @@ -0,0 +1 @@ +Not Page Name - NG-ALAIN
      This article has not been translated, hope that your can PR to translated it. Help us!

      Mock

      \ No newline at end of file diff --git a/docs/mock/zh/index.html b/docs/mock/zh/index.html new file mode 100644 index 000000000..3b675fde4 --- /dev/null +++ b/docs/mock/zh/index.html @@ -0,0 +1 @@ +Not Page Name - NG-ALAIN
      This article has not been translated, hope that your can PR to translated it. Help us!

      Mock

      \ No newline at end of file diff --git a/docs/module/en/index.html b/docs/module/en/index.html new file mode 100644 index 000000000..c421bfe65 --- /dev/null +++ b/docs/module/en/index.html @@ -0,0 +1 @@ +模块注册指导原则 - NG-ALAIN

      模块注册指导原则

      一直以来 AppModuleCoreModuleSharedModule 模块使用没有很明确的规范,很容易让产生乱用。Angular模块目标是为了使组件、指令、服务和管道功能块更内聚,并每一个功能区域形成独立的业务领域或实用工具的集合。

      1) 分类说明


      AppModule

      根模块,用于引导 Angular 启动;它非常适合导入一些需要在整个应用到处需要的模块,例如:主题系统、用户主认证模块、权限模块等模块,以及一些全局性HTTP拦截器、国际化服务等。

      CoreModule

      核心模块只会被导入一次,它等同 AppModule,但我们更应该把它当成一个纯服务类模块,例如:消息、数据访问等。

      SharedModule

      我们叫它共享模块;它不应该出现 providers,因为 ShareModule 会在所有业务模块中被导入,这会导致服务被覆盖。

      NG-ZORRO、@delon/abc、@delon/chart 等从版本11开始由一次性导入改成按需导入,为此 NG-ALAIN 提炼了两个文件 shared-delon.module.tsshared-zorro.module.ts 将一些整个项目经常用到的模块合并成一个叫 SharedModule 模块内,这也就是为什么需要在业务模块内第一时间导入它。虽然这种方式可以减少不必要的导入代码,但同时也会引起编译速度,因此不建议把所有组件都放进 SharedModule 内,尽可能将需要用到的模块三次以上使用才放进这里;否则务必在业务模块内自行导入。

      2) 建议


      AppModule

      导入模块:

      • Angular 模块:BrowserModuleBrowserAnimationsModuleHttpClientModule

      • AlainThemeModule 主题系统

      • DelonMockModule Mock数据

      • AlainAuthModule 用户认证模块

      • AlainACLModule 权限模块

      • 国际化模块

      包含服务:

      • Angular 国际化

      • HTTP 拦截器

      • Angular 启动服务

      • ng-zorro-antd 基础组件服务

      • @delon/abc 业务组件服务

      作用: 贯穿整个应用的定义。


      CoreModule

      仅只留 providers 属性。

      作用: 一些通用服务,例如:用户消息、HTTP数据访问。


      ShareModule

      包含定义:

      • 应用通用自定义业务组件

      导入模块:

      • Angular 通用模块:CommonModuleFormsModuleRouterModuleReactiveFormsModule

      • ng-zorro-antd 基础组件模块

      • @delon/abc 业务组件模块

      • 第三方通用依赖组件模块

      导出所有包含的模块。

      不应providers 属性。

      作用: 一些通用自定义、第三方组件定义,减少业务模块的导入。


      业务模块

      业务模块应该包括业务定义模块和路由模块。

      模块

      导入模块:

      不应

      • 导出任何组件

      • 尽可能不要使用 providers 属性

      路由模块

      只包括路由的 importexports

      \ No newline at end of file diff --git a/docs/module/zh/index.html b/docs/module/zh/index.html new file mode 100644 index 000000000..703c19bc0 --- /dev/null +++ b/docs/module/zh/index.html @@ -0,0 +1 @@ +模块注册指导原则 - NG-ALAIN

      模块注册指导原则

      一直以来 AppModuleCoreModuleSharedModule 模块使用没有很明确的规范,很容易让产生乱用。Angular模块目标是为了使组件、指令、服务和管道功能块更内聚,并每一个功能区域形成独立的业务领域或实用工具的集合。

      1) 分类说明


      AppModule

      根模块,用于引导 Angular 启动;它非常适合导入一些需要在整个应用到处需要的模块,例如:主题系统、用户主认证模块、权限模块等模块,以及一些全局性HTTP拦截器、国际化服务等。

      CoreModule

      核心模块只会被导入一次,它等同 AppModule,但我们更应该把它当成一个纯服务类模块,例如:消息、数据访问等。

      SharedModule

      我们叫它共享模块;它不应该出现 providers,因为 ShareModule 会在所有业务模块中被导入,这会导致服务被覆盖。

      NG-ZORRO、@delon/abc、@delon/chart 等从版本11开始由一次性导入改成按需导入,为此 NG-ALAIN 提炼了两个文件 shared-delon.module.tsshared-zorro.module.ts 将一些整个项目经常用到的模块合并成一个叫 SharedModule 模块内,这也就是为什么需要在业务模块内第一时间导入它。虽然这种方式可以减少不必要的导入代码,但同时也会引起编译速度,因此不建议把所有组件都放进 SharedModule 内,尽可能将需要用到的模块三次以上使用才放进这里;否则务必在业务模块内自行导入。

      2) 建议


      AppModule

      导入模块:

      • Angular 模块:BrowserModuleBrowserAnimationsModuleHttpClientModule

      • AlainThemeModule 主题系统

      • DelonMockModule Mock数据

      • AlainAuthModule 用户认证模块

      • AlainACLModule 权限模块

      • 国际化模块

      包含服务:

      • Angular 国际化

      • HTTP 拦截器

      • Angular 启动服务

      • ng-zorro-antd 基础组件服务

      • @delon/abc 业务组件服务

      作用: 贯穿整个应用的定义。


      CoreModule

      仅只留 providers 属性。

      作用: 一些通用服务,例如:用户消息、HTTP数据访问。


      ShareModule

      包含定义:

      • 应用通用自定义业务组件

      导入模块:

      • Angular 通用模块:CommonModuleFormsModuleRouterModuleReactiveFormsModule

      • ng-zorro-antd 基础组件模块

      • @delon/abc 业务组件模块

      • 第三方通用依赖组件模块

      导出所有包含的模块。

      不应providers 属性。

      作用: 一些通用自定义、第三方组件定义,减少业务模块的导入。


      业务模块

      业务模块应该包括业务定义模块和路由模块。

      模块

      导入模块:

      不应

      • 导出任何组件

      • 尽可能不要使用 providers 属性

      路由模块

      只包括路由的 importexports

      \ No newline at end of file diff --git a/docs/new-component/en/index.html b/docs/new-component/en/index.html new file mode 100644 index 000000000..c590a4ad3 --- /dev/null +++ b/docs/new-component/en/index.html @@ -0,0 +1,48 @@ +新增业务组件 - NG-ALAIN

      新增业务组件

      对于一些可能被多处引用的功能模块,建议提炼成业务组件统一管理。这些组件一般有以下特征:

      • 只负责一块相对独立,稳定的功能;

      • 没有单独的路由配置;

      • 可能是纯静态的,仅受父组件(通常是一个页面)传递的参数控制。

      下面以一个简单的静态组件为例进行介绍。假设你的应用中经常需要展现图片,这些图片宽度固定,有一个灰色的背景和一定的内边距,有文字介绍,就像下图这样:

      你可以用一个组件来实现这一功能,它有默认的样式,同时可以接收父组件传递的参数进行展示。

      新建文件

      src/app/shared/components 下新建一个以组件名命名的文件夹,命名尽量体现组件的功能,这里就叫 image-wrapper。在此文件夹下新增 ts 文件、样式文件(如果需要)及组件API说明,命名为 index.tsindex.lessREADME.md

      在使用组件时,默认会在 index.ts 中寻找 export 的对象,如果你的组件比较复杂,可以分为多个文件,最后在 index.ts 中统一 export,就像这样:

      // main.component.ts
      +export class MainComponent {}
      +
      +// sub.component.ts
      +export class SubComponent {}
      +
      +// index.ts
      +export MainComponent from './main.component';
      +export SubComponent from './sub.component';

      你的代码大概是这个样子:

      // index.ts
      +import { Component, Input } from '@angular/core';
      +
      +@Component({
      +  selector: 'image-wrapper',
      +  template: `
      +    <div [ngStyle]="style">
      +      <img class="img" [src]="src" [alt]="desc" />
      +      <div *ngIf="desc" class="desc">{{ desc }}</div>
      +    </div>
      +  `,
      +  styleUrls: [ './index.less' ]
      +})
      +export class ImageWrapperComponent {
      +  @Input() style: { [key: string]: string };
      +  @Input() src: string;
      +  @Input() desc: string;
      +}
      // index.less
      +:host {
      +  width: 400px;
      +  margin: 0 auto;
      +  padding: 0 20px 8px;
      +  text-align: center;
      +  background: #f2f4f5;
      +
      +  ::ng-deep {
      +    .img {
      +      max-width: calc(100% - 32px);
      +      margin: 2.4em 1em;
      +      vertical-align: middle;
      +      box-shadow: 0 8px 20px rgba(143, 168, 191, 0.35);
      +    }
      +  }
      +}

      到这儿组件就建好了,了解更多关于组件样式的开发。

      注册

      组件创建好后,需要将组件导入 SharedModule 中,这样所有子模块都可以使用到该组件。

      // shared.module.ts
      +import { ImageWrapperComponent } from './image-wrapper';
      +const COMPONENTS = [
      +  ImageWrapperComponent
      +];

      使用

      在要使用这个组件的地方,按照组件定义的 API 传入参数,直接使用就好:

      <image-wrapper
      +  src="https://os.alipayobjects.com/rmsportal/mgesTPFxodmIwpi.png"
      +  desc="示意图"></image-wrapper>
      \ No newline at end of file diff --git a/docs/new-component/zh/index.html b/docs/new-component/zh/index.html new file mode 100644 index 000000000..bb945b5e6 --- /dev/null +++ b/docs/new-component/zh/index.html @@ -0,0 +1,48 @@ +新增业务组件 - NG-ALAIN

      新增业务组件

      对于一些可能被多处引用的功能模块,建议提炼成业务组件统一管理。这些组件一般有以下特征:

      • 只负责一块相对独立,稳定的功能;

      • 没有单独的路由配置;

      • 可能是纯静态的,仅受父组件(通常是一个页面)传递的参数控制。

      下面以一个简单的静态组件为例进行介绍。假设你的应用中经常需要展现图片,这些图片宽度固定,有一个灰色的背景和一定的内边距,有文字介绍,就像下图这样:

      你可以用一个组件来实现这一功能,它有默认的样式,同时可以接收父组件传递的参数进行展示。

      新建文件

      src/app/shared/components 下新建一个以组件名命名的文件夹,命名尽量体现组件的功能,这里就叫 image-wrapper。在此文件夹下新增 ts 文件、样式文件(如果需要)及组件API说明,命名为 index.tsindex.lessREADME.md

      在使用组件时,默认会在 index.ts 中寻找 export 的对象,如果你的组件比较复杂,可以分为多个文件,最后在 index.ts 中统一 export,就像这样:

      // main.component.ts
      +export class MainComponent {}
      +
      +// sub.component.ts
      +export class SubComponent {}
      +
      +// index.ts
      +export MainComponent from './main.component';
      +export SubComponent from './sub.component';

      你的代码大概是这个样子:

      // index.ts
      +import { Component, Input } from '@angular/core';
      +
      +@Component({
      +  selector: 'image-wrapper',
      +  template: `
      +    <div [ngStyle]="style">
      +      <img class="img" [src]="src" [alt]="desc" />
      +      <div *ngIf="desc" class="desc">{{ desc }}</div>
      +    </div>
      +  `,
      +  styleUrls: [ './index.less' ]
      +})
      +export class ImageWrapperComponent {
      +  @Input() style: { [key: string]: string };
      +  @Input() src: string;
      +  @Input() desc: string;
      +}
      // index.less
      +:host {
      +  width: 400px;
      +  margin: 0 auto;
      +  padding: 0 20px 8px;
      +  text-align: center;
      +  background: #f2f4f5;
      +
      +  ::ng-deep {
      +    .img {
      +      max-width: calc(100% - 32px);
      +      margin: 2.4em 1em;
      +      vertical-align: middle;
      +      box-shadow: 0 8px 20px rgba(143, 168, 191, 0.35);
      +    }
      +  }
      +}

      到这儿组件就建好了,了解更多关于组件样式的开发。

      注册

      组件创建好后,需要将组件导入 SharedModule 中,这样所有子模块都可以使用到该组件。

      // shared.module.ts
      +import { ImageWrapperComponent } from './image-wrapper';
      +const COMPONENTS = [
      +  ImageWrapperComponent
      +];

      使用

      在要使用这个组件的地方,按照组件定义的 API 传入参数,直接使用就好:

      <image-wrapper
      +  src="https://os.alipayobjects.com/rmsportal/mgesTPFxodmIwpi.png"
      +  desc="示意图"></image-wrapper>
      \ No newline at end of file diff --git a/docs/new-page/en/index.html b/docs/new-page/en/index.html new file mode 100644 index 000000000..9bb781474 --- /dev/null +++ b/docs/new-page/en/index.html @@ -0,0 +1,22 @@ +新增页面 - NG-ALAIN

      新增页面

      Angular 虽然是以组件树来渲染一个页面,然后实际开发是以一种模块树来组织代码,使其能更好地代码复用。而对于模块粒度取决于需求,ng-alain的定位在于中台前端,因此,比较建议从业务角度出发组织你的代码结构。

      NG-ALAIN 提供一套非常丰富的 Schematics 模板,可以快速创建符合 NG-ALAIN 特点的模板和页面;同时包含多种可插拔插件

      另:NG-ALAIN 是一个标准的 Angular CLI 项目,你依然可以使用默认的所有命令行。

      一、模块

      要创建一个页面需要先创建一个模块开始,假如需要一个系统设置相关的模块,执行命令:

      ng g ng-alain:module sys

      CLI 会自动在 src/app/routes/sys 下创建 sys.module.tssys-routing.module.ts 文件,前者是系统设置模块组件定义文件;后者是系统设置模块路由配置文件。

      // sys.module.ts
      +import { NgModule, Type } from '@angular/core';
      +import { SharedModule } from '@shared';
      +import { SysRoutingModule } from './sys-routing.module';
      +
      +const COMPONENTS: Type[] = [];
      +
      +@NgModule({
      +  imports: [SharedModule, SysRoutingModule],
      +  declarations: COMPONENTS,
      +})
      +export class SysModule {}

      模块的作用是导入我们需要的模块,所有 NG-ZORRO、@delon/abc、@delon/chart 等都是按需求加载模块,当前业务页需要哪里外部组件就导入哪些,为了减少这些导入动作,NG-ALAIN 提炼了两个文件 shared-delon.module.tsshared-zorro.module.ts 将一些整个项目经常用到的模块合并成一个叫 SharedModule 模块内,这也就是为什么需要在业务模块内第一时间导入它。注意:不建议把所有组件都放进 SharedModule 内,尽可能将需要用到的模块以二或三次以上使用才放进这里。

      以及路由配置模块:

      // sys-routing.module.ts
      +import { NgModule } from '@angular/core';
      +import { RouterModule, Routes } from '@angular/router';
      +
      +const routes: Routes = [];
      +
      +@NgModule({
      +  imports: [RouterModule.forChild(routes)],
      +  exports: [RouterModule],
      +})
      +export class SysRoutingModule {}

      至此,你可以放心在 sys 目录中开始开发像菜单管理、日志、系统配置等业务页面。

      二、页面

      利用 ng generate(可简写为:ng g) 命令在 sys 目录下创建一个日志列表页:

      ng g ng-alain:list log -m=sys

      了解更多请参考命令行工具

      最终,你可以访问 日志 页面。

      当然日志可能是一个非常丰富的信息,可以增加一个以模态框打开的查看页来显示更多详情。

      ng g ng-alain:view view -m=sys -t=log

      -t=log 表示希望把创建的文件放进至 sys/log/view

      \ No newline at end of file diff --git a/docs/new-page/zh/index.html b/docs/new-page/zh/index.html new file mode 100644 index 000000000..0a4a7a77c --- /dev/null +++ b/docs/new-page/zh/index.html @@ -0,0 +1,22 @@ +新增页面 - NG-ALAIN

      新增页面

      Angular 虽然是以组件树来渲染一个页面,然后实际开发是以一种模块树来组织代码,使其能更好地代码复用。而对于模块粒度取决于需求,ng-alain的定位在于中台前端,因此,比较建议从业务角度出发组织你的代码结构。

      NG-ALAIN 提供一套非常丰富的 Schematics 模板,可以快速创建符合 NG-ALAIN 特点的模板和页面;同时包含多种可插拔插件

      另:NG-ALAIN 是一个标准的 Angular CLI 项目,你依然可以使用默认的所有命令行。

      一、模块

      要创建一个页面需要先创建一个模块开始,假如需要一个系统设置相关的模块,执行命令:

      ng g ng-alain:module sys

      CLI 会自动在 src/app/routes/sys 下创建 sys.module.tssys-routing.module.ts 文件,前者是系统设置模块组件定义文件;后者是系统设置模块路由配置文件。

      // sys.module.ts
      +import { NgModule, Type } from '@angular/core';
      +import { SharedModule } from '@shared';
      +import { SysRoutingModule } from './sys-routing.module';
      +
      +const COMPONENTS: Type[] = [];
      +
      +@NgModule({
      +  imports: [SharedModule, SysRoutingModule],
      +  declarations: COMPONENTS,
      +})
      +export class SysModule {}

      模块的作用是导入我们需要的模块,所有 NG-ZORRO、@delon/abc、@delon/chart 等都是按需求加载模块,当前业务页需要哪里外部组件就导入哪些,为了减少这些导入动作,NG-ALAIN 提炼了两个文件 shared-delon.module.tsshared-zorro.module.ts 将一些整个项目经常用到的模块合并成一个叫 SharedModule 模块内,这也就是为什么需要在业务模块内第一时间导入它。注意:不建议把所有组件都放进 SharedModule 内,尽可能将需要用到的模块以二或三次以上使用才放进这里。

      以及路由配置模块:

      // sys-routing.module.ts
      +import { NgModule } from '@angular/core';
      +import { RouterModule, Routes } from '@angular/router';
      +
      +const routes: Routes = [];
      +
      +@NgModule({
      +  imports: [RouterModule.forChild(routes)],
      +  exports: [RouterModule],
      +})
      +export class SysRoutingModule {}

      至此,你可以放心在 sys 目录中开始开发像菜单管理、日志、系统配置等业务页面。

      二、页面

      利用 ng generate(可简写为:ng g) 命令在 sys 目录下创建一个日志列表页:

      ng g ng-alain:list log -m=sys

      了解更多请参考命令行工具

      最终,你可以访问 日志 页面。

      当然日志可能是一个非常丰富的信息,可以增加一个以模态框打开的查看页来显示更多详情。

      ng g ng-alain:view view -m=sys -t=log

      -t=log 表示希望把创建的文件放进至 sys/log/view

      \ No newline at end of file diff --git a/docs/performance/en/index.html b/docs/performance/en/index.html new file mode 100644 index 000000000..02a0f1d43 --- /dev/null +++ b/docs/performance/en/index.html @@ -0,0 +1 @@ +优化 - NG-ALAIN

      优化

      包体大小优化

      分为JavaScript脚本文件和CSS文件,以下只描述脚本部分,有关CSS文件请参考优化主题系统

      注意: 建议始终以业务优先,优化为后的准则,且在开始前对 NG-ALAIN 有一定了解后再进行优化。本章节的优化方案会随着版本的更迭有所变动,有关细节请持续关注。

      结构说明

      一般来说,构建后有两个文件会比较大:scripts.jsmain.js,而我们优化也主要针对这两项。

      scripts.js

      它来自是 angular.jsonscripts 节点的集合,因此,这个文件的大小取决于 scripts 节点所引用的第三方组件的大小。

      一般来说,当你在使用非 Angular 第三方组件时都应该放在 scripts 下。

      main.js

      默认使用 ng build 会将所有 @angular/*ng-zorro-antd@delon/* 以及一些第三方 Angular 组件都会被打包进来,除非你使用 --vendor-chunk 参数来分离这些类库。

      优化对象

      我们知道,Angular Cli 打包出来的资源文件会包含该文件 hashing 值,它像是文件的唯一标识码,若未对该文件进行模块修改都不会产生新的 hashing 值,这确保用户首次下载资源后不管我们如何再次构建用户都无须再一次下载。

      事实上,Angular Cli 默认将 --vendor-chunk 主要因素是这些 @angular/* 相对于迭代很快。

      根据 NG-ALAIN 的模块注册指导原则,产生的两个 shared-delon.module.tsshared-zorro.module.ts 两个专门针对 @Delon 与 NG-ZORRO 共享次级模块导入的汇总。

      @delon/abc@delon/chartng-zorro-antd 三个主要类库都支持次级导入,只选择项目所需要的模块将有效的解决包体大小的问题。

      结论

      待 NG-ALAIN 提供更好的优化支持后,我们会发布 #684 希望对包体大小有更好的

      \ No newline at end of file diff --git a/docs/performance/zh/index.html b/docs/performance/zh/index.html new file mode 100644 index 000000000..155204b07 --- /dev/null +++ b/docs/performance/zh/index.html @@ -0,0 +1 @@ +优化 - NG-ALAIN

      优化

      包体大小优化

      分为JavaScript脚本文件和CSS文件,以下只描述脚本部分,有关CSS文件请参考优化主题系统

      注意: 建议始终以业务优先,优化为后的准则,且在开始前对 NG-ALAIN 有一定了解后再进行优化。本章节的优化方案会随着版本的更迭有所变动,有关细节请持续关注。

      结构说明

      一般来说,构建后有两个文件会比较大:scripts.jsmain.js,而我们优化也主要针对这两项。

      scripts.js

      它来自是 angular.jsonscripts 节点的集合,因此,这个文件的大小取决于 scripts 节点所引用的第三方组件的大小。

      一般来说,当你在使用非 Angular 第三方组件时都应该放在 scripts 下。

      main.js

      默认使用 ng build 会将所有 @angular/*ng-zorro-antd@delon/* 以及一些第三方 Angular 组件都会被打包进来,除非你使用 --vendor-chunk 参数来分离这些类库。

      优化对象

      我们知道,Angular Cli 打包出来的资源文件会包含该文件 hashing 值,它像是文件的唯一标识码,若未对该文件进行模块修改都不会产生新的 hashing 值,这确保用户首次下载资源后不管我们如何再次构建用户都无须再一次下载。

      事实上,Angular Cli 默认将 --vendor-chunk 主要因素是这些 @angular/* 相对于迭代很快。

      根据 NG-ALAIN 的模块注册指导原则,产生的两个 shared-delon.module.tsshared-zorro.module.ts 两个专门针对 @Delon 与 NG-ZORRO 共享次级模块导入的汇总。

      @delon/abc@delon/chartng-zorro-antd 三个主要类库都支持次级导入,只选择项目所需要的模块将有效的解决包体大小的问题。

      结论

      待 NG-ALAIN 提供更好的优化支持后,我们会发布 #684 希望对包体大小有更好的

      \ No newline at end of file diff --git a/docs/server/en/index.html b/docs/server/en/index.html new file mode 100644 index 000000000..c211eae5a --- /dev/null +++ b/docs/server/en/index.html @@ -0,0 +1,8 @@ +和服务端进行交互 - NG-ALAIN

      和服务端进行交互

      NG-ALAIN 是一套基于 Angular 技术栈的单页面应用,我们提供的是前端代码和本地模拟数据的开发模式, 通过 Restful API 的形式和任何技术栈的服务端应用一起工作。下面将简单介绍和服务端交互的基本写法。

      前端请求流程

      在 NG-ALAIN 中,一个完整的前端 UI 交互到服务端处理流程是这样的:

      1. 首次启动 Angular 执行 APP_INITIALIZER

      2. 通常会在启动前先加载一些APP通用数据,例如:当前已授权用户数据、菜单数据、字典数据、配置项等

      3. UI 组件交互操作;

      4. 使用封装的 _HttpClient 发送请求;

      5. 触发用户认证拦截器 @delon/auth,统一加入 token 参数;

        • 若未存在 token 或已过期中断后续请求,直接跳转至登录页;

      6. 触发默认拦截器,统一处理前缀等信息;

      7. 获取服务端返回;

      8. 触发默认拦截器,统一处理请求异常、业务异常等;

      9. 数据更新,并刷新 UI。

      拦截器

      默认情况下在根模块注册了两个拦截器 SimpleInterceptorDefaultInterceptor,且执行顺序按注册顺序执行。

      SimpleInterceptor

      用户认证内置用于自动为请求添加 token 参数的拦截器。这里还有一个叫 JWTInterceptor 拦截器,是一个标准 JWT 规范,若后端采用标准JWT可以直接换成JWTInterceptor拦截器。

      DefaultInterceptor

      DefaultInterceptor 拦截器只是提供一个拦截器的写法,默认包含了统一处理服务器请求前缀、处理请求异常及业务异常的示例代码,你可以根据你自己的需求做调整。

      注意点

      我们可以把拦截器 intercept 方法内,以 next.handle(req) 为分界点,前部分为请求前,pipe 部分为接收后。这样会更明确知道哪一部分是请求前要做,哪一部分是请求后会执行的。有关更多拦截器知识请参考官网。

      开发环境

      正常情况下开发环境和生产环境不是同一个后端请求源,实际可以通过配置 environment 目录下 environment.tsenvironment.prod.ts 改变不同环境的请求源。

      environment 实际是一个JSON对象,可以组织不同形式来满足多请求源的问题。

      Mock

      有时候希望优先开发前端时,可以利用 @delon/mock 来模拟请求数据,实际原理是利用拦截器,对匹配的URL直接返回数据,而不是发送一个HTTP请求,默认情况下只对测试环境有效。当然通常情况下你需要确保 Mock 接口的数据与后端保持一致,你可以在 _mock 目录下创建相应的 Mock 接口:

      export const USERS = {
      +  'GET /users': { users: [1, 2], total: 2 }
      +}

      因此对于测试环境下当遇到 /users 请求直接返回 { users: [1, 2], total: 2 } 数据。有关更多 Mock 语法和使用方式参考这里

      注: 当你不需要某个请求的 Mock 接口时,务必要注释掉或移除它。

      跨域

      大部分应用都会前后端分离进行开发,这导致当对后端发起一个请求时会受跨域(CORS)的因素,例如:

      http.get(`http://192.168.1.100/api/app`).subscribe();

      注:如果非 http 开头的请求,会在每个请求都会加上 environment.SERVER_URL 作为请求 URL 的前缘。

      直接返回以下错误:

      Access to XMLHttpRequest at 'http://192.168.1.100/api/app' from origin 'http://localhost:4200' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

      而正常解决跨域问题有两种方法,一是让后端开发环境直接支持跨域请求(不推荐,但最简单),二是利用 Angular Cli 提供代理支持,开发代理服务器会将 Angular 发送的请求的域和端口转发给后端服务器,CORS 是浏览器的安全限制,在代理服务器与后端服务器之前并不存在 CORS 的问题,这也就是为什么很多人会尝试明明在 Postman 能请求,而在 Angular 下无法请求的原因所在。

      假定所有后端请求都是以 /api 为前缀时,就可以在 proxy.conf.js 配置所有这个前缀都转向新的后端,例如:

      module.exports = {
      +  '/api': {
      +    target: 'http://192.168.1.100/api',
      +    secure: false
      +  }
      +}
      • /api 代理路径,不支持域

      • target 代理目标地址

      • secure 代理目标地址如果是 https 应该设置为 true,反之为 false

      • pathRewrite 重写地址,例如 pathRewrite: {'^/api': '/'} 将前缀 /api 转为 /

      • changeOrigin 将主机标头的 host 更改为目标URL,有些后端会根据其值来判断是否有效,可能需要通过设置 true

      • logLevel 设置为 debug 可以终端显示代理转发的消息

      更多使用说明请参考代理到后端服务器,以及配置描述请参考http-proxy-middleware options

      常见问题

      请求可能被拒绝或直接返回 401 ?

      脚手架默认情况下使用了 @delon/authSimpleInterceptor 拦截器,导致在请求过程中若发现无法获取 Token 时会直接返回错误。

      用户认证这个过程是中台必备的。

      关于无法显示请求日志

      从 Angular13 开始远程请求的调试日志将不再终端中显示,若有显示日期需求,可自行参考 How to fix logging for proxy in angular

      \ No newline at end of file diff --git a/docs/server/zh/index.html b/docs/server/zh/index.html new file mode 100644 index 000000000..001fe36be --- /dev/null +++ b/docs/server/zh/index.html @@ -0,0 +1,8 @@ +和服务端进行交互 - NG-ALAIN

      和服务端进行交互

      NG-ALAIN 是一套基于 Angular 技术栈的单页面应用,我们提供的是前端代码和本地模拟数据的开发模式, 通过 Restful API 的形式和任何技术栈的服务端应用一起工作。下面将简单介绍和服务端交互的基本写法。

      前端请求流程

      在 NG-ALAIN 中,一个完整的前端 UI 交互到服务端处理流程是这样的:

      1. 首次启动 Angular 执行 APP_INITIALIZER

      2. 通常会在启动前先加载一些APP通用数据,例如:当前已授权用户数据、菜单数据、字典数据、配置项等

      3. UI 组件交互操作;

      4. 使用封装的 _HttpClient 发送请求;

      5. 触发用户认证拦截器 @delon/auth,统一加入 token 参数;

        • 若未存在 token 或已过期中断后续请求,直接跳转至登录页;

      6. 触发默认拦截器,统一处理前缀等信息;

      7. 获取服务端返回;

      8. 触发默认拦截器,统一处理请求异常、业务异常等;

      9. 数据更新,并刷新 UI。

      拦截器

      默认情况下在根模块注册了两个拦截器 SimpleInterceptorDefaultInterceptor,且执行顺序按注册顺序执行。

      SimpleInterceptor

      用户认证内置用于自动为请求添加 token 参数的拦截器。这里还有一个叫 JWTInterceptor 拦截器,是一个标准 JWT 规范,若后端采用标准JWT可以直接换成JWTInterceptor拦截器。

      DefaultInterceptor

      DefaultInterceptor 拦截器只是提供一个拦截器的写法,默认包含了统一处理服务器请求前缀、处理请求异常及业务异常的示例代码,你可以根据你自己的需求做调整。

      注意点

      我们可以把拦截器 intercept 方法内,以 next.handle(req) 为分界点,前部分为请求前,pipe 部分为接收后。这样会更明确知道哪一部分是请求前要做,哪一部分是请求后会执行的。有关更多拦截器知识请参考官网。

      开发环境

      正常情况下开发环境和生产环境不是同一个后端请求源,实际可以通过配置 environment 目录下 environment.tsenvironment.prod.ts 改变不同环境的请求源。

      environment 实际是一个JSON对象,可以组织不同形式来满足多请求源的问题。

      Mock

      有时候希望优先开发前端时,可以利用 @delon/mock 来模拟请求数据,实际原理是利用拦截器,对匹配的URL直接返回数据,而不是发送一个HTTP请求,默认情况下只对测试环境有效。当然通常情况下你需要确保 Mock 接口的数据与后端保持一致,你可以在 _mock 目录下创建相应的 Mock 接口:

      export const USERS = {
      +  'GET /users': { users: [1, 2], total: 2 }
      +}

      因此对于测试环境下当遇到 /users 请求直接返回 { users: [1, 2], total: 2 } 数据。有关更多 Mock 语法和使用方式参考这里

      注: 当你不需要某个请求的 Mock 接口时,务必要注释掉或移除它。

      跨域

      大部分应用都会前后端分离进行开发,这导致当对后端发起一个请求时会受跨域(CORS)的因素,例如:

      http.get(`http://192.168.1.100/api/app`).subscribe();

      注:如果非 http 开头的请求,会在每个请求都会加上 environment.SERVER_URL 作为请求 URL 的前缘。

      直接返回以下错误:

      Access to XMLHttpRequest at 'http://192.168.1.100/api/app' from origin 'http://localhost:4200' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

      而正常解决跨域问题有两种方法,一是让后端开发环境直接支持跨域请求(不推荐,但最简单),二是利用 Angular Cli 提供代理支持,开发代理服务器会将 Angular 发送的请求的域和端口转发给后端服务器,CORS 是浏览器的安全限制,在代理服务器与后端服务器之前并不存在 CORS 的问题,这也就是为什么很多人会尝试明明在 Postman 能请求,而在 Angular 下无法请求的原因所在。

      假定所有后端请求都是以 /api 为前缀时,就可以在 proxy.conf.js 配置所有这个前缀都转向新的后端,例如:

      module.exports = {
      +  '/api': {
      +    target: 'http://192.168.1.100/api',
      +    secure: false
      +  }
      +}
      • /api 代理路径,不支持域

      • target 代理目标地址

      • secure 代理目标地址如果是 https 应该设置为 true,反之为 false

      • pathRewrite 重写地址,例如 pathRewrite: {'^/api': '/'} 将前缀 /api 转为 /

      • changeOrigin 将主机标头的 host 更改为目标URL,有些后端会根据其值来判断是否有效,可能需要通过设置 true

      • logLevel 设置为 debug 可以终端显示代理转发的消息

      更多使用说明请参考代理到后端服务器,以及配置描述请参考http-proxy-middleware options

      常见问题

      请求可能被拒绝或直接返回 401 ?

      脚手架默认情况下使用了 @delon/authSimpleInterceptor 拦截器,导致在请求过程中若发现无法获取 Token 时会直接返回错误。

      用户认证这个过程是中台必备的。

      关于无法显示请求日志

      从 Angular13 开始远程请求的调试日志将不再终端中显示,若有显示日期需求,可自行参考 How to fix logging for proxy in angular

      \ No newline at end of file diff --git a/docs/ssr/en/index.html b/docs/ssr/en/index.html new file mode 100644 index 000000000..38f8cc253 --- /dev/null +++ b/docs/ssr/en/index.html @@ -0,0 +1,35 @@ +服务端渲染(SSR) - NG-ALAIN
      This article has not been translated, hope that your can PR to translated it. Help us!

      服务端渲染(SSR)

      本文描述的是 NG-ALAIN 如何支持服务端渲染(SSR)。

      NG-ALAIN 不推荐在中后台使用服务端渲染(SSR),这是因为中后台本身对于SSR所带来的好处远大于开发带来的麻烦,但不管怎么样在许多人的要求下,从 9.5 版本开始,已经对所有 @delon/* 类库支持服务端渲染。

      开始之前

      在开始之前请先阅读以下文章,它们能够更加快速让你了解 Angular 服务端渲染是如何工作的:

      教程

      添加 @nguniversal/express-engine

      在一个完整的 NG-ALAIN 项目下,执行以下命令:

      ng add @nguniversal/express-engine

      最后运行:

      npm run dev:ssr

      此时会以 SSR 的形式运行 NG-ALAIN。

      但如果采用默认 LocalStorageStore 来存储 Token 的情况下,会提示找不到 localStorage 的错误,这是因为服务端并没有这些,它们可能还包含 windowdocumentsessionStorage 等。

      因此,要想在中后台很好的支持 SSR,需要分析所依赖的第三方类库是否支持 SSR,如果没有必须手动处理在服务端下不渲染这些组件。

      丢失Token

      服务端是无状态的,因此判断请求是否有效授权,目前通用的做法是将 Token 存储在 Cookie 下,在服务端接收请求时再根据 Cookies 来获取 Token 信息。

      虽然 NG-ALAIN 提供 CookieStorageStore 但它并不支持服务端 SSR 访问 Cookie,因此需要手动构建针对 SSR 的 Token 持久化存储。

      推荐使用 @ngx-utils/cookies 来处理 Cookies,它同时支持客户端与服务端。

      注意: 受限于 #20 的原因,由于一直未处理,有人专门解决了这个问题并发布一个新类库 ngx-utils-cookies-port,暂时只能使用它来代替 @ngx-utils/cookies,用法一模一样只是模块名换一下,在修复之后再换回来。

      要创建一个符合 @delon/auth 接口持久化存储类,只需要继承 IStore 即可,例如:

      import { Injectable } from '@angular/core';
      +import { IStore, ITokenModel } from '@delon/auth';
      +import { CookiesService } from 'ngx-utils-cookies-port';
      +
      +@Injectable()
      +export class AuthStorageStore implements IStore {
      +  constructor(private cookies: CookiesService) {}
      +
      +  get(key: string): ITokenModel {
      +    return JSON.parse(this.cookies.get(key) || '{}') || {};
      +  }
      +
      +  set(key: string, value: ITokenModel | null): boolean {
      +    this.cookies.put(key, JSON.stringify(value));
      +    return true;
      +  }
      +
      +  remove(key: string) {
      +    this.cookies.remove(key);
      +  }
      +}

      最后,在 global-config.module.ts 内重新注册它:

       const alainProvides = [
      +   { provide: ALAIN_CONFIG, useValue: alainConfig },
      ++  { provide: DA_STORE_TOKEN, useClass: AuthStorageStore },
      + ];

      注意:这里依然需要注册新增的模块,方法请参考 @ngx-utils/cookies 说明。

      @ngx-utils/cookies 内部会根据 REQUEST 来获取当前的请求头信息,因此,我们还需要修改 server.ts

        // All regular routes use the Universal engine
      +  server.get('*', (req, res) => {
      +    res.render(indexHtml, {
      +      req,
      ++     res,
      +      providers: [
      +        { provide: APP_BASE_HREF, useValue: req.baseUrl },
      ++       { provide: 'REQUEST', useValue: req },
      ++       { provide: 'RESPONSE', useValue: res },
      +      ],
      +    });
      +  });
      \ No newline at end of file diff --git a/docs/ssr/zh/index.html b/docs/ssr/zh/index.html new file mode 100644 index 000000000..443d50cd4 --- /dev/null +++ b/docs/ssr/zh/index.html @@ -0,0 +1,35 @@ +服务端渲染(SSR) - NG-ALAIN
      This article has not been translated, hope that your can PR to translated it. Help us!

      服务端渲染(SSR)

      本文描述的是 NG-ALAIN 如何支持服务端渲染(SSR)。

      NG-ALAIN 不推荐在中后台使用服务端渲染(SSR),这是因为中后台本身对于SSR所带来的好处远大于开发带来的麻烦,但不管怎么样在许多人的要求下,从 9.5 版本开始,已经对所有 @delon/* 类库支持服务端渲染。

      开始之前

      在开始之前请先阅读以下文章,它们能够更加快速让你了解 Angular 服务端渲染是如何工作的:

      教程

      添加 @nguniversal/express-engine

      在一个完整的 NG-ALAIN 项目下,执行以下命令:

      ng add @nguniversal/express-engine

      最后运行:

      npm run dev:ssr

      此时会以 SSR 的形式运行 NG-ALAIN。

      但如果采用默认 LocalStorageStore 来存储 Token 的情况下,会提示找不到 localStorage 的错误,这是因为服务端并没有这些,它们可能还包含 windowdocumentsessionStorage 等。

      因此,要想在中后台很好的支持 SSR,需要分析所依赖的第三方类库是否支持 SSR,如果没有必须手动处理在服务端下不渲染这些组件。

      丢失Token

      服务端是无状态的,因此判断请求是否有效授权,目前通用的做法是将 Token 存储在 Cookie 下,在服务端接收请求时再根据 Cookies 来获取 Token 信息。

      虽然 NG-ALAIN 提供 CookieStorageStore 但它并不支持服务端 SSR 访问 Cookie,因此需要手动构建针对 SSR 的 Token 持久化存储。

      推荐使用 @ngx-utils/cookies 来处理 Cookies,它同时支持客户端与服务端。

      注意: 受限于 #20 的原因,由于一直未处理,有人专门解决了这个问题并发布一个新类库 ngx-utils-cookies-port,暂时只能使用它来代替 @ngx-utils/cookies,用法一模一样只是模块名换一下,在修复之后再换回来。

      要创建一个符合 @delon/auth 接口持久化存储类,只需要继承 IStore 即可,例如:

      import { Injectable } from '@angular/core';
      +import { IStore, ITokenModel } from '@delon/auth';
      +import { CookiesService } from 'ngx-utils-cookies-port';
      +
      +@Injectable()
      +export class AuthStorageStore implements IStore {
      +  constructor(private cookies: CookiesService) {}
      +
      +  get(key: string): ITokenModel {
      +    return JSON.parse(this.cookies.get(key) || '{}') || {};
      +  }
      +
      +  set(key: string, value: ITokenModel | null): boolean {
      +    this.cookies.put(key, JSON.stringify(value));
      +    return true;
      +  }
      +
      +  remove(key: string) {
      +    this.cookies.remove(key);
      +  }
      +}

      最后,在 global-config.module.ts 内重新注册它:

       const alainProvides = [
      +   { provide: ALAIN_CONFIG, useValue: alainConfig },
      ++  { provide: DA_STORE_TOKEN, useClass: AuthStorageStore },
      + ];

      注意:这里依然需要注册新增的模块,方法请参考 @ngx-utils/cookies 说明。

      @ngx-utils/cookies 内部会根据 REQUEST 来获取当前的请求头信息,因此,我们还需要修改 server.ts

        // All regular routes use the Universal engine
      +  server.get('*', (req, res) => {
      +    res.render(indexHtml, {
      +      req,
      ++     res,
      +      providers: [
      +        { provide: APP_BASE_HREF, useValue: req.baseUrl },
      ++       { provide: 'REQUEST', useValue: req },
      ++       { provide: 'RESPONSE', useValue: res },
      +      ],
      +    });
      +  });
      \ No newline at end of file diff --git a/docs/style-guide/en/index.html b/docs/style-guide/en/index.html new file mode 100644 index 000000000..fd377adf2 --- /dev/null +++ b/docs/style-guide/en/index.html @@ -0,0 +1,14 @@ +编码规范建议 - NG-ALAIN

      编码规范建议

      Angular CLI 构建的项目就其目录结构而言已经非常棒了,同时官网也有一份 Angular Style Guide中文版)风格指南,建议好好阅读几遍。除此之外,NG-ALAIN 也有一部分编码风格,如下说明可能对于你阅读代码时有用。

      一致的代码风格

      NG-ALAIN 使用 ESLint保证代码质量Prettier优化代码风格

      推荐安装几个插件在 vscode 中更友好的开发:

      当然,NG-ALAIN 为大家准备了一套完整的扩展包,只需要安装 NG-ALAIN Extension Pack 即可。

      Git - pre commit 勾子

      Angular 提供的 ng lint 命令可以非常有效的帮助我们更早发现bug、更高的可读性;如果我们能够保证团队开发过程中每一次 commit 前都自动做一次 staged 中文件的 lint 的话,那不是非常酷吗?

      NG-ALAIN 配置了每次对 staged 进行 commit 时会预先做 lint,若发现错误则无法提交。

      默认开启了 *.ts*.less 的提交过程中强制对代码进行格式化,你可以通过修改 package.jsonhusky 节点来改变些规则。

      若在执行 git commit -m "commit" 时若产生 hint: The '.husky/pre-commit' hook was ignored because it's not set as executable. 时,可能是因为权限问题,可以尝试在项目根目录下执行:

      chmod ug+x .husky/*
      +chmod ug+x .git/hooks/*

      风格指南

      API文档

      应用总是免不了业务组件的开发,我们无法保证若干时间之后你还能记得这些,因此务必在每一个业务组件附带 README.md 文档,并描述API、DEMO等信息,例如:

      ## 何时使用?
      +
      +略
      +
      +## DEMO
      +
      +略
      +
      +## API
      +
      +成员 | 说明 | 类型 | 默认值
      +----|------|-----|------
      +src | 图片地址  | `string` | -

      模块注册

      请参数模块注册指导原则

      辅助项

      ng-alain 配置了一些针对 CLI 选项,以便更好进行编码工作。

      CLI

      vscode 是编写 Angular 最佳的选择,你可以在项目的任何目录里输入:ng g c list 生成组件的相应的文件。

      ng-alain 默认配置了不生成样式文件&单元测试,因此,你会看到生成的只有 .ts.html。这是因为 ng-alain 提供了非常丰富的样式API,在大多数页面中自定义样式并不是刚需的;同时,单元测试也是如此。

      当然,你可以很容易在 angular.json 中调整默认配置。

      vscode snippets

      vscode 是编写 Angular 最佳的选择,自然 NG-ALAIN 也制作了相应 snippets 扩展插件:ng-zorro-vscodeng-alain-vscode

      \ No newline at end of file diff --git a/docs/style-guide/zh/index.html b/docs/style-guide/zh/index.html new file mode 100644 index 000000000..c21e4cf95 --- /dev/null +++ b/docs/style-guide/zh/index.html @@ -0,0 +1,14 @@ +编码规范建议 - NG-ALAIN

      编码规范建议

      Angular CLI 构建的项目就其目录结构而言已经非常棒了,同时官网也有一份 Angular Style Guide中文版)风格指南,建议好好阅读几遍。除此之外,NG-ALAIN 也有一部分编码风格,如下说明可能对于你阅读代码时有用。

      一致的代码风格

      NG-ALAIN 使用 ESLint保证代码质量Prettier优化代码风格

      推荐安装几个插件在 vscode 中更友好的开发:

      当然,NG-ALAIN 为大家准备了一套完整的扩展包,只需要安装 NG-ALAIN Extension Pack 即可。

      Git - pre commit 勾子

      Angular 提供的 ng lint 命令可以非常有效的帮助我们更早发现bug、更高的可读性;如果我们能够保证团队开发过程中每一次 commit 前都自动做一次 staged 中文件的 lint 的话,那不是非常酷吗?

      NG-ALAIN 配置了每次对 staged 进行 commit 时会预先做 lint,若发现错误则无法提交。

      默认开启了 *.ts*.less 的提交过程中强制对代码进行格式化,你可以通过修改 package.jsonhusky 节点来改变些规则。

      若在执行 git commit -m "commit" 时若产生 hint: The '.husky/pre-commit' hook was ignored because it's not set as executable. 时,可能是因为权限问题,可以尝试在项目根目录下执行:

      chmod ug+x .husky/*
      +chmod ug+x .git/hooks/*

      风格指南

      API文档

      应用总是免不了业务组件的开发,我们无法保证若干时间之后你还能记得这些,因此务必在每一个业务组件附带 README.md 文档,并描述API、DEMO等信息,例如:

      ## 何时使用?
      +
      +略
      +
      +## DEMO
      +
      +略
      +
      +## API
      +
      +成员 | 说明 | 类型 | 默认值
      +----|------|-----|------
      +src | 图片地址  | `string` | -

      模块注册

      请参数模块注册指导原则

      辅助项

      ng-alain 配置了一些针对 CLI 选项,以便更好进行编码工作。

      CLI

      vscode 是编写 Angular 最佳的选择,你可以在项目的任何目录里输入:ng g c list 生成组件的相应的文件。

      ng-alain 默认配置了不生成样式文件&单元测试,因此,你会看到生成的只有 .ts.html。这是因为 ng-alain 提供了非常丰富的样式API,在大多数页面中自定义样式并不是刚需的;同时,单元测试也是如此。

      当然,你可以很容易在 angular.json 中调整默认配置。

      vscode snippets

      vscode 是编写 Angular 最佳的选择,自然 NG-ALAIN 也制作了相应 snippets 扩展插件:ng-zorro-vscodeng-alain-vscode

      \ No newline at end of file diff --git a/docs/theme/en/index.html b/docs/theme/en/index.html new file mode 100644 index 000000000..da94b82c6 --- /dev/null +++ b/docs/theme/en/index.html @@ -0,0 +1 @@ +Not Page Name - NG-ALAIN
      This article has not been translated, hope that your can PR to translated it. Help us!

      主题系统

      \ No newline at end of file diff --git a/docs/theme/zh/index.html b/docs/theme/zh/index.html new file mode 100644 index 000000000..da94b82c6 --- /dev/null +++ b/docs/theme/zh/index.html @@ -0,0 +1 @@ +Not Page Name - NG-ALAIN
      This article has not been translated, hope that your can PR to translated it. Help us!

      主题系统

      \ No newline at end of file diff --git a/docs/upgrade-v16/en/index.html b/docs/upgrade-v16/en/index.html new file mode 100644 index 000000000..883eaf562 --- /dev/null +++ b/docs/upgrade-v16/en/index.html @@ -0,0 +1 @@ +升级到 16.0 版本 - NG-ALAIN

      升级到 16.0 版本

      本指南适用于当前版本 ng-alain >= 15 ; 如果在升级过程中遇到问题,欢迎提出。提问前请阅读 如何向开源社区提问题 如果发现本指南存在遗漏/错误,请指出! 或者你遇到了新的问题并解决了,欢迎补充!

      开始之前

      1. 首先确保你 Node.js >= 16.10.0

      2. 创建新的分支,或者使用其他方式备份当前项目

      3. 删除项目下 package-lock.jsonyarn.lock 文件

      升级步骤

      升级相关依赖

      • 将项目升级到 Angular 15 运行 ng update @angular/core@16 @angular/cli@16 @angular-eslint/schematics@16 ng-zorro-antd@16 ng-alain@16

      • 如果你有单独使用 @angular/cdk 请执行 ng update @angular/cdk@16

      • 如果控制台出现警告消息请按提示修改对应代码

      NG-ALAIN脚手架升级全部变更文件,请参考:#2394

      \ No newline at end of file diff --git a/docs/upgrade-v16/zh/index.html b/docs/upgrade-v16/zh/index.html new file mode 100644 index 000000000..8a582a994 --- /dev/null +++ b/docs/upgrade-v16/zh/index.html @@ -0,0 +1 @@ +升级到 16.0 版本 - NG-ALAIN

      升级到 16.0 版本

      本指南适用于当前版本 ng-alain >= 15 ; 如果在升级过程中遇到问题,欢迎提出。提问前请阅读 如何向开源社区提问题 如果发现本指南存在遗漏/错误,请指出! 或者你遇到了新的问题并解决了,欢迎补充!

      开始之前

      1. 首先确保你 Node.js >= 16.10.0

      2. 创建新的分支,或者使用其他方式备份当前项目

      3. 删除项目下 package-lock.jsonyarn.lock 文件

      升级步骤

      升级相关依赖

      • 将项目升级到 Angular 15 运行 ng update @angular/core@16 @angular/cli@16 @angular-eslint/schematics@16 ng-zorro-antd@16 ng-alain@16

      • 如果你有单独使用 @angular/cdk 请执行 ng update @angular/cdk@16

      • 如果控制台出现警告消息请按提示修改对应代码

      NG-ALAIN脚手架升级全部变更文件,请参考:#2394

      \ No newline at end of file diff --git a/docs/upgrade/en/index.html b/docs/upgrade/en/index.html new file mode 100644 index 000000000..6947fdce4 --- /dev/null +++ b/docs/upgrade/en/index.html @@ -0,0 +1 @@ +升级脚手架 - NG-ALAIN

      升级脚手架

      体系结构 中我们已经描述了 NG-ALAIN 脚手架的整体构成,我们花了大量时间去开发一些基础建设,并把这些以 @delon/* 系列发布至 Npm 当中,使得升级变得非常轻松。

      发布规则

      @angular/* 类似,@delon/* 类库的版本号在每一个迭代时,不管某类库是否有修改,都会统一个版本号 (NPM version) 。

      同时按以下发布规则及更新版本号说明:

      • @delon 作为基础建设类库,在更新频率上会略高,一般一周至少更新一次

      • 带有 BREAKING CHANGES 至少提升一个次版本号

      • 更新日志

      如何升级?

      方式一:命令行(推荐)

      除非是大版本更新(即类似从 12.0.0 升至 13.0.0),否则只需要运行以下命令即可:

      ng update ng-alain

      方式二:手动修改版本号

      修改 package.json 所有 @delon/ 开头的类库版本号为最新版本号:

      "@delon/theme": "^12.0.0"

      ^12.0.0 替换成最新版本号。

      最后,重新安装依赖包。

      yarn

      遇到问题请阅读 常见问题

      方式三:更新所有类库

      脚手架在 package.json 里多数类库都是使用宽松的版本号,例如:

      ^0.1.0 带有 ^ 符号表示使用最新次版本号,因此,0.7.0 也是该范围之列。

      要想采用这种更新方式需要按以下步骤进行:

      • 移除 node_modules 文件夹及 yarn.lock 文件

      • 执行 yarn

      注意: 这种方式会对所有类库按比较新的版本安装,但有可能会导致由于第三方类型的破坏性变更会导致一些不必

      \ No newline at end of file diff --git a/docs/upgrade/zh/index.html b/docs/upgrade/zh/index.html new file mode 100644 index 000000000..7d6bb9bc0 --- /dev/null +++ b/docs/upgrade/zh/index.html @@ -0,0 +1 @@ +升级脚手架 - NG-ALAIN

      升级脚手架

      体系结构 中我们已经描述了 NG-ALAIN 脚手架的整体构成,我们花了大量时间去开发一些基础建设,并把这些以 @delon/* 系列发布至 Npm 当中,使得升级变得非常轻松。

      发布规则

      @angular/* 类似,@delon/* 类库的版本号在每一个迭代时,不管某类库是否有修改,都会统一个版本号 (NPM version) 。

      同时按以下发布规则及更新版本号说明:

      • @delon 作为基础建设类库,在更新频率上会略高,一般一周至少更新一次

      • 带有 BREAKING CHANGES 至少提升一个次版本号

      • 更新日志

      如何升级?

      方式一:命令行(推荐)

      除非是大版本更新(即类似从 12.0.0 升至 13.0.0),否则只需要运行以下命令即可:

      ng update ng-alain

      方式二:手动修改版本号

      修改 package.json 所有 @delon/ 开头的类库版本号为最新版本号:

      "@delon/theme": "^12.0.0"

      ^12.0.0 替换成最新版本号。

      最后,重新安装依赖包。

      yarn

      遇到问题请阅读 常见问题

      方式三:更新所有类库

      脚手架在 package.json 里多数类库都是使用宽松的版本号,例如:

      ^0.1.0 带有 ^ 符号表示使用最新次版本号,因此,0.7.0 也是该范围之列。

      要想采用这种更新方式需要按以下步骤进行:

      • 移除 node_modules 文件夹及 yarn.lock 文件

      • 执行 yarn

      注意: 这种方式会对所有类库按比较新的版本安装,但有可能会导致由于第三方类型的破坏性变更会导致一些不必

      \ No newline at end of file diff --git a/form/acl/en/index.html b/form/acl/en/index.html new file mode 100644 index 000000000..806f0b67e --- /dev/null +++ b/form/acl/en/index.html @@ -0,0 +1,40 @@ +acl - NG-ALAIN
      This article has not been translated, hope that your can PR to translated it. Help us!

      ACL

      结合 @delon/acl 权限可以利用一个 Schema 来构建不同角色或权限

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { ACLService } from '@delon/acl';
      +import { SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-acl-simple',
      +  template: `
      +    <sf [schema]="schema" (formSubmit)="submit($event)"></sf>
      +    <button nz-button nzType="primary" (click)="acl.setFull(true)">Full</button>
      +    <button nz-button nzType="primary" (click)="acl.setFull(false)">Not Full</button>
      +    <button nz-button nzType="primary" (click)="acl.setRole(['admin'])">Admin Role</button>
      +    <button nz-button nzType="primary" (click)="acl.setRole(['user'])">User Role</button>
      +  `,
      +})
      +export class FormAclSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      name: {
      +        type: 'string',
      +        title: 'name-user',
      +        ui: {
      +          acl: 'user',
      +        },
      +      },
      +      age: {
      +        type: 'string',
      +        title: 'age-admin',
      +        ui: {
      +          acl: 'admin',
      +        },
      +      },
      +    },
      +    required: ['name'],
      +  };
      +  constructor(private msg: NzMessageService, public acl: ACLService) {}
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}
      \ No newline at end of file diff --git a/form/acl/zh/index.html b/form/acl/zh/index.html new file mode 100644 index 000000000..dc5189a23 --- /dev/null +++ b/form/acl/zh/index.html @@ -0,0 +1,40 @@ +acl - NG-ALAIN
      This article has not been translated, hope that your can PR to translated it. Help us!

      ACL

      结合 @delon/acl 权限可以利用一个 Schema 来构建不同角色或权限

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { ACLService } from '@delon/acl';
      +import { SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-acl-simple',
      +  template: `
      +    <sf [schema]="schema" (formSubmit)="submit($event)"></sf>
      +    <button nz-button nzType="primary" (click)="acl.setFull(true)">Full</button>
      +    <button nz-button nzType="primary" (click)="acl.setFull(false)">Not Full</button>
      +    <button nz-button nzType="primary" (click)="acl.setRole(['admin'])">Admin Role</button>
      +    <button nz-button nzType="primary" (click)="acl.setRole(['user'])">User Role</button>
      +  `,
      +})
      +export class FormAclSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      name: {
      +        type: 'string',
      +        title: 'name-user',
      +        ui: {
      +          acl: 'user',
      +        },
      +      },
      +      age: {
      +        type: 'string',
      +        title: 'age-admin',
      +        ui: {
      +          acl: 'admin',
      +        },
      +      },
      +    },
      +    required: ['name'],
      +  };
      +  constructor(private msg: NzMessageService, public acl: ACLService) {}
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}
      \ No newline at end of file diff --git a/form/array/en/index.html b/form/array/en/index.html new file mode 100644 index 000000000..a0ebdf75c --- /dev/null +++ b/form/array/en/index.html @@ -0,0 +1,130 @@ +array - NG-ALAIN

      数组

      创建对象数组,只对 schema.type="array" 时有效。

      关于布局

      数组的布局分为数组本身以及数组元素布局,arraySpan 决定每个数组元素占栅格数值。

      Schema 内嵌 UI 风格:

      const schema = {
      +  list: {
      +    type: 'array',
      +    items: {
      +      a: { type: 'string' },
      +      b: { type: 'number', ui: { spanLabel: 10 } }
      +    },
      +    ui: { spanLabel: 5, grid: { arraySpan: 12 } }
      +  }
      +};

      注意: items 下所有属性都继承于 list.ui,最终 items.a5 个单位、items.b10 个单位。

      Schema 与 UI 分开风格,假如上述 Schema 转化成 UI 写法:

      const ui = {
      +  $list: {
      +    $items: {
      +      $b: { spanLabel: 10 }
      +    },
      +    spanLabel: 5,
      +    grid: { arraySpan: 12 }
      +  }
      +};

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFArrayWidgetSchema, SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-array-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormArraySimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      product: {
      +        type: 'array',
      +        title: '产品清单',
      +        maxItems: 4,
      +        items: {
      +          type: 'object',
      +          properties: {
      +            name: {
      +              type: 'string',
      +              title: '名称',
      +            },
      +            price: {
      +              type: 'number',
      +              title: '单价',
      +              minimum: 1,
      +            },
      +          },
      +          required: ['name', 'price'],
      +        },
      +        ui: { grid: { arraySpan: 12 } } as SFArrayWidgetSchema,
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}
      不规则布局

      灵活使用 ui 来复杂不规则布局。

      expand codeexpand code
      import { Component } from '@angular/core';
      +
      +import { SFArrayWidgetSchema, SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-array-irregular',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `
      +})
      +export class FormArrayIrregularComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      title: { type: 'string' },
      +      market: { type: 'number' },
      +      price: { type: 'number' },
      +      skus: {
      +        type: 'array',
      +        title: 'Skus',
      +        maxItems: 4,
      +        default: [{}],
      +        items: {
      +          type: 'object',
      +          properties: {
      +            name: {
      +              type: 'string',
      +              title: '名称'
      +            },
      +            price: {
      +              type: 'number',
      +              title: '单价',
      +              minimum: 1
      +            },
      +            stock: {
      +              type: 'number',
      +              minimum: 1
      +            },
      +            desc: {
      +              type: 'string',
      +              ui: {
      +                grid: { span: 24 } // 单独设置desc元素在当前数组表单所占格数,24表示整行
      +              }
      +            }
      +          },
      +          required: ['name', 'price', 'stock'],
      +          ui: {
      +            grid: { span: 12 } // 针对数组内部表单统一设置,12表示一行两个
      +          }
      +        },
      +        ui: {
      +          grid: {
      +            span: 24, // 单独设置Sku元素在整个表单所占格数,24表示整行
      +            arraySpan: 12 // 设置数组每个索引所占格数,12表示一行两个
      +          }
      +        } as SFArrayWidgetSchema
      +      },
      +      desc: {
      +        type: 'string',
      +        ui: { grid: { span: 24 } }
      +      }
      +    },
      +    required: ['title', 'market', 'price'],
      +    ui: {
      +      spanLabelFixed: 100,
      +      grid: { span: 8 }
      +    }
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      参数说明类型默认值
      [items]数组元素类型描述SFSchema-
      [minItems]约束数组最小的元素个数number-
      [maxItems]约束数组最大的元素个数number-
      [uniqueItems]约束数组每个元素都不相同boolean-

      ui 属性

      参数说明类型默认值
      [addTitle]添加按钮文本string添加
      [addType]添加按钮类型,等同 nzTypestringdashed
      [removable]是否包含移除按钮booleantrue
      [removeTitle]移除按钮文本string移除
      [required]当前项是否为必填,仅影响样式boolean-
      [$items]数组元素类型UI描述SFUISchema-
      (add)添加回调,property 表示添加后的表单属性(property: FormProperty) => void-
      (remove)移除回调(index: number) => void-
      \ No newline at end of file diff --git a/form/array/zh/index.html b/form/array/zh/index.html new file mode 100644 index 000000000..43adec380 --- /dev/null +++ b/form/array/zh/index.html @@ -0,0 +1,130 @@ +array - NG-ALAIN

      数组

      创建对象数组,只对 schema.type="array" 时有效。

      关于布局

      数组的布局分为数组本身以及数组元素布局,arraySpan 决定每个数组元素占栅格数值。

      Schema 内嵌 UI 风格:

      const schema = {
      +  list: {
      +    type: 'array',
      +    items: {
      +      a: { type: 'string' },
      +      b: { type: 'number', ui: { spanLabel: 10 } }
      +    },
      +    ui: { spanLabel: 5, grid: { arraySpan: 12 } }
      +  }
      +};

      注意: items 下所有属性都继承于 list.ui,最终 items.a5 个单位、items.b10 个单位。

      Schema 与 UI 分开风格,假如上述 Schema 转化成 UI 写法:

      const ui = {
      +  $list: {
      +    $items: {
      +      $b: { spanLabel: 10 }
      +    },
      +    spanLabel: 5,
      +    grid: { arraySpan: 12 }
      +  }
      +};

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFArrayWidgetSchema, SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-array-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormArraySimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      product: {
      +        type: 'array',
      +        title: '产品清单',
      +        maxItems: 4,
      +        items: {
      +          type: 'object',
      +          properties: {
      +            name: {
      +              type: 'string',
      +              title: '名称',
      +            },
      +            price: {
      +              type: 'number',
      +              title: '单价',
      +              minimum: 1,
      +            },
      +          },
      +          required: ['name', 'price'],
      +        },
      +        ui: { grid: { arraySpan: 12 } } as SFArrayWidgetSchema,
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}
      不规则布局

      灵活使用 ui 来复杂不规则布局。

      expand codeexpand code
      import { Component } from '@angular/core';
      +
      +import { SFArrayWidgetSchema, SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-array-irregular',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `
      +})
      +export class FormArrayIrregularComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      title: { type: 'string' },
      +      market: { type: 'number' },
      +      price: { type: 'number' },
      +      skus: {
      +        type: 'array',
      +        title: 'Skus',
      +        maxItems: 4,
      +        default: [{}],
      +        items: {
      +          type: 'object',
      +          properties: {
      +            name: {
      +              type: 'string',
      +              title: '名称'
      +            },
      +            price: {
      +              type: 'number',
      +              title: '单价',
      +              minimum: 1
      +            },
      +            stock: {
      +              type: 'number',
      +              minimum: 1
      +            },
      +            desc: {
      +              type: 'string',
      +              ui: {
      +                grid: { span: 24 } // 单独设置desc元素在当前数组表单所占格数,24表示整行
      +              }
      +            }
      +          },
      +          required: ['name', 'price', 'stock'],
      +          ui: {
      +            grid: { span: 12 } // 针对数组内部表单统一设置,12表示一行两个
      +          }
      +        },
      +        ui: {
      +          grid: {
      +            span: 24, // 单独设置Sku元素在整个表单所占格数,24表示整行
      +            arraySpan: 12 // 设置数组每个索引所占格数,12表示一行两个
      +          }
      +        } as SFArrayWidgetSchema
      +      },
      +      desc: {
      +        type: 'string',
      +        ui: { grid: { span: 24 } }
      +      }
      +    },
      +    required: ['title', 'market', 'price'],
      +    ui: {
      +      spanLabelFixed: 100,
      +      grid: { span: 8 }
      +    }
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      参数说明类型默认值
      [items]数组元素类型描述SFSchema-
      [minItems]约束数组最小的元素个数number-
      [maxItems]约束数组最大的元素个数number-
      [uniqueItems]约束数组每个元素都不相同boolean-

      ui 属性

      参数说明类型默认值
      [addTitle]添加按钮文本string添加
      [addType]添加按钮类型,等同 nzTypestringdashed
      [removable]是否包含移除按钮booleantrue
      [removeTitle]移除按钮文本string移除
      [required]当前项是否为必填,仅影响样式boolean-
      [$items]数组元素类型UI描述SFUISchema-
      (add)添加回调,property 表示添加后的表单属性(property: FormProperty) => void-
      (remove)移除回调(index: number) => void-
      \ No newline at end of file diff --git a/form/autocomplete/en/index.html b/form/autocomplete/en/index.html new file mode 100644 index 000000000..aa703c6d3 --- /dev/null +++ b/form/autocomplete/en/index.html @@ -0,0 +1,53 @@ +autocomplete - NG-ALAIN

      自动完成

      输入框自动完成功能。

      数据源说明

      静态

      指获取后每一次筛选是通过 filterOption 过滤,数据来源于 asyncDataenum

      schema.format: 'email' 时自动渲染为自动补全邮箱后缀,默认 ['qq.com', '163.com', 'gmail.com', '126.com', 'aliyun.com'] 可通过 enum 来重新调整该值或全局配置 uiEmailSuffixes

      实时

      指获取后每一次筛选是通过 filterOption 过滤,数据来源于 asyncData

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFAutoCompleteWidgetSchema, SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +import { of } from 'rxjs';
      +
      +@Component({
      +  selector: 'form-autocomplete-simple',
      +  template: `<sf [schema]="schema" (formSubmit)="submit($event)"></sf>`,
      +})
      +export class FormAutocompleteSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      format: {
      +        type: 'string',
      +        title: 'Format',
      +        format: 'email',
      +      },
      +      widget: {
      +        type: 'string',
      +        title: '指定widget',
      +        ui: {
      +          widget: 'autocomplete',
      +          type: 'email',
      +        } as SFAutoCompleteWidgetSchema,
      +      },
      +      async: {
      +        type: 'string',
      +        title: '异步',
      +        ui: {
      +          widget: 'autocomplete',
      +          debounceTime: 100,
      +          asyncData: input =>
      +            of(
      +              input
      +                ? [
      +                    { label: input, value: 1, otherData: 1 },
      +                    { label: input + input, value: 2 },
      +                  ]
      +                : [],
      +            ),
      +          change: (comp, data) => console.log(comp, data),
      +        } as SFAutoCompleteWidgetSchema,
      +        default: 'asdf',
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [enum]静态数据源SFSchemaEnumType[]-
      [readOnly]禁用状态boolean-

      ui 属性

      成员说明类型默认值
      [asyncData]实时数据源(input: string) => Observable<SFSchemaEnumType[]>-
      [size]大小,等同 nzSizestring-
      [placeholder]在文字框中显示提示讯息string-
      [filterOption]是否根据输入项进行筛选,默认只对 label 属性执行不区分大小定 indexOf 过滤。当其为一个函数时,会接收 inputValue option 两个参数,当 option 符合筛选条件时,应返回 true,反之则返回 falseboolean or (inputValue: string, option: SFSchemaEnum) => booleantrue
      [type]模式,自动完成常见邮箱后缀,可以重新使用 enum 来指定新后缀email-
      [debounceTime]去抖时间,当实时数据源时默认最少 50,单位:毫秒number0
      [defaultActiveFirstOption]是否默认高亮第一个选项booleantrue
      [backfill]使用键盘选择选项的时候把选中项回填到输入框中booleanfalse
      [nzWidth]自定义宽度单位 pxnumber触发元素宽度
      [change]变更回调(item: NzAutocompleteOptionComponent, orgData: SFSchemaEnum) => void-
      [overlayClassName]下拉根元素的类名称string-
      [overlayStyle]下拉根元素的样式object-
      [compareWith]SelectControlValueAccessor 相同(o1: any, o2: any) => boolean(o1: any, o2: any) => o1===o2
      \ No newline at end of file diff --git a/form/autocomplete/zh/index.html b/form/autocomplete/zh/index.html new file mode 100644 index 000000000..9dd82585f --- /dev/null +++ b/form/autocomplete/zh/index.html @@ -0,0 +1,53 @@ +autocomplete - NG-ALAIN

      自动完成

      输入框自动完成功能。

      数据源说明

      静态

      指获取后每一次筛选是通过 filterOption 过滤,数据来源于 asyncDataenum

      schema.format: 'email' 时自动渲染为自动补全邮箱后缀,默认 ['qq.com', '163.com', 'gmail.com', '126.com', 'aliyun.com'] 可通过 enum 来重新调整该值或全局配置 uiEmailSuffixes

      实时

      指获取后每一次筛选是通过 filterOption 过滤,数据来源于 asyncData

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFAutoCompleteWidgetSchema, SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +import { of } from 'rxjs';
      +
      +@Component({
      +  selector: 'form-autocomplete-simple',
      +  template: `<sf [schema]="schema" (formSubmit)="submit($event)"></sf>`,
      +})
      +export class FormAutocompleteSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      format: {
      +        type: 'string',
      +        title: 'Format',
      +        format: 'email',
      +      },
      +      widget: {
      +        type: 'string',
      +        title: '指定widget',
      +        ui: {
      +          widget: 'autocomplete',
      +          type: 'email',
      +        } as SFAutoCompleteWidgetSchema,
      +      },
      +      async: {
      +        type: 'string',
      +        title: '异步',
      +        ui: {
      +          widget: 'autocomplete',
      +          debounceTime: 100,
      +          asyncData: input =>
      +            of(
      +              input
      +                ? [
      +                    { label: input, value: 1, otherData: 1 },
      +                    { label: input + input, value: 2 },
      +                  ]
      +                : [],
      +            ),
      +          change: (comp, data) => console.log(comp, data),
      +        } as SFAutoCompleteWidgetSchema,
      +        default: 'asdf',
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [enum]静态数据源SFSchemaEnumType[]-
      [readOnly]禁用状态boolean-

      ui 属性

      成员说明类型默认值
      [asyncData]实时数据源(input: string) => Observable<SFSchemaEnumType[]>-
      [size]大小,等同 nzSizestring-
      [placeholder]在文字框中显示提示讯息string-
      [filterOption]是否根据输入项进行筛选,默认只对 label 属性执行不区分大小定 indexOf 过滤。当其为一个函数时,会接收 inputValue option 两个参数,当 option 符合筛选条件时,应返回 true,反之则返回 falseboolean or (inputValue: string, option: SFSchemaEnum) => booleantrue
      [type]模式,自动完成常见邮箱后缀,可以重新使用 enum 来指定新后缀email-
      [debounceTime]去抖时间,当实时数据源时默认最少 50,单位:毫秒number0
      [defaultActiveFirstOption]是否默认高亮第一个选项booleantrue
      [backfill]使用键盘选择选项的时候把选中项回填到输入框中booleanfalse
      [nzWidth]自定义宽度单位 pxnumber触发元素宽度
      [change]变更回调(item: NzAutocompleteOptionComponent, orgData: SFSchemaEnum) => void-
      [overlayClassName]下拉根元素的类名称string-
      [overlayStyle]下拉根元素的样式object-
      [compareWith]SelectControlValueAccessor 相同(o1: any, o2: any) => boolean(o1: any, o2: any) => o1===o2
      \ No newline at end of file diff --git a/form/boolean/en/index.html b/form/boolean/en/index.html new file mode 100644 index 000000000..a4c759cf9 --- /dev/null +++ b/form/boolean/en/index.html @@ -0,0 +1,33 @@ +boolean - NG-ALAIN

      开关

      开关选择器

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-boolean-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormBooleanSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      status: {
      +        type: 'boolean',
      +        title: '是否启用',
      +      },
      +      // 指定内容文本
      +      enabled: {
      +        type: 'boolean',
      +        title: '是否启用',
      +        ui: {
      +          checkedChildren: '开',
      +          unCheckedChildren: '关',
      +        },
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      参数说明类型默认值
      [readOnly]禁用状态boolean-

      ui 属性

      参数说明类型默认值
      [size]大小,等同 nzSizedefault,smalldefault
      [checkedChildren]选中时的内容string-
      [unCheckedChildren]非选中时的内容string-
      [loading]加载中的开关booleanfalse
      \ No newline at end of file diff --git a/form/boolean/zh/index.html b/form/boolean/zh/index.html new file mode 100644 index 000000000..2e15b28cf --- /dev/null +++ b/form/boolean/zh/index.html @@ -0,0 +1,33 @@ +boolean - NG-ALAIN

      开关

      开关选择器

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-boolean-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormBooleanSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      status: {
      +        type: 'boolean',
      +        title: '是否启用',
      +      },
      +      // 指定内容文本
      +      enabled: {
      +        type: 'boolean',
      +        title: '是否启用',
      +        ui: {
      +          checkedChildren: '开',
      +          unCheckedChildren: '关',
      +        },
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      参数说明类型默认值
      [readOnly]禁用状态boolean-

      ui 属性

      参数说明类型默认值
      [size]大小,等同 nzSizedefault,smalldefault
      [checkedChildren]选中时的内容string-
      [unCheckedChildren]非选中时的内容string-
      [loading]加载中的开关booleanfalse
      \ No newline at end of file diff --git a/form/cascader/en/index.html b/form/cascader/en/index.html new file mode 100644 index 000000000..a8144881e --- /dev/null +++ b/form/cascader/en/index.html @@ -0,0 +1,82 @@ +cascader - NG-ALAIN

      级联选择

      一般用于省市区,公司层级,事物分类等。

      注意事项

      • defaultformData 值始终应该保持一个数组,例如:城市级联可能只存储叶节点 value,此时需要手动处理并给出完整数据链 value 数组

      数据源说明

      静态

      指一次性获取数据,数据来源于 asyncDataenum

      实时

      指每一次每一次选择会触发HTTP请求,数据来源于 asyncData;包含三个参数 (node: NzCascaderOption, index: number, me: CascaderWidget) => PromiseLike<any>,其中 me 表示当前小部件实例。

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFCascaderWidgetSchema, SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-cascader-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormCascaderSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      static: {
      +        type: 'number',
      +        title: 'Static',
      +        enum: [
      +          {
      +            value: 110000,
      +            label: '北京',
      +            parent: 0,
      +            children: [
      +              {
      +                value: 110100,
      +                label: '北京市',
      +                parent: 110000,
      +                children: [
      +                  {
      +                    value: 110101,
      +                    label: '东城区',
      +                    parent: 110100,
      +                    isLeaf: true,
      +                  },
      +                  {
      +                    value: 110105,
      +                    label: '朝阳区',
      +                    parent: 110100,
      +                    isLeaf: true,
      +                  },
      +                ],
      +              },
      +            ],
      +          },
      +        ],
      +        ui: 'cascader',
      +        default: [110000, 110100, 110105],
      +      },
      +      async: {
      +        type: 'number',
      +        title: 'RealTime',
      +        ui: {
      +          widget: 'cascader',
      +          asyncData: (node, index) => {
      +            return new Promise(resolve => {
      +              setTimeout(() => {
      +                (node as any).children = [
      +                  { value: 110000, label: '北京', parent: 0 },
      +                  { value: 110100, label: '北京市', parent: 110000 },
      +                  { value: 110101, label: '东城区', parent: 110100 },
      +                  { value: 110105, label: '朝阳区', parent: 110100 },
      +                  { value: 310000, label: '上海', parent: 0 },
      +                  { value: 310100, label: '上海市', parent: 310000 },
      +                  { value: 310101, label: '黄浦区', parent: 310100 },
      +                  { value: 310104, label: '徐汇区', parent: 310100 },
      +                ].filter((w: any) => {
      +                  w.isLeaf = index === 1;
      +                  return w.parent === (node.value || 0);
      +                });
      +                resolve();
      +              }, 300);
      +            });
      +          },
      +        } as SFCascaderWidgetSchema,
      +        default: [110000, 110100, 110105],
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [enum]静态数据源SFSchemaEnumType[]-
      [readOnly]禁用状态boolean-

      ui 属性

      成员说明类型默认值
      [asyncData]异步静态数据源(node: NzCascaderOption, index: number, me: CascaderWidget) => PromiseLike<any>-
      [size]大小,等同 nzSizestring-
      [placeholder]在文字框中显示提示讯息string-
      [showSearch]是否支持搜索boolfalse
      [allowClear]是否显示清除按钮booltrue
      [clearText]清除按钮的标题string清除
      [showArrow]是否显示箭头booltrue
      [showInput]是否显示输入框booltrue
      [menuClassName]自定义浮层类名string-
      [menuStyle]自定义浮层样式string-
      [columnClassName]弹出菜单中数据列的自定义样式string-
      [notFoundContent]当下拉列表为空时显示的内容string-
      [data]初始化列数据,用于第一列的数据,子列通过选项的 children 加载,或者通过 load 事件异步加载。Array-
      [enableCache]是否缓存异步加载的数据,若每次异步加载的数据都是变化的,需将该值设置为 falsebooltrue
      [expandTrigger]次级菜单的展开方式,可选 'click' 和 'hover'stringclick
      [changeOnSelect]当此项为 true 时,点选每级菜单选项值都会发生变化,具体见上面的演示boolfalse
      [changeOn]可通过自定义的函数来判断点击菜单选项是否应该发生变化,当函数返回 true 时,将发生变化(option: NzCascaderOption, level: number) => boolean-
      [triggerAction]触发菜单出现的行为('click', 'hover')[]['click']
      [valueProperty]value 的属性名称stringvalue
      [labelProperty]label 的属性名称stringlabel
      [visibleChange]异步加载事件(value: boolean) => void-
      [change]选项值变更事件(values: any[]) => void-
      [selectionChange]选项变更事件(values: NzCascaderOption[]) => void-
      [clear]内容被清空事件() => void-
      \ No newline at end of file diff --git a/form/cascader/zh/index.html b/form/cascader/zh/index.html new file mode 100644 index 000000000..7a97bd9f7 --- /dev/null +++ b/form/cascader/zh/index.html @@ -0,0 +1,82 @@ +cascader - NG-ALAIN

      级联选择

      一般用于省市区,公司层级,事物分类等。

      注意事项

      • defaultformData 值始终应该保持一个数组,例如:城市级联可能只存储叶节点 value,此时需要手动处理并给出完整数据链 value 数组

      数据源说明

      静态

      指一次性获取数据,数据来源于 asyncDataenum

      实时

      指每一次每一次选择会触发HTTP请求,数据来源于 asyncData;包含三个参数 (node: NzCascaderOption, index: number, me: CascaderWidget) => PromiseLike<any>,其中 me 表示当前小部件实例。

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFCascaderWidgetSchema, SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-cascader-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormCascaderSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      static: {
      +        type: 'number',
      +        title: 'Static',
      +        enum: [
      +          {
      +            value: 110000,
      +            label: '北京',
      +            parent: 0,
      +            children: [
      +              {
      +                value: 110100,
      +                label: '北京市',
      +                parent: 110000,
      +                children: [
      +                  {
      +                    value: 110101,
      +                    label: '东城区',
      +                    parent: 110100,
      +                    isLeaf: true,
      +                  },
      +                  {
      +                    value: 110105,
      +                    label: '朝阳区',
      +                    parent: 110100,
      +                    isLeaf: true,
      +                  },
      +                ],
      +              },
      +            ],
      +          },
      +        ],
      +        ui: 'cascader',
      +        default: [110000, 110100, 110105],
      +      },
      +      async: {
      +        type: 'number',
      +        title: 'RealTime',
      +        ui: {
      +          widget: 'cascader',
      +          asyncData: (node, index) => {
      +            return new Promise(resolve => {
      +              setTimeout(() => {
      +                (node as any).children = [
      +                  { value: 110000, label: '北京', parent: 0 },
      +                  { value: 110100, label: '北京市', parent: 110000 },
      +                  { value: 110101, label: '东城区', parent: 110100 },
      +                  { value: 110105, label: '朝阳区', parent: 110100 },
      +                  { value: 310000, label: '上海', parent: 0 },
      +                  { value: 310100, label: '上海市', parent: 310000 },
      +                  { value: 310101, label: '黄浦区', parent: 310100 },
      +                  { value: 310104, label: '徐汇区', parent: 310100 },
      +                ].filter((w: any) => {
      +                  w.isLeaf = index === 1;
      +                  return w.parent === (node.value || 0);
      +                });
      +                resolve();
      +              }, 300);
      +            });
      +          },
      +        } as SFCascaderWidgetSchema,
      +        default: [110000, 110100, 110105],
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [enum]静态数据源SFSchemaEnumType[]-
      [readOnly]禁用状态boolean-

      ui 属性

      成员说明类型默认值
      [asyncData]异步静态数据源(node: NzCascaderOption, index: number, me: CascaderWidget) => PromiseLike<any>-
      [size]大小,等同 nzSizestring-
      [placeholder]在文字框中显示提示讯息string-
      [showSearch]是否支持搜索boolfalse
      [allowClear]是否显示清除按钮booltrue
      [clearText]清除按钮的标题string清除
      [showArrow]是否显示箭头booltrue
      [showInput]是否显示输入框booltrue
      [menuClassName]自定义浮层类名string-
      [menuStyle]自定义浮层样式string-
      [columnClassName]弹出菜单中数据列的自定义样式string-
      [notFoundContent]当下拉列表为空时显示的内容string-
      [data]初始化列数据,用于第一列的数据,子列通过选项的 children 加载,或者通过 load 事件异步加载。Array-
      [enableCache]是否缓存异步加载的数据,若每次异步加载的数据都是变化的,需将该值设置为 falsebooltrue
      [expandTrigger]次级菜单的展开方式,可选 'click' 和 'hover'stringclick
      [changeOnSelect]当此项为 true 时,点选每级菜单选项值都会发生变化,具体见上面的演示boolfalse
      [changeOn]可通过自定义的函数来判断点击菜单选项是否应该发生变化,当函数返回 true 时,将发生变化(option: NzCascaderOption, level: number) => boolean-
      [triggerAction]触发菜单出现的行为('click', 'hover')[]['click']
      [valueProperty]value 的属性名称stringvalue
      [labelProperty]label 的属性名称stringlabel
      [visibleChange]异步加载事件(value: boolean) => void-
      [change]选项值变更事件(values: any[]) => void-
      [selectionChange]选项变更事件(values: NzCascaderOption[]) => void-
      [clear]内容被清空事件() => void-
      \ No newline at end of file diff --git a/form/checkbox/en/index.html b/form/checkbox/en/index.html new file mode 100644 index 000000000..7024fcd22 --- /dev/null +++ b/form/checkbox/en/index.html @@ -0,0 +1,58 @@ +checkbox - NG-ALAIN

      多选框

      一组可选项中进行多项选择时

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFCascaderWidgetSchema, SFCheckboxWidgetSchema, SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +import { of, delay } from 'rxjs';
      +
      +@Component({
      +  selector: 'form-checkbox-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormCheckboxSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      // 单个多选框
      +      single: {
      +        type: 'boolean',
      +        title: '同意本协议',
      +        description: '《用户协议》',
      +        ui: {
      +          widget: 'checkbox',
      +        } as SFCascaderWidgetSchema,
      +        default: true,
      +      },
      +      // 多选框组
      +      mulit: {
      +        type: 'string',
      +        title: 'Mulit',
      +        enum: ['Apple', 'Pear', 'Orange'],
      +        ui: {
      +          widget: 'checkbox',
      +          span: 8, // 指定每一项 8 个单元的布局
      +          checkAll: true,
      +        } as SFCheckboxWidgetSchema,
      +        default: ['Apple'],
      +      },
      +      // 异步数据
      +      async: {
      +        type: 'string',
      +        title: 'Async',
      +        ui: {
      +          widget: 'checkbox',
      +          asyncData: () =>
      +            of([
      +              { label: 'Apple', value: 'Apple' },
      +              { label: 'Pear', value: 'Pear' },
      +              { label: 'Orange', value: 'Orange' },
      +            ]).pipe(delay(200)),
      +        } as SFCheckboxWidgetSchema,
      +        default: ['Apple'],
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [enum]数据源,当数据源存在于表示一组多选框SFSchemaEnumType[]-
      [readOnly]禁用状态boolean-
      [title]enum 时表示多选框文本内容string-
      [description]enum 时表示多选框后帮助信息string-

      ui 属性

      成员说明类型默认值
      [asyncData]异步数据源() => Observable<SFSchemaEnumType[]>-
      [span]指定每个选框单元格数量,参考布局number-
      [styleType]radio的样式default, buttondefault
      [checkAll]是否需要全选boolean-
      [checkAllText]全选按钮文本string全选
      [change]值变更事件,参数:单个多选框为 boolean,否则为 SFSchemaEnum[](res: boolean | SFSchemaEnum[]) => void-
      \ No newline at end of file diff --git a/form/checkbox/zh/index.html b/form/checkbox/zh/index.html new file mode 100644 index 000000000..1324b0a1d --- /dev/null +++ b/form/checkbox/zh/index.html @@ -0,0 +1,58 @@ +checkbox - NG-ALAIN

      多选框

      一组可选项中进行多项选择时

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFCascaderWidgetSchema, SFCheckboxWidgetSchema, SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +import { of, delay } from 'rxjs';
      +
      +@Component({
      +  selector: 'form-checkbox-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormCheckboxSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      // 单个多选框
      +      single: {
      +        type: 'boolean',
      +        title: '同意本协议',
      +        description: '《用户协议》',
      +        ui: {
      +          widget: 'checkbox',
      +        } as SFCascaderWidgetSchema,
      +        default: true,
      +      },
      +      // 多选框组
      +      mulit: {
      +        type: 'string',
      +        title: 'Mulit',
      +        enum: ['Apple', 'Pear', 'Orange'],
      +        ui: {
      +          widget: 'checkbox',
      +          span: 8, // 指定每一项 8 个单元的布局
      +          checkAll: true,
      +        } as SFCheckboxWidgetSchema,
      +        default: ['Apple'],
      +      },
      +      // 异步数据
      +      async: {
      +        type: 'string',
      +        title: 'Async',
      +        ui: {
      +          widget: 'checkbox',
      +          asyncData: () =>
      +            of([
      +              { label: 'Apple', value: 'Apple' },
      +              { label: 'Pear', value: 'Pear' },
      +              { label: 'Orange', value: 'Orange' },
      +            ]).pipe(delay(200)),
      +        } as SFCheckboxWidgetSchema,
      +        default: ['Apple'],
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [enum]数据源,当数据源存在于表示一组多选框SFSchemaEnumType[]-
      [readOnly]禁用状态boolean-
      [title]enum 时表示多选框文本内容string-
      [description]enum 时表示多选框后帮助信息string-

      ui 属性

      成员说明类型默认值
      [asyncData]异步数据源() => Observable<SFSchemaEnumType[]>-
      [span]指定每个选框单元格数量,参考布局number-
      [styleType]radio的样式default, buttondefault
      [checkAll]是否需要全选boolean-
      [checkAllText]全选按钮文本string全选
      [change]值变更事件,参数:单个多选框为 boolean,否则为 SFSchemaEnum[](res: boolean | SFSchemaEnum[]) => void-
      \ No newline at end of file diff --git a/form/conditional/en/index.html b/form/conditional/en/index.html new file mode 100644 index 000000000..9d5c291d5 --- /dev/null +++ b/form/conditional/en/index.html @@ -0,0 +1,216 @@ +visibleIf - NG-ALAIN

      条件表达式

      sf 支持两种类型的条件表达式,分别为:

      • JSON Schema 标准 if-then-else

      • 灵活性更强的 visibleIf

        <

      代码演示

      If样例

      支持 JSON Schema 的 if-then-else 用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +
      +import { SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-conditional-if',
      +  template: `
      +    <sf [schema]="schema" (formSubmit)="submit($event)"></sf>
      +  `
      +})
      +export class FormConditionalIfComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      login_type: {
      +        type: 'string',
      +        title: '登录方式',
      +        enum: [
      +          { label: '手机', value: 'mobile' },
      +          { label: '账密', value: 'account' }
      +        ],
      +        default: 'mobile',
      +        ui: {
      +          widget: 'radio',
      +          styleType: 'button'
      +        }
      +      },
      +      mobile: {
      +        type: 'string'
      +      },
      +      code: {
      +        type: 'number'
      +      },
      +      name: {
      +        type: 'string'
      +      },
      +      pwd: {
      +        type: 'string',
      +        ui: {
      +          type: 'password'
      +        }
      +      }
      +    },
      +    required: ['login_type'],
      +    if: {
      +      properties: { login_type: { enum: ['mobile'] } }
      +    },
      +    then: {
      +      required: ['mobile', 'code']
      +    },
      +    else: {
      +      required: ['name', 'pwd']
      +    }
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}
      visibleIf

      利用 visibleIf 实现更加灵活的条件表达式,可以同时支持显示与可选项;利用 updateFeedback 可以更新反馈状态。

      expand codeexpand code
      import { Component, OnDestroy, OnInit, ViewChild } from '@angular/core';
      +import { Observable, of, Subject, catchError, delay, switchMap } from 'rxjs';
      +
      +import { SFComponent, SFSchema, SFSelectWidgetSchema, SFStringWidgetSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-conditional-visibleIf',
      +  template: `
      +    <button type="button" nz-button (click)="toggleMobile(false)">Hide mobile</button>
      +    <button type="button" nz-button (click)="toggleMobile(true)">Show mobile</button>
      +    <sf #sf [schema]="schema" (formSubmit)="submit($event)"></sf>
      +  `
      +})
      +export class FormConditionalVisibleIfComponent implements OnInit, OnDestroy {
      +  @ViewChild('sf', { static: true }) sf!: SFComponent;
      +  private searchDepartment$ = new Subject<string>();
      +
      +  schema: SFSchema = {
      +    properties: {
      +      login_type: {
      +        type: 'string',
      +        title: '登录方式',
      +        enum: [
      +          { label: '手机', value: 'mobile' },
      +          { label: '账密', value: 'account' }
      +        ],
      +        default: 'mobile',
      +        ui: {
      +          widget: 'radio',
      +          styleType: 'button'
      +        }
      +      },
      +      mobile: {
      +        type: 'string',
      +        description: 'Try typing: ng-alain',
      +        ui: {
      +          changeDebounceTime: 100,
      +          change: q => {
      +            this.sf.getProperty('/department')?.updateFeedback('validating');
      +            this.searchDepartment$.next(q);
      +          },
      +          visibleIf: {
      +            login_type: val => (val === 'mobile' ? { required: true, show: true } : null)
      +          }
      +        } as SFStringWidgetSchema
      +      },
      +      code: {
      +        type: 'number',
      +        ui: {
      +          visibleIf: {
      +            login_type: ['mobile']
      +          }
      +        }
      +      },
      +      type: {
      +        type: 'string',
      +        title: '类型',
      +        enum: ['内网', '外网'],
      +        default: '内网',
      +        ui: {
      +          widget: 'select',
      +          visibleIf: {
      +            login_type: val => val === 'mobile'
      +          }
      +        }
      +      },
      +      department: {
      +        type: 'string',
      +        title: 'Department',
      +        default: '部门1',
      +        ui: {
      +          widget: 'select',
      +          visibleIf: {
      +            type: ['内网']
      +          }
      +        } as SFSelectWidgetSchema
      +      },
      +      remark: {
      +        type: 'string',
      +        title: 'Remark',
      +        ui: {
      +          visibleIf: {
      +            type: val => (val === '内网' ? { required: true, show: true } : null)
      +          }
      +        }
      +      },
      +      adr: {
      +        type: 'string',
      +        title: 'Address',
      +        ui: {
      +          visibleIf: {
      +            type: val => (val === '外网' ? { required: true, show: true } : null)
      +          }
      +        }
      +      },
      +      name: {
      +        type: 'string',
      +        ui: {
      +          visibleIf: {
      +            login_type: ['account']
      +          }
      +        }
      +      },
      +      pwd: {
      +        type: 'string',
      +        ui: {
      +          type: 'password',
      +          visibleIf: {
      +            login_type: ['account']
      +          }
      +        }
      +      }
      +    },
      +    required: ['login_type'],
      +    ui: { debug: true }
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  ngOnInit(): void {
      +    const mockHttp = (q: string): Observable<string[]> =>
      +      of(
      +        q === 'ng-alain'
      +          ? new Array(5).fill(0).map((_, idx) => `NG-ALAIN部门${idx + 1}`)
      +          : new Array(3).fill(0).map((_, idx) => `部门${idx + 1}`)
      +      ).pipe(
      +        delay(500),
      +        catchError(() => [])
      +      );
      +
      +    this.searchDepartment$
      +      .asObservable()
      +      .pipe(switchMap(mockHttp))
      +      .subscribe(list => {
      +        const departmentProperty = this.sf.getProperty('/department')!;
      +        departmentProperty.schema.enum = list;
      +        departmentProperty.schema.default = list[0];
      +        departmentProperty.widget.reset(list[0]);
      +        this.sf.getProperty('/department')?.updateFeedback();
      +      });
      +  }
      +
      +  toggleMobile(status: boolean): void {
      +    const mobileProperty = this.sf.getProperty('/mobile');
      +    mobileProperty?.setVisible(status)?.widget?.detectChanges();
      +  }
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +
      +  ngOnDestroy(): void {
      +    this.searchDepartment$.complete();
      +  }
      +}
      \ No newline at end of file diff --git a/form/conditional/zh/index.html b/form/conditional/zh/index.html new file mode 100644 index 000000000..f80aeaf0f --- /dev/null +++ b/form/conditional/zh/index.html @@ -0,0 +1,216 @@ +visibleIf - NG-ALAIN

      条件表达式

      sf 支持两种类型的条件表达式,分别为:

      • JSON Schema 标准 if-then-else

      • 灵活性更强的 visibleIf

        <

      代码演示

      If样例

      支持 JSON Schema 的 if-then-else 用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +
      +import { SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-conditional-if',
      +  template: `
      +    <sf [schema]="schema" (formSubmit)="submit($event)"></sf>
      +  `
      +})
      +export class FormConditionalIfComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      login_type: {
      +        type: 'string',
      +        title: '登录方式',
      +        enum: [
      +          { label: '手机', value: 'mobile' },
      +          { label: '账密', value: 'account' }
      +        ],
      +        default: 'mobile',
      +        ui: {
      +          widget: 'radio',
      +          styleType: 'button'
      +        }
      +      },
      +      mobile: {
      +        type: 'string'
      +      },
      +      code: {
      +        type: 'number'
      +      },
      +      name: {
      +        type: 'string'
      +      },
      +      pwd: {
      +        type: 'string',
      +        ui: {
      +          type: 'password'
      +        }
      +      }
      +    },
      +    required: ['login_type'],
      +    if: {
      +      properties: { login_type: { enum: ['mobile'] } }
      +    },
      +    then: {
      +      required: ['mobile', 'code']
      +    },
      +    else: {
      +      required: ['name', 'pwd']
      +    }
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}
      visibleIf

      利用 visibleIf 实现更加灵活的条件表达式,可以同时支持显示与可选项;利用 updateFeedback 可以更新反馈状态。

      expand codeexpand code
      import { Component, OnDestroy, OnInit, ViewChild } from '@angular/core';
      +import { Observable, of, Subject, catchError, delay, switchMap } from 'rxjs';
      +
      +import { SFComponent, SFSchema, SFSelectWidgetSchema, SFStringWidgetSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-conditional-visibleIf',
      +  template: `
      +    <button type="button" nz-button (click)="toggleMobile(false)">Hide mobile</button>
      +    <button type="button" nz-button (click)="toggleMobile(true)">Show mobile</button>
      +    <sf #sf [schema]="schema" (formSubmit)="submit($event)"></sf>
      +  `
      +})
      +export class FormConditionalVisibleIfComponent implements OnInit, OnDestroy {
      +  @ViewChild('sf', { static: true }) sf!: SFComponent;
      +  private searchDepartment$ = new Subject<string>();
      +
      +  schema: SFSchema = {
      +    properties: {
      +      login_type: {
      +        type: 'string',
      +        title: '登录方式',
      +        enum: [
      +          { label: '手机', value: 'mobile' },
      +          { label: '账密', value: 'account' }
      +        ],
      +        default: 'mobile',
      +        ui: {
      +          widget: 'radio',
      +          styleType: 'button'
      +        }
      +      },
      +      mobile: {
      +        type: 'string',
      +        description: 'Try typing: ng-alain',
      +        ui: {
      +          changeDebounceTime: 100,
      +          change: q => {
      +            this.sf.getProperty('/department')?.updateFeedback('validating');
      +            this.searchDepartment$.next(q);
      +          },
      +          visibleIf: {
      +            login_type: val => (val === 'mobile' ? { required: true, show: true } : null)
      +          }
      +        } as SFStringWidgetSchema
      +      },
      +      code: {
      +        type: 'number',
      +        ui: {
      +          visibleIf: {
      +            login_type: ['mobile']
      +          }
      +        }
      +      },
      +      type: {
      +        type: 'string',
      +        title: '类型',
      +        enum: ['内网', '外网'],
      +        default: '内网',
      +        ui: {
      +          widget: 'select',
      +          visibleIf: {
      +            login_type: val => val === 'mobile'
      +          }
      +        }
      +      },
      +      department: {
      +        type: 'string',
      +        title: 'Department',
      +        default: '部门1',
      +        ui: {
      +          widget: 'select',
      +          visibleIf: {
      +            type: ['内网']
      +          }
      +        } as SFSelectWidgetSchema
      +      },
      +      remark: {
      +        type: 'string',
      +        title: 'Remark',
      +        ui: {
      +          visibleIf: {
      +            type: val => (val === '内网' ? { required: true, show: true } : null)
      +          }
      +        }
      +      },
      +      adr: {
      +        type: 'string',
      +        title: 'Address',
      +        ui: {
      +          visibleIf: {
      +            type: val => (val === '外网' ? { required: true, show: true } : null)
      +          }
      +        }
      +      },
      +      name: {
      +        type: 'string',
      +        ui: {
      +          visibleIf: {
      +            login_type: ['account']
      +          }
      +        }
      +      },
      +      pwd: {
      +        type: 'string',
      +        ui: {
      +          type: 'password',
      +          visibleIf: {
      +            login_type: ['account']
      +          }
      +        }
      +      }
      +    },
      +    required: ['login_type'],
      +    ui: { debug: true }
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  ngOnInit(): void {
      +    const mockHttp = (q: string): Observable<string[]> =>
      +      of(
      +        q === 'ng-alain'
      +          ? new Array(5).fill(0).map((_, idx) => `NG-ALAIN部门${idx + 1}`)
      +          : new Array(3).fill(0).map((_, idx) => `部门${idx + 1}`)
      +      ).pipe(
      +        delay(500),
      +        catchError(() => [])
      +      );
      +
      +    this.searchDepartment$
      +      .asObservable()
      +      .pipe(switchMap(mockHttp))
      +      .subscribe(list => {
      +        const departmentProperty = this.sf.getProperty('/department')!;
      +        departmentProperty.schema.enum = list;
      +        departmentProperty.schema.default = list[0];
      +        departmentProperty.widget.reset(list[0]);
      +        this.sf.getProperty('/department')?.updateFeedback();
      +      });
      +  }
      +
      +  toggleMobile(status: boolean): void {
      +    const mobileProperty = this.sf.getProperty('/mobile');
      +    mobileProperty?.setVisible(status)?.widget?.detectChanges();
      +  }
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +
      +  ngOnDestroy(): void {
      +    this.searchDepartment$.complete();
      +  }
      +}
      \ No newline at end of file diff --git a/form/custom/en/index.html b/form/custom/en/index.html new file mode 100644 index 000000000..de059b86b --- /dev/null +++ b/form/custom/en/index.html @@ -0,0 +1,72 @@ +custom - NG-ALAIN

      自定义

      定制当前动态表单小部件。更复杂请参考定制小部件

      如何使用

      务必指定 sf-template 是有效路径值,例如:

      <sf>
      +  <ng-template sf-template="formFieldName" let-i let-ui="ui" let-schema="schema">
      +  </ng-template>
      +</sf>

      代码演示

      基础样例

      使用 sf-template 指令在当前表单自定义复杂部件。

      expand codeexpand code
      import { Component, ViewChild } from '@angular/core';
      +
      +import { SFComponent, SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-custom-simple',
      +  template: `
      +    <sf #sf [schema]="schema" (formSubmit)="submit($event)">
      +      <ng-template sf-template="formName" let-i let-ui="ui" let-schema="schema">
      +        <div nz-row>
      +          <div nz-col>
      +            <input
      +              nz-input
      +              [attr.id]="i.id"
      +              [disabled]="i.disabled"
      +              [attr.disabled]="i.disabled"
      +              [nzSize]="i.size"
      +              [ngModel]="i.value"
      +              (ngModelChange)="i.setValue($event)"
      +            />
      +          </div>
      +          <div nz-col>
      +            <button nz-button type="button" nzType="link" (click)="updateQr()">{{ ui.btnText }}</button>
      +          </div>
      +        </div>
      +      </ng-template>
      +      <ng-template sf-template="qr" let-i let-ui="ui" let-schema="schema">
      +        <qr [value]="i.value"></qr>
      +      </ng-template>
      +    </sf>
      +  `
      +})
      +export class FormCustomSimpleComponent {
      +  @ViewChild('sf') readonly sf!: SFComponent;
      +  schema: SFSchema = {
      +    properties: {
      +      formName: {
      +        type: 'string',
      +        title: 'Custom Title',
      +        ui: {
      +          widget: 'custom',
      +          btnText: 'Update Qr'
      +        },
      +        default: 'test'
      +      },
      +      qr: {
      +        type: 'string',
      +        ui: {
      +          widget: 'custom'
      +        },
      +        default: 'https://ng-alain.com'
      +      }
      +    }
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  updateQr(): void {
      +    const formNameValue = this.sf.getProperty('/formName')?.value;
      +    const qr = this.sf.getProperty('/qr');
      +    qr?.setValue(formNameValue, true);
      +    this.msg.info(`Suc`);
      +  }
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      参数说明类型
      [$implicit]当前上下文ControlWidget
      [schema]当前节点 SchemaSFSchema
      [ui]当前节点 UISFUISchemaItem

      上下文包括 formProperty 属性,它是传递数据的唯一中间层,因此维护 formProperty.value 是唯一与自定义组件通信的媒介。

      上下文还包含了一些快捷属性和方法,有关更多细节请阅读 Widget 的定义。

      \ No newline at end of file diff --git a/form/custom/zh/index.html b/form/custom/zh/index.html new file mode 100644 index 000000000..ab96206f1 --- /dev/null +++ b/form/custom/zh/index.html @@ -0,0 +1,72 @@ +custom - NG-ALAIN

      自定义

      定制当前动态表单小部件。更复杂请参考定制小部件

      如何使用

      务必指定 sf-template 是有效路径值,例如:

      <sf>
      +  <ng-template sf-template="formFieldName" let-i let-ui="ui" let-schema="schema">
      +  </ng-template>
      +</sf>

      代码演示

      基础样例

      使用 sf-template 指令在当前表单自定义复杂部件。

      expand codeexpand code
      import { Component, ViewChild } from '@angular/core';
      +
      +import { SFComponent, SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-custom-simple',
      +  template: `
      +    <sf #sf [schema]="schema" (formSubmit)="submit($event)">
      +      <ng-template sf-template="formName" let-i let-ui="ui" let-schema="schema">
      +        <div nz-row>
      +          <div nz-col>
      +            <input
      +              nz-input
      +              [attr.id]="i.id"
      +              [disabled]="i.disabled"
      +              [attr.disabled]="i.disabled"
      +              [nzSize]="i.size"
      +              [ngModel]="i.value"
      +              (ngModelChange)="i.setValue($event)"
      +            />
      +          </div>
      +          <div nz-col>
      +            <button nz-button type="button" nzType="link" (click)="updateQr()">{{ ui.btnText }}</button>
      +          </div>
      +        </div>
      +      </ng-template>
      +      <ng-template sf-template="qr" let-i let-ui="ui" let-schema="schema">
      +        <qr [value]="i.value"></qr>
      +      </ng-template>
      +    </sf>
      +  `
      +})
      +export class FormCustomSimpleComponent {
      +  @ViewChild('sf') readonly sf!: SFComponent;
      +  schema: SFSchema = {
      +    properties: {
      +      formName: {
      +        type: 'string',
      +        title: 'Custom Title',
      +        ui: {
      +          widget: 'custom',
      +          btnText: 'Update Qr'
      +        },
      +        default: 'test'
      +      },
      +      qr: {
      +        type: 'string',
      +        ui: {
      +          widget: 'custom'
      +        },
      +        default: 'https://ng-alain.com'
      +      }
      +    }
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  updateQr(): void {
      +    const formNameValue = this.sf.getProperty('/formName')?.value;
      +    const qr = this.sf.getProperty('/qr');
      +    qr?.setValue(formNameValue, true);
      +    this.msg.info(`Suc`);
      +  }
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      参数说明类型
      [$implicit]当前上下文ControlWidget
      [schema]当前节点 SchemaSFSchema
      [ui]当前节点 UISFUISchemaItem

      上下文包括 formProperty 属性,它是传递数据的唯一中间层,因此维护 formProperty.value 是唯一与自定义组件通信的媒介。

      上下文还包含了一些快捷属性和方法,有关更多细节请阅读 Widget 的定义。

      \ No newline at end of file diff --git a/form/customize/en/index.html b/form/customize/en/index.html new file mode 100644 index 000000000..ccef1270f --- /dev/null +++ b/form/customize/en/index.html @@ -0,0 +1,56 @@ +自定义小部件 - NG-ALAIN

      自定义小部件

      写在前面

      @delon/form 尽可能满足不同需求,除现有内置的十几种基础组件小部件外,可以通过以下两种方式进一步扩展需求:

      自定义小部件

      细节请参考 自定义小部件

      制作小部件

      制作一套项目需求的小部件,可以更快速的开发工作。

      编写小部件

      常见小部件库

      默认情况下 @delon/form 实现了一些常见需求,但需要额外类库支持的,称它为第三方组件小部件,这一部分小部件存在于widgets-third目录里;你可以直接复制使用。

      这些组件包括:

      名称描述文档源代码
      markdownMarkdown 编辑器文档源代码
      tinymceTinymce 富文本框文档源代码

      自己创建小部件

      小部件就是一个组件,你只需要继承 ControlWidget 就相当于构建一个小部件,其结构如下:

      import { Component, OnInit } from '@angular/core';
      +import { ControlWidget } from '@delon/form';
      +
      +@Component({
      +  selector: 'sf-tinymce',
      +  template: `
      +  <sf-item-wrap [id]="id" [schema]="schema" [ui]="ui" [showError]="showError" [error]="error" [showTitle]="schema.title">
      +    <!-- 开始自定义控件区域 -->
      +    <tinymce
      +      [ngModel]="value"
      +      (ngModelChange)="change($event)"
      +      [config]="config"
      +      [loading]="loading">
      +    </tinymce>
      +    <!-- 结束自定义控件区域 -->
      +  </sf-item-wrap>`
      +})
      +export class TinymceWidget extends ControlWidget implements OnInit {
      +  /* 用于注册小部件 KEY 值 */
      +  static readonly KEY = 'tinymce';
      +
      +  // 组件所需要的参数,建议使用 `ngOnInit` 获取
      +  config: any;
      +  loadingTip: string;
      +
      +  ngOnInit(): void {
      +    this.loadingTip = this.ui.loadingTip || '加载中……';
      +    this.config = this.ui.config || {};
      +  }
      +
      +  // reset 可以更好的解决表单重置过程中所需要的新数据问题
      +  reset(value: string) {
      +
      +  }
      +
      +  change(value: string) {
      +    if (this.ui.change) this.ui.change(value);
      +    this.setValue(value);
      +  }
      +}

      sf-item-wrap

      在模板中唯一是利用 sf-item-wrap 包裹自定义内容,它内部封装表单基础元素。

      变更检测

      小部件在渲染过程是手动变更检测,大部分情况下 ControlWidget 已经很好的管理什么时机应该执行变更检测,在自定义小部件过程中可能会遇到异步操作导致界面并未渲染,此时可以调用 detectChanges() 方法来触发一次小部件节点的变更检测。

      注册小部件

      在根模块中定义(declarations)注册小部件组件,同时在模块中导入 WidgetRegistry 并注册自定义小部件。

      @NgModule({
      +  declarations: [ TinymceWidget ],
      +  imports: [
      +    DelonFormModule.forRoot()
      +  ]
      +})
      +export class AppModule {
      +  constructor(widgetRegistry: WidgetRegistry) {
      +    widgetRegistry.register(TinymceWidget.KEY, TinymceWidget);
      +  }
      +}

      当然为了更友好的维护,建议在Shared目录下定义一个专属 Json schema 模块,有兴趣可参考 ng-alain实现

      使用自定义小部件

      同其他小部件一样,只需要指定 widget 值,例如:

      "intro": {
      +  "type": "string",
      +  "ui": {
      +    "widget": "tinymce",
      +    "loadingTip": "loading..."
      +  }
      +}
      \ No newline at end of file diff --git a/form/customize/zh/index.html b/form/customize/zh/index.html new file mode 100644 index 000000000..91bcd5eda --- /dev/null +++ b/form/customize/zh/index.html @@ -0,0 +1,56 @@ +自定义小部件 - NG-ALAIN

      自定义小部件

      写在前面

      @delon/form 尽可能满足不同需求,除现有内置的十几种基础组件小部件外,可以通过以下两种方式进一步扩展需求:

      自定义小部件

      细节请参考 自定义小部件

      制作小部件

      制作一套项目需求的小部件,可以更快速的开发工作。

      编写小部件

      常见小部件库

      默认情况下 @delon/form 实现了一些常见需求,但需要额外类库支持的,称它为第三方组件小部件,这一部分小部件存在于widgets-third目录里;你可以直接复制使用。

      这些组件包括:

      名称描述文档源代码
      markdownMarkdown 编辑器文档源代码
      tinymceTinymce 富文本框文档源代码

      自己创建小部件

      小部件就是一个组件,你只需要继承 ControlWidget 就相当于构建一个小部件,其结构如下:

      import { Component, OnInit } from '@angular/core';
      +import { ControlWidget } from '@delon/form';
      +
      +@Component({
      +  selector: 'sf-tinymce',
      +  template: `
      +  <sf-item-wrap [id]="id" [schema]="schema" [ui]="ui" [showError]="showError" [error]="error" [showTitle]="schema.title">
      +    <!-- 开始自定义控件区域 -->
      +    <tinymce
      +      [ngModel]="value"
      +      (ngModelChange)="change($event)"
      +      [config]="config"
      +      [loading]="loading">
      +    </tinymce>
      +    <!-- 结束自定义控件区域 -->
      +  </sf-item-wrap>`
      +})
      +export class TinymceWidget extends ControlWidget implements OnInit {
      +  /* 用于注册小部件 KEY 值 */
      +  static readonly KEY = 'tinymce';
      +
      +  // 组件所需要的参数,建议使用 `ngOnInit` 获取
      +  config: any;
      +  loadingTip: string;
      +
      +  ngOnInit(): void {
      +    this.loadingTip = this.ui.loadingTip || '加载中……';
      +    this.config = this.ui.config || {};
      +  }
      +
      +  // reset 可以更好的解决表单重置过程中所需要的新数据问题
      +  reset(value: string) {
      +
      +  }
      +
      +  change(value: string) {
      +    if (this.ui.change) this.ui.change(value);
      +    this.setValue(value);
      +  }
      +}

      sf-item-wrap

      在模板中唯一是利用 sf-item-wrap 包裹自定义内容,它内部封装表单基础元素。

      变更检测

      小部件在渲染过程是手动变更检测,大部分情况下 ControlWidget 已经很好的管理什么时机应该执行变更检测,在自定义小部件过程中可能会遇到异步操作导致界面并未渲染,此时可以调用 detectChanges() 方法来触发一次小部件节点的变更检测。

      注册小部件

      在根模块中定义(declarations)注册小部件组件,同时在模块中导入 WidgetRegistry 并注册自定义小部件。

      @NgModule({
      +  declarations: [ TinymceWidget ],
      +  imports: [
      +    DelonFormModule.forRoot()
      +  ]
      +})
      +export class AppModule {
      +  constructor(widgetRegistry: WidgetRegistry) {
      +    widgetRegistry.register(TinymceWidget.KEY, TinymceWidget);
      +  }
      +}

      当然为了更友好的维护,建议在Shared目录下定义一个专属 Json schema 模块,有兴趣可参考 ng-alain实现

      使用自定义小部件

      同其他小部件一样,只需要指定 widget 值,例如:

      "intro": {
      +  "type": "string",
      +  "ui": {
      +    "widget": "tinymce",
      +    "loadingTip": "loading..."
      +  }
      +}
      \ No newline at end of file diff --git a/form/date/en/index.html b/form/date/en/index.html new file mode 100644 index 000000000..bbf4470b3 --- /dev/null +++ b/form/date/en/index.html @@ -0,0 +1,123 @@ +date - NG-ALAIN

      日期

      输入或选择日期的控件。

      注意事项

      • 格式化分为:数据格式化表示表单数据和显示格式化显示数据(等同 nzFormat 值)

      • 所有 数据格式化 单位,参考 date-fns format(国内镜像:moment format

      • 指定 schema.format 则必须遵守 RFC3339 时间格式,否则都视为格式错误,默认的数据格式化规则:

        • date-time 默认 yyyy-MM-DDTHH:mm:ssZ,注意这里采用的是 type="datetime-local" 因此会涉及到时区问题

        • datefull-date 默认 yyyy-MM-dd

        • timefull-time 默认 HH:mm:ss

        • 非标准:week 默认 yyyy-ww

        • 非标准:month 默认 yyyy-MM

      • 不指定 schema.format 根据 schema.type 值按以下规则处理(允许通过全局配置替换)数据格式化:

        • string 默认 yyyy-MM-dd HH:mm:ss

        • number 默认 T 13位Unix Timestamp

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFDateWidgetSchema, SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-date-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)" (formChange)="change($event)"></sf> `,
      +})
      +export class FormDateSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      datetime: {
      +        type: 'string',
      +        format: 'date-time',
      +      },
      +      date: {
      +        type: 'string',
      +        format: 'date',
      +      },
      +      date_number: {
      +        type: 'number',
      +        ui: { widget: 'date' } as SFDateWidgetSchema,
      +      },
      +      year: {
      +        type: 'number',
      +        ui: { widget: 'date', mode: 'year', format: 'yyyy' } as SFDateWidgetSchema,
      +      },
      +      month: {
      +        type: 'string',
      +        format: 'month',
      +      },
      +      week: {
      +        type: 'string',
      +        format: 'week',
      +      },
      +      range: {
      +        type: 'string',
      +        ui: { widget: 'date', mode: 'range' } as SFDateWidgetSchema,
      +      },
      +      start: {
      +        type: 'string',
      +        ui: { widget: 'date', end: 'end' } as SFDateWidgetSchema,
      +      },
      +      end: {
      +        type: 'string',
      +        ui: { widget: 'date', end: 'end' } as SFDateWidgetSchema,
      +      },
      +      inline: {
      +        type: 'string',
      +        ui: { widget: 'date', inline: true } as SFDateWidgetSchema,
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +
      +  change(value: {}): void {
      +    console.log('change', value);
      +  }
      +}
      范围

      一个简单的开始与结束日期,注意: end 依然需要定义对应的Schema,但会强制隐藏状态。

      expand codeexpand code
      import { Component } from '@angular/core';
      +
      +import { subWeeks } from 'date-fns';
      +
      +import { SFDateWidgetSchema, SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-date-range',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `
      +})
      +export class FormDateRangeComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      start: {
      +        type: 'string',
      +        ui: { widget: 'date', end: 'end', separator: '到' } as SFDateWidgetSchema,
      +        default: new Date()
      +      },
      +      end: {
      +        type: 'string',
      +        default: subWeeks(new Date(), 6)
      +      },
      +      startWeek: {
      +        type: 'string',
      +        ui: { widget: 'date', rangeMode: 'week', end: 'endWeek' } as SFDateWidgetSchema,
      +        default: new Date()
      +      },
      +      endWeek: {
      +        type: 'string',
      +        default: subWeeks(new Date(), 6)
      +      },
      +      startMonth: {
      +        type: 'string',
      +        ui: { widget: 'date', rangeMode: 'month', end: 'endMonth' } as SFDateWidgetSchema,
      +        default: new Date()
      +      },
      +      endMonth: {
      +        type: 'string',
      +        default: subWeeks(new Date(), 6)
      +      },
      +      startYear: {
      +        type: 'string',
      +        ui: { widget: 'date', rangeMode: 'year', end: 'endYear' } as SFDateWidgetSchema,
      +        default: new Date()
      +      },
      +      endYear: {
      +        type: 'string',
      +        default: subWeeks(new Date(), 6)
      +      }
      +    },
      +    required: ['start']
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [readOnly]禁用状态boolean-
      [format]数据格式类型string-

      ui 属性

      参数说明类型默认值
      [mode]渲染模式date,week,month,yeardate
      [rangeMode]范围选择器的选择模式date,week,month,yeardate
      [size]大小,等同 nzSizedefault,large,small-
      [placeholder]在文字框中显示提示讯息string-
      [format]数据格式化string-
      [displayFormat]显示格式化,(等同 nzFormat 值)stringyyyy-MM-dd HH:mm:ss
      [end]日期范围所对应的结束值 keystring-
      [allowClear]是否显示清除按钮booleantrue
      [className]选择器 classNamestring-
      [locale]国际化配置object-
      [popupStyle]额外的弹出日历样式object-
      [dropdownClassName]额外的弹出日历 classNamestring-
      [onOpenChange]弹出日历和关闭日历的回调(status: boolean) => void-
      [disabledDate]不可选择的日期(current: Date) => boolean-
      [disabledTime]不可选择的时间(current: Date) => { nzDisabledHours, nzDisabledMinutes, nzDisabledSeconds }-
      [renderExtraFooter]在面板中添加额外的页脚string-
      [showTime]增加时间选择功能,object 类型为 TimePickerOptionsobject,booleantrue
      [showToday]是否展示“今天”按钮booleantrue
      [inputReadOnly]为 input 标签设置只读属性(避免在移动设备上触发小键盘)booleanfalse
      [inline]内联模式booleanfalse
      [separator]分隔符string, TemplateRef'~'
      [showWeekNumber]是否在每一行显示周数(仅日期选择器支持。周选择器始终显示周数)booleanfalse
      [onOk]点击确定按钮的回调(data: Date | Date[]) => void-
      [change]时间发生变化的回调(data: Date | Date[]) => void-
      \ No newline at end of file diff --git a/form/date/zh/index.html b/form/date/zh/index.html new file mode 100644 index 000000000..42aaf20a0 --- /dev/null +++ b/form/date/zh/index.html @@ -0,0 +1,123 @@ +date - NG-ALAIN

      日期

      输入或选择日期的控件。

      注意事项

      • 格式化分为:数据格式化表示表单数据和显示格式化显示数据(等同 nzFormat 值)

      • 所有 数据格式化 单位,参考 date-fns format(国内镜像:moment format

      • 指定 schema.format 则必须遵守 RFC3339 时间格式,否则都视为格式错误,默认的数据格式化规则:

        • date-time 默认 yyyy-MM-DDTHH:mm:ssZ,注意这里采用的是 type="datetime-local" 因此会涉及到时区问题

        • datefull-date 默认 yyyy-MM-dd

        • timefull-time 默认 HH:mm:ss

        • 非标准:week 默认 yyyy-ww

        • 非标准:month 默认 yyyy-MM

      • 不指定 schema.format 根据 schema.type 值按以下规则处理(允许通过全局配置替换)数据格式化:

        • string 默认 yyyy-MM-dd HH:mm:ss

        • number 默认 T 13位Unix Timestamp

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFDateWidgetSchema, SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-date-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)" (formChange)="change($event)"></sf> `,
      +})
      +export class FormDateSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      datetime: {
      +        type: 'string',
      +        format: 'date-time',
      +      },
      +      date: {
      +        type: 'string',
      +        format: 'date',
      +      },
      +      date_number: {
      +        type: 'number',
      +        ui: { widget: 'date' } as SFDateWidgetSchema,
      +      },
      +      year: {
      +        type: 'number',
      +        ui: { widget: 'date', mode: 'year', format: 'yyyy' } as SFDateWidgetSchema,
      +      },
      +      month: {
      +        type: 'string',
      +        format: 'month',
      +      },
      +      week: {
      +        type: 'string',
      +        format: 'week',
      +      },
      +      range: {
      +        type: 'string',
      +        ui: { widget: 'date', mode: 'range' } as SFDateWidgetSchema,
      +      },
      +      start: {
      +        type: 'string',
      +        ui: { widget: 'date', end: 'end' } as SFDateWidgetSchema,
      +      },
      +      end: {
      +        type: 'string',
      +        ui: { widget: 'date', end: 'end' } as SFDateWidgetSchema,
      +      },
      +      inline: {
      +        type: 'string',
      +        ui: { widget: 'date', inline: true } as SFDateWidgetSchema,
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +
      +  change(value: {}): void {
      +    console.log('change', value);
      +  }
      +}
      范围

      一个简单的开始与结束日期,注意: end 依然需要定义对应的Schema,但会强制隐藏状态。

      expand codeexpand code
      import { Component } from '@angular/core';
      +
      +import { subWeeks } from 'date-fns';
      +
      +import { SFDateWidgetSchema, SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-date-range',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `
      +})
      +export class FormDateRangeComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      start: {
      +        type: 'string',
      +        ui: { widget: 'date', end: 'end', separator: '到' } as SFDateWidgetSchema,
      +        default: new Date()
      +      },
      +      end: {
      +        type: 'string',
      +        default: subWeeks(new Date(), 6)
      +      },
      +      startWeek: {
      +        type: 'string',
      +        ui: { widget: 'date', rangeMode: 'week', end: 'endWeek' } as SFDateWidgetSchema,
      +        default: new Date()
      +      },
      +      endWeek: {
      +        type: 'string',
      +        default: subWeeks(new Date(), 6)
      +      },
      +      startMonth: {
      +        type: 'string',
      +        ui: { widget: 'date', rangeMode: 'month', end: 'endMonth' } as SFDateWidgetSchema,
      +        default: new Date()
      +      },
      +      endMonth: {
      +        type: 'string',
      +        default: subWeeks(new Date(), 6)
      +      },
      +      startYear: {
      +        type: 'string',
      +        ui: { widget: 'date', rangeMode: 'year', end: 'endYear' } as SFDateWidgetSchema,
      +        default: new Date()
      +      },
      +      endYear: {
      +        type: 'string',
      +        default: subWeeks(new Date(), 6)
      +      }
      +    },
      +    required: ['start']
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [readOnly]禁用状态boolean-
      [format]数据格式类型string-

      ui 属性

      参数说明类型默认值
      [mode]渲染模式date,week,month,yeardate
      [rangeMode]范围选择器的选择模式date,week,month,yeardate
      [size]大小,等同 nzSizedefault,large,small-
      [placeholder]在文字框中显示提示讯息string-
      [format]数据格式化string-
      [displayFormat]显示格式化,(等同 nzFormat 值)stringyyyy-MM-dd HH:mm:ss
      [end]日期范围所对应的结束值 keystring-
      [allowClear]是否显示清除按钮booleantrue
      [className]选择器 classNamestring-
      [locale]国际化配置object-
      [popupStyle]额外的弹出日历样式object-
      [dropdownClassName]额外的弹出日历 classNamestring-
      [onOpenChange]弹出日历和关闭日历的回调(status: boolean) => void-
      [disabledDate]不可选择的日期(current: Date) => boolean-
      [disabledTime]不可选择的时间(current: Date) => { nzDisabledHours, nzDisabledMinutes, nzDisabledSeconds }-
      [renderExtraFooter]在面板中添加额外的页脚string-
      [showTime]增加时间选择功能,object 类型为 TimePickerOptionsobject,booleantrue
      [showToday]是否展示“今天”按钮booleantrue
      [inputReadOnly]为 input 标签设置只读属性(避免在移动设备上触发小键盘)booleanfalse
      [inline]内联模式booleanfalse
      [separator]分隔符string, TemplateRef'~'
      [showWeekNumber]是否在每一行显示周数(仅日期选择器支持。周选择器始终显示周数)booleanfalse
      [onOk]点击确定按钮的回调(data: Date | Date[]) => void-
      [change]时间发生变化的回调(data: Date | Date[]) => void-
      \ No newline at end of file diff --git a/form/error/en/index.html b/form/error/en/index.html new file mode 100644 index 000000000..1b11a87ab --- /dev/null +++ b/form/error/en/index.html @@ -0,0 +1,86 @@ +校验错误 - NG-ALAIN

      校验错误

      写在前面

      JSON Schema 校验过程中会生产一组错误信息,每一个错误都有一个固定的 keyword 来表示,允许通过全局配置来覆盖 errors 默认的错误信息,包括处理错误信息国际化问题。例如当某属性为必填性时产生的错误信息为:

      [{
      +  "keyword": "required",
      +  "dataPath": ".client",
      +  "schemaPath": "#/required",
      +  "params": {"missingProperty":"client"},
      +  "message":"必填项"
      +}]

      其中 message 用于页面渲染的错误文本。

      注:第一次渲染会触发校验,但不会有任何视觉展示,若需要一开始就体现错误视觉效果可以指定 <sf firstVisual>

      自定义错误文本

      分别支持全局配置 errors(一般用于国际化) 或 ui.errors(针对某个属性) 结构来处理错误文本。

      ui.errors

      schema: SFSchema = {
      +  properties: {
      +    email: {
      +      type: 'string',
      +      title: '邮箱',
      +      format: 'email',
      +      maxLength: 20,
      +      ui: {
      +        errors: {
      +          'required': '必填项'
      +        }
      +      }
      +    }
      +  }
      +};

      keyword

      不管采用哪种方式来构建错误文本,都必须通过 keyword 来区分错误类型(完整类型见 ERRORSDEFAULT)。

      自定义校验

      JSON Schema 校验并不一定能够满足一些业务的需求,例如需要根据其他属性值区分不同校验规则:

      属性校验

      schema: SFSchema = {
      +  properties: {
      +    type: {
      +      type: 'string',
      +      title: 'Type',
      +      enum: [
      +        { value: 'mobile', label: 'Mobile' },
      +        { value: 'email', label: 'email' },
      +      ],
      +      default: 'mobile',
      +    },
      +    mobile: {
      +      type: 'string',
      +      title: 'Mobile',
      +      ui: {
      +        visibleIf: { type: ['mobile'] },
      +        showRequired: true,
      +        validator: val => (!val ? [{ keyword: 'required', message: 'Required mobile' }] : []),
      +      },
      +    },
      +    email: {
      +      type: 'string',
      +      title: 'Email',
      +      ui: {
      +        visibleIf: { type: ['email'] },
      +        showRequired: true,
      +        validator: val => (!val ? [{ keyword: 'required', message: 'Required email' }] : []),
      +      },
      +    },
      +    pwd: {
      +      type: 'string',
      +      title: 'Password',
      +      ui: {
      +        type: 'password',
      +      },
      +    },
      +  },
      +  required: ['type', 'pwd'],
      +};

      异步校验

      例如一个异步校验用户名是否存在示例:

      schema: SFSchema = {
      +  properties: {
      +    name: {
      +      type: 'string',
      +      ui: {
      +        showRequired: true,
      +        validator: (value: any) => this.http.get(`/user/check/${value}`).pipe(
      +          map(res => res ? [ { keyword: 'required', message: '用户名已存在'} ] : [])
      +        )
      +      }
      +    }
      +  }
      +};

      注意: 由于每一次校验都是重新实例一次,因此无法做一些控制的操作,例如:去抖 debounceTime

      setErrors

      利用 setErrors 方法来调整错误信息。

      this.sf.getProperty('/name')?.setErrors({ keyword: 'required' });
      +this.sf.getProperty('/name')?.setErrors({ message: 'Please input your username!' });
      +// 清理当前错误消息
      +this.sf.getProperty('/name')?.setErrors();

      视觉

      可以通过设置全局配置ui.onlyVisual 属性控制只展示错误视觉不显示错误文本。

      Debug

      JSON Schema 对格式有严格的要求,例如日期格式必须遵守 RFC3339 时间格式:

      {
      +  properties: {
      +    time: {
      +      type: 'string',
      +      ui: { widget: 'date', mode: 'range' },
      +      title: 'Date',
      +      format: 'yyyy-MM-dd HH:mm:ss'
      +    }
      +  },
      +  ui: {
      +    debug: true
      +  }
      +}

      其中 format 是一个错误时间格式,当指定 debug: true 时,会在控制台接收到详细的校验错误描述:

      Error: unknown format "yyyy-MM-dd HH:mm:ss" is used in schema at path "#/properties/time"
      \ No newline at end of file diff --git a/form/error/zh/index.html b/form/error/zh/index.html new file mode 100644 index 000000000..c590a8428 --- /dev/null +++ b/form/error/zh/index.html @@ -0,0 +1,86 @@ +校验错误 - NG-ALAIN

      校验错误

      写在前面

      JSON Schema 校验过程中会生产一组错误信息,每一个错误都有一个固定的 keyword 来表示,允许通过全局配置来覆盖 errors 默认的错误信息,包括处理错误信息国际化问题。例如当某属性为必填性时产生的错误信息为:

      [{
      +  "keyword": "required",
      +  "dataPath": ".client",
      +  "schemaPath": "#/required",
      +  "params": {"missingProperty":"client"},
      +  "message":"必填项"
      +}]

      其中 message 用于页面渲染的错误文本。

      注:第一次渲染会触发校验,但不会有任何视觉展示,若需要一开始就体现错误视觉效果可以指定 <sf firstVisual>

      自定义错误文本

      分别支持全局配置 errors(一般用于国际化) 或 ui.errors(针对某个属性) 结构来处理错误文本。

      ui.errors

      schema: SFSchema = {
      +  properties: {
      +    email: {
      +      type: 'string',
      +      title: '邮箱',
      +      format: 'email',
      +      maxLength: 20,
      +      ui: {
      +        errors: {
      +          'required': '必填项'
      +        }
      +      }
      +    }
      +  }
      +};

      keyword

      不管采用哪种方式来构建错误文本,都必须通过 keyword 来区分错误类型(完整类型见 ERRORSDEFAULT)。

      自定义校验

      JSON Schema 校验并不一定能够满足一些业务的需求,例如需要根据其他属性值区分不同校验规则:

      属性校验

      schema: SFSchema = {
      +  properties: {
      +    type: {
      +      type: 'string',
      +      title: 'Type',
      +      enum: [
      +        { value: 'mobile', label: 'Mobile' },
      +        { value: 'email', label: 'email' },
      +      ],
      +      default: 'mobile',
      +    },
      +    mobile: {
      +      type: 'string',
      +      title: 'Mobile',
      +      ui: {
      +        visibleIf: { type: ['mobile'] },
      +        showRequired: true,
      +        validator: val => (!val ? [{ keyword: 'required', message: 'Required mobile' }] : []),
      +      },
      +    },
      +    email: {
      +      type: 'string',
      +      title: 'Email',
      +      ui: {
      +        visibleIf: { type: ['email'] },
      +        showRequired: true,
      +        validator: val => (!val ? [{ keyword: 'required', message: 'Required email' }] : []),
      +      },
      +    },
      +    pwd: {
      +      type: 'string',
      +      title: 'Password',
      +      ui: {
      +        type: 'password',
      +      },
      +    },
      +  },
      +  required: ['type', 'pwd'],
      +};

      异步校验

      例如一个异步校验用户名是否存在示例:

      schema: SFSchema = {
      +  properties: {
      +    name: {
      +      type: 'string',
      +      ui: {
      +        showRequired: true,
      +        validator: (value: any) => this.http.get(`/user/check/${value}`).pipe(
      +          map(res => res ? [ { keyword: 'required', message: '用户名已存在'} ] : [])
      +        )
      +      }
      +    }
      +  }
      +};

      注意: 由于每一次校验都是重新实例一次,因此无法做一些控制的操作,例如:去抖 debounceTime

      setErrors

      利用 setErrors 方法来调整错误信息。

      this.sf.getProperty('/name')?.setErrors({ keyword: 'required' });
      +this.sf.getProperty('/name')?.setErrors({ message: 'Please input your username!' });
      +// 清理当前错误消息
      +this.sf.getProperty('/name')?.setErrors();

      视觉

      可以通过设置全局配置ui.onlyVisual 属性控制只展示错误视觉不显示错误文本。

      Debug

      JSON Schema 对格式有严格的要求,例如日期格式必须遵守 RFC3339 时间格式:

      {
      +  properties: {
      +    time: {
      +      type: 'string',
      +      ui: { widget: 'date', mode: 'range' },
      +      title: 'Date',
      +      format: 'yyyy-MM-dd HH:mm:ss'
      +    }
      +  },
      +  ui: {
      +    debug: true
      +  }
      +}

      其中 format 是一个错误时间格式,当指定 debug: true 时,会在控制台接收到详细的校验错误描述:

      Error: unknown format "yyyy-MM-dd HH:mm:ss" is used in schema at path "#/properties/time"
      \ No newline at end of file diff --git a/form/getting-started/en/index.html b/form/getting-started/en/index.html new file mode 100644 index 000000000..8021f31d8 --- /dev/null +++ b/form/getting-started/en/index.html @@ -0,0 +1,35 @@ +开始使用 - NG-ALAIN

      开始使用

      @delon/form 是一个基于 JSON Schema 标准的动态构建表单。

      特性

      • 符合 JSON Schema 标准

      • 基于 ng-zorro-antd 基础组件库

      • 秉承 Ant Design 价值观

      • 二十几种小部件

      • 可自定义小部件满足业务需求

      • 无任何第三方依赖,可适用所有 antd 项目

      如何阅读

      在开始之前需要知道文档的一些简单编写规则:

      • 代码以 schema. 开头的表示 JSON Schema 对象属性

      • 代码以 ui. 开头的表示 UI 对象属性

      • 部分小部件数据源分为 静态实时 两类

        • 静态 理解为 schema.enum 值,是符合 JSON Schema 标准,且限数组格式 any[]

        • 实时 理解为 ui.asyncData 值,非 JSON Schema 标准,格式 (input?: any) => Observable<SFSchemaEnumType[]>

      如何使用

      安装 @delon/form 依赖包:

      yarn add @delon/form

      导入 DelonFormModule 模块:

      import { DelonFormModule } from '@delon/form';
      +
      +@NgModule({
      +  imports: [
      +    DelonFormModule.forRoot()
      +  ]
      +})
      +export class AppModule { }

      虽然默认 @delon/form 校验是 ajv,但这并不是唯一的选择,你可以覆盖 SchemaValidatorFactory 使用其他校验类库。

      全局配置

      请参考全局配置,成员如下:

      成员说明类型默认值
      [ajv]ajv 参数Ajv.Options-
      [ingoreKeywords]是否忽略某些数据类型校验(所有类型string[][ 'type', 'enum' ]
      [liveValidate]是否实时校验booleantrue
      [autocomplete]指定表单 autocompleteon,offnull
      [firstVisual]是否立即呈现错误视觉booleanfalse
      [onlyVisual]是否只展示错误视觉不显示错误文本,并取消错误文本间距booleanfalse
      [errors]自定义通用错误信息{ [ key: string ]: string }ERRORSDEFAULT
      [ui]默认全局布局SFUISchemaItem-
      [size]元素组件大小,用于 nzSizedefault,large,small-
      [button]按钮风格SFButton{submit:'提交',submit_type:'primary',reset:'重置',reset_type:'default'}
      [uiDateStringFormat]date小部件:type="string" 且不指定 schema.formatui.format 时日期格式stringyyyy-MM-dd HH:mm:ss
      [uiDateNumberFormat]date小部件:type="number" 且不指定 schema.formatui.format 时日期格式,默认:T 13位Unix TimestampstringT
      [uiTimeStringFormat]time小部件:type="string" 且不指定 schema.formatui.format 时日期格式stringHH:mm:ss
      [uiTimeNumberFormat]time小部件:type="number" 且不指定 schema.formatui.format 时日期格式,默认:T 13位Unix Timestamp,日期统一使用 1970-01-01stringT
      [uiEmailSuffixes]指定 format: 'email' 的默认Email后缀string[]['qq.com', '163.com', 'gmail.com', '126.com', 'aliyun.com']
      [delay]是否延迟渲染,需要手动调用 refreshSchema()booleanfalse

      构建一个邮箱、姓名表单:

      @Component({
      +  selector: 'app-home',
      +  template: `
      +  <sf [schema]="schema" (formSubmit)="submit($event)"></sf>
      +  `
      +})
      +export class HomeComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      email: {
      +        type: 'string',
      +        title: '邮箱',
      +        format: 'email',
      +        maxLength: 20
      +      },
      +      name: {
      +        type: 'string',
      +        title: '姓名',
      +        minLength: 3
      +      }
      +    }
      +  };
      +
      +  submit(value: any) { }
      +}

      API

      sf

      参数说明类型默认值
      [layout]表单布局,等同 nzLayout'horizontal','vertical','inline''horizontal'
      [schema]必填项 JSON SchemaSFSchema-
      [ui]UI SchemaSFUISchema-
      [formData]表单默认值any-
      [mode]表单模式,细节见常见问题'default','search','edit''default'
      [button]按钮SFButton|'none'{}
      [firstVisual]是否立即呈现错误视觉booleantrue
      [liveValidate]是否实时校验,false 提交时检验booleantrue
      [autocomplete]指定表单 autocomplete'on','off'null
      [disabled]是否禁用状态booleanfalse
      [loading]是否加载状态,当 true 重置按钮禁止状态,提交按钮加载状态booleanfalse
      [noColon]是否不显示 label 后面的冒号booleanfalse
      [compact]是否紧凑booleanfalse
      [cleanValue]是否清理未定义 Schema 的数据booleanfalse
      [delay]是否延迟渲染,需要手动调用 refreshSchema()booleanfalse
      (formChange)数据变更时回调EventEmitter<{}>-
      (formValueChange)值数据变更时回调EventEmitter<SFValueChange>-
      (formSubmit)提交表单时回调EventEmitter<{}>-
      (formReset)重置表单时回调EventEmitter<{}>-
      (formError)表单校验结果回调EventEmitter<ErrorData[]>-

      SFButton

      参数说明类型默认值
      [submit]提交按钮文本string提交
      [submit_type]提交按钮类型stringprimary
      [submit_icon]提交按钮图标SFButtonIcon-
      [reset]重置按钮文本string重置
      [reset_type]重置按钮类型stringdefault
      [reset_icon]重置按钮图标SFButtonIcon-
      [search]搜索按钮文本string搜索
      [edit]编辑按钮文本string保存
      [render]按钮样式SFRenderButton-

      SFValueChange

      参数说明类型默认值
      [value]总是返回完整的数据SFValue-
      [path]当前触发路径string, nullnull
      [pathValue]当前触发路径对应值SFValue-

      组件方法

      参数说明返回值
      valid表单是否有效boolean
      value表单值any
      refreshSchema刷新 JSON Schemavoid
      reset重置表单void
      validator手动校验一次表单void
      getProperty根据路径获取表单元素属性FormProperty
      getValue根据路径获取表单元素当前值any
      setValue根据路径设置某个表单元素属性值,若路径不存在会产生异常this
      updateFeedback根据路径设置某个表单元素反馈状态this

      注: 所有 path 采用 / 来分隔,例如:/user/name/arr/0/name

      按钮说明

      注意事项

      • 值为 nullundefined 表示手动添加按钮,但保留容器

      • 值为 none 表示手动添加按钮,且不保留容器

      • 使用 spanLabelFixed 固定标签宽度时,若无 render.class 则默认为居中状态

      自定义

      当你希望自定义按钮时,务必设置 button 值为 null

      <sf #sf [button]="null">
      +  <button type="submit" nz-button [disabled]="!sf.valid">保存</button>
      +  <button (click)="sf.reset()" type="button" nz-button>重置</button>
      +</sf>

      常见问题

      mode有什么作用?

      mode 只是快捷作用,且优先级高于一切,规则如下:

      • default 默认模式,什么也不做

      • search 搜索模式,自动设置 layout: inlinefirstVisual: falseliveValidate: falsebutton.submit: '搜索'

      • edit 编辑模式,自动设置 layout: horizontalfirstVisual: falseliveValidate: truebutton.submit: '保存'

      Schema国际化

      sf 并不支持任何 Schema 国际化动作,这是因为本身 Schema 是一组 JSON 值,国际化的实现只需要提供不同语言版本即可。

      \ No newline at end of file diff --git a/form/getting-started/zh/index.html b/form/getting-started/zh/index.html new file mode 100644 index 000000000..6f70250cf --- /dev/null +++ b/form/getting-started/zh/index.html @@ -0,0 +1,35 @@ +开始使用 - NG-ALAIN

      开始使用

      @delon/form 是一个基于 JSON Schema 标准的动态构建表单。

      特性

      • 符合 JSON Schema 标准

      • 基于 ng-zorro-antd 基础组件库

      • 秉承 Ant Design 价值观

      • 二十几种小部件

      • 可自定义小部件满足业务需求

      • 无任何第三方依赖,可适用所有 antd 项目

      如何阅读

      在开始之前需要知道文档的一些简单编写规则:

      • 代码以 schema. 开头的表示 JSON Schema 对象属性

      • 代码以 ui. 开头的表示 UI 对象属性

      • 部分小部件数据源分为 静态实时 两类

        • 静态 理解为 schema.enum 值,是符合 JSON Schema 标准,且限数组格式 any[]

        • 实时 理解为 ui.asyncData 值,非 JSON Schema 标准,格式 (input?: any) => Observable<SFSchemaEnumType[]>

      如何使用

      安装 @delon/form 依赖包:

      yarn add @delon/form

      导入 DelonFormModule 模块:

      import { DelonFormModule } from '@delon/form';
      +
      +@NgModule({
      +  imports: [
      +    DelonFormModule.forRoot()
      +  ]
      +})
      +export class AppModule { }

      虽然默认 @delon/form 校验是 ajv,但这并不是唯一的选择,你可以覆盖 SchemaValidatorFactory 使用其他校验类库。

      全局配置

      请参考全局配置,成员如下:

      成员说明类型默认值
      [ajv]ajv 参数Ajv.Options-
      [ingoreKeywords]是否忽略某些数据类型校验(所有类型string[][ 'type', 'enum' ]
      [liveValidate]是否实时校验booleantrue
      [autocomplete]指定表单 autocompleteon,offnull
      [firstVisual]是否立即呈现错误视觉booleanfalse
      [onlyVisual]是否只展示错误视觉不显示错误文本,并取消错误文本间距booleanfalse
      [errors]自定义通用错误信息{ [ key: string ]: string }ERRORSDEFAULT
      [ui]默认全局布局SFUISchemaItem-
      [size]元素组件大小,用于 nzSizedefault,large,small-
      [button]按钮风格SFButton{submit:'提交',submit_type:'primary',reset:'重置',reset_type:'default'}
      [uiDateStringFormat]date小部件:type="string" 且不指定 schema.formatui.format 时日期格式stringyyyy-MM-dd HH:mm:ss
      [uiDateNumberFormat]date小部件:type="number" 且不指定 schema.formatui.format 时日期格式,默认:T 13位Unix TimestampstringT
      [uiTimeStringFormat]time小部件:type="string" 且不指定 schema.formatui.format 时日期格式stringHH:mm:ss
      [uiTimeNumberFormat]time小部件:type="number" 且不指定 schema.formatui.format 时日期格式,默认:T 13位Unix Timestamp,日期统一使用 1970-01-01stringT
      [uiEmailSuffixes]指定 format: 'email' 的默认Email后缀string[]['qq.com', '163.com', 'gmail.com', '126.com', 'aliyun.com']
      [delay]是否延迟渲染,需要手动调用 refreshSchema()booleanfalse

      构建一个邮箱、姓名表单:

      @Component({
      +  selector: 'app-home',
      +  template: `
      +  <sf [schema]="schema" (formSubmit)="submit($event)"></sf>
      +  `
      +})
      +export class HomeComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      email: {
      +        type: 'string',
      +        title: '邮箱',
      +        format: 'email',
      +        maxLength: 20
      +      },
      +      name: {
      +        type: 'string',
      +        title: '姓名',
      +        minLength: 3
      +      }
      +    }
      +  };
      +
      +  submit(value: any) { }
      +}

      API

      sf

      参数说明类型默认值
      [layout]表单布局,等同 nzLayout'horizontal','vertical','inline''horizontal'
      [schema]必填项 JSON SchemaSFSchema-
      [ui]UI SchemaSFUISchema-
      [formData]表单默认值any-
      [mode]表单模式,细节见常见问题'default','search','edit''default'
      [button]按钮SFButton|'none'{}
      [firstVisual]是否立即呈现错误视觉booleantrue
      [liveValidate]是否实时校验,false 提交时检验booleantrue
      [autocomplete]指定表单 autocomplete'on','off'null
      [disabled]是否禁用状态booleanfalse
      [loading]是否加载状态,当 true 重置按钮禁止状态,提交按钮加载状态booleanfalse
      [noColon]是否不显示 label 后面的冒号booleanfalse
      [compact]是否紧凑booleanfalse
      [cleanValue]是否清理未定义 Schema 的数据booleanfalse
      [delay]是否延迟渲染,需要手动调用 refreshSchema()booleanfalse
      (formChange)数据变更时回调EventEmitter<{}>-
      (formValueChange)值数据变更时回调EventEmitter<SFValueChange>-
      (formSubmit)提交表单时回调EventEmitter<{}>-
      (formReset)重置表单时回调EventEmitter<{}>-
      (formError)表单校验结果回调EventEmitter<ErrorData[]>-

      SFButton

      参数说明类型默认值
      [submit]提交按钮文本string提交
      [submit_type]提交按钮类型stringprimary
      [submit_icon]提交按钮图标SFButtonIcon-
      [reset]重置按钮文本string重置
      [reset_type]重置按钮类型stringdefault
      [reset_icon]重置按钮图标SFButtonIcon-
      [search]搜索按钮文本string搜索
      [edit]编辑按钮文本string保存
      [render]按钮样式SFRenderButton-

      SFValueChange

      参数说明类型默认值
      [value]总是返回完整的数据SFValue-
      [path]当前触发路径string, nullnull
      [pathValue]当前触发路径对应值SFValue-

      组件方法

      参数说明返回值
      valid表单是否有效boolean
      value表单值any
      refreshSchema刷新 JSON Schemavoid
      reset重置表单void
      validator手动校验一次表单void
      getProperty根据路径获取表单元素属性FormProperty
      getValue根据路径获取表单元素当前值any
      setValue根据路径设置某个表单元素属性值,若路径不存在会产生异常this
      updateFeedback根据路径设置某个表单元素反馈状态this

      注: 所有 path 采用 / 来分隔,例如:/user/name/arr/0/name

      按钮说明

      注意事项

      • 值为 nullundefined 表示手动添加按钮,但保留容器

      • 值为 none 表示手动添加按钮,且不保留容器

      • 使用 spanLabelFixed 固定标签宽度时,若无 render.class 则默认为居中状态

      自定义

      当你希望自定义按钮时,务必设置 button 值为 null

      <sf #sf [button]="null">
      +  <button type="submit" nz-button [disabled]="!sf.valid">保存</button>
      +  <button (click)="sf.reset()" type="button" nz-button>重置</button>
      +</sf>

      常见问题

      mode有什么作用?

      mode 只是快捷作用,且优先级高于一切,规则如下:

      • default 默认模式,什么也不做

      • search 搜索模式,自动设置 layout: inlinefirstVisual: falseliveValidate: falsebutton.submit: '搜索'

      • edit 编辑模式,自动设置 layout: horizontalfirstVisual: falseliveValidate: truebutton.submit: '保存'

      Schema国际化

      sf 并不支持任何 Schema 国际化动作,这是因为本身 Schema 是一组 JSON 值,国际化的实现只需要提供不同语言版本即可。

      \ No newline at end of file diff --git a/form/i18n/en/index.html b/form/i18n/en/index.html new file mode 100644 index 000000000..afeb52e99 --- /dev/null +++ b/form/i18n/en/index.html @@ -0,0 +1,57 @@ +i18n - NG-ALAIN

      国际化

      JSON Schema 本身只是一个 JSON 对象,因此本质上已经是支持国际化。此外,sf 还支持一些比较快捷的国际化方式,但它支持的元素比较基础:titledescriptionoptionalHelp

      代码演示

      基础样例

      name 元素采用内置的国际化方式;password 采用外部国际化方式。

      expand codeexpand code
      import { Component, Inject, ViewChild } from '@angular/core';
      +import { I18NService } from '@core';
      +import { SFComponent, SFSchema } from '@delon/form';
      +import { ALAIN_I18N_TOKEN } from '@delon/theme';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-i18n-simple',
      +  template: `
      +    <button nz-button type="button" (click)="changeLang('srv')">Change Language Via Service</button>
      +    <button nz-button type="button" (click)="changeLang('ref')">Change Language Via call refresh schema</button>
      +    <sf #sf [schema]="schema" (formSubmit)="submit($event)"></sf>
      +  `,
      +})
      +export class FormI18nSimpleComponent {
      +  @ViewChild('sf', { static: true }) comp!: SFComponent;
      +  schema = this.i18nSchema;
      +
      +  private get i18nSchema(): SFSchema {
      +    return {
      +      properties: {
      +        name: {
      +          type: 'string',
      +          ui: {
      +            i18n: 'sf.name',
      +            descriptionI18n: 'sf.description',
      +            optionalHelp: {
      +              i18n: 'sf.description',
      +            },
      +          },
      +        },
      +        password: {
      +          type: 'string',
      +          title: this.i18n.fanyi('sf.name'),
      +          description: this.i18n.fanyi('sf.description'),
      +          ui: {
      +            type: 'password',
      +          },
      +        },
      +      },
      +      required: ['name', 'password'],
      +    };
      +  }
      +
      +  constructor(private msg: NzMessageService, @Inject(ALAIN_I18N_TOKEN) private i18n: I18NService) {}
      +
      +  changeLang(type: 'srv' | 'ref'): void {
      +    this.i18n.use(this.i18n.zone === 'zh' ? 'en-US' : 'zh-CN');
      +    if (type === 'ref') {
      +      this.comp.refreshSchema(this.i18nSchema);
      +    }
      +  }
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}
      \ No newline at end of file diff --git a/form/i18n/zh/index.html b/form/i18n/zh/index.html new file mode 100644 index 000000000..467e3b191 --- /dev/null +++ b/form/i18n/zh/index.html @@ -0,0 +1,57 @@ +i18n - NG-ALAIN

      国际化

      JSON Schema 本身只是一个 JSON 对象,因此本质上已经是支持国际化。此外,sf 还支持一些比较快捷的国际化方式,但它支持的元素比较基础:titledescriptionoptionalHelp

      代码演示

      基础样例

      name 元素采用内置的国际化方式;password 采用外部国际化方式。

      expand codeexpand code
      import { Component, Inject, ViewChild } from '@angular/core';
      +import { I18NService } from '@core';
      +import { SFComponent, SFSchema } from '@delon/form';
      +import { ALAIN_I18N_TOKEN } from '@delon/theme';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-i18n-simple',
      +  template: `
      +    <button nz-button type="button" (click)="changeLang('srv')">Change Language Via Service</button>
      +    <button nz-button type="button" (click)="changeLang('ref')">Change Language Via call refresh schema</button>
      +    <sf #sf [schema]="schema" (formSubmit)="submit($event)"></sf>
      +  `,
      +})
      +export class FormI18nSimpleComponent {
      +  @ViewChild('sf', { static: true }) comp!: SFComponent;
      +  schema = this.i18nSchema;
      +
      +  private get i18nSchema(): SFSchema {
      +    return {
      +      properties: {
      +        name: {
      +          type: 'string',
      +          ui: {
      +            i18n: 'sf.name',
      +            descriptionI18n: 'sf.description',
      +            optionalHelp: {
      +              i18n: 'sf.description',
      +            },
      +          },
      +        },
      +        password: {
      +          type: 'string',
      +          title: this.i18n.fanyi('sf.name'),
      +          description: this.i18n.fanyi('sf.description'),
      +          ui: {
      +            type: 'password',
      +          },
      +        },
      +      },
      +      required: ['name', 'password'],
      +    };
      +  }
      +
      +  constructor(private msg: NzMessageService, @Inject(ALAIN_I18N_TOKEN) private i18n: I18NService) {}
      +
      +  changeLang(type: 'srv' | 'ref'): void {
      +    this.i18n.use(this.i18n.zone === 'zh' ? 'en-US' : 'zh-CN');
      +    if (type === 'ref') {
      +      this.comp.refreshSchema(this.i18nSchema);
      +    }
      +  }
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}
      \ No newline at end of file diff --git a/form/layout/en/index.html b/form/layout/en/index.html new file mode 100644 index 000000000..a15eb8a80 --- /dev/null +++ b/form/layout/en/index.html @@ -0,0 +1,34 @@ +如何布局 - NG-ALAIN

      如何布局

      @delon/form 布局是基于 Grid 栅格系统,而 SFSchema 的渲染类来决定布局参数。

      表单布局分为行内、垂直、水平(默认)三类,它由 layout 决定。

      类型

      行内

      表单项水平行内排列,一般用于简单搜索框。

      表单项的宽度由组件自身来决定,你可以使用 width 参数来调整其大小,像小部件 select 可能会因为未设置默认值倒置宽度极小。

      可通过设置 mode 参数来快速设置为搜索模式。

      垂直

      标签和表单控件上下垂直排列。

      水平

      标签和表单控件水平排列,一般用于编辑页。

      水平类型相对于行内与垂直更复杂一点,因为会涉及响应式,决定每个表单项所站的格数是由 grid 属性来决定。

      可通过设置 mode 参数来快速设置为编辑模式。

      非响应式

      非响应式时只需要维护 span 属性即可。

      响应式

      响应式是根据 xssmmdlgxlxxl 来决定不同屏幕时决定要占用几格,有几个注意点:

      • 每一行只能有 24

      • 表示两个表单项在同一行,则设置值为 12

      • 表示屏幕 ≥992px 时两个表单项在同一行,小于则每个表单项为一行,则:{ sm: 24, md: 12 }

      不规则布局

      当然,表单不可能每一行都有固定表单项数量,有可能某个表单项会占用一整行,由于栅格系统的因素,这会产生另一个问题:标签无法对齐,sf 提供一种方案,即固定所有标签的宽度 spanLabelFixed 属性,例如:

      {
      +  "properties": {
      +    "email": {
      +      "type": "string",
      +      "title": "邮箱",
      +      "format": "email"
      +    },
      +    "name": {
      +      "type": "string",
      +      "title": "姓名",
      +      "minLength": 5
      +    },
      +    "remark": {
      +      "type": "string",
      +      "title": "描述",
      +      "ui": {
      +        "widget": "textarea",
      +        "autosize": true,
      +        "grid": {
      +            "span": 24
      +        }
      +      }
      +    }
      +  },
      +  "ui": {
      +    "spanLabelFixed": 100,
      +    "grid": {
      +      "span": 12
      +    }
      +  }
      +}

      按钮

      按钮布局渲染同表单项一样布局、参数,可以通过 SFButton 属性来调整按钮渲染风格。

      注意事项

      • 值为 nullundefined 表示手动添加按钮,但保留容器

      • 值为 none 表示手动添加按钮,且不保留容器

      • 使用 spanLabelFixed 固定标签宽度时,若无 render.class 则默认为居中状态

      自定义

      当你希望自定义按钮时,务必设置 button 值为 null

      <sf #sf [button]="null">
      +  <button type="submit" nz-button [disabled]="!sf.valid">保存</button>
      +  <button (click)="sf.reset()" type="button" nz-button>重置</button>
      +</sf>
      \ No newline at end of file diff --git a/form/layout/zh/index.html b/form/layout/zh/index.html new file mode 100644 index 000000000..ec0b17433 --- /dev/null +++ b/form/layout/zh/index.html @@ -0,0 +1,34 @@ +如何布局 - NG-ALAIN

      如何布局

      @delon/form 布局是基于 Grid 栅格系统,而 SFSchema 的渲染类来决定布局参数。

      表单布局分为行内、垂直、水平(默认)三类,它由 layout 决定。

      类型

      行内

      表单项水平行内排列,一般用于简单搜索框。

      表单项的宽度由组件自身来决定,你可以使用 width 参数来调整其大小,像小部件 select 可能会因为未设置默认值倒置宽度极小。

      可通过设置 mode 参数来快速设置为搜索模式。

      垂直

      标签和表单控件上下垂直排列。

      水平

      标签和表单控件水平排列,一般用于编辑页。

      水平类型相对于行内与垂直更复杂一点,因为会涉及响应式,决定每个表单项所站的格数是由 grid 属性来决定。

      可通过设置 mode 参数来快速设置为编辑模式。

      非响应式

      非响应式时只需要维护 span 属性即可。

      响应式

      响应式是根据 xssmmdlgxlxxl 来决定不同屏幕时决定要占用几格,有几个注意点:

      • 每一行只能有 24

      • 表示两个表单项在同一行,则设置值为 12

      • 表示屏幕 ≥992px 时两个表单项在同一行,小于则每个表单项为一行,则:{ sm: 24, md: 12 }

      不规则布局

      当然,表单不可能每一行都有固定表单项数量,有可能某个表单项会占用一整行,由于栅格系统的因素,这会产生另一个问题:标签无法对齐,sf 提供一种方案,即固定所有标签的宽度 spanLabelFixed 属性,例如:

      {
      +  "properties": {
      +    "email": {
      +      "type": "string",
      +      "title": "邮箱",
      +      "format": "email"
      +    },
      +    "name": {
      +      "type": "string",
      +      "title": "姓名",
      +      "minLength": 5
      +    },
      +    "remark": {
      +      "type": "string",
      +      "title": "描述",
      +      "ui": {
      +        "widget": "textarea",
      +        "autosize": true,
      +        "grid": {
      +            "span": 24
      +        }
      +      }
      +    }
      +  },
      +  "ui": {
      +    "spanLabelFixed": 100,
      +    "grid": {
      +      "span": 12
      +    }
      +  }
      +}

      按钮

      按钮布局渲染同表单项一样布局、参数,可以通过 SFButton 属性来调整按钮渲染风格。

      注意事项

      • 值为 nullundefined 表示手动添加按钮,但保留容器

      • 值为 none 表示手动添加按钮,且不保留容器

      • 使用 spanLabelFixed 固定标签宽度时,若无 render.class 则默认为居中状态

      自定义

      当你希望自定义按钮时,务必设置 button 值为 null

      <sf #sf [button]="null">
      +  <button type="submit" nz-button [disabled]="!sf.valid">保存</button>
      +  <button (click)="sf.reset()" type="button" nz-button>重置</button>
      +</sf>
      \ No newline at end of file diff --git a/form/markdown/en/index.html b/form/markdown/en/index.html new file mode 100644 index 000000000..4b85168ac --- /dev/null +++ b/form/markdown/en/index.html @@ -0,0 +1,29 @@ +markdown - NG-ALAIN

      Markdown编辑器

      Markdown编辑器。

      注:第三方小部件默认并未注册,细节见定制小部件

      如何使用

      安装依赖

      由于Markdown编辑器依赖第三方插件ngx-simplemde,所以使用时应首先安装依赖

      yarn add ngx-simplemde

      导入模块

      • 使用最新脚手架搭建出的项目提供了第三方控件注册入口: src/app/shared/json-schema/json-schema.module.ts

      • 需将MarkdownWidgetJsonSchemaModule中进行声明

      export const SCHEMA_THIRDS_COMPONENTS = [MarkdownWidget];
      +
      +@NgModule({
      +  declarations: SCHEMA_THIRDS_COMPONENTS,
      +  imports: [
      +    SharedModule,
      +    DelonFormModule.forRoot(),
      +    SimplemdeModule.forRoot({ style: 'default' }),
      +  ],
      +  exports: SCHEMA_THIRDS_COMPONENTS
      +})
      +export class JsonSchemaModule {
      +}

      控件注册

      • 将控件注册到WidgetRegistry注册表中

      export class JsonSchemaModule {
      +  constructor(widgetRegistry: WidgetRegistry) {
      +    widgetRegistry.register(MarkdownWidget.KEY, MarkdownWidget);
      +  }
      +}

      导入资源

      angular.json 导入相应资源。

      "styles": [
      +  "src/styles.less"
      +]
      +"scripts": [
      +  "node_modules/simplemde-antd/dist/simplemde.min.js"
      +]

      导入样式

      使用style.less作为样式入口后,需将ngx-simplemde的样式文件导入进去,并定义一些自定义变量

      // src/style.less
      +@import 'ngx-simplemde/index.less';
      +// Change existing parameters here:
      +@simplemde-icon-url: '//at.alicdn.com/t/font_700857_mnodkd1cp9l766r';
      +@simplemde-statusbar-lines: 'Lins:';
      +@simplemde-statusbar-words: 'words:';
      +@simplemde-statusbar-characters: '字符:';
      +@simplemde-statusbar-counts: '字数:';

      源代码

      源代码

      API

      ui 属性

      成员说明类型默认值
      [options]配置项说明,见官网object-
      [change]编辑器内容发生改变时会触发该事件(md: string) => void-
      \ No newline at end of file diff --git a/form/markdown/zh/index.html b/form/markdown/zh/index.html new file mode 100644 index 000000000..b8df4176a --- /dev/null +++ b/form/markdown/zh/index.html @@ -0,0 +1,29 @@ +markdown - NG-ALAIN

      Markdown编辑器

      Markdown编辑器。

      注:第三方小部件默认并未注册,细节见定制小部件

      如何使用

      安装依赖

      由于Markdown编辑器依赖第三方插件ngx-simplemde,所以使用时应首先安装依赖

      yarn add ngx-simplemde

      导入模块

      • 使用最新脚手架搭建出的项目提供了第三方控件注册入口: src/app/shared/json-schema/json-schema.module.ts

      • 需将MarkdownWidgetJsonSchemaModule中进行声明

      export const SCHEMA_THIRDS_COMPONENTS = [MarkdownWidget];
      +
      +@NgModule({
      +  declarations: SCHEMA_THIRDS_COMPONENTS,
      +  imports: [
      +    SharedModule,
      +    DelonFormModule.forRoot(),
      +    SimplemdeModule.forRoot({ style: 'default' }),
      +  ],
      +  exports: SCHEMA_THIRDS_COMPONENTS
      +})
      +export class JsonSchemaModule {
      +}

      控件注册

      • 将控件注册到WidgetRegistry注册表中

      export class JsonSchemaModule {
      +  constructor(widgetRegistry: WidgetRegistry) {
      +    widgetRegistry.register(MarkdownWidget.KEY, MarkdownWidget);
      +  }
      +}

      导入资源

      angular.json 导入相应资源。

      "styles": [
      +  "src/styles.less"
      +]
      +"scripts": [
      +  "node_modules/simplemde-antd/dist/simplemde.min.js"
      +]

      导入样式

      使用style.less作为样式入口后,需将ngx-simplemde的样式文件导入进去,并定义一些自定义变量

      // src/style.less
      +@import 'ngx-simplemde/index.less';
      +// Change existing parameters here:
      +@simplemde-icon-url: '//at.alicdn.com/t/font_700857_mnodkd1cp9l766r';
      +@simplemde-statusbar-lines: 'Lins:';
      +@simplemde-statusbar-words: 'words:';
      +@simplemde-statusbar-characters: '字符:';
      +@simplemde-statusbar-counts: '字数:';

      源代码

      源代码

      API

      ui 属性

      成员说明类型默认值
      [options]配置项说明,见官网object-
      [change]编辑器内容发生改变时会触发该事件(md: string) => void-
      \ No newline at end of file diff --git a/form/mention/en/index.html b/form/mention/en/index.html new file mode 100644 index 000000000..fdc00f776 --- /dev/null +++ b/form/mention/en/index.html @@ -0,0 +1,53 @@ +mention - NG-ALAIN

      提及

      提及组件。

      注意事项

      • 若数据中不包括 label 属性,则务必指定 valueWith 参数。

      数据源说明

      静态

      指一次性获取数据,数据来源于 asyncDataenum

      实时

      指每一次选择会触发HTTP请求,数据来源于 loadData

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFMentionWidgetSchema, SFSchema } from '@delon/form';
      +import { MentionOnSearchTypes } from 'ng-zorro-antd/mention';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +import { of, delay } from 'rxjs';
      +
      +const DATA = ['asdf', 'cipchk', '中文', 'にほんご'];
      +
      +@Component({
      +  selector: 'form-mention-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormMentionSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      remark: {
      +        type: 'string',
      +        title: '描述',
      +        enum: DATA,
      +        minimum: 2,
      +        maximum: 5,
      +        ui: {
      +          widget: 'mention',
      +          inputStyle: 'textarea',
      +        } as SFMentionWidgetSchema,
      +      },
      +      // 异步静态数据源
      +      async: {
      +        type: 'string',
      +        title: 'Async',
      +        ui: {
      +          widget: 'mention',
      +          asynxcData: () => of(DATA).pipe(delay(1000)),
      +        } as SFMentionWidgetSchema,
      +      },
      +      // 实时数据
      +      real_time: {
      +        type: 'string',
      +        title: 'RealTime',
      +        ui: {
      +          widget: 'mention',
      +          loadData: (option: MentionOnSearchTypes) => of(DATA.filter(item => item.indexOf(option.value) !== -1)).pipe(delay(300)),
      +        } as SFMentionWidgetSchema,
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [enum]静态数据源SFSchemaEnumType[]-
      [readOnly]禁用状态boolean-
      [minimum]最少提及次数number-
      [maximum]最多提及次数number-

      ui 属性

      成员说明类型默认值
      [asyncData]异步静态数据源(input: string) => Observable<SFSchemaEnumType[]>-
      [size]大小,等同 nzSizestring-
      [placeholder]在文字框中显示提示讯息string-
      [loadData]实时数据(option: MentionOnSearchTypes) => Observable<SFSchemaEnumType[]>-
      [notFoundContent]未找到时的内容string无匹配结果,轻敲空格完成输入
      [placement]建议框位置button,topbutton
      [prefix]触发弹出下拉框的字符'string' 'string[]'@
      [valueWith]建议选项的取值方法(value: any) => string-
      [select]下拉框选择建议时回调(value: any) => void-
      [inputStyle]文本框类型text, textareatext
      [autosize]自适应内容高度,可设置为 true|false 或对象:{ minRows: 2, maxRows: 6 }boolean,AutoSizeTypetrue
      \ No newline at end of file diff --git a/form/mention/zh/index.html b/form/mention/zh/index.html new file mode 100644 index 000000000..e32863455 --- /dev/null +++ b/form/mention/zh/index.html @@ -0,0 +1,53 @@ +mention - NG-ALAIN

      提及

      提及组件。

      注意事项

      • 若数据中不包括 label 属性,则务必指定 valueWith 参数。

      数据源说明

      静态

      指一次性获取数据,数据来源于 asyncDataenum

      实时

      指每一次选择会触发HTTP请求,数据来源于 loadData

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFMentionWidgetSchema, SFSchema } from '@delon/form';
      +import { MentionOnSearchTypes } from 'ng-zorro-antd/mention';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +import { of, delay } from 'rxjs';
      +
      +const DATA = ['asdf', 'cipchk', '中文', 'にほんご'];
      +
      +@Component({
      +  selector: 'form-mention-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormMentionSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      remark: {
      +        type: 'string',
      +        title: '描述',
      +        enum: DATA,
      +        minimum: 2,
      +        maximum: 5,
      +        ui: {
      +          widget: 'mention',
      +          inputStyle: 'textarea',
      +        } as SFMentionWidgetSchema,
      +      },
      +      // 异步静态数据源
      +      async: {
      +        type: 'string',
      +        title: 'Async',
      +        ui: {
      +          widget: 'mention',
      +          asynxcData: () => of(DATA).pipe(delay(1000)),
      +        } as SFMentionWidgetSchema,
      +      },
      +      // 实时数据
      +      real_time: {
      +        type: 'string',
      +        title: 'RealTime',
      +        ui: {
      +          widget: 'mention',
      +          loadData: (option: MentionOnSearchTypes) => of(DATA.filter(item => item.indexOf(option.value) !== -1)).pipe(delay(300)),
      +        } as SFMentionWidgetSchema,
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [enum]静态数据源SFSchemaEnumType[]-
      [readOnly]禁用状态boolean-
      [minimum]最少提及次数number-
      [maximum]最多提及次数number-

      ui 属性

      成员说明类型默认值
      [asyncData]异步静态数据源(input: string) => Observable<SFSchemaEnumType[]>-
      [size]大小,等同 nzSizestring-
      [placeholder]在文字框中显示提示讯息string-
      [loadData]实时数据(option: MentionOnSearchTypes) => Observable<SFSchemaEnumType[]>-
      [notFoundContent]未找到时的内容string无匹配结果,轻敲空格完成输入
      [placement]建议框位置button,topbutton
      [prefix]触发弹出下拉框的字符'string' 'string[]'@
      [valueWith]建议选项的取值方法(value: any) => string-
      [select]下拉框选择建议时回调(value: any) => void-
      [inputStyle]文本框类型text, textareatext
      [autosize]自适应内容高度,可设置为 true|false 或对象:{ minRows: 2, maxRows: 6 }boolean,AutoSizeTypetrue
      \ No newline at end of file diff --git a/form/modal/en/index.html b/form/modal/en/index.html new file mode 100644 index 000000000..0b6b65ab0 --- /dev/null +++ b/form/modal/en/index.html @@ -0,0 +1,22 @@ +modal - NG-ALAIN
      This article has not been translated, hope that your can PR to translated it. Help us!

      模态框

      在模态框里使用表单是一种非常常见场景,其实 ng g ng-alain:edit edit 的时候会得到一个完整示例;会得到这样的一个HTML模板:

      <sf mode="edit" [schema]="schema" [ui]="ui" [formData]="i" button="none">
      +  <div class="modal-footer">
      +    <button nz-button type="button" (click)="close()">关闭</button>
      +    <button nz-button type="submit" [nzType]="'primary'" (click)="save(sf.value)" [disabled]="!sf.valid" [nzLoading]="http.loading">保存</button>
      +  </div>
      +</sf>

      .modal-footer 已经非常友好的融合了自定

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { ModalHelper } from '@delon/theme';
      +import { DemoSfComponent } from '@shared';
      +
      +@Component({
      +  selector: 'form-modal-simple',
      +  template: `
      +    <button nz-button type="button" (click)="open()">Open</button>
      +  `,
      +})
      +export class FormModalSimpleComponent {
      +  constructor(private mh: ModalHelper) {}
      +
      +  open(): void {
      +    this.mh.create(DemoSfComponent).subscribe(console.log);
      +  }
      +}
      \ No newline at end of file diff --git a/form/modal/zh/index.html b/form/modal/zh/index.html new file mode 100644 index 000000000..5d87c5ca1 --- /dev/null +++ b/form/modal/zh/index.html @@ -0,0 +1,22 @@ +modal - NG-ALAIN
      This article has not been translated, hope that your can PR to translated it. Help us!

      模态框

      在模态框里使用表单是一种非常常见场景,其实 ng g ng-alain:edit edit 的时候会得到一个完整示例;会得到这样的一个HTML模板:

      <sf mode="edit" [schema]="schema" [ui]="ui" [formData]="i" button="none">
      +  <div class="modal-footer">
      +    <button nz-button type="button" (click)="close()">关闭</button>
      +    <button nz-button type="submit" [nzType]="'primary'" (click)="save(sf.value)" [disabled]="!sf.valid" [nzLoading]="http.loading">保存</button>
      +  </div>
      +</sf>

      .modal-footer 已经非常友好的融合了自定

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { ModalHelper } from '@delon/theme';
      +import { DemoSfComponent } from '@shared';
      +
      +@Component({
      +  selector: 'form-modal-simple',
      +  template: `
      +    <button nz-button type="button" (click)="open()">Open</button>
      +  `,
      +})
      +export class FormModalSimpleComponent {
      +  constructor(private mh: ModalHelper) {}
      +
      +  open(): void {
      +    this.mh.create(DemoSfComponent).subscribe(console.log);
      +  }
      +}
      \ No newline at end of file diff --git a/form/number/en/index.html b/form/number/en/index.html new file mode 100644 index 000000000..5f2f46fa3 --- /dev/null +++ b/form/number/en/index.html @@ -0,0 +1,35 @@ +number - NG-ALAIN

      数字

      通过鼠标或键盘,输入范围内的数值

      注意事项

      • type="integer"强制移除 minimummaximummultipleOf 参数的小数部分。

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +
      +import { SFNumberWidgetSchema, SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-number-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `
      +})
      +export class FormNumberSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      number: {
      +        type: 'number',
      +        minimum: 18,
      +        maximum: 100,
      +        multipleOf: 2,
      +        ui: { widgetWidth: 200 } as SFNumberWidgetSchema
      +      },
      +      integer: { type: 'integer', default: 10, ui: { widgetWidth: '100%' } as SFNumberWidgetSchema },
      +      unit: { type: 'number', default: 10, ui: { unit: '%' } as SFNumberWidgetSchema },
      +      prefix: { type: 'number', default: 10, ui: { prefix: '$' } as SFNumberWidgetSchema },
      +      hideStep: { type: 'number', default: 10, ui: { hideStep: true } as SFNumberWidgetSchema }
      +    }
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [minimum]最小值number-
      [exclusiveMinimum]约束是否包括 minimum 值,true 表示排除 minimumboolean-
      [maximum]最大值number-
      [exclusiveMaximum]约束是否包括 maximum 值,true 表示排除 maximumboolean-
      [multipleOf]倍数number1

      ui 属性

      成员说明类型默认值
      [prefix]前缀,简化 nzFormatternzParser 的使用--
      [unit]单位,简化 nzFormatternzParser 的使用--
      [formatter]等同 nzFormatter--
      [parser]等同 nzParser--
      [precision]等同 nzPrecision--
      [widgetWidth]指定 nz-number 宽度number, string90
      [hideStep]隐藏步数操作区booleanfalse
      [change]变更事件(val?: number) => void-

      QA

      为什么 unit 无法变更

      NG-ZORRO 所有组件都是 OnPush 模式,一种特殊情况是当需要动态修改 unit 时,由于需要触发一次 ngModel 变更时才会生效,因此需要使其值发生变更,例如:

      const ageProperty = this.sf.getProperty('/age')!;
      +ageProperty.widget.ui.unit = 'c';
      +ageProperty.widget.setValue(null);
      +ageProperty.widget.setValue(statusProperty.value);
      \ No newline at end of file diff --git a/form/number/zh/index.html b/form/number/zh/index.html new file mode 100644 index 000000000..a38f15c56 --- /dev/null +++ b/form/number/zh/index.html @@ -0,0 +1,35 @@ +number - NG-ALAIN

      数字

      通过鼠标或键盘,输入范围内的数值

      注意事项

      • type="integer"强制移除 minimummaximummultipleOf 参数的小数部分。

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +
      +import { SFNumberWidgetSchema, SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-number-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `
      +})
      +export class FormNumberSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      number: {
      +        type: 'number',
      +        minimum: 18,
      +        maximum: 100,
      +        multipleOf: 2,
      +        ui: { widgetWidth: 200 } as SFNumberWidgetSchema
      +      },
      +      integer: { type: 'integer', default: 10, ui: { widgetWidth: '100%' } as SFNumberWidgetSchema },
      +      unit: { type: 'number', default: 10, ui: { unit: '%' } as SFNumberWidgetSchema },
      +      prefix: { type: 'number', default: 10, ui: { prefix: '$' } as SFNumberWidgetSchema },
      +      hideStep: { type: 'number', default: 10, ui: { hideStep: true } as SFNumberWidgetSchema }
      +    }
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [minimum]最小值number-
      [exclusiveMinimum]约束是否包括 minimum 值,true 表示排除 minimumboolean-
      [maximum]最大值number-
      [exclusiveMaximum]约束是否包括 maximum 值,true 表示排除 maximumboolean-
      [multipleOf]倍数number1

      ui 属性

      成员说明类型默认值
      [prefix]前缀,简化 nzFormatternzParser 的使用--
      [unit]单位,简化 nzFormatternzParser 的使用--
      [formatter]等同 nzFormatter--
      [parser]等同 nzParser--
      [precision]等同 nzPrecision--
      [widgetWidth]指定 nz-number 宽度number, string90
      [hideStep]隐藏步数操作区booleanfalse
      [change]变更事件(val?: number) => void-

      QA

      为什么 unit 无法变更

      NG-ZORRO 所有组件都是 OnPush 模式,一种特殊情况是当需要动态修改 unit 时,由于需要触发一次 ngModel 变更时才会生效,因此需要使其值发生变更,例如:

      const ageProperty = this.sf.getProperty('/age')!;
      +ageProperty.widget.ui.unit = 'c';
      +ageProperty.widget.setValue(null);
      +ageProperty.widget.setValue(statusProperty.value);
      \ No newline at end of file diff --git a/form/object/en/index.html b/form/object/en/index.html new file mode 100644 index 000000000..58551717f --- /dev/null +++ b/form/object/en/index.html @@ -0,0 +1,90 @@ +object - NG-ALAIN

      对象

      创建对象,只对 schema.type="object" 时有效。

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-object-simple',
      +  template: `<sf [schema]="schema" (formSubmit)="submit($event)"></sf>`,
      +})
      +export class FormObjectSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      name: { type: 'string' },
      +      age: { type: 'number' },
      +    },
      +    required: ['name', 'age'],
      +    ui: {
      +      // 指定 `label` 和 `control` 在一行中各占栅格数
      +      spanLabel: 4,
      +      spanControl: 5,
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}
      卡片容器

      包含标题、内容、操作区域。

      expand codeexpand code
      import { Component, OnInit, TemplateRef, ViewChild } from '@angular/core';
      +import { SFObjectWidgetSchema, SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-object-card',
      +  template: `
      +    <sf *ngIf="schema" [schema]="schema" (formSubmit)="submit($event)"></sf>
      +    <ng-template #extra>
      +      <a (click)="msg.success('Success')">More</a>
      +    </ng-template>
      +  `,
      +})
      +export class FormObjectCardComponent implements OnInit {
      +  @ViewChild('extra', { static: true }) private extra!: TemplateRef<void>;
      +  schema?: SFSchema;
      +
      +  constructor(public msg: NzMessageService) {}
      +
      +  ngOnInit(): void {
      +    this.schema = {
      +      properties: {
      +        name: { type: 'string' },
      +        age: { type: 'number' },
      +        address1: {
      +          title: '地址1',
      +          type: 'object',
      +          properties: {
      +            country: { type: 'string' },
      +            city: { type: 'string' },
      +            zone: { type: 'string' },
      +          },
      +          ui: {
      +            type: 'card',
      +            cardExtra: this.extra,
      +          } as SFObjectWidgetSchema,
      +        },
      +        address2: {
      +          title: '地址2',
      +          type: 'object',
      +          properties: {
      +            country: { type: 'string' },
      +            city: { type: 'string' },
      +            zone: { type: 'string' },
      +          },
      +          ui: {
      +            type: 'card',
      +            showExpand: false,
      +          } as SFObjectWidgetSchema,
      +        },
      +      },
      +      required: ['name', 'age'],
      +      ui: {
      +        spanLabelFixed: 150,
      +        grid: { span: 12, gutter: 16 },
      +      } as SFObjectWidgetSchema,
      +    };
      +  }
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      参数说明类型默认值
      [properties]定义对象的属性{ [key: string]: SFSchema }-
      [required]必填项属性string[]-
      [maxProperties]最大属性个数,必须是非负整数number-
      [minProperties]最小属性个数,必须是非负整数number-

      ui 属性

      参数说明类型默认值
      [showExpand]是否显示扩展,点击隐藏内容,限 type === 'card'booleantrue
      [expand]展开状态,限 type === 'card'booleantrue
      [showTitle]是否显示标题booleanfalse
      [type]渲染类型card, defaultdefault
      [cardSize]等同 nzSize 属性small, defaultsmall
      [cardBodyStyle]等同 nzBodyStyle 属性{ [key: string]: string }-
      [cardBorderless]等同 nzBorderless 属性booleanfalse
      [cardExtra]等同 nzExtra 属性string, TemplateRef<void>-
      [cardActions]等同 nzActions 属性Array<TemplateRef>-
      \ No newline at end of file diff --git a/form/object/zh/index.html b/form/object/zh/index.html new file mode 100644 index 000000000..1c097022b --- /dev/null +++ b/form/object/zh/index.html @@ -0,0 +1,90 @@ +object - NG-ALAIN

      对象

      创建对象,只对 schema.type="object" 时有效。

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-object-simple',
      +  template: `<sf [schema]="schema" (formSubmit)="submit($event)"></sf>`,
      +})
      +export class FormObjectSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      name: { type: 'string' },
      +      age: { type: 'number' },
      +    },
      +    required: ['name', 'age'],
      +    ui: {
      +      // 指定 `label` 和 `control` 在一行中各占栅格数
      +      spanLabel: 4,
      +      spanControl: 5,
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}
      卡片容器

      包含标题、内容、操作区域。

      expand codeexpand code
      import { Component, OnInit, TemplateRef, ViewChild } from '@angular/core';
      +import { SFObjectWidgetSchema, SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-object-card',
      +  template: `
      +    <sf *ngIf="schema" [schema]="schema" (formSubmit)="submit($event)"></sf>
      +    <ng-template #extra>
      +      <a (click)="msg.success('Success')">More</a>
      +    </ng-template>
      +  `,
      +})
      +export class FormObjectCardComponent implements OnInit {
      +  @ViewChild('extra', { static: true }) private extra!: TemplateRef<void>;
      +  schema?: SFSchema;
      +
      +  constructor(public msg: NzMessageService) {}
      +
      +  ngOnInit(): void {
      +    this.schema = {
      +      properties: {
      +        name: { type: 'string' },
      +        age: { type: 'number' },
      +        address1: {
      +          title: '地址1',
      +          type: 'object',
      +          properties: {
      +            country: { type: 'string' },
      +            city: { type: 'string' },
      +            zone: { type: 'string' },
      +          },
      +          ui: {
      +            type: 'card',
      +            cardExtra: this.extra,
      +          } as SFObjectWidgetSchema,
      +        },
      +        address2: {
      +          title: '地址2',
      +          type: 'object',
      +          properties: {
      +            country: { type: 'string' },
      +            city: { type: 'string' },
      +            zone: { type: 'string' },
      +          },
      +          ui: {
      +            type: 'card',
      +            showExpand: false,
      +          } as SFObjectWidgetSchema,
      +        },
      +      },
      +      required: ['name', 'age'],
      +      ui: {
      +        spanLabelFixed: 150,
      +        grid: { span: 12, gutter: 16 },
      +      } as SFObjectWidgetSchema,
      +    };
      +  }
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      参数说明类型默认值
      [properties]定义对象的属性{ [key: string]: SFSchema }-
      [required]必填项属性string[]-
      [maxProperties]最大属性个数,必须是非负整数number-
      [minProperties]最小属性个数,必须是非负整数number-

      ui 属性

      参数说明类型默认值
      [showExpand]是否显示扩展,点击隐藏内容,限 type === 'card'booleantrue
      [expand]展开状态,限 type === 'card'booleantrue
      [showTitle]是否显示标题booleanfalse
      [type]渲染类型card, defaultdefault
      [cardSize]等同 nzSize 属性small, defaultsmall
      [cardBodyStyle]等同 nzBodyStyle 属性{ [key: string]: string }-
      [cardBorderless]等同 nzBorderless 属性booleanfalse
      [cardExtra]等同 nzExtra 属性string, TemplateRef<void>-
      [cardActions]等同 nzActions 属性Array<TemplateRef>-
      \ No newline at end of file diff --git a/form/qa/en/index.html b/form/qa/en/index.html new file mode 100644 index 000000000..5303f02f2 --- /dev/null +++ b/form/qa/en/index.html @@ -0,0 +1,71 @@ +常见问题 - NG-ALAIN

      常见问题

      path

      有许多方法都需要传递 path 参数,它使用 / 分隔符来表示访问表单对象路径,例如一个 JSON Schema 示例:

      schema: SFSchema = {
      +  properties: {
      +    app: {
      +      type: 'string',
      +      title: 'APP',
      +    },
      +    user: {
      +      type: 'object',
      +      properties: {
      +        name: {
      +          type: 'string',
      +        },
      +        age: {
      +          type: 'number',
      +        },
      +      }
      +    },
      +    list: {
      +      type: 'array',
      +      items: {
      +        type: 'object',
      +        properties: {
      +          key: {
      +            type: 'string',
      +          },
      +        }
      +      }
      +    }
      +  }
      +};

      以下 path 行为都有效:

      • /app

      • /user/name

      • /list/0/key 0 表示数组索引

      使用 / 开头时表示从根路径查找,反之从当前路径向下查找。

      为什么非实时校验部分自定义校验无法生效?

      由于非实时校验(设置 liveValidate:false)不会重新对每个元素执行一次校验,虽然能做到,但自定义校验有可能存在异步,无法保证执行的顺序,因此非实时校验实际只对 JSON Schema 本身的校验。

      如何动态使用 Schema?

      一般分为两种情形:

      1、Schema 定义后可能受限于某个数据来自远程

      @ViewChild('sf', { static: false }) sf: SFComponent;
      +schema: SFSchema = {
      +  properties: {
      +    app: {
      +      type: 'string',
      +      title: '附属应用',
      +      ui: 'select',
      +      enum: []
      +    }
      +  }
      +};
      +
      +ngOnInit() {
      +  this.http.get('/apps').subscribe(res => {
      +    this.schema.properties.app.enum = res;
      +    this.sf.refreshSchema();
      +  });
      +}

      2、远程 Schema

      schema: SFSchema = {
      +  properties: {}
      +};
      +
      +ngOnInit() {
      +  this.http.get('/schema').subscribe(res => this.sf.refreshSchema(res));
      +}

      什么时候使用 default

      Schema 的 default 用于设置初始化,一般情况下当修改表单时是需要提供 formData 参数,但对于增加表单来说,应该依靠 default 提供一个更友好的表单给用户。

      如何刷新特定 Schema?

      可以通过 getProperty 方法来获取某个 Schema 的属性,其属性包含 Schema 数据以及 Ui 数据,可以修改这些数据,并重新调用小部件的 reset 方法重新渲染该 Schema,例如:

      const statusProperty = this.sf.getProperty('/status')!;
      +statusProperty.schema.enum = ['1', '2', '3'];
      +statusProperty.widget.reset('2');
      +// 或手动触发 `detectChanges`
      +// statusProperty.widget.detectChanges();

      如果单纯更新某个元素数据,则:

      this.sf.getProperty('/name')?.setValue('new name');

      为什么无法校验 required

      从 Ajv 7.x 新增 strict 模式,并且默认为 true,当最基本的 required 都无法正确校验时,那大概率就是因为 Schema 包含了不符合 Json Schema 格式的信息,可以通过 debug 模式验证这一点:

      schema: SFSchema = {
      +  properties: {
      +    month: {
      +      type: 'string',
      +      format: 'month'
      +    }
      +  },
      +  required: ['month'],
      +  ui: { debug: true }
      +};

      由于这里的 format: 'month' 并不是 Json Schema 标准,因此,你可以在 Console 面板得到错误:

      Error: unknown format "month" ignored in schema at path "#/properties/month"

      解决这一问题,只能通过全局配置设置 strictfalse

      // src/app/global-config.module.ts
      +const alainConfig: AlainConfig = {
      +  sf: {
      +    ajv: { strict: false }
      +  }
      +};

      如何切换显示或隐藏某元素

      this.sf.getProperty('/mobile')?.setVisible(status).widget.detectChanges();
      \ No newline at end of file diff --git a/form/qa/zh/index.html b/form/qa/zh/index.html new file mode 100644 index 000000000..b0c33c533 --- /dev/null +++ b/form/qa/zh/index.html @@ -0,0 +1,71 @@ +常见问题 - NG-ALAIN

      常见问题

      path

      有许多方法都需要传递 path 参数,它使用 / 分隔符来表示访问表单对象路径,例如一个 JSON Schema 示例:

      schema: SFSchema = {
      +  properties: {
      +    app: {
      +      type: 'string',
      +      title: 'APP',
      +    },
      +    user: {
      +      type: 'object',
      +      properties: {
      +        name: {
      +          type: 'string',
      +        },
      +        age: {
      +          type: 'number',
      +        },
      +      }
      +    },
      +    list: {
      +      type: 'array',
      +      items: {
      +        type: 'object',
      +        properties: {
      +          key: {
      +            type: 'string',
      +          },
      +        }
      +      }
      +    }
      +  }
      +};

      以下 path 行为都有效:

      • /app

      • /user/name

      • /list/0/key 0 表示数组索引

      使用 / 开头时表示从根路径查找,反之从当前路径向下查找。

      为什么非实时校验部分自定义校验无法生效?

      由于非实时校验(设置 liveValidate:false)不会重新对每个元素执行一次校验,虽然能做到,但自定义校验有可能存在异步,无法保证执行的顺序,因此非实时校验实际只对 JSON Schema 本身的校验。

      如何动态使用 Schema?

      一般分为两种情形:

      1、Schema 定义后可能受限于某个数据来自远程

      @ViewChild('sf', { static: false }) sf: SFComponent;
      +schema: SFSchema = {
      +  properties: {
      +    app: {
      +      type: 'string',
      +      title: '附属应用',
      +      ui: 'select',
      +      enum: []
      +    }
      +  }
      +};
      +
      +ngOnInit() {
      +  this.http.get('/apps').subscribe(res => {
      +    this.schema.properties.app.enum = res;
      +    this.sf.refreshSchema();
      +  });
      +}

      2、远程 Schema

      schema: SFSchema = {
      +  properties: {}
      +};
      +
      +ngOnInit() {
      +  this.http.get('/schema').subscribe(res => this.sf.refreshSchema(res));
      +}

      什么时候使用 default

      Schema 的 default 用于设置初始化,一般情况下当修改表单时是需要提供 formData 参数,但对于增加表单来说,应该依靠 default 提供一个更友好的表单给用户。

      如何刷新特定 Schema?

      可以通过 getProperty 方法来获取某个 Schema 的属性,其属性包含 Schema 数据以及 Ui 数据,可以修改这些数据,并重新调用小部件的 reset 方法重新渲染该 Schema,例如:

      const statusProperty = this.sf.getProperty('/status')!;
      +statusProperty.schema.enum = ['1', '2', '3'];
      +statusProperty.widget.reset('2');
      +// 或手动触发 `detectChanges`
      +// statusProperty.widget.detectChanges();

      如果单纯更新某个元素数据,则:

      this.sf.getProperty('/name')?.setValue('new name');

      为什么无法校验 required

      从 Ajv 7.x 新增 strict 模式,并且默认为 true,当最基本的 required 都无法正确校验时,那大概率就是因为 Schema 包含了不符合 Json Schema 格式的信息,可以通过 debug 模式验证这一点:

      schema: SFSchema = {
      +  properties: {
      +    month: {
      +      type: 'string',
      +      format: 'month'
      +    }
      +  },
      +  required: ['month'],
      +  ui: { debug: true }
      +};

      由于这里的 format: 'month' 并不是 Json Schema 标准,因此,你可以在 Console 面板得到错误:

      Error: unknown format "month" ignored in schema at path "#/properties/month"

      解决这一问题,只能通过全局配置设置 strictfalse

      // src/app/global-config.module.ts
      +const alainConfig: AlainConfig = {
      +  sf: {
      +    ajv: { strict: false }
      +  }
      +};

      如何切换显示或隐藏某元素

      this.sf.getProperty('/mobile')?.setVisible(status).widget.detectChanges();
      \ No newline at end of file diff --git a/form/radio/en/index.html b/form/radio/en/index.html new file mode 100644 index 000000000..74fcdbc51 --- /dev/null +++ b/form/radio/en/index.html @@ -0,0 +1,48 @@ +radio - NG-ALAIN

      单选框

      单选框。

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFRadioWidgetSchema, SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +import { of, delay } from 'rxjs';
      +
      +@Component({
      +  selector: 'form-radio-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormRadioSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      btn: {
      +        type: 'string',
      +        title: 'Button',
      +        enum: ['A', 'B', 'C'],
      +        ui: {
      +          widget: 'radio',
      +          styleType: 'button',
      +          buttonStyle: 'solid',
      +        } as SFRadioWidgetSchema,
      +        default: 'A',
      +      },
      +      // 异步数据
      +      async: {
      +        type: 'string',
      +        title: 'Async',
      +        ui: {
      +          widget: 'radio',
      +          asyncData: () =>
      +            of([
      +              { label: '男', value: 'M' },
      +              { label: '女', value: 'F' },
      +              { label: '未知', value: 'N' },
      +            ]).pipe(delay(100)),
      +          change: console.log,
      +        } as SFRadioWidgetSchema,
      +        default: 'N',
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      参数说明类型默认值
      [enum]数据源SFSchemaEnumType[]-
      [readOnly]禁用状态boolean-

      ui 属性

      参数说明类型默认值
      [asyncData]异步数据源() => Observable<SFSchemaEnumType[]>-
      [size]大小,等同 nzSizestring-
      [styleType]radio 的样式default, buttondefault
      [change]值变更事件(res: SFValue) => void-
      [buttonStyle]RadioButton 的风格样式,目前有描边和填色两种风格'outline'|'solid''outline'
      \ No newline at end of file diff --git a/form/radio/zh/index.html b/form/radio/zh/index.html new file mode 100644 index 000000000..e675db836 --- /dev/null +++ b/form/radio/zh/index.html @@ -0,0 +1,48 @@ +radio - NG-ALAIN

      单选框

      单选框。

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFRadioWidgetSchema, SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +import { of, delay } from 'rxjs';
      +
      +@Component({
      +  selector: 'form-radio-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormRadioSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      btn: {
      +        type: 'string',
      +        title: 'Button',
      +        enum: ['A', 'B', 'C'],
      +        ui: {
      +          widget: 'radio',
      +          styleType: 'button',
      +          buttonStyle: 'solid',
      +        } as SFRadioWidgetSchema,
      +        default: 'A',
      +      },
      +      // 异步数据
      +      async: {
      +        type: 'string',
      +        title: 'Async',
      +        ui: {
      +          widget: 'radio',
      +          asyncData: () =>
      +            of([
      +              { label: '男', value: 'M' },
      +              { label: '女', value: 'F' },
      +              { label: '未知', value: 'N' },
      +            ]).pipe(delay(100)),
      +          change: console.log,
      +        } as SFRadioWidgetSchema,
      +        default: 'N',
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      参数说明类型默认值
      [enum]数据源SFSchemaEnumType[]-
      [readOnly]禁用状态boolean-

      ui 属性

      参数说明类型默认值
      [asyncData]异步数据源() => Observable<SFSchemaEnumType[]>-
      [size]大小,等同 nzSizestring-
      [styleType]radio 的样式default, buttondefault
      [change]值变更事件(res: SFValue) => void-
      [buttonStyle]RadioButton 的风格样式,目前有描边和填色两种风格'outline'|'solid''outline'
      \ No newline at end of file diff --git a/form/rate/en/index.html b/form/rate/en/index.html new file mode 100644 index 000000000..278ac37d0 --- /dev/null +++ b/form/rate/en/index.html @@ -0,0 +1,40 @@ +rate - NG-ALAIN

      评分

      对评价进行展示,对事物进行快速的评级操作。

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFRateWidgetSchema, SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-rate-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormRateSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      rate: {
      +        type: 'number',
      +        title: '评级',
      +        default: 4.5,
      +        ui: {
      +          widget: 'rate',
      +        } as SFRateWidgetSchema,
      +      },
      +      // 允许半选
      +      rate2: {
      +        type: 'number',
      +        title: '评级',
      +        maximum: 5,
      +        multipleOf: 0.5,
      +        default: 4.5,
      +        ui: {
      +          widget: 'rate',
      +          text: '{{value}} starts',
      +        } as SFRateWidgetSchema,
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [maximum]总星数number5
      [multipleOf]0.5 表示允许半选,其它值表示不允许number0.5

      ui 属性

      成员说明类型默认值
      [allowClear]是否允许再次点击后清除booleantrue
      [autoFocus]自动获取焦点booleanfalse
      [text]提醒文本模板,{{value}} 表示当前值(注意无任何空格)string-
      [tooltips]自定义每项的提示信息string[][]
      \ No newline at end of file diff --git a/form/rate/zh/index.html b/form/rate/zh/index.html new file mode 100644 index 000000000..48ba7ce83 --- /dev/null +++ b/form/rate/zh/index.html @@ -0,0 +1,40 @@ +rate - NG-ALAIN

      评分

      对评价进行展示,对事物进行快速的评级操作。

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFRateWidgetSchema, SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-rate-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormRateSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      rate: {
      +        type: 'number',
      +        title: '评级',
      +        default: 4.5,
      +        ui: {
      +          widget: 'rate',
      +        } as SFRateWidgetSchema,
      +      },
      +      // 允许半选
      +      rate2: {
      +        type: 'number',
      +        title: '评级',
      +        maximum: 5,
      +        multipleOf: 0.5,
      +        default: 4.5,
      +        ui: {
      +          widget: 'rate',
      +          text: '{{value}} starts',
      +        } as SFRateWidgetSchema,
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [maximum]总星数number5
      [multipleOf]0.5 表示允许半选,其它值表示不允许number0.5

      ui 属性

      成员说明类型默认值
      [allowClear]是否允许再次点击后清除booleantrue
      [autoFocus]自动获取焦点booleanfalse
      [text]提醒文本模板,{{value}} 表示当前值(注意无任何空格)string-
      [tooltips]自定义每项的提示信息string[][]
      \ No newline at end of file diff --git a/form/schema/en/index.html b/form/schema/en/index.html new file mode 100644 index 000000000..106e2715d --- /dev/null +++ b/form/schema/en/index.html @@ -0,0 +1,83 @@ +Schema - NG-ALAIN

      Schema

      写在前面

      JSON Schema 是一种标准的定义 JSON 数据结构的规范,并不包含对这些规范转换成表单具体说明,@delon/form 也是根据自己的理解并结合 ng-zorro-antd 现有数据录入组件库产生的动态构建表单类库。

      JSON Schema 始终都必须有一个类型为 type="object" 作为根节点,因此一个最简单的 Schema 结构至少是:

      schema = {
      +  type: 'object', // 可有可无,默认会强制为 `object`
      +  properties: {}
      +}

      在描述 Schema 说明之前,有必要对表单元素与 Schema 之前的联系做一个系统性说明。

      我们知道,表单是由一组HTML元素组件,每一个元素对应一个 Schema 属性,属性有自己的数据类型、格式信息、视觉信息等,但这些信息不足以表述 ng-zorro-antd 所提供的丰富API接口。为了更好利用这些API接口,@delon/form 除了实现绝大部分 JSON Schema 标准以外,额外唯一增加了一个 ui 属性用于表述属性如何渲染的问题。

      无污染

      当然若你对标准有非常严格,或者 JSON Schema 数据结构是来自后端的产生时,可以通过 <sf [ui]="ui"> 来额外对当前 JSON Schema 添加 UI 渲染。例如:

      schema = {
      +  properties: {
      +    url: {
      +      type: 'string',
      +      title: 'Web Site'
      +    }
      +  }
      +}

      一个URL属性,若我们不希望用于添加 https:// 前缀的情况下,就单纯的 JSON Schema 结构是无法表述,而 nz-input 又支持非常丰富的前后缀文本,则我们可以为 ui 定制并增加 https:// 的前缀文本:

      ui = {
      +  $url: {
      +    addOnBefore: 'https://'
      +  }
      +}

      ui 本身也是一个 JSON 结构,为了区分 JSON Schema 属性名的对应关系,必须统一对属性名加上 $ 前缀;对于数组的元素对象必须使用 $items 替代。当KEY为 * 时表示对所有子表单元素都有效。

      表单元素与数据结构的对应关系

      一个完整的表单元素我们认为应该包含以下若干元素:

      从左至向各元素描述:

      结构源参数说明类型默认值
      Schema[required]是否必填项string[]-
      Schema[title]属性描述string-
      ui[optional]标签可选信息string-
      ui[optionalHelp]标签可选帮助string, SFOptionalHelp-
      ui[placeholder]文字框中显示提示信息string-
      Schema[description]属性目的性解释string-
      -[error]错误信息string-

      一点规范

      • 所有 key 按驼峰式命名法

      • 若你对 JSON Schema 很熟悉,则忽略 不建议 字样

      JSON Schema(SFSchema)

      JSON Schema 有完整的对每个属性的规范描述,@delon/form 当前是基于 draft-07 规范,下列是规范具体说明:

      常规类

      参数说明类型默认值
      [type]数据类型,支持 JavaScript 基础类型number,string,boolean,object,arrayobject
      [enum]枚举,静态数据源SFSchemaEnumType[]-

      数值类型

      参数说明类型默认值
      [minimum]最小值number-
      [exclusiveMinimum]约束是否包括 minimumboolean-
      [maximum]最大值number-
      [exclusiveMaximum]约束是否包括 maximumboolean-
      [multipleOf]倍数number-

      关于exclusiveMinimum和exclusiveMaximum

      sf 的实现机制导致无法很好的处理 type 类型的错误捕获,因此默认情况下 sf 是忽略了所有 type (见 config.ts)类型错误,而这两种都错误都会被认为 type 类型错误,从而导致触发无效检查的原因。(更多细节请参考 #676

      字符串类型

      参数说明类型默认值
      [maxLength]定义字符串的最大长度number-
      [minLength]定义字符串的最小长度number-
      [pattern]验证输入字段正则表达式字符串string-

      数组类型

      参数说明类型默认值
      [items]数组元素类型描述,只支持数组对象,若需要基础类型数组可通过其他部件支持SFSchema-
      [minItems]约束数组最小的元素个数number-
      [maxItems]约束数组最大的元素个数number-
      [uniqueItems]约束数组每个元素都不相同boolean-
      [additionalItems]数组额外元素的校验规则SFSchema-

      对象类型

      参数说明类型默认值
      [maxProperties]最大属性个数,必须是非负整数number-
      [minProperties]最小属性个数,必须是非负整数number-
      [required]必需属性string[]-
      [properties]定义属性{ [key: string]: SFSchema }-

      条件类

      参数说明类型默认值
      [if]条件验证SFSchema-
      [then]条件验证SFSchema-
      [else]条件验证SFSchema-

      条件类的校验非常强大和丰富,但是出于会破坏UI导致整个组件构建更复杂,@delon/form 仅实现 required 的处理,并且把它当成是否显示校验目标,比如:一个登录页,会根据不同登录方式来显示不同登录模式:

      schema: SFSchema = {
      +  properties: {
      +    type: { type: 'string', enum: [ 'mobile', 'name' ], default: 'mobile' },
      +    name: { type: 'string' },
      +    pwd: { type: 'string' },
      +    mobile: { type: 'string' },
      +    code: { type: 'string' }
      +  },
      +  required: [ 'type' ],
      +  if: {
      +    properties: { type: { enum: [ 'mobile' ] } }
      +  },
      +  then: {
      +    required: [ 'mobile', 'code' ]
      +  },
      +  else: {
      +    required: [ 'name', 'pwd' ]
      +  }
      +};

      上述的最终行为是当登录方式为 mobile 时UI显示 mobilecode,反之UI显示 namepwd

      其实条件类最终被解析成 ui.visibleIf,将其转换成如下:

      {
      +  properties: {
      +    login_type: {
      +      type: "string",
      +      title: "登录方式",
      +      enum: [
      +        { label: "手机", value: "mobile" },
      +        { label: "账密", value: "account" }
      +      ],
      +      default: "mobile",
      +      ui: {
      +        widget: "radio",
      +        styleType: "button"
      +      }
      +    },
      +    mobile: {
      +      type: "string",
      +      ui: {
      +        visibleIf: {
      +          login_type: val => val === "mobile"
      +        }
      +      }
      +    },
      +    code: {
      +      type: "number",
      +      ui: {
      +        visibleIf: {
      +          login_type: val => val === "mobile"
      +        }
      +      }
      +    },
      +    name: {
      +      type: "string",
      +      ui: {
      +        visibleIf: {
      +          login_type: val => val === "account"
      +        }
      +      }
      +    },
      +    pwd: {
      +      type: "string",
      +      ui: {
      +        type: "password",
      +        visibleIf: {
      +          login_type: val => val === "account"
      +        }
      +      }
      +    }
      +  },
      +  required: ["login_type"]
      +};

      逻辑类

      参数说明类型默认值
      [allOf]不建议 使用,可用 required 替代SFSchema[]-
      [anyOf]不建议 使用,可用 requiredminProperties 替代SFSchema[]-
      [oneOf]不建议 使用,值必须是其中之一SFSchema[]-

      不建议 主要是并没有对逻辑类进行UI相关处理,它同条件类类似,会影响UI渲染。

      格式与视觉类

      参数说明类型默认值
      [title]属性描述string-
      [description]属性目的性解释string-
      [default]默认值any-
      [readOnly]是否只读状态,等同 nzDisabledboolean-
      [format]数据格式,文档string-

      其他

      参数说明类型默认值
      [definitions]内部类型定义体SFSchemaDefinition-
      [$ref]引用定义体string-
      [$comment]针对开发者的注释,无任何意义,也不会被校验string-

      非标准

      参数说明类型默认值
      [ui]指定UI配置信息,优先级高于 sf 组件 ui 属性值SFUISchemaItem-

      UI(SFUISchemaItem)

      UI Schema 结构由通用性和小部件API两部分组成,以下是通用性部分进行接口说明,小部件部分自行参数小部件API。

      为了小部件的API完整性,小部件Schema说明可能也会包含下列通用性部分。

      SFUISchema

      等同 <sf [ui]="ui"> 一组与 JSON Schema 结构相对应的 UI 结构体,类型为:[ key: string ]: SFUISchemaItem

      基础类

      参数说明类型默认值
      [debug]调试模式boolean-
      [order]属性顺序string[]-
      [asyncData]异步静态数据源(input?: any) => Observable<SFSchemaEnumType[]>-
      [hidden]是否隐藏渲染booleanfalse
      [visibleIf]指定条件时才显示{ [key: string]: any[] | ((value: any, property: FormProperty) => boolean) }-
      [visibleIfLogical]指定多个 visibleIf 时采用的逻辑关系or, andor
      [acl]ACL权限,等同 can() 参数值ACLCanType-

      visibleIf

      指定条件时才显示,例如:

      • visibleIf: { shown: [ true ] }:当 shown: true 时才显示当前属性

      • visibleIf: { shown: [ '$ANY$' ] }:当 shown 包括任意值时

      • visibleIf: { shown: (value: any, property: FormProperty) => value > 0 }:复杂表达式

      校验类

      参数说明类型默认值
      [liveValidate]是否实时校验booleantrue
      [firstVisual]是否立即呈现错误视觉booleanfalse
      [onlyVisual]是否只展示错误视觉不显示错误文本booleanfalse
      [ingoreKeywords]忽略某些数据类型校验string[]
      [errors]自定义错误信息文本{ [ key: string ]: string | ((obj: ErrorData) => string) }-
      [showRequired]是否展示必填项标识 *boolean-
      [validator]自定义校验,最后结果会与 Ajv 校验结果进行合并显示(value: any, formProperty: FormProperty, form: PropertyGroup) => ErrorData[]-

      数组类

      参数说明类型默认值
      [items]指定子元素的UISFUISchema-
      [addTitle]指定添加按钮文本string添加
      [addType]指定添加按钮风格,等同按钮 nzTypestringdashed
      [removable]指定是否显示移除按钮boolean-
      [removeTitle]指定移除按钮文本string移除

      表单元素类

      参数说明类型默认值
      [type]指定 inputtypestringtext
      [placeholder]文字框中显示提示信息string-
      [autofocus]加载时是否获得焦点boolean-

      渲染类

      参数说明类型默认值
      [widget]指定采用什么小部件渲染string-
      [i18n]schema.title 的国际化键值string-
      [descriptionI18n]schema.description 的国际化键值string-
      [class]自定义类,等同 [ngClass]string,string[]-
      [width]指定宽度,单位:pxnumber-
      [size]元素组件大小default,large,small-
      [grid]响应式属性SFGridSchema-
      [optional]标签可选信息string-
      [optionalHelp]标签可选帮助string, SFOptionalHelp-

      响应式属性 SFGridSchema

      grid 属性等同完整的 Grid栅格系统,透过 grid 可以决定表单如何渲染。

      参数说明类型默认值
      [gutter]栅格间隔number-
      [span]每个表单元素栅格占位格数,为 0 时相当于 display: nonenumber-
      [xs]<768px 响应式栅格,可为栅格数或一个包含其他属性的对象number, SFGridSizeSchema-
      [sm]≥768px 响应式栅格,可为栅格数或一个包含其他属性的对象number, SFGridSizeSchema-
      [md]≥992px 响应式栅格,可为栅格数或一个包含其他属性的对象number, SFGridSizeSchema-
      [lg]≥1200px 响应式栅格,可为栅格数或一个包含其他属性的对象number, SFGridSizeSchema-
      [xl]≥1600px 响应式栅格,可为栅格数或一个包含其他属性的对象number, SFGridSizeSchema-
      [xxl]保留字段,0.7.0 后支持number, SFGridSizeSchema-

      水平布局类 Schema

      务必二者总和为 24

      参数说明类型默认值
      [spanLabel]label 所占栅格数number5
      [spanControl]表单控件所占栅格数number19
      [offsetControl]control 栅格左侧的间隔格数,间隔内不可以有栅格number-
      [spanLabelFixed]label 固定宽度number-
      \ No newline at end of file diff --git a/form/schema/zh/index.html b/form/schema/zh/index.html new file mode 100644 index 000000000..fd7f65f5a --- /dev/null +++ b/form/schema/zh/index.html @@ -0,0 +1,83 @@ +Schema - NG-ALAIN

      Schema

      写在前面

      JSON Schema 是一种标准的定义 JSON 数据结构的规范,并不包含对这些规范转换成表单具体说明,@delon/form 也是根据自己的理解并结合 ng-zorro-antd 现有数据录入组件库产生的动态构建表单类库。

      JSON Schema 始终都必须有一个类型为 type="object" 作为根节点,因此一个最简单的 Schema 结构至少是:

      schema = {
      +  type: 'object', // 可有可无,默认会强制为 `object`
      +  properties: {}
      +}

      在描述 Schema 说明之前,有必要对表单元素与 Schema 之前的联系做一个系统性说明。

      我们知道,表单是由一组HTML元素组件,每一个元素对应一个 Schema 属性,属性有自己的数据类型、格式信息、视觉信息等,但这些信息不足以表述 ng-zorro-antd 所提供的丰富API接口。为了更好利用这些API接口,@delon/form 除了实现绝大部分 JSON Schema 标准以外,额外唯一增加了一个 ui 属性用于表述属性如何渲染的问题。

      无污染

      当然若你对标准有非常严格,或者 JSON Schema 数据结构是来自后端的产生时,可以通过 <sf [ui]="ui"> 来额外对当前 JSON Schema 添加 UI 渲染。例如:

      schema = {
      +  properties: {
      +    url: {
      +      type: 'string',
      +      title: 'Web Site'
      +    }
      +  }
      +}

      一个URL属性,若我们不希望用于添加 https:// 前缀的情况下,就单纯的 JSON Schema 结构是无法表述,而 nz-input 又支持非常丰富的前后缀文本,则我们可以为 ui 定制并增加 https:// 的前缀文本:

      ui = {
      +  $url: {
      +    addOnBefore: 'https://'
      +  }
      +}

      ui 本身也是一个 JSON 结构,为了区分 JSON Schema 属性名的对应关系,必须统一对属性名加上 $ 前缀;对于数组的元素对象必须使用 $items 替代。当KEY为 * 时表示对所有子表单元素都有效。

      表单元素与数据结构的对应关系

      一个完整的表单元素我们认为应该包含以下若干元素:

      从左至向各元素描述:

      结构源参数说明类型默认值
      Schema[required]是否必填项string[]-
      Schema[title]属性描述string-
      ui[optional]标签可选信息string-
      ui[optionalHelp]标签可选帮助string, SFOptionalHelp-
      ui[placeholder]文字框中显示提示信息string-
      Schema[description]属性目的性解释string-
      -[error]错误信息string-

      一点规范

      • 所有 key 按驼峰式命名法

      • 若你对 JSON Schema 很熟悉,则忽略 不建议 字样

      JSON Schema(SFSchema)

      JSON Schema 有完整的对每个属性的规范描述,@delon/form 当前是基于 draft-07 规范,下列是规范具体说明:

      常规类

      参数说明类型默认值
      [type]数据类型,支持 JavaScript 基础类型number,string,boolean,object,arrayobject
      [enum]枚举,静态数据源SFSchemaEnumType[]-

      数值类型

      参数说明类型默认值
      [minimum]最小值number-
      [exclusiveMinimum]约束是否包括 minimumboolean-
      [maximum]最大值number-
      [exclusiveMaximum]约束是否包括 maximumboolean-
      [multipleOf]倍数number-

      关于exclusiveMinimum和exclusiveMaximum

      sf 的实现机制导致无法很好的处理 type 类型的错误捕获,因此默认情况下 sf 是忽略了所有 type (见 config.ts)类型错误,而这两种都错误都会被认为 type 类型错误,从而导致触发无效检查的原因。(更多细节请参考 #676

      字符串类型

      参数说明类型默认值
      [maxLength]定义字符串的最大长度number-
      [minLength]定义字符串的最小长度number-
      [pattern]验证输入字段正则表达式字符串string-

      数组类型

      参数说明类型默认值
      [items]数组元素类型描述,只支持数组对象,若需要基础类型数组可通过其他部件支持SFSchema-
      [minItems]约束数组最小的元素个数number-
      [maxItems]约束数组最大的元素个数number-
      [uniqueItems]约束数组每个元素都不相同boolean-
      [additionalItems]数组额外元素的校验规则SFSchema-

      对象类型

      参数说明类型默认值
      [maxProperties]最大属性个数,必须是非负整数number-
      [minProperties]最小属性个数,必须是非负整数number-
      [required]必需属性string[]-
      [properties]定义属性{ [key: string]: SFSchema }-

      条件类

      参数说明类型默认值
      [if]条件验证SFSchema-
      [then]条件验证SFSchema-
      [else]条件验证SFSchema-

      条件类的校验非常强大和丰富,但是出于会破坏UI导致整个组件构建更复杂,@delon/form 仅实现 required 的处理,并且把它当成是否显示校验目标,比如:一个登录页,会根据不同登录方式来显示不同登录模式:

      schema: SFSchema = {
      +  properties: {
      +    type: { type: 'string', enum: [ 'mobile', 'name' ], default: 'mobile' },
      +    name: { type: 'string' },
      +    pwd: { type: 'string' },
      +    mobile: { type: 'string' },
      +    code: { type: 'string' }
      +  },
      +  required: [ 'type' ],
      +  if: {
      +    properties: { type: { enum: [ 'mobile' ] } }
      +  },
      +  then: {
      +    required: [ 'mobile', 'code' ]
      +  },
      +  else: {
      +    required: [ 'name', 'pwd' ]
      +  }
      +};

      上述的最终行为是当登录方式为 mobile 时UI显示 mobilecode,反之UI显示 namepwd

      其实条件类最终被解析成 ui.visibleIf,将其转换成如下:

      {
      +  properties: {
      +    login_type: {
      +      type: "string",
      +      title: "登录方式",
      +      enum: [
      +        { label: "手机", value: "mobile" },
      +        { label: "账密", value: "account" }
      +      ],
      +      default: "mobile",
      +      ui: {
      +        widget: "radio",
      +        styleType: "button"
      +      }
      +    },
      +    mobile: {
      +      type: "string",
      +      ui: {
      +        visibleIf: {
      +          login_type: val => val === "mobile"
      +        }
      +      }
      +    },
      +    code: {
      +      type: "number",
      +      ui: {
      +        visibleIf: {
      +          login_type: val => val === "mobile"
      +        }
      +      }
      +    },
      +    name: {
      +      type: "string",
      +      ui: {
      +        visibleIf: {
      +          login_type: val => val === "account"
      +        }
      +      }
      +    },
      +    pwd: {
      +      type: "string",
      +      ui: {
      +        type: "password",
      +        visibleIf: {
      +          login_type: val => val === "account"
      +        }
      +      }
      +    }
      +  },
      +  required: ["login_type"]
      +};

      逻辑类

      参数说明类型默认值
      [allOf]不建议 使用,可用 required 替代SFSchema[]-
      [anyOf]不建议 使用,可用 requiredminProperties 替代SFSchema[]-
      [oneOf]不建议 使用,值必须是其中之一SFSchema[]-

      不建议 主要是并没有对逻辑类进行UI相关处理,它同条件类类似,会影响UI渲染。

      格式与视觉类

      参数说明类型默认值
      [title]属性描述string-
      [description]属性目的性解释string-
      [default]默认值any-
      [readOnly]是否只读状态,等同 nzDisabledboolean-
      [format]数据格式,文档string-

      其他

      参数说明类型默认值
      [definitions]内部类型定义体SFSchemaDefinition-
      [$ref]引用定义体string-
      [$comment]针对开发者的注释,无任何意义,也不会被校验string-

      非标准

      参数说明类型默认值
      [ui]指定UI配置信息,优先级高于 sf 组件 ui 属性值SFUISchemaItem-

      UI(SFUISchemaItem)

      UI Schema 结构由通用性和小部件API两部分组成,以下是通用性部分进行接口说明,小部件部分自行参数小部件API。

      为了小部件的API完整性,小部件Schema说明可能也会包含下列通用性部分。

      SFUISchema

      等同 <sf [ui]="ui"> 一组与 JSON Schema 结构相对应的 UI 结构体,类型为:[ key: string ]: SFUISchemaItem

      基础类

      参数说明类型默认值
      [debug]调试模式boolean-
      [order]属性顺序string[]-
      [asyncData]异步静态数据源(input?: any) => Observable<SFSchemaEnumType[]>-
      [hidden]是否隐藏渲染booleanfalse
      [visibleIf]指定条件时才显示{ [key: string]: any[] | ((value: any, property: FormProperty) => boolean) }-
      [visibleIfLogical]指定多个 visibleIf 时采用的逻辑关系or, andor
      [acl]ACL权限,等同 can() 参数值ACLCanType-

      visibleIf

      指定条件时才显示,例如:

      • visibleIf: { shown: [ true ] }:当 shown: true 时才显示当前属性

      • visibleIf: { shown: [ '$ANY$' ] }:当 shown 包括任意值时

      • visibleIf: { shown: (value: any, property: FormProperty) => value > 0 }:复杂表达式

      校验类

      参数说明类型默认值
      [liveValidate]是否实时校验booleantrue
      [firstVisual]是否立即呈现错误视觉booleanfalse
      [onlyVisual]是否只展示错误视觉不显示错误文本booleanfalse
      [ingoreKeywords]忽略某些数据类型校验string[]
      [errors]自定义错误信息文本{ [ key: string ]: string | ((obj: ErrorData) => string) }-
      [showRequired]是否展示必填项标识 *boolean-
      [validator]自定义校验,最后结果会与 Ajv 校验结果进行合并显示(value: any, formProperty: FormProperty, form: PropertyGroup) => ErrorData[]-

      数组类

      参数说明类型默认值
      [items]指定子元素的UISFUISchema-
      [addTitle]指定添加按钮文本string添加
      [addType]指定添加按钮风格,等同按钮 nzTypestringdashed
      [removable]指定是否显示移除按钮boolean-
      [removeTitle]指定移除按钮文本string移除

      表单元素类

      参数说明类型默认值
      [type]指定 inputtypestringtext
      [placeholder]文字框中显示提示信息string-
      [autofocus]加载时是否获得焦点boolean-

      渲染类

      参数说明类型默认值
      [widget]指定采用什么小部件渲染string-
      [i18n]schema.title 的国际化键值string-
      [descriptionI18n]schema.description 的国际化键值string-
      [class]自定义类,等同 [ngClass]string,string[]-
      [width]指定宽度,单位:pxnumber-
      [size]元素组件大小default,large,small-
      [grid]响应式属性SFGridSchema-
      [optional]标签可选信息string-
      [optionalHelp]标签可选帮助string, SFOptionalHelp-

      响应式属性 SFGridSchema

      grid 属性等同完整的 Grid栅格系统,透过 grid 可以决定表单如何渲染。

      参数说明类型默认值
      [gutter]栅格间隔number-
      [span]每个表单元素栅格占位格数,为 0 时相当于 display: nonenumber-
      [xs]<768px 响应式栅格,可为栅格数或一个包含其他属性的对象number, SFGridSizeSchema-
      [sm]≥768px 响应式栅格,可为栅格数或一个包含其他属性的对象number, SFGridSizeSchema-
      [md]≥992px 响应式栅格,可为栅格数或一个包含其他属性的对象number, SFGridSizeSchema-
      [lg]≥1200px 响应式栅格,可为栅格数或一个包含其他属性的对象number, SFGridSizeSchema-
      [xl]≥1600px 响应式栅格,可为栅格数或一个包含其他属性的对象number, SFGridSizeSchema-
      [xxl]保留字段,0.7.0 后支持number, SFGridSizeSchema-

      水平布局类 Schema

      务必二者总和为 24

      参数说明类型默认值
      [spanLabel]label 所占栅格数number5
      [spanControl]表单控件所占栅格数number19
      [offsetControl]control 栅格左侧的间隔格数,间隔内不可以有栅格number-
      [spanLabelFixed]label 固定宽度number-
      \ No newline at end of file diff --git a/form/select/en/index.html b/form/select/en/index.html new file mode 100644 index 000000000..8e8509520 --- /dev/null +++ b/form/select/en/index.html @@ -0,0 +1,257 @@ +select - NG-ALAIN

      选择器

      下拉选择器。

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component, ViewChild } from '@angular/core';
      +import { of, delay } from 'rxjs';
      +
      +import { SFComponent, SFSchema, SFSelectWidgetSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-select-simple',
      +  template: `
      +    <sf #sf [schema]="schema" (formSubmit)="submit($event)"></sf>
      +    <button nz-button (click)="updateStatus()">Update Status</button>
      +  `
      +})
      +export class FormSelectSimpleComponent {
      +  @ViewChild('sf', { static: false }) private sf!: SFComponent;
      +  schema: SFSchema = {
      +    properties: {
      +      status: {
      +        type: 'string',
      +        title: '状态',
      +        enum: [
      +          { label: '待支付', value: 'WAIT_BUYER_PAY', otherData: 1 },
      +          { label: '已支付', value: 'TRADE_SUCCESS' },
      +          { label: '交易完成', value: 'TRADE_FINISHED' }
      +        ],
      +        default: 'WAIT_BUYER_PAY',
      +        ui: {
      +          widget: 'select',
      +          change: (value, orgData) => console.log(value, orgData)
      +        } as SFSelectWidgetSchema
      +      },
      +      // 标签
      +      tags: {
      +        type: 'string',
      +        title: '标签',
      +        enum: [
      +          { label: '待支付', value: 'WAIT_BUYER_PAY' },
      +          { label: '已支付', value: 'TRADE_SUCCESS' },
      +          { label: '交易完成', value: 'TRADE_FINISHED' }
      +        ],
      +        ui: {
      +          widget: 'select',
      +          mode: 'tags'
      +        } as SFSelectWidgetSchema,
      +        default: null
      +      },
      +      // 异步数据
      +      async: {
      +        type: 'string',
      +        title: 'Async',
      +        default: 'WAIT_BUYER_PAY',
      +        ui: {
      +          widget: 'select',
      +          asyncData: () =>
      +            of([
      +              {
      +                label: '订单状态',
      +                group: true,
      +                children: [
      +                  { label: '待支付', value: 'WAIT_BUYER_PAY' },
      +                  { label: '已支付', value: 'TRADE_SUCCESS' },
      +                  { label: '交易完成', value: 'TRADE_FINISHED' }
      +                ]
      +              }
      +            ]).pipe(delay(1200))
      +        } as SFSelectWidgetSchema
      +      },
      +      hide: {
      +        type: 'string',
      +        title: '隐藏项',
      +        enum: [
      +          { label: '第1个', value: 1 },
      +          { label: '第2个', value: 2, hide: true },
      +          { label: '第3个(第2个被隐藏了)', value: 3 }
      +        ],
      +        default: 1
      +      }
      +    }
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +
      +  updateStatus(): void {
      +    const statusProperty = this.sf.getProperty('/status')!;
      +    statusProperty.schema.enum = ['1', '2', '3'];
      +    statusProperty.widget.reset('2');
      +  }
      +}
      联动

      省市联动是典型的例子。

      expand codeexpand code
      import { Component, ViewChild } from '@angular/core';
      +import { SFComponent, SFSchema, SFSelectWidgetSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +import { of, delay, tap } from 'rxjs';
      +
      +@Component({
      +  selector: 'form-select-coordinate',
      +  template: ` <sf #sf [schema]="schema" [formData]="data" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormSelectCoordinateComponent {
      +  @ViewChild('sf', { static: false }) private sf!: SFComponent;
      +  data = {
      +    province: 'Zhejiang',
      +    city: 'Ningbo',
      +  };
      +  private cityData: { [place: string]: string[] } = {
      +    Zhejiang: ['Hangzhou', 'Ningbo', 'Wenzhou'],
      +    Jiangsu: ['Nanjing', 'Suzhou', 'Zhenjiang'],
      +  };
      +  schema: SFSchema = {
      +    properties: {
      +      province: {
      +        type: 'string',
      +        title: 'Province',
      +        ui: {
      +          widget: 'select',
      +          asyncData: () =>
      +            of(['Zhejiang', 'Jiangsu']).pipe(
      +              delay(100),
      +              tap(() => this.updateCity(this.data.province, this.data.city)),
      +            ),
      +          change: i => this.updateCity(i),
      +        } as SFSelectWidgetSchema,
      +      },
      +      city: {
      +        type: 'string',
      +        title: 'City',
      +        ui: {
      +          widget: 'select',
      +        } as SFSelectWidgetSchema,
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +
      +  private updateCity(province: string, city: string = ''): void {
      +    const cityProperty = this.sf.getProperty('/city')!;
      +    const items = this.cityData[province];
      +    cityProperty.schema.enum = items;
      +    cityProperty.widget.reset(city || items[0]);
      +  }
      +}
      扩展菜单

      使用 dropdownRender 对下拉菜单进行自由扩展。

      expand codeexpand code
      import { Component, OnInit, TemplateRef, ViewChild } from '@angular/core';
      +import { SFComponent, SFSchema, SFSelectWidgetSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-select-custom-dropdown-menu',
      +  template: `
      +    <sf #sf *ngIf="schema" [schema]="schema" (formSubmit)="submit($event)"></sf>
      +    <ng-template #dropdownRender>
      +      <nz-divider></nz-divider>
      +      <div class="container">
      +        <input type="text" nz-input #inputElement />
      +        <a class="add-item" (click)="addItem(inputElement)"><i nz-icon nzType="plus"></i> Add item</a>
      +      </div>
      +    </ng-template>
      +  `,
      +  styles: [
      +    `
      +      nz-divider {
      +        margin: 4px 0;
      +      }
      +      .container {
      +        display: flex;
      +        flex-wrap: nowrap;
      +        padding: 8px;
      +      }
      +      input {
      +      }
      +      .add-item {
      +        flex: 0 0 auto;
      +        padding: 8px;
      +        display: block;
      +      }
      +    `,
      +  ],
      +})
      +export class FormSelectCustomDropdownMenuComponent implements OnInit {
      +  @ViewChild('sf', { static: false }) private sf!: SFComponent;
      +  @ViewChild('dropdownRender', { static: true }) private dropdownRender!: TemplateRef<void>;
      +
      +  schema?: SFSchema;
      +  statusList: string[] = ['1', '2', '3'];
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +
      +  ngOnInit(): void {
      +    this.schema = {
      +      properties: {
      +        status: {
      +          type: 'string',
      +          title: '状态',
      +          enum: this.statusList,
      +          default: '1',
      +          ui: {
      +            widget: 'select',
      +            dropdownRender: this.dropdownRender,
      +          } as SFSelectWidgetSchema,
      +        },
      +      },
      +    };
      +  }
      +
      +  addItem(input: HTMLInputElement): void {
      +    this.statusList.push(input.value);
      +    const statusProperty = this.sf.getProperty('/status')!;
      +    statusProperty.schema.enum = this.statusList;
      +    this.sf.setValue('/status', input.value);
      +  }
      +}
      搜索用户

      一个带有远程搜索,节流控制,请求时序控制,加载状态的多选示例。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFSchema, SFSchemaEnum, SFSelectWidgetSchema } from '@delon/form';
      +import { _HttpClient } from '@delon/theme';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +import { map } from 'rxjs';
      +
      +@Component({
      +  selector: 'form-select-search',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormSelectSearchComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      status: {
      +        type: 'string',
      +        title: '用户',
      +        ui: {
      +          widget: 'select',
      +          serverSearch: true,
      +          searchDebounceTime: 300,
      +          searchLoadingText: '搜索中...',
      +          onSearch: q => {
      +            return this.http
      +              .get(`https://api.randomuser.me/?results=5&q=${q}`)
      +              .pipe(map(res => (res.results as any[]).map(i => ({ label: i.email, value: i.email } as SFSchemaEnum))))
      +              .toPromise();
      +          },
      +        } as SFSelectWidgetSchema,
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService, private http: _HttpClient) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [enum]数据源SFSchemaEnumType[]-
      [readOnly]禁用状态boolean-

      ui 属性

      成员说明类型默认值
      [asyncData]异步数据源() => Observable<SFSchemaEnumType[]>-
      [size]大小,等同 nzSizestring-
      [compareWith]SelectControlValueAccessor 相同(o1: any, o2: any) => boolean(o1: any, o2: any) => o1===o2
      [placeholder]在文字框中显示提示讯息string-
      [autoClearSearchValue]是否在选中项后清空搜索框,只在 modemultipletags 时有效。booleantrue
      [allowClear]支持清除booleanfalse
      [borderless]是否无边框booleanfalse
      [autoFocus]默认获取焦点booleanfalse
      [dropdownClassName]下拉菜单的 className 属性string-
      [dropdownMatchSelectWidth]下拉菜单和选择器同宽booleantrue
      [dropdownStyle]下拉菜单的 style 属性object-
      [serverSearch]是否使用服务端搜索,当为 true 时,将不再在前端对 nz-option 进行过滤booleanfalse
      [searchDebounceTime]搜索抖动时间number300
      [searchLoadingText]搜索加载中文本string-
      [onSearch]搜索内容变化回调函数,参数为搜索内容,必须返回 Promise 对象(text: string) => Promise<SFSchemaEnum[]>-
      [maxMultipleCount]最多选中多少个标签numberInfinity
      [mode]设置 nz-select 的模式,tags 建议增加 default: null,否则可能会遇到初始化有一个空的标签。multiple,tags,defaultdefault
      [notFoundContent]当下拉列表为空时显示的内容string-
      [showSearch]使单选模式可搜索booleanfalse
      [showArrow]是否显示下拉小箭头boolean单选为 true,多选为 false
      [tokenSeparators]在 tags 和 multiple 模式下自动分词的分隔符string[][]
      [maxTagCount]最多显示多少个 tagnumber-
      [change]选中的 nz-option 发生变化时,调用此函数(ngModel:any丨any[], orgData: SFSchemaEnum丨SFSchemaEnum[])=>void-
      [openChange]下拉菜单打开关闭回调函数(status: boolean) => void-
      [scrollToBottom]下拉菜单滚动到底部回调,可用于作为动态加载的触发条件() => void-
      [customTemplate]自定义选择框的Template内容TemplateRef<{ $implicit: NzOptionComponent }>-
      [suffixIcon]自定义的选择框后缀图标TemplateRef<any>, string-
      [removeIcon]自定义的多选框清除图标TemplateRef<any>-
      [clearIcon]自定义的多选框清空图标TemplateRef<any>-
      [menuItemSelectedIcon]自定义当前选中的条目图标TemplateRef<any>-
      [maxTagPlaceholder]隐藏 tag 时显示的内容TemplateRef<{ $implicit: any[] }>-
      [optionHeightPx]下拉菜单中每个 Option 的高度number32
      [optionOverflowSize]下拉菜单中最多展示的 Option 个数,超出部分滚动number8
      \ No newline at end of file diff --git a/form/select/zh/index.html b/form/select/zh/index.html new file mode 100644 index 000000000..9c42207c2 --- /dev/null +++ b/form/select/zh/index.html @@ -0,0 +1,257 @@ +select - NG-ALAIN

      选择器

      下拉选择器。

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component, ViewChild } from '@angular/core';
      +import { of, delay } from 'rxjs';
      +
      +import { SFComponent, SFSchema, SFSelectWidgetSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-select-simple',
      +  template: `
      +    <sf #sf [schema]="schema" (formSubmit)="submit($event)"></sf>
      +    <button nz-button (click)="updateStatus()">Update Status</button>
      +  `
      +})
      +export class FormSelectSimpleComponent {
      +  @ViewChild('sf', { static: false }) private sf!: SFComponent;
      +  schema: SFSchema = {
      +    properties: {
      +      status: {
      +        type: 'string',
      +        title: '状态',
      +        enum: [
      +          { label: '待支付', value: 'WAIT_BUYER_PAY', otherData: 1 },
      +          { label: '已支付', value: 'TRADE_SUCCESS' },
      +          { label: '交易完成', value: 'TRADE_FINISHED' }
      +        ],
      +        default: 'WAIT_BUYER_PAY',
      +        ui: {
      +          widget: 'select',
      +          change: (value, orgData) => console.log(value, orgData)
      +        } as SFSelectWidgetSchema
      +      },
      +      // 标签
      +      tags: {
      +        type: 'string',
      +        title: '标签',
      +        enum: [
      +          { label: '待支付', value: 'WAIT_BUYER_PAY' },
      +          { label: '已支付', value: 'TRADE_SUCCESS' },
      +          { label: '交易完成', value: 'TRADE_FINISHED' }
      +        ],
      +        ui: {
      +          widget: 'select',
      +          mode: 'tags'
      +        } as SFSelectWidgetSchema,
      +        default: null
      +      },
      +      // 异步数据
      +      async: {
      +        type: 'string',
      +        title: 'Async',
      +        default: 'WAIT_BUYER_PAY',
      +        ui: {
      +          widget: 'select',
      +          asyncData: () =>
      +            of([
      +              {
      +                label: '订单状态',
      +                group: true,
      +                children: [
      +                  { label: '待支付', value: 'WAIT_BUYER_PAY' },
      +                  { label: '已支付', value: 'TRADE_SUCCESS' },
      +                  { label: '交易完成', value: 'TRADE_FINISHED' }
      +                ]
      +              }
      +            ]).pipe(delay(1200))
      +        } as SFSelectWidgetSchema
      +      },
      +      hide: {
      +        type: 'string',
      +        title: '隐藏项',
      +        enum: [
      +          { label: '第1个', value: 1 },
      +          { label: '第2个', value: 2, hide: true },
      +          { label: '第3个(第2个被隐藏了)', value: 3 }
      +        ],
      +        default: 1
      +      }
      +    }
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +
      +  updateStatus(): void {
      +    const statusProperty = this.sf.getProperty('/status')!;
      +    statusProperty.schema.enum = ['1', '2', '3'];
      +    statusProperty.widget.reset('2');
      +  }
      +}
      联动

      省市联动是典型的例子。

      expand codeexpand code
      import { Component, ViewChild } from '@angular/core';
      +import { SFComponent, SFSchema, SFSelectWidgetSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +import { of, delay, tap } from 'rxjs';
      +
      +@Component({
      +  selector: 'form-select-coordinate',
      +  template: ` <sf #sf [schema]="schema" [formData]="data" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormSelectCoordinateComponent {
      +  @ViewChild('sf', { static: false }) private sf!: SFComponent;
      +  data = {
      +    province: 'Zhejiang',
      +    city: 'Ningbo',
      +  };
      +  private cityData: { [place: string]: string[] } = {
      +    Zhejiang: ['Hangzhou', 'Ningbo', 'Wenzhou'],
      +    Jiangsu: ['Nanjing', 'Suzhou', 'Zhenjiang'],
      +  };
      +  schema: SFSchema = {
      +    properties: {
      +      province: {
      +        type: 'string',
      +        title: 'Province',
      +        ui: {
      +          widget: 'select',
      +          asyncData: () =>
      +            of(['Zhejiang', 'Jiangsu']).pipe(
      +              delay(100),
      +              tap(() => this.updateCity(this.data.province, this.data.city)),
      +            ),
      +          change: i => this.updateCity(i),
      +        } as SFSelectWidgetSchema,
      +      },
      +      city: {
      +        type: 'string',
      +        title: 'City',
      +        ui: {
      +          widget: 'select',
      +        } as SFSelectWidgetSchema,
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +
      +  private updateCity(province: string, city: string = ''): void {
      +    const cityProperty = this.sf.getProperty('/city')!;
      +    const items = this.cityData[province];
      +    cityProperty.schema.enum = items;
      +    cityProperty.widget.reset(city || items[0]);
      +  }
      +}
      扩展菜单

      使用 dropdownRender 对下拉菜单进行自由扩展。

      expand codeexpand code
      import { Component, OnInit, TemplateRef, ViewChild } from '@angular/core';
      +import { SFComponent, SFSchema, SFSelectWidgetSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-select-custom-dropdown-menu',
      +  template: `
      +    <sf #sf *ngIf="schema" [schema]="schema" (formSubmit)="submit($event)"></sf>
      +    <ng-template #dropdownRender>
      +      <nz-divider></nz-divider>
      +      <div class="container">
      +        <input type="text" nz-input #inputElement />
      +        <a class="add-item" (click)="addItem(inputElement)"><i nz-icon nzType="plus"></i> Add item</a>
      +      </div>
      +    </ng-template>
      +  `,
      +  styles: [
      +    `
      +      nz-divider {
      +        margin: 4px 0;
      +      }
      +      .container {
      +        display: flex;
      +        flex-wrap: nowrap;
      +        padding: 8px;
      +      }
      +      input {
      +      }
      +      .add-item {
      +        flex: 0 0 auto;
      +        padding: 8px;
      +        display: block;
      +      }
      +    `,
      +  ],
      +})
      +export class FormSelectCustomDropdownMenuComponent implements OnInit {
      +  @ViewChild('sf', { static: false }) private sf!: SFComponent;
      +  @ViewChild('dropdownRender', { static: true }) private dropdownRender!: TemplateRef<void>;
      +
      +  schema?: SFSchema;
      +  statusList: string[] = ['1', '2', '3'];
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +
      +  ngOnInit(): void {
      +    this.schema = {
      +      properties: {
      +        status: {
      +          type: 'string',
      +          title: '状态',
      +          enum: this.statusList,
      +          default: '1',
      +          ui: {
      +            widget: 'select',
      +            dropdownRender: this.dropdownRender,
      +          } as SFSelectWidgetSchema,
      +        },
      +      },
      +    };
      +  }
      +
      +  addItem(input: HTMLInputElement): void {
      +    this.statusList.push(input.value);
      +    const statusProperty = this.sf.getProperty('/status')!;
      +    statusProperty.schema.enum = this.statusList;
      +    this.sf.setValue('/status', input.value);
      +  }
      +}
      搜索用户

      一个带有远程搜索,节流控制,请求时序控制,加载状态的多选示例。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFSchema, SFSchemaEnum, SFSelectWidgetSchema } from '@delon/form';
      +import { _HttpClient } from '@delon/theme';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +import { map } from 'rxjs';
      +
      +@Component({
      +  selector: 'form-select-search',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormSelectSearchComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      status: {
      +        type: 'string',
      +        title: '用户',
      +        ui: {
      +          widget: 'select',
      +          serverSearch: true,
      +          searchDebounceTime: 300,
      +          searchLoadingText: '搜索中...',
      +          onSearch: q => {
      +            return this.http
      +              .get(`https://api.randomuser.me/?results=5&q=${q}`)
      +              .pipe(map(res => (res.results as any[]).map(i => ({ label: i.email, value: i.email } as SFSchemaEnum))))
      +              .toPromise();
      +          },
      +        } as SFSelectWidgetSchema,
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService, private http: _HttpClient) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [enum]数据源SFSchemaEnumType[]-
      [readOnly]禁用状态boolean-

      ui 属性

      成员说明类型默认值
      [asyncData]异步数据源() => Observable<SFSchemaEnumType[]>-
      [size]大小,等同 nzSizestring-
      [compareWith]SelectControlValueAccessor 相同(o1: any, o2: any) => boolean(o1: any, o2: any) => o1===o2
      [placeholder]在文字框中显示提示讯息string-
      [autoClearSearchValue]是否在选中项后清空搜索框,只在 modemultipletags 时有效。booleantrue
      [allowClear]支持清除booleanfalse
      [borderless]是否无边框booleanfalse
      [autoFocus]默认获取焦点booleanfalse
      [dropdownClassName]下拉菜单的 className 属性string-
      [dropdownMatchSelectWidth]下拉菜单和选择器同宽booleantrue
      [dropdownStyle]下拉菜单的 style 属性object-
      [serverSearch]是否使用服务端搜索,当为 true 时,将不再在前端对 nz-option 进行过滤booleanfalse
      [searchDebounceTime]搜索抖动时间number300
      [searchLoadingText]搜索加载中文本string-
      [onSearch]搜索内容变化回调函数,参数为搜索内容,必须返回 Promise 对象(text: string) => Promise<SFSchemaEnum[]>-
      [maxMultipleCount]最多选中多少个标签numberInfinity
      [mode]设置 nz-select 的模式,tags 建议增加 default: null,否则可能会遇到初始化有一个空的标签。multiple,tags,defaultdefault
      [notFoundContent]当下拉列表为空时显示的内容string-
      [showSearch]使单选模式可搜索booleanfalse
      [showArrow]是否显示下拉小箭头boolean单选为 true,多选为 false
      [tokenSeparators]在 tags 和 multiple 模式下自动分词的分隔符string[][]
      [maxTagCount]最多显示多少个 tagnumber-
      [change]选中的 nz-option 发生变化时,调用此函数(ngModel:any丨any[], orgData: SFSchemaEnum丨SFSchemaEnum[])=>void-
      [openChange]下拉菜单打开关闭回调函数(status: boolean) => void-
      [scrollToBottom]下拉菜单滚动到底部回调,可用于作为动态加载的触发条件() => void-
      [customTemplate]自定义选择框的Template内容TemplateRef<{ $implicit: NzOptionComponent }>-
      [suffixIcon]自定义的选择框后缀图标TemplateRef<any>, string-
      [removeIcon]自定义的多选框清除图标TemplateRef<any>-
      [clearIcon]自定义的多选框清空图标TemplateRef<any>-
      [menuItemSelectedIcon]自定义当前选中的条目图标TemplateRef<any>-
      [maxTagPlaceholder]隐藏 tag 时显示的内容TemplateRef<{ $implicit: any[] }>-
      [optionHeightPx]下拉菜单中每个 Option 的高度number32
      [optionOverflowSize]下拉菜单中最多展示的 Option 个数,超出部分滚动number8
      \ No newline at end of file diff --git a/form/slider/en/index.html b/form/slider/en/index.html new file mode 100644 index 000000000..db9d66d6f --- /dev/null +++ b/form/slider/en/index.html @@ -0,0 +1,38 @@ +range - NG-ALAIN

      滑动输入条

      滑动型输入器,展示当前值和可选范围。

      注意事项

      • 强制忽略 exclusiveMinimumexclusiveMaximum

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFSchema, SFSliderWidgetSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-slider-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormSliderSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      count: {
      +        type: 'number',
      +        title: '数量',
      +        ui: {
      +          widget: 'slider',
      +        } as SFSliderWidgetSchema,
      +        default: 10,
      +      },
      +      // 双滑块模式
      +      range: {
      +        type: 'number',
      +        title: '范围',
      +        ui: {
      +          widget: 'slider',
      +          range: true,
      +        } as SFSliderWidgetSchema,
      +        default: [10, 20],
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [minimum]最小值number0
      [maximum]最大值number100
      [multipleOf]倍数number1

      ui 属性

      成员说明类型默认值
      [range]当添加该属性时,启动双滑块模式Boolean-
      [marks]刻度标记NzMarks-
      [dots]是否只能拖拽到刻度上Booleanfalse
      [included]是否包含。marks 不为空对象时有效,值为 true 时表示值为包含关系,false 表示并列Booleantrue
      [vertical]竖直显示。添加该属性时,Slider 为垂直方向。booleanfalse
      [afterChange]onmouseup 触发时机一致,把当前值作为参数传入。(value: NzSliderValue) => void-
      [formatter]Slider 会把当前值传给 nzTipFormatter,并在 Tooltip 中显示 nzTipFormatter 的返回值,若为 null,则隐藏 Tooltip(value: number) => string-
      \ No newline at end of file diff --git a/form/slider/zh/index.html b/form/slider/zh/index.html new file mode 100644 index 000000000..ff7d11250 --- /dev/null +++ b/form/slider/zh/index.html @@ -0,0 +1,38 @@ +range - NG-ALAIN

      滑动输入条

      滑动型输入器,展示当前值和可选范围。

      注意事项

      • 强制忽略 exclusiveMinimumexclusiveMaximum

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFSchema, SFSliderWidgetSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-slider-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormSliderSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      count: {
      +        type: 'number',
      +        title: '数量',
      +        ui: {
      +          widget: 'slider',
      +        } as SFSliderWidgetSchema,
      +        default: 10,
      +      },
      +      // 双滑块模式
      +      range: {
      +        type: 'number',
      +        title: '范围',
      +        ui: {
      +          widget: 'slider',
      +          range: true,
      +        } as SFSliderWidgetSchema,
      +        default: [10, 20],
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [minimum]最小值number0
      [maximum]最大值number100
      [multipleOf]倍数number1

      ui 属性

      成员说明类型默认值
      [range]当添加该属性时,启动双滑块模式Boolean-
      [marks]刻度标记NzMarks-
      [dots]是否只能拖拽到刻度上Booleanfalse
      [included]是否包含。marks 不为空对象时有效,值为 true 时表示值为包含关系,false 表示并列Booleantrue
      [vertical]竖直显示。添加该属性时,Slider 为垂直方向。booleanfalse
      [afterChange]onmouseup 触发时机一致,把当前值作为参数传入。(value: NzSliderValue) => void-
      [formatter]Slider 会把当前值传给 nzTipFormatter,并在 Tooltip 中显示 nzTipFormatter 的返回值,若为 null,则隐藏 Tooltip(value: number) => string-
      \ No newline at end of file diff --git a/form/string/en/index.html b/form/string/en/index.html new file mode 100644 index 000000000..a5116e8f0 --- /dev/null +++ b/form/string/en/index.html @@ -0,0 +1,114 @@ +string - NG-ALAIN

      文本框

      默认小部件,一般用于字符串元素。

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +
      +import { SFSchema, SFStringWidgetSchema, SFValueChange } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-string-simple',
      +  template: `<sf [schema]="schema" (formValueChange)="valueChange($event)" (formSubmit)="submit($event)"></sf>`
      +})
      +export class FormStringSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      name: {
      +        type: 'string',
      +        title: 'Name',
      +        ui: {
      +          addOnAfter: 'RMB',
      +          placeholder: 'RMB结算',
      +          change: val => console.log(val),
      +          focus: e => console.log('focus', e),
      +          blur: e => console.log('blur', e),
      +          enter: e => console.log('enter', e)
      +        } as SFStringWidgetSchema
      +      },
      +      mobile: {
      +        type: 'string',
      +        format: 'mobile',
      +        title: '手机号'
      +      },
      +      sfz: {
      +        type: 'string',
      +        format: 'id-card',
      +        title: '身份证号'
      +      },
      +      regex: {
      +        type: 'string',
      +        pattern: `^[abc]+$`,
      +        title: '正则表达式',
      +        ui: {
      +          placeholder: `^[abc]+$`
      +        } as SFStringWidgetSchema
      +      },
      +      color: {
      +        type: 'string',
      +        format: 'color',
      +        title: '颜色',
      +        ui: {
      +          optionalHelp: {
      +            text: '我是有背景颜色的喔',
      +            bgColor: '#f50'
      +          }
      +        }
      +      }
      +    },
      +    required: ['name']
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +
      +  valueChange(res: SFValueChange): void {
      +    this.msg.info(JSON.stringify(res));
      +  }
      +}
      抖动与顺序

      使用 changeDebounceTime 启用节流控制,并利用 changeMapchange 配合完成节流、请求顺序。

      expand codeexpand code
      import { Component, ViewChild } from '@angular/core';
      +import { of } from 'rxjs';
      +
      +import { SFComponent, SFSchema, SFStringWidgetSchema } from '@delon/form';
      +import { _HttpClient } from '@delon/theme';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +interface UserItem {
      +  id: number;
      +  email: string;
      +}
      +
      +@Component({
      +  selector: 'form-string-time',
      +  template: `<sf #sf [schema]="schema" (formSubmit)="submit($event)"></sf>`
      +})
      +export class FormStringTimeComponent {
      +  @ViewChild('sf') private readonly sf!: SFComponent;
      +
      +  schema: SFSchema = {
      +    properties: {
      +      q: {
      +        type: 'string',
      +        title: 'Key',
      +        ui: {
      +          changeDebounceTime: 500,
      +          changeMap: val => (val.length > 0 ? this.http.get(`/users?q=${val}&ps=6`) : of({ list: [] })),
      +          change: (res: { list: UserItem[] }) => {
      +            if (res.list.length <= 0) return;
      +            const property = this.sf.getProperty('/items')!;
      +            property.schema.enum = res.list.map(item => item.email);
      +            property.widget.reset(res.list[0].email);
      +          }
      +        } as SFStringWidgetSchema
      +      },
      +      items: {
      +        type: 'string',
      +        enum: ['a', 'b', 'c']
      +      }
      +    }
      +  };
      +
      +  constructor(private http: _HttpClient, private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [maxLength]表单最大长度number-
      [readOnly]禁用状态boolean-

      ui 属性

      成员说明类型默认值
      [type]等同 input 的 type 值,例如:passwordstring-
      [placeholder]在文字框中显示提示讯息string-
      [borderless]是否隐藏边框booleanfalse
      [autocomplete]自动完成功能的表单HTML Attribute-
      [autofocus]当页面加载时获得焦点HTML Attribute-
      [addOnBefore]前置标签,等同 nzAddOnBeforestring-
      [addOnAfter]后置标签,等同 nzAddOnAfterstring-
      [addOnBeforeIcon]前置Icon,等同 nzAddOnBeforeIconstring-
      [addOnAfterIcon]后置Icon,等同 nzAddOnAfterIconstring-
      [prefix]带有前缀图标的 input,等同 nzPrefixstring-
      [prefixIcon]前缀图标,等同 nzPrefixIconstring-
      [suffix]带有后缀图标的 input,等同 nzSuffixstring-
      [suffixIcon]后缀图标,等同 nzSuffixIconstring-
      [changeDebounceTime]change 事件节流与顺序控制的阀值number-
      [changeMap]转换数据,相当于 switchMap 操作(val: string) => Observable<any>-
      [change]内容变更事件(val: string) => void-
      [focus]焦点事件(e: FocusEvent) => void-
      [blur]失焦事件(e: FocusEvent) => void-
      [enter]回车事件(e: KeyboardEvent) => void-
      \ No newline at end of file diff --git a/form/string/zh/index.html b/form/string/zh/index.html new file mode 100644 index 000000000..e65f3dde0 --- /dev/null +++ b/form/string/zh/index.html @@ -0,0 +1,114 @@ +string - NG-ALAIN

      文本框

      默认小部件,一般用于字符串元素。

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +
      +import { SFSchema, SFStringWidgetSchema, SFValueChange } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-string-simple',
      +  template: `<sf [schema]="schema" (formValueChange)="valueChange($event)" (formSubmit)="submit($event)"></sf>`
      +})
      +export class FormStringSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      name: {
      +        type: 'string',
      +        title: 'Name',
      +        ui: {
      +          addOnAfter: 'RMB',
      +          placeholder: 'RMB结算',
      +          change: val => console.log(val),
      +          focus: e => console.log('focus', e),
      +          blur: e => console.log('blur', e),
      +          enter: e => console.log('enter', e)
      +        } as SFStringWidgetSchema
      +      },
      +      mobile: {
      +        type: 'string',
      +        format: 'mobile',
      +        title: '手机号'
      +      },
      +      sfz: {
      +        type: 'string',
      +        format: 'id-card',
      +        title: '身份证号'
      +      },
      +      regex: {
      +        type: 'string',
      +        pattern: `^[abc]+$`,
      +        title: '正则表达式',
      +        ui: {
      +          placeholder: `^[abc]+$`
      +        } as SFStringWidgetSchema
      +      },
      +      color: {
      +        type: 'string',
      +        format: 'color',
      +        title: '颜色',
      +        ui: {
      +          optionalHelp: {
      +            text: '我是有背景颜色的喔',
      +            bgColor: '#f50'
      +          }
      +        }
      +      }
      +    },
      +    required: ['name']
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +
      +  valueChange(res: SFValueChange): void {
      +    this.msg.info(JSON.stringify(res));
      +  }
      +}
      抖动与顺序

      使用 changeDebounceTime 启用节流控制,并利用 changeMapchange 配合完成节流、请求顺序。

      expand codeexpand code
      import { Component, ViewChild } from '@angular/core';
      +import { of } from 'rxjs';
      +
      +import { SFComponent, SFSchema, SFStringWidgetSchema } from '@delon/form';
      +import { _HttpClient } from '@delon/theme';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +interface UserItem {
      +  id: number;
      +  email: string;
      +}
      +
      +@Component({
      +  selector: 'form-string-time',
      +  template: `<sf #sf [schema]="schema" (formSubmit)="submit($event)"></sf>`
      +})
      +export class FormStringTimeComponent {
      +  @ViewChild('sf') private readonly sf!: SFComponent;
      +
      +  schema: SFSchema = {
      +    properties: {
      +      q: {
      +        type: 'string',
      +        title: 'Key',
      +        ui: {
      +          changeDebounceTime: 500,
      +          changeMap: val => (val.length > 0 ? this.http.get(`/users?q=${val}&ps=6`) : of({ list: [] })),
      +          change: (res: { list: UserItem[] }) => {
      +            if (res.list.length <= 0) return;
      +            const property = this.sf.getProperty('/items')!;
      +            property.schema.enum = res.list.map(item => item.email);
      +            property.widget.reset(res.list[0].email);
      +          }
      +        } as SFStringWidgetSchema
      +      },
      +      items: {
      +        type: 'string',
      +        enum: ['a', 'b', 'c']
      +      }
      +    }
      +  };
      +
      +  constructor(private http: _HttpClient, private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [maxLength]表单最大长度number-
      [readOnly]禁用状态boolean-

      ui 属性

      成员说明类型默认值
      [type]等同 input 的 type 值,例如:passwordstring-
      [placeholder]在文字框中显示提示讯息string-
      [borderless]是否隐藏边框booleanfalse
      [autocomplete]自动完成功能的表单HTML Attribute-
      [autofocus]当页面加载时获得焦点HTML Attribute-
      [addOnBefore]前置标签,等同 nzAddOnBeforestring-
      [addOnAfter]后置标签,等同 nzAddOnAfterstring-
      [addOnBeforeIcon]前置Icon,等同 nzAddOnBeforeIconstring-
      [addOnAfterIcon]后置Icon,等同 nzAddOnAfterIconstring-
      [prefix]带有前缀图标的 input,等同 nzPrefixstring-
      [prefixIcon]前缀图标,等同 nzPrefixIconstring-
      [suffix]带有后缀图标的 input,等同 nzSuffixstring-
      [suffixIcon]后缀图标,等同 nzSuffixIconstring-
      [changeDebounceTime]change 事件节流与顺序控制的阀值number-
      [changeMap]转换数据,相当于 switchMap 操作(val: string) => Observable<any>-
      [change]内容变更事件(val: string) => void-
      [focus]焦点事件(e: FocusEvent) => void-
      [blur]失焦事件(e: FocusEvent) => void-
      [enter]回车事件(e: KeyboardEvent) => void-
      \ No newline at end of file diff --git a/form/tag/en/index.html b/form/tag/en/index.html new file mode 100644 index 000000000..c97ee9de8 --- /dev/null +++ b/form/tag/en/index.html @@ -0,0 +1,59 @@ +tag - NG-ALAIN

      标签

      进行标记和分类的小标签,注: 只支持 checkable 标签模式。

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFIcon, SFSchema, SFTagWidgetSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +import { of, delay } from 'rxjs';
      +
      +@Component({
      +  selector: 'form-tag-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormTagSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      like: {
      +        type: 'number',
      +        title: '兴趣',
      +        enum: [
      +          { value: 1, label: '电影' },
      +          { value: 2, label: '书' },
      +          { value: 3, label: '旅行' },
      +        ],
      +        ui: {
      +          widget: 'tag',
      +        } as SFTagWidgetSchema,
      +        default: [1, 2],
      +      },
      +      like1: {
      +        type: 'number',
      +        title: '兴趣',
      +        ui: {
      +          widget: 'tag',
      +          asyncData: () =>
      +            of([
      +              { value: 1, label: '电影' },
      +              { value: 2, label: '书' },
      +              { value: 3, label: '旅行' },
      +            ]).pipe(delay(10)),
      +        } as SFTagWidgetSchema,
      +        default: [1, 2],
      +      },
      +      icon: {
      +        type: 'number',
      +        title: '兴趣',
      +        enum: [
      +          { value: 1, label: 'Twitter', prefixIcon: { type: 'twitter' } as SFIcon },
      +          { value: 2, label: 'Facebook', suffixIcon: { type: 'facebook' } as SFIcon },
      +        ],
      +        ui: {
      +          widget: 'tag',
      +        } as SFTagWidgetSchema,
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [enum]数据源SFSchemaEnumType[]-

      ui 属性

      成员说明类型默认值
      [asyncData]异步数据源() => Observable<SFSchemaEnumType[]>-
      [mode]设定标签工作的模式'closeable'|'default'|'checkable''checkable'
      [onClose]关闭时的回调,在 nzMode="closable" 时可用(e:MouseEvent) => void-
      [checkedChange]设置标签的选中状态的回调(status: boolean) => void-
      \ No newline at end of file diff --git a/form/tag/zh/index.html b/form/tag/zh/index.html new file mode 100644 index 000000000..8c3513dbe --- /dev/null +++ b/form/tag/zh/index.html @@ -0,0 +1,59 @@ +tag - NG-ALAIN

      标签

      进行标记和分类的小标签,注: 只支持 checkable 标签模式。

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFIcon, SFSchema, SFTagWidgetSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +import { of, delay } from 'rxjs';
      +
      +@Component({
      +  selector: 'form-tag-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormTagSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      like: {
      +        type: 'number',
      +        title: '兴趣',
      +        enum: [
      +          { value: 1, label: '电影' },
      +          { value: 2, label: '书' },
      +          { value: 3, label: '旅行' },
      +        ],
      +        ui: {
      +          widget: 'tag',
      +        } as SFTagWidgetSchema,
      +        default: [1, 2],
      +      },
      +      like1: {
      +        type: 'number',
      +        title: '兴趣',
      +        ui: {
      +          widget: 'tag',
      +          asyncData: () =>
      +            of([
      +              { value: 1, label: '电影' },
      +              { value: 2, label: '书' },
      +              { value: 3, label: '旅行' },
      +            ]).pipe(delay(10)),
      +        } as SFTagWidgetSchema,
      +        default: [1, 2],
      +      },
      +      icon: {
      +        type: 'number',
      +        title: '兴趣',
      +        enum: [
      +          { value: 1, label: 'Twitter', prefixIcon: { type: 'twitter' } as SFIcon },
      +          { value: 2, label: 'Facebook', suffixIcon: { type: 'facebook' } as SFIcon },
      +        ],
      +        ui: {
      +          widget: 'tag',
      +        } as SFTagWidgetSchema,
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [enum]数据源SFSchemaEnumType[]-

      ui 属性

      成员说明类型默认值
      [asyncData]异步数据源() => Observable<SFSchemaEnumType[]>-
      [mode]设定标签工作的模式'closeable'|'default'|'checkable''checkable'
      [onClose]关闭时的回调,在 nzMode="closable" 时可用(e:MouseEvent) => void-
      [checkedChange]设置标签的选中状态的回调(status: boolean) => void-
      \ No newline at end of file diff --git a/form/text/en/index.html b/form/text/en/index.html new file mode 100644 index 000000000..a0fc0062e --- /dev/null +++ b/form/text/en/index.html @@ -0,0 +1,36 @@ +text - NG-ALAIN

      文本

      一般用于直接显示文本。

      规则

      • 强制取消 required 效果

      • 若不指定 defaultText 值不存在时自动渲染 -

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFSchema, SFStringWidgetSchema, SFTextWidgetSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-text-simple',
      +  template: ` <sf [schema]="schema" [loading]="loading" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormTextSimpleComponent {
      +  loading = false;
      +  schema: SFSchema = {
      +    properties: {
      +      id1: { type: 'number', ui: { widget: 'text' } as SFTextWidgetSchema },
      +      id2: { type: 'number', ui: { widget: 'text', defaultText: 'default text' } as SFTextWidgetSchema },
      +      name: {
      +        type: 'string',
      +        title: 'Name',
      +        ui: {
      +          addOnAfter: 'RMB',
      +          placeholder: 'RMB结算',
      +        } as SFStringWidgetSchema,
      +      },
      +    },
      +    required: ['name'],
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.loading = true;
      +    setTimeout(() => {
      +      this.loading = false;
      +      this.msg.success(JSON.stringify(value));
      +    }, 1000);
      +  }
      +}

      API

      ui 属性

      参数说明类型默认值
      [defaultText]当值不存在时所指定的文本string-
      [html]是否支持HTMLbooleantrue
      \ No newline at end of file diff --git a/form/text/zh/index.html b/form/text/zh/index.html new file mode 100644 index 000000000..8090d87f2 --- /dev/null +++ b/form/text/zh/index.html @@ -0,0 +1,36 @@ +text - NG-ALAIN

      文本

      一般用于直接显示文本。

      规则

      • 强制取消 required 效果

      • 若不指定 defaultText 值不存在时自动渲染 -

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFSchema, SFStringWidgetSchema, SFTextWidgetSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-text-simple',
      +  template: ` <sf [schema]="schema" [loading]="loading" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormTextSimpleComponent {
      +  loading = false;
      +  schema: SFSchema = {
      +    properties: {
      +      id1: { type: 'number', ui: { widget: 'text' } as SFTextWidgetSchema },
      +      id2: { type: 'number', ui: { widget: 'text', defaultText: 'default text' } as SFTextWidgetSchema },
      +      name: {
      +        type: 'string',
      +        title: 'Name',
      +        ui: {
      +          addOnAfter: 'RMB',
      +          placeholder: 'RMB结算',
      +        } as SFStringWidgetSchema,
      +      },
      +    },
      +    required: ['name'],
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.loading = true;
      +    setTimeout(() => {
      +      this.loading = false;
      +      this.msg.success(JSON.stringify(value));
      +    }, 1000);
      +  }
      +}

      API

      ui 属性

      参数说明类型默认值
      [defaultText]当值不存在时所指定的文本string-
      [html]是否支持HTMLbooleantrue
      \ No newline at end of file diff --git a/form/textarea/en/index.html b/form/textarea/en/index.html new file mode 100644 index 000000000..80b04a095 --- /dev/null +++ b/form/textarea/en/index.html @@ -0,0 +1,40 @@ +textarea - NG-ALAIN

      多行文本框

      一般用于多行字符串。

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +
      +import { SFSchema, SFTextareaWidgetSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-textarea-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `
      +})
      +export class FormTextareaSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      remark: {
      +        type: 'string',
      +        title: '描述',
      +        ui: {
      +          widget: 'textarea',
      +          autosize: { minRows: 2, maxRows: 6 },
      +          change: val => console.log('change', val),
      +          focus: ev => console.log('focus', ev),
      +          blur: ev => console.log('blur', ev)
      +        } as SFTextareaWidgetSchema
      +      },
      +      max: {
      +        type: 'string',
      +        title: 'Max',
      +        ui: {
      +          widget: 'textarea',
      +          maxCharacterCount: 100
      +        } as SFTextareaWidgetSchema
      +      }
      +    }
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [maxLength]表单最大长度number-
      [readOnly]禁用状态boolean-

      ui 属性

      成员说明类型默认值
      [size]大小,等同 nzSizestring-
      [placeholder]在文字框中显示提示讯息string-
      [autosize]自适应内容高度,可设置为 true|false 或对象:{ minRows: 2, maxRows: 6 }Boolean|Objecttrue
      [borderless]是否隐藏边框booleanfalse
      [maxCharacterCount]textarea 数字提示显示的最大值number-
      [computeCharacterCount]自定义计算 characterCount 的函数(v: string) => numberv => v.length
      [change]内容变更事件(val: string) => void-
      [focus]焦点事件(e: FocusEvent) => void-
      [blur]失焦事件(e: FocusEvent) => void-
      \ No newline at end of file diff --git a/form/textarea/zh/index.html b/form/textarea/zh/index.html new file mode 100644 index 000000000..ab441e21f --- /dev/null +++ b/form/textarea/zh/index.html @@ -0,0 +1,40 @@ +textarea - NG-ALAIN

      多行文本框

      一般用于多行字符串。

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +
      +import { SFSchema, SFTextareaWidgetSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-textarea-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `
      +})
      +export class FormTextareaSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      remark: {
      +        type: 'string',
      +        title: '描述',
      +        ui: {
      +          widget: 'textarea',
      +          autosize: { minRows: 2, maxRows: 6 },
      +          change: val => console.log('change', val),
      +          focus: ev => console.log('focus', ev),
      +          blur: ev => console.log('blur', ev)
      +        } as SFTextareaWidgetSchema
      +      },
      +      max: {
      +        type: 'string',
      +        title: 'Max',
      +        ui: {
      +          widget: 'textarea',
      +          maxCharacterCount: 100
      +        } as SFTextareaWidgetSchema
      +      }
      +    }
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [maxLength]表单最大长度number-
      [readOnly]禁用状态boolean-

      ui 属性

      成员说明类型默认值
      [size]大小,等同 nzSizestring-
      [placeholder]在文字框中显示提示讯息string-
      [autosize]自适应内容高度,可设置为 true|false 或对象:{ minRows: 2, maxRows: 6 }Boolean|Objecttrue
      [borderless]是否隐藏边框booleanfalse
      [maxCharacterCount]textarea 数字提示显示的最大值number-
      [computeCharacterCount]自定义计算 characterCount 的函数(v: string) => numberv => v.length
      [change]内容变更事件(val: string) => void-
      [focus]焦点事件(e: FocusEvent) => void-
      [blur]失焦事件(e: FocusEvent) => void-
      \ No newline at end of file diff --git a/form/time/en/index.html b/form/time/en/index.html new file mode 100644 index 000000000..4b1103306 --- /dev/null +++ b/form/time/en/index.html @@ -0,0 +1,43 @@ +time - NG-ALAIN

      时间

      输入或选择时间的控件。

      注意事项

      • 格式化分为:数据格式化表示表单数据和显示格式化显示数据(等同 nzFormat 值)

      • 所有 数据格式化 单位,参考 date-fns format(国内镜像:moment format

      • 指定 schema.format 则必须遵守 RFC3339 时间格式,否则都视为格式错误,默认的数据格式化:

        • timefull-time 默认 HH:mm:ss

      • 不指定 schema.format 根据 schema.type 值按以下规则处理(允许通过全局配置替换)数据格式化:

        • string 默认 HH:mm:ss

        • number 默认 T 13位 Unix Timestamp

      • 由于 disabledHoursdisabledMinutesdisabledSeconds 组合导致时间格式被破坏,可能会导致无法正常显示或显示不正确时可以指定一个完整的 Date 对象给默认值(schema.defaultformData

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFSchema, SFTimeWidgetSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-time-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormTimeSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      time: {
      +        type: 'string',
      +        ui: { widget: 'time' } as SFTimeWidgetSchema,
      +      },
      +      time_number: {
      +        type: 'number',
      +        ui: { widget: 'time' } as SFTimeWidgetSchema,
      +      },
      +      time_format: {
      +        type: 'string',
      +        format: 'time',
      +        ui: {
      +          format: `HH:mm:ss+00:00`,
      +        } as SFTimeWidgetSchema,
      +      },
      +      '12hours': {
      +        type: 'string',
      +        ui: {
      +          widget: 'time',
      +          format: 'h:mm:ss a',
      +          use12Hours: true,
      +        } as SFTimeWidgetSchema,
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [readOnly]禁用状态boolean-
      [format]数据格式类型string-

      ui 属性

      成员说明类型默认值
      [size]大小,等同 nzSizestring-
      [placeholder]在文字框中显示提示讯息string-
      [format]数据格式化stringHH:mm:ss
      [displayFormat]显示格式化,(等同 nzFormat 值)stringHH:mm:ss
      [utcEpoch]是否UTC新纪元(表示从 1970 开始计毫秒数),当 type='number' 时有效booleanfalse
      [allowEmpty]是否展示清除按钮booleantrue
      [clearText]清除按钮的提示文案string清除
      [defaultOpenValue]设置面板打开时默认选中的值Datenew Date()
      [disabledHours]禁止选择部分小时选项() => number[]-
      [disabledMinutes]禁止选择部分分钟选项(hour: number) => number[]-
      [disabledSeconds]禁止选择部分秒选项(hour: number, minute: number) => number[]-
      [hideDisabledOptions]隐藏禁止选择的选项booleanfalse
      [hourStep]小时选项间隔number1
      [minuteStep]分钟选项间隔number1
      [secondStep]秒选项间隔number1
      [popupClassName]弹出层类名string-
      [change]时间发生变化的回调(value: Date) => void-
      [openChange]面板打开/关闭时的回调(status: boolean) => void-
      [nowText]此刻按钮文本string-
      [okText]确认按钮文本string-
      \ No newline at end of file diff --git a/form/time/zh/index.html b/form/time/zh/index.html new file mode 100644 index 000000000..77776e1b4 --- /dev/null +++ b/form/time/zh/index.html @@ -0,0 +1,43 @@ +time - NG-ALAIN

      时间

      输入或选择时间的控件。

      注意事项

      • 格式化分为:数据格式化表示表单数据和显示格式化显示数据(等同 nzFormat 值)

      • 所有 数据格式化 单位,参考 date-fns format(国内镜像:moment format

      • 指定 schema.format 则必须遵守 RFC3339 时间格式,否则都视为格式错误,默认的数据格式化:

        • timefull-time 默认 HH:mm:ss

      • 不指定 schema.format 根据 schema.type 值按以下规则处理(允许通过全局配置替换)数据格式化:

        • string 默认 HH:mm:ss

        • number 默认 T 13位 Unix Timestamp

      • 由于 disabledHoursdisabledMinutesdisabledSeconds 组合导致时间格式被破坏,可能会导致无法正常显示或显示不正确时可以指定一个完整的 Date 对象给默认值(schema.defaultformData

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFSchema, SFTimeWidgetSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-time-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormTimeSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      time: {
      +        type: 'string',
      +        ui: { widget: 'time' } as SFTimeWidgetSchema,
      +      },
      +      time_number: {
      +        type: 'number',
      +        ui: { widget: 'time' } as SFTimeWidgetSchema,
      +      },
      +      time_format: {
      +        type: 'string',
      +        format: 'time',
      +        ui: {
      +          format: `HH:mm:ss+00:00`,
      +        } as SFTimeWidgetSchema,
      +      },
      +      '12hours': {
      +        type: 'string',
      +        ui: {
      +          widget: 'time',
      +          format: 'h:mm:ss a',
      +          use12Hours: true,
      +        } as SFTimeWidgetSchema,
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [readOnly]禁用状态boolean-
      [format]数据格式类型string-

      ui 属性

      成员说明类型默认值
      [size]大小,等同 nzSizestring-
      [placeholder]在文字框中显示提示讯息string-
      [format]数据格式化stringHH:mm:ss
      [displayFormat]显示格式化,(等同 nzFormat 值)stringHH:mm:ss
      [utcEpoch]是否UTC新纪元(表示从 1970 开始计毫秒数),当 type='number' 时有效booleanfalse
      [allowEmpty]是否展示清除按钮booleantrue
      [clearText]清除按钮的提示文案string清除
      [defaultOpenValue]设置面板打开时默认选中的值Datenew Date()
      [disabledHours]禁止选择部分小时选项() => number[]-
      [disabledMinutes]禁止选择部分分钟选项(hour: number) => number[]-
      [disabledSeconds]禁止选择部分秒选项(hour: number, minute: number) => number[]-
      [hideDisabledOptions]隐藏禁止选择的选项booleanfalse
      [hourStep]小时选项间隔number1
      [minuteStep]分钟选项间隔number1
      [secondStep]秒选项间隔number1
      [popupClassName]弹出层类名string-
      [change]时间发生变化的回调(value: Date) => void-
      [openChange]面板打开/关闭时的回调(status: boolean) => void-
      [nowText]此刻按钮文本string-
      [okText]确认按钮文本string-
      \ No newline at end of file diff --git a/form/tinymce/en/index.html b/form/tinymce/en/index.html new file mode 100644 index 000000000..97350ee6c --- /dev/null +++ b/form/tinymce/en/index.html @@ -0,0 +1,58 @@ +tinymce - NG-ALAIN

      Tinymce富文本

      Tinymce富文本。

      注:第三方小部件默认并未注册,细节见定制小部件

      如何使用

      安装依赖

      由于Tinymce编辑器依赖第三方插件ngx-tinymce,所以使用时应首先安装依赖

      yarn add ngx-tinymce

      导入模块

      • 使用最新脚手架搭建出的项目提供了第三方控件注册入口: src/app/shared/json-schema/json-schema.module.ts

      • 需将TinymceWidgetJsonSchemaModule中进行声明

      • 以给出的插件列表与工具栏为全量列表,可根据需求删减

      export const SCHEMA_THIRDS_COMPONENTS = [TinymceWidget];
      +
      +@NgModule({
      +  declarations: SCHEMA_THIRDS_COMPONENTS,
      +  imports: [
      +    SharedModule,
      +    DelonFormModule.forRoot(),
      +    NgxTinymceModule.forRoot({
      +      baseURL: './assets/tinymce/',
      +      config: {
      +        language: 'zh_CN',
      +        language_url: './assets/tinymce/langs/zh_CN.js',
      +        branding: false,
      +        paste_data_images: true,
      +        automatic_uploads: false,
      +        menubar: true,
      +        toolbar_mode: 'wrap',
      +        plugins:
      +          'print preview searchreplace autolink directionality visualblocks visualchars fullscreen image link media template code codesample table charmap hr pagebreak nonbreaking anchor insertdatetime advlist lists wordcount image textpattern help emoticons autosave autoresize',
      +        toolbar:
      +          'code undo redo restoredraft | cut copy | forecolor backcolor bold italic underline strikethrough link anchor | alignleft aligncenter alignright alignjustify outdent indent | styleselect formatselect fontselect fontsizeselect | bullist numlist | blockquote subscript superscript removeformat |  table image media charmap emoticons hr pagebreak insertdatetime print preview | fullscreen |  indent2em'
      +      }
      +    })
      +  ],
      +  exports: SCHEMA_THIRDS_COMPONENTS
      +})
      +export class JsonSchemaModule {
      +}

      控件注册

      • 将控件注册到WidgetRegistry注册表中

      export class JsonSchemaModule {
      +  constructor(widgetRegistry: WidgetRegistry) {
      +    widgetRegistry.register(TinymceWidget.KEY, TinymceWidget);
      +  }
      +}

      导入静态资源

      Tinymce支持高度自定义的插件模式,通过配置插件和静态资源可以有效的减少包体体积

      • 插件下载: CustomBuilds

      • 语言包下载: LanguagePackages

      • 将下载好的插件放入baseURL可访问到的目录内

      • 将下载好的语言包放入language_url可访问到的目录内

      源代码

      源代码

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-tinymce-simple',
      +  template: `<sf [schema]="schema" (formSubmit)="submit($event)"></sf>`,
      +})
      +export class FormTinymceSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      remark: {
      +        type: 'string',
      +        title: '描述',
      +        ui: {
      +          widget: 'tinymce',
      +        },
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      ui 属性

      成员说明类型默认值
      [config]配置项说明,见官网object-
      [loading]初始化提示文本string加载中...
      [change]编辑器内容发生改变时会触发该事件(html: string) => void-
      \ No newline at end of file diff --git a/form/tinymce/zh/index.html b/form/tinymce/zh/index.html new file mode 100644 index 000000000..f08f43041 --- /dev/null +++ b/form/tinymce/zh/index.html @@ -0,0 +1,58 @@ +tinymce - NG-ALAIN

      Tinymce富文本

      Tinymce富文本。

      注:第三方小部件默认并未注册,细节见定制小部件

      如何使用

      安装依赖

      由于Tinymce编辑器依赖第三方插件ngx-tinymce,所以使用时应首先安装依赖

      yarn add ngx-tinymce

      导入模块

      • 使用最新脚手架搭建出的项目提供了第三方控件注册入口: src/app/shared/json-schema/json-schema.module.ts

      • 需将TinymceWidgetJsonSchemaModule中进行声明

      • 以给出的插件列表与工具栏为全量列表,可根据需求删减

      export const SCHEMA_THIRDS_COMPONENTS = [TinymceWidget];
      +
      +@NgModule({
      +  declarations: SCHEMA_THIRDS_COMPONENTS,
      +  imports: [
      +    SharedModule,
      +    DelonFormModule.forRoot(),
      +    NgxTinymceModule.forRoot({
      +      baseURL: './assets/tinymce/',
      +      config: {
      +        language: 'zh_CN',
      +        language_url: './assets/tinymce/langs/zh_CN.js',
      +        branding: false,
      +        paste_data_images: true,
      +        automatic_uploads: false,
      +        menubar: true,
      +        toolbar_mode: 'wrap',
      +        plugins:
      +          'print preview searchreplace autolink directionality visualblocks visualchars fullscreen image link media template code codesample table charmap hr pagebreak nonbreaking anchor insertdatetime advlist lists wordcount image textpattern help emoticons autosave autoresize',
      +        toolbar:
      +          'code undo redo restoredraft | cut copy | forecolor backcolor bold italic underline strikethrough link anchor | alignleft aligncenter alignright alignjustify outdent indent | styleselect formatselect fontselect fontsizeselect | bullist numlist | blockquote subscript superscript removeformat |  table image media charmap emoticons hr pagebreak insertdatetime print preview | fullscreen |  indent2em'
      +      }
      +    })
      +  ],
      +  exports: SCHEMA_THIRDS_COMPONENTS
      +})
      +export class JsonSchemaModule {
      +}

      控件注册

      • 将控件注册到WidgetRegistry注册表中

      export class JsonSchemaModule {
      +  constructor(widgetRegistry: WidgetRegistry) {
      +    widgetRegistry.register(TinymceWidget.KEY, TinymceWidget);
      +  }
      +}

      导入静态资源

      Tinymce支持高度自定义的插件模式,通过配置插件和静态资源可以有效的减少包体体积

      • 插件下载: CustomBuilds

      • 语言包下载: LanguagePackages

      • 将下载好的插件放入baseURL可访问到的目录内

      • 将下载好的语言包放入language_url可访问到的目录内

      源代码

      源代码

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-tinymce-simple',
      +  template: `<sf [schema]="schema" (formSubmit)="submit($event)"></sf>`,
      +})
      +export class FormTinymceSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      remark: {
      +        type: 'string',
      +        title: '描述',
      +        ui: {
      +          widget: 'tinymce',
      +        },
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      ui 属性

      成员说明类型默认值
      [config]配置项说明,见官网object-
      [loading]初始化提示文本string加载中...
      [change]编辑器内容发生改变时会触发该事件(html: string) => void-
      \ No newline at end of file diff --git a/form/transfer/en/index.html b/form/transfer/en/index.html new file mode 100644 index 000000000..c2e8a1891 --- /dev/null +++ b/form/transfer/en/index.html @@ -0,0 +1,52 @@ +transfer - NG-ALAIN

      穿梭框

      双栏穿梭选择框。

      注意事项

      • default 值被当成 direction: 'right' 表示右栏中

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFSchema, SFTransferWidgetSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +import { of, delay } from 'rxjs';
      +
      +@Component({
      +  selector: 'form-transfer-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormTransferSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      roles: {
      +        type: 'number',
      +        title: '角色',
      +        enum: [
      +          { title: 'DNS管理', value: 10 },
      +          { title: 'ECS管理', value: 11 },
      +          { title: 'OSS管理', value: 12 },
      +          { title: 'RDS管理', value: 13 },
      +        ],
      +        ui: {
      +          widget: 'transfer',
      +          titles: ['未拥有', '已拥有'],
      +        } as SFTransferWidgetSchema,
      +        default: [11, 12],
      +      },
      +      roles2: {
      +        type: 'number',
      +        title: '角色',
      +        ui: {
      +          widget: 'transfer',
      +          titles: ['未拥有', '已拥有'],
      +          asyncData: () =>
      +            of([
      +              { title: 'DNS管理', value: 10 },
      +              { title: 'ECS管理', value: 11 },
      +              { title: 'OSS管理', value: 12 },
      +              { title: 'RDS管理', value: 13 },
      +            ]).pipe(delay(10)),
      +        } as SFTransferWidgetSchema,
      +        default: [11, 12],
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [enum]数据源SFSchemaEnumType[]-

      ui 属性

      成员说明类型默认值
      [asyncData]异步数据源() => Observable<SFSchemaEnumType[]>-
      [titles]标题集合,顺序从左至右string[]['', '']
      [operations]操作文案集合,顺序从下至上string[]['', '']
      [listStyle]两个穿梭框的自定义样式,以ngStyle写法标题object-
      [itemUnit]单数单位string项目
      [itemsUnit]复数单位string项目
      [showSearch]是否显示搜索框booleanfalse
      [filterOption]接收 inputValueoption 两个参数,当 option 符合筛选条件时,应返回 true,反之则返回 false--
      [searchPlaceholder]搜索框的默认值string-
      [notFoundContent]当列表为空时显示的内容string-
      [canMove]穿梭时二次校验。function-
      [change]选项在两栏之间转移时的回调函数(options: TransferChange) => void-
      [searchChange]搜索框内容时改变时的回调函数(options: TransferSearchChange) => void-
      [selectChange]选中项发生改变时的回调函数(options: TransferSelectChange) => void-
      \ No newline at end of file diff --git a/form/transfer/zh/index.html b/form/transfer/zh/index.html new file mode 100644 index 000000000..8ea566720 --- /dev/null +++ b/form/transfer/zh/index.html @@ -0,0 +1,52 @@ +transfer - NG-ALAIN

      穿梭框

      双栏穿梭选择框。

      注意事项

      • default 值被当成 direction: 'right' 表示右栏中

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFSchema, SFTransferWidgetSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +import { of, delay } from 'rxjs';
      +
      +@Component({
      +  selector: 'form-transfer-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormTransferSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      roles: {
      +        type: 'number',
      +        title: '角色',
      +        enum: [
      +          { title: 'DNS管理', value: 10 },
      +          { title: 'ECS管理', value: 11 },
      +          { title: 'OSS管理', value: 12 },
      +          { title: 'RDS管理', value: 13 },
      +        ],
      +        ui: {
      +          widget: 'transfer',
      +          titles: ['未拥有', '已拥有'],
      +        } as SFTransferWidgetSchema,
      +        default: [11, 12],
      +      },
      +      roles2: {
      +        type: 'number',
      +        title: '角色',
      +        ui: {
      +          widget: 'transfer',
      +          titles: ['未拥有', '已拥有'],
      +          asyncData: () =>
      +            of([
      +              { title: 'DNS管理', value: 10 },
      +              { title: 'ECS管理', value: 11 },
      +              { title: 'OSS管理', value: 12 },
      +              { title: 'RDS管理', value: 13 },
      +            ]).pipe(delay(10)),
      +        } as SFTransferWidgetSchema,
      +        default: [11, 12],
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [enum]数据源SFSchemaEnumType[]-

      ui 属性

      成员说明类型默认值
      [asyncData]异步数据源() => Observable<SFSchemaEnumType[]>-
      [titles]标题集合,顺序从左至右string[]['', '']
      [operations]操作文案集合,顺序从下至上string[]['', '']
      [listStyle]两个穿梭框的自定义样式,以ngStyle写法标题object-
      [itemUnit]单数单位string项目
      [itemsUnit]复数单位string项目
      [showSearch]是否显示搜索框booleanfalse
      [filterOption]接收 inputValueoption 两个参数,当 option 符合筛选条件时,应返回 true,反之则返回 false--
      [searchPlaceholder]搜索框的默认值string-
      [notFoundContent]当列表为空时显示的内容string-
      [canMove]穿梭时二次校验。function-
      [change]选项在两栏之间转移时的回调函数(options: TransferChange) => void-
      [searchChange]搜索框内容时改变时的回调函数(options: TransferSearchChange) => void-
      [selectChange]选中项发生改变时的回调函数(options: TransferSelectChange) => void-
      \ No newline at end of file diff --git a/form/tree-select/en/index.html b/form/tree-select/en/index.html new file mode 100644 index 000000000..9110d1609 --- /dev/null +++ b/form/tree-select/en/index.html @@ -0,0 +1,182 @@ +tree-select - NG-ALAIN

      树选择

      树型选择控件。

      注意:

      • tree-select 的数据源必须包含 titlekey 键名

      代码演示

      基础样例

      最简单的用法。

      多选:重置时无法刷新默认值 #2085

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFSchema, SFTreeSelectWidgetSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +import { of, delay } from 'rxjs';
      +
      +@Component({
      +  selector: 'form-tree-select-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormTreeSelectSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      status1: {
      +        type: 'string',
      +        title: '基本',
      +        enum: [
      +          { title: '待支付', key: 'WAIT_BUYER_PAY' },
      +          { title: '已支付', key: 'TRADE_SUCCESS' },
      +          { title: '交易完成', key: 'TRADE_FINISHED' },
      +        ],
      +        default: 'WAIT_BUYER_PAY',
      +        ui: {
      +          widget: 'tree-select',
      +        } as SFTreeSelectWidgetSchema,
      +      },
      +      status2: {
      +        type: 'string',
      +        title: '多选',
      +        enum: [
      +          { title: '待支付', key: 'WAIT_BUYER_PAY' },
      +          { title: '已支付', key: 'TRADE_SUCCESS' },
      +          { title: '交易完成', key: 'TRADE_FINISHED' },
      +        ],
      +        default: ['WAIT_BUYER_PAY', 'TRADE_SUCCESS'],
      +        ui: {
      +          widget: 'tree-select',
      +          multiple: true,
      +        } as SFTreeSelectWidgetSchema,
      +      },
      +      status3: {
      +        type: 'string',
      +        title: '可勾选',
      +        default: ['WAIT_BUYER_PAY', 'TRADE_FINISHED'],
      +        ui: {
      +          widget: 'tree-select',
      +          checkable: true,
      +          asyncData: () =>
      +            of([
      +              { title: '待支付', key: 'WAIT_BUYER_PAY' },
      +              { title: '已支付', key: 'TRADE_SUCCESS' },
      +              { title: '交易完成', key: 'TRADE_FINISHED' },
      +            ]).pipe(delay(10)),
      +        } as SFTreeSelectWidgetSchema,
      +      },
      +      // 异步数据
      +      async: {
      +        type: 'string',
      +        title: 'Async',
      +        enum: [
      +          { title: '待支付', key: 'WAIT_BUYER_PAY' },
      +          { title: '已支付', key: 'TRADE_SUCCESS' },
      +          { title: '交易完成', key: 'TRADE_FINISHED' },
      +        ],
      +        ui: {
      +          widget: 'tree-select',
      +          expandChange: () => {
      +            return of([
      +              { title: '待支付', key: 'WAIT_BUYER_PAY' },
      +              { title: '已支付', key: 'TRADE_SUCCESS' },
      +              { title: '交易完成', key: 'TRADE_FINISHED' },
      +            ]).pipe(delay(10));
      +          },
      +        } as SFTreeSelectWidgetSchema,
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}
      自定义图标

      可以针对不同节点采用样式覆盖的方式定制图标。

      expand codeexpand code
      import { Component, OnInit, TemplateRef, ViewChild } from '@angular/core';
      +import { SFSchema, SFTreeSelectWidgetSchema } from '@delon/form';
      +import { NzTreeNode } from 'ng-zorro-antd/tree';
      +
      +@Component({
      +  selector: 'form-tree-select-customized-icon',
      +  template: `
      +    <sf *ngIf="schema" [schema]="schema"></sf>
      +    <ng-template #customTpl let-node>
      +      <span class="ant-tree-node-content-wrapper" [class.ant-tree-node-selected]="node.isSelected">
      +        <span> <i nz-icon [nzType]="node.isExpanded ? 'folder-open' : 'folder'"></i> {{ node.title }} </span>
      +      </span>
      +    </ng-template>
      +  `,
      +})
      +export class FormTreeSelectCustomizedIconComponent implements OnInit {
      +  @ViewChild('customTpl', { static: true }) private customTpl!: TemplateRef<{ $implicit: NzTreeNode }>;
      +
      +  schema?: SFSchema;
      +
      +  ngOnInit(): void {
      +    this.schema = {
      +      properties: {
      +        status: {
      +          type: 'string',
      +          title: '基本',
      +          enum: [
      +            {
      +              title: 'parent 1',
      +              key: '100',
      +              expanded: true,
      +              icon: 'smile',
      +              children: [
      +                { title: 'leaf 1-0-0', key: '10010', icon: 'meh', isLeaf: true },
      +                { title: 'leaf 1-0-1', key: '10011', icon: 'frown', isLeaf: true },
      +              ],
      +            },
      +          ],
      +          default: '10010',
      +          ui: {
      +            widget: 'tree-select',
      +            treeTemplate: this.customTpl,
      +          } as SFTreeSelectWidgetSchema,
      +        },
      +      },
      +    };
      +  }
      +}
      虚拟滚动

      设定 virtualHeight 开启虚拟滚动。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFSchema, SFTreeSelectWidgetSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +import { NzTreeNodeOptions } from 'ng-zorro-antd/tree';
      +
      +@Component({
      +  selector: 'form-tree-select-virtual-scroll',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormTreeSelectVirtualScrollComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      status1: {
      +        type: 'string',
      +        title: '虚拟滚动',
      +        enum: this.dig(),
      +        ui: {
      +          widget: 'tree-select',
      +          virtualHeight: '300px',
      +        } as SFTreeSelectWidgetSchema,
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  private dig(path: string = '0', level: number = 3): NzTreeNodeOptions[] {
      +    const list: NzTreeNodeOptions[] = [];
      +    for (let i = 0; i < 10; i += 1) {
      +      const key = `${path}-${i}`;
      +      const treeNode: NzTreeNodeOptions = {
      +        title: key,
      +        key,
      +        expanded: true,
      +        children: [],
      +        isLeaf: false,
      +      };
      +
      +      if (level > 0) {
      +        treeNode.children = this.dig(key, level - 1);
      +      } else {
      +        treeNode.isLeaf = true;
      +      }
      +
      +      list.push(treeNode);
      +    }
      +    return list;
      +  }
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [enum]数据源SFSchemaEnumType[]-
      [readOnly]禁用状态boolean-

      ui 属性

      成员说明类型默认值
      [asyncData]异步数据源() => Observable<SFSchemaEnumType[]>-
      [size]大小,等同 nzSizestringdefault
      [placeholder]在文字框中显示提示讯息string-
      [notFoundContent]当下拉列表为空时显示的内容string-
      [allowClear]支持清除booleanfalse
      [dropdownMatchSelectWidth]下拉菜单和选择器同宽booleantrue
      [dropdownStyle]下拉菜单的 style 属性object-
      [dropdownClassName]下拉菜单的 className 属性string-
      [multiple]支持多选(当设置 checkable 时自动变为true)booleanfalse
      [hideUnMatched]搜索隐藏未匹配的节点booleanfalse
      [checkable]节点前添加 Checkbox 复选框booleanfalse
      [checkStrictly]checkable 状态下节点选择完全受控(父子节点选中状态不再关联)booleanfalse
      [showIcon]是否展示 TreeNode title 前的图标,没有默认样式booleanfalse
      [showExpand]节点前添加展开图标booleantrue
      [showLine]节点前添加展开图标booleanfalse
      [defaultExpandAll]默认展开所有树节点booleanfalse
      [displayWith]如何在输入框显示所选的节点值的方法(node: NzTreeNode) => string | undefined(node: NzTreeNode) => node.title
      [expandedKeys]默认展开指定的树节点string[]-
      [maxTagCount]最多显示多少个 tagnumber-
      [maxTagPlaceholder]隐藏 tag 时显示的内容TemplateRef<{ $implicit: NzTreeNode[] }>-
      [treeTemplate]自定义节点TemplateRef<{ $implicit: NzTreeNode; origin: NzTreeNodeOptions }>-
      [expandChange]点击展开树节点图标调用(e: NzFormatEmitEvent) => Observable<SFSchemaEnum[]>-
      [virtualHeight]虚拟滚动的总高度string-
      [virtualItemSize]虚拟滚动时每一列的高度,与 cdk itemSize 相同number28
      [virtualMaxBufferPx]缓冲区最大像素高度,与 cdk maxBufferPx 相同number500
      [virtualMinBufferPx]缓冲区最小像素高度,低于该值时将加载新结构,与 cdk minBufferPx 相同number28

      异步数据务必先指定初始化数据(使用 enumasyncData 选其一),否则无法触发 expandChange

      \ No newline at end of file diff --git a/form/tree-select/zh/index.html b/form/tree-select/zh/index.html new file mode 100644 index 000000000..e42b7b7b7 --- /dev/null +++ b/form/tree-select/zh/index.html @@ -0,0 +1,182 @@ +tree-select - NG-ALAIN

      树选择

      树型选择控件。

      注意:

      • tree-select 的数据源必须包含 titlekey 键名

      代码演示

      基础样例

      最简单的用法。

      多选:重置时无法刷新默认值 #2085

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFSchema, SFTreeSelectWidgetSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +import { of, delay } from 'rxjs';
      +
      +@Component({
      +  selector: 'form-tree-select-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormTreeSelectSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      status1: {
      +        type: 'string',
      +        title: '基本',
      +        enum: [
      +          { title: '待支付', key: 'WAIT_BUYER_PAY' },
      +          { title: '已支付', key: 'TRADE_SUCCESS' },
      +          { title: '交易完成', key: 'TRADE_FINISHED' },
      +        ],
      +        default: 'WAIT_BUYER_PAY',
      +        ui: {
      +          widget: 'tree-select',
      +        } as SFTreeSelectWidgetSchema,
      +      },
      +      status2: {
      +        type: 'string',
      +        title: '多选',
      +        enum: [
      +          { title: '待支付', key: 'WAIT_BUYER_PAY' },
      +          { title: '已支付', key: 'TRADE_SUCCESS' },
      +          { title: '交易完成', key: 'TRADE_FINISHED' },
      +        ],
      +        default: ['WAIT_BUYER_PAY', 'TRADE_SUCCESS'],
      +        ui: {
      +          widget: 'tree-select',
      +          multiple: true,
      +        } as SFTreeSelectWidgetSchema,
      +      },
      +      status3: {
      +        type: 'string',
      +        title: '可勾选',
      +        default: ['WAIT_BUYER_PAY', 'TRADE_FINISHED'],
      +        ui: {
      +          widget: 'tree-select',
      +          checkable: true,
      +          asyncData: () =>
      +            of([
      +              { title: '待支付', key: 'WAIT_BUYER_PAY' },
      +              { title: '已支付', key: 'TRADE_SUCCESS' },
      +              { title: '交易完成', key: 'TRADE_FINISHED' },
      +            ]).pipe(delay(10)),
      +        } as SFTreeSelectWidgetSchema,
      +      },
      +      // 异步数据
      +      async: {
      +        type: 'string',
      +        title: 'Async',
      +        enum: [
      +          { title: '待支付', key: 'WAIT_BUYER_PAY' },
      +          { title: '已支付', key: 'TRADE_SUCCESS' },
      +          { title: '交易完成', key: 'TRADE_FINISHED' },
      +        ],
      +        ui: {
      +          widget: 'tree-select',
      +          expandChange: () => {
      +            return of([
      +              { title: '待支付', key: 'WAIT_BUYER_PAY' },
      +              { title: '已支付', key: 'TRADE_SUCCESS' },
      +              { title: '交易完成', key: 'TRADE_FINISHED' },
      +            ]).pipe(delay(10));
      +          },
      +        } as SFTreeSelectWidgetSchema,
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}
      自定义图标

      可以针对不同节点采用样式覆盖的方式定制图标。

      expand codeexpand code
      import { Component, OnInit, TemplateRef, ViewChild } from '@angular/core';
      +import { SFSchema, SFTreeSelectWidgetSchema } from '@delon/form';
      +import { NzTreeNode } from 'ng-zorro-antd/tree';
      +
      +@Component({
      +  selector: 'form-tree-select-customized-icon',
      +  template: `
      +    <sf *ngIf="schema" [schema]="schema"></sf>
      +    <ng-template #customTpl let-node>
      +      <span class="ant-tree-node-content-wrapper" [class.ant-tree-node-selected]="node.isSelected">
      +        <span> <i nz-icon [nzType]="node.isExpanded ? 'folder-open' : 'folder'"></i> {{ node.title }} </span>
      +      </span>
      +    </ng-template>
      +  `,
      +})
      +export class FormTreeSelectCustomizedIconComponent implements OnInit {
      +  @ViewChild('customTpl', { static: true }) private customTpl!: TemplateRef<{ $implicit: NzTreeNode }>;
      +
      +  schema?: SFSchema;
      +
      +  ngOnInit(): void {
      +    this.schema = {
      +      properties: {
      +        status: {
      +          type: 'string',
      +          title: '基本',
      +          enum: [
      +            {
      +              title: 'parent 1',
      +              key: '100',
      +              expanded: true,
      +              icon: 'smile',
      +              children: [
      +                { title: 'leaf 1-0-0', key: '10010', icon: 'meh', isLeaf: true },
      +                { title: 'leaf 1-0-1', key: '10011', icon: 'frown', isLeaf: true },
      +              ],
      +            },
      +          ],
      +          default: '10010',
      +          ui: {
      +            widget: 'tree-select',
      +            treeTemplate: this.customTpl,
      +          } as SFTreeSelectWidgetSchema,
      +        },
      +      },
      +    };
      +  }
      +}
      虚拟滚动

      设定 virtualHeight 开启虚拟滚动。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFSchema, SFTreeSelectWidgetSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +import { NzTreeNodeOptions } from 'ng-zorro-antd/tree';
      +
      +@Component({
      +  selector: 'form-tree-select-virtual-scroll',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormTreeSelectVirtualScrollComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      status1: {
      +        type: 'string',
      +        title: '虚拟滚动',
      +        enum: this.dig(),
      +        ui: {
      +          widget: 'tree-select',
      +          virtualHeight: '300px',
      +        } as SFTreeSelectWidgetSchema,
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  private dig(path: string = '0', level: number = 3): NzTreeNodeOptions[] {
      +    const list: NzTreeNodeOptions[] = [];
      +    for (let i = 0; i < 10; i += 1) {
      +      const key = `${path}-${i}`;
      +      const treeNode: NzTreeNodeOptions = {
      +        title: key,
      +        key,
      +        expanded: true,
      +        children: [],
      +        isLeaf: false,
      +      };
      +
      +      if (level > 0) {
      +        treeNode.children = this.dig(key, level - 1);
      +      } else {
      +        treeNode.isLeaf = true;
      +      }
      +
      +      list.push(treeNode);
      +    }
      +    return list;
      +  }
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [enum]数据源SFSchemaEnumType[]-
      [readOnly]禁用状态boolean-

      ui 属性

      成员说明类型默认值
      [asyncData]异步数据源() => Observable<SFSchemaEnumType[]>-
      [size]大小,等同 nzSizestringdefault
      [placeholder]在文字框中显示提示讯息string-
      [notFoundContent]当下拉列表为空时显示的内容string-
      [allowClear]支持清除booleanfalse
      [dropdownMatchSelectWidth]下拉菜单和选择器同宽booleantrue
      [dropdownStyle]下拉菜单的 style 属性object-
      [dropdownClassName]下拉菜单的 className 属性string-
      [multiple]支持多选(当设置 checkable 时自动变为true)booleanfalse
      [hideUnMatched]搜索隐藏未匹配的节点booleanfalse
      [checkable]节点前添加 Checkbox 复选框booleanfalse
      [checkStrictly]checkable 状态下节点选择完全受控(父子节点选中状态不再关联)booleanfalse
      [showIcon]是否展示 TreeNode title 前的图标,没有默认样式booleanfalse
      [showExpand]节点前添加展开图标booleantrue
      [showLine]节点前添加展开图标booleanfalse
      [defaultExpandAll]默认展开所有树节点booleanfalse
      [displayWith]如何在输入框显示所选的节点值的方法(node: NzTreeNode) => string | undefined(node: NzTreeNode) => node.title
      [expandedKeys]默认展开指定的树节点string[]-
      [maxTagCount]最多显示多少个 tagnumber-
      [maxTagPlaceholder]隐藏 tag 时显示的内容TemplateRef<{ $implicit: NzTreeNode[] }>-
      [treeTemplate]自定义节点TemplateRef<{ $implicit: NzTreeNode; origin: NzTreeNodeOptions }>-
      [expandChange]点击展开树节点图标调用(e: NzFormatEmitEvent) => Observable<SFSchemaEnum[]>-
      [virtualHeight]虚拟滚动的总高度string-
      [virtualItemSize]虚拟滚动时每一列的高度,与 cdk itemSize 相同number28
      [virtualMaxBufferPx]缓冲区最大像素高度,与 cdk maxBufferPx 相同number500
      [virtualMinBufferPx]缓冲区最小像素高度,低于该值时将加载新结构,与 cdk minBufferPx 相同number28

      异步数据务必先指定初始化数据(使用 enumasyncData 选其一),否则无法触发 expandChange

      \ No newline at end of file diff --git a/form/upload/en/index.html b/form/upload/en/index.html new file mode 100644 index 000000000..6848839bd --- /dev/null +++ b/form/upload/en/index.html @@ -0,0 +1,64 @@ +upload - NG-ALAIN

      上传

      文件选择上传和拖拽上传控件。

      注意事项

      • 务必 指定 resReName 来获取正确数据

      • multiple 决定返回数组或者单体数据

      • 若指定 enumasyncData 将被转化成 fileList (nzFileList) 值,且务必初始保证一个 response 属性表示远程数据并 resReName 能正确获取

      • 图像预览:默认使用 nzModal 来显示包含文件对象的 urlthumbUrl

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFSchema, SFUploadWidgetSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-upload-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormUploadSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      file: {
      +        type: 'string',
      +        title: '单个文件',
      +        enum: [
      +          {
      +            uid: -1,
      +            name: 'xxx.png',
      +            status: 'done',
      +            url: 'https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ.png',
      +            response: {
      +              resource_id: 1,
      +            },
      +          },
      +        ],
      +        ui: {
      +          widget: 'upload',
      +          action: '/upload',
      +          resReName: 'resource_id',
      +          urlReName: 'url',
      +        } as SFUploadWidgetSchema,
      +      },
      +      mulit: {
      +        type: 'string',
      +        title: '多个文件',
      +        ui: {
      +          widget: 'upload',
      +          action: '/upload',
      +          resReName: 'resource_id',
      +          urlReName: 'url',
      +          multiple: true,
      +        } as SFUploadWidgetSchema,
      +      },
      +      // 拖动模式
      +      drag: {
      +        type: 'string',
      +        title: 'Drag',
      +        ui: {
      +          widget: 'upload',
      +          action: '/upload',
      +          resReName: 'resource_id',
      +          urlReName: 'url',
      +          type: 'drag',
      +        } as SFUploadWidgetSchema,
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [readOnly]禁用状态boolean-

      ui 属性

      成员说明类型默认值
      [asyncData]异步数据源() => Observable<SFSchemaEnumType[]>-
      [type]上传类型select,dragselect
      [text]按钮文本string点击上传
      [hint]提醒文本,drag 时有效string支持单个或批量,严禁上传公司数据或其他安全文件
      [resReName]重命名返回参数,支持 a.b.c 的嵌套写法,若不指定表示整个返回体string-
      [urlReName]重命名预览图像URL返回参数,支持 a.b.c 的嵌套写法,若不指定表示使用文件对象的 urlthumbUrlstring-
      [action]必选参数, 上传的地址string, ((file: UploadFile) => string, Observable<string>)-
      [accept]接受上传的文件类型, 详见 input accept Attributestring, string[]-
      [limit]限制单次最多上传数量,multiple 打开时有效;0 表示不限number0
      [filter]自定义过滤器UploadFilter[]-
      [fileList]文件列表UploadFile[]-
      [fileSize]限制文件大小,单位:KB;0 表示不限number0
      [fileType]限制文件类型,例如:image/png,image/jpeg,image/gif,image/bmpstring-
      [headers]设置上传的请求头部Object, (file: UploadFile) => {} | Observable<{}>-
      [listType]上传列表的内建样式text,picture,picture-cardtext
      [showUploadList]是否展示列表, 可设为一个对象,用于单独设定 showPreviewIconshowRemoveIconbooleantrue
      [multiple]是否支持多选文件,IE10+ 支持。开启后按住 ctrl 可选择多个文件。booleanfalse
      [name]发到后台的文件参数名stringfile
      [data]上传所需参数或返回上传参数的方法Object, (file: UploadFile) => {} | Observable<{}>-
      [withCredentials]上传请求时是否携带 cookiebooleanfalse
      [directory]支持上传文件夹(caniusebooleanfalse
      [openFileDialogOnClick]点击打开文件对话框booleantrue
      [beforeUpload]上传文件之前的钩子,参数为上传的文件,若返回 false 则停止上传(file: UploadFile, fileList: UploadFile[]) => boolean|Observable<boolean>-
      [customRequest]通过覆盖默认的上传行为,可以自定义自己的上传实现(item: UploadXHRArgs) => Subscription-
      [remove]点击移除文件时的回调,返回值为 false 时不移除(file: UploadFile) => boolean|Observable-
      [preview]点击文件链接或预览图标时的回调(file: UploadFile) => void-
      [previewFile]自定义文件预览逻辑(file: UploadFile) => Observable<string>-
      [download]点击下载文件时的回调,如果没有指定,则默认跳转到文件 url 对应的标签页(file: UploadFile) => void-
      [transformFile]在上传之前转换文件。支持返回一个 Observable 对象(file: UploadFile) => UploadTransformFileType-
      [change]上传文件改变时的状态(args: UploadChangeParam) => void-
      \ No newline at end of file diff --git a/form/upload/zh/index.html b/form/upload/zh/index.html new file mode 100644 index 000000000..153ea10f5 --- /dev/null +++ b/form/upload/zh/index.html @@ -0,0 +1,64 @@ +upload - NG-ALAIN

      上传

      文件选择上传和拖拽上传控件。

      注意事项

      • 务必 指定 resReName 来获取正确数据

      • multiple 决定返回数组或者单体数据

      • 若指定 enumasyncData 将被转化成 fileList (nzFileList) 值,且务必初始保证一个 response 属性表示远程数据并 resReName 能正确获取

      • 图像预览:默认使用 nzModal 来显示包含文件对象的 urlthumbUrl

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { SFSchema, SFUploadWidgetSchema } from '@delon/form';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'form-upload-simple',
      +  template: ` <sf [schema]="schema" (formSubmit)="submit($event)"></sf> `,
      +})
      +export class FormUploadSimpleComponent {
      +  schema: SFSchema = {
      +    properties: {
      +      file: {
      +        type: 'string',
      +        title: '单个文件',
      +        enum: [
      +          {
      +            uid: -1,
      +            name: 'xxx.png',
      +            status: 'done',
      +            url: 'https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ.png',
      +            response: {
      +              resource_id: 1,
      +            },
      +          },
      +        ],
      +        ui: {
      +          widget: 'upload',
      +          action: '/upload',
      +          resReName: 'resource_id',
      +          urlReName: 'url',
      +        } as SFUploadWidgetSchema,
      +      },
      +      mulit: {
      +        type: 'string',
      +        title: '多个文件',
      +        ui: {
      +          widget: 'upload',
      +          action: '/upload',
      +          resReName: 'resource_id',
      +          urlReName: 'url',
      +          multiple: true,
      +        } as SFUploadWidgetSchema,
      +      },
      +      // 拖动模式
      +      drag: {
      +        type: 'string',
      +        title: 'Drag',
      +        ui: {
      +          widget: 'upload',
      +          action: '/upload',
      +          resReName: 'resource_id',
      +          urlReName: 'url',
      +          type: 'drag',
      +        } as SFUploadWidgetSchema,
      +      },
      +    },
      +  };
      +
      +  constructor(private msg: NzMessageService) {}
      +
      +  submit(value: {}): void {
      +    this.msg.success(JSON.stringify(value));
      +  }
      +}

      API

      schema 属性

      成员说明类型默认值
      [readOnly]禁用状态boolean-

      ui 属性

      成员说明类型默认值
      [asyncData]异步数据源() => Observable<SFSchemaEnumType[]>-
      [type]上传类型select,dragselect
      [text]按钮文本string点击上传
      [hint]提醒文本,drag 时有效string支持单个或批量,严禁上传公司数据或其他安全文件
      [resReName]重命名返回参数,支持 a.b.c 的嵌套写法,若不指定表示整个返回体string-
      [urlReName]重命名预览图像URL返回参数,支持 a.b.c 的嵌套写法,若不指定表示使用文件对象的 urlthumbUrlstring-
      [action]必选参数, 上传的地址string, ((file: UploadFile) => string, Observable<string>)-
      [accept]接受上传的文件类型, 详见 input accept Attributestring, string[]-
      [limit]限制单次最多上传数量,multiple 打开时有效;0 表示不限number0
      [filter]自定义过滤器UploadFilter[]-
      [fileList]文件列表UploadFile[]-
      [fileSize]限制文件大小,单位:KB;0 表示不限number0
      [fileType]限制文件类型,例如:image/png,image/jpeg,image/gif,image/bmpstring-
      [headers]设置上传的请求头部Object, (file: UploadFile) => {} | Observable<{}>-
      [listType]上传列表的内建样式text,picture,picture-cardtext
      [showUploadList]是否展示列表, 可设为一个对象,用于单独设定 showPreviewIconshowRemoveIconbooleantrue
      [multiple]是否支持多选文件,IE10+ 支持。开启后按住 ctrl 可选择多个文件。booleanfalse
      [name]发到后台的文件参数名stringfile
      [data]上传所需参数或返回上传参数的方法Object, (file: UploadFile) => {} | Observable<{}>-
      [withCredentials]上传请求时是否携带 cookiebooleanfalse
      [directory]支持上传文件夹(caniusebooleanfalse
      [openFileDialogOnClick]点击打开文件对话框booleantrue
      [beforeUpload]上传文件之前的钩子,参数为上传的文件,若返回 false 则停止上传(file: UploadFile, fileList: UploadFile[]) => boolean|Observable<boolean>-
      [customRequest]通过覆盖默认的上传行为,可以自定义自己的上传实现(item: UploadXHRArgs) => Subscription-
      [remove]点击移除文件时的回调,返回值为 false 时不移除(file: UploadFile) => boolean|Observable-
      [preview]点击文件链接或预览图标时的回调(file: UploadFile) => void-
      [previewFile]自定义文件预览逻辑(file: UploadFile) => Observable<string>-
      [download]点击下载文件时的回调,如果没有指定,则默认跳转到文件 url 对应的标签页(file: UploadFile) => void-
      [transformFile]在上传之前转换文件。支持返回一个 Observable 对象(file: UploadFile) => UploadTransformFileType-
      [change]上传文件改变时的状态(args: UploadChangeParam) => void-
      \ No newline at end of file diff --git a/index.html b/index.html index 8025bfb1f..0513dea46 100644 --- a/index.html +++ b/index.html @@ -1 +1 @@ -Ng Alain - 一个基于 Antd 中后台前端解决方案
      loading...
      \ No newline at end of file +一个基于 Antd 中后台前端解决方案 - NG-ALAIN

      NG-ALAIN

      一个基于 Antd 中后台前端解决方案,提供更多通用性业务模块,让开发者更加专注于业务。

      特征

      Ant Design

      符合 Ant Design 设计价值观

      NG-ZORRO

      丰富的几十种基础组件

      Delon

      一组更高阶的业务组件、图表、认证、授权、缓存、Mock、测试等

      开箱即用

      一个完整、可直接用于生产环境的Angular脚手架

      简单定制

      百种LESS参数定制品牌视觉

      响应式

      支持不同设备使用

      工具支持

      包含 NG-ALAIN Schematics 、VSCODE插件

      示例页

      大量示例页可直接参考与使用

      \ No newline at end of file diff --git a/index.original.html b/index.original.html new file mode 100644 index 000000000..77a9a23f0 --- /dev/null +++ b/index.original.html @@ -0,0 +1,88 @@ + + + + + + NG-ALAIN - 一个基于 Antd 中后台前端解决方案 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      loading...
      +
      + + + + + + + diff --git a/main.45ee0ca5f60b6432.js b/main.fbd13711a2b1f5c4.js similarity index 62% rename from main.45ee0ca5f60b6432.js rename to main.fbd13711a2b1f5c4.js index 949563837..0fb8034c0 100644 --- a/main.45ee0ca5f60b6432.js +++ b/main.fbd13711a2b1f5c4.js @@ -1,7 +1,7 @@ -(self.webpackChunksite=self.webpackChunksite||[]).push([[179],{94265:(nt,I,o)=>{"use strict";o.d(I,{T6:()=>v,VD:()=>g,WE:()=>E,Yt:()=>d,lC:()=>t,py:()=>C,rW:()=>n,s:()=>z,ve:()=>l,vq:()=>u});var e=o(86337);function n(p,f,y){return{r:255*(0,e.sh)(p,255),g:255*(0,e.sh)(f,255),b:255*(0,e.sh)(y,255)}}function t(p,f,y){p=(0,e.sh)(p,255),f=(0,e.sh)(f,255),y=(0,e.sh)(y,255);var T=Math.max(p,f,y),x=Math.min(p,f,y),D=0,_=0,P=(T+x)/2;if(T===x)_=0,D=0;else{var S=T-x;switch(_=P>.5?S/(2-T-x):S/(T+x),T){case p:D=(f-y)/S+(f1&&(y-=1),y<1/6?p+6*y*(f-p):y<.5?f:y<2/3?p+(f-p)*(2/3-y)*6:p}function l(p,f,y){var T,x,D;if(p=(0,e.sh)(p,360),f=(0,e.sh)(f,100),y=(0,e.sh)(y,100),0===f)x=y,D=y,T=y;else{var _=y<.5?y*(1+f):y+f-y*f,P=2*y-_;T=i(P,_,p+1/3),x=i(P,_,p),D=i(P,_,p-1/3)}return{r:255*T,g:255*x,b:255*D}}function C(p,f,y){p=(0,e.sh)(p,255),f=(0,e.sh)(f,255),y=(0,e.sh)(y,255);var T=Math.max(p,f,y),x=Math.min(p,f,y),D=0,_=T,P=T-x,S=0===T?0:P/T;if(T===x)D=0;else{switch(T){case p:D=(f-y)/P+(f>16,g:(65280&p)>>8,b:255&p}}},41309:(nt,I,o)=>{"use strict";o.d(I,{R:()=>e});var e={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",goldenrod:"#daa520",gold:"#ffd700",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavenderblush:"#fff0f5",lavender:"#e6e6fa",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"}},36379:(nt,I,o)=>{"use strict";o.d(I,{uA:()=>i});var e=o(94265),n=o(41309),t=o(86337);function i(g){var d={r:0,g:0,b:0},p=1,f=null,y=null,T=null,x=!1,D=!1;return"string"==typeof g&&(g=function h(g){if(0===(g=g.trim().toLowerCase()).length)return!1;var d=!1;if(n.R[g])g=n.R[g],d=!0;else if("transparent"===g)return{r:0,g:0,b:0,a:0,format:"name"};var p=M.rgb.exec(g);return p?{r:p[1],g:p[2],b:p[3]}:(p=M.rgba.exec(g))?{r:p[1],g:p[2],b:p[3],a:p[4]}:(p=M.hsl.exec(g))?{h:p[1],s:p[2],l:p[3]}:(p=M.hsla.exec(g))?{h:p[1],s:p[2],l:p[3],a:p[4]}:(p=M.hsv.exec(g))?{h:p[1],s:p[2],v:p[3]}:(p=M.hsva.exec(g))?{h:p[1],s:p[2],v:p[3],a:p[4]}:(p=M.hex8.exec(g))?{r:(0,e.VD)(p[1]),g:(0,e.VD)(p[2]),b:(0,e.VD)(p[3]),a:(0,e.T6)(p[4]),format:d?"name":"hex8"}:(p=M.hex6.exec(g))?{r:(0,e.VD)(p[1]),g:(0,e.VD)(p[2]),b:(0,e.VD)(p[3]),format:d?"name":"hex"}:(p=M.hex4.exec(g))?{r:(0,e.VD)(p[1]+p[1]),g:(0,e.VD)(p[2]+p[2]),b:(0,e.VD)(p[3]+p[3]),a:(0,e.T6)(p[4]+p[4]),format:d?"name":"hex8"}:!!(p=M.hex3.exec(g))&&{r:(0,e.VD)(p[1]+p[1]),g:(0,e.VD)(p[2]+p[2]),b:(0,e.VD)(p[3]+p[3]),format:d?"name":"hex"}}(g)),"object"==typeof g&&(v(g.r)&&v(g.g)&&v(g.b)?(d=(0,e.rW)(g.r,g.g,g.b),x=!0,D="%"===String(g.r).substr(-1)?"prgb":"rgb"):v(g.h)&&v(g.s)&&v(g.v)?(f=(0,t.JX)(g.s),y=(0,t.JX)(g.v),d=(0,e.WE)(g.h,f,y),x=!0,D="hsv"):v(g.h)&&v(g.s)&&v(g.l)&&(f=(0,t.JX)(g.s),T=(0,t.JX)(g.l),d=(0,e.ve)(g.h,f,T),x=!0,D="hsl"),Object.prototype.hasOwnProperty.call(g,"a")&&(p=g.a)),p=(0,t.Yq)(p),{ok:x,format:g.format||D,r:Math.min(255,Math.max(d.r,0)),g:Math.min(255,Math.max(d.g,0)),b:Math.min(255,Math.max(d.b,0)),a:p}}var E="(?:".concat("[-\\+]?\\d*\\.\\d+%?",")|(?:").concat("[-\\+]?\\d+%?",")"),u="[\\s|\\(]+(".concat(E,")[,|\\s]+(").concat(E,")[,|\\s]+(").concat(E,")\\s*\\)?"),z="[\\s|\\(]+(".concat(E,")[,|\\s]+(").concat(E,")[,|\\s]+(").concat(E,")[,|\\s]+(").concat(E,")\\s*\\)?"),M={CSS_UNIT:new RegExp(E),rgb:new RegExp("rgb"+u),rgba:new RegExp("rgba"+z),hsl:new RegExp("hsl"+u),hsla:new RegExp("hsla"+z),hsv:new RegExp("hsv"+u),hsva:new RegExp("hsva"+z),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/};function v(g){return!!M.CSS_UNIT.exec(String(g))}},30889:(nt,I,o)=>{"use strict";o.d(I,{C:()=>l});var e=o(94265),n=o(41309),t=o(36379),i=o(86337),l=function(){function E(u,z){var M;if(void 0===u&&(u=""),void 0===z&&(z={}),u instanceof E)return u;"number"==typeof u&&(u=(0,e.Yt)(u)),this.originalInput=u;var h=(0,t.uA)(u);this.originalInput=u,this.r=h.r,this.g=h.g,this.b=h.b,this.a=h.a,this.roundA=Math.round(100*this.a)/100,this.format=null!==(M=z.format)&&void 0!==M?M:h.format,this.gradientType=z.gradientType,this.r<1&&(this.r=Math.round(this.r)),this.g<1&&(this.g=Math.round(this.g)),this.b<1&&(this.b=Math.round(this.b)),this.isValid=h.ok}return E.prototype.isDark=function(){return this.getBrightness()<128},E.prototype.isLight=function(){return!this.isDark()},E.prototype.getBrightness=function(){var u=this.toRgb();return(299*u.r+587*u.g+114*u.b)/1e3},E.prototype.getLuminance=function(){var u=this.toRgb(),v=u.r/255,g=u.g/255,d=u.b/255;return.2126*(v<=.03928?v/12.92:Math.pow((v+.055)/1.055,2.4))+.7152*(g<=.03928?g/12.92:Math.pow((g+.055)/1.055,2.4))+.0722*(d<=.03928?d/12.92:Math.pow((d+.055)/1.055,2.4))},E.prototype.getAlpha=function(){return this.a},E.prototype.setAlpha=function(u){return this.a=(0,i.Yq)(u),this.roundA=Math.round(100*this.a)/100,this},E.prototype.isMonochrome=function(){return 0===this.toHsl().s},E.prototype.toHsv=function(){var u=(0,e.py)(this.r,this.g,this.b);return{h:360*u.h,s:u.s,v:u.v,a:this.a}},E.prototype.toHsvString=function(){var u=(0,e.py)(this.r,this.g,this.b),z=Math.round(360*u.h),M=Math.round(100*u.s),h=Math.round(100*u.v);return 1===this.a?"hsv(".concat(z,", ").concat(M,"%, ").concat(h,"%)"):"hsva(".concat(z,", ").concat(M,"%, ").concat(h,"%, ").concat(this.roundA,")")},E.prototype.toHsl=function(){var u=(0,e.lC)(this.r,this.g,this.b);return{h:360*u.h,s:u.s,l:u.l,a:this.a}},E.prototype.toHslString=function(){var u=(0,e.lC)(this.r,this.g,this.b),z=Math.round(360*u.h),M=Math.round(100*u.s),h=Math.round(100*u.l);return 1===this.a?"hsl(".concat(z,", ").concat(M,"%, ").concat(h,"%)"):"hsla(".concat(z,", ").concat(M,"%, ").concat(h,"%, ").concat(this.roundA,")")},E.prototype.toHex=function(u){return void 0===u&&(u=!1),(0,e.vq)(this.r,this.g,this.b,u)},E.prototype.toHexString=function(u){return void 0===u&&(u=!1),"#"+this.toHex(u)},E.prototype.toHex8=function(u){return void 0===u&&(u=!1),(0,e.s)(this.r,this.g,this.b,this.a,u)},E.prototype.toHex8String=function(u){return void 0===u&&(u=!1),"#"+this.toHex8(u)},E.prototype.toHexShortString=function(u){return void 0===u&&(u=!1),1===this.a?this.toHexString(u):this.toHex8String(u)},E.prototype.toRgb=function(){return{r:Math.round(this.r),g:Math.round(this.g),b:Math.round(this.b),a:this.a}},E.prototype.toRgbString=function(){var u=Math.round(this.r),z=Math.round(this.g),M=Math.round(this.b);return 1===this.a?"rgb(".concat(u,", ").concat(z,", ").concat(M,")"):"rgba(".concat(u,", ").concat(z,", ").concat(M,", ").concat(this.roundA,")")},E.prototype.toPercentageRgb=function(){var u=function(z){return"".concat(Math.round(100*(0,i.sh)(z,255)),"%")};return{r:u(this.r),g:u(this.g),b:u(this.b),a:this.a}},E.prototype.toPercentageRgbString=function(){var u=function(z){return Math.round(100*(0,i.sh)(z,255))};return 1===this.a?"rgb(".concat(u(this.r),"%, ").concat(u(this.g),"%, ").concat(u(this.b),"%)"):"rgba(".concat(u(this.r),"%, ").concat(u(this.g),"%, ").concat(u(this.b),"%, ").concat(this.roundA,")")},E.prototype.toName=function(){if(0===this.a)return"transparent";if(this.a<1)return!1;for(var u="#"+(0,e.vq)(this.r,this.g,this.b,!1),z=0,M=Object.entries(n.R);z=0&&(u.startsWith("hex")||"name"===u)?"name"===u&&0===this.a?this.toName():this.toRgbString():("rgb"===u&&(M=this.toRgbString()),"prgb"===u&&(M=this.toPercentageRgbString()),("hex"===u||"hex6"===u)&&(M=this.toHexString()),"hex3"===u&&(M=this.toHexString(!0)),"hex4"===u&&(M=this.toHex8String(!0)),"hex8"===u&&(M=this.toHex8String()),"name"===u&&(M=this.toName()),"hsl"===u&&(M=this.toHslString()),"hsv"===u&&(M=this.toHsvString()),M||this.toHexString())},E.prototype.toNumber=function(){return(Math.round(this.r)<<16)+(Math.round(this.g)<<8)+Math.round(this.b)},E.prototype.clone=function(){return new E(this.toString())},E.prototype.lighten=function(u){void 0===u&&(u=10);var z=this.toHsl();return z.l+=u/100,z.l=(0,i.V2)(z.l),new E(z)},E.prototype.brighten=function(u){void 0===u&&(u=10);var z=this.toRgb();return z.r=Math.max(0,Math.min(255,z.r-Math.round(-u/100*255))),z.g=Math.max(0,Math.min(255,z.g-Math.round(-u/100*255))),z.b=Math.max(0,Math.min(255,z.b-Math.round(-u/100*255))),new E(z)},E.prototype.darken=function(u){void 0===u&&(u=10);var z=this.toHsl();return z.l-=u/100,z.l=(0,i.V2)(z.l),new E(z)},E.prototype.tint=function(u){return void 0===u&&(u=10),this.mix("white",u)},E.prototype.shade=function(u){return void 0===u&&(u=10),this.mix("black",u)},E.prototype.desaturate=function(u){void 0===u&&(u=10);var z=this.toHsl();return z.s-=u/100,z.s=(0,i.V2)(z.s),new E(z)},E.prototype.saturate=function(u){void 0===u&&(u=10);var z=this.toHsl();return z.s+=u/100,z.s=(0,i.V2)(z.s),new E(z)},E.prototype.greyscale=function(){return this.desaturate(100)},E.prototype.spin=function(u){var z=this.toHsl(),M=(z.h+u)%360;return z.h=M<0?360+M:M,new E(z)},E.prototype.mix=function(u,z){void 0===z&&(z=50);var M=this.toRgb(),h=new E(u).toRgb(),v=z/100;return new E({r:(h.r-M.r)*v+M.r,g:(h.g-M.g)*v+M.g,b:(h.b-M.b)*v+M.b,a:(h.a-M.a)*v+M.a})},E.prototype.analogous=function(u,z){void 0===u&&(u=6),void 0===z&&(z=30);var M=this.toHsl(),h=360/z,v=[this];for(M.h=(M.h-(h*u>>1)+720)%360;--u;)M.h=(M.h+h)%360,v.push(new E(M));return v},E.prototype.complement=function(){var u=this.toHsl();return u.h=(u.h+180)%360,new E(u)},E.prototype.monochromatic=function(u){void 0===u&&(u=6);for(var z=this.toHsv(),M=z.h,h=z.s,v=z.v,g=[],d=1/u;u--;)g.push(new E({h:M,s:h,v})),v=(v+d)%1;return g},E.prototype.splitcomplement=function(){var u=this.toHsl(),z=u.h;return[this,new E({h:(z+72)%360,s:u.s,l:u.l}),new E({h:(z+216)%360,s:u.s,l:u.l})]},E.prototype.onBackground=function(u){var z=this.toRgb(),M=new E(u).toRgb(),h=z.a+M.a*(1-z.a);return new E({r:(z.r*z.a+M.r*M.a*(1-z.a))/h,g:(z.g*z.a+M.g*M.a*(1-z.a))/h,b:(z.b*z.a+M.b*M.a*(1-z.a))/h,a:h})},E.prototype.triad=function(){return this.polyad(3)},E.prototype.tetrad=function(){return this.polyad(4)},E.prototype.polyad=function(u){for(var z=this.toHsl(),M=z.h,h=[this],v=360/u,g=1;g{"use strict";function e(u,z){(function t(u){return"string"==typeof u&&-1!==u.indexOf(".")&&1===parseFloat(u)})(u)&&(u="100%");var M=function i(u){return"string"==typeof u&&-1!==u.indexOf("%")}(u);return u=360===z?u:Math.min(z,Math.max(0,parseFloat(u))),M&&(u=parseInt(String(u*z),10)/100),Math.abs(u-z)<1e-6?1:u=360===z?(u<0?u%z+z:u%z)/parseFloat(String(z)):u%z/parseFloat(String(z))}function n(u){return Math.min(1,Math.max(0,u))}function l(u){return u=parseFloat(u),(isNaN(u)||u<0||u>1)&&(u=1),u}function C(u){return u<=1?"".concat(100*Number(u),"%"):u}function E(u){return 1===u.length?"0"+u:String(u)}o.d(I,{FZ:()=>E,JX:()=>C,V2:()=>n,Yq:()=>l,sh:()=>e})},45372:(nt,I,o)=>{"use strict";o.d(I,{h:()=>l});var e=o(97582),n=o(74648),t=o(65879),i=o(62831);class l{constructor(E,u,z){this.el=E,this.cdr=u,this.platform=z,this.enabled=!0,this.delay=300}ngAfterViewInit(){const E=this.el.nativeElement;!this.platform.isBrowser||!(E instanceof HTMLElement)||!this.enabled||(this._focusoutTimeout=setTimeout(()=>{E.focus({preventScroll:!1}),this.cdr.markForCheck()},this.delay))}ngOnDestroy(){this._focusoutTimeout&&(clearTimeout(this._focusoutTimeout),this._focusoutTimeout=null)}static#e=this.\u0275fac=function(u){return new(u||l)(t.Y36(t.SBq),t.Y36(t.sBO),t.Y36(i.t4))};static#t=this.\u0275dir=t.lG2({type:l,selectors:[["","auto-focus",""],["input","autofocus","autofocus"],["textarea","autofocus","autofocus"]],inputs:{enabled:"enabled",delay:"delay"},exportAs:["autoFocus"]})}(0,e.gn)([(0,n.yF)()],l.prototype,"enabled",void 0),(0,e.gn)([(0,n.Rn)()],l.prototype,"delay",void 0)},32461:(nt,I,o)=>{"use strict";o.d(I,{y:()=>t});var e=o(65879);const n=["*"];let t=(()=>{class i{static#e=this.\u0275fac=function(E){return new(E||i)};static#t=this.\u0275cmp=e.Xpm({type:i,selectors:[["avatar-list-item"],["","avatar-list-item",""]],inputs:{src:"src",text:"text",icon:"icon",tips:"tips"},exportAs:["avatarListItem"],ngContentSelectors:n,decls:1,vars:0,template:function(E,u){1&E&&(e.F$t(),e.Hsn(0))},encapsulation:2,changeDetection:0})}return i})()},8682:(nt,I,o)=>{"use strict";o.d(I,{k:()=>d});var e=o(97582),n=o(71993),t=o(74648),i=o(32461),l=o(65879),C=o(49388),E=o(96814),u=o(96928),z=o(96109);function M(p,f){if(1&p&&l._UZ(0,"nz-avatar",6),2&p){const y=l.oxw().$implicit,T=l.oxw();l.Q6J("nzTooltipTitle",y.tips)("nzSrc",y.src)("nzText",y.text)("nzIcon",y.icon)("nzSize",T.avatarSize)}}function h(p,f){if(1&p&&l._UZ(0,"nz-avatar",7),2&p){const y=l.oxw().$implicit,T=l.oxw();l.Q6J("nzSrc",y.src)("nzText",y.text)("nzIcon",y.icon)("nzSize",T.avatarSize)}}function v(p,f){if(1&p&&(l.TgZ(0,"li",3),l.YNc(1,M,1,5,"nz-avatar",4),l.YNc(2,h,1,4,"nz-avatar",5),l.qZA()),2&p){const y=f.$implicit,T=l.oxw();l.Q6J("ngClass",T.cls),l.xp6(1),l.Q6J("ngIf",y.tips),l.xp6(1),l.Q6J("ngIf",!y.tips)}}function g(p,f){if(1&p&&(l.TgZ(0,"li",3),l._UZ(1,"nz-avatar",8),l.qZA()),2&p){const y=l.oxw();l.Q6J("ngClass",y.cls),l.xp6(1),l.Q6J("nzSize",y.avatarSize)("ngStyle",y.excessItemsStyle)("nzText","+"+y.exceedCount)}}class d{set size(f){switch(this.cls="avatar-list__item"+("default"===f?"":` avatar-list__${f}`),f){case"large":case"small":case"default":this.avatarSize=f;break;default:this.avatarSize="small"}}constructor(f,y){this.cdr=f,this.directionality=y,this.inited=!1,this.dir$=this.directionality.change?.pipe((0,n.sL)()),this.items=[],this.exceedCount=0,this.dir="ltr",this.cls="",this.avatarSize="default",this.maxLength=0,this.excessItemsStyle=null}gen(){const{_items:f}=this,y=this.maxLength>0?this.maxLength:f.length,T=f.length,x=y>0&&y>=T?T:y;this.items=f.toArray().slice(0,x),this.exceedCount=x{this.dir=f,this.cdr.detectChanges()}),this.gen(),this.inited=!0}ngOnChanges(){this.inited&&this.gen()}static#e=this.\u0275fac=function(y){return new(y||d)(l.Y36(l.sBO),l.Y36(C.Is,8))};static#t=this.\u0275cmp=l.Xpm({type:d,selectors:[["avatar-list"]],contentQueries:function(y,T,x){if(1&y&&l.Suo(x,i.y,4),2&y){let D;l.iGM(D=l.CRH())&&(T._items=D)}},hostVars:4,hostBindings:function(y,T){2&y&&l.ekj("avatar-list",!0)("avatar-list-rtl","rtl"===T.dir)},inputs:{size:"size",maxLength:"maxLength",excessItemsStyle:"excessItemsStyle"},exportAs:["avatarList"],features:[l.TTD],decls:3,vars:2,consts:[[1,"avatar-list__wrap"],[3,"ngClass",4,"ngFor","ngForOf"],[3,"ngClass",4,"ngIf"],[3,"ngClass"],["nz-tooltip","",3,"nzTooltipTitle","nzSrc","nzText","nzIcon","nzSize",4,"ngIf"],[3,"nzSrc","nzText","nzIcon","nzSize",4,"ngIf"],["nz-tooltip","",3,"nzTooltipTitle","nzSrc","nzText","nzIcon","nzSize"],[3,"nzSrc","nzText","nzIcon","nzSize"],[2,"cursor","auto",3,"nzSize","ngStyle","nzText"]],template:function(y,T){1&y&&(l.TgZ(0,"ul",0),l.YNc(1,v,3,3,"li",1),l.YNc(2,g,2,4,"li",2),l.qZA()),2&y&&(l.xp6(1),l.Q6J("ngForOf",T.items),l.xp6(1),l.Q6J("ngIf",T.exceedCount>0))},dependencies:[E.mk,E.sg,E.O5,E.PC,u.Dz,z.SY],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,t.Rn)()],d.prototype,"maxLength",void 0)},67772:(nt,I,o)=>{"use strict";o.d(I,{E:()=>i}),o(64115);var n=o(65879),t=o(32481);let i=(()=>{class l{constructor(E,u){this.srv=E,this.viewContainerRef=u}ngOnInit(){const E=this.data.options.widget,u=this.srv.getWidget(E.key)?.ref;null!=u&&(this.viewContainerRef.clear(),this.viewContainerRef.createComponent(u).instance.data=this.data)}static#e=this.\u0275fac=function(u){return new(u||l)(n.Y36(t.x),n.Y36(n.s_b))};static#t=this.\u0275dir=n.lG2({type:l,selectors:[["","cell-widget-host",""]],inputs:{data:"data"}})}return l})()},11463:(nt,I,o)=>{"use strict";o.d(I,{T:()=>be});var e=o(97582),n=o(65879),t=o(53263),i=o(74648),l=o(8471),C=o(32481),E=o(52787),u=o(92760),z=o(96814),M=o(60095),h=o(62612),v=o(57907),g=o(33640),d=o(55695),p=o(96109),f=o(90551),y=o(67772);function T(le,ce){if(1&le){const Q=n.EpF();n.TgZ(0,"label",11),n.NdJ("ngModelChange",function(ae){n.CHM(Q);const xe=n.oxw(2);return n.KtG(xe.change(ae))}),n._uU(1),n.qZA()}if(2&le){const Q=n.oxw(2);n.Q6J("nzDisabled",Q.disabled)("ngModel",Q.value),n.xp6(1),n.hij(" ",null==Q.safeOpt.checkbox?null:Q.safeOpt.checkbox.label," ")}}function x(le,ce){if(1&le){const Q=n.EpF();n.TgZ(0,"label",12),n.NdJ("ngModelChange",function(ae){n.CHM(Q);const xe=n.oxw(2);return n.KtG(xe.change(ae))}),n._uU(1),n.qZA()}if(2&le){const Q=n.oxw(2);n.Q6J("nzDisabled",Q.disabled)("ngModel",Q.value),n.xp6(1),n.hij(" ",null==Q.safeOpt.radio?null:Q.safeOpt.radio.label," ")}}function D(le,ce){if(1&le){const Q=n.EpF();n.TgZ(0,"a",13),n.NdJ("click",function(ae){n.CHM(Q);const xe=n.oxw(2);return n.KtG(xe._link(ae))}),n.qZA()}if(2&le){const Q=n.oxw(2);n.Q6J("innerHTML",Q._text,n.oJD),n.uIk("target",null==Q.safeOpt.link?null:Q.safeOpt.link.target)("title",Q.value)}}function _(le,ce){if(1&le&&(n.TgZ(0,"nz-tag",14),n._UZ(1,"span",15),n.qZA()),2&le){const Q=n.oxw(2);n.Q6J("nzColor",null==Q.res||null==Q.res.result?null:Q.res.result.color),n.xp6(1),n.Q6J("innerHTML",Q._text,n.oJD)}}function P(le,ce){if(1&le&&n._UZ(0,"nz-badge",16),2&le){const Q=n.oxw(2);n.s9C("nzText",Q._text),n.Q6J("nzStatus",null==Q.res||null==Q.res.result?null:Q.res.result.color)}}function S(le,ce){}function A(le,ce){if(1&le&&n.YNc(0,S,0,0,"ng-template",17),2&le){const Q=n.oxw(2);n.Q6J("data",Q.hostData)}}function k(le,ce){if(1&le){const Q=n.EpF();n.TgZ(0,"img",19),n.NdJ("click",function(){const xe=n.CHM(Q).$implicit,Me=n.oxw(3);return n.KtG(Me._showImg(xe))}),n.qZA()}if(2&le){const Q=ce.$implicit,ie=n.oxw(3);n.ekj("point",null==ie.safeOpt.img?null:ie.safeOpt.img.big),n.uIk("src",Q,n.LSH)("height",null==ie.safeOpt.img?null:ie.safeOpt.img.size)("width",null==ie.safeOpt.img?null:ie.safeOpt.img.size)}}function R(le,ce){if(1&le&&(n.ynx(0),n.YNc(1,k,1,5,"img",18),n.BQk()),2&le){const Q=n.oxw(2);n.xp6(1),n.Q6J("ngForOf",Q._text)}}function $(le,ce){if(1&le&&n._UZ(0,"span",15),2&le){const Q=n.oxw(3);n.Q6J("innerHTML",Q._text,n.oJD),n.uIk("title",Q.value)}}function W(le,ce){if(1&le&&n._UZ(0,"span",23),2&le){const Q=n.oxw(3);n.Q6J("innerText",Q._text),n.uIk("title",Q.value)}}function ze(le,ce){if(1&le&&(n.TgZ(0,"span",24),n._uU(1),n.qZA()),2&le){const Q=n.oxw(3);n.xp6(1),n.Oqu(Q._unit)}}function Y(le,ce){if(1&le&&(n.ynx(0),n.YNc(1,$,1,2,"span",20),n.YNc(2,W,1,2,"span",21),n.YNc(3,ze,2,1,"span",22),n.BQk()),2&le){const Q=n.oxw(2);n.xp6(1),n.Q6J("ngIf",!Q.isText),n.xp6(1),n.Q6J("ngIf",Q.isText),n.xp6(1),n.Q6J("ngIf",Q._unit)}}function G(le,ce){if(1&le&&(n.ynx(0,3),n.YNc(1,T,2,3,"label",4),n.YNc(2,x,2,3,"label",5),n.YNc(3,D,1,3,"a",6),n.YNc(4,_,2,2,"nz-tag",7),n.YNc(5,P,1,2,"nz-badge",8),n.YNc(6,A,1,1,null,9),n.YNc(7,R,2,1,"ng-container",9),n.YNc(8,Y,4,3,"ng-container",10),n.BQk()),2&le){const Q=n.oxw();n.Q6J("ngSwitch",Q.safeOpt.type),n.xp6(1),n.Q6J("ngSwitchCase","checkbox"),n.xp6(1),n.Q6J("ngSwitchCase","radio"),n.xp6(1),n.Q6J("ngSwitchCase","link"),n.xp6(1),n.Q6J("ngSwitchCase","tag"),n.xp6(1),n.Q6J("ngSwitchCase","badge"),n.xp6(1),n.Q6J("ngSwitchCase","widget"),n.xp6(1),n.Q6J("ngSwitchCase","img")}}function V(le,ce){if(1&le&&(n.ynx(0),n._uU(1),n.BQk()),2&le){const Q=n.oxw(2);n.xp6(1),n.Oqu(null==Q.safeOpt.default?null:Q.safeOpt.default.text)}}function K(le,ce){}function te(le,ce){if(1&le&&(n.TgZ(0,"span",27),n.YNc(1,K,0,0,"ng-template",28),n.qZA()),2&le){const Q=n.oxw(3),ie=n.MAs(1);n.Q6J("nz-tooltip",Q.safeOpt.tooltip),n.xp6(1),n.Q6J("ngTemplateOutlet",ie)}}function ne(le,ce){if(1&le&&(n.ynx(0),n.YNc(1,te,2,2,"span",26),n.BQk()),2&le){const Q=n.oxw(2),ie=n.MAs(1);n.xp6(1),n.Q6J("ngIf",Q.safeOpt.tooltip)("ngIfElse",ie)}}function fe(le,ce){if(1&le&&(n.YNc(0,V,2,1,"ng-container",25),n.YNc(1,ne,2,2,"ng-container",25)),2&le){const Q=n.oxw();n.Q6J("ngIf",Q.showDefault),n.xp6(1),n.Q6J("ngIf",!Q.showDefault)}}function re(le,ce){1&le&&n._UZ(0,"span",29)}class be{get safeOpt(){return this.res?.options??{}}get isText(){return"text"===this.res?.safeHtml}get hostData(){return{value:this.value,options:this.srv.fixOptions(this.options)}}constructor(ce,Q,ie,ae,xe,Me,Ye){this.srv=ce,this.router=Q,this.cdr=ie,this.el=ae,this.renderer=xe,this.imgSrv=Me,this.win=Ye,this.showDefault=!1,this.valueChange=new n.vpe,this.loading=!1,this.disabled=!1}updateValue(){this.destroy$?.unsubscribe(),this.destroy$=this.srv.get(this.value,this.options).subscribe(ce=>{this.res=ce,this.showDefault=this.value==this.safeOpt.default.condition,this._text=ce.result?.text??"",this._unit=ce.result?.unit??this.safeOpt?.unit,this.cdr.detectChanges(),this.setClass()})}setClass(){const{el:ce,renderer:Q}=this,{renderType:ie,size:ae}=this.safeOpt;(0,t.C)(ce.nativeElement,Q,{cell:!0,[`cell__${ie}`]:null!=ie,[`cell__${ae}`]:null!=ae,"cell__has-unit":this._unit,"cell__has-default":this.showDefault,cell__disabled:this.disabled}),ce.nativeElement.dataset.type=this.safeOpt.type}ngOnChanges(ce){Object.keys(ce).every(Q=>["loading","disabled"].includes(Q))?this.setClass():this.updateValue()}change(ce){this.value=ce,this.valueChange.emit(ce)}_link(ce){if(ce.preventDefault(),ce.stopPropagation(),this.disabled)return;const Q=this.safeOpt.link,ie=Q?.url;null!=ie&&(/https?:\/\//g.test(ie)?this.win.open(ie,Q?.target):this.router.navigateByUrl(ie))}_showImg(ce){const Q=this.safeOpt.img;if(null==Q||null==Q.big)return;let ie=-1;const ae=this._text.map((xe,Me)=>(-1===ie&&xe===ce&&(ie=Me),"function"==typeof Q.big?Q.big(xe):xe));this.imgSrv.preview(ae.map(xe=>({src:xe})),Q.previewOptions).switchTo(ie)}ngOnDestroy(){this.destroy$?.unsubscribe()}static#e=this.\u0275fac=function(Q){return new(Q||be)(n.Y36(C.x),n.Y36(E.F0),n.Y36(n.sBO),n.Y36(n.SBq),n.Y36(n.Qsj),n.Y36(u.x8),n.Y36(l.m))};static#t=this.\u0275cmp=n.Xpm({type:be,selectors:[["cell"],["","cell",""]],inputs:{value:"value",options:"options",loading:"loading",disabled:"disabled"},outputs:{valueChange:"valueChange"},exportAs:["cell"],features:[n.TTD],decls:5,vars:2,consts:[["text",""],["textWrap",""],["nz-icon","","nzType","loading",4,"ngIf","ngIfElse"],[3,"ngSwitch"],["nz-checkbox","",3,"nzDisabled","ngModel","ngModelChange",4,"ngSwitchCase"],["nz-radio","",3,"nzDisabled","ngModel","ngModelChange",4,"ngSwitchCase"],[3,"innerHTML","click",4,"ngSwitchCase"],[3,"nzColor",4,"ngSwitchCase"],[3,"nzStatus","nzText",4,"ngSwitchCase"],[4,"ngSwitchCase"],[4,"ngSwitchDefault"],["nz-checkbox","",3,"nzDisabled","ngModel","ngModelChange"],["nz-radio","",3,"nzDisabled","ngModel","ngModelChange"],[3,"innerHTML","click"],[3,"nzColor"],[3,"innerHTML"],[3,"nzStatus","nzText"],["cell-widget-host","",3,"data"],["class","img",3,"point","click",4,"ngFor","ngForOf"],[1,"img",3,"click"],[3,"innerHTML",4,"ngIf"],[3,"innerText",4,"ngIf"],["class","unit",4,"ngIf"],[3,"innerText"],[1,"unit"],[4,"ngIf"],[3,"nz-tooltip",4,"ngIf","ngIfElse"],[3,"nz-tooltip"],[3,"ngTemplateOutlet"],["nz-icon","","nzType","loading"]],template:function(Q,ie){if(1&Q&&(n.YNc(0,G,9,8,"ng-template",null,0,n.W1O),n.YNc(2,fe,2,2,"ng-template",null,1,n.W1O),n.YNc(4,re,1,0,"span",2)),2&Q){const ae=n.MAs(3);n.xp6(4),n.Q6J("ngIf",ie.loading)("ngIfElse",ae)}},dependencies:[z.sg,z.O5,z.tP,z.RF,z.n9,z.ED,M.JJ,M.On,h.Ie,v.Of,g.x7,d.j,p.SY,f.Ls,y.E],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,i.yF)()],be.prototype,"loading",void 0),(0,e.gn)([(0,i.yF)()],be.prototype,"disabled",void 0)},32481:(nt,I,o)=>{"use strict";o.d(I,{x:()=>h});var e=o(22096),n=o(37398),t=o(980),i=o(60325),l=o(59927),C=o(64115),E=o(65879),u=o(78967),z=o(12131),M=o(6593);let h=(()=>{class v{constructor(d,p,f,y){this.nzI18n=p,this.currency=f,this.dom=y,this.widgets={date:{type:"fn",ref:(T,x)=>({text:(0,i.p6)(T,x.date.format,this.nzI18n.getDateLocale())})},mega:{type:"fn",ref:(T,x)=>{const D=this.currency.mega(T,x.mega);return{text:D.value,unit:D.unitI18n}}},currency:{type:"fn",ref:(T,x)=>({text:this.currency.format(T,x.currency)})},cny:{type:"fn",ref:(T,x)=>({text:this.currency.cny(T,x.cny)})},boolean:{type:"fn",ref:(T,x)=>({text:this.dom.bypassSecurityTrustHtml((0,t.yn)(T,x.boolean))})},img:{type:"fn",ref:T=>({text:Array.isArray(T)?T:[T]})}},this.globalOptions=d.merge("cell",{date:{format:"yyyy-MM-dd HH:mm:ss"},img:{size:32},default:{text:"-"}})}registerWidget(d,p){this.widgets[d]={type:"widget",ref:p}}getWidget(d){return this.widgets[d]}genType(d,p){if(null!=p.type)return p.type;const f=typeof d;return"number"===f&&/^[0-9]{13}$/g.test(d)||d instanceof Date||null!=p.date?"date":null!=p.widget?"widget":null!=p.mega?"mega":null!=p.currency?"currency":null!=p.cny?"cny":null!=p.img?"img":null!=p.link?"link":null!=p.html?"html":null!=p.badge?"badge":null!=p.tag?"tag":null!=p.checkbox?"checkbox":null!=p.radio?"radio":null!=p.enum?"enum":"number"===f?"number":"boolean"===f||null!=p.boolean?"boolean":"string"}fixOptions(d){return(0,C.RH)({},this.globalOptions,d)}get(d,p){const f=this.genType(d,{...p}),y=this.fixOptions(p);y.type=f;const T="object"==typeof d&&"function"==typeof d?.getTypeName&&null!=d?.getTypeName();let x={result:"object"!=typeof d||T?{text:null==d?"":T?d:`${d}`}:d,options:y};const D=this.widgets[f];return"fn"===D?.type&&(x.result=D.ref(d,y)),("function"==typeof d?d(d,y):(0,e.of)(x.result)).pipe((0,n.U)(_=>{let P;switch(x.result=_,f){case"badge":P=(y.badge?.data??{})[d],x.result={color:"default",...P};break;case"tag":P=(y.tag?.data??{})[d],x.result=P;break;case"enum":x.result={text:(y.enum??{})[d]};break;case"html":x.safeHtml=y.html?.safe;break;case"string":T&&(x.safeHtml="safeHtml")}return("badge"===f||"tag"===f)&&null!=P?.tooltip&&(x.options.tooltip=P.tooltip),null!=y.mask&&(x.result.text=(0,l.B0)(x.result.text,y.mask)),x}))}static#e=this.\u0275fac=function(p){return new(p||v)(E.LFG(u.Ri),E.LFG(z.wi),E.LFG(l.ie),E.LFG(M.H7))};static#t=this.\u0275prov=E.Yz7({token:v,factory:v.\u0275fac,providedIn:"root"})}return v})()},22948:(nt,I,o)=>{"use strict";o.d(I,{cm:()=>G,xx:()=>V.x}),o(11463),o(67772);var t=o(96814),i=o(60095),l=o(33640),C=o(62612),E=o(65879),u=o(92760),z=o(49388),M=o(34423),h=o(33651),v=o(62831),g=o(68484),d=o(90551),p=o(6192);let R=(()=>{class K{static#e=this.\u0275fac=function(fe){return new(fe||K)};static#t=this.\u0275mod=E.oAB({type:K});static#n=this.\u0275inj=E.cJS({imports:[z.vT,h.U8,g.eL,M._t,t.ez,d.PV,p.YS,v.ud,u.Gb]})}return K})();var $=o(57907),W=o(55695),ze=o(96109);let G=(()=>{class K{static#e=this.\u0275fac=function(fe){return new(fe||K)};static#t=this.\u0275mod=E.oAB({type:K});static#n=this.\u0275inj=E.cJS({imports:[t.ez,i.u5,C.Wr,$.aF,l.mS,W.X,ze.cg,d.PV,R]})}return K})();var V=o(32481)},33821:(nt,I,o)=>{"use strict";o.d(I,{m:()=>u});var e=o(65879),n=o(27163),t=o(89207),i=o(96814),l=o(44556);const C=["cd"];function E(z,M){if(1&z){const h=e.EpF();e.TgZ(0,"countdown",1,2),e.NdJ("event",function(g){e.CHM(h);const d=e.oxw();return e.KtG(d.handleEvent(g))}),e.qZA()}if(2&z){const h=e.oxw();e.Q6J("config",h.config)}}let u=(()=>{class z{constructor(){this.event=new e.vpe}set target(h){this.config={format:"HH:mm:ss",stopTime:"number"==typeof h?(0,n.Z)(new Date,h).valueOf():+(0,t.Z)(h,"t")}}handleEvent(h){this.event.emit(h)}static#e=this.\u0275fac=function(v){return new(v||z)};static#t=this.\u0275cmp=e.Xpm({type:z,selectors:[["count-down"]],viewQuery:function(v,g){if(1&v&&e.Gf(C,5),2&v){let d;e.iGM(d=e.CRH())&&(g.instance=d.first)}},inputs:{config:"config",target:"target"},outputs:{event:"event"},exportAs:["countDown"],decls:1,vars:1,consts:[[3,"config","event",4,"ngIf"],[3,"config","event"],["cd",""]],template:function(v,g){1&v&&e.YNc(0,E,2,1,"countdown",0),2&v&&e.Q6J("ngIf",g.config)},dependencies:[i.O5,l.MR],encapsulation:2,changeDetection:0})}return z})()},94461:(nt,I,o)=>{"use strict";o.d(I,{W:()=>E});var e=o(65879),n=o(96814);const t=["tpl"],i=function(u){return{"ml-sm":u}};function l(u,z){if(1&u){const M=e.EpF();e.TgZ(0,"a",2),e.NdJ("click",function(){const g=e.CHM(M).$implicit,d=e.oxw(2);return e.KtG(d.click(g))}),e.qZA()}if(2&u){const h=z.first;e.Q6J("innerHTML",z.$implicit._text,e.oJD)("ngClass",e.VKq(2,i,!h))}}function C(u,z){if(1&u&&e.YNc(0,l,1,4,"a",1),2&u){const M=e.oxw();e.Q6J("ngForOf",M.list)}}let E=(()=>{class u{constructor(){this.list=[]}click(M){}static#e=this.\u0275fac=function(h){return new(h||u)};static#t=this.\u0275cmp=e.Xpm({type:u,selectors:[["ng-component"]],viewQuery:function(h,v){if(1&h&&e.Gf(t,7),2&h){let g;e.iGM(g=e.CRH())&&(v.tpl=g.first)}},decls:2,vars:0,consts:[["tpl",""],[3,"innerHTML","ngClass","click",4,"ngFor","ngForOf"],[3,"innerHTML","ngClass","click"]],template:function(h,v){1&h&&e.YNc(0,C,1,1,"ng-template",null,0,e.W1O)},dependencies:[n.mk,n.sg],encapsulation:2})}return u})()},67744:(nt,I,o)=>{"use strict";o.d(I,{Q:()=>u});var e=o(65879),n=o(60325),t=o(64115),i=o(94461),l=o(6593),C=o(78967),E=o(52682);let u=(()=>{class z{set shortcut(h){const v=(0,t.Z2)({list:[]},!0,this.defaultShortcuts,h??{});"object"!=typeof h&&(v.enabled=!1!==h),(v.list||[]).forEach(g=>{g._text=this.dom.bypassSecurityTrustHtml(g.text)}),this._shortcut=v,this.refreshShortcut()}get shortcut(){return this._shortcut}get dp(){return this.nativeComp.datePicker}get srv(){return this.dp.datePickerService}constructor(h,v,g,d){this.dom=h,this.nativeComp=g,this.vcr=d,this._shortcut=null,this.shortcutFactory=null,this.start=null,this.end=null,this.ngModelEndChange=new e.vpe,(0,t.hu)(!!g,'It should be attached to nz-range-picker component, for example: \'\'');const p=v.merge("dataRange",{nzFormat:"yyyy-MM-dd",nzAllowClear:!0,nzAutoFocus:!1,nzPopupStyle:{position:"relative"},nzShowToday:!0,shortcuts:{enabled:!1,closed:!0,list:[{text:"\u4eca\u5929",fn:()=>(0,n.wb)("today")},{text:"\u6628\u5929",fn:()=>(0,n.wb)("yesterday")},{text:"\u8fd13\u5929",fn:()=>(0,n.wb)(-2)},{text:"\u8fd17\u5929",fn:()=>(0,n.wb)(-6)},{text:"\u672c\u5468",fn:()=>(0,n.wb)("week")},{text:"\u672c\u6708",fn:()=>(0,n.wb)("month")},{text:"\u5168\u5e74",fn:()=>(0,n.wb)("year")}]}});this.defaultShortcuts={...p.shortcuts},Object.assign(this,p)}cd(){this.dp.cdr.markForCheck()}overrideNative(){const h=this.dp;h.writeValue=g=>{const d=(g&&this.ngModelEnd?[g,this.ngModelEnd]:[]).filter(p=>!!p);this.srv.setValue(this.srv.makeValue(d)),this.start=d.length>0?d[0]:null,this.end=d.length>0?d[1]:null,this.cd()};const v=h.onChangeFn;h.onChangeFn=g=>{let d=null,p=null;g.length>0&&2===g.filter(f=>null!=f).length&&([d,p]=(0,n.SA)([g[0],g[1]])),this.start=d,this.end=p,v(d),this.ngModelEnd=p,this.ngModelEndChange.emit(p)}}refreshShortcut(){if(!this._shortcut)return;const{enabled:h,list:v}=this._shortcut;let g;if(this.nativeComp&&h){this.shortcutFactory||(this.shortcutFactory=this.vcr.createComponent(i.W));const{instance:d}=this.shortcutFactory;d.list=v,d.click=p=>{const f=p.fn([this.start,this.end]);this.srv.setValue(this.srv.makeValue(f)),this.dp.onChangeFn(f),this.dp.close()},g=d.tpl}else g=void 0;this.nativeComp.datePicker.extraFooter=g,Promise.resolve().then(()=>this.cd())}ngAfterViewInit(){this.overrideNative(),this.refreshShortcut()}destoryShortcut(){null!=this.shortcutFactory&&this.shortcutFactory.destroy()}ngOnDestroy(){this.destoryShortcut()}static#e=this.\u0275fac=function(v){return new(v||z)(e.Y36(l.H7),e.Y36(C.Ri),e.Y36(E.wS,9),e.Y36(e.s_b))};static#t=this.\u0275dir=e.lG2({type:z,selectors:[["nz-range-picker","extend",""]],inputs:{shortcut:"shortcut",ngModelEnd:"ngModelEnd"},outputs:{ngModelEndChange:"ngModelEndChange"},exportAs:["extendRangePicker"]})}return z})()},3933:(nt,I,o)=>{"use strict";o.d(I,{Q:()=>E});var e=o(49671),n=o(65879),t=o(64716),i=o(10217),C=o(980);let E=(()=>{class u{getDisposition(M){return(M||"").split(";").filter(v=>v.includes("=")).map(v=>{const g=v.split("=");let p=g[1];return p.startsWith("UTF-8''")&&(p=p.substring(7)),{[g[0].trim()]:p}}).reduce((v,g)=>g,{})}constructor(M,h){this.el=M,this._http=h,this.isFileSaverSupported=!0,this.httpMethod="get",this.success=new n.vpe,this.error=new n.vpe;let v=!1;try{v=!!new Blob}catch{}this.isFileSaverSupported=v,v||M.nativeElement.classList.add("down-file__not-support")}setDisabled(M){const h=this.el.nativeElement;h.disabled=M,h.classList[M?"add":"remove"]("down-file__disabled")}_click(M){var h=this;return(0,e.Z)(function*(){if(!h.isFileSaverSupported||"function"==typeof h.pre&&!(yield h.pre(M)))return M.stopPropagation(),void M.preventDefault();h.setDisabled(!0),h._http.request(h.httpMethod,h.httpUrl,{params:h.httpData||{},responseType:"blob",observe:"response",body:h.httpBody}).pipe((0,t.x)(()=>h.setDisabled(!1))).subscribe({next:v=>{if(200!==v.status||v.body.size<=0)return void h.error.emit(v);const g=h.getDisposition(v.headers.get("content-disposition"));let d=h.fileName;"function"==typeof d&&(d=d(v)),d=d||g["filename*"]||g.filename||v.headers.get("filename")||v.headers.get("x-filename"),(0,i.saveAs)(v.body,decodeURI(d)),h.success.emit(v)},error:v=>h.error.emit(v)})})()}static#e=this.\u0275fac=function(h){return new(h||u)(n.Y36(n.SBq),n.Y36(C.lP))};static#t=this.\u0275dir=n.lG2({type:u,selectors:[["","down-file",""]],hostBindings:function(h,v){1&h&&n.NdJ("click",function(d){return v._click(d)})},inputs:{httpData:["http-data","httpData"],httpBody:["http-body","httpBody"],httpMethod:["http-method","httpMethod"],httpUrl:["http-url","httpUrl"],fileName:["file-name","fileName"],pre:"pre"},outputs:{success:"success",error:"error"},exportAs:["downFile"]})}return u})()},96103:(nt,I,o)=>{"use strict";o.d(I,{S:()=>Y});var e=o(97582),n=o(96814),t=o(48180),i=o(74648),l=o(65879),C=o(6593),E=o(17131),u=o(96109);const z=["orgEl"],M=["shadowOrgEl"],h=["shadowTextEl"];function v(G,V){1&G&&l.GkF(0)}function g(G,V){if(1&G&&l._UZ(0,"div",10),2&G){const K=l.oxw(3);l.Q6J("innerHTML",K.orgHtml,l.oJD)}}const d=function(){return{"overflow-wrap":"break-word","word-wrap":"break-word"}};function p(G,V){if(1&G&&(l.TgZ(0,"span",7),l.YNc(1,v,1,0,"ng-container",8),l.YNc(2,g,1,1,"ng-template",null,9,l.W1O),l.qZA()),2&G){const K=l.MAs(3),te=l.oxw().$implicit;l.Q6J("nzTooltipTitle",K)("nzTooltipOverlayStyle",l.DdM(3,d)),l.xp6(1),l.Q6J("ngTemplateOutlet",te)}}function f(G,V){if(1&G&&l.YNc(0,p,4,4,"span",6),2&G){const K=V.$implicit,te=l.oxw();l.Q6J("ngIf",te.tooltip)("ngIfElse",K)}}function y(G,V){if(1&G&&l._UZ(0,"span",11),2&G){const K=l.oxw();l.Q6J("ngClass",K.cls)}}function T(G,V){}function x(G,V){if(1&G&&l._uU(0),2&G){const K=l.oxw(2);l.Oqu(K.text)}}const D=function(G){return{$implicit:G}};function _(G,V){if(1&G&&(l.ynx(0),l.YNc(1,T,0,0,"ng-template",12),l.YNc(2,x,1,1,"ng-template",null,13,l.W1O),l.BQk()),2&G){const K=l.MAs(3);l.oxw();const te=l.MAs(4);l.xp6(1),l.Q6J("ngTemplateOutlet",te)("ngTemplateOutletContext",l.VKq(2,D,K))}}function P(G,V){}const S=function(G){return{"-webkit-line-clamp":G,"-webkit-box-orient":"vertical"}};function A(G,V){if(1&G&&l._UZ(0,"div",15),2&G){const K=l.oxw(2);l.Q6J("ngClass",K.cls)("ngStyle",l.VKq(2,S,K.lines))}}function k(G,V){if(1&G&&(l.ynx(0),l.YNc(1,P,0,0,"ng-template",12),l.YNc(2,A,1,4,"ng-template",null,14,l.W1O),l.BQk()),2&G){const K=l.MAs(3);l.oxw();const te=l.MAs(4);l.xp6(1),l.Q6J("ngTemplateOutlet",te)("ngTemplateOutletContext",l.VKq(2,D,K))}}function R(G,V){}function $(G,V){if(1&G&&l._uU(0),2&G){const K=l.oxw(2);l.Oqu(K.linsWord)}}function W(G,V){if(1&G&&(l.TgZ(0,"div",11)(1,"div",16),l.YNc(2,R,0,0,"ng-template",12),l.YNc(3,$,1,1,"ng-template",null,17,l.W1O),l._UZ(5,"div",18,19),l.TgZ(7,"div",20,21)(9,"span"),l._uU(10),l.qZA()()()()),2&G){const K=l.MAs(4),te=l.oxw(),ne=l.MAs(4);l.Q6J("ngClass",te.cls),l.xp6(2),l.Q6J("ngTemplateOutlet",ne)("ngTemplateOutletContext",l.VKq(5,D,K)),l.xp6(3),l.Q6J("innerHTML",te.orgHtml,l.oJD),l.xp6(5),l.Oqu(te.text)}}const ze=["*"];class Y{get linsWord(){const{targetCount:V,text:K,tail:te}=this;return(V>0?K.substring(0,V):"")+(V>0&&V{const ne=te.charCodeAt(0);return ne>=0&&ne<=128?K+1:K+2},0)}cutStrByFullLength(V,K){let te=0;return V.split("").reduce((ne,fe)=>{const re=fe.charCodeAt(0);return te+=re>=0&&re<=128?1:2,te<=K?ne+fe:ne},"")}bisection(V,K,te,ne,fe,re){const be=this.tail;re.innerHTML=fe.substring(0,K)+be;let le=re.offsetHeight;return le<=V?(re.innerHTML=fe.substring(0,K+1)+be,le=re.offsetHeight,le>V||K===te?K:(K=ne-(te=K)==1?te+1:Math.floor((ne-te)/2)+te,this.bisection(V,K,te,ne,fe,re))):K-1<0?K:(re.innerHTML=fe.substring(0,K-1)+be,le=re.offsetHeight,le<=V?K-1:(ne=K,K=Math.floor((ne-te)/2)+te,this.bisection(V,K,te,ne,fe,re)))}genType(){const{lines:V,length:K,isSupportLineClamp:te}=this;this.cls={ellipsis:!0,ellipsis__lines:V&&!te,"ellipsis__line-clamp":V&&te},this.type=V||K?V?te?"line-clamp":"line":"length":"default"}gen(){const{type:V,lines:K,length:te,fullWidthRecognition:ne,tail:fe,orgEl:re,cdr:be,ngZone:le}=this;if("length"===V){const ce=re.nativeElement;if(ce.children.length>0)throw new Error("Ellipsis content must be string.");const Q=ce.textContent;if((ne?this.getStrFullLength(Q):Q.length)<=te||te<0)this.text=Q;else{let ae;ae=te-fe.length<=0?"":ne?this.cutStrByFullLength(Q,te):Q.slice(0,te),this.text=ae+fe}le.run(()=>be.detectChanges())}else if("line"===V){const{shadowOrgEl:ce,shadowTextEl:Q}=this,ie=ce.nativeElement,ae=ie.innerText||ie.textContent,Me=K*parseInt(this.win.getComputedStyle(this.getEl(".ellipsis")).lineHeight,10);if(this.getEl(".ellipsis__handle").style.height=`${Me}px`,ie.offsetHeight<=Me)this.text=ae,this.targetCount=ae.length;else{const Ye=ae.length,q=Math.ceil(Ye/2),ve=this.bisection(Me,q,0,Ye,ae,Q.nativeElement.firstChild);this.text=ae,this.targetCount=ve}le.run(()=>be.detectChanges())}}getEl(V){return this.el.nativeElement.querySelector(V)}executeOnStable(V){this.ngZone.isStable?V():this.ngZone.onStable.asObservable().pipe((0,t.q)(1)).subscribe(V)}refresh(){this.genType();const{type:V,dom:K,orgEl:te,cdr:ne}=this,fe=te.nativeElement.innerHTML;this.orgHtml=K.bypassSecurityTrustHtml(fe),ne.detectChanges(),this.executeOnStable(()=>{if(this.gen(),"line"!==V){const re=this.getEl(".ellipsis");re&&(re.innerHTML=fe)}})}ngAfterViewInit(){this.inited=!0,this.refresh()}ngOnChanges(){this.inited&&this.refresh()}static#e=this.\u0275fac=function(K){return new(K||Y)(l.Y36(l.SBq),l.Y36(l.R0b),l.Y36(C.H7),l.Y36(n.K0),l.Y36(l.sBO))};static#t=this.\u0275cmp=l.Xpm({type:Y,selectors:[["ellipsis"]],viewQuery:function(K,te){if(1&K&&(l.Gf(z,5),l.Gf(M,5),l.Gf(h,5)),2&K){let ne;l.iGM(ne=l.CRH())&&(te.orgEl=ne.first),l.iGM(ne=l.CRH())&&(te.shadowOrgEl=ne.first),l.iGM(ne=l.CRH())&&(te.shadowTextEl=ne.first)}},inputs:{tooltip:"tooltip",length:"length",lines:"lines",fullWidthRecognition:"fullWidthRecognition",tail:"tail"},exportAs:["ellipsis"],features:[l.TTD],ngContentSelectors:ze,decls:10,vars:5,consts:[[2,"display","none",3,"cdkObserveContent"],["orgEl",""],["tooltipTpl",""],[3,"ngSwitch"],[3,"ngClass",4,"ngSwitchCase"],[4,"ngSwitchCase"],["nz-tooltip","",3,"nzTooltipTitle","nzTooltipOverlayStyle",4,"ngIf","ngIfElse"],["nz-tooltip","",3,"nzTooltipTitle","nzTooltipOverlayStyle"],[4,"ngTemplateOutlet"],["titleTpl",""],[3,"innerHTML"],[3,"ngClass"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],["lengthTpl",""],["lineClampTpl",""],[3,"ngClass","ngStyle"],[1,"ellipsis__handle"],["lineTpl",""],[1,"ellipsis__shadow",3,"innerHTML"],["shadowOrgEl",""],[1,"ellipsis__shadow"],["shadowTextEl",""]],template:function(K,te){1&K&&(l.F$t(),l.TgZ(0,"div",0,1),l.NdJ("cdkObserveContent",function(){return te.refresh()}),l.Hsn(2),l.qZA(),l.YNc(3,f,1,2,"ng-template",null,2,l.W1O),l.ynx(5,3),l.YNc(6,y,1,1,"span",4),l.YNc(7,_,4,4,"ng-container",5),l.YNc(8,k,4,4,"ng-container",5),l.YNc(9,W,11,7,"div",4),l.BQk()),2&K&&(l.xp6(5),l.Q6J("ngSwitch",te.type),l.xp6(1),l.Q6J("ngSwitchCase","default"),l.xp6(1),l.Q6J("ngSwitchCase","length"),l.xp6(1),l.Q6J("ngSwitchCase","line-clamp"),l.xp6(1),l.Q6J("ngSwitchCase","line"))},dependencies:[n.mk,n.O5,n.tP,n.PC,n.RF,n.n9,E.wD,u.SY],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,i.yF)()],Y.prototype,"tooltip",void 0),(0,e.gn)([(0,i.Rn)(null)],Y.prototype,"length",void 0),(0,e.gn)([(0,i.Rn)(null)],Y.prototype,"lines",void 0),(0,e.gn)([(0,i.yF)()],Y.prototype,"fullWidthRecognition",void 0)},32113:(nt,I,o)=>{"use strict";o.d(I,{C:()=>h});var e=o(97582),n=o(96814),t=o(65879),i=o(71993),l=o(91687),C=o(74648),E=o(78967),u=o(49388),z=o(62831),M=o(90551);class h{constructor(g,d,p,f,y,T){this.el=g,this.cdr=d,this.doc=p,this.directionality=y,this.platform=T,this.formEl=null,this.destroy$=(0,t.f3M)(t.ktI),this._hiden=!0,this.count=0,this.dir="ltr",f.attach(this,"errorCollect",{freq:500,offsetTop:145})}get errEls(){return this.formEl.querySelectorAll(".ant-form-item-has-error")}update(){const g=this.errEls.length;g!==this.count&&(this.count=g,this._hiden=0===g,this.cdr.markForCheck())}_click(){if(0===this.count)return!1;const g=this.errEls;return(this.findParent(g[0],"[nz-form-control]")||g[0]).scrollIntoView(!0),this.doc.documentElement.scrollTop-=this.offsetTop,!0}install(){this.dir=this.directionality.value,this.directionality.change?.pipe((0,i.sL)(this.destroy$)).subscribe(g=>{this.dir=g,this.cdr.detectChanges()}),(0,l.F)(this.freq).pipe((0,i.sL)(this.destroy$)).subscribe(()=>this.update()),this.update()}findParent(g,d){let p=null;for(;g;){if(g.querySelector(d)){p=g;break}g=g.parentElement}return p}ngOnInit(){if(this.platform.isBrowser){if(this.formEl=this.findParent(this.el.nativeElement,"form"),null===this.formEl)throw new Error("No found form element");this.install()}}static#e=this.\u0275fac=function(d){return new(d||h)(t.Y36(t.SBq),t.Y36(t.sBO),t.Y36(n.K0),t.Y36(E.Ri),t.Y36(u.Is,8),t.Y36(z.t4))};static#t=this.\u0275cmp=t.Xpm({type:h,selectors:[["error-collect"],["","error-collect",""]],hostVars:6,hostBindings:function(d,p){1&d&&t.NdJ("click",function(){return p._click()}),2&d&&t.ekj("error-collect",!0)("error-collect-rtl","rtl"===p.dir)("d-none",p._hiden)},inputs:{freq:"freq",offsetTop:"offsetTop"},exportAs:["errorCollect"],decls:3,vars:1,consts:[["nz-icon","","nzType","exclamation-circle"],[1,"error-collect__count"]],template:function(d,p){1&d&&(t._UZ(0,"i",0),t.TgZ(1,"span",1),t._uU(2),t.qZA()),2&d&&(t.xp6(2),t.Oqu(p.count))},dependencies:[M.Ls],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,C.Rn)()],h.prototype,"freq",void 0),(0,e.gn)([(0,C.Rn)()],h.prototype,"offsetTop",void 0)},9405:(nt,I,o)=>{"use strict";o.d(I,{S:()=>y});var e=o(65879),n=o(71993),t=o(20325),i=o(980),l=o(6593),C=o(78967),E=o(49388),u=o(96814),z=o(17131),M=o(52787),h=o(42840),v=o(70855),g=o(41958);const d=["conTpl"];function p(T,x){if(1&T&&(e.TgZ(0,"button",9),e._uU(1),e.qZA()),2&T){const D=e.oxw();e.Q6J("routerLink",D.backRouterLink)("nzType","primary"),e.xp6(1),e.hij(" ",D.locale.backToHome," ")}}const f=["*"];let y=(()=>{class T{set type(D){const _=this.typeDict[D];_&&(this.fixImg(_.img),this._type=D,this._title=_.title,this._desc="")}fixImg(D){this._img=this.dom.bypassSecurityTrustStyle(`url('${D}')`)}set img(D){this.fixImg(D)}set title(D){this._title=this.dom.bypassSecurityTrustHtml(D)}set desc(D){this._desc=this.dom.bypassSecurityTrustHtml(D)}checkContent(){this.hasCon=!(0,t.x)(this.conTpl.nativeElement),this.cdr.detectChanges()}constructor(D,_,P,S,A){this.i18n=D,this.dom=_,this.directionality=S,this.cdr=A,this.destroy$=(0,e.f3M)(e.ktI),this.locale={},this.hasCon=!1,this.dir="ltr",this._img="",this._title="",this._desc="",this.backRouterLink="/",P.attach(this,"exception",{typeDict:{403:{img:"https://gw.alipayobjects.com/zos/rmsportal/wZcnGqRDyhPOEYFcZDnb.svg",title:"403"},404:{img:"https://gw.alipayobjects.com/zos/rmsportal/KpnpchXsobRgLElEozzI.svg",title:"404"},500:{img:"https://gw.alipayobjects.com/zos/rmsportal/RVRUAYdCGeYNBWoKiIwB.svg",title:"500"}}})}ngOnInit(){this.dir=this.directionality.value,this.directionality.change?.pipe((0,n.sL)(this.destroy$)).subscribe(D=>{this.dir=D,this.cdr.detectChanges()}),this.i18n.change.pipe((0,n.sL)(this.destroy$)).subscribe(()=>{this.locale=this.i18n.getData("exception"),this.cdr.detectChanges()}),this.checkContent()}static#e=this.\u0275fac=function(_){return new(_||T)(e.Y36(i.s7),e.Y36(l.H7),e.Y36(C.Ri),e.Y36(E.Is,8),e.Y36(e.sBO))};static#t=this.\u0275cmp=e.Xpm({type:T,selectors:[["exception"]],viewQuery:function(_,P){if(1&_&&e.Gf(d,7),2&_){let S;e.iGM(S=e.CRH())&&(P.conTpl=S.first)}},hostVars:4,hostBindings:function(_,P){2&_&&e.ekj("exception",!0)("exception-rtl","rtl"===P.dir)},inputs:{type:"type",img:"img",title:"title",desc:"desc",backRouterLink:"backRouterLink"},exportAs:["exception"],ngContentSelectors:f,decls:10,vars:5,consts:[[1,"exception__img-block"],[1,"exception__img"],[1,"exception__cont"],[1,"exception__cont-title",3,"innerHTML"],[1,"exception__cont-desc",3,"innerHTML"],[1,"exception__cont-actions"],[3,"cdkObserveContent"],["conTpl",""],["nz-button","",3,"routerLink","nzType",4,"ngIf"],["nz-button","",3,"routerLink","nzType"]],template:function(_,P){1&_&&(e.F$t(),e.TgZ(0,"div",0),e._UZ(1,"div",1),e.qZA(),e.TgZ(2,"div",2),e._UZ(3,"h1",3)(4,"div",4),e.TgZ(5,"div",5)(6,"div",6,7),e.NdJ("cdkObserveContent",function(){return P.checkContent()}),e.Hsn(8),e.qZA(),e.YNc(9,p,2,3,"button",8),e.qZA()()),2&_&&(e.xp6(1),e.Udp("background-image",P._img),e.xp6(2),e.Q6J("innerHTML",P._title,e.oJD),e.xp6(1),e.Q6J("innerHTML",P._desc||P.locale[P._type],e.oJD),e.xp6(5),e.Q6J("ngIf",!P.hasCon))},dependencies:[u.O5,z.wD,M.rH,h.ix,v.w,g.dQ],encapsulation:2,changeDetection:0})}return T})()},68842:(nt,I,o)=>{"use strict";o.d(I,{y:()=>h});var e=o(97582),n=o(96814),t=o(74648),i=o(65879),l=o(32113),C=o(8324);function E(v,g){if(1&v&&(i.ynx(0),i._uU(1),i.BQk()),2&v){const d=i.oxw();i.xp6(1),i.Oqu(d.extra)}}function u(v,g){1&v&&i._UZ(0,"error-collect")}const z=["*"],M="footer-toolbar__body";class h{constructor(g,d,p){this.el=g,this.renderer=d,this.doc=p,this.errorCollect=!1}get bodyCls(){return this.doc.querySelector("body").classList}ngOnInit(){this.renderer.addClass(this.el.nativeElement,"footer-toolbar"),this.bodyCls.add(M)}ngOnDestroy(){this.bodyCls.remove(M)}static#e=this.\u0275fac=function(d){return new(d||h)(i.Y36(i.SBq),i.Y36(i.Qsj),i.Y36(n.K0))};static#t=this.\u0275cmp=i.Xpm({type:h,selectors:[["footer-toolbar"]],inputs:{errorCollect:"errorCollect",extra:"extra"},exportAs:["footerToolbar"],ngContentSelectors:z,decls:5,vars:2,consts:[[1,"footer-toolbar__left"],[4,"nzStringTemplateOutlet"],[1,"footer-toolbar__right"],[4,"ngIf"]],template:function(d,p){1&d&&(i.F$t(),i.TgZ(0,"div",0),i.YNc(1,E,2,1,"ng-container",1),i.qZA(),i.TgZ(2,"div",2),i.YNc(3,u,1,0,"error-collect",3),i.Hsn(4),i.qZA()),2&d&&(i.xp6(1),i.Q6J("nzStringTemplateOutlet",p.extra),i.xp6(2),i.Q6J("ngIf",p.errorCollect))},dependencies:[n.O5,l.C,C.f],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,t.yF)()],h.prototype,"errorCollect",void 0)},79657:(nt,I,o)=>{"use strict";o.d(I,{D:()=>E});var e=o(97582),n=o(74648),t=o(65879);const i=["host"];function l(u,z){1&u&&t.Hsn(0)}const C=["*"];class E{static#e=this.\u0275fac=function(M){return new(M||E)};static#t=this.\u0275cmp=t.Xpm({type:E,selectors:[["global-footer-item"]],viewQuery:function(M,h){if(1&M&&t.Gf(i,7),2&M){let v;t.iGM(v=t.CRH())&&(h.host=v.first)}},inputs:{href:"href",blankTarget:"blankTarget"},exportAs:["globalFooterItem"],ngContentSelectors:C,decls:2,vars:0,consts:[["host",""]],template:function(M,h){1&M&&(t.F$t(),t.YNc(0,l,1,0,"ng-template",null,0,t.W1O))},encapsulation:2,changeDetection:0})}(0,e.gn)([(0,n.yF)()],E.prototype,"blankTarget",void 0)},73370:(nt,I,o)=>{"use strict";o.d(I,{j:()=>d});var e=o(71993),n=o(8471),t=o(79657),i=o(65879),l=o(52787),C=o(6593),E=o(49388),u=o(96814);function z(p,f){if(1&p){const y=i.EpF();i.TgZ(0,"a",5),i.NdJ("click",function(){const D=i.CHM(y).$implicit,_=i.oxw(2);return i.KtG(_.to(D))}),i.qZA()}2&p&&i.Q6J("innerHTML",f.$implicit._title,i.oJD)}function M(p,f){1&p&&i.GkF(0)}function h(p,f){if(1&p){const y=i.EpF();i.TgZ(0,"a",6),i.NdJ("click",function(){const D=i.CHM(y).$implicit,_=i.oxw(2);return i.KtG(_.to(D))}),i.YNc(1,M,1,0,"ng-container",7),i.qZA()}if(2&p){const y=f.$implicit;i.xp6(1),i.Q6J("ngTemplateOutlet",y.host)}}function v(p,f){if(1&p&&(i.TgZ(0,"div",2),i.YNc(1,z,1,1,"a",3),i.YNc(2,h,2,1,"a",4),i.qZA()),2&p){const y=i.oxw();i.xp6(1),i.Q6J("ngForOf",y.links),i.xp6(1),i.Q6J("ngForOf",y.items)}}const g=["*"];let d=(()=>{class p{set links(y){y.forEach(T=>T._title=this.dom.bypassSecurityTrustHtml(T.title)),this._links=y}get links(){return this._links}constructor(y,T,x,D,_){this.router=y,this.win=T,this.dom=x,this.directionality=D,this.cdr=_,this.dir$=this.directionality.change?.pipe((0,e.sL)()),this._links=[],this.dir="ltr"}to(y){if(y.href){if(y.blankTarget)return void this.win.open(y.href);/^https?:\/\//.test(y.href)?this.win.location.href=y.href:this.router.navigateByUrl(y.href)}}ngOnInit(){this.dir=this.directionality.value,this.dir$.subscribe(y=>{this.dir=y,this.cdr.detectChanges()})}static#e=this.\u0275fac=function(T){return new(T||p)(i.Y36(l.F0),i.Y36(n.m),i.Y36(C.H7),i.Y36(E.Is,8),i.Y36(i.sBO))};static#t=this.\u0275cmp=i.Xpm({type:p,selectors:[["global-footer"]],contentQueries:function(T,x,D){if(1&T&&i.Suo(D,t.D,4),2&T){let _;i.iGM(_=i.CRH())&&(x.items=_)}},hostVars:4,hostBindings:function(T,x){2&T&&i.ekj("global-footer",!0)("global-footer-rtl","rtl"===x.dir)},inputs:{links:"links"},exportAs:["globalFooter"],ngContentSelectors:g,decls:3,vars:1,consts:[["class","global-footer__links",4,"ngIf"],[1,"global-footer__copyright"],[1,"global-footer__links"],["class","global-footer__links-item",3,"innerHTML","click",4,"ngFor","ngForOf"],["class","global-footer__links-item",3,"click",4,"ngFor","ngForOf"],[1,"global-footer__links-item",3,"innerHTML","click"],[1,"global-footer__links-item",3,"click"],[4,"ngTemplateOutlet"]],template:function(T,x){1&T&&(i.F$t(),i.YNc(0,v,3,2,"div",0),i.TgZ(1,"div",1),i.Hsn(2),i.qZA()),2&T&&i.Q6J("ngIf",x.links.length>0||x.items.length>0)},dependencies:[u.sg,u.O5,u.tP],encapsulation:2,changeDetection:0})}return p})()},31371:(nt,I,o)=>{"use strict";o.d(I,{k:()=>k});class e{constructor($){this.children=[],this.parent=$}delete($){const W=this.children.indexOf($);return-1!==W&&(this.children=this.children.slice(0,W).concat(this.children.slice(W+1)),0===this.children.length&&this.parent.delete(this),!0)}add($){return this.children.push($),this}}class n{constructor($){this.parent=null,this.children={},this.parent=$||null}get($){return this.children[$]}insert($){let W=this;for(let ze=0;ze<$.length;ze+=1){const Y=$[ze];let G=W.get(Y);if(ze===$.length-1)return G instanceof n&&(W.delete(G),G=null),G||(G=new e(W),W.children[Y]=G),G;G instanceof e&&(G=null),G||(G=new n(W),W.children[Y]=G),W=G}return W}delete($){for(const W in this.children)if(this.children[W]===$){const Y=delete this.children[W];return 0===Object.keys(this.children).length&&this.parent&&this.parent.delete(this),Y}return!1}}function t(R){const{ctrlKey:$,altKey:W,metaKey:ze,key:Y}=R,G=[],V=[$,W,ze,l(R)];for(const[K,te]of V.entries())te&&G.push(i[K]);return i.includes(Y)||G.push(Y),G.join("+")}const i=["Control","Alt","Meta","Shift"];function l(R){const{shiftKey:$,code:W,key:ze}=R;return $&&!(W.startsWith("Key")&&ze.toUpperCase()===ze)}const E=/Mac|iPod|iPhone|iPad/i;let h=(()=>{class R{constructor({onReset:W}={}){this._path=[],this.timer=null,this.onReset=W}get path(){return this._path}get sequence(){return this._path.join(" ")}registerKeypress(W){this._path=[...this._path,t(W)],this.startTimer()}reset(){var W;this.killTimer(),this._path=[],null===(W=this.onReset)||void 0===W||W.call(this)}killTimer(){null!=this.timer&&window.clearTimeout(this.timer),this.timer=null}startTimer(){this.killTimer(),this.timer=window.setTimeout(()=>this.reset(),R.CHORD_TIMEOUT)}}return R.CHORD_TIMEOUT=1500,R})();function g(R){if(!(R instanceof HTMLElement))return!1;const $=R.nodeName.toLowerCase(),W=(R.getAttribute("type")||"").toLowerCase();return"select"===$||"textarea"===$||"input"===$&&"submit"!==W&&"reset"!==W&&"checkbox"!==W&&"radio"!==W&&"file"!==W||R.isContentEditable}const f=new n,y=new WeakMap;let T=f;const x=new h({onReset(){T=f}});function D(R){if(R.defaultPrevented||!(R.target instanceof Node))return;if(g(R.target)){const W=R.target;if(!W.id||!W.ownerDocument.querySelector(`[data-hotkey-scope="${W.id}"]`))return}const $=T.get(t(R));if($){if(x.registerKeypress(R),T=$,$ instanceof e){const W=R.target;let Y,ze=!1;const G=g(W);for(let V=$.children.length-1;V>=0;V-=1){Y=$.children[V];const K=Y.getAttribute("data-hotkey-scope");if(!G&&!K||G&&W.id===K){ze=!0;break}}Y&&ze&&(function d(R,$){const W=new CustomEvent("hotkey-fire",{cancelable:!0,detail:{path:$}});R.dispatchEvent(W)&&(g(R)?R.focus():R.click())}(Y,x.path),R.preventDefault()),x.reset()}}else x.reset()}function _(R,$){0===Object.keys(f.children).length&&document.addEventListener("keydown",D);const ze=function p(R){const $=[];let W=[""],ze=!1;for(let Y=0;YY.map(G=>function C(R,$){let W;return W=function u(R,$=navigator.platform){const W=E.test($)?"Meta":"Control";return R.replace("Mod",W)}(R,$),W=function z(R){const $=R.split("+").pop(),W=[];for(const ze of["Control","Alt","Meta","Shift"])R.includes(ze)&&W.push(ze);return W.push($),W.join("+")}(W),W}(G)).filter(G=>""!==G)).filter(Y=>Y.length>0)}($||R.getAttribute("data-hotkey")||"").map(Y=>f.insert(Y).add(R));y.set(R,ze)}var S=o(65879),A=o(62831);let k=(()=>{class R{set hotkey(W){this.platform.isBrowser&&this.ngZone.runOutsideAngular(()=>_(this.el.nativeElement,W))}constructor(W,ze,Y){this.el=W,this.ngZone=ze,this.platform=Y}ngOnDestroy(){this.platform.isBrowser&&this.ngZone.runOutsideAngular(()=>function P(R){const $=y.get(R);if($&&$.length)for(const W of $)W&&W.delete(R);0===Object.keys(f.children).length&&document.removeEventListener("keydown",D)}(this.el.nativeElement))}static#e=this.\u0275fac=function(ze){return new(ze||R)(S.Y36(S.SBq),S.Y36(S.R0b),S.Y36(A.t4))};static#t=this.\u0275dir=S.lG2({type:R,selectors:[["","hotkey",""]],inputs:{hotkey:"hotkey"}})}return R})()},31747:(nt,I,o)=>{"use strict";o.d(I,{_N:()=>i}),o(63431);var n=o(65879);let i=(()=>{class l{static#e=this.\u0275fac=function(u){return new(u||l)};static#t=this.\u0275mod=n.oAB({type:l});static#n=this.\u0275inj=n.cJS({})}return l})()},63431:(nt,I,o)=>{"use strict";o.d(I,{e:()=>t});var e=o(65879);class n{constructor(l){this.dir=l}get $implicit(){return this.dir.let}get let(){return this.dir.let}}let t=(()=>{class i{constructor(C,E){C.createEmbeddedView(E,new n(this))}static ngTemplateContextGuard(C,E){return!0}static#e=this.\u0275fac=function(E){return new(E||i)(e.Y36(e.s_b),e.Y36(e.Rgc))};static#t=this.\u0275dir=e.lG2({type:i,selectors:[["","let",""]],inputs:{let:"let"}})}return i})()},68929:(nt,I,o)=>{"use strict";o.d(I,{Il:()=>D,bz:()=>T});var e=o(68484),n=o(78645),t=o(76111),i=o(74825),l=o(65879),C=o(96814),E=o(90551),u=o(77273);function z(_,P){1&_&&l._UZ(0,"nz-spin",7)}function M(_,P){if(1&_&&l._UZ(0,"i",8),2&_){const S=l.oxw(2);l.Q6J("nzType",S.icon.type)("nzTheme",S.icon.theme)("nzSpin",S.icon.spin)}}function h(_,P){if(1&_&&l._UZ(0,"div",9),2&_){const S=l.oxw(2);l.Q6J("ngStyle",S.custom.style)("innerHTML",S.custom.html,l.oJD)}}function v(_,P){if(1&_&&(l.TgZ(0,"div",2),l.ynx(1,3),l.YNc(2,z,1,0,"nz-spin",4),l.YNc(3,M,1,3,"i",5),l.YNc(4,h,1,2,"div",6),l.BQk(),l.qZA()),2&_){const S=l.oxw();l.xp6(1),l.Q6J("ngSwitch",S.options.type),l.xp6(1),l.Q6J("ngSwitchCase","spin"),l.xp6(1),l.Q6J("ngSwitchCase","icon")}}function g(_,P){if(1&_&&(l.TgZ(0,"div",10),l._uU(1),l.qZA()),2&_){const S=l.oxw();l.xp6(1),l.Oqu(S.options.text)}}let d=(()=>{class _{constructor(){this.dir="ltr"}get icon(){return this.options.icon}get custom(){return this.options.custom}static#e=this.\u0275fac=function(A){return new(A||_)};static#t=this.\u0275cmp=l.Xpm({type:_,selectors:[["loading-default"]],hostVars:4,hostBindings:function(A,k){2&A&&l.ekj("loading-default",!0)("loading-default-rtl","rtl"===k.dir)},decls:2,vars:2,consts:[["class","loading-default__icon",4,"ngIf"],["class","loading-default__text",4,"ngIf"],[1,"loading-default__icon"],[3,"ngSwitch"],["nzSimple","",4,"ngSwitchCase"],["nz-icon","",3,"nzType","nzTheme","nzSpin",4,"ngSwitchCase"],["class","loading-default__custom",3,"ngStyle","innerHTML",4,"ngSwitchDefault"],["nzSimple",""],["nz-icon","",3,"nzType","nzTheme","nzSpin"],[1,"loading-default__custom",3,"ngStyle","innerHTML"],[1,"loading-default__text"]],template:function(A,k){1&A&&(l.YNc(0,v,5,3,"div",0),l.YNc(1,g,2,1,"div",1)),2&A&&(l.Q6J("ngIf","text"!==k.options.type),l.xp6(1),l.Q6J("ngIf",k.options.text))},dependencies:[C.O5,C.PC,C.RF,C.n9,C.ED,E.Ls,u.W],encapsulation:2,changeDetection:0})}return _})();var p=o(33651),f=o(78967),y=o(49388);let T=(()=>{class _{get instance(){return null!=this.compRef?this.compRef.instance:null}constructor(S,A,k){this.overlay=S,this.configSrv=A,this.directionality=k,this.compRef=null,this.opt=null,this.n$=new n.x,this.cog=A.merge("loading",{type:"spin",text:"\u52a0\u8f7d\u4e2d...",icon:{type:"loading",theme:"outline",spin:!0},delay:0}),this.loading$=this.n$.asObservable().pipe((0,t.D)(()=>(0,i.H)(this.opt.delay))).subscribe(()=>this.create())}create(){if(null==this.opt)return;this._close(!1),this._overlayRef=this.overlay.create({positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.block(),hasBackdrop:!0,backdropClass:"loading-backdrop"}),this.compRef=this._overlayRef.attach(new e.C5(d));const S=this.configSrv.get("loading").direction||this.directionality.value;null!=this.instance&&(this.instance.options=this.opt,this.instance.dir=S),this.compRef.changeDetectorRef.markForCheck()}open(S){this.opt={...this.cog,...S},this.n$.next()}_close(S){S&&(this.opt=null),this._overlayRef&&(this._overlayRef.detach(),this.compRef=null)}close(){this._close(!0)}ngOnDestroy(){this.loading$.unsubscribe()}static#e=this.\u0275fac=function(A){return new(A||_)(l.LFG(p.aV),l.LFG(f.Ri),l.LFG(y.Is,8))};static#t=this.\u0275prov=l.Yz7({token:_,factory:_.\u0275fac,providedIn:"root"})}return _})(),D=(()=>{class _{static#e=this.\u0275fac=function(A){return new(A||_)};static#t=this.\u0275mod=l.oAB({type:_});static#n=this.\u0275inj=l.cJS({imports:[C.ez,p.U8,e.eL,E.PV,u.j]})}return _})()},96173:(nt,I,o)=>{"use strict";o.d(I,{R:()=>M});var e=o(97582),n=o(65879),t=o(71993),i=o(74825),l=o(48180),C=o(74648),E=o(6821),u=o(62831);const z=["*"];class M{get player(){return this._p}constructor(v,g,d,p,f){this.el=v,this.renderer=g,this.srv=d,this.ngZone=p,this.platform=f,this.destroy$=(0,n.f3M)(n.ktI),this.type="video",this.delay=0,this.ready=new n.vpe}initDelay(){(0,i.H)(this.delay).pipe((0,t.sL)(this.destroy$)).subscribe(()=>this.ngZone.runOutsideAngular(()=>this.init()))}init(){const v=window.Plyr;if(!v)throw new Error(`No window.Plyr found, please make sure that cdn or local path exists, the current referenced path is: ${JSON.stringify(this.srv.cog.urls)}`);this.ensureElement();const g=this._p=new v(this.videoEl,{...this.srv.cog.options});g.on("ready",()=>this.ngZone.run(()=>this.ready.next(g))),this.uploadSource()}ensureElement(){const{type:v}=this;let g=this.el.nativeElement.querySelector(v);g||(g=this.renderer.createElement(v),g.controls=!0,this.el.nativeElement.appendChild(g)),this.videoEl=g}destroy(){this._p&&this._p.destroy()}uploadSource(){if(null==this._p)return;const{source:v,type:g}=this;this._p.source="string"==typeof v?{type:g,sources:[{src:v}]}:v}ngAfterViewInit(){this.platform.isBrowser&&(this.srv.notify().pipe((0,t.sL)(this.destroy$),(0,l.q)(1)).subscribe(()=>this.initDelay()),this.srv.load())}ngOnChanges(v){this.srv.cog={options:this.options},v.source&&this.uploadSource()}ngOnDestroy(){this.destroy(),this._p=null}static#e=this.\u0275fac=function(g){return new(g||M)(n.Y36(n.SBq),n.Y36(n.Qsj),n.Y36(E.y),n.Y36(n.R0b),n.Y36(u.t4))};static#t=this.\u0275cmp=n.Xpm({type:M,selectors:[["media"]],hostVars:2,hostBindings:function(g,d){2&g&&n.Udp("display","block")},inputs:{type:"type",source:"source",options:"options",delay:"delay"},outputs:{ready:"ready"},exportAs:["mediaComponent"],features:[n.TTD],ngContentSelectors:z,decls:1,vars:0,template:function(g,d){1&g&&(n.F$t(),n.Hsn(0))},encapsulation:2,changeDetection:0})}(0,e.gn)([(0,C.Rn)()],M.prototype,"delay",void 0),(0,e.gn)([(0,C.EA)()],M.prototype,"initDelay",null)},6821:(nt,I,o)=>{"use strict";o.d(I,{y:()=>C});var e=o(78645),n=o(63020),t=o(65879),i=o(78967),l=o(64115);let C=(()=>{class E{get cog(){return this._cog}set cog(z){this._cog=this.cogSrv.merge("media",{urls:["https://cdn.jsdelivr.net/npm/plyr/dist/plyr.min.js","https://cdn.jsdelivr.net/npm/plyr/dist/plyr.css"]},z)}constructor(z,M){this.cogSrv=z,this.lazySrv=M,this.loading=!1,this.loaded=!1,this.notify$=new e.x}load(){return this.loading?(this.loaded&&this.notify$.next(),this):(this.loading=!0,this.lazySrv.load(this.cog.urls).then(()=>{this.loaded=!0,this.notify$.next()}),this)}notify(){return this.notify$.asObservable().pipe((0,n.B)())}static#e=this.\u0275fac=function(M){return new(M||E)(t.LFG(i.Ri),t.LFG(l.Df))};static#t=this.\u0275prov=t.Yz7({token:E,factory:E.\u0275fac,providedIn:"root"})}return E})()},98092:(nt,I,o)=>{"use strict";o.d(I,{i:()=>fe});var e=o(97582),n=o(65879),t=o(74648),i=o(980),l=o(96814),C=o(33640),E=o(62787),u=o(90551),z=o(77273),M=o(79382),h=o(16976),v=o(55695),g=o(8324);function d(re,be){if(1&re&&n._UZ(0,"img",5),2&re){const le=n.oxw(2);n.uIk("src",le.data.emptyImage,n.LSH)}}function p(re,be){if(1&re&&(n.ynx(0),n._uU(1),n.BQk()),2&re){const le=n.oxw(2);n.xp6(1),n.hij(" ",le.data.emptyText||le.locale.emptyText," ")}}function f(re,be){if(1&re&&(n.TgZ(0,"div",2),n.YNc(1,d,1,1,"img",3),n.TgZ(2,"p"),n.YNc(3,p,2,1,"ng-container",4),n.qZA()()),2&re){const le=n.oxw();n.xp6(1),n.Q6J("ngIf",le.data.emptyImage),n.xp6(2),n.Q6J("nzStringTemplateOutlet",le.data.emptyText)}}function y(re,be){if(1&re&&(n.ynx(0),n._uU(1),n.BQk()),2&re){const le=n.oxw(2).$implicit;n.xp6(1),n.hij(" ",le.title," ")}}function T(re,be){if(1&re&&(n.TgZ(0,"div",15)(1,"nz-tag",16),n._uU(2),n.qZA()()),2&re){const le=n.oxw(2).$implicit;n.xp6(1),n.Q6J("nzColor",le.color),n.xp6(1),n.Oqu(le.extra)}}const x=function(re){return{$implicit:re}};function D(re,be){if(1&re&&(n.YNc(0,y,2,1,"ng-container",13),n.YNc(1,T,3,2,"div",14)),2&re){const le=n.oxw().$implicit;n.Q6J("nzStringTemplateOutlet",le.title)("nzStringTemplateOutletContext",n.VKq(3,x,le)),n.xp6(1),n.Q6J("ngIf",le.extra)}}function _(re,be){if(1&re&&(n.ynx(0),n._uU(1),n.BQk()),2&re){const le=n.oxw(3).$implicit;n.xp6(1),n.hij(" ",le.description," ")}}function P(re,be){if(1&re&&(n.TgZ(0,"div",19),n.YNc(1,_,2,1,"ng-container",13),n.qZA()),2&re){const le=n.oxw(2).$implicit;n.xp6(1),n.Q6J("nzStringTemplateOutlet",le.description)("nzStringTemplateOutletContext",n.VKq(2,x,le))}}function S(re,be){if(1&re&&(n.TgZ(0,"div",20),n._uU(1),n.qZA()),2&re){const le=n.oxw(2).$implicit;n.xp6(1),n.Oqu(le.datetime)}}function A(re,be){if(1&re&&(n.YNc(0,P,2,4,"div",17),n.YNc(1,S,2,1,"div",18)),2&re){const le=n.oxw().$implicit;n.Q6J("ngIf",le.description),n.xp6(1),n.Q6J("ngIf",le.datetime)}}const k=function(re){return{"notice-icon__item-read":re}};function R(re,be){if(1&re){const le=n.EpF();n.TgZ(0,"nz-list-item",9),n.NdJ("click",function(){const ie=n.CHM(le).$implicit,ae=n.oxw(2);return n.KtG(ae.onClick(ie))}),n.TgZ(1,"nz-list-item-meta",10),n.YNc(2,D,2,5,"ng-template",null,11,n.W1O),n.YNc(4,A,2,2,"ng-template",null,12,n.W1O),n.qZA()()}if(2&re){const le=be.$implicit,ce=n.MAs(3),Q=n.MAs(5);n.Q6J("ngClass",n.VKq(4,k,le.read)),n.xp6(1),n.Q6J("nzTitle",ce)("nzDescription",Q)("nzAvatar",le.avatar)}}function $(re,be){if(1&re){const le=n.EpF();n.TgZ(0,"nz-list",6),n.YNc(1,R,6,6,"ng-template",null,7,n.W1O),n.qZA(),n.TgZ(3,"div",8),n.NdJ("click",function(){n.CHM(le);const Q=n.oxw();return n.KtG(Q.onClear())}),n._uU(4),n.qZA()}if(2&re){const le=n.MAs(2),ce=n.oxw();n.Q6J("nzDataSource",ce.data.list)("nzRenderItem",le),n.xp6(4),n.Oqu(ce.data.clearText||ce.locale.clearText)}}let W=(()=>{class re{constructor(){this.locale={},this.select=new n.vpe,this.clear=new n.vpe}onClick(le){this.select.emit({title:this.data.title,item:le})}onClear(){this.clear.emit(this.data.title)}static#e=this.\u0275fac=function(ce){return new(ce||re)};static#t=this.\u0275cmp=n.Xpm({type:re,selectors:[["notice-icon-tab"]],inputs:{locale:"locale",data:"data"},outputs:{select:"select",clear:"clear"},exportAs:["noticeIconTab"],decls:3,vars:2,consts:[["class","notice-icon__notfound",4,"ngIf","ngIfElse"],["listTpl",""],[1,"notice-icon__notfound"],["class","notice-icon__notfound-img","alt","not found",4,"ngIf"],[4,"nzStringTemplateOutlet"],["alt","not found",1,"notice-icon__notfound-img"],[3,"nzDataSource","nzRenderItem"],["item",""],[1,"notice-icon__clear",3,"click"],[3,"ngClass","click"],[3,"nzTitle","nzDescription","nzAvatar"],["nzTitle",""],["nzDescription",""],[4,"nzStringTemplateOutlet","nzStringTemplateOutletContext"],["class","notice-icon__item-extra",4,"ngIf"],[1,"notice-icon__item-extra"],[3,"nzColor"],["class","notice-icon__item-desc",4,"ngIf"],["class","notice-icon__item-time",4,"ngIf"],[1,"notice-icon__item-desc"],[1,"notice-icon__item-time"]],template:function(ce,Q){if(1&ce&&(n.YNc(0,f,4,2,"div",0),n.YNc(1,$,5,3,"ng-template",null,1,n.W1O)),2&ce){const ie=n.MAs(2);n.Q6J("ngIf",0===(null==Q.data.list?null:Q.data.list.length))("ngIfElse",ie)}},dependencies:[l.mk,l.O5,h.n_,h.AA,h.yi,v.j,g.f],encapsulation:2})}return re})();const ze=function(){return{"box-shadow":"none"}};function Y(re,be){if(1&re&&(n.TgZ(0,"nz-badge",7),n._UZ(1,"i",8),n.qZA()),2&re){const le=n.oxw();n.Q6J("nzCount",le.count)("ngClass",le.btnClass)("nzStyle",n.DdM(4,ze)),n.xp6(1),n.Q6J("ngClass",le.btnIconClass)}}function G(re,be){}function V(re,be){if(1&re&&(n.TgZ(0,"div"),n.YNc(1,G,0,0,"ng-template",9),n.qZA()),2&re){n.oxw();const le=n.MAs(1);n.xp6(1),n.Q6J("ngTemplateOutlet",le)}}function K(re,be){}function te(re,be){if(1&re){const le=n.EpF();n.TgZ(0,"div",10),n.NdJ("nzVisibleChange",function(Q){n.CHM(le);const ie=n.oxw();return n.KtG(ie.onVisibleChange(Q))}),n.YNc(1,K,0,0,"ng-template",9),n.qZA()}if(2&re){const le=n.oxw(),ce=n.MAs(5),Q=n.MAs(1);n.Q6J("nzVisible",le.popoverVisible)("nzOverlayClassName",le.overlayCls)("nzDropdownMenu",ce),n.xp6(1),n.Q6J("ngTemplateOutlet",Q)}}function ne(re,be){if(1&re){const le=n.EpF();n.TgZ(0,"nz-tab",11)(1,"notice-icon-tab",12),n.NdJ("select",function(Q){n.CHM(le);const ie=n.oxw();return n.KtG(ie.onSelect(Q))})("clear",function(Q){n.CHM(le);const ie=n.oxw();return n.KtG(ie.onClear(Q))}),n.qZA()()}if(2&re){const le=be.$implicit,ce=n.oxw();n.Q6J("nzTitle",le.title),n.xp6(1),n.Q6J("locale",ce.locale)("data",le)}}class fe{get overlayCls(){return"header-dropdown notice-icon"+(this.centered?"":" notice-icon__tab-left")}constructor(be,le){this.i18n=be,this.cdr=le,this.locale={},this.data=[],this.loading=!1,this.popoverVisible=!1,this.centered=!1,this.select=new n.vpe,this.clear=new n.vpe,this.popoverVisibleChange=new n.vpe}onVisibleChange(be){this.popoverVisibleChange.emit(be)}onSelect(be){this.select.emit(be)}onClear(be){this.clear.emit(be)}ngOnInit(){this.i18n$=this.i18n.change.subscribe(()=>{this.locale=this.i18n.getData("noticeIcon"),this.cdr.markForCheck()})}ngOnChanges(){this.cdr.markForCheck()}ngOnDestroy(){this.i18n$.unsubscribe()}static#e=this.\u0275fac=function(le){return new(le||fe)(n.Y36(i.s7),n.Y36(n.sBO))};static#t=this.\u0275cmp=n.Xpm({type:fe,selectors:[["notice-icon"]],hostVars:2,hostBindings:function(le,ce){2&le&&n.ekj("notice-icon__btn",!0)},inputs:{data:"data",count:"count",loading:"loading",popoverVisible:"popoverVisible",btnClass:"btnClass",btnIconClass:"btnIconClass",centered:"centered"},outputs:{select:"select",clear:"clear",popoverVisibleChange:"popoverVisibleChange"},exportAs:["noticeIcon"],features:[n.TTD],decls:9,vars:6,consts:[["badgeTpl",""],[4,"ngIf"],["nz-dropdown","","nzTrigger","click","nzPlacement","bottomRight",3,"nzVisible","nzOverlayClassName","nzDropdownMenu","nzVisibleChange",4,"ngIf"],["noticeMenu","nzDropdownMenu"],[3,"nzSpinning","nzDelay"],["nzSelectedIndex","0",3,"nzCentered"],[3,"nzTitle",4,"ngFor","ngForOf"],[3,"nzCount","ngClass","nzStyle"],["nz-icon","","nzType","bell",3,"ngClass"],[3,"ngTemplateOutlet"],["nz-dropdown","","nzTrigger","click","nzPlacement","bottomRight",3,"nzVisible","nzOverlayClassName","nzDropdownMenu","nzVisibleChange"],[3,"nzTitle"],[3,"locale","data","select","clear"]],template:function(le,ce){1&le&&(n.YNc(0,Y,2,5,"ng-template",null,0,n.W1O),n.YNc(2,V,2,1,"div",1),n.YNc(3,te,2,4,"div",2),n.TgZ(4,"nz-dropdown-menu",null,3)(6,"nz-spin",4)(7,"nz-tabset",5),n.YNc(8,ne,2,3,"nz-tab",6),n.qZA()()()),2&le&&(n.xp6(2),n.Q6J("ngIf",0===ce.data.length),n.xp6(1),n.Q6J("ngIf",ce.data.length>0),n.xp6(3),n.Q6J("nzSpinning",ce.loading)("nzDelay",0),n.xp6(1),n.Q6J("nzCentered",ce.centered),n.xp6(1),n.Q6J("ngForOf",ce.data))},dependencies:[l.mk,l.sg,l.O5,l.tP,C.x7,E.cm,E.RR,u.Ls,z.W,M.xH,M.xw,W],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,t.Rn)()],fe.prototype,"count",void 0),(0,e.gn)([(0,t.yF)()],fe.prototype,"loading",void 0),(0,e.gn)([(0,t.yF)()],fe.prototype,"popoverVisible",void 0),(0,e.gn)([(0,t.yF)()],fe.prototype,"centered",void 0)},24380:(nt,I,o)=>{"use strict";o.d(I,{Q8:()=>C,ib:()=>l});var e=o(65879),n=o(65592),t=o(78645);let i=(()=>{class E{constructor(){this._observedElements=new Map}ngOnDestroy(){this._observedElements.forEach((z,M)=>this._cleanupObserver(M))}observe(z){return new n.y(M=>{const v=this._observeElement(z).subscribe(M);return()=>{v.unsubscribe(),this._unobserveElement(z)}})}_observeElement(z){if(this._observedElements.has(z))this._observedElements.get(z).count++;else{const M=new t.x;let h=null;typeof MutationObserver<"u"&&(h=new MutationObserver(v=>M.next(v)),h.observe(z,{attributes:!0,attributeOldValue:!0,attributeFilter:["width","height","style"]})),this._observedElements.set(z,{observer:h,stream:M,count:1})}return this._observedElements.get(z).stream}_unobserveElement(z){this._observedElements.has(z)&&(this._observedElements.get(z).count--,this._observedElements.get(z).count||this._cleanupObserver(z))}_cleanupObserver(z){if(this._observedElements.has(z)){const{observer:M,stream:h}=this._observedElements.get(z);M&&M.disconnect(),h.complete(),this._observedElements.delete(z)}}static#e=this.\u0275fac=function(M){return new(M||E)};static#t=this.\u0275prov=e.Yz7({token:E,factory:E.\u0275fac,providedIn:"root"})}return E})(),l=(()=>{class E{constructor(z,M,h){this._obs=z,this.el=M,this.ngZone=h,this._sub$=null,this.event=new e.vpe}ngAfterViewInit(){this._sub$||this._sub()}_sub(){this._unsub();const z=this._obs.observe(this.el.nativeElement);this.ngZone.runOutsideAngular(()=>{this._sub$=z.subscribe(this.event)})}_unsub(){this._sub$?.unsubscribe()}ngOnDestroy(){this._unsub()}static#e=this.\u0275fac=function(M){return new(M||E)(e.Y36(i),e.Y36(e.SBq),e.Y36(e.R0b))};static#t=this.\u0275dir=e.lG2({type:E,selectors:[["","observeSize",""]],outputs:{event:"observeSize"},exportAs:["observeSize"]})}return E})(),C=(()=>{class E{static#e=this.\u0275fac=function(M){return new(M||E)};static#t=this.\u0275mod=e.oAB({type:E});static#n=this.\u0275inj=e.cJS({})}return E})()},97878:(nt,I,o)=>{"use strict";o.d(I,{Tc:()=>be,Dz:()=>fe});var e=o(96814),n=o(65879),t=o(22096),i=o(94664),l=o(5177),C=o(88407),E=o(62831),u=o(57417),z=o(8324),M=o(42840),h=o(70855),v=o(331);const g=["popover"];function d(le,ce){if(1&le){const Q=n.EpF();n.TgZ(0,"div",3),n.NdJ("click",function(){n.CHM(Q);const ae=n.oxw();return n.KtG(ae.handleMask())}),n.qZA()}}const p=function(le,ce){return{"max-width.px":le,direction:ce}};function f(le,ce){if(1&le&&n._UZ(0,"div",4,5),2&le){const Q=n.oxw(),ie=n.MAs(3);n.ekj("onboarding__light-hide",Q.running),n.Q6J("nzPopoverTitle",Q.item.title)("nzPopoverContent",ie)("nzPopoverVisible",!Q.running)("nzPopoverTrigger",null)("nzPopoverPlacement",Q.item.position)("nzPopoverOverlayClassName",Q.item.className)("nzPopoverOverlayStyle",n.WLB(11,p,Q.item.width,Q.dir))("nzNoAnimation",!0),n.uIk("style",Q.item.lightStyle,n.Ckj)}}function y(le,ce){if(1&le&&(n.ynx(0),n._UZ(1,"div",15),n.BQk()),2&le){const Q=n.oxw(2);n.xp6(1),n.Q6J("innerHTML",Q.item.content,n.oJD)}}function T(le,ce){if(1&le&&(n.ynx(0),n._uU(1),n.BQk()),2&le){const Q=n.oxw(2);n.xp6(1),n.AsE("",Q.active+1,"/",Q.max,"")}}function x(le,ce){if(1&le&&(n.ynx(0),n._uU(1),n.BQk()),2&le){const Q=n.oxw(3);n.xp6(1),n.Oqu(Q.item.skip)}}function D(le,ce){if(1&le){const Q=n.EpF();n.TgZ(0,"a",16),n.NdJ("click",function(){n.CHM(Q);const ae=n.oxw(2);return n.KtG(ae.to("skip"))}),n.YNc(1,x,2,1,"ng-container",6),n.qZA()}if(2&le){const Q=n.oxw(2);n.xp6(1),n.Q6J("nzStringTemplateOutlet",Q.item.skip)}}function _(le,ce){if(1&le&&(n.ynx(0),n._uU(1),n.BQk()),2&le){const Q=n.oxw(3);n.xp6(1),n.Oqu(Q.item.prev)}}function P(le,ce){if(1&le){const Q=n.EpF();n.TgZ(0,"a",17),n.NdJ("click",function(){n.CHM(Q);const ae=n.oxw(2);return n.KtG(ae.to("prev"))}),n.YNc(1,_,2,1,"ng-container",6),n.qZA()}if(2&le){const Q=n.oxw(2);n.xp6(1),n.Q6J("nzStringTemplateOutlet",Q.item.prev)}}function S(le,ce){if(1&le&&(n.ynx(0),n._uU(1),n.BQk()),2&le){const Q=n.oxw(3);n.xp6(1),n.Oqu(Q.item.next)}}function A(le,ce){if(1&le){const Q=n.EpF();n.TgZ(0,"a",18),n.NdJ("click",function(){n.CHM(Q);const ae=n.oxw(2);return n.KtG(ae.to("next"))}),n.YNc(1,S,2,1,"ng-container",6),n.qZA()}if(2&le){const Q=n.oxw(2);n.xp6(1),n.Q6J("nzStringTemplateOutlet",Q.item.next)}}function k(le,ce){if(1&le&&(n.ynx(0),n._uU(1),n.BQk()),2&le){const Q=n.oxw(3);n.xp6(1),n.Oqu(Q.item.done)}}function R(le,ce){if(1&le){const Q=n.EpF();n.TgZ(0,"a",19),n.NdJ("click",function(){n.CHM(Q);const ae=n.oxw(2);return n.KtG(ae.to("done"))}),n.YNc(1,k,2,1,"ng-container",6),n.qZA()}if(2&le){const Q=n.oxw(2);n.xp6(1),n.Q6J("nzStringTemplateOutlet",Q.item.done)}}function $(le,ce){if(1&le&&(n.YNc(0,y,2,1,"ng-container",6),n.TgZ(1,"div",7)(2,"span",8),n.YNc(3,T,2,2,"ng-container",9),n.qZA(),n.TgZ(4,"div",10),n.YNc(5,D,2,1,"a",11),n.YNc(6,P,2,1,"a",12),n.YNc(7,A,2,1,"a",13),n.YNc(8,R,2,1,"a",14),n.qZA()()),2&le){const Q=n.oxw();n.Q6J("nzStringTemplateOutlet",Q.item.content),n.xp6(3),n.Q6J("ngIf",Q.config.showTotal),n.xp6(2),n.Q6J("ngIf",!Q.last&&null!=Q.item.skip),n.xp6(1),n.Q6J("ngIf",!Q.first&&null!==Q.item.prev),n.xp6(1),n.Q6J("ngIf",!Q.last&&null!=Q.item.next),n.xp6(1),n.Q6J("ngIf",Q.last&&null!=Q.item.done)}}let W=(()=>{class le{get first(){return 0===this.active}get last(){return this.active===this.max-1}_getDoc(){return this.doc}_getWin(){return this._getDoc().defaultView||window}constructor(Q,ie,ae,xe){this.el=Q,this.doc=ie,this.platform=ae,this.cdr=xe,this.active=0,this.max=0,this.op=new n.vpe,this.running=!1,this.dir="ltr"}getLightData(){const Q=this._getDoc(),ie=this._getWin(),ae=Q.querySelector(this.item.selectors);if(!ae)return null;const xe=ie.scrollY||Q.documentElement.scrollTop||Q.body.scrollTop,Me=ie.scrollX||Q.documentElement.scrollLeft||Q.body.scrollLeft,Ye=ae.getBoundingClientRect(),q=Ye.top+xe,ve=Ye.left+Me,Be=q>8&&ve>8,Re=Be?8:0,ct=Be?16:0;return{top:q-Re,left:ve-Re,width:Ye.width+ct,height:Ye.height+ct,el:ae,clientWidth:Q.body.clientWidth,clientHeight:Q.body.clientHeight}}ngAfterViewInit(){this.popover.component.onClickOutside=()=>{}}scroll(Q){this.prevSelectorEl=Q.el;const ie=Q.top-(Q.clientHeight-Q.height)/2;this._getWin().scrollTo({top:ie}),this.updatePrevElStatus(!0)}updateRunning(Q){this.running=Q,this.cdr.detectChanges(),Q||this.updatePosition()}updatePosition(){if(!this.platform.isBrowser)return;const Q=this.getLightData();if(null==Q)return;const ie=this.el.nativeElement.querySelector(".onboarding__light").style;ie.top=`${Q.top}px`,ie.left=`${Q.left}px`,ie.width=`${Q.width}px`,ie.height=`${Q.height}px`,this.updatePrevElStatus(!1),this.scroll(Q)}updatePrevElStatus(Q){this.prevSelectorEl&&this.prevSelectorEl.classList[Q?"add":"remove"]("onboarding__light-el")}to(Q){this.op.emit(Q)}handleMask(){!0===this.config.maskClosable&&(this.popover.component.hide(),this.to("done"))}ngOnDestroy(){clearTimeout(this.time),this.updatePrevElStatus(!1)}static#e=this.\u0275fac=function(ie){return new(ie||le)(n.Y36(n.SBq),n.Y36(e.K0,8),n.Y36(E.t4),n.Y36(n.sBO))};static#t=this.\u0275cmp=n.Xpm({type:le,selectors:[["onboarding"]],viewQuery:function(ie,ae){if(1&ie&&n.Gf(g,5),2&ie){let xe;n.iGM(xe=n.CRH())&&(ae.popover=xe.first)}},hostVars:5,hostBindings:function(ie,ae){2&ie&&(n.uIk("data-onboarding-active",ae.active),n.ekj("onboarding",!0)("onboarding-rtl","rtl"===ae.dir))},decls:4,vars:2,consts:[["class","onboarding__mask",3,"click",4,"ngIf"],["class","onboarding__light","nz-popover","",3,"onboarding__light-hide","nzPopoverTitle","nzPopoverContent","nzPopoverVisible","nzPopoverTrigger","nzPopoverPlacement","nzPopoverOverlayClassName","nzPopoverOverlayStyle","nzNoAnimation",4,"ngIf"],["content",""],[1,"onboarding__mask",3,"click"],["nz-popover","",1,"onboarding__light",3,"nzPopoverTitle","nzPopoverContent","nzPopoverVisible","nzPopoverTrigger","nzPopoverPlacement","nzPopoverOverlayClassName","nzPopoverOverlayStyle","nzNoAnimation"],["popover","nzPopover"],[4,"nzStringTemplateOutlet"],[1,"flex-center-between","onboarding__footer"],[1,"onboarding__total"],[4,"ngIf"],[1,"onboarding__btns"],["nz-button","","nzType","link","nzSize","small","data-btnType","skip",3,"click",4,"ngIf"],["nz-button","","nzSize","small","data-btnType","prev",3,"click",4,"ngIf"],["nz-button","","nzType","primary","nzSize","small","data-btnType","next",3,"click",4,"ngIf"],["nz-button","","nzType","primary","nzSize","small","data-btnType","done",3,"click",4,"ngIf"],[3,"innerHTML"],["nz-button","","nzType","link","nzSize","small","data-btnType","skip",3,"click"],["nz-button","","nzSize","small","data-btnType","prev",3,"click"],["nz-button","","nzType","primary","nzSize","small","data-btnType","next",3,"click"],["nz-button","","nzType","primary","nzSize","small","data-btnType","done",3,"click"]],template:function(ie,ae){1&ie&&(n.YNc(0,d,1,0,"div",0),n.YNc(1,f,2,14,"div",1),n.YNc(2,$,9,6,"ng-template",null,2,n.W1O)),2&ie&&(n.Q6J("ngIf",!ae.running&&ae.config.mask),n.xp6(1),n.Q6J("ngIf",ae.item))},dependencies:[e.O5,u.lU,z.f,M.ix,h.w,v.P],encapsulation:2,changeDetection:0})}return le})();const ze=new n.OlP("ONBOARDING_STORE_TOKEN",{providedIn:"root",factory:function Y(){return new G}});class G{get(ce){return localStorage.getItem(ce)}set(ce,Q){localStorage.setItem(ce,`${Q}`)}}var V=o(980),K=o(52787),te=o(78967),ne=o(49388);let fe=(()=>{class le{_getDoc(){return this.doc}get running(){return this._running}constructor(Q,ie,ae,xe,Me,Ye,q){this.i18n=Q,this.appRef=ie,this.router=ae,this.doc=xe,this.configSrv=Me,this.keyStoreSrv=Ye,this.directionality=q,this.active=0,this.running$=null,this._running=!1,this.type=null}attach(){const Q=(0,n.LMc)(W,{environmentInjector:this.appRef.injector});this.compRef=Q,this.appRef.attachView(Q.hostView);const ie=Q.hostView.rootNodes[0],ae=this._getDoc(),xe=ae.querySelector(".cdk-overlay-container");xe?ae.body.insertBefore(ie,xe):ae.body.appendChild(ie),this.op$=this.compRef.instance.op.subscribe(Me=>{switch(Me){case"next":this.next();break;case"prev":this.prev();break;default:this.done()}})}cancelRunning(){return this.running$&&(this.running$.unsubscribe(),this.running$=null),this}updateRunning(Q){return this._running=Q,this.compRef.instance.updateRunning(Q),this}destroy(){const Q=this.config?.key;null!=Q&&this.keyStoreSrv.set(Q,this.config?.keyVersion),this.cancelRunning(),this.compRef&&(this.appRef.detachView(this.compRef.hostView),this.compRef.destroy(),this.op$.unsubscribe())}showItem(Q=!1){const ie=this.config?.items,ae={position:"bottomLeft",before:(0,t.of)(!0),after:(0,t.of)(!0),...this.i18n.getData("onboarding"),...ie[this.active]},xe=this.configSrv.get("onboarding").direction||this.directionality.value;Object.assign(this.compRef.instance,{item:ae,config:this.config,active:this.active,max:ie.length,dir:xe});const Me=[(0,i.w)(()=>ae.url?this.router.navigateByUrl(ae.url):(0,t.of)(!0)),(0,i.w)(()=>{const Ye="prev"===this.type?ae.after:ae.before;return"number"==typeof Ye?(0,t.of)(!0).pipe((0,l.g)(Ye)):Ye})];Q||Me.push((0,l.g)(1)),this.updateRunning(!0),this.running$=(0,t.of)(!0).pipe(C.z.apply(this,Me)).subscribe({next:()=>this.cancelRunning().updateRunning(!1),error:()=>this.done()})}start(Q){const ie={keyVersion:"",items:[],mask:!0,maskClosable:!0,showTotal:!1,...Q},ae=ie?.key;null!=ae&&this.keyStoreSrv.get(ae)===ie.keyVersion||this.running||(this.destroy(),this.config=ie,this.active=0,this.type=null,this.attach(),this.showItem(!0))}next(){this._running||this.active+1>=this.config.items.length?this.done():(this.type="next",++this.active,this.showItem())}prev(){this._running||this.active-1<0||(this.type="prev",--this.active,this.showItem())}done(){this.type="done",this.destroy()}ngOnDestroy(){this.destroy()}static#e=this.\u0275fac=function(ie){return new(ie||le)(n.LFG(V.s7),n.LFG(n.z2F),n.LFG(K.F0),n.LFG(e.K0),n.LFG(te.Ri),n.LFG(ze),n.LFG(ne.Is,8))};static#t=this.\u0275prov=n.Yz7({token:le,factory:le.\u0275fac})}return le})(),be=(()=>{class le{static#e=this.\u0275fac=function(ie){return new(ie||le)};static#t=this.\u0275mod=n.oAB({type:le});static#n=this.\u0275inj=n.cJS({providers:[fe],imports:[e.ez,V.lD,u.$6,z.T,M.sL,v.g]})}return le})()},18750:(nt,I,o)=>{"use strict";o.d(I,{q:()=>Ye});var e=o(97582),n=o(65879),t=o(71993),i=o(52787),l=o(32181),C=o(63019),E=o(42918),u=o(980),z=o(20325),M=o(74648),h=o(78967),v=o(62831),g=o(49388),d=o(96814),p=o(17131),f=o(23771),y=o(24139),T=o(3626),x=o(8324);const D=["conTpl"],_=["affix"];function P(q,ve){}function S(q,ve){if(1&q&&(n.TgZ(0,"nz-affix",2,3),n.YNc(2,P,0,0,"ng-template",4),n.qZA()),2&q){const ee=n.oxw(),Be=n.MAs(2);n.Q6J("nzOffsetTop",ee.fixedOffsetTop),n.xp6(2),n.Q6J("ngTemplateOutlet",Be)}}function A(q,ve){if(1&q&&(n.ynx(0),n.TgZ(1,"a",20),n._uU(2),n.qZA(),n.BQk()),2&q){const ee=n.oxw().$implicit;n.xp6(1),n.Q6J("routerLink",ee.link),n.xp6(1),n.Oqu(ee.title)}}function k(q,ve){if(1&q&&(n.ynx(0),n._uU(1),n.BQk()),2&q){const ee=n.oxw().$implicit;n.xp6(1),n.Oqu(ee.title)}}function R(q,ve){if(1&q&&(n.TgZ(0,"nz-breadcrumb-item"),n.YNc(1,A,3,2,"ng-container",18),n.YNc(2,k,2,1,"ng-container",18),n.qZA()),2&q){const ee=ve.$implicit;n.xp6(1),n.Q6J("ngIf",ee.link),n.xp6(1),n.Q6J("ngIf",!ee.link)}}function $(q,ve){if(1&q&&(n.TgZ(0,"nz-breadcrumb"),n.YNc(1,R,3,2,"nz-breadcrumb-item",19),n.qZA()),2&q){const ee=n.oxw(3);n.xp6(1),n.Q6J("ngForOf",ee.paths)}}function W(q,ve){if(1&q&&(n.ynx(0),n.YNc(1,$,2,1,"nz-breadcrumb",18),n.BQk()),2&q){const ee=n.oxw(2);n.xp6(1),n.Q6J("ngIf",ee.paths&&ee.paths.length>0)}}function ze(q,ve){}function Y(q,ve){if(1&q&&(n.TgZ(0,"div",21),n.YNc(1,ze,0,0,"ng-template",4),n.qZA()),2&q){const ee=n.oxw(2);n.xp6(1),n.Q6J("ngTemplateOutlet",ee.logo)}}function G(q,ve){if(1&q&&(n.ynx(0),n._uU(1),n.BQk()),2&q){const ee=n.oxw(5);n.xp6(1),n.Oqu(ee.titleSub)}}function V(q,ve){if(1&q&&(n.TgZ(0,"small"),n.YNc(1,G,2,1,"ng-container",23),n.qZA()),2&q){const ee=n.oxw(4);n.xp6(1),n.Q6J("nzStringTemplateOutlet",ee.titleSub)}}function K(q,ve){if(1&q&&(n.ynx(0),n._uU(1),n.YNc(2,V,2,1,"small",18),n.BQk()),2&q){const ee=n.oxw(3);n.xp6(1),n.hij(" ",ee._titleVal," "),n.xp6(1),n.Q6J("ngIf",ee.titleSub)}}function te(q,ve){if(1&q&&(n.TgZ(0,"h1",22),n.YNc(1,K,3,2,"ng-container",8),n.qZA()),2&q){const ee=n.oxw(2);n.xp6(1),n.Q6J("ngIf",ee._titleVal)("ngIfElse",ee._titleTpl)}}function ne(q,ve){}function fe(q,ve){if(1&q&&(n.TgZ(0,"div",24),n.YNc(1,ne,0,0,"ng-template",4),n.qZA()),2&q){const ee=n.oxw(2);n.xp6(1),n.Q6J("ngTemplateOutlet",ee.action)}}function re(q,ve){}function be(q,ve){}function le(q,ve){if(1&q&&(n.TgZ(0,"div",25),n.YNc(1,be,0,0,"ng-template",4),n.qZA()),2&q){const ee=n.oxw(2);n.xp6(1),n.Q6J("ngTemplateOutlet",ee.extra)}}function ce(q,ve){}const Q=function(q){return{"page-header__wide":q}},ie=function(){return{rows:3}},ae=function(){return{size:"large",shape:"circle"}};function xe(q,ve){if(1&q){const ee=n.EpF();n.TgZ(0,"div",5)(1,"div",6)(2,"nz-skeleton",7),n.YNc(3,W,2,1,"ng-container",8),n.TgZ(4,"div",9),n.YNc(5,Y,2,1,"div",10),n.TgZ(6,"div",11)(7,"div",12),n.YNc(8,te,2,2,"h1",13),n.YNc(9,fe,2,1,"div",14),n.qZA(),n.TgZ(10,"div",12)(11,"div",15,16),n.NdJ("cdkObserveContent",function(){n.CHM(ee);const Re=n.oxw();return n.KtG(Re.checkContent())}),n.Hsn(13),n.YNc(14,re,0,0,"ng-template",4),n.qZA(),n.YNc(15,le,2,1,"div",17),n.qZA()()(),n.YNc(16,ce,0,0,"ng-template",4),n.qZA()()()}if(2&q){const ee=n.oxw();n.ekj("page-header-rtl","rtl"===ee.dir),n.xp6(1),n.Q6J("ngClass",n.VKq(16,Q,ee.wide)),n.xp6(1),n.Q6J("nzLoading",ee.loading)("nzTitle",!1)("nzActive",!0)("nzParagraph",n.DdM(18,ie))("nzAvatar",n.DdM(19,ae)),n.xp6(1),n.Q6J("ngIf",!ee.breadcrumb)("ngIfElse",ee.breadcrumb),n.xp6(2),n.Q6J("ngIf",ee.logo),n.xp6(3),n.Q6J("ngIf",ee._titleVal||ee._titleTpl),n.xp6(1),n.Q6J("ngIf",ee.action),n.xp6(5),n.Q6J("ngTemplateOutlet",ee.content),n.xp6(1),n.Q6J("ngIf",ee.extra),n.xp6(1),n.Q6J("ngTemplateOutlet",ee.tab)}}const Me=["*"];class Ye{get menus(){return this.menuSrv.getPathByUrl(this.router.url,this.recursiveBreadcrumb)}set title(ve){ve instanceof n.Rgc?(this._title=null,this._titleTpl=ve,this._titleVal=""):(this._title=ve,this._titleVal=this._title)}constructor(ve,ee,Be,Re,ct,Ae,Mt,je,ot,mt,we){this.renderer=ee,this.router=Be,this.menuSrv=Re,this.i18nSrv=ct,this.titleSrv=Ae,this.reuseSrv=Mt,this.cdr=je,this.directionality=we,this.dir$=this.directionality.change?.pipe((0,t.sL)()),this.inited=!1,this.isBrowser=!0,this.dir="ltr",this._titleVal="",this.paths=[],this._title=null,this._titleTpl=null,this.loading=!1,this.wide=!1,this.breadcrumb=null,this.logo=null,this.action=null,this.content=null,this.extra=null,this.tab=null,this.isBrowser=mt.isBrowser,ot.attach(this,"pageHeader",{home:"\u9996\u9875",homeLink:"/",autoBreadcrumb:!0,recursiveBreadcrumb:!1,autoTitle:!0,syncTitle:!0,fixed:!1,fixedOffsetTop:64}),ve.notify.pipe((0,t.sL)(),(0,l.h)(de=>this.affix&&"layout"===de.type&&"collapsed"===de.name)).subscribe(()=>this.affix.updatePosition({})),(0,C.T)(Re.change,Be.events.pipe((0,l.h)(de=>de instanceof i.m2)),ct.change).pipe((0,t.sL)(),(0,l.h)(()=>this.inited)).subscribe(()=>this.refresh())}refresh(){this.setTitle().genBreadcrumb(),this.cdr.detectChanges()}genBreadcrumb(){if(this.breadcrumb||!this.autoBreadcrumb||this.menus.length<=0)return void(this.paths=[]);const ve=[];this.menus.forEach(ee=>{if(typeof ee.hideInBreadcrumb<"u"&&ee.hideInBreadcrumb)return;let Be=ee.text;ee.i18n&&this.i18nSrv&&(Be=this.i18nSrv.fanyi(ee.i18n)),ve.push({title:Be,link:ee.link&&[ee.link]})}),this.home&&ve.splice(0,0,{title:this.homeI18n&&this.i18nSrv&&this.i18nSrv.fanyi(this.homeI18n)||this.home,link:[this.homeLink]}),this.paths=ve}setTitle(){if(null==this._title&&null==this._titleTpl&&this.autoTitle&&this.menus.length>0){const ve=this.menus[this.menus.length-1];let ee=ve.text;ve.i18n&&this.i18nSrv&&(ee=this.i18nSrv.fanyi(ve.i18n)),this._titleVal=ee}return this._titleVal&&this.syncTitle&&(this.titleSrv&&this.titleSrv.setTitle(this._titleVal),!this.inited&&this.reuseSrv&&(this.reuseSrv.title=this._titleVal)),this}checkContent(){(0,z.x)(this.conTpl.nativeElement)?this.renderer.setAttribute(this.conTpl.nativeElement,"hidden",""):this.renderer.removeAttribute(this.conTpl.nativeElement,"hidden")}ngOnInit(){this.dir=this.directionality.value,this.dir$.subscribe(ve=>{this.dir=ve,this.cdr.detectChanges()}),this.refresh(),this.inited=!0}ngAfterViewInit(){this.checkContent()}ngOnChanges(){this.inited&&this.refresh()}static#e=this.\u0275fac=function(ee){return new(ee||Ye)(n.Y36(u.gb),n.Y36(n.Qsj),n.Y36(i.F0),n.Y36(u.hl),n.Y36(u.Oi,8),n.Y36(u.yD,8),n.Y36(E.Wu,8),n.Y36(n.sBO),n.Y36(h.Ri),n.Y36(v.t4),n.Y36(g.Is,8))};static#t=this.\u0275cmp=n.Xpm({type:Ye,selectors:[["page-header"]],viewQuery:function(ee,Be){if(1&ee&&(n.Gf(D,5),n.Gf(_,5)),2&ee){let Re;n.iGM(Re=n.CRH())&&(Be.conTpl=Re.first),n.iGM(Re=n.CRH())&&(Be.affix=Re.first)}},inputs:{title:"title",titleSub:"titleSub",loading:"loading",wide:"wide",home:"home",homeLink:"homeLink",homeI18n:"homeI18n",autoBreadcrumb:"autoBreadcrumb",autoTitle:"autoTitle",syncTitle:"syncTitle",fixed:"fixed",fixedOffsetTop:"fixedOffsetTop",breadcrumb:"breadcrumb",recursiveBreadcrumb:"recursiveBreadcrumb",logo:"logo",action:"action",content:"content",extra:"extra",tab:"tab"},exportAs:["pageHeader"],features:[n.TTD],ngContentSelectors:Me,decls:3,vars:2,consts:[[3,"nzOffsetTop",4,"ngIf","ngIfElse"],["phTpl",""],[3,"nzOffsetTop"],["affix",""],[3,"ngTemplateOutlet"],[1,"page-header"],[3,"ngClass"],[1,"d-block",3,"nzLoading","nzTitle","nzActive","nzParagraph","nzAvatar"],[4,"ngIf","ngIfElse"],[1,"page-header__detail"],["class","page-header__logo",4,"ngIf"],[1,"page-header__main"],[1,"page-header__row"],["class","page-header__title",4,"ngIf"],["class","page-header__action",4,"ngIf"],[1,"page-header__desc",3,"cdkObserveContent"],["conTpl",""],["class","page-header__extra",4,"ngIf"],[4,"ngIf"],[4,"ngFor","ngForOf"],[3,"routerLink"],[1,"page-header__logo"],[1,"page-header__title"],[4,"nzStringTemplateOutlet"],[1,"page-header__action"],[1,"page-header__extra"]],template:function(ee,Be){if(1&ee&&(n.F$t(),n.YNc(0,S,3,2,"nz-affix",0),n.YNc(1,xe,17,20,"ng-template",null,1,n.W1O)),2&ee){const Re=n.MAs(2);n.Q6J("ngIf",Be.isBrowser&&Be.fixed)("ngIfElse",Re)}},dependencies:[d.mk,d.sg,d.O5,d.tP,i.rH,p.wD,f.$,y.ng,T.Dg,T.MO,x.f],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,M.yF)()],Ye.prototype,"loading",void 0),(0,e.gn)([(0,M.yF)()],Ye.prototype,"wide",void 0),(0,e.gn)([(0,M.yF)()],Ye.prototype,"autoBreadcrumb",void 0),(0,e.gn)([(0,M.yF)()],Ye.prototype,"autoTitle",void 0),(0,e.gn)([(0,M.yF)()],Ye.prototype,"syncTitle",void 0),(0,e.gn)([(0,M.yF)()],Ye.prototype,"fixed",void 0),(0,e.gn)([(0,M.Rn)()],Ye.prototype,"fixedOffsetTop",void 0),(0,e.gn)([(0,M.yF)()],Ye.prototype,"recursiveBreadcrumb",void 0)},95345:(nt,I,o)=>{"use strict";o.d(I,{h:()=>x});var e=o(97582),n=o(96814),t=o(65879),i=o(71993),l=o(74825),C=o(92438),E=o(83620),u=o(32181),z=o(74648),M=o(99275),h=o(56178),v=o(78967),g=o(64115),d=o(62831),p=o(24139);function f(D,_){1&D&&t._UZ(0,"nz-skeleton")}const y=96/72;class x{set src(_){this._src=_,this.load()}set pi(_){this._pi=this.getValidPi(_),this.pageViewer&&this.pageViewer.scrollPageIntoView({pageNumber:this._pi})}set showAll(_){this._showAll=_,this.resetDoc()}set renderText(_){this._renderText=_,this.pageViewer&&this.resetDoc()}set zoom(_){_<=0||(this._zoom=_)}set rotation(_){_%90==0?this._rotation=_:console.warn("Invalid rotation angle, shoule be divisible by 90.")}get loading(){return this._loading}get pdf(){return this._pdf}get findController(){return this._showAll?this.multiPageFindController:this.singlePageFindController}get pageViewer(){return this._showAll?this.multiPageViewer:this.singlePageViewer}get linkService(){return this._showAll?this.multiPageLinkService:this.singlePageLinkService}get eventBus(){return this._eventBus}get _textLayerMode(){return this._renderText?this.textLayerMode:h.T.DISABLE}get win(){return this.doc.defaultView||window}get el(){return this._el.nativeElement.querySelector(".pdf-container")}constructor(_,P,S,A,k,R,$){this.ngZone=_,this.lazySrv=S,this.platform=A,this._el=k,this.doc=R,this.cdr=$,this.inited=!1,this.destroy$=(0,t.f3M)(t.ktI),this.lib="",this._pi=1,this._total=0,this._showAll=!0,this._rotation=0,this._zoom=1,this._renderText=!0,this._loading=!1,this.textLayerMode=h.T.ENABLE,this.showBorders=!1,this.stickToPage=!1,this.originalSize=!0,this.fitToPage=!1,this.zoomScale="page-width",this.autoReSize=!0,this.externalLinkTarget=h.V.BLANK,this.change=new t.vpe;const W=P.merge("pdf",M.m);Object.assign(this,W);const ze=W.lib;this.lib=ze.endsWith("/")?ze:`${ze}/`}getValidPi(_){if(_<1)return 1;const P=this._pdf;return P&&_>P.numPages?P.numPages:_}emit(_,P){this.ngZone.run(()=>this.change.emit({type:_,pdf:this._pdf,pi:this._pi,total:this._total,...P}))}initDelay(){if(!this.win.pdfjsLib)throw new Error(`No window.pdfjsLib found, please make sure that cdn or local path exists, the current referenced path is: ${JSON.stringify(this.lib)}`);this.inited=!0,this.cdr.detectChanges(),this.win.pdfjsLib.GlobalWorkerOptions.workerSrc=`${this.lib}build/pdf.worker.min.js`,(0,l.H)(this.delay??0).pipe((0,i.sL)(this.destroy$)).subscribe(()=>this.load())}setLoading(_){this.ngZone.run(()=>{this._loading=_,this.cdr.detectChanges()})}load(){const{_src:_}=this;if(!this.inited||!_)return;if(this.lastSrc===_)return void this.render();this.destroy(),this.ngZone.run(()=>{this._loading=!0,this.cdr.detectChanges()}),this.setLoading(!0);const P=this.loadingTask=this.win.pdfjsLib.getDocument(_);P.onProgress=S=>this.emit("load-progress",{progress:S}),P.promise.then(S=>{this._pdf=S,this.lastSrc=_,this._total=S.numPages,this.emit("loaded"),this.pageViewer||this.setupPageViewer(),this.resetDoc(),this.render()},S=>this.emit("error",{error:S})).then(()=>this.setLoading(!1))}resetDoc(){const _=this._pdf;_&&(this.cleanDoc(),this.findController.setDocument(_),this.pageViewer.setDocument(_),this.linkService.setDocument(_,null))}cleanDoc(){this.multiPageViewer.setDocument(null),this.singlePageViewer.setDocument(null),this.multiPageLinkService.setDocument(null,null),this.singlePageLinkService.setDocument(null,null),this.multiPageFindController.setDocument(null),this.singlePageFindController.setDocument(null)}render(){const _=this.pageViewer;_&&((0!==this._rotation||_.pagesRotation!==this._rotation)&&this.timeExec(()=>{_.pagesRotation=this._rotation}),this.stickToPage&&this.timeExec(()=>{_.currentPageNumber=this._pi}),this.updateSize())}timeExec(_){this.ngZone.runOutsideAngular(()=>{(0,l.H)(0).pipe((0,i.sL)(this.destroy$)).subscribe(()=>this.ngZone.runOutsideAngular(()=>_()))})}updateSize(){const _=this.pageViewer;_&&this._pdf.getPage(_.currentPageNumber).then(P=>{const{_rotation:S,_zoom:A}=this,k=S||P.rotate,R=P.getViewport({scale:A,rotation:k}).width*y;let $=A;if(!this.originalSize||this.fitToPage&&R>this.el.clientWidth){const W=P.getViewport({scale:1,rotation:k});$=this.getScale(W.width,W.height)}_.currentScale=$})}getScale(_,P){const S=this.showBorders?18:0,A=this.el,k=A.clientWidth-S,R=A.clientHeight-S;if(0===R||0===P||0===k||0===_)return 1;let $=1;switch(this.zoomScale){case"page-fit":$=Math.min(R/P,k/_);break;case"page-height":$=R/P;break;default:$=k/_}return this._zoom*$/y}destroy(){const{loadingTask:_}=this;_&&!_.destroyed&&_.destroy(),this._pdf&&(this._pdf.destroy(),this._pdf=null,this.cleanDoc())}setupPageViewer(){this.win.pdfjsLib.disableTextLayer=!this._renderText,this.win.pdfjsLib.externalLinkTarget=this.externalLinkTarget,this.setupMultiPageViewer(),this.setupSinglePageViewer()}createEventBus(){const _=new this.win.pdfjsViewer.EventBus;return _.on("pagesinit",P=>{this.emit("pages-init",{ev:P})}),_.on("pagerendered",P=>{this.emit("page-rendered",{ev:P})}),_.on("pagechanging",P=>{const S=P.pageNumber;S!==this._pi&&(this._pi=S,this.emit("pi",{ev:P}))}),_.on("textlayerrendered",P=>{this.emit("text-layer-rendered",{ev:P})}),_}setupMultiPageViewer(){const _=this.win.pdfjsViewer,P=this._eventBus=this.createEventBus(),S=this.multiPageLinkService=new _.PDFLinkService({eventBus:P}),A=this.multiPageFindController=new _.PDFFindController({eventBus:P,linkService:S}),k=this.multiPageViewer=new _.PDFViewer({eventBus:P,container:this.el,removePageBorders:!this.showBorders,textLayerMode:this._textLayerMode,linkService:S,findController:A});S.setViewer(k)}setupSinglePageViewer(){const _=this.win.pdfjsViewer,P=this.createEventBus(),S=this.singlePageLinkService=new _.PDFLinkService({eventBus:P}),A=this.singlePageFindController=new _.PDFFindController({eventBus:P,linkService:S}),k=this.singlePageViewer=new _.PDFSinglePageViewer({eventBus:P,container:this.el,removePageBorders:!this.showBorders,textLayerMode:this._textLayerMode,linkService:S,findController:A});S.setViewer(k),k._currentPageNumber=this._pi}ngAfterViewInit(){if(!this.platform.isBrowser)return;if(this.win.pdfjsLib)return void this.initDelay();const{lib:_}=this;this.lazySrv.load(`${_}build/pdf.min.js`).then(()=>this.lazySrv.load([`${_}web/pdf_viewer.js`,`${_}web/pdf_viewer.css`])).then(()=>this.initDelay()),this.ngZone.runOutsideAngular(()=>this.initResize())}initResize(){(0,C.R)(this.win,"resize").pipe((0,E.b)(100),(0,u.h)(()=>this.autoReSize&&null!=this._pdf),(0,i.sL)(this.destroy$)).subscribe(()=>this.updateSize())}ngOnChanges(_){this.inited&&!_.src&&this.render()}ngOnDestroy(){this.destroy()}static#e=this.\u0275fac=function(P){return new(P||x)(t.Y36(t.R0b),t.Y36(v.Ri),t.Y36(g.Df),t.Y36(d.t4),t.Y36(t.SBq),t.Y36(n.K0,8),t.Y36(t.sBO))};static#t=this.\u0275cmp=t.Xpm({type:x,selectors:[["pdf"]],hostVars:2,hostBindings:function(P,S){2&P&&t.ekj("d-block",!0)},inputs:{src:"src",pi:"pi",showAll:"showAll",renderText:"renderText",textLayerMode:"textLayerMode",showBorders:"showBorders",stickToPage:"stickToPage",originalSize:"originalSize",fitToPage:"fitToPage",zoom:"zoom",zoomScale:"zoomScale",rotation:"rotation",autoReSize:"autoReSize",externalLinkTarget:"externalLinkTarget",delay:"delay"},outputs:{change:"change"},exportAs:["pdf"],features:[t.TTD],decls:3,vars:1,consts:[[4,"ngIf"],[1,"pdf-container"],[1,"pdfViewer"]],template:function(P,S){1&P&&(t.YNc(0,f,1,0,"nz-skeleton",0),t.TgZ(1,"div",1),t._UZ(2,"div",2),t.qZA()),2&P&&t.Q6J("ngIf",!S.inited||S.loading)},dependencies:[n.O5,p.ng],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,z.Rn)()],x.prototype,"pi",null),(0,e.gn)([(0,z.yF)()],x.prototype,"showAll",null),(0,e.gn)([(0,z.yF)()],x.prototype,"renderText",null),(0,e.gn)([(0,z.yF)()],x.prototype,"showBorders",void 0),(0,e.gn)([(0,z.yF)()],x.prototype,"stickToPage",void 0),(0,e.gn)([(0,z.yF)()],x.prototype,"originalSize",void 0),(0,e.gn)([(0,z.yF)()],x.prototype,"fitToPage",void 0),(0,e.gn)([(0,z.Rn)()],x.prototype,"zoom",null),(0,e.gn)([(0,z.Rn)()],x.prototype,"rotation",null),(0,e.gn)([(0,z.yF)()],x.prototype,"autoReSize",void 0),(0,e.gn)([(0,z.Rn)()],x.prototype,"delay",void 0),(0,e.gn)([(0,z.EA)()],x.prototype,"load",null),(0,e.gn)([(0,z.EA)()],x.prototype,"resetDoc",null),(0,e.gn)([(0,z.EA)()],x.prototype,"updateSize",null),(0,e.gn)([(0,z.EA)()],x.prototype,"destroy",null)},99275:(nt,I,o)=>{"use strict";o.d(I,{m:()=>e});const e={lib:"https://cdn.jsdelivr.net/npm/pdfjs-dist@3.6.x/",showAll:!0,renderText:!0,showBorders:!1,originalSize:!0,fitToPage:!1,autoReSize:!0}},56178:(nt,I,o)=>{"use strict";o.d(I,{T:()=>e,V:()=>n});var e=function(t){return t[t.DISABLE=0]="DISABLE",t[t.ENABLE=1]="ENABLE",t[t.ENABLE_ENHANCE=2]="ENABLE_ENHANCE",t}(e||{}),n=function(t){return t[t.NONE=0]="NONE",t[t.SELF=1]="SELF",t[t.BLANK=2]="BLANK",t[t.PARENT=3]="PARENT",t[t.TOP=4]="TOP",t}(n||{})},77483:(nt,I,o)=>{"use strict";o.d(I,{q:()=>h});var e=o(97582),n=o(65879),t=o(32181),i=o(74648),l=o(57796),C=o(78967),E=o(64115),u=o(62831),z=o(96814);function M(v,g){if(1&v&&n._UZ(0,"img",1),2&v){const d=n.oxw();n.Q6J("src",d.dataURL,n.LSH)}}class h{constructor(g,d,p,f){this.cdr=g,this.lazySrv=p,this.platform=f,this.inited=!1,this.value="",this.change=new n.vpe,this.cog=d.merge("qr",l.Y),Object.assign(this,this.cog)}init(){this.inited&&(null==this.qr&&(this.qr=new window.QRious),this.qr.set(this.option),this.dataURL=this.qr.toDataURL(),this.change.emit(this.dataURL),this.cdr.detectChanges())}initDelay(){this.inited=!0,setTimeout(()=>this.init(),this.delay)}ngAfterViewInit(){if(!this.platform.isBrowser)return;if(window.QRious)return void this.initDelay();const g=this.cog.lib;this.lazy$=this.lazySrv.change.pipe((0,t.h)(d=>1===d.length&&d[0].path===g&&"ok"===d[0].status)).subscribe(()=>this.initDelay()),this.lazySrv.load(g)}ngOnChanges(){const g={background:this.background,backgroundAlpha:this.backgroundAlpha,foreground:this.foreground,foregroundAlpha:this.foregroundAlpha,level:this.level,mime:this.mime,padding:this.padding,size:this.size,value:"function"==typeof this.value?this.value():this.toUtf8ByteArray(this.value)};this.option=g,this.init()}toUtf8ByteArray(g){g=encodeURI(g);const d=[];for(let p=0;pString.fromCharCode(p)).join("")}ngOnDestroy(){this.lazy$&&this.lazy$.unsubscribe()}static#e=this.\u0275fac=function(d){return new(d||h)(n.Y36(n.sBO),n.Y36(C.Ri),n.Y36(E.Df),n.Y36(u.t4))};static#t=this.\u0275cmp=n.Xpm({type:h,selectors:[["qr"]],hostVars:6,hostBindings:function(d,p){2&d&&n.Udp("display","inline-block")("height",p.size,"px")("width",p.size,"px")},inputs:{background:"background",backgroundAlpha:"backgroundAlpha",foreground:"foreground",foregroundAlpha:"foregroundAlpha",level:"level",mime:"mime",padding:"padding",size:"size",value:"value",delay:"delay"},outputs:{change:"change"},exportAs:["qr"],features:[n.TTD],decls:1,vars:1,consts:[["style","max-width: 100%; max-height: 100%;",3,"src",4,"ngIf"],[2,"max-width","100%","max-height","100%",3,"src"]],template:function(d,p){1&d&&n.YNc(0,M,1,1,"img",0),2&d&&n.Q6J("ngIf",p.dataURL)},dependencies:[z.O5],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,i.Rn)(null)],h.prototype,"padding",void 0),(0,e.gn)([(0,i.Rn)()],h.prototype,"size",void 0),(0,e.gn)([(0,i.Rn)()],h.prototype,"delay",void 0)},57796:(nt,I,o)=>{"use strict";o.d(I,{Y:()=>e});const e={lib:"https://cdn.jsdelivr.net/npm/qrious/dist/qrious.min.js",background:"white",backgroundAlpha:1,foreground:"black",foregroundAlpha:1,level:"L",mime:"image/png",padding:10,size:220,delay:0}},47970:(nt,I,o)=>{"use strict";o.d(I,{$:()=>z});var e=o(97582),n=o(65879),t=o(74648),i=o(96814),l=o(90551),C=o(8324);function E(M,h){if(1&M&&(n.ynx(0),n._UZ(1,"i",4),n.BQk()),2&M){const v=n.oxw();n.xp6(1),n.Q6J("nzType",v.icon)}}const u=["*"];class z{constructor(h,v,g){this.cdr=h,this.el=v,this.render=g,this.ctrlStyle={},this.icon="question-circle",this.top=120,this.width=200,this.expand=!1,this.expandChange=new n.vpe,this.show=!1,this.initFlag=!1}_click(){this.show=!this.show,this.expandChange.emit(this.show),this.setStyle()}setStyle(){this.ctrlStyle={"background-color":this.bgColor,"border-color":this.borderColor};const h=[`top:${this.top}px`,`width:${this.width}px`,`margin-right:-${this.show?0:this.width}px`];this.bgColor&&h.push(`background-color:${this.bgColor}`),this.borderColor&&h.push(`border-color:${this.borderColor}`),this.render.setAttribute(this.el.nativeElement,"style",h.join(";")),this.cdr.detectChanges()}ngOnInit(){this.initFlag=!0,this.setStyle()}ngOnChanges(){this.show=this.expand,this.initFlag&&this.setStyle()}static#e=this.\u0275fac=function(v){return new(v||z)(n.Y36(n.sBO),n.Y36(n.SBq),n.Y36(n.Qsj))};static#t=this.\u0275cmp=n.Xpm({type:z,selectors:[["quick-menu"]],hostVars:2,hostBindings:function(v,g){1&v&&n.NdJ("click",function(){return g._click()}),2&v&&n.ekj("quick-menu",!0)},inputs:{icon:"icon",top:"top",width:"width",bgColor:"bgColor",borderColor:"borderColor",expand:"expand"},outputs:{expandChange:"expandChange"},exportAs:["quickMenu"],features:[n.TTD],ngContentSelectors:u,decls:5,vars:2,consts:[[1,"quick-menu__inner"],[1,"quick-menu__ctrl",3,"ngStyle"],[1,"quick-menu__ctrl-icon"],[4,"nzStringTemplateOutlet"],["nz-icon","",3,"nzType"]],template:function(v,g){1&v&&(n.F$t(),n.TgZ(0,"div",0)(1,"div",1)(2,"div",2),n.YNc(3,E,2,1,"ng-container",3),n.qZA()(),n.Hsn(4),n.qZA()),2&v&&(n.xp6(1),n.Q6J("ngStyle",g.ctrlStyle),n.xp6(2),n.Q6J("nzStringTemplateOutlet",g.icon))},dependencies:[i.PC,l.Ls,C.f],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,t.Rn)()],z.prototype,"top",void 0),(0,e.gn)([(0,t.Rn)()],z.prototype,"width",void 0),(0,e.gn)([(0,t.yF)()],z.prototype,"expand",void 0)},73180:(nt,I,o)=>{"use strict";o.d(I,{N:()=>g});var e=o(71993),n=o(65879),t=o(49388),i=o(96814),l=o(90551),C=o(8324);function E(d,p){if(1&d&&(n.ynx(0),n._uU(1),n.BQk()),2&d){const f=n.oxw();n.xp6(1),n.Oqu(f.title)}}function u(d,p){if(1&d&&(n.ynx(0),n._uU(1),n.BQk()),2&d){const f=n.oxw(2);n.xp6(1),n.Oqu(f.description)}}function z(d,p){if(1&d&&(n.TgZ(0,"div",7),n.YNc(1,u,2,1,"ng-container",3),n.qZA()),2&d){const f=n.oxw();n.xp6(1),n.Q6J("nzStringTemplateOutlet",f.description)}}function M(d,p){if(1&d&&(n.ynx(0),n._uU(1),n.BQk()),2&d){const f=n.oxw(2);n.xp6(1),n.Oqu(f.extra)}}function h(d,p){if(1&d&&(n.TgZ(0,"div",8),n.YNc(1,M,2,1,"ng-container",3),n.qZA()),2&d){const f=n.oxw();n.xp6(1),n.Q6J("nzStringTemplateOutlet",f.extra)}}const v=["*"];let g=(()=>{class d{set type(f){switch(this._type=f,f){case"success":this._icon="check-circle";break;case"error":this._icon="close-circle";break;default:this._icon=f}}constructor(f,y){this.directionality=f,this.cdr=y,this.dir$=this.directionality.change?.pipe((0,e.sL)()),this._type="",this._icon="",this.dir="ltr"}ngOnInit(){this.dir=this.directionality.value,this.dir$.subscribe(f=>{this.dir=f,this.cdr.detectChanges()})}static#e=this.\u0275fac=function(y){return new(y||d)(n.Y36(t.Is,8),n.Y36(n.sBO))};static#t=this.\u0275cmp=n.Xpm({type:d,selectors:[["result"]],hostVars:4,hostBindings:function(y,T){2&y&&n.ekj("result",!0)("result-rtl","rtl"===T.dir)},inputs:{type:"type",title:"title",description:"description",extra:"extra"},exportAs:["result"],ngContentSelectors:v,decls:8,vars:7,consts:[[1,"result__icon"],["nz-icon","",3,"nzType"],[1,"result__title"],[4,"nzStringTemplateOutlet"],["class","result__desc",4,"ngIf"],["class","result__extra",4,"ngIf"],[1,"result__actions"],[1,"result__desc"],[1,"result__extra"]],template:function(y,T){1&y&&(n.F$t(),n.TgZ(0,"div",0),n._UZ(1,"i",1),n.qZA(),n.TgZ(2,"div",2),n.YNc(3,E,2,1,"ng-container",3),n.qZA(),n.YNc(4,z,2,1,"div",4),n.YNc(5,h,2,1,"div",5),n.TgZ(6,"div",6),n.Hsn(7),n.qZA()),2&y&&(n.xp6(1),n.Gre("result__icon-",T._type,""),n.Q6J("nzType",T._icon),n.xp6(2),n.Q6J("nzStringTemplateOutlet",T.title),n.xp6(1),n.Q6J("ngIf",T.description),n.xp6(1),n.Q6J("ngIf",T.extra))},dependencies:[i.O5,l.Ls,C.f],encapsulation:2,changeDetection:0})}return d})()},42918:(nt,I,o)=>{"use strict";o.d(I,{r7:()=>x,Wu:()=>C.W}),o(24898),o(8491),o(28293),o(41635),o(31229);var C=o(70341),E=o(33651),u=o(96814),z=o(52787),M=o(980),h=o(90551),v=o(73460),g=o(79382),d=o(59062),p=o(45049),f=o(65879);let x=(()=>{class _{static#e=this.\u0275fac=function(A){return new(A||_)};static#t=this.\u0275mod=f.oAB({type:_});static#n=this.\u0275inj=f.cJS({providers:[{provide:p.yp,useValue:"_reuse-tab-state"},{provide:p.Lt,useFactory:()=>new p.IE},{provide:d.v,useFactory:()=>new d.Z}],imports:[u.ez,z.Bz,M.lD,v.ip,g.we,h.PV,E.U8]})}return _})();o(98352)},24898:(nt,I,o)=>{"use strict";o.d(I,{i:()=>u});var e=o(65879),n=o(980),t=o(96814),i=o(73460);function l(z,M){if(1&z){const h=e.EpF();e.TgZ(0,"li",6),e.NdJ("click",function(g){e.CHM(h);const d=e.oxw();return e.KtG(d.click(g,"refresh"))}),e.qZA()}if(2&z){const h=e.oxw();e.Q6J("innerHTML",h.i18n.refresh,e.oJD)}}function C(z,M){if(1&z){const h=e.EpF();e.TgZ(0,"li",9),e.NdJ("click",function(g){const p=e.CHM(h).$implicit,f=e.oxw(2);return e.KtG(f.click(g,"custom",p))}),e.qZA()}if(2&z){const h=M.$implicit,v=e.oxw(2);e.Q6J("nzDisabled",v.isDisabled(h))("innerHTML",h.title,e.oJD),e.uIk("data-type",h.id)}}function E(z,M){if(1&z&&(e.ynx(0),e._UZ(1,"li",7),e.YNc(2,C,1,3,"li",8),e.BQk()),2&z){const h=e.oxw();e.xp6(2),e.Q6J("ngForOf",h.customContextMenu)}}let u=(()=>{class z{set i18n(h){this._i18n={...this.i18nSrv.getData("reuseTab"),...h}}get i18n(){return this._i18n}get includeNonCloseable(){return this.event.ctrlKey}constructor(h){this.i18nSrv=h,this.close=new e.vpe}notify(h){this.close.next({type:h,item:this.item,includeNonCloseable:this.includeNonCloseable})}ngOnInit(){this.includeNonCloseable&&(this.item.closable=!0)}click(h,v,g){if(h.preventDefault(),h.stopPropagation(),("close"!==v||this.item.closable)&&("closeRight"!==v||!this.item.last)){if(g){if(this.isDisabled(g))return;g.fn(this.item,g)}this.notify(v)}}isDisabled(h){return!!h.disabled&&h.disabled(this.item)}closeMenu(h){"click"===h.type&&2===h.button||this.notify(null)}static#e=this.\u0275fac=function(v){return new(v||z)(e.Y36(n.s7))};static#t=this.\u0275cmp=e.Xpm({type:z,selectors:[["reuse-tab-context-menu"]],hostBindings:function(v,g){1&v&&e.NdJ("click",function(p){return g.closeMenu(p)},!1,e.evT)("contextmenu",function(p){return g.closeMenu(p)},!1,e.evT)},inputs:{i18n:"i18n",item:"item",event:"event",customContextMenu:"customContextMenu"},outputs:{close:"close"},decls:6,vars:7,consts:[["nz-menu",""],["nz-menu-item","","data-type","refresh",3,"innerHTML","click",4,"ngIf"],["nz-menu-item","","data-type","close",3,"nzDisabled","innerHTML","click"],["nz-menu-item","","data-type","closeOther",3,"innerHTML","click"],["nz-menu-item","","data-type","closeRight",3,"nzDisabled","innerHTML","click"],[4,"ngIf"],["nz-menu-item","","data-type","refresh",3,"innerHTML","click"],["nz-menu-divider",""],["nz-menu-item","",3,"nzDisabled","innerHTML","click",4,"ngFor","ngForOf"],["nz-menu-item","",3,"nzDisabled","innerHTML","click"]],template:function(v,g){1&v&&(e.TgZ(0,"ul",0),e.YNc(1,l,1,1,"li",1),e.TgZ(2,"li",2),e.NdJ("click",function(p){return g.click(p,"close")}),e.qZA(),e.TgZ(3,"li",3),e.NdJ("click",function(p){return g.click(p,"closeOther")}),e.qZA(),e.TgZ(4,"li",4),e.NdJ("click",function(p){return g.click(p,"closeRight")}),e.qZA(),e.YNc(5,E,3,1,"ng-container",5),e.qZA()),2&v&&(e.xp6(1),e.Q6J("ngIf",g.item.active),e.xp6(1),e.Q6J("nzDisabled",!g.item.closable)("innerHTML",g.i18n.close,e.oJD),e.xp6(1),e.Q6J("innerHTML",g.i18n.closeOther,e.oJD),e.xp6(1),e.Q6J("nzDisabled",g.item.last)("innerHTML",g.i18n.closeRight,e.oJD),e.xp6(1),e.Q6J("ngIf",g.customContextMenu.length>0))},dependencies:[t.sg,t.O5,i.wO,i.u9,i.YV],encapsulation:2,changeDetection:0})}return z})()},8491:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>i});var e=o(65879),n=o(47394),t=o(41635);let i=(()=>{class l{set i18n(E){this.srv.i18n=E}constructor(E){this.srv=E,this.sub$=new n.w0,this.change=new e.vpe,this.sub$.add(E.show.subscribe(u=>this.srv.open(u))),this.sub$.add(E.close.subscribe(u=>this.change.emit(u)))}ngOnDestroy(){this.sub$.unsubscribe()}static#e=this.\u0275fac=function(u){return new(u||l)(e.Y36(t.e))};static#t=this.\u0275cmp=e.Xpm({type:l,selectors:[["reuse-tab-context"]],inputs:{i18n:"i18n"},outputs:{change:"change"},decls:0,vars:0,template:function(u,z){},encapsulation:2})}return l})()},28293:(nt,I,o)=>{"use strict";o.d(I,{E:()=>t});var e=o(65879),n=o(41635);let t=(()=>{class i{constructor(C){this.srv=C}_onContextMenu(C){this.srv.show.next({event:C,item:this.item,customContextMenu:this.customContextMenu}),C.preventDefault(),C.stopPropagation()}static#e=this.\u0275fac=function(E){return new(E||i)(e.Y36(n.e))};static#t=this.\u0275dir=e.lG2({type:i,selectors:[["","reuse-tab-context-menu",""]],hostBindings:function(E,u){1&E&&e.NdJ("contextmenu",function(M){return u._onContextMenu(M)})},inputs:{item:["reuse-tab-context-menu","item"],customContextMenu:"customContextMenu"},exportAs:["reuseTabContextMenu"]})}return i})()},41635:(nt,I,o)=>{"use strict";o.d(I,{e:()=>E});var e=o(33651),n=o(68484),t=o(78645),i=o(47394),l=o(24898),C=o(65879);let E=(()=>{class u{constructor(M){this.overlay=M,this.ref=null,this.show=new t.x,this.close=new t.x}remove(){this.ref&&(this.ref.detach(),this.ref.dispose(),this.ref=null)}open(M){this.remove();const{event:h,item:v,customContextMenu:g}=M,{x:d,y:p}=h,f=[new e.tR({originX:"start",originY:"bottom"},{overlayX:"start",overlayY:"top"}),new e.tR({originX:"start",originY:"top"},{overlayX:"start",overlayY:"bottom"})],y=this.overlay.position().flexibleConnectedTo({x:d,y:p}).withPositions(f);this.ref=this.overlay.create({positionStrategy:y,panelClass:"reuse-tab__cm",scrollStrategy:this.overlay.scrollStrategies.close()});const T=this.ref.attach(new n.C5(l.i)),x=T.instance;x.i18n=this.i18n,x.item={...v},x.customContextMenu=g,x.event=h;const D=new i.w0;D.add(x.close.subscribe(_=>{this.close.next(_),this.remove()})),T.onDestroy(()=>D.unsubscribe())}static#e=this.\u0275fac=function(h){return new(h||u)(C.LFG(e.aV))};static#t=this.\u0275prov=C.Yz7({token:u,factory:u.\u0275fac})}return u})()},59062:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>t,v:()=>n});const n=new(o(65879).OlP)("REUSE_TAB_CACHED_MANAGER");class t{constructor(){this.list=[],this.title={},this.closable={}}}},31229:(nt,I,o)=>{"use strict";o.d(I,{g:()=>W});var e=o(97582),n=o(96814),t=o(65879),i=o(71993),l=o(22096),C=o(32181),E=o(83620),u=o(980),z=o(74648),M=o(41635),h=o(98352),v=o(45049),g=o(70341),d=o(52787),p=o(62831),f=o(49388),y=o(79382),T=o(90551),x=o(8491),D=o(28293);const _=["tabset"],P=function(ze){return{$implicit:ze}};function S(ze,Y){if(1&ze&&t.GkF(0,10),2&ze){const G=t.oxw(2).$implicit,V=t.oxw();t.Q6J("ngTemplateOutlet",V.titleRender)("ngTemplateOutletContext",t.VKq(2,P,G))}}function A(ze,Y){if(1&ze&&t._uU(0),2&ze){const G=t.oxw(2).$implicit;t.Oqu(G.title)}}function k(ze,Y){if(1&ze){const G=t.EpF();t.TgZ(0,"i",11),t.NdJ("click",function(K){t.CHM(G);const te=t.oxw(2).index,ne=t.oxw();return t.KtG(ne._close(K,te,!1))}),t.qZA()}}function R(ze,Y){if(1&ze&&(t.TgZ(0,"div",6)(1,"span"),t.YNc(2,S,1,4,"ng-container",7),t.YNc(3,A,1,1,"ng-template",null,8,t.W1O),t.qZA()(),t.YNc(5,k,1,0,"i",9)),2&ze){const G=t.MAs(4),V=t.oxw().$implicit,K=t.oxw();t.Q6J("reuse-tab-context-menu",V)("customContextMenu",K.customContextMenu),t.uIk("title",V.title),t.xp6(1),t.Udp("max-width",K.tabMaxWidth,"px"),t.ekj("reuse-tab__name-width",K.tabMaxWidth),t.xp6(1),t.Q6J("ngIf",K.titleRender)("ngIfElse",G),t.xp6(3),t.Q6J("ngIf",V.closable)}}function $(ze,Y){if(1&ze){const G=t.EpF();t.TgZ(0,"nz-tab",4),t.NdJ("nzClick",function(){const te=t.CHM(G).index,ne=t.oxw();return t.KtG(ne._to(te))}),t.YNc(1,R,6,10,"ng-template",null,5,t.W1O),t.qZA()}if(2&ze){const G=t.MAs(2);t.Q6J("nzTitle",G)}}class W{set keepingScrollContainer(Y){this._keepingScrollContainer="string"==typeof Y?this.doc.querySelector(Y):Y}constructor(Y,G,V,K,te,ne,fe,re,be,le){this.srv=Y,this.cdr=G,this.router=V,this.route=K,this.i18nSrv=te,this.doc=ne,this.platform=fe,this.directionality=re,this.stateKey=be,this.stateSrv=le,this.destroy$=(0,t.f3M)(t.ktI),this.list=[],this.pos=0,this.dir="ltr",this.mode=h.i.Menu,this.debug=!1,this.allowClose=!0,this.keepingScroll=!1,this.storageState=!1,this.customContextMenu=[],this.tabBarStyle=null,this.tabType="line",this.routeParamMatchMode="strict",this.disabled=!1,this.change=new t.vpe,this.close=new t.vpe}genTit(Y){return Y.i18n&&this.i18nSrv?this.i18nSrv.fanyi(Y.i18n):Y.text}get curUrl(){return this.srv.getUrl(this.route.snapshot)}genCurItem(){const Y=this.curUrl,G=this.srv.getTruthRoute(this.route.snapshot);return{url:Y,title:this.genTit(this.srv.getTitle(Y,G)),closable:this.allowClose&&this.srv.count>0&&this.srv.getClosable(Y,G),active:!1,last:!1,index:0}}genList(Y){const G=this.srv.items.map((te,ne)=>({url:te.url,title:this.genTit(te.title),closable:this.allowClose&&te.closable&&this.srv.count>0,position:te.position,index:ne,active:!1,last:!1})),V=this.curUrl;let K=-1===G.findIndex(te=>te.url===V);if(Y&&"close"===Y.active&&Y.url===V){K=!1;let te=0;const ne=this.list.find(fe=>fe.url===V);ne.index===G.length?te=G.length-1:ne.indexte.index=ne),1===G.length&&(G[0].closable=!1),this.list=G,this.cdr.detectChanges(),this.updatePos()}updateTitle(Y){const G=this.list.find(V=>V.url===Y.url);G&&(G.title=this.genTit(Y.title),this.cdr.detectChanges())}refresh(Y){this.srv.runHook("_onReuseInit",this.pos===Y.index?this.srv.componentRef:Y.index,"refresh")}saveState(){!this.srv.inited||!this.storageState||this.stateSrv.update(this.stateKey,this.list)}contextMenuChange(Y){let G=null;switch(Y.type){case"refresh":this.refresh(Y.item);break;case"close":this._close(null,Y.item.index,Y.includeNonCloseable);break;case"closeRight":G=()=>{this.srv.closeRight(Y.item.url,Y.includeNonCloseable),this.close.emit(null)};break;case"closeOther":G=()=>{this.srv.clear(Y.includeNonCloseable),this.close.emit(null)}}G&&(!Y.item.active&&Y.item.index<=this.list.find(V=>V.active).index?this._to(Y.item.index,G):G())}_to(Y,G){Y=Math.max(0,Math.min(Y,this.list.length-1));const V=this.list[Y];this.router.navigateByUrl(V.url).then(K=>{K&&(this.item=V,this.change.emit(V),G&&G())})}_close(Y,G,V){null!=Y&&(Y.preventDefault(),Y.stopPropagation());const K=this.list[G];return(this.canClose?this.canClose({item:K,includeNonCloseable:V}):(0,l.of)(!0)).pipe((0,C.h)(te=>te)).subscribe(()=>{this.srv.close(K.url,V),this.close.emit(K),this.cdr.detectChanges()}),!1}activate(Y){this.srv.componentRef={instance:Y}}updatePos(){const Y=this.srv.getUrl(this.route.snapshot),G=this.list.filter(ne=>ne.url===Y||!this.srv.isExclude(ne.url));if(0===G.length)return;const V=G[G.length-1],K=G.find(ne=>ne.url===Y);V.last=!0;const te=null==K?V.index:K.index;G.forEach((ne,fe)=>ne.active=te===fe),this.pos=te,this.tabset.nzSelectedIndex=te,this.list=G,this.cdr.detectChanges(),this.saveState()}ngOnInit(){this.dir=this.directionality.value,this.directionality.change?.pipe((0,i.sL)(this.destroy$)).subscribe(Y=>{this.dir=Y,this.cdr.detectChanges()}),this.platform.isBrowser&&(this.srv.change.pipe((0,i.sL)(this.destroy$)).subscribe(Y=>{switch(Y?.active){case"title":return void this.updateTitle(Y);case"override":if(Y?.list?.length===this.list.length)return void this.updatePos()}this.genList(Y)}),this.i18nSrv.change.pipe((0,C.h)(()=>this.srv.inited),(0,i.sL)(this.destroy$),(0,E.b)(100)).subscribe(()=>this.genList({active:"title"})),this.srv.init())}ngOnChanges(Y){this.platform.isBrowser&&(Y.max&&(this.srv.max=this.max),Y.excludes&&(this.srv.excludes=this.excludes),Y.mode&&(this.srv.mode=this.mode),Y.routeParamMatchMode&&(this.srv.routeParamMatchMode=this.routeParamMatchMode),Y.keepingScroll&&(this.srv.keepingScroll=this.keepingScroll,this.srv.keepingScrollContainer=this._keepingScrollContainer),Y.storageState&&(this.srv.storageState=this.storageState),this.srv.debug=this.debug,this.cdr.detectChanges())}static#e=this.\u0275fac=function(G){return new(G||W)(t.Y36(g.W),t.Y36(t.sBO),t.Y36(d.F0),t.Y36(d.gz),t.Y36(u.Oi,8),t.Y36(n.K0),t.Y36(p.t4),t.Y36(f.Is,8),t.Y36(v.yp,8),t.Y36(v.Lt,8))};static#t=this.\u0275cmp=t.Xpm({type:W,selectors:[["reuse-tab"],["","reuse-tab",""]],viewQuery:function(G,V){if(1&G&&t.Gf(_,5),2&G){let K;t.iGM(K=t.CRH())&&(V.tabset=K.first)}},hostVars:10,hostBindings:function(G,V){2&G&&t.ekj("reuse-tab",!0)("reuse-tab__line","line"===V.tabType)("reuse-tab__card","card"===V.tabType)("reuse-tab__disabled",V.disabled)("reuse-tab-rtl","rtl"===V.dir)},inputs:{mode:"mode",i18n:"i18n",debug:"debug",max:"max",tabMaxWidth:"tabMaxWidth",excludes:"excludes",allowClose:"allowClose",keepingScroll:"keepingScroll",storageState:"storageState",keepingScrollContainer:"keepingScrollContainer",customContextMenu:"customContextMenu",tabBarExtraContent:"tabBarExtraContent",tabBarGutter:"tabBarGutter",tabBarStyle:"tabBarStyle",tabType:"tabType",routeParamMatchMode:"routeParamMatchMode",disabled:"disabled",titleRender:"titleRender",canClose:"canClose"},outputs:{change:"change",close:"close"},exportAs:["reuseTab"],features:[t._Bn([M.e]),t.TTD],decls:4,vars:8,consts:[[3,"nzSelectedIndex","nzAnimated","nzType","nzTabBarExtraContent","nzTabBarGutter","nzTabBarStyle"],["tabset",""],[3,"nzTitle","nzClick",4,"ngFor","ngForOf"],[3,"i18n","change"],[3,"nzTitle","nzClick"],["titleTemplate",""],[1,"reuse-tab__name",3,"reuse-tab-context-menu","customContextMenu"],[3,"ngTemplateOutlet","ngTemplateOutletContext",4,"ngIf","ngIfElse"],["defaultTitle",""],["nz-icon","","nzType","close","class","reuse-tab__op",3,"click",4,"ngIf"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],["nz-icon","","nzType","close",1,"reuse-tab__op",3,"click"]],template:function(G,V){1&G&&(t.TgZ(0,"nz-tabset",0,1),t.YNc(2,$,3,1,"nz-tab",2),t.qZA(),t.TgZ(3,"reuse-tab-context",3),t.NdJ("change",function(te){return V.contextMenuChange(te)}),t.qZA()),2&G&&(t.Q6J("nzSelectedIndex",V.pos)("nzAnimated",!1)("nzType",V.tabType)("nzTabBarExtraContent",V.tabBarExtraContent)("nzTabBarGutter",V.tabBarGutter)("nzTabBarStyle",V.tabBarStyle),t.xp6(2),t.Q6J("ngForOf",V.list),t.xp6(1),t.Q6J("i18n",V.i18n))},dependencies:[n.sg,n.O5,n.tP,y.xH,y.xw,T.Ls,x.Z,D.E],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,z.yF)()],W.prototype,"debug",void 0),(0,e.gn)([(0,z.Rn)()],W.prototype,"max",void 0),(0,e.gn)([(0,z.Rn)()],W.prototype,"tabMaxWidth",void 0),(0,e.gn)([(0,z.yF)()],W.prototype,"allowClose",void 0),(0,e.gn)([(0,z.yF)()],W.prototype,"keepingScroll",void 0),(0,e.gn)([(0,z.yF)()],W.prototype,"storageState",void 0),(0,e.gn)([(0,z.yF)()],W.prototype,"disabled",void 0)},98352:(nt,I,o)=>{"use strict";o.d(I,{i:()=>e});var e=function(n){return n[n.Menu=0]="Menu",n[n.MenuForce=1]="MenuForce",n[n.URL=2]="URL",n}(e||{})},70341:(nt,I,o)=>{"use strict";o.d(I,{W:()=>v});var e=o(52787),n=o(65619),t=o(74825),i=o(96814),l=o(65879),C=o(62831);let E=(()=>{class g{_getDoc(){return this._doc||document}_getWin(){return this._getDoc().defaultView||window}constructor(p,f){this._doc=p,this.platform=f}getScrollPosition(p){if(!this.platform.isBrowser)return[0,0];const f=this._getWin();return p&&p!==f?[p.scrollLeft,p.scrollTop]:[f.scrollX,f.scrollY]}scrollToPosition(p,f){this.platform.isBrowser&&(p||this._getWin()).scrollTo(f[0],f[1])}scrollToElement(p,f=0){if(!this.platform.isBrowser)return;p||(p=this._getDoc().body),p.scrollIntoView();const y=this._getWin();y&&y.scrollBy&&(y.scrollBy(0,p.getBoundingClientRect().top-f),y.scrollY<20&&y.scrollBy(0,-y.scrollY))}scrollToTop(p=0){this.platform.isBrowser&&this.scrollToElement(this._getDoc().body,p)}static#e=this.\u0275fac=function(f){return new(f||g)(l.LFG(i.K0),l.LFG(C.t4))};static#t=this.\u0275prov=l.Yz7({token:g,factory:g.\u0275fac,providedIn:"root"})}return g})();var u=o(59062),z=o(98352),M=o(45049),h=o(980);let v=(()=>{class g{get snapshot(){return this.injector.get(e.gz).snapshot}get inited(){return this._inited}get curUrl(){return this.getUrl(this.snapshot)}set max(p){this._max=Math.min(Math.max(p,2),100);for(let f=this.cached.list.length;f>this._max;f--)this.cached.list.pop()}set keepingScroll(p){this._keepingScroll=p,this.initScroll()}get keepingScroll(){return this._keepingScroll}get items(){return this.cached.list}get count(){return this.cached.list.length}get change(){return this._cachedChange.asObservable()}set title(p){const f=this.curUrl;"string"==typeof p&&(p={text:p}),this.cached.title[f]=p,this.di("update current tag title: ",p),this._cachedChange.next({active:"title",url:f,title:p,list:this.cached.list})}index(p){return this.cached.list.findIndex(f=>f.url===p)}exists(p){return-1!==this.index(p)}get(p){return p&&this.cached.list.find(f=>f.url===p)||null}remove(p,f){const y="string"==typeof p?this.index(p):p,T=-1!==y?this.cached.list[y]:null;return!(!T||!f&&!T.closable||(this.destroy(T._handle),this.cached.list.splice(y,1),delete this.cached.title[p],0))}close(p,f=!1){return this.removeUrlBuffer=p,this.remove(p,f),this._cachedChange.next({active:"close",url:p,list:this.cached.list}),this.di("close tag",p),!0}closeRight(p,f=!1){const y=this.index(p);for(let T=this.count-1;T>y;T--)this.remove(T,f);return this.removeUrlBuffer=null,this._cachedChange.next({active:"closeRight",url:p,list:this.cached.list}),this.di("close right tages",p),!0}clear(p=!1){this.cached.list.forEach(f=>{!p&&f.closable&&this.destroy(f._handle)}),this.cached.list=this.cached.list.filter(f=>!p&&!f.closable),this.removeUrlBuffer=null,this._cachedChange.next({active:"clear",list:this.cached.list}),this.di("clear all catch")}move(p,f){const y=this.cached.list.findIndex(x=>x.url===p);if(-1===y)return;const T=this.cached.list.slice();T.splice(f<0?T.length+f:f,0,T.splice(y,1)[0]),this.cached.list=T,this._cachedChange.next({active:"move",url:p,position:f,list:this.cached.list})}replace(p){const f=this.curUrl;this.exists(f)?this.close(f,!0):this.removeUrlBuffer=f,this.injector.get(e.F0).navigateByUrl(p)}getTitle(p,f){if(this.cached.title[p])return this.cached.title[p];if(f&&f.data&&(f.data.titleI18n||f.data.title))return{text:f.data.title,i18n:f.data.titleI18n};const y=this.getMenu(p);return y?{text:y.text,i18n:y.i18n}:{text:p}}clearTitleCached(){this.cached.title={}}set closable(p){this.cached.closable[this.curUrl]=p,this.di("update current tag closable: ",p),this._cachedChange.next({active:"closable",closable:p,list:this.cached.list})}getClosable(p,f){if(typeof this.cached.closable[p]<"u")return this.cached.closable[p];if(f&&f.data&&"boolean"==typeof f.data.reuseClosable)return f.data.reuseClosable;const y=this.mode!==z.i.URL?this.getMenu(p):null;return!y||"boolean"!=typeof y.reuseClosable||y.reuseClosable}clearClosableCached(){this.cached.closable={}}getTruthRoute(p){let f=p;for(;f.firstChild;)f=f.firstChild;return f}getUrl(p){let f=this.getTruthRoute(p);const y=[];for(;f;)y.push(f.url.join("/")),f=f.parent;return`/${y.filter(x=>x).reverse().join("/")}`}can(p){const f=this.getUrl(p);if(f===this.removeUrlBuffer)return!1;if(p.data&&"boolean"==typeof p.data.reuse)return p.data.reuse;if(this.mode!==z.i.URL){const y=this.getMenu(f);if(!y)return!1;if(this.mode===z.i.Menu){if(!1===y.reuse)return!1}else if(!y.reuse||!0!==y.reuse)return!1;return!0}return!this.isExclude(f)}isExclude(p){return-1!==this.excludes.findIndex(f=>f.test(p))}refresh(p){this._cachedChange.next({active:"refresh",data:p})}destroy(p){p&&p.componentRef&&p.componentRef.destroy&&p.componentRef.destroy()}di(...p){}constructor(p,f,y,T,x){this.injector=p,this.menuService=f,this.cached=y,this.stateKey=T,this.stateSrv=x,this._inited=!1,this._max=10,this._keepingScroll=!1,this._cachedChange=new n.X(null),this.removeUrlBuffer=null,this.positionBuffer={},this.debug=!1,this.routeParamMatchMode="strict",this.mode=z.i.Menu,this.excludes=[],this.storageState=!1,null==this.cached&&(this.cached={list:[],title:{},closable:{}})}init(){this.initScroll(),this._inited=!0,this.loadState()}loadState(){this.storageState&&(this.cached.list=this.stateSrv.get(this.stateKey).map(p=>({title:{text:p.title},url:p.url,position:p.position})),this._cachedChange.next({active:"loadState"}))}getMenu(p){const f=this.menuService.getPathByUrl(p);return f&&0!==f.length?f.pop():null}runHook(p,f,y="init"){if("number"==typeof f&&(f=this.cached.list[f]._handle?.componentRef),null==f||!f.instance)return;const T=f.instance,x=T[p];"function"==typeof x&&("_onReuseInit"===p?x.call(T,y):x.call(T))}hasInValidRoute(p){return!p.routeConfig||!!p.routeConfig.loadChildren||!!p.routeConfig.children}shouldDetach(p){return!this.hasInValidRoute(p)&&(this.di("#shouldDetach",this.can(p),this.getUrl(p)),this.can(p))}store(p,f){const y=this.getUrl(p),T=this.index(y),x=-1===T,D={title:this.getTitle(y,p),closable:this.getClosable(y,p),position:this.getKeepingScroll(y,p)?this.positionBuffer[y]:null,url:y,_snapshot:p,_handle:f};if(x){if(this.count>=this._max){const _=this.cached.list.findIndex(P=>P.closable);-1!==_&&this.remove(_,!1)}this.cached.list.push(D)}else{const _=this.cached.list[T]._handle?.componentRef;null==f&&null!=_&&(0,t.H)(100).subscribe(()=>this.runHook("_onReuseInit",_)),this.cached.list[T]=D}this.removeUrlBuffer=null,this.di("#store",x?"[new]":"[override]",y),f&&f.componentRef&&this.runHook("_onReuseDestroy",f.componentRef),x||this._cachedChange.next({active:"override",item:D,list:this.cached.list})}shouldAttach(p){if(this.hasInValidRoute(p))return!1;const f=this.getUrl(p),y=this.get(f),T=!(!y||!y._handle);return this.di("#shouldAttach",T,f),T||this._cachedChange.next({active:"add",url:f,list:this.cached.list}),T}retrieve(p){if(this.hasInValidRoute(p))return null;const f=this.getUrl(p),y=this.get(f),T=y&&y._handle||null;return this.di("#retrieve",f,T),T}shouldReuseRoute(p,f){let y=p.routeConfig===f.routeConfig;if(!y)return!1;const T=p.routeConfig&&p.routeConfig.path||"";return T.length>0&&~T.indexOf(":")&&(y="strict"===this.routeParamMatchMode?this.getUrl(p)===this.getUrl(f):T===(f.routeConfig&&f.routeConfig.path||"")),this.di("====================="),this.di("#shouldReuseRoute",y,`${this.getUrl(f)}=>${this.getUrl(p)}`,p,f),y}getKeepingScroll(p,f){if(f&&f.data&&"boolean"==typeof f.data.keepingScroll)return f.data.keepingScroll;const y=this.mode!==z.i.URL?this.getMenu(p):null;return y&&"boolean"==typeof y.keepingScroll?y.keepingScroll:this.keepingScroll}get isDisabledInRouter(){return"disabled"===this.injector.get(e.cx,{}).scrollPositionRestoration}get ss(){return this.injector.get(E)}initScroll(){this._router$&&this._router$.unsubscribe(),this._router$=this.injector.get(e.F0).events.subscribe(p=>{if(p instanceof e.OD){const f=this.curUrl;this.getKeepingScroll(f,this.getTruthRoute(this.snapshot))?this.positionBuffer[f]=this.ss.getScrollPosition(this.keepingScrollContainer):delete this.positionBuffer[f]}else if(p instanceof e.m2){const f=this.curUrl,y=this.get(f);y&&y.position&&this.getKeepingScroll(f,this.getTruthRoute(this.snapshot))&&(this.isDisabledInRouter?this.ss.scrollToPosition(this.keepingScrollContainer,y.position):setTimeout(()=>this.ss.scrollToPosition(this.keepingScrollContainer,y.position),1))}})}ngOnDestroy(){const{_cachedChange:p,_router$:f}=this;this.clear(),this.cached.list=[],p.complete(),f&&f.unsubscribe()}static#e=this.\u0275fac=function(f){return new(f||g)(l.LFG(l.zs3),l.LFG(h.hl),l.LFG(u.v,8),l.LFG(M.yp,8),l.LFG(M.Lt,8))};static#t=this.\u0275prov=l.Yz7({token:g,factory:g.\u0275fac,providedIn:"root"})}return g})()},45049:(nt,I,o)=>{"use strict";o.d(I,{IE:()=>i,Lt:()=>t,yp:()=>n});var e=o(65879);const n=new e.OlP("REUSE_TAB_STORAGE_KEY"),t=new e.OlP("REUSE_TAB_STORAGE_STATE");class i{get(C){return JSON.parse(localStorage.getItem(C)||"[]")||[]}update(C,E){return localStorage.setItem(C,JSON.stringify(E)),!0}remove(C){localStorage.removeItem(C)}}},98168:(nt,I,o)=>{"use strict";o.d(I,{O:()=>g,n:()=>v});var e=o(97582),n=o(32181),t=o(65619),i=o(74648),l=o(65879),C=o(78967),E=o(96814),u=o(8324);function z(d,p){if(1&d&&(l.ynx(0),l._uU(1),l.BQk()),2&d){const f=l.oxw(2);l.xp6(1),l.Oqu(f.title)}}function M(d,p){if(1&d&&(l.TgZ(0,"div",1),l.YNc(1,z,2,1,"ng-container",2),l.qZA()),2&d){const f=l.oxw();l.xp6(1),l.Q6J("nzStringTemplateOutlet",f.title)}}const h=["*"];class v{get gutter(){return"horizontal"===this.nzLayout?this._gutter:0}set gutter(p){this._gutter=(0,i.He)(p)}get nzLayout(){return this._nzLayout}set nzLayout(p){this._nzLayout=p,"inline"===p&&(this.size="compact")}set errors(p){this.setErrors(p)}get margin(){return-this.gutter/2}get errorNotify(){return this.errorNotify$.pipe((0,n.h)(p=>null!=p))}constructor(p){this.errorNotify$=new t.X(null),this.noColon=!1,this.line=!1,p.attach(this,"se",{size:"default",nzLayout:"horizontal",gutter:32,col:2,labelWidth:150,firstVisual:!1,ingoreDirty:!1})}setErrors(p){for(const f of p)this.errorNotify$.next(f)}static#e=this.\u0275fac=function(f){return new(f||v)(l.Y36(C.Ri))};static#t=this.\u0275cmp=l.Xpm({type:v,selectors:[["se-container"],["","se-container",""]],hostVars:16,hostBindings:function(f,y){2&f&&(l.Udp("margin-left",y.margin,"px")("margin-right",y.margin,"px"),l.ekj("ant-row",!0)("se__container",!0)("se__horizontal","horizontal"===y.nzLayout)("se__vertical","vertical"===y.nzLayout)("se__inline","inline"===y.nzLayout)("se__compact","compact"===y.size))},inputs:{colInCon:["se-container","colInCon"],col:"col",labelWidth:"labelWidth",noColon:"noColon",title:"title",gutter:"gutter",nzLayout:"nzLayout",size:"size",firstVisual:"firstVisual",ingoreDirty:"ingoreDirty",line:"line",errors:"errors"},exportAs:["seContainer"],ngContentSelectors:h,decls:2,vars:1,consts:[["se-title","",4,"ngIf"],["se-title",""],[4,"nzStringTemplateOutlet"]],template:function(f,y){1&f&&(l.F$t(),l.YNc(0,M,2,1,"div",0),l.Hsn(1)),2&f&&l.Q6J("ngIf",y.title)},dependencies:function(){return[E.O5,u.f,g]},encapsulation:2,changeDetection:0})}(0,e.gn)([(0,i.Rn)(null)],v.prototype,"colInCon",void 0),(0,e.gn)([(0,i.Rn)(null)],v.prototype,"col",void 0),(0,e.gn)([(0,i.Rn)(null)],v.prototype,"labelWidth",void 0),(0,e.gn)([(0,i.yF)()],v.prototype,"noColon",void 0),(0,e.gn)([(0,i.yF)()],v.prototype,"firstVisual",void 0),(0,e.gn)([(0,i.yF)()],v.prototype,"ingoreDirty",void 0),(0,e.gn)([(0,i.yF)()],v.prototype,"line",void 0);let g=(()=>{class d{constructor(f,y,T){if(this.parent=f,this.ren=T,null==f)throw new Error("[se-title] must include 'se-container' component");this.el=y.nativeElement}setClass(){const{el:f}=this,y=this.parent.gutter;this.ren.setStyle(f,"padding-left",y/2+"px"),this.ren.setStyle(f,"padding-right",y/2+"px")}ngOnInit(){this.setClass()}static#e=this.\u0275fac=function(y){return new(y||d)(l.Y36(v,9),l.Y36(l.SBq),l.Y36(l.Qsj))};static#t=this.\u0275cmp=l.Xpm({type:d,selectors:[["se-title"],["","se-title",""]],hostVars:2,hostBindings:function(y,T){2&y&&l.ekj("se__title",!0)},exportAs:["seTitle"],ngContentSelectors:h,decls:1,vars:0,template:function(y,T){1&y&&(l.F$t(),l.Hsn(0))},encapsulation:2,changeDetection:0})}return d})()},77368:(nt,I,o)=>{"use strict";o.d(I,{d:()=>Y});var e=o(97582),n=o(65879),t=o(71993),i=o(60095),l=o(32181),C=o(20325),E=o(74648),u=o(64194),z=o(50883),M=o(98168),h=o(980),v=o(96814),g=o(96109),d=o(90551),p=o(8324);const f=["contentElement"];function y(G,V){if(1&G&&(n.ynx(0),n._uU(1),n.BQk()),2&G){const K=n.oxw(2);n.xp6(1),n.Oqu(K.label)}}function T(G,V){if(1&G&&(n.ynx(0),n._uU(1),n.BQk()),2&G){const K=n.oxw(3);n.xp6(1),n.Oqu(K.optional)}}function x(G,V){if(1&G&&n._UZ(0,"i",13),2&G){const K=n.oxw(3);n.Q6J("nzTooltipTitle",K.optionalHelp)("nzTooltipColor",K.optionalHelpColor)}}function D(G,V){if(1&G&&(n.TgZ(0,"span",11),n.YNc(1,T,2,1,"ng-container",9),n.YNc(2,x,1,2,"i",12),n.qZA()),2&G){const K=n.oxw(2);n.ekj("se__label-optional-no-text",!K.optional),n.xp6(1),n.Q6J("nzStringTemplateOutlet",K.optional),n.xp6(1),n.Q6J("ngIf",K.optionalHelp)}}const _=function(G,V){return{"ant-form-item-required":G,"se__no-colon":V}};function P(G,V){if(1&G&&(n.TgZ(0,"label",7)(1,"span",8),n.YNc(2,y,2,1,"ng-container",9),n.qZA(),n.YNc(3,D,3,4,"span",10),n.qZA()),2&G){const K=n.oxw();n.Q6J("ngClass",n.WLB(4,_,K.required,K._noColon)),n.uIk("for",K._id),n.xp6(2),n.Q6J("nzStringTemplateOutlet",K.label),n.xp6(1),n.Q6J("ngIf",K.optional||K.optionalHelp)}}function S(G,V){if(1&G&&(n.ynx(0),n._uU(1),n.BQk()),2&G){const K=n.oxw(2);n.xp6(1),n.Oqu(K._error)}}function A(G,V){if(1&G&&(n.TgZ(0,"div",14)(1,"div",15),n.YNc(2,S,2,1,"ng-container",9),n.qZA()()),2&G){const K=n.oxw();n.Q6J("@helpMotion",void 0),n.xp6(2),n.Q6J("nzStringTemplateOutlet",K._error)}}function k(G,V){if(1&G&&(n.ynx(0),n._uU(1),n.BQk()),2&G){const K=n.oxw(2);n.xp6(1),n.Oqu(K.extra)}}function R(G,V){if(1&G&&(n.TgZ(0,"div",16),n.YNc(1,k,2,1,"ng-container",9),n.qZA()),2&G){const K=n.oxw();n.xp6(1),n.Q6J("nzStringTemplateOutlet",K.extra)}}const $=["*"],W="se";let ze=0;class Y{set error(V){this.errorData="string"==typeof V||V instanceof n.Rgc?{"":V}:V}set id(V){this._id=V,this._autoId=!1}get paddingValue(){return this.parent.gutter/2}get showErr(){return this.invalid&&!!this._error&&!this.compact}get compact(){return"compact"===this.parent.size}get ngControl(){return this.ngModel||this.formControlName}constructor(V,K,te,ne,fe,re){if(this.parent=K,this.statusSrv=te,this.rep=ne,this.ren=fe,this.cdr=re,this.destroy$=(0,n.f3M)(n.ktI),this.clsMap=[],this.inited=!1,this.onceFlag=!1,this.errorData={},this.isBindModel=!1,this.invalid=!1,this._labelWidth=null,this._noColon=null,this.optional=null,this.optionalHelp=null,this.required=!1,this.controlClass="",this.hideLabel=!1,this._id="_se-"+ ++ze,this._autoId=!0,null==K)throw new Error("[se] must include 'se-container' component");this.el=V.nativeElement,K.errorNotify.pipe((0,t.sL)(this.destroy$),(0,l.h)(be=>this.inited&&null!=this.ngControl&&this.ngControl.name===be.name)).subscribe(be=>{this.error=be.error,this.updateStatus(this.ngControl.invalid)})}setClass(){const{el:V,ren:K,clsMap:te,col:ne,parent:fe,cdr:re,line:be,labelWidth:le,rep:ce,noColon:Q}=this;this._noColon=Q??fe.noColon,this._labelWidth="horizontal"===fe.nzLayout?le??fe.labelWidth:null,te.forEach(xe=>K.removeClass(V,xe)),te.length=0;const ie=fe.colInCon||fe.col,ae="horizontal"===fe.nzLayout?ce.genCls(ne??ie,ie):[];return te.push("ant-form-item",...ae,`${W}__item`),(be||fe.line)&&te.push(`${W}__line`),te.forEach(xe=>K.addClass(V,xe)),re.detectChanges(),this}bindModel(){if(this.ngControl&&!this.isBindModel){if(this.isBindModel=!0,this.ngControl.statusChanges.pipe((0,t.sL)(this.destroy$)).subscribe(V=>this.updateStatus("INVALID"===V)),this._autoId){const V=this.ngControl.valueAccessor,K=(V?.elementRef||V?._elementRef)?.nativeElement;K&&(K.id?this._id=K.id:K.id=this._id)}if(!0!==this.required){const V=this.ngControl?._rawValidators;this.required=null!=V.find(K=>K instanceof i.Q7),this.cdr.detectChanges()}}}updateStatus(V){if(this.ngControl?.disabled||this.ngControl?.isDisabled)return;this.invalid=!(!this.onceFlag&&V&&!1===this.parent.ingoreDirty&&!this.ngControl?.dirty)&&V;const K=this.ngControl?.errors;if(null!=K&&Object.keys(K).length>0){const te=Object.keys(K)[0]||"";this._error=this.errorData[te]??(this.errorData[""]||"")}this.statusSrv.formStatusChanges.next({status:this.invalid?"error":"",hasFeedback:!1}),this.cdr.detectChanges()}checkContent(){const V=this.contentElement.nativeElement,K=`${W}__item-empty`;(0,C.x)(V)?this.ren.addClass(V,K):this.ren.removeClass(V,K)}ngAfterContentInit(){this.checkContent()}ngOnChanges(){this.onceFlag=this.parent.firstVisual,this.inited&&this.setClass().bindModel()}ngAfterViewInit(){this.setClass().bindModel(),this.inited=!0,this.onceFlag&&Promise.resolve().then(()=>{this.updateStatus(this.ngControl?.invalid),this.onceFlag=!1})}static#e=this.\u0275fac=function(K){return new(K||Y)(n.Y36(n.SBq),n.Y36(M.n,9),n.Y36(z.kH),n.Y36(h.kz),n.Y36(n.Qsj),n.Y36(n.sBO))};static#t=this.\u0275cmp=n.Xpm({type:Y,selectors:[["se"]],contentQueries:function(K,te,ne){if(1&K&&(n.Suo(ne,i.On,7),n.Suo(ne,i.u,7)),2&K){let fe;n.iGM(fe=n.CRH())&&(te.ngModel=fe.first),n.iGM(fe=n.CRH())&&(te.formControlName=fe.first)}},viewQuery:function(K,te){if(1&K&&n.Gf(f,7),2&K){let ne;n.iGM(ne=n.CRH())&&(te.contentElement=ne.first)}},hostVars:10,hostBindings:function(K,te){2&K&&(n.Udp("padding-left",te.paddingValue,"px")("padding-right",te.paddingValue,"px"),n.ekj("se__hide-label",te.hideLabel)("ant-form-item-has-error",te.invalid)("ant-form-item-with-help",te.showErr))},inputs:{optional:"optional",optionalHelp:"optionalHelp",optionalHelpColor:"optionalHelpColor",error:"error",extra:"extra",label:"label",col:"col",required:"required",controlClass:"controlClass",line:"line",labelWidth:"labelWidth",noColon:"noColon",hideLabel:"hideLabel",id:"id"},exportAs:["se"],features:[n._Bn([z.kH]),n.TTD],ngContentSelectors:$,decls:9,vars:10,consts:[[1,"ant-form-item-label"],["class","se__label",3,"ngClass",4,"ngIf"],[1,"ant-form-item-control","se__control"],[1,"ant-form-item-control-input-content",3,"cdkObserveContent"],["contentElement",""],["class","ant-form-item-explain ant-form-item-explain-connected",4,"ngIf"],["class","ant-form-item-extra",4,"ngIf"],[1,"se__label",3,"ngClass"],[1,"se__label-text"],[4,"nzStringTemplateOutlet"],["class","se__label-optional",3,"se__label-optional-no-text",4,"ngIf"],[1,"se__label-optional"],["nz-tooltip","","nz-icon","","nzType","question-circle",3,"nzTooltipTitle","nzTooltipColor",4,"ngIf"],["nz-tooltip","","nz-icon","","nzType","question-circle",3,"nzTooltipTitle","nzTooltipColor"],[1,"ant-form-item-explain","ant-form-item-explain-connected"],["role","alert",1,"ant-form-item-explain-error"],[1,"ant-form-item-extra"]],template:function(K,te){1&K&&(n.F$t(),n.TgZ(0,"div",0),n.YNc(1,P,4,7,"label",1),n.qZA(),n.TgZ(2,"div",2)(3,"div")(4,"div",3,4),n.NdJ("cdkObserveContent",function(){return te.checkContent()}),n.Hsn(6),n.qZA()(),n.YNc(7,A,3,2,"div",5),n.YNc(8,R,2,1,"div",6),n.qZA()),2&K&&(n.Udp("width",te._labelWidth,"px"),n.ekj("se__nolabel",te.hideLabel||!te.label),n.xp6(1),n.Q6J("ngIf",te.label),n.xp6(2),n.Gre("ant-form-item-control-input ",te.controlClass,""),n.xp6(4),n.Q6J("ngIf",te.showErr),n.xp6(1),n.Q6J("ngIf",te.extra&&!te.compact))},dependencies:[v.mk,v.O5,g.SY,d.Ls,p.f],encapsulation:2,data:{animation:[u.c8]},changeDetection:0})}(0,e.gn)([(0,E.Rn)(null)],Y.prototype,"col",void 0),(0,e.gn)([(0,E.yF)()],Y.prototype,"required",void 0),(0,e.gn)([(0,E.yF)(null)],Y.prototype,"line",void 0),(0,e.gn)([(0,E.Rn)(null)],Y.prototype,"labelWidth",void 0),(0,e.gn)([(0,E.yF)(null)],Y.prototype,"noColon",void 0),(0,e.gn)([(0,E.yF)()],Y.prototype,"hideLabel",void 0)},91493:(nt,I,o)=>{"use strict";o.d(I,{U:()=>C});var e=o(97582),n=o(74648),t=o(65879),i=o(78967);const l=["*"];class C{get marginValue(){return-this.gutter/2}constructor(u){u.attach(this,"sg",{gutter:32,col:2})}static#e=this.\u0275fac=function(z){return new(z||C)(t.Y36(i.Ri))};static#t=this.\u0275cmp=t.Xpm({type:C,selectors:[["sg-container"],["","sg-container",""]],hostVars:8,hostBindings:function(z,M){2&z&&(t.Udp("margin-left",M.marginValue,"px")("margin-right",M.marginValue,"px"),t.ekj("ant-row",!0)("sg__wrap",!0))},inputs:{gutter:"gutter",colInCon:["sg-container","colInCon"],col:"col"},exportAs:["sgContainer"],ngContentSelectors:l,decls:1,vars:0,template:function(z,M){1&z&&(t.F$t(),t.Hsn(0))},encapsulation:2,changeDetection:0})}(0,e.gn)([(0,n.Rn)()],C.prototype,"gutter",void 0),(0,e.gn)([(0,n.Rn)(null)],C.prototype,"colInCon",void 0),(0,e.gn)([(0,n.Rn)(null)],C.prototype,"col",void 0)},22218:(nt,I,o)=>{"use strict";o.d(I,{S:()=>u});var e=o(97582),n=o(74648),t=o(65879),i=o(91493),l=o(980);const C=["*"];class u{get paddingValue(){return this.parent.gutter/2}constructor(M,h,v,g){if(this.ren=h,this.parent=v,this.rep=g,this.clsMap=[],this.inited=!1,this.col=null,null==v)throw new Error("[sg] must include 'sg-container' component");this.el=M.nativeElement}setClass(){const{el:M,ren:h,clsMap:v,col:g,parent:d}=this;v.forEach(f=>h.removeClass(M,f)),v.length=0;const p=d.colInCon||d.col;return v.push(...this.rep.genCls(g??p,p),"sg__item"),v.forEach(f=>h.addClass(M,f)),this}ngOnChanges(){this.inited&&this.setClass()}ngAfterViewInit(){this.setClass(),this.inited=!0}static#e=this.\u0275fac=function(h){return new(h||u)(t.Y36(t.SBq),t.Y36(t.Qsj),t.Y36(i.U,9),t.Y36(l.kz))};static#t=this.\u0275cmp=t.Xpm({type:u,selectors:[["sg"]],hostVars:4,hostBindings:function(h,v){2&h&&t.Udp("padding-left",v.paddingValue,"px")("padding-right",v.paddingValue,"px")},inputs:{col:"col"},exportAs:["sg"],features:[t.TTD],ngContentSelectors:C,decls:1,vars:0,template:function(h,v){1&h&&(t.F$t(),t.Hsn(0))},encapsulation:2,changeDetection:0})}(0,e.gn)([(0,n.Rn)(null)],u.prototype,"col",void 0)},87334:(nt,I,o)=>{"use strict";o.d(I,{aS:()=>G,Ic:()=>i.I}),o(61562),o(18580),o(97050);var i=o(40602),E=(o(77077),o(67594),o(96814)),u=o(60095),z=o(22948),M=o(31747),h=o(27929),v=o(33640),g=o(62612),d=o(52682),p=o(66987),f=o(62787),y=o(90551),T=o(20824),x=o(68373),D=o(73460),_=o(19035),P=o(57907),S=o(70612),A=o(79663),k=o(55695),R=o(96109),ze=(o(72289),o(85646),o(65879));let G=(()=>{class V{static#e=this.\u0275fac=function(ne){return new(ne||V)};static#t=this.\u0275mod=ze.oAB({type:V});static#n=this.\u0275inj=ze.cJS({imports:[E.ez,u.u5,h.vy,M._N,z.cm,_._p,A.HQ,y.PV,v.mS,g.Wr,p.S,f.b1,D.ip,P.aF,k.X,T.o7,R.cg,S.GS,x.Zf,d.Hb]})}return V})()},61562:(nt,I,o)=>{"use strict";o.d(I,{t:()=>u});var e=o(980),n=o(64115),t=o(65879),i=o(6593),l=o(72289),C=o(27929),E=o(40602);let u=(()=>{class z{constructor(h,v,g,d,p){this.dom=h,this.rowSource=v,this.acl=g,this.i18nSrv=d,this.stWidgetRegistry=p}setCog(h){this.cog=h}fixPop(h,v){if(null==h.pop||!1===h.pop)return void(h.pop=!1);let g={...v};"string"==typeof h.pop?g.title=h.pop:"object"==typeof h.pop&&(g={...g,...h.pop}),"function"!=typeof g.condition&&(g.condition=()=>!1),h.pop=g}btnCoerce(h){if(!h)return[];const v=[],{modal:g,drawer:d,pop:p,btnIcon:f}=this.cog;for(const y of h)this.acl&&y.acl&&!this.acl.can(y.acl)||(("modal"===y.type||"static"===y.type)&&(null==y.modal||null==y.modal.component?y.type="none":y.modal={paramsName:"record",size:"lg",...g,...y.modal}),"drawer"===y.type&&(null==y.drawer||null==y.drawer.component?y.type="none":y.drawer={paramsName:"record",size:"lg",...d,...y.drawer}),"del"===y.type&&typeof y.pop>"u"&&(y.pop=!0),this.fixPop(y,p),"function"!=typeof y.icon&&(y.icon={...f,..."string"==typeof y.icon?{type:y.icon}:y.icon}),y.children=y.children&&y.children.length>0?this.btnCoerce(y.children):[],y.i18n&&this.i18nSrv&&(y.text=this.i18nSrv.fanyi(y.i18n)),v.push(y));return this.btnCoerceIf(v),v}btnCoerceIf(h){for(const v of h)v.iifBehavior=v.iifBehavior||this.cog.iifBehavior,v.children&&v.children.length>0?this.btnCoerceIf(v.children):v.children=[]}fixedCoerce(h){const v=(g,d)=>g+ +d.width.toString().replace("px","");h.filter(g=>g.fixed&&"left"===g.fixed&&g.width).forEach((g,d)=>g._left=`${h.slice(0,d).reduce(v,0)}px`),h.filter(g=>g.fixed&&"right"===g.fixed&&g.width).reverse().forEach((g,d)=>g._right=`${d>0?h.slice(-d).reduce(v,0):0}px`)}sortCoerce(h){const v=this.fixSortCoerce(h);return v.reName={...this.cog.sortReName,...v.reName},v}fixSortCoerce(h){if(typeof h.sort>"u")return{enabled:!1};let v={};return"string"==typeof h.sort?v.key=h.sort:"boolean"!=typeof h.sort?v=h.sort:"boolean"==typeof h.sort&&(v.compare=(g,d)=>g[h.indexKey]-d[h.indexKey]),v.key||(v.key=h.indexKey),v.enabled=!0,v}filterCoerce(h){if(null==h.filter)return null;let v=h.filter;v.type=v.type||"default",v.showOPArea=!1!==v.showOPArea;let g="filter",d="fill",p=!0;switch(v.type){case"keyword":g="search",d="outline";break;case"number":g="search",d="outline",v.number={step:1,min:-1/0,max:1/0,...v.number};break;case"date":g="calendar",d="outline",v.date={range:!1,mode:"date",showToday:!0,showNow:!1,...v.date};break;case"custom":break;default:p=!1}if(p&&(null==v.menus||0===v.menus.length)&&(v.menus=[{value:void 0}]),0===v.menus?.length)return null;typeof v.multiple>"u"&&(v.multiple=!0),v.confirmText=v.confirmText||this.cog.filterConfirmText,v.clearText=v.clearText||this.cog.filterClearText,v.key=v.key||h.indexKey,v.icon=v.icon||g;const y={type:g,theme:d};return v.icon="string"==typeof v.icon?{...y,type:v.icon}:{...y,...v.icon},this.updateDefault(v),this.acl&&(v.menus=v.menus?.filter(T=>this.acl.can(T.acl))),0===v.menus?.length?null:v}restoreRender(h){h.renderTitle&&(h.__renderTitle="string"==typeof h.renderTitle?this.rowSource.getTitle(h.renderTitle):h.renderTitle),h.render&&(h.__render="string"==typeof h.render?this.rowSource.getRow(h.render):h.render)}widgetCoerce(h){"widget"===h.type&&(null==h.widget||!this.stWidgetRegistry.has(h.widget.type))&&delete h.type}genHeaders(h){const v=[],g=[],d=(f,y,T=0)=>{v[T]=v[T]||[];let x=y;return f.map(_=>{const P={column:_,colStart:x,hasSubColumns:!1};let S=1;const A=_.children;return Array.isArray(A)&&A.length>0?(S=d(A,x,T+1).reduce((k,R)=>k+R,0),P.hasSubColumns=!0):g.push(P.column.width||""),"colSpan"in _&&(S=_.colSpan),"rowSpan"in _&&(P.rowSpan=_.rowSpan),P.colSpan=S,P.colEnd=P.colStart+S-1,v[T].push(P),x+=S,S})};d(h,0);const p=v.length;for(let f=0;f{!("rowSpan"in y)&&!y.hasSubColumns&&(y.rowSpan=p-f)});return{headers:v,headerWidths:p>1?g:null}}cleanCond(h){const v=[],g=(0,n.p$)(h);for(const d of g)"function"==typeof d.iif&&!d.iif(d)||this.acl&&d.acl&&!this.acl.can(d.acl)||(Array.isArray(d.children)&&d.children.length>0&&(d.children=this.cleanCond(d.children)),v.push(d));return v}mergeClass(h){const v=[];h._isTruncate&&v.push("text-truncate");const g=h.className;if(!g){const f={number:"text-right",currency:"text-right",date:"text-center"}[h.type];return f&&v.push(f),void(h._className=v)}const d=Array.isArray(g);if(!d&&"object"==typeof g){const f=g;return v.forEach(y=>f[y]=!0),void(h._className=f)}const p=d?Array.from(g):[g];p.splice(0,0,...v),h._className=[...new Set(p)].filter(f=>!!f)}process(h,v){if(!h||0===h.length)return{columns:[],headers:[],headerWidths:null};const{noIndex:g}=this.cog;let d=0,p=0,f=0;const y=[],T=_=>{_.index&&(Array.isArray(_.index)||(_.index=_.index.toString().split(".")),_.indexKey=_.index.join("."));const P=("string"==typeof _.title?{text:_.title}:_.title)||{};return P.i18n&&this.i18nSrv&&(P.text=this.i18nSrv.fanyi(P.i18n)),P.text&&(P._text=this.dom.bypassSecurityTrustHtml(P.text)),_.title=P,"no"===_.type&&(_.noIndex=null==_.noIndex?g:_.noIndex),null==_.selections&&(_.selections=[]),"checkbox"===_.type&&(++d,_.width||(_.width=(_.selections.length>0?62:50)+"px")),this.acl&&(_.selections=_.selections.filter(S=>this.acl.can(S.acl))),"radio"===_.type&&(++p,_.selections=[],_.width||(_.width="50px")),null!=_.cell&&(_.type="cell"),"yn"===_.type&&(_.yn={truth:!0,...this.cog.yn,..._.yn}),"date"===_.type&&(_.dateFormat=_.dateFormat||this.cog.date?.format),("link"===_.type&&"function"!=typeof _.click||"badge"===_.type&&null==_.badge||"tag"===_.type&&null==_.tag||"enum"===_.type&&null==_.enum)&&(_.type=""),_._isTruncate=!!_.width&&"truncate"===v.widthMode.strictBehavior&&"img"!==_.type,this.mergeClass(_),"number"==typeof _.width&&(_._width=_.width,_.width=`${_.width}px`),_._left=!1,_._right=!1,_.safeType=_.safeType??v.safeType,_._sort=this.sortCoerce(_),_.filter=this.filterCoerce(_),_.buttons=this.btnCoerce(_.buttons),this.widgetCoerce(_),this.restoreRender(_),_.resizable={disabled:!0,bounds:"window",minWidth:60,maxWidth:360,preview:!0,...v.resizable,..."boolean"==typeof _.resizable?{disabled:!_.resizable}:_.resizable},_.__point=f++,_},x=_=>{for(const P of _)y.push(T(P)),Array.isArray(P.children)&&x(P.children)},D=this.cleanCond(h);if(x(D),d>1)throw new Error("[st]: just only one column checkbox");if(p>1)throw new Error("[st]: just only one column radio");return this.fixedCoerce(y),{columns:y.filter(_=>!Array.isArray(_.children)||0===_.children.length),...this.genHeaders(D)}}restoreAllRender(h){h.forEach(v=>this.restoreRender(v))}updateDefault(h){return null==h.menus||(h.default="default"===h.type?-1!==h.menus.findIndex(v=>v.checked):!!h.menus[0].value),this}cleanFilter(h){const v=h.filter;return v.default=!1,"default"===v.type?v.menus.forEach(g=>g.checked=!1):v.menus[0].value=void 0,this}static#e=this.\u0275fac=function(v){return new(v||z)(t.LFG(i.H7),t.LFG(l.b,1),t.LFG(C._8,8),t.LFG(e.Oi,8),t.LFG(E.I))};static#t=this.\u0275prov=t.Yz7({token:z,factory:z.\u0275fac})}return z})()},18580:(nt,I,o)=>{"use strict";o.d(I,{o:()=>M});var e=o(69862),n=o(37398),t=o(22096),i=o(64115),l=o(65879),C=o(980),E=o(96814),u=o(59927),z=o(6593);let M=(()=>{class h{constructor(g,d,p,f,y,T){this.http=g,this.datePipe=d,this.ynPipe=p,this.numberPipe=f,this.currencySrv=y,this.dom=T,this.sortTick=0}setCog(g){this.cog=g}process(g){let d,p=!1;const{data:f,res:y,total:T,page:x,pi:D,ps:_,paginator:P,columns:S}=g;let A,k,R,$,W,ze=x.show;return"string"==typeof f?(p=!0,d=this.getByRemote(f,g).pipe((0,n.U)(Y=>{let G;if(W=Y,Array.isArray(Y))G=Y,A=G.length,k=A,ze=!1;else{const V=y.reName;if("function"==typeof V){const K=V(Y,{pi:D,ps:_,total:T});G=K.list,A=K.total}else{G=(0,i.In)(Y,V.list,[]),(null==G||!Array.isArray(G))&&(G=[]);const K=V.total&&(0,i.In)(Y,V.total,null);A=null==K?T||0:+K}}return(0,i.p$)(G)}))):d=null==f||Array.isArray(f)?(0,t.of)(f??[]):f,p||(d=d.pipe((0,n.U)(Y=>{W=Y;let G=(0,i.p$)(Y);const V=this.getSorterFn(S);return V&&(G=G.sort(V)),G}),(0,n.U)(Y=>(S.filter(G=>G.filter).forEach(G=>{const V=G.filter,K=this.getFilteredData(V);if(0===K.length)return;const te=V.fn;"function"==typeof te&&(Y=Y.filter(ne=>K.some(fe=>te(fe,ne))))}),Y)),(0,n.U)(Y=>{if(P&&x.front){const G=Math.ceil(Y.length/_);if($=Math.max(1,D>G?G:D),A=Y.length,!0===x.show)return Y.slice(($-1)*_,$*_)}return Y}))),"function"==typeof y.process&&(d=d.pipe((0,n.U)(Y=>y.process(Y,W)))),d=d.pipe((0,n.U)(Y=>this.optimizeData({result:Y,columns:S,rowClassName:g.rowClassName}))),d.pipe((0,n.U)(Y=>{R=Y;const G=A||T,V=k||_;return{pi:$,ps:k,total:A,list:R,statistical:this.genStatistical(S,R,W),pageShow:typeof ze>"u"?G>V:ze}}))}get(g,d,p){try{const f="safeHtml"===d.safeType;if(d.format){const _=d.format(g,d,p)||"";return{text:_,_text:f?this.dom.bypassSecurityTrustHtml(_):_,org:_,safeType:d.safeType}}const y=(0,i.In)(g,d.index,d.default);let x,D,T=y;switch(d.type){case"no":T=this.getNoIndex(g,d,p);break;case"img":T=y?``:"";break;case"number":T=this.numberPipe.transform(y,d.numberDigits);break;case"currency":T=this.currencySrv.format(y,d.currency?.format);break;case"date":T=y===d.default?d.default:this.datePipe.transform(y,d.dateFormat);break;case"yn":T=this.ynPipe.transform(y===d.yn.truth,d.yn.yes,d.yn.no,d.yn.mode,!1);break;case"enum":T=d.enum[y];break;case"tag":case"badge":const _="tag"===d.type?d.tag:d.badge;if(_&&_[T]){const P=_[T];T=P.text,x=P.color,D=P.tooltip}else T=""}return null==T&&(T=""),{text:T,_text:f?this.dom.bypassSecurityTrustHtml(T):T,org:y,color:x,tooltip:D,safeType:d.safeType,buttons:[]}}catch(f){const y="INVALID DATA";return console.error("Failed to get data",g,d,f),{text:y,_text:y,org:y,buttons:[],safeType:"text"}}}getByRemote(g,d){const{req:p,page:f,paginator:y,pi:T,ps:x,singleSort:D,multiSort:_,columns:P}=d,S=(p.method||"GET").toUpperCase();let A={};const k=p.reName;y&&(A="page"===p.type?{[k.pi]:f.zeroIndexed?T-1:T,[k.ps]:x}:{[k.skip]:(T-1)*x,[k.limit]:x}),A={...A,...p.params,...this.getReqSortMap(D,_,P),...this.getReqFilterMap(P)},1==d.req.ignoreParamNull&&Object.keys(A).forEach($=>{null==A[$]&&delete A[$]});let R={params:A,body:p.body,headers:p.headers};return"POST"===S&&!0===p.allInBody&&(R={body:{...p.body,...A},headers:p.headers}),"function"==typeof p.process&&(R=p.process(R)),R.params instanceof e.LE||(R.params=new e.LE({fromObject:R.params})),"function"==typeof d.customRequest?d.customRequest({method:S,url:g,options:R}):this.http.request(S,g,R)}getCell(g,d,p){const f="function"==typeof g.onCell?g.onCell(d,p):null,y=f?.colSpan??1,T=f?.rowSpan??1;return{colSpan:y<=0?null:y,rowSpan:T<=0?null:T}}optimizeData(g){const{result:d,columns:p,rowClassName:f}=g;for(let y=0,T=d.length;y{const D=this.getCell(x,d[y],y);if(Array.isArray(x.buttons)&&x.buttons.length>0)return{buttons:this.genButtons(x.buttons,d[y],x),_text:"",props:D};let _;return"function"==typeof x.cell&&(_=x.cell(d[y],x)),{...this.get(d[y],x,y),props:D,cell:_}}),d[y]._rowClassName=[f?f(d[y],y):null,d[y].className].filter(x=>!!x).join(" ");return d}getNoIndex(g,d,p){return"function"==typeof d.noIndex?d.noIndex(g,d,p):d.noIndex+p}genButtons(g,d,p){const f=x=>(0,i.p$)(x).filter(D=>{const _="function"!=typeof D.iif||D.iif(d,D,p),P="disabled"===D.iifBehavior;return D._result=_,D._disabled=!_&&P,D.children?.length&&(D.children=f(D.children)),_||P}),y=f(g),T=x=>{for(const D of x)D._text="function"==typeof D.text?D.text(d,D):D.text||"",D._className="function"==typeof D.className?D.className(d,D):D.className,D._icon="function"==typeof D.icon?D.icon(d,D):D.icon,D.children?.length&&(D.children=T(D.children));return x};return this.fixMaxMultiple(T(y),p)}fixMaxMultiple(g,d){const p=d.maxMultipleButton,f=g.length;if(null==p||f<=0)return g;const y={...this.cog.maxMultipleButton,..."number"==typeof p?{count:p}:p};if(y.count>=f)return g;const T=g.slice(0,y.count);return T.push({_text:y.text,children:g.slice(y.count)}),T}getValidSort(g){return g.filter(d=>d._sort&&d._sort.enabled&&d._sort.default).map(d=>d._sort)}getSorterFn(g){const d=this.getValidSort(g);if(0===d.length)return;const p=d[0];return null!==p.compare&&"function"==typeof p.compare?(f,y)=>{const T=p.compare(f,y);return 0!==T?"descend"===p.default?-T:T:0}:void 0}get nextSortTick(){return++this.sortTick}getReqSortMap(g,d,p){let f={};const y=this.getValidSort(p);if(d){const _={key:"sort",separator:"-",nameSeparator:".",keepEmptyKey:!0,arrayParam:!1,...d},P=y.sort((S,A)=>S.tick-A.tick).map(S=>S.key+_.nameSeparator+((S.reName||{})[S.default]||S.default));return f={[_.key]:_.arrayParam?P:P.join(_.separator)},0===P.length&&!1===_.keepEmptyKey?{}:f}if(0===y.length)return f;const T=y[0];let x=T.key,D=(y[0].reName||{})[T.default]||T.default;return g&&(D=x+(g.nameSeparator||".")+D,x=g.key||"sort"),f[x]=D,f}getFilteredData(g){return"default"===g.type?g.menus.filter(d=>!0===d.checked):g.menus.slice(0,1)}getReqFilterMap(g){let d={};return g.filter(p=>p.filter&&!0===p.filter.default).forEach(p=>{const f=p.filter,y=this.getFilteredData(f);let T={};f.reName?T=f.reName(f.menus,p):T[f.key]=y.map(x=>x.value).join(","),d={...d,...T}}),d}genStatistical(g,d,p){const f={};return g.forEach((y,T)=>{f[y.key||y.indexKey||T]=null==y.statistical?{}:this.getStatistical(y,T,d,p)}),f}getStatistical(g,d,p,f){const y=g.statistical,T={digits:2,currency:void 0,..."string"==typeof y?{type:y}:y};let x={value:0},D=!1;if("function"==typeof T.type)x=T.type(this.getValues(d,p),g,p,f),D=!0;else switch(T.type){case"count":x.value=p.length;break;case"distinctCount":x.value=this.getValues(d,p).filter((_,P,S)=>S.indexOf(_)===P).length;break;case"sum":x.value=this.toFixed(this.getSum(d,p),T.digits),D=!0;break;case"average":x.value=this.toFixed(this.getSum(d,p)/p.length,T.digits),D=!0;break;case"max":x.value=Math.max(...this.getValues(d,p)),D=!0;break;case"min":x.value=Math.min(...this.getValues(d,p)),D=!0}return x.text=!0===T.currency||null==T.currency&&!0===D?this.currencySrv.format(x.value,g.currency?.format):String(x.value),x}toFixed(g,d){return isNaN(g)||!isFinite(g)?0:parseFloat(g.toFixed(d))}getValues(g,d){return d.map(p=>p._values[g].org).map(p=>""===p||null==p?0:p)}getSum(g,d){return this.getValues(g,d).reduce((p,f)=>p+parseFloat(String(f)),0)}static#e=this.\u0275fac=function(d){return new(d||h)(l.LFG(C.lP),l.LFG(C.uU,1),l.LFG(C.fU,1),l.LFG(E.JJ,1),l.LFG(u.ie),l.LFG(z.H7))};static#t=this.\u0275prov=l.Yz7({token:h,factory:h.\u0275fac})}return h})()},97050:(nt,I,o)=>{"use strict";o.d(I,{O:()=>l});var e=o(49671),n=o(64115),t=o(65879),i=o(76020);let l=(()=>{class C{constructor(u){this.xlsxSrv=u}_stGet(u,z,M,h){const v={t:"s",v:""};if(z.format)v.v=z.format(u,z,M);else{const g=u._values?u._values[h].text:(0,n.In)(u,z.index,"");if(v.v=g,null!=g)switch(z.type){case"currency":v.t="n";break;case"date":`${g}`.length>0&&(v.t="d",v.z=z.dateFormat);break;case"yn":const d=z.yn;v.v=g===d.truth?d.yes:d.no}}return v.v=v.v||"",v}genSheet(u){const z={},M=z[u.sheetname||"Sheet1"]={},h=u.data.length;let v=0;const g=u.columens.filter(d=>!(!1===d.exported||!d.index||d.buttons&&0!==d.buttons.length));-1!==g.findIndex(d=>null!=d._width)&&(M["!cols"]=g.map(d=>({wpx:d._width})));for(let d=0;d0&&h>0&&(M["!ref"]=`A1:${this.xlsxSrv.numberToSchema(v)}${h+1}`),z}export(u){var z=this;return(0,e.Z)(function*(){const M=z.genSheet(u);return z.xlsxSrv.export({sheets:M,filename:u.filename,callback:u.callback})})()}static#e=this.\u0275fac=function(z){return new(z||C)(t.LFG(i.be,8))};static#t=this.\u0275prov=t.Yz7({token:C,factory:C.\u0275fac})}return C})()},72289:(nt,I,o)=>{"use strict";o.d(I,{b:()=>n,w:()=>t});var e=o(65879);let n=(()=>{class i{constructor(){this.titles={},this.rows={}}add(C,E,u){this["title"===C?"titles":"rows"][E]=u}getTitle(C){return this.titles[C]}getRow(C){return this.rows[C]}static#e=this.\u0275fac=function(E){return new(E||i)};static#t=this.\u0275prov=e.Yz7({token:i,factory:i.\u0275fac})}return i})(),t=(()=>{class i{constructor(C,E){this.ref=C,this.source=E}ngOnInit(){this.source.add(this.type,this.id,this.ref)}static#e=this.\u0275fac=function(E){return new(E||i)(e.Y36(e.Rgc),e.Y36(n,1))};static#t=this.\u0275dir=e.lG2({type:i,selectors:[["","st-row",""]],inputs:{id:["st-row","id"],type:"type"}})}return i})()},85646:(nt,I,o)=>{"use strict";o.d(I,{U:()=>t});var e=o(65879),n=o(40602);let t=(()=>{class i{constructor(C,E){this.stWidgetRegistry=C,this.viewContainerRef=E}ngOnInit(){const C=this.column.widget,E=this.stWidgetRegistry.get(C.type);this.viewContainerRef.clear();const u=this.viewContainerRef.createComponent(E),{record:z,column:M}=this,h=C.params?C.params({record:z,column:M}):{record:z};Object.keys(h).forEach(v=>{u.instance[v]=h[v]})}static#e=this.\u0275fac=function(E){return new(E||i)(e.Y36(n.I),e.Y36(e.s_b))};static#t=this.\u0275dir=e.lG2({type:i,selectors:[["","st-widget-host",""]],inputs:{record:"record",column:"column"}})}return i})()},40602:(nt,I,o)=>{"use strict";o.d(I,{I:()=>n});var e=o(65879);let n=(()=>{class t{constructor(){this._widgets={}}get widgets(){return this._widgets}register(l,C){this._widgets[l]=C}has(l){return this._widgets.hasOwnProperty(l)}get(l){return this._widgets[l]}static#e=this.\u0275fac=function(C){return new(C||t)};static#t=this.\u0275prov=e.Yz7({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})()},77077:(nt,I,o)=>{"use strict";o.d(I,{A:()=>Sn});var e=o(97582),n=o(96814),t=o(65879),i=o(71993),l=o(32181),C=o(37398),E=o(64716),u=o(26306),z=o(58504),M=o(22096),h=o(2664),v=o(46973),d=o(980),p=o(74648),f=o(64115),y=o(61562),T=o(18580),x=o(97050),D=o(72289),_=o(67594),P=o(78967),S=o(62787),A=o(60095),k=o(63431),R=o(79663),$=o(90551),W=o(62612),ze=o(73460),Y=o(96109),G=o(70612),V=o(57907),K=o(20824),te=o(68373),ne=o(52682);function fe(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"div",12)(1,"input",13),t.NdJ("ngModelChange",function(Kt){t.CHM(We);const ln=t.oxw();return t.KtG(ln.f.menus[0].value=Kt)})("ngModelChange",function(Kt){t.CHM(We);const ln=t.oxw();return t.KtG(ln.n.emit(Kt))})("keyup.enter",function(){t.CHM(We);const Kt=t.oxw();return t.KtG(Kt.confirm())}),t.qZA()()}if(2&St){const We=t.oxw();t.xp6(1),t.Q6J("ngModel",We.f.menus[0].value),t.uIk("placeholder",We.f.placeholder)}}function re(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"div",14)(1,"nz-input-number",15),t.NdJ("ngModelChange",function(Kt){t.CHM(We);const ln=t.oxw();return t.KtG(ln.f.menus[0].value=Kt)})("ngModelChange",function(Kt){t.CHM(We);const ln=t.oxw();return t.KtG(ln.n.emit(Kt))}),t.qZA()()}if(2&St){const We=t.oxw();t.xp6(1),t.Q6J("ngModel",We.f.menus[0].value)("nzMin",We.f.number.min)("nzMax",We.f.number.max)("nzStep",We.f.number.step)("nzPrecision",We.f.number.precision)("nzPlaceHolder",We.f.placeholder)}}function be(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"nz-date-picker",18),t.NdJ("ngModelChange",function(Kt){t.CHM(We);const ln=t.oxw(2);return t.KtG(ln.f.menus[0].value=Kt)})("ngModelChange",function(Kt){t.CHM(We);const ln=t.oxw(2);return t.KtG(ln.n.emit(Kt))}),t.qZA()}if(2&St){const We=t.oxw(2);t.Q6J("nzMode",We.f.date.mode)("ngModel",We.f.menus[0].value)("nzShowNow",We.f.date.showNow)("nzShowToday",We.f.date.showToday)("nzDisabledDate",We.f.date.disabledDate)("nzDisabledTime",We.f.date.disabledTime)}}function le(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"nz-range-picker",18),t.NdJ("ngModelChange",function(Kt){t.CHM(We);const ln=t.oxw(2);return t.KtG(ln.f.menus[0].value=Kt)})("ngModelChange",function(Kt){t.CHM(We);const ln=t.oxw(2);return t.KtG(ln.n.emit(Kt))}),t.qZA()}if(2&St){const We=t.oxw(2);t.Q6J("nzMode",We.f.date.mode)("ngModel",We.f.menus[0].value)("nzShowNow",We.f.date.showNow)("nzShowToday",We.f.date.showToday)("nzDisabledDate",We.f.date.disabledDate)("nzDisabledTime",We.f.date.disabledTime)}}function ce(St,gt){if(1&St&&(t.TgZ(0,"div",16),t.YNc(1,be,1,6,"nz-date-picker",17),t.YNc(2,le,1,6,"nz-range-picker",17),t.qZA()),2&St){const We=t.oxw();t.xp6(1),t.Q6J("ngIf",!We.f.date.range),t.xp6(1),t.Q6J("ngIf",We.f.date.range)}}function Q(St,gt){1&St&&t._UZ(0,"div",19)}function ie(St,gt){}const ae=function(St,gt,We){return{$implicit:St,col:gt,handle:We}};function xe(St,gt){if(1&St&&(t.TgZ(0,"div",20),t.YNc(1,ie,0,0,"ng-template",21),t.qZA()),2&St){const We=t.oxw();t.xp6(1),t.Q6J("ngTemplateOutlet",We.f.custom)("ngTemplateOutletContext",t.kEZ(2,ae,We.f,We.col,We))}}function Me(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"li",25)(1,"label",26),t.NdJ("ngModelChange",function(Kt){const zn=t.CHM(We).$implicit;return t.KtG(zn.checked=Kt)})("ngModelChange",function(){t.CHM(We);const Kt=t.oxw(3);return t.KtG(Kt.checkboxChange())}),t._uU(2),t.qZA()()}if(2&St){const We=gt.$implicit;t.xp6(1),t.Q6J("ngModel",We.checked),t.xp6(1),t.hij(" ",We.text," ")}}function Ye(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,Me,3,2,"li",24),t.BQk()),2&St){const We=t.oxw(2);t.xp6(1),t.Q6J("ngForOf",We.f.menus)}}function q(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"li",25)(1,"label",27),t.NdJ("ngModelChange",function(){const ln=t.CHM(We).$implicit,zn=t.oxw(3);return t.KtG(zn.radioChange(ln))}),t._uU(2),t.qZA()()}if(2&St){const We=gt.$implicit;t.xp6(1),t.Q6J("ngModel",We.checked),t.xp6(1),t.hij(" ",We.text," ")}}function ve(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,q,3,2,"li",24),t.BQk()),2&St){const We=t.oxw(2);t.xp6(1),t.Q6J("ngForOf",We.f.menus)}}function ee(St,gt){if(1&St&&(t.TgZ(0,"ul",22),t.YNc(1,Ye,2,1,"ng-container",23),t.YNc(2,ve,2,1,"ng-container",23),t.qZA()),2&St){const We=t.oxw();t.xp6(1),t.Q6J("ngIf",We.f.multiple),t.xp6(1),t.Q6J("ngIf",!We.f.multiple)}}function Be(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"div",28)(1,"a",29),t.NdJ("click",function(){t.CHM(We);const Kt=t.oxw();return t.KtG(Kt.confirm())}),t.TgZ(2,"span"),t._uU(3),t.qZA()(),t.TgZ(4,"a",30),t.NdJ("click",function(){t.CHM(We);const Kt=t.oxw();return t.KtG(Kt.reset())}),t.TgZ(5,"span"),t._uU(6),t.qZA()()()}if(2&St){const We=t.oxw();t.xp6(3),t.Oqu(We.f.confirmText||We.locale.filterConfirm),t.xp6(3),t.Oqu(We.f.clearText||We.locale.filterReset)}}let Re=(()=>{class St{get icon(){return this.f.icon}constructor(We){this.cdr=We,this.visible=!1,this.locale={},this.n=new t.vpe,this.handle=new t.vpe}stopPropagation(We){We.stopPropagation()}checkboxChange(){this.n.emit(this.f.menus?.filter(We=>We.checked))}radioChange(We){this.f.menus.forEach(Nt=>Nt.checked=!1),We.checked=!We.checked,this.n.emit(We)}close(We){null!=We&&this.handle.emit(We),this.visible=!1,this.cdr.detectChanges()}confirm(){return this.handle.emit(!0),this}reset(){return this.handle.emit(!1),this}static#e=this.\u0275fac=function(Nt){return new(Nt||St)(t.Y36(t.sBO))};static#t=this.\u0275cmp=t.Xpm({type:St,selectors:[["st-filter"]],hostVars:6,hostBindings:function(Nt,Kt){2&Nt&&t.ekj("ant-table-filter-trigger-container",!0)("st__filter",!0)("ant-table-filter-trigger-container-open",Kt.visible)},inputs:{col:"col",locale:"locale",f:"f"},outputs:{n:"n",handle:"handle"},decls:13,vars:14,consts:[["nz-dropdown","","nzTrigger","click","nzOverlayClassName","st__filter-wrap",1,"ant-table-filter-trigger",3,"nzDropdownMenu","nzClickHide","nzVisible","nzVisibleChange","click"],["nz-icon","",3,"nzType","nzTheme"],["filterMenu","nzDropdownMenu"],[1,"ant-table-filter-dropdown"],[3,"ngSwitch"],["class","st__filter-keyword",4,"ngSwitchCase"],["class","p-sm st__filter-number",4,"ngSwitchCase"],["class","p-sm st__filter-date",4,"ngSwitchCase"],["class","p-sm st__filter-time",4,"ngSwitchCase"],["class","st__filter-custom",4,"ngSwitchCase"],["nz-menu","",4,"ngSwitchDefault"],["class","ant-table-filter-dropdown-btns",4,"ngIf"],[1,"st__filter-keyword"],["type","text","nz-input","",3,"ngModel","ngModelChange","keyup.enter"],[1,"p-sm","st__filter-number"],[1,"width-100",3,"ngModel","nzMin","nzMax","nzStep","nzPrecision","nzPlaceHolder","ngModelChange"],[1,"p-sm","st__filter-date"],["nzInline","",3,"nzMode","ngModel","nzShowNow","nzShowToday","nzDisabledDate","nzDisabledTime","ngModelChange",4,"ngIf"],["nzInline","",3,"nzMode","ngModel","nzShowNow","nzShowToday","nzDisabledDate","nzDisabledTime","ngModelChange"],[1,"p-sm","st__filter-time"],[1,"st__filter-custom"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],["nz-menu",""],[4,"ngIf"],["nz-menu-item","",4,"ngFor","ngForOf"],["nz-menu-item",""],["nz-checkbox","",3,"ngModel","ngModelChange"],["nz-radio","",3,"ngModel","ngModelChange"],[1,"ant-table-filter-dropdown-btns"],[1,"ant-table-filter-dropdown-link","confirm",3,"click"],[1,"ant-table-filter-dropdown-link","clear",3,"click"]],template:function(Nt,Kt){if(1&Nt&&(t.TgZ(0,"span",0),t.NdJ("nzVisibleChange",function(zn){return Kt.visible=zn})("click",function(zn){return Kt.stopPropagation(zn)}),t._UZ(1,"i",1),t.qZA(),t.TgZ(2,"nz-dropdown-menu",null,2)(4,"div",3),t.ynx(5,4),t.YNc(6,fe,2,2,"div",5),t.YNc(7,re,2,6,"div",6),t.YNc(8,ce,3,2,"div",7),t.YNc(9,Q,1,0,"div",8),t.YNc(10,xe,2,6,"div",9),t.YNc(11,ee,3,2,"ul",10),t.BQk(),t.YNc(12,Be,7,2,"div",11),t.qZA()()),2&Nt){const ln=t.MAs(3);t.ekj("active",Kt.visible||Kt.f.default),t.Q6J("nzDropdownMenu",ln)("nzClickHide",!1)("nzVisible",Kt.visible),t.xp6(1),t.Q6J("nzType",Kt.icon.type)("nzTheme",Kt.icon.theme),t.xp6(4),t.Q6J("ngSwitch",Kt.f.type),t.xp6(1),t.Q6J("ngSwitchCase","keyword"),t.xp6(1),t.Q6J("ngSwitchCase","number"),t.xp6(1),t.Q6J("ngSwitchCase","date"),t.xp6(1),t.Q6J("ngSwitchCase","time"),t.xp6(1),t.Q6J("ngSwitchCase","custom"),t.xp6(2),t.Q6J("ngIf",Kt.f.showOPArea)}},dependencies:[n.sg,n.O5,n.tP,n.RF,n.n9,n.ED,A.Fj,A.JJ,A.On,$.Ls,W.Ie,ze.wO,ze.u9,S.cm,S.RR,V.Of,K.Zp,te._V,ne.uw,ne.wS],encapsulation:2,changeDetection:0})}return St})();var ct=o(52787),Ae=o(11463),Mt=o(19035),je=o(33640),ot=o(66987),mt=o(55695),we=o(85646);const de=["table"],U=["contextmenuTpl"];function B(St,gt){if(1&St&&t._UZ(0,"small",14),2&St){const We=t.oxw().$implicit;t.Q6J("innerHTML",We.optional,t.oJD)}}function Ee(St,gt){if(1&St&&t._UZ(0,"i",15),2&St){const We=t.oxw().$implicit;t.Q6J("nzTooltipTitle",We.optionalHelp)}}function Ie(St,gt){if(1&St&&(t._UZ(0,"span",11),t.YNc(1,B,1,1,"small",12),t.YNc(2,Ee,1,1,"i",13)),2&St){const We=gt.$implicit;t.Q6J("innerHTML",We._text,t.oJD),t.xp6(1),t.Q6J("ngIf",We.optional),t.xp6(1),t.Q6J("ngIf",We.optionalHelp)}}function Ne(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"label",16),t.NdJ("ngModelChange",function(Kt){t.CHM(We);const ln=t.oxw();return t.KtG(ln._allChecked=Kt)})("ngModelChange",function(){t.CHM(We);const Kt=t.oxw();return t.KtG(Kt.checkAll())}),t.qZA()}if(2&St){const We=gt.$implicit,Nt=t.oxw();t.ekj("ant-table-selection-select-all-custom",We),t.Q6J("nzDisabled",Nt._allCheckedDisabled)("ngModel",Nt._allChecked)("nzIndeterminate",Nt._indeterminate)}}function pt(St,gt){if(1&St&&t._UZ(0,"th",18),2&St){const We=t.oxw(3);t.Q6J("rowSpan",We._headers.length)}}function Dt(St,gt){1&St&&(t.TgZ(0,"nz-resize-handle",25),t._UZ(1,"i"),t.qZA())}function Lt(St,gt){}function Ut(St,gt){}const qt=function(){return{$implicit:!1}};function en(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,Ut,0,0,"ng-template",22),t.BQk()),2&St){t.oxw(7);const We=t.MAs(3);t.xp6(1),t.Q6J("ngTemplateOutlet",We)("ngTemplateOutletContext",t.DdM(2,qt))}}function cn(St,gt){}function Wt(St,gt){if(1&St&&(t.TgZ(0,"div",35)(1,"div",36),t._UZ(2,"i",37),t.qZA()()),2&St){t.oxw();const We=t.MAs(4);t.xp6(1),t.Q6J("nzDropdownMenu",We)}}function Vt(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"li",38),t.NdJ("click",function(){const ln=t.CHM(We).$implicit,zn=t.oxw(8);return t.KtG(zn._rowSelection(ln))}),t.qZA()}2&St&&t.Q6J("innerHTML",gt.$implicit.text,t.oJD)}const st=function(){return{$implicit:!0}};function He(St,gt){if(1&St&&(t.TgZ(0,"div",30),t.YNc(1,cn,0,0,"ng-template",22),t.YNc(2,Wt,3,1,"div",31),t.TgZ(3,"nz-dropdown-menu",null,32)(5,"ul",33),t.YNc(6,Vt,1,1,"li",34),t.qZA()()()),2&St){const We=t.oxw(3).let;t.oxw(4);const Nt=t.MAs(3);t.xp6(1),t.Q6J("ngTemplateOutlet",Nt)("ngTemplateOutletContext",t.DdM(4,st)),t.xp6(1),t.Q6J("ngIf",We.selections.length),t.xp6(4),t.Q6J("ngForOf",We.selections)}}function et(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,en,2,3,"ng-container",4),t.YNc(2,He,7,5,"div",29),t.BQk()),2&St){const We=t.oxw(2).let;t.xp6(1),t.Q6J("ngIf",0===We.selections.length),t.xp6(1),t.Q6J("ngIf",We.selections.length>0)}}function It(St,gt){}const Ot=function(St){return{$implicit:St}};function xt(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,It,0,0,"ng-template",22),t.BQk()),2&St){const We=t.oxw(2).let;t.oxw(4);const Nt=t.MAs(1);t.xp6(1),t.Q6J("ngTemplateOutlet",Nt)("ngTemplateOutletContext",t.VKq(2,Ot,We.title))}}function Qe(St,gt){if(1&St&&(t.ynx(0)(1,26),t.YNc(2,et,3,2,"ng-container",27),t.YNc(3,xt,2,4,"ng-container",28),t.BQk()()),2&St){const We=t.oxw().let;t.xp6(1),t.Q6J("ngSwitch",We.type),t.xp6(1),t.Q6J("ngSwitchCase","checkbox")}}function ke(St,gt){if(1&St){const We=t.EpF();t.ynx(0),t.TgZ(1,"st-filter",39),t.NdJ("n",function(Kt){t.CHM(We);const ln=t.oxw(5);return t.KtG(ln.handleFilterNotify(Kt))})("handle",function(Kt){t.CHM(We);const ln=t.oxw().let,zn=t.oxw(4);return t.KtG(zn._handleFilter(ln,Kt))}),t.qZA(),t.BQk()}if(2&St){const We=t.oxw().let,Nt=t.oxw().$implicit,Kt=t.oxw(3);t.xp6(1),t.Q6J("col",Nt.column)("f",We.filter)("locale",Kt.locale)}}const pe=function(St,gt){return{$implicit:St,index:gt}};function qe(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"th",20),t.NdJ("nzSortOrderChange",function(Kt){const zn=t.CHM(We).let,kn=t.oxw().index,Qn=t.oxw(3);return t.KtG(Qn.sort(zn,kn,Kt))})("nzResizeEnd",function(Kt){const zn=t.CHM(We).let,kn=t.oxw(4);return t.KtG(kn.colResize(Kt,zn))}),t.YNc(1,Dt,2,0,"nz-resize-handle",21),t.YNc(2,Lt,0,0,"ng-template",22,23,t.W1O),t.YNc(4,Qe,4,2,"ng-container",24),t.YNc(5,ke,2,3,"ng-container",4),t.qZA()}if(2&St){const We=gt.let,Nt=t.MAs(3),Kt=t.oxw(),ln=Kt.$implicit,zn=Kt.last,kn=Kt.index;t.ekj("st__has-filter",We.filter),t.Q6J("colSpan",ln.colSpan)("rowSpan",ln.rowSpan)("nzWidth",We.width)("nzLeft",We._left)("nzRight",We._right)("ngClass",We._className)("nzShowSort",We._sort.enabled)("nzSortOrder",We._sort.default)("nzCustomFilter",!!We.filter)("nzDisabled",zn||We.resizable.disabled)("nzMaxWidth",We.resizable.maxWidth)("nzMinWidth",We.resizable.minWidth)("nzBounds",We.resizable.bounds)("nzPreview",We.resizable.preview),t.uIk("data-col",We.indexKey)("data-col-index",kn),t.xp6(1),t.Q6J("ngIf",!zn&&!We.resizable.disabled),t.xp6(1),t.Q6J("ngTemplateOutlet",We.__renderTitle)("ngTemplateOutletContext",t.WLB(24,pe,ln.column,kn)),t.xp6(2),t.Q6J("ngIf",!We.__renderTitle)("ngIfElse",Nt),t.xp6(1),t.Q6J("ngIf",We.filter)}}function ge(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,qe,6,27,"th",19),t.BQk()),2&St){const We=gt.$implicit;t.xp6(1),t.Q6J("let",We.column)}}function Ze(St,gt){if(1&St&&(t.TgZ(0,"tr"),t.YNc(1,pt,1,1,"th",17),t.YNc(2,ge,2,1,"ng-container",10),t.qZA()),2&St){const We=gt.$implicit,Nt=gt.first,Kt=t.oxw(2);t.xp6(1),t.Q6J("ngIf",Nt&&Kt.expand),t.xp6(1),t.Q6J("ngForOf",We)}}function $e(St,gt){if(1&St&&(t.TgZ(0,"thead"),t.YNc(1,Ze,3,2,"tr",10),t.qZA()),2&St){const We=t.oxw();t.xp6(1),t.Q6J("ngForOf",We._headers)}}function Ue(St,gt){}function wt(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,Ue,0,0,"ng-template",22),t.BQk()),2&St){const We=t.oxw();t.xp6(1),t.Q6J("ngTemplateOutlet",We.bodyHeader)("ngTemplateOutletContext",t.VKq(2,Ot,We._statistical))}}function De(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"td",43),t.NdJ("nzExpandChange",function(Kt){t.CHM(We);const ln=t.oxw().$implicit,zn=t.oxw();return t.KtG(zn._expandChange(ln,Kt))})("click",function(Kt){t.CHM(We);const ln=t.oxw(2);return t.KtG(ln._stopPropagation(Kt))}),t.qZA()}if(2&St){const We=t.oxw().$implicit,Nt=t.oxw();t.Q6J("nzShowExpand",Nt.expand&&!1!==We.showExpand)("nzExpand",We.expand)}}function Pe(St,gt){}function Je(St,gt){if(1&St&&(t.TgZ(0,"span",48),t.YNc(1,Pe,0,0,"ng-template",22),t.qZA()),2&St){const We=t.oxw(2).$implicit;t.oxw(2);const Nt=t.MAs(1);t.xp6(1),t.Q6J("ngTemplateOutlet",Nt)("ngTemplateOutletContext",t.VKq(2,Ot,We.title))}}function Ge(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"td",45),t.YNc(1,Je,2,4,"span",46),t.TgZ(2,"st-td",47),t.NdJ("n",function(Kt){t.CHM(We);const ln=t.oxw(3);return t.KtG(ln._handleTd(Kt))}),t.qZA()()}if(2&St){const We=t.oxw(),Nt=We.$implicit,Kt=We.index,ln=t.oxw(),zn=ln.$implicit,kn=ln.index,Qn=t.oxw();t.Q6J("nzLeft",!!Nt._left)("nzRight",!!Nt._right)("ngClass",Nt._className),t.uIk("data-col-index",Kt)("colspan",1===(null==zn._values[Kt].props?null:zn._values[Kt].props.colSpan)||null==zn._values[Kt].props?null:zn._values[Kt].props.colSpan)("rowspan",1===(null==zn._values[Kt].props?null:zn._values[Kt].props.rowSpan)||null==zn._values[Kt].props?null:zn._values[Kt].props.rowSpan),t.xp6(1),t.Q6J("ngIf",Qn.responsive),t.xp6(1),t.Q6J("data",Qn._data)("i",zn)("index",kn)("c",Nt)("cIdx",Kt)}}function Ke(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,Ge,3,12,"td",44),t.BQk()),2&St){const We=gt.index,Nt=t.oxw().$implicit;t.xp6(1),t.Q6J("ngIf",(null==Nt._values[We].props?null:Nt._values[We].props.colSpan)>0&&(null==Nt._values[We].props?null:Nt._values[We].props.rowSpan)>0)}}function _e(St,gt){}function it(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"tr",40),t.NdJ("click",function(Kt){const ln=t.CHM(We),zn=ln.$implicit,kn=ln.index,Qn=t.oxw();return t.KtG(Qn._rowClick(Kt,zn,kn,!1))})("dblclick",function(Kt){const ln=t.CHM(We),zn=ln.$implicit,kn=ln.index,Qn=t.oxw();return t.KtG(Qn._rowClick(Kt,zn,kn,!0))}),t.YNc(1,De,1,2,"td",41),t.YNc(2,Ke,2,1,"ng-container",10),t.qZA(),t.TgZ(3,"tr",42),t.YNc(4,_e,0,0,"ng-template",22),t.qZA()}if(2&St){const We=gt.$implicit,Nt=gt.index,Kt=t.oxw();t.Q6J("ngClass",We._rowClassName),t.uIk("data-index",Nt),t.xp6(1),t.Q6J("ngIf",Kt.expand),t.xp6(1),t.Q6J("ngForOf",Kt._columns),t.xp6(1),t.Q6J("nzExpand",We.expand),t.xp6(1),t.Q6J("ngTemplateOutlet",Kt.expand)("ngTemplateOutletContext",t.WLB(7,pe,We,Nt))}}function b(St,gt){}function N(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,b,0,0,"ng-template",22),t.BQk()),2&St){const We=gt.$implicit,Nt=gt.index;t.oxw(2);const Kt=t.MAs(10);t.xp6(1),t.Q6J("ngTemplateOutlet",Kt)("ngTemplateOutletContext",t.WLB(2,pe,We,Nt))}}function O(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,N,2,5,"ng-container",10),t.BQk()),2&St){const We=t.oxw();t.xp6(1),t.Q6J("ngForOf",We._data)}}function j(St,gt){}function L(St,gt){if(1&St&&t.YNc(0,j,0,0,"ng-template",22),2&St){const We=gt.$implicit,Nt=gt.index;t.oxw(2);const Kt=t.MAs(10);t.Q6J("ngTemplateOutlet",Kt)("ngTemplateOutletContext",t.WLB(2,pe,We,Nt))}}function he(St,gt){1&St&&(t.ynx(0),t.YNc(1,L,1,5,"ng-template",49),t.BQk())}function Ce(St,gt){}function bt(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,Ce,0,0,"ng-template",22),t.BQk()),2&St){const We=t.oxw();t.xp6(1),t.Q6J("ngTemplateOutlet",We.body)("ngTemplateOutletContext",t.VKq(2,Ot,We._statistical))}}function Ft(St,gt){if(1&St&&t._uU(0),2&St){const We=gt.range,Nt=gt.$implicit,Kt=t.oxw();t.Oqu(Kt.renderTotal(Nt,We))}}function sn(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"li",38),t.NdJ("click",function(){t.CHM(We);const Kt=t.oxw().$implicit;return t.KtG(Kt.fn(Kt))}),t.qZA()}if(2&St){const We=t.oxw().$implicit;t.Q6J("innerHTML",We.text,t.oJD)}}function pn(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"li",38),t.NdJ("click",function(){const ln=t.CHM(We).$implicit;return t.KtG(ln.fn(ln))}),t.qZA()}2&St&&t.Q6J("innerHTML",gt.$implicit.text,t.oJD)}function vn(St,gt){if(1&St&&(t.TgZ(0,"li",52)(1,"ul"),t.YNc(2,pn,1,1,"li",34),t.qZA()()),2&St){const We=t.oxw().$implicit;t.Q6J("nzTitle",We.text),t.xp6(2),t.Q6J("ngForOf",We.children)}}function Dn(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,sn,1,1,"li",50),t.YNc(2,vn,3,2,"li",51),t.BQk()),2&St){const We=gt.$implicit;t.xp6(1),t.Q6J("ngIf",0===We.children.length),t.xp6(1),t.Q6J("ngIf",We.children.length>0)}}function Mn(St,gt){}function En(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,Mn,0,0,"ng-template",3),t.BQk()),2&St){const We=t.oxw().$implicit;t.oxw();const Nt=t.MAs(3);t.xp6(1),t.Q6J("ngTemplateOutlet",Nt)("ngTemplateOutletContext",t.VKq(2,Ot,We))}}function bn(St,gt){}function Rn(St,gt){if(1&St&&(t.TgZ(0,"span",8),t.YNc(1,bn,0,0,"ng-template",3),t.qZA()),2&St){const We=t.oxw(),Nt=We.child,Kt=We.$implicit;t.oxw();const ln=t.MAs(3);t.ekj("d-block",Nt)("width-100",Nt),t.Q6J("nzTooltipTitle",Kt.tooltip),t.xp6(1),t.Q6J("ngTemplateOutlet",ln)("ngTemplateOutletContext",t.VKq(7,Ot,Kt))}}function qn(St,gt){if(1&St&&(t.YNc(0,En,2,4,"ng-container",6),t.YNc(1,Rn,2,9,"span",7)),2&St){const We=gt.$implicit;t.Q6J("ngIf",!We.tooltip),t.xp6(1),t.Q6J("ngIf",We.tooltip)}}function si(St,gt){}function Wn(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"a",11),t.NdJ("nzOnConfirm",function(){t.CHM(We);const Kt=t.oxw().$implicit,ln=t.oxw();return t.KtG(ln._btn(Kt))})("click",function(Kt){t.CHM(We);const ln=t.oxw(2);return t.KtG(ln._stopPropagation(Kt))}),t.YNc(1,si,0,0,"ng-template",3),t.qZA()}if(2&St){const We=t.oxw().$implicit;t.oxw();const Nt=t.MAs(5);t.Q6J("nzPopconfirmTitle",We.pop.title)("nzIcon",We.pop.icon)("nzCondition",We.pop.condition(We))("nzCancelText",We.pop.cancelText)("nzOkText",We.pop.okText)("nzOkType",We.pop.okType)("ngClass",We._className),t.xp6(1),t.Q6J("ngTemplateOutlet",Nt)("ngTemplateOutletContext",t.VKq(9,Ot,We))}}function ci(St,gt){}function ri(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"a",12),t.NdJ("click",function(Kt){t.CHM(We);const ln=t.oxw().$implicit,zn=t.oxw();return t.KtG(zn._btn(ln,Kt))}),t.YNc(1,ci,0,0,"ng-template",3),t.qZA()}if(2&St){const We=t.oxw().$implicit;t.oxw();const Nt=t.MAs(5);t.Q6J("ngClass",We._className),t.xp6(1),t.Q6J("ngTemplateOutlet",Nt)("ngTemplateOutletContext",t.VKq(3,Ot,We))}}function di(St,gt){if(1&St&&(t.YNc(0,Wn,2,11,"a",9),t.YNc(1,ri,2,5,"a",10)),2&St){const We=gt.$implicit;t.Q6J("ngIf",We.pop),t.xp6(1),t.Q6J("ngIf",!We.pop)}}function hi(St,gt){if(1&St&&t._UZ(0,"i",16),2&St){const We=t.oxw(2).$implicit;t.Q6J("nzType",We._icon.type)("nzTheme",We._icon.theme)("nzSpin",We._icon.spin)("nzTwotoneColor",We._icon.twoToneColor)}}function fi(St,gt){if(1&St&&t._UZ(0,"i",17),2&St){const We=t.oxw(2).$implicit;t.Q6J("nzIconfont",We._icon.iconfont)}}function zi(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,hi,1,4,"i",14),t.YNc(2,fi,1,1,"i",15),t.BQk()),2&St){const We=t.oxw().$implicit;t.xp6(1),t.Q6J("ngIf",!We._icon.iconfont),t.xp6(1),t.Q6J("ngIf",We._icon.iconfont)}}const Oi=function(St){return{"pl-xs":St}};function ei(St,gt){if(1&St&&(t.YNc(0,zi,3,2,"ng-container",6),t._UZ(1,"span",13)),2&St){const We=gt.$implicit;t.Q6J("ngIf",We._icon),t.xp6(1),t.Q6J("innerHTML",We._text,t.oJD)("ngClass",t.VKq(3,Oi,We._icon))}}function po(St,gt){}function oo(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"label",26),t.NdJ("ngModelChange",function(Kt){t.CHM(We);const ln=t.oxw(2);return t.KtG(ln._checkbox(Kt))}),t.qZA()}if(2&St){const We=t.oxw(2);t.Q6J("nzDisabled",We.i.disabled)("ngModel",We.i.checked)}}function Wi(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"label",27),t.NdJ("ngModelChange",function(){t.CHM(We);const Kt=t.oxw(2);return t.KtG(Kt._radio())}),t.qZA()}if(2&St){const We=t.oxw(2);t.Q6J("nzDisabled",We.i.disabled)("ngModel",We.i.checked)}}function Ri(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"a",28),t.NdJ("click",function(Kt){t.CHM(We);const ln=t.oxw(2);return t.KtG(ln._link(Kt))}),t.qZA()}if(2&St){const We=t.oxw(2);t.Q6J("innerHTML",We.i._values[We.cIdx]._text,t.oJD),t.uIk("title",We.i._values[We.cIdx].text)}}function Li(St,gt){if(1&St&&(t.TgZ(0,"nz-tag",31),t._UZ(1,"span",32),t.qZA()),2&St){const We=t.oxw(3);t.Q6J("nzColor",We.i._values[We.cIdx].color)("nz-tooltip",We.i._values[We.cIdx].tooltip),t.xp6(1),t.Q6J("innerHTML",We.i._values[We.cIdx]._text,t.oJD)}}function $i(St,gt){if(1&St&&t._UZ(0,"nz-badge",33),2&St){const We=t.oxw(3);t.Q6J("nzStatus",We.i._values[We.cIdx].color)("nzText",We.i._values[We.cIdx].text)("nz-tooltip",We.i._values[We.cIdx].tooltip)}}function Qi(St,gt){1&St&&(t.ynx(0),t.YNc(1,Li,2,3,"nz-tag",29),t.YNc(2,$i,1,3,"nz-badge",30),t.BQk()),2&St&&(t.xp6(1),t.Q6J("ngSwitchCase","tag"),t.xp6(1),t.Q6J("ngSwitchCase","badge"))}function Mo(St,gt){if(1&St&&t._UZ(0,"cell",34),2&St){const We=t.oxw(2);let Nt;t.Q6J("value",We.i._values[We.cIdx].text)("options",null!==(Nt=We.i._values[We.cIdx].cell)&&void 0!==Nt?Nt:We.c.cell)}}function wi(St,gt){}function Xi(St,gt){if(1&St&&t.YNc(0,wi,0,0,"ng-template",35),2&St){const We=t.oxw(2);t.Q6J("record",We.i)("column",We.c)}}function Ei(St,gt){if(1&St&&t._UZ(0,"span",32),2&St){const We=t.oxw(3);t.Q6J("innerHTML",We.i._values[We.cIdx]._text,t.oJD),t.uIk("title",We.c._isTruncate?We.i._values[We.cIdx].text:null)}}function Hi(St,gt){if(1&St&&t._UZ(0,"span",38),2&St){const We=t.oxw(3);t.Q6J("innerText",We.i._values[We.cIdx]._text),t.uIk("title",We.c._isTruncate?We.i._values[We.cIdx].text:null)}}function qi(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,Ei,1,2,"span",36),t.YNc(2,Hi,1,2,"span",37),t.BQk()),2&St){const We=t.oxw(2);t.xp6(1),t.Q6J("ngIf","text"!==We.c.safeType),t.xp6(1),t.Q6J("ngIf","text"===We.c.safeType)}}function Pi(St,gt){if(1&St&&(t.TgZ(0,"a",44),t._UZ(1,"span",32)(2,"i",45),t.qZA()),2&St){const We=t.oxw().$implicit,Nt=t.MAs(3);t.Q6J("nzDropdownMenu",Nt),t.xp6(1),t.Q6J("innerHTML",We._text,t.oJD)}}function Ii(St,gt){}const ki=function(St){return{$implicit:St,child:!0}};function oi(St,gt){if(1&St&&(t.TgZ(0,"li",48),t.YNc(1,Ii,0,0,"ng-template",3),t.qZA()),2&St){const We=t.oxw().$implicit;t.oxw(3);const Nt=t.MAs(1);t.ekj("st__btn-disabled",We._disabled),t.xp6(1),t.Q6J("ngTemplateOutlet",Nt)("ngTemplateOutletContext",t.VKq(4,ki,We))}}function Bn(St,gt){1&St&&t._UZ(0,"li",49)}function Et(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,oi,2,6,"li",46),t.YNc(2,Bn,1,0,"li",47),t.BQk()),2&St){const We=gt.$implicit;t.xp6(1),t.Q6J("ngIf","divider"!==We.type),t.xp6(1),t.Q6J("ngIf","divider"===We.type)}}function un(St,gt){}const lt=function(St){return{$implicit:St,child:!1}};function Ct(St,gt){if(1&St&&(t.TgZ(0,"span"),t.YNc(1,un,0,0,"ng-template",3),t.qZA()),2&St){const We=t.oxw().$implicit;t.oxw(2);const Nt=t.MAs(1);t.ekj("st__btn-disabled",We._disabled),t.xp6(1),t.Q6J("ngTemplateOutlet",Nt)("ngTemplateOutletContext",t.VKq(4,lt,We))}}function At(St,gt){1&St&&t._UZ(0,"nz-divider",50)}function Qt(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,Pi,3,2,"a",39),t.TgZ(2,"nz-dropdown-menu",null,40)(4,"ul",41),t.YNc(5,Et,3,2,"ng-container",25),t.qZA()(),t.YNc(6,Ct,2,6,"span",42),t.YNc(7,At,1,0,"nz-divider",43),t.BQk()),2&St){const We=gt.$implicit,Nt=gt.last;t.xp6(1),t.Q6J("ngIf",We.children.length>0),t.xp6(4),t.Q6J("ngForOf",We.children),t.xp6(1),t.Q6J("ngIf",0===We.children.length),t.xp6(1),t.Q6J("ngIf",!Nt)}}function gn(St,gt){if(1&St&&(t.ynx(0)(1,18),t.YNc(2,oo,1,2,"label",19),t.YNc(3,Wi,1,2,"label",20),t.YNc(4,Ri,1,2,"a",21),t.YNc(5,Qi,3,2,"ng-container",6),t.YNc(6,Mo,1,2,"cell",22),t.YNc(7,Xi,1,2,null,23),t.YNc(8,qi,3,2,"ng-container",24),t.BQk(),t.YNc(9,Qt,8,4,"ng-container",25),t.BQk()),2&St){const We=t.oxw();t.xp6(1),t.Q6J("ngSwitch",We.c.type),t.xp6(1),t.Q6J("ngSwitchCase","checkbox"),t.xp6(1),t.Q6J("ngSwitchCase","radio"),t.xp6(1),t.Q6J("ngSwitchCase","link"),t.xp6(1),t.Q6J("ngIf",We.i._values[We.cIdx].text),t.xp6(1),t.Q6J("ngSwitchCase","cell"),t.xp6(1),t.Q6J("ngSwitchCase","widget"),t.xp6(2),t.Q6J("ngForOf",We.i._values[We.cIdx].buttons)}}const Ln=function(St,gt,We){return{$implicit:St,index:gt,column:We}};class Sn{get req(){return this._req}set req(gt){this._req=(0,f.Z2)({},!0,this.cog.req,gt)}get res(){return this._res}set res(gt){const We=this._res=(0,f.Z2)({},!0,this.cog.res,gt),Nt=We.reName;"function"!=typeof Nt&&(Array.isArray(Nt.list)||(Nt.list=Nt.list.split(".")),Array.isArray(Nt.total)||(Nt.total=Nt.total.split("."))),this._res=We}get page(){return this._page}set page(gt){this._page={...this.cog.page,...gt},this.updateTotalTpl()}get multiSort(){return this._multiSort}set multiSort(gt){this._multiSort="boolean"==typeof gt&&!(0,p.sw)(gt)||"object"==typeof gt&&0===Object.keys(gt).length?void 0:{..."object"==typeof gt?gt:{}}}set widthMode(gt){this._widthMode={...this.cog.widthMode,...gt}}get widthMode(){return this._widthMode}set widthConfig(gt){this._widthConfig=gt,this.customWidthConfig=gt&>.length>0}set resizable(gt){this._resizable="object"==typeof gt?gt:{disabled:!(0,p.sw)(gt)}}get count(){return this._data.length}get list(){return this._data}get noColumns(){return null==this.columns}constructor(gt,We,Nt,Kt,ln,zn,kn,Qn,ui,eo){this.cdr=We,this.el=Nt,this.exportSrv=Kt,this.doc=ln,this.columnSource=zn,this.dataSource=kn,this.delonI18n=Qn,this.cms=eo,this.destroy$=(0,t.f3M)(t.ktI),this.totalTpl="",this.inied=!1,this.customWidthConfig=!1,this._widthConfig=[],this.locale={},this._loading=!1,this._data=[],this._statistical={},this._isPagination=!0,this._allChecked=!1,this._allCheckedDisabled=!1,this._indeterminate=!1,this._headers=[],this._columns=[],this.contextmenuList=[],this.ps=10,this.pi=1,this.total=0,this.loading=null,this.loadingDelay=0,this.loadingIndicator=null,this.bordered=!1,this.scroll={x:null,y:null},this.showHeader=!0,this.expandRowByClick=!1,this.expandAccordion=!1,this.expand=null,this.responsive=!0,this.error=new t.vpe,this.change=new t.vpe,this.virtualScroll=!1,this.virtualItemSize=54,this.virtualMaxBufferPx=200,this.virtualMinBufferPx=100,this.virtualForTrackBy=Ui=>Ui,this.delonI18n.change.pipe((0,i.sL)()).subscribe(()=>{this.locale=this.delonI18n.getData("st"),this._columns.length>0&&(this.updateTotalTpl(),this.cd())}),gt.change.pipe((0,i.sL)(),(0,l.h)(()=>this._columns.length>0)).subscribe(()=>this.refreshColumns()),this.setCog(ui.merge("st",_.M))}setCog(gt){const We={...gt.multiSort};delete gt.multiSort,this.cog=gt,Object.assign(this,gt),!1!==We.global&&(this.multiSort=We),this.columnSource.setCog(gt),this.dataSource.setCog(gt)}cd(){return this.cdr.detectChanges(),this}refreshData(){return this._data=[...this._data],this.cd()}renderTotal(gt,We){return this.totalTpl?this.totalTpl.replace("{{total}}",gt).replace("{{range[0]}}",We[0]).replace("{{range[1]}}",We[1]):""}changeEmit(gt,We){const Nt={type:gt,pi:this.pi,ps:this.ps,total:this.total};null!=We&&(Nt[gt]=We),this.change.emit(Nt)}get filteredData(){return this.loadData({paginator:!1}).pipe((0,C.U)(gt=>gt.list))}updateTotalTpl(){const{total:gt}=this.page;this.totalTpl="string"==typeof gt&>.length?gt:(0,p.sw)(gt)?this.locale.total:""}setLoading(gt){null==this.loading&&(this._loading=gt,this.cdr.detectChanges())}loadData(gt){const{pi:We,ps:Nt,data:Kt,req:ln,res:zn,page:kn,total:Qn,singleSort:ui,multiSort:eo,rowClassName:Ui}=this;return this.dataSource.process({pi:We,ps:Nt,total:Qn,data:Kt,req:ln,res:zn,page:kn,columns:this._columns,singleSort:ui,multiSort:eo,rowClassName:Ui,paginator:!0,customRequest:this.customRequest||this.cog.customRequest,...gt}).pipe((0,i.sL)(this.destroy$))}loadPageData(){return this.setLoading(!0),this.loadData().pipe((0,E.x)(()=>this.setLoading(!1)),(0,u.K)(gt=>(this.error.emit({type:"req",error:gt}),(0,z._)(()=>gt))),(0,C.U)(gt=>{const We="undefined";return typeof gt.pi!==We&&(this.pi=gt.pi),typeof gt.ps!==We&&(this.ps=gt.ps),typeof gt.total!==We&&(this.total=gt.total),typeof gt.pageShow!==We&&(this._isPagination=gt.pageShow),this._data=gt.list??[],this._statistical=gt.statistical,null!=this.cdkVirtualScrollViewport&&Promise.resolve().then(()=>this.cdkVirtualScrollViewport?.checkViewportSize()),this._refCheck(),this.changeEmit("loaded",gt.list),this}))}clear(gt=!0){return gt&&this.clearStatus(),this._data=[],this.cd()}clearStatus(){return this.clearCheck().clearRadio().clearFilter().clearSort()}load(gt=1,We,Nt){return-1!==gt&&(this.pi=gt),typeof We<"u"&&(this.req.params=Nt&&Nt.merge?{...this.req.params,...We}:We),this._change("pi",Nt),this}reload(gt,We){return this.load(-1,gt,We)}reset(gt,We){return this.clearStatus().load(1,gt,We),this}_toTop(gt){if(!(gt??this.page.toTop))return;const We=this.el.nativeElement;We.scrollIntoView(),this.doc.documentElement.scrollTop-=this.page.toTopOffset,this.scroll&&(this.cdkVirtualScrollViewport?this.cdkVirtualScrollViewport.scrollTo({top:0,left:0}):We.querySelector(".ant-table-body, .ant-table-content")?.scrollTo(0,0))}_change(gt,We){("pi"===gt||"ps"===gt&&this.pi<=Math.ceil(this.total/this.ps))&&this.loadPageData().subscribe(()=>this._toTop(We?.toTop)),this.changeEmit(gt)}closeOtherExpand(gt){!1!==this.expandAccordion&&this._data.filter(We=>We!==gt).forEach(We=>We.expand=!1)}_rowClick(gt,We,Nt,Kt){const ln=gt.target;if("INPUT"===ln.nodeName)return;const{expand:zn,expandRowByClick:kn}=this;if(zn&&!1!==We.showExpand&&kn)return We.expand=!We.expand,this.closeOtherExpand(We),void this.changeEmit("expand",We);const Qn={e:gt,item:We,index:Nt};Kt?this.changeEmit("dblClick",Qn):(this._clickRowClassName(ln,We,Nt),this.changeEmit("click",Qn))}_clickRowClassName(gt,We,Nt){const Kt=this.clickRowClassName;if(null==Kt)return;const ln={exclusive:!1,..."string"==typeof Kt?{fn:()=>Kt}:Kt},zn=ln.fn(We,Nt),kn=gt.closest("tr");ln.exclusive&&kn.parentElement.querySelectorAll("tr").forEach(Qn=>Qn.classList.remove(zn)),kn.classList.contains(zn)?kn.classList.remove(zn):kn.classList.add(zn)}_expandChange(gt,We){gt.expand=We,this.closeOtherExpand(gt),this.changeEmit("expand",gt)}_stopPropagation(gt){gt.stopPropagation()}_refColAndData(){return this._columns.forEach(gt=>{this._data.forEach((We,Nt)=>{const Kt=We._values;if("no"===gt.type){const ln=`${this.dataSource.getNoIndex(We,gt,Nt)}`;Kt[gt.__point]={text:ln,_text:ln,org:Nt,safeType:"text"}}Kt[gt.__point].props=this.dataSource.getCell(gt,We,Nt)})}),this.refreshData()}addRow(gt,We){return Array.isArray(gt)||(gt=[gt]),this._data.splice(We?.index??0,0,...gt),this.optimizeData()._refColAndData()}removeRow(gt){if("number"==typeof gt)this._data.splice(gt,1);else{Array.isArray(gt)||(gt=[gt]);const Nt=this._data;for(var We=Nt.length;We--;)-1!==gt.indexOf(Nt[We])&&Nt.splice(We,1)}return this._refCheck()._refColAndData()}setRow(gt,We,Nt){return Nt={refreshSchema:!1,emitReload:!1,...Nt},"number"!=typeof gt&&(gt=this._data.indexOf(gt)),this._data[gt]=(0,f.Z2)(this._data[gt],!1,We),this.optimizeData(),Nt.refreshSchema?(this.resetColumns({emitReload:Nt.emitReload}),this):this.refreshData()}sort(gt,We,Nt){this.multiSort?(gt._sort.default=Nt,gt._sort.tick=this.dataSource.nextSortTick):this._columns.forEach((Kt,ln)=>Kt._sort.default=ln===We?Nt:null),this.cdr.detectChanges(),this.loadPageData().subscribe(()=>{const Kt={value:Nt,map:this.dataSource.getReqSortMap(this.singleSort,this.multiSort,this._columns),column:gt};this.changeEmit("sort",Kt)})}clearSort(){return this._columns.forEach(gt=>gt._sort.default=null),this}_handleFilter(gt,We){We||this.columnSource.cleanFilter(gt),this.pi=1,this.columnSource.updateDefault(gt.filter),this.loadPageData().subscribe(()=>this.changeEmit("filter",gt))}handleFilterNotify(gt){this.changeEmit("filterChange",gt)}clearFilter(){return this._columns.filter(gt=>gt.filter&&!0===gt.filter.default).forEach(gt=>this.columnSource.cleanFilter(gt)),this}clearCheck(){return this.checkAll(!1)}_refCheck(){const gt=this._data.filter(Kt=>!Kt.disabled),We=gt.filter(Kt=>!0===Kt.checked);this._allChecked=We.length>0&&We.length===gt.length;const Nt=gt.every(Kt=>!Kt.checked);return this._indeterminate=!this._allChecked&&!Nt,this._allCheckedDisabled=this._data.length===this._data.filter(Kt=>Kt.disabled).length,this.cd()}checkAll(gt){return gt=typeof gt>"u"?this._allChecked:gt,this._data.filter(We=>!We.disabled).forEach(We=>We.checked=gt),this._refCheck()._checkNotify().refreshData()}_rowSelection(gt){return gt.select(this._data),this._refCheck()._checkNotify()}_checkNotify(){const gt=this._data.filter(We=>!We.disabled&&!0===We.checked);return this.changeEmit("checkbox",gt),this}clearRadio(){return this._data.filter(gt=>gt.checked).forEach(gt=>gt.checked=!1),this.changeEmit("radio",null),this.refreshData()}_handleTd(gt){switch(gt.type){case"checkbox":this._refCheck()._checkNotify();break;case"radio":this.changeEmit("radio",gt.item),this.refreshData()}}export(gt,We){const Nt=Array.isArray(gt)?this.dataSource.optimizeData({columns:this._columns,result:gt}):this._data;(!0===gt?this.filteredData:(0,M.of)(Nt)).subscribe(Kt=>this.exportSrv.export({columens:this._columns,...We,data:Kt}))}colResize({width:gt},We){We.width=`${gt}px`,this.changeEmit("resize",We)}onContextmenu(gt){if(!this.contextmenu)return;gt.preventDefault(),gt.stopPropagation();const We=gt.target.closest("[data-col-index]");if(!We)return;const Nt=Number(We.dataset.colIndex),Kt=Number(We.closest("tr").dataset.index),ln=isNaN(Kt),zn=this.contextmenu({event:gt,type:ln?"head":"body",rowIndex:ln?null:Kt,colIndex:Nt,data:ln?null:this.list[Kt],column:this._columns[Nt]});((0,h.b)(zn)?zn:(0,M.of)(zn)).pipe((0,i.sL)(this.destroy$),(0,l.h)(kn=>kn.length>0)).subscribe(kn=>{this.contextmenuList=kn.map(Qn=>(Array.isArray(Qn.children)||(Qn.children=[]),Qn)),this.cdr.detectChanges(),this.cms.create(gt,this.contextmenuTpl)})}get cdkVirtualScrollViewport(){return this.orgTable?.cdkVirtualScrollViewport}_resetColumns(gt){return typeof(gt={emitReload:!0,preClearData:!1,...gt}).columns<"u"&&(this.columns=gt.columns),typeof gt.pi<"u"&&(this.pi=gt.pi),typeof gt.ps<"u"&&(this.ps=gt.ps),gt.emitReload&&(gt.preClearData=!0),gt.preClearData&&(this._data=[]),this.refreshColumns(),gt.emitReload?this.loadPageData():(this.cd(),(0,M.of)(this))}resetColumns(gt){return function g(St,gt){const We="object"==typeof gt;return new Promise((Nt,Kt)=>{let zn,ln=!1;St.subscribe({next:kn=>{zn=kn,ln=!0},error:Kt,complete:()=>{ln?Nt(zn):We?Nt(gt.defaultValue):Kt(new v.K)}})})}(this._resetColumns(gt))}refreshColumns(){const gt=this.columnSource.process(this.columns,{widthMode:this.widthMode,resizable:this._resizable,safeType:this.cog.safeType});return this._columns=gt.columns,this._headers=gt.headers,!1===this.customWidthConfig&&null!=gt.headerWidths&&(this._widthConfig=gt.headerWidths),this}optimizeData(){return this._data=this.dataSource.optimizeData({columns:this._columns,result:this._data,rowClassName:this.rowClassName}),this}pureItem(gt){if("number"==typeof gt&&(gt=this._data[gt]),!gt)return null;const We=(0,f.p$)(gt);return["_values","_rowClassName"].forEach(Nt=>delete We[Nt]),We}ngAfterViewInit(){this.refreshColumns(),this.req.lazyLoad||this.loadPageData().subscribe(),this.inied=!0}ngOnChanges(gt){gt.loading&&(this._loading=gt.loading.currentValue),this.inied&&(gt.columns&&this.refreshColumns().optimizeData(),gt.data&&this.loadPageData().subscribe())}static#e=this.\u0275fac=function(We){return new(We||Sn)(t.Y36(d.Oi,8),t.Y36(t.sBO),t.Y36(t.SBq),t.Y36(x.O),t.Y36(n.K0),t.Y36(y.t),t.Y36(T.o),t.Y36(d.s7),t.Y36(P.Ri),t.Y36(S.Iw))};static#t=this.\u0275cmp=t.Xpm({type:Sn,selectors:[["st"]],viewQuery:function(We,Nt){if(1&We&&(t.Gf(de,5),t.Gf(U,5)),2&We){let Kt;t.iGM(Kt=t.CRH())&&(Nt.orgTable=Kt.first),t.iGM(Kt=t.CRH())&&(Nt.contextmenuTpl=Kt.first)}},hostVars:14,hostBindings:function(We,Nt){2&We&&t.ekj("st",!0)("st__p-left","left"===Nt.page.placement)("st__p-center","center"===Nt.page.placement)("st__width-strict","strict"===Nt.widthMode.type)("st__row-class",Nt.rowClassName)("ant-table-rep",Nt.responsive)("ant-table-rep__hide-header-footer",Nt.responsiveHideHeaderFooter)},inputs:{req:"req",res:"res",page:"page",data:"data",columns:"columns",contextmenu:"contextmenu",ps:"ps",pi:"pi",total:"total",loading:"loading",loadingDelay:"loadingDelay",loadingIndicator:"loadingIndicator",bordered:"bordered",size:"size",scroll:"scroll",singleSort:"singleSort",multiSort:"multiSort",rowClassName:"rowClassName",clickRowClassName:"clickRowClassName",widthMode:"widthMode",widthConfig:"widthConfig",resizable:"resizable",header:"header",showHeader:"showHeader",footer:"footer",bodyHeader:"bodyHeader",body:"body",expandRowByClick:"expandRowByClick",expandAccordion:"expandAccordion",expand:"expand",noResult:"noResult",responsive:"responsive",responsiveHideHeaderFooter:"responsiveHideHeaderFooter",virtualScroll:"virtualScroll",virtualItemSize:"virtualItemSize",virtualMaxBufferPx:"virtualMaxBufferPx",virtualMinBufferPx:"virtualMinBufferPx",customRequest:"customRequest",virtualForTrackBy:"virtualForTrackBy"},outputs:{error:"error",change:"change"},exportAs:["st"],features:[t._Bn([T.o,D.b,y.t,x.O,d.uU,d.fU,n.JJ]),t.TTD],decls:20,vars:36,consts:[["titleTpl",""],["chkAllTpl",""],[3,"nzData","nzPageIndex","nzPageSize","nzTotal","nzShowPagination","nzFrontPagination","nzBordered","nzSize","nzLoading","nzLoadingDelay","nzLoadingIndicator","nzTitle","nzFooter","nzScroll","nzVirtualItemSize","nzVirtualMaxBufferPx","nzVirtualMinBufferPx","nzVirtualForTrackBy","nzNoResult","nzPageSizeOptions","nzShowQuickJumper","nzShowSizeChanger","nzPaginationPosition","nzPaginationType","nzItemRender","nzSimple","nzShowTotal","nzWidthConfig","nzPageIndexChange","nzPageSizeChange","contextmenu"],["table",""],[4,"ngIf"],[1,"st__body"],["bodyTpl",""],["totalTpl",""],["contextmenuTpl","nzDropdownMenu"],["nz-menu","",1,"st__contextmenu"],[4,"ngFor","ngForOf"],[3,"innerHTML"],["class","st__head-optional",3,"innerHTML",4,"ngIf"],["class","st__head-tip","nz-tooltip","","nz-icon","","nzType","question-circle",3,"nzTooltipTitle",4,"ngIf"],[1,"st__head-optional",3,"innerHTML"],["nz-tooltip","","nz-icon","","nzType","question-circle",1,"st__head-tip",3,"nzTooltipTitle"],["nz-checkbox","",1,"st__checkall",3,"nzDisabled","ngModel","nzIndeterminate","ngModelChange"],["nzWidth","50px",3,"rowSpan",4,"ngIf"],["nzWidth","50px",3,"rowSpan"],["nz-resizable","",3,"colSpan","rowSpan","nzWidth","nzLeft","nzRight","ngClass","nzShowSort","nzSortOrder","nzCustomFilter","st__has-filter","nzDisabled","nzMaxWidth","nzMinWidth","nzBounds","nzPreview","nzSortOrderChange","nzResizeEnd",4,"let"],["nz-resizable","",3,"colSpan","rowSpan","nzWidth","nzLeft","nzRight","ngClass","nzShowSort","nzSortOrder","nzCustomFilter","nzDisabled","nzMaxWidth","nzMinWidth","nzBounds","nzPreview","nzSortOrderChange","nzResizeEnd"],["nzDirection","right",4,"ngIf"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],["renderTitle",""],[4,"ngIf","ngIfElse"],["nzDirection","right"],[3,"ngSwitch"],[4,"ngSwitchCase"],[4,"ngSwitchDefault"],["class","ant-table-selection",4,"ngIf"],[1,"ant-table-selection"],["class","ant-table-selection-extra",4,"ngIf"],["selectionMenu","nzDropdownMenu"],["nz-menu","",1,"ant-table-selection-menu"],["nz-menu-item","",3,"innerHTML","click",4,"ngFor","ngForOf"],[1,"ant-table-selection-extra"],["nz-dropdown","","nzPlacement","bottomLeft",1,"ant-table-selection-down","st__checkall-selection",3,"nzDropdownMenu"],["nz-icon","","nzType","down"],["nz-menu-item","",3,"innerHTML","click"],["nz-th-extra","",3,"col","f","locale","n","handle"],[3,"ngClass","click","dblclick"],["nzWidth","50px",3,"nzShowExpand","nzExpand","nzExpandChange","click",4,"ngIf"],[3,"nzExpand"],["nzWidth","50px",3,"nzShowExpand","nzExpand","nzExpandChange","click"],[3,"nzLeft","nzRight","ngClass",4,"ngIf"],[3,"nzLeft","nzRight","ngClass"],["class","ant-table-rep__title",4,"ngIf"],[3,"data","i","index","c","cIdx","n"],[1,"ant-table-rep__title"],["nz-virtual-scroll",""],["nz-menu-item","",3,"innerHTML","click",4,"ngIf"],["nz-submenu","",3,"nzTitle",4,"ngIf"],["nz-submenu","",3,"nzTitle"]],template:function(We,Nt){if(1&We&&(t.YNc(0,Ie,3,3,"ng-template",null,0,t.W1O),t.YNc(2,Ne,1,5,"ng-template",null,1,t.W1O),t.TgZ(4,"nz-table",2,3),t.NdJ("nzPageIndexChange",function(ln){return Nt.pi=ln})("nzPageIndexChange",function(){return Nt._change("pi")})("nzPageSizeChange",function(ln){return Nt.ps=ln})("nzPageSizeChange",function(){return Nt._change("ps")})("contextmenu",function(ln){return Nt.onContextmenu(ln)}),t.YNc(6,$e,2,1,"thead",4),t.TgZ(7,"tbody",5),t.YNc(8,wt,2,4,"ng-container",4),t.YNc(9,it,5,10,"ng-template",null,6,t.W1O),t.YNc(11,O,2,1,"ng-container",4),t.YNc(12,he,2,0,"ng-container",4),t.YNc(13,bt,2,4,"ng-container",4),t.qZA(),t.YNc(14,Ft,1,1,"ng-template",null,7,t.W1O),t.qZA(),t.TgZ(16,"nz-dropdown-menu",null,8)(18,"ul",9),t.YNc(19,Dn,3,2,"ng-container",10),t.qZA()()),2&We){const Kt=t.MAs(15);t.xp6(4),t.ekj("st__no-column",Nt.noColumns),t.Q6J("nzData",Nt._data)("nzPageIndex",Nt.pi)("nzPageSize",Nt.ps)("nzTotal",Nt.total)("nzShowPagination",Nt._isPagination)("nzFrontPagination",!1)("nzBordered",Nt.bordered)("nzSize",Nt.size)("nzLoading",Nt.noColumns||Nt._loading)("nzLoadingDelay",Nt.loadingDelay)("nzLoadingIndicator",Nt.loadingIndicator)("nzTitle",Nt.header)("nzFooter",Nt.footer)("nzScroll",Nt.scroll)("nzVirtualItemSize",Nt.virtualItemSize)("nzVirtualMaxBufferPx",Nt.virtualMaxBufferPx)("nzVirtualMinBufferPx",Nt.virtualMinBufferPx)("nzVirtualForTrackBy",Nt.virtualForTrackBy)("nzNoResult",Nt.noResult)("nzPageSizeOptions",Nt.page.pageSizes)("nzShowQuickJumper",Nt.page.showQuickJumper)("nzShowSizeChanger",Nt.page.showSize)("nzPaginationPosition",Nt.page.position)("nzPaginationType",Nt.page.type)("nzItemRender",Nt.page.itemRender)("nzSimple",Nt.page.simple)("nzShowTotal",Kt)("nzWidthConfig",Nt._widthConfig),t.xp6(2),t.Q6J("ngIf",Nt.showHeader),t.xp6(2),t.Q6J("ngIf",!Nt._loading),t.xp6(3),t.Q6J("ngIf",!Nt.virtualScroll),t.xp6(1),t.Q6J("ngIf",Nt.virtualScroll),t.xp6(1),t.Q6J("ngIf",!Nt._loading),t.xp6(6),t.Q6J("ngForOf",Nt.contextmenuList)}},dependencies:function(){return[n.mk,n.sg,n.O5,n.tP,n.RF,n.n9,n.ED,A.JJ,A.On,k.e,R.N8,R.qD,R.Uo,R._C,R.h7,R.Om,R.p0,R.$Z,R.zu,R.qn,R.d3,R.Vk,$.Ls,W.Ie,ze.wO,ze.u9,ze.rY,S.cm,S.RR,Y.SY,G.IJ,G.m8,Re,gi]},encapsulation:2,changeDetection:0})}(0,e.gn)([(0,p.Rn)()],Sn.prototype,"ps",void 0),(0,e.gn)([(0,p.Rn)()],Sn.prototype,"pi",void 0),(0,e.gn)([(0,p.Rn)()],Sn.prototype,"total",void 0),(0,e.gn)([(0,p.Rn)()],Sn.prototype,"loadingDelay",void 0),(0,e.gn)([(0,p.yF)()],Sn.prototype,"bordered",void 0),(0,e.gn)([(0,p.yF)()],Sn.prototype,"showHeader",void 0),(0,e.gn)([(0,p.yF)()],Sn.prototype,"expandRowByClick",void 0),(0,e.gn)([(0,p.yF)()],Sn.prototype,"expandAccordion",void 0),(0,e.gn)([(0,p.yF)()],Sn.prototype,"responsive",void 0),(0,e.gn)([(0,p.yF)()],Sn.prototype,"responsiveHideHeaderFooter",void 0),(0,e.gn)([(0,p.yF)()],Sn.prototype,"virtualScroll",void 0),(0,e.gn)([(0,p.Rn)()],Sn.prototype,"virtualItemSize",void 0),(0,e.gn)([(0,p.Rn)()],Sn.prototype,"virtualMaxBufferPx",void 0),(0,e.gn)([(0,p.Rn)()],Sn.prototype,"virtualMinBufferPx",void 0);let gi=(()=>{class St{get routerState(){const{pi:We,ps:Nt,total:Kt}=this.stComp;return{pi:We,ps:Nt,total:Kt}}constructor(We,Nt,Kt,ln){this.stComp=We,this.router=Nt,this.modalHelper=Kt,this.drawerHelper=ln,this.n=new t.vpe}report(We){this.n.emit({type:We,item:this.i,col:this.c})}_checkbox(We){this.i.checked=We,this.report("checkbox")}_radio(){this.data.filter(We=>!We.disabled).forEach(We=>We.checked=!1),this.i.checked=!0,this.report("radio")}_link(We){this._stopPropagation(We);const Nt=this.c.click(this.i,this.stComp);return"string"==typeof Nt&&this.router.navigateByUrl(Nt,{state:this.routerState}),!1}_stopPropagation(We){We.preventDefault(),We.stopPropagation()}_btn(We,Nt){Nt?.stopPropagation();const Kt=this.stComp.cog;let ln=this.i;if("modal"!==We.type&&"static"!==We.type)if("drawer"!==We.type)if("link"!==We.type)this.btnCallback(ln,We);else{const zn=this.btnCallback(ln,We);"string"==typeof zn&&this.router.navigateByUrl(zn,{state:this.routerState})}else{!0===Kt.drawer.pureRecoard&&(ln=this.stComp.pureItem(ln));const zn=We.drawer;this.drawerHelper.create(zn.title,zn.component,{[zn.paramsName]:ln,...zn.params&&zn.params(ln)},(0,f.Z2)({},!0,Kt.drawer,zn)).pipe((0,l.h)(Qn=>typeof Qn<"u")).subscribe(Qn=>this.btnCallback(ln,We,Qn))}else{!0===Kt.modal.pureRecoard&&(ln=this.stComp.pureItem(ln));const zn=We.modal;this.modalHelper["modal"===We.type?"create":"createStatic"](zn.component,{[zn.paramsName]:ln,...zn.params&&zn.params(ln)},(0,f.Z2)({},!0,Kt.modal,zn)).pipe((0,l.h)(Qn=>typeof Qn<"u")).subscribe(Qn=>this.btnCallback(ln,We,Qn))}}btnCallback(We,Nt,Kt){if(Nt.click){if("string"!=typeof Nt.click)return Nt.click(We,Kt,this.stComp);switch(Nt.click){case"load":this.stComp.load();break;case"reload":this.stComp.reload()}}}static#e=this.\u0275fac=function(Nt){return new(Nt||St)(t.Y36(Sn,1),t.Y36(ct.F0),t.Y36(d.Te),t.Y36(d.hC))};static#t=this.\u0275cmp=t.Xpm({type:St,selectors:[["st-td"]],inputs:{c:"c",cIdx:"cIdx",data:"data",i:"i",index:"index"},outputs:{n:"n"},decls:9,vars:8,consts:[["btnTpl",""],["btnItemTpl",""],["btnTextTpl",""],[3,"ngTemplateOutlet","ngTemplateOutletContext"],["render",""],[4,"ngIf","ngIfElse"],[4,"ngIf"],["nz-tooltip","",3,"nzTooltipTitle","d-block","width-100",4,"ngIf"],["nz-tooltip","",3,"nzTooltipTitle"],["nz-popconfirm","","class","st__btn-text",3,"nzPopconfirmTitle","nzIcon","nzCondition","nzCancelText","nzOkText","nzOkType","ngClass","nzOnConfirm","click",4,"ngIf"],["class","st__btn-text",3,"ngClass","click",4,"ngIf"],["nz-popconfirm","",1,"st__btn-text",3,"nzPopconfirmTitle","nzIcon","nzCondition","nzCancelText","nzOkText","nzOkType","ngClass","nzOnConfirm","click"],[1,"st__btn-text",3,"ngClass","click"],[3,"innerHTML","ngClass"],["nz-icon","",3,"nzType","nzTheme","nzSpin","nzTwotoneColor",4,"ngIf"],["nz-icon","",3,"nzIconfont",4,"ngIf"],["nz-icon","",3,"nzType","nzTheme","nzSpin","nzTwotoneColor"],["nz-icon","",3,"nzIconfont"],[3,"ngSwitch"],["nz-checkbox","",3,"nzDisabled","ngModel","ngModelChange",4,"ngSwitchCase"],["nz-radio","",3,"nzDisabled","ngModel","ngModelChange",4,"ngSwitchCase"],[3,"innerHTML","click",4,"ngSwitchCase"],[3,"value","options",4,"ngSwitchCase"],[4,"ngSwitchCase"],[4,"ngSwitchDefault"],[4,"ngFor","ngForOf"],["nz-checkbox","",3,"nzDisabled","ngModel","ngModelChange"],["nz-radio","",3,"nzDisabled","ngModel","ngModelChange"],[3,"innerHTML","click"],[3,"nzColor","nz-tooltip",4,"ngSwitchCase"],[3,"nzStatus","nzText","nz-tooltip",4,"ngSwitchCase"],[3,"nzColor","nz-tooltip"],[3,"innerHTML"],[3,"nzStatus","nzText","nz-tooltip"],[3,"value","options"],["st-widget-host","",3,"record","column"],[3,"innerHTML",4,"ngIf"],[3,"innerText",4,"ngIf"],[3,"innerText"],["nz-dropdown","","nzOverlayClassName","st__btn-sub",3,"nzDropdownMenu",4,"ngIf"],["btnMenu","nzDropdownMenu"],["nz-menu",""],[3,"st__btn-disabled",4,"ngIf"],["nzType","vertical",4,"ngIf"],["nz-dropdown","","nzOverlayClassName","st__btn-sub",3,"nzDropdownMenu"],["nz-icon","","nzType","down"],["nz-menu-item","",3,"st__btn-disabled",4,"ngIf"],["nz-menu-divider","",4,"ngIf"],["nz-menu-item",""],["nz-menu-divider",""],["nzType","vertical"]],template:function(Nt,Kt){if(1&Nt&&(t.YNc(0,qn,2,2,"ng-template",null,0,t.W1O),t.YNc(2,di,2,2,"ng-template",null,1,t.W1O),t.YNc(4,ei,2,5,"ng-template",null,2,t.W1O),t.YNc(6,po,0,0,"ng-template",3,4,t.W1O),t.YNc(8,gn,10,8,"ng-container",5)),2&Nt){const ln=t.MAs(7);t.xp6(6),t.Q6J("ngTemplateOutlet",Kt.c.__render)("ngTemplateOutletContext",t.kEZ(4,Ln,Kt.i,Kt.index,Kt.c)),t.xp6(2),t.Q6J("ngIf",!Kt.c.__render)("ngIfElse",ln)}},dependencies:[n.mk,n.sg,n.O5,n.tP,n.RF,n.n9,n.ED,A.JJ,A.On,Ae.T,Mt.JW,$.Ls,je.x7,W.Ie,ot.g,ze.wO,ze.u9,ze.YV,S.cm,S.Ws,S.RR,V.Of,mt.j,Y.SY,we.U],encapsulation:2,changeDetection:0})}return St})()},67594:(nt,I,o)=>{"use strict";o.d(I,{M:()=>e});const e={pi:1,ps:10,size:"default",responsive:!0,responsiveHideHeaderFooter:!1,req:{type:"page",method:"GET",allInBody:!1,lazyLoad:!1,ignoreParamNull:!1,reName:{pi:"pi",ps:"ps",skip:"skip",limit:"limit"}},res:{reName:{list:["list"],total:["total"]}},page:{front:!0,zeroIndexed:!1,position:"bottom",placement:"right",show:!0,showSize:!1,pageSizes:[10,20,30,40,50],showQuickJumper:!1,total:!0,toTop:!0,toTopOffset:100,itemRender:null,simple:!1},modal:{paramsName:"record",size:"lg",exact:!0},drawer:{paramsName:"record",size:"md",footer:!0,footerHeight:55},pop:{title:"\u786e\u8ba4\u5220\u9664\u5417\uff1f",trigger:"click",placement:"top"},btnIcon:{theme:"outline",spin:!1},noIndex:1,expandRowByClick:!1,expandAccordion:!1,widthMode:{type:"default",strictBehavior:"truncate"},virtualItemSize:54,virtualMaxBufferPx:200,virtualMinBufferPx:100,iifBehavior:"hide",loadingDelay:0,safeType:"safeHtml",date:{format:"yyyy-MM-dd HH:mm"},yn:{truth:!0,yes:"\u662f",mode:"icon"},maxMultipleButton:{text:"\u66f4\u591a",count:2}}},66642:(nt,I,o)=>{"use strict";o.d(I,{U:()=>h,v:()=>M});var e=o(97582),n=o(74648),t=o(65879),i=o(78967),l=o(96814),C=o(8324);function E(v,g){if(1&v&&(t.ynx(0),t._uU(1),t.BQk()),2&v){const d=t.oxw(2);t.xp6(1),t.Oqu(d.title)}}function u(v,g){if(1&v&&(t.TgZ(0,"sv-title"),t.YNc(1,E,2,1,"ng-container",2),t.qZA()),2&v){const d=t.oxw();t.xp6(1),t.Q6J("nzStringTemplateOutlet",d.title)}}const z=["*"];class M{get margin(){return this.bordered?{}:{"margin-left.px":-this.gutter/2,"margin-right.px":-this.gutter/2}}constructor(g){this.noColon=!1,this.bordered=!1,g.attach(this,"sv",{size:"large",gutter:32,layout:"horizontal",col:3,default:!0})}static#e=this.\u0275fac=function(d){return new(d||M)(t.Y36(i.Ri))};static#t=this.\u0275cmp=t.Xpm({type:M,selectors:[["sv-container"],["","sv-container",""]],hostVars:14,hostBindings:function(d,p){2&d&&t.ekj("sv__container",!0)("sv__horizontal","horizontal"===p.layout)("sv__vertical","vertical"===p.layout)("sv__small","small"===p.size)("sv__large","large"===p.size)("sv__bordered",p.bordered)("clearfix",!0)},inputs:{colInCon:["sv-container","colInCon"],title:"title",size:"size",gutter:"gutter",layout:"layout",labelWidth:"labelWidth",col:"col",default:"default",noColon:"noColon",bordered:"bordered"},exportAs:["svContainer"],ngContentSelectors:z,decls:3,vars:2,consts:[[1,"ant-row",3,"ngStyle"],[4,"ngIf"],[4,"nzStringTemplateOutlet"]],template:function(d,p){1&d&&(t.F$t(),t.TgZ(0,"div",0),t.YNc(1,u,2,1,"sv-title",1),t.Hsn(2),t.qZA()),2&d&&(t.Q6J("ngStyle",p.margin),t.xp6(1),t.Q6J("ngIf",p.title))},dependencies:function(){return[l.O5,l.PC,C.f,h]},encapsulation:2,changeDetection:0})}(0,e.gn)([(0,n.Rn)(null)],M.prototype,"colInCon",void 0),(0,e.gn)([(0,n.Rn)()],M.prototype,"gutter",void 0),(0,e.gn)([(0,n.Rn)()],M.prototype,"labelWidth",void 0),(0,e.gn)([(0,n.Rn)()],M.prototype,"col",void 0),(0,e.gn)([(0,n.yF)()],M.prototype,"default",void 0),(0,e.gn)([(0,n.yF)()],M.prototype,"noColon",void 0),(0,e.gn)([(0,n.yF)()],M.prototype,"bordered",void 0);let h=(()=>{class v{constructor(d,p,f){if(this.el=d,this.parent=p,this.ren=f,null==p)throw new Error("[sv-title] must include 'sv-container' component")}setClass(){const d=this.parent.gutter,p=this.el.nativeElement;this.ren.setStyle(p,"padding-left",d/2+"px"),this.ren.setStyle(p,"padding-right",d/2+"px")}ngOnInit(){this.setClass()}static#e=this.\u0275fac=function(p){return new(p||v)(t.Y36(t.SBq),t.Y36(M,9),t.Y36(t.Qsj))};static#t=this.\u0275cmp=t.Xpm({type:v,selectors:[["sv-title"],["","sv-title",""]],hostVars:2,hostBindings:function(p,f){2&p&&t.ekj("sv__title",!0)},exportAs:["svTitle"],ngContentSelectors:z,decls:1,vars:0,template:function(p,f){1&p&&(t.F$t(),t.Hsn(0))},encapsulation:2,changeDetection:0})}return v})()},42336:(nt,I,o)=>{"use strict";o.d(I,{Y:()=>E});var e=o(65879),n=o(96814),t=o(96109);function i(u,z){if(1&u&&e._UZ(0,"em",3),2&u){const M=e.oxw();e.Q6J("innerHTML",M.prefix,e.oJD)}}function l(u,z){if(1&u&&e._UZ(0,"em",4),2&u){const M=e.oxw();e.Q6J("innerHTML",M.unit,e.oJD)}}const C=["*"];let E=(()=>{class u{constructor(){this.size="default"}static#e=this.\u0275fac=function(h){return new(h||u)};static#t=this.\u0275cmp=e.Xpm({type:u,selectors:[["sv-value"],["","sv-value",""]],hostVars:6,hostBindings:function(h,v){2&h&&e.ekj("sv__value",!0)("sv__value-small","small"===v.size)("sv__value-large","large"===v.size)},inputs:{prefix:"prefix",unit:"unit",tooltip:"tooltip",size:"size"},exportAs:["svValue"],ngContentSelectors:C,decls:4,vars:3,consts:[["class","sv__value-prefix",3,"innerHTML",4,"ngIf"],["nz-tooltip","",1,"sv__value-text",3,"nzTooltipTitle"],["class","sv__value-unit",3,"innerHTML",4,"ngIf"],[1,"sv__value-prefix",3,"innerHTML"],[1,"sv__value-unit",3,"innerHTML"]],template:function(h,v){1&h&&(e.F$t(),e.YNc(0,i,1,1,"em",0),e.TgZ(1,"span",1),e.Hsn(2),e.qZA(),e.YNc(3,l,1,1,"em",2)),2&h&&(e.Q6J("ngIf",v.prefix),e.xp6(1),e.Q6J("nzTooltipTitle",v.tooltip),e.xp6(2),e.Q6J("ngIf",v.unit))},dependencies:[n.O5,t.SY],encapsulation:2,changeDetection:0})}return u})()},36411:(nt,I,o)=>{"use strict";o.d(I,{s:()=>P});var e=o(97582),n=o(20325),t=o(74648),i=o(65879),l=o(66642),C=o(980),E=o(96814),u=o(17131),z=o(96109),M=o(90551),h=o(8324);const v=["conEl"];function g(S,A){if(1&S&&(i.ynx(0),i._uU(1),i.BQk()),2&S){const k=i.oxw(2);i.xp6(1),i.Oqu(k.label)}}function d(S,A){if(1&S&&(i.ynx(0),i._uU(1),i.BQk()),2&S){const k=i.oxw(3);i.xp6(1),i.Oqu(k.optional)}}function p(S,A){if(1&S&&i._UZ(0,"i",11),2&S){const k=i.oxw(3);i.Q6J("nzTooltipTitle",k.optionalHelp)("nzTooltipColor",k.optionalHelpColor)}}function f(S,A){if(1&S&&(i.TgZ(0,"span",9),i.YNc(1,d,2,1,"ng-container",7),i.YNc(2,p,1,2,"i",10),i.qZA()),2&S){const k=i.oxw(2);i.ekj("sv__label-optional-no-text",!k.optional),i.xp6(1),i.Q6J("nzStringTemplateOutlet",k.optional),i.xp6(1),i.Q6J("ngIf",k.optionalHelp)}}function y(S,A){if(1&S&&(i.TgZ(0,"div",5)(1,"span",6),i.YNc(2,g,2,1,"ng-container",7),i.qZA(),i.YNc(3,f,3,4,"span",8),i.qZA()),2&S){const k=i.oxw();i.Udp("width",k.labelWidth,"px"),i.ekj("sv__label-empty",!k.label)("sv__label-width",null!=k.labelWidth)("sv__no-colon",k._noColon),i.xp6(2),i.Q6J("nzStringTemplateOutlet",k.label),i.xp6(1),i.Q6J("ngIf",k.optional||k.optionalHelp)}}function T(S,A){if(1&S&&(i.TgZ(0,"span",13),i._uU(1),i.qZA()),2&S){const k=i.oxw(2);i.xp6(1),i.Oqu(k.unit)}}function x(S,A){if(1&S&&(i.ynx(0),i.YNc(1,T,2,1,"span",12),i.BQk()),2&S){const k=i.oxw();i.xp6(1),i.Q6J("nzStringTemplateOutlet",k.unit)}}const D=["*"],_="sv";class P{get paddingValue(){return this.parent.bordered?null:this.parent.gutter/2}get labelWidth(){const{labelWidth:A,layout:k}=this.parent;return"horizontal"===k?A:null}constructor(A,k,R,$){if(this.el=A,this.parent=k,this.rep=R,this.ren=$,this.clsMap=[],this._noColon=!1,this.hideLabel=!1,null==k)throw new Error("[sv] must include 'sv-container' component")}setClass(){const{ren:A,col:k,clsMap:R,type:$,rep:W,noColon:ze,parent:Y}=this,G=this.el.nativeElement;this._noColon=!!Y.bordered||(ze??Y.noColon),R.forEach(K=>A.removeClass(G,K)),R.length=0;const V=Y.colInCon||Y.col;R.push(...W.genCls(k??V,V)),R.push(`${_}__item`),this.parent.labelWidth&&R.push(`${_}__item-fixed`),$&&R.push(`${_}__type-${$}`),R.forEach(K=>A.addClass(G,K))}ngAfterViewInit(){this.setClass(),this.checkContent()}ngOnChanges(){this.setClass()}checkContent(){const{conEl:A}=this;if(!(this.default??this.parent.default))return;const R=A.nativeElement,$="sv__default";R.classList.contains($)&&R.classList.remove($),(0,n.x)(R)&&R.classList.add($)}static#e=this.\u0275fac=function(k){return new(k||P)(i.Y36(i.SBq),i.Y36(l.v,9),i.Y36(C.kz),i.Y36(i.Qsj))};static#t=this.\u0275cmp=i.Xpm({type:P,selectors:[["sv"],["","sv",""]],viewQuery:function(k,R){if(1&k&&i.Gf(v,5),2&k){let $;i.iGM($=i.CRH())&&(R.conEl=$.first)}},hostVars:4,hostBindings:function(k,R){2&k&&i.Udp("padding-left",R.paddingValue,"px")("padding-right",R.paddingValue,"px")},inputs:{optional:"optional",optionalHelp:"optionalHelp",optionalHelpColor:"optionalHelpColor",label:"label",unit:"unit",col:"col",default:"default",type:"type",noColon:"noColon",hideLabel:"hideLabel"},exportAs:["sv"],features:[i.TTD],ngContentSelectors:D,decls:6,vars:2,consts:[["class","sv__label",3,"sv__label-empty","sv__label-width","sv__no-colon","width",4,"ngIf"],[1,"sv__detail"],[3,"cdkObserveContent"],["conEl",""],[4,"ngIf"],[1,"sv__label"],[1,"sv__label-text"],[4,"nzStringTemplateOutlet"],["class","sv__label-optional",3,"sv__label-optional-no-text",4,"ngIf"],[1,"sv__label-optional"],["nz-tooltip","","nz-icon","","nzType","question-circle",3,"nzTooltipTitle","nzTooltipColor",4,"ngIf"],["nz-tooltip","","nz-icon","","nzType","question-circle",3,"nzTooltipTitle","nzTooltipColor"],["class","sv__unit",4,"nzStringTemplateOutlet"],[1,"sv__unit"]],template:function(k,R){1&k&&(i.F$t(),i.YNc(0,y,4,10,"div",0),i.TgZ(1,"div",1)(2,"span",2,3),i.NdJ("cdkObserveContent",function(){return R.checkContent()}),i.Hsn(4),i.qZA(),i.YNc(5,x,2,1,"ng-container",4),i.qZA()),2&k&&(i.Q6J("ngIf",!R.hideLabel),i.xp6(5),i.Q6J("ngIf",!!R.unit))},dependencies:[E.O5,u.wD,z.SY,M.Ls,h.f],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,t.Rn)(null)],P.prototype,"col",void 0),(0,e.gn)([(0,t.yF)(null)],P.prototype,"default",void 0),(0,e.gn)([(0,t.yF)(null)],P.prototype,"noColon",void 0),(0,e.gn)([(0,t.yF)()],P.prototype,"hideLabel",void 0)},615:(nt,I,o)=>{"use strict";o.d(I,{P:()=>h});var e=o(97582),n=o(65879),t=o(71993),i=o(74648),l=o(980),C=o(49388),E=o(96814),u=o(90551);function z(v,g){if(1&v){const d=n.EpF();n.TgZ(0,"a",1),n.NdJ("click",function(){n.CHM(d);const f=n.oxw();return n.KtG(f.trigger())}),n._uU(1),n._UZ(2,"i",2),n.qZA()}if(2&v){const d=n.oxw();n.xp6(1),n.hij(" ",d.expand?d.locale.collapse:d.locale.expand," "),n.xp6(1),n.Udp("transform",d.expand?"rotate(-180deg)":null)}}const M=["*"];class h{constructor(g,d,p){this.i18n=g,this.directionality=d,this.cdr=p,this.destroy$=(0,n.f3M)(n.ktI),this.locale={},this.expand=!1,this.dir="ltr",this.expandable=!0,this.change=new n.vpe}ngOnInit(){this.dir=this.directionality.value,this.directionality.change?.pipe((0,t.sL)(this.destroy$)).subscribe(g=>{this.dir=g}),this.i18n.change.pipe((0,t.sL)(this.destroy$)).subscribe(()=>{this.locale=this.i18n.getData("tagSelect"),this.cdr.detectChanges()})}trigger(){this.expand=!this.expand,this.change.emit(this.expand)}static#e=this.\u0275fac=function(d){return new(d||h)(n.Y36(l.s7),n.Y36(C.Is,8),n.Y36(n.sBO))};static#t=this.\u0275cmp=n.Xpm({type:h,selectors:[["tag-select"]],hostVars:10,hostBindings:function(d,p){2&d&&n.ekj("tag-select",!0)("tag-select-rtl","rtl"===p.dir)("tag-select-rtl__has-expand","rtl"===p.dir&&p.expandable)("tag-select__has-expand",p.expandable)("tag-select__expanded",p.expand)},inputs:{expandable:"expandable"},outputs:{change:"change"},exportAs:["tagSelect"],ngContentSelectors:M,decls:2,vars:1,consts:[["class","ant-tag ant-tag-checkable tag-select__trigger",3,"click",4,"ngIf"],[1,"ant-tag","ant-tag-checkable","tag-select__trigger",3,"click"],["nz-icon","","nzType","down"]],template:function(d,p){1&d&&(n.F$t(),n.Hsn(0),n.YNc(1,z,3,3,"a",0)),2&d&&(n.xp6(1),n.Q6J("ngIf",p.expandable))},dependencies:[E.O5,u.Ls],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,i.yF)()],h.prototype,"expandable",void 0)},76020:(nt,I,o)=>{"use strict";o.d(I,{be:()=>z});var e=o(49671),n=o(97582),i=o(74648),l=o(65879),C=o(69862),E=o(64115),u=o(78967);class z{constructor(d,p,f,y){this.http=d,this.lazy=p,this.ngZone=y,this.cog=f.merge("xlsx",{url:"https://cdn.jsdelivr.net/npm/xlsx/dist/xlsx.full.min.js",modules:["https://cdn.jsdelivr.net/npm/xlsx/dist/cpexcel.js"]})}init(){return typeof XLSX<"u"?Promise.resolve([]):this.lazy.load([this.cog.url].concat(this.cog.modules))}read(d){const{read:p,utils:{sheet_to_json:f}}=XLSX,y={},T=new Uint8Array(d);let x="array";if(!function t(g){if(!g)return!1;for(var d=0,p=g.length;d=194&&g[d]<=223){if(g[d+1]>>6==2){d+=2;continue}return!1}if((224===g[d]&&g[d+1]>=160&&g[d+1]<=191||237===g[d]&&g[d+1]>=128&&g[d+1]<=159)&&g[d+2]>>6==2)d+=3;else if((g[d]>=225&&g[d]<=236||g[d]>=238&&g[d]<=239)&&g[d+1]>>6==2&&g[d+2]>>6==2)d+=3;else{if(!(240===g[d]&&g[d+1]>=144&&g[d+1]<=191||g[d]>=241&&g[d]<=243&&g[d+1]>>6==2||244===g[d]&&g[d+1]>=128&&g[d+1]<=143)||g[d+2]>>6!=2||g[d+3]>>6!=2)return!1;d+=4}}return!0}(T))try{d=cptable.utils.decode(936,T),x="string"}catch{}const D=p(d,{type:x});return D.SheetNames.forEach(_=>{y[_]=f(D.Sheets[_],{header:1})}),y}import(d){return new Promise((p,f)=>{const y=T=>this.ngZone.run(()=>p(this.read(T)));this.init().then(()=>{if("string"==typeof d)return void this.http.request("GET",d,{responseType:"arraybuffer"}).subscribe({next:x=>y(new Uint8Array(x)),error:x=>f(x)});const T=new FileReader;T.onload=x=>y(x.target.result),T.onerror=x=>f(x),T.readAsArrayBuffer(d)}).catch(()=>f("Unable to load xlsx.js"))})}export(d){var p=this;return(0,e.Z)(function*(){return new Promise((f,y)=>{p.init().then(()=>{d={format:"xlsx",...d};const{writeFile:T,utils:{book_new:x,aoa_to_sheet:D,book_append_sheet:_}}=XLSX,P=x();Array.isArray(d.sheets)?d.sheets.forEach((A,k)=>{const R=D(A.data);_(P,R,A.name||`Sheet${k+1}`)}):(P.SheetNames=Object.keys(d.sheets),P.Sheets=d.sheets),d.callback&&d.callback(P);const S=d.filename||`export.${d.format}`;T(P,S,{bookType:d.format,bookSST:!1,type:"array",...d.opts}),f({filename:S,wb:P})}).catch(T=>y(T))})})()}numberToSchema(d){const p="A".charCodeAt(0);let f="";do{--d,f=String.fromCharCode(p+d%26)+f,d=d/26>>0}while(d>0);return f}static#e=this.\u0275fac=function(p){return new(p||z)(l.LFG(C.eN),l.LFG(E.Df),l.LFG(u.Ri),l.LFG(l.R0b))};static#t=this.\u0275prov=l.Yz7({token:z,factory:z.\u0275fac,providedIn:"root"})}(0,n.gn)([(0,i.EA)()],z.prototype,"read",null),(0,n.gn)([(0,i.EA)()],z.prototype,"export",null)},27929:(nt,I,o)=>{"use strict";o.d(I,{_8:()=>e._,vy:()=>C.v});var e=o(18481),C=(o(76e3),o(55485),o(55526),o(92474),o(81850))},92474:(nt,I,o)=>{"use strict";o.d(I,{NA:()=>u});var e=o(65592),n=o(22096),t=o(37398),i=o(99397),l=o(65879),C=o(18481),E=o(52787);let u=(()=>{class v{constructor(d,p,f){this.srv=d,this.router=p,this.injector=f}process(d){let p=(d={guard:null,guard_url:this.srv.guard_url,...d}).guard;return"function"==typeof p&&(p=p(this.srv,this.injector)),(p&&p instanceof e.y?p:(0,n.of)(p??null)).pipe((0,t.U)(f=>this.srv.can(f)),(0,i.b)(f=>{f||this.router.navigateByUrl(d.guard_url)}))}static#e=this.\u0275fac=function(p){return new(p||v)(l.LFG(C._),l.LFG(E.F0),l.LFG(l.zs3))};static#t=this.\u0275prov=l.Yz7({token:v,factory:v.\u0275fac})}return v})()},76e3:(nt,I,o)=>{"use strict";o.d(I,{C:()=>i});var e=o(32181),n=o(65879),t=o(18481);let i=(()=>{class l{constructor(E,u,z){this.srv=u,this._viewContainer=z,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._except=!1,this._change$=this.srv.change.pipe((0,e.h)(M=>null!=M)).subscribe(()=>this._updateView()),this._thenTemplateRef=E}set aclIf(E){this._value=E,this._updateView()}set aclIfThen(E){this._thenTemplateRef=E,this._thenViewRef=null,this._updateView()}set aclIfElse(E){this._elseTemplateRef=E,this._elseViewRef=null,this._updateView()}set except(E){this._except=null!=E&&"false"!=`${E}`}get except(){return this._except}_updateView(){const E=this.srv.can(this._value);E&&!this.except||!E&&this.except?this._thenViewRef||(this._viewContainer.clear(),this._elseViewRef=null,this._thenTemplateRef&&(this._thenViewRef=this._viewContainer.createEmbeddedView(this._thenTemplateRef))):this._elseViewRef||(this._viewContainer.clear(),this._thenViewRef=null,this._elseTemplateRef&&(this._elseViewRef=this._viewContainer.createEmbeddedView(this._elseTemplateRef)))}ngOnDestroy(){this._change$.unsubscribe()}static#e=this.\u0275fac=function(u){return new(u||l)(n.Y36(n.Rgc),n.Y36(t._),n.Y36(n.s_b))};static#t=this.\u0275dir=n.lG2({type:l,selectors:[["","aclIf",""]],inputs:{aclIf:"aclIf",aclIfThen:"aclIfThen",aclIfElse:"aclIfElse",except:"except"},exportAs:["aclIf"]})}return l})()},55526:(nt,I,o)=>{"use strict";o.d(I,{R:()=>e});const e={guard_url:"/403"}},55485:(nt,I,o)=>{"use strict";o.d(I,{w:()=>i});var e=o(32181),n=o(65879),t=o(18481);let i=(()=>{class l{set acl(E){this.set(E)}set ability(E){this.set(this.srv.parseAbility(E))}set(E){this._value=E;const u="acl__hide",z=this.el.nativeElement;this.srv.can(this._value)?this.renderer.removeClass(z,u):this.renderer.addClass(z,u)}constructor(E,u,z){this.el=E,this.renderer=u,this.srv=z,this.change$=this.srv.change.pipe((0,e.h)(M=>null!=M)).subscribe(()=>this.set(this._value))}ngOnDestroy(){this.change$.unsubscribe()}static#e=this.\u0275fac=function(u){return new(u||l)(n.Y36(n.SBq),n.Y36(n.Qsj),n.Y36(t._))};static#t=this.\u0275dir=n.lG2({type:l,selectors:[["","acl",""]],inputs:{acl:"acl",ability:["acl-ability","ability"]},exportAs:["acl"]})}return l})()},81850:(nt,I,o)=>{"use strict";o.d(I,{v:()=>u});var e=o(96814),n=o(92474),l=(o(76e3),o(55485),o(18481)),C=o(65879);let u=(()=>{class z{static forRoot(){return{ngModule:z,providers:[l._,n.NA]}}static#e=this.\u0275fac=function(v){return new(v||z)};static#t=this.\u0275mod=C.oAB({type:z});static#n=this.\u0275inj=C.cJS({imports:[e.ez]})}return z})()},18481:(nt,I,o)=>{"use strict";o.d(I,{_:()=>l});var e=o(65619),n=o(55526),t=o(65879),i=o(78967);let l=(()=>{class C{get change(){return this.aclChange.asObservable()}get data(){return{full:this.full,roles:this.roles,abilities:this.abilities}}get guard_url(){return this.options.guard_url}constructor(u){this.roles=[],this.abilities=[],this.full=!1,this.aclChange=new e.X(null),this.options=u.merge("acl",n.R)}parseACLType(u){let z;return z="number"==typeof u?{ability:[u]}:Array.isArray(u)&&u.length>0&&"number"==typeof u[0]?{ability:u}:"object"!=typeof u||Array.isArray(u)?Array.isArray(u)?{role:u}:{role:null==u?[]:[u]}:{...u},{except:!1,...z}}set(u){this.full=!1,this.abilities=[],this.roles=[],this.add(u),this.aclChange.next(u)}setFull(u){this.full=u,this.aclChange.next(u)}setAbility(u){this.set({ability:u})}setRole(u){this.set({role:u})}add(u){u.role&&u.role.length>0&&this.roles.push(...u.role),u.ability&&u.ability.length>0&&this.abilities.push(...u.ability)}attachRole(u){for(const z of u)this.roles.includes(z)||this.roles.push(z);this.aclChange.next(this.data)}attachAbility(u){for(const z of u)this.abilities.includes(z)||this.abilities.push(z);this.aclChange.next(this.data)}removeRole(u){for(const z of u){const M=this.roles.indexOf(z);-1!==M&&this.roles.splice(M,1)}this.aclChange.next(this.data)}removeAbility(u){for(const z of u){const M=this.abilities.indexOf(z);-1!==M&&this.abilities.splice(M,1)}this.aclChange.next(this.data)}can(u){const{preCan:z}=this.options;z&&(u=z(u));const M=this.parseACLType(u);let h=!1;return!0!==this.full&&u?(M.role&&M.role.length>0&&(h="allOf"===M.mode?M.role.every(v=>this.roles.includes(v)):M.role.some(v=>this.roles.includes(v))),M.ability&&M.ability.length>0&&(h="allOf"===M.mode?M.ability.every(v=>this.abilities.includes(v)):M.ability.some(v=>this.abilities.includes(v)))):h=!0,!0===M.except?!h:h}parseAbility(u){return("number"==typeof u||"string"==typeof u||Array.isArray(u))&&(u={ability:Array.isArray(u)?u:[u]}),delete u.role,u}canAbility(u){return this.can(this.parseAbility(u))}static#e=this.\u0275fac=function(z){return new(z||C)(t.LFG(i.Ri))};static#t=this.\u0275prov=t.Yz7({token:C,factory:C.\u0275fac})}return C})()},92724:(nt,I,o)=>{"use strict";o.d(I,{Q:()=>d,C:()=>p});var e=o(65592),n=o(99397),t=o(37398),i=o(22096),l=o(65619),C=o(27163),E=o(64115),u=o(62831),z=o(65879);const M=new z.OlP("DC_STORE_STORAGE_TOKEN",{providedIn:"root",factory:()=>new h((0,z.f3M)(u.t4))});class h{constructor(y){this.platform=y}get(y){return this.platform.isBrowser&&JSON.parse(localStorage.getItem(y)||"null")||null}set(y,T){return this.platform.isBrowser&&localStorage.setItem(y,JSON.stringify(T)),!0}remove(y){this.platform.isBrowser&&localStorage.removeItem(y)}}var v=o(78967),g=o(69862);let d=(()=>{class f{constructor(T,x,D,_){this.store=x,this.http=D,this.platform=_,this.memory=new Map,this.notifyBuffer=new Map,this.meta=new Set,this.freqTick=3e3,this.cog=T.merge("cache",{mode:"promise",reName:"",prefix:"",meta_key:"__cache_meta"}),_.isBrowser&&(this.loadMeta(),this.startExpireNotify())}pushMeta(T){this.meta.has(T)||(this.meta.add(T),this.saveMeta())}removeMeta(T){this.meta.has(T)&&(this.meta.delete(T),this.saveMeta())}loadMeta(){const T=this.store.get(this.cog.meta_key);T&&T.v&&T.v.forEach(x=>this.meta.add(x))}saveMeta(){const T=[];this.meta.forEach(x=>T.push(x)),this.store.set(this.cog.meta_key,{v:T,e:0})}getMeta(){return this.meta}set(T,x,D={}){if(!this.platform.isBrowser)return;let _=0;const{type:P,expire:S}=this.cog;(D={type:P,expire:S,...D}).expire&&(_=(0,C.Z)(new Date,D.expire).valueOf());const A=!1!==D.emitNotify;if(x instanceof e.y)return x.pipe((0,n.b)(k=>{this.save(D.type,T,{v:k,e:_},A)}));this.save(D.type,T,{v:x,e:_},A)}save(T,x,D,_=!0){"m"===T?this.memory.set(x,D):(this.store.set(this.cog.prefix+x,D),this.pushMeta(x)),_&&this.runNotify(x,"set")}get(T,x={}){if(!this.platform.isBrowser)return null;const D="none"!==x.mode&&"promise"===this.cog.mode,_=this.memory.has(T)?this.memory.get(T):this.store.get(this.cog.prefix+T);return!_||_.e&&_.e>0&&_.e<(new Date).valueOf()?D?(this.cog.request?this.cog.request(T):this.http.get(T)).pipe((0,t.U)(P=>(0,E.In)(P,this.cog.reName,P)),(0,n.b)(P=>this.set(T,P,{type:x.type,expire:x.expire,emitNotify:x.emitNotify}))):null:D?(0,i.of)(_.v):_.v}getNone(T){return this.get(T,{mode:"none"})}tryGet(T,x,D={}){if(!this.platform.isBrowser)return null;const _=this.getNone(T);return null===_?x instanceof e.y?this.set(T,x,D):(this.set(T,x,D),x):(0,i.of)(_)}has(T){return this.memory.has(T)||this.meta.has(T)}_remove(T,x){x&&this.runNotify(T,"remove"),this.memory.has(T)?this.memory.delete(T):(this.store.remove(this.cog.prefix+T),this.removeMeta(T))}remove(T){this.platform.isBrowser&&this._remove(T,!0)}clear(){this.platform.isBrowser&&(this.notifyBuffer.forEach((T,x)=>this.runNotify(x,"remove")),this.memory.clear(),this.meta.forEach(T=>this.store.remove(this.cog.prefix+T)))}set freq(T){this.freqTick=Math.max(20,T),this.abortExpireNotify(),this.startExpireNotify()}startExpireNotify(){this.checkExpireNotify(),this.runExpireNotify()}runExpireNotify(){this.freqTime=setTimeout(()=>{this.checkExpireNotify(),this.runExpireNotify()},this.freqTick)}checkExpireNotify(){const T=[];this.notifyBuffer.forEach((x,D)=>{this.has(D)&&null===this.getNone(D)&&T.push(D)}),T.forEach(x=>{this.runNotify(x,"expire"),this._remove(x,!1)})}abortExpireNotify(){clearTimeout(this.freqTime)}runNotify(T,x){this.notifyBuffer.has(T)&&this.notifyBuffer.get(T).next({type:x,value:this.getNone(T)})}notify(T){if(!this.notifyBuffer.has(T)){const x=new l.X(this.getNone(T));this.notifyBuffer.set(T,x)}return this.notifyBuffer.get(T).asObservable()}cancelNotify(T){this.notifyBuffer.has(T)&&(this.notifyBuffer.get(T).unsubscribe(),this.notifyBuffer.delete(T))}hasNotify(T){return this.notifyBuffer.has(T)}clearNotify(){this.notifyBuffer.forEach(T=>T.unsubscribe()),this.notifyBuffer.clear()}ngOnDestroy(){this.memory.clear(),this.abortExpireNotify(),this.clearNotify()}static#e=this.\u0275fac=function(x){return new(x||f)(z.LFG(v.Ri),z.LFG(M),z.LFG(g.eN),z.LFG(u.t4))};static#t=this.\u0275prov=z.Yz7({token:f,factory:f.\u0275fac,providedIn:"root"})}return f})(),p=(()=>{class f{static#e=this.\u0275fac=function(x){return new(x||f)};static#t=this.\u0275mod=z.oAB({type:f});static#n=this.\u0275inj=z.cJS({})}return f})()},69694:(nt,I,o)=>{"use strict";o.d(I,{g:()=>p});var e=o(97582),n=o(65879),t=o(92438),i=o(59773),l=o(32181),C=o(83620),E=o(55611),u=o(74648),z=o(96814),M=o(8324),h=o(24139);function v(f,y){if(1&f&&(n.ynx(0),n.TgZ(1,"h4",3),n._uU(2),n.qZA(),n.BQk()),2&f){const T=n.oxw();n.xp6(2),n.Oqu(T.title)}}function g(f,y){1&f&&n._UZ(0,"nz-skeleton")}class p extends E.$4{constructor(){super(...arguments),this.color="rgba(24, 144, 255, 0.85)",this.height=0,this.padding="auto",this.data=[],this.autoLabel=!0,this.interaction="none",this.clickItem=new n.vpe}getHeight(){return this.title?this.height-41:this.height}install(){const{node:y,padding:T,interaction:x,theme:D}=this,P=this._chart=new this.winG2.Chart({container:y.nativeElement,autoFit:!0,height:this.getHeight(),padding:T,theme:D});this.updatelabel(),P.axis("y",{title:null,line:null,tickLine:null}),P.scale({x:{type:"cat"},y:{min:0}}),P.tooltip({showTitle:!1}),"none"!==x&&P.interaction(x),P.legend(!1),P.interval().position("x*y").color("x*y",(S,A)=>{const k=this.data.find(R=>R.x===S&&R.y===A);return k&&k.color?k.color:this.color}).tooltip("x*y",(S,A)=>({name:S,value:A})),P.on("interval:click",S=>{this.ngZone.run(()=>this.clickItem.emit({item:S.data?.data,ev:S}))}),this.ready.next(P),this.changeData(),P.render(),this.installResizeEvent()}changeData(){const{_chart:y,data:T}=this;!y||!Array.isArray(T)||T.length<=0||y.changeData(T)}updatelabel(){const{node:y,data:T,_chart:x}=this;x.axis("x",y.nativeElement.clientWidth>30*T.length).render()}installResizeEvent(){!this.autoLabel||this.resize$||(this.resize$=(0,t.R)(window,"resize").pipe((0,i.R)(this.destroy$),(0,l.h)(()=>!!this._chart),(0,C.b)(200)).subscribe(()=>this.ngZone.runOutsideAngular(()=>this.updatelabel())))}static#e=this.\u0275fac=function(){let y;return function(x){return(y||(y=n.n5z(p)))(x||p)}}();static#t=this.\u0275cmp=n.Xpm({type:p,selectors:[["g2-bar"]],hostVars:2,hostBindings:function(T,x){2&T&&n.Udp("height",x.height,"px")},inputs:{title:"title",color:"color",height:"height",padding:"padding",data:"data",autoLabel:"autoLabel",interaction:"interaction"},outputs:{clickItem:"clickItem"},exportAs:["g2Bar"],features:[n.qOj],decls:4,vars:2,consts:[[4,"nzStringTemplateOutlet"],[4,"ngIf"],["container",""],[2,"margin-bottom","20px"]],template:function(T,x){1&T&&(n.YNc(0,v,3,1,"ng-container",0),n.YNc(1,g,1,0,"nz-skeleton",1),n._UZ(2,"div",null,2)),2&T&&(n.Q6J("nzStringTemplateOutlet",x.title),n.xp6(1),n.Q6J("ngIf",!x.loaded))},dependencies:[z.O5,M.f,h.ng],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,u.Rn)()],p.prototype,"height",void 0),(0,e.gn)([(0,u.yF)()],p.prototype,"autoLabel",void 0)},68636:(nt,I,o)=>{"use strict";o.d(I,{n:()=>D});var e=o(97582),n=o(74648),t=o(65879),i=o(96814),l=o(82962),C=o(77273),E=o(8324);function u(_,P){if(1&_&&(t.ynx(0),t._uU(1),t.BQk()),2&_){const S=t.oxw();t.xp6(1),t.Oqu(S.avatar)}}function z(_,P){if(1&_&&(t.ynx(0),t._uU(1),t.BQk()),2&_){const S=t.oxw(2);t.xp6(1),t.Oqu(S.title)}}function M(_,P){if(1&_&&(t.TgZ(0,"span",13),t.YNc(1,z,2,1,"ng-container",4),t.qZA()),2&_){const S=t.oxw();t.xp6(1),t.Q6J("nzStringTemplateOutlet",S.title)}}function h(_,P){if(1&_&&(t.ynx(0),t._uU(1),t.BQk()),2&_){const S=t.oxw(2);t.xp6(1),t.Oqu(S.action)}}function v(_,P){if(1&_&&(t.TgZ(0,"span",14),t.YNc(1,h,2,1,"ng-container",4),t.qZA()),2&_){const S=t.oxw();t.xp6(1),t.Q6J("nzStringTemplateOutlet",S.action)}}function g(_,P){if(1&_&&t._UZ(0,"p",15),2&_){const S=t.oxw();t.Q6J("innerHTML",S.total,t.oJD)}}function d(_,P){if(1&_&&(t.ynx(0),t._uU(1),t.BQk()),2&_){const S=t.oxw(2);t.xp6(1),t.Oqu(S.footer)}}function p(_,P){if(1&_&&(t.TgZ(0,"div",16),t.YNc(1,d,2,1,"ng-container",4),t.qZA()),2&_){const S=t.oxw();t.xp6(1),t.Q6J("nzStringTemplateOutlet",S.footer)}}const f=function(){return{padding:"20px 24px 8px 24px"}},y=function(_){return{height:_}},T=function(_){return{"g2-card__fixed":_}},x=["*"];class D{set contentHeight(P){this._orgHeight=P,this._height="number"==typeof P?this._height=`${P}px`:P}constructor(P){this.cdr=P,this.bordered=!1,this.total="",this._height="auto",this.loading=!1}ngOnChanges(){this.cdr.detectChanges()}static#e=this.\u0275fac=function(S){return new(S||D)(t.Y36(t.sBO))};static#t=this.\u0275cmp=t.Xpm({type:D,selectors:[["g2-card"]],hostVars:2,hostBindings:function(S,A){2&S&&t.ekj("g2-card",!0)},inputs:{bordered:"bordered",avatar:"avatar",title:"title",action:"action",total:"total",contentHeight:"contentHeight",footer:"footer",loading:"loading"},exportAs:["g2Card"],features:[t.TTD],ngContentSelectors:x,decls:14,vars:15,consts:[[3,"nzBodyStyle","nzBordered"],[3,"nzSpinning"],[1,"g2-card__top"],[1,"g2-card__avatar"],[4,"nzStringTemplateOutlet"],[1,"g2-card__meta-wrap"],[1,"g2-card__meta"],["class","g2-card__meta-title",4,"ngIf"],["class","g2-card__meta-action",4,"ngIf"],["class","g2-card__total",3,"innerHTML",4,"ngIf"],[1,"g2-card__desc",3,"ngStyle"],[3,"ngClass"],["class","g2-card__footer",4,"ngIf"],[1,"g2-card__meta-title"],[1,"g2-card__meta-action"],[1,"g2-card__total",3,"innerHTML"],[1,"g2-card__footer"]],template:function(S,A){1&S&&(t.F$t(),t.TgZ(0,"nz-card",0)(1,"nz-spin",1)(2,"div",2)(3,"div",3),t.YNc(4,u,2,1,"ng-container",4),t.qZA(),t.TgZ(5,"div",5)(6,"div",6),t.YNc(7,M,2,1,"span",7),t.YNc(8,v,2,1,"span",8),t.qZA(),t.YNc(9,g,1,1,"p",9),t.qZA()(),t.TgZ(10,"div",10)(11,"div",11),t.Hsn(12),t.qZA()(),t.YNc(13,p,2,1,"div",12),t.qZA()()),2&S&&(t.Q6J("nzBodyStyle",t.DdM(10,f))("nzBordered",A.bordered),t.xp6(1),t.Q6J("nzSpinning",A.loading),t.xp6(3),t.Q6J("nzStringTemplateOutlet",A.avatar),t.xp6(3),t.Q6J("ngIf",A.title),t.xp6(1),t.Q6J("ngIf",A.action),t.xp6(1),t.Q6J("ngIf",A.total),t.xp6(1),t.Q6J("ngStyle",t.VKq(11,y,A._height)),t.xp6(1),t.Q6J("ngClass",t.VKq(13,T,!!A._orgHeight)),t.xp6(2),t.Q6J("ngIf",A.footer))},dependencies:[i.mk,i.O5,i.PC,l.bd,C.W,E.f],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,n.yF)()],D.prototype,"bordered",void 0),(0,e.gn)([(0,n.yF)()],D.prototype,"loading",void 0)},59951:(nt,I,o)=>{"use strict";o.d(I,{d:()=>d});var e=o(97582),n=o(65879),t=o(71993),i=o(32181),l=o(92438),C=o(83620),E=o(74648),u=o(27890),z=o(62831),M=o(96814),h=o(24139);const v=["container"];function g(p,f){1&p&&n._UZ(0,"nz-skeleton")}class d{set width(f){this._width="number"==typeof f?`${f}px`:`${f}`}set height(f){this._height="number"==typeof f?`${f}px`:`${f}`}set theme(f){this._theme=f,this._chart&&this.install()}set initOpt(f){this._initOpt=f,this._chart&&this.install()}set option(f){this._option=f,this._chart&&this.setOption(f,!0)}get chart(){return this._chart}constructor(f,y,T,x){this.srv=f,this.cdr=y,this.ngZone=T,this.platform=x,this.destroy$=(0,n.f3M)(n.ktI),this._chart=null,this._width="100%",this._height="400px",this.on=[],this.events=new n.vpe,this.loaded=!1,this.srv.notify.pipe((0,t.sL)(),(0,i.h)(()=>!this.loaded)).subscribe(()=>this.load()),this.theme=f.cog.echartsTheme}emit(f,y){this.events.emit({type:f,chart:this.chart,...y})}load(){this.ngZone.run(()=>{this.loaded=!0,this.cdr.detectChanges()}),this.emit("ready"),this.install()}install(){this.destroy();const f=this._chart=window.echarts.init(this.node.nativeElement,this._theme,this._initOpt);return this.emit("init"),this.setOption(this._option),this.on.forEach(y=>{null!=y.query?f.on(y.eventName,y.query,T=>y.handler({event:T,chart:f})):f.on(y.eventName,T=>y.handler({event:T,chart:f}))}),this}destroy(){return this._chart&&(this._chart.dispose(),this.emit("destroy")),this}setOption(f,y=!1,T=!1){return this._chart&&(this._chart.setOption(f,y,T),this.emit("set-option",{option:f})),this}ngOnInit(){this.platform.isBrowser&&(window.echarts?this.load():this.srv.libLoad(),(0,l.R)(window,"resize").pipe((0,t.sL)(this.destroy$),(0,i.h)(()=>!!this._chart),(0,C.b)(200)).subscribe(()=>this._chart.resize()))}ngOnDestroy(){this.on.forEach(f=>this._chart?.off(f.eventName)),this.destroy()}static#e=this.\u0275fac=function(y){return new(y||d)(n.Y36(u.W),n.Y36(n.sBO),n.Y36(n.R0b),n.Y36(z.t4))};static#t=this.\u0275cmp=n.Xpm({type:d,selectors:[["chart-echarts"],["","chart-echarts",""]],viewQuery:function(y,T){if(1&y&&n.Gf(v,7),2&y){let x;n.iGM(x=n.CRH())&&(T.node=x.first)}},hostVars:6,hostBindings:function(y,T){2&y&&n.Udp("display","inline-block")("width",T._width)("height",T._height)},inputs:{width:"width",height:"height",theme:"theme",initOpt:"initOpt",option:"option",on:"on"},outputs:{events:"events"},exportAs:["chartECharts"],decls:3,vars:5,consts:[[4,"ngIf"],["container",""]],template:function(y,T){1&y&&(n.YNc(0,g,1,0,"nz-skeleton",0),n._UZ(1,"div",null,1)),2&y&&(n.Q6J("ngIf",!T.loaded),n.xp6(1),n.Udp("width",T._width)("height",T._height))},dependencies:[M.O5,h.ng],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,E.EA)()],d.prototype,"load",null)},27890:(nt,I,o)=>{"use strict";o.d(I,{W:()=>l});var e=o(78645),n=o(65879),t=o(78967),i=o(64115);let l=(()=>{class C{get cog(){return this._cog}set cog(u){this._cog=this.cogSrv.merge("chart",{theme:"",echartsLib:"https://cdnjs.cloudflare.com/ajax/libs/echarts/5.1.0/echarts.min.js"},u)}constructor(u,z){this.cogSrv=u,this.lazySrv=z,this.loading=!1,this.loaded=!1,this.notify$=new e.x,this.cog={theme:""}}libLoad(){return this.loading?(this.loaded&&this.notify$.next(),this):(this.loading=!0,this.lazySrv.load(this.cog.echartsLib).then(()=>{const u=this.cog.echartsExtensions;return Array.isArray(u)&&u.length>0?this.lazySrv.load(u).then(()=>!0):Promise.resolve(!0)}).then(()=>{this.loaded=!0,this.notify$.next()}),this)}get notify(){return this.notify$.asObservable()}ngOnDestroy(){this.notify$.unsubscribe()}static#e=this.\u0275fac=function(z){return new(z||C)(n.LFG(t.Ri),n.LFG(i.Df))};static#t=this.\u0275prov=n.Yz7({token:C,factory:C.\u0275fac,providedIn:"root"})}return C})()},55611:(nt,I,o)=>{"use strict";o.d(I,{$4:()=>v,Or:()=>g});var e=o(78645),n=o(65879),t=o(78967),i=o(64115);let l=(()=>{class d{get cog(){return this._cog}set cog(f){this._cog=this.cogSrv.merge("chart",{theme:"",libs:["https://gw.alipayobjects.com/os/lib/antv/g2/4.1.46/dist/g2.min.js","https://gw.alipayobjects.com/os/lib/antv/data-set/0.11.8/dist/data-set.js"]},f)}constructor(f,y){this.cogSrv=f,this.lazySrv=y,this.loading=!1,this.loaded=!1,this.notify$=new e.x,this.cog={theme:""}}libLoad(){return this.loading?(this.loaded&&this.notify$.next(),this):(this.loading=!0,this.lazySrv.load(this.cog.libs).then(()=>{this.loaded=!0,this.notify$.next()}),this)}get notify(){return this.notify$.asObservable()}ngOnDestroy(){this.notify$.unsubscribe()}static#e=this.\u0275fac=function(y){return new(y||d)(n.LFG(t.Ri),n.LFG(i.Df))};static#t=this.\u0275prov=n.Yz7({token:d,factory:d.\u0275fac,providedIn:"root"})}return d})();var C=o(97582),E=o(59773),u=o(32181),z=o(74648),M=o(62831);const h=["container"];class v{get chart(){return this._chart}get winG2(){return window.G2}constructor(p,f,y,T,x){this.srv=p,this.el=f,this.ngZone=y,this.platform=T,this.cdr=x,this.repaint=!0,this.destroy$=new e.x,this.loaded=!1,this.delay=0,this.ready=new n.vpe,this.theme=p.cog.theme,this.srv.notify.pipe((0,E.R)(this.destroy$),(0,u.h)(()=>!this.loaded)).subscribe(()=>this.load())}changeData(){}onInit(){}onChanges(p){}load(){this.ngZone.run(()=>{this.loaded=!0,this.cdr.detectChanges()}),setTimeout(()=>this.install(),this.delay)}ngOnInit(){this.platform.isBrowser&&(this.onInit(),this.winG2?this.load():this.srv.libLoad())}ngOnChanges(p){this.onChanges(p),(this.onlyChangeData?this.onlyChangeData(p):1===Object.keys(p).length&&p.data)?this.changeData():!this.chart||!this.repaint||this.ngZone.runOutsideAngular(()=>{this.destroyChart().install()})}destroyChart(){return this._chart&&this._chart.destroy(),this}ngOnDestroy(){this.resize$&&this.resize$.unsubscribe(),this.destroy$.next(),this.destroy$.complete(),this.destroyChart()}static#e=this.\u0275fac=function(f){return new(f||v)(n.Y36(l),n.Y36(n.SBq),n.Y36(n.R0b),n.Y36(M.t4),n.Y36(n.sBO))};static#t=this.\u0275dir=n.lG2({type:v,viewQuery:function(f,y){if(1&f&&n.Gf(h,7),2&f){let T;n.iGM(T=n.CRH())&&(y.node=T.first)}},inputs:{repaint:"repaint",delay:"delay",theme:"theme"},outputs:{ready:"ready"},features:[n.TTD]})}function g(d,p){const f={showTitle:!1,showMarkers:!0,enterable:!0,domStyles:{"g2-tooltip":{padding:"0px"},"g2-tooltip-title":{display:"none"},"g2-tooltip-list-item":{margin:"4px"}},...p};return"mini"===d&&(f.position="top",f.domStyles["g2-tooltip"]={padding:"0px",backgroundColor:"transparent",boxShadow:"none"},f.itemTpl="
    1. {value}
    2. ",f.offset=8),f}(0,C.gn)([(0,z.yF)()],v.prototype,"repaint",void 0),(0,C.gn)([(0,z.Rn)()],v.prototype,"delay",void 0),(0,C.gn)([(0,z.EA)()],v.prototype,"load",null),(0,C.gn)([(0,z.EA)()],v.prototype,"destroyChart",null)},7802:(nt,I,o)=>{"use strict";o.d(I,{A:()=>v});var e=o(97582),n=o(65879),t=o(92438),i=o(59773),l=o(83620),C=o(55611),E=o(74648),u=o(96814),z=o(24139);function M(g,d){1&g&&n._UZ(0,"nz-skeleton")}const h=["*"];class v extends C.$4{constructor(){super(...arguments),this.resizeTime=0,this.render=new n.vpe,this.resize=new n.vpe,this.destroy=new n.vpe}install(){this.el.nativeElement.innerHTML="",this.render.emit(this.el),this.installResizeEvent()}installResizeEvent(){this.resizeTime<=0||(0,t.R)(window,"resize").pipe((0,i.R)(this.destroy$),(0,l.b)(Math.min(200,this.resizeTime))).subscribe(()=>this.resize.emit(this.el))}static#e=this.\u0275fac=function(){let d;return function(f){return(d||(d=n.n5z(v)))(f||v)}}();static#t=this.\u0275cmp=n.Xpm({type:v,selectors:[["g2"],["g2-custom"]],hostVars:2,hostBindings:function(p,f){2&p&&n.Udp("height",f.height,"px")},inputs:{height:"height",resizeTime:"resizeTime"},outputs:{render:"render",resize:"resize",destroy:"destroy"},exportAs:["g2Custom"],features:[n.qOj],ngContentSelectors:h,decls:2,vars:1,consts:[[4,"ngIf"]],template:function(p,f){1&p&&(n.F$t(),n.YNc(0,M,1,0,"nz-skeleton",0),n.Hsn(1)),2&p&&n.Q6J("ngIf",!f.loaded)},dependencies:[u.O5,z.ng],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,E.Rn)()],v.prototype,"height",void 0),(0,e.gn)([(0,E.Rn)()],v.prototype,"resizeTime",void 0)},61198:(nt,I,o)=>{"use strict";o.d(I,{j:()=>u});var e=o(97582),n=o(55611),t=o(74648),i=o(65879),l=o(96814),C=o(24139);function E(z,M){1&z&&i._UZ(0,"nz-skeleton")}class u extends n.$4{constructor(){super(...arguments),this.color="#2f9cff",this.padding=[10,10,30,10]}install(){this.winG2.registerShape("point","pointer",{draw(f,y){const T=y.addGroup({}),x=this.parsePoint({x:0,y:0});return T.addShape("line",{attrs:{x1:x.x,y1:x.y,x2:f.x,y2:f.y,stroke:f.color,lineWidth:2.5,lineCap:"round"}}),T.addShape("circle",{attrs:{x:x.x,y:x.y,r:5.75,stroke:f.color,lineWidth:2,fill:"#fff"}}),T}});const{el:M,height:h,padding:v,format:g,theme:d}=this,p=this._chart=new this.winG2.Chart({container:M.nativeElement,autoFit:!0,height:h,padding:v,theme:d});p.legend(!1),p.animate(!1),p.tooltip(!1),p.coordinate("polar",{startAngle:-9/8*Math.PI,endAngle:1/8*Math.PI,radius:.75}),p.scale("value",{min:0,max:100,nice:!0,tickCount:6}),p.axis("1",!1),p.axis("value",{line:null,label:{offset:-14,formatter:g},tickLine:null,grid:null}),p.point().position("value*1").shape("pointer"),this.ready.next(p),this.changeData(),p.render()}changeData(){const{_chart:M,percent:h,color:v,bgColor:g,title:d}=this;if(!M)return;const p=[{name:d,value:h}],f=p[0].value;M.annotation().clear(!0),M.geometries[0].color(v),M.annotation().arc({top:!1,start:[0,.95],end:[100,.95],style:{stroke:g,lineWidth:12,lineDash:null}}),M.annotation().arc({start:[0,.95],end:[p[0].value,.95],style:{stroke:v,lineWidth:12,lineDash:null}}),M.annotation().text({position:["50%","85%"],content:d,style:{fontSize:12,fill:"dark"===this.theme?"rgba(255, 255, 255, 0.43)":"rgba(0, 0, 0, 0.43)",textAlign:"center"}}),M.annotation().text({position:["50%","90%"],content:`${f} %`,style:{fontSize:20,fill:"dark"===this.theme?"rgba(255, 255, 255, 0.85)":"rgba(0, 0, 0, 0.85)",textAlign:"center"},offsetY:15}),M.changeData(p)}static#e=this.\u0275fac=function(){let M;return function(v){return(M||(M=i.n5z(u)))(v||u)}}();static#t=this.\u0275cmp=i.Xpm({type:u,selectors:[["g2-gauge"]],hostVars:2,hostBindings:function(h,v){2&h&&i.ekj("g2-gauge",!0)},inputs:{title:"title",height:"height",color:"color",bgColor:"bgColor",format:"format",percent:"percent",padding:"padding"},exportAs:["g2Gauge"],features:[i.qOj],decls:1,vars:1,consts:[[4,"ngIf"]],template:function(h,v){1&h&&i.YNc(0,E,1,0,"nz-skeleton",0),2&h&&i.Q6J("ngIf",!v.loaded)},dependencies:[l.O5,C.ng],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,t.Rn)()],u.prototype,"height",void 0),(0,e.gn)([(0,t.Rn)()],u.prototype,"percent",void 0)},91289:(nt,I,o)=>{"use strict";o.d(I,{D:()=>l});var e=o(97582),n=o(65879),t=o(55611),i=o(74648);class l extends t.$4{constructor(){super(...arguments),this.color="rgba(24, 144, 255, 0.2)",this.borderColor="#1890FF",this.borderWidth=2,this.height=56,this.fit=!0,this.line=!1,this.animate=!0,this.padding=[8,8,8,8],this.data=[],this.yTooltipSuffix="",this.tooltipType="default",this.clickItem=new n.vpe}install(){const{el:E,fit:u,height:z,padding:M,xAxis:h,yAxis:v,yTooltipSuffix:g,tooltipType:d,line:p,theme:f,animate:y,color:T,borderColor:x,borderWidth:D}=this,_=this._chart=new this.winG2.Chart({container:E.nativeElement,autoFit:u,height:z,padding:M,theme:f});_.animate(y),!h&&!v&&_.axis(!1),_.axis("x",h||!1),_.axis("y",v||!1),_.legend(!1),_.tooltip((0,t.Or)(d)),_.area().position("x*y").color(T).tooltip("x*y",(P,S)=>({name:P,value:S+g})).shape("smooth"),p&&_.line().position("x*y").shape("smooth").color(x).size(D).tooltip(!1),_.on("plot:click",P=>{const S=this._chart.getSnapRecords({x:P.x,y:P.y});this.ngZone.run(()=>this.clickItem.emit({item:S[0]._origin,ev:P}))}),this.ready.next(_),this.changeData(),_.render()}changeData(){const{_chart:E,data:u}=this;!E||!Array.isArray(u)||u.length<=0||E.changeData(u)}static#e=this.\u0275fac=function(){let E;return function(z){return(E||(E=n.n5z(l)))(z||l)}}();static#t=this.\u0275cmp=n.Xpm({type:l,selectors:[["g2-mini-area"]],hostVars:2,hostBindings:function(u,z){2&u&&n.Udp("height",z.height,"px")},inputs:{color:"color",borderColor:"borderColor",borderWidth:"borderWidth",height:"height",fit:"fit",line:"line",animate:"animate",xAxis:"xAxis",yAxis:"yAxis",padding:"padding",data:"data",yTooltipSuffix:"yTooltipSuffix",tooltipType:"tooltipType"},outputs:{clickItem:"clickItem"},exportAs:["g2MiniArea"],features:[n.qOj],decls:0,vars:0,template:function(u,z){},encapsulation:2,changeDetection:0})}(0,e.gn)([(0,i.Rn)()],l.prototype,"borderWidth",void 0),(0,e.gn)([(0,i.Rn)()],l.prototype,"height",void 0),(0,e.gn)([(0,i.yF)()],l.prototype,"fit",void 0),(0,e.gn)([(0,i.yF)()],l.prototype,"line",void 0),(0,e.gn)([(0,i.yF)()],l.prototype,"animate",void 0)},77322:(nt,I,o)=>{"use strict";o.d(I,{N:()=>l});var e=o(97582),n=o(65879),t=o(55611),i=o(74648);class l extends t.$4{constructor(){super(...arguments),this.color="#1890FF",this.height=0,this.borderWidth=5,this.padding=[8,8,8,8],this.data=[],this.yTooltipSuffix="",this.tooltipType="default",this.clickItem=new n.vpe}install(){const{el:E,height:u,padding:z,yTooltipSuffix:M,tooltipType:h,theme:v,color:g,borderWidth:d}=this,p=this._chart=new this.winG2.Chart({container:E.nativeElement,autoFit:!0,height:u,padding:z,theme:v});p.scale({x:{type:"cat"},y:{min:0}}),p.legend(!1),p.axis(!1),p.tooltip((0,t.Or)(h,{showCrosshairs:!1})),p.interval().position("x*y").color("x*y",(f,y)=>{const T=this.data.find(x=>x.x===f&&x.y===y);return T&&T.color?T.color:g}).size(d).tooltip("x*y",(f,y)=>({name:f,value:y+M})),p.on("interval:click",f=>{this.ngZone.run(()=>this.clickItem.emit({item:f.data?.data,ev:f}))}),this.ready.next(p),this.changeData(),p.render()}changeData(){const{_chart:E,data:u}=this;!E||!Array.isArray(u)||u.length<=0||E.changeData(u)}static#e=this.\u0275fac=function(){let E;return function(z){return(E||(E=n.n5z(l)))(z||l)}}();static#t=this.\u0275cmp=n.Xpm({type:l,selectors:[["g2-mini-bar"]],hostVars:2,hostBindings:function(u,z){2&u&&n.Udp("height",z.height,"px")},inputs:{color:"color",height:"height",borderWidth:"borderWidth",padding:"padding",data:"data",yTooltipSuffix:"yTooltipSuffix",tooltipType:"tooltipType"},outputs:{clickItem:"clickItem"},exportAs:["g2MiniBar"],features:[n.qOj],decls:0,vars:0,template:function(u,z){},encapsulation:2,changeDetection:0})}(0,e.gn)([(0,i.Rn)()],l.prototype,"height",void 0),(0,e.gn)([(0,i.Rn)()],l.prototype,"borderWidth",void 0)},9730:(nt,I,o)=>{"use strict";o.d(I,{c:()=>M});var e=o(97582),n=o(74648),t=o(65879),i=o(980),l=o(96814),C=o(96109);const E=function(h){return{"left.%":h}},u=function(h){return{"background-color":h}},z=function(h,v,g){return{"background-color":h,"width.%":v,"height.px":g}};class M{constructor(v,g){this.i18n=v,this.cdr=g,this.color="#1890FF"}fixNum(v){return Math.min(Math.max((0,n.He)(v),0),100)}ngOnChanges(){this.target=this.fixNum(this.target),this.percent=this.fixNum(this.percent),this.cdr.detectChanges()}static#e=this.\u0275fac=function(g){return new(g||M)(t.Y36(i.s7),t.Y36(t.sBO))};static#t=this.\u0275cmp=t.Xpm({type:M,selectors:[["g2-mini-progress"]],hostVars:2,hostBindings:function(g,d){2&g&&t.ekj("g2-mini-progress",!0)},inputs:{color:"color",target:"target",percent:"percent",strokeWidth:"strokeWidth"},exportAs:["g2MiniProgress"],features:[t.TTD],decls:5,vars:15,consts:[["nz-tooltip","",1,"g2-mini-progress__target",3,"nzTooltipTitle","ngStyle"],[1,"g2-mini-progress__target-item",3,"ngStyle"],[1,"g2-mini-progress__wrap"],[1,"g2-mini-progress__value",3,"ngStyle"]],template:function(g,d){1&g&&(t.TgZ(0,"div",0),t._UZ(1,"span",1)(2,"span",1),t.qZA(),t.TgZ(3,"div",2),t._UZ(4,"div",3),t.qZA()),2&g&&(t.Q6J("nzTooltipTitle",d.i18n.getData("miniProgress").target+d.target+"%")("ngStyle",t.VKq(5,E,d.target)),t.xp6(1),t.Q6J("ngStyle",t.VKq(7,u,d.color)),t.xp6(1),t.Q6J("ngStyle",t.VKq(9,u,d.color)),t.xp6(2),t.Q6J("ngStyle",t.kEZ(11,z,d.color,d.percent,d.strokeWidth)))},dependencies:[l.PC,C.SY],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,n.Rn)()],M.prototype,"target",void 0),(0,e.gn)([(0,n.Rn)()],M.prototype,"percent",void 0),(0,e.gn)([(0,n.Rn)()],M.prototype,"strokeWidth",void 0)},84420:(nt,I,o)=>{"use strict";o.d(I,{i:()=>y});var e=o(97582),n=o(74648),t=o(65879),i=o(96814),l=o(90551),C=o(8324);function E(T,x){if(1&T&&(t.ynx(0),t._uU(1),t.BQk()),2&T){const D=t.oxw(2);t.xp6(1),t.Oqu(D.title)}}function u(T,x){if(1&T&&(t.TgZ(0,"div",7),t.YNc(1,E,2,1,"ng-container",4),t.qZA()),2&T){const D=t.oxw();t.xp6(1),t.Q6J("nzStringTemplateOutlet",D.title)}}function z(T,x){if(1&T&&(t.ynx(0),t._uU(1),t.BQk()),2&T){const D=t.oxw(2);t.xp6(1),t.Oqu(D.subTitle)}}function M(T,x){if(1&T&&(t.TgZ(0,"div",8),t.YNc(1,z,2,1,"ng-container",4),t.qZA()),2&T){const D=t.oxw();t.xp6(1),t.Q6J("nzStringTemplateOutlet",D.subTitle)}}function h(T,x){if(1&T&&(t.ynx(0),t._uU(1),t.BQk()),2&T){const D=t.oxw();t.xp6(1),t.Oqu(D.total)}}function v(T,x){if(1&T&&(t.TgZ(0,"em",9),t._uU(1),t.qZA()),2&T){const D=t.oxw();t.xp6(1),t.Oqu(D.suffix)}}function g(T,x){if(1&T&&(t.ynx(0),t._uU(1),t.BQk()),2&T){const D=t.oxw(2);t.xp6(1),t.Oqu(D.subTotal)}}function d(T,x){if(1&T&&t._UZ(0,"i",12),2&T){const D=t.oxw(2);t.MGl("nzType","caret-",D.status,"")}}function p(T,x){if(1&T&&(t.TgZ(0,"span",10),t.YNc(1,g,2,1,"ng-container",4),t.YNc(2,d,1,1,"i",11),t.qZA()),2&T){const D=t.oxw();t.xp6(1),t.Q6J("nzStringTemplateOutlet",D.subTotal),t.xp6(1),t.Q6J("ngIf",D.status)}}const f=function(T){return{"margin-top.px":T}};class y{constructor(){this.theme="light",this.gap=8}static#e=this.\u0275fac=function(D){return new(D||y)};static#t=this.\u0275cmp=t.Xpm({type:y,selectors:[["number-info"]],hostVars:6,hostBindings:function(D,_){2&D&&t.ekj("number-info",!0)("number-info__light","light"===_.theme)("number-info__default","default"===_.theme)},inputs:{title:"title",subTitle:"subTitle",total:"total",subTotal:"subTotal",suffix:"suffix",status:"status",theme:"theme",gap:"gap"},exportAs:["numberInfo"],decls:7,vars:8,consts:[["class","number-info__title",4,"ngIf"],["class","number-info__title-sub",4,"ngIf"],[1,"number-info__value",3,"ngStyle"],[1,"number-info__value-text"],[4,"nzStringTemplateOutlet"],["class","number-info__value-suffix",4,"ngIf"],["class","number-info__value-text number-info__value-sub",4,"ngIf"],[1,"number-info__title"],[1,"number-info__title-sub"],[1,"number-info__value-suffix"],[1,"number-info__value-text","number-info__value-sub"],["nz-icon","",3,"nzType",4,"ngIf"],["nz-icon","",3,"nzType"]],template:function(D,_){1&D&&(t.YNc(0,u,2,1,"div",0),t.YNc(1,M,2,1,"div",1),t.TgZ(2,"div",2)(3,"span",3),t.YNc(4,h,2,1,"ng-container",4),t.YNc(5,v,2,1,"em",5),t.qZA(),t.YNc(6,p,3,2,"span",6),t.qZA()),2&D&&(t.Q6J("ngIf",_.title),t.xp6(1),t.Q6J("ngIf",_.subTitle),t.xp6(1),t.Q6J("ngStyle",t.VKq(6,f,_.gap)),t.xp6(2),t.Q6J("nzStringTemplateOutlet",_.total),t.xp6(1),t.Q6J("ngIf",_.suffix),t.xp6(1),t.Q6J("ngIf",_.status||_.subTotal))},dependencies:[i.O5,i.PC,l.Ls,C.f],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,n.Rn)()],y.prototype,"gap",void 0)},22595:(nt,I,o)=>{"use strict";o.d(I,{J:()=>T});var e=o(97582),n=o(65879),t=o(55611),i=o(74648),l=o(96814),C=o(66987),E=o(8324),u=o(24139);function z(x,D){1&x&&n._UZ(0,"nz-skeleton")}function M(x,D){if(1&x&&(n.ynx(0),n._UZ(1,"div",10),n.BQk()),2&x){const _=n.oxw(3);n.xp6(1),n.Q6J("innerHTML",_.subTitle,n.oJD)}}function h(x,D){if(1&x&&(n.TgZ(0,"h4",8),n.YNc(1,M,2,1,"ng-container",9),n.qZA()),2&x){const _=n.oxw(2);n.xp6(1),n.Q6J("nzStringTemplateOutlet",_.subTitle)}}function v(x,D){if(1&x&&(n.ynx(0),n._UZ(1,"div",10),n.BQk()),2&x){const _=n.oxw(3);n.xp6(1),n.Q6J("innerHTML",_.total,n.oJD)}}function g(x,D){if(1&x&&(n.TgZ(0,"div",11),n.YNc(1,v,2,1,"ng-container",9),n.qZA()),2&x){const _=n.oxw(2);n.xp6(1),n.Q6J("nzStringTemplateOutlet",_.total)}}function d(x,D){if(1&x&&(n.TgZ(0,"div",5),n.YNc(1,h,2,1,"h4",6),n.YNc(2,g,2,1,"div",7),n.qZA()),2&x){const _=n.oxw();n.xp6(1),n.Q6J("ngIf",_.subTitle),n.xp6(1),n.Q6J("ngIf",_.total)}}const p=function(x){return{"background-color":x}};function f(x,D){if(1&x){const _=n.EpF();n.TgZ(0,"li",14),n.NdJ("click",function(){const A=n.CHM(_).index,k=n.oxw(2);return n.KtG(k._click(A))}),n._UZ(1,"span",15),n.TgZ(2,"span",16),n._uU(3),n.qZA(),n._UZ(4,"nz-divider",17),n.TgZ(5,"span",18),n._uU(6),n.qZA(),n._UZ(7,"span",19),n.qZA()}if(2&x){const _=D.$implicit,P=n.oxw(2);n.xp6(1),n.Q6J("ngStyle",n.VKq(4,p,_.checked?_.color:"#aaa")),n.xp6(2),n.Oqu(_.x),n.xp6(3),n.hij("",_.percent,"%"),n.xp6(1),n.Q6J("innerHTML",P.valueFormat?P.valueFormat(_.y):_.y,n.oJD)}}function y(x,D){if(1&x&&(n.TgZ(0,"ul",12),n.YNc(1,f,8,6,"li",13),n.qZA()),2&x){const _=n.oxw();n.xp6(1),n.Q6J("ngForOf",_.legendData)}}class T extends t.$4{constructor(){super(...arguments),this.legendData=[],this.isPercent=!1,this.animate=!0,this.color="rgba(24, 144, 255, 0.85)",this.height=0,this.hasLegend=!1,this.inner=.75,this.padding=[12,0,12,0],this.tooltip=!0,this.lineWidth=0,this.blockMaxWidth=380,this.select=!0,this.data=[],this.interaction="none",this.ratio={text:"\u5360\u6bd4",inverse:"\u53cd\u6bd4",color:"",inverseColor:"#F0F2F5"},this.clickItem=new n.vpe,this.block=!1}fixData(){const{percent:D,color:_}=this;if(this.isPercent=null!=D,!this.isPercent)return;this.select=!1,this.tooltip=!1;const{text:P,inverse:S,color:A,inverseColor:k}=this.ratio;this.percentColor=R=>R===P?A||_:k,this.data=[{x:P,y:D},{x:S,y:100-D}]}updateBlock(){this.block=this._chart&&this.hasLegend&&this.el.nativeElement.clientWidth<=this.blockMaxWidth,this.cdr.detectChanges()}install(){const{node:D,height:_,padding:P,tooltip:S,inner:A,hasLegend:k,interaction:R,theme:$,animate:W,lineWidth:ze,isPercent:Y,percentColor:G,colors:V}=this,K=this._chart=new this.winG2.Chart({container:D.nativeElement,autoFit:!0,height:_,padding:P,theme:$});K.animate(W),K.tooltip(!!S&&{showTitle:!1,showMarkers:!1}),"none"!==R&&K.interaction(R),K.axis(!1).legend(!1).coordinate("theta",{innerRadius:A}),K.filter("x",(te,ne)=>!1!==ne.checked),K.interval().adjust("stack").position("y").style({lineWidth:ze,stroke:"#fff"}).color("x",Y?G:V).tooltip("x*percent",(te,ne)=>({name:te,value:`${k?ne:(100*ne).toFixed(2)} %`})).state({}),K.scale({x:{type:"cat",range:[0,1]}}),K.on("interval:click",te=>{this.ngZone.run(()=>this.clickItem.emit({item:te.data?.data,ev:te}))}).on("afterrender",()=>{this.ngZone.run(()=>this.updateBlock())}),this.ready.next(K),this.changeData(),K.render()}changeData(){const{_chart:D,data:_}=this;if(!D||!Array.isArray(_)||_.length<=0)return;const P=_.reduce((S,A)=>S+A.y,0);for(const S of _)S.percent=0===P?0:S.y/P;D.changeData(_),this.ngZone.run(()=>this.genLegend())}genLegend(){const{hasLegend:D,isPercent:_,cdr:P,_chart:S}=this;!D||_||(this.legendData=S.geometries[0].dataArray.map(A=>{const k=A[0]._origin;return k.color=A[0].color,k.checked=!0,k.percent=(100*k.percent).toFixed(2),k}),P.detectChanges())}_click(D){const{legendData:_,_chart:P}=this;_[D].checked=!_[D].checked,P.render(!0)}onChanges(){this.fixData()}static#e=this.\u0275fac=function(){let D;return function(P){return(D||(D=n.n5z(T)))(P||T)}}();static#t=this.\u0275cmp=n.Xpm({type:T,selectors:[["g2-pie"]],hostVars:8,hostBindings:function(_,P){2&_&&n.ekj("g2-pie",!0)("g2-pie__legend-has",P.hasLegend)("g2-pie__legend-block",P.block)("g2-pie__mini",P.isPercent)},inputs:{animate:"animate",color:"color",subTitle:"subTitle",total:"total",height:"height",hasLegend:"hasLegend",inner:"inner",padding:"padding",percent:"percent",tooltip:"tooltip",lineWidth:"lineWidth",blockMaxWidth:"blockMaxWidth",select:"select",valueFormat:"valueFormat",data:"data",colors:"colors",interaction:"interaction",ratio:"ratio"},outputs:{clickItem:"clickItem"},exportAs:["g2Pie"],features:[n.qOj],decls:6,vars:3,consts:[[4,"ngIf"],[1,"g2-pie__chart"],["container",""],["class","g2-pie__total",4,"ngIf"],["class","g2-pie__legend",4,"ngIf"],[1,"g2-pie__total"],["class","g2-pie__total-title",4,"ngIf"],["class","g2-pie__total-stat",4,"ngIf"],[1,"g2-pie__total-title"],[4,"nzStringTemplateOutlet"],[3,"innerHTML"],[1,"g2-pie__total-stat"],[1,"g2-pie__legend"],["class","g2-pie__legend-item",3,"click",4,"ngFor","ngForOf"],[1,"g2-pie__legend-item",3,"click"],[1,"g2-pie__legend-dot",3,"ngStyle"],[1,"g2-pie__legend-title"],["nzType","vertical"],[1,"g2-pie__legend-percent"],[1,"g2-pie__legend-value",3,"innerHTML"]],template:function(_,P){1&_&&(n.YNc(0,z,1,0,"nz-skeleton",0),n.TgZ(1,"div",1),n._UZ(2,"div",null,2),n.YNc(4,d,3,2,"div",3),n.qZA(),n.YNc(5,y,2,1,"ul",4)),2&_&&(n.Q6J("ngIf",!P.loaded),n.xp6(4),n.Q6J("ngIf",P.subTitle||P.total),n.xp6(1),n.Q6J("ngIf",P.hasLegend&&(null==P.legendData?null:P.legendData.length)))},dependencies:[l.sg,l.O5,l.PC,C.g,E.f,u.ng],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,i.yF)()],T.prototype,"animate",void 0),(0,e.gn)([(0,i.Rn)()],T.prototype,"height",void 0),(0,e.gn)([(0,i.yF)()],T.prototype,"hasLegend",void 0),(0,e.gn)([(0,i.Rn)()],T.prototype,"percent",void 0),(0,e.gn)([(0,i.yF)()],T.prototype,"tooltip",void 0),(0,e.gn)([(0,i.Rn)()],T.prototype,"lineWidth",void 0),(0,e.gn)([(0,i.Rn)()],T.prototype,"blockMaxWidth",void 0),(0,e.gn)([(0,i.yF)()],T.prototype,"select",void 0)},91183:(nt,I,o)=>{"use strict";o.d(I,{R:()=>d});var e=o(97582),n=o(65879),t=o(55611),i=o(74648),l=o(96814),C=o(10095),E=o(8324),u=o(24139);function z(p,f){1&p&&n._UZ(0,"nz-skeleton")}function M(p,f){if(1&p&&(n.ynx(0),n.TgZ(1,"h4"),n._uU(2),n.qZA(),n.BQk()),2&p){const y=n.oxw();n.xp6(2),n.Oqu(y.title)}}const h=function(p){return{"background-color":p}};function v(p,f){if(1&p){const y=n.EpF();n.TgZ(0,"div",6),n.NdJ("click",function(){const D=n.CHM(y).index,_=n.oxw(2);return n.KtG(_._click(D))}),n._UZ(1,"i",7),n._uU(2),n.TgZ(3,"h6",8),n._uU(4),n.qZA()()}if(2&p){const y=f.$implicit,T=n.oxw(2);n.Q6J("nzSpan",24/T.legendData.length),n.xp6(1),n.Q6J("ngStyle",n.VKq(4,h,y.checked?y.color:"#aaa")),n.xp6(1),n.hij(" ",y.name," "),n.xp6(2),n.Oqu(y.value)}}function g(p,f){if(1&p&&(n.TgZ(0,"div",4),n.YNc(1,v,5,6,"div",5),n.qZA()),2&p){const y=n.oxw();n.xp6(1),n.Q6J("ngForOf",y.legendData)}}class d extends t.$4{constructor(){super(...arguments),this.legendData=[],this.height=0,this.padding=[44,30,16,30],this.hasLegend=!0,this.tickCount=4,this.data=[],this.colors=["#1890FF","#FACC14","#2FC25B","#8543E0","#F04864","#13C2C2","#fa8c16","#a0d911"],this.clickItem=new n.vpe}getHeight(){return this.height-(this.hasLegend?80:22)}install(){const{node:f,padding:y,theme:T,tickCount:x}=this,D=this._chart=new this.winG2.Chart({container:f.nativeElement,autoFit:!0,height:this.getHeight(),padding:y,theme:T});D.coordinate("polar"),D.legend(!1),D.axis("label",{line:null,label:{offset:8},grid:{line:{style:{stroke:"#e9e9e9",lineWidth:1,lineDash:[0,0]}}}}),D.axis("value",{grid:{line:{type:"polygon",style:{stroke:"#e9e9e9",lineWidth:1,lineDash:[0,0]}}}}),D.scale({value:{min:0,tickCount:x}}),D.filter("name",_=>{const P=this.legendData.find(S=>S.name===_);return!P||!1!==P.checked}),D.line().position("label*value").color("name",this.colors),D.point().position("label*value").shape("circle").size(3),D.on("point:click",_=>{this.ngZone.run(()=>this.clickItem.emit({item:_.data?.data,ev:_}))}),this.ready.next(D),this.changeData(),D.render()}changeData(){const{_chart:f,data:y}=this;!f||!Array.isArray(y)||y.length<=0||(f.changeData(y),this.ngZone.run(()=>this.genLegend()))}genLegend(){const{hasLegend:f,cdr:y,_chart:T}=this;f&&(this.legendData=T.geometries[0].dataArray.map(x=>({name:x[0]._origin.name,color:x[0].color,checked:!0,value:x.reduce((P,S)=>P+S._origin.value,0)})),y.detectChanges())}_click(f){const{legendData:y,_chart:T}=this;y[f].checked=!y[f].checked,T.render(!0)}onChanges(){this.legendData.forEach(f=>f.checked=!0)}static#e=this.\u0275fac=function(){let f;return function(T){return(f||(f=n.n5z(d)))(T||d)}}();static#t=this.\u0275cmp=n.Xpm({type:d,selectors:[["g2-radar"]],hostVars:4,hostBindings:function(y,T){2&y&&(n.Udp("height",T.height,"px"),n.ekj("g2-radar",!0))},inputs:{title:"title",height:"height",padding:"padding",hasLegend:"hasLegend",tickCount:"tickCount",data:"data",colors:"colors"},outputs:{clickItem:"clickItem"},exportAs:["g2Radar"],features:[n.qOj],decls:5,vars:3,consts:[[4,"ngIf"],[4,"nzStringTemplateOutlet"],["container",""],["nz-row","","class","g2-radar__legend",4,"ngIf"],["nz-row","",1,"g2-radar__legend"],["nz-col","","class","g2-radar__legend-item",3,"nzSpan","click",4,"ngFor","ngForOf"],["nz-col","",1,"g2-radar__legend-item",3,"nzSpan","click"],[1,"g2-radar__legend-dot",3,"ngStyle"],[1,"g2-radar__legend-title"]],template:function(y,T){1&y&&(n.YNc(0,z,1,0,"nz-skeleton",0),n.YNc(1,M,3,1,"ng-container",1),n._UZ(2,"div",null,2),n.YNc(4,g,2,1,"div",3)),2&y&&(n.Q6J("ngIf",!T.loaded),n.xp6(1),n.Q6J("nzStringTemplateOutlet",T.title),n.xp6(3),n.Q6J("ngIf",T.hasLegend))},dependencies:[l.sg,l.O5,l.PC,C.t3,C.SK,E.f,u.ng],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,i.Rn)()],d.prototype,"height",void 0),(0,e.gn)([(0,i.yF)()],d.prototype,"hasLegend",void 0),(0,e.gn)([(0,i.Rn)()],d.prototype,"tickCount",void 0)},47381:(nt,I,o)=>{"use strict";o.d(I,{C:()=>l});var e=o(97582),n=o(55611),t=o(74648),i=o(65879);class l extends n.$4{constructor(){super(...arguments),this.plusColor="#40a9ff",this.minusColor="#ff4d4f",this.height=60,this.barSize=30,this.min=0,this.max=100,this.value=0,this.line=!1,this.padding=0,this.textStyle={fontSize:12,color:"#595959"},this.onlyChangeData=E=>1===Object.keys(E).length&&!!E.value}install(){const{el:E,height:u,padding:z,textStyle:M,line:h,format:v,theme:g,min:d,max:p,plusColor:f,minusColor:y,barSize:T}=this,x=this._chart=new this.winG2.Chart({container:E.nativeElement,autoFit:!0,height:u,padding:z,theme:g});x.legend(!1),x.axis(!1),x.scale({value:{max:p,min:d}}),x.tooltip(!1),x.coordinate().transpose(),x.interval().position("1*value").color("value",D=>D>0?f:y).size(T).label("value",()=>({formatter:v,style:{...M}})),h&&x.annotation().line({start:["50%","0%"],end:["50%","100%"],style:{stroke:"#e8e8e8",lineDash:[0,0]}}),this.ready.next(x),this.changeData(),x.render()}changeData(){const{_chart:E,value:u}=this;E&&E.changeData([{value:u}])}static#e=this.\u0275fac=function(){let E;return function(z){return(E||(E=i.n5z(l)))(z||l)}}();static#t=this.\u0275cmp=i.Xpm({type:l,selectors:[["g2-single-bar"]],hostVars:2,hostBindings:function(u,z){2&u&&i.Udp("height",z.height,"px")},inputs:{plusColor:"plusColor",minusColor:"minusColor",height:"height",barSize:"barSize",min:"min",max:"max",value:"value",line:"line",format:"format",padding:"padding",textStyle:"textStyle"},exportAs:["g2SingleBar"],features:[i.qOj],decls:0,vars:0,template:function(u,z){},encapsulation:2,changeDetection:0})}(0,e.gn)([(0,t.Rn)()],l.prototype,"height",void 0),(0,e.gn)([(0,t.Rn)()],l.prototype,"barSize",void 0),(0,e.gn)([(0,t.Rn)()],l.prototype,"min",void 0),(0,e.gn)([(0,t.Rn)()],l.prototype,"max",void 0),(0,e.gn)([(0,t.Rn)()],l.prototype,"value",void 0),(0,e.gn)([(0,t.yF)()],l.prototype,"line",void 0)},91641:(nt,I,o)=>{"use strict";o.d(I,{S:()=>h});var e=o(97582),n=o(65879),t=o(92438),i=o(32181),l=o(83620),C=o(55611),E=o(74648),u=o(96814),z=o(24139);function M(v,g){1&v&&n._UZ(0,"nz-skeleton")}class h extends C.$4{constructor(){super(...arguments),this.width=0,this.height=200,this.padding=0,this.data=[],this.clickItem=new n.vpe}initTagCloud(){const g=this.winG2;g.registerShape("point","cloud",{draw(d,p){const f=d.data,y=p.addShape({type:"text",name:"tag-cloud-text",attrs:{...d.style,fontSize:f.size,text:f.text,textAlign:"center",fontFamily:f.font,fill:d.color,textBaseline:"Alphabetic",x:d.x,y:d.y}});return f.rotate&&g.Util.rotate(y,f.rotate*Math.PI/180),y}})}install(){this.initTagCloud();const{el:g,padding:d,theme:p}=this;0===this.height&&(this.height=this.el.nativeElement.clientHeight),0===this.width&&(this.width=this.el.nativeElement.clientWidth);const f=this._chart=new this.winG2.Chart({container:g.nativeElement,autoFit:!1,padding:d,height:this.height,width:this.width,theme:p});f.scale({x:{nice:!1},y:{nice:!1}}),f.legend(!1),f.axis(!1),f.tooltip({showTitle:!1,showMarkers:!1}),f.coordinate().reflect(),f.point().position("x*y").color("text").shape("cloud").state({active:{style:{fillOpacity:.4}}}),f.interaction("element-active"),f.on("tag-cloud-text:click",y=>{this.ngZone.run(()=>this.clickItem.emit({item:y.data?.data,ev:y}))}),this.ready.next(f),this.changeData(),f.render()}changeData(){const{_chart:g,data:d}=this;if(!g||!Array.isArray(d)||d.length<=0)return;const p=(new window.DataSet.View).source(d),f=p.range("value"),y=f[0],T=f[1];p.transform({type:"tag-cloud",fields:["name","value"],font:"Verdana",size:[this.width,this.height],padding:0,timeInterval:5e3,rotate(){let x=~~(4*Math.random())%4;return 2===x&&(x=0),90*x},fontSize:x=>(x.value-y)/(T-y)*24+8}),g.changeData(p.rows)}installResizeEvent(){this.resize$=(0,t.R)(window,"resize").pipe((0,i.h)(()=>!!this._chart),(0,l.b)(200)).subscribe(()=>this.changeData())}onInit(){this.installResizeEvent()}static#e=this.\u0275fac=function(){let g;return function(p){return(g||(g=n.n5z(h)))(p||h)}}();static#t=this.\u0275cmp=n.Xpm({type:h,selectors:[["g2-tag-cloud"]],inputs:{width:"width",height:"height",padding:"padding",data:"data"},outputs:{clickItem:"clickItem"},exportAs:["g2TagCloud"],features:[n.qOj],decls:1,vars:1,consts:[[4,"ngIf"]],template:function(d,p){1&d&&n.YNc(0,M,1,0,"nz-skeleton",0),2&d&&n.Q6J("ngIf",!p.loaded)},dependencies:[u.O5,z.ng],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,E.Rn)()],h.prototype,"width",void 0),(0,e.gn)([(0,E.Rn)()],h.prototype,"height",void 0)},68771:(nt,I,o)=>{"use strict";o.d(I,{Q:()=>v});var e=o(97582),n=o(65879),t=o(89207),i=o(55611),l=o(60325),C=o(74648),E=o(96814),u=o(8324),z=o(24139);function M(g,d){if(1&g&&(n.ynx(0),n.TgZ(1,"h4"),n._uU(2),n.qZA(),n.BQk()),2&g){const p=n.oxw();n.xp6(2),n.Oqu(p.title)}}function h(g,d){1&g&&n._UZ(0,"nz-skeleton")}class v extends i.$4{constructor(){super(...arguments),this.maxAxis=2,this.data=[],this.colorMap={y1:"#5B8FF9",y2:"#5AD8A6",y3:"#5D7092",y4:"#F6BD16",y5:"#E86452"},this.mask="HH:mm",this.maskSlider="HH:mm",this.position="top",this.height=450,this.padding=[40,8,64,40],this.borderWidth=2,this.slider=!0,this.clickItem=new n.vpe,this.onlyChangeData=d=>{const p=d.titleMap;return!(p&&!p.firstChange&&p.currentValue!==p.previousValue)}}install(){const{node:d,height:p,padding:f,slider:y,maxAxis:T,theme:x,maskSlider:D}=this,_=this._chart=new this.winG2.Chart({container:d.nativeElement,autoFit:!0,height:p,padding:f,theme:x});_.axis("time",{title:null}),_.axis("y1",{title:null});for(let S=2;S<=T;S++)_.axis(`y${S}`,!1);_.line().position("time*y1");for(let S=2;S<=T;S++)_.line().position(`time*y${S}`);_.tooltip({showCrosshairs:!0,shared:!0}),{...[],...f}[0]=0,y&&_.option("slider",{height:26,start:0,end:1,trendCfg:{isArea:!1},minLimit:2,formatter:S=>(0,t.Z)(S,D)}),_.on("plot:click",S=>{const A=this._chart.getSnapRecords({x:S.x,y:S.y});this.ngZone.run(()=>this.clickItem.emit({item:A[0]._origin,ev:S}))}),_.on("legend-item:click",S=>{const A=S?.target?.get("delegateObject").item,k=A?.id,R=_.geometries.find($=>$.getAttribute("position").getFields()[1]===k);R&&R.changeVisible(!A.unchecked)}),this.ready.next(_),this.changeData(),_.render()}changeData(){const{_chart:d,height:p,padding:f,mask:y,titleMap:T,position:x,colorMap:D,borderWidth:_,maxAxis:P}=this;let S=[...this.data];if(!d||S.length<=0)return;const A=[...Array(P)].map((ze,Y)=>Y+1);d.legend({position:x,custom:!0,items:A.map(ze=>{const Y=`y${ze}`;return{id:Y,name:T[Y],value:Y,marker:{style:{fill:D[Y]}}}})}),d.geometries.forEach((ze,Y)=>{ze.color(D[`y${Y+1}`]).size(_)}),d.height=p,d.padding=f,S=S.map(ze=>(ze.time=(0,l.ZU)(ze.time),ze._time=+ze.time,ze)).sort((ze,Y)=>ze._time-Y._time);const k=Math.max(...A.map(ze=>[...S].sort((Y,G)=>G[`y${ze}`]-Y[`y${ze}`])[0][`y${ze}`])),R={};A.forEach(ze=>{const Y=`y${ze}`;R[Y]={alias:T[Y],max:k,min:0}}),d.scale({time:{type:"time",mask:y,range:[0,1]},...R});const $_start=S[0]._time,$_end=S[S.length-1]._time,W=S.filter(ze=>ze._time>=$_start&&ze._time<=$_end);d.changeData(W)}static#e=this.\u0275fac=function(){let d;return function(f){return(d||(d=n.n5z(v)))(f||v)}}();static#t=this.\u0275cmp=n.Xpm({type:v,selectors:[["g2-timeline"]],inputs:{title:"title",maxAxis:"maxAxis",data:"data",titleMap:"titleMap",colorMap:"colorMap",mask:"mask",maskSlider:"maskSlider",position:"position",height:"height",padding:"padding",borderWidth:"borderWidth",slider:"slider"},outputs:{clickItem:"clickItem"},exportAs:["g2Timeline"],features:[n.qOj],decls:4,vars:2,consts:[[4,"nzStringTemplateOutlet"],[4,"ngIf"],["container",""]],template:function(p,f){1&p&&(n.YNc(0,M,3,1,"ng-container",0),n.YNc(1,h,1,0,"nz-skeleton",1),n._UZ(2,"div",null,2)),2&p&&(n.Q6J("nzStringTemplateOutlet",f.title),n.xp6(1),n.Q6J("ngIf",!f.loaded))},dependencies:[E.O5,u.f,z.ng],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,C.Rn)()],v.prototype,"maxAxis",void 0),(0,e.gn)([(0,C.Rn)()],v.prototype,"height",void 0),(0,e.gn)([(0,C.Rn)()],v.prototype,"borderWidth",void 0),(0,e.gn)([(0,C.yF)()],v.prototype,"slider",void 0)},37690:(nt,I,o)=>{"use strict";o.d(I,{_:()=>u});var e=o(97582),n=o(74648),t=o(65879),i=o(96814),l=o(90551);function C(z,M){if(1&z&&(t.TgZ(0,"span"),t._UZ(1,"i",1),t.qZA()),2&z){const h=t.oxw();t.Gre("trend__",h.flag,""),t.xp6(1),t.MGl("nzType","caret-",h.flag,"")}}const E=["*"];class u{constructor(){this.colorful=!0,this.reverseColor=!1}static#e=this.\u0275fac=function(h){return new(h||u)};static#t=this.\u0275cmp=t.Xpm({type:u,selectors:[["trend"]],hostVars:7,hostBindings:function(h,v){2&h&&(t.uIk("data-flag",v.flag),t.ekj("trend",!0)("trend__grey",!v.colorful)("trend__reverse",v.colorful&&v.reverseColor))},inputs:{flag:"flag",colorful:"colorful",reverseColor:"reverseColor"},exportAs:["trend"],ngContentSelectors:E,decls:2,vars:1,consts:[[3,"class",4,"ngIf"],["nz-icon","",3,"nzType"]],template:function(h,v){1&h&&(t.F$t(),t.Hsn(0),t.YNc(1,C,2,4,"span",0)),2&h&&(t.xp6(1),t.Q6J("ngIf",v.flag))},dependencies:[i.O5,l.Ls],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,n.yF)()],u.prototype,"colorful",void 0),(0,e.gn)([(0,n.yF)()],u.prototype,"reverseColor",void 0)},64755:(nt,I,o)=>{"use strict";o.d(I,{u:()=>d});var e=o(97582),n=o(92438),t=o(83620),i=o(74648),l=o(65879),C=o(62831),E=o(96814),u=o(8324);const z=["container"];function M(p,f){if(1&p&&(l.ynx(0),l._uU(1),l.BQk()),2&p){const y=l.oxw(2);l.xp6(1),l.Oqu(y.title)}}function h(p,f){if(1&p&&(l.TgZ(0,"span",6),l.YNc(1,M,2,1,"ng-container",7),l.qZA()),2&p){const y=l.oxw();l.xp6(1),l.Q6J("nzStringTemplateOutlet",y.title)}}const v=function(p,f){return{"height.px":p,"width.px":f,overflow:"hidden"}},g=function(p){return{"width.px":p}};class d{constructor(f,y,T,x,D){this.el=f,this.renderer=y,this.ngZone=T,this.cdr=x,this.platform=D,this.resize$=null,this.animate=!0,this.delay=0,this.color="#1890FF",this.height=160}renderChart(f){if(!this.resize$)return;this.updateRadio();const{percent:y,color:T,node:x,animate:D}=this,_=Math.min(Math.max(y/100,0),100),P=this;cancelAnimationFrame(this.timer);const S=x.nativeElement,A=S.getContext("2d"),k=S.width,R=S.height,$=k/2,ze=$-2;A.beginPath(),A.lineWidth=4;const Y=k-2,G=Y/8;let K=0;let ne=.2,fe=0;const re=D?.005:.015;let be=[];const le=$-2,ce=-Math.PI/2;let Q=!0;for(let Me=ce;Me=.85?ne>.05&&(ne-=.002):_<=.1?ne<1.5*.2&&(ne+=.002):(ne<=.2&&(ne+=.002),ne>=.2&&(ne-=.002)),_-fe>0&&(fe+=re),_-fe<0&&(fe-=re),K+=.07,function ae(){A.beginPath(),A.save();const Me=[];for(let ve=2;ve<=2+Y;ve+=20/Y){const Be=Math.sin(K+(2+ve)/G)*ne,Re=ve,ct=2*ze*(1-fe)+($-ze)-G*Be;A.lineTo(Re,ct),Me.push([Re,ct])}const Ye=Me.shift();A.lineTo(2+Y,R),A.lineTo(2,R),A.lineTo(Ye[0],Ye[1]);const q=A.createLinearGradient(0,0,0,R);q.addColorStop(0,"#ffffff"),q.addColorStop(1,T),A.fillStyle=q,A.fill(),A.restore()}();P.timer=requestAnimationFrame(xe)}()}updateRadio(){const{offsetWidth:f}=this.el.nativeElement.parentNode;this.renderer.setStyle(this.el.nativeElement,"transform",`scale(${fthis.updateRadio())}ngOnInit(){this.platform.isBrowser&&(this.installResizeEvent(),this.ngZone.runOutsideAngular(()=>setTimeout(()=>this.render(),this.delay)))}ngOnChanges(){this.ngZone.runOutsideAngular(()=>this.renderChart(!0)),this.cdr.detectChanges()}ngOnDestroy(){this.timer&&cancelAnimationFrame(this.timer),this.resize$&&this.resize$.unsubscribe()}static#e=this.\u0275fac=function(y){return new(y||d)(l.Y36(l.SBq),l.Y36(l.Qsj),l.Y36(l.R0b),l.Y36(l.sBO),l.Y36(C.t4))};static#t=this.\u0275cmp=l.Xpm({type:d,selectors:[["g2-water-wave"]],viewQuery:function(y,T){if(1&y&&l.Gf(z,7),2&y){let x;l.iGM(x=l.CRH())&&(T.node=x.first)}},hostVars:2,hostBindings:function(y,T){2&y&&l.ekj("g2-water-wave",!0)},inputs:{animate:"animate",delay:"delay",title:"title",color:"color",height:"height",percent:"percent"},exportAs:["g2WaterWave"],features:[l.TTD],decls:7,vars:11,consts:[[3,"ngStyle"],[1,"g2-water-wave__canvas",3,"width","height"],["container",""],[1,"g2-water-wave__desc",3,"ngStyle"],["class","g2-water-wave__desc-title",4,"ngIf"],[1,"g2-water-wave__desc-percent"],[1,"g2-water-wave__desc-title"],[4,"nzStringTemplateOutlet"]],template:function(y,T){1&y&&(l.TgZ(0,"div",0),l._UZ(1,"canvas",1,2),l.qZA(),l.TgZ(3,"div",3),l.YNc(4,h,2,1,"span",4),l.TgZ(5,"h4",5),l._uU(6),l.qZA()()),2&y&&(l.Q6J("ngStyle",l.WLB(6,v,T.height,T.height)),l.xp6(1),l.s9C("width",2*T.height),l.s9C("height",2*T.height),l.xp6(2),l.Q6J("ngStyle",l.VKq(9,g,T.height)),l.xp6(1),l.Q6J("ngIf",T.title),l.xp6(2),l.hij("",T.percent,"%"))},dependencies:[E.O5,E.PC,u.f],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,i.yF)()],d.prototype,"animate",void 0),(0,e.gn)([(0,i.Rn)()],d.prototype,"delay",void 0),(0,e.gn)([(0,i.Rn)()],d.prototype,"height",void 0),(0,e.gn)([(0,i.Rn)()],d.prototype,"percent",void 0)},27854:(nt,I,o)=>{"use strict";o.d(I,{H_:()=>d.H_,ek:()=>i.e,Bl:()=>le.B}),o(84923),o(47535),o(1202);var i=o(48141);o(38459),o(94128),o(41966),o(91147),o(33802),o(72271),o(50679),o(55911);var d=o(98498),le=(o(26557),o(84212),o(55900),o(87817),o(80650),o(45858),o(74896),o(98685),o(38140),o(53250),o(28957),o(28448),o(52569),o(70410),o(55986),o(72188),o(21933),o(86918),o(40712),o(84971),o(98350),o(29993),o(58435),o(36304),o(48480));o(18224),o(92219)},84923:(nt,I,o)=>{"use strict";o.d(I,{f:()=>n});const e={formatMap:{"date-time":{widget:"date",showTime:!0,format:"yyyy-MM-dd'T'HH:mm:ss.SSSxxx"},date:{widget:"date",format:"yyyy-MM-dd"},"full-date":{widget:"date",format:"yyyy-MM-dd"},time:{widget:"time",format:"HH:mm:ss.SSSxxx"},"full-time":{widget:"time"},week:{widget:"date",mode:"week",format:"yyyy-ww"},month:{widget:"date",mode:"month",format:"yyyy-MM"},uri:{widget:"upload"},email:{widget:"autocomplete",type:"email"},color:{widget:"string",type:"color"},"":{widget:"string"}},ingoreKeywords:["type","enum"],liveValidate:!0,autocomplete:null,firstVisual:!1,onlyVisual:!1,errors:{},ui:{},button:{submit_type:"primary",reset_type:"default"},uiDateStringFormat:"yyyy-MM-dd HH:mm:ss",uiDateNumberFormat:"T",uiTimeStringFormat:"HH:mm:ss",uiTimeNumberFormat:"T",uiEmailSuffixes:["qq.com","163.com","gmail.com","126.com","aliyun.com"],delay:!1};function n(t){return t.merge("sf",e)}},60699:(nt,I,o)=>{"use strict";o.d(I,{j:()=>e});const e="/"},33802:(nt,I,o)=>{"use strict";o.d(I,{K:()=>l});var e=o(64115),n=o(38459),t=o(91147),i=o(60699);class l extends n.I{constructor(E,u,z,M,h,v,g,d,p){super(E,z,M,h,v,g,d,p),this.formPropertyFactory=u,this.properties=[]}getProperty(E){const u=E.indexOf(i.j),z=+(-1!==u?E.substring(0,u):E),M=this.properties;if(isNaN(z)||z>=M.length)return;const h=E.substring(u+1);return M[z].getProperty(h)}setValue(E,u){this.properties=[],this.clearErrors(),this.resetProperties(E),this.cd(u),this.updateValueAndValidity({onlySelf:u,emitValueEvent:!0})}resetValue(E,u){this._value=E||this.schema.default||[],this.setValue(this._value,u)}_hasValue(){return!0}_updateValue(){const E=[];this.forEachChild(u=>{u.visible&&E.push({...this.widget?.cleanValue?null:u.formData,...u.value})}),this._value=E}addProperty(E){const u=this.formPropertyFactory.createProperty((0,e.p$)(this.schema.items),(0,e.p$)(this.ui.$items),E,this);return this.properties.push(u),u}resetProperties(E){for(const u of E)this.addProperty(u).resetValue(u,!0)}clearErrors(E){(E||this)._objErrors={}}add(E){const u=this.addProperty(E);return u.resetValue(E,!1),u}remove(E){const u=this.properties;this.clearErrors(),u.splice(E,1),u.forEach((z,M)=>{z.path=[z.parent.path,M].join(i.j),this.clearErrors(z),z instanceof t.t&&z.forEachChild(h=>{h.updateValueAndValidity()})}),0===u.length&&this.updateValueAndValidity()}}},41966:(nt,I,o)=>{"use strict";o.d(I,{A:()=>n});var e=o(38459);class n extends e.Z{setValue(i,l){this._value=i,this.cd(l),this.updateValueAndValidity({onlySelf:l,emitValueEvent:!0})}resetValue(i,l){null==i&&(i=void 0!==this.schema.default?this.schema.default:this.fallbackValue()),this._value=i,this.updateValueAndValidity({onlySelf:l,emitValueEvent:!0}),this.widget&&(this.widget.reset(i),this.cd(l))}_hasValue(){return this.fallbackValue()!==this.value}_updateValue(){}}},55911:(nt,I,o)=>{"use strict";o.d(I,{x:()=>n});var e=o(41966);class n extends e.A{fallbackValue(){return null}}},94128:(nt,I,o)=>{"use strict";o.d(I,{e:()=>M});var e=o(33802),n=o(55911),t=o(38459),i=o(50679),l=o(91147),C=o(72271),E=o(84923),u=o(60699),z=o(92219);class M{constructor(v,g,d){this.injector=v,this.schemaValidatorFactory=g,this.options=(0,E.f)(d)}createProperty(v,g,d,p=null,f){let y=null,T="";if(p)switch(T+=p.path,null!==p.parent&&(T+=u.j),p.type){case"object":T+=f;break;case"array":T+=p.properties.length;break;default:throw new Error(`Instanciation of a FormProperty with an unknown parent type: ${p.type}`)}else T=u.j;if(v.$ref){const x=(0,z.u6)(v,p.root.schema.definitions);y=this.createProperty(x,g,d,p,T)}else switch((f&&-1!==p.schema.required.indexOf(f.split(u.j).pop())||!0===g.showRequired)&&(g._required=!0),null==v.title&&(v.title=f),"string"!==v.type&&"number"!==v.type||v.format||g.format?g._format=g.format:"date"===g.widget?g._format="string"===v.type?this.options.uiDateStringFormat:this.options.uiDateNumberFormat:"time"===g.widget&&(g._format="string"===v.type?this.options.uiTimeStringFormat:this.options.uiTimeNumberFormat),v.type){case"integer":case"number":y=new i.Y(this.injector,this.schemaValidatorFactory,v,g,d,p,T,this.options);break;case"string":y=new C.h(this.injector,this.schemaValidatorFactory,v,g,d,p,T,this.options);break;case"boolean":y=new n.x(this.injector,this.schemaValidatorFactory,v,g,d,p,T,this.options);break;case"object":y=new l.t(this.injector,this,this.schemaValidatorFactory,v,g,d,p,T,this.options);break;case"array":y=new e.K(this.injector,this,this.schemaValidatorFactory,v,g,d,p,T,this.options);break;default:throw new TypeError(`Undefined type ${v.type}`)}return y.propertyId=f,y instanceof t.I&&this.initializeRoot(y),y}initializeRoot(v){v._bindVisibility()}}},38459:(nt,I,o)=>{"use strict";o.d(I,{I:()=>v,Z:()=>h});var e=o(65879),n=o(65619),t=o(65592),i=o(48180),l=o(37398),C=o(52572),E=o(93997),u=o(50883),z=o(60699),M=o(92219);class h{constructor(d,p,f,y,T,x,D,_){this.injector=d,this._options=_,this._errors=null,this._valueChanges=new n.X({path:null,pathValue:null,value:null}),this._errorsChanges=new n.X(null),this._visible=!0,this._visibilityChanges=new n.X(!0),this._objErrors={},this._value=null,this.schema=f,this.ui=y,this.schemaValidator=p.createValidatorFn(f,{ingoreKeywords:this.ui.ingoreKeywords,debug:y.debug}),this.formData=T||f.default,this._parent=x,this._root=x?x.root:this,this.path=D}get valueChanges(){return this._valueChanges}get errorsChanges(){return this._errorsChanges}get type(){return this.schema.type}get parent(){return this._parent}get root(){return this._root}get value(){return this._value}get errors(){return this._errors}get visible(){return this._visible}get valid(){return null===this._errors||0===this._errors.length}get options(){return this._options}cd(d=!1){this.widget?.detectChanges(d)}updateValueAndValidity(d){d={onlySelf:!1,emitValidator:!0,emitValueEvent:!0,updatePath:"",updateValue:null,...d},this._updateValue(),d.emitValueEvent&&(d.updatePath=d.updatePath||this.path,d.updateValue=null==d.updateValue?this.value:d.updateValue,this.valueChanges.next({value:this.value,path:d.updatePath,pathValue:d.updateValue})),d.emitValidator&&!0===this.ui.liveValidate&&this._runValidation(),this.parent&&!d.onlySelf&&this.parent.updateValueAndValidity({...d,emitValidator:!1})}searchProperty(d){let p=this,f=null,y=null;if(d[0]===z.j)f=this.findRoot(),y=f.getProperty(d.substring(1));else for(;null===y&&null!==p.parent;)p=f=p.parent,y=f.getProperty(d);return y}findRoot(){let d=this;for(;null!==d.parent;)d=d.parent;return d}isEmptyData(d){return!!(0,M.fp)(d)||"string"===this.type&&0===`${d}`.length}_runValidation(){let d;const p=this.isEmptyData(this._value);d=p&&this.ui._required?[{keyword:"required"}]:p?[]:this.schemaValidator(this._value)||[];const f=this.ui.validator;if("function"==typeof f){const y=f(this.value,this,this.findRoot());return y instanceof t.y?void y.subscribe(T=>{this.setCustomErrors(d,T),this.cd(!1)}):void this.setCustomErrors(d,y)}this._errors=d,this.setErrors(this._errors)}setCustomErrors(d,p){const f=Array.isArray(p)&&p.length>0;f&&p.forEach(y=>{if(!y.message)throw new Error("The custom validator must contain a 'message' attribute to viewed error text");y.keyword=null}),this._errors=f?d.concat(...p):d,this.setErrors(this._errors)}setErrors(d=[],p=!0){let f=Array.isArray(d)?d:[d];if(p&&f&&!this.ui.onlyVisual){const y=this.widget&&this.widget.l.error||{};f=f.map(T=>{let x=null==T.keyword&&T.message?T.message:(this.ui.errors||{})[T.keyword]||this._options.errors[T.keyword]||y[T.keyword]||"";return x&&"function"==typeof x&&(x=x(T)),x&&(~x.indexOf("{")&&T.params&&(x=x.replace(/{([\.a-zA-Z0-9]+)}/g,(D,_)=>T.params[_]||"")),T.message=x),T})}this._errors=f,this._errorsChanges.next(f),this._parent&&this._parent.setParentAndPlatErrors(f,this.path)}setParentAndPlatErrors(d,p){this._objErrors[p]=d;const f=[];Object.keys(this._objErrors).forEach(y=>{const T=this.searchProperty(y);T&&!T.visible||f.push(...this._objErrors[y])}),this.setErrors(f,!1)}setVisible(d){return this._visible=d,this._visibilityChanges.next(d),d&&this.injector.get(e.R0b).onStable.pipe((0,i.q)(1)).subscribe(()=>{this.resetValue(this.value,!0)}),this}_bindVisibility(){const d=this.ui.visibleIf;if("object"==typeof d&&0===Object.keys(d).length)this.setVisible(!1);else if(null!=d){const p=[];for(const f in d)if(d.hasOwnProperty(f)){const y=this.searchProperty(f);if(y){const T=y.valueChanges.pipe((0,l.U)(_=>{const P=d[f];if("function"==typeof P){const S=P(_.value,y);if("object"==typeof S){const A={show:!1,required:!1,...S},k=this.parent?.schema.required;if(k&&this.propertyId){const R=k.findIndex($=>$===this.propertyId);A.required?-1===R&&k.push(this.propertyId):-1!==R&&k.splice(R,1),this.ui._required=A.required}return A.show}return S}return-1!==P.indexOf("$ANY$")?_.value&&_.value.length>0:-1!==P.indexOf(_.value)})),D=(0,C.a)([T,y._visibilityChanges]).pipe((0,l.U)(_=>_[0]&&_[1]));p.push(D)}}(0,C.a)(p).pipe((0,l.U)(f=>"and"===this.ui.visibleIfLogical?f.every(y=>y):f.some(y=>y)),(0,E.x)()).subscribe(f=>this.setVisible(f))}}updateFeedback(d=""){this.ui.feedback=d,this.widget?.injector.get(u.kH).formStatusChanges.next({status:d,hasFeedback:!!d}),this.cd(!0)}}class v extends h{constructor(){super(...arguments),this.properties=null}getProperty(d){const p=d.indexOf(z.j),f=-1!==p?d.substring(0,p):d;let y=this.properties[f];if(null!==y&&-1!==p&&y instanceof v){const T=d.substring(p+1);y=y.getProperty(T)}return y}forEachChild(d){for(const p in this.properties)this.properties.hasOwnProperty(p)&&d(this.properties[p],p)}forEachChildRecursive(d){this.forEachChild(p=>{d(p),p instanceof v&&p.forEachChildRecursive(d)})}_bindVisibility(){super._bindVisibility(),this._bindVisibilityRecursive()}_bindVisibilityRecursive(){this.forEachChildRecursive(d=>{d._bindVisibility()})}isRoot(){return this===this.root}}},50679:(nt,I,o)=>{"use strict";o.d(I,{Y:()=>n});var e=o(41966);class n extends e.A{fallbackValue(){return null}setValue(i,l){"string"==typeof i&&(i=i.length?i.indexOf(".")>-1?parseFloat(i):parseInt(i,10):void 0),this._value=i,this.cd(l),this.updateValueAndValidity({onlySelf:l,emitValueEvent:!0})}}},91147:(nt,I,o)=>{"use strict";o.d(I,{t:()=>t});var e=o(38459),n=o(92219);class t extends e.I{get propertiesId(){return this._propertiesId}constructor(l,C,E,u,z,M,h,v,g){super(l,E,u,z,M,h,v,g),this.formPropertyFactory=C,this._propertiesId=[],this.createProperties()}createProperties(){let l;this.properties={},this._propertiesId=[];try{l=(0,n.$2)(Object.keys(this.schema.properties),this.ui.order)}catch(C){console.error(`Invalid ${this.schema.title||"root"} object field configuration:`,C)}l.forEach(C=>{this.properties[C]=this.formPropertyFactory.createProperty(this.schema.properties[C],this.ui[`$${C}`],(this.formData||{})[C],this,C),this._propertiesId.push(C)})}setValue(l,C){const E=this.properties;for(const u in l)l.hasOwnProperty(u)&&E[u]&&E[u].setValue(l[u],!0);this.cd(C),this.updateValueAndValidity({onlySelf:C,emitValueEvent:!0})}resetValue(l,C){l=l||this.schema.default||{};const E=this.properties;for(const u in this.schema.properties)this.schema.properties.hasOwnProperty(u)&&E[u].resetValue(l[u],!0);this.cd(C),this.updateValueAndValidity({onlySelf:C,emitValueEvent:!0})}_hasValue(){return null!=this.value&&!!Object.keys(this.value).length}_updateValue(){const l={};this.forEachChild((C,E)=>{C.visible&&C._hasValue()&&(l[E]=C.value)}),this._value=l}}},72271:(nt,I,o)=>{"use strict";o.d(I,{h:()=>n});var e=o(41966);class n extends e.A{fallbackValue(){return null}setValue(i,l){this._value=i??"",this.cd(l),this.updateValueAndValidity({onlySelf:l,emitValueEvent:!0})}}},48141:(nt,I,o)=>{"use strict";o.d(I,{e:()=>Ie});var e=o(96814),n=o(65879),t=o(60095),i=o(95717),l=o(42840),C=o(82962),E=o(25923),u=o(62612),z=o(52682),M=o(3599),h=o(10095),v=o(90551),g=o(20824),d=o(68373),p=o(36513),f=o(81221),y=o(57907),T=o(98421),x=o(9691),D=o(20012),_=o(96494),P=o(55695),S=o(60047),A=o(96109),k=o(10358),R=o(80729),$=o(41394),W=o(980),ze=o(78967),te=(o(1202),o(93355),o(33182),o(47535),o(18224)),fe=(o(58435),o(48480)),Ye=(o(84212),o(86918),o(38140),o(40712),o(98685),o(29993),o(80650),o(84971),o(87817),o(36304));o(26557),o(74896),o(21933),o(28957),o(72188),o(55900),o(52569),o(98350),o(53250),o(45858),o(55986),o(28448),o(70410);const U=[i.ic,l.sL,C.vh,E.Fs,u.Wr,z.Hb,M.U5,h.Jb,v.PV,g.o7,d.Zf,p.Gl,f.Qp,y.aF,T.Ju,x.LV,D.N3,_.m,P.X,S.wY,A.cg,k.st,R.cq,$.cS];let Ie=(()=>{class Ne{static forRoot(){return{ngModule:Ne,providers:[{provide:te.l,useClass:te.p,deps:[ze.Ri,n.R0b]},{provide:fe.B,useClass:Ye.C}]}}static#e=this.\u0275fac=function(Lt){return new(Lt||Ne)};static#t=this.\u0275mod=n.oAB({type:Ne});static#n=this.\u0275inj=n.cJS({imports:[e.ez,t.u5,W.lD,U]})}return Ne})()},1202:(nt,I,o)=>{"use strict";o.d(I,{h:()=>i});var e=o(97582),n=o(74648),t=o(65879);class i{init(){if(!this._inited||null==this.num||this.num<=0)return;const C=this.el.nativeElement,E=C.querySelector(".ant-row")||C;this.render.addClass(E,"sf__fixed");const u=E.querySelector(".ant-form-item-label"),z=E.querySelector(".ant-form-item-control-wrapper,.ant-form-item-control"),M=`${this.num}px`;u?(this.render.setStyle(u,"flex",`0 0 ${M}`),this.render.setStyle(z,"max-width",`calc(100% - ${M})`)):this.render.setStyle(z,"margin-left",M)}constructor(C,E){this.el=C,this.render=E,this._inited=!1}ngAfterViewInit(){this._inited=!0,this.init()}ngOnChanges(){this._inited&&this.init()}static#e=this.\u0275fac=function(E){return new(E||i)(t.Y36(t.SBq),t.Y36(t.Qsj))};static#t=this.\u0275dir=t.lG2({type:i,selectors:[["","fixed-label",""]],inputs:{num:["fixed-label","num"]},features:[t.TTD]})}(0,e.gn)([(0,n.Rn)()],i.prototype,"num",void 0)},93355:(nt,I,o)=>{"use strict";o.d(I,{i:()=>y});var e=o(64194),n=o(65879),t=o(50883),i=o(96814),l=o(70855),C=o(10095),E=o(3599),u=o(90551),z=o(96109);function M(T,x){if(1&T&&n._UZ(0,"i",12),2&T){const D=n.oxw(4);n.Q6J("nzTooltipTitle",D.oh.text)("nzTooltipPlacement",D.oh.placement)("nzTooltipTrigger",D.oh.trigger)("nzTooltipColor",D.oh.bgColor)("nzTooltipOverlayClassName",D.oh.overlayClassName)("nzTooltipOverlayStyle",D.oh.overlayStyle)("nzTooltipMouseEnterDelay",D.oh.mouseEnterDelay)("nzTooltipMouseLeaveDelay",D.oh.mouseLeaveDelay)("nzType",D.oh.icon)}}function h(T,x){if(1&T&&(n.TgZ(0,"span",10),n._uU(1),n.YNc(2,M,1,9,"i",11),n.qZA()),2&T){const D=n.oxw(3);n.xp6(1),n.hij(" ",D.ui.optional," "),n.xp6(1),n.Q6J("ngIf",D.oh)}}function v(T,x){if(1&T&&(n.TgZ(0,"label")(1,"span",8),n._uU(2),n.qZA(),n.YNc(3,h,3,2,"span",9),n.qZA()),2&T){const D=n.oxw(2);n.ekj("ant-form-item-required",D.ui._required),n.uIk("for",D.id),n.xp6(2),n.Oqu(D.t),n.xp6(1),n.Q6J("ngIf",D.ui.optional||D.oh)}}function g(T,x){if(1&T&&(n.TgZ(0,"div",6),n.YNc(1,v,4,5,"label",7),n.qZA()),2&T){const D=n.oxw();n.Q6J("nzSpan",D.ui.spanLabel),n.xp6(1),n.Q6J("ngIf",D.t)}}function d(T,x){if(1&T&&(n.TgZ(0,"div",13)(1,"div",14),n._uU(2),n.qZA()()),2&T){const D=n.oxw();n.Q6J("@helpMotion",void 0),n.xp6(2),n.hij(" ",D.error," ")}}function p(T,x){if(1&T&&n._UZ(0,"div",15),2&T){const D=n.oxw();n.Q6J("innerHTML",D.ui._description,n.oJD)}}const f=["*"];let y=(()=>{class T{set showTitle(D){this._showTitle=!!D}get t(){return null===this.title?this.schema.title:this.title}get oh(){return this.ui.optionalHelp}constructor(D){this.statusSrv=D,this._showTitle=!1,this.title=null}ngOnChanges(){this.statusSrv.formStatusChanges.next({status:this.error?"error":"",hasFeedback:!!this.ui.feedback})}static#e=this.\u0275fac=function(_){return new(_||T)(n.Y36(t.kH))};static#t=this.\u0275cmp=n.Xpm({type:T,selectors:[["sf-item-wrap"]],inputs:{id:"id",schema:"schema",ui:"ui",showError:"showError",error:"error",showTitle:"showTitle",title:"title"},features:[n.TTD],ngContentSelectors:f,decls:8,vars:21,consts:[["nz-col","","class","ant-form-item-label",3,"nzSpan",4,"ngIf"],["nz-col","",1,"ant-form-item-control",3,"nzSpan","nzOffset"],[1,"ant-form-item-control-input"],[1,"ant-form-item-control-input-content"],["class","ant-form-item-explain ant-form-item-explain-connected",4,"ngIf"],["class","ant-form-item-extra",3,"innerHTML",4,"ngIf"],["nz-col","",1,"ant-form-item-label",3,"nzSpan"],[3,"ant-form-item-required",4,"ngIf"],[1,"sf__label-text"],["class","sf__optional",4,"ngIf"],[1,"sf__optional"],["nz-tooltip","","nz-icon","",3,"nzTooltipTitle","nzTooltipPlacement","nzTooltipTrigger","nzTooltipColor","nzTooltipOverlayClassName","nzTooltipOverlayStyle","nzTooltipMouseEnterDelay","nzTooltipMouseLeaveDelay","nzType",4,"ngIf"],["nz-tooltip","","nz-icon","",3,"nzTooltipTitle","nzTooltipPlacement","nzTooltipTrigger","nzTooltipColor","nzTooltipOverlayClassName","nzTooltipOverlayStyle","nzTooltipMouseEnterDelay","nzTooltipMouseLeaveDelay","nzType"],[1,"ant-form-item-explain","ant-form-item-explain-connected"],["role","alert",1,"ant-form-item-explain-error"],[1,"ant-form-item-extra",3,"innerHTML"]],template:function(_,P){1&_&&(n.F$t(),n.TgZ(0,"nz-form-item"),n.YNc(1,g,2,2,"div",0),n.TgZ(2,"div",1)(3,"div",2)(4,"div",3),n.Hsn(5),n.qZA()(),n.YNc(6,d,3,2,"div",4),n.YNc(7,p,1,1,"div",5),n.qZA()()),2&_&&(n.Udp("width",P.ui.width,"px"),n.ekj("ant-form-item-has-error",P.showError)("ant-form-item-with-help",P.showError)("ant-form-item-has-success","success"===P.ui.feedback)("ant-form-item-has-warning","warning"===P.ui.feedback)("ant-form-item-has-error","error"===P.ui.feedback)("ant-form-item-is-validating","validating"===P.ui.feedback)("ant-form-item-has-feedback",P.ui.feedback),n.xp6(1),n.Q6J("ngIf",P._showTitle),n.xp6(1),n.Q6J("nzSpan",P.ui.spanControl)("nzOffset",P.ui.offsetControl),n.xp6(4),n.Q6J("ngIf",!P.ui.onlyVisual&&P.showError),n.xp6(1),n.Q6J("ngIf",P.schema.description))},dependencies:[i.O5,l.w,C.t3,C.SK,E.Nx,u.Ls,z.SY],encapsulation:2,data:{animation:[e.c8]}})}return T})()},33182:(nt,I,o)=>{"use strict";o.d(I,{S:()=>h});var e=o(65879),n=o(78645),t=o(50883),i=o(48480),l=o(65584),C=o(96814);const E=["target"];function u(v,g){}function z(v,g){1&v&&e.GkF(0)}let M=0,h=(()=>{class v{constructor(d,p){this.widgetFactory=d,this.terminator=p,this.destroy$=new n.x,this.widget=null,this.footer=null}onWidgetInstanciated(d){this.widget=d;const p="_sf-"+M++,f=this.formProperty.ui;this.widget.formProperty=this.formProperty,this.widget.schema=this.formProperty.schema,this.widget.ui=f,this.widget.id=p,this.formProperty.widget=d}ngOnInit(){this.terminator.onDestroy.subscribe(()=>this.ngOnDestroy())}ngOnChanges(){const d=this.formProperty;this.ref=this.widgetFactory.createWidget(this.container,d.ui.widget||d.schema.type),this.onWidgetInstanciated(this.ref.instance)}ngOnDestroy(){const{destroy$:d}=this;d.next(),d.complete(),this.ref.destroy()}static#e=this.\u0275fac=function(p){return new(p||v)(e.Y36(i.g),e.Y36(l.v))};static#t=this.\u0275cmp=e.Xpm({type:v,selectors:[["sf-item"]],viewQuery:function(p,f){if(1&p&&e.Gf(E,7,e.s_b),2&p){let y;e.iGM(y=e.CRH())&&(f.container=y.first)}},hostVars:2,hostBindings:function(p,f){2&p&&e.ekj("sf__item",!0)},inputs:{formProperty:"formProperty",footer:"footer"},exportAs:["sfItem"],features:[e._Bn([t.kH]),e.TTD],decls:3,vars:1,consts:[["target",""],[4,"ngTemplateOutlet"]],template:function(p,f){1&p&&(e.YNc(0,u,0,0,"ng-template",null,0,e.W1O),e.YNc(2,z,1,0,"ng-container",1)),2&p&&(e.xp6(2),e.Q6J("ngTemplateOutlet",f.footer))},dependencies:[C.tP],encapsulation:2})}return v})()},47535:(nt,I,o)=>{"use strict";o.d(I,{k:()=>Q});var e=o(97582),n=o(65879),t=o(71993),i=o(63019),l=o(32181),C=o(980),E=o(78967),u=o(74648),z=o(64115),M=o(84923),h=o(38459),v=o(94128),g=o(65584),d=o(92219),p=o(18224),f=o(48480),y=o(6593),T=o(27929),x=o(62831),D=o(96814),_=o(60095),P=o(42840),S=o(70855),A=o(41958),k=o(10095),R=o(3599),$=o(90551),W=o(33182),ze=o(1202);function Y(ie,ae){1&ie&&n.Hsn(0)}function G(ie,ae){if(1&ie&&n._UZ(0,"i",13),2&ie){const xe=n.oxw(5);n.Q6J("nzType",xe._btn.submit_icon.type)("nzTheme",xe._btn.submit_icon.theme)("nzTwotoneColor",xe._btn.submit_icon.twoToneColor)("nzIconfont",xe._btn.submit_icon.iconfont)}}function V(ie,ae){if(1&ie&&n._UZ(0,"i",13),2&ie){const xe=n.oxw(6);n.Q6J("nzType",xe._btn.reset_icon.type)("nzTheme",xe._btn.reset_icon.theme)("nzTwotoneColor",xe._btn.reset_icon.twoToneColor)("nzIconfont",xe._btn.reset_icon.iconfont)}}function K(ie,ae){if(1&ie){const xe=n.EpF();n.TgZ(0,"button",14),n.NdJ("click",function(){n.CHM(xe);const Ye=n.oxw(5);return n.KtG(Ye.reset(!0))}),n.YNc(1,V,1,4,"i",11),n._uU(2),n.qZA()}if(2&ie){const xe=n.oxw(5);n.Q6J("nzType",xe._btn.reset_type)("nzSize",xe._btn.render.size)("disabled",xe.loading),n.xp6(1),n.Q6J("ngIf",xe._btn.reset_icon),n.xp6(1),n.hij(" ",xe._btn.reset," ")}}function te(ie,ae){if(1&ie&&(n.ynx(0),n.TgZ(1,"button",10),n.YNc(2,G,1,4,"i",11),n._uU(3),n.qZA(),n.YNc(4,K,3,5,"button",12),n.BQk()),2&ie){const xe=n.oxw(4);n.xp6(1),n.Q6J("nzType",xe._btn.submit_type)("nzSize",xe._btn.render.size)("nzLoading",xe.loading)("disabled",xe.liveValidate&&!xe.valid),n.xp6(1),n.Q6J("ngIf",xe._btn.submit_icon),n.xp6(1),n.hij(" ",xe._btn.submit," "),n.xp6(1),n.Q6J("ngIf",xe._btn.reset)}}function ne(ie,ae){if(1&ie&&(n.TgZ(0,"nz-form-item",6)(1,"div",7)(2,"div",8)(3,"div",9),n.YNc(4,te,5,7,"ng-container",4),n.qZA()()()()),2&ie){const xe=n.oxw(3),Me=n.MAs(1);n.Q6J("ngClass",xe._btn.render.class)("fixed-label",xe._btn.render.spanLabelFixed),n.xp6(1),n.Q6J("nzSpan",xe.btnGrid.span)("nzOffset",xe.btnGrid.offset)("nzXs",xe.btnGrid.xs)("nzSm",xe.btnGrid.sm)("nzMd",xe.btnGrid.md)("nzLg",xe.btnGrid.lg)("nzXl",xe.btnGrid.xl)("nzXXl",xe.btnGrid.xxl),n.xp6(3),n.Q6J("ngIf",xe.button)("ngIfElse",Me)}}function fe(ie,ae){if(1&ie&&(n.ynx(0),n.YNc(1,ne,5,12,"nz-form-item",5),n.BQk()),2&ie){const xe=n.oxw(2);n.xp6(1),n.Q6J("ngIf",xe._btn&&xe._btn.render)}}function re(ie,ae){if(1&ie&&n.YNc(0,fe,2,1,"ng-container",4),2&ie){const xe=n.oxw(),Me=n.MAs(1);n.Q6J("ngIf","none"!==xe.button)("ngIfElse",Me)}}function be(ie,ae){if(1&ie&&n._UZ(0,"sf-item",15),2&ie){const xe=n.oxw(),Me=n.MAs(3);n.Q6J("formProperty",xe.rootProperty)("footer",Me)}}const le=["*"];function ce(ie,ae,xe){return new v.e(ie,ae,xe)}class Q{get btnGrid(){return this._btn.render.grid}set mode(ae){switch(ae){case"search":this.layout="inline",this.firstVisual=!1,this.liveValidate=!1,this._btn&&(this._btn.submit=this._btn.search);break;case"edit":this.layout="horizontal",this.firstVisual=!1,this.liveValidate=!0,this._btn&&(this._btn.submit=this._btn.edit)}this._mode=ae}get mode(){return this._mode}get valid(){return this._valid}get value(){return this._item}getProperty(ae){return this.rootProperty?.searchProperty(ae)}getValue(ae){return this.getProperty(ae)?.value}setValue(ae,xe){const Me=this.getProperty(ae);if(!Me)throw new Error(`Invalid path: ${ae}`);return Me.resetValue(xe,!1),this}updateFeedback(ae,xe=""){return this.getProperty(ae)?.updateFeedback(xe),this}onSubmit(ae){ae.preventDefault(),ae.stopPropagation(),this.liveValidate||this.validator(),this.valid&&this.formSubmit.emit(this.value)}constructor(ae,xe,Me,Ye,q,ve,ee,Be,Re){this.formPropertyFactory=ae,this.terminator=xe,this.dom=Me,this.cdr=Ye,this.localeSrv=q,this.aclSrv=ve,this.i18nSrv=ee,this.platform=Re,this._renders=new Map,this._valid=!0,this._inited=!1,this.locale={},this.rootProperty=null,this.layout="horizontal",this.button={},this.liveValidate=!0,this.firstVisual=!0,this.onlyVisual=!1,this.compact=!1,this.loading=!1,this.disabled=!1,this.noColon=!1,this.cleanValue=!1,this.delay=!1,this.formValueChange=new n.vpe,this.formChange=new n.vpe,this.formSubmit=new n.vpe,this.formReset=new n.vpe,this.formError=new n.vpe,this.options=(0,M.f)(Be),this.liveValidate=this.options.liveValidate,this.firstVisual=this.options.firstVisual,this.autocomplete=this.options.autocomplete,this.delay=this.options.delay,this.localeSrv.change.pipe((0,t.sL)()).subscribe(()=>{this.locale=this.localeSrv.getData("sf"),this._inited&&(this.validator({emitError:!1,onlyRoot:!1}),this.coverButtonProperty(),this.cdr.markForCheck())});const ct=[this.aclSrv?this.aclSrv.change:null,this.i18nSrv?this.i18nSrv.change:null].filter(Ae=>null!=Ae);ct.length>0&&(0,i.T)(...ct).pipe((0,l.h)(()=>this._inited),(0,t.sL)()).subscribe(()=>this.refreshSchema())}fanyi(ae){return(this.i18nSrv?this.i18nSrv.fanyi(ae):"")||ae}inheritUI(ae){["optionalHelp"].filter(xe=>!!this._defUi[xe]).forEach(xe=>ae[xe]={...this._defUi[xe],...ae[xe]})}coverProperty(){const ae="horizontal"===this.layout,xe=(0,z.p$)(this.schema),{definitions:Me}=xe,Ye=(q,ve,ee,Be,Re)=>{Array.isArray(q.required)||(q.required=[]),Object.keys(q.properties).forEach(ct=>{const Mt="$"+ct,je=(0,d.u6)(q.properties[ct],Me),ot={...je.ui,...ee[Mt]},mt={...this._defUi,...Be,visibleIf:void 0,hidden:void 0,optional:void 0,optionalHelp:void 0,widget:je.type,...je.format&&this.options.formatMap[je.format],..."string"==typeof je.ui?{widget:je.ui}:null,...!je.format&&!je.ui&&Array.isArray(je.enum)&&je.enum.length>0?{widget:"select"}:null,...ot};if(Object.keys(mt).filter(we=>we.startsWith("$")).forEach(we=>delete mt[we]),ae?Be.spanLabelFixed?ot.spanLabelFixed||(mt.spanLabelFixed=Be.spanLabelFixed):(mt.spanLabel||(mt.spanLabel=typeof Be.spanLabel>"u"?5:Be.spanLabel),mt.spanControl||(mt.spanControl=typeof Be.spanControl>"u"?19:Be.spanControl),mt.offsetControl||(mt.offsetControl=typeof Be.offsetControl>"u"?null:Be.offsetControl)):(mt.spanLabel=null,mt.spanControl=null,mt.offsetControl=null),"inline"===this.layout&&delete mt.grid,"horizontal"!==this.layout&&(mt.spanLabelFixed=null),null!=mt.spanLabelFixed&&mt.spanLabelFixed>0&&(mt.spanLabel=null,mt.spanControl=null),"date"===mt.widget&&null!=mt.end){const we=q.properties[mt.end];we?we.ui={...we.ui,widget:mt.widget,hidden:!0}:mt.end=null}if(this.inheritUI(mt),mt.optionalHelp){"string"==typeof mt.optionalHelp&&(mt.optionalHelp={text:mt.optionalHelp});const we=mt.optionalHelp={text:"",icon:"question-circle",placement:"top",trigger:"hover",mouseEnterDelay:.15,mouseLeaveDelay:.1,...mt.optionalHelp};we.i18n&&(we.text=this.fanyi(we.i18n)),we.text||(mt.optionalHelp=void 0)}if(mt.i18n&&(je.title=this.fanyi(mt.i18n)),mt.descriptionI18n&&(je.description=this.fanyi(mt.descriptionI18n)),je.description&&(mt._description=this.dom.bypassSecurityTrustHtml(je.description)),mt.hidden="boolean"==typeof mt.hidden&&mt.hidden,!1===mt.hidden&&mt.acl&&this.aclSrv&&!this.aclSrv.can(mt.acl)&&(mt.hidden=!0),Re[Mt]=mt,delete je.ui,!0===mt.hidden){const we=q.required.indexOf(ct);-1!==we&&q.required.splice(we,1)}je.items&&(mt.$items={...je.items.ui,...ee[Mt],...mt.$items},Ye(je.items,je.items,ee[Mt]?.$items??{},mt.$items,mt.$items)),je.properties&&Object.keys(je.properties).length&&Ye(je,q,ee[Mt]||{},mt,mt)})};null==this.ui&&(this.ui={}),this._defUi={onlyVisual:this.options.onlyVisual,size:this.options.size,liveValidate:this.liveValidate,...this.options.ui,...xe.ui,...this.ui["*"]},!0===this.onlyVisual&&(this._defUi.onlyVisual=!0),"inline"===this.layout&&delete this._defUi.grid,this._ui={...this._defUi},Ye(xe,xe,this.ui,this.ui,this._ui),(0,d.RW)(xe,this._ui),this._schema=xe,delete xe.ui,(0,d.di)(this._ui,"cover schema & ui",this._ui,xe)}coverButtonProperty(){this._btn={render:{size:"default"},...this.locale,...this.options.button,...this.button};const ae=Object.keys(this._ui).find(Me=>Me.startsWith("$")),xe=this._btn.render;if("horizontal"===this.layout){const Me=ae?this._ui[ae]:this._defUi;xe.grid||(xe.grid={offset:Me.spanLabel,span:Me.spanControl}),null==xe.spanLabelFixed&&(xe.spanLabelFixed=Me.spanLabelFixed),!xe.class&&"number"==typeof Me.spanLabelFixed&&Me.spanLabelFixed>0&&(xe.class="text-center")}else xe.grid={};this._mode&&(this.mode=this._mode),(0,d.di)(this._ui,"button property",this._btn)}ngOnInit(){this.platform.isBrowser&&(this.validator(),this._inited=!0)}ngOnChanges(ae){if(!this.platform.isBrowser)return;const xe=["disabled","loading"];Object.keys(ae).every(Me=>xe.includes(Me))?this.cdr.detectChanges():this.delay||this.refreshSchema()}_addTpl(ae,xe){this._inited&&(this._renders.has(ae)||(this._renders.set(ae,xe),this.attachCustomRender()))}attachCustomRender(){this._renders.forEach((ae,xe)=>{const Me=this.rootProperty?.searchProperty(xe);null!=Me&&(Me.ui._render=ae)})}validator(ae={emitError:!0,onlyRoot:!0}){if(null==this.rootProperty||!this.platform.isBrowser)return!1;const xe=Ye=>{Ye._runValidation(),Ye instanceof h.I&&Ye.properties&&(Array.isArray(Ye.properties)?Ye.properties.forEach(q=>xe(q)):Object.keys(Ye.properties).forEach(q=>xe(Ye.properties[q])))};ae.onlyRoot?this.rootProperty._runValidation():xe(this.rootProperty);const Me=this.rootProperty.errors;return this._valid=!(Me&&Me.length),ae.emitError&&!this._valid&&this.formError.emit(Me),this.cdr.detectChanges(),this._valid}refreshSchema(ae,xe){if(!this.platform.isBrowser)return this;if(ae&&(this.schema=ae),xe&&(this.ui=xe),!this.schema||typeof this.schema.properties>"u")throw new Error("Invalid Schema");if(this.schema.ui&&"string"==typeof this.schema.ui)throw new Error("Don't support string with root ui property");this.schema.type="object",this._formData={...this.formData},this._inited&&this.terminator.destroy(),this.cleanRootSub(),this.coverProperty(),this.coverButtonProperty(),this.rootProperty=this.formPropertyFactory.createProperty(this._schema,this._ui,this.formData),this.attachCustomRender(),this.cdr.detectChanges(),this.reset();let Me=!0;return this.rootProperty.valueChanges.subscribe(Ye=>{this._item={...this.cleanValue?null:this.formData,...Ye.value},Me?Me=!1:(this.formChange.emit(this._item),this.formValueChange.emit({value:this._item,path:Ye.path,pathValue:Ye.pathValue}))}),this.rootProperty.errorsChanges.subscribe(Ye=>{this._valid=!(Ye&&Ye.length),this.formError.emit(Ye),this.cdr.detectChanges()}),this}reset(ae=!1){return null!=this.rootProperty&&this.platform.isBrowser?(this.rootProperty.resetValue(this.formData,!1),Promise.resolve().then(()=>this.cdr.detectChanges()),ae&&this.formReset.emit(this.value),this):this}cleanRootSub(){this.rootProperty&&(this.rootProperty.errorsChanges.unsubscribe(),this.rootProperty.valueChanges.unsubscribe())}ngOnDestroy(){this.cleanRootSub(),this.terminator.destroy()}static#e=this.\u0275fac=function(xe){return new(xe||Q)(n.Y36(v.e),n.Y36(g.v),n.Y36(y.H7),n.Y36(n.sBO),n.Y36(C.s7),n.Y36(T._8,8),n.Y36(C.Oi,8),n.Y36(E.Ri),n.Y36(x.t4))};static#t=this.\u0275cmp=n.Xpm({type:Q,selectors:[["sf"],["","sf",""]],hostVars:16,hostBindings:function(xe,Me){2&xe&&n.ekj("sf",!0)("sf__inline","inline"===Me.layout)("sf__horizontal","horizontal"===Me.layout)("sf__search","search"===Me.mode)("sf__edit","edit"===Me.mode)("sf__no-error",Me.onlyVisual)("sf__no-colon",Me.noColon)("sf__compact",Me.compact)},inputs:{layout:"layout",schema:"schema",ui:"ui",formData:"formData",button:"button",liveValidate:"liveValidate",autocomplete:"autocomplete",firstVisual:"firstVisual",onlyVisual:"onlyVisual",compact:"compact",mode:"mode",loading:"loading",disabled:"disabled",noColon:"noColon",cleanValue:"cleanValue",delay:"delay"},outputs:{formValueChange:"formValueChange",formChange:"formChange",formSubmit:"formSubmit",formReset:"formReset",formError:"formError"},exportAs:["sf"],features:[n._Bn([f.g,{provide:v.e,useFactory:ce,deps:[n.zs3,p.l,E.Ri]},g.v]),n.TTD],ngContentSelectors:le,decls:6,vars:3,consts:[["con",""],["btnTpl",""],["nz-form","",3,"nzLayout","submit"],[3,"formProperty","footer",4,"ngIf"],[4,"ngIf","ngIfElse"],["class","sf-btns",3,"ngClass","fixed-label",4,"ngIf"],[1,"sf-btns",3,"ngClass","fixed-label"],["nz-col","",1,"ant-form-item-control",3,"nzSpan","nzOffset","nzXs","nzSm","nzMd","nzLg","nzXl","nzXXl"],[1,"ant-form-item-control-input"],[1,"ant-form-item-control-input-content"],["type","submit","nz-button","","data-type","submit",3,"nzType","nzSize","nzLoading","disabled"],["nz-icon","",3,"nzType","nzTheme","nzTwotoneColor","nzIconfont",4,"ngIf"],["type","button","nz-button","","data-type","reset",3,"nzType","nzSize","disabled","click",4,"ngIf"],["nz-icon","",3,"nzType","nzTheme","nzTwotoneColor","nzIconfont"],["type","button","nz-button","","data-type","reset",3,"nzType","nzSize","disabled","click"],[3,"formProperty","footer"]],template:function(xe,Me){1&xe&&(n.F$t(),n.YNc(0,Y,1,0,"ng-template",null,0,n.W1O),n.YNc(2,re,1,2,"ng-template",null,1,n.W1O),n.TgZ(4,"form",2),n.NdJ("submit",function(q){return Me.onSubmit(q)}),n.YNc(5,be,1,2,"sf-item",3),n.qZA()),2&xe&&(n.xp6(4),n.Q6J("nzLayout",Me.layout),n.uIk("autocomplete",Me.autocomplete),n.xp6(1),n.Q6J("ngIf",Me.rootProperty))},dependencies:[D.mk,D.O5,_._Y,_.JL,_.F,P.ix,S.w,A.dQ,k.t3,k.SK,R.Lr,R.Nx,$.Ls,W.S,ze.h],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,u.yF)()],Q.prototype,"liveValidate",void 0),(0,e.gn)([(0,u.yF)()],Q.prototype,"firstVisual",void 0),(0,e.gn)([(0,u.yF)()],Q.prototype,"onlyVisual",void 0),(0,e.gn)([(0,u.yF)()],Q.prototype,"compact",void 0),(0,e.gn)([(0,u.yF)()],Q.prototype,"loading",void 0),(0,e.gn)([(0,u.yF)()],Q.prototype,"disabled",void 0),(0,e.gn)([(0,u.yF)()],Q.prototype,"noColon",void 0),(0,e.gn)([(0,u.yF)()],Q.prototype,"cleanValue",void 0),(0,e.gn)([(0,u.yF)()],Q.prototype,"delay",void 0)},65584:(nt,I,o)=>{"use strict";o.d(I,{v:()=>n});var e=o(78645);class n{constructor(){this.onDestroy=new e.x}destroy(){this.onDestroy.next(!0)}}},92219:(nt,I,o)=>{"use strict";o.d(I,{$2:()=>d,AM:()=>E,P$:()=>f,RW:()=>h,Yu:()=>y,di:()=>u,fp:()=>C,u6:()=>M,vn:()=>p});var e=o(37398),n=o(22096),t=o(74648),i=o(64115),l=o(60699);function C(x){return null==x}function E(x,D){return(0,t.sw)(x,D)}function u(x,...D){}function M(x,D={}){if(x.hasOwnProperty("$ref")){const _=function z(x,D){const _=/^#\/definitions\/(.*)$/.exec(x);if(_&&_[1]){const P=_[1].split(l.j);let S=D;for(let A of P){if(A=A.replace(/~1/g,l.j).replace(/~0/g,"~"),!S.hasOwnProperty(A))throw new Error(`Could not find a definition for ${x}.`);S=S[A]}return S}throw new Error(`Could not find a definition for ${x}.`)}(x.$ref,D),{$ref:P,...S}=x;return M({..._,...S},D)}return x}function h(x,D){const _=(P,S)=>{(function v(x,D){if(!x.hasOwnProperty("if")||!x.hasOwnProperty("then"))return null;if(!x.if.properties)throw new Error("if: does not contain 'properties'");const _=Object.keys(x.properties),P=Object.keys(x.if.properties);g(_,P),g(_,x.then.required),x.required=x.required.concat(x.then.required);const S=x.hasOwnProperty("else");S&&(g(_,x.else.required),x.required=x.required.concat(x.else.required));const A={},k={};P.forEach(R=>{const $=x.if.properties[R].enum;A[R]=$,S&&(k[R]=W=>!$.includes(W))}),x.then.required.forEach(R=>D[`$${R}`].visibleIf=A),S&&x.else.required.forEach(R=>D[`$${R}`].visibleIf=k)})(P,S),Object.keys(P.properties).forEach(A=>{const k=P.properties[A],R=`$${A}`;k.items&&_(k.items,S[R].$items),k.properties&&_(k,S[R])})};_(x,D)}function g(x,D){D.forEach(_=>{if(!x.includes(_))throw new Error(`if: properties does not contain '${_}'`)})}function d(x,D){if(!Array.isArray(D))return x;const _=ze=>ze.reduce((Y,G)=>(Y[G]=!0,Y),{}),P=ze=>`property [${ze.join("', '")}]`,S=_(x),A=_(D),k=D.filter(ze=>"*"!==ze&&!S[ze]);if(k.length)throw new Error(`ui schema order list contains extraneous ${P(k)}`);const R=x.filter(ze=>!A[ze]),$=D.indexOf("*");if(-1===$){if(R.length)throw new Error(`ui schema order list does not contain ${P(R)}`);return D}if($!==D.lastIndexOf("*"))throw new Error("ui schema order list contains more than one wildcard item");const W=[...D];return W.splice($,1,...R),W}function p(x,D,_){return C(x)||!Array.isArray(x)||0===x.length?[]:("object"!=typeof x[0]&&(x=x.map(P=>({label:P,value:P}))),D&&(Array.isArray(D)||(D=[D]),x.forEach(P=>{~D.indexOf(P.value)&&(P.checked=!0)})),_&&x.forEach(P=>P.disabled=!0),x)}function f(x,D,_){return p((0,i.p$)(x||[]),D,_)}function y(x,D,_,P){return"function"==typeof D.asyncData?D.asyncData(P).pipe((0,e.U)(S=>p(S,_,x.readOnly))):(0,n.of)(f(x.enum,_,x.readOnly))}},18224:(nt,I,o)=>{"use strict";o.d(I,{l:()=>z,p:()=>M});var e=o(34258),n=o.n(e),t=o(56226),i=o.n(t),l=o(78967),C=o(59927),E=o(84923),u=o(65879);let z=(()=>{class h{static#e=this.\u0275fac=function(d){return new(d||h)};static#t=this.\u0275prov=u.Yz7({token:h,factory:h.\u0275fac})}return h})(),M=(()=>{class h extends z{constructor(g,d){if(super(),this.ngZone=d,"object"!=typeof document||!document)return;this.options=(0,E.f)(g);const p=this.options.ajv||{};this.ngZone.runOutsideAngular(()=>{this.ajv=new(n())({allErrors:!0,loopEnum:50,...p,formats:{"data-url":/^data:([a-z]+\/[a-z0-9-+.]+)?;name=(.*);base64,(.*)$/,color:C.mL.color,mobile:C.mL.mobile,"id-card":C.mL.idCard,...p.formats}}),i()(this.ajv)})}createValidatorFn(g,d){const p=[...this.options.ingoreKeywords,...d.ingoreKeywords||[]];return f=>{try{this.ngZone.runOutsideAngular(()=>this.ajv.validate(g,f))}catch{}let y=this.ajv.errors;return this.options&&p&&y&&(y=y.filter(T=>-1===p.indexOf(T.keyword))),y}}static#e=this.\u0275fac=function(d){return new(d||h)(u.LFG(l.Ri),u.LFG(u.R0b))};static#t=this.\u0275prov=u.Yz7({token:h,factory:h.\u0275fac})}return h})()},48480:(nt,I,o)=>{"use strict";o.d(I,{B:()=>n,g:()=>t});var e=o(65879);class n{constructor(){this._widgets={}}get widgets(){return this._widgets}setDefault(l){this.defaultWidget=l}register(l,C){this._widgets[l]=C}has(l){return this._widgets.hasOwnProperty(l)}getType(l){return this.has(l)?this._widgets[l]:this.defaultWidget}}let t=(()=>{class i{constructor(C){this.registry=C}createWidget(C,E){this.registry.has(E);const u=this.registry.getType(E);return C.createComponent(u)}static#e=this.\u0275fac=function(E){return new(E||i)(e.LFG(n))};static#t=this.\u0275prov=e.Yz7({token:i,factory:i.\u0275fac})}return i})()},98498:(nt,I,o)=>{"use strict";o.d(I,{$j:()=>z,H_:()=>u,VV:()=>h,VY:()=>M});var e=o(65879),n=o(6593),t=o(59773),i=o(33182),l=o(47535),C=o(92219);let E=(()=>{class v{get cls(){return this.ui.class||""}get disabled(){return!(!0!==this.schema.readOnly&&!this.sfComp.disabled)}get l(){return this.formProperty.root.widget.sfComp.locale}get oh(){return this.ui.optionalHelp}get dom(){return this.injector.get(n.H7)}get cleanValue(){return this.sfComp?.cleanValue}constructor(d,p,f,y){this.cd=d,this.injector=p,this.sfItemComp=f,this.sfComp=y,this.showError=!1,this.id=""}ngAfterViewInit(){this.formProperty.errorsChanges.pipe((0,t.R)(this.sfItemComp.destroy$)).subscribe(d=>{if(null==d)return;(0,C.di)(this.ui,"errorsChanges",this.formProperty.path,d);const p=this.sfComp?.firstVisual;(p||!p&&this.sfComp?._inited)&&(this.showError=d.length>0,this.error=this.showError?d[0].message:"",this.cd.detectChanges())}),this.afterViewInit()}setValue(d){this.formProperty.setValue(d,!1),(0,C.di)(this.ui,"valueChanges",this.formProperty.path,this.formProperty)}get value(){return this.formProperty.value}detectChanges(d=!1){d?this.cd.markForCheck():this.formProperty.root.widget?.cd.markForCheck()}static#e=this.\u0275fac=function(p){return new(p||v)(e.Y36(e.sBO),e.Y36(e.zs3),e.Y36(i.S),e.Y36(l.k))};static#t=this.\u0275dir=e.lG2({type:v,hostVars:2,hostBindings:function(p,f){2&p&&e.Tol(f.cls)}})}return v})(),u=(()=>{class v extends E{reset(d){}afterViewInit(){}static#e=this.\u0275fac=function(){let d;return function(f){return(d||(d=e.n5z(v)))(f||v)}}();static#t=this.\u0275dir=e.lG2({type:v,features:[e.qOj]})}return v})(),z=(()=>{class v extends E{reset(d){}afterViewInit(){}static#e=this.\u0275fac=function(){let d;return function(f){return(d||(d=e.n5z(v)))(f||v)}}();static#t=this.\u0275dir=e.lG2({type:v,features:[e.qOj]})}return v})(),M=(()=>{class v extends E{reset(d){}afterViewInit(){}ngAfterViewInit(){this.formProperty.errorsChanges.pipe((0,t.R)(this.sfItemComp.destroy$)).subscribe(()=>this.cd.detectChanges())}static#e=this.\u0275fac=function(){let d;return function(f){return(d||(d=e.n5z(v)))(f||v)}}();static#t=this.\u0275dir=e.lG2({type:v,features:[e.qOj]})}return v})(),h=(()=>{class v extends E{reset(d){}afterViewInit(){}ngAfterViewInit(){this.formProperty.errorsChanges.pipe((0,t.R)(this.sfItemComp.destroy$)).subscribe(()=>this.cd.detectChanges())}static#e=this.\u0275fac=function(){let d;return function(f){return(d||(d=e.n5z(v)))(f||v)}}();static#t=this.\u0275dir=e.lG2({type:v,features:[e.qOj]})}return v})()},84212:(nt,I,o)=>{"use strict";o.d(I,{L:()=>D});var e=o(98498),n=o(65879),t=o(96814),i=o(42840),l=o(70855),C=o(41958),E=o(82962),u=o(10095),z=o(3599),M=o(90551),h=o(96109),v=o(33182);function g(_,P){if(1&_&&n._UZ(0,"i",12),2&_){const S=n.oxw(2);n.Q6J("nzTooltipTitle",S.oh.text)("nzTooltipPlacement",S.oh.placement)("nzTooltipTrigger",S.oh.trigger)("nzTooltipOverlayClassName",S.oh.overlayClassName)("nzTooltipOverlayStyle",S.oh.overlayStyle)("nzTooltipMouseEnterDelay",S.oh.mouseEnterDelay)("nzTooltipMouseLeaveDelay",S.oh.mouseLeaveDelay)("nzType",S.oh.icon)}}function d(_,P){if(1&_){const S=n.EpF();n.TgZ(0,"div",7)(1,"label"),n._uU(2),n.TgZ(3,"span",8),n._uU(4),n.YNc(5,g,1,8,"i",9),n.qZA()(),n.TgZ(6,"div",10)(7,"button",11),n.NdJ("click",function(){n.CHM(S);const k=n.oxw();return n.KtG(k.addItem())}),n.qZA()()()}if(2&_){const S=n.oxw();n.Q6J("nzSpan",S.ui.spanLabel),n.xp6(1),n.ekj("ant-form-item-required",S.ui.required),n.xp6(1),n.hij(" ",S.schema.title," "),n.xp6(2),n.hij(" ",S.ui.optional," "),n.xp6(1),n.Q6J("ngIf",S.oh),n.xp6(2),n.Q6J("nzType",S.addType)("disabled",S.addDisabled)("innerHTML",S.addTitle,n.oJD)}}function p(_,P){if(1&_){const S=n.EpF();n.TgZ(0,"span",17),n.NdJ("click",function(){n.CHM(S);const k=n.oxw(2).index,R=n.oxw();return n.KtG(R.removeItem(k))}),n._UZ(1,"i",18),n.qZA()}if(2&_){const S=n.oxw(3);n.uIk("title",S.removeTitle)}}function f(_,P){if(1&_&&(n.TgZ(0,"div",14)(1,"nz-card"),n._UZ(2,"sf-item",15),n.YNc(3,p,2,1,"span",16),n.qZA()()),2&_){const S=n.oxw(),A=S.index,k=S.$implicit,R=n.oxw();n.Q6J("nzSpan",R.arraySpan),n.uIk("data-index",A),n.xp6(2),n.Q6J("formProperty",k),n.xp6(1),n.Q6J("ngIf",R.showRemove)}}function y(_,P){if(1&_&&(n.ynx(0),n.YNc(1,f,4,4,"div",13),n.BQk()),2&_){const S=P.$implicit;n.xp6(1),n.Q6J("ngIf",S.visible&&!S.ui.hidden)}}function T(_,P){if(1&_&&(n.TgZ(0,"div",19),n._uU(1),n.qZA()),2&_){const S=n.oxw();n.xp6(1),n.Oqu(S.error)}}function x(_,P){if(1&_&&n._UZ(0,"div",20),2&_){const S=n.oxw();n.Q6J("innerHTML",S.ui._description,n.oJD)}}let D=(()=>{class _ extends e.VY{constructor(){super(...arguments),this.arraySpan=8}get addDisabled(){return this.disabled||null!=this.schema.maxItems&&this.formProperty.properties.length>=this.schema.maxItems}get showRemove(){return!(this.disabled||!this.removeTitle||null!=this.schema.minItems&&this.formProperty.properties.length<=this.schema.minItems)}ngOnInit(){const{grid:S,addTitle:A,addType:k,removable:R,removeTitle:$}=this.ui;S&&S.arraySpan&&(this.arraySpan=S.arraySpan),this.addTitle=this.dom.bypassSecurityTrustHtml(A||this.l.addText),this.addType=k||"dashed",this.removeTitle=!1===R?null:$||this.l.removeText}reValid(){this.formProperty.updateValueAndValidity({onlySelf:!1,emitValueEvent:!1,emitValidator:!0})}addItem(){const S=this.formProperty.add({});this.reValid(),this.ui.add&&this.ui.add(S)}removeItem(S){this.formProperty.remove(S),this.reValid(),this.ui.remove&&this.ui.remove(S)}static#e=this.\u0275fac=function(){let S;return function(k){return(S||(S=n.n5z(_)))(k||_)}}();static#t=this.\u0275cmp=n.Xpm({type:_,selectors:[["sf-array"]],hostVars:2,hostBindings:function(A,k){2&A&&n.ekj("sf__array",!0)},features:[n.qOj],decls:8,vars:10,consts:[["nz-col","","class","ant-form-item-label",3,"nzSpan",4,"ngIf"],["nz-col","",1,"ant-form-item-control-wrapper",3,"nzSpan","nzOffset"],[1,"ant-form-item-control"],["nz-row","",1,"sf__array-container"],[4,"ngFor","ngForOf"],["class","ant-form-explain",4,"ngIf"],["class","ant-form-extra",3,"innerHTML",4,"ngIf"],["nz-col","",1,"ant-form-item-label",3,"nzSpan"],[1,"sf__optional"],["nz-tooltip","","nz-icon","",3,"nzTooltipTitle","nzTooltipPlacement","nzTooltipTrigger","nzTooltipOverlayClassName","nzTooltipOverlayStyle","nzTooltipMouseEnterDelay","nzTooltipMouseLeaveDelay","nzType",4,"ngIf"],[1,"sf__array-add"],["type","button","nz-button","",3,"nzType","disabled","innerHTML","click"],["nz-tooltip","","nz-icon","",3,"nzTooltipTitle","nzTooltipPlacement","nzTooltipTrigger","nzTooltipOverlayClassName","nzTooltipOverlayStyle","nzTooltipMouseEnterDelay","nzTooltipMouseLeaveDelay","nzType"],["nz-col","","class","sf__array-item",3,"nzSpan",4,"ngIf"],["nz-col","",1,"sf__array-item",3,"nzSpan"],[3,"formProperty"],["class","sf__array-remove",3,"click",4,"ngIf"],[1,"sf__array-remove",3,"click"],["nz-icon","","nzType","delete"],[1,"ant-form-explain"],[1,"ant-form-extra",3,"innerHTML"]],template:function(A,k){1&A&&(n.TgZ(0,"nz-form-item"),n.YNc(1,d,8,9,"div",0),n.TgZ(2,"div",1)(3,"div",2)(4,"div",3),n.YNc(5,y,2,1,"ng-container",4),n.qZA(),n.YNc(6,T,2,1,"div",5),n.YNc(7,x,1,1,"div",6),n.qZA()()()),2&A&&(n.ekj("ant-form-item-with-help",k.showError),n.xp6(1),n.Q6J("ngIf",k.schema.title),n.xp6(1),n.Q6J("nzSpan",k.ui.spanControl)("nzOffset",k.ui.offsetControl),n.xp6(1),n.ekj("has-error",k.showError),n.xp6(2),n.Q6J("ngForOf",k.formProperty.properties),n.xp6(1),n.Q6J("ngIf",!k.ui.onlyVisual&&k.showError),n.xp6(1),n.Q6J("ngIf",k.schema.description))},dependencies:[t.sg,t.O5,i.ix,l.w,C.dQ,E.bd,u.t3,u.SK,z.Nx,M.Ls,h.SY,v.S],encapsulation:2})}return _})()},86918:(nt,I,o)=>{"use strict";o.d(I,{N:()=>y});var e=o(60095),n=o(83620),t=o(27921),i=o(21631),l=o(37398),C=o(59773),E=o(22096),u=o(92219),z=o(98498),M=o(65879),h=o(96814),v=o(95717),g=o(20824),d=o(93355);function p(T,x){if(1&T&&(M.TgZ(0,"nz-auto-option",5),M._uU(1),M.qZA()),2&T){const D=x.$implicit;M.Q6J("nzValue",D)("nzLabel",D.label),M.xp6(1),M.hij(" ",D.label," ")}}const f=function(){return{}};let y=(()=>{class T extends z.$j{constructor(){super(...arguments),this.i={},this.typing="",this.isAsync=!1,this.fixData=[]}updateValue(D){this.typing=D.nzLabel;const _=D.nzValue;this.setValue(_.value),this.ui.change&&this.ui.change(D,_)}_setValue(D){let _=D.toString();"string"!=typeof D&&(_=D.value),this.setValue(_)}afterViewInit(){const{backfill:D,defaultActiveFirstOption:_,nzWidth:P,filterOption:S,asyncData:A,compareWith:k}=this.ui;this.i={backfill:(0,u.AM)(D,!1),defaultActiveFirstOption:(0,u.AM)(_,!0),width:P||void 0,compareWith:k||((ze,Y)=>ze===Y)};let R=S??!0;"boolean"==typeof R&&(R=(ze,Y)=>Y.label.toLowerCase().indexOf((ze||"").toLowerCase())>-1),this.filterOption=R,this.isAsync=!!A;const $=+(this.ui.debounceTime||0),W=Math.max(0,this.isAsync?Math.max(50,$):$);this.list=this.ngModel.valueChanges.pipe((0,n.b)(W),(0,t.O)(""),(0,i.z)(ze=>this.isAsync?A(ze):this.filterData(ze)),(0,l.U)(ze=>(0,u.vn)(ze,null,this.schema.readOnly)))}reset(D){this.isAsync?this.ui.asyncData(D).pipe((0,C.R)(this.sfItemComp.destroy$),(0,l.U)(_=>(0,u.vn)(_,null,this.schema.readOnly))).subscribe(_=>{this.typing=_.find(P=>P.value===this.value)?.label??""}):this.fixData="email"===(this.typing=D,this.ui.type)?(0,u.P$)(this.schema.enum||this.formProperty.options.uiEmailSuffixes,null,this.schema.readOnly):(0,u.P$)(this.schema.enum,D,this.schema.readOnly)}filterData(D){return"email"===this.ui.type?this.addEmailSuffix(D):(0,E.of)(this.fixData.filter(_=>this.filterOption(D,_)))}addEmailSuffix(D){return(0,E.of)(!D||~D.indexOf("@")?[]:this.fixData.map(_=>`${D}@${_.label}`))}static#e=this.\u0275fac=function(){let D;return function(P){return(D||(D=M.n5z(T)))(P||T)}}();static#t=this.\u0275cmp=M.Xpm({type:T,selectors:[["sf-autocomplete"]],viewQuery:function(_,P){if(1&_&&M.Gf(e.On,5),2&_){let S;M.iGM(S=M.CRH())&&(P.ngModel=S.first)}},features:[M.qOj],decls:6,vars:24,consts:[[3,"id","schema","ui","showError","error","showTitle"],["nz-input","","autocomplete","off",3,"nzAutocomplete","disabled","nzSize","ngModel","ngModelChange"],[3,"nzBackfill","nzDefaultActiveFirstOption","nzWidth","nzOverlayStyle","nzOverlayClassName","compareWith","selectionChange"],["auto",""],[3,"nzValue","nzLabel",4,"ngFor","ngForOf"],[3,"nzValue","nzLabel"]],template:function(_,P){if(1&_&&(M.TgZ(0,"sf-item-wrap",0)(1,"input",1),M.NdJ("ngModelChange",function(A){return P.typing=A})("ngModelChange",function(A){return P._setValue(A)}),M.qZA(),M.TgZ(2,"nz-autocomplete",2,3),M.NdJ("selectionChange",function(A){return P.updateValue(A)}),M.YNc(4,p,2,3,"nz-auto-option",4),M.ALo(5,"async"),M.qZA()()),2&_){const S=M.MAs(3);M.Q6J("id",P.id)("schema",P.schema)("ui",P.ui)("showError",P.showError)("error",P.error)("showTitle",P.schema.title),M.xp6(1),M.Q6J("nzAutocomplete",S)("disabled",P.disabled)("nzSize",P.ui.size)("ngModel",P.typing),M.uIk("id",P.id)("disabled",P.disabled)("maxLength",P.schema.maxLength||null)("placeholder",P.ui.placeholder),M.xp6(1),M.Q6J("nzBackfill",P.i.backfill)("nzDefaultActiveFirstOption",P.i.defaultActiveFirstOption)("nzWidth",P.i.width)("nzOverlayStyle",P.ui.overlayStyle||M.DdM(23,f))("nzOverlayClassName",P.ui.overlayClassName||"")("compareWith",P.i.compareWith),M.xp6(2),M.Q6J("ngForOf",M.lcZ(5,21,P.list))}},dependencies:[h.sg,e.Fj,e.JJ,e.On,v.gi,v.NB,v.Pf,g.Zp,d.i,h.Ov],encapsulation:2})}return T})()},38140:(nt,I,o)=>{"use strict";o.d(I,{H:()=>C});var e=o(98498),n=o(65879),t=o(60095),i=o(96494),l=o(93355);let C=(()=>{class E extends e.$j{static#e=this.\u0275fac=function(){let z;return function(h){return(z||(z=n.n5z(E)))(h||E)}}();static#t=this.\u0275cmp=n.Xpm({type:E,selectors:[["sf-boolean"]],features:[n.qOj],decls:2,vars:12,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"ngModel","nzDisabled","nzSize","nzCheckedChildren","nzUnCheckedChildren","nzLoading","ngModelChange"]],template:function(M,h){1&M&&(n.TgZ(0,"sf-item-wrap",0)(1,"nz-switch",1),n.NdJ("ngModelChange",function(g){return h.setValue(g)}),n.qZA()()),2&M&&(n.Q6J("id",h.id)("schema",h.schema)("ui",h.ui)("showError",h.showError)("error",h.error)("showTitle",h.schema.title),n.xp6(1),n.Q6J("ngModel",h.value)("nzDisabled",h.disabled)("nzSize",h.ui.size)("nzCheckedChildren",h.ui.checkedChildren)("nzUnCheckedChildren",h.ui.unCheckedChildren)("nzLoading",h.ui.loading))},dependencies:[t.JJ,t.On,i.i,l.i],encapsulation:2})}return E})()},40712:(nt,I,o)=>{"use strict";o.d(I,{M:()=>E});var e=o(92219),n=o(98498),t=o(65879),i=o(60095),l=o(25923),C=o(93355);let E=(()=>{class u extends n.$j{constructor(){super(...arguments),this.data=[]}ngOnInit(){const{clearText:M,showArrow:h,showInput:v,triggerAction:g,asyncData:d}=this.ui;this.clearText=M||"\u6e05\u9664",this.showArrow=(0,e.AM)(h,!0),this.showInput=(0,e.AM)(v,!0),this.triggerAction=g||["click"],d&&(this.loadData=(p,f)=>d(p,f,this).then(()=>this.detectChanges()))}reset(M){(0,e.Yu)(this.schema,{},M).subscribe(h=>{this.data=h,this.detectChanges()})}_visibleChange(M){this.ui.visibleChange&&this.ui.visibleChange(M)}_change(M){this.setValue(M),this.ui.change&&this.ui.change(M)}_selectionChange(M){this.ui.selectionChange&&this.ui.selectionChange(M)}_clear(){this.ui.clear&&this.ui.clear()}static#e=this.\u0275fac=function(){let M;return function(v){return(M||(M=t.n5z(u)))(v||u)}}();static#t=this.\u0275cmp=t.Xpm({type:u,selectors:[["sf-cascader"]],features:[t.qOj],decls:2,vars:26,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"nzDisabled","nzSize","ngModel","nzOptions","nzAllowClear","nzAutoFocus","nzChangeOn","nzChangeOnSelect","nzColumnClassName","nzExpandTrigger","nzMenuClassName","nzMenuStyle","nzNotFoundContent","nzLabelProperty","nzValueProperty","nzLoadData","nzPlaceHolder","nzShowArrow","nzShowInput","nzShowSearch","ngModelChange","nzClear","nzVisibleChange","nzSelectionChange"]],template:function(h,v){1&h&&(t.TgZ(0,"sf-item-wrap",0)(1,"nz-cascader",1),t.NdJ("ngModelChange",function(d){return v._change(d)})("nzClear",function(){return v._clear()})("nzVisibleChange",function(d){return v._visibleChange(d)})("nzSelectionChange",function(d){return v._selectionChange(d)}),t.qZA()()),2&h&&(t.Q6J("id",v.id)("schema",v.schema)("ui",v.ui)("showError",v.showError)("error",v.error)("showTitle",v.schema.title),t.xp6(1),t.Q6J("nzDisabled",v.disabled)("nzSize",v.ui.size)("ngModel",v.value)("nzOptions",v.data)("nzAllowClear",v.ui.allowClear)("nzAutoFocus",v.ui.autoFocus)("nzChangeOn",v.ui.changeOn)("nzChangeOnSelect",v.ui.changeOnSelect)("nzColumnClassName",v.ui.columnClassName)("nzExpandTrigger",v.ui.expandTrigger)("nzMenuClassName",v.ui.menuClassName)("nzMenuStyle",v.ui.menuStyle)("nzNotFoundContent",v.ui.notFoundContent)("nzLabelProperty",v.ui.labelProperty||"label")("nzValueProperty",v.ui.valueProperty||"value")("nzLoadData",v.loadData)("nzPlaceHolder",v.ui.placeholder)("nzShowArrow",v.showArrow)("nzShowInput",v.showInput)("nzShowSearch",v.ui.showSearch))},dependencies:[i.JJ,i.On,l.D4,C.i],encapsulation:2})}return u})()},98685:(nt,I,o)=>{"use strict";o.d(I,{O:()=>S});var e=o(92219),n=o(98498),t=o(65879),i=o(96814),l=o(60095),C=o(70855),E=o(62612),u=o(10095),z=o(90551),M=o(96109),h=o(93355);function v(A,k){if(1&A){const R=t.EpF();t.TgZ(0,"label",4),t.NdJ("ngModelChange",function(W){t.CHM(R);const ze=t.oxw(2);return t.KtG(ze.allChecked=W)})("ngModelChange",function(){t.CHM(R);const W=t.oxw(2);return t.KtG(W.onAllChecked())}),t._uU(1),t.qZA()}if(2&A){const R=t.oxw(2);t.Q6J("ngModel",R.allChecked)("nzIndeterminate",R.indeterminate),t.xp6(1),t.hij(" ",R.ui.checkAllText||R.l.checkAllText," ")}}function g(A,k){if(1&A&&t.YNc(0,v,2,3,"label",3),2&A){const R=t.oxw();t.Q6J("ngIf",R.ui.checkAll)}}function d(A,k){if(1&A&&t._UZ(0,"i",8),2&A){const R=t.oxw(2);t.Q6J("nzTooltipTitle",R.oh.text)("nzTooltipPlacement",R.oh.placement)("nzTooltipTrigger",R.oh.trigger)("nzTooltipOverlayClassName",R.oh.overlayClassName)("nzTooltipOverlayStyle",R.oh.overlayStyle)("nzTooltipMouseEnterDelay",R.oh.mouseEnterDelay)("nzTooltipMouseLeaveDelay",R.oh.mouseLeaveDelay)("nzType",R.oh.icon)}}function p(A,k){if(1&A){const R=t.EpF();t.ynx(0),t.TgZ(1,"label",5),t.NdJ("ngModelChange",function(W){t.CHM(R);const ze=t.oxw();return t.KtG(ze._setValue(W))}),t._uU(2),t.TgZ(3,"span",6),t._uU(4),t.YNc(5,d,1,8,"i",7),t.qZA()(),t.BQk()}if(2&A){const R=t.oxw();t.xp6(1),t.Q6J("nzDisabled",R.disabled)("ngModel",R.value),t.xp6(1),t.hij(" ",R.schema.title," "),t.xp6(2),t.hij(" ",R.ui.optional," "),t.xp6(1),t.Q6J("ngIf",R.oh)}}function f(A,k){}function y(A,k){if(1&A){const R=t.EpF();t.ynx(0),t.YNc(1,f,0,0,"ng-template",9),t.TgZ(2,"nz-checkbox-group",10),t.NdJ("ngModelChange",function(){t.CHM(R);const W=t.oxw(2);return t.KtG(W.notifySet())}),t.qZA(),t.BQk()}if(2&A){const R=t.oxw(2),$=t.MAs(1);t.xp6(1),t.Q6J("ngTemplateOutlet",$),t.xp6(1),t.Q6J("ngModel",R.data)}}function T(A,k){}function x(A,k){if(1&A&&(t.TgZ(0,"div",15),t.YNc(1,T,0,0,"ng-template",9),t.qZA()),2&A){const R=t.oxw(3),$=t.MAs(1);t.Q6J("nzSpan",R.grid_span),t.xp6(1),t.Q6J("ngTemplateOutlet",$)}}function D(A,k){if(1&A&&(t.TgZ(0,"div",15)(1,"label",16),t._uU(2),t.qZA()()),2&A){const R=k.$implicit,$=t.oxw(3);t.Q6J("nzSpan",$.grid_span),t.xp6(1),t.Q6J("nzValue",R.value)("ngModel",R.checked)("nzDisabled",R.disabled),t.xp6(1),t.Oqu(R.label)}}function _(A,k){if(1&A){const R=t.EpF();t.ynx(0),t.TgZ(1,"nz-checkbox-wrapper",11),t.NdJ("nzOnChange",function(W){t.CHM(R);const ze=t.oxw(2);return t.KtG(ze.groupInGridChange(W))}),t.TgZ(2,"div",12),t.YNc(3,x,2,2,"div",13),t.YNc(4,D,3,5,"div",14),t.qZA()(),t.BQk()}if(2&A){const R=t.oxw(2);t.xp6(3),t.Q6J("ngIf",R.ui.checkAll),t.xp6(1),t.Q6J("ngForOf",R.data)}}function P(A,k){if(1&A&&(t.ynx(0),t.YNc(1,y,3,2,"ng-container",2),t.YNc(2,_,5,2,"ng-container",2),t.BQk()),2&A){const R=t.oxw();t.xp6(1),t.Q6J("ngIf",0===R.grid_span),t.xp6(1),t.Q6J("ngIf",0!==R.grid_span)}}let S=(()=>{class A extends n.$j{constructor(){super(...arguments),this.data=[],this.allChecked=!1,this.indeterminate=!1,this.labelTitle="",this.inited=!1}reset(R){this.inited=!1,(0,e.Yu)(this.schema,this.ui,R).subscribe($=>{this.data=$,this.allChecked=!1,this.indeterminate=!1,this.labelTitle=0===$.length?"":this.schema.title;const{span:W}=this.ui;this.grid_span=W&&W>0?W:0,this.updateAllChecked(),this.inited=!0,this.detectChanges()})}_setValue(R){this.setValue(R),this.detectChanges(),this.notifyChange(R)}notifySet(){const R=this.data.filter($=>$.checked);this.updateAllChecked().setValue(R.map($=>$.value)),this.notifyChange(R)}groupInGridChange(R){this.data.forEach($=>$.checked=-1!==R.indexOf($.value)),this.notifySet()}onAllChecked(){this.data.forEach(R=>R.checked=this.allChecked),this.notifySet()}updateAllChecked(){return this.data.every(R=>!0!==R.checked)?(this.allChecked=!1,this.indeterminate=!1):this.data.every(R=>!0===R.checked)?(this.allChecked=!0,this.indeterminate=!1):this.indeterminate=!0,this.detectChanges(),this}notifyChange(R){this.ui.change&&this.ui.change(R)}static#e=this.\u0275fac=function(){let R;return function(W){return(R||(R=t.n5z(A)))(W||A)}}();static#t=this.\u0275cmp=t.Xpm({type:A,selectors:[["sf-checkbox"]],features:[t.qOj],decls:5,vars:9,consts:[["all",""],[3,"id","schema","ui","showError","error","showTitle","title"],[4,"ngIf"],["nz-checkbox","","class","sf__checkbox-all mr-sm",3,"ngModel","nzIndeterminate","ngModelChange",4,"ngIf"],["nz-checkbox","",1,"sf__checkbox-all","mr-sm",3,"ngModel","nzIndeterminate","ngModelChange"],["nz-checkbox","",3,"nzDisabled","ngModel","ngModelChange"],[1,"sf__optional"],["nz-tooltip","","nz-icon","",3,"nzTooltipTitle","nzTooltipPlacement","nzTooltipTrigger","nzTooltipOverlayClassName","nzTooltipOverlayStyle","nzTooltipMouseEnterDelay","nzTooltipMouseLeaveDelay","nzType",4,"ngIf"],["nz-tooltip","","nz-icon","",3,"nzTooltipTitle","nzTooltipPlacement","nzTooltipTrigger","nzTooltipOverlayClassName","nzTooltipOverlayStyle","nzTooltipMouseEnterDelay","nzTooltipMouseLeaveDelay","nzType"],[3,"ngTemplateOutlet"],[3,"ngModel","ngModelChange"],[1,"sf__checkbox-list",3,"nzOnChange"],["nz-row",""],["nz-col","",3,"nzSpan",4,"ngIf"],["nz-col","",3,"nzSpan",4,"ngFor","ngForOf"],["nz-col","",3,"nzSpan"],["nz-checkbox","",3,"nzValue","ngModel","nzDisabled"]],template:function($,W){1&$&&(t.YNc(0,g,1,1,"ng-template",null,0,t.W1O),t.TgZ(2,"sf-item-wrap",1),t.YNc(3,p,6,5,"ng-container",2),t.YNc(4,P,3,2,"ng-container",2),t.qZA()),2&$&&(t.xp6(2),t.Q6J("id",W.id)("schema",W.schema)("ui",W.ui)("showError",W.showError)("error",W.error)("showTitle",!0)("title",W.labelTitle),t.xp6(1),t.Q6J("ngIf",W.inited&&0===W.data.length),t.xp6(1),t.Q6J("ngIf",W.inited&&W.data.length>0))},dependencies:[i.sg,i.O5,i.tP,l.JJ,l.On,C.w,E.Ie,E.ub,E.EZ,u.t3,u.SK,z.Ls,M.SY,h.i],encapsulation:2})}return A})()},29993:(nt,I,o)=>{"use strict";o.d(I,{k:()=>E});var e=o(98498),n=o(65879),t=o(96814),i=o(93355);function l(u,z){}const C=function(u,z,M){return{$implicit:u,schema:z,ui:M}};let E=(()=>{class u extends e.$j{static#e=this.\u0275fac=function(){let M;return function(v){return(M||(M=n.n5z(u)))(v||u)}}();static#t=this.\u0275cmp=n.Xpm({type:u,selectors:[["sf-custom"]],features:[n.qOj],decls:2,vars:12,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(h,v){1&h&&(n.TgZ(0,"sf-item-wrap",0),n.YNc(1,l,0,0,"ng-template",1),n.qZA()),2&h&&(n.Q6J("id",v.id)("schema",v.schema)("ui",v.ui)("showError",v.showError)("error",v.error)("showTitle",v.schema.title),n.xp6(1),n.Q6J("ngTemplateOutlet",v.ui._render)("ngTemplateOutletContext",n.kEZ(8,C,v,v.schema,v.ui)))},dependencies:[t.tP,i.i],encapsulation:2})}return u})()},58435:(nt,I,o)=>{"use strict";o.d(I,{g:()=>i});var e=o(60699),n=o(65879),t=o(47535);let i=(()=>{class l{constructor(E,u){this.templateRef=E,this.table=u}ngOnInit(){this.table._addTpl(this.path.startsWith(e.j)?this.path:e.j+this.path,this.templateRef)}static#e=this.\u0275fac=function(u){return new(u||l)(n.Y36(n.Rgc),n.Y36(t.k))};static#t=this.\u0275dir=n.lG2({type:l,selectors:[["","sf-template",""]],inputs:{path:["sf-template","path"]}})}return l})()},80650:(nt,I,o)=>{"use strict";o.d(I,{v:()=>p});var e=o(89207),n=o(60325),t=o(92219),i=o(98498),l=o(65879),C=o(96814),E=o(60095),u=o(52682),z=o(93355);function M(f,y){if(1&f){const T=l.EpF();l.TgZ(0,"nz-year-picker",6),l.NdJ("ngModelChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_.displayValue=D)})("ngModelChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_._change(D))})("nzOnOpenChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_._openChange(D))}),l.qZA()}if(2&f){const T=l.oxw();l.Q6J("nzId",T.id)("nzDisabled",T.disabled)("nzSize",T.ui.size)("nzFormat",T.displayFormat)("ngModel",T.displayValue)("nzAllowClear",T.i.allowClear)("ngClass",T.ui.className)("nzDisabledDate",T.ui.disabledDate)("nzLocale",T.ui.locale)("nzPlaceHolder",T.ui.placeholder)("nzPopupStyle",T.ui.popupStyle)("nzDropdownClassName",T.ui.dropdownClassName)("nzRenderExtraFooter",T.ui.renderExtraFooter)("nzInputReadOnly",T.ui.inputReadOnly)("nzInline",T.ui.inline)}}function h(f,y){if(1&f){const T=l.EpF();l.TgZ(0,"nz-month-picker",6),l.NdJ("ngModelChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_.displayValue=D)})("ngModelChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_._change(D))})("nzOnOpenChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_._openChange(D))}),l.qZA()}if(2&f){const T=l.oxw();l.Q6J("nzId",T.id)("nzDisabled",T.disabled)("nzSize",T.ui.size)("nzFormat",T.displayFormat)("ngModel",T.displayValue)("nzAllowClear",T.i.allowClear)("ngClass",T.ui.className)("nzDisabledDate",T.ui.disabledDate)("nzLocale",T.ui.locale)("nzPlaceHolder",T.ui.placeholder)("nzPopupStyle",T.ui.popupStyle)("nzDropdownClassName",T.ui.dropdownClassName)("nzRenderExtraFooter",T.ui.renderExtraFooter)("nzInputReadOnly",T.ui.inputReadOnly)("nzInline",T.ui.inline)}}function v(f,y){if(1&f){const T=l.EpF();l.TgZ(0,"nz-week-picker",7),l.NdJ("ngModelChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_.displayValue=D)})("ngModelChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_._change(D))})("nzOnOpenChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_._openChange(D))}),l.qZA()}if(2&f){const T=l.oxw();l.Q6J("nzId",T.id)("nzDisabled",T.disabled)("nzSize",T.ui.size)("nzFormat",T.displayFormat)("ngModel",T.displayValue)("nzAllowClear",T.i.allowClear)("ngClass",T.ui.className)("nzDisabledDate",T.ui.disabledDate)("nzLocale",T.ui.locale)("nzPlaceHolder",T.ui.placeholder)("nzPopupStyle",T.ui.popupStyle)("nzDropdownClassName",T.ui.dropdownClassName)("nzInputReadOnly",T.ui.inputReadOnly)("nzInline",T.ui.inline)}}function g(f,y){if(1&f){const T=l.EpF();l.TgZ(0,"nz-range-picker",8),l.NdJ("ngModelChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_.displayValue=D)})("ngModelChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_._change(D))})("nzOnOpenChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_._openChange(D))})("nzOnOk",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_._ok(D))}),l.qZA()}if(2&f){const T=l.oxw();l.Q6J("nzId",T.id)("nzDisabled",T.disabled)("nzSize",T.ui.size)("nzFormat",T.displayFormat)("ngModel",T.displayValue)("nzAllowClear",T.i.allowClear)("ngClass",T.ui.className)("nzDisabledDate",T.ui.disabledDate)("nzLocale",T.ui.locale)("nzPlaceHolder",T.ui.placeholder)("nzPopupStyle",T.ui.popupStyle)("nzDropdownClassName",T.ui.dropdownClassName)("nzDisabledTime",T.ui.disabledTime)("nzRenderExtraFooter",T.ui.renderExtraFooter)("nzRanges",T.ui.ranges)("nzShowTime",T.ui.showTime)("nzSeparator",T.ui.separator)("nzShowWeekNumber",T.ui.showWeekNumber||!1)("nzMode",T.ui.rangeMode)("nzInputReadOnly",T.ui.inputReadOnly)("nzInline",T.ui.inline)}}function d(f,y){if(1&f){const T=l.EpF();l.TgZ(0,"nz-date-picker",9),l.NdJ("ngModelChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_.displayValue=D)})("ngModelChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_._change(D))})("nzOnOpenChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_._openChange(D))})("nzOnOk",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_._ok(D))}),l.qZA()}if(2&f){const T=l.oxw();l.Q6J("nzId",T.id)("nzDisabled",T.disabled)("nzSize",T.ui.size)("nzFormat",T.displayFormat)("ngModel",T.displayValue)("nzAllowClear",T.i.allowClear)("ngClass",T.ui.className)("nzDisabledDate",T.ui.disabledDate)("nzLocale",T.ui.locale)("nzPlaceHolder",T.ui.placeholder)("nzPopupStyle",T.ui.popupStyle)("nzDropdownClassName",T.ui.dropdownClassName)("nzDisabledTime",T.ui.disabledTime)("nzRenderExtraFooter",T.ui.renderExtraFooter)("nzShowTime",T.ui.showTime)("nzShowToday",T.i.showToday)("nzShowWeekNumber",T.ui.showWeekNumber||!1)("nzInputReadOnly",T.ui.inputReadOnly)("nzInline",T.ui.inline)}}let p=(()=>{class f extends i.$j{constructor(){super(...arguments),this.flatRange=!1,this.displayValue=null}ngOnInit(){const{mode:T,end:x,displayFormat:D,allowClear:_,showToday:P}=this.ui;if(this.mode=T||"date",this.flatRange=null!=x,this.startFormat=this.ui._format,this.flatRange){this.mode="range";const S=this.endProperty.ui;this.endFormat=S.format?S._format:this.startFormat}if(D)this.displayFormat=D;else switch(this.mode){case"year":this.displayFormat="yyyy";break;case"month":this.displayFormat="yyyy-MM";break;case"week":this.displayFormat="yyyy-ww"}this.i={allowClear:(0,t.AM)(_,!0),showToday:(0,t.AM)(P,!0)}}reset(T){const x={formatString:this.startFormat,defaultValue:null};if(T=Array.isArray(T)?T.map(D=>(0,n.ZU)(D,x)):(0,n.ZU)(T,x),this.flatRange){const D=(0,n.ZU)(this.endProperty.formData,{formatString:this.endFormat||this.startFormat,defaultValue:null});this.displayValue=null==T||null==D?[]:[T,D]}else this.displayValue=T;this.detectChanges(),this.displayValue&&setTimeout(()=>this._change(this.displayValue,!1))}_change(T,x=!0){if(x&&this.ui.change&&this.ui.change(T),null==T||Array.isArray(T)&&T.length<2)return this.setValue(null),void this.setEnd(null);const D=Array.isArray(T)?[(0,e.Z)(T[0],this.startFormat),(0,e.Z)(T[1],this.endFormat||this.startFormat)]:(0,e.Z)(T,this.startFormat);this.flatRange?(this.setValue(D[0]),this.setEnd(D[1])):this.setValue(D)}_openChange(T){this.ui.onOpenChange&&this.ui.onOpenChange(T)}_ok(T){this.ui.onOk&&this.ui.onOk(T)}get endProperty(){return this.formProperty.parent.properties[this.ui.end]}setEnd(T){this.flatRange&&(this.endProperty.setValue(T,!0),this.endProperty.updateValueAndValidity())}static#e=this.\u0275fac=function(){let T;return function(D){return(T||(T=l.n5z(f)))(D||f)}}();static#t=this.\u0275cmp=l.Xpm({type:f,selectors:[["sf-date"]],features:[l.qOj],decls:7,vars:11,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"ngSwitch"],[3,"nzId","nzDisabled","nzSize","nzFormat","ngModel","nzAllowClear","ngClass","nzDisabledDate","nzLocale","nzPlaceHolder","nzPopupStyle","nzDropdownClassName","nzRenderExtraFooter","nzInputReadOnly","nzInline","ngModelChange","nzOnOpenChange",4,"ngSwitchCase"],[3,"nzId","nzDisabled","nzSize","nzFormat","ngModel","nzAllowClear","ngClass","nzDisabledDate","nzLocale","nzPlaceHolder","nzPopupStyle","nzDropdownClassName","nzInputReadOnly","nzInline","ngModelChange","nzOnOpenChange",4,"ngSwitchCase"],[3,"nzId","nzDisabled","nzSize","nzFormat","ngModel","nzAllowClear","ngClass","nzDisabledDate","nzLocale","nzPlaceHolder","nzPopupStyle","nzDropdownClassName","nzDisabledTime","nzRenderExtraFooter","nzRanges","nzShowTime","nzSeparator","nzShowWeekNumber","nzMode","nzInputReadOnly","nzInline","ngModelChange","nzOnOpenChange","nzOnOk",4,"ngSwitchCase"],[3,"nzId","nzDisabled","nzSize","nzFormat","ngModel","nzAllowClear","ngClass","nzDisabledDate","nzLocale","nzPlaceHolder","nzPopupStyle","nzDropdownClassName","nzDisabledTime","nzRenderExtraFooter","nzShowTime","nzShowToday","nzShowWeekNumber","nzInputReadOnly","nzInline","ngModelChange","nzOnOpenChange","nzOnOk",4,"ngSwitchDefault"],[3,"nzId","nzDisabled","nzSize","nzFormat","ngModel","nzAllowClear","ngClass","nzDisabledDate","nzLocale","nzPlaceHolder","nzPopupStyle","nzDropdownClassName","nzRenderExtraFooter","nzInputReadOnly","nzInline","ngModelChange","nzOnOpenChange"],[3,"nzId","nzDisabled","nzSize","nzFormat","ngModel","nzAllowClear","ngClass","nzDisabledDate","nzLocale","nzPlaceHolder","nzPopupStyle","nzDropdownClassName","nzInputReadOnly","nzInline","ngModelChange","nzOnOpenChange"],[3,"nzId","nzDisabled","nzSize","nzFormat","ngModel","nzAllowClear","ngClass","nzDisabledDate","nzLocale","nzPlaceHolder","nzPopupStyle","nzDropdownClassName","nzDisabledTime","nzRenderExtraFooter","nzRanges","nzShowTime","nzSeparator","nzShowWeekNumber","nzMode","nzInputReadOnly","nzInline","ngModelChange","nzOnOpenChange","nzOnOk"],[3,"nzId","nzDisabled","nzSize","nzFormat","ngModel","nzAllowClear","ngClass","nzDisabledDate","nzLocale","nzPlaceHolder","nzPopupStyle","nzDropdownClassName","nzDisabledTime","nzRenderExtraFooter","nzShowTime","nzShowToday","nzShowWeekNumber","nzInputReadOnly","nzInline","ngModelChange","nzOnOpenChange","nzOnOk"]],template:function(x,D){1&x&&(l.TgZ(0,"sf-item-wrap",0),l.ynx(1,1),l.YNc(2,M,1,15,"nz-year-picker",2),l.YNc(3,h,1,15,"nz-month-picker",2),l.YNc(4,v,1,14,"nz-week-picker",3),l.YNc(5,g,1,21,"nz-range-picker",4),l.YNc(6,d,1,19,"nz-date-picker",5),l.BQk(),l.qZA()),2&x&&(l.Q6J("id",D.id)("schema",D.schema)("ui",D.ui)("showError",D.showError)("error",D.error)("showTitle",D.schema.title),l.xp6(1),l.Q6J("ngSwitch",D.mode),l.xp6(1),l.Q6J("ngSwitchCase","year"),l.xp6(1),l.Q6J("ngSwitchCase","month"),l.xp6(1),l.Q6J("ngSwitchCase","week"),l.xp6(1),l.Q6J("ngSwitchCase","range"))},dependencies:[C.mk,C.RF,C.n9,C.ED,E.JJ,E.On,u.uw,u.wS,u.Xv,u.Mq,u.mr,z.i],encapsulation:2})}return f})()},84971:(nt,I,o)=>{"use strict";o.d(I,{P:()=>d});var e=o(99397),n=o(37398),t=o(92219),i=o(98498),l=o(65879),C=o(96814),E=o(60095),u=o(20824),z=o(36513),M=o(93355);const h=["mentions"];function v(p,f){if(1&p){const y=l.EpF();l.TgZ(0,"input",5),l.NdJ("ngModelChange",function(x){l.CHM(y);const D=l.oxw();return l.KtG(D.setValue(x))}),l.qZA()}if(2&p){const y=l.oxw();l.Q6J("disabled",y.disabled)("nzSize",y.ui.size)("ngModel",y.value),l.uIk("id",y.id)("disabled",y.disabled)("maxLength",y.schema.maxLength||null)("placeholder",y.ui.placeholder)}}function g(p,f){if(1&p){const y=l.EpF();l.TgZ(0,"textarea",6),l.NdJ("ngModelChange",function(x){l.CHM(y);const D=l.oxw();return l.KtG(D.setValue(x))}),l._uU(1," "),l.qZA()}if(2&p){const y=l.oxw();l.Q6J("disabled",y.disabled)("nzSize",y.ui.size)("ngModel",y.value)("nzAutosize",y.i.autosize),l.uIk("id",y.id)("disabled",y.disabled)("maxLength",y.schema.maxLength||null)("placeholder",y.ui.placeholder)}}let d=(()=>{class p extends i.$j{constructor(){super(...arguments),this.data=[],this.loading=!1}ngOnInit(){const{valueWith:y,notFoundContent:T,placement:x,prefix:D,autosize:_}=this.ui;this.i={valueWith:y||(R=>R.label),notFoundContent:T||"\u65e0\u5339\u914d\u7ed3\u679c\uff0c\u8f7b\u6572\u7a7a\u683c\u5b8c\u6210\u8f93\u5165",placement:x||"bottom",prefix:D||"@",autosize:typeof _>"u"||this.ui.autosize};const{minimum:P,maximum:S}=this.schema,A=typeof P<"u"?P:-1,k=typeof S<"u"?S:-1;!this.ui.validator&&(-1!==A||-1!==k)&&(this.ui.validator=()=>{const R=this.mentionChild.getMentions().length;return-1!==A&&Rk?[{keyword:"mention",message:`\u6700\u591a\u63d0\u53ca ${k} \u6b21`}]:null})}reset(y){(0,t.Yu)(this.schema,this.ui,null).subscribe(T=>{this.data=T,this.detectChanges()})}_select(y){this.ui.select&&this.ui.select(y)}_search(y){"function"==typeof this.ui.loadData&&(this.loading=!0,this.ui.loadData(y).pipe((0,e.b)(()=>this.loading=!1),(0,n.U)(T=>(0,t.vn)(T,null,this.schema.readOnly))).subscribe(T=>{this.data=T,this.detectChanges(!0)}))}static#e=this.\u0275fac=function(){let y;return function(x){return(y||(y=l.n5z(p)))(x||p)}}();static#t=this.\u0275cmp=l.Xpm({type:p,selectors:[["sf-mention"]],viewQuery:function(T,x){if(1&T&&l.Gf(h,7),2&T){let D;l.iGM(D=l.CRH())&&(x.mentionChild=D.first)}},features:[l.qOj],decls:5,vars:14,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"nzSuggestions","nzValueWith","nzLoading","nzNotFoundContent","nzPlacement","nzPrefix","nzOnSelect","nzOnSearchChange"],["mentions",""],["nzMentionTrigger","","nz-input","","autocomplete","off",3,"disabled","nzSize","ngModel","ngModelChange",4,"ngIf"],["nzMentionTrigger","","nz-input","",3,"disabled","nzSize","ngModel","nzAutosize","ngModelChange",4,"ngIf"],["nzMentionTrigger","","nz-input","","autocomplete","off",3,"disabled","nzSize","ngModel","ngModelChange"],["nzMentionTrigger","","nz-input","",3,"disabled","nzSize","ngModel","nzAutosize","ngModelChange"]],template:function(T,x){1&T&&(l.TgZ(0,"sf-item-wrap",0)(1,"nz-mention",1,2),l.NdJ("nzOnSelect",function(_){return x._select(_)})("nzOnSearchChange",function(_){return x._search(_)}),l.YNc(3,v,1,7,"input",3),l.YNc(4,g,2,8,"textarea",4),l.qZA()()),2&T&&(l.Q6J("id",x.id)("schema",x.schema)("ui",x.ui)("showError",x.showError)("error",x.error)("showTitle",x.schema.title),l.xp6(1),l.Q6J("nzSuggestions",x.data)("nzValueWith",x.i.valueWith)("nzLoading",x.loading)("nzNotFoundContent",x.i.notFoundContent)("nzPlacement",x.i.placement)("nzPrefix",x.i.prefix),l.xp6(2),l.Q6J("ngIf","textarea"!==x.ui.inputStyle),l.xp6(1),l.Q6J("ngIf","textarea"===x.ui.inputStyle))},dependencies:[C.O5,E.Fj,E.JJ,E.On,u.Zp,u.rh,z.YW,z.jO,M.i],encapsulation:2})}return p})()},87817:(nt,I,o)=>{"use strict";o.d(I,{L:()=>u});var e=o(98498),n=o(65879),t=o(96814),i=o(60095),l=o(68373),C=o(93355);const E=function(z){return{"ant-input-number__hide-step":z}};let u=(()=>{class z extends e.$j{constructor(){super(...arguments),this.formatter=h=>h,this.parser=h=>h,this.width=""}ngOnInit(){const{minimum:h,exclusiveMinimum:v,maximum:g,exclusiveMaximum:d,multipleOf:p,type:f}=this.schema;this.step=p||1,typeof h<"u"&&(this.min=v?h+this.step:h),typeof g<"u"&&(this.max=d?g-this.step:g),"integer"===f&&(this.min=Math.trunc(this.min),this.max=Math.trunc(this.max),this.step=Math.trunc(this.step));const y=this.ui;null!=y.prefix&&(y.formatter=T=>null==T?"":`${y.prefix} ${T}`,y.parser=T=>T.replace(`${y.prefix} `,"")),null!=y.unit&&(y.formatter=T=>null==T?"":`${T} ${y.unit}`,y.parser=T=>T.replace(` ${y.unit}`,"")),y.formatter&&(this.formatter=y.formatter),y.parser&&(this.parser=y.parser),this.width="number"==typeof y.widgetWidth?`${y.widgetWidth}px`:y.widgetWidth??"90px"}_setValue(h){this.setValue("integer"===this.schema.type?Math.floor(h):h),this.ui.change&&this.ui.change(this.value)}static#e=this.\u0275fac=function(){let h;return function(g){return(h||(h=n.n5z(z)))(g||z)}}();static#t=this.\u0275cmp=n.Xpm({type:z,selectors:[["sf-number"]],features:[n.qOj],decls:2,vars:22,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"nzId","ngModel","nzDisabled","nzSize","nzMin","nzMax","nzStep","nzFormatter","nzParser","nzPrecision","nzPlaceHolder","ngClass","ngModelChange"]],template:function(v,g){1&v&&(n.TgZ(0,"sf-item-wrap",0)(1,"nz-input-number",1),n.NdJ("ngModelChange",function(p){return g._setValue(p)}),n.qZA()()),2&v&&(n.Q6J("id",g.id)("schema",g.schema)("ui",g.ui)("showError",g.showError)("error",g.error)("showTitle",g.schema.title),n.xp6(1),n.Udp("width",g.width),n.Q6J("nzId",g.id)("ngModel",g.value)("nzDisabled",g.disabled)("nzSize",g.ui.size)("nzMin",g.min)("nzMax",g.max)("nzStep",g.step)("nzFormatter",g.formatter)("nzParser",g.parser)("nzPrecision",g.ui.precision)("nzPlaceHolder",g.ui.placeholder||"")("ngClass",n.VKq(20,E,g.ui.hideStep)))},dependencies:[t.mk,i.JJ,i.On,l._V,C.i],encapsulation:2})}return z})()},36304:(nt,I,o)=>{"use strict";o.d(I,{C:()=>A});var e=o(84212),n=o(86918),t=o(38140),i=o(40712),l=o(98685),C=o(29993),E=o(80650),u=o(84971),z=o(87817),M=o(26557),h=o(74896),v=o(21933),g=o(28957),d=o(72188),p=o(55900),f=o(52569),y=o(98350),T=o(53250),x=o(45858),D=o(55986),_=o(28448),P=o(70410),S=o(48480);class A extends S.B{constructor(){super(),this.register("object",M.b),this.register("array",e.L),this.register("text",y.y),this.register("string",p.L),this.register("number",z.L),this.register("integer",z.L),this.register("date",E.v),this.register("time",x.N),this.register("radio",h.b),this.register("checkbox",l.O),this.register("boolean",t.H),this.register("textarea",T._),this.register("select",g.u),this.register("tree-select",_.f),this.register("tag",f.o),this.register("upload",P.c),this.register("transfer",D.v),this.register("slider",d.B),this.register("rate",v.g),this.register("autocomplete",n.N),this.register("cascader",i.M),this.register("mention",u.P),this.register("custom",C.k),this.setDefault(p.L)}}},26557:(nt,I,o)=>{"use strict";o.d(I,{b:()=>ze});var e=o(33802),n=o(92219),t=o(98498),i=o(65879),l=o(96814),C=o(70855),E=o(82962),u=o(10095),z=o(90551),M=o(96109),h=o(33182),v=o(1202);function g(Y,G){if(1&Y&&(i.TgZ(0,"div",5),i._uU(1),i.qZA()),2&Y){const V=i.oxw(2);i.xp6(1),i.Oqu(V.title)}}function d(Y,G){if(1&Y&&(i.ynx(0),i.TgZ(1,"div",9),i._UZ(2,"sf-item",10),i.qZA(),i.BQk()),2&Y){const V=i.oxw().$implicit;i.xp6(1),i.Q6J("nzSpan",V.grid.span)("nzOffset",V.grid.offset)("nzXs",V.grid.xs)("nzSm",V.grid.sm)("nzMd",V.grid.md)("nzLg",V.grid.lg)("nzXl",V.grid.xl)("nzXXl",V.grid.xxl),i.xp6(1),i.Q6J("formProperty",V.property)("fixed-label",V.spanLabelFixed)}}function p(Y,G){if(1&Y&&(i.ynx(0),i.YNc(1,d,3,10,"ng-container",8),i.BQk()),2&Y){const V=G.$implicit;i.xp6(1),i.Q6J("ngIf",V.property.visible&&V.show)}}function f(Y,G){if(1&Y&&(i.ynx(0),i.TgZ(1,"div",6),i.YNc(2,p,2,1,"ng-container",7),i.qZA(),i.BQk()),2&Y){const V=i.oxw(2);i.xp6(1),i.Q6J("nzGutter",V.grid.gutter),i.xp6(1),i.Q6J("ngForOf",V.list)}}function y(Y,G){if(1&Y&&(i.ynx(0),i._UZ(1,"sf-item",10),i.BQk()),2&Y){const V=i.oxw().$implicit;i.xp6(1),i.Q6J("formProperty",V.property)("fixed-label",V.spanLabelFixed)}}function T(Y,G){if(1&Y&&(i.ynx(0),i.YNc(1,y,2,2,"ng-container",8),i.BQk()),2&Y){const V=G.$implicit;i.xp6(1),i.Q6J("ngIf",V.property.visible&&V.show)}}function x(Y,G){if(1&Y&&i.YNc(0,T,2,1,"ng-container",7),2&Y){const V=i.oxw(2);i.Q6J("ngForOf",V.list)}}function D(Y,G){if(1&Y&&(i.YNc(0,g,2,1,"div",2),i.YNc(1,f,3,2,"ng-container",3),i.YNc(2,x,1,1,"ng-template",null,4,i.W1O)),2&Y){const V=G.$implicit,K=i.MAs(3),te=i.oxw();i.Q6J("ngIf",!V&&te.title),i.xp6(1),i.Q6J("ngIf",te.grid)("ngIfElse",K)}}function _(Y,G){if(1&Y&&i._UZ(0,"i",17),2&Y){const V=i.oxw(3);i.Q6J("nzType",V.expand?"down":"up")}}function P(Y,G){if(1&Y&&i._UZ(0,"i",20),2&Y){const V=i.oxw(4);i.Q6J("nzTooltipTitle",V.oh.text)("nzTooltipPlacement",V.oh.placement)("nzTooltipTrigger",V.oh.trigger)("nzTooltipColor",V.oh.bgColor)("nzTooltipOverlayClassName",V.oh.overlayClassName)("nzTooltipOverlayStyle",V.oh.overlayStyle)("nzTooltipMouseEnterDelay",V.oh.mouseEnterDelay)("nzTooltipMouseLeaveDelay",V.oh.mouseLeaveDelay)("nzType",V.oh.icon)}}function S(Y,G){if(1&Y&&(i.TgZ(0,"span",18),i._uU(1),i.YNc(2,P,1,9,"i",19),i.qZA()),2&Y){const V=i.oxw(3);i.xp6(1),i.hij(" ",V.ui.optional," "),i.xp6(1),i.Q6J("ngIf",V.oh)}}function A(Y,G){if(1&Y){const V=i.EpF();i.TgZ(0,"div",14),i.NdJ("click",function(){i.CHM(V);const te=i.oxw(2);return i.KtG(te.changeExpand())}),i.YNc(1,_,1,1,"i",15),i._uU(2),i.YNc(3,S,3,2,"span",16),i.qZA()}if(2&Y){const V=i.oxw(2);i.ekj("point",V.showExpand),i.xp6(1),i.Q6J("ngIf",V.showExpand),i.xp6(1),i.hij(" ",V.title," "),i.xp6(1),i.Q6J("ngIf",V.ui.optional||V.oh)}}function k(Y,G){}const R=function(){return[]},$=function(){return{$implicit:!0}};function W(Y,G){if(1&Y&&(i.TgZ(0,"nz-card",11),i.YNc(1,A,4,5,"ng-template",null,12,i.W1O),i.YNc(3,k,0,0,"ng-template",13),i.qZA()),2&Y){const V=i.MAs(2),K=i.oxw(),te=i.MAs(1);i.ekj("sf__object-card-fold",!K.expand),i.Q6J("nzTitle",V)("nzExtra",K.ui.cardExtra)("nzSize",K.ui.cardSize||"small")("nzActions",K.ui.cardActions||i.DdM(11,R))("nzBodyStyle",K.ui.cardBodyStyle)("nzBordered",K.ui.cardBordered||!0)("nzBorderless",K.ui.cardBorderless||!1),i.xp6(3),i.Q6J("ngTemplateOutlet",te)("ngTemplateOutletContext",i.DdM(12,$))}}let ze=(()=>{class Y extends t.VV{constructor(){super(...arguments),this.type="default",this.list=[],this.showExpand=!0,this.expand=!0}ngOnInit(){const{formProperty:V,ui:K}=this,{grid:te,showTitle:ne,type:fe}=K;this.showExpand=(0,n.AM)(K.showExpand,!0),this.expand=(0,n.AM)(K.expand,!0),this.type=fe??"default",("card"===this.type||!V.isRoot()&&!(V.parent instanceof e.K)&&!0===ne)&&(this.title=this.schema.title),this.grid=te;const re=[];for(const be of V.propertiesId){const le=V.properties[be];re.push({property:le,grid:le.ui.grid||te||{},spanLabelFixed:le.ui.spanLabelFixed,show:!1===le.ui.hidden})}this.list=re}changeExpand(){this.showExpand&&(this.expand=!this.expand,this.detectChanges(!0))}static#e=this.\u0275fac=function(){let V;return function(te){return(V||(V=i.n5z(Y)))(te||Y)}}();static#t=this.\u0275cmp=i.Xpm({type:Y,selectors:[["sf-object"]],features:[i.qOj],decls:3,vars:2,consts:[["default",""],["class","sf__object-card",3,"nzTitle","nzExtra","nzSize","nzActions","nzBodyStyle","nzBordered","nzBorderless","sf__object-card-fold",4,"ngIf","ngIfElse"],["class","sf__title",4,"ngIf"],[4,"ngIf","ngIfElse"],["noGrid",""],[1,"sf__title"],["nz-row","",3,"nzGutter"],[4,"ngFor","ngForOf"],[4,"ngIf"],["nz-col","",3,"nzSpan","nzOffset","nzXs","nzSm","nzMd","nzLg","nzXl","nzXXl"],[3,"formProperty","fixed-label"],[1,"sf__object-card",3,"nzTitle","nzExtra","nzSize","nzActions","nzBodyStyle","nzBordered","nzBorderless"],["cardTitleTpl",""],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"click"],["nz-icon","","class","mr-xs text-xs",3,"nzType",4,"ngIf"],["class","sf__optional",4,"ngIf"],["nz-icon","",1,"mr-xs","text-xs",3,"nzType"],[1,"sf__optional"],["nz-tooltip","","nz-icon","",3,"nzTooltipTitle","nzTooltipPlacement","nzTooltipTrigger","nzTooltipColor","nzTooltipOverlayClassName","nzTooltipOverlayStyle","nzTooltipMouseEnterDelay","nzTooltipMouseLeaveDelay","nzType",4,"ngIf"],["nz-tooltip","","nz-icon","",3,"nzTooltipTitle","nzTooltipPlacement","nzTooltipTrigger","nzTooltipColor","nzTooltipOverlayClassName","nzTooltipOverlayStyle","nzTooltipMouseEnterDelay","nzTooltipMouseLeaveDelay","nzType"]],template:function(K,te){if(1&K&&(i.YNc(0,D,4,3,"ng-template",null,0,i.W1O),i.YNc(2,W,4,13,"nz-card",1)),2&K){const ne=i.MAs(1);i.xp6(2),i.Q6J("ngIf","card"===te.type)("ngIfElse",ne)}},dependencies:[l.sg,l.O5,l.tP,C.w,E.bd,u.t3,u.SK,z.Ls,M.SY,h.S,v.h],encapsulation:2})}return Y})()},74896:(nt,I,o)=>{"use strict";o.d(I,{b:()=>v});var e=o(92219),n=o(98498),t=o(65879),i=o(96814),l=o(60095),C=o(57907),E=o(93355);function u(g,d){if(1&g&&(t.TgZ(0,"label",4),t._UZ(1,"span",5),t.qZA()),2&g){const p=d.$implicit,f=t.oxw(2);t.Q6J("nzValue",p.value)("nzDisabled",f.disabled||p.disabled),t.xp6(1),t.Q6J("innerHTML",p.label,t.oJD)}}function z(g,d){if(1&g&&(t.ynx(0),t.YNc(1,u,2,3,"label",3),t.BQk()),2&g){const p=t.oxw();t.xp6(1),t.Q6J("ngForOf",p.data)}}function M(g,d){if(1&g&&(t.TgZ(0,"label",7),t._UZ(1,"span",5),t.qZA()),2&g){const p=d.$implicit,f=t.oxw(2);t.Q6J("nzValue",p.value)("nzDisabled",f.disabled||p.disabled),t.xp6(1),t.Q6J("innerHTML",p.label,t.oJD)}}function h(g,d){if(1&g&&(t.ynx(0),t.YNc(1,M,2,3,"label",6),t.BQk()),2&g){const p=t.oxw();t.xp6(1),t.Q6J("ngForOf",p.data)}}let v=(()=>{class g extends n.$j{constructor(){super(...arguments),this.data=[]}reset(p){this.styleType="default"===(this.ui.styleType||"default"),(0,e.Yu)(this.schema,this.ui,p).subscribe(f=>{this.data=f,this.detectChanges()})}_setValue(p){this.setValue(p),this.ui.change&&this.ui.change(p)}static#e=this.\u0275fac=function(){let p;return function(y){return(p||(p=t.n5z(g)))(y||g)}}();static#t=this.\u0275cmp=t.Xpm({type:g,selectors:[["sf-radio"]],features:[t.qOj],decls:4,vars:12,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"nzSize","nzName","ngModel","nzButtonStyle","ngModelChange"],[4,"ngIf"],["nz-radio","",3,"nzValue","nzDisabled",4,"ngFor","ngForOf"],["nz-radio","",3,"nzValue","nzDisabled"],[3,"innerHTML"],["nz-radio-button","",3,"nzValue","nzDisabled",4,"ngFor","ngForOf"],["nz-radio-button","",3,"nzValue","nzDisabled"]],template:function(f,y){1&f&&(t.TgZ(0,"sf-item-wrap",0)(1,"nz-radio-group",1),t.NdJ("ngModelChange",function(x){return y._setValue(x)}),t.YNc(2,z,2,1,"ng-container",2),t.YNc(3,h,2,1,"ng-container",2),t.qZA()()),2&f&&(t.Q6J("id",y.id)("schema",y.schema)("ui",y.ui)("showError",y.showError)("error",y.error)("showTitle",y.schema.title),t.xp6(1),t.Q6J("nzSize",y.ui.size)("nzName",y.id)("ngModel",y.value)("nzButtonStyle",y.ui.buttonStyle||"outline"),t.xp6(1),t.Q6J("ngIf",y.styleType),t.xp6(1),t.Q6J("ngIf",!y.styleType))},dependencies:[i.sg,i.O5,l.JJ,l.On,C.Of,C.Bq,C.Dg,E.i],encapsulation:2})}return g})()},21933:(nt,I,o)=>{"use strict";o.d(I,{g:()=>M});var e=o(92219),n=o(98498),t=o(65879),i=o(96814),l=o(60095),C=o(98421),E=o(93355);function u(h,v){if(1&h&&(t.TgZ(0,"span",3),t._uU(1),t.qZA()),2&h){const g=t.oxw();t.xp6(1),t.Oqu(g.text)}}const z=function(){return[]};let M=(()=>{class h extends n.$j{constructor(){super(...arguments),this.hasText=!1}get text(){return this.ui.text.replace("{{value}}",this.formProperty.value)}ngOnInit(){const{schema:g,ui:d}=this;this.count=g.maximum||5,this.allowHalf=.5===(g.multipleOf||.5),this.allowClear=(0,e.AM)(d.allowClear,!0),this.autoFocus=(0,e.AM)(d.autoFocus,!1),this.hasText=!!d.text}static#e=this.\u0275fac=function(){let g;return function(p){return(g||(g=t.n5z(h)))(p||h)}}();static#t=this.\u0275cmp=t.Xpm({type:h,selectors:[["sf-rate"]],features:[t.qOj],decls:3,vars:15,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"nzDisabled","ngModel","nzAllowClear","nzAllowHalf","nzTooltips","nzAutoFocus","nzCount","ngModelChange"],["class","ant-rate-text",4,"ngIf"],[1,"ant-rate-text"]],template:function(d,p){1&d&&(t.TgZ(0,"sf-item-wrap",0)(1,"nz-rate",1),t.NdJ("ngModelChange",function(y){return p.setValue(y)}),t.qZA(),t.YNc(2,u,2,1,"span",2),t.qZA()),2&d&&(t.Q6J("id",p.id)("schema",p.schema)("ui",p.ui)("showError",p.showError)("error",p.error)("showTitle",p.schema.title),t.xp6(1),t.Q6J("nzDisabled",p.disabled)("ngModel",p.value)("nzAllowClear",p.allowClear)("nzAllowHalf",p.allowHalf)("nzTooltips",p.ui.tooltips||t.DdM(14,z))("nzAutoFocus",p.autoFocus)("nzCount",p.count),t.xp6(1),t.Q6J("ngIf",p.hasText&&p.formProperty.value))},dependencies:[i.O5,l.JJ,l.On,C.sn,E.i],encapsulation:2})}return h})()},28957:(nt,I,o)=>{"use strict";o.d(I,{u:()=>k});var e=o(78645),n=o(59773),t=o(93997),i=o(83620),l=o(94664),C=o(26306),E=o(94197),u=o(65879),z=o(78967);let M=(()=>{class R{constructor(W){this.c=W.merge("utilArray",{deepMapName:"deep",parentMapName:"parent",idMapName:"id",parentIdMapName:"parent_id",childrenMapName:"children",titleMapName:"title",checkedMapname:"checked",selectedMapname:"selected",expandedMapname:"expanded",disabledMapname:"disabled"})}treeToArr(W,ze){const Y={deepMapName:this.c.deepMapName,parentMapName:this.c.parentMapName,childrenMapName:this.c.childrenMapName,clearChildren:!0,cb:null,...ze},G=[],V=(K,te,ne=0)=>{for(const fe of K){fe[Y.deepMapName]=ne,fe[Y.parentMapName]=te,Y.cb&&Y.cb(fe,te,ne),G.push(fe);const re=fe[Y.childrenMapName];null!=re&&Array.isArray(re)&&re.length>0&&V(re,fe,ne+1),Y.clearChildren&&delete fe[Y.childrenMapName]}};return V(W,null),G}arrToTree(W,ze){if(!Array.isArray(W)||0===W.length)return[];const Y={idMapName:this.c.idMapName,parentIdMapName:this.c.parentIdMapName,childrenMapName:this.c.childrenMapName,cb:null,...ze},G=[],V={};let K=Y.rootParentIdValue;const te=W;if(!K){const ne=te.map(re=>re[Y.parentIdMapName]),fe=ne.findIndex(re=>null==re);K=-1!==fe?ne[fe]:ne.sort()[0]}for(const ne of te){const fe=ne[Y.idMapName],re=ne[Y.parentIdMapName];V[fe]=V[fe]||[],ne[Y.childrenMapName]=V[fe],Y.cb&&Y.cb(ne),re!==K?(V[re]=V[re]||[],V[re].push(ne)):G.push(ne)}return G}arrToTreeNode(W,ze){const Y={idMapName:this.c.idMapName,parentIdMapName:this.c.parentIdMapName,titleMapName:this.c.titleMapName,isLeafMapName:"isLeaf",checkedMapname:this.c.checkedMapname,selectedMapname:this.c.selectedMapname,expandedMapname:this.c.expandedMapname,disabledMapname:this.c.disabledMapname,cb:null,...ze},G=this.arrToTree(W,{idMapName:Y.idMapName,parentIdMapName:Y.parentIdMapName,childrenMapName:"children"});return this.visitTree(G,(V,K,te)=>{V.key=V[Y.idMapName],V.title=V[Y.titleMapName],V.checked=V[Y.checkedMapname],V.selected=V[Y.selectedMapname],V.expanded=V[Y.expandedMapname],V.disabled=V[Y.disabledMapname],V.isLeaf=null==V[Y.isLeafMapName]?0===V.children.length:V[Y.isLeafMapName],Y.cb&&Y.cb(V,K,te)}),G.map(V=>new E.Zr(V))}visitTree(W,ze,Y){Y={childrenMapName:this.c.childrenMapName,...Y};const G=(V,K,te)=>{for(const ne of V){ze(ne,K,te);const fe=ne[Y.childrenMapName];Array.isArray(fe)&&fe.length>0&&G(fe,ne,te+1)}};G(W,null,1)}findTree(W,ze,Y){let G;return this.visitTree(W,V=>{void 0===G&&ze(V)&&(G=V)},Y),G}getKeysByTreeNode(W,ze){const Y={includeHalfChecked:!0,...ze},G=[];return this.visitTree(W,(V,K,te)=>{(V.isChecked||Y.includeHalfChecked&&V.isHalfChecked)&&G.push(Y.cb?Y.cb(V,K,te):Y.keyMapName?V.origin[Y.keyMapName]:V.key)}),G}baseFlat(W,ze,Y=[]){let G=-1;for(;++G0&&Array.isArray(V))if(ze>1)this.baseFlat(V,ze-1,Y);else{let K=-1;const te=Y.length;for(;++K{const V=ze(G);return Object.prototype.hasOwnProperty.call(Y,V)?Y[V].push(G):Y[V]=[G],Y},{}):{}}uniq(W,ze){return Array.from(W.reduce((Y,G)=>{const V=ze?"string"==typeof ze?G[ze]:ze(G):G;return Y.has(V)||Y.set(V,G),Y},new Map).values())}static#e=this.\u0275fac=function(ze){return new(ze||R)(u.LFG(z.Ri))};static#t=this.\u0275prov=u.Yz7({token:R,factory:R.\u0275fac,providedIn:"root"})}return R})();var h=o(92219),v=o(98498),g=o(96814),d=o(60095),p=o(70855),f=o(90551),y=o(9691),T=o(93355);function x(R,$){if(1&R&&u._UZ(0,"nz-option",5),2&R){const W=$.$implicit;u.Q6J("nzLabel",W.label)("nzValue",W.value)("nzHide",W.hide)("nzDisabled",W.disabled)}}function D(R,$){if(1&R&&(u.ynx(0),u.YNc(1,x,1,4,"nz-option",4),u.BQk()),2&R){const W=u.oxw();u.xp6(1),u.Q6J("ngForOf",W.data)}}function _(R,$){if(1&R&&u._UZ(0,"nz-option",9),2&R){const W=$.$implicit;u.Q6J("nzLabel",W.label)("nzValue",W.value)("nzDisabled",W.disabled)("nzHide",W.hide)}}function P(R,$){if(1&R&&(u.TgZ(0,"nz-option-group",7),u.YNc(1,_,1,4,"nz-option",8),u.qZA()),2&R){const W=$.$implicit;u.Q6J("nzLabel",W.label),u.xp6(1),u.Q6J("ngForOf",W.children)}}function S(R,$){if(1&R&&(u.ynx(0),u.YNc(1,P,2,2,"nz-option-group",6),u.BQk()),2&R){const W=u.oxw();u.xp6(1),u.Q6J("ngForOf",W.data)}}function A(R,$){if(1&R&&(u.TgZ(0,"nz-option",10),u._UZ(1,"i",11),u._uU(2),u.qZA()),2&R){const W=u.oxw();u.xp6(2),u.hij(" ",W.ui.searchLoadingText," ")}}let k=(()=>{class R extends v.$j{constructor(){super(...arguments),this.search$=new e.x,this.data=[],this.hasGroup=!1,this.loading=!1}checkGroup(W){this.hasGroup=(W||[]).filter(ze=>!0===ze.group).length>0}ngOnInit(){const{autoClearSearchValue:W,borderless:ze,autoFocus:Y,dropdownMatchSelectWidth:G,serverSearch:V,maxMultipleCount:K,mode:te,showSearch:ne,tokenSeparators:fe,maxTagCount:re,compareWith:be,optionHeightPx:le,optionOverflowSize:ce,showArrow:Q}=this.ui;this.i={autoClearSearchValue:(0,h.AM)(W,!0),borderless:(0,h.AM)(ze,!1),autoFocus:(0,h.AM)(Y,!1),dropdownMatchSelectWidth:(0,h.AM)(G,!0),serverSearch:(0,h.AM)(V,!1),maxMultipleCount:K||1/0,mode:te||"default",showSearch:(0,h.AM)(ne,!0),tokenSeparators:fe||[],maxTagCount:re||void 0,optionHeightPx:le||32,optionOverflowSize:ce||8,showArrow:"boolean"!=typeof Q?void 0:Q,compareWith:be||((ae,xe)=>ae===xe)};const ie=this.ui.onSearch;ie&&this.search$.pipe((0,n.R)(this.sfItemComp.destroy$),(0,t.x)(),(0,i.b)(this.ui.searchDebounceTime||300),(0,l.w)(ae=>ie(ae)),(0,C.K)(()=>[])).subscribe(ae=>{this.data=ae,this.checkGroup(ae),this.loading=!1,this.detectChanges()})}reset(W){const ze=this.ui.onSearch;(0,h.Yu)(this.schema,this.ui,W).subscribe(Y=>{this._value=W,null==ze&&(this.data=Y),this.checkGroup(Y),this.detectChanges()}),W&&null!=ze&&this.search$.next(W)}change(W){this.ui.change&&this.ui.change(W,this.getOrgData(W)),this.setValue(W??void 0)}getOrgData(W){const ze=this.injector.get(M);return Array.isArray(W)?W.map(Y=>ze.findTree(this.data,G=>G.value===Y)):ze.findTree(this.data,Y=>Y.value===W)}openChange(W){this.ui.openChange&&this.ui.openChange(W)}scrollToBottom(){this.ui.scrollToBottom&&this.ui.scrollToBottom()}onSearch(W){this.ui.onSearch&&(this.loading=!0,this.search$.next(W))}static#e=this.\u0275fac=function(){let W;return function(Y){return(W||(W=u.n5z(R)))(Y||R)}}();static#t=this.\u0275cmp=u.Xpm({type:R,selectors:[["sf-select"]],features:[u.qOj],decls:5,vars:39,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"nzId","nzDisabled","ngModel","nzSize","nzPlaceHolder","nzNotFoundContent","nzDropdownClassName","nzAllowClear","nzDropdownStyle","nzCustomTemplate","nzSuffixIcon","nzRemoveIcon","nzClearIcon","nzMenuItemSelectedIcon","nzMaxTagPlaceholder","nzDropdownRender","nzAutoClearSearchValue","nzBorderless","nzAutoFocus","nzDropdownMatchSelectWidth","nzServerSearch","nzMaxMultipleCount","nzMode","nzShowSearch","nzShowArrow","nzTokenSeparators","nzMaxTagCount","compareWith","nzOptionHeightPx","nzOptionOverflowSize","ngModelChange","nzOpenChange","nzOnSearch","nzScrollToBottom"],[4,"ngIf"],["nzDisabled","","nzCustomContent","",4,"ngIf"],[3,"nzLabel","nzValue","nzHide","nzDisabled",4,"ngFor","ngForOf"],[3,"nzLabel","nzValue","nzHide","nzDisabled"],[3,"nzLabel",4,"ngFor","ngForOf"],[3,"nzLabel"],[3,"nzLabel","nzValue","nzDisabled","nzHide",4,"ngFor","ngForOf"],[3,"nzLabel","nzValue","nzDisabled","nzHide"],["nzDisabled","","nzCustomContent",""],["nz-icon","","nzType","loading"]],template:function(ze,Y){1&ze&&(u.TgZ(0,"sf-item-wrap",0)(1,"nz-select",1),u.NdJ("ngModelChange",function(V){return Y._value=V})("ngModelChange",function(V){return Y.change(V)})("nzOpenChange",function(V){return Y.openChange(V)})("nzOnSearch",function(V){return Y.onSearch(V)})("nzScrollToBottom",function(){return Y.scrollToBottom()}),u.YNc(2,D,2,1,"ng-container",2),u.YNc(3,S,2,1,"ng-container",2),u.YNc(4,A,3,1,"nz-option",3),u.qZA()()),2&ze&&(u.Q6J("id",Y.id)("schema",Y.schema)("ui",Y.ui)("showError",Y.showError)("error",Y.error)("showTitle",Y.schema.title),u.xp6(1),u.Q6J("nzId",Y.id)("nzDisabled",Y.disabled)("ngModel",Y._value)("nzSize",Y.ui.size)("nzPlaceHolder",Y.ui.placeholder)("nzNotFoundContent",Y.ui.notFoundContent)("nzDropdownClassName",Y.ui.dropdownClassName)("nzAllowClear",Y.ui.allowClear)("nzDropdownStyle",Y.ui.dropdownStyle)("nzCustomTemplate",Y.ui.customTemplate)("nzSuffixIcon",Y.ui.suffixIcon)("nzRemoveIcon",Y.ui.removeIcon)("nzClearIcon",Y.ui.clearIcon)("nzMenuItemSelectedIcon",Y.ui.menuItemSelectedIcon)("nzMaxTagPlaceholder",Y.ui.maxTagPlaceholder)("nzDropdownRender",Y.ui.dropdownRender)("nzAutoClearSearchValue",Y.i.autoClearSearchValue)("nzBorderless",Y.i.borderless)("nzAutoFocus",Y.i.autoFocus)("nzDropdownMatchSelectWidth",Y.i.dropdownMatchSelectWidth)("nzServerSearch",Y.i.serverSearch)("nzMaxMultipleCount",Y.i.maxMultipleCount)("nzMode",Y.i.mode)("nzShowSearch",Y.i.showSearch)("nzShowArrow",Y.i.showArrow)("nzTokenSeparators",Y.i.tokenSeparators)("nzMaxTagCount",Y.i.maxTagCount)("compareWith",Y.i.compareWith)("nzOptionHeightPx",Y.i.optionHeightPx)("nzOptionOverflowSize",Y.i.optionOverflowSize),u.xp6(1),u.Q6J("ngIf",!Y.loading&&!Y.hasGroup),u.xp6(1),u.Q6J("ngIf",!Y.loading&&Y.hasGroup),u.xp6(1),u.Q6J("ngIf",Y.loading))},dependencies:[g.sg,g.O5,d.JJ,d.On,p.w,f.Ls,y.Ip,y.Vq,y.Yy,T.i],encapsulation:2})}return R})()},72188:(nt,I,o)=>{"use strict";o.d(I,{B:()=>C});var e=o(98498),n=o(65879),t=o(60095),i=o(20012),l=o(93355);let C=(()=>{class E extends e.$j{constructor(){super(...arguments),this.marks=null,this._formatter=z=>{const{formatter:M}=this.ui;return M?M(z):`${z}`}}ngOnInit(){const{minimum:z,maximum:M,multipleOf:h}=this.schema;this.min=z||0,this.max=M||100,this.step=h||1;const{marks:v,included:g}=this.ui;this.marks=v||null,this.included=typeof g>"u"||g}_afterChange(z){const{afterChange:M}=this.ui;if(M)return M(z)}static#e=this.\u0275fac=function(){let z;return function(h){return(z||(z=n.n5z(E)))(h||E)}}();static#t=this.\u0275cmp=n.Xpm({type:E,selectors:[["sf-slider"]],features:[n.qOj],decls:2,vars:17,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"ngModel","nzDisabled","nzRange","nzMin","nzMax","nzStep","nzMarks","nzDots","nzIncluded","nzVertical","nzTipFormatter","ngModelChange","nzOnAfterChange"]],template:function(M,h){1&M&&(n.TgZ(0,"sf-item-wrap",0)(1,"nz-slider",1),n.NdJ("ngModelChange",function(g){return h.setValue(g)})("nzOnAfterChange",function(g){return h._afterChange(g)}),n.qZA()()),2&M&&(n.Q6J("id",h.id)("schema",h.schema)("ui",h.ui)("showError",h.showError)("error",h.error)("showTitle",h.schema.title),n.xp6(1),n.Q6J("ngModel",h.value)("nzDisabled",h.disabled)("nzRange",h.ui.range)("nzMin",h.min)("nzMax",h.max)("nzStep",h.step)("nzMarks",h.marks)("nzDots",h.ui.dots)("nzIncluded",h.included)("nzVertical",h.ui.vertical)("nzTipFormatter",h._formatter))},dependencies:[t.JJ,t.On,i.jS,l.i],encapsulation:2})}return E})()},55900:(nt,I,o)=>{"use strict";o.d(I,{L:()=>p});var e=o(65879),n=o(65619),t=o(83620),i=o(59773),l=o(94664),C=o(98498),E=o(96814),u=o(60095),z=o(70855),M=o(20824),h=o(93355);function v(f,y){if(1&f){const T=e.EpF();e.TgZ(0,"input",3),e.NdJ("ngModelChange",function(D){e.CHM(T);const _=e.oxw();return e.KtG(_.change(D))})("keyup.enter",function(D){e.CHM(T);const _=e.oxw();return e.KtG(_.enter(D))})("focus",function(D){e.CHM(T);const _=e.oxw();return e.KtG(_.focus(D))})("blur",function(D){e.CHM(T);const _=e.oxw();return e.KtG(_.blur(D))}),e.qZA()}if(2&f){const T=e.oxw();e.Q6J("disabled",T.disabled)("nzSize",T.ui.size)("nzBorderless",T.ui.borderless)("ngModel",T.value),e.uIk("id",T.id)("disabled",T.disabled)("maxLength",T.schema.maxLength||null)("type",T.ui.type||"text")("placeholder",T.ui.placeholder)("autocomplete",T.ui.autocomplete)("autoFocus",T.ui.autofocus)}}function g(f,y){}function d(f,y){if(1&f&&(e.ynx(0),e.TgZ(1,"nz-input-group",4),e.YNc(2,g,0,0,"ng-template",5),e.qZA(),e.BQk()),2&f){const T=e.oxw(),x=e.MAs(2);e.xp6(1),e.Q6J("nzAddOnBefore",T.ui.addOnBefore)("nzAddOnAfter",T.ui.addOnAfter)("nzAddOnBeforeIcon",T.ui.addOnBeforeIcon)("nzAddOnAfterIcon",T.ui.addOnAfterIcon)("nzPrefix",T.ui.prefix)("nzPrefixIcon",T.ui.prefixIcon)("nzSuffix",T.ui.suffix)("nzSuffixIcon",T.ui.suffixIcon),e.xp6(1),e.Q6J("ngTemplateOutlet",x)}}let p=(()=>{class f extends C.$j{constructor(){super(...arguments),this.change$=null}ngOnInit(){const{addOnAfter:T,addOnAfterIcon:x,addOnBefore:D,addOnBeforeIcon:_,prefix:P,prefixIcon:S,suffix:A,suffixIcon:k,autofocus:R}=this.ui;this.type=T||D||x||_||P||S||A||k?"addon":"",!0===R&&setTimeout(()=>{this.injector.get(e.SBq).nativeElement.querySelector(`#${this.id}`).focus()},20),this.initChange()}reset(T){!T&&"color"===this.schema.format&&this.setValue("#000000")}initChange(){const T=this.ui.changeDebounceTime,x=this.ui.change;if(null==T||T<=0||null==x)return;this.change$=new n.X(this.value);let D=this.change$.asObservable().pipe((0,t.b)(T),(0,i.R)(this.sfItemComp.destroy$));null!=this.ui.changeMap&&(D=D.pipe((0,l.w)(this.ui.changeMap))),D.subscribe(_=>x(_))}change(T){this.setValue(T),null==this.change$?this.ui.change&&this.ui.change(T):this.change$.next(T)}focus(T){this.ui.focus&&this.ui.focus(T)}blur(T){this.ui.blur&&this.ui.blur(T)}enter(T){this.ui.enter&&this.ui.enter(T)}static#e=this.\u0275fac=function(){let T;return function(D){return(T||(T=e.n5z(f)))(D||f)}}();static#t=this.\u0275cmp=e.Xpm({type:f,selectors:[["sf-string"]],features:[e.qOj],decls:4,vars:8,consts:[[3,"id","schema","ui","showError","error","showTitle"],["ipt",""],[4,"ngIf","ngIfElse"],["nz-input","",3,"disabled","nzSize","nzBorderless","ngModel","ngModelChange","keyup.enter","focus","blur"],[3,"nzAddOnBefore","nzAddOnAfter","nzAddOnBeforeIcon","nzAddOnAfterIcon","nzPrefix","nzPrefixIcon","nzSuffix","nzSuffixIcon"],[3,"ngTemplateOutlet"]],template:function(x,D){if(1&x&&(e.TgZ(0,"sf-item-wrap",0),e.YNc(1,v,1,11,"ng-template",null,1,e.W1O),e.YNc(3,d,3,9,"ng-container",2),e.qZA()),2&x){const _=e.MAs(2);e.Q6J("id",D.id)("schema",D.schema)("ui",D.ui)("showError",D.showError)("error",D.error)("showTitle",D.schema.title),e.xp6(3),e.Q6J("ngIf","addon"===D.type)("ngIfElse",_)}},dependencies:[E.O5,E.tP,u.Fj,u.JJ,u.On,z.w,M.Zp,M.gB,M.ke,h.i],encapsulation:2})}return f})()},52569:(nt,I,o)=>{"use strict";o.d(I,{o:()=>f});var e=o(92219),n=o(98498),t=o(65879),i=o(96814),l=o(70855),C=o(90551),E=o(55695),u=o(93355);function z(y,T){if(1&y&&t._UZ(0,"i",3),2&y){const x=T.$implicit;t.Q6J("nzType",x.type)("nzTheme",x.theme)("nzTwotoneColor",x.twotoneColor)("nzRotate",x.rotate)("nzIconfont",x.iconfont)("nzSpin",x.spin)}}function M(y,T){}const h=function(y){return{$implicit:y}};function v(y,T){if(1&y&&(t.ynx(0),t.YNc(1,M,0,0,"ng-template",6),t.BQk()),2&y){const x=t.oxw().$implicit;t.oxw();const D=t.MAs(2);t.xp6(1),t.Q6J("ngTemplateOutlet",D)("ngTemplateOutletContext",t.VKq(2,h,x.prefixIcon))}}function g(y,T){}function d(y,T){if(1&y&&(t.ynx(0),t.YNc(1,g,0,0,"ng-template",6),t.BQk()),2&y){const x=t.oxw().$implicit;t.oxw();const D=t.MAs(2);t.xp6(1),t.Q6J("ngTemplateOutlet",D)("ngTemplateOutletContext",t.VKq(2,h,x.suffixIcon))}}function p(y,T){if(1&y){const x=t.EpF();t.TgZ(0,"nz-tag",4),t.NdJ("nzOnClose",function(_){t.CHM(x);const P=t.oxw();return t.KtG(P._close(_))})("nzCheckedChange",function(){const P=t.CHM(x).$implicit,S=t.oxw();return t.KtG(S.onChange(P))}),t.YNc(1,v,2,4,"ng-container",5),t.TgZ(2,"span"),t._uU(3),t.qZA(),t.YNc(4,d,2,4,"ng-container",5),t.qZA()}if(2&y){const x=T.$implicit,D=t.oxw();t.Q6J("nzMode",D.ui.mode||"checkable")("nzChecked",x.checked),t.xp6(1),t.Q6J("ngIf",x.prefixIcon),t.xp6(2),t.Oqu(x.label),t.xp6(1),t.Q6J("ngIf",x.suffixIcon)}}let f=(()=>{class y extends n.$j{constructor(){super(...arguments),this.data=[]}reset(x){(0,e.Yu)(this.schema,this.ui,x).subscribe(D=>{this.data=D,this.detectChanges()})}onChange(x){x.checked=!x.checked,this.updateValue(),this.ui.checkedChange&&this.ui.checkedChange(x.checked)}_close(x){this.ui.onClose&&this.ui.onClose(x)}updateValue(){this.formProperty.setValue(this.data.filter(x=>x.checked).map(x=>x.value),!1)}static#e=this.\u0275fac=function(){let x;return function(_){return(x||(x=t.n5z(y)))(_||y)}}();static#t=this.\u0275cmp=t.Xpm({type:y,selectors:[["sf-tag"]],features:[t.qOj],decls:4,vars:7,consts:[[3,"id","schema","ui","showError","error","showTitle"],["icon",""],[3,"nzMode","nzChecked","nzOnClose","nzCheckedChange",4,"ngFor","ngForOf"],["nz-icon","",3,"nzType","nzTheme","nzTwotoneColor","nzRotate","nzIconfont","nzSpin"],[3,"nzMode","nzChecked","nzOnClose","nzCheckedChange"],[4,"ngIf"],[3,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(D,_){1&D&&(t.TgZ(0,"sf-item-wrap",0),t.YNc(1,z,1,6,"ng-template",null,1,t.W1O),t.YNc(3,p,5,5,"nz-tag",2),t.qZA()),2&D&&(t.Q6J("id",_.id)("schema",_.schema)("ui",_.ui)("showError",_.showError)("error",_.error)("showTitle",_.schema.title),t.xp6(3),t.Q6J("ngForOf",_.data))},dependencies:[i.sg,i.O5,i.tP,l.w,C.Ls,E.j,u.i],encapsulation:2})}return y})()},98350:(nt,I,o)=>{"use strict";o.d(I,{y:()=>u});var e=o(92219),n=o(98498),t=o(65879),i=o(96814),l=o(93355);function C(z,M){if(1&z&&t._UZ(0,"span",3),2&z){const h=t.oxw();t.Q6J("innerHTML",h.text,t.oJD)}}function E(z,M){if(1&z&&t._UZ(0,"span",4),2&z){const h=t.oxw();t.Q6J("innerText",h.text)}}let u=(()=>{class z extends n.$j{constructor(){super(...arguments),this.text=""}ngOnInit(){this.ui._required=!1,this.ui.html=(0,e.AM)(this.ui.html,!0)}reset(h){this.text=h||this.ui.defaultText||"-"}static#e=this.\u0275fac=function(){let h;return function(g){return(h||(h=t.n5z(z)))(g||z)}}();static#t=this.\u0275cmp=t.Xpm({type:z,selectors:[["sf-text"]],features:[t.qOj],decls:3,vars:10,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"innerHTML",4,"ngIf"],[3,"innerText",4,"ngIf"],[3,"innerHTML"],[3,"innerText"]],template:function(v,g){1&v&&(t.TgZ(0,"sf-item-wrap",0),t.YNc(1,C,1,1,"span",1),t.YNc(2,E,1,1,"span",2),t.qZA()),2&v&&(t.ekj("sf__text-html",g.ui.html),t.Q6J("id",g.id)("schema",g.schema)("ui",g.ui)("showError",g.showError)("error",g.error)("showTitle",g.schema.title),t.xp6(1),t.Q6J("ngIf",g.ui.html),t.xp6(1),t.Q6J("ngIf",!g.ui.html))},dependencies:[i.O5,l.i],encapsulation:2})}return z})()},53250:(nt,I,o)=>{"use strict";o.d(I,{_:()=>z});var e=o(98498),n=o(65879),t=o(96814),i=o(60095),l=o(20824),C=o(93355);function E(M,h){if(1&M){const v=n.EpF();n.TgZ(0,"textarea",3),n.NdJ("ngModelChange",function(d){n.CHM(v);const p=n.oxw();return n.KtG(p.change(d))})("focus",function(d){n.CHM(v);const p=n.oxw();return n.KtG(p.focus(d))})("blur",function(d){n.CHM(v);const p=n.oxw();return n.KtG(p.blur(d))}),n._uU(1," "),n.qZA()}if(2&M){const v=n.oxw();n.Q6J("disabled",v.disabled)("nzSize",v.ui.size)("ngModel",v.value)("nzAutosize",v.autosize)("nzBorderless",v.ui.borderless),n.uIk("id",v.id)("disabled",v.disabled)("maxLength",v.schema.maxLength||null)("placeholder",v.ui.placeholder)}}function u(M,h){if(1&M){const v=n.EpF();n.ynx(0),n.TgZ(1,"nz-textarea-count",4)(2,"textarea",3),n.NdJ("ngModelChange",function(d){n.CHM(v);const p=n.oxw();return n.KtG(p.change(d))})("focus",function(d){n.CHM(v);const p=n.oxw();return n.KtG(p.focus(d))})("blur",function(d){n.CHM(v);const p=n.oxw();return n.KtG(p.blur(d))}),n._uU(3," "),n.qZA()(),n.BQk()}if(2&M){const v=n.oxw();n.xp6(1),n.Q6J("nzMaxCharacterCount",v.ui.maxCharacterCount)("nzComputeCharacterCount",v.ui.computeCharacterCount),n.xp6(1),n.Q6J("disabled",v.disabled)("nzSize",v.ui.size)("ngModel",v.value)("nzAutosize",v.autosize)("nzBorderless",v.ui.borderless),n.uIk("id",v.id)("disabled",v.disabled)("maxLength",v.schema.maxLength||null)("placeholder",v.ui.placeholder)}}let z=(()=>{class M extends e.$j{constructor(){super(...arguments),this.autosize=!0}ngOnInit(){null!=this.ui.autosize&&(this.autosize=this.ui.autosize),null==this.ui.computeCharacterCount&&(this.ui.computeCharacterCount=v=>v.length)}change(v){this.setValue(v),this.ui.change&&this.ui.change(v)}focus(v){this.ui.focus&&this.ui.focus(v)}blur(v){this.ui.blur&&this.ui.blur(v)}static#e=this.\u0275fac=function(){let v;return function(d){return(v||(v=n.n5z(M)))(d||M)}}();static#t=this.\u0275cmp=n.Xpm({type:M,selectors:[["sf-textarea"]],features:[n.qOj],decls:4,vars:8,consts:[[3,"id","schema","ui","showError","error","showTitle"],["ipt",""],[4,"ngIf","ngIfElse"],["nz-input","",3,"disabled","nzSize","ngModel","nzAutosize","nzBorderless","ngModelChange","focus","blur"],[3,"nzMaxCharacterCount","nzComputeCharacterCount"]],template:function(g,d){if(1&g&&(n.TgZ(0,"sf-item-wrap",0),n.YNc(1,E,2,9,"ng-template",null,1,n.W1O),n.YNc(3,u,4,11,"ng-container",2),n.qZA()),2&g){const p=n.MAs(2);n.Q6J("id",d.id)("schema",d.schema)("ui",d.ui)("showError",d.showError)("error",d.error)("showTitle",d.schema.title),n.xp6(3),n.Q6J("ngIf",d.ui.maxCharacterCount)("ngIfElse",p)}},dependencies:[t.O5,i.Fj,i.JJ,i.On,l.w,l.Zp,l.rh,C.i],encapsulation:2})}return M})()},45858:(nt,I,o)=>{"use strict";o.d(I,{N:()=>u});var e=o(89207),n=o(92219),t=o(98498),i=o(65879),l=o(60095),C=o(60047),E=o(93355);let u=(()=>{class z extends t.$j{constructor(){super(...arguments),this.displayValue=null}ngOnInit(){const h=this.ui;this.valueFormat=h._format;const v={displayFormat:h.displayFormat||"HH:mm:ss",allowEmpty:(0,n.AM)(h.allowEmpty,!0),clearText:h.clearText||"\u6e05\u9664",defaultOpenValue:h.defaultOpenValue||new Date,hideDisabledOptions:(0,n.AM)(h.hideDisabledOptions,!1),use12Hours:(0,n.AM)(h.use12Hours,!1),hourStep:h.hourStep||1,minuteStep:h.minuteStep||1,secondStep:h.secondStep||1};v.use12Hours&&!h.displayFormat&&(v.displayFormat="h:mm:ss a"),this.i=v}reset(h){if(h instanceof Date)return this.displayValue=h,void this.detectChanges();let v=null!=h&&h.toString().length?new Date(h):null;null!=v&&"Invalid Date"===v.toString()&&(h.toString().split(":").length<=1&&(h+=":00"),v=new Date(`1970-1-1 ${h}`)),this.displayValue=v,this.detectChanges()}_change(h){this.ui.change&&this.ui.change(h),this.setValue(null!=h?!0!==this.ui.utcEpoch?(0,e.Z)(h,this.valueFormat):Date.UTC(1970,0,1,h.getHours(),h.getMinutes(),h.getSeconds()):null)}_openChange(h){this.ui.openChange&&this.ui.openChange(h)}static#e=this.\u0275fac=function(){let h;return function(g){return(h||(h=i.n5z(z)))(g||z)}}();static#t=this.\u0275cmp=i.Xpm({type:z,selectors:[["sf-time"]],features:[i.qOj],decls:2,vars:26,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"nzId","ngModel","nzDisabled","nzSize","nzFormat","nzAllowEmpty","nzClearText","nzDefaultOpenValue","nzDisabledHours","nzDisabledMinutes","nzDisabledSeconds","nzHideDisabledOptions","nzUse12Hours","nzHourStep","nzMinuteStep","nzSecondStep","nzPopupClassName","nzPlaceHolder","nzNowText","nzOkText","ngModelChange","nzOpenChange"]],template:function(v,g){1&v&&(i.TgZ(0,"sf-item-wrap",0)(1,"nz-time-picker",1),i.NdJ("ngModelChange",function(p){return g.displayValue=p})("ngModelChange",function(p){return g._change(p)})("nzOpenChange",function(p){return g._openChange(p)}),i.qZA()()),2&v&&(i.Q6J("id",g.id)("schema",g.schema)("ui",g.ui)("showError",g.showError)("error",g.error)("showTitle",g.schema.title),i.xp6(1),i.Q6J("nzId",g.id)("ngModel",g.displayValue)("nzDisabled",g.disabled)("nzSize",g.ui.size)("nzFormat",g.i.displayFormat)("nzAllowEmpty",g.i.allowEmpty)("nzClearText",g.i.clearText)("nzDefaultOpenValue",g.i.defaultOpenValue)("nzDisabledHours",g.ui.disabledHours)("nzDisabledMinutes",g.ui.disabledMinutes)("nzDisabledSeconds",g.ui.disabledSeconds)("nzHideDisabledOptions",g.i.hideDisabledOptions)("nzUse12Hours",g.i.use12Hours)("nzHourStep",g.i.hourStep)("nzMinuteStep",g.i.minuteStep)("nzSecondStep",g.i.secondStep)("nzPopupClassName",g.ui.popupClassName)("nzPlaceHolder",g.ui.placeholder)("nzNowText",g.ui.nowText)("nzOkText",g.ui.okText))},dependencies:[l.JJ,l.On,C.m4,E.i],encapsulation:2})}return z})()},55986:(nt,I,o)=>{"use strict";o.d(I,{v:()=>E});var e=o(22096),n=o(92219),t=o(98498),i=o(65879),l=o(10358),C=o(93355);let E=(()=>{class u extends t.$j{constructor(){super(...arguments),this.list=[],this._data=[],this._canMove=M=>this.ui.canMove?this.ui.canMove(M):(0,e.of)(M.list)}ngOnInit(){const{titles:M,operations:h,itemUnit:v,itemsUnit:g}=this.ui;this.i={titles:M||["",""],operations:h||["",""],itemUnit:v||"\u9879",itemsUnit:g||"\u9879"}}reset(M){(0,n.Yu)(this.schema,this.ui,null).subscribe(h=>{let v=M;Array.isArray(v)||(v=[v]),h.forEach(g=>{~v.indexOf(g.value)&&(g.direction="right")}),this.list=h,this._data=h.filter(g=>"right"===g.direction),this.notify(),this.detectChanges()})}notify(){this.formProperty.setValue(this._data.map(M=>M.value),!1)}_change(M){this._data="right"===M.to?this._data.concat(...M.list):this._data.filter(h=>-1===M.list.indexOf(h)),this.ui.change&&this.ui.change(M),this.notify()}_searchChange(M){this.ui.searchChange&&this.ui.searchChange(M),this.detectChanges()}_selectChange(M){this.ui.selectChange&&this.ui.selectChange(M),this.detectChanges()}static#e=this.\u0275fac=function(){let M;return function(v){return(M||(M=i.n5z(u)))(v||u)}}();static#t=this.\u0275cmp=i.Xpm({type:u,selectors:[["sf-transfer"]],features:[i.qOj],decls:2,vars:17,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"nzDataSource","nzTitles","nzOperations","nzListStyle","nzItemUnit","nzItemsUnit","nzShowSearch","nzFilterOption","nzSearchPlaceholder","nzNotFoundContent","nzCanMove","nzChange","nzSearchChange","nzSelectChange"]],template:function(h,v){1&h&&(i.TgZ(0,"sf-item-wrap",0)(1,"nz-transfer",1),i.NdJ("nzChange",function(d){return v._change(d)})("nzSearchChange",function(d){return v._searchChange(d)})("nzSelectChange",function(d){return v._selectChange(d)}),i.qZA()()),2&h&&(i.Q6J("id",v.id)("schema",v.schema)("ui",v.ui)("showError",v.showError)("error",v.error)("showTitle",v.schema.title),i.xp6(1),i.Q6J("nzDataSource",v.list)("nzTitles",v.i.titles)("nzOperations",v.i.operations)("nzListStyle",v.ui.listStyle)("nzItemUnit",v.i.itemUnit)("nzItemsUnit",v.i.itemsUnit)("nzShowSearch",v.ui.showSearch)("nzFilterOption",v.ui.filterOption)("nzSearchPlaceholder",v.ui.searchPlaceholder)("nzNotFoundContent",v.ui.notFoundContent)("nzCanMove",v._canMove))},dependencies:[l.BC,C.i],encapsulation:2})}return u})()},28448:(nt,I,o)=>{"use strict";o.d(I,{f:()=>E});var e=o(92219),n=o(98498),t=o(65879),i=o(60095),l=o(80729),C=o(93355);let E=(()=>{class u extends n.$j{constructor(){super(...arguments),this.data=[],this.asyncData=!1}ngOnInit(){const{ui:M}=this;this.i={allowClear:M.allowClear,showSearch:(0,e.AM)(M.showSearch,!1),dropdownMatchSelectWidth:(0,e.AM)(M.dropdownMatchSelectWidth,!0),multiple:(0,e.AM)(M.multiple,!1),checkable:(0,e.AM)(M.checkable,!1),showIcon:(0,e.AM)(M.showIcon,!1),showExpand:(0,e.AM)(M.showExpand,!0),showLine:(0,e.AM)(M.showLine,!1),checkStrictly:(0,e.AM)(M.checkStrictly,!1),hideUnMatched:(0,e.AM)(M.hideUnMatched,!1),defaultExpandAll:(0,e.AM)(M.defaultExpandAll,!1),displayWith:M.displayWith||(h=>h.title)},this.asyncData="function"==typeof M.expandChange}reset(M){(0,e.Yu)(this.schema,this.ui,M).subscribe(h=>{this.data=h,this.detectChanges()})}change(M){this.ui.change&&this.ui.change(M),this.setValue(M)}expandChange(M){const{ui:h}=this;"function"==typeof h.expandChange&&h.expandChange(M).subscribe(v=>{M.node.clearChildren(),M.node.addChildren(v),this.detectChanges()})}static#e=this.\u0275fac=function(){let M;return function(v){return(M||(M=t.n5z(u)))(v||u)}}();static#t=this.\u0275cmp=t.Xpm({type:u,selectors:[["sf-tree-select"]],features:[t.qOj],decls:2,vars:36,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"nzId","nzAllowClear","nzPlaceHolder","nzDropdownStyle","nzDropdownClassName","nzSize","nzExpandedKeys","nzNotFoundContent","nzMaxTagCount","nzMaxTagPlaceholder","nzTreeTemplate","nzDisabled","nzShowSearch","nzShowIcon","nzDropdownMatchSelectWidth","nzMultiple","nzHideUnMatched","nzCheckable","nzShowExpand","nzShowLine","nzCheckStrictly","nzAsyncData","nzNodes","nzDefaultExpandAll","nzDisplayWith","ngModel","nzVirtualHeight","nzVirtualItemSize","nzVirtualMaxBufferPx","nzVirtualMinBufferPx","ngModelChange","nzExpandChange"]],template:function(h,v){1&h&&(t.TgZ(0,"sf-item-wrap",0)(1,"nz-tree-select",1),t.NdJ("ngModelChange",function(d){return v.change(d)})("nzExpandChange",function(d){return v.expandChange(d)}),t.qZA()()),2&h&&(t.Q6J("id",v.id)("schema",v.schema)("ui",v.ui)("showError",v.showError)("error",v.error)("showTitle",v.schema.title),t.xp6(1),t.Q6J("nzId",v.id)("nzAllowClear",v.i.allowClear)("nzPlaceHolder",v.ui.placeholder)("nzDropdownStyle",v.ui.dropdownStyle)("nzDropdownClassName",v.ui.dropdownClassName)("nzSize",v.ui.size)("nzExpandedKeys",v.ui.expandedKeys)("nzNotFoundContent",v.ui.notFoundContent)("nzMaxTagCount",v.ui.maxTagCount)("nzMaxTagPlaceholder",v.ui.maxTagPlaceholder||null)("nzTreeTemplate",v.ui.treeTemplate)("nzDisabled",v.disabled)("nzShowSearch",v.i.showSearch)("nzShowIcon",v.i.showIcon)("nzDropdownMatchSelectWidth",v.i.dropdownMatchSelectWidth)("nzMultiple",v.i.multiple)("nzHideUnMatched",v.i.hideUnMatched)("nzCheckable",v.i.checkable)("nzShowExpand",v.i.showExpand)("nzShowLine",v.i.showLine)("nzCheckStrictly",v.i.checkStrictly)("nzAsyncData",v.asyncData)("nzNodes",v.data)("nzDefaultExpandAll",v.i.defaultExpandAll)("nzDisplayWith",v.i.displayWith)("ngModel",v.value)("nzVirtualHeight",v.ui.virtualHeight)("nzVirtualItemSize",v.ui.virtualItemSize||28)("nzVirtualMaxBufferPx",v.ui.virtualMaxBufferPx||500)("nzVirtualMinBufferPx",v.ui.virtualMinBufferPx||28))},dependencies:[i.JJ,i.On,l.zr,C.i],encapsulation:2})}return u})()},70410:(nt,I,o)=>{"use strict";o.d(I,{c:()=>y});var e=o(22096),n=o(64115),t=o(81221),i=o(92219),l=o(98498),C=o(65879),E=o(96814),u=o(42840),z=o(70855),M=o(41958),h=o(90551),v=o(41394),g=o(93355);function d(T,x){if(1&T&&(C.ynx(0),C._UZ(1,"i",5)(2,"div",6),C.BQk()),2&T){const D=C.oxw();C.xp6(2),C.Q6J("innerHTML",D.i.text,C.oJD)}}function p(T,x){if(1&T&&(C.ynx(0),C.TgZ(1,"p",7),C._UZ(2,"i",8),C.qZA(),C._UZ(3,"p",6)(4,"p",9),C.BQk()),2&T){const D=C.oxw();C.xp6(3),C.Q6J("innerHTML",D.i.text,C.oJD),C.xp6(1),C.Q6J("innerHTML",D.i.hint,C.oJD)}}function f(T,x){if(1&T&&(C.ynx(0),C.TgZ(1,"button",10),C._UZ(2,"i",11)(3,"span",12),C.qZA(),C.BQk()),2&T){const D=C.oxw();C.xp6(3),C.Q6J("innerHTML",D.i.text,C.oJD)}}let y=(()=>{class T extends l.$j{constructor(){super(...arguments),this.fileList=[],this.btnType="",this.handleRemove=()=>(this._setValue(this.fileList),!0),this.handlePreview=D=>{if(this.ui.preview)return void this.ui.preview(D);const _=D.thumbUrl||D.url;_&&this.injector.get(t.Sf).create({nzContent:``,nzFooter:null})}}ngOnInit(){const{type:D,text:_,hint:P,action:S,accept:A,limit:k,filter:R,fileSize:$,fileType:W,listType:ze,multiple:Y,name:G,showUploadList:V,withCredentials:K,resReName:te,urlReName:ne,beforeUpload:fe,customRequest:re,directory:be,openFileDialogOnClick:le,limitFileCount:ce}=this.ui,Q={type:D||"select",text:_||"\u70b9\u51fb\u4e0a\u4f20",action:S||"",accept:A||"",directory:(0,i.AM)(be,!1),openFileDialogOnClick:(0,i.AM)(le,!0),limit:null==k?0:+k,filter:R??[],size:null==$?0:+$,fileType:W||"",listType:ze||"text",multiple:(0,i.AM)(Y,!1),name:G||"file",showUploadList:V??!0,withCredentials:(0,i.AM)(K,!1),resReName:(te||"").split("."),urlReName:(ne||"").split("."),beforeUpload:"function"==typeof fe?fe:null,customRequest:"function"==typeof re?re:null,limitFileCount:ce||999};"picture-card"===Q.listType&&(this.btnType="plus"),"drag"===Q.type&&(Q.listType=null,this.btnType="drag",Q.text=_||"\u5355\u51fb\u6216\u62d6\u52a8\u6587\u4ef6\u5230\u8be5\u533a\u57df\u4e0a\u4f20",Q.hint=P||"\u652f\u6301\u5355\u4e2a\u6216\u6279\u91cf\uff0c\u4e25\u7981\u4e0a\u4f20\u516c\u53f8\u6570\u636e\u6216\u5176\u4ed6\u5b89\u5168\u6587\u4ef6"),this.i=Q}change(D){this.ui.change&&this.ui.change(D),"success"===D.type&&this._setValue(D.fileList)}reset(D){const{fileList:_}=this.ui;(_?(0,e.of)(_):Array.isArray(D)?(0,e.of)(D):(0,i.Yu)(this.schema,this.ui,null)).subscribe(P=>{this.fileList=P,this.formProperty._value=this.pureValue(P),this.formProperty.updateValueAndValidity({onlySelf:!1,emitValueEvent:!1,emitValidator:!1}),this.detectChanges()})}_getValue(D){return(0,n.In)(D.response,this.i.resReName,D.response)}pureValue(D){D.filter(P=>!P.url).forEach(P=>{P.url=(0,n.In)(P.response,this.i.urlReName)});const _=D.filter(P=>"done"===P.status).map(P=>this._getValue(P));return!0===this.i.multiple?_:_.pop()}_setValue(D){this.setValue(this.pureValue(D))}static#e=this.\u0275fac=function(){let D;return function(P){return(D||(D=C.n5z(T)))(P||T)}}();static#t=this.\u0275cmp=C.Xpm({type:T,selectors:[["sf-upload"]],features:[C.qOj],decls:6,vars:35,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"nzType","nzFileList","nzDisabled","nzAction","nzDirectory","nzOpenFileDialogOnClick","nzAccept","nzLimit","nzFilter","nzSize","nzFileType","nzHeaders","nzData","nzListType","nzMultiple","nzName","nzShowUploadList","nzWithCredentials","nzBeforeUpload","nzCustomRequest","nzRemove","nzPreview","nzPreviewFile","nzDownload","nzTransformFile","nzShowButton","nzFileListChange","nzChange"],[3,"ngSwitch"],[4,"ngSwitchCase"],[4,"ngSwitchDefault"],["nz-icon","","nzType","plus"],[1,"ant-upload-text",3,"innerHTML"],[1,"ant-upload-drag-icon"],["nz-icon","","nzType","inbox"],[1,"ant-upload-hint",3,"innerHTML"],["type","button","nz-button",""],["nz-icon","","nzType","upload"],[3,"innerHTML"]],template:function(_,P){1&_&&(C.TgZ(0,"sf-item-wrap",0)(1,"nz-upload",1),C.NdJ("nzFileListChange",function(A){return P.fileList=A})("nzChange",function(A){return P.change(A)}),C.ynx(2,2),C.YNc(3,d,3,1,"ng-container",3),C.YNc(4,p,5,2,"ng-container",3),C.YNc(5,f,4,1,"ng-container",4),C.BQk(),C.qZA()()),2&_&&(C.Q6J("id",P.id)("schema",P.schema)("ui",P.ui)("showError",P.showError)("error",P.error)("showTitle",P.schema.title),C.xp6(1),C.Q6J("nzType",P.i.type)("nzFileList",P.fileList)("nzDisabled",P.disabled)("nzAction",P.i.action)("nzDirectory",P.i.directory)("nzOpenFileDialogOnClick",P.i.openFileDialogOnClick)("nzAccept",P.i.accept)("nzLimit",P.i.limit)("nzFilter",P.i.filter)("nzSize",P.i.size)("nzFileType",P.i.fileType)("nzHeaders",P.ui.headers)("nzData",P.ui.data)("nzListType",P.i.listType)("nzMultiple",P.i.multiple)("nzName",P.i.name)("nzShowUploadList",P.i.showUploadList)("nzWithCredentials",P.i.withCredentials)("nzBeforeUpload",P.i.beforeUpload)("nzCustomRequest",P.i.customRequest)("nzRemove",P.ui.remove||P.handleRemove)("nzPreview",P.handlePreview)("nzPreviewFile",P.ui.previewFile)("nzDownload",P.ui.download)("nzTransformFile",P.ui.transformFile)("nzShowButton",P.fileList.length{"use strict";o.d(I,{Oi:()=>t.Oi,BQ:()=>t.BQ,pG:()=>wt.p,uU:()=>$e.u,lD:()=>le.l,s7:()=>be.s7,hC:()=>Mt.h,hl:()=>C,Te:()=>Ae.T,lw:()=>S,aP:()=>A,kz:()=>h,gb:()=>E.g,yD:()=>V,q4:()=>De,fU:()=>Ue.f,lP:()=>we,iF:()=>ce,yn:()=>Ue.yn,bF:()=>Q.Z});var e=o(65619),n=o(63020),t=o(57447),i=o(65879),l=o(27929);let C=(()=>{class Pe{constructor(Ge,Ke){this.i18nSrv=Ge,this.aclService=Ke,this._change$=new e.X([]),this.data=[],this.openStrictly=!1,this.i18n$=this.i18nSrv.change.subscribe(()=>this.resume())}get change(){return this._change$.pipe((0,n.B)())}get menus(){return this.data}visit(Ge,Ke){const _e=(it,b,N)=>{for(const O of it)Ke(O,b,N),O.children&&O.children.length>0?_e(O.children,O,N+1):O.children=[]};_e(Ge,null,0)}add(Ge){this.data=Ge,this.resume()}fixItem(Ge){if(Ge._aclResult=!0,Ge.link||(Ge.link=""),Ge.externalLink||(Ge.externalLink=""),Ge.badge&&(!0!==Ge.badgeDot&&(Ge.badgeDot=!1),Ge.badgeStatus||(Ge.badgeStatus="error")),Array.isArray(Ge.children)||(Ge.children=[]),"string"==typeof Ge.icon){let Ke="class",_e=Ge.icon;~Ge.icon.indexOf("anticon-")?(Ke="icon",_e=_e.split("-").slice(1).join("-")):/^https?:\/\//.test(Ge.icon)&&(Ke="img"),Ge.icon={type:Ke,value:_e}}null!=Ge.icon&&(Ge.icon={theme:"outline",spin:!1,...Ge.icon}),Ge.text=Ge.i18n&&this.i18nSrv?this.i18nSrv.fanyi(Ge.i18n):Ge.text,Ge.group=!1!==Ge.group,Ge._hidden=!(typeof Ge.hide>"u")&&Ge.hide,Ge.disabled=!(typeof Ge.disabled>"u")&&Ge.disabled,Ge._aclResult=!Ge.acl||!this.aclService||this.aclService.can(Ge.acl),Ge.open=null!=Ge.open&&Ge.open}resume(Ge){let Ke=1;const _e=[];this.visit(this.data,(it,b,N)=>{it._id=Ke++,it._parent=b,it._depth=N,this.fixItem(it),b&&!0===it.shortcut&&!0!==b.shortcutRoot&&_e.push(it),Ge&&Ge(it,b,N)}),this.loadShortcut(_e),this._change$.next(this.data)}loadShortcut(Ge){if(0===Ge.length||0===this.data.length)return;const Ke=this.data[0].children;let _e=Ke.findIndex(b=>!0===b.shortcutRoot);-1===_e&&(_e=Ke.findIndex(N=>N.link.includes("dashboard")),_e=(-1!==_e?_e:-1)+1,this.data[0].children.splice(_e,0,{text:"\u5feb\u6377\u83dc\u5355",i18n:"shortcut",icon:"icon-rocket",children:[]}));let it=this.data[0].children[_e];it.i18n&&this.i18nSrv&&(it.text=this.i18nSrv.fanyi(it.i18n)),it=Object.assign(it,{shortcutRoot:!0,_id:-1,_parent:null,_depth:1}),it.children=Ge.map(b=>(b._depth=2,b._parent=it,b))}clear(){this.data=[],this._change$.next(this.data)}find(Ge){const Ke={recursive:!1,ignoreHide:!1,...Ge};if(null!=Ke.key)return this.getItem(Ke.key);let _e=Ke.url,it=null;for(;!it&&_e&&(this.visit(Ke.data??this.data,b=>{if(!Ke.ignoreHide||!b.hide){if(Ke.cb){const N=Ke.cb(b);!it&&"boolean"==typeof N&&N&&(it=b)}null!=b.link&&b.link===_e&&(it=b)}}),Ke.recursive);)_e=/[?;]/g.test(_e)?_e.split(/[?;]/g)[0]:_e.split("/").slice(0,-1).join("/");return it}getPathByUrl(Ge,Ke=!1){const _e=[];let it=this.find({url:Ge,recursive:Ke});if(!it)return _e;do{_e.splice(0,0,it),it=it._parent}while(it);return _e}getItem(Ge){let Ke=null;return this.visit(this.data,_e=>{null==Ke&&_e.key===Ge&&(Ke=_e)}),Ke}setItem(Ge,Ke,_e){const it="string"==typeof Ge?this.getItem(Ge):Ge;null!=it&&(Object.keys(Ke).forEach(b=>{it[b]=Ke[b]}),this.fixItem(it),!1!==_e?.emit&&this._change$.next(this.data))}open(Ge,Ke){let _e="string"==typeof Ge?this.find({key:Ge}):Ge;if(null!=_e){this.visit(this.menus,it=>{it._selected=!1,this.openStrictly||(it.open=!1)});do{_e._selected=!0,_e.open=!0,_e=_e._parent}while(_e);!1!==Ke?.emit&&this._change$.next(this.data)}}openAll(Ge){this.toggleOpen(null,{allStatus:Ge})}toggleOpen(Ge,Ke){let _e="string"==typeof Ge?this.find({key:Ge}):Ge;if(null==_e)this.visit(this.menus,it=>{it._selected=!1,it.open=!0===Ke?.allStatus});else{if(!this.openStrictly){this.visit(this.menus,b=>{b!==_e&&(b.open=!1)});let it=_e._parent;for(;it;)it.open=!0,it=it._parent}_e.open=!_e.open}!1!==Ke?.emit&&this._change$.next(this.data)}ngOnDestroy(){this._change$.unsubscribe(),this.i18n$.unsubscribe()}static#e=this.\u0275fac=function(Ke){return new(Ke||Pe)(i.LFG(t.Oi,8),i.LFG(l._8,8))};static#t=this.\u0275prov=i.Yz7({token:Pe,factory:Pe.\u0275fac,providedIn:"root"})}return Pe})();var E=o(78908),u=o(78967);let h=(()=>{class Pe{constructor(Ge){if(this.cog=Ge.merge("themeResponsive",{rules:{1:{xs:24},2:{xs:24,sm:12},3:{xs:24,sm:12,md:8},4:{xs:24,sm:12,md:8,lg:6},5:{xs:24,sm:12,md:8,lg:6,xl:4},6:{xs:24,sm:12,md:8,lg:6,xl:4,xxl:2}}}),Object.keys(this.cog.rules).map(Ke=>+Ke).some(Ke=>Ke<1||Ke>6))throw new Error("[theme] the responseive rule index value range must be 1-6")}genCls(Ge,Ke=1){const _e={...this.cog.rules[Ge>6?6:Math.max(Ge,1)]},it="ant-col",b=24/Ke,N=j=>null==j||Ke<=1||Ge>=Ke?j:Math.max(j,Ge*b),O=[`${it}-xs-${N(_e.xs)}`];return _e.sm&&O.push(`${it}-sm-${N(_e.sm)}`),_e.md&&O.push(`${it}-md-${N(_e.md)}`),_e.lg&&O.push(`${it}-lg-${N(_e.lg)}`),_e.xl&&O.push(`${it}-xl-${N(_e.xl)}`),_e.xxl&&O.push(`${it}-xxl-${N(_e.xxl)}`),O}static#e=this.\u0275fac=function(Ke){return new(Ke||Pe)(i.LFG(u.Ri))};static#t=this.\u0275prov=i.Yz7({token:Pe,factory:Pe.\u0275fac,providedIn:"root"})}return Pe})();var v=o(96814),g=o(32181),d=o(37398),p=o(49388),f=o(83064),y=o(62831);const x="direction",D=["modal","drawer","message","notification","image"],_=["loading","onboarding"],P="ltr",S="rtl";let A=(()=>{class Pe{get dir(){return this._dir}set dir(Ge){this._dir=Ge,this.updateLibConfig(),this.updateHtml(),Promise.resolve().then(()=>{this.d.value=Ge,this.d.change.emit(Ge),this.srv.setLayout(x,Ge)})}get nextDir(){return this.dir===P?S:P}get change(){return this.srv.notify.pipe((0,g.h)(Ge=>Ge.name===x),(0,d.U)(Ge=>Ge.value))}constructor(Ge,Ke,_e,it,b,N){this.d=Ge,this.srv=Ke,this.nz=_e,this.delon=it,this.platform=b,this.doc=N,this._dir=P,this.dir=Ke.layout.direction===S?S:P}toggle(){this.dir=this.nextDir}updateHtml(){if(!this.platform.isBrowser)return;const Ge=this.doc.querySelector("html");if(Ge){const Ke=this.dir;Ge.style.direction=Ke,Ge.classList.remove(S,P),Ge.classList.add(Ke),Ge.setAttribute("dir",Ke)}}updateLibConfig(){D.forEach(Ge=>{this.nz.set(Ge,{nzDirection:this.dir})}),_.forEach(Ge=>{this.delon.set(Ge,{direction:this.dir})})}static#e=this.\u0275fac=function(Ke){return new(Ke||Pe)(i.LFG(p.Is),i.LFG(E.g),i.LFG(f.jY),i.LFG(u.Ri),i.LFG(y.t4),i.LFG(v.K0))};static#t=this.\u0275prov=i.Yz7({token:Pe,factory:Pe.\u0275fac,providedIn:"root"})}return Pe})();var k=o(71993),R=o(52787),$=o(22096),W=o(5177),ze=o(2664),Y=o(94664),G=o(6593);let V=(()=>{class Pe{constructor(Ge,Ke,_e,it,b){this.injector=Ge,this.title=Ke,this.menuSrv=_e,this.i18nSrv=it,this.doc=b,this.destroy$=(0,i.f3M)(i.ktI),this._prefix="",this._suffix="",this._separator=" - ",this._reverse=!1,this.DELAY_TIME=25,this.default="Not Page Name",it.change.pipe((0,k.sL)()).subscribe(()=>this.setTitle())}set separator(Ge){this._separator=Ge}set prefix(Ge){this._prefix=Ge}set suffix(Ge){this._suffix=Ge}set reverse(Ge){this._reverse=Ge}getByElement(){return(0,$.of)("").pipe((0,W.g)(this.DELAY_TIME),(0,d.U)(()=>{const Ge=(null!=this.selector?this.doc.querySelector(this.selector):null)||this.doc.querySelector(".alain-default__content-title h1")||this.doc.querySelector(".page-header__title");if(Ge){let Ke="";return Ge.childNodes.forEach(_e=>{!Ke&&3===_e.nodeType&&(Ke=_e.textContent.trim())}),Ke||Ge.firstChild.textContent.trim()}return""}))}getByRoute(){let Ge=this.injector.get(R.gz);for(;Ge.firstChild;)Ge=Ge.firstChild;const Ke=Ge.snapshot&&Ge.snapshot.data||{};return Ke.titleI18n&&this.i18nSrv&&(Ke.title=this.i18nSrv.fanyi(Ke.titleI18n)),(0,ze.b)(Ke.title)?Ke.title:(0,$.of)(Ke.title)}getByMenu(){const Ge=this.menuSrv.getPathByUrl(this.injector.get(R.F0).url);if(!Ge||Ge.length<=0)return(0,$.of)("");const Ke=Ge[Ge.length-1];let _e;return Ke.i18n&&this.i18nSrv&&(_e=this.i18nSrv.fanyi(Ke.i18n)),(0,$.of)(_e||Ke.text)}setTitle(Ge){this.tit$?.unsubscribe(),this.tit$=(0,$.of)(Ge).pipe((0,Y.w)(Ke=>Ke?(0,$.of)(Ke):this.getByRoute()),(0,Y.w)(Ke=>Ke?(0,$.of)(Ke):this.getByMenu()),(0,Y.w)(Ke=>Ke?(0,$.of)(Ke):this.getByElement()),(0,d.U)(Ke=>Ke||this.default),(0,d.U)(Ke=>Array.isArray(Ke)?Ke:[Ke]),(0,k.sL)(this.destroy$)).subscribe(Ke=>{let _e=[];this._prefix&&_e.push(this._prefix),_e.push(...Ke.filter(it=>!!it)),this._suffix&&_e.push(this._suffix),this._reverse&&(_e=_e.reverse()),this.title.setTitle(_e.join(this._separator))})}setTitleByI18n(Ge,Ke){this.setTitle(this.i18nSrv.fanyi(Ge,Ke))}ngOnDestroy(){this.tit$?.unsubscribe()}static#e=this.\u0275fac=function(Ke){return new(Ke||Pe)(i.LFG(i.zs3),i.LFG(G.Dx),i.LFG(C),i.LFG(t.Oi,8),i.LFG(v.K0))};static#t=this.\u0275prov=i.Yz7({token:Pe,factory:Pe.\u0275fac,providedIn:"root"})}return Pe})();o(63123),o(15851);var be=o(35227),le=o(55379);const ce={abbr:"en-US",exception:{403:"Sorry, you don't have access to this page",404:"Sorry, the page you visited does not exist",500:"Sorry, the server is reporting an error",backToHome:"Back To Home"},noticeIcon:{emptyText:"No data",clearText:"Clear"},reuseTab:{close:"Close tab",closeOther:"Close other tabs",closeRight:"Close tabs to right",refresh:"Refresh"},tagSelect:{expand:"Expand",collapse:"Collapse"},miniProgress:{target:"Target: "},st:{total:"{{range[0]}} - {{range[1]}} of {{total}}",filterConfirm:"OK",filterReset:"Reset"},sf:{submit:"Submit",reset:"Reset",search:"Search",edit:"Save",addText:"Add",removeText:"Remove",checkAllText:"Check all",error:{"false schema":"Boolean schema is false",$ref:"Can't resolve reference {ref}",additionalItems:"Should not have more than {limit} item",additionalProperties:"Should not have additional properties",anyOf:'Should match some schema in "anyOf"',dependencies:"should have property {deps} when property {property} is present",enum:"Should be equal to one of predefined values",format:'Should match format "{format}"',type:"Should be {type}",required:"Required",maxLength:"Should not be longer than {limit} character",minLength:"Should not be shorter than {limit} character",minimum:"Should be {comparison} {limit}",formatMinimum:"Should be {comparison} {limit}",maximum:"Should be {comparison} {limit}",formatMaximum:"Should be {comparison} {limit}",maxItems:"Should not have more than {limit} item",minItems:"Should not have less than {limit} item",maxProperties:"Should not have more than {limit} property",minProperties:"Should not have less than {limit} property",multipleOf:"Should be a multiple of {multipleOf}",not:'Should not be valid according to schema in "not"',oneOf:'Should match exactly one schema in "oneOf"',pattern:'Should match pattern "{pattern}"',uniqueItems:"Should not have duplicate items (items ## {j} and {i} are identical)",custom:"Should match format",propertyNames:'Property name "{propertyName}" is invalid',patternRequired:'Should have property matching pattern "{missingPattern}"',switch:'Should pass "switch" keyword validation, case {caseIndex} fails',const:"Should be equal to constant",contains:"Should contain a valid item",formatExclusiveMaximum:"formatExclusiveMaximum should be boolean",formatExclusiveMinimum:"formatExclusiveMinimum should be boolean",if:'Should match "{failingKeyword}" schema'}},onboarding:{skip:"Skip",prev:"Prev",next:"Next",done:"Done"}};var Q=o(47285),Ae=o(74856),Mt=o(80563),je=o(69862),ot=o(99397),mt=o(64716);let we=(()=>{class Pe{constructor(Ge,Ke){this.http=Ge,this.lc=0,this.cog=Ke.merge("themeHttp",{nullValueHandling:"include",dateValueHandling:"timestamp"})}get loading(){return this.lc>0}get loadingCount(){return this.lc}parseParams(Ge){const Ke={};return Ge instanceof je.LE?Ge:(Object.keys(Ge).forEach(_e=>{let it=Ge[_e];"ignore"===this.cog.nullValueHandling&&null==it||("timestamp"===this.cog.dateValueHandling&&it instanceof Date&&(it=it.valueOf()),Ke[_e]=it)}),new je.LE({fromObject:Ke}))}appliedUrl(Ge,Ke){if(!Ke)return Ge;Ge+=~Ge.indexOf("?")?"":"?";const _e=[];return Object.keys(Ke).forEach(it=>{_e.push(`${it}=${Ke[it]}`)}),Ge+_e.join("&")}setCount(Ge){Promise.resolve(null).then(()=>this.lc=Ge<=0?0:Ge)}push(){this.setCount(++this.lc)}pop(){this.setCount(--this.lc)}cleanLoading(){this.setCount(0)}get(Ge,Ke,_e={}){return this.request("GET",Ge,{params:Ke,..._e})}post(Ge,Ke,_e,it={}){return this.request("POST",Ge,{body:Ke,params:_e,...it})}delete(Ge,Ke,_e={}){return this.request("DELETE",Ge,{params:Ke,..._e})}jsonp(Ge,Ke,_e="JSONP_CALLBACK"){return(0,$.of)(null).pipe((0,W.g)(0),(0,ot.b)(()=>this.push()),(0,Y.w)(()=>this.http.jsonp(this.appliedUrl(Ge,Ke),_e)),(0,mt.x)(()=>this.pop()))}patch(Ge,Ke,_e,it={}){return this.request("PATCH",Ge,{body:Ke,params:_e,...it})}put(Ge,Ke,_e,it={}){return this.request("PUT",Ge,{body:Ke,params:_e,...it})}form(Ge,Ke,_e,it={}){return this.request("POST",Ge,{body:Ke,params:_e,...it,headers:{"content-type":"application/x-www-form-urlencoded"}})}request(Ge,Ke,_e={}){return _e.params&&(_e.params=this.parseParams(_e.params)),(0,$.of)(null).pipe((0,W.g)(0),(0,ot.b)(()=>this.push()),(0,Y.w)(()=>this.http.request(Ge,Ke,_e)),(0,mt.x)(()=>this.pop()))}static#e=this.\u0275fac=function(Ke){return new(Ke||Pe)(i.LFG(je.eN),i.LFG(u.Ri))};static#t=this.\u0275prov=i.Yz7({token:Pe,factory:Pe.\u0275fac,providedIn:"root"})}return Pe})();var de=o(58504);const B="__api_params";function Ee(Pe,Je=B){let Ge=Pe[Je];return typeof Ge>"u"&&(Ge=Pe[Je]={}),Ge}function pt(Pe){return function(Je){return function(Ge,Ke,_e){const it=Ee(Ee(Ge),Ke);let b=it[Pe];typeof b>"u"&&(b=it[Pe]=[]),b.push({key:Je,index:_e})}}}function cn(Pe,Je,Ge){if(Pe[Je]&&Array.isArray(Pe[Je])&&!(Pe[Je].length<=0))return Ge[Pe[Je][0].index]}function Wt(Pe,Je){return Array.isArray(Pe)||Array.isArray(Je)?Object.assign([],Pe,Je):{...Pe,...Je}}function Vt(Pe){return function(Je="",Ge){return(Ke,_e,it)=>(it.value=function(...b){Ge=Ge||{};const N=this.injector,O=N.get(we,null);if(null==O)throw new TypeError("Not found '_HttpClient', You can import 'AlainThemeModule' && 'HttpClientModule' in your root module.");const j=Ee(this),L=Ee(j,_e);let he=Je||"";if(he=[j.baseUrl||"",he.startsWith("/")?he.substring(1):he].join("/"),he.length>1&&he.endsWith("/")&&(he=he.substring(0,he.length-1)),Ge.acl){const pn=N.get(l._8,null);if(pn&&!pn.can(Ge.acl))return(0,de._)(()=>({url:he,status:401,statusText:"From Http Decorator"}));delete Ge.acl}he=he.replace(/::/g,"^^"),(L.path||[]).filter(pn=>typeof b[pn.index]<"u").forEach(pn=>{he=he.replace(new RegExp(`:${pn.key}`,"g"),encodeURIComponent(b[pn.index]))}),he=he.replace(/\^\^/g,":");const Ce=(L.query||[]).reduce((pn,vn)=>(pn[vn.key]=b[vn.index],pn),{}),bt=(L.headers||[]).reduce((pn,vn)=>(pn[vn.key]=b[vn.index],pn),{});"FORM"===Pe&&(bt["content-type"]="application/x-www-form-urlencoded");const Ft=cn(L,"payload",b),sn=["POST","PUT","PATCH","DELETE"].some(pn=>pn===Pe);return O.request(Pe,he,{body:sn?Wt(cn(L,"body",b),Ft):null,params:sn?Ce:{...Ce,...Ft},headers:{...j.baseHeaders,...bt},...Ge})},it)}}pt("path"),pt("query"),pt("body")(),pt("headers"),pt("payload")(),Vt("OPTIONS"),Vt("GET"),Vt("POST"),Vt("DELETE"),Vt("PUT"),Vt("HEAD"),Vt("PATCH"),Vt("JSONP"),Vt("FORM"),new je.Xk(()=>!1),new je.Xk(()=>!1),new je.Xk(()=>!1);var $e=o(72745),Ue=o(96806),wt=o(58593);const De=new i.GfV("0.0.0-PLACEHOLDER")},60662:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>p});var e=o(65879),n=o(96814),t=o(60095),i=o(43389),l=o(96494),C=o(20824),E=o(68373);const u=function(){return{standalone:!0}};function z(f,y){if(1&f){const T=e.EpF();e.ynx(0),e.TgZ(1,"input",4),e.NdJ("ngModelChange",function(D){e.CHM(T);const _=e.oxw();return e.KtG(_.i.value=D)}),e.qZA(),e.BQk()}if(2&f){const T=e.oxw();e.xp6(1),e.Q6J("ngModel",T.i.value)("ngModelOptions",e.DdM(2,u))}}function M(f,y){if(1&f){const T=e.EpF();e.ynx(0),e.TgZ(1,"input",5),e.NdJ("ngModelChange",function(D){e.CHM(T);const _=e.oxw();return e.KtG(_.i.value=D)}),e.qZA(),e.BQk()}if(2&f){const T=e.oxw();e.xp6(1),e.Q6J("ngModel",T.i.value)("ngModelOptions",e.DdM(2,u))}}function h(f,y){if(1&f){const T=e.EpF();e.ynx(0),e.TgZ(1,"nz-input-number",6),e.NdJ("ngModelChange",function(D){e.CHM(T);const _=e.oxw();return e.KtG(_.pxVal=D)})("ngModelChange",function(D){e.CHM(T);const _=e.oxw();return e.KtG(_.pxChange(D))}),e.qZA(),e.BQk()}if(2&f){const T=e.oxw();e.xp6(1),e.Q6J("ngModel",T.pxVal)("nzMin",T.i.min)("nzMax",T.i.max)("nzStep",T.i.step||2)("nzFormatter",T.format)}}function v(f,y){if(1&f){const T=e.EpF();e.ynx(0),e.TgZ(1,"nz-switch",7),e.NdJ("ngModelChange",function(D){e.CHM(T);const _=e.oxw();return e.KtG(_.i.value=D)}),e.qZA(),e.BQk()}if(2&f){const T=e.oxw();e.xp6(1),e.Q6J("ngModel",T.i.value)("ngModelOptions",e.DdM(2,u))}}function g(f,y){}function d(f,y){1&f&&(e.ynx(0),e.YNc(1,g,0,0,"ng-template",8),e.BQk())}let p=(()=>{class f{constructor(){this.i={},this.pxVal=0,this.format=T=>`${T} px`}set data(T){this.i=T,"px"===T.type&&(this.pxVal=+T.value.replace("px",""))}pxChange(T){this.i.value=`${T}px`}static#e=this.\u0275fac=function(x){return new(x||f)};static#t=this.\u0275cmp=e.Xpm({type:f,selectors:[["setting-drawer-item"]],hostVars:2,hostBindings:function(x,D){2&x&&e.ekj("setting-drawer__body-item",!0)},inputs:{data:"data"},decls:10,vars:7,consts:[[1,"pl-sm","text-grey"],[3,"ngSwitch"],[4,"ngSwitchCase"],[4,"ngSwitchDefault"],["nz-input","","type","color",2,"min-width","88px",3,"ngModel","ngModelOptions","ngModelChange"],["nz-input","",2,"min-width","88px",3,"ngModel","ngModelOptions","ngModelChange"],[3,"ngModel","nzMin","nzMax","nzStep","nzFormatter","ngModelChange"],["nzSize","small",3,"ngModel","ngModelOptions","ngModelChange"],["nzDrawerContent",""]],template:function(x,D){1&x&&(e.TgZ(0,"span"),e._uU(1),e.TgZ(2,"span",0),e._uU(3),e.qZA()(),e.TgZ(4,"div",1),e.YNc(5,z,2,3,"ng-container",2),e.YNc(6,M,2,3,"ng-container",2),e.YNc(7,h,2,5,"ng-container",2),e.YNc(8,v,2,3,"ng-container",2),e.YNc(9,d,2,0,"ng-container",3),e.qZA()),2&x&&(e.xp6(1),e.hij(" ",D.i.label," "),e.xp6(2),e.Oqu(D.i.tip),e.xp6(1),e.Q6J("ngSwitch",D.i.type),e.xp6(1),e.Q6J("ngSwitchCase","color"),e.xp6(1),e.Q6J("ngSwitchCase","input"),e.xp6(1),e.Q6J("ngSwitchCase","px"),e.xp6(1),e.Q6J("ngSwitchCase","switch"))},dependencies:[n.RF,n.n9,n.ED,t.Fj,t.JJ,t.On,i.SQ,l.i,C.Zp,E._V],encapsulation:2})}return f})()},52500:(nt,I,o)=>{"use strict";o.d(I,{w:()=>V});var e=o(49671),n=o(97582),t=o(96814),i=o(65879),l=o(71993),C=o(24593),E=o(74648),u=o(64115);const z="alain-default-vars",M=[{key:"dust",color:"#F5222D"},{key:"volcano",color:"#FA541C"},{key:"sunset",color:"#FAAD14"},{key:"cyan",color:"#13C2C2"},{key:"green",color:"#52C41A"},{key:"daybreak",color:"#1890ff"},{key:"geekblue",color:"#2F54EB"},{key:"purple",color:"#722ED1"},{key:"black",color:"#001529"}],h={"primary-color":{label:"\u4e3b\u989c\u8272",type:"color",default:"#1890ff"},"alain-default-header-hg":{label:"\u9ad8",type:"px",default:"64px",max:300,min:24},"alain-default-header-bg":{label:"\u80cc\u666f\u8272",type:"color",default:"@primary-color",tip:"\u9ed8\u8ba4\u540c\u4e3b\u8272\u7cfb"},"alain-default-header-padding":{label:"\u9876\u90e8\u5de6\u53f3\u5185\u8fb9\u8ddd",type:"px",default:"16px"},"alain-default-aside-wd":{label:"\u5bbd\u5ea6",type:"px",default:"200px"},"alain-default-aside-bg":{label:"\u80cc\u666f",type:"color",default:"#ffffff"},"alain-default-aside-collapsed-wd":{label:"\u6536\u7f29\u5bbd\u5ea6",type:"px",default:"64px"},"alain-default-aside-nav-padding-top-bottom":{label:"\u9879\u4e0a\u4e0b\u5185\u8fb9\u8ddd",type:"px",default:"8px",step:8},"alain-default-aside-nav-fs":{label:"\u83dc\u5355\u5b57\u53f7",type:"px",default:"14px",min:14,max:30},"alain-default-aside-collapsed-nav-fs":{label:"\u6536\u7f29\u83dc\u5355\u5b57\u53f7",type:"px",default:"24px",min:24,max:32},"alain-default-aside-nav-item-height":{label:"\u83dc\u5355\u9879\u9ad8\u5ea6",type:"px",default:"38px",min:24,max:64},"alain-default-aside-nav-text-color":{label:"\u83dc\u5355\u6587\u672c\u989c\u8272",type:"color",default:"rgba(0, 0, 0, 0.65)",rgba:!0},"alain-default-aside-nav-text-hover-color":{label:"\u83dc\u5355\u6587\u672c\u60ac\u505c\u989c\u8272",type:"color",default:"@primary-color",tip:"\u9ed8\u8ba4\u540c\u4e3b\u8272\u7cfb"},"alain-default-aside-nav-group-text-color":{label:"\u83dc\u5355\u5206\u7ec4\u6587\u672c\u989c\u8272",type:"color",default:"rgba(0, 0, 0, 0.43)",rgba:!0},"alain-default-aside-nav-selected-text-color":{label:"\u83dc\u5355\u6fc0\u6d3b\u65f6\u6587\u672c\u989c\u8272",type:"color",default:"@primary-color",tip:"\u9ed8\u8ba4\u540c\u4e3b\u8272\u7cfb"},"alain-default-aside-nav-selected-bg":{label:"\u83dc\u5355\u6fc0\u6d3b\u65f6\u80cc\u666f\u989c\u8272",type:"color",default:"#fcfcfc"},"alain-default-content-bg":{label:"\u80cc\u666f\u8272",type:"color",default:"#f5f7fa"},"alain-default-content-heading-bg":{label:"\u6807\u9898\u80cc\u666f\u8272",type:"color",default:"#fafbfc"},"alain-default-content-heading-border":{label:"\u6807\u9898\u5e95\u90e8\u8fb9\u6846\u8272",type:"color",default:"#efe3e5"},"alain-default-content-padding":{label:"\u5185\u8fb9\u8ddd",type:"px",default:"24px",min:0,max:128,step:8},"form-state-visual-feedback-enabled":{label:"\u5f00\u542f\u8868\u5355\u5143\u7d20\u7684\u89c6\u89c9\u53cd\u9988",type:"switch",default:!0},"preserve-white-spaces-enabled":{label:"\u5f00\u542f preserveWhitespaces",type:"switch",default:!0},"nz-table-img-radius":{label:"\u8868\u683c\u4e2d\uff1a\u56fe\u7247\u5706\u89d2",type:"px",default:"4px",min:0,max:128},"nz-table-img-margin-right":{label:"\u8868\u683c\u4e2d\uff1a\u56fe\u7247\u53f3\u5916\u8fb9\u8ddd",type:"px",default:"4px",min:0,max:128},"nz-table-img-max-width":{label:"\u8868\u683c\u4e2d\uff1a\u56fe\u7247\u6700\u5927\u5bbd\u5ea6",type:"px",default:"32px",min:8,max:128},"nz-table-img-max-height":{label:"\u8868\u683c\u4e2d\uff1a\u56fe\u7247\u6700\u5927\u9ad8\u5ea6",type:"px",default:"32px",min:8,max:128}};var v=o(43460),g=o(980),d=o(49388),p=o(60095),f=o(43389),y=o(96109),T=o(66987),x=o(79382),D=o(96494),_=o(93903),P=o(90551),S=o(42840),A=o(70855),k=o(41958),R=o(60662);function $(K,te){1&K&&i._UZ(0,"i",21)}const W=function(K){return{"background-color":K}};function ze(K,te){if(1&K){const ne=i.EpF();i.TgZ(0,"span",19),i.NdJ("click",function(){const be=i.CHM(ne).$implicit,le=i.oxw(2);return i.KtG(le.changeColor(be.color))}),i.YNc(1,$,1,0,"i",20),i.qZA()}if(2&K){const ne=te.$implicit,fe=i.oxw(2);i.Akn(i.VKq(4,W,ne.color)),i.Q6J("nzTooltipTitle",ne.key),i.xp6(1),i.Q6J("ngIf",fe.color===ne.color)}}function Y(K,te){if(1&K){const ne=i.EpF();i.TgZ(0,"div",4)(1,"div",5)(2,"h3",6),i._uU(3,"\u4e3b\u9898\u8272"),i.qZA(),i.YNc(4,ze,2,6,"span",7),i.qZA(),i._UZ(5,"nz-divider"),i.TgZ(6,"div",8)(7,"h3",6),i._uU(8,"\u8bbe\u7f6e"),i.qZA(),i.TgZ(9,"nz-tabset")(10,"nz-tab",9)(11,"div",8),i._UZ(12,"setting-drawer-item",10)(13,"setting-drawer-item",10)(14,"setting-drawer-item",10),i.qZA()(),i.TgZ(15,"nz-tab",11),i._UZ(16,"setting-drawer-item",10)(17,"setting-drawer-item",10)(18,"setting-drawer-item",10)(19,"setting-drawer-item",10),i.qZA(),i.TgZ(20,"nz-tab",12),i._UZ(21,"setting-drawer-item",10)(22,"setting-drawer-item",10)(23,"setting-drawer-item",10)(24,"setting-drawer-item",10),i.qZA(),i.TgZ(25,"nz-tab",13),i._UZ(26,"setting-drawer-item",10)(27,"setting-drawer-item",10)(28,"setting-drawer-item",10)(29,"setting-drawer-item",10)(30,"setting-drawer-item",10)(31,"setting-drawer-item",10),i.qZA()()(),i._UZ(32,"nz-divider"),i.TgZ(33,"div",8)(34,"div",14),i._uU(35," \u56fa\u5b9a\u5934\u548c\u4fa7\u8fb9\u680f "),i.TgZ(36,"nz-switch",15),i.NdJ("ngModelChange",function(re){i.CHM(ne);const be=i.oxw();return i.KtG(be.layout.fixed=re)})("ngModelChange",function(){i.CHM(ne);const re=i.oxw();return i.KtG(re.setLayout("fixed",re.layout.fixed))}),i.qZA()(),i.TgZ(37,"div",14),i._uU(38," \u8272\u5f31\u6a21\u5f0f "),i.TgZ(39,"nz-switch",15),i.NdJ("ngModelChange",function(re){i.CHM(ne);const be=i.oxw();return i.KtG(be.layout.colorWeak=re)})("ngModelChange",function(){i.CHM(ne);const re=i.oxw();return i.KtG(re.setLayout("colorWeak",re.layout.colorWeak))}),i.qZA()()(),i._UZ(40,"nz-divider"),i.TgZ(41,"button",16),i.NdJ("click",function(){i.CHM(ne);const re=i.oxw();return i.KtG(re.apply())}),i._uU(42,"\u9884\u89c8"),i.qZA(),i.TgZ(43,"button",17),i.NdJ("click",function(){i.CHM(ne);const re=i.oxw();return i.KtG(re.reset())}),i._uU(44,"\u91cd\u7f6e"),i.qZA(),i.TgZ(45,"button",17),i.NdJ("click",function(){i.CHM(ne);const re=i.oxw();return i.KtG(re.copyVar())}),i._uU(46,"\u62f7\u8d1d"),i.qZA(),i._UZ(47,"nz-alert",18),i.qZA()}if(2&K){const ne=i.oxw();i.xp6(4),i.Q6J("ngForOf",ne.colors),i.xp6(8),i.Q6J("data",ne.data["alain-default-header-hg"]),i.xp6(1),i.Q6J("data",ne.data["alain-default-header-bg"]),i.xp6(1),i.Q6J("data",ne.data["alain-default-header-padding"]),i.xp6(2),i.Q6J("data",ne.data["alain-default-aside-wd"]),i.xp6(1),i.Q6J("data",ne.data["alain-default-aside-bg"]),i.xp6(1),i.Q6J("data",ne.data["alain-default-aside-collapsed-wd"]),i.xp6(1),i.Q6J("data",ne.data["alain-default-aside-nav-padding-top-bottom"]),i.xp6(2),i.Q6J("data",ne.data["alain-default-content-bg"]),i.xp6(1),i.Q6J("data",ne.data["alain-default-content-heading-bg"]),i.xp6(1),i.Q6J("data",ne.data["alain-default-content-heading-border"]),i.xp6(1),i.Q6J("data",ne.data["alain-default-content-padding"]),i.xp6(2),i.Q6J("data",ne.data["form-state-visual-feedback-enabled"]),i.xp6(1),i.Q6J("data",ne.data["preserve-white-spaces-enabled"]),i.xp6(1),i.Q6J("data",ne.data["nz-table-img-radius"]),i.xp6(1),i.Q6J("data",ne.data["nz-table-img-margin-right"]),i.xp6(1),i.Q6J("data",ne.data["nz-table-img-max-width"]),i.xp6(1),i.Q6J("data",ne.data["nz-table-img-max-height"]),i.xp6(5),i.Q6J("ngModel",ne.layout.fixed),i.xp6(3),i.Q6J("ngModel",ne.layout.colorWeak)}}const G=function(K){return{"setting-drawer__handle-opened":K}};class V{get layout(){return this.settingSrv.layout}constructor(te,ne,fe,re,be,le,ce){this.cdr=te,this.msg=ne,this.settingSrv=fe,this.lazy=re,this.ngZone=be,this.doc=le,this.directionality=ce,this.autoApplyColor=!0,this.compilingText="Compiling...",this.devTips="When the color can't be switched, you need to run it once: npm run color-less",this.lessJs="https://cdn.jsdelivr.net/npm/less",this.loadedLess=!1,this.dir$=this.directionality.change?.pipe((0,l.sL)()),this.dir="ltr",this.isDev=(0,i.X6Q)(),this.collapse=!1,this.data={},this.colors=M,this.color=this.cachedData["@primary-color"]||this.DEFAULT_PRIMARY,this.resetData(this.cachedData,!1)}get cachedData(){return this.settingSrv.layout[z]||{}}get DEFAULT_PRIMARY(){return h["primary-color"].default}ngOnInit(){this.dir=this.directionality.value,this.dir$.subscribe(te=>{this.dir=te,this.cdr.detectChanges()}),this.autoApplyColor&&this.color!==this.DEFAULT_PRIMARY&&(this.changeColor(this.color),this.runLess())}loadLess(){var te=this;return(0,e.Z)(function*(){return te.loadedLess?Promise.resolve():te.lazy.loadStyle("./assets/color.less",{rel:"stylesheet/less"}).then(()=>{const ne=te.doc.createElement("script");ne.innerHTML="\n window.less = {\n async: true,\n env: 'production',\n javascriptEnabled: true\n };\n ",te.doc.body.appendChild(ne)}).then(()=>te.lazy.loadScript(te.lessJs)).then(()=>{te.loadedLess=!0})})()}genVars(){const{data:te,color:ne,validKeys:fe}=this,re={"@primary-color":ne};return fe.filter(be=>"primary-color"!==be).forEach(be=>re[`@${be}`]=te[be].value),this.setLayout(z,re),re}runLess(){const{ngZone:te,msg:ne,cdr:fe}=this,re=ne.loading(this.compilingText,{nzDuration:0}).messageId;setTimeout(()=>{this.loadLess().then(()=>{window.less.modifyVars(this.genVars()).then(()=>{ne.success("\u6210\u529f"),ne.remove(re),te.run(()=>fe.detectChanges())})})},200)}toggle(){this.collapse=!this.collapse}changeColor(te){this.color=te,Object.keys(h).filter(ne=>"@primary-color"===h[ne].default).forEach(ne=>delete this.cachedData[`@${ne}`]),this.resetData(this.cachedData,!1)}setLayout(te,ne){this.settingSrv.setLayout(te,ne)}resetData(te,ne=!0){te=te||{};const fe=(0,u.p$)(h);Object.keys(fe).forEach(re=>{const be=te[`@${re}`]||fe[re].default||"";fe[re].value="@primary-color"===be?this.color:be}),this.data=fe,ne&&(this.cdr.detectChanges(),this.runLess())}get validKeys(){return Object.keys(this.data).filter(te=>this.data[te].value!==this.data[te].default)}apply(){this.runLess()}reset(){this.color=this.DEFAULT_PRIMARY,this.settingSrv.setLayout(z,{}),this.resetData({})}copyVar(){const te=this.genVars(),ne=Object.keys(te).map(fe=>`${fe}: ${te[fe]};`).join("\n");(0,C.J)(ne),this.msg.success("Copy success")}static#e=this.\u0275fac=function(ne){return new(ne||V)(i.Y36(i.sBO),i.Y36(v.dD),i.Y36(g.gb),i.Y36(u.Df),i.Y36(i.R0b),i.Y36(t.K0),i.Y36(d.Is,8))};static#t=this.\u0275cmp=i.Xpm({type:V,selectors:[["setting-drawer"]],hostVars:4,hostBindings:function(ne,fe){2&ne&&i.ekj("setting-drawer",!0)("setting-drawer-rtl","rtl"===fe.dir)},inputs:{autoApplyColor:"autoApplyColor",compilingText:"compilingText",devTips:"devTips",lessJs:"lessJs"},decls:4,vars:8,consts:[[3,"nzVisible","nzPlacement","nzWidth","nzOnClose"],["class","setting-drawer__content",4,"nzDrawerContent"],["nz-tooltip","",1,"setting-drawer__handle",3,"ngClass","nzTooltipTitle","click"],["nz-icon","",1,"setting-drawer__handle-icon",3,"nzType"],[1,"setting-drawer__content"],[1,"setting-drawer__body","setting-drawer__theme"],[1,"setting-drawer__title"],["nz-tooltip","","class","setting-drawer__theme-tag",3,"style","nzTooltipTitle","click",4,"ngFor","ngForOf"],[1,"setting-drawer__body"],["nzTitle","\u9876\u90e8"],[3,"data"],["nzTitle","\u4fa7\u8fb9\u680f"],["nzTitle","\u5185\u5bb9"],["nzTitle","\u5176\u5b83"],[1,"setting-drawer__body-item"],["nzSize","small",3,"ngModel","ngModelChange"],["type","button","nz-button","","nzType","primary",3,"click"],["type","button","nz-button","",3,"click"],["nzType","warning","nzMessage","\u914d\u7f6e\u680f\u53ea\u5728\u5f00\u53d1\u73af\u5883\u7528\u4e8e\u9884\u89c8\uff0c\u751f\u4ea7\u73af\u5883\u4e0d\u4f1a\u5c55\u73b0\uff0c\u8bf7\u62f7\u8d1d\u540e\u624b\u52a8\u4fee\u6539\u53c2\u6570\u914d\u7f6e\u6587\u4ef6 src/styles/theme.less",1,"mt-md"],["nz-tooltip","",1,"setting-drawer__theme-tag",3,"nzTooltipTitle","click"],["nz-icon","","nzType","check",4,"ngIf"],["nz-icon","","nzType","check"]],template:function(ne,fe){1&ne&&(i.TgZ(0,"nz-drawer",0),i.NdJ("nzOnClose",function(){return fe.toggle()}),i.YNc(1,Y,48,20,"div",1),i.qZA(),i.TgZ(2,"div",2),i.NdJ("click",function(){return fe.toggle()}),i._UZ(3,"i",3),i.qZA()),2&ne&&(i.Q6J("nzVisible",fe.collapse)("nzPlacement","rtl"===fe.dir?"left":"right")("nzWidth",500),i.xp6(2),i.Q6J("ngClass",i.VKq(6,G,fe.collapse))("nzTooltipTitle",fe.isDev?fe.devTips:null),i.xp6(1),i.Q6J("nzType",fe.collapse?"close":"setting"))},dependencies:[t.mk,t.sg,t.O5,p.JJ,p.On,f.Vz,f.SQ,y.SY,T.g,x.xH,x.xw,D.i,_.r,P.Ls,S.ix,A.w,k.dQ,R.Z],encapsulation:2,changeDetection:0})}(0,n.gn)([(0,E.yF)()],V.prototype,"autoApplyColor",void 0),(0,n.gn)([(0,E.EA)()],V.prototype,"loadLess",null),(0,n.gn)([(0,E.EA)()],V.prototype,"runLess",null)},47285:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>e});const e={abbr:"zh-CN",exception:{403:"\u62b1\u6b49\uff0c\u4f60\u65e0\u6743\u8bbf\u95ee\u8be5\u9875\u9762",404:"\u62b1\u6b49\uff0c\u4f60\u8bbf\u95ee\u7684\u9875\u9762\u4e0d\u5b58\u5728",500:"\u62b1\u6b49\uff0c\u670d\u52a1\u5668\u51fa\u9519\u4e86",backToHome:"\u8fd4\u56de\u9996\u9875"},noticeIcon:{emptyText:"\u6682\u65e0\u6570\u636e",clearText:"\u6e05\u7a7a"},reuseTab:{close:"\u5173\u95ed\u6807\u7b7e",closeOther:"\u5173\u95ed\u5176\u5b83\u6807\u7b7e",closeRight:"\u5173\u95ed\u53f3\u4fa7\u6807\u7b7e",refresh:"\u5237\u65b0"},tagSelect:{expand:"\u5c55\u5f00",collapse:"\u6536\u8d77"},miniProgress:{target:"\u76ee\u6807\u503c\uff1a"},st:{total:"\u5171 {{total}} \u6761",filterConfirm:"\u786e\u5b9a",filterReset:"\u91cd\u7f6e"},sf:{submit:"\u63d0\u4ea4",reset:"\u91cd\u7f6e",search:"\u641c\u7d22",edit:"\u4fdd\u5b58",addText:"\u6dfb\u52a0",removeText:"\u79fb\u9664",checkAllText:"\u5168\u9009",error:{"false schema":"\u5e03\u5c14\u6a21\u5f0f\u51fa\u9519",$ref:"\u65e0\u6cd5\u627e\u5230\u5f15\u7528{ref}",additionalItems:"\u4e0d\u5141\u8bb8\u8d85\u8fc7{limit}\u4e2a\u5143\u7d20",additionalProperties:"\u4e0d\u5141\u8bb8\u6709\u989d\u5916\u7684\u5c5e\u6027",anyOf:"\u6570\u636e\u5e94\u4e3a anyOf \u6240\u6307\u5b9a\u7684\u5176\u4e2d\u4e00\u4e2a",dependencies:"\u5e94\u5f53\u62e5\u6709\u5c5e\u6027{property}\u7684\u4f9d\u8d56\u5c5e\u6027{deps}",enum:"\u5e94\u5f53\u662f\u9884\u8bbe\u5b9a\u7684\u679a\u4e3e\u503c\u4e4b\u4e00",format:"\u683c\u5f0f\u4e0d\u6b63\u786e",type:"\u7c7b\u578b\u5e94\u5f53\u662f {type}",required:"\u5fc5\u586b\u9879",maxLength:"\u81f3\u591a {limit} \u4e2a\u5b57\u7b26",minLength:"\u81f3\u5c11 {limit} \u4e2a\u5b57\u7b26\u4ee5\u4e0a",minimum:"\u5fc5\u987b {comparison}{limit}",formatMinimum:"\u5fc5\u987b {comparison}{limit}",maximum:"\u5fc5\u987b {comparison}{limit}",formatMaximum:"\u5fc5\u987b {comparison}{limit}",maxItems:"\u4e0d\u5e94\u591a\u4e8e {limit} \u4e2a\u9879",minItems:"\u4e0d\u5e94\u5c11\u4e8e {limit} \u4e2a\u9879",maxProperties:"\u4e0d\u5e94\u591a\u4e8e {limit} \u4e2a\u5c5e\u6027",minProperties:"\u4e0d\u5e94\u5c11\u4e8e {limit} \u4e2a\u5c5e\u6027",multipleOf:"\u5e94\u5f53\u662f {multipleOf} \u7684\u6574\u6570\u500d",not:'\u4e0d\u5e94\u5f53\u5339\u914d "not" schema',oneOf:'\u53ea\u80fd\u5339\u914d\u4e00\u4e2a "oneOf" \u4e2d\u7684 schema',pattern:"\u6570\u636e\u683c\u5f0f\u4e0d\u6b63\u786e",uniqueItems:"\u4e0d\u5e94\u5f53\u542b\u6709\u91cd\u590d\u9879 (\u7b2c {j} \u9879\u4e0e\u7b2c {i} \u9879\u662f\u91cd\u590d\u7684)",custom:"\u683c\u5f0f\u4e0d\u6b63\u786e",propertyNames:'\u5c5e\u6027\u540d "{propertyName}" \u65e0\u6548',patternRequired:"\u5e94\u5f53\u6709\u5c5e\u6027\u5339\u914d\u6a21\u5f0f {missingPattern}",switch:'\u7531\u4e8e {caseIndex} \u5931\u8d25\uff0c\u672a\u901a\u8fc7 "switch" \u6821\u9a8c',const:"\u5e94\u5f53\u7b49\u4e8e\u5e38\u91cf",contains:"\u5e94\u5f53\u5305\u542b\u4e00\u4e2a\u6709\u6548\u9879",formatExclusiveMaximum:"formatExclusiveMaximum \u5e94\u5f53\u662f\u5e03\u5c14\u503c",formatExclusiveMinimum:"formatExclusiveMinimum \u5e94\u5f53\u662f\u5e03\u5c14\u503c",if:'\u5e94\u5f53\u5339\u914d\u6a21\u5f0f "{failingKeyword}"'}},onboarding:{skip:"\u8df3\u8fc7",prev:"\u4e0a\u4e00\u9879",next:"\u4e0b\u4e00\u9879",done:"\u5b8c\u6210"}}},55379:(nt,I,o)=>{"use strict";o.d(I,{l:()=>l});var e=o(47285),n=o(35227),t=o(15851),i=o(65879);let l=(()=>{class C{static#e=this.\u0275fac=function(z){return new(z||C)};static#t=this.\u0275mod=i.oAB({type:C});static#n=this.\u0275inj=i.cJS({providers:[{provide:t.O,useValue:e.Z},n.uu]})}return C})()},35227:(nt,I,o)=>{"use strict";o.d(I,{s7:()=>l,uu:()=>E});var e=o(65879),n=o(65619),t=o(47285),i=o(15851);let l=(()=>{class u{constructor(M){this._locale=t.Z,this.change$=new n.X(this._locale),this.setLocale(M||t.Z)}get change(){return this.change$.asObservable()}setLocale(M){this._locale&&this._locale.abbr===M.abbr||(this._locale=M,this.change$.next(M))}get locale(){return this._locale}getData(M){return this._locale[M]||{}}static#e=this.\u0275fac=function(h){return new(h||u)(e.LFG(i.O))};static#t=this.\u0275prov=e.Yz7({token:u,factory:u.\u0275fac})}return u})();const E={provide:l,useFactory:function C(u,z){return u||new l(z)},deps:[[new e.FiY,new e.tp0,l],i.O]}},15851:(nt,I,o)=>{"use strict";o.d(I,{O:()=>n});const n=new(o(65879).OlP)("delon-locale")},72745:(nt,I,o)=>{"use strict";o.d(I,{u:()=>i});var e=o(60325),n=o(65879),t=o(12131);let i=(()=>{class l{constructor(E){this.nzI18n=E}transform(E,u="yyyy-MM-dd HH:mm"){return(0,e.p6)(E,u,this.nzI18n.getDateLocale())}static#e=this.\u0275fac=function(u){return new(u||l)(n.Y36(t.wi,16))};static#t=this.\u0275pipe=n.Yjl({name:"_date",type:l,pure:!0})}return l})()},96806:(nt,I,o)=>{"use strict";o.d(I,{f:()=>u,yn:()=>E});var e=o(65879),n=o(6593);const t='',i='',l='class="yn__yes"',C='class="yn__no"';function E(z,M){let h="",{yes:v,no:g,mode:d}={...M};switch(v=v||"\u662f",g=g||"\u5426",d){case"full":h=z?`${t}${v}`:`${i}${g}`;break;case"text":h=z?`${v}`:`${g}`;break;default:h=z?`${t}`:`${i}`}return h}let u=(()=>{class z{constructor(h){this.dom=h}transform(h,v,g,d,p=!0){const f=E(h,{yes:v,no:g,mode:d});return p?this.dom.bypassSecurityTrustHtml(f):f}static#e=this.\u0275fac=function(v){return new(v||z)(e.Y36(n.H7,16))};static#t=this.\u0275pipe=e.Yjl({name:"yn",type:z,pure:!0})}return z})()},80563:(nt,I,o)=>{"use strict";o.d(I,{h:()=>l});var e=o(65592),n=o(64115),t=o(65879),i=o(43389);let l=(()=>{class C{get openDrawers(){return this.parentDrawer?this.parentDrawer.openDrawers:this.openDrawersAtThisLevel}constructor(u,z){this.srv=u,this.parentDrawer=z,this.openDrawersAtThisLevel=[]}create(u,z,M,h){return h=(0,n.RH)({size:"md",footer:!0,footerHeight:50,exact:!0,drawerOptions:{nzPlacement:"right",nzWrapClassName:""}},h),new e.y(v=>{const{size:g,footer:d,footerHeight:p,drawerOptions:f}=h,y={nzContent:z,nzContentParams:M,nzTitle:u};"number"==typeof g?y["top"===f.nzPlacement||"bottom"===f.nzPlacement?"nzHeight":"nzWidth"]=h.size:f.nzWidth||(y.nzWrapClassName=`${f.nzWrapClassName} drawer-${h.size}`.trim(),delete f.nzWrapClassName),d&&(y.nzBodyStyle={"padding-bottom.px":p+24});const T=this.srv.create({...y,...f});this.openDrawers.push(T);const x=T.afterClose.subscribe(D=>{!0===h.exact?null!=D&&v.next(D):v.next(D),v.complete(),x.unsubscribe(),this.close(T)})})}close(u){const z=this.openDrawers.indexOf(u);-1!==z&&this.openDrawers.splice(z,1)}closeAll(){let u=this.openDrawers.length;for(;u--;)this.openDrawers[u].close()}static(u,z,M,h){const v={nzMaskClosable:!1,...h&&h.drawerOptions};return this.create(u,z,M,{...h,drawerOptions:v})}static#e=this.\u0275fac=function(z){return new(z||C)(t.LFG(i.ai),t.LFG(C,12))};static#t=this.\u0275prov=t.Yz7({token:C,factory:C.\u0275fac,providedIn:"root"})}return C})()},63123:(nt,I,o)=>{"use strict";o.d(I,{C:()=>t});var e=o(57447),n=o(65879);let t=(()=>{class i{constructor(C){this.i18n=C}transform(C,E){return this.i18n.fanyi(C,E)}static#e=this.\u0275fac=function(E){return new(E||i)(n.Y36(e.Oi,16))};static#t=this.\u0275pipe=n.Yjl({name:"i18n",type:i,pure:!0})}return i})()},57447:(nt,I,o)=>{"use strict";o.d(I,{BQ:()=>C,Oi:()=>l});var e=o(65879),n=o(32181),t=o(65619),i=o(78967);const l=new e.OlP("alainI18nToken",{providedIn:"root",factory:()=>new E((0,e.f3M)(i.Ri))});let C=(()=>{class u{get change(){return this._change$.asObservable().pipe((0,n.h)(M=>null!=M))}get defaultLang(){return this._defaultLang}get currentLang(){return this._currentLang}get data(){return this._data}constructor(M){this._change$=new t.X(null),this._currentLang="",this._defaultLang="",this._data={},this.cog=M.merge("themeI18n",{interpolation:["{{","}}"]})}flatData(M,h){const v={};for(const g of Object.keys(M)){const d=M[g];if("object"==typeof d){const p=this.flatData(d,h.concat(g));Object.keys(p).forEach(f=>v[f]=p[f])}else v[(g?h.concat(g):h).join(".")]=`${d}`}return v}fanyi(M,h){let v=this._data[M]||"";if(!v)return M;if(h){const g=this.cog.interpolation;Object.keys(h).forEach(d=>v=v.replace(new RegExp(`${g[0]}s?${d}s?${g[1]}`,"g"),`${h[d]}`))}return v}static#e=this.\u0275fac=function(h){return new(h||u)(e.LFG(i.Ri))};static#t=this.\u0275prov=e.Yz7({token:u,factory:u.\u0275fac})}return u})(),E=(()=>{class u extends C{use(M,h){this._data=this.flatData(h??{},[]),this._currentLang=M,this._change$.next(M)}getLangs(){return[]}static#e=this.\u0275fac=function(){let M;return function(v){return(M||(M=e.n5z(u)))(v||u)}}();static#t=this.\u0275prov=e.Yz7({token:u,factory:u.\u0275fac,providedIn:"root"})}return u})()},74856:(nt,I,o)=>{"use strict";o.d(I,{T:()=>M});var e=o(96814),n=o(65592),t=o(48180),i=o(32181),l=o(64115),C=o(65879),E=o(81221),u=o(34423);const z="MODAL-DRAG";let M=(()=>{class h{constructor(g,d,p){this.srv=g,this.drag=d,this.document=p}createDragRef(g,d){const p=this.document.querySelector(d),f=p.firstChild,y=g.handleCls?p.querySelector(g.handleCls):null;return y&&y.classList.add(`${z}-HANDLE`),this.drag.createDrag(y??f).withHandles([y??f]).withBoundaryElement(p).withRootElement(f)}create(g,d,p){return p=(0,l.RH)({size:"lg",exact:!0,includeTabs:!1},p),new n.y(f=>{const{size:y,includeTabs:T,modalOptions:x,drag:D,useNzData:_}=p;let P=[],S="";y&&("number"==typeof y?S=`${y}px`:["sm","md","lg","xl"].includes(y)?P.push(`modal-${y}`):S=y),T&&P.push("modal-include-tabs"),x&&x.nzWrapClassName&&(P.push(x.nzWrapClassName),delete x.nzWrapClassName);let A,R,k=`${z}-${+new Date}`;null!=D&&!1!==D&&(A={handleCls:".modal-header, .ant-modal-title",..."object"==typeof D?D:{}},P.push(z,k));const $=this.srv.create({nzWrapClassName:P.join(" "),nzContent:g,nzWidth:S||void 0,nzFooter:null,nzData:d,...x});!0!==_&&Object.assign($.componentInstance,d),$.afterOpen.pipe((0,t.q)(1),(0,i.h)(()=>null!=A)).subscribe(()=>{R=this.createDragRef(A,`.${k}`)}),$.afterClose.pipe((0,t.q)(1)).subscribe(W=>{!0===p.exact?null!=W&&f.next(W):f.next(W),f.complete(),R?.dispose()})})}createStatic(g,d,p){const f={nzMaskClosable:!1,...p&&p.modalOptions};return this.create(g,d,{...p,modalOptions:f})}static#e=this.\u0275fac=function(d){return new(d||h)(C.LFG(E.Sf),C.LFG(u.v0),C.LFG(e.K0))};static#t=this.\u0275prov=C.Yz7({token:h,factory:h.\u0275fac,providedIn:"root"})}return h})()},78908:(nt,I,o)=>{"use strict";o.d(I,{N:()=>i,g:()=>l});var e=o(65879),n=o(78645),t=o(62831);const i=new e.OlP("ALAIN_SETTING_KEYS");let l=(()=>{class C{constructor(u,z){this.platform=u,this.KEYS=z,this.notify$=new n.x,this._app=null,this._user=null,this._layout=null}getData(u){return this.platform.isBrowser&&JSON.parse(localStorage.getItem(u)||"null")||null}setData(u,z){this.platform.isBrowser&&localStorage.setItem(u,JSON.stringify(z))}get layout(){return this._layout||(this._layout={fixed:!0,collapsed:!1,boxed:!1,lang:null,...this.getData(this.KEYS.layout)},this.setData(this.KEYS.layout,this._layout)),this._layout}get app(){return this._app||(this._app={year:(new Date).getFullYear(),...this.getData(this.KEYS.app)},this.setData(this.KEYS.app,this._app)),this._app}get user(){return this._user||(this._user={...this.getData(this.KEYS.user)},this.setData(this.KEYS.user,this._user)),this._user}get notify(){return this.notify$.asObservable()}setLayout(u,z){return"string"==typeof u?this.layout[u]=z:this._layout=u,this.setData(this.KEYS.layout,this._layout),this.notify$.next({type:"layout",name:u,value:z}),!0}getLayout(){return this._layout}setApp(u){this._app=u,this.setData(this.KEYS.app,u),this.notify$.next({type:"app",value:u})}getApp(){return this._app}setUser(u){this._user=u,this.setData(this.KEYS.user,u),this.notify$.next({type:"user",value:u})}getUser(){return this._user}static#e=this.\u0275fac=function(z){return new(z||C)(e.LFG(t.t4),e.LFG(i))};static#t=this.\u0275prov=e.Yz7({token:C,factory:C.\u0275fac,providedIn:"root"})}return C})()},58593:(nt,I,o)=>{"use strict";o.d(I,{p:()=>P});var e=o(33651),n=o(96814),t=o(52787),i=o(14715),l=o(12131),C=o(55379),u=(o(72745),o(65879));o(6593),o(96806),o(63123);var p=o(80563),f=o(74856),y=o(78908),T=o(90551);const x=[f.T,p.h],_=[i.OeK,i.vkb,i.zdJ,i.irO];let P=(()=>{class S{constructor(k){k.addIcon(..._)}static forRoot(){return{ngModule:S,providers:x}}static forChild(){return{ngModule:S,providers:x}}static#e=this.\u0275fac=function(R){return new(R||S)(u.LFG(T.H5))};static#t=this.\u0275mod=u.oAB({type:S});static#n=this.\u0275inj=u.cJS({providers:[{provide:y.N,useValue:{layout:"layout",user:"user",app:"app"}}],imports:[n.ez,t.Bz,e.U8,l.YI,C.l]})}return S})()},22945:(nt,I,o)=>{"use strict";o.d(I,{f:()=>v,w:()=>h});var e=o(96814),n=o(65879),t=o(71993),i=o(78967),l=o(62831),C=o(49388),E=o(73460),u=o(62787),z=o(96109);function M(g,d){if(1&g){const p=n.EpF();n.TgZ(0,"li",8),n.NdJ("click",function(){const T=n.CHM(p).$implicit,x=n.oxw();return n.KtG(x.onThemeChange(T.key))}),n._uU(1),n.qZA()}if(2&g){const p=d.$implicit;n.xp6(1),n.Oqu(p.text)}}const h=new n.OlP("ALAIN_THEME_BTN_KEYS");let v=(()=>{class g{constructor(p,f,y,T,x,D,_){this.renderer=p,this.configSrv=f,this.platform=y,this.doc=T,this.directionality=x,this.KEYS=D,this.cdr=_,this.theme="default",this.isDev=(0,n.X6Q)(),this.types=[{key:"default",text:"Default Theme"},{key:"dark",text:"Dark Theme"},{key:"compact",text:"Compact Theme"}],this.devTips="When the dark.css file can't be found, you need to run it once: npm run theme",this.deployUrl="",this.themeChange=new n.vpe,this.dir$=this.directionality.change?.pipe((0,t.sL)()),this.dir="ltr"}ngOnInit(){this.dir=this.directionality.value,this.dir$.subscribe(p=>{this.dir=p,this.cdr.detectChanges()}),this.initTheme()}initTheme(){this.platform.isBrowser&&(this.theme=localStorage.getItem(this.KEYS)||"default",this.updateChartTheme(),this.onThemeChange(this.theme))}updateChartTheme(){this.configSrv.set("chart",{theme:"dark"===this.theme?"dark":""})}onThemeChange(p){if(!this.platform.isBrowser)return;this.theme=p,this.themeChange.emit(p),this.renderer.setAttribute(this.doc.body,"data-theme",p);const f=this.doc.getElementById(this.KEYS);if(f&&f.remove(),localStorage.removeItem(this.KEYS),"default"!==p){const y=this.doc.createElement("link");y.type="text/css",y.rel="stylesheet",y.id=this.KEYS,y.href=`${this.deployUrl}assets/style.${p}.css`,localStorage.setItem(this.KEYS,p),this.doc.body.append(y)}this.updateChartTheme()}ngOnDestroy(){const p=this.doc.getElementById(this.KEYS);null!=p&&this.doc.body.removeChild(p)}static#e=this.\u0275fac=function(f){return new(f||g)(n.Y36(n.Qsj),n.Y36(i.Ri),n.Y36(l.t4),n.Y36(e.K0),n.Y36(C.Is,8),n.Y36(h),n.Y36(n.sBO))};static#t=this.\u0275cmp=n.Xpm({type:g,selectors:[["theme-btn"]],hostVars:4,hostBindings:function(f,y){2&f&&n.ekj("theme-btn",!0)("theme-btn-rtl","rtl"===y.dir)},inputs:{types:"types",devTips:"devTips",deployUrl:"deployUrl"},outputs:{themeChange:"themeChange"},decls:9,vars:3,consts:[["nz-dropdown","","nzPlacement","topCenter",1,"ant-avatar","ant-avatar-circle","ant-avatar-icon",3,"nzDropdownMenu"],["nz-tooltip","","role","img","width","21","height","21","viewBox","0 0 21 21","fill","currentColor",1,"anticon",3,"nzTooltipTitle"],["fill-rule","evenodd"],["fill-rule","nonzero"],["d","M7.02 3.635l12.518 12.518a1.863 1.863 0 010 2.635l-1.317 1.318a1.863 1.863 0 01-2.635 0L3.068 7.588A2.795 2.795 0 117.02 3.635zm2.09 14.428a.932.932 0 110 1.864.932.932 0 010-1.864zm-.043-9.747L7.75 9.635l9.154 9.153 1.318-1.317-9.154-9.155zM3.52 12.473c.514 0 .931.417.931.931v.932h.932a.932.932 0 110 1.864h-.932v.931a.932.932 0 01-1.863 0l-.001-.931h-.93a.932.932 0 010-1.864h.93v-.932c0-.514.418-.931.933-.931zm15.374-3.727a1.398 1.398 0 110 2.795 1.398 1.398 0 010-2.795zM4.385 4.953a.932.932 0 000 1.317l2.046 2.047L7.75 7 5.703 4.953a.932.932 0 00-1.318 0zM14.701.36a.932.932 0 01.931.932v.931h.932a.932.932 0 010 1.864h-.933l.001.932a.932.932 0 11-1.863 0l-.001-.932h-.93a.932.932 0 110-1.864h.93v-.931a.932.932 0 01.933-.932z"],["menu","nzDropdownMenu"],["nz-menu","","nzSelectable",""],["nz-menu-item","",3,"click",4,"ngFor","ngForOf"],["nz-menu-item","",3,"click"]],template:function(f,y){if(1&f&&(n.TgZ(0,"div",0),n.O4$(),n.TgZ(1,"svg",1)(2,"g",2)(3,"g",3),n._UZ(4,"path",4),n.qZA()()(),n.kcU(),n.TgZ(5,"nz-dropdown-menu",null,5)(7,"ul",6),n.YNc(8,M,2,1,"li",7),n.qZA()()()),2&f){const T=n.MAs(6);n.Q6J("nzDropdownMenu",y.types.length>0?T:null),n.xp6(1),n.Q6J("nzTooltipTitle",y.isDev?y.devTips:null),n.xp6(7),n.Q6J("ngForOf",y.types)}},dependencies:[e.sg,E.wO,E.u9,u.cm,u.RR,z.SY],encapsulation:2,changeDetection:0})}return g})()},24593:(nt,I,o)=>{"use strict";function e(n){return new Promise(t=>{let i=null;try{i=document.createElement("textarea"),i.style.height="0px",i.style.opacity="0",i.style.width="0px",document.body.appendChild(i),i.value=n,i.select(),document.execCommand("copy"),t(n)}finally{i&&i.parentNode&&i.parentNode.removeChild(i)}})}o.d(I,{J:()=>e})},20325:(nt,I,o)=>{"use strict";function e(n){const t=n.childNodes;for(let i=0;ie})},53263:(nt,I,o)=>{"use strict";function t(i,l,C,E=!1){!0===E?l.removeAttribute(i,"class"):function e(i,l,C){Object.keys(l).forEach(E=>C.removeClass(i,E))}(i,C,l),function n(i,l,C){for(const E in l)l[E]&&C.addClass(i,E)}(i,C={...C},l)}o.d(I,{C:()=>t})},78967:(nt,I,o)=>{"use strict";o.d(I,{jq:()=>n,Ri:()=>l});var e=o(65879);const n=new e.OlP("alain-config",{providedIn:"root",factory:function t(){return{}}});var i=o(64115);let l=(()=>{class C{constructor(u){this.config={...u}}get(u,z){const M=this.config[u]||{};return z?{[z]:M[z]}:M}merge(u,...z){return(0,i.Z2)({},!0,...z,this.get(u))}attach(u,z,M){Object.assign(u,this.merge(z,M))}attachKey(u,z,M){Object.assign(u,this.get(z,M))}set(u,z){this.config[u]={...this.config[u],...z}}static#e=this.\u0275fac=function(z){return new(z||C)(e.LFG(n,8))};static#t=this.\u0275prov=e.Yz7({token:C,factory:C.\u0275fac,providedIn:"root"})}return C})()},60325:(nt,I,o)=>{"use strict";o.d(I,{lI:()=>Be,SA:()=>xe,p6:()=>Ye,wb:()=>ae,ZU:()=>Me});var e=o(80356),n=o(68584),t=o(97753),i=o(5227),l=o(40581),C=o(96156),E=o(62816);function u(Re,ct){var Ae,Mt,je,ot,mt,we,de,U;(0,E.Z)(1,arguments);var B=(0,i.j)(),Ee=(0,C.Z)(null!==(Ae=null!==(Mt=null!==(je=null!==(ot=ct?.weekStartsOn)&&void 0!==ot?ot:null==ct||null===(mt=ct.locale)||void 0===mt||null===(we=mt.options)||void 0===we?void 0:we.weekStartsOn)&&void 0!==je?je:B.weekStartsOn)&&void 0!==Mt?Mt:null===(de=B.locale)||void 0===de||null===(U=de.options)||void 0===U?void 0:U.weekStartsOn)&&void 0!==Ae?Ae:0);if(!(Ee>=0&&Ee<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var Ie=(0,l.Z)(Re),Ne=Ie.getDay(),pt=6+(Ne0?[ct,(0,n.Z)(ct,Re)]:[(0,n.Z)(ct,Re),ct]}return Ae?.ignoreMaxTime?je:xe(je)}function xe(Re){return[(0,T.Z)(Re[0]),(0,x.Z)(Re[1])]}function Me(Re,ct){"string"==typeof ct&&(ct={formatString:ct});const{formatString:Ae,defaultValue:Mt}={formatString:"yyyy-MM-dd HH:mm:ss",defaultValue:new Date(NaN),...ct};if(null==Re)return Mt;if(Re instanceof Date)return Re;if("number"==typeof Re||"string"==typeof Re&&/[0-9]{10,13}/.test(Re))return new Date(+Re);let je=function _(Re,ct){var Ae;(0,E.Z)(1,arguments);var Mt=(0,C.Z)(null!==(Ae=ct?.additionalDigits)&&void 0!==Ae?Ae:2);if(2!==Mt&&1!==Mt&&0!==Mt)throw new RangeError("additionalDigits must be 0, 1 or 2");if("string"!=typeof Re&&"[object String]"!==Object.prototype.toString.call(Re))return new Date(NaN);var ot,je=function R(Re){var Mt,ct={},Ae=Re.split(P.dateTimeDelimiter);if(Ae.length>2)return ct;if(/:/.test(Ae[0])?Mt=Ae[0]:(ct.date=Ae[0],Mt=Ae[1],P.timeZoneDelimiter.test(ct.date)&&(ct.date=Re.split(P.timeZoneDelimiter)[0],Mt=Re.substr(ct.date.length,Re.length))),Mt){var je=P.timezone.exec(Mt);je?(ct.time=Mt.replace(je[1],""),ct.timezone=je[1]):ct.time=Mt}return ct}(Re);if(je.date){var mt=function $(Re,ct){var Ae=new RegExp("^(?:(\\d{4}|[+-]\\d{"+(4+ct)+"})|(\\d{2}|[+-]\\d{"+(2+ct)+"})$)"),Mt=Re.match(Ae);if(!Mt)return{year:NaN,restDateString:""};var je=Mt[1]?parseInt(Mt[1]):null,ot=Mt[2]?parseInt(Mt[2]):null;return{year:null===ot?je:100*ot,restDateString:Re.slice((Mt[1]||Mt[2]).length)}}(je.date,Mt);ot=function W(Re,ct){if(null===ct)return new Date(NaN);var Ae=Re.match(S);if(!Ae)return new Date(NaN);var Mt=!!Ae[4],je=ze(Ae[1]),ot=ze(Ae[2])-1,mt=ze(Ae[3]),we=ze(Ae[4]),de=ze(Ae[5])-1;if(Mt)return function be(Re,ct,Ae){return ct>=1&&ct<=53&&Ae>=0&&Ae<=6}(0,we,de)?function K(Re,ct,Ae){var Mt=new Date(0);Mt.setUTCFullYear(Re,0,4);var ot=7*(ct-1)+Ae+1-(Mt.getUTCDay()||7);return Mt.setUTCDate(Mt.getUTCDate()+ot),Mt}(ct,we,de):new Date(NaN);var U=new Date(0);return function fe(Re,ct,Ae){return ct>=0&&ct<=11&&Ae>=1&&Ae<=(te[ct]||(ne(Re)?29:28))}(ct,ot,mt)&&function re(Re,ct){return ct>=1&&ct<=(ne(Re)?366:365)}(ct,je)?(U.setUTCFullYear(ct,ot,Math.max(je,mt)),U):new Date(NaN)}(mt.restDateString,mt.year)}if(!ot||isNaN(ot.getTime()))return new Date(NaN);var U,we=ot.getTime(),de=0;if(je.time&&(de=function Y(Re){var ct=Re.match(A);if(!ct)return NaN;var Ae=G(ct[1]),Mt=G(ct[2]),je=G(ct[3]);return function le(Re,ct,Ae){return 24===Re?0===ct&&0===Ae:Ae>=0&&Ae<60&&ct>=0&&ct<60&&Re>=0&&Re<25}(Ae,Mt,je)?Ae*D.vh+Mt*D.yJ+1e3*je:NaN}(je.time),isNaN(de)))return new Date(NaN);if(!je.timezone){var B=new Date(we+de),Ee=new Date(0);return Ee.setFullYear(B.getUTCFullYear(),B.getUTCMonth(),B.getUTCDate()),Ee.setHours(B.getUTCHours(),B.getUTCMinutes(),B.getUTCSeconds(),B.getUTCMilliseconds()),Ee}return U=function V(Re){if("Z"===Re)return 0;var ct=Re.match(k);if(!ct)return 0;var Ae="+"===ct[1]?-1:1,Mt=parseInt(ct[2]),je=ct[3]&&parseInt(ct[3])||0;return function ce(Re,ct){return ct>=0&&ct<=59}(0,je)?Ae*(Mt*D.vh+je*D.yJ):NaN}(je.timezone),isNaN(U)?new Date(NaN):new Date(we+de+U)}(Re);return isNaN(je)&&(je=(0,e.Z)(Re,Ae,new Date)),isNaN(je)?Mt:je}function Ye(Re,ct,Ae){if(Re=Me(Re),isNaN(Re))return"";const Mt={locale:Ae};return"fn"===ct?(0,Q.Z)(Re,Mt):(0,ie.Z)(Re,ct,Mt)}var q=o(61855),ve=o(27163);const Be=new class ee{get now(){return new Date}get date(){return this.removeTime(this.now)}removeTime(ct){return new Date(ct.toDateString())}format(ct,Ae="yyyy-MM-dd HH:mm:ss"){return(0,ie.Z)(ct,Ae)}genTick(ct){return new Array(ct).fill(0).map((Ae,Mt)=>Mt)}getDiffDays(ct,Ae){return(0,q.Z)(ct,"number"==typeof Ae?(0,n.Z)(this.date,Ae):Ae||this.date)}disabledBeforeDate(ct){return Ae=>this.getDiffDays(Ae,ct?.offsetDays)<0}disabledAfterDate(ct){return Ae=>this.getDiffDays(Ae,ct?.offsetDays)>0}baseDisabledTime(ct,Ae){const Mt=this.genTick(24),je=this.genTick(60);return ot=>{const mt=ot;if(null==mt)return{};const we=(0,ve.Z)(this.now,Ae||0),de=we.getHours(),U=we.getMinutes(),B=mt.getHours(),Ee=0===this.getDiffDays(this.removeTime(mt));return{nzDisabledHours:()=>Ee?"before"===ct?Mt.slice(0,de):Mt.slice(de+1):[],nzDisabledMinutes:()=>Ee&&B===de?"before"===ct?je.slice(0,U):je.slice(U+1):[],nzDisabledSeconds:()=>{if(Ee&&B===de&&mt.getMinutes()===U){const Ie=we.getSeconds();return"before"===ct?je.slice(0,Ie):je.slice(Ie+1)}return[]}}}}disabledBeforeTime(ct){return this.baseDisabledTime("before",ct?.offsetSeconds)}disabledAfterTime(ct){return this.baseDisabledTime("after",ct?.offsetSeconds)}}},74648:(nt,I,o)=>{"use strict";function n(M,h,v){return function g(d,p,f){const y=`$$__${p}`;return Object.defineProperty(d,y,{configurable:!0,writable:!0}),{get(){return f&&f.get?f.get.bind(this)():this[y]},set(T){f&&f.set&&f.set.bind(this)(h(T,v)),this[y]=h(T,v)}}}}function t(M,h=!1){return null==M?h:"false"!=`${M}`}function i(M=!1){return n(0,t,M)}function l(M,h=0){return isNaN(parseFloat(M))||isNaN(Number(M))?h:Number(M)}function C(M=0){return n(0,l,M)}function u(M){return function E(M,h){return(v,g,d)=>{const p=d.value;return d.value=function(...f){const T=this[h?.ngZoneName||"ngZone"];if(!T)return p.call(this,...f);let x;return T[M](()=>{x=p.call(this,...f)}),x},d}}("runOutsideAngular",M)}o.d(I,{yF:()=>i,Rn:()=>C,EA:()=>u,sw:()=>t,He:()=>l}),o(64115)},59927:(nt,I,o)=>{"use strict";function t(_,P){if(!_)return"";const S={..."string"==typeof P?{mask:P}:P},A={0:{pattern:/\d/,default:"0"},9:{pattern:/\d/},"#":{pattern:/[a-zA-Z0-9]/},U:{pattern:/[a-zA-Z]/,transform:R=>R.toLocaleUpperCase()},L:{pattern:/[a-zA-Z]/,transform:R=>R.toLocaleLowerCase()},"*":{pattern:/.*/,transform:R=>"*"},...S.tokens},k=_.split("");return S.mask.split("").reduce((R,$)=>{const W=A[$];if(!W)return R.push($),R;const ze=k.shift()??"";return W.pattern.test(ze)?(R.push("function"==typeof W.transform?W.transform(ze):ze),R):(W.default&&R.push(W.default),R)},[]).join("")}o.d(I,{ie:()=>D,mL:()=>C,B0:()=>t}),o(64115);function l(_,P){return new RegExp(`^${_}$`,P)}const C={num:l("(([-+]?\\d+\\.\\d+)|([-+]?\\d+)|([-+]?\\.\\d+))(?:[eE]([-+]?\\d+))?"),idCard:l("(^\\d{15}$)|(^\\d{17}(?:[0-9]|X)$)","i"),mobile:l("^(0|\\+?86|17951)?1[0-9]{10}$"),url:l("(((^https?:(?://)?)(?:[-;:&=\\+\\$,\\w]+@)?[A-Za-z0-9.-]+(?::\\d+)?|(?:www.|[-;:&=\\+\\$,\\w]+@)[A-Za-z0-9.-]+)((?:/[\\+~%\\/.\\w-_]*)?\\??(?:[-\\+=&;%@.\\w_]*)#?(?:[\\w]*))?)"),ip:l("(?:^(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}$)|(?:^(?:(?:[a-fA-F\\d]{1,4}:){7}(?:[a-fA-F\\d]{1,4}|:)|(?:[a-fA-F\\d]{1,4}:){6}(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|:[a-fA-F\\d]{1,4}|:)|(?:[a-fA-F\\d]{1,4}:){5}(?::(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-fA-F\\d]{1,4}){1,2}|:)|(?:[a-fA-F\\d]{1,4}:){4}(?:(?::[a-fA-F\\d]{1,4}){0,1}:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-fA-F\\d]{1,4}){1,3}|:)|(?:[a-fA-F\\d]{1,4}:){3}(?:(?::[a-fA-F\\d]{1,4}){0,2}:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-fA-F\\d]{1,4}){1,4}|:)|(?:[a-fA-F\\d]{1,4}:){2}(?:(?::[a-fA-F\\d]{1,4}){0,3}:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-fA-F\\d]{1,4}){1,5}|:)|(?:[a-fA-F\\d]{1,4}:){1}(?:(?::[a-fA-F\\d]{1,4}){0,4}:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-fA-F\\d]{1,4}){1,6}|:)|(?::(?:(?::[a-fA-F\\d]{1,4}){0,5}:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-fA-F\\d]{1,4}){1,7}|:)))(?:%[0-9a-zA-Z]{1,})?$)"),color:l("(?:#|0x)(?:[a-f0-9]{3}|[a-f0-9]{6})\\b|(?:rgb|hsl)a?\\([^\\)]*\\)"),chinese:l("[\u4e00-\u9fa5]+")};var f=o(96814),y=o(65879);const T=[{unit:"Q",value:Math.pow(10,15)},{unit:"T",value:Math.pow(10,12)},{unit:"B",value:Math.pow(10,9)},{unit:"M",value:Math.pow(10,6)},{unit:"K",value:1e3}];var x=o(78967);let D=(()=>{class _{constructor(S,A,k="USD"){this.locale=A,this.currencyPipe=new f.H9(A,k),this.c=S.merge("utilCurrency",{startingUnit:"yuan",megaUnit:{Q:"\u4eac",T:"\u5146",B:"\u4ebf",M:"\u4e07",K:"\u5343"},precision:2,ingoreZeroPrecision:!0})}format(S,A){A={startingUnit:this.c.startingUnit,precision:this.c.precision,ingoreZeroPrecision:this.c.ingoreZeroPrecision,ngCurrency:this.c.ngCurrency,...A};let k=Number(S);if(null==S||isNaN(k))return"";if("cent"===A.startingUnit&&(k/=100),null!=A.ngCurrency){const $=A.ngCurrency;return this.currencyPipe.transform(k,$.currencyCode,$.display,$.digitsInfo,$.locale||this.locale)}const R=(0,f.uf)(k,this.locale,`.${A.ingoreZeroPrecision?1:A.precision}-${A.precision}`);return A.ingoreZeroPrecision?R.replace(/(?:\.[0]+)$/g,""):R}mega(S,A){A={precision:this.c.precision,unitI18n:this.c.megaUnit,startingUnit:this.c.startingUnit,...A};let k=Number(S);const R={raw:S,value:"",unit:"",unitI18n:""};if(isNaN(k)||0===k)return R.value=S.toString(),R;"cent"===A.startingUnit&&(k/=100);let $=Math.abs(+k);const W=Math.pow(10,A.precision),ze=k<0;for(const Y of T){let G=$/Y.value;if(G=Math.round(G*W)/W,G>=1){$=G,R.unit=Y.unit;break}}return R.value=(ze?"-":"")+$,R.unitI18n=A.unitI18n[R.unit],R}cny(S,A){if(A={inWords:!0,minusSymbol:"\u8d1f",startingUnit:this.c.startingUnit,...A},S=Number(S),isNaN(S))return"";let k,R;"cent"===A.startingUnit&&(S/=100),S=S.toString(),[k,R]=S.split(".");let $="";k.startsWith("-")&&($=A.minusSymbol,k=k.substring(1)),/^-?\d+$/.test(S)&&(R=null),k=(+k).toString();const W=A.inWords,ze={num:W?["","\u58f9","\u8d30","\u53c1","\u8086","\u4f0d","\u9646","\u67d2","\u634c","\u7396","\u70b9"]:["","\u4e00","\u4e8c","\u4e09","\u56db","\u4e94","\u516d","\u4e03","\u516b","\u4e5d","\u70b9"],radice:W?["","\u62fe","\u4f70","\u4edf","\u4e07","\u62fe","\u4f70","\u4edf","\u4ebf","\u62fe","\u4f70","\u4edf","\u4e07\u4ebf","\u62fe","\u4f70","\u4edf","\u5146","\u62fe","\u4f70","\u4edf"]:["","\u5341","\u767e","\u5343","\u4e07","\u5341","\u767e","\u5343","\u4ebf","\u5341","\u767e","\u5343","\u4e07\u4ebf","\u5341","\u767e","\u5343","\u5146","\u5341","\u767e","\u5343"],dec:["\u89d2","\u5206","\u5398","\u6beb"]};W&&(S=(+S).toFixed(5).toString());let Y="";const G=k.length;if("0"===k||0===G)Y="\u96f6";else{let ne="";for(let fe=0;fe1&&0!==re&&"0"===k[fe-1]?"\u96f6":"",Q=0===re&&be%4!=0||"0000"===k.substring(fe-3,fe-3+4),ie=ne;let ae=ze.num[re];ne=Q?"":ze.radice[be],0===fe&&"\u4e00"===ae&&"\u5341"===ne&&(ae=""),re>1&&"\u4e8c"===ae&&-1===["","\u5341","\u767e"].indexOf(ne)&&"\u5341"!==ie&&(ae="\u4e24"),Y+=ce+ae+ne}}let V="";const K=R?R.toString().length:0;if(null===R)V=W?"\u6574":"";else if("0"===R)V="\u96f6";else for(let ne=0;neze.dec.length-1);ne++){const fe=R[ne];V+=("0"===fe?"\u96f6":"")+ze.num[+fe]+(W?ze.dec[ne]:"")}return $+(W?Y+("\u96f6"===V?"\u5143\u6574":`\u5143${V}`):Y+(""===V?"":`\u70b9${V}`))}static#e=this.\u0275fac=function(A){return new(A||_)(y.LFG(x.Ri),y.LFG(y.soG),y.LFG(y.EJc))};static#t=this.\u0275prov=y.Yz7({token:_,factory:_.\u0275fac,providedIn:"root"})}return _})()},64115:(nt,I,o)=>{"use strict";o.d(I,{Df:()=>x,hu:()=>_,p$:()=>i,In:()=>t,RH:()=>C,Z2:()=>l,ZK:()=>h});var e=o(15377),n=o.n(e);function t($,W,ze){if(!$||null==W||0===W.length)return ze;if(Array.isArray(W)||(W=~W.indexOf(".")?W.split("."):[W]),1===W.length){const G=$[W[0]];return typeof G>"u"?ze:G}const Y=W.reduce((G,V)=>(G||{})[V],$);return typeof Y>"u"?ze:Y}function i($){return n()(!0,{},{_:$})._}function l($,W,...ze){if(Array.isArray($)||"object"!=typeof $)return $;const Y=V=>"object"==typeof V,G=(V,K)=>(Object.keys(K).filter(te=>"__proto__"!==te&&Object.prototype.hasOwnProperty.call(K,te)).forEach(te=>{const ne=K[te],fe=V[te];V[te]=Array.isArray(fe)?W?ne:[...fe,...ne]:"function"==typeof ne?ne:null!=ne&&Y(ne)&&null!=fe&&Y(fe)?G(fe,ne):i(ne)}),V);return ze.filter(V=>null!=V&&Y(V)).forEach(V=>G($,V)),$}function C($,...W){return l($,!1,...W)}const h=(...$)=>{};var d=o(96814),p=o(65619),f=o(63020),y=o(32181),T=o(65879);let x=(()=>{class ${constructor(ze){this.doc=ze,this.list={},this.cached={},this._notify=new p.X([])}get change(){return this._notify.asObservable().pipe((0,f.B)(),(0,y.h)(ze=>0!==ze.length))}clear(){this.list={},this.cached={}}attachAttributes(ze,Y){null!=Y&&Object.entries(Y).forEach(([G,V])=>{ze.setAttribute(G,V)})}load(ze){Array.isArray(ze)||(ze=[ze]);const Y=[];return ze.map(G=>"object"!=typeof G?{path:G}:G).forEach(G=>{G.path.endsWith(".js")?Y.push(this.loadScript(G.path,G.options)):Y.push(this.loadStyle(G.path,G.options))}),Promise.all(Y).then(G=>(this._notify.next(G),Promise.resolve(G)))}loadScript(ze,Y,G){const V="object"==typeof Y?Y:{innerContent:Y,attributes:G};return new Promise(K=>{if(!0===this.list[ze])return void K({...this.cached[ze],status:"loading"});this.list[ze]=!0;const te=fe=>{this.cached[ze]=fe,K(fe),this._notify.next([fe])},ne=this.doc.createElement("script");ne.type="text/javascript",ne.src=ze,this.attachAttributes(ne,V.attributes),V.innerContent&&(ne.innerHTML=V.innerContent),ne.onload=()=>te({path:ze,status:"ok"}),ne.onerror=fe=>te({path:ze,status:"error",error:fe}),this.doc.getElementsByTagName("head")[0].appendChild(ne)})}loadStyle(ze,Y,G,V){const K="object"==typeof Y?Y:{rel:Y,innerContent:G,attributes:V};return new Promise(te=>{if(!0===this.list[ze])return void te(this.cached[ze]);this.list[ze]=!0;const ne=this.doc.createElement("link");ne.rel=K.rel??"stylesheet",ne.type="text/css",ne.href=ze,this.attachAttributes(ne,K.attributes),K.innerContent&&(ne.innerHTML=K.innerContent),this.doc.getElementsByTagName("head")[0].appendChild(ne);const fe={path:ze,status:"ok"};this.cached[ze]=fe,te(fe)})}static#e=this.\u0275fac=function(Y){return new(Y||$)(T.LFG(d.K0))};static#t=this.\u0275prov=T.Yz7({token:$,factory:$.\u0275fac,providedIn:"root"})}return $})();function _($,W){}},59765:(nt,I,o)=>{"use strict";o.d(I,{S:()=>t});var e=o(65879),n=o(59927);let t=(()=>{class i{constructor(C){this.srv=C}transform(C,E){return this.srv.cny(C,E)}static#e=this.\u0275fac=function(E){return new(E||i)(e.Y36(n.ie,16))};static#t=this.\u0275pipe=e.Yjl({name:"cny",type:i,pure:!0})}return i})()},4171:(nt,I,o)=>{"use strict";o.d(I,{A:()=>t});var e=o(65879),n=o(59927);let t=(()=>{class i{constructor(C,E){this.srv=C,this.isCN=!1,this.isCN=E.startsWith("zh")}transform(C,E){const u=this.srv.mega(C,E);return u.value+(this.isCN?u.unitI18n:u.unit)}static#e=this.\u0275fac=function(E){return new(E||i)(e.Y36(n.ie,16),e.Y36(e.soG,16))};static#t=this.\u0275pipe=e.Yjl({name:"mega",type:i,pure:!0})}return i})()},13072:(nt,I,o)=>{"use strict";o.d(I,{R:()=>t});var e=o(65879),n=o(59927);let t=(()=>{class i{constructor(C){this.srv=C}transform(C,E){return this.srv.format(C,E)}static#e=this.\u0275fac=function(E){return new(E||i)(e.Y36(n.ie,16))};static#t=this.\u0275pipe=e.Yjl({name:"price",type:i,pure:!0})}return i})()},39542:(nt,I,o)=>{"use strict";o.d(I,{g:()=>n});var e=o(65879);let n=(()=>{class t{transform(l,C,...E){return l.filter(u=>C(u,...E))}static#e=this.\u0275fac=function(C){return new(C||t)};static#t=this.\u0275pipe=e.Yjl({name:"filter",type:t,pure:!0})}return t})()},58859:(nt,I,o)=>{"use strict";o.d(I,{V:()=>t});var e=o(59927),n=o(65879);let t=(()=>{class i{transform(C,E){return(0,e.B0)(C,E)}static#e=this.\u0275fac=function(E){return new(E||i)};static#t=this.\u0275pipe=n.Yjl({name:"mask",type:i,pure:!0})}return i})()},8471:(nt,I,o)=>{"use strict";o.d(I,{m:()=>t});var e=o(96814),n=o(65879);const t=new n.OlP("WINDOW",{factory:()=>{const{defaultView:M}=(0,n.f3M)(e.K0);if(!M)throw new Error("Window is not available");return M}});var i=o(92438),l=o(27921),C=o(37398),E=o(93997),u=o(63020);new n.OlP("PAGE_VISIBILITY`",{factory:()=>{const M=(0,n.f3M)(e.K0);return(0,i.R)(M,"visibilitychange").pipe((0,l.O)(0),(0,C.U)(()=>!M.hidden),(0,E.x)(),(0,u.B)())}})},87691:(nt,I,o)=>{"use strict";o.d(I,{z:()=>t});var e=o(97328),n=o(65879);let t=(()=>{class i{constructor(){this.theme="default",this.theme$=new e.t(1)}setTheme(C){this.theme=C,this.theme$.next(C)}static#e=this.\u0275fac=function(E){return new(E||i)};static#t=this.\u0275prov=n.Yz7({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})()},3604:(nt,I,o)=>{"use strict";o.d(I,{$:()=>Ie});var e=o(96814);const l="https://stackblitz.com",C=["angular-cli","create-react-app","html","javascript","node","polymer","typescript","vue"],E=["project","search","ports","settings"],u=["light","dark"],z=["editor","preview"],M={clickToLoad:Ne=>v("ctl",Ne),devToolsHeight:Ne=>d("devtoolsheight",Ne),forceEmbedLayout:Ne=>v("embed",Ne),hideDevTools:Ne=>v("hidedevtools",Ne),hideExplorer:Ne=>v("hideExplorer",Ne),hideNavigation:Ne=>v("hideNavigation",Ne),openFile:Ne=>f("file",Ne),showSidebar:Ne=>function g(Ne,pt){return"boolean"==typeof pt?`${Ne}=${pt?"1":"0"}`:""}("showSidebar",Ne),sidebarView:Ne=>p("sidebarView",Ne,E),startScript:Ne=>f("startScript",Ne),terminalHeight:Ne=>d("terminalHeight",Ne),theme:Ne=>p("theme",Ne,u),view:Ne=>p("view",Ne,z),zenMode:Ne=>v("zenMode",Ne)};function h(Ne={}){const pt=Object.entries(Ne).map(([Dt,Lt])=>null!=Lt&&M.hasOwnProperty(Dt)?M[Dt](Lt):"").filter(Boolean);return pt.length?`?${pt.join("&")}`:""}function v(Ne,pt){return!0===pt?`${Ne}=1`:""}function d(Ne,pt){if("number"==typeof pt&&!Number.isNaN(pt)){const Dt=Math.min(100,Math.max(0,pt));return`${Ne}=${encodeURIComponent(Math.round(Dt))}`}return""}function p(Ne,pt="",Dt=[]){return Dt.includes(pt)?`${Ne}=${encodeURIComponent(pt)}`:""}function f(Ne,pt){return(Array.isArray(pt)?pt:[pt]).filter(Lt=>"string"==typeof Lt&&""!==Lt.trim()).map(Lt=>`${Ne}=${encodeURIComponent(Lt)}`).join("&")}function T(Ne,pt){return`${D(pt)}${Ne}${h(pt)}`}function D(Ne={}){return("string"==typeof Ne.origin?Ne.origin:l).replace(/\/$/,"")}function S(Ne){return Ne&&!1===Ne.newWindow?"_self":"_blank"}function V({template:Ne,title:pt,description:Dt,dependencies:Lt,files:Ut,settings:qt}){if(!C.includes(Ne)){const Vt=C.map(st=>`'${st}'`).join(", ");console.warn(`Unsupported project.template: must be one of ${Vt}`)}const en=[],cn=(Vt,st,He="")=>{en.push(function Y(Ne,pt){const Dt=document.createElement("input");return Dt.type="hidden",Dt.name=Ne,Dt.value=pt,Dt}(Vt,"string"==typeof st?st:He))};cn("project[title]",pt),"string"==typeof Dt&&Dt.length>0&&cn("project[description]",Dt),cn("project[template]",Ne,"javascript"),Lt&&("node"===Ne?console.warn("Invalid project.dependencies: dependencies must be provided as a 'package.json' file when using the 'node' template."):cn("project[dependencies]",JSON.stringify(Lt))),qt&&cn("project[settings]",JSON.stringify(qt)),Object.entries(Ut).forEach(([Vt,st])=>{cn(`project[files][${function G(Ne){return Ne.replace(/\[/g,"%5B").replace(/\]/g,"%5D")}(Vt)}]`,st)});const Wt=document.createElement("form");return Wt.method="POST",Wt.setAttribute("style","display:none!important;"),Wt.append(...en),Wt}const ie_openProject=function fe(Ne,pt){!function te(Ne,pt){const Dt=V(Ne);Dt.action=T("/run",pt),Dt.target=S(pt),document.body.appendChild(Dt),Dt.submit(),document.body.removeChild(Dt)}(Ne,pt)};var ae=o(28539),xe=o(64115);const Me={$schema:"./node_modules/@angular/cli/lib/config/schema.json",version:1,newProjectRoot:"projects",projects:{demo:{root:"",sourceRoot:"src",projectType:"application",prefix:"app",architect:{build:{builder:"@angular-devkit/build-angular:browser",options:{outputPath:"dist/demo",index:"src/index.html",main:"src/main.ts",polyfills:"src/polyfills.ts",tsConfig:"tsconfig.json",assets:["src/assets"],styles:["src/styles.css"]},configurations:{production:{optimization:!0,outputHashing:"all",sourceMap:!1,extractCss:!0,namedChunks:!1,aot:!0,extractLicenses:!0,vendorChunk:!1,buildOptimizer:!0}}},serve:{builder:"@angular-devkit/build-angular:dev-server",options:{browserTarget:"demo:build"}}}}},defaultProject:"demo"},Ye=Ne=>`import { NgModule, APP_INITIALIZER, VERSION as VERSION_NG } from '@angular/core';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { HttpClientModule } from '@angular/common/http';\nimport { RouterModule } from '@angular/router';\n\nimport { DemoNgZorroAntdModule } from './ng-zorro-antd.module';\nimport { NZ_ICONS } from 'ng-zorro-antd/icon';\nimport { provideNzI18n, en_US } from 'ng-zorro-antd/i18n';\nimport { IconDefinition } from '@ant-design/icons-angular';\nimport * as AllIcons from '@ant-design/icons-angular/icons';\n\nimport { registerLocaleData } from '@angular/common';\nimport en from '@angular/common/locales/en';\nregisterLocaleData(en);\n\nimport { AlainThemeModule } from '@delon/theme';\nimport { DemoDelonABCModule } from './delon-abc.module';\nimport { DemoDelonChartModule } from './delon-chart.module';\nimport { DelonFormModule } from '@delon/form';\nimport { DelonAuthModule } from '@delon/auth';\nimport { DelonACLModule } from '@delon/acl';\nimport { DelonCacheModule } from '@delon/cache';\nimport { StartupService, StartupServiceFactory } from './startup.service';\nimport { GlobalConfigModule } from './global-config.module';\n\nconst antDesignIcons = AllIcons as {\n [key: string]: IconDefinition;\n};\nconst icons: IconDefinition[] = Object.keys(antDesignIcons).map(key => antDesignIcons[key]);\n\nimport { VERSION as VERSION_ALAIN } from '@delon/theme';\nimport { VERSION as VERSION_ZORRO } from 'ng-zorro-antd/version';\nimport { ${Ne} } from './app.component';\n\n@NgModule({\nimports: [\n BrowserModule,\n FormsModule,\n ReactiveFormsModule,\n HttpClientModule,\n BrowserAnimationsModule,\n RouterModule.forRoot([]),\n DemoNgZorroAntdModule,\n AlainThemeModule.forRoot(),\n DemoDelonABCModule,\n DemoDelonChartModule,\n DelonACLModule.forRoot(),\n DelonCacheModule,\n DelonAuthModule,\n DelonFormModule.forRoot(),\n GlobalConfigModule.forRoot(),\n],\nproviders: [\n StartupService,\n {\n provide: APP_INITIALIZER,\n useFactory: StartupServiceFactory,\n deps: [StartupService],\n multi: true\n },\n provideNzI18n(en_US),\n { provide: NZ_ICONS, useValue: icons }\n],\ndeclarations: [ ${Ne} ],\nbootstrap: [ ${Ne} ]\n})\nexport class AppModule {\n constructor() {\n setTimeout(() => {\n const el = document.querySelector('#VERSION');\n if (el != null) {\n el.innerHTML = \`\n VERSIONS: angular(\${VERSION_NG.full}), ng-zorro-antd(\${VERSION_ZORRO.full}), @delon(\${VERSION_ALAIN.full})\n \`;\n }\n }, 1000);\n }\n}\n `,q="import { NgModule } from '@angular/core';\n\n// #region all modules\nimport { AvatarListModule } from '@delon/abc/avatar-list';\nimport { CountDownModule } from '@delon/abc/count-down';\nimport { DatePickerModule } from '@delon/abc/date-picker';\nimport { DownFileModule } from '@delon/abc/down-file';\nimport { EllipsisModule } from '@delon/abc/ellipsis';\nimport { ErrorCollectModule } from '@delon/abc/error-collect';\nimport { ExceptionModule } from '@delon/abc/exception';\nimport { FooterToolbarModule } from '@delon/abc/footer-toolbar';\nimport { FullContentModule } from '@delon/abc/full-content';\nimport { GlobalFooterModule } from '@delon/abc/global-footer';\nimport { LoadingModule } from '@delon/abc/loading';\nimport { HotkeyModule } from '@delon/abc/hotkey';\nimport { LodopModule } from '@delon/abc/lodop';\nimport { NoticeIconModule } from '@delon/abc/notice-icon';\nimport { ObserversModule } from '@delon/abc/observers';\nimport { PageHeaderModule } from '@delon/abc/page-header';\nimport { QRModule } from '@delon/abc/qr';\nimport { QuickMenuModule } from '@delon/abc/quick-menu';\nimport { ResultModule } from '@delon/abc/result';\nimport { ReuseTabModule } from '@delon/abc/reuse-tab';\nimport { SEModule } from '@delon/abc/se';\nimport { SGModule } from '@delon/abc/sg';\nimport { STModule } from '@delon/abc/st';\nimport { SVModule } from '@delon/abc/sv';\nimport { TagSelectModule } from '@delon/abc/tag-select';\nimport { MediaModule } from '@delon/abc/media';\nimport { XlsxModule } from '@delon/abc/xlsx';\nimport { ZipModule } from '@delon/abc/zip';\nimport { OnboardingModule } from '@delon/abc/onboarding';\nimport { LetModule } from '@delon/abc/let';\nimport { AutoFocusModule } from '@delon/abc/auto-focus';\nimport { PdfModule } from '@delon/abc/pdf';\n\nconst MODULES = [\n ErrorCollectModule,\n FooterToolbarModule,\n DownFileModule,\n AvatarListModule,\n EllipsisModule,\n GlobalFooterModule,\n ExceptionModule,\n NoticeIconModule,\n ObserversModule,\n PageHeaderModule,\n ResultModule,\n TagSelectModule,\n CountDownModule,\n STModule,\n ReuseTabModule,\n FullContentModule,\n XlsxModule,\n ZipModule,\n LodopModule,\n QuickMenuModule,\n QRModule,\n SVModule,\n SEModule,\n SGModule,\n DatePickerModule,\n LoadingModule,\n HotkeyModule,\n MediaModule,\n OnboardingModule,\n LetModule,\n AutoFocusModule,\n PdfModule,\n];\n\n@NgModule({ exports: MODULES })\nexport class DemoDelonABCModule {}\n",ve="import { NgModule } from '@angular/core';\n\n// #region all modules\n\nimport { G2BarModule } from '@delon/chart/bar';\nimport { G2CardModule } from '@delon/chart/card';\nimport { G2CustomModule } from '@delon/chart/custom';\nimport { G2GaugeModule } from '@delon/chart/gauge';\nimport { G2MiniAreaModule } from '@delon/chart/mini-area';\nimport { G2MiniBarModule } from '@delon/chart/mini-bar';\nimport { G2MiniProgressModule } from '@delon/chart/mini-progress';\nimport { NumberInfoModule } from '@delon/chart/number-info';\nimport { G2PieModule } from '@delon/chart/pie';\nimport { G2RadarModule } from '@delon/chart/radar';\nimport { G2SingleBarModule } from '@delon/chart/single-bar';\nimport { G2TagCloudModule } from '@delon/chart/tag-cloud';\nimport { G2TimelineModule } from '@delon/chart/timeline';\nimport { TrendModule } from '@delon/chart/trend';\nimport { G2WaterWaveModule } from '@delon/chart/water-wave';\nimport { ChartEChartsModule } from '@delon/chart/chart-echarts';\n\nconst MODULES = [\n G2BarModule,\n G2CardModule,\n G2CustomModule,\n G2GaugeModule,\n G2MiniAreaModule,\n G2MiniBarModule,\n G2MiniProgressModule,\n G2PieModule,\n G2RadarModule,\n G2TagCloudModule,\n G2TimelineModule,\n G2WaterWaveModule,\n G2SingleBarModule,\n NumberInfoModule,\n TrendModule,\n ChartEChartsModule,\n];\n\n// #endregion\n\n@NgModule({ exports: MODULES })\nexport class DemoDelonChartModule {}\n",ee="export const environment = {\n production: false\n};\n",Be="import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { DelonMockModule } from '@delon/mock';\nimport { AlainThemeModule } from '@delon/theme';\nimport { AlainConfig, ALAIN_CONFIG, AlainConfigService } from '@delon/util/config';\n\n// Please refer to: https://ng-alain.com/docs/global-config\n// #region NG-ALAIN Config\n\nimport { DelonACLModule } from '@delon/acl';\nimport * as MOCKDATA from '../../_mock';\n\nconst alainConfig: AlainConfig = { };\n\nconst alainModules = [AlainThemeModule.forRoot(), DelonACLModule.forRoot(), DelonMockModule.forRoot({ data: MOCKDATA })];\nconst alainProvides = [{ provide: ALAIN_CONFIG, useValue: alainConfig }];\n\n// #region reuse-tab\n\nimport { RouteReuseStrategy } from '@angular/router';\nimport { ReuseTabService, ReuseTabStrategy } from '@delon/abc/reuse-tab';\nalainProvides.push({\n provide: RouteReuseStrategy,\n useClass: ReuseTabStrategy,\n deps: [ReuseTabService],\n} as any);\n\n// #endregion\n\n// fix\nalainProvides.push(AlainConfigService as any);\n\n// #endregion\n\n// Please refer to: https://ng.ant.design/docs/global-config/en#how-to-use\n// #region NG-ZORRO Config\n\nimport { NzConfig, provideNzConfig } from 'ng-zorro-antd/core/config';\n\nconst ngZorroConfig: NzConfig = {};\n\nconst zorroProvides = [provideNzConfig(ngZorroConfig)];\n\n// #endregion\n\n@NgModule({\n imports: [...alainModules],\n})\nexport class GlobalConfigModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: GlobalConfigModule,\n providers: [...alainProvides, ...zorroProvides],\n };\n }\n}\n",Re="import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nif (environment.production) {\n enableProdMode();\n}\n\nplatformBrowserDynamic()\n .bootstrapModule(AppModule)\n .catch((err) => console.error(err));\n",Ae="\nimport { NgModule } from '@angular/core';\n\nimport { NzAffixModule } from 'ng-zorro-antd/affix';\nimport { NzAlertModule } from 'ng-zorro-antd/alert';\nimport { NzAnchorModule } from 'ng-zorro-antd/anchor';\nimport { NzAutocompleteModule } from 'ng-zorro-antd/auto-complete';\nimport { NzAvatarModule } from 'ng-zorro-antd/avatar';\nimport { NzBackTopModule } from 'ng-zorro-antd/back-top';\nimport { NzBadgeModule } from 'ng-zorro-antd/badge';\nimport { NzBreadCrumbModule } from 'ng-zorro-antd/breadcrumb';\nimport { NzButtonModule } from 'ng-zorro-antd/button';\nimport { NzCalendarModule } from 'ng-zorro-antd/calendar';\nimport { NzCardModule } from 'ng-zorro-antd/card';\nimport { NzCarouselModule } from 'ng-zorro-antd/carousel';\nimport { NzCascaderModule } from 'ng-zorro-antd/cascader';\nimport { NzCheckboxModule } from 'ng-zorro-antd/checkbox';\nimport { NzCollapseModule } from 'ng-zorro-antd/collapse';\nimport { NzCommentModule } from 'ng-zorro-antd/comment';\nimport { NzNoAnimationModule } from 'ng-zorro-antd/core/no-animation';\nimport { NzTransButtonModule } from 'ng-zorro-antd/core/trans-button';\nimport { NzWaveModule } from 'ng-zorro-antd/core/wave';\nimport { NzDatePickerModule } from 'ng-zorro-antd/date-picker';\nimport { NzDescriptionsModule } from 'ng-zorro-antd/descriptions';\nimport { NzDividerModule } from 'ng-zorro-antd/divider';\nimport { NzDrawerModule } from 'ng-zorro-antd/drawer';\nimport { NzDropDownModule } from 'ng-zorro-antd/dropdown';\nimport { NzEmptyModule } from 'ng-zorro-antd/empty';\nimport { NzFormModule } from 'ng-zorro-antd/form';\nimport { NzGridModule } from 'ng-zorro-antd/grid';\nimport { NzI18nModule } from 'ng-zorro-antd/i18n';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzInputModule } from 'ng-zorro-antd/input';\nimport { NzInputNumberModule } from 'ng-zorro-antd/input-number';\nimport { NzLayoutModule } from 'ng-zorro-antd/layout';\nimport { NzListModule } from 'ng-zorro-antd/list';\nimport { NzMentionModule } from 'ng-zorro-antd/mention';\nimport { NzMenuModule } from 'ng-zorro-antd/menu';\nimport { NzMessageModule } from 'ng-zorro-antd/message';\nimport { NzModalModule } from 'ng-zorro-antd/modal';\nimport { NzNotificationModule } from 'ng-zorro-antd/notification';\nimport { NzPageHeaderModule } from 'ng-zorro-antd/page-header';\nimport { NzPaginationModule } from 'ng-zorro-antd/pagination';\nimport { NzPopconfirmModule } from 'ng-zorro-antd/popconfirm';\nimport { NzPopoverModule } from 'ng-zorro-antd/popover';\nimport { NzProgressModule } from 'ng-zorro-antd/progress';\nimport { NzRadioModule } from 'ng-zorro-antd/radio';\nimport { NzRateModule } from 'ng-zorro-antd/rate';\nimport { NzResultModule } from 'ng-zorro-antd/result';\nimport { NzSelectModule } from 'ng-zorro-antd/select';\nimport { NzSkeletonModule } from 'ng-zorro-antd/skeleton';\nimport { NzSliderModule } from 'ng-zorro-antd/slider';\nimport { NzSpinModule } from 'ng-zorro-antd/spin';\nimport { NzStatisticModule } from 'ng-zorro-antd/statistic';\nimport { NzStepsModule } from 'ng-zorro-antd/steps';\nimport { NzSwitchModule } from 'ng-zorro-antd/switch';\nimport { NzTableModule } from 'ng-zorro-antd/table';\nimport { NzTabsModule } from 'ng-zorro-antd/tabs';\nimport { NzTagModule } from 'ng-zorro-antd/tag';\nimport { NzTimePickerModule } from 'ng-zorro-antd/time-picker';\nimport { NzTimelineModule } from 'ng-zorro-antd/timeline';\nimport { NzToolTipModule } from 'ng-zorro-antd/tooltip';\nimport { NzTransferModule } from 'ng-zorro-antd/transfer';\nimport { NzTreeModule } from 'ng-zorro-antd/tree';\nimport { NzTreeSelectModule } from 'ng-zorro-antd/tree-select';\nimport { NzTypographyModule } from 'ng-zorro-antd/typography';\nimport { NzUploadModule } from 'ng-zorro-antd/upload';\nimport { NzResizableModule } from 'ng-zorro-antd/resizable';\n\n@NgModule({\n exports: [\n NzAffixModule,\n NzAlertModule,\n NzAnchorModule,\n NzAutocompleteModule,\n NzAvatarModule,\n NzBackTopModule,\n NzBadgeModule,\n NzButtonModule,\n NzBreadCrumbModule,\n NzCalendarModule,\n NzCardModule,\n NzCarouselModule,\n NzCascaderModule,\n NzCheckboxModule,\n NzCollapseModule,\n NzCommentModule,\n NzDatePickerModule,\n NzDescriptionsModule,\n NzDividerModule,\n NzDrawerModule,\n NzDropDownModule,\n NzEmptyModule,\n NzFormModule,\n NzGridModule,\n NzI18nModule,\n NzIconModule,\n NzInputModule,\n NzInputNumberModule,\n NzLayoutModule,\n NzListModule,\n NzMentionModule,\n NzMenuModule,\n NzMessageModule,\n NzModalModule,\n NzNoAnimationModule,\n NzNotificationModule,\n NzPageHeaderModule,\n NzPaginationModule,\n NzPopconfirmModule,\n NzPopoverModule,\n NzProgressModule,\n NzRadioModule,\n NzRateModule,\n NzResultModule,\n NzSelectModule,\n NzSkeletonModule,\n NzSliderModule,\n NzSpinModule,\n NzStatisticModule,\n NzStepsModule,\n NzSwitchModule,\n NzTableModule,\n NzTabsModule,\n NzTagModule,\n NzTimePickerModule,\n NzTimelineModule,\n NzToolTipModule,\n NzTransButtonModule,\n NzTransferModule,\n NzTreeModule,\n NzTreeSelectModule,\n NzTypographyModule,\n NzUploadModule,\n NzWaveModule,\n NzResizableModule\n ]\n})\nexport class DemoNgZorroAntdModule {\n\n}\n",Mt={name:"ng-alain",tags:["NG-ALAIN"],version:"0.0.0",scripts:{ng:"ng",start:"ng serve --disable-host-check",build:"ng build",test:"ng test",lint:"ng lint",e2e:"ng e2e"},private:!0,dependencies:{"@angular/animations":"~13.1.0","@angular/common":"~13.1.0","@angular/compiler":"~13.1.0","@angular/core":"~13.1.0","@angular/forms":"~13.1.0","@angular/platform-browser":"~13.1.0","@angular/platform-browser-dynamic":"~13.1.0","@angular/router":"~13.1.0",rxjs:"~7.4.0",tslib:"^2.3.0","zone.js":"~0.11.4"},devDependencies:{"@angular-devkit/build-angular":"~13.1.2","@angular/cli":"~13.1.2","@angular/compiler-cli":"~13.1.0","@types/jasmine":"~3.10.0","@types/node":"^12.11.1","jasmine-core":"~3.10.0",karma:"~6.3.0","karma-chrome-launcher":"~3.1.0","karma-coverage":"~2.1.0","karma-jasmine":"~4.0.0","karma-jasmine-html-reporter":"~1.7.0",typescript:"~4.5.2"}},je="\nimport 'zone.js';\n",mt={infiniteLoopProtection:!0,hardReloadOnChange:!1,view:"browser",template:"node",container:{node:"16",port:4200}},de={compileOnSave:!1,compilerOptions:{baseUrl:"./",outDir:"./dist/out-tsc",forceConsistentCasingInFileNames:!0,strict:!0,noImplicitOverride:!0,noPropertyAccessFromIndexSignature:!0,noImplicitReturns:!0,noFallthroughCasesInSwitch:!0,sourceMap:!0,declaration:!1,downlevelIteration:!0,experimentalDecorators:!0,moduleResolution:"node",importHelpers:!0,target:"es2017",module:"es2020",lib:["es2020","dom"],allowSyntheticDefaultImports:!0},angularCompilerOptions:{enableIvy:!0,enableI18nLegacyMessageIdFormat:!1,strictInjectionParameters:!0,strictInputAccessModifiers:!0,strictTemplates:!0}};var U=o(4147),B=o(65879),Ee=o(87691);let Ie=(()=>{class Ne{get themePath(){return`node_modules/@delon/theme/${this.appSrv.theme}.css`}genPackage({dependencies:Dt=[],devDependencies:Lt=[],includeCli:Ut=!1}){const qt=U.dependencies["@angular/core"],en=qt.substring(1).split(".").shift(),cn=Mt;["ng-zorro-antd","date-fns","@delon/theme","@delon/abc","@delon/chart","@delon/acl","@delon/auth","@delon/cache","@delon/mock","@delon/form","@delon/util","ajv","ajv-formats",...Dt].forEach(Vt=>cn.dependencies[Vt]="*"),Ut&&(Lt=[...Lt,"ng-alain","ng-alain-plugin-theme","@angular/cli","@angular/compiler-cli","@angular-devkit/build-angular"]),Lt.forEach(Vt=>cn.devDependencies[Vt]="*");const Wt={...U.dependencies,...U.devDependencies};return["dependencies","devDependencies"].forEach(Vt=>{Object.keys(cn[Vt]).forEach(st=>{cn[Vt][st]=st.startsWith("@delon")?`~${U.version}`:Wt[st]||"*"})}),cn.dependencies["@angular/core"]=qt,["@angular/cdk","@ant-design/icons-angular","ngx-countdown"].forEach(Vt=>{cn.dependencies[Vt]=en}),console.log(cn),cn}constructor(Dt,Lt){this.appSrv=Dt,this.document=Lt}get genStartupService(){return(Ne=>`import { Injectable } from '@angular/core';\nimport { LazyService } from '@delon/util/other';\n\n@Injectable()\nexport class StartupService {\n constructor(private lazy: LazyService) { }\n load(): Promise {\n return new Promise((resolve, reject) => {\n this.lazy.load([\n 'https://cdnjs.cloudflare.com/ajax/libs/ajv/${Ne.ajvVersion}/ajv.min.js',\n ])\n .then(() => resolve(null));\n });\n }\n}\n\nexport function StartupServiceFactory(startupService: StartupService): Function {\n return () => startupService.load();\n}`)({ajvVersion:U.dependencies.ajv.substring(1)})}get genMock(){return{"_mock/user.ts":o(22425).Z,"_mock/index.ts":"export * from './user';"}}parseCode(Dt){let Lt="",Ut="";const qt=/selector:[ ]?(['|"|`])([^'"`]+)/g.exec(Dt);qt&&(Lt=qt[2]);const en=/export class ([^ {]+)/g.exec(Dt);return en&&(Ut=en[1]),{selector:Lt,componentName:Ut,html:['',`<${Lt}>loading`,'
      '].join("\n")}}openOnStackBlitz(Dt,Lt){const Ut=this.parseCode(Lt),qt=(0,xe.p$)(Me);qt.projects.demo.architect.build.options.styles.splice(0,0,this.themePath);const en=this.genPackage({dependencies:[],devDependencies:[],includeCli:!1});en.name=Dt,ie_openProject({title:"NG-ALAIN",description:"NG-ZORRO admin panel front-end framework",tags:["ng-alain","@delon","NG-ZORRO","ng-zorro-antd","Ant Design","Angular","ng"],dependencies:{...en.dependencies,...en.devDependencies},files:{"angular.json":`${JSON.stringify(qt,null,2)}`,"tsconfig.json":`${JSON.stringify(de,null,2)}`,"package.json":`${JSON.stringify(en,null,2)}`,"src/environments/environment.ts":ee,"src/index.html":Ut.html,"src/main.ts":Re,"src/polyfills.ts":je,"src/app/app.component.ts":Lt,"src/app/app.module.ts":Ye(Ut.componentName),"src/app/global-config.module.ts":Be,"src/app/ng-zorro-antd.module.ts":Ae,"src/app/delon-abc.module.ts":q,"src/app/delon-chart.module.ts":ve,"src/app/startup.service.ts":this.genStartupService,"src/styles.css":"",...this.genMock},template:"angular-cli"},{openFile:"src/app/app.component.ts"})}openOnCodeSandbox(Dt,Lt,Ut=!1){const qt=this.parseCode(Lt),en=this.genMock,cn=(0,xe.p$)(Me);cn.projects.demo.architect.build.options.styles.splice(0,0,this.themePath);const Wt=this.genPackage({dependencies:[],devDependencies:[],includeCli:Ut});Wt.name=Dt;const Vt={"package.json":{content:JSON.stringify(Wt,null,2),isBinary:!1},"angular.json":{content:`${JSON.stringify(cn,null,2)}`,isBinary:!1},"tsconfig.json":{content:`${JSON.stringify(de,null,2)}`,isBinary:!1},"src/environments/environment.ts":{content:ee,isBinary:!1},"src/index.html":{content:qt.html,isBinary:!1},"src/main.ts":{content:Ut?"import './polyfills';\n\nimport { enableProdMode, ViewEncapsulation } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\nimport { preloaderFinished } from '@delon/theme';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\npreloaderFinished();\n\nif (environment.production) {\n enableProdMode();\n}\n\nplatformBrowserDynamic()\n .bootstrapModule(AppModule, {\n defaultEncapsulation: ViewEncapsulation.Emulated,\n preserveWhitespaces: false\n })\n .then(res => {\n const win = window as NzSafeAny;\n if (win && win.appBootstrap) {\n win.appBootstrap();\n }\n return res;\n })\n .catch(err => console.error(err));\n":Re,isBinary:!1},"src/polyfills.ts":{content:je,isBinary:!1},"src/app/app.module.ts":{content:Ye(qt.componentName),isBinary:!1},"src/app/global-config.module.ts":{content:Be,isBinary:!1},"src/app/app.component.ts":{content:Lt,isBinary:!1},"src/app/ng-zorro-antd.module.ts":{content:Ae,isBinary:!1},"src/app/delon-abc.module.ts":{content:q,isBinary:!1},"src/app/delon-chart.module.ts":{content:ve,isBinary:!1},"src/app/startup.service.ts":{content:this.genStartupService,isBinary:!1},"src/styles.css":{content:"",isBinary:!1},"_mock/user.ts":{content:en["_mock/user.ts"],isBinary:!1},"_mock/index.ts":{content:en["_mock/index.ts"],isBinary:!1}};Ut&&(Vt["README.md"]={content:"# Angular CLI Template\n\nThis template was generated with [Angular CLI](https://github.com/angular/angular-cli).\n\n## Running `ng` commands\n\nOn the terminal on your bottom right there is a + you can click to open a new tab in it you can write any commands you want with:\n\n```\nyarn ng \nyarn ng g ng-alain:module news\nyarn ng g ng-alain:list list -m=news\n```\n\n## QA\n\n**502: Bad Gateway**\n\nThe solution is to click refresh on the Browser panel when the terminal displays `\u2714 Compiled successfully.`\n",isBinary:!1},Vt["sandbox.config.json"]={content:`${JSON.stringify(mt,null,2)}`,isBinary:!1});const st=(0,ae.Z)({files:Vt}),He=this.document.createElement("form"),et=this.document.createElement("input");He.method="POST",He.action="https://codesandbox.io/api/v1/sandboxes/define",He.target="_blank",et.name="parameters",et.value=st,He.appendChild(et),this.document.body.append(He),He.submit(),this.document.body.removeChild(He)}static#e=this.\u0275fac=function(Lt){return new(Lt||Ne)(B.LFG(Ee.z),B.LFG(e.K0))};static#t=this.\u0275prov=B.Yz7({token:Ne,factory:Ne.\u0275fac,providedIn:"root"})}return Ne})()},49548:(nt,I,o)=>{"use strict";o.d(I,{R:()=>p});var e=o(980),g=o(65879);const d=[{types:[{"zh-CN":"\u5165\u95e8","en-US":"Basic"},{"zh-CN":"\u5f00\u53d1","en-US":"Dev"},{"zh-CN":"\u8fdb\u9636","en-US":"Advance"},{"zh-CN":"\u5176\u4ed6","en-US":"Other"}],name:"docs",github:"https://github.com/ng-alain/delon",list:[{name:"acl",i18n:!1,order:50,cols:1,meta:{"zh-CN":{order:50,title:"ACL",type:"Advance",url:"/acl/getting-started"}}},{name:"architecture",i18n:!0,order:20,cols:1,meta:{"en-US":{order:20,title:"Architecture",type:"Basic",i18n:"need-update"},"zh-CN":{order:20,title:"\u4f53\u7cfb\u7ed3\u6784",type:"Basic",i18n:"need-update"}}},{name:"auth",i18n:!1,order:40,cols:1,meta:{"zh-CN":{order:40,title:{"en-US":"Auth","zh-CN":"\u7528\u6237\u8ba4\u8bc1"},type:"Advance",url:"/auth/getting-started"}}},{name:"cache",i18n:!1,order:70,cols:1,meta:{"zh-CN":{order:70,title:{"en-US":"Cache","zh-CN":"\u7f13\u5b58"},type:"Advance",url:"/cache/getting-started"}}},{name:"changelog",i18n:!0,order:100,cols:1,meta:{"en-US":{order:100,title:"Change Log",type:"Other"},"zh-CN":{order:100,title:"\u66f4\u65b0\u65e5\u5fd7",type:"Other"}}},{name:"cli",i18n:!1,order:10,cols:1,meta:{"zh-CN":{order:10,title:{"en-US":"Cli","zh-CN":"\u547d\u4ee4\u884c\u5de5\u5177"},type:"Other",url:"/cli/getting-started"}}},{name:"contributing",i18n:!0,order:40,cols:1,meta:{"en-US":{order:40,title:"Contributing",type:"Other"},"zh-CN":{order:40,title:"\u8d21\u732e\u6307\u5357",type:"Other"}}},{name:"deploy",i18n:!0,order:70,cols:1,meta:{"en-US":{order:70,title:{"en-US":"Build & Deploy","zh-CN":"\u6784\u5efa\u548c\u53d1\u5e03"},type:"Dev"},"zh-CN":{order:70,title:{"en-US":"Build & Deploy","zh-CN":"\u6784\u5efa\u548c\u53d1\u5e03"},type:"Dev"}}},{name:"faq",i18n:!0,order:20,cols:1,meta:{"en-US":{order:20,title:{"en-US":"FAQ","zh-CN":"\u5e38\u89c1\u95ee\u9898"},type:"Other"},"zh-CN":{order:20,title:{"en-US":"FAQ","zh-CN":"\u5e38\u89c1\u95ee\u9898"},type:"Other"}}},{name:"getting-started",i18n:!0,order:10,cols:1,meta:{"en-US":{order:10,title:"Getting Started",type:"Basic",i18n:"need-update"},"zh-CN":{order:10,title:"\u4ecb\u7ecd",type:"Basic",i18n:"need-update"}}},{name:"global-config",i18n:!0,order:90,cols:1,meta:{"en-US":{order:90,title:{"en-US":"Global Configuration","zh-CN":"\u5168\u5c40\u914d\u7f6e\u9879"},type:"Dev"},"zh-CN":{order:90,title:{"en-US":"Global Configuration","zh-CN":"\u5168\u5c40\u914d\u7f6e\u9879"},type:"Dev"}}},{name:"graph",i18n:!1,order:20,cols:1,meta:{"zh-CN":{order:20,title:{"en-US":"Charts","zh-CN":"\u56fe\u8868"},type:"Advance",url:"/chart/getting-started"}}},{name:"how-to-start",i18n:!0,order:-1,cols:1,meta:{"en-US":{order:0,title:"How to start",type:"Dev",i18n:"need-update"},"zh-CN":{order:0,title:"\u5982\u4f55\u5f00\u59cb",type:"Dev",i18n:"need-update"}}},{name:"i18n",i18n:!0,order:30,cols:1,meta:{"en-US":{order:30,title:{"en-US":"I18n","zh-CN":"\u56fd\u9645\u5316"},type:"Advance"},"zh-CN":{order:30,title:{"en-US":"I18n","zh-CN":"\u56fd\u9645\u5316"},type:"Advance"}}},{name:"import",i18n:!0,order:60,cols:1,meta:{"en-US":{order:60,title:"Use a third-party lib",type:"Dev"},"zh-CN":{order:60,title:"\u4f7f\u7528\u7b2c\u4e09\u65b9\u7c7b\u5e93",type:"Dev"}}},{name:"mock",i18n:!1,order:60,cols:1,meta:{"zh-CN":{order:60,title:"Mock",type:"Advance",url:"/mock/getting-started"}}},{name:"module",i18n:!0,order:30,cols:1,meta:{"en-US":{order:30,title:{"en-US":"Module Guidelines","zh-CN":"\u6a21\u5757\u6ce8\u518c\u6307\u5bfc\u539f\u5219"},type:"Other"},"zh-CN":{order:30,title:{"en-US":"Module Guidelines","zh-CN":"\u6a21\u5757\u6ce8\u518c\u6307\u5bfc\u539f\u5219"},type:"Other"}}},{name:"new-component",i18n:!0,order:20,cols:1,meta:{"en-US":{order:20,title:{"en-US":"New Component","zh-CN":"\u65b0\u589e\u4e1a\u52a1\u7ec4\u4ef6"},type:"Dev"},"zh-CN":{order:20,title:{"en-US":"New Component","zh-CN":"\u65b0\u589e\u4e1a\u52a1\u7ec4\u4ef6"},type:"Dev"}}},{name:"new-page",i18n:!0,order:10,cols:1,meta:{"en-US":{order:10,title:{"en-US":"New Page","zh-CN":"\u65b0\u589e\u9875\u9762"},type:"Dev"},"zh-CN":{order:10,title:{"en-US":"New Page","zh-CN":"\u65b0\u589e\u9875\u9762"},type:"Dev"}}},{name:"performance",i18n:!0,order:80,cols:1,meta:{"en-US":{order:80,title:{"en-US":"Performance","zh-CN":"\u4f18\u5316"},type:"Advance"},"zh-CN":{order:80,title:{"en-US":"Performance","zh-CN":"\u4f18\u5316"},type:"Advance"}}},{name:"server",i18n:!0,order:40,cols:1,meta:{"en-US":{order:40,title:"Work with Server",type:"Dev"},"zh-CN":{order:40,title:"\u548c\u670d\u52a1\u7aef\u8fdb\u884c\u4ea4\u4e92",type:"Dev"}}},{name:"ssr",i18n:!1,order:110,cols:1,meta:{"zh-CN":{order:110,title:"\u670d\u52a1\u7aef\u6e32\u67d3\uff08SSR\uff09",type:"Dev"}}},{name:"style-guide",i18n:!0,order:90,cols:1,meta:{"en-US":{order:90,title:{"en-US":"Style Guide","zh-CN":"\u7f16\u7801\u89c4\u8303\u5efa\u8bae"},type:"Advance"},"zh-CN":{order:90,title:{"en-US":"Style Guide","zh-CN":"\u7f16\u7801\u89c4\u8303\u5efa\u8bae"},type:"Advance"}}},{name:"theme",i18n:!1,order:10,cols:1,meta:{"zh-CN":{order:10,title:{"en-US":"Theme","zh-CN":"\u4e3b\u9898\u7cfb\u7edf"},type:"Advance",url:"/theme/getting-started"}}},{name:"upgrade-v16",i18n:!0,order:1e3,cols:1,meta:{"en-US":{order:1e3,type:"Basic",title:"Upgrade to version 16.0",hot:!0},"zh-CN":{order:1e3,type:"Basic",title:"\u5347\u7ea7\u5230 16.0 \u7248\u672c",hot:!0}}},{name:"upgrade",i18n:!0,order:80,cols:1,meta:{"en-US":{order:80,title:{"en-US":"Upgrade scaffold","zh-CN":"\u5347\u7ea7\u811a\u624b\u67b6"},type:"Dev"},"zh-CN":{order:80,title:{"en-US":"Upgrade scaffold","zh-CN":"\u5347\u7ea7\u811a\u624b\u67b6"},type:"Dev"}}}]},{types:[{"zh-CN":"CURD","en-US":"CURD"},{"zh-CN":"\u57fa\u7840","en-US":"Basic"},{"zh-CN":"\u8868\u5355","en-US":"Form"},{"zh-CN":"\u5e03\u5c40","en-US":"Layout"},{"zh-CN":"\u4e1a\u52a1","en-US":"Business"},{"zh-CN":"\u5176\u5b83","en-US":"Other"}],name:"components",github:"https://github.com/ng-alain/delon",module:"@delon/abc",list:[{name:"form",route:"/form/getting-started",order:10,i18n:!0,lib:!0,meta:{"zh-CN":{type:"CURD",title:"sf",subtitle:"\u52a8\u6001\u8868\u5355"},"en-US":{type:"CURD",title:"sf",subtitle:"Dynamic Form"}}},{name:"chart",route:"/chart/getting-started",order:100,i18n:!0,lib:!0,meta:{"zh-CN":{type:"Basic",title:"\u56fe\u8868",subtitle:"G2"},"en-US":{type:"Basic",title:"Chart",subtitle:"G2"}}},{name:"auth",route:"/auth/getting-started",order:100,i18n:!0,lib:!0,meta:{"zh-CN":{type:"Business",title:"\u7528\u6237\u8ba4\u8bc1"},"en-US":{type:"Business",title:"Authentication"}}},{name:"acl",route:"/acl/getting-started",order:110,i18n:!0,lib:!0,meta:{"zh-CN":{type:"Business",title:"\u8bbf\u95ee\u63a7\u5236\u5217\u8868"},"en-US":{type:"Business",title:"Access Control List"}}},{name:"cache",route:"/cache/getting-started",order:120,i18n:!0,lib:!0,meta:{"zh-CN":{type:"Business",title:"\u7f13\u5b58"},"en-US":{type:"Business",title:"Cache"}}},{name:"mock",route:"/mock/getting-started",order:130,i18n:!0,lib:!0,meta:{"zh-CN":{type:"Business",title:"Mock\u6a21\u62df\u6570\u636e"},"en-US":{type:"Business",title:"Mock"}}},{name:"util",route:"/util/getting-started",order:120,i18n:!0,lib:!0,meta:{"zh-CN":{type:"Basic",title:"\u5de5\u5177\u96c6"},"en-US":{type:"Basic",title:"Utils"}}},{name:"theme",route:"/theme/getting-started",order:110,i18n:!0,lib:!0,meta:{"zh-CN":{type:"Basic",title:"\u4e3b\u9898\u7cfb\u7edf"},"en-US":{type:"Basic",title:"Theme System"}}},{name:"auto-focus",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Other",title:"auto-focus",subtitle:"Auto focus",cols:1,module:"import { AutoFocusModule } from '@delon/abc/auto-focus';"},"zh-CN":{type:"Other",title:"auto-focus",subtitle:"\u81ea\u52a8\u83b7\u5f97\u7126\u70b9",cols:1,module:"import { AutoFocusModule } from '@delon/abc/auto-focus';"}}},{name:"avatar-list",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Basic",title:"avatar-list",subtitle:"AvatarList",cols:1,module:"import { AvatarListModule } from '@delon/abc/avatar-list';"},"zh-CN":{type:"Basic",title:"avatar-list",subtitle:"\u7528\u6237\u5934\u50cf\u5217\u8868",cols:1,module:"import { AvatarListModule } from '@delon/abc/avatar-list';"}}},{name:"cell",i18n:!0,order:4,cols:1,meta:{"en-US":{type:"CURD",title:"cell",subtitle:"Cell Data",cols:1,order:4,module:"import { CellModule } from '@delon/abc/cell';"},"zh-CN":{type:"CURD",title:"cell",subtitle:"\u5355\u5143\u683c\u6570\u636e",cols:1,order:4,module:"import { CellModule } from '@delon/abc/cell';"}}},{name:"count-down",i18n:!0,order:-1,cols:3,meta:{"en-US":{type:"Basic",title:"count-down",subtitle:"Count down",cols:3,module:"import { CountDownModule } from '@delon/abc/count-down';"},"zh-CN":{type:"Basic",title:"count-down",subtitle:"\u5012\u8ba1\u65f6",cols:3,module:"import { CountDownModule } from '@delon/abc/count-down';"}}},{name:"date-picker",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Form",title:"range-picker",subtitle:"Data Range",cols:1,module:"import { DatePickerModule } from '@delon/abc/date-picker';"},"zh-CN":{type:"Form",title:"range-picker",subtitle:"\u65e5\u671f\u8303\u56f4",cols:1,module:"import { DatePickerModule } from '@delon/abc/date-picker';"}}},{name:"down-file",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Basic",title:"down-file",subtitle:"Download file",cols:1,module:"import { DownFileModule } from '@delon/abc/down-file';"},"zh-CN":{type:"Basic",title:"down-file",subtitle:"\u4e0b\u8f7d\u6587\u4ef6",cols:1,module:"import { DownFileModule } from '@delon/abc/down-file';"}}},{name:"ellipsis",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Layout",title:"ellipsis",subtitle:"Ellipsis",cols:1,module:"import { EllipsisModule } from '@delon/abc/ellipsis';"},"zh-CN":{type:"Layout",title:"ellipsis",subtitle:"\u6587\u672c\u81ea\u52a8\u7701\u7565\u53f7",cols:1,module:"import { EllipsisModule } from '@delon/abc/ellipsis';"}}},{name:"error-collect",i18n:!0,order:-1,cols:2,meta:{"en-US":{type:"Form",title:"error-collect",subtitle:"Error Collect",cols:2,module:"import { ErrorCollectModule } from '@delon/abc/error-collect';"},"zh-CN":{type:"Form",title:"error-collect",subtitle:"\u8868\u5355\u5f02\u5e38\u6d88\u606f\u91c7\u96c6\u5668",cols:2,module:"import { ErrorCollectModule } from '@delon/abc/error-collect';"}}},{name:"exception",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Layout",title:"exception",subtitle:"Exception",cols:1,module:"import { ExceptionModule } from '@delon/abc/exception';"},"zh-CN":{type:"Layout",title:"exception",subtitle:"\u5f02\u5e38",cols:1,module:"import { ExceptionModule } from '@delon/abc/exception';"}}},{name:"footer-toolbar",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Layout",title:"footer-toolbar",subtitle:"FooterToolbar",cols:1,module:"import { FooterToolbarModule } from '@delon/abc/footer-toolbar';"},"zh-CN":{type:"Layout",title:"footer-toolbar",subtitle:"\u5e95\u90e8\u5de5\u5177\u680f",cols:1,module:"import { FooterToolbarModule } from '@delon/abc/footer-toolbar';"}}},{name:"full-content",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Layout",title:"full-content",subtitle:"Full Screen Workspace",cols:1,module:"import { FullContentModule } from '@delon/abc/full-content';"},"zh-CN":{type:"Layout",title:"full-content",subtitle:"\u5168\u5c4f\u5de5\u4f5c\u533a",cols:1,module:"import { FullContentModule } from '@delon/abc/full-content';"}}},{name:"global-footer",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Layout",title:"global-footer",subtitle:"Global footer",cols:1,module:"import { GlobalFooterModule } from '@delon/abc/global-footer';"},"zh-CN":{type:"Layout",title:"global-footer",subtitle:"\u5168\u5c40\u9875\u811a",cols:1,module:"import { GlobalFooterModule } from '@delon/abc/global-footer';"}}},{name:"highlight",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Other",title:"highlight",subtitle:"Highlight",cols:1,module:"import { NzHighlightModule } from 'ng-zorro-antd/core/highlight';"},"zh-CN":{type:"Other",title:"highlight",subtitle:"\u9ad8\u4eae",cols:1,module:"import { NzHighlightModule } from 'ng-zorro-antd/core/highlight';"}}},{name:"hotkey",i18n:!0,order:1,cols:2,meta:{"en-US":{type:"Basic",order:1,title:"hotkey",subtitle:"Hotkey",cols:2,module:"import { HotkeyModule } from '@delon/abc/hotkey';"},"zh-CN":{type:"Basic",order:1,title:"hotkey",subtitle:"\u70ed\u952e",cols:2,module:"import { HotkeyModule } from '@delon/abc/hotkey';"}}},{name:"let",i18n:!0,order:1,cols:1,meta:{"en-US":{type:"Basic",order:1,title:"let",subtitle:"Let",cols:1,module:"import { LetModule } from '@delon/abc/let';"},"zh-CN":{type:"Basic",order:1,title:"let",subtitle:"\u5b9a\u4e49",cols:1,module:"import { LetModule } from '@delon/abc/let';"}}},{name:"loading",i18n:!0,order:2,cols:2,meta:{"en-US":{type:"Basic",order:2,title:"loading",subtitle:"Loading indicator",cols:2,module:"import { LoadingModule } from '@delon/abc/loading';"},"zh-CN":{type:"Basic",order:2,title:"loading",subtitle:"\u52a0\u8f7d\u6307\u793a\u7b26",cols:2,module:"import { LoadingModule } from '@delon/abc/loading';"}}},{name:"lodop",i18n:!0,order:4,cols:1,meta:{"en-US":{type:"Basic",order:4,title:"lodop",subtitle:"Lodop Print",cols:1,module:"import { LodopModule } from '@delon/abc/lodop';"},"zh-CN":{type:"Basic",order:4,title:"lodop",subtitle:"Lodop\u6253\u5370",cols:1,module:"import { LodopModule } from '@delon/abc/lodop';"}}},{name:"media",i18n:!0,order:1,cols:2,meta:{"en-US":{type:"Basic",order:1,title:"media",subtitle:"HTML5 Media",cols:2,module:"import { MediaModule } from '@delon/abc/media';"},"zh-CN":{type:"Basic",order:1,title:"media",subtitle:"HTML5\u5a92\u4f53",cols:2,module:"import { MediaModule } from '@delon/abc/media';"}}},{name:"notice-icon",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Business",title:"notice-icon",subtitle:"Notification menu",cols:1,module:"import { NoticeIconModule } from '@delon/abc/notice-icon';"},"zh-CN":{type:"Business",title:"notice-icon",subtitle:"\u901a\u77e5\u83dc\u5355",cols:1,module:"import { NoticeIconModule } from '@delon/abc/notice-icon';"}}},{name:"observers",i18n:!0,order:7,cols:1,meta:{"en-US":{type:"Basic",title:"Observers",order:7,module:"import { ObserversModule } from '@delon/abc/observers';"},"zh-CN":{type:"Basic",title:"Observers",subtitle:"\u89c2\u5bdf\u8005",order:7,module:"import { ObserversModule } from '@delon/abc/observers';"}}},{name:"onboarding",i18n:!0,order:7,cols:1,meta:{"en-US":{type:"Basic",title:"onboarding",subtitle:"Onboarding",order:7,module:"import { OnboardingModule } from '@delon/abc/onboarding';"},"zh-CN":{type:"Basic",title:"onboarding",subtitle:"\u7528\u6237\u5f15\u5bfc\u6d41\u7a0b",order:7,module:"import { OnboardingModule } from '@delon/abc/onboarding';"}}},{name:"page-header",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Layout",title:"page-header",subtitle:"Page Header",cols:1,module:"import { PageHeaderModule } from '@delon/abc/page-header';"},"zh-CN":{type:"Layout",title:"page-header",subtitle:"\u9875\u5934",cols:1,module:"import { PageHeaderModule } from '@delon/abc/page-header';"}}},{name:"pdf",i18n:!0,order:3,cols:1,meta:{"en-US":{type:"Basic",order:3,title:"pdf",subtitle:"Pdf",cols:1,module:"import { PdfModule } from '@delon/abc/pdf';"},"zh-CN":{type:"Basic",order:3,title:"pdf",subtitle:"Pdf",cols:1,module:"import { PdfModule } from '@delon/abc/pdf';"}}},{name:"qr",i18n:!0,order:3,cols:1,meta:{"en-US":{type:"Basic",order:3,title:"qr",subtitle:"QR",cols:1,module:"import { QRModule } from '@delon/abc/qr';",deprecated:"18.0.0"},"zh-CN":{type:"Basic",order:3,title:"qr",subtitle:"\u4e8c\u7ef4\u7801",cols:1,module:"import { QRModule } from '@delon/abc/qr';",deprecated:"18.0.0"}}},{name:"quick-menu",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Business",title:"quick-menu",subtitle:"Quick Menu",cols:1,module:"import { QuickMenuModule } from '@delon/abc/quick-menu';"},"zh-CN":{type:"Business",title:"quick-menu",subtitle:"\u5feb\u901f\u83dc\u5355",cols:1,module:"import { QuickMenuModule } from '@delon/abc/quick-menu';"}}},{name:"result",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Layout",title:"result",subtitle:"Result",cols:1,module:"import { ResultModule } from '@delon/abc/result';"},"zh-CN":{type:"Layout",title:"result",subtitle:"\u5904\u7406\u7ed3\u679c",cols:1,module:"import { ResultModule } from '@delon/abc/result';"}}},{name:"reuse-tab",i18n:!0,order:1,cols:1,meta:{"en-US":{type:"Basic",order:1,title:"reuse-tab",subtitle:"Reuse Route Tab",cols:1,module:"import { ReuseTabModule } from '@delon/abc/reuse-tab';"},"zh-CN":{type:"Basic",order:1,title:"reuse-tab",subtitle:"\u8def\u7531\u590d\u7528\u6807\u7b7e",cols:1,module:"import { ReuseTabModule } from '@delon/abc/reuse-tab';"}}},{name:"se",i18n:!0,order:3,cols:1,meta:{"en-US":{type:"CURD",title:"se",subtitle:"Edit",cols:1,order:3,module:"import { SEModule } from '@delon/abc/se';"},"zh-CN":{type:"CURD",title:"se",subtitle:"\u7f16\u8f91",cols:1,order:3,module:"import { SEModule } from '@delon/abc/se';"}}},{name:"sg",i18n:!0,order:1,cols:1,meta:{"en-US":{type:"Layout",order:1,title:"sg",subtitle:"Simple Grid",cols:1,module:"import { SGModule } from '@delon/abc/sg';"},"zh-CN":{type:"Layout",order:1,title:"sg",subtitle:"\u7b80\u6613\u6805\u683c",cols:1,module:"import { SGModule } from '@delon/abc/sg';"}}},{name:"st",i18n:!0,order:1,cols:1,meta:{"en-US":{type:"CURD",title:"st",subtitle:"Table",cols:1,order:1,module:"import { STModule } from '@delon/abc/st';"},"zh-CN":{type:"CURD",title:"st",subtitle:"\u8868\u683c",cols:1,order:1,module:"import { STModule } from '@delon/abc/st';"}}},{name:"sv",i18n:!0,order:2,cols:1,meta:{"en-US":{type:"CURD",title:"sv",subtitle:"View",cols:1,order:2,module:"import { SVModule } from '@delon/abc/sv';"},"zh-CN":{type:"CURD",title:"sv",subtitle:"\u67e5\u770b",cols:1,order:2,module:"import { SVModule } from '@delon/abc/sv';"}}},{name:"tag-select",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Layout",title:"tag-select",subtitle:"Tag Select",cols:1,module:"import { TagSelectModule } from '@delon/abc/tag-select';"},"zh-CN":{type:"Layout",title:"tag-select",subtitle:"\u6807\u7b7e\u9009\u62e9\u5668",cols:1,module:"import { TagSelectModule } from '@delon/abc/tag-select';"}}},{name:"xlsx",i18n:!0,order:6,cols:1,meta:{"en-US":{type:"Basic",title:"xlsx",order:6,subtitle:"Excel",cols:1,module:"import { XlsxModule } from '@delon/abc/xlsx';"},"zh-CN":{type:"Basic",title:"xlsx",order:6,subtitle:"Excel \u64cd\u4f5c",cols:1,module:"import { XlsxModule } from '@delon/abc/xlsx';"}}},{name:"zip",i18n:!0,order:7,cols:1,meta:{"en-US":{type:"Basic",title:"zip",order:7,subtitle:"Zip",cols:1,module:"import { ZipModule } from '@delon/abc/zip';"},"zh-CN":{type:"Basic",title:"zip",order:7,subtitle:"Zip \u64cd\u4f5c",cols:1,module:"import { ZipModule } from '@delon/abc/zip';"}}}]},{types:[{"zh-CN":"\u6587\u6863","en-US":"Documents"}],name:"auth",github:"https://github.com/ng-alain/delon",module:"@delon/auth",list:[{name:"get",i18n:!0,order:10,cols:1,meta:{"en-US":{order:10,title:{"en-US":"Get Token","zh-CN":"\u83b7\u53d6Token"},type:"Documents"},"zh-CN":{order:10,title:{"en-US":"Get Token","zh-CN":"\u83b7\u53d6Token"},type:"Documents"}}},{name:"getting-started",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"Getting Started",type:"Documents"},"zh-CN":{order:1,title:"\u5f00\u59cb\u4f7f\u7528",type:"Documents"}}},{name:"guard",i18n:!0,order:25,cols:1,meta:{"en-US":{order:25,title:{"en-US":"Routing guard","zh-CN":"\u8def\u7531\u5b88\u536b"},type:"Documents"},"zh-CN":{order:25,title:"\u8def\u7531\u5b88\u536b",type:"Documents"}}},{name:"qa",i18n:!0,order:10,cols:1,meta:{"en-US":{order:10,title:"QA",type:"Documents"},"zh-CN":{order:10,title:"\u5e38\u89c1\u95ee\u9898",type:"Documents"}}},{name:"send",i18n:!0,order:20,cols:1,meta:{"en-US":{order:20,title:{"zh-CN":"\u53d1\u9001Token","en-US":"Send Token"},type:"Documents"},"zh-CN":{order:20,title:"\u53d1\u9001Token",type:"Documents"}}},{name:"service",i18n:!0,order:2,cols:1,meta:{"en-US":{order:2,title:"TokenService",type:"Documents"},"zh-CN":{order:2,title:"TokenService",type:"Documents"}}},{name:"set",i18n:!0,order:15,cols:1,meta:{"en-US":{order:15,title:{"zh-CN":"\u5b58\u50a8Token","en-US":"Store Token"},type:"Documents"},"zh-CN":{order:15,title:"\u5b58\u50a8Token",type:"Documents"}}}]},{types:[{"zh-CN":"\u6587\u6863","en-US":"Documents"}],name:"acl",github:"https://github.com/ng-alain/delon",module:"@delon/acl",list:[{name:"control",i18n:!0,order:3,cols:1,meta:{"en-US":{order:3,title:"Granular permissions",type:"Documents"},"zh-CN":{order:3,title:"\u7c92\u5ea6\u63a7\u5236",type:"Documents"}}},{name:"getting-started",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"Getting Started",type:"Documents"},"zh-CN":{order:1,title:"\u5f00\u59cb\u4f7f\u7528",type:"Documents"}}},{name:"guard",i18n:!0,order:3,cols:1,meta:{"en-US":{order:3,title:"Guard",type:"Documents"},"zh-CN":{order:3,title:"\u8def\u7531\u5b88\u536b",type:"Documents"}}}]},{types:[{"zh-CN":"\u6587\u6863","en-US":"Documents"}],name:"cache",github:"https://github.com/ng-alain/delon",module:"@delon/cache",list:[{name:"getting-started",i18n:!1,order:1,cols:1,meta:{"zh-CN":{order:1,title:"\u5f00\u59cb\u4f7f\u7528",type:"Documents"}}},{name:"service",i18n:!1,order:2,cols:1,meta:{"zh-CN":{order:2,title:"CacheService",type:"Documents"}}}]},{types:[{"zh-CN":"\u6587\u6863","en-US":"Documents"},{"zh-CN":"G2","en-US":"G2"},{"zh-CN":"ECharts","en-US":"ECharts"}],name:"chart",github:"https://github.com/ng-alain/delon",module:"@delon/chart",list:[{name:"faq",i18n:!0,order:100,cols:1,meta:{"en-US":{order:100,title:"FAQ",type:"Documents"},"zh-CN":{order:100,title:"\u5e38\u89c1\u95ee\u9898",type:"Documents"}}},{name:"getting-started",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"Getting Started",type:"Documents"},"zh-CN":{order:1,title:"\u5f00\u59cb\u4f7f\u7528",type:"Documents"}}},{name:"bar",i18n:!1,order:-1,cols:1,meta:{"zh-CN":{title:"g2-bar",subtitle:"\u67f1\u72b6\u56fe",cols:1,type:"G2",module:"import { G2BarModule } from '@delon/chart/bar';"}}},{name:"card",i18n:!1,order:-1,cols:2,meta:{"zh-CN":{title:"g2-card",subtitle:"\u56fe\u8868\u5361\u7247",cols:2,type:"G2",module:"import { G2CardModule } from '@delon/chart/card';"}}},{name:"chart-echarts",i18n:!1,order:-1,cols:1,meta:{"zh-CN":{title:"chart-echarts",subtitle:"ECharts",cols:1,type:"ECharts",module:"import { ChartEChartsModule } from '@delon/chart/chart-echarts';"}}},{name:"custom",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"g2-chart",subtitle:"Custom Chart",cols:1,type:"G2",module:"import { G2CustomModule } from '@delon/chart/custom';"},"zh-CN":{title:"g2-chart",subtitle:"\u81ea\u5b9a\u4e49\u56fe\u8868",cols:1,type:"G2",module:"import { G2CustomModule } from '@delon/chart/custom';"}}},{name:"gauge",i18n:!1,order:-1,cols:1,meta:{"zh-CN":{title:"g2-gauge",subtitle:"\u4eea\u8868\u76d8",cols:1,type:"G2",module:"import { G2GaugeModule } from '@delon/chart/gauge';"}}},{name:"mini-area",i18n:!1,order:-1,cols:2,meta:{"zh-CN":{title:"g2-mini-area",subtitle:"\u8ff7\u4f60\u533a\u57df\u56fe",cols:2,type:"G2",module:"import { G2MiniAreaModule } from '@delon/chart/mini-area';"}}},{name:"mini-bar",i18n:!1,order:-1,cols:2,meta:{"zh-CN":{title:"g2-mini-bar",subtitle:"\u8ff7\u4f60\u67f1\u72b6\u56fe",cols:2,type:"G2",module:"import { G2MiniBarModule } from '@delon/chart/mini-bar';"}}},{name:"mini-progress",i18n:!1,order:-1,cols:1,meta:{"zh-CN":{title:"g2-mini-progress",subtitle:"\u8ff7\u4f60\u8fdb\u5ea6\u6761",cols:1,type:"G2",module:"import { G2MiniProgressModule } from '@delon/chart/mini-progress';"}}},{name:"number-info",i18n:!0,order:-1,cols:2,meta:{"en-US":{type:"G2",title:"number-info",subtitle:"NumberInfo",cols:2,module:"import { NumberInfoModule } from '@delon/chart/number-info';"},"zh-CN":{type:"G2",title:"number-info",subtitle:"\u6570\u636e\u6587\u672c",cols:2,module:"import { NumberInfoModule } from '@delon/chart/number-info';"}}},{name:"pie",i18n:!1,order:-1,cols:1,meta:{"zh-CN":{title:"g2-pie",subtitle:"\u997c\u72b6\u56fe",cols:1,type:"G2",module:"import { G2PieModule } from '@delon/chart/pie';"}}},{name:"radar",i18n:!1,order:-1,cols:1,meta:{"zh-CN":{title:"g2-radar",subtitle:"\u96f7\u8fbe\u56fe",cols:1,type:"G2",module:"import { G2RadarModule } from '@delon/chart/radar';"}}},{name:"single-bar",i18n:!1,order:-1,cols:1,meta:{"zh-CN":{title:"g2-single-bar",subtitle:"\u5355\u4e00\u67f1\u72b6\u56fe",cols:1,type:"G2",module:"import { G2SingleBarModule } from '@delon/chart/single-bar';"}}},{name:"tag-cloud",i18n:!1,order:-1,cols:1,meta:{"zh-CN":{title:"g2-tag-cloud",subtitle:"\u6807\u7b7e\u4e91",cols:1,type:"G2",module:"import { G2TagCloudModule } from '@delon/chart/tag-cloud';"}}},{name:"timeline",i18n:!1,order:-1,cols:1,meta:{"zh-CN":{title:"g2-timeline",subtitle:"\u6298\u7ebf\u56fe",cols:1,type:"G2",module:"import { G2TimelineModule } from '@delon/chart/timeline';"}}},{name:"trend",i18n:!1,order:-1,cols:1,meta:{"zh-CN":{type:"G2",title:"trend",subtitle:"\u8d8b\u52bf\u6807\u8bb0",cols:1,module:"import { TrendModule } from '@delon/chart/trend';"}}},{name:"water-wave",i18n:!1,order:-1,cols:1,meta:{"zh-CN":{title:"g2-water-wave",subtitle:"\u6c34\u6ce2\u56fe",cols:1,type:"G2",module:"import { G2WaterWaveModule } from '@delon/chart/water-wave';"}}}]},{types:[{"zh-CN":"\u6587\u6863","en-US":"Documents"}],name:"mock",github:"https://github.com/ng-alain/delon",module:"@delon/mock",list:[{name:"getting-started",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"Getting Started",type:"Documents"},"zh-CN":{order:1,title:"\u5f00\u59cb\u4f7f\u7528",type:"Documents"}}},{name:"rule",i18n:!0,order:2,cols:1,meta:{"en-US":{order:2,title:"Rule Data",type:"Documents"},"zh-CN":{order:2,title:"\u89c4\u5219\u6570\u636e",type:"Documents"}}}]},{types:[{"zh-CN":"\u6587\u6863","en-US":"Documents"},{"zh-CN":"\u5de5\u5177\u7c7b","en-US":"Tools"},{"zh-CN":"\u7ba1\u9053","en-US":"Pipes"}],name:"util",github:"https://github.com/ng-alain/delon",module:"@delon/util",list:[{name:"getting-started",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"Getting Started",type:"Documents"},"zh-CN":{order:1,title:"\u5f00\u59cb\u4f7f\u7528",type:"Documents"}}},{name:"array",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"array",subtitle:"Array&Tree,flat,groupBy,uniq",type:"Tools"},"zh-CN":{title:"array",subtitle:"\u6570\u7ec4,\u6811,\u6241\u5e73,\u5206\u7ec4,\u53bb\u91cd",type:"Tools"}}},{name:"browser",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"browser",subtitle:"Cookie, Copy, DOM etc",type:"Tools"},"zh-CN":{title:"browser",subtitle:"Cookie\u3001Copy\u3001DOM \u7b49",type:"Tools"}}},{name:"date-time",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"date-time",subtitle:"Date Time Conversion",type:"Tools"},"zh-CN":{title:"date-time",subtitle:"\u65e5\u671f\u65f6\u95f4\u8f6c\u6362",type:"Tools"}}},{name:"decorator",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"decorator",subtitle:"Decorator",type:"Tools"},"zh-CN":{title:"decorator",subtitle:"\u88c5\u9970\u5668",type:"Tools"}}},{name:"form",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"form",subtitle:"Reactive Forms",type:"Tools"},"zh-CN":{title:"form",subtitle:"\u54cd\u5e94\u5f0f\u8868\u5355\u6821\u9a8c",type:"Tools"}}},{name:"format",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"format",subtitle:"String,Check,Currency,Mask",type:"Tools"},"zh-CN":{title:"format",subtitle:"\u5b57\u7b26,\u6821\u9a8c,\u8d27\u5e01,\u63a9\u7801",type:"Tools"}}},{name:"math",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"math",subtitle:"Math, Rounding",type:"Tools"},"zh-CN":{title:"math",subtitle:"\u8303\u56f4\u3001\u56db\u820d\u4e94\u5165",type:"Tools"}}},{name:"other",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"other",subtitle:"Deep get,copy,merge,lazy,assert",type:"Tools"},"zh-CN":{title:"other",subtitle:"\u6df1\u83b7\u53d6\u3001\u62f7\u8d1d\u3001\u5408\u5e76\u3001\u5ef6\u8fdf\u3001\u65ad\u8a00",type:"Tools"}}},{name:"pipes-currency",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"currency",subtitle:"Currency Pipes",type:"Pipes",module:"import { CurrencyPipeModule } from '@delon/util/pipes/currency';"},"zh-CN":{title:"currency",subtitle:"\u8d27\u5e01\u7ba1\u9053",type:"Pipes",module:"import { CurrencyPipeModule } from '@delon/util/pipes/currency';"}}},{name:"pipes-filter",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"filter",subtitle:"Filter",type:"Pipes",module:"import { FilterPipeModule } from '@delon/util/pipes/filter';"},"zh-CN":{title:"filter",subtitle:"\u8fc7\u6ee4\u6570\u7ec4",type:"Pipes",module:"import { FilterPipeModule } from '@delon/util/pipes/filter';"}}},{name:"pipes-format",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"format",subtitle:"Mask",type:"Pipes",module:"import { FormatPipeModule } from '@delon/util/pipes/format';"},"zh-CN":{title:"format",subtitle:"\u63a9\u7801",type:"Pipes",module:"import { FormatPipeModule } from '@delon/util/pipes/format';"}}},{name:"token",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"token",subtitle:"Token",type:"Tools"},"zh-CN":{title:"token",subtitle:"Token",type:"Tools"}}}]},{types:[{"zh-CN":"\u6587\u6863","en-US":"Documents"},{"zh-CN":"Examples","en-US":"Examples"},{"zh-CN":"\u5c0f\u90e8\u4ef6","en-US":"Widgets"},{"zh-CN":"\u7b2c\u4e09\u65b9\u5c0f\u90e8\u4ef6","en-US":"Third Widgets"}],name:"form",github:"https://github.com/ng-alain/delon",module:"@delon/form",list:[{name:"validator",route:"/form-pages/validator",i18n:!1,meta:{"zh-CN":{type:"Examples",title:"\u5728\u7ebf\u6821\u9a8c\u5668"}}},{name:"customize",i18n:!0,order:4,cols:1,meta:{"en-US":{order:4,title:"Customize Widgets",type:"Documents"},"zh-CN":{order:4,title:"\u81ea\u5b9a\u4e49\u5c0f\u90e8\u4ef6",type:"Documents"}}},{name:"error",i18n:!0,order:3,cols:1,meta:{"en-US":{order:3,title:"Validation Error",type:"Documents"},"zh-CN":{order:3,title:"\u6821\u9a8c\u9519\u8bef",type:"Documents"}}},{name:"getting-started",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"Getting Started",type:"Documents"},"zh-CN":{order:1,title:"\u5f00\u59cb\u4f7f\u7528",type:"Documents"}}},{name:"layout",i18n:!0,order:5,cols:1,meta:{"en-US":{order:5,title:"Layout",type:"Documents"},"zh-CN":{order:5,title:"\u5982\u4f55\u5e03\u5c40",type:"Documents"}}},{name:"qa",i18n:!0,order:99,cols:1,meta:{"en-US":{order:99,title:"FAQ",type:"Documents"},"zh-CN":{order:99,title:"\u5e38\u89c1\u95ee\u9898",type:"Documents"}}},{name:"schema",i18n:!0,order:2,cols:1,meta:{"en-US":{order:2,title:"Schema",type:"Documents"},"zh-CN":{order:2,title:"Schema",type:"Documents"}}},{name:"acl",i18n:!1,order:-1,cols:1,meta:{"zh-CN":{title:"acl",subtitle:"ACL",type:"Examples"}}},{name:"conditional",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"Conditional expression",type:"Examples"},"zh-CN":{title:"visibleIf",subtitle:"\u6761\u4ef6\u8868\u8fbe\u5f0f",type:"Examples"}}},{name:"i18n",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"i18n",subtitle:"Internationalization",type:"Examples"},"zh-CN":{title:"i18n",subtitle:"\u56fd\u9645\u5316",type:"Examples"}}},{name:"modal",i18n:!1,order:-1,cols:1,meta:{"zh-CN":{title:"modal",subtitle:"\u6a21\u6001\u6846",type:"Examples"}}},{name:"array",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"array",subtitle:"Array",type:"Widgets"},"zh-CN":{title:"array",subtitle:"\u6570\u7ec4",type:"Widgets"}}},{name:"autocomplete",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"autocomplete",subtitle:"Autocomplete",type:"Widgets"},"zh-CN":{title:"autocomplete",subtitle:"\u81ea\u52a8\u5b8c\u6210",type:"Widgets"}}},{name:"boolean",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"boolean",subtitle:"Switch",type:"Widgets"},"zh-CN":{title:"boolean",subtitle:"\u5f00\u5173",type:"Widgets"}}},{name:"cascader",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"cascader",subtitle:"Cascader",type:"Widgets"},"zh-CN":{title:"cascader",subtitle:"\u7ea7\u8054\u9009\u62e9",type:"Widgets"}}},{name:"checkbox",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"checkbox",subtitle:"Checkbox",type:"Widgets"},"zh-CN":{title:"checkbox",subtitle:"\u591a\u9009\u6846",type:"Widgets"}}},{name:"custom",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"custom",subtitle:"Custom",type:"Widgets"},"zh-CN":{title:"custom",subtitle:"\u81ea\u5b9a\u4e49",type:"Widgets"}}},{name:"date",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"date",subtitle:"Date",type:"Widgets"},"zh-CN":{title:"date",subtitle:"\u65e5\u671f",type:"Widgets"}}},{name:"mention",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"mention",subtitle:"Mention",type:"Widgets"},"zh-CN":{title:"mention",subtitle:"\u63d0\u53ca",type:"Widgets"}}},{name:"number",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"number",subtitle:"Input Number",type:"Widgets"},"zh-CN":{title:"number",subtitle:"\u6570\u5b57",type:"Widgets"}}},{name:"object",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"object",subtitle:"Object",type:"Widgets"},"zh-CN":{title:"object",subtitle:"\u5bf9\u8c61",type:"Widgets"}}},{name:"radio",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"radio",subtitle:"Radio",type:"Widgets"},"zh-CN":{title:"radio",subtitle:"\u5355\u9009\u6846",type:"Widgets"}}},{name:"rate",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"rate",subtitle:"Rate",type:"Widgets"},"zh-CN":{title:"rate",subtitle:"\u8bc4\u5206",type:"Widgets"}}},{name:"select",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"select",subtitle:"Select",type:"Widgets"},"zh-CN":{title:"select",subtitle:"\u9009\u62e9\u5668",type:"Widgets"}}},{name:"slider",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"range",subtitle:"Slider",type:"Widgets"},"zh-CN":{title:"range",subtitle:"\u6ed1\u52a8\u8f93\u5165\u6761",type:"Widgets"}}},{name:"string",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"string",subtitle:"Input",type:"Widgets"},"zh-CN":{title:"string",subtitle:"\u6587\u672c\u6846",type:"Widgets"}}},{name:"tag",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"tag",subtitle:"Tag",type:"Widgets"},"zh-CN":{title:"tag",subtitle:"\u6807\u7b7e",type:"Widgets"}}},{name:"text",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"text",subtitle:"Text",type:"Widgets"},"zh-CN":{title:"text",subtitle:"\u6587\u672c",type:"Widgets"}}},{name:"textarea",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"textarea",subtitle:"Textarea",type:"Widgets"},"zh-CN":{title:"textarea",subtitle:"\u591a\u884c\u6587\u672c\u6846",type:"Widgets"}}},{name:"time",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"time",subtitle:"Time",type:"Widgets"},"zh-CN":{title:"time",subtitle:"\u65f6\u95f4",type:"Widgets"}}},{name:"transfer",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"transfer",subtitle:"Transfer",type:"Widgets"},"zh-CN":{title:"transfer",subtitle:"\u7a7f\u68ad\u6846",type:"Widgets"}}},{name:"tree-select",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"tree-select",subtitle:"Tree Select",type:"Widgets"},"zh-CN":{title:"tree-select",subtitle:"\u6811\u9009\u62e9",type:"Widgets"}}},{name:"upload",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"upload",subtitle:"Upload",type:"Widgets"},"zh-CN":{title:"upload",subtitle:"\u4e0a\u4f20",type:"Widgets"}}},{name:"markdown",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"markdown",subtitle:"Markdown Editor",type:"Third Widgets"},"zh-CN":{title:"markdown",subtitle:"Markdown\u7f16\u8f91\u5668",type:"Third Widgets"}}},{name:"tinymce",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"tinymce",subtitle:"Tinymce Rich Text",type:"Third Widgets"},"zh-CN":{title:"tinymce",subtitle:"Tinymce\u5bcc\u6587\u672c",type:"Third Widgets"}}}]},{types:[{"zh-CN":"\u6587\u6863","en-US":"Documents"}],name:"cli",github:"https://github.com/ng-alain/delon",module:"ng-alain",list:[{name:"add",i18n:!0,order:10,cols:1,meta:{"en-US":{order:10,title:"ng add",subtitle:"Create scaffold",type:"Documents"},"zh-CN":{order:10,title:"ng add",subtitle:"\u521b\u5efa\u811a\u624b\u67b6",type:"Documents"}}},{name:"default",i18n:!0,order:90,cols:1,meta:{"en-US":{order:90,title:"Default parameter",type:"Documents"},"zh-CN":{order:90,title:"\u9ed8\u8ba4\u53c2\u6570",type:"Documents"}}},{name:"generate",i18n:!0,order:20,cols:1,meta:{"en-US":{order:20,title:"ng g",subtitle:"Business page",type:"Documents"},"zh-CN":{order:20,title:"ng g",subtitle:"\u4e1a\u52a1\u9875",type:"Documents"}}},{name:"getting-started",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"Getting Started",type:"Documents"},"zh-CN":{order:1,title:"\u5f00\u59cb\u4f7f\u7528",type:"Documents"}}},{name:"plugin",i18n:!0,order:30,cols:1,meta:{"en-US":{order:30,title:"Pluggable plugin",type:"Documents"},"zh-CN":{order:30,title:"\u63d2\u4ef6",type:"Documents"}}},{name:"sta",i18n:!0,order:40,cols:1,meta:{"en-US":{order:40,title:"sta",subtitle:"Swagger API generator",type:"Documents"},"zh-CN":{order:40,title:"sta",subtitle:"Swagger API \u751f\u6210\u5668",type:"Documents"}}}]},{types:[{"zh-CN":"\u6587\u6863","en-US":"Documents"},{"zh-CN":"\u4e3b\u9898","en-US":"Theme"},{"zh-CN":"\u670d\u52a1","en-US":"Service"},{"zh-CN":"\u8def\u7531","en-US":"Router"},{"zh-CN":"\u7ba1\u9053","en-US":"Pipe"}],name:"theme",github:"https://github.com/ng-alain/delon",module:"ng-alain",list:[{name:"component-styles",i18n:!1,order:15,cols:1,meta:{"zh-CN":{type:"Documents",order:15,title:"\u7ec4\u4ef6\u6837\u5f0f"}}},{name:"customize-theme",i18n:!0,order:5,cols:1,meta:{"en-US":{order:5,title:"Customize Theme",type:"Documents"},"zh-CN":{order:5,title:"\u5b9a\u5236\u4e3b\u9898",type:"Documents"}}},{name:"getting-started",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"Getting Started",type:"Documents"},"zh-CN":{order:1,title:"\u5f00\u59cb\u4f7f\u7528",type:"Documents"}}},{name:"global",i18n:!0,order:1,cols:1,meta:{"en-US":{type:"Theme",order:1,title:"Global Parameters"},"zh-CN":{type:"Theme",order:1,title:"\u5168\u5c40\u53c2\u6570"}}},{name:"icon",i18n:!1,order:20,cols:1,meta:{"zh-CN":{type:"Documents",order:20,title:"Icon"}}},{name:"locale",i18n:!0,order:2,cols:1,meta:{"en-US":{order:2,title:"Internationalization",type:"Documents"},"zh-CN":{order:2,title:"\u56fd\u9645\u5316",type:"Documents"}}},{name:"performance",i18n:!0,order:10,cols:1,meta:{"en-US":{type:"Documents",order:10,title:"Performance"},"zh-CN":{type:"Documents",order:10,title:"\u5305\u4f53\u4f18\u5316"}}},{name:"tools",i18n:!0,order:2,cols:1,meta:{"en-US":{type:"Theme",order:2,title:"Style Tools"},"zh-CN":{type:"Theme",order:2,title:"\u6837\u5f0f\u5de5\u5177\u7c7b"}}},{name:"layout-default",i18n:!0,order:100,cols:1,meta:{"en-US":{type:"Theme",order:100,title:"Default Layout"},"zh-CN":{type:"Theme",order:100,title:"\u9ed8\u8ba4\u5e03\u5c40"}}},{name:"layout-blank",i18n:!0,order:110,cols:1,meta:{"en-US":{type:"Theme",order:110,title:"Blank Layout"},"zh-CN":{type:"Theme",order:110,title:"\u7a7a\u767d\u5e03\u5c40"}}},{name:"theme-btn",i18n:!0,order:1001,cols:1,meta:{"en-US":{type:"Theme",title:"theme-btn",subtitle:"Component-Change Style",cols:1,order:1001,module:"import { ThemeBtnModule } from '@delon/theme/theme-btn';"},"zh-CN":{type:"Theme",title:"theme-btn",subtitle:"\u7ec4\u4ef6-\u5207\u6362\u6837\u5f0f",cols:1,order:1001,module:"import { ThemeBtnModule } from '@delon/theme/theme-btn';"}}},{name:"index",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"PreloadOptionalModules",type:"Router"},"zh-CN":{order:1,title:"PreloadOptionalModules",type:"Router"}}},{name:"date",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"_date",subtitle:"Date",type:"Pipe"},"zh-CN":{order:1,title:"_date",subtitle:"\u65e5\u671f",type:"Pipe"}}},{name:"keys",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"keys",subtitle:"Keys",type:"Pipe"},"zh-CN":{order:1,title:"keys",subtitle:"\u53ef\u8fed\u4ee3\u5bf9\u8c61",type:"Pipe"}}},{name:"safe",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"safe",subtitle:"XSS",type:"Pipe"},"zh-CN":{order:1,title:"safe",subtitle:"\u5b89\u5168HTML\u7b49",type:"Pipe"}}},{name:"yn",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"yn",subtitle:"Badge",type:"Pipe"},"zh-CN":{order:1,title:"yn",subtitle:"\u5fbd\u7ae0",type:"Pipe"}}},{name:"drawer",i18n:!0,order:3,cols:1,meta:{"en-US":{order:3,title:"DrawerHelper",subtitle:"Drawer Helper",type:"Service"},"zh-CN":{order:3,title:"DrawerHelper",subtitle:"\u62bd\u5c49\u8f85\u52a9\u7c7b",type:"Service"}}},{name:"http",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"_HttpClient",type:"Service"},"zh-CN":{order:1,title:"_HttpClient",type:"Service"}}},{name:"menu",i18n:!0,order:2,cols:1,meta:{"en-US":{order:2,title:"MenuService",subtitle:"Menu Service",type:"Service"},"zh-CN":{order:2,title:"MenuService",subtitle:"\u83dc\u5355\u670d\u52a1",type:"Service"}}},{name:"modal",i18n:!0,order:3,cols:1,meta:{"en-US":{order:3,title:"ModalHelper",subtitle:"Modal Helper",type:"Service"},"zh-CN":{order:3,title:"ModalHelper",subtitle:"\u5bf9\u8bdd\u6846\u8f85\u52a9\u7c7b",type:"Service"}}},{name:"responsive",i18n:!0,order:5,cols:1,meta:{"en-US":{type:"Service",order:5,title:"ResponsiveService",subtitle:"Responsive Service"},"zh-CN":{type:"Service",order:5,title:"ResponsiveService",subtitle:"\u54cd\u5e94\u5f0f\u670d\u52a1"}}},{name:"rtl",i18n:!0,order:6,cols:1,meta:{"en-US":{type:"Service",order:6,title:"RTLService",subtitle:"RTL Service"},"zh-CN":{type:"Service",order:6,title:"RTLService",subtitle:"RTL\u670d\u52a1"}}},{name:"settings",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"SettingsService",subtitle:"Project configuration",type:"Service"},"zh-CN":{order:1,title:"SettingsService",subtitle:"\u9879\u76ee\u914d\u7f6e\u9879\u670d\u52a1",type:"Service"}}},{name:"title",i18n:!0,order:4,cols:1,meta:{"en-US":{order:4,title:"TitleService",subtitle:"Title Service",type:"Service"},"zh-CN":{order:4,title:"TitleService",subtitle:"\u9875\u9762\u6807\u9898\u670d\u52a1",type:"Service"}}}]}];let p=(()=>{class f{constructor(T){this.i18n=T,this._menus=null,this._isPages=!1;for(const x of d)for(const D of x.list){const _=D.meta[T.defaultLang].title;D._t="string"!=typeof _?Object.values(_).map(P=>P).join("-"):_}}set(T){const x=this.getCatgory(T);if(!x)return!1;const D=this.getPageName(T),_=x.list.find(P=>P.name===D)||null;return!_||(this._data={..._.meta[this.i18n.defaultLang],..._.meta[this.i18n.currentLang],i18n:_.i18n,name:_.name,module_name:x.module||"",github:x.github,list:x.list},"object"==typeof this._data.title&&(this._data.title=this._data.title[this.i18n.currentLang]||this._data.title[this.i18n.defaultLang]),this.refPage(T),!1)}get item(){return this._data||null}get github(){return this._data.github}get data(){return this._data.list}get isPages(){return this._isPages}get menus(){return this._menus}get type(){return this._type}clearMenu(){this._menus=null}getCatgory(T){const x=T.split("?")[0].split("/");if(x.length<=2)return;let D=x[1].toLowerCase().trim(),_=d.find(P=>P.name===D);return~D.indexOf("-")?(D=D.split("-")[0],_=d.find(P=>P.name===D),this._isPages=!!_):this._isPages=!1,_}getPageName(T){return T.split("?")[0].split("/")[2].toLowerCase().trim()}getType(T){return this.getCatgory(T)?T.split("?")[0].split("/")[1].toLowerCase().split("-")[0]:""}refMenu(T){if(!this.menus)return void this.genMenus(T);const x=this.getType(T);x&&this._type!==x&&this.genMenus(T)}genMenus(T){const x=this.getCatgory(T);if(!x)return;const D=x.types.map((_,P)=>({index:P,title:_[this.i18n.currentLang]||_[this.i18n.defaultLang],list:[]}));x.list.forEach(_=>{const P=_.meta[this.i18n.currentLang]||_.meta[this.i18n.defaultLang];let S=x.types.findIndex(R=>R["zh-CN"]===P.type||R["en-US"]===P.type);-1===S&&(S=0);let A=D.find(R=>R.index===S);A||(A={index:S,title:x.types[S][this.i18n.currentLang]||x.types[S][this.i18n.defaultLang],list:[]},D.push(A));const k={url:`${P.url||_.route||`/${x.name}/${_.name}`}/${this.i18n.zone}`,title:this.i18n.get(P.title),subtitle:P.subtitle,order:_.order,hot:"boolean"==typeof P.hot&&P.hot,lib:"boolean"==typeof _.lib&&_.lib,deprecated:P.deprecated};A.list.push(k)}),this._platMenus=[],this._menus=D.filter(_=>Array.isArray(_.list)&&_.list.length>0).map(_=>(_.list.sort(-1===_.list[0].order?(P,S)=>P.title.toLowerCase().localeCompare(S.title.toLowerCase()):(P,S)=>P.order-S.order),this._platMenus=this._platMenus.concat(_.list),_)).filter(_=>_.list.length)}getPathByUrl(T){let x;return T=T.split("=")[0].split("?")[0],(this._menus||[]).forEach(D=>{x||(x=D.list.find(_=>_.url===T))}),x}refPage(T){this.next=null,this.prev=null,this._menus||this.genMenus(T);const x=this._platMenus.findIndex(D=>D.url===T);-1!==x&&(x>0&&(this.prev=this._platMenus[x-1]),x+1<=this._platMenus.length&&(this.next=this._platMenus[x+1]))}search(T,x=5){const D=this.i18n.zone,_=[];for(const P of d){const S=P.name.toLowerCase(),A=P.list.filter(k=>k._t.includes(T)).map(k=>({title:k._t,name:k.name,url:`${k.route||`/${S}/${k.name}`}/${D}`}));null!=A&&A.length&&_.push({title:P.name,type:S,children:A.slice(0,x)})}return _}static#e=this.\u0275fac=function(x){return new(x||f)(g.LFG(e.Oi))};static#t=this.\u0275prov=g.Yz7({token:f,factory:f.\u0275fac,providedIn:"root"})}return f})()},20814:(nt,I,o)=>{"use strict";o.d(I,{W:()=>t});var e=o(65619),n=o(65879);let t=(()=>{class i{constructor(){this.notify$=new e.X(null)}next(C){this.notify$.next(C)}get change(){return this.notify$.asObservable()}static#e=this.\u0275fac=function(E){return new(E||i)};static#t=this.\u0275prov=n.Yz7({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})()},27358:(nt,I,o)=>{"use strict";o.d(I,{e:()=>W});var e=o(65879),n=o(71993),t=o(32181),i=o(980),l=o(24593),C=o(64115),E=o(87691),u=o(3604),z=o(43460),M=o(6593),h=o(96814),v=o(70855),g=o(96109),d=o(90551),p=o(24311),f=o(63123);function y(ze,Y){if(1&ze&&(e.ynx(0),e.TgZ(1,"div",15),e._uU(2),e._UZ(3,"edit-button",16),e.qZA(),e._UZ(4,"div",17),e.BQk()),2&ze){const G=e.oxw();e.xp6(2),e.hij(" ",G.item.title," "),e.xp6(1),e.Q6J("item",G.item),e.xp6(1),e.Q6J("innerHTML",G.item.summary,e.oJD)}}function T(ze,Y){if(1&ze){const G=e.EpF();e.ynx(0),e._uU(1," ( "),e.TgZ(2,"a",18),e.NdJ("click",function(){e.CHM(G);const K=e.oxw(2);return e.KtG(K.openOnlineIDE("CodeSandbox",!0))}),e._uU(3),e.ALo(4,"i18n"),e.qZA(),e._uU(5," ) "),e.BQk()}2&ze&&(e.xp6(3),e.Oqu(e.lcZ(4,1,"app.demo.code-sandbox-cli")))}function x(ze,Y){1&ze&&(e._uU(0),e.ALo(1,"i18n"),e.YNc(2,T,6,3,"ng-container",4)),2&ze&&(e.hij(" ",e.lcZ(1,2,"app.demo.code-sandbox")," "),e.xp6(2),e.Q6J("ngIf",!1))}const D=function(ze){return{background:ze}},_=function(ze){return{"browser-mockup":ze}},P=function(ze){return{"height.px":ze}},S=function(ze){return{"browser-scroll":ze}},A=function(ze,Y){return{"code-expand-icon-hide":ze,"code-expand-icon-show":Y}},k=function(ze,Y){return{"code-expand-icon-show":ze,"code-expand-icon-hide":Y}},R=function(ze){return{"highlight-wrapper-expand":ze}},$=["*"];let W=(()=>{class ze{set item(G){this._orgItem||(this._orgItem=(0,C.p$)(G));const V={meta:G.meta,code:G.code.trim(),title:this.i18n.get(G.meta.title),summary:this.sanitizer.bypassSecurityTrustHtml(this.i18n.get(G.summary)),browser:+G.meta.browser>0?+G.meta.browser:null,bg:G.meta.bg,urls:G.urls};this._item=V}get item(){return this._item}constructor(G,V,K,te,ne,fe){this.appService=G,this.i18n=V,this.msg=K,this.codeSrv=te,this.sanitizer=ne,this.cdr=fe,this.destroy$=(0,e.f3M)(e.ktI),this.copied=!1,this.theme="default",this.type="default",this.expand=!1}ngOnInit(){this.appService.theme$.pipe((0,n.sL)(this.destroy$)).subscribe(G=>{this.theme=G,this.check()}),this.i18n.change.pipe((0,t.h)(()=>!!this._orgItem),(0,n.sL)(this.destroy$)).subscribe(()=>{this.item.title=this.i18n.get(this._orgItem.meta.title),this.item.summary=this.i18n.get(this._orgItem.summary),this.check()})}check(){this.cdr.markForCheck()}handle(){this.expand=!this.expand,this.check()}openOnlineIDE(G="StackBlitz",V=!1){"StackBlitz"===G?this.codeSrv.openOnStackBlitz(this.item.title,this.item.code):this.codeSrv.openOnCodeSandbox(this.item.title,this.item.code,V)}onCopy(G){(0,l.J)(G).then(()=>{this.msg.success(this.i18n.fanyi("app.demo.copied")),this.copied=!0,this.check(),setTimeout(()=>{this.copied=!1,this.check()},1e3)})}static#e=this.\u0275fac=function(V){return new(V||ze)(e.Y36(E.z),e.Y36(i.Oi),e.Y36(z.dD),e.Y36(u.$),e.Y36(M.H7),e.Y36(e.sBO))};static#t=this.\u0275cmp=e.Xpm({type:ze,selectors:[["code-box"]],hostVars:4,hostBindings:function(V,K){2&V&&e.ekj("code-box",!0)("expand",K.expand)},inputs:{item:"item",type:"type",expand:"expand"},ngContentSelectors:$,decls:22,vars:38,consts:[[1,"code-box-demo",3,"ngStyle"],[3,"ngClass","ngStyle"],[3,"ngClass"],[1,"code-box-meta","markdown"],[4,"ngIf"],[1,"code-box-actions"],["nz-tooltip","","nz-icon","","nzType","code-sandbox",1,"code-box-code-icon",3,"nzTooltipTitle","click"],["codeSandboxTpl",""],["nz-tooltip","","nz-icon","","nzType","thunderbolt","nzTheme","fill",1,"code-box-code-icon",3,"nzTooltipTitle","click"],["nz-tooltip","","nz-icon","",1,"code-box-code-icon",3,"nzTooltipTitle","nzType","click"],["nz-tooltip","",1,"code-expand-icon",3,"nzTooltipTitle"],["alt","expand code",3,"src","ngClass","click"],[1,"highlight-wrapper",3,"ngClass"],[1,"highlight"],[1,"hljs","language-ts"],[1,"code-box-title"],[3,"item"],[1,"code-box-description",3,"innerHTML"],[3,"click"]],template:function(V,K){if(1&V&&(e.F$t(),e.TgZ(0,"section",0)(1,"div",1)(2,"div",2),e.Hsn(3),e.qZA()()(),e.TgZ(4,"section",3),e.YNc(5,y,5,3,"ng-container",4),e.TgZ(6,"div",5)(7,"i",6),e.NdJ("click",function(){return K.openOnlineIDE("CodeSandbox",!0)}),e.qZA(),e.YNc(8,x,3,4,"ng-template",null,7,e.W1O),e.TgZ(10,"i",8),e.NdJ("click",function(){return K.openOnlineIDE()}),e.ALo(11,"i18n"),e.qZA(),e.TgZ(12,"i",9),e.NdJ("click",function(){return K.onCopy(K.item.code)}),e.ALo(13,"i18n"),e.qZA(),e.TgZ(14,"i",10)(15,"img",11),e.NdJ("click",function(){return K.handle()}),e.qZA(),e.TgZ(16,"img",11),e.NdJ("click",function(){return K.handle()}),e.qZA()()()(),e.TgZ(17,"section",12)(18,"div",13)(19,"pre",14)(20,"code"),e._uU(21),e.qZA()()()()),2&V){const te=e.MAs(9);e.Q6J("ngStyle",e.VKq(22,D,K.item.bg)),e.xp6(1),e.Q6J("ngClass",e.VKq(24,_,K.item.browser))("ngStyle",e.VKq(26,P,K.item.browser)),e.xp6(1),e.Q6J("ngClass",e.VKq(28,S,K.item.browser)),e.xp6(3),e.Q6J("ngIf","default"===K.type),e.xp6(2),e.Q6J("nzTooltipTitle",te),e.xp6(3),e.Q6J("nzTooltipTitle",e.lcZ(11,18,"app.demo.stackblitz")),e.xp6(2),e.ekj("ant-tooltip-open",K.copied),e.Q6J("nzTooltipTitle",e.lcZ(13,20,"app.demo.copy"))("nzType",K.copied?"check":"snippets"),e.xp6(2),e.Q6J("nzTooltipTitle",K.expand?"Hide Code":"Show Code"),e.xp6(1),e.Q6J("src","dark"===K.theme?"https://gw.alipayobjects.com/zos/antfincdn/btT3qDZn1U/wSAkBuJFbdxsosKKpqyq.svg":"https://gw.alipayobjects.com/zos/rmsportal/wSAkBuJFbdxsosKKpqyq.svg",e.LSH)("ngClass",e.WLB(30,A,K.expand,!K.expand)),e.xp6(1),e.Q6J("src","dark"===K.theme?"https://gw.alipayobjects.com/zos/antfincdn/CjZPwcKUG3/OpROPHYqWmrMDBFMZtKF.svg":"https://gw.alipayobjects.com/zos/rmsportal/OpROPHYqWmrMDBFMZtKF.svg",e.LSH)("ngClass",e.WLB(33,k,K.expand,!K.expand)),e.xp6(1),e.Q6J("ngClass",e.VKq(36,R,K.expand)),e.xp6(4),e.Oqu(K.item.code)}},dependencies:[h.mk,h.O5,h.PC,v.w,g.SY,d.Ls,p.M,f.C],encapsulation:2,changeDetection:0})}return ze})()},93285:(nt,I,o)=>{"use strict";o.d(I,{S:()=>T});var e=o(65879),n=o(71993),t=o(49548),i=o(20814),l=o(96814),C=o(52787),E=o(70855),u=o(10095),z=o(90551),M=o(23771),h=o(68014),v=o(84617);function g(x,D){if(1&x){const _=e.EpF();e.TgZ(0,"div",7)(1,"nz-affix")(2,"div",8),e.NdJ("to",function(){e.CHM(_);const S=e.oxw();return e.KtG(S.to())}),e.qZA()()()}}function d(x,D){if(1&x&&(e.TgZ(0,"a",12),e._UZ(1,"i",13),e.TgZ(2,"span"),e._uU(3),e.qZA(),e.TgZ(4,"span",14),e._uU(5),e.qZA()()),2&x){const _=e.oxw(2);e.s9C("routerLink",_.meta.prev.url),e.xp6(3),e.Oqu(_.meta.prev.title),e.xp6(2),e.Oqu(_.meta.prev.subtitle)}}function p(x,D){if(1&x&&(e.TgZ(0,"a",15)(1,"span"),e._uU(2),e.qZA(),e.TgZ(3,"span",14),e._uU(4),e.qZA(),e._UZ(5,"i",16),e.qZA()),2&x){const _=e.oxw(2);e.s9C("routerLink",_.meta.next.url),e.xp6(2),e.Oqu(_.meta.next.title),e.xp6(2),e.Oqu(_.meta.next.subtitle)}}function f(x,D){if(1&x&&(e.TgZ(0,"div",9),e.YNc(1,d,6,3,"a",10),e.YNc(2,p,6,3,"a",11),e.qZA()),2&x){const _=e.oxw();e.xp6(1),e.Q6J("ngIf",_.meta.prev),e.xp6(1),e.Q6J("ngIf",_.meta.next)}}function y(x,D){if(1&x){const _=e.EpF();e.TgZ(0,"div",17)(1,"div",18)(2,"div",19),e.NdJ("click",function(){e.CHM(_);const S=e.oxw();return e.KtG(S.opened=!S.opened)}),e.qZA(),e.TgZ(3,"div",20)(4,"div",21)(5,"main-menu",22),e.NdJ("to",function(){e.CHM(_);const S=e.oxw();return e.KtG(S.to())}),e.qZA()(),e.TgZ(6,"div",23),e.NdJ("click",function(){e.CHM(_);const S=e.oxw();return e.KtG(S.opened=!S.opened)}),e._UZ(7,"i",24),e.qZA()()()()}if(2&x){const _=e.oxw();e.xp6(1),e.ekj("drawer-open",_.opened)}}let T=(()=>{class x{constructor(_,P,S){this.meta=_,this.mobileSrv=P,this.cdr=S,this.destroy$=(0,e.f3M)(e.ktI),this.opened=!1}ngOnInit(){this.mobileSrv.change.pipe((0,n.sL)(this.destroy$)).subscribe(_=>{this.isMobile=_,this.cdr.detectChanges()})}to(){this.opened=!1}static#e=this.\u0275fac=function(P){return new(P||x)(e.Y36(t.R),e.Y36(i.W),e.Y36(e.sBO))};static#t=this.\u0275cmp=e.Xpm({type:x,selectors:[["app-content"]],hostVars:2,hostBindings:function(P,S){2&P&&e.ekj("main-wrapper",!0)},decls:8,vars:5,consts:[["nz-row",""],["nz-col","","nzXs","24","nzSm","24","nzMd","6","nzLg","6","nzXl","5","nzXXl","4","class","main-menu",4,"ngIf"],["nz-col","","nzXs","24","nzSm","24","nzMd","18","nzLg","18","nzXl","19","nzXXl","20"],[1,"main-container"],["class","prev-next-nav",4,"ngIf"],["small",""],["class","drawer-wrapper",4,"ngIf"],["nz-col","","nzXs","24","nzSm","24","nzMd","6","nzLg","6","nzXl","5","nzXXl","4",1,"main-menu"],["main-menu","",1,"main-menu-inner",3,"to"],[1,"prev-next-nav"],["class","prev-page",3,"routerLink",4,"ngIf"],["class","next-page",3,"routerLink",4,"ngIf"],[1,"prev-page",3,"routerLink"],["nz-icon","","nzType","left",1,"footer-nav-icon-before"],[1,"chinese"],[1,"next-page",3,"routerLink"],["nz-icon","","nzType","right",1,"footer-nav-icon-after"],[1,"drawer-wrapper"],[1,"drawer","drawer-left"],[1,"drawer-mask",3,"click"],[1,"drawer-content-wrapper"],[1,"drawer-content"],[3,"to"],[1,"drawer-button",3,"click"],["nz-icon","","nzType","menu-unfold"]],template:function(P,S){1&P&&(e.TgZ(0,"div",0),e.YNc(1,g,3,0,"div",1),e.TgZ(2,"div",2)(3,"div",3),e._UZ(4,"router-outlet"),e.qZA(),e.YNc(5,f,3,2,"div",4),e._UZ(6,"app-footer",5),e.qZA()(),e.YNc(7,y,8,2,"div",6)),2&P&&(e.xp6(1),e.Q6J("ngIf",!S.isMobile),e.xp6(2),e.ekj("pages-container",S.meta.isPages),e.xp6(2),e.Q6J("ngIf",S.meta.next||S.meta.prev),e.xp6(2),e.Q6J("ngIf",S.isMobile))},dependencies:[l.O5,C.lC,C.rH,E.w,u.t3,u.SK,z.Ls,M.$,h.c,v.C],encapsulation:2,changeDetection:0})}return x})()},24205:(nt,I,o)=>{"use strict";o.d(I,{o:()=>u});var e=o(65879),n=o(43389),t=o(52787),i=o(42840),l=o(70855),C=o(41958),E=o(96814);let u=(()=>{class z{constructor(h){this.ref=h}ok(){this.ref.close("new time: "+ +new Date),this.cancel()}cancel(){this.ref.close()}static#e=this.\u0275fac=function(v){return new(v||z)(e.Y36(n.lB))};static#t=this.\u0275cmp=e.Xpm({type:z,selectors:[["app-demo-dialog-drawer"]],inputs:{record:"record"},decls:11,vars:5,consts:[[2,"height","1000px"],["routerLink","/"],[1,"drawer-footer"],["nz-button","",3,"nzType","click"]],template:function(v,g){1&v&&(e.TgZ(0,"p",0),e._uU(1),e.ALo(2,"json"),e.TgZ(3,"a",1),e._uU(4,"Change Router"),e.qZA()(),e._uU(5," The end! "),e.TgZ(6,"div",2)(7,"button",3),e.NdJ("click",function(){return g.cancel()}),e._uU(8," Cancel "),e.qZA(),e.TgZ(9,"button",3),e.NdJ("click",function(){return g.ok()}),e._uU(10," OK "),e.qZA()()),2&v&&(e.xp6(1),e.hij("\u53c2\u6570\uff1a",e.lcZ(2,3,g.record),","),e.xp6(6),e.Q6J("nzType","default"),e.xp6(2),e.Q6J("nzType","primary"))},dependencies:[t.rH,i.ix,l.w,C.dQ,E.Ts],encapsulation:2})}return z})()},50662:(nt,I,o)=>{"use strict";o.d(I,{X:()=>E});var e=o(65879),n=o(81221),t=o(42840),i=o(70855),l=o(41958),C=o(96814);let E=(()=>{class u{constructor(M){this.modal=M}ok(){this.modal.destroy("new time: "+ +new Date)}cancel(){this.modal.destroy()}static#e=this.\u0275fac=function(h){return new(h||u)(e.Y36(n.Lf))};static#t=this.\u0275cmp=e.Xpm({type:u,selectors:[["app-demo-dialog-modal"]],inputs:{record:"record"},decls:11,vars:7,consts:[[1,"modal-header"],[1,"modal-title"],[1,"modal-footer"],["nz-button","",3,"nzType","nzSize","click"]],template:function(h,v){1&h&&(e.TgZ(0,"div",0)(1,"div",1),e._uU(2,"Custom component"),e.qZA()(),e.TgZ(3,"p"),e._uU(4),e.ALo(5,"json"),e.qZA(),e.TgZ(6,"div",2)(7,"button",3),e.NdJ("click",function(){return v.cancel()}),e._uU(8," Cancel "),e.qZA(),e.TgZ(9,"button",3),e.NdJ("click",function(){return v.ok()}),e._uU(10," OK "),e.qZA()()),2&h&&(e.xp6(4),e.hij("\u53c2\u6570\uff1a",e.lcZ(5,5,v.record),""),e.xp6(3),e.Q6J("nzType","default")("nzSize","large"),e.xp6(2),e.Q6J("nzType","primary")("nzSize","large"))},dependencies:[t.ix,i.w,l.dQ,C.Ts],encapsulation:2})}return u})()},94824:(nt,I,o)=>{"use strict";o.d(I,{J:()=>E});var e=o(65879),n=o(81221),t=o(47535),i=o(42840),l=o(70855),C=o(41958);let E=(()=>{class u{constructor(M){this.modal=M,this.schema={properties:{name:{title:"Name",type:"string"}},required:["name"],ui:{spanLabelFixed:150,grid:{span:24}}}}save(M){this.modal.destroy(M)}close(){this.modal.destroy()}static#e=this.\u0275fac=function(h){return new(h||u)(e.Y36(n.Lf))};static#t=this.\u0275cmp=e.Xpm({type:u,selectors:[["app-demo-dialog-modal"]],decls:10,vars:4,consts:[[1,"modal-header"],[1,"modal-title"],["mode","edit","button","none",3,"schema","formData"],["sf",""],[1,"modal-footer"],["nz-button","","type","button",3,"click"],["nz-button","","type","submit",3,"nzType","disabled","click"]],template:function(h,v){if(1&h){const g=e.EpF();e.TgZ(0,"div",0)(1,"div",1),e._uU(2,"Sf demo"),e.qZA()(),e.TgZ(3,"sf",2,3)(5,"div",4)(6,"button",5),e.NdJ("click",function(){return v.close()}),e._uU(7,"\u5173\u95ed"),e.qZA(),e.TgZ(8,"button",6),e.NdJ("click",function(){e.CHM(g);const p=e.MAs(4);return e.KtG(v.save(p.value))}),e._uU(9,"\u4fdd\u5b58"),e.qZA()()()}if(2&h){const g=e.MAs(4);e.xp6(3),e.Q6J("schema",v.schema)("formData",v.i),e.xp6(5),e.Q6J("nzType","primary")("disabled",!g.valid)}},dependencies:[t.k,i.ix,l.w,C.dQ],encapsulation:2})}return u})()},28749:(nt,I,o)=>{"use strict";o.d(I,{P:()=>G});var e=o(96814),n=o(32181),t=o(980),i=o(24593),l=o(64115),C=o(65879),E=o(49548),u=o(52787),z=o(6593),M=o(43460),h=o(62831),v=o(96109),g=o(23771),d=o(93903),p=o(29094),f=o(24311),y=o(11188),T=o(63123);function x(V,K){if(1&V&&C._UZ(0,"nz-link",5),2&V){const te=K.$implicit;C.Q6J("nzHref","#"+te.id)("nzTitle",te.title)}}function D(V,K){if(1&V&&(C.ynx(0),C.YNc(1,x,1,2,"nz-link",4),C.BQk()),2&V){const te=C.oxw().$implicit;C.xp6(1),C.Q6J("ngForOf",te.children)}}function _(V,K){if(1&V&&(C.TgZ(0,"nz-link",5),C.YNc(1,D,2,1,"ng-container",1),C.qZA()),2&V){const te=K.$implicit;C.Q6J("nzHref","#"+te.id)("nzTitle",te.title),C.xp6(1),C.Q6J("ngIf",te.children&&te.children.length>0)}}function P(V,K){if(1&V){const te=C.EpF();C.TgZ(0,"nz-affix",2)(1,"nz-anchor",3),C.NdJ("nzClick",function(fe){C.CHM(te);const re=C.oxw();return C.KtG(re.goLink(fe))}),C.YNc(2,_,2,3,"nz-link",4),C.qZA()()}if(2&V){const te=C.oxw();C.xp6(2),C.Q6J("ngForOf",te.data.con.toc)}}function S(V,K){if(1&V&&(C._uU(0),C.TgZ(1,"a",15),C._uU(2," Help us!"),C.qZA()),2&V){const te=C.oxw(3);C.hij(" ","need-update"===te.data.con.meta.i18n?"This article need re-translated, hope that your can PR to translated it.":"This article has not been translated, hope that your can PR to translated it."," ")}}function A(V,K){if(1&V&&(C.TgZ(0,"nz-alert",13),C.YNc(1,S,3,1,"ng-template",null,14,C.W1O),C.qZA()),2&V){const te=C.MAs(2);C.Q6J("nzType","warning")("nzCloseable","true")("nzMessage",te)}}function k(V,K){if(1&V){const te=C.EpF();C.TgZ(0,"div",16)(1,"span",17),C.NdJ("click",function(){C.CHM(te);const fe=C.oxw(2);return C.KtG(fe.copyModule())}),C.ALo(2,"i18n"),C._uU(3," IMPORT MODULE "),C.qZA()()}if(2&V){const te=C.oxw(2);C.xp6(1),C.Q6J("nzTooltipTitle",C.lcZ(2,1,"app.content.copy-import-module")+te.data.con.module)}}function R(V,K){if(1&V&&C._UZ(0,"div",18),2&V){const te=C.oxw(2);C.Q6J("innerHTML",te.data.con.content,C.oJD)}}function $(V,K){if(1&V&&(C.ynx(0),C._UZ(1,"h2",19),C.Hsn(2),C.BQk()),2&V){const te=C.oxw(2);C.xp6(1),C.s9C("id",te.demoStr),C.Q6J("innerHTML",te.demoContent,C.oJD)}}function W(V,K){if(1&V&&C._UZ(0,"div",20),2&V){const te=C.oxw(2);C.Q6J("innerHTML",te.data.con.api,C.oJD)}}function ze(V,K){if(1&V&&(C.ynx(0),C.YNc(1,A,3,3,"nz-alert",6),C.TgZ(2,"div",7)(3,"h1",8)(4,"strong"),C._uU(5),C.qZA(),C.YNc(6,k,4,3,"div",9),C._UZ(7,"edit-button",10),C.qZA()(),C.YNc(8,R,1,1,"div",11),C.YNc(9,$,3,2,"ng-container",1),C.YNc(10,W,1,1,"div",12),C.BQk()),2&V){const te=C.oxw();C.xp6(1),C.Q6J("ngIf",!te.meta.item.i18n||"need-update"===te.data.con.meta.i18n),C.xp6(4),C.Oqu(te.meta.item.subtitle||te.meta.item.title),C.xp6(1),C.Q6J("ngIf",te.data.con.module),C.xp6(1),C.Q6J("item",te.item),C.xp6(1),C.Q6J("ngIf",te.data.con.content),C.xp6(1),C.Q6J("ngIf",te.data.demo),C.xp6(1),C.Q6J("ngIf",te.data.con.api)}}const Y=["*"];let G=(()=>{class V{constructor(te,ne,fe,re,be,le,ce){this.meta=te,this.i18n=ne,this.router=fe,this.sanitizer=re,this.doc=be,this.msg=le,this.data={},this.isBrowser=!0,this.isBrowser=ce.isBrowser,this.i18NChange$=this.i18n.change.pipe((0,n.h)(()=>!!this.item)).subscribe(()=>{this.init()})}genData(){const te=(0,l.p$)(this.item),ne={demo:te.demo,urls:te.urls,con:te.content[this.i18n.currentLang]||te.content[this.i18n.defaultLang]};ne.demo&&this.codes&&this.codes.length&&(this.genDemoTitle(),ne.con.toc=this.codes.map(fe=>({h:3,id:fe.id,title:this.i18n.get(fe.meta.title)})).concat({id:"API",title:"API",h:2})),ne.con.content&&(ne.con.content=this.sanitizer.bypassSecurityTrustHtml(ne.con.content)),ne.con.api&&(ne.con.api=this.sanitizer.bypassSecurityTrustHtml(ne.con.api)),ne.con.meta.module&&(ne.con.module=ne.con.meta.module),this.data=ne,setTimeout(()=>{const fe=this.router.parseUrl(this.router.url).fragment||"";if(fe){const re=this.doc.querySelector(`#${fe}`);re&&re.scrollIntoView()}},200)}goLink(te){window&&(window.location.hash=te)}genDemoTitle(){this.demoStr=this.i18n.fanyi("app.component.examples"),this.demoContent=this.sanitizer.bypassSecurityTrustHtml(`${this.demoStr}`)}init(){this.genData(),this.genDemoTitle(),this.isBrowser&&setTimeout(()=>{const te=this.doc.querySelectorAll('[class*="language-"], [class*="lang-"]');for(let fe,ne=0;fe=te[ne++];)hljs.highlightBlock(fe)},250)}copyModule(){(0,i.J)(this.data.con.module).then(()=>{this.msg.success(this.i18n.fanyi("app.demo.copied"))})}ngOnInit(){this.init()}ngOnDestroy(){this.i18NChange$.unsubscribe()}static#e=this.\u0275fac=function(ne){return new(ne||V)(C.Y36(E.R),C.Y36(t.Oi),C.Y36(u.F0),C.Y36(z.H7),C.Y36(e.K0),C.Y36(M.dD),C.Y36(h.t4))};static#t=this.\u0275cmp=C.Xpm({type:V,selectors:[["app-docs"]],inputs:{codes:"codes",item:"item"},ngContentSelectors:Y,decls:2,vars:2,consts:[["class","toc-affix","nzOffsetTop","16",4,"ngIf"],[4,"ngIf"],["nzOffsetTop","16",1,"toc-affix"],["nzShowInkInFixed","","nzAffix","false",3,"nzClick"],[3,"nzHref","nzTitle",4,"ngFor","ngForOf"],[3,"nzHref","nzTitle"],["nzBanner","","class","my-md",3,"nzType","nzCloseable","nzMessage",4,"ngIf"],[1,"markdown"],[1,"flex-center"],["class","ml-sm",4,"ngIf"],[3,"item"],["class","markdown","routeTransfer","",3,"innerHTML",4,"ngIf"],["class","markdown api-container","routeTransfer","",3,"innerHTML",4,"ngIf"],["nzBanner","",1,"my-md",3,"nzType","nzCloseable","nzMessage"],["message",""],["href","//github.com/ng-alain/ng-alain/issues/74","target","_blank"],[1,"ml-sm"],["nz-tooltip","",1,"copy-import-module",3,"nzTooltipTitle","click"],["routeTransfer","",1,"markdown",3,"innerHTML"],["routeTransfer","",2,"margin","32px 0 24px 0",3,"id","innerHTML"],["routeTransfer","",1,"markdown","api-container",3,"innerHTML"]],template:function(ne,fe){1&ne&&(C.F$t(),C.YNc(0,P,3,1,"nz-affix",0),C.YNc(1,ze,11,7,"ng-container",1)),2&ne&&(C.Q6J("ngIf",fe.isBrowser&&(null==fe.data.con.toc?null:fe.data.con.toc.length)),C.xp6(1),C.Q6J("ngIf",fe.meta.item))},dependencies:[e.sg,e.O5,v.SY,g.$,d.r,p.IT,p.Fp,f.M,y.e,T.C],encapsulation:2})}return V})()},24311:(nt,I,o)=>{"use strict";o.d(I,{M:()=>u});var e=o(980),n=o(65879),t=o(49548),i=o(70855),l=o(96109),C=o(90551),E=o(63123);let u=(()=>{class z{set item(h){this._full=`${this.meta.github}/edit/master/${this.i18n.get(h.urls)}`}constructor(h,v){this.meta=h,this.i18n=v}static#e=this.\u0275fac=function(v){return new(v||z)(n.Y36(t.R),n.Y36(e.Oi))};static#t=this.\u0275cmp=n.Xpm({type:z,selectors:[["edit-button"]],inputs:{item:"item"},decls:3,vars:4,consts:[["target","_blank","nz-tooltip","",1,"edit-button",3,"href","nzTooltipTitle"],["nz-icon","","nzType","edit"]],template:function(v,g){1&v&&(n.TgZ(0,"a",0),n.ALo(1,"i18n"),n._UZ(2,"i",1),n.qZA()),2&v&&(n.s9C("href",g._full,n.LSH),n.s9C("nzTooltipTitle",n.lcZ(1,2,"app.content.edit-page")))},dependencies:[i.w,l.SY,C.Ls,E.C],encapsulation:2})}return z})()},68014:(nt,I,o)=>{"use strict";o.d(I,{c:()=>x});var e=o(97582),n=o(980),t=o(24593),i=o(74648),l=o(65879),C=o(43460),E=o(68929),u=o(64115),z=o(90551),M=o(62831),h=o(96814),v=o(52787),g=o(10095),d=o(57417),p=o(45567),f=o(63123);function y(D,_){if(1&D){const P=l.EpF();l.TgZ(0,"color-sketch",23),l.NdJ("onChangeComplete",function(A){l.CHM(P);const k=l.oxw();return l.KtG(k.changeColor(A))}),l.qZA()}if(2&D){const P=l.oxw();l.Q6J("color",P.color)}}const T=function(D){return{background:D}};let x=(()=>{class D{constructor(P,S,A,k,R,$,W,ze){this.i18n=P,this.msg=S,this.loading=A,this.lazy=k,this.iconSrv=R,this.ngZone=$,this.cdr=W,this.platform=ze,this.color="#1890ff",this.lessLoaded=!1,this.small=!1}onCopy(P){(0,t.J)(P).then(()=>this.msg.success(this.i18n.fanyi("app.demo.copied")))}ngOnInit(){this.platform.isBrowser&&this.initColor()}initColor(){const P=document.createElement("link");P.rel="stylesheet/less",P.type="text/css",P.href="/assets/color.less",document.getElementsByTagName("head")[0].appendChild(P)}changeColor(P){const S=()=>{this.ngZone.runOutsideAngular(()=>{window.less.modifyVars({"@primary-color":P.color.hex}).then(()=>{window.scrollTo(0,0),this.ngZone.run(()=>{this.color=P.color.hex,this.iconSrv.twoToneColor.primaryColor=this.color,this.msg.success(this.i18n.fanyi("app.footer.primary-color-changed")),this.cdr.detectChanges()}),this.loading.close()})})};this.loading.open({text:"Compiling...."}),this.lessLoaded?S():(window.less={async:!0,javascriptEnabled:!0},this.lazy.loadScript("https://cdnjs.cloudflare.com/ajax/libs/less.js/3.9.0/less.min.js").then(()=>{this.lessLoaded=!0,S()}))}static#e=this.\u0275fac=function(S){return new(S||D)(l.Y36(n.Oi),l.Y36(C.dD),l.Y36(E.bz),l.Y36(u.Df),l.Y36(z.H5),l.Y36(l.R0b),l.Y36(l.sBO),l.Y36(M.t4))};static#t=this.\u0275cmp=l.Xpm({type:D,selectors:[["app-footer"]],hostVars:6,hostBindings:function(S,A){2&S&&l.ekj("footer",!0)("footer__dark",!0)("footer__small",A.small)},inputs:{small:"small"},decls:93,vars:43,consts:[[1,"footer__wrap"],["nz-row",""],["nz-col","","nzXs","24","nzSm","24","nzLg","6"],[1,"footer__center"],["href","https://github.com/ng-alain/ng-alain","target","_blank"],["href","https://github.com/ng-alain/delon","target","_blank"],["href","https://github.com/ng-alain/ng-zorro-vscode","target","_blank"],["href","https://github.com/ng-alain/ng-alain-vscode","target","_blank"],["href","https://www.angular.cn/","target","_blank"],["href","https://ng.ant.design","target","_blank"],["href","https://cli.angular.io/","target","_blank"],["href","https://antv.alipay.com/","target","_blank"],[3,"routerLink"],["href","https://github.com/ng-alain/ng-alain/issues","target","_blank"],["target","_blank",3,"href"],[3,"click"],["href","https://github.com/cipchk","target","_blank"],[1,"mt-sm"],["href","https://beian.miit.gov.cn/","target","_blank",1,"text-grey"],[1,"mt-lg"],["nz-popover","","nzPopoverTrigger","click","nzPopoverOverlayClassName","theme-color-content",1,"theme-color",3,"nzPopoverContent"],[1,"theme-color-value",3,"ngStyle"],["colorTpl",""],[3,"color","onChangeComplete"]],template:function(S,A){if(1&S&&(l.TgZ(0,"div",0)(1,"div",1)(2,"div",2)(3,"div",3)(4,"h2"),l._uU(5,"ng-alain"),l.qZA(),l.TgZ(6,"div")(7,"a",4),l._uU(8,"Github"),l.qZA()(),l.TgZ(9,"div")(10,"a",5),l._uU(11,"@delon"),l.qZA()(),l.TgZ(12,"div")(13,"a",6),l._uU(14,"ng-zorro-vscode"),l.qZA()(),l.TgZ(15,"div")(16,"a",7),l._uU(17,"ng-alain-vscode"),l.qZA()()()(),l.TgZ(18,"div",2)(19,"div",3)(20,"h2"),l._uU(21),l.ALo(22,"i18n"),l.qZA(),l.TgZ(23,"div")(24,"a",8),l._uU(25,"Angular"),l.qZA(),l.TgZ(26,"span"),l._uU(27," - "),l.qZA(),l._uU(28),l.ALo(29,"i18n"),l.qZA(),l.TgZ(30,"div")(31,"a",9),l._uU(32,"ng-zorro-antd"),l.qZA(),l.TgZ(33,"span"),l._uU(34," - "),l.qZA(),l._uU(35),l.ALo(36,"i18n"),l.qZA(),l.TgZ(37,"div")(38,"a",10),l._uU(39,"CLI"),l.qZA(),l.TgZ(40,"span"),l._uU(41," - "),l.qZA(),l._uU(42),l.ALo(43,"i18n"),l.qZA(),l.TgZ(44,"div")(45,"a",11),l._uU(46,"AntV"),l.qZA(),l.TgZ(47,"span"),l._uU(48," - "),l.qZA(),l._uU(49),l.ALo(50,"i18n"),l.qZA()()(),l.TgZ(51,"div",2)(52,"div",3)(53,"h2"),l._uU(54),l.ALo(55,"i18n"),l.qZA(),l.TgZ(56,"div")(57,"a",12),l._uU(58),l.ALo(59,"i18n"),l.qZA()(),l.TgZ(60,"div")(61,"a",12),l._uU(62),l.ALo(63,"i18n"),l.qZA()(),l.TgZ(64,"div")(65,"a",13),l._uU(66),l.ALo(67,"i18n"),l.qZA()(),l.TgZ(68,"div")(69,"a",14),l._uU(70),l.ALo(71,"i18n"),l.qZA()(),l.TgZ(72,"div")(73,"a",15),l.NdJ("click",function(){return A.onCopy("316911865")}),l._uU(74),l.ALo(75,"i18n"),l.qZA()(),l.TgZ(76,"div")(77,"a",15),l.NdJ("click",function(){return A.onCopy("428749721")}),l._uU(78),l.ALo(79,"i18n"),l.qZA()()()(),l.TgZ(80,"div",2)(81,"div",3),l._uU(82," Copyright \xa9 2021 "),l.TgZ(83,"a",16),l._uU(84,"\xa9\u5361\u8272"),l.qZA(),l.TgZ(85,"p",17)(86,"a",18),l._uU(87,"\u95fdICP\u590718008195\u53f7"),l.qZA()(),l.TgZ(88,"div",19)(89,"div",20),l._UZ(90,"div",21),l.qZA(),l.YNc(91,y,1,1,"ng-template",null,22,l.W1O),l.qZA()()()()()),2&S){const k=l.MAs(92);l.xp6(21),l.Oqu(l.lcZ(22,17,"app.footer.resources")),l.xp6(7),l.hij(" ",l.lcZ(29,19,"app.footer.angular")," "),l.xp6(7),l.hij(" ",l.lcZ(36,21,"app.footer.antd")," "),l.xp6(7),l.hij(" ",l.lcZ(43,23,"app.footer.cli")," "),l.xp6(7),l.hij(" ",l.lcZ(50,25,"app.footer.antv")," "),l.xp6(5),l.Oqu(l.lcZ(55,27,"app.footer.community")),l.xp6(3),l.MGl("routerLink","/docs/changelog/",A.i18n.zone,""),l.xp6(1),l.Oqu(l.lcZ(59,29,"app.footer.change-log")),l.xp6(3),l.MGl("routerLink","/docs/faq/",A.i18n.zone,""),l.xp6(1),l.Oqu(l.lcZ(63,31,"app.footer.faq")),l.xp6(4),l.Oqu(l.lcZ(67,33,"app.footer.issues")),l.xp6(3),l.MGl("href","https://ng-alain.com/issue-helper/index.html#",A.i18n.zone,"",l.LSH),l.xp6(1),l.Oqu(l.lcZ(71,35,"app.footer.issue-help")),l.xp6(4),l.hij("",l.lcZ(75,37,"app.footer.qqgroup")," 1: 316911865"),l.xp6(4),l.hij("",l.lcZ(79,39,"app.footer.qqgroup")," 2: 428749721"),l.xp6(11),l.Q6J("nzPopoverContent",k),l.xp6(1),l.Q6J("ngStyle",l.VKq(41,T,A.color))}},dependencies:[h.PC,v.rH,g.t3,g.SK,d.lU,p.KY,f.C],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,i.yF)()],D.prototype,"small",void 0),D})()},92476:(nt,I,o)=>{"use strict";o.d(I,{o:()=>C});var e=o(97582),n=o(74648),t=o(65879),i=o(70855),l=o(90551);let C=(()=>{class E{constructor(){this.theme="outline",this.spin=!1}static#e=this.\u0275fac=function(M){return new(M||E)};static#t=this.\u0275cmp=t.Xpm({type:E,selectors:[["nz-icon"]],inputs:{type:"type",theme:"theme",spin:"spin",twoToneColor:"twoToneColor",iconfont:"iconfont"},decls:1,vars:5,consts:[["nz-icon","",3,"nzType","nzTheme","nzSpin","nzTwotoneColor","nzIconfont"]],template:function(M,h){1&M&&t._UZ(0,"i",0),2&M&&t.Q6J("nzType",h.type)("nzTheme",h.theme)("nzSpin",h.spin)("nzTwotoneColor",h.twoToneColor)("nzIconfont",h.iconfont)},dependencies:[i.w,l.Ls],encapsulation:2})}return(0,e.gn)([(0,n.yF)()],E.prototype,"spin",void 0),E})()},84617:(nt,I,o)=>{"use strict";o.d(I,{C:()=>f});var e=o(65879),n=o(71993),t=o(980),i=o(49548),l=o(96814),C=o(52787),E=o(70855),u=o(73460),z=o(96109),M=o(33640),h=o(55695);function v(y,T){1&y&&(e.TgZ(0,"nz-tag",9),e._uU(1,"LIB"),e.qZA()),2&y&&e.Q6J("nzColor","blue")}const g=function(){return["ant-menu-item-selected"]};function d(y,T){if(1&y){const x=e.EpF();e.TgZ(0,"li",4),e.NdJ("click",function(){const P=e.CHM(x).$implicit,S=e.oxw(2);return e.KtG(S.to.emit(P.url))}),e.TgZ(1,"nz-badge",5)(2,"span",6),e._uU(3),e.qZA(),e.TgZ(4,"span",7),e._uU(5),e.qZA(),e.YNc(6,v,2,1,"nz-tag",8),e.qZA()()}if(2&y){const x=T.$implicit;e.ekj("menu-deprecated",x.deprecated),e.Q6J("routerLink",x.url)("routerLinkActive",e.DdM(9,g))("nzTooltipTitle",x.deprecated?"Deprecated in "+x.deprecated:null),e.xp6(1),e.Q6J("nzDot",x.hot),e.xp6(2),e.Oqu(x.title),e.xp6(2),e.Oqu(x.subtitle),e.xp6(1),e.Q6J("ngIf",x.lib)}}function p(y,T){if(1&y&&(e.TgZ(0,"li",2)(1,"ul"),e.YNc(2,d,7,10,"li",3),e.qZA()()),2&y){const x=T.$implicit;e.Q6J("nzTitle",x.title),e.xp6(2),e.Q6J("ngForOf",x.list)}}let f=(()=>{class y{get menus(){return this.meta.menus}constructor(x,D,_){this.meta=x,this.i18n=D,this.cdr=_,this.destroy$=(0,e.f3M)(e.ktI),this.count=0,this.to=new e.vpe}ngOnInit(){this.i18n.change.pipe((0,n.sL)(this.destroy$)).subscribe(()=>this.cdr.markForCheck()),this.count=this.meta.menus?.reduce((x,D)=>x+D.list.length,0)}static#e=this.\u0275fac=function(D){return new(D||y)(e.Y36(i.R),e.Y36(t.Oi),e.Y36(e.sBO))};static#t=this.\u0275cmp=e.Xpm({type:y,selectors:[["main-menu"],["","main-menu",""]],outputs:{to:"to"},decls:2,vars:1,consts:[["nz-menu","","nzMode","inline",1,"aside-container"],["nz-menu-group","","nzOpen","",3,"nzTitle",4,"ngFor","ngForOf"],["nz-menu-group","","nzOpen","",3,"nzTitle"],["nz-menu-item","","style","padding-left: 54px","nz-tooltip","",3,"routerLink","routerLinkActive","menu-deprecated","nzTooltipTitle","click",4,"ngFor","ngForOf"],["nz-menu-item","","nz-tooltip","",2,"padding-left","54px",3,"routerLink","routerLinkActive","nzTooltipTitle","click"],[3,"nzDot"],[1,"name"],[1,"chinese"],["title","Full Library","class","ml-sm",3,"nzColor",4,"ngIf"],["title","Full Library",1,"ml-sm",3,"nzColor"]],template:function(D,_){1&D&&(e.TgZ(0,"ul",0),e.YNc(1,p,3,2,"li",1),e.qZA()),2&D&&(e.xp6(1),e.Q6J("ngForOf",_.menus))},dependencies:[l.sg,l.O5,C.rH,C.Od,E.w,u.wO,u.u9,u.uA,z.SY,M.x7,h.j],encapsulation:2,changeDetection:0})}return y})()},22204:(nt,I,o)=>{"use strict";o.d(I,{J:()=>i});var e=o(52787),n=o(32181),t=o(65879);let i=(()=>{class l{set options(E){this._options={cls:"ant-menu-item-selected",...E}}constructor(E,u,z){this.router=E,this.element=u,this.renderer=z}setCls(){this.router.navigated&&Promise.resolve().then(()=>{const{regex:E,cls:u}=this._options;E.test(this.router.url)?this.renderer.addClass(this.element.nativeElement,u):this.renderer.removeClass(this.element.nativeElement,u)})}ngAfterViewInit(){this.url$=this.router.events.pipe((0,n.h)(E=>E instanceof e.m2)).subscribe(()=>this.setCls()),this.setCls()}ngOnDestroy(){this.url$&&this.url$.unsubscribe()}static#e=this.\u0275fac=function(u){return new(u||l)(t.Y36(e.F0),t.Y36(t.SBq),t.Y36(t.Qsj))};static#t=this.\u0275dir=t.lG2({type:l,selectors:[["","matchRouter",""]],inputs:{options:["matchRouter","options"]}})}return l})()},11188:(nt,I,o)=>{"use strict";o.d(I,{e:()=>C});var e=o(980),n=o(24593),t=o(65879),i=o(52787),l=o(43460);let C=(()=>{class E{constructor(z,M,h){this.router=z,this.msg=M,this.i18n=h}clickToc(z){const h=document.querySelector(`#${z}`);h&&h.scrollIntoView()}_click(z){const M=z.target;if(!M||!M.dataset||!["a","i"].includes(M.tagName.toLowerCase()))return;const h=M.dataset.anchor;if(h&&h.length>0)return void(0,n.J)(`${location.href.split("#")[0]}#${h}`).then(()=>{this.msg.success(this.i18n.fanyi("app.content.link.copied"))});const v=M.dataset.url;if(M.dataset.toc||v&&v.startsWith("#"))return this.clickToc(M.dataset.toc||v.substring(1).replace(/ /g,"-")),z.preventDefault(),void z.stopPropagation();v&&v.startsWith("/")&&!v.startsWith("//")&&this.router.navigateByUrl(v)}static#e=this.\u0275fac=function(M){return new(M||E)(t.Y36(i.F0),t.Y36(l.dD),t.Y36(e.Oi))};static#t=this.\u0275dir=t.lG2({type:E,selectors:[["","routeTransfer",""]],hostBindings:function(M,h){1&M&&t.NdJ("click",function(g){return h._click(g)})}})}return E})()},89359:(nt,I,o)=>{"use strict";o.d(I,{m:()=>ur});var e=o(96814),n=o(60095),t=o(52787),i=o(83991),l=o(45567),C=o(65879);new C.OlP("HighlightJs-Config");let M=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[n.u5]})}return Yt})();var h=o(6595),v=o(27929),g=o(92724),d=o(27854),p=o(980);o(27358),o(93285),o(24205),o(50662),o(94824),o(28749),o(24311),o(68014),o(92476),o(84617),o(22204),o(11188);o(45372);let Y=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({})}return Yt})();o(8682);var V=o(96928),K=o(96109);o(32461);let fe=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,V.Rt,K.cg]})}return Yt})();var re=o(22948),be=o(44556);o(33821);let Q=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,be.cD]})}return Yt})();var ie=o(52682);o(94461);o(67744);let Ye=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,n.u5,ie.Hb]})}return Yt})();o(3933);let ee=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,p.pG]})}return Yt})();o(96103);var Re=o(17131);let Ae=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,Re.Q8,K.cg]})}return Yt})();o(32113);var je=o(90551);let mt=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,je.PV]})}return Yt})();o(9405);var de=o(42840);let B=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,Re.Q8,t.Bz,p.lD,de.sL]})}return Yt})();o(68842);var Ie=o(8324);let pt=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,mt,Ie.T]})}return Yt})();o(73370),o(79657);let qt=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,t.Bz]})}return Yt})();o(31371);let Wt=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({})}return Yt})();var Vt=o(31747),st=o(68929);o(96173),o(6821);let Ot=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez]})}return Yt})();o(98092);var Qe=o(33640),ke=o(62787),pe=o(16976),qe=o(77273),ge=o(79382),Ze=o(55695);let Ue=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,p.lD,Qe.mS,ke.b1,je.PV,pe.Ph,qe.j,ge.we,Ze.X,Ie.T]})}return Yt})();var wt=o(24380),De=o(97878),Je=(o(18750),o(23771)),Ge=o(3626),Ke=o(24139);let it=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,t.Bz,Re.Q8,Je.j,Ke.H0,Ge.lt,Ie.T]})}return Yt})();o(95345),o(99275),o(56178);let L=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,Ke.H0]})}return Yt})();o(77483),o(57796);let Ft=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez]})}return Yt})();o(47970);let vn=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,je.PV,Ie.T]})}return Yt})();o(73180);let En=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,je.PV,Ie.T]})}return Yt})();var bn=o(42918);o(98168),o(77368);let Wn=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,K.cg,je.PV,Ie.T]})}return Yt})();o(91493),o(22218);let hi=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez]})}return Yt})();var fi=o(87334);o(66642),o(36411),o(42336);let oo=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,Re.Q8,K.cg,je.PV,Ie.T]})}return Yt})();o(615);let Li=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,je.PV,p.lD]})}return Yt})();o(69694);let Mo=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,Ie.T,Ke.H0]})}return Yt})();o(68636);var Xi=o(82962);let Hi=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,Xi.vh,qe.j,Ie.T]})}return Yt})();o(27890),o(59951);let ki=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,Ke.H0]})}return Yt})();o(7802);let Et=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,Ke.H0]})}return Yt})();o(61198);let Ct=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,Ke.H0]})}return Yt})();o(91289);let gn=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez]})}return Yt})();o(77322);let gi=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez]})}return Yt})();o(9730);let We=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,p.lD,K.cg]})}return Yt})();o(84420);let ln=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,je.PV,Ie.T]})}return Yt})();o(22595);var kn=o(66987);let ui=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,kn.S,Ie.T,Ke.H0]})}return Yt})();o(91183);var Ui=o(10095);let go=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,Ui.Jb,Ie.T,Ke.H0]})}return Yt})();o(47381);let Ti=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez]})}return Yt})();o(91641);let ro=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,Ke.H0]})}return Yt})();o(68771);let vo=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,Ie.T,Ke.H0]})}return Yt})();o(37690);let Wo=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,je.PV]})}return Yt})();o(64755);let es=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,Ie.T]})}return Yt})();o(52500);var ji=o(93903),Ro=o(43389),Fi=o(20824),lo=o(68373),Ai=o(96494);o(60662);let Gt=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,n.u5,Ro.BL,K.cg,kn.S,ge.we,Ai.m,ji.L,je.PV,Fi.o7,lo.Zf,de.sL]})}return Yt})();var Z=o(22945);let vt=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({providers:[{provide:Z.w,useValue:"site-theme"}],imports:[e.ez,ke.b1,K.cg]})}return Yt})();o(4171),o(13072),o(59765);let yo=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({})}return Yt})();o(58859);let Yi=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({})}return Yt})();o(39542);let _i=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({})}return Yt})();const fs=[fe,Q,Ye,ee,Ae,fi.aS,oo,Wn,hi,st.Il,Ft,re.cm,De.Tc,mt,B,pt,qt,qt,it,En,Li,Ue,vn,wt.Q8,Mo,Hi,Et,Ct,gn,gi,We,ui,go,Ti,ro,vo,es,ki,ln,Wo,bn.r7,Ot,vt,Gt,L,yo,Yi,_i,Y,Vt._N,Wt];var $o=o(29094),at=o(47532),ht=o(77456),Fe=o(62612),Tt=o(84267),jt=o(60804),Nn=o(3599),jn=o(92760),co=o(43460),jo=o(81221),Fo=o(2274),ys=o(57417),Co=o(57907),Eo=o(70612),Bo=o(9691),$s=o(39704),uo=o(79663),Qo=o(41394);const Do=[de.sL,co.gR,at.j,ke.b1,Ui.Jb,ht.vB,Fe.Wr,K.cg,ys.$6,Bo.LV,je.PV,Je.j,Qe.mS,ji.L,jo.Qp,uo.HQ,Ro.BL,ge.we,Fi.o7,ie.Hb,Ze.X,lo.Zf,Ge.lt,$s.N6,pe.Ph,jn.Gb,Ai.m,Co.aF,Nn.U5,V.Rt,Xi.vh,qe.j,kn.S,Eo.GS,$o.on,Qo.cS,Fo.uK,jt.Xo,Tt.C];o(58593);const Ho=[M,i.l,h.TN,l.fq];let ur=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,n.u5,t.Bz,n.UX,p.pG.forChild(),v.vy,d.ek,g.C,fs,Do,Ho,e.ez,n.u5,n.UX,t.Bz,p.pG,v.vy,d.ek,g.C,fe,Q,Ye,ee,Ae,fi.aS,oo,Wn,hi,st.Il,Ft,re.cm,De.Tc,mt,B,pt,qt,qt,it,En,Li,Ue,vn,wt.Q8,Mo,Hi,Et,Ct,gn,gi,We,ui,go,Ti,ro,vo,es,ki,ln,Wo,bn.r7,Ot,vt,Gt,L,yo,Yi,_i,Y,Vt._N,Wt,de.sL,co.gR,at.j,ke.b1,Ui.Jb,ht.vB,Fe.Wr,K.cg,ys.$6,Bo.LV,je.PV,Je.j,Qe.mS,ji.L,jo.Qp,uo.HQ,Ro.BL,ge.we,Fi.o7,ie.Hb,Ze.X,lo.Zf,Ge.lt,$s.N6,pe.Ph,jn.Gb,Ai.m,Co.aF,Nn.U5,V.Rt,Xi.vh,qe.j,kn.S,Eo.GS,$o.on,Qo.cS,Fo.uK,jt.Xo,Tt.C,M,i.l,h.TN,l.fq]})}return Yt})()},3975:(nt,I,o)=>{"use strict";var e={};o.r(e),o.d(e,{CHARTS:()=>Ll,UPLOADS:()=>Va,USERS:()=>da});var n=o(6593),t=o(65879),i=o(49388),l=o(71088),C=o(96814),E=o(69862);const u=void 0,M=["zh",[["\u4e0a\u5348","\u4e0b\u5348"],u,u],u,[["\u65e5","\u4e00","\u4e8c","\u4e09","\u56db","\u4e94","\u516d"],["\u5468\u65e5","\u5468\u4e00","\u5468\u4e8c","\u5468\u4e09","\u5468\u56db","\u5468\u4e94","\u5468\u516d"],["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],["\u5468\u65e5","\u5468\u4e00","\u5468\u4e8c","\u5468\u4e09","\u5468\u56db","\u5468\u4e94","\u5468\u516d"]],u,[["1","2","3","4","5","6","7","8","9","10","11","12"],["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],["\u4e00\u6708","\u4e8c\u6708","\u4e09\u6708","\u56db\u6708","\u4e94\u6708","\u516d\u6708","\u4e03\u6708","\u516b\u6708","\u4e5d\u6708","\u5341\u6708","\u5341\u4e00\u6708","\u5341\u4e8c\u6708"]],u,[["\u516c\u5143\u524d","\u516c\u5143"],u,u],0,[6,0],["y/M/d","y\u5e74M\u6708d\u65e5",u,"y\u5e74M\u6708d\u65e5EEEE"],["HH:mm","HH:mm:ss","z HH:mm:ss","zzzz HH:mm:ss"],["{1} {0}",u,u,u],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"CNY","\xa5","\u4eba\u6c11\u5e01",{AUD:["AU$","$"],BYN:[u,"\u0440."],CNY:["\xa5"],ILR:["ILS"],JPY:["JP\xa5","\xa5"],KRW:["\uffe6","\u20a9"],PHP:[u,"\u20b1"],RUR:[u,"\u0440."],TWD:["NT$"],USD:["US$","$"],XXX:[]},"ltr",function z(ye){return 5}];var h=o(86825);function g(ye){return new t.vHH(3e3,!1)}function Be(ye){switch(ye.length){case 0:return new h.ZN;case 1:return ye[0];default:return new h.ZE(ye)}}function Re(ye,J,F=new Map,X=new Map){const Le=[],ft=[];let Pt=-1,Rt=null;if(J.forEach(Jt=>{const nn=Jt.get("offset"),Cn=nn==Pt,Tn=Cn&&Rt||new Map;Jt.forEach((Xn,Hn)=>{let Vn=Hn,ii=Xn;if("offset"!==Hn)switch(Vn=ye.normalizePropertyName(Vn,Le),ii){case h.k1:ii=F.get(Hn);break;case h.l3:ii=X.get(Hn);break;default:ii=ye.normalizeStyleValue(Hn,Vn,ii,Le)}Tn.set(Vn,ii)}),Cn||ft.push(Tn),Rt=Tn,Pt=nn}),Le.length)throw function re(ye){return new t.vHH(3502,!1)}();return ft}function ct(ye,J,F,X){switch(J){case"start":ye.onStart(()=>X(F&&Ae(F,"start",ye)));break;case"done":ye.onDone(()=>X(F&&Ae(F,"done",ye)));break;case"destroy":ye.onDestroy(()=>X(F&&Ae(F,"destroy",ye)))}}function Ae(ye,J,F){const ft=Mt(ye.element,ye.triggerName,ye.fromState,ye.toState,J||ye.phaseName,F.totalTime??ye.totalTime,!!F.disabled),Pt=ye._data;return null!=Pt&&(ft._data=Pt),ft}function Mt(ye,J,F,X,Le="",ft=0,Pt){return{element:ye,triggerName:J,fromState:F,toState:X,phaseName:Le,totalTime:ft,disabled:!!Pt}}function je(ye,J,F){let X=ye.get(J);return X||ye.set(J,X=F),X}function ot(ye){const J=ye.indexOf(":");return[ye.substring(1,J),ye.slice(J+1)]}const mt=(()=>typeof document>"u"?null:document.documentElement)();function we(ye){const J=ye.parentNode||ye.host||null;return J===mt?null:J}let U=null,B=!1;function pt(ye,J){for(;J;){if(J===ye)return!0;J=we(J)}return!1}function Dt(ye,J,F){if(F)return Array.from(ye.querySelectorAll(J));const X=ye.querySelector(J);return X?[X]:[]}let Ut=(()=>{class ye{validateStyleProperty(F){return function Ee(ye){U||(U=function Ne(){return typeof document<"u"?document.body:null}()||{},B=!!U.style&&"WebkitAppearance"in U.style);let J=!0;return U.style&&!function de(ye){return"ebkit"==ye.substring(1,6)}(ye)&&(J=ye in U.style,!J&&B&&(J="Webkit"+ye.charAt(0).toUpperCase()+ye.slice(1)in U.style)),J}(F)}matchesElement(F,X){return!1}containsElement(F,X){return pt(F,X)}getParentElement(F){return we(F)}query(F,X,Le){return Dt(F,X,Le)}computeStyle(F,X,Le){return Le||""}animate(F,X,Le,ft,Pt,Rt=[],Jt){return new h.ZN(Le,ft)}static#e=this.\u0275fac=function(X){return new(X||ye)};static#t=this.\u0275prov=t.Yz7({token:ye,factory:ye.\u0275fac})}return ye})(),qt=(()=>{class ye{static#e=this.NOOP=new Ut}return ye})();const en=1e3,Vt="ng-enter",st="ng-leave",He="ng-trigger",et=".ng-trigger",It="ng-animating",Ot=".ng-animating";function xt(ye){if("number"==typeof ye)return ye;const J=ye.match(/^(-?[\.\d]+)(m?s)/);return!J||J.length<2?0:Qe(parseFloat(J[1]),J[2])}function Qe(ye,J){return"s"===J?ye*en:ye}function ke(ye,J,F){return ye.hasOwnProperty("duration")?ye:function pe(ye,J,F){let Le,ft=0,Pt="";if("string"==typeof ye){const Rt=ye.match(/^(-?[\.\d]+)(m?s)(?:\s+(-?[\.\d]+)(m?s))?(?:\s+([-a-z]+(?:\(.+?\))?))?$/i);if(null===Rt)return J.push(g()),{duration:0,delay:0,easing:""};Le=Qe(parseFloat(Rt[1]),Rt[2]);const Jt=Rt[3];null!=Jt&&(ft=Qe(parseFloat(Jt),Rt[4]));const nn=Rt[5];nn&&(Pt=nn)}else Le=ye;if(!F){let Rt=!1,Jt=J.length;Le<0&&(J.push(function d(){return new t.vHH(3100,!1)}()),Rt=!0),ft<0&&(J.push(function p(){return new t.vHH(3101,!1)}()),Rt=!0),Rt&&J.splice(Jt,0,g())}return{duration:Le,delay:ft,easing:Pt}}(ye,J,F)}function qe(ye,J={}){return Object.keys(ye).forEach(F=>{J[F]=ye[F]}),J}function ge(ye){const J=new Map;return Object.keys(ye).forEach(F=>{J.set(F,ye[F])}),J}function Ue(ye,J=new Map,F){if(F)for(let[X,Le]of F)J.set(X,Le);for(let[X,Le]of ye)J.set(X,Le);return J}function wt(ye,J,F){J.forEach((X,Le)=>{const ft=N(Le);F&&!F.has(Le)&&F.set(Le,ye.style[ft]),ye.style[ft]=X})}function De(ye,J){J.forEach((F,X)=>{const Le=N(X);ye.style[Le]=""})}function Pe(ye){return Array.isArray(ye)?1==ye.length?ye[0]:(0,h.vP)(ye):ye}const Ge=new RegExp("{{\\s*(.+?)\\s*}}","g");function Ke(ye){let J=[];if("string"==typeof ye){let F;for(;F=Ge.exec(ye);)J.push(F[1]);Ge.lastIndex=0}return J}function _e(ye,J,F){const X=ye.toString(),Le=X.replace(Ge,(ft,Pt)=>{let Rt=J[Pt];return null==Rt&&(F.push(function y(ye){return new t.vHH(3003,!1)}()),Rt=""),Rt.toString()});return Le==X?ye:Le}function it(ye){const J=[];let F=ye.next();for(;!F.done;)J.push(F.value),F=ye.next();return J}const b=/-+([a-z0-9])/g;function N(ye){return ye.replace(b,(...J)=>J[1].toUpperCase())}function he(ye,J,F){switch(J.type){case 7:return ye.visitTrigger(J,F);case 0:return ye.visitState(J,F);case 1:return ye.visitTransition(J,F);case 2:return ye.visitSequence(J,F);case 3:return ye.visitGroup(J,F);case 4:return ye.visitAnimate(J,F);case 5:return ye.visitKeyframes(J,F);case 6:return ye.visitStyle(J,F);case 8:return ye.visitReference(J,F);case 9:return ye.visitAnimateChild(J,F);case 10:return ye.visitAnimateRef(J,F);case 11:return ye.visitQuery(J,F);case 12:return ye.visitStagger(J,F);default:throw function T(ye){return new t.vHH(3004,!1)}()}}function Ce(ye,J){return window.getComputedStyle(ye)[J]}const Mn="*";function En(ye,J){const F=[];return"string"==typeof ye?ye.split(/\s*,\s*/).forEach(X=>function bn(ye,J,F){if(":"==ye[0]){const Jt=function Rn(ye,J){switch(ye){case":enter":return"void => *";case":leave":return"* => void";case":increment":return(F,X)=>parseFloat(X)>parseFloat(F);case":decrement":return(F,X)=>parseFloat(X) *"}}(ye,F);if("function"==typeof Jt)return void J.push(Jt);ye=Jt}const X=ye.match(/^(\*|[-\w]+)\s*()\s*(\*|[-\w]+)$/);if(null==X||X.length<4)return F.push(function V(ye){return new t.vHH(3015,!1)}()),J;const Le=X[1],ft=X[2],Pt=X[3];J.push(Wn(Le,Pt));"<"==ft[0]&&!(Le==Mn&&Pt==Mn)&&J.push(Wn(Pt,Le))}(X,F,J)):F.push(ye),F}const qn=new Set(["true","1"]),si=new Set(["false","0"]);function Wn(ye,J){const F=qn.has(ye)||si.has(ye),X=qn.has(J)||si.has(J);return(Le,ft)=>{let Pt=ye==Mn||ye==Le,Rt=J==Mn||J==ft;return!Pt&&F&&"boolean"==typeof Le&&(Pt=Le?qn.has(ye):si.has(ye)),!Rt&&X&&"boolean"==typeof ft&&(Rt=ft?qn.has(J):si.has(J)),Pt&&Rt}}const ri=new RegExp("s*:selfs*,?","g");function di(ye,J,F,X){return new fi(ye).build(J,F,X)}class fi{constructor(J){this._driver=J}build(J,F,X){const Le=new ei(F);return this._resetContextStyleTimingState(Le),he(this,Pe(J),Le)}_resetContextStyleTimingState(J){J.currentQuerySelector="",J.collectedStyles=new Map,J.collectedStyles.set("",new Map),J.currentTime=0}visitTrigger(J,F){let X=F.queryCount=0,Le=F.depCount=0;const ft=[],Pt=[];return"@"==J.name.charAt(0)&&F.errors.push(function D(){return new t.vHH(3006,!1)}()),J.definitions.forEach(Rt=>{if(this._resetContextStyleTimingState(F),0==Rt.type){const Jt=Rt,nn=Jt.name;nn.toString().split(/\s*,\s*/).forEach(Cn=>{Jt.name=Cn,ft.push(this.visitState(Jt,F))}),Jt.name=nn}else if(1==Rt.type){const Jt=this.visitTransition(Rt,F);X+=Jt.queryCount,Le+=Jt.depCount,Pt.push(Jt)}else F.errors.push(function _(){return new t.vHH(3007,!1)}())}),{type:7,name:J.name,states:ft,transitions:Pt,queryCount:X,depCount:Le,options:null}}visitState(J,F){const X=this.visitStyle(J.styles,F),Le=J.options&&J.options.params||null;if(X.containsDynamicStyles){const ft=new Set,Pt=Le||{};X.styles.forEach(Rt=>{Rt instanceof Map&&Rt.forEach(Jt=>{Ke(Jt).forEach(nn=>{Pt.hasOwnProperty(nn)||ft.add(nn)})})}),ft.size&&(it(ft.values()),F.errors.push(function P(ye,J){return new t.vHH(3008,!1)}()))}return{type:0,name:J.name,style:X,options:Le?{params:Le}:null}}visitTransition(J,F){F.queryCount=0,F.depCount=0;const X=he(this,Pe(J.animation),F);return{type:1,matchers:En(J.expr,F.errors),animation:X,queryCount:F.queryCount,depCount:F.depCount,options:Wi(J.options)}}visitSequence(J,F){return{type:2,steps:J.steps.map(X=>he(this,X,F)),options:Wi(J.options)}}visitGroup(J,F){const X=F.currentTime;let Le=0;const ft=J.steps.map(Pt=>{F.currentTime=X;const Rt=he(this,Pt,F);return Le=Math.max(Le,F.currentTime),Rt});return F.currentTime=Le,{type:3,steps:ft,options:Wi(J.options)}}visitAnimate(J,F){const X=function oo(ye,J){if(ye.hasOwnProperty("duration"))return ye;if("number"==typeof ye)return Ri(ke(ye,J).duration,0,"");const F=ye;if(F.split(/\s+/).some(ft=>"{"==ft.charAt(0)&&"{"==ft.charAt(1))){const ft=Ri(0,0,"");return ft.dynamic=!0,ft.strValue=F,ft}const Le=ke(F,J);return Ri(Le.duration,Le.delay,Le.easing)}(J.timings,F.errors);F.currentAnimateTimings=X;let Le,ft=J.styles?J.styles:(0,h.oB)({});if(5==ft.type)Le=this.visitKeyframes(ft,F);else{let Pt=J.styles,Rt=!1;if(!Pt){Rt=!0;const nn={};X.easing&&(nn.easing=X.easing),Pt=(0,h.oB)(nn)}F.currentTime+=X.duration+X.delay;const Jt=this.visitStyle(Pt,F);Jt.isEmptyStep=Rt,Le=Jt}return F.currentAnimateTimings=null,{type:4,timings:X,style:Le,options:null}}visitStyle(J,F){const X=this._makeStyleAst(J,F);return this._validateStyleAst(X,F),X}_makeStyleAst(J,F){const X=[],Le=Array.isArray(J.styles)?J.styles:[J.styles];for(let Rt of Le)"string"==typeof Rt?Rt===h.l3?X.push(Rt):F.errors.push(new t.vHH(3002,!1)):X.push(ge(Rt));let ft=!1,Pt=null;return X.forEach(Rt=>{if(Rt instanceof Map&&(Rt.has("easing")&&(Pt=Rt.get("easing"),Rt.delete("easing")),!ft))for(let Jt of Rt.values())if(Jt.toString().indexOf("{{")>=0){ft=!0;break}}),{type:6,styles:X,easing:Pt,offset:J.offset,containsDynamicStyles:ft,options:null}}_validateStyleAst(J,F){const X=F.currentAnimateTimings;let Le=F.currentTime,ft=F.currentTime;X&&ft>0&&(ft-=X.duration+X.delay),J.styles.forEach(Pt=>{"string"!=typeof Pt&&Pt.forEach((Rt,Jt)=>{const nn=F.collectedStyles.get(F.currentQuerySelector),Cn=nn.get(Jt);let Tn=!0;Cn&&(ft!=Le&&ft>=Cn.startTime&&Le<=Cn.endTime&&(F.errors.push(function k(ye,J,F,X,Le){return new t.vHH(3010,!1)}()),Tn=!1),ft=Cn.startTime),Tn&&nn.set(Jt,{startTime:ft,endTime:Le}),F.options&&function Je(ye,J,F){const X=J.params||{},Le=Ke(ye);Le.length&&Le.forEach(ft=>{X.hasOwnProperty(ft)||F.push(function f(ye){return new t.vHH(3001,!1)}())})}(Rt,F.options,F.errors)})})}visitKeyframes(J,F){const X={type:5,styles:[],options:null};if(!F.currentAnimateTimings)return F.errors.push(function R(){return new t.vHH(3011,!1)}()),X;let ft=0;const Pt=[];let Rt=!1,Jt=!1,nn=0;const Cn=J.steps.map(fo=>{const Ao=this._makeStyleAst(fo,F);let Mi=null!=Ao.offset?Ao.offset:function po(ye){if("string"==typeof ye)return null;let J=null;if(Array.isArray(ye))ye.forEach(F=>{if(F instanceof Map&&F.has("offset")){const X=F;J=parseFloat(X.get("offset")),X.delete("offset")}});else if(ye instanceof Map&&ye.has("offset")){const F=ye;J=parseFloat(F.get("offset")),F.delete("offset")}return J}(Ao.styles),No=0;return null!=Mi&&(ft++,No=Ao.offset=Mi),Jt=Jt||No<0||No>1,Rt=Rt||No0&&ft{const Mi=Xn>0?Ao==Hn?1:Xn*Ao:Pt[Ao],No=Mi*Di;F.currentTime=Vn+ii.delay+No,ii.duration=No,this._validateStyleAst(fo,F),fo.offset=Mi,X.styles.push(fo)}),X}visitReference(J,F){return{type:8,animation:he(this,Pe(J.animation),F),options:Wi(J.options)}}visitAnimateChild(J,F){return F.depCount++,{type:9,options:Wi(J.options)}}visitAnimateRef(J,F){return{type:10,animation:this.visitReference(J.animation,F),options:Wi(J.options)}}visitQuery(J,F){const X=F.currentQuerySelector,Le=J.options||{};F.queryCount++,F.currentQuery=J;const[ft,Pt]=function zi(ye){const J=!!ye.split(/\s*,\s*/).find(F=>":self"==F);return J&&(ye=ye.replace(ri,"")),ye=ye.replace(/@\*/g,et).replace(/@\w+/g,F=>et+"-"+F.slice(1)).replace(/:animating/g,Ot),[ye,J]}(J.selector);F.currentQuerySelector=X.length?X+" "+ft:ft,je(F.collectedStyles,F.currentQuerySelector,new Map);const Rt=he(this,Pe(J.animation),F);return F.currentQuery=null,F.currentQuerySelector=X,{type:11,selector:ft,limit:Le.limit||0,optional:!!Le.optional,includeSelf:Pt,animation:Rt,originalSelector:J.selector,options:Wi(J.options)}}visitStagger(J,F){F.currentQuery||F.errors.push(function Y(){return new t.vHH(3013,!1)}());const X="full"===J.timings?{duration:0,delay:0,easing:"full"}:ke(J.timings,F.errors,!0);return{type:12,animation:he(this,Pe(J.animation),F),timings:X,options:null}}}class ei{constructor(J){this.errors=J,this.queryCount=0,this.depCount=0,this.currentTransition=null,this.currentQuery=null,this.currentQuerySelector=null,this.currentAnimateTimings=null,this.currentTime=0,this.collectedStyles=new Map,this.options=null,this.unsupportedCSSPropertiesFound=new Set}}function Wi(ye){return ye?(ye=qe(ye)).params&&(ye.params=function Oi(ye){return ye?qe(ye):null}(ye.params)):ye={},ye}function Ri(ye,J,F){return{duration:ye,delay:J,easing:F}}function Li(ye,J,F,X,Le,ft,Pt=null,Rt=!1){return{type:1,element:ye,keyframes:J,preStyleProps:F,postStyleProps:X,duration:Le,delay:ft,totalTime:Le+ft,easing:Pt,subTimeline:Rt}}class $i{constructor(){this._map=new Map}get(J){return this._map.get(J)||[]}append(J,F){let X=this._map.get(J);X||this._map.set(J,X=[]),X.push(...F)}has(J){return this._map.has(J)}clear(){this._map.clear()}}const wi=new RegExp(":enter","g"),Ei=new RegExp(":leave","g");function Hi(ye,J,F,X,Le,ft=new Map,Pt=new Map,Rt,Jt,nn=[]){return(new qi).buildKeyframes(ye,J,F,X,Le,ft,Pt,Rt,Jt,nn)}class qi{buildKeyframes(J,F,X,Le,ft,Pt,Rt,Jt,nn,Cn=[]){nn=nn||new $i;const Tn=new Ii(J,F,nn,Le,ft,Cn,[]);Tn.options=Jt;const Xn=Jt.delay?xt(Jt.delay):0;Tn.currentTimeline.delayNextStep(Xn),Tn.currentTimeline.setStyles([Pt],null,Tn.errors,Jt),he(this,X,Tn);const Hn=Tn.timelines.filter(Vn=>Vn.containsAnimation());if(Hn.length&&Rt.size){let Vn;for(let ii=Hn.length-1;ii>=0;ii--){const Di=Hn[ii];if(Di.element===F){Vn=Di;break}}Vn&&!Vn.allowOnlyTimelineStyles()&&Vn.setStyles([Rt],null,Tn.errors,Jt)}return Hn.length?Hn.map(Vn=>Vn.buildKeyframes()):[Li(F,[],[],[],0,Xn,"",!1)]}visitTrigger(J,F){}visitState(J,F){}visitTransition(J,F){}visitAnimateChild(J,F){const X=F.subInstructions.get(F.element);if(X){const Le=F.createSubContext(J.options),ft=F.currentTimeline.currentTime,Pt=this._visitSubInstructions(X,Le,Le.options);ft!=Pt&&F.transformIntoNewTimeline(Pt)}F.previousNode=J}visitAnimateRef(J,F){const X=F.createSubContext(J.options);X.transformIntoNewTimeline(),this._applyAnimationRefDelays([J.options,J.animation.options],F,X),this.visitReference(J.animation,X),F.transformIntoNewTimeline(X.currentTimeline.currentTime),F.previousNode=J}_applyAnimationRefDelays(J,F,X){for(const Le of J){const ft=Le?.delay;if(ft){const Pt="number"==typeof ft?ft:xt(_e(ft,Le?.params??{},F.errors));X.delayNextStep(Pt)}}}_visitSubInstructions(J,F,X){let ft=F.currentTimeline.currentTime;const Pt=null!=X.duration?xt(X.duration):null,Rt=null!=X.delay?xt(X.delay):null;return 0!==Pt&&J.forEach(Jt=>{const nn=F.appendInstructionToTimeline(Jt,Pt,Rt);ft=Math.max(ft,nn.duration+nn.delay)}),ft}visitReference(J,F){F.updateOptions(J.options,!0),he(this,J.animation,F),F.previousNode=J}visitSequence(J,F){const X=F.subContextCount;let Le=F;const ft=J.options;if(ft&&(ft.params||ft.delay)&&(Le=F.createSubContext(ft),Le.transformIntoNewTimeline(),null!=ft.delay)){6==Le.previousNode.type&&(Le.currentTimeline.snapshotCurrentStyles(),Le.previousNode=Pi);const Pt=xt(ft.delay);Le.delayNextStep(Pt)}J.steps.length&&(J.steps.forEach(Pt=>he(this,Pt,Le)),Le.currentTimeline.applyStylesToKeyframe(),Le.subContextCount>X&&Le.transformIntoNewTimeline()),F.previousNode=J}visitGroup(J,F){const X=[];let Le=F.currentTimeline.currentTime;const ft=J.options&&J.options.delay?xt(J.options.delay):0;J.steps.forEach(Pt=>{const Rt=F.createSubContext(J.options);ft&&Rt.delayNextStep(ft),he(this,Pt,Rt),Le=Math.max(Le,Rt.currentTimeline.currentTime),X.push(Rt.currentTimeline)}),X.forEach(Pt=>F.currentTimeline.mergeTimelineCollectedStyles(Pt)),F.transformIntoNewTimeline(Le),F.previousNode=J}_visitTiming(J,F){if(J.dynamic){const X=J.strValue;return ke(F.params?_e(X,F.params,F.errors):X,F.errors)}return{duration:J.duration,delay:J.delay,easing:J.easing}}visitAnimate(J,F){const X=F.currentAnimateTimings=this._visitTiming(J.timings,F),Le=F.currentTimeline;X.delay&&(F.incrementTime(X.delay),Le.snapshotCurrentStyles());const ft=J.style;5==ft.type?this.visitKeyframes(ft,F):(F.incrementTime(X.duration),this.visitStyle(ft,F),Le.applyStylesToKeyframe()),F.currentAnimateTimings=null,F.previousNode=J}visitStyle(J,F){const X=F.currentTimeline,Le=F.currentAnimateTimings;!Le&&X.hasCurrentStyleProperties()&&X.forwardFrame();const ft=Le&&Le.easing||J.easing;J.isEmptyStep?X.applyEmptyStep(ft):X.setStyles(J.styles,ft,F.errors,F.options),F.previousNode=J}visitKeyframes(J,F){const X=F.currentAnimateTimings,Le=F.currentTimeline.duration,ft=X.duration,Rt=F.createSubContext().currentTimeline;Rt.easing=X.easing,J.styles.forEach(Jt=>{Rt.forwardTime((Jt.offset||0)*ft),Rt.setStyles(Jt.styles,Jt.easing,F.errors,F.options),Rt.applyStylesToKeyframe()}),F.currentTimeline.mergeTimelineCollectedStyles(Rt),F.transformIntoNewTimeline(Le+ft),F.previousNode=J}visitQuery(J,F){const X=F.currentTimeline.currentTime,Le=J.options||{},ft=Le.delay?xt(Le.delay):0;ft&&(6===F.previousNode.type||0==X&&F.currentTimeline.hasCurrentStyleProperties())&&(F.currentTimeline.snapshotCurrentStyles(),F.previousNode=Pi);let Pt=X;const Rt=F.invokeQuery(J.selector,J.originalSelector,J.limit,J.includeSelf,!!Le.optional,F.errors);F.currentQueryTotal=Rt.length;let Jt=null;Rt.forEach((nn,Cn)=>{F.currentQueryIndex=Cn;const Tn=F.createSubContext(J.options,nn);ft&&Tn.delayNextStep(ft),nn===F.element&&(Jt=Tn.currentTimeline),he(this,J.animation,Tn),Tn.currentTimeline.applyStylesToKeyframe(),Pt=Math.max(Pt,Tn.currentTimeline.currentTime)}),F.currentQueryIndex=0,F.currentQueryTotal=0,F.transformIntoNewTimeline(Pt),Jt&&(F.currentTimeline.mergeTimelineCollectedStyles(Jt),F.currentTimeline.snapshotCurrentStyles()),F.previousNode=J}visitStagger(J,F){const X=F.parentContext,Le=F.currentTimeline,ft=J.timings,Pt=Math.abs(ft.duration),Rt=Pt*(F.currentQueryTotal-1);let Jt=Pt*F.currentQueryIndex;switch(ft.duration<0?"reverse":ft.easing){case"reverse":Jt=Rt-Jt;break;case"full":Jt=X.currentStaggerTime}const Cn=F.currentTimeline;Jt&&Cn.delayNextStep(Jt);const Tn=Cn.currentTime;he(this,J.animation,F),F.previousNode=J,X.currentStaggerTime=Le.currentTime-Tn+(Le.startTime-X.currentTimeline.startTime)}}const Pi={};class Ii{constructor(J,F,X,Le,ft,Pt,Rt,Jt){this._driver=J,this.element=F,this.subInstructions=X,this._enterClassName=Le,this._leaveClassName=ft,this.errors=Pt,this.timelines=Rt,this.parentContext=null,this.currentAnimateTimings=null,this.previousNode=Pi,this.subContextCount=0,this.options={},this.currentQueryIndex=0,this.currentQueryTotal=0,this.currentStaggerTime=0,this.currentTimeline=Jt||new ki(this._driver,F,0),Rt.push(this.currentTimeline)}get params(){return this.options.params}updateOptions(J,F){if(!J)return;const X=J;let Le=this.options;null!=X.duration&&(Le.duration=xt(X.duration)),null!=X.delay&&(Le.delay=xt(X.delay));const ft=X.params;if(ft){let Pt=Le.params;Pt||(Pt=this.options.params={}),Object.keys(ft).forEach(Rt=>{(!F||!Pt.hasOwnProperty(Rt))&&(Pt[Rt]=_e(ft[Rt],Pt,this.errors))})}}_copyOptions(){const J={};if(this.options){const F=this.options.params;if(F){const X=J.params={};Object.keys(F).forEach(Le=>{X[Le]=F[Le]})}}return J}createSubContext(J=null,F,X){const Le=F||this.element,ft=new Ii(this._driver,Le,this.subInstructions,this._enterClassName,this._leaveClassName,this.errors,this.timelines,this.currentTimeline.fork(Le,X||0));return ft.previousNode=this.previousNode,ft.currentAnimateTimings=this.currentAnimateTimings,ft.options=this._copyOptions(),ft.updateOptions(J),ft.currentQueryIndex=this.currentQueryIndex,ft.currentQueryTotal=this.currentQueryTotal,ft.parentContext=this,this.subContextCount++,ft}transformIntoNewTimeline(J){return this.previousNode=Pi,this.currentTimeline=this.currentTimeline.fork(this.element,J),this.timelines.push(this.currentTimeline),this.currentTimeline}appendInstructionToTimeline(J,F,X){const Le={duration:F??J.duration,delay:this.currentTimeline.currentTime+(X??0)+J.delay,easing:""},ft=new oi(this._driver,J.element,J.keyframes,J.preStyleProps,J.postStyleProps,Le,J.stretchStartingKeyframe);return this.timelines.push(ft),Le}incrementTime(J){this.currentTimeline.forwardTime(this.currentTimeline.duration+J)}delayNextStep(J){J>0&&this.currentTimeline.delayNextStep(J)}invokeQuery(J,F,X,Le,ft,Pt){let Rt=[];if(Le&&Rt.push(this.element),J.length>0){J=(J=J.replace(wi,"."+this._enterClassName)).replace(Ei,"."+this._leaveClassName);let nn=this._driver.query(this.element,J,1!=X);0!==X&&(nn=X<0?nn.slice(nn.length+X,nn.length):nn.slice(0,X)),Rt.push(...nn)}return!ft&&0==Rt.length&&Pt.push(function G(ye){return new t.vHH(3014,!1)}()),Rt}}class ki{constructor(J,F,X,Le){this._driver=J,this.element=F,this.startTime=X,this._elementTimelineStylesLookup=Le,this.duration=0,this.easing=null,this._previousKeyframe=new Map,this._currentKeyframe=new Map,this._keyframes=new Map,this._styleSummary=new Map,this._localTimelineStyles=new Map,this._pendingStyles=new Map,this._backFill=new Map,this._currentEmptyStepKeyframe=null,this._elementTimelineStylesLookup||(this._elementTimelineStylesLookup=new Map),this._globalTimelineStyles=this._elementTimelineStylesLookup.get(F),this._globalTimelineStyles||(this._globalTimelineStyles=this._localTimelineStyles,this._elementTimelineStylesLookup.set(F,this._localTimelineStyles)),this._loadKeyframe()}containsAnimation(){switch(this._keyframes.size){case 0:return!1;case 1:return this.hasCurrentStyleProperties();default:return!0}}hasCurrentStyleProperties(){return this._currentKeyframe.size>0}get currentTime(){return this.startTime+this.duration}delayNextStep(J){const F=1===this._keyframes.size&&this._pendingStyles.size;this.duration||F?(this.forwardTime(this.currentTime+J),F&&this.snapshotCurrentStyles()):this.startTime+=J}fork(J,F){return this.applyStylesToKeyframe(),new ki(this._driver,J,F||this.currentTime,this._elementTimelineStylesLookup)}_loadKeyframe(){this._currentKeyframe&&(this._previousKeyframe=this._currentKeyframe),this._currentKeyframe=this._keyframes.get(this.duration),this._currentKeyframe||(this._currentKeyframe=new Map,this._keyframes.set(this.duration,this._currentKeyframe))}forwardFrame(){this.duration+=1,this._loadKeyframe()}forwardTime(J){this.applyStylesToKeyframe(),this.duration=J,this._loadKeyframe()}_updateStyle(J,F){this._localTimelineStyles.set(J,F),this._globalTimelineStyles.set(J,F),this._styleSummary.set(J,{time:this.currentTime,value:F})}allowOnlyTimelineStyles(){return this._currentEmptyStepKeyframe!==this._currentKeyframe}applyEmptyStep(J){J&&this._previousKeyframe.set("easing",J);for(let[F,X]of this._globalTimelineStyles)this._backFill.set(F,X||h.l3),this._currentKeyframe.set(F,h.l3);this._currentEmptyStepKeyframe=this._currentKeyframe}setStyles(J,F,X,Le){F&&this._previousKeyframe.set("easing",F);const ft=Le&&Le.params||{},Pt=function Et(ye,J){const F=new Map;let X;return ye.forEach(Le=>{if("*"===Le){X=X||J.keys();for(let ft of X)F.set(ft,h.l3)}else Ue(Le,F)}),F}(J,this._globalTimelineStyles);for(let[Rt,Jt]of Pt){const nn=_e(Jt,ft,X);this._pendingStyles.set(Rt,nn),this._localTimelineStyles.has(Rt)||this._backFill.set(Rt,this._globalTimelineStyles.get(Rt)??h.l3),this._updateStyle(Rt,nn)}}applyStylesToKeyframe(){0!=this._pendingStyles.size&&(this._pendingStyles.forEach((J,F)=>{this._currentKeyframe.set(F,J)}),this._pendingStyles.clear(),this._localTimelineStyles.forEach((J,F)=>{this._currentKeyframe.has(F)||this._currentKeyframe.set(F,J)}))}snapshotCurrentStyles(){for(let[J,F]of this._localTimelineStyles)this._pendingStyles.set(J,F),this._updateStyle(J,F)}getFinalKeyframe(){return this._keyframes.get(this.duration)}get properties(){const J=[];for(let F in this._currentKeyframe)J.push(F);return J}mergeTimelineCollectedStyles(J){J._styleSummary.forEach((F,X)=>{const Le=this._styleSummary.get(X);(!Le||F.time>Le.time)&&this._updateStyle(X,F.value)})}buildKeyframes(){this.applyStylesToKeyframe();const J=new Set,F=new Set,X=1===this._keyframes.size&&0===this.duration;let Le=[];this._keyframes.forEach((Rt,Jt)=>{const nn=Ue(Rt,new Map,this._backFill);nn.forEach((Cn,Tn)=>{Cn===h.k1?J.add(Tn):Cn===h.l3&&F.add(Tn)}),X||nn.set("offset",Jt/this.duration),Le.push(nn)});const ft=J.size?it(J.values()):[],Pt=F.size?it(F.values()):[];if(X){const Rt=Le[0],Jt=new Map(Rt);Rt.set("offset",0),Jt.set("offset",1),Le=[Rt,Jt]}return Li(this.element,Le,ft,Pt,this.duration,this.startTime,this.easing,!1)}}class oi extends ki{constructor(J,F,X,Le,ft,Pt,Rt=!1){super(J,F,Pt.delay),this.keyframes=X,this.preStyleProps=Le,this.postStyleProps=ft,this._stretchStartingKeyframe=Rt,this.timings={duration:Pt.duration,delay:Pt.delay,easing:Pt.easing}}containsAnimation(){return this.keyframes.length>1}buildKeyframes(){let J=this.keyframes,{delay:F,duration:X,easing:Le}=this.timings;if(this._stretchStartingKeyframe&&F){const ft=[],Pt=X+F,Rt=F/Pt,Jt=Ue(J[0]);Jt.set("offset",0),ft.push(Jt);const nn=Ue(J[0]);nn.set("offset",Bn(Rt)),ft.push(nn);const Cn=J.length-1;for(let Tn=1;Tn<=Cn;Tn++){let Xn=Ue(J[Tn]);const Hn=Xn.get("offset");Xn.set("offset",Bn((F+Hn*X)/Pt)),ft.push(Xn)}X=Pt,F=0,Le="",J=ft}return Li(this.element,J,this.preStyleProps,this.postStyleProps,X,F,Le,!0)}}function Bn(ye,J=3){const F=Math.pow(10,J-1);return Math.round(ye*F)/F}class lt{}const At=new Set(["width","height","minWidth","minHeight","maxWidth","maxHeight","left","top","bottom","right","fontSize","outlineWidth","outlineOffset","paddingTop","paddingLeft","paddingBottom","paddingRight","marginTop","marginLeft","marginBottom","marginRight","borderRadius","borderWidth","borderTopWidth","borderLeftWidth","borderRightWidth","borderBottomWidth","textIndent","perspective"]);class Qt extends lt{normalizePropertyName(J,F){return N(J)}normalizeStyleValue(J,F,X,Le){let ft="";const Pt=X.toString().trim();if(At.has(F)&&0!==X&&"0"!==X)if("number"==typeof X)ft="px";else{const Rt=X.match(/^[+-]?[\d\.]+([a-z]*)$/);Rt&&0==Rt[1].length&&Le.push(function x(ye,J){return new t.vHH(3005,!1)}())}return Pt+ft}}function gn(ye,J,F,X,Le,ft,Pt,Rt,Jt,nn,Cn,Tn,Xn){return{type:0,element:ye,triggerName:J,isRemovalTransition:Le,fromState:F,fromStyles:ft,toState:X,toStyles:Pt,timelines:Rt,queriedElements:Jt,preStyleProps:nn,postStyleProps:Cn,totalTime:Tn,errors:Xn}}const Ln={};class Sn{constructor(J,F,X){this._triggerName=J,this.ast=F,this._stateStyles=X}match(J,F,X,Le){return function St(ye,J,F,X,Le){return ye.some(ft=>ft(J,F,X,Le))}(this.ast.matchers,J,F,X,Le)}buildStyles(J,F,X){let Le=this._stateStyles.get("*");return void 0!==J&&(Le=this._stateStyles.get(J?.toString())||Le),Le?Le.buildStyles(F,X):new Map}build(J,F,X,Le,ft,Pt,Rt,Jt,nn,Cn){const Tn=[],Xn=this.ast.options&&this.ast.options.params||Ln,Vn=this.buildStyles(X,Rt&&Rt.params||Ln,Tn),ii=Jt&&Jt.params||Ln,Di=this.buildStyles(Le,ii,Tn),fo=new Set,Ao=new Map,Mi=new Map,No="void"===Le,Hs={params:gt(ii,Xn),delay:this.ast.options?.delay},Vs=Cn?[]:Hi(J,F,this.ast.animation,ft,Pt,Vn,Di,Hs,nn,Tn);let Ji=0;if(Vs.forEach(Us=>{Ji=Math.max(Us.duration+Us.delay,Ji)}),Tn.length)return gn(F,this._triggerName,X,Le,No,Vn,Di,[],[],Ao,Mi,Ji,Tn);Vs.forEach(Us=>{const ls=Us.element,Ar=je(Ao,ls,new Set);Us.preStyleProps.forEach(Nr=>Ar.add(Nr));const Qr=je(Mi,ls,new Set);Us.postStyleProps.forEach(Nr=>Qr.add(Nr)),ls!==F&&fo.add(ls)});const is=it(fo.values());return gn(F,this._triggerName,X,Le,No,Vn,Di,Vs,is,Ao,Mi,Ji)}}function gt(ye,J){const F=qe(J);for(const X in ye)ye.hasOwnProperty(X)&&null!=ye[X]&&(F[X]=ye[X]);return F}class We{constructor(J,F,X){this.styles=J,this.defaultParams=F,this.normalizer=X}buildStyles(J,F){const X=new Map,Le=qe(this.defaultParams);return Object.keys(J).forEach(ft=>{const Pt=J[ft];null!==Pt&&(Le[ft]=Pt)}),this.styles.styles.forEach(ft=>{"string"!=typeof ft&&ft.forEach((Pt,Rt)=>{Pt&&(Pt=_e(Pt,Le,F));const Jt=this.normalizer.normalizePropertyName(Rt,F);Pt=this.normalizer.normalizeStyleValue(Rt,Jt,Pt,F),X.set(Rt,Pt)})}),X}}class Kt{constructor(J,F,X){this.name=J,this.ast=F,this._normalizer=X,this.transitionFactories=[],this.states=new Map,F.states.forEach(Le=>{this.states.set(Le.name,new We(Le.style,Le.options&&Le.options.params||{},X))}),zn(this.states,"true","1"),zn(this.states,"false","0"),F.transitions.forEach(Le=>{this.transitionFactories.push(new Sn(J,Le,this.states))}),this.fallbackTransition=function ln(ye,J,F){return new Sn(ye,{type:1,animation:{type:2,steps:[],options:null},matchers:[(Pt,Rt)=>!0],options:null,queryCount:0,depCount:0},J)}(J,this.states)}get containsQueries(){return this.ast.queryCount>0}matchTransition(J,F,X,Le){return this.transitionFactories.find(Pt=>Pt.match(J,F,X,Le))||null}matchStyles(J,F,X){return this.fallbackTransition.buildStyles(J,F,X)}}function zn(ye,J,F){ye.has(J)?ye.has(F)||ye.set(F,ye.get(J)):ye.has(F)&&ye.set(J,ye.get(F))}const kn=new $i;class Qn{constructor(J,F,X){this.bodyNode=J,this._driver=F,this._normalizer=X,this._animations=new Map,this._playersById=new Map,this.players=[]}register(J,F){const X=[],ft=di(this._driver,F,X,[]);if(X.length)throw function be(ye){return new t.vHH(3503,!1)}();this._animations.set(J,ft)}_buildPlayer(J,F,X){const Le=J.element,ft=Re(this._normalizer,J.keyframes,F,X);return this._driver.animate(Le,ft,J.duration,J.delay,J.easing,[],!0)}create(J,F,X={}){const Le=[],ft=this._animations.get(J);let Pt;const Rt=new Map;if(ft?(Pt=Hi(this._driver,F,ft,Vt,st,new Map,new Map,X,kn,Le),Pt.forEach(Cn=>{const Tn=je(Rt,Cn.element,new Map);Cn.postStyleProps.forEach(Xn=>Tn.set(Xn,null))})):(Le.push(function le(){return new t.vHH(3300,!1)}()),Pt=[]),Le.length)throw function ce(ye){return new t.vHH(3504,!1)}();Rt.forEach((Cn,Tn)=>{Cn.forEach((Xn,Hn)=>{Cn.set(Hn,this._driver.computeStyle(Tn,Hn,h.l3))})});const nn=Be(Pt.map(Cn=>{const Tn=Rt.get(Cn.element);return this._buildPlayer(Cn,new Map,Tn)}));return this._playersById.set(J,nn),nn.onDestroy(()=>this.destroy(J)),this.players.push(nn),nn}destroy(J){const F=this._getPlayer(J);F.destroy(),this._playersById.delete(J);const X=this.players.indexOf(F);X>=0&&this.players.splice(X,1)}_getPlayer(J){const F=this._playersById.get(J);if(!F)throw function Q(ye){return new t.vHH(3301,!1)}();return F}listen(J,F,X,Le){const ft=Mt(F,"","","");return ct(this._getPlayer(J),X,ft,Le),()=>{}}command(J,F,X,Le){if("register"==X)return void this.register(J,Le[0]);if("create"==X)return void this.create(J,F,Le[0]||{});const ft=this._getPlayer(J);switch(X){case"play":ft.play();break;case"pause":ft.pause();break;case"reset":ft.reset();break;case"restart":ft.restart();break;case"finish":ft.finish();break;case"init":ft.init();break;case"setPosition":ft.setPosition(parseFloat(Le[0]));break;case"destroy":this.destroy(J)}}}const ui="ng-animate-queued",Ui="ng-animate-disabled",xo=[],Ti={namespaceId:"",setForRemoval:!1,setForMove:!1,hasAnimation:!1,removedBeforeQueried:!1},qo={namespaceId:"",setForMove:!1,setForRemoval:!1,hasAnimation:!1,removedBeforeQueried:!0},so="__ng_removed";class ro{get params(){return this.options.params}constructor(J,F=""){this.namespaceId=F;const X=J&&J.hasOwnProperty("value");if(this.value=function Jn(ye){return ye??null}(X?J.value:J),X){const ft=qe(J);delete ft.value,this.options=ft}else this.options={};this.options.params||(this.options.params={})}absorbOptions(J){const F=J.params;if(F){const X=this.options.params;Object.keys(F).forEach(Le=>{null==X[Le]&&(X[Le]=F[Le])})}}}const So="void",ps=new ro(So);class vo{constructor(J,F,X){this.id=J,this.hostElement=F,this._engine=X,this.players=[],this._triggers=new Map,this._queue=[],this._elementListeners=new Map,this._hostClassName="ng-tns-"+J,Fi(F,this._hostClassName)}listen(J,F,X,Le){if(!this._triggers.has(F))throw function ie(ye,J){return new t.vHH(3302,!1)}();if(null==X||0==X.length)throw function ae(ye){return new t.vHH(3303,!1)}();if(!function es(ye){return"start"==ye||"done"==ye}(X))throw function xe(ye,J){return new t.vHH(3400,!1)}();const ft=je(this._elementListeners,J,[]),Pt={name:F,phase:X,callback:Le};ft.push(Pt);const Rt=je(this._engine.statesByElement,J,new Map);return Rt.has(F)||(Fi(J,He),Fi(J,He+"-"+F),Rt.set(F,ps)),()=>{this._engine.afterFlush(()=>{const Jt=ft.indexOf(Pt);Jt>=0&&ft.splice(Jt,1),this._triggers.has(F)||Rt.delete(F)})}}register(J,F){return!this._triggers.has(J)&&(this._triggers.set(J,F),!0)}_getTrigger(J){const F=this._triggers.get(J);if(!F)throw function Me(ye){return new t.vHH(3401,!1)}();return F}trigger(J,F,X,Le=!0){const ft=this._getTrigger(F),Pt=new Oo(this.id,F,J);let Rt=this._engine.statesByElement.get(J);Rt||(Fi(J,He),Fi(J,He+"-"+F),this._engine.statesByElement.set(J,Rt=new Map));let Jt=Rt.get(F);const nn=new ro(X,this.id);if(!(X&&X.hasOwnProperty("value"))&&Jt&&nn.absorbOptions(Jt.options),Rt.set(F,nn),Jt||(Jt=ps),nn.value!==So&&Jt.value===nn.value){if(!function Gt(ye,J){const F=Object.keys(ye),X=Object.keys(J);if(F.length!=X.length)return!1;for(let Le=0;Le{De(J,Di),wt(J,fo)})}return}const Xn=je(this._engine.playersByElement,J,[]);Xn.forEach(ii=>{ii.namespaceId==this.id&&ii.triggerName==F&&ii.queued&&ii.destroy()});let Hn=ft.matchTransition(Jt.value,nn.value,J,nn.params),Vn=!1;if(!Hn){if(!Le)return;Hn=ft.fallbackTransition,Vn=!0}return this._engine.totalQueuedPlayers++,this._queue.push({element:J,triggerName:F,transition:Hn,fromState:Jt,toState:nn,player:Pt,isFallbackTransition:Vn}),Vn||(Fi(J,ui),Pt.onStart(()=>{lo(J,ui)})),Pt.onDone(()=>{let ii=this.players.indexOf(Pt);ii>=0&&this.players.splice(ii,1);const Di=this._engine.playersByElement.get(J);if(Di){let fo=Di.indexOf(Pt);fo>=0&&Di.splice(fo,1)}}),this.players.push(Pt),Xn.push(Pt),Pt}deregister(J){this._triggers.delete(J),this._engine.statesByElement.forEach(F=>F.delete(J)),this._elementListeners.forEach((F,X)=>{this._elementListeners.set(X,F.filter(Le=>Le.name!=J))})}clearElementCache(J){this._engine.statesByElement.delete(J),this._elementListeners.delete(J);const F=this._engine.playersByElement.get(J);F&&(F.forEach(X=>X.destroy()),this._engine.playersByElement.delete(J))}_signalRemovalForInnerTriggers(J,F){const X=this._engine.driver.query(J,et,!0);X.forEach(Le=>{if(Le[so])return;const ft=this._engine.fetchNamespacesByElement(Le);ft.size?ft.forEach(Pt=>Pt.triggerLeaveAnimation(Le,F,!1,!0)):this.clearElementCache(Le)}),this._engine.afterFlushAnimationsDone(()=>X.forEach(Le=>this.clearElementCache(Le)))}triggerLeaveAnimation(J,F,X,Le){const ft=this._engine.statesByElement.get(J),Pt=new Map;if(ft){const Rt=[];if(ft.forEach((Jt,nn)=>{if(Pt.set(nn,Jt.value),this._triggers.has(nn)){const Cn=this.trigger(J,nn,So,Le);Cn&&Rt.push(Cn)}}),Rt.length)return this._engine.markElementAsRemoved(this.id,J,!0,F,Pt),X&&Be(Rt).onDone(()=>this._engine.processLeaveNode(J)),!0}return!1}prepareLeaveAnimationListeners(J){const F=this._elementListeners.get(J),X=this._engine.statesByElement.get(J);if(F&&X){const Le=new Set;F.forEach(ft=>{const Pt=ft.name;if(Le.has(Pt))return;Le.add(Pt);const Jt=this._triggers.get(Pt).fallbackTransition,nn=X.get(Pt)||ps,Cn=new ro(So),Tn=new Oo(this.id,Pt,J);this._engine.totalQueuedPlayers++,this._queue.push({element:J,triggerName:Pt,transition:Jt,fromState:nn,toState:Cn,player:Tn,isFallbackTransition:!0})})}}removeNode(J,F){const X=this._engine;if(J.childElementCount&&this._signalRemovalForInnerTriggers(J,F),this.triggerLeaveAnimation(J,F,!0))return;let Le=!1;if(X.totalAnimations){const ft=X.players.length?X.playersByQueriedElement.get(J):[];if(ft&&ft.length)Le=!0;else{let Pt=J;for(;Pt=Pt.parentNode;)if(X.statesByElement.get(Pt)){Le=!0;break}}}if(this.prepareLeaveAnimationListeners(J),Le)X.markElementAsRemoved(this.id,J,!1,F);else{const ft=J[so];(!ft||ft===Ti)&&(X.afterFlush(()=>this.clearElementCache(J)),X.destroyInnerAnimations(J),X._onRemovalComplete(J,F))}}insertNode(J,F){Fi(J,this._hostClassName)}drainQueuedTransitions(J){const F=[];return this._queue.forEach(X=>{const Le=X.player;if(Le.destroyed)return;const ft=X.element,Pt=this._elementListeners.get(ft);Pt&&Pt.forEach(Rt=>{if(Rt.name==X.triggerName){const Jt=Mt(ft,X.triggerName,X.fromState.value,X.toState.value);Jt._data=J,ct(X.player,Rt.phase,Jt,Rt.callback)}}),Le.markedForDestroy?this._engine.afterFlush(()=>{Le.destroy()}):F.push(X)}),this._queue=[],F.sort((X,Le)=>{const ft=X.transition.ast.depCount,Pt=Le.transition.ast.depCount;return 0==ft||0==Pt?ft-Pt:this._engine.driver.containsElement(X.element,Le.element)?1:-1})}destroy(J){this.players.forEach(F=>F.destroy()),this._signalRemovalForInnerTriggers(this.hostElement,J)}}class ao{_onRemovalComplete(J,F){this.onRemovalComplete(J,F)}constructor(J,F,X){this.bodyNode=J,this.driver=F,this._normalizer=X,this.players=[],this.newHostElements=new Map,this.playersByElement=new Map,this.playersByQueriedElement=new Map,this.statesByElement=new Map,this.disabledNodes=new Set,this.totalAnimations=0,this.totalQueuedPlayers=0,this._namespaceLookup={},this._namespaceList=[],this._flushFns=[],this._whenQuietFns=[],this.namespacesByHostElement=new Map,this.collectedEnterElements=[],this.collectedLeaveElements=[],this.onRemovalComplete=(Le,ft)=>{}}get queuedPlayers(){const J=[];return this._namespaceList.forEach(F=>{F.players.forEach(X=>{X.queued&&J.push(X)})}),J}createNamespace(J,F){const X=new vo(J,F,this);return this.bodyNode&&this.driver.containsElement(this.bodyNode,F)?this._balanceNamespaceList(X,F):(this.newHostElements.set(F,X),this.collectEnterElement(F)),this._namespaceLookup[J]=X}_balanceNamespaceList(J,F){const X=this._namespaceList,Le=this.namespacesByHostElement;if(X.length-1>=0){let Pt=!1,Rt=this.driver.getParentElement(F);for(;Rt;){const Jt=Le.get(Rt);if(Jt){const nn=X.indexOf(Jt);X.splice(nn+1,0,J),Pt=!0;break}Rt=this.driver.getParentElement(Rt)}Pt||X.unshift(J)}else X.push(J);return Le.set(F,J),J}register(J,F){let X=this._namespaceLookup[J];return X||(X=this.createNamespace(J,F)),X}registerTrigger(J,F,X){let Le=this._namespaceLookup[J];Le&&Le.register(F,X)&&this.totalAnimations++}destroy(J,F){J&&(this.afterFlush(()=>{}),this.afterFlushAnimationsDone(()=>{const X=this._fetchNamespace(J);this.namespacesByHostElement.delete(X.hostElement);const Le=this._namespaceList.indexOf(X);Le>=0&&this._namespaceList.splice(Le,1),X.destroy(F),delete this._namespaceLookup[J]}))}_fetchNamespace(J){return this._namespaceLookup[J]}fetchNamespacesByElement(J){const F=new Set,X=this.statesByElement.get(J);if(X)for(let Le of X.values())if(Le.namespaceId){const ft=this._fetchNamespace(Le.namespaceId);ft&&F.add(ft)}return F}trigger(J,F,X,Le){if(to(F)){const ft=this._fetchNamespace(J);if(ft)return ft.trigger(F,X,Le),!0}return!1}insertNode(J,F,X,Le){if(!to(F))return;const ft=F[so];if(ft&&ft.setForRemoval){ft.setForRemoval=!1,ft.setForMove=!0;const Pt=this.collectedLeaveElements.indexOf(F);Pt>=0&&this.collectedLeaveElements.splice(Pt,1)}if(J){const Pt=this._fetchNamespace(J);Pt&&Pt.insertNode(F,X)}Le&&this.collectEnterElement(F)}collectEnterElement(J){this.collectedEnterElements.push(J)}markElementAsDisabled(J,F){F?this.disabledNodes.has(J)||(this.disabledNodes.add(J),Fi(J,Ui)):this.disabledNodes.has(J)&&(this.disabledNodes.delete(J),lo(J,Ui))}removeNode(J,F,X){if(to(F)){const Le=J?this._fetchNamespace(J):null;Le?Le.removeNode(F,X):this.markElementAsRemoved(J,F,!1,X);const ft=this.namespacesByHostElement.get(F);ft&&ft.id!==J&&ft.removeNode(F,X)}else this._onRemovalComplete(F,X)}markElementAsRemoved(J,F,X,Le,ft){this.collectedLeaveElements.push(F),F[so]={namespaceId:J,setForRemoval:Le,hasAnimation:X,removedBeforeQueried:!1,previousTriggersValues:ft}}listen(J,F,X,Le,ft){return to(F)?this._fetchNamespace(J).listen(F,X,Le,ft):()=>{}}_buildInstruction(J,F,X,Le,ft){return J.transition.build(this.driver,J.element,J.fromState.value,J.toState.value,X,Le,J.fromState.options,J.toState.options,F,ft)}destroyInnerAnimations(J){let F=this.driver.query(J,et,!0);F.forEach(X=>this.destroyActiveAnimationsForElement(X)),0!=this.playersByQueriedElement.size&&(F=this.driver.query(J,Ot,!0),F.forEach(X=>this.finishActiveQueriedAnimationOnElement(X)))}destroyActiveAnimationsForElement(J){const F=this.playersByElement.get(J);F&&F.forEach(X=>{X.queued?X.markedForDestroy=!0:X.destroy()})}finishActiveQueriedAnimationOnElement(J){const F=this.playersByQueriedElement.get(J);F&&F.forEach(X=>X.finish())}whenRenderingDone(){return new Promise(J=>{if(this.players.length)return Be(this.players).onDone(()=>J());J()})}processLeaveNode(J){const F=J[so];if(F&&F.setForRemoval){if(J[so]=Ti,F.namespaceId){this.destroyInnerAnimations(J);const X=this._fetchNamespace(F.namespaceId);X&&X.clearElementCache(J)}this._onRemovalComplete(J,F.setForRemoval)}J.classList?.contains(Ui)&&this.markElementAsDisabled(J,!1),this.driver.query(J,".ng-animate-disabled",!0).forEach(X=>{this.markElementAsDisabled(X,!1)})}flush(J=-1){let F=[];if(this.newHostElements.size&&(this.newHostElements.forEach((X,Le)=>this._balanceNamespaceList(X,Le)),this.newHostElements.clear()),this.totalAnimations&&this.collectedEnterElements.length)for(let X=0;XX()),this._flushFns=[],this._whenQuietFns.length){const X=this._whenQuietFns;this._whenQuietFns=[],F.length?Be(F).onDone(()=>{X.forEach(Le=>Le())}):X.forEach(Le=>Le())}}reportError(J){throw function Ye(ye){return new t.vHH(3402,!1)}()}_flushAnimations(J,F){const X=new $i,Le=[],ft=new Map,Pt=[],Rt=new Map,Jt=new Map,nn=new Map,Cn=new Set;this.disabledNodes.forEach(On=>{Cn.add(On);const $n=this.driver.query(On,".ng-animate-queued",!0);for(let Kn=0;Kn<$n.length;Kn++)Cn.add($n[Kn])});const Tn=this.bodyNode,Xn=Array.from(this.statesByElement.keys()),Hn=Ro(Xn,this.collectedEnterElements),Vn=new Map;let ii=0;Hn.forEach((On,$n)=>{const Kn=Vt+ii++;Vn.set($n,Kn),On.forEach(Si=>Fi(Si,Kn))});const Di=[],fo=new Set,Ao=new Set;for(let On=0;Onfo.add(Si)):Ao.add($n))}const Mi=new Map,No=Ro(Xn,Array.from(fo));No.forEach((On,$n)=>{const Kn=st+ii++;Mi.set($n,Kn),On.forEach(Si=>Fi(Si,Kn))}),J.push(()=>{Hn.forEach((On,$n)=>{const Kn=Vn.get($n);On.forEach(Si=>lo(Si,Kn))}),No.forEach((On,$n)=>{const Kn=Mi.get($n);On.forEach(Si=>lo(Si,Kn))}),Di.forEach(On=>{this.processLeaveNode(On)})});const Hs=[],Vs=[];for(let On=this._namespaceList.length-1;On>=0;On--)this._namespaceList[On].drainQueuedTransitions(F).forEach(Kn=>{const Si=Kn.player,bo=Kn.element;if(Hs.push(Si),this.collectedEnterElements.length){const ko=bo[so];if(ko&&ko.setForMove){if(ko.previousTriggersValues&&ko.previousTriggersValues.has(Kn.triggerName)){const Ys=ko.previousTriggersValues.get(Kn.triggerName),ds=this.statesByElement.get(Kn.element);if(ds&&ds.has(Kn.triggerName)){const gr=ds.get(Kn.triggerName);gr.value=Ys,ds.set(Kn.triggerName,gr)}}return void Si.destroy()}}const Ds=!Tn||!this.driver.containsElement(Tn,bo),cs=Mi.get(bo),Qs=Vn.get(bo),mo=this._buildInstruction(Kn,X,Qs,cs,Ds);if(mo.errors&&mo.errors.length)return void Vs.push(mo);if(Ds)return Si.onStart(()=>De(bo,mo.fromStyles)),Si.onDestroy(()=>wt(bo,mo.toStyles)),void Le.push(Si);if(Kn.isFallbackTransition)return Si.onStart(()=>De(bo,mo.fromStyles)),Si.onDestroy(()=>wt(bo,mo.toStyles)),void Le.push(Si);const oc=[];mo.timelines.forEach(ko=>{ko.stretchStartingKeyframe=!0,this.disabledNodes.has(ko.element)||oc.push(ko)}),mo.timelines=oc,X.append(bo,mo.timelines),Pt.push({instruction:mo,player:Si,element:bo}),mo.queriedElements.forEach(ko=>je(Rt,ko,[]).push(Si)),mo.preStyleProps.forEach((ko,Ys)=>{if(ko.size){let ds=Jt.get(Ys);ds||Jt.set(Ys,ds=new Set),ko.forEach((gr,Xr)=>ds.add(Xr))}}),mo.postStyleProps.forEach((ko,Ys)=>{let ds=nn.get(Ys);ds||nn.set(Ys,ds=new Set),ko.forEach((gr,Xr)=>ds.add(Xr))})});if(Vs.length){const On=[];Vs.forEach($n=>{On.push(function ve(ye,J){return new t.vHH(3505,!1)}())}),Hs.forEach($n=>$n.destroy()),this.reportError(On)}const Ji=new Map,is=new Map;Pt.forEach(On=>{const $n=On.element;X.has($n)&&(is.set($n,$n),this._beforeAnimationBuild(On.player.namespaceId,On.instruction,Ji))}),Le.forEach(On=>{const $n=On.element;this._getPreviousPlayers($n,!1,On.namespaceId,On.triggerName,null).forEach(Si=>{je(Ji,$n,[]).push(Si),Si.destroy()})});const Us=Di.filter(On=>Z(On,Jt,nn)),ls=new Map;ji(ls,this.driver,Ao,nn,h.l3).forEach(On=>{Z(On,Jt,nn)&&Us.push(On)});const Qr=new Map;Hn.forEach((On,$n)=>{ji(Qr,this.driver,new Set(On),Jt,h.k1)}),Us.forEach(On=>{const $n=ls.get(On),Kn=Qr.get(On);ls.set(On,new Map([...$n?.entries()??[],...Kn?.entries()??[]]))});const Nr=[],ic=[],md={};Pt.forEach(On=>{const{element:$n,player:Kn,instruction:Si}=On;if(X.has($n)){if(Cn.has($n))return Kn.onDestroy(()=>wt($n,Si.toStyles)),Kn.disabled=!0,Kn.overrideTotalTime(Si.totalTime),void Le.push(Kn);let bo=md;if(is.size>1){let cs=$n;const Qs=[];for(;cs=cs.parentNode;){const mo=is.get(cs);if(mo){bo=mo;break}Qs.push(cs)}Qs.forEach(mo=>is.set(mo,bo))}const Ds=this._buildAnimation(Kn.namespaceId,Si,Ji,ft,Qr,ls);if(Kn.setRealPlayer(Ds),bo===md)Nr.push(Kn);else{const cs=this.playersByElement.get(bo);cs&&cs.length&&(Kn.parentPlayer=Be(cs)),Le.push(Kn)}}else De($n,Si.fromStyles),Kn.onDestroy(()=>wt($n,Si.toStyles)),ic.push(Kn),Cn.has($n)&&Le.push(Kn)}),ic.forEach(On=>{const $n=ft.get(On.element);if($n&&$n.length){const Kn=Be($n);On.setRealPlayer(Kn)}}),Le.forEach(On=>{On.parentPlayer?On.syncPlayerEvents(On.parentPlayer):On.destroy()});for(let On=0;On!Ds.destroyed);bo.length?Ai(this,$n,bo):this.processLeaveNode($n)}return Di.length=0,Nr.forEach(On=>{this.players.push(On),On.onDone(()=>{On.destroy();const $n=this.players.indexOf(On);this.players.splice($n,1)}),On.play()}),Nr}afterFlush(J){this._flushFns.push(J)}afterFlushAnimationsDone(J){this._whenQuietFns.push(J)}_getPreviousPlayers(J,F,X,Le,ft){let Pt=[];if(F){const Rt=this.playersByQueriedElement.get(J);Rt&&(Pt=Rt)}else{const Rt=this.playersByElement.get(J);if(Rt){const Jt=!ft||ft==So;Rt.forEach(nn=>{nn.queued||!Jt&&nn.triggerName!=Le||Pt.push(nn)})}}return(X||Le)&&(Pt=Pt.filter(Rt=>!(X&&X!=Rt.namespaceId||Le&&Le!=Rt.triggerName))),Pt}_beforeAnimationBuild(J,F,X){const ft=F.element,Pt=F.isRemovalTransition?void 0:J,Rt=F.isRemovalTransition?void 0:F.triggerName;for(const Jt of F.timelines){const nn=Jt.element,Cn=nn!==ft,Tn=je(X,nn,[]);this._getPreviousPlayers(nn,Cn,Pt,Rt,F.toState).forEach(Hn=>{const Vn=Hn.getRealPlayer();Vn.beforeDestroy&&Vn.beforeDestroy(),Hn.destroy(),Tn.push(Hn)})}De(ft,F.fromStyles)}_buildAnimation(J,F,X,Le,ft,Pt){const Rt=F.triggerName,Jt=F.element,nn=[],Cn=new Set,Tn=new Set,Xn=F.timelines.map(Vn=>{const ii=Vn.element;Cn.add(ii);const Di=ii[so];if(Di&&Di.removedBeforeQueried)return new h.ZN(Vn.duration,Vn.delay);const fo=ii!==Jt,Ao=function Os(ye){const J=[];return rt(ye,J),J}((X.get(ii)||xo).map(Ji=>Ji.getRealPlayer())).filter(Ji=>!!Ji.element&&Ji.element===ii),Mi=ft.get(ii),No=Pt.get(ii),Hs=Re(this._normalizer,Vn.keyframes,Mi,No),Vs=this._buildPlayer(Vn,Hs,Ao);if(Vn.subTimeline&&Le&&Tn.add(ii),fo){const Ji=new Oo(J,Rt,ii);Ji.setRealPlayer(Vs),nn.push(Ji)}return Vs});nn.forEach(Vn=>{je(this.playersByQueriedElement,Vn.element,[]).push(Vn),Vn.onDone(()=>function Wo(ye,J,F){let X=ye.get(J);if(X){if(X.length){const Le=X.indexOf(F);X.splice(Le,1)}0==X.length&&ye.delete(J)}return X}(this.playersByQueriedElement,Vn.element,Vn))}),Cn.forEach(Vn=>Fi(Vn,It));const Hn=Be(Xn);return Hn.onDestroy(()=>{Cn.forEach(Vn=>lo(Vn,It)),wt(Jt,F.toStyles)}),Tn.forEach(Vn=>{je(Le,Vn,[]).push(Hn)}),Hn}_buildPlayer(J,F,X){return F.length>0?this.driver.animate(J.element,F,J.duration,J.delay,J.easing,X):new h.ZN(J.duration,J.delay)}}class Oo{constructor(J,F,X){this.namespaceId=J,this.triggerName=F,this.element=X,this._player=new h.ZN,this._containsRealPlayer=!1,this._queuedCallbacks=new Map,this.destroyed=!1,this.parentPlayer=null,this.markedForDestroy=!1,this.disabled=!1,this.queued=!0,this.totalTime=0}setRealPlayer(J){this._containsRealPlayer||(this._player=J,this._queuedCallbacks.forEach((F,X)=>{F.forEach(Le=>ct(J,X,void 0,Le))}),this._queuedCallbacks.clear(),this._containsRealPlayer=!0,this.overrideTotalTime(J.totalTime),this.queued=!1)}getRealPlayer(){return this._player}overrideTotalTime(J){this.totalTime=J}syncPlayerEvents(J){const F=this._player;F.triggerCallback&&J.onStart(()=>F.triggerCallback("start")),J.onDone(()=>this.finish()),J.onDestroy(()=>this.destroy())}_queueEvent(J,F){je(this._queuedCallbacks,J,[]).push(F)}onDone(J){this.queued&&this._queueEvent("done",J),this._player.onDone(J)}onStart(J){this.queued&&this._queueEvent("start",J),this._player.onStart(J)}onDestroy(J){this.queued&&this._queueEvent("destroy",J),this._player.onDestroy(J)}init(){this._player.init()}hasStarted(){return!this.queued&&this._player.hasStarted()}play(){!this.queued&&this._player.play()}pause(){!this.queued&&this._player.pause()}restart(){!this.queued&&this._player.restart()}finish(){this._player.finish()}destroy(){this.destroyed=!0,this._player.destroy()}reset(){!this.queued&&this._player.reset()}setPosition(J){this.queued||this._player.setPosition(J)}getPosition(){return this.queued?0:this._player.getPosition()}triggerCallback(J){const F=this._player;F.triggerCallback&&F.triggerCallback(J)}}function to(ye){return ye&&1===ye.nodeType}function no(ye,J){const F=ye.style.display;return ye.style.display=J??"none",F}function ji(ye,J,F,X,Le){const ft=[];F.forEach(Jt=>ft.push(no(Jt)));const Pt=[];X.forEach((Jt,nn)=>{const Cn=new Map;Jt.forEach(Tn=>{const Xn=J.computeStyle(nn,Tn,Le);Cn.set(Tn,Xn),(!Xn||0==Xn.length)&&(nn[so]=qo,Pt.push(nn))}),ye.set(nn,Cn)});let Rt=0;return F.forEach(Jt=>no(Jt,ft[Rt++])),Pt}function Ro(ye,J){const F=new Map;if(ye.forEach(Rt=>F.set(Rt,[])),0==J.length)return F;const Le=new Set(J),ft=new Map;function Pt(Rt){if(!Rt)return 1;let Jt=ft.get(Rt);if(Jt)return Jt;const nn=Rt.parentNode;return Jt=F.has(nn)?nn:Le.has(nn)?1:Pt(nn),ft.set(Rt,Jt),Jt}return J.forEach(Rt=>{const Jt=Pt(Rt);1!==Jt&&F.get(Jt).push(Rt)}),F}function Fi(ye,J){ye.classList?.add(J)}function lo(ye,J){ye.classList?.remove(J)}function Ai(ye,J,F){Be(F).onDone(()=>ye.processLeaveNode(J))}function rt(ye,J){for(let F=0;FLe.add(ft)):J.set(ye,X),F.delete(ye),!0}class dt{constructor(J,F,X){this.bodyNode=J,this._driver=F,this._normalizer=X,this._triggerCache={},this.onRemovalComplete=(Le,ft)=>{},this._transitionEngine=new ao(J,F,X),this._timelineEngine=new Qn(J,F,X),this._transitionEngine.onRemovalComplete=(Le,ft)=>this.onRemovalComplete(Le,ft)}registerTrigger(J,F,X,Le,ft){const Pt=J+"-"+Le;let Rt=this._triggerCache[Pt];if(!Rt){const Jt=[],Cn=di(this._driver,ft,Jt,[]);if(Jt.length)throw function fe(ye,J){return new t.vHH(3404,!1)}();Rt=function Nt(ye,J,F){return new Kt(ye,J,F)}(Le,Cn,this._normalizer),this._triggerCache[Pt]=Rt}this._transitionEngine.registerTrigger(F,Le,Rt)}register(J,F){this._transitionEngine.register(J,F)}destroy(J,F){this._transitionEngine.destroy(J,F)}onInsert(J,F,X,Le){this._transitionEngine.insertNode(J,F,X,Le)}onRemove(J,F,X){this._transitionEngine.removeNode(J,F,X)}disableAnimations(J,F){this._transitionEngine.markElementAsDisabled(J,F)}process(J,F,X,Le){if("@"==X.charAt(0)){const[ft,Pt]=ot(X);this._timelineEngine.command(ft,F,Pt,Le)}else this._transitionEngine.trigger(J,F,X,Le)}listen(J,F,X,Le,ft){if("@"==X.charAt(0)){const[Pt,Rt]=ot(X);return this._timelineEngine.listen(Pt,F,Rt,ft)}return this._transitionEngine.listen(J,F,X,Le,ft)}flush(J=-1){this._transitionEngine.flush(J)}get players(){return[...this._transitionEngine.players,...this._timelineEngine.players]}whenRenderingDone(){return this._transitionEngine.whenRenderingDone()}afterFlushAnimationsDone(J){this._transitionEngine.afterFlushAnimationsDone(J)}}let $t=(()=>{class ye{static#e=this.initialStylesByElement=new WeakMap;constructor(F,X,Le){this._element=F,this._startStyles=X,this._endStyles=Le,this._state=0;let ft=ye.initialStylesByElement.get(F);ft||ye.initialStylesByElement.set(F,ft=new Map),this._initialStyles=ft}start(){this._state<1&&(this._startStyles&&wt(this._element,this._startStyles,this._initialStyles),this._state=1)}finish(){this.start(),this._state<2&&(wt(this._element,this._initialStyles),this._endStyles&&(wt(this._element,this._endStyles),this._endStyles=null),this._state=1)}destroy(){this.finish(),this._state<3&&(ye.initialStylesByElement.delete(this._element),this._startStyles&&(De(this._element,this._startStyles),this._endStyles=null),this._endStyles&&(De(this._element,this._endStyles),this._endStyles=null),wt(this._element,this._initialStyles),this._state=3)}}return ye})();function yn(ye){let J=null;return ye.forEach((F,X)=>{(function In(ye){return"display"===ye||"position"===ye})(X)&&(J=J||new Map,J.set(X,F))}),J}class yi{constructor(J,F,X,Le){this.element=J,this.keyframes=F,this.options=X,this._specialStyles=Le,this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._initialized=!1,this._finished=!1,this._started=!1,this._destroyed=!1,this._originalOnDoneFns=[],this._originalOnStartFns=[],this.time=0,this.parentPlayer=null,this.currentSnapshot=new Map,this._duration=X.duration,this._delay=X.delay||0,this.time=this._duration+this._delay}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(J=>J()),this._onDoneFns=[])}init(){this._buildPlayer(),this._preparePlayerBeforeStart()}_buildPlayer(){if(this._initialized)return;this._initialized=!0;const J=this.keyframes;this.domPlayer=this._triggerWebAnimation(this.element,J,this.options),this._finalKeyframe=J.length?J[J.length-1]:new Map,this.domPlayer.addEventListener("finish",()=>this._onFinish())}_preparePlayerBeforeStart(){this._delay?this._resetDomPlayerState():this.domPlayer.pause()}_convertKeyframesToObject(J){const F=[];return J.forEach(X=>{F.push(Object.fromEntries(X))}),F}_triggerWebAnimation(J,F,X){return J.animate(this._convertKeyframesToObject(F),X)}onStart(J){this._originalOnStartFns.push(J),this._onStartFns.push(J)}onDone(J){this._originalOnDoneFns.push(J),this._onDoneFns.push(J)}onDestroy(J){this._onDestroyFns.push(J)}play(){this._buildPlayer(),this.hasStarted()||(this._onStartFns.forEach(J=>J()),this._onStartFns=[],this._started=!0,this._specialStyles&&this._specialStyles.start()),this.domPlayer.play()}pause(){this.init(),this.domPlayer.pause()}finish(){this.init(),this._specialStyles&&this._specialStyles.finish(),this._onFinish(),this.domPlayer.finish()}reset(){this._resetDomPlayerState(),this._destroyed=!1,this._finished=!1,this._started=!1,this._onStartFns=this._originalOnStartFns,this._onDoneFns=this._originalOnDoneFns}_resetDomPlayerState(){this.domPlayer&&this.domPlayer.cancel()}restart(){this.reset(),this.play()}hasStarted(){return this._started}destroy(){this._destroyed||(this._destroyed=!0,this._resetDomPlayerState(),this._onFinish(),this._specialStyles&&this._specialStyles.destroy(),this._onDestroyFns.forEach(J=>J()),this._onDestroyFns=[])}setPosition(J){void 0===this.domPlayer&&this.init(),this.domPlayer.currentTime=J*this.time}getPosition(){return+(this.domPlayer.currentTime??0)/this.time}get totalTime(){return this._delay+this._duration}beforeDestroy(){const J=new Map;this.hasStarted()&&this._finalKeyframe.forEach((X,Le)=>{"offset"!==Le&&J.set(Le,this._finished?X:Ce(this.element,Le))}),this.currentSnapshot=J}triggerCallback(J){const F="start"===J?this._onStartFns:this._onDoneFns;F.forEach(X=>X()),F.length=0}}class yo{validateStyleProperty(J){return!0}validateAnimatableStyleProperty(J){return!0}matchesElement(J,F){return!1}containsElement(J,F){return pt(J,F)}getParentElement(J){return we(J)}query(J,F,X){return Dt(J,F,X)}computeStyle(J,F,X){return window.getComputedStyle(J)[F]}animate(J,F,X,Le,ft,Pt=[]){const Jt={duration:X,delay:Le,fill:0==Le?"both":"forwards"};ft&&(Jt.easing=ft);const nn=new Map,Cn=Pt.filter(Hn=>Hn instanceof yi);(function j(ye,J){return 0===ye||0===J})(X,Le)&&Cn.forEach(Hn=>{Hn.currentSnapshot.forEach((Vn,ii)=>nn.set(ii,Vn))});let Tn=function Ze(ye){return ye.length?ye[0]instanceof Map?ye:ye.map(J=>ge(J)):[]}(F).map(Hn=>Ue(Hn));Tn=function L(ye,J,F){if(F.size&&J.length){let X=J[0],Le=[];if(F.forEach((ft,Pt)=>{X.has(Pt)||Le.push(Pt),X.set(Pt,ft)}),Le.length)for(let ft=1;ftPt.set(Rt,Ce(ye,Rt)))}}return J}(J,Tn,nn);const Xn=function vt(ye,J){let F=null,X=null;return Array.isArray(J)&&J.length?(F=yn(J[0]),J.length>1&&(X=yn(J[J.length-1]))):J instanceof Map&&(F=yn(J)),F||X?new $t(ye,F,X):null}(J,Tn);return new yi(J,Tn,Jt,Xn)}}let io=(()=>{class ye extends h._j{constructor(F,X){super(),this._nextAnimationId=0,this._renderer=F.createRenderer(X.body,{id:"0",encapsulation:t.ifc.None,styles:[],data:{animation:[]}})}build(F){const X=this._nextAnimationId.toString();this._nextAnimationId++;const Le=Array.isArray(F)?(0,h.vP)(F):F;return ts(this._renderer,null,X,"register",[Le]),new _o(X,this._renderer)}static#e=this.\u0275fac=function(X){return new(X||ye)(t.LFG(t.FYo),t.LFG(C.K0))};static#t=this.\u0275prov=t.Yz7({token:ye,factory:ye.\u0275fac})}return ye})();class _o extends h.LC{constructor(J,F){super(),this._id=J,this._renderer=F}create(J,F){return new Yi(this._id,J,F||{},this._renderer)}}class Yi{constructor(J,F,X,Le){this.id=J,this.element=F,this._renderer=Le,this.parentPlayer=null,this._started=!1,this.totalTime=0,this._command("create",X)}_listen(J,F){return this._renderer.listen(this.element,`@@${this.id}:${J}`,F)}_command(J,...F){return ts(this._renderer,this.element,this.id,J,F)}onDone(J){this._listen("done",J)}onStart(J){this._listen("start",J)}onDestroy(J){this._listen("destroy",J)}init(){this._command("init")}hasStarted(){return this._started}play(){this._command("play"),this._started=!0}pause(){this._command("pause")}restart(){this._command("restart")}finish(){this._command("finish")}destroy(){this._command("destroy")}reset(){this._command("reset"),this._started=!1}setPosition(J){this._command("setPosition",J)}getPosition(){return this._renderer.engine.players[+this.id]?.getPosition()??0}}function ts(ye,J,F,X,Le){return ye.setProperty(J,`@@${F}:${X}`,Le)}const _i="@.disabled";let fs=(()=>{class ye{constructor(F,X,Le){this.delegate=F,this.engine=X,this._zone=Le,this._currentId=0,this._microtaskId=1,this._animationCallbacksBuffer=[],this._rendererCache=new Map,this._cdRecurDepth=0,X.onRemovalComplete=(ft,Pt)=>{const Rt=Pt?.parentNode(ft);Rt&&Pt.removeChild(Rt,ft)}}createRenderer(F,X){const ft=this.delegate.createRenderer(F,X);if(!(F&&X&&X.data&&X.data.animation)){let Cn=this._rendererCache.get(ft);return Cn||(Cn=new $o("",ft,this.engine,()=>this._rendererCache.delete(ft)),this._rendererCache.set(ft,Cn)),Cn}const Pt=X.id,Rt=X.id+"-"+this._currentId;this._currentId++,this.engine.register(Rt,F);const Jt=Cn=>{Array.isArray(Cn)?Cn.forEach(Jt):this.engine.registerTrigger(Pt,Rt,F,Cn.name,Cn)};return X.data.animation.forEach(Jt),new at(this,Rt,ft,this.engine)}begin(){this._cdRecurDepth++,this.delegate.begin&&this.delegate.begin()}_scheduleCountTask(){queueMicrotask(()=>{this._microtaskId++})}scheduleListenerCallback(F,X,Le){F>=0&&FX(Le)):(0==this._animationCallbacksBuffer.length&&queueMicrotask(()=>{this._zone.run(()=>{this._animationCallbacksBuffer.forEach(ft=>{const[Pt,Rt]=ft;Pt(Rt)}),this._animationCallbacksBuffer=[]})}),this._animationCallbacksBuffer.push([X,Le]))}end(){this._cdRecurDepth--,0==this._cdRecurDepth&&this._zone.runOutsideAngular(()=>{this._scheduleCountTask(),this.engine.flush(this._microtaskId)}),this.delegate.end&&this.delegate.end()}whenRenderingDone(){return this.engine.whenRenderingDone()}static#e=this.\u0275fac=function(X){return new(X||ye)(t.LFG(t.FYo),t.LFG(dt),t.LFG(t.R0b))};static#t=this.\u0275prov=t.Yz7({token:ye,factory:ye.\u0275fac})}return ye})();class $o{constructor(J,F,X,Le){this.namespaceId=J,this.delegate=F,this.engine=X,this._onDestroy=Le}get data(){return this.delegate.data}destroyNode(J){this.delegate.destroyNode?.(J)}destroy(){this.engine.destroy(this.namespaceId,this.delegate),this.engine.afterFlushAnimationsDone(()=>{queueMicrotask(()=>{this.delegate.destroy()})}),this._onDestroy?.()}createElement(J,F){return this.delegate.createElement(J,F)}createComment(J){return this.delegate.createComment(J)}createText(J){return this.delegate.createText(J)}appendChild(J,F){this.delegate.appendChild(J,F),this.engine.onInsert(this.namespaceId,F,J,!1)}insertBefore(J,F,X,Le=!0){this.delegate.insertBefore(J,F,X),this.engine.onInsert(this.namespaceId,F,J,Le)}removeChild(J,F,X){this.engine.onRemove(this.namespaceId,F,this.delegate)}selectRootElement(J,F){return this.delegate.selectRootElement(J,F)}parentNode(J){return this.delegate.parentNode(J)}nextSibling(J){return this.delegate.nextSibling(J)}setAttribute(J,F,X,Le){this.delegate.setAttribute(J,F,X,Le)}removeAttribute(J,F,X){this.delegate.removeAttribute(J,F,X)}addClass(J,F){this.delegate.addClass(J,F)}removeClass(J,F){this.delegate.removeClass(J,F)}setStyle(J,F,X,Le){this.delegate.setStyle(J,F,X,Le)}removeStyle(J,F,X){this.delegate.removeStyle(J,F,X)}setProperty(J,F,X){"@"==F.charAt(0)&&F==_i?this.disableAnimations(J,!!X):this.delegate.setProperty(J,F,X)}setValue(J,F){this.delegate.setValue(J,F)}listen(J,F,X){return this.delegate.listen(J,F,X)}disableAnimations(J,F){this.engine.disableAnimations(J,F)}}class at extends $o{constructor(J,F,X,Le,ft){super(F,X,Le,ft),this.factory=J,this.namespaceId=F}setProperty(J,F,X){"@"==F.charAt(0)?"."==F.charAt(1)&&F==_i?this.disableAnimations(J,X=void 0===X||!!X):this.engine.process(this.namespaceId,J,F.slice(1),X):this.delegate.setProperty(J,F,X)}listen(J,F,X){if("@"==F.charAt(0)){const Le=function ht(ye){switch(ye){case"body":return document.body;case"document":return document;case"window":return window;default:return ye}}(J);let ft=F.slice(1),Pt="";return"@"!=ft.charAt(0)&&([ft,Pt]=function Fe(ye){const J=ye.indexOf(".");return[ye.substring(0,J),ye.slice(J+1)]}(ft)),this.engine.listen(this.namespaceId,Le,ft,Pt,Rt=>{this.factory.scheduleListenerCallback(Rt._data||-1,X,Rt)})}return this.delegate.listen(J,F,X)}}const jn=[{provide:h._j,useClass:io},{provide:lt,useFactory:function jt(){return new Qt}},{provide:dt,useClass:(()=>{class ye extends dt{constructor(F,X,Le,ft){super(F.body,X,Le)}ngOnDestroy(){this.flush()}static#e=this.\u0275fac=function(X){return new(X||ye)(t.LFG(C.K0),t.LFG(qt),t.LFG(lt),t.LFG(t.z2F))};static#t=this.\u0275prov=t.Yz7({token:ye,factory:ye.\u0275fac})}return ye})()},{provide:t.FYo,useFactory:function Nn(ye,J,F){return new fs(ye,J,F)},deps:[n.se,dt,t.R0b]}],co=[{provide:qt,useFactory:()=>new yo},{provide:t.QbO,useValue:"BrowserAnimations"},...jn],jo=[{provide:qt,useClass:Ut},{provide:t.QbO,useValue:"NoopAnimations"},...jn];let Fo=(()=>{class ye{static withConfig(F){return{ngModule:ye,providers:F.disableAnimations?jo:co}}static#e=this.\u0275fac=function(X){return new(X||ye)};static#t=this.\u0275mod=t.oAB({type:ye});static#n=this.\u0275inj=t.cJS({providers:co,imports:[n.b2]})}return ye})();var Bo=o(74911),$s=o(58504),uo=o(92438),Qo=o(22096),Do=o(35211),ws=o(78645),er=o(65592),Ps=o(72420);const Ho=new er.y(Ps.Z);var Yt=o(63019),ms=o(37398),Pn=o(32181),fn=o(94664),ss=o(93168),Cs=o(84674),ns=o(54829),zs=o(79360);const zr={connector:()=>new ws.x};function Tr(ye,J=zr){const{connector:F}=J;return(0,zs.e)((X,Le)=>{const ft=F();(0,ns.Xf)(ye(function js(ye){return new er.y(J=>ye.subscribe(J))}(ft))).subscribe(Le),Le.add(X.subscribe(ft))})}var Is=o(48180),ra=o(99397),Mr=o(5177);const Ks="Service workers are disabled or not supported by this browser";class tr{constructor(J){if(this.serviceWorker=J,J){const X=(0,uo.R)(J,"controllerchange").pipe((0,ms.U)(()=>J.controller)),Le=(0,Bo.P)(()=>(0,Qo.of)(J.controller)),ft=(0,Do.z)(Le,X);this.worker=ft.pipe((0,Pn.h)(Cn=>!!Cn)),this.registration=this.worker.pipe((0,fn.w)(()=>J.getRegistration()));const nn=(0,uo.R)(J,"message").pipe((0,ms.U)(Cn=>Cn.data)).pipe((0,Pn.h)(Cn=>Cn&&Cn.type)).pipe(function sa(ye){return ye?J=>Tr(ye)(J):J=>function Rl(ye,J){const F=(0,Cs.m)(ye)?ye:()=>ye;return(0,Cs.m)(J)?Tr(J,{connector:F}):X=>new ss.c(X,F)}(new ws.x)(J)}());nn.connect(),this.events=nn}else this.worker=this.events=this.registration=function Er(ye){return(0,Bo.P)(()=>(0,$s._)(new Error(ye)))}(Ks)}postMessage(J,F){return this.worker.pipe((0,Is.q)(1),(0,ra.b)(X=>{X.postMessage({action:J,...F})})).toPromise().then(()=>{})}postMessageWithOperation(J,F,X){const Le=this.waitForOperationCompleted(X),ft=this.postMessage(J,F);return Promise.all([ft,Le]).then(([,Pt])=>Pt)}generateNonce(){return Math.round(1e7*Math.random())}eventsOfType(J){let F;return F="string"==typeof J?X=>X.type===J:X=>J.includes(X.type),this.events.pipe((0,Pn.h)(F))}nextEventOfType(J){return this.eventsOfType(J).pipe((0,Is.q)(1))}waitForOperationCompleted(J){return this.eventsOfType("OPERATION_COMPLETED").pipe((0,Pn.h)(F=>F.nonce===J),(0,Is.q)(1),(0,ms.U)(F=>{if(void 0!==F.result)return F.result;throw new Error(F.error)})).toPromise()}get isEnabled(){return!!this.serviceWorker}}let hr=(()=>{class ye{get isEnabled(){return this.sw.isEnabled}constructor(F){if(this.sw=F,this.pushManager=null,this.subscriptionChanges=new ws.x,!F.isEnabled)return this.messages=Ho,this.notificationClicks=Ho,void(this.subscription=Ho);this.messages=this.sw.eventsOfType("PUSH").pipe((0,ms.U)(Le=>Le.data)),this.notificationClicks=this.sw.eventsOfType("NOTIFICATION_CLICK").pipe((0,ms.U)(Le=>Le.data)),this.pushManager=this.sw.registration.pipe((0,ms.U)(Le=>Le.pushManager));const X=this.pushManager.pipe((0,fn.w)(Le=>Le.getSubscription()));this.subscription=(0,Yt.T)(X,this.subscriptionChanges)}requestSubscription(F){if(!this.sw.isEnabled||null===this.pushManager)return Promise.reject(new Error(Ks));const X={userVisibleOnly:!0};let Le=this.decodeBase64(F.serverPublicKey.replace(/_/g,"/").replace(/-/g,"+")),ft=new Uint8Array(new ArrayBuffer(Le.length));for(let Pt=0;PtPt.subscribe(X)),(0,Is.q)(1)).toPromise().then(Pt=>(this.subscriptionChanges.next(Pt),Pt))}unsubscribe(){return this.sw.isEnabled?this.subscription.pipe((0,Is.q)(1),(0,fn.w)(X=>{if(null===X)throw new Error("Not subscribed to push notifications.");return X.unsubscribe().then(Le=>{if(!Le)throw new Error("Unsubscribe failed!");this.subscriptionChanges.next(null)})})).toPromise():Promise.reject(new Error(Ks))}decodeBase64(F){return atob(F)}static#e=this.\u0275fac=function(X){return new(X||ye)(t.LFG(tr))};static#t=this.\u0275prov=t.Yz7({token:ye,factory:ye.\u0275fac})}return ye})(),Hr=(()=>{class ye{get isEnabled(){return this.sw.isEnabled}constructor(F){if(this.sw=F,!F.isEnabled)return this.versionUpdates=Ho,this.available=Ho,this.activated=Ho,void(this.unrecoverable=Ho);this.versionUpdates=this.sw.eventsOfType(["VERSION_DETECTED","VERSION_INSTALLATION_FAILED","VERSION_READY","NO_NEW_VERSION_DETECTED"]),this.available=this.versionUpdates.pipe((0,Pn.h)(X=>"VERSION_READY"===X.type),(0,ms.U)(X=>({type:"UPDATE_AVAILABLE",current:X.currentVersion,available:X.latestVersion}))),this.activated=this.sw.eventsOfType("UPDATE_ACTIVATED"),this.unrecoverable=this.sw.eventsOfType("UNRECOVERABLE_STATE")}checkForUpdate(){if(!this.sw.isEnabled)return Promise.reject(new Error(Ks));const F=this.sw.generateNonce();return this.sw.postMessageWithOperation("CHECK_FOR_UPDATES",{nonce:F},F)}activateUpdate(){if(!this.sw.isEnabled)return Promise.reject(new Error(Ks));const F=this.sw.generateNonce();return this.sw.postMessageWithOperation("ACTIVATE_UPDATE",{nonce:F},F)}static#e=this.\u0275fac=function(X){return new(X||ye)(t.LFG(tr))};static#t=this.\u0275prov=t.Yz7({token:ye,factory:ye.\u0275fac})}return ye})();const Ts=new t.OlP("NGSW_REGISTER_SCRIPT");function Zs(ye,J,F,X){return()=>{if(!(0,C.NF)(X)||!("serviceWorker"in navigator)||!1===F.enabled)return;let Le;if(navigator.serviceWorker.addEventListener("controllerchange",()=>{null!==navigator.serviceWorker.controller&&navigator.serviceWorker.controller.postMessage({action:"INITIALIZE"})}),"function"==typeof F.registrationStrategy)Le=F.registrationStrategy();else{const[Pt,...Rt]=(F.registrationStrategy||"registerWhenStable:30000").split(":");switch(Pt){case"registerImmediately":Le=(0,Qo.of)(null);break;case"registerWithDelay":Le=me(+Rt[0]||0);break;case"registerWhenStable":Le=Rt[0]?(0,Yt.T)(_t(ye),me(+Rt[0])):_t(ye);break;default:throw new Error(`Unknown ServiceWorker registration strategy: ${F.registrationStrategy}`)}}ye.get(t.R0b).runOutsideAngular(()=>Le.pipe((0,Is.q)(1)).subscribe(()=>navigator.serviceWorker.register(J,{scope:F.scope}).catch(Pt=>console.error("Service worker registration failed with:",Pt))))}}function me(ye){return(0,Qo.of)(null).pipe((0,Mr.g)(ye))}function _t(ye){return ye.get(t.z2F).isStable.pipe((0,Pn.h)(F=>F))}function Ve(ye,J){return new tr((0,C.NF)(J)&&!1!==ye.enabled?navigator.serviceWorker:void 0)}class ut{}function Ht(ye,J={}){return(0,t.MR2)([hr,Hr,{provide:Ts,useValue:ye},{provide:ut,useValue:J},{provide:tr,useFactory:Ve,deps:[ut,t.Lbi]},{provide:t.ip1,useFactory:Zs,deps:[t.zs3,Ts,ut,t.Lbi],multi:!0}])}let rn=(()=>{class ye{static register(F,X={}){return{ngModule:ye,providers:[Ht(F,X)]}}static#e=this.\u0275fac=function(X){return new(X||ye)};static#t=this.\u0275mod=t.oAB({type:ye});static#n=this.\u0275inj=t.cJS({providers:[hr,Hr]})}return ye})();var an=o(980),An=o(12131);const bi={slogan:"A front-end solution based on Antd","app.header.search":"Search in ng-alain.com","app.home.preview":"Preview","app.home.start":"Get started","app.home.slogan":"Out-of-box UI solution for enterprise applications, let developers focus on business.","app.home.feature":"Feature","app.home.feature.antd":"Built on the design principles developed by Ant Design","app.home.feature.zorro":"Basic component based on NG-ZORRO","app.home.feature.delon":"A set of higher-order components, chart, authentication, ACL, cache, mock, testing, etc.","app.home.feature.out-of-box":"Out of box","app.home.feature.out-of-box.desc":"A complete Angular scaffold for production environments","app.home.feature.less":"Simple customization","app.home.feature.less.desc":"100 kinds of LESS parameters to customize brand vision","app.home.feature.rep":"Responsive","app.home.feature.rep.desc":"Support different devices","app.home.feature.tool":"Tools","app.home.feature.tool.desc":"Includes NG-ALAIN Schematics, VSCODE extension","app.home.feature.demo":"Example page","app.home.feature.demo.desc":"A lot of example pages can be referenced or used","app.home.theme":"Business Theme","app.home.theme.pro":"Pro","app.home.theme.pro.desc":"An enterprise-class UI design language for web applications","app.home.theme.ms":"Microservices","app.home.theme.ms.desc":"For microservice development style","app.home.theme.yun":"Yun","app.home.theme.yun.desc":"Let users focus more on business","app.header.menu.home":"Home","app.header.menu.docs":"Docs","app.header.menu.components":"Components","app.header.menu.delon":"Delon Library","app.header.menu.auth":"Authentication","app.header.menu.acl":"Access Control List","app.header.menu.cache":"Cache","app.header.menu.chart":"Chart","app.header.menu.mock":"Mock","app.header.menu.util":"Utils","app.header.menu.form":"Dynamic Form","app.header.menu.theme":"Theme System","app.header.menu.form.validator":"Online Validator","app.header.menu.cli":"Cli","app.header.menu.tool":"Tools","app.header.menu.upgrade":"HTML Upgrade Tool","app.header.menu.themes":"Business Theme","app.header.lang":"\u4e2d\u6587","app.footer.resources":"Resources","app.footer.angular":"\u4e2d\u6587\u7f51","app.footer.antd":"ANTD for Angular","app.footer.cli":"Scaffold","app.footer.antv":"AntV","app.footer.community":"Community","app.footer.change-log":"Change Log","app.footer.faq":"FAQ","app.footer.issues":"Issues","app.footer.issue-help":"Bug Report","app.footer.qqgroup":"QQ Group","app.footer.qqgroup.full":"(Full)","app.footer.primary-color-changed":"Change primary color successfully!","app.content.copy-import-module":"Copy import module code:","app.content.edit-page":"Edit this page on GitHub!","app.content.edit-demo":"Edit this demo on GitHub!","app.content.link.copied":"Copy paragraph link successfully!","app.component.examples":"Examples","app.component.refer.title":"Usage:","app.component.refer.desc":"Learning more to visit: ","app.component.refer.link":"Using ABC Components Alone","app.component.config.title":"General Configuration","app.demo.copy":"Copy code","app.demo.copied":"Copied!","app.demo.code-sandbox":"Edit On CodeSandbox","app.demo.code-sandbox-cli":"Using Angular Cli mode","app.demo.stackblitz":"Edit On StackBlitz","app.theme-btn.default":"Default Theme","app.theme-btn.dark":"Dark Theme","app.theme-btn.compact":"Compact Theme","sf.name":"Name","sf.description":"This is description"},Ni={slogan:"\u4e00\u4e2a\u57fa\u4e8e Antd \u4e2d\u540e\u53f0\u524d\u7aef\u89e3\u51b3\u65b9\u6848","app.header.search":"\u5728 ng-alain.com \u4e2d\u641c\u7d22","app.home.preview":"\u9884\u89c8","app.home.start":"\u5f00\u59cb\u4f7f\u7528","app.home.slogan":"\u4e00\u4e2a\u57fa\u4e8e Antd \u4e2d\u540e\u53f0\u524d\u7aef\u89e3\u51b3\u65b9\u6848\uff0c\u63d0\u4f9b\u66f4\u591a\u901a\u7528\u6027\u4e1a\u52a1\u6a21\u5757\uff0c\u8ba9\u5f00\u53d1\u8005\u66f4\u52a0\u4e13\u6ce8\u4e8e\u4e1a\u52a1\u3002","app.home.feature":"\u7279\u5f81","app.home.feature.antd":"\u7b26\u5408 Ant Design \u8bbe\u8ba1\u4ef7\u503c\u89c2","app.home.feature.zorro":"\u4e30\u5bcc\u7684\u51e0\u5341\u79cd\u57fa\u7840\u7ec4\u4ef6","app.home.feature.delon":"\u4e00\u7ec4\u66f4\u9ad8\u9636\u7684\u4e1a\u52a1\u7ec4\u4ef6\u3001\u56fe\u8868\u3001\u8ba4\u8bc1\u3001\u6388\u6743\u3001\u7f13\u5b58\u3001Mock\u3001\u6d4b\u8bd5\u7b49","app.home.feature.out-of-box":"\u5f00\u7bb1\u5373\u7528","app.home.feature.out-of-box.desc":"\u4e00\u4e2a\u5b8c\u6574\u3001\u53ef\u76f4\u63a5\u7528\u4e8e\u751f\u4ea7\u73af\u5883\u7684Angular\u811a\u624b\u67b6","app.home.feature.less":"\u7b80\u5355\u5b9a\u5236","app.home.feature.less.desc":"\u767e\u79cdLESS\u53c2\u6570\u5b9a\u5236\u54c1\u724c\u89c6\u89c9","app.home.feature.rep":"\u54cd\u5e94\u5f0f","app.home.feature.rep.desc":"\u652f\u6301\u4e0d\u540c\u8bbe\u5907\u4f7f\u7528","app.home.feature.tool":"\u5de5\u5177\u652f\u6301","app.home.feature.tool.desc":"\u5305\u542b NG-ALAIN Schematics \u3001VSCODE\u63d2\u4ef6","app.home.feature.demo":"\u793a\u4f8b\u9875","app.home.feature.demo.desc":"\u5927\u91cf\u793a\u4f8b\u9875\u53ef\u76f4\u63a5\u53c2\u8003\u4e0e\u4f7f\u7528","app.home.theme":"\u5546\u4e1a\u4e3b\u9898","app.home.theme.pro":"Pro","app.home.theme.pro.desc":"\u63d0\u70bc\u81ea\u4f01\u4e1a\u7ea7\u4e2d\u540e\u53f0\u4ea7\u54c1\u7684\u4ea4\u4e92\u8bed\u8a00\u548c\u89c6\u89c9\u98ce\u683c","app.home.theme.ms":"\u5fae\u670d\u52a1","app.home.theme.ms.desc":"\u9762\u5411\u5fae\u670d\u52a1\u5f00\u53d1\u98ce\u683c\u7684\u4e3b\u9898","app.home.theme.yun":"\u4e91","app.home.theme.yun.desc":"\u5c06\u529f\u80fd\u7ec6\u8282\u5316\u8ba9\u7528\u6237\u66f4\u805a\u7126\u4e1a\u52a1","app.header.menu.home":"\u9996\u9875","app.header.menu.docs":"\u6587\u6863","app.header.menu.components":"\u7ec4\u4ef6","app.header.menu.delon":"Delon\u5e93","app.header.menu.auth":"\u7528\u6237\u8ba4\u8bc1","app.header.menu.acl":"\u8bbf\u95ee\u63a7\u5236\u5217\u8868","app.header.menu.cache":"\u7f13\u5b58","app.header.menu.chart":"\u56fe\u8868","app.header.menu.mock":"Mock\u6a21\u62df\u6570\u636e","app.header.menu.util":"\u5de5\u5177\u96c6","app.header.menu.form":"\u52a8\u6001\u8868\u5355","app.header.menu.theme":"\u4e3b\u9898\u7cfb\u7edf","app.header.menu.form.validator":"\u5728\u7ebf\u6821\u9a8c\u5668","app.header.menu.cli":"Cli","app.header.menu.tool":"\u5de5\u5177","app.header.menu.upgrade":"HTML\u6a21\u677f\u5347\u7ea7\u5de5\u5177","app.header.menu.themes":"\u5546\u4e1a\u4e3b\u9898","app.header.lang":"English","app.footer.resources":"\u76f8\u5173\u8d44\u6e90","app.footer.angular":"\u4e2d\u6587\u7f51","app.footer.antd":"ANTD Angular\u7248\u672c","app.footer.cli":"\u811a\u624b\u67b6","app.footer.antv":"\u6570\u636e\u53ef\u89c6\u5316","app.footer.community":"\u793e\u533a","app.footer.change-log":"\u66f4\u65b0\u8bb0\u5f55","app.footer.faq":"\u5e38\u89c1\u95ee\u9898","app.footer.issues":"\u8ba8\u8bba\u5217\u8868","app.footer.issue-help":"\u62a5\u544a Bug","app.footer.qqgroup":"QQ\u7fa4","app.footer.qqgroup.full":"(\u6ee1)","app.footer.primary-color-changed":"\u4fee\u6539\u4e3b\u9898\u8272\u6210\u529f\uff01","app.content.copy-import-module":"\u590d\u5236\u5bfc\u5165\u6a21\u5757\u4ee3\u7801\uff1a","app.content.edit-page":"\u5728 Github \u4e0a\u7f16\u8f91\u6b64\u9875\uff01","app.content.edit-demo":"\u5728 Github \u4e0a\u7f16\u8f91\u6b64\u793a\u4f8b\uff01","app.content.link.copied":"\u590d\u5236\u6bb5\u843d\u94fe\u63a5\u6210\u529f\uff01","app.component.examples":"\u4ee3\u7801\u6f14\u793a","app.component.refer.title":"\u5f15\u7528\u65b9\u5f0f\uff1a","app.component.refer.desc":"\u8be6\u7ec6\u4f7f\u7528\u65b9\u5f0f\u8bf7\u53c2\u7167\uff1a","app.component.refer.link":"\u72ec\u7acb\u4f7f\u7528 abc \u7ec4\u4ef6","app.component.config.title":"\u652f\u6301\u901a\u7528\u914d\u7f6e","app.demo.copy":"\u590d\u5236\u4ee3\u7801","app.demo.copied":"\u590d\u5236\u6210\u529f","app.demo.code-sandbox":"\u5728 CodeSandbox \u4e0a\u6253\u5f00","app.demo.code-sandbox-cli":"\u4f7f\u7528Angular Cli\u6a21\u5f0f","app.demo.stackblitz":"\u5728 StackBlitz \u4e2d\u6253\u5f00","app.theme-btn.default":"\u9ed8\u8ba4\u4e3b\u9898","app.theme-btn.dark":"\u6697\u9ed1\u4e3b\u9898","app.theme-btn.compact":"\u7d27\u51d1\u4e3b\u9898","sf.name":"\u540d\u79f0","sf.description":"\u8fd9\u662f\u4e00\u6bb5\u63cf\u8ff0"};var mi=o(62831),Gn=o(78967);let Ki=(()=>{class ye extends an.BQ{constructor(F,X,Le,ft){super(ft),this.zorroI18n=F,this.delonI18n=X,this.platform=Le,this._langs=[{code:"en-US",text:"English"},{code:"zh-CN",text:"\u4e2d\u6587"}];const Pt=this.getBrowserLang()||this.defaultLang;this.use(Pt,{},!1)}getBrowserLang(){if(!this.platform.isBrowser)return;if(localStorage.lang)return localStorage.lang;const F=window.navigator;if(typeof window>"u"||typeof F>"u")return;let X=F.languages?F.languages[0]:null;return X=X||F.language||F.browserLanguage||F.userLanguage,-1!==X.indexOf("-")&&(X=X.split("-")[0]),-1!==X.indexOf("_")&&(X=X.split("_")[0]),this.getFullLang(X)}use(F,X,Le){this.platform.isBrowser&&(localStorage.lang=F),this._currentLang=this.getFullLang(F);const ft="en-US"===this.getFullLang(F);this._data=ft?bi:Ni,this.zorroI18n.setLocale(ft?An.iF:An.bF),this.delonI18n.setLocale(ft?an.iF:an.bF),!1!==Le&&this._change$.next(F)}getLangs(){return this._langs}get defaultLang(){return"zh-CN"}get zone(){return this._currentLang.split("-")[0]}get langs(){return["zh-CN","en-US"]}get(F){return null==F?"":"string"==typeof F?F:F[this.currentLang]||F[this.defaultLang]||""}getFullLang(F){const X=this._langs.filter(Le=>Le.code.split("-")[0]===F);return X.length>0?X[0].code:this.defaultLang}getRealUrl(F){const X=F.split("#")[0].split("?")[0].split("/");return X.splice(-1),X.join("/")}static#e=this.\u0275fac=function(X){return new(X||ye)(t.LFG(An.wi),t.LFG(an.s7),t.LFG(mi.t4),t.LFG(Gn.Ri))};static#t=this.\u0275prov=t.Yz7({token:ye,factory:ye.\u0275fac,providedIn:"root"})}return ye})();var Fn=o(14715);const Zi=[Fn.kR2,Fn.x0x,Fn.Kw4,Fn.Ej7,Fn.wJM,Fn.Mwl,Fn.RIp,Fn.RU0,Fn.Idu,Fn.Q2k,Fn.RYI,Fn.WH2,Fn.s4U,Fn.mqL,Fn.irO,Fn.P0d,Fn.LBP,Fn.khz,Fn._ry,Fn.RZ3,Fn.rHg,Fn.uYj,Fn.BXO,Fn.v6v,Fn.Dfz,Fn.cLx,Fn.aIM,Fn.qtR,Fn.ECR,Fn.Xwh,Fn.fhO];var Vo=o(90551),Ko=o(64115);let Ms=(()=>{class ye{constructor(F,X,Le,ft,Pt){this.injector=F,this.doc=Le,this.lazy=ft,this.platform=Pt,X.addIcon(...Zi)}load(){const F=this.doc.querySelector("#_slow");return new Promise(X=>{F&&F.remove(),this.injector.get(an.yD).suffix="Ng Alain",this.platform.isBrowser&&setTimeout(()=>this.lazyLoad(),100),X()})}lazyLoad(){const F=this.doc.defaultView;F.hj=F.hj||function(){(F.hj.q=F.hj.q||[]).push(arguments)},F._hjSettings={hjid:920546,hjsv:6},Promise.all([this.lazy.loadScript("./assets/highlight.pack.js"),this.lazy.loadScript("https://www.googletagmanager.com/gtag/js?id=UA-120202005-1"),this.lazy.loadScript(`https://static.hotjar.com/c/hotjar-${F._hjSettings.hjid}.js?sv=${F._hjSettings.hjsv}`)]).then(()=>{const X=F.dataLayer||[];X.push(["js",new Date]),X.push(["config","UA-120202005-1"])})}static#e=this.\u0275fac=function(X){return new(X||ye)(t.LFG(t.zs3),t.LFG(Vo.H5),t.LFG(C.K0),t.LFG(Ko.Df),t.LFG(mi.t4))};static#t=this.\u0275prov=t.Yz7({token:ye,factory:ye.\u0275fac})}return ye})();var wo=o(6595);var ni=o(52787);const Es=new t.GfV("16.2.2");var Vr=o(49548),xi=o(20814);let Dr=(()=>{class ye{constructor(F,X,Le,ft,Pt,Rt,Jt,nn,Cn){this.isMobile=!1,this.query="only screen and (max-width: 1200px)",this.prevUrl="",X.setAttribute(F.nativeElement,"ng-alain-version",an.q4.full),X.setAttribute(F.nativeElement,"ng-zorro-version",Es.full),nn.observe(this.query).subscribe(Tn=>{this.isMobile=Tn.matches,Jt.next(this.isMobile)}),Rt.events.subscribe(Tn=>{if(!(Tn instanceof ni.m2))return;Cn.closeAll();const Xn=Tn.url.split("#")[0].split("?")[0];if(Xn.includes("/dev")||Xn.includes("/404")||this.prevUrl===Xn)return;this.prevUrl=Xn;let Hn=Xn.split("/").pop()||Le.zone;Hn&&-1===["zh","en"].indexOf(Hn)&&(Hn=Le.zone);const Vn=Tn.urlAfterRedirects.split("#")[0].split("?")[0].split("/"),ii=Vn.pop();if(Hn!==ii){let fo="";return fo=~Tn.urlAfterRedirects.indexOf("#")?Tn.urlAfterRedirects.replace(`/${ii}#`,`/${Hn}#`):Vn.concat(Hn).join("/"),void Rt.navigateByUrl(fo,{replaceUrl:!0})}if(Hn&&ft.refMenu(Xn),ft.set(Xn))return void Rt.navigateByUrl("/404");const Di=ft.getPathByUrl(Xn);Pt.setTitle(Di?Di.title||Di.subtitle:"")}),Le.change.subscribe(Tn=>ft.clearMenu())}static#e=this.\u0275fac=function(X){return new(X||ye)(t.Y36(t.SBq),t.Y36(t.Qsj),t.Y36(an.Oi),t.Y36(Vr.R),t.Y36(an.yD),t.Y36(ni.F0),t.Y36(xi.W),t.Y36(l.Yg),t.Y36(an.hC))};static#t=this.\u0275cmp=t.Xpm({type:ye,selectors:[["app-root"]],hostVars:2,hostBindings:function(X,Le){2&X&&t.ekj("mobile",Le.isMobile)},decls:1,vars:0,template:function(X,Le){1&X&&t._UZ(0,"router-outlet")},dependencies:[ni.lC],encapsulation:2})}return ye})(),br=(()=>{class ye extends t.qLn{constructor(F){super(),this.doc=F}handleError(F){try{super.handleError(F)}catch(X){this.reportError(X)}this.reportError(F)}reportError(F){const X=this.doc.defaultView;X&&X.onerror&&("string"==typeof F?X.onerror(F):X.onerror(F.message,void 0,void 0,void 0,F))}static#e=this.\u0275fac=function(X){return new(X||ye)(t.LFG(C.K0))};static#t=this.\u0275prov=t.Yz7({token:ye,factory:ye.\u0275fac})}return ye})();var Uo=o(27929);class aa{constructor(J,F){this.status=J,this.error=F}}const Ba={delay:300,force:!1,log:!0,executeOtherInterceptors:!0};class Js{}let Yo=(()=>{class ye{constructor(F,X){this.cached=[],this.config=F.merge("mock",Ba),this.setData(X?.data)}setData(F){this.applyMock(F)}applyMock(F){this.cached=[];try{this.realApplyMock(F)}catch(X){this.outputError(X)}}realApplyMock(F){F&&(Object.keys(F).forEach(X=>{const Le=F[X];Le&&Object.keys(Le).forEach(ft=>{const Pt=Le[ft];if("function"!=typeof Pt&&"object"!=typeof Pt&&"string"!=typeof Pt)throw Error(`mock value of [${X}-${ft}] should be function or object or string, but got ${typeof Pt}`);const Rt=this.genRule(ft,Pt);if(-1===["GET","POST","PUT","HEAD","DELETE","PATCH","OPTIONS"].indexOf(Rt.method))throw Error(`method of ${X}-${ft} is not valid`);const Jt=this.cached.find(nn=>nn.url===Rt.url&&nn.method===Rt.method);Jt?Jt.callback=Rt.callback:this.cached.push(Rt)})}),this.cached.sort((X,Le)=>(Le.martcher||"").toString().length-(X.martcher||"").toString().length))}genRule(F,X){let Le="GET",ft=F;if(F.indexOf(" ")>-1){const Jt=F.split(" ");Le=Jt[0].toLowerCase(),ft=Jt[1]}let Pt=null,Rt=[];if(~ft.indexOf(":")){Rt=ft.split("/").filter(nn=>nn.startsWith(":")).map(nn=>nn.substring(1));const Jt=ft.split("/").map(nn=>nn.startsWith(":")?"([^/]+)":nn).join("/");Pt=new RegExp(`^${Jt}`,"i")}else/(\([^)]+\))/i.test(ft)&&(Pt=new RegExp(ft,"i"));return{url:ft,martcher:Pt,segments:Rt,callback:X,method:Le.toUpperCase()}}outputError(F){const X=F.message.split(": ")[0],Le=F.stack.split("\n").filter(ft=>0!==ft.trim().indexOf("at ")).map(ft=>ft.replace(`${X}: `,""));throw Le.splice(1,0,""),console.group(),console.warn("==========Failed to parse mock config.=========="),console.log(Le.join("\n")),console.groupEnd(),F}getRule(F,X){F=(F||"GET").toUpperCase();const Le={},ft=this.cached.filter(Rt=>Rt.method===F&&(Rt.martcher?Rt.martcher.test(X):Rt.url===X));if(0===ft.length)return null;const Pt=ft.find(Rt=>Rt.url===X)||ft[0];return Pt.martcher&&Pt.martcher.exec(X).slice(1).map((Jt,nn)=>{Le[Pt.segments[nn]]=Jt}),{url:X,method:Pt.method,params:Le,callback:Pt.callback}}clearCache(){this.cached=[]}get rules(){return this.cached}ngOnDestroy(){this.clearCache()}static#e=this.\u0275fac=function(X){return new(X||ye)(t.LFG(Gn.Ri),t.LFG(Js))};static#t=this.\u0275prov=t.Yz7({token:ye,factory:ye.\u0275fac,providedIn:"root"})}return ye})();class la{constructor(J,F){this.next=J,this.interceptor=F}handle(J){return this.interceptor.intercept(J,this.next)}}let Ha=(()=>{class ye{constructor(F){this.injector=F}intercept(F,X){const Le=this.injector.get(Yo),ft=Le.config,Pt=Le.getRule(F.method,F.url.split("?")[0]);if(!Pt&&!ft.force)return X.handle(F);let Rt;if("function"==typeof Pt.callback){const nn={original:F,body:F.body,queryString:{},headers:{},params:Pt.params},Cn=F.url.split("?");Cn.length>1&&Cn[1].split("&").forEach(Tn=>{const Xn=Tn.split("="),Hn=Xn[0],Vn=Xn[1];Object.keys(nn.queryString).includes(Hn)?(Array.isArray(nn.queryString[Hn])||(nn.queryString[Hn]=[nn.queryString[Hn]]),nn.queryString[Hn].push(Vn)):nn.queryString[Hn]=Vn}),F.params.keys().forEach(Tn=>nn.queryString[Tn]=F.params.get(Tn)),F.headers.keys().forEach(Tn=>nn.headers[Tn]=F.headers.get(Tn));try{Rt=Pt.callback.call(this,nn)}catch(Tn){Rt=new E.UA({url:F.url,headers:F.headers,status:Tn instanceof aa?Tn.status:400,statusText:Tn.statusText||"Unknown Error",error:Tn.error})}}else Rt=Pt.callback;Rt instanceof E.QO||(Rt=new E.Zn({status:200,url:F.url,body:Rt})),Rt.body&&(Rt.body=(0,Ko.p$)(Rt.body)),ft.log&&(console.log(`%c\u{1f47d}${F.method}->${F.urlWithParams}->request`,"background:#000;color:#bada55",F),console.log(`%c\u{1f47d}${F.method}->${F.urlWithParams}->response`,"background:#000;color:#bada55",Rt));const Jt=Rt instanceof E.UA?(0,$s._)(()=>Rt):(0,Qo.of)(Rt);if(ft.executeOtherInterceptors){const nn=this.injector.get(E.TP,[]),Cn=nn.slice(nn.indexOf(this)+1);if(Cn.length>0)return Cn.reduceRight((Xn,Hn)=>new la(Xn,Hn),{handle:()=>Jt}).handle(F).pipe((0,Mr.g)(ft.delay))}return Jt.pipe((0,Mr.g)(ft.delay))}static#e=this.\u0275fac=function(X){return new(X||ye)(t.LFG(t.zs3))};static#t=this.\u0275prov=t.Yz7({token:ye,factory:ye.\u0275fac})}return ye})(),ca=(()=>{class ye{static forRoot(F){return{ngModule:ye,providers:[{provide:Js,useValue:F},{provide:E.TP,useClass:Ha,multi:!0}]}}static forChild(){return{ngModule:ye,providers:[{provide:E.TP,useClass:Ha,multi:!0}]}}static#e=this.\u0275fac=function(X){return new(X||ye)};static#t=this.\u0275mod=t.oAB({type:ye});static#n=this.\u0275inj=t.cJS({})}return ye})();const Bi=(ye,J)=>Math.floor(Math.random()*(J-ye+1)+ye),da={"GET /users":ye=>{const F={list:[],total:ye.queryString.total||100};for(let X=0;X<+ye.queryString.ps;X++)F.list.push({id:X+1,type:Bi(1,3),picture:{thumbnail:`https://randomuser.me/api/portraits/thumb/${0===Bi(0,1)?"men":"women"}/${Bi(1,50)}.jpg`},name:{last:`last-${Bi(1,10)}`,first:`first-${Bi(10,20)}`},nat:["CH","US","DE"][X%3],gender:["male","female"][X%2],email:`aaa${Bi(1,10)}@qq.com`,phone:`phone-${Bi(1e3,1e5)}`,price:Bi(10,1e7),total:Bi(10,1e7),website:`https://${Bi(10,1e7)}.com/`,disabled:Bi(1,100)>50,registered:new Date});return F},"GET /user/check/":()=>!1,"GET /user/check/:name":ye=>"cipchk"===ye.params.name,"/500":()=>{throw new aa(500)},"/404":()=>{throw new aa(404)},"/user/:id":ye=>({id:ye.params.id,name:"detail"}),"/user/:id/edit":ye=>({id:ye.params.id,name:"edit"}),"/user/:id/upload":ye=>({id:ye.params.id,name:"upload"})},Ll={"GET /chart":{users:[1,2]}},Va={"POST /upload":()=>({resource_id:+new Date,url:"https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ.png"})};var Ua=o(83064);o(58593),o(81850);const ha=[{provide:Gn.jq,useValue:{st:{ps:3},lodop:{license:"A59B099A586B3851E0F0D7FDBF37B603",licenseA:"C94CEE276DB2187AE6B65D56B3FC2848"},chart:{echartsExtensions:["https://cdnjs.cloudflare.com/ajax/libs/echarts/5.1.0/theme/dark.min.js"]},themeI18n:{paramNameOfUrlGuard:"lang"},xlsx:{url:"/assets/xlsx/xlsx.full.min.js",modules:["/assets/xlsx/cpexcel.js"]},zip:{url:"/assets/jszip/jszip.min.js"},qr:{lib:"/assets/qrious/qrious.min.js"},media:{urls:["assets/plyr/plyr.min.js","assets/plyr/plyr.css"],options:{iconUrl:"assets/plyr/plyr.svg",blankVideo:"https://cdn.plyr.io/static/blank.mp4"}}}}],Fl=[(0,Ua.zR)({})];let pa=(()=>{class ye{static forRoot(){return{ngModule:ye,providers:[...ha,...Fl]}}static#e=this.\u0275fac=function(X){return new(X||ye)};static#t=this.\u0275mod=t.oAB({type:ye});static#n=this.\u0275inj=t.cJS({imports:[an.pG.forRoot(),Uo.vy.forRoot(),ca.forRoot({data:e})]})}return ye})();var $a=o(24593),nr=o(43460),ir=o(71993),Bl=o(87691);function ja(ye,J){1&ye&&t._UZ(0,"nz-spin",3)}function Hl(ye,J){if(1&ye){const F=t.EpF();t.ynx(0),t._UZ(1,"app-header"),t.YNc(2,ja,1,0,"nz-spin",1),t._UZ(3,"router-outlet")(4,"nz-back-top"),t.TgZ(5,"theme-btn",2),t.NdJ("themeChange",function(Le){t.CHM(F);const ft=t.oxw();return t.KtG(ft.themeChange(Le))}),t.qZA(),t.BQk()}if(2&ye){const F=t.oxw();t.xp6(2),t.Q6J("ngIf",F.isFetching)}}let xr=(()=>{class ye{constructor(F,X,Le,ft,Pt,Rt){this.router=F,this.settingsSrv=Le,this.location=ft,this.appSrv=Rt,this.isFetching=!1,this.render=!0,Pt.change.subscribe(()=>this.fixDirection()),F.events.pipe((0,ir.sL)()).subscribe(Jt=>{if(!this.isFetching&&Jt instanceof ni.xV&&(this.isFetching=!0),Jt instanceof ni.Q3)return this.isFetching=!1,void X.error(`\u65e0\u6cd5\u52a0\u8f7d${Jt.url}\u8def\u7531`,{nzDuration:3e3});Jt instanceof ni.m2&&(this.isFetching=!1)}),F.events.pipe((0,ir.sL)(),(0,Pn.h)(Jt=>Jt instanceof ni.m2),(0,Mr.g)(100)).subscribe(()=>{this.fixDirection()})}fixDirection(){const F=this.settingsSrv.layout.direction,X=this.router.url.split(/[?#|?|#]/)[0];let ft=this.router.parseUrl(this.router.url).fragment;ft=null!=ft&&ft.length>0?`#${ft}`:"",this.location.replaceState(X,(F===an.lw?`?direction=${an.lw}`:"")+ft)}themeChange(F){this.appSrv.setTheme(F)}static#e=this.\u0275fac=function(X){return new(X||ye)(t.Y36(ni.F0),t.Y36(nr.dD),t.Y36(an.gb),t.Y36(C.Ye),t.Y36(an.aP),t.Y36(Bl.z))};static#t=this.\u0275cmp=t.Xpm({type:ye,selectors:[["app-layout"]],hostVars:1,hostBindings:function(X,Le){2&X&&t.uIk("id","ng-content")},decls:1,vars:1,consts:[[4,"ngIf"],["class","fetching","nzSpinning","",4,"ngIf"],[3,"themeChange"],["nzSpinning","",1,"fetching"]],template:function(X,Le){1&X&&t.YNc(0,Hl,6,1,"ng-container",0),2&X&&t.Q6J("ngIf",Le.render)},encapsulation:2})}return ye})();var zo=o(60095),hn=o(42840),ai=o(70855),Sr=o(41958),Or=o(73460),To=o(62787),Ur=o(10095),As=o(96109),rs=o(57417),wr=o(9691),Yr=o(83991),Vl=o(22204),Ns=o(20824),Pr=o(63123);const Zo=["searchInput"];let ks=(()=>{class ye{constructor(F,X,Le,ft){this.i18n=F,this.platform=X,this.router=Le,this.lazySrv=ft}ngAfterViewInit(){this.initDocSearch()}initDocSearch(){if(!this.platform.isBrowser)return;const F="https://cdnjs.cloudflare.com/ajax/libs/docsearch.js/2.6.3/docsearch.min";this.lazySrv.load([`${F}.js`,`${F}.css`]).then(()=>{const X=location.hostname,Le=X.includes("localhost");docsearch({appId:"KNI4PDQPLT",apiKey:"f77b841e2a1f87742bef959fe09cc80e",indexName:"ng-alain",inputSelector:"#search-box input",algoliaOptions:{hitsPerPage:5,facetFilters:[`lang:${this.i18n.zone}`]},handleSelected:(ft,Pt,Rt)=>{const Jt=Rt?.url||"";if(Le||X===this.getHost(Jt)){const nn=Jt.replace(/.*\/\/[^\/]*/,"");this.router.navigateByUrl(nn)}else window.open(Jt)},debug:!1})})}getHost(F){const X=F.match(/^https?\:\/\/([^\/:?#]+)(?:[\/:?#]|$)/i);return X?X[1]:""}static#e=this.\u0275fac=function(X){return new(X||ye)(t.Y36(an.Oi),t.Y36(mi.t4),t.Y36(ni.F0),t.Y36(Ko.Df))};static#t=this.\u0275cmp=t.Xpm({type:ye,selectors:[["header-search"]],viewQuery:function(X,Le){if(1&X&&t.Gf(Zo,5),2&X){let ft;t.iGM(ft=t.CRH())&&(Le.searchInput=ft.first)}},hostVars:1,hostBindings:function(X,Le){2&X&&t.uIk("id","search-box")},decls:4,vars:3,consts:[["nz-icon","","nzType","search"],["nz-input","",3,"placeholder"],["searchInput",""]],template:function(X,Le){1&X&&(t._UZ(0,"i",0)(1,"input",1,2),t.ALo(3,"i18n")),2&X&&(t.xp6(1),t.Q6J("placeholder",t.lcZ(3,1,"app.header.search")))},dependencies:[ai.w,Vo.Ls,Ns.Zp,Pr.C],encapsulation:2,changeDetection:0})}return ye})();function ue(ye,J){if(1&ye&&(t.TgZ(0,"li",16),t._uU(1),t.ALo(2,"i18n"),t.qZA()),2&ye){const F=J.$implicit,X=t.oxw(3);t.cQ8("routerLink","/",F.name,"/",F.default||"getting-started","/",X.i18n.zone,""),t.xp6(1),t.AsE(" @delon/",F.name,"-",t.lcZ(2,5,"app.header.menu."+F.name)," ")}}function Se(ye,J){if(1&ye&&(t.TgZ(0,"li",14),t.ALo(1,"i18n"),t.TgZ(2,"ul"),t.YNc(3,ue,3,7,"li",15),t.qZA()()),2&ye){const F=t.oxw(2);t.Q6J("nzTitle",t.lcZ(1,2,"app.header.menu.delon")),t.xp6(3),t.Q6J("ngForOf",F.delonLibs)}}function oe(ye,J){if(1&ye&&(t.TgZ(0,"li",16),t._uU(1),t.ALo(2,"i18n"),t.qZA()),2&ye){const F=J.$implicit,X=t.oxw(3);t.cQ8("routerLink","/",F.name,"/",F.default||"getting-started","/",X.i18n.zone,""),t.xp6(1),t.AsE(" @delon/",F.name,"-",t.lcZ(2,5,"app.header.menu."+F.name)," ")}}function Oe(ye,J){if(1&ye&&(t.TgZ(0,"li",17)(1,"div",18),t._uU(2),t.ALo(3,"i18n"),t._UZ(4,"i",19),t.qZA(),t.TgZ(5,"nz-dropdown-menu",null,20)(7,"ul",21),t.YNc(8,oe,3,7,"li",15),t.qZA()()()),2&ye){const F=t.MAs(6),X=t.oxw(2);t.Q6J("matchRouter",X.regexs.delon),t.xp6(1),t.Q6J("nzDropdownMenu",F),t.xp6(1),t.hij(" ",t.lcZ(3,4,X.delonType?"app.header.menu."+X.delonType:"app.header.menu.delon")," "),t.xp6(6),t.Q6J("ngForOf",X.delonLibs)}}function tt(ye,J){if(1&ye){const F=t.EpF();t.ynx(0),t.TgZ(1,"a",22),t._uU(2,"Github"),t.qZA(),t.TgZ(3,"li",23),t.NdJ("click",function(){t.CHM(F);const Le=t.oxw(2);return t.KtG(Le.langChange("zh"===Le.i18n.zone?"en":"zh"))}),t._uU(4),t.ALo(5,"i18n"),t.qZA(),t.BQk()}2&ye&&(t.xp6(4),t.hij(" ",t.lcZ(5,1,"app.header.lang")," "))}function zt(ye,J){if(1&ye&&(t.TgZ(0,"ul",8)(1,"li",9),t._uU(2),t.ALo(3,"i18n"),t.qZA(),t.TgZ(4,"li",9),t._uU(5),t.ALo(6,"i18n"),t.qZA(),t.YNc(7,Se,4,4,"li",10),t.YNc(8,Oe,9,6,"li",11),t.TgZ(9,"li",12)(10,"a",13),t._uU(11),t.ALo(12,"i18n"),t.qZA()(),t.YNc(13,tt,6,3,"ng-container",7),t.qZA()),2&ye){const F=t.oxw();t.Q6J("nzMode",F.isMobile?"inline":"horizontal"),t.xp6(1),t.MGl("routerLink","/docs/getting-started/",F.i18n.zone,""),t.Q6J("matchRouter",F.regexs.docs),t.xp6(1),t.hij(" ",t.lcZ(3,11,"app.header.menu.docs")," "),t.xp6(2),t.MGl("routerLink","/components/sv/",F.i18n.zone,""),t.Q6J("matchRouter",F.regexs.components),t.xp6(1),t.hij(" ",t.lcZ(6,13,"app.header.menu.components")," "),t.xp6(2),t.Q6J("ngIf",F.isMobile),t.xp6(1),t.Q6J("ngIf",!F.isMobile),t.xp6(3),t.hij(" ",t.lcZ(12,15,"app.header.menu.themes")," "),t.xp6(2),t.Q6J("ngIf",F.isMobile)}}function Bt(ye,J){if(1&ye){const F=t.EpF();t.TgZ(0,"i",24),t.NdJ("nzPopoverVisibleChange",function(Le){t.CHM(F);const ft=t.oxw();return t.KtG(ft.menuVisible=Le)}),t.qZA()}if(2&ye){const F=t.oxw(),X=t.MAs(1);t.Q6J("nzPopoverContent",X)("nzPopoverVisible",F.menuVisible)("nzPopoverTitle",void 0)}}function on(ye,J){}function tn(ye,J){if(1&ye&&t._UZ(0,"nz-option",28),2&ye){const F=J.$implicit;t.Q6J("nzLabel",F+".x")("nzValue",F)}}function xn(ye,J){if(1&ye){const F=t.EpF();t.ynx(0),t.YNc(1,on,0,0,"ng-template",25),t.TgZ(2,"nz-select",26),t.NdJ("ngModelChange",function(Le){t.CHM(F);const ft=t.oxw();return t.KtG(ft.toVersion(Le))}),t.YNc(3,tn,1,2,"nz-option",27),t._UZ(4,"nz-option",28),t.qZA(),t.TgZ(5,"button",29),t.NdJ("click",function(){t.CHM(F);const Le=t.oxw();return t.KtG(Le.langChange("zh"===Le.i18n.zone?"en":"zh"))}),t._uU(6),t.ALo(7,"i18n"),t.qZA(),t.TgZ(8,"button",30),t.NdJ("click",function(){t.CHM(F);const Le=t.oxw();return t.KtG(Le.rtl.toggle())}),t._uU(9),t.ALo(10,"uppercase"),t.qZA(),t._UZ(11,"github-button",31),t.BQk()}if(2&ye){const F=t.oxw(),X=t.MAs(1);t.xp6(1),t.Q6J("ngTemplateOutlet",X),t.xp6(1),t.Q6J("ngModel",F.currentVersion),t.xp6(1),t.Q6J("ngForOf",F.oldVersionList),t.xp6(1),t.Q6J("nzLabel",F.currentVersion)("nzValue",F.currentVersion),t.xp6(2),t.hij(" ",t.lcZ(7,7,"app.header.lang")," "),t.xp6(3),t.hij(" ",t.lcZ(10,9,F.rtl.nextDir)," ")}}const ti=o(4147);let Ci=(()=>{class ye{get win(){return this.doc.defaultView||window}constructor(F,X,Le,ft,Pt,Rt,Jt,nn){this.i18n=F,this.router=X,this.msg=Le,this.mobileSrv=ft,this.doc=Pt,this.cdr=Rt,this.rtl=Jt,this.layout=nn,this.inited=!1,this.oldVersionList=[15,14,13,12,11,10,9,8,1],this.currentVersion=ti.version,this.delonLibs=[{name:"theme"},{name:"auth"},{name:"acl"},{name:"form"},{name:"cache"},{name:"chart"},{name:"mock"},{name:"util"},{name:"cli"}],this.menuVisible=!1,this.regexs={docs:{regex:/^\/docs/},components:{regex:/^\/components/},cli:{regex:/^\/cli/},delon:{regex:/^\/(theme|auth|acl|form|cache|chart|mock|util)/}},X.events.pipe((0,Pn.h)(Cn=>Cn instanceof ni.m2)).subscribe(()=>{this.menuVisible=!1,this.genDelonType()}),this.mobileSrv.change.subscribe(Cn=>{this.isMobile=Cn,this.inited&&this.cdr.detectChanges()})}genDelonType(){if(!this.inited)return;const F=this.router.url.match(this.regexs.delon.regex);this.delonType=F?.[1],this.cdr.detectChanges()}ngAfterViewInit(){this.inited=!0,this.genDelonType()}toVersion(F){if(F!=this.currentVersion){if(F>=13)return void(this.win.location.href=`https://ng-alain.com/version/${F}.x/`);this.win.open("https://github.com/ng-alain/archive-docs/blob/full/README.md")}}langChange(F){this.i18n.use(F,{},!1),this.router.navigateByUrl(`${this.i18n.getRealUrl(this.router.url)}/${F}`).then(()=>{this.layout.render=!1,setTimeout(()=>{this.layout.render=!0},25)})}onCopy(F){(0,$a.J)(F).then(()=>this.msg.success(this.i18n.fanyi("app.demo.copied")))}to(F){F.url&&this.router.navigateByUrl(F.url)}toViaMobile(F){-1===F.indexOf("/")&&(F=`/${F}/getting-started`),this.router.navigateByUrl(`${F}/${this.i18n.zone}`).then(()=>{this.menuVisible=!1,this.cdr.detectChanges()})}static#e=this.\u0275fac=function(X){return new(X||ye)(t.Y36(an.Oi),t.Y36(ni.F0),t.Y36(nr.dD),t.Y36(xi.W),t.Y36(C.K0),t.Y36(t.sBO),t.Y36(an.aP),t.Y36(xr))};static#t=this.\u0275cmp=t.Xpm({type:ye,selectors:[["app-header"]],hostVars:3,hostBindings:function(X,Le){2&X&&(t.uIk("id","header"),t.ekj("clearfix",!0))},decls:13,vars:6,consts:[["menu",""],["nz-icon","","nzType","menu","nz-popover","","nzTooltipOverlayClassName","popover-menu","nzPopoverPlacement","bottomRight","nzPopoverTrigger","click","class","nav-phone-icon",3,"nzPopoverContent","nzPopoverVisible","nzPopoverTitle","nzPopoverVisibleChange",4,"ngIf"],["nz-row","",2,"flex-flow","nowrap","height","64px"],["nz-col","","nzXs","24","nzSm","24","nzMd","24","nzLg","24","nzXl","5","nzXXl","4"],["nz-tooltip","","id","logo",3,"routerLink","nzTooltipTitle","click"],["src","./assets/img/logo-color.svg",2,"max-height","32px"],["nz-col","","nz-col","","nzXs","0","nzSm","0","nzMd","0","nzLg","0","nzXl","19","nzXXl","20",1,"menu-row"],[4,"ngIf"],["nz-menu","","id","nav",1,"menu-site",3,"nzMode"],["nz-menu-item","",3,"routerLink","matchRouter"],["nz-menu-group","",3,"nzTitle",4,"ngIf"],["nz-menu-item","",3,"matchRouter",4,"ngIf"],["nz-menu-item",""],["href","https://e.ng-alain.com/","target","_blank"],["nz-menu-group","",3,"nzTitle"],["nz-menu-item","",3,"routerLink",4,"ngFor","ngForOf"],["nz-menu-item","",3,"routerLink"],["nz-menu-item","",3,"matchRouter"],["nz-dropdown","","nzPlacement","bottomRight",3,"nzDropdownMenu"],["nz-icon","","nzType","down"],["delonMenu","nzDropdownMenu"],["nz-menu",""],["nz-menu-item","","href","https://github.com/ng-alain/ng-alain","target","_blank"],["nz-menu-item","",3,"click"],["nz-icon","","nzType","menu","nz-popover","","nzTooltipOverlayClassName","popover-menu","nzPopoverPlacement","bottomRight","nzPopoverTrigger","click",1,"nav-phone-icon",3,"nzPopoverContent","nzPopoverVisible","nzPopoverTitle","nzPopoverVisibleChange"],[3,"ngTemplateOutlet"],["nzSize","small",1,"version",3,"ngModel","ngModelChange"],[3,"nzLabel","nzValue",4,"ngFor","ngForOf"],[3,"nzLabel","nzValue"],["nz-button","","nzGhost","","nzSize","small",1,"header-button","header-lang-button",3,"click"],["nz-button","","nzGhost","","nzSize","small",1,"header-button","header-direction-button",3,"click"],["type","stargazers","size","default","namespace","ng-alain","repo","ng-alain"]],template:function(X,Le){1&X&&(t.YNc(0,zt,14,17,"ng-template",null,0,t.W1O),t.YNc(2,Bt,1,3,"i",1),t.TgZ(3,"div",2)(4,"div",3)(5,"h1")(6,"a",4),t.NdJ("click",function(){return Le.onCopy("316911865")}),t.ALo(7,"i18n"),t._UZ(8,"img",5),t._uU(9," NG-ALAIN "),t.qZA()()(),t.TgZ(10,"div",6),t._UZ(11,"header-search"),t.YNc(12,xn,12,11,"ng-container",7),t.qZA()()),2&X&&(t.xp6(2),t.Q6J("ngIf",Le.isMobile),t.xp6(4),t.MGl("routerLink","/",Le.i18n.zone,"")("nzTooltipTitle","",t.lcZ(7,4,"app.footer.qqgroup"),": 316911865"),t.xp6(6),t.Q6J("ngIf",!Le.isMobile))},dependencies:[C.sg,C.O5,C.tP,zo.JJ,zo.On,ni.rH,hn.ix,ai.w,Sr.dQ,Or.wO,Or.u9,Or.uA,To.cm,To.RR,Ur.t3,Ur.SK,As.SY,rs.lU,wr.Ip,wr.Vq,Vo.Ls,Yr.M,Vl.J,ks,C.gd,Pr.C],encapsulation:2,changeDetection:0})}return ye})();var Po=o(89359);let or=(()=>{class ye{get doc(){return this._doc||document}get cookie(){return this.platform.isBrowser?this.doc.cookie:""}constructor(F,X){this._doc=F,this.platform=X}getAll(){const F={},X=this.cookie.split("; ");for(let Le=0;Le0){const Rt=decodeURIComponent(ft.substring(0,Pt));null==F[Rt]&&(F[Rt]=decodeURIComponent(ft.substring(Pt+1)))}}return F}get(F){return this.getAll()[F]}put(F,X,Le){if(!this.platform.isBrowser)return;const ft={path:"/",...Le};"number"==typeof ft.expires&&(ft.expires=new Date(+new Date+1e3*ft.expires)),"string"!=typeof ft.expires&&(ft.expires=ft.expires?ft.expires.toUTCString():"");const Pt=ft,Rt=Object.keys(Pt).filter(Jt=>Pt[Jt]&&!0!==Pt[Jt]).map(Jt=>`${Jt}=${Pt[Jt].split(";")[0]}`).join(";");this.doc.cookie=`${encodeURIComponent(String(F))}=${encodeURIComponent(String(X))}${Rt?`; ${Rt}`:""}`}remove(F,X){this.put(F,"",X)}removeAll(){this.doc.cookie=""}static#e=this.\u0275fac=function(X){return new(X||ye)(t.LFG(C.K0),t.LFG(mi.t4))};static#t=this.\u0275prov=t.Yz7({token:ye,factory:ye.\u0275fac,providedIn:"root"})}return ye})(),Gs=(()=>{class ye{constructor(F,X){this.cookieSrv=F,this.msg=X,this.key="test-key",this.get()}get(){this.value=this.cookieSrv.get(this.key)}set(F){this.cookieSrv.put(this.key,(+new Date).toString(),F),this.msg.success("Success")}remove(){this.cookieSrv.remove(this.key)}static#e=this.\u0275fac=function(X){return new(X||ye)(t.Y36(or),t.Y36(nr.dD))};static#t=this.\u0275cmp=t.Xpm({type:ye,selectors:[["util-browser-cookie"]],decls:10,vars:1,consts:[["classs","mb-md"],["nz-button","",3,"click"]],template:function(X,Le){1&X&&(t.TgZ(0,"p",0),t._uU(1),t.qZA(),t.TgZ(2,"button",1),t.NdJ("click",function(){return Le.get()}),t._uU(3,"Get"),t.qZA(),t.TgZ(4,"button",1),t.NdJ("click",function(){return Le.set()}),t._uU(5,"Set"),t.qZA(),t.TgZ(6,"button",1),t.NdJ("click",function(){return Le.set({expires:10})}),t._uU(7,"Set 10s expired"),t.qZA(),t.TgZ(8,"button",1),t.NdJ("click",function(){return Le.remove()}),t._uU(9,"Remove"),t.qZA()),2&X&&(t.xp6(1),t.hij("Result: ",Le.value||"NULL",""))},dependencies:[hn.ix,ai.w,Sr.dQ],encapsulation:2})}return ye})();var as=o(27358);let Rs=(()=>{class ye{constructor(){this.item={id:"util-browser-cookie",meta:{type:"example"},summary:"",code:"import { Component } from '@angular/core';\nimport { CookieOptions, CookieService } from '@delon/util/browser';\nimport { NzMessageService } from 'ng-zorro-antd/message';\n\n@Component({\n selector: 'util-browser-cookie',\n template: `\n

      Result: {{ value || 'NULL' }}

      \n \n \n \n \n `,\n})\nexport class UtilCookieComponent {\n key = 'test-key';\n value?: string;\n\n constructor(private cookieSrv: CookieService, private msg: NzMessageService) {\n this.get();\n }\n\n get(): void {\n this.value = this.cookieSrv.get(this.key)!;\n }\n\n set(options?: CookieOptions): void {\n this.cookieSrv.put(this.key, (+new Date()).toString(), options);\n this.msg.success(`Success`);\n }\n\n remove(): void {\n this.cookieSrv.remove(this.key);\n }\n}",name:"cookie",urls:"packages/util/browser/demo/cookie.md",type:"example",lang:"ts",componentName:"UtilCookieComponent",componentIndexName:"UtilCookieIndexComponent"}}static#e=this.\u0275fac=function(X){return new(X||ye)};static#t=this.\u0275cmp=t.Xpm({type:ye,selectors:[["util-browser-cookie-index"]],decls:2,vars:1,consts:[["type","simple",3,"item"]],template:function(X,Le){1&X&&(t.TgZ(0,"code-box",0),t._UZ(1,"util-browser-cookie"),t.qZA()),2&X&&t.Q6J("item",Le.item)},dependencies:[as.e,Gs],styles:["[_nghost-%COMP%]{display:block}"]})}return ye})();var Wr=o(59765);let Ul=(()=>{class ye{constructor(){this.value=100}static#e=this.\u0275fac=function(X){return new(X||ye)};static#t=this.\u0275cmp=t.Xpm({type:ye,selectors:[["util-pipes-currency-currency-cny"]],decls:8,vars:5,consts:[[1,"mb-md"],["nzAddOnBefore","Value"],["type","text","nz-input","",3,"ngModel","ngModelChange"]],template:function(X,Le){1&X&&(t.TgZ(0,"p",0),t._uU(1," {{"),t.TgZ(2,"span"),t._uU(3),t.qZA(),t._uU(4),t.ALo(5,"cny"),t.qZA(),t.TgZ(6,"nz-input-group",1)(7,"input",2),t.NdJ("ngModelChange",function(Pt){return Le.value=Pt}),t.qZA()()),2&X&&(t.xp6(3),t.hij(" ",Le.value," | cny "),t.xp6(1),t.hij("}} = ",t.lcZ(5,3,Le.value)," "),t.xp6(3),t.Q6J("ngModel",Le.value))},dependencies:[zo.Fj,zo.JJ,zo.On,ai.w,Ns.Zp,Ns.gB,Wr.S],encapsulation:2})}return ye})(),Yl=(()=>{class ye{constructor(){this.item={id:"util-pipes-currency-currency-cny",meta:{type:"example"},summary:"",code:'import { Component } from \'@angular/core\';\n\n@Component({\n selector: \'util-pipes-currency-currency-cny\',\n template: `\n

      \n {{ {{ value }} | cny }} = {{ value | cny }}\n

      \n \n \n \n `,\n})\nexport class UtilCurrencyCnyComponent {\n value = 100;\n}',name:"currency-cny",urls:"packages/util/pipes/currency/demo/currency-cny.md",type:"example",lang:"ts",componentName:"UtilCurrencyCnyComponent",componentIndexName:"UtilCurrencyCnyIndexComponent"}}static#e=this.\u0275fac=function(X){return new(X||ye)};static#t=this.\u0275cmp=t.Xpm({type:ye,selectors:[["util-pipes-currency-currency-cny-index"]],decls:2,vars:1,consts:[["type","simple",3,"item"]],template:function(X,Le){1&X&&(t.TgZ(0,"code-box",0),t._UZ(1,"util-pipes-currency-currency-cny"),t.qZA()),2&X&&t.Q6J("item",Le.item)},dependencies:[as.e,Ul],styles:["[_nghost-%COMP%]{display:block}"]})}return ye})();var Io=o(68373),pr=o(4171);const ho=function(ye){return{precision:ye}};let fa=(()=>{class ye{constructor(){this.value=123456,this.precision=1}static#e=this.\u0275fac=function(X){return new(X||ye)};static#t=this.\u0275cmp=t.Xpm({type:ye,selectors:[["util-pipes-currency-currency-mega"]],decls:19,vars:16,consts:[[1,"mb-md"],["nzAddOnBefore","Value",1,"mb-md"],["type","text","nz-input","",3,"ngModel","ngModelChange"],["nzAddOnBefore","Precision"],[3,"ngModel","nzMin","nzMax","ngModelChange"]],template:function(X,Le){1&X&&(t.TgZ(0,"p",0),t._uU(1," {{"),t.TgZ(2,"span"),t._uU(3),t.qZA(),t._uU(4),t.ALo(5,"mega"),t.qZA(),t.TgZ(6,"p",0),t._uU(7," {{"),t.TgZ(8,"span"),t._uU(9),t.TgZ(10,"span"),t._uU(11),t.qZA(),t._uU(12," \u5927\u62ec\u53f7 "),t.qZA(),t._uU(13),t.ALo(14,"mega"),t.qZA(),t.TgZ(15,"nz-input-group",1)(16,"input",2),t.NdJ("ngModelChange",function(Pt){return Le.value=Pt}),t.qZA()(),t.TgZ(17,"nz-input-group",3)(18,"nz-input-number",4),t.NdJ("ngModelChange",function(Pt){return Le.precision=Pt}),t.qZA()()),2&X&&(t.xp6(3),t.hij(" ",Le.value," | mega "),t.xp6(1),t.hij("}} = ",t.lcZ(5,9,Le.value)," "),t.xp6(5),t.hij(" ",Le.value," | mega: \u5927\u62ec\u53f7 precision: "),t.xp6(2),t.Oqu(Le.precision),t.xp6(2),t.hij("}} = ",t.xi3(14,11,Le.value,t.VKq(14,ho,Le.precision))," "),t.xp6(3),t.Q6J("ngModel",Le.value),t.xp6(2),t.Q6J("ngModel",Le.precision)("nzMin",0)("nzMax",292))},dependencies:[zo.Fj,zo.JJ,zo.On,ai.w,Ns.Zp,Ns.gB,Io._V,pr.A],encapsulation:2})}return ye})(),Wl=(()=>{class ye{constructor(){this.item={id:"util-pipes-currency-currency-mega",meta:{type:"example"},summary:"",code:'import { Component } from \'@angular/core\';\n\n@Component({\n selector: \'util-pipes-currency-currency-mega\',\n template: `\n

      \n {{ {{ value }} | mega }} = {{ value | mega }}\n

      \n

      \n {{\n {{ value }} | mega: \u5927\u62ec\u53f7 precision: {{ precision }} \u5927\u62ec\u53f7 }} =\n {{ value | mega: { precision: precision } }}\n

      \n \n \n \n \n \n \n `,\n})\nexport class UtilCurrencyMegaComponent {\n value = 123456;\n precision = 1;\n}',name:"currency-mega",urls:"packages/util/pipes/currency/demo/currency-mega.md",type:"example",lang:"ts",componentName:"UtilCurrencyMegaComponent",componentIndexName:"UtilCurrencyMegaIndexComponent"}}static#e=this.\u0275fac=function(X){return new(X||ye)};static#t=this.\u0275cmp=t.Xpm({type:ye,selectors:[["util-pipes-currency-currency-mega-index"]],decls:2,vars:1,consts:[["type","simple",3,"item"]],template:function(X,Le){1&X&&(t.TgZ(0,"code-box",0),t._UZ(1,"util-pipes-currency-currency-mega"),t.qZA()),2&X&&t.Q6J("item",Le.item)},dependencies:[as.e,fa],styles:["[_nghost-%COMP%]{display:block}"]})}return ye})();var $l=o(13072);const nd=function(ye){return{precision:ye}};let Ka=(()=>{class ye{constructor(){this.value=10000.345,this.precision=2}static#e=this.\u0275fac=function(X){return new(X||ye)};static#t=this.\u0275cmp=t.Xpm({type:ye,selectors:[["util-pipes-currency-currency-price"]],decls:10,vars:11,consts:[[1,"mb-md"],["nzAddOnBefore","Value",1,"mb-md"],["type","text","nz-input","",3,"ngModel","ngModelChange"],["nzAddOnBefore","Precision"],[3,"ngModel","nzMin","nzMax","ngModelChange"]],template:function(X,Le){1&X&&(t.TgZ(0,"p",0),t._uU(1," {{"),t.TgZ(2,"span"),t._uU(3),t.qZA(),t._uU(4),t.ALo(5,"price"),t.qZA(),t.TgZ(6,"nz-input-group",1)(7,"input",2),t.NdJ("ngModelChange",function(Pt){return Le.value=Pt}),t.qZA()(),t.TgZ(8,"nz-input-group",3)(9,"nz-input-number",4),t.NdJ("ngModelChange",function(Pt){return Le.precision=Pt}),t.qZA()()),2&X&&(t.xp6(3),t.hij(" ",Le.value," | price "),t.xp6(1),t.hij("}} = ",t.xi3(5,6,Le.value,t.VKq(9,nd,Le.precision))," "),t.xp6(3),t.Q6J("ngModel",Le.value),t.xp6(2),t.Q6J("ngModel",Le.precision)("nzMin",0)("nzMax",292))},dependencies:[zo.Fj,zo.JJ,zo.On,ai.w,Ns.Zp,Ns.gB,Io._V,$l.R],encapsulation:2})}return ye})(),Za=(()=>{class ye{constructor(){this.item={id:"util-pipes-currency-currency-price",meta:{type:"example"},summary:"",code:'import { Component } from \'@angular/core\';\n\n@Component({\n selector: \'util-pipes-currency-currency-price\',\n template: `\n

      \n {{ {{ value }} | price }} = {{ value | price: { precision: precision } }}\n

      \n \n \n \n \n \n \n `,\n})\nexport class UtilCurrencyPriceComponent {\n value = 10000.345;\n precision = 2;\n}',name:"currency-price",urls:"packages/util/pipes/currency/demo/currency-price.md",type:"example",lang:"ts",componentName:"UtilCurrencyPriceComponent",componentIndexName:"UtilCurrencyPriceIndexComponent"}}static#e=this.\u0275fac=function(X){return new(X||ye)};static#t=this.\u0275cmp=t.Xpm({type:ye,selectors:[["util-pipes-currency-currency-price-index"]],decls:2,vars:1,consts:[["type","simple",3,"item"]],template:function(X,Le){1&X&&(t.TgZ(0,"code-box",0),t._UZ(1,"util-pipes-currency-currency-price"),t.qZA()),2&X&&t.Q6J("item",Le.item)},dependencies:[as.e,Ka],styles:["[_nghost-%COMP%]{display:block}"]})}return ye})();var ma=o(39542);let Ls=(()=>{class ye{constructor(){this.list=new Array(10).fill(0).map((F,X)=>({price:X+1})),this.number=0,this.matcher=(F,X)=>F.price>X}static#e=this.\u0275fac=function(X){return new(X||ye)};static#t=this.\u0275cmp=t.Xpm({type:ye,selectors:[["util-pipes-filter-filter"]],decls:12,vars:11,consts:[[1,"mb-md"],["nzAddOnBefore","number"],[3,"ngModel","ngModelChange"]],template:function(X,Le){1&X&&(t.TgZ(0,"p",0),t._uU(1," {{"),t.TgZ(2,"span"),t._uU(3),t.ALo(4,"json"),t.qZA(),t._uU(5),t.ALo(6,"json"),t.ALo(7,"filter"),t.qZA(),t.TgZ(8,"p",0),t._uU(9,"matcher = (item: PriceObject, number: number) => item.price > number;"),t.qZA(),t.TgZ(10,"nz-input-group",1)(11,"nz-input-number",2),t.NdJ("ngModelChange",function(Pt){return Le.number=Pt}),t.qZA()()),2&X&&(t.xp6(3),t.hij(" ",t.lcZ(4,3,Le.list)," | filter: matcher "),t.xp6(2),t.hij("}} = ",t.lcZ(6,5,t.Dn7(7,7,Le.list,Le.matcher,Le.number))," "),t.xp6(6),t.Q6J("ngModel",Le.number))},dependencies:[zo.JJ,zo.On,ai.w,Ns.gB,Io._V,C.Ts,ma.g],encapsulation:2})}return ye})(),jl=(()=>{class ye{constructor(){this.item={id:"util-pipes-filter-filter",meta:{type:"example"},summary:"",code:'import { Component } from \'@angular/core\';\n\n@Component({\n selector: \'util-pipes-filter-filter\',\n template: `\n

      \n {{ {{ list | json }} | filter: matcher }} = {{ list | filter: matcher:number | json }}\n

      \n

      matcher = (item: PriceObject, number: number) => item.price > number;

      \n \n \n \n `\n})\nexport class UtilFilterComponent {\n list = new Array(10).fill(0).map((_, idx) => ({ price: idx + 1 }));\n number = 0;\n matcher = (item: { price: number }, number: number) => item.price > number;\n}',name:"filter",urls:"packages/util/pipes/filter/demo/filter.md",type:"example",lang:"ts",componentName:"UtilFilterComponent",componentIndexName:"UtilFilterIndexComponent"}}static#e=this.\u0275fac=function(X){return new(X||ye)};static#t=this.\u0275cmp=t.Xpm({type:ye,selectors:[["util-pipes-filter-filter-index"]],decls:2,vars:1,consts:[["type","simple",3,"item"]],template:function(X,Le){1&X&&(t.TgZ(0,"code-box",0),t._UZ(1,"util-pipes-filter-filter"),t.qZA()),2&X&&t.Q6J("item",Le.item)},dependencies:[as.e,Ls],styles:["[_nghost-%COMP%]{display:block}"]})}return ye})();var ga=o(58859);let $r=(()=>{class ye{constructor(){this.value="123",this.maskStr="(###)"}static#e=this.\u0275fac=function(X){return new(X||ye)};static#t=this.\u0275cmp=t.Xpm({type:ye,selectors:[["util-pipes-format-format-mask"]],decls:11,vars:10,consts:[[1,"mb-md"],["nzAddOnBefore","Value",1,"mb-md"],["type","text","nz-input","",3,"ngModel","ngModelChange"],["nzAddOnBefore","Mask"]],template:function(X,Le){1&X&&(t.TgZ(0,"p",0),t._uU(1," {{"),t.TgZ(2,"span"),t._uU(3),t.ALo(4,"json"),t.qZA(),t._uU(5),t.ALo(6,"mask"),t.qZA(),t.TgZ(7,"nz-input-group",1)(8,"input",2),t.NdJ("ngModelChange",function(Pt){return Le.value=Pt}),t.qZA()(),t.TgZ(9,"nz-input-group",3)(10,"input",2),t.NdJ("ngModelChange",function(Pt){return Le.maskStr=Pt}),t.qZA()()),2&X&&(t.xp6(3),t.AsE(" ",Le.value," | mask: ",t.lcZ(4,5,Le.maskStr)," "),t.xp6(2),t.hij("}} = ",t.xi3(6,7,Le.value,Le.maskStr)," "),t.xp6(3),t.Q6J("ngModel",Le.value),t.xp6(2),t.Q6J("ngModel",Le.maskStr))},dependencies:[zo.Fj,zo.JJ,zo.On,ai.w,Ns.Zp,Ns.gB,C.Ts,ga.V],encapsulation:2})}return ye})(),jr=(()=>{class ye{constructor(){this.item={id:"util-pipes-format-format-mask",meta:{type:"example"},summary:"",code:'import { Component } from \'@angular/core\';\n\n@Component({\n selector: \'util-pipes-format-format-mask\',\n template: `\n

      \n {{ {{ value }} | mask: {{ maskStr | json }} }} = {{ value | mask: maskStr }}\n

      \n \n \n \n \n \n \n `,\n})\nexport class UtilFormatMaskComponent {\n value = \'123\';\n maskStr = \'(###)\';\n}',name:"format-mask",urls:"packages/util/pipes/format/demo/format-mask.md",type:"example",lang:"ts",componentName:"UtilFormatMaskComponent",componentIndexName:"UtilFormatMaskIndexComponent"}}static#e=this.\u0275fac=function(X){return new(X||ye)};static#t=this.\u0275cmp=t.Xpm({type:ye,selectors:[["util-pipes-format-format-mask-index"]],decls:2,vars:1,consts:[["type","simple",3,"item"]],template:function(X,Le){1&X&&(t.TgZ(0,"code-box",0),t._UZ(1,"util-pipes-format-format-mask"),t.qZA()),2&X&&t.Q6J("item",Le.item)},dependencies:[as.e,$r],styles:["[_nghost-%COMP%]{display:block}"]})}return ye})();var Ja=o(69694),Ga=o(70612);const Kl=["bar"];let Zl=(()=>{class ye{constructor(F){this.msg=F,this.width=400,this.height=200,this.id=-1,this.salesData=new Array(12).fill({}).map((X,Le)=>({x:`${Le+1}\u6708`,y:Math.floor(1e3*Math.random())+200,color:Le>5?"#f50":void 0}))}handleClick(F){this.msg.info(`${F.item.x} - ${F.item.y}`)}onResize({width:F}){cancelAnimationFrame(this.id),this.id=requestAnimationFrame(()=>{this.width=F,this.barComp.chart.forceFit()})}static#e=this.\u0275fac=function(X){return new(X||ye)(t.Y36(nr.dD))};static#t=this.\u0275cmp=t.Xpm({type:ye,selectors:[["chart-getting-started-resizable"]],viewQuery:function(X,Le){if(1&X&&t.Gf(Kl,5),2&X){let ft;t.iGM(ft=t.CRH())&&(Le.barComp=ft.first)}},decls:4,vars:8,consts:[["nz-resizable","",2,"background","#eee","border","1px solid #ddd","padding","16px",3,"nzMinWidth","nzMaxHeight","nzMinHeight","nzResize"],[3,"height","title","data","clickItem"],["bar",""]],template:function(X,Le){1&X&&(t.TgZ(0,"div",0),t.NdJ("nzResize",function(Pt){return Le.onResize(Pt)}),t._UZ(1,"nz-resize-handles"),t.TgZ(2,"g2-bar",1,2),t.NdJ("clickItem",function(Pt){return Le.handleClick(Pt)}),t.qZA()()),2&X&&(t.Udp("width",Le.width,"px"),t.Q6J("nzMinWidth",200)("nzMaxHeight",Le.height)("nzMinHeight",80),t.xp6(2),t.Q6J("height",Le.height)("title","\u9500\u552e\u989d\u8d8b\u52bf")("data",Le.salesData))},dependencies:[Ja.g,Ga.IJ,Ga.Op],encapsulation:2})}return ye})(),fr=(()=>{class ye{constructor(){this.item={id:"chart-getting-started-resizable",meta:{title:{"zh-CN":"\u57fa\u7840\u6837\u4f8b","en-US":"Basic Usage"},type:"example"},summary:{"zh-CN":'

      \u5229\u7528 nz-resizable \u6784\u5efa\u4e00\u4e2a\u53ef\u8c03\u6574\u5c3a\u5bf8\u7684\u5bb9\u5668\u3002

      ',"en-US":'

      Use nz-resizable to build a resizable container.

      '},code:'import { Component, ViewChild } from \'@angular/core\';\nimport { G2BarClickItem, G2BarComponent, G2BarData } from \'@delon/chart/bar\';\nimport { NzMessageService } from \'ng-zorro-antd/message\';\nimport { NzResizeEvent } from \'ng-zorro-antd/resizable\';\n\n@Component({\n selector: \'chart-getting-started-resizable\',\n template: ` \n \n \n `,\n})\nexport class ChartResizableComponent {\n @ViewChild(\'bar\') private readonly barComp!: G2BarComponent;\n width = 400;\n height = 200;\n private id = -1;\n constructor(private msg: NzMessageService) {}\n\n salesData: G2BarData[] = new Array(12).fill({}).map((_i, idx) => ({\n x: `${idx + 1}\u6708`,\n y: Math.floor(Math.random() * 1000) + 200,\n color: idx > 5 ? \'#f50\' : undefined,\n }));\n\n handleClick(data: G2BarClickItem): void {\n this.msg.info(`${data.item.x} - ${data.item.y}`);\n }\n\n onResize({ width }: NzResizeEvent): void {\n cancelAnimationFrame(this.id);\n this.id = requestAnimationFrame(() => {\n this.width = width!;\n this.barComp.chart.forceFit();\n });\n }\n}',name:"resizable",urls:"packages/chart/docs/demo/resizable.md",type:"example",lang:"ts",componentName:"ChartResizableComponent",componentIndexName:"ChartResizableIndexComponent"}}static#e=this.\u0275fac=function(X){return new(X||ye)};static#t=this.\u0275cmp=t.Xpm({type:ye,selectors:[["chart-getting-started-resizable-index"]],decls:2,vars:1,consts:[["type","simple",3,"item"]],template:function(X,Le){1&X&&(t.TgZ(0,"code-box",0),t._UZ(1,"chart-getting-started-resizable"),t.qZA()),2&X&&t.Q6J("item",Le.item)},dependencies:[as.e,Zl],styles:["[_nghost-%COMP%]{display:block}"]})}return ye})();var Fs=o(79663);function id(ye,J){if(1&ye&&(t.TgZ(0,"tr")(1,"td")(2,"span",3),t._uU(3,"Name"),t.qZA(),t._uU(4),t.qZA(),t.TgZ(5,"td")(6,"span",3),t._uU(7,"Age"),t.qZA(),t._uU(8),t.qZA(),t.TgZ(9,"td")(10,"span",3),t._uU(11,"Address"),t.qZA(),t._uU(12),t.qZA()()),2&ye){const F=J.$implicit;t.xp6(4),t.hij(" ",F.name," "),t.xp6(4),t.hij(" ",F.age," "),t.xp6(4),t.hij(" ",F.address," ")}}let od=(()=>{class ye{constructor(){this.dataSet=[{key:"1",name:"John Brown",age:32,address:"New York No. 1 Lake Park"},{key:"2",name:"Jim Green",age:42,address:"London No. 1 Lake Park"},{key:"3",name:"Joe Black",age:32,address:"Sidney No. 1 Lake Park"}]}static#e=this.\u0275fac=function(X){return new(X||ye)};static#t=this.\u0275cmp=t.Xpm({type:ye,selectors:[["theme-tools-table-rep"]],decls:12,vars:2,consts:[["nzTitle","This is title",1,"ant-table-rep__hide-header-footer",3,"nzData"],["basicTable",""],[4,"ngFor","ngForOf"],[1,"ant-table-rep__title"]],template:function(X,Le){if(1&X&&(t.TgZ(0,"nz-table",0,1)(2,"thead")(3,"tr")(4,"th"),t._uU(5,"Name"),t.qZA(),t.TgZ(6,"th"),t._uU(7,"Age"),t.qZA(),t.TgZ(8,"th"),t._uU(9,"Address"),t.qZA()()(),t.TgZ(10,"tbody"),t.YNc(11,id,13,3,"tr",2),t.qZA()()),2&X){const ft=t.MAs(1);t.Q6J("nzData",Le.dataSet),t.xp6(11),t.Q6J("ngForOf",ft.data)}},dependencies:[C.sg,Fs.N8,Fs.Uo,Fs._C,Fs.Om,Fs.p0,Fs.$Z],encapsulation:2})}return ye})();const Jl={"example-cookie-index":{title:void 0,component:Rs},"example-currency-cny-index":{title:void 0,component:Yl},"example-currency-mega-index":{title:void 0,component:Wl},"example-currency-price-index":{title:void 0,component:Za},"example-filter-index":{title:void 0,component:jl},"example-format-mask-index":{title:void 0,component:jr},"example-resizable-index":{title:{"zh-CN":"\u57fa\u7840\u6837\u4f8b","en-US":"Basic Usage"},component:fr},"example-table-rep-index":{title:{"zh-CN":"\u57fa\u7840\u6837\u4f8b","en-US":"Basic Usage"},component:(()=>{class ye{constructor(){this.item={id:"theme-tools-table-rep",meta:{title:{"zh-CN":"\u57fa\u7840\u6837\u4f8b","en-US":"Basic Usage"},type:"example"},summary:{"zh-CN":"

      \u5c0f\u5c4f\u5e55\u67e5\u770b\u6548\u679c\u3002

      ","en-US":"

      Mobile screen view effect.

      "},code:"import { Component } from '@angular/core';\n\n@Component({\n selector: 'theme-tools-table-rep',\n template: `\n \n \n \n Name\n Age\n Address\n \n \n \n \n \n Name\n {{ data.name }}\n \n \n Age\n {{ data.age }}\n \n \n Address\n {{ data.address }}\n \n \n \n \n `,\n})\nexport class ThemeTableRepComponent {\n dataSet = [\n {\n key: '1',\n name: 'John Brown',\n age: 32,\n address: 'New York No. 1 Lake Park',\n },\n {\n key: '2',\n name: 'Jim Green',\n age: 42,\n address: 'London No. 1 Lake Park',\n },\n {\n key: '3',\n name: 'Joe Black',\n age: 32,\n address: 'Sidney No. 1 Lake Park',\n },\n ];\n}",name:"table-rep",urls:"packages/theme/docs/demo/table-rep.md",type:"example",lang:"ts",componentName:"ThemeTableRepComponent",componentIndexName:"ThemeTableRepIndexComponent"}}static#e=this.\u0275fac=function(X){return new(X||ye)};static#t=this.\u0275cmp=t.Xpm({type:ye,selectors:[["theme-tools-table-rep-index"]],decls:2,vars:1,consts:[["type","simple",3,"item"]],template:function(X,Le){1&X&&(t.TgZ(0,"code-box",0),t._UZ(1,"theme-tools-table-rep"),t.qZA()),2&X&&t.Q6J("item",Le.item)},dependencies:[as.e,od],styles:["[_nghost-%COMP%]{display:block}"]})}return ye})()}};let sd=(()=>{class ye{static#e=this.\u0275fac=function(X){return new(X||ye)};static#t=this.\u0275mod=t.oAB({type:ye});static#n=this.\u0275inj=t.cJS({imports:[Po.m]})}return ye})(),rd=(()=>{class ye{constructor(F){this.i18n=F}static#e=this.\u0275fac=function(X){return new(X||ye)(t.Y36(an.Oi))};static#t=this.\u0275cmp=t.Xpm({type:ye,selectors:[["not-found"]],decls:9,vars:1,consts:[["id","page-404"],[1,"links"],[3,"routerLink"]],template:function(X,Le){1&X&&(t.TgZ(0,"div",0)(1,"section")(2,"h1"),t._uU(3,"404"),t.qZA(),t.TgZ(4,"h4"),t._uU(5,"\u4f60\u8981\u627e\u7684\u9875\u9762\u4e0d\u5b58\u5728\uff0c\u4f60\u53ef\u80fd\u5728\u627e\uff1a"),t.qZA(),t.TgZ(6,"div",1)(7,"a",2),t._uU(8,"\u8fd4\u56de\u9996\u9875"),t.qZA()()()()),2&X&&(t.xp6(7),t.MGl("routerLink","/",Le.i18n.zone,""))},dependencies:[ni.rH],encapsulation:2})}return ye})();var $u=o(97582),Qa=o(99402),Kr=o.n(Qa),ad=o(74648),Ir=o(77456),Xa=o(68014);function va(ye,J){1&ye&&(t._uU(0," \u56fd\u5185\u955c\u50cf\uff1a"),t.TgZ(1,"a",34),t._uU(2,"ng-alain.gitee.io"),t.qZA())}function ju(ye,J){1&ye&&t._UZ(0,"github-button",35)}function Gl(ye,J){if(1&ye&&(t.TgZ(0,"div",36)(1,"a",37),t._UZ(2,"img",38),t.qZA()()),2&ye){const F=J.$implicit;t.xp6(1),t.s9C("href",F.url,t.LSH),t.xp6(1),t.MGl("src","./assets/screenshot/",F.type,".png",t.LSH)}}function Ql(ye,J){if(1&ye&&(t.TgZ(0,"div",39)(1,"a",40),t._UZ(2,"img",38),t.TgZ(3,"h3"),t._uU(4),t.ALo(5,"i18n"),t.qZA(),t.TgZ(6,"p"),t._uU(7),t.ALo(8,"i18n"),t.qZA()()()),2&ye){const F=J.$implicit;t.xp6(1),t.uIk("href","https://e.ng-alain.com/theme/"+F,t.LSH)("data-theme",F),t.xp6(1),t.MGl("src","./assets/screenshot/",F,".png",t.LSH),t.xp6(2),t.Oqu(t.lcZ(5,5,"app.home.theme."+F)),t.xp6(3),t.Oqu(t.lcZ(8,7,"app.home.theme."+F+".desc"))}}const ld=[{path:"",component:xr,children:[{path:"",redirectTo:"en",pathMatch:"full"},{path:":lang",component:(()=>{class ye{get isBrowser(){return this.platform.isBrowser}constructor(F,X,Le,ft){this.i18n=F,this.ngZone=X,this.doc=Le,this.platform=ft,this.list=[{type:"basic",url:"https://ng-alain.github.io/ng-alain"},{type:"pro",url:"https://e.ng-alain.com/theme/pro"},{type:"ms",url:"https://e.ng-alain.com/theme/ms"},{type:"yun",url:"https://e.ng-alain.com/theme/yun"}],this.themes=["pro","ms","yun"]}get body(){return this.doc.querySelector("body")}ngAfterViewInit(){this.isBrowser&&Kr().init()}ngOnInit(){this.body.classList.add("index-page")}ngOnDestroy(){this.body.classList.remove("index-page")}static#e=this.\u0275fac=function(X){return new(X||ye)(t.Y36(an.Oi),t.Y36(t.R0b),t.Y36(C.K0),t.Y36(mi.t4))};static#t=this.\u0275cmp=t.Xpm({type:ye,selectors:[["app-home"]],hostVars:2,hostBindings:function(X,Le){2&X&&t.ekj("home-wrapper",!0)},decls:114,vars:62,consts:[[1,"page-wrapper","page-banner"],[1,"page-banner__slogan"],["data-aos","fade-up","data-aos-once","true"],["data-aos","fade-up","data-aos-delay","150","data-aos-once","true"],[1,"page-banner__slogan-btn"],[3,"routerLink"],["nz-button","",3,"nzType","nzSize"],["href","https://ng-alain.surge.sh/","target","_blank","rel","noopener noreferrer","nz-tooltip","",3,"nzTooltipTitle"],["nz-button","",3,"nzSize"],["previewTpl",""],["type","stargazers","size","large","namespace","ng-alain","repo","ng-alain",4,"ngIf"],["nzAutoPlay","",1,"page-banner__img"],["nz-carousel-content","",4,"ngFor","ngForOf"],[1,"page-wrapper","page-feature"],[1,"page-feature__bg"],[1,"page-feature__bg-bottom"],[1,"page"],[1,"ant-row"],[1,"ant-col-xs-24","ant-col-md-6"],["data-aos","fade-up","data-aos-easing","ease-in-out","data-aos-delay","0",1,"page-feature__item"],["nz-icon","","nzType","heart"],["data-aos","fade-up","data-aos-easing","ease-in-out","data-aos-delay","50",1,"page-feature__item"],["data-aos","fade-up","data-aos-easing","ease-in-out","data-aos-delay","100",1,"page-feature__item"],["data-aos","fade-up","data-aos-easing","ease-in-out","data-aos-delay","150",1,"page-feature__item"],["nz-icon","","nzType","rocket"],["data-aos","fade-up","data-aos-easing","ease-in-out","data-aos-delay","200",1,"page-feature__item"],["nz-icon","","nzType","skin"],["data-aos","fade-up","data-aos-easing","ease-in-out","data-aos-delay","250",1,"page-feature__item"],["data-aos","fade-up","data-aos-easing","ease-in-out","data-aos-delay","300",1,"page-feature__item"],["nz-icon","","nzType","tool"],["data-aos","fade-up","data-aos-easing","ease-in-out","data-aos-delay","350",1,"page-feature__item"],["nz-icon","","nzType","layout"],[1,"page-wrapper","page-theme"],["class","ant-col-xs-24 ant-col-md-12",4,"ngFor","ngForOf"],["href","https://ng-alain.gitee.io","target","_blank"],["type","stargazers","size","large","namespace","ng-alain","repo","ng-alain"],["nz-carousel-content",""],["target","_blank",3,"href"],[3,"src"],[1,"ant-col-xs-24","ant-col-md-12"],["data-aos","zoom-in","data-aos-delay","0",1,"page-theme__item"]],template:function(X,Le){if(1&X&&(t.TgZ(0,"div",0)(1,"div",1)(2,"h1",2),t._uU(3,"NG-ALAIN"),t.qZA(),t.TgZ(4,"p",3),t._uU(5),t.ALo(6,"i18n"),t.qZA(),t.TgZ(7,"div",4)(8,"a",5)(9,"button",6),t._uU(10),t.ALo(11,"i18n"),t.qZA()(),t.TgZ(12,"a",7)(13,"button",8),t._uU(14),t.ALo(15,"i18n"),t.qZA(),t.YNc(16,va,3,0,"ng-template",null,9,t.W1O),t.qZA(),t.YNc(18,ju,1,0,"github-button",10),t.qZA()(),t.TgZ(19,"nz-carousel",11),t.YNc(20,Gl,3,2,"div",12),t.qZA()(),t.TgZ(21,"div",13),t._UZ(22,"div",14)(23,"div",15),t.TgZ(24,"div",16)(25,"h2"),t._uU(26),t.ALo(27,"i18n"),t.qZA(),t.TgZ(28,"div",17)(29,"div",18)(30,"div",19),t._UZ(31,"i",20),t.TgZ(32,"div")(33,"h3"),t._uU(34,"Ant Design"),t.qZA(),t.TgZ(35,"p"),t._uU(36),t.ALo(37,"i18n"),t.qZA()()()(),t.TgZ(38,"div",18)(39,"div",21),t._UZ(40,"i",20),t.TgZ(41,"div")(42,"h3"),t._uU(43,"NG-ZORRO"),t.qZA(),t.TgZ(44,"p"),t._uU(45),t.ALo(46,"i18n"),t.qZA()()()(),t.TgZ(47,"div",18)(48,"div",22),t._UZ(49,"i",20),t.TgZ(50,"div")(51,"h3"),t._uU(52,"Delon"),t.qZA(),t.TgZ(53,"p"),t._uU(54),t.ALo(55,"i18n"),t.qZA()()()(),t.TgZ(56,"div",18)(57,"div",23),t._UZ(58,"i",24),t.TgZ(59,"div")(60,"h3"),t._uU(61),t.ALo(62,"i18n"),t.qZA(),t.TgZ(63,"p"),t._uU(64),t.ALo(65,"i18n"),t.qZA()()()(),t.TgZ(66,"div",18)(67,"div",25),t._UZ(68,"i",26),t.TgZ(69,"div")(70,"h3"),t._uU(71),t.ALo(72,"i18n"),t.qZA(),t.TgZ(73,"p"),t._uU(74),t.ALo(75,"i18n"),t.qZA()()()(),t.TgZ(76,"div",18)(77,"div",27),t._UZ(78,"i",20),t.TgZ(79,"div")(80,"h3"),t._uU(81),t.ALo(82,"i18n"),t.qZA(),t.TgZ(83,"p"),t._uU(84),t.ALo(85,"i18n"),t.qZA()()()(),t.TgZ(86,"div",18)(87,"div",28),t._UZ(88,"i",29),t.TgZ(89,"div")(90,"h3"),t._uU(91),t.ALo(92,"i18n"),t.qZA(),t.TgZ(93,"p"),t._uU(94),t.ALo(95,"i18n"),t.qZA()()()(),t.TgZ(96,"div",18)(97,"div",30),t._UZ(98,"i",31),t.TgZ(99,"div")(100,"h3"),t._uU(101),t.ALo(102,"i18n"),t.qZA(),t.TgZ(103,"p"),t._uU(104),t.ALo(105,"i18n"),t.qZA()()()()()()(),t.TgZ(106,"div",32)(107,"div",16)(108,"h2"),t._uU(109),t.ALo(110,"i18n"),t.qZA(),t.TgZ(111,"div",17),t.YNc(112,Ql,9,9,"div",33),t.qZA()()(),t._UZ(113,"app-footer")),2&X){const ft=t.MAs(17);t.xp6(5),t.Oqu(t.lcZ(6,26,"app.home.slogan")),t.xp6(3),t.MGl("routerLink","/docs/getting-started/",Le.i18n.zone,""),t.xp6(1),t.Q6J("nzType","primary")("nzSize","large"),t.xp6(1),t.Oqu(t.lcZ(11,28,"app.home.start")),t.xp6(2),t.Q6J("nzTooltipTitle",ft),t.xp6(1),t.Q6J("nzSize","large"),t.xp6(1),t.Oqu(t.lcZ(15,30,"app.home.preview")),t.xp6(4),t.Q6J("ngIf",Le.isBrowser),t.xp6(2),t.Q6J("ngForOf",Le.list),t.xp6(6),t.Oqu(t.lcZ(27,32,"app.home.feature")),t.xp6(10),t.Oqu(t.lcZ(37,34,"app.home.feature.antd")),t.xp6(9),t.Oqu(t.lcZ(46,36,"app.home.feature.zorro")),t.xp6(9),t.Oqu(t.lcZ(55,38,"app.home.feature.delon")),t.xp6(7),t.Oqu(t.lcZ(62,40,"app.home.feature.out-of-box")),t.xp6(3),t.Oqu(t.lcZ(65,42,"app.home.feature.out-of-box.desc")),t.xp6(7),t.Oqu(t.lcZ(72,44,"app.home.feature.less")),t.xp6(3),t.Oqu(t.lcZ(75,46,"app.home.feature.less.desc")),t.xp6(7),t.Oqu(t.lcZ(82,48,"app.home.feature.rep")),t.xp6(3),t.Oqu(t.lcZ(85,50,"app.home.feature.rep.desc")),t.xp6(7),t.Oqu(t.lcZ(92,52,"app.home.feature.tool")),t.xp6(3),t.Oqu(t.lcZ(95,54,"app.home.feature.tool.desc")),t.xp6(7),t.Oqu(t.lcZ(102,56,"app.home.feature.demo")),t.xp6(3),t.Oqu(t.lcZ(105,58,"app.home.feature.demo.desc")),t.xp6(5),t.Oqu(t.lcZ(110,60,"app.home.theme")),t.xp6(3),t.Q6J("ngForOf",Le.themes)}},dependencies:[C.sg,C.O5,ni.rH,hn.ix,ai.w,Sr.dQ,Ir.QZ,Ir.pA,As.SY,Vo.Ls,Yr.M,Xa.c,Pr.C],encapsulation:2})}return(0,$u.gn)([(0,ad.EA)()],ye.prototype,"ngAfterViewInit",null),ye})(),data:{titleI18n:"slogan"}},{path:"docs",loadChildren:()=>o.e(311).then(o.bind(o,30311)).then(ye=>ye.DocsModule)},{path:"components",loadChildren:()=>o.e(414).then(o.bind(o,88414)).then(ye=>ye.ComponentsModule)},{path:"theme",loadChildren:()=>o.e(160).then(o.bind(o,79160)).then(ye=>ye.ThemeModule)},{path:"auth",loadChildren:()=>o.e(739).then(o.bind(o,23739)).then(ye=>ye.AuthModule)},{path:"acl",loadChildren:()=>o.e(821).then(o.bind(o,45821)).then(ye=>ye.AclModule)},{path:"cache",loadChildren:()=>o.e(520).then(o.bind(o,99520)).then(ye=>ye.CacheModule)},{path:"mock",loadChildren:()=>o.e(491).then(o.bind(o,12491)).then(ye=>ye.MockModule)},{path:"util",loadChildren:()=>o.e(711).then(o.bind(o,73711)).then(ye=>ye.UtilModule)},{path:"chart",loadChildren:()=>o.e(274).then(o.bind(o,47274)).then(ye=>ye.ChartModule)},{path:"form",loadChildren:()=>o.e(696).then(o.bind(o,48967)).then(ye=>ye.FormModule)},{path:"form-pages",loadChildren:()=>o.e(960).then(o.bind(o,38960)).then(ye=>ye.FormPagesModule)},{path:"cli",loadChildren:()=>o.e(598).then(o.bind(o,39598)).then(ye=>ye.CliModule)}]},{path:"dev",loadChildren:()=>o.e(967).then(o.bind(o,9967)).then(ye=>ye.DevTestModule)},{path:"404",component:rd},{path:"**",redirectTo:"404"}];let ya=(()=>{class ye{static#e=this.\u0275fac=function(X){return new(X||ye)};static#t=this.\u0275mod=t.oAB({type:ye});static#n=this.\u0275inj=t.cJS({imports:[Po.m,ni.Bz.forRoot(ld,{scrollPositionRestoration:"enabled",bindToComponentInputs:!0})]})}return ye})();var qa=o(92476),Ca=o(27854),Zr=o(93355);let Jr=(()=>{class ye extends Ca.H_{static#e=this.KEY="tinymce";ngOnInit(){this.loading=this.ui.loading||"\u52a0\u8f7d\u4e2d\u2026\u2026",this.config=this.ui.config||{}}change(F){this.ui.change&&this.ui.change(F),this.setValue(F)}static#t=this.\u0275fac=function(){let F;return function(Le){return(F||(F=t.n5z(ye)))(Le||ye)}}();static#n=this.\u0275cmp=t.Xpm({type:ye,selectors:[["sf-tinymce"]],features:[t.qOj],decls:2,vars:9,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"ngModel","config","loading","ngModelChange"]],template:function(X,Le){1&X&&(t.TgZ(0,"sf-item-wrap",0)(1,"tinymce",1),t.NdJ("ngModelChange",function(Pt){return Le.change(Pt)}),t.qZA()()),2&X&&(t.Q6J("id",Le.id)("schema",Le.schema)("ui",Le.ui)("showError",Le.showError)("error",Le.error)("showTitle",Le.schema.title),t.xp6(1),t.Q6J("ngModel",Le.value)("config",Le.config)("loading",Le.loading))},dependencies:[zo.JJ,zo.On,Zr.i,wo.Ot],encapsulation:2})}return ye})();o(48141);let ql=(()=>{class ye{constructor(F){F.register(Jr.KEY,Jr)}static#e=this.\u0275fac=function(X){return new(X||ye)(t.LFG(Ca.Bl))};static#t=this.\u0275mod=t.oAB({type:ye});static#n=this.\u0275inj=t.cJS({imports:[Po.m,Ca.ek.forRoot()]})}return ye})();var ec=o(92760);let za=(()=>{class ye{static#e=this.KEY="img";constructor(F){this.msg=F}show(){this.msg.info(`\u6b63\u5728\u6253\u5f00\u5927\u56fe${this.img}\u2026\u2026`)}static#t=this.\u0275fac=function(X){return new(X||ye)(t.Y36(nr.dD))};static#n=this.\u0275cmp=t.Xpm({type:ye,selectors:[["st-widget-img"]],hostBindings:function(X,Le){1&X&&t.NdJ("click",function(){return Le.show()})},decls:1,vars:0,consts:[["nz-tooltip","","nzTooltipTitle","Click it","nz-image","","nzSrc","https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ.png",1,"img",2,"cursor","pointer",3,"click"]],template:function(X,Le){1&X&&(t.TgZ(0,"img",0),t.NdJ("click",function(){return Le.show()}),t.qZA())},dependencies:[As.SY,ec.Ie],encapsulation:2,changeDetection:0})}return ye})();var dd=o(87334);let mr=(()=>{class ye{constructor(F){F.register(za.KEY,za)}static#e=this.\u0275fac=function(X){return new(X||ye)(t.LFG(dd.Ic))};static#t=this.\u0275mod=t.oAB({type:ye});static#n=this.\u0275inj=t.cJS({imports:[Po.m]})}return ye})(),tl=(()=>{class ye{static#e=this.KEY="test";constructor(F){this.msg=F}show(){this.msg.info("click")}static#t=this.\u0275fac=function(X){return new(X||ye)(t.Y36(nr.dD))};static#n=this.\u0275cmp=t.Xpm({type:ye,selectors:[["cell-widget-test"]],hostBindings:function(X,Le){1&X&&t.NdJ("click",function(){return Le.show()})},decls:1,vars:1,consts:[["nz-tooltip","","nzTooltipTitle","Client it",1,"img",2,"cursor","pointer",3,"src"]],template:function(X,Le){1&X&&t._UZ(0,"img",0),2&X&&t.Q6J("src",Le.data.value,t.LSH)},dependencies:[As.SY],encapsulation:2,changeDetection:0})}return ye})();var tc=o(22948);let Gr=(()=>{class ye{constructor(F){F.registerWidget(tl.KEY,tl)}static#e=this.\u0275fac=function(X){return new(X||ye)(t.LFG(tc.xx))};static#t=this.\u0275mod=t.oAB({type:ye});static#n=this.\u0275inj=t.cJS({imports:[Po.m]})}return ye})();var hd=o(22945),Xo=o(47532),pd=o(77273);function nc(ye){return()=>ye.load()}(0,C.qS)(M);let fd=(()=>{class ye{constructor(F,X){!function Ta(ye,J){if(!(0,C.NF)(J)||customElements.get("nz-icon"))return;const{createCustomElement:F}=o(19288);Object.keys(Jl).forEach(X=>{const Le=F(Jl[X].component,{injector:ye});customElements.define(X,Le)}),customElements.define("nz-icon",F(qa.o,{injector:ye}))}(F,X)}static#e=this.\u0275fac=function(X){return new(X||ye)(t.LFG(t.zs3),t.LFG(t.Lbi))};static#t=this.\u0275mod=t.oAB({type:ye,bootstrap:[Dr]});static#n=this.\u0275inj=t.cJS({providers:[{provide:an.Oi,useClass:Ki,multi:!1},Ms,{provide:t.ip1,useFactory:nc,deps:[Ms],multi:!0},{provide:t.qLn,useClass:br}],imports:[n.b2.withServerTransition({appId:"serverApp"}),Fo,E.JF,i.vT,pa.forRoot(),l.xu,Po.m,ql,mr,Gr,ya,sd,wo.TN.forRoot({baseURL:"https://cdnjs.cloudflare.com/ajax/libs/tinymce/4.9.2/"}),rn.register("ngsw-worker.js",{enabled:true})]})}return ye})();t.B6R(xr,function(){return[C.O5,ni.lC,hd.f,Xo.o,pd.W,Ci]},[]),(0,t.G48)(),n.q6().bootstrapModule(fd,{defaultEncapsulation:t.ifc.None,preserveWhitespaces:!1}).then(ye=>(window.appBootstrap&&window.appBootstrap(),ye)).catch(ye=>console.error(ye))},58557:(nt,I)=>{"use strict";function o(A,k){return{validate:A,compare:k}}Object.defineProperty(I,"__esModule",{value:!0}),I.formatNames=I.fastFormats=I.fullFormats=void 0,I.fullFormats={date:o(i,l),time:o(E,u),"date-time":o(function M(A){const k=A.split(z);return 2===k.length&&i(k[0])&&E(k[1],!0)},h),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:function d(A){return v.test(A)&&g.test(A)},"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:function S(A){if(P.test(A))return!1;try{return new RegExp(A),!0}catch{return!1}},uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:function f(A){return p.lastIndex=0,p.test(A)},int32:{type:"number",validate:function x(A){return Number.isInteger(A)&&A<=T&&A>=y}},int64:{type:"number",validate:function D(A){return Number.isInteger(A)}},float:{type:"number",validate:_},double:{type:"number",validate:_},password:!0,binary:!0},I.fastFormats={...I.fullFormats,date:o(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,l),time:o(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,u),"date-time":o(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,h),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i},I.formatNames=Object.keys(I.fullFormats);const n=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,t=[0,31,28,31,30,31,30,31,31,30,31,30,31];function i(A){const k=n.exec(A);if(!k)return!1;const $=+k[2],W=+k[3];return $>=1&&$<=12&&W>=1&&W<=(2===$&&function e(A){return A%4==0&&(A%100!=0||A%400==0)}(+k[1])?29:t[$])}function l(A,k){if(A&&k)return A>k?1:A(k=$[1]+$[2]+$[3]+($[4]||""))?1:A{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(58557),n=o(41634),t=o(10117),i=new t.Name("fullFormats"),l=new t.Name("fastFormats"),C=(u,z={keywords:!0})=>{if(Array.isArray(z))return E(u,z,e.fullFormats,i),u;const[M,h]="fast"===z.mode?[e.fastFormats,l]:[e.fullFormats,i];return E(u,z.formats||e.formatNames,M,h),z.keywords&&n.default(u),u};function E(u,z,M,h){var v,g;null!==(v=(g=u.opts.code).formats)&&void 0!==v||(g.formats=t._`require("ajv-formats/dist/formats").${h}`);for(const d of z)u.addFormat(d,M[d])}C.get=(u,z="full")=>{const h=("fast"===z?e.fastFormats:e.fullFormats)[u];if(!h)throw new Error(`Unknown format "${u}"`);return h},nt.exports=I=C,Object.defineProperty(I,"__esModule",{value:!0}),I.default=C},41634:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.formatLimitDefinition=void 0;const e=o(34258),n=o(10117),t=n.operators,i={formatMaximum:{okStr:"<=",ok:t.LTE,fail:t.GT},formatMinimum:{okStr:">=",ok:t.GTE,fail:t.LT},formatExclusiveMaximum:{okStr:"<",ok:t.LT,fail:t.GTE},formatExclusiveMinimum:{okStr:">",ok:t.GT,fail:t.LTE}},l={message:({keyword:E,schemaCode:u})=>n.str`should be ${i[E].okStr} ${u}`,params:({keyword:E,schemaCode:u})=>n._`{comparison: ${i[E].okStr}, limit: ${u}}`};I.formatLimitDefinition={keyword:Object.keys(i),type:"string",schemaType:"string",$data:!0,error:l,code(E){const{gen:u,data:z,schemaCode:M,keyword:h,it:v}=E,{opts:g,self:d}=v;if(!g.validateFormats)return;const p=new e.KeywordCxt(v,d.RULES.all.format.definition,"format");function T(x){return n._`${x}.compare(${z}, ${M}) ${i[h].fail} 0`}p.$data?function f(){const x=u.scopeValue("formats",{ref:d.formats,code:g.code.formats}),D=u.const("fmt",n._`${x}[${p.schemaCode}]`);E.fail$data(n.or(n._`typeof ${D} != "object"`,n._`${D} instanceof RegExp`,n._`typeof ${D}.compare != "function"`,T(D)))}():function y(){const x=p.schema,D=d.formats[x];if(!D||!0===D)return;if("object"!=typeof D||D instanceof RegExp||"function"!=typeof D.compare)throw new Error(`"${h}": format "${x}" does not define "compare" function`);const _=u.scopeValue("formats",{key:x,ref:D,code:g.code.formats?n._`${g.code.formats}${n.getProperty(x)}`:void 0});E.fail$data(T(_))}()},dependencies:["format"]},I.default=E=>(E.addKeyword(I.formatLimitDefinition),E)},34258:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.MissingRefError=I.ValidationError=I.CodeGen=I.Name=I.nil=I.stringify=I.str=I._=I.KeywordCxt=void 0;const e=o(28385),n=o(8677),t=o(96081),i=o(98),l=["/properties"],C="http://json-schema.org/draft-07/schema";class E extends e.default{_addVocabularies(){super._addVocabularies(),n.default.forEach(g=>this.addVocabulary(g)),this.opts.discriminator&&this.addKeyword(t.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;const g=this.opts.$data?this.$dataMetaSchema(i,l):i;this.addMetaSchema(g,C,!1),this.refs["http://json-schema.org/schema"]=C}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(C)?C:void 0)}}nt.exports=I=E,Object.defineProperty(I,"__esModule",{value:!0}),I.default=E;var u=o(62175);Object.defineProperty(I,"KeywordCxt",{enumerable:!0,get:function(){return u.KeywordCxt}});var z=o(10117);Object.defineProperty(I,"_",{enumerable:!0,get:function(){return z._}}),Object.defineProperty(I,"str",{enumerable:!0,get:function(){return z.str}}),Object.defineProperty(I,"stringify",{enumerable:!0,get:function(){return z.stringify}}),Object.defineProperty(I,"nil",{enumerable:!0,get:function(){return z.nil}}),Object.defineProperty(I,"Name",{enumerable:!0,get:function(){return z.Name}}),Object.defineProperty(I,"CodeGen",{enumerable:!0,get:function(){return z.CodeGen}});var M=o(80110);Object.defineProperty(I,"ValidationError",{enumerable:!0,get:function(){return M.default}});var h=o(95695);Object.defineProperty(I,"MissingRefError",{enumerable:!0,get:function(){return h.default}})},92276:(nt,I)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.regexpCode=I.getEsmExportName=I.getProperty=I.safeStringify=I.stringify=I.strConcat=I.addCodeArg=I.str=I._=I.nil=I._Code=I.Name=I.IDENTIFIER=I._CodeOrName=void 0;class o{}I._CodeOrName=o,I.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;class e extends o{constructor(y){if(super(),!I.IDENTIFIER.test(y))throw new Error("CodeGen: name must be a valid identifier");this.str=y}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}}I.Name=e;class n extends o{constructor(y){super(),this._items="string"==typeof y?[y]:y}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;const y=this._items[0];return""===y||'""'===y}get str(){var y;return null!==(y=this._str)&&void 0!==y?y:this._str=this._items.reduce((T,x)=>`${T}${x}`,"")}get names(){var y;return null!==(y=this._names)&&void 0!==y?y:this._names=this._items.reduce((T,x)=>(x instanceof e&&(T[x.str]=(T[x.str]||0)+1),T),{})}}function t(f,...y){const T=[f[0]];let x=0;for(;x{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.or=I.and=I.not=I.CodeGen=I.operators=I.varKinds=I.ValueScopeName=I.ValueScope=I.Scope=I.Name=I.regexpCode=I.stringify=I.getProperty=I.nil=I.strConcat=I.str=I._=void 0;const e=o(92276),n=o(84055);var t=o(92276);Object.defineProperty(I,"_",{enumerable:!0,get:function(){return t._}}),Object.defineProperty(I,"str",{enumerable:!0,get:function(){return t.str}}),Object.defineProperty(I,"strConcat",{enumerable:!0,get:function(){return t.strConcat}}),Object.defineProperty(I,"nil",{enumerable:!0,get:function(){return t.nil}}),Object.defineProperty(I,"getProperty",{enumerable:!0,get:function(){return t.getProperty}}),Object.defineProperty(I,"stringify",{enumerable:!0,get:function(){return t.stringify}}),Object.defineProperty(I,"regexpCode",{enumerable:!0,get:function(){return t.regexpCode}}),Object.defineProperty(I,"Name",{enumerable:!0,get:function(){return t.Name}});var i=o(84055);Object.defineProperty(I,"Scope",{enumerable:!0,get:function(){return i.Scope}}),Object.defineProperty(I,"ValueScope",{enumerable:!0,get:function(){return i.ValueScope}}),Object.defineProperty(I,"ValueScopeName",{enumerable:!0,get:function(){return i.ValueScopeName}}),Object.defineProperty(I,"varKinds",{enumerable:!0,get:function(){return i.varKinds}}),I.operators={GT:new e._Code(">"),GTE:new e._Code(">="),LT:new e._Code("<"),LTE:new e._Code("<="),EQ:new e._Code("==="),NEQ:new e._Code("!=="),NOT:new e._Code("!"),OR:new e._Code("||"),AND:new e._Code("&&"),ADD:new e._Code("+")};class l{optimizeNodes(){return this}optimizeNames(ce,Q){return this}}class C extends l{constructor(ce,Q,ie){super(),this.varKind=ce,this.name=Q,this.rhs=ie}render({es5:ce,_n:Q}){return`${ce?n.varKinds.var:this.varKind} ${this.name}${void 0===this.rhs?"":` = ${this.rhs}`};`+Q}optimizeNames(ce,Q){if(ce[this.name.str])return this.rhs&&(this.rhs=Y(this.rhs,ce,Q)),this}get names(){return this.rhs instanceof e._CodeOrName?this.rhs.names:{}}}class E extends l{constructor(ce,Q,ie){super(),this.lhs=ce,this.rhs=Q,this.sideEffects=ie}render({_n:ce}){return`${this.lhs} = ${this.rhs};`+ce}optimizeNames(ce,Q){if(!(this.lhs instanceof e.Name)||ce[this.lhs.str]||this.sideEffects)return this.rhs=Y(this.rhs,ce,Q),this}get names(){return ze(this.lhs instanceof e.Name?{}:{...this.lhs.names},this.rhs)}}class u extends E{constructor(ce,Q,ie,ae){super(ce,ie,ae),this.op=Q}render({_n:ce}){return`${this.lhs} ${this.op}= ${this.rhs};`+ce}}class z extends l{constructor(ce){super(),this.label=ce,this.names={}}render({_n:ce}){return`${this.label}:`+ce}}class M extends l{constructor(ce){super(),this.label=ce,this.names={}}render({_n:ce}){return`break${this.label?` ${this.label}`:""};`+ce}}class h extends l{constructor(ce){super(),this.error=ce}render({_n:ce}){return`throw ${this.error};`+ce}get names(){return this.error.names}}class v extends l{constructor(ce){super(),this.code=ce}render({_n:ce}){return`${this.code};`+ce}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(ce,Q){return this.code=Y(this.code,ce,Q),this}get names(){return this.code instanceof e._CodeOrName?this.code.names:{}}}class g extends l{constructor(ce=[]){super(),this.nodes=ce}render(ce){return this.nodes.reduce((Q,ie)=>Q+ie.render(ce),"")}optimizeNodes(){const{nodes:ce}=this;let Q=ce.length;for(;Q--;){const ie=ce[Q].optimizeNodes();Array.isArray(ie)?ce.splice(Q,1,...ie):ie?ce[Q]=ie:ce.splice(Q,1)}return ce.length>0?this:void 0}optimizeNames(ce,Q){const{nodes:ie}=this;let ae=ie.length;for(;ae--;){const xe=ie[ae];xe.optimizeNames(ce,Q)||(G(ce,xe.names),ie.splice(ae,1))}return ie.length>0?this:void 0}get names(){return this.nodes.reduce((ce,Q)=>W(ce,Q.names),{})}}class d extends g{render(ce){return"{"+ce._n+super.render(ce)+"}"+ce._n}}class p extends g{}let f=(()=>{class le extends d{}return le.kind="else",le})(),y=(()=>{class le extends d{constructor(Q,ie){super(ie),this.condition=Q}render(Q){let ie=`if(${this.condition})`+super.render(Q);return this.else&&(ie+="else "+this.else.render(Q)),ie}optimizeNodes(){super.optimizeNodes();const Q=this.condition;if(!0===Q)return this.nodes;let ie=this.else;if(ie){const ae=ie.optimizeNodes();ie=this.else=Array.isArray(ae)?new f(ae):ae}return ie?!1===Q?ie instanceof le?ie:ie.nodes:this.nodes.length?this:new le(V(Q),ie instanceof le?[ie]:ie.nodes):!1!==Q&&this.nodes.length?this:void 0}optimizeNames(Q,ie){var ae;if(this.else=null===(ae=this.else)||void 0===ae?void 0:ae.optimizeNames(Q,ie),super.optimizeNames(Q,ie)||this.else)return this.condition=Y(this.condition,Q,ie),this}get names(){const Q=super.names;return ze(Q,this.condition),this.else&&W(Q,this.else.names),Q}}return le.kind="if",le})(),T=(()=>{class le extends d{}return le.kind="for",le})();class x extends T{constructor(ce){super(),this.iteration=ce}render(ce){return`for(${this.iteration})`+super.render(ce)}optimizeNames(ce,Q){if(super.optimizeNames(ce,Q))return this.iteration=Y(this.iteration,ce,Q),this}get names(){return W(super.names,this.iteration.names)}}class D extends T{constructor(ce,Q,ie,ae){super(),this.varKind=ce,this.name=Q,this.from=ie,this.to=ae}render(ce){const Q=ce.es5?n.varKinds.var:this.varKind,{name:ie,from:ae,to:xe}=this;return`for(${Q} ${ie}=${ae}; ${ie}<${xe}; ${ie}++)`+super.render(ce)}get names(){const ce=ze(super.names,this.from);return ze(ce,this.to)}}class _ extends T{constructor(ce,Q,ie,ae){super(),this.loop=ce,this.varKind=Q,this.name=ie,this.iterable=ae}render(ce){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(ce)}optimizeNames(ce,Q){if(super.optimizeNames(ce,Q))return this.iterable=Y(this.iterable,ce,Q),this}get names(){return W(super.names,this.iterable.names)}}let P=(()=>{class le extends d{constructor(Q,ie,ae){super(),this.name=Q,this.args=ie,this.async=ae}render(Q){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(Q)}}return le.kind="func",le})(),S=(()=>{class le extends g{render(Q){return"return "+super.render(Q)}}return le.kind="return",le})();class A extends d{render(ce){let Q="try"+super.render(ce);return this.catch&&(Q+=this.catch.render(ce)),this.finally&&(Q+=this.finally.render(ce)),Q}optimizeNodes(){var ce,Q;return super.optimizeNodes(),null===(ce=this.catch)||void 0===ce||ce.optimizeNodes(),null===(Q=this.finally)||void 0===Q||Q.optimizeNodes(),this}optimizeNames(ce,Q){var ie,ae;return super.optimizeNames(ce,Q),null===(ie=this.catch)||void 0===ie||ie.optimizeNames(ce,Q),null===(ae=this.finally)||void 0===ae||ae.optimizeNames(ce,Q),this}get names(){const ce=super.names;return this.catch&&W(ce,this.catch.names),this.finally&&W(ce,this.finally.names),ce}}let k=(()=>{class le extends d{constructor(Q){super(),this.error=Q}render(Q){return`catch(${this.error})`+super.render(Q)}}return le.kind="catch",le})(),R=(()=>{class le extends d{render(Q){return"finally"+super.render(Q)}}return le.kind="finally",le})();function W(le,ce){for(const Q in ce)le[Q]=(le[Q]||0)+(ce[Q]||0);return le}function ze(le,ce){return ce instanceof e._CodeOrName?W(le,ce.names):le}function Y(le,ce,Q){return le instanceof e.Name?ie(le):function ae(xe){return xe instanceof e._Code&&xe._items.some(Me=>Me instanceof e.Name&&1===ce[Me.str]&&void 0!==Q[Me.str])}(le)?new e._Code(le._items.reduce((xe,Me)=>(Me instanceof e.Name&&(Me=ie(Me)),Me instanceof e._Code?xe.push(...Me._items):xe.push(Me),xe),[])):le;function ie(xe){const Me=Q[xe.str];return void 0===Me||1!==ce[xe.str]?xe:(delete ce[xe.str],Me)}}function G(le,ce){for(const Q in ce)le[Q]=(le[Q]||0)-(ce[Q]||0)}function V(le){return"boolean"==typeof le||"number"==typeof le||null===le?!le:e._`!${be(le)}`}I.CodeGen=class ${constructor(ce,Q={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...Q,_n:Q.lines?"\n":""},this._extScope=ce,this._scope=new n.Scope({parent:ce}),this._nodes=[new p]}toString(){return this._root.render(this.opts)}name(ce){return this._scope.name(ce)}scopeName(ce){return this._extScope.name(ce)}scopeValue(ce,Q){const ie=this._extScope.value(ce,Q);return(this._values[ie.prefix]||(this._values[ie.prefix]=new Set)).add(ie),ie}getScopeValue(ce,Q){return this._extScope.getValue(ce,Q)}scopeRefs(ce){return this._extScope.scopeRefs(ce,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(ce,Q,ie,ae){const xe=this._scope.toName(Q);return void 0!==ie&&ae&&(this._constants[xe.str]=ie),this._leafNode(new C(ce,xe,ie)),xe}const(ce,Q,ie){return this._def(n.varKinds.const,ce,Q,ie)}let(ce,Q,ie){return this._def(n.varKinds.let,ce,Q,ie)}var(ce,Q,ie){return this._def(n.varKinds.var,ce,Q,ie)}assign(ce,Q,ie){return this._leafNode(new E(ce,Q,ie))}add(ce,Q){return this._leafNode(new u(ce,I.operators.ADD,Q))}code(ce){return"function"==typeof ce?ce():ce!==e.nil&&this._leafNode(new v(ce)),this}object(...ce){const Q=["{"];for(const[ie,ae]of ce)Q.length>1&&Q.push(","),Q.push(ie),(ie!==ae||this.opts.es5)&&(Q.push(":"),(0,e.addCodeArg)(Q,ae));return Q.push("}"),new e._Code(Q)}if(ce,Q,ie){if(this._blockNode(new y(ce)),Q&&ie)this.code(Q).else().code(ie).endIf();else if(Q)this.code(Q).endIf();else if(ie)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(ce){return this._elseNode(new y(ce))}else(){return this._elseNode(new f)}endIf(){return this._endBlockNode(y,f)}_for(ce,Q){return this._blockNode(ce),Q&&this.code(Q).endFor(),this}for(ce,Q){return this._for(new x(ce),Q)}forRange(ce,Q,ie,ae,xe=(this.opts.es5?n.varKinds.var:n.varKinds.let)){const Me=this._scope.toName(ce);return this._for(new D(xe,Me,Q,ie),()=>ae(Me))}forOf(ce,Q,ie,ae=n.varKinds.const){const xe=this._scope.toName(ce);if(this.opts.es5){const Me=Q instanceof e.Name?Q:this.var("_arr",Q);return this.forRange("_i",0,e._`${Me}.length`,Ye=>{this.var(xe,e._`${Me}[${Ye}]`),ie(xe)})}return this._for(new _("of",ae,xe,Q),()=>ie(xe))}forIn(ce,Q,ie,ae=(this.opts.es5?n.varKinds.var:n.varKinds.const)){if(this.opts.ownProperties)return this.forOf(ce,e._`Object.keys(${Q})`,ie);const xe=this._scope.toName(ce);return this._for(new _("in",ae,xe,Q),()=>ie(xe))}endFor(){return this._endBlockNode(T)}label(ce){return this._leafNode(new z(ce))}break(ce){return this._leafNode(new M(ce))}return(ce){const Q=new S;if(this._blockNode(Q),this.code(ce),1!==Q.nodes.length)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(S)}try(ce,Q,ie){if(!Q&&!ie)throw new Error('CodeGen: "try" without "catch" and "finally"');const ae=new A;if(this._blockNode(ae),this.code(ce),Q){const xe=this.name("e");this._currNode=ae.catch=new k(xe),Q(xe)}return ie&&(this._currNode=ae.finally=new R,this.code(ie)),this._endBlockNode(k,R)}throw(ce){return this._leafNode(new h(ce))}block(ce,Q){return this._blockStarts.push(this._nodes.length),ce&&this.code(ce).endBlock(Q),this}endBlock(ce){const Q=this._blockStarts.pop();if(void 0===Q)throw new Error("CodeGen: not in self-balancing block");const ie=this._nodes.length-Q;if(ie<0||void 0!==ce&&ie!==ce)throw new Error(`CodeGen: wrong number of nodes: ${ie} vs ${ce} expected`);return this._nodes.length=Q,this}func(ce,Q=e.nil,ie,ae){return this._blockNode(new P(ce,Q,ie)),ae&&this.code(ae).endFunc(),this}endFunc(){return this._endBlockNode(P)}optimize(ce=1){for(;ce-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(ce){return this._currNode.nodes.push(ce),this}_blockNode(ce){this._currNode.nodes.push(ce),this._nodes.push(ce)}_endBlockNode(ce,Q){const ie=this._currNode;if(ie instanceof ce||Q&&ie instanceof Q)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${Q?`${ce.kind}/${Q.kind}`:ce.kind}"`)}_elseNode(ce){const Q=this._currNode;if(!(Q instanceof y))throw new Error('CodeGen: "else" without "if"');return this._currNode=Q.else=ce,this}get _root(){return this._nodes[0]}get _currNode(){const ce=this._nodes;return ce[ce.length-1]}set _currNode(ce){const Q=this._nodes;Q[Q.length-1]=ce}},I.not=V;const K=re(I.operators.AND);I.and=function te(...le){return le.reduce(K)};const ne=re(I.operators.OR);function re(le){return(ce,Q)=>ce===e.nil?Q:Q===e.nil?ce:e._`${be(ce)} ${le} ${be(Q)}`}function be(le){return le instanceof e.Name?le:e._`(${le})`}I.or=function fe(...le){return le.reduce(ne)}},84055:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.ValueScope=I.ValueScopeName=I.Scope=I.varKinds=I.UsedValueState=void 0;const e=o(92276);class n extends Error{constructor(z){super(`CodeGen: "code" for ${z} not defined`),this.value=z.value}}var t,u;(u=t=I.UsedValueState||(I.UsedValueState={}))[u.Started=0]="Started",u[u.Completed=1]="Completed",I.varKinds={const:new e.Name("const"),let:new e.Name("let"),var:new e.Name("var")};class i{constructor({prefixes:z,parent:M}={}){this._names={},this._prefixes=z,this._parent=M}toName(z){return z instanceof e.Name?z:this.name(z)}name(z){return new e.Name(this._newName(z))}_newName(z){return`${z}${(this._names[z]||this._nameGroup(z)).index++}`}_nameGroup(z){var M,h;if(null!==(h=null===(M=this._parent)||void 0===M?void 0:M._prefixes)&&void 0!==h&&h.has(z)||this._prefixes&&!this._prefixes.has(z))throw new Error(`CodeGen: prefix "${z}" is not allowed in this scope`);return this._names[z]={prefix:z,index:0}}}I.Scope=i;class l extends e.Name{constructor(z,M){super(M),this.prefix=z}setValue(z,{property:M,itemIndex:h}){this.value=z,this.scopePath=e._`.${new e.Name(M)}[${h}]`}}I.ValueScopeName=l;const C=e._`\n`;I.ValueScope=class E extends i{constructor(z){super(z),this._values={},this._scope=z.scope,this.opts={...z,_n:z.lines?C:e.nil}}get(){return this._scope}name(z){return new l(z,this._newName(z))}value(z,M){var h;if(void 0===M.ref)throw new Error("CodeGen: ref must be passed in value");const v=this.toName(z),{prefix:g}=v,d=null!==(h=M.key)&&void 0!==h?h:M.ref;let p=this._values[g];if(p){const T=p.get(d);if(T)return T}else p=this._values[g]=new Map;p.set(d,v);const f=this._scope[g]||(this._scope[g]=[]),y=f.length;return f[y]=M.ref,v.setValue(M,{property:g,itemIndex:y}),v}getValue(z,M){const h=this._values[z];if(h)return h.get(M)}scopeRefs(z,M=this._values){return this._reduceValues(M,h=>{if(void 0===h.scopePath)throw new Error(`CodeGen: name "${h}" has no value`);return e._`${z}${h.scopePath}`})}scopeCode(z=this._values,M,h){return this._reduceValues(z,v=>{if(void 0===v.value)throw new Error(`CodeGen: name "${v}" has no value`);return v.value.code},M,h)}_reduceValues(z,M,h={},v){let g=e.nil;for(const d in z){const p=z[d];if(!p)continue;const f=h[d]=h[d]||new Map;p.forEach(y=>{if(f.has(y))return;f.set(y,t.Started);let T=M(y);if(T)g=e._`${g}${this.opts.es5?I.varKinds.var:I.varKinds.const} ${y} = ${T};${this.opts._n}`;else{if(!(T=v?.(y)))throw new n(y);g=e._`${g}${T}${this.opts._n}`}f.set(y,t.Completed)})}return g}}},45618:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.extendErrors=I.resetErrorsCount=I.reportExtraError=I.reportError=I.keyword$DataError=I.keywordError=void 0;const e=o(10117),n=o(78754),t=o(25631);function u(f,y){const T=f.const("err",y);f.if(e._`${t.default.vErrors} === null`,()=>f.assign(t.default.vErrors,e._`[${T}]`),e._`${t.default.vErrors}.push(${T})`),f.code(e._`${t.default.errors}++`)}function z(f,y){const{gen:T,validateName:x,schemaEnv:D}=f;D.$async?T.throw(e._`new ${f.ValidationError}(${y})`):(T.assign(e._`${x}.errors`,y),T.return(!1))}I.keywordError={message:({keyword:f})=>e.str`must pass "${f}" keyword validation`},I.keyword$DataError={message:({keyword:f,schemaType:y})=>y?e.str`"${f}" keyword must be ${y} ($data)`:e.str`"${f}" keyword is invalid ($data)`},I.reportError=function i(f,y=I.keywordError,T,x){const{it:D}=f,{gen:_,compositeRule:P,allErrors:S}=D,A=h(f,y,T);x??(P||S)?u(_,A):z(D,e._`[${A}]`)},I.reportExtraError=function l(f,y=I.keywordError,T){const{it:x}=f,{gen:D,compositeRule:_,allErrors:P}=x;u(D,h(f,y,T)),_||P||z(x,t.default.vErrors)},I.resetErrorsCount=function C(f,y){f.assign(t.default.errors,y),f.if(e._`${t.default.vErrors} !== null`,()=>f.if(y,()=>f.assign(e._`${t.default.vErrors}.length`,y),()=>f.assign(t.default.vErrors,null)))},I.extendErrors=function E({gen:f,keyword:y,schemaValue:T,data:x,errsCount:D,it:_}){if(void 0===D)throw new Error("ajv implementation error");const P=f.name("err");f.forRange("i",D,t.default.errors,S=>{f.const(P,e._`${t.default.vErrors}[${S}]`),f.if(e._`${P}.instancePath === undefined`,()=>f.assign(e._`${P}.instancePath`,(0,e.strConcat)(t.default.instancePath,_.errorPath))),f.assign(e._`${P}.schemaPath`,e.str`${_.errSchemaPath}/${y}`),_.opts.verbose&&(f.assign(e._`${P}.schema`,T),f.assign(e._`${P}.data`,x))})};const M={keyword:new e.Name("keyword"),schemaPath:new e.Name("schemaPath"),params:new e.Name("params"),propertyName:new e.Name("propertyName"),message:new e.Name("message"),schema:new e.Name("schema"),parentSchema:new e.Name("parentSchema")};function h(f,y,T){const{createErrors:x}=f.it;return!1===x?e._`{}`:function v(f,y,T={}){const{gen:x,it:D}=f,_=[g(D,T),d(f,T)];return function p(f,{params:y,message:T},x){const{keyword:D,data:_,schemaValue:P,it:S}=f,{opts:A,propertyName:k,topSchemaRef:R,schemaPath:$}=S;x.push([M.keyword,D],[M.params,"function"==typeof y?y(f):y||e._`{}`]),A.messages&&x.push([M.message,"function"==typeof T?T(f):T]),A.verbose&&x.push([M.schema,P],[M.parentSchema,e._`${R}${$}`],[t.default.data,_]),k&&x.push([M.propertyName,k])}(f,y,_),x.object(..._)}(f,y,T)}function g({errorPath:f},{instancePath:y}){const T=y?e.str`${f}${(0,n.getErrorPath)(y,n.Type.Str)}`:f;return[t.default.instancePath,(0,e.strConcat)(t.default.instancePath,T)]}function d({keyword:f,it:{errSchemaPath:y}},{schemaPath:T,parentSchema:x}){let D=x?y:e.str`${y}/${f}`;return T&&(D=e.str`${D}${(0,n.getErrorPath)(T,n.Type.Str)}`),[M.schemaPath,D]}},24317:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.resolveSchema=I.getCompilingSchema=I.resolveRef=I.compileSchema=I.SchemaEnv=void 0;const e=o(10117),n=o(80110),t=o(25631),i=o(82690),l=o(78754),C=o(62175);class E{constructor(T){var x;let D;this.refs={},this.dynamicAnchors={},"object"==typeof T.schema&&(D=T.schema),this.schema=T.schema,this.schemaId=T.schemaId,this.root=T.root||this,this.baseId=null!==(x=T.baseId)&&void 0!==x?x:(0,i.normalizeId)(D?.[T.schemaId||"$id"]),this.schemaPath=T.schemaPath,this.localRefs=T.localRefs,this.meta=T.meta,this.$async=D?.$async,this.refs={}}}function u(y){const T=h.call(this,y);if(T)return T;const x=(0,i.getFullPath)(this.opts.uriResolver,y.root.baseId),{es5:D,lines:_}=this.opts.code,{ownProperties:P}=this.opts,S=new e.CodeGen(this.scope,{es5:D,lines:_,ownProperties:P});let A;y.$async&&(A=S.scopeValue("Error",{ref:n.default,code:e._`require("ajv/dist/runtime/validation_error").default`}));const k=S.scopeName("validate");y.validateName=k;const R={gen:S,allErrors:this.opts.allErrors,data:t.default.data,parentData:t.default.parentData,parentDataProperty:t.default.parentDataProperty,dataNames:[t.default.data],dataPathArr:[e.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:S.scopeValue("schema",!0===this.opts.code.source?{ref:y.schema,code:(0,e.stringify)(y.schema)}:{ref:y.schema}),validateName:k,ValidationError:A,schema:y.schema,schemaEnv:y,rootId:x,baseId:y.baseId||x,schemaPath:e.nil,errSchemaPath:y.schemaPath||(this.opts.jtd?"":"#"),errorPath:e._`""`,opts:this.opts,self:this};let $;try{this._compilations.add(y),(0,C.validateFunctionCode)(R),S.optimize(this.opts.code.optimize);const W=S.toString();$=`${S.scopeRefs(t.default.scope)}return ${W}`,this.opts.code.process&&($=this.opts.code.process($,y));const Y=new Function(`${t.default.self}`,`${t.default.scope}`,$)(this,this.scope.get());if(this.scope.value(k,{ref:Y}),Y.errors=null,Y.schema=y.schema,Y.schemaEnv=y,y.$async&&(Y.$async=!0),!0===this.opts.code.source&&(Y.source={validateName:k,validateCode:W,scopeValues:S._values}),this.opts.unevaluated){const{props:G,items:V}=R;Y.evaluated={props:G instanceof e.Name?void 0:G,items:V instanceof e.Name?void 0:V,dynamicProps:G instanceof e.Name,dynamicItems:V instanceof e.Name},Y.source&&(Y.source.evaluated=(0,e.stringify)(Y.evaluated))}return y.validate=Y,y}catch(W){throw delete y.validate,delete y.validateName,$&&this.logger.error("Error compiling schema, function code:",$),W}finally{this._compilations.delete(y)}}function M(y){return(0,i.inlineRef)(y.schema,this.opts.inlineRefs)?y.schema:y.validate?y:u.call(this,y)}function h(y){for(const T of this._compilations)if(v(T,y))return T}function v(y,T){return y.schema===T.schema&&y.root===T.root&&y.baseId===T.baseId}function g(y,T){let x;for(;"string"==typeof(x=this.refs[T]);)T=x;return x||this.schemas[T]||d.call(this,y,T)}function d(y,T){const x=this.opts.uriResolver.parse(T),D=(0,i._getFullPath)(this.opts.uriResolver,x);let _=(0,i.getFullPath)(this.opts.uriResolver,y.baseId,void 0);if(Object.keys(y.schema).length>0&&D===_)return f.call(this,x,y);const P=(0,i.normalizeId)(D),S=this.refs[P]||this.schemas[P];if("string"==typeof S){const A=d.call(this,y,S);return"object"!=typeof A?.schema?void 0:f.call(this,x,A)}if("object"==typeof S?.schema){if(S.validate||u.call(this,S),P===(0,i.normalizeId)(T)){const{schema:A}=S,{schemaId:k}=this.opts,R=A[k];return R&&(_=(0,i.resolveUrl)(this.opts.uriResolver,_,R)),new E({schema:A,schemaId:k,root:y,baseId:_})}return f.call(this,x,S)}}I.SchemaEnv=E,I.compileSchema=u,I.resolveRef=function z(y,T,x){var D;x=(0,i.resolveUrl)(this.opts.uriResolver,T,x);const _=y.refs[x];if(_)return _;let P=g.call(this,y,x);if(void 0===P){const S=null===(D=y.localRefs)||void 0===D?void 0:D[x],{schemaId:A}=this.opts;S&&(P=new E({schema:S,schemaId:A,root:y,baseId:T}))}return void 0!==P?y.refs[x]=M.call(this,P):void 0},I.getCompilingSchema=h,I.resolveSchema=d;const p=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function f(y,{baseId:T,schema:x,root:D}){var _;if("/"!==(null===(_=y.fragment)||void 0===_?void 0:_[0]))return;for(const A of y.fragment.slice(1).split("/")){if("boolean"==typeof x)return;const k=x[(0,l.unescapeFragment)(A)];if(void 0===k)return;const R="object"==typeof(x=k)&&x[this.opts.schemaId];!p.has(A)&&R&&(T=(0,i.resolveUrl)(this.opts.uriResolver,T,R))}let P;if("boolean"!=typeof x&&x.$ref&&!(0,l.schemaHasRulesButRef)(x,this.RULES)){const A=(0,i.resolveUrl)(this.opts.uriResolver,T,x.$ref);P=d.call(this,D,A)}const{schemaId:S}=this.opts;return P=P||new E({schema:x,schemaId:S,root:D,baseId:T}),P.schema!==P.root.schema?P:void 0}},25631:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117),n={data:new e.Name("data"),valCxt:new e.Name("valCxt"),instancePath:new e.Name("instancePath"),parentData:new e.Name("parentData"),parentDataProperty:new e.Name("parentDataProperty"),rootData:new e.Name("rootData"),dynamicAnchors:new e.Name("dynamicAnchors"),vErrors:new e.Name("vErrors"),errors:new e.Name("errors"),this:new e.Name("this"),self:new e.Name("self"),scope:new e.Name("scope"),json:new e.Name("json"),jsonPos:new e.Name("jsonPos"),jsonLen:new e.Name("jsonLen"),jsonPart:new e.Name("jsonPart")};I.default=n},95695:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(82690);class n extends Error{constructor(i,l,C,E){super(E||`can't resolve reference ${C} from id ${l}`),this.missingRef=(0,e.resolveUrl)(i,l,C),this.missingSchema=(0,e.normalizeId)((0,e.getFullPath)(i,this.missingRef))}}I.default=n},82690:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.getSchemaRefs=I.resolveUrl=I.normalizeId=I._getFullPath=I.getFullPath=I.inlineRef=void 0;const e=o(78754),n=o(19818),t=o(37037),i=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);I.inlineRef=function l(f,y=!0){return"boolean"==typeof f||(!0===y?!E(f):!!y&&u(f)<=y)};const C=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function E(f){for(const y in f){if(C.has(y))return!0;const T=f[y];if(Array.isArray(T)&&T.some(E)||"object"==typeof T&&E(T))return!0}return!1}function u(f){let y=0;for(const T in f){if("$ref"===T)return 1/0;if(y++,!i.has(T)&&("object"==typeof f[T]&&(0,e.eachItem)(f[T],x=>y+=u(x)),y===1/0))return 1/0}return y}function z(f,y="",T){!1!==T&&(y=v(y));const x=f.parse(y);return M(f,x)}function M(f,y){return f.serialize(y).split("#")[0]+"#"}I.getFullPath=z,I._getFullPath=M;const h=/#\/?$/;function v(f){return f?f.replace(h,""):""}I.normalizeId=v,I.resolveUrl=function g(f,y,T){return T=v(T),f.resolve(y,T)};const d=/^[a-z_][-a-z0-9._]*$/i;I.getSchemaRefs=function p(f,y){if("boolean"==typeof f)return{};const{schemaId:T,uriResolver:x}=this.opts,D=v(f[T]||y),_={"":D},P=z(x,D,!1),S={},A=new Set;return t(f,{allKeys:!0},($,W,ze,Y)=>{if(void 0===Y)return;const G=P+W;let V=_[Y];function K(ne){if(ne=v(V?(0,this.opts.uriResolver.resolve)(V,ne):ne),A.has(ne))throw R(ne);A.add(ne);let re=this.refs[ne];return"string"==typeof re&&(re=this.refs[re]),"object"==typeof re?k($,re.schema,ne):ne!==v(G)&&("#"===ne[0]?(k($,S[ne],ne),S[ne]=$):this.refs[ne]=G),ne}function te(ne){if("string"==typeof ne){if(!d.test(ne))throw new Error(`invalid anchor "${ne}"`);K.call(this,`#${ne}`)}}"string"==typeof $[T]&&(V=K.call(this,$[T])),te.call(this,$.$anchor),te.call(this,$.$dynamicAnchor),_[W]=V}),S;function k($,W,ze){if(void 0!==W&&!n($,W))throw R(ze)}function R($){return new Error(`reference "${$}" resolves to more than one schema`)}}},70491:(nt,I)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.getRules=I.isJSONType=void 0;const e=new Set(["string","number","integer","boolean","null","object","array"]);I.isJSONType=function n(i){return"string"==typeof i&&e.has(i)},I.getRules=function t(){const i={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...i,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},i.number,i.string,i.array,i.object],post:{rules:[]},all:{},keywords:{}}}},78754:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.checkStrictMode=I.getErrorPath=I.Type=I.useFunc=I.setEvaluated=I.evaluatedPropsToName=I.mergeEvaluated=I.eachItem=I.unescapeJsonPointer=I.escapeJsonPointer=I.escapeFragment=I.unescapeFragment=I.schemaRefOrVal=I.schemaHasRulesButRef=I.schemaHasRules=I.checkUnknownRules=I.alwaysValidSchema=I.toHash=void 0;const e=o(10117),n=o(92276);function l(P,S=P.schema){const{opts:A,self:k}=P;if(!A.strictSchema||"boolean"==typeof S)return;const R=k.RULES.keywords;for(const $ in S)R[$]||_(P,`unknown keyword: "${$}"`)}function C(P,S){if("boolean"==typeof P)return!P;for(const A in P)if(S[A])return!0;return!1}function h(P){return"number"==typeof P?`${P}`:P.replace(/~/g,"~0").replace(/\//g,"~1")}function v(P){return P.replace(/~1/g,"/").replace(/~0/g,"~")}function d({mergeNames:P,mergeToName:S,mergeValues:A,resultToName:k}){return(R,$,W,ze)=>{const Y=void 0===W?$:W instanceof e.Name?($ instanceof e.Name?P(R,$,W):S(R,$,W),W):$ instanceof e.Name?(S(R,W,$),$):A($,W);return ze!==e.Name||Y instanceof e.Name?Y:k(R,Y)}}function p(P,S){if(!0===S)return P.var("props",!0);const A=P.var("props",e._`{}`);return void 0!==S&&f(P,A,S),A}function f(P,S,A){Object.keys(A).forEach(k=>P.assign(e._`${S}${(0,e.getProperty)(k)}`,!0))}I.toHash=function t(P){const S={};for(const A of P)S[A]=!0;return S},I.alwaysValidSchema=function i(P,S){return"boolean"==typeof S?S:0===Object.keys(S).length||(l(P,S),!C(S,P.self.RULES.all))},I.checkUnknownRules=l,I.schemaHasRules=C,I.schemaHasRulesButRef=function E(P,S){if("boolean"==typeof P)return!P;for(const A in P)if("$ref"!==A&&S.all[A])return!0;return!1},I.schemaRefOrVal=function u({topSchemaRef:P,schemaPath:S},A,k,R){if(!R){if("number"==typeof A||"boolean"==typeof A)return A;if("string"==typeof A)return e._`${A}`}return e._`${P}${S}${(0,e.getProperty)(k)}`},I.unescapeFragment=function z(P){return v(decodeURIComponent(P))},I.escapeFragment=function M(P){return encodeURIComponent(h(P))},I.escapeJsonPointer=h,I.unescapeJsonPointer=v,I.eachItem=function g(P,S){if(Array.isArray(P))for(const A of P)S(A);else S(P)},I.mergeEvaluated={props:d({mergeNames:(P,S,A)=>P.if(e._`${A} !== true && ${S} !== undefined`,()=>{P.if(e._`${S} === true`,()=>P.assign(A,!0),()=>P.assign(A,e._`${A} || {}`).code(e._`Object.assign(${A}, ${S})`))}),mergeToName:(P,S,A)=>P.if(e._`${A} !== true`,()=>{!0===S?P.assign(A,!0):(P.assign(A,e._`${A} || {}`),f(P,A,S))}),mergeValues:(P,S)=>!0===P||{...P,...S},resultToName:p}),items:d({mergeNames:(P,S,A)=>P.if(e._`${A} !== true && ${S} !== undefined`,()=>P.assign(A,e._`${S} === true ? true : ${A} > ${S} ? ${A} : ${S}`)),mergeToName:(P,S,A)=>P.if(e._`${A} !== true`,()=>P.assign(A,!0===S||e._`${A} > ${S} ? ${A} : ${S}`)),mergeValues:(P,S)=>!0===P||Math.max(P,S),resultToName:(P,S)=>P.var("items",S)})},I.evaluatedPropsToName=p,I.setEvaluated=f;const y={};var x,P;function _(P,S,A=P.opts.strictSchema){if(A){if(S=`strict mode: ${S}`,!0===A)throw new Error(S);P.self.logger.warn(S)}}I.useFunc=function T(P,S){return P.scopeValue("func",{ref:S,code:y[S.code]||(y[S.code]=new n._Code(S.code))})},(P=x=I.Type||(I.Type={}))[P.Num=0]="Num",P[P.Str=1]="Str",I.getErrorPath=function D(P,S,A){if(P instanceof e.Name){const k=S===x.Num;return A?k?e._`"[" + ${P} + "]"`:e._`"['" + ${P} + "']"`:k?e._`"/" + ${P}`:e._`"/" + ${P}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return A?(0,e.getProperty)(P).toString():"/"+h(P)},I.checkStrictMode=_},59820:(nt,I)=>{"use strict";function e(t,i){return i.rules.some(l=>n(t,l))}function n(t,i){var l;return void 0!==t[i.keyword]||(null===(l=i.definition.implements)||void 0===l?void 0:l.some(C=>void 0!==t[C]))}Object.defineProperty(I,"__esModule",{value:!0}),I.shouldUseRule=I.shouldUseGroup=I.schemaHasRulesForType=void 0,I.schemaHasRulesForType=function o({schema:t,self:i},l){const C=i.RULES.types[l];return C&&!0!==C&&e(t,C)},I.shouldUseGroup=e,I.shouldUseRule=n},19365:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.boolOrEmptySchema=I.topBoolOrEmptySchema=void 0;const e=o(45618),n=o(10117),t=o(25631),i={message:"boolean schema is false"};function E(u,z){const{gen:M,data:h}=u;(0,e.reportError)({gen:M,keyword:"false schema",data:h,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:u},i,void 0,z)}I.topBoolOrEmptySchema=function l(u){const{gen:z,schema:M,validateName:h}=u;!1===M?E(u,!1):"object"==typeof M&&!0===M.$async?z.return(t.default.data):(z.assign(n._`${h}.errors`,null),z.return(!0))},I.boolOrEmptySchema=function C(u,z){const{gen:M,schema:h}=u;!1===h?(M.var(z,!1),E(u)):M.var(z,!0)}},84730:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.reportTypeError=I.checkDataTypes=I.checkDataType=I.coerceAndCheckDataType=I.getJSONTypes=I.getSchemaTypes=I.DataType=void 0;const e=o(70491),n=o(59820),t=o(45618),i=o(10117),l=o(78754);var C,x;function u(x){const D=Array.isArray(x)?x:x?[x]:[];if(D.every(e.isJSONType))return D;throw new Error("type must be JSONType or JSONType[]: "+D.join(","))}(x=C=I.DataType||(I.DataType={}))[x.Correct=0]="Correct",x[x.Wrong=1]="Wrong",I.getSchemaTypes=function E(x){const D=u(x.type);if(D.includes("null")){if(!1===x.nullable)throw new Error("type: null contradicts nullable: false")}else{if(!D.length&&void 0!==x.nullable)throw new Error('"nullable" cannot be used without "type"');!0===x.nullable&&D.push("null")}return D},I.getJSONTypes=u,I.coerceAndCheckDataType=function z(x,D){const{gen:_,data:P,opts:S}=x,A=function h(x,D){return D?x.filter(_=>M.has(_)||"array"===D&&"array"===_):[]}(D,S.coerceTypes),k=D.length>0&&!(0===A.length&&1===D.length&&(0,n.schemaHasRulesForType)(x,D[0]));if(k){const R=p(D,P,S.strictNumbers,C.Wrong);_.if(R,()=>{A.length?function v(x,D,_){const{gen:P,data:S,opts:A}=x,k=P.let("dataType",i._`typeof ${S}`),R=P.let("coerced",i._`undefined`);"array"===A.coerceTypes&&P.if(i._`${k} == 'object' && Array.isArray(${S}) && ${S}.length == 1`,()=>P.assign(S,i._`${S}[0]`).assign(k,i._`typeof ${S}`).if(p(D,S,A.strictNumbers),()=>P.assign(R,S))),P.if(i._`${R} !== undefined`);for(const W of _)(M.has(W)||"array"===W&&"array"===A.coerceTypes)&&$(W);function $(W){switch(W){case"string":return void P.elseIf(i._`${k} == "number" || ${k} == "boolean"`).assign(R,i._`"" + ${S}`).elseIf(i._`${S} === null`).assign(R,i._`""`);case"number":return void P.elseIf(i._`${k} == "boolean" || ${S} === null - || (${k} == "string" && ${S} && ${S} == +${S})`).assign(R,i._`+${S}`);case"integer":return void P.elseIf(i._`${k} === "boolean" || ${S} === null - || (${k} === "string" && ${S} && ${S} == +${S} && !(${S} % 1))`).assign(R,i._`+${S}`);case"boolean":return void P.elseIf(i._`${S} === "false" || ${S} === 0 || ${S} === null`).assign(R,!1).elseIf(i._`${S} === "true" || ${S} === 1`).assign(R,!0);case"null":return P.elseIf(i._`${S} === "" || ${S} === 0 || ${S} === false`),void P.assign(R,null);case"array":P.elseIf(i._`${k} === "string" || ${k} === "number" - || ${k} === "boolean" || ${S} === null`).assign(R,i._`[${S}]`)}}P.else(),y(x),P.endIf(),P.if(i._`${R} !== undefined`,()=>{P.assign(S,R),function g({gen:x,parentData:D,parentDataProperty:_},P){x.if(i._`${D} !== undefined`,()=>x.assign(i._`${D}[${_}]`,P))}(x,R)})}(x,D,A):y(x)})}return k};const M=new Set(["string","number","integer","boolean","null"]);function d(x,D,_,P=C.Correct){const S=P===C.Correct?i.operators.EQ:i.operators.NEQ;let A;switch(x){case"null":return i._`${D} ${S} null`;case"array":A=i._`Array.isArray(${D})`;break;case"object":A=i._`${D} && typeof ${D} == "object" && !Array.isArray(${D})`;break;case"integer":A=k(i._`!(${D} % 1) && !isNaN(${D})`);break;case"number":A=k();break;default:return i._`typeof ${D} ${S} ${x}`}return P===C.Correct?A:(0,i.not)(A);function k(R=i.nil){return(0,i.and)(i._`typeof ${D} == "number"`,R,_?i._`isFinite(${D})`:i.nil)}}function p(x,D,_,P){if(1===x.length)return d(x[0],D,_,P);let S;const A=(0,l.toHash)(x);if(A.array&&A.object){const k=i._`typeof ${D} != "object"`;S=A.null?k:i._`!${D} || ${k}`,delete A.null,delete A.array,delete A.object}else S=i.nil;A.number&&delete A.integer;for(const k in A)S=(0,i.and)(S,d(k,D,_,P));return S}I.checkDataType=d,I.checkDataTypes=p;const f={message:({schema:x})=>`must be ${x}`,params:({schema:x,schemaValue:D})=>"string"==typeof x?i._`{type: ${x}}`:i._`{type: ${D}}`};function y(x){const D=function T(x){const{gen:D,data:_,schema:P}=x,S=(0,l.schemaRefOrVal)(x,P,"type");return{gen:D,keyword:"type",data:_,schema:P.type,schemaCode:S,schemaValue:S,parentSchema:P,params:{},it:x}}(x);(0,t.reportError)(D,f)}I.reportTypeError=y},62423:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.assignDefaults=void 0;const e=o(10117),n=o(78754);function i(l,C,E){const{gen:u,compositeRule:z,data:M,opts:h}=l;if(void 0===E)return;const v=e._`${M}${(0,e.getProperty)(C)}`;if(z)return void(0,n.checkStrictMode)(l,`default is ignored for: ${v}`);let g=e._`${v} === undefined`;"empty"===h.useDefaults&&(g=e._`${g} || ${v} === null || ${v} === ""`),u.if(g,e._`${v} = ${(0,e.stringify)(E)}`)}I.assignDefaults=function t(l,C){const{properties:E,items:u}=l.schema;if("object"===C&&E)for(const z in E)i(l,z,E[z].default);else"array"===C&&Array.isArray(u)&&u.forEach((z,M)=>i(l,M,z.default))}},62175:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.getData=I.KeywordCxt=I.validateFunctionCode=void 0;const e=o(19365),n=o(84730),t=o(59820),i=o(84730),l=o(62423),C=o(42641),E=o(66117),u=o(10117),z=o(25631),M=o(82690),h=o(78754),v=o(45618);function d({gen:ve,validateName:ee,schema:Be,schemaEnv:Re,opts:ct},Ae){ct.code.es5?ve.func(ee,u._`${z.default.data}, ${z.default.valCxt}`,Re.$async,()=>{ve.code(u._`"use strict"; ${x(Be,ct)}`),function f(ve,ee){ve.if(z.default.valCxt,()=>{ve.var(z.default.instancePath,u._`${z.default.valCxt}.${z.default.instancePath}`),ve.var(z.default.parentData,u._`${z.default.valCxt}.${z.default.parentData}`),ve.var(z.default.parentDataProperty,u._`${z.default.valCxt}.${z.default.parentDataProperty}`),ve.var(z.default.rootData,u._`${z.default.valCxt}.${z.default.rootData}`),ee.dynamicRef&&ve.var(z.default.dynamicAnchors,u._`${z.default.valCxt}.${z.default.dynamicAnchors}`)},()=>{ve.var(z.default.instancePath,u._`""`),ve.var(z.default.parentData,u._`undefined`),ve.var(z.default.parentDataProperty,u._`undefined`),ve.var(z.default.rootData,z.default.data),ee.dynamicRef&&ve.var(z.default.dynamicAnchors,u._`{}`)})}(ve,ct),ve.code(Ae)}):ve.func(ee,u._`${z.default.data}, ${function p(ve){return u._`{${z.default.instancePath}="", ${z.default.parentData}, ${z.default.parentDataProperty}, ${z.default.rootData}=${z.default.data}${ve.dynamicRef?u._`, ${z.default.dynamicAnchors}={}`:u.nil}}={}`}(ct)}`,Re.$async,()=>ve.code(x(Be,ct)).code(Ae))}function x(ve,ee){const Be="object"==typeof ve&&ve[ee.schemaId];return Be&&(ee.code.source||ee.code.process)?u._`/*# sourceURL=${Be} */`:u.nil}function _({schema:ve,self:ee}){if("boolean"==typeof ve)return!ve;for(const Be in ve)if(ee.RULES.all[Be])return!0;return!1}function P(ve){return"boolean"!=typeof ve.schema}function A(ve){(0,h.checkUnknownRules)(ve),function R(ve){const{schema:ee,errSchemaPath:Be,opts:Re,self:ct}=ve;ee.$ref&&Re.ignoreKeywordsWithRef&&(0,h.schemaHasRulesButRef)(ee,ct.RULES)&&ct.logger.warn(`$ref: keywords ignored in schema at path "${Be}"`)}(ve)}function k(ve,ee){if(ve.opts.jtd)return K(ve,[],!1,ee);const Be=(0,n.getSchemaTypes)(ve.schema);K(ve,Be,!(0,n.coerceAndCheckDataType)(ve,Be),ee)}function Y({gen:ve,schemaEnv:ee,schema:Be,errSchemaPath:Re,opts:ct}){const Ae=Be.$comment;if(!0===ct.$comment)ve.code(u._`${z.default.self}.logger.log(${Ae})`);else if("function"==typeof ct.$comment){const Mt=u.str`${Re}/$comment`,je=ve.scopeValue("root",{ref:ee.root});ve.code(u._`${z.default.self}.opts.$comment(${Ae}, ${Mt}, ${je}.schema)`)}}function K(ve,ee,Be,Re){const{gen:ct,schema:Ae,data:Mt,allErrors:je,opts:ot,self:mt}=ve,{RULES:we}=mt;function de(U){(0,t.shouldUseGroup)(Ae,U)&&(U.type?(ct.if((0,i.checkDataType)(U.type,Mt,ot.strictNumbers)),te(ve,U),1===ee.length&&ee[0]===U.type&&Be&&(ct.else(),(0,i.reportTypeError)(ve)),ct.endIf()):te(ve,U),je||ct.if(u._`${z.default.errors} === ${Re||0}`))}!Ae.$ref||!ot.ignoreKeywordsWithRef&&(0,h.schemaHasRulesButRef)(Ae,we)?(ot.jtd||function ne(ve,ee){ve.schemaEnv.meta||!ve.opts.strictTypes||(function fe(ve,ee){if(ee.length){if(!ve.dataTypes.length)return void(ve.dataTypes=ee);ee.forEach(Be=>{ce(ve.dataTypes,Be)||ie(ve,`type "${Be}" not allowed by context "${ve.dataTypes.join(",")}"`)}),function Q(ve,ee){const Be=[];for(const Re of ve.dataTypes)ce(ee,Re)?Be.push(Re):ee.includes("integer")&&"number"===Re&&Be.push("integer");ve.dataTypes=Be}(ve,ee)}}(ve,ee),ve.opts.allowUnionTypes||function re(ve,ee){ee.length>1&&(2!==ee.length||!ee.includes("null"))&&ie(ve,"use allowUnionTypes to allow union type keyword")}(ve,ee),function be(ve,ee){const Be=ve.self.RULES.all;for(const Re in Be){const ct=Be[Re];if("object"==typeof ct&&(0,t.shouldUseRule)(ve.schema,ct)){const{type:Ae}=ct.definition;Ae.length&&!Ae.some(Mt=>le(ee,Mt))&&ie(ve,`missing type "${Ae.join(",")}" for keyword "${Re}"`)}}}(ve,ve.dataTypes))}(ve,ee),ct.block(()=>{for(const U of we.rules)de(U);de(we.post)})):ct.block(()=>xe(ve,"$ref",we.all.$ref.definition))}function te(ve,ee){const{gen:Be,schema:Re,opts:{useDefaults:ct}}=ve;ct&&(0,l.assignDefaults)(ve,ee.type),Be.block(()=>{for(const Ae of ee.rules)(0,t.shouldUseRule)(Re,Ae)&&xe(ve,Ae.keyword,Ae.definition,ee.type)})}function le(ve,ee){return ve.includes(ee)||"number"===ee&&ve.includes("integer")}function ce(ve,ee){return ve.includes(ee)||"integer"===ee&&ve.includes("number")}function ie(ve,ee){(0,h.checkStrictMode)(ve,ee+=` at "${ve.schemaEnv.baseId+ve.errSchemaPath}" (strictTypes)`,ve.opts.strictTypes)}I.validateFunctionCode=function g(ve){P(ve)&&(A(ve),_(ve))?function y(ve){const{schema:ee,opts:Be,gen:Re}=ve;d(ve,()=>{Be.$comment&&ee.$comment&&Y(ve),function $(ve){const{schema:ee,opts:Be}=ve;void 0!==ee.default&&Be.useDefaults&&Be.strictSchema&&(0,h.checkStrictMode)(ve,"default is ignored in the schema root")}(ve),Re.let(z.default.vErrors,null),Re.let(z.default.errors,0),Be.unevaluated&&function T(ve){const{gen:ee,validateName:Be}=ve;ve.evaluated=ee.const("evaluated",u._`${Be}.evaluated`),ee.if(u._`${ve.evaluated}.dynamicProps`,()=>ee.assign(u._`${ve.evaluated}.props`,u._`undefined`)),ee.if(u._`${ve.evaluated}.dynamicItems`,()=>ee.assign(u._`${ve.evaluated}.items`,u._`undefined`))}(ve),k(ve),function G(ve){const{gen:ee,schemaEnv:Be,validateName:Re,ValidationError:ct,opts:Ae}=ve;Be.$async?ee.if(u._`${z.default.errors} === 0`,()=>ee.return(z.default.data),()=>ee.throw(u._`new ${ct}(${z.default.vErrors})`)):(ee.assign(u._`${Re}.errors`,z.default.vErrors),Ae.unevaluated&&function V({gen:ve,evaluated:ee,props:Be,items:Re}){Be instanceof u.Name&&ve.assign(u._`${ee}.props`,Be),Re instanceof u.Name&&ve.assign(u._`${ee}.items`,Re)}(ve),ee.return(u._`${z.default.errors} === 0`))}(ve)})}(ve):d(ve,()=>(0,e.topBoolOrEmptySchema)(ve))};class ae{constructor(ee,Be,Re){if((0,C.validateKeywordUsage)(ee,Be,Re),this.gen=ee.gen,this.allErrors=ee.allErrors,this.keyword=Re,this.data=ee.data,this.schema=ee.schema[Re],this.$data=Be.$data&&ee.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,h.schemaRefOrVal)(ee,this.schema,Re,this.$data),this.schemaType=Be.schemaType,this.parentSchema=ee.schema,this.params={},this.it=ee,this.def=Be,this.$data)this.schemaCode=ee.gen.const("vSchema",q(this.$data,ee));else if(this.schemaCode=this.schemaValue,!(0,C.validSchemaType)(this.schema,Be.schemaType,Be.allowUndefined))throw new Error(`${Re} value must be ${JSON.stringify(Be.schemaType)}`);("code"in Be?Be.trackErrors:!1!==Be.errors)&&(this.errsCount=ee.gen.const("_errs",z.default.errors))}result(ee,Be,Re){this.failResult((0,u.not)(ee),Be,Re)}failResult(ee,Be,Re){this.gen.if(ee),Re?Re():this.error(),Be?(this.gen.else(),Be(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(ee,Be){this.failResult((0,u.not)(ee),void 0,Be)}fail(ee){if(void 0===ee)return this.error(),void(this.allErrors||this.gen.if(!1));this.gen.if(ee),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(ee){if(!this.$data)return this.fail(ee);const{schemaCode:Be}=this;this.fail(u._`${Be} !== undefined && (${(0,u.or)(this.invalid$data(),ee)})`)}error(ee,Be,Re){if(Be)return this.setParams(Be),this._error(ee,Re),void this.setParams({});this._error(ee,Re)}_error(ee,Be){(ee?v.reportExtraError:v.reportError)(this,this.def.error,Be)}$dataError(){(0,v.reportError)(this,this.def.$dataError||v.keyword$DataError)}reset(){if(void 0===this.errsCount)throw new Error('add "trackErrors" to keyword definition');(0,v.resetErrorsCount)(this.gen,this.errsCount)}ok(ee){this.allErrors||this.gen.if(ee)}setParams(ee,Be){Be?Object.assign(this.params,ee):this.params=ee}block$data(ee,Be,Re=u.nil){this.gen.block(()=>{this.check$data(ee,Re),Be()})}check$data(ee=u.nil,Be=u.nil){if(!this.$data)return;const{gen:Re,schemaCode:ct,schemaType:Ae,def:Mt}=this;Re.if((0,u.or)(u._`${ct} === undefined`,Be)),ee!==u.nil&&Re.assign(ee,!0),(Ae.length||Mt.validateSchema)&&(Re.elseIf(this.invalid$data()),this.$dataError(),ee!==u.nil&&Re.assign(ee,!1)),Re.else()}invalid$data(){const{gen:ee,schemaCode:Be,schemaType:Re,def:ct,it:Ae}=this;return(0,u.or)(function Mt(){if(Re.length){if(!(Be instanceof u.Name))throw new Error("ajv implementation error");const ot=Array.isArray(Re)?Re:[Re];return u._`${(0,i.checkDataTypes)(ot,Be,Ae.opts.strictNumbers,i.DataType.Wrong)}`}return u.nil}(),function je(){if(ct.validateSchema){const ot=ee.scopeValue("validate$data",{ref:ct.validateSchema});return u._`!${ot}(${Be})`}return u.nil}())}subschema(ee,Be){const Re=(0,E.getSubschema)(this.it,ee);(0,E.extendSubschemaData)(Re,this.it,ee),(0,E.extendSubschemaMode)(Re,ee);const ct={...this.it,...Re,items:void 0,props:void 0};return function D(ve,ee){P(ve)&&(A(ve),_(ve))?function S(ve,ee){const{schema:Be,gen:Re,opts:ct}=ve;ct.$comment&&Be.$comment&&Y(ve),function W(ve){const ee=ve.schema[ve.opts.schemaId];ee&&(ve.baseId=(0,M.resolveUrl)(ve.opts.uriResolver,ve.baseId,ee))}(ve),function ze(ve){if(ve.schema.$async&&!ve.schemaEnv.$async)throw new Error("async schema in sync schema")}(ve);const Ae=Re.const("_errs",z.default.errors);k(ve,Ae),Re.var(ee,u._`${Ae} === ${z.default.errors}`)}(ve,ee):(0,e.boolOrEmptySchema)(ve,ee)}(ct,Be),ct}mergeEvaluated(ee,Be){const{it:Re,gen:ct}=this;Re.opts.unevaluated&&(!0!==Re.props&&void 0!==ee.props&&(Re.props=h.mergeEvaluated.props(ct,ee.props,Re.props,Be)),!0!==Re.items&&void 0!==ee.items&&(Re.items=h.mergeEvaluated.items(ct,ee.items,Re.items,Be)))}mergeValidEvaluated(ee,Be){const{it:Re,gen:ct}=this;if(Re.opts.unevaluated&&(!0!==Re.props||!0!==Re.items))return ct.if(Be,()=>this.mergeEvaluated(ee,u.Name)),!0}}function xe(ve,ee,Be,Re){const ct=new ae(ve,Be,ee);"code"in Be?Be.code(ct,Re):ct.$data&&Be.validate?(0,C.funcKeywordCode)(ct,Be):"macro"in Be?(0,C.macroKeywordCode)(ct,Be):(Be.compile||Be.validate)&&(0,C.funcKeywordCode)(ct,Be)}I.KeywordCxt=ae;const Me=/^\/(?:[^~]|~0|~1)*$/,Ye=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function q(ve,{dataLevel:ee,dataNames:Be,dataPathArr:Re}){let ct,Ae;if(""===ve)return z.default.rootData;if("/"===ve[0]){if(!Me.test(ve))throw new Error(`Invalid JSON-pointer: ${ve}`);ct=ve,Ae=z.default.rootData}else{const mt=Ye.exec(ve);if(!mt)throw new Error(`Invalid JSON-pointer: ${ve}`);const we=+mt[1];if(ct=mt[2],"#"===ct){if(we>=ee)throw new Error(ot("property/index",we));return Re[ee-we]}if(we>ee)throw new Error(ot("data",we));if(Ae=Be[ee-we],!ct)return Ae}let Mt=Ae;const je=ct.split("/");for(const mt of je)mt&&(Ae=u._`${Ae}${(0,u.getProperty)((0,h.unescapeJsonPointer)(mt))}`,Mt=u._`${Mt} && ${Ae}`);return Mt;function ot(mt,we){return`Cannot access ${mt} ${we} levels up, current level is ${ee}`}}I.getData=q},42641:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.validateKeywordUsage=I.validSchemaType=I.funcKeywordCode=I.macroKeywordCode=void 0;const e=o(10117),n=o(25631),t=o(89508),i=o(45618);function E(g){const{gen:d,data:p,it:f}=g;d.if(f.parentData,()=>d.assign(p,e._`${f.parentData}[${f.parentDataProperty}]`))}function M(g,d,p){if(void 0===p)throw new Error(`keyword "${d}" failed to compile`);return g.scopeValue("keyword","function"==typeof p?{ref:p}:{ref:p,code:(0,e.stringify)(p)})}I.macroKeywordCode=function l(g,d){const{gen:p,keyword:f,schema:y,parentSchema:T,it:x}=g,D=d.macro.call(x.self,y,T,x),_=M(p,f,D);!1!==x.opts.validateSchema&&x.self.validateSchema(D,!0);const P=p.name("valid");g.subschema({schema:D,schemaPath:e.nil,errSchemaPath:`${x.errSchemaPath}/${f}`,topSchemaRef:_,compositeRule:!0},P),g.pass(P,()=>g.error(!0))},I.funcKeywordCode=function C(g,d){var p;const{gen:f,keyword:y,schema:T,parentSchema:x,$data:D,it:_}=g;!function z({schemaEnv:g},d){if(d.async&&!g.$async)throw new Error("async keyword in sync schema")}(_,d);const P=!D&&d.compile?d.compile.call(_.self,T,x,_):d.validate,S=M(f,y,P),A=f.let("valid");function W(Y=(d.async?e._`await `:e.nil)){f.assign(A,e._`${Y}${(0,t.callValidateCode)(g,S,_.opts.passContext?n.default.this:n.default.self,!("compile"in d&&!D||!1===d.schema))}`,d.modifying)}function ze(Y){var G;f.if((0,e.not)(null!==(G=d.valid)&&void 0!==G?G:A),Y)}g.block$data(A,function k(){if(!1===d.errors)W(),d.modifying&&E(g),ze(()=>g.error());else{const Y=d.async?function R(){const Y=f.let("ruleErrs",null);return f.try(()=>W(e._`await `),G=>f.assign(A,!1).if(e._`${G} instanceof ${_.ValidationError}`,()=>f.assign(Y,e._`${G}.errors`),()=>f.throw(G))),Y}():function $(){const Y=e._`${S}.errors`;return f.assign(Y,null),W(e.nil),Y}();d.modifying&&E(g),ze(()=>function u(g,d){const{gen:p}=g;p.if(e._`Array.isArray(${d})`,()=>{p.assign(n.default.vErrors,e._`${n.default.vErrors} === null ? ${d} : ${n.default.vErrors}.concat(${d})`).assign(n.default.errors,e._`${n.default.vErrors}.length`),(0,i.extendErrors)(g)},()=>g.error())}(g,Y))}}),g.ok(null!==(p=d.valid)&&void 0!==p?p:A)},I.validSchemaType=function h(g,d,p=!1){return!d.length||d.some(f=>"array"===f?Array.isArray(g):"object"===f?g&&"object"==typeof g&&!Array.isArray(g):typeof g==f||p&&typeof g>"u")},I.validateKeywordUsage=function v({schema:g,opts:d,self:p,errSchemaPath:f},y,T){if(Array.isArray(y.keyword)?!y.keyword.includes(T):y.keyword!==T)throw new Error("ajv implementation error");const x=y.dependencies;if(x?.some(D=>!Object.prototype.hasOwnProperty.call(g,D)))throw new Error(`parent schema must have dependencies of ${T}: ${x.join(",")}`);if(y.validateSchema&&!y.validateSchema(g[T])){const _=`keyword "${T}" value is invalid at path "${f}": `+p.errorsText(y.validateSchema.errors);if("log"!==d.validateSchema)throw new Error(_);p.logger.error(_)}}},66117:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.extendSubschemaMode=I.extendSubschemaData=I.getSubschema=void 0;const e=o(10117),n=o(78754);I.getSubschema=function t(C,{keyword:E,schemaProp:u,schema:z,schemaPath:M,errSchemaPath:h,topSchemaRef:v}){if(void 0!==E&&void 0!==z)throw new Error('both "keyword" and "schema" passed, only one allowed');if(void 0!==E){const g=C.schema[E];return void 0===u?{schema:g,schemaPath:e._`${C.schemaPath}${(0,e.getProperty)(E)}`,errSchemaPath:`${C.errSchemaPath}/${E}`}:{schema:g[u],schemaPath:e._`${C.schemaPath}${(0,e.getProperty)(E)}${(0,e.getProperty)(u)}`,errSchemaPath:`${C.errSchemaPath}/${E}/${(0,n.escapeFragment)(u)}`}}if(void 0!==z){if(void 0===M||void 0===h||void 0===v)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:z,schemaPath:M,topSchemaRef:v,errSchemaPath:h}}throw new Error('either "keyword" or "schema" must be passed')},I.extendSubschemaData=function i(C,E,{dataProp:u,dataPropType:z,data:M,dataTypes:h,propertyName:v}){if(void 0!==M&&void 0!==u)throw new Error('both "data" and "dataProp" passed, only one allowed');const{gen:g}=E;if(void 0!==u){const{errorPath:p,dataPathArr:f,opts:y}=E;d(g.let("data",e._`${E.data}${(0,e.getProperty)(u)}`,!0)),C.errorPath=e.str`${p}${(0,n.getErrorPath)(u,z,y.jsPropertySyntax)}`,C.parentDataProperty=e._`${u}`,C.dataPathArr=[...f,C.parentDataProperty]}function d(p){C.data=p,C.dataLevel=E.dataLevel+1,C.dataTypes=[],E.definedProperties=new Set,C.parentData=E.data,C.dataNames=[...E.dataNames,p]}void 0!==M&&(d(M instanceof e.Name?M:g.let("data",M,!0)),void 0!==v&&(C.propertyName=v)),h&&(C.dataTypes=h)},I.extendSubschemaMode=function l(C,{jtdDiscriminator:E,jtdMetadata:u,compositeRule:z,createErrors:M,allErrors:h}){void 0!==z&&(C.compositeRule=z),void 0!==M&&(C.createErrors=M),void 0!==h&&(C.allErrors=h),C.jtdDiscriminator=E,C.jtdMetadata=u}},28385:(nt,I,o)=>{"use strict";var e=o(59344).default;Object.defineProperty(I,"__esModule",{value:!0}),I.CodeGen=I.Name=I.nil=I.stringify=I.str=I._=I.KeywordCxt=void 0;var n=o(62175);Object.defineProperty(I,"KeywordCxt",{enumerable:!0,get:function(){return n.KeywordCxt}});var t=o(10117);Object.defineProperty(I,"_",{enumerable:!0,get:function(){return t._}}),Object.defineProperty(I,"str",{enumerable:!0,get:function(){return t.str}}),Object.defineProperty(I,"stringify",{enumerable:!0,get:function(){return t.stringify}}),Object.defineProperty(I,"nil",{enumerable:!0,get:function(){return t.nil}}),Object.defineProperty(I,"Name",{enumerable:!0,get:function(){return t.Name}}),Object.defineProperty(I,"CodeGen",{enumerable:!0,get:function(){return t.CodeGen}});const i=o(80110),l=o(95695),C=o(70491),E=o(24317),u=o(10117),z=o(82690),M=o(84730),h=o(78754),v=o(64775),g=o(75573),d=(re,be)=>new RegExp(re,be);d.code="new RegExp";const p=["removeAdditional","useDefaults","coerceTypes"],f=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),y={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},T={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'};function D(re){var be,le,ce,Q,ie,ae,xe,Me,Ye,q,ve,ee,Be,Re,ct,Ae,Mt,je,ot,mt,we,de,U,B,Ee;const Ie=re.strict,Ne=null===(be=re.code)||void 0===be?void 0:be.optimize,pt=!0===Ne||void 0===Ne?1:Ne||0,Dt=null!==(ce=null===(le=re.code)||void 0===le?void 0:le.regExp)&&void 0!==ce?ce:d,Lt=null!==(Q=re.uriResolver)&&void 0!==Q?Q:g.default;return{strictSchema:null===(ae=null!==(ie=re.strictSchema)&&void 0!==ie?ie:Ie)||void 0===ae||ae,strictNumbers:null===(Me=null!==(xe=re.strictNumbers)&&void 0!==xe?xe:Ie)||void 0===Me||Me,strictTypes:null!==(q=null!==(Ye=re.strictTypes)&&void 0!==Ye?Ye:Ie)&&void 0!==q?q:"log",strictTuples:null!==(ee=null!==(ve=re.strictTuples)&&void 0!==ve?ve:Ie)&&void 0!==ee?ee:"log",strictRequired:null!==(Re=null!==(Be=re.strictRequired)&&void 0!==Be?Be:Ie)&&void 0!==Re&&Re,code:re.code?{...re.code,optimize:pt,regExp:Dt}:{optimize:pt,regExp:Dt},loopRequired:null!==(ct=re.loopRequired)&&void 0!==ct?ct:200,loopEnum:null!==(Ae=re.loopEnum)&&void 0!==Ae?Ae:200,meta:null===(Mt=re.meta)||void 0===Mt||Mt,messages:null===(je=re.messages)||void 0===je||je,inlineRefs:null===(ot=re.inlineRefs)||void 0===ot||ot,schemaId:null!==(mt=re.schemaId)&&void 0!==mt?mt:"$id",addUsedSchema:null===(we=re.addUsedSchema)||void 0===we||we,validateSchema:null===(de=re.validateSchema)||void 0===de||de,validateFormats:null===(U=re.validateFormats)||void 0===U||U,unicodeRegExp:null===(B=re.unicodeRegExp)||void 0===B||B,int32range:null===(Ee=re.int32range)||void 0===Ee||Ee,uriResolver:Lt}}class _{constructor(be={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,be=this.opts={...be,...D(be)};const{es5:le,lines:ce}=this.opts.code;this.scope=new u.ValueScope({scope:{},prefixes:f,es5:le,lines:ce}),this.logger=function ze(re){if(!1===re)return W;if(void 0===re)return console;if(re.log&&re.warn&&re.error)return re;throw new Error("logger must implement log, warn and error methods")}(be.logger);const Q=be.validateFormats;be.validateFormats=!1,this.RULES=(0,C.getRules)(),P.call(this,y,be,"NOT SUPPORTED"),P.call(this,T,be,"DEPRECATED","warn"),this._metaOpts=$.call(this),be.formats&&k.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),be.keywords&&R.call(this,be.keywords),"object"==typeof be.meta&&this.addMetaSchema(be.meta),A.call(this),be.validateFormats=Q}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){const{$data:be,meta:le,schemaId:ce}=this.opts;let Q=v;"id"===ce&&(Q={...v},Q.id=Q.$id,delete Q.$id),le&&be&&this.addMetaSchema(Q,Q[ce],!1)}defaultMeta(){const{meta:be,schemaId:le}=this.opts;return this.opts.defaultMeta="object"==typeof be?be[le]||be:void 0}validate(be,le){let ce;if("string"==typeof be){if(ce=this.getSchema(be),!ce)throw new Error(`no schema with key or ref "${be}"`)}else ce=this.compile(be);const Q=ce(le);return"$async"in ce||(this.errors=ce.errors),Q}compile(be,le){const ce=this._addSchema(be,le);return ce.validate||this._compileSchemaEnv(ce)}compileAsync(be,le){if("function"!=typeof this.opts.loadSchema)throw new Error("options.loadSchema should be a function");const{loadSchema:ce}=this.opts;return Q.call(this,be,le);function Q(ct,Ae){return ie.apply(this,arguments)}function ie(){return(ie=e(function*(ct,Ae){yield ae.call(this,ct.$schema);const Mt=this._addSchema(ct,Ae);return Mt.validate||Me.call(this,Mt)})).apply(this,arguments)}function ae(ct){return xe.apply(this,arguments)}function xe(){return(xe=e(function*(ct){ct&&!this.getSchema(ct)&&(yield Q.call(this,{$ref:ct},!0))})).apply(this,arguments)}function Me(ct){return Ye.apply(this,arguments)}function Ye(){return(Ye=e(function*(ct){try{return this._compileSchemaEnv(ct)}catch(Ae){if(!(Ae instanceof l.default))throw Ae;return q.call(this,Ae),yield ve.call(this,Ae.missingSchema),Me.call(this,ct)}})).apply(this,arguments)}function q({missingSchema:ct,missingRef:Ae}){if(this.refs[ct])throw new Error(`AnySchema ${ct} is loaded but ${Ae} cannot be resolved`)}function ve(ct){return ee.apply(this,arguments)}function ee(){return(ee=e(function*(ct){const Ae=yield Be.call(this,ct);this.refs[ct]||(yield ae.call(this,Ae.$schema)),this.refs[ct]||this.addSchema(Ae,ct,le)})).apply(this,arguments)}function Be(ct){return Re.apply(this,arguments)}function Re(){return(Re=e(function*(ct){const Ae=this._loading[ct];if(Ae)return Ae;try{return yield this._loading[ct]=ce(ct)}finally{delete this._loading[ct]}})).apply(this,arguments)}}addSchema(be,le,ce,Q=this.opts.validateSchema){if(Array.isArray(be)){for(const ae of be)this.addSchema(ae,void 0,ce,Q);return this}let ie;if("object"==typeof be){const{schemaId:ae}=this.opts;if(ie=be[ae],void 0!==ie&&"string"!=typeof ie)throw new Error(`schema ${ae} must be string`)}return le=(0,z.normalizeId)(le||ie),this._checkUnique(le),this.schemas[le]=this._addSchema(be,ce,le,Q,!0),this}addMetaSchema(be,le,ce=this.opts.validateSchema){return this.addSchema(be,le,!0,ce),this}validateSchema(be,le){if("boolean"==typeof be)return!0;let ce;if(ce=be.$schema,void 0!==ce&&"string"!=typeof ce)throw new Error("$schema must be a string");if(ce=ce||this.opts.defaultMeta||this.defaultMeta(),!ce)return this.logger.warn("meta-schema not available"),this.errors=null,!0;const Q=this.validate(ce,be);if(!Q&&le){const ie="schema is invalid: "+this.errorsText();if("log"!==this.opts.validateSchema)throw new Error(ie);this.logger.error(ie)}return Q}getSchema(be){let le;for(;"string"==typeof(le=S.call(this,be));)be=le;if(void 0===le){const{schemaId:ce}=this.opts,Q=new E.SchemaEnv({schema:{},schemaId:ce});if(le=E.resolveSchema.call(this,Q,be),!le)return;this.refs[be]=le}return le.validate||this._compileSchemaEnv(le)}removeSchema(be){if(be instanceof RegExp)return this._removeAllSchemas(this.schemas,be),this._removeAllSchemas(this.refs,be),this;switch(typeof be){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{const le=S.call(this,be);return"object"==typeof le&&this._cache.delete(le.schema),delete this.schemas[be],delete this.refs[be],this}case"object":{this._cache.delete(be);let ce=be[this.opts.schemaId];return ce&&(ce=(0,z.normalizeId)(ce),delete this.schemas[ce],delete this.refs[ce]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(be){for(const le of be)this.addKeyword(le);return this}addKeyword(be,le){let ce;if("string"==typeof be)ce=be,"object"==typeof le&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),le.keyword=ce);else{if("object"!=typeof be||void 0!==le)throw new Error("invalid addKeywords parameters");if(ce=(le=be).keyword,Array.isArray(ce)&&!ce.length)throw new Error("addKeywords: keyword must be string or non-empty array")}if(G.call(this,ce,le),!le)return(0,h.eachItem)(ce,ie=>V.call(this,ie)),this;te.call(this,le);const Q={...le,type:(0,M.getJSONTypes)(le.type),schemaType:(0,M.getJSONTypes)(le.schemaType)};return(0,h.eachItem)(ce,0===Q.type.length?ie=>V.call(this,ie,Q):ie=>Q.type.forEach(ae=>V.call(this,ie,Q,ae))),this}getKeyword(be){const le=this.RULES.all[be];return"object"==typeof le?le.definition:!!le}removeKeyword(be){const{RULES:le}=this;delete le.keywords[be],delete le.all[be];for(const ce of le.rules){const Q=ce.rules.findIndex(ie=>ie.keyword===be);Q>=0&&ce.rules.splice(Q,1)}return this}addFormat(be,le){return"string"==typeof le&&(le=new RegExp(le)),this.formats[be]=le,this}errorsText(be=this.errors,{separator:le=", ",dataVar:ce="data"}={}){return be&&0!==be.length?be.map(Q=>`${ce}${Q.instancePath} ${Q.message}`).reduce((Q,ie)=>Q+le+ie):"No errors"}$dataMetaSchema(be,le){const ce=this.RULES.all;be=JSON.parse(JSON.stringify(be));for(const Q of le){const ie=Q.split("/").slice(1);let ae=be;for(const xe of ie)ae=ae[xe];for(const xe in ce){const Me=ce[xe];if("object"!=typeof Me)continue;const{$data:Ye}=Me.definition,q=ae[xe];Ye&&q&&(ae[xe]=fe(q))}}return be}_removeAllSchemas(be,le){for(const ce in be){const Q=be[ce];(!le||le.test(ce))&&("string"==typeof Q?delete be[ce]:Q&&!Q.meta&&(this._cache.delete(Q.schema),delete be[ce]))}}_addSchema(be,le,ce,Q=this.opts.validateSchema,ie=this.opts.addUsedSchema){let ae;const{schemaId:xe}=this.opts;if("object"==typeof be)ae=be[xe];else{if(this.opts.jtd)throw new Error("schema must be object");if("boolean"!=typeof be)throw new Error("schema must be object or boolean")}let Me=this._cache.get(be);if(void 0!==Me)return Me;ce=(0,z.normalizeId)(ae||ce);const Ye=z.getSchemaRefs.call(this,be,ce);return Me=new E.SchemaEnv({schema:be,schemaId:xe,meta:le,baseId:ce,localRefs:Ye}),this._cache.set(Me.schema,Me),ie&&!ce.startsWith("#")&&(ce&&this._checkUnique(ce),this.refs[ce]=Me),Q&&this.validateSchema(be,!0),Me}_checkUnique(be){if(this.schemas[be]||this.refs[be])throw new Error(`schema with key or id "${be}" already exists`)}_compileSchemaEnv(be){if(be.meta?this._compileMetaSchema(be):E.compileSchema.call(this,be),!be.validate)throw new Error("ajv implementation error");return be.validate}_compileMetaSchema(be){const le=this.opts;this.opts=this._metaOpts;try{E.compileSchema.call(this,be)}finally{this.opts=le}}}function P(re,be,le,ce="error"){for(const Q in re)Q in be&&this.logger[ce](`${le}: option ${Q}. ${re[Q]}`)}function S(re){return re=(0,z.normalizeId)(re),this.schemas[re]||this.refs[re]}function A(){const re=this.opts.schemas;if(re)if(Array.isArray(re))this.addSchema(re);else for(const be in re)this.addSchema(re[be],be)}function k(){for(const re in this.opts.formats){const be=this.opts.formats[re];be&&this.addFormat(re,be)}}function R(re){if(Array.isArray(re))this.addVocabulary(re);else{this.logger.warn("keywords option as map is deprecated, pass array");for(const be in re){const le=re[be];le.keyword||(le.keyword=be),this.addKeyword(le)}}}function $(){const re={...this.opts};for(const be of p)delete re[be];return re}I.default=_,_.ValidationError=i.default,_.MissingRefError=l.default;const W={log(){},warn(){},error(){}},Y=/^[a-z_$][a-z0-9_$:-]*$/i;function G(re,be){const{RULES:le}=this;if((0,h.eachItem)(re,ce=>{if(le.keywords[ce])throw new Error(`Keyword ${ce} is already defined`);if(!Y.test(ce))throw new Error(`Keyword ${ce} has invalid name`)}),be&&be.$data&&!("code"in be)&&!("validate"in be))throw new Error('$data keyword must have "code" or "validate" function')}function V(re,be,le){var ce;const Q=be?.post;if(le&&Q)throw new Error('keyword with "post" flag cannot have "type"');const{RULES:ie}=this;let ae=Q?ie.post:ie.rules.find(({type:Me})=>Me===le);if(ae||(ae={type:le,rules:[]},ie.rules.push(ae)),ie.keywords[re]=!0,!be)return;const xe={keyword:re,definition:{...be,type:(0,M.getJSONTypes)(be.type),schemaType:(0,M.getJSONTypes)(be.schemaType)}};be.before?K.call(this,ae,xe,be.before):ae.rules.push(xe),ie.all[re]=xe,null===(ce=be.implements)||void 0===ce||ce.forEach(Me=>this.addKeyword(Me))}function K(re,be,le){const ce=re.rules.findIndex(Q=>Q.keyword===le);ce>=0?re.rules.splice(ce,0,be):(re.rules.push(be),this.logger.warn(`rule ${le} is not defined`))}function te(re){let{metaSchema:be}=re;void 0!==be&&(re.$data&&this.opts.$data&&(be=fe(be)),re.validateSchema=this.compile(be,!0))}const ne={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function fe(re){return{anyOf:[re,ne]}}},74747:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(19818);e.code='require("ajv/dist/runtime/equal").default',I.default=e},81197:(nt,I)=>{"use strict";function o(e){const n=e.length;let l,t=0,i=0;for(;i=55296&&l<=56319&&i{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(96064);e.code='require("ajv/dist/runtime/uri").default',I.default=e},80110:(nt,I)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});class o extends Error{constructor(n){super("validation failed"),this.errors=n,this.ajv=this.validation=!0}}I.default=o},92952:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.validateAdditionalItems=void 0;const e=o(10117),n=o(78754),i={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:{message:({params:{len:C}})=>e.str`must NOT have more than ${C} items`,params:({params:{len:C}})=>e._`{limit: ${C}}`},code(C){const{parentSchema:E,it:u}=C,{items:z}=E;Array.isArray(z)?l(C,z):(0,n.checkStrictMode)(u,'"additionalItems" is ignored when "items" is not an array of schemas')}};function l(C,E){const{gen:u,schema:z,data:M,keyword:h,it:v}=C;v.items=!0;const g=u.const("len",e._`${M}.length`);if(!1===z)C.setParams({len:E.length}),C.pass(e._`${g} <= ${E.length}`);else if("object"==typeof z&&!(0,n.alwaysValidSchema)(v,z)){const p=u.var("valid",e._`${g} <= ${E.length}`);u.if((0,e.not)(p),()=>function d(p){u.forRange("i",E.length,g,f=>{C.subschema({keyword:h,dataProp:f,dataPropType:n.Type.Num},p),v.allErrors||u.if((0,e.not)(p),()=>u.break())})}(p)),C.ok(p)}}I.validateAdditionalItems=l,I.default=i},50746:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(89508),n=o(10117),t=o(25631),i=o(78754);I.default={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:{message:"must NOT have additional properties",params:({params:E})=>n._`{additionalProperty: ${E.additionalProperty}}`},code(E){const{gen:u,schema:z,parentSchema:M,data:h,errsCount:v,it:g}=E;if(!v)throw new Error("ajv implementation error");const{allErrors:d,opts:p}=g;if(g.props=!0,"all"!==p.removeAdditional&&(0,i.alwaysValidSchema)(g,z))return;const f=(0,e.allSchemaProperties)(M.properties),y=(0,e.allSchemaProperties)(M.patternProperties);function D(S){u.code(n._`delete ${h}[${S}]`)}function _(S){if("all"===p.removeAdditional||p.removeAdditional&&!1===z)D(S);else{if(!1===z)return E.setParams({additionalProperty:S}),E.error(),void(d||u.break());if("object"==typeof z&&!(0,i.alwaysValidSchema)(g,z)){const A=u.name("valid");"failing"===p.removeAdditional?(P(S,A,!1),u.if((0,n.not)(A),()=>{E.reset(),D(S)})):(P(S,A),d||u.if((0,n.not)(A),()=>u.break()))}}}function P(S,A,k){const R={keyword:"additionalProperties",dataProp:S,dataPropType:i.Type.Str};!1===k&&Object.assign(R,{compositeRule:!0,createErrors:!1,allErrors:!1}),E.subschema(R,A)}(function T(){u.forIn("key",h,S=>{f.length||y.length?u.if(function x(S){let A;if(f.length>8){const k=(0,i.schemaRefOrVal)(g,M.properties,"properties");A=(0,e.isOwnProperty)(u,k,S)}else A=f.length?(0,n.or)(...f.map(k=>n._`${S} === ${k}`)):n.nil;return y.length&&(A=(0,n.or)(A,...y.map(k=>n._`${(0,e.usePattern)(E,k)}.test(${S})`))),(0,n.not)(A)}(S),()=>_(S)):_(S)})})(),E.ok(n._`${v} === ${t.default.errors}`)}}},19466:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(78754);I.default={keyword:"allOf",schemaType:"array",code(t){const{gen:i,schema:l,it:C}=t;if(!Array.isArray(l))throw new Error("ajv implementation error");const E=i.name("valid");l.forEach((u,z)=>{if((0,e.alwaysValidSchema)(C,u))return;const M=t.subschema({keyword:"allOf",schemaProp:z},E);t.ok(E),t.mergeEvaluated(M)})}}},24651:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const n={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:o(89508).validateUnion,error:{message:"must match a schema in anyOf"}};I.default=n},51006:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117),n=o(78754);I.default={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:{message:({params:{min:l,max:C}})=>void 0===C?e.str`must contain at least ${l} valid item(s)`:e.str`must contain at least ${l} and no more than ${C} valid item(s)`,params:({params:{min:l,max:C}})=>void 0===C?e._`{minContains: ${l}}`:e._`{minContains: ${l}, maxContains: ${C}}`},code(l){const{gen:C,schema:E,parentSchema:u,data:z,it:M}=l;let h,v;const{minContains:g,maxContains:d}=u;M.opts.next?(h=void 0===g?1:g,v=d):h=1;const p=C.const("len",e._`${z}.length`);if(l.setParams({min:h,max:v}),void 0===v&&0===h)return void(0,n.checkStrictMode)(M,'"minContains" == 0 without "maxContains": "contains" keyword ignored');if(void 0!==v&&h>v)return(0,n.checkStrictMode)(M,'"minContains" > "maxContains" is always invalid'),void l.fail();if((0,n.alwaysValidSchema)(M,E)){let D=e._`${p} >= ${h}`;return void 0!==v&&(D=e._`${D} && ${p} <= ${v}`),void l.pass(D)}M.items=!0;const f=C.name("valid");function y(){const D=C.name("_valid"),_=C.let("count",0);T(D,()=>C.if(D,()=>function x(D){C.code(e._`${D}++`),void 0===v?C.if(e._`${D} >= ${h}`,()=>C.assign(f,!0).break()):(C.if(e._`${D} > ${v}`,()=>C.assign(f,!1).break()),1===h?C.assign(f,!0):C.if(e._`${D} >= ${h}`,()=>C.assign(f,!0)))}(_)))}function T(D,_){C.forRange("i",0,p,P=>{l.subschema({keyword:"contains",dataProp:P,dataPropType:n.Type.Num,compositeRule:!0},D),_()})}void 0===v&&1===h?T(f,()=>C.if(f,()=>C.break())):0===h?(C.let(f,!0),void 0!==v&&C.if(e._`${z}.length > 0`,y)):(C.let(f,!1),y()),l.result(f,()=>l.reset())}}},91804:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.validateSchemaDeps=I.validatePropertyDeps=I.error=void 0;const e=o(10117),n=o(78754),t=o(89508);I.error={message:({params:{property:u,depsCount:z,deps:M}})=>e.str`must have ${1===z?"property":"properties"} ${M} when property ${u} is present`,params:({params:{property:u,depsCount:z,deps:M,missingProperty:h}})=>e._`{property: ${u}, +(self.webpackChunksite=self.webpackChunksite||[]).push([[179],{94265:(nt,I,o)=>{"use strict";o.d(I,{T6:()=>v,VD:()=>g,WE:()=>E,Yt:()=>d,lC:()=>t,py:()=>C,rW:()=>n,s:()=>z,ve:()=>l,vq:()=>u});var e=o(86337);function n(p,f,y){return{r:255*(0,e.sh)(p,255),g:255*(0,e.sh)(f,255),b:255*(0,e.sh)(y,255)}}function t(p,f,y){p=(0,e.sh)(p,255),f=(0,e.sh)(f,255),y=(0,e.sh)(y,255);var T=Math.max(p,f,y),x=Math.min(p,f,y),D=0,_=0,P=(T+x)/2;if(T===x)_=0,D=0;else{var O=T-x;switch(_=P>.5?O/(2-T-x):O/(T+x),T){case p:D=(f-y)/O+(f1&&(y-=1),y<1/6?p+6*y*(f-p):y<.5?f:y<2/3?p+(f-p)*(2/3-y)*6:p}function l(p,f,y){var T,x,D;if(p=(0,e.sh)(p,360),f=(0,e.sh)(f,100),y=(0,e.sh)(y,100),0===f)x=y,D=y,T=y;else{var _=y<.5?y*(1+f):y+f-y*f,P=2*y-_;T=i(P,_,p+1/3),x=i(P,_,p),D=i(P,_,p-1/3)}return{r:255*T,g:255*x,b:255*D}}function C(p,f,y){p=(0,e.sh)(p,255),f=(0,e.sh)(f,255),y=(0,e.sh)(y,255);var T=Math.max(p,f,y),x=Math.min(p,f,y),D=0,_=T,P=T-x,O=0===T?0:P/T;if(T===x)D=0;else{switch(T){case p:D=(f-y)/P+(f>16,g:(65280&p)>>8,b:255&p}}},41309:(nt,I,o)=>{"use strict";o.d(I,{R:()=>e});var e={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",goldenrod:"#daa520",gold:"#ffd700",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavenderblush:"#fff0f5",lavender:"#e6e6fa",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"}},36379:(nt,I,o)=>{"use strict";o.d(I,{uA:()=>i});var e=o(94265),n=o(41309),t=o(86337);function i(g){var d={r:0,g:0,b:0},p=1,f=null,y=null,T=null,x=!1,D=!1;return"string"==typeof g&&(g=function h(g){if(0===(g=g.trim().toLowerCase()).length)return!1;var d=!1;if(n.R[g])g=n.R[g],d=!0;else if("transparent"===g)return{r:0,g:0,b:0,a:0,format:"name"};var p=M.rgb.exec(g);return p?{r:p[1],g:p[2],b:p[3]}:(p=M.rgba.exec(g))?{r:p[1],g:p[2],b:p[3],a:p[4]}:(p=M.hsl.exec(g))?{h:p[1],s:p[2],l:p[3]}:(p=M.hsla.exec(g))?{h:p[1],s:p[2],l:p[3],a:p[4]}:(p=M.hsv.exec(g))?{h:p[1],s:p[2],v:p[3]}:(p=M.hsva.exec(g))?{h:p[1],s:p[2],v:p[3],a:p[4]}:(p=M.hex8.exec(g))?{r:(0,e.VD)(p[1]),g:(0,e.VD)(p[2]),b:(0,e.VD)(p[3]),a:(0,e.T6)(p[4]),format:d?"name":"hex8"}:(p=M.hex6.exec(g))?{r:(0,e.VD)(p[1]),g:(0,e.VD)(p[2]),b:(0,e.VD)(p[3]),format:d?"name":"hex"}:(p=M.hex4.exec(g))?{r:(0,e.VD)(p[1]+p[1]),g:(0,e.VD)(p[2]+p[2]),b:(0,e.VD)(p[3]+p[3]),a:(0,e.T6)(p[4]+p[4]),format:d?"name":"hex8"}:!!(p=M.hex3.exec(g))&&{r:(0,e.VD)(p[1]+p[1]),g:(0,e.VD)(p[2]+p[2]),b:(0,e.VD)(p[3]+p[3]),format:d?"name":"hex"}}(g)),"object"==typeof g&&(v(g.r)&&v(g.g)&&v(g.b)?(d=(0,e.rW)(g.r,g.g,g.b),x=!0,D="%"===String(g.r).substr(-1)?"prgb":"rgb"):v(g.h)&&v(g.s)&&v(g.v)?(f=(0,t.JX)(g.s),y=(0,t.JX)(g.v),d=(0,e.WE)(g.h,f,y),x=!0,D="hsv"):v(g.h)&&v(g.s)&&v(g.l)&&(f=(0,t.JX)(g.s),T=(0,t.JX)(g.l),d=(0,e.ve)(g.h,f,T),x=!0,D="hsl"),Object.prototype.hasOwnProperty.call(g,"a")&&(p=g.a)),p=(0,t.Yq)(p),{ok:x,format:g.format||D,r:Math.min(255,Math.max(d.r,0)),g:Math.min(255,Math.max(d.g,0)),b:Math.min(255,Math.max(d.b,0)),a:p}}var E="(?:".concat("[-\\+]?\\d*\\.\\d+%?",")|(?:").concat("[-\\+]?\\d+%?",")"),u="[\\s|\\(]+(".concat(E,")[,|\\s]+(").concat(E,")[,|\\s]+(").concat(E,")\\s*\\)?"),z="[\\s|\\(]+(".concat(E,")[,|\\s]+(").concat(E,")[,|\\s]+(").concat(E,")[,|\\s]+(").concat(E,")\\s*\\)?"),M={CSS_UNIT:new RegExp(E),rgb:new RegExp("rgb"+u),rgba:new RegExp("rgba"+z),hsl:new RegExp("hsl"+u),hsla:new RegExp("hsla"+z),hsv:new RegExp("hsv"+u),hsva:new RegExp("hsva"+z),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/};function v(g){return!!M.CSS_UNIT.exec(String(g))}},30889:(nt,I,o)=>{"use strict";o.d(I,{C:()=>l});var e=o(94265),n=o(41309),t=o(36379),i=o(86337),l=function(){function E(u,z){var M;if(void 0===u&&(u=""),void 0===z&&(z={}),u instanceof E)return u;"number"==typeof u&&(u=(0,e.Yt)(u)),this.originalInput=u;var h=(0,t.uA)(u);this.originalInput=u,this.r=h.r,this.g=h.g,this.b=h.b,this.a=h.a,this.roundA=Math.round(100*this.a)/100,this.format=null!==(M=z.format)&&void 0!==M?M:h.format,this.gradientType=z.gradientType,this.r<1&&(this.r=Math.round(this.r)),this.g<1&&(this.g=Math.round(this.g)),this.b<1&&(this.b=Math.round(this.b)),this.isValid=h.ok}return E.prototype.isDark=function(){return this.getBrightness()<128},E.prototype.isLight=function(){return!this.isDark()},E.prototype.getBrightness=function(){var u=this.toRgb();return(299*u.r+587*u.g+114*u.b)/1e3},E.prototype.getLuminance=function(){var u=this.toRgb(),v=u.r/255,g=u.g/255,d=u.b/255;return.2126*(v<=.03928?v/12.92:Math.pow((v+.055)/1.055,2.4))+.7152*(g<=.03928?g/12.92:Math.pow((g+.055)/1.055,2.4))+.0722*(d<=.03928?d/12.92:Math.pow((d+.055)/1.055,2.4))},E.prototype.getAlpha=function(){return this.a},E.prototype.setAlpha=function(u){return this.a=(0,i.Yq)(u),this.roundA=Math.round(100*this.a)/100,this},E.prototype.isMonochrome=function(){return 0===this.toHsl().s},E.prototype.toHsv=function(){var u=(0,e.py)(this.r,this.g,this.b);return{h:360*u.h,s:u.s,v:u.v,a:this.a}},E.prototype.toHsvString=function(){var u=(0,e.py)(this.r,this.g,this.b),z=Math.round(360*u.h),M=Math.round(100*u.s),h=Math.round(100*u.v);return 1===this.a?"hsv(".concat(z,", ").concat(M,"%, ").concat(h,"%)"):"hsva(".concat(z,", ").concat(M,"%, ").concat(h,"%, ").concat(this.roundA,")")},E.prototype.toHsl=function(){var u=(0,e.lC)(this.r,this.g,this.b);return{h:360*u.h,s:u.s,l:u.l,a:this.a}},E.prototype.toHslString=function(){var u=(0,e.lC)(this.r,this.g,this.b),z=Math.round(360*u.h),M=Math.round(100*u.s),h=Math.round(100*u.l);return 1===this.a?"hsl(".concat(z,", ").concat(M,"%, ").concat(h,"%)"):"hsla(".concat(z,", ").concat(M,"%, ").concat(h,"%, ").concat(this.roundA,")")},E.prototype.toHex=function(u){return void 0===u&&(u=!1),(0,e.vq)(this.r,this.g,this.b,u)},E.prototype.toHexString=function(u){return void 0===u&&(u=!1),"#"+this.toHex(u)},E.prototype.toHex8=function(u){return void 0===u&&(u=!1),(0,e.s)(this.r,this.g,this.b,this.a,u)},E.prototype.toHex8String=function(u){return void 0===u&&(u=!1),"#"+this.toHex8(u)},E.prototype.toHexShortString=function(u){return void 0===u&&(u=!1),1===this.a?this.toHexString(u):this.toHex8String(u)},E.prototype.toRgb=function(){return{r:Math.round(this.r),g:Math.round(this.g),b:Math.round(this.b),a:this.a}},E.prototype.toRgbString=function(){var u=Math.round(this.r),z=Math.round(this.g),M=Math.round(this.b);return 1===this.a?"rgb(".concat(u,", ").concat(z,", ").concat(M,")"):"rgba(".concat(u,", ").concat(z,", ").concat(M,", ").concat(this.roundA,")")},E.prototype.toPercentageRgb=function(){var u=function(z){return"".concat(Math.round(100*(0,i.sh)(z,255)),"%")};return{r:u(this.r),g:u(this.g),b:u(this.b),a:this.a}},E.prototype.toPercentageRgbString=function(){var u=function(z){return Math.round(100*(0,i.sh)(z,255))};return 1===this.a?"rgb(".concat(u(this.r),"%, ").concat(u(this.g),"%, ").concat(u(this.b),"%)"):"rgba(".concat(u(this.r),"%, ").concat(u(this.g),"%, ").concat(u(this.b),"%, ").concat(this.roundA,")")},E.prototype.toName=function(){if(0===this.a)return"transparent";if(this.a<1)return!1;for(var u="#"+(0,e.vq)(this.r,this.g,this.b,!1),z=0,M=Object.entries(n.R);z=0&&(u.startsWith("hex")||"name"===u)?"name"===u&&0===this.a?this.toName():this.toRgbString():("rgb"===u&&(M=this.toRgbString()),"prgb"===u&&(M=this.toPercentageRgbString()),("hex"===u||"hex6"===u)&&(M=this.toHexString()),"hex3"===u&&(M=this.toHexString(!0)),"hex4"===u&&(M=this.toHex8String(!0)),"hex8"===u&&(M=this.toHex8String()),"name"===u&&(M=this.toName()),"hsl"===u&&(M=this.toHslString()),"hsv"===u&&(M=this.toHsvString()),M||this.toHexString())},E.prototype.toNumber=function(){return(Math.round(this.r)<<16)+(Math.round(this.g)<<8)+Math.round(this.b)},E.prototype.clone=function(){return new E(this.toString())},E.prototype.lighten=function(u){void 0===u&&(u=10);var z=this.toHsl();return z.l+=u/100,z.l=(0,i.V2)(z.l),new E(z)},E.prototype.brighten=function(u){void 0===u&&(u=10);var z=this.toRgb();return z.r=Math.max(0,Math.min(255,z.r-Math.round(-u/100*255))),z.g=Math.max(0,Math.min(255,z.g-Math.round(-u/100*255))),z.b=Math.max(0,Math.min(255,z.b-Math.round(-u/100*255))),new E(z)},E.prototype.darken=function(u){void 0===u&&(u=10);var z=this.toHsl();return z.l-=u/100,z.l=(0,i.V2)(z.l),new E(z)},E.prototype.tint=function(u){return void 0===u&&(u=10),this.mix("white",u)},E.prototype.shade=function(u){return void 0===u&&(u=10),this.mix("black",u)},E.prototype.desaturate=function(u){void 0===u&&(u=10);var z=this.toHsl();return z.s-=u/100,z.s=(0,i.V2)(z.s),new E(z)},E.prototype.saturate=function(u){void 0===u&&(u=10);var z=this.toHsl();return z.s+=u/100,z.s=(0,i.V2)(z.s),new E(z)},E.prototype.greyscale=function(){return this.desaturate(100)},E.prototype.spin=function(u){var z=this.toHsl(),M=(z.h+u)%360;return z.h=M<0?360+M:M,new E(z)},E.prototype.mix=function(u,z){void 0===z&&(z=50);var M=this.toRgb(),h=new E(u).toRgb(),v=z/100;return new E({r:(h.r-M.r)*v+M.r,g:(h.g-M.g)*v+M.g,b:(h.b-M.b)*v+M.b,a:(h.a-M.a)*v+M.a})},E.prototype.analogous=function(u,z){void 0===u&&(u=6),void 0===z&&(z=30);var M=this.toHsl(),h=360/z,v=[this];for(M.h=(M.h-(h*u>>1)+720)%360;--u;)M.h=(M.h+h)%360,v.push(new E(M));return v},E.prototype.complement=function(){var u=this.toHsl();return u.h=(u.h+180)%360,new E(u)},E.prototype.monochromatic=function(u){void 0===u&&(u=6);for(var z=this.toHsv(),M=z.h,h=z.s,v=z.v,g=[],d=1/u;u--;)g.push(new E({h:M,s:h,v})),v=(v+d)%1;return g},E.prototype.splitcomplement=function(){var u=this.toHsl(),z=u.h;return[this,new E({h:(z+72)%360,s:u.s,l:u.l}),new E({h:(z+216)%360,s:u.s,l:u.l})]},E.prototype.onBackground=function(u){var z=this.toRgb(),M=new E(u).toRgb(),h=z.a+M.a*(1-z.a);return new E({r:(z.r*z.a+M.r*M.a*(1-z.a))/h,g:(z.g*z.a+M.g*M.a*(1-z.a))/h,b:(z.b*z.a+M.b*M.a*(1-z.a))/h,a:h})},E.prototype.triad=function(){return this.polyad(3)},E.prototype.tetrad=function(){return this.polyad(4)},E.prototype.polyad=function(u){for(var z=this.toHsl(),M=z.h,h=[this],v=360/u,g=1;g{"use strict";function e(u,z){(function t(u){return"string"==typeof u&&-1!==u.indexOf(".")&&1===parseFloat(u)})(u)&&(u="100%");var M=function i(u){return"string"==typeof u&&-1!==u.indexOf("%")}(u);return u=360===z?u:Math.min(z,Math.max(0,parseFloat(u))),M&&(u=parseInt(String(u*z),10)/100),Math.abs(u-z)<1e-6?1:u=360===z?(u<0?u%z+z:u%z)/parseFloat(String(z)):u%z/parseFloat(String(z))}function n(u){return Math.min(1,Math.max(0,u))}function l(u){return u=parseFloat(u),(isNaN(u)||u<0||u>1)&&(u=1),u}function C(u){return u<=1?"".concat(100*Number(u),"%"):u}function E(u){return 1===u.length?"0"+u:String(u)}o.d(I,{FZ:()=>E,JX:()=>C,V2:()=>n,Yq:()=>l,sh:()=>e})},45372:(nt,I,o)=>{"use strict";o.d(I,{h:()=>l});var e=o(97582),n=o(74648),t=o(65879),i=o(62831);class l{constructor(E,u,z){this.el=E,this.cdr=u,this.platform=z,this.enabled=!0,this.delay=300}ngAfterViewInit(){const E=this.el.nativeElement;!this.platform.isBrowser||!(E instanceof HTMLElement)||!this.enabled||(this._focusoutTimeout=setTimeout(()=>{E.focus({preventScroll:!1}),this.cdr.markForCheck()},this.delay))}ngOnDestroy(){this._focusoutTimeout&&(clearTimeout(this._focusoutTimeout),this._focusoutTimeout=null)}static#e=this.\u0275fac=function(u){return new(u||l)(t.Y36(t.SBq),t.Y36(t.sBO),t.Y36(i.t4))};static#t=this.\u0275dir=t.lG2({type:l,selectors:[["","auto-focus",""],["input","autofocus","autofocus"],["textarea","autofocus","autofocus"]],inputs:{enabled:"enabled",delay:"delay"},exportAs:["autoFocus"]})}(0,e.gn)([(0,n.yF)()],l.prototype,"enabled",void 0),(0,e.gn)([(0,n.Rn)()],l.prototype,"delay",void 0)},32461:(nt,I,o)=>{"use strict";o.d(I,{y:()=>t});var e=o(65879);const n=["*"];let t=(()=>{class i{static#e=this.\u0275fac=function(E){return new(E||i)};static#t=this.\u0275cmp=e.Xpm({type:i,selectors:[["avatar-list-item"],["","avatar-list-item",""]],inputs:{src:"src",text:"text",icon:"icon",tips:"tips"},exportAs:["avatarListItem"],ngContentSelectors:n,decls:1,vars:0,template:function(E,u){1&E&&(e.F$t(),e.Hsn(0))},encapsulation:2,changeDetection:0})}return i})()},8682:(nt,I,o)=>{"use strict";o.d(I,{k:()=>d});var e=o(97582),n=o(71993),t=o(74648),i=o(32461),l=o(65879),C=o(49388),E=o(96814),u=o(96928),z=o(96109);function M(p,f){if(1&p&&l._UZ(0,"nz-avatar",6),2&p){const y=l.oxw().$implicit,T=l.oxw();l.Q6J("nzTooltipTitle",y.tips)("nzSrc",y.src)("nzText",y.text)("nzIcon",y.icon)("nzSize",T.avatarSize)}}function h(p,f){if(1&p&&l._UZ(0,"nz-avatar",7),2&p){const y=l.oxw().$implicit,T=l.oxw();l.Q6J("nzSrc",y.src)("nzText",y.text)("nzIcon",y.icon)("nzSize",T.avatarSize)}}function v(p,f){if(1&p&&(l.TgZ(0,"li",3),l.YNc(1,M,1,5,"nz-avatar",4),l.YNc(2,h,1,4,"nz-avatar",5),l.qZA()),2&p){const y=f.$implicit,T=l.oxw();l.Q6J("ngClass",T.cls),l.xp6(1),l.Q6J("ngIf",y.tips),l.xp6(1),l.Q6J("ngIf",!y.tips)}}function g(p,f){if(1&p&&(l.TgZ(0,"li",3),l._UZ(1,"nz-avatar",8),l.qZA()),2&p){const y=l.oxw();l.Q6J("ngClass",y.cls),l.xp6(1),l.Q6J("nzSize",y.avatarSize)("ngStyle",y.excessItemsStyle)("nzText","+"+y.exceedCount)}}class d{set size(f){switch(this.cls="avatar-list__item"+("default"===f?"":` avatar-list__${f}`),f){case"large":case"small":case"default":this.avatarSize=f;break;default:this.avatarSize="small"}}constructor(f,y){this.cdr=f,this.directionality=y,this.inited=!1,this.dir$=this.directionality.change?.pipe((0,n.sL)()),this.items=[],this.exceedCount=0,this.dir="ltr",this.cls="",this.avatarSize="default",this.maxLength=0,this.excessItemsStyle=null}gen(){const{_items:f}=this,y=this.maxLength>0?this.maxLength:f.length,T=f.length,x=y>0&&y>=T?T:y;this.items=f.toArray().slice(0,x),this.exceedCount=x{this.dir=f,this.cdr.detectChanges()}),this.gen(),this.inited=!0}ngOnChanges(){this.inited&&this.gen()}static#e=this.\u0275fac=function(y){return new(y||d)(l.Y36(l.sBO),l.Y36(C.Is,8))};static#t=this.\u0275cmp=l.Xpm({type:d,selectors:[["avatar-list"]],contentQueries:function(y,T,x){if(1&y&&l.Suo(x,i.y,4),2&y){let D;l.iGM(D=l.CRH())&&(T._items=D)}},hostVars:4,hostBindings:function(y,T){2&y&&l.ekj("avatar-list",!0)("avatar-list-rtl","rtl"===T.dir)},inputs:{size:"size",maxLength:"maxLength",excessItemsStyle:"excessItemsStyle"},exportAs:["avatarList"],features:[l.TTD],decls:3,vars:2,consts:[[1,"avatar-list__wrap"],[3,"ngClass",4,"ngFor","ngForOf"],[3,"ngClass",4,"ngIf"],[3,"ngClass"],["nz-tooltip","",3,"nzTooltipTitle","nzSrc","nzText","nzIcon","nzSize",4,"ngIf"],[3,"nzSrc","nzText","nzIcon","nzSize",4,"ngIf"],["nz-tooltip","",3,"nzTooltipTitle","nzSrc","nzText","nzIcon","nzSize"],[3,"nzSrc","nzText","nzIcon","nzSize"],[2,"cursor","auto",3,"nzSize","ngStyle","nzText"]],template:function(y,T){1&y&&(l.TgZ(0,"ul",0),l.YNc(1,v,3,3,"li",1),l.YNc(2,g,2,4,"li",2),l.qZA()),2&y&&(l.xp6(1),l.Q6J("ngForOf",T.items),l.xp6(1),l.Q6J("ngIf",T.exceedCount>0))},dependencies:[E.mk,E.sg,E.O5,E.PC,u.Dz,z.SY],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,t.Rn)()],d.prototype,"maxLength",void 0)},67772:(nt,I,o)=>{"use strict";o.d(I,{E:()=>i}),o(64115);var n=o(65879),t=o(32481);let i=(()=>{class l{constructor(E,u){this.srv=E,this.viewContainerRef=u}ngOnInit(){const E=this.data.options.widget,u=this.srv.getWidget(E.key)?.ref;null!=u&&(this.viewContainerRef.clear(),this.viewContainerRef.createComponent(u).instance.data=this.data)}static#e=this.\u0275fac=function(u){return new(u||l)(n.Y36(t.x),n.Y36(n.s_b))};static#t=this.\u0275dir=n.lG2({type:l,selectors:[["","cell-widget-host",""]],inputs:{data:"data"}})}return l})()},11463:(nt,I,o)=>{"use strict";o.d(I,{T:()=>be});var e=o(97582),n=o(65879),t=o(53263),i=o(74648),l=o(8471),C=o(32481),E=o(52787),u=o(92760),z=o(96814),M=o(60095),h=o(62612),v=o(57907),g=o(33640),d=o(55695),p=o(96109),f=o(90551),y=o(67772);function T(le,ce){if(1&le){const Q=n.EpF();n.TgZ(0,"label",11),n.NdJ("ngModelChange",function(ae){n.CHM(Q);const xe=n.oxw(2);return n.KtG(xe.change(ae))}),n._uU(1),n.qZA()}if(2&le){const Q=n.oxw(2);n.Q6J("nzDisabled",Q.disabled)("ngModel",Q.value),n.xp6(1),n.hij(" ",null==Q.safeOpt.checkbox?null:Q.safeOpt.checkbox.label," ")}}function x(le,ce){if(1&le){const Q=n.EpF();n.TgZ(0,"label",12),n.NdJ("ngModelChange",function(ae){n.CHM(Q);const xe=n.oxw(2);return n.KtG(xe.change(ae))}),n._uU(1),n.qZA()}if(2&le){const Q=n.oxw(2);n.Q6J("nzDisabled",Q.disabled)("ngModel",Q.value),n.xp6(1),n.hij(" ",null==Q.safeOpt.radio?null:Q.safeOpt.radio.label," ")}}function D(le,ce){if(1&le){const Q=n.EpF();n.TgZ(0,"a",13),n.NdJ("click",function(ae){n.CHM(Q);const xe=n.oxw(2);return n.KtG(xe._link(ae))}),n.qZA()}if(2&le){const Q=n.oxw(2);n.Q6J("innerHTML",Q._text,n.oJD),n.uIk("target",null==Q.safeOpt.link?null:Q.safeOpt.link.target)("title",Q.value)}}function _(le,ce){if(1&le&&(n.TgZ(0,"nz-tag",14),n._UZ(1,"span",15),n.qZA()),2&le){const Q=n.oxw(2);n.Q6J("nzColor",null==Q.res||null==Q.res.result?null:Q.res.result.color),n.xp6(1),n.Q6J("innerHTML",Q._text,n.oJD)}}function P(le,ce){if(1&le&&n._UZ(0,"nz-badge",16),2&le){const Q=n.oxw(2);n.s9C("nzText",Q._text),n.Q6J("nzStatus",null==Q.res||null==Q.res.result?null:Q.res.result.color)}}function O(le,ce){}function A(le,ce){if(1&le&&n.YNc(0,O,0,0,"ng-template",17),2&le){const Q=n.oxw(2);n.Q6J("data",Q.hostData)}}function k(le,ce){if(1&le){const Q=n.EpF();n.TgZ(0,"img",19),n.NdJ("click",function(){const xe=n.CHM(Q).$implicit,Me=n.oxw(3);return n.KtG(Me._showImg(xe))}),n.qZA()}if(2&le){const Q=ce.$implicit,ie=n.oxw(3);n.ekj("point",null==ie.safeOpt.img?null:ie.safeOpt.img.big),n.uIk("src",Q,n.LSH)("height",null==ie.safeOpt.img?null:ie.safeOpt.img.size)("width",null==ie.safeOpt.img?null:ie.safeOpt.img.size)}}function F(le,ce){if(1&le&&(n.ynx(0),n.YNc(1,k,1,5,"img",18),n.BQk()),2&le){const Q=n.oxw(2);n.xp6(1),n.Q6J("ngForOf",Q._text)}}function W(le,ce){if(1&le&&n._UZ(0,"span",15),2&le){const Q=n.oxw(3);n.Q6J("innerHTML",Q._text,n.oJD),n.uIk("title",Q.value)}}function K(le,ce){if(1&le&&n._UZ(0,"span",23),2&le){const Q=n.oxw(3);n.Q6J("innerText",Q._text),n.uIk("title",Q.value)}}function _e(le,ce){if(1&le&&(n.TgZ(0,"span",24),n._uU(1),n.qZA()),2&le){const Q=n.oxw(3);n.xp6(1),n.Oqu(Q._unit)}}function Y(le,ce){if(1&le&&(n.ynx(0),n.YNc(1,W,1,2,"span",20),n.YNc(2,K,1,2,"span",21),n.YNc(3,_e,2,1,"span",22),n.BQk()),2&le){const Q=n.oxw(2);n.xp6(1),n.Q6J("ngIf",!Q.isText),n.xp6(1),n.Q6J("ngIf",Q.isText),n.xp6(1),n.Q6J("ngIf",Q._unit)}}function G(le,ce){if(1&le&&(n.ynx(0,3),n.YNc(1,T,2,3,"label",4),n.YNc(2,x,2,3,"label",5),n.YNc(3,D,1,3,"a",6),n.YNc(4,_,2,2,"nz-tag",7),n.YNc(5,P,1,2,"nz-badge",8),n.YNc(6,A,1,1,null,9),n.YNc(7,F,2,1,"ng-container",9),n.YNc(8,Y,4,3,"ng-container",10),n.BQk()),2&le){const Q=n.oxw();n.Q6J("ngSwitch",Q.safeOpt.type),n.xp6(1),n.Q6J("ngSwitchCase","checkbox"),n.xp6(1),n.Q6J("ngSwitchCase","radio"),n.xp6(1),n.Q6J("ngSwitchCase","link"),n.xp6(1),n.Q6J("ngSwitchCase","tag"),n.xp6(1),n.Q6J("ngSwitchCase","badge"),n.xp6(1),n.Q6J("ngSwitchCase","widget"),n.xp6(1),n.Q6J("ngSwitchCase","img")}}function H(le,ce){if(1&le&&(n.ynx(0),n._uU(1),n.BQk()),2&le){const Q=n.oxw(2);n.xp6(1),n.Oqu(null==Q.safeOpt.default?null:Q.safeOpt.default.text)}}function j(le,ce){}function te(le,ce){if(1&le&&(n.TgZ(0,"span",27),n.YNc(1,j,0,0,"ng-template",28),n.qZA()),2&le){const Q=n.oxw(3),ie=n.MAs(1);n.Q6J("nz-tooltip",Q.safeOpt.tooltip),n.xp6(1),n.Q6J("ngTemplateOutlet",ie)}}function ne(le,ce){if(1&le&&(n.ynx(0),n.YNc(1,te,2,2,"span",26),n.BQk()),2&le){const Q=n.oxw(2),ie=n.MAs(1);n.xp6(1),n.Q6J("ngIf",Q.safeOpt.tooltip)("ngIfElse",ie)}}function pe(le,ce){if(1&le&&(n.YNc(0,H,2,1,"ng-container",25),n.YNc(1,ne,2,2,"ng-container",25)),2&le){const Q=n.oxw();n.Q6J("ngIf",Q.showDefault),n.xp6(1),n.Q6J("ngIf",!Q.showDefault)}}function re(le,ce){1&le&&n._UZ(0,"span",29)}class be{get safeOpt(){return this.res?.options??{}}get isText(){return"text"===this.res?.safeHtml}get hostData(){return{value:this.value,options:this.srv.fixOptions(this.options)}}constructor(ce,Q,ie,ae,xe,Me,Ye){this.srv=ce,this.router=Q,this.cdr=ie,this.el=ae,this.renderer=xe,this.imgSrv=Me,this.win=Ye,this.showDefault=!1,this.valueChange=new n.vpe,this.loading=!1,this.disabled=!1}updateValue(){this.destroy$?.unsubscribe(),this.destroy$=this.srv.get(this.value,this.options).subscribe(ce=>{this.res=ce,this.showDefault=this.value==this.safeOpt.default.condition,this._text=ce.result?.text??"",this._unit=ce.result?.unit??this.safeOpt?.unit,this.cdr.detectChanges(),this.setClass()})}setClass(){const{el:ce,renderer:Q}=this,{renderType:ie,size:ae}=this.safeOpt;(0,t.C)(ce.nativeElement,Q,{cell:!0,[`cell__${ie}`]:null!=ie,[`cell__${ae}`]:null!=ae,"cell__has-unit":this._unit,"cell__has-default":this.showDefault,cell__disabled:this.disabled}),ce.nativeElement.dataset.type=this.safeOpt.type}ngOnChanges(ce){Object.keys(ce).every(Q=>["loading","disabled"].includes(Q))?this.setClass():this.updateValue()}change(ce){this.value=ce,this.valueChange.emit(ce)}_link(ce){if(ce.preventDefault(),ce.stopPropagation(),this.disabled)return;const Q=this.safeOpt.link,ie=Q?.url;null!=ie&&(/https?:\/\//g.test(ie)?this.win.open(ie,Q?.target):this.router.navigateByUrl(ie))}_showImg(ce){const Q=this.safeOpt.img;if(null==Q||null==Q.big)return;let ie=-1;const ae=this._text.map((xe,Me)=>(-1===ie&&xe===ce&&(ie=Me),"function"==typeof Q.big?Q.big(xe):xe));this.imgSrv.preview(ae.map(xe=>({src:xe})),Q.previewOptions).switchTo(ie)}ngOnDestroy(){this.destroy$?.unsubscribe()}static#e=this.\u0275fac=function(Q){return new(Q||be)(n.Y36(C.x),n.Y36(E.F0),n.Y36(n.sBO),n.Y36(n.SBq),n.Y36(n.Qsj),n.Y36(u.x8),n.Y36(l.m))};static#t=this.\u0275cmp=n.Xpm({type:be,selectors:[["cell"],["","cell",""]],inputs:{value:"value",options:"options",loading:"loading",disabled:"disabled"},outputs:{valueChange:"valueChange"},exportAs:["cell"],features:[n.TTD],decls:5,vars:2,consts:[["text",""],["textWrap",""],["nz-icon","","nzType","loading",4,"ngIf","ngIfElse"],[3,"ngSwitch"],["nz-checkbox","",3,"nzDisabled","ngModel","ngModelChange",4,"ngSwitchCase"],["nz-radio","",3,"nzDisabled","ngModel","ngModelChange",4,"ngSwitchCase"],[3,"innerHTML","click",4,"ngSwitchCase"],[3,"nzColor",4,"ngSwitchCase"],[3,"nzStatus","nzText",4,"ngSwitchCase"],[4,"ngSwitchCase"],[4,"ngSwitchDefault"],["nz-checkbox","",3,"nzDisabled","ngModel","ngModelChange"],["nz-radio","",3,"nzDisabled","ngModel","ngModelChange"],[3,"innerHTML","click"],[3,"nzColor"],[3,"innerHTML"],[3,"nzStatus","nzText"],["cell-widget-host","",3,"data"],["class","img",3,"point","click",4,"ngFor","ngForOf"],[1,"img",3,"click"],[3,"innerHTML",4,"ngIf"],[3,"innerText",4,"ngIf"],["class","unit",4,"ngIf"],[3,"innerText"],[1,"unit"],[4,"ngIf"],[3,"nz-tooltip",4,"ngIf","ngIfElse"],[3,"nz-tooltip"],[3,"ngTemplateOutlet"],["nz-icon","","nzType","loading"]],template:function(Q,ie){if(1&Q&&(n.YNc(0,G,9,8,"ng-template",null,0,n.W1O),n.YNc(2,pe,2,2,"ng-template",null,1,n.W1O),n.YNc(4,re,1,0,"span",2)),2&Q){const ae=n.MAs(3);n.xp6(4),n.Q6J("ngIf",ie.loading)("ngIfElse",ae)}},dependencies:[z.sg,z.O5,z.tP,z.RF,z.n9,z.ED,M.JJ,M.On,h.Ie,v.Of,g.x7,d.j,p.SY,f.Ls,y.E],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,i.yF)()],be.prototype,"loading",void 0),(0,e.gn)([(0,i.yF)()],be.prototype,"disabled",void 0)},32481:(nt,I,o)=>{"use strict";o.d(I,{x:()=>h});var e=o(22096),n=o(37398),t=o(980),i=o(60325),l=o(59927),C=o(64115),E=o(65879),u=o(78967),z=o(12131),M=o(6593);let h=(()=>{class v{constructor(d,p,f,y){this.nzI18n=p,this.currency=f,this.dom=y,this.widgets={date:{type:"fn",ref:(T,x)=>({text:(0,i.p6)(T,x.date.format,this.nzI18n.getDateLocale())})},mega:{type:"fn",ref:(T,x)=>{const D=this.currency.mega(T,x.mega);return{text:D.value,unit:D.unitI18n}}},currency:{type:"fn",ref:(T,x)=>({text:this.currency.format(T,x.currency)})},cny:{type:"fn",ref:(T,x)=>({text:this.currency.cny(T,x.cny)})},boolean:{type:"fn",ref:(T,x)=>({text:this.dom.bypassSecurityTrustHtml((0,t.yn)(T,x.boolean))})},img:{type:"fn",ref:T=>({text:Array.isArray(T)?T:[T]})}},this.globalOptions=d.merge("cell",{date:{format:"yyyy-MM-dd HH:mm:ss"},img:{size:32},default:{text:"-"}})}registerWidget(d,p){this.widgets[d]={type:"widget",ref:p}}getWidget(d){return this.widgets[d]}genType(d,p){if(null!=p.type)return p.type;const f=typeof d;return"number"===f&&/^[0-9]{13}$/g.test(d)||d instanceof Date||null!=p.date?"date":null!=p.widget?"widget":null!=p.mega?"mega":null!=p.currency?"currency":null!=p.cny?"cny":null!=p.img?"img":null!=p.link?"link":null!=p.html?"html":null!=p.badge?"badge":null!=p.tag?"tag":null!=p.checkbox?"checkbox":null!=p.radio?"radio":null!=p.enum?"enum":"number"===f?"number":"boolean"===f||null!=p.boolean?"boolean":"string"}fixOptions(d){return(0,C.RH)({},this.globalOptions,d)}get(d,p){const f=this.genType(d,{...p}),y=this.fixOptions(p);y.type=f;const T="object"==typeof d&&"function"==typeof d?.getTypeName&&null!=d?.getTypeName();let x={result:"object"!=typeof d||T?{text:null==d?"":T?d:`${d}`}:d,options:y};const D=this.widgets[f];return"fn"===D?.type&&(x.result=D.ref(d,y)),("function"==typeof d?d(d,y):(0,e.of)(x.result)).pipe((0,n.U)(_=>{let P;switch(x.result=_,f){case"badge":P=(y.badge?.data??{})[d],x.result={color:"default",...P};break;case"tag":P=(y.tag?.data??{})[d],x.result=P;break;case"enum":x.result={text:(y.enum??{})[d]};break;case"html":x.safeHtml=y.html?.safe;break;case"string":T&&(x.safeHtml="safeHtml")}return("badge"===f||"tag"===f)&&null!=P?.tooltip&&(x.options.tooltip=P.tooltip),null!=y.mask&&(x.result.text=(0,l.B0)(x.result.text,y.mask)),x}))}static#e=this.\u0275fac=function(p){return new(p||v)(E.LFG(u.Ri),E.LFG(z.wi),E.LFG(l.ie),E.LFG(M.H7))};static#t=this.\u0275prov=E.Yz7({token:v,factory:v.\u0275fac,providedIn:"root"})}return v})()},22948:(nt,I,o)=>{"use strict";o.d(I,{cm:()=>G,xx:()=>H.x}),o(11463),o(67772);var t=o(96814),i=o(60095),l=o(33640),C=o(62612),E=o(65879),u=o(92760),z=o(49388),M=o(34423),h=o(33651),v=o(62831),g=o(68484),d=o(90551),p=o(6192);let F=(()=>{class j{static#e=this.\u0275fac=function(pe){return new(pe||j)};static#t=this.\u0275mod=E.oAB({type:j});static#n=this.\u0275inj=E.cJS({imports:[z.vT,h.U8,g.eL,M._t,t.ez,d.PV,p.YS,v.ud,u.Gb]})}return j})();var W=o(57907),K=o(55695),_e=o(96109);let G=(()=>{class j{static#e=this.\u0275fac=function(pe){return new(pe||j)};static#t=this.\u0275mod=E.oAB({type:j});static#n=this.\u0275inj=E.cJS({imports:[t.ez,i.u5,C.Wr,W.aF,l.mS,K.X,_e.cg,d.PV,F]})}return j})();var H=o(32481)},33821:(nt,I,o)=>{"use strict";o.d(I,{m:()=>u});var e=o(65879),n=o(27163),t=o(89207),i=o(96814),l=o(44556);const C=["cd"];function E(z,M){if(1&z){const h=e.EpF();e.TgZ(0,"countdown",1,2),e.NdJ("event",function(g){e.CHM(h);const d=e.oxw();return e.KtG(d.handleEvent(g))}),e.qZA()}if(2&z){const h=e.oxw();e.Q6J("config",h.config)}}let u=(()=>{class z{constructor(){this.event=new e.vpe}set target(h){this.config={format:"HH:mm:ss",stopTime:"number"==typeof h?(0,n.Z)(new Date,h).valueOf():+(0,t.Z)(h,"t")}}handleEvent(h){this.event.emit(h)}static#e=this.\u0275fac=function(v){return new(v||z)};static#t=this.\u0275cmp=e.Xpm({type:z,selectors:[["count-down"]],viewQuery:function(v,g){if(1&v&&e.Gf(C,5),2&v){let d;e.iGM(d=e.CRH())&&(g.instance=d.first)}},inputs:{config:"config",target:"target"},outputs:{event:"event"},exportAs:["countDown"],decls:1,vars:1,consts:[[3,"config","event",4,"ngIf"],[3,"config","event"],["cd",""]],template:function(v,g){1&v&&e.YNc(0,E,2,1,"countdown",0),2&v&&e.Q6J("ngIf",g.config)},dependencies:[i.O5,l.MR],encapsulation:2,changeDetection:0})}return z})()},94461:(nt,I,o)=>{"use strict";o.d(I,{W:()=>E});var e=o(65879),n=o(96814);const t=["tpl"],i=function(u){return{"ml-sm":u}};function l(u,z){if(1&u){const M=e.EpF();e.TgZ(0,"a",2),e.NdJ("click",function(){const g=e.CHM(M).$implicit,d=e.oxw(2);return e.KtG(d.click(g))}),e.qZA()}if(2&u){const h=z.first;e.Q6J("innerHTML",z.$implicit._text,e.oJD)("ngClass",e.VKq(2,i,!h))}}function C(u,z){if(1&u&&e.YNc(0,l,1,4,"a",1),2&u){const M=e.oxw();e.Q6J("ngForOf",M.list)}}let E=(()=>{class u{constructor(){this.list=[]}click(M){}static#e=this.\u0275fac=function(h){return new(h||u)};static#t=this.\u0275cmp=e.Xpm({type:u,selectors:[["ng-component"]],viewQuery:function(h,v){if(1&h&&e.Gf(t,7),2&h){let g;e.iGM(g=e.CRH())&&(v.tpl=g.first)}},decls:2,vars:0,consts:[["tpl",""],[3,"innerHTML","ngClass","click",4,"ngFor","ngForOf"],[3,"innerHTML","ngClass","click"]],template:function(h,v){1&h&&e.YNc(0,C,1,1,"ng-template",null,0,e.W1O)},dependencies:[n.mk,n.sg],encapsulation:2})}return u})()},67744:(nt,I,o)=>{"use strict";o.d(I,{Q:()=>u});var e=o(65879),n=o(60325),t=o(64115),i=o(94461),l=o(6593),C=o(78967),E=o(52682);let u=(()=>{class z{set shortcut(h){const v=(0,t.Z2)({list:[]},!0,this.defaultShortcuts,h??{});"object"!=typeof h&&(v.enabled=!1!==h),(v.list||[]).forEach(g=>{g._text=this.dom.bypassSecurityTrustHtml(g.text)}),this._shortcut=v,this.refreshShortcut()}get shortcut(){return this._shortcut}get dp(){return this.nativeComp.datePicker}get srv(){return this.dp.datePickerService}constructor(h,v,g,d){this.dom=h,this.nativeComp=g,this.vcr=d,this._shortcut=null,this.shortcutFactory=null,this.start=null,this.end=null,this.ngModelEndChange=new e.vpe,(0,t.hu)(!!g,'It should be attached to nz-range-picker component, for example: \'\'');const p=v.merge("dataRange",{nzFormat:"yyyy-MM-dd",nzAllowClear:!0,nzAutoFocus:!1,nzPopupStyle:{position:"relative"},nzShowToday:!0,shortcuts:{enabled:!1,closed:!0,list:[{text:"\u4eca\u5929",fn:()=>(0,n.wb)("today")},{text:"\u6628\u5929",fn:()=>(0,n.wb)("yesterday")},{text:"\u8fd13\u5929",fn:()=>(0,n.wb)(-2)},{text:"\u8fd17\u5929",fn:()=>(0,n.wb)(-6)},{text:"\u672c\u5468",fn:()=>(0,n.wb)("week")},{text:"\u672c\u6708",fn:()=>(0,n.wb)("month")},{text:"\u5168\u5e74",fn:()=>(0,n.wb)("year")}]}});this.defaultShortcuts={...p.shortcuts},Object.assign(this,p)}cd(){this.dp.cdr.markForCheck()}overrideNative(){const h=this.dp;h.writeValue=g=>{const d=(g&&this.ngModelEnd?[g,this.ngModelEnd]:[]).filter(p=>!!p);this.srv.setValue(this.srv.makeValue(d)),this.start=d.length>0?d[0]:null,this.end=d.length>0?d[1]:null,this.cd()};const v=h.onChangeFn;h.onChangeFn=g=>{let d=null,p=null;g.length>0&&2===g.filter(f=>null!=f).length&&([d,p]=(0,n.SA)([g[0],g[1]])),this.start=d,this.end=p,v(d),this.ngModelEnd=p,this.ngModelEndChange.emit(p)}}refreshShortcut(){if(!this._shortcut)return;const{enabled:h,list:v}=this._shortcut;let g;if(this.nativeComp&&h){this.shortcutFactory||(this.shortcutFactory=this.vcr.createComponent(i.W));const{instance:d}=this.shortcutFactory;d.list=v,d.click=p=>{const f=p.fn([this.start,this.end]);this.srv.setValue(this.srv.makeValue(f)),this.dp.onChangeFn(f),this.dp.close()},g=d.tpl}else g=void 0;this.nativeComp.datePicker.extraFooter=g,Promise.resolve().then(()=>this.cd())}ngAfterViewInit(){this.overrideNative(),this.refreshShortcut()}destoryShortcut(){null!=this.shortcutFactory&&this.shortcutFactory.destroy()}ngOnDestroy(){this.destoryShortcut()}static#e=this.\u0275fac=function(v){return new(v||z)(e.Y36(l.H7),e.Y36(C.Ri),e.Y36(E.wS,9),e.Y36(e.s_b))};static#t=this.\u0275dir=e.lG2({type:z,selectors:[["nz-range-picker","extend",""]],inputs:{shortcut:"shortcut",ngModelEnd:"ngModelEnd"},outputs:{ngModelEndChange:"ngModelEndChange"},exportAs:["extendRangePicker"]})}return z})()},3933:(nt,I,o)=>{"use strict";o.d(I,{Q:()=>E});var e=o(49671),n=o(65879),t=o(64716),i=o(10217),C=o(980);let E=(()=>{class u{getDisposition(M){return(M||"").split(";").filter(v=>v.includes("=")).map(v=>{const g=v.split("=");let p=g[1];return p.startsWith("UTF-8''")&&(p=p.substring(7)),{[g[0].trim()]:p}}).reduce((v,g)=>g,{})}constructor(M,h){this.el=M,this._http=h,this.isFileSaverSupported=!0,this.httpMethod="get",this.success=new n.vpe,this.error=new n.vpe;let v=!1;try{v=!!new Blob}catch{}this.isFileSaverSupported=v,v||M.nativeElement.classList.add("down-file__not-support")}setDisabled(M){const h=this.el.nativeElement;h.disabled=M,h.classList[M?"add":"remove"]("down-file__disabled")}_click(M){var h=this;return(0,e.Z)(function*(){if(!h.isFileSaverSupported||"function"==typeof h.pre&&!(yield h.pre(M)))return M.stopPropagation(),void M.preventDefault();h.setDisabled(!0),h._http.request(h.httpMethod,h.httpUrl,{params:h.httpData||{},responseType:"blob",observe:"response",body:h.httpBody}).pipe((0,t.x)(()=>h.setDisabled(!1))).subscribe({next:v=>{if(200!==v.status||v.body.size<=0)return void h.error.emit(v);const g=h.getDisposition(v.headers.get("content-disposition"));let d=h.fileName;"function"==typeof d&&(d=d(v)),d=d||g["filename*"]||g.filename||v.headers.get("filename")||v.headers.get("x-filename"),(0,i.saveAs)(v.body,decodeURI(d)),h.success.emit(v)},error:v=>h.error.emit(v)})})()}static#e=this.\u0275fac=function(h){return new(h||u)(n.Y36(n.SBq),n.Y36(C.lP))};static#t=this.\u0275dir=n.lG2({type:u,selectors:[["","down-file",""]],hostBindings:function(h,v){1&h&&n.NdJ("click",function(d){return v._click(d)})},inputs:{httpData:["http-data","httpData"],httpBody:["http-body","httpBody"],httpMethod:["http-method","httpMethod"],httpUrl:["http-url","httpUrl"],fileName:["file-name","fileName"],pre:"pre"},outputs:{success:"success",error:"error"},exportAs:["downFile"]})}return u})()},96103:(nt,I,o)=>{"use strict";o.d(I,{S:()=>Y});var e=o(97582),n=o(96814),t=o(48180),i=o(74648),l=o(65879),C=o(6593),E=o(17131),u=o(96109);const z=["orgEl"],M=["shadowOrgEl"],h=["shadowTextEl"];function v(G,H){1&G&&l.GkF(0)}function g(G,H){if(1&G&&l._UZ(0,"div",10),2&G){const j=l.oxw(3);l.Q6J("innerHTML",j.orgHtml,l.oJD)}}const d=function(){return{"overflow-wrap":"break-word","word-wrap":"break-word"}};function p(G,H){if(1&G&&(l.TgZ(0,"span",7),l.YNc(1,v,1,0,"ng-container",8),l.YNc(2,g,1,1,"ng-template",null,9,l.W1O),l.qZA()),2&G){const j=l.MAs(3),te=l.oxw().$implicit;l.Q6J("nzTooltipTitle",j)("nzTooltipOverlayStyle",l.DdM(3,d)),l.xp6(1),l.Q6J("ngTemplateOutlet",te)}}function f(G,H){if(1&G&&l.YNc(0,p,4,4,"span",6),2&G){const j=H.$implicit,te=l.oxw();l.Q6J("ngIf",te.tooltip)("ngIfElse",j)}}function y(G,H){if(1&G&&l._UZ(0,"span",11),2&G){const j=l.oxw();l.Q6J("ngClass",j.cls)}}function T(G,H){}function x(G,H){if(1&G&&l._uU(0),2&G){const j=l.oxw(2);l.Oqu(j.text)}}const D=function(G){return{$implicit:G}};function _(G,H){if(1&G&&(l.ynx(0),l.YNc(1,T,0,0,"ng-template",12),l.YNc(2,x,1,1,"ng-template",null,13,l.W1O),l.BQk()),2&G){const j=l.MAs(3);l.oxw();const te=l.MAs(4);l.xp6(1),l.Q6J("ngTemplateOutlet",te)("ngTemplateOutletContext",l.VKq(2,D,j))}}function P(G,H){}const O=function(G){return{"-webkit-line-clamp":G,"-webkit-box-orient":"vertical"}};function A(G,H){if(1&G&&l._UZ(0,"div",15),2&G){const j=l.oxw(2);l.Q6J("ngClass",j.cls)("ngStyle",l.VKq(2,O,j.lines))}}function k(G,H){if(1&G&&(l.ynx(0),l.YNc(1,P,0,0,"ng-template",12),l.YNc(2,A,1,4,"ng-template",null,14,l.W1O),l.BQk()),2&G){const j=l.MAs(3);l.oxw();const te=l.MAs(4);l.xp6(1),l.Q6J("ngTemplateOutlet",te)("ngTemplateOutletContext",l.VKq(2,D,j))}}function F(G,H){}function W(G,H){if(1&G&&l._uU(0),2&G){const j=l.oxw(2);l.Oqu(j.linsWord)}}function K(G,H){if(1&G&&(l.TgZ(0,"div",11)(1,"div",16),l.YNc(2,F,0,0,"ng-template",12),l.YNc(3,W,1,1,"ng-template",null,17,l.W1O),l._UZ(5,"div",18,19),l.TgZ(7,"div",20,21)(9,"span"),l._uU(10),l.qZA()()()()),2&G){const j=l.MAs(4),te=l.oxw(),ne=l.MAs(4);l.Q6J("ngClass",te.cls),l.xp6(2),l.Q6J("ngTemplateOutlet",ne)("ngTemplateOutletContext",l.VKq(5,D,j)),l.xp6(3),l.Q6J("innerHTML",te.orgHtml,l.oJD),l.xp6(5),l.Oqu(te.text)}}const _e=["*"];class Y{get linsWord(){const{targetCount:H,text:j,tail:te}=this;return(H>0?j.substring(0,H):"")+(H>0&&H{const ne=te.charCodeAt(0);return ne>=0&&ne<=128?j+1:j+2},0)}cutStrByFullLength(H,j){let te=0;return H.split("").reduce((ne,pe)=>{const re=pe.charCodeAt(0);return te+=re>=0&&re<=128?1:2,te<=j?ne+pe:ne},"")}bisection(H,j,te,ne,pe,re){const be=this.tail;re.innerHTML=pe.substring(0,j)+be;let le=re.offsetHeight;return le<=H?(re.innerHTML=pe.substring(0,j+1)+be,le=re.offsetHeight,le>H||j===te?j:(j=ne-(te=j)==1?te+1:Math.floor((ne-te)/2)+te,this.bisection(H,j,te,ne,pe,re))):j-1<0?j:(re.innerHTML=pe.substring(0,j-1)+be,le=re.offsetHeight,le<=H?j-1:(ne=j,j=Math.floor((ne-te)/2)+te,this.bisection(H,j,te,ne,pe,re)))}genType(){const{lines:H,length:j,isSupportLineClamp:te}=this;this.cls={ellipsis:!0,ellipsis__lines:H&&!te,"ellipsis__line-clamp":H&&te},this.type=H||j?H?te?"line-clamp":"line":"length":"default"}gen(){const{type:H,lines:j,length:te,fullWidthRecognition:ne,tail:pe,orgEl:re,cdr:be,ngZone:le}=this;if("length"===H){const ce=re.nativeElement;if(ce.children.length>0)throw new Error("Ellipsis content must be string.");const Q=ce.textContent;if((ne?this.getStrFullLength(Q):Q.length)<=te||te<0)this.text=Q;else{let ae;ae=te-pe.length<=0?"":ne?this.cutStrByFullLength(Q,te):Q.slice(0,te),this.text=ae+pe}le.run(()=>be.detectChanges())}else if("line"===H){const{shadowOrgEl:ce,shadowTextEl:Q}=this,ie=ce.nativeElement,ae=ie.innerText||ie.textContent,Me=j*parseInt(this.win.getComputedStyle(this.getEl(".ellipsis")).lineHeight,10);if(this.getEl(".ellipsis__handle").style.height=`${Me}px`,ie.offsetHeight<=Me)this.text=ae,this.targetCount=ae.length;else{const Ye=ae.length,q=Math.ceil(Ye/2),ye=this.bisection(Me,q,0,Ye,ae,Q.nativeElement.firstChild);this.text=ae,this.targetCount=ye}le.run(()=>be.detectChanges())}}getEl(H){return this.el.nativeElement.querySelector(H)}executeOnStable(H){this.ngZone.isStable?H():this.ngZone.onStable.asObservable().pipe((0,t.q)(1)).subscribe(H)}refresh(){this.genType();const{type:H,dom:j,orgEl:te,cdr:ne}=this,pe=te.nativeElement.innerHTML;this.orgHtml=j.bypassSecurityTrustHtml(pe),ne.detectChanges(),this.executeOnStable(()=>{if(this.gen(),"line"!==H){const re=this.getEl(".ellipsis");re&&(re.innerHTML=pe)}})}ngAfterViewInit(){this.inited=!0,this.refresh()}ngOnChanges(){this.inited&&this.refresh()}static#e=this.\u0275fac=function(j){return new(j||Y)(l.Y36(l.SBq),l.Y36(l.R0b),l.Y36(C.H7),l.Y36(n.K0),l.Y36(l.sBO))};static#t=this.\u0275cmp=l.Xpm({type:Y,selectors:[["ellipsis"]],viewQuery:function(j,te){if(1&j&&(l.Gf(z,5),l.Gf(M,5),l.Gf(h,5)),2&j){let ne;l.iGM(ne=l.CRH())&&(te.orgEl=ne.first),l.iGM(ne=l.CRH())&&(te.shadowOrgEl=ne.first),l.iGM(ne=l.CRH())&&(te.shadowTextEl=ne.first)}},inputs:{tooltip:"tooltip",length:"length",lines:"lines",fullWidthRecognition:"fullWidthRecognition",tail:"tail"},exportAs:["ellipsis"],features:[l.TTD],ngContentSelectors:_e,decls:10,vars:5,consts:[[2,"display","none",3,"cdkObserveContent"],["orgEl",""],["tooltipTpl",""],[3,"ngSwitch"],[3,"ngClass",4,"ngSwitchCase"],[4,"ngSwitchCase"],["nz-tooltip","",3,"nzTooltipTitle","nzTooltipOverlayStyle",4,"ngIf","ngIfElse"],["nz-tooltip","",3,"nzTooltipTitle","nzTooltipOverlayStyle"],[4,"ngTemplateOutlet"],["titleTpl",""],[3,"innerHTML"],[3,"ngClass"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],["lengthTpl",""],["lineClampTpl",""],[3,"ngClass","ngStyle"],[1,"ellipsis__handle"],["lineTpl",""],[1,"ellipsis__shadow",3,"innerHTML"],["shadowOrgEl",""],[1,"ellipsis__shadow"],["shadowTextEl",""]],template:function(j,te){1&j&&(l.F$t(),l.TgZ(0,"div",0,1),l.NdJ("cdkObserveContent",function(){return te.refresh()}),l.Hsn(2),l.qZA(),l.YNc(3,f,1,2,"ng-template",null,2,l.W1O),l.ynx(5,3),l.YNc(6,y,1,1,"span",4),l.YNc(7,_,4,4,"ng-container",5),l.YNc(8,k,4,4,"ng-container",5),l.YNc(9,K,11,7,"div",4),l.BQk()),2&j&&(l.xp6(5),l.Q6J("ngSwitch",te.type),l.xp6(1),l.Q6J("ngSwitchCase","default"),l.xp6(1),l.Q6J("ngSwitchCase","length"),l.xp6(1),l.Q6J("ngSwitchCase","line-clamp"),l.xp6(1),l.Q6J("ngSwitchCase","line"))},dependencies:[n.mk,n.O5,n.tP,n.PC,n.RF,n.n9,E.wD,u.SY],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,i.yF)()],Y.prototype,"tooltip",void 0),(0,e.gn)([(0,i.Rn)(null)],Y.prototype,"length",void 0),(0,e.gn)([(0,i.Rn)(null)],Y.prototype,"lines",void 0),(0,e.gn)([(0,i.yF)()],Y.prototype,"fullWidthRecognition",void 0)},32113:(nt,I,o)=>{"use strict";o.d(I,{C:()=>h});var e=o(97582),n=o(96814),t=o(65879),i=o(71993),l=o(91687),C=o(74648),E=o(78967),u=o(49388),z=o(62831),M=o(90551);class h{constructor(g,d,p,f,y,T){this.el=g,this.cdr=d,this.doc=p,this.directionality=y,this.platform=T,this.formEl=null,this.destroy$=(0,t.f3M)(t.ktI),this._hiden=!0,this.count=0,this.dir="ltr",f.attach(this,"errorCollect",{freq:500,offsetTop:145})}get errEls(){return this.formEl.querySelectorAll(".ant-form-item-has-error")}update(){const g=this.errEls.length;g!==this.count&&(this.count=g,this._hiden=0===g,this.cdr.markForCheck())}_click(){if(0===this.count)return!1;const g=this.errEls;return(this.findParent(g[0],"[nz-form-control]")||g[0]).scrollIntoView(!0),this.doc.documentElement.scrollTop-=this.offsetTop,!0}install(){this.dir=this.directionality.value,this.directionality.change?.pipe((0,i.sL)(this.destroy$)).subscribe(g=>{this.dir=g,this.cdr.detectChanges()}),(0,l.F)(this.freq).pipe((0,i.sL)(this.destroy$)).subscribe(()=>this.update()),this.update()}findParent(g,d){let p=null;for(;g;){if(g.querySelector(d)){p=g;break}g=g.parentElement}return p}ngOnInit(){if(this.platform.isBrowser){if(this.formEl=this.findParent(this.el.nativeElement,"form"),null===this.formEl)throw new Error("No found form element");this.install()}}static#e=this.\u0275fac=function(d){return new(d||h)(t.Y36(t.SBq),t.Y36(t.sBO),t.Y36(n.K0),t.Y36(E.Ri),t.Y36(u.Is,8),t.Y36(z.t4))};static#t=this.\u0275cmp=t.Xpm({type:h,selectors:[["error-collect"],["","error-collect",""]],hostVars:6,hostBindings:function(d,p){1&d&&t.NdJ("click",function(){return p._click()}),2&d&&t.ekj("error-collect",!0)("error-collect-rtl","rtl"===p.dir)("d-none",p._hiden)},inputs:{freq:"freq",offsetTop:"offsetTop"},exportAs:["errorCollect"],decls:3,vars:1,consts:[["nz-icon","","nzType","exclamation-circle"],[1,"error-collect__count"]],template:function(d,p){1&d&&(t._UZ(0,"i",0),t.TgZ(1,"span",1),t._uU(2),t.qZA()),2&d&&(t.xp6(2),t.Oqu(p.count))},dependencies:[M.Ls],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,C.Rn)()],h.prototype,"freq",void 0),(0,e.gn)([(0,C.Rn)()],h.prototype,"offsetTop",void 0)},9405:(nt,I,o)=>{"use strict";o.d(I,{S:()=>y});var e=o(65879),n=o(71993),t=o(20325),i=o(980),l=o(6593),C=o(78967),E=o(49388),u=o(96814),z=o(17131),M=o(52787),h=o(42840),v=o(70855),g=o(41958);const d=["conTpl"];function p(T,x){if(1&T&&(e.TgZ(0,"button",9),e._uU(1),e.qZA()),2&T){const D=e.oxw();e.Q6J("routerLink",D.backRouterLink)("nzType","primary"),e.xp6(1),e.hij(" ",D.locale.backToHome," ")}}const f=["*"];let y=(()=>{class T{set type(D){const _=this.typeDict[D];_&&(this.fixImg(_.img),this._type=D,this._title=_.title,this._desc="")}fixImg(D){this._img=this.dom.bypassSecurityTrustStyle(`url('${D}')`)}set img(D){this.fixImg(D)}set title(D){this._title=this.dom.bypassSecurityTrustHtml(D)}set desc(D){this._desc=this.dom.bypassSecurityTrustHtml(D)}checkContent(){this.hasCon=!(0,t.x)(this.conTpl.nativeElement),this.cdr.detectChanges()}constructor(D,_,P,O,A){this.i18n=D,this.dom=_,this.directionality=O,this.cdr=A,this.destroy$=(0,e.f3M)(e.ktI),this.locale={},this.hasCon=!1,this.dir="ltr",this._img="",this._title="",this._desc="",this.backRouterLink="/",P.attach(this,"exception",{typeDict:{403:{img:"https://gw.alipayobjects.com/zos/rmsportal/wZcnGqRDyhPOEYFcZDnb.svg",title:"403"},404:{img:"https://gw.alipayobjects.com/zos/rmsportal/KpnpchXsobRgLElEozzI.svg",title:"404"},500:{img:"https://gw.alipayobjects.com/zos/rmsportal/RVRUAYdCGeYNBWoKiIwB.svg",title:"500"}}})}ngOnInit(){this.dir=this.directionality.value,this.directionality.change?.pipe((0,n.sL)(this.destroy$)).subscribe(D=>{this.dir=D,this.cdr.detectChanges()}),this.i18n.change.pipe((0,n.sL)(this.destroy$)).subscribe(()=>{this.locale=this.i18n.getData("exception"),this.cdr.detectChanges()}),this.checkContent()}static#e=this.\u0275fac=function(_){return new(_||T)(e.Y36(i.s7),e.Y36(l.H7),e.Y36(C.Ri),e.Y36(E.Is,8),e.Y36(e.sBO))};static#t=this.\u0275cmp=e.Xpm({type:T,selectors:[["exception"]],viewQuery:function(_,P){if(1&_&&e.Gf(d,7),2&_){let O;e.iGM(O=e.CRH())&&(P.conTpl=O.first)}},hostVars:4,hostBindings:function(_,P){2&_&&e.ekj("exception",!0)("exception-rtl","rtl"===P.dir)},inputs:{type:"type",img:"img",title:"title",desc:"desc",backRouterLink:"backRouterLink"},exportAs:["exception"],ngContentSelectors:f,decls:10,vars:5,consts:[[1,"exception__img-block"],[1,"exception__img"],[1,"exception__cont"],[1,"exception__cont-title",3,"innerHTML"],[1,"exception__cont-desc",3,"innerHTML"],[1,"exception__cont-actions"],[3,"cdkObserveContent"],["conTpl",""],["nz-button","",3,"routerLink","nzType",4,"ngIf"],["nz-button","",3,"routerLink","nzType"]],template:function(_,P){1&_&&(e.F$t(),e.TgZ(0,"div",0),e._UZ(1,"div",1),e.qZA(),e.TgZ(2,"div",2),e._UZ(3,"h1",3)(4,"div",4),e.TgZ(5,"div",5)(6,"div",6,7),e.NdJ("cdkObserveContent",function(){return P.checkContent()}),e.Hsn(8),e.qZA(),e.YNc(9,p,2,3,"button",8),e.qZA()()),2&_&&(e.xp6(1),e.Udp("background-image",P._img),e.xp6(2),e.Q6J("innerHTML",P._title,e.oJD),e.xp6(1),e.Q6J("innerHTML",P._desc||P.locale[P._type],e.oJD),e.xp6(5),e.Q6J("ngIf",!P.hasCon))},dependencies:[u.O5,z.wD,M.rH,h.ix,v.w,g.dQ],encapsulation:2,changeDetection:0})}return T})()},68842:(nt,I,o)=>{"use strict";o.d(I,{y:()=>h});var e=o(97582),n=o(96814),t=o(74648),i=o(65879),l=o(32113),C=o(8324);function E(v,g){if(1&v&&(i.ynx(0),i._uU(1),i.BQk()),2&v){const d=i.oxw();i.xp6(1),i.Oqu(d.extra)}}function u(v,g){1&v&&i._UZ(0,"error-collect")}const z=["*"],M="footer-toolbar__body";class h{constructor(g,d,p){this.el=g,this.renderer=d,this.doc=p,this.errorCollect=!1}get bodyCls(){return this.doc.querySelector("body").classList}ngOnInit(){this.renderer.addClass(this.el.nativeElement,"footer-toolbar"),this.bodyCls.add(M)}ngOnDestroy(){this.bodyCls.remove(M)}static#e=this.\u0275fac=function(d){return new(d||h)(i.Y36(i.SBq),i.Y36(i.Qsj),i.Y36(n.K0))};static#t=this.\u0275cmp=i.Xpm({type:h,selectors:[["footer-toolbar"]],inputs:{errorCollect:"errorCollect",extra:"extra"},exportAs:["footerToolbar"],ngContentSelectors:z,decls:5,vars:2,consts:[[1,"footer-toolbar__left"],[4,"nzStringTemplateOutlet"],[1,"footer-toolbar__right"],[4,"ngIf"]],template:function(d,p){1&d&&(i.F$t(),i.TgZ(0,"div",0),i.YNc(1,E,2,1,"ng-container",1),i.qZA(),i.TgZ(2,"div",2),i.YNc(3,u,1,0,"error-collect",3),i.Hsn(4),i.qZA()),2&d&&(i.xp6(1),i.Q6J("nzStringTemplateOutlet",p.extra),i.xp6(2),i.Q6J("ngIf",p.errorCollect))},dependencies:[n.O5,l.C,C.f],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,t.yF)()],h.prototype,"errorCollect",void 0)},79657:(nt,I,o)=>{"use strict";o.d(I,{D:()=>E});var e=o(97582),n=o(74648),t=o(65879);const i=["host"];function l(u,z){1&u&&t.Hsn(0)}const C=["*"];class E{static#e=this.\u0275fac=function(M){return new(M||E)};static#t=this.\u0275cmp=t.Xpm({type:E,selectors:[["global-footer-item"]],viewQuery:function(M,h){if(1&M&&t.Gf(i,7),2&M){let v;t.iGM(v=t.CRH())&&(h.host=v.first)}},inputs:{href:"href",blankTarget:"blankTarget"},exportAs:["globalFooterItem"],ngContentSelectors:C,decls:2,vars:0,consts:[["host",""]],template:function(M,h){1&M&&(t.F$t(),t.YNc(0,l,1,0,"ng-template",null,0,t.W1O))},encapsulation:2,changeDetection:0})}(0,e.gn)([(0,n.yF)()],E.prototype,"blankTarget",void 0)},73370:(nt,I,o)=>{"use strict";o.d(I,{j:()=>d});var e=o(71993),n=o(8471),t=o(79657),i=o(65879),l=o(52787),C=o(6593),E=o(49388),u=o(96814);function z(p,f){if(1&p){const y=i.EpF();i.TgZ(0,"a",5),i.NdJ("click",function(){const D=i.CHM(y).$implicit,_=i.oxw(2);return i.KtG(_.to(D))}),i.qZA()}2&p&&i.Q6J("innerHTML",f.$implicit._title,i.oJD)}function M(p,f){1&p&&i.GkF(0)}function h(p,f){if(1&p){const y=i.EpF();i.TgZ(0,"a",6),i.NdJ("click",function(){const D=i.CHM(y).$implicit,_=i.oxw(2);return i.KtG(_.to(D))}),i.YNc(1,M,1,0,"ng-container",7),i.qZA()}if(2&p){const y=f.$implicit;i.xp6(1),i.Q6J("ngTemplateOutlet",y.host)}}function v(p,f){if(1&p&&(i.TgZ(0,"div",2),i.YNc(1,z,1,1,"a",3),i.YNc(2,h,2,1,"a",4),i.qZA()),2&p){const y=i.oxw();i.xp6(1),i.Q6J("ngForOf",y.links),i.xp6(1),i.Q6J("ngForOf",y.items)}}const g=["*"];let d=(()=>{class p{set links(y){y.forEach(T=>T._title=this.dom.bypassSecurityTrustHtml(T.title)),this._links=y}get links(){return this._links}constructor(y,T,x,D,_){this.router=y,this.win=T,this.dom=x,this.directionality=D,this.cdr=_,this.dir$=this.directionality.change?.pipe((0,e.sL)()),this._links=[],this.dir="ltr"}to(y){if(y.href){if(y.blankTarget)return void this.win.open(y.href);/^https?:\/\//.test(y.href)?this.win.location.href=y.href:this.router.navigateByUrl(y.href)}}ngOnInit(){this.dir=this.directionality.value,this.dir$.subscribe(y=>{this.dir=y,this.cdr.detectChanges()})}static#e=this.\u0275fac=function(T){return new(T||p)(i.Y36(l.F0),i.Y36(n.m),i.Y36(C.H7),i.Y36(E.Is,8),i.Y36(i.sBO))};static#t=this.\u0275cmp=i.Xpm({type:p,selectors:[["global-footer"]],contentQueries:function(T,x,D){if(1&T&&i.Suo(D,t.D,4),2&T){let _;i.iGM(_=i.CRH())&&(x.items=_)}},hostVars:4,hostBindings:function(T,x){2&T&&i.ekj("global-footer",!0)("global-footer-rtl","rtl"===x.dir)},inputs:{links:"links"},exportAs:["globalFooter"],ngContentSelectors:g,decls:3,vars:1,consts:[["class","global-footer__links",4,"ngIf"],[1,"global-footer__copyright"],[1,"global-footer__links"],["class","global-footer__links-item",3,"innerHTML","click",4,"ngFor","ngForOf"],["class","global-footer__links-item",3,"click",4,"ngFor","ngForOf"],[1,"global-footer__links-item",3,"innerHTML","click"],[1,"global-footer__links-item",3,"click"],[4,"ngTemplateOutlet"]],template:function(T,x){1&T&&(i.F$t(),i.YNc(0,v,3,2,"div",0),i.TgZ(1,"div",1),i.Hsn(2),i.qZA()),2&T&&i.Q6J("ngIf",x.links.length>0||x.items.length>0)},dependencies:[u.sg,u.O5,u.tP],encapsulation:2,changeDetection:0})}return p})()},31371:(nt,I,o)=>{"use strict";o.d(I,{k:()=>F});class e{constructor(K){this.children=[],this.parent=K}delete(K){const _e=this.children.indexOf(K);return-1!==_e&&(this.children=this.children.slice(0,_e).concat(this.children.slice(_e+1)),0===this.children.length&&this.parent.delete(this),!0)}add(K){return this.children.push(K),this}}class n{constructor(K){this.parent=null,this.children={},this.parent=K||null}get(K){return this.children[K]}insert(K){let _e=this;for(let Y=0;Y","\xbf":"?"};function i(W,K=navigator.platform){var _e;const{ctrlKey:Y,altKey:G,metaKey:H,key:j}=W,te=[],ne=[Y,G,H,C(W)];for(const[pe,re]of ne.entries())re&&te.push(l[pe]);if(!l.includes(j)){const pe=u.test(K)&&null!==(_e=t[j])&&void 0!==_e?_e:j;te.push(pe)}return te.join("+")}const l=["Control","Alt","Meta","Shift"];function C(W){const{shiftKey:K,code:_e,key:Y}=W;return K&&!(_e.startsWith("Key")&&Y.toUpperCase()===Y)}const u=/Mac|iPod|iPhone|iPad/i;let v=(()=>{class W{constructor({onReset:_e}={}){this._path=[],this.timer=null,this.onReset=_e}get path(){return this._path}get sequence(){return this._path.join(" ")}registerKeypress(_e){this._path=[...this._path,i(_e)],this.startTimer()}reset(){var _e;this.killTimer(),this._path=[],null===(_e=this.onReset)||void 0===_e||_e.call(this)}killTimer(){null!=this.timer&&window.clearTimeout(this.timer),this.timer=null}startTimer(){this.killTimer(),this.timer=window.setTimeout(()=>this.reset(),W.CHORD_TIMEOUT)}}return W.CHORD_TIMEOUT=1500,W})();function d(W){if(!(W instanceof HTMLElement))return!1;const K=W.nodeName.toLowerCase(),_e=(W.getAttribute("type")||"").toLowerCase();return"select"===K||"textarea"===K||"input"===K&&"submit"!==_e&&"reset"!==_e&&"checkbox"!==_e&&"radio"!==_e&&"file"!==_e||W.isContentEditable}const y=new n,T=new WeakMap;let x=y;const D=new v({onReset(){x=y}});function _(W){if(W.defaultPrevented||!(W.target instanceof Node))return;if(d(W.target)){const _e=W.target;if(!_e.id||!_e.ownerDocument.querySelector(`[data-hotkey-scope="${_e.id}"]`))return}const K=x.get(i(W));if(K){if(D.registerKeypress(W),x=K,K instanceof e){const _e=W.target;let G,Y=!1;const H=d(_e);for(let j=K.children.length-1;j>=0;j-=1){G=K.children[j];const te=G.getAttribute("data-hotkey-scope");if(!H&&!te||H&&_e.id===te){Y=!0;break}}G&&Y&&(function p(W,K){const _e=new CustomEvent("hotkey-fire",{cancelable:!0,detail:{path:K}});W.dispatchEvent(_e)&&(d(W)?W.focus():W.click())}(G,D.path),W.preventDefault()),D.reset()}}else D.reset()}function P(W,K){0===Object.keys(y.children).length&&document.addEventListener("keydown",_);const Y=function f(W){const K=[];let _e=[""],Y=!1;for(let G=0;GG.map(H=>function E(W,K){let _e;return _e=function z(W,K=navigator.platform){const _e=u.test(K)?"Meta":"Control";return W.replace("Mod",_e)}(W,K),_e=function M(W){const K=W.split("+").pop(),_e=[];for(const Y of["Control","Alt","Meta","Shift"])W.includes(Y)&&_e.push(Y);return _e.push(K),_e.join("+")}(_e),_e}(H)).filter(H=>""!==H)).filter(G=>G.length>0)}(K||W.getAttribute("data-hotkey")||"").map(G=>y.insert(G).add(W));T.set(W,Y)}var A=o(65879),k=o(62831);let F=(()=>{class W{set hotkey(_e){this.platform.isBrowser&&this.ngZone.runOutsideAngular(()=>P(this.el.nativeElement,_e))}constructor(_e,Y,G){this.el=_e,this.ngZone=Y,this.platform=G}ngOnDestroy(){this.platform.isBrowser&&this.ngZone.runOutsideAngular(()=>function O(W){const K=T.get(W);if(K&&K.length)for(const _e of K)_e&&_e.delete(W);0===Object.keys(y.children).length&&document.removeEventListener("keydown",_)}(this.el.nativeElement))}static#e=this.\u0275fac=function(Y){return new(Y||W)(A.Y36(A.SBq),A.Y36(A.R0b),A.Y36(k.t4))};static#t=this.\u0275dir=A.lG2({type:W,selectors:[["","hotkey",""]],inputs:{hotkey:"hotkey"}})}return W})()},31747:(nt,I,o)=>{"use strict";o.d(I,{_N:()=>i}),o(63431);var n=o(65879);let i=(()=>{class l{static#e=this.\u0275fac=function(u){return new(u||l)};static#t=this.\u0275mod=n.oAB({type:l});static#n=this.\u0275inj=n.cJS({})}return l})()},63431:(nt,I,o)=>{"use strict";o.d(I,{e:()=>t});var e=o(65879);class n{constructor(l){this.dir=l}get $implicit(){return this.dir.let}get let(){return this.dir.let}}let t=(()=>{class i{constructor(C,E){C.createEmbeddedView(E,new n(this))}static ngTemplateContextGuard(C,E){return!0}static#e=this.\u0275fac=function(E){return new(E||i)(e.Y36(e.s_b),e.Y36(e.Rgc))};static#t=this.\u0275dir=e.lG2({type:i,selectors:[["","let",""]],inputs:{let:"let"}})}return i})()},68929:(nt,I,o)=>{"use strict";o.d(I,{Il:()=>D,bz:()=>T});var e=o(68484),n=o(78645),t=o(76111),i=o(74825),l=o(65879),C=o(96814),E=o(90551),u=o(77273);function z(_,P){1&_&&l._UZ(0,"nz-spin",7)}function M(_,P){if(1&_&&l._UZ(0,"i",8),2&_){const O=l.oxw(2);l.Q6J("nzType",O.icon.type)("nzTheme",O.icon.theme)("nzSpin",O.icon.spin)}}function h(_,P){if(1&_&&l._UZ(0,"div",9),2&_){const O=l.oxw(2);l.Q6J("ngStyle",O.custom.style)("innerHTML",O.custom.html,l.oJD)}}function v(_,P){if(1&_&&(l.TgZ(0,"div",2),l.ynx(1,3),l.YNc(2,z,1,0,"nz-spin",4),l.YNc(3,M,1,3,"i",5),l.YNc(4,h,1,2,"div",6),l.BQk(),l.qZA()),2&_){const O=l.oxw();l.xp6(1),l.Q6J("ngSwitch",O.options.type),l.xp6(1),l.Q6J("ngSwitchCase","spin"),l.xp6(1),l.Q6J("ngSwitchCase","icon")}}function g(_,P){if(1&_&&(l.TgZ(0,"div",10),l._uU(1),l.qZA()),2&_){const O=l.oxw();l.xp6(1),l.Oqu(O.options.text)}}let d=(()=>{class _{constructor(){this.dir="ltr"}get icon(){return this.options.icon}get custom(){return this.options.custom}static#e=this.\u0275fac=function(A){return new(A||_)};static#t=this.\u0275cmp=l.Xpm({type:_,selectors:[["loading-default"]],hostVars:4,hostBindings:function(A,k){2&A&&l.ekj("loading-default",!0)("loading-default-rtl","rtl"===k.dir)},decls:2,vars:2,consts:[["class","loading-default__icon",4,"ngIf"],["class","loading-default__text",4,"ngIf"],[1,"loading-default__icon"],[3,"ngSwitch"],["nzSimple","",4,"ngSwitchCase"],["nz-icon","",3,"nzType","nzTheme","nzSpin",4,"ngSwitchCase"],["class","loading-default__custom",3,"ngStyle","innerHTML",4,"ngSwitchDefault"],["nzSimple",""],["nz-icon","",3,"nzType","nzTheme","nzSpin"],[1,"loading-default__custom",3,"ngStyle","innerHTML"],[1,"loading-default__text"]],template:function(A,k){1&A&&(l.YNc(0,v,5,3,"div",0),l.YNc(1,g,2,1,"div",1)),2&A&&(l.Q6J("ngIf","text"!==k.options.type),l.xp6(1),l.Q6J("ngIf",k.options.text))},dependencies:[C.O5,C.PC,C.RF,C.n9,C.ED,E.Ls,u.W],encapsulation:2,changeDetection:0})}return _})();var p=o(33651),f=o(78967),y=o(49388);let T=(()=>{class _{get instance(){return null!=this.compRef?this.compRef.instance:null}constructor(O,A,k){this.overlay=O,this.configSrv=A,this.directionality=k,this.compRef=null,this.opt=null,this.n$=new n.x,this.cog=A.merge("loading",{type:"spin",text:"\u52a0\u8f7d\u4e2d...",icon:{type:"loading",theme:"outline",spin:!0},delay:0}),this.loading$=this.n$.asObservable().pipe((0,t.D)(()=>(0,i.H)(this.opt.delay))).subscribe(()=>this.create())}create(){if(null==this.opt)return;this._close(!1),this._overlayRef=this.overlay.create({positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.block(),hasBackdrop:!0,backdropClass:"loading-backdrop"}),this.compRef=this._overlayRef.attach(new e.C5(d));const O=this.configSrv.get("loading").direction||this.directionality.value;null!=this.instance&&(this.instance.options=this.opt,this.instance.dir=O),this.compRef.changeDetectorRef.markForCheck()}open(O){this.opt={...this.cog,...O},this.n$.next()}_close(O){O&&(this.opt=null),this._overlayRef&&(this._overlayRef.detach(),this.compRef=null)}close(){this._close(!0)}ngOnDestroy(){this.loading$.unsubscribe()}static#e=this.\u0275fac=function(A){return new(A||_)(l.LFG(p.aV),l.LFG(f.Ri),l.LFG(y.Is,8))};static#t=this.\u0275prov=l.Yz7({token:_,factory:_.\u0275fac,providedIn:"root"})}return _})(),D=(()=>{class _{static#e=this.\u0275fac=function(A){return new(A||_)};static#t=this.\u0275mod=l.oAB({type:_});static#n=this.\u0275inj=l.cJS({imports:[C.ez,p.U8,e.eL,E.PV,u.j]})}return _})()},96173:(nt,I,o)=>{"use strict";o.d(I,{R:()=>M});var e=o(97582),n=o(65879),t=o(71993),i=o(74825),l=o(48180),C=o(74648),E=o(6821),u=o(62831);const z=["*"];class M{get player(){return this._p}constructor(v,g,d,p,f){this.el=v,this.renderer=g,this.srv=d,this.ngZone=p,this.platform=f,this.destroy$=(0,n.f3M)(n.ktI),this.type="video",this.delay=0,this.ready=new n.vpe}initDelay(){(0,i.H)(this.delay).pipe((0,t.sL)(this.destroy$)).subscribe(()=>this.ngZone.runOutsideAngular(()=>this.init()))}init(){const v=window.Plyr;if(!v)throw new Error(`No window.Plyr found, please make sure that cdn or local path exists, the current referenced path is: ${JSON.stringify(this.srv.cog.urls)}`);this.ensureElement();const g=this._p=new v(this.videoEl,{...this.srv.cog.options});g.on("ready",()=>this.ngZone.run(()=>this.ready.next(g))),this.uploadSource()}ensureElement(){const{type:v}=this;let g=this.el.nativeElement.querySelector(v);g||(g=this.renderer.createElement(v),g.controls=!0,this.el.nativeElement.appendChild(g)),this.videoEl=g}destroy(){this._p&&this._p.destroy()}uploadSource(){if(null==this._p)return;const{source:v,type:g}=this;this._p.source="string"==typeof v?{type:g,sources:[{src:v}]}:v}ngAfterViewInit(){this.platform.isBrowser&&(this.srv.notify().pipe((0,t.sL)(this.destroy$),(0,l.q)(1)).subscribe(()=>this.initDelay()),this.srv.load())}ngOnChanges(v){this.srv.cog={options:this.options},v.source&&this.uploadSource()}ngOnDestroy(){this.destroy(),this._p=null}static#e=this.\u0275fac=function(g){return new(g||M)(n.Y36(n.SBq),n.Y36(n.Qsj),n.Y36(E.y),n.Y36(n.R0b),n.Y36(u.t4))};static#t=this.\u0275cmp=n.Xpm({type:M,selectors:[["media"]],hostVars:2,hostBindings:function(g,d){2&g&&n.Udp("display","block")},inputs:{type:"type",source:"source",options:"options",delay:"delay"},outputs:{ready:"ready"},exportAs:["mediaComponent"],features:[n.TTD],ngContentSelectors:z,decls:1,vars:0,template:function(g,d){1&g&&(n.F$t(),n.Hsn(0))},encapsulation:2,changeDetection:0})}(0,e.gn)([(0,C.Rn)()],M.prototype,"delay",void 0),(0,e.gn)([(0,C.EA)()],M.prototype,"initDelay",null)},6821:(nt,I,o)=>{"use strict";o.d(I,{y:()=>C});var e=o(78645),n=o(63020),t=o(65879),i=o(78967),l=o(64115);let C=(()=>{class E{get cog(){return this._cog}set cog(z){this._cog=this.cogSrv.merge("media",{urls:["https://cdn.jsdelivr.net/npm/plyr/dist/plyr.min.js","https://cdn.jsdelivr.net/npm/plyr/dist/plyr.css"]},z)}constructor(z,M){this.cogSrv=z,this.lazySrv=M,this.loading=!1,this.loaded=!1,this.notify$=new e.x}load(){return this.loading?(this.loaded&&this.notify$.next(),this):(this.loading=!0,this.lazySrv.load(this.cog.urls).then(()=>{this.loaded=!0,this.notify$.next()}),this)}notify(){return this.notify$.asObservable().pipe((0,n.B)())}static#e=this.\u0275fac=function(M){return new(M||E)(t.LFG(i.Ri),t.LFG(l.Df))};static#t=this.\u0275prov=t.Yz7({token:E,factory:E.\u0275fac,providedIn:"root"})}return E})()},98092:(nt,I,o)=>{"use strict";o.d(I,{i:()=>pe});var e=o(97582),n=o(65879),t=o(74648),i=o(980),l=o(96814),C=o(33640),E=o(62787),u=o(90551),z=o(77273),M=o(79382),h=o(16976),v=o(55695),g=o(8324);function d(re,be){if(1&re&&n._UZ(0,"img",5),2&re){const le=n.oxw(2);n.uIk("src",le.data.emptyImage,n.LSH)}}function p(re,be){if(1&re&&(n.ynx(0),n._uU(1),n.BQk()),2&re){const le=n.oxw(2);n.xp6(1),n.hij(" ",le.data.emptyText||le.locale.emptyText," ")}}function f(re,be){if(1&re&&(n.TgZ(0,"div",2),n.YNc(1,d,1,1,"img",3),n.TgZ(2,"p"),n.YNc(3,p,2,1,"ng-container",4),n.qZA()()),2&re){const le=n.oxw();n.xp6(1),n.Q6J("ngIf",le.data.emptyImage),n.xp6(2),n.Q6J("nzStringTemplateOutlet",le.data.emptyText)}}function y(re,be){if(1&re&&(n.ynx(0),n._uU(1),n.BQk()),2&re){const le=n.oxw(2).$implicit;n.xp6(1),n.hij(" ",le.title," ")}}function T(re,be){if(1&re&&(n.TgZ(0,"div",15)(1,"nz-tag",16),n._uU(2),n.qZA()()),2&re){const le=n.oxw(2).$implicit;n.xp6(1),n.Q6J("nzColor",le.color),n.xp6(1),n.Oqu(le.extra)}}const x=function(re){return{$implicit:re}};function D(re,be){if(1&re&&(n.YNc(0,y,2,1,"ng-container",13),n.YNc(1,T,3,2,"div",14)),2&re){const le=n.oxw().$implicit;n.Q6J("nzStringTemplateOutlet",le.title)("nzStringTemplateOutletContext",n.VKq(3,x,le)),n.xp6(1),n.Q6J("ngIf",le.extra)}}function _(re,be){if(1&re&&(n.ynx(0),n._uU(1),n.BQk()),2&re){const le=n.oxw(3).$implicit;n.xp6(1),n.hij(" ",le.description," ")}}function P(re,be){if(1&re&&(n.TgZ(0,"div",19),n.YNc(1,_,2,1,"ng-container",13),n.qZA()),2&re){const le=n.oxw(2).$implicit;n.xp6(1),n.Q6J("nzStringTemplateOutlet",le.description)("nzStringTemplateOutletContext",n.VKq(2,x,le))}}function O(re,be){if(1&re&&(n.TgZ(0,"div",20),n._uU(1),n.qZA()),2&re){const le=n.oxw(2).$implicit;n.xp6(1),n.Oqu(le.datetime)}}function A(re,be){if(1&re&&(n.YNc(0,P,2,4,"div",17),n.YNc(1,O,2,1,"div",18)),2&re){const le=n.oxw().$implicit;n.Q6J("ngIf",le.description),n.xp6(1),n.Q6J("ngIf",le.datetime)}}const k=function(re){return{"notice-icon__item-read":re}};function F(re,be){if(1&re){const le=n.EpF();n.TgZ(0,"nz-list-item",9),n.NdJ("click",function(){const ie=n.CHM(le).$implicit,ae=n.oxw(2);return n.KtG(ae.onClick(ie))}),n.TgZ(1,"nz-list-item-meta",10),n.YNc(2,D,2,5,"ng-template",null,11,n.W1O),n.YNc(4,A,2,2,"ng-template",null,12,n.W1O),n.qZA()()}if(2&re){const le=be.$implicit,ce=n.MAs(3),Q=n.MAs(5);n.Q6J("ngClass",n.VKq(4,k,le.read)),n.xp6(1),n.Q6J("nzTitle",ce)("nzDescription",Q)("nzAvatar",le.avatar)}}function W(re,be){if(1&re){const le=n.EpF();n.TgZ(0,"nz-list",6),n.YNc(1,F,6,6,"ng-template",null,7,n.W1O),n.qZA(),n.TgZ(3,"div",8),n.NdJ("click",function(){n.CHM(le);const Q=n.oxw();return n.KtG(Q.onClear())}),n._uU(4),n.qZA()}if(2&re){const le=n.MAs(2),ce=n.oxw();n.Q6J("nzDataSource",ce.data.list)("nzRenderItem",le),n.xp6(4),n.Oqu(ce.data.clearText||ce.locale.clearText)}}let K=(()=>{class re{constructor(){this.locale={},this.select=new n.vpe,this.clear=new n.vpe}onClick(le){this.select.emit({title:this.data.title,item:le})}onClear(){this.clear.emit(this.data.title)}static#e=this.\u0275fac=function(ce){return new(ce||re)};static#t=this.\u0275cmp=n.Xpm({type:re,selectors:[["notice-icon-tab"]],inputs:{locale:"locale",data:"data"},outputs:{select:"select",clear:"clear"},exportAs:["noticeIconTab"],decls:3,vars:2,consts:[["class","notice-icon__notfound",4,"ngIf","ngIfElse"],["listTpl",""],[1,"notice-icon__notfound"],["class","notice-icon__notfound-img","alt","not found",4,"ngIf"],[4,"nzStringTemplateOutlet"],["alt","not found",1,"notice-icon__notfound-img"],[3,"nzDataSource","nzRenderItem"],["item",""],[1,"notice-icon__clear",3,"click"],[3,"ngClass","click"],[3,"nzTitle","nzDescription","nzAvatar"],["nzTitle",""],["nzDescription",""],[4,"nzStringTemplateOutlet","nzStringTemplateOutletContext"],["class","notice-icon__item-extra",4,"ngIf"],[1,"notice-icon__item-extra"],[3,"nzColor"],["class","notice-icon__item-desc",4,"ngIf"],["class","notice-icon__item-time",4,"ngIf"],[1,"notice-icon__item-desc"],[1,"notice-icon__item-time"]],template:function(ce,Q){if(1&ce&&(n.YNc(0,f,4,2,"div",0),n.YNc(1,W,5,3,"ng-template",null,1,n.W1O)),2&ce){const ie=n.MAs(2);n.Q6J("ngIf",0===(null==Q.data.list?null:Q.data.list.length))("ngIfElse",ie)}},dependencies:[l.mk,l.O5,h.n_,h.AA,h.yi,v.j,g.f],encapsulation:2})}return re})();const _e=function(){return{"box-shadow":"none"}};function Y(re,be){if(1&re&&(n.TgZ(0,"nz-badge",7),n._UZ(1,"i",8),n.qZA()),2&re){const le=n.oxw();n.Q6J("nzCount",le.count)("ngClass",le.btnClass)("nzStyle",n.DdM(4,_e)),n.xp6(1),n.Q6J("ngClass",le.btnIconClass)}}function G(re,be){}function H(re,be){if(1&re&&(n.TgZ(0,"div"),n.YNc(1,G,0,0,"ng-template",9),n.qZA()),2&re){n.oxw();const le=n.MAs(1);n.xp6(1),n.Q6J("ngTemplateOutlet",le)}}function j(re,be){}function te(re,be){if(1&re){const le=n.EpF();n.TgZ(0,"div",10),n.NdJ("nzVisibleChange",function(Q){n.CHM(le);const ie=n.oxw();return n.KtG(ie.onVisibleChange(Q))}),n.YNc(1,j,0,0,"ng-template",9),n.qZA()}if(2&re){const le=n.oxw(),ce=n.MAs(5),Q=n.MAs(1);n.Q6J("nzVisible",le.popoverVisible)("nzOverlayClassName",le.overlayCls)("nzDropdownMenu",ce),n.xp6(1),n.Q6J("ngTemplateOutlet",Q)}}function ne(re,be){if(1&re){const le=n.EpF();n.TgZ(0,"nz-tab",11)(1,"notice-icon-tab",12),n.NdJ("select",function(Q){n.CHM(le);const ie=n.oxw();return n.KtG(ie.onSelect(Q))})("clear",function(Q){n.CHM(le);const ie=n.oxw();return n.KtG(ie.onClear(Q))}),n.qZA()()}if(2&re){const le=be.$implicit,ce=n.oxw();n.Q6J("nzTitle",le.title),n.xp6(1),n.Q6J("locale",ce.locale)("data",le)}}class pe{get overlayCls(){return"header-dropdown notice-icon"+(this.centered?"":" notice-icon__tab-left")}constructor(be,le){this.i18n=be,this.cdr=le,this.locale={},this.data=[],this.loading=!1,this.popoverVisible=!1,this.centered=!1,this.select=new n.vpe,this.clear=new n.vpe,this.popoverVisibleChange=new n.vpe}onVisibleChange(be){this.popoverVisibleChange.emit(be)}onSelect(be){this.select.emit(be)}onClear(be){this.clear.emit(be)}ngOnInit(){this.i18n$=this.i18n.change.subscribe(()=>{this.locale=this.i18n.getData("noticeIcon"),this.cdr.markForCheck()})}ngOnChanges(){this.cdr.markForCheck()}ngOnDestroy(){this.i18n$.unsubscribe()}static#e=this.\u0275fac=function(le){return new(le||pe)(n.Y36(i.s7),n.Y36(n.sBO))};static#t=this.\u0275cmp=n.Xpm({type:pe,selectors:[["notice-icon"]],hostVars:2,hostBindings:function(le,ce){2&le&&n.ekj("notice-icon__btn",!0)},inputs:{data:"data",count:"count",loading:"loading",popoverVisible:"popoverVisible",btnClass:"btnClass",btnIconClass:"btnIconClass",centered:"centered"},outputs:{select:"select",clear:"clear",popoverVisibleChange:"popoverVisibleChange"},exportAs:["noticeIcon"],features:[n.TTD],decls:9,vars:6,consts:[["badgeTpl",""],[4,"ngIf"],["nz-dropdown","","nzTrigger","click","nzPlacement","bottomRight",3,"nzVisible","nzOverlayClassName","nzDropdownMenu","nzVisibleChange",4,"ngIf"],["noticeMenu","nzDropdownMenu"],[3,"nzSpinning","nzDelay"],["nzSelectedIndex","0",3,"nzCentered"],[3,"nzTitle",4,"ngFor","ngForOf"],[3,"nzCount","ngClass","nzStyle"],["nz-icon","","nzType","bell",3,"ngClass"],[3,"ngTemplateOutlet"],["nz-dropdown","","nzTrigger","click","nzPlacement","bottomRight",3,"nzVisible","nzOverlayClassName","nzDropdownMenu","nzVisibleChange"],[3,"nzTitle"],[3,"locale","data","select","clear"]],template:function(le,ce){1&le&&(n.YNc(0,Y,2,5,"ng-template",null,0,n.W1O),n.YNc(2,H,2,1,"div",1),n.YNc(3,te,2,4,"div",2),n.TgZ(4,"nz-dropdown-menu",null,3)(6,"nz-spin",4)(7,"nz-tabset",5),n.YNc(8,ne,2,3,"nz-tab",6),n.qZA()()()),2&le&&(n.xp6(2),n.Q6J("ngIf",0===ce.data.length),n.xp6(1),n.Q6J("ngIf",ce.data.length>0),n.xp6(3),n.Q6J("nzSpinning",ce.loading)("nzDelay",0),n.xp6(1),n.Q6J("nzCentered",ce.centered),n.xp6(1),n.Q6J("ngForOf",ce.data))},dependencies:[l.mk,l.sg,l.O5,l.tP,C.x7,E.cm,E.RR,u.Ls,z.W,M.xH,M.xw,K],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,t.Rn)()],pe.prototype,"count",void 0),(0,e.gn)([(0,t.yF)()],pe.prototype,"loading",void 0),(0,e.gn)([(0,t.yF)()],pe.prototype,"popoverVisible",void 0),(0,e.gn)([(0,t.yF)()],pe.prototype,"centered",void 0)},24380:(nt,I,o)=>{"use strict";o.d(I,{Q8:()=>C,ib:()=>l});var e=o(65879),n=o(65592),t=o(78645);let i=(()=>{class E{constructor(){this._observedElements=new Map}ngOnDestroy(){this._observedElements.forEach((z,M)=>this._cleanupObserver(M))}observe(z){return new n.y(M=>{const v=this._observeElement(z).subscribe(M);return()=>{v.unsubscribe(),this._unobserveElement(z)}})}_observeElement(z){if(this._observedElements.has(z))this._observedElements.get(z).count++;else{const M=new t.x;let h=null;typeof MutationObserver<"u"&&(h=new MutationObserver(v=>M.next(v)),h.observe(z,{attributes:!0,attributeOldValue:!0,attributeFilter:["width","height","style"]})),this._observedElements.set(z,{observer:h,stream:M,count:1})}return this._observedElements.get(z).stream}_unobserveElement(z){this._observedElements.has(z)&&(this._observedElements.get(z).count--,this._observedElements.get(z).count||this._cleanupObserver(z))}_cleanupObserver(z){if(this._observedElements.has(z)){const{observer:M,stream:h}=this._observedElements.get(z);M&&M.disconnect(),h.complete(),this._observedElements.delete(z)}}static#e=this.\u0275fac=function(M){return new(M||E)};static#t=this.\u0275prov=e.Yz7({token:E,factory:E.\u0275fac,providedIn:"root"})}return E})(),l=(()=>{class E{constructor(z,M,h){this._obs=z,this.el=M,this.ngZone=h,this._sub$=null,this.event=new e.vpe}ngAfterViewInit(){this._sub$||this._sub()}_sub(){this._unsub();const z=this._obs.observe(this.el.nativeElement);this.ngZone.runOutsideAngular(()=>{this._sub$=z.subscribe(this.event)})}_unsub(){this._sub$?.unsubscribe()}ngOnDestroy(){this._unsub()}static#e=this.\u0275fac=function(M){return new(M||E)(e.Y36(i),e.Y36(e.SBq),e.Y36(e.R0b))};static#t=this.\u0275dir=e.lG2({type:E,selectors:[["","observeSize",""]],outputs:{event:"observeSize"},exportAs:["observeSize"]})}return E})(),C=(()=>{class E{static#e=this.\u0275fac=function(M){return new(M||E)};static#t=this.\u0275mod=e.oAB({type:E});static#n=this.\u0275inj=e.cJS({})}return E})()},97878:(nt,I,o)=>{"use strict";o.d(I,{Tc:()=>be,Dz:()=>pe});var e=o(96814),n=o(65879),t=o(22096),i=o(94664),l=o(5177),C=o(88407),E=o(62831),u=o(57417),z=o(8324),M=o(42840),h=o(70855),v=o(331);const g=["popover"];function d(le,ce){if(1&le){const Q=n.EpF();n.TgZ(0,"div",3),n.NdJ("click",function(){n.CHM(Q);const ae=n.oxw();return n.KtG(ae.handleMask())}),n.qZA()}}const p=function(le,ce){return{"max-width.px":le,direction:ce}};function f(le,ce){if(1&le&&n._UZ(0,"div",4,5),2&le){const Q=n.oxw(),ie=n.MAs(3);n.ekj("onboarding__light-hide",Q.running),n.Q6J("nzPopoverTitle",Q.item.title)("nzPopoverContent",ie)("nzPopoverVisible",!Q.running)("nzPopoverTrigger",null)("nzPopoverPlacement",Q.item.position)("nzPopoverOverlayClassName",Q.item.className)("nzPopoverOverlayStyle",n.WLB(11,p,Q.item.width,Q.dir))("nzNoAnimation",!0),n.uIk("style",Q.item.lightStyle,n.Ckj)}}function y(le,ce){if(1&le&&(n.ynx(0),n._UZ(1,"div",15),n.BQk()),2&le){const Q=n.oxw(2);n.xp6(1),n.Q6J("innerHTML",Q.item.content,n.oJD)}}function T(le,ce){if(1&le&&(n.ynx(0),n._uU(1),n.BQk()),2&le){const Q=n.oxw(2);n.xp6(1),n.AsE("",Q.active+1,"/",Q.max,"")}}function x(le,ce){if(1&le&&(n.ynx(0),n._uU(1),n.BQk()),2&le){const Q=n.oxw(3);n.xp6(1),n.Oqu(Q.item.skip)}}function D(le,ce){if(1&le){const Q=n.EpF();n.TgZ(0,"a",16),n.NdJ("click",function(){n.CHM(Q);const ae=n.oxw(2);return n.KtG(ae.to("skip"))}),n.YNc(1,x,2,1,"ng-container",6),n.qZA()}if(2&le){const Q=n.oxw(2);n.xp6(1),n.Q6J("nzStringTemplateOutlet",Q.item.skip)}}function _(le,ce){if(1&le&&(n.ynx(0),n._uU(1),n.BQk()),2&le){const Q=n.oxw(3);n.xp6(1),n.Oqu(Q.item.prev)}}function P(le,ce){if(1&le){const Q=n.EpF();n.TgZ(0,"a",17),n.NdJ("click",function(){n.CHM(Q);const ae=n.oxw(2);return n.KtG(ae.to("prev"))}),n.YNc(1,_,2,1,"ng-container",6),n.qZA()}if(2&le){const Q=n.oxw(2);n.xp6(1),n.Q6J("nzStringTemplateOutlet",Q.item.prev)}}function O(le,ce){if(1&le&&(n.ynx(0),n._uU(1),n.BQk()),2&le){const Q=n.oxw(3);n.xp6(1),n.Oqu(Q.item.next)}}function A(le,ce){if(1&le){const Q=n.EpF();n.TgZ(0,"a",18),n.NdJ("click",function(){n.CHM(Q);const ae=n.oxw(2);return n.KtG(ae.to("next"))}),n.YNc(1,O,2,1,"ng-container",6),n.qZA()}if(2&le){const Q=n.oxw(2);n.xp6(1),n.Q6J("nzStringTemplateOutlet",Q.item.next)}}function k(le,ce){if(1&le&&(n.ynx(0),n._uU(1),n.BQk()),2&le){const Q=n.oxw(3);n.xp6(1),n.Oqu(Q.item.done)}}function F(le,ce){if(1&le){const Q=n.EpF();n.TgZ(0,"a",19),n.NdJ("click",function(){n.CHM(Q);const ae=n.oxw(2);return n.KtG(ae.to("done"))}),n.YNc(1,k,2,1,"ng-container",6),n.qZA()}if(2&le){const Q=n.oxw(2);n.xp6(1),n.Q6J("nzStringTemplateOutlet",Q.item.done)}}function W(le,ce){if(1&le&&(n.YNc(0,y,2,1,"ng-container",6),n.TgZ(1,"div",7)(2,"span",8),n.YNc(3,T,2,2,"ng-container",9),n.qZA(),n.TgZ(4,"div",10),n.YNc(5,D,2,1,"a",11),n.YNc(6,P,2,1,"a",12),n.YNc(7,A,2,1,"a",13),n.YNc(8,F,2,1,"a",14),n.qZA()()),2&le){const Q=n.oxw();n.Q6J("nzStringTemplateOutlet",Q.item.content),n.xp6(3),n.Q6J("ngIf",Q.config.showTotal),n.xp6(2),n.Q6J("ngIf",!Q.last&&null!=Q.item.skip),n.xp6(1),n.Q6J("ngIf",!Q.first&&null!==Q.item.prev),n.xp6(1),n.Q6J("ngIf",!Q.last&&null!=Q.item.next),n.xp6(1),n.Q6J("ngIf",Q.last&&null!=Q.item.done)}}let K=(()=>{class le{get first(){return 0===this.active}get last(){return this.active===this.max-1}_getDoc(){return this.doc}_getWin(){return this._getDoc().defaultView||window}constructor(Q,ie,ae,xe){this.el=Q,this.doc=ie,this.platform=ae,this.cdr=xe,this.active=0,this.max=0,this.op=new n.vpe,this.running=!1,this.dir="ltr"}getLightData(){const Q=this._getDoc(),ie=this._getWin(),ae=Q.querySelector(this.item.selectors);if(!ae)return null;const xe=ie.scrollY||Q.documentElement.scrollTop||Q.body.scrollTop,Me=ie.scrollX||Q.documentElement.scrollLeft||Q.body.scrollLeft,Ye=ae.getBoundingClientRect(),q=Ye.top+xe,ye=Ye.left+Me,Be=q>8&&ye>8,Re=Be?8:0,ct=Be?16:0;return{top:q-Re,left:ye-Re,width:Ye.width+ct,height:Ye.height+ct,el:ae,clientWidth:Q.body.clientWidth,clientHeight:Q.body.clientHeight}}ngAfterViewInit(){this.popover.component.onClickOutside=()=>{}}scroll(Q){this.prevSelectorEl=Q.el;const ie=Q.top-(Q.clientHeight-Q.height)/2;this._getWin().scrollTo({top:ie}),this.updatePrevElStatus(!0)}updateRunning(Q){this.running=Q,this.cdr.detectChanges(),Q||this.updatePosition()}updatePosition(){if(!this.platform.isBrowser)return;const Q=this.getLightData();if(null==Q)return;const ie=this.el.nativeElement.querySelector(".onboarding__light").style;ie.top=`${Q.top}px`,ie.left=`${Q.left}px`,ie.width=`${Q.width}px`,ie.height=`${Q.height}px`,this.updatePrevElStatus(!1),this.scroll(Q)}updatePrevElStatus(Q){this.prevSelectorEl&&this.prevSelectorEl.classList[Q?"add":"remove"]("onboarding__light-el")}to(Q){this.op.emit(Q)}handleMask(){!0===this.config.maskClosable&&(this.popover.component.hide(),this.to("done"))}ngOnDestroy(){clearTimeout(this.time),this.updatePrevElStatus(!1)}static#e=this.\u0275fac=function(ie){return new(ie||le)(n.Y36(n.SBq),n.Y36(e.K0,8),n.Y36(E.t4),n.Y36(n.sBO))};static#t=this.\u0275cmp=n.Xpm({type:le,selectors:[["onboarding"]],viewQuery:function(ie,ae){if(1&ie&&n.Gf(g,5),2&ie){let xe;n.iGM(xe=n.CRH())&&(ae.popover=xe.first)}},hostVars:5,hostBindings:function(ie,ae){2&ie&&(n.uIk("data-onboarding-active",ae.active),n.ekj("onboarding",!0)("onboarding-rtl","rtl"===ae.dir))},decls:4,vars:2,consts:[["class","onboarding__mask",3,"click",4,"ngIf"],["class","onboarding__light","nz-popover","",3,"onboarding__light-hide","nzPopoverTitle","nzPopoverContent","nzPopoverVisible","nzPopoverTrigger","nzPopoverPlacement","nzPopoverOverlayClassName","nzPopoverOverlayStyle","nzNoAnimation",4,"ngIf"],["content",""],[1,"onboarding__mask",3,"click"],["nz-popover","",1,"onboarding__light",3,"nzPopoverTitle","nzPopoverContent","nzPopoverVisible","nzPopoverTrigger","nzPopoverPlacement","nzPopoverOverlayClassName","nzPopoverOverlayStyle","nzNoAnimation"],["popover","nzPopover"],[4,"nzStringTemplateOutlet"],[1,"flex-center-between","onboarding__footer"],[1,"onboarding__total"],[4,"ngIf"],[1,"onboarding__btns"],["nz-button","","nzType","link","nzSize","small","data-btnType","skip",3,"click",4,"ngIf"],["nz-button","","nzSize","small","data-btnType","prev",3,"click",4,"ngIf"],["nz-button","","nzType","primary","nzSize","small","data-btnType","next",3,"click",4,"ngIf"],["nz-button","","nzType","primary","nzSize","small","data-btnType","done",3,"click",4,"ngIf"],[3,"innerHTML"],["nz-button","","nzType","link","nzSize","small","data-btnType","skip",3,"click"],["nz-button","","nzSize","small","data-btnType","prev",3,"click"],["nz-button","","nzType","primary","nzSize","small","data-btnType","next",3,"click"],["nz-button","","nzType","primary","nzSize","small","data-btnType","done",3,"click"]],template:function(ie,ae){1&ie&&(n.YNc(0,d,1,0,"div",0),n.YNc(1,f,2,14,"div",1),n.YNc(2,W,9,6,"ng-template",null,2,n.W1O)),2&ie&&(n.Q6J("ngIf",!ae.running&&ae.config.mask),n.xp6(1),n.Q6J("ngIf",ae.item))},dependencies:[e.O5,u.lU,z.f,M.ix,h.w,v.P],encapsulation:2,changeDetection:0})}return le})();const _e=new n.OlP("ONBOARDING_STORE_TOKEN",{providedIn:"root",factory:function Y(){return new G}});class G{get(ce){return localStorage.getItem(ce)}set(ce,Q){localStorage.setItem(ce,`${Q}`)}}var H=o(980),j=o(52787),te=o(78967),ne=o(49388);let pe=(()=>{class le{_getDoc(){return this.doc}get running(){return this._running}constructor(Q,ie,ae,xe,Me,Ye,q){this.i18n=Q,this.appRef=ie,this.router=ae,this.doc=xe,this.configSrv=Me,this.keyStoreSrv=Ye,this.directionality=q,this.active=0,this.running$=null,this._running=!1,this.type=null}attach(){const Q=(0,n.LMc)(K,{environmentInjector:this.appRef.injector});this.compRef=Q,this.appRef.attachView(Q.hostView);const ie=Q.hostView.rootNodes[0],ae=this._getDoc(),xe=ae.querySelector(".cdk-overlay-container");xe?ae.body.insertBefore(ie,xe):ae.body.appendChild(ie),this.op$=this.compRef.instance.op.subscribe(Me=>{switch(Me){case"next":this.next();break;case"prev":this.prev();break;default:this.done()}})}cancelRunning(){return this.running$&&(this.running$.unsubscribe(),this.running$=null),this}updateRunning(Q){return this._running=Q,this.compRef.instance.updateRunning(Q),this}destroy(){const Q=this.config?.key;null!=Q&&this.keyStoreSrv.set(Q,this.config?.keyVersion),this.cancelRunning(),this.compRef&&(this.appRef.detachView(this.compRef.hostView),this.compRef.destroy(),this.op$.unsubscribe())}showItem(Q=!1){const ie=this.config?.items,ae={position:"bottomLeft",before:(0,t.of)(!0),after:(0,t.of)(!0),...this.i18n.getData("onboarding"),...ie[this.active]},xe=this.configSrv.get("onboarding").direction||this.directionality.value;Object.assign(this.compRef.instance,{item:ae,config:this.config,active:this.active,max:ie.length,dir:xe});const Me=[(0,i.w)(()=>ae.url?this.router.navigateByUrl(ae.url):(0,t.of)(!0)),(0,i.w)(()=>{const Ye="prev"===this.type?ae.after:ae.before;return"number"==typeof Ye?(0,t.of)(!0).pipe((0,l.g)(Ye)):Ye})];Q||Me.push((0,l.g)(1)),this.updateRunning(!0),this.running$=(0,t.of)(!0).pipe(C.z.apply(this,Me)).subscribe({next:()=>this.cancelRunning().updateRunning(!1),error:()=>this.done()})}start(Q){const ie={keyVersion:"",items:[],mask:!0,maskClosable:!0,showTotal:!1,...Q},ae=ie?.key;null!=ae&&this.keyStoreSrv.get(ae)===ie.keyVersion||this.running||(this.destroy(),this.config=ie,this.active=0,this.type=null,this.attach(),this.showItem(!0))}next(){this._running||this.active+1>=this.config.items.length?this.done():(this.type="next",++this.active,this.showItem())}prev(){this._running||this.active-1<0||(this.type="prev",--this.active,this.showItem())}done(){this.type="done",this.destroy()}ngOnDestroy(){this.destroy()}static#e=this.\u0275fac=function(ie){return new(ie||le)(n.LFG(H.s7),n.LFG(n.z2F),n.LFG(j.F0),n.LFG(e.K0),n.LFG(te.Ri),n.LFG(_e),n.LFG(ne.Is,8))};static#t=this.\u0275prov=n.Yz7({token:le,factory:le.\u0275fac})}return le})(),be=(()=>{class le{static#e=this.\u0275fac=function(ie){return new(ie||le)};static#t=this.\u0275mod=n.oAB({type:le});static#n=this.\u0275inj=n.cJS({providers:[pe],imports:[e.ez,H.lD,u.$6,z.T,M.sL,v.g]})}return le})()},18750:(nt,I,o)=>{"use strict";o.d(I,{q:()=>Ye});var e=o(97582),n=o(65879),t=o(71993),i=o(52787),l=o(32181),C=o(63019),E=o(42918),u=o(980),z=o(20325),M=o(74648),h=o(78967),v=o(62831),g=o(49388),d=o(96814),p=o(17131),f=o(23771),y=o(24139),T=o(3626),x=o(8324);const D=["conTpl"],_=["affix"];function P(q,ye){}function O(q,ye){if(1&q&&(n.TgZ(0,"nz-affix",2,3),n.YNc(2,P,0,0,"ng-template",4),n.qZA()),2&q){const ee=n.oxw(),Be=n.MAs(2);n.Q6J("nzOffsetTop",ee.fixedOffsetTop),n.xp6(2),n.Q6J("ngTemplateOutlet",Be)}}function A(q,ye){if(1&q&&(n.ynx(0),n.TgZ(1,"a",20),n._uU(2),n.qZA(),n.BQk()),2&q){const ee=n.oxw().$implicit;n.xp6(1),n.Q6J("routerLink",ee.link),n.xp6(1),n.Oqu(ee.title)}}function k(q,ye){if(1&q&&(n.ynx(0),n._uU(1),n.BQk()),2&q){const ee=n.oxw().$implicit;n.xp6(1),n.Oqu(ee.title)}}function F(q,ye){if(1&q&&(n.TgZ(0,"nz-breadcrumb-item"),n.YNc(1,A,3,2,"ng-container",18),n.YNc(2,k,2,1,"ng-container",18),n.qZA()),2&q){const ee=ye.$implicit;n.xp6(1),n.Q6J("ngIf",ee.link),n.xp6(1),n.Q6J("ngIf",!ee.link)}}function W(q,ye){if(1&q&&(n.TgZ(0,"nz-breadcrumb"),n.YNc(1,F,3,2,"nz-breadcrumb-item",19),n.qZA()),2&q){const ee=n.oxw(3);n.xp6(1),n.Q6J("ngForOf",ee.paths)}}function K(q,ye){if(1&q&&(n.ynx(0),n.YNc(1,W,2,1,"nz-breadcrumb",18),n.BQk()),2&q){const ee=n.oxw(2);n.xp6(1),n.Q6J("ngIf",ee.paths&&ee.paths.length>0)}}function _e(q,ye){}function Y(q,ye){if(1&q&&(n.TgZ(0,"div",21),n.YNc(1,_e,0,0,"ng-template",4),n.qZA()),2&q){const ee=n.oxw(2);n.xp6(1),n.Q6J("ngTemplateOutlet",ee.logo)}}function G(q,ye){if(1&q&&(n.ynx(0),n._uU(1),n.BQk()),2&q){const ee=n.oxw(5);n.xp6(1),n.Oqu(ee.titleSub)}}function H(q,ye){if(1&q&&(n.TgZ(0,"small"),n.YNc(1,G,2,1,"ng-container",23),n.qZA()),2&q){const ee=n.oxw(4);n.xp6(1),n.Q6J("nzStringTemplateOutlet",ee.titleSub)}}function j(q,ye){if(1&q&&(n.ynx(0),n._uU(1),n.YNc(2,H,2,1,"small",18),n.BQk()),2&q){const ee=n.oxw(3);n.xp6(1),n.hij(" ",ee._titleVal," "),n.xp6(1),n.Q6J("ngIf",ee.titleSub)}}function te(q,ye){if(1&q&&(n.TgZ(0,"h1",22),n.YNc(1,j,3,2,"ng-container",8),n.qZA()),2&q){const ee=n.oxw(2);n.xp6(1),n.Q6J("ngIf",ee._titleVal)("ngIfElse",ee._titleTpl)}}function ne(q,ye){}function pe(q,ye){if(1&q&&(n.TgZ(0,"div",24),n.YNc(1,ne,0,0,"ng-template",4),n.qZA()),2&q){const ee=n.oxw(2);n.xp6(1),n.Q6J("ngTemplateOutlet",ee.action)}}function re(q,ye){}function be(q,ye){}function le(q,ye){if(1&q&&(n.TgZ(0,"div",25),n.YNc(1,be,0,0,"ng-template",4),n.qZA()),2&q){const ee=n.oxw(2);n.xp6(1),n.Q6J("ngTemplateOutlet",ee.extra)}}function ce(q,ye){}const Q=function(q){return{"page-header__wide":q}},ie=function(){return{rows:3}},ae=function(){return{size:"large",shape:"circle"}};function xe(q,ye){if(1&q){const ee=n.EpF();n.TgZ(0,"div",5)(1,"div",6)(2,"nz-skeleton",7),n.YNc(3,K,2,1,"ng-container",8),n.TgZ(4,"div",9),n.YNc(5,Y,2,1,"div",10),n.TgZ(6,"div",11)(7,"div",12),n.YNc(8,te,2,2,"h1",13),n.YNc(9,pe,2,1,"div",14),n.qZA(),n.TgZ(10,"div",12)(11,"div",15,16),n.NdJ("cdkObserveContent",function(){n.CHM(ee);const Re=n.oxw();return n.KtG(Re.checkContent())}),n.Hsn(13),n.YNc(14,re,0,0,"ng-template",4),n.qZA(),n.YNc(15,le,2,1,"div",17),n.qZA()()(),n.YNc(16,ce,0,0,"ng-template",4),n.qZA()()()}if(2&q){const ee=n.oxw();n.ekj("page-header-rtl","rtl"===ee.dir),n.xp6(1),n.Q6J("ngClass",n.VKq(16,Q,ee.wide)),n.xp6(1),n.Q6J("nzLoading",ee.loading)("nzTitle",!1)("nzActive",!0)("nzParagraph",n.DdM(18,ie))("nzAvatar",n.DdM(19,ae)),n.xp6(1),n.Q6J("ngIf",!ee.breadcrumb)("ngIfElse",ee.breadcrumb),n.xp6(2),n.Q6J("ngIf",ee.logo),n.xp6(3),n.Q6J("ngIf",ee._titleVal||ee._titleTpl),n.xp6(1),n.Q6J("ngIf",ee.action),n.xp6(5),n.Q6J("ngTemplateOutlet",ee.content),n.xp6(1),n.Q6J("ngIf",ee.extra),n.xp6(1),n.Q6J("ngTemplateOutlet",ee.tab)}}const Me=["*"];class Ye{get menus(){return this.menuSrv.getPathByUrl(this.router.url,this.recursiveBreadcrumb)}set title(ye){ye instanceof n.Rgc?(this._title=null,this._titleTpl=ye,this._titleVal=""):(this._title=ye,this._titleVal=this._title)}constructor(ye,ee,Be,Re,ct,Ae,Mt,je,ot,mt,we){this.renderer=ee,this.router=Be,this.menuSrv=Re,this.i18nSrv=ct,this.titleSrv=Ae,this.reuseSrv=Mt,this.cdr=je,this.directionality=we,this.dir$=this.directionality.change?.pipe((0,t.sL)()),this.inited=!1,this.isBrowser=!0,this.dir="ltr",this._titleVal="",this.paths=[],this._title=null,this._titleTpl=null,this.loading=!1,this.wide=!1,this.breadcrumb=null,this.logo=null,this.action=null,this.content=null,this.extra=null,this.tab=null,this.isBrowser=mt.isBrowser,ot.attach(this,"pageHeader",{home:"\u9996\u9875",homeLink:"/",autoBreadcrumb:!0,recursiveBreadcrumb:!1,autoTitle:!0,syncTitle:!0,fixed:!1,fixedOffsetTop:64}),ye.notify.pipe((0,t.sL)(),(0,l.h)(de=>this.affix&&"layout"===de.type&&"collapsed"===de.name)).subscribe(()=>this.affix.updatePosition({})),(0,C.T)(Re.change,Be.events.pipe((0,l.h)(de=>de instanceof i.m2)),ct.change).pipe((0,t.sL)(),(0,l.h)(()=>this.inited)).subscribe(()=>this.refresh())}refresh(){this.setTitle().genBreadcrumb(),this.cdr.detectChanges()}genBreadcrumb(){if(this.breadcrumb||!this.autoBreadcrumb||this.menus.length<=0)return void(this.paths=[]);const ye=[];this.menus.forEach(ee=>{if(typeof ee.hideInBreadcrumb<"u"&&ee.hideInBreadcrumb)return;let Be=ee.text;ee.i18n&&this.i18nSrv&&(Be=this.i18nSrv.fanyi(ee.i18n)),ye.push({title:Be,link:ee.link&&[ee.link]})}),this.home&&ye.splice(0,0,{title:this.homeI18n&&this.i18nSrv&&this.i18nSrv.fanyi(this.homeI18n)||this.home,link:[this.homeLink]}),this.paths=ye}setTitle(){if(null==this._title&&null==this._titleTpl&&this.autoTitle&&this.menus.length>0){const ye=this.menus[this.menus.length-1];let ee=ye.text;ye.i18n&&this.i18nSrv&&(ee=this.i18nSrv.fanyi(ye.i18n)),this._titleVal=ee}return this._titleVal&&this.syncTitle&&(this.titleSrv&&this.titleSrv.setTitle(this._titleVal),!this.inited&&this.reuseSrv&&(this.reuseSrv.title=this._titleVal)),this}checkContent(){(0,z.x)(this.conTpl.nativeElement)?this.renderer.setAttribute(this.conTpl.nativeElement,"hidden",""):this.renderer.removeAttribute(this.conTpl.nativeElement,"hidden")}ngOnInit(){this.dir=this.directionality.value,this.dir$.subscribe(ye=>{this.dir=ye,this.cdr.detectChanges()}),this.refresh(),this.inited=!0}ngAfterViewInit(){this.checkContent()}ngOnChanges(){this.inited&&this.refresh()}static#e=this.\u0275fac=function(ee){return new(ee||Ye)(n.Y36(u.gb),n.Y36(n.Qsj),n.Y36(i.F0),n.Y36(u.hl),n.Y36(u.Oi,8),n.Y36(u.yD,8),n.Y36(E.Wu,8),n.Y36(n.sBO),n.Y36(h.Ri),n.Y36(v.t4),n.Y36(g.Is,8))};static#t=this.\u0275cmp=n.Xpm({type:Ye,selectors:[["page-header"]],viewQuery:function(ee,Be){if(1&ee&&(n.Gf(D,5),n.Gf(_,5)),2&ee){let Re;n.iGM(Re=n.CRH())&&(Be.conTpl=Re.first),n.iGM(Re=n.CRH())&&(Be.affix=Re.first)}},inputs:{title:"title",titleSub:"titleSub",loading:"loading",wide:"wide",home:"home",homeLink:"homeLink",homeI18n:"homeI18n",autoBreadcrumb:"autoBreadcrumb",autoTitle:"autoTitle",syncTitle:"syncTitle",fixed:"fixed",fixedOffsetTop:"fixedOffsetTop",breadcrumb:"breadcrumb",recursiveBreadcrumb:"recursiveBreadcrumb",logo:"logo",action:"action",content:"content",extra:"extra",tab:"tab"},exportAs:["pageHeader"],features:[n.TTD],ngContentSelectors:Me,decls:3,vars:2,consts:[[3,"nzOffsetTop",4,"ngIf","ngIfElse"],["phTpl",""],[3,"nzOffsetTop"],["affix",""],[3,"ngTemplateOutlet"],[1,"page-header"],[3,"ngClass"],[1,"d-block",3,"nzLoading","nzTitle","nzActive","nzParagraph","nzAvatar"],[4,"ngIf","ngIfElse"],[1,"page-header__detail"],["class","page-header__logo",4,"ngIf"],[1,"page-header__main"],[1,"page-header__row"],["class","page-header__title",4,"ngIf"],["class","page-header__action",4,"ngIf"],[1,"page-header__desc",3,"cdkObserveContent"],["conTpl",""],["class","page-header__extra",4,"ngIf"],[4,"ngIf"],[4,"ngFor","ngForOf"],[3,"routerLink"],[1,"page-header__logo"],[1,"page-header__title"],[4,"nzStringTemplateOutlet"],[1,"page-header__action"],[1,"page-header__extra"]],template:function(ee,Be){if(1&ee&&(n.F$t(),n.YNc(0,O,3,2,"nz-affix",0),n.YNc(1,xe,17,20,"ng-template",null,1,n.W1O)),2&ee){const Re=n.MAs(2);n.Q6J("ngIf",Be.isBrowser&&Be.fixed)("ngIfElse",Re)}},dependencies:[d.mk,d.sg,d.O5,d.tP,i.rH,p.wD,f.$,y.ng,T.Dg,T.MO,x.f],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,M.yF)()],Ye.prototype,"loading",void 0),(0,e.gn)([(0,M.yF)()],Ye.prototype,"wide",void 0),(0,e.gn)([(0,M.yF)()],Ye.prototype,"autoBreadcrumb",void 0),(0,e.gn)([(0,M.yF)()],Ye.prototype,"autoTitle",void 0),(0,e.gn)([(0,M.yF)()],Ye.prototype,"syncTitle",void 0),(0,e.gn)([(0,M.yF)()],Ye.prototype,"fixed",void 0),(0,e.gn)([(0,M.Rn)()],Ye.prototype,"fixedOffsetTop",void 0),(0,e.gn)([(0,M.yF)()],Ye.prototype,"recursiveBreadcrumb",void 0)},95345:(nt,I,o)=>{"use strict";o.d(I,{h:()=>x});var e=o(97582),n=o(96814),t=o(65879),i=o(71993),l=o(74825),C=o(92438),E=o(83620),u=o(32181),z=o(74648),M=o(99275),h=o(56178),v=o(78967),g=o(64115),d=o(62831),p=o(24139);function f(D,_){1&D&&t._UZ(0,"nz-skeleton")}const y=96/72;class x{set src(_){this._src=_,this.load()}set pi(_){this._pi=this.getValidPi(_),this.pageViewer&&this.pageViewer.scrollPageIntoView({pageNumber:this._pi})}set showAll(_){this._showAll=_,this.resetDoc()}set renderText(_){this._renderText=_,this.pageViewer&&this.resetDoc()}set zoom(_){_<=0||(this._zoom=_)}set rotation(_){_%90==0?this._rotation=_:console.warn("Invalid rotation angle, shoule be divisible by 90.")}get loading(){return this._loading}get pdf(){return this._pdf}get findController(){return this._showAll?this.multiPageFindController:this.singlePageFindController}get pageViewer(){return this._showAll?this.multiPageViewer:this.singlePageViewer}get linkService(){return this._showAll?this.multiPageLinkService:this.singlePageLinkService}get eventBus(){return this._eventBus}get _textLayerMode(){return this._renderText?this.textLayerMode:h.T.DISABLE}get win(){return this.doc.defaultView||window}get el(){return this._el.nativeElement.querySelector(".pdf-container")}constructor(_,P,O,A,k,F,W){this.ngZone=_,this.lazySrv=O,this.platform=A,this._el=k,this.doc=F,this.cdr=W,this.inited=!1,this.destroy$=(0,t.f3M)(t.ktI),this.lib="",this._pi=1,this._total=0,this._showAll=!0,this._rotation=0,this._zoom=1,this._renderText=!0,this._loading=!1,this.textLayerMode=h.T.ENABLE,this.showBorders=!1,this.stickToPage=!1,this.originalSize=!0,this.fitToPage=!1,this.zoomScale="page-width",this.autoReSize=!0,this.externalLinkTarget=h.V.BLANK,this.change=new t.vpe;const K=P.merge("pdf",M.m);Object.assign(this,K);const _e=K.lib;this.lib=_e.endsWith("/")?_e:`${_e}/`}getValidPi(_){if(_<1)return 1;const P=this._pdf;return P&&_>P.numPages?P.numPages:_}emit(_,P){this.ngZone.run(()=>this.change.emit({type:_,pdf:this._pdf,pi:this._pi,total:this._total,...P}))}initDelay(){if(!this.win.pdfjsLib)throw new Error(`No window.pdfjsLib found, please make sure that cdn or local path exists, the current referenced path is: ${JSON.stringify(this.lib)}`);this.inited=!0,this.cdr.detectChanges(),this.win.pdfjsLib.GlobalWorkerOptions.workerSrc=`${this.lib}build/pdf.worker.min.js`,(0,l.H)(this.delay??0).pipe((0,i.sL)(this.destroy$)).subscribe(()=>this.load())}setLoading(_){this.ngZone.run(()=>{this._loading=_,this.cdr.detectChanges()})}load(){const{_src:_}=this;if(!this.inited||!_)return;if(this.lastSrc===_)return void this.render();this.destroy(),this.ngZone.run(()=>{this._loading=!0,this.cdr.detectChanges()}),this.setLoading(!0);const P=this.loadingTask=this.win.pdfjsLib.getDocument(_);P.onProgress=O=>this.emit("load-progress",{progress:O}),P.promise.then(O=>{this._pdf=O,this.lastSrc=_,this._total=O.numPages,this.emit("loaded"),this.pageViewer||this.setupPageViewer(),this.resetDoc(),this.render()},O=>this.emit("error",{error:O})).then(()=>this.setLoading(!1))}resetDoc(){const _=this._pdf;_&&(this.cleanDoc(),this.findController.setDocument(_),this.pageViewer.setDocument(_),this.linkService.setDocument(_,null))}cleanDoc(){this.multiPageViewer.setDocument(null),this.singlePageViewer.setDocument(null),this.multiPageLinkService.setDocument(null,null),this.singlePageLinkService.setDocument(null,null),this.multiPageFindController.setDocument(null),this.singlePageFindController.setDocument(null)}render(){const _=this.pageViewer;_&&((0!==this._rotation||_.pagesRotation!==this._rotation)&&this.timeExec(()=>{_.pagesRotation=this._rotation}),this.stickToPage&&this.timeExec(()=>{_.currentPageNumber=this._pi}),this.updateSize())}timeExec(_){this.ngZone.runOutsideAngular(()=>{(0,l.H)(0).pipe((0,i.sL)(this.destroy$)).subscribe(()=>this.ngZone.runOutsideAngular(()=>_()))})}updateSize(){const _=this.pageViewer;_&&this._pdf.getPage(_.currentPageNumber).then(P=>{const{_rotation:O,_zoom:A}=this,k=O||P.rotate,F=P.getViewport({scale:A,rotation:k}).width*y;let W=A;if(!this.originalSize||this.fitToPage&&F>this.el.clientWidth){const K=P.getViewport({scale:1,rotation:k});W=this.getScale(K.width,K.height)}_.currentScale=W})}getScale(_,P){const O=this.showBorders?18:0,A=this.el,k=A.clientWidth-O,F=A.clientHeight-O;if(0===F||0===P||0===k||0===_)return 1;let W=1;switch(this.zoomScale){case"page-fit":W=Math.min(F/P,k/_);break;case"page-height":W=F/P;break;default:W=k/_}return this._zoom*W/y}destroy(){const{loadingTask:_}=this;_&&!_.destroyed&&_.destroy(),this._pdf&&(this._pdf.destroy(),this._pdf=null,this.cleanDoc())}setupPageViewer(){this.win.pdfjsLib.disableTextLayer=!this._renderText,this.win.pdfjsLib.externalLinkTarget=this.externalLinkTarget,this.setupMultiPageViewer(),this.setupSinglePageViewer()}createEventBus(){const _=new this.win.pdfjsViewer.EventBus;return _.on("pagesinit",P=>{this.emit("pages-init",{ev:P})}),_.on("pagerendered",P=>{this.emit("page-rendered",{ev:P})}),_.on("pagechanging",P=>{const O=P.pageNumber;O!==this._pi&&(this._pi=O,this.emit("pi",{ev:P}))}),_.on("textlayerrendered",P=>{this.emit("text-layer-rendered",{ev:P})}),_}setupMultiPageViewer(){const _=this.win.pdfjsViewer,P=this._eventBus=this.createEventBus(),O=this.multiPageLinkService=new _.PDFLinkService({eventBus:P}),A=this.multiPageFindController=new _.PDFFindController({eventBus:P,linkService:O}),k=this.multiPageViewer=new _.PDFViewer({eventBus:P,container:this.el,removePageBorders:!this.showBorders,textLayerMode:this._textLayerMode,linkService:O,findController:A});O.setViewer(k)}setupSinglePageViewer(){const _=this.win.pdfjsViewer,P=this.createEventBus(),O=this.singlePageLinkService=new _.PDFLinkService({eventBus:P}),A=this.singlePageFindController=new _.PDFFindController({eventBus:P,linkService:O}),k=this.singlePageViewer=new _.PDFSinglePageViewer({eventBus:P,container:this.el,removePageBorders:!this.showBorders,textLayerMode:this._textLayerMode,linkService:O,findController:A});O.setViewer(k),k._currentPageNumber=this._pi}ngAfterViewInit(){if(!this.platform.isBrowser)return;if(this.win.pdfjsLib)return void this.initDelay();const{lib:_}=this;this.lazySrv.load(`${_}build/pdf.min.js`).then(()=>this.lazySrv.load([`${_}web/pdf_viewer.js`,`${_}web/pdf_viewer.css`])).then(()=>this.initDelay()),this.ngZone.runOutsideAngular(()=>this.initResize())}initResize(){(0,C.R)(this.win,"resize").pipe((0,E.b)(100),(0,u.h)(()=>this.autoReSize&&null!=this._pdf),(0,i.sL)(this.destroy$)).subscribe(()=>this.updateSize())}ngOnChanges(_){this.inited&&!_.src&&this.render()}ngOnDestroy(){this.destroy()}static#e=this.\u0275fac=function(P){return new(P||x)(t.Y36(t.R0b),t.Y36(v.Ri),t.Y36(g.Df),t.Y36(d.t4),t.Y36(t.SBq),t.Y36(n.K0,8),t.Y36(t.sBO))};static#t=this.\u0275cmp=t.Xpm({type:x,selectors:[["pdf"]],hostVars:2,hostBindings:function(P,O){2&P&&t.ekj("d-block",!0)},inputs:{src:"src",pi:"pi",showAll:"showAll",renderText:"renderText",textLayerMode:"textLayerMode",showBorders:"showBorders",stickToPage:"stickToPage",originalSize:"originalSize",fitToPage:"fitToPage",zoom:"zoom",zoomScale:"zoomScale",rotation:"rotation",autoReSize:"autoReSize",externalLinkTarget:"externalLinkTarget",delay:"delay"},outputs:{change:"change"},exportAs:["pdf"],features:[t.TTD],decls:3,vars:1,consts:[[4,"ngIf"],[1,"pdf-container"],[1,"pdfViewer"]],template:function(P,O){1&P&&(t.YNc(0,f,1,0,"nz-skeleton",0),t.TgZ(1,"div",1),t._UZ(2,"div",2),t.qZA()),2&P&&t.Q6J("ngIf",!O.inited||O.loading)},dependencies:[n.O5,p.ng],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,z.Rn)()],x.prototype,"pi",null),(0,e.gn)([(0,z.yF)()],x.prototype,"showAll",null),(0,e.gn)([(0,z.yF)()],x.prototype,"renderText",null),(0,e.gn)([(0,z.yF)()],x.prototype,"showBorders",void 0),(0,e.gn)([(0,z.yF)()],x.prototype,"stickToPage",void 0),(0,e.gn)([(0,z.yF)()],x.prototype,"originalSize",void 0),(0,e.gn)([(0,z.yF)()],x.prototype,"fitToPage",void 0),(0,e.gn)([(0,z.Rn)()],x.prototype,"zoom",null),(0,e.gn)([(0,z.Rn)()],x.prototype,"rotation",null),(0,e.gn)([(0,z.yF)()],x.prototype,"autoReSize",void 0),(0,e.gn)([(0,z.Rn)()],x.prototype,"delay",void 0),(0,e.gn)([(0,z.EA)()],x.prototype,"load",null),(0,e.gn)([(0,z.EA)()],x.prototype,"resetDoc",null),(0,e.gn)([(0,z.EA)()],x.prototype,"updateSize",null),(0,e.gn)([(0,z.EA)()],x.prototype,"destroy",null)},99275:(nt,I,o)=>{"use strict";o.d(I,{m:()=>e});const e={lib:"https://cdn.jsdelivr.net/npm/pdfjs-dist@3.6.x/",showAll:!0,renderText:!0,showBorders:!1,originalSize:!0,fitToPage:!1,autoReSize:!0}},56178:(nt,I,o)=>{"use strict";o.d(I,{T:()=>e,V:()=>n});var e=function(t){return t[t.DISABLE=0]="DISABLE",t[t.ENABLE=1]="ENABLE",t[t.ENABLE_ENHANCE=2]="ENABLE_ENHANCE",t}(e||{}),n=function(t){return t[t.NONE=0]="NONE",t[t.SELF=1]="SELF",t[t.BLANK=2]="BLANK",t[t.PARENT=3]="PARENT",t[t.TOP=4]="TOP",t}(n||{})},77483:(nt,I,o)=>{"use strict";o.d(I,{q:()=>h});var e=o(97582),n=o(65879),t=o(32181),i=o(74648),l=o(57796),C=o(78967),E=o(64115),u=o(62831),z=o(96814);function M(v,g){if(1&v&&n._UZ(0,"img",1),2&v){const d=n.oxw();n.Q6J("src",d.dataURL,n.LSH)}}class h{constructor(g,d,p,f){this.cdr=g,this.lazySrv=p,this.platform=f,this.inited=!1,this.value="",this.change=new n.vpe,this.cog=d.merge("qr",l.Y),Object.assign(this,this.cog)}init(){this.inited&&(null==this.qr&&(this.qr=new window.QRious),this.qr.set(this.option),this.dataURL=this.qr.toDataURL(),this.change.emit(this.dataURL),this.cdr.detectChanges())}initDelay(){this.inited=!0,setTimeout(()=>this.init(),this.delay)}ngAfterViewInit(){if(!this.platform.isBrowser)return;if(window.QRious)return void this.initDelay();const g=this.cog.lib;this.lazy$=this.lazySrv.change.pipe((0,t.h)(d=>1===d.length&&d[0].path===g&&"ok"===d[0].status)).subscribe(()=>this.initDelay()),this.lazySrv.load(g)}ngOnChanges(){const g={background:this.background,backgroundAlpha:this.backgroundAlpha,foreground:this.foreground,foregroundAlpha:this.foregroundAlpha,level:this.level,mime:this.mime,padding:this.padding,size:this.size,value:"function"==typeof this.value?this.value():this.toUtf8ByteArray(this.value)};this.option=g,this.init()}toUtf8ByteArray(g){g=encodeURI(g);const d=[];for(let p=0;pString.fromCharCode(p)).join("")}ngOnDestroy(){this.lazy$&&this.lazy$.unsubscribe()}static#e=this.\u0275fac=function(d){return new(d||h)(n.Y36(n.sBO),n.Y36(C.Ri),n.Y36(E.Df),n.Y36(u.t4))};static#t=this.\u0275cmp=n.Xpm({type:h,selectors:[["qr"]],hostVars:6,hostBindings:function(d,p){2&d&&n.Udp("display","inline-block")("height",p.size,"px")("width",p.size,"px")},inputs:{background:"background",backgroundAlpha:"backgroundAlpha",foreground:"foreground",foregroundAlpha:"foregroundAlpha",level:"level",mime:"mime",padding:"padding",size:"size",value:"value",delay:"delay"},outputs:{change:"change"},exportAs:["qr"],features:[n.TTD],decls:1,vars:1,consts:[["style","max-width: 100%; max-height: 100%;",3,"src",4,"ngIf"],[2,"max-width","100%","max-height","100%",3,"src"]],template:function(d,p){1&d&&n.YNc(0,M,1,1,"img",0),2&d&&n.Q6J("ngIf",p.dataURL)},dependencies:[z.O5],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,i.Rn)(null)],h.prototype,"padding",void 0),(0,e.gn)([(0,i.Rn)()],h.prototype,"size",void 0),(0,e.gn)([(0,i.Rn)()],h.prototype,"delay",void 0)},57796:(nt,I,o)=>{"use strict";o.d(I,{Y:()=>e});const e={lib:"https://cdn.jsdelivr.net/npm/qrious/dist/qrious.min.js",background:"white",backgroundAlpha:1,foreground:"black",foregroundAlpha:1,level:"L",mime:"image/png",padding:10,size:220,delay:0}},47970:(nt,I,o)=>{"use strict";o.d(I,{$:()=>z});var e=o(97582),n=o(65879),t=o(74648),i=o(96814),l=o(90551),C=o(8324);function E(M,h){if(1&M&&(n.ynx(0),n._UZ(1,"i",4),n.BQk()),2&M){const v=n.oxw();n.xp6(1),n.Q6J("nzType",v.icon)}}const u=["*"];class z{constructor(h,v,g){this.cdr=h,this.el=v,this.render=g,this.ctrlStyle={},this.icon="question-circle",this.top=120,this.width=200,this.expand=!1,this.expandChange=new n.vpe,this.show=!1,this.initFlag=!1}_click(){this.show=!this.show,this.expandChange.emit(this.show),this.setStyle()}setStyle(){this.ctrlStyle={"background-color":this.bgColor,"border-color":this.borderColor};const h=[`top:${this.top}px`,`width:${this.width}px`,`margin-right:-${this.show?0:this.width}px`];this.bgColor&&h.push(`background-color:${this.bgColor}`),this.borderColor&&h.push(`border-color:${this.borderColor}`),this.render.setAttribute(this.el.nativeElement,"style",h.join(";")),this.cdr.detectChanges()}ngOnInit(){this.initFlag=!0,this.setStyle()}ngOnChanges(){this.show=this.expand,this.initFlag&&this.setStyle()}static#e=this.\u0275fac=function(v){return new(v||z)(n.Y36(n.sBO),n.Y36(n.SBq),n.Y36(n.Qsj))};static#t=this.\u0275cmp=n.Xpm({type:z,selectors:[["quick-menu"]],hostVars:2,hostBindings:function(v,g){1&v&&n.NdJ("click",function(){return g._click()}),2&v&&n.ekj("quick-menu",!0)},inputs:{icon:"icon",top:"top",width:"width",bgColor:"bgColor",borderColor:"borderColor",expand:"expand"},outputs:{expandChange:"expandChange"},exportAs:["quickMenu"],features:[n.TTD],ngContentSelectors:u,decls:5,vars:2,consts:[[1,"quick-menu__inner"],[1,"quick-menu__ctrl",3,"ngStyle"],[1,"quick-menu__ctrl-icon"],[4,"nzStringTemplateOutlet"],["nz-icon","",3,"nzType"]],template:function(v,g){1&v&&(n.F$t(),n.TgZ(0,"div",0)(1,"div",1)(2,"div",2),n.YNc(3,E,2,1,"ng-container",3),n.qZA()(),n.Hsn(4),n.qZA()),2&v&&(n.xp6(1),n.Q6J("ngStyle",g.ctrlStyle),n.xp6(2),n.Q6J("nzStringTemplateOutlet",g.icon))},dependencies:[i.PC,l.Ls,C.f],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,t.Rn)()],z.prototype,"top",void 0),(0,e.gn)([(0,t.Rn)()],z.prototype,"width",void 0),(0,e.gn)([(0,t.yF)()],z.prototype,"expand",void 0)},73180:(nt,I,o)=>{"use strict";o.d(I,{N:()=>g});var e=o(71993),n=o(65879),t=o(49388),i=o(96814),l=o(90551),C=o(8324);function E(d,p){if(1&d&&(n.ynx(0),n._uU(1),n.BQk()),2&d){const f=n.oxw();n.xp6(1),n.Oqu(f.title)}}function u(d,p){if(1&d&&(n.ynx(0),n._uU(1),n.BQk()),2&d){const f=n.oxw(2);n.xp6(1),n.Oqu(f.description)}}function z(d,p){if(1&d&&(n.TgZ(0,"div",7),n.YNc(1,u,2,1,"ng-container",3),n.qZA()),2&d){const f=n.oxw();n.xp6(1),n.Q6J("nzStringTemplateOutlet",f.description)}}function M(d,p){if(1&d&&(n.ynx(0),n._uU(1),n.BQk()),2&d){const f=n.oxw(2);n.xp6(1),n.Oqu(f.extra)}}function h(d,p){if(1&d&&(n.TgZ(0,"div",8),n.YNc(1,M,2,1,"ng-container",3),n.qZA()),2&d){const f=n.oxw();n.xp6(1),n.Q6J("nzStringTemplateOutlet",f.extra)}}const v=["*"];let g=(()=>{class d{set type(f){switch(this._type=f,f){case"success":this._icon="check-circle";break;case"error":this._icon="close-circle";break;default:this._icon=f}}constructor(f,y){this.directionality=f,this.cdr=y,this.dir$=this.directionality.change?.pipe((0,e.sL)()),this._type="",this._icon="",this.dir="ltr"}ngOnInit(){this.dir=this.directionality.value,this.dir$.subscribe(f=>{this.dir=f,this.cdr.detectChanges()})}static#e=this.\u0275fac=function(y){return new(y||d)(n.Y36(t.Is,8),n.Y36(n.sBO))};static#t=this.\u0275cmp=n.Xpm({type:d,selectors:[["result"]],hostVars:4,hostBindings:function(y,T){2&y&&n.ekj("result",!0)("result-rtl","rtl"===T.dir)},inputs:{type:"type",title:"title",description:"description",extra:"extra"},exportAs:["result"],ngContentSelectors:v,decls:8,vars:7,consts:[[1,"result__icon"],["nz-icon","",3,"nzType"],[1,"result__title"],[4,"nzStringTemplateOutlet"],["class","result__desc",4,"ngIf"],["class","result__extra",4,"ngIf"],[1,"result__actions"],[1,"result__desc"],[1,"result__extra"]],template:function(y,T){1&y&&(n.F$t(),n.TgZ(0,"div",0),n._UZ(1,"i",1),n.qZA(),n.TgZ(2,"div",2),n.YNc(3,E,2,1,"ng-container",3),n.qZA(),n.YNc(4,z,2,1,"div",4),n.YNc(5,h,2,1,"div",5),n.TgZ(6,"div",6),n.Hsn(7),n.qZA()),2&y&&(n.xp6(1),n.Gre("result__icon-",T._type,""),n.Q6J("nzType",T._icon),n.xp6(2),n.Q6J("nzStringTemplateOutlet",T.title),n.xp6(1),n.Q6J("ngIf",T.description),n.xp6(1),n.Q6J("ngIf",T.extra))},dependencies:[i.O5,l.Ls,C.f],encapsulation:2,changeDetection:0})}return d})()},42918:(nt,I,o)=>{"use strict";o.d(I,{r7:()=>x,Wu:()=>C.W}),o(24898),o(8491),o(28293),o(41635),o(31229);var C=o(70341),E=o(33651),u=o(96814),z=o(52787),M=o(980),h=o(90551),v=o(73460),g=o(79382),d=o(59062),p=o(45049),f=o(65879);let x=(()=>{class _{static#e=this.\u0275fac=function(A){return new(A||_)};static#t=this.\u0275mod=f.oAB({type:_});static#n=this.\u0275inj=f.cJS({providers:[{provide:p.yp,useValue:"_reuse-tab-state"},{provide:p.Lt,useFactory:()=>new p.IE},{provide:d.v,useFactory:()=>new d.Z}],imports:[u.ez,z.Bz,M.lD,v.ip,g.we,h.PV,E.U8]})}return _})();o(98352)},24898:(nt,I,o)=>{"use strict";o.d(I,{i:()=>u});var e=o(65879),n=o(980),t=o(96814),i=o(73460);function l(z,M){if(1&z){const h=e.EpF();e.TgZ(0,"li",6),e.NdJ("click",function(g){e.CHM(h);const d=e.oxw();return e.KtG(d.click(g,"refresh"))}),e.qZA()}if(2&z){const h=e.oxw();e.Q6J("innerHTML",h.i18n.refresh,e.oJD)}}function C(z,M){if(1&z){const h=e.EpF();e.TgZ(0,"li",9),e.NdJ("click",function(g){const p=e.CHM(h).$implicit,f=e.oxw(2);return e.KtG(f.click(g,"custom",p))}),e.qZA()}if(2&z){const h=M.$implicit,v=e.oxw(2);e.Q6J("nzDisabled",v.isDisabled(h))("innerHTML",h.title,e.oJD),e.uIk("data-type",h.id)}}function E(z,M){if(1&z&&(e.ynx(0),e._UZ(1,"li",7),e.YNc(2,C,1,3,"li",8),e.BQk()),2&z){const h=e.oxw();e.xp6(2),e.Q6J("ngForOf",h.customContextMenu)}}let u=(()=>{class z{set i18n(h){this._i18n={...this.i18nSrv.getData("reuseTab"),...h}}get i18n(){return this._i18n}get includeNonCloseable(){return this.event.ctrlKey}constructor(h){this.i18nSrv=h,this.close=new e.vpe}notify(h){this.close.next({type:h,item:this.item,includeNonCloseable:this.includeNonCloseable})}ngOnInit(){this.includeNonCloseable&&(this.item.closable=!0)}click(h,v,g){if(h.preventDefault(),h.stopPropagation(),("close"!==v||this.item.closable)&&("closeRight"!==v||!this.item.last)){if(g){if(this.isDisabled(g))return;g.fn(this.item,g)}this.notify(v)}}isDisabled(h){return!!h.disabled&&h.disabled(this.item)}closeMenu(h){"click"===h.type&&2===h.button||this.notify(null)}static#e=this.\u0275fac=function(v){return new(v||z)(e.Y36(n.s7))};static#t=this.\u0275cmp=e.Xpm({type:z,selectors:[["reuse-tab-context-menu"]],hostBindings:function(v,g){1&v&&e.NdJ("click",function(p){return g.closeMenu(p)},!1,e.evT)("contextmenu",function(p){return g.closeMenu(p)},!1,e.evT)},inputs:{i18n:"i18n",item:"item",event:"event",customContextMenu:"customContextMenu"},outputs:{close:"close"},decls:6,vars:7,consts:[["nz-menu",""],["nz-menu-item","","data-type","refresh",3,"innerHTML","click",4,"ngIf"],["nz-menu-item","","data-type","close",3,"nzDisabled","innerHTML","click"],["nz-menu-item","","data-type","closeOther",3,"innerHTML","click"],["nz-menu-item","","data-type","closeRight",3,"nzDisabled","innerHTML","click"],[4,"ngIf"],["nz-menu-item","","data-type","refresh",3,"innerHTML","click"],["nz-menu-divider",""],["nz-menu-item","",3,"nzDisabled","innerHTML","click",4,"ngFor","ngForOf"],["nz-menu-item","",3,"nzDisabled","innerHTML","click"]],template:function(v,g){1&v&&(e.TgZ(0,"ul",0),e.YNc(1,l,1,1,"li",1),e.TgZ(2,"li",2),e.NdJ("click",function(p){return g.click(p,"close")}),e.qZA(),e.TgZ(3,"li",3),e.NdJ("click",function(p){return g.click(p,"closeOther")}),e.qZA(),e.TgZ(4,"li",4),e.NdJ("click",function(p){return g.click(p,"closeRight")}),e.qZA(),e.YNc(5,E,3,1,"ng-container",5),e.qZA()),2&v&&(e.xp6(1),e.Q6J("ngIf",g.item.active),e.xp6(1),e.Q6J("nzDisabled",!g.item.closable)("innerHTML",g.i18n.close,e.oJD),e.xp6(1),e.Q6J("innerHTML",g.i18n.closeOther,e.oJD),e.xp6(1),e.Q6J("nzDisabled",g.item.last)("innerHTML",g.i18n.closeRight,e.oJD),e.xp6(1),e.Q6J("ngIf",g.customContextMenu.length>0))},dependencies:[t.sg,t.O5,i.wO,i.u9,i.YV],encapsulation:2,changeDetection:0})}return z})()},8491:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>i});var e=o(65879),n=o(47394),t=o(41635);let i=(()=>{class l{set i18n(E){this.srv.i18n=E}constructor(E){this.srv=E,this.sub$=new n.w0,this.change=new e.vpe,this.sub$.add(E.show.subscribe(u=>this.srv.open(u))),this.sub$.add(E.close.subscribe(u=>this.change.emit(u)))}ngOnDestroy(){this.sub$.unsubscribe()}static#e=this.\u0275fac=function(u){return new(u||l)(e.Y36(t.e))};static#t=this.\u0275cmp=e.Xpm({type:l,selectors:[["reuse-tab-context"]],inputs:{i18n:"i18n"},outputs:{change:"change"},decls:0,vars:0,template:function(u,z){},encapsulation:2})}return l})()},28293:(nt,I,o)=>{"use strict";o.d(I,{E:()=>t});var e=o(65879),n=o(41635);let t=(()=>{class i{constructor(C){this.srv=C}_onContextMenu(C){this.srv.show.next({event:C,item:this.item,customContextMenu:this.customContextMenu}),C.preventDefault(),C.stopPropagation()}static#e=this.\u0275fac=function(E){return new(E||i)(e.Y36(n.e))};static#t=this.\u0275dir=e.lG2({type:i,selectors:[["","reuse-tab-context-menu",""]],hostBindings:function(E,u){1&E&&e.NdJ("contextmenu",function(M){return u._onContextMenu(M)})},inputs:{item:["reuse-tab-context-menu","item"],customContextMenu:"customContextMenu"},exportAs:["reuseTabContextMenu"]})}return i})()},41635:(nt,I,o)=>{"use strict";o.d(I,{e:()=>E});var e=o(33651),n=o(68484),t=o(78645),i=o(47394),l=o(24898),C=o(65879);let E=(()=>{class u{constructor(M){this.overlay=M,this.ref=null,this.show=new t.x,this.close=new t.x}remove(){this.ref&&(this.ref.detach(),this.ref.dispose(),this.ref=null)}open(M){this.remove();const{event:h,item:v,customContextMenu:g}=M,{x:d,y:p}=h,f=[new e.tR({originX:"start",originY:"bottom"},{overlayX:"start",overlayY:"top"}),new e.tR({originX:"start",originY:"top"},{overlayX:"start",overlayY:"bottom"})],y=this.overlay.position().flexibleConnectedTo({x:d,y:p}).withPositions(f);this.ref=this.overlay.create({positionStrategy:y,panelClass:"reuse-tab__cm",scrollStrategy:this.overlay.scrollStrategies.close()});const T=this.ref.attach(new n.C5(l.i)),x=T.instance;x.i18n=this.i18n,x.item={...v},x.customContextMenu=g,x.event=h;const D=new i.w0;D.add(x.close.subscribe(_=>{this.close.next(_),this.remove()})),T.onDestroy(()=>D.unsubscribe())}static#e=this.\u0275fac=function(h){return new(h||u)(C.LFG(e.aV))};static#t=this.\u0275prov=C.Yz7({token:u,factory:u.\u0275fac})}return u})()},59062:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>t,v:()=>n});const n=new(o(65879).OlP)("REUSE_TAB_CACHED_MANAGER");class t{constructor(){this.list=[],this.title={},this.closable={}}}},31229:(nt,I,o)=>{"use strict";o.d(I,{g:()=>K});var e=o(97582),n=o(96814),t=o(65879),i=o(71993),l=o(22096),C=o(32181),E=o(83620),u=o(980),z=o(74648),M=o(41635),h=o(98352),v=o(45049),g=o(70341),d=o(52787),p=o(62831),f=o(49388),y=o(79382),T=o(90551),x=o(8491),D=o(28293);const _=["tabset"],P=function(_e){return{$implicit:_e}};function O(_e,Y){if(1&_e&&t.GkF(0,10),2&_e){const G=t.oxw(2).$implicit,H=t.oxw();t.Q6J("ngTemplateOutlet",H.titleRender)("ngTemplateOutletContext",t.VKq(2,P,G))}}function A(_e,Y){if(1&_e&&t._uU(0),2&_e){const G=t.oxw(2).$implicit;t.Oqu(G.title)}}function k(_e,Y){if(1&_e){const G=t.EpF();t.TgZ(0,"i",11),t.NdJ("click",function(j){t.CHM(G);const te=t.oxw(2).index,ne=t.oxw();return t.KtG(ne._close(j,te,!1))}),t.qZA()}}function F(_e,Y){if(1&_e&&(t.TgZ(0,"div",6)(1,"span"),t.YNc(2,O,1,4,"ng-container",7),t.YNc(3,A,1,1,"ng-template",null,8,t.W1O),t.qZA()(),t.YNc(5,k,1,0,"i",9)),2&_e){const G=t.MAs(4),H=t.oxw().$implicit,j=t.oxw();t.Q6J("reuse-tab-context-menu",H)("customContextMenu",j.customContextMenu),t.uIk("title",H.title),t.xp6(1),t.Udp("max-width",j.tabMaxWidth,"px"),t.ekj("reuse-tab__name-width",j.tabMaxWidth),t.xp6(1),t.Q6J("ngIf",j.titleRender)("ngIfElse",G),t.xp6(3),t.Q6J("ngIf",H.closable)}}function W(_e,Y){if(1&_e){const G=t.EpF();t.TgZ(0,"nz-tab",4),t.NdJ("nzClick",function(){const te=t.CHM(G).index,ne=t.oxw();return t.KtG(ne._to(te))}),t.YNc(1,F,6,10,"ng-template",null,5,t.W1O),t.qZA()}if(2&_e){const G=t.MAs(2);t.Q6J("nzTitle",G)}}class K{set keepingScrollContainer(Y){this._keepingScrollContainer="string"==typeof Y?this.doc.querySelector(Y):Y}constructor(Y,G,H,j,te,ne,pe,re,be,le){this.srv=Y,this.cdr=G,this.router=H,this.route=j,this.i18nSrv=te,this.doc=ne,this.platform=pe,this.directionality=re,this.stateKey=be,this.stateSrv=le,this.destroy$=(0,t.f3M)(t.ktI),this.list=[],this.pos=0,this.dir="ltr",this.mode=h.i.Menu,this.debug=!1,this.allowClose=!0,this.keepingScroll=!1,this.storageState=!1,this.customContextMenu=[],this.tabBarStyle=null,this.tabType="line",this.routeParamMatchMode="strict",this.disabled=!1,this.change=new t.vpe,this.close=new t.vpe}genTit(Y){return Y.i18n&&this.i18nSrv?this.i18nSrv.fanyi(Y.i18n):Y.text}get curUrl(){return this.srv.getUrl(this.route.snapshot)}genCurItem(){const Y=this.curUrl,G=this.srv.getTruthRoute(this.route.snapshot);return{url:Y,title:this.genTit(this.srv.getTitle(Y,G)),closable:this.allowClose&&this.srv.count>0&&this.srv.getClosable(Y,G),active:!1,last:!1,index:0}}genList(Y){const G=this.srv.items.map((te,ne)=>({url:te.url,title:this.genTit(te.title),closable:this.allowClose&&te.closable&&this.srv.count>0,position:te.position,index:ne,active:!1,last:!1})),H=this.curUrl;let j=-1===G.findIndex(te=>te.url===H);if(Y&&"close"===Y.active&&Y.url===H){j=!1;let te=0;const ne=this.list.find(pe=>pe.url===H);ne.index===G.length?te=G.length-1:ne.indexte.index=ne),1===G.length&&(G[0].closable=!1),this.list=G,this.cdr.detectChanges(),this.updatePos()}updateTitle(Y){const G=this.list.find(H=>H.url===Y.url);G&&(G.title=this.genTit(Y.title),this.cdr.detectChanges())}refresh(Y){this.srv.runHook("_onReuseInit",this.pos===Y.index?this.srv.componentRef:Y.index,"refresh")}saveState(){!this.srv.inited||!this.storageState||this.stateSrv.update(this.stateKey,this.list)}contextMenuChange(Y){let G=null;switch(Y.type){case"refresh":this.refresh(Y.item);break;case"close":this._close(null,Y.item.index,Y.includeNonCloseable);break;case"closeRight":G=()=>{this.srv.closeRight(Y.item.url,Y.includeNonCloseable),this.close.emit(null)};break;case"closeOther":G=()=>{this.srv.clear(Y.includeNonCloseable),this.close.emit(null)}}G&&(!Y.item.active&&Y.item.index<=this.list.find(H=>H.active).index?this._to(Y.item.index,G):G())}_to(Y,G){Y=Math.max(0,Math.min(Y,this.list.length-1));const H=this.list[Y];this.router.navigateByUrl(H.url).then(j=>{j&&(this.item=H,this.change.emit(H),G&&G())})}_close(Y,G,H){null!=Y&&(Y.preventDefault(),Y.stopPropagation());const j=this.list[G];return(this.canClose?this.canClose({item:j,includeNonCloseable:H}):(0,l.of)(!0)).pipe((0,C.h)(te=>te)).subscribe(()=>{this.srv.close(j.url,H),this.close.emit(j),this.cdr.detectChanges()}),!1}activate(Y){this.srv.componentRef={instance:Y}}updatePos(){const Y=this.srv.getUrl(this.route.snapshot),G=this.list.filter(ne=>ne.url===Y||!this.srv.isExclude(ne.url));if(0===G.length)return;const H=G[G.length-1],j=G.find(ne=>ne.url===Y);H.last=!0;const te=null==j?H.index:j.index;G.forEach((ne,pe)=>ne.active=te===pe),this.pos=te,this.tabset.nzSelectedIndex=te,this.list=G,this.cdr.detectChanges(),this.saveState()}ngOnInit(){this.dir=this.directionality.value,this.directionality.change?.pipe((0,i.sL)(this.destroy$)).subscribe(Y=>{this.dir=Y,this.cdr.detectChanges()}),this.platform.isBrowser&&(this.srv.change.pipe((0,i.sL)(this.destroy$)).subscribe(Y=>{switch(Y?.active){case"title":return void this.updateTitle(Y);case"override":if(Y?.list?.length===this.list.length)return void this.updatePos()}this.genList(Y)}),this.i18nSrv.change.pipe((0,C.h)(()=>this.srv.inited),(0,i.sL)(this.destroy$),(0,E.b)(100)).subscribe(()=>this.genList({active:"title"})),this.srv.init())}ngOnChanges(Y){this.platform.isBrowser&&(Y.max&&(this.srv.max=this.max),Y.excludes&&(this.srv.excludes=this.excludes),Y.mode&&(this.srv.mode=this.mode),Y.routeParamMatchMode&&(this.srv.routeParamMatchMode=this.routeParamMatchMode),Y.keepingScroll&&(this.srv.keepingScroll=this.keepingScroll,this.srv.keepingScrollContainer=this._keepingScrollContainer),Y.storageState&&(this.srv.storageState=this.storageState),this.srv.debug=this.debug,this.cdr.detectChanges())}static#e=this.\u0275fac=function(G){return new(G||K)(t.Y36(g.W),t.Y36(t.sBO),t.Y36(d.F0),t.Y36(d.gz),t.Y36(u.Oi,8),t.Y36(n.K0),t.Y36(p.t4),t.Y36(f.Is,8),t.Y36(v.yp,8),t.Y36(v.Lt,8))};static#t=this.\u0275cmp=t.Xpm({type:K,selectors:[["reuse-tab"],["","reuse-tab",""]],viewQuery:function(G,H){if(1&G&&t.Gf(_,5),2&G){let j;t.iGM(j=t.CRH())&&(H.tabset=j.first)}},hostVars:10,hostBindings:function(G,H){2&G&&t.ekj("reuse-tab",!0)("reuse-tab__line","line"===H.tabType)("reuse-tab__card","card"===H.tabType)("reuse-tab__disabled",H.disabled)("reuse-tab-rtl","rtl"===H.dir)},inputs:{mode:"mode",i18n:"i18n",debug:"debug",max:"max",tabMaxWidth:"tabMaxWidth",excludes:"excludes",allowClose:"allowClose",keepingScroll:"keepingScroll",storageState:"storageState",keepingScrollContainer:"keepingScrollContainer",customContextMenu:"customContextMenu",tabBarExtraContent:"tabBarExtraContent",tabBarGutter:"tabBarGutter",tabBarStyle:"tabBarStyle",tabType:"tabType",routeParamMatchMode:"routeParamMatchMode",disabled:"disabled",titleRender:"titleRender",canClose:"canClose"},outputs:{change:"change",close:"close"},exportAs:["reuseTab"],features:[t._Bn([M.e]),t.TTD],decls:4,vars:8,consts:[[3,"nzSelectedIndex","nzAnimated","nzType","nzTabBarExtraContent","nzTabBarGutter","nzTabBarStyle"],["tabset",""],[3,"nzTitle","nzClick",4,"ngFor","ngForOf"],[3,"i18n","change"],[3,"nzTitle","nzClick"],["titleTemplate",""],[1,"reuse-tab__name",3,"reuse-tab-context-menu","customContextMenu"],[3,"ngTemplateOutlet","ngTemplateOutletContext",4,"ngIf","ngIfElse"],["defaultTitle",""],["nz-icon","","nzType","close","class","reuse-tab__op",3,"click",4,"ngIf"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],["nz-icon","","nzType","close",1,"reuse-tab__op",3,"click"]],template:function(G,H){1&G&&(t.TgZ(0,"nz-tabset",0,1),t.YNc(2,W,3,1,"nz-tab",2),t.qZA(),t.TgZ(3,"reuse-tab-context",3),t.NdJ("change",function(te){return H.contextMenuChange(te)}),t.qZA()),2&G&&(t.Q6J("nzSelectedIndex",H.pos)("nzAnimated",!1)("nzType",H.tabType)("nzTabBarExtraContent",H.tabBarExtraContent)("nzTabBarGutter",H.tabBarGutter)("nzTabBarStyle",H.tabBarStyle),t.xp6(2),t.Q6J("ngForOf",H.list),t.xp6(1),t.Q6J("i18n",H.i18n))},dependencies:[n.sg,n.O5,n.tP,y.xH,y.xw,T.Ls,x.Z,D.E],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,z.yF)()],K.prototype,"debug",void 0),(0,e.gn)([(0,z.Rn)()],K.prototype,"max",void 0),(0,e.gn)([(0,z.Rn)()],K.prototype,"tabMaxWidth",void 0),(0,e.gn)([(0,z.yF)()],K.prototype,"allowClose",void 0),(0,e.gn)([(0,z.yF)()],K.prototype,"keepingScroll",void 0),(0,e.gn)([(0,z.yF)()],K.prototype,"storageState",void 0),(0,e.gn)([(0,z.yF)()],K.prototype,"disabled",void 0)},98352:(nt,I,o)=>{"use strict";o.d(I,{i:()=>e});var e=function(n){return n[n.Menu=0]="Menu",n[n.MenuForce=1]="MenuForce",n[n.URL=2]="URL",n}(e||{})},70341:(nt,I,o)=>{"use strict";o.d(I,{W:()=>v});var e=o(52787),n=o(65619),t=o(74825),i=o(96814),l=o(65879),C=o(62831);let E=(()=>{class g{_getDoc(){return this._doc||document}_getWin(){return this._getDoc().defaultView||window}constructor(p,f){this._doc=p,this.platform=f}getScrollPosition(p){if(!this.platform.isBrowser)return[0,0];const f=this._getWin();return p&&p!==f?[p.scrollLeft,p.scrollTop]:[f.scrollX,f.scrollY]}scrollToPosition(p,f){this.platform.isBrowser&&(p||this._getWin()).scrollTo(f[0],f[1])}scrollToElement(p,f=0){if(!this.platform.isBrowser)return;p||(p=this._getDoc().body),p.scrollIntoView();const y=this._getWin();y&&y.scrollBy&&(y.scrollBy(0,p.getBoundingClientRect().top-f),y.scrollY<20&&y.scrollBy(0,-y.scrollY))}scrollToTop(p=0){this.platform.isBrowser&&this.scrollToElement(this._getDoc().body,p)}static#e=this.\u0275fac=function(f){return new(f||g)(l.LFG(i.K0),l.LFG(C.t4))};static#t=this.\u0275prov=l.Yz7({token:g,factory:g.\u0275fac,providedIn:"root"})}return g})();var u=o(59062),z=o(98352),M=o(45049),h=o(980);let v=(()=>{class g{get snapshot(){return this.injector.get(e.gz).snapshot}get inited(){return this._inited}get curUrl(){return this.getUrl(this.snapshot)}set max(p){this._max=Math.min(Math.max(p,2),100);for(let f=this.cached.list.length;f>this._max;f--)this.cached.list.pop()}set keepingScroll(p){this._keepingScroll=p,this.initScroll()}get keepingScroll(){return this._keepingScroll}get items(){return this.cached.list}get count(){return this.cached.list.length}get change(){return this._cachedChange.asObservable()}set title(p){const f=this.curUrl;"string"==typeof p&&(p={text:p}),this.cached.title[f]=p,this.di("update current tag title: ",p),this._cachedChange.next({active:"title",url:f,title:p,list:this.cached.list})}index(p){return this.cached.list.findIndex(f=>f.url===p)}exists(p){return-1!==this.index(p)}get(p){return p&&this.cached.list.find(f=>f.url===p)||null}remove(p,f){const y="string"==typeof p?this.index(p):p,T=-1!==y?this.cached.list[y]:null;return!(!T||!f&&!T.closable||(this.destroy(T._handle),this.cached.list.splice(y,1),delete this.cached.title[p],0))}close(p,f=!1){return this.removeUrlBuffer=p,this.remove(p,f),this._cachedChange.next({active:"close",url:p,list:this.cached.list}),this.di("close tag",p),!0}closeRight(p,f=!1){const y=this.index(p);for(let T=this.count-1;T>y;T--)this.remove(T,f);return this.removeUrlBuffer=null,this._cachedChange.next({active:"closeRight",url:p,list:this.cached.list}),this.di("close right tages",p),!0}clear(p=!1){this.cached.list.forEach(f=>{!p&&f.closable&&this.destroy(f._handle)}),this.cached.list=this.cached.list.filter(f=>!p&&!f.closable),this.removeUrlBuffer=null,this._cachedChange.next({active:"clear",list:this.cached.list}),this.di("clear all catch")}move(p,f){const y=this.cached.list.findIndex(x=>x.url===p);if(-1===y)return;const T=this.cached.list.slice();T.splice(f<0?T.length+f:f,0,T.splice(y,1)[0]),this.cached.list=T,this._cachedChange.next({active:"move",url:p,position:f,list:this.cached.list})}replace(p){const f=this.curUrl;this.exists(f)?this.close(f,!0):this.removeUrlBuffer=f,this.injector.get(e.F0).navigateByUrl(p)}getTitle(p,f){if(this.cached.title[p])return this.cached.title[p];if(f&&f.data&&(f.data.titleI18n||f.data.title))return{text:f.data.title,i18n:f.data.titleI18n};const y=this.getMenu(p);return y?{text:y.text,i18n:y.i18n}:{text:p}}clearTitleCached(){this.cached.title={}}set closable(p){this.cached.closable[this.curUrl]=p,this.di("update current tag closable: ",p),this._cachedChange.next({active:"closable",closable:p,list:this.cached.list})}getClosable(p,f){if(typeof this.cached.closable[p]<"u")return this.cached.closable[p];if(f&&f.data&&"boolean"==typeof f.data.reuseClosable)return f.data.reuseClosable;const y=this.mode!==z.i.URL?this.getMenu(p):null;return!y||"boolean"!=typeof y.reuseClosable||y.reuseClosable}clearClosableCached(){this.cached.closable={}}getTruthRoute(p){let f=p;for(;f.firstChild;)f=f.firstChild;return f}getUrl(p){let f=this.getTruthRoute(p);const y=[];for(;f;)y.push(f.url.join("/")),f=f.parent;return`/${y.filter(x=>x).reverse().join("/")}`}can(p){const f=this.getUrl(p);if(f===this.removeUrlBuffer)return!1;if(p.data&&"boolean"==typeof p.data.reuse)return p.data.reuse;if(this.mode!==z.i.URL){const y=this.getMenu(f);if(!y)return!1;if(this.mode===z.i.Menu){if(!1===y.reuse)return!1}else if(!y.reuse||!0!==y.reuse)return!1;return!0}return!this.isExclude(f)}isExclude(p){return-1!==this.excludes.findIndex(f=>f.test(p))}refresh(p){this._cachedChange.next({active:"refresh",data:p})}destroy(p){p&&p.componentRef&&p.componentRef.destroy&&p.componentRef.destroy()}di(...p){}constructor(p,f,y,T,x){this.injector=p,this.menuService=f,this.cached=y,this.stateKey=T,this.stateSrv=x,this._inited=!1,this._max=10,this._keepingScroll=!1,this._cachedChange=new n.X(null),this.removeUrlBuffer=null,this.positionBuffer={},this.debug=!1,this.routeParamMatchMode="strict",this.mode=z.i.Menu,this.excludes=[],this.storageState=!1,null==this.cached&&(this.cached={list:[],title:{},closable:{}})}init(){this.initScroll(),this._inited=!0,this.loadState()}loadState(){this.storageState&&(this.cached.list=this.stateSrv.get(this.stateKey).map(p=>({title:{text:p.title},url:p.url,position:p.position})),this._cachedChange.next({active:"loadState"}))}getMenu(p){const f=this.menuService.getPathByUrl(p);return f&&0!==f.length?f.pop():null}runHook(p,f,y="init"){if("number"==typeof f&&(f=this.cached.list[f]._handle?.componentRef),null==f||!f.instance)return;const T=f.instance,x=T[p];"function"==typeof x&&("_onReuseInit"===p?x.call(T,y):x.call(T))}hasInValidRoute(p){return!p.routeConfig||!!p.routeConfig.loadChildren||!!p.routeConfig.children}shouldDetach(p){return!this.hasInValidRoute(p)&&(this.di("#shouldDetach",this.can(p),this.getUrl(p)),this.can(p))}store(p,f){const y=this.getUrl(p),T=this.index(y),x=-1===T,D={title:this.getTitle(y,p),closable:this.getClosable(y,p),position:this.getKeepingScroll(y,p)?this.positionBuffer[y]:null,url:y,_snapshot:p,_handle:f};if(x){if(this.count>=this._max){const _=this.cached.list.findIndex(P=>P.closable);-1!==_&&this.remove(_,!1)}this.cached.list.push(D)}else{const _=this.cached.list[T]._handle?.componentRef;null==f&&null!=_&&(0,t.H)(100).subscribe(()=>this.runHook("_onReuseInit",_)),this.cached.list[T]=D}this.removeUrlBuffer=null,this.di("#store",x?"[new]":"[override]",y),f&&f.componentRef&&this.runHook("_onReuseDestroy",f.componentRef),x||this._cachedChange.next({active:"override",item:D,list:this.cached.list})}shouldAttach(p){if(this.hasInValidRoute(p))return!1;const f=this.getUrl(p),y=this.get(f),T=!(!y||!y._handle);return this.di("#shouldAttach",T,f),T||this._cachedChange.next({active:"add",url:f,list:this.cached.list}),T}retrieve(p){if(this.hasInValidRoute(p))return null;const f=this.getUrl(p),y=this.get(f),T=y&&y._handle||null;return this.di("#retrieve",f,T),T}shouldReuseRoute(p,f){let y=p.routeConfig===f.routeConfig;if(!y)return!1;const T=p.routeConfig&&p.routeConfig.path||"";return T.length>0&&~T.indexOf(":")&&(y="strict"===this.routeParamMatchMode?this.getUrl(p)===this.getUrl(f):T===(f.routeConfig&&f.routeConfig.path||"")),this.di("====================="),this.di("#shouldReuseRoute",y,`${this.getUrl(f)}=>${this.getUrl(p)}`,p,f),y}getKeepingScroll(p,f){if(f&&f.data&&"boolean"==typeof f.data.keepingScroll)return f.data.keepingScroll;const y=this.mode!==z.i.URL?this.getMenu(p):null;return y&&"boolean"==typeof y.keepingScroll?y.keepingScroll:this.keepingScroll}get isDisabledInRouter(){return"disabled"===this.injector.get(e.cx,{}).scrollPositionRestoration}get ss(){return this.injector.get(E)}initScroll(){this._router$&&this._router$.unsubscribe(),this._router$=this.injector.get(e.F0).events.subscribe(p=>{if(p instanceof e.OD){const f=this.curUrl;this.getKeepingScroll(f,this.getTruthRoute(this.snapshot))?this.positionBuffer[f]=this.ss.getScrollPosition(this.keepingScrollContainer):delete this.positionBuffer[f]}else if(p instanceof e.m2){const f=this.curUrl,y=this.get(f);y&&y.position&&this.getKeepingScroll(f,this.getTruthRoute(this.snapshot))&&(this.isDisabledInRouter?this.ss.scrollToPosition(this.keepingScrollContainer,y.position):setTimeout(()=>this.ss.scrollToPosition(this.keepingScrollContainer,y.position),1))}})}ngOnDestroy(){const{_cachedChange:p,_router$:f}=this;this.clear(),this.cached.list=[],p.complete(),f&&f.unsubscribe()}static#e=this.\u0275fac=function(f){return new(f||g)(l.LFG(l.zs3),l.LFG(h.hl),l.LFG(u.v,8),l.LFG(M.yp,8),l.LFG(M.Lt,8))};static#t=this.\u0275prov=l.Yz7({token:g,factory:g.\u0275fac,providedIn:"root"})}return g})()},45049:(nt,I,o)=>{"use strict";o.d(I,{IE:()=>i,Lt:()=>t,yp:()=>n});var e=o(65879);const n=new e.OlP("REUSE_TAB_STORAGE_KEY"),t=new e.OlP("REUSE_TAB_STORAGE_STATE");class i{get(C){return JSON.parse(localStorage.getItem(C)||"[]")||[]}update(C,E){return localStorage.setItem(C,JSON.stringify(E)),!0}remove(C){localStorage.removeItem(C)}}},98168:(nt,I,o)=>{"use strict";o.d(I,{O:()=>g,n:()=>v});var e=o(97582),n=o(32181),t=o(65619),i=o(74648),l=o(65879),C=o(78967),E=o(96814),u=o(8324);function z(d,p){if(1&d&&(l.ynx(0),l._uU(1),l.BQk()),2&d){const f=l.oxw(2);l.xp6(1),l.Oqu(f.title)}}function M(d,p){if(1&d&&(l.TgZ(0,"div",1),l.YNc(1,z,2,1,"ng-container",2),l.qZA()),2&d){const f=l.oxw();l.xp6(1),l.Q6J("nzStringTemplateOutlet",f.title)}}const h=["*"];class v{get gutter(){return"horizontal"===this.nzLayout?this._gutter:0}set gutter(p){this._gutter=(0,i.He)(p)}get nzLayout(){return this._nzLayout}set nzLayout(p){this._nzLayout=p,"inline"===p&&(this.size="compact")}set errors(p){this.setErrors(p)}get margin(){return-this.gutter/2}get errorNotify(){return this.errorNotify$.pipe((0,n.h)(p=>null!=p))}constructor(p){this.errorNotify$=new t.X(null),this.noColon=!1,this.line=!1,p.attach(this,"se",{size:"default",nzLayout:"horizontal",gutter:32,col:2,labelWidth:150,firstVisual:!1,ingoreDirty:!1})}setErrors(p){for(const f of p)this.errorNotify$.next(f)}static#e=this.\u0275fac=function(f){return new(f||v)(l.Y36(C.Ri))};static#t=this.\u0275cmp=l.Xpm({type:v,selectors:[["se-container"],["","se-container",""]],hostVars:16,hostBindings:function(f,y){2&f&&(l.Udp("margin-left",y.margin,"px")("margin-right",y.margin,"px"),l.ekj("ant-row",!0)("se__container",!0)("se__horizontal","horizontal"===y.nzLayout)("se__vertical","vertical"===y.nzLayout)("se__inline","inline"===y.nzLayout)("se__compact","compact"===y.size))},inputs:{colInCon:["se-container","colInCon"],col:"col",labelWidth:"labelWidth",noColon:"noColon",title:"title",gutter:"gutter",nzLayout:"nzLayout",size:"size",firstVisual:"firstVisual",ingoreDirty:"ingoreDirty",line:"line",errors:"errors"},exportAs:["seContainer"],ngContentSelectors:h,decls:2,vars:1,consts:[["se-title","",4,"ngIf"],["se-title",""],[4,"nzStringTemplateOutlet"]],template:function(f,y){1&f&&(l.F$t(),l.YNc(0,M,2,1,"div",0),l.Hsn(1)),2&f&&l.Q6J("ngIf",y.title)},dependencies:function(){return[E.O5,u.f,g]},encapsulation:2,changeDetection:0})}(0,e.gn)([(0,i.Rn)(null)],v.prototype,"colInCon",void 0),(0,e.gn)([(0,i.Rn)(null)],v.prototype,"col",void 0),(0,e.gn)([(0,i.Rn)(null)],v.prototype,"labelWidth",void 0),(0,e.gn)([(0,i.yF)()],v.prototype,"noColon",void 0),(0,e.gn)([(0,i.yF)()],v.prototype,"firstVisual",void 0),(0,e.gn)([(0,i.yF)()],v.prototype,"ingoreDirty",void 0),(0,e.gn)([(0,i.yF)()],v.prototype,"line",void 0);let g=(()=>{class d{constructor(f,y,T){if(this.parent=f,this.ren=T,null==f)throw new Error("[se-title] must include 'se-container' component");this.el=y.nativeElement}setClass(){const{el:f}=this,y=this.parent.gutter;this.ren.setStyle(f,"padding-left",y/2+"px"),this.ren.setStyle(f,"padding-right",y/2+"px")}ngOnInit(){this.setClass()}static#e=this.\u0275fac=function(y){return new(y||d)(l.Y36(v,9),l.Y36(l.SBq),l.Y36(l.Qsj))};static#t=this.\u0275cmp=l.Xpm({type:d,selectors:[["se-title"],["","se-title",""]],hostVars:2,hostBindings:function(y,T){2&y&&l.ekj("se__title",!0)},exportAs:["seTitle"],ngContentSelectors:h,decls:1,vars:0,template:function(y,T){1&y&&(l.F$t(),l.Hsn(0))},encapsulation:2,changeDetection:0})}return d})()},77368:(nt,I,o)=>{"use strict";o.d(I,{d:()=>Y});var e=o(97582),n=o(65879),t=o(71993),i=o(60095),l=o(32181),C=o(20325),E=o(74648),u=o(64194),z=o(50883),M=o(98168),h=o(980),v=o(96814),g=o(96109),d=o(90551),p=o(8324);const f=["contentElement"];function y(G,H){if(1&G&&(n.ynx(0),n._uU(1),n.BQk()),2&G){const j=n.oxw(2);n.xp6(1),n.Oqu(j.label)}}function T(G,H){if(1&G&&(n.ynx(0),n._uU(1),n.BQk()),2&G){const j=n.oxw(3);n.xp6(1),n.Oqu(j.optional)}}function x(G,H){if(1&G&&n._UZ(0,"i",13),2&G){const j=n.oxw(3);n.Q6J("nzTooltipTitle",j.optionalHelp)("nzTooltipColor",j.optionalHelpColor)}}function D(G,H){if(1&G&&(n.TgZ(0,"span",11),n.YNc(1,T,2,1,"ng-container",9),n.YNc(2,x,1,2,"i",12),n.qZA()),2&G){const j=n.oxw(2);n.ekj("se__label-optional-no-text",!j.optional),n.xp6(1),n.Q6J("nzStringTemplateOutlet",j.optional),n.xp6(1),n.Q6J("ngIf",j.optionalHelp)}}const _=function(G,H){return{"ant-form-item-required":G,"se__no-colon":H}};function P(G,H){if(1&G&&(n.TgZ(0,"label",7)(1,"span",8),n.YNc(2,y,2,1,"ng-container",9),n.qZA(),n.YNc(3,D,3,4,"span",10),n.qZA()),2&G){const j=n.oxw();n.Q6J("ngClass",n.WLB(4,_,j.required,j._noColon)),n.uIk("for",j._id),n.xp6(2),n.Q6J("nzStringTemplateOutlet",j.label),n.xp6(1),n.Q6J("ngIf",j.optional||j.optionalHelp)}}function O(G,H){if(1&G&&(n.ynx(0),n._uU(1),n.BQk()),2&G){const j=n.oxw(2);n.xp6(1),n.Oqu(j._error)}}function A(G,H){if(1&G&&(n.TgZ(0,"div",14)(1,"div",15),n.YNc(2,O,2,1,"ng-container",9),n.qZA()()),2&G){const j=n.oxw();n.Q6J("@helpMotion",void 0),n.xp6(2),n.Q6J("nzStringTemplateOutlet",j._error)}}function k(G,H){if(1&G&&(n.ynx(0),n._uU(1),n.BQk()),2&G){const j=n.oxw(2);n.xp6(1),n.Oqu(j.extra)}}function F(G,H){if(1&G&&(n.TgZ(0,"div",16),n.YNc(1,k,2,1,"ng-container",9),n.qZA()),2&G){const j=n.oxw();n.xp6(1),n.Q6J("nzStringTemplateOutlet",j.extra)}}const W=["*"],K="se";let _e=0;class Y{set error(H){this.errorData="string"==typeof H||H instanceof n.Rgc?{"":H}:H}set id(H){this._id=H,this._autoId=!1}get paddingValue(){return this.parent.gutter/2}get showErr(){return this.invalid&&!!this._error&&!this.compact}get compact(){return"compact"===this.parent.size}get ngControl(){return this.ngModel||this.formControlName}constructor(H,j,te,ne,pe,re){if(this.parent=j,this.statusSrv=te,this.rep=ne,this.ren=pe,this.cdr=re,this.destroy$=(0,n.f3M)(n.ktI),this.clsMap=[],this.inited=!1,this.onceFlag=!1,this.errorData={},this.isBindModel=!1,this.invalid=!1,this._labelWidth=null,this._noColon=null,this.optional=null,this.optionalHelp=null,this.required=!1,this.controlClass="",this.hideLabel=!1,this._id="_se-"+ ++_e,this._autoId=!0,null==j)throw new Error("[se] must include 'se-container' component");this.el=H.nativeElement,j.errorNotify.pipe((0,t.sL)(this.destroy$),(0,l.h)(be=>this.inited&&null!=this.ngControl&&this.ngControl.name===be.name)).subscribe(be=>{this.error=be.error,this.updateStatus(this.ngControl.invalid)})}setClass(){const{el:H,ren:j,clsMap:te,col:ne,parent:pe,cdr:re,line:be,labelWidth:le,rep:ce,noColon:Q}=this;this._noColon=Q??pe.noColon,this._labelWidth="horizontal"===pe.nzLayout?le??pe.labelWidth:null,te.forEach(xe=>j.removeClass(H,xe)),te.length=0;const ie=pe.colInCon||pe.col,ae="horizontal"===pe.nzLayout?ce.genCls(ne??ie,ie):[];return te.push("ant-form-item",...ae,`${K}__item`),(be||pe.line)&&te.push(`${K}__line`),te.forEach(xe=>j.addClass(H,xe)),re.detectChanges(),this}bindModel(){if(this.ngControl&&!this.isBindModel){if(this.isBindModel=!0,this.ngControl.statusChanges.pipe((0,t.sL)(this.destroy$)).subscribe(H=>this.updateStatus("INVALID"===H)),this._autoId){const H=this.ngControl.valueAccessor,j=(H?.elementRef||H?._elementRef)?.nativeElement;j&&(j.id?this._id=j.id:j.id=this._id)}if(!0!==this.required){const H=this.ngControl?._rawValidators;this.required=null!=H.find(j=>j instanceof i.Q7),this.cdr.detectChanges()}}}updateStatus(H){if(this.ngControl?.disabled||this.ngControl?.isDisabled)return;this.invalid=!(!this.onceFlag&&H&&!1===this.parent.ingoreDirty&&!this.ngControl?.dirty)&&H;const j=this.ngControl?.errors;if(null!=j&&Object.keys(j).length>0){const te=Object.keys(j)[0]||"";this._error=this.errorData[te]??(this.errorData[""]||"")}this.statusSrv.formStatusChanges.next({status:this.invalid?"error":"",hasFeedback:!1}),this.cdr.detectChanges()}checkContent(){const H=this.contentElement.nativeElement,j=`${K}__item-empty`;(0,C.x)(H)?this.ren.addClass(H,j):this.ren.removeClass(H,j)}ngAfterContentInit(){this.checkContent()}ngOnChanges(){this.onceFlag=this.parent.firstVisual,this.inited&&this.setClass().bindModel()}ngAfterViewInit(){this.setClass().bindModel(),this.inited=!0,this.onceFlag&&Promise.resolve().then(()=>{this.updateStatus(this.ngControl?.invalid),this.onceFlag=!1})}static#e=this.\u0275fac=function(j){return new(j||Y)(n.Y36(n.SBq),n.Y36(M.n,9),n.Y36(z.kH),n.Y36(h.kz),n.Y36(n.Qsj),n.Y36(n.sBO))};static#t=this.\u0275cmp=n.Xpm({type:Y,selectors:[["se"]],contentQueries:function(j,te,ne){if(1&j&&(n.Suo(ne,i.On,7),n.Suo(ne,i.u,7)),2&j){let pe;n.iGM(pe=n.CRH())&&(te.ngModel=pe.first),n.iGM(pe=n.CRH())&&(te.formControlName=pe.first)}},viewQuery:function(j,te){if(1&j&&n.Gf(f,7),2&j){let ne;n.iGM(ne=n.CRH())&&(te.contentElement=ne.first)}},hostVars:10,hostBindings:function(j,te){2&j&&(n.Udp("padding-left",te.paddingValue,"px")("padding-right",te.paddingValue,"px"),n.ekj("se__hide-label",te.hideLabel)("ant-form-item-has-error",te.invalid)("ant-form-item-with-help",te.showErr))},inputs:{optional:"optional",optionalHelp:"optionalHelp",optionalHelpColor:"optionalHelpColor",error:"error",extra:"extra",label:"label",col:"col",required:"required",controlClass:"controlClass",line:"line",labelWidth:"labelWidth",noColon:"noColon",hideLabel:"hideLabel",id:"id"},exportAs:["se"],features:[n._Bn([z.kH]),n.TTD],ngContentSelectors:W,decls:9,vars:10,consts:[[1,"ant-form-item-label"],["class","se__label",3,"ngClass",4,"ngIf"],[1,"ant-form-item-control","se__control"],[1,"ant-form-item-control-input-content",3,"cdkObserveContent"],["contentElement",""],["class","ant-form-item-explain ant-form-item-explain-connected",4,"ngIf"],["class","ant-form-item-extra",4,"ngIf"],[1,"se__label",3,"ngClass"],[1,"se__label-text"],[4,"nzStringTemplateOutlet"],["class","se__label-optional",3,"se__label-optional-no-text",4,"ngIf"],[1,"se__label-optional"],["nz-tooltip","","nz-icon","","nzType","question-circle",3,"nzTooltipTitle","nzTooltipColor",4,"ngIf"],["nz-tooltip","","nz-icon","","nzType","question-circle",3,"nzTooltipTitle","nzTooltipColor"],[1,"ant-form-item-explain","ant-form-item-explain-connected"],["role","alert",1,"ant-form-item-explain-error"],[1,"ant-form-item-extra"]],template:function(j,te){1&j&&(n.F$t(),n.TgZ(0,"div",0),n.YNc(1,P,4,7,"label",1),n.qZA(),n.TgZ(2,"div",2)(3,"div")(4,"div",3,4),n.NdJ("cdkObserveContent",function(){return te.checkContent()}),n.Hsn(6),n.qZA()(),n.YNc(7,A,3,2,"div",5),n.YNc(8,F,2,1,"div",6),n.qZA()),2&j&&(n.Udp("width",te._labelWidth,"px"),n.ekj("se__nolabel",te.hideLabel||!te.label),n.xp6(1),n.Q6J("ngIf",te.label),n.xp6(2),n.Gre("ant-form-item-control-input ",te.controlClass,""),n.xp6(4),n.Q6J("ngIf",te.showErr),n.xp6(1),n.Q6J("ngIf",te.extra&&!te.compact))},dependencies:[v.mk,v.O5,g.SY,d.Ls,p.f],encapsulation:2,data:{animation:[u.c8]},changeDetection:0})}(0,e.gn)([(0,E.Rn)(null)],Y.prototype,"col",void 0),(0,e.gn)([(0,E.yF)()],Y.prototype,"required",void 0),(0,e.gn)([(0,E.yF)(null)],Y.prototype,"line",void 0),(0,e.gn)([(0,E.Rn)(null)],Y.prototype,"labelWidth",void 0),(0,e.gn)([(0,E.yF)(null)],Y.prototype,"noColon",void 0),(0,e.gn)([(0,E.yF)()],Y.prototype,"hideLabel",void 0)},91493:(nt,I,o)=>{"use strict";o.d(I,{U:()=>C});var e=o(97582),n=o(74648),t=o(65879),i=o(78967);const l=["*"];class C{get marginValue(){return-this.gutter/2}constructor(u){u.attach(this,"sg",{gutter:32,col:2})}static#e=this.\u0275fac=function(z){return new(z||C)(t.Y36(i.Ri))};static#t=this.\u0275cmp=t.Xpm({type:C,selectors:[["sg-container"],["","sg-container",""]],hostVars:8,hostBindings:function(z,M){2&z&&(t.Udp("margin-left",M.marginValue,"px")("margin-right",M.marginValue,"px"),t.ekj("ant-row",!0)("sg__wrap",!0))},inputs:{gutter:"gutter",colInCon:["sg-container","colInCon"],col:"col"},exportAs:["sgContainer"],ngContentSelectors:l,decls:1,vars:0,template:function(z,M){1&z&&(t.F$t(),t.Hsn(0))},encapsulation:2,changeDetection:0})}(0,e.gn)([(0,n.Rn)()],C.prototype,"gutter",void 0),(0,e.gn)([(0,n.Rn)(null)],C.prototype,"colInCon",void 0),(0,e.gn)([(0,n.Rn)(null)],C.prototype,"col",void 0)},22218:(nt,I,o)=>{"use strict";o.d(I,{S:()=>u});var e=o(97582),n=o(74648),t=o(65879),i=o(91493),l=o(980);const C=["*"];class u{get paddingValue(){return this.parent.gutter/2}constructor(M,h,v,g){if(this.ren=h,this.parent=v,this.rep=g,this.clsMap=[],this.inited=!1,this.col=null,null==v)throw new Error("[sg] must include 'sg-container' component");this.el=M.nativeElement}setClass(){const{el:M,ren:h,clsMap:v,col:g,parent:d}=this;v.forEach(f=>h.removeClass(M,f)),v.length=0;const p=d.colInCon||d.col;return v.push(...this.rep.genCls(g??p,p),"sg__item"),v.forEach(f=>h.addClass(M,f)),this}ngOnChanges(){this.inited&&this.setClass()}ngAfterViewInit(){this.setClass(),this.inited=!0}static#e=this.\u0275fac=function(h){return new(h||u)(t.Y36(t.SBq),t.Y36(t.Qsj),t.Y36(i.U,9),t.Y36(l.kz))};static#t=this.\u0275cmp=t.Xpm({type:u,selectors:[["sg"]],hostVars:4,hostBindings:function(h,v){2&h&&t.Udp("padding-left",v.paddingValue,"px")("padding-right",v.paddingValue,"px")},inputs:{col:"col"},exportAs:["sg"],features:[t.TTD],ngContentSelectors:C,decls:1,vars:0,template:function(h,v){1&h&&(t.F$t(),t.Hsn(0))},encapsulation:2,changeDetection:0})}(0,e.gn)([(0,n.Rn)(null)],u.prototype,"col",void 0)},87334:(nt,I,o)=>{"use strict";o.d(I,{aS:()=>G,Ic:()=>i.I}),o(61562),o(18580),o(97050);var i=o(40602),E=(o(77077),o(67594),o(96814)),u=o(60095),z=o(22948),M=o(31747),h=o(27929),v=o(33640),g=o(62612),d=o(52682),p=o(66987),f=o(62787),y=o(90551),T=o(20824),x=o(68373),D=o(73460),_=o(19035),P=o(57907),O=o(70612),A=o(79663),k=o(55695),F=o(96109),_e=(o(72289),o(85646),o(65879));let G=(()=>{class H{static#e=this.\u0275fac=function(ne){return new(ne||H)};static#t=this.\u0275mod=_e.oAB({type:H});static#n=this.\u0275inj=_e.cJS({imports:[E.ez,u.u5,h.vy,M._N,z.cm,_._p,A.HQ,y.PV,v.mS,g.Wr,p.S,f.b1,D.ip,P.aF,k.X,T.o7,F.cg,O.GS,x.Zf,d.Hb]})}return H})()},61562:(nt,I,o)=>{"use strict";o.d(I,{t:()=>u});var e=o(980),n=o(64115),t=o(65879),i=o(6593),l=o(72289),C=o(27929),E=o(40602);let u=(()=>{class z{constructor(h,v,g,d,p){this.dom=h,this.rowSource=v,this.acl=g,this.i18nSrv=d,this.stWidgetRegistry=p}setCog(h){this.cog=h}fixPop(h,v){if(null==h.pop||!1===h.pop)return void(h.pop=!1);let g={...v};"string"==typeof h.pop?g.title=h.pop:"object"==typeof h.pop&&(g={...g,...h.pop}),"function"!=typeof g.condition&&(g.condition=()=>!1),h.pop=g}btnCoerce(h){if(!h)return[];const v=[],{modal:g,drawer:d,pop:p,btnIcon:f}=this.cog;for(const y of h)this.acl&&y.acl&&!this.acl.can(y.acl)||(("modal"===y.type||"static"===y.type)&&(null==y.modal||null==y.modal.component?y.type="none":y.modal={paramsName:"record",size:"lg",...g,...y.modal}),"drawer"===y.type&&(null==y.drawer||null==y.drawer.component?y.type="none":y.drawer={paramsName:"record",size:"lg",...d,...y.drawer}),"del"===y.type&&typeof y.pop>"u"&&(y.pop=!0),this.fixPop(y,p),"function"!=typeof y.icon&&(y.icon={...f,..."string"==typeof y.icon?{type:y.icon}:y.icon}),y.children=y.children&&y.children.length>0?this.btnCoerce(y.children):[],y.i18n&&this.i18nSrv&&(y.text=this.i18nSrv.fanyi(y.i18n)),v.push(y));return this.btnCoerceIf(v),v}btnCoerceIf(h){for(const v of h)v.iifBehavior=v.iifBehavior||this.cog.iifBehavior,v.children&&v.children.length>0?this.btnCoerceIf(v.children):v.children=[]}fixedCoerce(h){const v=(g,d)=>g+ +d.width.toString().replace("px","");h.filter(g=>g.fixed&&"left"===g.fixed&&g.width).forEach((g,d)=>g._left=`${h.slice(0,d).reduce(v,0)}px`),h.filter(g=>g.fixed&&"right"===g.fixed&&g.width).reverse().forEach((g,d)=>g._right=`${d>0?h.slice(-d).reduce(v,0):0}px`)}sortCoerce(h){const v=this.fixSortCoerce(h);return v.reName={...this.cog.sortReName,...v.reName},v}fixSortCoerce(h){if(typeof h.sort>"u")return{enabled:!1};let v={};return"string"==typeof h.sort?v.key=h.sort:"boolean"!=typeof h.sort?v=h.sort:"boolean"==typeof h.sort&&(v.compare=(g,d)=>g[h.indexKey]-d[h.indexKey]),v.key||(v.key=h.indexKey),v.enabled=!0,v}filterCoerce(h){if(null==h.filter)return null;let v=h.filter;v.type=v.type||"default",v.showOPArea=!1!==v.showOPArea;let g="filter",d="fill",p=!0;switch(v.type){case"keyword":g="search",d="outline";break;case"number":g="search",d="outline",v.number={step:1,min:-1/0,max:1/0,...v.number};break;case"date":g="calendar",d="outline",v.date={range:!1,mode:"date",showToday:!0,showNow:!1,...v.date};break;case"custom":break;default:p=!1}if(p&&(null==v.menus||0===v.menus.length)&&(v.menus=[{value:void 0}]),0===v.menus?.length)return null;typeof v.multiple>"u"&&(v.multiple=!0),v.confirmText=v.confirmText||this.cog.filterConfirmText,v.clearText=v.clearText||this.cog.filterClearText,v.key=v.key||h.indexKey,v.icon=v.icon||g;const y={type:g,theme:d};return v.icon="string"==typeof v.icon?{...y,type:v.icon}:{...y,...v.icon},this.updateDefault(v),this.acl&&(v.menus=v.menus?.filter(T=>this.acl.can(T.acl))),0===v.menus?.length?null:v}restoreRender(h){h.renderTitle&&(h.__renderTitle="string"==typeof h.renderTitle?this.rowSource.getTitle(h.renderTitle):h.renderTitle),h.render&&(h.__render="string"==typeof h.render?this.rowSource.getRow(h.render):h.render)}widgetCoerce(h){"widget"===h.type&&(null==h.widget||!this.stWidgetRegistry.has(h.widget.type))&&delete h.type}genHeaders(h){const v=[],g=[],d=(f,y,T=0)=>{v[T]=v[T]||[];let x=y;return f.map(_=>{const P={column:_,colStart:x,hasSubColumns:!1};let O=1;const A=_.children;return Array.isArray(A)&&A.length>0?(O=d(A,x,T+1).reduce((k,F)=>k+F,0),P.hasSubColumns=!0):g.push(P.column.width||""),"colSpan"in _&&(O=_.colSpan),"rowSpan"in _&&(P.rowSpan=_.rowSpan),P.colSpan=O,P.colEnd=P.colStart+O-1,v[T].push(P),x+=O,O})};d(h,0);const p=v.length;for(let f=0;f{!("rowSpan"in y)&&!y.hasSubColumns&&(y.rowSpan=p-f)});return{headers:v,headerWidths:p>1?g:null}}cleanCond(h){const v=[],g=(0,n.p$)(h);for(const d of g)"function"==typeof d.iif&&!d.iif(d)||this.acl&&d.acl&&!this.acl.can(d.acl)||(Array.isArray(d.children)&&d.children.length>0&&(d.children=this.cleanCond(d.children)),v.push(d));return v}mergeClass(h){const v=[];h._isTruncate&&v.push("text-truncate");const g=h.className;if(!g){const f={number:"text-right",currency:"text-right",date:"text-center"}[h.type];return f&&v.push(f),void(h._className=v)}const d=Array.isArray(g);if(!d&&"object"==typeof g){const f=g;return v.forEach(y=>f[y]=!0),void(h._className=f)}const p=d?Array.from(g):[g];p.splice(0,0,...v),h._className=[...new Set(p)].filter(f=>!!f)}process(h,v){if(!h||0===h.length)return{columns:[],headers:[],headerWidths:null};const{noIndex:g}=this.cog;let d=0,p=0,f=0;const y=[],T=_=>{_.index&&(Array.isArray(_.index)||(_.index=_.index.toString().split(".")),_.indexKey=_.index.join("."));const P=("string"==typeof _.title?{text:_.title}:_.title)||{};return P.i18n&&this.i18nSrv&&(P.text=this.i18nSrv.fanyi(P.i18n)),P.text&&(P._text=this.dom.bypassSecurityTrustHtml(P.text)),_.title=P,"no"===_.type&&(_.noIndex=null==_.noIndex?g:_.noIndex),null==_.selections&&(_.selections=[]),"checkbox"===_.type&&(++d,_.width||(_.width=(_.selections.length>0?62:50)+"px")),this.acl&&(_.selections=_.selections.filter(O=>this.acl.can(O.acl))),"radio"===_.type&&(++p,_.selections=[],_.width||(_.width="50px")),null!=_.cell&&(_.type="cell"),"yn"===_.type&&(_.yn={truth:!0,...this.cog.yn,..._.yn}),"date"===_.type&&(_.dateFormat=_.dateFormat||this.cog.date?.format),("link"===_.type&&"function"!=typeof _.click||"badge"===_.type&&null==_.badge||"tag"===_.type&&null==_.tag||"enum"===_.type&&null==_.enum)&&(_.type=""),_._isTruncate=!!_.width&&"truncate"===v.widthMode.strictBehavior&&"img"!==_.type,this.mergeClass(_),"number"==typeof _.width&&(_._width=_.width,_.width=`${_.width}px`),_._left=!1,_._right=!1,_.safeType=_.safeType??v.safeType,_._sort=this.sortCoerce(_),_.filter=this.filterCoerce(_),_.buttons=this.btnCoerce(_.buttons),this.widgetCoerce(_),this.restoreRender(_),_.resizable={disabled:!0,bounds:"window",minWidth:60,maxWidth:360,preview:!0,...v.resizable,..."boolean"==typeof _.resizable?{disabled:!_.resizable}:_.resizable},_.__point=f++,_},x=_=>{for(const P of _)y.push(T(P)),Array.isArray(P.children)&&x(P.children)},D=this.cleanCond(h);if(x(D),d>1)throw new Error("[st]: just only one column checkbox");if(p>1)throw new Error("[st]: just only one column radio");return this.fixedCoerce(y),{columns:y.filter(_=>!Array.isArray(_.children)||0===_.children.length),...this.genHeaders(D)}}restoreAllRender(h){h.forEach(v=>this.restoreRender(v))}updateDefault(h){return null==h.menus||(h.default="default"===h.type?-1!==h.menus.findIndex(v=>v.checked):!!h.menus[0].value),this}cleanFilter(h){const v=h.filter;return v.default=!1,"default"===v.type?v.menus.forEach(g=>g.checked=!1):v.menus[0].value=void 0,this}static#e=this.\u0275fac=function(v){return new(v||z)(t.LFG(i.H7),t.LFG(l.b,1),t.LFG(C._8,8),t.LFG(e.Oi,8),t.LFG(E.I))};static#t=this.\u0275prov=t.Yz7({token:z,factory:z.\u0275fac})}return z})()},18580:(nt,I,o)=>{"use strict";o.d(I,{o:()=>M});var e=o(69862),n=o(37398),t=o(22096),i=o(64115),l=o(65879),C=o(980),E=o(96814),u=o(59927),z=o(6593);let M=(()=>{class h{constructor(g,d,p,f,y,T){this.http=g,this.datePipe=d,this.ynPipe=p,this.numberPipe=f,this.currencySrv=y,this.dom=T,this.sortTick=0}setCog(g){this.cog=g}process(g){let d,p=!1;const{data:f,res:y,total:T,page:x,pi:D,ps:_,paginator:P,columns:O}=g;let A,k,F,W,K,_e=x.show;return"string"==typeof f?(p=!0,d=this.getByRemote(f,g).pipe((0,n.U)(Y=>{let G;if(K=Y,Array.isArray(Y))G=Y,A=G.length,k=A,_e=!1;else{const H=y.reName;if("function"==typeof H){const j=H(Y,{pi:D,ps:_,total:T});G=j.list,A=j.total}else{G=(0,i.In)(Y,H.list,[]),(null==G||!Array.isArray(G))&&(G=[]);const j=H.total&&(0,i.In)(Y,H.total,null);A=null==j?T||0:+j}}return(0,i.p$)(G)}))):d=null==f||Array.isArray(f)?(0,t.of)(f??[]):f,p||(d=d.pipe((0,n.U)(Y=>{K=Y;let G=(0,i.p$)(Y);const H=this.getSorterFn(O);return H&&(G=G.sort(H)),G}),(0,n.U)(Y=>(O.filter(G=>G.filter).forEach(G=>{const H=G.filter,j=this.getFilteredData(H);if(0===j.length)return;const te=H.fn;"function"==typeof te&&(Y=Y.filter(ne=>j.some(pe=>te(pe,ne))))}),Y)),(0,n.U)(Y=>{if(P&&x.front){const G=Math.ceil(Y.length/_);if(W=Math.max(1,D>G?G:D),A=Y.length,!0===x.show)return Y.slice((W-1)*_,W*_)}return Y}))),"function"==typeof y.process&&(d=d.pipe((0,n.U)(Y=>y.process(Y,K)))),d=d.pipe((0,n.U)(Y=>this.optimizeData({result:Y,columns:O,rowClassName:g.rowClassName}))),d.pipe((0,n.U)(Y=>{F=Y;const G=A||T,H=k||_;return{pi:W,ps:k,total:A,list:F,statistical:this.genStatistical(O,F,K),pageShow:typeof _e>"u"?G>H:_e}}))}get(g,d,p){try{const f="safeHtml"===d.safeType;if(d.format){const _=d.format(g,d,p)||"";return{text:_,_text:f?this.dom.bypassSecurityTrustHtml(_):_,org:_,safeType:d.safeType}}const y=(0,i.In)(g,d.index,d.default);let x,D,T=y;switch(d.type){case"no":T=this.getNoIndex(g,d,p);break;case"img":T=y?``:"";break;case"number":T=this.numberPipe.transform(y,d.numberDigits);break;case"currency":T=this.currencySrv.format(y,d.currency?.format);break;case"date":T=y===d.default?d.default:this.datePipe.transform(y,d.dateFormat);break;case"yn":T=this.ynPipe.transform(y===d.yn.truth,d.yn.yes,d.yn.no,d.yn.mode,!1);break;case"enum":T=d.enum[y];break;case"tag":case"badge":const _="tag"===d.type?d.tag:d.badge;if(_&&_[T]){const P=_[T];T=P.text,x=P.color,D=P.tooltip}else T=""}return null==T&&(T=""),{text:T,_text:f?this.dom.bypassSecurityTrustHtml(T):T,org:y,color:x,tooltip:D,safeType:d.safeType,buttons:[]}}catch(f){const y="INVALID DATA";return console.error("Failed to get data",g,d,f),{text:y,_text:y,org:y,buttons:[],safeType:"text"}}}getByRemote(g,d){const{req:p,page:f,paginator:y,pi:T,ps:x,singleSort:D,multiSort:_,columns:P}=d,O=(p.method||"GET").toUpperCase();let A={};const k=p.reName;y&&(A="page"===p.type?{[k.pi]:f.zeroIndexed?T-1:T,[k.ps]:x}:{[k.skip]:(T-1)*x,[k.limit]:x}),A={...A,...p.params,...this.getReqSortMap(D,_,P),...this.getReqFilterMap(P)},1==d.req.ignoreParamNull&&Object.keys(A).forEach(W=>{null==A[W]&&delete A[W]});let F={params:A,body:p.body,headers:p.headers};return"POST"===O&&!0===p.allInBody&&(F={body:{...p.body,...A},headers:p.headers}),"function"==typeof p.process&&(F=p.process(F)),F.params instanceof e.LE||(F.params=new e.LE({fromObject:F.params})),"function"==typeof d.customRequest?d.customRequest({method:O,url:g,options:F}):this.http.request(O,g,F)}getCell(g,d,p){const f="function"==typeof g.onCell?g.onCell(d,p):null,y=f?.colSpan??1,T=f?.rowSpan??1;return{colSpan:y<=0?null:y,rowSpan:T<=0?null:T}}optimizeData(g){const{result:d,columns:p,rowClassName:f}=g;for(let y=0,T=d.length;y{const D=this.getCell(x,d[y],y);if(Array.isArray(x.buttons)&&x.buttons.length>0)return{buttons:this.genButtons(x.buttons,d[y],x),_text:"",props:D};let _;return"function"==typeof x.cell&&(_=x.cell(d[y],x)),{...this.get(d[y],x,y),props:D,cell:_}}),d[y]._rowClassName=[f?f(d[y],y):null,d[y].className].filter(x=>!!x).join(" ");return d}getNoIndex(g,d,p){return"function"==typeof d.noIndex?d.noIndex(g,d,p):d.noIndex+p}genButtons(g,d,p){const f=x=>(0,i.p$)(x).filter(D=>{const _="function"!=typeof D.iif||D.iif(d,D,p),P="disabled"===D.iifBehavior;return D._result=_,D._disabled=!_&&P,D.children?.length&&(D.children=f(D.children)),_||P}),y=f(g),T=x=>{for(const D of x)D._text="function"==typeof D.text?D.text(d,D):D.text||"",D._className="function"==typeof D.className?D.className(d,D):D.className,D._icon="function"==typeof D.icon?D.icon(d,D):D.icon,D.children?.length&&(D.children=T(D.children));return x};return this.fixMaxMultiple(T(y),p)}fixMaxMultiple(g,d){const p=d.maxMultipleButton,f=g.length;if(null==p||f<=0)return g;const y={...this.cog.maxMultipleButton,..."number"==typeof p?{count:p}:p};if(y.count>=f)return g;const T=g.slice(0,y.count);return T.push({_text:y.text,children:g.slice(y.count)}),T}getValidSort(g){return g.filter(d=>d._sort&&d._sort.enabled&&d._sort.default).map(d=>d._sort)}getSorterFn(g){const d=this.getValidSort(g);if(0===d.length)return;const p=d[0];return null!==p.compare&&"function"==typeof p.compare?(f,y)=>{const T=p.compare(f,y);return 0!==T?"descend"===p.default?-T:T:0}:void 0}get nextSortTick(){return++this.sortTick}getReqSortMap(g,d,p){let f={};const y=this.getValidSort(p);if(d){const _={key:"sort",separator:"-",nameSeparator:".",keepEmptyKey:!0,arrayParam:!1,...d},P=y.sort((O,A)=>O.tick-A.tick).map(O=>O.key+_.nameSeparator+((O.reName||{})[O.default]||O.default));return f={[_.key]:_.arrayParam?P:P.join(_.separator)},0===P.length&&!1===_.keepEmptyKey?{}:f}if(0===y.length)return f;const T=y[0];let x=T.key,D=(y[0].reName||{})[T.default]||T.default;return g&&(D=x+(g.nameSeparator||".")+D,x=g.key||"sort"),f[x]=D,f}getFilteredData(g){return"default"===g.type?g.menus.filter(d=>!0===d.checked):g.menus.slice(0,1)}getReqFilterMap(g){let d={};return g.filter(p=>p.filter&&!0===p.filter.default).forEach(p=>{const f=p.filter,y=this.getFilteredData(f);let T={};f.reName?T=f.reName(f.menus,p):T[f.key]=y.map(x=>x.value).join(","),d={...d,...T}}),d}genStatistical(g,d,p){const f={};return g.forEach((y,T)=>{f[y.key||y.indexKey||T]=null==y.statistical?{}:this.getStatistical(y,T,d,p)}),f}getStatistical(g,d,p,f){const y=g.statistical,T={digits:2,currency:void 0,..."string"==typeof y?{type:y}:y};let x={value:0},D=!1;if("function"==typeof T.type)x=T.type(this.getValues(d,p),g,p,f),D=!0;else switch(T.type){case"count":x.value=p.length;break;case"distinctCount":x.value=this.getValues(d,p).filter((_,P,O)=>O.indexOf(_)===P).length;break;case"sum":x.value=this.toFixed(this.getSum(d,p),T.digits),D=!0;break;case"average":x.value=this.toFixed(this.getSum(d,p)/p.length,T.digits),D=!0;break;case"max":x.value=Math.max(...this.getValues(d,p)),D=!0;break;case"min":x.value=Math.min(...this.getValues(d,p)),D=!0}return x.text=!0===T.currency||null==T.currency&&!0===D?this.currencySrv.format(x.value,g.currency?.format):String(x.value),x}toFixed(g,d){return isNaN(g)||!isFinite(g)?0:parseFloat(g.toFixed(d))}getValues(g,d){return d.map(p=>p._values[g].org).map(p=>""===p||null==p?0:p)}getSum(g,d){return this.getValues(g,d).reduce((p,f)=>p+parseFloat(String(f)),0)}static#e=this.\u0275fac=function(d){return new(d||h)(l.LFG(C.lP),l.LFG(C.uU,1),l.LFG(C.fU,1),l.LFG(E.JJ,1),l.LFG(u.ie),l.LFG(z.H7))};static#t=this.\u0275prov=l.Yz7({token:h,factory:h.\u0275fac})}return h})()},97050:(nt,I,o)=>{"use strict";o.d(I,{O:()=>l});var e=o(49671),n=o(64115),t=o(65879),i=o(76020);let l=(()=>{class C{constructor(u){this.xlsxSrv=u}_stGet(u,z,M,h){const v={t:"s",v:""};if(z.format)v.v=z.format(u,z,M);else{const g=u._values?u._values[h].text:(0,n.In)(u,z.index,"");if(v.v=g,null!=g)switch(z.type){case"currency":v.t="n";break;case"date":`${g}`.length>0&&(v.t="d",v.z=z.dateFormat);break;case"yn":const d=z.yn;v.v=g===d.truth?d.yes:d.no}}return v.v=v.v||"",v}genSheet(u){const z={},M=z[u.sheetname||"Sheet1"]={},h=u.data.length;let v=0;const g=u.columens.filter(d=>!(!1===d.exported||!d.index||d.buttons&&0!==d.buttons.length));-1!==g.findIndex(d=>null!=d._width)&&(M["!cols"]=g.map(d=>({wpx:d._width})));for(let d=0;d0&&h>0&&(M["!ref"]=`A1:${this.xlsxSrv.numberToSchema(v)}${h+1}`),z}export(u){var z=this;return(0,e.Z)(function*(){const M=z.genSheet(u);return z.xlsxSrv.export({sheets:M,filename:u.filename,callback:u.callback})})()}static#e=this.\u0275fac=function(z){return new(z||C)(t.LFG(i.be,8))};static#t=this.\u0275prov=t.Yz7({token:C,factory:C.\u0275fac})}return C})()},72289:(nt,I,o)=>{"use strict";o.d(I,{b:()=>n,w:()=>t});var e=o(65879);let n=(()=>{class i{constructor(){this.titles={},this.rows={}}add(C,E,u){this["title"===C?"titles":"rows"][E]=u}getTitle(C){return this.titles[C]}getRow(C){return this.rows[C]}static#e=this.\u0275fac=function(E){return new(E||i)};static#t=this.\u0275prov=e.Yz7({token:i,factory:i.\u0275fac})}return i})(),t=(()=>{class i{constructor(C,E){this.ref=C,this.source=E}ngOnInit(){this.source.add(this.type,this.id,this.ref)}static#e=this.\u0275fac=function(E){return new(E||i)(e.Y36(e.Rgc),e.Y36(n,1))};static#t=this.\u0275dir=e.lG2({type:i,selectors:[["","st-row",""]],inputs:{id:["st-row","id"],type:"type"}})}return i})()},85646:(nt,I,o)=>{"use strict";o.d(I,{U:()=>t});var e=o(65879),n=o(40602);let t=(()=>{class i{constructor(C,E){this.stWidgetRegistry=C,this.viewContainerRef=E}ngOnInit(){const C=this.column.widget,E=this.stWidgetRegistry.get(C.type);this.viewContainerRef.clear();const u=this.viewContainerRef.createComponent(E),{record:z,column:M}=this,h=C.params?C.params({record:z,column:M}):{record:z};Object.keys(h).forEach(v=>{u.instance[v]=h[v]})}static#e=this.\u0275fac=function(E){return new(E||i)(e.Y36(n.I),e.Y36(e.s_b))};static#t=this.\u0275dir=e.lG2({type:i,selectors:[["","st-widget-host",""]],inputs:{record:"record",column:"column"}})}return i})()},40602:(nt,I,o)=>{"use strict";o.d(I,{I:()=>n});var e=o(65879);let n=(()=>{class t{constructor(){this._widgets={}}get widgets(){return this._widgets}register(l,C){this._widgets[l]=C}has(l){return this._widgets.hasOwnProperty(l)}get(l){return this._widgets[l]}static#e=this.\u0275fac=function(C){return new(C||t)};static#t=this.\u0275prov=e.Yz7({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})()},77077:(nt,I,o)=>{"use strict";o.d(I,{A:()=>Sn});var e=o(97582),n=o(96814),t=o(65879),i=o(71993),l=o(32181),C=o(37398),E=o(64716),u=o(26306),z=o(58504),M=o(22096),h=o(2664),v=o(46973),d=o(980),p=o(74648),f=o(64115),y=o(61562),T=o(18580),x=o(97050),D=o(72289),_=o(67594),P=o(78967),O=o(62787),A=o(60095),k=o(63431),F=o(79663),W=o(90551),K=o(62612),_e=o(73460),Y=o(96109),G=o(70612),H=o(57907),j=o(20824),te=o(68373),ne=o(52682);function pe(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"div",12)(1,"input",13),t.NdJ("ngModelChange",function(Kt){t.CHM(We);const ln=t.oxw();return t.KtG(ln.f.menus[0].value=Kt)})("ngModelChange",function(Kt){t.CHM(We);const ln=t.oxw();return t.KtG(ln.n.emit(Kt))})("keyup.enter",function(){t.CHM(We);const Kt=t.oxw();return t.KtG(Kt.confirm())}),t.qZA()()}if(2&St){const We=t.oxw();t.xp6(1),t.Q6J("ngModel",We.f.menus[0].value),t.uIk("placeholder",We.f.placeholder)}}function re(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"div",14)(1,"nz-input-number",15),t.NdJ("ngModelChange",function(Kt){t.CHM(We);const ln=t.oxw();return t.KtG(ln.f.menus[0].value=Kt)})("ngModelChange",function(Kt){t.CHM(We);const ln=t.oxw();return t.KtG(ln.n.emit(Kt))}),t.qZA()()}if(2&St){const We=t.oxw();t.xp6(1),t.Q6J("ngModel",We.f.menus[0].value)("nzMin",We.f.number.min)("nzMax",We.f.number.max)("nzStep",We.f.number.step)("nzPrecision",We.f.number.precision)("nzPlaceHolder",We.f.placeholder)}}function be(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"nz-date-picker",18),t.NdJ("ngModelChange",function(Kt){t.CHM(We);const ln=t.oxw(2);return t.KtG(ln.f.menus[0].value=Kt)})("ngModelChange",function(Kt){t.CHM(We);const ln=t.oxw(2);return t.KtG(ln.n.emit(Kt))}),t.qZA()}if(2&St){const We=t.oxw(2);t.Q6J("nzMode",We.f.date.mode)("ngModel",We.f.menus[0].value)("nzShowNow",We.f.date.showNow)("nzShowToday",We.f.date.showToday)("nzDisabledDate",We.f.date.disabledDate)("nzDisabledTime",We.f.date.disabledTime)}}function le(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"nz-range-picker",18),t.NdJ("ngModelChange",function(Kt){t.CHM(We);const ln=t.oxw(2);return t.KtG(ln.f.menus[0].value=Kt)})("ngModelChange",function(Kt){t.CHM(We);const ln=t.oxw(2);return t.KtG(ln.n.emit(Kt))}),t.qZA()}if(2&St){const We=t.oxw(2);t.Q6J("nzMode",We.f.date.mode)("ngModel",We.f.menus[0].value)("nzShowNow",We.f.date.showNow)("nzShowToday",We.f.date.showToday)("nzDisabledDate",We.f.date.disabledDate)("nzDisabledTime",We.f.date.disabledTime)}}function ce(St,gt){if(1&St&&(t.TgZ(0,"div",16),t.YNc(1,be,1,6,"nz-date-picker",17),t.YNc(2,le,1,6,"nz-range-picker",17),t.qZA()),2&St){const We=t.oxw();t.xp6(1),t.Q6J("ngIf",!We.f.date.range),t.xp6(1),t.Q6J("ngIf",We.f.date.range)}}function Q(St,gt){1&St&&t._UZ(0,"div",19)}function ie(St,gt){}const ae=function(St,gt,We){return{$implicit:St,col:gt,handle:We}};function xe(St,gt){if(1&St&&(t.TgZ(0,"div",20),t.YNc(1,ie,0,0,"ng-template",21),t.qZA()),2&St){const We=t.oxw();t.xp6(1),t.Q6J("ngTemplateOutlet",We.f.custom)("ngTemplateOutletContext",t.kEZ(2,ae,We.f,We.col,We))}}function Me(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"li",25)(1,"label",26),t.NdJ("ngModelChange",function(Kt){const zn=t.CHM(We).$implicit;return t.KtG(zn.checked=Kt)})("ngModelChange",function(){t.CHM(We);const Kt=t.oxw(3);return t.KtG(Kt.checkboxChange())}),t._uU(2),t.qZA()()}if(2&St){const We=gt.$implicit;t.xp6(1),t.Q6J("ngModel",We.checked),t.xp6(1),t.hij(" ",We.text," ")}}function Ye(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,Me,3,2,"li",24),t.BQk()),2&St){const We=t.oxw(2);t.xp6(1),t.Q6J("ngForOf",We.f.menus)}}function q(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"li",25)(1,"label",27),t.NdJ("ngModelChange",function(){const ln=t.CHM(We).$implicit,zn=t.oxw(3);return t.KtG(zn.radioChange(ln))}),t._uU(2),t.qZA()()}if(2&St){const We=gt.$implicit;t.xp6(1),t.Q6J("ngModel",We.checked),t.xp6(1),t.hij(" ",We.text," ")}}function ye(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,q,3,2,"li",24),t.BQk()),2&St){const We=t.oxw(2);t.xp6(1),t.Q6J("ngForOf",We.f.menus)}}function ee(St,gt){if(1&St&&(t.TgZ(0,"ul",22),t.YNc(1,Ye,2,1,"ng-container",23),t.YNc(2,ye,2,1,"ng-container",23),t.qZA()),2&St){const We=t.oxw();t.xp6(1),t.Q6J("ngIf",We.f.multiple),t.xp6(1),t.Q6J("ngIf",!We.f.multiple)}}function Be(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"div",28)(1,"a",29),t.NdJ("click",function(){t.CHM(We);const Kt=t.oxw();return t.KtG(Kt.confirm())}),t.TgZ(2,"span"),t._uU(3),t.qZA()(),t.TgZ(4,"a",30),t.NdJ("click",function(){t.CHM(We);const Kt=t.oxw();return t.KtG(Kt.reset())}),t.TgZ(5,"span"),t._uU(6),t.qZA()()()}if(2&St){const We=t.oxw();t.xp6(3),t.Oqu(We.f.confirmText||We.locale.filterConfirm),t.xp6(3),t.Oqu(We.f.clearText||We.locale.filterReset)}}let Re=(()=>{class St{get icon(){return this.f.icon}constructor(We){this.cdr=We,this.visible=!1,this.locale={},this.n=new t.vpe,this.handle=new t.vpe}stopPropagation(We){We.stopPropagation()}checkboxChange(){this.n.emit(this.f.menus?.filter(We=>We.checked))}radioChange(We){this.f.menus.forEach(Nt=>Nt.checked=!1),We.checked=!We.checked,this.n.emit(We)}close(We){null!=We&&this.handle.emit(We),this.visible=!1,this.cdr.detectChanges()}confirm(){return this.handle.emit(!0),this}reset(){return this.handle.emit(!1),this}static#e=this.\u0275fac=function(Nt){return new(Nt||St)(t.Y36(t.sBO))};static#t=this.\u0275cmp=t.Xpm({type:St,selectors:[["st-filter"]],hostVars:6,hostBindings:function(Nt,Kt){2&Nt&&t.ekj("ant-table-filter-trigger-container",!0)("st__filter",!0)("ant-table-filter-trigger-container-open",Kt.visible)},inputs:{col:"col",locale:"locale",f:"f"},outputs:{n:"n",handle:"handle"},decls:13,vars:14,consts:[["nz-dropdown","","nzTrigger","click","nzOverlayClassName","st__filter-wrap",1,"ant-table-filter-trigger",3,"nzDropdownMenu","nzClickHide","nzVisible","nzVisibleChange","click"],["nz-icon","",3,"nzType","nzTheme"],["filterMenu","nzDropdownMenu"],[1,"ant-table-filter-dropdown"],[3,"ngSwitch"],["class","st__filter-keyword",4,"ngSwitchCase"],["class","p-sm st__filter-number",4,"ngSwitchCase"],["class","p-sm st__filter-date",4,"ngSwitchCase"],["class","p-sm st__filter-time",4,"ngSwitchCase"],["class","st__filter-custom",4,"ngSwitchCase"],["nz-menu","",4,"ngSwitchDefault"],["class","ant-table-filter-dropdown-btns",4,"ngIf"],[1,"st__filter-keyword"],["type","text","nz-input","",3,"ngModel","ngModelChange","keyup.enter"],[1,"p-sm","st__filter-number"],[1,"width-100",3,"ngModel","nzMin","nzMax","nzStep","nzPrecision","nzPlaceHolder","ngModelChange"],[1,"p-sm","st__filter-date"],["nzInline","",3,"nzMode","ngModel","nzShowNow","nzShowToday","nzDisabledDate","nzDisabledTime","ngModelChange",4,"ngIf"],["nzInline","",3,"nzMode","ngModel","nzShowNow","nzShowToday","nzDisabledDate","nzDisabledTime","ngModelChange"],[1,"p-sm","st__filter-time"],[1,"st__filter-custom"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],["nz-menu",""],[4,"ngIf"],["nz-menu-item","",4,"ngFor","ngForOf"],["nz-menu-item",""],["nz-checkbox","",3,"ngModel","ngModelChange"],["nz-radio","",3,"ngModel","ngModelChange"],[1,"ant-table-filter-dropdown-btns"],[1,"ant-table-filter-dropdown-link","confirm",3,"click"],[1,"ant-table-filter-dropdown-link","clear",3,"click"]],template:function(Nt,Kt){if(1&Nt&&(t.TgZ(0,"span",0),t.NdJ("nzVisibleChange",function(zn){return Kt.visible=zn})("click",function(zn){return Kt.stopPropagation(zn)}),t._UZ(1,"i",1),t.qZA(),t.TgZ(2,"nz-dropdown-menu",null,2)(4,"div",3),t.ynx(5,4),t.YNc(6,pe,2,2,"div",5),t.YNc(7,re,2,6,"div",6),t.YNc(8,ce,3,2,"div",7),t.YNc(9,Q,1,0,"div",8),t.YNc(10,xe,2,6,"div",9),t.YNc(11,ee,3,2,"ul",10),t.BQk(),t.YNc(12,Be,7,2,"div",11),t.qZA()()),2&Nt){const ln=t.MAs(3);t.ekj("active",Kt.visible||Kt.f.default),t.Q6J("nzDropdownMenu",ln)("nzClickHide",!1)("nzVisible",Kt.visible),t.xp6(1),t.Q6J("nzType",Kt.icon.type)("nzTheme",Kt.icon.theme),t.xp6(4),t.Q6J("ngSwitch",Kt.f.type),t.xp6(1),t.Q6J("ngSwitchCase","keyword"),t.xp6(1),t.Q6J("ngSwitchCase","number"),t.xp6(1),t.Q6J("ngSwitchCase","date"),t.xp6(1),t.Q6J("ngSwitchCase","time"),t.xp6(1),t.Q6J("ngSwitchCase","custom"),t.xp6(2),t.Q6J("ngIf",Kt.f.showOPArea)}},dependencies:[n.sg,n.O5,n.tP,n.RF,n.n9,n.ED,A.Fj,A.JJ,A.On,W.Ls,K.Ie,_e.wO,_e.u9,O.cm,O.RR,H.Of,j.Zp,te._V,ne.uw,ne.wS],encapsulation:2,changeDetection:0})}return St})();var ct=o(52787),Ae=o(11463),Mt=o(19035),je=o(33640),ot=o(66987),mt=o(55695),we=o(85646);const de=["table"],U=["contextmenuTpl"];function B(St,gt){if(1&St&&t._UZ(0,"small",14),2&St){const We=t.oxw().$implicit;t.Q6J("innerHTML",We.optional,t.oJD)}}function Ee(St,gt){if(1&St&&t._UZ(0,"i",15),2&St){const We=t.oxw().$implicit;t.Q6J("nzTooltipTitle",We.optionalHelp)}}function Ie(St,gt){if(1&St&&(t._UZ(0,"span",11),t.YNc(1,B,1,1,"small",12),t.YNc(2,Ee,1,1,"i",13)),2&St){const We=gt.$implicit;t.Q6J("innerHTML",We._text,t.oJD),t.xp6(1),t.Q6J("ngIf",We.optional),t.xp6(1),t.Q6J("ngIf",We.optionalHelp)}}function Ne(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"label",16),t.NdJ("ngModelChange",function(Kt){t.CHM(We);const ln=t.oxw();return t.KtG(ln._allChecked=Kt)})("ngModelChange",function(){t.CHM(We);const Kt=t.oxw();return t.KtG(Kt.checkAll())}),t.qZA()}if(2&St){const We=gt.$implicit,Nt=t.oxw();t.ekj("ant-table-selection-select-all-custom",We),t.Q6J("nzDisabled",Nt._allCheckedDisabled)("ngModel",Nt._allChecked)("nzIndeterminate",Nt._indeterminate)}}function pt(St,gt){if(1&St&&t._UZ(0,"th",18),2&St){const We=t.oxw(3);t.Q6J("rowSpan",We._headers.length)}}function Dt(St,gt){1&St&&(t.TgZ(0,"nz-resize-handle",25),t._UZ(1,"i"),t.qZA())}function Lt(St,gt){}function Ut(St,gt){}const qt=function(){return{$implicit:!1}};function en(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,Ut,0,0,"ng-template",22),t.BQk()),2&St){t.oxw(7);const We=t.MAs(3);t.xp6(1),t.Q6J("ngTemplateOutlet",We)("ngTemplateOutletContext",t.DdM(2,qt))}}function cn(St,gt){}function Wt(St,gt){if(1&St&&(t.TgZ(0,"div",35)(1,"div",36),t._UZ(2,"i",37),t.qZA()()),2&St){t.oxw();const We=t.MAs(4);t.xp6(1),t.Q6J("nzDropdownMenu",We)}}function Vt(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"li",38),t.NdJ("click",function(){const ln=t.CHM(We).$implicit,zn=t.oxw(8);return t.KtG(zn._rowSelection(ln))}),t.qZA()}2&St&&t.Q6J("innerHTML",gt.$implicit.text,t.oJD)}const st=function(){return{$implicit:!0}};function He(St,gt){if(1&St&&(t.TgZ(0,"div",30),t.YNc(1,cn,0,0,"ng-template",22),t.YNc(2,Wt,3,1,"div",31),t.TgZ(3,"nz-dropdown-menu",null,32)(5,"ul",33),t.YNc(6,Vt,1,1,"li",34),t.qZA()()()),2&St){const We=t.oxw(3).let;t.oxw(4);const Nt=t.MAs(3);t.xp6(1),t.Q6J("ngTemplateOutlet",Nt)("ngTemplateOutletContext",t.DdM(4,st)),t.xp6(1),t.Q6J("ngIf",We.selections.length),t.xp6(4),t.Q6J("ngForOf",We.selections)}}function et(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,en,2,3,"ng-container",4),t.YNc(2,He,7,5,"div",29),t.BQk()),2&St){const We=t.oxw(2).let;t.xp6(1),t.Q6J("ngIf",0===We.selections.length),t.xp6(1),t.Q6J("ngIf",We.selections.length>0)}}function It(St,gt){}const Ot=function(St){return{$implicit:St}};function xt(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,It,0,0,"ng-template",22),t.BQk()),2&St){const We=t.oxw(2).let;t.oxw(4);const Nt=t.MAs(1);t.xp6(1),t.Q6J("ngTemplateOutlet",Nt)("ngTemplateOutletContext",t.VKq(2,Ot,We.title))}}function Qe(St,gt){if(1&St&&(t.ynx(0)(1,26),t.YNc(2,et,3,2,"ng-container",27),t.YNc(3,xt,2,4,"ng-container",28),t.BQk()()),2&St){const We=t.oxw().let;t.xp6(1),t.Q6J("ngSwitch",We.type),t.xp6(1),t.Q6J("ngSwitchCase","checkbox")}}function ke(St,gt){if(1&St){const We=t.EpF();t.ynx(0),t.TgZ(1,"st-filter",39),t.NdJ("n",function(Kt){t.CHM(We);const ln=t.oxw(5);return t.KtG(ln.handleFilterNotify(Kt))})("handle",function(Kt){t.CHM(We);const ln=t.oxw().let,zn=t.oxw(4);return t.KtG(zn._handleFilter(ln,Kt))}),t.qZA(),t.BQk()}if(2&St){const We=t.oxw().let,Nt=t.oxw().$implicit,Kt=t.oxw(3);t.xp6(1),t.Q6J("col",Nt.column)("f",We.filter)("locale",Kt.locale)}}const fe=function(St,gt){return{$implicit:St,index:gt}};function qe(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"th",20),t.NdJ("nzSortOrderChange",function(Kt){const zn=t.CHM(We).let,kn=t.oxw().index,Qn=t.oxw(3);return t.KtG(Qn.sort(zn,kn,Kt))})("nzResizeEnd",function(Kt){const zn=t.CHM(We).let,kn=t.oxw(4);return t.KtG(kn.colResize(Kt,zn))}),t.YNc(1,Dt,2,0,"nz-resize-handle",21),t.YNc(2,Lt,0,0,"ng-template",22,23,t.W1O),t.YNc(4,Qe,4,2,"ng-container",24),t.YNc(5,ke,2,3,"ng-container",4),t.qZA()}if(2&St){const We=gt.let,Nt=t.MAs(3),Kt=t.oxw(),ln=Kt.$implicit,zn=Kt.last,kn=Kt.index;t.ekj("st__has-filter",We.filter),t.Q6J("colSpan",ln.colSpan)("rowSpan",ln.rowSpan)("nzWidth",We.width)("nzLeft",We._left)("nzRight",We._right)("ngClass",We._className)("nzShowSort",We._sort.enabled)("nzSortOrder",We._sort.default)("nzCustomFilter",!!We.filter)("nzDisabled",zn||We.resizable.disabled)("nzMaxWidth",We.resizable.maxWidth)("nzMinWidth",We.resizable.minWidth)("nzBounds",We.resizable.bounds)("nzPreview",We.resizable.preview),t.uIk("data-col",We.indexKey)("data-col-index",kn),t.xp6(1),t.Q6J("ngIf",!zn&&!We.resizable.disabled),t.xp6(1),t.Q6J("ngTemplateOutlet",We.__renderTitle)("ngTemplateOutletContext",t.WLB(24,fe,ln.column,kn)),t.xp6(2),t.Q6J("ngIf",!We.__renderTitle)("ngIfElse",Nt),t.xp6(1),t.Q6J("ngIf",We.filter)}}function ge(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,qe,6,27,"th",19),t.BQk()),2&St){const We=gt.$implicit;t.xp6(1),t.Q6J("let",We.column)}}function Ze(St,gt){if(1&St&&(t.TgZ(0,"tr"),t.YNc(1,pt,1,1,"th",17),t.YNc(2,ge,2,1,"ng-container",10),t.qZA()),2&St){const We=gt.$implicit,Nt=gt.first,Kt=t.oxw(2);t.xp6(1),t.Q6J("ngIf",Nt&&Kt.expand),t.xp6(1),t.Q6J("ngForOf",We)}}function $e(St,gt){if(1&St&&(t.TgZ(0,"thead"),t.YNc(1,Ze,3,2,"tr",10),t.qZA()),2&St){const We=t.oxw();t.xp6(1),t.Q6J("ngForOf",We._headers)}}function Ue(St,gt){}function wt(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,Ue,0,0,"ng-template",22),t.BQk()),2&St){const We=t.oxw();t.xp6(1),t.Q6J("ngTemplateOutlet",We.bodyHeader)("ngTemplateOutletContext",t.VKq(2,Ot,We._statistical))}}function De(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"td",43),t.NdJ("nzExpandChange",function(Kt){t.CHM(We);const ln=t.oxw().$implicit,zn=t.oxw();return t.KtG(zn._expandChange(ln,Kt))})("click",function(Kt){t.CHM(We);const ln=t.oxw(2);return t.KtG(ln._stopPropagation(Kt))}),t.qZA()}if(2&St){const We=t.oxw().$implicit,Nt=t.oxw();t.Q6J("nzShowExpand",Nt.expand&&!1!==We.showExpand)("nzExpand",We.expand)}}function Pe(St,gt){}function Je(St,gt){if(1&St&&(t.TgZ(0,"span",48),t.YNc(1,Pe,0,0,"ng-template",22),t.qZA()),2&St){const We=t.oxw(2).$implicit;t.oxw(2);const Nt=t.MAs(1);t.xp6(1),t.Q6J("ngTemplateOutlet",Nt)("ngTemplateOutletContext",t.VKq(2,Ot,We.title))}}function Ge(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"td",45),t.YNc(1,Je,2,4,"span",46),t.TgZ(2,"st-td",47),t.NdJ("n",function(Kt){t.CHM(We);const ln=t.oxw(3);return t.KtG(ln._handleTd(Kt))}),t.qZA()()}if(2&St){const We=t.oxw(),Nt=We.$implicit,Kt=We.index,ln=t.oxw(),zn=ln.$implicit,kn=ln.index,Qn=t.oxw();t.Q6J("nzLeft",!!Nt._left)("nzRight",!!Nt._right)("ngClass",Nt._className),t.uIk("data-col-index",Kt)("colspan",1===(null==zn._values[Kt].props?null:zn._values[Kt].props.colSpan)||null==zn._values[Kt].props?null:zn._values[Kt].props.colSpan)("rowspan",1===(null==zn._values[Kt].props?null:zn._values[Kt].props.rowSpan)||null==zn._values[Kt].props?null:zn._values[Kt].props.rowSpan),t.xp6(1),t.Q6J("ngIf",Qn.responsive),t.xp6(1),t.Q6J("data",Qn._data)("i",zn)("index",kn)("c",Nt)("cIdx",Kt)}}function Ke(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,Ge,3,12,"td",44),t.BQk()),2&St){const We=gt.index,Nt=t.oxw().$implicit;t.xp6(1),t.Q6J("ngIf",(null==Nt._values[We].props?null:Nt._values[We].props.colSpan)>0&&(null==Nt._values[We].props?null:Nt._values[We].props.rowSpan)>0)}}function ve(St,gt){}function it(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"tr",40),t.NdJ("click",function(Kt){const ln=t.CHM(We),zn=ln.$implicit,kn=ln.index,Qn=t.oxw();return t.KtG(Qn._rowClick(Kt,zn,kn,!1))})("dblclick",function(Kt){const ln=t.CHM(We),zn=ln.$implicit,kn=ln.index,Qn=t.oxw();return t.KtG(Qn._rowClick(Kt,zn,kn,!0))}),t.YNc(1,De,1,2,"td",41),t.YNc(2,Ke,2,1,"ng-container",10),t.qZA(),t.TgZ(3,"tr",42),t.YNc(4,ve,0,0,"ng-template",22),t.qZA()}if(2&St){const We=gt.$implicit,Nt=gt.index,Kt=t.oxw();t.Q6J("ngClass",We._rowClassName),t.uIk("data-index",Nt),t.xp6(1),t.Q6J("ngIf",Kt.expand),t.xp6(1),t.Q6J("ngForOf",Kt._columns),t.xp6(1),t.Q6J("nzExpand",We.expand),t.xp6(1),t.Q6J("ngTemplateOutlet",Kt.expand)("ngTemplateOutletContext",t.WLB(7,fe,We,Nt))}}function b(St,gt){}function N(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,b,0,0,"ng-template",22),t.BQk()),2&St){const We=gt.$implicit,Nt=gt.index;t.oxw(2);const Kt=t.MAs(10);t.xp6(1),t.Q6J("ngTemplateOutlet",Kt)("ngTemplateOutletContext",t.WLB(2,fe,We,Nt))}}function S(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,N,2,5,"ng-container",10),t.BQk()),2&St){const We=t.oxw();t.xp6(1),t.Q6J("ngForOf",We._data)}}function $(St,gt){}function R(St,gt){if(1&St&&t.YNc(0,$,0,0,"ng-template",22),2&St){const We=gt.$implicit,Nt=gt.index;t.oxw(2);const Kt=t.MAs(10);t.Q6J("ngTemplateOutlet",Kt)("ngTemplateOutletContext",t.WLB(2,fe,We,Nt))}}function he(St,gt){1&St&&(t.ynx(0),t.YNc(1,R,1,5,"ng-template",49),t.BQk())}function ze(St,gt){}function bt(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,ze,0,0,"ng-template",22),t.BQk()),2&St){const We=t.oxw();t.xp6(1),t.Q6J("ngTemplateOutlet",We.body)("ngTemplateOutletContext",t.VKq(2,Ot,We._statistical))}}function Ft(St,gt){if(1&St&&t._uU(0),2&St){const We=gt.range,Nt=gt.$implicit,Kt=t.oxw();t.Oqu(Kt.renderTotal(Nt,We))}}function sn(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"li",38),t.NdJ("click",function(){t.CHM(We);const Kt=t.oxw().$implicit;return t.KtG(Kt.fn(Kt))}),t.qZA()}if(2&St){const We=t.oxw().$implicit;t.Q6J("innerHTML",We.text,t.oJD)}}function pn(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"li",38),t.NdJ("click",function(){const ln=t.CHM(We).$implicit;return t.KtG(ln.fn(ln))}),t.qZA()}2&St&&t.Q6J("innerHTML",gt.$implicit.text,t.oJD)}function vn(St,gt){if(1&St&&(t.TgZ(0,"li",52)(1,"ul"),t.YNc(2,pn,1,1,"li",34),t.qZA()()),2&St){const We=t.oxw().$implicit;t.Q6J("nzTitle",We.text),t.xp6(2),t.Q6J("ngForOf",We.children)}}function Dn(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,sn,1,1,"li",50),t.YNc(2,vn,3,2,"li",51),t.BQk()),2&St){const We=gt.$implicit;t.xp6(1),t.Q6J("ngIf",0===We.children.length),t.xp6(1),t.Q6J("ngIf",We.children.length>0)}}function Mn(St,gt){}function En(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,Mn,0,0,"ng-template",3),t.BQk()),2&St){const We=t.oxw().$implicit;t.oxw();const Nt=t.MAs(3);t.xp6(1),t.Q6J("ngTemplateOutlet",Nt)("ngTemplateOutletContext",t.VKq(2,Ot,We))}}function bn(St,gt){}function Rn(St,gt){if(1&St&&(t.TgZ(0,"span",8),t.YNc(1,bn,0,0,"ng-template",3),t.qZA()),2&St){const We=t.oxw(),Nt=We.child,Kt=We.$implicit;t.oxw();const ln=t.MAs(3);t.ekj("d-block",Nt)("width-100",Nt),t.Q6J("nzTooltipTitle",Kt.tooltip),t.xp6(1),t.Q6J("ngTemplateOutlet",ln)("ngTemplateOutletContext",t.VKq(7,Ot,Kt))}}function qn(St,gt){if(1&St&&(t.YNc(0,En,2,4,"ng-container",6),t.YNc(1,Rn,2,9,"span",7)),2&St){const We=gt.$implicit;t.Q6J("ngIf",!We.tooltip),t.xp6(1),t.Q6J("ngIf",We.tooltip)}}function si(St,gt){}function Wn(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"a",11),t.NdJ("nzOnConfirm",function(){t.CHM(We);const Kt=t.oxw().$implicit,ln=t.oxw();return t.KtG(ln._btn(Kt))})("click",function(Kt){t.CHM(We);const ln=t.oxw(2);return t.KtG(ln._stopPropagation(Kt))}),t.YNc(1,si,0,0,"ng-template",3),t.qZA()}if(2&St){const We=t.oxw().$implicit;t.oxw();const Nt=t.MAs(5);t.Q6J("nzPopconfirmTitle",We.pop.title)("nzIcon",We.pop.icon)("nzCondition",We.pop.condition(We))("nzCancelText",We.pop.cancelText)("nzOkText",We.pop.okText)("nzOkType",We.pop.okType)("ngClass",We._className),t.xp6(1),t.Q6J("ngTemplateOutlet",Nt)("ngTemplateOutletContext",t.VKq(9,Ot,We))}}function ci(St,gt){}function ri(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"a",12),t.NdJ("click",function(Kt){t.CHM(We);const ln=t.oxw().$implicit,zn=t.oxw();return t.KtG(zn._btn(ln,Kt))}),t.YNc(1,ci,0,0,"ng-template",3),t.qZA()}if(2&St){const We=t.oxw().$implicit;t.oxw();const Nt=t.MAs(5);t.Q6J("ngClass",We._className),t.xp6(1),t.Q6J("ngTemplateOutlet",Nt)("ngTemplateOutletContext",t.VKq(3,Ot,We))}}function di(St,gt){if(1&St&&(t.YNc(0,Wn,2,11,"a",9),t.YNc(1,ri,2,5,"a",10)),2&St){const We=gt.$implicit;t.Q6J("ngIf",We.pop),t.xp6(1),t.Q6J("ngIf",!We.pop)}}function hi(St,gt){if(1&St&&t._UZ(0,"i",16),2&St){const We=t.oxw(2).$implicit;t.Q6J("nzType",We._icon.type)("nzTheme",We._icon.theme)("nzSpin",We._icon.spin)("nzTwotoneColor",We._icon.twoToneColor)}}function fi(St,gt){if(1&St&&t._UZ(0,"i",17),2&St){const We=t.oxw(2).$implicit;t.Q6J("nzIconfont",We._icon.iconfont)}}function zi(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,hi,1,4,"i",14),t.YNc(2,fi,1,1,"i",15),t.BQk()),2&St){const We=t.oxw().$implicit;t.xp6(1),t.Q6J("ngIf",!We._icon.iconfont),t.xp6(1),t.Q6J("ngIf",We._icon.iconfont)}}const Oi=function(St){return{"pl-xs":St}};function ei(St,gt){if(1&St&&(t.YNc(0,zi,3,2,"ng-container",6),t._UZ(1,"span",13)),2&St){const We=gt.$implicit;t.Q6J("ngIf",We._icon),t.xp6(1),t.Q6J("innerHTML",We._text,t.oJD)("ngClass",t.VKq(3,Oi,We._icon))}}function po(St,gt){}function oo(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"label",26),t.NdJ("ngModelChange",function(Kt){t.CHM(We);const ln=t.oxw(2);return t.KtG(ln._checkbox(Kt))}),t.qZA()}if(2&St){const We=t.oxw(2);t.Q6J("nzDisabled",We.i.disabled)("ngModel",We.i.checked)}}function Wi(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"label",27),t.NdJ("ngModelChange",function(){t.CHM(We);const Kt=t.oxw(2);return t.KtG(Kt._radio())}),t.qZA()}if(2&St){const We=t.oxw(2);t.Q6J("nzDisabled",We.i.disabled)("ngModel",We.i.checked)}}function Ri(St,gt){if(1&St){const We=t.EpF();t.TgZ(0,"a",28),t.NdJ("click",function(Kt){t.CHM(We);const ln=t.oxw(2);return t.KtG(ln._link(Kt))}),t.qZA()}if(2&St){const We=t.oxw(2);t.Q6J("innerHTML",We.i._values[We.cIdx]._text,t.oJD),t.uIk("title",We.i._values[We.cIdx].text)}}function Li(St,gt){if(1&St&&(t.TgZ(0,"nz-tag",31),t._UZ(1,"span",32),t.qZA()),2&St){const We=t.oxw(3);t.Q6J("nzColor",We.i._values[We.cIdx].color)("nz-tooltip",We.i._values[We.cIdx].tooltip),t.xp6(1),t.Q6J("innerHTML",We.i._values[We.cIdx]._text,t.oJD)}}function $i(St,gt){if(1&St&&t._UZ(0,"nz-badge",33),2&St){const We=t.oxw(3);t.Q6J("nzStatus",We.i._values[We.cIdx].color)("nzText",We.i._values[We.cIdx].text)("nz-tooltip",We.i._values[We.cIdx].tooltip)}}function Qi(St,gt){1&St&&(t.ynx(0),t.YNc(1,Li,2,3,"nz-tag",29),t.YNc(2,$i,1,3,"nz-badge",30),t.BQk()),2&St&&(t.xp6(1),t.Q6J("ngSwitchCase","tag"),t.xp6(1),t.Q6J("ngSwitchCase","badge"))}function Mo(St,gt){if(1&St&&t._UZ(0,"cell",34),2&St){const We=t.oxw(2);let Nt;t.Q6J("value",We.i._values[We.cIdx].text)("options",null!==(Nt=We.i._values[We.cIdx].cell)&&void 0!==Nt?Nt:We.c.cell)}}function wi(St,gt){}function Xi(St,gt){if(1&St&&t.YNc(0,wi,0,0,"ng-template",35),2&St){const We=t.oxw(2);t.Q6J("record",We.i)("column",We.c)}}function Ei(St,gt){if(1&St&&t._UZ(0,"span",32),2&St){const We=t.oxw(3);t.Q6J("innerHTML",We.i._values[We.cIdx]._text,t.oJD),t.uIk("title",We.c._isTruncate?We.i._values[We.cIdx].text:null)}}function Hi(St,gt){if(1&St&&t._UZ(0,"span",38),2&St){const We=t.oxw(3);t.Q6J("innerText",We.i._values[We.cIdx]._text),t.uIk("title",We.c._isTruncate?We.i._values[We.cIdx].text:null)}}function qi(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,Ei,1,2,"span",36),t.YNc(2,Hi,1,2,"span",37),t.BQk()),2&St){const We=t.oxw(2);t.xp6(1),t.Q6J("ngIf","text"!==We.c.safeType),t.xp6(1),t.Q6J("ngIf","text"===We.c.safeType)}}function Pi(St,gt){if(1&St&&(t.TgZ(0,"a",44),t._UZ(1,"span",32)(2,"i",45),t.qZA()),2&St){const We=t.oxw().$implicit,Nt=t.MAs(3);t.Q6J("nzDropdownMenu",Nt),t.xp6(1),t.Q6J("innerHTML",We._text,t.oJD)}}function Ii(St,gt){}const ki=function(St){return{$implicit:St,child:!0}};function oi(St,gt){if(1&St&&(t.TgZ(0,"li",48),t.YNc(1,Ii,0,0,"ng-template",3),t.qZA()),2&St){const We=t.oxw().$implicit;t.oxw(3);const Nt=t.MAs(1);t.ekj("st__btn-disabled",We._disabled),t.xp6(1),t.Q6J("ngTemplateOutlet",Nt)("ngTemplateOutletContext",t.VKq(4,ki,We))}}function Bn(St,gt){1&St&&t._UZ(0,"li",49)}function Et(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,oi,2,6,"li",46),t.YNc(2,Bn,1,0,"li",47),t.BQk()),2&St){const We=gt.$implicit;t.xp6(1),t.Q6J("ngIf","divider"!==We.type),t.xp6(1),t.Q6J("ngIf","divider"===We.type)}}function un(St,gt){}const lt=function(St){return{$implicit:St,child:!1}};function Ct(St,gt){if(1&St&&(t.TgZ(0,"span"),t.YNc(1,un,0,0,"ng-template",3),t.qZA()),2&St){const We=t.oxw().$implicit;t.oxw(2);const Nt=t.MAs(1);t.ekj("st__btn-disabled",We._disabled),t.xp6(1),t.Q6J("ngTemplateOutlet",Nt)("ngTemplateOutletContext",t.VKq(4,lt,We))}}function At(St,gt){1&St&&t._UZ(0,"nz-divider",50)}function Qt(St,gt){if(1&St&&(t.ynx(0),t.YNc(1,Pi,3,2,"a",39),t.TgZ(2,"nz-dropdown-menu",null,40)(4,"ul",41),t.YNc(5,Et,3,2,"ng-container",25),t.qZA()(),t.YNc(6,Ct,2,6,"span",42),t.YNc(7,At,1,0,"nz-divider",43),t.BQk()),2&St){const We=gt.$implicit,Nt=gt.last;t.xp6(1),t.Q6J("ngIf",We.children.length>0),t.xp6(4),t.Q6J("ngForOf",We.children),t.xp6(1),t.Q6J("ngIf",0===We.children.length),t.xp6(1),t.Q6J("ngIf",!Nt)}}function gn(St,gt){if(1&St&&(t.ynx(0)(1,18),t.YNc(2,oo,1,2,"label",19),t.YNc(3,Wi,1,2,"label",20),t.YNc(4,Ri,1,2,"a",21),t.YNc(5,Qi,3,2,"ng-container",6),t.YNc(6,Mo,1,2,"cell",22),t.YNc(7,Xi,1,2,null,23),t.YNc(8,qi,3,2,"ng-container",24),t.BQk(),t.YNc(9,Qt,8,4,"ng-container",25),t.BQk()),2&St){const We=t.oxw();t.xp6(1),t.Q6J("ngSwitch",We.c.type),t.xp6(1),t.Q6J("ngSwitchCase","checkbox"),t.xp6(1),t.Q6J("ngSwitchCase","radio"),t.xp6(1),t.Q6J("ngSwitchCase","link"),t.xp6(1),t.Q6J("ngIf",We.i._values[We.cIdx].text),t.xp6(1),t.Q6J("ngSwitchCase","cell"),t.xp6(1),t.Q6J("ngSwitchCase","widget"),t.xp6(2),t.Q6J("ngForOf",We.i._values[We.cIdx].buttons)}}const Ln=function(St,gt,We){return{$implicit:St,index:gt,column:We}};class Sn{get req(){return this._req}set req(gt){this._req=(0,f.Z2)({},!0,this.cog.req,gt)}get res(){return this._res}set res(gt){const We=this._res=(0,f.Z2)({},!0,this.cog.res,gt),Nt=We.reName;"function"!=typeof Nt&&(Array.isArray(Nt.list)||(Nt.list=Nt.list.split(".")),Array.isArray(Nt.total)||(Nt.total=Nt.total.split("."))),this._res=We}get page(){return this._page}set page(gt){this._page={...this.cog.page,...gt},this.updateTotalTpl()}get multiSort(){return this._multiSort}set multiSort(gt){this._multiSort="boolean"==typeof gt&&!(0,p.sw)(gt)||"object"==typeof gt&&0===Object.keys(gt).length?void 0:{..."object"==typeof gt?gt:{}}}set widthMode(gt){this._widthMode={...this.cog.widthMode,...gt}}get widthMode(){return this._widthMode}set widthConfig(gt){this._widthConfig=gt,this.customWidthConfig=gt&>.length>0}set resizable(gt){this._resizable="object"==typeof gt?gt:{disabled:!(0,p.sw)(gt)}}get count(){return this._data.length}get list(){return this._data}get noColumns(){return null==this.columns}constructor(gt,We,Nt,Kt,ln,zn,kn,Qn,ui,eo){this.cdr=We,this.el=Nt,this.exportSrv=Kt,this.doc=ln,this.columnSource=zn,this.dataSource=kn,this.delonI18n=Qn,this.cms=eo,this.destroy$=(0,t.f3M)(t.ktI),this.totalTpl="",this.inied=!1,this.customWidthConfig=!1,this._widthConfig=[],this.locale={},this._loading=!1,this._data=[],this._statistical={},this._isPagination=!0,this._allChecked=!1,this._allCheckedDisabled=!1,this._indeterminate=!1,this._headers=[],this._columns=[],this.contextmenuList=[],this.ps=10,this.pi=1,this.total=0,this.loading=null,this.loadingDelay=0,this.loadingIndicator=null,this.bordered=!1,this.scroll={x:null,y:null},this.showHeader=!0,this.expandRowByClick=!1,this.expandAccordion=!1,this.expand=null,this.responsive=!0,this.error=new t.vpe,this.change=new t.vpe,this.virtualScroll=!1,this.virtualItemSize=54,this.virtualMaxBufferPx=200,this.virtualMinBufferPx=100,this.virtualForTrackBy=Ui=>Ui,this.delonI18n.change.pipe((0,i.sL)()).subscribe(()=>{this.locale=this.delonI18n.getData("st"),this._columns.length>0&&(this.updateTotalTpl(),this.cd())}),gt.change.pipe((0,i.sL)(),(0,l.h)(()=>this._columns.length>0)).subscribe(()=>this.refreshColumns()),this.setCog(ui.merge("st",_.M))}setCog(gt){const We={...gt.multiSort};delete gt.multiSort,this.cog=gt,Object.assign(this,gt),!1!==We.global&&(this.multiSort=We),this.columnSource.setCog(gt),this.dataSource.setCog(gt)}cd(){return this.cdr.detectChanges(),this}refreshData(){return this._data=[...this._data],this.cd()}renderTotal(gt,We){return this.totalTpl?this.totalTpl.replace("{{total}}",gt).replace("{{range[0]}}",We[0]).replace("{{range[1]}}",We[1]):""}changeEmit(gt,We){const Nt={type:gt,pi:this.pi,ps:this.ps,total:this.total};null!=We&&(Nt[gt]=We),this.change.emit(Nt)}get filteredData(){return this.loadData({paginator:!1}).pipe((0,C.U)(gt=>gt.list))}updateTotalTpl(){const{total:gt}=this.page;this.totalTpl="string"==typeof gt&>.length?gt:(0,p.sw)(gt)?this.locale.total:""}setLoading(gt){null==this.loading&&(this._loading=gt,this.cdr.detectChanges())}loadData(gt){const{pi:We,ps:Nt,data:Kt,req:ln,res:zn,page:kn,total:Qn,singleSort:ui,multiSort:eo,rowClassName:Ui}=this;return this.dataSource.process({pi:We,ps:Nt,total:Qn,data:Kt,req:ln,res:zn,page:kn,columns:this._columns,singleSort:ui,multiSort:eo,rowClassName:Ui,paginator:!0,customRequest:this.customRequest||this.cog.customRequest,...gt}).pipe((0,i.sL)(this.destroy$))}loadPageData(){return this.setLoading(!0),this.loadData().pipe((0,E.x)(()=>this.setLoading(!1)),(0,u.K)(gt=>(this.error.emit({type:"req",error:gt}),(0,z._)(()=>gt))),(0,C.U)(gt=>{const We="undefined";return typeof gt.pi!==We&&(this.pi=gt.pi),typeof gt.ps!==We&&(this.ps=gt.ps),typeof gt.total!==We&&(this.total=gt.total),typeof gt.pageShow!==We&&(this._isPagination=gt.pageShow),this._data=gt.list??[],this._statistical=gt.statistical,null!=this.cdkVirtualScrollViewport&&Promise.resolve().then(()=>this.cdkVirtualScrollViewport?.checkViewportSize()),this._refCheck(),this.changeEmit("loaded",gt.list),this}))}clear(gt=!0){return gt&&this.clearStatus(),this._data=[],this.cd()}clearStatus(){return this.clearCheck().clearRadio().clearFilter().clearSort()}load(gt=1,We,Nt){return-1!==gt&&(this.pi=gt),typeof We<"u"&&(this.req.params=Nt&&Nt.merge?{...this.req.params,...We}:We),this._change("pi",Nt),this}reload(gt,We){return this.load(-1,gt,We)}reset(gt,We){return this.clearStatus().load(1,gt,We),this}_toTop(gt){if(!(gt??this.page.toTop))return;const We=this.el.nativeElement;We.scrollIntoView(),this.doc.documentElement.scrollTop-=this.page.toTopOffset,this.scroll&&(this.cdkVirtualScrollViewport?this.cdkVirtualScrollViewport.scrollTo({top:0,left:0}):We.querySelector(".ant-table-body, .ant-table-content")?.scrollTo(0,0))}_change(gt,We){("pi"===gt||"ps"===gt&&this.pi<=Math.ceil(this.total/this.ps))&&this.loadPageData().subscribe(()=>this._toTop(We?.toTop)),this.changeEmit(gt)}closeOtherExpand(gt){!1!==this.expandAccordion&&this._data.filter(We=>We!==gt).forEach(We=>We.expand=!1)}_rowClick(gt,We,Nt,Kt){const ln=gt.target;if("INPUT"===ln.nodeName)return;const{expand:zn,expandRowByClick:kn}=this;if(zn&&!1!==We.showExpand&&kn)return We.expand=!We.expand,this.closeOtherExpand(We),void this.changeEmit("expand",We);const Qn={e:gt,item:We,index:Nt};Kt?this.changeEmit("dblClick",Qn):(this._clickRowClassName(ln,We,Nt),this.changeEmit("click",Qn))}_clickRowClassName(gt,We,Nt){const Kt=this.clickRowClassName;if(null==Kt)return;const ln={exclusive:!1,..."string"==typeof Kt?{fn:()=>Kt}:Kt},zn=ln.fn(We,Nt),kn=gt.closest("tr");ln.exclusive&&kn.parentElement.querySelectorAll("tr").forEach(Qn=>Qn.classList.remove(zn)),kn.classList.contains(zn)?kn.classList.remove(zn):kn.classList.add(zn)}_expandChange(gt,We){gt.expand=We,this.closeOtherExpand(gt),this.changeEmit("expand",gt)}_stopPropagation(gt){gt.stopPropagation()}_refColAndData(){return this._columns.forEach(gt=>{this._data.forEach((We,Nt)=>{const Kt=We._values;if("no"===gt.type){const ln=`${this.dataSource.getNoIndex(We,gt,Nt)}`;Kt[gt.__point]={text:ln,_text:ln,org:Nt,safeType:"text"}}Kt[gt.__point].props=this.dataSource.getCell(gt,We,Nt)})}),this.refreshData()}addRow(gt,We){return Array.isArray(gt)||(gt=[gt]),this._data.splice(We?.index??0,0,...gt),this.optimizeData()._refColAndData()}removeRow(gt){if("number"==typeof gt)this._data.splice(gt,1);else{Array.isArray(gt)||(gt=[gt]);const Nt=this._data;for(var We=Nt.length;We--;)-1!==gt.indexOf(Nt[We])&&Nt.splice(We,1)}return this._refCheck()._refColAndData()}setRow(gt,We,Nt){return Nt={refreshSchema:!1,emitReload:!1,...Nt},"number"!=typeof gt&&(gt=this._data.indexOf(gt)),this._data[gt]=(0,f.Z2)(this._data[gt],!1,We),this.optimizeData(),Nt.refreshSchema?(this.resetColumns({emitReload:Nt.emitReload}),this):this.refreshData()}sort(gt,We,Nt){this.multiSort?(gt._sort.default=Nt,gt._sort.tick=this.dataSource.nextSortTick):this._columns.forEach((Kt,ln)=>Kt._sort.default=ln===We?Nt:null),this.cdr.detectChanges(),this.loadPageData().subscribe(()=>{const Kt={value:Nt,map:this.dataSource.getReqSortMap(this.singleSort,this.multiSort,this._columns),column:gt};this.changeEmit("sort",Kt)})}clearSort(){return this._columns.forEach(gt=>gt._sort.default=null),this}_handleFilter(gt,We){We||this.columnSource.cleanFilter(gt),this.pi=1,this.columnSource.updateDefault(gt.filter),this.loadPageData().subscribe(()=>this.changeEmit("filter",gt))}handleFilterNotify(gt){this.changeEmit("filterChange",gt)}clearFilter(){return this._columns.filter(gt=>gt.filter&&!0===gt.filter.default).forEach(gt=>this.columnSource.cleanFilter(gt)),this}clearCheck(){return this.checkAll(!1)}_refCheck(){const gt=this._data.filter(Kt=>!Kt.disabled),We=gt.filter(Kt=>!0===Kt.checked);this._allChecked=We.length>0&&We.length===gt.length;const Nt=gt.every(Kt=>!Kt.checked);return this._indeterminate=!this._allChecked&&!Nt,this._allCheckedDisabled=this._data.length===this._data.filter(Kt=>Kt.disabled).length,this.cd()}checkAll(gt){return gt=typeof gt>"u"?this._allChecked:gt,this._data.filter(We=>!We.disabled).forEach(We=>We.checked=gt),this._refCheck()._checkNotify().refreshData()}_rowSelection(gt){return gt.select(this._data),this._refCheck()._checkNotify()}_checkNotify(){const gt=this._data.filter(We=>!We.disabled&&!0===We.checked);return this.changeEmit("checkbox",gt),this}clearRadio(){return this._data.filter(gt=>gt.checked).forEach(gt=>gt.checked=!1),this.changeEmit("radio",null),this.refreshData()}_handleTd(gt){switch(gt.type){case"checkbox":this._refCheck()._checkNotify();break;case"radio":this.changeEmit("radio",gt.item),this.refreshData()}}export(gt,We){const Nt=Array.isArray(gt)?this.dataSource.optimizeData({columns:this._columns,result:gt}):this._data;(!0===gt?this.filteredData:(0,M.of)(Nt)).subscribe(Kt=>this.exportSrv.export({columens:this._columns,...We,data:Kt}))}colResize({width:gt},We){We.width=`${gt}px`,this.changeEmit("resize",We)}onContextmenu(gt){if(!this.contextmenu)return;gt.preventDefault(),gt.stopPropagation();const We=gt.target.closest("[data-col-index]");if(!We)return;const Nt=Number(We.dataset.colIndex),Kt=Number(We.closest("tr").dataset.index),ln=isNaN(Kt),zn=this.contextmenu({event:gt,type:ln?"head":"body",rowIndex:ln?null:Kt,colIndex:Nt,data:ln?null:this.list[Kt],column:this._columns[Nt]});((0,h.b)(zn)?zn:(0,M.of)(zn)).pipe((0,i.sL)(this.destroy$),(0,l.h)(kn=>kn.length>0)).subscribe(kn=>{this.contextmenuList=kn.map(Qn=>(Array.isArray(Qn.children)||(Qn.children=[]),Qn)),this.cdr.detectChanges(),this.cms.create(gt,this.contextmenuTpl)})}get cdkVirtualScrollViewport(){return this.orgTable?.cdkVirtualScrollViewport}_resetColumns(gt){return typeof(gt={emitReload:!0,preClearData:!1,...gt}).columns<"u"&&(this.columns=gt.columns),typeof gt.pi<"u"&&(this.pi=gt.pi),typeof gt.ps<"u"&&(this.ps=gt.ps),gt.emitReload&&(gt.preClearData=!0),gt.preClearData&&(this._data=[]),this.refreshColumns(),gt.emitReload?this.loadPageData():(this.cd(),(0,M.of)(this))}resetColumns(gt){return function g(St,gt){const We="object"==typeof gt;return new Promise((Nt,Kt)=>{let zn,ln=!1;St.subscribe({next:kn=>{zn=kn,ln=!0},error:Kt,complete:()=>{ln?Nt(zn):We?Nt(gt.defaultValue):Kt(new v.K)}})})}(this._resetColumns(gt))}refreshColumns(){const gt=this.columnSource.process(this.columns,{widthMode:this.widthMode,resizable:this._resizable,safeType:this.cog.safeType});return this._columns=gt.columns,this._headers=gt.headers,!1===this.customWidthConfig&&null!=gt.headerWidths&&(this._widthConfig=gt.headerWidths),this}optimizeData(){return this._data=this.dataSource.optimizeData({columns:this._columns,result:this._data,rowClassName:this.rowClassName}),this}pureItem(gt){if("number"==typeof gt&&(gt=this._data[gt]),!gt)return null;const We=(0,f.p$)(gt);return["_values","_rowClassName"].forEach(Nt=>delete We[Nt]),We}ngAfterViewInit(){this.refreshColumns(),this.req.lazyLoad||this.loadPageData().subscribe(),this.inied=!0}ngOnChanges(gt){gt.loading&&(this._loading=gt.loading.currentValue),this.inied&&(gt.columns&&this.refreshColumns().optimizeData(),gt.data&&this.loadPageData().subscribe())}static#e=this.\u0275fac=function(We){return new(We||Sn)(t.Y36(d.Oi,8),t.Y36(t.sBO),t.Y36(t.SBq),t.Y36(x.O),t.Y36(n.K0),t.Y36(y.t),t.Y36(T.o),t.Y36(d.s7),t.Y36(P.Ri),t.Y36(O.Iw))};static#t=this.\u0275cmp=t.Xpm({type:Sn,selectors:[["st"]],viewQuery:function(We,Nt){if(1&We&&(t.Gf(de,5),t.Gf(U,5)),2&We){let Kt;t.iGM(Kt=t.CRH())&&(Nt.orgTable=Kt.first),t.iGM(Kt=t.CRH())&&(Nt.contextmenuTpl=Kt.first)}},hostVars:14,hostBindings:function(We,Nt){2&We&&t.ekj("st",!0)("st__p-left","left"===Nt.page.placement)("st__p-center","center"===Nt.page.placement)("st__width-strict","strict"===Nt.widthMode.type)("st__row-class",Nt.rowClassName)("ant-table-rep",Nt.responsive)("ant-table-rep__hide-header-footer",Nt.responsiveHideHeaderFooter)},inputs:{req:"req",res:"res",page:"page",data:"data",columns:"columns",contextmenu:"contextmenu",ps:"ps",pi:"pi",total:"total",loading:"loading",loadingDelay:"loadingDelay",loadingIndicator:"loadingIndicator",bordered:"bordered",size:"size",scroll:"scroll",singleSort:"singleSort",multiSort:"multiSort",rowClassName:"rowClassName",clickRowClassName:"clickRowClassName",widthMode:"widthMode",widthConfig:"widthConfig",resizable:"resizable",header:"header",showHeader:"showHeader",footer:"footer",bodyHeader:"bodyHeader",body:"body",expandRowByClick:"expandRowByClick",expandAccordion:"expandAccordion",expand:"expand",noResult:"noResult",responsive:"responsive",responsiveHideHeaderFooter:"responsiveHideHeaderFooter",virtualScroll:"virtualScroll",virtualItemSize:"virtualItemSize",virtualMaxBufferPx:"virtualMaxBufferPx",virtualMinBufferPx:"virtualMinBufferPx",customRequest:"customRequest",virtualForTrackBy:"virtualForTrackBy"},outputs:{error:"error",change:"change"},exportAs:["st"],features:[t._Bn([T.o,D.b,y.t,x.O,d.uU,d.fU,n.JJ]),t.TTD],decls:20,vars:36,consts:[["titleTpl",""],["chkAllTpl",""],[3,"nzData","nzPageIndex","nzPageSize","nzTotal","nzShowPagination","nzFrontPagination","nzBordered","nzSize","nzLoading","nzLoadingDelay","nzLoadingIndicator","nzTitle","nzFooter","nzScroll","nzVirtualItemSize","nzVirtualMaxBufferPx","nzVirtualMinBufferPx","nzVirtualForTrackBy","nzNoResult","nzPageSizeOptions","nzShowQuickJumper","nzShowSizeChanger","nzPaginationPosition","nzPaginationType","nzItemRender","nzSimple","nzShowTotal","nzWidthConfig","nzPageIndexChange","nzPageSizeChange","contextmenu"],["table",""],[4,"ngIf"],[1,"st__body"],["bodyTpl",""],["totalTpl",""],["contextmenuTpl","nzDropdownMenu"],["nz-menu","",1,"st__contextmenu"],[4,"ngFor","ngForOf"],[3,"innerHTML"],["class","st__head-optional",3,"innerHTML",4,"ngIf"],["class","st__head-tip","nz-tooltip","","nz-icon","","nzType","question-circle",3,"nzTooltipTitle",4,"ngIf"],[1,"st__head-optional",3,"innerHTML"],["nz-tooltip","","nz-icon","","nzType","question-circle",1,"st__head-tip",3,"nzTooltipTitle"],["nz-checkbox","",1,"st__checkall",3,"nzDisabled","ngModel","nzIndeterminate","ngModelChange"],["nzWidth","50px",3,"rowSpan",4,"ngIf"],["nzWidth","50px",3,"rowSpan"],["nz-resizable","",3,"colSpan","rowSpan","nzWidth","nzLeft","nzRight","ngClass","nzShowSort","nzSortOrder","nzCustomFilter","st__has-filter","nzDisabled","nzMaxWidth","nzMinWidth","nzBounds","nzPreview","nzSortOrderChange","nzResizeEnd",4,"let"],["nz-resizable","",3,"colSpan","rowSpan","nzWidth","nzLeft","nzRight","ngClass","nzShowSort","nzSortOrder","nzCustomFilter","nzDisabled","nzMaxWidth","nzMinWidth","nzBounds","nzPreview","nzSortOrderChange","nzResizeEnd"],["nzDirection","right",4,"ngIf"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],["renderTitle",""],[4,"ngIf","ngIfElse"],["nzDirection","right"],[3,"ngSwitch"],[4,"ngSwitchCase"],[4,"ngSwitchDefault"],["class","ant-table-selection",4,"ngIf"],[1,"ant-table-selection"],["class","ant-table-selection-extra",4,"ngIf"],["selectionMenu","nzDropdownMenu"],["nz-menu","",1,"ant-table-selection-menu"],["nz-menu-item","",3,"innerHTML","click",4,"ngFor","ngForOf"],[1,"ant-table-selection-extra"],["nz-dropdown","","nzPlacement","bottomLeft",1,"ant-table-selection-down","st__checkall-selection",3,"nzDropdownMenu"],["nz-icon","","nzType","down"],["nz-menu-item","",3,"innerHTML","click"],["nz-th-extra","",3,"col","f","locale","n","handle"],[3,"ngClass","click","dblclick"],["nzWidth","50px",3,"nzShowExpand","nzExpand","nzExpandChange","click",4,"ngIf"],[3,"nzExpand"],["nzWidth","50px",3,"nzShowExpand","nzExpand","nzExpandChange","click"],[3,"nzLeft","nzRight","ngClass",4,"ngIf"],[3,"nzLeft","nzRight","ngClass"],["class","ant-table-rep__title",4,"ngIf"],[3,"data","i","index","c","cIdx","n"],[1,"ant-table-rep__title"],["nz-virtual-scroll",""],["nz-menu-item","",3,"innerHTML","click",4,"ngIf"],["nz-submenu","",3,"nzTitle",4,"ngIf"],["nz-submenu","",3,"nzTitle"]],template:function(We,Nt){if(1&We&&(t.YNc(0,Ie,3,3,"ng-template",null,0,t.W1O),t.YNc(2,Ne,1,5,"ng-template",null,1,t.W1O),t.TgZ(4,"nz-table",2,3),t.NdJ("nzPageIndexChange",function(ln){return Nt.pi=ln})("nzPageIndexChange",function(){return Nt._change("pi")})("nzPageSizeChange",function(ln){return Nt.ps=ln})("nzPageSizeChange",function(){return Nt._change("ps")})("contextmenu",function(ln){return Nt.onContextmenu(ln)}),t.YNc(6,$e,2,1,"thead",4),t.TgZ(7,"tbody",5),t.YNc(8,wt,2,4,"ng-container",4),t.YNc(9,it,5,10,"ng-template",null,6,t.W1O),t.YNc(11,S,2,1,"ng-container",4),t.YNc(12,he,2,0,"ng-container",4),t.YNc(13,bt,2,4,"ng-container",4),t.qZA(),t.YNc(14,Ft,1,1,"ng-template",null,7,t.W1O),t.qZA(),t.TgZ(16,"nz-dropdown-menu",null,8)(18,"ul",9),t.YNc(19,Dn,3,2,"ng-container",10),t.qZA()()),2&We){const Kt=t.MAs(15);t.xp6(4),t.ekj("st__no-column",Nt.noColumns),t.Q6J("nzData",Nt._data)("nzPageIndex",Nt.pi)("nzPageSize",Nt.ps)("nzTotal",Nt.total)("nzShowPagination",Nt._isPagination)("nzFrontPagination",!1)("nzBordered",Nt.bordered)("nzSize",Nt.size)("nzLoading",Nt.noColumns||Nt._loading)("nzLoadingDelay",Nt.loadingDelay)("nzLoadingIndicator",Nt.loadingIndicator)("nzTitle",Nt.header)("nzFooter",Nt.footer)("nzScroll",Nt.scroll)("nzVirtualItemSize",Nt.virtualItemSize)("nzVirtualMaxBufferPx",Nt.virtualMaxBufferPx)("nzVirtualMinBufferPx",Nt.virtualMinBufferPx)("nzVirtualForTrackBy",Nt.virtualForTrackBy)("nzNoResult",Nt.noResult)("nzPageSizeOptions",Nt.page.pageSizes)("nzShowQuickJumper",Nt.page.showQuickJumper)("nzShowSizeChanger",Nt.page.showSize)("nzPaginationPosition",Nt.page.position)("nzPaginationType",Nt.page.type)("nzItemRender",Nt.page.itemRender)("nzSimple",Nt.page.simple)("nzShowTotal",Kt)("nzWidthConfig",Nt._widthConfig),t.xp6(2),t.Q6J("ngIf",Nt.showHeader),t.xp6(2),t.Q6J("ngIf",!Nt._loading),t.xp6(3),t.Q6J("ngIf",!Nt.virtualScroll),t.xp6(1),t.Q6J("ngIf",Nt.virtualScroll),t.xp6(1),t.Q6J("ngIf",!Nt._loading),t.xp6(6),t.Q6J("ngForOf",Nt.contextmenuList)}},dependencies:function(){return[n.mk,n.sg,n.O5,n.tP,n.RF,n.n9,n.ED,A.JJ,A.On,k.e,F.N8,F.qD,F.Uo,F._C,F.h7,F.Om,F.p0,F.$Z,F.zu,F.qn,F.d3,F.Vk,W.Ls,K.Ie,_e.wO,_e.u9,_e.rY,O.cm,O.RR,Y.SY,G.IJ,G.m8,Re,gi]},encapsulation:2,changeDetection:0})}(0,e.gn)([(0,p.Rn)()],Sn.prototype,"ps",void 0),(0,e.gn)([(0,p.Rn)()],Sn.prototype,"pi",void 0),(0,e.gn)([(0,p.Rn)()],Sn.prototype,"total",void 0),(0,e.gn)([(0,p.Rn)()],Sn.prototype,"loadingDelay",void 0),(0,e.gn)([(0,p.yF)()],Sn.prototype,"bordered",void 0),(0,e.gn)([(0,p.yF)()],Sn.prototype,"showHeader",void 0),(0,e.gn)([(0,p.yF)()],Sn.prototype,"expandRowByClick",void 0),(0,e.gn)([(0,p.yF)()],Sn.prototype,"expandAccordion",void 0),(0,e.gn)([(0,p.yF)()],Sn.prototype,"responsive",void 0),(0,e.gn)([(0,p.yF)()],Sn.prototype,"responsiveHideHeaderFooter",void 0),(0,e.gn)([(0,p.yF)()],Sn.prototype,"virtualScroll",void 0),(0,e.gn)([(0,p.Rn)()],Sn.prototype,"virtualItemSize",void 0),(0,e.gn)([(0,p.Rn)()],Sn.prototype,"virtualMaxBufferPx",void 0),(0,e.gn)([(0,p.Rn)()],Sn.prototype,"virtualMinBufferPx",void 0);let gi=(()=>{class St{get routerState(){const{pi:We,ps:Nt,total:Kt}=this.stComp;return{pi:We,ps:Nt,total:Kt}}constructor(We,Nt,Kt,ln){this.stComp=We,this.router=Nt,this.modalHelper=Kt,this.drawerHelper=ln,this.n=new t.vpe}report(We){this.n.emit({type:We,item:this.i,col:this.c})}_checkbox(We){this.i.checked=We,this.report("checkbox")}_radio(){this.data.filter(We=>!We.disabled).forEach(We=>We.checked=!1),this.i.checked=!0,this.report("radio")}_link(We){this._stopPropagation(We);const Nt=this.c.click(this.i,this.stComp);return"string"==typeof Nt&&this.router.navigateByUrl(Nt,{state:this.routerState}),!1}_stopPropagation(We){We.preventDefault(),We.stopPropagation()}_btn(We,Nt){Nt?.stopPropagation();const Kt=this.stComp.cog;let ln=this.i;if("modal"!==We.type&&"static"!==We.type)if("drawer"!==We.type)if("link"!==We.type)this.btnCallback(ln,We);else{const zn=this.btnCallback(ln,We);"string"==typeof zn&&this.router.navigateByUrl(zn,{state:this.routerState})}else{!0===Kt.drawer.pureRecoard&&(ln=this.stComp.pureItem(ln));const zn=We.drawer;this.drawerHelper.create(zn.title,zn.component,{[zn.paramsName]:ln,...zn.params&&zn.params(ln)},(0,f.Z2)({},!0,Kt.drawer,zn)).pipe((0,l.h)(Qn=>typeof Qn<"u")).subscribe(Qn=>this.btnCallback(ln,We,Qn))}else{!0===Kt.modal.pureRecoard&&(ln=this.stComp.pureItem(ln));const zn=We.modal;this.modalHelper["modal"===We.type?"create":"createStatic"](zn.component,{[zn.paramsName]:ln,...zn.params&&zn.params(ln)},(0,f.Z2)({},!0,Kt.modal,zn)).pipe((0,l.h)(Qn=>typeof Qn<"u")).subscribe(Qn=>this.btnCallback(ln,We,Qn))}}btnCallback(We,Nt,Kt){if(Nt.click){if("string"!=typeof Nt.click)return Nt.click(We,Kt,this.stComp);switch(Nt.click){case"load":this.stComp.load();break;case"reload":this.stComp.reload()}}}static#e=this.\u0275fac=function(Nt){return new(Nt||St)(t.Y36(Sn,1),t.Y36(ct.F0),t.Y36(d.Te),t.Y36(d.hC))};static#t=this.\u0275cmp=t.Xpm({type:St,selectors:[["st-td"]],inputs:{c:"c",cIdx:"cIdx",data:"data",i:"i",index:"index"},outputs:{n:"n"},decls:9,vars:8,consts:[["btnTpl",""],["btnItemTpl",""],["btnTextTpl",""],[3,"ngTemplateOutlet","ngTemplateOutletContext"],["render",""],[4,"ngIf","ngIfElse"],[4,"ngIf"],["nz-tooltip","",3,"nzTooltipTitle","d-block","width-100",4,"ngIf"],["nz-tooltip","",3,"nzTooltipTitle"],["nz-popconfirm","","class","st__btn-text",3,"nzPopconfirmTitle","nzIcon","nzCondition","nzCancelText","nzOkText","nzOkType","ngClass","nzOnConfirm","click",4,"ngIf"],["class","st__btn-text",3,"ngClass","click",4,"ngIf"],["nz-popconfirm","",1,"st__btn-text",3,"nzPopconfirmTitle","nzIcon","nzCondition","nzCancelText","nzOkText","nzOkType","ngClass","nzOnConfirm","click"],[1,"st__btn-text",3,"ngClass","click"],[3,"innerHTML","ngClass"],["nz-icon","",3,"nzType","nzTheme","nzSpin","nzTwotoneColor",4,"ngIf"],["nz-icon","",3,"nzIconfont",4,"ngIf"],["nz-icon","",3,"nzType","nzTheme","nzSpin","nzTwotoneColor"],["nz-icon","",3,"nzIconfont"],[3,"ngSwitch"],["nz-checkbox","",3,"nzDisabled","ngModel","ngModelChange",4,"ngSwitchCase"],["nz-radio","",3,"nzDisabled","ngModel","ngModelChange",4,"ngSwitchCase"],[3,"innerHTML","click",4,"ngSwitchCase"],[3,"value","options",4,"ngSwitchCase"],[4,"ngSwitchCase"],[4,"ngSwitchDefault"],[4,"ngFor","ngForOf"],["nz-checkbox","",3,"nzDisabled","ngModel","ngModelChange"],["nz-radio","",3,"nzDisabled","ngModel","ngModelChange"],[3,"innerHTML","click"],[3,"nzColor","nz-tooltip",4,"ngSwitchCase"],[3,"nzStatus","nzText","nz-tooltip",4,"ngSwitchCase"],[3,"nzColor","nz-tooltip"],[3,"innerHTML"],[3,"nzStatus","nzText","nz-tooltip"],[3,"value","options"],["st-widget-host","",3,"record","column"],[3,"innerHTML",4,"ngIf"],[3,"innerText",4,"ngIf"],[3,"innerText"],["nz-dropdown","","nzOverlayClassName","st__btn-sub",3,"nzDropdownMenu",4,"ngIf"],["btnMenu","nzDropdownMenu"],["nz-menu",""],[3,"st__btn-disabled",4,"ngIf"],["nzType","vertical",4,"ngIf"],["nz-dropdown","","nzOverlayClassName","st__btn-sub",3,"nzDropdownMenu"],["nz-icon","","nzType","down"],["nz-menu-item","",3,"st__btn-disabled",4,"ngIf"],["nz-menu-divider","",4,"ngIf"],["nz-menu-item",""],["nz-menu-divider",""],["nzType","vertical"]],template:function(Nt,Kt){if(1&Nt&&(t.YNc(0,qn,2,2,"ng-template",null,0,t.W1O),t.YNc(2,di,2,2,"ng-template",null,1,t.W1O),t.YNc(4,ei,2,5,"ng-template",null,2,t.W1O),t.YNc(6,po,0,0,"ng-template",3,4,t.W1O),t.YNc(8,gn,10,8,"ng-container",5)),2&Nt){const ln=t.MAs(7);t.xp6(6),t.Q6J("ngTemplateOutlet",Kt.c.__render)("ngTemplateOutletContext",t.kEZ(4,Ln,Kt.i,Kt.index,Kt.c)),t.xp6(2),t.Q6J("ngIf",!Kt.c.__render)("ngIfElse",ln)}},dependencies:[n.mk,n.sg,n.O5,n.tP,n.RF,n.n9,n.ED,A.JJ,A.On,Ae.T,Mt.JW,W.Ls,je.x7,K.Ie,ot.g,_e.wO,_e.u9,_e.YV,O.cm,O.Ws,O.RR,H.Of,mt.j,Y.SY,we.U],encapsulation:2,changeDetection:0})}return St})()},67594:(nt,I,o)=>{"use strict";o.d(I,{M:()=>e});const e={pi:1,ps:10,size:"default",responsive:!0,responsiveHideHeaderFooter:!1,req:{type:"page",method:"GET",allInBody:!1,lazyLoad:!1,ignoreParamNull:!1,reName:{pi:"pi",ps:"ps",skip:"skip",limit:"limit"}},res:{reName:{list:["list"],total:["total"]}},page:{front:!0,zeroIndexed:!1,position:"bottom",placement:"right",show:!0,showSize:!1,pageSizes:[10,20,30,40,50],showQuickJumper:!1,total:!0,toTop:!0,toTopOffset:100,itemRender:null,simple:!1},modal:{paramsName:"record",size:"lg",exact:!0},drawer:{paramsName:"record",size:"md",footer:!0,footerHeight:55},pop:{title:"\u786e\u8ba4\u5220\u9664\u5417\uff1f",trigger:"click",placement:"top"},btnIcon:{theme:"outline",spin:!1},noIndex:1,expandRowByClick:!1,expandAccordion:!1,widthMode:{type:"default",strictBehavior:"truncate"},virtualItemSize:54,virtualMaxBufferPx:200,virtualMinBufferPx:100,iifBehavior:"hide",loadingDelay:0,safeType:"safeHtml",date:{format:"yyyy-MM-dd HH:mm"},yn:{truth:!0,yes:"\u662f",mode:"icon"},maxMultipleButton:{text:"\u66f4\u591a",count:2}}},66642:(nt,I,o)=>{"use strict";o.d(I,{U:()=>h,v:()=>M});var e=o(97582),n=o(74648),t=o(65879),i=o(78967),l=o(96814),C=o(8324);function E(v,g){if(1&v&&(t.ynx(0),t._uU(1),t.BQk()),2&v){const d=t.oxw(2);t.xp6(1),t.Oqu(d.title)}}function u(v,g){if(1&v&&(t.TgZ(0,"sv-title"),t.YNc(1,E,2,1,"ng-container",2),t.qZA()),2&v){const d=t.oxw();t.xp6(1),t.Q6J("nzStringTemplateOutlet",d.title)}}const z=["*"];class M{get margin(){return this.bordered?{}:{"margin-left.px":-this.gutter/2,"margin-right.px":-this.gutter/2}}constructor(g){this.noColon=!1,this.bordered=!1,g.attach(this,"sv",{size:"large",gutter:32,layout:"horizontal",col:3,default:!0})}static#e=this.\u0275fac=function(d){return new(d||M)(t.Y36(i.Ri))};static#t=this.\u0275cmp=t.Xpm({type:M,selectors:[["sv-container"],["","sv-container",""]],hostVars:14,hostBindings:function(d,p){2&d&&t.ekj("sv__container",!0)("sv__horizontal","horizontal"===p.layout)("sv__vertical","vertical"===p.layout)("sv__small","small"===p.size)("sv__large","large"===p.size)("sv__bordered",p.bordered)("clearfix",!0)},inputs:{colInCon:["sv-container","colInCon"],title:"title",size:"size",gutter:"gutter",layout:"layout",labelWidth:"labelWidth",col:"col",default:"default",noColon:"noColon",bordered:"bordered"},exportAs:["svContainer"],ngContentSelectors:z,decls:3,vars:2,consts:[[1,"ant-row",3,"ngStyle"],[4,"ngIf"],[4,"nzStringTemplateOutlet"]],template:function(d,p){1&d&&(t.F$t(),t.TgZ(0,"div",0),t.YNc(1,u,2,1,"sv-title",1),t.Hsn(2),t.qZA()),2&d&&(t.Q6J("ngStyle",p.margin),t.xp6(1),t.Q6J("ngIf",p.title))},dependencies:function(){return[l.O5,l.PC,C.f,h]},encapsulation:2,changeDetection:0})}(0,e.gn)([(0,n.Rn)(null)],M.prototype,"colInCon",void 0),(0,e.gn)([(0,n.Rn)()],M.prototype,"gutter",void 0),(0,e.gn)([(0,n.Rn)()],M.prototype,"labelWidth",void 0),(0,e.gn)([(0,n.Rn)()],M.prototype,"col",void 0),(0,e.gn)([(0,n.yF)()],M.prototype,"default",void 0),(0,e.gn)([(0,n.yF)()],M.prototype,"noColon",void 0),(0,e.gn)([(0,n.yF)()],M.prototype,"bordered",void 0);let h=(()=>{class v{constructor(d,p,f){if(this.el=d,this.parent=p,this.ren=f,null==p)throw new Error("[sv-title] must include 'sv-container' component")}setClass(){const d=this.parent.gutter,p=this.el.nativeElement;this.ren.setStyle(p,"padding-left",d/2+"px"),this.ren.setStyle(p,"padding-right",d/2+"px")}ngOnInit(){this.setClass()}static#e=this.\u0275fac=function(p){return new(p||v)(t.Y36(t.SBq),t.Y36(M,9),t.Y36(t.Qsj))};static#t=this.\u0275cmp=t.Xpm({type:v,selectors:[["sv-title"],["","sv-title",""]],hostVars:2,hostBindings:function(p,f){2&p&&t.ekj("sv__title",!0)},exportAs:["svTitle"],ngContentSelectors:z,decls:1,vars:0,template:function(p,f){1&p&&(t.F$t(),t.Hsn(0))},encapsulation:2,changeDetection:0})}return v})()},42336:(nt,I,o)=>{"use strict";o.d(I,{Y:()=>E});var e=o(65879),n=o(96814),t=o(96109);function i(u,z){if(1&u&&e._UZ(0,"em",3),2&u){const M=e.oxw();e.Q6J("innerHTML",M.prefix,e.oJD)}}function l(u,z){if(1&u&&e._UZ(0,"em",4),2&u){const M=e.oxw();e.Q6J("innerHTML",M.unit,e.oJD)}}const C=["*"];let E=(()=>{class u{constructor(){this.size="default"}static#e=this.\u0275fac=function(h){return new(h||u)};static#t=this.\u0275cmp=e.Xpm({type:u,selectors:[["sv-value"],["","sv-value",""]],hostVars:6,hostBindings:function(h,v){2&h&&e.ekj("sv__value",!0)("sv__value-small","small"===v.size)("sv__value-large","large"===v.size)},inputs:{prefix:"prefix",unit:"unit",tooltip:"tooltip",size:"size"},exportAs:["svValue"],ngContentSelectors:C,decls:4,vars:3,consts:[["class","sv__value-prefix",3,"innerHTML",4,"ngIf"],["nz-tooltip","",1,"sv__value-text",3,"nzTooltipTitle"],["class","sv__value-unit",3,"innerHTML",4,"ngIf"],[1,"sv__value-prefix",3,"innerHTML"],[1,"sv__value-unit",3,"innerHTML"]],template:function(h,v){1&h&&(e.F$t(),e.YNc(0,i,1,1,"em",0),e.TgZ(1,"span",1),e.Hsn(2),e.qZA(),e.YNc(3,l,1,1,"em",2)),2&h&&(e.Q6J("ngIf",v.prefix),e.xp6(1),e.Q6J("nzTooltipTitle",v.tooltip),e.xp6(2),e.Q6J("ngIf",v.unit))},dependencies:[n.O5,t.SY],encapsulation:2,changeDetection:0})}return u})()},36411:(nt,I,o)=>{"use strict";o.d(I,{s:()=>P});var e=o(97582),n=o(20325),t=o(74648),i=o(65879),l=o(66642),C=o(980),E=o(96814),u=o(17131),z=o(96109),M=o(90551),h=o(8324);const v=["conEl"];function g(O,A){if(1&O&&(i.ynx(0),i._uU(1),i.BQk()),2&O){const k=i.oxw(2);i.xp6(1),i.Oqu(k.label)}}function d(O,A){if(1&O&&(i.ynx(0),i._uU(1),i.BQk()),2&O){const k=i.oxw(3);i.xp6(1),i.Oqu(k.optional)}}function p(O,A){if(1&O&&i._UZ(0,"i",11),2&O){const k=i.oxw(3);i.Q6J("nzTooltipTitle",k.optionalHelp)("nzTooltipColor",k.optionalHelpColor)}}function f(O,A){if(1&O&&(i.TgZ(0,"span",9),i.YNc(1,d,2,1,"ng-container",7),i.YNc(2,p,1,2,"i",10),i.qZA()),2&O){const k=i.oxw(2);i.ekj("sv__label-optional-no-text",!k.optional),i.xp6(1),i.Q6J("nzStringTemplateOutlet",k.optional),i.xp6(1),i.Q6J("ngIf",k.optionalHelp)}}function y(O,A){if(1&O&&(i.TgZ(0,"div",5)(1,"span",6),i.YNc(2,g,2,1,"ng-container",7),i.qZA(),i.YNc(3,f,3,4,"span",8),i.qZA()),2&O){const k=i.oxw();i.Udp("width",k.labelWidth,"px"),i.ekj("sv__label-empty",!k.label)("sv__label-width",null!=k.labelWidth)("sv__no-colon",k._noColon),i.xp6(2),i.Q6J("nzStringTemplateOutlet",k.label),i.xp6(1),i.Q6J("ngIf",k.optional||k.optionalHelp)}}function T(O,A){if(1&O&&(i.TgZ(0,"span",13),i._uU(1),i.qZA()),2&O){const k=i.oxw(2);i.xp6(1),i.Oqu(k.unit)}}function x(O,A){if(1&O&&(i.ynx(0),i.YNc(1,T,2,1,"span",12),i.BQk()),2&O){const k=i.oxw();i.xp6(1),i.Q6J("nzStringTemplateOutlet",k.unit)}}const D=["*"],_="sv";class P{get paddingValue(){return this.parent.bordered?null:this.parent.gutter/2}get labelWidth(){const{labelWidth:A,layout:k}=this.parent;return"horizontal"===k?A:null}constructor(A,k,F,W){if(this.el=A,this.parent=k,this.rep=F,this.ren=W,this.clsMap=[],this._noColon=!1,this.hideLabel=!1,null==k)throw new Error("[sv] must include 'sv-container' component")}setClass(){const{ren:A,col:k,clsMap:F,type:W,rep:K,noColon:_e,parent:Y}=this,G=this.el.nativeElement;this._noColon=!!Y.bordered||(_e??Y.noColon),F.forEach(j=>A.removeClass(G,j)),F.length=0;const H=Y.colInCon||Y.col;F.push(...K.genCls(k??H,H)),F.push(`${_}__item`),this.parent.labelWidth&&F.push(`${_}__item-fixed`),W&&F.push(`${_}__type-${W}`),F.forEach(j=>A.addClass(G,j))}ngAfterViewInit(){this.setClass(),this.checkContent()}ngOnChanges(){this.setClass()}checkContent(){const{conEl:A}=this;if(!(this.default??this.parent.default))return;const F=A.nativeElement,W="sv__default";F.classList.contains(W)&&F.classList.remove(W),(0,n.x)(F)&&F.classList.add(W)}static#e=this.\u0275fac=function(k){return new(k||P)(i.Y36(i.SBq),i.Y36(l.v,9),i.Y36(C.kz),i.Y36(i.Qsj))};static#t=this.\u0275cmp=i.Xpm({type:P,selectors:[["sv"],["","sv",""]],viewQuery:function(k,F){if(1&k&&i.Gf(v,5),2&k){let W;i.iGM(W=i.CRH())&&(F.conEl=W.first)}},hostVars:4,hostBindings:function(k,F){2&k&&i.Udp("padding-left",F.paddingValue,"px")("padding-right",F.paddingValue,"px")},inputs:{optional:"optional",optionalHelp:"optionalHelp",optionalHelpColor:"optionalHelpColor",label:"label",unit:"unit",col:"col",default:"default",type:"type",noColon:"noColon",hideLabel:"hideLabel"},exportAs:["sv"],features:[i.TTD],ngContentSelectors:D,decls:6,vars:2,consts:[["class","sv__label",3,"sv__label-empty","sv__label-width","sv__no-colon","width",4,"ngIf"],[1,"sv__detail"],[3,"cdkObserveContent"],["conEl",""],[4,"ngIf"],[1,"sv__label"],[1,"sv__label-text"],[4,"nzStringTemplateOutlet"],["class","sv__label-optional",3,"sv__label-optional-no-text",4,"ngIf"],[1,"sv__label-optional"],["nz-tooltip","","nz-icon","","nzType","question-circle",3,"nzTooltipTitle","nzTooltipColor",4,"ngIf"],["nz-tooltip","","nz-icon","","nzType","question-circle",3,"nzTooltipTitle","nzTooltipColor"],["class","sv__unit",4,"nzStringTemplateOutlet"],[1,"sv__unit"]],template:function(k,F){1&k&&(i.F$t(),i.YNc(0,y,4,10,"div",0),i.TgZ(1,"div",1)(2,"span",2,3),i.NdJ("cdkObserveContent",function(){return F.checkContent()}),i.Hsn(4),i.qZA(),i.YNc(5,x,2,1,"ng-container",4),i.qZA()),2&k&&(i.Q6J("ngIf",!F.hideLabel),i.xp6(5),i.Q6J("ngIf",!!F.unit))},dependencies:[E.O5,u.wD,z.SY,M.Ls,h.f],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,t.Rn)(null)],P.prototype,"col",void 0),(0,e.gn)([(0,t.yF)(null)],P.prototype,"default",void 0),(0,e.gn)([(0,t.yF)(null)],P.prototype,"noColon",void 0),(0,e.gn)([(0,t.yF)()],P.prototype,"hideLabel",void 0)},615:(nt,I,o)=>{"use strict";o.d(I,{P:()=>h});var e=o(97582),n=o(65879),t=o(71993),i=o(74648),l=o(980),C=o(49388),E=o(96814),u=o(90551);function z(v,g){if(1&v){const d=n.EpF();n.TgZ(0,"a",1),n.NdJ("click",function(){n.CHM(d);const f=n.oxw();return n.KtG(f.trigger())}),n._uU(1),n._UZ(2,"i",2),n.qZA()}if(2&v){const d=n.oxw();n.xp6(1),n.hij(" ",d.expand?d.locale.collapse:d.locale.expand," "),n.xp6(1),n.Udp("transform",d.expand?"rotate(-180deg)":null)}}const M=["*"];class h{constructor(g,d,p){this.i18n=g,this.directionality=d,this.cdr=p,this.destroy$=(0,n.f3M)(n.ktI),this.locale={},this.expand=!1,this.dir="ltr",this.expandable=!0,this.change=new n.vpe}ngOnInit(){this.dir=this.directionality.value,this.directionality.change?.pipe((0,t.sL)(this.destroy$)).subscribe(g=>{this.dir=g}),this.i18n.change.pipe((0,t.sL)(this.destroy$)).subscribe(()=>{this.locale=this.i18n.getData("tagSelect"),this.cdr.detectChanges()})}trigger(){this.expand=!this.expand,this.change.emit(this.expand)}static#e=this.\u0275fac=function(d){return new(d||h)(n.Y36(l.s7),n.Y36(C.Is,8),n.Y36(n.sBO))};static#t=this.\u0275cmp=n.Xpm({type:h,selectors:[["tag-select"]],hostVars:10,hostBindings:function(d,p){2&d&&n.ekj("tag-select",!0)("tag-select-rtl","rtl"===p.dir)("tag-select-rtl__has-expand","rtl"===p.dir&&p.expandable)("tag-select__has-expand",p.expandable)("tag-select__expanded",p.expand)},inputs:{expandable:"expandable"},outputs:{change:"change"},exportAs:["tagSelect"],ngContentSelectors:M,decls:2,vars:1,consts:[["class","ant-tag ant-tag-checkable tag-select__trigger",3,"click",4,"ngIf"],[1,"ant-tag","ant-tag-checkable","tag-select__trigger",3,"click"],["nz-icon","","nzType","down"]],template:function(d,p){1&d&&(n.F$t(),n.Hsn(0),n.YNc(1,z,3,3,"a",0)),2&d&&(n.xp6(1),n.Q6J("ngIf",p.expandable))},dependencies:[E.O5,u.Ls],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,i.yF)()],h.prototype,"expandable",void 0)},76020:(nt,I,o)=>{"use strict";o.d(I,{be:()=>z});var e=o(49671),n=o(97582),i=o(74648),l=o(65879),C=o(69862),E=o(64115),u=o(78967);class z{constructor(d,p,f,y){this.http=d,this.lazy=p,this.ngZone=y,this.cog=f.merge("xlsx",{url:"https://cdn.jsdelivr.net/npm/xlsx/dist/xlsx.full.min.js",modules:["https://cdn.jsdelivr.net/npm/xlsx/dist/cpexcel.js"]})}init(){return typeof XLSX<"u"?Promise.resolve([]):this.lazy.load([this.cog.url].concat(this.cog.modules))}read(d){const{read:p,utils:{sheet_to_json:f}}=XLSX,y={},T=new Uint8Array(d);let x="array";if(!function t(g){if(!g)return!1;for(var d=0,p=g.length;d=194&&g[d]<=223){if(g[d+1]>>6==2){d+=2;continue}return!1}if((224===g[d]&&g[d+1]>=160&&g[d+1]<=191||237===g[d]&&g[d+1]>=128&&g[d+1]<=159)&&g[d+2]>>6==2)d+=3;else if((g[d]>=225&&g[d]<=236||g[d]>=238&&g[d]<=239)&&g[d+1]>>6==2&&g[d+2]>>6==2)d+=3;else{if(!(240===g[d]&&g[d+1]>=144&&g[d+1]<=191||g[d]>=241&&g[d]<=243&&g[d+1]>>6==2||244===g[d]&&g[d+1]>=128&&g[d+1]<=143)||g[d+2]>>6!=2||g[d+3]>>6!=2)return!1;d+=4}}return!0}(T))try{d=cptable.utils.decode(936,T),x="string"}catch{}const D=p(d,{type:x});return D.SheetNames.forEach(_=>{y[_]=f(D.Sheets[_],{header:1})}),y}import(d){return new Promise((p,f)=>{const y=T=>this.ngZone.run(()=>p(this.read(T)));this.init().then(()=>{if("string"==typeof d)return void this.http.request("GET",d,{responseType:"arraybuffer"}).subscribe({next:x=>y(new Uint8Array(x)),error:x=>f(x)});const T=new FileReader;T.onload=x=>y(x.target.result),T.onerror=x=>f(x),T.readAsArrayBuffer(d)}).catch(()=>f("Unable to load xlsx.js"))})}export(d){var p=this;return(0,e.Z)(function*(){return new Promise((f,y)=>{p.init().then(()=>{d={format:"xlsx",...d};const{writeFile:T,utils:{book_new:x,aoa_to_sheet:D,book_append_sheet:_}}=XLSX,P=x();Array.isArray(d.sheets)?d.sheets.forEach((A,k)=>{const F=D(A.data);_(P,F,A.name||`Sheet${k+1}`)}):(P.SheetNames=Object.keys(d.sheets),P.Sheets=d.sheets),d.callback&&d.callback(P);const O=d.filename||`export.${d.format}`;T(P,O,{bookType:d.format,bookSST:!1,type:"array",...d.opts}),f({filename:O,wb:P})}).catch(T=>y(T))})})()}numberToSchema(d){const p="A".charCodeAt(0);let f="";do{--d,f=String.fromCharCode(p+d%26)+f,d=d/26>>0}while(d>0);return f}static#e=this.\u0275fac=function(p){return new(p||z)(l.LFG(C.eN),l.LFG(E.Df),l.LFG(u.Ri),l.LFG(l.R0b))};static#t=this.\u0275prov=l.Yz7({token:z,factory:z.\u0275fac,providedIn:"root"})}(0,n.gn)([(0,i.EA)()],z.prototype,"read",null),(0,n.gn)([(0,i.EA)()],z.prototype,"export",null)},27929:(nt,I,o)=>{"use strict";o.d(I,{_8:()=>e._,vy:()=>C.v});var e=o(18481),C=(o(76e3),o(55485),o(55526),o(92474),o(81850))},92474:(nt,I,o)=>{"use strict";o.d(I,{NA:()=>u});var e=o(65592),n=o(22096),t=o(37398),i=o(99397),l=o(65879),C=o(18481),E=o(52787);let u=(()=>{class v{constructor(d,p,f){this.srv=d,this.router=p,this.injector=f}process(d){let p=(d={guard:null,guard_url:this.srv.guard_url,...d}).guard;return"function"==typeof p&&(p=p(this.srv,this.injector)),(p&&p instanceof e.y?p:(0,n.of)(p??null)).pipe((0,t.U)(f=>this.srv.can(f)),(0,i.b)(f=>{f||this.router.navigateByUrl(d.guard_url)}))}static#e=this.\u0275fac=function(p){return new(p||v)(l.LFG(C._),l.LFG(E.F0),l.LFG(l.zs3))};static#t=this.\u0275prov=l.Yz7({token:v,factory:v.\u0275fac})}return v})()},76e3:(nt,I,o)=>{"use strict";o.d(I,{C:()=>i});var e=o(32181),n=o(65879),t=o(18481);let i=(()=>{class l{constructor(E,u,z){this.srv=u,this._viewContainer=z,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._except=!1,this._change$=this.srv.change.pipe((0,e.h)(M=>null!=M)).subscribe(()=>this._updateView()),this._thenTemplateRef=E}set aclIf(E){this._value=E,this._updateView()}set aclIfThen(E){this._thenTemplateRef=E,this._thenViewRef=null,this._updateView()}set aclIfElse(E){this._elseTemplateRef=E,this._elseViewRef=null,this._updateView()}set except(E){this._except=null!=E&&"false"!=`${E}`}get except(){return this._except}_updateView(){const E=this.srv.can(this._value);E&&!this.except||!E&&this.except?this._thenViewRef||(this._viewContainer.clear(),this._elseViewRef=null,this._thenTemplateRef&&(this._thenViewRef=this._viewContainer.createEmbeddedView(this._thenTemplateRef))):this._elseViewRef||(this._viewContainer.clear(),this._thenViewRef=null,this._elseTemplateRef&&(this._elseViewRef=this._viewContainer.createEmbeddedView(this._elseTemplateRef)))}ngOnDestroy(){this._change$.unsubscribe()}static#e=this.\u0275fac=function(u){return new(u||l)(n.Y36(n.Rgc),n.Y36(t._),n.Y36(n.s_b))};static#t=this.\u0275dir=n.lG2({type:l,selectors:[["","aclIf",""]],inputs:{aclIf:"aclIf",aclIfThen:"aclIfThen",aclIfElse:"aclIfElse",except:"except"},exportAs:["aclIf"]})}return l})()},55526:(nt,I,o)=>{"use strict";o.d(I,{R:()=>e});const e={guard_url:"/403"}},55485:(nt,I,o)=>{"use strict";o.d(I,{w:()=>i});var e=o(32181),n=o(65879),t=o(18481);let i=(()=>{class l{set acl(E){this.set(E)}set ability(E){this.set(this.srv.parseAbility(E))}set(E){this._value=E;const u="acl__hide",z=this.el.nativeElement;this.srv.can(this._value)?this.renderer.removeClass(z,u):this.renderer.addClass(z,u)}constructor(E,u,z){this.el=E,this.renderer=u,this.srv=z,this.change$=this.srv.change.pipe((0,e.h)(M=>null!=M)).subscribe(()=>this.set(this._value))}ngOnDestroy(){this.change$.unsubscribe()}static#e=this.\u0275fac=function(u){return new(u||l)(n.Y36(n.SBq),n.Y36(n.Qsj),n.Y36(t._))};static#t=this.\u0275dir=n.lG2({type:l,selectors:[["","acl",""]],inputs:{acl:"acl",ability:["acl-ability","ability"]},exportAs:["acl"]})}return l})()},81850:(nt,I,o)=>{"use strict";o.d(I,{v:()=>u});var e=o(96814),n=o(92474),l=(o(76e3),o(55485),o(18481)),C=o(65879);let u=(()=>{class z{static forRoot(){return{ngModule:z,providers:[l._,n.NA]}}static#e=this.\u0275fac=function(v){return new(v||z)};static#t=this.\u0275mod=C.oAB({type:z});static#n=this.\u0275inj=C.cJS({imports:[e.ez]})}return z})()},18481:(nt,I,o)=>{"use strict";o.d(I,{_:()=>l});var e=o(65619),n=o(55526),t=o(65879),i=o(78967);let l=(()=>{class C{get change(){return this.aclChange.asObservable()}get data(){return{full:this.full,roles:this.roles,abilities:this.abilities}}get guard_url(){return this.options.guard_url}constructor(u){this.roles=[],this.abilities=[],this.full=!1,this.aclChange=new e.X(null),this.options=u.merge("acl",n.R)}parseACLType(u){let z;return z="number"==typeof u?{ability:[u]}:Array.isArray(u)&&u.length>0&&"number"==typeof u[0]?{ability:u}:"object"!=typeof u||Array.isArray(u)?Array.isArray(u)?{role:u}:{role:null==u?[]:[u]}:{...u},{except:!1,...z}}set(u){this.full=!1,this.abilities=[],this.roles=[],this.add(u),this.aclChange.next(u)}setFull(u){this.full=u,this.aclChange.next(u)}setAbility(u){this.set({ability:u})}setRole(u){this.set({role:u})}add(u){u.role&&u.role.length>0&&this.roles.push(...u.role),u.ability&&u.ability.length>0&&this.abilities.push(...u.ability)}attachRole(u){for(const z of u)this.roles.includes(z)||this.roles.push(z);this.aclChange.next(this.data)}attachAbility(u){for(const z of u)this.abilities.includes(z)||this.abilities.push(z);this.aclChange.next(this.data)}removeRole(u){for(const z of u){const M=this.roles.indexOf(z);-1!==M&&this.roles.splice(M,1)}this.aclChange.next(this.data)}removeAbility(u){for(const z of u){const M=this.abilities.indexOf(z);-1!==M&&this.abilities.splice(M,1)}this.aclChange.next(this.data)}can(u){const{preCan:z}=this.options;z&&(u=z(u));const M=this.parseACLType(u);let h=!1;return!0!==this.full&&u?(M.role&&M.role.length>0&&(h="allOf"===M.mode?M.role.every(v=>this.roles.includes(v)):M.role.some(v=>this.roles.includes(v))),M.ability&&M.ability.length>0&&(h="allOf"===M.mode?M.ability.every(v=>this.abilities.includes(v)):M.ability.some(v=>this.abilities.includes(v)))):h=!0,!0===M.except?!h:h}parseAbility(u){return("number"==typeof u||"string"==typeof u||Array.isArray(u))&&(u={ability:Array.isArray(u)?u:[u]}),delete u.role,u}canAbility(u){return this.can(this.parseAbility(u))}static#e=this.\u0275fac=function(z){return new(z||C)(t.LFG(i.Ri))};static#t=this.\u0275prov=t.Yz7({token:C,factory:C.\u0275fac})}return C})()},92724:(nt,I,o)=>{"use strict";o.d(I,{Q:()=>d,C:()=>p});var e=o(65592),n=o(99397),t=o(37398),i=o(22096),l=o(65619),C=o(27163),E=o(64115),u=o(62831),z=o(65879);const M=new z.OlP("DC_STORE_STORAGE_TOKEN",{providedIn:"root",factory:()=>new h((0,z.f3M)(u.t4))});class h{constructor(y){this.platform=y}get(y){return this.platform.isBrowser&&JSON.parse(localStorage.getItem(y)||"null")||null}set(y,T){return this.platform.isBrowser&&localStorage.setItem(y,JSON.stringify(T)),!0}remove(y){this.platform.isBrowser&&localStorage.removeItem(y)}}var v=o(78967),g=o(69862);let d=(()=>{class f{constructor(T,x,D,_){this.store=x,this.http=D,this.platform=_,this.memory=new Map,this.notifyBuffer=new Map,this.meta=new Set,this.freqTick=3e3,this.cog=T.merge("cache",{mode:"promise",reName:"",prefix:"",meta_key:"__cache_meta"}),_.isBrowser&&(this.loadMeta(),this.startExpireNotify())}pushMeta(T){this.meta.has(T)||(this.meta.add(T),this.saveMeta())}removeMeta(T){this.meta.has(T)&&(this.meta.delete(T),this.saveMeta())}loadMeta(){const T=this.store.get(this.cog.meta_key);T&&T.v&&T.v.forEach(x=>this.meta.add(x))}saveMeta(){const T=[];this.meta.forEach(x=>T.push(x)),this.store.set(this.cog.meta_key,{v:T,e:0})}getMeta(){return this.meta}set(T,x,D={}){if(!this.platform.isBrowser)return;let _=0;const{type:P,expire:O}=this.cog;(D={type:P,expire:O,...D}).expire&&(_=(0,C.Z)(new Date,D.expire).valueOf());const A=!1!==D.emitNotify;if(x instanceof e.y)return x.pipe((0,n.b)(k=>{this.save(D.type,T,{v:k,e:_},A)}));this.save(D.type,T,{v:x,e:_},A)}save(T,x,D,_=!0){"m"===T?this.memory.set(x,D):(this.store.set(this.cog.prefix+x,D),this.pushMeta(x)),_&&this.runNotify(x,"set")}get(T,x={}){if(!this.platform.isBrowser)return null;const D="none"!==x.mode&&"promise"===this.cog.mode,_=this.memory.has(T)?this.memory.get(T):this.store.get(this.cog.prefix+T);return!_||_.e&&_.e>0&&_.e<(new Date).valueOf()?D?(this.cog.request?this.cog.request(T):this.http.get(T)).pipe((0,t.U)(P=>(0,E.In)(P,this.cog.reName,P)),(0,n.b)(P=>this.set(T,P,{type:x.type,expire:x.expire,emitNotify:x.emitNotify}))):null:D?(0,i.of)(_.v):_.v}getNone(T){return this.get(T,{mode:"none"})}tryGet(T,x,D={}){if(!this.platform.isBrowser)return null;const _=this.getNone(T);return null===_?x instanceof e.y?this.set(T,x,D):(this.set(T,x,D),x):(0,i.of)(_)}has(T){return this.memory.has(T)||this.meta.has(T)}_remove(T,x){x&&this.runNotify(T,"remove"),this.memory.has(T)?this.memory.delete(T):(this.store.remove(this.cog.prefix+T),this.removeMeta(T))}remove(T){this.platform.isBrowser&&this._remove(T,!0)}clear(){this.platform.isBrowser&&(this.notifyBuffer.forEach((T,x)=>this.runNotify(x,"remove")),this.memory.clear(),this.meta.forEach(T=>this.store.remove(this.cog.prefix+T)))}set freq(T){this.freqTick=Math.max(20,T),this.abortExpireNotify(),this.startExpireNotify()}startExpireNotify(){this.checkExpireNotify(),this.runExpireNotify()}runExpireNotify(){this.freqTime=setTimeout(()=>{this.checkExpireNotify(),this.runExpireNotify()},this.freqTick)}checkExpireNotify(){const T=[];this.notifyBuffer.forEach((x,D)=>{this.has(D)&&null===this.getNone(D)&&T.push(D)}),T.forEach(x=>{this.runNotify(x,"expire"),this._remove(x,!1)})}abortExpireNotify(){clearTimeout(this.freqTime)}runNotify(T,x){this.notifyBuffer.has(T)&&this.notifyBuffer.get(T).next({type:x,value:this.getNone(T)})}notify(T){if(!this.notifyBuffer.has(T)){const x=new l.X(this.getNone(T));this.notifyBuffer.set(T,x)}return this.notifyBuffer.get(T).asObservable()}cancelNotify(T){this.notifyBuffer.has(T)&&(this.notifyBuffer.get(T).unsubscribe(),this.notifyBuffer.delete(T))}hasNotify(T){return this.notifyBuffer.has(T)}clearNotify(){this.notifyBuffer.forEach(T=>T.unsubscribe()),this.notifyBuffer.clear()}ngOnDestroy(){this.memory.clear(),this.abortExpireNotify(),this.clearNotify()}static#e=this.\u0275fac=function(x){return new(x||f)(z.LFG(v.Ri),z.LFG(M),z.LFG(g.eN),z.LFG(u.t4))};static#t=this.\u0275prov=z.Yz7({token:f,factory:f.\u0275fac,providedIn:"root"})}return f})(),p=(()=>{class f{static#e=this.\u0275fac=function(x){return new(x||f)};static#t=this.\u0275mod=z.oAB({type:f});static#n=this.\u0275inj=z.cJS({})}return f})()},69694:(nt,I,o)=>{"use strict";o.d(I,{g:()=>p});var e=o(97582),n=o(65879),t=o(92438),i=o(59773),l=o(32181),C=o(83620),E=o(55611),u=o(74648),z=o(96814),M=o(8324),h=o(24139);function v(f,y){if(1&f&&(n.ynx(0),n.TgZ(1,"h4",3),n._uU(2),n.qZA(),n.BQk()),2&f){const T=n.oxw();n.xp6(2),n.Oqu(T.title)}}function g(f,y){1&f&&n._UZ(0,"nz-skeleton")}class p extends E.$4{constructor(){super(...arguments),this.color="rgba(24, 144, 255, 0.85)",this.height=0,this.padding="auto",this.data=[],this.autoLabel=!0,this.interaction="none",this.clickItem=new n.vpe}getHeight(){return this.title?this.height-41:this.height}install(){const{node:y,padding:T,interaction:x,theme:D}=this,P=this._chart=new this.winG2.Chart({container:y.nativeElement,autoFit:!0,height:this.getHeight(),padding:T,theme:D});this.updatelabel(),P.axis("y",{title:null,line:null,tickLine:null}),P.scale({x:{type:"cat"},y:{min:0}}),P.tooltip({showTitle:!1}),"none"!==x&&P.interaction(x),P.legend(!1),P.interval().position("x*y").color("x*y",(O,A)=>{const k=this.data.find(F=>F.x===O&&F.y===A);return k&&k.color?k.color:this.color}).tooltip("x*y",(O,A)=>({name:O,value:A})),P.on("interval:click",O=>{this.ngZone.run(()=>this.clickItem.emit({item:O.data?.data,ev:O}))}),this.ready.next(P),this.changeData(),P.render(),this.installResizeEvent()}changeData(){const{_chart:y,data:T}=this;!y||!Array.isArray(T)||T.length<=0||y.changeData(T)}updatelabel(){const{node:y,data:T,_chart:x}=this;x.axis("x",y.nativeElement.clientWidth>30*T.length).render()}installResizeEvent(){!this.autoLabel||this.resize$||(this.resize$=(0,t.R)(window,"resize").pipe((0,i.R)(this.destroy$),(0,l.h)(()=>!!this._chart),(0,C.b)(200)).subscribe(()=>this.ngZone.runOutsideAngular(()=>this.updatelabel())))}static#e=this.\u0275fac=function(){let y;return function(x){return(y||(y=n.n5z(p)))(x||p)}}();static#t=this.\u0275cmp=n.Xpm({type:p,selectors:[["g2-bar"]],hostVars:2,hostBindings:function(T,x){2&T&&n.Udp("height",x.height,"px")},inputs:{title:"title",color:"color",height:"height",padding:"padding",data:"data",autoLabel:"autoLabel",interaction:"interaction"},outputs:{clickItem:"clickItem"},exportAs:["g2Bar"],features:[n.qOj],decls:4,vars:2,consts:[[4,"nzStringTemplateOutlet"],[4,"ngIf"],["container",""],[2,"margin-bottom","20px"]],template:function(T,x){1&T&&(n.YNc(0,v,3,1,"ng-container",0),n.YNc(1,g,1,0,"nz-skeleton",1),n._UZ(2,"div",null,2)),2&T&&(n.Q6J("nzStringTemplateOutlet",x.title),n.xp6(1),n.Q6J("ngIf",!x.loaded))},dependencies:[z.O5,M.f,h.ng],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,u.Rn)()],p.prototype,"height",void 0),(0,e.gn)([(0,u.yF)()],p.prototype,"autoLabel",void 0)},68636:(nt,I,o)=>{"use strict";o.d(I,{n:()=>D});var e=o(97582),n=o(74648),t=o(65879),i=o(96814),l=o(82962),C=o(77273),E=o(8324);function u(_,P){if(1&_&&(t.ynx(0),t._uU(1),t.BQk()),2&_){const O=t.oxw();t.xp6(1),t.Oqu(O.avatar)}}function z(_,P){if(1&_&&(t.ynx(0),t._uU(1),t.BQk()),2&_){const O=t.oxw(2);t.xp6(1),t.Oqu(O.title)}}function M(_,P){if(1&_&&(t.TgZ(0,"span",13),t.YNc(1,z,2,1,"ng-container",4),t.qZA()),2&_){const O=t.oxw();t.xp6(1),t.Q6J("nzStringTemplateOutlet",O.title)}}function h(_,P){if(1&_&&(t.ynx(0),t._uU(1),t.BQk()),2&_){const O=t.oxw(2);t.xp6(1),t.Oqu(O.action)}}function v(_,P){if(1&_&&(t.TgZ(0,"span",14),t.YNc(1,h,2,1,"ng-container",4),t.qZA()),2&_){const O=t.oxw();t.xp6(1),t.Q6J("nzStringTemplateOutlet",O.action)}}function g(_,P){if(1&_&&t._UZ(0,"p",15),2&_){const O=t.oxw();t.Q6J("innerHTML",O.total,t.oJD)}}function d(_,P){if(1&_&&(t.ynx(0),t._uU(1),t.BQk()),2&_){const O=t.oxw(2);t.xp6(1),t.Oqu(O.footer)}}function p(_,P){if(1&_&&(t.TgZ(0,"div",16),t.YNc(1,d,2,1,"ng-container",4),t.qZA()),2&_){const O=t.oxw();t.xp6(1),t.Q6J("nzStringTemplateOutlet",O.footer)}}const f=function(){return{padding:"20px 24px 8px 24px"}},y=function(_){return{height:_}},T=function(_){return{"g2-card__fixed":_}},x=["*"];class D{set contentHeight(P){this._orgHeight=P,this._height="number"==typeof P?this._height=`${P}px`:P}constructor(P){this.cdr=P,this.bordered=!1,this.total="",this._height="auto",this.loading=!1}ngOnChanges(){this.cdr.detectChanges()}static#e=this.\u0275fac=function(O){return new(O||D)(t.Y36(t.sBO))};static#t=this.\u0275cmp=t.Xpm({type:D,selectors:[["g2-card"]],hostVars:2,hostBindings:function(O,A){2&O&&t.ekj("g2-card",!0)},inputs:{bordered:"bordered",avatar:"avatar",title:"title",action:"action",total:"total",contentHeight:"contentHeight",footer:"footer",loading:"loading"},exportAs:["g2Card"],features:[t.TTD],ngContentSelectors:x,decls:14,vars:15,consts:[[3,"nzBodyStyle","nzBordered"],[3,"nzSpinning"],[1,"g2-card__top"],[1,"g2-card__avatar"],[4,"nzStringTemplateOutlet"],[1,"g2-card__meta-wrap"],[1,"g2-card__meta"],["class","g2-card__meta-title",4,"ngIf"],["class","g2-card__meta-action",4,"ngIf"],["class","g2-card__total",3,"innerHTML",4,"ngIf"],[1,"g2-card__desc",3,"ngStyle"],[3,"ngClass"],["class","g2-card__footer",4,"ngIf"],[1,"g2-card__meta-title"],[1,"g2-card__meta-action"],[1,"g2-card__total",3,"innerHTML"],[1,"g2-card__footer"]],template:function(O,A){1&O&&(t.F$t(),t.TgZ(0,"nz-card",0)(1,"nz-spin",1)(2,"div",2)(3,"div",3),t.YNc(4,u,2,1,"ng-container",4),t.qZA(),t.TgZ(5,"div",5)(6,"div",6),t.YNc(7,M,2,1,"span",7),t.YNc(8,v,2,1,"span",8),t.qZA(),t.YNc(9,g,1,1,"p",9),t.qZA()(),t.TgZ(10,"div",10)(11,"div",11),t.Hsn(12),t.qZA()(),t.YNc(13,p,2,1,"div",12),t.qZA()()),2&O&&(t.Q6J("nzBodyStyle",t.DdM(10,f))("nzBordered",A.bordered),t.xp6(1),t.Q6J("nzSpinning",A.loading),t.xp6(3),t.Q6J("nzStringTemplateOutlet",A.avatar),t.xp6(3),t.Q6J("ngIf",A.title),t.xp6(1),t.Q6J("ngIf",A.action),t.xp6(1),t.Q6J("ngIf",A.total),t.xp6(1),t.Q6J("ngStyle",t.VKq(11,y,A._height)),t.xp6(1),t.Q6J("ngClass",t.VKq(13,T,!!A._orgHeight)),t.xp6(2),t.Q6J("ngIf",A.footer))},dependencies:[i.mk,i.O5,i.PC,l.bd,C.W,E.f],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,n.yF)()],D.prototype,"bordered",void 0),(0,e.gn)([(0,n.yF)()],D.prototype,"loading",void 0)},59951:(nt,I,o)=>{"use strict";o.d(I,{d:()=>d});var e=o(97582),n=o(65879),t=o(71993),i=o(32181),l=o(92438),C=o(83620),E=o(74648),u=o(27890),z=o(62831),M=o(96814),h=o(24139);const v=["container"];function g(p,f){1&p&&n._UZ(0,"nz-skeleton")}class d{set width(f){this._width="number"==typeof f?`${f}px`:`${f}`}set height(f){this._height="number"==typeof f?`${f}px`:`${f}`}set theme(f){this._theme=f,this._chart&&this.install()}set initOpt(f){this._initOpt=f,this._chart&&this.install()}set option(f){this._option=f,this._chart&&this.setOption(f,!0)}get chart(){return this._chart}constructor(f,y,T,x){this.srv=f,this.cdr=y,this.ngZone=T,this.platform=x,this.destroy$=(0,n.f3M)(n.ktI),this._chart=null,this._width="100%",this._height="400px",this.on=[],this.events=new n.vpe,this.loaded=!1,this.srv.notify.pipe((0,t.sL)(),(0,i.h)(()=>!this.loaded)).subscribe(()=>this.load()),this.theme=f.cog.echartsTheme}emit(f,y){this.events.emit({type:f,chart:this.chart,...y})}load(){this.ngZone.run(()=>{this.loaded=!0,this.cdr.detectChanges()}),this.emit("ready"),this.install()}install(){this.destroy();const f=this._chart=window.echarts.init(this.node.nativeElement,this._theme,this._initOpt);return this.emit("init"),this.setOption(this._option),this.on.forEach(y=>{null!=y.query?f.on(y.eventName,y.query,T=>y.handler({event:T,chart:f})):f.on(y.eventName,T=>y.handler({event:T,chart:f}))}),this}destroy(){return this._chart&&(this._chart.dispose(),this.emit("destroy")),this}setOption(f,y=!1,T=!1){return this._chart&&(this._chart.setOption(f,y,T),this.emit("set-option",{option:f})),this}ngOnInit(){this.platform.isBrowser&&(window.echarts?this.load():this.srv.libLoad(),(0,l.R)(window,"resize").pipe((0,t.sL)(this.destroy$),(0,i.h)(()=>!!this._chart),(0,C.b)(200)).subscribe(()=>this._chart.resize()))}ngOnDestroy(){this.on.forEach(f=>this._chart?.off(f.eventName)),this.destroy()}static#e=this.\u0275fac=function(y){return new(y||d)(n.Y36(u.W),n.Y36(n.sBO),n.Y36(n.R0b),n.Y36(z.t4))};static#t=this.\u0275cmp=n.Xpm({type:d,selectors:[["chart-echarts"],["","chart-echarts",""]],viewQuery:function(y,T){if(1&y&&n.Gf(v,7),2&y){let x;n.iGM(x=n.CRH())&&(T.node=x.first)}},hostVars:6,hostBindings:function(y,T){2&y&&n.Udp("display","inline-block")("width",T._width)("height",T._height)},inputs:{width:"width",height:"height",theme:"theme",initOpt:"initOpt",option:"option",on:"on"},outputs:{events:"events"},exportAs:["chartECharts"],decls:3,vars:5,consts:[[4,"ngIf"],["container",""]],template:function(y,T){1&y&&(n.YNc(0,g,1,0,"nz-skeleton",0),n._UZ(1,"div",null,1)),2&y&&(n.Q6J("ngIf",!T.loaded),n.xp6(1),n.Udp("width",T._width)("height",T._height))},dependencies:[M.O5,h.ng],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,E.EA)()],d.prototype,"load",null)},27890:(nt,I,o)=>{"use strict";o.d(I,{W:()=>l});var e=o(78645),n=o(65879),t=o(78967),i=o(64115);let l=(()=>{class C{get cog(){return this._cog}set cog(u){this._cog=this.cogSrv.merge("chart",{theme:"",echartsLib:"https://cdnjs.cloudflare.com/ajax/libs/echarts/5.1.0/echarts.min.js"},u)}constructor(u,z){this.cogSrv=u,this.lazySrv=z,this.loading=!1,this.loaded=!1,this.notify$=new e.x,this.cog={theme:""}}libLoad(){return this.loading?(this.loaded&&this.notify$.next(),this):(this.loading=!0,this.lazySrv.load(this.cog.echartsLib).then(()=>{const u=this.cog.echartsExtensions;return Array.isArray(u)&&u.length>0?this.lazySrv.load(u).then(()=>!0):Promise.resolve(!0)}).then(()=>{this.loaded=!0,this.notify$.next()}),this)}get notify(){return this.notify$.asObservable()}ngOnDestroy(){this.notify$.unsubscribe()}static#e=this.\u0275fac=function(z){return new(z||C)(n.LFG(t.Ri),n.LFG(i.Df))};static#t=this.\u0275prov=n.Yz7({token:C,factory:C.\u0275fac,providedIn:"root"})}return C})()},55611:(nt,I,o)=>{"use strict";o.d(I,{$4:()=>v,Or:()=>g});var e=o(78645),n=o(65879),t=o(78967),i=o(64115);let l=(()=>{class d{get cog(){return this._cog}set cog(f){this._cog=this.cogSrv.merge("chart",{theme:"",libs:["https://gw.alipayobjects.com/os/lib/antv/g2/4.1.46/dist/g2.min.js","https://gw.alipayobjects.com/os/lib/antv/data-set/0.11.8/dist/data-set.js"]},f)}constructor(f,y){this.cogSrv=f,this.lazySrv=y,this.loading=!1,this.loaded=!1,this.notify$=new e.x,this.cog={theme:""}}libLoad(){return this.loading?(this.loaded&&this.notify$.next(),this):(this.loading=!0,this.lazySrv.load(this.cog.libs).then(()=>{this.loaded=!0,this.notify$.next()}),this)}get notify(){return this.notify$.asObservable()}ngOnDestroy(){this.notify$.unsubscribe()}static#e=this.\u0275fac=function(y){return new(y||d)(n.LFG(t.Ri),n.LFG(i.Df))};static#t=this.\u0275prov=n.Yz7({token:d,factory:d.\u0275fac,providedIn:"root"})}return d})();var C=o(97582),E=o(59773),u=o(32181),z=o(74648),M=o(62831);const h=["container"];class v{get chart(){return this._chart}get winG2(){return window.G2}constructor(p,f,y,T,x){this.srv=p,this.el=f,this.ngZone=y,this.platform=T,this.cdr=x,this.repaint=!0,this.destroy$=new e.x,this.loaded=!1,this.delay=0,this.ready=new n.vpe,this.theme=p.cog.theme,this.srv.notify.pipe((0,E.R)(this.destroy$),(0,u.h)(()=>!this.loaded)).subscribe(()=>this.load())}changeData(){}onInit(){}onChanges(p){}load(){this.ngZone.run(()=>{this.loaded=!0,this.cdr.detectChanges()}),setTimeout(()=>this.install(),this.delay)}ngOnInit(){this.platform.isBrowser&&(this.onInit(),this.winG2?this.load():this.srv.libLoad())}ngOnChanges(p){this.onChanges(p),(this.onlyChangeData?this.onlyChangeData(p):1===Object.keys(p).length&&p.data)?this.changeData():!this.chart||!this.repaint||this.ngZone.runOutsideAngular(()=>{this.destroyChart().install()})}destroyChart(){return this._chart&&this._chart.destroy(),this}ngOnDestroy(){this.resize$&&this.resize$.unsubscribe(),this.destroy$.next(),this.destroy$.complete(),this.destroyChart()}static#e=this.\u0275fac=function(f){return new(f||v)(n.Y36(l),n.Y36(n.SBq),n.Y36(n.R0b),n.Y36(M.t4),n.Y36(n.sBO))};static#t=this.\u0275dir=n.lG2({type:v,viewQuery:function(f,y){if(1&f&&n.Gf(h,7),2&f){let T;n.iGM(T=n.CRH())&&(y.node=T.first)}},inputs:{repaint:"repaint",delay:"delay",theme:"theme"},outputs:{ready:"ready"},features:[n.TTD]})}function g(d,p){const f={showTitle:!1,showMarkers:!0,enterable:!0,domStyles:{"g2-tooltip":{padding:"0px"},"g2-tooltip-title":{display:"none"},"g2-tooltip-list-item":{margin:"4px"}},...p};return"mini"===d&&(f.position="top",f.domStyles["g2-tooltip"]={padding:"0px",backgroundColor:"transparent",boxShadow:"none"},f.itemTpl="
    3. {value}
    4. ",f.offset=8),f}(0,C.gn)([(0,z.yF)()],v.prototype,"repaint",void 0),(0,C.gn)([(0,z.Rn)()],v.prototype,"delay",void 0),(0,C.gn)([(0,z.EA)()],v.prototype,"load",null),(0,C.gn)([(0,z.EA)()],v.prototype,"destroyChart",null)},7802:(nt,I,o)=>{"use strict";o.d(I,{A:()=>v});var e=o(97582),n=o(65879),t=o(92438),i=o(59773),l=o(83620),C=o(55611),E=o(74648),u=o(96814),z=o(24139);function M(g,d){1&g&&n._UZ(0,"nz-skeleton")}const h=["*"];class v extends C.$4{constructor(){super(...arguments),this.resizeTime=0,this.render=new n.vpe,this.resize=new n.vpe,this.destroy=new n.vpe}install(){this.el.nativeElement.innerHTML="",this.render.emit(this.el),this.installResizeEvent()}installResizeEvent(){this.resizeTime<=0||(0,t.R)(window,"resize").pipe((0,i.R)(this.destroy$),(0,l.b)(Math.min(200,this.resizeTime))).subscribe(()=>this.resize.emit(this.el))}static#e=this.\u0275fac=function(){let d;return function(f){return(d||(d=n.n5z(v)))(f||v)}}();static#t=this.\u0275cmp=n.Xpm({type:v,selectors:[["g2"],["g2-custom"]],hostVars:2,hostBindings:function(p,f){2&p&&n.Udp("height",f.height,"px")},inputs:{height:"height",resizeTime:"resizeTime"},outputs:{render:"render",resize:"resize",destroy:"destroy"},exportAs:["g2Custom"],features:[n.qOj],ngContentSelectors:h,decls:2,vars:1,consts:[[4,"ngIf"]],template:function(p,f){1&p&&(n.F$t(),n.YNc(0,M,1,0,"nz-skeleton",0),n.Hsn(1)),2&p&&n.Q6J("ngIf",!f.loaded)},dependencies:[u.O5,z.ng],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,E.Rn)()],v.prototype,"height",void 0),(0,e.gn)([(0,E.Rn)()],v.prototype,"resizeTime",void 0)},61198:(nt,I,o)=>{"use strict";o.d(I,{j:()=>u});var e=o(97582),n=o(55611),t=o(74648),i=o(65879),l=o(96814),C=o(24139);function E(z,M){1&z&&i._UZ(0,"nz-skeleton")}class u extends n.$4{constructor(){super(...arguments),this.color="#2f9cff",this.padding=[10,10,30,10]}install(){this.winG2.registerShape("point","pointer",{draw(f,y){const T=y.addGroup({}),x=this.parsePoint({x:0,y:0});return T.addShape("line",{attrs:{x1:x.x,y1:x.y,x2:f.x,y2:f.y,stroke:f.color,lineWidth:2.5,lineCap:"round"}}),T.addShape("circle",{attrs:{x:x.x,y:x.y,r:5.75,stroke:f.color,lineWidth:2,fill:"#fff"}}),T}});const{el:M,height:h,padding:v,format:g,theme:d}=this,p=this._chart=new this.winG2.Chart({container:M.nativeElement,autoFit:!0,height:h,padding:v,theme:d});p.legend(!1),p.animate(!1),p.tooltip(!1),p.coordinate("polar",{startAngle:-9/8*Math.PI,endAngle:1/8*Math.PI,radius:.75}),p.scale("value",{min:0,max:100,nice:!0,tickCount:6}),p.axis("1",!1),p.axis("value",{line:null,label:{offset:-14,formatter:g},tickLine:null,grid:null}),p.point().position("value*1").shape("pointer"),this.ready.next(p),this.changeData(),p.render()}changeData(){const{_chart:M,percent:h,color:v,bgColor:g,title:d}=this;if(!M)return;const p=[{name:d,value:h}],f=p[0].value;M.annotation().clear(!0),M.geometries[0].color(v),M.annotation().arc({top:!1,start:[0,.95],end:[100,.95],style:{stroke:g,lineWidth:12,lineDash:null}}),M.annotation().arc({start:[0,.95],end:[p[0].value,.95],style:{stroke:v,lineWidth:12,lineDash:null}}),M.annotation().text({position:["50%","85%"],content:d,style:{fontSize:12,fill:"dark"===this.theme?"rgba(255, 255, 255, 0.43)":"rgba(0, 0, 0, 0.43)",textAlign:"center"}}),M.annotation().text({position:["50%","90%"],content:`${f} %`,style:{fontSize:20,fill:"dark"===this.theme?"rgba(255, 255, 255, 0.85)":"rgba(0, 0, 0, 0.85)",textAlign:"center"},offsetY:15}),M.changeData(p)}static#e=this.\u0275fac=function(){let M;return function(v){return(M||(M=i.n5z(u)))(v||u)}}();static#t=this.\u0275cmp=i.Xpm({type:u,selectors:[["g2-gauge"]],hostVars:2,hostBindings:function(h,v){2&h&&i.ekj("g2-gauge",!0)},inputs:{title:"title",height:"height",color:"color",bgColor:"bgColor",format:"format",percent:"percent",padding:"padding"},exportAs:["g2Gauge"],features:[i.qOj],decls:1,vars:1,consts:[[4,"ngIf"]],template:function(h,v){1&h&&i.YNc(0,E,1,0,"nz-skeleton",0),2&h&&i.Q6J("ngIf",!v.loaded)},dependencies:[l.O5,C.ng],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,t.Rn)()],u.prototype,"height",void 0),(0,e.gn)([(0,t.Rn)()],u.prototype,"percent",void 0)},91289:(nt,I,o)=>{"use strict";o.d(I,{D:()=>l});var e=o(97582),n=o(65879),t=o(55611),i=o(74648);class l extends t.$4{constructor(){super(...arguments),this.color="rgba(24, 144, 255, 0.2)",this.borderColor="#1890FF",this.borderWidth=2,this.height=56,this.fit=!0,this.line=!1,this.animate=!0,this.padding=[8,8,8,8],this.data=[],this.yTooltipSuffix="",this.tooltipType="default",this.clickItem=new n.vpe}install(){const{el:E,fit:u,height:z,padding:M,xAxis:h,yAxis:v,yTooltipSuffix:g,tooltipType:d,line:p,theme:f,animate:y,color:T,borderColor:x,borderWidth:D}=this,_=this._chart=new this.winG2.Chart({container:E.nativeElement,autoFit:u,height:z,padding:M,theme:f});_.animate(y),!h&&!v&&_.axis(!1),_.axis("x",h||!1),_.axis("y",v||!1),_.legend(!1),_.tooltip((0,t.Or)(d)),_.area().position("x*y").color(T).tooltip("x*y",(P,O)=>({name:P,value:O+g})).shape("smooth"),p&&_.line().position("x*y").shape("smooth").color(x).size(D).tooltip(!1),_.on("plot:click",P=>{const O=this._chart.getSnapRecords({x:P.x,y:P.y});this.ngZone.run(()=>this.clickItem.emit({item:O[0]._origin,ev:P}))}),this.ready.next(_),this.changeData(),_.render()}changeData(){const{_chart:E,data:u}=this;!E||!Array.isArray(u)||u.length<=0||E.changeData(u)}static#e=this.\u0275fac=function(){let E;return function(z){return(E||(E=n.n5z(l)))(z||l)}}();static#t=this.\u0275cmp=n.Xpm({type:l,selectors:[["g2-mini-area"]],hostVars:2,hostBindings:function(u,z){2&u&&n.Udp("height",z.height,"px")},inputs:{color:"color",borderColor:"borderColor",borderWidth:"borderWidth",height:"height",fit:"fit",line:"line",animate:"animate",xAxis:"xAxis",yAxis:"yAxis",padding:"padding",data:"data",yTooltipSuffix:"yTooltipSuffix",tooltipType:"tooltipType"},outputs:{clickItem:"clickItem"},exportAs:["g2MiniArea"],features:[n.qOj],decls:0,vars:0,template:function(u,z){},encapsulation:2,changeDetection:0})}(0,e.gn)([(0,i.Rn)()],l.prototype,"borderWidth",void 0),(0,e.gn)([(0,i.Rn)()],l.prototype,"height",void 0),(0,e.gn)([(0,i.yF)()],l.prototype,"fit",void 0),(0,e.gn)([(0,i.yF)()],l.prototype,"line",void 0),(0,e.gn)([(0,i.yF)()],l.prototype,"animate",void 0)},77322:(nt,I,o)=>{"use strict";o.d(I,{N:()=>l});var e=o(97582),n=o(65879),t=o(55611),i=o(74648);class l extends t.$4{constructor(){super(...arguments),this.color="#1890FF",this.height=0,this.borderWidth=5,this.padding=[8,8,8,8],this.data=[],this.yTooltipSuffix="",this.tooltipType="default",this.clickItem=new n.vpe}install(){const{el:E,height:u,padding:z,yTooltipSuffix:M,tooltipType:h,theme:v,color:g,borderWidth:d}=this,p=this._chart=new this.winG2.Chart({container:E.nativeElement,autoFit:!0,height:u,padding:z,theme:v});p.scale({x:{type:"cat"},y:{min:0}}),p.legend(!1),p.axis(!1),p.tooltip((0,t.Or)(h,{showCrosshairs:!1})),p.interval().position("x*y").color("x*y",(f,y)=>{const T=this.data.find(x=>x.x===f&&x.y===y);return T&&T.color?T.color:g}).size(d).tooltip("x*y",(f,y)=>({name:f,value:y+M})),p.on("interval:click",f=>{this.ngZone.run(()=>this.clickItem.emit({item:f.data?.data,ev:f}))}),this.ready.next(p),this.changeData(),p.render()}changeData(){const{_chart:E,data:u}=this;!E||!Array.isArray(u)||u.length<=0||E.changeData(u)}static#e=this.\u0275fac=function(){let E;return function(z){return(E||(E=n.n5z(l)))(z||l)}}();static#t=this.\u0275cmp=n.Xpm({type:l,selectors:[["g2-mini-bar"]],hostVars:2,hostBindings:function(u,z){2&u&&n.Udp("height",z.height,"px")},inputs:{color:"color",height:"height",borderWidth:"borderWidth",padding:"padding",data:"data",yTooltipSuffix:"yTooltipSuffix",tooltipType:"tooltipType"},outputs:{clickItem:"clickItem"},exportAs:["g2MiniBar"],features:[n.qOj],decls:0,vars:0,template:function(u,z){},encapsulation:2,changeDetection:0})}(0,e.gn)([(0,i.Rn)()],l.prototype,"height",void 0),(0,e.gn)([(0,i.Rn)()],l.prototype,"borderWidth",void 0)},9730:(nt,I,o)=>{"use strict";o.d(I,{c:()=>M});var e=o(97582),n=o(74648),t=o(65879),i=o(980),l=o(96814),C=o(96109);const E=function(h){return{"left.%":h}},u=function(h){return{"background-color":h}},z=function(h,v,g){return{"background-color":h,"width.%":v,"height.px":g}};class M{constructor(v,g){this.i18n=v,this.cdr=g,this.color="#1890FF"}fixNum(v){return Math.min(Math.max((0,n.He)(v),0),100)}ngOnChanges(){this.target=this.fixNum(this.target),this.percent=this.fixNum(this.percent),this.cdr.detectChanges()}static#e=this.\u0275fac=function(g){return new(g||M)(t.Y36(i.s7),t.Y36(t.sBO))};static#t=this.\u0275cmp=t.Xpm({type:M,selectors:[["g2-mini-progress"]],hostVars:2,hostBindings:function(g,d){2&g&&t.ekj("g2-mini-progress",!0)},inputs:{color:"color",target:"target",percent:"percent",strokeWidth:"strokeWidth"},exportAs:["g2MiniProgress"],features:[t.TTD],decls:5,vars:15,consts:[["nz-tooltip","",1,"g2-mini-progress__target",3,"nzTooltipTitle","ngStyle"],[1,"g2-mini-progress__target-item",3,"ngStyle"],[1,"g2-mini-progress__wrap"],[1,"g2-mini-progress__value",3,"ngStyle"]],template:function(g,d){1&g&&(t.TgZ(0,"div",0),t._UZ(1,"span",1)(2,"span",1),t.qZA(),t.TgZ(3,"div",2),t._UZ(4,"div",3),t.qZA()),2&g&&(t.Q6J("nzTooltipTitle",d.i18n.getData("miniProgress").target+d.target+"%")("ngStyle",t.VKq(5,E,d.target)),t.xp6(1),t.Q6J("ngStyle",t.VKq(7,u,d.color)),t.xp6(1),t.Q6J("ngStyle",t.VKq(9,u,d.color)),t.xp6(2),t.Q6J("ngStyle",t.kEZ(11,z,d.color,d.percent,d.strokeWidth)))},dependencies:[l.PC,C.SY],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,n.Rn)()],M.prototype,"target",void 0),(0,e.gn)([(0,n.Rn)()],M.prototype,"percent",void 0),(0,e.gn)([(0,n.Rn)()],M.prototype,"strokeWidth",void 0)},84420:(nt,I,o)=>{"use strict";o.d(I,{i:()=>y});var e=o(97582),n=o(74648),t=o(65879),i=o(96814),l=o(90551),C=o(8324);function E(T,x){if(1&T&&(t.ynx(0),t._uU(1),t.BQk()),2&T){const D=t.oxw(2);t.xp6(1),t.Oqu(D.title)}}function u(T,x){if(1&T&&(t.TgZ(0,"div",7),t.YNc(1,E,2,1,"ng-container",4),t.qZA()),2&T){const D=t.oxw();t.xp6(1),t.Q6J("nzStringTemplateOutlet",D.title)}}function z(T,x){if(1&T&&(t.ynx(0),t._uU(1),t.BQk()),2&T){const D=t.oxw(2);t.xp6(1),t.Oqu(D.subTitle)}}function M(T,x){if(1&T&&(t.TgZ(0,"div",8),t.YNc(1,z,2,1,"ng-container",4),t.qZA()),2&T){const D=t.oxw();t.xp6(1),t.Q6J("nzStringTemplateOutlet",D.subTitle)}}function h(T,x){if(1&T&&(t.ynx(0),t._uU(1),t.BQk()),2&T){const D=t.oxw();t.xp6(1),t.Oqu(D.total)}}function v(T,x){if(1&T&&(t.TgZ(0,"em",9),t._uU(1),t.qZA()),2&T){const D=t.oxw();t.xp6(1),t.Oqu(D.suffix)}}function g(T,x){if(1&T&&(t.ynx(0),t._uU(1),t.BQk()),2&T){const D=t.oxw(2);t.xp6(1),t.Oqu(D.subTotal)}}function d(T,x){if(1&T&&t._UZ(0,"i",12),2&T){const D=t.oxw(2);t.MGl("nzType","caret-",D.status,"")}}function p(T,x){if(1&T&&(t.TgZ(0,"span",10),t.YNc(1,g,2,1,"ng-container",4),t.YNc(2,d,1,1,"i",11),t.qZA()),2&T){const D=t.oxw();t.xp6(1),t.Q6J("nzStringTemplateOutlet",D.subTotal),t.xp6(1),t.Q6J("ngIf",D.status)}}const f=function(T){return{"margin-top.px":T}};class y{constructor(){this.theme="light",this.gap=8}static#e=this.\u0275fac=function(D){return new(D||y)};static#t=this.\u0275cmp=t.Xpm({type:y,selectors:[["number-info"]],hostVars:6,hostBindings:function(D,_){2&D&&t.ekj("number-info",!0)("number-info__light","light"===_.theme)("number-info__default","default"===_.theme)},inputs:{title:"title",subTitle:"subTitle",total:"total",subTotal:"subTotal",suffix:"suffix",status:"status",theme:"theme",gap:"gap"},exportAs:["numberInfo"],decls:7,vars:8,consts:[["class","number-info__title",4,"ngIf"],["class","number-info__title-sub",4,"ngIf"],[1,"number-info__value",3,"ngStyle"],[1,"number-info__value-text"],[4,"nzStringTemplateOutlet"],["class","number-info__value-suffix",4,"ngIf"],["class","number-info__value-text number-info__value-sub",4,"ngIf"],[1,"number-info__title"],[1,"number-info__title-sub"],[1,"number-info__value-suffix"],[1,"number-info__value-text","number-info__value-sub"],["nz-icon","",3,"nzType",4,"ngIf"],["nz-icon","",3,"nzType"]],template:function(D,_){1&D&&(t.YNc(0,u,2,1,"div",0),t.YNc(1,M,2,1,"div",1),t.TgZ(2,"div",2)(3,"span",3),t.YNc(4,h,2,1,"ng-container",4),t.YNc(5,v,2,1,"em",5),t.qZA(),t.YNc(6,p,3,2,"span",6),t.qZA()),2&D&&(t.Q6J("ngIf",_.title),t.xp6(1),t.Q6J("ngIf",_.subTitle),t.xp6(1),t.Q6J("ngStyle",t.VKq(6,f,_.gap)),t.xp6(2),t.Q6J("nzStringTemplateOutlet",_.total),t.xp6(1),t.Q6J("ngIf",_.suffix),t.xp6(1),t.Q6J("ngIf",_.status||_.subTotal))},dependencies:[i.O5,i.PC,l.Ls,C.f],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,n.Rn)()],y.prototype,"gap",void 0)},22595:(nt,I,o)=>{"use strict";o.d(I,{J:()=>T});var e=o(97582),n=o(65879),t=o(55611),i=o(74648),l=o(96814),C=o(66987),E=o(8324),u=o(24139);function z(x,D){1&x&&n._UZ(0,"nz-skeleton")}function M(x,D){if(1&x&&(n.ynx(0),n._UZ(1,"div",10),n.BQk()),2&x){const _=n.oxw(3);n.xp6(1),n.Q6J("innerHTML",_.subTitle,n.oJD)}}function h(x,D){if(1&x&&(n.TgZ(0,"h4",8),n.YNc(1,M,2,1,"ng-container",9),n.qZA()),2&x){const _=n.oxw(2);n.xp6(1),n.Q6J("nzStringTemplateOutlet",_.subTitle)}}function v(x,D){if(1&x&&(n.ynx(0),n._UZ(1,"div",10),n.BQk()),2&x){const _=n.oxw(3);n.xp6(1),n.Q6J("innerHTML",_.total,n.oJD)}}function g(x,D){if(1&x&&(n.TgZ(0,"div",11),n.YNc(1,v,2,1,"ng-container",9),n.qZA()),2&x){const _=n.oxw(2);n.xp6(1),n.Q6J("nzStringTemplateOutlet",_.total)}}function d(x,D){if(1&x&&(n.TgZ(0,"div",5),n.YNc(1,h,2,1,"h4",6),n.YNc(2,g,2,1,"div",7),n.qZA()),2&x){const _=n.oxw();n.xp6(1),n.Q6J("ngIf",_.subTitle),n.xp6(1),n.Q6J("ngIf",_.total)}}const p=function(x){return{"background-color":x}};function f(x,D){if(1&x){const _=n.EpF();n.TgZ(0,"li",14),n.NdJ("click",function(){const A=n.CHM(_).index,k=n.oxw(2);return n.KtG(k._click(A))}),n._UZ(1,"span",15),n.TgZ(2,"span",16),n._uU(3),n.qZA(),n._UZ(4,"nz-divider",17),n.TgZ(5,"span",18),n._uU(6),n.qZA(),n._UZ(7,"span",19),n.qZA()}if(2&x){const _=D.$implicit,P=n.oxw(2);n.xp6(1),n.Q6J("ngStyle",n.VKq(4,p,_.checked?_.color:"#aaa")),n.xp6(2),n.Oqu(_.x),n.xp6(3),n.hij("",_.percent,"%"),n.xp6(1),n.Q6J("innerHTML",P.valueFormat?P.valueFormat(_.y):_.y,n.oJD)}}function y(x,D){if(1&x&&(n.TgZ(0,"ul",12),n.YNc(1,f,8,6,"li",13),n.qZA()),2&x){const _=n.oxw();n.xp6(1),n.Q6J("ngForOf",_.legendData)}}class T extends t.$4{constructor(){super(...arguments),this.legendData=[],this.isPercent=!1,this.animate=!0,this.color="rgba(24, 144, 255, 0.85)",this.height=0,this.hasLegend=!1,this.inner=.75,this.padding=[12,0,12,0],this.tooltip=!0,this.lineWidth=0,this.blockMaxWidth=380,this.select=!0,this.data=[],this.interaction="none",this.ratio={text:"\u5360\u6bd4",inverse:"\u53cd\u6bd4",color:"",inverseColor:"#F0F2F5"},this.clickItem=new n.vpe,this.block=!1}fixData(){const{percent:D,color:_}=this;if(this.isPercent=null!=D,!this.isPercent)return;this.select=!1,this.tooltip=!1;const{text:P,inverse:O,color:A,inverseColor:k}=this.ratio;this.percentColor=F=>F===P?A||_:k,this.data=[{x:P,y:D},{x:O,y:100-D}]}updateBlock(){this.block=this._chart&&this.hasLegend&&this.el.nativeElement.clientWidth<=this.blockMaxWidth,this.cdr.detectChanges()}install(){const{node:D,height:_,padding:P,tooltip:O,inner:A,hasLegend:k,interaction:F,theme:W,animate:K,lineWidth:_e,isPercent:Y,percentColor:G,colors:H}=this,j=this._chart=new this.winG2.Chart({container:D.nativeElement,autoFit:!0,height:_,padding:P,theme:W});j.animate(K),j.tooltip(!!O&&{showTitle:!1,showMarkers:!1}),"none"!==F&&j.interaction(F),j.axis(!1).legend(!1).coordinate("theta",{innerRadius:A}),j.filter("x",(te,ne)=>!1!==ne.checked),j.interval().adjust("stack").position("y").style({lineWidth:_e,stroke:"#fff"}).color("x",Y?G:H).tooltip("x*percent",(te,ne)=>({name:te,value:`${k?ne:(100*ne).toFixed(2)} %`})).state({}),j.scale({x:{type:"cat",range:[0,1]}}),j.on("interval:click",te=>{this.ngZone.run(()=>this.clickItem.emit({item:te.data?.data,ev:te}))}).on("afterrender",()=>{this.ngZone.run(()=>this.updateBlock())}),this.ready.next(j),this.changeData(),j.render()}changeData(){const{_chart:D,data:_}=this;if(!D||!Array.isArray(_)||_.length<=0)return;const P=_.reduce((O,A)=>O+A.y,0);for(const O of _)O.percent=0===P?0:O.y/P;D.changeData(_),this.ngZone.run(()=>this.genLegend())}genLegend(){const{hasLegend:D,isPercent:_,cdr:P,_chart:O}=this;!D||_||(this.legendData=O.geometries[0].dataArray.map(A=>{const k=A[0]._origin;return k.color=A[0].color,k.checked=!0,k.percent=(100*k.percent).toFixed(2),k}),P.detectChanges())}_click(D){const{legendData:_,_chart:P}=this;_[D].checked=!_[D].checked,P.render(!0)}onChanges(){this.fixData()}static#e=this.\u0275fac=function(){let D;return function(P){return(D||(D=n.n5z(T)))(P||T)}}();static#t=this.\u0275cmp=n.Xpm({type:T,selectors:[["g2-pie"]],hostVars:8,hostBindings:function(_,P){2&_&&n.ekj("g2-pie",!0)("g2-pie__legend-has",P.hasLegend)("g2-pie__legend-block",P.block)("g2-pie__mini",P.isPercent)},inputs:{animate:"animate",color:"color",subTitle:"subTitle",total:"total",height:"height",hasLegend:"hasLegend",inner:"inner",padding:"padding",percent:"percent",tooltip:"tooltip",lineWidth:"lineWidth",blockMaxWidth:"blockMaxWidth",select:"select",valueFormat:"valueFormat",data:"data",colors:"colors",interaction:"interaction",ratio:"ratio"},outputs:{clickItem:"clickItem"},exportAs:["g2Pie"],features:[n.qOj],decls:6,vars:3,consts:[[4,"ngIf"],[1,"g2-pie__chart"],["container",""],["class","g2-pie__total",4,"ngIf"],["class","g2-pie__legend",4,"ngIf"],[1,"g2-pie__total"],["class","g2-pie__total-title",4,"ngIf"],["class","g2-pie__total-stat",4,"ngIf"],[1,"g2-pie__total-title"],[4,"nzStringTemplateOutlet"],[3,"innerHTML"],[1,"g2-pie__total-stat"],[1,"g2-pie__legend"],["class","g2-pie__legend-item",3,"click",4,"ngFor","ngForOf"],[1,"g2-pie__legend-item",3,"click"],[1,"g2-pie__legend-dot",3,"ngStyle"],[1,"g2-pie__legend-title"],["nzType","vertical"],[1,"g2-pie__legend-percent"],[1,"g2-pie__legend-value",3,"innerHTML"]],template:function(_,P){1&_&&(n.YNc(0,z,1,0,"nz-skeleton",0),n.TgZ(1,"div",1),n._UZ(2,"div",null,2),n.YNc(4,d,3,2,"div",3),n.qZA(),n.YNc(5,y,2,1,"ul",4)),2&_&&(n.Q6J("ngIf",!P.loaded),n.xp6(4),n.Q6J("ngIf",P.subTitle||P.total),n.xp6(1),n.Q6J("ngIf",P.hasLegend&&(null==P.legendData?null:P.legendData.length)))},dependencies:[l.sg,l.O5,l.PC,C.g,E.f,u.ng],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,i.yF)()],T.prototype,"animate",void 0),(0,e.gn)([(0,i.Rn)()],T.prototype,"height",void 0),(0,e.gn)([(0,i.yF)()],T.prototype,"hasLegend",void 0),(0,e.gn)([(0,i.Rn)()],T.prototype,"percent",void 0),(0,e.gn)([(0,i.yF)()],T.prototype,"tooltip",void 0),(0,e.gn)([(0,i.Rn)()],T.prototype,"lineWidth",void 0),(0,e.gn)([(0,i.Rn)()],T.prototype,"blockMaxWidth",void 0),(0,e.gn)([(0,i.yF)()],T.prototype,"select",void 0)},91183:(nt,I,o)=>{"use strict";o.d(I,{R:()=>d});var e=o(97582),n=o(65879),t=o(55611),i=o(74648),l=o(96814),C=o(10095),E=o(8324),u=o(24139);function z(p,f){1&p&&n._UZ(0,"nz-skeleton")}function M(p,f){if(1&p&&(n.ynx(0),n.TgZ(1,"h4"),n._uU(2),n.qZA(),n.BQk()),2&p){const y=n.oxw();n.xp6(2),n.Oqu(y.title)}}const h=function(p){return{"background-color":p}};function v(p,f){if(1&p){const y=n.EpF();n.TgZ(0,"div",6),n.NdJ("click",function(){const D=n.CHM(y).index,_=n.oxw(2);return n.KtG(_._click(D))}),n._UZ(1,"i",7),n._uU(2),n.TgZ(3,"h6",8),n._uU(4),n.qZA()()}if(2&p){const y=f.$implicit,T=n.oxw(2);n.Q6J("nzSpan",24/T.legendData.length),n.xp6(1),n.Q6J("ngStyle",n.VKq(4,h,y.checked?y.color:"#aaa")),n.xp6(1),n.hij(" ",y.name," "),n.xp6(2),n.Oqu(y.value)}}function g(p,f){if(1&p&&(n.TgZ(0,"div",4),n.YNc(1,v,5,6,"div",5),n.qZA()),2&p){const y=n.oxw();n.xp6(1),n.Q6J("ngForOf",y.legendData)}}class d extends t.$4{constructor(){super(...arguments),this.legendData=[],this.height=0,this.padding=[44,30,16,30],this.hasLegend=!0,this.tickCount=4,this.data=[],this.colors=["#1890FF","#FACC14","#2FC25B","#8543E0","#F04864","#13C2C2","#fa8c16","#a0d911"],this.clickItem=new n.vpe}getHeight(){return this.height-(this.hasLegend?80:22)}install(){const{node:f,padding:y,theme:T,tickCount:x}=this,D=this._chart=new this.winG2.Chart({container:f.nativeElement,autoFit:!0,height:this.getHeight(),padding:y,theme:T});D.coordinate("polar"),D.legend(!1),D.axis("label",{line:null,label:{offset:8},grid:{line:{style:{stroke:"#e9e9e9",lineWidth:1,lineDash:[0,0]}}}}),D.axis("value",{grid:{line:{type:"polygon",style:{stroke:"#e9e9e9",lineWidth:1,lineDash:[0,0]}}}}),D.scale({value:{min:0,tickCount:x}}),D.filter("name",_=>{const P=this.legendData.find(O=>O.name===_);return!P||!1!==P.checked}),D.line().position("label*value").color("name",this.colors),D.point().position("label*value").shape("circle").size(3),D.on("point:click",_=>{this.ngZone.run(()=>this.clickItem.emit({item:_.data?.data,ev:_}))}),this.ready.next(D),this.changeData(),D.render()}changeData(){const{_chart:f,data:y}=this;!f||!Array.isArray(y)||y.length<=0||(f.changeData(y),this.ngZone.run(()=>this.genLegend()))}genLegend(){const{hasLegend:f,cdr:y,_chart:T}=this;f&&(this.legendData=T.geometries[0].dataArray.map(x=>({name:x[0]._origin.name,color:x[0].color,checked:!0,value:x.reduce((P,O)=>P+O._origin.value,0)})),y.detectChanges())}_click(f){const{legendData:y,_chart:T}=this;y[f].checked=!y[f].checked,T.render(!0)}onChanges(){this.legendData.forEach(f=>f.checked=!0)}static#e=this.\u0275fac=function(){let f;return function(T){return(f||(f=n.n5z(d)))(T||d)}}();static#t=this.\u0275cmp=n.Xpm({type:d,selectors:[["g2-radar"]],hostVars:4,hostBindings:function(y,T){2&y&&(n.Udp("height",T.height,"px"),n.ekj("g2-radar",!0))},inputs:{title:"title",height:"height",padding:"padding",hasLegend:"hasLegend",tickCount:"tickCount",data:"data",colors:"colors"},outputs:{clickItem:"clickItem"},exportAs:["g2Radar"],features:[n.qOj],decls:5,vars:3,consts:[[4,"ngIf"],[4,"nzStringTemplateOutlet"],["container",""],["nz-row","","class","g2-radar__legend",4,"ngIf"],["nz-row","",1,"g2-radar__legend"],["nz-col","","class","g2-radar__legend-item",3,"nzSpan","click",4,"ngFor","ngForOf"],["nz-col","",1,"g2-radar__legend-item",3,"nzSpan","click"],[1,"g2-radar__legend-dot",3,"ngStyle"],[1,"g2-radar__legend-title"]],template:function(y,T){1&y&&(n.YNc(0,z,1,0,"nz-skeleton",0),n.YNc(1,M,3,1,"ng-container",1),n._UZ(2,"div",null,2),n.YNc(4,g,2,1,"div",3)),2&y&&(n.Q6J("ngIf",!T.loaded),n.xp6(1),n.Q6J("nzStringTemplateOutlet",T.title),n.xp6(3),n.Q6J("ngIf",T.hasLegend))},dependencies:[l.sg,l.O5,l.PC,C.t3,C.SK,E.f,u.ng],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,i.Rn)()],d.prototype,"height",void 0),(0,e.gn)([(0,i.yF)()],d.prototype,"hasLegend",void 0),(0,e.gn)([(0,i.Rn)()],d.prototype,"tickCount",void 0)},47381:(nt,I,o)=>{"use strict";o.d(I,{C:()=>l});var e=o(97582),n=o(55611),t=o(74648),i=o(65879);class l extends n.$4{constructor(){super(...arguments),this.plusColor="#40a9ff",this.minusColor="#ff4d4f",this.height=60,this.barSize=30,this.min=0,this.max=100,this.value=0,this.line=!1,this.padding=0,this.textStyle={fontSize:12,color:"#595959"},this.onlyChangeData=E=>1===Object.keys(E).length&&!!E.value}install(){const{el:E,height:u,padding:z,textStyle:M,line:h,format:v,theme:g,min:d,max:p,plusColor:f,minusColor:y,barSize:T}=this,x=this._chart=new this.winG2.Chart({container:E.nativeElement,autoFit:!0,height:u,padding:z,theme:g});x.legend(!1),x.axis(!1),x.scale({value:{max:p,min:d}}),x.tooltip(!1),x.coordinate().transpose(),x.interval().position("1*value").color("value",D=>D>0?f:y).size(T).label("value",()=>({formatter:v,style:{...M}})),h&&x.annotation().line({start:["50%","0%"],end:["50%","100%"],style:{stroke:"#e8e8e8",lineDash:[0,0]}}),this.ready.next(x),this.changeData(),x.render()}changeData(){const{_chart:E,value:u}=this;E&&E.changeData([{value:u}])}static#e=this.\u0275fac=function(){let E;return function(z){return(E||(E=i.n5z(l)))(z||l)}}();static#t=this.\u0275cmp=i.Xpm({type:l,selectors:[["g2-single-bar"]],hostVars:2,hostBindings:function(u,z){2&u&&i.Udp("height",z.height,"px")},inputs:{plusColor:"plusColor",minusColor:"minusColor",height:"height",barSize:"barSize",min:"min",max:"max",value:"value",line:"line",format:"format",padding:"padding",textStyle:"textStyle"},exportAs:["g2SingleBar"],features:[i.qOj],decls:0,vars:0,template:function(u,z){},encapsulation:2,changeDetection:0})}(0,e.gn)([(0,t.Rn)()],l.prototype,"height",void 0),(0,e.gn)([(0,t.Rn)()],l.prototype,"barSize",void 0),(0,e.gn)([(0,t.Rn)()],l.prototype,"min",void 0),(0,e.gn)([(0,t.Rn)()],l.prototype,"max",void 0),(0,e.gn)([(0,t.Rn)()],l.prototype,"value",void 0),(0,e.gn)([(0,t.yF)()],l.prototype,"line",void 0)},91641:(nt,I,o)=>{"use strict";o.d(I,{S:()=>h});var e=o(97582),n=o(65879),t=o(92438),i=o(32181),l=o(83620),C=o(55611),E=o(74648),u=o(96814),z=o(24139);function M(v,g){1&v&&n._UZ(0,"nz-skeleton")}class h extends C.$4{constructor(){super(...arguments),this.width=0,this.height=200,this.padding=0,this.data=[],this.clickItem=new n.vpe}initTagCloud(){const g=this.winG2;g.registerShape("point","cloud",{draw(d,p){const f=d.data,y=p.addShape({type:"text",name:"tag-cloud-text",attrs:{...d.style,fontSize:f.size,text:f.text,textAlign:"center",fontFamily:f.font,fill:d.color,textBaseline:"Alphabetic",x:d.x,y:d.y}});return f.rotate&&g.Util.rotate(y,f.rotate*Math.PI/180),y}})}install(){this.initTagCloud();const{el:g,padding:d,theme:p}=this;0===this.height&&(this.height=this.el.nativeElement.clientHeight),0===this.width&&(this.width=this.el.nativeElement.clientWidth);const f=this._chart=new this.winG2.Chart({container:g.nativeElement,autoFit:!1,padding:d,height:this.height,width:this.width,theme:p});f.scale({x:{nice:!1},y:{nice:!1}}),f.legend(!1),f.axis(!1),f.tooltip({showTitle:!1,showMarkers:!1}),f.coordinate().reflect(),f.point().position("x*y").color("text").shape("cloud").state({active:{style:{fillOpacity:.4}}}),f.interaction("element-active"),f.on("tag-cloud-text:click",y=>{this.ngZone.run(()=>this.clickItem.emit({item:y.data?.data,ev:y}))}),this.ready.next(f),this.changeData(),f.render()}changeData(){const{_chart:g,data:d}=this;if(!g||!Array.isArray(d)||d.length<=0)return;const p=(new window.DataSet.View).source(d),f=p.range("value"),y=f[0],T=f[1];p.transform({type:"tag-cloud",fields:["name","value"],font:"Verdana",size:[this.width,this.height],padding:0,timeInterval:5e3,rotate(){let x=~~(4*Math.random())%4;return 2===x&&(x=0),90*x},fontSize:x=>(x.value-y)/(T-y)*24+8}),g.changeData(p.rows)}installResizeEvent(){this.resize$=(0,t.R)(window,"resize").pipe((0,i.h)(()=>!!this._chart),(0,l.b)(200)).subscribe(()=>this.changeData())}onInit(){this.installResizeEvent()}static#e=this.\u0275fac=function(){let g;return function(p){return(g||(g=n.n5z(h)))(p||h)}}();static#t=this.\u0275cmp=n.Xpm({type:h,selectors:[["g2-tag-cloud"]],inputs:{width:"width",height:"height",padding:"padding",data:"data"},outputs:{clickItem:"clickItem"},exportAs:["g2TagCloud"],features:[n.qOj],decls:1,vars:1,consts:[[4,"ngIf"]],template:function(d,p){1&d&&n.YNc(0,M,1,0,"nz-skeleton",0),2&d&&n.Q6J("ngIf",!p.loaded)},dependencies:[u.O5,z.ng],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,E.Rn)()],h.prototype,"width",void 0),(0,e.gn)([(0,E.Rn)()],h.prototype,"height",void 0)},68771:(nt,I,o)=>{"use strict";o.d(I,{Q:()=>v});var e=o(97582),n=o(65879),t=o(89207),i=o(55611),l=o(60325),C=o(74648),E=o(96814),u=o(8324),z=o(24139);function M(g,d){if(1&g&&(n.ynx(0),n.TgZ(1,"h4"),n._uU(2),n.qZA(),n.BQk()),2&g){const p=n.oxw();n.xp6(2),n.Oqu(p.title)}}function h(g,d){1&g&&n._UZ(0,"nz-skeleton")}class v extends i.$4{constructor(){super(...arguments),this.maxAxis=2,this.data=[],this.colorMap={y1:"#5B8FF9",y2:"#5AD8A6",y3:"#5D7092",y4:"#F6BD16",y5:"#E86452"},this.mask="HH:mm",this.maskSlider="HH:mm",this.position="top",this.height=450,this.padding=[40,8,64,40],this.borderWidth=2,this.slider=!0,this.clickItem=new n.vpe,this.onlyChangeData=d=>{const p=d.titleMap;return!(p&&!p.firstChange&&p.currentValue!==p.previousValue)}}install(){const{node:d,height:p,padding:f,slider:y,maxAxis:T,theme:x,maskSlider:D}=this,_=this._chart=new this.winG2.Chart({container:d.nativeElement,autoFit:!0,height:p,padding:f,theme:x});_.axis("time",{title:null}),_.axis("y1",{title:null});for(let O=2;O<=T;O++)_.axis(`y${O}`,!1);_.line().position("time*y1");for(let O=2;O<=T;O++)_.line().position(`time*y${O}`);_.tooltip({showCrosshairs:!0,shared:!0}),{...[],...f}[0]=0,y&&_.option("slider",{height:26,start:0,end:1,trendCfg:{isArea:!1},minLimit:2,formatter:O=>(0,t.Z)(O,D)}),_.on("plot:click",O=>{const A=this._chart.getSnapRecords({x:O.x,y:O.y});this.ngZone.run(()=>this.clickItem.emit({item:A[0]._origin,ev:O}))}),_.on("legend-item:click",O=>{const A=O?.target?.get("delegateObject").item,k=A?.id,F=_.geometries.find(W=>W.getAttribute("position").getFields()[1]===k);F&&F.changeVisible(!A.unchecked)}),this.ready.next(_),this.changeData(),_.render()}changeData(){const{_chart:d,height:p,padding:f,mask:y,titleMap:T,position:x,colorMap:D,borderWidth:_,maxAxis:P}=this;let O=[...this.data];if(!d||O.length<=0)return;const A=[...Array(P)].map((_e,Y)=>Y+1);d.legend({position:x,custom:!0,items:A.map(_e=>{const Y=`y${_e}`;return{id:Y,name:T[Y],value:Y,marker:{style:{fill:D[Y]}}}})}),d.geometries.forEach((_e,Y)=>{_e.color(D[`y${Y+1}`]).size(_)}),d.height=p,d.padding=f,O=O.map(_e=>(_e.time=(0,l.ZU)(_e.time),_e._time=+_e.time,_e)).sort((_e,Y)=>_e._time-Y._time);const k=Math.max(...A.map(_e=>[...O].sort((Y,G)=>G[`y${_e}`]-Y[`y${_e}`])[0][`y${_e}`])),F={};A.forEach(_e=>{const Y=`y${_e}`;F[Y]={alias:T[Y],max:k,min:0}}),d.scale({time:{type:"time",mask:y,range:[0,1]},...F});const W_start=O[0]._time,W_end=O[O.length-1]._time,K=O.filter(_e=>_e._time>=W_start&&_e._time<=W_end);d.changeData(K)}static#e=this.\u0275fac=function(){let d;return function(f){return(d||(d=n.n5z(v)))(f||v)}}();static#t=this.\u0275cmp=n.Xpm({type:v,selectors:[["g2-timeline"]],inputs:{title:"title",maxAxis:"maxAxis",data:"data",titleMap:"titleMap",colorMap:"colorMap",mask:"mask",maskSlider:"maskSlider",position:"position",height:"height",padding:"padding",borderWidth:"borderWidth",slider:"slider"},outputs:{clickItem:"clickItem"},exportAs:["g2Timeline"],features:[n.qOj],decls:4,vars:2,consts:[[4,"nzStringTemplateOutlet"],[4,"ngIf"],["container",""]],template:function(p,f){1&p&&(n.YNc(0,M,3,1,"ng-container",0),n.YNc(1,h,1,0,"nz-skeleton",1),n._UZ(2,"div",null,2)),2&p&&(n.Q6J("nzStringTemplateOutlet",f.title),n.xp6(1),n.Q6J("ngIf",!f.loaded))},dependencies:[E.O5,u.f,z.ng],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,C.Rn)()],v.prototype,"maxAxis",void 0),(0,e.gn)([(0,C.Rn)()],v.prototype,"height",void 0),(0,e.gn)([(0,C.Rn)()],v.prototype,"borderWidth",void 0),(0,e.gn)([(0,C.yF)()],v.prototype,"slider",void 0)},37690:(nt,I,o)=>{"use strict";o.d(I,{_:()=>u});var e=o(97582),n=o(74648),t=o(65879),i=o(96814),l=o(90551);function C(z,M){if(1&z&&(t.TgZ(0,"span"),t._UZ(1,"i",1),t.qZA()),2&z){const h=t.oxw();t.Gre("trend__",h.flag,""),t.xp6(1),t.MGl("nzType","caret-",h.flag,"")}}const E=["*"];class u{constructor(){this.colorful=!0,this.reverseColor=!1}static#e=this.\u0275fac=function(h){return new(h||u)};static#t=this.\u0275cmp=t.Xpm({type:u,selectors:[["trend"]],hostVars:7,hostBindings:function(h,v){2&h&&(t.uIk("data-flag",v.flag),t.ekj("trend",!0)("trend__grey",!v.colorful)("trend__reverse",v.colorful&&v.reverseColor))},inputs:{flag:"flag",colorful:"colorful",reverseColor:"reverseColor"},exportAs:["trend"],ngContentSelectors:E,decls:2,vars:1,consts:[[3,"class",4,"ngIf"],["nz-icon","",3,"nzType"]],template:function(h,v){1&h&&(t.F$t(),t.Hsn(0),t.YNc(1,C,2,4,"span",0)),2&h&&(t.xp6(1),t.Q6J("ngIf",v.flag))},dependencies:[i.O5,l.Ls],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,n.yF)()],u.prototype,"colorful",void 0),(0,e.gn)([(0,n.yF)()],u.prototype,"reverseColor",void 0)},64755:(nt,I,o)=>{"use strict";o.d(I,{u:()=>d});var e=o(97582),n=o(92438),t=o(83620),i=o(74648),l=o(65879),C=o(62831),E=o(96814),u=o(8324);const z=["container"];function M(p,f){if(1&p&&(l.ynx(0),l._uU(1),l.BQk()),2&p){const y=l.oxw(2);l.xp6(1),l.Oqu(y.title)}}function h(p,f){if(1&p&&(l.TgZ(0,"span",6),l.YNc(1,M,2,1,"ng-container",7),l.qZA()),2&p){const y=l.oxw();l.xp6(1),l.Q6J("nzStringTemplateOutlet",y.title)}}const v=function(p,f){return{"height.px":p,"width.px":f,overflow:"hidden"}},g=function(p){return{"width.px":p}};class d{constructor(f,y,T,x,D){this.el=f,this.renderer=y,this.ngZone=T,this.cdr=x,this.platform=D,this.resize$=null,this.animate=!0,this.delay=0,this.color="#1890FF",this.height=160}renderChart(f){if(!this.resize$)return;this.updateRadio();const{percent:y,color:T,node:x,animate:D}=this,_=Math.min(Math.max(y/100,0),100),P=this;cancelAnimationFrame(this.timer);const O=x.nativeElement,A=O.getContext("2d"),k=O.width,F=O.height,W=k/2,_e=W-2;A.beginPath(),A.lineWidth=4;const Y=k-2,G=Y/8;let j=0;let ne=.2,pe=0;const re=D?.005:.015;let be=[];const le=W-2,ce=-Math.PI/2;let Q=!0;for(let Me=ce;Me=.85?ne>.05&&(ne-=.002):_<=.1?ne<1.5*.2&&(ne+=.002):(ne<=.2&&(ne+=.002),ne>=.2&&(ne-=.002)),_-pe>0&&(pe+=re),_-pe<0&&(pe-=re),j+=.07,function ae(){A.beginPath(),A.save();const Me=[];for(let ye=2;ye<=2+Y;ye+=20/Y){const Be=Math.sin(j+(2+ye)/G)*ne,Re=ye,ct=2*_e*(1-pe)+(W-_e)-G*Be;A.lineTo(Re,ct),Me.push([Re,ct])}const Ye=Me.shift();A.lineTo(2+Y,F),A.lineTo(2,F),A.lineTo(Ye[0],Ye[1]);const q=A.createLinearGradient(0,0,0,F);q.addColorStop(0,"#ffffff"),q.addColorStop(1,T),A.fillStyle=q,A.fill(),A.restore()}();P.timer=requestAnimationFrame(xe)}()}updateRadio(){const{offsetWidth:f}=this.el.nativeElement.parentNode;this.renderer.setStyle(this.el.nativeElement,"transform",`scale(${fthis.updateRadio())}ngOnInit(){this.platform.isBrowser&&(this.installResizeEvent(),this.ngZone.runOutsideAngular(()=>setTimeout(()=>this.render(),this.delay)))}ngOnChanges(){this.ngZone.runOutsideAngular(()=>this.renderChart(!0)),this.cdr.detectChanges()}ngOnDestroy(){this.timer&&cancelAnimationFrame(this.timer),this.resize$&&this.resize$.unsubscribe()}static#e=this.\u0275fac=function(y){return new(y||d)(l.Y36(l.SBq),l.Y36(l.Qsj),l.Y36(l.R0b),l.Y36(l.sBO),l.Y36(C.t4))};static#t=this.\u0275cmp=l.Xpm({type:d,selectors:[["g2-water-wave"]],viewQuery:function(y,T){if(1&y&&l.Gf(z,7),2&y){let x;l.iGM(x=l.CRH())&&(T.node=x.first)}},hostVars:2,hostBindings:function(y,T){2&y&&l.ekj("g2-water-wave",!0)},inputs:{animate:"animate",delay:"delay",title:"title",color:"color",height:"height",percent:"percent"},exportAs:["g2WaterWave"],features:[l.TTD],decls:7,vars:11,consts:[[3,"ngStyle"],[1,"g2-water-wave__canvas",3,"width","height"],["container",""],[1,"g2-water-wave__desc",3,"ngStyle"],["class","g2-water-wave__desc-title",4,"ngIf"],[1,"g2-water-wave__desc-percent"],[1,"g2-water-wave__desc-title"],[4,"nzStringTemplateOutlet"]],template:function(y,T){1&y&&(l.TgZ(0,"div",0),l._UZ(1,"canvas",1,2),l.qZA(),l.TgZ(3,"div",3),l.YNc(4,h,2,1,"span",4),l.TgZ(5,"h4",5),l._uU(6),l.qZA()()),2&y&&(l.Q6J("ngStyle",l.WLB(6,v,T.height,T.height)),l.xp6(1),l.s9C("width",2*T.height),l.s9C("height",2*T.height),l.xp6(2),l.Q6J("ngStyle",l.VKq(9,g,T.height)),l.xp6(1),l.Q6J("ngIf",T.title),l.xp6(2),l.hij("",T.percent,"%"))},dependencies:[E.O5,E.PC,u.f],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,i.yF)()],d.prototype,"animate",void 0),(0,e.gn)([(0,i.Rn)()],d.prototype,"delay",void 0),(0,e.gn)([(0,i.Rn)()],d.prototype,"height",void 0),(0,e.gn)([(0,i.Rn)()],d.prototype,"percent",void 0)},27854:(nt,I,o)=>{"use strict";o.d(I,{H_:()=>d.H_,ek:()=>i.e,Bl:()=>le.B}),o(84923),o(47535),o(1202);var i=o(48141);o(38459),o(94128),o(41966),o(91147),o(33802),o(72271),o(50679),o(55911);var d=o(98498),le=(o(26557),o(84212),o(55900),o(87817),o(80650),o(45858),o(74896),o(98685),o(38140),o(53250),o(28957),o(28448),o(52569),o(70410),o(55986),o(72188),o(21933),o(86918),o(40712),o(84971),o(98350),o(29993),o(58435),o(36304),o(48480));o(18224),o(92219)},84923:(nt,I,o)=>{"use strict";o.d(I,{f:()=>n});const e={formatMap:{"date-time":{widget:"date",showTime:!0,format:"yyyy-MM-dd'T'HH:mm:ss.SSSxxx"},date:{widget:"date",format:"yyyy-MM-dd"},"full-date":{widget:"date",format:"yyyy-MM-dd"},time:{widget:"time",format:"HH:mm:ss.SSSxxx"},"full-time":{widget:"time"},week:{widget:"date",mode:"week",format:"yyyy-ww"},month:{widget:"date",mode:"month",format:"yyyy-MM"},uri:{widget:"upload"},email:{widget:"autocomplete",type:"email"},color:{widget:"string",type:"color"},"":{widget:"string"}},ingoreKeywords:["type","enum"],liveValidate:!0,autocomplete:null,firstVisual:!1,onlyVisual:!1,errors:{},ui:{},button:{submit_type:"primary",reset_type:"default"},uiDateStringFormat:"yyyy-MM-dd HH:mm:ss",uiDateNumberFormat:"T",uiTimeStringFormat:"HH:mm:ss",uiTimeNumberFormat:"T",uiEmailSuffixes:["qq.com","163.com","gmail.com","126.com","aliyun.com"],delay:!1};function n(t){return t.merge("sf",e)}},60699:(nt,I,o)=>{"use strict";o.d(I,{j:()=>e});const e="/"},33802:(nt,I,o)=>{"use strict";o.d(I,{K:()=>l});var e=o(64115),n=o(38459),t=o(91147),i=o(60699);class l extends n.I{constructor(E,u,z,M,h,v,g,d,p){super(E,z,M,h,v,g,d,p),this.formPropertyFactory=u,this.properties=[]}getProperty(E){const u=E.indexOf(i.j),z=+(-1!==u?E.substring(0,u):E),M=this.properties;if(isNaN(z)||z>=M.length)return;const h=E.substring(u+1);return M[z].getProperty(h)}setValue(E,u){this.properties=[],this.clearErrors(),this.resetProperties(E),this.cd(u),this.updateValueAndValidity({onlySelf:u,emitValueEvent:!0})}resetValue(E,u){this._value=E||this.schema.default||[],this.setValue(this._value,u)}_hasValue(){return!0}_updateValue(){const E=[];this.forEachChild(u=>{u.visible&&E.push({...this.widget?.cleanValue?null:u.formData,...u.value})}),this._value=E}addProperty(E){const u=this.formPropertyFactory.createProperty((0,e.p$)(this.schema.items),(0,e.p$)(this.ui.$items),E,this);return this.properties.push(u),u}resetProperties(E){for(const u of E)this.addProperty(u).resetValue(u,!0)}clearErrors(E){(E||this)._objErrors={}}add(E){const u=this.addProperty(E);return u.resetValue(E,!1),u}remove(E){const u=this.properties;this.clearErrors(),u.splice(E,1),u.forEach((z,M)=>{z.path=[z.parent.path,M].join(i.j),this.clearErrors(z),z instanceof t.t&&z.forEachChild(h=>{h.updateValueAndValidity()})}),0===u.length&&this.updateValueAndValidity()}}},41966:(nt,I,o)=>{"use strict";o.d(I,{A:()=>n});var e=o(38459);class n extends e.Z{setValue(i,l){this._value=i,this.cd(l),this.updateValueAndValidity({onlySelf:l,emitValueEvent:!0})}resetValue(i,l){null==i&&(i=void 0!==this.schema.default?this.schema.default:this.fallbackValue()),this._value=i,this.updateValueAndValidity({onlySelf:l,emitValueEvent:!0}),this.widget&&(this.widget.reset(i),this.cd(l))}_hasValue(){return this.fallbackValue()!==this.value}_updateValue(){}}},55911:(nt,I,o)=>{"use strict";o.d(I,{x:()=>n});var e=o(41966);class n extends e.A{fallbackValue(){return null}}},94128:(nt,I,o)=>{"use strict";o.d(I,{e:()=>M});var e=o(33802),n=o(55911),t=o(38459),i=o(50679),l=o(91147),C=o(72271),E=o(84923),u=o(60699),z=o(92219);class M{constructor(v,g,d){this.injector=v,this.schemaValidatorFactory=g,this.options=(0,E.f)(d)}createProperty(v,g,d,p=null,f){let y=null,T="";if(p)switch(T+=p.path,null!==p.parent&&(T+=u.j),p.type){case"object":T+=f;break;case"array":T+=p.properties.length;break;default:throw new Error(`Instanciation of a FormProperty with an unknown parent type: ${p.type}`)}else T=u.j;if(v.$ref){const x=(0,z.u6)(v,p.root.schema.definitions);y=this.createProperty(x,g,d,p,T)}else switch((f&&-1!==p.schema.required.indexOf(f.split(u.j).pop())||!0===g.showRequired)&&(g._required=!0),null==v.title&&(v.title=f),"string"!==v.type&&"number"!==v.type||v.format||g.format?g._format=g.format:"date"===g.widget?g._format="string"===v.type?this.options.uiDateStringFormat:this.options.uiDateNumberFormat:"time"===g.widget&&(g._format="string"===v.type?this.options.uiTimeStringFormat:this.options.uiTimeNumberFormat),v.type){case"integer":case"number":y=new i.Y(this.injector,this.schemaValidatorFactory,v,g,d,p,T,this.options);break;case"string":y=new C.h(this.injector,this.schemaValidatorFactory,v,g,d,p,T,this.options);break;case"boolean":y=new n.x(this.injector,this.schemaValidatorFactory,v,g,d,p,T,this.options);break;case"object":y=new l.t(this.injector,this,this.schemaValidatorFactory,v,g,d,p,T,this.options);break;case"array":y=new e.K(this.injector,this,this.schemaValidatorFactory,v,g,d,p,T,this.options);break;default:throw new TypeError(`Undefined type ${v.type}`)}return y.propertyId=f,y instanceof t.I&&this.initializeRoot(y),y}initializeRoot(v){v._bindVisibility()}}},38459:(nt,I,o)=>{"use strict";o.d(I,{I:()=>v,Z:()=>h});var e=o(65879),n=o(65619),t=o(65592),i=o(48180),l=o(37398),C=o(52572),E=o(93997),u=o(50883),z=o(60699),M=o(92219);class h{constructor(d,p,f,y,T,x,D,_){this.injector=d,this._options=_,this._errors=null,this._valueChanges=new n.X({path:null,pathValue:null,value:null}),this._errorsChanges=new n.X(null),this._visible=!0,this._visibilityChanges=new n.X(!0),this._objErrors={},this._value=null,this.schema=f,this.ui=y,this.schemaValidator=p.createValidatorFn(f,{ingoreKeywords:this.ui.ingoreKeywords,debug:y.debug}),this.formData=T||f.default,this._parent=x,this._root=x?x.root:this,this.path=D}get valueChanges(){return this._valueChanges}get errorsChanges(){return this._errorsChanges}get type(){return this.schema.type}get parent(){return this._parent}get root(){return this._root}get value(){return this._value}get errors(){return this._errors}get visible(){return this._visible}get valid(){return null===this._errors||0===this._errors.length}get options(){return this._options}cd(d=!1){this.widget?.detectChanges(d)}updateValueAndValidity(d){d={onlySelf:!1,emitValidator:!0,emitValueEvent:!0,updatePath:"",updateValue:null,...d},this._updateValue(),d.emitValueEvent&&(d.updatePath=d.updatePath||this.path,d.updateValue=null==d.updateValue?this.value:d.updateValue,this.valueChanges.next({value:this.value,path:d.updatePath,pathValue:d.updateValue})),d.emitValidator&&!0===this.ui.liveValidate&&this._runValidation(),this.parent&&!d.onlySelf&&this.parent.updateValueAndValidity({...d,emitValidator:!1})}searchProperty(d){let p=this,f=null,y=null;if(d[0]===z.j)f=this.findRoot(),y=f.getProperty(d.substring(1));else for(;null===y&&null!==p.parent;)p=f=p.parent,y=f.getProperty(d);return y}findRoot(){let d=this;for(;null!==d.parent;)d=d.parent;return d}isEmptyData(d){return!!(0,M.fp)(d)||"string"===this.type&&0===`${d}`.length}_runValidation(){let d;const p=this.isEmptyData(this._value);d=p&&this.ui._required?[{keyword:"required"}]:p?[]:this.schemaValidator(this._value)||[];const f=this.ui.validator;if("function"==typeof f){const y=f(this.value,this,this.findRoot());return y instanceof t.y?void y.subscribe(T=>{this.setCustomErrors(d,T),this.cd(!1)}):void this.setCustomErrors(d,y)}this._errors=d,this.setErrors(this._errors)}setCustomErrors(d,p){const f=Array.isArray(p)&&p.length>0;f&&p.forEach(y=>{if(!y.message)throw new Error("The custom validator must contain a 'message' attribute to viewed error text");y.keyword=null}),this._errors=f?d.concat(...p):d,this.setErrors(this._errors)}setErrors(d=[],p=!0){let f=Array.isArray(d)?d:[d];if(p&&f&&!this.ui.onlyVisual){const y=this.widget&&this.widget.l.error||{};f=f.map(T=>{let x=null==T.keyword&&T.message?T.message:(this.ui.errors||{})[T.keyword]||this._options.errors[T.keyword]||y[T.keyword]||"";return x&&"function"==typeof x&&(x=x(T)),x&&(~x.indexOf("{")&&T.params&&(x=x.replace(/{([\.a-zA-Z0-9]+)}/g,(D,_)=>T.params[_]||"")),T.message=x),T})}this._errors=f,this._errorsChanges.next(f),this._parent&&this._parent.setParentAndPlatErrors(f,this.path)}setParentAndPlatErrors(d,p){this._objErrors[p]=d;const f=[];Object.keys(this._objErrors).forEach(y=>{const T=this.searchProperty(y);T&&!T.visible||f.push(...this._objErrors[y])}),this.setErrors(f,!1)}setVisible(d){return this._visible=d,this._visibilityChanges.next(d),d&&this.injector.get(e.R0b).onStable.pipe((0,i.q)(1)).subscribe(()=>{this.resetValue(this.value,!0)}),this}_bindVisibility(){const d=this.ui.visibleIf;if("object"==typeof d&&0===Object.keys(d).length)this.setVisible(!1);else if(null!=d){const p=[];for(const f in d)if(d.hasOwnProperty(f)){const y=this.searchProperty(f);if(y){const T=y.valueChanges.pipe((0,l.U)(_=>{const P=d[f];if("function"==typeof P){const O=P(_.value,y);if("object"==typeof O){const A={show:!1,required:!1,...O},k=this.parent?.schema.required;if(k&&this.propertyId){const F=k.findIndex(W=>W===this.propertyId);A.required?-1===F&&k.push(this.propertyId):-1!==F&&k.splice(F,1),this.ui._required=A.required}return A.show}return O}return-1!==P.indexOf("$ANY$")?_.value&&_.value.length>0:-1!==P.indexOf(_.value)})),D=(0,C.a)([T,y._visibilityChanges]).pipe((0,l.U)(_=>_[0]&&_[1]));p.push(D)}}(0,C.a)(p).pipe((0,l.U)(f=>"and"===this.ui.visibleIfLogical?f.every(y=>y):f.some(y=>y)),(0,E.x)()).subscribe(f=>this.setVisible(f))}}updateFeedback(d=""){this.ui.feedback=d,this.widget?.injector.get(u.kH).formStatusChanges.next({status:d,hasFeedback:!!d}),this.cd(!0)}}class v extends h{constructor(){super(...arguments),this.properties=null}getProperty(d){const p=d.indexOf(z.j),f=-1!==p?d.substring(0,p):d;let y=this.properties[f];if(null!==y&&-1!==p&&y instanceof v){const T=d.substring(p+1);y=y.getProperty(T)}return y}forEachChild(d){for(const p in this.properties)this.properties.hasOwnProperty(p)&&d(this.properties[p],p)}forEachChildRecursive(d){this.forEachChild(p=>{d(p),p instanceof v&&p.forEachChildRecursive(d)})}_bindVisibility(){super._bindVisibility(),this._bindVisibilityRecursive()}_bindVisibilityRecursive(){this.forEachChildRecursive(d=>{d._bindVisibility()})}isRoot(){return this===this.root}}},50679:(nt,I,o)=>{"use strict";o.d(I,{Y:()=>n});var e=o(41966);class n extends e.A{fallbackValue(){return null}setValue(i,l){"string"==typeof i&&(i=i.length?i.indexOf(".")>-1?parseFloat(i):parseInt(i,10):void 0),this._value=i,this.cd(l),this.updateValueAndValidity({onlySelf:l,emitValueEvent:!0})}}},91147:(nt,I,o)=>{"use strict";o.d(I,{t:()=>t});var e=o(38459),n=o(92219);class t extends e.I{get propertiesId(){return this._propertiesId}constructor(l,C,E,u,z,M,h,v,g){super(l,E,u,z,M,h,v,g),this.formPropertyFactory=C,this._propertiesId=[],this.createProperties()}createProperties(){let l;this.properties={},this._propertiesId=[];try{l=(0,n.$2)(Object.keys(this.schema.properties),this.ui.order)}catch(C){console.error(`Invalid ${this.schema.title||"root"} object field configuration:`,C)}l.forEach(C=>{this.properties[C]=this.formPropertyFactory.createProperty(this.schema.properties[C],this.ui[`$${C}`],(this.formData||{})[C],this,C),this._propertiesId.push(C)})}setValue(l,C){const E=this.properties;for(const u in l)l.hasOwnProperty(u)&&E[u]&&E[u].setValue(l[u],!0);this.cd(C),this.updateValueAndValidity({onlySelf:C,emitValueEvent:!0})}resetValue(l,C){l=l||this.schema.default||{};const E=this.properties;for(const u in this.schema.properties)this.schema.properties.hasOwnProperty(u)&&E[u].resetValue(l[u],!0);this.cd(C),this.updateValueAndValidity({onlySelf:C,emitValueEvent:!0})}_hasValue(){return null!=this.value&&!!Object.keys(this.value).length}_updateValue(){const l={};this.forEachChild((C,E)=>{C.visible&&C._hasValue()&&(l[E]=C.value)}),this._value=l}}},72271:(nt,I,o)=>{"use strict";o.d(I,{h:()=>n});var e=o(41966);class n extends e.A{fallbackValue(){return null}setValue(i,l){this._value=i??"",this.cd(l),this.updateValueAndValidity({onlySelf:l,emitValueEvent:!0})}}},48141:(nt,I,o)=>{"use strict";o.d(I,{e:()=>Ie});var e=o(96814),n=o(65879),t=o(60095),i=o(95717),l=o(42840),C=o(82962),E=o(25923),u=o(62612),z=o(52682),M=o(3599),h=o(10095),v=o(90551),g=o(20824),d=o(68373),p=o(36513),f=o(81221),y=o(57907),T=o(98421),x=o(9691),D=o(20012),_=o(96494),P=o(55695),O=o(60047),A=o(96109),k=o(10358),F=o(80729),W=o(41394),K=o(980),_e=o(78967),te=(o(1202),o(93355),o(33182),o(47535),o(18224)),pe=(o(58435),o(48480)),Ye=(o(84212),o(86918),o(38140),o(40712),o(98685),o(29993),o(80650),o(84971),o(87817),o(36304));o(26557),o(74896),o(21933),o(28957),o(72188),o(55900),o(52569),o(98350),o(53250),o(45858),o(55986),o(28448),o(70410);const U=[i.ic,l.sL,C.vh,E.Fs,u.Wr,z.Hb,M.U5,h.Jb,v.PV,g.o7,d.Zf,p.Gl,f.Qp,y.aF,T.Ju,x.LV,D.N3,_.m,P.X,O.wY,A.cg,k.st,F.cq,W.cS];let Ie=(()=>{class Ne{static forRoot(){return{ngModule:Ne,providers:[{provide:te.l,useClass:te.p,deps:[_e.Ri,n.R0b]},{provide:pe.B,useClass:Ye.C}]}}static#e=this.\u0275fac=function(Lt){return new(Lt||Ne)};static#t=this.\u0275mod=n.oAB({type:Ne});static#n=this.\u0275inj=n.cJS({imports:[e.ez,t.u5,K.lD,U]})}return Ne})()},1202:(nt,I,o)=>{"use strict";o.d(I,{h:()=>i});var e=o(97582),n=o(74648),t=o(65879);class i{init(){if(!this._inited||null==this.num||this.num<=0)return;const C=this.el.nativeElement,E=C.querySelector(".ant-row")||C;this.render.addClass(E,"sf__fixed");const u=E.querySelector(".ant-form-item-label"),z=E.querySelector(".ant-form-item-control-wrapper,.ant-form-item-control"),M=`${this.num}px`;u?(this.render.setStyle(u,"flex",`0 0 ${M}`),this.render.setStyle(z,"max-width",`calc(100% - ${M})`)):this.render.setStyle(z,"margin-left",M)}constructor(C,E){this.el=C,this.render=E,this._inited=!1}ngAfterViewInit(){this._inited=!0,this.init()}ngOnChanges(){this._inited&&this.init()}static#e=this.\u0275fac=function(E){return new(E||i)(t.Y36(t.SBq),t.Y36(t.Qsj))};static#t=this.\u0275dir=t.lG2({type:i,selectors:[["","fixed-label",""]],inputs:{num:["fixed-label","num"]},features:[t.TTD]})}(0,e.gn)([(0,n.Rn)()],i.prototype,"num",void 0)},93355:(nt,I,o)=>{"use strict";o.d(I,{i:()=>y});var e=o(64194),n=o(65879),t=o(50883),i=o(96814),l=o(70855),C=o(10095),E=o(3599),u=o(90551),z=o(96109);function M(T,x){if(1&T&&n._UZ(0,"i",12),2&T){const D=n.oxw(4);n.Q6J("nzTooltipTitle",D.oh.text)("nzTooltipPlacement",D.oh.placement)("nzTooltipTrigger",D.oh.trigger)("nzTooltipColor",D.oh.bgColor)("nzTooltipOverlayClassName",D.oh.overlayClassName)("nzTooltipOverlayStyle",D.oh.overlayStyle)("nzTooltipMouseEnterDelay",D.oh.mouseEnterDelay)("nzTooltipMouseLeaveDelay",D.oh.mouseLeaveDelay)("nzType",D.oh.icon)}}function h(T,x){if(1&T&&(n.TgZ(0,"span",10),n._uU(1),n.YNc(2,M,1,9,"i",11),n.qZA()),2&T){const D=n.oxw(3);n.xp6(1),n.hij(" ",D.ui.optional," "),n.xp6(1),n.Q6J("ngIf",D.oh)}}function v(T,x){if(1&T&&(n.TgZ(0,"label")(1,"span",8),n._uU(2),n.qZA(),n.YNc(3,h,3,2,"span",9),n.qZA()),2&T){const D=n.oxw(2);n.ekj("ant-form-item-required",D.ui._required),n.uIk("for",D.id),n.xp6(2),n.Oqu(D.t),n.xp6(1),n.Q6J("ngIf",D.ui.optional||D.oh)}}function g(T,x){if(1&T&&(n.TgZ(0,"div",6),n.YNc(1,v,4,5,"label",7),n.qZA()),2&T){const D=n.oxw();n.Q6J("nzSpan",D.ui.spanLabel),n.xp6(1),n.Q6J("ngIf",D.t)}}function d(T,x){if(1&T&&(n.TgZ(0,"div",13)(1,"div",14),n._uU(2),n.qZA()()),2&T){const D=n.oxw();n.Q6J("@helpMotion",void 0),n.xp6(2),n.hij(" ",D.error," ")}}function p(T,x){if(1&T&&n._UZ(0,"div",15),2&T){const D=n.oxw();n.Q6J("innerHTML",D.ui._description,n.oJD)}}const f=["*"];let y=(()=>{class T{set showTitle(D){this._showTitle=!!D}get t(){return null===this.title?this.schema.title:this.title}get oh(){return this.ui.optionalHelp}constructor(D){this.statusSrv=D,this._showTitle=!1,this.title=null}ngOnChanges(){this.statusSrv.formStatusChanges.next({status:this.error?"error":"",hasFeedback:!!this.ui.feedback})}static#e=this.\u0275fac=function(_){return new(_||T)(n.Y36(t.kH))};static#t=this.\u0275cmp=n.Xpm({type:T,selectors:[["sf-item-wrap"]],inputs:{id:"id",schema:"schema",ui:"ui",showError:"showError",error:"error",showTitle:"showTitle",title:"title"},features:[n.TTD],ngContentSelectors:f,decls:8,vars:21,consts:[["nz-col","","class","ant-form-item-label",3,"nzSpan",4,"ngIf"],["nz-col","",1,"ant-form-item-control",3,"nzSpan","nzOffset"],[1,"ant-form-item-control-input"],[1,"ant-form-item-control-input-content"],["class","ant-form-item-explain ant-form-item-explain-connected",4,"ngIf"],["class","ant-form-item-extra",3,"innerHTML",4,"ngIf"],["nz-col","",1,"ant-form-item-label",3,"nzSpan"],[3,"ant-form-item-required",4,"ngIf"],[1,"sf__label-text"],["class","sf__optional",4,"ngIf"],[1,"sf__optional"],["nz-tooltip","","nz-icon","",3,"nzTooltipTitle","nzTooltipPlacement","nzTooltipTrigger","nzTooltipColor","nzTooltipOverlayClassName","nzTooltipOverlayStyle","nzTooltipMouseEnterDelay","nzTooltipMouseLeaveDelay","nzType",4,"ngIf"],["nz-tooltip","","nz-icon","",3,"nzTooltipTitle","nzTooltipPlacement","nzTooltipTrigger","nzTooltipColor","nzTooltipOverlayClassName","nzTooltipOverlayStyle","nzTooltipMouseEnterDelay","nzTooltipMouseLeaveDelay","nzType"],[1,"ant-form-item-explain","ant-form-item-explain-connected"],["role","alert",1,"ant-form-item-explain-error"],[1,"ant-form-item-extra",3,"innerHTML"]],template:function(_,P){1&_&&(n.F$t(),n.TgZ(0,"nz-form-item"),n.YNc(1,g,2,2,"div",0),n.TgZ(2,"div",1)(3,"div",2)(4,"div",3),n.Hsn(5),n.qZA()(),n.YNc(6,d,3,2,"div",4),n.YNc(7,p,1,1,"div",5),n.qZA()()),2&_&&(n.Udp("width",P.ui.width,"px"),n.ekj("ant-form-item-has-error",P.showError)("ant-form-item-with-help",P.showError)("ant-form-item-has-success","success"===P.ui.feedback)("ant-form-item-has-warning","warning"===P.ui.feedback)("ant-form-item-has-error","error"===P.ui.feedback)("ant-form-item-is-validating","validating"===P.ui.feedback)("ant-form-item-has-feedback",P.ui.feedback),n.xp6(1),n.Q6J("ngIf",P._showTitle),n.xp6(1),n.Q6J("nzSpan",P.ui.spanControl)("nzOffset",P.ui.offsetControl),n.xp6(4),n.Q6J("ngIf",!P.ui.onlyVisual&&P.showError),n.xp6(1),n.Q6J("ngIf",P.schema.description))},dependencies:[i.O5,l.w,C.t3,C.SK,E.Nx,u.Ls,z.SY],encapsulation:2,data:{animation:[e.c8]}})}return T})()},33182:(nt,I,o)=>{"use strict";o.d(I,{S:()=>h});var e=o(65879),n=o(78645),t=o(50883),i=o(48480),l=o(65584),C=o(96814);const E=["target"];function u(v,g){}function z(v,g){1&v&&e.GkF(0)}let M=0,h=(()=>{class v{constructor(d,p){this.widgetFactory=d,this.terminator=p,this.destroy$=new n.x,this.widget=null,this.footer=null}onWidgetInstanciated(d){this.widget=d;const p="_sf-"+M++,f=this.formProperty.ui;this.widget.formProperty=this.formProperty,this.widget.schema=this.formProperty.schema,this.widget.ui=f,this.widget.id=p,this.formProperty.widget=d}ngOnInit(){this.terminator.onDestroy.subscribe(()=>this.ngOnDestroy())}ngOnChanges(){const d=this.formProperty;this.ref=this.widgetFactory.createWidget(this.container,d.ui.widget||d.schema.type),this.onWidgetInstanciated(this.ref.instance)}ngOnDestroy(){const{destroy$:d}=this;d.next(),d.complete(),this.ref.destroy()}static#e=this.\u0275fac=function(p){return new(p||v)(e.Y36(i.g),e.Y36(l.v))};static#t=this.\u0275cmp=e.Xpm({type:v,selectors:[["sf-item"]],viewQuery:function(p,f){if(1&p&&e.Gf(E,7,e.s_b),2&p){let y;e.iGM(y=e.CRH())&&(f.container=y.first)}},hostVars:2,hostBindings:function(p,f){2&p&&e.ekj("sf__item",!0)},inputs:{formProperty:"formProperty",footer:"footer"},exportAs:["sfItem"],features:[e._Bn([t.kH]),e.TTD],decls:3,vars:1,consts:[["target",""],[4,"ngTemplateOutlet"]],template:function(p,f){1&p&&(e.YNc(0,u,0,0,"ng-template",null,0,e.W1O),e.YNc(2,z,1,0,"ng-container",1)),2&p&&(e.xp6(2),e.Q6J("ngTemplateOutlet",f.footer))},dependencies:[C.tP],encapsulation:2})}return v})()},47535:(nt,I,o)=>{"use strict";o.d(I,{k:()=>Q});var e=o(97582),n=o(65879),t=o(71993),i=o(63019),l=o(32181),C=o(980),E=o(78967),u=o(74648),z=o(64115),M=o(84923),h=o(38459),v=o(94128),g=o(65584),d=o(92219),p=o(18224),f=o(48480),y=o(6593),T=o(27929),x=o(62831),D=o(96814),_=o(60095),P=o(42840),O=o(70855),A=o(41958),k=o(10095),F=o(3599),W=o(90551),K=o(33182),_e=o(1202);function Y(ie,ae){1&ie&&n.Hsn(0)}function G(ie,ae){if(1&ie&&n._UZ(0,"i",13),2&ie){const xe=n.oxw(5);n.Q6J("nzType",xe._btn.submit_icon.type)("nzTheme",xe._btn.submit_icon.theme)("nzTwotoneColor",xe._btn.submit_icon.twoToneColor)("nzIconfont",xe._btn.submit_icon.iconfont)}}function H(ie,ae){if(1&ie&&n._UZ(0,"i",13),2&ie){const xe=n.oxw(6);n.Q6J("nzType",xe._btn.reset_icon.type)("nzTheme",xe._btn.reset_icon.theme)("nzTwotoneColor",xe._btn.reset_icon.twoToneColor)("nzIconfont",xe._btn.reset_icon.iconfont)}}function j(ie,ae){if(1&ie){const xe=n.EpF();n.TgZ(0,"button",14),n.NdJ("click",function(){n.CHM(xe);const Ye=n.oxw(5);return n.KtG(Ye.reset(!0))}),n.YNc(1,H,1,4,"i",11),n._uU(2),n.qZA()}if(2&ie){const xe=n.oxw(5);n.Q6J("nzType",xe._btn.reset_type)("nzSize",xe._btn.render.size)("disabled",xe.loading),n.xp6(1),n.Q6J("ngIf",xe._btn.reset_icon),n.xp6(1),n.hij(" ",xe._btn.reset," ")}}function te(ie,ae){if(1&ie&&(n.ynx(0),n.TgZ(1,"button",10),n.YNc(2,G,1,4,"i",11),n._uU(3),n.qZA(),n.YNc(4,j,3,5,"button",12),n.BQk()),2&ie){const xe=n.oxw(4);n.xp6(1),n.Q6J("nzType",xe._btn.submit_type)("nzSize",xe._btn.render.size)("nzLoading",xe.loading)("disabled",xe.liveValidate&&!xe.valid),n.xp6(1),n.Q6J("ngIf",xe._btn.submit_icon),n.xp6(1),n.hij(" ",xe._btn.submit," "),n.xp6(1),n.Q6J("ngIf",xe._btn.reset)}}function ne(ie,ae){if(1&ie&&(n.TgZ(0,"nz-form-item",6)(1,"div",7)(2,"div",8)(3,"div",9),n.YNc(4,te,5,7,"ng-container",4),n.qZA()()()()),2&ie){const xe=n.oxw(3),Me=n.MAs(1);n.Q6J("ngClass",xe._btn.render.class)("fixed-label",xe._btn.render.spanLabelFixed),n.xp6(1),n.Q6J("nzSpan",xe.btnGrid.span)("nzOffset",xe.btnGrid.offset)("nzXs",xe.btnGrid.xs)("nzSm",xe.btnGrid.sm)("nzMd",xe.btnGrid.md)("nzLg",xe.btnGrid.lg)("nzXl",xe.btnGrid.xl)("nzXXl",xe.btnGrid.xxl),n.xp6(3),n.Q6J("ngIf",xe.button)("ngIfElse",Me)}}function pe(ie,ae){if(1&ie&&(n.ynx(0),n.YNc(1,ne,5,12,"nz-form-item",5),n.BQk()),2&ie){const xe=n.oxw(2);n.xp6(1),n.Q6J("ngIf",xe._btn&&xe._btn.render)}}function re(ie,ae){if(1&ie&&n.YNc(0,pe,2,1,"ng-container",4),2&ie){const xe=n.oxw(),Me=n.MAs(1);n.Q6J("ngIf","none"!==xe.button)("ngIfElse",Me)}}function be(ie,ae){if(1&ie&&n._UZ(0,"sf-item",15),2&ie){const xe=n.oxw(),Me=n.MAs(3);n.Q6J("formProperty",xe.rootProperty)("footer",Me)}}const le=["*"];function ce(ie,ae,xe){return new v.e(ie,ae,xe)}class Q{get btnGrid(){return this._btn.render.grid}set mode(ae){switch(ae){case"search":this.layout="inline",this.firstVisual=!1,this.liveValidate=!1,this._btn&&(this._btn.submit=this._btn.search);break;case"edit":this.layout="horizontal",this.firstVisual=!1,this.liveValidate=!0,this._btn&&(this._btn.submit=this._btn.edit)}this._mode=ae}get mode(){return this._mode}get valid(){return this._valid}get value(){return this._item}getProperty(ae){return this.rootProperty?.searchProperty(ae)}getValue(ae){return this.getProperty(ae)?.value}setValue(ae,xe){const Me=this.getProperty(ae);if(!Me)throw new Error(`Invalid path: ${ae}`);return Me.resetValue(xe,!1),this}updateFeedback(ae,xe=""){return this.getProperty(ae)?.updateFeedback(xe),this}onSubmit(ae){ae.preventDefault(),ae.stopPropagation(),this.liveValidate||this.validator(),this.valid&&this.formSubmit.emit(this.value)}constructor(ae,xe,Me,Ye,q,ye,ee,Be,Re){this.formPropertyFactory=ae,this.terminator=xe,this.dom=Me,this.cdr=Ye,this.localeSrv=q,this.aclSrv=ye,this.i18nSrv=ee,this.platform=Re,this._renders=new Map,this._valid=!0,this._inited=!1,this.locale={},this.rootProperty=null,this.layout="horizontal",this.button={},this.liveValidate=!0,this.firstVisual=!0,this.onlyVisual=!1,this.compact=!1,this.loading=!1,this.disabled=!1,this.noColon=!1,this.cleanValue=!1,this.delay=!1,this.formValueChange=new n.vpe,this.formChange=new n.vpe,this.formSubmit=new n.vpe,this.formReset=new n.vpe,this.formError=new n.vpe,this.options=(0,M.f)(Be),this.liveValidate=this.options.liveValidate,this.firstVisual=this.options.firstVisual,this.autocomplete=this.options.autocomplete,this.delay=this.options.delay,this.localeSrv.change.pipe((0,t.sL)()).subscribe(()=>{this.locale=this.localeSrv.getData("sf"),this._inited&&(this.validator({emitError:!1,onlyRoot:!1}),this.coverButtonProperty(),this.cdr.markForCheck())});const ct=[this.aclSrv?this.aclSrv.change:null,this.i18nSrv?this.i18nSrv.change:null].filter(Ae=>null!=Ae);ct.length>0&&(0,i.T)(...ct).pipe((0,l.h)(()=>this._inited),(0,t.sL)()).subscribe(()=>this.refreshSchema())}fanyi(ae){return(this.i18nSrv?this.i18nSrv.fanyi(ae):"")||ae}inheritUI(ae){["optionalHelp"].filter(xe=>!!this._defUi[xe]).forEach(xe=>ae[xe]={...this._defUi[xe],...ae[xe]})}coverProperty(){const ae="horizontal"===this.layout,xe=(0,z.p$)(this.schema),{definitions:Me}=xe,Ye=(q,ye,ee,Be,Re)=>{Array.isArray(q.required)||(q.required=[]),Object.keys(q.properties).forEach(ct=>{const Mt="$"+ct,je=(0,d.u6)(q.properties[ct],Me),ot={...je.ui,...ee[Mt]},mt={...this._defUi,...Be,visibleIf:void 0,hidden:void 0,optional:void 0,optionalHelp:void 0,widget:je.type,...je.format&&this.options.formatMap[je.format],..."string"==typeof je.ui?{widget:je.ui}:null,...!je.format&&!je.ui&&Array.isArray(je.enum)&&je.enum.length>0?{widget:"select"}:null,...ot};if(Object.keys(mt).filter(we=>we.startsWith("$")).forEach(we=>delete mt[we]),ae?Be.spanLabelFixed?ot.spanLabelFixed||(mt.spanLabelFixed=Be.spanLabelFixed):(mt.spanLabel||(mt.spanLabel=typeof Be.spanLabel>"u"?5:Be.spanLabel),mt.spanControl||(mt.spanControl=typeof Be.spanControl>"u"?19:Be.spanControl),mt.offsetControl||(mt.offsetControl=typeof Be.offsetControl>"u"?null:Be.offsetControl)):(mt.spanLabel=null,mt.spanControl=null,mt.offsetControl=null),"inline"===this.layout&&delete mt.grid,"horizontal"!==this.layout&&(mt.spanLabelFixed=null),null!=mt.spanLabelFixed&&mt.spanLabelFixed>0&&(mt.spanLabel=null,mt.spanControl=null),"date"===mt.widget&&null!=mt.end){const we=q.properties[mt.end];we?we.ui={...we.ui,widget:mt.widget,hidden:!0}:mt.end=null}if(this.inheritUI(mt),mt.optionalHelp){"string"==typeof mt.optionalHelp&&(mt.optionalHelp={text:mt.optionalHelp});const we=mt.optionalHelp={text:"",icon:"question-circle",placement:"top",trigger:"hover",mouseEnterDelay:.15,mouseLeaveDelay:.1,...mt.optionalHelp};we.i18n&&(we.text=this.fanyi(we.i18n)),we.text||(mt.optionalHelp=void 0)}if(mt.i18n&&(je.title=this.fanyi(mt.i18n)),mt.descriptionI18n&&(je.description=this.fanyi(mt.descriptionI18n)),je.description&&(mt._description=this.dom.bypassSecurityTrustHtml(je.description)),mt.hidden="boolean"==typeof mt.hidden&&mt.hidden,!1===mt.hidden&&mt.acl&&this.aclSrv&&!this.aclSrv.can(mt.acl)&&(mt.hidden=!0),Re[Mt]=mt,delete je.ui,!0===mt.hidden){const we=q.required.indexOf(ct);-1!==we&&q.required.splice(we,1)}je.items&&(mt.$items={...je.items.ui,...ee[Mt],...mt.$items},Ye(je.items,je.items,ee[Mt]?.$items??{},mt.$items,mt.$items)),je.properties&&Object.keys(je.properties).length&&Ye(je,q,ee[Mt]||{},mt,mt)})};null==this.ui&&(this.ui={}),this._defUi={onlyVisual:this.options.onlyVisual,size:this.options.size,liveValidate:this.liveValidate,...this.options.ui,...xe.ui,...this.ui["*"]},!0===this.onlyVisual&&(this._defUi.onlyVisual=!0),"inline"===this.layout&&delete this._defUi.grid,this._ui={...this._defUi},Ye(xe,xe,this.ui,this.ui,this._ui),(0,d.RW)(xe,this._ui),this._schema=xe,delete xe.ui,(0,d.di)(this._ui,"cover schema & ui",this._ui,xe)}coverButtonProperty(){this._btn={render:{size:"default"},...this.locale,...this.options.button,...this.button};const ae=Object.keys(this._ui).find(Me=>Me.startsWith("$")),xe=this._btn.render;if("horizontal"===this.layout){const Me=ae?this._ui[ae]:this._defUi;xe.grid||(xe.grid={offset:Me.spanLabel,span:Me.spanControl}),null==xe.spanLabelFixed&&(xe.spanLabelFixed=Me.spanLabelFixed),!xe.class&&"number"==typeof Me.spanLabelFixed&&Me.spanLabelFixed>0&&(xe.class="text-center")}else xe.grid={};this._mode&&(this.mode=this._mode),(0,d.di)(this._ui,"button property",this._btn)}ngOnInit(){this.platform.isBrowser&&(this.validator(),this._inited=!0)}ngOnChanges(ae){if(!this.platform.isBrowser)return;const xe=["disabled","loading"];Object.keys(ae).every(Me=>xe.includes(Me))?this.cdr.detectChanges():this.delay||this.refreshSchema()}_addTpl(ae,xe){this._inited&&(this._renders.has(ae)||(this._renders.set(ae,xe),this.attachCustomRender()))}attachCustomRender(){this._renders.forEach((ae,xe)=>{const Me=this.rootProperty?.searchProperty(xe);null!=Me&&(Me.ui._render=ae)})}validator(ae={emitError:!0,onlyRoot:!0}){if(null==this.rootProperty||!this.platform.isBrowser)return!1;const xe=Ye=>{Ye._runValidation(),Ye instanceof h.I&&Ye.properties&&(Array.isArray(Ye.properties)?Ye.properties.forEach(q=>xe(q)):Object.keys(Ye.properties).forEach(q=>xe(Ye.properties[q])))};ae.onlyRoot?this.rootProperty._runValidation():xe(this.rootProperty);const Me=this.rootProperty.errors;return this._valid=!(Me&&Me.length),ae.emitError&&!this._valid&&this.formError.emit(Me),this.cdr.detectChanges(),this._valid}refreshSchema(ae,xe){if(!this.platform.isBrowser)return this;if(ae&&(this.schema=ae),xe&&(this.ui=xe),!this.schema||typeof this.schema.properties>"u")throw new Error("Invalid Schema");if(this.schema.ui&&"string"==typeof this.schema.ui)throw new Error("Don't support string with root ui property");this.schema.type="object",this._formData={...this.formData},this._inited&&this.terminator.destroy(),this.cleanRootSub(),this.coverProperty(),this.coverButtonProperty(),this.rootProperty=this.formPropertyFactory.createProperty(this._schema,this._ui,this.formData),this.attachCustomRender(),this.cdr.detectChanges(),this.reset();let Me=!0;return this.rootProperty.valueChanges.subscribe(Ye=>{this._item={...this.cleanValue?null:this.formData,...Ye.value},Me?Me=!1:(this.formChange.emit(this._item),this.formValueChange.emit({value:this._item,path:Ye.path,pathValue:Ye.pathValue}))}),this.rootProperty.errorsChanges.subscribe(Ye=>{this._valid=!(Ye&&Ye.length),this.formError.emit(Ye),this.cdr.detectChanges()}),this}reset(ae=!1){return null!=this.rootProperty&&this.platform.isBrowser?(this.rootProperty.resetValue(this.formData,!1),Promise.resolve().then(()=>this.cdr.detectChanges()),ae&&this.formReset.emit(this.value),this):this}cleanRootSub(){this.rootProperty&&(this.rootProperty.errorsChanges.unsubscribe(),this.rootProperty.valueChanges.unsubscribe())}ngOnDestroy(){this.cleanRootSub(),this.terminator.destroy()}static#e=this.\u0275fac=function(xe){return new(xe||Q)(n.Y36(v.e),n.Y36(g.v),n.Y36(y.H7),n.Y36(n.sBO),n.Y36(C.s7),n.Y36(T._8,8),n.Y36(C.Oi,8),n.Y36(E.Ri),n.Y36(x.t4))};static#t=this.\u0275cmp=n.Xpm({type:Q,selectors:[["sf"],["","sf",""]],hostVars:16,hostBindings:function(xe,Me){2&xe&&n.ekj("sf",!0)("sf__inline","inline"===Me.layout)("sf__horizontal","horizontal"===Me.layout)("sf__search","search"===Me.mode)("sf__edit","edit"===Me.mode)("sf__no-error",Me.onlyVisual)("sf__no-colon",Me.noColon)("sf__compact",Me.compact)},inputs:{layout:"layout",schema:"schema",ui:"ui",formData:"formData",button:"button",liveValidate:"liveValidate",autocomplete:"autocomplete",firstVisual:"firstVisual",onlyVisual:"onlyVisual",compact:"compact",mode:"mode",loading:"loading",disabled:"disabled",noColon:"noColon",cleanValue:"cleanValue",delay:"delay"},outputs:{formValueChange:"formValueChange",formChange:"formChange",formSubmit:"formSubmit",formReset:"formReset",formError:"formError"},exportAs:["sf"],features:[n._Bn([f.g,{provide:v.e,useFactory:ce,deps:[n.zs3,p.l,E.Ri]},g.v]),n.TTD],ngContentSelectors:le,decls:6,vars:3,consts:[["con",""],["btnTpl",""],["nz-form","",3,"nzLayout","submit"],[3,"formProperty","footer",4,"ngIf"],[4,"ngIf","ngIfElse"],["class","sf-btns",3,"ngClass","fixed-label",4,"ngIf"],[1,"sf-btns",3,"ngClass","fixed-label"],["nz-col","",1,"ant-form-item-control",3,"nzSpan","nzOffset","nzXs","nzSm","nzMd","nzLg","nzXl","nzXXl"],[1,"ant-form-item-control-input"],[1,"ant-form-item-control-input-content"],["type","submit","nz-button","","data-type","submit",3,"nzType","nzSize","nzLoading","disabled"],["nz-icon","",3,"nzType","nzTheme","nzTwotoneColor","nzIconfont",4,"ngIf"],["type","button","nz-button","","data-type","reset",3,"nzType","nzSize","disabled","click",4,"ngIf"],["nz-icon","",3,"nzType","nzTheme","nzTwotoneColor","nzIconfont"],["type","button","nz-button","","data-type","reset",3,"nzType","nzSize","disabled","click"],[3,"formProperty","footer"]],template:function(xe,Me){1&xe&&(n.F$t(),n.YNc(0,Y,1,0,"ng-template",null,0,n.W1O),n.YNc(2,re,1,2,"ng-template",null,1,n.W1O),n.TgZ(4,"form",2),n.NdJ("submit",function(q){return Me.onSubmit(q)}),n.YNc(5,be,1,2,"sf-item",3),n.qZA()),2&xe&&(n.xp6(4),n.Q6J("nzLayout",Me.layout),n.uIk("autocomplete",Me.autocomplete),n.xp6(1),n.Q6J("ngIf",Me.rootProperty))},dependencies:[D.mk,D.O5,_._Y,_.JL,_.F,P.ix,O.w,A.dQ,k.t3,k.SK,F.Lr,F.Nx,W.Ls,K.S,_e.h],encapsulation:2,changeDetection:0})}(0,e.gn)([(0,u.yF)()],Q.prototype,"liveValidate",void 0),(0,e.gn)([(0,u.yF)()],Q.prototype,"firstVisual",void 0),(0,e.gn)([(0,u.yF)()],Q.prototype,"onlyVisual",void 0),(0,e.gn)([(0,u.yF)()],Q.prototype,"compact",void 0),(0,e.gn)([(0,u.yF)()],Q.prototype,"loading",void 0),(0,e.gn)([(0,u.yF)()],Q.prototype,"disabled",void 0),(0,e.gn)([(0,u.yF)()],Q.prototype,"noColon",void 0),(0,e.gn)([(0,u.yF)()],Q.prototype,"cleanValue",void 0),(0,e.gn)([(0,u.yF)()],Q.prototype,"delay",void 0)},65584:(nt,I,o)=>{"use strict";o.d(I,{v:()=>n});var e=o(78645);class n{constructor(){this.onDestroy=new e.x}destroy(){this.onDestroy.next(!0)}}},92219:(nt,I,o)=>{"use strict";o.d(I,{$2:()=>d,AM:()=>E,P$:()=>f,RW:()=>h,Yu:()=>y,di:()=>u,fp:()=>C,u6:()=>M,vn:()=>p});var e=o(37398),n=o(22096),t=o(74648),i=o(64115),l=o(60699);function C(x){return null==x}function E(x,D){return(0,t.sw)(x,D)}function u(x,...D){}function M(x,D={}){if(x.hasOwnProperty("$ref")){const _=function z(x,D){const _=/^#\/definitions\/(.*)$/.exec(x);if(_&&_[1]){const P=_[1].split(l.j);let O=D;for(let A of P){if(A=A.replace(/~1/g,l.j).replace(/~0/g,"~"),!O.hasOwnProperty(A))throw new Error(`Could not find a definition for ${x}.`);O=O[A]}return O}throw new Error(`Could not find a definition for ${x}.`)}(x.$ref,D),{$ref:P,...O}=x;return M({..._,...O},D)}return x}function h(x,D){const _=(P,O)=>{(function v(x,D){if(!x.hasOwnProperty("if")||!x.hasOwnProperty("then"))return null;if(!x.if.properties)throw new Error("if: does not contain 'properties'");const _=Object.keys(x.properties),P=Object.keys(x.if.properties);g(_,P),g(_,x.then.required),x.required=x.required.concat(x.then.required);const O=x.hasOwnProperty("else");O&&(g(_,x.else.required),x.required=x.required.concat(x.else.required));const A={},k={};P.forEach(F=>{const W=x.if.properties[F].enum;A[F]=W,O&&(k[F]=K=>!W.includes(K))}),x.then.required.forEach(F=>D[`$${F}`].visibleIf=A),O&&x.else.required.forEach(F=>D[`$${F}`].visibleIf=k)})(P,O),Object.keys(P.properties).forEach(A=>{const k=P.properties[A],F=`$${A}`;k.items&&_(k.items,O[F].$items),k.properties&&_(k,O[F])})};_(x,D)}function g(x,D){D.forEach(_=>{if(!x.includes(_))throw new Error(`if: properties does not contain '${_}'`)})}function d(x,D){if(!Array.isArray(D))return x;const _=_e=>_e.reduce((Y,G)=>(Y[G]=!0,Y),{}),P=_e=>`property [${_e.join("', '")}]`,O=_(x),A=_(D),k=D.filter(_e=>"*"!==_e&&!O[_e]);if(k.length)throw new Error(`ui schema order list contains extraneous ${P(k)}`);const F=x.filter(_e=>!A[_e]),W=D.indexOf("*");if(-1===W){if(F.length)throw new Error(`ui schema order list does not contain ${P(F)}`);return D}if(W!==D.lastIndexOf("*"))throw new Error("ui schema order list contains more than one wildcard item");const K=[...D];return K.splice(W,1,...F),K}function p(x,D,_){return C(x)||!Array.isArray(x)||0===x.length?[]:("object"!=typeof x[0]&&(x=x.map(P=>({label:P,value:P}))),D&&(Array.isArray(D)||(D=[D]),x.forEach(P=>{~D.indexOf(P.value)&&(P.checked=!0)})),_&&x.forEach(P=>P.disabled=!0),x)}function f(x,D,_){return p((0,i.p$)(x||[]),D,_)}function y(x,D,_,P){return"function"==typeof D.asyncData?D.asyncData(P).pipe((0,e.U)(O=>p(O,_,x.readOnly))):(0,n.of)(f(x.enum,_,x.readOnly))}},18224:(nt,I,o)=>{"use strict";o.d(I,{l:()=>z,p:()=>M});var e=o(34258),n=o.n(e),t=o(56226),i=o.n(t),l=o(78967),C=o(59927),E=o(84923),u=o(65879);let z=(()=>{class h{static#e=this.\u0275fac=function(d){return new(d||h)};static#t=this.\u0275prov=u.Yz7({token:h,factory:h.\u0275fac})}return h})(),M=(()=>{class h extends z{constructor(g,d){if(super(),this.ngZone=d,"object"!=typeof document||!document)return;this.options=(0,E.f)(g);const p=this.options.ajv||{};this.ngZone.runOutsideAngular(()=>{this.ajv=new(n())({allErrors:!0,loopEnum:50,...p,formats:{"data-url":/^data:([a-z]+\/[a-z0-9-+.]+)?;name=(.*);base64,(.*)$/,color:C.mL.color,mobile:C.mL.mobile,"id-card":C.mL.idCard,...p.formats}}),i()(this.ajv)})}createValidatorFn(g,d){const p=[...this.options.ingoreKeywords,...d.ingoreKeywords||[]];return f=>{try{this.ngZone.runOutsideAngular(()=>this.ajv.validate(g,f))}catch{}let y=this.ajv.errors;return this.options&&p&&y&&(y=y.filter(T=>-1===p.indexOf(T.keyword))),y}}static#e=this.\u0275fac=function(d){return new(d||h)(u.LFG(l.Ri),u.LFG(u.R0b))};static#t=this.\u0275prov=u.Yz7({token:h,factory:h.\u0275fac})}return h})()},48480:(nt,I,o)=>{"use strict";o.d(I,{B:()=>n,g:()=>t});var e=o(65879);class n{constructor(){this._widgets={}}get widgets(){return this._widgets}setDefault(l){this.defaultWidget=l}register(l,C){this._widgets[l]=C}has(l){return this._widgets.hasOwnProperty(l)}getType(l){return this.has(l)?this._widgets[l]:this.defaultWidget}}let t=(()=>{class i{constructor(C){this.registry=C}createWidget(C,E){this.registry.has(E);const u=this.registry.getType(E);return C.createComponent(u)}static#e=this.\u0275fac=function(E){return new(E||i)(e.LFG(n))};static#t=this.\u0275prov=e.Yz7({token:i,factory:i.\u0275fac})}return i})()},98498:(nt,I,o)=>{"use strict";o.d(I,{$j:()=>z,H_:()=>u,VV:()=>h,VY:()=>M});var e=o(65879),n=o(6593),t=o(59773),i=o(33182),l=o(47535),C=o(92219);let E=(()=>{class v{get cls(){return this.ui.class||""}get disabled(){return!(!0!==this.schema.readOnly&&!this.sfComp.disabled)}get l(){return this.formProperty.root.widget.sfComp.locale}get oh(){return this.ui.optionalHelp}get dom(){return this.injector.get(n.H7)}get cleanValue(){return this.sfComp?.cleanValue}constructor(d,p,f,y){this.cd=d,this.injector=p,this.sfItemComp=f,this.sfComp=y,this.showError=!1,this.id=""}ngAfterViewInit(){this.formProperty.errorsChanges.pipe((0,t.R)(this.sfItemComp.destroy$)).subscribe(d=>{if(null==d)return;(0,C.di)(this.ui,"errorsChanges",this.formProperty.path,d);const p=this.sfComp?.firstVisual;(p||!p&&this.sfComp?._inited)&&(this.showError=d.length>0,this.error=this.showError?d[0].message:"",this.cd.detectChanges())}),this.afterViewInit()}setValue(d){this.formProperty.setValue(d,!1),(0,C.di)(this.ui,"valueChanges",this.formProperty.path,this.formProperty)}get value(){return this.formProperty.value}detectChanges(d=!1){d?this.cd.markForCheck():this.formProperty.root.widget?.cd.markForCheck()}static#e=this.\u0275fac=function(p){return new(p||v)(e.Y36(e.sBO),e.Y36(e.zs3),e.Y36(i.S),e.Y36(l.k))};static#t=this.\u0275dir=e.lG2({type:v,hostVars:2,hostBindings:function(p,f){2&p&&e.Tol(f.cls)}})}return v})(),u=(()=>{class v extends E{reset(d){}afterViewInit(){}static#e=this.\u0275fac=function(){let d;return function(f){return(d||(d=e.n5z(v)))(f||v)}}();static#t=this.\u0275dir=e.lG2({type:v,features:[e.qOj]})}return v})(),z=(()=>{class v extends E{reset(d){}afterViewInit(){}static#e=this.\u0275fac=function(){let d;return function(f){return(d||(d=e.n5z(v)))(f||v)}}();static#t=this.\u0275dir=e.lG2({type:v,features:[e.qOj]})}return v})(),M=(()=>{class v extends E{reset(d){}afterViewInit(){}ngAfterViewInit(){this.formProperty.errorsChanges.pipe((0,t.R)(this.sfItemComp.destroy$)).subscribe(()=>this.cd.detectChanges())}static#e=this.\u0275fac=function(){let d;return function(f){return(d||(d=e.n5z(v)))(f||v)}}();static#t=this.\u0275dir=e.lG2({type:v,features:[e.qOj]})}return v})(),h=(()=>{class v extends E{reset(d){}afterViewInit(){}ngAfterViewInit(){this.formProperty.errorsChanges.pipe((0,t.R)(this.sfItemComp.destroy$)).subscribe(()=>this.cd.detectChanges())}static#e=this.\u0275fac=function(){let d;return function(f){return(d||(d=e.n5z(v)))(f||v)}}();static#t=this.\u0275dir=e.lG2({type:v,features:[e.qOj]})}return v})()},84212:(nt,I,o)=>{"use strict";o.d(I,{L:()=>D});var e=o(98498),n=o(65879),t=o(96814),i=o(42840),l=o(70855),C=o(41958),E=o(82962),u=o(10095),z=o(3599),M=o(90551),h=o(96109),v=o(33182);function g(_,P){if(1&_&&n._UZ(0,"i",12),2&_){const O=n.oxw(2);n.Q6J("nzTooltipTitle",O.oh.text)("nzTooltipPlacement",O.oh.placement)("nzTooltipTrigger",O.oh.trigger)("nzTooltipOverlayClassName",O.oh.overlayClassName)("nzTooltipOverlayStyle",O.oh.overlayStyle)("nzTooltipMouseEnterDelay",O.oh.mouseEnterDelay)("nzTooltipMouseLeaveDelay",O.oh.mouseLeaveDelay)("nzType",O.oh.icon)}}function d(_,P){if(1&_){const O=n.EpF();n.TgZ(0,"div",7)(1,"label"),n._uU(2),n.TgZ(3,"span",8),n._uU(4),n.YNc(5,g,1,8,"i",9),n.qZA()(),n.TgZ(6,"div",10)(7,"button",11),n.NdJ("click",function(){n.CHM(O);const k=n.oxw();return n.KtG(k.addItem())}),n.qZA()()()}if(2&_){const O=n.oxw();n.Q6J("nzSpan",O.ui.spanLabel),n.xp6(1),n.ekj("ant-form-item-required",O.ui.required),n.xp6(1),n.hij(" ",O.schema.title," "),n.xp6(2),n.hij(" ",O.ui.optional," "),n.xp6(1),n.Q6J("ngIf",O.oh),n.xp6(2),n.Q6J("nzType",O.addType)("disabled",O.addDisabled)("innerHTML",O.addTitle,n.oJD)}}function p(_,P){if(1&_){const O=n.EpF();n.TgZ(0,"span",17),n.NdJ("click",function(){n.CHM(O);const k=n.oxw(2).index,F=n.oxw();return n.KtG(F.removeItem(k))}),n._UZ(1,"i",18),n.qZA()}if(2&_){const O=n.oxw(3);n.uIk("title",O.removeTitle)}}function f(_,P){if(1&_&&(n.TgZ(0,"div",14)(1,"nz-card"),n._UZ(2,"sf-item",15),n.YNc(3,p,2,1,"span",16),n.qZA()()),2&_){const O=n.oxw(),A=O.index,k=O.$implicit,F=n.oxw();n.Q6J("nzSpan",F.arraySpan),n.uIk("data-index",A),n.xp6(2),n.Q6J("formProperty",k),n.xp6(1),n.Q6J("ngIf",F.showRemove)}}function y(_,P){if(1&_&&(n.ynx(0),n.YNc(1,f,4,4,"div",13),n.BQk()),2&_){const O=P.$implicit;n.xp6(1),n.Q6J("ngIf",O.visible&&!O.ui.hidden)}}function T(_,P){if(1&_&&(n.TgZ(0,"div",19),n._uU(1),n.qZA()),2&_){const O=n.oxw();n.xp6(1),n.Oqu(O.error)}}function x(_,P){if(1&_&&n._UZ(0,"div",20),2&_){const O=n.oxw();n.Q6J("innerHTML",O.ui._description,n.oJD)}}let D=(()=>{class _ extends e.VY{constructor(){super(...arguments),this.arraySpan=8}get addDisabled(){return this.disabled||null!=this.schema.maxItems&&this.formProperty.properties.length>=this.schema.maxItems}get showRemove(){return!(this.disabled||!this.removeTitle||null!=this.schema.minItems&&this.formProperty.properties.length<=this.schema.minItems)}ngOnInit(){const{grid:O,addTitle:A,addType:k,removable:F,removeTitle:W}=this.ui;O&&O.arraySpan&&(this.arraySpan=O.arraySpan),this.addTitle=this.dom.bypassSecurityTrustHtml(A||this.l.addText),this.addType=k||"dashed",this.removeTitle=!1===F?null:W||this.l.removeText}reValid(){this.formProperty.updateValueAndValidity({onlySelf:!1,emitValueEvent:!1,emitValidator:!0})}addItem(){const O=this.formProperty.add({});this.reValid(),this.ui.add&&this.ui.add(O)}removeItem(O){this.formProperty.remove(O),this.reValid(),this.ui.remove&&this.ui.remove(O)}static#e=this.\u0275fac=function(){let O;return function(k){return(O||(O=n.n5z(_)))(k||_)}}();static#t=this.\u0275cmp=n.Xpm({type:_,selectors:[["sf-array"]],hostVars:2,hostBindings:function(A,k){2&A&&n.ekj("sf__array",!0)},features:[n.qOj],decls:8,vars:10,consts:[["nz-col","","class","ant-form-item-label",3,"nzSpan",4,"ngIf"],["nz-col","",1,"ant-form-item-control-wrapper",3,"nzSpan","nzOffset"],[1,"ant-form-item-control"],["nz-row","",1,"sf__array-container"],[4,"ngFor","ngForOf"],["class","ant-form-explain",4,"ngIf"],["class","ant-form-extra",3,"innerHTML",4,"ngIf"],["nz-col","",1,"ant-form-item-label",3,"nzSpan"],[1,"sf__optional"],["nz-tooltip","","nz-icon","",3,"nzTooltipTitle","nzTooltipPlacement","nzTooltipTrigger","nzTooltipOverlayClassName","nzTooltipOverlayStyle","nzTooltipMouseEnterDelay","nzTooltipMouseLeaveDelay","nzType",4,"ngIf"],[1,"sf__array-add"],["type","button","nz-button","",3,"nzType","disabled","innerHTML","click"],["nz-tooltip","","nz-icon","",3,"nzTooltipTitle","nzTooltipPlacement","nzTooltipTrigger","nzTooltipOverlayClassName","nzTooltipOverlayStyle","nzTooltipMouseEnterDelay","nzTooltipMouseLeaveDelay","nzType"],["nz-col","","class","sf__array-item",3,"nzSpan",4,"ngIf"],["nz-col","",1,"sf__array-item",3,"nzSpan"],[3,"formProperty"],["class","sf__array-remove",3,"click",4,"ngIf"],[1,"sf__array-remove",3,"click"],["nz-icon","","nzType","delete"],[1,"ant-form-explain"],[1,"ant-form-extra",3,"innerHTML"]],template:function(A,k){1&A&&(n.TgZ(0,"nz-form-item"),n.YNc(1,d,8,9,"div",0),n.TgZ(2,"div",1)(3,"div",2)(4,"div",3),n.YNc(5,y,2,1,"ng-container",4),n.qZA(),n.YNc(6,T,2,1,"div",5),n.YNc(7,x,1,1,"div",6),n.qZA()()()),2&A&&(n.ekj("ant-form-item-with-help",k.showError),n.xp6(1),n.Q6J("ngIf",k.schema.title),n.xp6(1),n.Q6J("nzSpan",k.ui.spanControl)("nzOffset",k.ui.offsetControl),n.xp6(1),n.ekj("has-error",k.showError),n.xp6(2),n.Q6J("ngForOf",k.formProperty.properties),n.xp6(1),n.Q6J("ngIf",!k.ui.onlyVisual&&k.showError),n.xp6(1),n.Q6J("ngIf",k.schema.description))},dependencies:[t.sg,t.O5,i.ix,l.w,C.dQ,E.bd,u.t3,u.SK,z.Nx,M.Ls,h.SY,v.S],encapsulation:2})}return _})()},86918:(nt,I,o)=>{"use strict";o.d(I,{N:()=>y});var e=o(60095),n=o(83620),t=o(27921),i=o(21631),l=o(37398),C=o(59773),E=o(22096),u=o(92219),z=o(98498),M=o(65879),h=o(96814),v=o(95717),g=o(20824),d=o(93355);function p(T,x){if(1&T&&(M.TgZ(0,"nz-auto-option",5),M._uU(1),M.qZA()),2&T){const D=x.$implicit;M.Q6J("nzValue",D)("nzLabel",D.label),M.xp6(1),M.hij(" ",D.label," ")}}const f=function(){return{}};let y=(()=>{class T extends z.$j{constructor(){super(...arguments),this.i={},this.typing="",this.isAsync=!1,this.fixData=[]}updateValue(D){this.typing=D.nzLabel;const _=D.nzValue;this.setValue(_.value),this.ui.change&&this.ui.change(D,_)}_setValue(D){let _=D.toString();"string"!=typeof D&&(_=D.value),this.setValue(_)}afterViewInit(){const{backfill:D,defaultActiveFirstOption:_,nzWidth:P,filterOption:O,asyncData:A,compareWith:k}=this.ui;this.i={backfill:(0,u.AM)(D,!1),defaultActiveFirstOption:(0,u.AM)(_,!0),width:P||void 0,compareWith:k||((_e,Y)=>_e===Y)};let F=O??!0;"boolean"==typeof F&&(F=(_e,Y)=>Y.label.toLowerCase().indexOf((_e||"").toLowerCase())>-1),this.filterOption=F,this.isAsync=!!A;const W=+(this.ui.debounceTime||0),K=Math.max(0,this.isAsync?Math.max(50,W):W);this.list=this.ngModel.valueChanges.pipe((0,n.b)(K),(0,t.O)(""),(0,i.z)(_e=>this.isAsync?A(_e):this.filterData(_e)),(0,l.U)(_e=>(0,u.vn)(_e,null,this.schema.readOnly)))}reset(D){this.isAsync?this.ui.asyncData(D).pipe((0,C.R)(this.sfItemComp.destroy$),(0,l.U)(_=>(0,u.vn)(_,null,this.schema.readOnly))).subscribe(_=>{this.typing=_.find(P=>P.value===this.value)?.label??""}):this.fixData="email"===(this.typing=D,this.ui.type)?(0,u.P$)(this.schema.enum||this.formProperty.options.uiEmailSuffixes,null,this.schema.readOnly):(0,u.P$)(this.schema.enum,D,this.schema.readOnly)}filterData(D){return"email"===this.ui.type?this.addEmailSuffix(D):(0,E.of)(this.fixData.filter(_=>this.filterOption(D,_)))}addEmailSuffix(D){return(0,E.of)(!D||~D.indexOf("@")?[]:this.fixData.map(_=>`${D}@${_.label}`))}static#e=this.\u0275fac=function(){let D;return function(P){return(D||(D=M.n5z(T)))(P||T)}}();static#t=this.\u0275cmp=M.Xpm({type:T,selectors:[["sf-autocomplete"]],viewQuery:function(_,P){if(1&_&&M.Gf(e.On,5),2&_){let O;M.iGM(O=M.CRH())&&(P.ngModel=O.first)}},features:[M.qOj],decls:6,vars:24,consts:[[3,"id","schema","ui","showError","error","showTitle"],["nz-input","","autocomplete","off",3,"nzAutocomplete","disabled","nzSize","ngModel","ngModelChange"],[3,"nzBackfill","nzDefaultActiveFirstOption","nzWidth","nzOverlayStyle","nzOverlayClassName","compareWith","selectionChange"],["auto",""],[3,"nzValue","nzLabel",4,"ngFor","ngForOf"],[3,"nzValue","nzLabel"]],template:function(_,P){if(1&_&&(M.TgZ(0,"sf-item-wrap",0)(1,"input",1),M.NdJ("ngModelChange",function(A){return P.typing=A})("ngModelChange",function(A){return P._setValue(A)}),M.qZA(),M.TgZ(2,"nz-autocomplete",2,3),M.NdJ("selectionChange",function(A){return P.updateValue(A)}),M.YNc(4,p,2,3,"nz-auto-option",4),M.ALo(5,"async"),M.qZA()()),2&_){const O=M.MAs(3);M.Q6J("id",P.id)("schema",P.schema)("ui",P.ui)("showError",P.showError)("error",P.error)("showTitle",P.schema.title),M.xp6(1),M.Q6J("nzAutocomplete",O)("disabled",P.disabled)("nzSize",P.ui.size)("ngModel",P.typing),M.uIk("id",P.id)("disabled",P.disabled)("maxLength",P.schema.maxLength||null)("placeholder",P.ui.placeholder),M.xp6(1),M.Q6J("nzBackfill",P.i.backfill)("nzDefaultActiveFirstOption",P.i.defaultActiveFirstOption)("nzWidth",P.i.width)("nzOverlayStyle",P.ui.overlayStyle||M.DdM(23,f))("nzOverlayClassName",P.ui.overlayClassName||"")("compareWith",P.i.compareWith),M.xp6(2),M.Q6J("ngForOf",M.lcZ(5,21,P.list))}},dependencies:[h.sg,e.Fj,e.JJ,e.On,v.gi,v.NB,v.Pf,g.Zp,d.i,h.Ov],encapsulation:2})}return T})()},38140:(nt,I,o)=>{"use strict";o.d(I,{H:()=>C});var e=o(98498),n=o(65879),t=o(60095),i=o(96494),l=o(93355);let C=(()=>{class E extends e.$j{static#e=this.\u0275fac=function(){let z;return function(h){return(z||(z=n.n5z(E)))(h||E)}}();static#t=this.\u0275cmp=n.Xpm({type:E,selectors:[["sf-boolean"]],features:[n.qOj],decls:2,vars:12,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"ngModel","nzDisabled","nzSize","nzCheckedChildren","nzUnCheckedChildren","nzLoading","ngModelChange"]],template:function(M,h){1&M&&(n.TgZ(0,"sf-item-wrap",0)(1,"nz-switch",1),n.NdJ("ngModelChange",function(g){return h.setValue(g)}),n.qZA()()),2&M&&(n.Q6J("id",h.id)("schema",h.schema)("ui",h.ui)("showError",h.showError)("error",h.error)("showTitle",h.schema.title),n.xp6(1),n.Q6J("ngModel",h.value)("nzDisabled",h.disabled)("nzSize",h.ui.size)("nzCheckedChildren",h.ui.checkedChildren)("nzUnCheckedChildren",h.ui.unCheckedChildren)("nzLoading",h.ui.loading))},dependencies:[t.JJ,t.On,i.i,l.i],encapsulation:2})}return E})()},40712:(nt,I,o)=>{"use strict";o.d(I,{M:()=>E});var e=o(92219),n=o(98498),t=o(65879),i=o(60095),l=o(25923),C=o(93355);let E=(()=>{class u extends n.$j{constructor(){super(...arguments),this.data=[]}ngOnInit(){const{clearText:M,showArrow:h,showInput:v,triggerAction:g,asyncData:d}=this.ui;this.clearText=M||"\u6e05\u9664",this.showArrow=(0,e.AM)(h,!0),this.showInput=(0,e.AM)(v,!0),this.triggerAction=g||["click"],d&&(this.loadData=(p,f)=>d(p,f,this).then(()=>this.detectChanges()))}reset(M){(0,e.Yu)(this.schema,{},M).subscribe(h=>{this.data=h,this.detectChanges()})}_visibleChange(M){this.ui.visibleChange&&this.ui.visibleChange(M)}_change(M){this.setValue(M),this.ui.change&&this.ui.change(M)}_selectionChange(M){this.ui.selectionChange&&this.ui.selectionChange(M)}_clear(){this.ui.clear&&this.ui.clear()}static#e=this.\u0275fac=function(){let M;return function(v){return(M||(M=t.n5z(u)))(v||u)}}();static#t=this.\u0275cmp=t.Xpm({type:u,selectors:[["sf-cascader"]],features:[t.qOj],decls:2,vars:26,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"nzDisabled","nzSize","ngModel","nzOptions","nzAllowClear","nzAutoFocus","nzChangeOn","nzChangeOnSelect","nzColumnClassName","nzExpandTrigger","nzMenuClassName","nzMenuStyle","nzNotFoundContent","nzLabelProperty","nzValueProperty","nzLoadData","nzPlaceHolder","nzShowArrow","nzShowInput","nzShowSearch","ngModelChange","nzClear","nzVisibleChange","nzSelectionChange"]],template:function(h,v){1&h&&(t.TgZ(0,"sf-item-wrap",0)(1,"nz-cascader",1),t.NdJ("ngModelChange",function(d){return v._change(d)})("nzClear",function(){return v._clear()})("nzVisibleChange",function(d){return v._visibleChange(d)})("nzSelectionChange",function(d){return v._selectionChange(d)}),t.qZA()()),2&h&&(t.Q6J("id",v.id)("schema",v.schema)("ui",v.ui)("showError",v.showError)("error",v.error)("showTitle",v.schema.title),t.xp6(1),t.Q6J("nzDisabled",v.disabled)("nzSize",v.ui.size)("ngModel",v.value)("nzOptions",v.data)("nzAllowClear",v.ui.allowClear)("nzAutoFocus",v.ui.autoFocus)("nzChangeOn",v.ui.changeOn)("nzChangeOnSelect",v.ui.changeOnSelect)("nzColumnClassName",v.ui.columnClassName)("nzExpandTrigger",v.ui.expandTrigger)("nzMenuClassName",v.ui.menuClassName)("nzMenuStyle",v.ui.menuStyle)("nzNotFoundContent",v.ui.notFoundContent)("nzLabelProperty",v.ui.labelProperty||"label")("nzValueProperty",v.ui.valueProperty||"value")("nzLoadData",v.loadData)("nzPlaceHolder",v.ui.placeholder)("nzShowArrow",v.showArrow)("nzShowInput",v.showInput)("nzShowSearch",v.ui.showSearch))},dependencies:[i.JJ,i.On,l.D4,C.i],encapsulation:2})}return u})()},98685:(nt,I,o)=>{"use strict";o.d(I,{O:()=>O});var e=o(92219),n=o(98498),t=o(65879),i=o(96814),l=o(60095),C=o(70855),E=o(62612),u=o(10095),z=o(90551),M=o(96109),h=o(93355);function v(A,k){if(1&A){const F=t.EpF();t.TgZ(0,"label",4),t.NdJ("ngModelChange",function(K){t.CHM(F);const _e=t.oxw(2);return t.KtG(_e.allChecked=K)})("ngModelChange",function(){t.CHM(F);const K=t.oxw(2);return t.KtG(K.onAllChecked())}),t._uU(1),t.qZA()}if(2&A){const F=t.oxw(2);t.Q6J("ngModel",F.allChecked)("nzIndeterminate",F.indeterminate),t.xp6(1),t.hij(" ",F.ui.checkAllText||F.l.checkAllText," ")}}function g(A,k){if(1&A&&t.YNc(0,v,2,3,"label",3),2&A){const F=t.oxw();t.Q6J("ngIf",F.ui.checkAll)}}function d(A,k){if(1&A&&t._UZ(0,"i",8),2&A){const F=t.oxw(2);t.Q6J("nzTooltipTitle",F.oh.text)("nzTooltipPlacement",F.oh.placement)("nzTooltipTrigger",F.oh.trigger)("nzTooltipOverlayClassName",F.oh.overlayClassName)("nzTooltipOverlayStyle",F.oh.overlayStyle)("nzTooltipMouseEnterDelay",F.oh.mouseEnterDelay)("nzTooltipMouseLeaveDelay",F.oh.mouseLeaveDelay)("nzType",F.oh.icon)}}function p(A,k){if(1&A){const F=t.EpF();t.ynx(0),t.TgZ(1,"label",5),t.NdJ("ngModelChange",function(K){t.CHM(F);const _e=t.oxw();return t.KtG(_e._setValue(K))}),t._uU(2),t.TgZ(3,"span",6),t._uU(4),t.YNc(5,d,1,8,"i",7),t.qZA()(),t.BQk()}if(2&A){const F=t.oxw();t.xp6(1),t.Q6J("nzDisabled",F.disabled)("ngModel",F.value),t.xp6(1),t.hij(" ",F.schema.title," "),t.xp6(2),t.hij(" ",F.ui.optional," "),t.xp6(1),t.Q6J("ngIf",F.oh)}}function f(A,k){}function y(A,k){if(1&A){const F=t.EpF();t.ynx(0),t.YNc(1,f,0,0,"ng-template",9),t.TgZ(2,"nz-checkbox-group",10),t.NdJ("ngModelChange",function(){t.CHM(F);const K=t.oxw(2);return t.KtG(K.notifySet())}),t.qZA(),t.BQk()}if(2&A){const F=t.oxw(2),W=t.MAs(1);t.xp6(1),t.Q6J("ngTemplateOutlet",W),t.xp6(1),t.Q6J("ngModel",F.data)}}function T(A,k){}function x(A,k){if(1&A&&(t.TgZ(0,"div",15),t.YNc(1,T,0,0,"ng-template",9),t.qZA()),2&A){const F=t.oxw(3),W=t.MAs(1);t.Q6J("nzSpan",F.grid_span),t.xp6(1),t.Q6J("ngTemplateOutlet",W)}}function D(A,k){if(1&A&&(t.TgZ(0,"div",15)(1,"label",16),t._uU(2),t.qZA()()),2&A){const F=k.$implicit,W=t.oxw(3);t.Q6J("nzSpan",W.grid_span),t.xp6(1),t.Q6J("nzValue",F.value)("ngModel",F.checked)("nzDisabled",F.disabled),t.xp6(1),t.Oqu(F.label)}}function _(A,k){if(1&A){const F=t.EpF();t.ynx(0),t.TgZ(1,"nz-checkbox-wrapper",11),t.NdJ("nzOnChange",function(K){t.CHM(F);const _e=t.oxw(2);return t.KtG(_e.groupInGridChange(K))}),t.TgZ(2,"div",12),t.YNc(3,x,2,2,"div",13),t.YNc(4,D,3,5,"div",14),t.qZA()(),t.BQk()}if(2&A){const F=t.oxw(2);t.xp6(3),t.Q6J("ngIf",F.ui.checkAll),t.xp6(1),t.Q6J("ngForOf",F.data)}}function P(A,k){if(1&A&&(t.ynx(0),t.YNc(1,y,3,2,"ng-container",2),t.YNc(2,_,5,2,"ng-container",2),t.BQk()),2&A){const F=t.oxw();t.xp6(1),t.Q6J("ngIf",0===F.grid_span),t.xp6(1),t.Q6J("ngIf",0!==F.grid_span)}}let O=(()=>{class A extends n.$j{constructor(){super(...arguments),this.data=[],this.allChecked=!1,this.indeterminate=!1,this.labelTitle="",this.inited=!1}reset(F){this.inited=!1,(0,e.Yu)(this.schema,this.ui,F).subscribe(W=>{this.data=W,this.allChecked=!1,this.indeterminate=!1,this.labelTitle=0===W.length?"":this.schema.title;const{span:K}=this.ui;this.grid_span=K&&K>0?K:0,this.updateAllChecked(),this.inited=!0,this.detectChanges()})}_setValue(F){this.setValue(F),this.detectChanges(),this.notifyChange(F)}notifySet(){const F=this.data.filter(W=>W.checked);this.updateAllChecked().setValue(F.map(W=>W.value)),this.notifyChange(F)}groupInGridChange(F){this.data.forEach(W=>W.checked=-1!==F.indexOf(W.value)),this.notifySet()}onAllChecked(){this.data.forEach(F=>F.checked=this.allChecked),this.notifySet()}updateAllChecked(){return this.data.every(F=>!0!==F.checked)?(this.allChecked=!1,this.indeterminate=!1):this.data.every(F=>!0===F.checked)?(this.allChecked=!0,this.indeterminate=!1):this.indeterminate=!0,this.detectChanges(),this}notifyChange(F){this.ui.change&&this.ui.change(F)}static#e=this.\u0275fac=function(){let F;return function(K){return(F||(F=t.n5z(A)))(K||A)}}();static#t=this.\u0275cmp=t.Xpm({type:A,selectors:[["sf-checkbox"]],features:[t.qOj],decls:5,vars:9,consts:[["all",""],[3,"id","schema","ui","showError","error","showTitle","title"],[4,"ngIf"],["nz-checkbox","","class","sf__checkbox-all mr-sm",3,"ngModel","nzIndeterminate","ngModelChange",4,"ngIf"],["nz-checkbox","",1,"sf__checkbox-all","mr-sm",3,"ngModel","nzIndeterminate","ngModelChange"],["nz-checkbox","",3,"nzDisabled","ngModel","ngModelChange"],[1,"sf__optional"],["nz-tooltip","","nz-icon","",3,"nzTooltipTitle","nzTooltipPlacement","nzTooltipTrigger","nzTooltipOverlayClassName","nzTooltipOverlayStyle","nzTooltipMouseEnterDelay","nzTooltipMouseLeaveDelay","nzType",4,"ngIf"],["nz-tooltip","","nz-icon","",3,"nzTooltipTitle","nzTooltipPlacement","nzTooltipTrigger","nzTooltipOverlayClassName","nzTooltipOverlayStyle","nzTooltipMouseEnterDelay","nzTooltipMouseLeaveDelay","nzType"],[3,"ngTemplateOutlet"],[3,"ngModel","ngModelChange"],[1,"sf__checkbox-list",3,"nzOnChange"],["nz-row",""],["nz-col","",3,"nzSpan",4,"ngIf"],["nz-col","",3,"nzSpan",4,"ngFor","ngForOf"],["nz-col","",3,"nzSpan"],["nz-checkbox","",3,"nzValue","ngModel","nzDisabled"]],template:function(W,K){1&W&&(t.YNc(0,g,1,1,"ng-template",null,0,t.W1O),t.TgZ(2,"sf-item-wrap",1),t.YNc(3,p,6,5,"ng-container",2),t.YNc(4,P,3,2,"ng-container",2),t.qZA()),2&W&&(t.xp6(2),t.Q6J("id",K.id)("schema",K.schema)("ui",K.ui)("showError",K.showError)("error",K.error)("showTitle",!0)("title",K.labelTitle),t.xp6(1),t.Q6J("ngIf",K.inited&&0===K.data.length),t.xp6(1),t.Q6J("ngIf",K.inited&&K.data.length>0))},dependencies:[i.sg,i.O5,i.tP,l.JJ,l.On,C.w,E.Ie,E.ub,E.EZ,u.t3,u.SK,z.Ls,M.SY,h.i],encapsulation:2})}return A})()},29993:(nt,I,o)=>{"use strict";o.d(I,{k:()=>E});var e=o(98498),n=o(65879),t=o(96814),i=o(93355);function l(u,z){}const C=function(u,z,M){return{$implicit:u,schema:z,ui:M}};let E=(()=>{class u extends e.$j{static#e=this.\u0275fac=function(){let M;return function(v){return(M||(M=n.n5z(u)))(v||u)}}();static#t=this.\u0275cmp=n.Xpm({type:u,selectors:[["sf-custom"]],features:[n.qOj],decls:2,vars:12,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(h,v){1&h&&(n.TgZ(0,"sf-item-wrap",0),n.YNc(1,l,0,0,"ng-template",1),n.qZA()),2&h&&(n.Q6J("id",v.id)("schema",v.schema)("ui",v.ui)("showError",v.showError)("error",v.error)("showTitle",v.schema.title),n.xp6(1),n.Q6J("ngTemplateOutlet",v.ui._render)("ngTemplateOutletContext",n.kEZ(8,C,v,v.schema,v.ui)))},dependencies:[t.tP,i.i],encapsulation:2})}return u})()},58435:(nt,I,o)=>{"use strict";o.d(I,{g:()=>i});var e=o(60699),n=o(65879),t=o(47535);let i=(()=>{class l{constructor(E,u){this.templateRef=E,this.table=u}ngOnInit(){this.table._addTpl(this.path.startsWith(e.j)?this.path:e.j+this.path,this.templateRef)}static#e=this.\u0275fac=function(u){return new(u||l)(n.Y36(n.Rgc),n.Y36(t.k))};static#t=this.\u0275dir=n.lG2({type:l,selectors:[["","sf-template",""]],inputs:{path:["sf-template","path"]}})}return l})()},80650:(nt,I,o)=>{"use strict";o.d(I,{v:()=>p});var e=o(89207),n=o(60325),t=o(92219),i=o(98498),l=o(65879),C=o(96814),E=o(60095),u=o(52682),z=o(93355);function M(f,y){if(1&f){const T=l.EpF();l.TgZ(0,"nz-year-picker",6),l.NdJ("ngModelChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_.displayValue=D)})("ngModelChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_._change(D))})("nzOnOpenChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_._openChange(D))}),l.qZA()}if(2&f){const T=l.oxw();l.Q6J("nzId",T.id)("nzDisabled",T.disabled)("nzSize",T.ui.size)("nzFormat",T.displayFormat)("ngModel",T.displayValue)("nzAllowClear",T.i.allowClear)("ngClass",T.ui.className)("nzDisabledDate",T.ui.disabledDate)("nzLocale",T.ui.locale)("nzPlaceHolder",T.ui.placeholder)("nzPopupStyle",T.ui.popupStyle)("nzDropdownClassName",T.ui.dropdownClassName)("nzRenderExtraFooter",T.ui.renderExtraFooter)("nzInputReadOnly",T.ui.inputReadOnly)("nzInline",T.ui.inline)}}function h(f,y){if(1&f){const T=l.EpF();l.TgZ(0,"nz-month-picker",6),l.NdJ("ngModelChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_.displayValue=D)})("ngModelChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_._change(D))})("nzOnOpenChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_._openChange(D))}),l.qZA()}if(2&f){const T=l.oxw();l.Q6J("nzId",T.id)("nzDisabled",T.disabled)("nzSize",T.ui.size)("nzFormat",T.displayFormat)("ngModel",T.displayValue)("nzAllowClear",T.i.allowClear)("ngClass",T.ui.className)("nzDisabledDate",T.ui.disabledDate)("nzLocale",T.ui.locale)("nzPlaceHolder",T.ui.placeholder)("nzPopupStyle",T.ui.popupStyle)("nzDropdownClassName",T.ui.dropdownClassName)("nzRenderExtraFooter",T.ui.renderExtraFooter)("nzInputReadOnly",T.ui.inputReadOnly)("nzInline",T.ui.inline)}}function v(f,y){if(1&f){const T=l.EpF();l.TgZ(0,"nz-week-picker",7),l.NdJ("ngModelChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_.displayValue=D)})("ngModelChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_._change(D))})("nzOnOpenChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_._openChange(D))}),l.qZA()}if(2&f){const T=l.oxw();l.Q6J("nzId",T.id)("nzDisabled",T.disabled)("nzSize",T.ui.size)("nzFormat",T.displayFormat)("ngModel",T.displayValue)("nzAllowClear",T.i.allowClear)("ngClass",T.ui.className)("nzDisabledDate",T.ui.disabledDate)("nzLocale",T.ui.locale)("nzPlaceHolder",T.ui.placeholder)("nzPopupStyle",T.ui.popupStyle)("nzDropdownClassName",T.ui.dropdownClassName)("nzInputReadOnly",T.ui.inputReadOnly)("nzInline",T.ui.inline)}}function g(f,y){if(1&f){const T=l.EpF();l.TgZ(0,"nz-range-picker",8),l.NdJ("ngModelChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_.displayValue=D)})("ngModelChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_._change(D))})("nzOnOpenChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_._openChange(D))})("nzOnOk",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_._ok(D))}),l.qZA()}if(2&f){const T=l.oxw();l.Q6J("nzId",T.id)("nzDisabled",T.disabled)("nzSize",T.ui.size)("nzFormat",T.displayFormat)("ngModel",T.displayValue)("nzAllowClear",T.i.allowClear)("ngClass",T.ui.className)("nzDisabledDate",T.ui.disabledDate)("nzLocale",T.ui.locale)("nzPlaceHolder",T.ui.placeholder)("nzPopupStyle",T.ui.popupStyle)("nzDropdownClassName",T.ui.dropdownClassName)("nzDisabledTime",T.ui.disabledTime)("nzRenderExtraFooter",T.ui.renderExtraFooter)("nzRanges",T.ui.ranges)("nzShowTime",T.ui.showTime)("nzSeparator",T.ui.separator)("nzShowWeekNumber",T.ui.showWeekNumber||!1)("nzMode",T.ui.rangeMode)("nzInputReadOnly",T.ui.inputReadOnly)("nzInline",T.ui.inline)}}function d(f,y){if(1&f){const T=l.EpF();l.TgZ(0,"nz-date-picker",9),l.NdJ("ngModelChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_.displayValue=D)})("ngModelChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_._change(D))})("nzOnOpenChange",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_._openChange(D))})("nzOnOk",function(D){l.CHM(T);const _=l.oxw();return l.KtG(_._ok(D))}),l.qZA()}if(2&f){const T=l.oxw();l.Q6J("nzId",T.id)("nzDisabled",T.disabled)("nzSize",T.ui.size)("nzFormat",T.displayFormat)("ngModel",T.displayValue)("nzAllowClear",T.i.allowClear)("ngClass",T.ui.className)("nzDisabledDate",T.ui.disabledDate)("nzLocale",T.ui.locale)("nzPlaceHolder",T.ui.placeholder)("nzPopupStyle",T.ui.popupStyle)("nzDropdownClassName",T.ui.dropdownClassName)("nzDisabledTime",T.ui.disabledTime)("nzRenderExtraFooter",T.ui.renderExtraFooter)("nzShowTime",T.ui.showTime)("nzShowToday",T.i.showToday)("nzShowWeekNumber",T.ui.showWeekNumber||!1)("nzInputReadOnly",T.ui.inputReadOnly)("nzInline",T.ui.inline)}}let p=(()=>{class f extends i.$j{constructor(){super(...arguments),this.flatRange=!1,this.displayValue=null}ngOnInit(){const{mode:T,end:x,displayFormat:D,allowClear:_,showToday:P}=this.ui;if(this.mode=T||"date",this.flatRange=null!=x,this.startFormat=this.ui._format,this.flatRange){this.mode="range";const O=this.endProperty.ui;this.endFormat=O.format?O._format:this.startFormat}if(D)this.displayFormat=D;else switch(this.mode){case"year":this.displayFormat="yyyy";break;case"month":this.displayFormat="yyyy-MM";break;case"week":this.displayFormat="yyyy-ww"}this.i={allowClear:(0,t.AM)(_,!0),showToday:(0,t.AM)(P,!0)}}reset(T){const x={formatString:this.startFormat,defaultValue:null};if(T=Array.isArray(T)?T.map(D=>(0,n.ZU)(D,x)):(0,n.ZU)(T,x),this.flatRange){const D=(0,n.ZU)(this.endProperty.formData,{formatString:this.endFormat||this.startFormat,defaultValue:null});this.displayValue=null==T||null==D?[]:[T,D]}else this.displayValue=T;this.detectChanges(),this.displayValue&&setTimeout(()=>this._change(this.displayValue,!1))}_change(T,x=!0){if(x&&this.ui.change&&this.ui.change(T),null==T||Array.isArray(T)&&T.length<2)return this.setValue(null),void this.setEnd(null);const D=Array.isArray(T)?[(0,e.Z)(T[0],this.startFormat),(0,e.Z)(T[1],this.endFormat||this.startFormat)]:(0,e.Z)(T,this.startFormat);this.flatRange?(this.setValue(D[0]),this.setEnd(D[1])):this.setValue(D)}_openChange(T){this.ui.onOpenChange&&this.ui.onOpenChange(T)}_ok(T){this.ui.onOk&&this.ui.onOk(T)}get endProperty(){return this.formProperty.parent.properties[this.ui.end]}setEnd(T){this.flatRange&&(this.endProperty.setValue(T,!0),this.endProperty.updateValueAndValidity())}static#e=this.\u0275fac=function(){let T;return function(D){return(T||(T=l.n5z(f)))(D||f)}}();static#t=this.\u0275cmp=l.Xpm({type:f,selectors:[["sf-date"]],features:[l.qOj],decls:7,vars:11,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"ngSwitch"],[3,"nzId","nzDisabled","nzSize","nzFormat","ngModel","nzAllowClear","ngClass","nzDisabledDate","nzLocale","nzPlaceHolder","nzPopupStyle","nzDropdownClassName","nzRenderExtraFooter","nzInputReadOnly","nzInline","ngModelChange","nzOnOpenChange",4,"ngSwitchCase"],[3,"nzId","nzDisabled","nzSize","nzFormat","ngModel","nzAllowClear","ngClass","nzDisabledDate","nzLocale","nzPlaceHolder","nzPopupStyle","nzDropdownClassName","nzInputReadOnly","nzInline","ngModelChange","nzOnOpenChange",4,"ngSwitchCase"],[3,"nzId","nzDisabled","nzSize","nzFormat","ngModel","nzAllowClear","ngClass","nzDisabledDate","nzLocale","nzPlaceHolder","nzPopupStyle","nzDropdownClassName","nzDisabledTime","nzRenderExtraFooter","nzRanges","nzShowTime","nzSeparator","nzShowWeekNumber","nzMode","nzInputReadOnly","nzInline","ngModelChange","nzOnOpenChange","nzOnOk",4,"ngSwitchCase"],[3,"nzId","nzDisabled","nzSize","nzFormat","ngModel","nzAllowClear","ngClass","nzDisabledDate","nzLocale","nzPlaceHolder","nzPopupStyle","nzDropdownClassName","nzDisabledTime","nzRenderExtraFooter","nzShowTime","nzShowToday","nzShowWeekNumber","nzInputReadOnly","nzInline","ngModelChange","nzOnOpenChange","nzOnOk",4,"ngSwitchDefault"],[3,"nzId","nzDisabled","nzSize","nzFormat","ngModel","nzAllowClear","ngClass","nzDisabledDate","nzLocale","nzPlaceHolder","nzPopupStyle","nzDropdownClassName","nzRenderExtraFooter","nzInputReadOnly","nzInline","ngModelChange","nzOnOpenChange"],[3,"nzId","nzDisabled","nzSize","nzFormat","ngModel","nzAllowClear","ngClass","nzDisabledDate","nzLocale","nzPlaceHolder","nzPopupStyle","nzDropdownClassName","nzInputReadOnly","nzInline","ngModelChange","nzOnOpenChange"],[3,"nzId","nzDisabled","nzSize","nzFormat","ngModel","nzAllowClear","ngClass","nzDisabledDate","nzLocale","nzPlaceHolder","nzPopupStyle","nzDropdownClassName","nzDisabledTime","nzRenderExtraFooter","nzRanges","nzShowTime","nzSeparator","nzShowWeekNumber","nzMode","nzInputReadOnly","nzInline","ngModelChange","nzOnOpenChange","nzOnOk"],[3,"nzId","nzDisabled","nzSize","nzFormat","ngModel","nzAllowClear","ngClass","nzDisabledDate","nzLocale","nzPlaceHolder","nzPopupStyle","nzDropdownClassName","nzDisabledTime","nzRenderExtraFooter","nzShowTime","nzShowToday","nzShowWeekNumber","nzInputReadOnly","nzInline","ngModelChange","nzOnOpenChange","nzOnOk"]],template:function(x,D){1&x&&(l.TgZ(0,"sf-item-wrap",0),l.ynx(1,1),l.YNc(2,M,1,15,"nz-year-picker",2),l.YNc(3,h,1,15,"nz-month-picker",2),l.YNc(4,v,1,14,"nz-week-picker",3),l.YNc(5,g,1,21,"nz-range-picker",4),l.YNc(6,d,1,19,"nz-date-picker",5),l.BQk(),l.qZA()),2&x&&(l.Q6J("id",D.id)("schema",D.schema)("ui",D.ui)("showError",D.showError)("error",D.error)("showTitle",D.schema.title),l.xp6(1),l.Q6J("ngSwitch",D.mode),l.xp6(1),l.Q6J("ngSwitchCase","year"),l.xp6(1),l.Q6J("ngSwitchCase","month"),l.xp6(1),l.Q6J("ngSwitchCase","week"),l.xp6(1),l.Q6J("ngSwitchCase","range"))},dependencies:[C.mk,C.RF,C.n9,C.ED,E.JJ,E.On,u.uw,u.wS,u.Xv,u.Mq,u.mr,z.i],encapsulation:2})}return f})()},84971:(nt,I,o)=>{"use strict";o.d(I,{P:()=>d});var e=o(99397),n=o(37398),t=o(92219),i=o(98498),l=o(65879),C=o(96814),E=o(60095),u=o(20824),z=o(36513),M=o(93355);const h=["mentions"];function v(p,f){if(1&p){const y=l.EpF();l.TgZ(0,"input",5),l.NdJ("ngModelChange",function(x){l.CHM(y);const D=l.oxw();return l.KtG(D.setValue(x))}),l.qZA()}if(2&p){const y=l.oxw();l.Q6J("disabled",y.disabled)("nzSize",y.ui.size)("ngModel",y.value),l.uIk("id",y.id)("disabled",y.disabled)("maxLength",y.schema.maxLength||null)("placeholder",y.ui.placeholder)}}function g(p,f){if(1&p){const y=l.EpF();l.TgZ(0,"textarea",6),l.NdJ("ngModelChange",function(x){l.CHM(y);const D=l.oxw();return l.KtG(D.setValue(x))}),l._uU(1," "),l.qZA()}if(2&p){const y=l.oxw();l.Q6J("disabled",y.disabled)("nzSize",y.ui.size)("ngModel",y.value)("nzAutosize",y.i.autosize),l.uIk("id",y.id)("disabled",y.disabled)("maxLength",y.schema.maxLength||null)("placeholder",y.ui.placeholder)}}let d=(()=>{class p extends i.$j{constructor(){super(...arguments),this.data=[],this.loading=!1}ngOnInit(){const{valueWith:y,notFoundContent:T,placement:x,prefix:D,autosize:_}=this.ui;this.i={valueWith:y||(F=>F.label),notFoundContent:T||"\u65e0\u5339\u914d\u7ed3\u679c\uff0c\u8f7b\u6572\u7a7a\u683c\u5b8c\u6210\u8f93\u5165",placement:x||"bottom",prefix:D||"@",autosize:typeof _>"u"||this.ui.autosize};const{minimum:P,maximum:O}=this.schema,A=typeof P<"u"?P:-1,k=typeof O<"u"?O:-1;!this.ui.validator&&(-1!==A||-1!==k)&&(this.ui.validator=()=>{const F=this.mentionChild.getMentions().length;return-1!==A&&Fk?[{keyword:"mention",message:`\u6700\u591a\u63d0\u53ca ${k} \u6b21`}]:null})}reset(y){(0,t.Yu)(this.schema,this.ui,null).subscribe(T=>{this.data=T,this.detectChanges()})}_select(y){this.ui.select&&this.ui.select(y)}_search(y){"function"==typeof this.ui.loadData&&(this.loading=!0,this.ui.loadData(y).pipe((0,e.b)(()=>this.loading=!1),(0,n.U)(T=>(0,t.vn)(T,null,this.schema.readOnly))).subscribe(T=>{this.data=T,this.detectChanges(!0)}))}static#e=this.\u0275fac=function(){let y;return function(x){return(y||(y=l.n5z(p)))(x||p)}}();static#t=this.\u0275cmp=l.Xpm({type:p,selectors:[["sf-mention"]],viewQuery:function(T,x){if(1&T&&l.Gf(h,7),2&T){let D;l.iGM(D=l.CRH())&&(x.mentionChild=D.first)}},features:[l.qOj],decls:5,vars:14,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"nzSuggestions","nzValueWith","nzLoading","nzNotFoundContent","nzPlacement","nzPrefix","nzOnSelect","nzOnSearchChange"],["mentions",""],["nzMentionTrigger","","nz-input","","autocomplete","off",3,"disabled","nzSize","ngModel","ngModelChange",4,"ngIf"],["nzMentionTrigger","","nz-input","",3,"disabled","nzSize","ngModel","nzAutosize","ngModelChange",4,"ngIf"],["nzMentionTrigger","","nz-input","","autocomplete","off",3,"disabled","nzSize","ngModel","ngModelChange"],["nzMentionTrigger","","nz-input","",3,"disabled","nzSize","ngModel","nzAutosize","ngModelChange"]],template:function(T,x){1&T&&(l.TgZ(0,"sf-item-wrap",0)(1,"nz-mention",1,2),l.NdJ("nzOnSelect",function(_){return x._select(_)})("nzOnSearchChange",function(_){return x._search(_)}),l.YNc(3,v,1,7,"input",3),l.YNc(4,g,2,8,"textarea",4),l.qZA()()),2&T&&(l.Q6J("id",x.id)("schema",x.schema)("ui",x.ui)("showError",x.showError)("error",x.error)("showTitle",x.schema.title),l.xp6(1),l.Q6J("nzSuggestions",x.data)("nzValueWith",x.i.valueWith)("nzLoading",x.loading)("nzNotFoundContent",x.i.notFoundContent)("nzPlacement",x.i.placement)("nzPrefix",x.i.prefix),l.xp6(2),l.Q6J("ngIf","textarea"!==x.ui.inputStyle),l.xp6(1),l.Q6J("ngIf","textarea"===x.ui.inputStyle))},dependencies:[C.O5,E.Fj,E.JJ,E.On,u.Zp,u.rh,z.YW,z.jO,M.i],encapsulation:2})}return p})()},87817:(nt,I,o)=>{"use strict";o.d(I,{L:()=>u});var e=o(98498),n=o(65879),t=o(96814),i=o(60095),l=o(68373),C=o(93355);const E=function(z){return{"ant-input-number__hide-step":z}};let u=(()=>{class z extends e.$j{constructor(){super(...arguments),this.formatter=h=>h,this.parser=h=>h,this.width=""}ngOnInit(){const{minimum:h,exclusiveMinimum:v,maximum:g,exclusiveMaximum:d,multipleOf:p,type:f}=this.schema;this.step=p||1,typeof h<"u"&&(this.min=v?h+this.step:h),typeof g<"u"&&(this.max=d?g-this.step:g),"integer"===f&&(this.min=Math.trunc(this.min),this.max=Math.trunc(this.max),this.step=Math.trunc(this.step));const y=this.ui;null!=y.prefix&&(y.formatter=T=>null==T?"":`${y.prefix} ${T}`,y.parser=T=>T.replace(`${y.prefix} `,"")),null!=y.unit&&(y.formatter=T=>null==T?"":`${T} ${y.unit}`,y.parser=T=>T.replace(` ${y.unit}`,"")),y.formatter&&(this.formatter=y.formatter),y.parser&&(this.parser=y.parser),this.width="number"==typeof y.widgetWidth?`${y.widgetWidth}px`:y.widgetWidth??"90px"}_setValue(h){this.setValue("integer"===this.schema.type?Math.floor(h):h),this.ui.change&&this.ui.change(this.value)}static#e=this.\u0275fac=function(){let h;return function(g){return(h||(h=n.n5z(z)))(g||z)}}();static#t=this.\u0275cmp=n.Xpm({type:z,selectors:[["sf-number"]],features:[n.qOj],decls:2,vars:22,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"nzId","ngModel","nzDisabled","nzSize","nzMin","nzMax","nzStep","nzFormatter","nzParser","nzPrecision","nzPlaceHolder","ngClass","ngModelChange"]],template:function(v,g){1&v&&(n.TgZ(0,"sf-item-wrap",0)(1,"nz-input-number",1),n.NdJ("ngModelChange",function(p){return g._setValue(p)}),n.qZA()()),2&v&&(n.Q6J("id",g.id)("schema",g.schema)("ui",g.ui)("showError",g.showError)("error",g.error)("showTitle",g.schema.title),n.xp6(1),n.Udp("width",g.width),n.Q6J("nzId",g.id)("ngModel",g.value)("nzDisabled",g.disabled)("nzSize",g.ui.size)("nzMin",g.min)("nzMax",g.max)("nzStep",g.step)("nzFormatter",g.formatter)("nzParser",g.parser)("nzPrecision",g.ui.precision)("nzPlaceHolder",g.ui.placeholder||"")("ngClass",n.VKq(20,E,g.ui.hideStep)))},dependencies:[t.mk,i.JJ,i.On,l._V,C.i],encapsulation:2})}return z})()},36304:(nt,I,o)=>{"use strict";o.d(I,{C:()=>A});var e=o(84212),n=o(86918),t=o(38140),i=o(40712),l=o(98685),C=o(29993),E=o(80650),u=o(84971),z=o(87817),M=o(26557),h=o(74896),v=o(21933),g=o(28957),d=o(72188),p=o(55900),f=o(52569),y=o(98350),T=o(53250),x=o(45858),D=o(55986),_=o(28448),P=o(70410),O=o(48480);class A extends O.B{constructor(){super(),this.register("object",M.b),this.register("array",e.L),this.register("text",y.y),this.register("string",p.L),this.register("number",z.L),this.register("integer",z.L),this.register("date",E.v),this.register("time",x.N),this.register("radio",h.b),this.register("checkbox",l.O),this.register("boolean",t.H),this.register("textarea",T._),this.register("select",g.u),this.register("tree-select",_.f),this.register("tag",f.o),this.register("upload",P.c),this.register("transfer",D.v),this.register("slider",d.B),this.register("rate",v.g),this.register("autocomplete",n.N),this.register("cascader",i.M),this.register("mention",u.P),this.register("custom",C.k),this.setDefault(p.L)}}},26557:(nt,I,o)=>{"use strict";o.d(I,{b:()=>_e});var e=o(33802),n=o(92219),t=o(98498),i=o(65879),l=o(96814),C=o(70855),E=o(82962),u=o(10095),z=o(90551),M=o(96109),h=o(33182),v=o(1202);function g(Y,G){if(1&Y&&(i.TgZ(0,"div",5),i._uU(1),i.qZA()),2&Y){const H=i.oxw(2);i.xp6(1),i.Oqu(H.title)}}function d(Y,G){if(1&Y&&(i.ynx(0),i.TgZ(1,"div",9),i._UZ(2,"sf-item",10),i.qZA(),i.BQk()),2&Y){const H=i.oxw().$implicit;i.xp6(1),i.Q6J("nzSpan",H.grid.span)("nzOffset",H.grid.offset)("nzXs",H.grid.xs)("nzSm",H.grid.sm)("nzMd",H.grid.md)("nzLg",H.grid.lg)("nzXl",H.grid.xl)("nzXXl",H.grid.xxl),i.xp6(1),i.Q6J("formProperty",H.property)("fixed-label",H.spanLabelFixed)}}function p(Y,G){if(1&Y&&(i.ynx(0),i.YNc(1,d,3,10,"ng-container",8),i.BQk()),2&Y){const H=G.$implicit;i.xp6(1),i.Q6J("ngIf",H.property.visible&&H.show)}}function f(Y,G){if(1&Y&&(i.ynx(0),i.TgZ(1,"div",6),i.YNc(2,p,2,1,"ng-container",7),i.qZA(),i.BQk()),2&Y){const H=i.oxw(2);i.xp6(1),i.Q6J("nzGutter",H.grid.gutter),i.xp6(1),i.Q6J("ngForOf",H.list)}}function y(Y,G){if(1&Y&&(i.ynx(0),i._UZ(1,"sf-item",10),i.BQk()),2&Y){const H=i.oxw().$implicit;i.xp6(1),i.Q6J("formProperty",H.property)("fixed-label",H.spanLabelFixed)}}function T(Y,G){if(1&Y&&(i.ynx(0),i.YNc(1,y,2,2,"ng-container",8),i.BQk()),2&Y){const H=G.$implicit;i.xp6(1),i.Q6J("ngIf",H.property.visible&&H.show)}}function x(Y,G){if(1&Y&&i.YNc(0,T,2,1,"ng-container",7),2&Y){const H=i.oxw(2);i.Q6J("ngForOf",H.list)}}function D(Y,G){if(1&Y&&(i.YNc(0,g,2,1,"div",2),i.YNc(1,f,3,2,"ng-container",3),i.YNc(2,x,1,1,"ng-template",null,4,i.W1O)),2&Y){const H=G.$implicit,j=i.MAs(3),te=i.oxw();i.Q6J("ngIf",!H&&te.title),i.xp6(1),i.Q6J("ngIf",te.grid)("ngIfElse",j)}}function _(Y,G){if(1&Y&&i._UZ(0,"i",17),2&Y){const H=i.oxw(3);i.Q6J("nzType",H.expand?"down":"up")}}function P(Y,G){if(1&Y&&i._UZ(0,"i",20),2&Y){const H=i.oxw(4);i.Q6J("nzTooltipTitle",H.oh.text)("nzTooltipPlacement",H.oh.placement)("nzTooltipTrigger",H.oh.trigger)("nzTooltipColor",H.oh.bgColor)("nzTooltipOverlayClassName",H.oh.overlayClassName)("nzTooltipOverlayStyle",H.oh.overlayStyle)("nzTooltipMouseEnterDelay",H.oh.mouseEnterDelay)("nzTooltipMouseLeaveDelay",H.oh.mouseLeaveDelay)("nzType",H.oh.icon)}}function O(Y,G){if(1&Y&&(i.TgZ(0,"span",18),i._uU(1),i.YNc(2,P,1,9,"i",19),i.qZA()),2&Y){const H=i.oxw(3);i.xp6(1),i.hij(" ",H.ui.optional," "),i.xp6(1),i.Q6J("ngIf",H.oh)}}function A(Y,G){if(1&Y){const H=i.EpF();i.TgZ(0,"div",14),i.NdJ("click",function(){i.CHM(H);const te=i.oxw(2);return i.KtG(te.changeExpand())}),i.YNc(1,_,1,1,"i",15),i._uU(2),i.YNc(3,O,3,2,"span",16),i.qZA()}if(2&Y){const H=i.oxw(2);i.ekj("point",H.showExpand),i.xp6(1),i.Q6J("ngIf",H.showExpand),i.xp6(1),i.hij(" ",H.title," "),i.xp6(1),i.Q6J("ngIf",H.ui.optional||H.oh)}}function k(Y,G){}const F=function(){return[]},W=function(){return{$implicit:!0}};function K(Y,G){if(1&Y&&(i.TgZ(0,"nz-card",11),i.YNc(1,A,4,5,"ng-template",null,12,i.W1O),i.YNc(3,k,0,0,"ng-template",13),i.qZA()),2&Y){const H=i.MAs(2),j=i.oxw(),te=i.MAs(1);i.ekj("sf__object-card-fold",!j.expand),i.Q6J("nzTitle",H)("nzExtra",j.ui.cardExtra)("nzSize",j.ui.cardSize||"small")("nzActions",j.ui.cardActions||i.DdM(11,F))("nzBodyStyle",j.ui.cardBodyStyle)("nzBordered",j.ui.cardBordered||!0)("nzBorderless",j.ui.cardBorderless||!1),i.xp6(3),i.Q6J("ngTemplateOutlet",te)("ngTemplateOutletContext",i.DdM(12,W))}}let _e=(()=>{class Y extends t.VV{constructor(){super(...arguments),this.type="default",this.list=[],this.showExpand=!0,this.expand=!0}ngOnInit(){const{formProperty:H,ui:j}=this,{grid:te,showTitle:ne,type:pe}=j;this.showExpand=(0,n.AM)(j.showExpand,!0),this.expand=(0,n.AM)(j.expand,!0),this.type=pe??"default",("card"===this.type||!H.isRoot()&&!(H.parent instanceof e.K)&&!0===ne)&&(this.title=this.schema.title),this.grid=te;const re=[];for(const be of H.propertiesId){const le=H.properties[be];re.push({property:le,grid:le.ui.grid||te||{},spanLabelFixed:le.ui.spanLabelFixed,show:!1===le.ui.hidden})}this.list=re}changeExpand(){this.showExpand&&(this.expand=!this.expand,this.detectChanges(!0))}static#e=this.\u0275fac=function(){let H;return function(te){return(H||(H=i.n5z(Y)))(te||Y)}}();static#t=this.\u0275cmp=i.Xpm({type:Y,selectors:[["sf-object"]],features:[i.qOj],decls:3,vars:2,consts:[["default",""],["class","sf__object-card",3,"nzTitle","nzExtra","nzSize","nzActions","nzBodyStyle","nzBordered","nzBorderless","sf__object-card-fold",4,"ngIf","ngIfElse"],["class","sf__title",4,"ngIf"],[4,"ngIf","ngIfElse"],["noGrid",""],[1,"sf__title"],["nz-row","",3,"nzGutter"],[4,"ngFor","ngForOf"],[4,"ngIf"],["nz-col","",3,"nzSpan","nzOffset","nzXs","nzSm","nzMd","nzLg","nzXl","nzXXl"],[3,"formProperty","fixed-label"],[1,"sf__object-card",3,"nzTitle","nzExtra","nzSize","nzActions","nzBodyStyle","nzBordered","nzBorderless"],["cardTitleTpl",""],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"click"],["nz-icon","","class","mr-xs text-xs",3,"nzType",4,"ngIf"],["class","sf__optional",4,"ngIf"],["nz-icon","",1,"mr-xs","text-xs",3,"nzType"],[1,"sf__optional"],["nz-tooltip","","nz-icon","",3,"nzTooltipTitle","nzTooltipPlacement","nzTooltipTrigger","nzTooltipColor","nzTooltipOverlayClassName","nzTooltipOverlayStyle","nzTooltipMouseEnterDelay","nzTooltipMouseLeaveDelay","nzType",4,"ngIf"],["nz-tooltip","","nz-icon","",3,"nzTooltipTitle","nzTooltipPlacement","nzTooltipTrigger","nzTooltipColor","nzTooltipOverlayClassName","nzTooltipOverlayStyle","nzTooltipMouseEnterDelay","nzTooltipMouseLeaveDelay","nzType"]],template:function(j,te){if(1&j&&(i.YNc(0,D,4,3,"ng-template",null,0,i.W1O),i.YNc(2,K,4,13,"nz-card",1)),2&j){const ne=i.MAs(1);i.xp6(2),i.Q6J("ngIf","card"===te.type)("ngIfElse",ne)}},dependencies:[l.sg,l.O5,l.tP,C.w,E.bd,u.t3,u.SK,z.Ls,M.SY,h.S,v.h],encapsulation:2})}return Y})()},74896:(nt,I,o)=>{"use strict";o.d(I,{b:()=>v});var e=o(92219),n=o(98498),t=o(65879),i=o(96814),l=o(60095),C=o(57907),E=o(93355);function u(g,d){if(1&g&&(t.TgZ(0,"label",4),t._UZ(1,"span",5),t.qZA()),2&g){const p=d.$implicit,f=t.oxw(2);t.Q6J("nzValue",p.value)("nzDisabled",f.disabled||p.disabled),t.xp6(1),t.Q6J("innerHTML",p.label,t.oJD)}}function z(g,d){if(1&g&&(t.ynx(0),t.YNc(1,u,2,3,"label",3),t.BQk()),2&g){const p=t.oxw();t.xp6(1),t.Q6J("ngForOf",p.data)}}function M(g,d){if(1&g&&(t.TgZ(0,"label",7),t._UZ(1,"span",5),t.qZA()),2&g){const p=d.$implicit,f=t.oxw(2);t.Q6J("nzValue",p.value)("nzDisabled",f.disabled||p.disabled),t.xp6(1),t.Q6J("innerHTML",p.label,t.oJD)}}function h(g,d){if(1&g&&(t.ynx(0),t.YNc(1,M,2,3,"label",6),t.BQk()),2&g){const p=t.oxw();t.xp6(1),t.Q6J("ngForOf",p.data)}}let v=(()=>{class g extends n.$j{constructor(){super(...arguments),this.data=[]}reset(p){this.styleType="default"===(this.ui.styleType||"default"),(0,e.Yu)(this.schema,this.ui,p).subscribe(f=>{this.data=f,this.detectChanges()})}_setValue(p){this.setValue(p),this.ui.change&&this.ui.change(p)}static#e=this.\u0275fac=function(){let p;return function(y){return(p||(p=t.n5z(g)))(y||g)}}();static#t=this.\u0275cmp=t.Xpm({type:g,selectors:[["sf-radio"]],features:[t.qOj],decls:4,vars:12,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"nzSize","nzName","ngModel","nzButtonStyle","ngModelChange"],[4,"ngIf"],["nz-radio","",3,"nzValue","nzDisabled",4,"ngFor","ngForOf"],["nz-radio","",3,"nzValue","nzDisabled"],[3,"innerHTML"],["nz-radio-button","",3,"nzValue","nzDisabled",4,"ngFor","ngForOf"],["nz-radio-button","",3,"nzValue","nzDisabled"]],template:function(f,y){1&f&&(t.TgZ(0,"sf-item-wrap",0)(1,"nz-radio-group",1),t.NdJ("ngModelChange",function(x){return y._setValue(x)}),t.YNc(2,z,2,1,"ng-container",2),t.YNc(3,h,2,1,"ng-container",2),t.qZA()()),2&f&&(t.Q6J("id",y.id)("schema",y.schema)("ui",y.ui)("showError",y.showError)("error",y.error)("showTitle",y.schema.title),t.xp6(1),t.Q6J("nzSize",y.ui.size)("nzName",y.id)("ngModel",y.value)("nzButtonStyle",y.ui.buttonStyle||"outline"),t.xp6(1),t.Q6J("ngIf",y.styleType),t.xp6(1),t.Q6J("ngIf",!y.styleType))},dependencies:[i.sg,i.O5,l.JJ,l.On,C.Of,C.Bq,C.Dg,E.i],encapsulation:2})}return g})()},21933:(nt,I,o)=>{"use strict";o.d(I,{g:()=>M});var e=o(92219),n=o(98498),t=o(65879),i=o(96814),l=o(60095),C=o(98421),E=o(93355);function u(h,v){if(1&h&&(t.TgZ(0,"span",3),t._uU(1),t.qZA()),2&h){const g=t.oxw();t.xp6(1),t.Oqu(g.text)}}const z=function(){return[]};let M=(()=>{class h extends n.$j{constructor(){super(...arguments),this.hasText=!1}get text(){return this.ui.text.replace("{{value}}",this.formProperty.value)}ngOnInit(){const{schema:g,ui:d}=this;this.count=g.maximum||5,this.allowHalf=.5===(g.multipleOf||.5),this.allowClear=(0,e.AM)(d.allowClear,!0),this.autoFocus=(0,e.AM)(d.autoFocus,!1),this.hasText=!!d.text}static#e=this.\u0275fac=function(){let g;return function(p){return(g||(g=t.n5z(h)))(p||h)}}();static#t=this.\u0275cmp=t.Xpm({type:h,selectors:[["sf-rate"]],features:[t.qOj],decls:3,vars:15,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"nzDisabled","ngModel","nzAllowClear","nzAllowHalf","nzTooltips","nzAutoFocus","nzCount","ngModelChange"],["class","ant-rate-text",4,"ngIf"],[1,"ant-rate-text"]],template:function(d,p){1&d&&(t.TgZ(0,"sf-item-wrap",0)(1,"nz-rate",1),t.NdJ("ngModelChange",function(y){return p.setValue(y)}),t.qZA(),t.YNc(2,u,2,1,"span",2),t.qZA()),2&d&&(t.Q6J("id",p.id)("schema",p.schema)("ui",p.ui)("showError",p.showError)("error",p.error)("showTitle",p.schema.title),t.xp6(1),t.Q6J("nzDisabled",p.disabled)("ngModel",p.value)("nzAllowClear",p.allowClear)("nzAllowHalf",p.allowHalf)("nzTooltips",p.ui.tooltips||t.DdM(14,z))("nzAutoFocus",p.autoFocus)("nzCount",p.count),t.xp6(1),t.Q6J("ngIf",p.hasText&&p.formProperty.value))},dependencies:[i.O5,l.JJ,l.On,C.sn,E.i],encapsulation:2})}return h})()},28957:(nt,I,o)=>{"use strict";o.d(I,{u:()=>k});var e=o(78645),n=o(59773),t=o(93997),i=o(83620),l=o(94664),C=o(26306),E=o(94197),u=o(65879),z=o(78967);let M=(()=>{class F{constructor(K){this.c=K.merge("utilArray",{deepMapName:"deep",parentMapName:"parent",idMapName:"id",parentIdMapName:"parent_id",childrenMapName:"children",titleMapName:"title",checkedMapname:"checked",selectedMapname:"selected",expandedMapname:"expanded",disabledMapname:"disabled"})}treeToArr(K,_e){const Y={deepMapName:this.c.deepMapName,parentMapName:this.c.parentMapName,childrenMapName:this.c.childrenMapName,clearChildren:!0,cb:null,..._e},G=[],H=(j,te,ne=0)=>{for(const pe of j){pe[Y.deepMapName]=ne,pe[Y.parentMapName]=te,Y.cb&&Y.cb(pe,te,ne),G.push(pe);const re=pe[Y.childrenMapName];null!=re&&Array.isArray(re)&&re.length>0&&H(re,pe,ne+1),Y.clearChildren&&delete pe[Y.childrenMapName]}};return H(K,null),G}arrToTree(K,_e){if(!Array.isArray(K)||0===K.length)return[];const Y={idMapName:this.c.idMapName,parentIdMapName:this.c.parentIdMapName,childrenMapName:this.c.childrenMapName,cb:null,..._e},G=[],H={};let j=Y.rootParentIdValue;const te=K;if(!j){const ne=te.map(re=>re[Y.parentIdMapName]),pe=ne.findIndex(re=>null==re);j=-1!==pe?ne[pe]:ne.sort()[0]}for(const ne of te){const pe=ne[Y.idMapName],re=ne[Y.parentIdMapName];H[pe]=H[pe]||[],ne[Y.childrenMapName]=H[pe],Y.cb&&Y.cb(ne),re!==j?(H[re]=H[re]||[],H[re].push(ne)):G.push(ne)}return G}arrToTreeNode(K,_e){const Y={idMapName:this.c.idMapName,parentIdMapName:this.c.parentIdMapName,titleMapName:this.c.titleMapName,isLeafMapName:"isLeaf",checkedMapname:this.c.checkedMapname,selectedMapname:this.c.selectedMapname,expandedMapname:this.c.expandedMapname,disabledMapname:this.c.disabledMapname,cb:null,..._e},G=this.arrToTree(K,{idMapName:Y.idMapName,parentIdMapName:Y.parentIdMapName,childrenMapName:"children"});return this.visitTree(G,(H,j,te)=>{H.key=H[Y.idMapName],H.title=H[Y.titleMapName],H.checked=H[Y.checkedMapname],H.selected=H[Y.selectedMapname],H.expanded=H[Y.expandedMapname],H.disabled=H[Y.disabledMapname],H.isLeaf=null==H[Y.isLeafMapName]?0===H.children.length:H[Y.isLeafMapName],Y.cb&&Y.cb(H,j,te)}),G.map(H=>new E.Zr(H))}visitTree(K,_e,Y){Y={childrenMapName:this.c.childrenMapName,...Y};const G=(H,j,te)=>{for(const ne of H){_e(ne,j,te);const pe=ne[Y.childrenMapName];Array.isArray(pe)&&pe.length>0&&G(pe,ne,te+1)}};G(K,null,1)}findTree(K,_e,Y){let G;return this.visitTree(K,H=>{void 0===G&&_e(H)&&(G=H)},Y),G}getKeysByTreeNode(K,_e){const Y={includeHalfChecked:!0,..._e},G=[];return this.visitTree(K,(H,j,te)=>{(H.isChecked||Y.includeHalfChecked&&H.isHalfChecked)&&G.push(Y.cb?Y.cb(H,j,te):Y.keyMapName?H.origin[Y.keyMapName]:H.key)}),G}baseFlat(K,_e,Y=[]){let G=-1;for(;++G0&&Array.isArray(H))if(_e>1)this.baseFlat(H,_e-1,Y);else{let j=-1;const te=Y.length;for(;++j{const H=_e(G);return Object.prototype.hasOwnProperty.call(Y,H)?Y[H].push(G):Y[H]=[G],Y},{}):{}}uniq(K,_e){return Array.from(K.reduce((Y,G)=>{const H=_e?"string"==typeof _e?G[_e]:_e(G):G;return Y.has(H)||Y.set(H,G),Y},new Map).values())}static#e=this.\u0275fac=function(_e){return new(_e||F)(u.LFG(z.Ri))};static#t=this.\u0275prov=u.Yz7({token:F,factory:F.\u0275fac,providedIn:"root"})}return F})();var h=o(92219),v=o(98498),g=o(96814),d=o(60095),p=o(70855),f=o(90551),y=o(9691),T=o(93355);function x(F,W){if(1&F&&u._UZ(0,"nz-option",5),2&F){const K=W.$implicit;u.Q6J("nzLabel",K.label)("nzValue",K.value)("nzHide",K.hide)("nzDisabled",K.disabled)}}function D(F,W){if(1&F&&(u.ynx(0),u.YNc(1,x,1,4,"nz-option",4),u.BQk()),2&F){const K=u.oxw();u.xp6(1),u.Q6J("ngForOf",K.data)}}function _(F,W){if(1&F&&u._UZ(0,"nz-option",9),2&F){const K=W.$implicit;u.Q6J("nzLabel",K.label)("nzValue",K.value)("nzDisabled",K.disabled)("nzHide",K.hide)}}function P(F,W){if(1&F&&(u.TgZ(0,"nz-option-group",7),u.YNc(1,_,1,4,"nz-option",8),u.qZA()),2&F){const K=W.$implicit;u.Q6J("nzLabel",K.label),u.xp6(1),u.Q6J("ngForOf",K.children)}}function O(F,W){if(1&F&&(u.ynx(0),u.YNc(1,P,2,2,"nz-option-group",6),u.BQk()),2&F){const K=u.oxw();u.xp6(1),u.Q6J("ngForOf",K.data)}}function A(F,W){if(1&F&&(u.TgZ(0,"nz-option",10),u._UZ(1,"i",11),u._uU(2),u.qZA()),2&F){const K=u.oxw();u.xp6(2),u.hij(" ",K.ui.searchLoadingText," ")}}let k=(()=>{class F extends v.$j{constructor(){super(...arguments),this.search$=new e.x,this.data=[],this.hasGroup=!1,this.loading=!1}checkGroup(K){this.hasGroup=(K||[]).filter(_e=>!0===_e.group).length>0}ngOnInit(){const{autoClearSearchValue:K,borderless:_e,autoFocus:Y,dropdownMatchSelectWidth:G,serverSearch:H,maxMultipleCount:j,mode:te,showSearch:ne,tokenSeparators:pe,maxTagCount:re,compareWith:be,optionHeightPx:le,optionOverflowSize:ce,showArrow:Q}=this.ui;this.i={autoClearSearchValue:(0,h.AM)(K,!0),borderless:(0,h.AM)(_e,!1),autoFocus:(0,h.AM)(Y,!1),dropdownMatchSelectWidth:(0,h.AM)(G,!0),serverSearch:(0,h.AM)(H,!1),maxMultipleCount:j||1/0,mode:te||"default",showSearch:(0,h.AM)(ne,!0),tokenSeparators:pe||[],maxTagCount:re||void 0,optionHeightPx:le||32,optionOverflowSize:ce||8,showArrow:"boolean"!=typeof Q?void 0:Q,compareWith:be||((ae,xe)=>ae===xe)};const ie=this.ui.onSearch;ie&&this.search$.pipe((0,n.R)(this.sfItemComp.destroy$),(0,t.x)(),(0,i.b)(this.ui.searchDebounceTime||300),(0,l.w)(ae=>ie(ae)),(0,C.K)(()=>[])).subscribe(ae=>{this.data=ae,this.checkGroup(ae),this.loading=!1,this.detectChanges()})}reset(K){const _e=this.ui.onSearch;(0,h.Yu)(this.schema,this.ui,K).subscribe(Y=>{this._value=K,null==_e&&(this.data=Y),this.checkGroup(Y),this.detectChanges()}),K&&null!=_e&&this.search$.next(K)}change(K){this.ui.change&&this.ui.change(K,this.getOrgData(K)),this.setValue(K??void 0)}getOrgData(K){const _e=this.injector.get(M);return Array.isArray(K)?K.map(Y=>_e.findTree(this.data,G=>G.value===Y)):_e.findTree(this.data,Y=>Y.value===K)}openChange(K){this.ui.openChange&&this.ui.openChange(K)}scrollToBottom(){this.ui.scrollToBottom&&this.ui.scrollToBottom()}onSearch(K){this.ui.onSearch&&(this.loading=!0,this.search$.next(K))}static#e=this.\u0275fac=function(){let K;return function(Y){return(K||(K=u.n5z(F)))(Y||F)}}();static#t=this.\u0275cmp=u.Xpm({type:F,selectors:[["sf-select"]],features:[u.qOj],decls:5,vars:39,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"nzId","nzDisabled","ngModel","nzSize","nzPlaceHolder","nzNotFoundContent","nzDropdownClassName","nzAllowClear","nzDropdownStyle","nzCustomTemplate","nzSuffixIcon","nzRemoveIcon","nzClearIcon","nzMenuItemSelectedIcon","nzMaxTagPlaceholder","nzDropdownRender","nzAutoClearSearchValue","nzBorderless","nzAutoFocus","nzDropdownMatchSelectWidth","nzServerSearch","nzMaxMultipleCount","nzMode","nzShowSearch","nzShowArrow","nzTokenSeparators","nzMaxTagCount","compareWith","nzOptionHeightPx","nzOptionOverflowSize","ngModelChange","nzOpenChange","nzOnSearch","nzScrollToBottom"],[4,"ngIf"],["nzDisabled","","nzCustomContent","",4,"ngIf"],[3,"nzLabel","nzValue","nzHide","nzDisabled",4,"ngFor","ngForOf"],[3,"nzLabel","nzValue","nzHide","nzDisabled"],[3,"nzLabel",4,"ngFor","ngForOf"],[3,"nzLabel"],[3,"nzLabel","nzValue","nzDisabled","nzHide",4,"ngFor","ngForOf"],[3,"nzLabel","nzValue","nzDisabled","nzHide"],["nzDisabled","","nzCustomContent",""],["nz-icon","","nzType","loading"]],template:function(_e,Y){1&_e&&(u.TgZ(0,"sf-item-wrap",0)(1,"nz-select",1),u.NdJ("ngModelChange",function(H){return Y._value=H})("ngModelChange",function(H){return Y.change(H)})("nzOpenChange",function(H){return Y.openChange(H)})("nzOnSearch",function(H){return Y.onSearch(H)})("nzScrollToBottom",function(){return Y.scrollToBottom()}),u.YNc(2,D,2,1,"ng-container",2),u.YNc(3,O,2,1,"ng-container",2),u.YNc(4,A,3,1,"nz-option",3),u.qZA()()),2&_e&&(u.Q6J("id",Y.id)("schema",Y.schema)("ui",Y.ui)("showError",Y.showError)("error",Y.error)("showTitle",Y.schema.title),u.xp6(1),u.Q6J("nzId",Y.id)("nzDisabled",Y.disabled)("ngModel",Y._value)("nzSize",Y.ui.size)("nzPlaceHolder",Y.ui.placeholder)("nzNotFoundContent",Y.ui.notFoundContent)("nzDropdownClassName",Y.ui.dropdownClassName)("nzAllowClear",Y.ui.allowClear)("nzDropdownStyle",Y.ui.dropdownStyle)("nzCustomTemplate",Y.ui.customTemplate)("nzSuffixIcon",Y.ui.suffixIcon)("nzRemoveIcon",Y.ui.removeIcon)("nzClearIcon",Y.ui.clearIcon)("nzMenuItemSelectedIcon",Y.ui.menuItemSelectedIcon)("nzMaxTagPlaceholder",Y.ui.maxTagPlaceholder)("nzDropdownRender",Y.ui.dropdownRender)("nzAutoClearSearchValue",Y.i.autoClearSearchValue)("nzBorderless",Y.i.borderless)("nzAutoFocus",Y.i.autoFocus)("nzDropdownMatchSelectWidth",Y.i.dropdownMatchSelectWidth)("nzServerSearch",Y.i.serverSearch)("nzMaxMultipleCount",Y.i.maxMultipleCount)("nzMode",Y.i.mode)("nzShowSearch",Y.i.showSearch)("nzShowArrow",Y.i.showArrow)("nzTokenSeparators",Y.i.tokenSeparators)("nzMaxTagCount",Y.i.maxTagCount)("compareWith",Y.i.compareWith)("nzOptionHeightPx",Y.i.optionHeightPx)("nzOptionOverflowSize",Y.i.optionOverflowSize),u.xp6(1),u.Q6J("ngIf",!Y.loading&&!Y.hasGroup),u.xp6(1),u.Q6J("ngIf",!Y.loading&&Y.hasGroup),u.xp6(1),u.Q6J("ngIf",Y.loading))},dependencies:[g.sg,g.O5,d.JJ,d.On,p.w,f.Ls,y.Ip,y.Vq,y.Yy,T.i],encapsulation:2})}return F})()},72188:(nt,I,o)=>{"use strict";o.d(I,{B:()=>C});var e=o(98498),n=o(65879),t=o(60095),i=o(20012),l=o(93355);let C=(()=>{class E extends e.$j{constructor(){super(...arguments),this.marks=null,this._formatter=z=>{const{formatter:M}=this.ui;return M?M(z):`${z}`}}ngOnInit(){const{minimum:z,maximum:M,multipleOf:h}=this.schema;this.min=z||0,this.max=M||100,this.step=h||1;const{marks:v,included:g}=this.ui;this.marks=v||null,this.included=typeof g>"u"||g}_afterChange(z){const{afterChange:M}=this.ui;if(M)return M(z)}static#e=this.\u0275fac=function(){let z;return function(h){return(z||(z=n.n5z(E)))(h||E)}}();static#t=this.\u0275cmp=n.Xpm({type:E,selectors:[["sf-slider"]],features:[n.qOj],decls:2,vars:17,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"ngModel","nzDisabled","nzRange","nzMin","nzMax","nzStep","nzMarks","nzDots","nzIncluded","nzVertical","nzTipFormatter","ngModelChange","nzOnAfterChange"]],template:function(M,h){1&M&&(n.TgZ(0,"sf-item-wrap",0)(1,"nz-slider",1),n.NdJ("ngModelChange",function(g){return h.setValue(g)})("nzOnAfterChange",function(g){return h._afterChange(g)}),n.qZA()()),2&M&&(n.Q6J("id",h.id)("schema",h.schema)("ui",h.ui)("showError",h.showError)("error",h.error)("showTitle",h.schema.title),n.xp6(1),n.Q6J("ngModel",h.value)("nzDisabled",h.disabled)("nzRange",h.ui.range)("nzMin",h.min)("nzMax",h.max)("nzStep",h.step)("nzMarks",h.marks)("nzDots",h.ui.dots)("nzIncluded",h.included)("nzVertical",h.ui.vertical)("nzTipFormatter",h._formatter))},dependencies:[t.JJ,t.On,i.jS,l.i],encapsulation:2})}return E})()},55900:(nt,I,o)=>{"use strict";o.d(I,{L:()=>p});var e=o(65879),n=o(65619),t=o(83620),i=o(59773),l=o(94664),C=o(98498),E=o(96814),u=o(60095),z=o(70855),M=o(20824),h=o(93355);function v(f,y){if(1&f){const T=e.EpF();e.TgZ(0,"input",3),e.NdJ("ngModelChange",function(D){e.CHM(T);const _=e.oxw();return e.KtG(_.change(D))})("keyup.enter",function(D){e.CHM(T);const _=e.oxw();return e.KtG(_.enter(D))})("focus",function(D){e.CHM(T);const _=e.oxw();return e.KtG(_.focus(D))})("blur",function(D){e.CHM(T);const _=e.oxw();return e.KtG(_.blur(D))}),e.qZA()}if(2&f){const T=e.oxw();e.Q6J("disabled",T.disabled)("nzSize",T.ui.size)("nzBorderless",T.ui.borderless)("ngModel",T.value),e.uIk("id",T.id)("disabled",T.disabled)("maxLength",T.schema.maxLength||null)("type",T.ui.type||"text")("placeholder",T.ui.placeholder)("autocomplete",T.ui.autocomplete)("autoFocus",T.ui.autofocus)}}function g(f,y){}function d(f,y){if(1&f&&(e.ynx(0),e.TgZ(1,"nz-input-group",4),e.YNc(2,g,0,0,"ng-template",5),e.qZA(),e.BQk()),2&f){const T=e.oxw(),x=e.MAs(2);e.xp6(1),e.Q6J("nzAddOnBefore",T.ui.addOnBefore)("nzAddOnAfter",T.ui.addOnAfter)("nzAddOnBeforeIcon",T.ui.addOnBeforeIcon)("nzAddOnAfterIcon",T.ui.addOnAfterIcon)("nzPrefix",T.ui.prefix)("nzPrefixIcon",T.ui.prefixIcon)("nzSuffix",T.ui.suffix)("nzSuffixIcon",T.ui.suffixIcon),e.xp6(1),e.Q6J("ngTemplateOutlet",x)}}let p=(()=>{class f extends C.$j{constructor(){super(...arguments),this.change$=null}ngOnInit(){const{addOnAfter:T,addOnAfterIcon:x,addOnBefore:D,addOnBeforeIcon:_,prefix:P,prefixIcon:O,suffix:A,suffixIcon:k,autofocus:F}=this.ui;this.type=T||D||x||_||P||O||A||k?"addon":"",!0===F&&setTimeout(()=>{this.injector.get(e.SBq).nativeElement.querySelector(`#${this.id}`).focus()},20),this.initChange()}reset(T){!T&&"color"===this.schema.format&&this.setValue("#000000")}initChange(){const T=this.ui.changeDebounceTime,x=this.ui.change;if(null==T||T<=0||null==x)return;this.change$=new n.X(this.value);let D=this.change$.asObservable().pipe((0,t.b)(T),(0,i.R)(this.sfItemComp.destroy$));null!=this.ui.changeMap&&(D=D.pipe((0,l.w)(this.ui.changeMap))),D.subscribe(_=>x(_))}change(T){this.setValue(T),null==this.change$?this.ui.change&&this.ui.change(T):this.change$.next(T)}focus(T){this.ui.focus&&this.ui.focus(T)}blur(T){this.ui.blur&&this.ui.blur(T)}enter(T){this.ui.enter&&this.ui.enter(T)}static#e=this.\u0275fac=function(){let T;return function(D){return(T||(T=e.n5z(f)))(D||f)}}();static#t=this.\u0275cmp=e.Xpm({type:f,selectors:[["sf-string"]],features:[e.qOj],decls:4,vars:8,consts:[[3,"id","schema","ui","showError","error","showTitle"],["ipt",""],[4,"ngIf","ngIfElse"],["nz-input","",3,"disabled","nzSize","nzBorderless","ngModel","ngModelChange","keyup.enter","focus","blur"],[3,"nzAddOnBefore","nzAddOnAfter","nzAddOnBeforeIcon","nzAddOnAfterIcon","nzPrefix","nzPrefixIcon","nzSuffix","nzSuffixIcon"],[3,"ngTemplateOutlet"]],template:function(x,D){if(1&x&&(e.TgZ(0,"sf-item-wrap",0),e.YNc(1,v,1,11,"ng-template",null,1,e.W1O),e.YNc(3,d,3,9,"ng-container",2),e.qZA()),2&x){const _=e.MAs(2);e.Q6J("id",D.id)("schema",D.schema)("ui",D.ui)("showError",D.showError)("error",D.error)("showTitle",D.schema.title),e.xp6(3),e.Q6J("ngIf","addon"===D.type)("ngIfElse",_)}},dependencies:[E.O5,E.tP,u.Fj,u.JJ,u.On,z.w,M.Zp,M.gB,M.ke,h.i],encapsulation:2})}return f})()},52569:(nt,I,o)=>{"use strict";o.d(I,{o:()=>f});var e=o(92219),n=o(98498),t=o(65879),i=o(96814),l=o(70855),C=o(90551),E=o(55695),u=o(93355);function z(y,T){if(1&y&&t._UZ(0,"i",3),2&y){const x=T.$implicit;t.Q6J("nzType",x.type)("nzTheme",x.theme)("nzTwotoneColor",x.twotoneColor)("nzRotate",x.rotate)("nzIconfont",x.iconfont)("nzSpin",x.spin)}}function M(y,T){}const h=function(y){return{$implicit:y}};function v(y,T){if(1&y&&(t.ynx(0),t.YNc(1,M,0,0,"ng-template",6),t.BQk()),2&y){const x=t.oxw().$implicit;t.oxw();const D=t.MAs(2);t.xp6(1),t.Q6J("ngTemplateOutlet",D)("ngTemplateOutletContext",t.VKq(2,h,x.prefixIcon))}}function g(y,T){}function d(y,T){if(1&y&&(t.ynx(0),t.YNc(1,g,0,0,"ng-template",6),t.BQk()),2&y){const x=t.oxw().$implicit;t.oxw();const D=t.MAs(2);t.xp6(1),t.Q6J("ngTemplateOutlet",D)("ngTemplateOutletContext",t.VKq(2,h,x.suffixIcon))}}function p(y,T){if(1&y){const x=t.EpF();t.TgZ(0,"nz-tag",4),t.NdJ("nzOnClose",function(_){t.CHM(x);const P=t.oxw();return t.KtG(P._close(_))})("nzCheckedChange",function(){const P=t.CHM(x).$implicit,O=t.oxw();return t.KtG(O.onChange(P))}),t.YNc(1,v,2,4,"ng-container",5),t.TgZ(2,"span"),t._uU(3),t.qZA(),t.YNc(4,d,2,4,"ng-container",5),t.qZA()}if(2&y){const x=T.$implicit,D=t.oxw();t.Q6J("nzMode",D.ui.mode||"checkable")("nzChecked",x.checked),t.xp6(1),t.Q6J("ngIf",x.prefixIcon),t.xp6(2),t.Oqu(x.label),t.xp6(1),t.Q6J("ngIf",x.suffixIcon)}}let f=(()=>{class y extends n.$j{constructor(){super(...arguments),this.data=[]}reset(x){(0,e.Yu)(this.schema,this.ui,x).subscribe(D=>{this.data=D,this.detectChanges()})}onChange(x){x.checked=!x.checked,this.updateValue(),this.ui.checkedChange&&this.ui.checkedChange(x.checked)}_close(x){this.ui.onClose&&this.ui.onClose(x)}updateValue(){this.formProperty.setValue(this.data.filter(x=>x.checked).map(x=>x.value),!1)}static#e=this.\u0275fac=function(){let x;return function(_){return(x||(x=t.n5z(y)))(_||y)}}();static#t=this.\u0275cmp=t.Xpm({type:y,selectors:[["sf-tag"]],features:[t.qOj],decls:4,vars:7,consts:[[3,"id","schema","ui","showError","error","showTitle"],["icon",""],[3,"nzMode","nzChecked","nzOnClose","nzCheckedChange",4,"ngFor","ngForOf"],["nz-icon","",3,"nzType","nzTheme","nzTwotoneColor","nzRotate","nzIconfont","nzSpin"],[3,"nzMode","nzChecked","nzOnClose","nzCheckedChange"],[4,"ngIf"],[3,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(D,_){1&D&&(t.TgZ(0,"sf-item-wrap",0),t.YNc(1,z,1,6,"ng-template",null,1,t.W1O),t.YNc(3,p,5,5,"nz-tag",2),t.qZA()),2&D&&(t.Q6J("id",_.id)("schema",_.schema)("ui",_.ui)("showError",_.showError)("error",_.error)("showTitle",_.schema.title),t.xp6(3),t.Q6J("ngForOf",_.data))},dependencies:[i.sg,i.O5,i.tP,l.w,C.Ls,E.j,u.i],encapsulation:2})}return y})()},98350:(nt,I,o)=>{"use strict";o.d(I,{y:()=>u});var e=o(92219),n=o(98498),t=o(65879),i=o(96814),l=o(93355);function C(z,M){if(1&z&&t._UZ(0,"span",3),2&z){const h=t.oxw();t.Q6J("innerHTML",h.text,t.oJD)}}function E(z,M){if(1&z&&t._UZ(0,"span",4),2&z){const h=t.oxw();t.Q6J("innerText",h.text)}}let u=(()=>{class z extends n.$j{constructor(){super(...arguments),this.text=""}ngOnInit(){this.ui._required=!1,this.ui.html=(0,e.AM)(this.ui.html,!0)}reset(h){this.text=h||this.ui.defaultText||"-"}static#e=this.\u0275fac=function(){let h;return function(g){return(h||(h=t.n5z(z)))(g||z)}}();static#t=this.\u0275cmp=t.Xpm({type:z,selectors:[["sf-text"]],features:[t.qOj],decls:3,vars:10,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"innerHTML",4,"ngIf"],[3,"innerText",4,"ngIf"],[3,"innerHTML"],[3,"innerText"]],template:function(v,g){1&v&&(t.TgZ(0,"sf-item-wrap",0),t.YNc(1,C,1,1,"span",1),t.YNc(2,E,1,1,"span",2),t.qZA()),2&v&&(t.ekj("sf__text-html",g.ui.html),t.Q6J("id",g.id)("schema",g.schema)("ui",g.ui)("showError",g.showError)("error",g.error)("showTitle",g.schema.title),t.xp6(1),t.Q6J("ngIf",g.ui.html),t.xp6(1),t.Q6J("ngIf",!g.ui.html))},dependencies:[i.O5,l.i],encapsulation:2})}return z})()},53250:(nt,I,o)=>{"use strict";o.d(I,{_:()=>z});var e=o(98498),n=o(65879),t=o(96814),i=o(60095),l=o(20824),C=o(93355);function E(M,h){if(1&M){const v=n.EpF();n.TgZ(0,"textarea",3),n.NdJ("ngModelChange",function(d){n.CHM(v);const p=n.oxw();return n.KtG(p.change(d))})("focus",function(d){n.CHM(v);const p=n.oxw();return n.KtG(p.focus(d))})("blur",function(d){n.CHM(v);const p=n.oxw();return n.KtG(p.blur(d))}),n._uU(1," "),n.qZA()}if(2&M){const v=n.oxw();n.Q6J("disabled",v.disabled)("nzSize",v.ui.size)("ngModel",v.value)("nzAutosize",v.autosize)("nzBorderless",v.ui.borderless),n.uIk("id",v.id)("disabled",v.disabled)("maxLength",v.schema.maxLength||null)("placeholder",v.ui.placeholder)}}function u(M,h){if(1&M){const v=n.EpF();n.ynx(0),n.TgZ(1,"nz-textarea-count",4)(2,"textarea",3),n.NdJ("ngModelChange",function(d){n.CHM(v);const p=n.oxw();return n.KtG(p.change(d))})("focus",function(d){n.CHM(v);const p=n.oxw();return n.KtG(p.focus(d))})("blur",function(d){n.CHM(v);const p=n.oxw();return n.KtG(p.blur(d))}),n._uU(3," "),n.qZA()(),n.BQk()}if(2&M){const v=n.oxw();n.xp6(1),n.Q6J("nzMaxCharacterCount",v.ui.maxCharacterCount)("nzComputeCharacterCount",v.ui.computeCharacterCount),n.xp6(1),n.Q6J("disabled",v.disabled)("nzSize",v.ui.size)("ngModel",v.value)("nzAutosize",v.autosize)("nzBorderless",v.ui.borderless),n.uIk("id",v.id)("disabled",v.disabled)("maxLength",v.schema.maxLength||null)("placeholder",v.ui.placeholder)}}let z=(()=>{class M extends e.$j{constructor(){super(...arguments),this.autosize=!0}ngOnInit(){null!=this.ui.autosize&&(this.autosize=this.ui.autosize),null==this.ui.computeCharacterCount&&(this.ui.computeCharacterCount=v=>v.length)}change(v){this.setValue(v),this.ui.change&&this.ui.change(v)}focus(v){this.ui.focus&&this.ui.focus(v)}blur(v){this.ui.blur&&this.ui.blur(v)}static#e=this.\u0275fac=function(){let v;return function(d){return(v||(v=n.n5z(M)))(d||M)}}();static#t=this.\u0275cmp=n.Xpm({type:M,selectors:[["sf-textarea"]],features:[n.qOj],decls:4,vars:8,consts:[[3,"id","schema","ui","showError","error","showTitle"],["ipt",""],[4,"ngIf","ngIfElse"],["nz-input","",3,"disabled","nzSize","ngModel","nzAutosize","nzBorderless","ngModelChange","focus","blur"],[3,"nzMaxCharacterCount","nzComputeCharacterCount"]],template:function(g,d){if(1&g&&(n.TgZ(0,"sf-item-wrap",0),n.YNc(1,E,2,9,"ng-template",null,1,n.W1O),n.YNc(3,u,4,11,"ng-container",2),n.qZA()),2&g){const p=n.MAs(2);n.Q6J("id",d.id)("schema",d.schema)("ui",d.ui)("showError",d.showError)("error",d.error)("showTitle",d.schema.title),n.xp6(3),n.Q6J("ngIf",d.ui.maxCharacterCount)("ngIfElse",p)}},dependencies:[t.O5,i.Fj,i.JJ,i.On,l.w,l.Zp,l.rh,C.i],encapsulation:2})}return M})()},45858:(nt,I,o)=>{"use strict";o.d(I,{N:()=>u});var e=o(89207),n=o(92219),t=o(98498),i=o(65879),l=o(60095),C=o(60047),E=o(93355);let u=(()=>{class z extends t.$j{constructor(){super(...arguments),this.displayValue=null}ngOnInit(){const h=this.ui;this.valueFormat=h._format;const v={displayFormat:h.displayFormat||"HH:mm:ss",allowEmpty:(0,n.AM)(h.allowEmpty,!0),clearText:h.clearText||"\u6e05\u9664",defaultOpenValue:h.defaultOpenValue||new Date,hideDisabledOptions:(0,n.AM)(h.hideDisabledOptions,!1),use12Hours:(0,n.AM)(h.use12Hours,!1),hourStep:h.hourStep||1,minuteStep:h.minuteStep||1,secondStep:h.secondStep||1};v.use12Hours&&!h.displayFormat&&(v.displayFormat="h:mm:ss a"),this.i=v}reset(h){if(h instanceof Date)return this.displayValue=h,void this.detectChanges();let v=null!=h&&h.toString().length?new Date(h):null;null!=v&&"Invalid Date"===v.toString()&&(h.toString().split(":").length<=1&&(h+=":00"),v=new Date(`1970-1-1 ${h}`)),this.displayValue=v,this.detectChanges()}_change(h){this.ui.change&&this.ui.change(h),this.setValue(null!=h?!0!==this.ui.utcEpoch?(0,e.Z)(h,this.valueFormat):Date.UTC(1970,0,1,h.getHours(),h.getMinutes(),h.getSeconds()):null)}_openChange(h){this.ui.openChange&&this.ui.openChange(h)}static#e=this.\u0275fac=function(){let h;return function(g){return(h||(h=i.n5z(z)))(g||z)}}();static#t=this.\u0275cmp=i.Xpm({type:z,selectors:[["sf-time"]],features:[i.qOj],decls:2,vars:26,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"nzId","ngModel","nzDisabled","nzSize","nzFormat","nzAllowEmpty","nzClearText","nzDefaultOpenValue","nzDisabledHours","nzDisabledMinutes","nzDisabledSeconds","nzHideDisabledOptions","nzUse12Hours","nzHourStep","nzMinuteStep","nzSecondStep","nzPopupClassName","nzPlaceHolder","nzNowText","nzOkText","ngModelChange","nzOpenChange"]],template:function(v,g){1&v&&(i.TgZ(0,"sf-item-wrap",0)(1,"nz-time-picker",1),i.NdJ("ngModelChange",function(p){return g.displayValue=p})("ngModelChange",function(p){return g._change(p)})("nzOpenChange",function(p){return g._openChange(p)}),i.qZA()()),2&v&&(i.Q6J("id",g.id)("schema",g.schema)("ui",g.ui)("showError",g.showError)("error",g.error)("showTitle",g.schema.title),i.xp6(1),i.Q6J("nzId",g.id)("ngModel",g.displayValue)("nzDisabled",g.disabled)("nzSize",g.ui.size)("nzFormat",g.i.displayFormat)("nzAllowEmpty",g.i.allowEmpty)("nzClearText",g.i.clearText)("nzDefaultOpenValue",g.i.defaultOpenValue)("nzDisabledHours",g.ui.disabledHours)("nzDisabledMinutes",g.ui.disabledMinutes)("nzDisabledSeconds",g.ui.disabledSeconds)("nzHideDisabledOptions",g.i.hideDisabledOptions)("nzUse12Hours",g.i.use12Hours)("nzHourStep",g.i.hourStep)("nzMinuteStep",g.i.minuteStep)("nzSecondStep",g.i.secondStep)("nzPopupClassName",g.ui.popupClassName)("nzPlaceHolder",g.ui.placeholder)("nzNowText",g.ui.nowText)("nzOkText",g.ui.okText))},dependencies:[l.JJ,l.On,C.m4,E.i],encapsulation:2})}return z})()},55986:(nt,I,o)=>{"use strict";o.d(I,{v:()=>E});var e=o(22096),n=o(92219),t=o(98498),i=o(65879),l=o(10358),C=o(93355);let E=(()=>{class u extends t.$j{constructor(){super(...arguments),this.list=[],this._data=[],this._canMove=M=>this.ui.canMove?this.ui.canMove(M):(0,e.of)(M.list)}ngOnInit(){const{titles:M,operations:h,itemUnit:v,itemsUnit:g}=this.ui;this.i={titles:M||["",""],operations:h||["",""],itemUnit:v||"\u9879",itemsUnit:g||"\u9879"}}reset(M){(0,n.Yu)(this.schema,this.ui,null).subscribe(h=>{let v=M;Array.isArray(v)||(v=[v]),h.forEach(g=>{~v.indexOf(g.value)&&(g.direction="right")}),this.list=h,this._data=h.filter(g=>"right"===g.direction),this.notify(),this.detectChanges()})}notify(){this.formProperty.setValue(this._data.map(M=>M.value),!1)}_change(M){this._data="right"===M.to?this._data.concat(...M.list):this._data.filter(h=>-1===M.list.indexOf(h)),this.ui.change&&this.ui.change(M),this.notify()}_searchChange(M){this.ui.searchChange&&this.ui.searchChange(M),this.detectChanges()}_selectChange(M){this.ui.selectChange&&this.ui.selectChange(M),this.detectChanges()}static#e=this.\u0275fac=function(){let M;return function(v){return(M||(M=i.n5z(u)))(v||u)}}();static#t=this.\u0275cmp=i.Xpm({type:u,selectors:[["sf-transfer"]],features:[i.qOj],decls:2,vars:17,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"nzDataSource","nzTitles","nzOperations","nzListStyle","nzItemUnit","nzItemsUnit","nzShowSearch","nzFilterOption","nzSearchPlaceholder","nzNotFoundContent","nzCanMove","nzChange","nzSearchChange","nzSelectChange"]],template:function(h,v){1&h&&(i.TgZ(0,"sf-item-wrap",0)(1,"nz-transfer",1),i.NdJ("nzChange",function(d){return v._change(d)})("nzSearchChange",function(d){return v._searchChange(d)})("nzSelectChange",function(d){return v._selectChange(d)}),i.qZA()()),2&h&&(i.Q6J("id",v.id)("schema",v.schema)("ui",v.ui)("showError",v.showError)("error",v.error)("showTitle",v.schema.title),i.xp6(1),i.Q6J("nzDataSource",v.list)("nzTitles",v.i.titles)("nzOperations",v.i.operations)("nzListStyle",v.ui.listStyle)("nzItemUnit",v.i.itemUnit)("nzItemsUnit",v.i.itemsUnit)("nzShowSearch",v.ui.showSearch)("nzFilterOption",v.ui.filterOption)("nzSearchPlaceholder",v.ui.searchPlaceholder)("nzNotFoundContent",v.ui.notFoundContent)("nzCanMove",v._canMove))},dependencies:[l.BC,C.i],encapsulation:2})}return u})()},28448:(nt,I,o)=>{"use strict";o.d(I,{f:()=>E});var e=o(92219),n=o(98498),t=o(65879),i=o(60095),l=o(80729),C=o(93355);let E=(()=>{class u extends n.$j{constructor(){super(...arguments),this.data=[],this.asyncData=!1}ngOnInit(){const{ui:M}=this;this.i={allowClear:M.allowClear,showSearch:(0,e.AM)(M.showSearch,!1),dropdownMatchSelectWidth:(0,e.AM)(M.dropdownMatchSelectWidth,!0),multiple:(0,e.AM)(M.multiple,!1),checkable:(0,e.AM)(M.checkable,!1),showIcon:(0,e.AM)(M.showIcon,!1),showExpand:(0,e.AM)(M.showExpand,!0),showLine:(0,e.AM)(M.showLine,!1),checkStrictly:(0,e.AM)(M.checkStrictly,!1),hideUnMatched:(0,e.AM)(M.hideUnMatched,!1),defaultExpandAll:(0,e.AM)(M.defaultExpandAll,!1),displayWith:M.displayWith||(h=>h.title)},this.asyncData="function"==typeof M.expandChange}reset(M){(0,e.Yu)(this.schema,this.ui,M).subscribe(h=>{this.data=h,this.detectChanges()})}change(M){this.ui.change&&this.ui.change(M),this.setValue(M)}expandChange(M){const{ui:h}=this;"function"==typeof h.expandChange&&h.expandChange(M).subscribe(v=>{M.node.clearChildren(),M.node.addChildren(v),this.detectChanges()})}static#e=this.\u0275fac=function(){let M;return function(v){return(M||(M=t.n5z(u)))(v||u)}}();static#t=this.\u0275cmp=t.Xpm({type:u,selectors:[["sf-tree-select"]],features:[t.qOj],decls:2,vars:36,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"nzId","nzAllowClear","nzPlaceHolder","nzDropdownStyle","nzDropdownClassName","nzSize","nzExpandedKeys","nzNotFoundContent","nzMaxTagCount","nzMaxTagPlaceholder","nzTreeTemplate","nzDisabled","nzShowSearch","nzShowIcon","nzDropdownMatchSelectWidth","nzMultiple","nzHideUnMatched","nzCheckable","nzShowExpand","nzShowLine","nzCheckStrictly","nzAsyncData","nzNodes","nzDefaultExpandAll","nzDisplayWith","ngModel","nzVirtualHeight","nzVirtualItemSize","nzVirtualMaxBufferPx","nzVirtualMinBufferPx","ngModelChange","nzExpandChange"]],template:function(h,v){1&h&&(t.TgZ(0,"sf-item-wrap",0)(1,"nz-tree-select",1),t.NdJ("ngModelChange",function(d){return v.change(d)})("nzExpandChange",function(d){return v.expandChange(d)}),t.qZA()()),2&h&&(t.Q6J("id",v.id)("schema",v.schema)("ui",v.ui)("showError",v.showError)("error",v.error)("showTitle",v.schema.title),t.xp6(1),t.Q6J("nzId",v.id)("nzAllowClear",v.i.allowClear)("nzPlaceHolder",v.ui.placeholder)("nzDropdownStyle",v.ui.dropdownStyle)("nzDropdownClassName",v.ui.dropdownClassName)("nzSize",v.ui.size)("nzExpandedKeys",v.ui.expandedKeys)("nzNotFoundContent",v.ui.notFoundContent)("nzMaxTagCount",v.ui.maxTagCount)("nzMaxTagPlaceholder",v.ui.maxTagPlaceholder||null)("nzTreeTemplate",v.ui.treeTemplate)("nzDisabled",v.disabled)("nzShowSearch",v.i.showSearch)("nzShowIcon",v.i.showIcon)("nzDropdownMatchSelectWidth",v.i.dropdownMatchSelectWidth)("nzMultiple",v.i.multiple)("nzHideUnMatched",v.i.hideUnMatched)("nzCheckable",v.i.checkable)("nzShowExpand",v.i.showExpand)("nzShowLine",v.i.showLine)("nzCheckStrictly",v.i.checkStrictly)("nzAsyncData",v.asyncData)("nzNodes",v.data)("nzDefaultExpandAll",v.i.defaultExpandAll)("nzDisplayWith",v.i.displayWith)("ngModel",v.value)("nzVirtualHeight",v.ui.virtualHeight)("nzVirtualItemSize",v.ui.virtualItemSize||28)("nzVirtualMaxBufferPx",v.ui.virtualMaxBufferPx||500)("nzVirtualMinBufferPx",v.ui.virtualMinBufferPx||28))},dependencies:[i.JJ,i.On,l.zr,C.i],encapsulation:2})}return u})()},70410:(nt,I,o)=>{"use strict";o.d(I,{c:()=>y});var e=o(22096),n=o(64115),t=o(81221),i=o(92219),l=o(98498),C=o(65879),E=o(96814),u=o(42840),z=o(70855),M=o(41958),h=o(90551),v=o(41394),g=o(93355);function d(T,x){if(1&T&&(C.ynx(0),C._UZ(1,"i",5)(2,"div",6),C.BQk()),2&T){const D=C.oxw();C.xp6(2),C.Q6J("innerHTML",D.i.text,C.oJD)}}function p(T,x){if(1&T&&(C.ynx(0),C.TgZ(1,"p",7),C._UZ(2,"i",8),C.qZA(),C._UZ(3,"p",6)(4,"p",9),C.BQk()),2&T){const D=C.oxw();C.xp6(3),C.Q6J("innerHTML",D.i.text,C.oJD),C.xp6(1),C.Q6J("innerHTML",D.i.hint,C.oJD)}}function f(T,x){if(1&T&&(C.ynx(0),C.TgZ(1,"button",10),C._UZ(2,"i",11)(3,"span",12),C.qZA(),C.BQk()),2&T){const D=C.oxw();C.xp6(3),C.Q6J("innerHTML",D.i.text,C.oJD)}}let y=(()=>{class T extends l.$j{constructor(){super(...arguments),this.fileList=[],this.btnType="",this.handleRemove=()=>(this._setValue(this.fileList),!0),this.handlePreview=D=>{if(this.ui.preview)return void this.ui.preview(D);const _=D.thumbUrl||D.url;_&&this.injector.get(t.Sf).create({nzContent:``,nzFooter:null})}}ngOnInit(){const{type:D,text:_,hint:P,action:O,accept:A,limit:k,filter:F,fileSize:W,fileType:K,listType:_e,multiple:Y,name:G,showUploadList:H,withCredentials:j,resReName:te,urlReName:ne,beforeUpload:pe,customRequest:re,directory:be,openFileDialogOnClick:le,limitFileCount:ce}=this.ui,Q={type:D||"select",text:_||"\u70b9\u51fb\u4e0a\u4f20",action:O||"",accept:A||"",directory:(0,i.AM)(be,!1),openFileDialogOnClick:(0,i.AM)(le,!0),limit:null==k?0:+k,filter:F??[],size:null==W?0:+W,fileType:K||"",listType:_e||"text",multiple:(0,i.AM)(Y,!1),name:G||"file",showUploadList:H??!0,withCredentials:(0,i.AM)(j,!1),resReName:(te||"").split("."),urlReName:(ne||"").split("."),beforeUpload:"function"==typeof pe?pe:null,customRequest:"function"==typeof re?re:null,limitFileCount:ce||999};"picture-card"===Q.listType&&(this.btnType="plus"),"drag"===Q.type&&(Q.listType=null,this.btnType="drag",Q.text=_||"\u5355\u51fb\u6216\u62d6\u52a8\u6587\u4ef6\u5230\u8be5\u533a\u57df\u4e0a\u4f20",Q.hint=P||"\u652f\u6301\u5355\u4e2a\u6216\u6279\u91cf\uff0c\u4e25\u7981\u4e0a\u4f20\u516c\u53f8\u6570\u636e\u6216\u5176\u4ed6\u5b89\u5168\u6587\u4ef6"),this.i=Q}change(D){this.ui.change&&this.ui.change(D),"success"===D.type&&this._setValue(D.fileList)}reset(D){const{fileList:_}=this.ui;(_?(0,e.of)(_):Array.isArray(D)?(0,e.of)(D):(0,i.Yu)(this.schema,this.ui,null)).subscribe(P=>{this.fileList=P,this.formProperty._value=this.pureValue(P),this.formProperty.updateValueAndValidity({onlySelf:!1,emitValueEvent:!1,emitValidator:!1}),this.detectChanges()})}_getValue(D){return(0,n.In)(D.response,this.i.resReName,D.response)}pureValue(D){D.filter(P=>!P.url).forEach(P=>{P.url=(0,n.In)(P.response,this.i.urlReName)});const _=D.filter(P=>"done"===P.status).map(P=>this._getValue(P));return!0===this.i.multiple?_:_.pop()}_setValue(D){this.setValue(this.pureValue(D))}static#e=this.\u0275fac=function(){let D;return function(P){return(D||(D=C.n5z(T)))(P||T)}}();static#t=this.\u0275cmp=C.Xpm({type:T,selectors:[["sf-upload"]],features:[C.qOj],decls:6,vars:35,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"nzType","nzFileList","nzDisabled","nzAction","nzDirectory","nzOpenFileDialogOnClick","nzAccept","nzLimit","nzFilter","nzSize","nzFileType","nzHeaders","nzData","nzListType","nzMultiple","nzName","nzShowUploadList","nzWithCredentials","nzBeforeUpload","nzCustomRequest","nzRemove","nzPreview","nzPreviewFile","nzDownload","nzTransformFile","nzShowButton","nzFileListChange","nzChange"],[3,"ngSwitch"],[4,"ngSwitchCase"],[4,"ngSwitchDefault"],["nz-icon","","nzType","plus"],[1,"ant-upload-text",3,"innerHTML"],[1,"ant-upload-drag-icon"],["nz-icon","","nzType","inbox"],[1,"ant-upload-hint",3,"innerHTML"],["type","button","nz-button",""],["nz-icon","","nzType","upload"],[3,"innerHTML"]],template:function(_,P){1&_&&(C.TgZ(0,"sf-item-wrap",0)(1,"nz-upload",1),C.NdJ("nzFileListChange",function(A){return P.fileList=A})("nzChange",function(A){return P.change(A)}),C.ynx(2,2),C.YNc(3,d,3,1,"ng-container",3),C.YNc(4,p,5,2,"ng-container",3),C.YNc(5,f,4,1,"ng-container",4),C.BQk(),C.qZA()()),2&_&&(C.Q6J("id",P.id)("schema",P.schema)("ui",P.ui)("showError",P.showError)("error",P.error)("showTitle",P.schema.title),C.xp6(1),C.Q6J("nzType",P.i.type)("nzFileList",P.fileList)("nzDisabled",P.disabled)("nzAction",P.i.action)("nzDirectory",P.i.directory)("nzOpenFileDialogOnClick",P.i.openFileDialogOnClick)("nzAccept",P.i.accept)("nzLimit",P.i.limit)("nzFilter",P.i.filter)("nzSize",P.i.size)("nzFileType",P.i.fileType)("nzHeaders",P.ui.headers)("nzData",P.ui.data)("nzListType",P.i.listType)("nzMultiple",P.i.multiple)("nzName",P.i.name)("nzShowUploadList",P.i.showUploadList)("nzWithCredentials",P.i.withCredentials)("nzBeforeUpload",P.i.beforeUpload)("nzCustomRequest",P.i.customRequest)("nzRemove",P.ui.remove||P.handleRemove)("nzPreview",P.handlePreview)("nzPreviewFile",P.ui.previewFile)("nzDownload",P.ui.download)("nzTransformFile",P.ui.transformFile)("nzShowButton",P.fileList.length{"use strict";o.d(I,{Oi:()=>t.Oi,BQ:()=>t.BQ,pG:()=>wt.p,uU:()=>$e.u,lD:()=>le.l,s7:()=>be.s7,hC:()=>Mt.h,hl:()=>C,Te:()=>Ae.T,lw:()=>O,aP:()=>A,kz:()=>h,gb:()=>E.g,yD:()=>H,q4:()=>De,fU:()=>Ue.f,lP:()=>we,iF:()=>ce,yn:()=>Ue.yn,bF:()=>Q.Z});var e=o(65619),n=o(63020),t=o(57447),i=o(65879),l=o(27929);let C=(()=>{class Pe{constructor(Ge,Ke){this.i18nSrv=Ge,this.aclService=Ke,this._change$=new e.X([]),this.data=[],this.openStrictly=!1,this.i18n$=this.i18nSrv.change.subscribe(()=>this.resume())}get change(){return this._change$.pipe((0,n.B)())}get menus(){return this.data}visit(Ge,Ke){const ve=(it,b,N)=>{for(const S of it)Ke(S,b,N),S.children&&S.children.length>0?ve(S.children,S,N+1):S.children=[]};ve(Ge,null,0)}add(Ge){this.data=Ge,this.resume()}fixItem(Ge){if(Ge._aclResult=!0,Ge.link||(Ge.link=""),Ge.externalLink||(Ge.externalLink=""),Ge.badge&&(!0!==Ge.badgeDot&&(Ge.badgeDot=!1),Ge.badgeStatus||(Ge.badgeStatus="error")),Array.isArray(Ge.children)||(Ge.children=[]),"string"==typeof Ge.icon){let Ke="class",ve=Ge.icon;~Ge.icon.indexOf("anticon-")?(Ke="icon",ve=ve.split("-").slice(1).join("-")):/^https?:\/\//.test(Ge.icon)&&(Ke="img"),Ge.icon={type:Ke,value:ve}}null!=Ge.icon&&(Ge.icon={theme:"outline",spin:!1,...Ge.icon}),Ge.text=Ge.i18n&&this.i18nSrv?this.i18nSrv.fanyi(Ge.i18n):Ge.text,Ge.group=!1!==Ge.group,Ge._hidden=!(typeof Ge.hide>"u")&&Ge.hide,Ge.disabled=!(typeof Ge.disabled>"u")&&Ge.disabled,Ge._aclResult=!Ge.acl||!this.aclService||this.aclService.can(Ge.acl),Ge.open=null!=Ge.open&&Ge.open}resume(Ge){let Ke=1;const ve=[];this.visit(this.data,(it,b,N)=>{it._id=Ke++,it._parent=b,it._depth=N,this.fixItem(it),b&&!0===it.shortcut&&!0!==b.shortcutRoot&&ve.push(it),Ge&&Ge(it,b,N)}),this.loadShortcut(ve),this._change$.next(this.data)}loadShortcut(Ge){if(0===Ge.length||0===this.data.length)return;const Ke=this.data[0].children;let ve=Ke.findIndex(b=>!0===b.shortcutRoot);-1===ve&&(ve=Ke.findIndex(N=>N.link.includes("dashboard")),ve=(-1!==ve?ve:-1)+1,this.data[0].children.splice(ve,0,{text:"\u5feb\u6377\u83dc\u5355",i18n:"shortcut",icon:"icon-rocket",children:[]}));let it=this.data[0].children[ve];it.i18n&&this.i18nSrv&&(it.text=this.i18nSrv.fanyi(it.i18n)),it=Object.assign(it,{shortcutRoot:!0,_id:-1,_parent:null,_depth:1}),it.children=Ge.map(b=>(b._depth=2,b._parent=it,b))}clear(){this.data=[],this._change$.next(this.data)}find(Ge){const Ke={recursive:!1,ignoreHide:!1,...Ge};if(null!=Ke.key)return this.getItem(Ke.key);let ve=Ke.url,it=null;for(;!it&&ve&&(this.visit(Ke.data??this.data,b=>{if(!Ke.ignoreHide||!b.hide){if(Ke.cb){const N=Ke.cb(b);!it&&"boolean"==typeof N&&N&&(it=b)}null!=b.link&&b.link===ve&&(it=b)}}),Ke.recursive);)ve=/[?;]/g.test(ve)?ve.split(/[?;]/g)[0]:ve.split("/").slice(0,-1).join("/");return it}getPathByUrl(Ge,Ke=!1){const ve=[];let it=this.find({url:Ge,recursive:Ke});if(!it)return ve;do{ve.splice(0,0,it),it=it._parent}while(it);return ve}getItem(Ge){let Ke=null;return this.visit(this.data,ve=>{null==Ke&&ve.key===Ge&&(Ke=ve)}),Ke}setItem(Ge,Ke,ve){const it="string"==typeof Ge?this.getItem(Ge):Ge;null!=it&&(Object.keys(Ke).forEach(b=>{it[b]=Ke[b]}),this.fixItem(it),!1!==ve?.emit&&this._change$.next(this.data))}open(Ge,Ke){let ve="string"==typeof Ge?this.find({key:Ge}):Ge;if(null!=ve){this.visit(this.menus,it=>{it._selected=!1,this.openStrictly||(it.open=!1)});do{ve._selected=!0,ve.open=!0,ve=ve._parent}while(ve);!1!==Ke?.emit&&this._change$.next(this.data)}}openAll(Ge){this.toggleOpen(null,{allStatus:Ge})}toggleOpen(Ge,Ke){let ve="string"==typeof Ge?this.find({key:Ge}):Ge;if(null==ve)this.visit(this.menus,it=>{it._selected=!1,it.open=!0===Ke?.allStatus});else{if(!this.openStrictly){this.visit(this.menus,b=>{b!==ve&&(b.open=!1)});let it=ve._parent;for(;it;)it.open=!0,it=it._parent}ve.open=!ve.open}!1!==Ke?.emit&&this._change$.next(this.data)}ngOnDestroy(){this._change$.unsubscribe(),this.i18n$.unsubscribe()}static#e=this.\u0275fac=function(Ke){return new(Ke||Pe)(i.LFG(t.Oi,8),i.LFG(l._8,8))};static#t=this.\u0275prov=i.Yz7({token:Pe,factory:Pe.\u0275fac,providedIn:"root"})}return Pe})();var E=o(78908),u=o(78967);let h=(()=>{class Pe{constructor(Ge){if(this.cog=Ge.merge("themeResponsive",{rules:{1:{xs:24},2:{xs:24,sm:12},3:{xs:24,sm:12,md:8},4:{xs:24,sm:12,md:8,lg:6},5:{xs:24,sm:12,md:8,lg:6,xl:4},6:{xs:24,sm:12,md:8,lg:6,xl:4,xxl:2}}}),Object.keys(this.cog.rules).map(Ke=>+Ke).some(Ke=>Ke<1||Ke>6))throw new Error("[theme] the responseive rule index value range must be 1-6")}genCls(Ge,Ke=1){const ve={...this.cog.rules[Ge>6?6:Math.max(Ge,1)]},it="ant-col",b=24/Ke,N=$=>null==$||Ke<=1||Ge>=Ke?$:Math.max($,Ge*b),S=[`${it}-xs-${N(ve.xs)}`];return ve.sm&&S.push(`${it}-sm-${N(ve.sm)}`),ve.md&&S.push(`${it}-md-${N(ve.md)}`),ve.lg&&S.push(`${it}-lg-${N(ve.lg)}`),ve.xl&&S.push(`${it}-xl-${N(ve.xl)}`),ve.xxl&&S.push(`${it}-xxl-${N(ve.xxl)}`),S}static#e=this.\u0275fac=function(Ke){return new(Ke||Pe)(i.LFG(u.Ri))};static#t=this.\u0275prov=i.Yz7({token:Pe,factory:Pe.\u0275fac,providedIn:"root"})}return Pe})();var v=o(96814),g=o(32181),d=o(37398),p=o(49388),f=o(83064),y=o(62831);const x="direction",D=["modal","drawer","message","notification","image"],_=["loading","onboarding"],P="ltr",O="rtl";let A=(()=>{class Pe{get dir(){return this._dir}set dir(Ge){this._dir=Ge,this.updateLibConfig(),this.updateHtml(),Promise.resolve().then(()=>{this.d.value=Ge,this.d.change.emit(Ge),this.srv.setLayout(x,Ge)})}get nextDir(){return this.dir===P?O:P}get change(){return this.srv.notify.pipe((0,g.h)(Ge=>Ge.name===x),(0,d.U)(Ge=>Ge.value))}constructor(Ge,Ke,ve,it,b,N){this.d=Ge,this.srv=Ke,this.nz=ve,this.delon=it,this.platform=b,this.doc=N,this._dir=P,this.dir=Ke.layout.direction===O?O:P}toggle(){this.dir=this.nextDir}updateHtml(){if(!this.platform.isBrowser)return;const Ge=this.doc.querySelector("html");if(Ge){const Ke=this.dir;Ge.style.direction=Ke,Ge.classList.remove(O,P),Ge.classList.add(Ke),Ge.setAttribute("dir",Ke)}}updateLibConfig(){D.forEach(Ge=>{this.nz.set(Ge,{nzDirection:this.dir})}),_.forEach(Ge=>{this.delon.set(Ge,{direction:this.dir})})}static#e=this.\u0275fac=function(Ke){return new(Ke||Pe)(i.LFG(p.Is),i.LFG(E.g),i.LFG(f.jY),i.LFG(u.Ri),i.LFG(y.t4),i.LFG(v.K0))};static#t=this.\u0275prov=i.Yz7({token:Pe,factory:Pe.\u0275fac,providedIn:"root"})}return Pe})();var k=o(71993),F=o(52787),W=o(22096),K=o(5177),_e=o(2664),Y=o(94664),G=o(6593);let H=(()=>{class Pe{constructor(Ge,Ke,ve,it,b){this.injector=Ge,this.title=Ke,this.menuSrv=ve,this.i18nSrv=it,this.doc=b,this.destroy$=(0,i.f3M)(i.ktI),this._prefix="",this._suffix="",this._separator=" - ",this._reverse=!1,this.DELAY_TIME=25,this.default="Not Page Name",it.change.pipe((0,k.sL)()).subscribe(()=>this.setTitle())}set separator(Ge){this._separator=Ge}set prefix(Ge){this._prefix=Ge}set suffix(Ge){this._suffix=Ge}set reverse(Ge){this._reverse=Ge}getByElement(){return(0,W.of)("").pipe((0,K.g)(this.DELAY_TIME),(0,d.U)(()=>{const Ge=(null!=this.selector?this.doc.querySelector(this.selector):null)||this.doc.querySelector(".alain-default__content-title h1")||this.doc.querySelector(".page-header__title");if(Ge){let Ke="";return Ge.childNodes.forEach(ve=>{!Ke&&3===ve.nodeType&&(Ke=ve.textContent.trim())}),Ke||Ge.firstChild.textContent.trim()}return""}))}getByRoute(){let Ge=this.injector.get(F.gz);for(;Ge.firstChild;)Ge=Ge.firstChild;const Ke=Ge.snapshot&&Ge.snapshot.data||{};return Ke.titleI18n&&this.i18nSrv&&(Ke.title=this.i18nSrv.fanyi(Ke.titleI18n)),(0,_e.b)(Ke.title)?Ke.title:(0,W.of)(Ke.title)}getByMenu(){const Ge=this.menuSrv.getPathByUrl(this.injector.get(F.F0).url);if(!Ge||Ge.length<=0)return(0,W.of)("");const Ke=Ge[Ge.length-1];let ve;return Ke.i18n&&this.i18nSrv&&(ve=this.i18nSrv.fanyi(Ke.i18n)),(0,W.of)(ve||Ke.text)}setTitle(Ge){this.tit$?.unsubscribe(),this.tit$=(0,W.of)(Ge).pipe((0,Y.w)(Ke=>Ke?(0,W.of)(Ke):this.getByRoute()),(0,Y.w)(Ke=>Ke?(0,W.of)(Ke):this.getByMenu()),(0,Y.w)(Ke=>Ke?(0,W.of)(Ke):this.getByElement()),(0,d.U)(Ke=>Ke||this.default),(0,d.U)(Ke=>Array.isArray(Ke)?Ke:[Ke]),(0,k.sL)(this.destroy$)).subscribe(Ke=>{let ve=[];this._prefix&&ve.push(this._prefix),ve.push(...Ke.filter(it=>!!it)),this._suffix&&ve.push(this._suffix),this._reverse&&(ve=ve.reverse()),this.title.setTitle(ve.join(this._separator))})}setTitleByI18n(Ge,Ke){this.setTitle(this.i18nSrv.fanyi(Ge,Ke))}ngOnDestroy(){this.tit$?.unsubscribe()}static#e=this.\u0275fac=function(Ke){return new(Ke||Pe)(i.LFG(i.zs3),i.LFG(G.Dx),i.LFG(C),i.LFG(t.Oi,8),i.LFG(v.K0))};static#t=this.\u0275prov=i.Yz7({token:Pe,factory:Pe.\u0275fac,providedIn:"root"})}return Pe})();o(63123),o(15851);var be=o(35227),le=o(55379);const ce={abbr:"en-US",exception:{403:"Sorry, you don't have access to this page",404:"Sorry, the page you visited does not exist",500:"Sorry, the server is reporting an error",backToHome:"Back To Home"},noticeIcon:{emptyText:"No data",clearText:"Clear"},reuseTab:{close:"Close tab",closeOther:"Close other tabs",closeRight:"Close tabs to right",refresh:"Refresh"},tagSelect:{expand:"Expand",collapse:"Collapse"},miniProgress:{target:"Target: "},st:{total:"{{range[0]}} - {{range[1]}} of {{total}}",filterConfirm:"OK",filterReset:"Reset"},sf:{submit:"Submit",reset:"Reset",search:"Search",edit:"Save",addText:"Add",removeText:"Remove",checkAllText:"Check all",error:{"false schema":"Boolean schema is false",$ref:"Can't resolve reference {ref}",additionalItems:"Should not have more than {limit} item",additionalProperties:"Should not have additional properties",anyOf:'Should match some schema in "anyOf"',dependencies:"should have property {deps} when property {property} is present",enum:"Should be equal to one of predefined values",format:'Should match format "{format}"',type:"Should be {type}",required:"Required",maxLength:"Should not be longer than {limit} character",minLength:"Should not be shorter than {limit} character",minimum:"Should be {comparison} {limit}",formatMinimum:"Should be {comparison} {limit}",maximum:"Should be {comparison} {limit}",formatMaximum:"Should be {comparison} {limit}",maxItems:"Should not have more than {limit} item",minItems:"Should not have less than {limit} item",maxProperties:"Should not have more than {limit} property",minProperties:"Should not have less than {limit} property",multipleOf:"Should be a multiple of {multipleOf}",not:'Should not be valid according to schema in "not"',oneOf:'Should match exactly one schema in "oneOf"',pattern:'Should match pattern "{pattern}"',uniqueItems:"Should not have duplicate items (items ## {j} and {i} are identical)",custom:"Should match format",propertyNames:'Property name "{propertyName}" is invalid',patternRequired:'Should have property matching pattern "{missingPattern}"',switch:'Should pass "switch" keyword validation, case {caseIndex} fails',const:"Should be equal to constant",contains:"Should contain a valid item",formatExclusiveMaximum:"formatExclusiveMaximum should be boolean",formatExclusiveMinimum:"formatExclusiveMinimum should be boolean",if:'Should match "{failingKeyword}" schema'}},onboarding:{skip:"Skip",prev:"Prev",next:"Next",done:"Done"}};var Q=o(47285),Ae=o(74856),Mt=o(80563),je=o(69862),ot=o(99397),mt=o(64716);let we=(()=>{class Pe{constructor(Ge,Ke){this.http=Ge,this.lc=0,this.cog=Ke.merge("themeHttp",{nullValueHandling:"include",dateValueHandling:"timestamp"})}get loading(){return this.lc>0}get loadingCount(){return this.lc}parseParams(Ge){const Ke={};return Ge instanceof je.LE?Ge:(Object.keys(Ge).forEach(ve=>{let it=Ge[ve];"ignore"===this.cog.nullValueHandling&&null==it||("timestamp"===this.cog.dateValueHandling&&it instanceof Date&&(it=it.valueOf()),Ke[ve]=it)}),new je.LE({fromObject:Ke}))}appliedUrl(Ge,Ke){if(!Ke)return Ge;Ge+=~Ge.indexOf("?")?"":"?";const ve=[];return Object.keys(Ke).forEach(it=>{ve.push(`${it}=${Ke[it]}`)}),Ge+ve.join("&")}setCount(Ge){Promise.resolve(null).then(()=>this.lc=Ge<=0?0:Ge)}push(){this.setCount(++this.lc)}pop(){this.setCount(--this.lc)}cleanLoading(){this.setCount(0)}get(Ge,Ke,ve={}){return this.request("GET",Ge,{params:Ke,...ve})}post(Ge,Ke,ve,it={}){return this.request("POST",Ge,{body:Ke,params:ve,...it})}delete(Ge,Ke,ve={}){return this.request("DELETE",Ge,{params:Ke,...ve})}jsonp(Ge,Ke,ve="JSONP_CALLBACK"){return(0,W.of)(null).pipe((0,K.g)(0),(0,ot.b)(()=>this.push()),(0,Y.w)(()=>this.http.jsonp(this.appliedUrl(Ge,Ke),ve)),(0,mt.x)(()=>this.pop()))}patch(Ge,Ke,ve,it={}){return this.request("PATCH",Ge,{body:Ke,params:ve,...it})}put(Ge,Ke,ve,it={}){return this.request("PUT",Ge,{body:Ke,params:ve,...it})}form(Ge,Ke,ve,it={}){return this.request("POST",Ge,{body:Ke,params:ve,...it,headers:{"content-type":"application/x-www-form-urlencoded"}})}request(Ge,Ke,ve={}){return ve.params&&(ve.params=this.parseParams(ve.params)),(0,W.of)(null).pipe((0,K.g)(0),(0,ot.b)(()=>this.push()),(0,Y.w)(()=>this.http.request(Ge,Ke,ve)),(0,mt.x)(()=>this.pop()))}static#e=this.\u0275fac=function(Ke){return new(Ke||Pe)(i.LFG(je.eN),i.LFG(u.Ri))};static#t=this.\u0275prov=i.Yz7({token:Pe,factory:Pe.\u0275fac,providedIn:"root"})}return Pe})();var de=o(58504);const B="__api_params";function Ee(Pe,Je=B){let Ge=Pe[Je];return typeof Ge>"u"&&(Ge=Pe[Je]={}),Ge}function pt(Pe){return function(Je){return function(Ge,Ke,ve){const it=Ee(Ee(Ge),Ke);let b=it[Pe];typeof b>"u"&&(b=it[Pe]=[]),b.push({key:Je,index:ve})}}}function cn(Pe,Je,Ge){if(Pe[Je]&&Array.isArray(Pe[Je])&&!(Pe[Je].length<=0))return Ge[Pe[Je][0].index]}function Wt(Pe,Je){return Array.isArray(Pe)||Array.isArray(Je)?Object.assign([],Pe,Je):{...Pe,...Je}}function Vt(Pe){return function(Je="",Ge){return(Ke,ve,it)=>(it.value=function(...b){Ge=Ge||{};const N=this.injector,S=N.get(we,null);if(null==S)throw new TypeError("Not found '_HttpClient', You can import 'AlainThemeModule' && 'HttpClientModule' in your root module.");const $=Ee(this),R=Ee($,ve);let he=Je||"";if(he=[$.baseUrl||"",he.startsWith("/")?he.substring(1):he].join("/"),he.length>1&&he.endsWith("/")&&(he=he.substring(0,he.length-1)),Ge.acl){const pn=N.get(l._8,null);if(pn&&!pn.can(Ge.acl))return(0,de._)(()=>({url:he,status:401,statusText:"From Http Decorator"}));delete Ge.acl}he=he.replace(/::/g,"^^"),(R.path||[]).filter(pn=>typeof b[pn.index]<"u").forEach(pn=>{he=he.replace(new RegExp(`:${pn.key}`,"g"),encodeURIComponent(b[pn.index]))}),he=he.replace(/\^\^/g,":");const ze=(R.query||[]).reduce((pn,vn)=>(pn[vn.key]=b[vn.index],pn),{}),bt=(R.headers||[]).reduce((pn,vn)=>(pn[vn.key]=b[vn.index],pn),{});"FORM"===Pe&&(bt["content-type"]="application/x-www-form-urlencoded");const Ft=cn(R,"payload",b),sn=["POST","PUT","PATCH","DELETE"].some(pn=>pn===Pe);return S.request(Pe,he,{body:sn?Wt(cn(R,"body",b),Ft):null,params:sn?ze:{...ze,...Ft},headers:{...$.baseHeaders,...bt},...Ge})},it)}}pt("path"),pt("query"),pt("body")(),pt("headers"),pt("payload")(),Vt("OPTIONS"),Vt("GET"),Vt("POST"),Vt("DELETE"),Vt("PUT"),Vt("HEAD"),Vt("PATCH"),Vt("JSONP"),Vt("FORM"),new je.Xk(()=>!1),new je.Xk(()=>!1),new je.Xk(()=>!1);var $e=o(72745),Ue=o(96806),wt=o(58593);const De=new i.GfV("0.0.0-PLACEHOLDER")},60662:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>p});var e=o(65879),n=o(96814),t=o(60095),i=o(43389),l=o(96494),C=o(20824),E=o(68373);const u=function(){return{standalone:!0}};function z(f,y){if(1&f){const T=e.EpF();e.ynx(0),e.TgZ(1,"input",4),e.NdJ("ngModelChange",function(D){e.CHM(T);const _=e.oxw();return e.KtG(_.i.value=D)}),e.qZA(),e.BQk()}if(2&f){const T=e.oxw();e.xp6(1),e.Q6J("ngModel",T.i.value)("ngModelOptions",e.DdM(2,u))}}function M(f,y){if(1&f){const T=e.EpF();e.ynx(0),e.TgZ(1,"input",5),e.NdJ("ngModelChange",function(D){e.CHM(T);const _=e.oxw();return e.KtG(_.i.value=D)}),e.qZA(),e.BQk()}if(2&f){const T=e.oxw();e.xp6(1),e.Q6J("ngModel",T.i.value)("ngModelOptions",e.DdM(2,u))}}function h(f,y){if(1&f){const T=e.EpF();e.ynx(0),e.TgZ(1,"nz-input-number",6),e.NdJ("ngModelChange",function(D){e.CHM(T);const _=e.oxw();return e.KtG(_.pxVal=D)})("ngModelChange",function(D){e.CHM(T);const _=e.oxw();return e.KtG(_.pxChange(D))}),e.qZA(),e.BQk()}if(2&f){const T=e.oxw();e.xp6(1),e.Q6J("ngModel",T.pxVal)("nzMin",T.i.min)("nzMax",T.i.max)("nzStep",T.i.step||2)("nzFormatter",T.format)}}function v(f,y){if(1&f){const T=e.EpF();e.ynx(0),e.TgZ(1,"nz-switch",7),e.NdJ("ngModelChange",function(D){e.CHM(T);const _=e.oxw();return e.KtG(_.i.value=D)}),e.qZA(),e.BQk()}if(2&f){const T=e.oxw();e.xp6(1),e.Q6J("ngModel",T.i.value)("ngModelOptions",e.DdM(2,u))}}function g(f,y){}function d(f,y){1&f&&(e.ynx(0),e.YNc(1,g,0,0,"ng-template",8),e.BQk())}let p=(()=>{class f{constructor(){this.i={},this.pxVal=0,this.format=T=>`${T} px`}set data(T){this.i=T,"px"===T.type&&(this.pxVal=+T.value.replace("px",""))}pxChange(T){this.i.value=`${T}px`}static#e=this.\u0275fac=function(x){return new(x||f)};static#t=this.\u0275cmp=e.Xpm({type:f,selectors:[["setting-drawer-item"]],hostVars:2,hostBindings:function(x,D){2&x&&e.ekj("setting-drawer__body-item",!0)},inputs:{data:"data"},decls:10,vars:7,consts:[[1,"pl-sm","text-grey"],[3,"ngSwitch"],[4,"ngSwitchCase"],[4,"ngSwitchDefault"],["nz-input","","type","color",2,"min-width","88px",3,"ngModel","ngModelOptions","ngModelChange"],["nz-input","",2,"min-width","88px",3,"ngModel","ngModelOptions","ngModelChange"],[3,"ngModel","nzMin","nzMax","nzStep","nzFormatter","ngModelChange"],["nzSize","small",3,"ngModel","ngModelOptions","ngModelChange"],["nzDrawerContent",""]],template:function(x,D){1&x&&(e.TgZ(0,"span"),e._uU(1),e.TgZ(2,"span",0),e._uU(3),e.qZA()(),e.TgZ(4,"div",1),e.YNc(5,z,2,3,"ng-container",2),e.YNc(6,M,2,3,"ng-container",2),e.YNc(7,h,2,5,"ng-container",2),e.YNc(8,v,2,3,"ng-container",2),e.YNc(9,d,2,0,"ng-container",3),e.qZA()),2&x&&(e.xp6(1),e.hij(" ",D.i.label," "),e.xp6(2),e.Oqu(D.i.tip),e.xp6(1),e.Q6J("ngSwitch",D.i.type),e.xp6(1),e.Q6J("ngSwitchCase","color"),e.xp6(1),e.Q6J("ngSwitchCase","input"),e.xp6(1),e.Q6J("ngSwitchCase","px"),e.xp6(1),e.Q6J("ngSwitchCase","switch"))},dependencies:[n.RF,n.n9,n.ED,t.Fj,t.JJ,t.On,i.SQ,l.i,C.Zp,E._V],encapsulation:2})}return f})()},52500:(nt,I,o)=>{"use strict";o.d(I,{w:()=>H});var e=o(49671),n=o(97582),t=o(96814),i=o(65879),l=o(71993),C=o(24593),E=o(74648),u=o(64115);const z="alain-default-vars",M=[{key:"dust",color:"#F5222D"},{key:"volcano",color:"#FA541C"},{key:"sunset",color:"#FAAD14"},{key:"cyan",color:"#13C2C2"},{key:"green",color:"#52C41A"},{key:"daybreak",color:"#1890ff"},{key:"geekblue",color:"#2F54EB"},{key:"purple",color:"#722ED1"},{key:"black",color:"#001529"}],h={"primary-color":{label:"\u4e3b\u989c\u8272",type:"color",default:"#1890ff"},"alain-default-header-hg":{label:"\u9ad8",type:"px",default:"64px",max:300,min:24},"alain-default-header-bg":{label:"\u80cc\u666f\u8272",type:"color",default:"@primary-color",tip:"\u9ed8\u8ba4\u540c\u4e3b\u8272\u7cfb"},"alain-default-header-padding":{label:"\u9876\u90e8\u5de6\u53f3\u5185\u8fb9\u8ddd",type:"px",default:"16px"},"alain-default-aside-wd":{label:"\u5bbd\u5ea6",type:"px",default:"200px"},"alain-default-aside-bg":{label:"\u80cc\u666f",type:"color",default:"#ffffff"},"alain-default-aside-collapsed-wd":{label:"\u6536\u7f29\u5bbd\u5ea6",type:"px",default:"64px"},"alain-default-aside-nav-padding-top-bottom":{label:"\u9879\u4e0a\u4e0b\u5185\u8fb9\u8ddd",type:"px",default:"8px",step:8},"alain-default-aside-nav-fs":{label:"\u83dc\u5355\u5b57\u53f7",type:"px",default:"14px",min:14,max:30},"alain-default-aside-collapsed-nav-fs":{label:"\u6536\u7f29\u83dc\u5355\u5b57\u53f7",type:"px",default:"24px",min:24,max:32},"alain-default-aside-nav-item-height":{label:"\u83dc\u5355\u9879\u9ad8\u5ea6",type:"px",default:"38px",min:24,max:64},"alain-default-aside-nav-text-color":{label:"\u83dc\u5355\u6587\u672c\u989c\u8272",type:"color",default:"rgba(0, 0, 0, 0.65)",rgba:!0},"alain-default-aside-nav-text-hover-color":{label:"\u83dc\u5355\u6587\u672c\u60ac\u505c\u989c\u8272",type:"color",default:"@primary-color",tip:"\u9ed8\u8ba4\u540c\u4e3b\u8272\u7cfb"},"alain-default-aside-nav-group-text-color":{label:"\u83dc\u5355\u5206\u7ec4\u6587\u672c\u989c\u8272",type:"color",default:"rgba(0, 0, 0, 0.43)",rgba:!0},"alain-default-aside-nav-selected-text-color":{label:"\u83dc\u5355\u6fc0\u6d3b\u65f6\u6587\u672c\u989c\u8272",type:"color",default:"@primary-color",tip:"\u9ed8\u8ba4\u540c\u4e3b\u8272\u7cfb"},"alain-default-aside-nav-selected-bg":{label:"\u83dc\u5355\u6fc0\u6d3b\u65f6\u80cc\u666f\u989c\u8272",type:"color",default:"#fcfcfc"},"alain-default-content-bg":{label:"\u80cc\u666f\u8272",type:"color",default:"#f5f7fa"},"alain-default-content-heading-bg":{label:"\u6807\u9898\u80cc\u666f\u8272",type:"color",default:"#fafbfc"},"alain-default-content-heading-border":{label:"\u6807\u9898\u5e95\u90e8\u8fb9\u6846\u8272",type:"color",default:"#efe3e5"},"alain-default-content-padding":{label:"\u5185\u8fb9\u8ddd",type:"px",default:"24px",min:0,max:128,step:8},"form-state-visual-feedback-enabled":{label:"\u5f00\u542f\u8868\u5355\u5143\u7d20\u7684\u89c6\u89c9\u53cd\u9988",type:"switch",default:!0},"preserve-white-spaces-enabled":{label:"\u5f00\u542f preserveWhitespaces",type:"switch",default:!0},"nz-table-img-radius":{label:"\u8868\u683c\u4e2d\uff1a\u56fe\u7247\u5706\u89d2",type:"px",default:"4px",min:0,max:128},"nz-table-img-margin-right":{label:"\u8868\u683c\u4e2d\uff1a\u56fe\u7247\u53f3\u5916\u8fb9\u8ddd",type:"px",default:"4px",min:0,max:128},"nz-table-img-max-width":{label:"\u8868\u683c\u4e2d\uff1a\u56fe\u7247\u6700\u5927\u5bbd\u5ea6",type:"px",default:"32px",min:8,max:128},"nz-table-img-max-height":{label:"\u8868\u683c\u4e2d\uff1a\u56fe\u7247\u6700\u5927\u9ad8\u5ea6",type:"px",default:"32px",min:8,max:128}};var v=o(43460),g=o(980),d=o(49388),p=o(60095),f=o(43389),y=o(96109),T=o(66987),x=o(79382),D=o(96494),_=o(93903),P=o(90551),O=o(42840),A=o(70855),k=o(41958),F=o(60662);function W(j,te){1&j&&i._UZ(0,"i",21)}const K=function(j){return{"background-color":j}};function _e(j,te){if(1&j){const ne=i.EpF();i.TgZ(0,"span",19),i.NdJ("click",function(){const be=i.CHM(ne).$implicit,le=i.oxw(2);return i.KtG(le.changeColor(be.color))}),i.YNc(1,W,1,0,"i",20),i.qZA()}if(2&j){const ne=te.$implicit,pe=i.oxw(2);i.Akn(i.VKq(4,K,ne.color)),i.Q6J("nzTooltipTitle",ne.key),i.xp6(1),i.Q6J("ngIf",pe.color===ne.color)}}function Y(j,te){if(1&j){const ne=i.EpF();i.TgZ(0,"div",4)(1,"div",5)(2,"h3",6),i._uU(3,"\u4e3b\u9898\u8272"),i.qZA(),i.YNc(4,_e,2,6,"span",7),i.qZA(),i._UZ(5,"nz-divider"),i.TgZ(6,"div",8)(7,"h3",6),i._uU(8,"\u8bbe\u7f6e"),i.qZA(),i.TgZ(9,"nz-tabset")(10,"nz-tab",9)(11,"div",8),i._UZ(12,"setting-drawer-item",10)(13,"setting-drawer-item",10)(14,"setting-drawer-item",10),i.qZA()(),i.TgZ(15,"nz-tab",11),i._UZ(16,"setting-drawer-item",10)(17,"setting-drawer-item",10)(18,"setting-drawer-item",10)(19,"setting-drawer-item",10),i.qZA(),i.TgZ(20,"nz-tab",12),i._UZ(21,"setting-drawer-item",10)(22,"setting-drawer-item",10)(23,"setting-drawer-item",10)(24,"setting-drawer-item",10),i.qZA(),i.TgZ(25,"nz-tab",13),i._UZ(26,"setting-drawer-item",10)(27,"setting-drawer-item",10)(28,"setting-drawer-item",10)(29,"setting-drawer-item",10)(30,"setting-drawer-item",10)(31,"setting-drawer-item",10),i.qZA()()(),i._UZ(32,"nz-divider"),i.TgZ(33,"div",8)(34,"div",14),i._uU(35," \u56fa\u5b9a\u5934\u548c\u4fa7\u8fb9\u680f "),i.TgZ(36,"nz-switch",15),i.NdJ("ngModelChange",function(re){i.CHM(ne);const be=i.oxw();return i.KtG(be.layout.fixed=re)})("ngModelChange",function(){i.CHM(ne);const re=i.oxw();return i.KtG(re.setLayout("fixed",re.layout.fixed))}),i.qZA()(),i.TgZ(37,"div",14),i._uU(38," \u8272\u5f31\u6a21\u5f0f "),i.TgZ(39,"nz-switch",15),i.NdJ("ngModelChange",function(re){i.CHM(ne);const be=i.oxw();return i.KtG(be.layout.colorWeak=re)})("ngModelChange",function(){i.CHM(ne);const re=i.oxw();return i.KtG(re.setLayout("colorWeak",re.layout.colorWeak))}),i.qZA()()(),i._UZ(40,"nz-divider"),i.TgZ(41,"button",16),i.NdJ("click",function(){i.CHM(ne);const re=i.oxw();return i.KtG(re.apply())}),i._uU(42,"\u9884\u89c8"),i.qZA(),i.TgZ(43,"button",17),i.NdJ("click",function(){i.CHM(ne);const re=i.oxw();return i.KtG(re.reset())}),i._uU(44,"\u91cd\u7f6e"),i.qZA(),i.TgZ(45,"button",17),i.NdJ("click",function(){i.CHM(ne);const re=i.oxw();return i.KtG(re.copyVar())}),i._uU(46,"\u62f7\u8d1d"),i.qZA(),i._UZ(47,"nz-alert",18),i.qZA()}if(2&j){const ne=i.oxw();i.xp6(4),i.Q6J("ngForOf",ne.colors),i.xp6(8),i.Q6J("data",ne.data["alain-default-header-hg"]),i.xp6(1),i.Q6J("data",ne.data["alain-default-header-bg"]),i.xp6(1),i.Q6J("data",ne.data["alain-default-header-padding"]),i.xp6(2),i.Q6J("data",ne.data["alain-default-aside-wd"]),i.xp6(1),i.Q6J("data",ne.data["alain-default-aside-bg"]),i.xp6(1),i.Q6J("data",ne.data["alain-default-aside-collapsed-wd"]),i.xp6(1),i.Q6J("data",ne.data["alain-default-aside-nav-padding-top-bottom"]),i.xp6(2),i.Q6J("data",ne.data["alain-default-content-bg"]),i.xp6(1),i.Q6J("data",ne.data["alain-default-content-heading-bg"]),i.xp6(1),i.Q6J("data",ne.data["alain-default-content-heading-border"]),i.xp6(1),i.Q6J("data",ne.data["alain-default-content-padding"]),i.xp6(2),i.Q6J("data",ne.data["form-state-visual-feedback-enabled"]),i.xp6(1),i.Q6J("data",ne.data["preserve-white-spaces-enabled"]),i.xp6(1),i.Q6J("data",ne.data["nz-table-img-radius"]),i.xp6(1),i.Q6J("data",ne.data["nz-table-img-margin-right"]),i.xp6(1),i.Q6J("data",ne.data["nz-table-img-max-width"]),i.xp6(1),i.Q6J("data",ne.data["nz-table-img-max-height"]),i.xp6(5),i.Q6J("ngModel",ne.layout.fixed),i.xp6(3),i.Q6J("ngModel",ne.layout.colorWeak)}}const G=function(j){return{"setting-drawer__handle-opened":j}};class H{get layout(){return this.settingSrv.layout}constructor(te,ne,pe,re,be,le,ce){this.cdr=te,this.msg=ne,this.settingSrv=pe,this.lazy=re,this.ngZone=be,this.doc=le,this.directionality=ce,this.autoApplyColor=!0,this.compilingText="Compiling...",this.devTips="When the color can't be switched, you need to run it once: npm run color-less",this.lessJs="https://cdn.jsdelivr.net/npm/less",this.loadedLess=!1,this.dir$=this.directionality.change?.pipe((0,l.sL)()),this.dir="ltr",this.isDev=(0,i.X6Q)(),this.collapse=!1,this.data={},this.colors=M,this.color=this.cachedData["@primary-color"]||this.DEFAULT_PRIMARY,this.resetData(this.cachedData,!1)}get cachedData(){return this.settingSrv.layout[z]||{}}get DEFAULT_PRIMARY(){return h["primary-color"].default}ngOnInit(){this.dir=this.directionality.value,this.dir$.subscribe(te=>{this.dir=te,this.cdr.detectChanges()}),this.autoApplyColor&&this.color!==this.DEFAULT_PRIMARY&&(this.changeColor(this.color),this.runLess())}loadLess(){var te=this;return(0,e.Z)(function*(){return te.loadedLess?Promise.resolve():te.lazy.loadStyle("./assets/color.less",{rel:"stylesheet/less"}).then(()=>{const ne=te.doc.createElement("script");ne.innerHTML="\n window.less = {\n async: true,\n env: 'production',\n javascriptEnabled: true\n };\n ",te.doc.body.appendChild(ne)}).then(()=>te.lazy.loadScript(te.lessJs)).then(()=>{te.loadedLess=!0})})()}genVars(){const{data:te,color:ne,validKeys:pe}=this,re={"@primary-color":ne};return pe.filter(be=>"primary-color"!==be).forEach(be=>re[`@${be}`]=te[be].value),this.setLayout(z,re),re}runLess(){const{ngZone:te,msg:ne,cdr:pe}=this,re=ne.loading(this.compilingText,{nzDuration:0}).messageId;setTimeout(()=>{this.loadLess().then(()=>{window.less.modifyVars(this.genVars()).then(()=>{ne.success("\u6210\u529f"),ne.remove(re),te.run(()=>pe.detectChanges())})})},200)}toggle(){this.collapse=!this.collapse}changeColor(te){this.color=te,Object.keys(h).filter(ne=>"@primary-color"===h[ne].default).forEach(ne=>delete this.cachedData[`@${ne}`]),this.resetData(this.cachedData,!1)}setLayout(te,ne){this.settingSrv.setLayout(te,ne)}resetData(te,ne=!0){te=te||{};const pe=(0,u.p$)(h);Object.keys(pe).forEach(re=>{const be=te[`@${re}`]||pe[re].default||"";pe[re].value="@primary-color"===be?this.color:be}),this.data=pe,ne&&(this.cdr.detectChanges(),this.runLess())}get validKeys(){return Object.keys(this.data).filter(te=>this.data[te].value!==this.data[te].default)}apply(){this.runLess()}reset(){this.color=this.DEFAULT_PRIMARY,this.settingSrv.setLayout(z,{}),this.resetData({})}copyVar(){const te=this.genVars(),ne=Object.keys(te).map(pe=>`${pe}: ${te[pe]};`).join("\n");(0,C.J)(ne),this.msg.success("Copy success")}static#e=this.\u0275fac=function(ne){return new(ne||H)(i.Y36(i.sBO),i.Y36(v.dD),i.Y36(g.gb),i.Y36(u.Df),i.Y36(i.R0b),i.Y36(t.K0),i.Y36(d.Is,8))};static#t=this.\u0275cmp=i.Xpm({type:H,selectors:[["setting-drawer"]],hostVars:4,hostBindings:function(ne,pe){2&ne&&i.ekj("setting-drawer",!0)("setting-drawer-rtl","rtl"===pe.dir)},inputs:{autoApplyColor:"autoApplyColor",compilingText:"compilingText",devTips:"devTips",lessJs:"lessJs"},decls:4,vars:8,consts:[[3,"nzVisible","nzPlacement","nzWidth","nzOnClose"],["class","setting-drawer__content",4,"nzDrawerContent"],["nz-tooltip","",1,"setting-drawer__handle",3,"ngClass","nzTooltipTitle","click"],["nz-icon","",1,"setting-drawer__handle-icon",3,"nzType"],[1,"setting-drawer__content"],[1,"setting-drawer__body","setting-drawer__theme"],[1,"setting-drawer__title"],["nz-tooltip","","class","setting-drawer__theme-tag",3,"style","nzTooltipTitle","click",4,"ngFor","ngForOf"],[1,"setting-drawer__body"],["nzTitle","\u9876\u90e8"],[3,"data"],["nzTitle","\u4fa7\u8fb9\u680f"],["nzTitle","\u5185\u5bb9"],["nzTitle","\u5176\u5b83"],[1,"setting-drawer__body-item"],["nzSize","small",3,"ngModel","ngModelChange"],["type","button","nz-button","","nzType","primary",3,"click"],["type","button","nz-button","",3,"click"],["nzType","warning","nzMessage","\u914d\u7f6e\u680f\u53ea\u5728\u5f00\u53d1\u73af\u5883\u7528\u4e8e\u9884\u89c8\uff0c\u751f\u4ea7\u73af\u5883\u4e0d\u4f1a\u5c55\u73b0\uff0c\u8bf7\u62f7\u8d1d\u540e\u624b\u52a8\u4fee\u6539\u53c2\u6570\u914d\u7f6e\u6587\u4ef6 src/styles/theme.less",1,"mt-md"],["nz-tooltip","",1,"setting-drawer__theme-tag",3,"nzTooltipTitle","click"],["nz-icon","","nzType","check",4,"ngIf"],["nz-icon","","nzType","check"]],template:function(ne,pe){1&ne&&(i.TgZ(0,"nz-drawer",0),i.NdJ("nzOnClose",function(){return pe.toggle()}),i.YNc(1,Y,48,20,"div",1),i.qZA(),i.TgZ(2,"div",2),i.NdJ("click",function(){return pe.toggle()}),i._UZ(3,"i",3),i.qZA()),2&ne&&(i.Q6J("nzVisible",pe.collapse)("nzPlacement","rtl"===pe.dir?"left":"right")("nzWidth",500),i.xp6(2),i.Q6J("ngClass",i.VKq(6,G,pe.collapse))("nzTooltipTitle",pe.isDev?pe.devTips:null),i.xp6(1),i.Q6J("nzType",pe.collapse?"close":"setting"))},dependencies:[t.mk,t.sg,t.O5,p.JJ,p.On,f.Vz,f.SQ,y.SY,T.g,x.xH,x.xw,D.i,_.r,P.Ls,O.ix,A.w,k.dQ,F.Z],encapsulation:2,changeDetection:0})}(0,n.gn)([(0,E.yF)()],H.prototype,"autoApplyColor",void 0),(0,n.gn)([(0,E.EA)()],H.prototype,"loadLess",null),(0,n.gn)([(0,E.EA)()],H.prototype,"runLess",null)},47285:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>e});const e={abbr:"zh-CN",exception:{403:"\u62b1\u6b49\uff0c\u4f60\u65e0\u6743\u8bbf\u95ee\u8be5\u9875\u9762",404:"\u62b1\u6b49\uff0c\u4f60\u8bbf\u95ee\u7684\u9875\u9762\u4e0d\u5b58\u5728",500:"\u62b1\u6b49\uff0c\u670d\u52a1\u5668\u51fa\u9519\u4e86",backToHome:"\u8fd4\u56de\u9996\u9875"},noticeIcon:{emptyText:"\u6682\u65e0\u6570\u636e",clearText:"\u6e05\u7a7a"},reuseTab:{close:"\u5173\u95ed\u6807\u7b7e",closeOther:"\u5173\u95ed\u5176\u5b83\u6807\u7b7e",closeRight:"\u5173\u95ed\u53f3\u4fa7\u6807\u7b7e",refresh:"\u5237\u65b0"},tagSelect:{expand:"\u5c55\u5f00",collapse:"\u6536\u8d77"},miniProgress:{target:"\u76ee\u6807\u503c\uff1a"},st:{total:"\u5171 {{total}} \u6761",filterConfirm:"\u786e\u5b9a",filterReset:"\u91cd\u7f6e"},sf:{submit:"\u63d0\u4ea4",reset:"\u91cd\u7f6e",search:"\u641c\u7d22",edit:"\u4fdd\u5b58",addText:"\u6dfb\u52a0",removeText:"\u79fb\u9664",checkAllText:"\u5168\u9009",error:{"false schema":"\u5e03\u5c14\u6a21\u5f0f\u51fa\u9519",$ref:"\u65e0\u6cd5\u627e\u5230\u5f15\u7528{ref}",additionalItems:"\u4e0d\u5141\u8bb8\u8d85\u8fc7{limit}\u4e2a\u5143\u7d20",additionalProperties:"\u4e0d\u5141\u8bb8\u6709\u989d\u5916\u7684\u5c5e\u6027",anyOf:"\u6570\u636e\u5e94\u4e3a anyOf \u6240\u6307\u5b9a\u7684\u5176\u4e2d\u4e00\u4e2a",dependencies:"\u5e94\u5f53\u62e5\u6709\u5c5e\u6027{property}\u7684\u4f9d\u8d56\u5c5e\u6027{deps}",enum:"\u5e94\u5f53\u662f\u9884\u8bbe\u5b9a\u7684\u679a\u4e3e\u503c\u4e4b\u4e00",format:"\u683c\u5f0f\u4e0d\u6b63\u786e",type:"\u7c7b\u578b\u5e94\u5f53\u662f {type}",required:"\u5fc5\u586b\u9879",maxLength:"\u81f3\u591a {limit} \u4e2a\u5b57\u7b26",minLength:"\u81f3\u5c11 {limit} \u4e2a\u5b57\u7b26\u4ee5\u4e0a",minimum:"\u5fc5\u987b {comparison}{limit}",formatMinimum:"\u5fc5\u987b {comparison}{limit}",maximum:"\u5fc5\u987b {comparison}{limit}",formatMaximum:"\u5fc5\u987b {comparison}{limit}",maxItems:"\u4e0d\u5e94\u591a\u4e8e {limit} \u4e2a\u9879",minItems:"\u4e0d\u5e94\u5c11\u4e8e {limit} \u4e2a\u9879",maxProperties:"\u4e0d\u5e94\u591a\u4e8e {limit} \u4e2a\u5c5e\u6027",minProperties:"\u4e0d\u5e94\u5c11\u4e8e {limit} \u4e2a\u5c5e\u6027",multipleOf:"\u5e94\u5f53\u662f {multipleOf} \u7684\u6574\u6570\u500d",not:'\u4e0d\u5e94\u5f53\u5339\u914d "not" schema',oneOf:'\u53ea\u80fd\u5339\u914d\u4e00\u4e2a "oneOf" \u4e2d\u7684 schema',pattern:"\u6570\u636e\u683c\u5f0f\u4e0d\u6b63\u786e",uniqueItems:"\u4e0d\u5e94\u5f53\u542b\u6709\u91cd\u590d\u9879 (\u7b2c {j} \u9879\u4e0e\u7b2c {i} \u9879\u662f\u91cd\u590d\u7684)",custom:"\u683c\u5f0f\u4e0d\u6b63\u786e",propertyNames:'\u5c5e\u6027\u540d "{propertyName}" \u65e0\u6548',patternRequired:"\u5e94\u5f53\u6709\u5c5e\u6027\u5339\u914d\u6a21\u5f0f {missingPattern}",switch:'\u7531\u4e8e {caseIndex} \u5931\u8d25\uff0c\u672a\u901a\u8fc7 "switch" \u6821\u9a8c',const:"\u5e94\u5f53\u7b49\u4e8e\u5e38\u91cf",contains:"\u5e94\u5f53\u5305\u542b\u4e00\u4e2a\u6709\u6548\u9879",formatExclusiveMaximum:"formatExclusiveMaximum \u5e94\u5f53\u662f\u5e03\u5c14\u503c",formatExclusiveMinimum:"formatExclusiveMinimum \u5e94\u5f53\u662f\u5e03\u5c14\u503c",if:'\u5e94\u5f53\u5339\u914d\u6a21\u5f0f "{failingKeyword}"'}},onboarding:{skip:"\u8df3\u8fc7",prev:"\u4e0a\u4e00\u9879",next:"\u4e0b\u4e00\u9879",done:"\u5b8c\u6210"}}},55379:(nt,I,o)=>{"use strict";o.d(I,{l:()=>l});var e=o(47285),n=o(35227),t=o(15851),i=o(65879);let l=(()=>{class C{static#e=this.\u0275fac=function(z){return new(z||C)};static#t=this.\u0275mod=i.oAB({type:C});static#n=this.\u0275inj=i.cJS({providers:[{provide:t.O,useValue:e.Z},n.uu]})}return C})()},35227:(nt,I,o)=>{"use strict";o.d(I,{s7:()=>l,uu:()=>E});var e=o(65879),n=o(65619),t=o(47285),i=o(15851);let l=(()=>{class u{constructor(M){this._locale=t.Z,this.change$=new n.X(this._locale),this.setLocale(M||t.Z)}get change(){return this.change$.asObservable()}setLocale(M){this._locale&&this._locale.abbr===M.abbr||(this._locale=M,this.change$.next(M))}get locale(){return this._locale}getData(M){return this._locale[M]||{}}static#e=this.\u0275fac=function(h){return new(h||u)(e.LFG(i.O))};static#t=this.\u0275prov=e.Yz7({token:u,factory:u.\u0275fac})}return u})();const E={provide:l,useFactory:function C(u,z){return u||new l(z)},deps:[[new e.FiY,new e.tp0,l],i.O]}},15851:(nt,I,o)=>{"use strict";o.d(I,{O:()=>n});const n=new(o(65879).OlP)("delon-locale")},72745:(nt,I,o)=>{"use strict";o.d(I,{u:()=>i});var e=o(60325),n=o(65879),t=o(12131);let i=(()=>{class l{constructor(E){this.nzI18n=E}transform(E,u="yyyy-MM-dd HH:mm"){return(0,e.p6)(E,u,this.nzI18n.getDateLocale())}static#e=this.\u0275fac=function(u){return new(u||l)(n.Y36(t.wi,16))};static#t=this.\u0275pipe=n.Yjl({name:"_date",type:l,pure:!0})}return l})()},96806:(nt,I,o)=>{"use strict";o.d(I,{f:()=>u,yn:()=>E});var e=o(65879),n=o(6593);const t='',i='',l='class="yn__yes"',C='class="yn__no"';function E(z,M){let h="",{yes:v,no:g,mode:d}={...M};switch(v=v||"\u662f",g=g||"\u5426",d){case"full":h=z?`${t}${v}`:`${i}${g}`;break;case"text":h=z?`${v}`:`${g}`;break;default:h=z?`${t}`:`${i}`}return h}let u=(()=>{class z{constructor(h){this.dom=h}transform(h,v,g,d,p=!0){const f=E(h,{yes:v,no:g,mode:d});return p?this.dom.bypassSecurityTrustHtml(f):f}static#e=this.\u0275fac=function(v){return new(v||z)(e.Y36(n.H7,16))};static#t=this.\u0275pipe=e.Yjl({name:"yn",type:z,pure:!0})}return z})()},80563:(nt,I,o)=>{"use strict";o.d(I,{h:()=>l});var e=o(65592),n=o(64115),t=o(65879),i=o(43389);let l=(()=>{class C{get openDrawers(){return this.parentDrawer?this.parentDrawer.openDrawers:this.openDrawersAtThisLevel}constructor(u,z){this.srv=u,this.parentDrawer=z,this.openDrawersAtThisLevel=[]}create(u,z,M,h){return h=(0,n.RH)({size:"md",footer:!0,footerHeight:50,exact:!0,drawerOptions:{nzPlacement:"right",nzWrapClassName:""}},h),new e.y(v=>{const{size:g,footer:d,footerHeight:p,drawerOptions:f}=h,y={nzContent:z,nzContentParams:M,nzTitle:u};"number"==typeof g?y["top"===f.nzPlacement||"bottom"===f.nzPlacement?"nzHeight":"nzWidth"]=h.size:f.nzWidth||(y.nzWrapClassName=`${f.nzWrapClassName} drawer-${h.size}`.trim(),delete f.nzWrapClassName),d&&(y.nzBodyStyle={"padding-bottom.px":p+24});const T=this.srv.create({...y,...f});this.openDrawers.push(T);const x=T.afterClose.subscribe(D=>{!0===h.exact?null!=D&&v.next(D):v.next(D),v.complete(),x.unsubscribe(),this.close(T)})})}close(u){const z=this.openDrawers.indexOf(u);-1!==z&&this.openDrawers.splice(z,1)}closeAll(){let u=this.openDrawers.length;for(;u--;)this.openDrawers[u].close()}static(u,z,M,h){const v={nzMaskClosable:!1,...h&&h.drawerOptions};return this.create(u,z,M,{...h,drawerOptions:v})}static#e=this.\u0275fac=function(z){return new(z||C)(t.LFG(i.ai),t.LFG(C,12))};static#t=this.\u0275prov=t.Yz7({token:C,factory:C.\u0275fac,providedIn:"root"})}return C})()},63123:(nt,I,o)=>{"use strict";o.d(I,{C:()=>t});var e=o(57447),n=o(65879);let t=(()=>{class i{constructor(C){this.i18n=C}transform(C,E){return this.i18n.fanyi(C,E)}static#e=this.\u0275fac=function(E){return new(E||i)(n.Y36(e.Oi,16))};static#t=this.\u0275pipe=n.Yjl({name:"i18n",type:i,pure:!0})}return i})()},57447:(nt,I,o)=>{"use strict";o.d(I,{BQ:()=>C,Oi:()=>l});var e=o(65879),n=o(32181),t=o(65619),i=o(78967);const l=new e.OlP("alainI18nToken",{providedIn:"root",factory:()=>new E((0,e.f3M)(i.Ri))});let C=(()=>{class u{get change(){return this._change$.asObservable().pipe((0,n.h)(M=>null!=M))}get defaultLang(){return this._defaultLang}get currentLang(){return this._currentLang}get data(){return this._data}constructor(M){this._change$=new t.X(null),this._currentLang="",this._defaultLang="",this._data={},this.cog=M.merge("themeI18n",{interpolation:["{{","}}"]})}flatData(M,h){const v={};for(const g of Object.keys(M)){const d=M[g];if("object"==typeof d){const p=this.flatData(d,h.concat(g));Object.keys(p).forEach(f=>v[f]=p[f])}else v[(g?h.concat(g):h).join(".")]=`${d}`}return v}fanyi(M,h){let v=this._data[M]||"";if(!v)return M;if(h){const g=this.cog.interpolation;Object.keys(h).forEach(d=>v=v.replace(new RegExp(`${g[0]}s?${d}s?${g[1]}`,"g"),`${h[d]}`))}return v}static#e=this.\u0275fac=function(h){return new(h||u)(e.LFG(i.Ri))};static#t=this.\u0275prov=e.Yz7({token:u,factory:u.\u0275fac})}return u})(),E=(()=>{class u extends C{use(M,h){this._data=this.flatData(h??{},[]),this._currentLang=M,this._change$.next(M)}getLangs(){return[]}static#e=this.\u0275fac=function(){let M;return function(v){return(M||(M=e.n5z(u)))(v||u)}}();static#t=this.\u0275prov=e.Yz7({token:u,factory:u.\u0275fac,providedIn:"root"})}return u})()},74856:(nt,I,o)=>{"use strict";o.d(I,{T:()=>M});var e=o(96814),n=o(65592),t=o(48180),i=o(32181),l=o(64115),C=o(65879),E=o(81221),u=o(34423);const z="MODAL-DRAG";let M=(()=>{class h{constructor(g,d,p){this.srv=g,this.drag=d,this.document=p}createDragRef(g,d){const p=this.document.querySelector(d),f=p.firstChild,y=g.handleCls?p.querySelector(g.handleCls):null;return y&&y.classList.add(`${z}-HANDLE`),this.drag.createDrag(y??f).withHandles([y??f]).withBoundaryElement(p).withRootElement(f)}create(g,d,p){return p=(0,l.RH)({size:"lg",exact:!0,includeTabs:!1},p),new n.y(f=>{const{size:y,includeTabs:T,modalOptions:x,drag:D,useNzData:_}=p;let P=[],O="";y&&("number"==typeof y?O=`${y}px`:["sm","md","lg","xl"].includes(y)?P.push(`modal-${y}`):O=y),T&&P.push("modal-include-tabs"),x&&x.nzWrapClassName&&(P.push(x.nzWrapClassName),delete x.nzWrapClassName);let A,F,k=`${z}-${+new Date}`;null!=D&&!1!==D&&(A={handleCls:".modal-header, .ant-modal-title",..."object"==typeof D?D:{}},P.push(z,k));const W=this.srv.create({nzWrapClassName:P.join(" "),nzContent:g,nzWidth:O||void 0,nzFooter:null,nzData:d,...x});!0!==_&&Object.assign(W.componentInstance,d),W.afterOpen.pipe((0,t.q)(1),(0,i.h)(()=>null!=A)).subscribe(()=>{F=this.createDragRef(A,`.${k}`)}),W.afterClose.pipe((0,t.q)(1)).subscribe(K=>{!0===p.exact?null!=K&&f.next(K):f.next(K),f.complete(),F?.dispose()})})}createStatic(g,d,p){const f={nzMaskClosable:!1,...p&&p.modalOptions};return this.create(g,d,{...p,modalOptions:f})}static#e=this.\u0275fac=function(d){return new(d||h)(C.LFG(E.Sf),C.LFG(u.v0),C.LFG(e.K0))};static#t=this.\u0275prov=C.Yz7({token:h,factory:h.\u0275fac,providedIn:"root"})}return h})()},78908:(nt,I,o)=>{"use strict";o.d(I,{N:()=>i,g:()=>l});var e=o(65879),n=o(78645),t=o(62831);const i=new e.OlP("ALAIN_SETTING_KEYS");let l=(()=>{class C{constructor(u,z){this.platform=u,this.KEYS=z,this.notify$=new n.x,this._app=null,this._user=null,this._layout=null}getData(u){return this.platform.isBrowser&&JSON.parse(localStorage.getItem(u)||"null")||null}setData(u,z){this.platform.isBrowser&&localStorage.setItem(u,JSON.stringify(z))}get layout(){return this._layout||(this._layout={fixed:!0,collapsed:!1,boxed:!1,lang:null,...this.getData(this.KEYS.layout)},this.setData(this.KEYS.layout,this._layout)),this._layout}get app(){return this._app||(this._app={year:(new Date).getFullYear(),...this.getData(this.KEYS.app)},this.setData(this.KEYS.app,this._app)),this._app}get user(){return this._user||(this._user={...this.getData(this.KEYS.user)},this.setData(this.KEYS.user,this._user)),this._user}get notify(){return this.notify$.asObservable()}setLayout(u,z){return"string"==typeof u?this.layout[u]=z:this._layout=u,this.setData(this.KEYS.layout,this._layout),this.notify$.next({type:"layout",name:u,value:z}),!0}getLayout(){return this._layout}setApp(u){this._app=u,this.setData(this.KEYS.app,u),this.notify$.next({type:"app",value:u})}getApp(){return this._app}setUser(u){this._user=u,this.setData(this.KEYS.user,u),this.notify$.next({type:"user",value:u})}getUser(){return this._user}static#e=this.\u0275fac=function(z){return new(z||C)(e.LFG(t.t4),e.LFG(i))};static#t=this.\u0275prov=e.Yz7({token:C,factory:C.\u0275fac,providedIn:"root"})}return C})()},58593:(nt,I,o)=>{"use strict";o.d(I,{p:()=>P});var e=o(33651),n=o(96814),t=o(52787),i=o(14715),l=o(12131),C=o(55379),u=(o(72745),o(65879));o(6593),o(96806),o(63123);var p=o(80563),f=o(74856),y=o(78908),T=o(90551);const x=[f.T,p.h],_=[i.OeK,i.vkb,i.zdJ,i.irO];let P=(()=>{class O{constructor(k){k.addIcon(..._)}static forRoot(){return{ngModule:O,providers:x}}static forChild(){return{ngModule:O,providers:x}}static#e=this.\u0275fac=function(F){return new(F||O)(u.LFG(T.H5))};static#t=this.\u0275mod=u.oAB({type:O});static#n=this.\u0275inj=u.cJS({providers:[{provide:y.N,useValue:{layout:"layout",user:"user",app:"app"}}],imports:[n.ez,t.Bz,e.U8,l.YI,C.l]})}return O})()},22945:(nt,I,o)=>{"use strict";o.d(I,{f:()=>v,w:()=>h});var e=o(96814),n=o(65879),t=o(71993),i=o(78967),l=o(62831),C=o(49388),E=o(73460),u=o(62787),z=o(96109);function M(g,d){if(1&g){const p=n.EpF();n.TgZ(0,"li",8),n.NdJ("click",function(){const T=n.CHM(p).$implicit,x=n.oxw();return n.KtG(x.onThemeChange(T.key))}),n._uU(1),n.qZA()}if(2&g){const p=d.$implicit;n.xp6(1),n.Oqu(p.text)}}const h=new n.OlP("ALAIN_THEME_BTN_KEYS");let v=(()=>{class g{constructor(p,f,y,T,x,D,_){this.renderer=p,this.configSrv=f,this.platform=y,this.doc=T,this.directionality=x,this.KEYS=D,this.cdr=_,this.theme="default",this.isDev=(0,n.X6Q)(),this.types=[{key:"default",text:"Default Theme"},{key:"dark",text:"Dark Theme"},{key:"compact",text:"Compact Theme"}],this.devTips="When the dark.css file can't be found, you need to run it once: npm run theme",this.deployUrl="",this.themeChange=new n.vpe,this.dir$=this.directionality.change?.pipe((0,t.sL)()),this.dir="ltr"}ngOnInit(){this.dir=this.directionality.value,this.dir$.subscribe(p=>{this.dir=p,this.cdr.detectChanges()}),this.initTheme()}initTheme(){this.platform.isBrowser&&(this.theme=localStorage.getItem(this.KEYS)||"default",this.updateChartTheme(),this.onThemeChange(this.theme))}updateChartTheme(){this.configSrv.set("chart",{theme:"dark"===this.theme?"dark":""})}onThemeChange(p){if(!this.platform.isBrowser)return;this.theme=p,this.themeChange.emit(p),this.renderer.setAttribute(this.doc.body,"data-theme",p);const f=this.doc.getElementById(this.KEYS);if(f&&f.remove(),localStorage.removeItem(this.KEYS),"default"!==p){const y=this.doc.createElement("link");y.type="text/css",y.rel="stylesheet",y.id=this.KEYS,y.href=`${this.deployUrl}assets/style.${p}.css`,localStorage.setItem(this.KEYS,p),this.doc.body.append(y)}this.updateChartTheme()}ngOnDestroy(){const p=this.doc.getElementById(this.KEYS);null!=p&&this.doc.body.removeChild(p)}static#e=this.\u0275fac=function(f){return new(f||g)(n.Y36(n.Qsj),n.Y36(i.Ri),n.Y36(l.t4),n.Y36(e.K0),n.Y36(C.Is,8),n.Y36(h),n.Y36(n.sBO))};static#t=this.\u0275cmp=n.Xpm({type:g,selectors:[["theme-btn"]],hostVars:4,hostBindings:function(f,y){2&f&&n.ekj("theme-btn",!0)("theme-btn-rtl","rtl"===y.dir)},inputs:{types:"types",devTips:"devTips",deployUrl:"deployUrl"},outputs:{themeChange:"themeChange"},decls:9,vars:3,consts:[["nz-dropdown","","nzPlacement","topCenter",1,"ant-avatar","ant-avatar-circle","ant-avatar-icon",3,"nzDropdownMenu"],["nz-tooltip","","role","img","width","21","height","21","viewBox","0 0 21 21","fill","currentColor",1,"anticon",3,"nzTooltipTitle"],["fill-rule","evenodd"],["fill-rule","nonzero"],["d","M7.02 3.635l12.518 12.518a1.863 1.863 0 010 2.635l-1.317 1.318a1.863 1.863 0 01-2.635 0L3.068 7.588A2.795 2.795 0 117.02 3.635zm2.09 14.428a.932.932 0 110 1.864.932.932 0 010-1.864zm-.043-9.747L7.75 9.635l9.154 9.153 1.318-1.317-9.154-9.155zM3.52 12.473c.514 0 .931.417.931.931v.932h.932a.932.932 0 110 1.864h-.932v.931a.932.932 0 01-1.863 0l-.001-.931h-.93a.932.932 0 010-1.864h.93v-.932c0-.514.418-.931.933-.931zm15.374-3.727a1.398 1.398 0 110 2.795 1.398 1.398 0 010-2.795zM4.385 4.953a.932.932 0 000 1.317l2.046 2.047L7.75 7 5.703 4.953a.932.932 0 00-1.318 0zM14.701.36a.932.932 0 01.931.932v.931h.932a.932.932 0 010 1.864h-.933l.001.932a.932.932 0 11-1.863 0l-.001-.932h-.93a.932.932 0 110-1.864h.93v-.931a.932.932 0 01.933-.932z"],["menu","nzDropdownMenu"],["nz-menu","","nzSelectable",""],["nz-menu-item","",3,"click",4,"ngFor","ngForOf"],["nz-menu-item","",3,"click"]],template:function(f,y){if(1&f&&(n.TgZ(0,"div",0),n.O4$(),n.TgZ(1,"svg",1)(2,"g",2)(3,"g",3),n._UZ(4,"path",4),n.qZA()()(),n.kcU(),n.TgZ(5,"nz-dropdown-menu",null,5)(7,"ul",6),n.YNc(8,M,2,1,"li",7),n.qZA()()()),2&f){const T=n.MAs(6);n.Q6J("nzDropdownMenu",y.types.length>0?T:null),n.xp6(1),n.Q6J("nzTooltipTitle",y.isDev?y.devTips:null),n.xp6(7),n.Q6J("ngForOf",y.types)}},dependencies:[e.sg,E.wO,E.u9,u.cm,u.RR,z.SY],encapsulation:2,changeDetection:0})}return g})()},24593:(nt,I,o)=>{"use strict";function e(n){return new Promise(t=>{let i=null;try{i=document.createElement("textarea"),i.style.height="0px",i.style.opacity="0",i.style.width="0px",document.body.appendChild(i),i.value=n,i.select(),document.execCommand("copy"),t(n)}finally{i&&i.parentNode&&i.parentNode.removeChild(i)}})}o.d(I,{J:()=>e})},20325:(nt,I,o)=>{"use strict";function e(n){const t=n.childNodes;for(let i=0;ie})},53263:(nt,I,o)=>{"use strict";function t(i,l,C,E=!1){!0===E?l.removeAttribute(i,"class"):function e(i,l,C){Object.keys(l).forEach(E=>C.removeClass(i,E))}(i,C,l),function n(i,l,C){for(const E in l)l[E]&&C.addClass(i,E)}(i,C={...C},l)}o.d(I,{C:()=>t})},78967:(nt,I,o)=>{"use strict";o.d(I,{jq:()=>n,Ri:()=>l});var e=o(65879);const n=new e.OlP("alain-config",{providedIn:"root",factory:function t(){return{}}});var i=o(64115);let l=(()=>{class C{constructor(u){this.config={...u}}get(u,z){const M=this.config[u]||{};return z?{[z]:M[z]}:M}merge(u,...z){return(0,i.Z2)({},!0,...z,this.get(u))}attach(u,z,M){Object.assign(u,this.merge(z,M))}attachKey(u,z,M){Object.assign(u,this.get(z,M))}set(u,z){this.config[u]={...this.config[u],...z}}static#e=this.\u0275fac=function(z){return new(z||C)(e.LFG(n,8))};static#t=this.\u0275prov=e.Yz7({token:C,factory:C.\u0275fac,providedIn:"root"})}return C})()},60325:(nt,I,o)=>{"use strict";o.d(I,{lI:()=>Be,SA:()=>xe,p6:()=>Ye,wb:()=>ae,ZU:()=>Me});var e=o(80356),n=o(68584),t=o(97753),i=o(5227),l=o(40581),C=o(96156),E=o(62816);function u(Re,ct){var Ae,Mt,je,ot,mt,we,de,U;(0,E.Z)(1,arguments);var B=(0,i.j)(),Ee=(0,C.Z)(null!==(Ae=null!==(Mt=null!==(je=null!==(ot=ct?.weekStartsOn)&&void 0!==ot?ot:null==ct||null===(mt=ct.locale)||void 0===mt||null===(we=mt.options)||void 0===we?void 0:we.weekStartsOn)&&void 0!==je?je:B.weekStartsOn)&&void 0!==Mt?Mt:null===(de=B.locale)||void 0===de||null===(U=de.options)||void 0===U?void 0:U.weekStartsOn)&&void 0!==Ae?Ae:0);if(!(Ee>=0&&Ee<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var Ie=(0,l.Z)(Re),Ne=Ie.getDay(),pt=6+(Ne0?[ct,(0,n.Z)(ct,Re)]:[(0,n.Z)(ct,Re),ct]}return Ae?.ignoreMaxTime?je:xe(je)}function xe(Re){return[(0,T.Z)(Re[0]),(0,x.Z)(Re[1])]}function Me(Re,ct){"string"==typeof ct&&(ct={formatString:ct});const{formatString:Ae,defaultValue:Mt}={formatString:"yyyy-MM-dd HH:mm:ss",defaultValue:new Date(NaN),...ct};if(null==Re)return Mt;if(Re instanceof Date)return Re;if("number"==typeof Re||"string"==typeof Re&&/[0-9]{10,13}/.test(Re))return new Date(+Re);let je=function _(Re,ct){var Ae;(0,E.Z)(1,arguments);var Mt=(0,C.Z)(null!==(Ae=ct?.additionalDigits)&&void 0!==Ae?Ae:2);if(2!==Mt&&1!==Mt&&0!==Mt)throw new RangeError("additionalDigits must be 0, 1 or 2");if("string"!=typeof Re&&"[object String]"!==Object.prototype.toString.call(Re))return new Date(NaN);var ot,je=function F(Re){var Mt,ct={},Ae=Re.split(P.dateTimeDelimiter);if(Ae.length>2)return ct;if(/:/.test(Ae[0])?Mt=Ae[0]:(ct.date=Ae[0],Mt=Ae[1],P.timeZoneDelimiter.test(ct.date)&&(ct.date=Re.split(P.timeZoneDelimiter)[0],Mt=Re.substr(ct.date.length,Re.length))),Mt){var je=P.timezone.exec(Mt);je?(ct.time=Mt.replace(je[1],""),ct.timezone=je[1]):ct.time=Mt}return ct}(Re);if(je.date){var mt=function W(Re,ct){var Ae=new RegExp("^(?:(\\d{4}|[+-]\\d{"+(4+ct)+"})|(\\d{2}|[+-]\\d{"+(2+ct)+"})$)"),Mt=Re.match(Ae);if(!Mt)return{year:NaN,restDateString:""};var je=Mt[1]?parseInt(Mt[1]):null,ot=Mt[2]?parseInt(Mt[2]):null;return{year:null===ot?je:100*ot,restDateString:Re.slice((Mt[1]||Mt[2]).length)}}(je.date,Mt);ot=function K(Re,ct){if(null===ct)return new Date(NaN);var Ae=Re.match(O);if(!Ae)return new Date(NaN);var Mt=!!Ae[4],je=_e(Ae[1]),ot=_e(Ae[2])-1,mt=_e(Ae[3]),we=_e(Ae[4]),de=_e(Ae[5])-1;if(Mt)return function be(Re,ct,Ae){return ct>=1&&ct<=53&&Ae>=0&&Ae<=6}(0,we,de)?function j(Re,ct,Ae){var Mt=new Date(0);Mt.setUTCFullYear(Re,0,4);var ot=7*(ct-1)+Ae+1-(Mt.getUTCDay()||7);return Mt.setUTCDate(Mt.getUTCDate()+ot),Mt}(ct,we,de):new Date(NaN);var U=new Date(0);return function pe(Re,ct,Ae){return ct>=0&&ct<=11&&Ae>=1&&Ae<=(te[ct]||(ne(Re)?29:28))}(ct,ot,mt)&&function re(Re,ct){return ct>=1&&ct<=(ne(Re)?366:365)}(ct,je)?(U.setUTCFullYear(ct,ot,Math.max(je,mt)),U):new Date(NaN)}(mt.restDateString,mt.year)}if(!ot||isNaN(ot.getTime()))return new Date(NaN);var U,we=ot.getTime(),de=0;if(je.time&&(de=function Y(Re){var ct=Re.match(A);if(!ct)return NaN;var Ae=G(ct[1]),Mt=G(ct[2]),je=G(ct[3]);return function le(Re,ct,Ae){return 24===Re?0===ct&&0===Ae:Ae>=0&&Ae<60&&ct>=0&&ct<60&&Re>=0&&Re<25}(Ae,Mt,je)?Ae*D.vh+Mt*D.yJ+1e3*je:NaN}(je.time),isNaN(de)))return new Date(NaN);if(!je.timezone){var B=new Date(we+de),Ee=new Date(0);return Ee.setFullYear(B.getUTCFullYear(),B.getUTCMonth(),B.getUTCDate()),Ee.setHours(B.getUTCHours(),B.getUTCMinutes(),B.getUTCSeconds(),B.getUTCMilliseconds()),Ee}return U=function H(Re){if("Z"===Re)return 0;var ct=Re.match(k);if(!ct)return 0;var Ae="+"===ct[1]?-1:1,Mt=parseInt(ct[2]),je=ct[3]&&parseInt(ct[3])||0;return function ce(Re,ct){return ct>=0&&ct<=59}(0,je)?Ae*(Mt*D.vh+je*D.yJ):NaN}(je.timezone),isNaN(U)?new Date(NaN):new Date(we+de+U)}(Re);return isNaN(je)&&(je=(0,e.Z)(Re,Ae,new Date)),isNaN(je)?Mt:je}function Ye(Re,ct,Ae){if(Re=Me(Re),isNaN(Re))return"";const Mt={locale:Ae};return"fn"===ct?(0,Q.Z)(Re,Mt):(0,ie.Z)(Re,ct,Mt)}var q=o(61855),ye=o(27163);const Be=new class ee{get now(){return new Date}get date(){return this.removeTime(this.now)}removeTime(ct){return new Date(ct.toDateString())}format(ct,Ae="yyyy-MM-dd HH:mm:ss"){return(0,ie.Z)(ct,Ae)}genTick(ct){return new Array(ct).fill(0).map((Ae,Mt)=>Mt)}getDiffDays(ct,Ae){return(0,q.Z)(ct,"number"==typeof Ae?(0,n.Z)(this.date,Ae):Ae||this.date)}disabledBeforeDate(ct){return Ae=>this.getDiffDays(Ae,ct?.offsetDays)<0}disabledAfterDate(ct){return Ae=>this.getDiffDays(Ae,ct?.offsetDays)>0}baseDisabledTime(ct,Ae){const Mt=this.genTick(24),je=this.genTick(60);return ot=>{const mt=ot;if(null==mt)return{};const we=(0,ye.Z)(this.now,Ae||0),de=we.getHours(),U=we.getMinutes(),B=mt.getHours(),Ee=0===this.getDiffDays(this.removeTime(mt));return{nzDisabledHours:()=>Ee?"before"===ct?Mt.slice(0,de):Mt.slice(de+1):[],nzDisabledMinutes:()=>Ee&&B===de?"before"===ct?je.slice(0,U):je.slice(U+1):[],nzDisabledSeconds:()=>{if(Ee&&B===de&&mt.getMinutes()===U){const Ie=we.getSeconds();return"before"===ct?je.slice(0,Ie):je.slice(Ie+1)}return[]}}}}disabledBeforeTime(ct){return this.baseDisabledTime("before",ct?.offsetSeconds)}disabledAfterTime(ct){return this.baseDisabledTime("after",ct?.offsetSeconds)}}},74648:(nt,I,o)=>{"use strict";function n(M,h,v){return function g(d,p,f){const y=`$$__${p}`;return Object.defineProperty(d,y,{configurable:!0,writable:!0}),{get(){return f&&f.get?f.get.bind(this)():this[y]},set(T){f&&f.set&&f.set.bind(this)(h(T,v)),this[y]=h(T,v)}}}}function t(M,h=!1){return null==M?h:"false"!=`${M}`}function i(M=!1){return n(0,t,M)}function l(M,h=0){return isNaN(parseFloat(M))||isNaN(Number(M))?h:Number(M)}function C(M=0){return n(0,l,M)}function u(M){return function E(M,h){return(v,g,d)=>{const p=d.value;return d.value=function(...f){const T=this[h?.ngZoneName||"ngZone"];if(!T)return p.call(this,...f);let x;return T[M](()=>{x=p.call(this,...f)}),x},d}}("runOutsideAngular",M)}o.d(I,{yF:()=>i,Rn:()=>C,EA:()=>u,sw:()=>t,He:()=>l}),o(64115)},59927:(nt,I,o)=>{"use strict";function t(_,P){if(!_)return"";const O={..."string"==typeof P?{mask:P}:P},A={0:{pattern:/\d/,default:"0"},9:{pattern:/\d/},"#":{pattern:/[a-zA-Z0-9]/},U:{pattern:/[a-zA-Z]/,transform:F=>F.toLocaleUpperCase()},L:{pattern:/[a-zA-Z]/,transform:F=>F.toLocaleLowerCase()},"*":{pattern:/.*/,transform:F=>"*"},...O.tokens},k=_.split("");return O.mask.split("").reduce((F,W)=>{const K=A[W];if(!K)return F.push(W),F;const _e=k.shift()??"";return K.pattern.test(_e)?(F.push("function"==typeof K.transform?K.transform(_e):_e),F):(K.default&&F.push(K.default),F)},[]).join("")}o.d(I,{ie:()=>D,mL:()=>C,B0:()=>t}),o(64115);function l(_,P){return new RegExp(`^${_}$`,P)}const C={num:l("(([-+]?\\d+\\.\\d+)|([-+]?\\d+)|([-+]?\\.\\d+))(?:[eE]([-+]?\\d+))?"),idCard:l("(^\\d{15}$)|(^\\d{17}(?:[0-9]|X)$)","i"),mobile:l("^(0|\\+?86|17951)?1[0-9]{10}$"),url:l("(((^https?:(?://)?)(?:[-;:&=\\+\\$,\\w]+@)?[A-Za-z0-9.-]+(?::\\d+)?|(?:www.|[-;:&=\\+\\$,\\w]+@)[A-Za-z0-9.-]+)((?:/[\\+~%\\/.\\w-_]*)?\\??(?:[-\\+=&;%@.\\w_]*)#?(?:[\\w]*))?)"),ip:l("(?:^(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}$)|(?:^(?:(?:[a-fA-F\\d]{1,4}:){7}(?:[a-fA-F\\d]{1,4}|:)|(?:[a-fA-F\\d]{1,4}:){6}(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|:[a-fA-F\\d]{1,4}|:)|(?:[a-fA-F\\d]{1,4}:){5}(?::(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-fA-F\\d]{1,4}){1,2}|:)|(?:[a-fA-F\\d]{1,4}:){4}(?:(?::[a-fA-F\\d]{1,4}){0,1}:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-fA-F\\d]{1,4}){1,3}|:)|(?:[a-fA-F\\d]{1,4}:){3}(?:(?::[a-fA-F\\d]{1,4}){0,2}:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-fA-F\\d]{1,4}){1,4}|:)|(?:[a-fA-F\\d]{1,4}:){2}(?:(?::[a-fA-F\\d]{1,4}){0,3}:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-fA-F\\d]{1,4}){1,5}|:)|(?:[a-fA-F\\d]{1,4}:){1}(?:(?::[a-fA-F\\d]{1,4}){0,4}:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-fA-F\\d]{1,4}){1,6}|:)|(?::(?:(?::[a-fA-F\\d]{1,4}){0,5}:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-fA-F\\d]{1,4}){1,7}|:)))(?:%[0-9a-zA-Z]{1,})?$)"),color:l("(?:#|0x)(?:[a-f0-9]{3}|[a-f0-9]{6})\\b|(?:rgb|hsl)a?\\([^\\)]*\\)"),chinese:l("[\u4e00-\u9fa5]+")};var f=o(96814),y=o(65879);const T=[{unit:"Q",value:Math.pow(10,15)},{unit:"T",value:Math.pow(10,12)},{unit:"B",value:Math.pow(10,9)},{unit:"M",value:Math.pow(10,6)},{unit:"K",value:1e3}];var x=o(78967);let D=(()=>{class _{constructor(O,A,k="USD"){this.locale=A,this.currencyPipe=new f.H9(A,k),this.c=O.merge("utilCurrency",{startingUnit:"yuan",megaUnit:{Q:"\u4eac",T:"\u5146",B:"\u4ebf",M:"\u4e07",K:"\u5343"},precision:2,ingoreZeroPrecision:!0})}format(O,A){A={startingUnit:this.c.startingUnit,precision:this.c.precision,ingoreZeroPrecision:this.c.ingoreZeroPrecision,ngCurrency:this.c.ngCurrency,...A};let k=Number(O);if(null==O||isNaN(k))return"";if("cent"===A.startingUnit&&(k/=100),null!=A.ngCurrency){const W=A.ngCurrency;return this.currencyPipe.transform(k,W.currencyCode,W.display,W.digitsInfo,W.locale||this.locale)}const F=(0,f.uf)(k,this.locale,`.${A.ingoreZeroPrecision?1:A.precision}-${A.precision}`);return A.ingoreZeroPrecision?F.replace(/(?:\.[0]+)$/g,""):F}mega(O,A){A={precision:this.c.precision,unitI18n:this.c.megaUnit,startingUnit:this.c.startingUnit,...A};let k=Number(O);const F={raw:O,value:"",unit:"",unitI18n:""};if(isNaN(k)||0===k)return F.value=O.toString(),F;"cent"===A.startingUnit&&(k/=100);let W=Math.abs(+k);const K=Math.pow(10,A.precision),_e=k<0;for(const Y of T){let G=W/Y.value;if(G=Math.round(G*K)/K,G>=1){W=G,F.unit=Y.unit;break}}return F.value=(_e?"-":"")+W,F.unitI18n=A.unitI18n[F.unit],F}cny(O,A){if(A={inWords:!0,minusSymbol:"\u8d1f",startingUnit:this.c.startingUnit,...A},O=Number(O),isNaN(O))return"";let k,F;"cent"===A.startingUnit&&(O/=100),O=O.toString(),[k,F]=O.split(".");let W="";k.startsWith("-")&&(W=A.minusSymbol,k=k.substring(1)),/^-?\d+$/.test(O)&&(F=null),k=(+k).toString();const K=A.inWords,_e={num:K?["","\u58f9","\u8d30","\u53c1","\u8086","\u4f0d","\u9646","\u67d2","\u634c","\u7396","\u70b9"]:["","\u4e00","\u4e8c","\u4e09","\u56db","\u4e94","\u516d","\u4e03","\u516b","\u4e5d","\u70b9"],radice:K?["","\u62fe","\u4f70","\u4edf","\u4e07","\u62fe","\u4f70","\u4edf","\u4ebf","\u62fe","\u4f70","\u4edf","\u4e07\u4ebf","\u62fe","\u4f70","\u4edf","\u5146","\u62fe","\u4f70","\u4edf"]:["","\u5341","\u767e","\u5343","\u4e07","\u5341","\u767e","\u5343","\u4ebf","\u5341","\u767e","\u5343","\u4e07\u4ebf","\u5341","\u767e","\u5343","\u5146","\u5341","\u767e","\u5343"],dec:["\u89d2","\u5206","\u5398","\u6beb"]};K&&(O=(+O).toFixed(5).toString());let Y="";const G=k.length;if("0"===k||0===G)Y="\u96f6";else{let ne="";for(let pe=0;pe1&&0!==re&&"0"===k[pe-1]?"\u96f6":"",Q=0===re&&be%4!=0||"0000"===k.substring(pe-3,pe-3+4),ie=ne;let ae=_e.num[re];ne=Q?"":_e.radice[be],0===pe&&"\u4e00"===ae&&"\u5341"===ne&&(ae=""),re>1&&"\u4e8c"===ae&&-1===["","\u5341","\u767e"].indexOf(ne)&&"\u5341"!==ie&&(ae="\u4e24"),Y+=ce+ae+ne}}let H="";const j=F?F.toString().length:0;if(null===F)H=K?"\u6574":"";else if("0"===F)H="\u96f6";else for(let ne=0;ne_e.dec.length-1);ne++){const pe=F[ne];H+=("0"===pe?"\u96f6":"")+_e.num[+pe]+(K?_e.dec[ne]:"")}return W+(K?Y+("\u96f6"===H?"\u5143\u6574":`\u5143${H}`):Y+(""===H?"":`\u70b9${H}`))}static#e=this.\u0275fac=function(A){return new(A||_)(y.LFG(x.Ri),y.LFG(y.soG),y.LFG(y.EJc))};static#t=this.\u0275prov=y.Yz7({token:_,factory:_.\u0275fac,providedIn:"root"})}return _})()},64115:(nt,I,o)=>{"use strict";o.d(I,{Df:()=>x,hu:()=>_,p$:()=>i,In:()=>t,RH:()=>C,Z2:()=>l,ZK:()=>h});var e=o(15377),n=o.n(e);function t(W,K,_e){if(!W||null==K||0===K.length)return _e;if(Array.isArray(K)||(K=~K.indexOf(".")?K.split("."):[K]),1===K.length){const G=W[K[0]];return typeof G>"u"?_e:G}const Y=K.reduce((G,H)=>(G||{})[H],W);return typeof Y>"u"?_e:Y}function i(W){return n()(!0,{},{_:W})._}function l(W,K,..._e){if(Array.isArray(W)||"object"!=typeof W)return W;const Y=H=>"object"==typeof H,G=(H,j)=>(Object.keys(j).filter(te=>"__proto__"!==te&&Object.prototype.hasOwnProperty.call(j,te)).forEach(te=>{const ne=j[te],pe=H[te];H[te]=Array.isArray(pe)?K?ne:[...pe,...ne]:"function"==typeof ne?ne:null!=ne&&Y(ne)&&null!=pe&&Y(pe)?G(pe,ne):i(ne)}),H);return _e.filter(H=>null!=H&&Y(H)).forEach(H=>G(W,H)),W}function C(W,...K){return l(W,!1,...K)}const h=(...W)=>{};var d=o(96814),p=o(65619),f=o(63020),y=o(32181),T=o(65879);let x=(()=>{class W{constructor(_e){this.doc=_e,this.list={},this.cached={},this._notify=new p.X([])}get change(){return this._notify.asObservable().pipe((0,f.B)(),(0,y.h)(_e=>0!==_e.length))}clear(){this.list={},this.cached={}}attachAttributes(_e,Y){null!=Y&&Object.entries(Y).forEach(([G,H])=>{_e.setAttribute(G,H)})}load(_e){Array.isArray(_e)||(_e=[_e]);const Y=[];return _e.map(G=>"object"!=typeof G?{path:G}:G).forEach(G=>{G.path.endsWith(".js")?Y.push(this.loadScript(G.path,G.options)):Y.push(this.loadStyle(G.path,G.options))}),Promise.all(Y).then(G=>(this._notify.next(G),Promise.resolve(G)))}loadScript(_e,Y,G){const H="object"==typeof Y?Y:{innerContent:Y,attributes:G};return new Promise(j=>{if(!0===this.list[_e])return void j({...this.cached[_e],status:"loading"});this.list[_e]=!0;const te=pe=>{this.cached[_e]=pe,j(pe),this._notify.next([pe])},ne=this.doc.createElement("script");ne.type="text/javascript",ne.src=_e,this.attachAttributes(ne,H.attributes),H.innerContent&&(ne.innerHTML=H.innerContent),ne.onload=()=>te({path:_e,status:"ok"}),ne.onerror=pe=>te({path:_e,status:"error",error:pe}),this.doc.getElementsByTagName("head")[0].appendChild(ne)})}loadStyle(_e,Y,G,H){const j="object"==typeof Y?Y:{rel:Y,innerContent:G,attributes:H};return new Promise(te=>{if(!0===this.list[_e])return void te(this.cached[_e]);this.list[_e]=!0;const ne=this.doc.createElement("link");ne.rel=j.rel??"stylesheet",ne.type="text/css",ne.href=_e,this.attachAttributes(ne,j.attributes),j.innerContent&&(ne.innerHTML=j.innerContent),this.doc.getElementsByTagName("head")[0].appendChild(ne);const pe={path:_e,status:"ok"};this.cached[_e]=pe,te(pe)})}static#e=this.\u0275fac=function(Y){return new(Y||W)(T.LFG(d.K0))};static#t=this.\u0275prov=T.Yz7({token:W,factory:W.\u0275fac,providedIn:"root"})}return W})();function _(W,K){}},59765:(nt,I,o)=>{"use strict";o.d(I,{S:()=>t});var e=o(65879),n=o(59927);let t=(()=>{class i{constructor(C){this.srv=C}transform(C,E){return this.srv.cny(C,E)}static#e=this.\u0275fac=function(E){return new(E||i)(e.Y36(n.ie,16))};static#t=this.\u0275pipe=e.Yjl({name:"cny",type:i,pure:!0})}return i})()},4171:(nt,I,o)=>{"use strict";o.d(I,{A:()=>t});var e=o(65879),n=o(59927);let t=(()=>{class i{constructor(C,E){this.srv=C,this.isCN=!1,this.isCN=E.startsWith("zh")}transform(C,E){const u=this.srv.mega(C,E);return u.value+(this.isCN?u.unitI18n:u.unit)}static#e=this.\u0275fac=function(E){return new(E||i)(e.Y36(n.ie,16),e.Y36(e.soG,16))};static#t=this.\u0275pipe=e.Yjl({name:"mega",type:i,pure:!0})}return i})()},13072:(nt,I,o)=>{"use strict";o.d(I,{R:()=>t});var e=o(65879),n=o(59927);let t=(()=>{class i{constructor(C){this.srv=C}transform(C,E){return this.srv.format(C,E)}static#e=this.\u0275fac=function(E){return new(E||i)(e.Y36(n.ie,16))};static#t=this.\u0275pipe=e.Yjl({name:"price",type:i,pure:!0})}return i})()},39542:(nt,I,o)=>{"use strict";o.d(I,{g:()=>n});var e=o(65879);let n=(()=>{class t{transform(l,C,...E){return l.filter(u=>C(u,...E))}static#e=this.\u0275fac=function(C){return new(C||t)};static#t=this.\u0275pipe=e.Yjl({name:"filter",type:t,pure:!0})}return t})()},58859:(nt,I,o)=>{"use strict";o.d(I,{V:()=>t});var e=o(59927),n=o(65879);let t=(()=>{class i{transform(C,E){return(0,e.B0)(C,E)}static#e=this.\u0275fac=function(E){return new(E||i)};static#t=this.\u0275pipe=n.Yjl({name:"mask",type:i,pure:!0})}return i})()},8471:(nt,I,o)=>{"use strict";o.d(I,{m:()=>t});var e=o(96814),n=o(65879);const t=new n.OlP("WINDOW",{factory:()=>{const{defaultView:M}=(0,n.f3M)(e.K0);if(!M)throw new Error("Window is not available");return M}});var i=o(92438),l=o(27921),C=o(37398),E=o(93997),u=o(63020);new n.OlP("PAGE_VISIBILITY`",{factory:()=>{const M=(0,n.f3M)(e.K0);return(0,i.R)(M,"visibilitychange").pipe((0,l.O)(0),(0,C.U)(()=>!M.hidden),(0,E.x)(),(0,u.B)())}})},87691:(nt,I,o)=>{"use strict";o.d(I,{z:()=>t});var e=o(97328),n=o(65879);let t=(()=>{class i{constructor(){this.theme="default",this.theme$=new e.t(1)}setTheme(C){this.theme=C,this.theme$.next(C)}static#e=this.\u0275fac=function(E){return new(E||i)};static#t=this.\u0275prov=n.Yz7({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})()},3604:(nt,I,o)=>{"use strict";o.d(I,{$:()=>Ie});var e=o(96814);const l="https://stackblitz.com",C=["angular-cli","create-react-app","html","javascript","node","polymer","typescript","vue"],E=["project","search","ports","settings"],u=["light","dark"],z=["editor","preview"],M={clickToLoad:Ne=>v("ctl",Ne),devToolsHeight:Ne=>d("devtoolsheight",Ne),forceEmbedLayout:Ne=>v("embed",Ne),hideDevTools:Ne=>v("hidedevtools",Ne),hideExplorer:Ne=>v("hideExplorer",Ne),hideNavigation:Ne=>v("hideNavigation",Ne),openFile:Ne=>f("file",Ne),showSidebar:Ne=>function g(Ne,pt){return"boolean"==typeof pt?`${Ne}=${pt?"1":"0"}`:""}("showSidebar",Ne),sidebarView:Ne=>p("sidebarView",Ne,E),startScript:Ne=>f("startScript",Ne),terminalHeight:Ne=>d("terminalHeight",Ne),theme:Ne=>p("theme",Ne,u),view:Ne=>p("view",Ne,z),zenMode:Ne=>v("zenMode",Ne)};function h(Ne={}){const pt=Object.entries(Ne).map(([Dt,Lt])=>null!=Lt&&M.hasOwnProperty(Dt)?M[Dt](Lt):"").filter(Boolean);return pt.length?`?${pt.join("&")}`:""}function v(Ne,pt){return!0===pt?`${Ne}=1`:""}function d(Ne,pt){if("number"==typeof pt&&!Number.isNaN(pt)){const Dt=Math.min(100,Math.max(0,pt));return`${Ne}=${encodeURIComponent(Math.round(Dt))}`}return""}function p(Ne,pt="",Dt=[]){return Dt.includes(pt)?`${Ne}=${encodeURIComponent(pt)}`:""}function f(Ne,pt){return(Array.isArray(pt)?pt:[pt]).filter(Lt=>"string"==typeof Lt&&""!==Lt.trim()).map(Lt=>`${Ne}=${encodeURIComponent(Lt)}`).join("&")}function T(Ne,pt){return`${D(pt)}${Ne}${h(pt)}`}function D(Ne={}){return("string"==typeof Ne.origin?Ne.origin:l).replace(/\/$/,"")}function O(Ne){return Ne&&!1===Ne.newWindow?"_self":"_blank"}function H({template:Ne,title:pt,description:Dt,dependencies:Lt,files:Ut,settings:qt}){if(!C.includes(Ne)){const Vt=C.map(st=>`'${st}'`).join(", ");console.warn(`Unsupported project.template: must be one of ${Vt}`)}const en=[],cn=(Vt,st,He="")=>{en.push(function Y(Ne,pt){const Dt=document.createElement("input");return Dt.type="hidden",Dt.name=Ne,Dt.value=pt,Dt}(Vt,"string"==typeof st?st:He))};cn("project[title]",pt),"string"==typeof Dt&&Dt.length>0&&cn("project[description]",Dt),cn("project[template]",Ne,"javascript"),Lt&&("node"===Ne?console.warn("Invalid project.dependencies: dependencies must be provided as a 'package.json' file when using the 'node' template."):cn("project[dependencies]",JSON.stringify(Lt))),qt&&cn("project[settings]",JSON.stringify(qt)),Object.entries(Ut).forEach(([Vt,st])=>{cn(`project[files][${function G(Ne){return Ne.replace(/\[/g,"%5B").replace(/\]/g,"%5D")}(Vt)}]`,st)});const Wt=document.createElement("form");return Wt.method="POST",Wt.setAttribute("style","display:none!important;"),Wt.append(...en),Wt}const ie_openProject=function pe(Ne,pt){!function te(Ne,pt){const Dt=H(Ne);Dt.action=T("/run",pt),Dt.target=O(pt),document.body.appendChild(Dt),Dt.submit(),document.body.removeChild(Dt)}(Ne,pt)};var ae=o(28539),xe=o(64115);const Me={$schema:"./node_modules/@angular/cli/lib/config/schema.json",version:1,newProjectRoot:"projects",projects:{demo:{root:"",sourceRoot:"src",projectType:"application",prefix:"app",architect:{build:{builder:"@angular-devkit/build-angular:browser",options:{outputPath:"dist/demo",index:"src/index.html",main:"src/main.ts",polyfills:"src/polyfills.ts",tsConfig:"tsconfig.json",assets:["src/assets"],styles:["src/styles.css"]},configurations:{production:{optimization:!0,outputHashing:"all",sourceMap:!1,extractCss:!0,namedChunks:!1,aot:!0,extractLicenses:!0,vendorChunk:!1,buildOptimizer:!0}}},serve:{builder:"@angular-devkit/build-angular:dev-server",options:{browserTarget:"demo:build"}}}}},defaultProject:"demo"},Ye=Ne=>`import { NgModule, APP_INITIALIZER, VERSION as VERSION_NG } from '@angular/core';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { HttpClientModule } from '@angular/common/http';\nimport { RouterModule } from '@angular/router';\n\nimport { DemoNgZorroAntdModule } from './ng-zorro-antd.module';\nimport { NZ_ICONS } from 'ng-zorro-antd/icon';\nimport { provideNzI18n, en_US } from 'ng-zorro-antd/i18n';\nimport { IconDefinition } from '@ant-design/icons-angular';\nimport * as AllIcons from '@ant-design/icons-angular/icons';\n\nimport { registerLocaleData } from '@angular/common';\nimport en from '@angular/common/locales/en';\nregisterLocaleData(en);\n\nimport { AlainThemeModule } from '@delon/theme';\nimport { DemoDelonABCModule } from './delon-abc.module';\nimport { DemoDelonChartModule } from './delon-chart.module';\nimport { DelonFormModule } from '@delon/form';\nimport { DelonAuthModule } from '@delon/auth';\nimport { DelonACLModule } from '@delon/acl';\nimport { DelonCacheModule } from '@delon/cache';\nimport { StartupService, StartupServiceFactory } from './startup.service';\nimport { GlobalConfigModule } from './global-config.module';\n\nconst antDesignIcons = AllIcons as {\n [key: string]: IconDefinition;\n};\nconst icons: IconDefinition[] = Object.keys(antDesignIcons).map(key => antDesignIcons[key]);\n\nimport { VERSION as VERSION_ALAIN } from '@delon/theme';\nimport { VERSION as VERSION_ZORRO } from 'ng-zorro-antd/version';\nimport { ${Ne} } from './app.component';\n\n@NgModule({\nimports: [\n BrowserModule,\n FormsModule,\n ReactiveFormsModule,\n HttpClientModule,\n BrowserAnimationsModule,\n RouterModule.forRoot([]),\n DemoNgZorroAntdModule,\n AlainThemeModule.forRoot(),\n DemoDelonABCModule,\n DemoDelonChartModule,\n DelonACLModule.forRoot(),\n DelonCacheModule,\n DelonAuthModule,\n DelonFormModule.forRoot(),\n GlobalConfigModule.forRoot(),\n],\nproviders: [\n StartupService,\n {\n provide: APP_INITIALIZER,\n useFactory: StartupServiceFactory,\n deps: [StartupService],\n multi: true\n },\n provideNzI18n(en_US),\n { provide: NZ_ICONS, useValue: icons }\n],\ndeclarations: [ ${Ne} ],\nbootstrap: [ ${Ne} ]\n})\nexport class AppModule {\n constructor() {\n setTimeout(() => {\n const el = document.querySelector('#VERSION');\n if (el != null) {\n el.innerHTML = \`\n VERSIONS: angular(\${VERSION_NG.full}), ng-zorro-antd(\${VERSION_ZORRO.full}), @delon(\${VERSION_ALAIN.full})\n \`;\n }\n }, 1000);\n }\n}\n `,q="import { NgModule } from '@angular/core';\n\n// #region all modules\nimport { AvatarListModule } from '@delon/abc/avatar-list';\nimport { CountDownModule } from '@delon/abc/count-down';\nimport { DatePickerModule } from '@delon/abc/date-picker';\nimport { DownFileModule } from '@delon/abc/down-file';\nimport { EllipsisModule } from '@delon/abc/ellipsis';\nimport { ErrorCollectModule } from '@delon/abc/error-collect';\nimport { ExceptionModule } from '@delon/abc/exception';\nimport { FooterToolbarModule } from '@delon/abc/footer-toolbar';\nimport { FullContentModule } from '@delon/abc/full-content';\nimport { GlobalFooterModule } from '@delon/abc/global-footer';\nimport { LoadingModule } from '@delon/abc/loading';\nimport { HotkeyModule } from '@delon/abc/hotkey';\nimport { LodopModule } from '@delon/abc/lodop';\nimport { NoticeIconModule } from '@delon/abc/notice-icon';\nimport { ObserversModule } from '@delon/abc/observers';\nimport { PageHeaderModule } from '@delon/abc/page-header';\nimport { QRModule } from '@delon/abc/qr';\nimport { QuickMenuModule } from '@delon/abc/quick-menu';\nimport { ResultModule } from '@delon/abc/result';\nimport { ReuseTabModule } from '@delon/abc/reuse-tab';\nimport { SEModule } from '@delon/abc/se';\nimport { SGModule } from '@delon/abc/sg';\nimport { STModule } from '@delon/abc/st';\nimport { SVModule } from '@delon/abc/sv';\nimport { TagSelectModule } from '@delon/abc/tag-select';\nimport { MediaModule } from '@delon/abc/media';\nimport { XlsxModule } from '@delon/abc/xlsx';\nimport { ZipModule } from '@delon/abc/zip';\nimport { OnboardingModule } from '@delon/abc/onboarding';\nimport { LetModule } from '@delon/abc/let';\nimport { AutoFocusModule } from '@delon/abc/auto-focus';\nimport { PdfModule } from '@delon/abc/pdf';\n\nconst MODULES = [\n ErrorCollectModule,\n FooterToolbarModule,\n DownFileModule,\n AvatarListModule,\n EllipsisModule,\n GlobalFooterModule,\n ExceptionModule,\n NoticeIconModule,\n ObserversModule,\n PageHeaderModule,\n ResultModule,\n TagSelectModule,\n CountDownModule,\n STModule,\n ReuseTabModule,\n FullContentModule,\n XlsxModule,\n ZipModule,\n LodopModule,\n QuickMenuModule,\n QRModule,\n SVModule,\n SEModule,\n SGModule,\n DatePickerModule,\n LoadingModule,\n HotkeyModule,\n MediaModule,\n OnboardingModule,\n LetModule,\n AutoFocusModule,\n PdfModule,\n];\n\n@NgModule({ exports: MODULES })\nexport class DemoDelonABCModule {}\n",ye="import { NgModule } from '@angular/core';\n\n// #region all modules\n\nimport { G2BarModule } from '@delon/chart/bar';\nimport { G2CardModule } from '@delon/chart/card';\nimport { G2CustomModule } from '@delon/chart/custom';\nimport { G2GaugeModule } from '@delon/chart/gauge';\nimport { G2MiniAreaModule } from '@delon/chart/mini-area';\nimport { G2MiniBarModule } from '@delon/chart/mini-bar';\nimport { G2MiniProgressModule } from '@delon/chart/mini-progress';\nimport { NumberInfoModule } from '@delon/chart/number-info';\nimport { G2PieModule } from '@delon/chart/pie';\nimport { G2RadarModule } from '@delon/chart/radar';\nimport { G2SingleBarModule } from '@delon/chart/single-bar';\nimport { G2TagCloudModule } from '@delon/chart/tag-cloud';\nimport { G2TimelineModule } from '@delon/chart/timeline';\nimport { TrendModule } from '@delon/chart/trend';\nimport { G2WaterWaveModule } from '@delon/chart/water-wave';\nimport { ChartEChartsModule } from '@delon/chart/chart-echarts';\n\nconst MODULES = [\n G2BarModule,\n G2CardModule,\n G2CustomModule,\n G2GaugeModule,\n G2MiniAreaModule,\n G2MiniBarModule,\n G2MiniProgressModule,\n G2PieModule,\n G2RadarModule,\n G2TagCloudModule,\n G2TimelineModule,\n G2WaterWaveModule,\n G2SingleBarModule,\n NumberInfoModule,\n TrendModule,\n ChartEChartsModule,\n];\n\n// #endregion\n\n@NgModule({ exports: MODULES })\nexport class DemoDelonChartModule {}\n",ee="export const environment = {\n production: false\n};\n",Be="import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { DelonMockModule } from '@delon/mock';\nimport { AlainThemeModule } from '@delon/theme';\nimport { AlainConfig, ALAIN_CONFIG, AlainConfigService } from '@delon/util/config';\n\n// Please refer to: https://ng-alain.com/docs/global-config\n// #region NG-ALAIN Config\n\nimport { DelonACLModule } from '@delon/acl';\nimport * as MOCKDATA from '../../_mock';\n\nconst alainConfig: AlainConfig = { };\n\nconst alainModules = [AlainThemeModule.forRoot(), DelonACLModule.forRoot(), DelonMockModule.forRoot({ data: MOCKDATA })];\nconst alainProvides = [{ provide: ALAIN_CONFIG, useValue: alainConfig }];\n\n// #region reuse-tab\n\nimport { RouteReuseStrategy } from '@angular/router';\nimport { ReuseTabService, ReuseTabStrategy } from '@delon/abc/reuse-tab';\nalainProvides.push({\n provide: RouteReuseStrategy,\n useClass: ReuseTabStrategy,\n deps: [ReuseTabService],\n} as any);\n\n// #endregion\n\n// fix\nalainProvides.push(AlainConfigService as any);\n\n// #endregion\n\n// Please refer to: https://ng.ant.design/docs/global-config/en#how-to-use\n// #region NG-ZORRO Config\n\nimport { NzConfig, provideNzConfig } from 'ng-zorro-antd/core/config';\n\nconst ngZorroConfig: NzConfig = {};\n\nconst zorroProvides = [provideNzConfig(ngZorroConfig)];\n\n// #endregion\n\n@NgModule({\n imports: [...alainModules],\n})\nexport class GlobalConfigModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: GlobalConfigModule,\n providers: [...alainProvides, ...zorroProvides],\n };\n }\n}\n",Re="import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nif (environment.production) {\n enableProdMode();\n}\n\nplatformBrowserDynamic()\n .bootstrapModule(AppModule)\n .catch((err) => console.error(err));\n",Ae="\nimport { NgModule } from '@angular/core';\n\nimport { NzAffixModule } from 'ng-zorro-antd/affix';\nimport { NzAlertModule } from 'ng-zorro-antd/alert';\nimport { NzAnchorModule } from 'ng-zorro-antd/anchor';\nimport { NzAutocompleteModule } from 'ng-zorro-antd/auto-complete';\nimport { NzAvatarModule } from 'ng-zorro-antd/avatar';\nimport { NzBackTopModule } from 'ng-zorro-antd/back-top';\nimport { NzBadgeModule } from 'ng-zorro-antd/badge';\nimport { NzBreadCrumbModule } from 'ng-zorro-antd/breadcrumb';\nimport { NzButtonModule } from 'ng-zorro-antd/button';\nimport { NzCalendarModule } from 'ng-zorro-antd/calendar';\nimport { NzCardModule } from 'ng-zorro-antd/card';\nimport { NzCarouselModule } from 'ng-zorro-antd/carousel';\nimport { NzCascaderModule } from 'ng-zorro-antd/cascader';\nimport { NzCheckboxModule } from 'ng-zorro-antd/checkbox';\nimport { NzCollapseModule } from 'ng-zorro-antd/collapse';\nimport { NzCommentModule } from 'ng-zorro-antd/comment';\nimport { NzNoAnimationModule } from 'ng-zorro-antd/core/no-animation';\nimport { NzTransButtonModule } from 'ng-zorro-antd/core/trans-button';\nimport { NzWaveModule } from 'ng-zorro-antd/core/wave';\nimport { NzDatePickerModule } from 'ng-zorro-antd/date-picker';\nimport { NzDescriptionsModule } from 'ng-zorro-antd/descriptions';\nimport { NzDividerModule } from 'ng-zorro-antd/divider';\nimport { NzDrawerModule } from 'ng-zorro-antd/drawer';\nimport { NzDropDownModule } from 'ng-zorro-antd/dropdown';\nimport { NzEmptyModule } from 'ng-zorro-antd/empty';\nimport { NzFormModule } from 'ng-zorro-antd/form';\nimport { NzGridModule } from 'ng-zorro-antd/grid';\nimport { NzI18nModule } from 'ng-zorro-antd/i18n';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzInputModule } from 'ng-zorro-antd/input';\nimport { NzInputNumberModule } from 'ng-zorro-antd/input-number';\nimport { NzLayoutModule } from 'ng-zorro-antd/layout';\nimport { NzListModule } from 'ng-zorro-antd/list';\nimport { NzMentionModule } from 'ng-zorro-antd/mention';\nimport { NzMenuModule } from 'ng-zorro-antd/menu';\nimport { NzMessageModule } from 'ng-zorro-antd/message';\nimport { NzModalModule } from 'ng-zorro-antd/modal';\nimport { NzNotificationModule } from 'ng-zorro-antd/notification';\nimport { NzPageHeaderModule } from 'ng-zorro-antd/page-header';\nimport { NzPaginationModule } from 'ng-zorro-antd/pagination';\nimport { NzPopconfirmModule } from 'ng-zorro-antd/popconfirm';\nimport { NzPopoverModule } from 'ng-zorro-antd/popover';\nimport { NzProgressModule } from 'ng-zorro-antd/progress';\nimport { NzRadioModule } from 'ng-zorro-antd/radio';\nimport { NzRateModule } from 'ng-zorro-antd/rate';\nimport { NzResultModule } from 'ng-zorro-antd/result';\nimport { NzSelectModule } from 'ng-zorro-antd/select';\nimport { NzSkeletonModule } from 'ng-zorro-antd/skeleton';\nimport { NzSliderModule } from 'ng-zorro-antd/slider';\nimport { NzSpinModule } from 'ng-zorro-antd/spin';\nimport { NzStatisticModule } from 'ng-zorro-antd/statistic';\nimport { NzStepsModule } from 'ng-zorro-antd/steps';\nimport { NzSwitchModule } from 'ng-zorro-antd/switch';\nimport { NzTableModule } from 'ng-zorro-antd/table';\nimport { NzTabsModule } from 'ng-zorro-antd/tabs';\nimport { NzTagModule } from 'ng-zorro-antd/tag';\nimport { NzTimePickerModule } from 'ng-zorro-antd/time-picker';\nimport { NzTimelineModule } from 'ng-zorro-antd/timeline';\nimport { NzToolTipModule } from 'ng-zorro-antd/tooltip';\nimport { NzTransferModule } from 'ng-zorro-antd/transfer';\nimport { NzTreeModule } from 'ng-zorro-antd/tree';\nimport { NzTreeSelectModule } from 'ng-zorro-antd/tree-select';\nimport { NzTypographyModule } from 'ng-zorro-antd/typography';\nimport { NzUploadModule } from 'ng-zorro-antd/upload';\nimport { NzResizableModule } from 'ng-zorro-antd/resizable';\n\n@NgModule({\n exports: [\n NzAffixModule,\n NzAlertModule,\n NzAnchorModule,\n NzAutocompleteModule,\n NzAvatarModule,\n NzBackTopModule,\n NzBadgeModule,\n NzButtonModule,\n NzBreadCrumbModule,\n NzCalendarModule,\n NzCardModule,\n NzCarouselModule,\n NzCascaderModule,\n NzCheckboxModule,\n NzCollapseModule,\n NzCommentModule,\n NzDatePickerModule,\n NzDescriptionsModule,\n NzDividerModule,\n NzDrawerModule,\n NzDropDownModule,\n NzEmptyModule,\n NzFormModule,\n NzGridModule,\n NzI18nModule,\n NzIconModule,\n NzInputModule,\n NzInputNumberModule,\n NzLayoutModule,\n NzListModule,\n NzMentionModule,\n NzMenuModule,\n NzMessageModule,\n NzModalModule,\n NzNoAnimationModule,\n NzNotificationModule,\n NzPageHeaderModule,\n NzPaginationModule,\n NzPopconfirmModule,\n NzPopoverModule,\n NzProgressModule,\n NzRadioModule,\n NzRateModule,\n NzResultModule,\n NzSelectModule,\n NzSkeletonModule,\n NzSliderModule,\n NzSpinModule,\n NzStatisticModule,\n NzStepsModule,\n NzSwitchModule,\n NzTableModule,\n NzTabsModule,\n NzTagModule,\n NzTimePickerModule,\n NzTimelineModule,\n NzToolTipModule,\n NzTransButtonModule,\n NzTransferModule,\n NzTreeModule,\n NzTreeSelectModule,\n NzTypographyModule,\n NzUploadModule,\n NzWaveModule,\n NzResizableModule\n ]\n})\nexport class DemoNgZorroAntdModule {\n\n}\n",Mt={name:"ng-alain",tags:["NG-ALAIN"],version:"0.0.0",scripts:{ng:"ng",start:"ng serve --disable-host-check",build:"ng build",test:"ng test",lint:"ng lint",e2e:"ng e2e"},private:!0,dependencies:{"@angular/animations":"~13.1.0","@angular/common":"~13.1.0","@angular/compiler":"~13.1.0","@angular/core":"~13.1.0","@angular/forms":"~13.1.0","@angular/platform-browser":"~13.1.0","@angular/platform-browser-dynamic":"~13.1.0","@angular/router":"~13.1.0",rxjs:"~7.4.0",tslib:"^2.3.0","zone.js":"~0.11.4"},devDependencies:{"@angular-devkit/build-angular":"~13.1.2","@angular/cli":"~13.1.2","@angular/compiler-cli":"~13.1.0","@types/jasmine":"~3.10.0","@types/node":"^12.11.1","jasmine-core":"~3.10.0",karma:"~6.3.0","karma-chrome-launcher":"~3.1.0","karma-coverage":"~2.1.0","karma-jasmine":"~4.0.0","karma-jasmine-html-reporter":"~1.7.0",typescript:"~4.5.2"}},je="\nimport 'zone.js';\n",mt={infiniteLoopProtection:!0,hardReloadOnChange:!1,view:"browser",template:"node",container:{node:"16",port:4200}},de={compileOnSave:!1,compilerOptions:{baseUrl:"./",outDir:"./dist/out-tsc",forceConsistentCasingInFileNames:!0,strict:!0,noImplicitOverride:!0,noPropertyAccessFromIndexSignature:!0,noImplicitReturns:!0,noFallthroughCasesInSwitch:!0,sourceMap:!0,declaration:!1,downlevelIteration:!0,experimentalDecorators:!0,moduleResolution:"node",importHelpers:!0,target:"es2017",module:"es2020",lib:["es2020","dom"],allowSyntheticDefaultImports:!0},angularCompilerOptions:{enableIvy:!0,enableI18nLegacyMessageIdFormat:!1,strictInjectionParameters:!0,strictInputAccessModifiers:!0,strictTemplates:!0}};var U=o(4147),B=o(65879),Ee=o(87691);let Ie=(()=>{class Ne{get themePath(){return`node_modules/@delon/theme/${this.appSrv.theme}.css`}genPackage({dependencies:Dt=[],devDependencies:Lt=[],includeCli:Ut=!1}){const qt=U.dependencies["@angular/core"],en=qt.substring(1).split(".").shift(),cn=Mt;["ng-zorro-antd","date-fns","@delon/theme","@delon/abc","@delon/chart","@delon/acl","@delon/auth","@delon/cache","@delon/mock","@delon/form","@delon/util","ajv","ajv-formats",...Dt].forEach(Vt=>cn.dependencies[Vt]="*"),Ut&&(Lt=[...Lt,"ng-alain","ng-alain-plugin-theme","@angular/cli","@angular/compiler-cli","@angular-devkit/build-angular"]),Lt.forEach(Vt=>cn.devDependencies[Vt]="*");const Wt={...U.dependencies,...U.devDependencies};return["dependencies","devDependencies"].forEach(Vt=>{Object.keys(cn[Vt]).forEach(st=>{cn[Vt][st]=st.startsWith("@delon")?`~${U.version}`:Wt[st]||"*"})}),cn.dependencies["@angular/core"]=qt,["@angular/cdk","@ant-design/icons-angular","ngx-countdown"].forEach(Vt=>{cn.dependencies[Vt]=en}),console.log(cn),cn}constructor(Dt,Lt){this.appSrv=Dt,this.document=Lt}get genStartupService(){return(Ne=>`import { Injectable } from '@angular/core';\nimport { LazyService } from '@delon/util/other';\n\n@Injectable()\nexport class StartupService {\n constructor(private lazy: LazyService) { }\n load(): Promise {\n return new Promise((resolve, reject) => {\n this.lazy.load([\n 'https://cdnjs.cloudflare.com/ajax/libs/ajv/${Ne.ajvVersion}/ajv.min.js',\n ])\n .then(() => resolve(null));\n });\n }\n}\n\nexport function StartupServiceFactory(startupService: StartupService): Function {\n return () => startupService.load();\n}`)({ajvVersion:U.dependencies.ajv.substring(1)})}get genMock(){return{"_mock/user.ts":o(22425).Z,"_mock/index.ts":"export * from './user';"}}parseCode(Dt){let Lt="",Ut="";const qt=/selector:[ ]?(['|"|`])([^'"`]+)/g.exec(Dt);qt&&(Lt=qt[2]);const en=/export class ([^ {]+)/g.exec(Dt);return en&&(Ut=en[1]),{selector:Lt,componentName:Ut,html:['',`<${Lt}>loading`,'
      '].join("\n")}}openOnStackBlitz(Dt,Lt){const Ut=this.parseCode(Lt),qt=(0,xe.p$)(Me);qt.projects.demo.architect.build.options.styles.splice(0,0,this.themePath);const en=this.genPackage({dependencies:[],devDependencies:[],includeCli:!1});en.name=Dt,ie_openProject({title:"NG-ALAIN",description:"NG-ZORRO admin panel front-end framework",tags:["ng-alain","@delon","NG-ZORRO","ng-zorro-antd","Ant Design","Angular","ng"],dependencies:{...en.dependencies,...en.devDependencies},files:{"angular.json":`${JSON.stringify(qt,null,2)}`,"tsconfig.json":`${JSON.stringify(de,null,2)}`,"package.json":`${JSON.stringify(en,null,2)}`,"src/environments/environment.ts":ee,"src/index.html":Ut.html,"src/main.ts":Re,"src/polyfills.ts":je,"src/app/app.component.ts":Lt,"src/app/app.module.ts":Ye(Ut.componentName),"src/app/global-config.module.ts":Be,"src/app/ng-zorro-antd.module.ts":Ae,"src/app/delon-abc.module.ts":q,"src/app/delon-chart.module.ts":ye,"src/app/startup.service.ts":this.genStartupService,"src/styles.css":"",...this.genMock},template:"angular-cli"},{openFile:"src/app/app.component.ts"})}openOnCodeSandbox(Dt,Lt,Ut=!1){const qt=this.parseCode(Lt),en=this.genMock,cn=(0,xe.p$)(Me);cn.projects.demo.architect.build.options.styles.splice(0,0,this.themePath);const Wt=this.genPackage({dependencies:[],devDependencies:[],includeCli:Ut});Wt.name=Dt;const Vt={"package.json":{content:JSON.stringify(Wt,null,2),isBinary:!1},"angular.json":{content:`${JSON.stringify(cn,null,2)}`,isBinary:!1},"tsconfig.json":{content:`${JSON.stringify(de,null,2)}`,isBinary:!1},"src/environments/environment.ts":{content:ee,isBinary:!1},"src/index.html":{content:qt.html,isBinary:!1},"src/main.ts":{content:Ut?"import './polyfills';\n\nimport { enableProdMode, ViewEncapsulation } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\nimport { preloaderFinished } from '@delon/theme';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\npreloaderFinished();\n\nif (environment.production) {\n enableProdMode();\n}\n\nplatformBrowserDynamic()\n .bootstrapModule(AppModule, {\n defaultEncapsulation: ViewEncapsulation.Emulated,\n preserveWhitespaces: false\n })\n .then(res => {\n const win = window as NzSafeAny;\n if (win && win.appBootstrap) {\n win.appBootstrap();\n }\n return res;\n })\n .catch(err => console.error(err));\n":Re,isBinary:!1},"src/polyfills.ts":{content:je,isBinary:!1},"src/app/app.module.ts":{content:Ye(qt.componentName),isBinary:!1},"src/app/global-config.module.ts":{content:Be,isBinary:!1},"src/app/app.component.ts":{content:Lt,isBinary:!1},"src/app/ng-zorro-antd.module.ts":{content:Ae,isBinary:!1},"src/app/delon-abc.module.ts":{content:q,isBinary:!1},"src/app/delon-chart.module.ts":{content:ye,isBinary:!1},"src/app/startup.service.ts":{content:this.genStartupService,isBinary:!1},"src/styles.css":{content:"",isBinary:!1},"_mock/user.ts":{content:en["_mock/user.ts"],isBinary:!1},"_mock/index.ts":{content:en["_mock/index.ts"],isBinary:!1}};Ut&&(Vt["README.md"]={content:"# Angular CLI Template\n\nThis template was generated with [Angular CLI](https://github.com/angular/angular-cli).\n\n## Running `ng` commands\n\nOn the terminal on your bottom right there is a + you can click to open a new tab in it you can write any commands you want with:\n\n```\nyarn ng \nyarn ng g ng-alain:module news\nyarn ng g ng-alain:list list -m=news\n```\n\n## QA\n\n**502: Bad Gateway**\n\nThe solution is to click refresh on the Browser panel when the terminal displays `\u2714 Compiled successfully.`\n",isBinary:!1},Vt["sandbox.config.json"]={content:`${JSON.stringify(mt,null,2)}`,isBinary:!1});const st=(0,ae.Z)({files:Vt}),He=this.document.createElement("form"),et=this.document.createElement("input");He.method="POST",He.action="https://codesandbox.io/api/v1/sandboxes/define",He.target="_blank",et.name="parameters",et.value=st,He.appendChild(et),this.document.body.append(He),He.submit(),this.document.body.removeChild(He)}static#e=this.\u0275fac=function(Lt){return new(Lt||Ne)(B.LFG(Ee.z),B.LFG(e.K0))};static#t=this.\u0275prov=B.Yz7({token:Ne,factory:Ne.\u0275fac,providedIn:"root"})}return Ne})()},49548:(nt,I,o)=>{"use strict";o.d(I,{R:()=>p});var e=o(980),g=o(65879);const d=[{types:[{"zh-CN":"\u5165\u95e8","en-US":"Basic"},{"zh-CN":"\u5f00\u53d1","en-US":"Dev"},{"zh-CN":"\u8fdb\u9636","en-US":"Advance"},{"zh-CN":"\u5176\u4ed6","en-US":"Other"}],name:"docs",github:"https://github.com/ng-alain/delon",list:[{name:"acl",i18n:!1,order:50,cols:1,meta:{"zh-CN":{order:50,title:"ACL",type:"Advance",url:"/acl/getting-started"}}},{name:"architecture",i18n:!0,order:20,cols:1,meta:{"en-US":{order:20,title:"Architecture",type:"Basic",i18n:"need-update"},"zh-CN":{order:20,title:"\u4f53\u7cfb\u7ed3\u6784",type:"Basic",i18n:"need-update"}}},{name:"auth",i18n:!1,order:40,cols:1,meta:{"zh-CN":{order:40,title:{"en-US":"Auth","zh-CN":"\u7528\u6237\u8ba4\u8bc1"},type:"Advance",url:"/auth/getting-started"}}},{name:"cache",i18n:!1,order:70,cols:1,meta:{"zh-CN":{order:70,title:{"en-US":"Cache","zh-CN":"\u7f13\u5b58"},type:"Advance",url:"/cache/getting-started"}}},{name:"changelog",i18n:!0,order:100,cols:1,meta:{"en-US":{order:100,title:"Change Log",type:"Other"},"zh-CN":{order:100,title:"\u66f4\u65b0\u65e5\u5fd7",type:"Other"}}},{name:"cli",i18n:!1,order:10,cols:1,meta:{"zh-CN":{order:10,title:{"en-US":"Cli","zh-CN":"\u547d\u4ee4\u884c\u5de5\u5177"},type:"Other",url:"/cli/getting-started"}}},{name:"contributing",i18n:!0,order:40,cols:1,meta:{"en-US":{order:40,title:"Contributing",type:"Other"},"zh-CN":{order:40,title:"\u8d21\u732e\u6307\u5357",type:"Other"}}},{name:"deploy",i18n:!0,order:70,cols:1,meta:{"en-US":{order:70,title:{"en-US":"Build & Deploy","zh-CN":"\u6784\u5efa\u548c\u53d1\u5e03"},type:"Dev"},"zh-CN":{order:70,title:{"en-US":"Build & Deploy","zh-CN":"\u6784\u5efa\u548c\u53d1\u5e03"},type:"Dev"}}},{name:"faq",i18n:!0,order:20,cols:1,meta:{"en-US":{order:20,title:{"en-US":"FAQ","zh-CN":"\u5e38\u89c1\u95ee\u9898"},type:"Other"},"zh-CN":{order:20,title:{"en-US":"FAQ","zh-CN":"\u5e38\u89c1\u95ee\u9898"},type:"Other"}}},{name:"getting-started",i18n:!0,order:10,cols:1,meta:{"en-US":{order:10,title:"Getting Started",type:"Basic",i18n:"need-update"},"zh-CN":{order:10,title:"\u4ecb\u7ecd",type:"Basic",i18n:"need-update"}}},{name:"global-config",i18n:!0,order:90,cols:1,meta:{"en-US":{order:90,title:{"en-US":"Global Configuration","zh-CN":"\u5168\u5c40\u914d\u7f6e\u9879"},type:"Dev"},"zh-CN":{order:90,title:{"en-US":"Global Configuration","zh-CN":"\u5168\u5c40\u914d\u7f6e\u9879"},type:"Dev"}}},{name:"graph",i18n:!1,order:20,cols:1,meta:{"zh-CN":{order:20,title:{"en-US":"Charts","zh-CN":"\u56fe\u8868"},type:"Advance",url:"/chart/getting-started"}}},{name:"how-to-start",i18n:!0,order:-1,cols:1,meta:{"en-US":{order:0,title:"How to start",type:"Dev",i18n:"need-update"},"zh-CN":{order:0,title:"\u5982\u4f55\u5f00\u59cb",type:"Dev",i18n:"need-update"}}},{name:"i18n",i18n:!0,order:30,cols:1,meta:{"en-US":{order:30,title:{"en-US":"I18n","zh-CN":"\u56fd\u9645\u5316"},type:"Advance"},"zh-CN":{order:30,title:{"en-US":"I18n","zh-CN":"\u56fd\u9645\u5316"},type:"Advance"}}},{name:"import",i18n:!0,order:60,cols:1,meta:{"en-US":{order:60,title:"Use a third-party lib",type:"Dev"},"zh-CN":{order:60,title:"\u4f7f\u7528\u7b2c\u4e09\u65b9\u7c7b\u5e93",type:"Dev"}}},{name:"mock",i18n:!1,order:60,cols:1,meta:{"zh-CN":{order:60,title:"Mock",type:"Advance",url:"/mock/getting-started"}}},{name:"module",i18n:!0,order:30,cols:1,meta:{"en-US":{order:30,title:{"en-US":"Module Guidelines","zh-CN":"\u6a21\u5757\u6ce8\u518c\u6307\u5bfc\u539f\u5219"},type:"Other"},"zh-CN":{order:30,title:{"en-US":"Module Guidelines","zh-CN":"\u6a21\u5757\u6ce8\u518c\u6307\u5bfc\u539f\u5219"},type:"Other"}}},{name:"new-component",i18n:!0,order:20,cols:1,meta:{"en-US":{order:20,title:{"en-US":"New Component","zh-CN":"\u65b0\u589e\u4e1a\u52a1\u7ec4\u4ef6"},type:"Dev"},"zh-CN":{order:20,title:{"en-US":"New Component","zh-CN":"\u65b0\u589e\u4e1a\u52a1\u7ec4\u4ef6"},type:"Dev"}}},{name:"new-page",i18n:!0,order:10,cols:1,meta:{"en-US":{order:10,title:{"en-US":"New Page","zh-CN":"\u65b0\u589e\u9875\u9762"},type:"Dev"},"zh-CN":{order:10,title:{"en-US":"New Page","zh-CN":"\u65b0\u589e\u9875\u9762"},type:"Dev"}}},{name:"performance",i18n:!0,order:80,cols:1,meta:{"en-US":{order:80,title:{"en-US":"Performance","zh-CN":"\u4f18\u5316"},type:"Advance"},"zh-CN":{order:80,title:{"en-US":"Performance","zh-CN":"\u4f18\u5316"},type:"Advance"}}},{name:"server",i18n:!0,order:40,cols:1,meta:{"en-US":{order:40,title:"Work with Server",type:"Dev"},"zh-CN":{order:40,title:"\u548c\u670d\u52a1\u7aef\u8fdb\u884c\u4ea4\u4e92",type:"Dev"}}},{name:"ssr",i18n:!1,order:110,cols:1,meta:{"zh-CN":{order:110,title:"\u670d\u52a1\u7aef\u6e32\u67d3\uff08SSR\uff09",type:"Dev"}}},{name:"style-guide",i18n:!0,order:90,cols:1,meta:{"en-US":{order:90,title:{"en-US":"Style Guide","zh-CN":"\u7f16\u7801\u89c4\u8303\u5efa\u8bae"},type:"Advance"},"zh-CN":{order:90,title:{"en-US":"Style Guide","zh-CN":"\u7f16\u7801\u89c4\u8303\u5efa\u8bae"},type:"Advance"}}},{name:"theme",i18n:!1,order:10,cols:1,meta:{"zh-CN":{order:10,title:{"en-US":"Theme","zh-CN":"\u4e3b\u9898\u7cfb\u7edf"},type:"Advance",url:"/theme/getting-started"}}},{name:"upgrade-v16",i18n:!0,order:1e3,cols:1,meta:{"en-US":{order:1e3,type:"Basic",title:"Upgrade to version 16.0",hot:!0},"zh-CN":{order:1e3,type:"Basic",title:"\u5347\u7ea7\u5230 16.0 \u7248\u672c",hot:!0}}},{name:"upgrade",i18n:!0,order:80,cols:1,meta:{"en-US":{order:80,title:{"en-US":"Upgrade scaffold","zh-CN":"\u5347\u7ea7\u811a\u624b\u67b6"},type:"Dev"},"zh-CN":{order:80,title:{"en-US":"Upgrade scaffold","zh-CN":"\u5347\u7ea7\u811a\u624b\u67b6"},type:"Dev"}}}]},{types:[{"zh-CN":"CURD","en-US":"CURD"},{"zh-CN":"\u57fa\u7840","en-US":"Basic"},{"zh-CN":"\u8868\u5355","en-US":"Form"},{"zh-CN":"\u5e03\u5c40","en-US":"Layout"},{"zh-CN":"\u4e1a\u52a1","en-US":"Business"},{"zh-CN":"\u5176\u5b83","en-US":"Other"}],name:"components",github:"https://github.com/ng-alain/delon",module:"@delon/abc",list:[{name:"form",route:"/form/getting-started",order:10,i18n:!0,lib:!0,meta:{"zh-CN":{type:"CURD",title:"sf",subtitle:"\u52a8\u6001\u8868\u5355"},"en-US":{type:"CURD",title:"sf",subtitle:"Dynamic Form"}}},{name:"chart",route:"/chart/getting-started",order:100,i18n:!0,lib:!0,meta:{"zh-CN":{type:"Basic",title:"\u56fe\u8868",subtitle:"G2"},"en-US":{type:"Basic",title:"Chart",subtitle:"G2"}}},{name:"auth",route:"/auth/getting-started",order:100,i18n:!0,lib:!0,meta:{"zh-CN":{type:"Business",title:"\u7528\u6237\u8ba4\u8bc1"},"en-US":{type:"Business",title:"Authentication"}}},{name:"acl",route:"/acl/getting-started",order:110,i18n:!0,lib:!0,meta:{"zh-CN":{type:"Business",title:"\u8bbf\u95ee\u63a7\u5236\u5217\u8868"},"en-US":{type:"Business",title:"Access Control List"}}},{name:"cache",route:"/cache/getting-started",order:120,i18n:!0,lib:!0,meta:{"zh-CN":{type:"Business",title:"\u7f13\u5b58"},"en-US":{type:"Business",title:"Cache"}}},{name:"mock",route:"/mock/getting-started",order:130,i18n:!0,lib:!0,meta:{"zh-CN":{type:"Business",title:"Mock\u6a21\u62df\u6570\u636e"},"en-US":{type:"Business",title:"Mock"}}},{name:"util",route:"/util/getting-started",order:120,i18n:!0,lib:!0,meta:{"zh-CN":{type:"Basic",title:"\u5de5\u5177\u96c6"},"en-US":{type:"Basic",title:"Utils"}}},{name:"theme",route:"/theme/getting-started",order:110,i18n:!0,lib:!0,meta:{"zh-CN":{type:"Basic",title:"\u4e3b\u9898\u7cfb\u7edf"},"en-US":{type:"Basic",title:"Theme System"}}},{name:"auto-focus",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Other",title:"auto-focus",subtitle:"Auto focus",cols:1,module:"import { AutoFocusModule } from '@delon/abc/auto-focus';"},"zh-CN":{type:"Other",title:"auto-focus",subtitle:"\u81ea\u52a8\u83b7\u5f97\u7126\u70b9",cols:1,module:"import { AutoFocusModule } from '@delon/abc/auto-focus';"}}},{name:"avatar-list",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Basic",title:"avatar-list",subtitle:"AvatarList",cols:1,module:"import { AvatarListModule } from '@delon/abc/avatar-list';"},"zh-CN":{type:"Basic",title:"avatar-list",subtitle:"\u7528\u6237\u5934\u50cf\u5217\u8868",cols:1,module:"import { AvatarListModule } from '@delon/abc/avatar-list';"}}},{name:"cell",i18n:!0,order:4,cols:1,meta:{"en-US":{type:"CURD",title:"cell",subtitle:"Cell Data",cols:1,order:4,module:"import { CellModule } from '@delon/abc/cell';"},"zh-CN":{type:"CURD",title:"cell",subtitle:"\u5355\u5143\u683c\u6570\u636e",cols:1,order:4,module:"import { CellModule } from '@delon/abc/cell';"}}},{name:"count-down",i18n:!0,order:-1,cols:3,meta:{"en-US":{type:"Basic",title:"count-down",subtitle:"Count down",cols:3,module:"import { CountDownModule } from '@delon/abc/count-down';"},"zh-CN":{type:"Basic",title:"count-down",subtitle:"\u5012\u8ba1\u65f6",cols:3,module:"import { CountDownModule } from '@delon/abc/count-down';"}}},{name:"date-picker",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Form",title:"range-picker",subtitle:"Data Range",cols:1,module:"import { DatePickerModule } from '@delon/abc/date-picker';"},"zh-CN":{type:"Form",title:"range-picker",subtitle:"\u65e5\u671f\u8303\u56f4",cols:1,module:"import { DatePickerModule } from '@delon/abc/date-picker';"}}},{name:"down-file",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Basic",title:"down-file",subtitle:"Download file",cols:1,module:"import { DownFileModule } from '@delon/abc/down-file';"},"zh-CN":{type:"Basic",title:"down-file",subtitle:"\u4e0b\u8f7d\u6587\u4ef6",cols:1,module:"import { DownFileModule } from '@delon/abc/down-file';"}}},{name:"ellipsis",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Layout",title:"ellipsis",subtitle:"Ellipsis",cols:1,module:"import { EllipsisModule } from '@delon/abc/ellipsis';"},"zh-CN":{type:"Layout",title:"ellipsis",subtitle:"\u6587\u672c\u81ea\u52a8\u7701\u7565\u53f7",cols:1,module:"import { EllipsisModule } from '@delon/abc/ellipsis';"}}},{name:"error-collect",i18n:!0,order:-1,cols:2,meta:{"en-US":{type:"Form",title:"error-collect",subtitle:"Error Collect",cols:2,module:"import { ErrorCollectModule } from '@delon/abc/error-collect';"},"zh-CN":{type:"Form",title:"error-collect",subtitle:"\u8868\u5355\u5f02\u5e38\u6d88\u606f\u91c7\u96c6\u5668",cols:2,module:"import { ErrorCollectModule } from '@delon/abc/error-collect';"}}},{name:"exception",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Layout",title:"exception",subtitle:"Exception",cols:1,module:"import { ExceptionModule } from '@delon/abc/exception';"},"zh-CN":{type:"Layout",title:"exception",subtitle:"\u5f02\u5e38",cols:1,module:"import { ExceptionModule } from '@delon/abc/exception';"}}},{name:"footer-toolbar",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Layout",title:"footer-toolbar",subtitle:"FooterToolbar",cols:1,module:"import { FooterToolbarModule } from '@delon/abc/footer-toolbar';"},"zh-CN":{type:"Layout",title:"footer-toolbar",subtitle:"\u5e95\u90e8\u5de5\u5177\u680f",cols:1,module:"import { FooterToolbarModule } from '@delon/abc/footer-toolbar';"}}},{name:"full-content",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Layout",title:"full-content",subtitle:"Full Screen Workspace",cols:1,module:"import { FullContentModule } from '@delon/abc/full-content';"},"zh-CN":{type:"Layout",title:"full-content",subtitle:"\u5168\u5c4f\u5de5\u4f5c\u533a",cols:1,module:"import { FullContentModule } from '@delon/abc/full-content';"}}},{name:"global-footer",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Layout",title:"global-footer",subtitle:"Global footer",cols:1,module:"import { GlobalFooterModule } from '@delon/abc/global-footer';"},"zh-CN":{type:"Layout",title:"global-footer",subtitle:"\u5168\u5c40\u9875\u811a",cols:1,module:"import { GlobalFooterModule } from '@delon/abc/global-footer';"}}},{name:"highlight",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Other",title:"highlight",subtitle:"Highlight",cols:1,module:"import { NzHighlightModule } from 'ng-zorro-antd/core/highlight';"},"zh-CN":{type:"Other",title:"highlight",subtitle:"\u9ad8\u4eae",cols:1,module:"import { NzHighlightModule } from 'ng-zorro-antd/core/highlight';"}}},{name:"hotkey",i18n:!0,order:1,cols:2,meta:{"en-US":{type:"Basic",order:1,title:"hotkey",subtitle:"Hotkey",cols:2,module:"import { HotkeyModule } from '@delon/abc/hotkey';"},"zh-CN":{type:"Basic",order:1,title:"hotkey",subtitle:"\u70ed\u952e",cols:2,module:"import { HotkeyModule } from '@delon/abc/hotkey';"}}},{name:"let",i18n:!0,order:1,cols:1,meta:{"en-US":{type:"Basic",order:1,title:"let",subtitle:"Let",cols:1,module:"import { LetModule } from '@delon/abc/let';"},"zh-CN":{type:"Basic",order:1,title:"let",subtitle:"\u5b9a\u4e49",cols:1,module:"import { LetModule } from '@delon/abc/let';"}}},{name:"loading",i18n:!0,order:2,cols:2,meta:{"en-US":{type:"Basic",order:2,title:"loading",subtitle:"Loading indicator",cols:2,module:"import { LoadingModule } from '@delon/abc/loading';"},"zh-CN":{type:"Basic",order:2,title:"loading",subtitle:"\u52a0\u8f7d\u6307\u793a\u7b26",cols:2,module:"import { LoadingModule } from '@delon/abc/loading';"}}},{name:"lodop",i18n:!0,order:4,cols:1,meta:{"en-US":{type:"Basic",order:4,title:"lodop",subtitle:"Lodop Print",cols:1,module:"import { LodopModule } from '@delon/abc/lodop';"},"zh-CN":{type:"Basic",order:4,title:"lodop",subtitle:"Lodop\u6253\u5370",cols:1,module:"import { LodopModule } from '@delon/abc/lodop';"}}},{name:"media",i18n:!0,order:1,cols:2,meta:{"en-US":{type:"Basic",order:1,title:"media",subtitle:"HTML5 Media",cols:2,module:"import { MediaModule } from '@delon/abc/media';"},"zh-CN":{type:"Basic",order:1,title:"media",subtitle:"HTML5\u5a92\u4f53",cols:2,module:"import { MediaModule } from '@delon/abc/media';"}}},{name:"notice-icon",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Business",title:"notice-icon",subtitle:"Notification menu",cols:1,module:"import { NoticeIconModule } from '@delon/abc/notice-icon';"},"zh-CN":{type:"Business",title:"notice-icon",subtitle:"\u901a\u77e5\u83dc\u5355",cols:1,module:"import { NoticeIconModule } from '@delon/abc/notice-icon';"}}},{name:"observers",i18n:!0,order:7,cols:1,meta:{"en-US":{type:"Basic",title:"Observers",order:7,module:"import { ObserversModule } from '@delon/abc/observers';"},"zh-CN":{type:"Basic",title:"Observers",subtitle:"\u89c2\u5bdf\u8005",order:7,module:"import { ObserversModule } from '@delon/abc/observers';"}}},{name:"onboarding",i18n:!0,order:7,cols:1,meta:{"en-US":{type:"Basic",title:"onboarding",subtitle:"Onboarding",order:7,module:"import { OnboardingModule } from '@delon/abc/onboarding';"},"zh-CN":{type:"Basic",title:"onboarding",subtitle:"\u7528\u6237\u5f15\u5bfc\u6d41\u7a0b",order:7,module:"import { OnboardingModule } from '@delon/abc/onboarding';"}}},{name:"page-header",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Layout",title:"page-header",subtitle:"Page Header",cols:1,module:"import { PageHeaderModule } from '@delon/abc/page-header';"},"zh-CN":{type:"Layout",title:"page-header",subtitle:"\u9875\u5934",cols:1,module:"import { PageHeaderModule } from '@delon/abc/page-header';"}}},{name:"pdf",i18n:!0,order:3,cols:1,meta:{"en-US":{type:"Basic",order:3,title:"pdf",subtitle:"Pdf",cols:1,module:"import { PdfModule } from '@delon/abc/pdf';"},"zh-CN":{type:"Basic",order:3,title:"pdf",subtitle:"Pdf",cols:1,module:"import { PdfModule } from '@delon/abc/pdf';"}}},{name:"qr",i18n:!0,order:3,cols:1,meta:{"en-US":{type:"Basic",order:3,title:"qr",subtitle:"QR",cols:1,module:"import { QRModule } from '@delon/abc/qr';",deprecated:"18.0.0"},"zh-CN":{type:"Basic",order:3,title:"qr",subtitle:"\u4e8c\u7ef4\u7801",cols:1,module:"import { QRModule } from '@delon/abc/qr';",deprecated:"18.0.0"}}},{name:"quick-menu",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Business",title:"quick-menu",subtitle:"Quick Menu",cols:1,module:"import { QuickMenuModule } from '@delon/abc/quick-menu';"},"zh-CN":{type:"Business",title:"quick-menu",subtitle:"\u5feb\u901f\u83dc\u5355",cols:1,module:"import { QuickMenuModule } from '@delon/abc/quick-menu';"}}},{name:"result",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Layout",title:"result",subtitle:"Result",cols:1,module:"import { ResultModule } from '@delon/abc/result';"},"zh-CN":{type:"Layout",title:"result",subtitle:"\u5904\u7406\u7ed3\u679c",cols:1,module:"import { ResultModule } from '@delon/abc/result';"}}},{name:"reuse-tab",i18n:!0,order:1,cols:1,meta:{"en-US":{type:"Basic",order:1,title:"reuse-tab",subtitle:"Reuse Route Tab",cols:1,module:"import { ReuseTabModule } from '@delon/abc/reuse-tab';"},"zh-CN":{type:"Basic",order:1,title:"reuse-tab",subtitle:"\u8def\u7531\u590d\u7528\u6807\u7b7e",cols:1,module:"import { ReuseTabModule } from '@delon/abc/reuse-tab';"}}},{name:"se",i18n:!0,order:3,cols:1,meta:{"en-US":{type:"CURD",title:"se",subtitle:"Edit",cols:1,order:3,module:"import { SEModule } from '@delon/abc/se';"},"zh-CN":{type:"CURD",title:"se",subtitle:"\u7f16\u8f91",cols:1,order:3,module:"import { SEModule } from '@delon/abc/se';"}}},{name:"sg",i18n:!0,order:1,cols:1,meta:{"en-US":{type:"Layout",order:1,title:"sg",subtitle:"Simple Grid",cols:1,module:"import { SGModule } from '@delon/abc/sg';"},"zh-CN":{type:"Layout",order:1,title:"sg",subtitle:"\u7b80\u6613\u6805\u683c",cols:1,module:"import { SGModule } from '@delon/abc/sg';"}}},{name:"st",i18n:!0,order:1,cols:1,meta:{"en-US":{type:"CURD",title:"st",subtitle:"Table",cols:1,order:1,module:"import { STModule } from '@delon/abc/st';"},"zh-CN":{type:"CURD",title:"st",subtitle:"\u8868\u683c",cols:1,order:1,module:"import { STModule } from '@delon/abc/st';"}}},{name:"sv",i18n:!0,order:2,cols:1,meta:{"en-US":{type:"CURD",title:"sv",subtitle:"View",cols:1,order:2,module:"import { SVModule } from '@delon/abc/sv';"},"zh-CN":{type:"CURD",title:"sv",subtitle:"\u67e5\u770b",cols:1,order:2,module:"import { SVModule } from '@delon/abc/sv';"}}},{name:"tag-select",i18n:!0,order:-1,cols:1,meta:{"en-US":{type:"Layout",title:"tag-select",subtitle:"Tag Select",cols:1,module:"import { TagSelectModule } from '@delon/abc/tag-select';"},"zh-CN":{type:"Layout",title:"tag-select",subtitle:"\u6807\u7b7e\u9009\u62e9\u5668",cols:1,module:"import { TagSelectModule } from '@delon/abc/tag-select';"}}},{name:"xlsx",i18n:!0,order:6,cols:1,meta:{"en-US":{type:"Basic",title:"xlsx",order:6,subtitle:"Excel",cols:1,module:"import { XlsxModule } from '@delon/abc/xlsx';"},"zh-CN":{type:"Basic",title:"xlsx",order:6,subtitle:"Excel \u64cd\u4f5c",cols:1,module:"import { XlsxModule } from '@delon/abc/xlsx';"}}},{name:"zip",i18n:!0,order:7,cols:1,meta:{"en-US":{type:"Basic",title:"zip",order:7,subtitle:"Zip",cols:1,module:"import { ZipModule } from '@delon/abc/zip';"},"zh-CN":{type:"Basic",title:"zip",order:7,subtitle:"Zip \u64cd\u4f5c",cols:1,module:"import { ZipModule } from '@delon/abc/zip';"}}}]},{types:[{"zh-CN":"\u6587\u6863","en-US":"Documents"}],name:"auth",github:"https://github.com/ng-alain/delon",module:"@delon/auth",list:[{name:"get",i18n:!0,order:10,cols:1,meta:{"en-US":{order:10,title:{"en-US":"Get Token","zh-CN":"\u83b7\u53d6Token"},type:"Documents"},"zh-CN":{order:10,title:{"en-US":"Get Token","zh-CN":"\u83b7\u53d6Token"},type:"Documents"}}},{name:"getting-started",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"Getting Started",type:"Documents"},"zh-CN":{order:1,title:"\u5f00\u59cb\u4f7f\u7528",type:"Documents"}}},{name:"guard",i18n:!0,order:25,cols:1,meta:{"en-US":{order:25,title:{"en-US":"Routing guard","zh-CN":"\u8def\u7531\u5b88\u536b"},type:"Documents"},"zh-CN":{order:25,title:"\u8def\u7531\u5b88\u536b",type:"Documents"}}},{name:"qa",i18n:!0,order:10,cols:1,meta:{"en-US":{order:10,title:"QA",type:"Documents"},"zh-CN":{order:10,title:"\u5e38\u89c1\u95ee\u9898",type:"Documents"}}},{name:"send",i18n:!0,order:20,cols:1,meta:{"en-US":{order:20,title:{"zh-CN":"\u53d1\u9001Token","en-US":"Send Token"},type:"Documents"},"zh-CN":{order:20,title:"\u53d1\u9001Token",type:"Documents"}}},{name:"service",i18n:!0,order:2,cols:1,meta:{"en-US":{order:2,title:"TokenService",type:"Documents"},"zh-CN":{order:2,title:"TokenService",type:"Documents"}}},{name:"set",i18n:!0,order:15,cols:1,meta:{"en-US":{order:15,title:{"zh-CN":"\u5b58\u50a8Token","en-US":"Store Token"},type:"Documents"},"zh-CN":{order:15,title:"\u5b58\u50a8Token",type:"Documents"}}}]},{types:[{"zh-CN":"\u6587\u6863","en-US":"Documents"}],name:"acl",github:"https://github.com/ng-alain/delon",module:"@delon/acl",list:[{name:"control",i18n:!0,order:3,cols:1,meta:{"en-US":{order:3,title:"Granular permissions",type:"Documents"},"zh-CN":{order:3,title:"\u7c92\u5ea6\u63a7\u5236",type:"Documents"}}},{name:"getting-started",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"Getting Started",type:"Documents"},"zh-CN":{order:1,title:"\u5f00\u59cb\u4f7f\u7528",type:"Documents"}}},{name:"guard",i18n:!0,order:3,cols:1,meta:{"en-US":{order:3,title:"Guard",type:"Documents"},"zh-CN":{order:3,title:"\u8def\u7531\u5b88\u536b",type:"Documents"}}}]},{types:[{"zh-CN":"\u6587\u6863","en-US":"Documents"}],name:"cache",github:"https://github.com/ng-alain/delon",module:"@delon/cache",list:[{name:"getting-started",i18n:!1,order:1,cols:1,meta:{"zh-CN":{order:1,title:"\u5f00\u59cb\u4f7f\u7528",type:"Documents"}}},{name:"service",i18n:!1,order:2,cols:1,meta:{"zh-CN":{order:2,title:"CacheService",type:"Documents"}}}]},{types:[{"zh-CN":"\u6587\u6863","en-US":"Documents"},{"zh-CN":"G2","en-US":"G2"},{"zh-CN":"ECharts","en-US":"ECharts"}],name:"chart",github:"https://github.com/ng-alain/delon",module:"@delon/chart",list:[{name:"faq",i18n:!0,order:100,cols:1,meta:{"en-US":{order:100,title:"FAQ",type:"Documents"},"zh-CN":{order:100,title:"\u5e38\u89c1\u95ee\u9898",type:"Documents"}}},{name:"getting-started",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"Getting Started",type:"Documents"},"zh-CN":{order:1,title:"\u5f00\u59cb\u4f7f\u7528",type:"Documents"}}},{name:"bar",i18n:!1,order:-1,cols:1,meta:{"zh-CN":{title:"g2-bar",subtitle:"\u67f1\u72b6\u56fe",cols:1,type:"G2",module:"import { G2BarModule } from '@delon/chart/bar';"}}},{name:"card",i18n:!1,order:-1,cols:2,meta:{"zh-CN":{title:"g2-card",subtitle:"\u56fe\u8868\u5361\u7247",cols:2,type:"G2",module:"import { G2CardModule } from '@delon/chart/card';"}}},{name:"chart-echarts",i18n:!1,order:-1,cols:1,meta:{"zh-CN":{title:"chart-echarts",subtitle:"ECharts",cols:1,type:"ECharts",module:"import { ChartEChartsModule } from '@delon/chart/chart-echarts';"}}},{name:"custom",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"g2-chart",subtitle:"Custom Chart",cols:1,type:"G2",module:"import { G2CustomModule } from '@delon/chart/custom';"},"zh-CN":{title:"g2-chart",subtitle:"\u81ea\u5b9a\u4e49\u56fe\u8868",cols:1,type:"G2",module:"import { G2CustomModule } from '@delon/chart/custom';"}}},{name:"gauge",i18n:!1,order:-1,cols:1,meta:{"zh-CN":{title:"g2-gauge",subtitle:"\u4eea\u8868\u76d8",cols:1,type:"G2",module:"import { G2GaugeModule } from '@delon/chart/gauge';"}}},{name:"mini-area",i18n:!1,order:-1,cols:2,meta:{"zh-CN":{title:"g2-mini-area",subtitle:"\u8ff7\u4f60\u533a\u57df\u56fe",cols:2,type:"G2",module:"import { G2MiniAreaModule } from '@delon/chart/mini-area';"}}},{name:"mini-bar",i18n:!1,order:-1,cols:2,meta:{"zh-CN":{title:"g2-mini-bar",subtitle:"\u8ff7\u4f60\u67f1\u72b6\u56fe",cols:2,type:"G2",module:"import { G2MiniBarModule } from '@delon/chart/mini-bar';"}}},{name:"mini-progress",i18n:!1,order:-1,cols:1,meta:{"zh-CN":{title:"g2-mini-progress",subtitle:"\u8ff7\u4f60\u8fdb\u5ea6\u6761",cols:1,type:"G2",module:"import { G2MiniProgressModule } from '@delon/chart/mini-progress';"}}},{name:"number-info",i18n:!0,order:-1,cols:2,meta:{"en-US":{type:"G2",title:"number-info",subtitle:"NumberInfo",cols:2,module:"import { NumberInfoModule } from '@delon/chart/number-info';"},"zh-CN":{type:"G2",title:"number-info",subtitle:"\u6570\u636e\u6587\u672c",cols:2,module:"import { NumberInfoModule } from '@delon/chart/number-info';"}}},{name:"pie",i18n:!1,order:-1,cols:1,meta:{"zh-CN":{title:"g2-pie",subtitle:"\u997c\u72b6\u56fe",cols:1,type:"G2",module:"import { G2PieModule } from '@delon/chart/pie';"}}},{name:"radar",i18n:!1,order:-1,cols:1,meta:{"zh-CN":{title:"g2-radar",subtitle:"\u96f7\u8fbe\u56fe",cols:1,type:"G2",module:"import { G2RadarModule } from '@delon/chart/radar';"}}},{name:"single-bar",i18n:!1,order:-1,cols:1,meta:{"zh-CN":{title:"g2-single-bar",subtitle:"\u5355\u4e00\u67f1\u72b6\u56fe",cols:1,type:"G2",module:"import { G2SingleBarModule } from '@delon/chart/single-bar';"}}},{name:"tag-cloud",i18n:!1,order:-1,cols:1,meta:{"zh-CN":{title:"g2-tag-cloud",subtitle:"\u6807\u7b7e\u4e91",cols:1,type:"G2",module:"import { G2TagCloudModule } from '@delon/chart/tag-cloud';"}}},{name:"timeline",i18n:!1,order:-1,cols:1,meta:{"zh-CN":{title:"g2-timeline",subtitle:"\u6298\u7ebf\u56fe",cols:1,type:"G2",module:"import { G2TimelineModule } from '@delon/chart/timeline';"}}},{name:"trend",i18n:!1,order:-1,cols:1,meta:{"zh-CN":{type:"G2",title:"trend",subtitle:"\u8d8b\u52bf\u6807\u8bb0",cols:1,module:"import { TrendModule } from '@delon/chart/trend';"}}},{name:"water-wave",i18n:!1,order:-1,cols:1,meta:{"zh-CN":{title:"g2-water-wave",subtitle:"\u6c34\u6ce2\u56fe",cols:1,type:"G2",module:"import { G2WaterWaveModule } from '@delon/chart/water-wave';"}}}]},{types:[{"zh-CN":"\u6587\u6863","en-US":"Documents"}],name:"mock",github:"https://github.com/ng-alain/delon",module:"@delon/mock",list:[{name:"getting-started",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"Getting Started",type:"Documents"},"zh-CN":{order:1,title:"\u5f00\u59cb\u4f7f\u7528",type:"Documents"}}},{name:"rule",i18n:!0,order:2,cols:1,meta:{"en-US":{order:2,title:"Rule Data",type:"Documents"},"zh-CN":{order:2,title:"\u89c4\u5219\u6570\u636e",type:"Documents"}}}]},{types:[{"zh-CN":"\u6587\u6863","en-US":"Documents"},{"zh-CN":"\u5de5\u5177\u7c7b","en-US":"Tools"},{"zh-CN":"\u7ba1\u9053","en-US":"Pipes"}],name:"util",github:"https://github.com/ng-alain/delon",module:"@delon/util",list:[{name:"getting-started",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"Getting Started",type:"Documents"},"zh-CN":{order:1,title:"\u5f00\u59cb\u4f7f\u7528",type:"Documents"}}},{name:"array",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"array",subtitle:"Array&Tree,flat,groupBy,uniq",type:"Tools"},"zh-CN":{title:"array",subtitle:"\u6570\u7ec4,\u6811,\u6241\u5e73,\u5206\u7ec4,\u53bb\u91cd",type:"Tools"}}},{name:"browser",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"browser",subtitle:"Cookie, Copy, DOM etc",type:"Tools"},"zh-CN":{title:"browser",subtitle:"Cookie\u3001Copy\u3001DOM \u7b49",type:"Tools"}}},{name:"date-time",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"date-time",subtitle:"Date Time Conversion",type:"Tools"},"zh-CN":{title:"date-time",subtitle:"\u65e5\u671f\u65f6\u95f4\u8f6c\u6362",type:"Tools"}}},{name:"decorator",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"decorator",subtitle:"Decorator",type:"Tools"},"zh-CN":{title:"decorator",subtitle:"\u88c5\u9970\u5668",type:"Tools"}}},{name:"form",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"form",subtitle:"Reactive Forms",type:"Tools"},"zh-CN":{title:"form",subtitle:"\u54cd\u5e94\u5f0f\u8868\u5355\u6821\u9a8c",type:"Tools"}}},{name:"format",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"format",subtitle:"String,Check,Currency,Mask",type:"Tools"},"zh-CN":{title:"format",subtitle:"\u5b57\u7b26,\u6821\u9a8c,\u8d27\u5e01,\u63a9\u7801",type:"Tools"}}},{name:"math",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"math",subtitle:"Math, Rounding",type:"Tools"},"zh-CN":{title:"math",subtitle:"\u8303\u56f4\u3001\u56db\u820d\u4e94\u5165",type:"Tools"}}},{name:"other",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"other",subtitle:"Deep get,copy,merge,lazy,assert",type:"Tools"},"zh-CN":{title:"other",subtitle:"\u6df1\u83b7\u53d6\u3001\u62f7\u8d1d\u3001\u5408\u5e76\u3001\u5ef6\u8fdf\u3001\u65ad\u8a00",type:"Tools"}}},{name:"pipes-currency",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"currency",subtitle:"Currency Pipes",type:"Pipes",module:"import { CurrencyPipeModule } from '@delon/util/pipes/currency';"},"zh-CN":{title:"currency",subtitle:"\u8d27\u5e01\u7ba1\u9053",type:"Pipes",module:"import { CurrencyPipeModule } from '@delon/util/pipes/currency';"}}},{name:"pipes-filter",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"filter",subtitle:"Filter",type:"Pipes",module:"import { FilterPipeModule } from '@delon/util/pipes/filter';"},"zh-CN":{title:"filter",subtitle:"\u8fc7\u6ee4\u6570\u7ec4",type:"Pipes",module:"import { FilterPipeModule } from '@delon/util/pipes/filter';"}}},{name:"pipes-format",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"format",subtitle:"Mask",type:"Pipes",module:"import { FormatPipeModule } from '@delon/util/pipes/format';"},"zh-CN":{title:"format",subtitle:"\u63a9\u7801",type:"Pipes",module:"import { FormatPipeModule } from '@delon/util/pipes/format';"}}},{name:"token",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"token",subtitle:"Token",type:"Tools"},"zh-CN":{title:"token",subtitle:"Token",type:"Tools"}}}]},{types:[{"zh-CN":"\u6587\u6863","en-US":"Documents"},{"zh-CN":"Examples","en-US":"Examples"},{"zh-CN":"\u5c0f\u90e8\u4ef6","en-US":"Widgets"},{"zh-CN":"\u7b2c\u4e09\u65b9\u5c0f\u90e8\u4ef6","en-US":"Third Widgets"}],name:"form",github:"https://github.com/ng-alain/delon",module:"@delon/form",list:[{name:"validator",route:"/form-pages/validator",i18n:!1,meta:{"zh-CN":{type:"Examples",title:"\u5728\u7ebf\u6821\u9a8c\u5668"}}},{name:"customize",i18n:!0,order:4,cols:1,meta:{"en-US":{order:4,title:"Customize Widgets",type:"Documents"},"zh-CN":{order:4,title:"\u81ea\u5b9a\u4e49\u5c0f\u90e8\u4ef6",type:"Documents"}}},{name:"error",i18n:!0,order:3,cols:1,meta:{"en-US":{order:3,title:"Validation Error",type:"Documents"},"zh-CN":{order:3,title:"\u6821\u9a8c\u9519\u8bef",type:"Documents"}}},{name:"getting-started",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"Getting Started",type:"Documents"},"zh-CN":{order:1,title:"\u5f00\u59cb\u4f7f\u7528",type:"Documents"}}},{name:"layout",i18n:!0,order:5,cols:1,meta:{"en-US":{order:5,title:"Layout",type:"Documents"},"zh-CN":{order:5,title:"\u5982\u4f55\u5e03\u5c40",type:"Documents"}}},{name:"qa",i18n:!0,order:99,cols:1,meta:{"en-US":{order:99,title:"FAQ",type:"Documents"},"zh-CN":{order:99,title:"\u5e38\u89c1\u95ee\u9898",type:"Documents"}}},{name:"schema",i18n:!0,order:2,cols:1,meta:{"en-US":{order:2,title:"Schema",type:"Documents"},"zh-CN":{order:2,title:"Schema",type:"Documents"}}},{name:"acl",i18n:!1,order:-1,cols:1,meta:{"zh-CN":{title:"acl",subtitle:"ACL",type:"Examples"}}},{name:"conditional",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"Conditional expression",type:"Examples"},"zh-CN":{title:"visibleIf",subtitle:"\u6761\u4ef6\u8868\u8fbe\u5f0f",type:"Examples"}}},{name:"i18n",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"i18n",subtitle:"Internationalization",type:"Examples"},"zh-CN":{title:"i18n",subtitle:"\u56fd\u9645\u5316",type:"Examples"}}},{name:"modal",i18n:!1,order:-1,cols:1,meta:{"zh-CN":{title:"modal",subtitle:"\u6a21\u6001\u6846",type:"Examples"}}},{name:"array",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"array",subtitle:"Array",type:"Widgets"},"zh-CN":{title:"array",subtitle:"\u6570\u7ec4",type:"Widgets"}}},{name:"autocomplete",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"autocomplete",subtitle:"Autocomplete",type:"Widgets"},"zh-CN":{title:"autocomplete",subtitle:"\u81ea\u52a8\u5b8c\u6210",type:"Widgets"}}},{name:"boolean",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"boolean",subtitle:"Switch",type:"Widgets"},"zh-CN":{title:"boolean",subtitle:"\u5f00\u5173",type:"Widgets"}}},{name:"cascader",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"cascader",subtitle:"Cascader",type:"Widgets"},"zh-CN":{title:"cascader",subtitle:"\u7ea7\u8054\u9009\u62e9",type:"Widgets"}}},{name:"checkbox",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"checkbox",subtitle:"Checkbox",type:"Widgets"},"zh-CN":{title:"checkbox",subtitle:"\u591a\u9009\u6846",type:"Widgets"}}},{name:"custom",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"custom",subtitle:"Custom",type:"Widgets"},"zh-CN":{title:"custom",subtitle:"\u81ea\u5b9a\u4e49",type:"Widgets"}}},{name:"date",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"date",subtitle:"Date",type:"Widgets"},"zh-CN":{title:"date",subtitle:"\u65e5\u671f",type:"Widgets"}}},{name:"mention",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"mention",subtitle:"Mention",type:"Widgets"},"zh-CN":{title:"mention",subtitle:"\u63d0\u53ca",type:"Widgets"}}},{name:"number",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"number",subtitle:"Input Number",type:"Widgets"},"zh-CN":{title:"number",subtitle:"\u6570\u5b57",type:"Widgets"}}},{name:"object",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"object",subtitle:"Object",type:"Widgets"},"zh-CN":{title:"object",subtitle:"\u5bf9\u8c61",type:"Widgets"}}},{name:"radio",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"radio",subtitle:"Radio",type:"Widgets"},"zh-CN":{title:"radio",subtitle:"\u5355\u9009\u6846",type:"Widgets"}}},{name:"rate",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"rate",subtitle:"Rate",type:"Widgets"},"zh-CN":{title:"rate",subtitle:"\u8bc4\u5206",type:"Widgets"}}},{name:"select",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"select",subtitle:"Select",type:"Widgets"},"zh-CN":{title:"select",subtitle:"\u9009\u62e9\u5668",type:"Widgets"}}},{name:"slider",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"range",subtitle:"Slider",type:"Widgets"},"zh-CN":{title:"range",subtitle:"\u6ed1\u52a8\u8f93\u5165\u6761",type:"Widgets"}}},{name:"string",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"string",subtitle:"Input",type:"Widgets"},"zh-CN":{title:"string",subtitle:"\u6587\u672c\u6846",type:"Widgets"}}},{name:"tag",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"tag",subtitle:"Tag",type:"Widgets"},"zh-CN":{title:"tag",subtitle:"\u6807\u7b7e",type:"Widgets"}}},{name:"text",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"text",subtitle:"Text",type:"Widgets"},"zh-CN":{title:"text",subtitle:"\u6587\u672c",type:"Widgets"}}},{name:"textarea",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"textarea",subtitle:"Textarea",type:"Widgets"},"zh-CN":{title:"textarea",subtitle:"\u591a\u884c\u6587\u672c\u6846",type:"Widgets"}}},{name:"time",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"time",subtitle:"Time",type:"Widgets"},"zh-CN":{title:"time",subtitle:"\u65f6\u95f4",type:"Widgets"}}},{name:"transfer",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"transfer",subtitle:"Transfer",type:"Widgets"},"zh-CN":{title:"transfer",subtitle:"\u7a7f\u68ad\u6846",type:"Widgets"}}},{name:"tree-select",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"tree-select",subtitle:"Tree Select",type:"Widgets"},"zh-CN":{title:"tree-select",subtitle:"\u6811\u9009\u62e9",type:"Widgets"}}},{name:"upload",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"upload",subtitle:"Upload",type:"Widgets"},"zh-CN":{title:"upload",subtitle:"\u4e0a\u4f20",type:"Widgets"}}},{name:"markdown",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"markdown",subtitle:"Markdown Editor",type:"Third Widgets"},"zh-CN":{title:"markdown",subtitle:"Markdown\u7f16\u8f91\u5668",type:"Third Widgets"}}},{name:"tinymce",i18n:!0,order:-1,cols:1,meta:{"en-US":{title:"tinymce",subtitle:"Tinymce Rich Text",type:"Third Widgets"},"zh-CN":{title:"tinymce",subtitle:"Tinymce\u5bcc\u6587\u672c",type:"Third Widgets"}}}]},{types:[{"zh-CN":"\u6587\u6863","en-US":"Documents"}],name:"cli",github:"https://github.com/ng-alain/delon",module:"ng-alain",list:[{name:"add",i18n:!0,order:10,cols:1,meta:{"en-US":{order:10,title:"ng add",subtitle:"Create scaffold",type:"Documents"},"zh-CN":{order:10,title:"ng add",subtitle:"\u521b\u5efa\u811a\u624b\u67b6",type:"Documents"}}},{name:"default",i18n:!0,order:90,cols:1,meta:{"en-US":{order:90,title:"Default parameter",type:"Documents"},"zh-CN":{order:90,title:"\u9ed8\u8ba4\u53c2\u6570",type:"Documents"}}},{name:"generate",i18n:!0,order:20,cols:1,meta:{"en-US":{order:20,title:"ng g",subtitle:"Business page",type:"Documents"},"zh-CN":{order:20,title:"ng g",subtitle:"\u4e1a\u52a1\u9875",type:"Documents"}}},{name:"getting-started",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"Getting Started",type:"Documents"},"zh-CN":{order:1,title:"\u5f00\u59cb\u4f7f\u7528",type:"Documents"}}},{name:"plugin",i18n:!0,order:30,cols:1,meta:{"en-US":{order:30,title:"Pluggable plugin",type:"Documents"},"zh-CN":{order:30,title:"\u63d2\u4ef6",type:"Documents"}}},{name:"sta",i18n:!0,order:40,cols:1,meta:{"en-US":{order:40,title:"sta",subtitle:"Swagger API generator",type:"Documents"},"zh-CN":{order:40,title:"sta",subtitle:"Swagger API \u751f\u6210\u5668",type:"Documents"}}}]},{types:[{"zh-CN":"\u6587\u6863","en-US":"Documents"},{"zh-CN":"\u4e3b\u9898","en-US":"Theme"},{"zh-CN":"\u670d\u52a1","en-US":"Service"},{"zh-CN":"\u8def\u7531","en-US":"Router"},{"zh-CN":"\u7ba1\u9053","en-US":"Pipe"}],name:"theme",github:"https://github.com/ng-alain/delon",module:"ng-alain",list:[{name:"component-styles",i18n:!1,order:15,cols:1,meta:{"zh-CN":{type:"Documents",order:15,title:"\u7ec4\u4ef6\u6837\u5f0f"}}},{name:"customize-theme",i18n:!0,order:5,cols:1,meta:{"en-US":{order:5,title:"Customize Theme",type:"Documents"},"zh-CN":{order:5,title:"\u5b9a\u5236\u4e3b\u9898",type:"Documents"}}},{name:"getting-started",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"Getting Started",type:"Documents"},"zh-CN":{order:1,title:"\u5f00\u59cb\u4f7f\u7528",type:"Documents"}}},{name:"global",i18n:!0,order:1,cols:1,meta:{"en-US":{type:"Theme",order:1,title:"Global Parameters"},"zh-CN":{type:"Theme",order:1,title:"\u5168\u5c40\u53c2\u6570"}}},{name:"icon",i18n:!1,order:20,cols:1,meta:{"zh-CN":{type:"Documents",order:20,title:"Icon"}}},{name:"locale",i18n:!0,order:2,cols:1,meta:{"en-US":{order:2,title:"Internationalization",type:"Documents"},"zh-CN":{order:2,title:"\u56fd\u9645\u5316",type:"Documents"}}},{name:"performance",i18n:!0,order:10,cols:1,meta:{"en-US":{type:"Documents",order:10,title:"Performance"},"zh-CN":{type:"Documents",order:10,title:"\u5305\u4f53\u4f18\u5316"}}},{name:"tools",i18n:!0,order:2,cols:1,meta:{"en-US":{type:"Theme",order:2,title:"Style Tools"},"zh-CN":{type:"Theme",order:2,title:"\u6837\u5f0f\u5de5\u5177\u7c7b"}}},{name:"layout-default",i18n:!0,order:100,cols:1,meta:{"en-US":{type:"Theme",order:100,title:"Default Layout"},"zh-CN":{type:"Theme",order:100,title:"\u9ed8\u8ba4\u5e03\u5c40"}}},{name:"layout-blank",i18n:!0,order:110,cols:1,meta:{"en-US":{type:"Theme",order:110,title:"Blank Layout"},"zh-CN":{type:"Theme",order:110,title:"\u7a7a\u767d\u5e03\u5c40"}}},{name:"theme-btn",i18n:!0,order:1001,cols:1,meta:{"en-US":{type:"Theme",title:"theme-btn",subtitle:"Component-Change Style",cols:1,order:1001,module:"import { ThemeBtnModule } from '@delon/theme/theme-btn';"},"zh-CN":{type:"Theme",title:"theme-btn",subtitle:"\u7ec4\u4ef6-\u5207\u6362\u6837\u5f0f",cols:1,order:1001,module:"import { ThemeBtnModule } from '@delon/theme/theme-btn';"}}},{name:"index",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"PreloadOptionalModules",type:"Router"},"zh-CN":{order:1,title:"PreloadOptionalModules",type:"Router"}}},{name:"date",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"_date",subtitle:"Date",type:"Pipe"},"zh-CN":{order:1,title:"_date",subtitle:"\u65e5\u671f",type:"Pipe"}}},{name:"keys",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"keys",subtitle:"Keys",type:"Pipe"},"zh-CN":{order:1,title:"keys",subtitle:"\u53ef\u8fed\u4ee3\u5bf9\u8c61",type:"Pipe"}}},{name:"safe",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"safe",subtitle:"XSS",type:"Pipe"},"zh-CN":{order:1,title:"safe",subtitle:"\u5b89\u5168HTML\u7b49",type:"Pipe"}}},{name:"yn",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"yn",subtitle:"Badge",type:"Pipe"},"zh-CN":{order:1,title:"yn",subtitle:"\u5fbd\u7ae0",type:"Pipe"}}},{name:"drawer",i18n:!0,order:3,cols:1,meta:{"en-US":{order:3,title:"DrawerHelper",subtitle:"Drawer Helper",type:"Service"},"zh-CN":{order:3,title:"DrawerHelper",subtitle:"\u62bd\u5c49\u8f85\u52a9\u7c7b",type:"Service"}}},{name:"http",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"_HttpClient",type:"Service"},"zh-CN":{order:1,title:"_HttpClient",type:"Service"}}},{name:"menu",i18n:!0,order:2,cols:1,meta:{"en-US":{order:2,title:"MenuService",subtitle:"Menu Service",type:"Service"},"zh-CN":{order:2,title:"MenuService",subtitle:"\u83dc\u5355\u670d\u52a1",type:"Service"}}},{name:"modal",i18n:!0,order:3,cols:1,meta:{"en-US":{order:3,title:"ModalHelper",subtitle:"Modal Helper",type:"Service"},"zh-CN":{order:3,title:"ModalHelper",subtitle:"\u5bf9\u8bdd\u6846\u8f85\u52a9\u7c7b",type:"Service"}}},{name:"responsive",i18n:!0,order:5,cols:1,meta:{"en-US":{type:"Service",order:5,title:"ResponsiveService",subtitle:"Responsive Service"},"zh-CN":{type:"Service",order:5,title:"ResponsiveService",subtitle:"\u54cd\u5e94\u5f0f\u670d\u52a1"}}},{name:"rtl",i18n:!0,order:6,cols:1,meta:{"en-US":{type:"Service",order:6,title:"RTLService",subtitle:"RTL Service"},"zh-CN":{type:"Service",order:6,title:"RTLService",subtitle:"RTL\u670d\u52a1"}}},{name:"settings",i18n:!0,order:1,cols:1,meta:{"en-US":{order:1,title:"SettingsService",subtitle:"Project configuration",type:"Service"},"zh-CN":{order:1,title:"SettingsService",subtitle:"\u9879\u76ee\u914d\u7f6e\u9879\u670d\u52a1",type:"Service"}}},{name:"title",i18n:!0,order:4,cols:1,meta:{"en-US":{order:4,title:"TitleService",subtitle:"Title Service",type:"Service"},"zh-CN":{order:4,title:"TitleService",subtitle:"\u9875\u9762\u6807\u9898\u670d\u52a1",type:"Service"}}}]}];let p=(()=>{class f{constructor(T){this.i18n=T,this._menus=null,this._isPages=!1;for(const x of d)for(const D of x.list){const _=D.meta[T.defaultLang].title;D._t="string"!=typeof _?Object.values(_).map(P=>P).join("-"):_}}set(T){const x=this.getCatgory(T);if(!x)return!1;const D=this.getPageName(T),_=x.list.find(P=>P.name===D)||null;return!_||(this._data={..._.meta[this.i18n.defaultLang],..._.meta[this.i18n.currentLang],i18n:_.i18n,name:_.name,module_name:x.module||"",github:x.github,list:x.list},"object"==typeof this._data.title&&(this._data.title=this._data.title[this.i18n.currentLang]||this._data.title[this.i18n.defaultLang]),this.refPage(T),!1)}get item(){return this._data||null}get github(){return this._data.github}get data(){return this._data.list}get isPages(){return this._isPages}get menus(){return this._menus}get type(){return this._type}clearMenu(){this._menus=null}getCatgory(T){const x=T.split("?")[0].split("/");if(x.length<=2)return;let D=x[1].toLowerCase().trim(),_=d.find(P=>P.name===D);return~D.indexOf("-")?(D=D.split("-")[0],_=d.find(P=>P.name===D),this._isPages=!!_):this._isPages=!1,_}getPageName(T){return T.split("?")[0].split("/")[2].toLowerCase().trim()}getType(T){return this.getCatgory(T)?T.split("?")[0].split("/")[1].toLowerCase().split("-")[0]:""}refMenu(T){if(!this.menus)return void this.genMenus(T);const x=this.getType(T);x&&this._type!==x&&this.genMenus(T)}genMenus(T){const x=this.getCatgory(T);if(!x)return;const D=x.types.map((_,P)=>({index:P,title:_[this.i18n.currentLang]||_[this.i18n.defaultLang],list:[]}));x.list.forEach(_=>{const P=_.meta[this.i18n.currentLang]||_.meta[this.i18n.defaultLang];let O=x.types.findIndex(F=>F["zh-CN"]===P.type||F["en-US"]===P.type);-1===O&&(O=0);let A=D.find(F=>F.index===O);A||(A={index:O,title:x.types[O][this.i18n.currentLang]||x.types[O][this.i18n.defaultLang],list:[]},D.push(A));const k={url:`${P.url||_.route||`/${x.name}/${_.name}`}/${this.i18n.zone}`,title:this.i18n.get(P.title),subtitle:P.subtitle,order:_.order,hot:"boolean"==typeof P.hot&&P.hot,lib:"boolean"==typeof _.lib&&_.lib,deprecated:P.deprecated};A.list.push(k)}),this._platMenus=[],this._menus=D.filter(_=>Array.isArray(_.list)&&_.list.length>0).map(_=>(_.list.sort(-1===_.list[0].order?(P,O)=>P.title.toLowerCase().localeCompare(O.title.toLowerCase()):(P,O)=>P.order-O.order),this._platMenus=this._platMenus.concat(_.list),_)).filter(_=>_.list.length)}getPathByUrl(T){let x;return T=T.split("=")[0].split("?")[0].replace(/\/(en|zh)$/,"/"),(this._menus||[]).forEach(D=>{x||(x=D.list.find(_=>_.url.startsWith(T)))}),x}refPage(T){this.next=null,this.prev=null,this._menus||this.genMenus(T);const x=this._platMenus.findIndex(D=>D.url===T);-1!==x&&(x>0&&(this.prev=this._platMenus[x-1]),x+1<=this._platMenus.length&&(this.next=this._platMenus[x+1]))}search(T,x=5){const D=this.i18n.zone,_=[];for(const P of d){const O=P.name.toLowerCase(),A=P.list.filter(k=>k._t.includes(T)).map(k=>({title:k._t,name:k.name,url:`${k.route||`/${O}/${k.name}`}/${D}`}));null!=A&&A.length&&_.push({title:P.name,type:O,children:A.slice(0,x)})}return _}static#e=this.\u0275fac=function(x){return new(x||f)(g.LFG(e.Oi))};static#t=this.\u0275prov=g.Yz7({token:f,factory:f.\u0275fac,providedIn:"root"})}return f})()},20814:(nt,I,o)=>{"use strict";o.d(I,{W:()=>t});var e=o(65619),n=o(65879);let t=(()=>{class i{constructor(){this.notify$=new e.X(null)}next(C){this.notify$.next(C)}get change(){return this.notify$.asObservable()}static#e=this.\u0275fac=function(E){return new(E||i)};static#t=this.\u0275prov=n.Yz7({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})()},27358:(nt,I,o)=>{"use strict";o.d(I,{e:()=>K});var e=o(65879),n=o(71993),t=o(32181),i=o(980),l=o(24593),C=o(64115),E=o(87691),u=o(3604),z=o(43460),M=o(6593),h=o(96814),v=o(70855),g=o(96109),d=o(90551),p=o(24311),f=o(63123);function y(_e,Y){if(1&_e&&(e.ynx(0),e.TgZ(1,"div",15),e._uU(2),e._UZ(3,"edit-button",16),e.qZA(),e._UZ(4,"div",17),e.BQk()),2&_e){const G=e.oxw();e.xp6(2),e.hij(" ",G.item.title," "),e.xp6(1),e.Q6J("item",G.item),e.xp6(1),e.Q6J("innerHTML",G.item.summary,e.oJD)}}function T(_e,Y){if(1&_e){const G=e.EpF();e.ynx(0),e._uU(1," ( "),e.TgZ(2,"a",18),e.NdJ("click",function(){e.CHM(G);const j=e.oxw(2);return e.KtG(j.openOnlineIDE("CodeSandbox",!0))}),e._uU(3),e.ALo(4,"i18n"),e.qZA(),e._uU(5," ) "),e.BQk()}2&_e&&(e.xp6(3),e.Oqu(e.lcZ(4,1,"app.demo.code-sandbox-cli")))}function x(_e,Y){1&_e&&(e._uU(0),e.ALo(1,"i18n"),e.YNc(2,T,6,3,"ng-container",4)),2&_e&&(e.hij(" ",e.lcZ(1,2,"app.demo.code-sandbox")," "),e.xp6(2),e.Q6J("ngIf",!1))}const D=function(_e){return{background:_e}},_=function(_e){return{"browser-mockup":_e}},P=function(_e){return{"height.px":_e}},O=function(_e){return{"browser-scroll":_e}},A=function(_e,Y){return{"code-expand-icon-hide":_e,"code-expand-icon-show":Y}},k=function(_e,Y){return{"code-expand-icon-show":_e,"code-expand-icon-hide":Y}},F=function(_e){return{"highlight-wrapper-expand":_e}},W=["*"];let K=(()=>{class _e{set item(G){this._orgItem||(this._orgItem=(0,C.p$)(G));const H={meta:G.meta,code:G.code.trim(),title:this.i18n.get(G.meta.title),summary:this.sanitizer.bypassSecurityTrustHtml(this.i18n.get(G.summary)),browser:+G.meta.browser>0?+G.meta.browser:null,bg:G.meta.bg,urls:G.urls};this._item=H}get item(){return this._item}constructor(G,H,j,te,ne,pe){this.appService=G,this.i18n=H,this.msg=j,this.codeSrv=te,this.sanitizer=ne,this.cdr=pe,this.destroy$=(0,e.f3M)(e.ktI),this.copied=!1,this.theme="default",this.type="default",this.expand=!1}ngOnInit(){this.appService.theme$.pipe((0,n.sL)(this.destroy$)).subscribe(G=>{this.theme=G,this.check()}),this.i18n.change.pipe((0,t.h)(()=>!!this._orgItem),(0,n.sL)(this.destroy$)).subscribe(()=>{this.item.title=this.i18n.get(this._orgItem.meta.title),this.item.summary=this.i18n.get(this._orgItem.summary),this.check()})}check(){this.cdr.markForCheck()}handle(){this.expand=!this.expand,this.check()}openOnlineIDE(G="StackBlitz",H=!1){"StackBlitz"===G?this.codeSrv.openOnStackBlitz(this.item.title,this.item.code):this.codeSrv.openOnCodeSandbox(this.item.title,this.item.code,H)}onCopy(G){(0,l.J)(G).then(()=>{this.msg.success(this.i18n.fanyi("app.demo.copied")),this.copied=!0,this.check(),setTimeout(()=>{this.copied=!1,this.check()},1e3)})}static#e=this.\u0275fac=function(H){return new(H||_e)(e.Y36(E.z),e.Y36(i.Oi),e.Y36(z.dD),e.Y36(u.$),e.Y36(M.H7),e.Y36(e.sBO))};static#t=this.\u0275cmp=e.Xpm({type:_e,selectors:[["code-box"]],hostVars:4,hostBindings:function(H,j){2&H&&e.ekj("code-box",!0)("expand",j.expand)},inputs:{item:"item",type:"type",expand:"expand"},ngContentSelectors:W,decls:22,vars:38,consts:[[1,"code-box-demo",3,"ngStyle"],[3,"ngClass","ngStyle"],[3,"ngClass"],[1,"code-box-meta","markdown"],[4,"ngIf"],[1,"code-box-actions"],["nz-tooltip","","nz-icon","","nzType","code-sandbox",1,"code-box-code-icon",3,"nzTooltipTitle","click"],["codeSandboxTpl",""],["nz-tooltip","","nz-icon","","nzType","thunderbolt","nzTheme","fill",1,"code-box-code-icon",3,"nzTooltipTitle","click"],["nz-tooltip","","nz-icon","",1,"code-box-code-icon",3,"nzTooltipTitle","nzType","click"],["nz-tooltip","",1,"code-expand-icon",3,"nzTooltipTitle"],["alt","expand code",3,"src","ngClass","click"],[1,"highlight-wrapper",3,"ngClass"],[1,"highlight"],[1,"hljs","language-ts"],[1,"code-box-title"],[3,"item"],[1,"code-box-description",3,"innerHTML"],[3,"click"]],template:function(H,j){if(1&H&&(e.F$t(),e.TgZ(0,"section",0)(1,"div",1)(2,"div",2),e.Hsn(3),e.qZA()()(),e.TgZ(4,"section",3),e.YNc(5,y,5,3,"ng-container",4),e.TgZ(6,"div",5)(7,"i",6),e.NdJ("click",function(){return j.openOnlineIDE("CodeSandbox",!0)}),e.qZA(),e.YNc(8,x,3,4,"ng-template",null,7,e.W1O),e.TgZ(10,"i",8),e.NdJ("click",function(){return j.openOnlineIDE()}),e.ALo(11,"i18n"),e.qZA(),e.TgZ(12,"i",9),e.NdJ("click",function(){return j.onCopy(j.item.code)}),e.ALo(13,"i18n"),e.qZA(),e.TgZ(14,"i",10)(15,"img",11),e.NdJ("click",function(){return j.handle()}),e.qZA(),e.TgZ(16,"img",11),e.NdJ("click",function(){return j.handle()}),e.qZA()()()(),e.TgZ(17,"section",12)(18,"div",13)(19,"pre",14)(20,"code"),e._uU(21),e.qZA()()()()),2&H){const te=e.MAs(9);e.Q6J("ngStyle",e.VKq(22,D,j.item.bg)),e.xp6(1),e.Q6J("ngClass",e.VKq(24,_,j.item.browser))("ngStyle",e.VKq(26,P,j.item.browser)),e.xp6(1),e.Q6J("ngClass",e.VKq(28,O,j.item.browser)),e.xp6(3),e.Q6J("ngIf","default"===j.type),e.xp6(2),e.Q6J("nzTooltipTitle",te),e.xp6(3),e.Q6J("nzTooltipTitle",e.lcZ(11,18,"app.demo.stackblitz")),e.xp6(2),e.ekj("ant-tooltip-open",j.copied),e.Q6J("nzTooltipTitle",e.lcZ(13,20,"app.demo.copy"))("nzType",j.copied?"check":"snippets"),e.xp6(2),e.Q6J("nzTooltipTitle",j.expand?"Hide Code":"Show Code"),e.xp6(1),e.Q6J("src","dark"===j.theme?"https://gw.alipayobjects.com/zos/antfincdn/btT3qDZn1U/wSAkBuJFbdxsosKKpqyq.svg":"https://gw.alipayobjects.com/zos/rmsportal/wSAkBuJFbdxsosKKpqyq.svg",e.LSH)("ngClass",e.WLB(30,A,j.expand,!j.expand)),e.xp6(1),e.Q6J("src","dark"===j.theme?"https://gw.alipayobjects.com/zos/antfincdn/CjZPwcKUG3/OpROPHYqWmrMDBFMZtKF.svg":"https://gw.alipayobjects.com/zos/rmsportal/OpROPHYqWmrMDBFMZtKF.svg",e.LSH)("ngClass",e.WLB(33,k,j.expand,!j.expand)),e.xp6(1),e.Q6J("ngClass",e.VKq(36,F,j.expand)),e.xp6(4),e.Oqu(j.item.code)}},dependencies:[h.mk,h.O5,h.PC,v.w,g.SY,d.Ls,p.M,f.C],encapsulation:2,changeDetection:0})}return _e})()},93285:(nt,I,o)=>{"use strict";o.d(I,{S:()=>T});var e=o(65879),n=o(71993),t=o(49548),i=o(20814),l=o(96814),C=o(52787),E=o(70855),u=o(10095),z=o(90551),M=o(23771),h=o(68014),v=o(84617);function g(x,D){if(1&x){const _=e.EpF();e.TgZ(0,"div",7)(1,"nz-affix")(2,"div",8),e.NdJ("to",function(){e.CHM(_);const O=e.oxw();return e.KtG(O.to())}),e.qZA()()()}}function d(x,D){if(1&x&&(e.TgZ(0,"a",12),e._UZ(1,"i",13),e.TgZ(2,"span"),e._uU(3),e.qZA(),e.TgZ(4,"span",14),e._uU(5),e.qZA()()),2&x){const _=e.oxw(2);e.s9C("routerLink",_.meta.prev.url),e.xp6(3),e.Oqu(_.meta.prev.title),e.xp6(2),e.Oqu(_.meta.prev.subtitle)}}function p(x,D){if(1&x&&(e.TgZ(0,"a",15)(1,"span"),e._uU(2),e.qZA(),e.TgZ(3,"span",14),e._uU(4),e.qZA(),e._UZ(5,"i",16),e.qZA()),2&x){const _=e.oxw(2);e.s9C("routerLink",_.meta.next.url),e.xp6(2),e.Oqu(_.meta.next.title),e.xp6(2),e.Oqu(_.meta.next.subtitle)}}function f(x,D){if(1&x&&(e.TgZ(0,"div",9),e.YNc(1,d,6,3,"a",10),e.YNc(2,p,6,3,"a",11),e.qZA()),2&x){const _=e.oxw();e.xp6(1),e.Q6J("ngIf",_.meta.prev),e.xp6(1),e.Q6J("ngIf",_.meta.next)}}function y(x,D){if(1&x){const _=e.EpF();e.TgZ(0,"div",17)(1,"div",18)(2,"div",19),e.NdJ("click",function(){e.CHM(_);const O=e.oxw();return e.KtG(O.opened=!O.opened)}),e.qZA(),e.TgZ(3,"div",20)(4,"div",21)(5,"main-menu",22),e.NdJ("to",function(){e.CHM(_);const O=e.oxw();return e.KtG(O.to())}),e.qZA()(),e.TgZ(6,"div",23),e.NdJ("click",function(){e.CHM(_);const O=e.oxw();return e.KtG(O.opened=!O.opened)}),e._UZ(7,"i",24),e.qZA()()()()}if(2&x){const _=e.oxw();e.xp6(1),e.ekj("drawer-open",_.opened)}}let T=(()=>{class x{constructor(_,P,O){this.meta=_,this.mobileSrv=P,this.cdr=O,this.destroy$=(0,e.f3M)(e.ktI),this.opened=!1}ngOnInit(){this.mobileSrv.change.pipe((0,n.sL)(this.destroy$)).subscribe(_=>{this.isMobile=_,this.cdr.detectChanges()})}to(){this.opened=!1}static#e=this.\u0275fac=function(P){return new(P||x)(e.Y36(t.R),e.Y36(i.W),e.Y36(e.sBO))};static#t=this.\u0275cmp=e.Xpm({type:x,selectors:[["app-content"]],hostVars:2,hostBindings:function(P,O){2&P&&e.ekj("main-wrapper",!0)},decls:8,vars:5,consts:[["nz-row",""],["nz-col","","nzXs","24","nzSm","24","nzMd","6","nzLg","6","nzXl","5","nzXXl","4","class","main-menu",4,"ngIf"],["nz-col","","nzXs","24","nzSm","24","nzMd","18","nzLg","18","nzXl","19","nzXXl","20"],[1,"main-container"],["class","prev-next-nav",4,"ngIf"],["small",""],["class","drawer-wrapper",4,"ngIf"],["nz-col","","nzXs","24","nzSm","24","nzMd","6","nzLg","6","nzXl","5","nzXXl","4",1,"main-menu"],["main-menu","",1,"main-menu-inner",3,"to"],[1,"prev-next-nav"],["class","prev-page",3,"routerLink",4,"ngIf"],["class","next-page",3,"routerLink",4,"ngIf"],[1,"prev-page",3,"routerLink"],["nz-icon","","nzType","left",1,"footer-nav-icon-before"],[1,"chinese"],[1,"next-page",3,"routerLink"],["nz-icon","","nzType","right",1,"footer-nav-icon-after"],[1,"drawer-wrapper"],[1,"drawer","drawer-left"],[1,"drawer-mask",3,"click"],[1,"drawer-content-wrapper"],[1,"drawer-content"],[3,"to"],[1,"drawer-button",3,"click"],["nz-icon","","nzType","menu-unfold"]],template:function(P,O){1&P&&(e.TgZ(0,"div",0),e.YNc(1,g,3,0,"div",1),e.TgZ(2,"div",2)(3,"div",3),e._UZ(4,"router-outlet"),e.qZA(),e.YNc(5,f,3,2,"div",4),e._UZ(6,"app-footer",5),e.qZA()(),e.YNc(7,y,8,2,"div",6)),2&P&&(e.xp6(1),e.Q6J("ngIf",!O.isMobile),e.xp6(2),e.ekj("pages-container",O.meta.isPages),e.xp6(2),e.Q6J("ngIf",O.meta.next||O.meta.prev),e.xp6(2),e.Q6J("ngIf",O.isMobile))},dependencies:[l.O5,C.lC,C.rH,E.w,u.t3,u.SK,z.Ls,M.$,h.c,v.C],encapsulation:2,changeDetection:0})}return x})()},24205:(nt,I,o)=>{"use strict";o.d(I,{o:()=>u});var e=o(65879),n=o(43389),t=o(52787),i=o(42840),l=o(70855),C=o(41958),E=o(96814);let u=(()=>{class z{constructor(h){this.ref=h}ok(){this.ref.close("new time: "+ +new Date),this.cancel()}cancel(){this.ref.close()}static#e=this.\u0275fac=function(v){return new(v||z)(e.Y36(n.lB))};static#t=this.\u0275cmp=e.Xpm({type:z,selectors:[["app-demo-dialog-drawer"]],inputs:{record:"record"},decls:11,vars:5,consts:[[2,"height","1000px"],["routerLink","/"],[1,"drawer-footer"],["nz-button","",3,"nzType","click"]],template:function(v,g){1&v&&(e.TgZ(0,"p",0),e._uU(1),e.ALo(2,"json"),e.TgZ(3,"a",1),e._uU(4,"Change Router"),e.qZA()(),e._uU(5," The end! "),e.TgZ(6,"div",2)(7,"button",3),e.NdJ("click",function(){return g.cancel()}),e._uU(8," Cancel "),e.qZA(),e.TgZ(9,"button",3),e.NdJ("click",function(){return g.ok()}),e._uU(10," OK "),e.qZA()()),2&v&&(e.xp6(1),e.hij("\u53c2\u6570\uff1a",e.lcZ(2,3,g.record),","),e.xp6(6),e.Q6J("nzType","default"),e.xp6(2),e.Q6J("nzType","primary"))},dependencies:[t.rH,i.ix,l.w,C.dQ,E.Ts],encapsulation:2})}return z})()},50662:(nt,I,o)=>{"use strict";o.d(I,{X:()=>E});var e=o(65879),n=o(81221),t=o(42840),i=o(70855),l=o(41958),C=o(96814);let E=(()=>{class u{constructor(M){this.modal=M}ok(){this.modal.destroy("new time: "+ +new Date)}cancel(){this.modal.destroy()}static#e=this.\u0275fac=function(h){return new(h||u)(e.Y36(n.Lf))};static#t=this.\u0275cmp=e.Xpm({type:u,selectors:[["app-demo-dialog-modal"]],inputs:{record:"record"},decls:11,vars:7,consts:[[1,"modal-header"],[1,"modal-title"],[1,"modal-footer"],["nz-button","",3,"nzType","nzSize","click"]],template:function(h,v){1&h&&(e.TgZ(0,"div",0)(1,"div",1),e._uU(2,"Custom component"),e.qZA()(),e.TgZ(3,"p"),e._uU(4),e.ALo(5,"json"),e.qZA(),e.TgZ(6,"div",2)(7,"button",3),e.NdJ("click",function(){return v.cancel()}),e._uU(8," Cancel "),e.qZA(),e.TgZ(9,"button",3),e.NdJ("click",function(){return v.ok()}),e._uU(10," OK "),e.qZA()()),2&h&&(e.xp6(4),e.hij("\u53c2\u6570\uff1a",e.lcZ(5,5,v.record),""),e.xp6(3),e.Q6J("nzType","default")("nzSize","large"),e.xp6(2),e.Q6J("nzType","primary")("nzSize","large"))},dependencies:[t.ix,i.w,l.dQ,C.Ts],encapsulation:2})}return u})()},94824:(nt,I,o)=>{"use strict";o.d(I,{J:()=>E});var e=o(65879),n=o(81221),t=o(47535),i=o(42840),l=o(70855),C=o(41958);let E=(()=>{class u{constructor(M){this.modal=M,this.schema={properties:{name:{title:"Name",type:"string"}},required:["name"],ui:{spanLabelFixed:150,grid:{span:24}}}}save(M){this.modal.destroy(M)}close(){this.modal.destroy()}static#e=this.\u0275fac=function(h){return new(h||u)(e.Y36(n.Lf))};static#t=this.\u0275cmp=e.Xpm({type:u,selectors:[["app-demo-dialog-modal"]],decls:10,vars:4,consts:[[1,"modal-header"],[1,"modal-title"],["mode","edit","button","none",3,"schema","formData"],["sf",""],[1,"modal-footer"],["nz-button","","type","button",3,"click"],["nz-button","","type","submit",3,"nzType","disabled","click"]],template:function(h,v){if(1&h){const g=e.EpF();e.TgZ(0,"div",0)(1,"div",1),e._uU(2,"Sf demo"),e.qZA()(),e.TgZ(3,"sf",2,3)(5,"div",4)(6,"button",5),e.NdJ("click",function(){return v.close()}),e._uU(7,"\u5173\u95ed"),e.qZA(),e.TgZ(8,"button",6),e.NdJ("click",function(){e.CHM(g);const p=e.MAs(4);return e.KtG(v.save(p.value))}),e._uU(9,"\u4fdd\u5b58"),e.qZA()()()}if(2&h){const g=e.MAs(4);e.xp6(3),e.Q6J("schema",v.schema)("formData",v.i),e.xp6(5),e.Q6J("nzType","primary")("disabled",!g.valid)}},dependencies:[t.k,i.ix,l.w,C.dQ],encapsulation:2})}return u})()},28749:(nt,I,o)=>{"use strict";o.d(I,{P:()=>G});var e=o(96814),n=o(32181),t=o(980),i=o(24593),l=o(64115),C=o(65879),E=o(49548),u=o(52787),z=o(6593),M=o(43460),h=o(62831),v=o(96109),g=o(23771),d=o(93903),p=o(29094),f=o(24311),y=o(11188),T=o(63123);function x(H,j){if(1&H&&C._UZ(0,"nz-link",5),2&H){const te=j.$implicit;C.Q6J("nzHref","#"+te.id)("nzTitle",te.title)}}function D(H,j){if(1&H&&(C.ynx(0),C.YNc(1,x,1,2,"nz-link",4),C.BQk()),2&H){const te=C.oxw().$implicit;C.xp6(1),C.Q6J("ngForOf",te.children)}}function _(H,j){if(1&H&&(C.TgZ(0,"nz-link",5),C.YNc(1,D,2,1,"ng-container",1),C.qZA()),2&H){const te=j.$implicit;C.Q6J("nzHref","#"+te.id)("nzTitle",te.title),C.xp6(1),C.Q6J("ngIf",te.children&&te.children.length>0)}}function P(H,j){if(1&H){const te=C.EpF();C.TgZ(0,"nz-affix",2)(1,"nz-anchor",3),C.NdJ("nzClick",function(pe){C.CHM(te);const re=C.oxw();return C.KtG(re.goLink(pe))}),C.YNc(2,_,2,3,"nz-link",4),C.qZA()()}if(2&H){const te=C.oxw();C.xp6(2),C.Q6J("ngForOf",te.data.con.toc)}}function O(H,j){if(1&H&&(C._uU(0),C.TgZ(1,"a",15),C._uU(2," Help us!"),C.qZA()),2&H){const te=C.oxw(3);C.hij(" ","need-update"===te.data.con.meta.i18n?"This article need re-translated, hope that your can PR to translated it.":"This article has not been translated, hope that your can PR to translated it."," ")}}function A(H,j){if(1&H&&(C.TgZ(0,"nz-alert",13),C.YNc(1,O,3,1,"ng-template",null,14,C.W1O),C.qZA()),2&H){const te=C.MAs(2);C.Q6J("nzType","warning")("nzCloseable","true")("nzMessage",te)}}function k(H,j){if(1&H){const te=C.EpF();C.TgZ(0,"div",16)(1,"span",17),C.NdJ("click",function(){C.CHM(te);const pe=C.oxw(2);return C.KtG(pe.copyModule())}),C.ALo(2,"i18n"),C._uU(3," IMPORT MODULE "),C.qZA()()}if(2&H){const te=C.oxw(2);C.xp6(1),C.Q6J("nzTooltipTitle",C.lcZ(2,1,"app.content.copy-import-module")+te.data.con.module)}}function F(H,j){if(1&H&&C._UZ(0,"div",18),2&H){const te=C.oxw(2);C.Q6J("innerHTML",te.data.con.content,C.oJD)}}function W(H,j){if(1&H&&(C.ynx(0),C._UZ(1,"h2",19),C.Hsn(2),C.BQk()),2&H){const te=C.oxw(2);C.xp6(1),C.s9C("id",te.demoStr),C.Q6J("innerHTML",te.demoContent,C.oJD)}}function K(H,j){if(1&H&&C._UZ(0,"div",20),2&H){const te=C.oxw(2);C.Q6J("innerHTML",te.data.con.api,C.oJD)}}function _e(H,j){if(1&H&&(C.ynx(0),C.YNc(1,A,3,3,"nz-alert",6),C.TgZ(2,"div",7)(3,"h1",8)(4,"strong"),C._uU(5),C.qZA(),C.YNc(6,k,4,3,"div",9),C._UZ(7,"edit-button",10),C.qZA()(),C.YNc(8,F,1,1,"div",11),C.YNc(9,W,3,2,"ng-container",1),C.YNc(10,K,1,1,"div",12),C.BQk()),2&H){const te=C.oxw();C.xp6(1),C.Q6J("ngIf",!te.meta.item.i18n||"need-update"===te.data.con.meta.i18n),C.xp6(4),C.Oqu(te.meta.item.subtitle||te.meta.item.title),C.xp6(1),C.Q6J("ngIf",te.data.con.module),C.xp6(1),C.Q6J("item",te.item),C.xp6(1),C.Q6J("ngIf",te.data.con.content),C.xp6(1),C.Q6J("ngIf",te.data.demo),C.xp6(1),C.Q6J("ngIf",te.data.con.api)}}const Y=["*"];let G=(()=>{class H{constructor(te,ne,pe,re,be,le,ce){this.meta=te,this.i18n=ne,this.router=pe,this.sanitizer=re,this.doc=be,this.msg=le,this.data={},this.isBrowser=!0,this.isBrowser=ce.isBrowser,this.i18NChange$=this.i18n.change.pipe((0,n.h)(()=>!!this.item)).subscribe(()=>{this.init()})}genData(){const te=(0,l.p$)(this.item),ne={demo:te.demo,urls:te.urls,con:te.content[this.i18n.currentLang]||te.content[this.i18n.defaultLang]};ne.demo&&this.codes&&this.codes.length&&(this.genDemoTitle(),ne.con.toc=this.codes.map(pe=>({h:3,id:pe.id,title:this.i18n.get(pe.meta.title)})).concat({id:"API",title:"API",h:2})),ne.con.content&&(ne.con.content=this.sanitizer.bypassSecurityTrustHtml(ne.con.content)),ne.con.api&&(ne.con.api=this.sanitizer.bypassSecurityTrustHtml(ne.con.api)),ne.con.meta.module&&(ne.con.module=ne.con.meta.module),this.data=ne,setTimeout(()=>{const pe=this.router.parseUrl(this.router.url).fragment||"";if(pe){const re=this.doc.querySelector(`#${pe}`);re&&re.scrollIntoView()}},200)}goLink(te){window&&(window.location.hash=te)}genDemoTitle(){this.demoStr=this.i18n.fanyi("app.component.examples"),this.demoContent=this.sanitizer.bypassSecurityTrustHtml(`${this.demoStr}`)}init(){this.genData(),this.genDemoTitle(),this.isBrowser&&setTimeout(()=>{const te=this.doc.querySelectorAll('[class*="language-"], [class*="lang-"]');for(let pe,ne=0;pe=te[ne++];)hljs.highlightBlock(pe)},250)}copyModule(){(0,i.J)(this.data.con.module).then(()=>{this.msg.success(this.i18n.fanyi("app.demo.copied"))})}ngOnInit(){this.init()}ngOnDestroy(){this.i18NChange$.unsubscribe()}static#e=this.\u0275fac=function(ne){return new(ne||H)(C.Y36(E.R),C.Y36(t.Oi),C.Y36(u.F0),C.Y36(z.H7),C.Y36(e.K0),C.Y36(M.dD),C.Y36(h.t4))};static#t=this.\u0275cmp=C.Xpm({type:H,selectors:[["app-docs"]],inputs:{codes:"codes",item:"item"},ngContentSelectors:Y,decls:2,vars:2,consts:[["class","toc-affix","nzOffsetTop","16",4,"ngIf"],[4,"ngIf"],["nzOffsetTop","16",1,"toc-affix"],["nzShowInkInFixed","","nzAffix","false",3,"nzClick"],[3,"nzHref","nzTitle",4,"ngFor","ngForOf"],[3,"nzHref","nzTitle"],["nzBanner","","class","my-md",3,"nzType","nzCloseable","nzMessage",4,"ngIf"],[1,"markdown"],[1,"flex-center"],["class","ml-sm",4,"ngIf"],[3,"item"],["class","markdown","routeTransfer","",3,"innerHTML",4,"ngIf"],["class","markdown api-container","routeTransfer","",3,"innerHTML",4,"ngIf"],["nzBanner","",1,"my-md",3,"nzType","nzCloseable","nzMessage"],["message",""],["href","//github.com/ng-alain/ng-alain/issues/74","target","_blank"],[1,"ml-sm"],["nz-tooltip","",1,"copy-import-module",3,"nzTooltipTitle","click"],["routeTransfer","",1,"markdown",3,"innerHTML"],["routeTransfer","",2,"margin","32px 0 24px 0",3,"id","innerHTML"],["routeTransfer","",1,"markdown","api-container",3,"innerHTML"]],template:function(ne,pe){1&ne&&(C.F$t(),C.YNc(0,P,3,1,"nz-affix",0),C.YNc(1,_e,11,7,"ng-container",1)),2&ne&&(C.Q6J("ngIf",pe.isBrowser&&(null==pe.data.con.toc?null:pe.data.con.toc.length)),C.xp6(1),C.Q6J("ngIf",pe.meta.item))},dependencies:[e.sg,e.O5,v.SY,g.$,d.r,p.IT,p.Fp,f.M,y.e,T.C],encapsulation:2})}return H})()},24311:(nt,I,o)=>{"use strict";o.d(I,{M:()=>u});var e=o(980),n=o(65879),t=o(49548),i=o(70855),l=o(96109),C=o(90551),E=o(63123);let u=(()=>{class z{set item(h){this._full=`${this.meta.github}/edit/master/${this.i18n.get(h.urls)}`}constructor(h,v){this.meta=h,this.i18n=v}static#e=this.\u0275fac=function(v){return new(v||z)(n.Y36(t.R),n.Y36(e.Oi))};static#t=this.\u0275cmp=n.Xpm({type:z,selectors:[["edit-button"]],inputs:{item:"item"},decls:3,vars:4,consts:[["target","_blank","nz-tooltip","",1,"edit-button",3,"href","nzTooltipTitle"],["nz-icon","","nzType","edit"]],template:function(v,g){1&v&&(n.TgZ(0,"a",0),n.ALo(1,"i18n"),n._UZ(2,"i",1),n.qZA()),2&v&&(n.s9C("href",g._full,n.LSH),n.s9C("nzTooltipTitle",n.lcZ(1,2,"app.content.edit-page")))},dependencies:[i.w,l.SY,C.Ls,E.C],encapsulation:2})}return z})()},68014:(nt,I,o)=>{"use strict";o.d(I,{c:()=>x});var e=o(97582),n=o(980),t=o(24593),i=o(74648),l=o(65879),C=o(43460),E=o(68929),u=o(64115),z=o(90551),M=o(62831),h=o(96814),v=o(52787),g=o(10095),d=o(57417),p=o(45567),f=o(63123);function y(D,_){if(1&D){const P=l.EpF();l.TgZ(0,"color-sketch",23),l.NdJ("onChangeComplete",function(A){l.CHM(P);const k=l.oxw();return l.KtG(k.changeColor(A))}),l.qZA()}if(2&D){const P=l.oxw();l.Q6J("color",P.color)}}const T=function(D){return{background:D}};let x=(()=>{class D{constructor(P,O,A,k,F,W,K,_e){this.i18n=P,this.msg=O,this.loading=A,this.lazy=k,this.iconSrv=F,this.ngZone=W,this.cdr=K,this.platform=_e,this.color="#1890ff",this.lessLoaded=!1,this.small=!1}onCopy(P){(0,t.J)(P).then(()=>this.msg.success(this.i18n.fanyi("app.demo.copied")))}ngOnInit(){this.platform.isBrowser&&this.initColor()}initColor(){const P=document.createElement("link");P.rel="stylesheet/less",P.type="text/css",P.href="/assets/color.less",document.getElementsByTagName("head")[0].appendChild(P)}changeColor(P){const O=()=>{this.ngZone.runOutsideAngular(()=>{window.less.modifyVars({"@primary-color":P.color.hex}).then(()=>{window.scrollTo(0,0),this.ngZone.run(()=>{this.color=P.color.hex,this.iconSrv.twoToneColor.primaryColor=this.color,this.msg.success(this.i18n.fanyi("app.footer.primary-color-changed")),this.cdr.detectChanges()}),this.loading.close()})})};this.loading.open({text:"Compiling...."}),this.lessLoaded?O():(window.less={async:!0,javascriptEnabled:!0},this.lazy.loadScript("https://cdnjs.cloudflare.com/ajax/libs/less.js/3.9.0/less.min.js").then(()=>{this.lessLoaded=!0,O()}))}static#e=this.\u0275fac=function(O){return new(O||D)(l.Y36(n.Oi),l.Y36(C.dD),l.Y36(E.bz),l.Y36(u.Df),l.Y36(z.H5),l.Y36(l.R0b),l.Y36(l.sBO),l.Y36(M.t4))};static#t=this.\u0275cmp=l.Xpm({type:D,selectors:[["app-footer"]],hostVars:6,hostBindings:function(O,A){2&O&&l.ekj("footer",!0)("footer__dark",!0)("footer__small",A.small)},inputs:{small:"small"},decls:93,vars:43,consts:[[1,"footer__wrap"],["nz-row",""],["nz-col","","nzXs","24","nzSm","24","nzLg","6"],[1,"footer__center"],["href","https://github.com/ng-alain/ng-alain","target","_blank"],["href","https://github.com/ng-alain/delon","target","_blank"],["href","https://github.com/ng-alain/ng-zorro-vscode","target","_blank"],["href","https://github.com/ng-alain/ng-alain-vscode","target","_blank"],["href","https://www.angular.cn/","target","_blank"],["href","https://ng.ant.design","target","_blank"],["href","https://cli.angular.io/","target","_blank"],["href","https://antv.alipay.com/","target","_blank"],[3,"routerLink"],["href","https://github.com/ng-alain/ng-alain/issues","target","_blank"],["target","_blank",3,"href"],[3,"click"],["href","https://github.com/cipchk","target","_blank"],[1,"mt-sm"],["href","https://beian.miit.gov.cn/","target","_blank",1,"text-grey"],[1,"mt-lg"],["nz-popover","","nzPopoverTrigger","click","nzPopoverOverlayClassName","theme-color-content",1,"theme-color",3,"nzPopoverContent"],[1,"theme-color-value",3,"ngStyle"],["colorTpl",""],[3,"color","onChangeComplete"]],template:function(O,A){if(1&O&&(l.TgZ(0,"div",0)(1,"div",1)(2,"div",2)(3,"div",3)(4,"h2"),l._uU(5,"ng-alain"),l.qZA(),l.TgZ(6,"div")(7,"a",4),l._uU(8,"Github"),l.qZA()(),l.TgZ(9,"div")(10,"a",5),l._uU(11,"@delon"),l.qZA()(),l.TgZ(12,"div")(13,"a",6),l._uU(14,"ng-zorro-vscode"),l.qZA()(),l.TgZ(15,"div")(16,"a",7),l._uU(17,"ng-alain-vscode"),l.qZA()()()(),l.TgZ(18,"div",2)(19,"div",3)(20,"h2"),l._uU(21),l.ALo(22,"i18n"),l.qZA(),l.TgZ(23,"div")(24,"a",8),l._uU(25,"Angular"),l.qZA(),l.TgZ(26,"span"),l._uU(27," - "),l.qZA(),l._uU(28),l.ALo(29,"i18n"),l.qZA(),l.TgZ(30,"div")(31,"a",9),l._uU(32,"ng-zorro-antd"),l.qZA(),l.TgZ(33,"span"),l._uU(34," - "),l.qZA(),l._uU(35),l.ALo(36,"i18n"),l.qZA(),l.TgZ(37,"div")(38,"a",10),l._uU(39,"CLI"),l.qZA(),l.TgZ(40,"span"),l._uU(41," - "),l.qZA(),l._uU(42),l.ALo(43,"i18n"),l.qZA(),l.TgZ(44,"div")(45,"a",11),l._uU(46,"AntV"),l.qZA(),l.TgZ(47,"span"),l._uU(48," - "),l.qZA(),l._uU(49),l.ALo(50,"i18n"),l.qZA()()(),l.TgZ(51,"div",2)(52,"div",3)(53,"h2"),l._uU(54),l.ALo(55,"i18n"),l.qZA(),l.TgZ(56,"div")(57,"a",12),l._uU(58),l.ALo(59,"i18n"),l.qZA()(),l.TgZ(60,"div")(61,"a",12),l._uU(62),l.ALo(63,"i18n"),l.qZA()(),l.TgZ(64,"div")(65,"a",13),l._uU(66),l.ALo(67,"i18n"),l.qZA()(),l.TgZ(68,"div")(69,"a",14),l._uU(70),l.ALo(71,"i18n"),l.qZA()(),l.TgZ(72,"div")(73,"a",15),l.NdJ("click",function(){return A.onCopy("316911865")}),l._uU(74),l.ALo(75,"i18n"),l.qZA()(),l.TgZ(76,"div")(77,"a",15),l.NdJ("click",function(){return A.onCopy("428749721")}),l._uU(78),l.ALo(79,"i18n"),l.qZA()()()(),l.TgZ(80,"div",2)(81,"div",3),l._uU(82," Copyright \xa9 2021 "),l.TgZ(83,"a",16),l._uU(84,"\xa9\u5361\u8272"),l.qZA(),l.TgZ(85,"p",17)(86,"a",18),l._uU(87,"\u95fdICP\u590718008195\u53f7"),l.qZA()(),l.TgZ(88,"div",19)(89,"div",20),l._UZ(90,"div",21),l.qZA(),l.YNc(91,y,1,1,"ng-template",null,22,l.W1O),l.qZA()()()()()),2&O){const k=l.MAs(92);l.xp6(21),l.Oqu(l.lcZ(22,17,"app.footer.resources")),l.xp6(7),l.hij(" ",l.lcZ(29,19,"app.footer.angular")," "),l.xp6(7),l.hij(" ",l.lcZ(36,21,"app.footer.antd")," "),l.xp6(7),l.hij(" ",l.lcZ(43,23,"app.footer.cli")," "),l.xp6(7),l.hij(" ",l.lcZ(50,25,"app.footer.antv")," "),l.xp6(5),l.Oqu(l.lcZ(55,27,"app.footer.community")),l.xp6(3),l.MGl("routerLink","/docs/changelog/",A.i18n.zone,""),l.xp6(1),l.Oqu(l.lcZ(59,29,"app.footer.change-log")),l.xp6(3),l.MGl("routerLink","/docs/faq/",A.i18n.zone,""),l.xp6(1),l.Oqu(l.lcZ(63,31,"app.footer.faq")),l.xp6(4),l.Oqu(l.lcZ(67,33,"app.footer.issues")),l.xp6(3),l.MGl("href","https://ng-alain.com/issue-helper/index.html#",A.i18n.zone,"",l.LSH),l.xp6(1),l.Oqu(l.lcZ(71,35,"app.footer.issue-help")),l.xp6(4),l.hij("",l.lcZ(75,37,"app.footer.qqgroup")," 1: 316911865"),l.xp6(4),l.hij("",l.lcZ(79,39,"app.footer.qqgroup")," 2: 428749721"),l.xp6(11),l.Q6J("nzPopoverContent",k),l.xp6(1),l.Q6J("ngStyle",l.VKq(41,T,A.color))}},dependencies:[h.PC,v.rH,g.t3,g.SK,d.lU,p.KY,f.C],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,i.yF)()],D.prototype,"small",void 0),D})()},92476:(nt,I,o)=>{"use strict";o.d(I,{o:()=>C});var e=o(97582),n=o(74648),t=o(65879),i=o(70855),l=o(90551);let C=(()=>{class E{constructor(){this.theme="outline",this.spin=!1}static#e=this.\u0275fac=function(M){return new(M||E)};static#t=this.\u0275cmp=t.Xpm({type:E,selectors:[["nz-icon"]],inputs:{type:"type",theme:"theme",spin:"spin",twoToneColor:"twoToneColor",iconfont:"iconfont"},decls:1,vars:5,consts:[["nz-icon","",3,"nzType","nzTheme","nzSpin","nzTwotoneColor","nzIconfont"]],template:function(M,h){1&M&&t._UZ(0,"i",0),2&M&&t.Q6J("nzType",h.type)("nzTheme",h.theme)("nzSpin",h.spin)("nzTwotoneColor",h.twoToneColor)("nzIconfont",h.iconfont)},dependencies:[i.w,l.Ls],encapsulation:2})}return(0,e.gn)([(0,n.yF)()],E.prototype,"spin",void 0),E})()},84617:(nt,I,o)=>{"use strict";o.d(I,{C:()=>f});var e=o(65879),n=o(71993),t=o(980),i=o(49548),l=o(96814),C=o(52787),E=o(70855),u=o(73460),z=o(96109),M=o(33640),h=o(55695);function v(y,T){1&y&&(e.TgZ(0,"nz-tag",9),e._uU(1,"LIB"),e.qZA()),2&y&&e.Q6J("nzColor","blue")}const g=function(){return["ant-menu-item-selected"]};function d(y,T){if(1&y){const x=e.EpF();e.TgZ(0,"li",4),e.NdJ("click",function(){const P=e.CHM(x).$implicit,O=e.oxw(2);return e.KtG(O.to.emit(P.url))}),e.TgZ(1,"nz-badge",5)(2,"span",6),e._uU(3),e.qZA(),e.TgZ(4,"span",7),e._uU(5),e.qZA(),e.YNc(6,v,2,1,"nz-tag",8),e.qZA()()}if(2&y){const x=T.$implicit;e.ekj("menu-deprecated",x.deprecated),e.Q6J("routerLink",x.url)("routerLinkActive",e.DdM(9,g))("nzTooltipTitle",x.deprecated?"Deprecated in "+x.deprecated:null),e.xp6(1),e.Q6J("nzDot",x.hot),e.xp6(2),e.Oqu(x.title),e.xp6(2),e.Oqu(x.subtitle),e.xp6(1),e.Q6J("ngIf",x.lib)}}function p(y,T){if(1&y&&(e.TgZ(0,"li",2)(1,"ul"),e.YNc(2,d,7,10,"li",3),e.qZA()()),2&y){const x=T.$implicit;e.Q6J("nzTitle",x.title),e.xp6(2),e.Q6J("ngForOf",x.list)}}let f=(()=>{class y{get menus(){return this.meta.menus}constructor(x,D,_){this.meta=x,this.i18n=D,this.cdr=_,this.destroy$=(0,e.f3M)(e.ktI),this.count=0,this.to=new e.vpe}ngOnInit(){this.i18n.change.pipe((0,n.sL)(this.destroy$)).subscribe(()=>this.cdr.markForCheck()),this.count=this.meta.menus?.reduce((x,D)=>x+D.list.length,0)}static#e=this.\u0275fac=function(D){return new(D||y)(e.Y36(i.R),e.Y36(t.Oi),e.Y36(e.sBO))};static#t=this.\u0275cmp=e.Xpm({type:y,selectors:[["main-menu"],["","main-menu",""]],outputs:{to:"to"},decls:2,vars:1,consts:[["nz-menu","","nzMode","inline",1,"aside-container"],["nz-menu-group","","nzOpen","",3,"nzTitle",4,"ngFor","ngForOf"],["nz-menu-group","","nzOpen","",3,"nzTitle"],["nz-menu-item","","style","padding-left: 54px","nz-tooltip","",3,"routerLink","routerLinkActive","menu-deprecated","nzTooltipTitle","click",4,"ngFor","ngForOf"],["nz-menu-item","","nz-tooltip","",2,"padding-left","54px",3,"routerLink","routerLinkActive","nzTooltipTitle","click"],[3,"nzDot"],[1,"name"],[1,"chinese"],["title","Full Library","class","ml-sm",3,"nzColor",4,"ngIf"],["title","Full Library",1,"ml-sm",3,"nzColor"]],template:function(D,_){1&D&&(e.TgZ(0,"ul",0),e.YNc(1,p,3,2,"li",1),e.qZA()),2&D&&(e.xp6(1),e.Q6J("ngForOf",_.menus))},dependencies:[l.sg,l.O5,C.rH,C.Od,E.w,u.wO,u.u9,u.uA,z.SY,M.x7,h.j],encapsulation:2,changeDetection:0})}return y})()},22204:(nt,I,o)=>{"use strict";o.d(I,{J:()=>i});var e=o(52787),n=o(32181),t=o(65879);let i=(()=>{class l{set options(E){this._options={cls:"ant-menu-item-selected",...E}}constructor(E,u,z){this.router=E,this.element=u,this.renderer=z}setCls(){this.router.navigated&&Promise.resolve().then(()=>{const{regex:E,cls:u}=this._options;E.test(this.router.url)?this.renderer.addClass(this.element.nativeElement,u):this.renderer.removeClass(this.element.nativeElement,u)})}ngAfterViewInit(){this.url$=this.router.events.pipe((0,n.h)(E=>E instanceof e.m2)).subscribe(()=>this.setCls()),this.setCls()}ngOnDestroy(){this.url$&&this.url$.unsubscribe()}static#e=this.\u0275fac=function(u){return new(u||l)(t.Y36(e.F0),t.Y36(t.SBq),t.Y36(t.Qsj))};static#t=this.\u0275dir=t.lG2({type:l,selectors:[["","matchRouter",""]],inputs:{options:["matchRouter","options"]}})}return l})()},11188:(nt,I,o)=>{"use strict";o.d(I,{e:()=>C});var e=o(980),n=o(24593),t=o(65879),i=o(52787),l=o(43460);let C=(()=>{class E{constructor(z,M,h){this.router=z,this.msg=M,this.i18n=h}clickToc(z){const h=document.querySelector(`#${z}`);h&&h.scrollIntoView()}_click(z){const M=z.target;if(!M||!M.dataset||!["a","i"].includes(M.tagName.toLowerCase()))return;const h=M.dataset.anchor;if(h&&h.length>0)return void(0,n.J)(`${location.href.split("#")[0]}#${h}`).then(()=>{this.msg.success(this.i18n.fanyi("app.content.link.copied"))});const v=M.dataset.url;if(M.dataset.toc||v&&v.startsWith("#"))return this.clickToc(M.dataset.toc||v.substring(1).replace(/ /g,"-")),z.preventDefault(),void z.stopPropagation();v&&v.startsWith("/")&&!v.startsWith("//")&&this.router.navigateByUrl(v)}static#e=this.\u0275fac=function(M){return new(M||E)(t.Y36(i.F0),t.Y36(l.dD),t.Y36(e.Oi))};static#t=this.\u0275dir=t.lG2({type:E,selectors:[["","routeTransfer",""]],hostBindings:function(M,h){1&M&&t.NdJ("click",function(g){return h._click(g)})}})}return E})()},89359:(nt,I,o)=>{"use strict";o.d(I,{m:()=>ur});var e=o(96814),n=o(60095),t=o(52787),i=o(83991),l=o(45567),C=o(65879);new C.OlP("HighlightJs-Config");let M=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[n.u5]})}return Yt})();var h=o(6595),v=o(27929),g=o(92724),d=o(27854),p=o(980);o(27358),o(93285),o(24205),o(50662),o(94824),o(28749),o(24311),o(68014),o(92476),o(84617),o(22204),o(11188);o(45372);let Y=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({})}return Yt})();o(8682);var H=o(96928),j=o(96109);o(32461);let pe=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,H.Rt,j.cg]})}return Yt})();var re=o(22948),be=o(44556);o(33821);let Q=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,be.cD]})}return Yt})();var ie=o(52682);o(94461);o(67744);let Ye=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,n.u5,ie.Hb]})}return Yt})();o(3933);let ee=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,p.pG]})}return Yt})();o(96103);var Re=o(17131);let Ae=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,Re.Q8,j.cg]})}return Yt})();o(32113);var je=o(90551);let mt=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,je.PV]})}return Yt})();o(9405);var de=o(42840);let B=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,Re.Q8,t.Bz,p.lD,de.sL]})}return Yt})();o(68842);var Ie=o(8324);let pt=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,mt,Ie.T]})}return Yt})();o(73370),o(79657);let qt=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,t.Bz]})}return Yt})();o(31371);let Wt=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({})}return Yt})();var Vt=o(31747),st=o(68929);o(96173),o(6821);let Ot=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez]})}return Yt})();o(98092);var Qe=o(33640),ke=o(62787),fe=o(16976),qe=o(77273),ge=o(79382),Ze=o(55695);let Ue=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,p.lD,Qe.mS,ke.b1,je.PV,fe.Ph,qe.j,ge.we,Ze.X,Ie.T]})}return Yt})();var wt=o(24380),De=o(97878),Je=(o(18750),o(23771)),Ge=o(3626),Ke=o(24139);let it=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,t.Bz,Re.Q8,Je.j,Ke.H0,Ge.lt,Ie.T]})}return Yt})();o(95345),o(99275),o(56178);let R=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,Ke.H0]})}return Yt})();o(77483),o(57796);let Ft=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez]})}return Yt})();o(47970);let vn=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,je.PV,Ie.T]})}return Yt})();o(73180);let En=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,je.PV,Ie.T]})}return Yt})();var bn=o(42918);o(98168),o(77368);let Wn=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,j.cg,je.PV,Ie.T]})}return Yt})();o(91493),o(22218);let hi=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez]})}return Yt})();var fi=o(87334);o(66642),o(36411),o(42336);let oo=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,Re.Q8,j.cg,je.PV,Ie.T]})}return Yt})();o(615);let Li=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,je.PV,p.lD]})}return Yt})();o(69694);let Mo=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,Ie.T,Ke.H0]})}return Yt})();o(68636);var Xi=o(82962);let Hi=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,Xi.vh,qe.j,Ie.T]})}return Yt})();o(27890),o(59951);let ki=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,Ke.H0]})}return Yt})();o(7802);let Et=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,Ke.H0]})}return Yt})();o(61198);let Ct=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,Ke.H0]})}return Yt})();o(91289);let gn=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez]})}return Yt})();o(77322);let gi=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez]})}return Yt})();o(9730);let We=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,p.lD,j.cg]})}return Yt})();o(84420);let ln=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,je.PV,Ie.T]})}return Yt})();o(22595);var kn=o(66987);let ui=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,kn.S,Ie.T,Ke.H0]})}return Yt})();o(91183);var Ui=o(10095);let go=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,Ui.Jb,Ie.T,Ke.H0]})}return Yt})();o(47381);let Ti=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez]})}return Yt})();o(91641);let ro=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,Ke.H0]})}return Yt})();o(68771);let vo=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,Ie.T,Ke.H0]})}return Yt})();o(37690);let Wo=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,je.PV]})}return Yt})();o(64755);let es=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,Ie.T]})}return Yt})();o(52500);var ji=o(93903),Ro=o(43389),Fi=o(20824),lo=o(68373),Ai=o(96494);o(60662);let Gt=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,n.u5,Ro.BL,j.cg,kn.S,ge.we,Ai.m,ji.L,je.PV,Fi.o7,lo.Zf,de.sL]})}return Yt})();var Z=o(22945);let vt=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({providers:[{provide:Z.w,useValue:"site-theme"}],imports:[e.ez,ke.b1,j.cg]})}return Yt})();o(4171),o(13072),o(59765);let yo=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({})}return Yt})();o(58859);let Yi=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({})}return Yt})();o(39542);let _i=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({})}return Yt})();const fs=[pe,Q,Ye,ee,Ae,fi.aS,oo,Wn,hi,st.Il,Ft,re.cm,De.Tc,mt,B,pt,qt,qt,it,En,Li,Ue,vn,wt.Q8,Mo,Hi,Et,Ct,gn,gi,We,ui,go,Ti,ro,vo,es,ki,ln,Wo,bn.r7,Ot,vt,Gt,R,yo,Yi,_i,Y,Vt._N,Wt];var $o=o(29094),at=o(47532),ht=o(77456),Fe=o(62612),Tt=o(84267),jt=o(60804),Nn=o(3599),jn=o(92760),co=o(43460),jo=o(81221),Fo=o(2274),ys=o(57417),Co=o(57907),Eo=o(70612),Bo=o(9691),$s=o(39704),uo=o(79663),Qo=o(41394);const Do=[de.sL,co.gR,at.j,ke.b1,Ui.Jb,ht.vB,Fe.Wr,j.cg,ys.$6,Bo.LV,je.PV,Je.j,Qe.mS,ji.L,jo.Qp,uo.HQ,Ro.BL,ge.we,Fi.o7,ie.Hb,Ze.X,lo.Zf,Ge.lt,$s.N6,fe.Ph,jn.Gb,Ai.m,Co.aF,Nn.U5,H.Rt,Xi.vh,qe.j,kn.S,Eo.GS,$o.on,Qo.cS,Fo.uK,jt.Xo,Tt.C];o(58593);const Ho=[M,i.l,h.TN,l.fq];let ur=(()=>{class Yt{static#e=this.\u0275fac=function(fn){return new(fn||Yt)};static#t=this.\u0275mod=C.oAB({type:Yt});static#n=this.\u0275inj=C.cJS({imports:[e.ez,n.u5,t.Bz,n.UX,p.pG.forChild(),v.vy,d.ek,g.C,fs,Do,Ho,e.ez,n.u5,n.UX,t.Bz,p.pG,v.vy,d.ek,g.C,pe,Q,Ye,ee,Ae,fi.aS,oo,Wn,hi,st.Il,Ft,re.cm,De.Tc,mt,B,pt,qt,qt,it,En,Li,Ue,vn,wt.Q8,Mo,Hi,Et,Ct,gn,gi,We,ui,go,Ti,ro,vo,es,ki,ln,Wo,bn.r7,Ot,vt,Gt,R,yo,Yi,_i,Y,Vt._N,Wt,de.sL,co.gR,at.j,ke.b1,Ui.Jb,ht.vB,Fe.Wr,j.cg,ys.$6,Bo.LV,je.PV,Je.j,Qe.mS,ji.L,jo.Qp,uo.HQ,Ro.BL,ge.we,Fi.o7,ie.Hb,Ze.X,lo.Zf,Ge.lt,$s.N6,fe.Ph,jn.Gb,Ai.m,Co.aF,Nn.U5,H.Rt,Xi.vh,qe.j,kn.S,Eo.GS,$o.on,Qo.cS,Fo.uK,jt.Xo,Tt.C,M,i.l,h.TN,l.fq]})}return Yt})()},3975:(nt,I,o)=>{"use strict";var e={};o.r(e),o.d(e,{CHARTS:()=>Ll,UPLOADS:()=>Va,USERS:()=>da});var n=o(6593),t=o(65879),i=o(49388),l=o(71088),C=o(96814),E=o(69862);const u=void 0,M=["zh",[["\u4e0a\u5348","\u4e0b\u5348"],u,u],u,[["\u65e5","\u4e00","\u4e8c","\u4e09","\u56db","\u4e94","\u516d"],["\u5468\u65e5","\u5468\u4e00","\u5468\u4e8c","\u5468\u4e09","\u5468\u56db","\u5468\u4e94","\u5468\u516d"],["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],["\u5468\u65e5","\u5468\u4e00","\u5468\u4e8c","\u5468\u4e09","\u5468\u56db","\u5468\u4e94","\u5468\u516d"]],u,[["1","2","3","4","5","6","7","8","9","10","11","12"],["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],["\u4e00\u6708","\u4e8c\u6708","\u4e09\u6708","\u56db\u6708","\u4e94\u6708","\u516d\u6708","\u4e03\u6708","\u516b\u6708","\u4e5d\u6708","\u5341\u6708","\u5341\u4e00\u6708","\u5341\u4e8c\u6708"]],u,[["\u516c\u5143\u524d","\u516c\u5143"],u,u],0,[6,0],["y/M/d","y\u5e74M\u6708d\u65e5",u,"y\u5e74M\u6708d\u65e5EEEE"],["HH:mm","HH:mm:ss","z HH:mm:ss","zzzz HH:mm:ss"],["{1} {0}",u,u,u],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"CNY","\xa5","\u4eba\u6c11\u5e01",{AUD:["AU$","$"],BYN:[u,"\u0440."],CNY:["\xa5"],ILR:["ILS"],JPY:["JP\xa5","\xa5"],KRW:["\uffe6","\u20a9"],PHP:[u,"\u20b1"],RUR:[u,"\u0440."],TWD:["NT$"],USD:["US$","$"],XXX:[]},"ltr",function z(Ce){return 5}];var h=o(86825);function g(Ce){return new t.vHH(3e3,!1)}function Be(Ce){switch(Ce.length){case 0:return new h.ZN;case 1:return Ce[0];default:return new h.ZE(Ce)}}function Re(Ce,J,L=new Map,X=new Map){const Le=[],ft=[];let Pt=-1,Rt=null;if(J.forEach(Jt=>{const nn=Jt.get("offset"),Cn=nn==Pt,Tn=Cn&&Rt||new Map;Jt.forEach((Xn,Hn)=>{let Vn=Hn,ii=Xn;if("offset"!==Hn)switch(Vn=Ce.normalizePropertyName(Vn,Le),ii){case h.k1:ii=L.get(Hn);break;case h.l3:ii=X.get(Hn);break;default:ii=Ce.normalizeStyleValue(Hn,Vn,ii,Le)}Tn.set(Vn,ii)}),Cn||ft.push(Tn),Rt=Tn,Pt=nn}),Le.length)throw function re(Ce){return new t.vHH(3502,!1)}();return ft}function ct(Ce,J,L,X){switch(J){case"start":Ce.onStart(()=>X(L&&Ae(L,"start",Ce)));break;case"done":Ce.onDone(()=>X(L&&Ae(L,"done",Ce)));break;case"destroy":Ce.onDestroy(()=>X(L&&Ae(L,"destroy",Ce)))}}function Ae(Ce,J,L){const ft=Mt(Ce.element,Ce.triggerName,Ce.fromState,Ce.toState,J||Ce.phaseName,L.totalTime??Ce.totalTime,!!L.disabled),Pt=Ce._data;return null!=Pt&&(ft._data=Pt),ft}function Mt(Ce,J,L,X,Le="",ft=0,Pt){return{element:Ce,triggerName:J,fromState:L,toState:X,phaseName:Le,totalTime:ft,disabled:!!Pt}}function je(Ce,J,L){let X=Ce.get(J);return X||Ce.set(J,X=L),X}function ot(Ce){const J=Ce.indexOf(":");return[Ce.substring(1,J),Ce.slice(J+1)]}const mt=(()=>typeof document>"u"?null:document.documentElement)();function we(Ce){const J=Ce.parentNode||Ce.host||null;return J===mt?null:J}let U=null,B=!1;function pt(Ce,J){for(;J;){if(J===Ce)return!0;J=we(J)}return!1}function Dt(Ce,J,L){if(L)return Array.from(Ce.querySelectorAll(J));const X=Ce.querySelector(J);return X?[X]:[]}let Ut=(()=>{class Ce{validateStyleProperty(L){return function Ee(Ce){U||(U=function Ne(){return typeof document<"u"?document.body:null}()||{},B=!!U.style&&"WebkitAppearance"in U.style);let J=!0;return U.style&&!function de(Ce){return"ebkit"==Ce.substring(1,6)}(Ce)&&(J=Ce in U.style,!J&&B&&(J="Webkit"+Ce.charAt(0).toUpperCase()+Ce.slice(1)in U.style)),J}(L)}matchesElement(L,X){return!1}containsElement(L,X){return pt(L,X)}getParentElement(L){return we(L)}query(L,X,Le){return Dt(L,X,Le)}computeStyle(L,X,Le){return Le||""}animate(L,X,Le,ft,Pt,Rt=[],Jt){return new h.ZN(Le,ft)}static#e=this.\u0275fac=function(X){return new(X||Ce)};static#t=this.\u0275prov=t.Yz7({token:Ce,factory:Ce.\u0275fac})}return Ce})(),qt=(()=>{class Ce{static#e=this.NOOP=new Ut}return Ce})();const en=1e3,Vt="ng-enter",st="ng-leave",He="ng-trigger",et=".ng-trigger",It="ng-animating",Ot=".ng-animating";function xt(Ce){if("number"==typeof Ce)return Ce;const J=Ce.match(/^(-?[\.\d]+)(m?s)/);return!J||J.length<2?0:Qe(parseFloat(J[1]),J[2])}function Qe(Ce,J){return"s"===J?Ce*en:Ce}function ke(Ce,J,L){return Ce.hasOwnProperty("duration")?Ce:function fe(Ce,J,L){let Le,ft=0,Pt="";if("string"==typeof Ce){const Rt=Ce.match(/^(-?[\.\d]+)(m?s)(?:\s+(-?[\.\d]+)(m?s))?(?:\s+([-a-z]+(?:\(.+?\))?))?$/i);if(null===Rt)return J.push(g()),{duration:0,delay:0,easing:""};Le=Qe(parseFloat(Rt[1]),Rt[2]);const Jt=Rt[3];null!=Jt&&(ft=Qe(parseFloat(Jt),Rt[4]));const nn=Rt[5];nn&&(Pt=nn)}else Le=Ce;if(!L){let Rt=!1,Jt=J.length;Le<0&&(J.push(function d(){return new t.vHH(3100,!1)}()),Rt=!0),ft<0&&(J.push(function p(){return new t.vHH(3101,!1)}()),Rt=!0),Rt&&J.splice(Jt,0,g())}return{duration:Le,delay:ft,easing:Pt}}(Ce,J,L)}function qe(Ce,J={}){return Object.keys(Ce).forEach(L=>{J[L]=Ce[L]}),J}function ge(Ce){const J=new Map;return Object.keys(Ce).forEach(L=>{J.set(L,Ce[L])}),J}function Ue(Ce,J=new Map,L){if(L)for(let[X,Le]of L)J.set(X,Le);for(let[X,Le]of Ce)J.set(X,Le);return J}function wt(Ce,J,L){J.forEach((X,Le)=>{const ft=N(Le);L&&!L.has(Le)&&L.set(Le,Ce.style[ft]),Ce.style[ft]=X})}function De(Ce,J){J.forEach((L,X)=>{const Le=N(X);Ce.style[Le]=""})}function Pe(Ce){return Array.isArray(Ce)?1==Ce.length?Ce[0]:(0,h.vP)(Ce):Ce}const Ge=new RegExp("{{\\s*(.+?)\\s*}}","g");function Ke(Ce){let J=[];if("string"==typeof Ce){let L;for(;L=Ge.exec(Ce);)J.push(L[1]);Ge.lastIndex=0}return J}function ve(Ce,J,L){const X=Ce.toString(),Le=X.replace(Ge,(ft,Pt)=>{let Rt=J[Pt];return null==Rt&&(L.push(function y(Ce){return new t.vHH(3003,!1)}()),Rt=""),Rt.toString()});return Le==X?Ce:Le}function it(Ce){const J=[];let L=Ce.next();for(;!L.done;)J.push(L.value),L=Ce.next();return J}const b=/-+([a-z0-9])/g;function N(Ce){return Ce.replace(b,(...J)=>J[1].toUpperCase())}function he(Ce,J,L){switch(J.type){case 7:return Ce.visitTrigger(J,L);case 0:return Ce.visitState(J,L);case 1:return Ce.visitTransition(J,L);case 2:return Ce.visitSequence(J,L);case 3:return Ce.visitGroup(J,L);case 4:return Ce.visitAnimate(J,L);case 5:return Ce.visitKeyframes(J,L);case 6:return Ce.visitStyle(J,L);case 8:return Ce.visitReference(J,L);case 9:return Ce.visitAnimateChild(J,L);case 10:return Ce.visitAnimateRef(J,L);case 11:return Ce.visitQuery(J,L);case 12:return Ce.visitStagger(J,L);default:throw function T(Ce){return new t.vHH(3004,!1)}()}}function ze(Ce,J){return window.getComputedStyle(Ce)[J]}const Mn="*";function En(Ce,J){const L=[];return"string"==typeof Ce?Ce.split(/\s*,\s*/).forEach(X=>function bn(Ce,J,L){if(":"==Ce[0]){const Jt=function Rn(Ce,J){switch(Ce){case":enter":return"void => *";case":leave":return"* => void";case":increment":return(L,X)=>parseFloat(X)>parseFloat(L);case":decrement":return(L,X)=>parseFloat(X) *"}}(Ce,L);if("function"==typeof Jt)return void J.push(Jt);Ce=Jt}const X=Ce.match(/^(\*|[-\w]+)\s*()\s*(\*|[-\w]+)$/);if(null==X||X.length<4)return L.push(function H(Ce){return new t.vHH(3015,!1)}()),J;const Le=X[1],ft=X[2],Pt=X[3];J.push(Wn(Le,Pt));"<"==ft[0]&&!(Le==Mn&&Pt==Mn)&&J.push(Wn(Pt,Le))}(X,L,J)):L.push(Ce),L}const qn=new Set(["true","1"]),si=new Set(["false","0"]);function Wn(Ce,J){const L=qn.has(Ce)||si.has(Ce),X=qn.has(J)||si.has(J);return(Le,ft)=>{let Pt=Ce==Mn||Ce==Le,Rt=J==Mn||J==ft;return!Pt&&L&&"boolean"==typeof Le&&(Pt=Le?qn.has(Ce):si.has(Ce)),!Rt&&X&&"boolean"==typeof ft&&(Rt=ft?qn.has(J):si.has(J)),Pt&&Rt}}const ri=new RegExp("s*:selfs*,?","g");function di(Ce,J,L,X){return new fi(Ce).build(J,L,X)}class fi{constructor(J){this._driver=J}build(J,L,X){const Le=new ei(L);return this._resetContextStyleTimingState(Le),he(this,Pe(J),Le)}_resetContextStyleTimingState(J){J.currentQuerySelector="",J.collectedStyles=new Map,J.collectedStyles.set("",new Map),J.currentTime=0}visitTrigger(J,L){let X=L.queryCount=0,Le=L.depCount=0;const ft=[],Pt=[];return"@"==J.name.charAt(0)&&L.errors.push(function D(){return new t.vHH(3006,!1)}()),J.definitions.forEach(Rt=>{if(this._resetContextStyleTimingState(L),0==Rt.type){const Jt=Rt,nn=Jt.name;nn.toString().split(/\s*,\s*/).forEach(Cn=>{Jt.name=Cn,ft.push(this.visitState(Jt,L))}),Jt.name=nn}else if(1==Rt.type){const Jt=this.visitTransition(Rt,L);X+=Jt.queryCount,Le+=Jt.depCount,Pt.push(Jt)}else L.errors.push(function _(){return new t.vHH(3007,!1)}())}),{type:7,name:J.name,states:ft,transitions:Pt,queryCount:X,depCount:Le,options:null}}visitState(J,L){const X=this.visitStyle(J.styles,L),Le=J.options&&J.options.params||null;if(X.containsDynamicStyles){const ft=new Set,Pt=Le||{};X.styles.forEach(Rt=>{Rt instanceof Map&&Rt.forEach(Jt=>{Ke(Jt).forEach(nn=>{Pt.hasOwnProperty(nn)||ft.add(nn)})})}),ft.size&&(it(ft.values()),L.errors.push(function P(Ce,J){return new t.vHH(3008,!1)}()))}return{type:0,name:J.name,style:X,options:Le?{params:Le}:null}}visitTransition(J,L){L.queryCount=0,L.depCount=0;const X=he(this,Pe(J.animation),L);return{type:1,matchers:En(J.expr,L.errors),animation:X,queryCount:L.queryCount,depCount:L.depCount,options:Wi(J.options)}}visitSequence(J,L){return{type:2,steps:J.steps.map(X=>he(this,X,L)),options:Wi(J.options)}}visitGroup(J,L){const X=L.currentTime;let Le=0;const ft=J.steps.map(Pt=>{L.currentTime=X;const Rt=he(this,Pt,L);return Le=Math.max(Le,L.currentTime),Rt});return L.currentTime=Le,{type:3,steps:ft,options:Wi(J.options)}}visitAnimate(J,L){const X=function oo(Ce,J){if(Ce.hasOwnProperty("duration"))return Ce;if("number"==typeof Ce)return Ri(ke(Ce,J).duration,0,"");const L=Ce;if(L.split(/\s+/).some(ft=>"{"==ft.charAt(0)&&"{"==ft.charAt(1))){const ft=Ri(0,0,"");return ft.dynamic=!0,ft.strValue=L,ft}const Le=ke(L,J);return Ri(Le.duration,Le.delay,Le.easing)}(J.timings,L.errors);L.currentAnimateTimings=X;let Le,ft=J.styles?J.styles:(0,h.oB)({});if(5==ft.type)Le=this.visitKeyframes(ft,L);else{let Pt=J.styles,Rt=!1;if(!Pt){Rt=!0;const nn={};X.easing&&(nn.easing=X.easing),Pt=(0,h.oB)(nn)}L.currentTime+=X.duration+X.delay;const Jt=this.visitStyle(Pt,L);Jt.isEmptyStep=Rt,Le=Jt}return L.currentAnimateTimings=null,{type:4,timings:X,style:Le,options:null}}visitStyle(J,L){const X=this._makeStyleAst(J,L);return this._validateStyleAst(X,L),X}_makeStyleAst(J,L){const X=[],Le=Array.isArray(J.styles)?J.styles:[J.styles];for(let Rt of Le)"string"==typeof Rt?Rt===h.l3?X.push(Rt):L.errors.push(new t.vHH(3002,!1)):X.push(ge(Rt));let ft=!1,Pt=null;return X.forEach(Rt=>{if(Rt instanceof Map&&(Rt.has("easing")&&(Pt=Rt.get("easing"),Rt.delete("easing")),!ft))for(let Jt of Rt.values())if(Jt.toString().indexOf("{{")>=0){ft=!0;break}}),{type:6,styles:X,easing:Pt,offset:J.offset,containsDynamicStyles:ft,options:null}}_validateStyleAst(J,L){const X=L.currentAnimateTimings;let Le=L.currentTime,ft=L.currentTime;X&&ft>0&&(ft-=X.duration+X.delay),J.styles.forEach(Pt=>{"string"!=typeof Pt&&Pt.forEach((Rt,Jt)=>{const nn=L.collectedStyles.get(L.currentQuerySelector),Cn=nn.get(Jt);let Tn=!0;Cn&&(ft!=Le&&ft>=Cn.startTime&&Le<=Cn.endTime&&(L.errors.push(function k(Ce,J,L,X,Le){return new t.vHH(3010,!1)}()),Tn=!1),ft=Cn.startTime),Tn&&nn.set(Jt,{startTime:ft,endTime:Le}),L.options&&function Je(Ce,J,L){const X=J.params||{},Le=Ke(Ce);Le.length&&Le.forEach(ft=>{X.hasOwnProperty(ft)||L.push(function f(Ce){return new t.vHH(3001,!1)}())})}(Rt,L.options,L.errors)})})}visitKeyframes(J,L){const X={type:5,styles:[],options:null};if(!L.currentAnimateTimings)return L.errors.push(function F(){return new t.vHH(3011,!1)}()),X;let ft=0;const Pt=[];let Rt=!1,Jt=!1,nn=0;const Cn=J.steps.map(fo=>{const Ao=this._makeStyleAst(fo,L);let Mi=null!=Ao.offset?Ao.offset:function po(Ce){if("string"==typeof Ce)return null;let J=null;if(Array.isArray(Ce))Ce.forEach(L=>{if(L instanceof Map&&L.has("offset")){const X=L;J=parseFloat(X.get("offset")),X.delete("offset")}});else if(Ce instanceof Map&&Ce.has("offset")){const L=Ce;J=parseFloat(L.get("offset")),L.delete("offset")}return J}(Ao.styles),No=0;return null!=Mi&&(ft++,No=Ao.offset=Mi),Jt=Jt||No<0||No>1,Rt=Rt||No0&&ft{const Mi=Xn>0?Ao==Hn?1:Xn*Ao:Pt[Ao],No=Mi*Di;L.currentTime=Vn+ii.delay+No,ii.duration=No,this._validateStyleAst(fo,L),fo.offset=Mi,X.styles.push(fo)}),X}visitReference(J,L){return{type:8,animation:he(this,Pe(J.animation),L),options:Wi(J.options)}}visitAnimateChild(J,L){return L.depCount++,{type:9,options:Wi(J.options)}}visitAnimateRef(J,L){return{type:10,animation:this.visitReference(J.animation,L),options:Wi(J.options)}}visitQuery(J,L){const X=L.currentQuerySelector,Le=J.options||{};L.queryCount++,L.currentQuery=J;const[ft,Pt]=function zi(Ce){const J=!!Ce.split(/\s*,\s*/).find(L=>":self"==L);return J&&(Ce=Ce.replace(ri,"")),Ce=Ce.replace(/@\*/g,et).replace(/@\w+/g,L=>et+"-"+L.slice(1)).replace(/:animating/g,Ot),[Ce,J]}(J.selector);L.currentQuerySelector=X.length?X+" "+ft:ft,je(L.collectedStyles,L.currentQuerySelector,new Map);const Rt=he(this,Pe(J.animation),L);return L.currentQuery=null,L.currentQuerySelector=X,{type:11,selector:ft,limit:Le.limit||0,optional:!!Le.optional,includeSelf:Pt,animation:Rt,originalSelector:J.selector,options:Wi(J.options)}}visitStagger(J,L){L.currentQuery||L.errors.push(function Y(){return new t.vHH(3013,!1)}());const X="full"===J.timings?{duration:0,delay:0,easing:"full"}:ke(J.timings,L.errors,!0);return{type:12,animation:he(this,Pe(J.animation),L),timings:X,options:null}}}class ei{constructor(J){this.errors=J,this.queryCount=0,this.depCount=0,this.currentTransition=null,this.currentQuery=null,this.currentQuerySelector=null,this.currentAnimateTimings=null,this.currentTime=0,this.collectedStyles=new Map,this.options=null,this.unsupportedCSSPropertiesFound=new Set}}function Wi(Ce){return Ce?(Ce=qe(Ce)).params&&(Ce.params=function Oi(Ce){return Ce?qe(Ce):null}(Ce.params)):Ce={},Ce}function Ri(Ce,J,L){return{duration:Ce,delay:J,easing:L}}function Li(Ce,J,L,X,Le,ft,Pt=null,Rt=!1){return{type:1,element:Ce,keyframes:J,preStyleProps:L,postStyleProps:X,duration:Le,delay:ft,totalTime:Le+ft,easing:Pt,subTimeline:Rt}}class $i{constructor(){this._map=new Map}get(J){return this._map.get(J)||[]}append(J,L){let X=this._map.get(J);X||this._map.set(J,X=[]),X.push(...L)}has(J){return this._map.has(J)}clear(){this._map.clear()}}const wi=new RegExp(":enter","g"),Ei=new RegExp(":leave","g");function Hi(Ce,J,L,X,Le,ft=new Map,Pt=new Map,Rt,Jt,nn=[]){return(new qi).buildKeyframes(Ce,J,L,X,Le,ft,Pt,Rt,Jt,nn)}class qi{buildKeyframes(J,L,X,Le,ft,Pt,Rt,Jt,nn,Cn=[]){nn=nn||new $i;const Tn=new Ii(J,L,nn,Le,ft,Cn,[]);Tn.options=Jt;const Xn=Jt.delay?xt(Jt.delay):0;Tn.currentTimeline.delayNextStep(Xn),Tn.currentTimeline.setStyles([Pt],null,Tn.errors,Jt),he(this,X,Tn);const Hn=Tn.timelines.filter(Vn=>Vn.containsAnimation());if(Hn.length&&Rt.size){let Vn;for(let ii=Hn.length-1;ii>=0;ii--){const Di=Hn[ii];if(Di.element===L){Vn=Di;break}}Vn&&!Vn.allowOnlyTimelineStyles()&&Vn.setStyles([Rt],null,Tn.errors,Jt)}return Hn.length?Hn.map(Vn=>Vn.buildKeyframes()):[Li(L,[],[],[],0,Xn,"",!1)]}visitTrigger(J,L){}visitState(J,L){}visitTransition(J,L){}visitAnimateChild(J,L){const X=L.subInstructions.get(L.element);if(X){const Le=L.createSubContext(J.options),ft=L.currentTimeline.currentTime,Pt=this._visitSubInstructions(X,Le,Le.options);ft!=Pt&&L.transformIntoNewTimeline(Pt)}L.previousNode=J}visitAnimateRef(J,L){const X=L.createSubContext(J.options);X.transformIntoNewTimeline(),this._applyAnimationRefDelays([J.options,J.animation.options],L,X),this.visitReference(J.animation,X),L.transformIntoNewTimeline(X.currentTimeline.currentTime),L.previousNode=J}_applyAnimationRefDelays(J,L,X){for(const Le of J){const ft=Le?.delay;if(ft){const Pt="number"==typeof ft?ft:xt(ve(ft,Le?.params??{},L.errors));X.delayNextStep(Pt)}}}_visitSubInstructions(J,L,X){let ft=L.currentTimeline.currentTime;const Pt=null!=X.duration?xt(X.duration):null,Rt=null!=X.delay?xt(X.delay):null;return 0!==Pt&&J.forEach(Jt=>{const nn=L.appendInstructionToTimeline(Jt,Pt,Rt);ft=Math.max(ft,nn.duration+nn.delay)}),ft}visitReference(J,L){L.updateOptions(J.options,!0),he(this,J.animation,L),L.previousNode=J}visitSequence(J,L){const X=L.subContextCount;let Le=L;const ft=J.options;if(ft&&(ft.params||ft.delay)&&(Le=L.createSubContext(ft),Le.transformIntoNewTimeline(),null!=ft.delay)){6==Le.previousNode.type&&(Le.currentTimeline.snapshotCurrentStyles(),Le.previousNode=Pi);const Pt=xt(ft.delay);Le.delayNextStep(Pt)}J.steps.length&&(J.steps.forEach(Pt=>he(this,Pt,Le)),Le.currentTimeline.applyStylesToKeyframe(),Le.subContextCount>X&&Le.transformIntoNewTimeline()),L.previousNode=J}visitGroup(J,L){const X=[];let Le=L.currentTimeline.currentTime;const ft=J.options&&J.options.delay?xt(J.options.delay):0;J.steps.forEach(Pt=>{const Rt=L.createSubContext(J.options);ft&&Rt.delayNextStep(ft),he(this,Pt,Rt),Le=Math.max(Le,Rt.currentTimeline.currentTime),X.push(Rt.currentTimeline)}),X.forEach(Pt=>L.currentTimeline.mergeTimelineCollectedStyles(Pt)),L.transformIntoNewTimeline(Le),L.previousNode=J}_visitTiming(J,L){if(J.dynamic){const X=J.strValue;return ke(L.params?ve(X,L.params,L.errors):X,L.errors)}return{duration:J.duration,delay:J.delay,easing:J.easing}}visitAnimate(J,L){const X=L.currentAnimateTimings=this._visitTiming(J.timings,L),Le=L.currentTimeline;X.delay&&(L.incrementTime(X.delay),Le.snapshotCurrentStyles());const ft=J.style;5==ft.type?this.visitKeyframes(ft,L):(L.incrementTime(X.duration),this.visitStyle(ft,L),Le.applyStylesToKeyframe()),L.currentAnimateTimings=null,L.previousNode=J}visitStyle(J,L){const X=L.currentTimeline,Le=L.currentAnimateTimings;!Le&&X.hasCurrentStyleProperties()&&X.forwardFrame();const ft=Le&&Le.easing||J.easing;J.isEmptyStep?X.applyEmptyStep(ft):X.setStyles(J.styles,ft,L.errors,L.options),L.previousNode=J}visitKeyframes(J,L){const X=L.currentAnimateTimings,Le=L.currentTimeline.duration,ft=X.duration,Rt=L.createSubContext().currentTimeline;Rt.easing=X.easing,J.styles.forEach(Jt=>{Rt.forwardTime((Jt.offset||0)*ft),Rt.setStyles(Jt.styles,Jt.easing,L.errors,L.options),Rt.applyStylesToKeyframe()}),L.currentTimeline.mergeTimelineCollectedStyles(Rt),L.transformIntoNewTimeline(Le+ft),L.previousNode=J}visitQuery(J,L){const X=L.currentTimeline.currentTime,Le=J.options||{},ft=Le.delay?xt(Le.delay):0;ft&&(6===L.previousNode.type||0==X&&L.currentTimeline.hasCurrentStyleProperties())&&(L.currentTimeline.snapshotCurrentStyles(),L.previousNode=Pi);let Pt=X;const Rt=L.invokeQuery(J.selector,J.originalSelector,J.limit,J.includeSelf,!!Le.optional,L.errors);L.currentQueryTotal=Rt.length;let Jt=null;Rt.forEach((nn,Cn)=>{L.currentQueryIndex=Cn;const Tn=L.createSubContext(J.options,nn);ft&&Tn.delayNextStep(ft),nn===L.element&&(Jt=Tn.currentTimeline),he(this,J.animation,Tn),Tn.currentTimeline.applyStylesToKeyframe(),Pt=Math.max(Pt,Tn.currentTimeline.currentTime)}),L.currentQueryIndex=0,L.currentQueryTotal=0,L.transformIntoNewTimeline(Pt),Jt&&(L.currentTimeline.mergeTimelineCollectedStyles(Jt),L.currentTimeline.snapshotCurrentStyles()),L.previousNode=J}visitStagger(J,L){const X=L.parentContext,Le=L.currentTimeline,ft=J.timings,Pt=Math.abs(ft.duration),Rt=Pt*(L.currentQueryTotal-1);let Jt=Pt*L.currentQueryIndex;switch(ft.duration<0?"reverse":ft.easing){case"reverse":Jt=Rt-Jt;break;case"full":Jt=X.currentStaggerTime}const Cn=L.currentTimeline;Jt&&Cn.delayNextStep(Jt);const Tn=Cn.currentTime;he(this,J.animation,L),L.previousNode=J,X.currentStaggerTime=Le.currentTime-Tn+(Le.startTime-X.currentTimeline.startTime)}}const Pi={};class Ii{constructor(J,L,X,Le,ft,Pt,Rt,Jt){this._driver=J,this.element=L,this.subInstructions=X,this._enterClassName=Le,this._leaveClassName=ft,this.errors=Pt,this.timelines=Rt,this.parentContext=null,this.currentAnimateTimings=null,this.previousNode=Pi,this.subContextCount=0,this.options={},this.currentQueryIndex=0,this.currentQueryTotal=0,this.currentStaggerTime=0,this.currentTimeline=Jt||new ki(this._driver,L,0),Rt.push(this.currentTimeline)}get params(){return this.options.params}updateOptions(J,L){if(!J)return;const X=J;let Le=this.options;null!=X.duration&&(Le.duration=xt(X.duration)),null!=X.delay&&(Le.delay=xt(X.delay));const ft=X.params;if(ft){let Pt=Le.params;Pt||(Pt=this.options.params={}),Object.keys(ft).forEach(Rt=>{(!L||!Pt.hasOwnProperty(Rt))&&(Pt[Rt]=ve(ft[Rt],Pt,this.errors))})}}_copyOptions(){const J={};if(this.options){const L=this.options.params;if(L){const X=J.params={};Object.keys(L).forEach(Le=>{X[Le]=L[Le]})}}return J}createSubContext(J=null,L,X){const Le=L||this.element,ft=new Ii(this._driver,Le,this.subInstructions,this._enterClassName,this._leaveClassName,this.errors,this.timelines,this.currentTimeline.fork(Le,X||0));return ft.previousNode=this.previousNode,ft.currentAnimateTimings=this.currentAnimateTimings,ft.options=this._copyOptions(),ft.updateOptions(J),ft.currentQueryIndex=this.currentQueryIndex,ft.currentQueryTotal=this.currentQueryTotal,ft.parentContext=this,this.subContextCount++,ft}transformIntoNewTimeline(J){return this.previousNode=Pi,this.currentTimeline=this.currentTimeline.fork(this.element,J),this.timelines.push(this.currentTimeline),this.currentTimeline}appendInstructionToTimeline(J,L,X){const Le={duration:L??J.duration,delay:this.currentTimeline.currentTime+(X??0)+J.delay,easing:""},ft=new oi(this._driver,J.element,J.keyframes,J.preStyleProps,J.postStyleProps,Le,J.stretchStartingKeyframe);return this.timelines.push(ft),Le}incrementTime(J){this.currentTimeline.forwardTime(this.currentTimeline.duration+J)}delayNextStep(J){J>0&&this.currentTimeline.delayNextStep(J)}invokeQuery(J,L,X,Le,ft,Pt){let Rt=[];if(Le&&Rt.push(this.element),J.length>0){J=(J=J.replace(wi,"."+this._enterClassName)).replace(Ei,"."+this._leaveClassName);let nn=this._driver.query(this.element,J,1!=X);0!==X&&(nn=X<0?nn.slice(nn.length+X,nn.length):nn.slice(0,X)),Rt.push(...nn)}return!ft&&0==Rt.length&&Pt.push(function G(Ce){return new t.vHH(3014,!1)}()),Rt}}class ki{constructor(J,L,X,Le){this._driver=J,this.element=L,this.startTime=X,this._elementTimelineStylesLookup=Le,this.duration=0,this.easing=null,this._previousKeyframe=new Map,this._currentKeyframe=new Map,this._keyframes=new Map,this._styleSummary=new Map,this._localTimelineStyles=new Map,this._pendingStyles=new Map,this._backFill=new Map,this._currentEmptyStepKeyframe=null,this._elementTimelineStylesLookup||(this._elementTimelineStylesLookup=new Map),this._globalTimelineStyles=this._elementTimelineStylesLookup.get(L),this._globalTimelineStyles||(this._globalTimelineStyles=this._localTimelineStyles,this._elementTimelineStylesLookup.set(L,this._localTimelineStyles)),this._loadKeyframe()}containsAnimation(){switch(this._keyframes.size){case 0:return!1;case 1:return this.hasCurrentStyleProperties();default:return!0}}hasCurrentStyleProperties(){return this._currentKeyframe.size>0}get currentTime(){return this.startTime+this.duration}delayNextStep(J){const L=1===this._keyframes.size&&this._pendingStyles.size;this.duration||L?(this.forwardTime(this.currentTime+J),L&&this.snapshotCurrentStyles()):this.startTime+=J}fork(J,L){return this.applyStylesToKeyframe(),new ki(this._driver,J,L||this.currentTime,this._elementTimelineStylesLookup)}_loadKeyframe(){this._currentKeyframe&&(this._previousKeyframe=this._currentKeyframe),this._currentKeyframe=this._keyframes.get(this.duration),this._currentKeyframe||(this._currentKeyframe=new Map,this._keyframes.set(this.duration,this._currentKeyframe))}forwardFrame(){this.duration+=1,this._loadKeyframe()}forwardTime(J){this.applyStylesToKeyframe(),this.duration=J,this._loadKeyframe()}_updateStyle(J,L){this._localTimelineStyles.set(J,L),this._globalTimelineStyles.set(J,L),this._styleSummary.set(J,{time:this.currentTime,value:L})}allowOnlyTimelineStyles(){return this._currentEmptyStepKeyframe!==this._currentKeyframe}applyEmptyStep(J){J&&this._previousKeyframe.set("easing",J);for(let[L,X]of this._globalTimelineStyles)this._backFill.set(L,X||h.l3),this._currentKeyframe.set(L,h.l3);this._currentEmptyStepKeyframe=this._currentKeyframe}setStyles(J,L,X,Le){L&&this._previousKeyframe.set("easing",L);const ft=Le&&Le.params||{},Pt=function Et(Ce,J){const L=new Map;let X;return Ce.forEach(Le=>{if("*"===Le){X=X||J.keys();for(let ft of X)L.set(ft,h.l3)}else Ue(Le,L)}),L}(J,this._globalTimelineStyles);for(let[Rt,Jt]of Pt){const nn=ve(Jt,ft,X);this._pendingStyles.set(Rt,nn),this._localTimelineStyles.has(Rt)||this._backFill.set(Rt,this._globalTimelineStyles.get(Rt)??h.l3),this._updateStyle(Rt,nn)}}applyStylesToKeyframe(){0!=this._pendingStyles.size&&(this._pendingStyles.forEach((J,L)=>{this._currentKeyframe.set(L,J)}),this._pendingStyles.clear(),this._localTimelineStyles.forEach((J,L)=>{this._currentKeyframe.has(L)||this._currentKeyframe.set(L,J)}))}snapshotCurrentStyles(){for(let[J,L]of this._localTimelineStyles)this._pendingStyles.set(J,L),this._updateStyle(J,L)}getFinalKeyframe(){return this._keyframes.get(this.duration)}get properties(){const J=[];for(let L in this._currentKeyframe)J.push(L);return J}mergeTimelineCollectedStyles(J){J._styleSummary.forEach((L,X)=>{const Le=this._styleSummary.get(X);(!Le||L.time>Le.time)&&this._updateStyle(X,L.value)})}buildKeyframes(){this.applyStylesToKeyframe();const J=new Set,L=new Set,X=1===this._keyframes.size&&0===this.duration;let Le=[];this._keyframes.forEach((Rt,Jt)=>{const nn=Ue(Rt,new Map,this._backFill);nn.forEach((Cn,Tn)=>{Cn===h.k1?J.add(Tn):Cn===h.l3&&L.add(Tn)}),X||nn.set("offset",Jt/this.duration),Le.push(nn)});const ft=J.size?it(J.values()):[],Pt=L.size?it(L.values()):[];if(X){const Rt=Le[0],Jt=new Map(Rt);Rt.set("offset",0),Jt.set("offset",1),Le=[Rt,Jt]}return Li(this.element,Le,ft,Pt,this.duration,this.startTime,this.easing,!1)}}class oi extends ki{constructor(J,L,X,Le,ft,Pt,Rt=!1){super(J,L,Pt.delay),this.keyframes=X,this.preStyleProps=Le,this.postStyleProps=ft,this._stretchStartingKeyframe=Rt,this.timings={duration:Pt.duration,delay:Pt.delay,easing:Pt.easing}}containsAnimation(){return this.keyframes.length>1}buildKeyframes(){let J=this.keyframes,{delay:L,duration:X,easing:Le}=this.timings;if(this._stretchStartingKeyframe&&L){const ft=[],Pt=X+L,Rt=L/Pt,Jt=Ue(J[0]);Jt.set("offset",0),ft.push(Jt);const nn=Ue(J[0]);nn.set("offset",Bn(Rt)),ft.push(nn);const Cn=J.length-1;for(let Tn=1;Tn<=Cn;Tn++){let Xn=Ue(J[Tn]);const Hn=Xn.get("offset");Xn.set("offset",Bn((L+Hn*X)/Pt)),ft.push(Xn)}X=Pt,L=0,Le="",J=ft}return Li(this.element,J,this.preStyleProps,this.postStyleProps,X,L,Le,!0)}}function Bn(Ce,J=3){const L=Math.pow(10,J-1);return Math.round(Ce*L)/L}class lt{}const At=new Set(["width","height","minWidth","minHeight","maxWidth","maxHeight","left","top","bottom","right","fontSize","outlineWidth","outlineOffset","paddingTop","paddingLeft","paddingBottom","paddingRight","marginTop","marginLeft","marginBottom","marginRight","borderRadius","borderWidth","borderTopWidth","borderLeftWidth","borderRightWidth","borderBottomWidth","textIndent","perspective"]);class Qt extends lt{normalizePropertyName(J,L){return N(J)}normalizeStyleValue(J,L,X,Le){let ft="";const Pt=X.toString().trim();if(At.has(L)&&0!==X&&"0"!==X)if("number"==typeof X)ft="px";else{const Rt=X.match(/^[+-]?[\d\.]+([a-z]*)$/);Rt&&0==Rt[1].length&&Le.push(function x(Ce,J){return new t.vHH(3005,!1)}())}return Pt+ft}}function gn(Ce,J,L,X,Le,ft,Pt,Rt,Jt,nn,Cn,Tn,Xn){return{type:0,element:Ce,triggerName:J,isRemovalTransition:Le,fromState:L,fromStyles:ft,toState:X,toStyles:Pt,timelines:Rt,queriedElements:Jt,preStyleProps:nn,postStyleProps:Cn,totalTime:Tn,errors:Xn}}const Ln={};class Sn{constructor(J,L,X){this._triggerName=J,this.ast=L,this._stateStyles=X}match(J,L,X,Le){return function St(Ce,J,L,X,Le){return Ce.some(ft=>ft(J,L,X,Le))}(this.ast.matchers,J,L,X,Le)}buildStyles(J,L,X){let Le=this._stateStyles.get("*");return void 0!==J&&(Le=this._stateStyles.get(J?.toString())||Le),Le?Le.buildStyles(L,X):new Map}build(J,L,X,Le,ft,Pt,Rt,Jt,nn,Cn){const Tn=[],Xn=this.ast.options&&this.ast.options.params||Ln,Vn=this.buildStyles(X,Rt&&Rt.params||Ln,Tn),ii=Jt&&Jt.params||Ln,Di=this.buildStyles(Le,ii,Tn),fo=new Set,Ao=new Map,Mi=new Map,No="void"===Le,Hs={params:gt(ii,Xn),delay:this.ast.options?.delay},Vs=Cn?[]:Hi(J,L,this.ast.animation,ft,Pt,Vn,Di,Hs,nn,Tn);let Ji=0;if(Vs.forEach(Us=>{Ji=Math.max(Us.duration+Us.delay,Ji)}),Tn.length)return gn(L,this._triggerName,X,Le,No,Vn,Di,[],[],Ao,Mi,Ji,Tn);Vs.forEach(Us=>{const ls=Us.element,Ar=je(Ao,ls,new Set);Us.preStyleProps.forEach(Nr=>Ar.add(Nr));const Qr=je(Mi,ls,new Set);Us.postStyleProps.forEach(Nr=>Qr.add(Nr)),ls!==L&&fo.add(ls)});const is=it(fo.values());return gn(L,this._triggerName,X,Le,No,Vn,Di,Vs,is,Ao,Mi,Ji)}}function gt(Ce,J){const L=qe(J);for(const X in Ce)Ce.hasOwnProperty(X)&&null!=Ce[X]&&(L[X]=Ce[X]);return L}class We{constructor(J,L,X){this.styles=J,this.defaultParams=L,this.normalizer=X}buildStyles(J,L){const X=new Map,Le=qe(this.defaultParams);return Object.keys(J).forEach(ft=>{const Pt=J[ft];null!==Pt&&(Le[ft]=Pt)}),this.styles.styles.forEach(ft=>{"string"!=typeof ft&&ft.forEach((Pt,Rt)=>{Pt&&(Pt=ve(Pt,Le,L));const Jt=this.normalizer.normalizePropertyName(Rt,L);Pt=this.normalizer.normalizeStyleValue(Rt,Jt,Pt,L),X.set(Rt,Pt)})}),X}}class Kt{constructor(J,L,X){this.name=J,this.ast=L,this._normalizer=X,this.transitionFactories=[],this.states=new Map,L.states.forEach(Le=>{this.states.set(Le.name,new We(Le.style,Le.options&&Le.options.params||{},X))}),zn(this.states,"true","1"),zn(this.states,"false","0"),L.transitions.forEach(Le=>{this.transitionFactories.push(new Sn(J,Le,this.states))}),this.fallbackTransition=function ln(Ce,J,L){return new Sn(Ce,{type:1,animation:{type:2,steps:[],options:null},matchers:[(Pt,Rt)=>!0],options:null,queryCount:0,depCount:0},J)}(J,this.states)}get containsQueries(){return this.ast.queryCount>0}matchTransition(J,L,X,Le){return this.transitionFactories.find(Pt=>Pt.match(J,L,X,Le))||null}matchStyles(J,L,X){return this.fallbackTransition.buildStyles(J,L,X)}}function zn(Ce,J,L){Ce.has(J)?Ce.has(L)||Ce.set(L,Ce.get(J)):Ce.has(L)&&Ce.set(J,Ce.get(L))}const kn=new $i;class Qn{constructor(J,L,X){this.bodyNode=J,this._driver=L,this._normalizer=X,this._animations=new Map,this._playersById=new Map,this.players=[]}register(J,L){const X=[],ft=di(this._driver,L,X,[]);if(X.length)throw function be(Ce){return new t.vHH(3503,!1)}();this._animations.set(J,ft)}_buildPlayer(J,L,X){const Le=J.element,ft=Re(this._normalizer,J.keyframes,L,X);return this._driver.animate(Le,ft,J.duration,J.delay,J.easing,[],!0)}create(J,L,X={}){const Le=[],ft=this._animations.get(J);let Pt;const Rt=new Map;if(ft?(Pt=Hi(this._driver,L,ft,Vt,st,new Map,new Map,X,kn,Le),Pt.forEach(Cn=>{const Tn=je(Rt,Cn.element,new Map);Cn.postStyleProps.forEach(Xn=>Tn.set(Xn,null))})):(Le.push(function le(){return new t.vHH(3300,!1)}()),Pt=[]),Le.length)throw function ce(Ce){return new t.vHH(3504,!1)}();Rt.forEach((Cn,Tn)=>{Cn.forEach((Xn,Hn)=>{Cn.set(Hn,this._driver.computeStyle(Tn,Hn,h.l3))})});const nn=Be(Pt.map(Cn=>{const Tn=Rt.get(Cn.element);return this._buildPlayer(Cn,new Map,Tn)}));return this._playersById.set(J,nn),nn.onDestroy(()=>this.destroy(J)),this.players.push(nn),nn}destroy(J){const L=this._getPlayer(J);L.destroy(),this._playersById.delete(J);const X=this.players.indexOf(L);X>=0&&this.players.splice(X,1)}_getPlayer(J){const L=this._playersById.get(J);if(!L)throw function Q(Ce){return new t.vHH(3301,!1)}();return L}listen(J,L,X,Le){const ft=Mt(L,"","","");return ct(this._getPlayer(J),X,ft,Le),()=>{}}command(J,L,X,Le){if("register"==X)return void this.register(J,Le[0]);if("create"==X)return void this.create(J,L,Le[0]||{});const ft=this._getPlayer(J);switch(X){case"play":ft.play();break;case"pause":ft.pause();break;case"reset":ft.reset();break;case"restart":ft.restart();break;case"finish":ft.finish();break;case"init":ft.init();break;case"setPosition":ft.setPosition(parseFloat(Le[0]));break;case"destroy":this.destroy(J)}}}const ui="ng-animate-queued",Ui="ng-animate-disabled",xo=[],Ti={namespaceId:"",setForRemoval:!1,setForMove:!1,hasAnimation:!1,removedBeforeQueried:!1},qo={namespaceId:"",setForMove:!1,setForRemoval:!1,hasAnimation:!1,removedBeforeQueried:!0},so="__ng_removed";class ro{get params(){return this.options.params}constructor(J,L=""){this.namespaceId=L;const X=J&&J.hasOwnProperty("value");if(this.value=function Jn(Ce){return Ce??null}(X?J.value:J),X){const ft=qe(J);delete ft.value,this.options=ft}else this.options={};this.options.params||(this.options.params={})}absorbOptions(J){const L=J.params;if(L){const X=this.options.params;Object.keys(L).forEach(Le=>{null==X[Le]&&(X[Le]=L[Le])})}}}const So="void",ps=new ro(So);class vo{constructor(J,L,X){this.id=J,this.hostElement=L,this._engine=X,this.players=[],this._triggers=new Map,this._queue=[],this._elementListeners=new Map,this._hostClassName="ng-tns-"+J,Fi(L,this._hostClassName)}listen(J,L,X,Le){if(!this._triggers.has(L))throw function ie(Ce,J){return new t.vHH(3302,!1)}();if(null==X||0==X.length)throw function ae(Ce){return new t.vHH(3303,!1)}();if(!function es(Ce){return"start"==Ce||"done"==Ce}(X))throw function xe(Ce,J){return new t.vHH(3400,!1)}();const ft=je(this._elementListeners,J,[]),Pt={name:L,phase:X,callback:Le};ft.push(Pt);const Rt=je(this._engine.statesByElement,J,new Map);return Rt.has(L)||(Fi(J,He),Fi(J,He+"-"+L),Rt.set(L,ps)),()=>{this._engine.afterFlush(()=>{const Jt=ft.indexOf(Pt);Jt>=0&&ft.splice(Jt,1),this._triggers.has(L)||Rt.delete(L)})}}register(J,L){return!this._triggers.has(J)&&(this._triggers.set(J,L),!0)}_getTrigger(J){const L=this._triggers.get(J);if(!L)throw function Me(Ce){return new t.vHH(3401,!1)}();return L}trigger(J,L,X,Le=!0){const ft=this._getTrigger(L),Pt=new Oo(this.id,L,J);let Rt=this._engine.statesByElement.get(J);Rt||(Fi(J,He),Fi(J,He+"-"+L),this._engine.statesByElement.set(J,Rt=new Map));let Jt=Rt.get(L);const nn=new ro(X,this.id);if(!(X&&X.hasOwnProperty("value"))&&Jt&&nn.absorbOptions(Jt.options),Rt.set(L,nn),Jt||(Jt=ps),nn.value!==So&&Jt.value===nn.value){if(!function Gt(Ce,J){const L=Object.keys(Ce),X=Object.keys(J);if(L.length!=X.length)return!1;for(let Le=0;Le{De(J,Di),wt(J,fo)})}return}const Xn=je(this._engine.playersByElement,J,[]);Xn.forEach(ii=>{ii.namespaceId==this.id&&ii.triggerName==L&&ii.queued&&ii.destroy()});let Hn=ft.matchTransition(Jt.value,nn.value,J,nn.params),Vn=!1;if(!Hn){if(!Le)return;Hn=ft.fallbackTransition,Vn=!0}return this._engine.totalQueuedPlayers++,this._queue.push({element:J,triggerName:L,transition:Hn,fromState:Jt,toState:nn,player:Pt,isFallbackTransition:Vn}),Vn||(Fi(J,ui),Pt.onStart(()=>{lo(J,ui)})),Pt.onDone(()=>{let ii=this.players.indexOf(Pt);ii>=0&&this.players.splice(ii,1);const Di=this._engine.playersByElement.get(J);if(Di){let fo=Di.indexOf(Pt);fo>=0&&Di.splice(fo,1)}}),this.players.push(Pt),Xn.push(Pt),Pt}deregister(J){this._triggers.delete(J),this._engine.statesByElement.forEach(L=>L.delete(J)),this._elementListeners.forEach((L,X)=>{this._elementListeners.set(X,L.filter(Le=>Le.name!=J))})}clearElementCache(J){this._engine.statesByElement.delete(J),this._elementListeners.delete(J);const L=this._engine.playersByElement.get(J);L&&(L.forEach(X=>X.destroy()),this._engine.playersByElement.delete(J))}_signalRemovalForInnerTriggers(J,L){const X=this._engine.driver.query(J,et,!0);X.forEach(Le=>{if(Le[so])return;const ft=this._engine.fetchNamespacesByElement(Le);ft.size?ft.forEach(Pt=>Pt.triggerLeaveAnimation(Le,L,!1,!0)):this.clearElementCache(Le)}),this._engine.afterFlushAnimationsDone(()=>X.forEach(Le=>this.clearElementCache(Le)))}triggerLeaveAnimation(J,L,X,Le){const ft=this._engine.statesByElement.get(J),Pt=new Map;if(ft){const Rt=[];if(ft.forEach((Jt,nn)=>{if(Pt.set(nn,Jt.value),this._triggers.has(nn)){const Cn=this.trigger(J,nn,So,Le);Cn&&Rt.push(Cn)}}),Rt.length)return this._engine.markElementAsRemoved(this.id,J,!0,L,Pt),X&&Be(Rt).onDone(()=>this._engine.processLeaveNode(J)),!0}return!1}prepareLeaveAnimationListeners(J){const L=this._elementListeners.get(J),X=this._engine.statesByElement.get(J);if(L&&X){const Le=new Set;L.forEach(ft=>{const Pt=ft.name;if(Le.has(Pt))return;Le.add(Pt);const Jt=this._triggers.get(Pt).fallbackTransition,nn=X.get(Pt)||ps,Cn=new ro(So),Tn=new Oo(this.id,Pt,J);this._engine.totalQueuedPlayers++,this._queue.push({element:J,triggerName:Pt,transition:Jt,fromState:nn,toState:Cn,player:Tn,isFallbackTransition:!0})})}}removeNode(J,L){const X=this._engine;if(J.childElementCount&&this._signalRemovalForInnerTriggers(J,L),this.triggerLeaveAnimation(J,L,!0))return;let Le=!1;if(X.totalAnimations){const ft=X.players.length?X.playersByQueriedElement.get(J):[];if(ft&&ft.length)Le=!0;else{let Pt=J;for(;Pt=Pt.parentNode;)if(X.statesByElement.get(Pt)){Le=!0;break}}}if(this.prepareLeaveAnimationListeners(J),Le)X.markElementAsRemoved(this.id,J,!1,L);else{const ft=J[so];(!ft||ft===Ti)&&(X.afterFlush(()=>this.clearElementCache(J)),X.destroyInnerAnimations(J),X._onRemovalComplete(J,L))}}insertNode(J,L){Fi(J,this._hostClassName)}drainQueuedTransitions(J){const L=[];return this._queue.forEach(X=>{const Le=X.player;if(Le.destroyed)return;const ft=X.element,Pt=this._elementListeners.get(ft);Pt&&Pt.forEach(Rt=>{if(Rt.name==X.triggerName){const Jt=Mt(ft,X.triggerName,X.fromState.value,X.toState.value);Jt._data=J,ct(X.player,Rt.phase,Jt,Rt.callback)}}),Le.markedForDestroy?this._engine.afterFlush(()=>{Le.destroy()}):L.push(X)}),this._queue=[],L.sort((X,Le)=>{const ft=X.transition.ast.depCount,Pt=Le.transition.ast.depCount;return 0==ft||0==Pt?ft-Pt:this._engine.driver.containsElement(X.element,Le.element)?1:-1})}destroy(J){this.players.forEach(L=>L.destroy()),this._signalRemovalForInnerTriggers(this.hostElement,J)}}class ao{_onRemovalComplete(J,L){this.onRemovalComplete(J,L)}constructor(J,L,X){this.bodyNode=J,this.driver=L,this._normalizer=X,this.players=[],this.newHostElements=new Map,this.playersByElement=new Map,this.playersByQueriedElement=new Map,this.statesByElement=new Map,this.disabledNodes=new Set,this.totalAnimations=0,this.totalQueuedPlayers=0,this._namespaceLookup={},this._namespaceList=[],this._flushFns=[],this._whenQuietFns=[],this.namespacesByHostElement=new Map,this.collectedEnterElements=[],this.collectedLeaveElements=[],this.onRemovalComplete=(Le,ft)=>{}}get queuedPlayers(){const J=[];return this._namespaceList.forEach(L=>{L.players.forEach(X=>{X.queued&&J.push(X)})}),J}createNamespace(J,L){const X=new vo(J,L,this);return this.bodyNode&&this.driver.containsElement(this.bodyNode,L)?this._balanceNamespaceList(X,L):(this.newHostElements.set(L,X),this.collectEnterElement(L)),this._namespaceLookup[J]=X}_balanceNamespaceList(J,L){const X=this._namespaceList,Le=this.namespacesByHostElement;if(X.length-1>=0){let Pt=!1,Rt=this.driver.getParentElement(L);for(;Rt;){const Jt=Le.get(Rt);if(Jt){const nn=X.indexOf(Jt);X.splice(nn+1,0,J),Pt=!0;break}Rt=this.driver.getParentElement(Rt)}Pt||X.unshift(J)}else X.push(J);return Le.set(L,J),J}register(J,L){let X=this._namespaceLookup[J];return X||(X=this.createNamespace(J,L)),X}registerTrigger(J,L,X){let Le=this._namespaceLookup[J];Le&&Le.register(L,X)&&this.totalAnimations++}destroy(J,L){J&&(this.afterFlush(()=>{}),this.afterFlushAnimationsDone(()=>{const X=this._fetchNamespace(J);this.namespacesByHostElement.delete(X.hostElement);const Le=this._namespaceList.indexOf(X);Le>=0&&this._namespaceList.splice(Le,1),X.destroy(L),delete this._namespaceLookup[J]}))}_fetchNamespace(J){return this._namespaceLookup[J]}fetchNamespacesByElement(J){const L=new Set,X=this.statesByElement.get(J);if(X)for(let Le of X.values())if(Le.namespaceId){const ft=this._fetchNamespace(Le.namespaceId);ft&&L.add(ft)}return L}trigger(J,L,X,Le){if(to(L)){const ft=this._fetchNamespace(J);if(ft)return ft.trigger(L,X,Le),!0}return!1}insertNode(J,L,X,Le){if(!to(L))return;const ft=L[so];if(ft&&ft.setForRemoval){ft.setForRemoval=!1,ft.setForMove=!0;const Pt=this.collectedLeaveElements.indexOf(L);Pt>=0&&this.collectedLeaveElements.splice(Pt,1)}if(J){const Pt=this._fetchNamespace(J);Pt&&Pt.insertNode(L,X)}Le&&this.collectEnterElement(L)}collectEnterElement(J){this.collectedEnterElements.push(J)}markElementAsDisabled(J,L){L?this.disabledNodes.has(J)||(this.disabledNodes.add(J),Fi(J,Ui)):this.disabledNodes.has(J)&&(this.disabledNodes.delete(J),lo(J,Ui))}removeNode(J,L,X){if(to(L)){const Le=J?this._fetchNamespace(J):null;Le?Le.removeNode(L,X):this.markElementAsRemoved(J,L,!1,X);const ft=this.namespacesByHostElement.get(L);ft&&ft.id!==J&&ft.removeNode(L,X)}else this._onRemovalComplete(L,X)}markElementAsRemoved(J,L,X,Le,ft){this.collectedLeaveElements.push(L),L[so]={namespaceId:J,setForRemoval:Le,hasAnimation:X,removedBeforeQueried:!1,previousTriggersValues:ft}}listen(J,L,X,Le,ft){return to(L)?this._fetchNamespace(J).listen(L,X,Le,ft):()=>{}}_buildInstruction(J,L,X,Le,ft){return J.transition.build(this.driver,J.element,J.fromState.value,J.toState.value,X,Le,J.fromState.options,J.toState.options,L,ft)}destroyInnerAnimations(J){let L=this.driver.query(J,et,!0);L.forEach(X=>this.destroyActiveAnimationsForElement(X)),0!=this.playersByQueriedElement.size&&(L=this.driver.query(J,Ot,!0),L.forEach(X=>this.finishActiveQueriedAnimationOnElement(X)))}destroyActiveAnimationsForElement(J){const L=this.playersByElement.get(J);L&&L.forEach(X=>{X.queued?X.markedForDestroy=!0:X.destroy()})}finishActiveQueriedAnimationOnElement(J){const L=this.playersByQueriedElement.get(J);L&&L.forEach(X=>X.finish())}whenRenderingDone(){return new Promise(J=>{if(this.players.length)return Be(this.players).onDone(()=>J());J()})}processLeaveNode(J){const L=J[so];if(L&&L.setForRemoval){if(J[so]=Ti,L.namespaceId){this.destroyInnerAnimations(J);const X=this._fetchNamespace(L.namespaceId);X&&X.clearElementCache(J)}this._onRemovalComplete(J,L.setForRemoval)}J.classList?.contains(Ui)&&this.markElementAsDisabled(J,!1),this.driver.query(J,".ng-animate-disabled",!0).forEach(X=>{this.markElementAsDisabled(X,!1)})}flush(J=-1){let L=[];if(this.newHostElements.size&&(this.newHostElements.forEach((X,Le)=>this._balanceNamespaceList(X,Le)),this.newHostElements.clear()),this.totalAnimations&&this.collectedEnterElements.length)for(let X=0;XX()),this._flushFns=[],this._whenQuietFns.length){const X=this._whenQuietFns;this._whenQuietFns=[],L.length?Be(L).onDone(()=>{X.forEach(Le=>Le())}):X.forEach(Le=>Le())}}reportError(J){throw function Ye(Ce){return new t.vHH(3402,!1)}()}_flushAnimations(J,L){const X=new $i,Le=[],ft=new Map,Pt=[],Rt=new Map,Jt=new Map,nn=new Map,Cn=new Set;this.disabledNodes.forEach(On=>{Cn.add(On);const $n=this.driver.query(On,".ng-animate-queued",!0);for(let Kn=0;Kn<$n.length;Kn++)Cn.add($n[Kn])});const Tn=this.bodyNode,Xn=Array.from(this.statesByElement.keys()),Hn=Ro(Xn,this.collectedEnterElements),Vn=new Map;let ii=0;Hn.forEach((On,$n)=>{const Kn=Vt+ii++;Vn.set($n,Kn),On.forEach(Si=>Fi(Si,Kn))});const Di=[],fo=new Set,Ao=new Set;for(let On=0;Onfo.add(Si)):Ao.add($n))}const Mi=new Map,No=Ro(Xn,Array.from(fo));No.forEach((On,$n)=>{const Kn=st+ii++;Mi.set($n,Kn),On.forEach(Si=>Fi(Si,Kn))}),J.push(()=>{Hn.forEach((On,$n)=>{const Kn=Vn.get($n);On.forEach(Si=>lo(Si,Kn))}),No.forEach((On,$n)=>{const Kn=Mi.get($n);On.forEach(Si=>lo(Si,Kn))}),Di.forEach(On=>{this.processLeaveNode(On)})});const Hs=[],Vs=[];for(let On=this._namespaceList.length-1;On>=0;On--)this._namespaceList[On].drainQueuedTransitions(L).forEach(Kn=>{const Si=Kn.player,bo=Kn.element;if(Hs.push(Si),this.collectedEnterElements.length){const ko=bo[so];if(ko&&ko.setForMove){if(ko.previousTriggersValues&&ko.previousTriggersValues.has(Kn.triggerName)){const Ys=ko.previousTriggersValues.get(Kn.triggerName),ds=this.statesByElement.get(Kn.element);if(ds&&ds.has(Kn.triggerName)){const gr=ds.get(Kn.triggerName);gr.value=Ys,ds.set(Kn.triggerName,gr)}}return void Si.destroy()}}const Ds=!Tn||!this.driver.containsElement(Tn,bo),cs=Mi.get(bo),Qs=Vn.get(bo),mo=this._buildInstruction(Kn,X,Qs,cs,Ds);if(mo.errors&&mo.errors.length)return void Vs.push(mo);if(Ds)return Si.onStart(()=>De(bo,mo.fromStyles)),Si.onDestroy(()=>wt(bo,mo.toStyles)),void Le.push(Si);if(Kn.isFallbackTransition)return Si.onStart(()=>De(bo,mo.fromStyles)),Si.onDestroy(()=>wt(bo,mo.toStyles)),void Le.push(Si);const oc=[];mo.timelines.forEach(ko=>{ko.stretchStartingKeyframe=!0,this.disabledNodes.has(ko.element)||oc.push(ko)}),mo.timelines=oc,X.append(bo,mo.timelines),Pt.push({instruction:mo,player:Si,element:bo}),mo.queriedElements.forEach(ko=>je(Rt,ko,[]).push(Si)),mo.preStyleProps.forEach((ko,Ys)=>{if(ko.size){let ds=Jt.get(Ys);ds||Jt.set(Ys,ds=new Set),ko.forEach((gr,Xr)=>ds.add(Xr))}}),mo.postStyleProps.forEach((ko,Ys)=>{let ds=nn.get(Ys);ds||nn.set(Ys,ds=new Set),ko.forEach((gr,Xr)=>ds.add(Xr))})});if(Vs.length){const On=[];Vs.forEach($n=>{On.push(function ye(Ce,J){return new t.vHH(3505,!1)}())}),Hs.forEach($n=>$n.destroy()),this.reportError(On)}const Ji=new Map,is=new Map;Pt.forEach(On=>{const $n=On.element;X.has($n)&&(is.set($n,$n),this._beforeAnimationBuild(On.player.namespaceId,On.instruction,Ji))}),Le.forEach(On=>{const $n=On.element;this._getPreviousPlayers($n,!1,On.namespaceId,On.triggerName,null).forEach(Si=>{je(Ji,$n,[]).push(Si),Si.destroy()})});const Us=Di.filter(On=>Z(On,Jt,nn)),ls=new Map;ji(ls,this.driver,Ao,nn,h.l3).forEach(On=>{Z(On,Jt,nn)&&Us.push(On)});const Qr=new Map;Hn.forEach((On,$n)=>{ji(Qr,this.driver,new Set(On),Jt,h.k1)}),Us.forEach(On=>{const $n=ls.get(On),Kn=Qr.get(On);ls.set(On,new Map([...$n?.entries()??[],...Kn?.entries()??[]]))});const Nr=[],ic=[],md={};Pt.forEach(On=>{const{element:$n,player:Kn,instruction:Si}=On;if(X.has($n)){if(Cn.has($n))return Kn.onDestroy(()=>wt($n,Si.toStyles)),Kn.disabled=!0,Kn.overrideTotalTime(Si.totalTime),void Le.push(Kn);let bo=md;if(is.size>1){let cs=$n;const Qs=[];for(;cs=cs.parentNode;){const mo=is.get(cs);if(mo){bo=mo;break}Qs.push(cs)}Qs.forEach(mo=>is.set(mo,bo))}const Ds=this._buildAnimation(Kn.namespaceId,Si,Ji,ft,Qr,ls);if(Kn.setRealPlayer(Ds),bo===md)Nr.push(Kn);else{const cs=this.playersByElement.get(bo);cs&&cs.length&&(Kn.parentPlayer=Be(cs)),Le.push(Kn)}}else De($n,Si.fromStyles),Kn.onDestroy(()=>wt($n,Si.toStyles)),ic.push(Kn),Cn.has($n)&&Le.push(Kn)}),ic.forEach(On=>{const $n=ft.get(On.element);if($n&&$n.length){const Kn=Be($n);On.setRealPlayer(Kn)}}),Le.forEach(On=>{On.parentPlayer?On.syncPlayerEvents(On.parentPlayer):On.destroy()});for(let On=0;On!Ds.destroyed);bo.length?Ai(this,$n,bo):this.processLeaveNode($n)}return Di.length=0,Nr.forEach(On=>{this.players.push(On),On.onDone(()=>{On.destroy();const $n=this.players.indexOf(On);this.players.splice($n,1)}),On.play()}),Nr}afterFlush(J){this._flushFns.push(J)}afterFlushAnimationsDone(J){this._whenQuietFns.push(J)}_getPreviousPlayers(J,L,X,Le,ft){let Pt=[];if(L){const Rt=this.playersByQueriedElement.get(J);Rt&&(Pt=Rt)}else{const Rt=this.playersByElement.get(J);if(Rt){const Jt=!ft||ft==So;Rt.forEach(nn=>{nn.queued||!Jt&&nn.triggerName!=Le||Pt.push(nn)})}}return(X||Le)&&(Pt=Pt.filter(Rt=>!(X&&X!=Rt.namespaceId||Le&&Le!=Rt.triggerName))),Pt}_beforeAnimationBuild(J,L,X){const ft=L.element,Pt=L.isRemovalTransition?void 0:J,Rt=L.isRemovalTransition?void 0:L.triggerName;for(const Jt of L.timelines){const nn=Jt.element,Cn=nn!==ft,Tn=je(X,nn,[]);this._getPreviousPlayers(nn,Cn,Pt,Rt,L.toState).forEach(Hn=>{const Vn=Hn.getRealPlayer();Vn.beforeDestroy&&Vn.beforeDestroy(),Hn.destroy(),Tn.push(Hn)})}De(ft,L.fromStyles)}_buildAnimation(J,L,X,Le,ft,Pt){const Rt=L.triggerName,Jt=L.element,nn=[],Cn=new Set,Tn=new Set,Xn=L.timelines.map(Vn=>{const ii=Vn.element;Cn.add(ii);const Di=ii[so];if(Di&&Di.removedBeforeQueried)return new h.ZN(Vn.duration,Vn.delay);const fo=ii!==Jt,Ao=function Os(Ce){const J=[];return rt(Ce,J),J}((X.get(ii)||xo).map(Ji=>Ji.getRealPlayer())).filter(Ji=>!!Ji.element&&Ji.element===ii),Mi=ft.get(ii),No=Pt.get(ii),Hs=Re(this._normalizer,Vn.keyframes,Mi,No),Vs=this._buildPlayer(Vn,Hs,Ao);if(Vn.subTimeline&&Le&&Tn.add(ii),fo){const Ji=new Oo(J,Rt,ii);Ji.setRealPlayer(Vs),nn.push(Ji)}return Vs});nn.forEach(Vn=>{je(this.playersByQueriedElement,Vn.element,[]).push(Vn),Vn.onDone(()=>function Wo(Ce,J,L){let X=Ce.get(J);if(X){if(X.length){const Le=X.indexOf(L);X.splice(Le,1)}0==X.length&&Ce.delete(J)}return X}(this.playersByQueriedElement,Vn.element,Vn))}),Cn.forEach(Vn=>Fi(Vn,It));const Hn=Be(Xn);return Hn.onDestroy(()=>{Cn.forEach(Vn=>lo(Vn,It)),wt(Jt,L.toStyles)}),Tn.forEach(Vn=>{je(Le,Vn,[]).push(Hn)}),Hn}_buildPlayer(J,L,X){return L.length>0?this.driver.animate(J.element,L,J.duration,J.delay,J.easing,X):new h.ZN(J.duration,J.delay)}}class Oo{constructor(J,L,X){this.namespaceId=J,this.triggerName=L,this.element=X,this._player=new h.ZN,this._containsRealPlayer=!1,this._queuedCallbacks=new Map,this.destroyed=!1,this.parentPlayer=null,this.markedForDestroy=!1,this.disabled=!1,this.queued=!0,this.totalTime=0}setRealPlayer(J){this._containsRealPlayer||(this._player=J,this._queuedCallbacks.forEach((L,X)=>{L.forEach(Le=>ct(J,X,void 0,Le))}),this._queuedCallbacks.clear(),this._containsRealPlayer=!0,this.overrideTotalTime(J.totalTime),this.queued=!1)}getRealPlayer(){return this._player}overrideTotalTime(J){this.totalTime=J}syncPlayerEvents(J){const L=this._player;L.triggerCallback&&J.onStart(()=>L.triggerCallback("start")),J.onDone(()=>this.finish()),J.onDestroy(()=>this.destroy())}_queueEvent(J,L){je(this._queuedCallbacks,J,[]).push(L)}onDone(J){this.queued&&this._queueEvent("done",J),this._player.onDone(J)}onStart(J){this.queued&&this._queueEvent("start",J),this._player.onStart(J)}onDestroy(J){this.queued&&this._queueEvent("destroy",J),this._player.onDestroy(J)}init(){this._player.init()}hasStarted(){return!this.queued&&this._player.hasStarted()}play(){!this.queued&&this._player.play()}pause(){!this.queued&&this._player.pause()}restart(){!this.queued&&this._player.restart()}finish(){this._player.finish()}destroy(){this.destroyed=!0,this._player.destroy()}reset(){!this.queued&&this._player.reset()}setPosition(J){this.queued||this._player.setPosition(J)}getPosition(){return this.queued?0:this._player.getPosition()}triggerCallback(J){const L=this._player;L.triggerCallback&&L.triggerCallback(J)}}function to(Ce){return Ce&&1===Ce.nodeType}function no(Ce,J){const L=Ce.style.display;return Ce.style.display=J??"none",L}function ji(Ce,J,L,X,Le){const ft=[];L.forEach(Jt=>ft.push(no(Jt)));const Pt=[];X.forEach((Jt,nn)=>{const Cn=new Map;Jt.forEach(Tn=>{const Xn=J.computeStyle(nn,Tn,Le);Cn.set(Tn,Xn),(!Xn||0==Xn.length)&&(nn[so]=qo,Pt.push(nn))}),Ce.set(nn,Cn)});let Rt=0;return L.forEach(Jt=>no(Jt,ft[Rt++])),Pt}function Ro(Ce,J){const L=new Map;if(Ce.forEach(Rt=>L.set(Rt,[])),0==J.length)return L;const Le=new Set(J),ft=new Map;function Pt(Rt){if(!Rt)return 1;let Jt=ft.get(Rt);if(Jt)return Jt;const nn=Rt.parentNode;return Jt=L.has(nn)?nn:Le.has(nn)?1:Pt(nn),ft.set(Rt,Jt),Jt}return J.forEach(Rt=>{const Jt=Pt(Rt);1!==Jt&&L.get(Jt).push(Rt)}),L}function Fi(Ce,J){Ce.classList?.add(J)}function lo(Ce,J){Ce.classList?.remove(J)}function Ai(Ce,J,L){Be(L).onDone(()=>Ce.processLeaveNode(J))}function rt(Ce,J){for(let L=0;LLe.add(ft)):J.set(Ce,X),L.delete(Ce),!0}class dt{constructor(J,L,X){this.bodyNode=J,this._driver=L,this._normalizer=X,this._triggerCache={},this.onRemovalComplete=(Le,ft)=>{},this._transitionEngine=new ao(J,L,X),this._timelineEngine=new Qn(J,L,X),this._transitionEngine.onRemovalComplete=(Le,ft)=>this.onRemovalComplete(Le,ft)}registerTrigger(J,L,X,Le,ft){const Pt=J+"-"+Le;let Rt=this._triggerCache[Pt];if(!Rt){const Jt=[],Cn=di(this._driver,ft,Jt,[]);if(Jt.length)throw function pe(Ce,J){return new t.vHH(3404,!1)}();Rt=function Nt(Ce,J,L){return new Kt(Ce,J,L)}(Le,Cn,this._normalizer),this._triggerCache[Pt]=Rt}this._transitionEngine.registerTrigger(L,Le,Rt)}register(J,L){this._transitionEngine.register(J,L)}destroy(J,L){this._transitionEngine.destroy(J,L)}onInsert(J,L,X,Le){this._transitionEngine.insertNode(J,L,X,Le)}onRemove(J,L,X){this._transitionEngine.removeNode(J,L,X)}disableAnimations(J,L){this._transitionEngine.markElementAsDisabled(J,L)}process(J,L,X,Le){if("@"==X.charAt(0)){const[ft,Pt]=ot(X);this._timelineEngine.command(ft,L,Pt,Le)}else this._transitionEngine.trigger(J,L,X,Le)}listen(J,L,X,Le,ft){if("@"==X.charAt(0)){const[Pt,Rt]=ot(X);return this._timelineEngine.listen(Pt,L,Rt,ft)}return this._transitionEngine.listen(J,L,X,Le,ft)}flush(J=-1){this._transitionEngine.flush(J)}get players(){return[...this._transitionEngine.players,...this._timelineEngine.players]}whenRenderingDone(){return this._transitionEngine.whenRenderingDone()}afterFlushAnimationsDone(J){this._transitionEngine.afterFlushAnimationsDone(J)}}let $t=(()=>{class Ce{static#e=this.initialStylesByElement=new WeakMap;constructor(L,X,Le){this._element=L,this._startStyles=X,this._endStyles=Le,this._state=0;let ft=Ce.initialStylesByElement.get(L);ft||Ce.initialStylesByElement.set(L,ft=new Map),this._initialStyles=ft}start(){this._state<1&&(this._startStyles&&wt(this._element,this._startStyles,this._initialStyles),this._state=1)}finish(){this.start(),this._state<2&&(wt(this._element,this._initialStyles),this._endStyles&&(wt(this._element,this._endStyles),this._endStyles=null),this._state=1)}destroy(){this.finish(),this._state<3&&(Ce.initialStylesByElement.delete(this._element),this._startStyles&&(De(this._element,this._startStyles),this._endStyles=null),this._endStyles&&(De(this._element,this._endStyles),this._endStyles=null),wt(this._element,this._initialStyles),this._state=3)}}return Ce})();function yn(Ce){let J=null;return Ce.forEach((L,X)=>{(function In(Ce){return"display"===Ce||"position"===Ce})(X)&&(J=J||new Map,J.set(X,L))}),J}class yi{constructor(J,L,X,Le){this.element=J,this.keyframes=L,this.options=X,this._specialStyles=Le,this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._initialized=!1,this._finished=!1,this._started=!1,this._destroyed=!1,this._originalOnDoneFns=[],this._originalOnStartFns=[],this.time=0,this.parentPlayer=null,this.currentSnapshot=new Map,this._duration=X.duration,this._delay=X.delay||0,this.time=this._duration+this._delay}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(J=>J()),this._onDoneFns=[])}init(){this._buildPlayer(),this._preparePlayerBeforeStart()}_buildPlayer(){if(this._initialized)return;this._initialized=!0;const J=this.keyframes;this.domPlayer=this._triggerWebAnimation(this.element,J,this.options),this._finalKeyframe=J.length?J[J.length-1]:new Map,this.domPlayer.addEventListener("finish",()=>this._onFinish())}_preparePlayerBeforeStart(){this._delay?this._resetDomPlayerState():this.domPlayer.pause()}_convertKeyframesToObject(J){const L=[];return J.forEach(X=>{L.push(Object.fromEntries(X))}),L}_triggerWebAnimation(J,L,X){return J.animate(this._convertKeyframesToObject(L),X)}onStart(J){this._originalOnStartFns.push(J),this._onStartFns.push(J)}onDone(J){this._originalOnDoneFns.push(J),this._onDoneFns.push(J)}onDestroy(J){this._onDestroyFns.push(J)}play(){this._buildPlayer(),this.hasStarted()||(this._onStartFns.forEach(J=>J()),this._onStartFns=[],this._started=!0,this._specialStyles&&this._specialStyles.start()),this.domPlayer.play()}pause(){this.init(),this.domPlayer.pause()}finish(){this.init(),this._specialStyles&&this._specialStyles.finish(),this._onFinish(),this.domPlayer.finish()}reset(){this._resetDomPlayerState(),this._destroyed=!1,this._finished=!1,this._started=!1,this._onStartFns=this._originalOnStartFns,this._onDoneFns=this._originalOnDoneFns}_resetDomPlayerState(){this.domPlayer&&this.domPlayer.cancel()}restart(){this.reset(),this.play()}hasStarted(){return this._started}destroy(){this._destroyed||(this._destroyed=!0,this._resetDomPlayerState(),this._onFinish(),this._specialStyles&&this._specialStyles.destroy(),this._onDestroyFns.forEach(J=>J()),this._onDestroyFns=[])}setPosition(J){void 0===this.domPlayer&&this.init(),this.domPlayer.currentTime=J*this.time}getPosition(){return+(this.domPlayer.currentTime??0)/this.time}get totalTime(){return this._delay+this._duration}beforeDestroy(){const J=new Map;this.hasStarted()&&this._finalKeyframe.forEach((X,Le)=>{"offset"!==Le&&J.set(Le,this._finished?X:ze(this.element,Le))}),this.currentSnapshot=J}triggerCallback(J){const L="start"===J?this._onStartFns:this._onDoneFns;L.forEach(X=>X()),L.length=0}}class yo{validateStyleProperty(J){return!0}validateAnimatableStyleProperty(J){return!0}matchesElement(J,L){return!1}containsElement(J,L){return pt(J,L)}getParentElement(J){return we(J)}query(J,L,X){return Dt(J,L,X)}computeStyle(J,L,X){return window.getComputedStyle(J)[L]}animate(J,L,X,Le,ft,Pt=[]){const Jt={duration:X,delay:Le,fill:0==Le?"both":"forwards"};ft&&(Jt.easing=ft);const nn=new Map,Cn=Pt.filter(Hn=>Hn instanceof yi);(function $(Ce,J){return 0===Ce||0===J})(X,Le)&&Cn.forEach(Hn=>{Hn.currentSnapshot.forEach((Vn,ii)=>nn.set(ii,Vn))});let Tn=function Ze(Ce){return Ce.length?Ce[0]instanceof Map?Ce:Ce.map(J=>ge(J)):[]}(L).map(Hn=>Ue(Hn));Tn=function R(Ce,J,L){if(L.size&&J.length){let X=J[0],Le=[];if(L.forEach((ft,Pt)=>{X.has(Pt)||Le.push(Pt),X.set(Pt,ft)}),Le.length)for(let ft=1;ftPt.set(Rt,ze(Ce,Rt)))}}return J}(J,Tn,nn);const Xn=function vt(Ce,J){let L=null,X=null;return Array.isArray(J)&&J.length?(L=yn(J[0]),J.length>1&&(X=yn(J[J.length-1]))):J instanceof Map&&(L=yn(J)),L||X?new $t(Ce,L,X):null}(J,Tn);return new yi(J,Tn,Jt,Xn)}}let io=(()=>{class Ce extends h._j{constructor(L,X){super(),this._nextAnimationId=0,this._renderer=L.createRenderer(X.body,{id:"0",encapsulation:t.ifc.None,styles:[],data:{animation:[]}})}build(L){const X=this._nextAnimationId.toString();this._nextAnimationId++;const Le=Array.isArray(L)?(0,h.vP)(L):L;return ts(this._renderer,null,X,"register",[Le]),new _o(X,this._renderer)}static#e=this.\u0275fac=function(X){return new(X||Ce)(t.LFG(t.FYo),t.LFG(C.K0))};static#t=this.\u0275prov=t.Yz7({token:Ce,factory:Ce.\u0275fac})}return Ce})();class _o extends h.LC{constructor(J,L){super(),this._id=J,this._renderer=L}create(J,L){return new Yi(this._id,J,L||{},this._renderer)}}class Yi{constructor(J,L,X,Le){this.id=J,this.element=L,this._renderer=Le,this.parentPlayer=null,this._started=!1,this.totalTime=0,this._command("create",X)}_listen(J,L){return this._renderer.listen(this.element,`@@${this.id}:${J}`,L)}_command(J,...L){return ts(this._renderer,this.element,this.id,J,L)}onDone(J){this._listen("done",J)}onStart(J){this._listen("start",J)}onDestroy(J){this._listen("destroy",J)}init(){this._command("init")}hasStarted(){return this._started}play(){this._command("play"),this._started=!0}pause(){this._command("pause")}restart(){this._command("restart")}finish(){this._command("finish")}destroy(){this._command("destroy")}reset(){this._command("reset"),this._started=!1}setPosition(J){this._command("setPosition",J)}getPosition(){return this._renderer.engine.players[+this.id]?.getPosition()??0}}function ts(Ce,J,L,X,Le){return Ce.setProperty(J,`@@${L}:${X}`,Le)}const _i="@.disabled";let fs=(()=>{class Ce{constructor(L,X,Le){this.delegate=L,this.engine=X,this._zone=Le,this._currentId=0,this._microtaskId=1,this._animationCallbacksBuffer=[],this._rendererCache=new Map,this._cdRecurDepth=0,X.onRemovalComplete=(ft,Pt)=>{const Rt=Pt?.parentNode(ft);Rt&&Pt.removeChild(Rt,ft)}}createRenderer(L,X){const ft=this.delegate.createRenderer(L,X);if(!(L&&X&&X.data&&X.data.animation)){let Cn=this._rendererCache.get(ft);return Cn||(Cn=new $o("",ft,this.engine,()=>this._rendererCache.delete(ft)),this._rendererCache.set(ft,Cn)),Cn}const Pt=X.id,Rt=X.id+"-"+this._currentId;this._currentId++,this.engine.register(Rt,L);const Jt=Cn=>{Array.isArray(Cn)?Cn.forEach(Jt):this.engine.registerTrigger(Pt,Rt,L,Cn.name,Cn)};return X.data.animation.forEach(Jt),new at(this,Rt,ft,this.engine)}begin(){this._cdRecurDepth++,this.delegate.begin&&this.delegate.begin()}_scheduleCountTask(){queueMicrotask(()=>{this._microtaskId++})}scheduleListenerCallback(L,X,Le){L>=0&&LX(Le)):(0==this._animationCallbacksBuffer.length&&queueMicrotask(()=>{this._zone.run(()=>{this._animationCallbacksBuffer.forEach(ft=>{const[Pt,Rt]=ft;Pt(Rt)}),this._animationCallbacksBuffer=[]})}),this._animationCallbacksBuffer.push([X,Le]))}end(){this._cdRecurDepth--,0==this._cdRecurDepth&&this._zone.runOutsideAngular(()=>{this._scheduleCountTask(),this.engine.flush(this._microtaskId)}),this.delegate.end&&this.delegate.end()}whenRenderingDone(){return this.engine.whenRenderingDone()}static#e=this.\u0275fac=function(X){return new(X||Ce)(t.LFG(t.FYo),t.LFG(dt),t.LFG(t.R0b))};static#t=this.\u0275prov=t.Yz7({token:Ce,factory:Ce.\u0275fac})}return Ce})();class $o{constructor(J,L,X,Le){this.namespaceId=J,this.delegate=L,this.engine=X,this._onDestroy=Le}get data(){return this.delegate.data}destroyNode(J){this.delegate.destroyNode?.(J)}destroy(){this.engine.destroy(this.namespaceId,this.delegate),this.engine.afterFlushAnimationsDone(()=>{queueMicrotask(()=>{this.delegate.destroy()})}),this._onDestroy?.()}createElement(J,L){return this.delegate.createElement(J,L)}createComment(J){return this.delegate.createComment(J)}createText(J){return this.delegate.createText(J)}appendChild(J,L){this.delegate.appendChild(J,L),this.engine.onInsert(this.namespaceId,L,J,!1)}insertBefore(J,L,X,Le=!0){this.delegate.insertBefore(J,L,X),this.engine.onInsert(this.namespaceId,L,J,Le)}removeChild(J,L,X){this.engine.onRemove(this.namespaceId,L,this.delegate)}selectRootElement(J,L){return this.delegate.selectRootElement(J,L)}parentNode(J){return this.delegate.parentNode(J)}nextSibling(J){return this.delegate.nextSibling(J)}setAttribute(J,L,X,Le){this.delegate.setAttribute(J,L,X,Le)}removeAttribute(J,L,X){this.delegate.removeAttribute(J,L,X)}addClass(J,L){this.delegate.addClass(J,L)}removeClass(J,L){this.delegate.removeClass(J,L)}setStyle(J,L,X,Le){this.delegate.setStyle(J,L,X,Le)}removeStyle(J,L,X){this.delegate.removeStyle(J,L,X)}setProperty(J,L,X){"@"==L.charAt(0)&&L==_i?this.disableAnimations(J,!!X):this.delegate.setProperty(J,L,X)}setValue(J,L){this.delegate.setValue(J,L)}listen(J,L,X){return this.delegate.listen(J,L,X)}disableAnimations(J,L){this.engine.disableAnimations(J,L)}}class at extends $o{constructor(J,L,X,Le,ft){super(L,X,Le,ft),this.factory=J,this.namespaceId=L}setProperty(J,L,X){"@"==L.charAt(0)?"."==L.charAt(1)&&L==_i?this.disableAnimations(J,X=void 0===X||!!X):this.engine.process(this.namespaceId,J,L.slice(1),X):this.delegate.setProperty(J,L,X)}listen(J,L,X){if("@"==L.charAt(0)){const Le=function ht(Ce){switch(Ce){case"body":return document.body;case"document":return document;case"window":return window;default:return Ce}}(J);let ft=L.slice(1),Pt="";return"@"!=ft.charAt(0)&&([ft,Pt]=function Fe(Ce){const J=Ce.indexOf(".");return[Ce.substring(0,J),Ce.slice(J+1)]}(ft)),this.engine.listen(this.namespaceId,Le,ft,Pt,Rt=>{this.factory.scheduleListenerCallback(Rt._data||-1,X,Rt)})}return this.delegate.listen(J,L,X)}}const jn=[{provide:h._j,useClass:io},{provide:lt,useFactory:function jt(){return new Qt}},{provide:dt,useClass:(()=>{class Ce extends dt{constructor(L,X,Le,ft){super(L.body,X,Le)}ngOnDestroy(){this.flush()}static#e=this.\u0275fac=function(X){return new(X||Ce)(t.LFG(C.K0),t.LFG(qt),t.LFG(lt),t.LFG(t.z2F))};static#t=this.\u0275prov=t.Yz7({token:Ce,factory:Ce.\u0275fac})}return Ce})()},{provide:t.FYo,useFactory:function Nn(Ce,J,L){return new fs(Ce,J,L)},deps:[n.se,dt,t.R0b]}],co=[{provide:qt,useFactory:()=>new yo},{provide:t.QbO,useValue:"BrowserAnimations"},...jn],jo=[{provide:qt,useClass:Ut},{provide:t.QbO,useValue:"NoopAnimations"},...jn];let Fo=(()=>{class Ce{static withConfig(L){return{ngModule:Ce,providers:L.disableAnimations?jo:co}}static#e=this.\u0275fac=function(X){return new(X||Ce)};static#t=this.\u0275mod=t.oAB({type:Ce});static#n=this.\u0275inj=t.cJS({providers:co,imports:[n.b2]})}return Ce})();var Bo=o(74911),$s=o(58504),uo=o(92438),Qo=o(22096),Do=o(35211),ws=o(78645),er=o(65592),Ps=o(72420);const Ho=new er.y(Ps.Z);var Yt=o(63019),ms=o(37398),Pn=o(32181),fn=o(94664),ss=o(93168),Cs=o(84674),ns=o(54829),zs=o(79360);const zr={connector:()=>new ws.x};function Tr(Ce,J=zr){const{connector:L}=J;return(0,zs.e)((X,Le)=>{const ft=L();(0,ns.Xf)(Ce(function js(Ce){return new er.y(J=>Ce.subscribe(J))}(ft))).subscribe(Le),Le.add(X.subscribe(ft))})}var Is=o(48180),ra=o(99397),Mr=o(5177);const Ks="Service workers are disabled or not supported by this browser";class tr{constructor(J){if(this.serviceWorker=J,J){const X=(0,uo.R)(J,"controllerchange").pipe((0,ms.U)(()=>J.controller)),Le=(0,Bo.P)(()=>(0,Qo.of)(J.controller)),ft=(0,Do.z)(Le,X);this.worker=ft.pipe((0,Pn.h)(Cn=>!!Cn)),this.registration=this.worker.pipe((0,fn.w)(()=>J.getRegistration()));const nn=(0,uo.R)(J,"message").pipe((0,ms.U)(Cn=>Cn.data)).pipe((0,Pn.h)(Cn=>Cn&&Cn.type)).pipe(function sa(Ce){return Ce?J=>Tr(Ce)(J):J=>function Rl(Ce,J){const L=(0,Cs.m)(Ce)?Ce:()=>Ce;return(0,Cs.m)(J)?Tr(J,{connector:L}):X=>new ss.c(X,L)}(new ws.x)(J)}());nn.connect(),this.events=nn}else this.worker=this.events=this.registration=function Er(Ce){return(0,Bo.P)(()=>(0,$s._)(new Error(Ce)))}(Ks)}postMessage(J,L){return this.worker.pipe((0,Is.q)(1),(0,ra.b)(X=>{X.postMessage({action:J,...L})})).toPromise().then(()=>{})}postMessageWithOperation(J,L,X){const Le=this.waitForOperationCompleted(X),ft=this.postMessage(J,L);return Promise.all([ft,Le]).then(([,Pt])=>Pt)}generateNonce(){return Math.round(1e7*Math.random())}eventsOfType(J){let L;return L="string"==typeof J?X=>X.type===J:X=>J.includes(X.type),this.events.pipe((0,Pn.h)(L))}nextEventOfType(J){return this.eventsOfType(J).pipe((0,Is.q)(1))}waitForOperationCompleted(J){return this.eventsOfType("OPERATION_COMPLETED").pipe((0,Pn.h)(L=>L.nonce===J),(0,Is.q)(1),(0,ms.U)(L=>{if(void 0!==L.result)return L.result;throw new Error(L.error)})).toPromise()}get isEnabled(){return!!this.serviceWorker}}let hr=(()=>{class Ce{get isEnabled(){return this.sw.isEnabled}constructor(L){if(this.sw=L,this.pushManager=null,this.subscriptionChanges=new ws.x,!L.isEnabled)return this.messages=Ho,this.notificationClicks=Ho,void(this.subscription=Ho);this.messages=this.sw.eventsOfType("PUSH").pipe((0,ms.U)(Le=>Le.data)),this.notificationClicks=this.sw.eventsOfType("NOTIFICATION_CLICK").pipe((0,ms.U)(Le=>Le.data)),this.pushManager=this.sw.registration.pipe((0,ms.U)(Le=>Le.pushManager));const X=this.pushManager.pipe((0,fn.w)(Le=>Le.getSubscription()));this.subscription=(0,Yt.T)(X,this.subscriptionChanges)}requestSubscription(L){if(!this.sw.isEnabled||null===this.pushManager)return Promise.reject(new Error(Ks));const X={userVisibleOnly:!0};let Le=this.decodeBase64(L.serverPublicKey.replace(/_/g,"/").replace(/-/g,"+")),ft=new Uint8Array(new ArrayBuffer(Le.length));for(let Pt=0;PtPt.subscribe(X)),(0,Is.q)(1)).toPromise().then(Pt=>(this.subscriptionChanges.next(Pt),Pt))}unsubscribe(){return this.sw.isEnabled?this.subscription.pipe((0,Is.q)(1),(0,fn.w)(X=>{if(null===X)throw new Error("Not subscribed to push notifications.");return X.unsubscribe().then(Le=>{if(!Le)throw new Error("Unsubscribe failed!");this.subscriptionChanges.next(null)})})).toPromise():Promise.reject(new Error(Ks))}decodeBase64(L){return atob(L)}static#e=this.\u0275fac=function(X){return new(X||Ce)(t.LFG(tr))};static#t=this.\u0275prov=t.Yz7({token:Ce,factory:Ce.\u0275fac})}return Ce})(),Hr=(()=>{class Ce{get isEnabled(){return this.sw.isEnabled}constructor(L){if(this.sw=L,!L.isEnabled)return this.versionUpdates=Ho,this.available=Ho,this.activated=Ho,void(this.unrecoverable=Ho);this.versionUpdates=this.sw.eventsOfType(["VERSION_DETECTED","VERSION_INSTALLATION_FAILED","VERSION_READY","NO_NEW_VERSION_DETECTED"]),this.available=this.versionUpdates.pipe((0,Pn.h)(X=>"VERSION_READY"===X.type),(0,ms.U)(X=>({type:"UPDATE_AVAILABLE",current:X.currentVersion,available:X.latestVersion}))),this.activated=this.sw.eventsOfType("UPDATE_ACTIVATED"),this.unrecoverable=this.sw.eventsOfType("UNRECOVERABLE_STATE")}checkForUpdate(){if(!this.sw.isEnabled)return Promise.reject(new Error(Ks));const L=this.sw.generateNonce();return this.sw.postMessageWithOperation("CHECK_FOR_UPDATES",{nonce:L},L)}activateUpdate(){if(!this.sw.isEnabled)return Promise.reject(new Error(Ks));const L=this.sw.generateNonce();return this.sw.postMessageWithOperation("ACTIVATE_UPDATE",{nonce:L},L)}static#e=this.\u0275fac=function(X){return new(X||Ce)(t.LFG(tr))};static#t=this.\u0275prov=t.Yz7({token:Ce,factory:Ce.\u0275fac})}return Ce})();const Ts=new t.OlP("NGSW_REGISTER_SCRIPT");function Zs(Ce,J,L,X){return()=>{if(!(0,C.NF)(X)||!("serviceWorker"in navigator)||!1===L.enabled)return;let Le;if(navigator.serviceWorker.addEventListener("controllerchange",()=>{null!==navigator.serviceWorker.controller&&navigator.serviceWorker.controller.postMessage({action:"INITIALIZE"})}),"function"==typeof L.registrationStrategy)Le=L.registrationStrategy();else{const[Pt,...Rt]=(L.registrationStrategy||"registerWhenStable:30000").split(":");switch(Pt){case"registerImmediately":Le=(0,Qo.of)(null);break;case"registerWithDelay":Le=me(+Rt[0]||0);break;case"registerWhenStable":Le=Rt[0]?(0,Yt.T)(_t(Ce),me(+Rt[0])):_t(Ce);break;default:throw new Error(`Unknown ServiceWorker registration strategy: ${L.registrationStrategy}`)}}Ce.get(t.R0b).runOutsideAngular(()=>Le.pipe((0,Is.q)(1)).subscribe(()=>navigator.serviceWorker.register(J,{scope:L.scope}).catch(Pt=>console.error("Service worker registration failed with:",Pt))))}}function me(Ce){return(0,Qo.of)(null).pipe((0,Mr.g)(Ce))}function _t(Ce){return Ce.get(t.z2F).isStable.pipe((0,Pn.h)(L=>L))}function Ve(Ce,J){return new tr((0,C.NF)(J)&&!1!==Ce.enabled?navigator.serviceWorker:void 0)}class ut{}function Ht(Ce,J={}){return(0,t.MR2)([hr,Hr,{provide:Ts,useValue:Ce},{provide:ut,useValue:J},{provide:tr,useFactory:Ve,deps:[ut,t.Lbi]},{provide:t.ip1,useFactory:Zs,deps:[t.zs3,Ts,ut,t.Lbi],multi:!0}])}let rn=(()=>{class Ce{static register(L,X={}){return{ngModule:Ce,providers:[Ht(L,X)]}}static#e=this.\u0275fac=function(X){return new(X||Ce)};static#t=this.\u0275mod=t.oAB({type:Ce});static#n=this.\u0275inj=t.cJS({providers:[hr,Hr]})}return Ce})();var an=o(980),An=o(12131);const bi={slogan:"A front-end solution based on Antd","app.header.search":"Search in ng-alain.com","app.home.preview":"Preview","app.home.start":"Get started","app.home.slogan":"Out-of-box UI solution for enterprise applications, let developers focus on business.","app.home.feature":"Feature","app.home.feature.antd":"Built on the design principles developed by Ant Design","app.home.feature.zorro":"Basic component based on NG-ZORRO","app.home.feature.delon":"A set of higher-order components, chart, authentication, ACL, cache, mock, testing, etc.","app.home.feature.out-of-box":"Out of box","app.home.feature.out-of-box.desc":"A complete Angular scaffold for production environments","app.home.feature.less":"Simple customization","app.home.feature.less.desc":"100 kinds of LESS parameters to customize brand vision","app.home.feature.rep":"Responsive","app.home.feature.rep.desc":"Support different devices","app.home.feature.tool":"Tools","app.home.feature.tool.desc":"Includes NG-ALAIN Schematics, VSCODE extension","app.home.feature.demo":"Example page","app.home.feature.demo.desc":"A lot of example pages can be referenced or used","app.home.theme":"Business Theme","app.home.theme.pro":"Pro","app.home.theme.pro.desc":"An enterprise-class UI design language for web applications","app.home.theme.ms":"Microservices","app.home.theme.ms.desc":"For microservice development style","app.home.theme.yun":"Yun","app.home.theme.yun.desc":"Let users focus more on business","app.header.menu.home":"Home","app.header.menu.docs":"Docs","app.header.menu.components":"Components","app.header.menu.delon":"Delon Library","app.header.menu.auth":"Authentication","app.header.menu.acl":"Access Control List","app.header.menu.cache":"Cache","app.header.menu.chart":"Chart","app.header.menu.mock":"Mock","app.header.menu.util":"Utils","app.header.menu.form":"Dynamic Form","app.header.menu.theme":"Theme System","app.header.menu.form.validator":"Online Validator","app.header.menu.cli":"Cli","app.header.menu.tool":"Tools","app.header.menu.upgrade":"HTML Upgrade Tool","app.header.menu.themes":"Business Theme","app.header.lang":"\u4e2d\u6587","app.footer.resources":"Resources","app.footer.angular":"\u4e2d\u6587\u7f51","app.footer.antd":"ANTD for Angular","app.footer.cli":"Scaffold","app.footer.antv":"AntV","app.footer.community":"Community","app.footer.change-log":"Change Log","app.footer.faq":"FAQ","app.footer.issues":"Issues","app.footer.issue-help":"Bug Report","app.footer.qqgroup":"QQ Group","app.footer.qqgroup.full":"(Full)","app.footer.primary-color-changed":"Change primary color successfully!","app.content.copy-import-module":"Copy import module code:","app.content.edit-page":"Edit this page on GitHub!","app.content.edit-demo":"Edit this demo on GitHub!","app.content.link.copied":"Copy paragraph link successfully!","app.component.examples":"Examples","app.component.refer.title":"Usage:","app.component.refer.desc":"Learning more to visit: ","app.component.refer.link":"Using ABC Components Alone","app.component.config.title":"General Configuration","app.demo.copy":"Copy code","app.demo.copied":"Copied!","app.demo.code-sandbox":"Edit On CodeSandbox","app.demo.code-sandbox-cli":"Using Angular Cli mode","app.demo.stackblitz":"Edit On StackBlitz","app.theme-btn.default":"Default Theme","app.theme-btn.dark":"Dark Theme","app.theme-btn.compact":"Compact Theme","sf.name":"Name","sf.description":"This is description"},Ni={slogan:"\u4e00\u4e2a\u57fa\u4e8e Antd \u4e2d\u540e\u53f0\u524d\u7aef\u89e3\u51b3\u65b9\u6848","app.header.search":"\u5728 ng-alain.com \u4e2d\u641c\u7d22","app.home.preview":"\u9884\u89c8","app.home.start":"\u5f00\u59cb\u4f7f\u7528","app.home.slogan":"\u4e00\u4e2a\u57fa\u4e8e Antd \u4e2d\u540e\u53f0\u524d\u7aef\u89e3\u51b3\u65b9\u6848\uff0c\u63d0\u4f9b\u66f4\u591a\u901a\u7528\u6027\u4e1a\u52a1\u6a21\u5757\uff0c\u8ba9\u5f00\u53d1\u8005\u66f4\u52a0\u4e13\u6ce8\u4e8e\u4e1a\u52a1\u3002","app.home.feature":"\u7279\u5f81","app.home.feature.antd":"\u7b26\u5408 Ant Design \u8bbe\u8ba1\u4ef7\u503c\u89c2","app.home.feature.zorro":"\u4e30\u5bcc\u7684\u51e0\u5341\u79cd\u57fa\u7840\u7ec4\u4ef6","app.home.feature.delon":"\u4e00\u7ec4\u66f4\u9ad8\u9636\u7684\u4e1a\u52a1\u7ec4\u4ef6\u3001\u56fe\u8868\u3001\u8ba4\u8bc1\u3001\u6388\u6743\u3001\u7f13\u5b58\u3001Mock\u3001\u6d4b\u8bd5\u7b49","app.home.feature.out-of-box":"\u5f00\u7bb1\u5373\u7528","app.home.feature.out-of-box.desc":"\u4e00\u4e2a\u5b8c\u6574\u3001\u53ef\u76f4\u63a5\u7528\u4e8e\u751f\u4ea7\u73af\u5883\u7684Angular\u811a\u624b\u67b6","app.home.feature.less":"\u7b80\u5355\u5b9a\u5236","app.home.feature.less.desc":"\u767e\u79cdLESS\u53c2\u6570\u5b9a\u5236\u54c1\u724c\u89c6\u89c9","app.home.feature.rep":"\u54cd\u5e94\u5f0f","app.home.feature.rep.desc":"\u652f\u6301\u4e0d\u540c\u8bbe\u5907\u4f7f\u7528","app.home.feature.tool":"\u5de5\u5177\u652f\u6301","app.home.feature.tool.desc":"\u5305\u542b NG-ALAIN Schematics \u3001VSCODE\u63d2\u4ef6","app.home.feature.demo":"\u793a\u4f8b\u9875","app.home.feature.demo.desc":"\u5927\u91cf\u793a\u4f8b\u9875\u53ef\u76f4\u63a5\u53c2\u8003\u4e0e\u4f7f\u7528","app.home.theme":"\u5546\u4e1a\u4e3b\u9898","app.home.theme.pro":"Pro","app.home.theme.pro.desc":"\u63d0\u70bc\u81ea\u4f01\u4e1a\u7ea7\u4e2d\u540e\u53f0\u4ea7\u54c1\u7684\u4ea4\u4e92\u8bed\u8a00\u548c\u89c6\u89c9\u98ce\u683c","app.home.theme.ms":"\u5fae\u670d\u52a1","app.home.theme.ms.desc":"\u9762\u5411\u5fae\u670d\u52a1\u5f00\u53d1\u98ce\u683c\u7684\u4e3b\u9898","app.home.theme.yun":"\u4e91","app.home.theme.yun.desc":"\u5c06\u529f\u80fd\u7ec6\u8282\u5316\u8ba9\u7528\u6237\u66f4\u805a\u7126\u4e1a\u52a1","app.header.menu.home":"\u9996\u9875","app.header.menu.docs":"\u6587\u6863","app.header.menu.components":"\u7ec4\u4ef6","app.header.menu.delon":"Delon\u5e93","app.header.menu.auth":"\u7528\u6237\u8ba4\u8bc1","app.header.menu.acl":"\u8bbf\u95ee\u63a7\u5236\u5217\u8868","app.header.menu.cache":"\u7f13\u5b58","app.header.menu.chart":"\u56fe\u8868","app.header.menu.mock":"Mock\u6a21\u62df\u6570\u636e","app.header.menu.util":"\u5de5\u5177\u96c6","app.header.menu.form":"\u52a8\u6001\u8868\u5355","app.header.menu.theme":"\u4e3b\u9898\u7cfb\u7edf","app.header.menu.form.validator":"\u5728\u7ebf\u6821\u9a8c\u5668","app.header.menu.cli":"Cli","app.header.menu.tool":"\u5de5\u5177","app.header.menu.upgrade":"HTML\u6a21\u677f\u5347\u7ea7\u5de5\u5177","app.header.menu.themes":"\u5546\u4e1a\u4e3b\u9898","app.header.lang":"English","app.footer.resources":"\u76f8\u5173\u8d44\u6e90","app.footer.angular":"\u4e2d\u6587\u7f51","app.footer.antd":"ANTD Angular\u7248\u672c","app.footer.cli":"\u811a\u624b\u67b6","app.footer.antv":"\u6570\u636e\u53ef\u89c6\u5316","app.footer.community":"\u793e\u533a","app.footer.change-log":"\u66f4\u65b0\u8bb0\u5f55","app.footer.faq":"\u5e38\u89c1\u95ee\u9898","app.footer.issues":"\u8ba8\u8bba\u5217\u8868","app.footer.issue-help":"\u62a5\u544a Bug","app.footer.qqgroup":"QQ\u7fa4","app.footer.qqgroup.full":"(\u6ee1)","app.footer.primary-color-changed":"\u4fee\u6539\u4e3b\u9898\u8272\u6210\u529f\uff01","app.content.copy-import-module":"\u590d\u5236\u5bfc\u5165\u6a21\u5757\u4ee3\u7801\uff1a","app.content.edit-page":"\u5728 Github \u4e0a\u7f16\u8f91\u6b64\u9875\uff01","app.content.edit-demo":"\u5728 Github \u4e0a\u7f16\u8f91\u6b64\u793a\u4f8b\uff01","app.content.link.copied":"\u590d\u5236\u6bb5\u843d\u94fe\u63a5\u6210\u529f\uff01","app.component.examples":"\u4ee3\u7801\u6f14\u793a","app.component.refer.title":"\u5f15\u7528\u65b9\u5f0f\uff1a","app.component.refer.desc":"\u8be6\u7ec6\u4f7f\u7528\u65b9\u5f0f\u8bf7\u53c2\u7167\uff1a","app.component.refer.link":"\u72ec\u7acb\u4f7f\u7528 abc \u7ec4\u4ef6","app.component.config.title":"\u652f\u6301\u901a\u7528\u914d\u7f6e","app.demo.copy":"\u590d\u5236\u4ee3\u7801","app.demo.copied":"\u590d\u5236\u6210\u529f","app.demo.code-sandbox":"\u5728 CodeSandbox \u4e0a\u6253\u5f00","app.demo.code-sandbox-cli":"\u4f7f\u7528Angular Cli\u6a21\u5f0f","app.demo.stackblitz":"\u5728 StackBlitz \u4e2d\u6253\u5f00","app.theme-btn.default":"\u9ed8\u8ba4\u4e3b\u9898","app.theme-btn.dark":"\u6697\u9ed1\u4e3b\u9898","app.theme-btn.compact":"\u7d27\u51d1\u4e3b\u9898","sf.name":"\u540d\u79f0","sf.description":"\u8fd9\u662f\u4e00\u6bb5\u63cf\u8ff0"};var mi=o(62831),Gn=o(78967);let Ki=(()=>{class Ce extends an.BQ{constructor(L,X,Le,ft){super(ft),this.zorroI18n=L,this.delonI18n=X,this.platform=Le,this._langs=[{code:"en-US",text:"English"},{code:"zh-CN",text:"\u4e2d\u6587"}];const Pt=this.getBrowserLang()||this.defaultLang;this.use(Pt,{},!1)}getBrowserLang(){if(!this.platform.isBrowser)return;if(localStorage.lang)return localStorage.lang;const L=window.navigator;if(typeof window>"u"||typeof L>"u")return;let X=L.languages?L.languages[0]:null;return X=X||L.language||L.browserLanguage||L.userLanguage,-1!==X.indexOf("-")&&(X=X.split("-")[0]),-1!==X.indexOf("_")&&(X=X.split("_")[0]),this.getFullLang(X)}use(L,X,Le){this.platform.isBrowser&&(localStorage.lang=L),this._currentLang=this.getFullLang(L);const ft="en-US"===this.getFullLang(L);this._data=ft?bi:Ni,this.zorroI18n.setLocale(ft?An.iF:An.bF),this.delonI18n.setLocale(ft?an.iF:an.bF),!1!==Le&&this._change$.next(L)}getLangs(){return this._langs}get defaultLang(){return"zh-CN"}get zone(){return this._currentLang.split("-")[0]}get langs(){return["zh-CN","en-US"]}get(L){return null==L?"":"string"==typeof L?L:L[this.currentLang]||L[this.defaultLang]||""}getFullLang(L){const X=this._langs.filter(Le=>Le.code.split("-")[0]===L);return X.length>0?X[0].code:this.defaultLang}getRealUrl(L){const X=L.split("#")[0].split("?")[0].split("/");return X.splice(-1),X.join("/")}static#e=this.\u0275fac=function(X){return new(X||Ce)(t.LFG(An.wi),t.LFG(an.s7),t.LFG(mi.t4),t.LFG(Gn.Ri))};static#t=this.\u0275prov=t.Yz7({token:Ce,factory:Ce.\u0275fac,providedIn:"root"})}return Ce})();var Fn=o(14715);const Zi=[Fn.kR2,Fn.x0x,Fn.Kw4,Fn.Ej7,Fn.wJM,Fn.Mwl,Fn.RIp,Fn.RU0,Fn.Idu,Fn.Q2k,Fn.RYI,Fn.WH2,Fn.s4U,Fn.mqL,Fn.irO,Fn.P0d,Fn.LBP,Fn.khz,Fn._ry,Fn.RZ3,Fn.rHg,Fn.uYj,Fn.BXO,Fn.v6v,Fn.Dfz,Fn.cLx,Fn.aIM,Fn.qtR,Fn.ECR,Fn.Xwh,Fn.fhO];var Vo=o(90551),Ko=o(64115);let Ms=(()=>{class Ce{constructor(L,X,Le,ft,Pt){this.injector=L,this.doc=Le,this.lazy=ft,this.platform=Pt,X.addIcon(...Zi)}load(){const L=this.doc.querySelector("#_slow");return new Promise(X=>{L&&L.remove(),this.injector.get(an.yD).suffix="NG-ALAIN",this.platform.isBrowser&&setTimeout(()=>this.lazyLoad(),100),X()})}lazyLoad(){const L=this.doc.defaultView;L.hj=L.hj||function(){(L.hj.q=L.hj.q||[]).push(arguments)},L._hjSettings={hjid:920546,hjsv:6},Promise.all([this.lazy.loadScript("./assets/highlight.pack.js"),this.lazy.loadScript("https://www.googletagmanager.com/gtag/js?id=UA-120202005-1"),this.lazy.loadScript(`https://static.hotjar.com/c/hotjar-${L._hjSettings.hjid}.js?sv=${L._hjSettings.hjsv}`)]).then(()=>{const X=L.dataLayer||[];X.push(["js",new Date]),X.push(["config","UA-120202005-1"])})}static#e=this.\u0275fac=function(X){return new(X||Ce)(t.LFG(t.zs3),t.LFG(Vo.H5),t.LFG(C.K0),t.LFG(Ko.Df),t.LFG(mi.t4))};static#t=this.\u0275prov=t.Yz7({token:Ce,factory:Ce.\u0275fac})}return Ce})();var wo=o(6595);var ni=o(52787);const Es=new t.GfV("16.2.2");var Vr=o(49548),xi=o(20814);let Dr=(()=>{class Ce{constructor(L,X,Le,ft,Pt,Rt,Jt,nn,Cn){this.isMobile=!1,this.query="only screen and (max-width: 1200px)",this.prevUrl="",X.setAttribute(L.nativeElement,"ng-alain-version",an.q4.full),X.setAttribute(L.nativeElement,"ng-zorro-version",Es.full),nn.observe(this.query).subscribe(Tn=>{this.isMobile=Tn.matches,Jt.next(this.isMobile)}),Rt.events.subscribe(Tn=>{if(!(Tn instanceof ni.m2))return;Cn.closeAll();const Xn=Tn.url.split("#")[0].split("?")[0];if(Xn.includes("/dev")||Xn.includes("/404")||this.prevUrl===Xn)return;this.prevUrl=Xn;let Hn=Xn.split("/").pop()||Le.zone;Hn&&-1===["zh","en"].indexOf(Hn)&&(Hn=Le.zone);const Vn=Tn.urlAfterRedirects.split("#")[0].split("?")[0].split("/"),ii=Vn.pop();if(Hn!==ii){let fo="";return fo=~Tn.urlAfterRedirects.indexOf("#")?Tn.urlAfterRedirects.replace(`/${ii}#`,`/${Hn}#`):Vn.concat(Hn).join("/"),void Rt.navigateByUrl(fo,{replaceUrl:!0})}if(Hn&&ft.refMenu(Xn),ft.set(Xn))return void Rt.navigateByUrl("/404");const Di=ft.getPathByUrl(Xn);Pt.setTitle(Di?Di.title||Di.subtitle:"")}),Le.change.subscribe(Tn=>ft.clearMenu())}static#e=this.\u0275fac=function(X){return new(X||Ce)(t.Y36(t.SBq),t.Y36(t.Qsj),t.Y36(an.Oi),t.Y36(Vr.R),t.Y36(an.yD),t.Y36(ni.F0),t.Y36(xi.W),t.Y36(l.Yg),t.Y36(an.hC))};static#t=this.\u0275cmp=t.Xpm({type:Ce,selectors:[["app-root"]],hostVars:2,hostBindings:function(X,Le){2&X&&t.ekj("mobile",Le.isMobile)},decls:1,vars:0,template:function(X,Le){1&X&&t._UZ(0,"router-outlet")},dependencies:[ni.lC],encapsulation:2})}return Ce})(),br=(()=>{class Ce extends t.qLn{constructor(L){super(),this.doc=L}handleError(L){try{super.handleError(L)}catch(X){this.reportError(X)}this.reportError(L)}reportError(L){const X=this.doc.defaultView;X&&X.onerror&&("string"==typeof L?X.onerror(L):X.onerror(L.message,void 0,void 0,void 0,L))}static#e=this.\u0275fac=function(X){return new(X||Ce)(t.LFG(C.K0))};static#t=this.\u0275prov=t.Yz7({token:Ce,factory:Ce.\u0275fac})}return Ce})();var Uo=o(27929);class aa{constructor(J,L){this.status=J,this.error=L}}const Ba={delay:300,force:!1,log:!0,executeOtherInterceptors:!0};class Js{}let Yo=(()=>{class Ce{constructor(L,X){this.cached=[],this.config=L.merge("mock",Ba),this.setData(X?.data)}setData(L){this.applyMock(L)}applyMock(L){this.cached=[];try{this.realApplyMock(L)}catch(X){this.outputError(X)}}realApplyMock(L){L&&(Object.keys(L).forEach(X=>{const Le=L[X];Le&&Object.keys(Le).forEach(ft=>{const Pt=Le[ft];if("function"!=typeof Pt&&"object"!=typeof Pt&&"string"!=typeof Pt)throw Error(`mock value of [${X}-${ft}] should be function or object or string, but got ${typeof Pt}`);const Rt=this.genRule(ft,Pt);if(-1===["GET","POST","PUT","HEAD","DELETE","PATCH","OPTIONS"].indexOf(Rt.method))throw Error(`method of ${X}-${ft} is not valid`);const Jt=this.cached.find(nn=>nn.url===Rt.url&&nn.method===Rt.method);Jt?Jt.callback=Rt.callback:this.cached.push(Rt)})}),this.cached.sort((X,Le)=>(Le.martcher||"").toString().length-(X.martcher||"").toString().length))}genRule(L,X){let Le="GET",ft=L;if(L.indexOf(" ")>-1){const Jt=L.split(" ");Le=Jt[0].toLowerCase(),ft=Jt[1]}let Pt=null,Rt=[];if(~ft.indexOf(":")){Rt=ft.split("/").filter(nn=>nn.startsWith(":")).map(nn=>nn.substring(1));const Jt=ft.split("/").map(nn=>nn.startsWith(":")?"([^/]+)":nn).join("/");Pt=new RegExp(`^${Jt}`,"i")}else/(\([^)]+\))/i.test(ft)&&(Pt=new RegExp(ft,"i"));return{url:ft,martcher:Pt,segments:Rt,callback:X,method:Le.toUpperCase()}}outputError(L){const X=L.message.split(": ")[0],Le=L.stack.split("\n").filter(ft=>0!==ft.trim().indexOf("at ")).map(ft=>ft.replace(`${X}: `,""));throw Le.splice(1,0,""),console.group(),console.warn("==========Failed to parse mock config.=========="),console.log(Le.join("\n")),console.groupEnd(),L}getRule(L,X){L=(L||"GET").toUpperCase();const Le={},ft=this.cached.filter(Rt=>Rt.method===L&&(Rt.martcher?Rt.martcher.test(X):Rt.url===X));if(0===ft.length)return null;const Pt=ft.find(Rt=>Rt.url===X)||ft[0];return Pt.martcher&&Pt.martcher.exec(X).slice(1).map((Jt,nn)=>{Le[Pt.segments[nn]]=Jt}),{url:X,method:Pt.method,params:Le,callback:Pt.callback}}clearCache(){this.cached=[]}get rules(){return this.cached}ngOnDestroy(){this.clearCache()}static#e=this.\u0275fac=function(X){return new(X||Ce)(t.LFG(Gn.Ri),t.LFG(Js))};static#t=this.\u0275prov=t.Yz7({token:Ce,factory:Ce.\u0275fac,providedIn:"root"})}return Ce})();class la{constructor(J,L){this.next=J,this.interceptor=L}handle(J){return this.interceptor.intercept(J,this.next)}}let Ha=(()=>{class Ce{constructor(L){this.injector=L}intercept(L,X){const Le=this.injector.get(Yo),ft=Le.config,Pt=Le.getRule(L.method,L.url.split("?")[0]);if(!Pt&&!ft.force)return X.handle(L);let Rt;if("function"==typeof Pt.callback){const nn={original:L,body:L.body,queryString:{},headers:{},params:Pt.params},Cn=L.url.split("?");Cn.length>1&&Cn[1].split("&").forEach(Tn=>{const Xn=Tn.split("="),Hn=Xn[0],Vn=Xn[1];Object.keys(nn.queryString).includes(Hn)?(Array.isArray(nn.queryString[Hn])||(nn.queryString[Hn]=[nn.queryString[Hn]]),nn.queryString[Hn].push(Vn)):nn.queryString[Hn]=Vn}),L.params.keys().forEach(Tn=>nn.queryString[Tn]=L.params.get(Tn)),L.headers.keys().forEach(Tn=>nn.headers[Tn]=L.headers.get(Tn));try{Rt=Pt.callback.call(this,nn)}catch(Tn){Rt=new E.UA({url:L.url,headers:L.headers,status:Tn instanceof aa?Tn.status:400,statusText:Tn.statusText||"Unknown Error",error:Tn.error})}}else Rt=Pt.callback;Rt instanceof E.QO||(Rt=new E.Zn({status:200,url:L.url,body:Rt})),Rt.body&&(Rt.body=(0,Ko.p$)(Rt.body)),ft.log&&(console.log(`%c\u{1f47d}${L.method}->${L.urlWithParams}->request`,"background:#000;color:#bada55",L),console.log(`%c\u{1f47d}${L.method}->${L.urlWithParams}->response`,"background:#000;color:#bada55",Rt));const Jt=Rt instanceof E.UA?(0,$s._)(()=>Rt):(0,Qo.of)(Rt);if(ft.executeOtherInterceptors){const nn=this.injector.get(E.TP,[]),Cn=nn.slice(nn.indexOf(this)+1);if(Cn.length>0)return Cn.reduceRight((Xn,Hn)=>new la(Xn,Hn),{handle:()=>Jt}).handle(L).pipe((0,Mr.g)(ft.delay))}return Jt.pipe((0,Mr.g)(ft.delay))}static#e=this.\u0275fac=function(X){return new(X||Ce)(t.LFG(t.zs3))};static#t=this.\u0275prov=t.Yz7({token:Ce,factory:Ce.\u0275fac})}return Ce})(),ca=(()=>{class Ce{static forRoot(L){return{ngModule:Ce,providers:[{provide:Js,useValue:L},{provide:E.TP,useClass:Ha,multi:!0}]}}static forChild(){return{ngModule:Ce,providers:[{provide:E.TP,useClass:Ha,multi:!0}]}}static#e=this.\u0275fac=function(X){return new(X||Ce)};static#t=this.\u0275mod=t.oAB({type:Ce});static#n=this.\u0275inj=t.cJS({})}return Ce})();const Bi=(Ce,J)=>Math.floor(Math.random()*(J-Ce+1)+Ce),da={"GET /users":Ce=>{const L={list:[],total:Ce.queryString.total||100};for(let X=0;X<+Ce.queryString.ps;X++)L.list.push({id:X+1,type:Bi(1,3),picture:{thumbnail:`https://randomuser.me/api/portraits/thumb/${0===Bi(0,1)?"men":"women"}/${Bi(1,50)}.jpg`},name:{last:`last-${Bi(1,10)}`,first:`first-${Bi(10,20)}`},nat:["CH","US","DE"][X%3],gender:["male","female"][X%2],email:`aaa${Bi(1,10)}@qq.com`,phone:`phone-${Bi(1e3,1e5)}`,price:Bi(10,1e7),total:Bi(10,1e7),website:`https://${Bi(10,1e7)}.com/`,disabled:Bi(1,100)>50,registered:new Date});return L},"GET /user/check/":()=>!1,"GET /user/check/:name":Ce=>"cipchk"===Ce.params.name,"/500":()=>{throw new aa(500)},"/404":()=>{throw new aa(404)},"/user/:id":Ce=>({id:Ce.params.id,name:"detail"}),"/user/:id/edit":Ce=>({id:Ce.params.id,name:"edit"}),"/user/:id/upload":Ce=>({id:Ce.params.id,name:"upload"})},Ll={"GET /chart":{users:[1,2]}},Va={"POST /upload":()=>({resource_id:+new Date,url:"https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ.png"})};var Ua=o(83064);o(58593),o(81850);const ha=[{provide:Gn.jq,useValue:{st:{ps:3},lodop:{license:"A59B099A586B3851E0F0D7FDBF37B603",licenseA:"C94CEE276DB2187AE6B65D56B3FC2848"},chart:{echartsExtensions:["https://cdnjs.cloudflare.com/ajax/libs/echarts/5.1.0/theme/dark.min.js"]},themeI18n:{paramNameOfUrlGuard:"lang"},xlsx:{url:"/assets/xlsx/xlsx.full.min.js",modules:["/assets/xlsx/cpexcel.js"]},zip:{url:"/assets/jszip/jszip.min.js"},qr:{lib:"/assets/qrious/qrious.min.js"},media:{urls:["assets/plyr/plyr.min.js","assets/plyr/plyr.css"],options:{iconUrl:"assets/plyr/plyr.svg",blankVideo:"https://cdn.plyr.io/static/blank.mp4"}}}}],Fl=[(0,Ua.zR)({})];let pa=(()=>{class Ce{static forRoot(){return{ngModule:Ce,providers:[...ha,...Fl]}}static#e=this.\u0275fac=function(X){return new(X||Ce)};static#t=this.\u0275mod=t.oAB({type:Ce});static#n=this.\u0275inj=t.cJS({imports:[an.pG.forRoot(),Uo.vy.forRoot(),ca.forRoot({data:e})]})}return Ce})();var $a=o(24593),nr=o(43460),ir=o(71993),Bl=o(87691);function ja(Ce,J){1&Ce&&t._UZ(0,"nz-spin",3)}function Hl(Ce,J){if(1&Ce){const L=t.EpF();t.ynx(0),t._UZ(1,"app-header"),t.YNc(2,ja,1,0,"nz-spin",1),t._UZ(3,"router-outlet")(4,"nz-back-top"),t.TgZ(5,"theme-btn",2),t.NdJ("themeChange",function(Le){t.CHM(L);const ft=t.oxw();return t.KtG(ft.themeChange(Le))}),t.qZA(),t.BQk()}if(2&Ce){const L=t.oxw();t.xp6(2),t.Q6J("ngIf",L.isFetching)}}let xr=(()=>{class Ce{constructor(L,X,Le,ft,Pt,Rt){this.router=L,this.settingsSrv=Le,this.location=ft,this.appSrv=Rt,this.isFetching=!1,this.render=!0,Pt.change.subscribe(()=>this.fixDirection()),L.events.pipe((0,ir.sL)()).subscribe(Jt=>{if(!this.isFetching&&Jt instanceof ni.xV&&(this.isFetching=!0),Jt instanceof ni.Q3)return this.isFetching=!1,void X.error(`\u65e0\u6cd5\u52a0\u8f7d${Jt.url}\u8def\u7531`,{nzDuration:3e3});Jt instanceof ni.m2&&(this.isFetching=!1)}),L.events.pipe((0,ir.sL)(),(0,Pn.h)(Jt=>Jt instanceof ni.m2),(0,Mr.g)(100)).subscribe(()=>{this.fixDirection()})}fixDirection(){const L=this.settingsSrv.layout.direction,X=this.router.url.split(/[?#|?|#]/)[0];let ft=this.router.parseUrl(this.router.url).fragment;ft=null!=ft&&ft.length>0?`#${ft}`:"",this.location.replaceState(X,(L===an.lw?`?direction=${an.lw}`:"")+ft)}themeChange(L){this.appSrv.setTheme(L)}static#e=this.\u0275fac=function(X){return new(X||Ce)(t.Y36(ni.F0),t.Y36(nr.dD),t.Y36(an.gb),t.Y36(C.Ye),t.Y36(an.aP),t.Y36(Bl.z))};static#t=this.\u0275cmp=t.Xpm({type:Ce,selectors:[["app-layout"]],hostVars:1,hostBindings:function(X,Le){2&X&&t.uIk("id","ng-content")},decls:1,vars:1,consts:[[4,"ngIf"],["class","fetching","nzSpinning","",4,"ngIf"],[3,"themeChange"],["nzSpinning","",1,"fetching"]],template:function(X,Le){1&X&&t.YNc(0,Hl,6,1,"ng-container",0),2&X&&t.Q6J("ngIf",Le.render)},encapsulation:2})}return Ce})();var zo=o(60095),hn=o(42840),ai=o(70855),Sr=o(41958),Or=o(73460),To=o(62787),Ur=o(10095),As=o(96109),rs=o(57417),wr=o(9691),Yr=o(83991),Vl=o(22204),Ns=o(20824),Pr=o(63123);const Zo=["searchInput"];let ks=(()=>{class Ce{constructor(L,X,Le,ft){this.i18n=L,this.platform=X,this.router=Le,this.lazySrv=ft}ngAfterViewInit(){this.initDocSearch()}initDocSearch(){if(!this.platform.isBrowser)return;const L="https://cdnjs.cloudflare.com/ajax/libs/docsearch.js/2.6.3/docsearch.min";this.lazySrv.load([`${L}.js`,`${L}.css`]).then(()=>{const X=location.hostname,Le=X.includes("localhost");docsearch({appId:"KNI4PDQPLT",apiKey:"f77b841e2a1f87742bef959fe09cc80e",indexName:"ng-alain",inputSelector:"#search-box input",algoliaOptions:{hitsPerPage:5,facetFilters:[`lang:${this.i18n.zone}`]},handleSelected:(ft,Pt,Rt)=>{const Jt=Rt?.url||"";if(Le||X===this.getHost(Jt)){const nn=Jt.replace(/.*\/\/[^\/]*/,"");this.router.navigateByUrl(nn)}else window.open(Jt)},debug:!1})})}getHost(L){const X=L.match(/^https?\:\/\/([^\/:?#]+)(?:[\/:?#]|$)/i);return X?X[1]:""}static#e=this.\u0275fac=function(X){return new(X||Ce)(t.Y36(an.Oi),t.Y36(mi.t4),t.Y36(ni.F0),t.Y36(Ko.Df))};static#t=this.\u0275cmp=t.Xpm({type:Ce,selectors:[["header-search"]],viewQuery:function(X,Le){if(1&X&&t.Gf(Zo,5),2&X){let ft;t.iGM(ft=t.CRH())&&(Le.searchInput=ft.first)}},hostVars:1,hostBindings:function(X,Le){2&X&&t.uIk("id","search-box")},decls:4,vars:3,consts:[["nz-icon","","nzType","search"],["nz-input","",3,"placeholder"],["searchInput",""]],template:function(X,Le){1&X&&(t._UZ(0,"i",0)(1,"input",1,2),t.ALo(3,"i18n")),2&X&&(t.xp6(1),t.Q6J("placeholder",t.lcZ(3,1,"app.header.search")))},dependencies:[ai.w,Vo.Ls,Ns.Zp,Pr.C],encapsulation:2,changeDetection:0})}return Ce})();function ue(Ce,J){if(1&Ce&&(t.TgZ(0,"li",16),t._uU(1),t.ALo(2,"i18n"),t.qZA()),2&Ce){const L=J.$implicit,X=t.oxw(3);t.cQ8("routerLink","/",L.name,"/",L.default||"getting-started","/",X.i18n.zone,""),t.xp6(1),t.AsE(" @delon/",L.name,"-",t.lcZ(2,5,"app.header.menu."+L.name)," ")}}function Se(Ce,J){if(1&Ce&&(t.TgZ(0,"li",14),t.ALo(1,"i18n"),t.TgZ(2,"ul"),t.YNc(3,ue,3,7,"li",15),t.qZA()()),2&Ce){const L=t.oxw(2);t.Q6J("nzTitle",t.lcZ(1,2,"app.header.menu.delon")),t.xp6(3),t.Q6J("ngForOf",L.delonLibs)}}function oe(Ce,J){if(1&Ce&&(t.TgZ(0,"li",16),t._uU(1),t.ALo(2,"i18n"),t.qZA()),2&Ce){const L=J.$implicit,X=t.oxw(3);t.cQ8("routerLink","/",L.name,"/",L.default||"getting-started","/",X.i18n.zone,""),t.xp6(1),t.AsE(" @delon/",L.name,"-",t.lcZ(2,5,"app.header.menu."+L.name)," ")}}function Oe(Ce,J){if(1&Ce&&(t.TgZ(0,"li",17)(1,"div",18),t._uU(2),t.ALo(3,"i18n"),t._UZ(4,"i",19),t.qZA(),t.TgZ(5,"nz-dropdown-menu",null,20)(7,"ul",21),t.YNc(8,oe,3,7,"li",15),t.qZA()()()),2&Ce){const L=t.MAs(6),X=t.oxw(2);t.Q6J("matchRouter",X.regexs.delon),t.xp6(1),t.Q6J("nzDropdownMenu",L),t.xp6(1),t.hij(" ",t.lcZ(3,4,X.delonType?"app.header.menu."+X.delonType:"app.header.menu.delon")," "),t.xp6(6),t.Q6J("ngForOf",X.delonLibs)}}function tt(Ce,J){if(1&Ce){const L=t.EpF();t.ynx(0),t.TgZ(1,"a",22),t._uU(2,"Github"),t.qZA(),t.TgZ(3,"li",23),t.NdJ("click",function(){t.CHM(L);const Le=t.oxw(2);return t.KtG(Le.langChange("zh"===Le.i18n.zone?"en":"zh"))}),t._uU(4),t.ALo(5,"i18n"),t.qZA(),t.BQk()}2&Ce&&(t.xp6(4),t.hij(" ",t.lcZ(5,1,"app.header.lang")," "))}function zt(Ce,J){if(1&Ce&&(t.TgZ(0,"ul",8)(1,"li",9),t._uU(2),t.ALo(3,"i18n"),t.qZA(),t.TgZ(4,"li",9),t._uU(5),t.ALo(6,"i18n"),t.qZA(),t.YNc(7,Se,4,4,"li",10),t.YNc(8,Oe,9,6,"li",11),t.TgZ(9,"li",12)(10,"a",13),t._uU(11),t.ALo(12,"i18n"),t.qZA()(),t.YNc(13,tt,6,3,"ng-container",7),t.qZA()),2&Ce){const L=t.oxw();t.Q6J("nzMode",L.isMobile?"inline":"horizontal"),t.xp6(1),t.MGl("routerLink","/docs/getting-started/",L.i18n.zone,""),t.Q6J("matchRouter",L.regexs.docs),t.xp6(1),t.hij(" ",t.lcZ(3,11,"app.header.menu.docs")," "),t.xp6(2),t.MGl("routerLink","/components/sv/",L.i18n.zone,""),t.Q6J("matchRouter",L.regexs.components),t.xp6(1),t.hij(" ",t.lcZ(6,13,"app.header.menu.components")," "),t.xp6(2),t.Q6J("ngIf",L.isMobile),t.xp6(1),t.Q6J("ngIf",!L.isMobile),t.xp6(3),t.hij(" ",t.lcZ(12,15,"app.header.menu.themes")," "),t.xp6(2),t.Q6J("ngIf",L.isMobile)}}function Bt(Ce,J){if(1&Ce){const L=t.EpF();t.TgZ(0,"i",24),t.NdJ("nzPopoverVisibleChange",function(Le){t.CHM(L);const ft=t.oxw();return t.KtG(ft.menuVisible=Le)}),t.qZA()}if(2&Ce){const L=t.oxw(),X=t.MAs(1);t.Q6J("nzPopoverContent",X)("nzPopoverVisible",L.menuVisible)("nzPopoverTitle",void 0)}}function on(Ce,J){}function tn(Ce,J){if(1&Ce&&t._UZ(0,"nz-option",28),2&Ce){const L=J.$implicit;t.Q6J("nzLabel",L+".x")("nzValue",L)}}function xn(Ce,J){if(1&Ce){const L=t.EpF();t.ynx(0),t.YNc(1,on,0,0,"ng-template",25),t.TgZ(2,"nz-select",26),t.NdJ("ngModelChange",function(Le){t.CHM(L);const ft=t.oxw();return t.KtG(ft.toVersion(Le))}),t.YNc(3,tn,1,2,"nz-option",27),t._UZ(4,"nz-option",28),t.qZA(),t.TgZ(5,"button",29),t.NdJ("click",function(){t.CHM(L);const Le=t.oxw();return t.KtG(Le.langChange("zh"===Le.i18n.zone?"en":"zh"))}),t._uU(6),t.ALo(7,"i18n"),t.qZA(),t.TgZ(8,"button",30),t.NdJ("click",function(){t.CHM(L);const Le=t.oxw();return t.KtG(Le.rtl.toggle())}),t._uU(9),t.ALo(10,"uppercase"),t.qZA(),t._UZ(11,"github-button",31),t.BQk()}if(2&Ce){const L=t.oxw(),X=t.MAs(1);t.xp6(1),t.Q6J("ngTemplateOutlet",X),t.xp6(1),t.Q6J("ngModel",L.currentVersion),t.xp6(1),t.Q6J("ngForOf",L.oldVersionList),t.xp6(1),t.Q6J("nzLabel",L.currentVersion)("nzValue",L.currentVersion),t.xp6(2),t.hij(" ",t.lcZ(7,7,"app.header.lang")," "),t.xp6(3),t.hij(" ",t.lcZ(10,9,L.rtl.nextDir)," ")}}const ti=o(4147);let Ci=(()=>{class Ce{get win(){return this.doc.defaultView||window}constructor(L,X,Le,ft,Pt,Rt,Jt,nn){this.i18n=L,this.router=X,this.msg=Le,this.mobileSrv=ft,this.doc=Pt,this.cdr=Rt,this.rtl=Jt,this.layout=nn,this.inited=!1,this.oldVersionList=[15,14,13,12,11,10,9,8,1],this.currentVersion=ti.version,this.delonLibs=[{name:"theme"},{name:"auth"},{name:"acl"},{name:"form"},{name:"cache"},{name:"chart"},{name:"mock"},{name:"util"},{name:"cli"}],this.menuVisible=!1,this.regexs={docs:{regex:/^\/docs/},components:{regex:/^\/components/},cli:{regex:/^\/cli/},delon:{regex:/^\/(theme|auth|acl|form|cache|chart|mock|util)/}},X.events.pipe((0,Pn.h)(Cn=>Cn instanceof ni.m2)).subscribe(()=>{this.menuVisible=!1,this.genDelonType()}),this.mobileSrv.change.subscribe(Cn=>{this.isMobile=Cn,this.inited&&this.cdr.detectChanges()})}genDelonType(){if(!this.inited)return;const L=this.router.url.match(this.regexs.delon.regex);this.delonType=L?.[1],this.cdr.detectChanges()}ngAfterViewInit(){this.inited=!0,this.genDelonType()}toVersion(L){if(L!=this.currentVersion){if(L>=13)return void(this.win.location.href=`https://ng-alain.com/version/${L}.x/`);this.win.open("https://github.com/ng-alain/archive-docs/blob/full/README.md")}}langChange(L){this.i18n.use(L,{},!1),this.router.navigateByUrl(`${this.i18n.getRealUrl(this.router.url)}/${L}`).then(()=>{this.layout.render=!1,setTimeout(()=>{this.layout.render=!0},25)})}onCopy(L){(0,$a.J)(L).then(()=>this.msg.success(this.i18n.fanyi("app.demo.copied")))}to(L){L.url&&this.router.navigateByUrl(L.url)}toViaMobile(L){-1===L.indexOf("/")&&(L=`/${L}/getting-started`),this.router.navigateByUrl(`${L}/${this.i18n.zone}`).then(()=>{this.menuVisible=!1,this.cdr.detectChanges()})}static#e=this.\u0275fac=function(X){return new(X||Ce)(t.Y36(an.Oi),t.Y36(ni.F0),t.Y36(nr.dD),t.Y36(xi.W),t.Y36(C.K0),t.Y36(t.sBO),t.Y36(an.aP),t.Y36(xr))};static#t=this.\u0275cmp=t.Xpm({type:Ce,selectors:[["app-header"]],hostVars:3,hostBindings:function(X,Le){2&X&&(t.uIk("id","header"),t.ekj("clearfix",!0))},decls:13,vars:6,consts:[["menu",""],["nz-icon","","nzType","menu","nz-popover","","nzTooltipOverlayClassName","popover-menu","nzPopoverPlacement","bottomRight","nzPopoverTrigger","click","class","nav-phone-icon",3,"nzPopoverContent","nzPopoverVisible","nzPopoverTitle","nzPopoverVisibleChange",4,"ngIf"],["nz-row","",2,"flex-flow","nowrap","height","64px"],["nz-col","","nzXs","24","nzSm","24","nzMd","24","nzLg","24","nzXl","5","nzXXl","4"],["nz-tooltip","","id","logo",3,"routerLink","nzTooltipTitle","click"],["src","./assets/img/logo-color.svg",2,"max-height","32px"],["nz-col","","nz-col","","nzXs","0","nzSm","0","nzMd","0","nzLg","0","nzXl","19","nzXXl","20",1,"menu-row"],[4,"ngIf"],["nz-menu","","id","nav",1,"menu-site",3,"nzMode"],["nz-menu-item","",3,"routerLink","matchRouter"],["nz-menu-group","",3,"nzTitle",4,"ngIf"],["nz-menu-item","",3,"matchRouter",4,"ngIf"],["nz-menu-item",""],["href","https://e.ng-alain.com/","target","_blank"],["nz-menu-group","",3,"nzTitle"],["nz-menu-item","",3,"routerLink",4,"ngFor","ngForOf"],["nz-menu-item","",3,"routerLink"],["nz-menu-item","",3,"matchRouter"],["nz-dropdown","","nzPlacement","bottomRight",3,"nzDropdownMenu"],["nz-icon","","nzType","down"],["delonMenu","nzDropdownMenu"],["nz-menu",""],["nz-menu-item","","href","https://github.com/ng-alain/ng-alain","target","_blank"],["nz-menu-item","",3,"click"],["nz-icon","","nzType","menu","nz-popover","","nzTooltipOverlayClassName","popover-menu","nzPopoverPlacement","bottomRight","nzPopoverTrigger","click",1,"nav-phone-icon",3,"nzPopoverContent","nzPopoverVisible","nzPopoverTitle","nzPopoverVisibleChange"],[3,"ngTemplateOutlet"],["nzSize","small",1,"version",3,"ngModel","ngModelChange"],[3,"nzLabel","nzValue",4,"ngFor","ngForOf"],[3,"nzLabel","nzValue"],["nz-button","","nzGhost","","nzSize","small",1,"header-button","header-lang-button",3,"click"],["nz-button","","nzGhost","","nzSize","small",1,"header-button","header-direction-button",3,"click"],["type","stargazers","size","default","namespace","ng-alain","repo","ng-alain"]],template:function(X,Le){1&X&&(t.YNc(0,zt,14,17,"ng-template",null,0,t.W1O),t.YNc(2,Bt,1,3,"i",1),t.TgZ(3,"div",2)(4,"div",3)(5,"h1")(6,"a",4),t.NdJ("click",function(){return Le.onCopy("316911865")}),t.ALo(7,"i18n"),t._UZ(8,"img",5),t._uU(9," NG-ALAIN "),t.qZA()()(),t.TgZ(10,"div",6),t._UZ(11,"header-search"),t.YNc(12,xn,12,11,"ng-container",7),t.qZA()()),2&X&&(t.xp6(2),t.Q6J("ngIf",Le.isMobile),t.xp6(4),t.MGl("routerLink","/",Le.i18n.zone,"")("nzTooltipTitle","",t.lcZ(7,4,"app.footer.qqgroup"),": 316911865"),t.xp6(6),t.Q6J("ngIf",!Le.isMobile))},dependencies:[C.sg,C.O5,C.tP,zo.JJ,zo.On,ni.rH,hn.ix,ai.w,Sr.dQ,Or.wO,Or.u9,Or.uA,To.cm,To.RR,Ur.t3,Ur.SK,As.SY,rs.lU,wr.Ip,wr.Vq,Vo.Ls,Yr.M,Vl.J,ks,C.gd,Pr.C],encapsulation:2,changeDetection:0})}return Ce})();var Po=o(89359);let or=(()=>{class Ce{get doc(){return this._doc||document}get cookie(){return this.platform.isBrowser?this.doc.cookie:""}constructor(L,X){this._doc=L,this.platform=X}getAll(){const L={},X=this.cookie.split("; ");for(let Le=0;Le0){const Rt=decodeURIComponent(ft.substring(0,Pt));null==L[Rt]&&(L[Rt]=decodeURIComponent(ft.substring(Pt+1)))}}return L}get(L){return this.getAll()[L]}put(L,X,Le){if(!this.platform.isBrowser)return;const ft={path:"/",...Le};"number"==typeof ft.expires&&(ft.expires=new Date(+new Date+1e3*ft.expires)),"string"!=typeof ft.expires&&(ft.expires=ft.expires?ft.expires.toUTCString():"");const Pt=ft,Rt=Object.keys(Pt).filter(Jt=>Pt[Jt]&&!0!==Pt[Jt]).map(Jt=>`${Jt}=${Pt[Jt].split(";")[0]}`).join(";");this.doc.cookie=`${encodeURIComponent(String(L))}=${encodeURIComponent(String(X))}${Rt?`; ${Rt}`:""}`}remove(L,X){this.put(L,"",X)}removeAll(){this.doc.cookie=""}static#e=this.\u0275fac=function(X){return new(X||Ce)(t.LFG(C.K0),t.LFG(mi.t4))};static#t=this.\u0275prov=t.Yz7({token:Ce,factory:Ce.\u0275fac,providedIn:"root"})}return Ce})(),Gs=(()=>{class Ce{constructor(L,X){this.cookieSrv=L,this.msg=X,this.key="test-key",this.get()}get(){this.value=this.cookieSrv.get(this.key)}set(L){this.cookieSrv.put(this.key,(+new Date).toString(),L),this.msg.success("Success")}remove(){this.cookieSrv.remove(this.key)}static#e=this.\u0275fac=function(X){return new(X||Ce)(t.Y36(or),t.Y36(nr.dD))};static#t=this.\u0275cmp=t.Xpm({type:Ce,selectors:[["util-browser-cookie"]],decls:10,vars:1,consts:[["classs","mb-md"],["nz-button","",3,"click"]],template:function(X,Le){1&X&&(t.TgZ(0,"p",0),t._uU(1),t.qZA(),t.TgZ(2,"button",1),t.NdJ("click",function(){return Le.get()}),t._uU(3,"Get"),t.qZA(),t.TgZ(4,"button",1),t.NdJ("click",function(){return Le.set()}),t._uU(5,"Set"),t.qZA(),t.TgZ(6,"button",1),t.NdJ("click",function(){return Le.set({expires:10})}),t._uU(7,"Set 10s expired"),t.qZA(),t.TgZ(8,"button",1),t.NdJ("click",function(){return Le.remove()}),t._uU(9,"Remove"),t.qZA()),2&X&&(t.xp6(1),t.hij("Result: ",Le.value||"NULL",""))},dependencies:[hn.ix,ai.w,Sr.dQ],encapsulation:2})}return Ce})();var as=o(27358);let Rs=(()=>{class Ce{constructor(){this.item={id:"util-browser-cookie",meta:{type:"example"},summary:"",code:"import { Component } from '@angular/core';\nimport { CookieOptions, CookieService } from '@delon/util/browser';\nimport { NzMessageService } from 'ng-zorro-antd/message';\n\n@Component({\n selector: 'util-browser-cookie',\n template: `\n

      Result: {{ value || 'NULL' }}

      \n \n \n \n \n `,\n})\nexport class UtilCookieComponent {\n key = 'test-key';\n value?: string;\n\n constructor(private cookieSrv: CookieService, private msg: NzMessageService) {\n this.get();\n }\n\n get(): void {\n this.value = this.cookieSrv.get(this.key)!;\n }\n\n set(options?: CookieOptions): void {\n this.cookieSrv.put(this.key, (+new Date()).toString(), options);\n this.msg.success(`Success`);\n }\n\n remove(): void {\n this.cookieSrv.remove(this.key);\n }\n}",name:"cookie",urls:"packages/util/browser/demo/cookie.md",type:"example",lang:"ts",componentName:"UtilCookieComponent",componentIndexName:"UtilCookieIndexComponent"}}static#e=this.\u0275fac=function(X){return new(X||Ce)};static#t=this.\u0275cmp=t.Xpm({type:Ce,selectors:[["util-browser-cookie-index"]],decls:2,vars:1,consts:[["type","simple",3,"item"]],template:function(X,Le){1&X&&(t.TgZ(0,"code-box",0),t._UZ(1,"util-browser-cookie"),t.qZA()),2&X&&t.Q6J("item",Le.item)},dependencies:[as.e,Gs],styles:["[_nghost-%COMP%]{display:block}"]})}return Ce})();var Wr=o(59765);let Ul=(()=>{class Ce{constructor(){this.value=100}static#e=this.\u0275fac=function(X){return new(X||Ce)};static#t=this.\u0275cmp=t.Xpm({type:Ce,selectors:[["util-pipes-currency-currency-cny"]],decls:8,vars:5,consts:[[1,"mb-md"],["nzAddOnBefore","Value"],["type","text","nz-input","",3,"ngModel","ngModelChange"]],template:function(X,Le){1&X&&(t.TgZ(0,"p",0),t._uU(1," {{"),t.TgZ(2,"span"),t._uU(3),t.qZA(),t._uU(4),t.ALo(5,"cny"),t.qZA(),t.TgZ(6,"nz-input-group",1)(7,"input",2),t.NdJ("ngModelChange",function(Pt){return Le.value=Pt}),t.qZA()()),2&X&&(t.xp6(3),t.hij(" ",Le.value," | cny "),t.xp6(1),t.hij("}} = ",t.lcZ(5,3,Le.value)," "),t.xp6(3),t.Q6J("ngModel",Le.value))},dependencies:[zo.Fj,zo.JJ,zo.On,ai.w,Ns.Zp,Ns.gB,Wr.S],encapsulation:2})}return Ce})(),Yl=(()=>{class Ce{constructor(){this.item={id:"util-pipes-currency-currency-cny",meta:{type:"example"},summary:"",code:'import { Component } from \'@angular/core\';\n\n@Component({\n selector: \'util-pipes-currency-currency-cny\',\n template: `\n

      \n {{ {{ value }} | cny }} = {{ value | cny }}\n

      \n \n \n \n `,\n})\nexport class UtilCurrencyCnyComponent {\n value = 100;\n}',name:"currency-cny",urls:"packages/util/pipes/currency/demo/currency-cny.md",type:"example",lang:"ts",componentName:"UtilCurrencyCnyComponent",componentIndexName:"UtilCurrencyCnyIndexComponent"}}static#e=this.\u0275fac=function(X){return new(X||Ce)};static#t=this.\u0275cmp=t.Xpm({type:Ce,selectors:[["util-pipes-currency-currency-cny-index"]],decls:2,vars:1,consts:[["type","simple",3,"item"]],template:function(X,Le){1&X&&(t.TgZ(0,"code-box",0),t._UZ(1,"util-pipes-currency-currency-cny"),t.qZA()),2&X&&t.Q6J("item",Le.item)},dependencies:[as.e,Ul],styles:["[_nghost-%COMP%]{display:block}"]})}return Ce})();var Io=o(68373),pr=o(4171);const ho=function(Ce){return{precision:Ce}};let fa=(()=>{class Ce{constructor(){this.value=123456,this.precision=1}static#e=this.\u0275fac=function(X){return new(X||Ce)};static#t=this.\u0275cmp=t.Xpm({type:Ce,selectors:[["util-pipes-currency-currency-mega"]],decls:19,vars:16,consts:[[1,"mb-md"],["nzAddOnBefore","Value",1,"mb-md"],["type","text","nz-input","",3,"ngModel","ngModelChange"],["nzAddOnBefore","Precision"],[3,"ngModel","nzMin","nzMax","ngModelChange"]],template:function(X,Le){1&X&&(t.TgZ(0,"p",0),t._uU(1," {{"),t.TgZ(2,"span"),t._uU(3),t.qZA(),t._uU(4),t.ALo(5,"mega"),t.qZA(),t.TgZ(6,"p",0),t._uU(7," {{"),t.TgZ(8,"span"),t._uU(9),t.TgZ(10,"span"),t._uU(11),t.qZA(),t._uU(12," \u5927\u62ec\u53f7 "),t.qZA(),t._uU(13),t.ALo(14,"mega"),t.qZA(),t.TgZ(15,"nz-input-group",1)(16,"input",2),t.NdJ("ngModelChange",function(Pt){return Le.value=Pt}),t.qZA()(),t.TgZ(17,"nz-input-group",3)(18,"nz-input-number",4),t.NdJ("ngModelChange",function(Pt){return Le.precision=Pt}),t.qZA()()),2&X&&(t.xp6(3),t.hij(" ",Le.value," | mega "),t.xp6(1),t.hij("}} = ",t.lcZ(5,9,Le.value)," "),t.xp6(5),t.hij(" ",Le.value," | mega: \u5927\u62ec\u53f7 precision: "),t.xp6(2),t.Oqu(Le.precision),t.xp6(2),t.hij("}} = ",t.xi3(14,11,Le.value,t.VKq(14,ho,Le.precision))," "),t.xp6(3),t.Q6J("ngModel",Le.value),t.xp6(2),t.Q6J("ngModel",Le.precision)("nzMin",0)("nzMax",292))},dependencies:[zo.Fj,zo.JJ,zo.On,ai.w,Ns.Zp,Ns.gB,Io._V,pr.A],encapsulation:2})}return Ce})(),Wl=(()=>{class Ce{constructor(){this.item={id:"util-pipes-currency-currency-mega",meta:{type:"example"},summary:"",code:'import { Component } from \'@angular/core\';\n\n@Component({\n selector: \'util-pipes-currency-currency-mega\',\n template: `\n

      \n {{ {{ value }} | mega }} = {{ value | mega }}\n

      \n

      \n {{\n {{ value }} | mega: \u5927\u62ec\u53f7 precision: {{ precision }} \u5927\u62ec\u53f7 }} =\n {{ value | mega: { precision: precision } }}\n

      \n \n \n \n \n \n \n `,\n})\nexport class UtilCurrencyMegaComponent {\n value = 123456;\n precision = 1;\n}',name:"currency-mega",urls:"packages/util/pipes/currency/demo/currency-mega.md",type:"example",lang:"ts",componentName:"UtilCurrencyMegaComponent",componentIndexName:"UtilCurrencyMegaIndexComponent"}}static#e=this.\u0275fac=function(X){return new(X||Ce)};static#t=this.\u0275cmp=t.Xpm({type:Ce,selectors:[["util-pipes-currency-currency-mega-index"]],decls:2,vars:1,consts:[["type","simple",3,"item"]],template:function(X,Le){1&X&&(t.TgZ(0,"code-box",0),t._UZ(1,"util-pipes-currency-currency-mega"),t.qZA()),2&X&&t.Q6J("item",Le.item)},dependencies:[as.e,fa],styles:["[_nghost-%COMP%]{display:block}"]})}return Ce})();var $l=o(13072);const nd=function(Ce){return{precision:Ce}};let Ka=(()=>{class Ce{constructor(){this.value=10000.345,this.precision=2}static#e=this.\u0275fac=function(X){return new(X||Ce)};static#t=this.\u0275cmp=t.Xpm({type:Ce,selectors:[["util-pipes-currency-currency-price"]],decls:10,vars:11,consts:[[1,"mb-md"],["nzAddOnBefore","Value",1,"mb-md"],["type","text","nz-input","",3,"ngModel","ngModelChange"],["nzAddOnBefore","Precision"],[3,"ngModel","nzMin","nzMax","ngModelChange"]],template:function(X,Le){1&X&&(t.TgZ(0,"p",0),t._uU(1," {{"),t.TgZ(2,"span"),t._uU(3),t.qZA(),t._uU(4),t.ALo(5,"price"),t.qZA(),t.TgZ(6,"nz-input-group",1)(7,"input",2),t.NdJ("ngModelChange",function(Pt){return Le.value=Pt}),t.qZA()(),t.TgZ(8,"nz-input-group",3)(9,"nz-input-number",4),t.NdJ("ngModelChange",function(Pt){return Le.precision=Pt}),t.qZA()()),2&X&&(t.xp6(3),t.hij(" ",Le.value," | price "),t.xp6(1),t.hij("}} = ",t.xi3(5,6,Le.value,t.VKq(9,nd,Le.precision))," "),t.xp6(3),t.Q6J("ngModel",Le.value),t.xp6(2),t.Q6J("ngModel",Le.precision)("nzMin",0)("nzMax",292))},dependencies:[zo.Fj,zo.JJ,zo.On,ai.w,Ns.Zp,Ns.gB,Io._V,$l.R],encapsulation:2})}return Ce})(),Za=(()=>{class Ce{constructor(){this.item={id:"util-pipes-currency-currency-price",meta:{type:"example"},summary:"",code:'import { Component } from \'@angular/core\';\n\n@Component({\n selector: \'util-pipes-currency-currency-price\',\n template: `\n

      \n {{ {{ value }} | price }} = {{ value | price: { precision: precision } }}\n

      \n \n \n \n \n \n \n `,\n})\nexport class UtilCurrencyPriceComponent {\n value = 10000.345;\n precision = 2;\n}',name:"currency-price",urls:"packages/util/pipes/currency/demo/currency-price.md",type:"example",lang:"ts",componentName:"UtilCurrencyPriceComponent",componentIndexName:"UtilCurrencyPriceIndexComponent"}}static#e=this.\u0275fac=function(X){return new(X||Ce)};static#t=this.\u0275cmp=t.Xpm({type:Ce,selectors:[["util-pipes-currency-currency-price-index"]],decls:2,vars:1,consts:[["type","simple",3,"item"]],template:function(X,Le){1&X&&(t.TgZ(0,"code-box",0),t._UZ(1,"util-pipes-currency-currency-price"),t.qZA()),2&X&&t.Q6J("item",Le.item)},dependencies:[as.e,Ka],styles:["[_nghost-%COMP%]{display:block}"]})}return Ce})();var ma=o(39542);let Ls=(()=>{class Ce{constructor(){this.list=new Array(10).fill(0).map((L,X)=>({price:X+1})),this.number=0,this.matcher=(L,X)=>L.price>X}static#e=this.\u0275fac=function(X){return new(X||Ce)};static#t=this.\u0275cmp=t.Xpm({type:Ce,selectors:[["util-pipes-filter-filter"]],decls:12,vars:11,consts:[[1,"mb-md"],["nzAddOnBefore","number"],[3,"ngModel","ngModelChange"]],template:function(X,Le){1&X&&(t.TgZ(0,"p",0),t._uU(1," {{"),t.TgZ(2,"span"),t._uU(3),t.ALo(4,"json"),t.qZA(),t._uU(5),t.ALo(6,"json"),t.ALo(7,"filter"),t.qZA(),t.TgZ(8,"p",0),t._uU(9,"matcher = (item: PriceObject, number: number) => item.price > number;"),t.qZA(),t.TgZ(10,"nz-input-group",1)(11,"nz-input-number",2),t.NdJ("ngModelChange",function(Pt){return Le.number=Pt}),t.qZA()()),2&X&&(t.xp6(3),t.hij(" ",t.lcZ(4,3,Le.list)," | filter: matcher "),t.xp6(2),t.hij("}} = ",t.lcZ(6,5,t.Dn7(7,7,Le.list,Le.matcher,Le.number))," "),t.xp6(6),t.Q6J("ngModel",Le.number))},dependencies:[zo.JJ,zo.On,ai.w,Ns.gB,Io._V,C.Ts,ma.g],encapsulation:2})}return Ce})(),jl=(()=>{class Ce{constructor(){this.item={id:"util-pipes-filter-filter",meta:{type:"example"},summary:"",code:'import { Component } from \'@angular/core\';\n\n@Component({\n selector: \'util-pipes-filter-filter\',\n template: `\n

      \n {{ {{ list | json }} | filter: matcher }} = {{ list | filter: matcher:number | json }}\n

      \n

      matcher = (item: PriceObject, number: number) => item.price > number;

      \n \n \n \n `\n})\nexport class UtilFilterComponent {\n list = new Array(10).fill(0).map((_, idx) => ({ price: idx + 1 }));\n number = 0;\n matcher = (item: { price: number }, number: number) => item.price > number;\n}',name:"filter",urls:"packages/util/pipes/filter/demo/filter.md",type:"example",lang:"ts",componentName:"UtilFilterComponent",componentIndexName:"UtilFilterIndexComponent"}}static#e=this.\u0275fac=function(X){return new(X||Ce)};static#t=this.\u0275cmp=t.Xpm({type:Ce,selectors:[["util-pipes-filter-filter-index"]],decls:2,vars:1,consts:[["type","simple",3,"item"]],template:function(X,Le){1&X&&(t.TgZ(0,"code-box",0),t._UZ(1,"util-pipes-filter-filter"),t.qZA()),2&X&&t.Q6J("item",Le.item)},dependencies:[as.e,Ls],styles:["[_nghost-%COMP%]{display:block}"]})}return Ce})();var ga=o(58859);let $r=(()=>{class Ce{constructor(){this.value="123",this.maskStr="(###)"}static#e=this.\u0275fac=function(X){return new(X||Ce)};static#t=this.\u0275cmp=t.Xpm({type:Ce,selectors:[["util-pipes-format-format-mask"]],decls:11,vars:10,consts:[[1,"mb-md"],["nzAddOnBefore","Value",1,"mb-md"],["type","text","nz-input","",3,"ngModel","ngModelChange"],["nzAddOnBefore","Mask"]],template:function(X,Le){1&X&&(t.TgZ(0,"p",0),t._uU(1," {{"),t.TgZ(2,"span"),t._uU(3),t.ALo(4,"json"),t.qZA(),t._uU(5),t.ALo(6,"mask"),t.qZA(),t.TgZ(7,"nz-input-group",1)(8,"input",2),t.NdJ("ngModelChange",function(Pt){return Le.value=Pt}),t.qZA()(),t.TgZ(9,"nz-input-group",3)(10,"input",2),t.NdJ("ngModelChange",function(Pt){return Le.maskStr=Pt}),t.qZA()()),2&X&&(t.xp6(3),t.AsE(" ",Le.value," | mask: ",t.lcZ(4,5,Le.maskStr)," "),t.xp6(2),t.hij("}} = ",t.xi3(6,7,Le.value,Le.maskStr)," "),t.xp6(3),t.Q6J("ngModel",Le.value),t.xp6(2),t.Q6J("ngModel",Le.maskStr))},dependencies:[zo.Fj,zo.JJ,zo.On,ai.w,Ns.Zp,Ns.gB,C.Ts,ga.V],encapsulation:2})}return Ce})(),jr=(()=>{class Ce{constructor(){this.item={id:"util-pipes-format-format-mask",meta:{type:"example"},summary:"",code:'import { Component } from \'@angular/core\';\n\n@Component({\n selector: \'util-pipes-format-format-mask\',\n template: `\n

      \n {{ {{ value }} | mask: {{ maskStr | json }} }} = {{ value | mask: maskStr }}\n

      \n \n \n \n \n \n \n `,\n})\nexport class UtilFormatMaskComponent {\n value = \'123\';\n maskStr = \'(###)\';\n}',name:"format-mask",urls:"packages/util/pipes/format/demo/format-mask.md",type:"example",lang:"ts",componentName:"UtilFormatMaskComponent",componentIndexName:"UtilFormatMaskIndexComponent"}}static#e=this.\u0275fac=function(X){return new(X||Ce)};static#t=this.\u0275cmp=t.Xpm({type:Ce,selectors:[["util-pipes-format-format-mask-index"]],decls:2,vars:1,consts:[["type","simple",3,"item"]],template:function(X,Le){1&X&&(t.TgZ(0,"code-box",0),t._UZ(1,"util-pipes-format-format-mask"),t.qZA()),2&X&&t.Q6J("item",Le.item)},dependencies:[as.e,$r],styles:["[_nghost-%COMP%]{display:block}"]})}return Ce})();var Ja=o(69694),Ga=o(70612);const Kl=["bar"];let Zl=(()=>{class Ce{constructor(L){this.msg=L,this.width=400,this.height=200,this.id=-1,this.salesData=new Array(12).fill({}).map((X,Le)=>({x:`${Le+1}\u6708`,y:Math.floor(1e3*Math.random())+200,color:Le>5?"#f50":void 0}))}handleClick(L){this.msg.info(`${L.item.x} - ${L.item.y}`)}onResize({width:L}){cancelAnimationFrame(this.id),this.id=requestAnimationFrame(()=>{this.width=L,this.barComp.chart.forceFit()})}static#e=this.\u0275fac=function(X){return new(X||Ce)(t.Y36(nr.dD))};static#t=this.\u0275cmp=t.Xpm({type:Ce,selectors:[["chart-getting-started-resizable"]],viewQuery:function(X,Le){if(1&X&&t.Gf(Kl,5),2&X){let ft;t.iGM(ft=t.CRH())&&(Le.barComp=ft.first)}},decls:4,vars:8,consts:[["nz-resizable","",2,"background","#eee","border","1px solid #ddd","padding","16px",3,"nzMinWidth","nzMaxHeight","nzMinHeight","nzResize"],[3,"height","title","data","clickItem"],["bar",""]],template:function(X,Le){1&X&&(t.TgZ(0,"div",0),t.NdJ("nzResize",function(Pt){return Le.onResize(Pt)}),t._UZ(1,"nz-resize-handles"),t.TgZ(2,"g2-bar",1,2),t.NdJ("clickItem",function(Pt){return Le.handleClick(Pt)}),t.qZA()()),2&X&&(t.Udp("width",Le.width,"px"),t.Q6J("nzMinWidth",200)("nzMaxHeight",Le.height)("nzMinHeight",80),t.xp6(2),t.Q6J("height",Le.height)("title","\u9500\u552e\u989d\u8d8b\u52bf")("data",Le.salesData))},dependencies:[Ja.g,Ga.IJ,Ga.Op],encapsulation:2})}return Ce})(),fr=(()=>{class Ce{constructor(){this.item={id:"chart-getting-started-resizable",meta:{title:{"zh-CN":"\u57fa\u7840\u6837\u4f8b","en-US":"Basic Usage"},type:"example"},summary:{"zh-CN":'

      \u5229\u7528 nz-resizable \u6784\u5efa\u4e00\u4e2a\u53ef\u8c03\u6574\u5c3a\u5bf8\u7684\u5bb9\u5668\u3002

      ',"en-US":'

      Use nz-resizable to build a resizable container.

      '},code:'import { Component, ViewChild } from \'@angular/core\';\nimport { G2BarClickItem, G2BarComponent, G2BarData } from \'@delon/chart/bar\';\nimport { NzMessageService } from \'ng-zorro-antd/message\';\nimport { NzResizeEvent } from \'ng-zorro-antd/resizable\';\n\n@Component({\n selector: \'chart-getting-started-resizable\',\n template: ` \n \n \n `,\n})\nexport class ChartResizableComponent {\n @ViewChild(\'bar\') private readonly barComp!: G2BarComponent;\n width = 400;\n height = 200;\n private id = -1;\n constructor(private msg: NzMessageService) {}\n\n salesData: G2BarData[] = new Array(12).fill({}).map((_i, idx) => ({\n x: `${idx + 1}\u6708`,\n y: Math.floor(Math.random() * 1000) + 200,\n color: idx > 5 ? \'#f50\' : undefined,\n }));\n\n handleClick(data: G2BarClickItem): void {\n this.msg.info(`${data.item.x} - ${data.item.y}`);\n }\n\n onResize({ width }: NzResizeEvent): void {\n cancelAnimationFrame(this.id);\n this.id = requestAnimationFrame(() => {\n this.width = width!;\n this.barComp.chart.forceFit();\n });\n }\n}',name:"resizable",urls:"packages/chart/docs/demo/resizable.md",type:"example",lang:"ts",componentName:"ChartResizableComponent",componentIndexName:"ChartResizableIndexComponent"}}static#e=this.\u0275fac=function(X){return new(X||Ce)};static#t=this.\u0275cmp=t.Xpm({type:Ce,selectors:[["chart-getting-started-resizable-index"]],decls:2,vars:1,consts:[["type","simple",3,"item"]],template:function(X,Le){1&X&&(t.TgZ(0,"code-box",0),t._UZ(1,"chart-getting-started-resizable"),t.qZA()),2&X&&t.Q6J("item",Le.item)},dependencies:[as.e,Zl],styles:["[_nghost-%COMP%]{display:block}"]})}return Ce})();var Fs=o(79663);function id(Ce,J){if(1&Ce&&(t.TgZ(0,"tr")(1,"td")(2,"span",3),t._uU(3,"Name"),t.qZA(),t._uU(4),t.qZA(),t.TgZ(5,"td")(6,"span",3),t._uU(7,"Age"),t.qZA(),t._uU(8),t.qZA(),t.TgZ(9,"td")(10,"span",3),t._uU(11,"Address"),t.qZA(),t._uU(12),t.qZA()()),2&Ce){const L=J.$implicit;t.xp6(4),t.hij(" ",L.name," "),t.xp6(4),t.hij(" ",L.age," "),t.xp6(4),t.hij(" ",L.address," ")}}let od=(()=>{class Ce{constructor(){this.dataSet=[{key:"1",name:"John Brown",age:32,address:"New York No. 1 Lake Park"},{key:"2",name:"Jim Green",age:42,address:"London No. 1 Lake Park"},{key:"3",name:"Joe Black",age:32,address:"Sidney No. 1 Lake Park"}]}static#e=this.\u0275fac=function(X){return new(X||Ce)};static#t=this.\u0275cmp=t.Xpm({type:Ce,selectors:[["theme-tools-table-rep"]],decls:12,vars:2,consts:[["nzTitle","This is title",1,"ant-table-rep__hide-header-footer",3,"nzData"],["basicTable",""],[4,"ngFor","ngForOf"],[1,"ant-table-rep__title"]],template:function(X,Le){if(1&X&&(t.TgZ(0,"nz-table",0,1)(2,"thead")(3,"tr")(4,"th"),t._uU(5,"Name"),t.qZA(),t.TgZ(6,"th"),t._uU(7,"Age"),t.qZA(),t.TgZ(8,"th"),t._uU(9,"Address"),t.qZA()()(),t.TgZ(10,"tbody"),t.YNc(11,id,13,3,"tr",2),t.qZA()()),2&X){const ft=t.MAs(1);t.Q6J("nzData",Le.dataSet),t.xp6(11),t.Q6J("ngForOf",ft.data)}},dependencies:[C.sg,Fs.N8,Fs.Uo,Fs._C,Fs.Om,Fs.p0,Fs.$Z],encapsulation:2})}return Ce})();const Jl={"example-cookie-index":{title:void 0,component:Rs},"example-currency-cny-index":{title:void 0,component:Yl},"example-currency-mega-index":{title:void 0,component:Wl},"example-currency-price-index":{title:void 0,component:Za},"example-filter-index":{title:void 0,component:jl},"example-format-mask-index":{title:void 0,component:jr},"example-resizable-index":{title:{"zh-CN":"\u57fa\u7840\u6837\u4f8b","en-US":"Basic Usage"},component:fr},"example-table-rep-index":{title:{"zh-CN":"\u57fa\u7840\u6837\u4f8b","en-US":"Basic Usage"},component:(()=>{class Ce{constructor(){this.item={id:"theme-tools-table-rep",meta:{title:{"zh-CN":"\u57fa\u7840\u6837\u4f8b","en-US":"Basic Usage"},type:"example"},summary:{"zh-CN":"

      \u5c0f\u5c4f\u5e55\u67e5\u770b\u6548\u679c\u3002

      ","en-US":"

      Mobile screen view effect.

      "},code:"import { Component } from '@angular/core';\n\n@Component({\n selector: 'theme-tools-table-rep',\n template: `\n \n \n \n Name\n Age\n Address\n \n \n \n \n \n Name\n {{ data.name }}\n \n \n Age\n {{ data.age }}\n \n \n Address\n {{ data.address }}\n \n \n \n \n `,\n})\nexport class ThemeTableRepComponent {\n dataSet = [\n {\n key: '1',\n name: 'John Brown',\n age: 32,\n address: 'New York No. 1 Lake Park',\n },\n {\n key: '2',\n name: 'Jim Green',\n age: 42,\n address: 'London No. 1 Lake Park',\n },\n {\n key: '3',\n name: 'Joe Black',\n age: 32,\n address: 'Sidney No. 1 Lake Park',\n },\n ];\n}",name:"table-rep",urls:"packages/theme/docs/demo/table-rep.md",type:"example",lang:"ts",componentName:"ThemeTableRepComponent",componentIndexName:"ThemeTableRepIndexComponent"}}static#e=this.\u0275fac=function(X){return new(X||Ce)};static#t=this.\u0275cmp=t.Xpm({type:Ce,selectors:[["theme-tools-table-rep-index"]],decls:2,vars:1,consts:[["type","simple",3,"item"]],template:function(X,Le){1&X&&(t.TgZ(0,"code-box",0),t._UZ(1,"theme-tools-table-rep"),t.qZA()),2&X&&t.Q6J("item",Le.item)},dependencies:[as.e,od],styles:["[_nghost-%COMP%]{display:block}"]})}return Ce})()}};let sd=(()=>{class Ce{static#e=this.\u0275fac=function(X){return new(X||Ce)};static#t=this.\u0275mod=t.oAB({type:Ce});static#n=this.\u0275inj=t.cJS({imports:[Po.m]})}return Ce})(),rd=(()=>{class Ce{constructor(L){this.i18n=L}static#e=this.\u0275fac=function(X){return new(X||Ce)(t.Y36(an.Oi))};static#t=this.\u0275cmp=t.Xpm({type:Ce,selectors:[["not-found"]],decls:9,vars:1,consts:[["id","page-404"],[1,"links"],[3,"routerLink"]],template:function(X,Le){1&X&&(t.TgZ(0,"div",0)(1,"section")(2,"h1"),t._uU(3,"404"),t.qZA(),t.TgZ(4,"h4"),t._uU(5,"\u4f60\u8981\u627e\u7684\u9875\u9762\u4e0d\u5b58\u5728\uff0c\u4f60\u53ef\u80fd\u5728\u627e\uff1a"),t.qZA(),t.TgZ(6,"div",1)(7,"a",2),t._uU(8,"\u8fd4\u56de\u9996\u9875"),t.qZA()()()()),2&X&&(t.xp6(7),t.MGl("routerLink","/",Le.i18n.zone,""))},dependencies:[ni.rH],encapsulation:2})}return Ce})();var $u=o(97582),Qa=o(99402),Kr=o.n(Qa),ad=o(74648),Ir=o(77456),Xa=o(68014);function va(Ce,J){1&Ce&&(t._uU(0," \u56fd\u5185\u955c\u50cf\uff1a"),t.TgZ(1,"a",34),t._uU(2,"ng-alain.gitee.io"),t.qZA())}function ju(Ce,J){1&Ce&&t._UZ(0,"github-button",35)}function Gl(Ce,J){if(1&Ce&&(t.TgZ(0,"div",36)(1,"a",37),t._UZ(2,"img",38),t.qZA()()),2&Ce){const L=J.$implicit;t.xp6(1),t.s9C("href",L.url,t.LSH),t.xp6(1),t.MGl("src","./assets/screenshot/",L.type,".png",t.LSH)}}function Ql(Ce,J){if(1&Ce&&(t.TgZ(0,"div",39)(1,"a",40),t._UZ(2,"img",38),t.TgZ(3,"h3"),t._uU(4),t.ALo(5,"i18n"),t.qZA(),t.TgZ(6,"p"),t._uU(7),t.ALo(8,"i18n"),t.qZA()()()),2&Ce){const L=J.$implicit;t.xp6(1),t.uIk("href","https://e.ng-alain.com/theme/"+L,t.LSH)("data-theme",L),t.xp6(1),t.MGl("src","./assets/screenshot/",L,".png",t.LSH),t.xp6(2),t.Oqu(t.lcZ(5,5,"app.home.theme."+L)),t.xp6(3),t.Oqu(t.lcZ(8,7,"app.home.theme."+L+".desc"))}}const ld=[{path:"",component:xr,children:[{path:"",redirectTo:"en",pathMatch:"full"},{path:":lang",component:(()=>{class Ce{get isBrowser(){return this.platform.isBrowser}constructor(L,X,Le,ft){this.i18n=L,this.ngZone=X,this.doc=Le,this.platform=ft,this.list=[{type:"basic",url:"https://ng-alain.github.io/ng-alain"},{type:"pro",url:"https://e.ng-alain.com/theme/pro"},{type:"ms",url:"https://e.ng-alain.com/theme/ms"},{type:"yun",url:"https://e.ng-alain.com/theme/yun"}],this.themes=["pro","ms","yun"]}get body(){return this.doc.querySelector("body")}ngAfterViewInit(){this.isBrowser&&Kr().init()}ngOnInit(){this.body.classList.add("index-page")}ngOnDestroy(){this.body.classList.remove("index-page")}static#e=this.\u0275fac=function(X){return new(X||Ce)(t.Y36(an.Oi),t.Y36(t.R0b),t.Y36(C.K0),t.Y36(mi.t4))};static#t=this.\u0275cmp=t.Xpm({type:Ce,selectors:[["app-home"]],hostVars:2,hostBindings:function(X,Le){2&X&&t.ekj("home-wrapper",!0)},decls:114,vars:62,consts:[[1,"page-wrapper","page-banner"],[1,"page-banner__slogan"],["data-aos","fade-up","data-aos-once","true"],["data-aos","fade-up","data-aos-delay","150","data-aos-once","true"],[1,"page-banner__slogan-btn"],[3,"routerLink"],["nz-button","",3,"nzType","nzSize"],["href","https://ng-alain.surge.sh/","target","_blank","rel","noopener noreferrer","nz-tooltip","",3,"nzTooltipTitle"],["nz-button","",3,"nzSize"],["previewTpl",""],["type","stargazers","size","large","namespace","ng-alain","repo","ng-alain",4,"ngIf"],["nzAutoPlay","",1,"page-banner__img"],["nz-carousel-content","",4,"ngFor","ngForOf"],[1,"page-wrapper","page-feature"],[1,"page-feature__bg"],[1,"page-feature__bg-bottom"],[1,"page"],[1,"ant-row"],[1,"ant-col-xs-24","ant-col-md-6"],["data-aos","fade-up","data-aos-easing","ease-in-out","data-aos-delay","0",1,"page-feature__item"],["nz-icon","","nzType","heart"],["data-aos","fade-up","data-aos-easing","ease-in-out","data-aos-delay","50",1,"page-feature__item"],["data-aos","fade-up","data-aos-easing","ease-in-out","data-aos-delay","100",1,"page-feature__item"],["data-aos","fade-up","data-aos-easing","ease-in-out","data-aos-delay","150",1,"page-feature__item"],["nz-icon","","nzType","rocket"],["data-aos","fade-up","data-aos-easing","ease-in-out","data-aos-delay","200",1,"page-feature__item"],["nz-icon","","nzType","skin"],["data-aos","fade-up","data-aos-easing","ease-in-out","data-aos-delay","250",1,"page-feature__item"],["data-aos","fade-up","data-aos-easing","ease-in-out","data-aos-delay","300",1,"page-feature__item"],["nz-icon","","nzType","tool"],["data-aos","fade-up","data-aos-easing","ease-in-out","data-aos-delay","350",1,"page-feature__item"],["nz-icon","","nzType","layout"],[1,"page-wrapper","page-theme"],["class","ant-col-xs-24 ant-col-md-12",4,"ngFor","ngForOf"],["href","https://ng-alain.gitee.io","target","_blank"],["type","stargazers","size","large","namespace","ng-alain","repo","ng-alain"],["nz-carousel-content",""],["target","_blank",3,"href"],[3,"src"],[1,"ant-col-xs-24","ant-col-md-12"],["data-aos","zoom-in","data-aos-delay","0",1,"page-theme__item"]],template:function(X,Le){if(1&X&&(t.TgZ(0,"div",0)(1,"div",1)(2,"h1",2),t._uU(3,"NG-ALAIN"),t.qZA(),t.TgZ(4,"p",3),t._uU(5),t.ALo(6,"i18n"),t.qZA(),t.TgZ(7,"div",4)(8,"a",5)(9,"button",6),t._uU(10),t.ALo(11,"i18n"),t.qZA()(),t.TgZ(12,"a",7)(13,"button",8),t._uU(14),t.ALo(15,"i18n"),t.qZA(),t.YNc(16,va,3,0,"ng-template",null,9,t.W1O),t.qZA(),t.YNc(18,ju,1,0,"github-button",10),t.qZA()(),t.TgZ(19,"nz-carousel",11),t.YNc(20,Gl,3,2,"div",12),t.qZA()(),t.TgZ(21,"div",13),t._UZ(22,"div",14)(23,"div",15),t.TgZ(24,"div",16)(25,"h2"),t._uU(26),t.ALo(27,"i18n"),t.qZA(),t.TgZ(28,"div",17)(29,"div",18)(30,"div",19),t._UZ(31,"i",20),t.TgZ(32,"div")(33,"h3"),t._uU(34,"Ant Design"),t.qZA(),t.TgZ(35,"p"),t._uU(36),t.ALo(37,"i18n"),t.qZA()()()(),t.TgZ(38,"div",18)(39,"div",21),t._UZ(40,"i",20),t.TgZ(41,"div")(42,"h3"),t._uU(43,"NG-ZORRO"),t.qZA(),t.TgZ(44,"p"),t._uU(45),t.ALo(46,"i18n"),t.qZA()()()(),t.TgZ(47,"div",18)(48,"div",22),t._UZ(49,"i",20),t.TgZ(50,"div")(51,"h3"),t._uU(52,"Delon"),t.qZA(),t.TgZ(53,"p"),t._uU(54),t.ALo(55,"i18n"),t.qZA()()()(),t.TgZ(56,"div",18)(57,"div",23),t._UZ(58,"i",24),t.TgZ(59,"div")(60,"h3"),t._uU(61),t.ALo(62,"i18n"),t.qZA(),t.TgZ(63,"p"),t._uU(64),t.ALo(65,"i18n"),t.qZA()()()(),t.TgZ(66,"div",18)(67,"div",25),t._UZ(68,"i",26),t.TgZ(69,"div")(70,"h3"),t._uU(71),t.ALo(72,"i18n"),t.qZA(),t.TgZ(73,"p"),t._uU(74),t.ALo(75,"i18n"),t.qZA()()()(),t.TgZ(76,"div",18)(77,"div",27),t._UZ(78,"i",20),t.TgZ(79,"div")(80,"h3"),t._uU(81),t.ALo(82,"i18n"),t.qZA(),t.TgZ(83,"p"),t._uU(84),t.ALo(85,"i18n"),t.qZA()()()(),t.TgZ(86,"div",18)(87,"div",28),t._UZ(88,"i",29),t.TgZ(89,"div")(90,"h3"),t._uU(91),t.ALo(92,"i18n"),t.qZA(),t.TgZ(93,"p"),t._uU(94),t.ALo(95,"i18n"),t.qZA()()()(),t.TgZ(96,"div",18)(97,"div",30),t._UZ(98,"i",31),t.TgZ(99,"div")(100,"h3"),t._uU(101),t.ALo(102,"i18n"),t.qZA(),t.TgZ(103,"p"),t._uU(104),t.ALo(105,"i18n"),t.qZA()()()()()()(),t.TgZ(106,"div",32)(107,"div",16)(108,"h2"),t._uU(109),t.ALo(110,"i18n"),t.qZA(),t.TgZ(111,"div",17),t.YNc(112,Ql,9,9,"div",33),t.qZA()()(),t._UZ(113,"app-footer")),2&X){const ft=t.MAs(17);t.xp6(5),t.Oqu(t.lcZ(6,26,"app.home.slogan")),t.xp6(3),t.MGl("routerLink","/docs/getting-started/",Le.i18n.zone,""),t.xp6(1),t.Q6J("nzType","primary")("nzSize","large"),t.xp6(1),t.Oqu(t.lcZ(11,28,"app.home.start")),t.xp6(2),t.Q6J("nzTooltipTitle",ft),t.xp6(1),t.Q6J("nzSize","large"),t.xp6(1),t.Oqu(t.lcZ(15,30,"app.home.preview")),t.xp6(4),t.Q6J("ngIf",Le.isBrowser),t.xp6(2),t.Q6J("ngForOf",Le.list),t.xp6(6),t.Oqu(t.lcZ(27,32,"app.home.feature")),t.xp6(10),t.Oqu(t.lcZ(37,34,"app.home.feature.antd")),t.xp6(9),t.Oqu(t.lcZ(46,36,"app.home.feature.zorro")),t.xp6(9),t.Oqu(t.lcZ(55,38,"app.home.feature.delon")),t.xp6(7),t.Oqu(t.lcZ(62,40,"app.home.feature.out-of-box")),t.xp6(3),t.Oqu(t.lcZ(65,42,"app.home.feature.out-of-box.desc")),t.xp6(7),t.Oqu(t.lcZ(72,44,"app.home.feature.less")),t.xp6(3),t.Oqu(t.lcZ(75,46,"app.home.feature.less.desc")),t.xp6(7),t.Oqu(t.lcZ(82,48,"app.home.feature.rep")),t.xp6(3),t.Oqu(t.lcZ(85,50,"app.home.feature.rep.desc")),t.xp6(7),t.Oqu(t.lcZ(92,52,"app.home.feature.tool")),t.xp6(3),t.Oqu(t.lcZ(95,54,"app.home.feature.tool.desc")),t.xp6(7),t.Oqu(t.lcZ(102,56,"app.home.feature.demo")),t.xp6(3),t.Oqu(t.lcZ(105,58,"app.home.feature.demo.desc")),t.xp6(5),t.Oqu(t.lcZ(110,60,"app.home.theme")),t.xp6(3),t.Q6J("ngForOf",Le.themes)}},dependencies:[C.sg,C.O5,ni.rH,hn.ix,ai.w,Sr.dQ,Ir.QZ,Ir.pA,As.SY,Vo.Ls,Yr.M,Xa.c,Pr.C],encapsulation:2})}return(0,$u.gn)([(0,ad.EA)()],Ce.prototype,"ngAfterViewInit",null),Ce})(),data:{titleI18n:"slogan"}},{path:"docs",loadChildren:()=>o.e(311).then(o.bind(o,30311)).then(Ce=>Ce.DocsModule)},{path:"components",loadChildren:()=>o.e(414).then(o.bind(o,88414)).then(Ce=>Ce.ComponentsModule)},{path:"theme",loadChildren:()=>o.e(160).then(o.bind(o,79160)).then(Ce=>Ce.ThemeModule)},{path:"auth",loadChildren:()=>o.e(739).then(o.bind(o,23739)).then(Ce=>Ce.AuthModule)},{path:"acl",loadChildren:()=>o.e(821).then(o.bind(o,45821)).then(Ce=>Ce.AclModule)},{path:"cache",loadChildren:()=>o.e(520).then(o.bind(o,99520)).then(Ce=>Ce.CacheModule)},{path:"mock",loadChildren:()=>o.e(491).then(o.bind(o,12491)).then(Ce=>Ce.MockModule)},{path:"util",loadChildren:()=>o.e(711).then(o.bind(o,73711)).then(Ce=>Ce.UtilModule)},{path:"chart",loadChildren:()=>o.e(274).then(o.bind(o,47274)).then(Ce=>Ce.ChartModule)},{path:"form",loadChildren:()=>o.e(696).then(o.bind(o,48967)).then(Ce=>Ce.FormModule)},{path:"form-pages",loadChildren:()=>o.e(960).then(o.bind(o,38960)).then(Ce=>Ce.FormPagesModule)},{path:"cli",loadChildren:()=>o.e(598).then(o.bind(o,39598)).then(Ce=>Ce.CliModule)}]},{path:"dev",loadChildren:()=>o.e(967).then(o.bind(o,9967)).then(Ce=>Ce.DevTestModule)},{path:"404",component:rd},{path:"**",redirectTo:"404"}];let ya=(()=>{class Ce{static#e=this.\u0275fac=function(X){return new(X||Ce)};static#t=this.\u0275mod=t.oAB({type:Ce});static#n=this.\u0275inj=t.cJS({imports:[Po.m,ni.Bz.forRoot(ld,{scrollPositionRestoration:"enabled",bindToComponentInputs:!0})]})}return Ce})();var qa=o(92476),Ca=o(27854),Zr=o(93355);let Jr=(()=>{class Ce extends Ca.H_{static#e=this.KEY="tinymce";ngOnInit(){this.loading=this.ui.loading||"\u52a0\u8f7d\u4e2d\u2026\u2026",this.config=this.ui.config||{}}change(L){this.ui.change&&this.ui.change(L),this.setValue(L)}static#t=this.\u0275fac=function(){let L;return function(Le){return(L||(L=t.n5z(Ce)))(Le||Ce)}}();static#n=this.\u0275cmp=t.Xpm({type:Ce,selectors:[["sf-tinymce"]],features:[t.qOj],decls:2,vars:9,consts:[[3,"id","schema","ui","showError","error","showTitle"],[3,"ngModel","config","loading","ngModelChange"]],template:function(X,Le){1&X&&(t.TgZ(0,"sf-item-wrap",0)(1,"tinymce",1),t.NdJ("ngModelChange",function(Pt){return Le.change(Pt)}),t.qZA()()),2&X&&(t.Q6J("id",Le.id)("schema",Le.schema)("ui",Le.ui)("showError",Le.showError)("error",Le.error)("showTitle",Le.schema.title),t.xp6(1),t.Q6J("ngModel",Le.value)("config",Le.config)("loading",Le.loading))},dependencies:[zo.JJ,zo.On,Zr.i,wo.Ot],encapsulation:2})}return Ce})();o(48141);let ql=(()=>{class Ce{constructor(L){L.register(Jr.KEY,Jr)}static#e=this.\u0275fac=function(X){return new(X||Ce)(t.LFG(Ca.Bl))};static#t=this.\u0275mod=t.oAB({type:Ce});static#n=this.\u0275inj=t.cJS({imports:[Po.m,Ca.ek.forRoot()]})}return Ce})();var ec=o(92760);let za=(()=>{class Ce{static#e=this.KEY="img";constructor(L){this.msg=L}show(){this.msg.info(`\u6b63\u5728\u6253\u5f00\u5927\u56fe${this.img}\u2026\u2026`)}static#t=this.\u0275fac=function(X){return new(X||Ce)(t.Y36(nr.dD))};static#n=this.\u0275cmp=t.Xpm({type:Ce,selectors:[["st-widget-img"]],hostBindings:function(X,Le){1&X&&t.NdJ("click",function(){return Le.show()})},decls:1,vars:0,consts:[["nz-tooltip","","nzTooltipTitle","Click it","nz-image","","nzSrc","https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ.png",1,"img",2,"cursor","pointer",3,"click"]],template:function(X,Le){1&X&&(t.TgZ(0,"img",0),t.NdJ("click",function(){return Le.show()}),t.qZA())},dependencies:[As.SY,ec.Ie],encapsulation:2,changeDetection:0})}return Ce})();var dd=o(87334);let mr=(()=>{class Ce{constructor(L){L.register(za.KEY,za)}static#e=this.\u0275fac=function(X){return new(X||Ce)(t.LFG(dd.Ic))};static#t=this.\u0275mod=t.oAB({type:Ce});static#n=this.\u0275inj=t.cJS({imports:[Po.m]})}return Ce})(),tl=(()=>{class Ce{static#e=this.KEY="test";constructor(L){this.msg=L}show(){this.msg.info("click")}static#t=this.\u0275fac=function(X){return new(X||Ce)(t.Y36(nr.dD))};static#n=this.\u0275cmp=t.Xpm({type:Ce,selectors:[["cell-widget-test"]],hostBindings:function(X,Le){1&X&&t.NdJ("click",function(){return Le.show()})},decls:1,vars:1,consts:[["nz-tooltip","","nzTooltipTitle","Client it",1,"img",2,"cursor","pointer",3,"src"]],template:function(X,Le){1&X&&t._UZ(0,"img",0),2&X&&t.Q6J("src",Le.data.value,t.LSH)},dependencies:[As.SY],encapsulation:2,changeDetection:0})}return Ce})();var tc=o(22948);let Gr=(()=>{class Ce{constructor(L){L.registerWidget(tl.KEY,tl)}static#e=this.\u0275fac=function(X){return new(X||Ce)(t.LFG(tc.xx))};static#t=this.\u0275mod=t.oAB({type:Ce});static#n=this.\u0275inj=t.cJS({imports:[Po.m]})}return Ce})();var hd=o(22945),Xo=o(47532),pd=o(77273);function nc(Ce){return()=>Ce.load()}(0,C.qS)(M);let fd=(()=>{class Ce{constructor(L,X){!function Ta(Ce,J){if(!(0,C.NF)(J)||customElements.get("nz-icon"))return;const{createCustomElement:L}=o(19288);Object.keys(Jl).forEach(X=>{const Le=L(Jl[X].component,{injector:Ce});customElements.define(X,Le)}),customElements.define("nz-icon",L(qa.o,{injector:Ce}))}(L,X)}static#e=this.\u0275fac=function(X){return new(X||Ce)(t.LFG(t.zs3),t.LFG(t.Lbi))};static#t=this.\u0275mod=t.oAB({type:Ce,bootstrap:[Dr]});static#n=this.\u0275inj=t.cJS({providers:[{provide:an.Oi,useClass:Ki,multi:!1},Ms,{provide:t.ip1,useFactory:nc,deps:[Ms],multi:!0},{provide:t.qLn,useClass:br}],imports:[n.b2.withServerTransition({appId:"serverApp"}),Fo,E.JF,i.vT,pa.forRoot(),l.xu,Po.m,ql,mr,Gr,ya,sd,wo.TN.forRoot({baseURL:"https://cdnjs.cloudflare.com/ajax/libs/tinymce/4.9.2/"}),rn.register("ngsw-worker.js",{enabled:true})]})}return Ce})();t.B6R(xr,function(){return[C.O5,ni.lC,hd.f,Xo.o,pd.W,Ci]},[]),(0,t.G48)(),n.q6().bootstrapModule(fd,{defaultEncapsulation:t.ifc.None,preserveWhitespaces:!1}).then(Ce=>(window.appBootstrap&&window.appBootstrap(),Ce)).catch(Ce=>console.error(Ce))},58557:(nt,I)=>{"use strict";function o(A,k){return{validate:A,compare:k}}Object.defineProperty(I,"__esModule",{value:!0}),I.formatNames=I.fastFormats=I.fullFormats=void 0,I.fullFormats={date:o(i,l),time:o(E,u),"date-time":o(function M(A){const k=A.split(z);return 2===k.length&&i(k[0])&&E(k[1],!0)},h),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:function d(A){return v.test(A)&&g.test(A)},"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:function O(A){if(P.test(A))return!1;try{return new RegExp(A),!0}catch{return!1}},uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:function f(A){return p.lastIndex=0,p.test(A)},int32:{type:"number",validate:function x(A){return Number.isInteger(A)&&A<=T&&A>=y}},int64:{type:"number",validate:function D(A){return Number.isInteger(A)}},float:{type:"number",validate:_},double:{type:"number",validate:_},password:!0,binary:!0},I.fastFormats={...I.fullFormats,date:o(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,l),time:o(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,u),"date-time":o(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,h),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i},I.formatNames=Object.keys(I.fullFormats);const n=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,t=[0,31,28,31,30,31,30,31,31,30,31,30,31];function i(A){const k=n.exec(A);if(!k)return!1;const W=+k[2],K=+k[3];return W>=1&&W<=12&&K>=1&&K<=(2===W&&function e(A){return A%4==0&&(A%100!=0||A%400==0)}(+k[1])?29:t[W])}function l(A,k){if(A&&k)return A>k?1:A(k=W[1]+W[2]+W[3]+(W[4]||""))?1:A{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(58557),n=o(41634),t=o(10117),i=new t.Name("fullFormats"),l=new t.Name("fastFormats"),C=(u,z={keywords:!0})=>{if(Array.isArray(z))return E(u,z,e.fullFormats,i),u;const[M,h]="fast"===z.mode?[e.fastFormats,l]:[e.fullFormats,i];return E(u,z.formats||e.formatNames,M,h),z.keywords&&n.default(u),u};function E(u,z,M,h){var v,g;null!==(v=(g=u.opts.code).formats)&&void 0!==v||(g.formats=t._`require("ajv-formats/dist/formats").${h}`);for(const d of z)u.addFormat(d,M[d])}C.get=(u,z="full")=>{const h=("fast"===z?e.fastFormats:e.fullFormats)[u];if(!h)throw new Error(`Unknown format "${u}"`);return h},nt.exports=I=C,Object.defineProperty(I,"__esModule",{value:!0}),I.default=C},41634:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.formatLimitDefinition=void 0;const e=o(34258),n=o(10117),t=n.operators,i={formatMaximum:{okStr:"<=",ok:t.LTE,fail:t.GT},formatMinimum:{okStr:">=",ok:t.GTE,fail:t.LT},formatExclusiveMaximum:{okStr:"<",ok:t.LT,fail:t.GTE},formatExclusiveMinimum:{okStr:">",ok:t.GT,fail:t.LTE}},l={message:({keyword:E,schemaCode:u})=>n.str`should be ${i[E].okStr} ${u}`,params:({keyword:E,schemaCode:u})=>n._`{comparison: ${i[E].okStr}, limit: ${u}}`};I.formatLimitDefinition={keyword:Object.keys(i),type:"string",schemaType:"string",$data:!0,error:l,code(E){const{gen:u,data:z,schemaCode:M,keyword:h,it:v}=E,{opts:g,self:d}=v;if(!g.validateFormats)return;const p=new e.KeywordCxt(v,d.RULES.all.format.definition,"format");function T(x){return n._`${x}.compare(${z}, ${M}) ${i[h].fail} 0`}p.$data?function f(){const x=u.scopeValue("formats",{ref:d.formats,code:g.code.formats}),D=u.const("fmt",n._`${x}[${p.schemaCode}]`);E.fail$data(n.or(n._`typeof ${D} != "object"`,n._`${D} instanceof RegExp`,n._`typeof ${D}.compare != "function"`,T(D)))}():function y(){const x=p.schema,D=d.formats[x];if(!D||!0===D)return;if("object"!=typeof D||D instanceof RegExp||"function"!=typeof D.compare)throw new Error(`"${h}": format "${x}" does not define "compare" function`);const _=u.scopeValue("formats",{key:x,ref:D,code:g.code.formats?n._`${g.code.formats}${n.getProperty(x)}`:void 0});E.fail$data(T(_))}()},dependencies:["format"]},I.default=E=>(E.addKeyword(I.formatLimitDefinition),E)},34258:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.MissingRefError=I.ValidationError=I.CodeGen=I.Name=I.nil=I.stringify=I.str=I._=I.KeywordCxt=void 0;const e=o(28385),n=o(8677),t=o(96081),i=o(98),l=["/properties"],C="http://json-schema.org/draft-07/schema";class E extends e.default{_addVocabularies(){super._addVocabularies(),n.default.forEach(g=>this.addVocabulary(g)),this.opts.discriminator&&this.addKeyword(t.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;const g=this.opts.$data?this.$dataMetaSchema(i,l):i;this.addMetaSchema(g,C,!1),this.refs["http://json-schema.org/schema"]=C}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(C)?C:void 0)}}nt.exports=I=E,Object.defineProperty(I,"__esModule",{value:!0}),I.default=E;var u=o(62175);Object.defineProperty(I,"KeywordCxt",{enumerable:!0,get:function(){return u.KeywordCxt}});var z=o(10117);Object.defineProperty(I,"_",{enumerable:!0,get:function(){return z._}}),Object.defineProperty(I,"str",{enumerable:!0,get:function(){return z.str}}),Object.defineProperty(I,"stringify",{enumerable:!0,get:function(){return z.stringify}}),Object.defineProperty(I,"nil",{enumerable:!0,get:function(){return z.nil}}),Object.defineProperty(I,"Name",{enumerable:!0,get:function(){return z.Name}}),Object.defineProperty(I,"CodeGen",{enumerable:!0,get:function(){return z.CodeGen}});var M=o(80110);Object.defineProperty(I,"ValidationError",{enumerable:!0,get:function(){return M.default}});var h=o(95695);Object.defineProperty(I,"MissingRefError",{enumerable:!0,get:function(){return h.default}})},92276:(nt,I)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.regexpCode=I.getEsmExportName=I.getProperty=I.safeStringify=I.stringify=I.strConcat=I.addCodeArg=I.str=I._=I.nil=I._Code=I.Name=I.IDENTIFIER=I._CodeOrName=void 0;class o{}I._CodeOrName=o,I.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;class e extends o{constructor(y){if(super(),!I.IDENTIFIER.test(y))throw new Error("CodeGen: name must be a valid identifier");this.str=y}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}}I.Name=e;class n extends o{constructor(y){super(),this._items="string"==typeof y?[y]:y}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;const y=this._items[0];return""===y||'""'===y}get str(){var y;return null!==(y=this._str)&&void 0!==y?y:this._str=this._items.reduce((T,x)=>`${T}${x}`,"")}get names(){var y;return null!==(y=this._names)&&void 0!==y?y:this._names=this._items.reduce((T,x)=>(x instanceof e&&(T[x.str]=(T[x.str]||0)+1),T),{})}}function t(f,...y){const T=[f[0]];let x=0;for(;x{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.or=I.and=I.not=I.CodeGen=I.operators=I.varKinds=I.ValueScopeName=I.ValueScope=I.Scope=I.Name=I.regexpCode=I.stringify=I.getProperty=I.nil=I.strConcat=I.str=I._=void 0;const e=o(92276),n=o(84055);var t=o(92276);Object.defineProperty(I,"_",{enumerable:!0,get:function(){return t._}}),Object.defineProperty(I,"str",{enumerable:!0,get:function(){return t.str}}),Object.defineProperty(I,"strConcat",{enumerable:!0,get:function(){return t.strConcat}}),Object.defineProperty(I,"nil",{enumerable:!0,get:function(){return t.nil}}),Object.defineProperty(I,"getProperty",{enumerable:!0,get:function(){return t.getProperty}}),Object.defineProperty(I,"stringify",{enumerable:!0,get:function(){return t.stringify}}),Object.defineProperty(I,"regexpCode",{enumerable:!0,get:function(){return t.regexpCode}}),Object.defineProperty(I,"Name",{enumerable:!0,get:function(){return t.Name}});var i=o(84055);Object.defineProperty(I,"Scope",{enumerable:!0,get:function(){return i.Scope}}),Object.defineProperty(I,"ValueScope",{enumerable:!0,get:function(){return i.ValueScope}}),Object.defineProperty(I,"ValueScopeName",{enumerable:!0,get:function(){return i.ValueScopeName}}),Object.defineProperty(I,"varKinds",{enumerable:!0,get:function(){return i.varKinds}}),I.operators={GT:new e._Code(">"),GTE:new e._Code(">="),LT:new e._Code("<"),LTE:new e._Code("<="),EQ:new e._Code("==="),NEQ:new e._Code("!=="),NOT:new e._Code("!"),OR:new e._Code("||"),AND:new e._Code("&&"),ADD:new e._Code("+")};class l{optimizeNodes(){return this}optimizeNames(ce,Q){return this}}class C extends l{constructor(ce,Q,ie){super(),this.varKind=ce,this.name=Q,this.rhs=ie}render({es5:ce,_n:Q}){return`${ce?n.varKinds.var:this.varKind} ${this.name}${void 0===this.rhs?"":` = ${this.rhs}`};`+Q}optimizeNames(ce,Q){if(ce[this.name.str])return this.rhs&&(this.rhs=Y(this.rhs,ce,Q)),this}get names(){return this.rhs instanceof e._CodeOrName?this.rhs.names:{}}}class E extends l{constructor(ce,Q,ie){super(),this.lhs=ce,this.rhs=Q,this.sideEffects=ie}render({_n:ce}){return`${this.lhs} = ${this.rhs};`+ce}optimizeNames(ce,Q){if(!(this.lhs instanceof e.Name)||ce[this.lhs.str]||this.sideEffects)return this.rhs=Y(this.rhs,ce,Q),this}get names(){return _e(this.lhs instanceof e.Name?{}:{...this.lhs.names},this.rhs)}}class u extends E{constructor(ce,Q,ie,ae){super(ce,ie,ae),this.op=Q}render({_n:ce}){return`${this.lhs} ${this.op}= ${this.rhs};`+ce}}class z extends l{constructor(ce){super(),this.label=ce,this.names={}}render({_n:ce}){return`${this.label}:`+ce}}class M extends l{constructor(ce){super(),this.label=ce,this.names={}}render({_n:ce}){return`break${this.label?` ${this.label}`:""};`+ce}}class h extends l{constructor(ce){super(),this.error=ce}render({_n:ce}){return`throw ${this.error};`+ce}get names(){return this.error.names}}class v extends l{constructor(ce){super(),this.code=ce}render({_n:ce}){return`${this.code};`+ce}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(ce,Q){return this.code=Y(this.code,ce,Q),this}get names(){return this.code instanceof e._CodeOrName?this.code.names:{}}}class g extends l{constructor(ce=[]){super(),this.nodes=ce}render(ce){return this.nodes.reduce((Q,ie)=>Q+ie.render(ce),"")}optimizeNodes(){const{nodes:ce}=this;let Q=ce.length;for(;Q--;){const ie=ce[Q].optimizeNodes();Array.isArray(ie)?ce.splice(Q,1,...ie):ie?ce[Q]=ie:ce.splice(Q,1)}return ce.length>0?this:void 0}optimizeNames(ce,Q){const{nodes:ie}=this;let ae=ie.length;for(;ae--;){const xe=ie[ae];xe.optimizeNames(ce,Q)||(G(ce,xe.names),ie.splice(ae,1))}return ie.length>0?this:void 0}get names(){return this.nodes.reduce((ce,Q)=>K(ce,Q.names),{})}}class d extends g{render(ce){return"{"+ce._n+super.render(ce)+"}"+ce._n}}class p extends g{}let f=(()=>{class le extends d{}return le.kind="else",le})(),y=(()=>{class le extends d{constructor(Q,ie){super(ie),this.condition=Q}render(Q){let ie=`if(${this.condition})`+super.render(Q);return this.else&&(ie+="else "+this.else.render(Q)),ie}optimizeNodes(){super.optimizeNodes();const Q=this.condition;if(!0===Q)return this.nodes;let ie=this.else;if(ie){const ae=ie.optimizeNodes();ie=this.else=Array.isArray(ae)?new f(ae):ae}return ie?!1===Q?ie instanceof le?ie:ie.nodes:this.nodes.length?this:new le(H(Q),ie instanceof le?[ie]:ie.nodes):!1!==Q&&this.nodes.length?this:void 0}optimizeNames(Q,ie){var ae;if(this.else=null===(ae=this.else)||void 0===ae?void 0:ae.optimizeNames(Q,ie),super.optimizeNames(Q,ie)||this.else)return this.condition=Y(this.condition,Q,ie),this}get names(){const Q=super.names;return _e(Q,this.condition),this.else&&K(Q,this.else.names),Q}}return le.kind="if",le})(),T=(()=>{class le extends d{}return le.kind="for",le})();class x extends T{constructor(ce){super(),this.iteration=ce}render(ce){return`for(${this.iteration})`+super.render(ce)}optimizeNames(ce,Q){if(super.optimizeNames(ce,Q))return this.iteration=Y(this.iteration,ce,Q),this}get names(){return K(super.names,this.iteration.names)}}class D extends T{constructor(ce,Q,ie,ae){super(),this.varKind=ce,this.name=Q,this.from=ie,this.to=ae}render(ce){const Q=ce.es5?n.varKinds.var:this.varKind,{name:ie,from:ae,to:xe}=this;return`for(${Q} ${ie}=${ae}; ${ie}<${xe}; ${ie}++)`+super.render(ce)}get names(){const ce=_e(super.names,this.from);return _e(ce,this.to)}}class _ extends T{constructor(ce,Q,ie,ae){super(),this.loop=ce,this.varKind=Q,this.name=ie,this.iterable=ae}render(ce){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(ce)}optimizeNames(ce,Q){if(super.optimizeNames(ce,Q))return this.iterable=Y(this.iterable,ce,Q),this}get names(){return K(super.names,this.iterable.names)}}let P=(()=>{class le extends d{constructor(Q,ie,ae){super(),this.name=Q,this.args=ie,this.async=ae}render(Q){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(Q)}}return le.kind="func",le})(),O=(()=>{class le extends g{render(Q){return"return "+super.render(Q)}}return le.kind="return",le})();class A extends d{render(ce){let Q="try"+super.render(ce);return this.catch&&(Q+=this.catch.render(ce)),this.finally&&(Q+=this.finally.render(ce)),Q}optimizeNodes(){var ce,Q;return super.optimizeNodes(),null===(ce=this.catch)||void 0===ce||ce.optimizeNodes(),null===(Q=this.finally)||void 0===Q||Q.optimizeNodes(),this}optimizeNames(ce,Q){var ie,ae;return super.optimizeNames(ce,Q),null===(ie=this.catch)||void 0===ie||ie.optimizeNames(ce,Q),null===(ae=this.finally)||void 0===ae||ae.optimizeNames(ce,Q),this}get names(){const ce=super.names;return this.catch&&K(ce,this.catch.names),this.finally&&K(ce,this.finally.names),ce}}let k=(()=>{class le extends d{constructor(Q){super(),this.error=Q}render(Q){return`catch(${this.error})`+super.render(Q)}}return le.kind="catch",le})(),F=(()=>{class le extends d{render(Q){return"finally"+super.render(Q)}}return le.kind="finally",le})();function K(le,ce){for(const Q in ce)le[Q]=(le[Q]||0)+(ce[Q]||0);return le}function _e(le,ce){return ce instanceof e._CodeOrName?K(le,ce.names):le}function Y(le,ce,Q){return le instanceof e.Name?ie(le):function ae(xe){return xe instanceof e._Code&&xe._items.some(Me=>Me instanceof e.Name&&1===ce[Me.str]&&void 0!==Q[Me.str])}(le)?new e._Code(le._items.reduce((xe,Me)=>(Me instanceof e.Name&&(Me=ie(Me)),Me instanceof e._Code?xe.push(...Me._items):xe.push(Me),xe),[])):le;function ie(xe){const Me=Q[xe.str];return void 0===Me||1!==ce[xe.str]?xe:(delete ce[xe.str],Me)}}function G(le,ce){for(const Q in ce)le[Q]=(le[Q]||0)-(ce[Q]||0)}function H(le){return"boolean"==typeof le||"number"==typeof le||null===le?!le:e._`!${be(le)}`}I.CodeGen=class W{constructor(ce,Q={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...Q,_n:Q.lines?"\n":""},this._extScope=ce,this._scope=new n.Scope({parent:ce}),this._nodes=[new p]}toString(){return this._root.render(this.opts)}name(ce){return this._scope.name(ce)}scopeName(ce){return this._extScope.name(ce)}scopeValue(ce,Q){const ie=this._extScope.value(ce,Q);return(this._values[ie.prefix]||(this._values[ie.prefix]=new Set)).add(ie),ie}getScopeValue(ce,Q){return this._extScope.getValue(ce,Q)}scopeRefs(ce){return this._extScope.scopeRefs(ce,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(ce,Q,ie,ae){const xe=this._scope.toName(Q);return void 0!==ie&&ae&&(this._constants[xe.str]=ie),this._leafNode(new C(ce,xe,ie)),xe}const(ce,Q,ie){return this._def(n.varKinds.const,ce,Q,ie)}let(ce,Q,ie){return this._def(n.varKinds.let,ce,Q,ie)}var(ce,Q,ie){return this._def(n.varKinds.var,ce,Q,ie)}assign(ce,Q,ie){return this._leafNode(new E(ce,Q,ie))}add(ce,Q){return this._leafNode(new u(ce,I.operators.ADD,Q))}code(ce){return"function"==typeof ce?ce():ce!==e.nil&&this._leafNode(new v(ce)),this}object(...ce){const Q=["{"];for(const[ie,ae]of ce)Q.length>1&&Q.push(","),Q.push(ie),(ie!==ae||this.opts.es5)&&(Q.push(":"),(0,e.addCodeArg)(Q,ae));return Q.push("}"),new e._Code(Q)}if(ce,Q,ie){if(this._blockNode(new y(ce)),Q&&ie)this.code(Q).else().code(ie).endIf();else if(Q)this.code(Q).endIf();else if(ie)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(ce){return this._elseNode(new y(ce))}else(){return this._elseNode(new f)}endIf(){return this._endBlockNode(y,f)}_for(ce,Q){return this._blockNode(ce),Q&&this.code(Q).endFor(),this}for(ce,Q){return this._for(new x(ce),Q)}forRange(ce,Q,ie,ae,xe=(this.opts.es5?n.varKinds.var:n.varKinds.let)){const Me=this._scope.toName(ce);return this._for(new D(xe,Me,Q,ie),()=>ae(Me))}forOf(ce,Q,ie,ae=n.varKinds.const){const xe=this._scope.toName(ce);if(this.opts.es5){const Me=Q instanceof e.Name?Q:this.var("_arr",Q);return this.forRange("_i",0,e._`${Me}.length`,Ye=>{this.var(xe,e._`${Me}[${Ye}]`),ie(xe)})}return this._for(new _("of",ae,xe,Q),()=>ie(xe))}forIn(ce,Q,ie,ae=(this.opts.es5?n.varKinds.var:n.varKinds.const)){if(this.opts.ownProperties)return this.forOf(ce,e._`Object.keys(${Q})`,ie);const xe=this._scope.toName(ce);return this._for(new _("in",ae,xe,Q),()=>ie(xe))}endFor(){return this._endBlockNode(T)}label(ce){return this._leafNode(new z(ce))}break(ce){return this._leafNode(new M(ce))}return(ce){const Q=new O;if(this._blockNode(Q),this.code(ce),1!==Q.nodes.length)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(O)}try(ce,Q,ie){if(!Q&&!ie)throw new Error('CodeGen: "try" without "catch" and "finally"');const ae=new A;if(this._blockNode(ae),this.code(ce),Q){const xe=this.name("e");this._currNode=ae.catch=new k(xe),Q(xe)}return ie&&(this._currNode=ae.finally=new F,this.code(ie)),this._endBlockNode(k,F)}throw(ce){return this._leafNode(new h(ce))}block(ce,Q){return this._blockStarts.push(this._nodes.length),ce&&this.code(ce).endBlock(Q),this}endBlock(ce){const Q=this._blockStarts.pop();if(void 0===Q)throw new Error("CodeGen: not in self-balancing block");const ie=this._nodes.length-Q;if(ie<0||void 0!==ce&&ie!==ce)throw new Error(`CodeGen: wrong number of nodes: ${ie} vs ${ce} expected`);return this._nodes.length=Q,this}func(ce,Q=e.nil,ie,ae){return this._blockNode(new P(ce,Q,ie)),ae&&this.code(ae).endFunc(),this}endFunc(){return this._endBlockNode(P)}optimize(ce=1){for(;ce-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(ce){return this._currNode.nodes.push(ce),this}_blockNode(ce){this._currNode.nodes.push(ce),this._nodes.push(ce)}_endBlockNode(ce,Q){const ie=this._currNode;if(ie instanceof ce||Q&&ie instanceof Q)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${Q?`${ce.kind}/${Q.kind}`:ce.kind}"`)}_elseNode(ce){const Q=this._currNode;if(!(Q instanceof y))throw new Error('CodeGen: "else" without "if"');return this._currNode=Q.else=ce,this}get _root(){return this._nodes[0]}get _currNode(){const ce=this._nodes;return ce[ce.length-1]}set _currNode(ce){const Q=this._nodes;Q[Q.length-1]=ce}},I.not=H;const j=re(I.operators.AND);I.and=function te(...le){return le.reduce(j)};const ne=re(I.operators.OR);function re(le){return(ce,Q)=>ce===e.nil?Q:Q===e.nil?ce:e._`${be(ce)} ${le} ${be(Q)}`}function be(le){return le instanceof e.Name?le:e._`(${le})`}I.or=function pe(...le){return le.reduce(ne)}},84055:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.ValueScope=I.ValueScopeName=I.Scope=I.varKinds=I.UsedValueState=void 0;const e=o(92276);class n extends Error{constructor(z){super(`CodeGen: "code" for ${z} not defined`),this.value=z.value}}var t,u;(u=t=I.UsedValueState||(I.UsedValueState={}))[u.Started=0]="Started",u[u.Completed=1]="Completed",I.varKinds={const:new e.Name("const"),let:new e.Name("let"),var:new e.Name("var")};class i{constructor({prefixes:z,parent:M}={}){this._names={},this._prefixes=z,this._parent=M}toName(z){return z instanceof e.Name?z:this.name(z)}name(z){return new e.Name(this._newName(z))}_newName(z){return`${z}${(this._names[z]||this._nameGroup(z)).index++}`}_nameGroup(z){var M,h;if(null!==(h=null===(M=this._parent)||void 0===M?void 0:M._prefixes)&&void 0!==h&&h.has(z)||this._prefixes&&!this._prefixes.has(z))throw new Error(`CodeGen: prefix "${z}" is not allowed in this scope`);return this._names[z]={prefix:z,index:0}}}I.Scope=i;class l extends e.Name{constructor(z,M){super(M),this.prefix=z}setValue(z,{property:M,itemIndex:h}){this.value=z,this.scopePath=e._`.${new e.Name(M)}[${h}]`}}I.ValueScopeName=l;const C=e._`\n`;I.ValueScope=class E extends i{constructor(z){super(z),this._values={},this._scope=z.scope,this.opts={...z,_n:z.lines?C:e.nil}}get(){return this._scope}name(z){return new l(z,this._newName(z))}value(z,M){var h;if(void 0===M.ref)throw new Error("CodeGen: ref must be passed in value");const v=this.toName(z),{prefix:g}=v,d=null!==(h=M.key)&&void 0!==h?h:M.ref;let p=this._values[g];if(p){const T=p.get(d);if(T)return T}else p=this._values[g]=new Map;p.set(d,v);const f=this._scope[g]||(this._scope[g]=[]),y=f.length;return f[y]=M.ref,v.setValue(M,{property:g,itemIndex:y}),v}getValue(z,M){const h=this._values[z];if(h)return h.get(M)}scopeRefs(z,M=this._values){return this._reduceValues(M,h=>{if(void 0===h.scopePath)throw new Error(`CodeGen: name "${h}" has no value`);return e._`${z}${h.scopePath}`})}scopeCode(z=this._values,M,h){return this._reduceValues(z,v=>{if(void 0===v.value)throw new Error(`CodeGen: name "${v}" has no value`);return v.value.code},M,h)}_reduceValues(z,M,h={},v){let g=e.nil;for(const d in z){const p=z[d];if(!p)continue;const f=h[d]=h[d]||new Map;p.forEach(y=>{if(f.has(y))return;f.set(y,t.Started);let T=M(y);if(T)g=e._`${g}${this.opts.es5?I.varKinds.var:I.varKinds.const} ${y} = ${T};${this.opts._n}`;else{if(!(T=v?.(y)))throw new n(y);g=e._`${g}${T}${this.opts._n}`}f.set(y,t.Completed)})}return g}}},45618:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.extendErrors=I.resetErrorsCount=I.reportExtraError=I.reportError=I.keyword$DataError=I.keywordError=void 0;const e=o(10117),n=o(78754),t=o(25631);function u(f,y){const T=f.const("err",y);f.if(e._`${t.default.vErrors} === null`,()=>f.assign(t.default.vErrors,e._`[${T}]`),e._`${t.default.vErrors}.push(${T})`),f.code(e._`${t.default.errors}++`)}function z(f,y){const{gen:T,validateName:x,schemaEnv:D}=f;D.$async?T.throw(e._`new ${f.ValidationError}(${y})`):(T.assign(e._`${x}.errors`,y),T.return(!1))}I.keywordError={message:({keyword:f})=>e.str`must pass "${f}" keyword validation`},I.keyword$DataError={message:({keyword:f,schemaType:y})=>y?e.str`"${f}" keyword must be ${y} ($data)`:e.str`"${f}" keyword is invalid ($data)`},I.reportError=function i(f,y=I.keywordError,T,x){const{it:D}=f,{gen:_,compositeRule:P,allErrors:O}=D,A=h(f,y,T);x??(P||O)?u(_,A):z(D,e._`[${A}]`)},I.reportExtraError=function l(f,y=I.keywordError,T){const{it:x}=f,{gen:D,compositeRule:_,allErrors:P}=x;u(D,h(f,y,T)),_||P||z(x,t.default.vErrors)},I.resetErrorsCount=function C(f,y){f.assign(t.default.errors,y),f.if(e._`${t.default.vErrors} !== null`,()=>f.if(y,()=>f.assign(e._`${t.default.vErrors}.length`,y),()=>f.assign(t.default.vErrors,null)))},I.extendErrors=function E({gen:f,keyword:y,schemaValue:T,data:x,errsCount:D,it:_}){if(void 0===D)throw new Error("ajv implementation error");const P=f.name("err");f.forRange("i",D,t.default.errors,O=>{f.const(P,e._`${t.default.vErrors}[${O}]`),f.if(e._`${P}.instancePath === undefined`,()=>f.assign(e._`${P}.instancePath`,(0,e.strConcat)(t.default.instancePath,_.errorPath))),f.assign(e._`${P}.schemaPath`,e.str`${_.errSchemaPath}/${y}`),_.opts.verbose&&(f.assign(e._`${P}.schema`,T),f.assign(e._`${P}.data`,x))})};const M={keyword:new e.Name("keyword"),schemaPath:new e.Name("schemaPath"),params:new e.Name("params"),propertyName:new e.Name("propertyName"),message:new e.Name("message"),schema:new e.Name("schema"),parentSchema:new e.Name("parentSchema")};function h(f,y,T){const{createErrors:x}=f.it;return!1===x?e._`{}`:function v(f,y,T={}){const{gen:x,it:D}=f,_=[g(D,T),d(f,T)];return function p(f,{params:y,message:T},x){const{keyword:D,data:_,schemaValue:P,it:O}=f,{opts:A,propertyName:k,topSchemaRef:F,schemaPath:W}=O;x.push([M.keyword,D],[M.params,"function"==typeof y?y(f):y||e._`{}`]),A.messages&&x.push([M.message,"function"==typeof T?T(f):T]),A.verbose&&x.push([M.schema,P],[M.parentSchema,e._`${F}${W}`],[t.default.data,_]),k&&x.push([M.propertyName,k])}(f,y,_),x.object(..._)}(f,y,T)}function g({errorPath:f},{instancePath:y}){const T=y?e.str`${f}${(0,n.getErrorPath)(y,n.Type.Str)}`:f;return[t.default.instancePath,(0,e.strConcat)(t.default.instancePath,T)]}function d({keyword:f,it:{errSchemaPath:y}},{schemaPath:T,parentSchema:x}){let D=x?y:e.str`${y}/${f}`;return T&&(D=e.str`${D}${(0,n.getErrorPath)(T,n.Type.Str)}`),[M.schemaPath,D]}},24317:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.resolveSchema=I.getCompilingSchema=I.resolveRef=I.compileSchema=I.SchemaEnv=void 0;const e=o(10117),n=o(80110),t=o(25631),i=o(82690),l=o(78754),C=o(62175);class E{constructor(T){var x;let D;this.refs={},this.dynamicAnchors={},"object"==typeof T.schema&&(D=T.schema),this.schema=T.schema,this.schemaId=T.schemaId,this.root=T.root||this,this.baseId=null!==(x=T.baseId)&&void 0!==x?x:(0,i.normalizeId)(D?.[T.schemaId||"$id"]),this.schemaPath=T.schemaPath,this.localRefs=T.localRefs,this.meta=T.meta,this.$async=D?.$async,this.refs={}}}function u(y){const T=h.call(this,y);if(T)return T;const x=(0,i.getFullPath)(this.opts.uriResolver,y.root.baseId),{es5:D,lines:_}=this.opts.code,{ownProperties:P}=this.opts,O=new e.CodeGen(this.scope,{es5:D,lines:_,ownProperties:P});let A;y.$async&&(A=O.scopeValue("Error",{ref:n.default,code:e._`require("ajv/dist/runtime/validation_error").default`}));const k=O.scopeName("validate");y.validateName=k;const F={gen:O,allErrors:this.opts.allErrors,data:t.default.data,parentData:t.default.parentData,parentDataProperty:t.default.parentDataProperty,dataNames:[t.default.data],dataPathArr:[e.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:O.scopeValue("schema",!0===this.opts.code.source?{ref:y.schema,code:(0,e.stringify)(y.schema)}:{ref:y.schema}),validateName:k,ValidationError:A,schema:y.schema,schemaEnv:y,rootId:x,baseId:y.baseId||x,schemaPath:e.nil,errSchemaPath:y.schemaPath||(this.opts.jtd?"":"#"),errorPath:e._`""`,opts:this.opts,self:this};let W;try{this._compilations.add(y),(0,C.validateFunctionCode)(F),O.optimize(this.opts.code.optimize);const K=O.toString();W=`${O.scopeRefs(t.default.scope)}return ${K}`,this.opts.code.process&&(W=this.opts.code.process(W,y));const Y=new Function(`${t.default.self}`,`${t.default.scope}`,W)(this,this.scope.get());if(this.scope.value(k,{ref:Y}),Y.errors=null,Y.schema=y.schema,Y.schemaEnv=y,y.$async&&(Y.$async=!0),!0===this.opts.code.source&&(Y.source={validateName:k,validateCode:K,scopeValues:O._values}),this.opts.unevaluated){const{props:G,items:H}=F;Y.evaluated={props:G instanceof e.Name?void 0:G,items:H instanceof e.Name?void 0:H,dynamicProps:G instanceof e.Name,dynamicItems:H instanceof e.Name},Y.source&&(Y.source.evaluated=(0,e.stringify)(Y.evaluated))}return y.validate=Y,y}catch(K){throw delete y.validate,delete y.validateName,W&&this.logger.error("Error compiling schema, function code:",W),K}finally{this._compilations.delete(y)}}function M(y){return(0,i.inlineRef)(y.schema,this.opts.inlineRefs)?y.schema:y.validate?y:u.call(this,y)}function h(y){for(const T of this._compilations)if(v(T,y))return T}function v(y,T){return y.schema===T.schema&&y.root===T.root&&y.baseId===T.baseId}function g(y,T){let x;for(;"string"==typeof(x=this.refs[T]);)T=x;return x||this.schemas[T]||d.call(this,y,T)}function d(y,T){const x=this.opts.uriResolver.parse(T),D=(0,i._getFullPath)(this.opts.uriResolver,x);let _=(0,i.getFullPath)(this.opts.uriResolver,y.baseId,void 0);if(Object.keys(y.schema).length>0&&D===_)return f.call(this,x,y);const P=(0,i.normalizeId)(D),O=this.refs[P]||this.schemas[P];if("string"==typeof O){const A=d.call(this,y,O);return"object"!=typeof A?.schema?void 0:f.call(this,x,A)}if("object"==typeof O?.schema){if(O.validate||u.call(this,O),P===(0,i.normalizeId)(T)){const{schema:A}=O,{schemaId:k}=this.opts,F=A[k];return F&&(_=(0,i.resolveUrl)(this.opts.uriResolver,_,F)),new E({schema:A,schemaId:k,root:y,baseId:_})}return f.call(this,x,O)}}I.SchemaEnv=E,I.compileSchema=u,I.resolveRef=function z(y,T,x){var D;x=(0,i.resolveUrl)(this.opts.uriResolver,T,x);const _=y.refs[x];if(_)return _;let P=g.call(this,y,x);if(void 0===P){const O=null===(D=y.localRefs)||void 0===D?void 0:D[x],{schemaId:A}=this.opts;O&&(P=new E({schema:O,schemaId:A,root:y,baseId:T}))}return void 0!==P?y.refs[x]=M.call(this,P):void 0},I.getCompilingSchema=h,I.resolveSchema=d;const p=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function f(y,{baseId:T,schema:x,root:D}){var _;if("/"!==(null===(_=y.fragment)||void 0===_?void 0:_[0]))return;for(const A of y.fragment.slice(1).split("/")){if("boolean"==typeof x)return;const k=x[(0,l.unescapeFragment)(A)];if(void 0===k)return;const F="object"==typeof(x=k)&&x[this.opts.schemaId];!p.has(A)&&F&&(T=(0,i.resolveUrl)(this.opts.uriResolver,T,F))}let P;if("boolean"!=typeof x&&x.$ref&&!(0,l.schemaHasRulesButRef)(x,this.RULES)){const A=(0,i.resolveUrl)(this.opts.uriResolver,T,x.$ref);P=d.call(this,D,A)}const{schemaId:O}=this.opts;return P=P||new E({schema:x,schemaId:O,root:D,baseId:T}),P.schema!==P.root.schema?P:void 0}},25631:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117),n={data:new e.Name("data"),valCxt:new e.Name("valCxt"),instancePath:new e.Name("instancePath"),parentData:new e.Name("parentData"),parentDataProperty:new e.Name("parentDataProperty"),rootData:new e.Name("rootData"),dynamicAnchors:new e.Name("dynamicAnchors"),vErrors:new e.Name("vErrors"),errors:new e.Name("errors"),this:new e.Name("this"),self:new e.Name("self"),scope:new e.Name("scope"),json:new e.Name("json"),jsonPos:new e.Name("jsonPos"),jsonLen:new e.Name("jsonLen"),jsonPart:new e.Name("jsonPart")};I.default=n},95695:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(82690);class n extends Error{constructor(i,l,C,E){super(E||`can't resolve reference ${C} from id ${l}`),this.missingRef=(0,e.resolveUrl)(i,l,C),this.missingSchema=(0,e.normalizeId)((0,e.getFullPath)(i,this.missingRef))}}I.default=n},82690:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.getSchemaRefs=I.resolveUrl=I.normalizeId=I._getFullPath=I.getFullPath=I.inlineRef=void 0;const e=o(78754),n=o(19818),t=o(37037),i=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);I.inlineRef=function l(f,y=!0){return"boolean"==typeof f||(!0===y?!E(f):!!y&&u(f)<=y)};const C=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function E(f){for(const y in f){if(C.has(y))return!0;const T=f[y];if(Array.isArray(T)&&T.some(E)||"object"==typeof T&&E(T))return!0}return!1}function u(f){let y=0;for(const T in f){if("$ref"===T)return 1/0;if(y++,!i.has(T)&&("object"==typeof f[T]&&(0,e.eachItem)(f[T],x=>y+=u(x)),y===1/0))return 1/0}return y}function z(f,y="",T){!1!==T&&(y=v(y));const x=f.parse(y);return M(f,x)}function M(f,y){return f.serialize(y).split("#")[0]+"#"}I.getFullPath=z,I._getFullPath=M;const h=/#\/?$/;function v(f){return f?f.replace(h,""):""}I.normalizeId=v,I.resolveUrl=function g(f,y,T){return T=v(T),f.resolve(y,T)};const d=/^[a-z_][-a-z0-9._]*$/i;I.getSchemaRefs=function p(f,y){if("boolean"==typeof f)return{};const{schemaId:T,uriResolver:x}=this.opts,D=v(f[T]||y),_={"":D},P=z(x,D,!1),O={},A=new Set;return t(f,{allKeys:!0},(W,K,_e,Y)=>{if(void 0===Y)return;const G=P+K;let H=_[Y];function j(ne){if(ne=v(H?(0,this.opts.uriResolver.resolve)(H,ne):ne),A.has(ne))throw F(ne);A.add(ne);let re=this.refs[ne];return"string"==typeof re&&(re=this.refs[re]),"object"==typeof re?k(W,re.schema,ne):ne!==v(G)&&("#"===ne[0]?(k(W,O[ne],ne),O[ne]=W):this.refs[ne]=G),ne}function te(ne){if("string"==typeof ne){if(!d.test(ne))throw new Error(`invalid anchor "${ne}"`);j.call(this,`#${ne}`)}}"string"==typeof W[T]&&(H=j.call(this,W[T])),te.call(this,W.$anchor),te.call(this,W.$dynamicAnchor),_[K]=H}),O;function k(W,K,_e){if(void 0!==K&&!n(W,K))throw F(_e)}function F(W){return new Error(`reference "${W}" resolves to more than one schema`)}}},70491:(nt,I)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.getRules=I.isJSONType=void 0;const e=new Set(["string","number","integer","boolean","null","object","array"]);I.isJSONType=function n(i){return"string"==typeof i&&e.has(i)},I.getRules=function t(){const i={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...i,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},i.number,i.string,i.array,i.object],post:{rules:[]},all:{},keywords:{}}}},78754:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.checkStrictMode=I.getErrorPath=I.Type=I.useFunc=I.setEvaluated=I.evaluatedPropsToName=I.mergeEvaluated=I.eachItem=I.unescapeJsonPointer=I.escapeJsonPointer=I.escapeFragment=I.unescapeFragment=I.schemaRefOrVal=I.schemaHasRulesButRef=I.schemaHasRules=I.checkUnknownRules=I.alwaysValidSchema=I.toHash=void 0;const e=o(10117),n=o(92276);function l(P,O=P.schema){const{opts:A,self:k}=P;if(!A.strictSchema||"boolean"==typeof O)return;const F=k.RULES.keywords;for(const W in O)F[W]||_(P,`unknown keyword: "${W}"`)}function C(P,O){if("boolean"==typeof P)return!P;for(const A in P)if(O[A])return!0;return!1}function h(P){return"number"==typeof P?`${P}`:P.replace(/~/g,"~0").replace(/\//g,"~1")}function v(P){return P.replace(/~1/g,"/").replace(/~0/g,"~")}function d({mergeNames:P,mergeToName:O,mergeValues:A,resultToName:k}){return(F,W,K,_e)=>{const Y=void 0===K?W:K instanceof e.Name?(W instanceof e.Name?P(F,W,K):O(F,W,K),K):W instanceof e.Name?(O(F,K,W),W):A(W,K);return _e!==e.Name||Y instanceof e.Name?Y:k(F,Y)}}function p(P,O){if(!0===O)return P.var("props",!0);const A=P.var("props",e._`{}`);return void 0!==O&&f(P,A,O),A}function f(P,O,A){Object.keys(A).forEach(k=>P.assign(e._`${O}${(0,e.getProperty)(k)}`,!0))}I.toHash=function t(P){const O={};for(const A of P)O[A]=!0;return O},I.alwaysValidSchema=function i(P,O){return"boolean"==typeof O?O:0===Object.keys(O).length||(l(P,O),!C(O,P.self.RULES.all))},I.checkUnknownRules=l,I.schemaHasRules=C,I.schemaHasRulesButRef=function E(P,O){if("boolean"==typeof P)return!P;for(const A in P)if("$ref"!==A&&O.all[A])return!0;return!1},I.schemaRefOrVal=function u({topSchemaRef:P,schemaPath:O},A,k,F){if(!F){if("number"==typeof A||"boolean"==typeof A)return A;if("string"==typeof A)return e._`${A}`}return e._`${P}${O}${(0,e.getProperty)(k)}`},I.unescapeFragment=function z(P){return v(decodeURIComponent(P))},I.escapeFragment=function M(P){return encodeURIComponent(h(P))},I.escapeJsonPointer=h,I.unescapeJsonPointer=v,I.eachItem=function g(P,O){if(Array.isArray(P))for(const A of P)O(A);else O(P)},I.mergeEvaluated={props:d({mergeNames:(P,O,A)=>P.if(e._`${A} !== true && ${O} !== undefined`,()=>{P.if(e._`${O} === true`,()=>P.assign(A,!0),()=>P.assign(A,e._`${A} || {}`).code(e._`Object.assign(${A}, ${O})`))}),mergeToName:(P,O,A)=>P.if(e._`${A} !== true`,()=>{!0===O?P.assign(A,!0):(P.assign(A,e._`${A} || {}`),f(P,A,O))}),mergeValues:(P,O)=>!0===P||{...P,...O},resultToName:p}),items:d({mergeNames:(P,O,A)=>P.if(e._`${A} !== true && ${O} !== undefined`,()=>P.assign(A,e._`${O} === true ? true : ${A} > ${O} ? ${A} : ${O}`)),mergeToName:(P,O,A)=>P.if(e._`${A} !== true`,()=>P.assign(A,!0===O||e._`${A} > ${O} ? ${A} : ${O}`)),mergeValues:(P,O)=>!0===P||Math.max(P,O),resultToName:(P,O)=>P.var("items",O)})},I.evaluatedPropsToName=p,I.setEvaluated=f;const y={};var x,P;function _(P,O,A=P.opts.strictSchema){if(A){if(O=`strict mode: ${O}`,!0===A)throw new Error(O);P.self.logger.warn(O)}}I.useFunc=function T(P,O){return P.scopeValue("func",{ref:O,code:y[O.code]||(y[O.code]=new n._Code(O.code))})},(P=x=I.Type||(I.Type={}))[P.Num=0]="Num",P[P.Str=1]="Str",I.getErrorPath=function D(P,O,A){if(P instanceof e.Name){const k=O===x.Num;return A?k?e._`"[" + ${P} + "]"`:e._`"['" + ${P} + "']"`:k?e._`"/" + ${P}`:e._`"/" + ${P}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return A?(0,e.getProperty)(P).toString():"/"+h(P)},I.checkStrictMode=_},59820:(nt,I)=>{"use strict";function e(t,i){return i.rules.some(l=>n(t,l))}function n(t,i){var l;return void 0!==t[i.keyword]||(null===(l=i.definition.implements)||void 0===l?void 0:l.some(C=>void 0!==t[C]))}Object.defineProperty(I,"__esModule",{value:!0}),I.shouldUseRule=I.shouldUseGroup=I.schemaHasRulesForType=void 0,I.schemaHasRulesForType=function o({schema:t,self:i},l){const C=i.RULES.types[l];return C&&!0!==C&&e(t,C)},I.shouldUseGroup=e,I.shouldUseRule=n},19365:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.boolOrEmptySchema=I.topBoolOrEmptySchema=void 0;const e=o(45618),n=o(10117),t=o(25631),i={message:"boolean schema is false"};function E(u,z){const{gen:M,data:h}=u;(0,e.reportError)({gen:M,keyword:"false schema",data:h,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:u},i,void 0,z)}I.topBoolOrEmptySchema=function l(u){const{gen:z,schema:M,validateName:h}=u;!1===M?E(u,!1):"object"==typeof M&&!0===M.$async?z.return(t.default.data):(z.assign(n._`${h}.errors`,null),z.return(!0))},I.boolOrEmptySchema=function C(u,z){const{gen:M,schema:h}=u;!1===h?(M.var(z,!1),E(u)):M.var(z,!0)}},84730:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.reportTypeError=I.checkDataTypes=I.checkDataType=I.coerceAndCheckDataType=I.getJSONTypes=I.getSchemaTypes=I.DataType=void 0;const e=o(70491),n=o(59820),t=o(45618),i=o(10117),l=o(78754);var C,x;function u(x){const D=Array.isArray(x)?x:x?[x]:[];if(D.every(e.isJSONType))return D;throw new Error("type must be JSONType or JSONType[]: "+D.join(","))}(x=C=I.DataType||(I.DataType={}))[x.Correct=0]="Correct",x[x.Wrong=1]="Wrong",I.getSchemaTypes=function E(x){const D=u(x.type);if(D.includes("null")){if(!1===x.nullable)throw new Error("type: null contradicts nullable: false")}else{if(!D.length&&void 0!==x.nullable)throw new Error('"nullable" cannot be used without "type"');!0===x.nullable&&D.push("null")}return D},I.getJSONTypes=u,I.coerceAndCheckDataType=function z(x,D){const{gen:_,data:P,opts:O}=x,A=function h(x,D){return D?x.filter(_=>M.has(_)||"array"===D&&"array"===_):[]}(D,O.coerceTypes),k=D.length>0&&!(0===A.length&&1===D.length&&(0,n.schemaHasRulesForType)(x,D[0]));if(k){const F=p(D,P,O.strictNumbers,C.Wrong);_.if(F,()=>{A.length?function v(x,D,_){const{gen:P,data:O,opts:A}=x,k=P.let("dataType",i._`typeof ${O}`),F=P.let("coerced",i._`undefined`);"array"===A.coerceTypes&&P.if(i._`${k} == 'object' && Array.isArray(${O}) && ${O}.length == 1`,()=>P.assign(O,i._`${O}[0]`).assign(k,i._`typeof ${O}`).if(p(D,O,A.strictNumbers),()=>P.assign(F,O))),P.if(i._`${F} !== undefined`);for(const K of _)(M.has(K)||"array"===K&&"array"===A.coerceTypes)&&W(K);function W(K){switch(K){case"string":return void P.elseIf(i._`${k} == "number" || ${k} == "boolean"`).assign(F,i._`"" + ${O}`).elseIf(i._`${O} === null`).assign(F,i._`""`);case"number":return void P.elseIf(i._`${k} == "boolean" || ${O} === null + || (${k} == "string" && ${O} && ${O} == +${O})`).assign(F,i._`+${O}`);case"integer":return void P.elseIf(i._`${k} === "boolean" || ${O} === null + || (${k} === "string" && ${O} && ${O} == +${O} && !(${O} % 1))`).assign(F,i._`+${O}`);case"boolean":return void P.elseIf(i._`${O} === "false" || ${O} === 0 || ${O} === null`).assign(F,!1).elseIf(i._`${O} === "true" || ${O} === 1`).assign(F,!0);case"null":return P.elseIf(i._`${O} === "" || ${O} === 0 || ${O} === false`),void P.assign(F,null);case"array":P.elseIf(i._`${k} === "string" || ${k} === "number" + || ${k} === "boolean" || ${O} === null`).assign(F,i._`[${O}]`)}}P.else(),y(x),P.endIf(),P.if(i._`${F} !== undefined`,()=>{P.assign(O,F),function g({gen:x,parentData:D,parentDataProperty:_},P){x.if(i._`${D} !== undefined`,()=>x.assign(i._`${D}[${_}]`,P))}(x,F)})}(x,D,A):y(x)})}return k};const M=new Set(["string","number","integer","boolean","null"]);function d(x,D,_,P=C.Correct){const O=P===C.Correct?i.operators.EQ:i.operators.NEQ;let A;switch(x){case"null":return i._`${D} ${O} null`;case"array":A=i._`Array.isArray(${D})`;break;case"object":A=i._`${D} && typeof ${D} == "object" && !Array.isArray(${D})`;break;case"integer":A=k(i._`!(${D} % 1) && !isNaN(${D})`);break;case"number":A=k();break;default:return i._`typeof ${D} ${O} ${x}`}return P===C.Correct?A:(0,i.not)(A);function k(F=i.nil){return(0,i.and)(i._`typeof ${D} == "number"`,F,_?i._`isFinite(${D})`:i.nil)}}function p(x,D,_,P){if(1===x.length)return d(x[0],D,_,P);let O;const A=(0,l.toHash)(x);if(A.array&&A.object){const k=i._`typeof ${D} != "object"`;O=A.null?k:i._`!${D} || ${k}`,delete A.null,delete A.array,delete A.object}else O=i.nil;A.number&&delete A.integer;for(const k in A)O=(0,i.and)(O,d(k,D,_,P));return O}I.checkDataType=d,I.checkDataTypes=p;const f={message:({schema:x})=>`must be ${x}`,params:({schema:x,schemaValue:D})=>"string"==typeof x?i._`{type: ${x}}`:i._`{type: ${D}}`};function y(x){const D=function T(x){const{gen:D,data:_,schema:P}=x,O=(0,l.schemaRefOrVal)(x,P,"type");return{gen:D,keyword:"type",data:_,schema:P.type,schemaCode:O,schemaValue:O,parentSchema:P,params:{},it:x}}(x);(0,t.reportError)(D,f)}I.reportTypeError=y},62423:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.assignDefaults=void 0;const e=o(10117),n=o(78754);function i(l,C,E){const{gen:u,compositeRule:z,data:M,opts:h}=l;if(void 0===E)return;const v=e._`${M}${(0,e.getProperty)(C)}`;if(z)return void(0,n.checkStrictMode)(l,`default is ignored for: ${v}`);let g=e._`${v} === undefined`;"empty"===h.useDefaults&&(g=e._`${g} || ${v} === null || ${v} === ""`),u.if(g,e._`${v} = ${(0,e.stringify)(E)}`)}I.assignDefaults=function t(l,C){const{properties:E,items:u}=l.schema;if("object"===C&&E)for(const z in E)i(l,z,E[z].default);else"array"===C&&Array.isArray(u)&&u.forEach((z,M)=>i(l,M,z.default))}},62175:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.getData=I.KeywordCxt=I.validateFunctionCode=void 0;const e=o(19365),n=o(84730),t=o(59820),i=o(84730),l=o(62423),C=o(42641),E=o(66117),u=o(10117),z=o(25631),M=o(82690),h=o(78754),v=o(45618);function d({gen:ye,validateName:ee,schema:Be,schemaEnv:Re,opts:ct},Ae){ct.code.es5?ye.func(ee,u._`${z.default.data}, ${z.default.valCxt}`,Re.$async,()=>{ye.code(u._`"use strict"; ${x(Be,ct)}`),function f(ye,ee){ye.if(z.default.valCxt,()=>{ye.var(z.default.instancePath,u._`${z.default.valCxt}.${z.default.instancePath}`),ye.var(z.default.parentData,u._`${z.default.valCxt}.${z.default.parentData}`),ye.var(z.default.parentDataProperty,u._`${z.default.valCxt}.${z.default.parentDataProperty}`),ye.var(z.default.rootData,u._`${z.default.valCxt}.${z.default.rootData}`),ee.dynamicRef&&ye.var(z.default.dynamicAnchors,u._`${z.default.valCxt}.${z.default.dynamicAnchors}`)},()=>{ye.var(z.default.instancePath,u._`""`),ye.var(z.default.parentData,u._`undefined`),ye.var(z.default.parentDataProperty,u._`undefined`),ye.var(z.default.rootData,z.default.data),ee.dynamicRef&&ye.var(z.default.dynamicAnchors,u._`{}`)})}(ye,ct),ye.code(Ae)}):ye.func(ee,u._`${z.default.data}, ${function p(ye){return u._`{${z.default.instancePath}="", ${z.default.parentData}, ${z.default.parentDataProperty}, ${z.default.rootData}=${z.default.data}${ye.dynamicRef?u._`, ${z.default.dynamicAnchors}={}`:u.nil}}={}`}(ct)}`,Re.$async,()=>ye.code(x(Be,ct)).code(Ae))}function x(ye,ee){const Be="object"==typeof ye&&ye[ee.schemaId];return Be&&(ee.code.source||ee.code.process)?u._`/*# sourceURL=${Be} */`:u.nil}function _({schema:ye,self:ee}){if("boolean"==typeof ye)return!ye;for(const Be in ye)if(ee.RULES.all[Be])return!0;return!1}function P(ye){return"boolean"!=typeof ye.schema}function A(ye){(0,h.checkUnknownRules)(ye),function F(ye){const{schema:ee,errSchemaPath:Be,opts:Re,self:ct}=ye;ee.$ref&&Re.ignoreKeywordsWithRef&&(0,h.schemaHasRulesButRef)(ee,ct.RULES)&&ct.logger.warn(`$ref: keywords ignored in schema at path "${Be}"`)}(ye)}function k(ye,ee){if(ye.opts.jtd)return j(ye,[],!1,ee);const Be=(0,n.getSchemaTypes)(ye.schema);j(ye,Be,!(0,n.coerceAndCheckDataType)(ye,Be),ee)}function Y({gen:ye,schemaEnv:ee,schema:Be,errSchemaPath:Re,opts:ct}){const Ae=Be.$comment;if(!0===ct.$comment)ye.code(u._`${z.default.self}.logger.log(${Ae})`);else if("function"==typeof ct.$comment){const Mt=u.str`${Re}/$comment`,je=ye.scopeValue("root",{ref:ee.root});ye.code(u._`${z.default.self}.opts.$comment(${Ae}, ${Mt}, ${je}.schema)`)}}function j(ye,ee,Be,Re){const{gen:ct,schema:Ae,data:Mt,allErrors:je,opts:ot,self:mt}=ye,{RULES:we}=mt;function de(U){(0,t.shouldUseGroup)(Ae,U)&&(U.type?(ct.if((0,i.checkDataType)(U.type,Mt,ot.strictNumbers)),te(ye,U),1===ee.length&&ee[0]===U.type&&Be&&(ct.else(),(0,i.reportTypeError)(ye)),ct.endIf()):te(ye,U),je||ct.if(u._`${z.default.errors} === ${Re||0}`))}!Ae.$ref||!ot.ignoreKeywordsWithRef&&(0,h.schemaHasRulesButRef)(Ae,we)?(ot.jtd||function ne(ye,ee){ye.schemaEnv.meta||!ye.opts.strictTypes||(function pe(ye,ee){if(ee.length){if(!ye.dataTypes.length)return void(ye.dataTypes=ee);ee.forEach(Be=>{ce(ye.dataTypes,Be)||ie(ye,`type "${Be}" not allowed by context "${ye.dataTypes.join(",")}"`)}),function Q(ye,ee){const Be=[];for(const Re of ye.dataTypes)ce(ee,Re)?Be.push(Re):ee.includes("integer")&&"number"===Re&&Be.push("integer");ye.dataTypes=Be}(ye,ee)}}(ye,ee),ye.opts.allowUnionTypes||function re(ye,ee){ee.length>1&&(2!==ee.length||!ee.includes("null"))&&ie(ye,"use allowUnionTypes to allow union type keyword")}(ye,ee),function be(ye,ee){const Be=ye.self.RULES.all;for(const Re in Be){const ct=Be[Re];if("object"==typeof ct&&(0,t.shouldUseRule)(ye.schema,ct)){const{type:Ae}=ct.definition;Ae.length&&!Ae.some(Mt=>le(ee,Mt))&&ie(ye,`missing type "${Ae.join(",")}" for keyword "${Re}"`)}}}(ye,ye.dataTypes))}(ye,ee),ct.block(()=>{for(const U of we.rules)de(U);de(we.post)})):ct.block(()=>xe(ye,"$ref",we.all.$ref.definition))}function te(ye,ee){const{gen:Be,schema:Re,opts:{useDefaults:ct}}=ye;ct&&(0,l.assignDefaults)(ye,ee.type),Be.block(()=>{for(const Ae of ee.rules)(0,t.shouldUseRule)(Re,Ae)&&xe(ye,Ae.keyword,Ae.definition,ee.type)})}function le(ye,ee){return ye.includes(ee)||"number"===ee&&ye.includes("integer")}function ce(ye,ee){return ye.includes(ee)||"integer"===ee&&ye.includes("number")}function ie(ye,ee){(0,h.checkStrictMode)(ye,ee+=` at "${ye.schemaEnv.baseId+ye.errSchemaPath}" (strictTypes)`,ye.opts.strictTypes)}I.validateFunctionCode=function g(ye){P(ye)&&(A(ye),_(ye))?function y(ye){const{schema:ee,opts:Be,gen:Re}=ye;d(ye,()=>{Be.$comment&&ee.$comment&&Y(ye),function W(ye){const{schema:ee,opts:Be}=ye;void 0!==ee.default&&Be.useDefaults&&Be.strictSchema&&(0,h.checkStrictMode)(ye,"default is ignored in the schema root")}(ye),Re.let(z.default.vErrors,null),Re.let(z.default.errors,0),Be.unevaluated&&function T(ye){const{gen:ee,validateName:Be}=ye;ye.evaluated=ee.const("evaluated",u._`${Be}.evaluated`),ee.if(u._`${ye.evaluated}.dynamicProps`,()=>ee.assign(u._`${ye.evaluated}.props`,u._`undefined`)),ee.if(u._`${ye.evaluated}.dynamicItems`,()=>ee.assign(u._`${ye.evaluated}.items`,u._`undefined`))}(ye),k(ye),function G(ye){const{gen:ee,schemaEnv:Be,validateName:Re,ValidationError:ct,opts:Ae}=ye;Be.$async?ee.if(u._`${z.default.errors} === 0`,()=>ee.return(z.default.data),()=>ee.throw(u._`new ${ct}(${z.default.vErrors})`)):(ee.assign(u._`${Re}.errors`,z.default.vErrors),Ae.unevaluated&&function H({gen:ye,evaluated:ee,props:Be,items:Re}){Be instanceof u.Name&&ye.assign(u._`${ee}.props`,Be),Re instanceof u.Name&&ye.assign(u._`${ee}.items`,Re)}(ye),ee.return(u._`${z.default.errors} === 0`))}(ye)})}(ye):d(ye,()=>(0,e.topBoolOrEmptySchema)(ye))};class ae{constructor(ee,Be,Re){if((0,C.validateKeywordUsage)(ee,Be,Re),this.gen=ee.gen,this.allErrors=ee.allErrors,this.keyword=Re,this.data=ee.data,this.schema=ee.schema[Re],this.$data=Be.$data&&ee.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,h.schemaRefOrVal)(ee,this.schema,Re,this.$data),this.schemaType=Be.schemaType,this.parentSchema=ee.schema,this.params={},this.it=ee,this.def=Be,this.$data)this.schemaCode=ee.gen.const("vSchema",q(this.$data,ee));else if(this.schemaCode=this.schemaValue,!(0,C.validSchemaType)(this.schema,Be.schemaType,Be.allowUndefined))throw new Error(`${Re} value must be ${JSON.stringify(Be.schemaType)}`);("code"in Be?Be.trackErrors:!1!==Be.errors)&&(this.errsCount=ee.gen.const("_errs",z.default.errors))}result(ee,Be,Re){this.failResult((0,u.not)(ee),Be,Re)}failResult(ee,Be,Re){this.gen.if(ee),Re?Re():this.error(),Be?(this.gen.else(),Be(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(ee,Be){this.failResult((0,u.not)(ee),void 0,Be)}fail(ee){if(void 0===ee)return this.error(),void(this.allErrors||this.gen.if(!1));this.gen.if(ee),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(ee){if(!this.$data)return this.fail(ee);const{schemaCode:Be}=this;this.fail(u._`${Be} !== undefined && (${(0,u.or)(this.invalid$data(),ee)})`)}error(ee,Be,Re){if(Be)return this.setParams(Be),this._error(ee,Re),void this.setParams({});this._error(ee,Re)}_error(ee,Be){(ee?v.reportExtraError:v.reportError)(this,this.def.error,Be)}$dataError(){(0,v.reportError)(this,this.def.$dataError||v.keyword$DataError)}reset(){if(void 0===this.errsCount)throw new Error('add "trackErrors" to keyword definition');(0,v.resetErrorsCount)(this.gen,this.errsCount)}ok(ee){this.allErrors||this.gen.if(ee)}setParams(ee,Be){Be?Object.assign(this.params,ee):this.params=ee}block$data(ee,Be,Re=u.nil){this.gen.block(()=>{this.check$data(ee,Re),Be()})}check$data(ee=u.nil,Be=u.nil){if(!this.$data)return;const{gen:Re,schemaCode:ct,schemaType:Ae,def:Mt}=this;Re.if((0,u.or)(u._`${ct} === undefined`,Be)),ee!==u.nil&&Re.assign(ee,!0),(Ae.length||Mt.validateSchema)&&(Re.elseIf(this.invalid$data()),this.$dataError(),ee!==u.nil&&Re.assign(ee,!1)),Re.else()}invalid$data(){const{gen:ee,schemaCode:Be,schemaType:Re,def:ct,it:Ae}=this;return(0,u.or)(function Mt(){if(Re.length){if(!(Be instanceof u.Name))throw new Error("ajv implementation error");const ot=Array.isArray(Re)?Re:[Re];return u._`${(0,i.checkDataTypes)(ot,Be,Ae.opts.strictNumbers,i.DataType.Wrong)}`}return u.nil}(),function je(){if(ct.validateSchema){const ot=ee.scopeValue("validate$data",{ref:ct.validateSchema});return u._`!${ot}(${Be})`}return u.nil}())}subschema(ee,Be){const Re=(0,E.getSubschema)(this.it,ee);(0,E.extendSubschemaData)(Re,this.it,ee),(0,E.extendSubschemaMode)(Re,ee);const ct={...this.it,...Re,items:void 0,props:void 0};return function D(ye,ee){P(ye)&&(A(ye),_(ye))?function O(ye,ee){const{schema:Be,gen:Re,opts:ct}=ye;ct.$comment&&Be.$comment&&Y(ye),function K(ye){const ee=ye.schema[ye.opts.schemaId];ee&&(ye.baseId=(0,M.resolveUrl)(ye.opts.uriResolver,ye.baseId,ee))}(ye),function _e(ye){if(ye.schema.$async&&!ye.schemaEnv.$async)throw new Error("async schema in sync schema")}(ye);const Ae=Re.const("_errs",z.default.errors);k(ye,Ae),Re.var(ee,u._`${Ae} === ${z.default.errors}`)}(ye,ee):(0,e.boolOrEmptySchema)(ye,ee)}(ct,Be),ct}mergeEvaluated(ee,Be){const{it:Re,gen:ct}=this;Re.opts.unevaluated&&(!0!==Re.props&&void 0!==ee.props&&(Re.props=h.mergeEvaluated.props(ct,ee.props,Re.props,Be)),!0!==Re.items&&void 0!==ee.items&&(Re.items=h.mergeEvaluated.items(ct,ee.items,Re.items,Be)))}mergeValidEvaluated(ee,Be){const{it:Re,gen:ct}=this;if(Re.opts.unevaluated&&(!0!==Re.props||!0!==Re.items))return ct.if(Be,()=>this.mergeEvaluated(ee,u.Name)),!0}}function xe(ye,ee,Be,Re){const ct=new ae(ye,Be,ee);"code"in Be?Be.code(ct,Re):ct.$data&&Be.validate?(0,C.funcKeywordCode)(ct,Be):"macro"in Be?(0,C.macroKeywordCode)(ct,Be):(Be.compile||Be.validate)&&(0,C.funcKeywordCode)(ct,Be)}I.KeywordCxt=ae;const Me=/^\/(?:[^~]|~0|~1)*$/,Ye=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function q(ye,{dataLevel:ee,dataNames:Be,dataPathArr:Re}){let ct,Ae;if(""===ye)return z.default.rootData;if("/"===ye[0]){if(!Me.test(ye))throw new Error(`Invalid JSON-pointer: ${ye}`);ct=ye,Ae=z.default.rootData}else{const mt=Ye.exec(ye);if(!mt)throw new Error(`Invalid JSON-pointer: ${ye}`);const we=+mt[1];if(ct=mt[2],"#"===ct){if(we>=ee)throw new Error(ot("property/index",we));return Re[ee-we]}if(we>ee)throw new Error(ot("data",we));if(Ae=Be[ee-we],!ct)return Ae}let Mt=Ae;const je=ct.split("/");for(const mt of je)mt&&(Ae=u._`${Ae}${(0,u.getProperty)((0,h.unescapeJsonPointer)(mt))}`,Mt=u._`${Mt} && ${Ae}`);return Mt;function ot(mt,we){return`Cannot access ${mt} ${we} levels up, current level is ${ee}`}}I.getData=q},42641:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.validateKeywordUsage=I.validSchemaType=I.funcKeywordCode=I.macroKeywordCode=void 0;const e=o(10117),n=o(25631),t=o(89508),i=o(45618);function E(g){const{gen:d,data:p,it:f}=g;d.if(f.parentData,()=>d.assign(p,e._`${f.parentData}[${f.parentDataProperty}]`))}function M(g,d,p){if(void 0===p)throw new Error(`keyword "${d}" failed to compile`);return g.scopeValue("keyword","function"==typeof p?{ref:p}:{ref:p,code:(0,e.stringify)(p)})}I.macroKeywordCode=function l(g,d){const{gen:p,keyword:f,schema:y,parentSchema:T,it:x}=g,D=d.macro.call(x.self,y,T,x),_=M(p,f,D);!1!==x.opts.validateSchema&&x.self.validateSchema(D,!0);const P=p.name("valid");g.subschema({schema:D,schemaPath:e.nil,errSchemaPath:`${x.errSchemaPath}/${f}`,topSchemaRef:_,compositeRule:!0},P),g.pass(P,()=>g.error(!0))},I.funcKeywordCode=function C(g,d){var p;const{gen:f,keyword:y,schema:T,parentSchema:x,$data:D,it:_}=g;!function z({schemaEnv:g},d){if(d.async&&!g.$async)throw new Error("async keyword in sync schema")}(_,d);const P=!D&&d.compile?d.compile.call(_.self,T,x,_):d.validate,O=M(f,y,P),A=f.let("valid");function K(Y=(d.async?e._`await `:e.nil)){f.assign(A,e._`${Y}${(0,t.callValidateCode)(g,O,_.opts.passContext?n.default.this:n.default.self,!("compile"in d&&!D||!1===d.schema))}`,d.modifying)}function _e(Y){var G;f.if((0,e.not)(null!==(G=d.valid)&&void 0!==G?G:A),Y)}g.block$data(A,function k(){if(!1===d.errors)K(),d.modifying&&E(g),_e(()=>g.error());else{const Y=d.async?function F(){const Y=f.let("ruleErrs",null);return f.try(()=>K(e._`await `),G=>f.assign(A,!1).if(e._`${G} instanceof ${_.ValidationError}`,()=>f.assign(Y,e._`${G}.errors`),()=>f.throw(G))),Y}():function W(){const Y=e._`${O}.errors`;return f.assign(Y,null),K(e.nil),Y}();d.modifying&&E(g),_e(()=>function u(g,d){const{gen:p}=g;p.if(e._`Array.isArray(${d})`,()=>{p.assign(n.default.vErrors,e._`${n.default.vErrors} === null ? ${d} : ${n.default.vErrors}.concat(${d})`).assign(n.default.errors,e._`${n.default.vErrors}.length`),(0,i.extendErrors)(g)},()=>g.error())}(g,Y))}}),g.ok(null!==(p=d.valid)&&void 0!==p?p:A)},I.validSchemaType=function h(g,d,p=!1){return!d.length||d.some(f=>"array"===f?Array.isArray(g):"object"===f?g&&"object"==typeof g&&!Array.isArray(g):typeof g==f||p&&typeof g>"u")},I.validateKeywordUsage=function v({schema:g,opts:d,self:p,errSchemaPath:f},y,T){if(Array.isArray(y.keyword)?!y.keyword.includes(T):y.keyword!==T)throw new Error("ajv implementation error");const x=y.dependencies;if(x?.some(D=>!Object.prototype.hasOwnProperty.call(g,D)))throw new Error(`parent schema must have dependencies of ${T}: ${x.join(",")}`);if(y.validateSchema&&!y.validateSchema(g[T])){const _=`keyword "${T}" value is invalid at path "${f}": `+p.errorsText(y.validateSchema.errors);if("log"!==d.validateSchema)throw new Error(_);p.logger.error(_)}}},66117:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.extendSubschemaMode=I.extendSubschemaData=I.getSubschema=void 0;const e=o(10117),n=o(78754);I.getSubschema=function t(C,{keyword:E,schemaProp:u,schema:z,schemaPath:M,errSchemaPath:h,topSchemaRef:v}){if(void 0!==E&&void 0!==z)throw new Error('both "keyword" and "schema" passed, only one allowed');if(void 0!==E){const g=C.schema[E];return void 0===u?{schema:g,schemaPath:e._`${C.schemaPath}${(0,e.getProperty)(E)}`,errSchemaPath:`${C.errSchemaPath}/${E}`}:{schema:g[u],schemaPath:e._`${C.schemaPath}${(0,e.getProperty)(E)}${(0,e.getProperty)(u)}`,errSchemaPath:`${C.errSchemaPath}/${E}/${(0,n.escapeFragment)(u)}`}}if(void 0!==z){if(void 0===M||void 0===h||void 0===v)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:z,schemaPath:M,topSchemaRef:v,errSchemaPath:h}}throw new Error('either "keyword" or "schema" must be passed')},I.extendSubschemaData=function i(C,E,{dataProp:u,dataPropType:z,data:M,dataTypes:h,propertyName:v}){if(void 0!==M&&void 0!==u)throw new Error('both "data" and "dataProp" passed, only one allowed');const{gen:g}=E;if(void 0!==u){const{errorPath:p,dataPathArr:f,opts:y}=E;d(g.let("data",e._`${E.data}${(0,e.getProperty)(u)}`,!0)),C.errorPath=e.str`${p}${(0,n.getErrorPath)(u,z,y.jsPropertySyntax)}`,C.parentDataProperty=e._`${u}`,C.dataPathArr=[...f,C.parentDataProperty]}function d(p){C.data=p,C.dataLevel=E.dataLevel+1,C.dataTypes=[],E.definedProperties=new Set,C.parentData=E.data,C.dataNames=[...E.dataNames,p]}void 0!==M&&(d(M instanceof e.Name?M:g.let("data",M,!0)),void 0!==v&&(C.propertyName=v)),h&&(C.dataTypes=h)},I.extendSubschemaMode=function l(C,{jtdDiscriminator:E,jtdMetadata:u,compositeRule:z,createErrors:M,allErrors:h}){void 0!==z&&(C.compositeRule=z),void 0!==M&&(C.createErrors=M),void 0!==h&&(C.allErrors=h),C.jtdDiscriminator=E,C.jtdMetadata=u}},28385:(nt,I,o)=>{"use strict";var e=o(59344).default;Object.defineProperty(I,"__esModule",{value:!0}),I.CodeGen=I.Name=I.nil=I.stringify=I.str=I._=I.KeywordCxt=void 0;var n=o(62175);Object.defineProperty(I,"KeywordCxt",{enumerable:!0,get:function(){return n.KeywordCxt}});var t=o(10117);Object.defineProperty(I,"_",{enumerable:!0,get:function(){return t._}}),Object.defineProperty(I,"str",{enumerable:!0,get:function(){return t.str}}),Object.defineProperty(I,"stringify",{enumerable:!0,get:function(){return t.stringify}}),Object.defineProperty(I,"nil",{enumerable:!0,get:function(){return t.nil}}),Object.defineProperty(I,"Name",{enumerable:!0,get:function(){return t.Name}}),Object.defineProperty(I,"CodeGen",{enumerable:!0,get:function(){return t.CodeGen}});const i=o(80110),l=o(95695),C=o(70491),E=o(24317),u=o(10117),z=o(82690),M=o(84730),h=o(78754),v=o(64775),g=o(75573),d=(re,be)=>new RegExp(re,be);d.code="new RegExp";const p=["removeAdditional","useDefaults","coerceTypes"],f=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),y={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},T={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'};function D(re){var be,le,ce,Q,ie,ae,xe,Me,Ye,q,ye,ee,Be,Re,ct,Ae,Mt,je,ot,mt,we,de,U,B,Ee;const Ie=re.strict,Ne=null===(be=re.code)||void 0===be?void 0:be.optimize,pt=!0===Ne||void 0===Ne?1:Ne||0,Dt=null!==(ce=null===(le=re.code)||void 0===le?void 0:le.regExp)&&void 0!==ce?ce:d,Lt=null!==(Q=re.uriResolver)&&void 0!==Q?Q:g.default;return{strictSchema:null===(ae=null!==(ie=re.strictSchema)&&void 0!==ie?ie:Ie)||void 0===ae||ae,strictNumbers:null===(Me=null!==(xe=re.strictNumbers)&&void 0!==xe?xe:Ie)||void 0===Me||Me,strictTypes:null!==(q=null!==(Ye=re.strictTypes)&&void 0!==Ye?Ye:Ie)&&void 0!==q?q:"log",strictTuples:null!==(ee=null!==(ye=re.strictTuples)&&void 0!==ye?ye:Ie)&&void 0!==ee?ee:"log",strictRequired:null!==(Re=null!==(Be=re.strictRequired)&&void 0!==Be?Be:Ie)&&void 0!==Re&&Re,code:re.code?{...re.code,optimize:pt,regExp:Dt}:{optimize:pt,regExp:Dt},loopRequired:null!==(ct=re.loopRequired)&&void 0!==ct?ct:200,loopEnum:null!==(Ae=re.loopEnum)&&void 0!==Ae?Ae:200,meta:null===(Mt=re.meta)||void 0===Mt||Mt,messages:null===(je=re.messages)||void 0===je||je,inlineRefs:null===(ot=re.inlineRefs)||void 0===ot||ot,schemaId:null!==(mt=re.schemaId)&&void 0!==mt?mt:"$id",addUsedSchema:null===(we=re.addUsedSchema)||void 0===we||we,validateSchema:null===(de=re.validateSchema)||void 0===de||de,validateFormats:null===(U=re.validateFormats)||void 0===U||U,unicodeRegExp:null===(B=re.unicodeRegExp)||void 0===B||B,int32range:null===(Ee=re.int32range)||void 0===Ee||Ee,uriResolver:Lt}}class _{constructor(be={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,be=this.opts={...be,...D(be)};const{es5:le,lines:ce}=this.opts.code;this.scope=new u.ValueScope({scope:{},prefixes:f,es5:le,lines:ce}),this.logger=function _e(re){if(!1===re)return K;if(void 0===re)return console;if(re.log&&re.warn&&re.error)return re;throw new Error("logger must implement log, warn and error methods")}(be.logger);const Q=be.validateFormats;be.validateFormats=!1,this.RULES=(0,C.getRules)(),P.call(this,y,be,"NOT SUPPORTED"),P.call(this,T,be,"DEPRECATED","warn"),this._metaOpts=W.call(this),be.formats&&k.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),be.keywords&&F.call(this,be.keywords),"object"==typeof be.meta&&this.addMetaSchema(be.meta),A.call(this),be.validateFormats=Q}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){const{$data:be,meta:le,schemaId:ce}=this.opts;let Q=v;"id"===ce&&(Q={...v},Q.id=Q.$id,delete Q.$id),le&&be&&this.addMetaSchema(Q,Q[ce],!1)}defaultMeta(){const{meta:be,schemaId:le}=this.opts;return this.opts.defaultMeta="object"==typeof be?be[le]||be:void 0}validate(be,le){let ce;if("string"==typeof be){if(ce=this.getSchema(be),!ce)throw new Error(`no schema with key or ref "${be}"`)}else ce=this.compile(be);const Q=ce(le);return"$async"in ce||(this.errors=ce.errors),Q}compile(be,le){const ce=this._addSchema(be,le);return ce.validate||this._compileSchemaEnv(ce)}compileAsync(be,le){if("function"!=typeof this.opts.loadSchema)throw new Error("options.loadSchema should be a function");const{loadSchema:ce}=this.opts;return Q.call(this,be,le);function Q(ct,Ae){return ie.apply(this,arguments)}function ie(){return(ie=e(function*(ct,Ae){yield ae.call(this,ct.$schema);const Mt=this._addSchema(ct,Ae);return Mt.validate||Me.call(this,Mt)})).apply(this,arguments)}function ae(ct){return xe.apply(this,arguments)}function xe(){return(xe=e(function*(ct){ct&&!this.getSchema(ct)&&(yield Q.call(this,{$ref:ct},!0))})).apply(this,arguments)}function Me(ct){return Ye.apply(this,arguments)}function Ye(){return(Ye=e(function*(ct){try{return this._compileSchemaEnv(ct)}catch(Ae){if(!(Ae instanceof l.default))throw Ae;return q.call(this,Ae),yield ye.call(this,Ae.missingSchema),Me.call(this,ct)}})).apply(this,arguments)}function q({missingSchema:ct,missingRef:Ae}){if(this.refs[ct])throw new Error(`AnySchema ${ct} is loaded but ${Ae} cannot be resolved`)}function ye(ct){return ee.apply(this,arguments)}function ee(){return(ee=e(function*(ct){const Ae=yield Be.call(this,ct);this.refs[ct]||(yield ae.call(this,Ae.$schema)),this.refs[ct]||this.addSchema(Ae,ct,le)})).apply(this,arguments)}function Be(ct){return Re.apply(this,arguments)}function Re(){return(Re=e(function*(ct){const Ae=this._loading[ct];if(Ae)return Ae;try{return yield this._loading[ct]=ce(ct)}finally{delete this._loading[ct]}})).apply(this,arguments)}}addSchema(be,le,ce,Q=this.opts.validateSchema){if(Array.isArray(be)){for(const ae of be)this.addSchema(ae,void 0,ce,Q);return this}let ie;if("object"==typeof be){const{schemaId:ae}=this.opts;if(ie=be[ae],void 0!==ie&&"string"!=typeof ie)throw new Error(`schema ${ae} must be string`)}return le=(0,z.normalizeId)(le||ie),this._checkUnique(le),this.schemas[le]=this._addSchema(be,ce,le,Q,!0),this}addMetaSchema(be,le,ce=this.opts.validateSchema){return this.addSchema(be,le,!0,ce),this}validateSchema(be,le){if("boolean"==typeof be)return!0;let ce;if(ce=be.$schema,void 0!==ce&&"string"!=typeof ce)throw new Error("$schema must be a string");if(ce=ce||this.opts.defaultMeta||this.defaultMeta(),!ce)return this.logger.warn("meta-schema not available"),this.errors=null,!0;const Q=this.validate(ce,be);if(!Q&&le){const ie="schema is invalid: "+this.errorsText();if("log"!==this.opts.validateSchema)throw new Error(ie);this.logger.error(ie)}return Q}getSchema(be){let le;for(;"string"==typeof(le=O.call(this,be));)be=le;if(void 0===le){const{schemaId:ce}=this.opts,Q=new E.SchemaEnv({schema:{},schemaId:ce});if(le=E.resolveSchema.call(this,Q,be),!le)return;this.refs[be]=le}return le.validate||this._compileSchemaEnv(le)}removeSchema(be){if(be instanceof RegExp)return this._removeAllSchemas(this.schemas,be),this._removeAllSchemas(this.refs,be),this;switch(typeof be){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{const le=O.call(this,be);return"object"==typeof le&&this._cache.delete(le.schema),delete this.schemas[be],delete this.refs[be],this}case"object":{this._cache.delete(be);let ce=be[this.opts.schemaId];return ce&&(ce=(0,z.normalizeId)(ce),delete this.schemas[ce],delete this.refs[ce]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(be){for(const le of be)this.addKeyword(le);return this}addKeyword(be,le){let ce;if("string"==typeof be)ce=be,"object"==typeof le&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),le.keyword=ce);else{if("object"!=typeof be||void 0!==le)throw new Error("invalid addKeywords parameters");if(ce=(le=be).keyword,Array.isArray(ce)&&!ce.length)throw new Error("addKeywords: keyword must be string or non-empty array")}if(G.call(this,ce,le),!le)return(0,h.eachItem)(ce,ie=>H.call(this,ie)),this;te.call(this,le);const Q={...le,type:(0,M.getJSONTypes)(le.type),schemaType:(0,M.getJSONTypes)(le.schemaType)};return(0,h.eachItem)(ce,0===Q.type.length?ie=>H.call(this,ie,Q):ie=>Q.type.forEach(ae=>H.call(this,ie,Q,ae))),this}getKeyword(be){const le=this.RULES.all[be];return"object"==typeof le?le.definition:!!le}removeKeyword(be){const{RULES:le}=this;delete le.keywords[be],delete le.all[be];for(const ce of le.rules){const Q=ce.rules.findIndex(ie=>ie.keyword===be);Q>=0&&ce.rules.splice(Q,1)}return this}addFormat(be,le){return"string"==typeof le&&(le=new RegExp(le)),this.formats[be]=le,this}errorsText(be=this.errors,{separator:le=", ",dataVar:ce="data"}={}){return be&&0!==be.length?be.map(Q=>`${ce}${Q.instancePath} ${Q.message}`).reduce((Q,ie)=>Q+le+ie):"No errors"}$dataMetaSchema(be,le){const ce=this.RULES.all;be=JSON.parse(JSON.stringify(be));for(const Q of le){const ie=Q.split("/").slice(1);let ae=be;for(const xe of ie)ae=ae[xe];for(const xe in ce){const Me=ce[xe];if("object"!=typeof Me)continue;const{$data:Ye}=Me.definition,q=ae[xe];Ye&&q&&(ae[xe]=pe(q))}}return be}_removeAllSchemas(be,le){for(const ce in be){const Q=be[ce];(!le||le.test(ce))&&("string"==typeof Q?delete be[ce]:Q&&!Q.meta&&(this._cache.delete(Q.schema),delete be[ce]))}}_addSchema(be,le,ce,Q=this.opts.validateSchema,ie=this.opts.addUsedSchema){let ae;const{schemaId:xe}=this.opts;if("object"==typeof be)ae=be[xe];else{if(this.opts.jtd)throw new Error("schema must be object");if("boolean"!=typeof be)throw new Error("schema must be object or boolean")}let Me=this._cache.get(be);if(void 0!==Me)return Me;ce=(0,z.normalizeId)(ae||ce);const Ye=z.getSchemaRefs.call(this,be,ce);return Me=new E.SchemaEnv({schema:be,schemaId:xe,meta:le,baseId:ce,localRefs:Ye}),this._cache.set(Me.schema,Me),ie&&!ce.startsWith("#")&&(ce&&this._checkUnique(ce),this.refs[ce]=Me),Q&&this.validateSchema(be,!0),Me}_checkUnique(be){if(this.schemas[be]||this.refs[be])throw new Error(`schema with key or id "${be}" already exists`)}_compileSchemaEnv(be){if(be.meta?this._compileMetaSchema(be):E.compileSchema.call(this,be),!be.validate)throw new Error("ajv implementation error");return be.validate}_compileMetaSchema(be){const le=this.opts;this.opts=this._metaOpts;try{E.compileSchema.call(this,be)}finally{this.opts=le}}}function P(re,be,le,ce="error"){for(const Q in re)Q in be&&this.logger[ce](`${le}: option ${Q}. ${re[Q]}`)}function O(re){return re=(0,z.normalizeId)(re),this.schemas[re]||this.refs[re]}function A(){const re=this.opts.schemas;if(re)if(Array.isArray(re))this.addSchema(re);else for(const be in re)this.addSchema(re[be],be)}function k(){for(const re in this.opts.formats){const be=this.opts.formats[re];be&&this.addFormat(re,be)}}function F(re){if(Array.isArray(re))this.addVocabulary(re);else{this.logger.warn("keywords option as map is deprecated, pass array");for(const be in re){const le=re[be];le.keyword||(le.keyword=be),this.addKeyword(le)}}}function W(){const re={...this.opts};for(const be of p)delete re[be];return re}I.default=_,_.ValidationError=i.default,_.MissingRefError=l.default;const K={log(){},warn(){},error(){}},Y=/^[a-z_$][a-z0-9_$:-]*$/i;function G(re,be){const{RULES:le}=this;if((0,h.eachItem)(re,ce=>{if(le.keywords[ce])throw new Error(`Keyword ${ce} is already defined`);if(!Y.test(ce))throw new Error(`Keyword ${ce} has invalid name`)}),be&&be.$data&&!("code"in be)&&!("validate"in be))throw new Error('$data keyword must have "code" or "validate" function')}function H(re,be,le){var ce;const Q=be?.post;if(le&&Q)throw new Error('keyword with "post" flag cannot have "type"');const{RULES:ie}=this;let ae=Q?ie.post:ie.rules.find(({type:Me})=>Me===le);if(ae||(ae={type:le,rules:[]},ie.rules.push(ae)),ie.keywords[re]=!0,!be)return;const xe={keyword:re,definition:{...be,type:(0,M.getJSONTypes)(be.type),schemaType:(0,M.getJSONTypes)(be.schemaType)}};be.before?j.call(this,ae,xe,be.before):ae.rules.push(xe),ie.all[re]=xe,null===(ce=be.implements)||void 0===ce||ce.forEach(Me=>this.addKeyword(Me))}function j(re,be,le){const ce=re.rules.findIndex(Q=>Q.keyword===le);ce>=0?re.rules.splice(ce,0,be):(re.rules.push(be),this.logger.warn(`rule ${le} is not defined`))}function te(re){let{metaSchema:be}=re;void 0!==be&&(re.$data&&this.opts.$data&&(be=pe(be)),re.validateSchema=this.compile(be,!0))}const ne={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function pe(re){return{anyOf:[re,ne]}}},74747:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(19818);e.code='require("ajv/dist/runtime/equal").default',I.default=e},81197:(nt,I)=>{"use strict";function o(e){const n=e.length;let l,t=0,i=0;for(;i=55296&&l<=56319&&i{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(96064);e.code='require("ajv/dist/runtime/uri").default',I.default=e},80110:(nt,I)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});class o extends Error{constructor(n){super("validation failed"),this.errors=n,this.ajv=this.validation=!0}}I.default=o},92952:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.validateAdditionalItems=void 0;const e=o(10117),n=o(78754),i={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:{message:({params:{len:C}})=>e.str`must NOT have more than ${C} items`,params:({params:{len:C}})=>e._`{limit: ${C}}`},code(C){const{parentSchema:E,it:u}=C,{items:z}=E;Array.isArray(z)?l(C,z):(0,n.checkStrictMode)(u,'"additionalItems" is ignored when "items" is not an array of schemas')}};function l(C,E){const{gen:u,schema:z,data:M,keyword:h,it:v}=C;v.items=!0;const g=u.const("len",e._`${M}.length`);if(!1===z)C.setParams({len:E.length}),C.pass(e._`${g} <= ${E.length}`);else if("object"==typeof z&&!(0,n.alwaysValidSchema)(v,z)){const p=u.var("valid",e._`${g} <= ${E.length}`);u.if((0,e.not)(p),()=>function d(p){u.forRange("i",E.length,g,f=>{C.subschema({keyword:h,dataProp:f,dataPropType:n.Type.Num},p),v.allErrors||u.if((0,e.not)(p),()=>u.break())})}(p)),C.ok(p)}}I.validateAdditionalItems=l,I.default=i},50746:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(89508),n=o(10117),t=o(25631),i=o(78754);I.default={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:{message:"must NOT have additional properties",params:({params:E})=>n._`{additionalProperty: ${E.additionalProperty}}`},code(E){const{gen:u,schema:z,parentSchema:M,data:h,errsCount:v,it:g}=E;if(!v)throw new Error("ajv implementation error");const{allErrors:d,opts:p}=g;if(g.props=!0,"all"!==p.removeAdditional&&(0,i.alwaysValidSchema)(g,z))return;const f=(0,e.allSchemaProperties)(M.properties),y=(0,e.allSchemaProperties)(M.patternProperties);function D(O){u.code(n._`delete ${h}[${O}]`)}function _(O){if("all"===p.removeAdditional||p.removeAdditional&&!1===z)D(O);else{if(!1===z)return E.setParams({additionalProperty:O}),E.error(),void(d||u.break());if("object"==typeof z&&!(0,i.alwaysValidSchema)(g,z)){const A=u.name("valid");"failing"===p.removeAdditional?(P(O,A,!1),u.if((0,n.not)(A),()=>{E.reset(),D(O)})):(P(O,A),d||u.if((0,n.not)(A),()=>u.break()))}}}function P(O,A,k){const F={keyword:"additionalProperties",dataProp:O,dataPropType:i.Type.Str};!1===k&&Object.assign(F,{compositeRule:!0,createErrors:!1,allErrors:!1}),E.subschema(F,A)}(function T(){u.forIn("key",h,O=>{f.length||y.length?u.if(function x(O){let A;if(f.length>8){const k=(0,i.schemaRefOrVal)(g,M.properties,"properties");A=(0,e.isOwnProperty)(u,k,O)}else A=f.length?(0,n.or)(...f.map(k=>n._`${O} === ${k}`)):n.nil;return y.length&&(A=(0,n.or)(A,...y.map(k=>n._`${(0,e.usePattern)(E,k)}.test(${O})`))),(0,n.not)(A)}(O),()=>_(O)):_(O)})})(),E.ok(n._`${v} === ${t.default.errors}`)}}},19466:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(78754);I.default={keyword:"allOf",schemaType:"array",code(t){const{gen:i,schema:l,it:C}=t;if(!Array.isArray(l))throw new Error("ajv implementation error");const E=i.name("valid");l.forEach((u,z)=>{if((0,e.alwaysValidSchema)(C,u))return;const M=t.subschema({keyword:"allOf",schemaProp:z},E);t.ok(E),t.mergeEvaluated(M)})}}},24651:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const n={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:o(89508).validateUnion,error:{message:"must match a schema in anyOf"}};I.default=n},51006:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117),n=o(78754);I.default={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:{message:({params:{min:l,max:C}})=>void 0===C?e.str`must contain at least ${l} valid item(s)`:e.str`must contain at least ${l} and no more than ${C} valid item(s)`,params:({params:{min:l,max:C}})=>void 0===C?e._`{minContains: ${l}}`:e._`{minContains: ${l}, maxContains: ${C}}`},code(l){const{gen:C,schema:E,parentSchema:u,data:z,it:M}=l;let h,v;const{minContains:g,maxContains:d}=u;M.opts.next?(h=void 0===g?1:g,v=d):h=1;const p=C.const("len",e._`${z}.length`);if(l.setParams({min:h,max:v}),void 0===v&&0===h)return void(0,n.checkStrictMode)(M,'"minContains" == 0 without "maxContains": "contains" keyword ignored');if(void 0!==v&&h>v)return(0,n.checkStrictMode)(M,'"minContains" > "maxContains" is always invalid'),void l.fail();if((0,n.alwaysValidSchema)(M,E)){let D=e._`${p} >= ${h}`;return void 0!==v&&(D=e._`${D} && ${p} <= ${v}`),void l.pass(D)}M.items=!0;const f=C.name("valid");function y(){const D=C.name("_valid"),_=C.let("count",0);T(D,()=>C.if(D,()=>function x(D){C.code(e._`${D}++`),void 0===v?C.if(e._`${D} >= ${h}`,()=>C.assign(f,!0).break()):(C.if(e._`${D} > ${v}`,()=>C.assign(f,!1).break()),1===h?C.assign(f,!0):C.if(e._`${D} >= ${h}`,()=>C.assign(f,!0)))}(_)))}function T(D,_){C.forRange("i",0,p,P=>{l.subschema({keyword:"contains",dataProp:P,dataPropType:n.Type.Num,compositeRule:!0},D),_()})}void 0===v&&1===h?T(f,()=>C.if(f,()=>C.break())):0===h?(C.let(f,!0),void 0!==v&&C.if(e._`${z}.length > 0`,y)):(C.let(f,!1),y()),l.result(f,()=>l.reset())}}},91804:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.validateSchemaDeps=I.validatePropertyDeps=I.error=void 0;const e=o(10117),n=o(78754),t=o(89508);I.error={message:({params:{property:u,depsCount:z,deps:M}})=>e.str`must have ${1===z?"property":"properties"} ${M} when property ${u} is present`,params:({params:{property:u,depsCount:z,deps:M,missingProperty:h}})=>e._`{property: ${u}, missingProperty: ${h}, depsCount: ${z}, - deps: ${M}}`};const i={keyword:"dependencies",type:"object",schemaType:"object",error:I.error,code(u){const[z,M]=function l({schema:u}){const z={},M={};for(const h in u)"__proto__"!==h&&((Array.isArray(u[h])?z:M)[h]=u[h]);return[z,M]}(u);C(u,z),E(u,M)}};function C(u,z=u.schema){const{gen:M,data:h,it:v}=u;if(0===Object.keys(z).length)return;const g=M.let("missing");for(const d in z){const p=z[d];if(0===p.length)continue;const f=(0,t.propertyInData)(M,h,d,v.opts.ownProperties);u.setParams({property:d,depsCount:p.length,deps:p.join(", ")}),v.allErrors?M.if(f,()=>{for(const y of p)(0,t.checkReportMissingProp)(u,y)}):(M.if(e._`${f} && (${(0,t.checkMissingProp)(u,p,g)})`),(0,t.reportMissingProp)(u,g),M.else())}}function E(u,z=u.schema){const{gen:M,data:h,keyword:v,it:g}=u,d=M.name("valid");for(const p in z)(0,n.alwaysValidSchema)(g,z[p])||(M.if((0,t.propertyInData)(M,h,p,g.opts.ownProperties),()=>{const f=u.subschema({keyword:v,schemaProp:p},d);u.mergeValidEvaluated(f,d)},()=>M.var(d,!0)),u.ok(d))}I.validatePropertyDeps=C,I.validateSchemaDeps=E,I.default=i},70486:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117),n=o(78754);function l(C,E){const u=C.schema[E];return void 0!==u&&!(0,n.alwaysValidSchema)(C,u)}I.default={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:{message:({params:C})=>e.str`must match "${C.ifClause}" schema`,params:({params:C})=>e._`{failingKeyword: ${C.ifClause}}`},code(C){const{gen:E,parentSchema:u,it:z}=C;void 0===u.then&&void 0===u.else&&(0,n.checkStrictMode)(z,'"if" without "then" and "else" is ignored');const M=l(z,"then"),h=l(z,"else");if(!M&&!h)return;const v=E.let("valid",!0),g=E.name("_valid");if(function d(){const f=C.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},g);C.mergeEvaluated(f)}(),C.reset(),M&&h){const f=E.let("ifClause");C.setParams({ifClause:f}),E.if(g,p("then",f),p("else",f))}else M?E.if(g,p("then")):E.if((0,e.not)(g),p("else"));function p(f,y){return()=>{const T=C.subschema({keyword:f},g);E.assign(v,g),C.mergeValidEvaluated(T,v),y?E.assign(y,e._`${f}`):C.setParams({ifClause:f})}}C.pass(v,()=>C.error(!0))}}},69845:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(92952),n=o(45281),t=o(33013),i=o(33691),l=o(51006),C=o(91804),E=o(87110),u=o(50746),z=o(12505),M=o(57655),h=o(60603),v=o(24651),g=o(60312),d=o(19466),p=o(70486),f=o(70632);I.default=function y(T=!1){const x=[h.default,v.default,g.default,d.default,p.default,f.default,E.default,u.default,C.default,z.default,M.default];return T?x.push(n.default,i.default):x.push(e.default,t.default),x.push(l.default),x}},33013:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.validateTuple=void 0;const e=o(10117),n=o(78754),t=o(89508),i={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(C){const{schema:E,it:u}=C;if(Array.isArray(E))return l(C,"additionalItems",E);u.items=!0,!(0,n.alwaysValidSchema)(u,E)&&C.ok((0,t.validateArray)(C))}};function l(C,E,u=C.schema){const{gen:z,parentSchema:M,data:h,keyword:v,it:g}=C;(function f(y){const{opts:T,errSchemaPath:x}=g,D=u.length;T.strictTuples&&!(D===y.minItems&&(D===y.maxItems||!1===y[E]))&&(0,n.checkStrictMode)(g,`"${v}" is ${D}-tuple, but minItems or maxItems/${E} are not specified or different at path "${x}"`,T.strictTuples)})(M),g.opts.unevaluated&&u.length&&!0!==g.items&&(g.items=n.mergeEvaluated.items(z,u.length,g.items));const d=z.name("valid"),p=z.const("len",e._`${h}.length`);u.forEach((y,T)=>{(0,n.alwaysValidSchema)(g,y)||(z.if(e._`${p} > ${T}`,()=>C.subschema({keyword:v,schemaProp:T,dataProp:T},d)),C.ok(d))})}I.validateTuple=l,I.default=i},33691:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117),n=o(78754),t=o(89508),i=o(92952);I.default={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:{message:({params:{len:E}})=>e.str`must NOT have more than ${E} items`,params:({params:{len:E}})=>e._`{limit: ${E}}`},code(E){const{schema:u,parentSchema:z,it:M}=E,{prefixItems:h}=z;M.items=!0,!(0,n.alwaysValidSchema)(M,u)&&(h?(0,i.validateAdditionalItems)(E,h):E.ok((0,t.validateArray)(E)))}}},60603:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(78754);I.default={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){const{gen:i,schema:l,it:C}=t;if((0,e.alwaysValidSchema)(C,l))return void t.fail();const E=i.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},E),t.failResult(E,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}}},60312:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117),n=o(78754);I.default={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:{message:"must match exactly one schema in oneOf",params:({params:l})=>e._`{passingSchemas: ${l.passing}}`},code(l){const{gen:C,schema:E,parentSchema:u,it:z}=l;if(!Array.isArray(E))throw new Error("ajv implementation error");if(z.opts.discriminator&&u.discriminator)return;const M=E,h=C.let("valid",!1),v=C.let("passing",null),g=C.name("_valid");l.setParams({passing:v}),C.block(function d(){M.forEach((p,f)=>{let y;(0,n.alwaysValidSchema)(z,p)?C.var(g,!0):y=l.subschema({keyword:"oneOf",schemaProp:f,compositeRule:!0},g),f>0&&C.if(e._`${g} && ${h}`).assign(h,!1).assign(v,e._`[${v}, ${f}]`).else(),C.if(g,()=>{C.assign(h,!0),C.assign(v,f),y&&l.mergeEvaluated(y,e.Name)})})}),l.result(h,()=>l.reset(),()=>l.error(!0))}}},57655:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(89508),n=o(10117),t=o(78754),i=o(78754);I.default={keyword:"patternProperties",type:"object",schemaType:"object",code(C){const{gen:E,schema:u,data:z,parentSchema:M,it:h}=C,{opts:v}=h,g=(0,e.allSchemaProperties)(u),d=g.filter(_=>(0,t.alwaysValidSchema)(h,u[_]));if(0===g.length||d.length===g.length&&(!h.opts.unevaluated||!0===h.props))return;const p=v.strictSchema&&!v.allowMatchingProperties&&M.properties,f=E.name("valid");!0!==h.props&&!(h.props instanceof n.Name)&&(h.props=(0,i.evaluatedPropsToName)(E,h.props));const{props:y}=h;function x(_){for(const P in p)new RegExp(_).test(P)&&(0,t.checkStrictMode)(h,`property ${P} matches pattern ${_} (use allowMatchingProperties)`)}function D(_){E.forIn("key",z,P=>{E.if(n._`${(0,e.usePattern)(C,_)}.test(${P})`,()=>{const S=d.includes(_);S||C.subschema({keyword:"patternProperties",schemaProp:_,dataProp:P,dataPropType:i.Type.Str},f),h.opts.unevaluated&&!0!==y?E.assign(n._`${y}[${P}]`,!0):!S&&!h.allErrors&&E.if((0,n.not)(f),()=>E.break())})})}!function T(){for(const _ of g)p&&x(_),h.allErrors?D(_):(E.var(f,!0),D(_),E.if(f))}()}}},45281:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(33013);I.default={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,e.validateTuple)(t,"items")}},12505:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(62175),n=o(89508),t=o(78754),i=o(50746);I.default={keyword:"properties",type:"object",schemaType:"object",code(C){const{gen:E,schema:u,parentSchema:z,data:M,it:h}=C;"all"===h.opts.removeAdditional&&void 0===z.additionalProperties&&i.default.code(new e.KeywordCxt(h,i.default,"additionalProperties"));const v=(0,n.allSchemaProperties)(u);for(const y of v)h.definedProperties.add(y);h.opts.unevaluated&&v.length&&!0!==h.props&&(h.props=t.mergeEvaluated.props(E,(0,t.toHash)(v),h.props));const g=v.filter(y=>!(0,t.alwaysValidSchema)(h,u[y]));if(0===g.length)return;const d=E.name("valid");for(const y of g)p(y)?f(y):(E.if((0,n.propertyInData)(E,M,y,h.opts.ownProperties)),f(y),h.allErrors||E.else().var(d,!0),E.endIf()),C.it.definedProperties.add(y),C.ok(d);function p(y){return h.opts.useDefaults&&!h.compositeRule&&void 0!==u[y].default}function f(y){C.subschema({keyword:"properties",schemaProp:y,dataProp:y},d)}}}},87110:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117),n=o(78754);I.default={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:{message:"property name must be valid",params:({params:l})=>e._`{propertyName: ${l.propertyName}}`},code(l){const{gen:C,schema:E,data:u,it:z}=l;if((0,n.alwaysValidSchema)(z,E))return;const M=C.name("valid");C.forIn("key",u,h=>{l.setParams({propertyName:h}),l.subschema({keyword:"propertyNames",data:h,dataTypes:["string"],propertyName:h,compositeRule:!0},M),C.if((0,e.not)(M),()=>{l.error(!0),z.allErrors||C.break()})}),l.ok(M)}}},70632:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(78754);I.default={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:i,it:l}){void 0===i.if&&(0,e.checkStrictMode)(l,`"${t}" without "if" is ignored`)}}},89508:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.validateUnion=I.validateArray=I.usePattern=I.callValidateCode=I.schemaProperties=I.allSchemaProperties=I.noPropertyInData=I.propertyInData=I.isOwnProperty=I.hasPropFunc=I.reportMissingProp=I.checkMissingProp=I.checkReportMissingProp=void 0;const e=o(10117),n=o(78754),t=o(25631),i=o(78754);function u(x){return x.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:e._`Object.prototype.hasOwnProperty`})}function z(x,D,_){return e._`${u(x)}.call(${D}, ${_})`}function h(x,D,_,P){const S=e._`${D}${(0,e.getProperty)(_)} === undefined`;return P?(0,e.or)(S,(0,e.not)(z(x,D,_))):S}function v(x){return x?Object.keys(x).filter(D=>"__proto__"!==D):[]}I.checkReportMissingProp=function l(x,D){const{gen:_,data:P,it:S}=x;_.if(h(_,P,D,S.opts.ownProperties),()=>{x.setParams({missingProperty:e._`${D}`},!0),x.error()})},I.checkMissingProp=function C({gen:x,data:D,it:{opts:_}},P,S){return(0,e.or)(...P.map(A=>(0,e.and)(h(x,D,A,_.ownProperties),e._`${S} = ${A}`)))},I.reportMissingProp=function E(x,D){x.setParams({missingProperty:D},!0),x.error()},I.hasPropFunc=u,I.isOwnProperty=z,I.propertyInData=function M(x,D,_,P){const S=e._`${D}${(0,e.getProperty)(_)} !== undefined`;return P?e._`${S} && ${z(x,D,_)}`:S},I.noPropertyInData=h,I.allSchemaProperties=v,I.schemaProperties=function g(x,D){return v(D).filter(_=>!(0,n.alwaysValidSchema)(x,D[_]))},I.callValidateCode=function d({schemaCode:x,data:D,it:{gen:_,topSchemaRef:P,schemaPath:S,errorPath:A},it:k},R,$,W){const ze=W?e._`${x}, ${D}, ${P}${S}`:D,Y=[[t.default.instancePath,(0,e.strConcat)(t.default.instancePath,A)],[t.default.parentData,k.parentData],[t.default.parentDataProperty,k.parentDataProperty],[t.default.rootData,t.default.rootData]];k.opts.dynamicRef&&Y.push([t.default.dynamicAnchors,t.default.dynamicAnchors]);const G=e._`${ze}, ${_.object(...Y)}`;return $!==e.nil?e._`${R}.call(${$}, ${G})`:e._`${R}(${G})`};const p=e._`new RegExp`;I.usePattern=function f({gen:x,it:{opts:D}},_){const P=D.unicodeRegExp?"u":"",{regExp:S}=D.code,A=S(_,P);return x.scopeValue("pattern",{key:A.toString(),ref:A,code:e._`${"new RegExp"===S.code?p:(0,i.useFunc)(x,S)}(${_}, ${P})`})},I.validateArray=function y(x){const{gen:D,data:_,keyword:P,it:S}=x,A=D.name("valid");if(S.allErrors){const R=D.let("valid",!0);return k(()=>D.assign(R,!1)),R}return D.var(A,!0),k(()=>D.break()),A;function k(R){const $=D.const("len",e._`${_}.length`);D.forRange("i",0,$,W=>{x.subschema({keyword:P,dataProp:W,dataPropType:n.Type.Num},A),D.if((0,e.not)(A),R)})}},I.validateUnion=function T(x){const{gen:D,schema:_,keyword:P,it:S}=x;if(!Array.isArray(_))throw new Error("ajv implementation error");if(_.some($=>(0,n.alwaysValidSchema)(S,$))&&!S.opts.unevaluated)return;const k=D.let("valid",!1),R=D.name("_valid");D.block(()=>_.forEach(($,W)=>{const ze=x.subschema({keyword:P,schemaProp:W,compositeRule:!0},R);D.assign(k,e._`${k} || ${R}`),x.mergeValidEvaluated(ze,R)||D.if((0,e.not)(k))})),x.result(k,()=>x.reset(),()=>x.error(!0))}},51141:(nt,I)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.default={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}}},54402:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(51141),n=o(26119);I.default=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",e.default,n.default]},26119:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.callRef=I.getValidate=void 0;const e=o(95695),n=o(89508),t=o(10117),i=o(25631),l=o(24317),C=o(78754),E={keyword:"$ref",schemaType:"string",code(M){const{gen:h,schema:v,it:g}=M,{baseId:d,schemaEnv:p,validateName:f,opts:y,self:T}=g,{root:x}=p;if(("#"===v||"#/"===v)&&d===x.baseId)return function _(){if(p===x)return z(M,f,p,p.$async);const A=h.scopeValue("root",{ref:x});return z(M,t._`${A}.validate`,x,x.$async)}();const D=l.resolveRef.call(T,x,d,v);if(void 0===D)throw new e.default(g.opts.uriResolver,d,v);return D instanceof l.SchemaEnv?function P(A){const k=u(M,A);z(M,k,A,A.$async)}(D):function S(A){const k=h.scopeValue("schema",!0===y.code.source?{ref:A,code:(0,t.stringify)(A)}:{ref:A}),R=h.name("valid"),$=M.subschema({schema:A,dataTypes:[],schemaPath:t.nil,topSchemaRef:k,errSchemaPath:v},R);M.mergeEvaluated($),M.ok(R)}(D)}};function u(M,h){const{gen:v}=M;return h.validate?v.scopeValue("validate",{ref:h.validate}):t._`${v.scopeValue("wrapper",{ref:h})}.validate`}function z(M,h,v,g){const{gen:d,it:p}=M,{allErrors:f,schemaEnv:y,opts:T}=p,x=T.passContext?i.default.this:t.nil;function P(A){const k=t._`${A}.errors`;d.assign(i.default.vErrors,t._`${i.default.vErrors} === null ? ${k} : ${i.default.vErrors}.concat(${k})`),d.assign(i.default.errors,t._`${i.default.vErrors}.length`)}function S(A){var k;if(!p.opts.unevaluated)return;const R=null===(k=v?.validate)||void 0===k?void 0:k.evaluated;if(!0!==p.props)if(R&&!R.dynamicProps)void 0!==R.props&&(p.props=C.mergeEvaluated.props(d,R.props,p.props));else{const $=d.var("props",t._`${A}.evaluated.props`);p.props=C.mergeEvaluated.props(d,$,p.props,t.Name)}if(!0!==p.items)if(R&&!R.dynamicItems)void 0!==R.items&&(p.items=C.mergeEvaluated.items(d,R.items,p.items));else{const $=d.var("items",t._`${A}.evaluated.items`);p.items=C.mergeEvaluated.items(d,$,p.items,t.Name)}}g?function D(){if(!y.$async)throw new Error("async schema referenced by sync schema");const A=d.let("valid");d.try(()=>{d.code(t._`await ${(0,n.callValidateCode)(M,h,x)}`),S(h),f||d.assign(A,!0)},k=>{d.if(t._`!(${k} instanceof ${p.ValidationError})`,()=>d.throw(k)),P(k),f||d.assign(A,!1)}),M.ok(A)}():function _(){M.result((0,n.callValidateCode)(M,h,x),()=>S(h),()=>P(h))}()}I.getValidate=u,I.callRef=z,I.default=E},96081:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117),n=o(75746),t=o(24317),i=o(78754);I.default={keyword:"discriminator",type:"object",schemaType:"object",error:{message:({params:{discrError:E,tagName:u}})=>E===n.DiscrError.Tag?`tag "${u}" must be string`:`value of tag "${u}" must be in oneOf`,params:({params:{discrError:E,tag:u,tagName:z}})=>e._`{error: ${E}, tag: ${z}, tagValue: ${u}}`},code(E){const{gen:u,data:z,schema:M,parentSchema:h,it:v}=E,{oneOf:g}=h;if(!v.opts.discriminator)throw new Error("discriminator: requires discriminator option");const d=M.propertyName;if("string"!=typeof d)throw new Error("discriminator: requires propertyName");if(M.mapping)throw new Error("discriminator: mapping is not supported");if(!g)throw new Error("discriminator: requires oneOf keyword");const p=u.let("valid",!1),f=u.const("tag",e._`${z}${(0,e.getProperty)(d)}`);function T(D){const _=u.name("valid"),P=E.subschema({keyword:"oneOf",schemaProp:D},_);return E.mergeEvaluated(P,e.Name),_}u.if(e._`typeof ${f} == "string"`,()=>function y(){const D=function x(){var D;const _={},P=A(h);let S=!0;for(let $=0;$E.error(!1,{discrError:n.DiscrError.Tag,tag:f,tagName:d})),E.ok(p)}}},75746:(nt,I)=>{"use strict";var e;Object.defineProperty(I,"__esModule",{value:!0}),I.DiscrError=void 0,(e=I.DiscrError||(I.DiscrError={})).Tag="tag",e.Mapping="mapping"},8677:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(54402),n=o(81495),t=o(69845),i=o(92389),l=o(50836),C=[e.default,n.default,(0,t.default)(),i.default,l.metadataVocabulary,l.contentVocabulary];I.default=C},40229:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117);I.default={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:{message:({schemaCode:i})=>e.str`must match format "${i}"`,params:({schemaCode:i})=>e._`{format: ${i}}`},code(i,l){const{gen:C,data:E,$data:u,schema:z,schemaCode:M,it:h}=i,{opts:v,errSchemaPath:g,schemaEnv:d,self:p}=h;v.validateFormats&&(u?function f(){const T=C.scopeValue("formats",{ref:p.formats,code:v.code.formats}),x=C.const("fDef",e._`${T}[${M}]`),D=C.let("fType"),_=C.let("format");C.if(e._`typeof ${x} == "object" && !(${x} instanceof RegExp)`,()=>C.assign(D,e._`${x}.type || "string"`).assign(_,e._`${x}.validate`),()=>C.assign(D,e._`"string"`).assign(_,x)),i.fail$data((0,e.or)(function P(){return!1===v.strictSchema?e.nil:e._`${M} && !${_}`}(),function S(){const A=d.$async?e._`(${x}.async ? await ${_}(${E}) : ${_}(${E}))`:e._`${_}(${E})`,k=e._`(typeof ${_} == "function" ? ${A} : ${_}.test(${E}))`;return e._`${_} && ${_} !== true && ${D} === ${l} && !${k}`}()))}():function y(){const T=p.formats[z];if(!T)return void function P(){if(!1!==v.strictSchema)throw new Error(k());function k(){return`unknown format "${z}" ignored in schema at path "${g}"`}p.logger.warn(k())}();if(!0===T)return;const[x,D,_]=function S(k){const R=k instanceof RegExp?(0,e.regexpCode)(k):v.code.formats?e._`${v.code.formats}${(0,e.getProperty)(z)}`:void 0,$=C.scopeValue("formats",{key:z,ref:k,code:R});return"object"!=typeof k||k instanceof RegExp?["string",k,$]:[k.type||"string",k.validate,e._`${$}.validate`]}(T);x===l&&i.pass(function A(){if("object"==typeof T&&!(T instanceof RegExp)&&T.async){if(!d.$async)throw new Error("async format in sync schema");return e._`await ${_}(${E})`}return"function"==typeof D?e._`${_}(${E})`:e._`${_}.test(${E})`}())}())}}},92389:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const n=[o(40229).default];I.default=n},50836:(nt,I)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.contentVocabulary=I.metadataVocabulary=void 0,I.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"],I.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]},26316:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117),n=o(78754),t=o(74747);I.default={keyword:"const",$data:!0,error:{message:"must be equal to constant",params:({schemaCode:C})=>e._`{allowedValue: ${C}}`},code(C){const{gen:E,data:u,$data:z,schemaCode:M,schema:h}=C;z||h&&"object"==typeof h?C.fail$data(e._`!${(0,n.useFunc)(E,t.default)}(${u}, ${M})`):C.fail(e._`${h} !== ${u}`)}}},18618:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117),n=o(78754),t=o(74747);I.default={keyword:"enum",schemaType:"array",$data:!0,error:{message:"must be equal to one of the allowed values",params:({schemaCode:C})=>e._`{allowedValues: ${C}}`},code(C){const{gen:E,data:u,$data:z,schema:M,schemaCode:h,it:v}=C;if(!z&&0===M.length)throw new Error("enum must have non-empty array");let d;const p=()=>d??(d=(0,n.useFunc)(E,t.default));let f;if(M.length>=v.opts.loopEnum||z)f=E.let("valid"),C.block$data(f,function y(){E.assign(f,!1),E.forOf("v",h,x=>E.if(e._`${p()}(${u}, ${x})`,()=>E.assign(f,!0).break()))});else{if(!Array.isArray(M))throw new Error("ajv implementation error");const x=E.const("vSchema",h);f=(0,e.or)(...M.map((D,_)=>function T(x,D){const _=M[D];return"object"==typeof _&&null!==_?e._`${p()}(${u}, ${x}[${D}])`:e._`${u} === ${_}`}(x,_)))}C.pass(f)}}},81495:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(89587),n=o(29896),t=o(33260),i=o(50216),l=o(59726),C=o(363),E=o(70507),u=o(17143),z=o(26316),M=o(18618);I.default=[e.default,n.default,t.default,i.default,l.default,C.default,E.default,u.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},z.default,M.default]},70507:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117);I.default={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:{message:({keyword:i,schemaCode:l})=>e.str`must NOT have ${"maxItems"===i?"more":"fewer"} than ${l} items`,params:({schemaCode:i})=>e._`{limit: ${i}}`},code(i){const{keyword:l,data:C,schemaCode:E}=i;i.fail$data(e._`${C}.length ${"maxItems"===l?e.operators.GT:e.operators.LT} ${E}`)}}},33260:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117),n=o(78754),t=o(81197);I.default={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:{message:({keyword:C,schemaCode:E})=>e.str`must NOT have ${"maxLength"===C?"more":"fewer"} than ${E} characters`,params:({schemaCode:C})=>e._`{limit: ${C}}`},code(C){const{keyword:E,data:u,schemaCode:z,it:M}=C,h="maxLength"===E?e.operators.GT:e.operators.LT,v=!1===M.opts.unicode?e._`${u}.length`:e._`${(0,n.useFunc)(C.gen,t.default)}(${u})`;C.fail$data(e._`${v} ${h} ${z}`)}}},89587:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117),n=e.operators,t={maximum:{okStr:"<=",ok:n.LTE,fail:n.GT},minimum:{okStr:">=",ok:n.GTE,fail:n.LT},exclusiveMaximum:{okStr:"<",ok:n.LT,fail:n.GTE},exclusiveMinimum:{okStr:">",ok:n.GT,fail:n.LTE}},i={message:({keyword:C,schemaCode:E})=>e.str`must be ${t[C].okStr} ${E}`,params:({keyword:C,schemaCode:E})=>e._`{comparison: ${t[C].okStr}, limit: ${E}}`},l={keyword:Object.keys(t),type:"number",schemaType:"number",$data:!0,error:i,code(C){const{keyword:E,data:u,schemaCode:z}=C;C.fail$data(e._`${u} ${t[E].fail} ${z} || isNaN(${u})`)}};I.default=l},59726:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117);I.default={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:{message:({keyword:i,schemaCode:l})=>e.str`must NOT have ${"maxProperties"===i?"more":"fewer"} than ${l} properties`,params:({schemaCode:i})=>e._`{limit: ${i}}`},code(i){const{keyword:l,data:C,schemaCode:E}=i;i.fail$data(e._`Object.keys(${C}).length ${"maxProperties"===l?e.operators.GT:e.operators.LT} ${E}`)}}},29896:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117);I.default={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:{message:({schemaCode:i})=>e.str`must be multiple of ${i}`,params:({schemaCode:i})=>e._`{multipleOf: ${i}}`},code(i){const{gen:l,data:C,schemaCode:E,it:u}=i,z=u.opts.multipleOfPrecision,M=l.let("res"),h=z?e._`Math.abs(Math.round(${M}) - ${M}) > 1e-${z}`:e._`${M} !== parseInt(${M})`;i.fail$data(e._`(${E} === 0 || (${M} = ${C}/${E}, ${h}))`)}}},50216:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(89508),n=o(10117);I.default={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:{message:({schemaCode:l})=>n.str`must match pattern "${l}"`,params:({schemaCode:l})=>n._`{pattern: ${l}}`},code(l){const{data:C,$data:E,schema:u,schemaCode:z,it:M}=l,v=E?n._`(new RegExp(${z}, ${M.opts.unicodeRegExp?"u":""}))`:(0,e.usePattern)(l,u);l.fail$data(n._`!${v}.test(${C})`)}}},363:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(89508),n=o(10117),t=o(78754);I.default={keyword:"required",type:"object",schemaType:"array",$data:!0,error:{message:({params:{missingProperty:C}})=>n.str`must have required property '${C}'`,params:({params:{missingProperty:C}})=>n._`{missingProperty: ${C}}`},code(C){const{gen:E,schema:u,schemaCode:z,data:M,$data:h,it:v}=C,{opts:g}=v;if(!h&&0===u.length)return;const d=u.length>=g.loopRequired;if(v.allErrors?function p(){if(d||h)C.block$data(n.nil,y);else for(const x of u)(0,e.checkReportMissingProp)(C,x)}():function f(){const x=E.let("missing");if(d||h){const D=E.let("valid",!0);C.block$data(D,()=>function T(x,D){C.setParams({missingProperty:x}),E.forOf(x,z,()=>{E.assign(D,(0,e.propertyInData)(E,M,x,g.ownProperties)),E.if((0,n.not)(D),()=>{C.error(),E.break()})},n.nil)}(x,D)),C.ok(D)}else E.if((0,e.checkMissingProp)(C,u,x)),(0,e.reportMissingProp)(C,x),E.else()}(),g.strictRequired){const x=C.parentSchema.properties,{definedProperties:D}=C.it;for(const _ of u)void 0!==x?.[_]||D.has(_)||(0,t.checkStrictMode)(v,`required property "${_}" is not defined at "${v.schemaEnv.baseId+v.errSchemaPath}" (strictRequired)`,v.opts.strictRequired)}function y(){E.forOf("prop",z,x=>{C.setParams({missingProperty:x}),E.if((0,e.noPropertyInData)(E,M,x,g.ownProperties),()=>C.error())})}}}},17143:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(84730),n=o(10117),t=o(78754),i=o(74747);I.default={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:{message:({params:{i:E,j:u}})=>n.str`must NOT have duplicate items (items ## ${u} and ${E} are identical)`,params:({params:{i:E,j:u}})=>n._`{i: ${E}, j: ${u}}`},code(E){const{gen:u,data:z,$data:M,schema:h,parentSchema:v,schemaCode:g,it:d}=E;if(!M&&!h)return;const p=u.let("valid"),f=v.items?(0,e.getSchemaTypes)(v.items):[];function x(_,P){const S=u.name("item"),A=(0,e.checkDataTypes)(f,S,d.opts.strictNumbers,e.DataType.Wrong),k=u.const("indices",n._`{}`);u.for(n._`;${_}--;`,()=>{u.let(S,n._`${z}[${_}]`),u.if(A,n._`continue`),f.length>1&&u.if(n._`typeof ${S} == "string"`,n._`${S} += "_"`),u.if(n._`typeof ${k}[${S}] == "number"`,()=>{u.assign(P,n._`${k}[${S}]`),E.error(),u.assign(p,!1).break()}).code(n._`${k}[${S}] = ${_}`)})}function D(_,P){const S=(0,t.useFunc)(u,i.default),A=u.name("outer");u.label(A).for(n._`;${_}--;`,()=>u.for(n._`${P} = ${_}; ${P}--;`,()=>u.if(n._`${S}(${z}[${_}], ${z}[${P}])`,()=>{E.error(),u.assign(p,!1).break(A)})))}E.block$data(p,function y(){const _=u.let("i",n._`${z}.length`),P=u.let("j");E.setParams({i:_,j:P}),u.assign(p,!0),u.if(n._`${_} > 1`,()=>(function T(){return f.length>0&&!f.some(_=>"object"===_||"array"===_)}()?x:D)(_,P))},n._`${g} === false`),E.ok(p)}}},99402:function(nt){nt.exports=function(){"use strict";var I=typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},o="Expected a function",e=NaN,n="[object Symbol]",t=/^\s+|\s+$/g,i=/^[-+]0x[0-9a-f]+$/i,l=/^0b[01]+$/i,C=/^0o[0-7]+$/i,E=parseInt,z="object"==typeof self&&self&&self.Object===Object&&self,M="object"==typeof I&&I&&I.Object===Object&&I||z||Function("return this")(),h=Object.prototype.toString,v=Math.max,g=Math.min,d=function(){return M.Date.now()};function f(Ne){var pt=typeof Ne;return!!Ne&&("object"==pt||"function"==pt)}function y(Ne){if("number"==typeof Ne)return Ne;if("symbol"==typeof(Lt=Ne)||(Ut=Lt)&&"object"==typeof Ut&&h.call(Lt)==n)return e;var Lt,Ut;if(f(Ne)){var pt="function"==typeof Ne.valueOf?Ne.valueOf():Ne;Ne=f(pt)?pt+"":pt}if("string"!=typeof Ne)return 0===Ne?Ne:+Ne;Ne=Ne.replace(t,"");var Dt=l.test(Ne);return Dt||C.test(Ne)?E(Ne.slice(2),Dt?2:8):i.test(Ne)?e:+Ne}var T=function(Ne,pt,Dt){var Lt=!0,Ut=!0;if("function"!=typeof Ne)throw new TypeError(o);return f(Dt)&&(Lt="leading"in Dt?!!Dt.leading:Lt,Ut="trailing"in Dt?!!Dt.trailing:Ut),function p(Ne,pt,Dt){var Lt,Ut,qt,en,cn,Wt,Vt=0,st=!1,He=!1,et=!0;if("function"!=typeof Ne)throw new TypeError(o);function It(pe){var qe=Lt,ge=Ut;return Lt=Ut=void 0,Vt=pe,en=Ne.apply(ge,qe)}function Ot(pe){var qe=pe-Wt;return void 0===Wt||qe>=pt||qe<0||He&&pe-Vt>=qt}function xt(){var qe,ge,pe=d();if(Ot(pe))return Qe(pe);cn=setTimeout(xt,(ge=pt-((qe=pe)-Wt),He?g(ge,qt-(qe-Vt)):ge))}function Qe(pe){return cn=void 0,et&&Lt?It(pe):(Lt=Ut=void 0,en)}function ke(){var ge,pe=d(),qe=Ot(pe);if(Lt=arguments,Ut=this,Wt=pe,qe){if(void 0===cn)return Vt=ge=Wt,cn=setTimeout(xt,pt),st?It(ge):en;if(He)return cn=setTimeout(xt,pt),It(Wt)}return void 0===cn&&(cn=setTimeout(xt,pt)),en}return pt=y(pt)||0,f(Dt)&&(st=!!Dt.leading,qt=(He="maxWait"in Dt)?v(y(Dt.maxWait)||0,pt):qt,et="trailing"in Dt?!!Dt.trailing:et),ke.cancel=function(){void 0!==cn&&clearTimeout(cn),Vt=0,Lt=Wt=Ut=cn=void 0},ke.flush=function(){return void 0===cn?en:Qe(d())},ke}(Ne,pt,{leading:Lt,maxWait:pt,trailing:Ut})},P=/^\s+|\s+$/g,S=/^[-+]0x[0-9a-f]+$/i,A=/^0b[01]+$/i,k=/^0o[0-7]+$/i,R=parseInt,W="object"==typeof self&&self&&self.Object===Object&&self,ze="object"==typeof I&&I&&I.Object===Object&&I||W||Function("return this")(),Y=Object.prototype.toString,G=Math.max,V=Math.min,K=function(){return ze.Date.now()};function te(Ne){var pt=typeof Ne;return!!Ne&&("object"==pt||"function"==pt)}function ne(Ne){if("number"==typeof Ne)return Ne;if("symbol"==typeof(Lt=Ne)||(Ut=Lt)&&"object"==typeof Ut&&"[object Symbol]"==Y.call(Lt))return NaN;var Lt,Ut;if(te(Ne)){var pt="function"==typeof Ne.valueOf?Ne.valueOf():Ne;Ne=te(pt)?pt+"":pt}if("string"!=typeof Ne)return 0===Ne?Ne:+Ne;Ne=Ne.replace(P,"");var Dt=A.test(Ne);return Dt||k.test(Ne)?R(Ne.slice(2),Dt?2:8):S.test(Ne)?NaN:+Ne}var fe=function(Ne,pt,Dt){var Lt,Ut,qt,en,cn,Wt,Vt=0,st=!1,He=!1,et=!0;if("function"!=typeof Ne)throw new TypeError("Expected a function");function It(pe){var qe=Lt,ge=Ut;return Lt=Ut=void 0,Vt=pe,en=Ne.apply(ge,qe)}function Ot(pe){var qe=pe-Wt;return void 0===Wt||qe>=pt||qe<0||He&&pe-Vt>=qt}function xt(){var qe,ge,pe=K();if(Ot(pe))return Qe(pe);cn=setTimeout(xt,(ge=pt-((qe=pe)-Wt),He?V(ge,qt-(qe-Vt)):ge))}function Qe(pe){return cn=void 0,et&&Lt?It(pe):(Lt=Ut=void 0,en)}function ke(){var ge,pe=K(),qe=Ot(pe);if(Lt=arguments,Ut=this,Wt=pe,qe){if(void 0===cn)return Vt=ge=Wt,cn=setTimeout(xt,pt),st?It(ge):en;if(He)return cn=setTimeout(xt,pt),It(Wt)}return void 0===cn&&(cn=setTimeout(xt,pt)),en}return pt=ne(pt)||0,te(Dt)&&(st=!!Dt.leading,qt=(He="maxWait"in Dt)?G(ne(Dt.maxWait)||0,pt):qt,et="trailing"in Dt?!!Dt.trailing:et),ke.cancel=function(){void 0!==cn&&clearTimeout(cn),Vt=0,Lt=Wt=Ut=cn=void 0},ke.flush=function(){return void 0===cn?en:Qe(K())},ke},re=function(){};function be(Ne){Ne&&Ne.forEach(function(pt){var Dt=Array.prototype.slice.call(pt.addedNodes),Lt=Array.prototype.slice.call(pt.removedNodes);if(function Ut(qt){var en=void 0,cn=void 0;for(en=0;en=en.out&&!qt.once?Wt():Ut>=en.in?Lt.animated||(Vt=cn,(st=qt.animatedClassNames)&&st.forEach(function(He){return Vt.classList.add(He)}),Be("aos:in",cn),Lt.options.id&&Be("aos:in:"+Lt.options.id,cn),Lt.animated=!0):Lt.animated&&!qt.once&&Wt());var Lt,Ut,Vt,st,qt,en,cn,Wt})},ct=function(Ne){for(var pt=0,Dt=0;Ne&&!isNaN(Ne.offsetLeft)&&!isNaN(Ne.offsetTop);)pt+=Ne.offsetLeft-("BODY"!=Ne.tagName?Ne.scrollLeft:0),Dt+=Ne.offsetTop-("BODY"!=Ne.tagName?Ne.scrollTop:0),Ne=Ne.offsetParent;return{top:Dt,left:pt}},Ae=function(Ne,pt,Dt){var Lt=Ne.getAttribute("data-aos-"+pt);if(void 0!==Lt){if("true"===Lt)return!0;if("false"===Lt)return!1}return Lt||Dt},je=function(){var Ne=document.querySelectorAll("[data-aos]");return Array.prototype.map.call(Ne,function(pt){return{node:pt}})},ot=[],mt=!1,we={offset:120,delay:0,easing:"ease",duration:400,disable:!1,once:!1,mirror:!1,anchorPlacement:"top-bottom",startEvent:"DOMContentLoaded",animatedClassName:"aos-animate",initClassName:"aos-init",useClassNames:!1,disableMutationObserver:!1,throttleDelay:99,debounceDelay:50},de=function(){return document.all&&!window.atob},U=function(){var Ne,pt;arguments.length>0&&void 0!==arguments[0]&&arguments[0]&&(mt=!0),mt&&(pt=we,(Ne=ot).forEach(function(Dt,Lt){var Ut=Ae(Dt.node,"mirror",pt.mirror),qt=Ae(Dt.node,"once",pt.once),en=Ae(Dt.node,"id"),cn=pt.useClassNames&&Dt.node.getAttribute("data-aos"),Wt=[pt.animatedClassName].concat(cn?cn.split(" "):[]).filter(function(Vt){return"string"==typeof Vt});pt.initClassName&&Dt.node.classList.add(pt.initClassName),Dt.position={in:function(Vt,st,He){var et=window.innerHeight,It=Ae(Vt,"anchor"),Ot=Ae(Vt,"anchor-placement"),xt=Number(Ae(Vt,"offset",Ot?0:st)),Qe=Ot||He,ke=Vt;It&&document.querySelectorAll(It)&&(ke=document.querySelectorAll(It)[0]);var pe=ct(ke).top-et;switch(Qe){case"top-bottom":break;case"center-bottom":pe+=ke.offsetHeight/2;break;case"bottom-bottom":pe+=ke.offsetHeight;break;case"top-center":pe+=et/2;break;case"center-center":pe+=et/2+ke.offsetHeight/2;break;case"bottom-center":pe+=et/2+ke.offsetHeight;break;case"top-top":pe+=et;break;case"bottom-top":pe+=et+ke.offsetHeight;break;case"center-top":pe+=et+ke.offsetHeight/2}return pe+xt}(Dt.node,pt.offset,pt.anchorPlacement),out:Ut&&function(Vt,st){window;var He=Ae(Vt,"anchor"),et=Ae(Vt,"offset",st),It=Vt;return He&&document.querySelectorAll(He)&&(It=document.querySelectorAll(He)[0]),ct(It).top+It.offsetHeight-et}(Dt.node,pt.offset)},Dt.options={once:qt,mirror:Ut,animatedClassNames:Wt,id:en}}),Re(ot=Ne),window.addEventListener("scroll",T(function(){Re(ot)},we.throttleDelay)))},B=function(){if(ot=je(),Ie(we.disable)||de())return Ee();U()},Ee=function(){ot.forEach(function(Ne,pt){Ne.node.removeAttribute("data-aos"),Ne.node.removeAttribute("data-aos-easing"),Ne.node.removeAttribute("data-aos-duration"),Ne.node.removeAttribute("data-aos-delay"),we.initClassName&&Ne.node.classList.remove(we.initClassName),we.animatedClassName&&Ne.node.classList.remove(we.animatedClassName)})},Ie=function(Ne){return!0===Ne||"mobile"===Ne&&ee.mobile()||"phone"===Ne&&ee.phone()||"tablet"===Ne&&ee.tablet()||"function"==typeof Ne&&!0===Ne()};return{init:function(Ne){return we=ae(we,Ne),ot=je(),we.disableMutationObserver||ce_isSupported()||(console.info('\n aos: MutationObserver is not supported on this browser,\n code mutations observing has been disabled.\n You may have to call "refreshHard()" by yourself.\n '),we.disableMutationObserver=!0),we.disableMutationObserver||ce_ready("[data-aos]",B),Ie(we.disable)||de()?Ee():(document.querySelector("body").setAttribute("data-aos-easing",we.easing),document.querySelector("body").setAttribute("data-aos-duration",we.duration),document.querySelector("body").setAttribute("data-aos-delay",we.delay),-1===["DOMContentLoaded","load"].indexOf(we.startEvent)?document.addEventListener(we.startEvent,function(){U(!0)}):window.addEventListener("load",function(){U(!0)}),"DOMContentLoaded"===we.startEvent&&["complete","interactive"].indexOf(document.readyState)>-1&&U(!0),window.addEventListener("resize",fe(U,we.debounceDelay,!0)),window.addEventListener("orientationchange",fe(U,we.debounceDelay,!0)),ot)},refresh:U,refreshHard:B}}()},57979:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.getParameters=void 0;var e=o(17167);I.getParameters=function t(i){return function n(i){return e.compressToBase64(i).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}(JSON.stringify(i))}},28539:(nt,I,o)=>{"use strict";I.Z=void 0;var n=o(57979);I.Z=n.getParameters},48292:(nt,I,o)=>{"use strict";function e(n,t){if(null==n)throw new TypeError("assign requires that input parameter not be null or undefined");for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(n[i]=t[i]);return n}o.d(I,{Z:()=>e})},46719:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>ae});var e={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};function i(xe){return function(){var Me=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},Ye=Me.width?String(Me.width):xe.defaultWidth;return xe.formats[Ye]||xe.formats[xe.defaultWidth]}}var u={date:i({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:i({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:i({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},M={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function g(xe){return function(Me,Ye){var ve;if("formatting"===(null!=Ye&&Ye.context?String(Ye.context):"standalone")&&xe.formattingValues){var ee=xe.defaultFormattingWidth||xe.defaultWidth,Be=null!=Ye&&Ye.width?String(Ye.width):ee;ve=xe.formattingValues[Be]||xe.formattingValues[ee]}else{var Re=xe.defaultWidth,ct=null!=Ye&&Ye.width?String(Ye.width):xe.defaultWidth;ve=xe.values[ct]||xe.values[Re]}return ve[xe.argumentCallback?xe.argumentCallback(Me):Me]}}function S(xe){return function(Me){var Ye=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},q=Ye.width,ee=Me.match(q&&xe.matchPatterns[q]||xe.matchPatterns[xe.defaultMatchWidth]);if(!ee)return null;var Ae,Be=ee[0],Re=q&&xe.parsePatterns[q]||xe.parsePatterns[xe.defaultParseWidth],ct=Array.isArray(Re)?function k(xe,Me){for(var Ye=0;Ye0?"in "+ve:ve+" ago":ve},formatLong:u,formatRelative:function(Me,Ye,q,ve){return M[Me]},localize:{ordinalNumber:function(Me,Ye){var q=Number(Me),ve=q%100;if(ve>20||ve<10)switch(ve%10){case 1:return q+"st";case 2:return q+"nd";case 3:return q+"rd"}return q+"th"},era:g({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:g({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:function(Me){return Me-1}}),month:g({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:g({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:g({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})},match:{ordinalNumber:function R(xe){return function(Me){var Ye=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},q=Me.match(xe.matchPattern);if(!q)return null;var ve=q[0],ee=Me.match(xe.parsePattern);if(!ee)return null;var Be=xe.valueCallback?xe.valueCallback(ee[0]):ee[0];return{value:Be=Ye.valueCallback?Ye.valueCallback(Be):Be,rest:Me.slice(ve.length)}}}({matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:function(Me){return parseInt(Me,10)}}),era:S({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:S({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:function(Me){return Me+1}}),month:S({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:S({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:S({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})},options:{weekStartsOn:0,firstWeekContainsDate:1}}},5227:(nt,I,o)=>{"use strict";o.d(I,{j:()=>n});var e={};function n(){return e}},3001:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>l});var e=function(E,u){switch(E){case"P":return u.date({width:"short"});case"PP":return u.date({width:"medium"});case"PPP":return u.date({width:"long"});default:return u.date({width:"full"})}},n=function(E,u){switch(E){case"p":return u.time({width:"short"});case"pp":return u.time({width:"medium"});case"ppp":return u.time({width:"long"});default:return u.time({width:"full"})}};const l={p:n,P:function(E,u){var v,z=E.match(/(P+)(p+)?/)||[],M=z[1],h=z[2];if(!h)return e(E,u);switch(M){case"P":v=u.dateTime({width:"short"});break;case"PP":v=u.dateTime({width:"medium"});break;case"PPP":v=u.dateTime({width:"long"});break;default:v=u.dateTime({width:"full"})}return v.replace("{{date}}",e(M,u)).replace("{{time}}",n(h,u))}}},45351:(nt,I,o)=>{"use strict";function e(n){var t=new Date(Date.UTC(n.getFullYear(),n.getMonth(),n.getDate(),n.getHours(),n.getMinutes(),n.getSeconds(),n.getMilliseconds()));return t.setUTCFullYear(n.getFullYear()),n.getTime()-t.getTime()}o.d(I,{Z:()=>e})},3606:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>E});var e=o(40581),n=o(29307),t=o(92603),i=o(62816),C=6048e5;function E(u){(0,i.Z)(1,arguments);var z=(0,e.Z)(u),M=(0,n.Z)(z).getTime()-function l(u){(0,i.Z)(1,arguments);var z=(0,t.Z)(u),M=new Date(0);return M.setUTCFullYear(z,0,4),M.setUTCHours(0,0,0,0),(0,n.Z)(M)}(z).getTime();return Math.round(M/C)+1}},92603:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>i});var e=o(40581),n=o(62816),t=o(29307);function i(l){(0,n.Z)(1,arguments);var C=(0,e.Z)(l),E=C.getUTCFullYear(),u=new Date(0);u.setUTCFullYear(E+1,0,4),u.setUTCHours(0,0,0,0);var z=(0,t.Z)(u),M=new Date(0);M.setUTCFullYear(E,0,4),M.setUTCHours(0,0,0,0);var h=(0,t.Z)(M);return C.getTime()>=z.getTime()?E+1:C.getTime()>=h.getTime()?E:E-1}},77356:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>z});var e=o(40581),n=o(5163),t=o(93281),i=o(62816),l=o(96156),C=o(5227),u=6048e5;function z(M,h){(0,i.Z)(1,arguments);var v=(0,e.Z)(M),g=(0,n.Z)(v,h).getTime()-function E(M,h){var v,g,d,p,f,y,T,x;(0,i.Z)(1,arguments);var D=(0,C.j)(),_=(0,l.Z)(null!==(v=null!==(g=null!==(d=null!==(p=h?.firstWeekContainsDate)&&void 0!==p?p:null==h||null===(f=h.locale)||void 0===f||null===(y=f.options)||void 0===y?void 0:y.firstWeekContainsDate)&&void 0!==d?d:D.firstWeekContainsDate)&&void 0!==g?g:null===(T=D.locale)||void 0===T||null===(x=T.options)||void 0===x?void 0:x.firstWeekContainsDate)&&void 0!==v?v:1),P=(0,t.Z)(M,h),S=new Date(0);return S.setUTCFullYear(P,0,_),S.setUTCHours(0,0,0,0),(0,n.Z)(S,h)}(v,h).getTime();return Math.round(g/u)+1}},93281:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>C});var e=o(40581),n=o(62816),t=o(5163),i=o(96156),l=o(5227);function C(E,u){var z,M,h,v,g,d,p,f;(0,n.Z)(1,arguments);var y=(0,e.Z)(E),T=y.getUTCFullYear(),x=(0,l.j)(),D=(0,i.Z)(null!==(z=null!==(M=null!==(h=null!==(v=u?.firstWeekContainsDate)&&void 0!==v?v:null==u||null===(g=u.locale)||void 0===g||null===(d=g.options)||void 0===d?void 0:d.firstWeekContainsDate)&&void 0!==h?h:x.firstWeekContainsDate)&&void 0!==M?M:null===(p=x.locale)||void 0===p||null===(f=p.options)||void 0===f?void 0:f.firstWeekContainsDate)&&void 0!==z?z:1);if(!(D>=1&&D<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var _=new Date(0);_.setUTCFullYear(T+1,0,D),_.setUTCHours(0,0,0,0);var P=(0,t.Z)(_,u),S=new Date(0);S.setUTCFullYear(T,0,D),S.setUTCHours(0,0,0,0);var A=(0,t.Z)(S,u);return y.getTime()>=P.getTime()?T+1:y.getTime()>=A.getTime()?T:T-1}},32566:(nt,I,o)=>{"use strict";o.d(I,{Do:()=>i,Iu:()=>t,qp:()=>l});var e=["D","DD"],n=["YY","YYYY"];function t(C){return-1!==e.indexOf(C)}function i(C){return-1!==n.indexOf(C)}function l(C,E,u){if("YYYY"===C)throw new RangeError("Use `yyyy` instead of `YYYY` (in `".concat(E,"`) for formatting years to the input `").concat(u,"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"));if("YY"===C)throw new RangeError("Use `yy` instead of `YY` (in `".concat(E,"`) for formatting years to the input `").concat(u,"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"));if("D"===C)throw new RangeError("Use `d` instead of `D` (in `".concat(E,"`) for formatting days of the month to the input `").concat(u,"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"));if("DD"===C)throw new RangeError("Use `dd` instead of `DD` (in `".concat(E,"`) for formatting days of the month to the input `").concat(u,"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"))}},62816:(nt,I,o)=>{"use strict";function e(n,t){if(t.length1?"s":"")+" required, but only "+t.length+" present")}o.d(I,{Z:()=>e})},588:(nt,I,o)=>{"use strict";o.d(I,{u:()=>t});var e={ceil:Math.ceil,round:Math.round,floor:Math.floor,trunc:function(l){return l<0?Math.ceil(l):Math.floor(l)}},n="trunc";function t(i){return i?e[i]:e[n]}},29307:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>t});var e=o(40581),n=o(62816);function t(i){(0,n.Z)(1,arguments);var C=(0,e.Z)(i),E=C.getUTCDay(),u=(E<1?7:0)+E-1;return C.setUTCDate(C.getUTCDate()-u),C.setUTCHours(0,0,0,0),C}},5163:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>l});var e=o(40581),n=o(62816),t=o(96156),i=o(5227);function l(C,E){var u,z,M,h,v,g,d,p;(0,n.Z)(1,arguments);var f=(0,i.j)(),y=(0,t.Z)(null!==(u=null!==(z=null!==(M=null!==(h=E?.weekStartsOn)&&void 0!==h?h:null==E||null===(v=E.locale)||void 0===v||null===(g=v.options)||void 0===g?void 0:g.weekStartsOn)&&void 0!==M?M:f.weekStartsOn)&&void 0!==z?z:null===(d=f.locale)||void 0===d||null===(p=d.options)||void 0===p?void 0:p.weekStartsOn)&&void 0!==u?u:0);if(!(y>=0&&y<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var T=(0,e.Z)(C),x=T.getUTCDay(),D=(x{"use strict";function e(n){if(null===n||!0===n||!1===n)return NaN;var t=Number(n);return isNaN(t)?t:t<0?Math.ceil(t):Math.floor(t)}o.d(I,{Z:()=>e})},68584:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>i});var e=o(96156),n=o(40581),t=o(62816);function i(l,C){(0,t.Z)(2,arguments);var E=(0,n.Z)(l),u=(0,e.Z)(C);return isNaN(u)?new Date(NaN):(u&&E.setDate(E.getDate()+u),E)}},640:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>i});var e=o(96156),n=o(40581),t=o(62816);function i(l,C){(0,t.Z)(2,arguments);var E=(0,n.Z)(l).getTime(),u=(0,e.Z)(C);return new Date(E+u)}},21083:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>i});var e=o(96156),n=o(40581),t=o(62816);function i(l,C){(0,t.Z)(2,arguments);var E=(0,n.Z)(l),u=(0,e.Z)(C);if(isNaN(u))return new Date(NaN);if(!u)return E;var z=E.getDate(),M=new Date(E.getTime());return M.setMonth(E.getMonth()+u+1,0),z>=M.getDate()?M:(E.setFullYear(M.getFullYear(),M.getMonth(),z),E)}},27163:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>i});var e=o(96156),n=o(640),t=o(62816);function i(l,C){(0,t.Z)(2,arguments);var E=(0,e.Z)(C);return(0,n.Z)(l,1e3*E)}},22040:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>i});var e=o(96156),n=o(21083),t=o(62816);function i(l,C){(0,t.Z)(2,arguments);var E=(0,e.Z)(C);return(0,n.Z)(l,12*E)}},33865:(nt,I,o)=>{"use strict";o.d(I,{qk:()=>C,vh:()=>l,yJ:()=>i}),Math.pow(10,8);var i=6e4,l=36e5,C=1e3},61855:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>l});var e=o(45351),n=o(79189),t=o(62816),i=864e5;function l(C,E){(0,t.Z)(2,arguments);var u=(0,n.Z)(C),z=(0,n.Z)(E),M=u.getTime()-(0,e.Z)(u),h=z.getTime()-(0,e.Z)(z);return Math.round((M-h)/i)}},80275:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>t});var e=o(40581),n=o(62816);function t(i,l){(0,n.Z)(2,arguments);var C=(0,e.Z)(i),E=(0,e.Z)(l);return 12*(C.getFullYear()-E.getFullYear())+(C.getMonth()-E.getMonth())}},96086:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>t});var e=o(40581),n=o(62816);function t(i,l){return(0,n.Z)(2,arguments),(0,e.Z)(i).getTime()-(0,e.Z)(l).getTime()}},13061:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>i});var e=o(96086),n=o(62816),t=o(588);function i(l,C,E){(0,n.Z)(2,arguments);var u=(0,e.Z)(l,C)/1e3;return(0,t.u)(E?.roundingMethod)(u)}},85134:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>t});var e=o(40581),n=o(62816);function t(i){(0,n.Z)(1,arguments);var l=(0,e.Z)(i);return l.setHours(23,59,59,999),l}},92682:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>t});var e=o(40581),n=o(62816);function t(i){(0,n.Z)(1,arguments);var l=(0,e.Z)(i),C=l.getMonth();return l.setFullYear(l.getFullYear(),C+1,0),l.setHours(23,59,59,999),l}},89207:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>G});var e=o(34338),n=o(73492),t=o(40581),i=o(62816),E=o(3606),u=o(92603),z=o(77356),M=o(93281);function h(K,te){for(var ne=K<0?"-":"",fe=Math.abs(K).toString();fe.length0?fe:1-fe;return h("yy"===ne?re%100:re,ne.length)},g_M=function(te,ne){var fe=te.getUTCMonth();return"M"===ne?String(fe+1):h(fe+1,2)},g_d=function(te,ne){return h(te.getUTCDate(),ne.length)},g_h=function(te,ne){return h(te.getUTCHours()%12||12,ne.length)},g_H=function(te,ne){return h(te.getUTCHours(),ne.length)},g_m=function(te,ne){return h(te.getUTCMinutes(),ne.length)},g_s=function(te,ne){return h(te.getUTCSeconds(),ne.length)},g_S=function(te,ne){var fe=ne.length,re=te.getUTCMilliseconds();return h(Math.floor(re*Math.pow(10,fe-3)),ne.length)};function f(K,te){var ne=K>0?"-":"+",fe=Math.abs(K),re=Math.floor(fe/60),be=fe%60;if(0===be)return ne+String(re);var le=te||"";return ne+String(re)+le+h(be,2)}function y(K,te){return K%60==0?(K>0?"-":"+")+h(Math.abs(K)/60,2):T(K,te)}function T(K,te){var ne=te||"",fe=K>0?"-":"+",re=Math.abs(K);return fe+h(Math.floor(re/60),2)+ne+h(re%60,2)}const x={G:function(te,ne,fe){var re=te.getUTCFullYear()>0?1:0;switch(ne){case"G":case"GG":case"GGG":return fe.era(re,{width:"abbreviated"});case"GGGGG":return fe.era(re,{width:"narrow"});default:return fe.era(re,{width:"wide"})}},y:function(te,ne,fe){if("yo"===ne){var re=te.getUTCFullYear();return fe.ordinalNumber(re>0?re:1-re,{unit:"year"})}return g_y(te,ne)},Y:function(te,ne,fe,re){var be=(0,M.Z)(te,re),le=be>0?be:1-be;return"YY"===ne?h(le%100,2):"Yo"===ne?fe.ordinalNumber(le,{unit:"year"}):h(le,ne.length)},R:function(te,ne){return h((0,u.Z)(te),ne.length)},u:function(te,ne){return h(te.getUTCFullYear(),ne.length)},Q:function(te,ne,fe){var re=Math.ceil((te.getUTCMonth()+1)/3);switch(ne){case"Q":return String(re);case"QQ":return h(re,2);case"Qo":return fe.ordinalNumber(re,{unit:"quarter"});case"QQQ":return fe.quarter(re,{width:"abbreviated",context:"formatting"});case"QQQQQ":return fe.quarter(re,{width:"narrow",context:"formatting"});default:return fe.quarter(re,{width:"wide",context:"formatting"})}},q:function(te,ne,fe){var re=Math.ceil((te.getUTCMonth()+1)/3);switch(ne){case"q":return String(re);case"qq":return h(re,2);case"qo":return fe.ordinalNumber(re,{unit:"quarter"});case"qqq":return fe.quarter(re,{width:"abbreviated",context:"standalone"});case"qqqqq":return fe.quarter(re,{width:"narrow",context:"standalone"});default:return fe.quarter(re,{width:"wide",context:"standalone"})}},M:function(te,ne,fe){var re=te.getUTCMonth();switch(ne){case"M":case"MM":return g_M(te,ne);case"Mo":return fe.ordinalNumber(re+1,{unit:"month"});case"MMM":return fe.month(re,{width:"abbreviated",context:"formatting"});case"MMMMM":return fe.month(re,{width:"narrow",context:"formatting"});default:return fe.month(re,{width:"wide",context:"formatting"})}},L:function(te,ne,fe){var re=te.getUTCMonth();switch(ne){case"L":return String(re+1);case"LL":return h(re+1,2);case"Lo":return fe.ordinalNumber(re+1,{unit:"month"});case"LLL":return fe.month(re,{width:"abbreviated",context:"standalone"});case"LLLLL":return fe.month(re,{width:"narrow",context:"standalone"});default:return fe.month(re,{width:"wide",context:"standalone"})}},w:function(te,ne,fe,re){var be=(0,z.Z)(te,re);return"wo"===ne?fe.ordinalNumber(be,{unit:"week"}):h(be,ne.length)},I:function(te,ne,fe){var re=(0,E.Z)(te);return"Io"===ne?fe.ordinalNumber(re,{unit:"week"}):h(re,ne.length)},d:function(te,ne,fe){return"do"===ne?fe.ordinalNumber(te.getUTCDate(),{unit:"date"}):g_d(te,ne)},D:function(te,ne,fe){var re=function C(K){(0,i.Z)(1,arguments);var te=(0,t.Z)(K),ne=te.getTime();te.setUTCMonth(0,1),te.setUTCHours(0,0,0,0);var fe=te.getTime();return Math.floor((ne-fe)/864e5)+1}(te);return"Do"===ne?fe.ordinalNumber(re,{unit:"dayOfYear"}):h(re,ne.length)},E:function(te,ne,fe){var re=te.getUTCDay();switch(ne){case"E":case"EE":case"EEE":return fe.day(re,{width:"abbreviated",context:"formatting"});case"EEEEE":return fe.day(re,{width:"narrow",context:"formatting"});case"EEEEEE":return fe.day(re,{width:"short",context:"formatting"});default:return fe.day(re,{width:"wide",context:"formatting"})}},e:function(te,ne,fe,re){var be=te.getUTCDay(),le=(be-re.weekStartsOn+8)%7||7;switch(ne){case"e":return String(le);case"ee":return h(le,2);case"eo":return fe.ordinalNumber(le,{unit:"day"});case"eee":return fe.day(be,{width:"abbreviated",context:"formatting"});case"eeeee":return fe.day(be,{width:"narrow",context:"formatting"});case"eeeeee":return fe.day(be,{width:"short",context:"formatting"});default:return fe.day(be,{width:"wide",context:"formatting"})}},c:function(te,ne,fe,re){var be=te.getUTCDay(),le=(be-re.weekStartsOn+8)%7||7;switch(ne){case"c":return String(le);case"cc":return h(le,ne.length);case"co":return fe.ordinalNumber(le,{unit:"day"});case"ccc":return fe.day(be,{width:"abbreviated",context:"standalone"});case"ccccc":return fe.day(be,{width:"narrow",context:"standalone"});case"cccccc":return fe.day(be,{width:"short",context:"standalone"});default:return fe.day(be,{width:"wide",context:"standalone"})}},i:function(te,ne,fe){var re=te.getUTCDay(),be=0===re?7:re;switch(ne){case"i":return String(be);case"ii":return h(be,ne.length);case"io":return fe.ordinalNumber(be,{unit:"day"});case"iii":return fe.day(re,{width:"abbreviated",context:"formatting"});case"iiiii":return fe.day(re,{width:"narrow",context:"formatting"});case"iiiiii":return fe.day(re,{width:"short",context:"formatting"});default:return fe.day(re,{width:"wide",context:"formatting"})}},a:function(te,ne,fe){var be=te.getUTCHours()/12>=1?"pm":"am";switch(ne){case"a":case"aa":return fe.dayPeriod(be,{width:"abbreviated",context:"formatting"});case"aaa":return fe.dayPeriod(be,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return fe.dayPeriod(be,{width:"narrow",context:"formatting"});default:return fe.dayPeriod(be,{width:"wide",context:"formatting"})}},b:function(te,ne,fe){var be,re=te.getUTCHours();switch(be=12===re?"noon":0===re?"midnight":re/12>=1?"pm":"am",ne){case"b":case"bb":return fe.dayPeriod(be,{width:"abbreviated",context:"formatting"});case"bbb":return fe.dayPeriod(be,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return fe.dayPeriod(be,{width:"narrow",context:"formatting"});default:return fe.dayPeriod(be,{width:"wide",context:"formatting"})}},B:function(te,ne,fe){var be,re=te.getUTCHours();switch(be=re>=17?"evening":re>=12?"afternoon":re>=4?"morning":"night",ne){case"B":case"BB":case"BBB":return fe.dayPeriod(be,{width:"abbreviated",context:"formatting"});case"BBBBB":return fe.dayPeriod(be,{width:"narrow",context:"formatting"});default:return fe.dayPeriod(be,{width:"wide",context:"formatting"})}},h:function(te,ne,fe){if("ho"===ne){var re=te.getUTCHours()%12;return 0===re&&(re=12),fe.ordinalNumber(re,{unit:"hour"})}return g_h(te,ne)},H:function(te,ne,fe){return"Ho"===ne?fe.ordinalNumber(te.getUTCHours(),{unit:"hour"}):g_H(te,ne)},K:function(te,ne,fe){var re=te.getUTCHours()%12;return"Ko"===ne?fe.ordinalNumber(re,{unit:"hour"}):h(re,ne.length)},k:function(te,ne,fe){var re=te.getUTCHours();return 0===re&&(re=24),"ko"===ne?fe.ordinalNumber(re,{unit:"hour"}):h(re,ne.length)},m:function(te,ne,fe){return"mo"===ne?fe.ordinalNumber(te.getUTCMinutes(),{unit:"minute"}):g_m(te,ne)},s:function(te,ne,fe){return"so"===ne?fe.ordinalNumber(te.getUTCSeconds(),{unit:"second"}):g_s(te,ne)},S:function(te,ne){return g_S(te,ne)},X:function(te,ne,fe,re){var le=(re._originalDate||te).getTimezoneOffset();if(0===le)return"Z";switch(ne){case"X":return y(le);case"XXXX":case"XX":return T(le);default:return T(le,":")}},x:function(te,ne,fe,re){var le=(re._originalDate||te).getTimezoneOffset();switch(ne){case"x":return y(le);case"xxxx":case"xx":return T(le);default:return T(le,":")}},O:function(te,ne,fe,re){var le=(re._originalDate||te).getTimezoneOffset();switch(ne){case"O":case"OO":case"OOO":return"GMT"+f(le,":");default:return"GMT"+T(le,":")}},z:function(te,ne,fe,re){var le=(re._originalDate||te).getTimezoneOffset();switch(ne){case"z":case"zz":case"zzz":return"GMT"+f(le,":");default:return"GMT"+T(le,":")}},t:function(te,ne,fe,re){return h(Math.floor((re._originalDate||te).getTime()/1e3),ne.length)},T:function(te,ne,fe,re){return h((re._originalDate||te).getTime(),ne.length)}};var D=o(3001),_=o(45351),P=o(32566),S=o(96156),A=o(5227),k=o(46719),R=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,$=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,W=/^'([^]*?)'?$/,ze=/''/g,Y=/[a-zA-Z]/;function G(K,te,ne){var fe,re,be,le,ce,Q,ie,ae,xe,Me,Ye,q,ve,ee,Be,Re,ct,Ae;(0,i.Z)(2,arguments);var Mt=String(te),je=(0,A.j)(),ot=null!==(fe=null!==(re=ne?.locale)&&void 0!==re?re:je.locale)&&void 0!==fe?fe:k.Z,mt=(0,S.Z)(null!==(be=null!==(le=null!==(ce=null!==(Q=ne?.firstWeekContainsDate)&&void 0!==Q?Q:null==ne||null===(ie=ne.locale)||void 0===ie||null===(ae=ie.options)||void 0===ae?void 0:ae.firstWeekContainsDate)&&void 0!==ce?ce:je.firstWeekContainsDate)&&void 0!==le?le:null===(xe=je.locale)||void 0===xe||null===(Me=xe.options)||void 0===Me?void 0:Me.firstWeekContainsDate)&&void 0!==be?be:1);if(!(mt>=1&&mt<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var we=(0,S.Z)(null!==(Ye=null!==(q=null!==(ve=null!==(ee=ne?.weekStartsOn)&&void 0!==ee?ee:null==ne||null===(Be=ne.locale)||void 0===Be||null===(Re=Be.options)||void 0===Re?void 0:Re.weekStartsOn)&&void 0!==ve?ve:je.weekStartsOn)&&void 0!==q?q:null===(ct=je.locale)||void 0===ct||null===(Ae=ct.options)||void 0===Ae?void 0:Ae.weekStartsOn)&&void 0!==Ye?Ye:0);if(!(we>=0&&we<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");if(!ot.localize)throw new RangeError("locale must contain localize property");if(!ot.formatLong)throw new RangeError("locale must contain formatLong property");var de=(0,t.Z)(K);if(!(0,e.Z)(de))throw new RangeError("Invalid time value");var U=(0,_.Z)(de),B=(0,n.Z)(de,U),Ee={firstWeekContainsDate:mt,weekStartsOn:we,locale:ot,_originalDate:de},Ie=Mt.match($).map(function(Ne){var pt=Ne[0];return"p"===pt||"P"===pt?(0,D.Z[pt])(Ne,ot.formatLong):Ne}).join("").match(R).map(function(Ne){if("''"===Ne)return"'";var pt=Ne[0];if("'"===pt)return function V(K){var te=K.match(W);return te?te[1].replace(ze,"'"):K}(Ne);var Dt=x[pt];if(Dt)return!(null!=ne&&ne.useAdditionalWeekYearTokens)&&(0,P.Do)(Ne)&&(0,P.qp)(Ne,te,String(K)),!(null!=ne&&ne.useAdditionalDayOfYearTokens)&&(0,P.Iu)(Ne)&&(0,P.qp)(Ne,te,String(K)),Dt(B,Ne,ot.localize,Ee);if(pt.match(Y))throw new RangeError("Format string contains an unescaped latin alphabet character `"+pt+"`");return Ne}).join("");return Ie}},53770:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>T});var e=o(5227),n=o(40581),t=o(62816);function i(x,D){(0,t.Z)(2,arguments);var _=(0,n.Z)(x),P=(0,n.Z)(D),S=_.getTime()-P.getTime();return S<0?-1:S>0?1:S}var l=o(80275),C=o(80787),u=o(13061),z=o(46719),M=o(48292),v=o(45351),g=1440,d=2520,p=43200,f=86400;function T(x,D){return(0,t.Z)(1,arguments),function y(x,D,_){var P,S;(0,t.Z)(2,arguments);var A=(0,e.j)(),k=null!==(P=null!==(S=_?.locale)&&void 0!==S?S:A.locale)&&void 0!==P?P:z.Z;if(!k.formatDistance)throw new RangeError("locale must contain formatDistance property");var R=i(x,D);if(isNaN(R))throw new RangeError("Invalid time value");var W,ze,$=(0,M.Z)(function h(x){return(0,M.Z)({},x)}(_),{addSuffix:!!_?.addSuffix,comparison:R});R>0?(W=(0,n.Z)(D),ze=(0,n.Z)(x)):(W=(0,n.Z)(x),ze=(0,n.Z)(D));var K,Y=(0,u.Z)(ze,W),G=((0,v.Z)(ze)-(0,v.Z)(W))/1e3,V=Math.round((Y-G)/60);if(V<2)return null!=_&&_.includeSeconds?Y<5?k.formatDistance("lessThanXSeconds",5,$):Y<10?k.formatDistance("lessThanXSeconds",10,$):Y<20?k.formatDistance("lessThanXSeconds",20,$):Y<40?k.formatDistance("halfAMinute",0,$):k.formatDistance(Y<60?"lessThanXMinutes":"xMinutes",1,$):0===V?k.formatDistance("lessThanXMinutes",1,$):k.formatDistance("xMinutes",V,$);if(V<45)return k.formatDistance("xMinutes",V,$);if(V<90)return k.formatDistance("aboutXHours",1,$);if(V27&&_.setDate(30),_.setMonth(_.getMonth()-S*A);var R=i(_,P)===-S;(0,C.Z)((0,n.Z)(x))&&1===A&&1===i(x,P)&&(R=!1),k=S*(A-Number(R))}return 0===k?0:k}(ze,W),K<12){var fe=Math.round(V/p);return k.formatDistance("xMonths",fe,$)}var re=K%12,be=Math.floor(K/12);return re<3?k.formatDistance("aboutXYears",be,$):re<9?k.formatDistance("overXYears",be,$):k.formatDistance("almostXYears",be+1,$)}(x,Date.now(),D)}},80787:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>l});var e=o(40581),n=o(85134),t=o(92682),i=o(62816);function l(C){(0,i.Z)(1,arguments);var E=(0,e.Z)(C);return(0,n.Z)(E).getTime()===(0,t.Z)(E).getTime()}},34338:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>l});var e=o(71002),n=o(62816),i=o(40581);function l(C){if((0,n.Z)(1,arguments),!function t(C){return(0,n.Z)(1,arguments),C instanceof Date||"object"===(0,e.Z)(C)&&"[object Date]"===Object.prototype.toString.call(C)}(C)&&"number"!=typeof C)return!1;var E=(0,i.Z)(C);return!isNaN(Number(E))}},80356:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>_e});var e=o(71002);function n(b,N){(null==N||N>b.length)&&(N=b.length);for(var O=0,j=new Array(N);O=b.length?{done:!0}:{done:!1,value:b[j++]}},e:function(sn){throw sn},f:L}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var bt,he=!0,Ce=!1;return{s:function(){O=O.call(b)},n:function(){var sn=O.next();return he=sn.done,sn},e:function(sn){Ce=!0,bt=sn},f:function(){try{!he&&null!=O.return&&O.return()}finally{if(Ce)throw bt}}}}var l=o(46719),C=o(73492),E=o(40581),u=o(48292),z=o(3001),M=o(45351),h=o(32566),v=o(96156),g=o(62816);function d(b){if(void 0===b)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return b}function p(b,N){return(p=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(j,L){return j.__proto__=L,j})(b,N)}function f(b,N){if("function"!=typeof N&&null!==N)throw new TypeError("Super expression must either be null or a function");b.prototype=Object.create(N&&N.prototype,{constructor:{value:b,writable:!0,configurable:!0}}),Object.defineProperty(b,"prototype",{writable:!1}),N&&p(b,N)}function y(b){return(y=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(O){return O.__proto__||Object.getPrototypeOf(O)})(b)}function D(b){var N=function T(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}();return function(){var L,j=y(b);if(N){var he=y(this).constructor;L=Reflect.construct(j,arguments,he)}else L=j.apply(this,arguments);return function x(b,N){if(N&&("object"===(0,e.Z)(N)||"function"==typeof N))return N;if(void 0!==N)throw new TypeError("Derived constructors may only return object or undefined");return d(b)}(this,L)}}function _(b,N){if(!(b instanceof N))throw new TypeError("Cannot call a class as a function")}function S(b){var N=function P(b,N){if("object"!==(0,e.Z)(b)||null===b)return b;var O=b[Symbol.toPrimitive];if(void 0!==O){var j=O.call(b,N||"default");if("object"!==(0,e.Z)(j))return j;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===N?String:Number)(b)}(b,"string");return"symbol"===(0,e.Z)(N)?N:String(N)}function A(b,N){for(var O=0;O0,j=O?N:1-N;if(j<=50)L=b||100;else{var he=j+50;L=b+100*Math.floor(he/100)-(b>=he%100?100:0)}return O?L:1-L}function xe(b){return b%400==0||b%4==0&&b%100!=0}var Me=function(b){f(O,b);var N=D(O);function O(){var j;_(this,O);for(var L=arguments.length,he=new Array(L),Ce=0;Ce0}},{key:"set",value:function(L,he,Ce){var bt=L.getUTCFullYear();if(Ce.isTwoDigitYear){var Ft=ae(Ce.year,bt);return L.setUTCFullYear(Ft,0,1),L.setUTCHours(0,0,0,0),L}return L.setUTCFullYear("era"in he&&1!==he.era?1-Ce.year:Ce.year,0,1),L.setUTCHours(0,0,0,0),L}}]),O}(G),Ye=o(93281),q=o(5163),ve=function(b){f(O,b);var N=D(O);function O(){var j;_(this,O);for(var L=arguments.length,he=new Array(L),Ce=0;Ce0}},{key:"set",value:function(L,he,Ce,bt){var Ft=(0,Ye.Z)(L,bt);if(Ce.isTwoDigitYear){var sn=ae(Ce.year,Ft);return L.setUTCFullYear(sn,0,bt.firstWeekContainsDate),L.setUTCHours(0,0,0,0),(0,q.Z)(L,bt)}return L.setUTCFullYear("era"in he&&1!==he.era?1-Ce.year:Ce.year,0,bt.firstWeekContainsDate),L.setUTCHours(0,0,0,0),(0,q.Z)(L,bt)}}]),O}(G),ee=o(29307),Be=function(b){f(O,b);var N=D(O);function O(){var j;_(this,O);for(var L=arguments.length,he=new Array(L),Ce=0;Ce=1&&he<=4}},{key:"set",value:function(L,he,Ce){return L.setUTCMonth(3*(Ce-1),1),L.setUTCHours(0,0,0,0),L}}]),O}(G),Ae=function(b){f(O,b);var N=D(O);function O(){var j;_(this,O);for(var L=arguments.length,he=new Array(L),Ce=0;Ce=1&&he<=4}},{key:"set",value:function(L,he,Ce){return L.setUTCMonth(3*(Ce-1),1),L.setUTCHours(0,0,0,0),L}}]),O}(G),Mt=function(b){f(O,b);var N=D(O);function O(){var j;_(this,O);for(var L=arguments.length,he=new Array(L),Ce=0;Ce=0&&he<=11}},{key:"set",value:function(L,he,Ce){return L.setUTCMonth(Ce,1),L.setUTCHours(0,0,0,0),L}}]),O}(G),je=function(b){f(O,b);var N=D(O);function O(){var j;_(this,O);for(var L=arguments.length,he=new Array(L),Ce=0;Ce=0&&he<=11}},{key:"set",value:function(L,he,Ce){return L.setUTCMonth(Ce,1),L.setUTCHours(0,0,0,0),L}}]),O}(G),ot=o(77356),we=function(b){f(O,b);var N=D(O);function O(){var j;_(this,O);for(var L=arguments.length,he=new Array(L),Ce=0;Ce=1&&he<=53}},{key:"set",value:function(L,he,Ce,bt){return(0,q.Z)(function mt(b,N,O){(0,g.Z)(2,arguments);var j=(0,E.Z)(b),L=(0,v.Z)(N),he=(0,ot.Z)(j,O)-L;return j.setUTCDate(j.getUTCDate()-7*he),j}(L,Ce,bt),bt)}}]),O}(G),de=o(3606),B=function(b){f(O,b);var N=D(O);function O(){var j;_(this,O);for(var L=arguments.length,he=new Array(L),Ce=0;Ce=1&&he<=53}},{key:"set",value:function(L,he,Ce){return(0,ee.Z)(function U(b,N){(0,g.Z)(2,arguments);var O=(0,E.Z)(b),j=(0,v.Z)(N),L=(0,de.Z)(O)-j;return O.setUTCDate(O.getUTCDate()-7*L),O}(L,Ce))}}]),O}(G),Ee=[31,28,31,30,31,30,31,31,30,31,30,31],Ie=[31,29,31,30,31,30,31,31,30,31,30,31],Ne=function(b){f(O,b);var N=D(O);function O(){var j;_(this,O);for(var L=arguments.length,he=new Array(L),Ce=0;Ce=1&&he<=Ie[Ft]:he>=1&&he<=Ee[Ft]}},{key:"set",value:function(L,he,Ce){return L.setUTCDate(Ce),L.setUTCHours(0,0,0,0),L}}]),O}(G),pt=function(b){f(O,b);var N=D(O);function O(){var j;_(this,O);for(var L=arguments.length,he=new Array(L),Ce=0;Ce=1&&he<=366:he>=1&&he<=365}},{key:"set",value:function(L,he,Ce){return L.setUTCMonth(0,Ce),L.setUTCHours(0,0,0,0),L}}]),O}(G),Dt=o(5227);function Lt(b,N,O){var j,L,he,Ce,bt,Ft,sn,pn;(0,g.Z)(2,arguments);var vn=(0,Dt.j)(),Dn=(0,v.Z)(null!==(j=null!==(L=null!==(he=null!==(Ce=O?.weekStartsOn)&&void 0!==Ce?Ce:null==O||null===(bt=O.locale)||void 0===bt||null===(Ft=bt.options)||void 0===Ft?void 0:Ft.weekStartsOn)&&void 0!==he?he:vn.weekStartsOn)&&void 0!==L?L:null===(sn=vn.locale)||void 0===sn||null===(pn=sn.options)||void 0===pn?void 0:pn.weekStartsOn)&&void 0!==j?j:0);if(!(Dn>=0&&Dn<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var Mn=(0,E.Z)(b),En=(0,v.Z)(N),si=((En%7+7)%7=0&&he<=6}},{key:"set",value:function(L,he,Ce,bt){return(L=Lt(L,Ce,bt)).setUTCHours(0,0,0,0),L}}]),O}(G),qt=function(b){f(O,b);var N=D(O);function O(){var j;_(this,O);for(var L=arguments.length,he=new Array(L),Ce=0;Ce=0&&he<=6}},{key:"set",value:function(L,he,Ce,bt){return(L=Lt(L,Ce,bt)).setUTCHours(0,0,0,0),L}}]),O}(G),en=function(b){f(O,b);var N=D(O);function O(){var j;_(this,O);for(var L=arguments.length,he=new Array(L),Ce=0;Ce=0&&he<=6}},{key:"set",value:function(L,he,Ce,bt){return(L=Lt(L,Ce,bt)).setUTCHours(0,0,0,0),L}}]),O}(G),Wt=function(b){f(O,b);var N=D(O);function O(){var j;_(this,O);for(var L=arguments.length,he=new Array(L),Ce=0;Ce=1&&he<=7}},{key:"set",value:function(L,he,Ce){return L=function cn(b,N){(0,g.Z)(2,arguments);var O=(0,v.Z)(N);O%7==0&&(O-=7);var L=(0,E.Z)(b),Ft=((O%7+7)%7<1?7:0)+O-L.getUTCDay();return L.setUTCDate(L.getUTCDate()+Ft),L}(L,Ce),L.setUTCHours(0,0,0,0),L}}]),O}(G),Vt=function(b){f(O,b);var N=D(O);function O(){var j;_(this,O);for(var L=arguments.length,he=new Array(L),Ce=0;Ce=1&&he<=12}},{key:"set",value:function(L,he,Ce){var bt=L.getUTCHours()>=12;return L.setUTCHours(bt&&Ce<12?Ce+12:bt||12!==Ce?Ce:0,0,0,0),L}}]),O}(G),It=function(b){f(O,b);var N=D(O);function O(){var j;_(this,O);for(var L=arguments.length,he=new Array(L),Ce=0;Ce=0&&he<=23}},{key:"set",value:function(L,he,Ce){return L.setUTCHours(Ce,0,0,0),L}}]),O}(G),Ot=function(b){f(O,b);var N=D(O);function O(){var j;_(this,O);for(var L=arguments.length,he=new Array(L),Ce=0;Ce=0&&he<=11}},{key:"set",value:function(L,he,Ce){var bt=L.getUTCHours()>=12;return L.setUTCHours(bt&&Ce<12?Ce+12:Ce,0,0,0),L}}]),O}(G),xt=function(b){f(O,b);var N=D(O);function O(){var j;_(this,O);for(var L=arguments.length,he=new Array(L),Ce=0;Ce=1&&he<=24}},{key:"set",value:function(L,he,Ce){return L.setUTCHours(Ce<=24?Ce%24:Ce,0,0,0),L}}]),O}(G),Qe=function(b){f(O,b);var N=D(O);function O(){var j;_(this,O);for(var L=arguments.length,he=new Array(L),Ce=0;Ce=0&&he<=59}},{key:"set",value:function(L,he,Ce){return L.setUTCMinutes(Ce,0,0),L}}]),O}(G),ke=function(b){f(O,b);var N=D(O);function O(){var j;_(this,O);for(var L=arguments.length,he=new Array(L),Ce=0;Ce=0&&he<=59}},{key:"set",value:function(L,he,Ce){return L.setUTCSeconds(Ce,0),L}}]),O}(G),pe=function(b){f(O,b);var N=D(O);function O(){var j;_(this,O);for(var L=arguments.length,he=new Array(L),Ce=0;Ce=1&&Oi<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var ei=(0,v.Z)(null!==(En=null!==(bn=null!==(Rn=null!==(qn=j?.weekStartsOn)&&void 0!==qn?qn:null==j||null===(si=j.locale)||void 0===si||null===(Wn=si.options)||void 0===Wn?void 0:Wn.weekStartsOn)&&void 0!==Rn?Rn:fi.weekStartsOn)&&void 0!==bn?bn:null===(ci=fi.locale)||void 0===ci||null===(ri=ci.options)||void 0===ri?void 0:ri.weekStartsOn)&&void 0!==En?En:0);if(!(ei>=0&&ei<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");if(""===hi)return""===di?(0,E.Z)(O):new Date(NaN);var $i,po={firstWeekContainsDate:Oi,weekStartsOn:ei,locale:zi},oo=[new Y],Wi=hi.match(De).map(function(oi){var Bn=oi[0];return Bn in z.Z?(0,z.Z[Bn])(oi,zi.formatLong):oi}).join("").match(wt),Ri=[],Li=i(Wi);try{var Qi=function(){var Bn=$i.value;!(null!=j&&j.useAdditionalWeekYearTokens)&&(0,h.Do)(Bn)&&(0,h.qp)(Bn,hi,b),(null==j||!j.useAdditionalDayOfYearTokens)&&(0,h.Iu)(Bn)&&(0,h.qp)(Bn,hi,b);var Et=Bn[0],un=Ue[Et];if(un){var lt=un.incompatibleTokens;if(Array.isArray(lt)){var Ct=Ri.find(function(Qt){return lt.includes(Qt.token)||Qt.token===Et});if(Ct)throw new RangeError("The format string mustn't contain `".concat(Ct.fullToken,"` and `").concat(Bn,"` at the same time"))}else if("*"===un.incompatibleTokens&&Ri.length>0)throw new RangeError("The format string mustn't contain `".concat(Bn,"` and any other token at the same time"));Ri.push({token:Et,fullToken:Bn});var At=un.run(di,Bn,zi.match,po);if(!At)return{v:new Date(NaN)};oo.push(At.setter),di=At.rest}else{if(Et.match(Ke))throw new RangeError("Format string contains an unescaped latin alphabet character `"+Et+"`");if("''"===Bn?Bn="'":"'"===Et&&(Bn=function it(b){return b.match(Pe)[1].replace(Je,"'")}(Bn)),0!==di.indexOf(Bn))return{v:new Date(NaN)};di=di.slice(Bn.length)}};for(Li.s();!($i=Li.n()).done;){var Mo=Qi();if("object"===(0,e.Z)(Mo))return Mo.v}}catch(oi){Li.e(oi)}finally{Li.f()}if(di.length>0&&Ge.test(di))return new Date(NaN);var wi=oo.map(function(oi){return oi.priority}).sort(function(oi,Bn){return Bn-oi}).filter(function(oi,Bn,Et){return Et.indexOf(oi)===Bn}).map(function(oi){return oo.filter(function(Bn){return Bn.priority===oi}).sort(function(Bn,Et){return Et.subPriority-Bn.subPriority})}).map(function(oi){return oi[0]}),Xi=(0,E.Z)(O);if(isNaN(Xi.getTime()))return new Date(NaN);var Pi,Ei=(0,C.Z)(Xi,(0,M.Z)(Xi)),Hi={},qi=i(wi);try{for(qi.s();!(Pi=qi.n()).done;){var Ii=Pi.value;if(!Ii.validate(Ei,po))return new Date(NaN);var ki=Ii.set(Ei,Hi,po);Array.isArray(ki)?(Ei=ki[0],(0,u.Z)(Hi,ki[1])):Ei=ki}}catch(oi){qi.e(oi)}finally{qi.f()}return Ei}},79189:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>t});var e=o(40581),n=o(62816);function t(i){(0,n.Z)(1,arguments);var l=(0,e.Z)(i);return l.setHours(0,0,0,0),l}},47680:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>t});var e=o(40581),n=o(62816);function t(i){(0,n.Z)(1,arguments);var l=(0,e.Z)(i);return l.setDate(1),l.setHours(0,0,0,0),l}},97753:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>l});var e=o(40581),n=o(96156),t=o(62816),i=o(5227);function l(C,E){var u,z,M,h,v,g,d,p;(0,t.Z)(1,arguments);var f=(0,i.j)(),y=(0,n.Z)(null!==(u=null!==(z=null!==(M=null!==(h=E?.weekStartsOn)&&void 0!==h?h:null==E||null===(v=E.locale)||void 0===v||null===(g=v.options)||void 0===g?void 0:g.weekStartsOn)&&void 0!==M?M:f.weekStartsOn)&&void 0!==z?z:null===(d=f.locale)||void 0===d||null===(p=d.options)||void 0===p?void 0:p.weekStartsOn)&&void 0!==u?u:0);if(!(y>=0&&y<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var T=(0,e.Z)(C),x=T.getDay(),D=(x{"use strict";o.d(I,{Z:()=>i});var e=o(640),n=o(62816),t=o(96156);function i(l,C){(0,n.Z)(2,arguments);var E=(0,t.Z)(C);return(0,e.Z)(l,-E)}},76962:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>l});var e=o(96156),n=o(68584),t=o(62816);function l(C,E){return(0,t.Z)(2,arguments),function i(C,E){(0,t.Z)(2,arguments);var u=(0,e.Z)(E);return(0,n.Z)(C,7*u)}(C,-(0,e.Z)(E))}},40581:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>t});var e=o(71002),n=o(62816);function t(i){(0,n.Z)(1,arguments);var l=Object.prototype.toString.call(i);return i instanceof Date||"object"===(0,e.Z)(i)&&"[object Date]"===l?new Date(i.getTime()):"number"==typeof i||"[object Number]"===l?new Date(i):(("string"==typeof i||"[object String]"===l)&&typeof console<"u"&&(console.warn("Starting with v2.0.0-beta.1 date-fns doesn't accept strings as date arguments. Please use `parseISO` to parse strings. See: https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#string-arguments"),console.warn((new Error).stack)),new Date(NaN))}},15377:nt=>{"use strict";var I=Object.prototype.hasOwnProperty,o=Object.prototype.toString,e=Object.defineProperty,n=Object.getOwnPropertyDescriptor,t=function(u){return"function"==typeof Array.isArray?Array.isArray(u):"[object Array]"===o.call(u)},i=function(u){if(!u||"[object Object]"!==o.call(u))return!1;var h,z=I.call(u,"constructor"),M=u.constructor&&u.constructor.prototype&&I.call(u.constructor.prototype,"isPrototypeOf");if(u.constructor&&!z&&!M)return!1;for(h in u);return typeof h>"u"||I.call(u,h)},l=function(u,z){e&&"__proto__"===z.name?e(u,z.name,{enumerable:!0,configurable:!0,value:z.newValue,writable:!0}):u[z.name]=z.newValue},C=function(u,z){if("__proto__"===z){if(!I.call(u,z))return;if(n)return n(u,z).value}return u[z]};nt.exports=function E(){var u,z,M,h,v,g,d=arguments[0],p=1,f=arguments.length,y=!1;for("boolean"==typeof d&&(y=d,d=arguments[1]||{},p=2),(null==d||"object"!=typeof d&&"function"!=typeof d)&&(d={});p{"use strict";nt.exports=function I(o,e){if(o===e)return!0;if(o&&e&&"object"==typeof o&&"object"==typeof e){if(o.constructor!==e.constructor)return!1;var n,t,i;if(Array.isArray(o)){if((n=o.length)!=e.length)return!1;for(t=n;0!=t--;)if(!I(o[t],e[t]))return!1;return!0}if(o.constructor===RegExp)return o.source===e.source&&o.flags===e.flags;if(o.valueOf!==Object.prototype.valueOf)return o.valueOf()===e.valueOf();if(o.toString!==Object.prototype.toString)return o.toString()===e.toString();if((n=(i=Object.keys(o)).length)!==Object.keys(e).length)return!1;for(t=n;0!=t--;)if(!Object.prototype.hasOwnProperty.call(e,i[t]))return!1;for(t=n;0!=t--;){var l=i[t];if(!I(o[l],e[l]))return!1}return!0}return o!=o&&e!=e}},10217:function(nt,I){var o,n;void 0!==(n="function"==typeof(o=function(){"use strict";function i(M,h,v){var g=new XMLHttpRequest;g.open("GET",M),g.responseType="blob",g.onload=function(){z(g.response,h,v)},g.onerror=function(){console.error("could not download file")},g.send()}function l(M){var h=new XMLHttpRequest;h.open("HEAD",M,!1);try{h.send()}catch{}return 200<=h.status&&299>=h.status}function C(M){try{M.dispatchEvent(new MouseEvent("click"))}catch{var h=document.createEvent("MouseEvents");h.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),M.dispatchEvent(h)}}var E="object"==typeof window&&window.window===window?window:"object"==typeof self&&self.self===self?self:"object"==typeof global&&global.global===global?global:void 0,u=E.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),z=E.saveAs||("object"!=typeof window||window!==E?function(){}:"download"in HTMLAnchorElement.prototype&&!u?function(M,h,v){var g=E.URL||E.webkitURL,d=document.createElement("a");d.download=h=h||M.name||"download",d.rel="noopener","string"==typeof M?(d.href=M,d.origin===location.origin?C(d):l(d.href)?i(M,h,v):C(d,d.target="_blank")):(d.href=g.createObjectURL(M),setTimeout(function(){g.revokeObjectURL(d.href)},4e4),setTimeout(function(){C(d)},0))}:"msSaveOrOpenBlob"in navigator?function(M,h,v){if(h=h||M.name||"download","string"!=typeof M)navigator.msSaveOrOpenBlob(function t(M,h){return typeof h>"u"?h={autoBom:!1}:"object"!=typeof h&&(console.warn("Deprecated: Expected third argument to be a object"),h={autoBom:!h}),h.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(M.type)?new Blob(["\ufeff",M],{type:M.type}):M}(M,v),h);else if(l(M))i(M,h,v);else{var g=document.createElement("a");g.href=M,g.target="_blank",setTimeout(function(){C(g)})}}:function(M,h,v,g){if((g=g||open("","_blank"))&&(g.document.title=g.document.body.innerText="downloading..."),"string"==typeof M)return i(M,h,v);var d="application/octet-stream"===M.type,p=/constructor/i.test(E.HTMLElement)||E.safari,f=/CriOS\/[\d]+/.test(navigator.userAgent);if((f||d&&p||u)&&typeof FileReader<"u"){var y=new FileReader;y.onloadend=function(){var D=y.result;D=f?D:D.replace(/^data:[^;]*;/,"data:attachment/file;"),g?g.location.href=D:location=D,g=null},y.readAsDataURL(M)}else{var T=E.URL||E.webkitURL,x=T.createObjectURL(M);g?g.location=x:location.href=x,g=null,setTimeout(function(){T.revokeObjectURL(x)},4e4)}});E.saveAs=z.saveAs=z,nt.exports=z})?o.apply(I,[]):o)&&(nt.exports=n)},37037:nt=>{"use strict";var I=nt.exports=function(n,t,i){"function"==typeof t&&(i=t,t={}),o(t,"function"==typeof(i=t.cb||i)?i:i.pre||function(){},i.post||function(){},n,"",n)};function o(n,t,i,l,C,E,u,z,M,h){if(l&&"object"==typeof l&&!Array.isArray(l)){for(var v in t(l,C,E,u,z,M,h),l){var g=l[v];if(Array.isArray(g)){if(v in I.arrayKeywords)for(var d=0;d{var e,n=function(){var t=String.fromCharCode,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",l="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",C={};function E(z,M){if(!C[z]){C[z]={};for(var h=0;h>>8,h[2*v+1]=d%256}return h},decompressFromUint8Array:function(z){if(null==z)return u.decompress(z);for(var M=new Array(z.length/2),h=0,v=M.length;h>=1}else{for(g=1,v=0;v<_;v++)S=S<<1|g,A==M-1?(A=0,P.push(h(S)),S=0):A++,g=0;for(g=T.charCodeAt(0),v=0;v<16;v++)S=S<<1|1&g,A==M-1?(A=0,P.push(h(S)),S=0):A++,g>>=1}0==--x&&(x=Math.pow(2,_),_++),delete p[T]}else for(g=d[T],v=0;v<_;v++)S=S<<1|1&g,A==M-1?(A=0,P.push(h(S)),S=0):A++,g>>=1;0==--x&&(x=Math.pow(2,_),_++),d[y]=D++,T=String(f)}if(""!==T){if(Object.prototype.hasOwnProperty.call(p,T)){if(T.charCodeAt(0)<256){for(v=0;v<_;v++)S<<=1,A==M-1?(A=0,P.push(h(S)),S=0):A++;for(g=T.charCodeAt(0),v=0;v<8;v++)S=S<<1|1&g,A==M-1?(A=0,P.push(h(S)),S=0):A++,g>>=1}else{for(g=1,v=0;v<_;v++)S=S<<1|g,A==M-1?(A=0,P.push(h(S)),S=0):A++,g=0;for(g=T.charCodeAt(0),v=0;v<16;v++)S=S<<1|1&g,A==M-1?(A=0,P.push(h(S)),S=0):A++,g>>=1}0==--x&&(x=Math.pow(2,_),_++),delete p[T]}else for(g=d[T],v=0;v<_;v++)S=S<<1|1&g,A==M-1?(A=0,P.push(h(S)),S=0):A++,g>>=1;0==--x&&(x=Math.pow(2,_),_++)}for(g=2,v=0;v<_;v++)S=S<<1|1&g,A==M-1?(A=0,P.push(h(S)),S=0):A++,g>>=1;for(;;){if(S<<=1,A==M-1){P.push(h(S));break}A++}return P.join("")},decompress:function(z){return null==z?"":""==z?null:u._decompress(z.length,32768,function(M){return z.charCodeAt(M)})},_decompress:function(z,M,h){var x,D,_,P,S,A,k,v=[],d=4,p=4,f=3,y="",T=[],R={val:h(0),position:M,index:1};for(x=0;x<3;x+=1)v[x]=x;for(_=0,S=Math.pow(2,2),A=1;A!=S;)P=R.val&R.position,R.position>>=1,0==R.position&&(R.position=M,R.val=h(R.index++)),_|=(P>0?1:0)*A,A<<=1;switch(_){case 0:for(_=0,S=Math.pow(2,8),A=1;A!=S;)P=R.val&R.position,R.position>>=1,0==R.position&&(R.position=M,R.val=h(R.index++)),_|=(P>0?1:0)*A,A<<=1;k=t(_);break;case 1:for(_=0,S=Math.pow(2,16),A=1;A!=S;)P=R.val&R.position,R.position>>=1,0==R.position&&(R.position=M,R.val=h(R.index++)),_|=(P>0?1:0)*A,A<<=1;k=t(_);break;case 2:return""}for(v[3]=k,D=k,T.push(k);;){if(R.index>z)return"";for(_=0,S=Math.pow(2,f),A=1;A!=S;)P=R.val&R.position,R.position>>=1,0==R.position&&(R.position=M,R.val=h(R.index++)),_|=(P>0?1:0)*A,A<<=1;switch(k=_){case 0:for(_=0,S=Math.pow(2,8),A=1;A!=S;)P=R.val&R.position,R.position>>=1,0==R.position&&(R.position=M,R.val=h(R.index++)),_|=(P>0?1:0)*A,A<<=1;v[p++]=t(_),k=p-1,d--;break;case 1:for(_=0,S=Math.pow(2,16),A=1;A!=S;)P=R.val&R.position,R.position>>=1,0==R.position&&(R.position=M,R.val=h(R.index++)),_|=(P>0?1:0)*A,A<<=1;v[p++]=t(_),k=p-1,d--;break;case 2:return T.join("")}if(0==d&&(d=Math.pow(2,f),f++),v[k])y=v[k];else{if(k!==p)return null;y=D+D.charAt(0)}T.push(y),v[p++]=D+y.charAt(0),D=y,0==--d&&(d=Math.pow(2,f),f++)}}};return u}();void 0!==(e=function(){return n}.call(I,o,I,nt))&&(nt.exports=e)},65619:(nt,I,o)=>{"use strict";o.d(I,{X:()=>n});var e=o(78645);class n extends e.x{constructor(i){super(),this._value=i}get value(){return this.getValue()}_subscribe(i){const l=super._subscribe(i);return!l.closed&&i.next(this._value),l}getValue(){const{hasError:i,thrownError:l,_value:C}=this;if(i)throw l;return this._throwIfClosed(),C}next(i){super.next(this._value=i)}}},65592:(nt,I,o)=>{"use strict";o.d(I,{y:()=>u});var e=o(80305),n=o(47394),t=o(14850),i=o(88407),l=o(82653),C=o(84674),E=o(81441);let u=(()=>{class v{constructor(d){d&&(this._subscribe=d)}lift(d){const p=new v;return p.source=this,p.operator=d,p}subscribe(d,p,f){const y=function h(v){return v&&v instanceof e.Lv||function M(v){return v&&(0,C.m)(v.next)&&(0,C.m)(v.error)&&(0,C.m)(v.complete)}(v)&&(0,n.Nn)(v)}(d)?d:new e.Hp(d,p,f);return(0,E.x)(()=>{const{operator:T,source:x}=this;y.add(T?T.call(y,x):x?this._subscribe(y):this._trySubscribe(y))}),y}_trySubscribe(d){try{return this._subscribe(d)}catch(p){d.error(p)}}forEach(d,p){return new(p=z(p))((f,y)=>{const T=new e.Hp({next:x=>{try{d(x)}catch(D){y(D),T.unsubscribe()}},error:y,complete:f});this.subscribe(T)})}_subscribe(d){var p;return null===(p=this.source)||void 0===p?void 0:p.subscribe(d)}[t.L](){return this}pipe(...d){return(0,i.U)(d)(this)}toPromise(d){return new(d=z(d))((p,f)=>{let y;this.subscribe(T=>y=T,T=>f(T),()=>p(y))})}}return v.create=g=>new v(g),v})();function z(v){var g;return null!==(g=v??l.config.Promise)&&void 0!==g?g:Promise}},97328:(nt,I,o)=>{"use strict";o.d(I,{t:()=>t});var e=o(78645),n=o(84552);class t extends e.x{constructor(l=1/0,C=1/0,E=n.l){super(),this._bufferSize=l,this._windowTime=C,this._timestampProvider=E,this._buffer=[],this._infiniteTimeWindow=!0,this._infiniteTimeWindow=C===1/0,this._bufferSize=Math.max(1,l),this._windowTime=Math.max(1,C)}next(l){const{isStopped:C,_buffer:E,_infiniteTimeWindow:u,_timestampProvider:z,_windowTime:M}=this;C||(E.push(l),!u&&E.push(z.now()+M)),this._trimBuffer(),super.next(l)}_subscribe(l){this._throwIfClosed(),this._trimBuffer();const C=this._innerSubscribe(l),{_infiniteTimeWindow:E,_buffer:u}=this,z=u.slice();for(let M=0;M{"use strict";o.d(I,{x:()=>E});var e=o(65592),n=o(47394);const i=(0,o(82306).d)(z=>function(){z(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"});var l=o(49039),C=o(81441);let E=(()=>{class z extends e.y{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(h){const v=new u(this,this);return v.operator=h,v}_throwIfClosed(){if(this.closed)throw new i}next(h){(0,C.x)(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(const v of this.currentObservers)v.next(h)}})}error(h){(0,C.x)(()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=h;const{observers:v}=this;for(;v.length;)v.shift().error(h)}})}complete(){(0,C.x)(()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;const{observers:h}=this;for(;h.length;)h.shift().complete()}})}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var h;return(null===(h=this.observers)||void 0===h?void 0:h.length)>0}_trySubscribe(h){return this._throwIfClosed(),super._trySubscribe(h)}_subscribe(h){return this._throwIfClosed(),this._checkFinalizedStatuses(h),this._innerSubscribe(h)}_innerSubscribe(h){const{hasError:v,isStopped:g,observers:d}=this;return v||g?n.Lc:(this.currentObservers=null,d.push(h),new n.w0(()=>{this.currentObservers=null,(0,l.P)(d,h)}))}_checkFinalizedStatuses(h){const{hasError:v,thrownError:g,isStopped:d}=this;v?h.error(g):d&&h.complete()}asObservable(){const h=new e.y;return h.source=this,h}}return z.create=(M,h)=>new u(M,h),z})();class u extends E{constructor(M,h){super(),this.destination=M,this.source=h}next(M){var h,v;null===(v=null===(h=this.destination)||void 0===h?void 0:h.next)||void 0===v||v.call(h,M)}error(M){var h,v;null===(v=null===(h=this.destination)||void 0===h?void 0:h.error)||void 0===v||v.call(h,M)}complete(){var M,h;null===(h=null===(M=this.destination)||void 0===M?void 0:M.complete)||void 0===h||h.call(M)}_subscribe(M){var h,v;return null!==(v=null===(h=this.source)||void 0===h?void 0:h.subscribe(M))&&void 0!==v?v:n.Lc}}},80305:(nt,I,o)=>{"use strict";o.d(I,{Hp:()=>f,Lv:()=>v});var e=o(84674),n=o(47394),t=o(82653),i=o(93894),l=o(72420);const C=z("C",void 0,void 0);function z(_,P,S){return{kind:_,value:P,error:S}}var M=o(87599),h=o(81441);class v extends n.w0{constructor(P){super(),this.isStopped=!1,P?(this.destination=P,(0,n.Nn)(P)&&P.add(this)):this.destination=D}static create(P,S,A){return new f(P,S,A)}next(P){this.isStopped?x(function u(_){return z("N",_,void 0)}(P),this):this._next(P)}error(P){this.isStopped?x(function E(_){return z("E",void 0,_)}(P),this):(this.isStopped=!0,this._error(P))}complete(){this.isStopped?x(C,this):(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe(),this.destination=null)}_next(P){this.destination.next(P)}_error(P){try{this.destination.error(P)}finally{this.unsubscribe()}}_complete(){try{this.destination.complete()}finally{this.unsubscribe()}}}const g=Function.prototype.bind;function d(_,P){return g.call(_,P)}class p{constructor(P){this.partialObserver=P}next(P){const{partialObserver:S}=this;if(S.next)try{S.next(P)}catch(A){y(A)}}error(P){const{partialObserver:S}=this;if(S.error)try{S.error(P)}catch(A){y(A)}else y(P)}complete(){const{partialObserver:P}=this;if(P.complete)try{P.complete()}catch(S){y(S)}}}class f extends v{constructor(P,S,A){let k;if(super(),(0,e.m)(P)||!P)k={next:P??void 0,error:S??void 0,complete:A??void 0};else{let R;this&&t.config.useDeprecatedNextContext?(R=Object.create(P),R.unsubscribe=()=>this.unsubscribe(),k={next:P.next&&d(P.next,R),error:P.error&&d(P.error,R),complete:P.complete&&d(P.complete,R)}):k=P}this.destination=new p(k)}}function y(_){t.config.useDeprecatedSynchronousErrorHandling?(0,h.O)(_):(0,i.h)(_)}function x(_,P){const{onStoppedNotification:S}=t.config;S&&M.z.setTimeout(()=>S(_,P))}const D={closed:!0,next:l.Z,error:function T(_){throw _},complete:l.Z}},47394:(nt,I,o)=>{"use strict";o.d(I,{Lc:()=>C,w0:()=>l,Nn:()=>E});var e=o(84674);const t=(0,o(82306).d)(z=>function(h){z(this),this.message=h?`${h.length} errors occurred during unsubscription:\n${h.map((v,g)=>`${g+1}) ${v.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=h});var i=o(49039);class l{constructor(M){this.initialTeardown=M,this.closed=!1,this._parentage=null,this._finalizers=null}unsubscribe(){let M;if(!this.closed){this.closed=!0;const{_parentage:h}=this;if(h)if(this._parentage=null,Array.isArray(h))for(const d of h)d.remove(this);else h.remove(this);const{initialTeardown:v}=this;if((0,e.m)(v))try{v()}catch(d){M=d instanceof t?d.errors:[d]}const{_finalizers:g}=this;if(g){this._finalizers=null;for(const d of g)try{u(d)}catch(p){M=M??[],p instanceof t?M=[...M,...p.errors]:M.push(p)}}if(M)throw new t(M)}}add(M){var h;if(M&&M!==this)if(this.closed)u(M);else{if(M instanceof l){if(M.closed||M._hasParent(this))return;M._addParent(this)}(this._finalizers=null!==(h=this._finalizers)&&void 0!==h?h:[]).push(M)}}_hasParent(M){const{_parentage:h}=this;return h===M||Array.isArray(h)&&h.includes(M)}_addParent(M){const{_parentage:h}=this;this._parentage=Array.isArray(h)?(h.push(M),h):h?[h,M]:M}_removeParent(M){const{_parentage:h}=this;h===M?this._parentage=null:Array.isArray(h)&&(0,i.P)(h,M)}remove(M){const{_finalizers:h}=this;h&&(0,i.P)(h,M),M instanceof l&&M._removeParent(this)}}l.EMPTY=(()=>{const z=new l;return z.closed=!0,z})();const C=l.EMPTY;function E(z){return z instanceof l||z&&"closed"in z&&(0,e.m)(z.remove)&&(0,e.m)(z.add)&&(0,e.m)(z.unsubscribe)}function u(z){(0,e.m)(z)?z():z.unsubscribe()}},82653:(nt,I,o)=>{"use strict";o.d(I,{config:()=>e});const e={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1}},93168:(nt,I,o)=>{"use strict";o.d(I,{c:()=>C});var e=o(65592),n=o(47394),t=o(66196),i=o(8251),l=o(79360);class C extends e.y{constructor(u,z){super(),this.source=u,this.subjectFactory=z,this._subject=null,this._refCount=0,this._connection=null,(0,l.A)(u)&&(this.lift=u.lift)}_subscribe(u){return this.getSubject().subscribe(u)}getSubject(){const u=this._subject;return(!u||u.isStopped)&&(this._subject=this.subjectFactory()),this._subject}_teardown(){this._refCount=0;const{_connection:u}=this;this._subject=this._connection=null,u?.unsubscribe()}connect(){let u=this._connection;if(!u){u=this._connection=new n.w0;const z=this.getSubject();u.add(this.source.subscribe((0,i.x)(z,void 0,()=>{this._teardown(),z.complete()},M=>{this._teardown(),z.error(M)},()=>this._teardown()))),u.closed&&(this._connection=null,u=n.w0.EMPTY)}return u}refCount(){return(0,t.x)()(this)}}},52572:(nt,I,o)=>{"use strict";o.d(I,{a:()=>M});var e=o(65592),n=o(17453),t=o(7715),i=o(42737),l=o(97400),C=o(79940),E=o(92714),u=o(8251),z=o(27103);function M(...g){const d=(0,C.yG)(g),p=(0,C.jO)(g),{args:f,keys:y}=(0,n.D)(g);if(0===f.length)return(0,t.D)([],d);const T=new e.y(function h(g,d,p=i.y){return f=>{v(d,()=>{const{length:y}=g,T=new Array(y);let x=y,D=y;for(let _=0;_{const P=(0,t.D)(g[_],d);let S=!1;P.subscribe((0,u.x)(f,A=>{T[_]=A,S||(S=!0,D--),D||f.next(p(T.slice()))},()=>{--x||f.complete()}))},f)},f)}}(f,d,y?x=>(0,E.n)(y,x):i.y));return p?T.pipe((0,l.Z)(p)):T}function v(g,d,p){g?(0,z.f)(p,g,d):d()}},35211:(nt,I,o)=>{"use strict";o.d(I,{z:()=>l});var e=o(57537),t=o(79940),i=o(7715);function l(...C){return function n(){return(0,e.J)(1)}()((0,i.D)(C,(0,t.yG)(C)))}},74911:(nt,I,o)=>{"use strict";o.d(I,{P:()=>t});var e=o(65592),n=o(54829);function t(i){return new e.y(l=>{(0,n.Xf)(i()).subscribe(l)})}},36232:(nt,I,o)=>{"use strict";o.d(I,{E:()=>n});const n=new(o(65592).y)(l=>l.complete())},7715:(nt,I,o)=>{"use strict";o.d(I,{D:()=>A});var e=o(54829),n=o(27103),t=o(79360),i=o(8251);function l(k,R=0){return(0,t.e)(($,W)=>{$.subscribe((0,i.x)(W,ze=>(0,n.f)(W,k,()=>W.next(ze),R),()=>(0,n.f)(W,k,()=>W.complete(),R),ze=>(0,n.f)(W,k,()=>W.error(ze),R)))})}function C(k,R=0){return(0,t.e)(($,W)=>{W.add(k.schedule(()=>$.subscribe(W),R))})}var z=o(65592),h=o(64971),v=o(84674);function d(k,R){if(!k)throw new Error("Iterable cannot be null");return new z.y($=>{(0,n.f)($,R,()=>{const W=k[Symbol.asyncIterator]();(0,n.f)($,R,()=>{W.next().then(ze=>{ze.done?$.complete():$.next(ze.value)})},0,!0)})})}var p=o(38382),f=o(54026),y=o(64266),T=o(83664),x=o(15726),D=o(69853),_=o(50541);function A(k,R){return R?function S(k,R){if(null!=k){if((0,p.c)(k))return function E(k,R){return(0,e.Xf)(k).pipe(C(R),l(R))}(k,R);if((0,y.z)(k))return function M(k,R){return new z.y($=>{let W=0;return R.schedule(function(){W===k.length?$.complete():($.next(k[W++]),$.closed||this.schedule())})})}(k,R);if((0,f.t)(k))return function u(k,R){return(0,e.Xf)(k).pipe(C(R),l(R))}(k,R);if((0,x.D)(k))return d(k,R);if((0,T.T)(k))return function g(k,R){return new z.y($=>{let W;return(0,n.f)($,R,()=>{W=k[h.h](),(0,n.f)($,R,()=>{let ze,Y;try{({value:ze,done:Y}=W.next())}catch(G){return void $.error(G)}Y?$.complete():$.next(ze)},0,!0)}),()=>(0,v.m)(W?.return)&&W.return()})}(k,R);if((0,_.L)(k))return function P(k,R){return d((0,_.Q)(k),R)}(k,R)}throw(0,D.z)(k)}(k,R):(0,e.Xf)(k)}},92438:(nt,I,o)=>{"use strict";o.d(I,{R:()=>M});var e=o(54829),n=o(65592),t=o(21631),i=o(64266),l=o(84674),C=o(97400);const E=["addListener","removeListener"],u=["addEventListener","removeEventListener"],z=["on","off"];function M(p,f,y,T){if((0,l.m)(y)&&(T=y,y=void 0),T)return M(p,f,y).pipe((0,C.Z)(T));const[x,D]=function d(p){return(0,l.m)(p.addEventListener)&&(0,l.m)(p.removeEventListener)}(p)?u.map(_=>P=>p[_](f,P,y)):function v(p){return(0,l.m)(p.addListener)&&(0,l.m)(p.removeListener)}(p)?E.map(h(p,f)):function g(p){return(0,l.m)(p.on)&&(0,l.m)(p.off)}(p)?z.map(h(p,f)):[];if(!x&&(0,i.z)(p))return(0,t.z)(_=>M(_,f,y))((0,e.Xf)(p));if(!x)throw new TypeError("Invalid event target");return new n.y(_=>{const P=(...S)=>_.next(1D(P)})}function h(p,f){return y=>T=>p[y](f,T)}},54829:(nt,I,o)=>{"use strict";o.d(I,{Xf:()=>g});var e=o(97582),n=o(64266),t=o(54026),i=o(65592),l=o(38382),C=o(15726),E=o(69853),u=o(83664),z=o(50541),M=o(84674),h=o(93894),v=o(14850);function g(_){if(_ instanceof i.y)return _;if(null!=_){if((0,l.c)(_))return function d(_){return new i.y(P=>{const S=_[v.L]();if((0,M.m)(S.subscribe))return S.subscribe(P);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}(_);if((0,n.z)(_))return function p(_){return new i.y(P=>{for(let S=0;S<_.length&&!P.closed;S++)P.next(_[S]);P.complete()})}(_);if((0,t.t)(_))return function f(_){return new i.y(P=>{_.then(S=>{P.closed||(P.next(S),P.complete())},S=>P.error(S)).then(null,h.h)})}(_);if((0,C.D)(_))return T(_);if((0,u.T)(_))return function y(_){return new i.y(P=>{for(const S of _)if(P.next(S),P.closed)return;P.complete()})}(_);if((0,z.L)(_))return function x(_){return T((0,z.Q)(_))}(_)}throw(0,E.z)(_)}function T(_){return new i.y(P=>{(function D(_,P){var S,A,k,R;return(0,e.mG)(this,void 0,void 0,function*(){try{for(S=(0,e.KL)(_);!(A=yield S.next()).done;)if(P.next(A.value),P.closed)return}catch($){k={error:$}}finally{try{A&&!A.done&&(R=S.return)&&(yield R.call(S))}finally{if(k)throw k.error}}P.complete()})})(_,P).catch(S=>P.error(S))})}},91687:(nt,I,o)=>{"use strict";o.d(I,{F:()=>t});var e=o(16321),n=o(74825);function t(i=0,l=e.z){return i<0&&(i=0),(0,n.H)(i,i,l)}},63019:(nt,I,o)=>{"use strict";o.d(I,{T:()=>C});var e=o(57537),n=o(54829),t=o(36232),i=o(79940),l=o(7715);function C(...E){const u=(0,i.yG)(E),z=(0,i._6)(E,1/0),M=E;return M.length?1===M.length?(0,n.Xf)(M[0]):(0,e.J)(z)((0,l.D)(M,u)):t.E}},22096:(nt,I,o)=>{"use strict";o.d(I,{of:()=>t});var e=o(79940),n=o(7715);function t(...i){const l=(0,e.yG)(i);return(0,n.D)(i,l)}},58504:(nt,I,o)=>{"use strict";o.d(I,{_:()=>t});var e=o(65592),n=o(84674);function t(i,l){const C=(0,n.m)(i)?i:()=>i,E=u=>u.error(C());return new e.y(l?u=>l.schedule(E,0,u):E)}},74825:(nt,I,o)=>{"use strict";o.d(I,{H:()=>l});var e=o(65592),n=o(16321),t=o(50671);function l(C=0,E,u=n.P){let z=-1;return null!=E&&((0,t.K)(E)?u=E:z=E),new e.y(M=>{let h=function i(C){return C instanceof Date&&!isNaN(C)}(C)?+C-u.now():C;h<0&&(h=0);let v=0;return u.schedule(function(){M.closed||(M.next(v++),0<=z?this.schedule(void 0,z):M.complete())},h)})}},8251:(nt,I,o)=>{"use strict";o.d(I,{x:()=>n});var e=o(80305);function n(i,l,C,E,u){return new t(i,l,C,E,u)}class t extends e.Lv{constructor(l,C,E,u,z,M){super(l),this.onFinalize=z,this.shouldUnsubscribe=M,this._next=C?function(h){try{C(h)}catch(v){l.error(v)}}:super._next,this._error=u?function(h){try{u(h)}catch(v){l.error(v)}finally{this.unsubscribe()}}:super._error,this._complete=E?function(){try{E()}catch(h){l.error(h)}finally{this.unsubscribe()}}:super._complete}unsubscribe(){var l;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){const{closed:C}=this;super.unsubscribe(),!C&&(null===(l=this.onFinalize)||void 0===l||l.call(this))}}}},29028:(nt,I,o)=>{"use strict";o.d(I,{e:()=>E});var e=o(16321),n=o(79360),t=o(54829),i=o(8251),C=o(74825);function E(u,z=e.z){return function l(u){return(0,n.e)((z,M)=>{let h=!1,v=null,g=null,d=!1;const p=()=>{if(g?.unsubscribe(),g=null,h){h=!1;const y=v;v=null,M.next(y)}d&&M.complete()},f=()=>{g=null,d&&M.complete()};z.subscribe((0,i.x)(M,y=>{h=!0,v=y,g||(0,t.Xf)(u(y)).subscribe(g=(0,i.x)(M,p,f))},()=>{d=!0,(!h||!g||g.closed)&&M.complete()}))})}(()=>(0,C.H)(u,z))}},26306:(nt,I,o)=>{"use strict";o.d(I,{K:()=>i});var e=o(54829),n=o(8251),t=o(79360);function i(l){return(0,t.e)((C,E)=>{let M,u=null,z=!1;u=C.subscribe((0,n.x)(E,void 0,void 0,h=>{M=(0,e.Xf)(l(h,i(l)(C))),u?(u.unsubscribe(),u=null,M.subscribe(E)):z=!0})),z&&(u.unsubscribe(),u=null,M.subscribe(E))})}},76328:(nt,I,o)=>{"use strict";o.d(I,{b:()=>t});var e=o(21631),n=o(84674);function t(i,l){return(0,n.m)(l)?(0,e.z)(i,l,1):(0,e.z)(i,1)}},76111:(nt,I,o)=>{"use strict";o.d(I,{D:()=>l});var e=o(79360),n=o(72420),t=o(8251),i=o(54829);function l(C){return(0,e.e)((E,u)=>{let z=!1,M=null,h=null;const v=()=>{if(h?.unsubscribe(),h=null,z){z=!1;const g=M;M=null,u.next(g)}};E.subscribe((0,t.x)(u,g=>{h?.unsubscribe(),z=!0,M=g,h=(0,t.x)(u,v,n.Z),(0,i.Xf)(C(g)).subscribe(h)},()=>{v(),u.complete()},void 0,()=>{M=h=null}))})}},83620:(nt,I,o)=>{"use strict";o.d(I,{b:()=>i});var e=o(16321),n=o(79360),t=o(8251);function i(l,C=e.z){return(0,n.e)((E,u)=>{let z=null,M=null,h=null;const v=()=>{if(z){z.unsubscribe(),z=null;const d=M;M=null,u.next(d)}};function g(){const d=h+l,p=C.now();if(p{M=d,h=C.now(),z||(z=C.schedule(g,l),u.add(z))},()=>{v(),u.complete()},void 0,()=>{M=z=null}))})}},43572:(nt,I,o)=>{"use strict";o.d(I,{d:()=>t});var e=o(79360),n=o(8251);function t(i){return(0,e.e)((l,C)=>{let E=!1;l.subscribe((0,n.x)(C,u=>{E=!0,C.next(u)},()=>{E||C.next(i),C.complete()}))})}},5177:(nt,I,o)=>{"use strict";o.d(I,{g:()=>g});var e=o(16321),n=o(35211),t=o(48180),i=o(79360),l=o(8251),C=o(72420),u=o(21441),z=o(21631),M=o(54829);function h(d,p){return p?f=>(0,n.z)(p.pipe((0,t.q)(1),function E(){return(0,i.e)((d,p)=>{d.subscribe((0,l.x)(p,C.Z))})}()),f.pipe(h(d))):(0,z.z)((f,y)=>(0,M.Xf)(d(f,y)).pipe((0,t.q)(1),(0,u.h)(f)))}var v=o(74825);function g(d,p=e.z){const f=(0,v.H)(d,p);return h(()=>f)}},93997:(nt,I,o)=>{"use strict";o.d(I,{x:()=>i});var e=o(42737),n=o(79360),t=o(8251);function i(C,E=e.y){return C=C??l,(0,n.e)((u,z)=>{let M,h=!0;u.subscribe((0,t.x)(z,v=>{const g=E(v);(h||!C(M,g))&&(h=!1,M=g,z.next(v))}))})}function l(C,E){return C===E}},32181:(nt,I,o)=>{"use strict";o.d(I,{h:()=>t});var e=o(79360),n=o(8251);function t(i,l){return(0,e.e)((C,E)=>{let u=0;C.subscribe((0,n.x)(E,z=>i.call(l,z,u++)&&E.next(z)))})}},64716:(nt,I,o)=>{"use strict";o.d(I,{x:()=>n});var e=o(79360);function n(t){return(0,e.e)((i,l)=>{try{i.subscribe(l)}finally{l.add(t)}})}},81374:(nt,I,o)=>{"use strict";o.d(I,{P:()=>E});var e=o(46973),n=o(32181),t=o(48180),i=o(43572),l=o(3026),C=o(42737);function E(u,z){const M=arguments.length>=2;return h=>h.pipe(u?(0,n.h)((v,g)=>u(v,g,h)):C.y,(0,t.q)(1),M?(0,i.d)(z):(0,l.T)(()=>new e.K))}},37398:(nt,I,o)=>{"use strict";o.d(I,{U:()=>t});var e=o(79360),n=o(8251);function t(i,l){return(0,e.e)((C,E)=>{let u=0;C.subscribe((0,n.x)(E,z=>{E.next(i.call(l,z,u++))}))})}},21441:(nt,I,o)=>{"use strict";o.d(I,{h:()=>n});var e=o(37398);function n(t){return(0,e.U)(()=>t)}},57537:(nt,I,o)=>{"use strict";o.d(I,{J:()=>t});var e=o(21631),n=o(42737);function t(i=1/0){return(0,e.z)(n.y,i)}},21631:(nt,I,o)=>{"use strict";o.d(I,{z:()=>u});var e=o(37398),n=o(54829),t=o(79360),i=o(27103),l=o(8251),E=o(84674);function u(z,M,h=1/0){return(0,E.m)(M)?u((v,g)=>(0,e.U)((d,p)=>M(v,d,g,p))((0,n.Xf)(z(v,g))),h):("number"==typeof M&&(h=M),(0,t.e)((v,g)=>function C(z,M,h,v,g,d,p,f){const y=[];let T=0,x=0,D=!1;const _=()=>{D&&!y.length&&!T&&M.complete()},P=A=>T{d&&M.next(A),T++;let k=!1;(0,n.Xf)(h(A,x++)).subscribe((0,l.x)(M,R=>{g?.(R),d?P(R):M.next(R)},()=>{k=!0},void 0,()=>{if(k)try{for(T--;y.length&&TS(R)):S(R)}_()}catch(R){M.error(R)}}))};return z.subscribe((0,l.x)(M,P,()=>{D=!0,_()})),()=>{f?.()}}(v,g,z,h)))}},66196:(nt,I,o)=>{"use strict";o.d(I,{x:()=>t});var e=o(79360),n=o(8251);function t(){return(0,e.e)((i,l)=>{let C=null;i._refCount++;const E=(0,n.x)(l,void 0,void 0,void 0,()=>{if(!i||i._refCount<=0||0<--i._refCount)return void(C=null);const u=i._connection,z=C;C=null,u&&(!z||u===z)&&u.unsubscribe(),l.unsubscribe()});i.subscribe(E),E.closed||(C=i.connect())})}},63020:(nt,I,o)=>{"use strict";o.d(I,{B:()=>l});var e=o(54829),n=o(78645),t=o(80305),i=o(79360);function l(E={}){const{connector:u=(()=>new n.x),resetOnError:z=!0,resetOnComplete:M=!0,resetOnRefCountZero:h=!0}=E;return v=>{let g,d,p,f=0,y=!1,T=!1;const x=()=>{d?.unsubscribe(),d=void 0},D=()=>{x(),g=p=void 0,y=T=!1},_=()=>{const P=g;D(),P?.unsubscribe()};return(0,i.e)((P,S)=>{f++,!T&&!y&&x();const A=p=p??u();S.add(()=>{f--,0===f&&!T&&!y&&(d=C(_,h))}),A.subscribe(S),!g&&f>0&&(g=new t.Hp({next:k=>A.next(k),error:k=>{T=!0,x(),d=C(D,z,k),A.error(k)},complete:()=>{y=!0,x(),d=C(D,M),A.complete()}}),(0,e.Xf)(P).subscribe(g))})(v)}}function C(E,u,...z){if(!0===u)return void E();if(!1===u)return;const M=new t.Hp({next:()=>{M.unsubscribe(),E()}});return(0,e.Xf)(u(...z)).subscribe(M)}},836:(nt,I,o)=>{"use strict";o.d(I,{T:()=>n});var e=o(32181);function n(t){return(0,e.h)((i,l)=>t<=l)}},27921:(nt,I,o)=>{"use strict";o.d(I,{O:()=>i});var e=o(35211),n=o(79940),t=o(79360);function i(...l){const C=(0,n.yG)(l);return(0,t.e)((E,u)=>{(C?(0,e.z)(l,E,C):(0,e.z)(l,E)).subscribe(u)})}},94664:(nt,I,o)=>{"use strict";o.d(I,{w:()=>i});var e=o(54829),n=o(79360),t=o(8251);function i(l,C){return(0,n.e)((E,u)=>{let z=null,M=0,h=!1;const v=()=>h&&!z&&u.complete();E.subscribe((0,t.x)(u,g=>{z?.unsubscribe();let d=0;const p=M++;(0,e.Xf)(l(g,p)).subscribe(z=(0,t.x)(u,f=>u.next(C?C(g,f,p,d++):f),()=>{z=null,v()}))},()=>{h=!0,v()}))})}},48180:(nt,I,o)=>{"use strict";o.d(I,{q:()=>i});var e=o(36232),n=o(79360),t=o(8251);function i(l){return l<=0?()=>e.E:(0,n.e)((C,E)=>{let u=0;C.subscribe((0,t.x)(E,z=>{++u<=l&&(E.next(z),l<=u&&E.complete())}))})}},59773:(nt,I,o)=>{"use strict";o.d(I,{R:()=>l});var e=o(79360),n=o(8251),t=o(54829),i=o(72420);function l(C){return(0,e.e)((E,u)=>{(0,t.Xf)(C).subscribe((0,n.x)(u,()=>u.complete(),i.Z)),!u.closed&&E.subscribe(u)})}},99397:(nt,I,o)=>{"use strict";o.d(I,{b:()=>l});var e=o(84674),n=o(79360),t=o(8251),i=o(42737);function l(C,E,u){const z=(0,e.m)(C)||E||u?{next:C,error:E,complete:u}:C;return z?(0,n.e)((M,h)=>{var v;null===(v=z.subscribe)||void 0===v||v.call(z);let g=!0;M.subscribe((0,t.x)(h,d=>{var p;null===(p=z.next)||void 0===p||p.call(z,d),h.next(d)},()=>{var d;g=!1,null===(d=z.complete)||void 0===d||d.call(z),h.complete()},d=>{var p;g=!1,null===(p=z.error)||void 0===p||p.call(z,d),h.error(d)},()=>{var d,p;g&&(null===(d=z.unsubscribe)||void 0===d||d.call(z)),null===(p=z.finalize)||void 0===p||p.call(z)}))}):i.y}},18753:(nt,I,o)=>{"use strict";o.d(I,{p:()=>E});var e=o(16321),n=o(79360),t=o(8251),i=o(54829),C=o(74825);function E(u,z=e.z,M){const h=(0,C.H)(u,z);return function l(u,z){return(0,n.e)((M,h)=>{const{leading:v=!0,trailing:g=!1}=z??{};let d=!1,p=null,f=null,y=!1;const T=()=>{f?.unsubscribe(),f=null,g&&(_(),y&&h.complete())},x=()=>{f=null,y&&h.complete()},D=P=>f=(0,i.Xf)(u(P)).subscribe((0,t.x)(h,T,x)),_=()=>{if(d){d=!1;const P=p;p=null,h.next(P),!y&&D(P)}};M.subscribe((0,t.x)(h,P=>{d=!0,p=P,(!f||f.closed)&&(v?_():D(P))},()=>{y=!0,(!(g&&d&&f)||f.closed)&&h.complete()}))})}(()=>h,M)}},3026:(nt,I,o)=>{"use strict";o.d(I,{T:()=>i});var e=o(46973),n=o(79360),t=o(8251);function i(C=l){return(0,n.e)((E,u)=>{let z=!1;E.subscribe((0,t.x)(u,M=>{z=!0,u.next(M)},()=>z?u.complete():u.error(C())))})}function l(){return new e.K}},42460:(nt,I,o)=>{"use strict";o.d(I,{M:()=>E});var e=o(79360),n=o(8251),t=o(54829),i=o(42737),l=o(72420),C=o(79940);function E(...u){const z=(0,C.jO)(u);return(0,e.e)((M,h)=>{const v=u.length,g=new Array(v);let d=u.map(()=>!1),p=!1;for(let f=0;f{g[f]=y,!p&&!d[f]&&(d[f]=!0,(p=d.every(i.y))&&(d=null))},l.Z));M.subscribe((0,n.x)(h,f=>{if(p){const y=[f,...g];h.next(z?z(...y):y)}}))})}},41954:(nt,I,o)=>{"use strict";o.d(I,{o:()=>l});var e=o(47394);class n extends e.w0{constructor(E,u){super()}schedule(E,u=0){return this}}const t={setInterval(C,E,...u){const{delegate:z}=t;return z?.setInterval?z.setInterval(C,E,...u):setInterval(C,E,...u)},clearInterval(C){const{delegate:E}=t;return(E?.clearInterval||clearInterval)(C)},delegate:void 0};var i=o(49039);class l extends n{constructor(E,u){super(E,u),this.scheduler=E,this.work=u,this.pending=!1}schedule(E,u=0){var z;if(this.closed)return this;this.state=E;const M=this.id,h=this.scheduler;return null!=M&&(this.id=this.recycleAsyncId(h,M,u)),this.pending=!0,this.delay=u,this.id=null!==(z=this.id)&&void 0!==z?z:this.requestAsyncId(h,this.id,u),this}requestAsyncId(E,u,z=0){return t.setInterval(E.flush.bind(E,this),z)}recycleAsyncId(E,u,z=0){if(null!=z&&this.delay===z&&!1===this.pending)return u;null!=u&&t.clearInterval(u)}execute(E,u){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;const z=this._execute(E,u);if(z)return z;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(E,u){let M,z=!1;try{this.work(E)}catch(h){z=!0,M=h||new Error("Scheduled action threw falsy error")}if(z)return this.unsubscribe(),M}unsubscribe(){if(!this.closed){const{id:E,scheduler:u}=this,{actions:z}=u;this.work=this.state=this.scheduler=null,this.pending=!1,(0,i.P)(z,this),null!=E&&(this.id=this.recycleAsyncId(u,E,null)),this.delay=null,super.unsubscribe()}}}},2631:(nt,I,o)=>{"use strict";o.d(I,{v:()=>t});var e=o(84552);class n{constructor(l,C=n.now){this.schedulerActionCtor=l,this.now=C}schedule(l,C=0,E){return new this.schedulerActionCtor(this,l).schedule(E,C)}}n.now=e.l.now;class t extends n{constructor(l,C=n.now){super(l,C),this.actions=[],this._active=!1}flush(l){const{actions:C}=this;if(this._active)return void C.push(l);let E;this._active=!0;do{if(E=l.execute(l.state,l.delay))break}while(l=C.shift());if(this._active=!1,E){for(;l=C.shift();)l.unsubscribe();throw E}}}},80927:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>E});var e=o(41954),n=o(47394);const t={schedule(z){let M=requestAnimationFrame,h=cancelAnimationFrame;const{delegate:v}=t;v&&(M=v.requestAnimationFrame,h=v.cancelAnimationFrame);const g=M(d=>{h=void 0,z(d)});return new n.w0(()=>h?.(g))},requestAnimationFrame(...z){const{delegate:M}=t;return(M?.requestAnimationFrame||requestAnimationFrame)(...z)},cancelAnimationFrame(...z){const{delegate:M}=t;return(M?.cancelAnimationFrame||cancelAnimationFrame)(...z)},delegate:void 0};var l=o(2631);const E=new class C extends l.v{flush(M){this._active=!0;const h=this._scheduled;this._scheduled=void 0;const{actions:v}=this;let g;M=M||v.shift();do{if(g=M.execute(M.state,M.delay))break}while((M=v[0])&&M.id===h&&v.shift());if(this._active=!1,g){for(;(M=v[0])&&M.id===h&&v.shift();)M.unsubscribe();throw g}}}(class i extends e.o{constructor(M,h){super(M,h),this.scheduler=M,this.work=h}requestAsyncId(M,h,v=0){return null!==v&&v>0?super.requestAsyncId(M,h,v):(M.actions.push(this),M._scheduled||(M._scheduled=t.requestAnimationFrame(()=>M.flush(void 0))))}recycleAsyncId(M,h,v=0){var g;if(null!=v?v>0:this.delay>0)return super.recycleAsyncId(M,h,v);const{actions:d}=M;null!=h&&(null===(g=d[d.length-1])||void 0===g?void 0:g.id)!==h&&(t.cancelAnimationFrame(h),M._scheduled=void 0)}})},76410:(nt,I,o)=>{"use strict";o.d(I,{E:()=>d});var e=o(41954);let t,n=1;const i={};function l(f){return f in i&&(delete i[f],!0)}const C={setImmediate(f){const y=n++;return i[y]=!0,t||(t=Promise.resolve()),t.then(()=>l(y)&&f()),y},clearImmediate(f){l(f)}},{setImmediate:u,clearImmediate:z}=C,M={setImmediate(...f){const{delegate:y}=M;return(y?.setImmediate||u)(...f)},clearImmediate(f){const{delegate:y}=M;return(y?.clearImmediate||z)(f)},delegate:void 0};var v=o(2631);const d=new class g extends v.v{flush(y){this._active=!0;const T=this._scheduled;this._scheduled=void 0;const{actions:x}=this;let D;y=y||x.shift();do{if(D=y.execute(y.state,y.delay))break}while((y=x[0])&&y.id===T&&x.shift());if(this._active=!1,D){for(;(y=x[0])&&y.id===T&&x.shift();)y.unsubscribe();throw D}}}(class h extends e.o{constructor(y,T){super(y,T),this.scheduler=y,this.work=T}requestAsyncId(y,T,x=0){return null!==x&&x>0?super.requestAsyncId(y,T,x):(y.actions.push(this),y._scheduled||(y._scheduled=M.setImmediate(y.flush.bind(y,void 0))))}recycleAsyncId(y,T,x=0){var D;if(null!=x?x>0:this.delay>0)return super.recycleAsyncId(y,T,x);const{actions:_}=y;null!=T&&(null===(D=_[_.length-1])||void 0===D?void 0:D.id)!==T&&(M.clearImmediate(T),y._scheduled===T&&(y._scheduled=void 0))}})},16321:(nt,I,o)=>{"use strict";o.d(I,{P:()=>i,z:()=>t});var e=o(41954);const t=new(o(2631).v)(e.o),i=t},84552:(nt,I,o)=>{"use strict";o.d(I,{l:()=>e});const e={now:()=>(e.delegate||Date).now(),delegate:void 0}},87599:(nt,I,o)=>{"use strict";o.d(I,{z:()=>e});const e={setTimeout(n,t,...i){const{delegate:l}=e;return l?.setTimeout?l.setTimeout(n,t,...i):setTimeout(n,t,...i)},clearTimeout(n){const{delegate:t}=e;return(t?.clearTimeout||clearTimeout)(n)},delegate:void 0}},64971:(nt,I,o)=>{"use strict";o.d(I,{h:()=>n});const n=function e(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}()},14850:(nt,I,o)=>{"use strict";o.d(I,{L:()=>e});const e="function"==typeof Symbol&&Symbol.observable||"@@observable"},46973:(nt,I,o)=>{"use strict";o.d(I,{K:()=>n});const n=(0,o(82306).d)(t=>function(){t(this),this.name="EmptyError",this.message="no elements in sequence"})},79940:(nt,I,o)=>{"use strict";o.d(I,{_6:()=>C,jO:()=>i,yG:()=>l});var e=o(84674),n=o(50671);function t(E){return E[E.length-1]}function i(E){return(0,e.m)(t(E))?E.pop():void 0}function l(E){return(0,n.K)(t(E))?E.pop():void 0}function C(E,u){return"number"==typeof t(E)?E.pop():u}},17453:(nt,I,o)=>{"use strict";o.d(I,{D:()=>l});const{isArray:e}=Array,{getPrototypeOf:n,prototype:t,keys:i}=Object;function l(E){if(1===E.length){const u=E[0];if(e(u))return{args:u,keys:null};if(function C(E){return E&&"object"==typeof E&&n(E)===t}(u)){const z=i(u);return{args:z.map(M=>u[M]),keys:z}}}return{args:E,keys:null}}},49039:(nt,I,o)=>{"use strict";function e(n,t){if(n){const i=n.indexOf(t);0<=i&&n.splice(i,1)}}o.d(I,{P:()=>e})},82306:(nt,I,o)=>{"use strict";function e(n){const i=n(l=>{Error.call(l),l.stack=(new Error).stack});return i.prototype=Object.create(Error.prototype),i.prototype.constructor=i,i}o.d(I,{d:()=>e})},92714:(nt,I,o)=>{"use strict";function e(n,t){return n.reduce((i,l,C)=>(i[l]=t[C],i),{})}o.d(I,{n:()=>e})},81441:(nt,I,o)=>{"use strict";o.d(I,{O:()=>i,x:()=>t});var e=o(82653);let n=null;function t(l){if(e.config.useDeprecatedSynchronousErrorHandling){const C=!n;if(C&&(n={errorThrown:!1,error:null}),l(),C){const{errorThrown:E,error:u}=n;if(n=null,E)throw u}}else l()}function i(l){e.config.useDeprecatedSynchronousErrorHandling&&n&&(n.errorThrown=!0,n.error=l)}},27103:(nt,I,o)=>{"use strict";function e(n,t,i,l=0,C=!1){const E=t.schedule(function(){i(),C?n.add(this.schedule(null,l)):this.unsubscribe()},l);if(n.add(E),!C)return E}o.d(I,{f:()=>e})},42737:(nt,I,o)=>{"use strict";function e(n){return n}o.d(I,{y:()=>e})},64266:(nt,I,o)=>{"use strict";o.d(I,{z:()=>e});const e=n=>n&&"number"==typeof n.length&&"function"!=typeof n},15726:(nt,I,o)=>{"use strict";o.d(I,{D:()=>n});var e=o(84674);function n(t){return Symbol.asyncIterator&&(0,e.m)(t?.[Symbol.asyncIterator])}},84674:(nt,I,o)=>{"use strict";function e(n){return"function"==typeof n}o.d(I,{m:()=>e})},38382:(nt,I,o)=>{"use strict";o.d(I,{c:()=>t});var e=o(14850),n=o(84674);function t(i){return(0,n.m)(i[e.L])}},83664:(nt,I,o)=>{"use strict";o.d(I,{T:()=>t});var e=o(64971),n=o(84674);function t(i){return(0,n.m)(i?.[e.h])}},2664:(nt,I,o)=>{"use strict";o.d(I,{b:()=>t});var e=o(65592),n=o(84674);function t(i){return!!i&&(i instanceof e.y||(0,n.m)(i.lift)&&(0,n.m)(i.subscribe))}},54026:(nt,I,o)=>{"use strict";o.d(I,{t:()=>n});var e=o(84674);function n(t){return(0,e.m)(t?.then)}},50541:(nt,I,o)=>{"use strict";o.d(I,{L:()=>i,Q:()=>t});var e=o(97582),n=o(84674);function t(l){return(0,e.FC)(this,arguments,function*(){const E=l.getReader();try{for(;;){const{value:u,done:z}=yield(0,e.qq)(E.read());if(z)return yield(0,e.qq)(void 0);yield yield(0,e.qq)(u)}}finally{E.releaseLock()}})}function i(l){return(0,n.m)(l?.getReader)}},50671:(nt,I,o)=>{"use strict";o.d(I,{K:()=>n});var e=o(84674);function n(t){return t&&(0,e.m)(t.schedule)}},79360:(nt,I,o)=>{"use strict";o.d(I,{A:()=>n,e:()=>t});var e=o(84674);function n(i){return(0,e.m)(i?.lift)}function t(i){return l=>{if(n(l))return l.lift(function(C){try{return i(C,this)}catch(E){this.error(E)}});throw new TypeError("Unable to lift unknown Observable type")}}},97400:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>i});var e=o(37398);const{isArray:n}=Array;function i(l){return(0,e.U)(C=>function t(l,C){return n(C)?l(...C):l(C)}(l,C))}},72420:(nt,I,o)=>{"use strict";function e(){}o.d(I,{Z:()=>e})},88407:(nt,I,o)=>{"use strict";o.d(I,{U:()=>t,z:()=>n});var e=o(42737);function n(...i){return t(i)}function t(i){return 0===i.length?e.y:1===i.length?i[0]:function(C){return i.reduce((E,u)=>u(E),C)}}},93894:(nt,I,o)=>{"use strict";o.d(I,{h:()=>t});var e=o(82653),n=o(87599);function t(i){n.z.setTimeout(()=>{const{onUnhandledError:l}=e.config;if(!l)throw i;l(i)})}},69853:(nt,I,o)=>{"use strict";function e(n){return new TypeError(`You provided ${null!==n&&"object"==typeof n?"an invalid object":`'${n}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}o.d(I,{z:()=>e})},96064:function(nt,I){!function(o){"use strict";function e(){for(var De=arguments.length,Pe=Array(De),Je=0;Je1){Pe[0]=Pe[0].slice(0,-1);for(var Ge=Pe.length-1,Ke=1;Ke= 0x80 (not a basic code point)","invalid-input":"Invalid input"},R=Math.floor,$=String.fromCharCode;function W(De){throw new RangeError(A[De])}function Y(De,Pe){var Je=De.split("@"),Ge="";return Je.length>1&&(Ge=Je[0]+"@",De=Je[1]),Ge+function ze(De,Pe){for(var Je=[],Ge=De.length;Ge--;)Je[Ge]=Pe(De[Ge]);return Je}((De=De.replace(S,".")).split("."),Pe).join(".")}function G(De){for(var Pe=[],Je=0,Ge=De.length;Je=55296&&Ke<=56319&&Je>1,Pe+=R(Pe/Je);Pe>455;Ke+=g)Pe=R(Pe/35);return R(Ke+36*Pe/(Pe+38))},fe=function(Pe){var Je=[],Ge=Pe.length,Ke=0,_e=128,it=72,b=Pe.lastIndexOf("-");b<0&&(b=0);for(var N=0;N=128&&W("not-basic"),Je.push(Pe.charCodeAt(N));for(var O=b>0?b+1:0;O=Ge&&W("invalid-input");var Ce=K(Pe.charCodeAt(O++));(Ce>=g||Ce>R((v-Ke)/L))&&W("overflow"),Ke+=Ce*L;var bt=he<=it?1:he>=it+26?26:he-it;if(CeR(v/Ft)&&W("overflow"),L*=Ft}var sn=Je.length+1;it=ne(Ke-j,sn,0==j),R(Ke/sn)>v-_e&&W("overflow"),_e+=R(Ke/sn),Ke%=sn,Je.splice(Ke++,0,_e)}return String.fromCodePoint.apply(String,Je)},re=function(Pe){var Je=[],Ge=(Pe=G(Pe)).length,Ke=128,_e=0,it=72,b=!0,N=!1,O=void 0;try{for(var L,j=Pe[Symbol.iterator]();!(b=(L=j.next()).done);b=!0){var he=L.value;he<128&&Je.push($(he))}}catch(ei){N=!0,O=ei}finally{try{!b&&j.return&&j.return()}finally{if(N)throw O}}var Ce=Je.length,bt=Ce;for(Ce&&Je.push("-");bt=Ke&&EnR((v-_e)/bn)&&W("overflow"),_e+=(Ft-Ke)*bn,Ke=Ft;var Rn=!0,qn=!1,si=void 0;try{for(var ci,Wn=Pe[Symbol.iterator]();!(Rn=(ci=Wn.next()).done);Rn=!0){var ri=ci.value;if(riv&&W("overflow"),ri==Ke){for(var di=_e,hi=g;;hi+=g){var fi=hi<=it?1:hi>=it+26?26:hi-it;if(di>6|192).toString(16).toUpperCase()+"%"+(63&Pe|128).toString(16).toUpperCase():"%"+(Pe>>12|224).toString(16).toUpperCase()+"%"+(Pe>>6&63|128).toString(16).toUpperCase()+"%"+(63&Pe|128).toString(16).toUpperCase()}function ae(De){for(var Pe="",Je=0,Ge=De.length;Je=194&&Ke<224){if(Ge-Je>=6){var _e=parseInt(De.substr(Je+4,2),16);Pe+=String.fromCharCode((31&Ke)<<6|63&_e)}else Pe+=De.substr(Je,6);Je+=6}else if(Ke>=224){if(Ge-Je>=9){var it=parseInt(De.substr(Je+4,2),16),b=parseInt(De.substr(Je+7,2),16);Pe+=String.fromCharCode((15&Ke)<<12|(63&it)<<6|63&b)}else Pe+=De.substr(Je,9);Je+=9}else Pe+=De.substr(Je,3),Je+=3}return Pe}function xe(De,Pe){function Je(Ge){var Ke=ae(Ge);return Ke.match(Pe.UNRESERVED)?Ke:Ge}return De.scheme&&(De.scheme=String(De.scheme).replace(Pe.PCT_ENCODED,Je).toLowerCase().replace(Pe.NOT_SCHEME,"")),void 0!==De.userinfo&&(De.userinfo=String(De.userinfo).replace(Pe.PCT_ENCODED,Je).replace(Pe.NOT_USERINFO,ie).replace(Pe.PCT_ENCODED,i)),void 0!==De.host&&(De.host=String(De.host).replace(Pe.PCT_ENCODED,Je).toLowerCase().replace(Pe.NOT_HOST,ie).replace(Pe.PCT_ENCODED,i)),void 0!==De.path&&(De.path=String(De.path).replace(Pe.PCT_ENCODED,Je).replace(De.scheme?Pe.NOT_PATH:Pe.NOT_PATH_NOSCHEME,ie).replace(Pe.PCT_ENCODED,i)),void 0!==De.query&&(De.query=String(De.query).replace(Pe.PCT_ENCODED,Je).replace(Pe.NOT_QUERY,ie).replace(Pe.PCT_ENCODED,i)),void 0!==De.fragment&&(De.fragment=String(De.fragment).replace(Pe.PCT_ENCODED,Je).replace(Pe.NOT_FRAGMENT,ie).replace(Pe.PCT_ENCODED,i)),De}function Me(De){return De.replace(/^0*(.*)/,"$1")||"0"}function Ye(De,Pe){var Je=De.match(Pe.IPV4ADDRESS)||[],Ke=M(Je,2)[1];return Ke?Ke.split(".").map(Me).join("."):De}function q(De,Pe){var Je=De.match(Pe.IPV6ADDRESS)||[],Ge=M(Je,3),Ke=Ge[1],_e=Ge[2];if(Ke){for(var it=Ke.toLowerCase().split("::").reverse(),b=M(it,2),N=b[0],O=b[1],j=O?O.split(":").map(Me):[],L=N.split(":").map(Me),he=Pe.IPV4ADDRESS.test(L[L.length-1]),Ce=he?7:8,bt=L.length-Ce,Ft=Array(Ce),sn=0;sn1){var Mn=Ft.slice(0,vn.index),En=Ft.slice(vn.index+vn.length);Dn=Mn.join(":")+"::"+En.join(":")}else Dn=Ft.join(":");return _e&&(Dn+="%"+_e),Dn}return De}var ve=/^(?:([^:\/?#]+):)?(?:\/\/((?:([^\/?#@]*)@)?(\[[^\/?#\]]+\]|[^\/?#:]*)(?:\:(\d*))?))?([^?#]*)(?:\?([^#]*))?(?:#((?:.|\n|\r)*))?/i,ee=void 0==="".match(/(){0}/)[1];function Be(De){var Pe=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},Je={},Ge=!1!==Pe.iri?z:u;"suffix"===Pe.reference&&(De=(Pe.scheme?Pe.scheme+":":"")+"//"+De);var Ke=De.match(ve);if(Ke){ee?(Je.scheme=Ke[1],Je.userinfo=Ke[3],Je.host=Ke[4],Je.port=parseInt(Ke[5],10),Je.path=Ke[6]||"",Je.query=Ke[7],Je.fragment=Ke[8],isNaN(Je.port)&&(Je.port=Ke[5])):(Je.scheme=Ke[1]||void 0,Je.userinfo=-1!==De.indexOf("@")?Ke[3]:void 0,Je.host=-1!==De.indexOf("//")?Ke[4]:void 0,Je.port=parseInt(Ke[5],10),Je.path=Ke[6]||"",Je.query=-1!==De.indexOf("?")?Ke[7]:void 0,Je.fragment=-1!==De.indexOf("#")?Ke[8]:void 0,isNaN(Je.port)&&(Je.port=De.match(/\/\/(?:.|\n)*\:(?:\/|\?|\#|$)/)?Ke[4]:void 0)),Je.host&&(Je.host=q(Ye(Je.host,Ge),Ge)),Je.reference=void 0!==Je.scheme||void 0!==Je.userinfo||void 0!==Je.host||void 0!==Je.port||Je.path||void 0!==Je.query?void 0===Je.scheme?"relative":void 0===Je.fragment?"absolute":"uri":"same-document",Pe.reference&&"suffix"!==Pe.reference&&Pe.reference!==Je.reference&&(Je.error=Je.error||"URI is not a "+Pe.reference+" reference.");var _e=Q[(Pe.scheme||Je.scheme||"").toLowerCase()];if(Pe.unicodeSupport||_e&&_e.unicodeSupport)xe(Je,Ge);else{if(Je.host&&(Pe.domainHost||_e&&_e.domainHost))try{Je.host=ce.toASCII(Je.host.replace(Ge.PCT_ENCODED,ae).toLowerCase())}catch(it){Je.error=Je.error||"Host's domain name can not be converted to ASCII via punycode: "+it}xe(Je,u)}_e&&_e.parse&&_e.parse(Je,Pe)}else Je.error=Je.error||"URI can not be parsed.";return Je}var ct=/^\.\.?\//,Ae=/^\/\.(\/|$)/,Mt=/^\/\.\.(\/|$)/,je=/^\/?(?:.|\n)*?(?=\/|$)/;function ot(De){for(var Pe=[];De.length;)if(De.match(ct))De=De.replace(ct,"");else if(De.match(Ae))De=De.replace(Ae,"/");else if(De.match(Mt))De=De.replace(Mt,"/"),Pe.pop();else if("."===De||".."===De)De="";else{var Je=De.match(je);if(!Je)throw new Error("Unexpected dot segment condition");var Ge=Je[0];De=De.slice(Ge.length),Pe.push(Ge)}return Pe.join("")}function mt(De){var Pe=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},Je=Pe.iri?z:u,Ge=[],Ke=Q[(Pe.scheme||De.scheme||"").toLowerCase()];if(Ke&&Ke.serialize&&Ke.serialize(De,Pe),De.host&&!Je.IPV6ADDRESS.test(De.host)&&(Pe.domainHost||Ke&&Ke.domainHost))try{De.host=Pe.iri?ce.toUnicode(De.host):ce.toASCII(De.host.replace(Je.PCT_ENCODED,ae).toLowerCase())}catch(b){De.error=De.error||"Host's domain name can not be converted to "+(Pe.iri?"Unicode":"ASCII")+" via punycode: "+b}xe(De,Je),"suffix"!==Pe.reference&&De.scheme&&(Ge.push(De.scheme),Ge.push(":"));var _e=function Re(De,Pe){var Je=!1!==Pe.iri?z:u,Ge=[];return void 0!==De.userinfo&&(Ge.push(De.userinfo),Ge.push("@")),void 0!==De.host&&Ge.push(q(Ye(String(De.host),Je),Je).replace(Je.IPV6ADDRESS,function(Ke,_e,it){return"["+_e+(it?"%25"+it:"")+"]"})),("number"==typeof De.port||"string"==typeof De.port)&&(Ge.push(":"),Ge.push(String(De.port))),Ge.length?Ge.join(""):void 0}(De,Pe);if(void 0!==_e&&("suffix"!==Pe.reference&&Ge.push("//"),Ge.push(_e),De.path&&"/"!==De.path.charAt(0)&&Ge.push("/")),void 0!==De.path){var it=De.path;!Pe.absolutePath&&(!Ke||!Ke.absolutePath)&&(it=ot(it)),void 0===_e&&(it=it.replace(/^\/\//,"/%2F")),Ge.push(it)}return void 0!==De.query&&(Ge.push("?"),Ge.push(De.query)),void 0!==De.fragment&&(Ge.push("#"),Ge.push(De.fragment)),Ge.join("")}function we(De,Pe){var Je=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},Ke={};return arguments[3]||(De=Be(mt(De,Je),Je),Pe=Be(mt(Pe,Je),Je)),!(Je=Je||{}).tolerant&&Pe.scheme?(Ke.scheme=Pe.scheme,Ke.userinfo=Pe.userinfo,Ke.host=Pe.host,Ke.port=Pe.port,Ke.path=ot(Pe.path||""),Ke.query=Pe.query):(void 0!==Pe.userinfo||void 0!==Pe.host||void 0!==Pe.port?(Ke.userinfo=Pe.userinfo,Ke.host=Pe.host,Ke.port=Pe.port,Ke.path=ot(Pe.path||""),Ke.query=Pe.query):(Pe.path?("/"===Pe.path.charAt(0)?Ke.path=ot(Pe.path):(Ke.path=void 0===De.userinfo&&void 0===De.host&&void 0===De.port||De.path?De.path?De.path.slice(0,De.path.lastIndexOf("/")+1)+Pe.path:Pe.path:"/"+Pe.path,Ke.path=ot(Ke.path)),Ke.query=Pe.query):(Ke.path=De.path,Ke.query=void 0!==Pe.query?Pe.query:De.query),Ke.userinfo=De.userinfo,Ke.host=De.host,Ke.port=De.port),Ke.scheme=De.scheme),Ke.fragment=Pe.fragment,Ke}function Ie(De,Pe){return De&&De.toString().replace(Pe&&Pe.iri?z.PCT_ENCODED:u.PCT_ENCODED,ae)}var Ne={scheme:"http",domainHost:!0,parse:function(Pe,Je){return Pe.host||(Pe.error=Pe.error||"HTTP URIs must have a host."),Pe},serialize:function(Pe,Je){var Ge="https"===String(Pe.scheme).toLowerCase();return(Pe.port===(Ge?443:80)||""===Pe.port)&&(Pe.port=void 0),Pe.path||(Pe.path="/"),Pe}},pt={scheme:"https",domainHost:Ne.domainHost,parse:Ne.parse,serialize:Ne.serialize};function Dt(De){return"boolean"==typeof De.secure?De.secure:"wss"===String(De.scheme).toLowerCase()}var Lt={scheme:"ws",domainHost:!0,parse:function(Pe,Je){var Ge=Pe;return Ge.secure=Dt(Ge),Ge.resourceName=(Ge.path||"/")+(Ge.query?"?"+Ge.query:""),Ge.path=void 0,Ge.query=void 0,Ge},serialize:function(Pe,Je){if((Pe.port===(Dt(Pe)?443:80)||""===Pe.port)&&(Pe.port=void 0),"boolean"==typeof Pe.secure&&(Pe.scheme=Pe.secure?"wss":"ws",Pe.secure=void 0),Pe.resourceName){var Ge=Pe.resourceName.split("?"),Ke=M(Ge,2),_e=Ke[0],it=Ke[1];Pe.path=_e&&"/"!==_e?_e:void 0,Pe.query=it,Pe.resourceName=void 0}return Pe.fragment=void 0,Pe}},Ut={scheme:"wss",domainHost:Lt.domainHost,parse:Lt.parse,serialize:Lt.serialize},qt={},cn="[A-Za-z0-9\\-\\.\\_\\~\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]",Wt="[0-9A-Fa-f]",Vt=n(n("%[EFef]"+Wt+"%"+Wt+Wt+"%"+Wt+Wt)+"|"+n("%[89A-Fa-f]"+Wt+"%"+Wt+Wt)+"|"+n("%"+Wt+Wt)),et=e("[\\!\\$\\%\\'\\(\\)\\*\\+\\,\\-\\.0-9\\<\\>A-Z\\x5E-\\x7E]",'[\\"\\\\]'),Ot=new RegExp(cn,"g"),xt=new RegExp(Vt,"g"),Qe=new RegExp(e("[^]","[A-Za-z0-9\\!\\$\\%\\'\\*\\+\\-\\^\\_\\`\\{\\|\\}\\~]","[\\.]",'[\\"]',et),"g"),ke=new RegExp(e("[^]",cn,"[\\!\\$\\'\\(\\)\\*\\+\\,\\;\\:\\@]"),"g"),pe=ke;function qe(De){var Pe=ae(De);return Pe.match(Ot)?Pe:De}var ge={scheme:"mailto",parse:function(Pe,Je){var Ge=Pe,Ke=Ge.to=Ge.path?Ge.path.split(","):[];if(Ge.path=void 0,Ge.query){for(var _e=!1,it={},b=Ge.query.split("&"),N=0,O=b.length;N{"use strict";o.d(I,{Z:()=>e});const e="import { MockStatusError, MockRequest } from '@delon/mock';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n// import * as Mock from 'mockjs';\n\nconst r = (min: number, max: number): number => Math.floor(Math.random() * (max - min + 1) + min);\n\nexport const USERS = {\n // \u652f\u6301\u503c\u4e3a Object \u548c Array\n 'GET /users': (req: MockRequest) => {\n const total = req.queryString.total || 100;\n const res: NzSafeAny = {\n list: [],\n total\n };\n for (let i = 0; i < +req.queryString.ps; i++) {\n res.list.push({\n id: i + 1,\n type: r(1, 3),\n picture: {\n thumbnail: `https://randomuser.me/api/portraits/thumb/${r(0, 1) === 0 ? 'men' : 'women'}/${r(1, 50)}.jpg`\n },\n name: {\n last: `last-${r(1, 10)}`,\n first: `first-${r(10, 20)}`\n },\n nat: ['CH', 'US', 'DE'][i % 3],\n gender: ['male', 'female'][i % 2],\n email: `aaa${r(1, 10)}@qq.com`,\n phone: `phone-${r(1000, 100000)}`,\n price: r(10, 10000000),\n total: r(10, 10000000),\n website: `https://${r(10, 10000000)}.com/`,\n disabled: r(1, 100) > 50,\n registered: new Date()\n });\n }\n return res;\n },\n 'GET /user/check/': () => false,\n 'GET /user/check/:name': (req: MockRequest) => req.params.name === 'cipchk',\n // GET POST \u53ef\u7701\u7565\n // '/users/1': Mock.mock({ id: 1, 'rank|3': '\u2605\u2605\u2605' }),\n // \u53d1\u9001 Status \u9519\u8bef\n '/500': () => {\n throw new MockStatusError(500);\n },\n '/404': () => {\n throw new MockStatusError(404);\n },\n '/user/:id': (req: MockRequest) => {\n return { id: req.params.id, name: 'detail' };\n },\n '/user/:id/edit': (req: MockRequest) => {\n return { id: req.params.id, name: 'edit' };\n },\n '/user/:id/upload': (req: MockRequest) => {\n return { id: req.params.id, name: 'upload' };\n }\n};\n"},59344:nt=>{function I(e,n,t,i,l,C,E){try{var u=e[C](E),z=u.value}catch(M){return void t(M)}u.done?n(z):Promise.resolve(z).then(i,l)}nt.exports=function o(e){return function(){var n=this,t=arguments;return new Promise(function(i,l){var C=e.apply(n,t);function E(z){I(C,i,l,E,u,"next",z)}function u(z){I(C,i,l,E,u,"throw",z)}E(void 0)})}},nt.exports.__esModule=!0,nt.exports.default=nt.exports},49671:(nt,I,o)=>{"use strict";function e(t,i,l,C,E,u,z){try{var M=t[u](z),h=M.value}catch(v){return void l(v)}M.done?i(h):Promise.resolve(h).then(C,E)}function n(t){return function(){var i=this,l=arguments;return new Promise(function(C,E){var u=t.apply(i,l);function z(h){e(u,C,E,z,M,"next",h)}function M(h){e(u,C,E,z,M,"throw",h)}z(void 0)})}}o.d(I,{Z:()=>n})},86825:(nt,I,o)=>{"use strict";o.d(I,{EY:()=>f,IO:()=>p,LC:()=>n,SB:()=>z,X$:()=>i,ZE:()=>T,ZN:()=>y,_j:()=>e,eR:()=>h,jt:()=>l,k1:()=>x,l3:()=>t,oB:()=>u,vP:()=>E});class e{}class n{}const t="*";function i(D,_){return{type:7,name:D,definitions:_,options:{}}}function l(D,_=null){return{type:4,styles:_,timings:D}}function E(D,_=null){return{type:2,steps:D,options:_}}function u(D){return{type:6,styles:D,offset:null}}function z(D,_,P){return{type:0,name:D,styles:_,options:P}}function h(D,_,P=null){return{type:1,expr:D,animation:_,options:P}}function p(D,_,P=null){return{type:11,selector:D,animation:_,options:P}}function f(D,_){return{type:12,timings:D,animation:_}}class y{constructor(_=0,P=0){this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._originalOnDoneFns=[],this._originalOnStartFns=[],this._started=!1,this._destroyed=!1,this._finished=!1,this._position=0,this.parentPlayer=null,this.totalTime=_+P}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(_=>_()),this._onDoneFns=[])}onStart(_){this._originalOnStartFns.push(_),this._onStartFns.push(_)}onDone(_){this._originalOnDoneFns.push(_),this._onDoneFns.push(_)}onDestroy(_){this._onDestroyFns.push(_)}hasStarted(){return this._started}init(){}play(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0}triggerMicrotask(){queueMicrotask(()=>this._onFinish())}_onStart(){this._onStartFns.forEach(_=>_()),this._onStartFns=[]}pause(){}restart(){}finish(){this._onFinish()}destroy(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(_=>_()),this._onDestroyFns=[])}reset(){this._started=!1,this._finished=!1,this._onStartFns=this._originalOnStartFns,this._onDoneFns=this._originalOnDoneFns}setPosition(_){this._position=this.totalTime?_*this.totalTime:1}getPosition(){return this.totalTime?this._position/this.totalTime:1}triggerCallback(_){const P="start"==_?this._onStartFns:this._onDoneFns;P.forEach(S=>S()),P.length=0}}class T{constructor(_){this._onDoneFns=[],this._onStartFns=[],this._finished=!1,this._started=!1,this._destroyed=!1,this._onDestroyFns=[],this.parentPlayer=null,this.totalTime=0,this.players=_;let P=0,S=0,A=0;const k=this.players.length;0==k?queueMicrotask(()=>this._onFinish()):this.players.forEach(R=>{R.onDone(()=>{++P==k&&this._onFinish()}),R.onDestroy(()=>{++S==k&&this._onDestroy()}),R.onStart(()=>{++A==k&&this._onStart()})}),this.totalTime=this.players.reduce((R,$)=>Math.max(R,$.totalTime),0)}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(_=>_()),this._onDoneFns=[])}init(){this.players.forEach(_=>_.init())}onStart(_){this._onStartFns.push(_)}_onStart(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(_=>_()),this._onStartFns=[])}onDone(_){this._onDoneFns.push(_)}onDestroy(_){this._onDestroyFns.push(_)}hasStarted(){return this._started}play(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(_=>_.play())}pause(){this.players.forEach(_=>_.pause())}restart(){this.players.forEach(_=>_.restart())}finish(){this._onFinish(),this.players.forEach(_=>_.finish())}destroy(){this._onDestroy()}_onDestroy(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(_=>_.destroy()),this._onDestroyFns.forEach(_=>_()),this._onDestroyFns=[])}reset(){this.players.forEach(_=>_.reset()),this._destroyed=!1,this._finished=!1,this._started=!1}setPosition(_){const P=_*this.totalTime;this.players.forEach(S=>{const A=S.totalTime?Math.min(1,P/S.totalTime):1;S.setPosition(A)})}getPosition(){const _=this.players.reduce((P,S)=>null===P||S.totalTime>P.totalTime?S:P,null);return null!=_?_.getPosition():0}beforeDestroy(){this.players.forEach(_=>{_.beforeDestroy&&_.beforeDestroy()})}triggerCallback(_){const P="start"==_?this._onStartFns:this._onDoneFns;P.forEach(S=>S()),P.length=0}}const x="!"},4300:(nt,I,o)=>{"use strict";o.d(I,{Em:()=>K,X6:()=>ot,kH:()=>Wt,mK:()=>Be,qV:()=>ee,rt:()=>It,tE:()=>cn,yG:()=>mt});var e=o(96814),n=o(65879),t=o(62831),i=o(78645),l=o(47394),C=o(65619),E=o(22096),u=o(36028),z=o(99397),M=o(83620),h=o(32181),v=o(37398),g=o(48180),d=o(836),p=o(93997),f=o(59773),y=o(42495),T=o(17131),x=o(71088);class G{constructor(xt){this._items=xt,this._activeItemIndex=-1,this._activeItem=null,this._wrap=!1,this._letterKeyStream=new i.x,this._typeaheadSubscription=l.w0.EMPTY,this._vertical=!0,this._allowedModifierKeys=[],this._homeAndEnd=!1,this._pageUpAndDown={enabled:!1,delta:10},this._skipPredicateFn=Qe=>Qe.disabled,this._pressedLetters=[],this.tabOut=new i.x,this.change=new i.x,xt instanceof n.n_E&&(this._itemChangesSubscription=xt.changes.subscribe(Qe=>{if(this._activeItem){const pe=Qe.toArray().indexOf(this._activeItem);pe>-1&&pe!==this._activeItemIndex&&(this._activeItemIndex=pe)}}))}skipPredicate(xt){return this._skipPredicateFn=xt,this}withWrap(xt=!0){return this._wrap=xt,this}withVerticalOrientation(xt=!0){return this._vertical=xt,this}withHorizontalOrientation(xt){return this._horizontal=xt,this}withAllowedModifierKeys(xt){return this._allowedModifierKeys=xt,this}withTypeAhead(xt=200){return this._typeaheadSubscription.unsubscribe(),this._typeaheadSubscription=this._letterKeyStream.pipe((0,z.b)(Qe=>this._pressedLetters.push(Qe)),(0,M.b)(xt),(0,h.h)(()=>this._pressedLetters.length>0),(0,v.U)(()=>this._pressedLetters.join(""))).subscribe(Qe=>{const ke=this._getItemsArray();for(let pe=1;pe!xt[qe]||this._allowedModifierKeys.indexOf(qe)>-1);switch(Qe){case u.Mf:return void this.tabOut.next();case u.JH:if(this._vertical&&pe){this.setNextItemActive();break}return;case u.LH:if(this._vertical&&pe){this.setPreviousItemActive();break}return;case u.SV:if(this._horizontal&&pe){"rtl"===this._horizontal?this.setPreviousItemActive():this.setNextItemActive();break}return;case u.oh:if(this._horizontal&&pe){"rtl"===this._horizontal?this.setNextItemActive():this.setPreviousItemActive();break}return;case u.Sd:if(this._homeAndEnd&&pe){this.setFirstItemActive();break}return;case u.uR:if(this._homeAndEnd&&pe){this.setLastItemActive();break}return;case u.Ku:if(this._pageUpAndDown.enabled&&pe){const qe=this._activeItemIndex-this._pageUpAndDown.delta;this._setActiveItemByIndex(qe>0?qe:0,1);break}return;case u.VM:if(this._pageUpAndDown.enabled&&pe){const qe=this._activeItemIndex+this._pageUpAndDown.delta,ge=this._getItemsArray().length;this._setActiveItemByIndex(qe=u.A&&Qe<=u.Z||Qe>=u.xE&&Qe<=u.aO)&&this._letterKeyStream.next(String.fromCharCode(Qe))))}this._pressedLetters=[],xt.preventDefault()}get activeItemIndex(){return this._activeItemIndex}get activeItem(){return this._activeItem}isTyping(){return this._pressedLetters.length>0}setFirstItemActive(){this._setActiveItemByIndex(0,1)}setLastItemActive(){this._setActiveItemByIndex(this._items.length-1,-1)}setNextItemActive(){this._activeItemIndex<0?this.setFirstItemActive():this._setActiveItemByDelta(1)}setPreviousItemActive(){this._activeItemIndex<0&&this._wrap?this.setLastItemActive():this._setActiveItemByDelta(-1)}updateActiveItem(xt){const Qe=this._getItemsArray(),ke="number"==typeof xt?xt:Qe.indexOf(xt);this._activeItem=Qe[ke]??null,this._activeItemIndex=ke}destroy(){this._typeaheadSubscription.unsubscribe(),this._itemChangesSubscription?.unsubscribe(),this._letterKeyStream.complete(),this.tabOut.complete(),this.change.complete(),this._pressedLetters=[]}_setActiveItemByDelta(xt){this._wrap?this._setActiveInWrapMode(xt):this._setActiveInDefaultMode(xt)}_setActiveInWrapMode(xt){const Qe=this._getItemsArray();for(let ke=1;ke<=Qe.length;ke++){const pe=(this._activeItemIndex+xt*ke+Qe.length)%Qe.length;if(!this._skipPredicateFn(Qe[pe]))return void this.setActiveItem(pe)}}_setActiveInDefaultMode(xt){this._setActiveItemByIndex(this._activeItemIndex+xt,xt)}_setActiveItemByIndex(xt,Qe){const ke=this._getItemsArray();if(ke[xt]){for(;this._skipPredicateFn(ke[xt]);)if(!ke[xt+=Qe])return;this.setActiveItem(xt)}}_getItemsArray(){return this._items instanceof n.n_E?this._items.toArray():this._items}}class K extends G{constructor(){super(...arguments),this._origin="program"}setFocusOrigin(xt){return this._origin=xt,this}setActiveItem(xt){super.setActiveItem(xt),this.activeItem&&this.activeItem.focus(this._origin)}}let ne=(()=>{class Ot{constructor(Qe){this._platform=Qe}isDisabled(Qe){return Qe.hasAttribute("disabled")}isVisible(Qe){return function re(Ot){return!!(Ot.offsetWidth||Ot.offsetHeight||"function"==typeof Ot.getClientRects&&Ot.getClientRects().length)}(Qe)&&"visible"===getComputedStyle(Qe).visibility}isTabbable(Qe){if(!this._platform.isBrowser)return!1;const ke=function fe(Ot){try{return Ot.frameElement}catch{return null}}(function q(Ot){return Ot.ownerDocument&&Ot.ownerDocument.defaultView||window}(Qe));if(ke&&(-1===xe(ke)||!this.isVisible(ke)))return!1;let pe=Qe.nodeName.toLowerCase(),qe=xe(Qe);return Qe.hasAttribute("contenteditable")?-1!==qe:!("iframe"===pe||"object"===pe||this._platform.WEBKIT&&this._platform.IOS&&!function Me(Ot){let xt=Ot.nodeName.toLowerCase(),Qe="input"===xt&&Ot.type;return"text"===Qe||"password"===Qe||"select"===xt||"textarea"===xt}(Qe))&&("audio"===pe?!!Qe.hasAttribute("controls")&&-1!==qe:"video"===pe?-1!==qe&&(null!==qe||this._platform.FIREFOX||Qe.hasAttribute("controls")):Qe.tabIndex>=0)}isFocusable(Qe,ke){return function Ye(Ot){return!function le(Ot){return function Q(Ot){return"input"==Ot.nodeName.toLowerCase()}(Ot)&&"hidden"==Ot.type}(Ot)&&(function be(Ot){let xt=Ot.nodeName.toLowerCase();return"input"===xt||"select"===xt||"button"===xt||"textarea"===xt}(Ot)||function ce(Ot){return function ie(Ot){return"a"==Ot.nodeName.toLowerCase()}(Ot)&&Ot.hasAttribute("href")}(Ot)||Ot.hasAttribute("contenteditable")||ae(Ot))}(Qe)&&!this.isDisabled(Qe)&&(ke?.ignoreVisibility||this.isVisible(Qe))}static#e=this.\u0275fac=function(ke){return new(ke||Ot)(n.LFG(t.t4))};static#t=this.\u0275prov=n.Yz7({token:Ot,factory:Ot.\u0275fac,providedIn:"root"})}return Ot})();function ae(Ot){if(!Ot.hasAttribute("tabindex")||void 0===Ot.tabIndex)return!1;let xt=Ot.getAttribute("tabindex");return!(!xt||isNaN(parseInt(xt,10)))}function xe(Ot){if(!ae(Ot))return null;const xt=parseInt(Ot.getAttribute("tabindex")||"",10);return isNaN(xt)?-1:xt}class ve{get enabled(){return this._enabled}set enabled(xt){this._enabled=xt,this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(xt,this._startAnchor),this._toggleAnchorTabIndex(xt,this._endAnchor))}constructor(xt,Qe,ke,pe,qe=!1){this._element=xt,this._checker=Qe,this._ngZone=ke,this._document=pe,this._hasAttached=!1,this.startAnchorListener=()=>this.focusLastTabbableElement(),this.endAnchorListener=()=>this.focusFirstTabbableElement(),this._enabled=!0,qe||this.attachAnchors()}destroy(){const xt=this._startAnchor,Qe=this._endAnchor;xt&&(xt.removeEventListener("focus",this.startAnchorListener),xt.remove()),Qe&&(Qe.removeEventListener("focus",this.endAnchorListener),Qe.remove()),this._startAnchor=this._endAnchor=null,this._hasAttached=!1}attachAnchors(){return!!this._hasAttached||(this._ngZone.runOutsideAngular(()=>{this._startAnchor||(this._startAnchor=this._createAnchor(),this._startAnchor.addEventListener("focus",this.startAnchorListener)),this._endAnchor||(this._endAnchor=this._createAnchor(),this._endAnchor.addEventListener("focus",this.endAnchorListener))}),this._element.parentNode&&(this._element.parentNode.insertBefore(this._startAnchor,this._element),this._element.parentNode.insertBefore(this._endAnchor,this._element.nextSibling),this._hasAttached=!0),this._hasAttached)}focusInitialElementWhenReady(xt){return new Promise(Qe=>{this._executeOnStable(()=>Qe(this.focusInitialElement(xt)))})}focusFirstTabbableElementWhenReady(xt){return new Promise(Qe=>{this._executeOnStable(()=>Qe(this.focusFirstTabbableElement(xt)))})}focusLastTabbableElementWhenReady(xt){return new Promise(Qe=>{this._executeOnStable(()=>Qe(this.focusLastTabbableElement(xt)))})}_getRegionBoundary(xt){const Qe=this._element.querySelectorAll(`[cdk-focus-region-${xt}], [cdkFocusRegion${xt}], [cdk-focus-${xt}]`);return"start"==xt?Qe.length?Qe[0]:this._getFirstTabbableElement(this._element):Qe.length?Qe[Qe.length-1]:this._getLastTabbableElement(this._element)}focusInitialElement(xt){const Qe=this._element.querySelector("[cdk-focus-initial], [cdkFocusInitial]");if(Qe){if(!this._checker.isFocusable(Qe)){const ke=this._getFirstTabbableElement(Qe);return ke?.focus(xt),!!ke}return Qe.focus(xt),!0}return this.focusFirstTabbableElement(xt)}focusFirstTabbableElement(xt){const Qe=this._getRegionBoundary("start");return Qe&&Qe.focus(xt),!!Qe}focusLastTabbableElement(xt){const Qe=this._getRegionBoundary("end");return Qe&&Qe.focus(xt),!!Qe}hasAttached(){return this._hasAttached}_getFirstTabbableElement(xt){if(this._checker.isFocusable(xt)&&this._checker.isTabbable(xt))return xt;const Qe=xt.children;for(let ke=0;ke=0;ke--){const pe=Qe[ke].nodeType===this._document.ELEMENT_NODE?this._getLastTabbableElement(Qe[ke]):null;if(pe)return pe}return null}_createAnchor(){const xt=this._document.createElement("div");return this._toggleAnchorTabIndex(this._enabled,xt),xt.classList.add("cdk-visually-hidden"),xt.classList.add("cdk-focus-trap-anchor"),xt.setAttribute("aria-hidden","true"),xt}_toggleAnchorTabIndex(xt,Qe){xt?Qe.setAttribute("tabindex","0"):Qe.removeAttribute("tabindex")}toggleAnchors(xt){this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(xt,this._startAnchor),this._toggleAnchorTabIndex(xt,this._endAnchor))}_executeOnStable(xt){this._ngZone.isStable?xt():this._ngZone.onStable.pipe((0,g.q)(1)).subscribe(xt)}}let ee=(()=>{class Ot{constructor(Qe,ke,pe){this._checker=Qe,this._ngZone=ke,this._document=pe}create(Qe,ke=!1){return new ve(Qe,this._checker,this._ngZone,this._document,ke)}static#e=this.\u0275fac=function(ke){return new(ke||Ot)(n.LFG(ne),n.LFG(n.R0b),n.LFG(e.K0))};static#t=this.\u0275prov=n.Yz7({token:Ot,factory:Ot.\u0275fac,providedIn:"root"})}return Ot})(),Be=(()=>{class Ot{get enabled(){return this.focusTrap.enabled}set enabled(Qe){this.focusTrap.enabled=(0,y.Ig)(Qe)}get autoCapture(){return this._autoCapture}set autoCapture(Qe){this._autoCapture=(0,y.Ig)(Qe)}constructor(Qe,ke,pe){this._elementRef=Qe,this._focusTrapFactory=ke,this._previouslyFocusedElement=null,this.focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement,!0)}ngOnDestroy(){this.focusTrap.destroy(),this._previouslyFocusedElement&&(this._previouslyFocusedElement.focus(),this._previouslyFocusedElement=null)}ngAfterContentInit(){this.focusTrap.attachAnchors(),this.autoCapture&&this._captureFocus()}ngDoCheck(){this.focusTrap.hasAttached()||this.focusTrap.attachAnchors()}ngOnChanges(Qe){const ke=Qe.autoCapture;ke&&!ke.firstChange&&this.autoCapture&&this.focusTrap.hasAttached()&&this._captureFocus()}_captureFocus(){this._previouslyFocusedElement=(0,t.ht)(),this.focusTrap.focusInitialElementWhenReady()}static#e=this.\u0275fac=function(ke){return new(ke||Ot)(n.Y36(n.SBq),n.Y36(ee),n.Y36(e.K0))};static#t=this.\u0275dir=n.lG2({type:Ot,selectors:[["","cdkTrapFocus",""]],inputs:{enabled:["cdkTrapFocus","enabled"],autoCapture:["cdkTrapFocusAutoCapture","autoCapture"]},exportAs:["cdkTrapFocus"],features:[n.TTD]})}return Ot})();function ot(Ot){return 0===Ot.buttons||0===Ot.offsetX&&0===Ot.offsetY}function mt(Ot){const xt=Ot.touches&&Ot.touches[0]||Ot.changedTouches&&Ot.changedTouches[0];return!(!xt||-1!==xt.identifier||null!=xt.radiusX&&1!==xt.radiusX||null!=xt.radiusY&&1!==xt.radiusY)}const we=new n.OlP("cdk-input-modality-detector-options"),de={ignoreKeys:[u.zL,u.jx,u.b2,u.MW,u.JU]},B=(0,t.i$)({passive:!0,capture:!0});let Ee=(()=>{class Ot{get mostRecentModality(){return this._modality.value}constructor(Qe,ke,pe,qe){this._platform=Qe,this._mostRecentTarget=null,this._modality=new C.X(null),this._lastTouchMs=0,this._onKeydown=ge=>{this._options?.ignoreKeys?.some(Ze=>Ze===ge.keyCode)||(this._modality.next("keyboard"),this._mostRecentTarget=(0,t.sA)(ge))},this._onMousedown=ge=>{Date.now()-this._lastTouchMs<650||(this._modality.next(ot(ge)?"keyboard":"mouse"),this._mostRecentTarget=(0,t.sA)(ge))},this._onTouchstart=ge=>{mt(ge)?this._modality.next("keyboard"):(this._lastTouchMs=Date.now(),this._modality.next("touch"),this._mostRecentTarget=(0,t.sA)(ge))},this._options={...de,...qe},this.modalityDetected=this._modality.pipe((0,d.T)(1)),this.modalityChanged=this.modalityDetected.pipe((0,p.x)()),Qe.isBrowser&&ke.runOutsideAngular(()=>{pe.addEventListener("keydown",this._onKeydown,B),pe.addEventListener("mousedown",this._onMousedown,B),pe.addEventListener("touchstart",this._onTouchstart,B)})}ngOnDestroy(){this._modality.complete(),this._platform.isBrowser&&(document.removeEventListener("keydown",this._onKeydown,B),document.removeEventListener("mousedown",this._onMousedown,B),document.removeEventListener("touchstart",this._onTouchstart,B))}static#e=this.\u0275fac=function(ke){return new(ke||Ot)(n.LFG(t.t4),n.LFG(n.R0b),n.LFG(e.K0),n.LFG(we,8))};static#t=this.\u0275prov=n.Yz7({token:Ot,factory:Ot.\u0275fac,providedIn:"root"})}return Ot})();const qt=new n.OlP("cdk-focus-monitor-default-options"),en=(0,t.i$)({passive:!0,capture:!0});let cn=(()=>{class Ot{constructor(Qe,ke,pe,qe,ge){this._ngZone=Qe,this._platform=ke,this._inputModalityDetector=pe,this._origin=null,this._windowFocused=!1,this._originFromTouchInteraction=!1,this._elementInfo=new Map,this._monitoredElementCount=0,this._rootNodeFocusListenerCount=new Map,this._windowFocusListener=()=>{this._windowFocused=!0,this._windowFocusTimeoutId=window.setTimeout(()=>this._windowFocused=!1)},this._stopInputModalityDetector=new i.x,this._rootNodeFocusAndBlurListener=Ze=>{for(let Ue=(0,t.sA)(Ze);Ue;Ue=Ue.parentElement)"focus"===Ze.type?this._onFocus(Ze,Ue):this._onBlur(Ze,Ue)},this._document=qe,this._detectionMode=ge?.detectionMode||0}monitor(Qe,ke=!1){const pe=(0,y.fI)(Qe);if(!this._platform.isBrowser||1!==pe.nodeType)return(0,E.of)();const qe=(0,t.kV)(pe)||this._getDocument(),ge=this._elementInfo.get(pe);if(ge)return ke&&(ge.checkChildren=!0),ge.subject;const Ze={checkChildren:ke,subject:new i.x,rootNode:qe};return this._elementInfo.set(pe,Ze),this._registerGlobalListeners(Ze),Ze.subject}stopMonitoring(Qe){const ke=(0,y.fI)(Qe),pe=this._elementInfo.get(ke);pe&&(pe.subject.complete(),this._setClasses(ke),this._elementInfo.delete(ke),this._removeGlobalListeners(pe))}focusVia(Qe,ke,pe){const qe=(0,y.fI)(Qe);qe===this._getDocument().activeElement?this._getClosestElementsInfo(qe).forEach(([Ze,$e])=>this._originChanged(Ze,ke,$e)):(this._setOrigin(ke),"function"==typeof qe.focus&&qe.focus(pe))}ngOnDestroy(){this._elementInfo.forEach((Qe,ke)=>this.stopMonitoring(ke))}_getDocument(){return this._document||document}_getWindow(){return this._getDocument().defaultView||window}_getFocusOrigin(Qe){return this._origin?this._originFromTouchInteraction?this._shouldBeAttributedToTouch(Qe)?"touch":"program":this._origin:this._windowFocused&&this._lastFocusOrigin?this._lastFocusOrigin:Qe&&this._isLastInteractionFromInputLabel(Qe)?"mouse":"program"}_shouldBeAttributedToTouch(Qe){return 1===this._detectionMode||!!Qe?.contains(this._inputModalityDetector._mostRecentTarget)}_setClasses(Qe,ke){Qe.classList.toggle("cdk-focused",!!ke),Qe.classList.toggle("cdk-touch-focused","touch"===ke),Qe.classList.toggle("cdk-keyboard-focused","keyboard"===ke),Qe.classList.toggle("cdk-mouse-focused","mouse"===ke),Qe.classList.toggle("cdk-program-focused","program"===ke)}_setOrigin(Qe,ke=!1){this._ngZone.runOutsideAngular(()=>{this._origin=Qe,this._originFromTouchInteraction="touch"===Qe&&ke,0===this._detectionMode&&(clearTimeout(this._originTimeoutId),this._originTimeoutId=setTimeout(()=>this._origin=null,this._originFromTouchInteraction?650:1))})}_onFocus(Qe,ke){const pe=this._elementInfo.get(ke),qe=(0,t.sA)(Qe);!pe||!pe.checkChildren&&ke!==qe||this._originChanged(ke,this._getFocusOrigin(qe),pe)}_onBlur(Qe,ke){const pe=this._elementInfo.get(ke);!pe||pe.checkChildren&&Qe.relatedTarget instanceof Node&&ke.contains(Qe.relatedTarget)||(this._setClasses(ke),this._emitOrigin(pe,null))}_emitOrigin(Qe,ke){Qe.subject.observers.length&&this._ngZone.run(()=>Qe.subject.next(ke))}_registerGlobalListeners(Qe){if(!this._platform.isBrowser)return;const ke=Qe.rootNode,pe=this._rootNodeFocusListenerCount.get(ke)||0;pe||this._ngZone.runOutsideAngular(()=>{ke.addEventListener("focus",this._rootNodeFocusAndBlurListener,en),ke.addEventListener("blur",this._rootNodeFocusAndBlurListener,en)}),this._rootNodeFocusListenerCount.set(ke,pe+1),1==++this._monitoredElementCount&&(this._ngZone.runOutsideAngular(()=>{this._getWindow().addEventListener("focus",this._windowFocusListener)}),this._inputModalityDetector.modalityDetected.pipe((0,f.R)(this._stopInputModalityDetector)).subscribe(qe=>{this._setOrigin(qe,!0)}))}_removeGlobalListeners(Qe){const ke=Qe.rootNode;if(this._rootNodeFocusListenerCount.has(ke)){const pe=this._rootNodeFocusListenerCount.get(ke);pe>1?this._rootNodeFocusListenerCount.set(ke,pe-1):(ke.removeEventListener("focus",this._rootNodeFocusAndBlurListener,en),ke.removeEventListener("blur",this._rootNodeFocusAndBlurListener,en),this._rootNodeFocusListenerCount.delete(ke))}--this._monitoredElementCount||(this._getWindow().removeEventListener("focus",this._windowFocusListener),this._stopInputModalityDetector.next(),clearTimeout(this._windowFocusTimeoutId),clearTimeout(this._originTimeoutId))}_originChanged(Qe,ke,pe){this._setClasses(Qe,ke),this._emitOrigin(pe,ke),this._lastFocusOrigin=ke}_getClosestElementsInfo(Qe){const ke=[];return this._elementInfo.forEach((pe,qe)=>{(qe===Qe||pe.checkChildren&&qe.contains(Qe))&&ke.push([qe,pe])}),ke}_isLastInteractionFromInputLabel(Qe){const{_mostRecentTarget:ke,mostRecentModality:pe}=this._inputModalityDetector;if("mouse"!==pe||!ke||ke===Qe||"INPUT"!==Qe.nodeName&&"TEXTAREA"!==Qe.nodeName||Qe.disabled)return!1;const qe=Qe.labels;if(qe)for(let ge=0;ge{class Ot{constructor(Qe,ke){this._elementRef=Qe,this._focusMonitor=ke,this._focusOrigin=null,this.cdkFocusChange=new n.vpe}get focusOrigin(){return this._focusOrigin}ngAfterViewInit(){const Qe=this._elementRef.nativeElement;this._monitorSubscription=this._focusMonitor.monitor(Qe,1===Qe.nodeType&&Qe.hasAttribute("cdkMonitorSubtreeFocus")).subscribe(ke=>{this._focusOrigin=ke,this.cdkFocusChange.emit(ke)})}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef),this._monitorSubscription&&this._monitorSubscription.unsubscribe()}static#e=this.\u0275fac=function(ke){return new(ke||Ot)(n.Y36(n.SBq),n.Y36(cn))};static#t=this.\u0275dir=n.lG2({type:Ot,selectors:[["","cdkMonitorElementFocus",""],["","cdkMonitorSubtreeFocus",""]],outputs:{cdkFocusChange:"cdkFocusChange"},exportAs:["cdkMonitorFocus"]})}return Ot})();const Vt="cdk-high-contrast-black-on-white",st="cdk-high-contrast-white-on-black",He="cdk-high-contrast-active";let et=(()=>{class Ot{constructor(Qe,ke){this._platform=Qe,this._document=ke,this._breakpointSubscription=(0,n.f3M)(x.Yg).observe("(forced-colors: active)").subscribe(()=>{this._hasCheckedHighContrastMode&&(this._hasCheckedHighContrastMode=!1,this._applyBodyHighContrastModeCssClasses())})}getHighContrastMode(){if(!this._platform.isBrowser)return 0;const Qe=this._document.createElement("div");Qe.style.backgroundColor="rgb(1,2,3)",Qe.style.position="absolute",this._document.body.appendChild(Qe);const ke=this._document.defaultView||window,pe=ke&&ke.getComputedStyle?ke.getComputedStyle(Qe):null,qe=(pe&&pe.backgroundColor||"").replace(/ /g,"");switch(Qe.remove(),qe){case"rgb(0,0,0)":case"rgb(45,50,54)":case"rgb(32,32,32)":return 2;case"rgb(255,255,255)":case"rgb(255,250,239)":return 1}return 0}ngOnDestroy(){this._breakpointSubscription.unsubscribe()}_applyBodyHighContrastModeCssClasses(){if(!this._hasCheckedHighContrastMode&&this._platform.isBrowser&&this._document.body){const Qe=this._document.body.classList;Qe.remove(He,Vt,st),this._hasCheckedHighContrastMode=!0;const ke=this.getHighContrastMode();1===ke?Qe.add(He,Vt):2===ke&&Qe.add(He,st)}}static#e=this.\u0275fac=function(ke){return new(ke||Ot)(n.LFG(t.t4),n.LFG(e.K0))};static#t=this.\u0275prov=n.Yz7({token:Ot,factory:Ot.\u0275fac,providedIn:"root"})}return Ot})(),It=(()=>{class Ot{constructor(Qe){Qe._applyBodyHighContrastModeCssClasses()}static#e=this.\u0275fac=function(ke){return new(ke||Ot)(n.LFG(et))};static#t=this.\u0275mod=n.oAB({type:Ot});static#n=this.\u0275inj=n.cJS({imports:[T.Q8]})}return Ot})()},49388:(nt,I,o)=>{"use strict";o.d(I,{Is:()=>E,Lv:()=>u,vT:()=>z});var e=o(65879),n=o(96814);const t=new e.OlP("cdk-dir-doc",{providedIn:"root",factory:function i(){return(0,e.f3M)(n.K0)}}),l=/^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i;function C(M){const h=M?.toLowerCase()||"";return"auto"===h&&typeof navigator<"u"&&navigator?.language?l.test(navigator.language)?"rtl":"ltr":"rtl"===h?"rtl":"ltr"}let E=(()=>{class M{constructor(v){this.value="ltr",this.change=new e.vpe,v&&(this.value=C((v.body?v.body.dir:null)||(v.documentElement?v.documentElement.dir:null)||"ltr"))}ngOnDestroy(){this.change.complete()}static#e=this.\u0275fac=function(g){return new(g||M)(e.LFG(t,8))};static#t=this.\u0275prov=e.Yz7({token:M,factory:M.\u0275fac,providedIn:"root"})}return M})(),u=(()=>{class M{constructor(){this._dir="ltr",this._isInitialized=!1,this.change=new e.vpe}get dir(){return this._dir}set dir(v){const g=this._dir;this._dir=C(v),this._rawDir=v,g!==this._dir&&this._isInitialized&&this.change.emit(this._dir)}get value(){return this.dir}ngAfterContentInit(){this._isInitialized=!0}ngOnDestroy(){this.change.complete()}static#e=this.\u0275fac=function(g){return new(g||M)};static#t=this.\u0275dir=e.lG2({type:M,selectors:[["","dir",""]],hostVars:1,hostBindings:function(g,d){2&g&&e.uIk("dir",d._rawDir)},inputs:{dir:"dir"},outputs:{change:"dirChange"},exportAs:["dir"],features:[e._Bn([{provide:E,useExisting:M}])]})}return M})(),z=(()=>{class M{static#e=this.\u0275fac=function(g){return new(g||M)};static#t=this.\u0275mod=e.oAB({type:M});static#n=this.\u0275inj=e.cJS({})}return M})()},42495:(nt,I,o)=>{"use strict";o.d(I,{Eq:()=>l,HM:()=>C,Ig:()=>n,fI:()=>E,su:()=>t,t6:()=>i});var e=o(65879);function n(z){return null!=z&&"false"!=`${z}`}function t(z,M=0){return i(z)?Number(z):M}function i(z){return!isNaN(parseFloat(z))&&!isNaN(Number(z))}function l(z){return Array.isArray(z)?z:[z]}function C(z){return null==z?"":"string"==typeof z?z:`${z}px`}function E(z){return z instanceof e.SBq?z.nativeElement:z}},34423:(nt,I,o)=>{"use strict";o.d(I,{Bh:()=>pt,Zt:()=>Vt,_t:()=>xt,v0:()=>B});var e=o(65879),n=o(96814),t=o(205),i=o(62831),l=o(42495),C=o(4300),E=o(78645),u=o(47394),z=o(91687),M=o(80927),h=o(65592),v=o(63019),g=o(59773),d=o(37398),p=o(48180),f=o(27921),y=o(99397),T=o(94664),x=o(49388);function D(Qe,ke,pe){for(let qe in ke)if(ke.hasOwnProperty(qe)){const ge=ke[qe];ge?Qe.setProperty(qe,ge,pe?.has(qe)?"important":""):Qe.removeProperty(qe)}return Qe}function _(Qe,ke){const pe=ke?"":"none";D(Qe.style,{"touch-action":ke?"":"none","-webkit-user-drag":ke?"":"none","-webkit-tap-highlight-color":ke?"":"transparent","user-select":pe,"-ms-user-select":pe,"-webkit-user-select":pe,"-moz-user-select":pe})}function P(Qe,ke,pe){D(Qe.style,{position:ke?"":"fixed",top:ke?"":"0",opacity:ke?"":"0",left:ke?"":"-999em"},pe)}function S(Qe,ke){return ke&&"none"!=ke?Qe+" "+ke:Qe}function A(Qe){const ke=Qe.toLowerCase().indexOf("ms")>-1?1:1e3;return parseFloat(Qe)*ke}function R(Qe,ke){return Qe.getPropertyValue(ke).split(",").map(qe=>qe.trim())}function $(Qe){const ke=Qe.getBoundingClientRect();return{top:ke.top,right:ke.right,bottom:ke.bottom,left:ke.left,width:ke.width,height:ke.height,x:ke.x,y:ke.y}}function W(Qe,ke,pe){const{top:qe,bottom:ge,left:Ze,right:$e}=Qe;return pe>=qe&&pe<=ge&&ke>=Ze&&ke<=$e}function ze(Qe,ke,pe){Qe.top+=ke,Qe.bottom=Qe.top+Qe.height,Qe.left+=pe,Qe.right=Qe.left+Qe.width}function Y(Qe,ke,pe,qe){const{top:ge,right:Ze,bottom:$e,left:Ue,width:wt,height:De}=Qe,Pe=wt*ke,Je=De*ke;return qe>ge-Je&&qe<$e+Je&&pe>Ue-Pe&&pe{this.positions.set(pe,{scrollPosition:{top:pe.scrollTop,left:pe.scrollLeft},clientRect:$(pe)})})}handleScroll(ke){const pe=(0,i.sA)(ke),qe=this.positions.get(pe);if(!qe)return null;const ge=qe.scrollPosition;let Ze,$e;if(pe===this._document){const De=this.getViewportScrollPosition();Ze=De.top,$e=De.left}else Ze=pe.scrollTop,$e=pe.scrollLeft;const Ue=ge.top-Ze,wt=ge.left-$e;return this.positions.forEach((De,Pe)=>{De.clientRect&&pe!==Pe&&pe.contains(Pe)&&ze(De.clientRect,Ue,wt)}),ge.top=Ze,ge.left=$e,{top:Ue,left:wt}}getViewportScrollPosition(){return{top:window.scrollY,left:window.scrollX}}}function V(Qe){const ke=Qe.cloneNode(!0),pe=ke.querySelectorAll("[id]"),qe=Qe.nodeName.toLowerCase();ke.removeAttribute("id");for(let ge=0;ge_(qe,pe)))}constructor(ke,pe,qe,ge,Ze,$e){this._config=pe,this._document=qe,this._ngZone=ge,this._viewportRuler=Ze,this._dragDropRegistry=$e,this._passiveTransform={x:0,y:0},this._activeTransform={x:0,y:0},this._hasStartedDragging=!1,this._moveEvents=new E.x,this._pointerMoveSubscription=u.w0.EMPTY,this._pointerUpSubscription=u.w0.EMPTY,this._scrollSubscription=u.w0.EMPTY,this._resizeSubscription=u.w0.EMPTY,this._boundaryElement=null,this._nativeInteractionsEnabled=!0,this._handles=[],this._disabledHandles=new Set,this._direction="ltr",this.dragStartDelay=0,this._disabled=!1,this.beforeStarted=new E.x,this.started=new E.x,this.released=new E.x,this.ended=new E.x,this.entered=new E.x,this.exited=new E.x,this.dropped=new E.x,this.moved=this._moveEvents,this._pointerDown=Ue=>{if(this.beforeStarted.next(),this._handles.length){const wt=this._getTargetHandle(Ue);wt&&!this._disabledHandles.has(wt)&&!this.disabled&&this._initializeDragSequence(wt,Ue)}else this.disabled||this._initializeDragSequence(this._rootElement,Ue)},this._pointerMove=Ue=>{const wt=this._getPointerPositionOnPage(Ue);if(!this._hasStartedDragging){if(Math.abs(wt.x-this._pickupPositionOnPage.x)+Math.abs(wt.y-this._pickupPositionOnPage.y)>=this._config.dragStartThreshold){const Ke=Date.now()>=this._dragStartTime+this._getDragStartDelay(Ue),_e=this._dropContainer;if(!Ke)return void this._endDragSequence(Ue);(!_e||!_e.isDragging()&&!_e.isReceiving())&&(Ue.preventDefault(),this._hasStartedDragging=!0,this._ngZone.run(()=>this._startDragSequence(Ue)))}return}Ue.preventDefault();const De=this._getConstrainedPointerPosition(wt);if(this._hasMoved=!0,this._lastKnownPointerPosition=wt,this._updatePointerDirectionDelta(De),this._dropContainer)this._updateActiveDropContainer(De,wt);else{const Pe=this.constrainPosition?this._initialClientRect:this._pickupPositionOnPage,Je=this._activeTransform;Je.x=De.x-Pe.x+this._passiveTransform.x,Je.y=De.y-Pe.y+this._passiveTransform.y,this._applyRootElementTransform(Je.x,Je.y)}this._moveEvents.observers.length&&this._ngZone.run(()=>{this._moveEvents.next({source:this,pointerPosition:De,event:Ue,distance:this._getDragDistance(De),delta:this._pointerDirectionDelta})})},this._pointerUp=Ue=>{this._endDragSequence(Ue)},this._nativeDragStart=Ue=>{if(this._handles.length){const wt=this._getTargetHandle(Ue);wt&&!this._disabledHandles.has(wt)&&!this.disabled&&Ue.preventDefault()}else this.disabled||Ue.preventDefault()},this.withRootElement(ke).withParent(pe.parentDragRef||null),this._parentPositions=new G(qe),$e.registerDragItem(this)}getPlaceholderElement(){return this._placeholder}getRootElement(){return this._rootElement}getVisibleElement(){return this.isDragging()?this.getPlaceholderElement():this.getRootElement()}withHandles(ke){this._handles=ke.map(qe=>(0,l.fI)(qe)),this._handles.forEach(qe=>_(qe,this.disabled)),this._toggleNativeDragInteractions();const pe=new Set;return this._disabledHandles.forEach(qe=>{this._handles.indexOf(qe)>-1&&pe.add(qe)}),this._disabledHandles=pe,this}withPreviewTemplate(ke){return this._previewTemplate=ke,this}withPlaceholderTemplate(ke){return this._placeholderTemplate=ke,this}withRootElement(ke){const pe=(0,l.fI)(ke);return pe!==this._rootElement&&(this._rootElement&&this._removeRootElementListeners(this._rootElement),this._ngZone.runOutsideAngular(()=>{pe.addEventListener("mousedown",this._pointerDown,be),pe.addEventListener("touchstart",this._pointerDown,re),pe.addEventListener("dragstart",this._nativeDragStart,be)}),this._initialTransform=void 0,this._rootElement=pe),typeof SVGElement<"u"&&this._rootElement instanceof SVGElement&&(this._ownerSVGElement=this._rootElement.ownerSVGElement),this}withBoundaryElement(ke){return this._boundaryElement=ke?(0,l.fI)(ke):null,this._resizeSubscription.unsubscribe(),ke&&(this._resizeSubscription=this._viewportRuler.change(10).subscribe(()=>this._containInsideBoundaryOnResize())),this}withParent(ke){return this._parentDragRef=ke,this}dispose(){this._removeRootElementListeners(this._rootElement),this.isDragging()&&this._rootElement?.remove(),this._anchor?.remove(),this._destroyPreview(),this._destroyPlaceholder(),this._dragDropRegistry.removeDragItem(this),this._removeSubscriptions(),this.beforeStarted.complete(),this.started.complete(),this.released.complete(),this.ended.complete(),this.entered.complete(),this.exited.complete(),this.dropped.complete(),this._moveEvents.complete(),this._handles=[],this._disabledHandles.clear(),this._dropContainer=void 0,this._resizeSubscription.unsubscribe(),this._parentPositions.clear(),this._boundaryElement=this._rootElement=this._ownerSVGElement=this._placeholderTemplate=this._previewTemplate=this._anchor=this._parentDragRef=null}isDragging(){return this._hasStartedDragging&&this._dragDropRegistry.isDragging(this)}reset(){this._rootElement.style.transform=this._initialTransform||"",this._activeTransform={x:0,y:0},this._passiveTransform={x:0,y:0}}disableHandle(ke){!this._disabledHandles.has(ke)&&this._handles.indexOf(ke)>-1&&(this._disabledHandles.add(ke),_(ke,!0))}enableHandle(ke){this._disabledHandles.has(ke)&&(this._disabledHandles.delete(ke),_(ke,this.disabled))}withDirection(ke){return this._direction=ke,this}_withDropContainer(ke){this._dropContainer=ke}getFreeDragPosition(){const ke=this.isDragging()?this._activeTransform:this._passiveTransform;return{x:ke.x,y:ke.y}}setFreeDragPosition(ke){return this._activeTransform={x:0,y:0},this._passiveTransform.x=ke.x,this._passiveTransform.y=ke.y,this._dropContainer||this._applyRootElementTransform(ke.x,ke.y),this}withPreviewContainer(ke){return this._previewContainer=ke,this}_sortFromLastPointerPosition(){const ke=this._lastKnownPointerPosition;ke&&this._dropContainer&&this._updateActiveDropContainer(this._getConstrainedPointerPosition(ke),ke)}_removeSubscriptions(){this._pointerMoveSubscription.unsubscribe(),this._pointerUpSubscription.unsubscribe(),this._scrollSubscription.unsubscribe()}_destroyPreview(){this._preview?.remove(),this._previewRef?.destroy(),this._preview=this._previewRef=null}_destroyPlaceholder(){this._placeholder?.remove(),this._placeholderRef?.destroy(),this._placeholder=this._placeholderRef=null}_endDragSequence(ke){if(this._dragDropRegistry.isDragging(this)&&(this._removeSubscriptions(),this._dragDropRegistry.stopDragging(this),this._toggleNativeDragInteractions(),this._handles&&(this._rootElement.style.webkitTapHighlightColor=this._rootElementTapHighlight),this._hasStartedDragging))if(this.released.next({source:this,event:ke}),this._dropContainer)this._dropContainer._stopScrolling(),this._animatePreviewToPlaceholder().then(()=>{this._cleanupDragArtifacts(ke),this._cleanupCachedDimensions(),this._dragDropRegistry.stopDragging(this)});else{this._passiveTransform.x=this._activeTransform.x;const pe=this._getPointerPositionOnPage(ke);this._passiveTransform.y=this._activeTransform.y,this._ngZone.run(()=>{this.ended.next({source:this,distance:this._getDragDistance(pe),dropPoint:pe,event:ke})}),this._cleanupCachedDimensions(),this._dragDropRegistry.stopDragging(this)}}_startDragSequence(ke){xe(ke)&&(this._lastTouchEventTime=Date.now()),this._toggleNativeDragInteractions();const pe=this._dropContainer;if(pe){const qe=this._rootElement,ge=qe.parentNode,Ze=this._placeholder=this._createPlaceholderElement(),$e=this._anchor=this._anchor||this._document.createComment(""),Ue=this._getShadowRoot();ge.insertBefore($e,qe),this._initialTransform=qe.style.transform||"",this._preview=this._createPreviewElement(),P(qe,!1,ce),this._document.body.appendChild(ge.replaceChild(Ze,qe)),this._getPreviewInsertionPoint(ge,Ue).appendChild(this._preview),this.started.next({source:this,event:ke}),pe.start(),this._initialContainer=pe,this._initialIndex=pe.getItemIndex(this)}else this.started.next({source:this,event:ke}),this._initialContainer=this._initialIndex=void 0;this._parentPositions.cache(pe?pe.getScrollableParents():[])}_initializeDragSequence(ke,pe){this._parentDragRef&&pe.stopPropagation();const qe=this.isDragging(),ge=xe(pe),Ze=!ge&&0!==pe.button,$e=this._rootElement,Ue=(0,i.sA)(pe),wt=!ge&&this._lastTouchEventTime&&this._lastTouchEventTime+800>Date.now(),De=ge?(0,C.yG)(pe):(0,C.X6)(pe);if(Ue&&Ue.draggable&&"mousedown"===pe.type&&pe.preventDefault(),qe||Ze||wt||De)return;if(this._handles.length){const Ge=$e.style;this._rootElementTapHighlight=Ge.webkitTapHighlightColor||"",Ge.webkitTapHighlightColor="transparent"}this._hasStartedDragging=this._hasMoved=!1,this._removeSubscriptions(),this._initialClientRect=this._rootElement.getBoundingClientRect(),this._pointerMoveSubscription=this._dragDropRegistry.pointerMove.subscribe(this._pointerMove),this._pointerUpSubscription=this._dragDropRegistry.pointerUp.subscribe(this._pointerUp),this._scrollSubscription=this._dragDropRegistry.scrolled(this._getShadowRoot()).subscribe(Ge=>this._updateOnScroll(Ge)),this._boundaryElement&&(this._boundaryRect=$(this._boundaryElement));const Pe=this._previewTemplate;this._pickupPositionInElement=Pe&&Pe.template&&!Pe.matchSize?{x:0,y:0}:this._getPointerPositionInElement(this._initialClientRect,ke,pe);const Je=this._pickupPositionOnPage=this._lastKnownPointerPosition=this._getPointerPositionOnPage(pe);this._pointerDirectionDelta={x:0,y:0},this._pointerPositionAtLastDirectionChange={x:Je.x,y:Je.y},this._dragStartTime=Date.now(),this._dragDropRegistry.startDragging(this,pe)}_cleanupDragArtifacts(ke){P(this._rootElement,!0,ce),this._anchor.parentNode.replaceChild(this._rootElement,this._anchor),this._destroyPreview(),this._destroyPlaceholder(),this._initialClientRect=this._boundaryRect=this._previewRect=this._initialTransform=void 0,this._ngZone.run(()=>{const pe=this._dropContainer,qe=pe.getItemIndex(this),ge=this._getPointerPositionOnPage(ke),Ze=this._getDragDistance(ge),$e=pe._isOverContainer(ge.x,ge.y);this.ended.next({source:this,distance:Ze,dropPoint:ge,event:ke}),this.dropped.next({item:this,currentIndex:qe,previousIndex:this._initialIndex,container:pe,previousContainer:this._initialContainer,isPointerOverContainer:$e,distance:Ze,dropPoint:ge,event:ke}),pe.drop(this,qe,this._initialIndex,this._initialContainer,$e,Ze,ge,ke),this._dropContainer=this._initialContainer})}_updateActiveDropContainer({x:ke,y:pe},{x:qe,y:ge}){let Ze=this._initialContainer._getSiblingContainerFromPosition(this,ke,pe);!Ze&&this._dropContainer!==this._initialContainer&&this._initialContainer._isOverContainer(ke,pe)&&(Ze=this._initialContainer),Ze&&Ze!==this._dropContainer&&this._ngZone.run(()=>{this.exited.next({item:this,container:this._dropContainer}),this._dropContainer.exit(this),this._dropContainer=Ze,this._dropContainer.enter(this,ke,pe,Ze===this._initialContainer&&Ze.sortingDisabled?this._initialIndex:void 0),this.entered.next({item:this,container:Ze,currentIndex:Ze.getItemIndex(this)})}),this.isDragging()&&(this._dropContainer._startScrollingIfNecessary(qe,ge),this._dropContainer._sortItem(this,ke,pe,this._pointerDirectionDelta),this.constrainPosition?this._applyPreviewTransform(ke,pe):this._applyPreviewTransform(ke-this._pickupPositionInElement.x,pe-this._pickupPositionInElement.y))}_createPreviewElement(){const ke=this._previewTemplate,pe=this.previewClass,qe=ke?ke.template:null;let ge;if(qe&&ke){const Ze=ke.matchSize?this._initialClientRect:null,$e=ke.viewContainer.createEmbeddedView(qe,ke.context);$e.detectChanges(),ge=Me($e,this._document),this._previewRef=$e,ke.matchSize?Ye(ge,Ze):ge.style.transform=ie(this._pickupPositionOnPage.x,this._pickupPositionOnPage.y)}else ge=V(this._rootElement),Ye(ge,this._initialClientRect),this._initialTransform&&(ge.style.transform=this._initialTransform);return D(ge.style,{"pointer-events":"none",margin:"0",position:"fixed",top:"0",left:"0","z-index":`${this._config.zIndex||1e3}`},ce),_(ge,!1),ge.classList.add("cdk-drag-preview"),ge.setAttribute("dir",this._direction),pe&&(Array.isArray(pe)?pe.forEach(Ze=>ge.classList.add(Ze)):ge.classList.add(pe)),ge}_animatePreviewToPlaceholder(){if(!this._hasMoved)return Promise.resolve();const ke=this._placeholder.getBoundingClientRect();this._preview.classList.add("cdk-drag-animating"),this._applyPreviewTransform(ke.left,ke.top);const pe=function k(Qe){const ke=getComputedStyle(Qe),pe=R(ke,"transition-property"),qe=pe.find(Ue=>"transform"===Ue||"all"===Ue);if(!qe)return 0;const ge=pe.indexOf(qe),Ze=R(ke,"transition-duration"),$e=R(ke,"transition-delay");return A(Ze[ge])+A($e[ge])}(this._preview);return 0===pe?Promise.resolve():this._ngZone.runOutsideAngular(()=>new Promise(qe=>{const ge=$e=>{(!$e||(0,i.sA)($e)===this._preview&&"transform"===$e.propertyName)&&(this._preview?.removeEventListener("transitionend",ge),qe(),clearTimeout(Ze))},Ze=setTimeout(ge,1.5*pe);this._preview.addEventListener("transitionend",ge)}))}_createPlaceholderElement(){const ke=this._placeholderTemplate,pe=ke?ke.template:null;let qe;return pe?(this._placeholderRef=ke.viewContainer.createEmbeddedView(pe,ke.context),this._placeholderRef.detectChanges(),qe=Me(this._placeholderRef,this._document)):qe=V(this._rootElement),qe.style.pointerEvents="none",qe.classList.add("cdk-drag-placeholder"),qe}_getPointerPositionInElement(ke,pe,qe){const ge=pe===this._rootElement?null:pe,Ze=ge?ge.getBoundingClientRect():ke,$e=xe(qe)?qe.targetTouches[0]:qe,Ue=this._getViewportScrollPosition();return{x:Ze.left-ke.left+($e.pageX-Ze.left-Ue.left),y:Ze.top-ke.top+($e.pageY-Ze.top-Ue.top)}}_getPointerPositionOnPage(ke){const pe=this._getViewportScrollPosition(),qe=xe(ke)?ke.touches[0]||ke.changedTouches[0]||{pageX:0,pageY:0}:ke,ge=qe.pageX-pe.left,Ze=qe.pageY-pe.top;if(this._ownerSVGElement){const $e=this._ownerSVGElement.getScreenCTM();if($e){const Ue=this._ownerSVGElement.createSVGPoint();return Ue.x=ge,Ue.y=Ze,Ue.matrixTransform($e.inverse())}}return{x:ge,y:Ze}}_getConstrainedPointerPosition(ke){const pe=this._dropContainer?this._dropContainer.lockAxis:null;let{x:qe,y:ge}=this.constrainPosition?this.constrainPosition(ke,this,this._initialClientRect,this._pickupPositionInElement):ke;if("x"===this.lockAxis||"x"===pe?ge=this._pickupPositionOnPage.y-(this.constrainPosition?this._pickupPositionInElement.y:0):("y"===this.lockAxis||"y"===pe)&&(qe=this._pickupPositionOnPage.x-(this.constrainPosition?this._pickupPositionInElement.x:0)),this._boundaryRect){const{x:Ze,y:$e}=this.constrainPosition?{x:0,y:0}:this._pickupPositionInElement,Ue=this._boundaryRect,{width:wt,height:De}=this._getPreviewRect(),Pe=Ue.top+$e,Je=Ue.bottom-(De-$e);qe=ae(qe,Ue.left+Ze,Ue.right-(wt-Ze)),ge=ae(ge,Pe,Je)}return{x:qe,y:ge}}_updatePointerDirectionDelta(ke){const{x:pe,y:qe}=ke,ge=this._pointerDirectionDelta,Ze=this._pointerPositionAtLastDirectionChange,$e=Math.abs(pe-Ze.x),Ue=Math.abs(qe-Ze.y);return $e>this._config.pointerDirectionChangeThreshold&&(ge.x=pe>Ze.x?1:-1,Ze.x=pe),Ue>this._config.pointerDirectionChangeThreshold&&(ge.y=qe>Ze.y?1:-1,Ze.y=qe),ge}_toggleNativeDragInteractions(){if(!this._rootElement||!this._handles)return;const ke=this._handles.length>0||!this.isDragging();ke!==this._nativeInteractionsEnabled&&(this._nativeInteractionsEnabled=ke,_(this._rootElement,ke))}_removeRootElementListeners(ke){ke.removeEventListener("mousedown",this._pointerDown,be),ke.removeEventListener("touchstart",this._pointerDown,re),ke.removeEventListener("dragstart",this._nativeDragStart,be)}_applyRootElementTransform(ke,pe){const qe=ie(ke,pe),ge=this._rootElement.style;null==this._initialTransform&&(this._initialTransform=ge.transform&&"none"!=ge.transform?ge.transform:""),ge.transform=S(qe,this._initialTransform)}_applyPreviewTransform(ke,pe){const qe=this._previewTemplate?.template?void 0:this._initialTransform,ge=ie(ke,pe);this._preview.style.transform=S(ge,qe)}_getDragDistance(ke){const pe=this._pickupPositionOnPage;return pe?{x:ke.x-pe.x,y:ke.y-pe.y}:{x:0,y:0}}_cleanupCachedDimensions(){this._boundaryRect=this._previewRect=void 0,this._parentPositions.clear()}_containInsideBoundaryOnResize(){let{x:ke,y:pe}=this._passiveTransform;if(0===ke&&0===pe||this.isDragging()||!this._boundaryElement)return;const qe=this._rootElement.getBoundingClientRect(),ge=this._boundaryElement.getBoundingClientRect();if(0===ge.width&&0===ge.height||0===qe.width&&0===qe.height)return;const Ze=ge.left-qe.left,$e=qe.right-ge.right,Ue=ge.top-qe.top,wt=qe.bottom-ge.bottom;ge.width>qe.width?(Ze>0&&(ke+=Ze),$e>0&&(ke-=$e)):ke=0,ge.height>qe.height?(Ue>0&&(pe+=Ue),wt>0&&(pe-=wt)):pe=0,(ke!==this._passiveTransform.x||pe!==this._passiveTransform.y)&&this.setFreeDragPosition({y:pe,x:ke})}_getDragStartDelay(ke){const pe=this.dragStartDelay;return"number"==typeof pe?pe:xe(ke)?pe.touch:pe?pe.mouse:0}_updateOnScroll(ke){const pe=this._parentPositions.handleScroll(ke);if(pe){const qe=(0,i.sA)(ke);this._boundaryRect&&qe!==this._boundaryElement&&qe.contains(this._boundaryElement)&&ze(this._boundaryRect,pe.top,pe.left),this._pickupPositionOnPage.x+=pe.left,this._pickupPositionOnPage.y+=pe.top,this._dropContainer||(this._activeTransform.x-=pe.left,this._activeTransform.y-=pe.top,this._applyRootElementTransform(this._activeTransform.x,this._activeTransform.y))}}_getViewportScrollPosition(){return this._parentPositions.positions.get(this._document)?.scrollPosition||this._parentPositions.getViewportScrollPosition()}_getShadowRoot(){return void 0===this._cachedShadowRoot&&(this._cachedShadowRoot=(0,i.kV)(this._rootElement)),this._cachedShadowRoot}_getPreviewInsertionPoint(ke,pe){const qe=this._previewContainer||"global";if("parent"===qe)return ke;if("global"===qe){const ge=this._document;return pe||ge.fullscreenElement||ge.webkitFullscreenElement||ge.mozFullScreenElement||ge.msFullscreenElement||ge.body}return(0,l.fI)(qe)}_getPreviewRect(){return(!this._previewRect||!this._previewRect.width&&!this._previewRect.height)&&(this._previewRect=this._preview?this._preview.getBoundingClientRect():this._initialClientRect),this._previewRect}_getTargetHandle(ke){return this._handles.find(pe=>ke.target&&(ke.target===pe||pe.contains(ke.target)))}}function ie(Qe,ke){return`translate3d(${Math.round(Qe)}px, ${Math.round(ke)}px, 0)`}function ae(Qe,ke,pe){return Math.max(ke,Math.min(pe,Qe))}function xe(Qe){return"t"===Qe.type[0]}function Me(Qe,ke){const pe=Qe.rootNodes;if(1===pe.length&&pe[0].nodeType===ke.ELEMENT_NODE)return pe[0];const qe=ke.createElement("div");return pe.forEach(ge=>qe.appendChild(ge)),qe}function Ye(Qe,ke){Qe.style.width=`${ke.width}px`,Qe.style.height=`${ke.height}px`,Qe.style.transform=ie(ke.left,ke.top)}function Be(Qe,ke){return Math.max(0,Math.min(ke,Qe))}class Re{constructor(ke,pe){this._element=ke,this._dragDropRegistry=pe,this._itemPositions=[],this.orientation="vertical",this._previousSwap={drag:null,delta:0,overlaps:!1}}start(ke){this.withItems(ke)}sort(ke,pe,qe,ge){const Ze=this._itemPositions,$e=this._getItemIndexFromPointerPosition(ke,pe,qe,ge);if(-1===$e&&Ze.length>0)return null;const Ue="horizontal"===this.orientation,wt=Ze.findIndex(b=>b.drag===ke),De=Ze[$e],Je=De.clientRect,Ge=wt>$e?1:-1,Ke=this._getItemOffsetPx(Ze[wt].clientRect,Je,Ge),_e=this._getSiblingOffsetPx(wt,Ze,Ge),it=Ze.slice();return function q(Qe,ke,pe){const qe=Be(ke,Qe.length-1),ge=Be(pe,Qe.length-1);if(qe===ge)return;const Ze=Qe[qe],$e=ge{if(it[N]===b)return;const O=b.drag===ke,j=O?Ke:_e,L=O?ke.getPlaceholderElement():b.drag.getRootElement();b.offset+=j,Ue?(L.style.transform=S(`translate3d(${Math.round(b.offset)}px, 0, 0)`,b.initialTransform),ze(b.clientRect,0,j)):(L.style.transform=S(`translate3d(0, ${Math.round(b.offset)}px, 0)`,b.initialTransform),ze(b.clientRect,j,0))}),this._previousSwap.overlaps=W(Je,pe,qe),this._previousSwap.drag=De.drag,this._previousSwap.delta=Ue?ge.x:ge.y,{previousIndex:wt,currentIndex:$e}}enter(ke,pe,qe,ge){const Ze=null==ge||ge<0?this._getItemIndexFromPointerPosition(ke,pe,qe):ge,$e=this._activeDraggables,Ue=$e.indexOf(ke),wt=ke.getPlaceholderElement();let De=$e[Ze];if(De===ke&&(De=$e[Ze+1]),!De&&(null==Ze||-1===Ze||Ze<$e.length-1)&&this._shouldEnterAsFirstChild(pe,qe)&&(De=$e[0]),Ue>-1&&$e.splice(Ue,1),De&&!this._dragDropRegistry.isDragging(De)){const Pe=De.getRootElement();Pe.parentElement.insertBefore(wt,Pe),$e.splice(Ze,0,ke)}else(0,l.fI)(this._element).appendChild(wt),$e.push(ke);wt.style.transform="",this._cacheItemPositions()}withItems(ke){this._activeDraggables=ke.slice(),this._cacheItemPositions()}withSortPredicate(ke){this._sortPredicate=ke}reset(){this._activeDraggables.forEach(ke=>{const pe=ke.getRootElement();if(pe){const qe=this._itemPositions.find(ge=>ge.drag===ke)?.initialTransform;pe.style.transform=qe||""}}),this._itemPositions=[],this._activeDraggables=[],this._previousSwap.drag=null,this._previousSwap.delta=0,this._previousSwap.overlaps=!1}getActiveItemsSnapshot(){return this._activeDraggables}getItemIndex(ke){return("horizontal"===this.orientation&&"rtl"===this.direction?this._itemPositions.slice().reverse():this._itemPositions).findIndex(qe=>qe.drag===ke)}updateOnScroll(ke,pe){this._itemPositions.forEach(({clientRect:qe})=>{ze(qe,ke,pe)}),this._itemPositions.forEach(({drag:qe})=>{this._dragDropRegistry.isDragging(qe)&&qe._sortFromLastPointerPosition()})}_cacheItemPositions(){const ke="horizontal"===this.orientation;this._itemPositions=this._activeDraggables.map(pe=>{const qe=pe.getVisibleElement();return{drag:pe,offset:0,initialTransform:qe.style.transform||"",clientRect:$(qe)}}).sort((pe,qe)=>ke?pe.clientRect.left-qe.clientRect.left:pe.clientRect.top-qe.clientRect.top)}_getItemOffsetPx(ke,pe,qe){const ge="horizontal"===this.orientation;let Ze=ge?pe.left-ke.left:pe.top-ke.top;return-1===qe&&(Ze+=ge?pe.width-ke.width:pe.height-ke.height),Ze}_getSiblingOffsetPx(ke,pe,qe){const ge="horizontal"===this.orientation,Ze=pe[ke].clientRect,$e=pe[ke+-1*qe];let Ue=Ze[ge?"width":"height"]*qe;if($e){const wt=ge?"left":"top",De=ge?"right":"bottom";-1===qe?Ue-=$e.clientRect[wt]-Ze[De]:Ue+=Ze[wt]-$e.clientRect[De]}return Ue}_shouldEnterAsFirstChild(ke,pe){if(!this._activeDraggables.length)return!1;const qe=this._itemPositions,ge="horizontal"===this.orientation;if(qe[0].drag!==this._activeDraggables[0]){const $e=qe[qe.length-1].clientRect;return ge?ke>=$e.right:pe>=$e.bottom}{const $e=qe[0].clientRect;return ge?ke<=$e.left:pe<=$e.top}}_getItemIndexFromPointerPosition(ke,pe,qe,ge){const Ze="horizontal"===this.orientation,$e=this._itemPositions.findIndex(({drag:Ue,clientRect:wt})=>Ue!==ke&&((!ge||Ue!==this._previousSwap.drag||!this._previousSwap.overlaps||(Ze?ge.x:ge.y)!==this._previousSwap.delta)&&(Ze?pe>=Math.floor(wt.left)&&pe=Math.floor(wt.top)&&qe!0,this.sortPredicate=()=>!0,this.beforeStarted=new E.x,this.entered=new E.x,this.exited=new E.x,this.dropped=new E.x,this.sorted=new E.x,this.receivingStarted=new E.x,this.receivingStopped=new E.x,this._isDragging=!1,this._draggables=[],this._siblings=[],this._activeSiblings=new Set,this._viewportScrollSubscription=u.w0.EMPTY,this._verticalScrollDirection=0,this._horizontalScrollDirection=0,this._stopScrollTimers=new E.x,this._cachedShadowRoot=null,this._startScrollInterval=()=>{this._stopScrolling(),(0,z.F)(0,M.Z).pipe((0,g.R)(this._stopScrollTimers)).subscribe(()=>{const $e=this._scrollNode,Ue=this.autoScrollStep;1===this._verticalScrollDirection?$e.scrollBy(0,-Ue):2===this._verticalScrollDirection&&$e.scrollBy(0,Ue),1===this._horizontalScrollDirection?$e.scrollBy(-Ue,0):2===this._horizontalScrollDirection&&$e.scrollBy(Ue,0)})},this.element=(0,l.fI)(ke),this._document=qe,this.withScrollableParents([this.element]),pe.registerDropContainer(this),this._parentPositions=new G(qe),this._sortStrategy=new Re(this.element,pe),this._sortStrategy.withSortPredicate(($e,Ue)=>this.sortPredicate($e,Ue,this))}dispose(){this._stopScrolling(),this._stopScrollTimers.complete(),this._viewportScrollSubscription.unsubscribe(),this.beforeStarted.complete(),this.entered.complete(),this.exited.complete(),this.dropped.complete(),this.sorted.complete(),this.receivingStarted.complete(),this.receivingStopped.complete(),this._activeSiblings.clear(),this._scrollNode=null,this._parentPositions.clear(),this._dragDropRegistry.removeDropContainer(this)}isDragging(){return this._isDragging}start(){this._draggingStarted(),this._notifyReceivingSiblings()}enter(ke,pe,qe,ge){this._draggingStarted(),null==ge&&this.sortingDisabled&&(ge=this._draggables.indexOf(ke)),this._sortStrategy.enter(ke,pe,qe,ge),this._cacheParentPositions(),this._notifyReceivingSiblings(),this.entered.next({item:ke,container:this,currentIndex:this.getItemIndex(ke)})}exit(ke){this._reset(),this.exited.next({item:ke,container:this})}drop(ke,pe,qe,ge,Ze,$e,Ue,wt={}){this._reset(),this.dropped.next({item:ke,currentIndex:pe,previousIndex:qe,container:this,previousContainer:ge,isPointerOverContainer:Ze,distance:$e,dropPoint:Ue,event:wt})}withItems(ke){const pe=this._draggables;return this._draggables=ke,ke.forEach(qe=>qe._withDropContainer(this)),this.isDragging()&&(pe.filter(ge=>ge.isDragging()).every(ge=>-1===ke.indexOf(ge))?this._reset():this._sortStrategy.withItems(this._draggables)),this}withDirection(ke){return this._sortStrategy.direction=ke,this}connectedTo(ke){return this._siblings=ke.slice(),this}withOrientation(ke){return this._sortStrategy.orientation=ke,this}withScrollableParents(ke){const pe=(0,l.fI)(this.element);return this._scrollableElements=-1===ke.indexOf(pe)?[pe,...ke]:ke.slice(),this}getScrollableParents(){return this._scrollableElements}getItemIndex(ke){return this._isDragging?this._sortStrategy.getItemIndex(ke):this._draggables.indexOf(ke)}isReceiving(){return this._activeSiblings.size>0}_sortItem(ke,pe,qe,ge){if(this.sortingDisabled||!this._clientRect||!Y(this._clientRect,.05,pe,qe))return;const Ze=this._sortStrategy.sort(ke,pe,qe,ge);Ze&&this.sorted.next({previousIndex:Ze.previousIndex,currentIndex:Ze.currentIndex,container:this,item:ke})}_startScrollingIfNecessary(ke,pe){if(this.autoScrollDisabled)return;let qe,ge=0,Ze=0;if(this._parentPositions.positions.forEach(($e,Ue)=>{Ue===this._document||!$e.clientRect||qe||Y($e.clientRect,.05,ke,pe)&&([ge,Ze]=function mt(Qe,ke,pe,qe){const ge=je(ke,qe),Ze=ot(ke,pe);let $e=0,Ue=0;if(ge){const wt=Qe.scrollTop;1===ge?wt>0&&($e=1):Qe.scrollHeight-wt>Qe.clientHeight&&($e=2)}if(Ze){const wt=Qe.scrollLeft;1===Ze?wt>0&&(Ue=1):Qe.scrollWidth-wt>Qe.clientWidth&&(Ue=2)}return[$e,Ue]}(Ue,$e.clientRect,ke,pe),(ge||Ze)&&(qe=Ue))}),!ge&&!Ze){const{width:$e,height:Ue}=this._viewportRuler.getViewportSize(),wt={width:$e,height:Ue,top:0,right:$e,bottom:Ue,left:0};ge=je(wt,pe),Ze=ot(wt,ke),qe=window}qe&&(ge!==this._verticalScrollDirection||Ze!==this._horizontalScrollDirection||qe!==this._scrollNode)&&(this._verticalScrollDirection=ge,this._horizontalScrollDirection=Ze,this._scrollNode=qe,(ge||Ze)&&qe?this._ngZone.runOutsideAngular(this._startScrollInterval):this._stopScrolling())}_stopScrolling(){this._stopScrollTimers.next()}_draggingStarted(){const ke=(0,l.fI)(this.element).style;this.beforeStarted.next(),this._isDragging=!0,this._initialScrollSnap=ke.msScrollSnapType||ke.scrollSnapType||"",ke.scrollSnapType=ke.msScrollSnapType="none",this._sortStrategy.start(this._draggables),this._cacheParentPositions(),this._viewportScrollSubscription.unsubscribe(),this._listenToScrollEvents()}_cacheParentPositions(){const ke=(0,l.fI)(this.element);this._parentPositions.cache(this._scrollableElements),this._clientRect=this._parentPositions.positions.get(ke).clientRect}_reset(){this._isDragging=!1;const ke=(0,l.fI)(this.element).style;ke.scrollSnapType=ke.msScrollSnapType=this._initialScrollSnap,this._siblings.forEach(pe=>pe._stopReceiving(this)),this._sortStrategy.reset(),this._stopScrolling(),this._viewportScrollSubscription.unsubscribe(),this._parentPositions.clear()}_isOverContainer(ke,pe){return null!=this._clientRect&&W(this._clientRect,ke,pe)}_getSiblingContainerFromPosition(ke,pe,qe){return this._siblings.find(ge=>ge._canReceive(ke,pe,qe))}_canReceive(ke,pe,qe){if(!this._clientRect||!W(this._clientRect,pe,qe)||!this.enterPredicate(ke,this))return!1;const ge=this._getShadowRoot().elementFromPoint(pe,qe);if(!ge)return!1;const Ze=(0,l.fI)(this.element);return ge===Ze||Ze.contains(ge)}_startReceiving(ke,pe){const qe=this._activeSiblings;!qe.has(ke)&&pe.every(ge=>this.enterPredicate(ge,this)||this._draggables.indexOf(ge)>-1)&&(qe.add(ke),this._cacheParentPositions(),this._listenToScrollEvents(),this.receivingStarted.next({initiator:ke,receiver:this,items:pe}))}_stopReceiving(ke){this._activeSiblings.delete(ke),this._viewportScrollSubscription.unsubscribe(),this.receivingStopped.next({initiator:ke,receiver:this})}_listenToScrollEvents(){this._viewportScrollSubscription=this._dragDropRegistry.scrolled(this._getShadowRoot()).subscribe(ke=>{if(this.isDragging()){const pe=this._parentPositions.handleScroll(ke);pe&&this._sortStrategy.updateOnScroll(pe.top,pe.left)}else this.isReceiving()&&this._cacheParentPositions()})}_getShadowRoot(){if(!this._cachedShadowRoot){const ke=(0,i.kV)((0,l.fI)(this.element));this._cachedShadowRoot=ke||this._document}return this._cachedShadowRoot}_notifyReceivingSiblings(){const ke=this._sortStrategy.getActiveItemsSnapshot().filter(pe=>pe.isDragging());this._siblings.forEach(pe=>pe._startReceiving(this,ke))}}function je(Qe,ke){const{top:pe,bottom:qe,height:ge}=Qe,Ze=.05*ge;return ke>=pe-Ze&&ke<=pe+Ze?1:ke>=qe-Ze&&ke<=qe+Ze?2:0}function ot(Qe,ke){const{left:pe,right:qe,width:ge}=Qe,Ze=.05*ge;return ke>=pe-Ze&&ke<=pe+Ze?1:ke>=qe-Ze&&ke<=qe+Ze?2:0}const we=(0,i.i$)({passive:!1,capture:!0});let de=(()=>{class Qe{constructor(pe,qe){this._ngZone=pe,this._dropInstances=new Set,this._dragInstances=new Set,this._activeDragInstances=[],this._globalListeners=new Map,this._draggingPredicate=ge=>ge.isDragging(),this.pointerMove=new E.x,this.pointerUp=new E.x,this.scroll=new E.x,this._preventDefaultWhileDragging=ge=>{this._activeDragInstances.length>0&&ge.preventDefault()},this._persistentTouchmoveListener=ge=>{this._activeDragInstances.length>0&&(this._activeDragInstances.some(this._draggingPredicate)&&ge.preventDefault(),this.pointerMove.next(ge))},this._document=qe}registerDropContainer(pe){this._dropInstances.has(pe)||this._dropInstances.add(pe)}registerDragItem(pe){this._dragInstances.add(pe),1===this._dragInstances.size&&this._ngZone.runOutsideAngular(()=>{this._document.addEventListener("touchmove",this._persistentTouchmoveListener,we)})}removeDropContainer(pe){this._dropInstances.delete(pe)}removeDragItem(pe){this._dragInstances.delete(pe),this.stopDragging(pe),0===this._dragInstances.size&&this._document.removeEventListener("touchmove",this._persistentTouchmoveListener,we)}startDragging(pe,qe){if(!(this._activeDragInstances.indexOf(pe)>-1)&&(this._activeDragInstances.push(pe),1===this._activeDragInstances.length)){const ge=qe.type.startsWith("touch");this._globalListeners.set(ge?"touchend":"mouseup",{handler:Ze=>this.pointerUp.next(Ze),options:!0}).set("scroll",{handler:Ze=>this.scroll.next(Ze),options:!0}).set("selectstart",{handler:this._preventDefaultWhileDragging,options:we}),ge||this._globalListeners.set("mousemove",{handler:Ze=>this.pointerMove.next(Ze),options:we}),this._ngZone.runOutsideAngular(()=>{this._globalListeners.forEach((Ze,$e)=>{this._document.addEventListener($e,Ze.handler,Ze.options)})})}}stopDragging(pe){const qe=this._activeDragInstances.indexOf(pe);qe>-1&&(this._activeDragInstances.splice(qe,1),0===this._activeDragInstances.length&&this._clearGlobalListeners())}isDragging(pe){return this._activeDragInstances.indexOf(pe)>-1}scrolled(pe){const qe=[this.scroll];return pe&&pe!==this._document&&qe.push(new h.y(ge=>this._ngZone.runOutsideAngular(()=>{const $e=Ue=>{this._activeDragInstances.length&&ge.next(Ue)};return pe.addEventListener("scroll",$e,!0),()=>{pe.removeEventListener("scroll",$e,!0)}}))),(0,v.T)(...qe)}ngOnDestroy(){this._dragInstances.forEach(pe=>this.removeDragItem(pe)),this._dropInstances.forEach(pe=>this.removeDropContainer(pe)),this._clearGlobalListeners(),this.pointerMove.complete(),this.pointerUp.complete()}_clearGlobalListeners(){this._globalListeners.forEach((pe,qe)=>{this._document.removeEventListener(qe,pe.handler,pe.options)}),this._globalListeners.clear()}static#e=this.\u0275fac=function(qe){return new(qe||Qe)(e.LFG(e.R0b),e.LFG(n.K0))};static#t=this.\u0275prov=e.Yz7({token:Qe,factory:Qe.\u0275fac,providedIn:"root"})}return Qe})();const U={dragStartThreshold:5,pointerDirectionChangeThreshold:5};let B=(()=>{class Qe{constructor(pe,qe,ge,Ze){this._document=pe,this._ngZone=qe,this._viewportRuler=ge,this._dragDropRegistry=Ze}createDrag(pe,qe=U){return new Q(pe,qe,this._document,this._ngZone,this._viewportRuler,this._dragDropRegistry)}createDropList(pe){return new Mt(pe,this._dragDropRegistry,this._document,this._ngZone,this._viewportRuler)}static#e=this.\u0275fac=function(qe){return new(qe||Qe)(e.LFG(n.K0),e.LFG(e.R0b),e.LFG(t.rL),e.LFG(de))};static#t=this.\u0275prov=e.Yz7({token:Qe,factory:Qe.\u0275fac,providedIn:"root"})}return Qe})();const Ee=new e.OlP("CDK_DRAG_PARENT"),Ne=new e.OlP("CdkDragHandle");let pt=(()=>{class Qe{get disabled(){return this._disabled}set disabled(pe){this._disabled=(0,l.Ig)(pe),this._stateChanges.next(this)}constructor(pe,qe){this.element=pe,this._stateChanges=new E.x,this._disabled=!1,this._parentDrag=qe}ngOnDestroy(){this._stateChanges.complete()}static#e=this.\u0275fac=function(qe){return new(qe||Qe)(e.Y36(e.SBq),e.Y36(Ee,12))};static#t=this.\u0275dir=e.lG2({type:Qe,selectors:[["","cdkDragHandle",""]],hostAttrs:[1,"cdk-drag-handle"],inputs:{disabled:["cdkDragHandleDisabled","disabled"]},standalone:!0,features:[e._Bn([{provide:Ne,useExisting:Qe}])]})}return Qe})();const Dt=new e.OlP("CdkDragPlaceholder"),Ut=new e.OlP("CdkDragPreview"),en=new e.OlP("CDK_DRAG_CONFIG"),Wt=new e.OlP("CdkDropList");let Vt=(()=>{class Qe{static#e=this._dragInstances=[];get disabled(){return this._disabled||this.dropContainer&&this.dropContainer.disabled}set disabled(pe){this._disabled=(0,l.Ig)(pe),this._dragRef.disabled=this._disabled}constructor(pe,qe,ge,Ze,$e,Ue,wt,De,Pe,Je,Ge){this.element=pe,this.dropContainer=qe,this._ngZone=Ze,this._viewContainerRef=$e,this._dir=wt,this._changeDetectorRef=Pe,this._selfHandle=Je,this._parentDrag=Ge,this._destroyed=new E.x,this.started=new e.vpe,this.released=new e.vpe,this.ended=new e.vpe,this.entered=new e.vpe,this.exited=new e.vpe,this.dropped=new e.vpe,this.moved=new h.y(Ke=>{const _e=this._dragRef.moved.pipe((0,d.U)(it=>({source:this,pointerPosition:it.pointerPosition,event:it.event,delta:it.delta,distance:it.distance}))).subscribe(Ke);return()=>{_e.unsubscribe()}}),this._dragRef=De.createDrag(pe,{dragStartThreshold:Ue&&null!=Ue.dragStartThreshold?Ue.dragStartThreshold:5,pointerDirectionChangeThreshold:Ue&&null!=Ue.pointerDirectionChangeThreshold?Ue.pointerDirectionChangeThreshold:5,zIndex:Ue?.zIndex}),this._dragRef.data=this,Qe._dragInstances.push(this),Ue&&this._assignDefaults(Ue),qe&&(this._dragRef._withDropContainer(qe._dropListRef),qe.addItem(this)),this._syncInputs(this._dragRef),this._handleEvents(this._dragRef)}getPlaceholderElement(){return this._dragRef.getPlaceholderElement()}getRootElement(){return this._dragRef.getRootElement()}reset(){this._dragRef.reset()}getFreeDragPosition(){return this._dragRef.getFreeDragPosition()}setFreeDragPosition(pe){this._dragRef.setFreeDragPosition(pe)}ngAfterViewInit(){this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.pipe((0,p.q)(1),(0,g.R)(this._destroyed)).subscribe(()=>{this._updateRootElement(),this._setupHandlesListener(),this.freeDragPosition&&this._dragRef.setFreeDragPosition(this.freeDragPosition)})})}ngOnChanges(pe){const qe=pe.rootElementSelector,ge=pe.freeDragPosition;qe&&!qe.firstChange&&this._updateRootElement(),ge&&!ge.firstChange&&this.freeDragPosition&&this._dragRef.setFreeDragPosition(this.freeDragPosition)}ngOnDestroy(){this.dropContainer&&this.dropContainer.removeItem(this);const pe=Qe._dragInstances.indexOf(this);pe>-1&&Qe._dragInstances.splice(pe,1),this._ngZone.runOutsideAngular(()=>{this._destroyed.next(),this._destroyed.complete(),this._dragRef.dispose()})}_updateRootElement(){const pe=this.element.nativeElement;let qe=pe;this.rootElementSelector&&(qe=void 0!==pe.closest?pe.closest(this.rootElementSelector):pe.parentElement?.closest(this.rootElementSelector)),this._dragRef.withRootElement(qe||pe)}_getBoundaryElement(){const pe=this.boundaryElement;return pe?"string"==typeof pe?this.element.nativeElement.closest(pe):(0,l.fI)(pe):null}_syncInputs(pe){pe.beforeStarted.subscribe(()=>{if(!pe.isDragging()){const qe=this._dir,ge=this.dragStartDelay,Ze=this._placeholderTemplate?{template:this._placeholderTemplate.templateRef,context:this._placeholderTemplate.data,viewContainer:this._viewContainerRef}:null,$e=this._previewTemplate?{template:this._previewTemplate.templateRef,context:this._previewTemplate.data,matchSize:this._previewTemplate.matchSize,viewContainer:this._viewContainerRef}:null;pe.disabled=this.disabled,pe.lockAxis=this.lockAxis,pe.dragStartDelay="object"==typeof ge&&ge?ge:(0,l.su)(ge),pe.constrainPosition=this.constrainPosition,pe.previewClass=this.previewClass,pe.withBoundaryElement(this._getBoundaryElement()).withPlaceholderTemplate(Ze).withPreviewTemplate($e).withPreviewContainer(this.previewContainer||"global"),qe&&pe.withDirection(qe.value)}}),pe.beforeStarted.pipe((0,p.q)(1)).subscribe(()=>{if(this._parentDrag)return void pe.withParent(this._parentDrag._dragRef);let qe=this.element.nativeElement.parentElement;for(;qe;){if(qe.classList.contains("cdk-drag")){pe.withParent(Qe._dragInstances.find(ge=>ge.element.nativeElement===qe)?._dragRef||null);break}qe=qe.parentElement}})}_handleEvents(pe){pe.started.subscribe(qe=>{this.started.emit({source:this,event:qe.event}),this._changeDetectorRef.markForCheck()}),pe.released.subscribe(qe=>{this.released.emit({source:this,event:qe.event})}),pe.ended.subscribe(qe=>{this.ended.emit({source:this,distance:qe.distance,dropPoint:qe.dropPoint,event:qe.event}),this._changeDetectorRef.markForCheck()}),pe.entered.subscribe(qe=>{this.entered.emit({container:qe.container.data,item:this,currentIndex:qe.currentIndex})}),pe.exited.subscribe(qe=>{this.exited.emit({container:qe.container.data,item:this})}),pe.dropped.subscribe(qe=>{this.dropped.emit({previousIndex:qe.previousIndex,currentIndex:qe.currentIndex,previousContainer:qe.previousContainer.data,container:qe.container.data,isPointerOverContainer:qe.isPointerOverContainer,item:this,distance:qe.distance,dropPoint:qe.dropPoint,event:qe.event})})}_assignDefaults(pe){const{lockAxis:qe,dragStartDelay:ge,constrainPosition:Ze,previewClass:$e,boundaryElement:Ue,draggingDisabled:wt,rootElementSelector:De,previewContainer:Pe}=pe;this.disabled=wt??!1,this.dragStartDelay=ge||0,qe&&(this.lockAxis=qe),Ze&&(this.constrainPosition=Ze),$e&&(this.previewClass=$e),Ue&&(this.boundaryElement=Ue),De&&(this.rootElementSelector=De),Pe&&(this.previewContainer=Pe)}_setupHandlesListener(){this._handles.changes.pipe((0,f.O)(this._handles),(0,y.b)(pe=>{const qe=pe.filter(ge=>ge._parentDrag===this).map(ge=>ge.element);this._selfHandle&&this.rootElementSelector&&qe.push(this.element),this._dragRef.withHandles(qe)}),(0,T.w)(pe=>(0,v.T)(...pe.map(qe=>qe._stateChanges.pipe((0,f.O)(qe))))),(0,g.R)(this._destroyed)).subscribe(pe=>{const qe=this._dragRef,ge=pe.element.nativeElement;pe.disabled?qe.disableHandle(ge):qe.enableHandle(ge)})}static#t=this.\u0275fac=function(qe){return new(qe||Qe)(e.Y36(e.SBq),e.Y36(Wt,12),e.Y36(n.K0),e.Y36(e.R0b),e.Y36(e.s_b),e.Y36(en,8),e.Y36(x.Is,8),e.Y36(B),e.Y36(e.sBO),e.Y36(Ne,10),e.Y36(Ee,12))};static#n=this.\u0275dir=e.lG2({type:Qe,selectors:[["","cdkDrag",""]],contentQueries:function(qe,ge,Ze){if(1&qe&&(e.Suo(Ze,Ut,5),e.Suo(Ze,Dt,5),e.Suo(Ze,Ne,5)),2&qe){let $e;e.iGM($e=e.CRH())&&(ge._previewTemplate=$e.first),e.iGM($e=e.CRH())&&(ge._placeholderTemplate=$e.first),e.iGM($e=e.CRH())&&(ge._handles=$e)}},hostAttrs:[1,"cdk-drag"],hostVars:4,hostBindings:function(qe,ge){2&qe&&e.ekj("cdk-drag-disabled",ge.disabled)("cdk-drag-dragging",ge._dragRef.isDragging())},inputs:{data:["cdkDragData","data"],lockAxis:["cdkDragLockAxis","lockAxis"],rootElementSelector:["cdkDragRootElement","rootElementSelector"],boundaryElement:["cdkDragBoundary","boundaryElement"],dragStartDelay:["cdkDragStartDelay","dragStartDelay"],freeDragPosition:["cdkDragFreeDragPosition","freeDragPosition"],disabled:["cdkDragDisabled","disabled"],constrainPosition:["cdkDragConstrainPosition","constrainPosition"],previewClass:["cdkDragPreviewClass","previewClass"],previewContainer:["cdkDragPreviewContainer","previewContainer"]},outputs:{started:"cdkDragStarted",released:"cdkDragReleased",ended:"cdkDragEnded",entered:"cdkDragEntered",exited:"cdkDragExited",dropped:"cdkDragDropped",moved:"cdkDragMoved"},exportAs:["cdkDrag"],standalone:!0,features:[e._Bn([{provide:Ee,useExisting:Qe}]),e.TTD]})}return Qe})(),xt=(()=>{class Qe{static#e=this.\u0275fac=function(qe){return new(qe||Qe)};static#t=this.\u0275mod=e.oAB({type:Qe});static#n=this.\u0275inj=e.cJS({providers:[B],imports:[t.ZD]})}return Qe})()},36028:(nt,I,o)=>{"use strict";o.d(I,{A:()=>le,JH:()=>D,JU:()=>C,K5:()=>l,Ku:()=>g,LH:()=>T,L_:()=>v,MW:()=>pt,Mf:()=>t,SV:()=>x,Sd:()=>f,VM:()=>d,Vb:()=>fi,Z:()=>Ne,ZH:()=>n,aO:()=>te,b2:()=>hi,hY:()=>h,jx:()=>E,oh:()=>y,uR:()=>p,xE:()=>k,zL:()=>u});const n=8,t=9,l=13,C=16,E=17,u=18,h=27,v=32,g=33,d=34,p=35,f=36,y=37,T=38,x=39,D=40,k=48,te=57,le=65,Ne=90,pt=91,hi=224;function fi(zi,...Oi){return Oi.length?Oi.some(ei=>zi[ei]):zi.altKey||zi.shiftKey||zi.ctrlKey||zi.metaKey}},71088:(nt,I,o)=>{"use strict";o.d(I,{Yg:()=>D,vx:()=>y,xu:()=>d});var e=o(65879),n=o(42495),t=o(78645),i=o(52572),l=o(35211),C=o(65592),E=o(48180),u=o(836),z=o(83620),M=o(37398),h=o(27921),v=o(59773),g=o(62831);let d=(()=>{class S{static#e=this.\u0275fac=function(R){return new(R||S)};static#t=this.\u0275mod=e.oAB({type:S});static#n=this.\u0275inj=e.cJS({})}return S})();const p=new Set;let f,y=(()=>{class S{constructor(k,R){this._platform=k,this._nonce=R,this._matchMedia=this._platform.isBrowser&&window.matchMedia?window.matchMedia.bind(window):x}matchMedia(k){return(this._platform.WEBKIT||this._platform.BLINK)&&function T(S,A){if(!p.has(S))try{f||(f=document.createElement("style"),A&&(f.nonce=A),f.setAttribute("type","text/css"),document.head.appendChild(f)),f.sheet&&(f.sheet.insertRule(`@media ${S} {body{ }}`,0),p.add(S))}catch(k){console.error(k)}}(k,this._nonce),this._matchMedia(k)}static#e=this.\u0275fac=function(R){return new(R||S)(e.LFG(g.t4),e.LFG(e.Ojb,8))};static#t=this.\u0275prov=e.Yz7({token:S,factory:S.\u0275fac,providedIn:"root"})}return S})();function x(S){return{matches:"all"===S||""===S,media:S,addListener:()=>{},removeListener:()=>{}}}let D=(()=>{class S{constructor(k,R){this._mediaMatcher=k,this._zone=R,this._queries=new Map,this._destroySubject=new t.x}ngOnDestroy(){this._destroySubject.next(),this._destroySubject.complete()}isMatched(k){return _((0,n.Eq)(k)).some($=>this._registerQuery($).mql.matches)}observe(k){const $=_((0,n.Eq)(k)).map(ze=>this._registerQuery(ze).observable);let W=(0,i.a)($);return W=(0,l.z)(W.pipe((0,E.q)(1)),W.pipe((0,u.T)(1),(0,z.b)(0))),W.pipe((0,M.U)(ze=>{const Y={matches:!1,breakpoints:{}};return ze.forEach(({matches:G,query:V})=>{Y.matches=Y.matches||G,Y.breakpoints[V]=G}),Y}))}_registerQuery(k){if(this._queries.has(k))return this._queries.get(k);const R=this._mediaMatcher.matchMedia(k),W={observable:new C.y(ze=>{const Y=G=>this._zone.run(()=>ze.next(G));return R.addListener(Y),()=>{R.removeListener(Y)}}).pipe((0,h.O)(R),(0,M.U)(({matches:ze})=>({query:k,matches:ze})),(0,v.R)(this._destroySubject)),mql:R};return this._queries.set(k,W),W}static#e=this.\u0275fac=function(R){return new(R||S)(e.LFG(y),e.LFG(e.R0b))};static#t=this.\u0275prov=e.Yz7({token:S,factory:S.\u0275fac,providedIn:"root"})}return S})();function _(S){return S.map(A=>A.split(",")).reduce((A,k)=>A.concat(k)).map(A=>A.trim())}},17131:(nt,I,o)=>{"use strict";o.d(I,{Q8:()=>z,wD:()=>u});var e=o(42495),n=o(65879),t=o(65592),i=o(78645),l=o(83620);let C=(()=>{class M{create(v){return typeof MutationObserver>"u"?null:new MutationObserver(v)}static#e=this.\u0275fac=function(g){return new(g||M)};static#t=this.\u0275prov=n.Yz7({token:M,factory:M.\u0275fac,providedIn:"root"})}return M})(),E=(()=>{class M{constructor(v){this._mutationObserverFactory=v,this._observedElements=new Map}ngOnDestroy(){this._observedElements.forEach((v,g)=>this._cleanupObserver(g))}observe(v){const g=(0,e.fI)(v);return new t.y(d=>{const f=this._observeElement(g).subscribe(d);return()=>{f.unsubscribe(),this._unobserveElement(g)}})}_observeElement(v){if(this._observedElements.has(v))this._observedElements.get(v).count++;else{const g=new i.x,d=this._mutationObserverFactory.create(p=>g.next(p));d&&d.observe(v,{characterData:!0,childList:!0,subtree:!0}),this._observedElements.set(v,{observer:d,stream:g,count:1})}return this._observedElements.get(v).stream}_unobserveElement(v){this._observedElements.has(v)&&(this._observedElements.get(v).count--,this._observedElements.get(v).count||this._cleanupObserver(v))}_cleanupObserver(v){if(this._observedElements.has(v)){const{observer:g,stream:d}=this._observedElements.get(v);g&&g.disconnect(),d.complete(),this._observedElements.delete(v)}}static#e=this.\u0275fac=function(g){return new(g||M)(n.LFG(C))};static#t=this.\u0275prov=n.Yz7({token:M,factory:M.\u0275fac,providedIn:"root"})}return M})(),u=(()=>{class M{get disabled(){return this._disabled}set disabled(v){this._disabled=(0,e.Ig)(v),this._disabled?this._unsubscribe():this._subscribe()}get debounce(){return this._debounce}set debounce(v){this._debounce=(0,e.su)(v),this._subscribe()}constructor(v,g,d){this._contentObserver=v,this._elementRef=g,this._ngZone=d,this.event=new n.vpe,this._disabled=!1,this._currentSubscription=null}ngAfterContentInit(){!this._currentSubscription&&!this.disabled&&this._subscribe()}ngOnDestroy(){this._unsubscribe()}_subscribe(){this._unsubscribe();const v=this._contentObserver.observe(this._elementRef);this._ngZone.runOutsideAngular(()=>{this._currentSubscription=(this.debounce?v.pipe((0,l.b)(this.debounce)):v).subscribe(this.event)})}_unsubscribe(){this._currentSubscription?.unsubscribe()}static#e=this.\u0275fac=function(g){return new(g||M)(n.Y36(E),n.Y36(n.SBq),n.Y36(n.R0b))};static#t=this.\u0275dir=n.lG2({type:M,selectors:[["","cdkObserveContent",""]],inputs:{disabled:["cdkObserveContentDisabled","disabled"],debounce:"debounce"},outputs:{event:"cdkObserveContent"},exportAs:["cdkObserveContent"]})}return M})(),z=(()=>{class M{static#e=this.\u0275fac=function(g){return new(g||M)};static#t=this.\u0275mod=n.oAB({type:M});static#n=this.\u0275inj=n.cJS({providers:[C]})}return M})()},33651:(nt,I,o)=>{"use strict";o.d(I,{pI:()=>Mt,xu:()=>Ae,tR:()=>W,aV:()=>Be,X_:()=>$,Vs:()=>te,U8:()=>mt,Iu:()=>re});var e=o(205),n=o(96814),t=o(65879),i=o(42495),l=o(62831),C=o(32181),E=o(48180),u=o(59773),z=o(79360),M=o(8251),v=o(49388),g=o(68484),d=o(78645),p=o(47394),f=o(63019),y=o(36028);const T=(0,l.Mq)();class x{constructor(U,B){this._viewportRuler=U,this._previousHTMLStyles={top:"",left:""},this._isEnabled=!1,this._document=B}attach(){}enable(){if(this._canBeEnabled()){const U=this._document.documentElement;this._previousScrollPosition=this._viewportRuler.getViewportScrollPosition(),this._previousHTMLStyles.left=U.style.left||"",this._previousHTMLStyles.top=U.style.top||"",U.style.left=(0,i.HM)(-this._previousScrollPosition.left),U.style.top=(0,i.HM)(-this._previousScrollPosition.top),U.classList.add("cdk-global-scrollblock"),this._isEnabled=!0}}disable(){if(this._isEnabled){const U=this._document.documentElement,Ee=U.style,Ie=this._document.body.style,Ne=Ee.scrollBehavior||"",pt=Ie.scrollBehavior||"";this._isEnabled=!1,Ee.left=this._previousHTMLStyles.left,Ee.top=this._previousHTMLStyles.top,U.classList.remove("cdk-global-scrollblock"),T&&(Ee.scrollBehavior=Ie.scrollBehavior="auto"),window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),T&&(Ee.scrollBehavior=Ne,Ie.scrollBehavior=pt)}}_canBeEnabled(){if(this._document.documentElement.classList.contains("cdk-global-scrollblock")||this._isEnabled)return!1;const B=this._document.body,Ee=this._viewportRuler.getViewportSize();return B.scrollHeight>Ee.height||B.scrollWidth>Ee.width}}class _{constructor(U,B,Ee,Ie){this._scrollDispatcher=U,this._ngZone=B,this._viewportRuler=Ee,this._config=Ie,this._scrollSubscription=null,this._detach=()=>{this.disable(),this._overlayRef.hasAttached()&&this._ngZone.run(()=>this._overlayRef.detach())}}attach(U){this._overlayRef=U}enable(){if(this._scrollSubscription)return;const U=this._scrollDispatcher.scrolled(0).pipe((0,C.h)(B=>!B||!this._overlayRef.overlayElement.contains(B.getElementRef().nativeElement)));this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=U.subscribe(()=>{const B=this._viewportRuler.getViewportScrollPosition().top;Math.abs(B-this._initialScrollPosition)>this._config.threshold?this._detach():this._overlayRef.updatePosition()})):this._scrollSubscription=U.subscribe(this._detach)}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}class P{enable(){}disable(){}attach(){}}function S(de,U){return U.some(B=>de.bottomB.bottom||de.rightB.right)}function A(de,U){return U.some(B=>de.topB.bottom||de.leftB.right)}class k{constructor(U,B,Ee,Ie){this._scrollDispatcher=U,this._viewportRuler=B,this._ngZone=Ee,this._config=Ie,this._scrollSubscription=null}attach(U){this._overlayRef=U}enable(){this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(()=>{if(this._overlayRef.updatePosition(),this._config&&this._config.autoClose){const B=this._overlayRef.overlayElement.getBoundingClientRect(),{width:Ee,height:Ie}=this._viewportRuler.getViewportSize();S(B,[{width:Ee,height:Ie,bottom:Ie,right:Ee,top:0,left:0}])&&(this.disable(),this._ngZone.run(()=>this._overlayRef.detach()))}}))}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}let R=(()=>{class de{constructor(B,Ee,Ie,Ne){this._scrollDispatcher=B,this._viewportRuler=Ee,this._ngZone=Ie,this.noop=()=>new P,this.close=pt=>new _(this._scrollDispatcher,this._ngZone,this._viewportRuler,pt),this.block=()=>new x(this._viewportRuler,this._document),this.reposition=pt=>new k(this._scrollDispatcher,this._viewportRuler,this._ngZone,pt),this._document=Ne}static#e=this.\u0275fac=function(Ee){return new(Ee||de)(t.LFG(e.mF),t.LFG(e.rL),t.LFG(t.R0b),t.LFG(n.K0))};static#t=this.\u0275prov=t.Yz7({token:de,factory:de.\u0275fac,providedIn:"root"})}return de})();class ${constructor(U){if(this.scrollStrategy=new P,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,U){const B=Object.keys(U);for(const Ee of B)void 0!==U[Ee]&&(this[Ee]=U[Ee])}}}class W{constructor(U,B,Ee,Ie,Ne){this.offsetX=Ee,this.offsetY=Ie,this.panelClass=Ne,this.originX=U.originX,this.originY=U.originY,this.overlayX=B.overlayX,this.overlayY=B.overlayY}}class Y{constructor(U,B){this.connectionPair=U,this.scrollableViewProperties=B}}let K=(()=>{class de{constructor(B){this._attachedOverlays=[],this._document=B}ngOnDestroy(){this.detach()}add(B){this.remove(B),this._attachedOverlays.push(B)}remove(B){const Ee=this._attachedOverlays.indexOf(B);Ee>-1&&this._attachedOverlays.splice(Ee,1),0===this._attachedOverlays.length&&this.detach()}static#e=this.\u0275fac=function(Ee){return new(Ee||de)(t.LFG(n.K0))};static#t=this.\u0275prov=t.Yz7({token:de,factory:de.\u0275fac,providedIn:"root"})}return de})(),te=(()=>{class de extends K{constructor(B,Ee){super(B),this._ngZone=Ee,this._keydownListener=Ie=>{const Ne=this._attachedOverlays;for(let pt=Ne.length-1;pt>-1;pt--)if(Ne[pt]._keydownEvents.observers.length>0){const Dt=Ne[pt]._keydownEvents;this._ngZone?this._ngZone.run(()=>Dt.next(Ie)):Dt.next(Ie);break}}}add(B){super.add(B),this._isAttached||(this._ngZone?this._ngZone.runOutsideAngular(()=>this._document.body.addEventListener("keydown",this._keydownListener)):this._document.body.addEventListener("keydown",this._keydownListener),this._isAttached=!0)}detach(){this._isAttached&&(this._document.body.removeEventListener("keydown",this._keydownListener),this._isAttached=!1)}static#e=this.\u0275fac=function(Ee){return new(Ee||de)(t.LFG(n.K0),t.LFG(t.R0b,8))};static#t=this.\u0275prov=t.Yz7({token:de,factory:de.\u0275fac,providedIn:"root"})}return de})(),ne=(()=>{class de extends K{constructor(B,Ee,Ie){super(B),this._platform=Ee,this._ngZone=Ie,this._cursorStyleIsSet=!1,this._pointerDownListener=Ne=>{this._pointerDownEventTarget=(0,l.sA)(Ne)},this._clickListener=Ne=>{const pt=(0,l.sA)(Ne),Dt="click"===Ne.type&&this._pointerDownEventTarget?this._pointerDownEventTarget:pt;this._pointerDownEventTarget=null;const Lt=this._attachedOverlays.slice();for(let Ut=Lt.length-1;Ut>-1;Ut--){const qt=Lt[Ut];if(qt._outsidePointerEvents.observers.length<1||!qt.hasAttached())continue;if(qt.overlayElement.contains(pt)||qt.overlayElement.contains(Dt))break;const en=qt._outsidePointerEvents;this._ngZone?this._ngZone.run(()=>en.next(Ne)):en.next(Ne)}}}add(B){if(super.add(B),!this._isAttached){const Ee=this._document.body;this._ngZone?this._ngZone.runOutsideAngular(()=>this._addEventListeners(Ee)):this._addEventListeners(Ee),this._platform.IOS&&!this._cursorStyleIsSet&&(this._cursorOriginalValue=Ee.style.cursor,Ee.style.cursor="pointer",this._cursorStyleIsSet=!0),this._isAttached=!0}}detach(){if(this._isAttached){const B=this._document.body;B.removeEventListener("pointerdown",this._pointerDownListener,!0),B.removeEventListener("click",this._clickListener,!0),B.removeEventListener("auxclick",this._clickListener,!0),B.removeEventListener("contextmenu",this._clickListener,!0),this._platform.IOS&&this._cursorStyleIsSet&&(B.style.cursor=this._cursorOriginalValue,this._cursorStyleIsSet=!1),this._isAttached=!1}}_addEventListeners(B){B.addEventListener("pointerdown",this._pointerDownListener,!0),B.addEventListener("click",this._clickListener,!0),B.addEventListener("auxclick",this._clickListener,!0),B.addEventListener("contextmenu",this._clickListener,!0)}static#e=this.\u0275fac=function(Ee){return new(Ee||de)(t.LFG(n.K0),t.LFG(l.t4),t.LFG(t.R0b,8))};static#t=this.\u0275prov=t.Yz7({token:de,factory:de.\u0275fac,providedIn:"root"})}return de})(),fe=(()=>{class de{constructor(B,Ee){this._platform=Ee,this._document=B}ngOnDestroy(){this._containerElement?.remove()}getContainerElement(){return this._containerElement||this._createContainer(),this._containerElement}_createContainer(){const B="cdk-overlay-container";if(this._platform.isBrowser||(0,l.Oy)()){const Ie=this._document.querySelectorAll(`.${B}[platform="server"], .${B}[platform="test"]`);for(let Ne=0;Nethis._backdropClick.next(en),this._backdropTransitionendHandler=en=>{this._disposeBackdrop(en.target)},this._keydownEvents=new d.x,this._outsidePointerEvents=new d.x,Ie.scrollStrategy&&(this._scrollStrategy=Ie.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=Ie.positionStrategy}get overlayElement(){return this._pane}get backdropElement(){return this._backdropElement}get hostElement(){return this._host}attach(U){!this._host.parentElement&&this._previousHostParent&&this._previousHostParent.appendChild(this._host);const B=this._portalOutlet.attach(U);return this._positionStrategy&&this._positionStrategy.attach(this),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._ngZone.onStable.pipe((0,E.q)(1)).subscribe(()=>{this.hasAttached()&&this.updatePosition()}),this._togglePointerEvents(!0),this._config.hasBackdrop&&this._attachBackdrop(),this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!0),this._attachments.next(),this._keyboardDispatcher.add(this),this._config.disposeOnNavigation&&(this._locationChanges=this._location.subscribe(()=>this.dispose())),this._outsideClickDispatcher.add(this),"function"==typeof B?.onDestroy&&B.onDestroy(()=>{this.hasAttached()&&this._ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>this.detach()))}),B}detach(){if(!this.hasAttached())return;this.detachBackdrop(),this._togglePointerEvents(!1),this._positionStrategy&&this._positionStrategy.detach&&this._positionStrategy.detach(),this._scrollStrategy&&this._scrollStrategy.disable();const U=this._portalOutlet.detach();return this._detachments.next(),this._keyboardDispatcher.remove(this),this._detachContentWhenStable(),this._locationChanges.unsubscribe(),this._outsideClickDispatcher.remove(this),U}dispose(){const U=this.hasAttached();this._positionStrategy&&this._positionStrategy.dispose(),this._disposeScrollStrategy(),this._disposeBackdrop(this._backdropElement),this._locationChanges.unsubscribe(),this._keyboardDispatcher.remove(this),this._portalOutlet.dispose(),this._attachments.complete(),this._backdropClick.complete(),this._keydownEvents.complete(),this._outsidePointerEvents.complete(),this._outsideClickDispatcher.remove(this),this._host?.remove(),this._previousHostParent=this._pane=this._host=null,U&&this._detachments.next(),this._detachments.complete()}hasAttached(){return this._portalOutlet.hasAttached()}backdropClick(){return this._backdropClick}attachments(){return this._attachments}detachments(){return this._detachments}keydownEvents(){return this._keydownEvents}outsidePointerEvents(){return this._outsidePointerEvents}getConfig(){return this._config}updatePosition(){this._positionStrategy&&this._positionStrategy.apply()}updatePositionStrategy(U){U!==this._positionStrategy&&(this._positionStrategy&&this._positionStrategy.dispose(),this._positionStrategy=U,this.hasAttached()&&(U.attach(this),this.updatePosition()))}updateSize(U){this._config={...this._config,...U},this._updateElementSize()}setDirection(U){this._config={...this._config,direction:U},this._updateElementDirection()}addPanelClass(U){this._pane&&this._toggleClasses(this._pane,U,!0)}removePanelClass(U){this._pane&&this._toggleClasses(this._pane,U,!1)}getDirection(){const U=this._config.direction;return U?"string"==typeof U?U:U.value:"ltr"}updateScrollStrategy(U){U!==this._scrollStrategy&&(this._disposeScrollStrategy(),this._scrollStrategy=U,this.hasAttached()&&(U.attach(this),U.enable()))}_updateElementDirection(){this._host.setAttribute("dir",this.getDirection())}_updateElementSize(){if(!this._pane)return;const U=this._pane.style;U.width=(0,i.HM)(this._config.width),U.height=(0,i.HM)(this._config.height),U.minWidth=(0,i.HM)(this._config.minWidth),U.minHeight=(0,i.HM)(this._config.minHeight),U.maxWidth=(0,i.HM)(this._config.maxWidth),U.maxHeight=(0,i.HM)(this._config.maxHeight)}_togglePointerEvents(U){this._pane.style.pointerEvents=U?"":"none"}_attachBackdrop(){const U="cdk-overlay-backdrop-showing";this._backdropElement=this._document.createElement("div"),this._backdropElement.classList.add("cdk-overlay-backdrop"),this._animationsDisabled&&this._backdropElement.classList.add("cdk-overlay-backdrop-noop-animation"),this._config.backdropClass&&this._toggleClasses(this._backdropElement,this._config.backdropClass,!0),this._host.parentElement.insertBefore(this._backdropElement,this._host),this._backdropElement.addEventListener("click",this._backdropClickHandler),!this._animationsDisabled&&typeof requestAnimationFrame<"u"?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>{this._backdropElement&&this._backdropElement.classList.add(U)})}):this._backdropElement.classList.add(U)}_updateStackingOrder(){this._host.nextSibling&&this._host.parentNode.appendChild(this._host)}detachBackdrop(){const U=this._backdropElement;if(U){if(this._animationsDisabled)return void this._disposeBackdrop(U);U.classList.remove("cdk-overlay-backdrop-showing"),this._ngZone.runOutsideAngular(()=>{U.addEventListener("transitionend",this._backdropTransitionendHandler)}),U.style.pointerEvents="none",this._backdropTimeout=this._ngZone.runOutsideAngular(()=>setTimeout(()=>{this._disposeBackdrop(U)},500))}}_toggleClasses(U,B,Ee){const Ie=(0,i.Eq)(B||[]).filter(Ne=>!!Ne);Ie.length&&(Ee?U.classList.add(...Ie):U.classList.remove(...Ie))}_detachContentWhenStable(){this._ngZone.runOutsideAngular(()=>{const U=this._ngZone.onStable.pipe((0,u.R)((0,f.T)(this._attachments,this._detachments))).subscribe(()=>{(!this._pane||!this._host||0===this._pane.children.length)&&(this._pane&&this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!1),this._host&&this._host.parentElement&&(this._previousHostParent=this._host.parentElement,this._host.remove()),U.unsubscribe())})})}_disposeScrollStrategy(){const U=this._scrollStrategy;U&&(U.disable(),U.detach&&U.detach())}_disposeBackdrop(U){U&&(U.removeEventListener("click",this._backdropClickHandler),U.removeEventListener("transitionend",this._backdropTransitionendHandler),U.remove(),this._backdropElement===U&&(this._backdropElement=null)),this._backdropTimeout&&(clearTimeout(this._backdropTimeout),this._backdropTimeout=void 0)}}const be="cdk-overlay-connected-position-bounding-box",le=/([A-Za-z%]+)$/;class ce{get positions(){return this._preferredPositions}constructor(U,B,Ee,Ie,Ne){this._viewportRuler=B,this._document=Ee,this._platform=Ie,this._overlayContainer=Ne,this._lastBoundingBoxSize={width:0,height:0},this._isPushed=!1,this._canPush=!0,this._growAfterOpen=!1,this._hasFlexibleDimensions=!0,this._positionLocked=!1,this._viewportMargin=0,this._scrollables=[],this._preferredPositions=[],this._positionChanges=new d.x,this._resizeSubscription=p.w0.EMPTY,this._offsetX=0,this._offsetY=0,this._appliedPanelClasses=[],this.positionChanges=this._positionChanges,this.setOrigin(U)}attach(U){this._validatePositions(),U.hostElement.classList.add(be),this._overlayRef=U,this._boundingBox=U.hostElement,this._pane=U.overlayElement,this._isDisposed=!1,this._isInitialRender=!0,this._lastPosition=null,this._resizeSubscription.unsubscribe(),this._resizeSubscription=this._viewportRuler.change().subscribe(()=>{this._isInitialRender=!0,this.apply()})}apply(){if(this._isDisposed||!this._platform.isBrowser)return;if(!this._isInitialRender&&this._positionLocked&&this._lastPosition)return void this.reapplyLastPosition();this._clearPanelClasses(),this._resetOverlayElementStyles(),this._resetBoundingBoxStyles(),this._viewportRect=this._getNarrowedViewportRect(),this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._containerRect=this._overlayContainer.getContainerElement().getBoundingClientRect();const U=this._originRect,B=this._overlayRect,Ee=this._viewportRect,Ie=this._containerRect,Ne=[];let pt;for(let Dt of this._preferredPositions){let Lt=this._getOriginPoint(U,Ie,Dt),Ut=this._getOverlayPoint(Lt,B,Dt),qt=this._getOverlayFit(Ut,B,Ee,Dt);if(qt.isCompletelyWithinViewport)return this._isPushed=!1,void this._applyPosition(Dt,Lt);this._canFitWithFlexibleDimensions(qt,Ut,Ee)?Ne.push({position:Dt,origin:Lt,overlayRect:B,boundingBoxRect:this._calculateBoundingBoxRect(Lt,Dt)}):(!pt||pt.overlayFit.visibleAreaLt&&(Lt=qt,Dt=Ut)}return this._isPushed=!1,void this._applyPosition(Dt.position,Dt.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(pt.position,pt.originPoint);this._applyPosition(pt.position,pt.originPoint)}detach(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}dispose(){this._isDisposed||(this._boundingBox&&Q(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove(be),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}reapplyLastPosition(){if(this._isDisposed||!this._platform.isBrowser)return;const U=this._lastPosition;if(U){this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect(),this._containerRect=this._overlayContainer.getContainerElement().getBoundingClientRect();const B=this._getOriginPoint(this._originRect,this._containerRect,U);this._applyPosition(U,B)}else this.apply()}withScrollableContainers(U){return this._scrollables=U,this}withPositions(U){return this._preferredPositions=U,-1===U.indexOf(this._lastPosition)&&(this._lastPosition=null),this._validatePositions(),this}withViewportMargin(U){return this._viewportMargin=U,this}withFlexibleDimensions(U=!0){return this._hasFlexibleDimensions=U,this}withGrowAfterOpen(U=!0){return this._growAfterOpen=U,this}withPush(U=!0){return this._canPush=U,this}withLockedPosition(U=!0){return this._positionLocked=U,this}setOrigin(U){return this._origin=U,this}withDefaultOffsetX(U){return this._offsetX=U,this}withDefaultOffsetY(U){return this._offsetY=U,this}withTransformOriginOn(U){return this._transformOriginSelector=U,this}_getOriginPoint(U,B,Ee){let Ie,Ne;if("center"==Ee.originX)Ie=U.left+U.width/2;else{const pt=this._isRtl()?U.right:U.left,Dt=this._isRtl()?U.left:U.right;Ie="start"==Ee.originX?pt:Dt}return B.left<0&&(Ie-=B.left),Ne="center"==Ee.originY?U.top+U.height/2:"top"==Ee.originY?U.top:U.bottom,B.top<0&&(Ne-=B.top),{x:Ie,y:Ne}}_getOverlayPoint(U,B,Ee){let Ie,Ne;return Ie="center"==Ee.overlayX?-B.width/2:"start"===Ee.overlayX?this._isRtl()?-B.width:0:this._isRtl()?0:-B.width,Ne="center"==Ee.overlayY?-B.height/2:"top"==Ee.overlayY?0:-B.height,{x:U.x+Ie,y:U.y+Ne}}_getOverlayFit(U,B,Ee,Ie){const Ne=ae(B);let{x:pt,y:Dt}=U,Lt=this._getOffset(Ie,"x"),Ut=this._getOffset(Ie,"y");Lt&&(pt+=Lt),Ut&&(Dt+=Ut);let cn=0-Dt,Wt=Dt+Ne.height-Ee.height,Vt=this._subtractOverflows(Ne.width,0-pt,pt+Ne.width-Ee.width),st=this._subtractOverflows(Ne.height,cn,Wt),He=Vt*st;return{visibleArea:He,isCompletelyWithinViewport:Ne.width*Ne.height===He,fitsInViewportVertically:st===Ne.height,fitsInViewportHorizontally:Vt==Ne.width}}_canFitWithFlexibleDimensions(U,B,Ee){if(this._hasFlexibleDimensions){const Ie=Ee.bottom-B.y,Ne=Ee.right-B.x,pt=ie(this._overlayRef.getConfig().minHeight),Dt=ie(this._overlayRef.getConfig().minWidth);return(U.fitsInViewportVertically||null!=pt&&pt<=Ie)&&(U.fitsInViewportHorizontally||null!=Dt&&Dt<=Ne)}return!1}_pushOverlayOnScreen(U,B,Ee){if(this._previousPushAmount&&this._positionLocked)return{x:U.x+this._previousPushAmount.x,y:U.y+this._previousPushAmount.y};const Ie=ae(B),Ne=this._viewportRect,pt=Math.max(U.x+Ie.width-Ne.width,0),Dt=Math.max(U.y+Ie.height-Ne.height,0),Lt=Math.max(Ne.top-Ee.top-U.y,0),Ut=Math.max(Ne.left-Ee.left-U.x,0);let qt=0,en=0;return qt=Ie.width<=Ne.width?Ut||-pt:U.xVt&&!this._isInitialRender&&!this._growAfterOpen&&(pt=U.y-Vt/2)}if("end"===B.overlayX&&!Ie||"start"===B.overlayX&&Ie)cn=Ee.width-U.x+this._viewportMargin,qt=U.x-this._viewportMargin;else if("start"===B.overlayX&&!Ie||"end"===B.overlayX&&Ie)en=U.x,qt=Ee.right-U.x;else{const Wt=Math.min(Ee.right-U.x+Ee.left,U.x),Vt=this._lastBoundingBoxSize.width;qt=2*Wt,en=U.x-Wt,qt>Vt&&!this._isInitialRender&&!this._growAfterOpen&&(en=U.x-Vt/2)}return{top:pt,left:en,bottom:Dt,right:cn,width:qt,height:Ne}}_setBoundingBoxStyles(U,B){const Ee=this._calculateBoundingBoxRect(U,B);!this._isInitialRender&&!this._growAfterOpen&&(Ee.height=Math.min(Ee.height,this._lastBoundingBoxSize.height),Ee.width=Math.min(Ee.width,this._lastBoundingBoxSize.width));const Ie={};if(this._hasExactPosition())Ie.top=Ie.left="0",Ie.bottom=Ie.right=Ie.maxHeight=Ie.maxWidth="",Ie.width=Ie.height="100%";else{const Ne=this._overlayRef.getConfig().maxHeight,pt=this._overlayRef.getConfig().maxWidth;Ie.height=(0,i.HM)(Ee.height),Ie.top=(0,i.HM)(Ee.top),Ie.bottom=(0,i.HM)(Ee.bottom),Ie.width=(0,i.HM)(Ee.width),Ie.left=(0,i.HM)(Ee.left),Ie.right=(0,i.HM)(Ee.right),Ie.alignItems="center"===B.overlayX?"center":"end"===B.overlayX?"flex-end":"flex-start",Ie.justifyContent="center"===B.overlayY?"center":"bottom"===B.overlayY?"flex-end":"flex-start",Ne&&(Ie.maxHeight=(0,i.HM)(Ne)),pt&&(Ie.maxWidth=(0,i.HM)(pt))}this._lastBoundingBoxSize=Ee,Q(this._boundingBox.style,Ie)}_resetBoundingBoxStyles(){Q(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}_resetOverlayElementStyles(){Q(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}_setOverlayElementStyles(U,B){const Ee={},Ie=this._hasExactPosition(),Ne=this._hasFlexibleDimensions,pt=this._overlayRef.getConfig();if(Ie){const qt=this._viewportRuler.getViewportScrollPosition();Q(Ee,this._getExactOverlayY(B,U,qt)),Q(Ee,this._getExactOverlayX(B,U,qt))}else Ee.position="static";let Dt="",Lt=this._getOffset(B,"x"),Ut=this._getOffset(B,"y");Lt&&(Dt+=`translateX(${Lt}px) `),Ut&&(Dt+=`translateY(${Ut}px)`),Ee.transform=Dt.trim(),pt.maxHeight&&(Ie?Ee.maxHeight=(0,i.HM)(pt.maxHeight):Ne&&(Ee.maxHeight="")),pt.maxWidth&&(Ie?Ee.maxWidth=(0,i.HM)(pt.maxWidth):Ne&&(Ee.maxWidth="")),Q(this._pane.style,Ee)}_getExactOverlayY(U,B,Ee){let Ie={top:"",bottom:""},Ne=this._getOverlayPoint(B,this._overlayRect,U);return this._isPushed&&(Ne=this._pushOverlayOnScreen(Ne,this._overlayRect,Ee)),"bottom"===U.overlayY?Ie.bottom=this._document.documentElement.clientHeight-(Ne.y+this._overlayRect.height)+"px":Ie.top=(0,i.HM)(Ne.y),Ie}_getExactOverlayX(U,B,Ee){let pt,Ie={left:"",right:""},Ne=this._getOverlayPoint(B,this._overlayRect,U);return this._isPushed&&(Ne=this._pushOverlayOnScreen(Ne,this._overlayRect,Ee)),pt=this._isRtl()?"end"===U.overlayX?"left":"right":"end"===U.overlayX?"right":"left","right"===pt?Ie.right=this._document.documentElement.clientWidth-(Ne.x+this._overlayRect.width)+"px":Ie.left=(0,i.HM)(Ne.x),Ie}_getScrollVisibility(){const U=this._getOriginRect(),B=this._pane.getBoundingClientRect(),Ee=this._scrollables.map(Ie=>Ie.getElementRef().nativeElement.getBoundingClientRect());return{isOriginClipped:A(U,Ee),isOriginOutsideView:S(U,Ee),isOverlayClipped:A(B,Ee),isOverlayOutsideView:S(B,Ee)}}_subtractOverflows(U,...B){return B.reduce((Ee,Ie)=>Ee-Math.max(Ie,0),U)}_getNarrowedViewportRect(){const U=this._document.documentElement.clientWidth,B=this._document.documentElement.clientHeight,Ee=this._viewportRuler.getViewportScrollPosition();return{top:Ee.top+this._viewportMargin,left:Ee.left+this._viewportMargin,right:Ee.left+U-this._viewportMargin,bottom:Ee.top+B-this._viewportMargin,width:U-2*this._viewportMargin,height:B-2*this._viewportMargin}}_isRtl(){return"rtl"===this._overlayRef.getDirection()}_hasExactPosition(){return!this._hasFlexibleDimensions||this._isPushed}_getOffset(U,B){return"x"===B?null==U.offsetX?this._offsetX:U.offsetX:null==U.offsetY?this._offsetY:U.offsetY}_validatePositions(){}_addPanelClasses(U){this._pane&&(0,i.Eq)(U).forEach(B=>{""!==B&&-1===this._appliedPanelClasses.indexOf(B)&&(this._appliedPanelClasses.push(B),this._pane.classList.add(B))})}_clearPanelClasses(){this._pane&&(this._appliedPanelClasses.forEach(U=>{this._pane.classList.remove(U)}),this._appliedPanelClasses=[])}_getOriginRect(){const U=this._origin;if(U instanceof t.SBq)return U.nativeElement.getBoundingClientRect();if(U instanceof Element)return U.getBoundingClientRect();const B=U.width||0,Ee=U.height||0;return{top:U.y,bottom:U.y+Ee,left:U.x,right:U.x+B,height:Ee,width:B}}}function Q(de,U){for(let B in U)U.hasOwnProperty(B)&&(de[B]=U[B]);return de}function ie(de){if("number"!=typeof de&&null!=de){const[U,B]=de.split(le);return B&&"px"!==B?null:parseFloat(U)}return de||null}function ae(de){return{top:Math.floor(de.top),right:Math.floor(de.right),bottom:Math.floor(de.bottom),left:Math.floor(de.left),width:Math.floor(de.width),height:Math.floor(de.height)}}const Ye="cdk-global-overlay-wrapper";class q{constructor(){this._cssPosition="static",this._topOffset="",this._bottomOffset="",this._alignItems="",this._xPosition="",this._xOffset="",this._width="",this._height="",this._isDisposed=!1}attach(U){const B=U.getConfig();this._overlayRef=U,this._width&&!B.width&&U.updateSize({width:this._width}),this._height&&!B.height&&U.updateSize({height:this._height}),U.hostElement.classList.add(Ye),this._isDisposed=!1}top(U=""){return this._bottomOffset="",this._topOffset=U,this._alignItems="flex-start",this}left(U=""){return this._xOffset=U,this._xPosition="left",this}bottom(U=""){return this._topOffset="",this._bottomOffset=U,this._alignItems="flex-end",this}right(U=""){return this._xOffset=U,this._xPosition="right",this}start(U=""){return this._xOffset=U,this._xPosition="start",this}end(U=""){return this._xOffset=U,this._xPosition="end",this}width(U=""){return this._overlayRef?this._overlayRef.updateSize({width:U}):this._width=U,this}height(U=""){return this._overlayRef?this._overlayRef.updateSize({height:U}):this._height=U,this}centerHorizontally(U=""){return this.left(U),this._xPosition="center",this}centerVertically(U=""){return this.top(U),this._alignItems="center",this}apply(){if(!this._overlayRef||!this._overlayRef.hasAttached())return;const U=this._overlayRef.overlayElement.style,B=this._overlayRef.hostElement.style,Ee=this._overlayRef.getConfig(),{width:Ie,height:Ne,maxWidth:pt,maxHeight:Dt}=Ee,Lt=!("100%"!==Ie&&"100vw"!==Ie||pt&&"100%"!==pt&&"100vw"!==pt),Ut=!("100%"!==Ne&&"100vh"!==Ne||Dt&&"100%"!==Dt&&"100vh"!==Dt),qt=this._xPosition,en=this._xOffset,cn="rtl"===this._overlayRef.getConfig().direction;let Wt="",Vt="",st="";Lt?st="flex-start":"center"===qt?(st="center",cn?Vt=en:Wt=en):cn?"left"===qt||"end"===qt?(st="flex-end",Wt=en):("right"===qt||"start"===qt)&&(st="flex-start",Vt=en):"left"===qt||"start"===qt?(st="flex-start",Wt=en):("right"===qt||"end"===qt)&&(st="flex-end",Vt=en),U.position=this._cssPosition,U.marginLeft=Lt?"0":Wt,U.marginTop=Ut?"0":this._topOffset,U.marginBottom=this._bottomOffset,U.marginRight=Lt?"0":Vt,B.justifyContent=st,B.alignItems=Ut?"flex-start":this._alignItems}dispose(){if(this._isDisposed||!this._overlayRef)return;const U=this._overlayRef.overlayElement.style,B=this._overlayRef.hostElement,Ee=B.style;B.classList.remove(Ye),Ee.justifyContent=Ee.alignItems=U.marginTop=U.marginBottom=U.marginLeft=U.marginRight=U.position="",this._overlayRef=null,this._isDisposed=!0}}let ve=(()=>{class de{constructor(B,Ee,Ie,Ne){this._viewportRuler=B,this._document=Ee,this._platform=Ie,this._overlayContainer=Ne}global(){return new q}flexibleConnectedTo(B){return new ce(B,this._viewportRuler,this._document,this._platform,this._overlayContainer)}static#e=this.\u0275fac=function(Ee){return new(Ee||de)(t.LFG(e.rL),t.LFG(n.K0),t.LFG(l.t4),t.LFG(fe))};static#t=this.\u0275prov=t.Yz7({token:de,factory:de.\u0275fac,providedIn:"root"})}return de})(),ee=0,Be=(()=>{class de{constructor(B,Ee,Ie,Ne,pt,Dt,Lt,Ut,qt,en,cn,Wt){this.scrollStrategies=B,this._overlayContainer=Ee,this._componentFactoryResolver=Ie,this._positionBuilder=Ne,this._keyboardDispatcher=pt,this._injector=Dt,this._ngZone=Lt,this._document=Ut,this._directionality=qt,this._location=en,this._outsideClickDispatcher=cn,this._animationsModuleType=Wt}create(B){const Ee=this._createHostElement(),Ie=this._createPaneElement(Ee),Ne=this._createPortalOutlet(Ie),pt=new $(B);return pt.direction=pt.direction||this._directionality.value,new re(Ne,Ee,Ie,pt,this._ngZone,this._keyboardDispatcher,this._document,this._location,this._outsideClickDispatcher,"NoopAnimations"===this._animationsModuleType)}position(){return this._positionBuilder}_createPaneElement(B){const Ee=this._document.createElement("div");return Ee.id="cdk-overlay-"+ee++,Ee.classList.add("cdk-overlay-pane"),B.appendChild(Ee),Ee}_createHostElement(){const B=this._document.createElement("div");return this._overlayContainer.getContainerElement().appendChild(B),B}_createPortalOutlet(B){return this._appRef||(this._appRef=this._injector.get(t.z2F)),new g.u0(B,this._componentFactoryResolver,this._appRef,this._injector,this._document)}static#e=this.\u0275fac=function(Ee){return new(Ee||de)(t.LFG(R),t.LFG(fe),t.LFG(t._Vd),t.LFG(ve),t.LFG(te),t.LFG(t.zs3),t.LFG(t.R0b),t.LFG(n.K0),t.LFG(v.Is),t.LFG(n.Ye),t.LFG(ne),t.LFG(t.QbO,8))};static#t=this.\u0275prov=t.Yz7({token:de,factory:de.\u0275fac,providedIn:"root"})}return de})();const Re=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],ct=new t.OlP("cdk-connected-overlay-scroll-strategy");let Ae=(()=>{class de{constructor(B){this.elementRef=B}static#e=this.\u0275fac=function(Ee){return new(Ee||de)(t.Y36(t.SBq))};static#t=this.\u0275dir=t.lG2({type:de,selectors:[["","cdk-overlay-origin",""],["","overlay-origin",""],["","cdkOverlayOrigin",""]],exportAs:["cdkOverlayOrigin"],standalone:!0})}return de})(),Mt=(()=>{class de{get offsetX(){return this._offsetX}set offsetX(B){this._offsetX=B,this._position&&this._updatePositionStrategy(this._position)}get offsetY(){return this._offsetY}set offsetY(B){this._offsetY=B,this._position&&this._updatePositionStrategy(this._position)}get hasBackdrop(){return this._hasBackdrop}set hasBackdrop(B){this._hasBackdrop=(0,i.Ig)(B)}get lockPosition(){return this._lockPosition}set lockPosition(B){this._lockPosition=(0,i.Ig)(B)}get flexibleDimensions(){return this._flexibleDimensions}set flexibleDimensions(B){this._flexibleDimensions=(0,i.Ig)(B)}get growAfterOpen(){return this._growAfterOpen}set growAfterOpen(B){this._growAfterOpen=(0,i.Ig)(B)}get push(){return this._push}set push(B){this._push=(0,i.Ig)(B)}constructor(B,Ee,Ie,Ne,pt){this._overlay=B,this._dir=pt,this._hasBackdrop=!1,this._lockPosition=!1,this._growAfterOpen=!1,this._flexibleDimensions=!1,this._push=!1,this._backdropSubscription=p.w0.EMPTY,this._attachSubscription=p.w0.EMPTY,this._detachSubscription=p.w0.EMPTY,this._positionSubscription=p.w0.EMPTY,this.viewportMargin=0,this.open=!1,this.disableClose=!1,this.backdropClick=new t.vpe,this.positionChange=new t.vpe,this.attach=new t.vpe,this.detach=new t.vpe,this.overlayKeydown=new t.vpe,this.overlayOutsideClick=new t.vpe,this._templatePortal=new g.UE(Ee,Ie),this._scrollStrategyFactory=Ne,this.scrollStrategy=this._scrollStrategyFactory()}get overlayRef(){return this._overlayRef}get dir(){return this._dir?this._dir.value:"ltr"}ngOnDestroy(){this._attachSubscription.unsubscribe(),this._detachSubscription.unsubscribe(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this._overlayRef&&this._overlayRef.dispose()}ngOnChanges(B){this._position&&(this._updatePositionStrategy(this._position),this._overlayRef.updateSize({width:this.width,minWidth:this.minWidth,height:this.height,minHeight:this.minHeight}),B.origin&&this.open&&this._position.apply()),B.open&&(this.open?this._attachOverlay():this._detachOverlay())}_createOverlay(){(!this.positions||!this.positions.length)&&(this.positions=Re);const B=this._overlayRef=this._overlay.create(this._buildConfig());this._attachSubscription=B.attachments().subscribe(()=>this.attach.emit()),this._detachSubscription=B.detachments().subscribe(()=>this.detach.emit()),B.keydownEvents().subscribe(Ee=>{this.overlayKeydown.next(Ee),Ee.keyCode===y.hY&&!this.disableClose&&!(0,y.Vb)(Ee)&&(Ee.preventDefault(),this._detachOverlay())}),this._overlayRef.outsidePointerEvents().subscribe(Ee=>{this.overlayOutsideClick.next(Ee)})}_buildConfig(){const B=this._position=this.positionStrategy||this._createPositionStrategy(),Ee=new $({direction:this._dir,positionStrategy:B,scrollStrategy:this.scrollStrategy,hasBackdrop:this.hasBackdrop});return(this.width||0===this.width)&&(Ee.width=this.width),(this.height||0===this.height)&&(Ee.height=this.height),(this.minWidth||0===this.minWidth)&&(Ee.minWidth=this.minWidth),(this.minHeight||0===this.minHeight)&&(Ee.minHeight=this.minHeight),this.backdropClass&&(Ee.backdropClass=this.backdropClass),this.panelClass&&(Ee.panelClass=this.panelClass),Ee}_updatePositionStrategy(B){const Ee=this.positions.map(Ie=>({originX:Ie.originX,originY:Ie.originY,overlayX:Ie.overlayX,overlayY:Ie.overlayY,offsetX:Ie.offsetX||this.offsetX,offsetY:Ie.offsetY||this.offsetY,panelClass:Ie.panelClass||void 0}));return B.setOrigin(this._getFlexibleConnectedPositionStrategyOrigin()).withPositions(Ee).withFlexibleDimensions(this.flexibleDimensions).withPush(this.push).withGrowAfterOpen(this.growAfterOpen).withViewportMargin(this.viewportMargin).withLockedPosition(this.lockPosition).withTransformOriginOn(this.transformOriginSelector)}_createPositionStrategy(){const B=this._overlay.position().flexibleConnectedTo(this._getFlexibleConnectedPositionStrategyOrigin());return this._updatePositionStrategy(B),B}_getFlexibleConnectedPositionStrategyOrigin(){return this.origin instanceof Ae?this.origin.elementRef:this.origin}_attachOverlay(){this._overlayRef?this._overlayRef.getConfig().hasBackdrop=this.hasBackdrop:this._createOverlay(),this._overlayRef.hasAttached()||this._overlayRef.attach(this._templatePortal),this.hasBackdrop?this._backdropSubscription=this._overlayRef.backdropClick().subscribe(B=>{this.backdropClick.emit(B)}):this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this.positionChange.observers.length>0&&(this._positionSubscription=this._position.positionChanges.pipe(function h(de,U=!1){return(0,z.e)((B,Ee)=>{let Ie=0;B.subscribe((0,M.x)(Ee,Ne=>{const pt=de(Ne,Ie++);(pt||U)&&Ee.next(Ne),!pt&&Ee.complete()}))})}(()=>this.positionChange.observers.length>0)).subscribe(B=>{this.positionChange.emit(B),0===this.positionChange.observers.length&&this._positionSubscription.unsubscribe()}))}_detachOverlay(){this._overlayRef&&this._overlayRef.detach(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe()}static#e=this.\u0275fac=function(Ee){return new(Ee||de)(t.Y36(Be),t.Y36(t.Rgc),t.Y36(t.s_b),t.Y36(ct),t.Y36(v.Is,8))};static#t=this.\u0275dir=t.lG2({type:de,selectors:[["","cdk-connected-overlay",""],["","connected-overlay",""],["","cdkConnectedOverlay",""]],inputs:{origin:["cdkConnectedOverlayOrigin","origin"],positions:["cdkConnectedOverlayPositions","positions"],positionStrategy:["cdkConnectedOverlayPositionStrategy","positionStrategy"],offsetX:["cdkConnectedOverlayOffsetX","offsetX"],offsetY:["cdkConnectedOverlayOffsetY","offsetY"],width:["cdkConnectedOverlayWidth","width"],height:["cdkConnectedOverlayHeight","height"],minWidth:["cdkConnectedOverlayMinWidth","minWidth"],minHeight:["cdkConnectedOverlayMinHeight","minHeight"],backdropClass:["cdkConnectedOverlayBackdropClass","backdropClass"],panelClass:["cdkConnectedOverlayPanelClass","panelClass"],viewportMargin:["cdkConnectedOverlayViewportMargin","viewportMargin"],scrollStrategy:["cdkConnectedOverlayScrollStrategy","scrollStrategy"],open:["cdkConnectedOverlayOpen","open"],disableClose:["cdkConnectedOverlayDisableClose","disableClose"],transformOriginSelector:["cdkConnectedOverlayTransformOriginOn","transformOriginSelector"],hasBackdrop:["cdkConnectedOverlayHasBackdrop","hasBackdrop"],lockPosition:["cdkConnectedOverlayLockPosition","lockPosition"],flexibleDimensions:["cdkConnectedOverlayFlexibleDimensions","flexibleDimensions"],growAfterOpen:["cdkConnectedOverlayGrowAfterOpen","growAfterOpen"],push:["cdkConnectedOverlayPush","push"]},outputs:{backdropClick:"backdropClick",positionChange:"positionChange",attach:"attach",detach:"detach",overlayKeydown:"overlayKeydown",overlayOutsideClick:"overlayOutsideClick"},exportAs:["cdkConnectedOverlay"],standalone:!0,features:[t.TTD]})}return de})();const ot={provide:ct,deps:[Be],useFactory:function je(de){return()=>de.scrollStrategies.reposition()}};let mt=(()=>{class de{static#e=this.\u0275fac=function(Ee){return new(Ee||de)};static#t=this.\u0275mod=t.oAB({type:de});static#n=this.\u0275inj=t.cJS({providers:[Be,ot],imports:[v.vT,g.eL,e.Cl,e.Cl]})}return de})()},62831:(nt,I,o)=>{"use strict";o.d(I,{Mq:()=>d,Oy:()=>_,_i:()=>p,ht:()=>x,i$:()=>h,kV:()=>T,sA:()=>D,t4:()=>i,ud:()=>l});var e=o(65879),n=o(96814);let t;try{t=typeof Intl<"u"&&Intl.v8BreakIterator}catch{t=!1}let z,v,g,f,i=(()=>{class P{constructor(A){this._platformId=A,this.isBrowser=this._platformId?(0,n.NF)(this._platformId):"object"==typeof document&&!!document,this.EDGE=this.isBrowser&&/(edge)/i.test(navigator.userAgent),this.TRIDENT=this.isBrowser&&/(msie|trident)/i.test(navigator.userAgent),this.BLINK=this.isBrowser&&!(!window.chrome&&!t)&&typeof CSS<"u"&&!this.EDGE&&!this.TRIDENT,this.WEBKIT=this.isBrowser&&/AppleWebKit/i.test(navigator.userAgent)&&!this.BLINK&&!this.EDGE&&!this.TRIDENT,this.IOS=this.isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!("MSStream"in window),this.FIREFOX=this.isBrowser&&/(firefox|minefield)/i.test(navigator.userAgent),this.ANDROID=this.isBrowser&&/android/i.test(navigator.userAgent)&&!this.TRIDENT,this.SAFARI=this.isBrowser&&/safari/i.test(navigator.userAgent)&&this.WEBKIT}static#e=this.\u0275fac=function(k){return new(k||P)(e.LFG(e.Lbi))};static#t=this.\u0275prov=e.Yz7({token:P,factory:P.\u0275fac,providedIn:"root"})}return P})(),l=(()=>{class P{static#e=this.\u0275fac=function(k){return new(k||P)};static#t=this.\u0275mod=e.oAB({type:P});static#n=this.\u0275inj=e.cJS({})}return P})();function h(P){return function M(){if(null==z&&typeof window<"u")try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:()=>z=!0}))}finally{z=z||!1}return z}()?P:!!P.capture}function d(){if(null==g){if("object"!=typeof document||!document||"function"!=typeof Element||!Element)return g=!1,g;if("scrollBehavior"in document.documentElement.style)g=!0;else{const P=Element.prototype.scrollTo;g=!!P&&!/\{\s*\[native code\]\s*\}/.test(P.toString())}}return g}function p(){if("object"!=typeof document||!document)return 0;if(null==v){const P=document.createElement("div"),S=P.style;P.dir="rtl",S.width="1px",S.overflow="auto",S.visibility="hidden",S.pointerEvents="none",S.position="absolute";const A=document.createElement("div"),k=A.style;k.width="2px",k.height="1px",P.appendChild(A),document.body.appendChild(P),v=0,0===P.scrollLeft&&(P.scrollLeft=1,v=0===P.scrollLeft?1:2),P.remove()}return v}function T(P){if(function y(){if(null==f){const P=typeof document<"u"?document.head:null;f=!(!P||!P.createShadowRoot&&!P.attachShadow)}return f}()){const S=P.getRootNode?P.getRootNode():null;if(typeof ShadowRoot<"u"&&ShadowRoot&&S instanceof ShadowRoot)return S}return null}function x(){let P=typeof document<"u"&&document?document.activeElement:null;for(;P&&P.shadowRoot;){const S=P.shadowRoot.activeElement;if(S===P)break;P=S}return P}function D(P){return P.composedPath?P.composedPath()[0]:P.target}function _(){return typeof __karma__<"u"&&!!__karma__||typeof jasmine<"u"&&!!jasmine||typeof jest<"u"&&!!jest||typeof Mocha<"u"&&!!Mocha}},68484:(nt,I,o)=>{"use strict";o.d(I,{C5:()=>M,Pl:()=>x,UE:()=>h,eL:()=>_,en:()=>g,u0:()=>p});var e=o(65879),n=o(96814);class z{attach(A){return this._attachedHost=A,A.attach(this)}detach(){let A=this._attachedHost;null!=A&&(this._attachedHost=null,A.detach())}get isAttached(){return null!=this._attachedHost}setAttachedHost(A){this._attachedHost=A}}class M extends z{constructor(A,k,R,$,W){super(),this.component=A,this.viewContainerRef=k,this.injector=R,this.componentFactoryResolver=$,this.projectableNodes=W}}class h extends z{constructor(A,k,R,$){super(),this.templateRef=A,this.viewContainerRef=k,this.context=R,this.injector=$}get origin(){return this.templateRef.elementRef}attach(A,k=this.context){return this.context=k,super.attach(A)}detach(){return this.context=void 0,super.detach()}}class v extends z{constructor(A){super(),this.element=A instanceof e.SBq?A.nativeElement:A}}class g{constructor(){this._isDisposed=!1,this.attachDomPortal=null}hasAttached(){return!!this._attachedPortal}attach(A){return A instanceof M?(this._attachedPortal=A,this.attachComponentPortal(A)):A instanceof h?(this._attachedPortal=A,this.attachTemplatePortal(A)):this.attachDomPortal&&A instanceof v?(this._attachedPortal=A,this.attachDomPortal(A)):void 0}detach(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}dispose(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}setDisposeFn(A){this._disposeFn=A}_invokeDisposeFn(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}}class p extends g{constructor(A,k,R,$,W){super(),this.outletElement=A,this._componentFactoryResolver=k,this._appRef=R,this._defaultInjector=$,this.attachDomPortal=ze=>{const Y=ze.element,G=this._document.createComment("dom-portal");Y.parentNode.insertBefore(G,Y),this.outletElement.appendChild(Y),this._attachedPortal=ze,super.setDisposeFn(()=>{G.parentNode&&G.parentNode.replaceChild(Y,G)})},this._document=W}attachComponentPortal(A){const R=(A.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(A.component);let $;return A.viewContainerRef?($=A.viewContainerRef.createComponent(R,A.viewContainerRef.length,A.injector||A.viewContainerRef.injector,A.projectableNodes||void 0),this.setDisposeFn(()=>$.destroy())):($=R.create(A.injector||this._defaultInjector||e.zs3.NULL),this._appRef.attachView($.hostView),this.setDisposeFn(()=>{this._appRef.viewCount>0&&this._appRef.detachView($.hostView),$.destroy()})),this.outletElement.appendChild(this._getComponentRootNode($)),this._attachedPortal=A,$}attachTemplatePortal(A){let k=A.viewContainerRef,R=k.createEmbeddedView(A.templateRef,A.context,{injector:A.injector});return R.rootNodes.forEach($=>this.outletElement.appendChild($)),R.detectChanges(),this.setDisposeFn(()=>{let $=k.indexOf(R);-1!==$&&k.remove($)}),this._attachedPortal=A,R}dispose(){super.dispose(),this.outletElement.remove()}_getComponentRootNode(A){return A.hostView.rootNodes[0]}}let x=(()=>{class S extends g{constructor(k,R,$){super(),this._componentFactoryResolver=k,this._viewContainerRef=R,this._isInitialized=!1,this.attached=new e.vpe,this.attachDomPortal=W=>{const ze=W.element,Y=this._document.createComment("dom-portal");W.setAttachedHost(this),ze.parentNode.insertBefore(Y,ze),this._getRootNode().appendChild(ze),this._attachedPortal=W,super.setDisposeFn(()=>{Y.parentNode&&Y.parentNode.replaceChild(ze,Y)})},this._document=$}get portal(){return this._attachedPortal}set portal(k){this.hasAttached()&&!k&&!this._isInitialized||(this.hasAttached()&&super.detach(),k&&super.attach(k),this._attachedPortal=k||null)}get attachedRef(){return this._attachedRef}ngOnInit(){this._isInitialized=!0}ngOnDestroy(){super.dispose(),this._attachedRef=this._attachedPortal=null}attachComponentPortal(k){k.setAttachedHost(this);const R=null!=k.viewContainerRef?k.viewContainerRef:this._viewContainerRef,W=(k.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(k.component),ze=R.createComponent(W,R.length,k.injector||R.injector,k.projectableNodes||void 0);return R!==this._viewContainerRef&&this._getRootNode().appendChild(ze.hostView.rootNodes[0]),super.setDisposeFn(()=>ze.destroy()),this._attachedPortal=k,this._attachedRef=ze,this.attached.emit(ze),ze}attachTemplatePortal(k){k.setAttachedHost(this);const R=this._viewContainerRef.createEmbeddedView(k.templateRef,k.context,{injector:k.injector});return super.setDisposeFn(()=>this._viewContainerRef.clear()),this._attachedPortal=k,this._attachedRef=R,this.attached.emit(R),R}_getRootNode(){const k=this._viewContainerRef.element.nativeElement;return k.nodeType===k.ELEMENT_NODE?k:k.parentNode}static#e=this.\u0275fac=function(R){return new(R||S)(e.Y36(e._Vd),e.Y36(e.s_b),e.Y36(n.K0))};static#t=this.\u0275dir=e.lG2({type:S,selectors:[["","cdkPortalOutlet",""]],inputs:{portal:["cdkPortalOutlet","portal"]},outputs:{attached:"attached"},exportAs:["cdkPortalOutlet"],features:[e.qOj]})}return S})(),_=(()=>{class S{static#e=this.\u0275fac=function(R){return new(R||S)};static#t=this.\u0275mod=e.oAB({type:S});static#n=this.\u0275inj=e.cJS({})}return S})()},205:(nt,I,o)=>{"use strict";o.d(I,{xd:()=>Q,ZD:()=>ot,x0:()=>Ae,N7:()=>Re,mF:()=>ae,Cl:()=>mt,rL:()=>Ye});var e=o(42495),n=o(65879),t=o(78645),i=o(22096),l=o(65592),C=o(92438),E=o(80927),u=o(76410),z=o(47394),M=o(2664),h=o(93997),v=o(29028),g=o(32181),d=o(59773),p=o(27921),f=o(79360),y=o(8251),x=o(94664),D=o(97328),_=o(63020),S=o(62831),A=o(96814),k=o(49388),R=o(93168);class ${}class ze extends ${constructor(de){super(),this._data=de}connect(){return(0,M.b)(this._data)?this._data:(0,i.of)(this._data)}disconnect(){}}class G{constructor(){this.viewCacheSize=20,this._viewCache=[]}applyChanges(de,U,B,Ee,Ie){de.forEachOperation((Ne,pt,Dt)=>{let Lt,Ut;null==Ne.previousIndex?(Lt=this._insertView(()=>B(Ne,pt,Dt),Dt,U,Ee(Ne)),Ut=Lt?1:0):null==Dt?(this._detachAndCacheView(pt,U),Ut=3):(Lt=this._moveView(pt,Dt,U,Ee(Ne)),Ut=2),Ie&&Ie({context:Lt?.context,operation:Ut,record:Ne})})}detach(){for(const de of this._viewCache)de.destroy();this._viewCache=[]}_insertView(de,U,B,Ee){const Ie=this._insertViewFromCache(U,B);if(Ie)return void(Ie.context.$implicit=Ee);const Ne=de();return B.createEmbeddedView(Ne.templateRef,Ne.context,Ne.index)}_detachAndCacheView(de,U){const B=U.detach(de);this._maybeCacheView(B,U)}_moveView(de,U,B,Ee){const Ie=B.get(de);return B.move(Ie,U),Ie.context.$implicit=Ee,Ie}_maybeCacheView(de,U){if(this._viewCache.length0?Ie/this._itemSize:0;if(U.end>Ee){const Dt=Math.ceil(B/this._itemSize),Lt=Math.max(0,Math.min(Ne,Ee-Dt));Ne!=Lt&&(Ne=Lt,Ie=Lt*this._itemSize,U.start=Math.floor(Ne)),U.end=Math.max(0,Math.min(Ee,U.start+Dt))}const pt=Ie-U.start*this._itemSize;if(pt0&&(U.end=Math.min(Ee,U.end+Lt),U.start=Math.max(0,Math.floor(Ne-this._minBufferPx/this._itemSize)))}}this._viewport.setRenderedRange(U),this._viewport.setRenderedContentOffset(this._itemSize*U.start),this._scrolledIndexChange.next(Math.floor(Ne))}}function ce(we){return we._scrollStrategy}let Q=(()=>{class we{constructor(){this._itemSize=20,this._minBufferPx=100,this._maxBufferPx=200,this._scrollStrategy=new le(this.itemSize,this.minBufferPx,this.maxBufferPx)}get itemSize(){return this._itemSize}set itemSize(U){this._itemSize=(0,e.su)(U)}get minBufferPx(){return this._minBufferPx}set minBufferPx(U){this._minBufferPx=(0,e.su)(U)}get maxBufferPx(){return this._maxBufferPx}set maxBufferPx(U){this._maxBufferPx=(0,e.su)(U)}ngOnChanges(){this._scrollStrategy.updateItemAndBufferSize(this.itemSize,this.minBufferPx,this.maxBufferPx)}static#e=this.\u0275fac=function(B){return new(B||we)};static#t=this.\u0275dir=n.lG2({type:we,selectors:[["cdk-virtual-scroll-viewport","itemSize",""]],inputs:{itemSize:"itemSize",minBufferPx:"minBufferPx",maxBufferPx:"maxBufferPx"},standalone:!0,features:[n._Bn([{provide:be,useFactory:ce,deps:[(0,n.Gpc)(()=>we)]}]),n.TTD]})}return we})(),ae=(()=>{class we{constructor(U,B,Ee){this._ngZone=U,this._platform=B,this._scrolled=new t.x,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map,this._document=Ee}register(U){this.scrollContainers.has(U)||this.scrollContainers.set(U,U.elementScrolled().subscribe(()=>this._scrolled.next(U)))}deregister(U){const B=this.scrollContainers.get(U);B&&(B.unsubscribe(),this.scrollContainers.delete(U))}scrolled(U=20){return this._platform.isBrowser?new l.y(B=>{this._globalSubscription||this._addGlobalListener();const Ee=U>0?this._scrolled.pipe((0,v.e)(U)).subscribe(B):this._scrolled.subscribe(B);return this._scrolledCount++,()=>{Ee.unsubscribe(),this._scrolledCount--,this._scrolledCount||this._removeGlobalListener()}}):(0,i.of)()}ngOnDestroy(){this._removeGlobalListener(),this.scrollContainers.forEach((U,B)=>this.deregister(B)),this._scrolled.complete()}ancestorScrolled(U,B){const Ee=this.getAncestorScrollContainers(U);return this.scrolled(B).pipe((0,g.h)(Ie=>!Ie||Ee.indexOf(Ie)>-1))}getAncestorScrollContainers(U){const B=[];return this.scrollContainers.forEach((Ee,Ie)=>{this._scrollableContainsElement(Ie,U)&&B.push(Ie)}),B}_getWindow(){return this._document.defaultView||window}_scrollableContainsElement(U,B){let Ee=(0,e.fI)(B),Ie=U.getElementRef().nativeElement;do{if(Ee==Ie)return!0}while(Ee=Ee.parentElement);return!1}_addGlobalListener(){this._globalSubscription=this._ngZone.runOutsideAngular(()=>{const U=this._getWindow();return(0,C.R)(U.document,"scroll").subscribe(()=>this._scrolled.next())})}_removeGlobalListener(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)}static#e=this.\u0275fac=function(B){return new(B||we)(n.LFG(n.R0b),n.LFG(S.t4),n.LFG(A.K0,8))};static#t=this.\u0275prov=n.Yz7({token:we,factory:we.\u0275fac,providedIn:"root"})}return we})(),xe=(()=>{class we{constructor(U,B,Ee,Ie){this.elementRef=U,this.scrollDispatcher=B,this.ngZone=Ee,this.dir=Ie,this._destroyed=new t.x,this._elementScrolled=new l.y(Ne=>this.ngZone.runOutsideAngular(()=>(0,C.R)(this.elementRef.nativeElement,"scroll").pipe((0,d.R)(this._destroyed)).subscribe(Ne)))}ngOnInit(){this.scrollDispatcher.register(this)}ngOnDestroy(){this.scrollDispatcher.deregister(this),this._destroyed.next(),this._destroyed.complete()}elementScrolled(){return this._elementScrolled}getElementRef(){return this.elementRef}scrollTo(U){const B=this.elementRef.nativeElement,Ee=this.dir&&"rtl"==this.dir.value;null==U.left&&(U.left=Ee?U.end:U.start),null==U.right&&(U.right=Ee?U.start:U.end),null!=U.bottom&&(U.top=B.scrollHeight-B.clientHeight-U.bottom),Ee&&0!=(0,S._i)()?(null!=U.left&&(U.right=B.scrollWidth-B.clientWidth-U.left),2==(0,S._i)()?U.left=U.right:1==(0,S._i)()&&(U.left=U.right?-U.right:U.right)):null!=U.right&&(U.left=B.scrollWidth-B.clientWidth-U.right),this._applyScrollToOptions(U)}_applyScrollToOptions(U){const B=this.elementRef.nativeElement;(0,S.Mq)()?B.scrollTo(U):(null!=U.top&&(B.scrollTop=U.top),null!=U.left&&(B.scrollLeft=U.left))}measureScrollOffset(U){const B="left",Ie=this.elementRef.nativeElement;if("top"==U)return Ie.scrollTop;if("bottom"==U)return Ie.scrollHeight-Ie.clientHeight-Ie.scrollTop;const Ne=this.dir&&"rtl"==this.dir.value;return"start"==U?U=Ne?"right":B:"end"==U&&(U=Ne?B:"right"),Ne&&2==(0,S._i)()?U==B?Ie.scrollWidth-Ie.clientWidth-Ie.scrollLeft:Ie.scrollLeft:Ne&&1==(0,S._i)()?U==B?Ie.scrollLeft+Ie.scrollWidth-Ie.clientWidth:-Ie.scrollLeft:U==B?Ie.scrollLeft:Ie.scrollWidth-Ie.clientWidth-Ie.scrollLeft}static#e=this.\u0275fac=function(B){return new(B||we)(n.Y36(n.SBq),n.Y36(ae),n.Y36(n.R0b),n.Y36(k.Is,8))};static#t=this.\u0275dir=n.lG2({type:we,selectors:[["","cdk-scrollable",""],["","cdkScrollable",""]],standalone:!0})}return we})(),Ye=(()=>{class we{constructor(U,B,Ee){this._platform=U,this._change=new t.x,this._changeListener=Ie=>{this._change.next(Ie)},this._document=Ee,B.runOutsideAngular(()=>{if(U.isBrowser){const Ie=this._getWindow();Ie.addEventListener("resize",this._changeListener),Ie.addEventListener("orientationchange",this._changeListener)}this.change().subscribe(()=>this._viewportSize=null)})}ngOnDestroy(){if(this._platform.isBrowser){const U=this._getWindow();U.removeEventListener("resize",this._changeListener),U.removeEventListener("orientationchange",this._changeListener)}this._change.complete()}getViewportSize(){this._viewportSize||this._updateViewportSize();const U={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),U}getViewportRect(){const U=this.getViewportScrollPosition(),{width:B,height:Ee}=this.getViewportSize();return{top:U.top,left:U.left,bottom:U.top+Ee,right:U.left+B,height:Ee,width:B}}getViewportScrollPosition(){if(!this._platform.isBrowser)return{top:0,left:0};const U=this._document,B=this._getWindow(),Ee=U.documentElement,Ie=Ee.getBoundingClientRect();return{top:-Ie.top||U.body.scrollTop||B.scrollY||Ee.scrollTop||0,left:-Ie.left||U.body.scrollLeft||B.scrollX||Ee.scrollLeft||0}}change(U=20){return U>0?this._change.pipe((0,v.e)(U)):this._change}_getWindow(){return this._document.defaultView||window}_updateViewportSize(){const U=this._getWindow();this._viewportSize=this._platform.isBrowser?{width:U.innerWidth,height:U.innerHeight}:{width:0,height:0}}static#e=this.\u0275fac=function(B){return new(B||we)(n.LFG(S.t4),n.LFG(n.R0b),n.LFG(A.K0,8))};static#t=this.\u0275prov=n.Yz7({token:we,factory:we.\u0275fac,providedIn:"root"})}return we})();const q=new n.OlP("VIRTUAL_SCROLLABLE");let ve=(()=>{class we extends xe{constructor(U,B,Ee,Ie){super(U,B,Ee,Ie)}measureViewportSize(U){const B=this.elementRef.nativeElement;return"horizontal"===U?B.clientWidth:B.clientHeight}static#e=this.\u0275fac=function(B){return new(B||we)(n.Y36(n.SBq),n.Y36(ae),n.Y36(n.R0b),n.Y36(k.Is,8))};static#t=this.\u0275dir=n.lG2({type:we,features:[n.qOj]})}return we})();const Be=typeof requestAnimationFrame<"u"?E.Z:u.E;let Re=(()=>{class we extends ve{get orientation(){return this._orientation}set orientation(U){this._orientation!==U&&(this._orientation=U,this._calculateSpacerSize())}get appendOnly(){return this._appendOnly}set appendOnly(U){this._appendOnly=(0,e.Ig)(U)}constructor(U,B,Ee,Ie,Ne,pt,Dt,Lt){super(U,pt,Ee,Ne),this.elementRef=U,this._changeDetectorRef=B,this._scrollStrategy=Ie,this.scrollable=Lt,this._platform=(0,n.f3M)(S.t4),this._detachedSubject=new t.x,this._renderedRangeSubject=new t.x,this._orientation="vertical",this._appendOnly=!1,this.scrolledIndexChange=new l.y(Ut=>this._scrollStrategy.scrolledIndexChange.subscribe(qt=>Promise.resolve().then(()=>this.ngZone.run(()=>Ut.next(qt))))),this.renderedRangeStream=this._renderedRangeSubject,this._totalContentSize=0,this._totalContentWidth="",this._totalContentHeight="",this._renderedRange={start:0,end:0},this._dataLength=0,this._viewportSize=0,this._renderedContentOffset=0,this._renderedContentOffsetNeedsRewrite=!1,this._isChangeDetectionPending=!1,this._runAfterChangeDetection=[],this._viewportChanges=z.w0.EMPTY,this._viewportChanges=Dt.change().subscribe(()=>{this.checkViewportSize()}),this.scrollable||(this.elementRef.nativeElement.classList.add("cdk-virtual-scrollable"),this.scrollable=this)}ngOnInit(){this._platform.isBrowser&&(this.scrollable===this&&super.ngOnInit(),this.ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>{this._measureViewportSize(),this._scrollStrategy.attach(this),this.scrollable.elementScrolled().pipe((0,p.O)(null),(0,v.e)(0,Be),(0,d.R)(this._destroyed)).subscribe(()=>this._scrollStrategy.onContentScrolled()),this._markChangeDetectionNeeded()})))}ngOnDestroy(){this.detach(),this._scrollStrategy.detach(),this._renderedRangeSubject.complete(),this._detachedSubject.complete(),this._viewportChanges.unsubscribe(),super.ngOnDestroy()}attach(U){this.ngZone.runOutsideAngular(()=>{this._forOf=U,this._forOf.dataStream.pipe((0,d.R)(this._detachedSubject)).subscribe(B=>{const Ee=B.length;Ee!==this._dataLength&&(this._dataLength=Ee,this._scrollStrategy.onDataLengthChanged()),this._doChangeDetection()})})}detach(){this._forOf=null,this._detachedSubject.next()}getDataLength(){return this._dataLength}getViewportSize(){return this._viewportSize}getRenderedRange(){return this._renderedRange}measureBoundingClientRectWithScrollOffset(U){return this.getElementRef().nativeElement.getBoundingClientRect()[U]}setTotalContentSize(U){this._totalContentSize!==U&&(this._totalContentSize=U,this._calculateSpacerSize(),this._markChangeDetectionNeeded())}setRenderedRange(U){(function ee(we,de){return we.start==de.start&&we.end==de.end})(this._renderedRange,U)||(this.appendOnly&&(U={start:0,end:Math.max(this._renderedRange.end,U.end)}),this._renderedRangeSubject.next(this._renderedRange=U),this._markChangeDetectionNeeded(()=>this._scrollStrategy.onContentRendered()))}getOffsetToRenderedContentStart(){return this._renderedContentOffsetNeedsRewrite?null:this._renderedContentOffset}setRenderedContentOffset(U,B="to-start"){U=this.appendOnly&&"to-start"===B?0:U;const Ie="horizontal"==this.orientation,Ne=Ie?"X":"Y";let Dt=`translate${Ne}(${Number((Ie&&this.dir&&"rtl"==this.dir.value?-1:1)*U)}px)`;this._renderedContentOffset=U,"to-end"===B&&(Dt+=` translate${Ne}(-100%)`,this._renderedContentOffsetNeedsRewrite=!0),this._renderedContentTransform!=Dt&&(this._renderedContentTransform=Dt,this._markChangeDetectionNeeded(()=>{this._renderedContentOffsetNeedsRewrite?(this._renderedContentOffset-=this.measureRenderedContentSize(),this._renderedContentOffsetNeedsRewrite=!1,this.setRenderedContentOffset(this._renderedContentOffset)):this._scrollStrategy.onRenderedOffsetChanged()}))}scrollToOffset(U,B="auto"){const Ee={behavior:B};"horizontal"===this.orientation?Ee.start=U:Ee.top=U,this.scrollable.scrollTo(Ee)}scrollToIndex(U,B="auto"){this._scrollStrategy.scrollToIndex(U,B)}measureScrollOffset(U){let B;return B=this.scrollable==this?Ee=>super.measureScrollOffset(Ee):Ee=>this.scrollable.measureScrollOffset(Ee),Math.max(0,B(U??("horizontal"===this.orientation?"start":"top"))-this.measureViewportOffset())}measureViewportOffset(U){let B;const Ne="rtl"==this.dir?.value;B="start"==U?Ne?"right":"left":"end"==U?Ne?"left":"right":U||("horizontal"===this.orientation?"left":"top");const pt=this.scrollable.measureBoundingClientRectWithScrollOffset(B);return this.elementRef.nativeElement.getBoundingClientRect()[B]-pt}measureRenderedContentSize(){const U=this._contentWrapper.nativeElement;return"horizontal"===this.orientation?U.offsetWidth:U.offsetHeight}measureRangeSize(U){return this._forOf?this._forOf.measureRangeSize(U,this.orientation):0}checkViewportSize(){this._measureViewportSize(),this._scrollStrategy.onDataLengthChanged()}_measureViewportSize(){this._viewportSize=this.scrollable.measureViewportSize(this.orientation)}_markChangeDetectionNeeded(U){U&&this._runAfterChangeDetection.push(U),this._isChangeDetectionPending||(this._isChangeDetectionPending=!0,this.ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>{this._doChangeDetection()})))}_doChangeDetection(){this._isChangeDetectionPending=!1,this._contentWrapper.nativeElement.style.transform=this._renderedContentTransform,this.ngZone.run(()=>this._changeDetectorRef.markForCheck());const U=this._runAfterChangeDetection;this._runAfterChangeDetection=[];for(const B of U)B()}_calculateSpacerSize(){this._totalContentHeight="horizontal"===this.orientation?"":`${this._totalContentSize}px`,this._totalContentWidth="horizontal"===this.orientation?`${this._totalContentSize}px`:""}static#e=this.\u0275fac=function(B){return new(B||we)(n.Y36(n.SBq),n.Y36(n.sBO),n.Y36(n.R0b),n.Y36(be,8),n.Y36(k.Is,8),n.Y36(ae),n.Y36(Ye),n.Y36(q,8))};static#t=this.\u0275cmp=n.Xpm({type:we,selectors:[["cdk-virtual-scroll-viewport"]],viewQuery:function(B,Ee){if(1&B&&n.Gf(fe,7),2&B){let Ie;n.iGM(Ie=n.CRH())&&(Ee._contentWrapper=Ie.first)}},hostAttrs:[1,"cdk-virtual-scroll-viewport"],hostVars:4,hostBindings:function(B,Ee){2&B&&n.ekj("cdk-virtual-scroll-orientation-horizontal","horizontal"===Ee.orientation)("cdk-virtual-scroll-orientation-vertical","horizontal"!==Ee.orientation)},inputs:{orientation:"orientation",appendOnly:"appendOnly"},outputs:{scrolledIndexChange:"scrolledIndexChange"},standalone:!0,features:[n._Bn([{provide:xe,useFactory:(U,B)=>U||B,deps:[[new n.FiY,new n.tBr(q)],we]}]),n.qOj,n.jDz],ngContentSelectors:re,decls:4,vars:4,consts:[[1,"cdk-virtual-scroll-content-wrapper"],["contentWrapper",""],[1,"cdk-virtual-scroll-spacer"]],template:function(B,Ee){1&B&&(n.F$t(),n.TgZ(0,"div",0,1),n.Hsn(2),n.qZA(),n._UZ(3,"div",2)),2&B&&(n.xp6(3),n.Udp("width",Ee._totalContentWidth)("height",Ee._totalContentHeight))},styles:["cdk-virtual-scroll-viewport{display:block;position:relative;transform:translateZ(0)}.cdk-virtual-scrollable{overflow:auto;will-change:scroll-position;contain:strict;-webkit-overflow-scrolling:touch}.cdk-virtual-scroll-content-wrapper{position:absolute;top:0;left:0;contain:content}[dir=rtl] .cdk-virtual-scroll-content-wrapper{right:0;left:auto}.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper{min-height:100%}.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper>dl:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper>ol:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper>table:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper>ul:not([cdkVirtualFor]){padding-left:0;padding-right:0;margin-left:0;margin-right:0;border-left-width:0;border-right-width:0;outline:none}.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper{min-width:100%}.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper>dl:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper>ol:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper>table:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper>ul:not([cdkVirtualFor]){padding-top:0;padding-bottom:0;margin-top:0;margin-bottom:0;border-top-width:0;border-bottom-width:0;outline:none}.cdk-virtual-scroll-spacer{height:1px;transform-origin:0 0;flex:0 0 auto}[dir=rtl] .cdk-virtual-scroll-spacer{transform-origin:100% 0}"],encapsulation:2,changeDetection:0})}return we})();function ct(we,de,U){if(!U.getBoundingClientRect)return 0;const Ee=U.getBoundingClientRect();return"horizontal"===we?"start"===de?Ee.left:Ee.right:"start"===de?Ee.top:Ee.bottom}let Ae=(()=>{class we{get cdkVirtualForOf(){return this._cdkVirtualForOf}set cdkVirtualForOf(U){this._cdkVirtualForOf=U,function W(we){return we&&"function"==typeof we.connect&&!(we instanceof R.c)}(U)?this._dataSourceChanges.next(U):this._dataSourceChanges.next(new ze((0,M.b)(U)?U:Array.from(U||[])))}get cdkVirtualForTrackBy(){return this._cdkVirtualForTrackBy}set cdkVirtualForTrackBy(U){this._needsUpdate=!0,this._cdkVirtualForTrackBy=U?(B,Ee)=>U(B+(this._renderedRange?this._renderedRange.start:0),Ee):void 0}set cdkVirtualForTemplate(U){U&&(this._needsUpdate=!0,this._template=U)}get cdkVirtualForTemplateCacheSize(){return this._viewRepeater.viewCacheSize}set cdkVirtualForTemplateCacheSize(U){this._viewRepeater.viewCacheSize=(0,e.su)(U)}constructor(U,B,Ee,Ie,Ne,pt){this._viewContainerRef=U,this._template=B,this._differs=Ee,this._viewRepeater=Ie,this._viewport=Ne,this.viewChange=new t.x,this._dataSourceChanges=new t.x,this.dataStream=this._dataSourceChanges.pipe((0,p.O)(null),function T(){return(0,f.e)((we,de)=>{let U,B=!1;we.subscribe((0,y.x)(de,Ee=>{const Ie=U;U=Ee,B&&de.next([Ie,Ee]),B=!0}))})}(),(0,x.w)(([Dt,Lt])=>this._changeDataSource(Dt,Lt)),function P(we,de,U){let B,Ee=!1;return we&&"object"==typeof we?({bufferSize:B=1/0,windowTime:de=1/0,refCount:Ee=!1,scheduler:U}=we):B=we??1/0,(0,_.B)({connector:()=>new D.t(B,de,U),resetOnError:!0,resetOnComplete:!1,resetOnRefCountZero:Ee})}(1)),this._differ=null,this._needsUpdate=!1,this._destroyed=new t.x,this.dataStream.subscribe(Dt=>{this._data=Dt,this._onRenderedDataChange()}),this._viewport.renderedRangeStream.pipe((0,d.R)(this._destroyed)).subscribe(Dt=>{this._renderedRange=Dt,this.viewChange.observers.length&&pt.run(()=>this.viewChange.next(this._renderedRange)),this._onRenderedDataChange()}),this._viewport.attach(this)}measureRangeSize(U,B){if(U.start>=U.end)return 0;const Ee=U.start-this._renderedRange.start,Ie=U.end-U.start;let Ne,pt;for(let Dt=0;Dt-1;Dt--){const Lt=this._viewContainerRef.get(Dt+Ee);if(Lt&&Lt.rootNodes.length){pt=Lt.rootNodes[Lt.rootNodes.length-1];break}}return Ne&&pt?ct(B,"end",pt)-ct(B,"start",Ne):0}ngDoCheck(){if(this._differ&&this._needsUpdate){const U=this._differ.diff(this._renderedItems);U?this._applyChanges(U):this._updateContext(),this._needsUpdate=!1}}ngOnDestroy(){this._viewport.detach(),this._dataSourceChanges.next(void 0),this._dataSourceChanges.complete(),this.viewChange.complete(),this._destroyed.next(),this._destroyed.complete(),this._viewRepeater.detach()}_onRenderedDataChange(){this._renderedRange&&(this._renderedItems=this._data.slice(this._renderedRange.start,this._renderedRange.end),this._differ||(this._differ=this._differs.find(this._renderedItems).create((U,B)=>this.cdkVirtualForTrackBy?this.cdkVirtualForTrackBy(U,B):B)),this._needsUpdate=!0)}_changeDataSource(U,B){return U&&U.disconnect(this),this._needsUpdate=!0,B?B.connect(this):(0,i.of)()}_updateContext(){const U=this._data.length;let B=this._viewContainerRef.length;for(;B--;){const Ee=this._viewContainerRef.get(B);Ee.context.index=this._renderedRange.start+B,Ee.context.count=U,this._updateComputedContextProperties(Ee.context),Ee.detectChanges()}}_applyChanges(U){this._viewRepeater.applyChanges(U,this._viewContainerRef,(Ie,Ne,pt)=>this._getEmbeddedViewArgs(Ie,pt),Ie=>Ie.item),U.forEachIdentityChange(Ie=>{this._viewContainerRef.get(Ie.currentIndex).context.$implicit=Ie.item});const B=this._data.length;let Ee=this._viewContainerRef.length;for(;Ee--;){const Ie=this._viewContainerRef.get(Ee);Ie.context.index=this._renderedRange.start+Ee,Ie.context.count=B,this._updateComputedContextProperties(Ie.context)}}_updateComputedContextProperties(U){U.first=0===U.index,U.last=U.index===U.count-1,U.even=U.index%2==0,U.odd=!U.even}_getEmbeddedViewArgs(U,B){return{templateRef:this._template,context:{$implicit:U.item,cdkVirtualForOf:this._cdkVirtualForOf,index:-1,count:-1,first:!1,last:!1,odd:!1,even:!1},index:B}}static#e=this.\u0275fac=function(B){return new(B||we)(n.Y36(n.s_b),n.Y36(n.Rgc),n.Y36(n.ZZ4),n.Y36(ne),n.Y36(Re,4),n.Y36(n.R0b))};static#t=this.\u0275dir=n.lG2({type:we,selectors:[["","cdkVirtualFor","","cdkVirtualForOf",""]],inputs:{cdkVirtualForOf:"cdkVirtualForOf",cdkVirtualForTrackBy:"cdkVirtualForTrackBy",cdkVirtualForTemplate:"cdkVirtualForTemplate",cdkVirtualForTemplateCacheSize:"cdkVirtualForTemplateCacheSize"},standalone:!0,features:[n._Bn([{provide:ne,useClass:G}])]})}return we})(),ot=(()=>{class we{static#e=this.\u0275fac=function(B){return new(B||we)};static#t=this.\u0275mod=n.oAB({type:we});static#n=this.\u0275inj=n.cJS({})}return we})(),mt=(()=>{class we{static#e=this.\u0275fac=function(B){return new(B||we)};static#t=this.\u0275mod=n.oAB({type:we});static#n=this.\u0275inj=n.cJS({imports:[k.vT,ot,k.vT,ot]})}return we})()},96814:(nt,I,o)=>{"use strict";o.d(I,{Do:()=>f,ED:()=>oo,EM:()=>so,H9:()=>Nt,HT:()=>i,JF:()=>vo,JJ:()=>gt,K0:()=>C,Mx:()=>Mn,NF:()=>go,O5:()=>hi,OU:()=>zn,Ov:()=>Pi,PC:()=>$i,PM:()=>hs,RF:()=>ei,S$:()=>g,Tn:()=>R,Ts:()=>Ln,V_:()=>u,Ye:()=>y,b0:()=>p,bD:()=>ui,ez:()=>Qn,gd:()=>Bn,mk:()=>Rn,n9:()=>po,ol:()=>G,p6:()=>Ee,q:()=>t,qS:()=>Dn,sg:()=>ci,tP:()=>Qi,uf:()=>j,w_:()=>l,x:()=>k});var e=o(65879);let n=null;function t(){return n}function i(me){n||(n=me)}class l{}const C=new e.OlP("DocumentToken");let E=(()=>{class me{historyGo(Ve){throw new Error("Not implemented")}static#e=this.\u0275fac=function(ut){return new(ut||me)};static#t=this.\u0275prov=e.Yz7({token:me,factory:function(){return(0,e.f3M)(z)},providedIn:"platform"})}return me})();const u=new e.OlP("Location Initialized");let z=(()=>{class me extends E{constructor(){super(),this._doc=(0,e.f3M)(C),this._location=window.location,this._history=window.history}getBaseHrefFromDOM(){return t().getBaseHref(this._doc)}onPopState(Ve){const ut=t().getGlobalEventTarget(this._doc,"window");return ut.addEventListener("popstate",Ve,!1),()=>ut.removeEventListener("popstate",Ve)}onHashChange(Ve){const ut=t().getGlobalEventTarget(this._doc,"window");return ut.addEventListener("hashchange",Ve,!1),()=>ut.removeEventListener("hashchange",Ve)}get href(){return this._location.href}get protocol(){return this._location.protocol}get hostname(){return this._location.hostname}get port(){return this._location.port}get pathname(){return this._location.pathname}get search(){return this._location.search}get hash(){return this._location.hash}set pathname(Ve){this._location.pathname=Ve}pushState(Ve,ut,Ht){this._history.pushState(Ve,ut,Ht)}replaceState(Ve,ut,Ht){this._history.replaceState(Ve,ut,Ht)}forward(){this._history.forward()}back(){this._history.back()}historyGo(Ve=0){this._history.go(Ve)}getState(){return this._history.state}static#e=this.\u0275fac=function(ut){return new(ut||me)};static#t=this.\u0275prov=e.Yz7({token:me,factory:function(){return new me},providedIn:"platform"})}return me})();function M(me,_t){if(0==me.length)return _t;if(0==_t.length)return me;let Ve=0;return me.endsWith("/")&&Ve++,_t.startsWith("/")&&Ve++,2==Ve?me+_t.substring(1):1==Ve?me+_t:me+"/"+_t}function h(me){const _t=me.match(/#|\?|$/),Ve=_t&&_t.index||me.length;return me.slice(0,Ve-("/"===me[Ve-1]?1:0))+me.slice(Ve)}function v(me){return me&&"?"!==me[0]?"?"+me:me}let g=(()=>{class me{historyGo(Ve){throw new Error("Not implemented")}static#e=this.\u0275fac=function(ut){return new(ut||me)};static#t=this.\u0275prov=e.Yz7({token:me,factory:function(){return(0,e.f3M)(p)},providedIn:"root"})}return me})();const d=new e.OlP("appBaseHref");let p=(()=>{class me extends g{constructor(Ve,ut){super(),this._platformLocation=Ve,this._removeListenerFns=[],this._baseHref=ut??this._platformLocation.getBaseHrefFromDOM()??(0,e.f3M)(C).location?.origin??""}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(Ve){this._removeListenerFns.push(this._platformLocation.onPopState(Ve),this._platformLocation.onHashChange(Ve))}getBaseHref(){return this._baseHref}prepareExternalUrl(Ve){return M(this._baseHref,Ve)}path(Ve=!1){const ut=this._platformLocation.pathname+v(this._platformLocation.search),Ht=this._platformLocation.hash;return Ht&&Ve?`${ut}${Ht}`:ut}pushState(Ve,ut,Ht,rn){const an=this.prepareExternalUrl(Ht+v(rn));this._platformLocation.pushState(Ve,ut,an)}replaceState(Ve,ut,Ht,rn){const an=this.prepareExternalUrl(Ht+v(rn));this._platformLocation.replaceState(Ve,ut,an)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(Ve=0){this._platformLocation.historyGo?.(Ve)}static#e=this.\u0275fac=function(ut){return new(ut||me)(e.LFG(E),e.LFG(d,8))};static#t=this.\u0275prov=e.Yz7({token:me,factory:me.\u0275fac,providedIn:"root"})}return me})(),f=(()=>{class me extends g{constructor(Ve,ut){super(),this._platformLocation=Ve,this._baseHref="",this._removeListenerFns=[],null!=ut&&(this._baseHref=ut)}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(Ve){this._removeListenerFns.push(this._platformLocation.onPopState(Ve),this._platformLocation.onHashChange(Ve))}getBaseHref(){return this._baseHref}path(Ve=!1){let ut=this._platformLocation.hash;return null==ut&&(ut="#"),ut.length>0?ut.substring(1):ut}prepareExternalUrl(Ve){const ut=M(this._baseHref,Ve);return ut.length>0?"#"+ut:ut}pushState(Ve,ut,Ht,rn){let an=this.prepareExternalUrl(Ht+v(rn));0==an.length&&(an=this._platformLocation.pathname),this._platformLocation.pushState(Ve,ut,an)}replaceState(Ve,ut,Ht,rn){let an=this.prepareExternalUrl(Ht+v(rn));0==an.length&&(an=this._platformLocation.pathname),this._platformLocation.replaceState(Ve,ut,an)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(Ve=0){this._platformLocation.historyGo?.(Ve)}static#e=this.\u0275fac=function(ut){return new(ut||me)(e.LFG(E),e.LFG(d,8))};static#t=this.\u0275prov=e.Yz7({token:me,factory:me.\u0275fac})}return me})(),y=(()=>{class me{constructor(Ve){this._subject=new e.vpe,this._urlChangeListeners=[],this._urlChangeSubscription=null,this._locationStrategy=Ve;const ut=this._locationStrategy.getBaseHref();this._basePath=function _(me){if(new RegExp("^(https?:)?//").test(me)){const[,Ve]=me.split(/\/\/[^\/]+/);return Ve}return me}(h(D(ut))),this._locationStrategy.onPopState(Ht=>{this._subject.emit({url:this.path(!0),pop:!0,state:Ht.state,type:Ht.type})})}ngOnDestroy(){this._urlChangeSubscription?.unsubscribe(),this._urlChangeListeners=[]}path(Ve=!1){return this.normalize(this._locationStrategy.path(Ve))}getState(){return this._locationStrategy.getState()}isCurrentPathEqualTo(Ve,ut=""){return this.path()==this.normalize(Ve+v(ut))}normalize(Ve){return me.stripTrailingSlash(function x(me,_t){if(!me||!_t.startsWith(me))return _t;const Ve=_t.substring(me.length);return""===Ve||["/",";","?","#"].includes(Ve[0])?Ve:_t}(this._basePath,D(Ve)))}prepareExternalUrl(Ve){return Ve&&"/"!==Ve[0]&&(Ve="/"+Ve),this._locationStrategy.prepareExternalUrl(Ve)}go(Ve,ut="",Ht=null){this._locationStrategy.pushState(Ht,"",Ve,ut),this._notifyUrlChangeListeners(this.prepareExternalUrl(Ve+v(ut)),Ht)}replaceState(Ve,ut="",Ht=null){this._locationStrategy.replaceState(Ht,"",Ve,ut),this._notifyUrlChangeListeners(this.prepareExternalUrl(Ve+v(ut)),Ht)}forward(){this._locationStrategy.forward()}back(){this._locationStrategy.back()}historyGo(Ve=0){this._locationStrategy.historyGo?.(Ve)}onUrlChange(Ve){return this._urlChangeListeners.push(Ve),this._urlChangeSubscription||(this._urlChangeSubscription=this.subscribe(ut=>{this._notifyUrlChangeListeners(ut.url,ut.state)})),()=>{const ut=this._urlChangeListeners.indexOf(Ve);this._urlChangeListeners.splice(ut,1),0===this._urlChangeListeners.length&&(this._urlChangeSubscription?.unsubscribe(),this._urlChangeSubscription=null)}}_notifyUrlChangeListeners(Ve="",ut){this._urlChangeListeners.forEach(Ht=>Ht(Ve,ut))}subscribe(Ve,ut,Ht){return this._subject.subscribe({next:Ve,error:ut,complete:Ht})}static#e=this.normalizeQueryParams=v;static#t=this.joinWithSlash=M;static#n=this.stripTrailingSlash=h;static#i=this.\u0275fac=function(ut){return new(ut||me)(e.LFG(g))};static#o=this.\u0275prov=e.Yz7({token:me,factory:function(){return function T(){return new y((0,e.LFG)(g))}()},providedIn:"root"})}return me})();function D(me){return me.replace(/\/index.html$/,"")}const P={ADP:[void 0,void 0,0],AFN:[void 0,"\u060b",0],ALL:[void 0,void 0,0],AMD:[void 0,"\u058f",2],AOA:[void 0,"Kz"],ARS:[void 0,"$"],AUD:["A$","$"],AZN:[void 0,"\u20bc"],BAM:[void 0,"KM"],BBD:[void 0,"$"],BDT:[void 0,"\u09f3"],BHD:[void 0,void 0,3],BIF:[void 0,void 0,0],BMD:[void 0,"$"],BND:[void 0,"$"],BOB:[void 0,"Bs"],BRL:["R$"],BSD:[void 0,"$"],BWP:[void 0,"P"],BYN:[void 0,void 0,2],BYR:[void 0,void 0,0],BZD:[void 0,"$"],CAD:["CA$","$",2],CHF:[void 0,void 0,2],CLF:[void 0,void 0,4],CLP:[void 0,"$",0],CNY:["CN\xa5","\xa5"],COP:[void 0,"$",2],CRC:[void 0,"\u20a1",2],CUC:[void 0,"$"],CUP:[void 0,"$"],CZK:[void 0,"K\u010d",2],DJF:[void 0,void 0,0],DKK:[void 0,"kr",2],DOP:[void 0,"$"],EGP:[void 0,"E\xa3"],ESP:[void 0,"\u20a7",0],EUR:["\u20ac"],FJD:[void 0,"$"],FKP:[void 0,"\xa3"],GBP:["\xa3"],GEL:[void 0,"\u20be"],GHS:[void 0,"GH\u20b5"],GIP:[void 0,"\xa3"],GNF:[void 0,"FG",0],GTQ:[void 0,"Q"],GYD:[void 0,"$",2],HKD:["HK$","$"],HNL:[void 0,"L"],HRK:[void 0,"kn"],HUF:[void 0,"Ft",2],IDR:[void 0,"Rp",2],ILS:["\u20aa"],INR:["\u20b9"],IQD:[void 0,void 0,0],IRR:[void 0,void 0,0],ISK:[void 0,"kr",0],ITL:[void 0,void 0,0],JMD:[void 0,"$"],JOD:[void 0,void 0,3],JPY:["\xa5",void 0,0],KHR:[void 0,"\u17db"],KMF:[void 0,"CF",0],KPW:[void 0,"\u20a9",0],KRW:["\u20a9",void 0,0],KWD:[void 0,void 0,3],KYD:[void 0,"$"],KZT:[void 0,"\u20b8"],LAK:[void 0,"\u20ad",0],LBP:[void 0,"L\xa3",0],LKR:[void 0,"Rs"],LRD:[void 0,"$"],LTL:[void 0,"Lt"],LUF:[void 0,void 0,0],LVL:[void 0,"Ls"],LYD:[void 0,void 0,3],MGA:[void 0,"Ar",0],MGF:[void 0,void 0,0],MMK:[void 0,"K",0],MNT:[void 0,"\u20ae",2],MRO:[void 0,void 0,0],MUR:[void 0,"Rs",2],MXN:["MX$","$"],MYR:[void 0,"RM"],NAD:[void 0,"$"],NGN:[void 0,"\u20a6"],NIO:[void 0,"C$"],NOK:[void 0,"kr",2],NPR:[void 0,"Rs"],NZD:["NZ$","$"],OMR:[void 0,void 0,3],PHP:["\u20b1"],PKR:[void 0,"Rs",2],PLN:[void 0,"z\u0142"],PYG:[void 0,"\u20b2",0],RON:[void 0,"lei"],RSD:[void 0,void 0,0],RUB:[void 0,"\u20bd"],RWF:[void 0,"RF",0],SBD:[void 0,"$"],SEK:[void 0,"kr",2],SGD:[void 0,"$"],SHP:[void 0,"\xa3"],SLE:[void 0,void 0,2],SLL:[void 0,void 0,0],SOS:[void 0,void 0,0],SRD:[void 0,"$"],SSP:[void 0,"\xa3"],STD:[void 0,void 0,0],STN:[void 0,"Db"],SYP:[void 0,"\xa3",0],THB:[void 0,"\u0e3f"],TMM:[void 0,void 0,0],TND:[void 0,void 0,3],TOP:[void 0,"T$"],TRL:[void 0,void 0,0],TRY:[void 0,"\u20ba"],TTD:[void 0,"$"],TWD:["NT$","$",2],TZS:[void 0,void 0,2],UAH:[void 0,"\u20b4"],UGX:[void 0,void 0,0],USD:["$"],UYI:[void 0,void 0,0],UYU:[void 0,"$"],UYW:[void 0,void 0,4],UZS:[void 0,void 0,2],VEF:[void 0,"Bs",2],VND:["\u20ab",void 0,0],VUV:[void 0,void 0,0],XAF:["FCFA",void 0,0],XCD:["EC$","$"],XOF:["F\u202fCFA",void 0,0],XPF:["CFPF",void 0,0],XXX:["\xa4"],YER:[void 0,void 0,0],ZAR:[void 0,"R"],ZMK:[void 0,void 0,0],ZMW:[void 0,"ZK"],ZWD:[void 0,void 0,0]};var S=function(me){return me[me.Decimal=0]="Decimal",me[me.Percent=1]="Percent",me[me.Currency=2]="Currency",me[me.Scientific=3]="Scientific",me}(S||{}),k=function(me){return me[me.Format=0]="Format",me[me.Standalone=1]="Standalone",me}(k||{}),R=function(me){return me[me.Narrow=0]="Narrow",me[me.Abbreviated=1]="Abbreviated",me[me.Wide=2]="Wide",me[me.Short=3]="Short",me}(R||{}),$=function(me){return me[me.Short=0]="Short",me[me.Medium=1]="Medium",me[me.Long=2]="Long",me[me.Full=3]="Full",me}($||{}),W=function(me){return me[me.Decimal=0]="Decimal",me[me.Group=1]="Group",me[me.List=2]="List",me[me.PercentSign=3]="PercentSign",me[me.PlusSign=4]="PlusSign",me[me.MinusSign=5]="MinusSign",me[me.Exponential=6]="Exponential",me[me.SuperscriptingExponent=7]="SuperscriptingExponent",me[me.PerMille=8]="PerMille",me[me.Infinity=9]="Infinity",me[me.NaN=10]="NaN",me[me.TimeSeparator=11]="TimeSeparator",me[me.CurrencyDecimal=12]="CurrencyDecimal",me[me.CurrencyGroup=13]="CurrencyGroup",me}(W||{});function G(me,_t,Ve){const ut=(0,e.cg1)(me),rn=Re([ut[e.wAp.DayPeriodsFormat],ut[e.wAp.DayPeriodsStandalone]],_t);return Re(rn,Ve)}function re(me,_t){return Re((0,e.cg1)(me)[e.wAp.DateFormat],_t)}function be(me,_t){return Re((0,e.cg1)(me)[e.wAp.TimeFormat],_t)}function le(me,_t){return Re((0,e.cg1)(me)[e.wAp.DateTimeFormat],_t)}function ce(me,_t){const Ve=(0,e.cg1)(me),ut=Ve[e.wAp.NumberSymbols][_t];if(typeof ut>"u"){if(_t===W.CurrencyDecimal)return Ve[e.wAp.NumberSymbols][W.Decimal];if(_t===W.CurrencyGroup)return Ve[e.wAp.NumberSymbols][W.Group]}return ut}function Q(me,_t){return(0,e.cg1)(me)[e.wAp.NumberFormats][_t]}function q(me){if(!me[e.wAp.ExtraData])throw new Error(`Missing extra locale data for the locale "${me[e.wAp.LocaleId]}". Use "registerLocaleData" to load new data. See the "I18n guide" on angular.io to know more.`)}function Re(me,_t){for(let Ve=_t;Ve>-1;Ve--)if(typeof me[Ve]<"u")return me[Ve];throw new Error("Locale data API: locale data undefined")}function ct(me){const[_t,Ve]=me.split(":");return{hours:+_t,minutes:+Ve}}const ot=/^(\d{4,})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/,mt={},we=/((?:[^BEGHLMOSWYZabcdhmswyz']+)|(?:'(?:[^']|'')*')|(?:G{1,5}|y{1,4}|Y{1,4}|M{1,5}|L{1,5}|w{1,2}|W{1}|d{1,2}|E{1,6}|c{1,6}|a{1,5}|b{1,5}|B{1,5}|h{1,2}|H{1,2}|m{1,2}|s{1,2}|S{1,3}|z{1,4}|Z{1,5}|O{1,4}))([\s\S]*)/;var de=function(me){return me[me.Short=0]="Short",me[me.ShortGMT=1]="ShortGMT",me[me.Long=2]="Long",me[me.Extended=3]="Extended",me}(de||{}),U=function(me){return me[me.FullYear=0]="FullYear",me[me.Month=1]="Month",me[me.Date=2]="Date",me[me.Hours=3]="Hours",me[me.Minutes=4]="Minutes",me[me.Seconds=5]="Seconds",me[me.FractionalSeconds=6]="FractionalSeconds",me[me.Day=7]="Day",me}(U||{}),B=function(me){return me[me.DayPeriods=0]="DayPeriods",me[me.Days=1]="Days",me[me.Months=2]="Months",me[me.Eras=3]="Eras",me}(B||{});function Ee(me,_t,Ve,ut){let Ht=function ge(me){if($e(me))return me;if("number"==typeof me&&!isNaN(me))return new Date(me);if("string"==typeof me){if(me=me.trim(),/^(\d{4}(-\d{1,2}(-\d{1,2})?)?)$/.test(me)){const[Ht,rn=1,an=1]=me.split("-").map(An=>+An);return Ie(Ht,rn-1,an)}const Ve=parseFloat(me);if(!isNaN(me-Ve))return new Date(Ve);let ut;if(ut=me.match(ot))return function Ze(me){const _t=new Date(0);let Ve=0,ut=0;const Ht=me[8]?_t.setUTCFullYear:_t.setFullYear,rn=me[8]?_t.setUTCHours:_t.setHours;me[9]&&(Ve=Number(me[9]+me[10]),ut=Number(me[9]+me[11])),Ht.call(_t,Number(me[1]),Number(me[2])-1,Number(me[3]));const an=Number(me[4]||0)-Ve,An=Number(me[5]||0)-ut,bi=Number(me[6]||0),Ni=Math.floor(1e3*parseFloat("0."+(me[7]||0)));return rn.call(_t,an,An,bi,Ni),_t}(ut)}const _t=new Date(me);if(!$e(_t))throw new Error(`Unable to convert "${me}" into a date`);return _t}(me);_t=Ne(Ve,_t)||_t;let An,an=[];for(;_t;){if(An=we.exec(_t),!An){an.push(_t);break}{an=an.concat(An.slice(1));const mi=an.pop();if(!mi)break;_t=mi}}let bi=Ht.getTimezoneOffset();ut&&(bi=ke(ut,bi),Ht=function qe(me,_t,Ve){const ut=Ve?-1:1,Ht=me.getTimezoneOffset();return function pe(me,_t){return(me=new Date(me.getTime())).setMinutes(me.getMinutes()+_t),me}(me,ut*(ke(_t,Ht)-Ht))}(Ht,ut,!0));let Ni="";return an.forEach(mi=>{const Gn=function Qe(me){if(xt[me])return xt[me];let _t;switch(me){case"G":case"GG":case"GGG":_t=en(B.Eras,R.Abbreviated);break;case"GGGG":_t=en(B.Eras,R.Wide);break;case"GGGGG":_t=en(B.Eras,R.Narrow);break;case"y":_t=Ut(U.FullYear,1,0,!1,!0);break;case"yy":_t=Ut(U.FullYear,2,0,!0,!0);break;case"yyy":_t=Ut(U.FullYear,3,0,!1,!0);break;case"yyyy":_t=Ut(U.FullYear,4,0,!1,!0);break;case"Y":_t=Ot(1);break;case"YY":_t=Ot(2,!0);break;case"YYY":_t=Ot(3);break;case"YYYY":_t=Ot(4);break;case"M":case"L":_t=Ut(U.Month,1,1);break;case"MM":case"LL":_t=Ut(U.Month,2,1);break;case"MMM":_t=en(B.Months,R.Abbreviated);break;case"MMMM":_t=en(B.Months,R.Wide);break;case"MMMMM":_t=en(B.Months,R.Narrow);break;case"LLL":_t=en(B.Months,R.Abbreviated,k.Standalone);break;case"LLLL":_t=en(B.Months,R.Wide,k.Standalone);break;case"LLLLL":_t=en(B.Months,R.Narrow,k.Standalone);break;case"w":_t=It(1);break;case"ww":_t=It(2);break;case"W":_t=It(1,!0);break;case"d":_t=Ut(U.Date,1);break;case"dd":_t=Ut(U.Date,2);break;case"c":case"cc":_t=Ut(U.Day,1);break;case"ccc":_t=en(B.Days,R.Abbreviated,k.Standalone);break;case"cccc":_t=en(B.Days,R.Wide,k.Standalone);break;case"ccccc":_t=en(B.Days,R.Narrow,k.Standalone);break;case"cccccc":_t=en(B.Days,R.Short,k.Standalone);break;case"E":case"EE":case"EEE":_t=en(B.Days,R.Abbreviated);break;case"EEEE":_t=en(B.Days,R.Wide);break;case"EEEEE":_t=en(B.Days,R.Narrow);break;case"EEEEEE":_t=en(B.Days,R.Short);break;case"a":case"aa":case"aaa":_t=en(B.DayPeriods,R.Abbreviated);break;case"aaaa":_t=en(B.DayPeriods,R.Wide);break;case"aaaaa":_t=en(B.DayPeriods,R.Narrow);break;case"b":case"bb":case"bbb":_t=en(B.DayPeriods,R.Abbreviated,k.Standalone,!0);break;case"bbbb":_t=en(B.DayPeriods,R.Wide,k.Standalone,!0);break;case"bbbbb":_t=en(B.DayPeriods,R.Narrow,k.Standalone,!0);break;case"B":case"BB":case"BBB":_t=en(B.DayPeriods,R.Abbreviated,k.Format,!0);break;case"BBBB":_t=en(B.DayPeriods,R.Wide,k.Format,!0);break;case"BBBBB":_t=en(B.DayPeriods,R.Narrow,k.Format,!0);break;case"h":_t=Ut(U.Hours,1,-12);break;case"hh":_t=Ut(U.Hours,2,-12);break;case"H":_t=Ut(U.Hours,1);break;case"HH":_t=Ut(U.Hours,2);break;case"m":_t=Ut(U.Minutes,1);break;case"mm":_t=Ut(U.Minutes,2);break;case"s":_t=Ut(U.Seconds,1);break;case"ss":_t=Ut(U.Seconds,2);break;case"S":_t=Ut(U.FractionalSeconds,1);break;case"SS":_t=Ut(U.FractionalSeconds,2);break;case"SSS":_t=Ut(U.FractionalSeconds,3);break;case"Z":case"ZZ":case"ZZZ":_t=Wt(de.Short);break;case"ZZZZZ":_t=Wt(de.Extended);break;case"O":case"OO":case"OOO":case"z":case"zz":case"zzz":_t=Wt(de.ShortGMT);break;case"OOOO":case"ZZZZ":case"zzzz":_t=Wt(de.Long);break;default:return null}return xt[me]=_t,_t}(mi);Ni+=Gn?Gn(Ht,Ve,bi):"''"===mi?"'":mi.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),Ni}function Ie(me,_t,Ve){const ut=new Date(0);return ut.setFullYear(me,_t,Ve),ut.setHours(0,0,0),ut}function Ne(me,_t){const Ve=function Y(me){return(0,e.cg1)(me)[e.wAp.LocaleId]}(me);if(mt[Ve]=mt[Ve]||{},mt[Ve][_t])return mt[Ve][_t];let ut="";switch(_t){case"shortDate":ut=re(me,$.Short);break;case"mediumDate":ut=re(me,$.Medium);break;case"longDate":ut=re(me,$.Long);break;case"fullDate":ut=re(me,$.Full);break;case"shortTime":ut=be(me,$.Short);break;case"mediumTime":ut=be(me,$.Medium);break;case"longTime":ut=be(me,$.Long);break;case"fullTime":ut=be(me,$.Full);break;case"short":const Ht=Ne(me,"shortTime"),rn=Ne(me,"shortDate");ut=pt(le(me,$.Short),[Ht,rn]);break;case"medium":const an=Ne(me,"mediumTime"),An=Ne(me,"mediumDate");ut=pt(le(me,$.Medium),[an,An]);break;case"long":const bi=Ne(me,"longTime"),Ni=Ne(me,"longDate");ut=pt(le(me,$.Long),[bi,Ni]);break;case"full":const mi=Ne(me,"fullTime"),Gn=Ne(me,"fullDate");ut=pt(le(me,$.Full),[mi,Gn])}return ut&&(mt[Ve][_t]=ut),ut}function pt(me,_t){return _t&&(me=me.replace(/\{([^}]+)}/g,function(Ve,ut){return null!=_t&&ut in _t?_t[ut]:Ve})),me}function Dt(me,_t,Ve="-",ut,Ht){let rn="";(me<0||Ht&&me<=0)&&(Ht?me=1-me:(me=-me,rn=Ve));let an=String(me);for(;an.length<_t;)an="0"+an;return ut&&(an=an.slice(an.length-_t)),rn+an}function Ut(me,_t,Ve=0,ut=!1,Ht=!1){return function(rn,an){let An=function qt(me,_t){switch(me){case U.FullYear:return _t.getFullYear();case U.Month:return _t.getMonth();case U.Date:return _t.getDate();case U.Hours:return _t.getHours();case U.Minutes:return _t.getMinutes();case U.Seconds:return _t.getSeconds();case U.FractionalSeconds:return _t.getMilliseconds();case U.Day:return _t.getDay();default:throw new Error(`Unknown DateType value "${me}".`)}}(me,rn);if((Ve>0||An>-Ve)&&(An+=Ve),me===U.Hours)0===An&&-12===Ve&&(An=12);else if(me===U.FractionalSeconds)return function Lt(me,_t){return Dt(me,3).substring(0,_t)}(An,_t);const bi=ce(an,W.MinusSign);return Dt(An,_t,bi,ut,Ht)}}function en(me,_t,Ve=k.Format,ut=!1){return function(Ht,rn){return function cn(me,_t,Ve,ut,Ht,rn){switch(Ve){case B.Months:return function K(me,_t,Ve){const ut=(0,e.cg1)(me),rn=Re([ut[e.wAp.MonthsFormat],ut[e.wAp.MonthsStandalone]],_t);return Re(rn,Ve)}(_t,Ht,ut)[me.getMonth()];case B.Days:return function V(me,_t,Ve){const ut=(0,e.cg1)(me),rn=Re([ut[e.wAp.DaysFormat],ut[e.wAp.DaysStandalone]],_t);return Re(rn,Ve)}(_t,Ht,ut)[me.getDay()];case B.DayPeriods:const an=me.getHours(),An=me.getMinutes();if(rn){const Ni=function ve(me){const _t=(0,e.cg1)(me);return q(_t),(_t[e.wAp.ExtraData][2]||[]).map(ut=>"string"==typeof ut?ct(ut):[ct(ut[0]),ct(ut[1])])}(_t),mi=function ee(me,_t,Ve){const ut=(0,e.cg1)(me);q(ut);const rn=Re([ut[e.wAp.ExtraData][0],ut[e.wAp.ExtraData][1]],_t)||[];return Re(rn,Ve)||[]}(_t,Ht,ut),Gn=Ni.findIndex(Ki=>{if(Array.isArray(Ki)){const[Fn,Zi]=Ki,Vo=an>=Fn.hours&&An>=Fn.minutes,Ko=an0?Math.floor(Ht/60):Math.ceil(Ht/60);switch(me){case de.Short:return(Ht>=0?"+":"")+Dt(an,2,rn)+Dt(Math.abs(Ht%60),2,rn);case de.ShortGMT:return"GMT"+(Ht>=0?"+":"")+Dt(an,1,rn);case de.Long:return"GMT"+(Ht>=0?"+":"")+Dt(an,2,rn)+":"+Dt(Math.abs(Ht%60),2,rn);case de.Extended:return 0===ut?"Z":(Ht>=0?"+":"")+Dt(an,2,rn)+":"+Dt(Math.abs(Ht%60),2,rn);default:throw new Error(`Unknown zone width "${me}"`)}}}const Vt=0,st=4;function et(me){return Ie(me.getFullYear(),me.getMonth(),me.getDate()+(st-me.getDay()))}function It(me,_t=!1){return function(Ve,ut){let Ht;if(_t){const rn=new Date(Ve.getFullYear(),Ve.getMonth(),1).getDay()-1,an=Ve.getDate();Ht=1+Math.floor((an+rn)/7)}else{const rn=et(Ve),an=function He(me){const _t=Ie(me,Vt,1).getDay();return Ie(me,0,1+(_t<=st?st:st+7)-_t)}(rn.getFullYear()),An=rn.getTime()-an.getTime();Ht=1+Math.round(An/6048e5)}return Dt(Ht,me,ce(ut,W.MinusSign))}}function Ot(me,_t=!1){return function(Ve,ut){return Dt(et(Ve).getFullYear(),me,ce(ut,W.MinusSign),_t)}}const xt={};function ke(me,_t){me=me.replace(/:/g,"");const Ve=Date.parse("Jan 01, 1970 00:00:00 "+me)/6e4;return isNaN(Ve)?_t:Ve}function $e(me){return me instanceof Date&&!isNaN(me.valueOf())}const Ue=/^(\d+)?\.((\d+)(-(\d+))?)?$/,wt=22,De=".",Pe="0",Je=";",Ge=",",Ke="#";function b(me,_t,Ve,ut,Ht,rn,an=!1){let An="",bi=!1;if(isFinite(me)){let Ni=function Ce(me){let ut,Ht,rn,an,An,_t=Math.abs(me)+"",Ve=0;for((Ht=_t.indexOf(De))>-1&&(_t=_t.replace(De,"")),(rn=_t.search(/e/i))>0?(Ht<0&&(Ht=rn),Ht+=+_t.slice(rn+1),_t=_t.substring(0,rn)):Ht<0&&(Ht=_t.length),rn=0;_t.charAt(rn)===Pe;rn++);if(rn===(An=_t.length))ut=[0],Ht=1;else{for(An--;_t.charAt(An)===Pe;)An--;for(Ht-=rn,ut=[],an=0;rn<=An;rn++,an++)ut[an]=Number(_t.charAt(rn))}return Ht>wt&&(ut=ut.splice(0,wt-1),Ve=Ht-1,Ht=1),{digits:ut,exponent:Ve,integerLen:Ht}}(me);an&&(Ni=function he(me){if(0===me.digits[0])return me;const _t=me.digits.length-me.integerLen;return me.exponent?me.exponent+=2:(0===_t?me.digits.push(0,0):1===_t&&me.digits.push(0),me.integerLen+=2),me}(Ni));let mi=_t.minInt,Gn=_t.minFrac,Ki=_t.maxFrac;if(rn){const wo=rn.match(Ue);if(null===wo)throw new Error(`${rn} is not a valid digit info`);const gs=wo[1],ni=wo[3],Es=wo[5];null!=gs&&(mi=Ft(gs)),null!=ni&&(Gn=Ft(ni)),null!=Es?Ki=Ft(Es):null!=ni&&Gn>Ki&&(Ki=Gn)}!function bt(me,_t,Ve){if(_t>Ve)throw new Error(`The minimum number of digits after fraction (${_t}) is higher than the maximum (${Ve}).`);let ut=me.digits,Ht=ut.length-me.integerLen;const rn=Math.min(Math.max(_t,Ht),Ve);let an=rn+me.integerLen,An=ut[an];if(an>0){ut.splice(Math.max(me.integerLen,an));for(let Gn=an;Gn=5)if(an-1<0){for(let Gn=0;Gn>an;Gn--)ut.unshift(0),me.integerLen++;ut.unshift(1),me.integerLen++}else ut[an-1]++;for(;Ht=Ni?Zi.pop():bi=!1),Ki>=10?1:0},0);mi&&(ut.unshift(mi),me.integerLen++)}(Ni,Gn,Ki);let Fn=Ni.digits,Zi=Ni.integerLen;const Vo=Ni.exponent;let Ko=[];for(bi=Fn.every(wo=>!wo);Zi0?Ko=Fn.splice(Zi,Fn.length):(Ko=Fn,Fn=[0]);const Ms=[];for(Fn.length>=_t.lgSize&&Ms.unshift(Fn.splice(-_t.lgSize,Fn.length).join(""));Fn.length>_t.gSize;)Ms.unshift(Fn.splice(-_t.gSize,Fn.length).join(""));Fn.length&&Ms.unshift(Fn.join("")),An=Ms.join(ce(Ve,ut)),Ko.length&&(An+=ce(Ve,Ht)+Ko.join("")),Vo&&(An+=ce(Ve,W.Exponential)+"+"+Vo)}else An=ce(Ve,W.Infinity);return An=me<0&&!bi?_t.negPre+An+_t.negSuf:_t.posPre+An+_t.posSuf,An}function j(me,_t,Ve){return b(me,L(Q(_t,S.Decimal),ce(_t,W.MinusSign)),_t,W.Group,W.Decimal,Ve)}function L(me,_t="-"){const Ve={minInt:1,minFrac:0,maxFrac:0,posPre:"",posSuf:"",negPre:"",negSuf:"",gSize:0,lgSize:0},ut=me.split(Je),Ht=ut[0],rn=ut[1],an=-1!==Ht.indexOf(De)?Ht.split(De):[Ht.substring(0,Ht.lastIndexOf(Pe)+1),Ht.substring(Ht.lastIndexOf(Pe)+1)],An=an[0],bi=an[1]||"";Ve.posPre=An.substring(0,An.indexOf(Ke));for(let mi=0;mi{class me{constructor(Ve,ut,Ht,rn){this._iterableDiffers=Ve,this._keyValueDiffers=ut,this._ngEl=Ht,this._renderer=rn,this.initialClasses=bn,this.stateMap=new Map}set klass(Ve){this.initialClasses=null!=Ve?Ve.trim().split(En):bn}set ngClass(Ve){this.rawClass="string"==typeof Ve?Ve.trim().split(En):Ve}ngDoCheck(){for(const ut of this.initialClasses)this._updateState(ut,!0);const Ve=this.rawClass;if(Array.isArray(Ve)||Ve instanceof Set)for(const ut of Ve)this._updateState(ut,!0);else if(null!=Ve)for(const ut of Object.keys(Ve))this._updateState(ut,!!Ve[ut]);this._applyStateDiff()}_updateState(Ve,ut){const Ht=this.stateMap.get(Ve);void 0!==Ht?(Ht.enabled!==ut&&(Ht.changed=!0,Ht.enabled=ut),Ht.touched=!0):this.stateMap.set(Ve,{enabled:ut,changed:!0,touched:!0})}_applyStateDiff(){for(const Ve of this.stateMap){const ut=Ve[0],Ht=Ve[1];Ht.changed?(this._toggleClass(ut,Ht.enabled),Ht.changed=!1):Ht.touched||(Ht.enabled&&this._toggleClass(ut,!1),this.stateMap.delete(ut)),Ht.touched=!1}}_toggleClass(Ve,ut){(Ve=Ve.trim()).length>0&&Ve.split(En).forEach(Ht=>{ut?this._renderer.addClass(this._ngEl.nativeElement,Ht):this._renderer.removeClass(this._ngEl.nativeElement,Ht)})}static#e=this.\u0275fac=function(ut){return new(ut||me)(e.Y36(e.ZZ4),e.Y36(e.aQg),e.Y36(e.SBq),e.Y36(e.Qsj))};static#t=this.\u0275dir=e.lG2({type:me,selectors:[["","ngClass",""]],inputs:{klass:["class","klass"],ngClass:"ngClass"},standalone:!0})}return me})();class Wn{constructor(_t,Ve,ut,Ht){this.$implicit=_t,this.ngForOf=Ve,this.index=ut,this.count=Ht}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}let ci=(()=>{class me{set ngForOf(Ve){this._ngForOf=Ve,this._ngForOfDirty=!0}set ngForTrackBy(Ve){this._trackByFn=Ve}get ngForTrackBy(){return this._trackByFn}constructor(Ve,ut,Ht){this._viewContainer=Ve,this._template=ut,this._differs=Ht,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}set ngForTemplate(Ve){Ve&&(this._template=Ve)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const Ve=this._ngForOf;!this._differ&&Ve&&(this._differ=this._differs.find(Ve).create(this.ngForTrackBy))}if(this._differ){const Ve=this._differ.diff(this._ngForOf);Ve&&this._applyChanges(Ve)}}_applyChanges(Ve){const ut=this._viewContainer;Ve.forEachOperation((Ht,rn,an)=>{if(null==Ht.previousIndex)ut.createEmbeddedView(this._template,new Wn(Ht.item,this._ngForOf,-1,-1),null===an?void 0:an);else if(null==an)ut.remove(null===rn?void 0:rn);else if(null!==rn){const An=ut.get(rn);ut.move(An,an),ri(An,Ht)}});for(let Ht=0,rn=ut.length;Ht{ri(ut.get(Ht.currentIndex),Ht)})}static ngTemplateContextGuard(Ve,ut){return!0}static#e=this.\u0275fac=function(ut){return new(ut||me)(e.Y36(e.s_b),e.Y36(e.Rgc),e.Y36(e.ZZ4))};static#t=this.\u0275dir=e.lG2({type:me,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"},standalone:!0})}return me})();function ri(me,_t){me.context.$implicit=_t.item}let hi=(()=>{class me{constructor(Ve,ut){this._viewContainer=Ve,this._context=new fi,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=ut}set ngIf(Ve){this._context.$implicit=this._context.ngIf=Ve,this._updateView()}set ngIfThen(Ve){zi("ngIfThen",Ve),this._thenTemplateRef=Ve,this._thenViewRef=null,this._updateView()}set ngIfElse(Ve){zi("ngIfElse",Ve),this._elseTemplateRef=Ve,this._elseViewRef=null,this._updateView()}_updateView(){this._context.$implicit?this._thenViewRef||(this._viewContainer.clear(),this._elseViewRef=null,this._thenTemplateRef&&(this._thenViewRef=this._viewContainer.createEmbeddedView(this._thenTemplateRef,this._context))):this._elseViewRef||(this._viewContainer.clear(),this._thenViewRef=null,this._elseTemplateRef&&(this._elseViewRef=this._viewContainer.createEmbeddedView(this._elseTemplateRef,this._context)))}static ngTemplateContextGuard(Ve,ut){return!0}static#e=this.\u0275fac=function(ut){return new(ut||me)(e.Y36(e.s_b),e.Y36(e.Rgc))};static#t=this.\u0275dir=e.lG2({type:me,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"},standalone:!0})}return me})();class fi{constructor(){this.$implicit=null,this.ngIf=null}}function zi(me,_t){if(_t&&!_t.createEmbeddedView)throw new Error(`${me} must be a TemplateRef, but received '${(0,e.AaK)(_t)}'.`)}class Oi{constructor(_t,Ve){this._viewContainerRef=_t,this._templateRef=Ve,this._created=!1}create(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)}destroy(){this._created=!1,this._viewContainerRef.clear()}enforceState(_t){_t&&!this._created?this.create():!_t&&this._created&&this.destroy()}}let ei=(()=>{class me{constructor(){this._defaultViews=[],this._defaultUsed=!1,this._caseCount=0,this._lastCaseCheckIndex=0,this._lastCasesMatched=!1}set ngSwitch(Ve){this._ngSwitch=Ve,0===this._caseCount&&this._updateDefaultCases(!0)}_addCase(){return this._caseCount++}_addDefault(Ve){this._defaultViews.push(Ve)}_matchCase(Ve){const ut=Ve==this._ngSwitch;return this._lastCasesMatched=this._lastCasesMatched||ut,this._lastCaseCheckIndex++,this._lastCaseCheckIndex===this._caseCount&&(this._updateDefaultCases(!this._lastCasesMatched),this._lastCaseCheckIndex=0,this._lastCasesMatched=!1),ut}_updateDefaultCases(Ve){if(this._defaultViews.length>0&&Ve!==this._defaultUsed){this._defaultUsed=Ve;for(const ut of this._defaultViews)ut.enforceState(Ve)}}static#e=this.\u0275fac=function(ut){return new(ut||me)};static#t=this.\u0275dir=e.lG2({type:me,selectors:[["","ngSwitch",""]],inputs:{ngSwitch:"ngSwitch"},standalone:!0})}return me})(),po=(()=>{class me{constructor(Ve,ut,Ht){this.ngSwitch=Ht,Ht._addCase(),this._view=new Oi(Ve,ut)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}static#e=this.\u0275fac=function(ut){return new(ut||me)(e.Y36(e.s_b),e.Y36(e.Rgc),e.Y36(ei,9))};static#t=this.\u0275dir=e.lG2({type:me,selectors:[["","ngSwitchCase",""]],inputs:{ngSwitchCase:"ngSwitchCase"},standalone:!0})}return me})(),oo=(()=>{class me{constructor(Ve,ut,Ht){Ht._addDefault(new Oi(Ve,ut))}static#e=this.\u0275fac=function(ut){return new(ut||me)(e.Y36(e.s_b),e.Y36(e.Rgc),e.Y36(ei,9))};static#t=this.\u0275dir=e.lG2({type:me,selectors:[["","ngSwitchDefault",""]],standalone:!0})}return me})(),$i=(()=>{class me{constructor(Ve,ut,Ht){this._ngEl=Ve,this._differs=ut,this._renderer=Ht,this._ngStyle=null,this._differ=null}set ngStyle(Ve){this._ngStyle=Ve,!this._differ&&Ve&&(this._differ=this._differs.find(Ve).create())}ngDoCheck(){if(this._differ){const Ve=this._differ.diff(this._ngStyle);Ve&&this._applyChanges(Ve)}}_setStyle(Ve,ut){const[Ht,rn]=Ve.split("."),an=-1===Ht.indexOf("-")?void 0:e.JOm.DashCase;null!=ut?this._renderer.setStyle(this._ngEl.nativeElement,Ht,rn?`${ut}${rn}`:ut,an):this._renderer.removeStyle(this._ngEl.nativeElement,Ht,an)}_applyChanges(Ve){Ve.forEachRemovedItem(ut=>this._setStyle(ut.key,null)),Ve.forEachAddedItem(ut=>this._setStyle(ut.key,ut.currentValue)),Ve.forEachChangedItem(ut=>this._setStyle(ut.key,ut.currentValue))}static#e=this.\u0275fac=function(ut){return new(ut||me)(e.Y36(e.SBq),e.Y36(e.aQg),e.Y36(e.Qsj))};static#t=this.\u0275dir=e.lG2({type:me,selectors:[["","ngStyle",""]],inputs:{ngStyle:"ngStyle"},standalone:!0})}return me})(),Qi=(()=>{class me{constructor(Ve){this._viewContainerRef=Ve,this._viewRef=null,this.ngTemplateOutletContext=null,this.ngTemplateOutlet=null,this.ngTemplateOutletInjector=null}ngOnChanges(Ve){if(Ve.ngTemplateOutlet||Ve.ngTemplateOutletInjector){const ut=this._viewContainerRef;if(this._viewRef&&ut.remove(ut.indexOf(this._viewRef)),this.ngTemplateOutlet){const{ngTemplateOutlet:Ht,ngTemplateOutletContext:rn,ngTemplateOutletInjector:an}=this;this._viewRef=ut.createEmbeddedView(Ht,rn,an?{injector:an}:void 0)}else this._viewRef=null}else this._viewRef&&Ve.ngTemplateOutletContext&&this.ngTemplateOutletContext&&(this._viewRef.context=this.ngTemplateOutletContext)}static#e=this.\u0275fac=function(ut){return new(ut||me)(e.Y36(e.s_b))};static#t=this.\u0275dir=e.lG2({type:me,selectors:[["","ngTemplateOutlet",""]],inputs:{ngTemplateOutletContext:"ngTemplateOutletContext",ngTemplateOutlet:"ngTemplateOutlet",ngTemplateOutletInjector:"ngTemplateOutletInjector"},standalone:!0,features:[e.TTD]})}return me})();function wi(me,_t){return new e.vHH(2100,!1)}class Xi{createSubscription(_t,Ve){return(0,e.rg0)(()=>_t.subscribe({next:Ve,error:ut=>{throw ut}}))}dispose(_t){(0,e.rg0)(()=>_t.unsubscribe())}}class Ei{createSubscription(_t,Ve){return _t.then(Ve,ut=>{throw ut})}dispose(_t){}}const Hi=new Ei,qi=new Xi;let Pi=(()=>{class me{constructor(Ve){this._latestValue=null,this._subscription=null,this._obj=null,this._strategy=null,this._ref=Ve}ngOnDestroy(){this._subscription&&this._dispose(),this._ref=null}transform(Ve){return this._obj?Ve!==this._obj?(this._dispose(),this.transform(Ve)):this._latestValue:(Ve&&this._subscribe(Ve),this._latestValue)}_subscribe(Ve){this._obj=Ve,this._strategy=this._selectStrategy(Ve),this._subscription=this._strategy.createSubscription(Ve,ut=>this._updateLatestValue(Ve,ut))}_selectStrategy(Ve){if((0,e.QGY)(Ve))return Hi;if((0,e.F4k)(Ve))return qi;throw wi()}_dispose(){this._strategy.dispose(this._subscription),this._latestValue=null,this._subscription=null,this._obj=null}_updateLatestValue(Ve,ut){Ve===this._obj&&(this._latestValue=ut,this._ref.markForCheck())}static#e=this.\u0275fac=function(ut){return new(ut||me)(e.Y36(e.sBO,16))};static#t=this.\u0275pipe=e.Yjl({name:"async",type:me,pure:!1,standalone:!0})}return me})(),Bn=(()=>{class me{transform(Ve){if(null==Ve)return null;if("string"!=typeof Ve)throw wi();return Ve.toUpperCase()}static#e=this.\u0275fac=function(ut){return new(ut||me)};static#t=this.\u0275pipe=e.Yjl({name:"uppercase",type:me,pure:!0,standalone:!0})}return me})(),Ln=(()=>{class me{transform(Ve){return JSON.stringify(Ve,null,2)}static#e=this.\u0275fac=function(ut){return new(ut||me)};static#t=this.\u0275pipe=e.Yjl({name:"json",type:me,pure:!1,standalone:!0})}return me})(),gt=(()=>{class me{constructor(Ve){this._locale=Ve}transform(Ve,ut,Ht){if(!Kt(Ve))return null;Ht=Ht||this._locale;try{return j(ln(Ve),Ht,ut)}catch(rn){throw wi()}}static#e=this.\u0275fac=function(ut){return new(ut||me)(e.Y36(e.soG,16))};static#t=this.\u0275pipe=e.Yjl({name:"number",type:me,pure:!0,standalone:!0})}return me})(),Nt=(()=>{class me{constructor(Ve,ut="USD"){this._locale=Ve,this._defaultCurrencyCode=ut}transform(Ve,ut=this._defaultCurrencyCode,Ht="symbol",rn,an){if(!Kt(Ve))return null;an=an||this._locale,"boolean"==typeof Ht&&(Ht=Ht?"symbol":"code");let An=ut||this._defaultCurrencyCode;"code"!==Ht&&(An="symbol"===Ht||"symbol-narrow"===Ht?function Ae(me,_t,Ve="en"){const ut=function Me(me){return(0,e.cg1)(me)[e.wAp.Currencies]}(Ve)[me]||P[me]||[],Ht=ut[1];return"narrow"===_t&&"string"==typeof Ht?Ht:ut[0]||me}(An,"symbol"===Ht?"wide":"narrow",an):Ht);try{return function N(me,_t,Ve,ut,Ht){const an=L(Q(_t,S.Currency),ce(_t,W.MinusSign));return an.minFrac=function je(me){let _t;const Ve=P[me];return Ve&&(_t=Ve[2]),"number"==typeof _t?_t:2}(ut),an.maxFrac=an.minFrac,b(me,an,_t,W.CurrencyGroup,W.CurrencyDecimal,Ht).replace("\xa4",Ve).replace("\xa4","").trim()}(ln(Ve),an,An,ut,rn)}catch(bi){throw wi()}}static#e=this.\u0275fac=function(ut){return new(ut||me)(e.Y36(e.soG,16),e.Y36(e.EJc,16))};static#t=this.\u0275pipe=e.Yjl({name:"currency",type:me,pure:!0,standalone:!0})}return me})();function Kt(me){return!(null==me||""===me||me!=me)}function ln(me){if("string"==typeof me&&!isNaN(Number(me)-parseFloat(me)))return Number(me);if("number"!=typeof me)throw new Error(`${me} is not a number`);return me}let zn=(()=>{class me{transform(Ve,ut,Ht){if(null==Ve)return null;if(!this.supports(Ve))throw wi();return Ve.slice(ut,Ht)}supports(Ve){return"string"==typeof Ve||Array.isArray(Ve)}static#e=this.\u0275fac=function(ut){return new(ut||me)};static#t=this.\u0275pipe=e.Yjl({name:"slice",type:me,pure:!1,standalone:!0})}return me})(),Qn=(()=>{class me{static#e=this.\u0275fac=function(ut){return new(ut||me)};static#t=this.\u0275mod=e.oAB({type:me});static#n=this.\u0275inj=e.cJS({})}return me})();const ui="browser",eo="server";function go(me){return me===ui}function hs(me){return me===eo}let so=(()=>{class me{static#e=this.\u0275prov=(0,e.Yz7)({token:me,providedIn:"root",factory:()=>new ro((0,e.LFG)(C),window)})}return me})();class ro{constructor(_t,Ve){this.document=_t,this.window=Ve,this.offset=()=>[0,0]}setOffset(_t){this.offset=Array.isArray(_t)?()=>_t:_t}getScrollPosition(){return this.supportsScrolling()?[this.window.pageXOffset,this.window.pageYOffset]:[0,0]}scrollToPosition(_t){this.supportsScrolling()&&this.window.scrollTo(_t[0],_t[1])}scrollToAnchor(_t){if(!this.supportsScrolling())return;const Ve=function So(me,_t){const Ve=me.getElementById(_t)||me.getElementsByName(_t)[0];if(Ve)return Ve;if("function"==typeof me.createTreeWalker&&me.body&&"function"==typeof me.body.attachShadow){const ut=me.createTreeWalker(me.body,NodeFilter.SHOW_ELEMENT);let Ht=ut.currentNode;for(;Ht;){const rn=Ht.shadowRoot;if(rn){const an=rn.getElementById(_t)||rn.querySelector(`[name="${_t}"]`);if(an)return an}Ht=ut.nextNode()}}return null}(this.document,_t);Ve&&(this.scrollToElement(Ve),Ve.focus())}setHistoryScrollRestoration(_t){this.supportsScrolling()&&(this.window.history.scrollRestoration=_t)}scrollToElement(_t){const Ve=_t.getBoundingClientRect(),ut=Ve.left+this.window.pageXOffset,Ht=Ve.top+this.window.pageYOffset,rn=this.offset();this.window.scrollTo(ut-rn[0],Ht-rn[1])}supportsScrolling(){try{return!!this.window&&!!this.window.scrollTo&&"pageXOffset"in this.window}catch{return!1}}}class vo{}},69862:(nt,I,o)=>{"use strict";o.d(I,{JF:()=>Ue,LE:()=>_,QO:()=>G,TP:()=>q,UA:()=>te,WM:()=>g,Xk:()=>P,Zn:()=>K,aW:()=>ze,dt:()=>Y,eN:()=>fe,jN:()=>v});var e=o(65879),n=o(22096),t=o(7715),i=o(65592),l=o(76328),C=o(32181),E=o(37398),u=o(64716),z=o(94664),M=o(96814);class h{}class v{}class g{constructor(N){this.normalizedNames=new Map,this.lazyUpdate=null,N?"string"==typeof N?this.lazyInit=()=>{this.headers=new Map,N.split("\n").forEach(O=>{const j=O.indexOf(":");if(j>0){const L=O.slice(0,j),he=L.toLowerCase(),Ce=O.slice(j+1).trim();this.maybeSetNormalizedName(L,he),this.headers.has(he)?this.headers.get(he).push(Ce):this.headers.set(he,[Ce])}})}:typeof Headers<"u"&&N instanceof Headers?(this.headers=new Map,N.forEach((O,j)=>{this.setHeaderEntries(j,O)})):this.lazyInit=()=>{this.headers=new Map,Object.entries(N).forEach(([O,j])=>{this.setHeaderEntries(O,j)})}:this.headers=new Map}has(N){return this.init(),this.headers.has(N.toLowerCase())}get(N){this.init();const O=this.headers.get(N.toLowerCase());return O&&O.length>0?O[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(N){return this.init(),this.headers.get(N.toLowerCase())||null}append(N,O){return this.clone({name:N,value:O,op:"a"})}set(N,O){return this.clone({name:N,value:O,op:"s"})}delete(N,O){return this.clone({name:N,value:O,op:"d"})}maybeSetNormalizedName(N,O){this.normalizedNames.has(O)||this.normalizedNames.set(O,N)}init(){this.lazyInit&&(this.lazyInit instanceof g?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(N=>this.applyUpdate(N)),this.lazyUpdate=null))}copyFrom(N){N.init(),Array.from(N.headers.keys()).forEach(O=>{this.headers.set(O,N.headers.get(O)),this.normalizedNames.set(O,N.normalizedNames.get(O))})}clone(N){const O=new g;return O.lazyInit=this.lazyInit&&this.lazyInit instanceof g?this.lazyInit:this,O.lazyUpdate=(this.lazyUpdate||[]).concat([N]),O}applyUpdate(N){const O=N.name.toLowerCase();switch(N.op){case"a":case"s":let j=N.value;if("string"==typeof j&&(j=[j]),0===j.length)return;this.maybeSetNormalizedName(N.name,O);const L=("a"===N.op?this.headers.get(O):void 0)||[];L.push(...j),this.headers.set(O,L);break;case"d":const he=N.value;if(he){let Ce=this.headers.get(O);if(!Ce)return;Ce=Ce.filter(bt=>-1===he.indexOf(bt)),0===Ce.length?(this.headers.delete(O),this.normalizedNames.delete(O)):this.headers.set(O,Ce)}else this.headers.delete(O),this.normalizedNames.delete(O)}}setHeaderEntries(N,O){const j=(Array.isArray(O)?O:[O]).map(he=>he.toString()),L=N.toLowerCase();this.headers.set(L,j),this.maybeSetNormalizedName(N,L)}forEach(N){this.init(),Array.from(this.normalizedNames.keys()).forEach(O=>N(this.normalizedNames.get(O),this.headers.get(O)))}}class p{encodeKey(N){return x(N)}encodeValue(N){return x(N)}decodeKey(N){return decodeURIComponent(N)}decodeValue(N){return decodeURIComponent(N)}}const y=/%(\d[a-f0-9])/gi,T={40:"@","3A":":",24:"$","2C":",","3B":";","3D":"=","3F":"?","2F":"/"};function x(b){return encodeURIComponent(b).replace(y,(N,O)=>T[O]??N)}function D(b){return`${b}`}class _{constructor(N={}){if(this.updates=null,this.cloneFrom=null,this.encoder=N.encoder||new p,N.fromString){if(N.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function f(b,N){const O=new Map;return b.length>0&&b.replace(/^\?/,"").split("&").forEach(L=>{const he=L.indexOf("="),[Ce,bt]=-1==he?[N.decodeKey(L),""]:[N.decodeKey(L.slice(0,he)),N.decodeValue(L.slice(he+1))],Ft=O.get(Ce)||[];Ft.push(bt),O.set(Ce,Ft)}),O}(N.fromString,this.encoder)}else N.fromObject?(this.map=new Map,Object.keys(N.fromObject).forEach(O=>{const j=N.fromObject[O],L=Array.isArray(j)?j.map(D):[D(j)];this.map.set(O,L)})):this.map=null}has(N){return this.init(),this.map.has(N)}get(N){this.init();const O=this.map.get(N);return O?O[0]:null}getAll(N){return this.init(),this.map.get(N)||null}keys(){return this.init(),Array.from(this.map.keys())}append(N,O){return this.clone({param:N,value:O,op:"a"})}appendAll(N){const O=[];return Object.keys(N).forEach(j=>{const L=N[j];Array.isArray(L)?L.forEach(he=>{O.push({param:j,value:he,op:"a"})}):O.push({param:j,value:L,op:"a"})}),this.clone(O)}set(N,O){return this.clone({param:N,value:O,op:"s"})}delete(N,O){return this.clone({param:N,value:O,op:"d"})}toString(){return this.init(),this.keys().map(N=>{const O=this.encoder.encodeKey(N);return this.map.get(N).map(j=>O+"="+this.encoder.encodeValue(j)).join("&")}).filter(N=>""!==N).join("&")}clone(N){const O=new _({encoder:this.encoder});return O.cloneFrom=this.cloneFrom||this,O.updates=(this.updates||[]).concat(N),O}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(N=>this.map.set(N,this.cloneFrom.map.get(N))),this.updates.forEach(N=>{switch(N.op){case"a":case"s":const O=("a"===N.op?this.map.get(N.param):void 0)||[];O.push(D(N.value)),this.map.set(N.param,O);break;case"d":if(void 0===N.value){this.map.delete(N.param);break}{let j=this.map.get(N.param)||[];const L=j.indexOf(D(N.value));-1!==L&&j.splice(L,1),j.length>0?this.map.set(N.param,j):this.map.delete(N.param)}}}),this.cloneFrom=this.updates=null)}}class P{constructor(N){this.defaultValue=N}}class S{constructor(){this.map=new Map}set(N,O){return this.map.set(N,O),this}get(N){return this.map.has(N)||this.map.set(N,N.defaultValue()),this.map.get(N)}delete(N){return this.map.delete(N),this}has(N){return this.map.has(N)}keys(){return this.map.keys()}}function k(b){return typeof ArrayBuffer<"u"&&b instanceof ArrayBuffer}function R(b){return typeof Blob<"u"&&b instanceof Blob}function $(b){return typeof FormData<"u"&&b instanceof FormData}class ze{constructor(N,O,j,L){let he;if(this.url=O,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=N.toUpperCase(),function A(b){switch(b){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||L?(this.body=void 0!==j?j:null,he=L):he=j,he&&(this.reportProgress=!!he.reportProgress,this.withCredentials=!!he.withCredentials,he.responseType&&(this.responseType=he.responseType),he.headers&&(this.headers=he.headers),he.context&&(this.context=he.context),he.params&&(this.params=he.params)),this.headers||(this.headers=new g),this.context||(this.context=new S),this.params){const Ce=this.params.toString();if(0===Ce.length)this.urlWithParams=O;else{const bt=O.indexOf("?");this.urlWithParams=O+(-1===bt?"?":btvn.set(Dn,N.setHeaders[Dn]),Ft)),N.setParams&&(sn=Object.keys(N.setParams).reduce((vn,Dn)=>vn.set(Dn,N.setParams[Dn]),sn)),new ze(O,j,he,{params:sn,headers:Ft,context:pn,reportProgress:bt,responseType:L,withCredentials:Ce})}}var Y=function(b){return b[b.Sent=0]="Sent",b[b.UploadProgress=1]="UploadProgress",b[b.ResponseHeader=2]="ResponseHeader",b[b.DownloadProgress=3]="DownloadProgress",b[b.Response=4]="Response",b[b.User=5]="User",b}(Y||{});class G{constructor(N,O=200,j="OK"){this.headers=N.headers||new g,this.status=void 0!==N.status?N.status:O,this.statusText=N.statusText||j,this.url=N.url||null,this.ok=this.status>=200&&this.status<300}}class V extends G{constructor(N={}){super(N),this.type=Y.ResponseHeader}clone(N={}){return new V({headers:N.headers||this.headers,status:void 0!==N.status?N.status:this.status,statusText:N.statusText||this.statusText,url:N.url||this.url||void 0})}}class K extends G{constructor(N={}){super(N),this.type=Y.Response,this.body=void 0!==N.body?N.body:null}clone(N={}){return new K({body:void 0!==N.body?N.body:this.body,headers:N.headers||this.headers,status:void 0!==N.status?N.status:this.status,statusText:N.statusText||this.statusText,url:N.url||this.url||void 0})}}class te extends G{constructor(N){super(N,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?`Http failure during parsing for ${N.url||"(unknown url)"}`:`Http failure response for ${N.url||"(unknown url)"}: ${N.status} ${N.statusText}`,this.error=N.error||null}}function ne(b,N){return{body:N,headers:b.headers,context:b.context,observe:b.observe,params:b.params,reportProgress:b.reportProgress,responseType:b.responseType,withCredentials:b.withCredentials}}let fe=(()=>{class b{constructor(O){this.handler=O}request(O,j,L={}){let he;if(O instanceof ze)he=O;else{let Ft,sn;Ft=L.headers instanceof g?L.headers:new g(L.headers),L.params&&(sn=L.params instanceof _?L.params:new _({fromObject:L.params})),he=new ze(O,j,void 0!==L.body?L.body:null,{headers:Ft,context:L.context,params:sn,reportProgress:L.reportProgress,responseType:L.responseType||"json",withCredentials:L.withCredentials})}const Ce=(0,n.of)(he).pipe((0,l.b)(Ft=>this.handler.handle(Ft)));if(O instanceof ze||"events"===L.observe)return Ce;const bt=Ce.pipe((0,C.h)(Ft=>Ft instanceof K));switch(L.observe||"body"){case"body":switch(he.responseType){case"arraybuffer":return bt.pipe((0,E.U)(Ft=>{if(null!==Ft.body&&!(Ft.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return Ft.body}));case"blob":return bt.pipe((0,E.U)(Ft=>{if(null!==Ft.body&&!(Ft.body instanceof Blob))throw new Error("Response is not a Blob.");return Ft.body}));case"text":return bt.pipe((0,E.U)(Ft=>{if(null!==Ft.body&&"string"!=typeof Ft.body)throw new Error("Response is not a string.");return Ft.body}));default:return bt.pipe((0,E.U)(Ft=>Ft.body))}case"response":return bt;default:throw new Error(`Unreachable: unhandled observe type ${L.observe}}`)}}delete(O,j={}){return this.request("DELETE",O,j)}get(O,j={}){return this.request("GET",O,j)}head(O,j={}){return this.request("HEAD",O,j)}jsonp(O,j){return this.request("JSONP",O,{params:(new _).append(j,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(O,j={}){return this.request("OPTIONS",O,j)}patch(O,j,L={}){return this.request("PATCH",O,ne(L,j))}post(O,j,L={}){return this.request("POST",O,ne(L,j))}put(O,j,L={}){return this.request("PUT",O,ne(L,j))}static#e=this.\u0275fac=function(j){return new(j||b)(e.LFG(h))};static#t=this.\u0275prov=e.Yz7({token:b,factory:b.\u0275fac})}return b})();function xe(b,N){return N(b)}function Me(b,N){return(O,j)=>N.intercept(O,{handle:L=>b(L,j)})}const q=new e.OlP(""),ve=new e.OlP(""),ee=new e.OlP("");function Be(){let b=null;return(N,O)=>{null===b&&(b=((0,e.f3M)(q,{optional:!0})??[]).reduceRight(Me,xe));const j=(0,e.f3M)(e.HDt),L=j.add();return b(N,O).pipe((0,u.x)(()=>j.remove(L)))}}let Re=(()=>{class b extends h{constructor(O,j){super(),this.backend=O,this.injector=j,this.chain=null,this.pendingTasks=(0,e.f3M)(e.HDt)}handle(O){if(null===this.chain){const L=Array.from(new Set([...this.injector.get(ve),...this.injector.get(ee,[])]));this.chain=L.reduceRight((he,Ce)=>function Ye(b,N,O){return(j,L)=>O.runInContext(()=>N(j,he=>b(he,L)))}(he,Ce,this.injector),xe)}const j=this.pendingTasks.add();return this.chain(O,L=>this.backend.handle(L)).pipe((0,u.x)(()=>this.pendingTasks.remove(j)))}static#e=this.\u0275fac=function(j){return new(j||b)(e.LFG(v),e.LFG(e.lqb))};static#t=this.\u0275prov=e.Yz7({token:b,factory:b.\u0275fac})}return b})();const Ie=/^\)\]\}',?\n/;let pt=(()=>{class b{constructor(O){this.xhrFactory=O}handle(O){if("JSONP"===O.method)throw new e.vHH(-2800,!1);const j=this.xhrFactory;return(j.\u0275loadImpl?(0,t.D)(j.\u0275loadImpl()):(0,n.of)(null)).pipe((0,z.w)(()=>new i.y(he=>{const Ce=j.build();if(Ce.open(O.method,O.urlWithParams),O.withCredentials&&(Ce.withCredentials=!0),O.headers.forEach((bn,Rn)=>Ce.setRequestHeader(bn,Rn.join(","))),O.headers.has("Accept")||Ce.setRequestHeader("Accept","application/json, text/plain, */*"),!O.headers.has("Content-Type")){const bn=O.detectContentTypeHeader();null!==bn&&Ce.setRequestHeader("Content-Type",bn)}if(O.responseType){const bn=O.responseType.toLowerCase();Ce.responseType="json"!==bn?bn:"text"}const bt=O.serializeBody();let Ft=null;const sn=()=>{if(null!==Ft)return Ft;const bn=Ce.statusText||"OK",Rn=new g(Ce.getAllResponseHeaders()),qn=function Ne(b){return"responseURL"in b&&b.responseURL?b.responseURL:/^X-Request-URL:/m.test(b.getAllResponseHeaders())?b.getResponseHeader("X-Request-URL"):null}(Ce)||O.url;return Ft=new V({headers:Rn,status:Ce.status,statusText:bn,url:qn}),Ft},pn=()=>{let{headers:bn,status:Rn,statusText:qn,url:si}=sn(),Wn=null;204!==Rn&&(Wn=typeof Ce.response>"u"?Ce.responseText:Ce.response),0===Rn&&(Rn=Wn?200:0);let ci=Rn>=200&&Rn<300;if("json"===O.responseType&&"string"==typeof Wn){const ri=Wn;Wn=Wn.replace(Ie,"");try{Wn=""!==Wn?JSON.parse(Wn):null}catch(di){Wn=ri,ci&&(ci=!1,Wn={error:di,text:Wn})}}ci?(he.next(new K({body:Wn,headers:bn,status:Rn,statusText:qn,url:si||void 0})),he.complete()):he.error(new te({error:Wn,headers:bn,status:Rn,statusText:qn,url:si||void 0}))},vn=bn=>{const{url:Rn}=sn(),qn=new te({error:bn,status:Ce.status||0,statusText:Ce.statusText||"Unknown Error",url:Rn||void 0});he.error(qn)};let Dn=!1;const Mn=bn=>{Dn||(he.next(sn()),Dn=!0);let Rn={type:Y.DownloadProgress,loaded:bn.loaded};bn.lengthComputable&&(Rn.total=bn.total),"text"===O.responseType&&Ce.responseText&&(Rn.partialText=Ce.responseText),he.next(Rn)},En=bn=>{let Rn={type:Y.UploadProgress,loaded:bn.loaded};bn.lengthComputable&&(Rn.total=bn.total),he.next(Rn)};return Ce.addEventListener("load",pn),Ce.addEventListener("error",vn),Ce.addEventListener("timeout",vn),Ce.addEventListener("abort",vn),O.reportProgress&&(Ce.addEventListener("progress",Mn),null!==bt&&Ce.upload&&Ce.upload.addEventListener("progress",En)),Ce.send(bt),he.next({type:Y.Sent}),()=>{Ce.removeEventListener("error",vn),Ce.removeEventListener("abort",vn),Ce.removeEventListener("load",pn),Ce.removeEventListener("timeout",vn),O.reportProgress&&(Ce.removeEventListener("progress",Mn),null!==bt&&Ce.upload&&Ce.upload.removeEventListener("progress",En)),Ce.readyState!==Ce.DONE&&Ce.abort()}})))}static#e=this.\u0275fac=function(j){return new(j||b)(e.LFG(M.JF))};static#t=this.\u0275prov=e.Yz7({token:b,factory:b.\u0275fac})}return b})();const Dt=new e.OlP("XSRF_ENABLED"),Ut=new e.OlP("XSRF_COOKIE_NAME",{providedIn:"root",factory:()=>"XSRF-TOKEN"}),en=new e.OlP("XSRF_HEADER_NAME",{providedIn:"root",factory:()=>"X-XSRF-TOKEN"});class cn{}let Wt=(()=>{class b{constructor(O,j,L){this.doc=O,this.platform=j,this.cookieName=L,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const O=this.doc.cookie||"";return O!==this.lastCookieString&&(this.parseCount++,this.lastToken=(0,M.Mx)(O,this.cookieName),this.lastCookieString=O),this.lastToken}static#e=this.\u0275fac=function(j){return new(j||b)(e.LFG(M.K0),e.LFG(e.Lbi),e.LFG(Ut))};static#t=this.\u0275prov=e.Yz7({token:b,factory:b.\u0275fac})}return b})();function Vt(b,N){const O=b.url.toLowerCase();if(!(0,e.f3M)(Dt)||"GET"===b.method||"HEAD"===b.method||O.startsWith("http://")||O.startsWith("https://"))return N(b);const j=(0,e.f3M)(cn).getToken(),L=(0,e.f3M)(en);return null!=j&&!b.headers.has(L)&&(b=b.clone({headers:b.headers.set(L,j)})),N(b)}var He=function(b){return b[b.Interceptors=0]="Interceptors",b[b.LegacyInterceptors=1]="LegacyInterceptors",b[b.CustomXsrfConfiguration=2]="CustomXsrfConfiguration",b[b.NoXsrfProtection=3]="NoXsrfProtection",b[b.JsonpSupport=4]="JsonpSupport",b[b.RequestsMadeViaParent=5]="RequestsMadeViaParent",b[b.Fetch=6]="Fetch",b}(He||{});function It(...b){const N=[fe,pt,Re,{provide:h,useExisting:Re},{provide:v,useExisting:pt},{provide:ve,useValue:Vt,multi:!0},{provide:Dt,useValue:!0},{provide:cn,useClass:Wt}];for(const O of b)N.push(...O.\u0275providers);return(0,e.MR2)(N)}const xt=new e.OlP("LEGACY_INTERCEPTOR_FN");function Qe(){return function et(b,N){return{\u0275kind:b,\u0275providers:N}}(He.LegacyInterceptors,[{provide:xt,useFactory:Be},{provide:ve,useExisting:xt,multi:!0}])}let Ue=(()=>{class b{static#e=this.\u0275fac=function(j){return new(j||b)};static#t=this.\u0275mod=e.oAB({type:b});static#n=this.\u0275inj=e.cJS({providers:[It(Qe())]})}return b})()},65879:(nt,I,o)=>{"use strict";o.d(I,{$8M:()=>J,$WT:()=>At,$Z:()=>c2,AFp:()=>Kd,ALo:()=>K4,AaK:()=>v,Akn:()=>lr,AsE:()=>dp,B6R:()=>Hi,BQk:()=>Eu,CHM:()=>Sr,CRH:()=>hg,Ckj:()=>Wh,DdM:()=>L4,DjV:()=>Vm,Dn7:()=>G4,DyG:()=>No,EJc:()=>M5,EiD:()=>Uh,EpF:()=>tm,F$t:()=>am,F4k:()=>nm,FYo:()=>c1,FiY:()=>gr,G48:()=>l7,Gf:()=>dg,GfV:()=>d1,GkF:()=>Q1,Gpc:()=>p,Gre:()=>Bm,HDt:()=>kg,HTZ:()=>V4,Hsn:()=>lm,Ikx:()=>up,JOm:()=>hc,JVY:()=>$f,JZr:()=>D,Jf7:()=>D1,KtG:()=>Or,L6k:()=>jf,LAX:()=>Zf,LFG:()=>Je,LMc:()=>F7,LSH:()=>Ec,Lbi:()=>Zd,Lck:()=>mv,MAs:()=>X2,MGl:()=>Du,MMx:()=>O4,MR2:()=>Vd,MT6:()=>Hm,NdJ:()=>q1,O4$:()=>fa,Ojb:()=>v0,OlP:()=>Ut,Oqu:()=>cp,P3R:()=>jh,PXZ:()=>X5,PiD:()=>Xr,Q6J:()=>Z1,QGY:()=>X1,QbO:()=>_0,Qsj:()=>A0,R0b:()=>Jo,RDi:()=>Bf,Rgc:()=>qc,SBq:()=>pl,Sil:()=>b5,Suo:()=>ug,TTD:()=>Gn,TgZ:()=>zu,Tol:()=>Mm,Udp:()=>rp,VKq:()=>F4,VuI:()=>R7,W1O:()=>gg,WD2:()=>mi,WFA:()=>ep,WLB:()=>B4,X6Q:()=>a7,XFs:()=>de,Xpm:()=>Ei,Xq5:()=>R2,Xts:()=>cl,Y36:()=>_l,YKP:()=>x4,YNc:()=>J2,Yjl:()=>Et,Yz7:()=>q,Z0I:()=>Re,ZZ4:()=>$p,_Bn:()=>b4,_UZ:()=>G1,_Vd:()=>hl,_c5:()=>E7,_uU:()=>wm,aQg:()=>jp,c2e:()=>Ng,cJS:()=>ee,cQ8:()=>np,cg1:()=>pp,d8E:()=>hp,dDg:()=>Z5,dqk:()=>pt,dwT:()=>m_,eBb:()=>Kf,eFA:()=>$g,eJc:()=>Op,ekj:()=>ap,eoX:()=>Vg,evT:()=>b1,f3M:()=>Ke,g9A:()=>n1,gHi:()=>fl,gM2:()=>Q4,h0i:()=>La,hGG:()=>D7,hij:()=>Su,iGM:()=>cg,ifc:()=>Ce,ip1:()=>Ag,jDz:()=>w4,kEZ:()=>H4,kL8:()=>Qm,kcU:()=>$l,ktI:()=>ml,lG2:()=>Bn,lcZ:()=>Z4,lqb:()=>rr,lri:()=>Bg,mCW:()=>Tc,n5z:()=>nc,n_E:()=>Au,oAB:()=>Ii,oJD:()=>Yh,oxw:()=>rm,pB0:()=>Jf,q3G:()=>ea,qFp:()=>B7,qLn:()=>Rr,qOj:()=>H1,qZA:()=>Tu,qzn:()=>Sa,rWj:()=>Hg,rg0:()=>rn,s9C:()=>tp,sBO:()=>c7,s_b:()=>Ru,soG:()=>Fu,tBr:()=>ds,tb:()=>Bp,tp0:()=>sc,uIk:()=>U1,vHH:()=>_,vpe:()=>ar,wAp:()=>wl,xi3:()=>J4,xp6:()=>a2,ynx:()=>Mu,z2F:()=>Nl,z3N:()=>_r,zSh:()=>Yd,zs3:()=>Xs});var e=o(78645),n=o(47394),t=o(65592),i=o(63019),l=o(65619),C=o(22096),E=o(63020),u=o(94664),z=o(93997);function M(s){for(let r in s)if(s[r]===M)return r;throw Error("Could not find renamed property on target object.")}function h(s,r){for(const a in r)r.hasOwnProperty(a)&&!s.hasOwnProperty(a)&&(s[a]=r[a])}function v(s){if("string"==typeof s)return s;if(Array.isArray(s))return"["+s.map(v).join(", ")+"]";if(null==s)return""+s;if(s.overriddenName)return`${s.overriddenName}`;if(s.name)return`${s.name}`;const r=s.toString();if(null==r)return""+r;const a=r.indexOf("\n");return-1===a?r:r.substring(0,a)}function g(s,r){return null==s||""===s?null===r?"":r:null==r||""===r?s:s+" "+r}const d=M({__forward_ref__:M});function p(s){return s.__forward_ref__=p,s.toString=function(){return v(this())},s}function f(s){return y(s)?s():s}function y(s){return"function"==typeof s&&s.hasOwnProperty(d)&&s.__forward_ref__===p}function T(s){return s&&!!s.\u0275providers}const D="https://g.co/ng/security#xss";class _ extends Error{constructor(r,a){super(function P(s,r){return`NG0${Math.abs(s)}${r?": "+r:""}`}(r,a)),this.code=r}}function S(s){return"string"==typeof s?s:null==s?"":String(s)}function W(s,r){throw new _(-201,!1)}function ie(s,r){null==s&&function ae(s,r,a,c){throw new Error(`ASSERTION ERROR: ${s}`+(null==c?"":` [Expected=> ${a} ${c} ${r} <=Actual]`))}(r,s,null,"!=")}function q(s){return{token:s.token,providedIn:s.providedIn||null,factory:s.factory,value:void 0}}function ee(s){return{providers:s.providers||[],imports:s.imports||[]}}function Be(s){return ct(s,je)||ct(s,mt)}function Re(s){return null!==Be(s)}function ct(s,r){return s.hasOwnProperty(r)?s[r]:null}function Mt(s){return s&&(s.hasOwnProperty(ot)||s.hasOwnProperty(we))?s[ot]:null}const je=M({\u0275prov:M}),ot=M({\u0275inj:M}),mt=M({ngInjectableDef:M}),we=M({ngInjectorDef:M});var de=function(s){return s[s.Default=0]="Default",s[s.Host=1]="Host",s[s.Self=2]="Self",s[s.SkipSelf=4]="SkipSelf",s[s.Optional=8]="Optional",s}(de||{});let U;function B(){return U}function Ee(s){const r=U;return U=s,r}function Ie(s,r,a){const c=Be(s);return c&&"root"==c.providedIn?void 0===c.value?c.value=c.factory():c.value:a&de.Optional?null:void 0!==r?r:void W(v(s))}const pt=globalThis;class Ut{constructor(r,a){this._desc=r,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof a?this.__NG_ELEMENT_ID__=a:void 0!==a&&(this.\u0275prov=q({token:this,providedIn:a.providedIn||"root",factory:a.factory}))}get multi(){return this}toString(){return`InjectionToken ${this._desc}`}}const Qe={},ke="__NG_DI_FLAG__",pe="ngTempTokenPath",ge=/\n/gm,$e="__source";let Ue;function De(s){const r=Ue;return Ue=s,r}function Pe(s,r=de.Default){if(void 0===Ue)throw new _(-203,!1);return null===Ue?Ie(s,void 0,r):Ue.get(s,r&de.Optional?null:void 0,r)}function Je(s,r=de.Default){return(B()||Pe)(f(s),r)}function Ke(s,r=de.Default){return Je(s,_e(r))}function _e(s){return typeof s>"u"||"number"==typeof s?s:0|(s.optional&&8)|(s.host&&1)|(s.self&&2)|(s.skipSelf&&4)}function it(s){const r=[];for(let a=0;ar){H=w-1;break}}}for(;ww?"":m[kt+1].toLowerCase();const Xt=8&c?Zt:null;if(Xt&&-1!==Rn(Xt,Xe,0)||2&c&&Xe!==Zt){if(ei(c))return!1;H=!0}}}}else{if(!H&&!ei(c)&&!ei(Te))return!1;if(H&&ei(Te))continue;H=!1,c=Te|1&c}}return ei(c)||H}function ei(s){return 0==(1&s)}function po(s,r,a,c){if(null===r)return-1;let m=0;if(c||!a){let w=!1;for(;m-1)for(a++;a0?'="'+se+'"':"")+"]"}else 8&c?m+="."+H:4&c&&(m+=" "+H);else""!==m&&!ei(H)&&(r+=Qi(w,m),m=""),c=H,w=w||!ei(c);a++}return""!==m&&(r+=Qi(w,m)),r}function Ei(s){return L(()=>{const r=gn(s),a={...r,decls:s.decls,vars:s.vars,template:s.template,consts:s.consts||null,ngContentSelectors:s.ngContentSelectors,onPush:s.changeDetection===he.OnPush,directiveDefs:null,pipeDefs:null,dependencies:r.standalone&&s.dependencies||null,getStandaloneInjector:null,signals:s.signals??!1,data:s.data||{},encapsulation:s.encapsulation||Ce.Emulated,styles:s.styles||Ft,_:null,schemas:s.schemas||null,tView:null,id:""};Ln(a);const c=s.dependencies;return a.directiveDefs=Sn(c,!1),a.pipeDefs=Sn(c,!0),a.id=function St(s){let r=0;const a=[s.selectors,s.ngContentSelectors,s.hostVars,s.hostAttrs,s.consts,s.vars,s.decls,s.encapsulation,s.standalone,s.signals,s.exportAs,JSON.stringify(s.inputs),JSON.stringify(s.outputs),Object.getOwnPropertyNames(s.type.prototype),!!s.contentQueries,!!s.viewQuery].join("|");for(const m of a)r=Math.imul(31,r)+m.charCodeAt(0)<<0;return r+=2147483648,"c"+r}(a),a})}function Hi(s,r,a){const c=s.\u0275cmp;c.directiveDefs=Sn(r,!1),c.pipeDefs=Sn(a,!0)}function qi(s){return un(s)||lt(s)}function Pi(s){return null!==s}function Ii(s){return L(()=>({type:s.type,bootstrap:s.bootstrap||Ft,declarations:s.declarations||Ft,imports:s.imports||Ft,exports:s.exports||Ft,transitiveCompileScopes:null,schemas:s.schemas||null,id:s.id||null}))}function oi(s,r){if(null==s)return bt;const a={};for(const c in s)if(s.hasOwnProperty(c)){let m=s[c],w=m;Array.isArray(m)&&(w=m[1],m=m[0]),a[m]=c,r&&(r[m]=w)}return a}function Bn(s){return L(()=>{const r=gn(s);return Ln(r),r})}function Et(s){return{type:s.type,name:s.name,factory:null,pure:!1!==s.pure,standalone:!0===s.standalone,onDestroy:s.type.prototype.ngOnDestroy||null}}function un(s){return s[sn]||null}function lt(s){return s[pn]||null}function Ct(s){return s[vn]||null}function At(s){const r=un(s)||lt(s)||Ct(s);return null!==r&&r.standalone}function Qt(s,r){const a=s[Dn]||null;if(!a&&!0===r)throw new Error(`Type ${v(s)} does not have '\u0275mod' property.`);return a}function gn(s){const r={};return{type:s.type,providersResolver:null,factory:null,hostBindings:s.hostBindings||null,hostVars:s.hostVars||0,hostAttrs:s.hostAttrs||null,contentQueries:s.contentQueries||null,declaredInputs:r,inputTransforms:null,inputConfig:s.inputs||bt,exportAs:s.exportAs||null,standalone:!0===s.standalone,signals:!0===s.signals,selectors:s.selectors||Ft,viewQuery:s.viewQuery||null,features:s.features||null,setInput:null,findHostDirectiveDefs:null,hostDirectives:null,inputs:oi(s.inputs,r),outputs:oi(s.outputs)}}function Ln(s){s.features?.forEach(r=>r(s))}function Sn(s,r){if(!s)return null;const a=r?Ct:qi;return()=>("function"==typeof s?s():s).map(c=>a(c)).filter(Pi)}const gt=0,We=1,Nt=2,Kt=3,ln=4,zn=5,kn=6,Qn=7,ui=8,eo=9,Ui=10,Un=11,go=12,hs=13,xo=14,Ti=15,qo=16,so=17,ro=18,So=19,ps=20,vo=21,ao=22,Oo=23,Wo=24,Jn=25,es=1,no=2,ji=7,Fi=9,Ai=11;function rt(s){return Array.isArray(s)&&"object"==typeof s[es]}function Gt(s){return Array.isArray(s)&&!0===s[es]}function Z(s){return 0!=(4&s.flags)}function dt(s){return s.componentOffset>-1}function vt(s){return 1==(1&s.flags)}function $t(s){return!!s.template}function yn(s){return 0!=(512&s[Nt])}function Co(s,r){return s.hasOwnProperty(Mn)?s[Mn]:null}let uo=null,Qo=!1;function Do(s){const r=uo;return uo=s,r}const ws={version:0,dirty:!1,producerNode:void 0,producerLastReadVersion:void 0,producerIndexOfThis:void 0,nextProducerIndex:0,liveConsumerNode:void 0,liveConsumerIndexOfThis:void 0,consumerAllowSignalWrites:!1,consumerIsAlwaysLive:!1,producerMustRecompute:()=>!1,producerRecomputeValue:()=>{},consumerMarkedDirty:()=>{}};function Ps(s){if(!zs(s)||s.dirty){if(!s.producerMustRecompute(s)&&!fn(s))return void(s.dirty=!1);s.producerRecomputeValue(s),s.dirty=!1}}function Yt(s){s.dirty=!0,function Ho(s){if(void 0===s.liveConsumerNode)return;const r=Qo;Qo=!0;try{for(const a of s.liveConsumerNode)a.dirty||Yt(a)}finally{Qo=r}}(s),s.consumerMarkedDirty?.(s)}function ms(s){return s&&(s.nextProducerIndex=0),Do(s)}function Pn(s,r){if(Do(r),s&&void 0!==s.producerNode&&void 0!==s.producerIndexOfThis&&void 0!==s.producerLastReadVersion){if(zs(s))for(let a=s.nextProducerIndex;as.nextProducerIndex;)s.producerNode.pop(),s.producerLastReadVersion.pop(),s.producerIndexOfThis.pop()}}function fn(s){js(s);for(let r=0;r0}function js(s){s.producerNode??=[],s.producerIndexOfThis??=[],s.producerLastReadVersion??=[]}let Ks=null;function rn(s){const r=Do(null);try{return s()}finally{Do(r)}}const An=()=>{},bi=(()=>({...ws,consumerIsAlwaysLive:!0,consumerAllowSignalWrites:!1,consumerMarkedDirty:s=>{s.schedule(s.ref)},hasRun:!1,cleanupFn:An}))();class mi{constructor(r,a,c){this.previousValue=r,this.currentValue=a,this.firstChange=c}isFirstChange(){return this.firstChange}}function Gn(){return Ki}function Ki(s){return s.type.prototype.ngOnChanges&&(s.setInput=Zi),Fn}function Fn(){const s=Ko(this),r=s?.current;if(r){const a=s.previous;if(a===bt)s.previous=r;else for(let c in r)a[c]=r[c];s.current=null,this.ngOnChanges(r)}}function Zi(s,r,a,c){const m=this.declaredInputs[a],w=Ko(s)||function Ms(s,r){return s[Vo]=r}(s,{previous:bt,current:null}),H=w.current||(w.current={}),se=w.previous,Te=se[m];H[m]=new mi(Te&&Te.currentValue,r,se===bt),s[c]=r}Gn.ngInherit=!0;const Vo="__ngSimpleChanges__";function Ko(s){return s[Vo]||null}const ni=function(s,r,a){},Es="svg";function xi(s){for(;Array.isArray(s);)s=s[gt];return s}function br(s,r){return xi(r[s])}function Uo(s,r){return xi(r[s.index])}function Ba(s,r){return s.data[r]}function Js(s,r){return s[r]}function Yo(s,r){const a=r[s];return rt(a)?a:a[gt]}function Bi(s,r){return null==r?null:s[r]}function da(s){s[so]=0}function Ll(s){1024&s[Nt]||(s[Nt]|=1024,Ua(s,1))}function Va(s){1024&s[Nt]&&(s[Nt]&=-1025,Ua(s,-1))}function Ua(s,r){let a=s[Kt];if(null===a)return;a[zn]+=r;let c=a;for(a=a[Kt];null!==a&&(1===r&&1===c[zn]||-1===r&&0===c[zn]);)a[zn]+=r,c=a,a=a[Kt]}function ua(s,r){if(256==(256&s[Nt]))throw new _(911,!1);null===s[vo]&&(s[vo]=[]),s[vo].push(r)}const Zn={lFrame:Gs(null),bindingsEnabled:!0,skipHydrationRootTNode:null};function nr(){return Zn.bindingsEnabled}function ir(){return null!==Zn.skipHydrationRootTNode}function hn(){return Zn.lFrame.lView}function ai(){return Zn.lFrame.tView}function Sr(s){return Zn.lFrame.contextLView=s,s[ui]}function Or(s){return Zn.lFrame.contextLView=null,s}function To(){let s=Ur();for(;null!==s&&64===s.type;)s=s.parent;return s}function Ur(){return Zn.lFrame.currentTNode}function rs(s,r){const a=Zn.lFrame;a.currentTNode=s,a.isParent=r}function wr(){return Zn.lFrame.isParent}function Yr(){Zn.lFrame.isParent=!1}function Zo(){const s=Zn.lFrame;let r=s.bindingRootIndex;return-1===r&&(r=s.bindingRootIndex=s.tView.bindingStartIndex),r}function ks(){return Zn.lFrame.bindingIndex}function Se(){return Zn.lFrame.bindingIndex++}function oe(s){const r=Zn.lFrame,a=r.bindingIndex;return r.bindingIndex=r.bindingIndex+s,a}function zt(s,r){const a=Zn.lFrame;a.bindingIndex=a.bindingRootIndex=s,on(r)}function on(s){Zn.lFrame.currentDirectiveIndex=s}function tn(s){const r=Zn.lFrame.currentDirectiveIndex;return-1===r?null:s[r]}function xn(){return Zn.lFrame.currentQueryIndex}function ti(s){Zn.lFrame.currentQueryIndex=s}function Vi(s){const r=s[We];return 2===r.type?r.declTNode:1===r.type?s[kn]:null}function Ci(s,r,a){if(a&de.SkipSelf){let m=r,w=s;for(;!(m=m.parent,null!==m||a&de.Host||(m=Vi(w),null===m||(w=w[xo],10&m.type))););if(null===m)return!1;r=m,s=w}const c=Zn.lFrame=or();return c.currentTNode=r,c.lView=s,!0}function Po(s){const r=or(),a=s[We];Zn.lFrame=r,r.currentTNode=a.firstChild,r.lView=s,r.tView=a,r.contextLView=s,r.bindingIndex=a.bindingStartIndex,r.inI18n=!1}function or(){const s=Zn.lFrame,r=null===s?null:s.child;return null===r?Gs(s):r}function Gs(s){const r={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:s,child:null,inI18n:!1};return null!==s&&(s.child=r),r}function as(){const s=Zn.lFrame;return Zn.lFrame=s.parent,s.currentTNode=null,s.lView=null,s}const Rs=as;function Wr(){const s=as();s.isParent=!0,s.tView=null,s.selectedIndex=-1,s.contextLView=null,s.elementDepthCount=0,s.currentDirectiveIndex=-1,s.currentNamespace=null,s.bindingRootIndex=-1,s.bindingIndex=-1,s.currentQueryIndex=0}function Io(){return Zn.lFrame.selectedIndex}function pr(s){Zn.lFrame.selectedIndex=s}function ho(){const s=Zn.lFrame;return Ba(s.tView,s.selectedIndex)}function fa(){Zn.lFrame.currentNamespace=Es}function $l(){!function nd(){Zn.lFrame.currentNamespace=null}()}let Za=!0;function ma(){return Za}function Ls(s){Za=s}function ga(s,r){for(let a=r.directiveStart,c=r.directiveEnd;a=c)break}else r[Te]<0&&(s[so]+=65536),(se>13>16&&(3&s[Nt])===r&&(s[Nt]+=8192,Kl(se,w)):Kl(se,w)}const fr=-1;class Fs{constructor(r,a,c){this.factory=r,this.resolving=!1,this.canSeeViewProviders=a,this.injectImpl=c}}function Qa(s){return s!==fr}function Kr(s){return 32767&s}function Ir(s,r){let a=function ad(s){return s>>16}(s),c=r;for(;a>0;)c=c[xo],a--;return c}let Xa=!0;function va(s){const r=Xa;return Xa=s,r}const Gl=255,Ql=5;let Xl=0;const Bs={};function ya(s,r){const a=Ca(s,r);if(-1!==a)return a;const c=r[We];c.firstCreatePass&&(s.injectorIndex=r.length,qa(c.data,s),qa(r,null),qa(c.blueprint,null));const m=Zr(s,r),w=s.injectorIndex;if(Qa(m)){const H=Kr(m),se=Ir(m,r),Te=se[We].data;for(let Xe=0;Xe<8;Xe++)r[w+Xe]=se[H+Xe]|Te[H+Xe]}return r[w+8]=m,w}function qa(s,r){s.push(0,0,0,0,0,0,0,0,r)}function Ca(s,r){return-1===s.injectorIndex||s.parent&&s.parent.injectorIndex===s.injectorIndex||null===r[s.injectorIndex+8]?-1:s.injectorIndex}function Zr(s,r){if(s.parent&&-1!==s.parent.injectorIndex)return s.parent.injectorIndex;let a=0,c=null,m=r;for(;null!==m;){if(c=ye(m),null===c)return fr;if(a++,m=m[xo],-1!==c.injectorIndex)return c.injectorIndex|a<<16}return fr}function Jr(s,r,a){!function ld(s,r,a){let c;"string"==typeof a?c=a.charCodeAt(0)||0:a.hasOwnProperty(En)&&(c=a[En]),null==c&&(c=a[En]=Xl++);const m=c&Gl;r.data[s+(m>>Ql)]|=1<=0?r&Gl:pd:r}(a);if("function"==typeof w){if(!Ci(r,s,c))return c&de.Host?cd(m,0,c):ql(r,a,c,m);try{let H;if(H=w(c),null!=H||c&de.Optional)return H;W()}finally{Rs()}}else if("number"==typeof w){let H=null,se=Ca(s,r),Te=fr,Xe=c&de.Host?r[Ti][kn]:null;for((-1===se||c&de.SkipSelf)&&(Te=-1===se?Zr(s,r):r[se+8],Te!==fr&&ud(c,!1)?(H=r[We],se=Kr(Te),r=Ir(Te,r)):se=-1);-1!==se;){const yt=r[We];if(tc(w,se,yt.data)){const kt=dd(se,r,a,H,c,Xe);if(kt!==Bs)return kt}Te=r[se+8],Te!==fr&&ud(c,r[We].data[se+8]===Xe)&&tc(w,se,r)?(H=yt,se=Kr(Te),r=Ir(Te,r)):se=-1}}return m}function dd(s,r,a,c,m,w){const H=r[We],se=H.data[s+8],yt=el(se,H,a,null==c?dt(se)&&Xa:c!=H&&0!=(3&se.type),m&de.Host&&w===se);return null!==yt?mr(r,H,yt,se):Bs}function el(s,r,a,c,m){const w=s.providerIndexes,H=r.data,se=1048575&w,Te=s.directiveStart,yt=w>>20,Zt=m?se+yt:s.directiveEnd;for(let Xt=c?se:se+yt;Xt=Te&&dn.type===a)return Xt}if(m){const Xt=H[Te];if(Xt&&$t(Xt)&&Xt.type===a)return Te}return null}function mr(s,r,a,c){let m=s[a];const w=r.data;if(function id(s){return s instanceof Fs}(m)){const H=m;H.resolving&&function k(s,r){const a=r?`. Dependency path: ${r.join(" > ")} > ${s}`:"";throw new _(-200,`Circular dependency in DI detected for ${s}${a}`)}(function A(s){return"function"==typeof s?s.name||s.toString():"object"==typeof s&&null!=s&&"function"==typeof s.type?s.type.name||s.type.toString():S(s)}(w[a]));const se=va(H.canSeeViewProviders);H.resolving=!0;const Xe=H.injectImpl?Ee(H.injectImpl):null;Ci(s,c,de.Default);try{m=s[a]=H.factory(void 0,w,s,c),r.firstCreatePass&&a>=c.directiveStart&&function jl(s,r,a){const{ngOnChanges:c,ngOnInit:m,ngDoCheck:w}=r.type.prototype;if(c){const H=Ki(r);(a.preOrderHooks??=[]).push(s,H),(a.preOrderCheckHooks??=[]).push(s,H)}m&&(a.preOrderHooks??=[]).push(0-s,m),w&&((a.preOrderHooks??=[]).push(s,w),(a.preOrderCheckHooks??=[]).push(s,w))}(a,w[a],r)}finally{null!==Xe&&Ee(Xe),va(se),H.resolving=!1,Rs()}}return m}function tc(s,r,a){return!!(a[r+(s>>Ql)]&1<{const r=s.prototype.constructor,a=r[Mn]||Ta(r),c=Object.prototype;let m=Object.getPrototypeOf(s.prototype).constructor;for(;m&&m!==c;){const w=m[Mn]||Ta(m);if(w&&w!==a)return w;m=Object.getPrototypeOf(m)}return w=>new w})}function Ta(s){return y(s)?()=>{const r=Ta(f(s));return r&&r()}:Co(s)}function ye(s){const r=s[We],a=r.type;return 2===a?r.declTNode:1===a?s[kn]:null}function J(s){return function Ku(s,r){if("class"===r)return s.classes;if("style"===r)return s.styles;const a=s.attrs;if(a){const c=a.length;let m=0;for(;m{const c=function Pt(s){return function(...a){if(s){const c=s(...a);for(const m in c)this[m]=c[m]}}}(r);function m(...w){if(this instanceof m)return c.apply(this,w),this;const H=new m(...w);return se.annotation=H,se;function se(Te,Xe,yt){const kt=Te.hasOwnProperty(X)?Te[X]:Object.defineProperty(Te,X,{value:[]})[X];for(;kt.length<=yt;)kt.push(null);return(kt[yt]=kt[yt]||[]).push(H),Te}}return a&&(m.prototype=Object.create(a.prototype)),m.prototype.ngMetadataName=s,m.annotationCls=m,m})}const No=Function;function is(s,r){s.forEach(a=>Array.isArray(a)?is(a,r):r(a))}function Us(s,r,a){r>=s.length?s.push(a):s.splice(r,0,a)}function ls(s,r){return r>=s.length-1?s.pop():s.splice(r,1)[0]}function Ar(s,r){const a=[];for(let c=0;c=0?s[1|c]=a:(c=~c,function ic(s,r,a,c){let m=s.length;if(m==r)s.push(a,c);else if(1===m)s.push(c,s[0]),s[0]=a;else{for(m--,s.push(s[m-1],s[m]);m>r;)s[m]=s[m-2],m--;s[r]=a,s[r+1]=c}}(s,c,r,a)),c}function $n(s,r){const a=Kn(s,r);if(a>=0)return s[1|a]}function Kn(s,r){return function bo(s,r,a){let c=0,m=s.length>>a;for(;m!==c;){const w=c+(m-c>>1),H=s[w<r?m=w:c=w+1}return~(m<({token:s})),-1),gr=b(Rt("Optional"),8),Xr=b(Rt("Self"),2),sc=b(Rt("SkipSelf"),4);function dc(s){return 128==(128&s.flags)}var hc=function(s){return s[s.Important=1]="Important",s[s.DashCase=2]="DashCase",s}(hc||{});const lh=/^>|^->||--!>|)/g,lf="\u200b$1\u200b";const Cd=new Map;let cf=0;const Td="__ngContext__";function os(s,r){rt(r)?(s[Td]=r[So],function uf(s){Cd.set(s[So],s)}(r)):s[Td]=r}let pc;function Md(s,r){return pc(s,r)}function ol(s){const r=s[Kt];return Gt(r)?r[Kt]:r}function _h(s){return yh(s[go])}function vh(s){return yh(s[ln])}function yh(s){for(;null!==s&&!Gt(s);)s=s[ln];return s}function Da(s,r,a,c,m){if(null!=c){let w,H=!1;Gt(c)?w=c:rt(c)&&(H=!0,c=c[gt]);const se=xi(c);0===s&&null!==a?null==m?Mh(r,a,se):kr(r,a,se,m||null,!0):1===s&&null!==a?kr(r,a,se,m||null,!0):2===s?function yc(s,r,a){const c=_c(s,r);c&&function wf(s,r,a,c){s.removeChild(r,a,c)}(s,c,r,a)}(r,se,H):3===s&&r.destroyNode(se),null!=w&&function Af(s,r,a,c,m){const w=a[ji];w!==xi(a)&&Da(r,s,c,w,m);for(let se=Ai;ser.replace(af,lf))}(r))}function mc(s,r,a){return s.createElement(r,a)}function zh(s,r){const a=s[Fi],c=a.indexOf(r);Va(r),a.splice(c,1)}function gc(s,r){if(s.length<=Ai)return;const a=Ai+r,c=s[a];if(c){const m=c[qo];null!==m&&m!==s&&zh(m,c),r>0&&(s[a-1][ln]=c[ln]);const w=ls(s,Ai+r);!function Tf(s,r){rl(s,r,r[Un],2,null,null),r[gt]=null,r[kn]=null}(c[We],c);const H=w[ro];null!==H&&H.detachView(w[We]),c[Kt]=null,c[ln]=null,c[Nt]&=-129}return c}function Dd(s,r){if(!(256&r[Nt])){const a=r[Un];r[Oo]&&ss(r[Oo]),r[Wo]&&ss(r[Wo]),a.destroyNode&&rl(s,r,a,3,null,null),function Df(s){let r=s[go];if(!r)return bd(s[We],s);for(;r;){let a=null;if(rt(r))a=r[go];else{const c=r[Ai];c&&(a=c)}if(!a){for(;r&&!r[ln]&&r!==s;)rt(r)&&bd(r[We],r),r=r[Kt];null===r&&(r=s),rt(r)&&bd(r[We],r),a=r&&r[ln]}r=a}}(r)}}function bd(s,r){if(!(256&r[Nt])){r[Nt]&=-129,r[Nt]|=256,function Of(s,r){let a;if(null!=s&&null!=(a=s.destroyHooks))for(let c=0;c=0?c[H]():c[-H].unsubscribe(),w+=2}else a[w].call(c[a[w+1]]);null!==c&&(r[Qn]=null);const m=r[vo];if(null!==m){r[vo]=null;for(let w=0;w-1){const{encapsulation:w}=s.data[c.directiveStart+m];if(w===Ce.None||w===Ce.Emulated)return null}return Uo(c,a)}}(s,r.parent,a)}function kr(s,r,a,c,m){s.insertBefore(r,a,c,m)}function Mh(s,r,a){s.appendChild(r,a)}function Eh(s,r,a,c,m){null!==c?kr(s,r,a,c,m):Mh(s,r,a)}function _c(s,r){return s.parentNode(r)}function Dh(s,r,a){return xh(s,r,a)}let Sd,Cc,Id,zc,xh=function bh(s,r,a){return 40&s.type?Uo(s,a):null};function vc(s,r,a,c){const m=xd(s,c,r),w=r[Un],se=Dh(c.parent||r[kn],c,r);if(null!=m)if(Array.isArray(a))for(let Te=0;Tes,createScript:s=>s,createScriptURL:s=>s})}catch{}return Cc}()?.createHTML(s)||s}function Bf(s){Id=s}function xa(){if(void 0!==Id)return Id;if(typeof document<"u")return document;throw new _(210,!1)}function Ad(){if(void 0===zc&&(zc=null,pt.trustedTypes))try{zc=pt.trustedTypes.createPolicy("angular#unsafe-bypass",{createHTML:s=>s,createScript:s=>s,createScriptURL:s=>s})}catch{}return zc}function Nd(s){return Ad()?.createHTML(s)||s}function kd(s){return Ad()?.createScriptURL(s)||s}class qr{constructor(r){this.changingThisBreaksApplicationSecurity=r}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see ${D})`}}class Hf extends qr{getTypeName(){return"HTML"}}class kh extends qr{getTypeName(){return"Style"}}class Vf extends qr{getTypeName(){return"Script"}}class Uf extends qr{getTypeName(){return"URL"}}class Yf extends qr{getTypeName(){return"ResourceURL"}}function _r(s){return s instanceof qr?s.changingThisBreaksApplicationSecurity:s}function Sa(s,r){const a=function Wf(s){return s instanceof qr&&s.getTypeName()||null}(s);if(null!=a&&a!==r){if("ResourceURL"===a&&"URL"===r)return!0;throw new Error(`Required a safe ${r}, got a ${a} (see ${D})`)}return a===r}function $f(s){return new Hf(s)}function jf(s){return new kh(s)}function Kf(s){return new Vf(s)}function Zf(s){return new Uf(s)}function Jf(s){return new Yf(s)}class Gf{constructor(r){this.inertDocumentHelper=r}getInertBodyElement(r){r=""+r;try{const a=(new window.DOMParser).parseFromString(ba(r),"text/html").body;return null===a?this.inertDocumentHelper.getInertBodyElement(r):(a.removeChild(a.firstChild),a)}catch{return null}}}class Qf{constructor(r){this.defaultDoc=r,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert")}getInertBodyElement(r){const a=this.inertDocument.createElement("template");return a.innerHTML=ba(r),a}}const Lh=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:\/?#]*(?:[\/?#]|$))/i;function Tc(s){return(s=String(s)).match(Lh)?s:"unsafe:"+s}function sr(s){const r={};for(const a of s.split(","))r[a]=!0;return r}function al(...s){const r={};for(const a of s)for(const c in a)a.hasOwnProperty(c)&&(r[c]=!0);return r}const Rd=sr("area,br,col,hr,img,wbr"),Fh=sr("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),Bh=sr("rp,rt"),Ld=al(Rd,al(Fh,sr("address,article,aside,blockquote,caption,center,del,details,dialog,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,main,map,menu,nav,ol,pre,section,summary,table,ul")),al(Bh,sr("a,abbr,acronym,audio,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,picture,q,ruby,rp,rt,s,samp,small,source,span,strike,strong,sub,sup,time,track,tt,u,var,video")),al(Bh,Fh)),Fd=sr("background,cite,href,itemtype,longdesc,poster,src,xlink:href"),Hh=al(Fd,sr("abbr,accesskey,align,alt,autoplay,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,controls,coords,datetime,default,dir,download,face,headers,height,hidden,hreflang,hspace,ismap,itemscope,itemprop,kind,label,lang,language,loop,media,muted,nohref,nowrap,open,preload,rel,rev,role,rows,rowspan,rules,scope,scrolling,shape,size,sizes,span,srclang,srcset,start,summary,tabindex,target,title,translate,type,usemap,valign,value,vspace,width"),sr("aria-activedescendant,aria-atomic,aria-autocomplete,aria-busy,aria-checked,aria-colcount,aria-colindex,aria-colspan,aria-controls,aria-current,aria-describedby,aria-details,aria-disabled,aria-dropeffect,aria-errormessage,aria-expanded,aria-flowto,aria-grabbed,aria-haspopup,aria-hidden,aria-invalid,aria-keyshortcuts,aria-label,aria-labelledby,aria-level,aria-live,aria-modal,aria-multiline,aria-multiselectable,aria-orientation,aria-owns,aria-placeholder,aria-posinset,aria-pressed,aria-readonly,aria-relevant,aria-required,aria-roledescription,aria-rowcount,aria-rowindex,aria-rowspan,aria-selected,aria-setsize,aria-sort,aria-valuemax,aria-valuemin,aria-valuenow,aria-valuetext")),qf=sr("script,style,template");class e0{constructor(){this.sanitizedSomething=!1,this.buf=[]}sanitizeChildren(r){let a=r.firstChild,c=!0;for(;a;)if(a.nodeType===Node.ELEMENT_NODE?c=this.startElement(a):a.nodeType===Node.TEXT_NODE?this.chars(a.nodeValue):this.sanitizedSomething=!0,c&&a.firstChild)a=a.firstChild;else for(;a;){a.nodeType===Node.ELEMENT_NODE&&this.endElement(a);let m=this.checkClobberedElement(a,a.nextSibling);if(m){a=m;break}a=this.checkClobberedElement(a,a.parentNode)}return this.buf.join("")}startElement(r){const a=r.nodeName.toLowerCase();if(!Ld.hasOwnProperty(a))return this.sanitizedSomething=!0,!qf.hasOwnProperty(a);this.buf.push("<"),this.buf.push(a);const c=r.attributes;for(let m=0;m"),!0}endElement(r){const a=r.nodeName.toLowerCase();Ld.hasOwnProperty(a)&&!Rd.hasOwnProperty(a)&&(this.buf.push(""))}chars(r){this.buf.push(Vh(r))}checkClobberedElement(r,a){if(a&&(r.compareDocumentPosition(a)&Node.DOCUMENT_POSITION_CONTAINED_BY)===Node.DOCUMENT_POSITION_CONTAINED_BY)throw new Error(`Failed to sanitize html because the element is clobbered: ${r.outerHTML}`);return a}}const t0=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,n0=/([^\#-~ |!])/g;function Vh(s){return s.replace(/&/g,"&").replace(t0,function(r){return"&#"+(1024*(r.charCodeAt(0)-55296)+(r.charCodeAt(1)-56320)+65536)+";"}).replace(n0,function(r){return"&#"+r.charCodeAt(0)+";"}).replace(//g,">")}let Mc;function Uh(s,r){let a=null;try{Mc=Mc||function Rh(s){const r=new Qf(s);return function Xf(){try{return!!(new window.DOMParser).parseFromString(ba(""),"text/html")}catch{return!1}}()?new Gf(r):r}(s);let c=r?String(r):"";a=Mc.getInertBodyElement(c);let m=5,w=c;do{if(0===m)throw new Error("Failed to sanitize html because the input is unstable");m--,c=w,w=a.innerHTML,a=Mc.getInertBodyElement(c)}while(c!==w);return ba((new e0).sanitizeChildren(Bd(a)||a))}finally{if(a){const c=Bd(a)||a;for(;c.firstChild;)c.removeChild(c.firstChild)}}}function Bd(s){return"content"in s&&function o0(s){return s.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===s.nodeName}(s)?s.content:null}var ea=function(s){return s[s.NONE=0]="NONE",s[s.HTML=1]="HTML",s[s.STYLE=2]="STYLE",s[s.SCRIPT=3]="SCRIPT",s[s.URL=4]="URL",s[s.RESOURCE_URL=5]="RESOURCE_URL",s}(ea||{});function Yh(s){const r=ll();return r?Nd(r.sanitize(ea.HTML,s)||""):Sa(s,"HTML")?Nd(_r(s)):Uh(xa(),S(s))}function Wh(s){const r=ll();return r?r.sanitize(ea.STYLE,s)||"":Sa(s,"Style")?_r(s):S(s)}function Ec(s){const r=ll();return r?r.sanitize(ea.URL,s)||"":Sa(s,"URL")?_r(s):Tc(S(s))}function $h(s){const r=ll();if(r)return kd(r.sanitize(ea.RESOURCE_URL,s)||"");if(Sa(s,"ResourceURL"))return kd(_r(s));throw new _(904,!1)}function jh(s,r,a){return function l0(s,r){return"src"===r&&("embed"===s||"frame"===s||"iframe"===s||"media"===s||"script"===s)||"href"===r&&("base"===s||"link"===s)?$h:Ec}(r,a)(s)}function ll(){const s=hn();return s&&s[Ui].sanitizer}const cl=new Ut("ENVIRONMENT_INITIALIZER"),Kh=new Ut("INJECTOR",-1),Zh=new Ut("INJECTOR_DEF_TYPES");class Hd{get(r,a=Qe){if(a===Qe){const c=new Error(`NullInjectorError: No provider for ${v(r)}!`);throw c.name="NullInjectorError",c}return a}}function Vd(s){return{\u0275providers:s}}function c0(...s){return{\u0275providers:Jh(0,s),\u0275fromNgModule:!0}}function Jh(s,...r){const a=[],c=new Set;let m;const w=H=>{a.push(H)};return is(r,H=>{const se=H;Dc(se,w,[],c)&&(m||=[],m.push(se))}),void 0!==m&&Gh(m,w),a}function Gh(s,r){for(let a=0;a{r(w,c)})}}function Dc(s,r,a,c){if(!(s=f(s)))return!1;let m=null,w=Mt(s);const H=!w&&un(s);if(w||H){if(H&&!H.standalone)return!1;m=s}else{const Te=s.ngModule;if(w=Mt(Te),!w)return!1;m=Te}const se=c.has(m);if(H){if(se)return!1;if(c.add(m),H.dependencies){const Te="function"==typeof H.dependencies?H.dependencies():H.dependencies;for(const Xe of Te)Dc(Xe,r,a,c)}}else{if(!w)return!1;{if(null!=w.imports&&!se){let Xe;c.add(m);try{is(w.imports,yt=>{Dc(yt,r,a,c)&&(Xe||=[],Xe.push(yt))})}finally{}void 0!==Xe&&Gh(Xe,r)}if(!se){const Xe=Co(m)||(()=>new m);r({provide:m,useFactory:Xe,deps:Ft},m),r({provide:Zh,useValue:m,multi:!0},m),r({provide:cl,useValue:()=>Je(m),multi:!0},m)}const Te=w.providers;if(null!=Te&&!se){const Xe=s;Ud(Te,yt=>{r(yt,Xe)})}}}return m!==s&&void 0!==s.providers}function Ud(s,r){for(let a of s)T(a)&&(a=a.\u0275providers),Array.isArray(a)?Ud(a,r):r(a)}const d0=M({provide:String,useValue:M});function bc(s){return null!==s&&"object"==typeof s&&d0 in s}function ta(s){return"function"==typeof s}const Yd=new Ut("Set Injector scope."),xc={},u0={};let Wd;function Sc(){return void 0===Wd&&(Wd=new Hd),Wd}class rr{}class Oa extends rr{get destroyed(){return this._destroyed}constructor(r,a,c,m){super(),this.parent=a,this.source=c,this.scopes=m,this.records=new Map,this._ngOnDestroyHooks=new Set,this._onDestroyHooks=[],this._destroyed=!1,jd(r,H=>this.processProvider(H)),this.records.set(Kh,wa(void 0,this)),m.has("environment")&&this.records.set(rr,wa(void 0,this));const w=this.records.get(Yd);null!=w&&"string"==typeof w.value&&this.scopes.add(w.value),this.injectorDefTypes=new Set(this.get(Zh.multi,Ft,de.Self))}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{for(const a of this._ngOnDestroyHooks)a.ngOnDestroy();const r=this._onDestroyHooks;this._onDestroyHooks=[];for(const a of r)a()}finally{this.records.clear(),this._ngOnDestroyHooks.clear(),this.injectorDefTypes.clear()}}onDestroy(r){return this.assertNotDestroyed(),this._onDestroyHooks.push(r),()=>this.removeOnDestroy(r)}runInContext(r){this.assertNotDestroyed();const a=De(this),c=Ee(void 0);try{return r()}finally{De(a),Ee(c)}}get(r,a=Qe,c=de.Default){if(this.assertNotDestroyed(),r.hasOwnProperty(bn))return r[bn](this);c=_e(c);const w=De(this),H=Ee(void 0);try{if(!(c&de.SkipSelf)){let Te=this.records.get(r);if(void 0===Te){const Xe=function m0(s){return"function"==typeof s||"object"==typeof s&&s instanceof Ut}(r)&&Be(r);Te=Xe&&this.injectableDefInScope(Xe)?wa($d(r),xc):null,this.records.set(r,Te)}if(null!=Te)return this.hydrate(r,Te)}return(c&de.Self?Sc():this.parent).get(r,a=c&de.Optional&&a===Qe?null:a)}catch(se){if("NullInjectorError"===se.name){if((se[pe]=se[pe]||[]).unshift(v(r)),w)throw se;return function O(s,r,a,c){const m=s[pe];throw r[$e]&&m.unshift(r[$e]),s.message=function j(s,r,a,c=null){s=s&&"\n"===s.charAt(0)&&"\u0275"==s.charAt(1)?s.slice(2):s;let m=v(r);if(Array.isArray(r))m=r.map(v).join(" -> ");else if("object"==typeof r){let w=[];for(let H in r)if(r.hasOwnProperty(H)){let se=r[H];w.push(H+":"+("string"==typeof se?JSON.stringify(se):v(se)))}m=`{${w.join(", ")}}`}return`${a}${c?"("+c+")":""}[${m}]: ${s.replace(ge,"\n ")}`}("\n"+s.message,m,a,c),s.ngTokenPath=m,s[pe]=null,s}(se,r,"R3InjectorError",this.source)}throw se}finally{Ee(H),De(w)}}resolveInjectorInitializers(){const r=De(this),a=Ee(void 0);try{const m=this.get(cl.multi,Ft,de.Self);for(const w of m)w()}finally{De(r),Ee(a)}}toString(){const r=[],a=this.records;for(const c of a.keys())r.push(v(c));return`R3Injector[${r.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new _(205,!1)}processProvider(r){let a=ta(r=f(r))?r:f(r&&r.provide);const c=function h0(s){return bc(s)?wa(void 0,s.useValue):wa(t1(s),xc)}(r);if(ta(r)||!0!==r.multi)this.records.get(a);else{let m=this.records.get(a);m||(m=wa(void 0,xc,!0),m.factory=()=>it(m.multi),this.records.set(a,m)),a=r,m.multi.push(r)}this.records.set(a,c)}hydrate(r,a){return a.value===xc&&(a.value=u0,a.value=a.factory()),"object"==typeof a.value&&a.value&&function f0(s){return null!==s&&"object"==typeof s&&"function"==typeof s.ngOnDestroy}(a.value)&&this._ngOnDestroyHooks.add(a.value),a.value}injectableDefInScope(r){if(!r.providedIn)return!1;const a=f(r.providedIn);return"string"==typeof a?"any"===a||this.scopes.has(a):this.injectorDefTypes.has(a)}removeOnDestroy(r){const a=this._onDestroyHooks.indexOf(r);-1!==a&&this._onDestroyHooks.splice(a,1)}}function $d(s){const r=Be(s),a=null!==r?r.factory:Co(s);if(null!==a)return a;if(s instanceof Ut)throw new _(204,!1);if(s instanceof Function)return function e1(s){const r=s.length;if(r>0)throw Ar(r,"?"),new _(204,!1);const a=function Ae(s){return s&&(s[je]||s[mt])||null}(s);return null!==a?()=>a.factory(s):()=>new s}(s);throw new _(204,!1)}function t1(s,r,a){let c;if(ta(s)){const m=f(s);return Co(m)||$d(m)}if(bc(s))c=()=>f(s.useValue);else if(function Xh(s){return!(!s||!s.useFactory)}(s))c=()=>s.useFactory(...it(s.deps||[]));else if(function Qh(s){return!(!s||!s.useExisting)}(s))c=()=>Je(f(s.useExisting));else{const m=f(s&&(s.useClass||s.provide));if(!function p0(s){return!!s.deps}(s))return Co(m)||$d(m);c=()=>new m(...it(s.deps))}return c}function wa(s,r,a=!1){return{factory:s,value:r,multi:a?[]:void 0}}function jd(s,r){for(const a of s)Array.isArray(a)?jd(a,r):a&&T(a)?jd(a.\u0275providers,r):r(a)}const Kd=new Ut("AppId",{providedIn:"root",factory:()=>g0}),g0="ng",n1=new Ut("Platform Initializer"),Zd=new Ut("Platform ID",{providedIn:"platform",factory:()=>"unknown"}),_0=new Ut("AnimationModuleType"),v0=new Ut("CSP nonce",{providedIn:"root",factory:()=>xa().body?.querySelector("[ngCspNonce]")?.getAttribute("ngCspNonce")||null});let o1=(s,r,a)=>null;function tu(s,r,a=!1){return o1(s,r,a)}class S0{}class r1{}class l1{resolveComponentFactory(r){throw function O0(s){const r=Error(`No component factory found for ${v(s)}.`);return r.ngComponent=s,r}(r)}}let hl=(()=>{class s{static#e=this.NULL=new l1}return s})();function P0(){return Ia(To(),hn())}function Ia(s,r){return new pl(Uo(s,r))}let pl=(()=>{class s{constructor(a){this.nativeElement=a}static#e=this.__NG_ELEMENT_ID__=P0}return s})();function I0(s){return s instanceof pl?s.nativeElement:s}class c1{}let A0=(()=>{class s{constructor(){this.destroyNode=null}static#e=this.__NG_ELEMENT_ID__=()=>function N0(){const s=hn(),a=Yo(To().index,s);return(rt(a)?a:s)[Un]}()}return s})(),k0=(()=>{class s{static#e=this.\u0275prov=q({token:s,providedIn:"root",factory:()=>null})}return s})();class d1{constructor(r){this.full=r,this.major=r.split(".")[0],this.minor=r.split(".")[1],this.patch=r.split(".").slice(2).join(".")}}const u1=new d1("16.2.11"),su={};function fl(s){if(!B()&&!function wt(){return Ue}())throw new _(-203,!1)}function g1(s,r=null,a=null,c){const m=_1(s,r,a,c);return m.resolveInjectorInitializers(),m}function _1(s,r=null,a=null,c,m=new Set){const w=[a||Ft,c0(s)];return c=c||("object"==typeof s?void 0:v(s)),new Oa(w,r||Sc(),c||null,m)}let Xs=(()=>{class s{static#e=this.THROW_IF_NOT_FOUND=Qe;static#t=this.NULL=new Hd;static create(a,c){if(Array.isArray(a))return g1({name:""},c,a,"");{const m=a.name??"";return g1({name:m},a.parent,a.providers,m)}}static#n=this.\u0275prov=q({token:s,providedIn:"any",factory:()=>Je(Kh)});static#i=this.__NG_ELEMENT_ID__=-1}return s})();function ru(s){return s.ngOriginalError}class Rr{constructor(){this._console=console}handleError(r){const a=this._findOriginalError(r);this._console.error("ERROR",r),a&&this._console.error("ORIGINAL ERROR",a)}_findOriginalError(r){let a=r&&ru(r);for(;a&&ru(a);)a=ru(a);return a||null}}let ml=(()=>{class s{static#e=this.__NG_ELEMENT_ID__=U0;static#t=this.__NG_ENV_ID__=a=>a}return s})();class V0 extends ml{constructor(r){super(),this._lView=r}onDestroy(r){return ua(this._lView,r),()=>function Ya(s,r){if(null===s[vo])return;const a=s[vo].indexOf(r);-1!==a&&s[vo].splice(a,1)}(this._lView,r)}}function U0(){return new V0(hn())}function au(s){return r=>{setTimeout(s,void 0,r)}}const ar=class Y0 extends e.x{constructor(r=!1){super(),this.__isAsync=r}emit(r){super.next(r)}subscribe(r,a,c){let m=r,w=a||(()=>null),H=c;if(r&&"object"==typeof r){const Te=r;m=Te.next?.bind(Te),w=Te.error?.bind(Te),H=Te.complete?.bind(Te)}this.__isAsync&&(w=au(w),m&&(m=au(m)),H&&(H=au(H)));const se=super.subscribe({next:m,error:w,complete:H});return r instanceof n.w0&&r.add(se),se}};function y1(...s){}class Jo{constructor({enableLongStackTrace:r=!1,shouldCoalesceEventChangeDetection:a=!1,shouldCoalesceRunChangeDetection:c=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new ar(!1),this.onMicrotaskEmpty=new ar(!1),this.onStable=new ar(!1),this.onError=new ar(!1),typeof Zone>"u")throw new _(908,!1);Zone.assertZonePatched();const m=this;m._nesting=0,m._outer=m._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(m._inner=m._inner.fork(new Zone.TaskTrackingZoneSpec)),r&&Zone.longStackTraceZoneSpec&&(m._inner=m._inner.fork(Zone.longStackTraceZoneSpec)),m.shouldCoalesceEventChangeDetection=!c&&a,m.shouldCoalesceRunChangeDetection=c,m.lastRequestAnimationFrameId=-1,m.nativeRequestAnimationFrame=function W0(){const s="function"==typeof pt.requestAnimationFrame;let r=pt[s?"requestAnimationFrame":"setTimeout"],a=pt[s?"cancelAnimationFrame":"clearTimeout"];if(typeof Zone<"u"&&r&&a){const c=r[Zone.__symbol__("OriginalDelegate")];c&&(r=c);const m=a[Zone.__symbol__("OriginalDelegate")];m&&(a=m)}return{nativeRequestAnimationFrame:r,nativeCancelAnimationFrame:a}}().nativeRequestAnimationFrame,function j0(s){const r=()=>{!function $0(s){s.isCheckStableRunning||-1!==s.lastRequestAnimationFrameId||(s.lastRequestAnimationFrameId=s.nativeRequestAnimationFrame.call(pt,()=>{s.fakeTopEventTask||(s.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{s.lastRequestAnimationFrameId=-1,lu(s),s.isCheckStableRunning=!0,kc(s),s.isCheckStableRunning=!1},void 0,()=>{},()=>{})),s.fakeTopEventTask.invoke()}),lu(s))}(s)};s._inner=s._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(a,c,m,w,H,se)=>{if(function Z0(s){return!(!Array.isArray(s)||1!==s.length)&&!0===s[0].data?.__ignore_ng_zone__}(se))return a.invokeTask(m,w,H,se);try{return z1(s),a.invokeTask(m,w,H,se)}finally{(s.shouldCoalesceEventChangeDetection&&"eventTask"===w.type||s.shouldCoalesceRunChangeDetection)&&r(),T1(s)}},onInvoke:(a,c,m,w,H,se,Te)=>{try{return z1(s),a.invoke(m,w,H,se,Te)}finally{s.shouldCoalesceRunChangeDetection&&r(),T1(s)}},onHasTask:(a,c,m,w)=>{a.hasTask(m,w),c===m&&("microTask"==w.change?(s._hasPendingMicrotasks=w.microTask,lu(s),kc(s)):"macroTask"==w.change&&(s.hasPendingMacrotasks=w.macroTask))},onHandleError:(a,c,m,w)=>(a.handleError(m,w),s.runOutsideAngular(()=>s.onError.emit(w)),!1)})}(m)}static isInAngularZone(){return typeof Zone<"u"&&!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!Jo.isInAngularZone())throw new _(909,!1)}static assertNotInAngularZone(){if(Jo.isInAngularZone())throw new _(909,!1)}run(r,a,c){return this._inner.run(r,a,c)}runTask(r,a,c,m){const w=this._inner,H=w.scheduleEventTask("NgZoneEvent: "+m,r,C1,y1,y1);try{return w.runTask(H,a,c)}finally{w.cancelTask(H)}}runGuarded(r,a,c){return this._inner.runGuarded(r,a,c)}runOutsideAngular(r){return this._outer.run(r)}}const C1={};function kc(s){if(0==s._nesting&&!s.hasPendingMicrotasks&&!s.isStable)try{s._nesting++,s.onMicrotaskEmpty.emit(null)}finally{if(s._nesting--,!s.hasPendingMicrotasks)try{s.runOutsideAngular(()=>s.onStable.emit(null))}finally{s.isStable=!0}}}function lu(s){s.hasPendingMicrotasks=!!(s._hasPendingMicrotasks||(s.shouldCoalesceEventChangeDetection||s.shouldCoalesceRunChangeDetection)&&-1!==s.lastRequestAnimationFrameId)}function z1(s){s._nesting++,s.isStable&&(s.isStable=!1,s.onUnstable.emit(null))}function T1(s){s._nesting--,kc(s)}class K0{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new ar,this.onMicrotaskEmpty=new ar,this.onStable=new ar,this.onError=new ar}run(r,a,c){return r.apply(a,c)}runGuarded(r,a,c){return r.apply(a,c)}runOutsideAngular(r){return r()}runTask(r,a,c,m){return r.apply(a,c)}}const M1=new Ut("",{providedIn:"root",factory:E1});function E1(){const s=Ke(Jo);let r=!0;const a=new t.y(m=>{r=s.isStable&&!s.hasPendingMacrotasks&&!s.hasPendingMicrotasks,s.runOutsideAngular(()=>{m.next(r),m.complete()})}),c=new t.y(m=>{let w;s.runOutsideAngular(()=>{w=s.onStable.subscribe(()=>{Jo.assertNotInAngularZone(),queueMicrotask(()=>{!r&&!s.hasPendingMacrotasks&&!s.hasPendingMicrotasks&&(r=!0,m.next(!0))})})});const H=s.onUnstable.subscribe(()=>{Jo.assertInAngularZone(),r&&(r=!1,s.runOutsideAngular(()=>{m.next(!1)}))});return()=>{w.unsubscribe(),H.unsubscribe()}});return(0,i.T)(a,c.pipe((0,E.B)()))}function D1(s){return s.ownerDocument.defaultView}function b1(s){return s.ownerDocument}function Lr(s){return s instanceof Function?s():s}let S1=(()=>{class s{constructor(){this.renderDepth=0,this.handler=null}begin(){this.handler?.validateBegin(),this.renderDepth++}end(){this.renderDepth--,0===this.renderDepth&&this.handler?.execute()}ngOnDestroy(){this.handler?.destroy(),this.handler=null}static#e=this.\u0275prov=q({token:s,providedIn:"root",factory:()=>new s})}return s})();function Rc(s){for(;s;){s[Nt]|=64;const r=ol(s);if(yn(s)&&!r)return s;s=r}return null}const X0=new Ut("",{providedIn:"root",factory:()=>!1});let du=null;function n2(s,r){return s[r]??r2()}function o2(s,r){const a=r2();a.producerNode?.length&&(s[r]=du,a.lView=s,du=s2())}const q3={...ws,consumerIsAlwaysLive:!0,consumerMarkedDirty:s=>{Rc(s.lView)},lView:null};function s2(){return Object.create(q3)}function r2(){return du??=s2(),du}const pi={};function a2(s){l2(ai(),hn(),Io()+s,!1)}function l2(s,r,a,c){if(!c)if(3==(3&r[Nt])){const w=s.preOrderCheckHooks;null!==w&&$r(r,w,a)}else{const w=s.preOrderHooks;null!==w&&jr(r,w,0,a)}pr(a)}function _l(s,r=de.Default){const a=hn();return null===a?Je(s,r):ec(To(),a,f(s),r)}function c2(){throw new Error("invalid")}function uu(s,r,a,c,m,w,H,se,Te,Xe,yt){const kt=r.blueprint.slice();return kt[gt]=m,kt[Nt]=140|c,(null!==Xe||s&&2048&s[Nt])&&(kt[Nt]|=2048),da(kt),kt[Kt]=kt[xo]=s,kt[ui]=a,kt[Ui]=H||s&&s[Ui],kt[Un]=se||s&&s[Un],kt[eo]=Te||s&&s[eo]||null,kt[kn]=w,kt[So]=function df(){return cf++}(),kt[ao]=yt,kt[ps]=Xe,kt[Ti]=2==r.type?s[Ti]:kt,kt}function vl(s,r,a,c,m){let w=s.data[r];if(null===w)w=function O1(s,r,a,c,m){const w=Ur(),H=wr(),Te=s.data[r]=function a6(s,r,a,c,m,w){let H=r?r.injectorIndex:-1,se=0;return ir()&&(se|=128),{type:a,index:c,insertBeforeIndex:null,injectorIndex:H,directiveStart:-1,directiveEnd:-1,directiveStylingLast:-1,componentOffset:-1,propertyBindings:null,flags:se,providerIndexes:0,value:m,attrs:w,mergedAttrs:null,localNames:null,initialInputs:void 0,inputs:null,outputs:null,tView:null,next:null,prev:null,projectionNext:null,child:null,parent:r,projection:null,styles:null,stylesWithoutHost:null,residualStyles:void 0,classes:null,classesWithoutHost:null,residualClasses:void 0,classBindings:0,styleBindings:0}}(0,H?w:w&&w.parent,a,r,c,m);return null===s.firstChild&&(s.firstChild=Te),null!==w&&(H?null==w.child&&null!==Te.parent&&(w.child=Te):null===w.next&&(w.next=Te,Te.prev=w)),Te}(s,r,a,c,m),function Oe(){return Zn.lFrame.inI18n}()&&(w.flags|=32);else if(64&w.type){w.type=a,w.value=c,w.attrs=m;const H=function As(){const s=Zn.lFrame,r=s.currentTNode;return s.isParent?r:r.parent}();w.injectorIndex=null===H?-1:H.injectorIndex}return rs(w,!0),w}function Lc(s,r,a,c){if(0===a)return-1;const m=r.length;for(let w=0;wJn&&l2(s,r,Jn,!1),ni(se?2:0,m);const Xe=se?w:null,yt=ms(Xe);try{null!==Xe&&(Xe.dirty=!1),a(c,m)}finally{Pn(Xe,yt)}}finally{se&&null===r[Oo]&&o2(r,Oo),pr(H),ni(se?3:1,m)}}function w1(s,r,a){if(Z(r)){const c=Do(null);try{const w=r.directiveEnd;for(let H=r.directiveStart;Hnull;function p2(s,r,a,c){for(let m in s)if(s.hasOwnProperty(m)){a=null===a?{}:a;const w=s[m];null===c?f2(a,r,m,w):c.hasOwnProperty(m)&&f2(a,r,c[m],w)}return a}function f2(s,r,a,c){s.hasOwnProperty(a)?s[a].push(r,c):s[a]=[r,c]}function Ws(s,r,a,c,m,w,H,se){const Te=Uo(r,a);let yt,Xe=r.inputs;!se&&null!=Xe&&(yt=Xe[c])?(F1(s,a,yt,c,m),dt(r)&&function d6(s,r){const a=Yo(r,s);16&a[Nt]||(a[Nt]|=64)}(a,r.index)):3&r.type&&(c=function c6(s){return"class"===s?"className":"for"===s?"htmlFor":"formaction"===s?"formAction":"innerHtml"===s?"innerHTML":"readonly"===s?"readOnly":"tabindex"===s?"tabIndex":s}(c),m=null!=H?H(m,r.value||"",c):m,w.setProperty(Te,c,m))}function N1(s,r,a,c){if(nr()){const m=null===c?null:{"":-1},w=function g6(s,r){const a=s.directiveRegistry;let c=null,m=null;if(a)for(let w=0;w0;){const a=s[--r];if("number"==typeof a&&a<0)return a}return 0})(H)!=se&&H.push(se),H.push(a,c,w)}}(s,r,c,Lc(s,a,m.hostVars,pi),m)}function vr(s,r,a,c,m,w){const H=Uo(s,r);!function R1(s,r,a,c,m,w,H){if(null==w)s.removeAttribute(r,m,a);else{const se=null==H?S(w):H(w,c||"",m);s.setAttribute(r,m,se,a)}}(r[Un],H,w,s.value,a,c,m)}function T6(s,r,a,c,m,w){const H=w[r];if(null!==H)for(let se=0;se{class s{constructor(){this.all=new Set,this.queue=new Map}create(a,c,m){const w=typeof Zone>"u"?null:Zone.current,H=function an(s,r,a){const c=Object.create(bi);a&&(c.consumerAllowSignalWrites=!0),c.fn=s,c.schedule=r;const m=H=>{c.cleanupFn=H};return c.ref={notify:()=>Yt(c),run:()=>{if(c.dirty=!1,c.hasRun&&!fn(c))return;c.hasRun=!0;const H=ms(c);try{c.cleanupFn(),c.cleanupFn=An,c.fn(m)}finally{Pn(c,H)}},cleanup:()=>c.cleanupFn()},c.ref}(a,Xe=>{this.all.has(Xe)&&this.queue.set(Xe,w)},m);let se;this.all.add(H),H.notify();const Te=()=>{H.cleanup(),se?.(),this.all.delete(H),this.queue.delete(H)};return se=c?.onDestroy(Te),{destroy:Te}}flush(){if(0!==this.queue.size)for(const[a,c]of this.queue)this.queue.delete(a),c?c.run(()=>a.run()):a.run()}get isQueueEmpty(){return 0===this.queue.size}static#e=this.\u0275prov=q({token:s,providedIn:"root",factory:()=>new s})}return s})();function pu(s,r,a){let c=a?s.styles:null,m=a?s.classes:null,w=0;if(null!==r)for(let H=0;H0){x2(s,1);const m=a.components;null!==m&&O2(s,m,1)}}function O2(s,r,a){for(let c=0;c-1&&(gc(r,c),ls(a,c))}this._attachedToViewContainer=!1}Dd(this._lView[We],this._lView)}onDestroy(r){ua(this._lView,r)}markForCheck(){Rc(this._cdRefInjectingView||this._lView)}detach(){this._lView[Nt]&=-129}reattach(){this._lView[Nt]|=128}detectChanges(){fu(this._lView[We],this._lView,this.context)}checkNoChanges(){}attachToViewContainerRef(){if(this._appRef)throw new _(902,!1);this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null,function Ef(s,r){rl(s,r,r[Un],2,null,null)}(this._lView[We],this._lView)}attachToAppRef(r){if(this._attachedToViewContainer)throw new _(902,!1);this._appRef=r}}class P6 extends Bc{constructor(r){super(r),this._view=r}detectChanges(){const r=this._view;fu(r[We],r,r[ui],!1)}checkNoChanges(){}get context(){return null}}class w2 extends hl{constructor(r){super(),this.ngModule=r}resolveComponentFactory(r){const a=un(r);return new Hc(a,this.ngModule)}}function P2(s){const r=[];for(let a in s)s.hasOwnProperty(a)&&r.push({propName:s[a],templateName:a});return r}class A6{constructor(r,a){this.injector=r,this.parentInjector=a}get(r,a,c){c=_e(c);const m=this.injector.get(r,su,c);return m!==su||a===su?m:this.parentInjector.get(r,a,c)}}class Hc extends r1{get inputs(){const r=this.componentDef,a=r.inputTransforms,c=P2(r.inputs);if(null!==a)for(const m of c)a.hasOwnProperty(m.propName)&&(m.transform=a[m.propName]);return c}get outputs(){return P2(this.componentDef.outputs)}constructor(r,a){super(),this.componentDef=r,this.ngModule=a,this.componentType=r.type,this.selector=function wi(s){return s.map(Mo).join(",")}(r.selectors),this.ngContentSelectors=r.ngContentSelectors?r.ngContentSelectors:[],this.isBoundToModule=!!a}create(r,a,c,m){let w=(m=m||this.ngModule)instanceof rr?m:m?.injector;w&&null!==this.componentDef.getStandaloneInjector&&(w=this.componentDef.getStandaloneInjector(w)||w);const H=w?new A6(r,w):r,se=H.get(c1,null);if(null===se)throw new _(407,!1);const kt={rendererFactory:se,sanitizer:H.get(k0,null),effectManager:H.get(E2,null),afterRenderEventManager:H.get(S1,null)},Zt=se.createRenderer(null,this.componentDef),Xt=this.componentDef.selectors[0][0]||"div",dn=c?function n6(s,r,a,c){const w=c.get(X0,!1)||a===Ce.ShadowDom,H=s.selectRootElement(r,w);return function i6(s){h2(s)}(H),H}(Zt,c,this.componentDef.encapsulation,H):mc(Zt,Xt,function I6(s){const r=s.toLowerCase();return"svg"===r?Es:"math"===r?"math":null}(Xt)),Yn=this.componentDef.signals?4608:this.componentDef.onPush?576:528;let mn=null;null!==dn&&(mn=tu(dn,H,!0));const li=A1(0,null,null,1,0,null,null,null,null,null,null),vi=uu(null,li,null,Yn,null,null,kt,Zt,H,null,mn);let Gi,Ss;Po(vi);try{const Br=this.componentDef;let kl,Zp=null;Br.findHostDirectiveDefs?(kl=[],Zp=new Map,Br.findHostDirectiveDefs(Br,kl,Zp),kl.push(Br)):kl=[Br];const H7=function k6(s,r){const a=s[We],c=Jn;return s[c]=r,vl(a,c,2,"#host",null)}(vi,dn),V7=function R6(s,r,a,c,m,w,H){const se=m[We];!function L6(s,r,a,c){for(const m of s)r.mergedAttrs=ci(r.mergedAttrs,m.hostAttrs);null!==r.mergedAttrs&&(pu(r,r.mergedAttrs,!0),null!==a&&Ah(c,a,r))}(c,s,r,H);let Te=null;null!==r&&(Te=tu(r,m[eo]));const Xe=w.rendererFactory.createRenderer(r,a);let yt=16;a.signals?yt=4096:a.onPush&&(yt=64);const kt=uu(m,u2(a),null,yt,m[s.index],s,w,Xe,null,null,Te);return se.firstCreatePass&&k1(se,s,c.length-1),hu(m,kt),m[s.index]=kt}(H7,dn,Br,kl,vi,kt,Zt);Ss=Ba(li,Jn),dn&&function B6(s,r,a,c){if(c)qn(s,a,["ng-version",u1.full]);else{const{attrs:m,classes:w}=function Xi(s){const r=[],a=[];let c=1,m=2;for(;c0&&Ih(s,a,w.join(" "))}}(Zt,Br,dn,c),void 0!==a&&function H6(s,r,a){const c=s.projection=[];for(let m=0;m=0;c--){const m=s[c];m.hostVars=r+=m.hostVars,m.hostAttrs=ci(m.hostAttrs,a=ci(a,m.hostAttrs))}}(c)}function mu(s){return s===bt?{}:s===Ft?[]:s}function Y6(s,r){const a=s.viewQuery;s.viewQuery=a?(c,m)=>{r(c,m),a(c,m)}:r}function W6(s,r){const a=s.contentQueries;s.contentQueries=a?(c,m,w)=>{r(c,m,w),a(c,m,w)}:r}function $6(s,r){const a=s.hostBindings;s.hostBindings=a?(c,m)=>{r(c,m),a(c,m)}:r}function R2(s){const r=s.inputConfig,a={};for(const c in r)if(r.hasOwnProperty(c)){const m=r[c];Array.isArray(m)&&m[2]&&(a[c]=m[2])}s.inputTransforms=a}function gu(s){return!!V1(s)&&(Array.isArray(s)||!(s instanceof Map)&&Symbol.iterator in s)}function V1(s){return null!==s&&("function"==typeof s||"object"==typeof s)}function yr(s,r,a){return s[r]=a}function Vc(s,r){return s[r]}function us(s,r,a){return!Object.is(s[r],a)&&(s[r]=a,!0)}function Na(s,r,a,c){const m=us(s,r,a);return us(s,r+1,c)||m}function _u(s,r,a,c,m){const w=Na(s,r,a,c);return us(s,r+2,m)||w}function qs(s,r,a,c,m,w){const H=Na(s,r,a,c);return Na(s,r+2,m,w)||H}function U1(s,r,a,c){const m=hn();return us(m,Se(),r)&&(ai(),vr(ho(),m,s,r,a,c)),U1}function Cl(s,r,a,c){return us(s,Se(),a)?r+S(a)+c:pi}function zl(s,r,a,c,m,w){const se=Na(s,ks(),a,m);return oe(2),se?r+S(a)+c+S(m)+w:pi}function J2(s,r,a,c,m,w,H,se){const Te=hn(),Xe=ai(),yt=s+Jn,kt=Xe.firstCreatePass?function _8(s,r,a,c,m,w,H,se,Te){const Xe=r.consts,yt=vl(r,s,4,H||null,Bi(Xe,se));N1(r,a,yt,Bi(Xe,Te)),ga(r,yt);const kt=yt.tView=A1(2,yt,c,m,w,r.directiveRegistry,r.pipeRegistry,null,r.schemas,Xe,null);return null!==r.queries&&(r.queries.template(r,yt),kt.queries=r.queries.embeddedTView(yt)),yt}(yt,Xe,Te,r,a,c,m,w,H):Xe.data[yt];rs(kt,!1);const Zt=G2(Xe,Te,kt,s);ma()&&vc(Xe,Te,Zt,kt),os(Zt,Te),hu(Te,Te[yt]=v2(Zt,Te,Zt,kt)),vt(kt)&&P1(Xe,Te,kt),null!=H&&I1(Te,kt,se)}let G2=function Q2(s,r,a,c){return Ls(!0),r[Un].createComment("")};function X2(s){return Js(function Vl(){return Zn.lFrame.contextLView}(),Jn+s)}function Z1(s,r,a){const c=hn();return us(c,Se(),r)&&Ws(ai(),ho(),c,s,r,c[Un],a,!1),Z1}function J1(s,r,a,c,m){const H=m?"class":"style";F1(s,a,r.inputs[H],H,c)}function zu(s,r,a,c){const m=hn(),w=ai(),H=Jn+s,se=m[Un],Te=w.firstCreatePass?function z8(s,r,a,c,m,w){const H=r.consts,Te=vl(r,s,2,c,Bi(H,m));return N1(r,a,Te,Bi(H,w)),null!==Te.attrs&&pu(Te,Te.attrs,!1),null!==Te.mergedAttrs&&pu(Te,Te.mergedAttrs,!0),null!==r.queries&&r.queries.elementStart(r,Te),Te}(H,w,m,r,a,c):w.data[H],Xe=q2(w,m,Te,se,r,s);m[H]=Xe;const yt=vt(Te);return rs(Te,!0),Ah(se,Xe,Te),32!=(32&Te.flags)&&ma()&&vc(w,m,Xe,Te),0===function Fl(){return Zn.lFrame.elementDepthCount}()&&os(Xe,m),function pa(){Zn.lFrame.elementDepthCount++}(),yt&&(P1(w,m,Te),w1(w,Te,m)),null!==c&&I1(m,Te),zu}function Tu(){let s=To();wr()?Yr():(s=s.parent,rs(s,!1));const r=s;(function Bl(s){return Zn.skipHydrationRootTNode===s})(r)&&function zo(){Zn.skipHydrationRootTNode=null}(),function $a(){Zn.lFrame.elementDepthCount--}();const a=ai();return a.firstCreatePass&&(ga(a,s),Z(s)&&a.queries.elementEnd(s)),null!=r.classesWithoutHost&&function Wu(s){return 0!=(8&s.flags)}(r)&&J1(a,r,hn(),r.classesWithoutHost,!0),null!=r.stylesWithoutHost&&function sd(s){return 0!=(16&s.flags)}(r)&&J1(a,r,hn(),r.stylesWithoutHost,!1),Tu}function G1(s,r,a,c){return zu(s,r,a,c),Tu(),G1}let q2=(s,r,a,c,m,w)=>(Ls(!0),mc(c,m,function Ka(){return Zn.lFrame.currentNamespace}()));function Mu(s,r,a){const c=hn(),m=ai(),w=s+Jn,H=m.firstCreatePass?function E8(s,r,a,c,m){const w=r.consts,H=Bi(w,c),se=vl(r,s,8,"ng-container",H);return null!==H&&pu(se,H,!0),N1(r,a,se,Bi(w,m)),null!==r.queries&&r.queries.elementStart(r,se),se}(w,m,c,r,a):m.data[w];rs(H,!0);const se=em(m,c,H,s);return c[w]=se,ma()&&vc(m,c,se,H),os(se,c),vt(H)&&(P1(m,c,H),w1(m,H,c)),null!=a&&I1(c,H),Mu}function Eu(){let s=To();const r=ai();return wr()?Yr():(s=s.parent,rs(s,!1)),r.firstCreatePass&&(ga(r,s),Z(s)&&r.queries.elementEnd(s)),Eu}function Q1(s,r,a){return Mu(s,r,a),Eu(),Q1}let em=(s,r,a,c)=>(Ls(!0),Ed(r[Un],""));function tm(){return hn()}function X1(s){return!!s&&"function"==typeof s.then}function nm(s){return!!s&&"function"==typeof s.subscribe}function q1(s,r,a,c){const m=hn(),w=ai(),H=To();return im(w,m,m[Un],H,s,r,c),q1}function ep(s,r){const a=To(),c=hn(),m=ai();return im(m,c,T2(tn(m.data),a,c),a,s,r),ep}function im(s,r,a,c,m,w,H){const se=vt(c),Xe=s.firstCreatePass&&z2(s),yt=r[ui],kt=C2(r);let Zt=!0;if(3&c.type||H){const _n=Uo(c,r),wn=H?H(_n):_n,Yn=kt.length,mn=H?vi=>H(xi(vi[c.index])):c.index;let li=null;if(!H&&se&&(li=function x8(s,r,a,c){const m=s.cleanup;if(null!=m)for(let w=0;wTe?se[Te]:null}"string"==typeof H&&(w+=2)}return null}(s,r,m,c.index)),null!==li)(li.__ngLastListenerFn__||li).__ngNextListenerFn__=w,li.__ngLastListenerFn__=w,Zt=!1;else{w=sm(c,r,yt,w,!1);const vi=a.listen(wn,m,w);kt.push(w,vi),Xe&&Xe.push(m,mn,Yn,Yn+1)}}else w=sm(c,r,yt,w,!1);const Xt=c.outputs;let dn;if(Zt&&null!==Xt&&(dn=Xt[m])){const _n=dn.length;if(_n)for(let wn=0;wn<_n;wn+=2){const Gi=r[dn[wn]][dn[wn+1]].subscribe(w),Ss=kt.length;kt.push(w,Gi),Xe&&Xe.push(m,c.index,Ss,-(Ss+1))}}}function om(s,r,a,c){try{return ni(6,r,a),!1!==a(c)}catch(m){return M2(s,m),!1}finally{ni(7,r,a)}}function sm(s,r,a,c,m){return function w(H){if(H===Function)return c;Rc(s.componentOffset>-1?Yo(s.index,r):r);let Te=om(r,a,c,H),Xe=w.__ngNextListenerFn__;for(;Xe;)Te=om(r,a,Xe,H)&&Te,Xe=Xe.__ngNextListenerFn__;return m&&!1===Te&&H.preventDefault(),Te}}function rm(s=1){return function Ul(s){return(Zn.lFrame.contextLView=function Yl(s,r){for(;s>0;)r=r[xo],s--;return r}(s,Zn.lFrame.contextLView))[ui]}(s)}function S8(s,r){let a=null;const c=function Wi(s){const r=s.attrs;if(null!=r){const a=r.indexOf(5);if(!(1&a))return r[a+1]}return null}(s);for(let m=0;m>17&32767}function ip(s){return 2|s}function ka(s){return(131068&s)>>2}function op(s,r){return-131069&s|r<<2}function sp(s){return 1|s}function gm(s,r,a,c,m){const w=s[a+1],H=null===r;let se=c?ia(w):ka(w),Te=!1;for(;0!==se&&(!1===Te||H);){const yt=s[se+1];N8(s[se],r)&&(Te=!0,s[se+1]=c?sp(yt):ip(yt)),se=c?ia(yt):ka(yt)}Te&&(s[a+1]=c?ip(w):sp(w))}function N8(s,r){return null===s||null==r||(Array.isArray(s)?s[1]:s)===r||!(!Array.isArray(s)||"string"!=typeof r)&&Kn(s,r)>=0}const Go={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function _m(s){return s.substring(Go.key,Go.keyEnd)}function k8(s){return s.substring(Go.value,Go.valueEnd)}function vm(s,r){const a=Go.textEnd;return a===r?-1:(r=Go.keyEnd=function F8(s,r,a){for(;r32;)r++;return r}(s,Go.key=r,a),Sl(s,r,a))}function ym(s,r){const a=Go.textEnd;let c=Go.key=Sl(s,r,a);return a===c?-1:(c=Go.keyEnd=function B8(s,r,a){let c;for(;r=65&&(-33&c)<=90||c>=48&&c<=57);)r++;return r}(s,c,a),c=zm(s,c,a),c=Go.value=Sl(s,c,a),c=Go.valueEnd=function H8(s,r,a){let c=-1,m=-1,w=-1,H=r,se=H;for(;H32&&(se=H),w=m,m=c,c=-33&Te}return se}(s,c,a),zm(s,c,a))}function Cm(s){Go.key=0,Go.keyEnd=0,Go.value=0,Go.valueEnd=0,Go.textEnd=s.length}function Sl(s,r,a){for(;r=0;a=ym(r,a))bm(s,_m(r),k8(r))}function Mm(s){dr(K8,Cr,s,!0)}function Cr(s,r){for(let a=function R8(s){return Cm(s),vm(s,Sl(s,0,Go.textEnd))}(r);a>=0;a=vm(r,a))On(s,_m(r),!0)}function cr(s,r,a,c){const m=hn(),w=ai(),H=oe(2);w.firstUpdatePass&&Dm(w,s,H,c),r!==pi&&us(m,H,r)&&xm(w,w.data[Io()],m,m[Un],s,m[H+1]=function J8(s,r){return null==s||""===s||("string"==typeof r?s+=r:"object"==typeof s&&(s=v(_r(s)))),s}(r,a),c,H)}function dr(s,r,a,c){const m=ai(),w=oe(2);m.firstUpdatePass&&Dm(m,null,w,c);const H=hn();if(a!==pi&&us(H,w,a)){const se=m.data[Io()];if(Om(se,c)&&!Em(m,w)){let Te=c?se.classesWithoutHost:se.stylesWithoutHost;null!==Te&&(a=g(Te,a||"")),J1(m,se,H,a,c)}else!function Z8(s,r,a,c,m,w,H,se){m===pi&&(m=Ft);let Te=0,Xe=0,yt=0=s.expandoStartIndex}function Dm(s,r,a,c){const m=s.data;if(null===m[a+1]){const w=m[Io()],H=Em(s,a);Om(w,c)&&null===r&&!H&&(r=!1),r=function U8(s,r,a,c){const m=tn(s);let w=c?r.residualClasses:r.residualStyles;if(null===m)0===(c?r.classBindings:r.styleBindings)&&(a=$c(a=lp(null,s,r,a,c),r.attrs,c),w=null);else{const H=r.directiveStylingLast;if(-1===H||s[H]!==m)if(a=lp(m,s,r,a,c),null===w){let Te=function Y8(s,r,a){const c=a?r.classBindings:r.styleBindings;if(0!==ka(c))return s[ia(c)]}(s,r,c);void 0!==Te&&Array.isArray(Te)&&(Te=lp(null,s,r,Te[1],c),Te=$c(Te,r.attrs,c),function W8(s,r,a,c){s[ia(a?r.classBindings:r.styleBindings)]=c}(s,r,c,Te))}else w=function $8(s,r,a){let c;const m=r.directiveEnd;for(let w=1+r.directiveStylingLast;w0)&&(Xe=!0)):yt=a,m)if(0!==Te){const Zt=ia(s[se+1]);s[c+1]=bu(Zt,se),0!==Zt&&(s[Zt+1]=op(s[Zt+1],c)),s[se+1]=function w8(s,r){return 131071&s|r<<17}(s[se+1],c)}else s[c+1]=bu(se,0),0!==se&&(s[se+1]=op(s[se+1],c)),se=c;else s[c+1]=bu(Te,0),0===se?se=c:s[Te+1]=op(s[Te+1],c),Te=c;Xe&&(s[c+1]=ip(s[c+1])),gm(s,yt,c,!0),gm(s,yt,c,!1),function A8(s,r,a,c,m){const w=m?s.residualClasses:s.residualStyles;null!=w&&"string"==typeof r&&Kn(w,r)>=0&&(a[c+1]=sp(a[c+1]))}(r,yt,s,c,w),H=bu(se,Te),w?r.classBindings=H:r.styleBindings=H}(m,w,r,a,H,c)}}function lp(s,r,a,c,m){let w=null;const H=a.directiveEnd;let se=a.directiveStylingLast;for(-1===se?se=a.directiveStart:se++;se0;){const Te=s[m],Xe=Array.isArray(Te),yt=Xe?Te[1]:Te,kt=null===yt;let Zt=a[m+1];Zt===pi&&(Zt=kt?Ft:void 0);let Xt=kt?$n(Zt,c):yt===c?Zt:void 0;if(Xe&&!xu(Xt)&&(Xt=$n(Te,c)),xu(Xt)&&(se=Xt,H))return se;const dn=s[m+1];m=H?ia(dn):ka(dn)}if(null!==r){let Te=w?r.residualClasses:r.residualStyles;null!=Te&&(se=$n(Te,c))}return se}function xu(s){return void 0!==s}function Om(s,r){return 0!=(s.flags&(r?8:16))}function wm(s,r=""){const a=hn(),c=ai(),m=s+Jn,w=c.firstCreatePass?vl(c,m,1,r,null):c.data[m],H=Pm(c,a,w,r,s);a[m]=H,ma()&&vc(c,a,H,w),rs(w,!1)}let Pm=(s,r,a,c,m)=>(Ls(!0),function fc(s,r){return s.createText(r)}(r[Un],c));function cp(s){return Su("",s,""),cp}function Su(s,r,a){const c=hn(),m=Cl(c,s,r,a);return m!==pi&&Fr(c,Io(),m),Su}function dp(s,r,a,c,m){const w=hn(),H=zl(w,s,r,a,c,m);return H!==pi&&Fr(w,Io(),H),dp}function Bm(s,r,a){dr(On,Cr,Cl(hn(),s,r,a),!0)}function Hm(s,r,a,c,m){dr(On,Cr,zl(hn(),s,r,a,c,m),!0)}function Vm(s,r,a,c,m,w,H,se,Te){dr(On,Cr,function Ml(s,r,a,c,m,w,H,se,Te,Xe){const kt=qs(s,ks(),a,m,H,Te);return oe(4),kt?r+S(a)+c+S(m)+w+S(H)+se+S(Te)+Xe:pi}(hn(),s,r,a,c,m,w,H,se,Te),!0)}function up(s,r,a){const c=hn();return us(c,Se(),r)&&Ws(ai(),ho(),c,s,r,c[Un],a,!0),up}function hp(s,r,a){const c=hn();if(us(c,Se(),r)){const w=ai(),H=ho();Ws(w,H,c,s,r,T2(tn(w.data),H,c),a,!0)}return hp}const Ra=void 0;var f_=["en",[["a","p"],["AM","PM"],Ra],[["AM","PM"],Ra,Ra],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],Ra,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],Ra,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",Ra,"{1} 'at' {0}",Ra],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},"ltr",function p_(s){const a=Math.floor(Math.abs(s)),c=s.toString().replace(/^[^.]*\.?/,"").length;return 1===a&&0===c?1:5}];let Ol={};function m_(s,r,a){"string"!=typeof r&&(a=r,r=s[wl.LocaleId]),r=r.toLowerCase().replace(/_/g,"-"),Ol[r]=s,a&&(Ol[r][wl.ExtraData]=a)}function pp(s){const r=function g_(s){return s.toLowerCase().replace(/_/g,"-")}(s);let a=Xm(r);if(a)return a;const c=r.split("-")[0];if(a=Xm(c),a)return a;if("en"===c)return f_;throw new _(701,!1)}function Qm(s){return pp(s)[wl.PluralCase]}function Xm(s){return s in Ol||(Ol[s]=pt.ng&&pt.ng.common&&pt.ng.common.locales&&pt.ng.common.locales[s]),Ol[s]}var wl=function(s){return s[s.LocaleId=0]="LocaleId",s[s.DayPeriodsFormat=1]="DayPeriodsFormat",s[s.DayPeriodsStandalone=2]="DayPeriodsStandalone",s[s.DaysFormat=3]="DaysFormat",s[s.DaysStandalone=4]="DaysStandalone",s[s.MonthsFormat=5]="MonthsFormat",s[s.MonthsStandalone=6]="MonthsStandalone",s[s.Eras=7]="Eras",s[s.FirstDayOfWeek=8]="FirstDayOfWeek",s[s.WeekendRange=9]="WeekendRange",s[s.DateFormat=10]="DateFormat",s[s.TimeFormat=11]="TimeFormat",s[s.DateTimeFormat=12]="DateTimeFormat",s[s.NumberSymbols=13]="NumberSymbols",s[s.NumberFormats=14]="NumberFormats",s[s.CurrencyCode=15]="CurrencyCode",s[s.CurrencySymbol=16]="CurrencySymbol",s[s.CurrencyName=17]="CurrencyName",s[s.Currencies=18]="Currencies",s[s.Directionality=19]="Directionality",s[s.PluralCase=20]="PluralCase",s[s.ExtraData=21]="ExtraData",s}(wl||{});const Pl="en-US";let qm=Pl;function gp(s,r,a,c,m){if(s=f(s),Array.isArray(s))for(let w=0;w>20;if(ta(s)||!s.multi){const Xt=new Fs(Xe,m,_l),dn=vp(Te,r,m?yt:yt+Zt,kt);-1===dn?(Jr(ya(se,H),w,Te),_p(w,s,r.length),r.push(Te),se.directiveStart++,se.directiveEnd++,m&&(se.providerIndexes+=1048576),a.push(Xt),H.push(Xt)):(a[dn]=Xt,H[dn]=Xt)}else{const Xt=vp(Te,r,yt+Zt,kt),dn=vp(Te,r,yt,yt+Zt),wn=dn>=0&&a[dn];if(m&&!wn||!m&&!(Xt>=0&&a[Xt])){Jr(ya(se,H),w,Te);const Yn=function fv(s,r,a,c,m){const w=new Fs(s,a,_l);return w.multi=[],w.index=r,w.componentProviders=0,D4(w,m,c&&!a),w}(m?pv:hv,a.length,m,c,Xe);!m&&wn&&(a[dn].providerFactory=Yn),_p(w,s,r.length,0),r.push(Te),se.directiveStart++,se.directiveEnd++,m&&(se.providerIndexes+=1048576),a.push(Yn),H.push(Yn)}else _p(w,s,Xt>-1?Xt:dn,D4(a[m?dn:Xt],Xe,!m&&c));!m&&c&&wn&&a[dn].componentProviders++}}}function _p(s,r,a,c){const m=ta(r),w=function qh(s){return!!s.useClass}(r);if(m||w){const Te=(w?f(r.useClass):r).prototype.ngOnDestroy;if(Te){const Xe=s.destroyHooks||(s.destroyHooks=[]);if(!m&&r.multi){const yt=Xe.indexOf(a);-1===yt?Xe.push(a,[c,Te]):Xe[yt+1].push(c,Te)}else Xe.push(a,Te)}}}function D4(s,r,a){return a&&s.componentProviders++,s.multi.push(r)-1}function vp(s,r,a,c){for(let m=a;m{a.providersResolver=(c,m)=>function uv(s,r,a){const c=ai();if(c.firstCreatePass){const m=$t(s);gp(a,c.data,c.blueprint,m,!0),gp(r,c.data,c.blueprint,m,!1)}}(c,m?m(s):s,r)}}class La{}class x4{}function mv(s,r){return new Cp(s,r??null,[])}class Cp extends La{constructor(r,a,c){super(),this._parent=a,this._bootstrapComponents=[],this.destroyCbs=[],this.componentFactoryResolver=new w2(this);const m=Qt(r);this._bootstrapComponents=Lr(m.bootstrap),this._r3Injector=_1(r,a,[{provide:La,useValue:this},{provide:hl,useValue:this.componentFactoryResolver},...c],v(r),new Set(["environment"])),this._r3Injector.resolveInjectorInitializers(),this.instance=this._r3Injector.get(r)}get injector(){return this._r3Injector}destroy(){const r=this._r3Injector;!r.destroyed&&r.destroy(),this.destroyCbs.forEach(a=>a()),this.destroyCbs=null}onDestroy(r){this.destroyCbs.push(r)}}class zp extends x4{constructor(r){super(),this.moduleType=r}create(r){return new Cp(this.moduleType,r,[])}}class S4 extends La{constructor(r){super(),this.componentFactoryResolver=new w2(this),this.instance=null;const a=new Oa([...r.providers,{provide:La,useValue:this},{provide:hl,useValue:this.componentFactoryResolver}],r.parent||Sc(),r.debugName,new Set(["environment"]));this.injector=a,r.runEnvironmentInitializers&&a.resolveInjectorInitializers()}destroy(){this.injector.destroy()}onDestroy(r){this.injector.onDestroy(r)}}function O4(s,r,a=null){return new S4({providers:s,parent:r,debugName:a,runEnvironmentInitializers:!0}).injector}let _v=(()=>{class s{constructor(a){this._injector=a,this.cachedInjectors=new Map}getOrCreateStandaloneInjector(a){if(!a.standalone)return null;if(!this.cachedInjectors.has(a)){const c=Jh(0,a.type),m=c.length>0?O4([c],this._injector,`Standalone[${a.type.name}]`):null;this.cachedInjectors.set(a,m)}return this.cachedInjectors.get(a)}ngOnDestroy(){try{for(const a of this.cachedInjectors.values())null!==a&&a.destroy()}finally{this.cachedInjectors.clear()}}static#e=this.\u0275prov=q({token:s,providedIn:"environment",factory:()=>new s(Je(rr))})}return s})();function w4(s){s.getStandaloneInjector=r=>r.get(_v).getOrCreateStandaloneInjector(s)}function L4(s,r,a){const c=Zo()+s,m=hn();return m[c]===pi?yr(m,c,a?r.call(a):r()):Vc(m,c)}function F4(s,r,a,c){return U4(hn(),Zo(),s,r,a,c)}function B4(s,r,a,c,m){return Y4(hn(),Zo(),s,r,a,c,m)}function H4(s,r,a,c,m,w){return W4(hn(),Zo(),s,r,a,c,m,w)}function V4(s,r,a,c,m,w,H,se,Te){const Xe=Zo()+s,yt=hn(),kt=qs(yt,Xe,a,c,m,w);return Na(yt,Xe+4,H,se)||kt?yr(yt,Xe+6,Te?r.call(Te,a,c,m,w,H,se):r(a,c,m,w,H,se)):Vc(yt,Xe+6)}function Qc(s,r){const a=s[r];return a===pi?void 0:a}function U4(s,r,a,c,m,w){const H=r+a;return us(s,H,m)?yr(s,H+1,w?c.call(w,m):c(m)):Qc(s,H+1)}function Y4(s,r,a,c,m,w,H){const se=r+a;return Na(s,se,m,w)?yr(s,se+2,H?c.call(H,m,w):c(m,w)):Qc(s,se+2)}function W4(s,r,a,c,m,w,H,se){const Te=r+a;return _u(s,Te,m,w,H)?yr(s,Te+3,se?c.call(se,m,w,H):c(m,w,H)):Qc(s,Te+3)}function K4(s,r){const a=ai();let c;const m=s+Jn;a.firstCreatePass?(c=function Pv(s,r){if(r)for(let a=r.length-1;a>=0;a--){const c=r[a];if(s===c.name)return c}}(r,a.pipeRegistry),a.data[m]=c,c.onDestroy&&(a.destroyHooks??=[]).push(m,c.onDestroy)):c=a.data[m];const w=c.factory||(c.factory=Co(c.type)),se=Ee(_l);try{const Te=va(!1),Xe=w();return va(Te),function C8(s,r,a,c){a>=s.data.length&&(s.data[a]=null,s.blueprint[a]=null),r[a]=c}(a,hn(),m,Xe),Xe}finally{Ee(se)}}function Z4(s,r,a){const c=s+Jn,m=hn(),w=Js(m,c);return Xc(m,c)?U4(m,Zo(),r,w.transform,a,w):w.transform(a)}function J4(s,r,a,c){const m=s+Jn,w=hn(),H=Js(w,m);return Xc(w,m)?Y4(w,Zo(),r,H.transform,a,c,H):H.transform(a,c)}function G4(s,r,a,c,m){const w=s+Jn,H=hn(),se=Js(H,w);return Xc(H,w)?W4(H,Zo(),r,se.transform,a,c,m,se):se.transform(a,c,m)}function Q4(s,r,a,c,m,w){const H=s+Jn,se=hn(),Te=Js(se,H);return Xc(se,H)?function $4(s,r,a,c,m,w,H,se,Te){const Xe=r+a;return qs(s,Xe,m,w,H,se)?yr(s,Xe+4,Te?c.call(Te,m,w,H,se):c(m,w,H,se)):Qc(s,Xe+4)}(se,Zo(),r,Te.transform,a,c,m,w,Te):Te.transform(a,c,m,w)}function Xc(s,r){return s[We].data[r].pure}function Av(){return this._results[Symbol.iterator]()}class Au{static#e=Symbol.iterator;get changes(){return this._changes||(this._changes=new ar)}constructor(r=!1){this._emitDistinctChangesOnly=r,this.dirty=!0,this._results=[],this._changesDetected=!1,this._changes=null,this.length=0,this.first=void 0,this.last=void 0;const a=Au.prototype;a[Symbol.iterator]||(a[Symbol.iterator]=Av)}get(r){return this._results[r]}map(r){return this._results.map(r)}filter(r){return this._results.filter(r)}find(r){return this._results.find(r)}reduce(r,a){return this._results.reduce(r,a)}forEach(r){this._results.forEach(r)}some(r){return this._results.some(r)}toArray(){return this._results.slice()}toString(){return this._results.toString()}reset(r,a){const c=this;c.dirty=!1;const m=function Ji(s){return s.flat(Number.POSITIVE_INFINITY)}(r);(this._changesDetected=!function Vs(s,r,a){if(s.length!==r.length)return!1;for(let c=0;c0&&(a[m-1][ln]=r),c{class s{static#e=this.__NG_ELEMENT_ID__=Fv}return s})();const Rv=qc,Lv=class extends Rv{constructor(r,a,c){super(),this._declarationLView=r,this._declarationTContainer=a,this.elementRef=c}get ssrId(){return this._declarationTContainer.tView?.ssrId||null}createEmbeddedView(r,a){return this.createEmbeddedViewImpl(r,a)}createEmbeddedViewImpl(r,a,c){const m=function Nv(s,r,a,c){const m=r.tView,se=uu(s,m,a,4096&s[Nt]?4096:16,null,r,null,null,null,c?.injector??null,c?.hydrationInfo??null);se[qo]=s[r.index];const Xe=s[ro];return null!==Xe&&(se[ro]=Xe.createEmbeddedView(m)),B1(m,se,a),se}(this._declarationLView,this._declarationTContainer,r,{injector:a,hydrationInfo:c});return new Bc(m)}};function Fv(){return Nu(To(),hn())}function Nu(s,r){return 4&s.type?new Lv(r,s,Ia(s,r)):null}let Ru=(()=>{class s{static#e=this.__NG_ELEMENT_ID__=Wv}return s})();function Wv(){return og(To(),hn())}const $v=Ru,ng=class extends $v{constructor(r,a,c){super(),this._lContainer=r,this._hostTNode=a,this._hostLView=c}get element(){return Ia(this._hostTNode,this._hostLView)}get injector(){return new Xo(this._hostTNode,this._hostLView)}get parentInjector(){const r=Zr(this._hostTNode,this._hostLView);if(Qa(r)){const a=Ir(r,this._hostLView),c=Kr(r);return new Xo(a[We].data[c+8],a)}return new Xo(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(r){const a=ig(this._lContainer);return null!==a&&a[r]||null}get length(){return this._lContainer.length-Ai}createEmbeddedView(r,a,c){let m,w;"number"==typeof c?m=c:null!=c&&(m=c.index,w=c.injector);const se=r.createEmbeddedViewImpl(a||{},w,null);return this.insertImpl(se,m,false),se}createComponent(r,a,c,m,w){const H=r&&!function Hs(s){return"function"==typeof s}(r);let se;if(H)se=a;else{const _n=a||{};se=_n.index,c=_n.injector,m=_n.projectableNodes,w=_n.environmentInjector||_n.ngModuleRef}const Te=H?r:new Hc(un(r)),Xe=c||this.parentInjector;if(!w&&null==Te.ngModule){const wn=(H?Xe:this.parentInjector).get(rr,null);wn&&(w=wn)}un(Te.componentType??{});const Xt=Te.create(Xe,m,null,w);return this.insertImpl(Xt.hostView,se,false),Xt}insert(r,a){return this.insertImpl(r,a,!1)}insertImpl(r,a,c){const m=r._lView;if(function ca(s){return Gt(s[Kt])}(m)){const Te=this.indexOf(r);if(-1!==Te)this.detach(Te);else{const Xe=m[Kt],yt=new ng(Xe,Xe[kn],Xe[Kt]);yt.detach(yt.indexOf(r))}}const H=this._adjustIndex(a),se=this._lContainer;return kv(se,m,H,!c),r.attachToViewContainerRef(),Us(Mp(se),H,r),r}move(r,a){return this.insert(r,a)}indexOf(r){const a=ig(this._lContainer);return null!==a?a.indexOf(r):-1}remove(r){const a=this._adjustIndex(r,-1),c=gc(this._lContainer,a);c&&(ls(Mp(this._lContainer),a),Dd(c[We],c))}detach(r){const a=this._adjustIndex(r,-1),c=gc(this._lContainer,a);return c&&null!=ls(Mp(this._lContainer),a)?new Bc(c):null}_adjustIndex(r,a=0){return r??this.length+a}};function ig(s){return s[8]}function Mp(s){return s[8]||(s[8]=[])}function og(s,r){let a;const c=r[s.index];return Gt(c)?a=c:(a=v2(c,r,null,s),r[s.index]=a,hu(r,a)),sg(a,r,s,c),new ng(a,s,r)}let sg=function rg(s,r,a,c){if(s[ji])return;let m;m=8&a.type?xi(c):function jv(s,r){const a=s[Un],c=a.createComment(""),m=Uo(r,s);return kr(a,_c(a,m),c,function Pf(s,r){return s.nextSibling(r)}(a,m),!1),c}(r,a),s[ji]=m};class Ep{constructor(r){this.queryList=r,this.matches=null}clone(){return new Ep(this.queryList)}setDirty(){this.queryList.setDirty()}}class Dp{constructor(r=[]){this.queries=r}createEmbeddedView(r){const a=r.queries;if(null!==a){const c=null!==r.contentQueries?r.contentQueries[0]:a.length,m=[];for(let w=0;w0)c.push(H[se/2]);else{const Xe=w[se+1],yt=r[-Te];for(let kt=Ai;kt{class s{constructor(){this.initialized=!1,this.done=!1,this.donePromise=new Promise((a,c)=>{this.resolve=a,this.reject=c}),this.appInits=Ke(Ag,{optional:!0})??[]}runInitializers(){if(this.initialized)return;const a=[];for(const m of this.appInits){const w=m();if(X1(w))a.push(w);else if(nm(w)){const H=new Promise((se,Te)=>{w.subscribe({complete:se,error:Te})});a.push(H)}}const c=()=>{this.done=!0,this.resolve()};Promise.all(a).then(()=>{c()}).catch(m=>{this.reject(m)}),0===a.length&&c(),this.initialized=!0}static#e=this.\u0275fac=function(c){return new(c||s)};static#t=this.\u0275prov=q({token:s,factory:s.\u0275fac,providedIn:"root"})}return s})(),Ng=(()=>{class s{log(a){console.log(a)}warn(a){console.warn(a)}static#e=this.\u0275fac=function(c){return new(c||s)};static#t=this.\u0275prov=q({token:s,factory:s.\u0275fac,providedIn:"platform"})}return s})();const Fu=new Ut("LocaleId",{providedIn:"root",factory:()=>Ke(Fu,de.Optional|de.SkipSelf)||function T5(){return typeof $localize<"u"&&$localize.locale||Pl}()}),M5=new Ut("DefaultCurrencyCode",{providedIn:"root",factory:()=>"USD"});let kg=(()=>{class s{constructor(){this.taskId=0,this.pendingTasks=new Set,this.hasPendingTasks=new l.X(!1)}add(){this.hasPendingTasks.next(!0);const a=this.taskId++;return this.pendingTasks.add(a),a}remove(a){this.pendingTasks.delete(a),0===this.pendingTasks.size&&this.hasPendingTasks.next(!1)}ngOnDestroy(){this.pendingTasks.clear(),this.hasPendingTasks.next(!1)}static#e=this.\u0275fac=function(c){return new(c||s)};static#t=this.\u0275prov=q({token:s,factory:s.\u0275fac,providedIn:"root"})}return s})();class D5{constructor(r,a){this.ngModuleFactory=r,this.componentFactories=a}}let b5=(()=>{class s{compileModuleSync(a){return new zp(a)}compileModuleAsync(a){return Promise.resolve(this.compileModuleSync(a))}compileModuleAndAllComponentsSync(a){const c=this.compileModuleSync(a),w=Lr(Qt(a).declarations).reduce((H,se)=>{const Te=un(se);return Te&&H.push(new Hc(Te)),H},[]);return new D5(c,w)}compileModuleAndAllComponentsAsync(a){return Promise.resolve(this.compileModuleAndAllComponentsSync(a))}clearCache(){}clearCacheFor(a){}getModuleId(a){}static#e=this.\u0275fac=function(c){return new(c||s)};static#t=this.\u0275prov=q({token:s,factory:s.\u0275fac,providedIn:"root"})}return s})();const Bg=new Ut(""),Hg=new Ut("");let Lp,Z5=(()=>{class s{constructor(a,c,m){this._ngZone=a,this.registry=c,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,Lp||(function J5(s){Lp=s}(m),m.addToWindow(c)),this._watchAngularEvents(),a.run(()=>{this.taskTrackingZone=typeof Zone>"u"?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{Jo.assertNotInAngularZone(),queueMicrotask(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())queueMicrotask(()=>{for(;0!==this._callbacks.length;){let a=this._callbacks.pop();clearTimeout(a.timeoutId),a.doneCb(this._didWork)}this._didWork=!1});else{let a=this.getPendingTasks();this._callbacks=this._callbacks.filter(c=>!c.updateCb||!c.updateCb(a)||(clearTimeout(c.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(a=>({source:a.source,creationLocation:a.creationLocation,data:a.data})):[]}addCallback(a,c,m){let w=-1;c&&c>0&&(w=setTimeout(()=>{this._callbacks=this._callbacks.filter(H=>H.timeoutId!==w),a(this._didWork,this.getPendingTasks())},c)),this._callbacks.push({doneCb:a,timeoutId:w,updateCb:m})}whenStable(a,c,m){if(m&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/plugins/task-tracking" loaded?');this.addCallback(a,c,m),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}registerApplication(a){this.registry.registerApplication(a,this)}unregisterApplication(a){this.registry.unregisterApplication(a)}findProviders(a,c,m){return[]}static#e=this.\u0275fac=function(c){return new(c||s)(Je(Jo),Je(Vg),Je(Hg))};static#t=this.\u0275prov=q({token:s,factory:s.\u0275fac})}return s})(),Vg=(()=>{class s{constructor(){this._applications=new Map}registerApplication(a,c){this._applications.set(a,c)}unregisterApplication(a){this._applications.delete(a)}unregisterAllApplications(){this._applications.clear()}getTestability(a){return this._applications.get(a)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(a,c=!0){return Lp?.findTestabilityInTree(this,a,c)??null}static#e=this.\u0275fac=function(c){return new(c||s)};static#t=this.\u0275prov=q({token:s,factory:s.\u0275fac,providedIn:"platform"})}return s})(),oa=null;const Ug=new Ut("AllowMultipleToken"),Fp=new Ut("PlatformDestroyListeners"),Bp=new Ut("appBootstrapListener");class X5{constructor(r,a){this.name=r,this.token=a}}function $g(s,r,a=[]){const c=`Platform: ${r}`,m=new Ut(c);return(w=[])=>{let H=Hp();if(!H||H.injector.get(Ug,!1)){const se=[...a,...w,{provide:m,useValue:!0}];s?s(se):function q5(s){if(oa&&!oa.get(Ug,!1))throw new _(400,!1);(function Yg(){!function tr(s){Ks=s}(()=>{throw new _(600,!1)})})(),oa=s;const r=s.get(Kg);(function Wg(s){s.get(n1,null)?.forEach(a=>a())})(s)}(function jg(s=[],r){return Xs.create({name:r,providers:[{provide:Yd,useValue:"platform"},{provide:Fp,useValue:new Set([()=>oa=null])},...s]})}(se,c))}return function t7(s){const r=Hp();if(!r)throw new _(401,!1);return r}()}}function Hp(){return oa?.get(Kg)??null}let Kg=(()=>{class s{constructor(a){this._injector=a,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(a,c){const m=function n7(s="zone.js",r){return"noop"===s?new K0:"zone.js"===s?new Jo(r):s}(c?.ngZone,function Zg(s){return{enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:s?.eventCoalescing??!1,shouldCoalesceRunChangeDetection:s?.runCoalescing??!1}}({eventCoalescing:c?.ngZoneEventCoalescing,runCoalescing:c?.ngZoneRunCoalescing}));return m.run(()=>{const w=function gv(s,r,a){return new Cp(s,r,a)}(a.moduleType,this.injector,function qg(s){return[{provide:Jo,useFactory:s},{provide:cl,multi:!0,useFactory:()=>{const r=Ke(s7,{optional:!0});return()=>r.initialize()}},{provide:Xg,useFactory:o7},{provide:M1,useFactory:E1}]}(()=>m)),H=w.injector.get(Rr,null);return m.runOutsideAngular(()=>{const se=m.onError.subscribe({next:Te=>{H.handleError(Te)}});w.onDestroy(()=>{Hu(this._modules,w),se.unsubscribe()})}),function Jg(s,r,a){try{const c=a();return X1(c)?c.catch(m=>{throw r.runOutsideAngular(()=>s.handleError(m)),m}):c}catch(c){throw r.runOutsideAngular(()=>s.handleError(c)),c}}(H,m,()=>{const se=w.injector.get(Np);return se.runInitializers(),se.donePromise.then(()=>(function e4(s){ie(s,"Expected localeId to be defined"),"string"==typeof s&&(qm=s.toLowerCase().replace(/_/g,"-"))}(w.injector.get(Fu,Pl)||Pl),this._moduleDoBootstrap(w),w))})})}bootstrapModule(a,c=[]){const m=Gg({},c);return function G5(s,r,a){const c=new zp(a);return Promise.resolve(c)}(0,0,a).then(w=>this.bootstrapModuleFactory(w,m))}_moduleDoBootstrap(a){const c=a.injector.get(Nl);if(a._bootstrapComponents.length>0)a._bootstrapComponents.forEach(m=>c.bootstrap(m));else{if(!a.instance.ngDoBootstrap)throw new _(-403,!1);a.instance.ngDoBootstrap(c)}this._modules.push(a)}onDestroy(a){this._destroyListeners.push(a)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new _(404,!1);this._modules.slice().forEach(c=>c.destroy()),this._destroyListeners.forEach(c=>c());const a=this._injector.get(Fp,null);a&&(a.forEach(c=>c()),a.clear()),this._destroyed=!0}get destroyed(){return this._destroyed}static#e=this.\u0275fac=function(c){return new(c||s)(Je(Xs))};static#t=this.\u0275prov=q({token:s,factory:s.\u0275fac,providedIn:"platform"})}return s})();function Gg(s,r){return Array.isArray(r)?r.reduce(Gg,s):{...s,...r}}let Nl=(()=>{class s{constructor(){this._bootstrapListeners=[],this._runningTick=!1,this._destroyed=!1,this._destroyListeners=[],this._views=[],this.internalErrorHandler=Ke(Xg),this.zoneIsStable=Ke(M1),this.componentTypes=[],this.components=[],this.isStable=Ke(kg).hasPendingTasks.pipe((0,u.w)(a=>a?(0,C.of)(!1):this.zoneIsStable),(0,z.x)(),(0,E.B)()),this._injector=Ke(rr)}get destroyed(){return this._destroyed}get injector(){return this._injector}bootstrap(a,c){const m=a instanceof r1;if(!this._injector.get(Np).done)throw!m&&At(a),new _(405,!1);let H;H=m?a:this._injector.get(hl).resolveComponentFactory(a),this.componentTypes.push(H.componentType);const se=function Q5(s){return s.isBoundToModule}(H)?void 0:this._injector.get(La),Xe=H.create(Xs.NULL,[],c||H.selector,se),yt=Xe.location.nativeElement,kt=Xe.injector.get(Bg,null);return kt?.registerApplication(yt),Xe.onDestroy(()=>{this.detachView(Xe.hostView),Hu(this.components,Xe),kt?.unregisterApplication(yt)}),this._loadComponent(Xe),Xe}tick(){if(this._runningTick)throw new _(101,!1);try{this._runningTick=!0;for(let a of this._views)a.detectChanges()}catch(a){this.internalErrorHandler(a)}finally{this._runningTick=!1}}attachView(a){const c=a;this._views.push(c),c.attachToAppRef(this)}detachView(a){const c=a;Hu(this._views,c),c.detachFromAppRef()}_loadComponent(a){this.attachView(a.hostView),this.tick(),this.components.push(a);const c=this._injector.get(Bp,[]);c.push(...this._bootstrapListeners),c.forEach(m=>m(a))}ngOnDestroy(){if(!this._destroyed)try{this._destroyListeners.forEach(a=>a()),this._views.slice().forEach(a=>a.destroy())}finally{this._destroyed=!0,this._views=[],this._bootstrapListeners=[],this._destroyListeners=[]}}onDestroy(a){return this._destroyListeners.push(a),()=>Hu(this._destroyListeners,a)}destroy(){if(this._destroyed)throw new _(406,!1);const a=this._injector;a.destroy&&!a.destroyed&&a.destroy()}get viewCount(){return this._views.length}warnIfDestroyed(){}static#e=this.\u0275fac=function(c){return new(c||s)};static#t=this.\u0275prov=q({token:s,factory:s.\u0275fac,providedIn:"root"})}return s})();function Hu(s,r){const a=s.indexOf(r);a>-1&&s.splice(a,1)}const Xg=new Ut("",{providedIn:"root",factory:()=>Ke(Rr).handleError.bind(void 0)});function o7(){const s=Ke(Jo),r=Ke(Rr);return a=>s.runOutsideAngular(()=>r.handleError(a))}let s7=(()=>{class s{constructor(){this.zone=Ke(Jo),this.applicationRef=Ke(Nl)}initialize(){this._onMicrotaskEmptySubscription||(this._onMicrotaskEmptySubscription=this.zone.onMicrotaskEmpty.subscribe({next:()=>{this.zone.run(()=>{this.applicationRef.tick()})}}))}ngOnDestroy(){this._onMicrotaskEmptySubscription?.unsubscribe()}static#e=this.\u0275fac=function(c){return new(c||s)};static#t=this.\u0275prov=q({token:s,factory:s.\u0275fac,providedIn:"root"})}return s})();function a7(){return!1}function l7(){}let c7=(()=>{class s{static#e=this.__NG_ELEMENT_ID__=d7}return s})();function d7(s){return function u7(s,r,a){if(dt(s)&&!a){const c=Yo(s.index,r);return new Bc(c,c)}return 47&s.type?new Bc(r[Ti],r):null}(To(),hn(),16==(16&s))}class o3{constructor(){}supports(r){return gu(r)}create(r){return new _7(r)}}const g7=(s,r)=>r;class _7{constructor(r){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=r||g7}forEachItem(r){let a;for(a=this._itHead;null!==a;a=a._next)r(a)}forEachOperation(r){let a=this._itHead,c=this._removalsHead,m=0,w=null;for(;a||c;){const H=!c||a&&a.currentIndex{H=this._trackByFn(m,se),null!==a&&Object.is(a.trackById,H)?(c&&(a=this._verifyReinsertion(a,se,H,m)),Object.is(a.item,se)||this._addIdentityChange(a,se)):(a=this._mismatch(a,se,H,m),c=!0),a=a._next,m++}),this.length=m;return this._truncate(a),this.collection=r,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let r;for(r=this._previousItHead=this._itHead;null!==r;r=r._next)r._nextPrevious=r._next;for(r=this._additionsHead;null!==r;r=r._nextAdded)r.previousIndex=r.currentIndex;for(this._additionsHead=this._additionsTail=null,r=this._movesHead;null!==r;r=r._nextMoved)r.previousIndex=r.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(r,a,c,m){let w;return null===r?w=this._itTail:(w=r._prev,this._remove(r)),null!==(r=null===this._unlinkedRecords?null:this._unlinkedRecords.get(c,null))?(Object.is(r.item,a)||this._addIdentityChange(r,a),this._reinsertAfter(r,w,m)):null!==(r=null===this._linkedRecords?null:this._linkedRecords.get(c,m))?(Object.is(r.item,a)||this._addIdentityChange(r,a),this._moveAfter(r,w,m)):r=this._addAfter(new v7(a,c),w,m),r}_verifyReinsertion(r,a,c,m){let w=null===this._unlinkedRecords?null:this._unlinkedRecords.get(c,null);return null!==w?r=this._reinsertAfter(w,r._prev,m):r.currentIndex!=m&&(r.currentIndex=m,this._addToMoves(r,m)),r}_truncate(r){for(;null!==r;){const a=r._next;this._addToRemovals(this._unlink(r)),r=a}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(r,a,c){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(r);const m=r._prevRemoved,w=r._nextRemoved;return null===m?this._removalsHead=w:m._nextRemoved=w,null===w?this._removalsTail=m:w._prevRemoved=m,this._insertAfter(r,a,c),this._addToMoves(r,c),r}_moveAfter(r,a,c){return this._unlink(r),this._insertAfter(r,a,c),this._addToMoves(r,c),r}_addAfter(r,a,c){return this._insertAfter(r,a,c),this._additionsTail=null===this._additionsTail?this._additionsHead=r:this._additionsTail._nextAdded=r,r}_insertAfter(r,a,c){const m=null===a?this._itHead:a._next;return r._next=m,r._prev=a,null===m?this._itTail=r:m._prev=r,null===a?this._itHead=r:a._next=r,null===this._linkedRecords&&(this._linkedRecords=new s3),this._linkedRecords.put(r),r.currentIndex=c,r}_remove(r){return this._addToRemovals(this._unlink(r))}_unlink(r){null!==this._linkedRecords&&this._linkedRecords.remove(r);const a=r._prev,c=r._next;return null===a?this._itHead=c:a._next=c,null===c?this._itTail=a:c._prev=a,r}_addToMoves(r,a){return r.previousIndex===a||(this._movesTail=null===this._movesTail?this._movesHead=r:this._movesTail._nextMoved=r),r}_addToRemovals(r){return null===this._unlinkedRecords&&(this._unlinkedRecords=new s3),this._unlinkedRecords.put(r),r.currentIndex=null,r._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=r,r._prevRemoved=null):(r._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=r),r}_addIdentityChange(r,a){return r.item=a,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=r:this._identityChangesTail._nextIdentityChange=r,r}}class v7{constructor(r,a){this.item=r,this.trackById=a,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class y7{constructor(){this._head=null,this._tail=null}add(r){null===this._head?(this._head=this._tail=r,r._nextDup=null,r._prevDup=null):(this._tail._nextDup=r,r._prevDup=this._tail,r._nextDup=null,this._tail=r)}get(r,a){let c;for(c=this._head;null!==c;c=c._nextDup)if((null===a||a<=c.currentIndex)&&Object.is(c.trackById,r))return c;return null}remove(r){const a=r._prevDup,c=r._nextDup;return null===a?this._head=c:a._nextDup=c,null===c?this._tail=a:c._prevDup=a,null===this._head}}class s3{constructor(){this.map=new Map}put(r){const a=r.trackById;let c=this.map.get(a);c||(c=new y7,this.map.set(a,c)),c.add(r)}get(r,a){const m=this.map.get(r);return m?m.get(r,a):null}remove(r){const a=r.trackById;return this.map.get(a).remove(r)&&this.map.delete(a),r}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function r3(s,r,a){const c=s.previousIndex;if(null===c)return c;let m=0;return a&&c{if(a&&a.key===m)this._maybeAddToChanges(a,c),this._appendAfter=a,a=a._next;else{const w=this._getOrCreateRecordForKey(m,c);a=this._insertBeforeOrAppend(a,w)}}),a){a._prev&&(a._prev._next=null),this._removalsHead=a;for(let c=a;null!==c;c=c._nextRemoved)c===this._mapHead&&(this._mapHead=null),this._records.delete(c.key),c._nextRemoved=c._next,c.previousValue=c.currentValue,c.currentValue=null,c._prev=null,c._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(r,a){if(r){const c=r._prev;return a._next=r,a._prev=c,r._prev=a,c&&(c._next=a),r===this._mapHead&&(this._mapHead=a),this._appendAfter=r,r}return this._appendAfter?(this._appendAfter._next=a,a._prev=this._appendAfter):this._mapHead=a,this._appendAfter=a,null}_getOrCreateRecordForKey(r,a){if(this._records.has(r)){const m=this._records.get(r);this._maybeAddToChanges(m,a);const w=m._prev,H=m._next;return w&&(w._next=H),H&&(H._prev=w),m._next=null,m._prev=null,m}const c=new z7(r);return this._records.set(r,c),c.currentValue=a,this._addToAdditions(c),c}_reset(){if(this.isDirty){let r;for(this._previousMapHead=this._mapHead,r=this._previousMapHead;null!==r;r=r._next)r._nextPrevious=r._next;for(r=this._changesHead;null!==r;r=r._nextChanged)r.previousValue=r.currentValue;for(r=this._additionsHead;null!=r;r=r._nextAdded)r.previousValue=r.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(r,a){Object.is(a,r.currentValue)||(r.previousValue=r.currentValue,r.currentValue=a,this._addToChanges(r))}_addToAdditions(r){null===this._additionsHead?this._additionsHead=this._additionsTail=r:(this._additionsTail._nextAdded=r,this._additionsTail=r)}_addToChanges(r){null===this._changesHead?this._changesHead=this._changesTail=r:(this._changesTail._nextChanged=r,this._changesTail=r)}_forEach(r,a){r instanceof Map?r.forEach(a):Object.keys(r).forEach(c=>a(r[c],c))}}class z7{constructor(r){this.key=r,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}function l3(){return new $p([new o3])}let $p=(()=>{class s{static#e=this.\u0275prov=q({token:s,providedIn:"root",factory:l3});constructor(a){this.factories=a}static create(a,c){if(null!=c){const m=c.factories.slice();a=a.concat(m)}return new s(a)}static extend(a){return{provide:s,useFactory:c=>s.create(a,c||l3()),deps:[[s,new sc,new gr]]}}find(a){const c=this.factories.find(m=>m.supports(a));if(null!=c)return c;throw new _(901,!1)}}return s})();function c3(){return new jp([new a3])}let jp=(()=>{class s{static#e=this.\u0275prov=q({token:s,providedIn:"root",factory:c3});constructor(a){this.factories=a}static create(a,c){if(c){const m=c.factories.slice();a=a.concat(m)}return new s(a)}static extend(a){return{provide:s,useFactory:c=>s.create(a,c||c3()),deps:[[s,new sc,new gr]]}}find(a){const c=this.factories.find(m=>m.supports(a));if(c)return c;throw new _(901,!1)}}return s})();const E7=$g(null,"core",[]);let D7=(()=>{class s{constructor(a){}static#e=this.\u0275fac=function(c){return new(c||s)(Je(Nl))};static#t=this.\u0275mod=Ii({type:s});static#n=this.\u0275inj=ee({})}return s})();function R7(s){return"boolean"==typeof s?s:null!=s&&"false"!==s}function F7(s,r){const a=un(s),c=r.elementInjector||Sc();return new Hc(a).create(c,r.projectableNodes,r.hostElement,r.environmentInjector)}function B7(s){const r=un(s);if(!r)return null;const a=new Hc(r);return{get selector(){return a.selector},get type(){return a.componentType},get inputs(){return a.inputs},get outputs(){return a.outputs},get ngContentSelectors(){return a.ngContentSelectors},get isStandalone(){return r.standalone},get isSignal(){return r.signals}}}},71993:(nt,I,o)=>{"use strict";o.d(I,{sL:()=>i});var e=o(65879),n=o(65592),t=o(59773);function i(we){we||((0,e.gHi)(i),we=(0,e.f3M)(e.ktI));const de=new n.y(U=>we.onDestroy(U.next.bind(U)));return U=>U.pipe((0,t.R)(de))}},19288:(nt,I,o)=>{"use strict";o.r(I),o.d(I,{NgElement:()=>_,VERSION:()=>S,createCustomElement:()=>P});var e=o(65879),n=o(97328),t=o(63019),i=o(94664),l=o(37398);const C={schedule(A,k){const R=setTimeout(A,k);return()=>clearTimeout(R)},scheduleBeforeRender(A){if(typeof window>"u")return C.schedule(A,0);if(typeof window.requestAnimationFrame>"u")return C.schedule(A,16);const k=window.requestAnimationFrame(A);return()=>window.cancelAnimationFrame(k)}};let h;function y(A,k,R){let $=R;return function u(A){return!!A&&A.nodeType===Node.ELEMENT_NODE}(A)&&k.some((W,ze)=>!("*"===W||!function v(A,k){if(!h){const R=Element.prototype;h=R.matches||R.matchesSelector||R.mozMatchesSelector||R.msMatchesSelector||R.oMatchesSelector||R.webkitMatchesSelector}return A.nodeType===Node.ELEMENT_NODE&&h.call(A,k)}(A,W)||($=ze,0))),$}class x{constructor(k,R){this.componentFactory=R.get(e._Vd).resolveComponentFactory(k)}create(k){return new D(this.componentFactory,k)}}class D{constructor(k,R){this.componentFactory=k,this.injector=R,this.eventEmitters=new n.t(1),this.events=this.eventEmitters.pipe((0,i.w)($=>(0,t.T)(...$))),this.componentRef=null,this.viewChangeDetectorRef=null,this.inputChanges=null,this.hasInputChanges=!1,this.implementsOnChanges=!1,this.scheduledChangeDetectionFn=null,this.scheduledDestroyFn=null,this.initialInputValues=new Map,this.unchangedInputs=new Set(this.componentFactory.inputs.map(({propName:$})=>$)),this.ngZone=this.injector.get(e.R0b),this.elementZone=typeof Zone>"u"?null:this.ngZone.run(()=>Zone.current)}connect(k){this.runInZone(()=>{if(null!==this.scheduledDestroyFn)return this.scheduledDestroyFn(),void(this.scheduledDestroyFn=null);null===this.componentRef&&this.initializeComponent(k)})}disconnect(){this.runInZone(()=>{null===this.componentRef||null!==this.scheduledDestroyFn||(this.scheduledDestroyFn=C.schedule(()=>{null!==this.componentRef&&(this.componentRef.destroy(),this.componentRef=null,this.viewChangeDetectorRef=null)},10))})}getInputValue(k){return this.runInZone(()=>null===this.componentRef?this.initialInputValues.get(k):this.componentRef.instance[k])}setInputValue(k,R,$){this.runInZone(()=>{$&&(R=$.call(this.componentRef?.instance,R)),null!==this.componentRef?function g(A,k){return A===k||A!=A&&k!=k}(R,this.getInputValue(k))&&(void 0!==R||!this.unchangedInputs.has(k))||(this.recordInputChange(k,R),this.unchangedInputs.delete(k),this.hasInputChanges=!0,this.componentRef.instance[k]=R,this.scheduleDetectChanges()):this.initialInputValues.set(k,R)})}initializeComponent(k){const R=e.zs3.create({providers:[],parent:this.injector}),$=function f(A,k){const R=A.childNodes,$=k.map(()=>[]);let W=-1;k.some((ze,Y)=>"*"===ze&&(W=Y,!0));for(let ze=0,Y=R.length;ze{this.initialInputValues.has(k)&&this.setInputValue(k,this.initialInputValues.get(k),R)}),this.initialInputValues.clear()}initializeOutputs(k){const R=this.componentFactory.outputs.map(({propName:$,templateName:W})=>k.instance[$].pipe((0,l.U)(Y=>({name:W,value:Y}))));this.eventEmitters.next(R)}callNgOnChanges(k){if(!this.implementsOnChanges||null===this.inputChanges)return;const R=this.inputChanges;this.inputChanges=null,k.instance.ngOnChanges(R)}markViewForCheck(k){this.hasInputChanges&&(this.hasInputChanges=!1,k.markForCheck())}scheduleDetectChanges(){this.scheduledChangeDetectionFn||(this.scheduledChangeDetectionFn=C.scheduleBeforeRender(()=>{this.scheduledChangeDetectionFn=null,this.detectChanges()}))}recordInputChange(k,R){if(!this.implementsOnChanges)return;null===this.inputChanges&&(this.inputChanges={});const $=this.inputChanges[k];if($)return void($.currentValue=R);const W=this.unchangedInputs.has(k),ze=W?void 0:this.getInputValue(k);this.inputChanges[k]=new e.WD2(ze,R,W)}detectChanges(){null!==this.componentRef&&(this.callNgOnChanges(this.componentRef),this.markViewForCheck(this.viewChangeDetectorRef),this.componentRef.changeDetectorRef.detectChanges())}runInZone(k){return this.elementZone&&Zone.current!==this.elementZone?this.ngZone.run(k):k()}}class _ extends HTMLElement{constructor(){super(...arguments),this.ngElementEventsSubscription=null}}function P(A,k){const R=function p(A,k){return k.get(e._Vd).resolveComponentFactory(A).inputs}(A,k.injector),$=k.strategyFactory||new x(A,k.injector),W=function d(A){const k={};return A.forEach(({propName:R,templateName:$,transform:W})=>{k[function E(A){return A.replace(/[A-Z]/g,k=>`-${k.toLowerCase()}`)}($)]=[R,W]}),k}(R);class ze extends _{static#e=this.observedAttributes=Object.keys(W);get ngElementStrategy(){if(!this._ngElementStrategy){const G=this._ngElementStrategy=$.create(this.injector||k.injector);R.forEach(({propName:V,transform:K})=>{if(!this.hasOwnProperty(V))return;const te=this[V];delete this[V],G.setInputValue(V,te,K)})}return this._ngElementStrategy}constructor(G){super(),this.injector=G}attributeChangedCallback(G,V,K,te){const[ne,fe]=W[G];this.ngElementStrategy.setInputValue(ne,K,fe)}connectedCallback(){let G=!1;this.ngElementStrategy.events&&(this.subscribeToEvents(),G=!0),this.ngElementStrategy.connect(this),G||this.subscribeToEvents()}disconnectedCallback(){this._ngElementStrategy&&this._ngElementStrategy.disconnect(),this.ngElementEventsSubscription&&(this.ngElementEventsSubscription.unsubscribe(),this.ngElementEventsSubscription=null)}subscribeToEvents(){this.ngElementEventsSubscription=this.ngElementStrategy.events.subscribe(G=>{const V=new CustomEvent(G.name,{detail:G.value});this.dispatchEvent(V)})}}return R.forEach(({propName:Y,transform:G})=>{Object.defineProperty(ze.prototype,Y,{get(){return this.ngElementStrategy.getInputValue(Y)},set(V){this.ngElementStrategy.setInputValue(Y,V,G)},configurable:!0,enumerable:!0})}),ze}const S=new e.GfV("16.2.11")},60095:(nt,I,o)=>{"use strict";o.d(I,{TO:()=>Pe,ve:()=>D,Wl:()=>y,Fj:()=>_,NI:()=>Ri,oH:()=>St,u:()=>ui,cw:()=>Je,sg:()=>We,u5:()=>fs,nD:()=>Gt,JU:()=>p,a5:()=>ot,JJ:()=>U,JL:()=>B,F:()=>po,On:()=>ki,c5:()=>dt,UX:()=>$o,Q7:()=>ji,kI:()=>$,_Y:()=>oi});var e=o(65879),n=o(96814),t=o(7715),i=o(65592),l=o(17453),C=o(54829),E=o(79940),u=o(8251),z=o(97400),M=o(92714),v=o(37398);let g=(()=>{class at{constructor(Fe,Tt){this._renderer=Fe,this._elementRef=Tt,this.onChange=jt=>{},this.onTouched=()=>{}}setProperty(Fe,Tt){this._renderer.setProperty(this._elementRef.nativeElement,Fe,Tt)}registerOnTouched(Fe){this.onTouched=Fe}registerOnChange(Fe){this.onChange=Fe}setDisabledState(Fe){this.setProperty("disabled",Fe)}static#e=this.\u0275fac=function(Tt){return new(Tt||at)(e.Y36(e.Qsj),e.Y36(e.SBq))};static#t=this.\u0275dir=e.lG2({type:at})}return at})(),d=(()=>{class at extends g{static#e=this.\u0275fac=function(){let Fe;return function(jt){return(Fe||(Fe=e.n5z(at)))(jt||at)}}();static#t=this.\u0275dir=e.lG2({type:at,features:[e.qOj]})}return at})();const p=new e.OlP("NgValueAccessor"),f={provide:p,useExisting:(0,e.Gpc)(()=>y),multi:!0};let y=(()=>{class at extends d{writeValue(Fe){this.setProperty("checked",Fe)}static#e=this.\u0275fac=function(){let Fe;return function(jt){return(Fe||(Fe=e.n5z(at)))(jt||at)}}();static#t=this.\u0275dir=e.lG2({type:at,selectors:[["input","type","checkbox","formControlName",""],["input","type","checkbox","formControl",""],["input","type","checkbox","ngModel",""]],hostBindings:function(Tt,jt){1&Tt&&e.NdJ("change",function(jn){return jt.onChange(jn.target.checked)})("blur",function(){return jt.onTouched()})},features:[e._Bn([f]),e.qOj]})}return at})();const T={provide:p,useExisting:(0,e.Gpc)(()=>_),multi:!0},D=new e.OlP("CompositionEventMode");let _=(()=>{class at extends g{constructor(Fe,Tt,jt){super(Fe,Tt),this._compositionMode=jt,this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function x(){const at=(0,n.q)()?(0,n.q)().getUserAgent():"";return/android (\d+)/.test(at.toLowerCase())}())}writeValue(Fe){this.setProperty("value",Fe??"")}_handleInput(Fe){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(Fe)}_compositionStart(){this._composing=!0}_compositionEnd(Fe){this._composing=!1,this._compositionMode&&this.onChange(Fe)}static#e=this.\u0275fac=function(Tt){return new(Tt||at)(e.Y36(e.Qsj),e.Y36(e.SBq),e.Y36(D,8))};static#t=this.\u0275dir=e.lG2({type:at,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(Tt,jt){1&Tt&&e.NdJ("input",function(jn){return jt._handleInput(jn.target.value)})("blur",function(){return jt.onTouched()})("compositionstart",function(){return jt._compositionStart()})("compositionend",function(jn){return jt._compositionEnd(jn.target.value)})},features:[e._Bn([T]),e.qOj]})}return at})();function P(at){return null==at||("string"==typeof at||Array.isArray(at))&&0===at.length}function S(at){return null!=at&&"number"==typeof at.length}const A=new e.OlP("NgValidators"),k=new e.OlP("NgAsyncValidators"),R=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;class ${static min(ht){return function W(at){return ht=>{if(P(ht.value)||P(at))return null;const Fe=parseFloat(ht.value);return!isNaN(Fe)&&Fe{if(P(ht.value)||P(at))return null;const Fe=parseFloat(ht.value);return!isNaN(Fe)&&Fe>at?{max:{max:at,actual:ht.value}}:null}}(ht)}static required(ht){return Y(ht)}static requiredTrue(ht){return function G(at){return!0===at.value?null:{required:!0}}(ht)}static email(ht){return function V(at){return P(at.value)||R.test(at.value)?null:{email:!0}}(ht)}static minLength(ht){return function K(at){return ht=>P(ht.value)||!S(ht.value)?null:ht.value.lengthS(ht.value)&&ht.value.length>at?{maxlength:{requiredLength:at,actualLength:ht.value.length}}:null}function ne(at){if(!at)return fe;let ht,Fe;return"string"==typeof at?(Fe="","^"!==at.charAt(0)&&(Fe+="^"),Fe+=at,"$"!==at.charAt(at.length-1)&&(Fe+="$"),ht=new RegExp(Fe)):(Fe=at.toString(),ht=at),Tt=>{if(P(Tt.value))return null;const jt=Tt.value;return ht.test(jt)?null:{pattern:{requiredPattern:Fe,actualValue:jt}}}}function fe(at){return null}function re(at){return null!=at}function be(at){return(0,e.QGY)(at)?(0,t.D)(at):at}function le(at){let ht={};return at.forEach(Fe=>{ht=null!=Fe?{...ht,...Fe}:ht}),0===Object.keys(ht).length?null:ht}function ce(at,ht){return ht.map(Fe=>Fe(at))}function ie(at){return at.map(ht=>function Q(at){return!at.validate}(ht)?ht:Fe=>ht.validate(Fe))}function ae(at){if(!at)return null;const ht=at.filter(re);return 0==ht.length?null:function(Fe){return le(ce(Fe,ht))}}function xe(at){return null!=at?ae(ie(at)):null}function Me(at){if(!at)return null;const ht=at.filter(re);return 0==ht.length?null:function(Fe){return function h(...at){const ht=(0,E.jO)(at),{args:Fe,keys:Tt}=(0,l.D)(at),jt=new i.y(Nn=>{const{length:jn}=Fe;if(!jn)return void Nn.complete();const co=new Array(jn);let jo=jn,Fo=jn;for(let ys=0;ys{Co||(Co=!0,Fo--),co[ys]=Eo},()=>jo--,void 0,()=>{(!jo||!Co)&&(Fo||Nn.next(Tt?(0,M.n)(Tt,co):co),Nn.complete())}))}});return ht?jt.pipe((0,z.Z)(ht)):jt}(ce(Fe,ht).map(be)).pipe((0,v.U)(le))}}function Ye(at){return null!=at?Me(ie(at)):null}function q(at,ht){return null===at?[ht]:Array.isArray(at)?[...at,ht]:[at,ht]}function ve(at){return at._rawValidators}function ee(at){return at._rawAsyncValidators}function Be(at){return at?Array.isArray(at)?at:[at]:[]}function Re(at,ht){return Array.isArray(at)?at.includes(ht):at===ht}function ct(at,ht){const Fe=Be(ht);return Be(at).forEach(jt=>{Re(Fe,jt)||Fe.push(jt)}),Fe}function Ae(at,ht){return Be(ht).filter(Fe=>!Re(at,Fe))}class Mt{constructor(){this._rawValidators=[],this._rawAsyncValidators=[],this._onDestroyCallbacks=[]}get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}_setValidators(ht){this._rawValidators=ht||[],this._composedValidatorFn=xe(this._rawValidators)}_setAsyncValidators(ht){this._rawAsyncValidators=ht||[],this._composedAsyncValidatorFn=Ye(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_registerOnDestroy(ht){this._onDestroyCallbacks.push(ht)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(ht=>ht()),this._onDestroyCallbacks=[]}reset(ht=void 0){this.control&&this.control.reset(ht)}hasError(ht,Fe){return!!this.control&&this.control.hasError(ht,Fe)}getError(ht,Fe){return this.control?this.control.getError(ht,Fe):null}}class je extends Mt{get formDirective(){return null}get path(){return null}}class ot extends Mt{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null}}class mt{constructor(ht){this._cd=ht}get isTouched(){return!!this._cd?.control?.touched}get isUntouched(){return!!this._cd?.control?.untouched}get isPristine(){return!!this._cd?.control?.pristine}get isDirty(){return!!this._cd?.control?.dirty}get isValid(){return!!this._cd?.control?.valid}get isInvalid(){return!!this._cd?.control?.invalid}get isPending(){return!!this._cd?.control?.pending}get isSubmitted(){return!!this._cd?.submitted}}let U=(()=>{class at extends mt{constructor(Fe){super(Fe)}static#e=this.\u0275fac=function(Tt){return new(Tt||at)(e.Y36(ot,2))};static#t=this.\u0275dir=e.lG2({type:at,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(Tt,jt){2&Tt&&e.ekj("ng-untouched",jt.isUntouched)("ng-touched",jt.isTouched)("ng-pristine",jt.isPristine)("ng-dirty",jt.isDirty)("ng-valid",jt.isValid)("ng-invalid",jt.isInvalid)("ng-pending",jt.isPending)},features:[e.qOj]})}return at})(),B=(()=>{class at extends mt{constructor(Fe){super(Fe)}static#e=this.\u0275fac=function(Tt){return new(Tt||at)(e.Y36(je,10))};static#t=this.\u0275dir=e.lG2({type:at,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(Tt,jt){2&Tt&&e.ekj("ng-untouched",jt.isUntouched)("ng-touched",jt.isTouched)("ng-pristine",jt.isPristine)("ng-dirty",jt.isDirty)("ng-valid",jt.isValid)("ng-invalid",jt.isInvalid)("ng-pending",jt.isPending)("ng-submitted",jt.isSubmitted)},features:[e.qOj]})}return at})();const xt="VALID",Qe="INVALID",ke="PENDING",pe="DISABLED";function qe(at){return(Ue(at)?at.validators:at)||null}function Ze(at,ht){return(Ue(ht)?ht.asyncValidators:at)||null}function Ue(at){return null!=at&&!Array.isArray(at)&&"object"==typeof at}class Pe{constructor(ht,Fe){this._pendingDirty=!1,this._hasOwnPendingAsyncValidator=!1,this._pendingTouched=!1,this._onCollectionChange=()=>{},this._parent=null,this.pristine=!0,this.touched=!1,this._onDisabledChange=[],this._assignValidators(ht),this._assignAsyncValidators(Fe)}get validator(){return this._composedValidatorFn}set validator(ht){this._rawValidators=this._composedValidatorFn=ht}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(ht){this._rawAsyncValidators=this._composedAsyncValidatorFn=ht}get parent(){return this._parent}get valid(){return this.status===xt}get invalid(){return this.status===Qe}get pending(){return this.status==ke}get disabled(){return this.status===pe}get enabled(){return this.status!==pe}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(ht){this._assignValidators(ht)}setAsyncValidators(ht){this._assignAsyncValidators(ht)}addValidators(ht){this.setValidators(ct(ht,this._rawValidators))}addAsyncValidators(ht){this.setAsyncValidators(ct(ht,this._rawAsyncValidators))}removeValidators(ht){this.setValidators(Ae(ht,this._rawValidators))}removeAsyncValidators(ht){this.setAsyncValidators(Ae(ht,this._rawAsyncValidators))}hasValidator(ht){return Re(this._rawValidators,ht)}hasAsyncValidator(ht){return Re(this._rawAsyncValidators,ht)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(ht={}){this.touched=!0,this._parent&&!ht.onlySelf&&this._parent.markAsTouched(ht)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(ht=>ht.markAllAsTouched())}markAsUntouched(ht={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(Fe=>{Fe.markAsUntouched({onlySelf:!0})}),this._parent&&!ht.onlySelf&&this._parent._updateTouched(ht)}markAsDirty(ht={}){this.pristine=!1,this._parent&&!ht.onlySelf&&this._parent.markAsDirty(ht)}markAsPristine(ht={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(Fe=>{Fe.markAsPristine({onlySelf:!0})}),this._parent&&!ht.onlySelf&&this._parent._updatePristine(ht)}markAsPending(ht={}){this.status=ke,!1!==ht.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!ht.onlySelf&&this._parent.markAsPending(ht)}disable(ht={}){const Fe=this._parentMarkedDirty(ht.onlySelf);this.status=pe,this.errors=null,this._forEachChild(Tt=>{Tt.disable({...ht,onlySelf:!0})}),this._updateValue(),!1!==ht.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors({...ht,skipPristineCheck:Fe}),this._onDisabledChange.forEach(Tt=>Tt(!0))}enable(ht={}){const Fe=this._parentMarkedDirty(ht.onlySelf);this.status=xt,this._forEachChild(Tt=>{Tt.enable({...ht,onlySelf:!0})}),this.updateValueAndValidity({onlySelf:!0,emitEvent:ht.emitEvent}),this._updateAncestors({...ht,skipPristineCheck:Fe}),this._onDisabledChange.forEach(Tt=>Tt(!1))}_updateAncestors(ht){this._parent&&!ht.onlySelf&&(this._parent.updateValueAndValidity(ht),ht.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(ht){this._parent=ht}getRawValue(){return this.value}updateValueAndValidity(ht={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===xt||this.status===ke)&&this._runAsyncValidator(ht.emitEvent)),!1!==ht.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!ht.onlySelf&&this._parent.updateValueAndValidity(ht)}_updateTreeValidity(ht={emitEvent:!0}){this._forEachChild(Fe=>Fe._updateTreeValidity(ht)),this.updateValueAndValidity({onlySelf:!0,emitEvent:ht.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?pe:xt}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(ht){if(this.asyncValidator){this.status=ke,this._hasOwnPendingAsyncValidator=!0;const Fe=be(this.asyncValidator(this));this._asyncValidationSubscription=Fe.subscribe(Tt=>{this._hasOwnPendingAsyncValidator=!1,this.setErrors(Tt,{emitEvent:ht})})}}_cancelExistingSubscription(){this._asyncValidationSubscription&&(this._asyncValidationSubscription.unsubscribe(),this._hasOwnPendingAsyncValidator=!1)}setErrors(ht,Fe={}){this.errors=ht,this._updateControlsErrors(!1!==Fe.emitEvent)}get(ht){let Fe=ht;return null==Fe||(Array.isArray(Fe)||(Fe=Fe.split(".")),0===Fe.length)?null:Fe.reduce((Tt,jt)=>Tt&&Tt._find(jt),this)}getError(ht,Fe){const Tt=Fe?this.get(Fe):this;return Tt&&Tt.errors?Tt.errors[ht]:null}hasError(ht,Fe){return!!this.getError(ht,Fe)}get root(){let ht=this;for(;ht._parent;)ht=ht._parent;return ht}_updateControlsErrors(ht){this.status=this._calculateStatus(),ht&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(ht)}_initObservables(){this.valueChanges=new e.vpe,this.statusChanges=new e.vpe}_calculateStatus(){return this._allControlsDisabled()?pe:this.errors?Qe:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(ke)?ke:this._anyControlsHaveStatus(Qe)?Qe:xt}_anyControlsHaveStatus(ht){return this._anyControls(Fe=>Fe.status===ht)}_anyControlsDirty(){return this._anyControls(ht=>ht.dirty)}_anyControlsTouched(){return this._anyControls(ht=>ht.touched)}_updatePristine(ht={}){this.pristine=!this._anyControlsDirty(),this._parent&&!ht.onlySelf&&this._parent._updatePristine(ht)}_updateTouched(ht={}){this.touched=this._anyControlsTouched(),this._parent&&!ht.onlySelf&&this._parent._updateTouched(ht)}_registerOnCollectionChange(ht){this._onCollectionChange=ht}_setUpdateStrategy(ht){Ue(ht)&&null!=ht.updateOn&&(this._updateOn=ht.updateOn)}_parentMarkedDirty(ht){return!ht&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}_find(ht){return null}_assignValidators(ht){this._rawValidators=Array.isArray(ht)?ht.slice():ht,this._composedValidatorFn=function ge(at){return Array.isArray(at)?xe(at):at||null}(this._rawValidators)}_assignAsyncValidators(ht){this._rawAsyncValidators=Array.isArray(ht)?ht.slice():ht,this._composedAsyncValidatorFn=function $e(at){return Array.isArray(at)?Ye(at):at||null}(this._rawAsyncValidators)}}class Je extends Pe{constructor(ht,Fe,Tt){super(qe(Fe),Ze(Tt,Fe)),this.controls=ht,this._initObservables(),this._setUpdateStrategy(Fe),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}registerControl(ht,Fe){return this.controls[ht]?this.controls[ht]:(this.controls[ht]=Fe,Fe.setParent(this),Fe._registerOnCollectionChange(this._onCollectionChange),Fe)}addControl(ht,Fe,Tt={}){this.registerControl(ht,Fe),this.updateValueAndValidity({emitEvent:Tt.emitEvent}),this._onCollectionChange()}removeControl(ht,Fe={}){this.controls[ht]&&this.controls[ht]._registerOnCollectionChange(()=>{}),delete this.controls[ht],this.updateValueAndValidity({emitEvent:Fe.emitEvent}),this._onCollectionChange()}setControl(ht,Fe,Tt={}){this.controls[ht]&&this.controls[ht]._registerOnCollectionChange(()=>{}),delete this.controls[ht],Fe&&this.registerControl(ht,Fe),this.updateValueAndValidity({emitEvent:Tt.emitEvent}),this._onCollectionChange()}contains(ht){return this.controls.hasOwnProperty(ht)&&this.controls[ht].enabled}setValue(ht,Fe={}){(function De(at,ht,Fe){at._forEachChild((Tt,jt)=>{if(void 0===Fe[jt])throw new e.vHH(1002,"")})})(this,0,ht),Object.keys(ht).forEach(Tt=>{(function wt(at,ht,Fe){const Tt=at.controls;if(!(ht?Object.keys(Tt):Tt).length)throw new e.vHH(1e3,"");if(!Tt[Fe])throw new e.vHH(1001,"")})(this,!0,Tt),this.controls[Tt].setValue(ht[Tt],{onlySelf:!0,emitEvent:Fe.emitEvent})}),this.updateValueAndValidity(Fe)}patchValue(ht,Fe={}){null!=ht&&(Object.keys(ht).forEach(Tt=>{const jt=this.controls[Tt];jt&&jt.patchValue(ht[Tt],{onlySelf:!0,emitEvent:Fe.emitEvent})}),this.updateValueAndValidity(Fe))}reset(ht={},Fe={}){this._forEachChild((Tt,jt)=>{Tt.reset(ht?ht[jt]:null,{onlySelf:!0,emitEvent:Fe.emitEvent})}),this._updatePristine(Fe),this._updateTouched(Fe),this.updateValueAndValidity(Fe)}getRawValue(){return this._reduceChildren({},(ht,Fe,Tt)=>(ht[Tt]=Fe.getRawValue(),ht))}_syncPendingControls(){let ht=this._reduceChildren(!1,(Fe,Tt)=>!!Tt._syncPendingControls()||Fe);return ht&&this.updateValueAndValidity({onlySelf:!0}),ht}_forEachChild(ht){Object.keys(this.controls).forEach(Fe=>{const Tt=this.controls[Fe];Tt&&ht(Tt,Fe)})}_setUpControls(){this._forEachChild(ht=>{ht.setParent(this),ht._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(ht){for(const[Fe,Tt]of Object.entries(this.controls))if(this.contains(Fe)&&ht(Tt))return!0;return!1}_reduceValue(){return this._reduceChildren({},(Fe,Tt,jt)=>((Tt.enabled||this.disabled)&&(Fe[jt]=Tt.value),Fe))}_reduceChildren(ht,Fe){let Tt=ht;return this._forEachChild((jt,Nn)=>{Tt=Fe(Tt,jt,Nn)}),Tt}_allControlsDisabled(){for(const ht of Object.keys(this.controls))if(this.controls[ht].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_find(ht){return this.controls.hasOwnProperty(ht)?this.controls[ht]:null}}const b=new e.OlP("CallSetDisabledState",{providedIn:"root",factory:()=>N}),N="always";function O(at,ht){return[...ht.path,at]}function j(at,ht,Fe=N){bt(at,ht),ht.valueAccessor.writeValue(at.value),(at.disabled||"always"===Fe)&&ht.valueAccessor.setDisabledState?.(at.disabled),function sn(at,ht){ht.valueAccessor.registerOnChange(Fe=>{at._pendingValue=Fe,at._pendingChange=!0,at._pendingDirty=!0,"change"===at.updateOn&&vn(at,ht)})}(at,ht),function Dn(at,ht){const Fe=(Tt,jt)=>{ht.valueAccessor.writeValue(Tt),jt&&ht.viewToModelUpdate(Tt)};at.registerOnChange(Fe),ht._registerOnDestroy(()=>{at._unregisterOnChange(Fe)})}(at,ht),function pn(at,ht){ht.valueAccessor.registerOnTouched(()=>{at._pendingTouched=!0,"blur"===at.updateOn&&at._pendingChange&&vn(at,ht),"submit"!==at.updateOn&&at.markAsTouched()})}(at,ht),function Ce(at,ht){if(ht.valueAccessor.setDisabledState){const Fe=Tt=>{ht.valueAccessor.setDisabledState(Tt)};at.registerOnDisabledChange(Fe),ht._registerOnDestroy(()=>{at._unregisterOnDisabledChange(Fe)})}}(at,ht)}function L(at,ht,Fe=!0){const Tt=()=>{};ht.valueAccessor&&(ht.valueAccessor.registerOnChange(Tt),ht.valueAccessor.registerOnTouched(Tt)),Ft(at,ht),at&&(ht._invokeOnDestroyCallbacks(),at._registerOnCollectionChange(()=>{}))}function he(at,ht){at.forEach(Fe=>{Fe.registerOnValidatorChange&&Fe.registerOnValidatorChange(ht)})}function bt(at,ht){const Fe=ve(at);null!==ht.validator?at.setValidators(q(Fe,ht.validator)):"function"==typeof Fe&&at.setValidators([Fe]);const Tt=ee(at);null!==ht.asyncValidator?at.setAsyncValidators(q(Tt,ht.asyncValidator)):"function"==typeof Tt&&at.setAsyncValidators([Tt]);const jt=()=>at.updateValueAndValidity();he(ht._rawValidators,jt),he(ht._rawAsyncValidators,jt)}function Ft(at,ht){let Fe=!1;if(null!==at){if(null!==ht.validator){const jt=ve(at);if(Array.isArray(jt)&&jt.length>0){const Nn=jt.filter(jn=>jn!==ht.validator);Nn.length!==jt.length&&(Fe=!0,at.setValidators(Nn))}}if(null!==ht.asyncValidator){const jt=ee(at);if(Array.isArray(jt)&&jt.length>0){const Nn=jt.filter(jn=>jn!==ht.asyncValidator);Nn.length!==jt.length&&(Fe=!0,at.setAsyncValidators(Nn))}}}const Tt=()=>{};return he(ht._rawValidators,Tt),he(ht._rawAsyncValidators,Tt),Fe}function vn(at,ht){at._pendingDirty&&at.markAsDirty(),at.setValue(at._pendingValue,{emitModelToViewChange:!1}),ht.viewToModelUpdate(at._pendingValue),at._pendingChange=!1}function Mn(at,ht){bt(at,ht)}function ci(at,ht){if(!at.hasOwnProperty("model"))return!1;const Fe=at.model;return!!Fe.isFirstChange()||!Object.is(ht,Fe.currentValue)}function di(at,ht){at._syncPendingControls(),ht.forEach(Fe=>{const Tt=Fe.control;"submit"===Tt.updateOn&&Tt._pendingChange&&(Fe.viewToModelUpdate(Tt._pendingValue),Tt._pendingChange=!1)})}function hi(at,ht){if(!ht)return null;let Fe,Tt,jt;return Array.isArray(ht),ht.forEach(Nn=>{Nn.constructor===_?Fe=Nn:function ri(at){return Object.getPrototypeOf(at.constructor)===d}(Nn)?Tt=Nn:jt=Nn}),jt||Tt||Fe||null}const Oi={provide:je,useExisting:(0,e.Gpc)(()=>po)},ei=(()=>Promise.resolve())();let po=(()=>{class at extends je{constructor(Fe,Tt,jt){super(),this.callSetDisabledState=jt,this.submitted=!1,this._directives=new Set,this.ngSubmit=new e.vpe,this.form=new Je({},xe(Fe),Ye(Tt))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(Fe){ei.then(()=>{const Tt=this._findContainer(Fe.path);Fe.control=Tt.registerControl(Fe.name,Fe.control),j(Fe.control,Fe,this.callSetDisabledState),Fe.control.updateValueAndValidity({emitEvent:!1}),this._directives.add(Fe)})}getControl(Fe){return this.form.get(Fe.path)}removeControl(Fe){ei.then(()=>{const Tt=this._findContainer(Fe.path);Tt&&Tt.removeControl(Fe.name),this._directives.delete(Fe)})}addFormGroup(Fe){ei.then(()=>{const Tt=this._findContainer(Fe.path),jt=new Je({});Mn(jt,Fe),Tt.registerControl(Fe.name,jt),jt.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(Fe){ei.then(()=>{const Tt=this._findContainer(Fe.path);Tt&&Tt.removeControl(Fe.name)})}getFormGroup(Fe){return this.form.get(Fe.path)}updateModel(Fe,Tt){ei.then(()=>{this.form.get(Fe.path).setValue(Tt)})}setValue(Fe){this.control.setValue(Fe)}onSubmit(Fe){return this.submitted=!0,di(this.form,this._directives),this.ngSubmit.emit(Fe),"dialog"===Fe?.target?.method}onReset(){this.resetForm()}resetForm(Fe=void 0){this.form.reset(Fe),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(Fe){return Fe.pop(),Fe.length?this.form.get(Fe):this.form}static#e=this.\u0275fac=function(Tt){return new(Tt||at)(e.Y36(A,10),e.Y36(k,10),e.Y36(b,8))};static#t=this.\u0275dir=e.lG2({type:at,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(Tt,jt){1&Tt&&e.NdJ("submit",function(jn){return jt.onSubmit(jn)})("reset",function(){return jt.onReset()})},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[e._Bn([Oi]),e.qOj]})}return at})();function oo(at,ht){const Fe=at.indexOf(ht);Fe>-1&&at.splice(Fe,1)}function Wi(at){return"object"==typeof at&&null!==at&&2===Object.keys(at).length&&"value"in at&&"disabled"in at}const Ri=class extends Pe{constructor(ht=null,Fe,Tt){super(qe(Fe),Ze(Tt,Fe)),this.defaultValue=null,this._onChange=[],this._pendingChange=!1,this._applyFormState(ht),this._setUpdateStrategy(Fe),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),Ue(Fe)&&(Fe.nonNullable||Fe.initialValueIsDefault)&&(this.defaultValue=Wi(ht)?ht.value:ht)}setValue(ht,Fe={}){this.value=this._pendingValue=ht,this._onChange.length&&!1!==Fe.emitModelToViewChange&&this._onChange.forEach(Tt=>Tt(this.value,!1!==Fe.emitViewToModelChange)),this.updateValueAndValidity(Fe)}patchValue(ht,Fe={}){this.setValue(ht,Fe)}reset(ht=this.defaultValue,Fe={}){this._applyFormState(ht),this.markAsPristine(Fe),this.markAsUntouched(Fe),this.setValue(this.value,Fe),this._pendingChange=!1}_updateValue(){}_anyControls(ht){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(ht){this._onChange.push(ht)}_unregisterOnChange(ht){oo(this._onChange,ht)}registerOnDisabledChange(ht){this._onDisabledChange.push(ht)}_unregisterOnDisabledChange(ht){oo(this._onDisabledChange,ht)}_forEachChild(ht){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(ht){Wi(ht)?(this.value=this._pendingValue=ht.value,ht.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=ht}},Pi={provide:ot,useExisting:(0,e.Gpc)(()=>ki)},Ii=(()=>Promise.resolve())();let ki=(()=>{class at extends ot{constructor(Fe,Tt,jt,Nn,jn,co){super(),this._changeDetectorRef=jn,this.callSetDisabledState=co,this.control=new Ri,this._registered=!1,this.name="",this.update=new e.vpe,this._parent=Fe,this._setValidators(Tt),this._setAsyncValidators(jt),this.valueAccessor=hi(0,Nn)}ngOnChanges(Fe){if(this._checkForErrors(),!this._registered||"name"in Fe){if(this._registered&&(this._checkName(),this.formDirective)){const Tt=Fe.name.previousValue;this.formDirective.removeControl({name:Tt,path:this._getPath(Tt)})}this._setUpControl()}"isDisabled"in Fe&&this._updateDisabled(Fe),ci(Fe,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._getPath(this.name)}get formDirective(){return this._parent?this._parent.formDirective:null}viewToModelUpdate(Fe){this.viewModel=Fe,this.update.emit(Fe)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){j(this.control,this,this.callSetDisabledState),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()}_updateValue(Fe){Ii.then(()=>{this.control.setValue(Fe,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(Fe){const Tt=Fe.isDisabled.currentValue,jt=0!==Tt&&(0,e.VuI)(Tt);Ii.then(()=>{jt&&!this.control.disabled?this.control.disable():!jt&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(Fe){return this._parent?O(Fe,this._parent):[Fe]}static#e=this.\u0275fac=function(Tt){return new(Tt||at)(e.Y36(je,9),e.Y36(A,10),e.Y36(k,10),e.Y36(p,10),e.Y36(e.sBO,8),e.Y36(b,8))};static#t=this.\u0275dir=e.lG2({type:at,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:["disabled","isDisabled"],model:["ngModel","model"],options:["ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],features:[e._Bn([Pi]),e.qOj,e.TTD]})}return at})(),oi=(()=>{class at{static#e=this.\u0275fac=function(Tt){return new(Tt||at)};static#t=this.\u0275dir=e.lG2({type:at,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]})}return at})(),Ct=(()=>{class at{static#e=this.\u0275fac=function(Tt){return new(Tt||at)};static#t=this.\u0275mod=e.oAB({type:at});static#n=this.\u0275inj=e.cJS({})}return at})();const Sn=new e.OlP("NgModelWithFormControlWarning"),gi={provide:ot,useExisting:(0,e.Gpc)(()=>St)};let St=(()=>{class at extends ot{set isDisabled(Fe){}static#e=this._ngModelWarningSentOnce=!1;constructor(Fe,Tt,jt,Nn,jn){super(),this._ngModelWarningConfig=Nn,this.callSetDisabledState=jn,this.update=new e.vpe,this._ngModelWarningSent=!1,this._setValidators(Fe),this._setAsyncValidators(Tt),this.valueAccessor=hi(0,jt)}ngOnChanges(Fe){if(this._isControlChanged(Fe)){const Tt=Fe.form.previousValue;Tt&&L(Tt,this,!1),j(this.form,this,this.callSetDisabledState),this.form.updateValueAndValidity({emitEvent:!1})}ci(Fe,this.viewModel)&&(this.form.setValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.form&&L(this.form,this,!1)}get path(){return[]}get control(){return this.form}viewToModelUpdate(Fe){this.viewModel=Fe,this.update.emit(Fe)}_isControlChanged(Fe){return Fe.hasOwnProperty("form")}static#t=this.\u0275fac=function(Tt){return new(Tt||at)(e.Y36(A,10),e.Y36(k,10),e.Y36(p,10),e.Y36(Sn,8),e.Y36(b,8))};static#n=this.\u0275dir=e.lG2({type:at,selectors:[["","formControl",""]],inputs:{form:["formControl","form"],isDisabled:["disabled","isDisabled"],model:["ngModel","model"]},outputs:{update:"ngModelChange"},exportAs:["ngForm"],features:[e._Bn([gi]),e.qOj,e.TTD]})}return at})();const gt={provide:je,useExisting:(0,e.Gpc)(()=>We)};let We=(()=>{class at extends je{constructor(Fe,Tt,jt){super(),this.callSetDisabledState=jt,this.submitted=!1,this._onCollectionChange=()=>this._updateDomValue(),this.directives=[],this.form=null,this.ngSubmit=new e.vpe,this._setValidators(Fe),this._setAsyncValidators(Tt)}ngOnChanges(Fe){this._checkFormPresent(),Fe.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations(),this._oldForm=this.form)}ngOnDestroy(){this.form&&(Ft(this.form,this),this.form._onCollectionChange===this._onCollectionChange&&this.form._registerOnCollectionChange(()=>{}))}get formDirective(){return this}get control(){return this.form}get path(){return[]}addControl(Fe){const Tt=this.form.get(Fe.path);return j(Tt,Fe,this.callSetDisabledState),Tt.updateValueAndValidity({emitEvent:!1}),this.directives.push(Fe),Tt}getControl(Fe){return this.form.get(Fe.path)}removeControl(Fe){L(Fe.control||null,Fe,!1),function fi(at,ht){const Fe=at.indexOf(ht);Fe>-1&&at.splice(Fe,1)}(this.directives,Fe)}addFormGroup(Fe){this._setUpFormContainer(Fe)}removeFormGroup(Fe){this._cleanUpFormContainer(Fe)}getFormGroup(Fe){return this.form.get(Fe.path)}addFormArray(Fe){this._setUpFormContainer(Fe)}removeFormArray(Fe){this._cleanUpFormContainer(Fe)}getFormArray(Fe){return this.form.get(Fe.path)}updateModel(Fe,Tt){this.form.get(Fe.path).setValue(Tt)}onSubmit(Fe){return this.submitted=!0,di(this.form,this.directives),this.ngSubmit.emit(Fe),"dialog"===Fe?.target?.method}onReset(){this.resetForm()}resetForm(Fe=void 0){this.form.reset(Fe),this.submitted=!1}_updateDomValue(){this.directives.forEach(Fe=>{const Tt=Fe.control,jt=this.form.get(Fe.path);Tt!==jt&&(L(Tt||null,Fe),(at=>at instanceof Ri)(jt)&&(j(jt,Fe,this.callSetDisabledState),Fe.control=jt))}),this.form._updateTreeValidity({emitEvent:!1})}_setUpFormContainer(Fe){const Tt=this.form.get(Fe.path);Mn(Tt,Fe),Tt.updateValueAndValidity({emitEvent:!1})}_cleanUpFormContainer(Fe){if(this.form){const Tt=this.form.get(Fe.path);Tt&&function En(at,ht){return Ft(at,ht)}(Tt,Fe)&&Tt.updateValueAndValidity({emitEvent:!1})}}_updateRegistrations(){this.form._registerOnCollectionChange(this._onCollectionChange),this._oldForm&&this._oldForm._registerOnCollectionChange(()=>{})}_updateValidators(){bt(this.form,this),this._oldForm&&Ft(this._oldForm,this)}_checkFormPresent(){}static#e=this.\u0275fac=function(Tt){return new(Tt||at)(e.Y36(A,10),e.Y36(k,10),e.Y36(b,8))};static#t=this.\u0275dir=e.lG2({type:at,selectors:[["","formGroup",""]],hostBindings:function(Tt,jt){1&Tt&&e.NdJ("submit",function(jn){return jt.onSubmit(jn)})("reset",function(){return jt.onReset()})},inputs:{form:["formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[e._Bn([gt]),e.qOj,e.TTD]})}return at})();const Qn={provide:ot,useExisting:(0,e.Gpc)(()=>ui)};let ui=(()=>{class at extends ot{set isDisabled(Fe){}static#e=this._ngModelWarningSentOnce=!1;constructor(Fe,Tt,jt,Nn,jn){super(),this._ngModelWarningConfig=jn,this._added=!1,this.name=null,this.update=new e.vpe,this._ngModelWarningSent=!1,this._parent=Fe,this._setValidators(Tt),this._setAsyncValidators(jt),this.valueAccessor=hi(0,Nn)}ngOnChanges(Fe){this._added||this._setUpControl(),ci(Fe,this.viewModel)&&(this.viewModel=this.model,this.formDirective.updateModel(this,this.model))}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}viewToModelUpdate(Fe){this.viewModel=Fe,this.update.emit(Fe)}get path(){return O(null==this.name?this.name:this.name.toString(),this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}_checkParentType(){}_setUpControl(){this._checkParentType(),this.control=this.formDirective.addControl(this),this._added=!0}static#t=this.\u0275fac=function(Tt){return new(Tt||at)(e.Y36(je,13),e.Y36(A,10),e.Y36(k,10),e.Y36(p,10),e.Y36(Sn,8))};static#n=this.\u0275dir=e.lG2({type:at,selectors:[["","formControlName",""]],inputs:{name:["formControlName","name"],isDisabled:["disabled","isDisabled"],model:["ngModel","model"]},outputs:{update:"ngModelChange"},features:[e._Bn([Qn]),e.qOj,e.TTD]})}return at})();let ao=(()=>{class at{constructor(){this._validator=fe}ngOnChanges(Fe){if(this.inputName in Fe){const Tt=this.normalizeInput(Fe[this.inputName].currentValue);this._enabled=this.enabled(Tt),this._validator=this._enabled?this.createValidator(Tt):fe,this._onChange&&this._onChange()}}validate(Fe){return this._validator(Fe)}registerOnValidatorChange(Fe){this._onChange=Fe}enabled(Fe){return null!=Fe}static#e=this.\u0275fac=function(Tt){return new(Tt||at)};static#t=this.\u0275dir=e.lG2({type:at,features:[e.TTD]})}return at})();const es={provide:A,useExisting:(0,e.Gpc)(()=>ji),multi:!0};let ji=(()=>{class at extends ao{constructor(){super(...arguments),this.inputName="required",this.normalizeInput=e.VuI,this.createValidator=Fe=>Y}enabled(Fe){return Fe}static#e=this.\u0275fac=function(){let Fe;return function(jt){return(Fe||(Fe=e.n5z(at)))(jt||at)}}();static#t=this.\u0275dir=e.lG2({type:at,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(Tt,jt){2&Tt&&e.uIk("required",jt._enabled?"":null)},inputs:{required:"required"},features:[e._Bn([es]),e.qOj]})}return at})();const rt={provide:A,useExisting:(0,e.Gpc)(()=>Gt),multi:!0};let Gt=(()=>{class at extends ao{constructor(){super(...arguments),this.inputName="maxlength",this.normalizeInput=Fe=>function ps(at){return"number"==typeof at?at:parseInt(at,10)}(Fe),this.createValidator=Fe=>te(Fe)}static#e=this.\u0275fac=function(){let Fe;return function(jt){return(Fe||(Fe=e.n5z(at)))(jt||at)}}();static#t=this.\u0275dir=e.lG2({type:at,selectors:[["","maxlength","","formControlName",""],["","maxlength","","formControl",""],["","maxlength","","ngModel",""]],hostVars:1,hostBindings:function(Tt,jt){2&Tt&&e.uIk("maxlength",jt._enabled?jt.maxlength:null)},inputs:{maxlength:"maxlength"},features:[e._Bn([rt]),e.qOj]})}return at})();const Z={provide:A,useExisting:(0,e.Gpc)(()=>dt),multi:!0};let dt=(()=>{class at extends ao{constructor(){super(...arguments),this.inputName="pattern",this.normalizeInput=Fe=>Fe,this.createValidator=Fe=>ne(Fe)}static#e=this.\u0275fac=function(){let Fe;return function(jt){return(Fe||(Fe=e.n5z(at)))(jt||at)}}();static#t=this.\u0275dir=e.lG2({type:at,selectors:[["","pattern","","formControlName",""],["","pattern","","formControl",""],["","pattern","","ngModel",""]],hostVars:1,hostBindings:function(Tt,jt){2&Tt&&e.uIk("pattern",jt._enabled?jt.pattern:null)},inputs:{pattern:"pattern"},features:[e._Bn([Z]),e.qOj]})}return at})(),In=(()=>{class at{static#e=this.\u0275fac=function(Tt){return new(Tt||at)};static#t=this.\u0275mod=e.oAB({type:at});static#n=this.\u0275inj=e.cJS({imports:[Ct]})}return at})(),fs=(()=>{class at{static withConfig(Fe){return{ngModule:at,providers:[{provide:b,useValue:Fe.callSetDisabledState??N}]}}static#e=this.\u0275fac=function(Tt){return new(Tt||at)};static#t=this.\u0275mod=e.oAB({type:at});static#n=this.\u0275inj=e.cJS({imports:[In]})}return at})(),$o=(()=>{class at{static withConfig(Fe){return{ngModule:at,providers:[{provide:Sn,useValue:Fe.warnOnNgModelWithFormControl??"always"},{provide:b,useValue:Fe.callSetDisabledState??N}]}}static#e=this.\u0275fac=function(Tt){return new(Tt||at)};static#t=this.\u0275mod=e.oAB({type:at});static#n=this.\u0275inj=e.cJS({imports:[In]})}return at})()},6593:(nt,I,o)=>{"use strict";o.d(I,{Dx:()=>ot,H7:()=>Vt,b2:()=>Re,q6:()=>q,se:()=>R});var e=o(65879),n=o(96814);class t extends n.w_{constructor(){super(...arguments),this.supportsDOMEvents=!0}}class i extends t{static makeCurrent(){(0,n.HT)(new i)}onAndCancel(Ze,$e,Ue){return Ze.addEventListener($e,Ue),()=>{Ze.removeEventListener($e,Ue)}}dispatchEvent(Ze,$e){Ze.dispatchEvent($e)}remove(Ze){Ze.parentNode&&Ze.parentNode.removeChild(Ze)}createElement(Ze,$e){return($e=$e||this.getDefaultDocument()).createElement(Ze)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(Ze){return Ze.nodeType===Node.ELEMENT_NODE}isShadowRoot(Ze){return Ze instanceof DocumentFragment}getGlobalEventTarget(Ze,$e){return"window"===$e?window:"document"===$e?Ze:"body"===$e?Ze.body:null}getBaseHref(Ze){const $e=function C(){return l=l||document.querySelector("base"),l?l.getAttribute("href"):null}();return null==$e?null:function u(ge){E=E||document.createElement("a"),E.setAttribute("href",ge);const Ze=E.pathname;return"/"===Ze.charAt(0)?Ze:`/${Ze}`}($e)}resetBaseElement(){l=null}getUserAgent(){return window.navigator.userAgent}getCookie(Ze){return(0,n.Mx)(document.cookie,Ze)}}let E,l=null,M=(()=>{class ge{build(){return new XMLHttpRequest}static#e=this.\u0275fac=function(Ue){return new(Ue||ge)};static#t=this.\u0275prov=e.Yz7({token:ge,factory:ge.\u0275fac})}return ge})();const h=new e.OlP("EventManagerPlugins");let v=(()=>{class ge{constructor($e,Ue){this._zone=Ue,this._eventNameToPlugin=new Map,$e.forEach(wt=>{wt.manager=this}),this._plugins=$e.slice().reverse()}addEventListener($e,Ue,wt){return this._findPluginFor(Ue).addEventListener($e,Ue,wt)}getZone(){return this._zone}_findPluginFor($e){let Ue=this._eventNameToPlugin.get($e);if(Ue)return Ue;if(Ue=this._plugins.find(De=>De.supports($e)),!Ue)throw new e.vHH(5101,!1);return this._eventNameToPlugin.set($e,Ue),Ue}static#e=this.\u0275fac=function(Ue){return new(Ue||ge)(e.LFG(h),e.LFG(e.R0b))};static#t=this.\u0275prov=e.Yz7({token:ge,factory:ge.\u0275fac})}return ge})();class g{constructor(Ze){this._doc=Ze}}const d="ng-app-id";let p=(()=>{class ge{constructor($e,Ue,wt,De={}){this.doc=$e,this.appId=Ue,this.nonce=wt,this.platformId=De,this.styleRef=new Map,this.hostNodes=new Set,this.styleNodesInDOM=this.collectServerRenderedStyles(),this.platformIsServer=(0,n.PM)(De),this.resetHostNodes()}addStyles($e){for(const Ue of $e)1===this.changeUsageCount(Ue,1)&&this.onStyleAdded(Ue)}removeStyles($e){for(const Ue of $e)this.changeUsageCount(Ue,-1)<=0&&this.onStyleRemoved(Ue)}ngOnDestroy(){const $e=this.styleNodesInDOM;$e&&($e.forEach(Ue=>Ue.remove()),$e.clear());for(const Ue of this.getAllStyles())this.onStyleRemoved(Ue);this.resetHostNodes()}addHost($e){this.hostNodes.add($e);for(const Ue of this.getAllStyles())this.addStyleToHost($e,Ue)}removeHost($e){this.hostNodes.delete($e)}getAllStyles(){return this.styleRef.keys()}onStyleAdded($e){for(const Ue of this.hostNodes)this.addStyleToHost(Ue,$e)}onStyleRemoved($e){const Ue=this.styleRef;Ue.get($e)?.elements?.forEach(wt=>wt.remove()),Ue.delete($e)}collectServerRenderedStyles(){const $e=this.doc.head?.querySelectorAll(`style[${d}="${this.appId}"]`);if($e?.length){const Ue=new Map;return $e.forEach(wt=>{null!=wt.textContent&&Ue.set(wt.textContent,wt)}),Ue}return null}changeUsageCount($e,Ue){const wt=this.styleRef;if(wt.has($e)){const De=wt.get($e);return De.usage+=Ue,De.usage}return wt.set($e,{usage:Ue,elements:[]}),Ue}getStyleElement($e,Ue){const wt=this.styleNodesInDOM,De=wt?.get(Ue);if(De?.parentNode===$e)return wt.delete(Ue),De.removeAttribute(d),De;{const Pe=this.doc.createElement("style");return this.nonce&&Pe.setAttribute("nonce",this.nonce),Pe.textContent=Ue,this.platformIsServer&&Pe.setAttribute(d,this.appId),Pe}}addStyleToHost($e,Ue){const wt=this.getStyleElement($e,Ue);$e.appendChild(wt);const De=this.styleRef,Pe=De.get(Ue)?.elements;Pe?Pe.push(wt):De.set(Ue,{elements:[wt],usage:1})}resetHostNodes(){const $e=this.hostNodes;$e.clear(),$e.add(this.doc.head)}static#e=this.\u0275fac=function(Ue){return new(Ue||ge)(e.LFG(n.K0),e.LFG(e.AFp),e.LFG(e.Ojb,8),e.LFG(e.Lbi))};static#t=this.\u0275prov=e.Yz7({token:ge,factory:ge.\u0275fac})}return ge})();const f={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/",math:"http://www.w3.org/1998/MathML/"},y=/%COMP%/g,T="%COMP%",x=`_nghost-${T}`,D=`_ngcontent-${T}`,P=new e.OlP("RemoveStylesOnCompDestroy",{providedIn:"root",factory:()=>!1});function k(ge,Ze){return Ze.map($e=>$e.replace(y,ge))}let R=(()=>{class ge{constructor($e,Ue,wt,De,Pe,Je,Ge,Ke=null){this.eventManager=$e,this.sharedStylesHost=Ue,this.appId=wt,this.removeStylesOnCompDestroy=De,this.doc=Pe,this.platformId=Je,this.ngZone=Ge,this.nonce=Ke,this.rendererByCompId=new Map,this.platformIsServer=(0,n.PM)(Je),this.defaultRenderer=new $($e,Pe,Ge,this.platformIsServer)}createRenderer($e,Ue){if(!$e||!Ue)return this.defaultRenderer;this.platformIsServer&&Ue.encapsulation===e.ifc.ShadowDom&&(Ue={...Ue,encapsulation:e.ifc.Emulated});const wt=this.getOrCreateRenderer($e,Ue);return wt instanceof K?wt.applyToHost($e):wt instanceof V&&wt.applyStyles(),wt}getOrCreateRenderer($e,Ue){const wt=this.rendererByCompId;let De=wt.get(Ue.id);if(!De){const Pe=this.doc,Je=this.ngZone,Ge=this.eventManager,Ke=this.sharedStylesHost,_e=this.removeStylesOnCompDestroy,it=this.platformIsServer;switch(Ue.encapsulation){case e.ifc.Emulated:De=new K(Ge,Ke,Ue,this.appId,_e,Pe,Je,it);break;case e.ifc.ShadowDom:return new G(Ge,Ke,$e,Ue,Pe,Je,this.nonce,it);default:De=new V(Ge,Ke,Ue,_e,Pe,Je,it)}wt.set(Ue.id,De)}return De}ngOnDestroy(){this.rendererByCompId.clear()}static#e=this.\u0275fac=function(Ue){return new(Ue||ge)(e.LFG(v),e.LFG(p),e.LFG(e.AFp),e.LFG(P),e.LFG(n.K0),e.LFG(e.Lbi),e.LFG(e.R0b),e.LFG(e.Ojb))};static#t=this.\u0275prov=e.Yz7({token:ge,factory:ge.\u0275fac})}return ge})();class ${constructor(Ze,$e,Ue,wt){this.eventManager=Ze,this.doc=$e,this.ngZone=Ue,this.platformIsServer=wt,this.data=Object.create(null),this.destroyNode=null}destroy(){}createElement(Ze,$e){return $e?this.doc.createElementNS(f[$e]||$e,Ze):this.doc.createElement(Ze)}createComment(Ze){return this.doc.createComment(Ze)}createText(Ze){return this.doc.createTextNode(Ze)}appendChild(Ze,$e){(Y(Ze)?Ze.content:Ze).appendChild($e)}insertBefore(Ze,$e,Ue){Ze&&(Y(Ze)?Ze.content:Ze).insertBefore($e,Ue)}removeChild(Ze,$e){Ze&&Ze.removeChild($e)}selectRootElement(Ze,$e){let Ue="string"==typeof Ze?this.doc.querySelector(Ze):Ze;if(!Ue)throw new e.vHH(-5104,!1);return $e||(Ue.textContent=""),Ue}parentNode(Ze){return Ze.parentNode}nextSibling(Ze){return Ze.nextSibling}setAttribute(Ze,$e,Ue,wt){if(wt){$e=wt+":"+$e;const De=f[wt];De?Ze.setAttributeNS(De,$e,Ue):Ze.setAttribute($e,Ue)}else Ze.setAttribute($e,Ue)}removeAttribute(Ze,$e,Ue){if(Ue){const wt=f[Ue];wt?Ze.removeAttributeNS(wt,$e):Ze.removeAttribute(`${Ue}:${$e}`)}else Ze.removeAttribute($e)}addClass(Ze,$e){Ze.classList.add($e)}removeClass(Ze,$e){Ze.classList.remove($e)}setStyle(Ze,$e,Ue,wt){wt&(e.JOm.DashCase|e.JOm.Important)?Ze.style.setProperty($e,Ue,wt&e.JOm.Important?"important":""):Ze.style[$e]=Ue}removeStyle(Ze,$e,Ue){Ue&e.JOm.DashCase?Ze.style.removeProperty($e):Ze.style[$e]=""}setProperty(Ze,$e,Ue){Ze[$e]=Ue}setValue(Ze,$e){Ze.nodeValue=$e}listen(Ze,$e,Ue){if("string"==typeof Ze&&!(Ze=(0,n.q)().getGlobalEventTarget(this.doc,Ze)))throw new Error(`Unsupported event target ${Ze} for event ${$e}`);return this.eventManager.addEventListener(Ze,$e,this.decoratePreventDefault(Ue))}decoratePreventDefault(Ze){return $e=>{if("__ngUnwrap__"===$e)return Ze;!1===(this.platformIsServer?this.ngZone.runGuarded(()=>Ze($e)):Ze($e))&&$e.preventDefault()}}}function Y(ge){return"TEMPLATE"===ge.tagName&&void 0!==ge.content}class G extends ${constructor(Ze,$e,Ue,wt,De,Pe,Je,Ge){super(Ze,De,Pe,Ge),this.sharedStylesHost=$e,this.hostEl=Ue,this.shadowRoot=Ue.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const Ke=k(wt.id,wt.styles);for(const _e of Ke){const it=document.createElement("style");Je&&it.setAttribute("nonce",Je),it.textContent=_e,this.shadowRoot.appendChild(it)}}nodeOrShadowRoot(Ze){return Ze===this.hostEl?this.shadowRoot:Ze}appendChild(Ze,$e){return super.appendChild(this.nodeOrShadowRoot(Ze),$e)}insertBefore(Ze,$e,Ue){return super.insertBefore(this.nodeOrShadowRoot(Ze),$e,Ue)}removeChild(Ze,$e){return super.removeChild(this.nodeOrShadowRoot(Ze),$e)}parentNode(Ze){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(Ze)))}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}}class V extends ${constructor(Ze,$e,Ue,wt,De,Pe,Je,Ge){super(Ze,De,Pe,Je),this.sharedStylesHost=$e,this.removeStylesOnCompDestroy=wt,this.styles=Ge?k(Ge,Ue.styles):Ue.styles}applyStyles(){this.sharedStylesHost.addStyles(this.styles)}destroy(){this.removeStylesOnCompDestroy&&this.sharedStylesHost.removeStyles(this.styles)}}class K extends V{constructor(Ze,$e,Ue,wt,De,Pe,Je,Ge){const Ke=wt+"-"+Ue.id;super(Ze,$e,Ue,De,Pe,Je,Ge,Ke),this.contentAttr=function S(ge){return D.replace(y,ge)}(Ke),this.hostAttr=function A(ge){return x.replace(y,ge)}(Ke)}applyToHost(Ze){this.applyStyles(),this.setAttribute(Ze,this.hostAttr,"")}createElement(Ze,$e){const Ue=super.createElement(Ze,$e);return super.setAttribute(Ue,this.contentAttr,""),Ue}}let te=(()=>{class ge extends g{constructor($e){super($e)}supports($e){return!0}addEventListener($e,Ue,wt){return $e.addEventListener(Ue,wt,!1),()=>this.removeEventListener($e,Ue,wt)}removeEventListener($e,Ue,wt){return $e.removeEventListener(Ue,wt)}static#e=this.\u0275fac=function(Ue){return new(Ue||ge)(e.LFG(n.K0))};static#t=this.\u0275prov=e.Yz7({token:ge,factory:ge.\u0275fac})}return ge})();const ne=["alt","control","meta","shift"],fe={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},re={alt:ge=>ge.altKey,control:ge=>ge.ctrlKey,meta:ge=>ge.metaKey,shift:ge=>ge.shiftKey};let be=(()=>{class ge extends g{constructor($e){super($e)}supports($e){return null!=ge.parseEventName($e)}addEventListener($e,Ue,wt){const De=ge.parseEventName(Ue),Pe=ge.eventCallback(De.fullKey,wt,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>(0,n.q)().onAndCancel($e,De.domEventName,Pe))}static parseEventName($e){const Ue=$e.toLowerCase().split("."),wt=Ue.shift();if(0===Ue.length||"keydown"!==wt&&"keyup"!==wt)return null;const De=ge._normalizeKey(Ue.pop());let Pe="",Je=Ue.indexOf("code");if(Je>-1&&(Ue.splice(Je,1),Pe="code."),ne.forEach(Ke=>{const _e=Ue.indexOf(Ke);_e>-1&&(Ue.splice(_e,1),Pe+=Ke+".")}),Pe+=De,0!=Ue.length||0===De.length)return null;const Ge={};return Ge.domEventName=wt,Ge.fullKey=Pe,Ge}static matchEventFullKeyCode($e,Ue){let wt=fe[$e.key]||$e.key,De="";return Ue.indexOf("code.")>-1&&(wt=$e.code,De="code."),!(null==wt||!wt)&&(wt=wt.toLowerCase()," "===wt?wt="space":"."===wt&&(wt="dot"),ne.forEach(Pe=>{Pe!==wt&&(0,re[Pe])($e)&&(De+=Pe+".")}),De+=wt,De===Ue)}static eventCallback($e,Ue,wt){return De=>{ge.matchEventFullKeyCode(De,$e)&&wt.runGuarded(()=>Ue(De))}}static _normalizeKey($e){return"esc"===$e?"escape":$e}static#e=this.\u0275fac=function(Ue){return new(Ue||ge)(e.LFG(n.K0))};static#t=this.\u0275prov=e.Yz7({token:ge,factory:ge.\u0275fac})}return ge})();const q=(0,e.eFA)(e._c5,"browser",[{provide:e.Lbi,useValue:n.bD},{provide:e.g9A,useValue:function ae(){i.makeCurrent()},multi:!0},{provide:n.K0,useFactory:function Me(){return(0,e.RDi)(document),document},deps:[]}]),ve=new e.OlP(""),ee=[{provide:e.rWj,useClass:class z{addToWindow(Ze){e.dqk.getAngularTestability=(Ue,wt=!0)=>{const De=Ze.findTestabilityInTree(Ue,wt);if(null==De)throw new e.vHH(5103,!1);return De},e.dqk.getAllAngularTestabilities=()=>Ze.getAllTestabilities(),e.dqk.getAllAngularRootElements=()=>Ze.getAllRootElements(),e.dqk.frameworkStabilizers||(e.dqk.frameworkStabilizers=[]),e.dqk.frameworkStabilizers.push(Ue=>{const wt=e.dqk.getAllAngularTestabilities();let De=wt.length,Pe=!1;const Je=function(Ge){Pe=Pe||Ge,De--,0==De&&Ue(Pe)};wt.forEach(Ge=>{Ge.whenStable(Je)})})}findTestabilityInTree(Ze,$e,Ue){return null==$e?null:Ze.getTestability($e)??(Ue?(0,n.q)().isShadowRoot($e)?this.findTestabilityInTree(Ze,$e.host,!0):this.findTestabilityInTree(Ze,$e.parentElement,!0):null)}},deps:[]},{provide:e.lri,useClass:e.dDg,deps:[e.R0b,e.eoX,e.rWj]},{provide:e.dDg,useClass:e.dDg,deps:[e.R0b,e.eoX,e.rWj]}],Be=[{provide:e.zSh,useValue:"root"},{provide:e.qLn,useFactory:function xe(){return new e.qLn},deps:[]},{provide:h,useClass:te,multi:!0,deps:[n.K0,e.R0b,e.Lbi]},{provide:h,useClass:be,multi:!0,deps:[n.K0]},R,p,v,{provide:e.FYo,useExisting:R},{provide:n.JF,useClass:M,deps:[]},[]];let Re=(()=>{class ge{constructor($e){}static withServerTransition($e){return{ngModule:ge,providers:[{provide:e.AFp,useValue:$e.appId}]}}static#e=this.\u0275fac=function(Ue){return new(Ue||ge)(e.LFG(ve,12))};static#t=this.\u0275mod=e.oAB({type:ge});static#n=this.\u0275inj=e.cJS({providers:[...Be,...ee],imports:[n.ez,e.hGG]})}return ge})(),ot=(()=>{class ge{constructor($e){this._doc=$e}getTitle(){return this._doc.title}setTitle($e){this._doc.title=$e||""}static#e=this.\u0275fac=function(Ue){return new(Ue||ge)(e.LFG(n.K0))};static#t=this.\u0275prov=e.Yz7({token:ge,factory:function(Ue){let wt=null;return wt=Ue?new Ue:function je(){return new ot((0,e.LFG)(n.K0))}(),wt},providedIn:"root"})}return ge})();typeof window<"u"&&window;let Vt=(()=>{class ge{static#e=this.\u0275fac=function(Ue){return new(Ue||ge)};static#t=this.\u0275prov=e.Yz7({token:ge,factory:function(Ue){let wt=null;return wt=Ue?new(Ue||ge):e.LFG(He),wt},providedIn:"root"})}return ge})(),He=(()=>{class ge extends Vt{constructor($e){super(),this._doc=$e}sanitize($e,Ue){if(null==Ue)return null;switch($e){case e.q3G.NONE:return Ue;case e.q3G.HTML:return(0,e.qzn)(Ue,"HTML")?(0,e.z3N)(Ue):(0,e.EiD)(this._doc,String(Ue)).toString();case e.q3G.STYLE:return(0,e.qzn)(Ue,"Style")?(0,e.z3N)(Ue):Ue;case e.q3G.SCRIPT:if((0,e.qzn)(Ue,"Script"))return(0,e.z3N)(Ue);throw new e.vHH(5200,!1);case e.q3G.URL:return(0,e.qzn)(Ue,"URL")?(0,e.z3N)(Ue):(0,e.mCW)(String(Ue));case e.q3G.RESOURCE_URL:if((0,e.qzn)(Ue,"ResourceURL"))return(0,e.z3N)(Ue);throw new e.vHH(5201,!1);default:throw new e.vHH(5202,!1)}}bypassSecurityTrustHtml($e){return(0,e.JVY)($e)}bypassSecurityTrustStyle($e){return(0,e.L6k)($e)}bypassSecurityTrustScript($e){return(0,e.eBb)($e)}bypassSecurityTrustUrl($e){return(0,e.LAX)($e)}bypassSecurityTrustResourceUrl($e){return(0,e.pB0)($e)}static#e=this.\u0275fac=function(Ue){return new(Ue||ge)(e.LFG(n.K0))};static#t=this.\u0275prov=e.Yz7({token:ge,factory:function(Ue){let wt=null;return wt=Ue?new Ue:function st(ge){return new He(ge.get(n.K0))}(e.LFG(e.zs3)),wt},providedIn:"root"})}return ge})()},52787:(nt,I,o)=>{"use strict";o.d(I,{gz:()=>At,gk:()=>di,m2:()=>ri,Q3:()=>fi,OD:()=>ci,eC:()=>ie,cx:()=>Gn,GH:()=>Ri,xV:()=>Wi,F0:()=>ni,rH:()=>xi,Od:()=>Dr,Bz:()=>ai,lC:()=>Nt});var e=o(65879),n=o(2664),t=o(7715),i=o(22096),l=o(65619),C=o(52572),E=o(46973),u=o(35211),z=o(74911),M=o(88407),h=o(58504),v=o(36232),g=o(93168),d=o(78645),p=o(47394),f=o(96814),y=o(37398),T=o(94664),x=o(48180),D=o(27921),_=o(32181),P=o(21631),S=o(81374),A=o(76328),k=o(99397),R=o(26306),$=o(79360),W=o(8251);var G=o(43572);function V(ue){return ue<=0?()=>v.E:(0,$.e)((Se,oe)=>{let Oe=[];Se.subscribe((0,W.x)(oe,tt=>{Oe.push(tt),ue{for(const tt of Oe)oe.next(tt);oe.complete()},void 0,()=>{Oe=null}))})}var K=o(3026),te=o(42737),fe=o(21441),re=o(64716),be=o(66196),le=o(59773),ce=o(57537),Q=o(6593);const ie="primary",ae=Symbol("RouteTitle");class xe{constructor(Se){this.params=Se||{}}has(Se){return Object.prototype.hasOwnProperty.call(this.params,Se)}get(Se){if(this.has(Se)){const oe=this.params[Se];return Array.isArray(oe)?oe[0]:oe}return null}getAll(Se){if(this.has(Se)){const oe=this.params[Se];return Array.isArray(oe)?oe:[oe]}return[]}get keys(){return Object.keys(this.params)}}function Me(ue){return new xe(ue)}function Ye(ue,Se,oe){const Oe=oe.path.split("/");if(Oe.length>ue.length||"full"===oe.pathMatch&&(Se.hasChildren()||Oe.lengthOe[zt]===tt)}return ue===Se}function Be(ue){return ue.length>0?ue[ue.length-1]:null}function Re(ue){return(0,n.b)(ue)?ue:(0,e.QGY)(ue)?(0,t.D)(Promise.resolve(ue)):(0,i.of)(ue)}const ct={exact:function ot(ue,Se,oe){if(!pt(ue.segments,Se.segments)||!U(ue.segments,Se.segments,oe)||ue.numberOfChildren!==Se.numberOfChildren)return!1;for(const Oe in Se.children)if(!ue.children[Oe]||!ot(ue.children[Oe],Se.children[Oe],oe))return!1;return!0},subset:we},Ae={exact:function je(ue,Se){return ve(ue,Se)},subset:function mt(ue,Se){return Object.keys(Se).length<=Object.keys(ue).length&&Object.keys(Se).every(oe=>ee(ue[oe],Se[oe]))},ignored:()=>!0};function Mt(ue,Se,oe){return ct[oe.paths](ue.root,Se.root,oe.matrixParams)&&Ae[oe.queryParams](ue.queryParams,Se.queryParams)&&!("exact"===oe.fragment&&ue.fragment!==Se.fragment)}function we(ue,Se,oe){return de(ue,Se,Se.segments,oe)}function de(ue,Se,oe,Oe){if(ue.segments.length>oe.length){const tt=ue.segments.slice(0,oe.length);return!(!pt(tt,oe)||Se.hasChildren()||!U(tt,oe,Oe))}if(ue.segments.length===oe.length){if(!pt(ue.segments,oe)||!U(ue.segments,oe,Oe))return!1;for(const tt in Se.children)if(!ue.children[tt]||!we(ue.children[tt],Se.children[tt],Oe))return!1;return!0}{const tt=oe.slice(0,ue.segments.length),zt=oe.slice(ue.segments.length);return!!(pt(ue.segments,tt)&&U(ue.segments,tt,Oe)&&ue.children[ie])&&de(ue.children[ie],Se,zt,Oe)}}function U(ue,Se,oe){return Se.every((Oe,tt)=>Ae[oe](ue[tt].parameters,Oe.parameters))}class B{constructor(Se=new Ee([],{}),oe={},Oe=null){this.root=Se,this.queryParams=oe,this.fragment=Oe}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=Me(this.queryParams)),this._queryParamMap}toString(){return qt.serialize(this)}}class Ee{constructor(Se,oe){this.segments=Se,this.children=oe,this.parent=null,Object.values(oe).forEach(Oe=>Oe.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return en(this)}}class Ie{constructor(Se,oe){this.path=Se,this.parameters=oe}get parameterMap(){return this._parameterMap||(this._parameterMap=Me(this.parameters)),this._parameterMap}toString(){return Ot(this)}}function pt(ue,Se){return ue.length===Se.length&&ue.every((oe,Oe)=>oe.path===Se[Oe].path)}let Lt=(()=>{class ue{static#e=this.\u0275fac=function(Oe){return new(Oe||ue)};static#t=this.\u0275prov=e.Yz7({token:ue,factory:function(){return new Ut},providedIn:"root"})}return ue})();class Ut{parse(Se){const oe=new De(Se);return new B(oe.parseRootSegment(),oe.parseQueryParams(),oe.parseFragment())}serialize(Se){const oe=`/${cn(Se.root,!0)}`,Oe=function Qe(ue){const Se=Object.keys(ue).map(oe=>{const Oe=ue[oe];return Array.isArray(Oe)?Oe.map(tt=>`${Vt(oe)}=${Vt(tt)}`).join("&"):`${Vt(oe)}=${Vt(Oe)}`}).filter(oe=>!!oe);return Se.length?`?${Se.join("&")}`:""}(Se.queryParams);return`${oe}${Oe}${"string"==typeof Se.fragment?`#${function st(ue){return encodeURI(ue)}(Se.fragment)}`:""}`}}const qt=new Ut;function en(ue){return ue.segments.map(Se=>Ot(Se)).join("/")}function cn(ue,Se){if(!ue.hasChildren())return en(ue);if(Se){const oe=ue.children[ie]?cn(ue.children[ie],!1):"",Oe=[];return Object.entries(ue.children).forEach(([tt,zt])=>{tt!==ie&&Oe.push(`${tt}:${cn(zt,!1)}`)}),Oe.length>0?`${oe}(${Oe.join("//")})`:oe}{const oe=function Dt(ue,Se){let oe=[];return Object.entries(ue.children).forEach(([Oe,tt])=>{Oe===ie&&(oe=oe.concat(Se(tt,Oe)))}),Object.entries(ue.children).forEach(([Oe,tt])=>{Oe!==ie&&(oe=oe.concat(Se(tt,Oe)))}),oe}(ue,(Oe,tt)=>tt===ie?[cn(ue.children[ie],!1)]:[`${tt}:${cn(Oe,!1)}`]);return 1===Object.keys(ue.children).length&&null!=ue.children[ie]?`${en(ue)}/${oe[0]}`:`${en(ue)}/(${oe.join("//")})`}}function Wt(ue){return encodeURIComponent(ue).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Vt(ue){return Wt(ue).replace(/%3B/gi,";")}function He(ue){return Wt(ue).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function et(ue){return decodeURIComponent(ue)}function It(ue){return et(ue.replace(/\+/g,"%20"))}function Ot(ue){return`${He(ue.path)}${function xt(ue){return Object.keys(ue).map(Se=>`;${He(Se)}=${He(ue[Se])}`).join("")}(ue.parameters)}`}const ke=/^[^\/()?;#]+/;function pe(ue){const Se=ue.match(ke);return Se?Se[0]:""}const qe=/^[^\/()?;=#]+/,Ze=/^[^=?&#]+/,Ue=/^[^&#]+/;class De{constructor(Se){this.url=Se,this.remaining=Se}parseRootSegment(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new Ee([],{}):new Ee([],this.parseChildren())}parseQueryParams(){const Se={};if(this.consumeOptional("?"))do{this.parseQueryParam(Se)}while(this.consumeOptional("&"));return Se}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(""===this.remaining)return{};this.consumeOptional("/");const Se=[];for(this.peekStartsWith("(")||Se.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),Se.push(this.parseSegment());let oe={};this.peekStartsWith("/(")&&(this.capture("/"),oe=this.parseParens(!0));let Oe={};return this.peekStartsWith("(")&&(Oe=this.parseParens(!1)),(Se.length>0||Object.keys(oe).length>0)&&(Oe[ie]=new Ee(Se,oe)),Oe}parseSegment(){const Se=pe(this.remaining);if(""===Se&&this.peekStartsWith(";"))throw new e.vHH(4009,!1);return this.capture(Se),new Ie(et(Se),this.parseMatrixParams())}parseMatrixParams(){const Se={};for(;this.consumeOptional(";");)this.parseParam(Se);return Se}parseParam(Se){const oe=function ge(ue){const Se=ue.match(qe);return Se?Se[0]:""}(this.remaining);if(!oe)return;this.capture(oe);let Oe="";if(this.consumeOptional("=")){const tt=pe(this.remaining);tt&&(Oe=tt,this.capture(Oe))}Se[et(oe)]=et(Oe)}parseQueryParam(Se){const oe=function $e(ue){const Se=ue.match(Ze);return Se?Se[0]:""}(this.remaining);if(!oe)return;this.capture(oe);let Oe="";if(this.consumeOptional("=")){const Bt=function wt(ue){const Se=ue.match(Ue);return Se?Se[0]:""}(this.remaining);Bt&&(Oe=Bt,this.capture(Oe))}const tt=It(oe),zt=It(Oe);if(Se.hasOwnProperty(tt)){let Bt=Se[tt];Array.isArray(Bt)||(Bt=[Bt],Se[tt]=Bt),Bt.push(zt)}else Se[tt]=zt}parseParens(Se){const oe={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){const Oe=pe(this.remaining),tt=this.remaining[Oe.length];if("/"!==tt&&")"!==tt&&";"!==tt)throw new e.vHH(4010,!1);let zt;Oe.indexOf(":")>-1?(zt=Oe.slice(0,Oe.indexOf(":")),this.capture(zt),this.capture(":")):Se&&(zt=ie);const Bt=this.parseChildren();oe[zt]=1===Object.keys(Bt).length?Bt[ie]:new Ee([],Bt),this.consumeOptional("//")}return oe}peekStartsWith(Se){return this.remaining.startsWith(Se)}consumeOptional(Se){return!!this.peekStartsWith(Se)&&(this.remaining=this.remaining.substring(Se.length),!0)}capture(Se){if(!this.consumeOptional(Se))throw new e.vHH(4011,!1)}}function Pe(ue){return ue.segments.length>0?new Ee([],{[ie]:ue}):ue}function Je(ue){const Se={};for(const Oe of Object.keys(ue.children)){const zt=Je(ue.children[Oe]);if(Oe===ie&&0===zt.segments.length&&zt.hasChildren())for(const[Bt,on]of Object.entries(zt.children))Se[Bt]=on;else(zt.segments.length>0||zt.hasChildren())&&(Se[Oe]=zt)}return function Ge(ue){if(1===ue.numberOfChildren&&ue.children[ie]){const Se=ue.children[ie];return new Ee(ue.segments.concat(Se.segments),Se.children)}return ue}(new Ee(ue.segments,Se))}function Ke(ue){return ue instanceof B}function it(ue){let Se;const tt=Pe(function oe(zt){const Bt={};for(const tn of zt.children){const xn=oe(tn);Bt[tn.outlet]=xn}const on=new Ee(zt.url,Bt);return zt===ue&&(Se=on),on}(ue.root));return Se??tt}function b(ue,Se,oe,Oe){let tt=ue;for(;tt.parent;)tt=tt.parent;if(0===Se.length)return j(tt,tt,tt,oe,Oe);const zt=function Ce(ue){if("string"==typeof ue[0]&&1===ue.length&&"/"===ue[0])return new he(!0,0,ue);let Se=0,oe=!1;const Oe=ue.reduce((tt,zt,Bt)=>{if("object"==typeof zt&&null!=zt){if(zt.outlets){const on={};return Object.entries(zt.outlets).forEach(([tn,xn])=>{on[tn]="string"==typeof xn?xn.split("/"):xn}),[...tt,{outlets:on}]}if(zt.segmentPath)return[...tt,zt.segmentPath]}return"string"!=typeof zt?[...tt,zt]:0===Bt?(zt.split("/").forEach((on,tn)=>{0==tn&&"."===on||(0==tn&&""===on?oe=!0:".."===on?Se++:""!=on&&tt.push(on))}),tt):[...tt,zt]},[]);return new he(oe,Se,Oe)}(Se);if(zt.toRoot())return j(tt,tt,new Ee([],{}),oe,Oe);const Bt=function Ft(ue,Se,oe){if(ue.isAbsolute)return new bt(Se,!0,0);if(!oe)return new bt(Se,!1,NaN);if(null===oe.parent)return new bt(oe,!0,0);const Oe=N(ue.commands[0])?0:1;return function sn(ue,Se,oe){let Oe=ue,tt=Se,zt=oe;for(;zt>tt;){if(zt-=tt,Oe=Oe.parent,!Oe)throw new e.vHH(4005,!1);tt=Oe.segments.length}return new bt(Oe,!1,tt-zt)}(oe,oe.segments.length-1+Oe,ue.numberOfDoubleDots)}(zt,tt,ue),on=Bt.processChildren?Dn(Bt.segmentGroup,Bt.index,zt.commands):vn(Bt.segmentGroup,Bt.index,zt.commands);return j(tt,Bt.segmentGroup,on,oe,Oe)}function N(ue){return"object"==typeof ue&&null!=ue&&!ue.outlets&&!ue.segmentPath}function O(ue){return"object"==typeof ue&&null!=ue&&ue.outlets}function j(ue,Se,oe,Oe,tt){let Bt,zt={};Oe&&Object.entries(Oe).forEach(([tn,xn])=>{zt[tn]=Array.isArray(xn)?xn.map(ti=>`${ti}`):`${xn}`}),Bt=ue===Se?oe:L(ue,Se,oe);const on=Pe(Je(Bt));return new B(on,zt,tt)}function L(ue,Se,oe){const Oe={};return Object.entries(ue.children).forEach(([tt,zt])=>{Oe[tt]=zt===Se?oe:L(zt,Se,oe)}),new Ee(ue.segments,Oe)}class he{constructor(Se,oe,Oe){if(this.isAbsolute=Se,this.numberOfDoubleDots=oe,this.commands=Oe,Se&&Oe.length>0&&N(Oe[0]))throw new e.vHH(4003,!1);const tt=Oe.find(O);if(tt&&tt!==Be(Oe))throw new e.vHH(4004,!1)}toRoot(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}class bt{constructor(Se,oe,Oe){this.segmentGroup=Se,this.processChildren=oe,this.index=Oe}}function vn(ue,Se,oe){if(ue||(ue=new Ee([],{})),0===ue.segments.length&&ue.hasChildren())return Dn(ue,Se,oe);const Oe=function Mn(ue,Se,oe){let Oe=0,tt=Se;const zt={match:!1,pathIndex:0,commandIndex:0};for(;tt=oe.length)return zt;const Bt=ue.segments[tt],on=oe[Oe];if(O(on))break;const tn=`${on}`,xn=Oe0&&void 0===tn)break;if(tn&&xn&&"object"==typeof xn&&void 0===xn.outlets){if(!qn(tn,xn,Bt))return zt;Oe+=2}else{if(!qn(tn,{},Bt))return zt;Oe++}tt++}return{match:!0,pathIndex:tt,commandIndex:Oe}}(ue,Se,oe),tt=oe.slice(Oe.commandIndex);if(Oe.match&&Oe.pathIndexzt!==ie)&&ue.children[ie]&&1===ue.numberOfChildren&&0===ue.children[ie].segments.length){const zt=Dn(ue.children[ie],Se,oe);return new Ee(ue.segments,zt.children)}return Object.entries(Oe).forEach(([zt,Bt])=>{"string"==typeof Bt&&(Bt=[Bt]),null!==Bt&&(tt[zt]=vn(ue.children[zt],Se,Bt))}),Object.entries(ue.children).forEach(([zt,Bt])=>{void 0===Oe[zt]&&(tt[zt]=Bt)}),new Ee(ue.segments,tt)}}function En(ue,Se,oe){const Oe=ue.segments.slice(0,Se);let tt=0;for(;tt{"string"==typeof Oe&&(Oe=[Oe]),null!==Oe&&(Se[oe]=En(new Ee([],{}),0,Oe))}),Se}function Rn(ue){const Se={};return Object.entries(ue).forEach(([oe,Oe])=>Se[oe]=`${Oe}`),Se}function qn(ue,Se,oe){return ue==oe.path&&ve(Se,oe.parameters)}const si="imperative";class Wn{constructor(Se,oe){this.id=Se,this.url=oe}}class ci extends Wn{constructor(Se,oe,Oe="imperative",tt=null){super(Se,oe),this.type=0,this.navigationTrigger=Oe,this.restoredState=tt}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}}class ri extends Wn{constructor(Se,oe,Oe){super(Se,oe),this.urlAfterRedirects=Oe,this.type=1}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}}class di extends Wn{constructor(Se,oe,Oe,tt){super(Se,oe),this.reason=Oe,this.code=tt,this.type=2}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}}class hi extends Wn{constructor(Se,oe,Oe,tt){super(Se,oe),this.reason=Oe,this.code=tt,this.type=16}}class fi extends Wn{constructor(Se,oe,Oe,tt){super(Se,oe),this.error=Oe,this.target=tt,this.type=3}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}}class zi extends Wn{constructor(Se,oe,Oe,tt){super(Se,oe),this.urlAfterRedirects=Oe,this.state=tt,this.type=4}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class Oi extends Wn{constructor(Se,oe,Oe,tt){super(Se,oe),this.urlAfterRedirects=Oe,this.state=tt,this.type=7}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class ei extends Wn{constructor(Se,oe,Oe,tt,zt){super(Se,oe),this.urlAfterRedirects=Oe,this.state=tt,this.shouldActivate=zt,this.type=8}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}}class po extends Wn{constructor(Se,oe,Oe,tt){super(Se,oe),this.urlAfterRedirects=Oe,this.state=tt,this.type=5}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class oo extends Wn{constructor(Se,oe,Oe,tt){super(Se,oe),this.urlAfterRedirects=Oe,this.state=tt,this.type=6}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class Wi{constructor(Se){this.route=Se,this.type=9}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}}class Ri{constructor(Se){this.route=Se,this.type=10}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}}class Li{constructor(Se){this.snapshot=Se,this.type=11}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class $i{constructor(Se){this.snapshot=Se,this.type=12}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class Qi{constructor(Se){this.snapshot=Se,this.type=13}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class Mo{constructor(Se){this.snapshot=Se,this.type=14}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class wi{constructor(Se,oe,Oe){this.routerEvent=Se,this.position=oe,this.anchor=Oe,this.type=15}toString(){return`Scroll(anchor: '${this.anchor}', position: '${this.position?`${this.position[0]}, ${this.position[1]}`:null}')`}}class Xi{}class Ei{constructor(Se){this.url=Se}}class qi{constructor(){this.outlet=null,this.route=null,this.injector=null,this.children=new Pi,this.attachRef=null}}let Pi=(()=>{class ue{constructor(){this.contexts=new Map}onChildOutletCreated(oe,Oe){const tt=this.getOrCreateContext(oe);tt.outlet=Oe,this.contexts.set(oe,tt)}onChildOutletDestroyed(oe){const Oe=this.getContext(oe);Oe&&(Oe.outlet=null,Oe.attachRef=null)}onOutletDeactivated(){const oe=this.contexts;return this.contexts=new Map,oe}onOutletReAttached(oe){this.contexts=oe}getOrCreateContext(oe){let Oe=this.getContext(oe);return Oe||(Oe=new qi,this.contexts.set(oe,Oe)),Oe}getContext(oe){return this.contexts.get(oe)||null}static#e=this.\u0275fac=function(Oe){return new(Oe||ue)};static#t=this.\u0275prov=e.Yz7({token:ue,factory:ue.\u0275fac,providedIn:"root"})}return ue})();class Ii{constructor(Se){this._root=Se}get root(){return this._root.value}parent(Se){const oe=this.pathFromRoot(Se);return oe.length>1?oe[oe.length-2]:null}children(Se){const oe=ki(Se,this._root);return oe?oe.children.map(Oe=>Oe.value):[]}firstChild(Se){const oe=ki(Se,this._root);return oe&&oe.children.length>0?oe.children[0].value:null}siblings(Se){const oe=oi(Se,this._root);return oe.length<2?[]:oe[oe.length-2].children.map(tt=>tt.value).filter(tt=>tt!==Se)}pathFromRoot(Se){return oi(Se,this._root).map(oe=>oe.value)}}function ki(ue,Se){if(ue===Se.value)return Se;for(const oe of Se.children){const Oe=ki(ue,oe);if(Oe)return Oe}return null}function oi(ue,Se){if(ue===Se.value)return[Se];for(const oe of Se.children){const Oe=oi(ue,oe);if(Oe.length)return Oe.unshift(Se),Oe}return[]}class Bn{constructor(Se,oe){this.value=Se,this.children=oe}toString(){return`TreeNode(${this.value})`}}function Et(ue){const Se={};return ue&&ue.children.forEach(oe=>Se[oe.value.outlet]=oe),Se}class un extends Ii{constructor(Se,oe){super(Se),this.snapshot=oe,gi(this,Se)}toString(){return this.snapshot.toString()}}function lt(ue,Se){const oe=function Ct(ue,Se){const Bt=new Ln([],{},{},"",{},ie,Se,null,{});return new Sn("",new Bn(Bt,[]))}(0,Se),Oe=new l.X([new Ie("",{})]),tt=new l.X({}),zt=new l.X({}),Bt=new l.X({}),on=new l.X(""),tn=new At(Oe,tt,Bt,on,zt,ie,Se,oe.root);return tn.snapshot=oe.root,new un(new Bn(tn,[]),oe)}class At{constructor(Se,oe,Oe,tt,zt,Bt,on,tn){this.urlSubject=Se,this.paramsSubject=oe,this.queryParamsSubject=Oe,this.fragmentSubject=tt,this.dataSubject=zt,this.outlet=Bt,this.component=on,this._futureSnapshot=tn,this.title=this.dataSubject?.pipe((0,y.U)(xn=>xn[ae]))??(0,i.of)(void 0),this.url=Se,this.params=oe,this.queryParams=Oe,this.fragment=tt,this.data=zt}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=this.params.pipe((0,y.U)(Se=>Me(Se)))),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe((0,y.U)(Se=>Me(Se)))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}}function Qt(ue,Se="emptyOnly"){const oe=ue.pathFromRoot;let Oe=0;if("always"!==Se)for(Oe=oe.length-1;Oe>=1;){const tt=oe[Oe],zt=oe[Oe-1];if(tt.routeConfig&&""===tt.routeConfig.path)Oe--;else{if(zt.component)break;Oe--}}return function gn(ue){return ue.reduce((Se,oe)=>({params:{...Se.params,...oe.params},data:{...Se.data,...oe.data},resolve:{...oe.data,...Se.resolve,...oe.routeConfig?.data,...oe._resolvedData}}),{params:{},data:{},resolve:{}})}(oe.slice(Oe))}class Ln{get title(){return this.data?.[ae]}constructor(Se,oe,Oe,tt,zt,Bt,on,tn,xn){this.url=Se,this.params=oe,this.queryParams=Oe,this.fragment=tt,this.data=zt,this.outlet=Bt,this.component=on,this.routeConfig=tn,this._resolve=xn}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=Me(this.params)),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=Me(this.queryParams)),this._queryParamMap}toString(){return`Route(url:'${this.url.map(Oe=>Oe.toString()).join("/")}', path:'${this.routeConfig?this.routeConfig.path:""}')`}}class Sn extends Ii{constructor(Se,oe){super(oe),this.url=Se,gi(this,oe)}toString(){return St(this._root)}}function gi(ue,Se){Se.value._routerState=ue,Se.children.forEach(oe=>gi(ue,oe))}function St(ue){const Se=ue.children.length>0?` { ${ue.children.map(St).join(", ")} } `:"";return`${ue.value}${Se}`}function gt(ue){if(ue.snapshot){const Se=ue.snapshot,oe=ue._futureSnapshot;ue.snapshot=oe,ve(Se.queryParams,oe.queryParams)||ue.queryParamsSubject.next(oe.queryParams),Se.fragment!==oe.fragment&&ue.fragmentSubject.next(oe.fragment),ve(Se.params,oe.params)||ue.paramsSubject.next(oe.params),function q(ue,Se){if(ue.length!==Se.length)return!1;for(let oe=0;oeve(oe.parameters,Se[Oe].parameters))}(ue.url,Se.url);return oe&&!(!ue.parent!=!Se.parent)&&(!ue.parent||We(ue.parent,Se.parent))}let Nt=(()=>{class ue{constructor(){this.activated=null,this._activatedRoute=null,this.name=ie,this.activateEvents=new e.vpe,this.deactivateEvents=new e.vpe,this.attachEvents=new e.vpe,this.detachEvents=new e.vpe,this.parentContexts=(0,e.f3M)(Pi),this.location=(0,e.f3M)(e.s_b),this.changeDetector=(0,e.f3M)(e.sBO),this.environmentInjector=(0,e.f3M)(e.lqb),this.inputBinder=(0,e.f3M)(ln,{optional:!0}),this.supportsBindingToComponentInputs=!0}get activatedComponentRef(){return this.activated}ngOnChanges(oe){if(oe.name){const{firstChange:Oe,previousValue:tt}=oe.name;if(Oe)return;this.isTrackedInParentContexts(tt)&&(this.deactivate(),this.parentContexts.onChildOutletDestroyed(tt)),this.initializeOutletWithName()}}ngOnDestroy(){this.isTrackedInParentContexts(this.name)&&this.parentContexts.onChildOutletDestroyed(this.name),this.inputBinder?.unsubscribeFromRouteData(this)}isTrackedInParentContexts(oe){return this.parentContexts.getContext(oe)?.outlet===this}ngOnInit(){this.initializeOutletWithName()}initializeOutletWithName(){if(this.parentContexts.onChildOutletCreated(this.name,this),this.activated)return;const oe=this.parentContexts.getContext(this.name);oe?.route&&(oe.attachRef?this.attach(oe.attachRef,oe.route):this.activateWith(oe.route,oe.injector))}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new e.vHH(4012,!1);return this.activated.instance}get activatedRoute(){if(!this.activated)throw new e.vHH(4012,!1);return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new e.vHH(4012,!1);this.location.detach();const oe=this.activated;return this.activated=null,this._activatedRoute=null,this.detachEvents.emit(oe.instance),oe}attach(oe,Oe){this.activated=oe,this._activatedRoute=Oe,this.location.insert(oe.hostView),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.attachEvents.emit(oe.instance)}deactivate(){if(this.activated){const oe=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(oe)}}activateWith(oe,Oe){if(this.isActivated)throw new e.vHH(4013,!1);this._activatedRoute=oe;const tt=this.location,Bt=oe.snapshot.component,on=this.parentContexts.getOrCreateContext(this.name).children,tn=new Kt(oe,on,tt.injector);this.activated=tt.createComponent(Bt,{index:tt.length,injector:tn,environmentInjector:Oe??this.environmentInjector}),this.changeDetector.markForCheck(),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.activateEvents.emit(this.activated.instance)}static#e=this.\u0275fac=function(Oe){return new(Oe||ue)};static#t=this.\u0275dir=e.lG2({type:ue,selectors:[["router-outlet"]],inputs:{name:"name"},outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"],standalone:!0,features:[e.TTD]})}return ue})();class Kt{constructor(Se,oe,Oe){this.route=Se,this.childContexts=oe,this.parent=Oe}get(Se,oe){return Se===At?this.route:Se===Pi?this.childContexts:this.parent.get(Se,oe)}}const ln=new e.OlP("");let zn=(()=>{class ue{constructor(){this.outletDataSubscriptions=new Map}bindActivatedRouteToOutletComponent(oe){this.unsubscribeFromRouteData(oe),this.subscribeToRouteData(oe)}unsubscribeFromRouteData(oe){this.outletDataSubscriptions.get(oe)?.unsubscribe(),this.outletDataSubscriptions.delete(oe)}subscribeToRouteData(oe){const{activatedRoute:Oe}=oe,tt=(0,C.a)([Oe.queryParams,Oe.params,Oe.data]).pipe((0,T.w)(([zt,Bt,on],tn)=>(on={...zt,...Bt,...on},0===tn?(0,i.of)(on):Promise.resolve(on)))).subscribe(zt=>{if(!oe.isActivated||!oe.activatedComponentRef||oe.activatedRoute!==Oe||null===Oe.component)return void this.unsubscribeFromRouteData(oe);const Bt=(0,e.qFp)(Oe.component);if(Bt)for(const{templateName:on}of Bt.inputs)oe.activatedComponentRef.setInput(on,zt[on]);else this.unsubscribeFromRouteData(oe)});this.outletDataSubscriptions.set(oe,tt)}static#e=this.\u0275fac=function(Oe){return new(Oe||ue)};static#t=this.\u0275prov=e.Yz7({token:ue,factory:ue.\u0275fac})}return ue})();function Qn(ue,Se,oe){if(oe&&ue.shouldReuseRoute(Se.value,oe.value.snapshot)){const Oe=oe.value;Oe._futureSnapshot=Se.value;const tt=function ui(ue,Se,oe){return Se.children.map(Oe=>{for(const tt of oe.children)if(ue.shouldReuseRoute(Oe.value,tt.value.snapshot))return Qn(ue,Oe,tt);return Qn(ue,Oe)})}(ue,Se,oe);return new Bn(Oe,tt)}{if(ue.shouldAttach(Se.value)){const zt=ue.retrieve(Se.value);if(null!==zt){const Bt=zt.route;return Bt.value._futureSnapshot=Se.value,Bt.children=Se.children.map(on=>Qn(ue,on)),Bt}}const Oe=function eo(ue){return new At(new l.X(ue.url),new l.X(ue.params),new l.X(ue.queryParams),new l.X(ue.fragment),new l.X(ue.data),ue.outlet,ue.component,ue)}(Se.value),tt=Se.children.map(zt=>Qn(ue,zt));return new Bn(Oe,tt)}}const Ui="ngNavigationCancelingError";function Un(ue,Se){const{redirectTo:oe,navigationBehaviorOptions:Oe}=Ke(Se)?{redirectTo:Se,navigationBehaviorOptions:void 0}:Se,tt=go(!1,0,Se);return tt.url=oe,tt.navigationBehaviorOptions=Oe,tt}function go(ue,Se,oe){const Oe=new Error("NavigationCancelingError: "+(ue||""));return Oe[Ui]=!0,Oe.cancellationCode=Se,oe&&(Oe.url=oe),Oe}function xo(ue){return ue&&ue[Ui]}let Ti=(()=>{class ue{static#e=this.\u0275fac=function(Oe){return new(Oe||ue)};static#t=this.\u0275cmp=e.Xpm({type:ue,selectors:[["ng-component"]],standalone:!0,features:[e.jDz],decls:1,vars:0,template:function(Oe,tt){1&Oe&&e._UZ(0,"router-outlet")},dependencies:[Nt],encapsulation:2})}return ue})();function Jn(ue){const Se=ue.children&&ue.children.map(Jn),oe=Se?{...ue,children:Se}:{...ue};return!oe.component&&!oe.loadComponent&&(Se||oe.loadChildren)&&oe.outlet&&oe.outlet!==ie&&(oe.component=Ti),oe}function to(ue){return ue.outlet||ie}function no(ue){if(!ue)return null;if(ue.routeConfig?._injector)return ue.routeConfig._injector;for(let Se=ue.parent;Se;Se=Se.parent){const oe=Se.routeConfig;if(oe?._loadedInjector)return oe._loadedInjector;if(oe?._injector)return oe._injector}return null}class Fi{constructor(Se,oe,Oe,tt,zt){this.routeReuseStrategy=Se,this.futureState=oe,this.currState=Oe,this.forwardEvent=tt,this.inputBindingEnabled=zt}activate(Se){const oe=this.futureState._root,Oe=this.currState?this.currState._root:null;this.deactivateChildRoutes(oe,Oe,Se),gt(this.futureState.root),this.activateChildRoutes(oe,Oe,Se)}deactivateChildRoutes(Se,oe,Oe){const tt=Et(oe);Se.children.forEach(zt=>{const Bt=zt.value.outlet;this.deactivateRoutes(zt,tt[Bt],Oe),delete tt[Bt]}),Object.values(tt).forEach(zt=>{this.deactivateRouteAndItsChildren(zt,Oe)})}deactivateRoutes(Se,oe,Oe){const tt=Se.value,zt=oe?oe.value:null;if(tt===zt)if(tt.component){const Bt=Oe.getContext(tt.outlet);Bt&&this.deactivateChildRoutes(Se,oe,Bt.children)}else this.deactivateChildRoutes(Se,oe,Oe);else zt&&this.deactivateRouteAndItsChildren(oe,Oe)}deactivateRouteAndItsChildren(Se,oe){Se.value.component&&this.routeReuseStrategy.shouldDetach(Se.value.snapshot)?this.detachAndStoreRouteSubtree(Se,oe):this.deactivateRouteAndOutlet(Se,oe)}detachAndStoreRouteSubtree(Se,oe){const Oe=oe.getContext(Se.value.outlet),tt=Oe&&Se.value.component?Oe.children:oe,zt=Et(Se);for(const Bt of Object.keys(zt))this.deactivateRouteAndItsChildren(zt[Bt],tt);if(Oe&&Oe.outlet){const Bt=Oe.outlet.detach(),on=Oe.children.onOutletDeactivated();this.routeReuseStrategy.store(Se.value.snapshot,{componentRef:Bt,route:Se,contexts:on})}}deactivateRouteAndOutlet(Se,oe){const Oe=oe.getContext(Se.value.outlet),tt=Oe&&Se.value.component?Oe.children:oe,zt=Et(Se);for(const Bt of Object.keys(zt))this.deactivateRouteAndItsChildren(zt[Bt],tt);Oe&&(Oe.outlet&&(Oe.outlet.deactivate(),Oe.children.onOutletDeactivated()),Oe.attachRef=null,Oe.route=null)}activateChildRoutes(Se,oe,Oe){const tt=Et(oe);Se.children.forEach(zt=>{this.activateRoutes(zt,tt[zt.value.outlet],Oe),this.forwardEvent(new Mo(zt.value.snapshot))}),Se.children.length&&this.forwardEvent(new $i(Se.value.snapshot))}activateRoutes(Se,oe,Oe){const tt=Se.value,zt=oe?oe.value:null;if(gt(tt),tt===zt)if(tt.component){const Bt=Oe.getOrCreateContext(tt.outlet);this.activateChildRoutes(Se,oe,Bt.children)}else this.activateChildRoutes(Se,oe,Oe);else if(tt.component){const Bt=Oe.getOrCreateContext(tt.outlet);if(this.routeReuseStrategy.shouldAttach(tt.snapshot)){const on=this.routeReuseStrategy.retrieve(tt.snapshot);this.routeReuseStrategy.store(tt.snapshot,null),Bt.children.onOutletReAttached(on.contexts),Bt.attachRef=on.componentRef,Bt.route=on.route.value,Bt.outlet&&Bt.outlet.attach(on.componentRef,on.route.value),gt(on.route.value),this.activateChildRoutes(Se,null,Bt.children)}else{const on=no(tt.snapshot);Bt.attachRef=null,Bt.route=tt,Bt.injector=on,Bt.outlet&&Bt.outlet.activateWith(tt,Bt.injector),this.activateChildRoutes(Se,null,Bt.children)}}else this.activateChildRoutes(Se,null,Oe)}}class lo{constructor(Se){this.path=Se,this.route=this.path[this.path.length-1]}}class Ai{constructor(Se,oe){this.component=Se,this.route=oe}}function Os(ue,Se,oe){const Oe=ue._root;return Z(Oe,Se?Se._root:null,oe,[Oe.value])}function Gt(ue,Se){const oe=Symbol(),Oe=Se.get(ue,oe);return Oe===oe?"function"!=typeof ue||(0,e.Z0I)(ue)?Se.get(ue):ue:Oe}function Z(ue,Se,oe,Oe,tt={canDeactivateChecks:[],canActivateChecks:[]}){const zt=Et(Se);return ue.children.forEach(Bt=>{(function dt(ue,Se,oe,Oe,tt={canDeactivateChecks:[],canActivateChecks:[]}){const zt=ue.value,Bt=Se?Se.value:null,on=oe?oe.getContext(ue.value.outlet):null;if(Bt&&zt.routeConfig===Bt.routeConfig){const tn=function vt(ue,Se,oe){if("function"==typeof oe)return oe(ue,Se);switch(oe){case"pathParamsChange":return!pt(ue.url,Se.url);case"pathParamsOrQueryParamsChange":return!pt(ue.url,Se.url)||!ve(ue.queryParams,Se.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!We(ue,Se)||!ve(ue.queryParams,Se.queryParams);default:return!We(ue,Se)}}(Bt,zt,zt.routeConfig.runGuardsAndResolvers);tn?tt.canActivateChecks.push(new lo(Oe)):(zt.data=Bt.data,zt._resolvedData=Bt._resolvedData),Z(ue,Se,zt.component?on?on.children:null:oe,Oe,tt),tn&&on&&on.outlet&&on.outlet.isActivated&&tt.canDeactivateChecks.push(new Ai(on.outlet.component,Bt))}else Bt&&$t(Se,on,tt),tt.canActivateChecks.push(new lo(Oe)),Z(ue,null,zt.component?on?on.children:null:oe,Oe,tt)})(Bt,zt[Bt.value.outlet],oe,Oe.concat([Bt.value]),tt),delete zt[Bt.value.outlet]}),Object.entries(zt).forEach(([Bt,on])=>$t(on,oe.getContext(Bt),tt)),tt}function $t(ue,Se,oe){const Oe=Et(ue),tt=ue.value;Object.entries(Oe).forEach(([zt,Bt])=>{$t(Bt,tt.component?Se?Se.children.getContext(zt):null:Se,oe)}),oe.canDeactivateChecks.push(new Ai(tt.component&&Se&&Se.outlet&&Se.outlet.isActivated?Se.outlet.component:null,tt))}function yn(ue){return"function"==typeof ue}function _i(ue){return ue instanceof E.K||"EmptyError"===ue?.name}const fs=Symbol("INITIAL_VALUE");function $o(){return(0,T.w)(ue=>(0,C.a)(ue.map(Se=>Se.pipe((0,x.q)(1),(0,D.O)(fs)))).pipe((0,y.U)(Se=>{for(const oe of Se)if(!0!==oe){if(oe===fs)return fs;if(!1===oe||oe instanceof B)return oe}return!0}),(0,_.h)(Se=>Se!==fs),(0,x.q)(1)))}function Fo(ue){return(0,M.z)((0,k.b)(Se=>{if(Ke(Se))throw Un(0,Se)}),(0,y.U)(Se=>!0===Se))}class Co{constructor(Se){this.segmentGroup=Se||null}}class Eo{constructor(Se){this.urlTree=Se}}function Bo(ue){return(0,h._)(new Co(ue))}function $s(ue){return(0,h._)(new Eo(ue))}class Do{constructor(Se,oe){this.urlSerializer=Se,this.urlTree=oe}noMatchError(Se){return new e.vHH(4002,!1)}lineralizeSegments(Se,oe){let Oe=[],tt=oe.root;for(;;){if(Oe=Oe.concat(tt.segments),0===tt.numberOfChildren)return(0,i.of)(Oe);if(tt.numberOfChildren>1||!tt.children[ie])return(0,h._)(new e.vHH(4e3,!1));tt=tt.children[ie]}}applyRedirectCommands(Se,oe,Oe){return this.applyRedirectCreateUrlTree(oe,this.urlSerializer.parse(oe),Se,Oe)}applyRedirectCreateUrlTree(Se,oe,Oe,tt){const zt=this.createSegmentGroup(Se,oe.root,Oe,tt);return new B(zt,this.createQueryParams(oe.queryParams,this.urlTree.queryParams),oe.fragment)}createQueryParams(Se,oe){const Oe={};return Object.entries(Se).forEach(([tt,zt])=>{if("string"==typeof zt&&zt.startsWith(":")){const on=zt.substring(1);Oe[tt]=oe[on]}else Oe[tt]=zt}),Oe}createSegmentGroup(Se,oe,Oe,tt){const zt=this.createSegments(Se,oe.segments,Oe,tt);let Bt={};return Object.entries(oe.children).forEach(([on,tn])=>{Bt[on]=this.createSegmentGroup(Se,tn,Oe,tt)}),new Ee(zt,Bt)}createSegments(Se,oe,Oe,tt){return oe.map(zt=>zt.path.startsWith(":")?this.findPosParam(Se,zt,tt):this.findOrReturn(zt,Oe))}findPosParam(Se,oe,Oe){const tt=Oe[oe.path.substring(1)];if(!tt)throw new e.vHH(4001,!1);return tt}findOrReturn(Se,oe){let Oe=0;for(const tt of oe){if(tt.path===Se.path)return oe.splice(Oe),tt;Oe++}return Se}}const ws={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function er(ue,Se,oe,Oe,tt){const zt=Ps(ue,Se,oe);return zt.matched?(Oe=function qo(ue,Se){return ue.providers&&!ue._injector&&(ue._injector=(0,e.MMx)(ue.providers,Se,`Route: ${ue.path}`)),ue._injector??Se}(Se,Oe),function ys(ue,Se,oe,Oe){const tt=Se.canMatch;if(!tt||0===tt.length)return(0,i.of)(!0);const zt=tt.map(Bt=>{const on=Gt(Bt,ue);return Re(function Yi(ue){return ue&&yn(ue.canMatch)}(on)?on.canMatch(Se,oe):ue.runInContext(()=>on(Se,oe)))});return(0,i.of)(zt).pipe($o(),Fo())}(Oe,Se,oe).pipe((0,y.U)(Bt=>!0===Bt?zt:{...ws}))):(0,i.of)(zt)}function Ps(ue,Se,oe){if(""===Se.path)return"full"===Se.pathMatch&&(ue.hasChildren()||oe.length>0)?{...ws}:{matched:!0,consumedSegments:[],remainingSegments:oe,parameters:{},positionalParamSegments:{}};const tt=(Se.matcher||Ye)(oe,ue,Se);if(!tt)return{...ws};const zt={};Object.entries(tt.posParams??{}).forEach(([on,tn])=>{zt[on]=tn.path});const Bt=tt.consumed.length>0?{...zt,...tt.consumed[tt.consumed.length-1].parameters}:zt;return{matched:!0,consumedSegments:tt.consumed,remainingSegments:oe.slice(tt.consumed.length),parameters:Bt,positionalParamSegments:tt.posParams??{}}}function Ho(ue,Se,oe,Oe){return oe.length>0&&function ms(ue,Se,oe){return oe.some(Oe=>fn(ue,Se,Oe)&&to(Oe)!==ie)}(ue,oe,Oe)?{segmentGroup:new Ee(Se,Yt(Oe,new Ee(oe,ue.children))),slicedSegments:[]}:0===oe.length&&function Pn(ue,Se,oe){return oe.some(Oe=>fn(ue,Se,Oe))}(ue,oe,Oe)?{segmentGroup:new Ee(ue.segments,ur(ue,0,oe,Oe,ue.children)),slicedSegments:oe}:{segmentGroup:new Ee(ue.segments,ue.children),slicedSegments:oe}}function ur(ue,Se,oe,Oe,tt){const zt={};for(const Bt of Oe)if(fn(ue,oe,Bt)&&!tt[to(Bt)]){const on=new Ee([],{});zt[to(Bt)]=on}return{...tt,...zt}}function Yt(ue,Se){const oe={};oe[ie]=Se;for(const Oe of ue)if(""===Oe.path&&to(Oe)!==ie){const tt=new Ee([],{});oe[to(Oe)]=tt}return oe}function fn(ue,Se,oe){return(!(ue.hasChildren()||Se.length>0)||"full"!==oe.pathMatch)&&""===oe.path}class zs{constructor(Se,oe,Oe,tt,zt,Bt,on){this.injector=Se,this.configLoader=oe,this.rootComponentType=Oe,this.config=tt,this.urlTree=zt,this.paramsInheritanceStrategy=Bt,this.urlSerializer=on,this.allowRedirects=!0,this.applyRedirects=new Do(this.urlSerializer,this.urlTree)}noMatchError(Se){return new e.vHH(4002,!1)}recognize(){const Se=Ho(this.urlTree.root,[],[],this.config).segmentGroup;return this.processSegmentGroup(this.injector,this.config,Se,ie).pipe((0,R.K)(oe=>{if(oe instanceof Eo)return this.allowRedirects=!1,this.urlTree=oe.urlTree,this.match(oe.urlTree);throw oe instanceof Co?this.noMatchError(oe):oe}),(0,y.U)(oe=>{const Oe=new Ln([],Object.freeze({}),Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,{},ie,this.rootComponentType,null,{}),tt=new Bn(Oe,oe),zt=new Sn("",tt),Bt=function _e(ue,Se,oe=null,Oe=null){return b(it(ue),Se,oe,Oe)}(Oe,[],this.urlTree.queryParams,this.urlTree.fragment);return Bt.queryParams=this.urlTree.queryParams,zt.url=this.urlSerializer.serialize(Bt),this.inheritParamsAndData(zt._root),{state:zt,tree:Bt}}))}match(Se){return this.processSegmentGroup(this.injector,this.config,Se.root,ie).pipe((0,R.K)(Oe=>{throw Oe instanceof Co?this.noMatchError(Oe):Oe}))}inheritParamsAndData(Se){const oe=Se.value,Oe=Qt(oe,this.paramsInheritanceStrategy);oe.params=Object.freeze(Oe.params),oe.data=Object.freeze(Oe.data),Se.children.forEach(tt=>this.inheritParamsAndData(tt))}processSegmentGroup(Se,oe,Oe,tt){return 0===Oe.segments.length&&Oe.hasChildren()?this.processChildren(Se,oe,Oe):this.processSegment(Se,oe,Oe,Oe.segments,tt,!0)}processChildren(Se,oe,Oe){const tt=[];for(const zt of Object.keys(Oe.children))"primary"===zt?tt.unshift(zt):tt.push(zt);return(0,t.D)(tt).pipe((0,A.b)(zt=>{const Bt=Oe.children[zt],on=function es(ue,Se){const oe=ue.filter(Oe=>to(Oe)===Se);return oe.push(...ue.filter(Oe=>to(Oe)!==Se)),oe}(oe,zt);return this.processSegmentGroup(Se,on,Bt,zt)}),function Y(ue,Se){return(0,$.e)(function ze(ue,Se,oe,Oe,tt){return(zt,Bt)=>{let on=oe,tn=Se,xn=0;zt.subscribe((0,W.x)(Bt,ti=>{const Vi=xn++;tn=on?ue(tn,ti,Vi):(on=!0,ti),Oe&&Bt.next(tn)},tt&&(()=>{on&&Bt.next(tn),Bt.complete()})))}}(ue,Se,arguments.length>=2,!0))}((zt,Bt)=>(zt.push(...Bt),zt)),(0,G.d)(null),function ne(ue,Se){const oe=arguments.length>=2;return Oe=>Oe.pipe(ue?(0,_.h)((tt,zt)=>ue(tt,zt,Oe)):te.y,V(1),oe?(0,G.d)(Se):(0,K.T)(()=>new E.K))}(),(0,P.z)(zt=>{if(null===zt)return Bo(Oe);const Bt=Tr(zt);return function js(ue){ue.sort((Se,oe)=>Se.value.outlet===ie?-1:oe.value.outlet===ie?1:Se.value.outlet.localeCompare(oe.value.outlet))}(Bt),(0,i.of)(Bt)}))}processSegment(Se,oe,Oe,tt,zt,Bt){return(0,t.D)(oe).pipe((0,A.b)(on=>this.processSegmentAgainstRoute(on._injector??Se,oe,on,Oe,tt,zt,Bt).pipe((0,R.K)(tn=>{if(tn instanceof Co)return(0,i.of)(null);throw tn}))),(0,S.P)(on=>!!on),(0,R.K)(on=>{if(_i(on))return function Cs(ue,Se,oe){return 0===Se.length&&!ue.children[oe]}(Oe,tt,zt)?(0,i.of)([]):Bo(Oe);throw on}))}processSegmentAgainstRoute(Se,oe,Oe,tt,zt,Bt,on){return function ss(ue,Se,oe,Oe){return!!(to(ue)===Oe||Oe!==ie&&fn(Se,oe,ue))&&("**"===ue.path||Ps(Se,ue,oe).matched)}(Oe,tt,zt,Bt)?void 0===Oe.redirectTo?this.matchSegmentAgainstRoute(Se,tt,Oe,zt,Bt,on):on&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(Se,tt,oe,Oe,zt,Bt):Bo(tt):Bo(tt)}expandSegmentAgainstRouteUsingRedirect(Se,oe,Oe,tt,zt,Bt){return"**"===tt.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(Se,Oe,tt,Bt):this.expandRegularSegmentAgainstRouteUsingRedirect(Se,oe,Oe,tt,zt,Bt)}expandWildCardWithParamsAgainstRouteUsingRedirect(Se,oe,Oe,tt){const zt=this.applyRedirects.applyRedirectCommands([],Oe.redirectTo,{});return Oe.redirectTo.startsWith("/")?$s(zt):this.applyRedirects.lineralizeSegments(Oe,zt).pipe((0,P.z)(Bt=>{const on=new Ee(Bt,{});return this.processSegment(Se,oe,on,Bt,tt,!1)}))}expandRegularSegmentAgainstRouteUsingRedirect(Se,oe,Oe,tt,zt,Bt){const{matched:on,consumedSegments:tn,remainingSegments:xn,positionalParamSegments:ti}=Ps(oe,tt,zt);if(!on)return Bo(oe);const Vi=this.applyRedirects.applyRedirectCommands(tn,tt.redirectTo,ti);return tt.redirectTo.startsWith("/")?$s(Vi):this.applyRedirects.lineralizeSegments(tt,Vi).pipe((0,P.z)(Ci=>this.processSegment(Se,Oe,oe,Ci.concat(xn),Bt,!1)))}matchSegmentAgainstRoute(Se,oe,Oe,tt,zt,Bt){let on;if("**"===Oe.path){const tn=tt.length>0?Be(tt).parameters:{},xn=new Ln(tt,tn,Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,sa(Oe),to(Oe),Oe.component??Oe._loadedComponent??null,Oe,Is(Oe));on=(0,i.of)({snapshot:xn,consumedSegments:[],remainingSegments:[]}),oe.children={}}else on=er(oe,Oe,tt,Se).pipe((0,y.U)(({matched:tn,consumedSegments:xn,remainingSegments:ti,parameters:Vi})=>tn?{snapshot:new Ln(xn,Vi,Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,sa(Oe),to(Oe),Oe.component??Oe._loadedComponent??null,Oe,Is(Oe)),consumedSegments:xn,remainingSegments:ti}:null));return on.pipe((0,T.w)(tn=>null===tn?Bo(oe):this.getChildConfig(Se=Oe._injector??Se,Oe,tt).pipe((0,T.w)(({routes:xn})=>{const ti=Oe._loadedInjector??Se,{snapshot:Vi,consumedSegments:Ci,remainingSegments:Po}=tn,{segmentGroup:or,slicedSegments:Gs}=Ho(oe,Ci,Po,xn);if(0===Gs.length&&or.hasChildren())return this.processChildren(ti,xn,or).pipe((0,y.U)(Rs=>null===Rs?null:[new Bn(Vi,Rs)]));if(0===xn.length&&0===Gs.length)return(0,i.of)([new Bn(Vi,[])]);const as=to(Oe)===zt;return this.processSegment(ti,xn,or,Gs,as?ie:zt,!0).pipe((0,y.U)(Rs=>[new Bn(Vi,Rs)]))}))))}getChildConfig(Se,oe,Oe){return oe.children?(0,i.of)({routes:oe.children,injector:Se}):oe.loadChildren?void 0!==oe._loadedRoutes?(0,i.of)({routes:oe._loadedRoutes,injector:oe._loadedInjector}):function jo(ue,Se,oe,Oe){const tt=Se.canLoad;if(void 0===tt||0===tt.length)return(0,i.of)(!0);const zt=tt.map(Bt=>{const on=Gt(Bt,ue);return Re(function yi(ue){return ue&&yn(ue.canLoad)}(on)?on.canLoad(Se,oe):ue.runInContext(()=>on(Se,oe)))});return(0,i.of)(zt).pipe($o(),Fo())}(Se,oe,Oe).pipe((0,P.z)(tt=>tt?this.configLoader.loadChildren(Se,oe).pipe((0,k.b)(zt=>{oe._loadedRoutes=zt.routes,oe._loadedInjector=zt.injector})):function Qo(ue){return(0,h._)(go(!1,3))}())):(0,i.of)({routes:[],injector:Se})}}function zr(ue){const Se=ue.value.routeConfig;return Se&&""===Se.path}function Tr(ue){const Se=[],oe=new Set;for(const Oe of ue){if(!zr(Oe)){Se.push(Oe);continue}const tt=Se.find(zt=>Oe.value.routeConfig===zt.value.routeConfig);void 0!==tt?(tt.children.push(...Oe.children),oe.add(tt)):Se.push(Oe)}for(const Oe of oe){const tt=Tr(Oe.children);Se.push(new Bn(Oe.value,tt))}return Se.filter(Oe=>!oe.has(Oe))}function sa(ue){return ue.data||{}}function Is(ue){return ue.resolve||{}}function Hr(ue){return"string"==typeof ue.title||null===ue.title}function Ts(ue){return(0,T.w)(Se=>{const oe=ue(Se);return oe?(0,t.D)(oe).pipe((0,y.U)(()=>Se)):(0,i.of)(Se)})}const Zs=new e.OlP("ROUTES");let me=(()=>{class ue{constructor(){this.componentLoaders=new WeakMap,this.childrenLoaders=new WeakMap,this.compiler=(0,e.f3M)(e.Sil)}loadComponent(oe){if(this.componentLoaders.get(oe))return this.componentLoaders.get(oe);if(oe._loadedComponent)return(0,i.of)(oe._loadedComponent);this.onLoadStartListener&&this.onLoadStartListener(oe);const Oe=Re(oe.loadComponent()).pipe((0,y.U)(ut),(0,k.b)(zt=>{this.onLoadEndListener&&this.onLoadEndListener(oe),oe._loadedComponent=zt}),(0,re.x)(()=>{this.componentLoaders.delete(oe)})),tt=new g.c(Oe,()=>new d.x).pipe((0,be.x)());return this.componentLoaders.set(oe,tt),tt}loadChildren(oe,Oe){if(this.childrenLoaders.get(Oe))return this.childrenLoaders.get(Oe);if(Oe._loadedRoutes)return(0,i.of)({routes:Oe._loadedRoutes,injector:Oe._loadedInjector});this.onLoadStartListener&&this.onLoadStartListener(Oe);const zt=function _t(ue,Se,oe,Oe){return Re(ue.loadChildren()).pipe((0,y.U)(ut),(0,P.z)(tt=>tt instanceof e.YKP||Array.isArray(tt)?(0,i.of)(tt):(0,t.D)(Se.compileModuleAsync(tt))),(0,y.U)(tt=>{Oe&&Oe(ue);let zt,Bt,on=!1;return Array.isArray(tt)?(Bt=tt,!0):(zt=tt.create(oe).injector,Bt=zt.get(Zs,[],{optional:!0,self:!0}).flat()),{routes:Bt.map(Jn),injector:zt}}))}(Oe,this.compiler,oe,this.onLoadEndListener).pipe((0,re.x)(()=>{this.childrenLoaders.delete(Oe)})),Bt=new g.c(zt,()=>new d.x).pipe((0,be.x)());return this.childrenLoaders.set(Oe,Bt),Bt}static#e=this.\u0275fac=function(Oe){return new(Oe||ue)};static#t=this.\u0275prov=e.Yz7({token:ue,factory:ue.\u0275fac,providedIn:"root"})}return ue})();function ut(ue){return function Ve(ue){return ue&&"object"==typeof ue&&"default"in ue}(ue)?ue.default:ue}let Ht=(()=>{class ue{get hasRequestedNavigation(){return 0!==this.navigationId}constructor(){this.currentNavigation=null,this.currentTransition=null,this.lastSuccessfulNavigation=null,this.events=new d.x,this.transitionAbortSubject=new d.x,this.configLoader=(0,e.f3M)(me),this.environmentInjector=(0,e.f3M)(e.lqb),this.urlSerializer=(0,e.f3M)(Lt),this.rootContexts=(0,e.f3M)(Pi),this.inputBindingEnabled=null!==(0,e.f3M)(ln,{optional:!0}),this.navigationId=0,this.afterPreactivation=()=>(0,i.of)(void 0),this.rootComponentType=null,this.configLoader.onLoadEndListener=tt=>this.events.next(new Ri(tt)),this.configLoader.onLoadStartListener=tt=>this.events.next(new Wi(tt))}complete(){this.transitions?.complete()}handleNavigationRequest(oe){const Oe=++this.navigationId;this.transitions?.next({...this.transitions.value,...oe,id:Oe})}setupNavigations(oe,Oe,tt){return this.transitions=new l.X({id:0,currentUrlTree:Oe,currentRawUrl:Oe,currentBrowserUrl:Oe,extractedUrl:oe.urlHandlingStrategy.extract(Oe),urlAfterRedirects:oe.urlHandlingStrategy.extract(Oe),rawUrl:Oe,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:si,restoredState:null,currentSnapshot:tt.snapshot,targetSnapshot:null,currentRouterState:tt,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.transitions.pipe((0,_.h)(zt=>0!==zt.id),(0,y.U)(zt=>({...zt,extractedUrl:oe.urlHandlingStrategy.extract(zt.rawUrl)})),(0,T.w)(zt=>{this.currentTransition=zt;let Bt=!1,on=!1;return(0,i.of)(zt).pipe((0,k.b)(tn=>{this.currentNavigation={id:tn.id,initialUrl:tn.rawUrl,extractedUrl:tn.extractedUrl,trigger:tn.source,extras:tn.extras,previousNavigation:this.lastSuccessfulNavigation?{...this.lastSuccessfulNavigation,previousNavigation:null}:null}}),(0,T.w)(tn=>{const xn=tn.currentBrowserUrl.toString(),ti=!oe.navigated||tn.extractedUrl.toString()!==xn||xn!==tn.currentUrlTree.toString();if(!ti&&"reload"!==(tn.extras.onSameUrlNavigation??oe.onSameUrlNavigation)){const Ci="";return this.events.next(new hi(tn.id,this.urlSerializer.serialize(tn.rawUrl),Ci,0)),tn.resolve(null),v.E}if(oe.urlHandlingStrategy.shouldProcessUrl(tn.rawUrl))return(0,i.of)(tn).pipe((0,T.w)(Ci=>{const Po=this.transitions?.getValue();return this.events.next(new ci(Ci.id,this.urlSerializer.serialize(Ci.extractedUrl),Ci.source,Ci.restoredState)),Po!==this.transitions?.getValue()?v.E:Promise.resolve(Ci)}),function ra(ue,Se,oe,Oe,tt,zt){return(0,P.z)(Bt=>function ns(ue,Se,oe,Oe,tt,zt,Bt="emptyOnly"){return new zs(ue,Se,oe,Oe,tt,Bt,zt).recognize()}(ue,Se,oe,Oe,Bt.extractedUrl,tt,zt).pipe((0,y.U)(({state:on,tree:tn})=>({...Bt,targetSnapshot:on,urlAfterRedirects:tn}))))}(this.environmentInjector,this.configLoader,this.rootComponentType,oe.config,this.urlSerializer,oe.paramsInheritanceStrategy),(0,k.b)(Ci=>{zt.targetSnapshot=Ci.targetSnapshot,zt.urlAfterRedirects=Ci.urlAfterRedirects,this.currentNavigation={...this.currentNavigation,finalUrl:Ci.urlAfterRedirects};const Po=new zi(Ci.id,this.urlSerializer.serialize(Ci.extractedUrl),this.urlSerializer.serialize(Ci.urlAfterRedirects),Ci.targetSnapshot);this.events.next(Po)}));if(ti&&oe.urlHandlingStrategy.shouldProcessUrl(tn.currentRawUrl)){const{id:Ci,extractedUrl:Po,source:or,restoredState:Gs,extras:as}=tn,Rs=new ci(Ci,this.urlSerializer.serialize(Po),or,Gs);this.events.next(Rs);const Wr=lt(0,this.rootComponentType).snapshot;return this.currentTransition=zt={...tn,targetSnapshot:Wr,urlAfterRedirects:Po,extras:{...as,skipLocationChange:!1,replaceUrl:!1}},(0,i.of)(zt)}{const Ci="";return this.events.next(new hi(tn.id,this.urlSerializer.serialize(tn.extractedUrl),Ci,1)),tn.resolve(null),v.E}}),(0,k.b)(tn=>{const xn=new Oi(tn.id,this.urlSerializer.serialize(tn.extractedUrl),this.urlSerializer.serialize(tn.urlAfterRedirects),tn.targetSnapshot);this.events.next(xn)}),(0,y.U)(tn=>(this.currentTransition=zt={...tn,guards:Os(tn.targetSnapshot,tn.currentSnapshot,this.rootContexts)},zt)),function at(ue,Se){return(0,P.z)(oe=>{const{targetSnapshot:Oe,currentSnapshot:tt,guards:{canActivateChecks:zt,canDeactivateChecks:Bt}}=oe;return 0===Bt.length&&0===zt.length?(0,i.of)({...oe,guardsResult:!0}):function ht(ue,Se,oe,Oe){return(0,t.D)(ue).pipe((0,P.z)(tt=>function co(ue,Se,oe,Oe,tt){const zt=Se&&Se.routeConfig?Se.routeConfig.canDeactivate:null;if(!zt||0===zt.length)return(0,i.of)(!0);const Bt=zt.map(on=>{const tn=no(Se)??tt,xn=Gt(on,tn);return Re(function _o(ue){return ue&&yn(ue.canDeactivate)}(xn)?xn.canDeactivate(ue,Se,oe,Oe):tn.runInContext(()=>xn(ue,Se,oe,Oe))).pipe((0,S.P)())});return(0,i.of)(Bt).pipe($o())}(tt.component,tt.route,oe,Se,Oe)),(0,S.P)(tt=>!0!==tt,!0))}(Bt,Oe,tt,ue).pipe((0,P.z)(on=>on&&function In(ue){return"boolean"==typeof ue}(on)?function Fe(ue,Se,oe,Oe){return(0,t.D)(Se).pipe((0,A.b)(tt=>(0,u.z)(function jt(ue,Se){return null!==ue&&Se&&Se(new Li(ue)),(0,i.of)(!0)}(tt.route.parent,Oe),function Tt(ue,Se){return null!==ue&&Se&&Se(new Qi(ue)),(0,i.of)(!0)}(tt.route,Oe),function jn(ue,Se,oe){const Oe=Se[Se.length-1],zt=Se.slice(0,Se.length-1).reverse().map(Bt=>function rt(ue){const Se=ue.routeConfig?ue.routeConfig.canActivateChild:null;return Se&&0!==Se.length?{node:ue,guards:Se}:null}(Bt)).filter(Bt=>null!==Bt).map(Bt=>(0,z.P)(()=>{const on=Bt.guards.map(tn=>{const xn=no(Bt.node)??oe,ti=Gt(tn,xn);return Re(function io(ue){return ue&&yn(ue.canActivateChild)}(ti)?ti.canActivateChild(Oe,ue):xn.runInContext(()=>ti(Oe,ue))).pipe((0,S.P)())});return(0,i.of)(on).pipe($o())}));return(0,i.of)(zt).pipe($o())}(ue,tt.path,oe),function Nn(ue,Se,oe){const Oe=Se.routeConfig?Se.routeConfig.canActivate:null;if(!Oe||0===Oe.length)return(0,i.of)(!0);const tt=Oe.map(zt=>(0,z.P)(()=>{const Bt=no(Se)??oe,on=Gt(zt,Bt);return Re(function yo(ue){return ue&&yn(ue.canActivate)}(on)?on.canActivate(Se,ue):Bt.runInContext(()=>on(Se,ue))).pipe((0,S.P)())}));return(0,i.of)(tt).pipe($o())}(ue,tt.route,oe))),(0,S.P)(tt=>!0!==tt,!0))}(Oe,zt,ue,Se):(0,i.of)(on)),(0,y.U)(on=>({...oe,guardsResult:on})))})}(this.environmentInjector,tn=>this.events.next(tn)),(0,k.b)(tn=>{if(zt.guardsResult=tn.guardsResult,Ke(tn.guardsResult))throw Un(0,tn.guardsResult);const xn=new ei(tn.id,this.urlSerializer.serialize(tn.extractedUrl),this.urlSerializer.serialize(tn.urlAfterRedirects),tn.targetSnapshot,!!tn.guardsResult);this.events.next(xn)}),(0,_.h)(tn=>!!tn.guardsResult||(this.cancelNavigationTransition(tn,"",3),!1)),Ts(tn=>{if(tn.guards.canActivateChecks.length)return(0,i.of)(tn).pipe((0,k.b)(xn=>{const ti=new po(xn.id,this.urlSerializer.serialize(xn.extractedUrl),this.urlSerializer.serialize(xn.urlAfterRedirects),xn.targetSnapshot);this.events.next(ti)}),(0,T.w)(xn=>{let ti=!1;return(0,i.of)(xn).pipe(function Mr(ue,Se){return(0,P.z)(oe=>{const{targetSnapshot:Oe,guards:{canActivateChecks:tt}}=oe;if(!tt.length)return(0,i.of)(oe);let zt=0;return(0,t.D)(tt).pipe((0,A.b)(Bt=>function Ks(ue,Se,oe,Oe){const tt=ue.routeConfig,zt=ue._resolve;return void 0!==tt?.title&&!Hr(tt)&&(zt[ae]=tt.title),function Er(ue,Se,oe,Oe){const tt=function tr(ue){return[...Object.keys(ue),...Object.getOwnPropertySymbols(ue)]}(ue);if(0===tt.length)return(0,i.of)({});const zt={};return(0,t.D)(tt).pipe((0,P.z)(Bt=>function hr(ue,Se,oe,Oe){const tt=no(Se)??Oe,zt=Gt(ue,tt);return Re(zt.resolve?zt.resolve(Se,oe):tt.runInContext(()=>zt(Se,oe)))}(ue[Bt],Se,oe,Oe).pipe((0,S.P)(),(0,k.b)(on=>{zt[Bt]=on}))),V(1),(0,fe.h)(zt),(0,R.K)(Bt=>_i(Bt)?v.E:(0,h._)(Bt)))}(zt,ue,Se,Oe).pipe((0,y.U)(Bt=>(ue._resolvedData=Bt,ue.data=Qt(ue,oe).resolve,tt&&Hr(tt)&&(ue.data[ae]=tt.title),null)))}(Bt.route,Oe,ue,Se)),(0,k.b)(()=>zt++),V(1),(0,P.z)(Bt=>zt===tt.length?(0,i.of)(oe):v.E))})}(oe.paramsInheritanceStrategy,this.environmentInjector),(0,k.b)({next:()=>ti=!0,complete:()=>{ti||this.cancelNavigationTransition(xn,"",2)}}))}),(0,k.b)(xn=>{const ti=new oo(xn.id,this.urlSerializer.serialize(xn.extractedUrl),this.urlSerializer.serialize(xn.urlAfterRedirects),xn.targetSnapshot);this.events.next(ti)}))}),Ts(tn=>{const xn=ti=>{const Vi=[];ti.routeConfig?.loadComponent&&!ti.routeConfig._loadedComponent&&Vi.push(this.configLoader.loadComponent(ti.routeConfig).pipe((0,k.b)(Ci=>{ti.component=Ci}),(0,y.U)(()=>{})));for(const Ci of ti.children)Vi.push(...xn(Ci));return Vi};return(0,C.a)(xn(tn.targetSnapshot.root)).pipe((0,G.d)(),(0,x.q)(1))}),Ts(()=>this.afterPreactivation()),(0,y.U)(tn=>{const xn=function kn(ue,Se,oe){const Oe=Qn(ue,Se._root,oe?oe._root:void 0);return new un(Oe,Se)}(oe.routeReuseStrategy,tn.targetSnapshot,tn.currentRouterState);return this.currentTransition=zt={...tn,targetRouterState:xn},zt}),(0,k.b)(()=>{this.events.next(new Xi)}),((ue,Se,oe,Oe)=>(0,y.U)(tt=>(new Fi(Se,tt.targetRouterState,tt.currentRouterState,oe,Oe).activate(ue),tt)))(this.rootContexts,oe.routeReuseStrategy,tn=>this.events.next(tn),this.inputBindingEnabled),(0,x.q)(1),(0,k.b)({next:tn=>{Bt=!0,this.lastSuccessfulNavigation=this.currentNavigation,this.events.next(new ri(tn.id,this.urlSerializer.serialize(tn.extractedUrl),this.urlSerializer.serialize(tn.urlAfterRedirects))),oe.titleStrategy?.updateTitle(tn.targetRouterState.snapshot),tn.resolve(!0)},complete:()=>{Bt=!0}}),(0,le.R)(this.transitionAbortSubject.pipe((0,k.b)(tn=>{throw tn}))),(0,re.x)(()=>{Bt||on||this.cancelNavigationTransition(zt,"",1),this.currentNavigation?.id===zt.id&&(this.currentNavigation=null)}),(0,R.K)(tn=>{if(on=!0,xo(tn))this.events.next(new di(zt.id,this.urlSerializer.serialize(zt.extractedUrl),tn.message,tn.cancellationCode)),function hs(ue){return xo(ue)&&Ke(ue.url)}(tn)?this.events.next(new Ei(tn.url)):zt.resolve(!1);else{this.events.next(new fi(zt.id,this.urlSerializer.serialize(zt.extractedUrl),tn,zt.targetSnapshot??void 0));try{zt.resolve(oe.errorHandler(tn))}catch(xn){zt.reject(xn)}}return v.E}))}))}cancelNavigationTransition(oe,Oe,tt){const zt=new di(oe.id,this.urlSerializer.serialize(oe.extractedUrl),Oe,tt);this.events.next(zt),oe.resolve(!1)}static#e=this.\u0275fac=function(Oe){return new(Oe||ue)};static#t=this.\u0275prov=e.Yz7({token:ue,factory:ue.\u0275fac,providedIn:"root"})}return ue})();function rn(ue){return ue!==si}let an=(()=>{class ue{buildTitle(oe){let Oe,tt=oe.root;for(;void 0!==tt;)Oe=this.getResolvedTitleForRoute(tt)??Oe,tt=tt.children.find(zt=>zt.outlet===ie);return Oe}getResolvedTitleForRoute(oe){return oe.data[ae]}static#e=this.\u0275fac=function(Oe){return new(Oe||ue)};static#t=this.\u0275prov=e.Yz7({token:ue,factory:function(){return(0,e.f3M)(An)},providedIn:"root"})}return ue})(),An=(()=>{class ue extends an{constructor(oe){super(),this.title=oe}updateTitle(oe){const Oe=this.buildTitle(oe);void 0!==Oe&&this.title.setTitle(Oe)}static#e=this.\u0275fac=function(Oe){return new(Oe||ue)(e.LFG(Q.Dx))};static#t=this.\u0275prov=e.Yz7({token:ue,factory:ue.\u0275fac,providedIn:"root"})}return ue})(),bi=(()=>{class ue{static#e=this.\u0275fac=function(Oe){return new(Oe||ue)};static#t=this.\u0275prov=e.Yz7({token:ue,factory:function(){return(0,e.f3M)(mi)},providedIn:"root"})}return ue})();class Ni{shouldDetach(Se){return!1}store(Se,oe){}shouldAttach(Se){return!1}retrieve(Se){return null}shouldReuseRoute(Se,oe){return Se.routeConfig===oe.routeConfig}}let mi=(()=>{class ue extends Ni{static#e=this.\u0275fac=function(){let oe;return function(tt){return(oe||(oe=e.n5z(ue)))(tt||ue)}}();static#t=this.\u0275prov=e.Yz7({token:ue,factory:ue.\u0275fac,providedIn:"root"})}return ue})();const Gn=new e.OlP("",{providedIn:"root",factory:()=>({})});let Ki=(()=>{class ue{static#e=this.\u0275fac=function(Oe){return new(Oe||ue)};static#t=this.\u0275prov=e.Yz7({token:ue,factory:function(){return(0,e.f3M)(Fn)},providedIn:"root"})}return ue})(),Fn=(()=>{class ue{shouldProcessUrl(oe){return!0}extract(oe){return oe}merge(oe,Oe){return oe}static#e=this.\u0275fac=function(Oe){return new(Oe||ue)};static#t=this.\u0275prov=e.Yz7({token:ue,factory:ue.\u0275fac,providedIn:"root"})}return ue})();var Zi=function(ue){return ue[ue.COMPLETE=0]="COMPLETE",ue[ue.FAILED=1]="FAILED",ue[ue.REDIRECTING=2]="REDIRECTING",ue}(Zi||{});function Vo(ue,Se){ue.events.pipe((0,_.h)(oe=>oe instanceof ri||oe instanceof di||oe instanceof fi||oe instanceof hi),(0,y.U)(oe=>oe instanceof ri||oe instanceof hi?Zi.COMPLETE:oe instanceof di&&(0===oe.code||1===oe.code)?Zi.REDIRECTING:Zi.FAILED),(0,_.h)(oe=>oe!==Zi.REDIRECTING),(0,x.q)(1)).subscribe(()=>{Se()})}function Ko(ue){throw ue}function Ms(ue,Se,oe){return Se.parse("/")}const wo={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},gs={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"};let ni=(()=>{class ue{get navigationId(){return this.navigationTransitions.navigationId}get browserPageId(){return"computed"!==this.canceledNavigationResolution?this.currentPageId:this.location.getState()?.\u0275routerPageId??this.currentPageId}get events(){return this._events}constructor(){this.disposed=!1,this.currentPageId=0,this.console=(0,e.f3M)(e.c2e),this.isNgZoneEnabled=!1,this._events=new d.x,this.options=(0,e.f3M)(Gn,{optional:!0})||{},this.pendingTasks=(0,e.f3M)(e.HDt),this.errorHandler=this.options.errorHandler||Ko,this.malformedUriErrorHandler=this.options.malformedUriErrorHandler||Ms,this.navigated=!1,this.lastSuccessfulId=-1,this.urlHandlingStrategy=(0,e.f3M)(Ki),this.routeReuseStrategy=(0,e.f3M)(bi),this.titleStrategy=(0,e.f3M)(an),this.onSameUrlNavigation=this.options.onSameUrlNavigation||"ignore",this.paramsInheritanceStrategy=this.options.paramsInheritanceStrategy||"emptyOnly",this.urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred",this.canceledNavigationResolution=this.options.canceledNavigationResolution||"replace",this.config=(0,e.f3M)(Zs,{optional:!0})?.flat()??[],this.navigationTransitions=(0,e.f3M)(Ht),this.urlSerializer=(0,e.f3M)(Lt),this.location=(0,e.f3M)(f.Ye),this.componentInputBindingEnabled=!!(0,e.f3M)(ln,{optional:!0}),this.eventsSubscription=new p.w0,this.isNgZoneEnabled=(0,e.f3M)(e.R0b)instanceof e.R0b&&e.R0b.isInAngularZone(),this.resetConfig(this.config),this.currentUrlTree=new B,this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.routerState=lt(0,null),this.navigationTransitions.setupNavigations(this,this.currentUrlTree,this.routerState).subscribe(oe=>{this.lastSuccessfulId=oe.id,this.currentPageId=this.browserPageId},oe=>{this.console.warn(`Unhandled Navigation Error: ${oe}`)}),this.subscribeToNavigationEvents()}subscribeToNavigationEvents(){const oe=this.navigationTransitions.events.subscribe(Oe=>{try{const{currentTransition:tt}=this.navigationTransitions;if(null===tt)return void(Vr(Oe)&&this._events.next(Oe));if(Oe instanceof ci)rn(tt.source)&&(this.browserUrlTree=tt.extractedUrl);else if(Oe instanceof hi)this.rawUrlTree=tt.rawUrl;else if(Oe instanceof zi){if("eager"===this.urlUpdateStrategy){if(!tt.extras.skipLocationChange){const zt=this.urlHandlingStrategy.merge(tt.urlAfterRedirects,tt.rawUrl);this.setBrowserUrl(zt,tt)}this.browserUrlTree=tt.urlAfterRedirects}}else if(Oe instanceof Xi)this.currentUrlTree=tt.urlAfterRedirects,this.rawUrlTree=this.urlHandlingStrategy.merge(tt.urlAfterRedirects,tt.rawUrl),this.routerState=tt.targetRouterState,"deferred"===this.urlUpdateStrategy&&(tt.extras.skipLocationChange||this.setBrowserUrl(this.rawUrlTree,tt),this.browserUrlTree=tt.urlAfterRedirects);else if(Oe instanceof di)0!==Oe.code&&1!==Oe.code&&(this.navigated=!0),(3===Oe.code||2===Oe.code)&&this.restoreHistory(tt);else if(Oe instanceof Ei){const zt=this.urlHandlingStrategy.merge(Oe.url,tt.currentRawUrl),Bt={skipLocationChange:tt.extras.skipLocationChange,replaceUrl:"eager"===this.urlUpdateStrategy||rn(tt.source)};this.scheduleNavigation(zt,si,null,Bt,{resolve:tt.resolve,reject:tt.reject,promise:tt.promise})}Oe instanceof fi&&this.restoreHistory(tt,!0),Oe instanceof ri&&(this.navigated=!0),Vr(Oe)&&this._events.next(Oe)}catch(tt){this.navigationTransitions.transitionAbortSubject.next(tt)}});this.eventsSubscription.add(oe)}resetRootComponentType(oe){this.routerState.root.component=oe,this.navigationTransitions.rootComponentType=oe}initialNavigation(){if(this.setUpLocationChangeListener(),!this.navigationTransitions.hasRequestedNavigation){const oe=this.location.getState();this.navigateToSyncWithBrowser(this.location.path(!0),si,oe)}}setUpLocationChangeListener(){this.locationSubscription||(this.locationSubscription=this.location.subscribe(oe=>{const Oe="popstate"===oe.type?"popstate":"hashchange";"popstate"===Oe&&setTimeout(()=>{this.navigateToSyncWithBrowser(oe.url,Oe,oe.state)},0)}))}navigateToSyncWithBrowser(oe,Oe,tt){const zt={replaceUrl:!0},Bt=tt?.navigationId?tt:null;if(tt){const tn={...tt};delete tn.navigationId,delete tn.\u0275routerPageId,0!==Object.keys(tn).length&&(zt.state=tn)}const on=this.parseUrl(oe);this.scheduleNavigation(on,Oe,Bt,zt)}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.navigationTransitions.currentNavigation}get lastSuccessfulNavigation(){return this.navigationTransitions.lastSuccessfulNavigation}resetConfig(oe){this.config=oe.map(Jn),this.navigated=!1,this.lastSuccessfulId=-1}ngOnDestroy(){this.dispose()}dispose(){this.navigationTransitions.complete(),this.locationSubscription&&(this.locationSubscription.unsubscribe(),this.locationSubscription=void 0),this.disposed=!0,this.eventsSubscription.unsubscribe()}createUrlTree(oe,Oe={}){const{relativeTo:tt,queryParams:zt,fragment:Bt,queryParamsHandling:on,preserveFragment:tn}=Oe,xn=tn?this.currentUrlTree.fragment:Bt;let Vi,ti=null;switch(on){case"merge":ti={...this.currentUrlTree.queryParams,...zt};break;case"preserve":ti=this.currentUrlTree.queryParams;break;default:ti=zt||null}null!==ti&&(ti=this.removeEmptyProps(ti));try{Vi=it(tt?tt.snapshot:this.routerState.snapshot.root)}catch{("string"!=typeof oe[0]||!oe[0].startsWith("/"))&&(oe=[]),Vi=this.currentUrlTree.root}return b(Vi,oe,ti,xn??null)}navigateByUrl(oe,Oe={skipLocationChange:!1}){const tt=Ke(oe)?oe:this.parseUrl(oe),zt=this.urlHandlingStrategy.merge(tt,this.rawUrlTree);return this.scheduleNavigation(zt,si,null,Oe)}navigate(oe,Oe={skipLocationChange:!1}){return function Es(ue){for(let Se=0;Se{const zt=oe[tt];return null!=zt&&(Oe[tt]=zt),Oe},{})}scheduleNavigation(oe,Oe,tt,zt,Bt){if(this.disposed)return Promise.resolve(!1);let on,tn,xn;Bt?(on=Bt.resolve,tn=Bt.reject,xn=Bt.promise):xn=new Promise((Vi,Ci)=>{on=Vi,tn=Ci});const ti=this.pendingTasks.add();return Vo(this,()=>{queueMicrotask(()=>this.pendingTasks.remove(ti))}),this.navigationTransitions.handleNavigationRequest({source:Oe,restoredState:tt,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,currentBrowserUrl:this.browserUrlTree,rawUrl:oe,extras:zt,resolve:on,reject:tn,promise:xn,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),xn.catch(Vi=>Promise.reject(Vi))}setBrowserUrl(oe,Oe){const tt=this.urlSerializer.serialize(oe);if(this.location.isCurrentPathEqualTo(tt)||Oe.extras.replaceUrl){const Bt={...Oe.extras.state,...this.generateNgRouterState(Oe.id,this.browserPageId)};this.location.replaceState(tt,"",Bt)}else{const zt={...Oe.extras.state,...this.generateNgRouterState(Oe.id,this.browserPageId+1)};this.location.go(tt,"",zt)}}restoreHistory(oe,Oe=!1){if("computed"===this.canceledNavigationResolution){const zt=this.currentPageId-this.browserPageId;0!==zt?this.location.historyGo(zt):this.currentUrlTree===this.getCurrentNavigation()?.finalUrl&&0===zt&&(this.resetState(oe),this.browserUrlTree=oe.currentUrlTree,this.resetUrlToCurrentUrlTree())}else"replace"===this.canceledNavigationResolution&&(Oe&&this.resetState(oe),this.resetUrlToCurrentUrlTree())}resetState(oe){this.routerState=oe.currentRouterState,this.currentUrlTree=oe.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,oe.rawUrl)}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}generateNgRouterState(oe,Oe){return"computed"===this.canceledNavigationResolution?{navigationId:oe,\u0275routerPageId:Oe}:{navigationId:oe}}static#e=this.\u0275fac=function(Oe){return new(Oe||ue)};static#t=this.\u0275prov=e.Yz7({token:ue,factory:ue.\u0275fac,providedIn:"root"})}return ue})();function Vr(ue){return!(ue instanceof Xi||ue instanceof Ei)}let xi=(()=>{class ue{constructor(oe,Oe,tt,zt,Bt,on){this.router=oe,this.route=Oe,this.tabIndexAttribute=tt,this.renderer=zt,this.el=Bt,this.locationStrategy=on,this.href=null,this.commands=null,this.onChanges=new d.x,this.preserveFragment=!1,this.skipLocationChange=!1,this.replaceUrl=!1;const tn=Bt.nativeElement.tagName?.toLowerCase();this.isAnchorElement="a"===tn||"area"===tn,this.isAnchorElement?this.subscription=oe.events.subscribe(xn=>{xn instanceof ri&&this.updateHref()}):this.setTabIndexIfNotOnNativeEl("0")}setTabIndexIfNotOnNativeEl(oe){null!=this.tabIndexAttribute||this.isAnchorElement||this.applyAttributeValue("tabindex",oe)}ngOnChanges(oe){this.isAnchorElement&&this.updateHref(),this.onChanges.next(this)}set routerLink(oe){null!=oe?(this.commands=Array.isArray(oe)?oe:[oe],this.setTabIndexIfNotOnNativeEl("0")):(this.commands=null,this.setTabIndexIfNotOnNativeEl(null))}onClick(oe,Oe,tt,zt,Bt){return!!(null===this.urlTree||this.isAnchorElement&&(0!==oe||Oe||tt||zt||Bt||"string"==typeof this.target&&"_self"!=this.target))||(this.router.navigateByUrl(this.urlTree,{skipLocationChange:this.skipLocationChange,replaceUrl:this.replaceUrl,state:this.state}),!this.isAnchorElement)}ngOnDestroy(){this.subscription?.unsubscribe()}updateHref(){this.href=null!==this.urlTree&&this.locationStrategy?this.locationStrategy?.prepareExternalUrl(this.router.serializeUrl(this.urlTree)):null;const oe=null===this.href?null:(0,e.P3R)(this.href,this.el.nativeElement.tagName.toLowerCase(),"href");this.applyAttributeValue("href",oe)}applyAttributeValue(oe,Oe){const tt=this.renderer,zt=this.el.nativeElement;null!==Oe?tt.setAttribute(zt,oe,Oe):tt.removeAttribute(zt,oe)}get urlTree(){return null===this.commands?null:this.router.createUrlTree(this.commands,{relativeTo:void 0!==this.relativeTo?this.relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,queryParamsHandling:this.queryParamsHandling,preserveFragment:this.preserveFragment})}static#e=this.\u0275fac=function(Oe){return new(Oe||ue)(e.Y36(ni),e.Y36(At),e.$8M("tabindex"),e.Y36(e.Qsj),e.Y36(e.SBq),e.Y36(f.S$))};static#t=this.\u0275dir=e.lG2({type:ue,selectors:[["","routerLink",""]],hostVars:1,hostBindings:function(Oe,tt){1&Oe&&e.NdJ("click",function(Bt){return tt.onClick(Bt.button,Bt.ctrlKey,Bt.shiftKey,Bt.altKey,Bt.metaKey)}),2&Oe&&e.uIk("target",tt.target)},inputs:{target:"target",queryParams:"queryParams",fragment:"fragment",queryParamsHandling:"queryParamsHandling",state:"state",relativeTo:"relativeTo",preserveFragment:["preserveFragment","preserveFragment",e.VuI],skipLocationChange:["skipLocationChange","skipLocationChange",e.VuI],replaceUrl:["replaceUrl","replaceUrl",e.VuI],routerLink:"routerLink"},standalone:!0,features:[e.Xq5,e.TTD]})}return ue})(),Dr=(()=>{class ue{get isActive(){return this._isActive}constructor(oe,Oe,tt,zt,Bt){this.router=oe,this.element=Oe,this.renderer=tt,this.cdr=zt,this.link=Bt,this.classes=[],this._isActive=!1,this.routerLinkActiveOptions={exact:!1},this.isActiveChange=new e.vpe,this.routerEventsSubscription=oe.events.subscribe(on=>{on instanceof ri&&this.update()})}ngAfterContentInit(){(0,i.of)(this.links.changes,(0,i.of)(null)).pipe((0,ce.J)()).subscribe(oe=>{this.update(),this.subscribeToEachLinkOnChanges()})}subscribeToEachLinkOnChanges(){this.linkInputChangesSubscription?.unsubscribe();const oe=[...this.links.toArray(),this.link].filter(Oe=>!!Oe).map(Oe=>Oe.onChanges);this.linkInputChangesSubscription=(0,t.D)(oe).pipe((0,ce.J)()).subscribe(Oe=>{this._isActive!==this.isLinkActive(this.router)(Oe)&&this.update()})}set routerLinkActive(oe){const Oe=Array.isArray(oe)?oe:oe.split(" ");this.classes=Oe.filter(tt=>!!tt)}ngOnChanges(oe){this.update()}ngOnDestroy(){this.routerEventsSubscription.unsubscribe(),this.linkInputChangesSubscription?.unsubscribe()}update(){!this.links||!this.router.navigated||queueMicrotask(()=>{const oe=this.hasActiveLinks();this._isActive!==oe&&(this._isActive=oe,this.cdr.markForCheck(),this.classes.forEach(Oe=>{oe?this.renderer.addClass(this.element.nativeElement,Oe):this.renderer.removeClass(this.element.nativeElement,Oe)}),oe&&void 0!==this.ariaCurrentWhenActive?this.renderer.setAttribute(this.element.nativeElement,"aria-current",this.ariaCurrentWhenActive.toString()):this.renderer.removeAttribute(this.element.nativeElement,"aria-current"),this.isActiveChange.emit(oe))})}isLinkActive(oe){const Oe=function br(ue){return!!ue.paths}(this.routerLinkActiveOptions)?this.routerLinkActiveOptions:this.routerLinkActiveOptions.exact||!1;return tt=>!!tt.urlTree&&oe.isActive(tt.urlTree,Oe)}hasActiveLinks(){const oe=this.isLinkActive(this.router);return this.link&&oe(this.link)||this.links.some(oe)}static#e=this.\u0275fac=function(Oe){return new(Oe||ue)(e.Y36(ni),e.Y36(e.SBq),e.Y36(e.Qsj),e.Y36(e.sBO),e.Y36(xi,8))};static#t=this.\u0275dir=e.lG2({type:ue,selectors:[["","routerLinkActive",""]],contentQueries:function(Oe,tt,zt){if(1&Oe&&e.Suo(zt,xi,5),2&Oe){let Bt;e.iGM(Bt=e.CRH())&&(tt.links=Bt)}},inputs:{routerLinkActiveOptions:"routerLinkActiveOptions",ariaCurrentWhenActive:"ariaCurrentWhenActive",routerLinkActive:"routerLinkActive"},outputs:{isActiveChange:"isActiveChange"},exportAs:["routerLinkActive"],standalone:!0,features:[e.TTD]})}return ue})();class Uo{}let Js=(()=>{class ue{constructor(oe,Oe,tt,zt,Bt){this.router=oe,this.injector=tt,this.preloadingStrategy=zt,this.loader=Bt}setUpPreloading(){this.subscription=this.router.events.pipe((0,_.h)(oe=>oe instanceof ri),(0,A.b)(()=>this.preload())).subscribe(()=>{})}preload(){return this.processRoutes(this.injector,this.router.config)}ngOnDestroy(){this.subscription&&this.subscription.unsubscribe()}processRoutes(oe,Oe){const tt=[];for(const zt of Oe){zt.providers&&!zt._injector&&(zt._injector=(0,e.MMx)(zt.providers,oe,`Route: ${zt.path}`));const Bt=zt._injector??oe,on=zt._loadedInjector??Bt;(zt.loadChildren&&!zt._loadedRoutes&&void 0===zt.canLoad||zt.loadComponent&&!zt._loadedComponent)&&tt.push(this.preloadConfig(Bt,zt)),(zt.children||zt._loadedRoutes)&&tt.push(this.processRoutes(on,zt.children??zt._loadedRoutes))}return(0,t.D)(tt).pipe((0,ce.J)())}preloadConfig(oe,Oe){return this.preloadingStrategy.preload(Oe,()=>{let tt;tt=Oe.loadChildren&&void 0===Oe.canLoad?this.loader.loadChildren(oe,Oe):(0,i.of)(null);const zt=tt.pipe((0,P.z)(Bt=>null===Bt?(0,i.of)(void 0):(Oe._loadedRoutes=Bt.routes,Oe._loadedInjector=Bt.injector,this.processRoutes(Bt.injector??oe,Bt.routes))));if(Oe.loadComponent&&!Oe._loadedComponent){const Bt=this.loader.loadComponent(Oe);return(0,t.D)([zt,Bt]).pipe((0,ce.J)())}return zt})}static#e=this.\u0275fac=function(Oe){return new(Oe||ue)(e.LFG(ni),e.LFG(e.Sil),e.LFG(e.lqb),e.LFG(Uo),e.LFG(me))};static#t=this.\u0275prov=e.Yz7({token:ue,factory:ue.\u0275fac,providedIn:"root"})}return ue})();const Yo=new e.OlP("");let la=(()=>{class ue{constructor(oe,Oe,tt,zt,Bt={}){this.urlSerializer=oe,this.transitions=Oe,this.viewportScroller=tt,this.zone=zt,this.options=Bt,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},Bt.scrollPositionRestoration=Bt.scrollPositionRestoration||"disabled",Bt.anchorScrolling=Bt.anchorScrolling||"disabled"}init(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.transitions.events.subscribe(oe=>{oe instanceof ci?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=oe.navigationTrigger,this.restoredId=oe.restoredState?oe.restoredState.navigationId:0):oe instanceof ri?(this.lastId=oe.id,this.scheduleScrollEvent(oe,this.urlSerializer.parse(oe.urlAfterRedirects).fragment)):oe instanceof hi&&0===oe.code&&(this.lastSource=void 0,this.restoredId=0,this.scheduleScrollEvent(oe,this.urlSerializer.parse(oe.url).fragment))})}consumeScrollEvents(){return this.transitions.events.subscribe(oe=>{oe instanceof wi&&(oe.position?"top"===this.options.scrollPositionRestoration?this.viewportScroller.scrollToPosition([0,0]):"enabled"===this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition(oe.position):oe.anchor&&"enabled"===this.options.anchorScrolling?this.viewportScroller.scrollToAnchor(oe.anchor):"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(oe,Oe){this.zone.runOutsideAngular(()=>{setTimeout(()=>{this.zone.run(()=>{this.transitions.events.next(new wi(oe,"popstate"===this.lastSource?this.store[this.restoredId]:null,Oe))})},0)})}ngOnDestroy(){this.routerEventsSubscription?.unsubscribe(),this.scrollEventsSubscription?.unsubscribe()}static#e=this.\u0275fac=function(Oe){e.$Z()};static#t=this.\u0275prov=e.Yz7({token:ue,factory:ue.\u0275fac})}return ue})();function Bi(ue,Se){return{\u0275kind:ue,\u0275providers:Se}}function ua(){const ue=(0,e.f3M)(e.zs3);return Se=>{const oe=ue.get(e.z2F);if(Se!==oe.components[0])return;const Oe=ue.get(ni),tt=ue.get(Ya);1===ue.get(Zn)&&Oe.initialNavigation(),ue.get(pa,null,e.XFs.Optional)?.setUpPreloading(),ue.get(Yo,null,e.XFs.Optional)?.init(),Oe.resetRootComponentType(oe.componentTypes[0]),tt.closed||(tt.next(),tt.complete(),tt.unsubscribe())}}const Ya=new e.OlP("",{factory:()=>new d.x}),Zn=new e.OlP("",{providedIn:"root",factory:()=>1}),pa=new e.OlP("");function $a(ue){return Bi(0,[{provide:pa,useExisting:Js},{provide:Uo,useExisting:ue}])}const xr=new e.OlP("ROUTER_FORROOT_GUARD"),zo=[f.Ye,{provide:Lt,useClass:Ut},ni,Pi,{provide:At,useFactory:function ca(ue){return ue.routerState.root},deps:[ni]},me,[]];function hn(){return new e.PXZ("Router",ni)}let ai=(()=>{class ue{constructor(oe){}static forRoot(oe,Oe){return{ngModule:ue,providers:[zo,[],{provide:Zs,multi:!0,useValue:oe},{provide:xr,useFactory:Ur,deps:[[ni,new e.FiY,new e.tp0]]},{provide:Gn,useValue:Oe||{}},Oe?.useHash?{provide:f.S$,useClass:f.Do}:{provide:f.S$,useClass:f.b0},{provide:Yo,useFactory:()=>{const ue=(0,e.f3M)(f.EM),Se=(0,e.f3M)(e.R0b),oe=(0,e.f3M)(Gn),Oe=(0,e.f3M)(Ht),tt=(0,e.f3M)(Lt);return oe.scrollOffset&&ue.setOffset(oe.scrollOffset),new la(tt,Oe,ue,Se,oe)}},Oe?.preloadingStrategy?$a(Oe.preloadingStrategy).\u0275providers:[],{provide:e.PXZ,multi:!0,useFactory:hn},Oe?.initialNavigation?As(Oe):[],Oe?.bindToComponentInputs?Bi(8,[zn,{provide:ln,useExisting:zn}]).\u0275providers:[],[{provide:rs,useFactory:ua},{provide:e.tb,multi:!0,useExisting:rs}]]}}static forChild(oe){return{ngModule:ue,providers:[{provide:Zs,multi:!0,useValue:oe}]}}static#e=this.\u0275fac=function(Oe){return new(Oe||ue)(e.LFG(xr,8))};static#t=this.\u0275mod=e.oAB({type:ue});static#n=this.\u0275inj=e.cJS({})}return ue})();function Ur(ue){return"guarded"}function As(ue){return["disabled"===ue.initialNavigation?Bi(3,[{provide:e.ip1,multi:!0,useFactory:()=>{const Se=(0,e.f3M)(ni);return()=>{Se.setUpLocationChangeListener()}}},{provide:Zn,useValue:2}]).\u0275providers:[],"enabledBlocking"===ue.initialNavigation?Bi(2,[{provide:Zn,useValue:0},{provide:e.ip1,multi:!0,deps:[e.zs3],useFactory:Se=>{const oe=Se.get(f.V_,Promise.resolve());return()=>oe.then(()=>new Promise(Oe=>{const tt=Se.get(ni),zt=Se.get(Ya);Vo(tt,()=>{Oe(!0)}),Se.get(Ht).afterPreactivation=()=>(Oe(!0),zt.closed?(0,i.of)(void 0):zt),tt.initialNavigation()}))}}]).\u0275providers:[]]}const rs=new e.OlP("")},14715:(nt,I,o)=>{"use strict";o.d(I,{BOg:()=>bt,BXH:()=>fi,BXO:()=>Kd,Dfz:()=>bc,ECR:()=>H0,Ej7:()=>no,FsU:()=>w0,Hkd:()=>Ge,Idu:()=>Ni,ItN:()=>Xr,Kw4:()=>ao,LBP:()=>Xu,LJh:()=>Wa,M4u:()=>sr,M8e:()=>Ts,Mwl:()=>Ps,NFG:()=>Pr,OYp:()=>Oi,OeK:()=>Tt,P0d:()=>Mi,Q2k:()=>Ls,RIp:()=>ss,RU0:()=>Yt,RYI:()=>ti,RZ3:()=>kd,Rfq:()=>Ce,SFb:()=>fa,TSL:()=>u1,U2Q:()=>En,UKj:()=>Sn,UTl:()=>Pt,UY$:()=>kh,V65:()=>ve,VWu:()=>Fo,WH2:()=>Io,XuQ:()=>b,Xwh:()=>fl,Z5F:()=>bi,_ry:()=>qu,aIM:()=>na,bBn:()=>L,cLx:()=>wc,cN2:()=>e1,d2H:()=>Ds,d_$:()=>kc,eFY:()=>lh,eLU:()=>ki,fhO:()=>p1,gvV:()=>ls,iUK:()=>Bi,irO:()=>Ta,kR2:()=>sf,khz:()=>Qu,mqL:()=>Zr,nZ9:()=>Qs,np6:()=>Lh,nrZ:()=>F,qtR:()=>nu,rHg:()=>Rd,rMt:()=>jo,rk5:()=>ho,s4U:()=>Jl,sZJ:()=>kr,s_U:()=>l1,ssy:()=>tr,u8X:()=>Bs,uIz:()=>C1,uYj:()=>Ec,ud1:()=>Ue,v6v:()=>qh,vEg:()=>$s,vkb:()=>$t,w1L:()=>Nd,wJM:()=>io,x0x:()=>so,yQU:()=>pn,yhW:()=>ze,zdJ:()=>pc});const ze={name:"appstore",theme:"outline",icon:''},ve={name:"bars",theme:"outline",icon:''},Ue={name:"calendar",theme:"outline",icon:''},Ge={name:"caret-down",theme:"fill",icon:''},b={name:"caret-down",theme:"outline",icon:''},L={name:"caret-up",theme:"fill",icon:''},Ce={name:"check-circle",theme:"fill",icon:''},bt={name:"caret-up",theme:"outline",icon:''},pn={name:"check-circle",theme:"outline",icon:''},En={name:"check",theme:"outline",icon:''},fi={name:"close-circle",theme:"fill",icon:''},Oi={name:"close-circle",theme:"outline",icon:''},ki={name:"close",theme:"outline",icon:''},Sn={name:"clock-circle",theme:"outline",icon:''},so={name:"copy",theme:"outline",icon:''},ao={name:"copyright",theme:"outline",icon:''},no={name:"dashboard",theme:"outline",icon:''},$t={name:"delete",theme:"outline",icon:''},io={name:"dingding",theme:"outline",icon:''},Tt={name:"bell",theme:"outline",icon:''},jo={name:"double-right",theme:"outline",icon:''},Fo={name:"double-left",theme:"outline",icon:''},$s={name:"down",theme:"outline",icon:''},Ps={name:"download",theme:"outline",icon:''},Yt={name:"ellipsis",theme:"outline",icon:''},ss={name:"edit",theme:"outline",icon:''},tr={name:"exclamation-circle",theme:"outline",icon:''},Ts={name:"exclamation-circle",theme:"fill",icon:''},bi={name:"eye",theme:"outline",icon:''},Ni={name:"facebook",theme:"outline",icon:''},Bi={name:"file",theme:"fill",icon:''},Wa={name:"file",theme:"outline",icon:''},Pr={name:"filter",theme:"fill",icon:''},ti={name:"folder",theme:"outline",icon:''},Io={name:"form",theme:"outline",icon:''},ho={name:"fullscreen",theme:"outline",icon:''},fa={name:"fullscreen-exit",theme:"outline",icon:''},Ls={name:"folder-open",theme:"outline",icon:''},Jl={name:"github",theme:"outline",icon:''},Bs={name:"global",theme:"outline",icon:''},Zr={name:"heart",theme:"outline",icon:''},Ta={name:"inbox",theme:"outline",icon:''},F={name:"info-circle",theme:"outline",icon:''},Pt={name:"info-circle",theme:"fill",icon:''},Mi={name:"layout",theme:"outline",icon:''},ls={name:"left",theme:"outline",icon:''},Ds={name:"loading",theme:"outline",icon:''},Qs={name:"lock",theme:"outline",icon:''},Xr={name:"logout",theme:"outline",icon:''},Qu={name:"menu",theme:"outline",icon:''},Xu={name:"menu-fold",theme:"outline",icon:''},qu={name:"menu-unfold",theme:"outline",icon:''},sf={name:"code-sandbox",theme:"outline",icon:''},lh={name:"paper-clip",theme:"outline",icon:''},pc={name:"plus",theme:"outline",icon:''},kr={name:"question-circle",theme:"outline",icon:''},Nd={name:"rotate-right",theme:"outline",icon:''},kd={name:"rocket",theme:"outline",icon:''},kh={name:"rotate-left",theme:"outline",icon:''},Lh={name:"right",theme:"outline",icon:''},sr={name:"setting",theme:"outline",icon:''},Rd={name:"search",theme:"outline",icon:''},Ec={name:"skin",theme:"outline",icon:''},bc={name:"star",theme:"outline",icon:''},qh={name:"star",theme:"fill",icon:''},e1={name:"swap-right",theme:"outline",icon:''},Kd={name:"snippets",theme:"outline",icon:''},wc={name:"thunderbolt",theme:"fill",icon:''},na={name:"tool",theme:"outline",icon:''},nu={name:"twitter",theme:"outline",icon:''},w0={name:"up",theme:"outline",icon:''},l1={name:"upload",theme:"outline",icon:''},u1={name:"vertical-align-top",theme:"outline",icon:''},fl={name:"vertical-left",theme:"outline",icon:''},p1={name:"vertical-right",theme:"outline",icon:''},H0={name:"user",theme:"outline",icon:''},C1={name:"zoom-in",theme:"outline",icon:''},kc={name:"zoom-out",theme:"outline",icon:''}},83991:(nt,I,o)=>{"use strict";o.d(I,{M:()=>z,l:()=>M});var e=o(65879),n=o(96814),t=o(65619),i=o(69862);const l=function(h){return{display:h}},C=["*"];let E=(()=>{class h{get notify(){return this._notify.asObservable()}constructor(g){this.http=g,this.cached={},this._notify=new t.X(null)}req(g,d){const p=`https://api.github.com/repos/${g}/${d}`;null==this.cached[p]?(this.cached[p]={},this.http.get(p).subscribe(f=>{this.cached[p]=f,this._notify.next(this.cached[p])})):this._notify.next(this.cached[p])}static#e=this.\u0275fac=function(d){return new(d||h)(e.LFG(i.eN))};static#t=this.\u0275prov=e.Yz7({token:h,factory:h.\u0275fac,providedIn:"root"})}return h})();const u=!("object"==typeof document&&document);let z=(()=>{class h{get repo_url(){return`//github.com/${this.namespace}/${this.repo}/`}get count_url(){return`//github.com/${this.namespace}/${this.repo}/${this.typeToPath[this.type]||this.type}/`}constructor(g,d){this.srv=g,this.cdr=d,this.typeToLabel={stargazers:"Star",subscribers:"Watch",forks:"Fork"},this.typeToPath={forks:"network"},this.count=0,this.type="stargazers",this.size="default",this.showZero=!1}setCount(g){this.count=g?g[`${this.type}_count`]:0,this.cdr.detectChanges()}ngOnInit(){this.notify$=this.srv.notify.subscribe(g=>this.setCount(g))}ngOnChanges(){u||this.srv.req(this.namespace,this.repo)}ngOnDestroy(){this.notify$?.unsubscribe()}static#e=this.\u0275fac=function(d){return new(d||h)(e.Y36(E),e.Y36(e.sBO))};static#t=this.\u0275cmp=e.Xpm({type:h,selectors:[["github-button"]],hostVars:2,hostBindings:function(d,p){2&d&&e.ekj("github-btn-large","large"===p.size)},inputs:{type:"type",size:"size",namespace:"namespace",repo:"repo",showZero:"showZero"},standalone:!0,features:[e.TTD,e.jDz],ngContentSelectors:C,decls:7,vars:7,consts:[["target","_blank",1,"gh-btn",3,"href"],["aria-hidden","true",1,"gh-ico"],[1,"gh-text"],["target","_blank",1,"gh-count",3,"href","ngStyle"]],template:function(d,p){1&d&&(e.F$t(),e.TgZ(0,"a",0),e._UZ(1,"span",1),e.TgZ(2,"span",2),e._uU(3),e.qZA()(),e.TgZ(4,"a",3),e._uU(5),e.qZA(),e.Hsn(6)),2&d&&(e.Q6J("href",p.repo_url,e.LSH),e.xp6(3),e.Oqu(p.typeToLabel[p.type]),e.xp6(1),e.Q6J("href",p.count_url,e.LSH)("ngStyle",e.VKq(5,l,p.showZero||p.count>0?"block":"none")),e.xp6(1),e.hij(" ",p.count," "))},dependencies:[n.ez,n.PC],styles:['[_nghost-%COMP%]{font:700 11px/14px Helvetica Neue,Helvetica,Arial,sans-serif;height:20px;overflow:hidden}[_nghost-%COMP%]:after, [_nghost-%COMP%]:before{content:" ";display:table}[_nghost-%COMP%]:after{clear:both;visibility:hidden;font-size:0;height:0}[_nghost-%COMP%] .gh-btn, [_nghost-%COMP%] .gh-count, [_nghost-%COMP%] .gh-ico{float:left}[_nghost-%COMP%] .gh-btn, [_nghost-%COMP%] .gh-count{padding:2px 5px 2px 4px;color:#333;text-decoration:none;white-space:nowrap;cursor:pointer;border-radius:3px}[_nghost-%COMP%] .gh-btn{background-color:#eee;background-image:linear-gradient(to bottom,#fcfcfc 0,#eee 100%);background-repeat:no-repeat;border:1px solid #d5d5d5}[_nghost-%COMP%] .gh-btn:hover, [_nghost-%COMP%] .gh-btn:focus{text-decoration:none;background-color:#ddd;background-image:linear-gradient(to bottom,#eee 0,#ddd 100%);border-color:#ccc}[_nghost-%COMP%] .gh-btn:active{background-image:none;background-color:#dcdcdc;border-color:#b5b5b5;box-shadow:inset 0 2px 4px #00000026}[_nghost-%COMP%] .gh-ico{width:14px;height:14px;margin-right:4px;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2ZXJzaW9uPSIxLjEiIGlkPSJMYXllcl8xIiB4PSIwcHgiIHk9IjBweCIgd2lkdGg9IjQwcHgiIGhlaWdodD0iNDBweCIgdmlld0JveD0iMTIgMTIgNDAgNDAiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMTIgMTIgNDAgNDAiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxwYXRoIGZpbGw9IiMzMzMzMzMiIGQ9Ik0zMiAxMy40Yy0xMC41IDAtMTkgOC41LTE5IDE5YzAgOC40IDUuNSAxNS41IDEzIDE4YzEgMC4yIDEuMy0wLjQgMS4zLTAuOWMwLTAuNSAwLTEuNyAwLTMuMiBjLTUuMyAxLjEtNi40LTIuNi02LjQtMi42QzIwIDQxLjYgMTguOCA0MSAxOC44IDQxYy0xLjctMS4yIDAuMS0xLjEgMC4xLTEuMWMxLjkgMC4xIDIuOSAyIDIuOSAyYzEuNyAyLjkgNC41IDIuMSA1LjUgMS42IGMwLjItMS4yIDAuNy0yLjEgMS4yLTIuNmMtNC4yLTAuNS04LjctMi4xLTguNy05LjRjMC0yLjEgMC43LTMuNyAyLTUuMWMtMC4yLTAuNS0wLjgtMi40IDAuMi01YzAgMCAxLjYtMC41IDUuMiAyIGMxLjUtMC40IDMuMS0wLjcgNC44LTAuN2MxLjYgMCAzLjMgMC4yIDQuNyAwLjdjMy42LTIuNCA1LjItMiA1LjItMmMxIDIuNiAwLjQgNC42IDAuMiA1YzEuMiAxLjMgMiAzIDIgNS4xYzAgNy4zLTQuNSA4LjktOC43IDkuNCBjMC43IDAuNiAxLjMgMS43IDEuMyAzLjVjMCAyLjYgMCA0LjYgMCA1LjJjMCAwLjUgMC40IDEuMSAxLjMgMC45YzcuNS0yLjYgMTMtOS43IDEzLTE4LjFDNTEgMjEuOSA0Mi41IDEzLjQgMzIgMTMuNHoiLz48L3N2Zz4=);background-size:100% 100%;background-repeat:no-repeat}[_nghost-%COMP%] .gh-count{position:relative;display:none;margin-left:4px;background-color:#fafafa;border:1px solid #d4d4d4}[_nghost-%COMP%] .gh-count:hover, [_nghost-%COMP%] .gh-count:focus{color:#4183c4}[_nghost-%COMP%] .gh-count:before, [_nghost-%COMP%] .gh-count:after{content:"";position:absolute;display:inline-block;width:0;height:0;border-color:transparent;border-style:solid}[_nghost-%COMP%] .gh-count:before{top:50%;left:-3px;margin-top:-4px;border-width:4px 4px 4px 0;border-right-color:#fafafa}[_nghost-%COMP%] .gh-count:after{top:50%;left:-4px;z-index:-1;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#d4d4d4}.github-btn-large[_nghost-%COMP%]{height:30px}.github-btn-large[_nghost-%COMP%] .gh-btn, .github-btn-large[_nghost-%COMP%] .gh-count{padding:3px 10px 3px 8px;font-size:16px;line-height:22px;border-radius:4px}.github-btn-large[_nghost-%COMP%] .gh-ico{width:20px;height:20px}.github-btn-large[_nghost-%COMP%] .gh-count{margin-left:6px}.github-btn-large[_nghost-%COMP%] .gh-count:before{left:-5px;margin-top:-6px;border-width:6px 6px 6px 0}.github-btn-large[_nghost-%COMP%] .gh-count:after{left:-6px;margin-top:-7px;border-width:7px 7px 7px 0}'],changeDetection:0})}return h})(),M=(()=>{class h{static#e=this.\u0275fac=function(d){return new(d||h)};static#t=this.\u0275mod=e.oAB({type:h});static#n=this.\u0275inj=e.cJS({imports:[z]})}return h})()},23771:(nt,I,o)=>{"use strict";o.d(I,{$:()=>R,j:()=>$});var e=o(97582),n=o(96814),t=o(65879),i=o(47394),l=o(97328),C=o(78645),E=o(63019),u=o(92438),z=o(59773),M=o(37398),h=o(18753),v=o(83064),g=o(27754),d=o(99087),p=o(62831),f=o(28802),y=o(49388);const T=["fixedEl"],x=["*"];var D=function(W){return W.resize="resize",W.scroll="scroll",W.touchstart="touchstart",W.touchmove="touchmove",W.touchend="touchend",W.pageshow="pageshow",W.load="LOAD",W}(D||{});function P(W){return function _(W){return typeof window<"u"&&W===window}(W)?{top:0,left:0,bottom:0}:W.getBoundingClientRect()}const A="ant-affix";let R=(()=>{class W{get target(){const Y=this.nzTarget;return("string"==typeof Y?this.document.querySelector(Y):Y)||window}constructor(Y,G,V,K,te,ne,fe,re,be,le){this.nzConfigService=V,this.scrollSrv=K,this.ngZone=te,this.platform=ne,this.renderer=fe,this.nzResizeObserver=re,this.cdr=be,this.directionality=le,this._nzModuleName="affix",this.nzChange=new t.vpe,this.dir="ltr",this.positionChangeSubscription=i.w0.EMPTY,this.offsetChanged$=new l.t(1),this.destroy$=new C.x,this.placeholderNode=Y.nativeElement,this.document=G}ngOnInit(){this.directionality.change?.pipe((0,z.R)(this.destroy$)).subscribe(Y=>{this.dir=Y,this.registerListeners(),this.updatePosition({}),this.cdr.detectChanges()}),this.dir=this.directionality.value}ngOnChanges(Y){const{nzOffsetBottom:G,nzOffsetTop:V,nzTarget:K}=Y;(G||V)&&this.offsetChanged$.next(),K&&this.registerListeners()}ngAfterViewInit(){this.registerListeners()}ngOnDestroy(){this.removeListeners()}registerListeners(){if(!this.platform.isBrowser)return;this.removeListeners();const Y=this.target===window?this.document.body:this.target;this.positionChangeSubscription=this.ngZone.runOutsideAngular(()=>(0,E.T)(...Object.keys(D).map(G=>(0,u.R)(this.target,G)),this.offsetChanged$.pipe((0,M.U)(()=>({}))),this.nzResizeObserver.observe(Y)).pipe((0,h.p)(20,void 0,{trailing:!0}),(0,z.R)(this.destroy$)).subscribe(G=>this.updatePosition(G))),this.timeout=setTimeout(()=>this.updatePosition({}))}removeListeners(){clearTimeout(this.timeout),this.positionChangeSubscription.unsubscribe(),this.destroy$.next(!0),this.destroy$.complete()}getOffset(Y,G){const V=Y.getBoundingClientRect(),K=P(G),te=this.scrollSrv.getScroll(G,!0),ne=this.scrollSrv.getScroll(G,!1),fe=this.document.body;return{top:V.top-K.top+te-(fe.clientTop||0),left:V.left-K.left+ne-(fe.clientLeft||0),width:V.width,height:V.height}}setAffixStyle(Y,G){const V=this.affixStyle,K=this.target===window;if("scroll"===Y.type&&V&&G&&K||(0,g.wU)(V,G))return;const te=!!G,ne=this.fixedEl.nativeElement;this.renderer.setStyle(ne,"cssText",(0,g.GM)(G)),this.affixStyle=G,te?ne.classList.add(A):ne.classList.remove(A),this.updateRtlClass(),(G&&!V||!G&&V)&&this.nzChange.emit(te)}setPlaceholderStyle(Y){(0,g.wU)(Y,this.placeholderStyle)||(this.renderer.setStyle(this.placeholderNode,"cssText",(0,g.GM)(Y)),this.placeholderStyle=Y)}syncPlaceholderStyle(Y){if(!this.affixStyle)return;this.renderer.setStyle(this.placeholderNode,"cssText",""),this.placeholderStyle=void 0;const G={width:this.placeholderNode.offsetWidth,height:this.fixedEl.nativeElement.offsetHeight};this.setAffixStyle(Y,{...this.affixStyle,...G}),this.setPlaceholderStyle(G)}updatePosition(Y){if(!this.platform.isBrowser)return;const G=this.target;let V=this.nzOffsetTop;const K=this.scrollSrv.getScroll(G,!0),te=this.getOffset(this.placeholderNode,G),ne=this.fixedEl.nativeElement,fe={width:ne.offsetWidth,height:ne.offsetHeight},re={top:!1,bottom:!1};"number"!=typeof V&&"number"!=typeof this.nzOffsetBottom?(re.top=!0,V=0):(re.top="number"==typeof V,re.bottom="number"==typeof this.nzOffsetBottom);const be=P(G),le=G.innerHeight||G.clientHeight;if(K>=te.top-V&&re.top){const ce=te.width;this.setAffixStyle(Y,{position:"fixed",top:be.top+V,left:be.left+te.left,width:ce}),this.setPlaceholderStyle({width:ce,height:fe.height})}else if(K<=te.top+fe.height+this.nzOffsetBottom-le&&re.bottom){const ce=G===window?0:window.innerHeight-be.bottom,Q=te.width;this.setAffixStyle(Y,{position:"fixed",bottom:ce+this.nzOffsetBottom,left:be.left+te.left,width:Q}),this.setPlaceholderStyle({width:Q,height:te.height})}else Y.type===D.resize&&this.affixStyle&&"fixed"===this.affixStyle.position&&this.placeholderNode.offsetWidth?this.setAffixStyle(Y,{...this.affixStyle,width:this.placeholderNode.offsetWidth}):this.setAffixStyle(Y),this.setPlaceholderStyle();"resize"===Y.type&&this.syncPlaceholderStyle(Y)}updateRtlClass(){const Y=this.fixedEl.nativeElement;"rtl"===this.dir&&Y.classList.contains(A)?Y.classList.add(`${A}-rtl`):Y.classList.remove(`${A}-rtl`)}static#e=this.\u0275fac=function(G){return new(G||W)(t.Y36(t.SBq),t.Y36(n.K0),t.Y36(v.jY),t.Y36(d.MF),t.Y36(t.R0b),t.Y36(p.t4),t.Y36(t.Qsj),t.Y36(f.D3),t.Y36(t.sBO),t.Y36(y.Is,8))};static#t=this.\u0275cmp=t.Xpm({type:W,selectors:[["nz-affix"]],viewQuery:function(G,V){if(1&G&&t.Gf(T,7),2&G){let K;t.iGM(K=t.CRH())&&(V.fixedEl=K.first)}},inputs:{nzTarget:"nzTarget",nzOffsetTop:"nzOffsetTop",nzOffsetBottom:"nzOffsetBottom"},outputs:{nzChange:"nzChange"},exportAs:["nzAffix"],features:[t.TTD],ngContentSelectors:x,decls:3,vars:0,consts:[["fixedEl",""]],template:function(G,V){1&G&&(t.F$t(),t.TgZ(0,"div",null,0),t.Hsn(2),t.qZA())},encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,v.oS)(),(0,g.Rn)(void 0)],W.prototype,"nzOffsetTop",void 0),(0,e.gn)([(0,v.oS)(),(0,g.Rn)(void 0)],W.prototype,"nzOffsetBottom",void 0),W})(),$=(()=>{class W{static#e=this.\u0275fac=function(G){return new(G||W)};static#t=this.\u0275mod=t.oAB({type:W});static#n=this.\u0275inj=t.cJS({imports:[y.vT,n.ez,p.ud]})}return W})()},93903:(nt,I,o)=>{"use strict";o.d(I,{L:()=>Y,r:()=>ze});var e=o(97582),n=o(65879),t=o(78645),i=o(59773),l=o(64194),C=o(83064),E=o(27754),u=o(49388),z=o(96814),M=o(90551),h=o(8324);function v(G,V){1&G&&n.GkF(0)}function g(G,V){if(1&G&&(n.ynx(0),n.YNc(1,v,1,0,"ng-container",9),n.BQk()),2&G){const K=n.oxw(3);n.xp6(1),n.Q6J("nzStringTemplateOutlet",K.nzIcon)}}function d(G,V){if(1&G&&n._UZ(0,"span",10),2&G){const K=n.oxw(3);n.Q6J("nzType",K.nzIconType||K.inferredIconType)("nzTheme",K.iconTheme)}}function p(G,V){if(1&G&&(n.TgZ(0,"div",6),n.YNc(1,g,2,1,"ng-container",7),n.YNc(2,d,1,2,"ng-template",null,8,n.W1O),n.qZA()),2&G){const K=n.MAs(3),te=n.oxw(2);n.xp6(1),n.Q6J("ngIf",te.nzIcon)("ngIfElse",K)}}function f(G,V){if(1&G&&(n.ynx(0),n._uU(1),n.BQk()),2&G){const K=n.oxw(4);n.xp6(1),n.Oqu(K.nzMessage)}}function y(G,V){if(1&G&&(n.TgZ(0,"span",14),n.YNc(1,f,2,1,"ng-container",9),n.qZA()),2&G){const K=n.oxw(3);n.xp6(1),n.Q6J("nzStringTemplateOutlet",K.nzMessage)}}function T(G,V){if(1&G&&(n.ynx(0),n._uU(1),n.BQk()),2&G){const K=n.oxw(4);n.xp6(1),n.Oqu(K.nzDescription)}}function x(G,V){if(1&G&&(n.TgZ(0,"span",15),n.YNc(1,T,2,1,"ng-container",9),n.qZA()),2&G){const K=n.oxw(3);n.xp6(1),n.Q6J("nzStringTemplateOutlet",K.nzDescription)}}function D(G,V){if(1&G&&(n.TgZ(0,"div",11),n.YNc(1,y,2,1,"span",12),n.YNc(2,x,2,1,"span",13),n.qZA()),2&G){const K=n.oxw(2);n.xp6(1),n.Q6J("ngIf",K.nzMessage),n.xp6(1),n.Q6J("ngIf",K.nzDescription)}}function _(G,V){if(1&G&&(n.ynx(0),n._uU(1),n.BQk()),2&G){const K=n.oxw(3);n.xp6(1),n.Oqu(K.nzAction)}}function P(G,V){if(1&G&&(n.TgZ(0,"div",16),n.YNc(1,_,2,1,"ng-container",9),n.qZA()),2&G){const K=n.oxw(2);n.xp6(1),n.Q6J("nzStringTemplateOutlet",K.nzAction)}}function S(G,V){1&G&&n._UZ(0,"span",19)}function A(G,V){if(1&G&&(n.ynx(0),n.TgZ(1,"span",20),n._uU(2),n.qZA(),n.BQk()),2&G){const K=n.oxw(4);n.xp6(2),n.Oqu(K.nzCloseText)}}function k(G,V){if(1&G&&(n.ynx(0),n.YNc(1,A,3,1,"ng-container",9),n.BQk()),2&G){const K=n.oxw(3);n.xp6(1),n.Q6J("nzStringTemplateOutlet",K.nzCloseText)}}function R(G,V){if(1&G){const K=n.EpF();n.TgZ(0,"button",17),n.NdJ("click",function(){n.CHM(K);const ne=n.oxw(2);return n.KtG(ne.closeAlert())}),n.YNc(1,S,1,0,"ng-template",null,18,n.W1O),n.YNc(3,k,2,1,"ng-container",7),n.qZA()}if(2&G){const K=n.MAs(2),te=n.oxw(2);n.xp6(3),n.Q6J("ngIf",te.nzCloseText)("ngIfElse",K)}}function $(G,V){if(1&G){const K=n.EpF();n.TgZ(0,"div",1),n.NdJ("@slideAlertMotion.done",function(){n.CHM(K);const ne=n.oxw();return n.KtG(ne.onFadeAnimationDone())}),n.YNc(1,p,4,2,"div",2),n.YNc(2,D,3,2,"div",3),n.YNc(3,P,2,1,"div",4),n.YNc(4,R,4,2,"button",5),n.qZA()}if(2&G){const K=n.oxw();n.ekj("ant-alert-rtl","rtl"===K.dir)("ant-alert-success","success"===K.nzType)("ant-alert-info","info"===K.nzType)("ant-alert-warning","warning"===K.nzType)("ant-alert-error","error"===K.nzType)("ant-alert-no-icon",!K.nzShowIcon)("ant-alert-banner",K.nzBanner)("ant-alert-closable",K.nzCloseable)("ant-alert-with-description",!!K.nzDescription),n.Q6J("@.disabled",K.nzNoAnimation)("@slideAlertMotion",void 0),n.xp6(1),n.Q6J("ngIf",K.nzShowIcon),n.xp6(1),n.Q6J("ngIf",K.nzMessage||K.nzDescription),n.xp6(1),n.Q6J("ngIf",K.nzAction),n.xp6(1),n.Q6J("ngIf",K.nzCloseable||K.nzCloseText)}}const W="alert";let ze=(()=>{class G{constructor(K,te,ne){this.nzConfigService=K,this.cdr=te,this.directionality=ne,this._nzModuleName=W,this.nzAction=null,this.nzCloseText=null,this.nzIconType=null,this.nzMessage=null,this.nzDescription=null,this.nzType="info",this.nzCloseable=!1,this.nzShowIcon=!1,this.nzBanner=!1,this.nzNoAnimation=!1,this.nzIcon=null,this.nzOnClose=new n.vpe,this.closed=!1,this.iconTheme="fill",this.inferredIconType="info-circle",this.dir="ltr",this.isTypeSet=!1,this.isShowIconSet=!1,this.destroy$=new t.x,this.nzConfigService.getConfigChangeEventForComponent(W).pipe((0,i.R)(this.destroy$)).subscribe(()=>{this.cdr.markForCheck()})}ngOnInit(){this.directionality.change?.pipe((0,i.R)(this.destroy$)).subscribe(K=>{this.dir=K,this.cdr.detectChanges()}),this.dir=this.directionality.value}closeAlert(){this.closed=!0}onFadeAnimationDone(){this.closed&&this.nzOnClose.emit(!0)}ngOnChanges(K){const{nzShowIcon:te,nzDescription:ne,nzType:fe,nzBanner:re}=K;if(te&&(this.isShowIconSet=!0),fe)switch(this.isTypeSet=!0,this.nzType){case"error":this.inferredIconType="close-circle";break;case"success":this.inferredIconType="check-circle";break;case"info":this.inferredIconType="info-circle";break;case"warning":this.inferredIconType="exclamation-circle"}ne&&(this.iconTheme=this.nzDescription?"outline":"fill"),re&&(this.isTypeSet||(this.nzType="warning"),this.isShowIconSet||(this.nzShowIcon=!0))}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(te){return new(te||G)(n.Y36(C.jY),n.Y36(n.sBO),n.Y36(u.Is,8))};static#t=this.\u0275cmp=n.Xpm({type:G,selectors:[["nz-alert"]],inputs:{nzAction:"nzAction",nzCloseText:"nzCloseText",nzIconType:"nzIconType",nzMessage:"nzMessage",nzDescription:"nzDescription",nzType:"nzType",nzCloseable:"nzCloseable",nzShowIcon:"nzShowIcon",nzBanner:"nzBanner",nzNoAnimation:"nzNoAnimation",nzIcon:"nzIcon"},outputs:{nzOnClose:"nzOnClose"},exportAs:["nzAlert"],features:[n.TTD],decls:1,vars:1,consts:[["class","ant-alert",3,"ant-alert-rtl","ant-alert-success","ant-alert-info","ant-alert-warning","ant-alert-error","ant-alert-no-icon","ant-alert-banner","ant-alert-closable","ant-alert-with-description",4,"ngIf"],[1,"ant-alert"],["class","ant-alert-icon",4,"ngIf"],["class","ant-alert-content",4,"ngIf"],["class","ant-alert-action",4,"ngIf"],["type","button","tabindex","0","class","ant-alert-close-icon",3,"click",4,"ngIf"],[1,"ant-alert-icon"],[4,"ngIf","ngIfElse"],["iconDefaultTemplate",""],[4,"nzStringTemplateOutlet"],["nz-icon","",3,"nzType","nzTheme"],[1,"ant-alert-content"],["class","ant-alert-message",4,"ngIf"],["class","ant-alert-description",4,"ngIf"],[1,"ant-alert-message"],[1,"ant-alert-description"],[1,"ant-alert-action"],["type","button","tabindex","0",1,"ant-alert-close-icon",3,"click"],["closeDefaultTemplate",""],["nz-icon","","nzType","close"],[1,"ant-alert-close-text"]],template:function(te,ne){1&te&&n.YNc(0,$,5,24,"div",0),2&te&&n.Q6J("ngIf",!ne.closed)},dependencies:[z.O5,M.Ls,h.f],encapsulation:2,data:{animation:[l.Rq]},changeDetection:0})}return(0,e.gn)([(0,C.oS)(),(0,E.yF)()],G.prototype,"nzCloseable",void 0),(0,e.gn)([(0,C.oS)(),(0,E.yF)()],G.prototype,"nzShowIcon",void 0),(0,e.gn)([(0,E.yF)()],G.prototype,"nzBanner",void 0),(0,e.gn)([(0,E.yF)()],G.prototype,"nzNoAnimation",void 0),G})(),Y=(()=>{class G{static#e=this.\u0275fac=function(te){return new(te||G)};static#t=this.\u0275mod=n.oAB({type:G});static#n=this.\u0275inj=n.cJS({imports:[u.vT,z.ez,M.PV,h.T]})}return G})()},29094:(nt,I,o)=>{"use strict";o.d(I,{Fp:()=>W,IT:()=>$,on:()=>ze});var e=o(65879),n=o(97582),t=o(62831),i=o(96814),l=o(78645),C=o(92438),E=o(18753),u=o(59773),z=o(83064),M=o(27754),h=o(99087),v=o(23771),g=o(49388);const d=["ink"];function p(Y,G){}function f(Y,G){if(1&Y&&(e.TgZ(0,"nz-affix",2),e.YNc(1,p,0,0,"ng-template",3),e.qZA()),2&Y){const V=e.oxw(),K=e.MAs(2);e.Q6J("nzOffsetTop",V.nzOffsetTop)("nzTarget",V.container),e.xp6(1),e.Q6J("ngTemplateOutlet",K)}}const y=function(Y){return{"ant-anchor-fixed":Y}};function T(Y,G){if(1&Y&&(e.TgZ(0,"div",4)(1,"div",5)(2,"div",6),e._UZ(3,"div",7,8),e.qZA(),e.Hsn(5),e.qZA()()),2&Y){const V=e.oxw();e.Q6J("ngStyle",V.wrapperStyle),e.xp6(1),e.Q6J("ngClass",e.VKq(2,y,!V.nzAffix&&!V.nzShowInkInFixed))}}const x=["*"],D=["nzTemplate"],_=["linkTitle"];function P(Y,G){if(1&Y&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&Y){const V=e.oxw();e.xp6(1),e.Oqu(V.titleStr)}}function S(Y,G){if(!Y||!Y.getClientRects().length)return 0;const V=Y.getBoundingClientRect();return V.width||V.height?G===window?V.top-Y.ownerDocument.documentElement.clientTop:V.top-G.getBoundingClientRect().top:V.top}const k=/#([^#]+)$/,R=(0,t.i$)({passive:!0});let $=(()=>{class Y{constructor(V,K,te,ne,fe,re,be){this.doc=V,this.nzConfigService=K,this.scrollSrv=te,this.cdr=ne,this.platform=fe,this.zone=re,this.renderer=be,this._nzModuleName="anchor",this.nzAffix=!0,this.nzShowInkInFixed=!1,this.nzBounds=5,this.nzOffsetTop=void 0,this.nzTargetOffset=void 0,this.nzClick=new e.vpe,this.nzChange=new e.vpe,this.nzScroll=new e.vpe,this.visible=!1,this.wrapperStyle={"max-height":"100vh"},this.links=[],this.animating=!1,this.destroy$=new l.x,this.handleScrollTimeoutID=-1}registerLink(V){this.links.push(V)}unregisterLink(V){this.links.splice(this.links.indexOf(V),1)}getContainer(){return this.container||window}ngAfterViewInit(){this.registerScrollEvent()}ngOnDestroy(){clearTimeout(this.handleScrollTimeoutID),this.destroy$.next(!0),this.destroy$.complete()}registerScrollEvent(){this.platform.isBrowser&&(this.destroy$.next(!0),this.zone.runOutsideAngular(()=>{(0,C.R)(this.getContainer(),"scroll",R).pipe((0,E.p)(50),(0,u.R)(this.destroy$)).subscribe(()=>this.handleScroll())}),this.handleScrollTimeoutID=setTimeout(()=>this.handleScroll()))}handleScroll(){if(typeof document>"u"||this.animating)return;const V=[],te=(this.nzTargetOffset?this.nzTargetOffset:this.nzOffsetTop||0)+this.nzBounds;if(this.links.forEach(ne=>{const fe=k.exec(ne.nzHref.toString());if(!fe)return;const re=this.doc.getElementById(fe[1]);if(re){const be=S(re,this.getContainer());bere.top>fe.top?re:fe);this.handleActive(ne.comp)}else this.clearActive(),this.cdr.detectChanges();this.setVisible()}clearActive(){this.links.forEach(V=>{V.unsetActive()})}setActive(V){const K=this.activeLink,te=this.nzCurrentAnchor&&this.links.find(fe=>fe.nzHref===this.nzCurrentAnchor)||V;if(!te)return;te.setActive();const ne=te.getLinkTitleElement();this.ink.nativeElement.style.top=ne.offsetTop+ne.clientHeight/2-4.5+"px",this.activeLink=(V||te).nzHref,K!==this.activeLink&&this.nzChange.emit(this.activeLink)}handleActive(V){this.clearActive(),this.setActive(V),this.visible=!0,this.setVisible(),this.nzScroll.emit(V)}setVisible(){const K="visible";this.ink&&(this.visible?this.renderer.addClass(this.ink.nativeElement,K):this.renderer.removeClass(this.ink.nativeElement,K))}handleScrollTo(V){const K=this.doc.querySelector(V.nzHref);if(!K)return;this.animating=!0;let fe=this.scrollSrv.getScroll(this.getContainer())+S(K,this.getContainer());fe-=void 0!==this.nzTargetOffset?this.nzTargetOffset:this.nzOffsetTop||0,this.scrollSrv.scrollTo(this.getContainer(),fe,{callback:()=>{this.animating=!1,this.handleActive(V)}}),this.nzClick.emit(V.nzHref)}ngOnChanges(V){const{nzOffsetTop:K,nzContainer:te,nzCurrentAnchor:ne}=V;if(K&&(this.wrapperStyle={"max-height":`calc(100vh - ${this.nzOffsetTop}px)`}),te){const fe=this.nzContainer;this.container="string"==typeof fe?this.doc.querySelector(fe):fe,this.registerScrollEvent()}ne&&this.setActive()}static#e=this.\u0275fac=function(K){return new(K||Y)(e.Y36(i.K0),e.Y36(z.jY),e.Y36(h.MF),e.Y36(e.sBO),e.Y36(t.t4),e.Y36(e.R0b),e.Y36(e.Qsj))};static#t=this.\u0275cmp=e.Xpm({type:Y,selectors:[["nz-anchor"]],viewQuery:function(K,te){if(1&K&&e.Gf(d,5),2&K){let ne;e.iGM(ne=e.CRH())&&(te.ink=ne.first)}},inputs:{nzAffix:"nzAffix",nzShowInkInFixed:"nzShowInkInFixed",nzBounds:"nzBounds",nzOffsetTop:"nzOffsetTop",nzTargetOffset:"nzTargetOffset",nzContainer:"nzContainer",nzCurrentAnchor:"nzCurrentAnchor"},outputs:{nzClick:"nzClick",nzChange:"nzChange",nzScroll:"nzScroll"},exportAs:["nzAnchor"],features:[e.TTD],ngContentSelectors:x,decls:3,vars:2,consts:[[3,"nzOffsetTop","nzTarget",4,"ngIf","ngIfElse"],["content",""],[3,"nzOffsetTop","nzTarget"],[3,"ngTemplateOutlet"],[1,"ant-anchor-wrapper",3,"ngStyle"],[1,"ant-anchor",3,"ngClass"],[1,"ant-anchor-ink"],[1,"ant-anchor-ink-ball"],["ink",""]],template:function(K,te){if(1&K&&(e.F$t(),e.YNc(0,f,2,3,"nz-affix",0),e.YNc(1,T,6,4,"ng-template",null,1,e.W1O)),2&K){const ne=e.MAs(2);e.Q6J("ngIf",te.nzAffix)("ngIfElse",ne)}},dependencies:[i.mk,i.O5,i.tP,i.PC,v.$],encapsulation:2,changeDetection:0})}return(0,n.gn)([(0,M.yF)()],Y.prototype,"nzAffix",void 0),(0,n.gn)([(0,z.oS)(),(0,M.yF)()],Y.prototype,"nzShowInkInFixed",void 0),(0,n.gn)([(0,z.oS)(),(0,M.Rn)()],Y.prototype,"nzBounds",void 0),(0,n.gn)([(0,M.Rn)(void 0),(0,z.oS)()],Y.prototype,"nzOffsetTop",void 0),(0,n.gn)([(0,M.Rn)(void 0),(0,z.oS)()],Y.prototype,"nzTargetOffset",void 0),Y})(),W=(()=>{class Y{set nzTitle(V){V instanceof e.Rgc?(this.titleStr=null,this.titleTpl=V):this.titleStr=V}constructor(V,K,te,ne){this.elementRef=V,this.anchorComp=K,this.platform=te,this.renderer=ne,this.nzHref="#",this.titleStr=""}ngOnInit(){this.anchorComp.registerLink(this)}getLinkTitleElement(){return this.linkTitle.nativeElement}setActive(){this.renderer.addClass(this.elementRef.nativeElement,"ant-anchor-link-active")}unsetActive(){this.renderer.removeClass(this.elementRef.nativeElement,"ant-anchor-link-active")}goToClick(V){V.preventDefault(),V.stopPropagation(),this.platform.isBrowser&&this.anchorComp.handleScrollTo(this)}ngOnDestroy(){this.anchorComp.unregisterLink(this)}static#e=this.\u0275fac=function(K){return new(K||Y)(e.Y36(e.SBq),e.Y36($),e.Y36(t.t4),e.Y36(e.Qsj))};static#t=this.\u0275cmp=e.Xpm({type:Y,selectors:[["nz-link"]],contentQueries:function(K,te,ne){if(1&K&&e.Suo(ne,D,5),2&K){let fe;e.iGM(fe=e.CRH())&&(te.nzTemplate=fe.first)}},viewQuery:function(K,te){if(1&K&&e.Gf(_,5),2&K){let ne;e.iGM(ne=e.CRH())&&(te.linkTitle=ne.first)}},hostAttrs:[1,"ant-anchor-link"],inputs:{nzHref:"nzHref",nzTarget:"nzTarget",nzTitle:"nzTitle"},exportAs:["nzLink"],ngContentSelectors:x,decls:4,vars:5,consts:[[1,"ant-anchor-link-title",3,"href","title","target","click"],["linkTitle",""],[4,"ngIf","ngIfElse"]],template:function(K,te){1&K&&(e.F$t(),e.TgZ(0,"a",0,1),e.NdJ("click",function(fe){return te.goToClick(fe)}),e.YNc(2,P,2,1,"span",2),e.qZA(),e.Hsn(3)),2&K&&(e.Q6J("href",te.nzHref,e.LSH)("title",te.titleStr)("target",te.nzTarget),e.xp6(2),e.Q6J("ngIf",te.titleStr)("ngIfElse",te.titleTpl||te.nzTemplate))},dependencies:[i.O5],encapsulation:2,changeDetection:0})}return Y})(),ze=(()=>{class Y{static#e=this.\u0275fac=function(K){return new(K||Y)};static#t=this.\u0275mod=e.oAB({type:Y});static#n=this.\u0275inj=e.cJS({imports:[g.vT,i.ez,v.j,t.ud]})}return Y})()},95717:(nt,I,o)=>{"use strict";o.d(I,{NB:()=>le,Pf:()=>ie,gi:()=>ae,ic:()=>xe});var e=o(49388),n=o(33651),t=o(96814),i=o(65879),l=o(331),C=o(8324),E=o(20824),u=o(97582),z=o(78645),M=o(92438),h=o(47394),v=o(74911),g=o(63019),d=o(32181),p=o(59773),f=o(99397),y=o(5177),T=o(48180),x=o(94664),D=o(27754),_=o(36028),P=o(68484),S=o(60095),A=o(64194);function k(Me,Ye){if(1&Me&&(i.ynx(0),i._uU(1),i.BQk()),2&Me){const q=i.oxw();i.xp6(1),i.Oqu(q.nzLabel)}}const R=[[["nz-auto-option"]]],$=["nz-auto-option"],W=["*"],ze=["panel"],Y=["content"];function G(Me,Ye){}function V(Me,Ye){1&Me&&i.YNc(0,G,0,0,"ng-template")}function K(Me,Ye){1&Me&&i.Hsn(0)}function te(Me,Ye){if(1&Me&&(i.TgZ(0,"nz-auto-option",8),i._uU(1),i.qZA()),2&Me){const q=Ye.$implicit;i.Q6J("nzValue",q)("nzLabel",q&&q.label?q.label:q),i.xp6(1),i.hij(" ",q&&q.label?q.label:q," ")}}function ne(Me,Ye){if(1&Me&&i.YNc(0,te,2,3,"nz-auto-option",7),2&Me){const q=i.oxw(2);i.Q6J("ngForOf",q.nzDataSource)}}function fe(Me,Ye){if(1&Me){const q=i.EpF();i.TgZ(0,"div",0,1),i.NdJ("@slideMotion.done",function(ee){i.CHM(q);const Be=i.oxw();return i.KtG(Be.onAnimationEvent(ee))}),i.TgZ(2,"div",2)(3,"div",3),i.YNc(4,V,1,0,null,4),i.qZA()()(),i.YNc(5,K,1,0,"ng-template",null,5,i.W1O),i.YNc(7,ne,1,1,"ng-template",null,6,i.W1O)}if(2&Me){const q=i.MAs(6),ve=i.MAs(8),ee=i.oxw();i.ekj("ant-select-dropdown-hidden",!ee.showPanel)("ant-select-dropdown-rtl","rtl"===ee.dir),i.Q6J("ngClass",ee.nzOverlayClassName)("ngStyle",ee.nzOverlayStyle)("nzNoAnimation",null==ee.noAnimation?null:ee.noAnimation.nzNoAnimation)("@slideMotion",void 0)("@.disabled",!(null==ee.noAnimation||!ee.noAnimation.nzNoAnimation)),i.xp6(4),i.Q6J("ngTemplateOutlet",ee.nzDataSource?ve:q)}}let re=(()=>{class Me{constructor(){}static#e=this.\u0275fac=function(ve){return new(ve||Me)};static#t=this.\u0275cmp=i.Xpm({type:Me,selectors:[["nz-auto-optgroup"]],inputs:{nzLabel:"nzLabel"},exportAs:["nzAutoOptgroup"],ngContentSelectors:$,decls:3,vars:1,consts:[[1,"ant-select-item","ant-select-item-group"],[4,"nzStringTemplateOutlet"]],template:function(ve,ee){1&ve&&(i.F$t(R),i.TgZ(0,"div",0),i.YNc(1,k,2,1,"ng-container",1),i.qZA(),i.Hsn(2)),2&ve&&(i.xp6(1),i.Q6J("nzStringTemplateOutlet",ee.nzLabel))},dependencies:[C.f],encapsulation:2,changeDetection:0})}return Me})();class be{constructor(Ye,q=!1){this.source=Ye,this.isUserInput=q}}let le=(()=>{class Me{constructor(q,ve,ee,Be){this.ngZone=q,this.changeDetectorRef=ve,this.element=ee,this.nzAutocompleteOptgroupComponent=Be,this.nzDisabled=!1,this.selectionChange=new i.vpe,this.mouseEntered=new i.vpe,this.active=!1,this.selected=!1,this.destroy$=new z.x}ngOnInit(){this.ngZone.runOutsideAngular(()=>{(0,M.R)(this.element.nativeElement,"mouseenter").pipe((0,d.h)(()=>this.mouseEntered.observers.length>0),(0,p.R)(this.destroy$)).subscribe(()=>{this.ngZone.run(()=>this.mouseEntered.emit(this))}),(0,M.R)(this.element.nativeElement,"mousedown").pipe((0,p.R)(this.destroy$)).subscribe(q=>q.preventDefault())})}ngOnDestroy(){this.destroy$.next()}select(q=!0){this.selected=!0,this.changeDetectorRef.markForCheck(),q&&this.emitSelectionChangeEvent()}deselect(){this.selected=!1,this.changeDetectorRef.markForCheck(),this.emitSelectionChangeEvent()}getLabel(){return this.nzLabel||this.nzValue.toString()}setActiveStyles(){this.active||(this.active=!0,this.changeDetectorRef.markForCheck())}setInactiveStyles(){this.active&&(this.active=!1,this.changeDetectorRef.markForCheck())}scrollIntoViewIfNeeded(){(0,D.zT)(this.element.nativeElement)}selectViaInteraction(){this.nzDisabled||(this.selected=!this.selected,this.selected?this.setActiveStyles():this.setInactiveStyles(),this.emitSelectionChangeEvent(!0),this.changeDetectorRef.markForCheck())}emitSelectionChangeEvent(q=!1){this.selectionChange.emit(new be(this,q))}static#e=this.\u0275fac=function(ve){return new(ve||Me)(i.Y36(i.R0b),i.Y36(i.sBO),i.Y36(i.SBq),i.Y36(re,8))};static#t=this.\u0275cmp=i.Xpm({type:Me,selectors:[["nz-auto-option"]],hostAttrs:["role","menuitem",1,"ant-select-item","ant-select-item-option"],hostVars:10,hostBindings:function(ve,ee){1&ve&&i.NdJ("click",function(){return ee.selectViaInteraction()}),2&ve&&(i.uIk("aria-selected",ee.selected.toString())("aria-disabled",ee.nzDisabled.toString()),i.ekj("ant-select-item-option-grouped",ee.nzAutocompleteOptgroupComponent)("ant-select-item-option-selected",ee.selected)("ant-select-item-option-active",ee.active)("ant-select-item-option-disabled",ee.nzDisabled))},inputs:{nzValue:"nzValue",nzLabel:"nzLabel",nzDisabled:"nzDisabled"},outputs:{selectionChange:"selectionChange",mouseEntered:"mouseEntered"},exportAs:["nzAutoOption"],ngContentSelectors:W,decls:2,vars:0,consts:[[1,"ant-select-item-option-content"]],template:function(ve,ee){1&ve&&(i.F$t(),i.TgZ(0,"div",0),i.Hsn(1),i.qZA())},encapsulation:2,changeDetection:0})}return(0,u.gn)([(0,D.yF)()],Me.prototype,"nzDisabled",void 0),Me})();const ce={provide:S.JU,useExisting:(0,i.Gpc)(()=>ie),multi:!0};let ie=(()=>{class Me{get activeOption(){return this.nzAutocomplete&&this.nzAutocomplete.options.length?this.nzAutocomplete.activeItem:null}constructor(q,ve,ee,Be,Re,ct){this.ngZone=q,this.elementRef=ve,this.overlay=ee,this.viewContainerRef=Be,this.nzInputGroupWhitSuffixOrPrefixDirective=Re,this.document=ct,this.onChange=()=>{},this.onTouched=()=>{},this.panelOpen=!1,this.destroy$=new z.x,this.overlayRef=null,this.portal=null,this.previousValue=null}ngAfterViewInit(){this.nzAutocomplete&&this.nzAutocomplete.animationStateChange.pipe((0,p.R)(this.destroy$)).subscribe(q=>{"void"===q.toState&&this.overlayRef&&(this.overlayRef.dispose(),this.overlayRef=null)})}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete(),this.destroyPanel()}writeValue(q){this.ngZone.runOutsideAngular(()=>Promise.resolve(null).then(()=>this.setTriggerValue(q)))}registerOnChange(q){this.onChange=q}registerOnTouched(q){this.onTouched=q}setDisabledState(q){this.elementRef.nativeElement.disabled=q,this.closePanel()}openPanel(){this.previousValue=this.elementRef.nativeElement.value,this.attachOverlay(),this.updateStatus()}closePanel(){this.panelOpen&&(this.nzAutocomplete.isOpen=this.panelOpen=!1,this.overlayRef&&this.overlayRef.hasAttached()&&(this.overlayRef.detach(),this.selectionChangeSubscription.unsubscribe(),this.overlayOutsideClickSubscription.unsubscribe(),this.optionsChangeSubscription.unsubscribe(),this.portal=null))}handleKeydown(q){const ve=q.keyCode,ee=ve===_.LH||ve===_.JH;ve===_.hY&&q.preventDefault(),!this.panelOpen||ve!==_.hY&&ve!==_.Mf?this.panelOpen&&ve===_.K5?this.nzAutocomplete.showPanel&&(q.preventDefault(),this.activeOption?this.activeOption.selectViaInteraction():this.closePanel()):this.panelOpen&&ee&&this.nzAutocomplete.showPanel&&(q.stopPropagation(),q.preventDefault(),ve===_.LH?this.nzAutocomplete.setPreviousItemActive():this.nzAutocomplete.setNextItemActive(),this.activeOption&&this.activeOption.scrollIntoViewIfNeeded(),this.doBackfill()):(this.activeOption&&this.activeOption.getLabel()!==this.previousValue&&this.setTriggerValue(this.previousValue),this.closePanel())}handleInput(q){const ve=q.target,ee=this.document;let Be=ve.value;"number"===ve.type&&(Be=""===Be?null:parseFloat(Be)),this.previousValue!==Be&&(this.previousValue=Be,this.onChange(Be),this.canOpen()&&ee.activeElement===q.target&&this.openPanel())}handleFocus(){this.canOpen()&&this.openPanel()}handleBlur(){this.onTouched()}subscribeOptionsChange(){return this.nzAutocomplete.options.changes.pipe((0,f.b)(()=>this.positionStrategy.reapplyLastPosition()),(0,y.g)(0)).subscribe(()=>{this.resetActiveItem(),this.panelOpen&&this.overlayRef.updatePosition()})}subscribeSelectionChange(){return this.nzAutocomplete.selectionChange.subscribe(q=>{this.setValueAndClose(q)})}subscribeOverlayOutsideClick(){return this.overlayRef.outsidePointerEvents().pipe((0,d.h)(q=>!this.elementRef.nativeElement.contains(q.target))).subscribe(()=>{this.closePanel()})}attachOverlay(){if(!this.nzAutocomplete)throw function Q(){return Error("Attempting to open an undefined instance of `nz-autocomplete`. Make sure that the id passed to the `nzAutocomplete` is correct and that you're attempting to open it after the ngAfterContentInit hook.")}();!this.portal&&this.nzAutocomplete.template&&(this.portal=new P.UE(this.nzAutocomplete.template,this.viewContainerRef)),this.overlayRef||(this.overlayRef=this.overlay.create(this.getOverlayConfig())),this.overlayRef&&!this.overlayRef.hasAttached()&&(this.overlayRef.attach(this.portal),this.selectionChangeSubscription=this.subscribeSelectionChange(),this.optionsChangeSubscription=this.subscribeOptionsChange(),this.overlayOutsideClickSubscription=this.subscribeOverlayOutsideClick(),this.overlayRef.detachments().pipe((0,p.R)(this.destroy$)).subscribe(()=>{this.closePanel()})),this.nzAutocomplete.isOpen=this.panelOpen=!0}updateStatus(){this.overlayRef&&this.overlayRef.updateSize({width:this.nzAutocomplete.nzWidth||this.getHostWidth()}),this.nzAutocomplete.setVisibility(),this.resetActiveItem(),this.activeOption&&this.activeOption.scrollIntoViewIfNeeded()}destroyPanel(){this.overlayRef&&this.closePanel()}getOverlayConfig(){return new n.X_({positionStrategy:this.getOverlayPosition(),disposeOnNavigation:!0,scrollStrategy:this.overlay.scrollStrategies.reposition(),width:this.nzAutocomplete.nzWidth||this.getHostWidth()})}getConnectedElement(){return this.nzInputGroupWhitSuffixOrPrefixDirective?this.nzInputGroupWhitSuffixOrPrefixDirective.elementRef:this.elementRef}getHostWidth(){return this.getConnectedElement().nativeElement.getBoundingClientRect().width}getOverlayPosition(){const q=[new n.tR({originX:"start",originY:"bottom"},{overlayX:"start",overlayY:"top"}),new n.tR({originX:"start",originY:"top"},{overlayX:"start",overlayY:"bottom"})];return this.positionStrategy=this.overlay.position().flexibleConnectedTo(this.getConnectedElement()).withFlexibleDimensions(!1).withPush(!1).withPositions(q).withTransformOriginOn(".ant-select-dropdown"),this.positionStrategy}resetActiveItem(){const q=this.nzAutocomplete.getOptionIndex(this.previousValue);this.nzAutocomplete.clearSelectedOptions(null,!0),-1!==q?(this.nzAutocomplete.setActiveItem(q),this.nzAutocomplete.activeItem.select(!1)):this.nzAutocomplete.setActiveItem(this.nzAutocomplete.nzDefaultActiveFirstOption?0:-1)}setValueAndClose(q){const ve=q.nzValue;this.setTriggerValue(q.getLabel()),this.onChange(ve),this.elementRef.nativeElement.focus(),this.closePanel()}setTriggerValue(q){const ve=this.nzAutocomplete.getOption(q),ee=ve?ve.getLabel():q;this.elementRef.nativeElement.value=ee??"",this.nzAutocomplete.nzBackfill||(this.previousValue=ee)}doBackfill(){this.nzAutocomplete.nzBackfill&&this.nzAutocomplete.activeItem&&this.setTriggerValue(this.nzAutocomplete.activeItem.getLabel())}canOpen(){const q=this.elementRef.nativeElement;return!q.readOnly&&!q.disabled}static#e=this.\u0275fac=function(ve){return new(ve||Me)(i.Y36(i.R0b),i.Y36(i.SBq),i.Y36(n.aV),i.Y36(i.s_b),i.Y36(E.ke,8),i.Y36(t.K0,8))};static#t=this.\u0275dir=i.lG2({type:Me,selectors:[["input","nzAutocomplete",""],["textarea","nzAutocomplete",""]],hostAttrs:["autocomplete","off","aria-autocomplete","list"],hostBindings:function(ve,ee){1&ve&&i.NdJ("focusin",function(){return ee.handleFocus()})("blur",function(){return ee.handleBlur()})("input",function(Re){return ee.handleInput(Re)})("keydown",function(Re){return ee.handleKeydown(Re)})},inputs:{nzAutocomplete:"nzAutocomplete"},exportAs:["nzAutocompleteTrigger"],features:[i._Bn([ce])]})}return Me})(),ae=(()=>{class Me{get options(){return this.nzDataSource?this.fromDataSourceOptions:this.fromContentOptions}constructor(q,ve,ee,Be){this.changeDetectorRef=q,this.ngZone=ve,this.directionality=ee,this.noAnimation=Be,this.nzOverlayClassName="",this.nzOverlayStyle={},this.nzDefaultActiveFirstOption=!0,this.nzBackfill=!1,this.compareWith=(Re,ct)=>Re===ct,this.selectionChange=new i.vpe,this.showPanel=!0,this.isOpen=!1,this.activeItem=null,this.dir="ltr",this.destroy$=new z.x,this.animationStateChange=new i.vpe,this.activeItemIndex=-1,this.selectionChangeSubscription=h.w0.EMPTY,this.optionMouseEnterSubscription=h.w0.EMPTY,this.dataSourceChangeSubscription=h.w0.EMPTY,this.optionSelectionChanges=(0,v.P)(()=>this.options?(0,g.T)(...this.options.map(Re=>Re.selectionChange)):this.ngZone.onStable.asObservable().pipe((0,T.q)(1),(0,x.w)(()=>this.optionSelectionChanges))),this.optionMouseEnter=(0,v.P)(()=>this.options?(0,g.T)(...this.options.map(Re=>Re.mouseEntered)):this.ngZone.onStable.asObservable().pipe((0,T.q)(1),(0,x.w)(()=>this.optionMouseEnter)))}ngOnInit(){this.directionality.change?.pipe((0,p.R)(this.destroy$)).subscribe(q=>{this.dir=q,this.changeDetectorRef.detectChanges()}),this.dir=this.directionality.value}onAnimationEvent(q){this.animationStateChange.emit(q)}ngAfterContentInit(){this.nzDataSource||this.optionsInit()}ngAfterViewInit(){this.nzDataSource&&this.optionsInit()}ngOnDestroy(){this.dataSourceChangeSubscription.unsubscribe(),this.selectionChangeSubscription.unsubscribe(),this.optionMouseEnterSubscription.unsubscribe(),this.dataSourceChangeSubscription=this.selectionChangeSubscription=this.optionMouseEnterSubscription=null,this.destroy$.next(),this.destroy$.complete()}setVisibility(){this.showPanel=!!this.options.length,this.changeDetectorRef.markForCheck()}setActiveItem(q){const ve=this.options.get(q);ve&&!ve.active?(this.activeItem=ve,this.activeItemIndex=q,this.clearSelectedOptions(this.activeItem),this.activeItem.setActiveStyles()):(this.activeItem=null,this.activeItemIndex=-1,this.clearSelectedOptions()),this.changeDetectorRef.markForCheck()}setNextItemActive(){this.setActiveItem(this.activeItemIndex+1<=this.options.length-1?this.activeItemIndex+1:0)}setPreviousItemActive(){this.setActiveItem(this.activeItemIndex-1<0?this.options.length-1:this.activeItemIndex-1)}getOptionIndex(q){return this.options.reduce((ve,ee,Be)=>-1===ve?this.compareWith(q,ee.nzValue)?Be:-1:ve,-1)}getOption(q){return this.options.find(ve=>this.compareWith(q,ve.nzValue))||null}optionsInit(){this.setVisibility(),this.subscribeOptionChanges(),this.dataSourceChangeSubscription=(this.nzDataSource?this.fromDataSourceOptions.changes:this.fromContentOptions.changes).subscribe(ve=>{!ve.dirty&&this.isOpen&&setTimeout(()=>this.setVisibility()),this.subscribeOptionChanges()})}clearSelectedOptions(q,ve=!1){this.options.forEach(ee=>{ee!==q&&(ve&&ee.deselect(),ee.setInactiveStyles())})}subscribeOptionChanges(){this.selectionChangeSubscription.unsubscribe(),this.selectionChangeSubscription=this.optionSelectionChanges.pipe((0,d.h)(q=>q.isUserInput)).subscribe(q=>{q.source.select(),q.source.setActiveStyles(),this.activeItem=q.source,this.activeItemIndex=this.getOptionIndex(this.activeItem.nzValue),this.clearSelectedOptions(q.source,!0),this.selectionChange.emit(q.source)}),this.optionMouseEnterSubscription.unsubscribe(),this.optionMouseEnterSubscription=this.optionMouseEnter.subscribe(q=>{q.setActiveStyles(),this.activeItem=q,this.activeItemIndex=this.getOptionIndex(this.activeItem.nzValue),this.clearSelectedOptions(q)})}static#e=this.\u0275fac=function(ve){return new(ve||Me)(i.Y36(i.sBO),i.Y36(i.R0b),i.Y36(e.Is,8),i.Y36(l.P,9))};static#t=this.\u0275cmp=i.Xpm({type:Me,selectors:[["nz-autocomplete"]],contentQueries:function(ve,ee,Be){if(1&ve&&i.Suo(Be,le,5),2&ve){let Re;i.iGM(Re=i.CRH())&&(ee.fromContentOptions=Re)}},viewQuery:function(ve,ee){if(1&ve&&(i.Gf(i.Rgc,5),i.Gf(ze,5),i.Gf(Y,5),i.Gf(le,5)),2&ve){let Be;i.iGM(Be=i.CRH())&&(ee.template=Be.first),i.iGM(Be=i.CRH())&&(ee.panel=Be.first),i.iGM(Be=i.CRH())&&(ee.content=Be.first),i.iGM(Be=i.CRH())&&(ee.fromDataSourceOptions=Be)}},inputs:{nzWidth:"nzWidth",nzOverlayClassName:"nzOverlayClassName",nzOverlayStyle:"nzOverlayStyle",nzDefaultActiveFirstOption:"nzDefaultActiveFirstOption",nzBackfill:"nzBackfill",compareWith:"compareWith",nzDataSource:"nzDataSource"},outputs:{selectionChange:"selectionChange"},exportAs:["nzAutocomplete"],ngContentSelectors:W,decls:1,vars:0,consts:[[1,"ant-select-dropdown","ant-select-dropdown-placement-bottomLeft",3,"ngClass","ngStyle","nzNoAnimation"],["panel",""],[2,"max-height","256px","overflow-y","auto","overflow-anchor","none"],[2,"display","flex","flex-direction","column"],[4,"ngTemplateOutlet"],["contentTemplate",""],["optionsTemplate",""],[3,"nzValue","nzLabel",4,"ngFor","ngForOf"],[3,"nzValue","nzLabel"]],template:function(ve,ee){1&ve&&(i.F$t(),i.YNc(0,fe,9,10,"ng-template"))},dependencies:[t.mk,t.sg,t.tP,t.PC,l.P,le],encapsulation:2,data:{animation:[A.mF]},changeDetection:0})}return(0,u.gn)([(0,D.yF)()],Me.prototype,"nzDefaultActiveFirstOption",void 0),(0,u.gn)([(0,D.yF)()],Me.prototype,"nzBackfill",void 0),Me})(),xe=(()=>{class Me{static#e=this.\u0275fac=function(ve){return new(ve||Me)};static#t=this.\u0275mod=i.oAB({type:Me});static#n=this.\u0275inj=i.cJS({imports:[e.vT,t.ez,n.U8,C.T,l.g,E.o7]})}return Me})()},96928:(nt,I,o)=>{"use strict";o.d(I,{Dz:()=>p,Rt:()=>y});var e=o(97582),n=o(65879),t=o(83064),i=o(27754),l=o(62831),C=o(96814),E=o(90551),u=o(49388);const z=["textEl"];function M(T,x){if(1&T&&n._UZ(0,"span",3),2&T){const D=n.oxw();n.Q6J("nzType",D.nzIcon)}}function h(T,x){if(1&T){const D=n.EpF();n.TgZ(0,"img",4),n.NdJ("error",function(P){n.CHM(D);const S=n.oxw();return n.KtG(S.imgError(P))}),n.qZA()}if(2&T){const D=n.oxw();n.Q6J("src",D.nzSrc,n.LSH),n.uIk("srcset",D.nzSrcSet)("alt",D.nzAlt)}}function v(T,x){if(1&T&&(n.TgZ(0,"span",5,6),n._uU(2),n.qZA()),2&T){const D=n.oxw();n.xp6(2),n.Oqu(D.nzText)}}let p=(()=>{class T{constructor(D,_,P,S,A){this.nzConfigService=D,this.elementRef=_,this.cdr=P,this.platform=S,this.ngZone=A,this._nzModuleName="avatar",this.nzShape="circle",this.nzSize="default",this.nzGap=4,this.nzError=new n.vpe,this.hasText=!1,this.hasSrc=!0,this.hasIcon=!1,this.classMap={},this.customSize=null,this.el=this.elementRef.nativeElement}imgError(D){this.nzError.emit(D),D.defaultPrevented||(this.hasSrc=!1,this.hasIcon=!1,this.hasText=!1,this.nzIcon?this.hasIcon=!0:this.nzText&&(this.hasText=!0),this.cdr.detectChanges(),this.setSizeStyle(),this.notifyCalc())}ngOnChanges(){this.hasText=!this.nzSrc&&!!this.nzText,this.hasIcon=!this.nzSrc&&!!this.nzIcon,this.hasSrc=!!this.nzSrc,this.setSizeStyle(),this.notifyCalc()}calcStringSize(){if(!this.hasText)return;const D=this.textEl.nativeElement,_=D.offsetWidth,P=this.el.getBoundingClientRect().width,S=2*this.nzGap{setTimeout(()=>{this.calcStringSize()})})}setSizeStyle(){this.customSize="number"==typeof this.nzSize?`${this.nzSize}px`:null,this.cdr.markForCheck()}static#e=this.\u0275fac=function(_){return new(_||T)(n.Y36(t.jY),n.Y36(n.SBq),n.Y36(n.sBO),n.Y36(l.t4),n.Y36(n.R0b))};static#t=this.\u0275cmp=n.Xpm({type:T,selectors:[["nz-avatar"]],viewQuery:function(_,P){if(1&_&&n.Gf(z,5),2&_){let S;n.iGM(S=n.CRH())&&(P.textEl=S.first)}},hostAttrs:[1,"ant-avatar"],hostVars:20,hostBindings:function(_,P){2&_&&(n.Udp("width",P.customSize)("height",P.customSize)("line-height",P.customSize)("font-size",P.hasIcon&&P.customSize?P.nzSize/2:null,"px"),n.ekj("ant-avatar-lg","large"===P.nzSize)("ant-avatar-sm","small"===P.nzSize)("ant-avatar-square","square"===P.nzShape)("ant-avatar-circle","circle"===P.nzShape)("ant-avatar-icon",P.nzIcon)("ant-avatar-image",P.hasSrc))},inputs:{nzShape:"nzShape",nzSize:"nzSize",nzGap:"nzGap",nzText:"nzText",nzSrc:"nzSrc",nzSrcSet:"nzSrcSet",nzAlt:"nzAlt",nzIcon:"nzIcon"},outputs:{nzError:"nzError"},exportAs:["nzAvatar"],features:[n.TTD],decls:3,vars:3,consts:[["nz-icon","",3,"nzType",4,"ngIf"],[3,"src","error",4,"ngIf"],["class","ant-avatar-string",4,"ngIf"],["nz-icon","",3,"nzType"],[3,"src","error"],[1,"ant-avatar-string"],["textEl",""]],template:function(_,P){1&_&&(n.YNc(0,M,1,1,"span",0),n.YNc(1,h,1,3,"img",1),n.YNc(2,v,3,1,"span",2)),2&_&&(n.Q6J("ngIf",P.nzIcon&&P.hasIcon),n.xp6(1),n.Q6J("ngIf",P.nzSrc&&P.hasSrc),n.xp6(1),n.Q6J("ngIf",P.nzText&&P.hasText))},dependencies:[C.O5,E.Ls],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,t.oS)()],T.prototype,"nzShape",void 0),(0,e.gn)([(0,t.oS)()],T.prototype,"nzSize",void 0),(0,e.gn)([(0,t.oS)(),(0,i.Rn)()],T.prototype,"nzGap",void 0),T})(),y=(()=>{class T{static#e=this.\u0275fac=function(_){return new(_||T)};static#t=this.\u0275mod=n.oAB({type:T});static#n=this.\u0275inj=n.cJS({imports:[u.vT,C.ez,E.PV,l.ud]})}return T})()},47532:(nt,I,o)=>{"use strict";o.d(I,{j:()=>S,o:()=>P});var e=o(97582),n=o(62831),t=o(96814),i=o(65879),l=o(92438),C=o(78645),E=o(47394),u=o(59773),z=o(83620),M=o(64194),h=o(83064),v=o(99087),g=o(27754),d=o(49388),p=o(90551);const f=["backTop"];function y(A,k){1&A&&(i.TgZ(0,"div",5)(1,"div",6),i._UZ(2,"span",7),i.qZA()())}function T(A,k){}function x(A,k){if(1&A&&(i.TgZ(0,"div",1,2),i.YNc(2,y,3,0,"ng-template",null,3,i.W1O),i.YNc(4,T,0,0,"ng-template",4),i.qZA()),2&A){const R=i.MAs(3),$=i.oxw();i.ekj("ant-back-top-rtl","rtl"===$.dir),i.Q6J("@fadeMotion",void 0),i.xp6(4),i.Q6J("ngTemplateOutlet",$.nzTemplate||R)}}const _=(0,n.i$)({passive:!0});let P=(()=>{class A{set backTop(R){R&&(this.backTopClickSubscription.unsubscribe(),this.backTopClickSubscription=this.zone.runOutsideAngular(()=>(0,l.R)(R.nativeElement,"click").pipe((0,u.R)(this.destroy$)).subscribe(()=>{this.scrollSrv.scrollTo(this.getTarget(),0,{duration:this.nzDuration}),this.nzClick.observers.length&&this.zone.run(()=>this.nzClick.emit(!0))})))}constructor(R,$,W,ze,Y,G,V,K,te){this.doc=R,this.nzConfigService=$,this.scrollSrv=W,this.platform=ze,this.cd=Y,this.zone=G,this.cdr=V,this.destroy$=K,this.directionality=te,this._nzModuleName="backTop",this.scrollListenerDestroy$=new C.x,this.target=null,this.visible=!1,this.dir="ltr",this.nzVisibilityHeight=400,this.nzDuration=450,this.nzClick=new i.vpe,this.backTopClickSubscription=E.w0.EMPTY,this.dir=this.directionality.value}ngOnInit(){this.registerScrollEvent(),this.directionality.change?.pipe((0,u.R)(this.destroy$)).subscribe(R=>{this.dir=R,this.cdr.detectChanges()}),this.dir=this.directionality.value}getTarget(){return this.target||window}handleScroll(){this.visible!==this.scrollSrv.getScroll(this.getTarget())>this.nzVisibilityHeight&&(this.visible=!this.visible,this.cd.detectChanges())}registerScrollEvent(){this.platform.isBrowser&&(this.scrollListenerDestroy$.next(!0),this.handleScroll(),this.zone.runOutsideAngular(()=>{(0,l.R)(this.getTarget(),"scroll",_).pipe((0,z.b)(50),(0,u.R)(this.scrollListenerDestroy$)).subscribe(()=>this.handleScroll())}))}ngOnDestroy(){this.scrollListenerDestroy$.next(!0),this.scrollListenerDestroy$.complete()}ngOnChanges(R){const{nzTarget:$}=R;$&&(this.target="string"==typeof this.nzTarget?this.doc.querySelector(this.nzTarget):this.nzTarget,this.registerScrollEvent())}static#e=this.\u0275fac=function($){return new($||A)(i.Y36(t.K0),i.Y36(h.jY),i.Y36(v.MF),i.Y36(n.t4),i.Y36(i.sBO),i.Y36(i.R0b),i.Y36(i.sBO),i.Y36(v.kn),i.Y36(d.Is,8))};static#t=this.\u0275cmp=i.Xpm({type:A,selectors:[["nz-back-top"]],viewQuery:function($,W){if(1&$&&i.Gf(f,5),2&$){let ze;i.iGM(ze=i.CRH())&&(W.backTop=ze.first)}},inputs:{nzTemplate:"nzTemplate",nzVisibilityHeight:"nzVisibilityHeight",nzTarget:"nzTarget",nzDuration:"nzDuration"},outputs:{nzClick:"nzClick"},exportAs:["nzBackTop"],features:[i._Bn([v.kn]),i.TTD],decls:1,vars:1,consts:[["class","ant-back-top",3,"ant-back-top-rtl",4,"ngIf"],[1,"ant-back-top"],["backTop",""],["defaultContent",""],[3,"ngTemplateOutlet"],[1,"ant-back-top-content"],[1,"ant-back-top-icon"],["nz-icon","","nzType","vertical-align-top"]],template:function($,W){1&$&&i.YNc(0,x,5,4,"div",0),2&$&&i.Q6J("ngIf",W.visible)},dependencies:[t.O5,t.tP,p.Ls],encapsulation:2,data:{animation:[M.MC]},changeDetection:0})}return(0,e.gn)([(0,h.oS)(),(0,g.Rn)()],A.prototype,"nzVisibilityHeight",void 0),(0,e.gn)([(0,g.Rn)()],A.prototype,"nzDuration",void 0),A})(),S=(()=>{class A{static#e=this.\u0275fac=function($){return new($||A)};static#t=this.\u0275mod=i.oAB({type:A});static#n=this.\u0275inj=i.cJS({imports:[d.vT,t.ez,n.ud,p.PV]})}return A})()},33640:(nt,I,o)=>{"use strict";o.d(I,{mS:()=>ze,x7:()=>$});var e=o(97582),n=o(65879),t=o(78645),i=o(59773),l=o(64194),C=o(83064),E=o(27754),u=o(49388),z=o(331),M=o(96814),h=o(8324),v=o(17131);function g(Y,G){if(1&Y&&(n.TgZ(0,"p",6),n._uU(1),n.qZA()),2&Y){const V=G.$implicit,K=n.oxw(2).index,te=n.oxw(2);n.ekj("current",V===te.countArray[K]),n.xp6(1),n.hij(" ",V," ")}}function d(Y,G){if(1&Y&&(n.ynx(0),n.YNc(1,g,2,3,"p",5),n.BQk()),2&Y){const V=n.oxw(3);n.xp6(1),n.Q6J("ngForOf",V.countSingleArray)}}function p(Y,G){if(1&Y&&(n.TgZ(0,"span",3),n.YNc(1,d,2,1,"ng-container",4),n.qZA()),2&Y){const V=G.index,K=n.oxw(2);n.Udp("transform","translateY("+100*-K.countArray[V]+"%)"),n.Q6J("nzNoAnimation",K.noAnimation),n.xp6(1),n.Q6J("ngIf",!K.nzDot&&void 0!==K.countArray[V])}}function f(Y,G){if(1&Y&&(n.ynx(0),n.YNc(1,p,2,4,"span",2),n.BQk()),2&Y){const V=n.oxw();n.xp6(1),n.Q6J("ngForOf",V.maxNumberArray)}}function y(Y,G){if(1&Y&&n._uU(0),2&Y){const V=n.oxw();n.hij("",V.nzOverflowCount,"+")}}function T(Y,G){if(1&Y&&(n.ynx(0),n._uU(1),n.BQk()),2&Y){const V=n.oxw(2);n.xp6(1),n.Oqu(V.nzText)}}function x(Y,G){if(1&Y&&(n.ynx(0),n._UZ(1,"span",2),n.TgZ(2,"span",3),n.YNc(3,T,2,1,"ng-container",1),n.qZA(),n.BQk()),2&Y){const V=n.oxw();n.xp6(1),n.Gre("ant-badge-status-dot ant-badge-status-",V.nzStatus||V.presetColor,""),n.Udp("background",!V.presetColor&&V.nzColor),n.Q6J("ngStyle",V.nzStyle),n.xp6(2),n.Q6J("nzStringTemplateOutlet",V.nzText)}}function D(Y,G){if(1&Y&&n._UZ(0,"nz-badge-sup",5),2&Y){const V=n.oxw(2);n.Q6J("nzOffset",V.nzOffset)("nzSize",V.nzSize)("nzTitle",V.nzTitle)("nzStyle",V.nzStyle)("nzDot",V.nzDot)("nzOverflowCount",V.nzOverflowCount)("disableAnimation",!!(V.nzStandalone||V.nzStatus||V.nzColor||null!=V.noAnimation&&V.noAnimation.nzNoAnimation))("nzCount",V.nzCount)("noAnimation",!(null==V.noAnimation||!V.noAnimation.nzNoAnimation))}}function _(Y,G){if(1&Y&&(n.ynx(0),n.YNc(1,D,1,9,"nz-badge-sup",4),n.BQk()),2&Y){const V=n.oxw();n.xp6(1),n.Q6J("ngIf",V.showSup)}}const P=["*"],A=["pink","red","yellow","orange","cyan","green","blue","purple","geekblue","magenta","volcano","gold","lime"];let k=(()=>{class Y{constructor(){this.nzStyle=null,this.nzDot=!1,this.nzOverflowCount=99,this.disableAnimation=!1,this.noAnimation=!1,this.nzSize="default",this.maxNumberArray=[],this.countArray=[],this.count=0,this.countSingleArray=[0,1,2,3,4,5,6,7,8,9]}generateMaxNumberArray(){this.maxNumberArray=this.nzOverflowCount.toString().split("")}ngOnInit(){this.generateMaxNumberArray()}ngOnChanges(V){const{nzOverflowCount:K,nzCount:te}=V;te&&"number"==typeof te.currentValue&&(this.count=Math.max(0,te.currentValue),this.countArray=this.count.toString().split("").map(ne=>+ne)),K&&this.generateMaxNumberArray()}static#e=this.\u0275fac=function(K){return new(K||Y)};static#t=this.\u0275cmp=n.Xpm({type:Y,selectors:[["nz-badge-sup"]],hostAttrs:[1,"ant-scroll-number"],hostVars:17,hostBindings:function(K,te){2&K&&(n.uIk("title",null===te.nzTitle?"":te.nzTitle||te.nzCount),n.d8E("@.disabled",te.disableAnimation)("@zoomBadgeMotion",void 0),n.Akn(te.nzStyle),n.Udp("right",te.nzOffset&&te.nzOffset[0]?-te.nzOffset[0]:null,"px")("margin-top",te.nzOffset&&te.nzOffset[1]?te.nzOffset[1]:null,"px"),n.ekj("ant-badge-count",!te.nzDot)("ant-badge-count-sm","small"===te.nzSize)("ant-badge-dot",te.nzDot)("ant-badge-multiple-words",te.countArray.length>=2))},inputs:{nzOffset:"nzOffset",nzTitle:"nzTitle",nzStyle:"nzStyle",nzDot:"nzDot",nzOverflowCount:"nzOverflowCount",disableAnimation:"disableAnimation",nzCount:"nzCount",noAnimation:"noAnimation",nzSize:"nzSize"},exportAs:["nzBadgeSup"],features:[n.TTD],decls:3,vars:2,consts:[[4,"ngIf","ngIfElse"],["overflowTemplate",""],["class","ant-scroll-number-only",3,"nzNoAnimation","transform",4,"ngFor","ngForOf"],[1,"ant-scroll-number-only",3,"nzNoAnimation"],[4,"ngIf"],["class","ant-scroll-number-only-unit",3,"current",4,"ngFor","ngForOf"],[1,"ant-scroll-number-only-unit"]],template:function(K,te){if(1&K&&(n.YNc(0,f,2,1,"ng-container",0),n.YNc(1,y,1,1,"ng-template",null,1,n.W1O)),2&K){const ne=n.MAs(2);n.Q6J("ngIf",te.count<=te.nzOverflowCount)("ngIfElse",ne)}},dependencies:[M.sg,M.O5,z.P],encapsulation:2,data:{animation:[l.Ev]},changeDetection:0})}return Y})(),$=(()=>{class Y{constructor(V,K,te,ne,fe,re){this.nzConfigService=V,this.renderer=K,this.cdr=te,this.elementRef=ne,this.directionality=fe,this.noAnimation=re,this._nzModuleName="badge",this.showSup=!1,this.presetColor=null,this.dir="ltr",this.destroy$=new t.x,this.nzShowZero=!1,this.nzShowDot=!0,this.nzStandalone=!1,this.nzDot=!1,this.nzOverflowCount=99,this.nzColor=void 0,this.nzStyle=null,this.nzText=null,this.nzSize="default"}ngOnInit(){this.directionality.change?.pipe((0,i.R)(this.destroy$)).subscribe(V=>{this.dir=V,this.prepareBadgeForRtl(),this.cdr.detectChanges()}),this.dir=this.directionality.value,this.prepareBadgeForRtl()}ngOnChanges(V){const{nzColor:K,nzShowDot:te,nzDot:ne,nzCount:fe,nzShowZero:re}=V;K&&(this.presetColor=this.nzColor&&-1!==A.indexOf(this.nzColor)?this.nzColor:null),(te||ne||fe||re)&&(this.showSup=this.nzShowDot&&this.nzDot||"number"==typeof this.nzCount&&this.nzCount>0||"number"==typeof this.nzCount&&this.nzCount<=0&&this.nzShowZero)}prepareBadgeForRtl(){this.isRtlLayout?this.renderer.addClass(this.elementRef.nativeElement,"ant-badge-rtl"):this.renderer.removeClass(this.elementRef.nativeElement,"ant-badge-rtl")}get isRtlLayout(){return"rtl"===this.dir}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(K){return new(K||Y)(n.Y36(C.jY),n.Y36(n.Qsj),n.Y36(n.sBO),n.Y36(n.SBq),n.Y36(u.Is,8),n.Y36(z.P,9))};static#t=this.\u0275cmp=n.Xpm({type:Y,selectors:[["nz-badge"]],hostAttrs:[1,"ant-badge"],hostVars:4,hostBindings:function(K,te){2&K&&n.ekj("ant-badge-status",te.nzStatus)("ant-badge-not-a-wrapper",!!(te.nzStandalone||te.nzStatus||te.nzColor))},inputs:{nzShowZero:"nzShowZero",nzShowDot:"nzShowDot",nzStandalone:"nzStandalone",nzDot:"nzDot",nzOverflowCount:"nzOverflowCount",nzColor:"nzColor",nzStyle:"nzStyle",nzText:"nzText",nzTitle:"nzTitle",nzStatus:"nzStatus",nzCount:"nzCount",nzOffset:"nzOffset",nzSize:"nzSize"},exportAs:["nzBadge"],features:[n.TTD],ngContentSelectors:P,decls:3,vars:2,consts:[[4,"ngIf"],[4,"nzStringTemplateOutlet"],[3,"ngStyle"],[1,"ant-badge-status-text"],[3,"nzOffset","nzSize","nzTitle","nzStyle","nzDot","nzOverflowCount","disableAnimation","nzCount","noAnimation",4,"ngIf"],[3,"nzOffset","nzSize","nzTitle","nzStyle","nzDot","nzOverflowCount","disableAnimation","nzCount","noAnimation"]],template:function(K,te){1&K&&(n.F$t(),n.YNc(0,x,4,7,"ng-container",0),n.Hsn(1),n.YNc(2,_,2,1,"ng-container",1)),2&K&&(n.Q6J("ngIf",te.nzStatus||te.nzColor),n.xp6(2),n.Q6J("nzStringTemplateOutlet",te.nzCount))},dependencies:[M.O5,M.PC,h.f,k],encapsulation:2,data:{animation:[l.Ev]},changeDetection:0})}return(0,e.gn)([(0,E.yF)()],Y.prototype,"nzShowZero",void 0),(0,e.gn)([(0,E.yF)()],Y.prototype,"nzShowDot",void 0),(0,e.gn)([(0,E.yF)()],Y.prototype,"nzStandalone",void 0),(0,e.gn)([(0,E.yF)()],Y.prototype,"nzDot",void 0),(0,e.gn)([(0,C.oS)()],Y.prototype,"nzOverflowCount",void 0),(0,e.gn)([(0,C.oS)()],Y.prototype,"nzColor",void 0),Y})(),ze=(()=>{class Y{static#e=this.\u0275fac=function(K){return new(K||Y)};static#t=this.\u0275mod=n.oAB({type:Y});static#n=this.\u0275inj=n.cJS({imports:[u.vT,M.ez,v.Q8,h.T,z.g]})}return Y})()},3626:(nt,I,o)=>{"use strict";o.d(I,{Dg:()=>W,MO:()=>$,lt:()=>ze});var e=o(65879),n=o(96814),t=o(8324),i=o(62787),l=o(90551),C=o(97582),E=o(52787),u=o(78645),z=o(59773),M=o(32181),h=o(27921),v=o(1608),g=o(27754),d=o(49388),p=o(33651),f=o(85448);const y=["*"];function T(Y,G){}function x(Y,G){if(1&Y&&(e.ynx(0),e.TgZ(1,"span",3),e.YNc(2,T,0,0,"ng-template",4),e._UZ(3,"span",5),e.qZA(),e.BQk()),2&Y){const V=e.oxw(),K=e.MAs(2);e.xp6(1),e.Q6J("nzDropdownMenu",V.nzOverlay),e.xp6(1),e.Q6J("ngTemplateOutlet",K)}}function D(Y,G){1&Y&&(e.TgZ(0,"span",6),e.Hsn(1),e.qZA())}function _(Y,G){if(1&Y&&(e.ynx(0),e._uU(1),e.BQk()),2&Y){const V=e.oxw(2);e.xp6(1),e.hij(" ",V.nzBreadCrumbComponent.nzSeparator," ")}}function P(Y,G){if(1&Y&&(e.TgZ(0,"nz-breadcrumb-separator"),e.YNc(1,_,2,1,"ng-container",7),e.qZA()),2&Y){const V=e.oxw();e.xp6(1),e.Q6J("nzStringTemplateOutlet",V.nzBreadCrumbComponent.nzSeparator)}}function S(Y,G){if(1&Y){const V=e.EpF();e.TgZ(0,"nz-breadcrumb-item")(1,"a",2),e.NdJ("click",function(te){const fe=e.CHM(V).$implicit,re=e.oxw(2);return e.KtG(re.navigate(fe.url,te))}),e._uU(2),e.qZA()()}if(2&Y){const V=G.$implicit;e.xp6(1),e.uIk("href",V.url,e.LSH),e.xp6(1),e.Oqu(V.label)}}function A(Y,G){if(1&Y&&(e.ynx(0),e.YNc(1,S,3,2,"nz-breadcrumb-item",1),e.BQk()),2&Y){const V=e.oxw();e.xp6(1),e.Q6J("ngForOf",V.breadcrumbs)}}class k{}let R=(()=>{class Y{static#e=this.\u0275fac=function(K){return new(K||Y)};static#t=this.\u0275cmp=e.Xpm({type:Y,selectors:[["nz-breadcrumb-separator"]],hostAttrs:[1,"ant-breadcrumb-separator"],exportAs:["nzBreadcrumbSeparator"],ngContentSelectors:y,decls:1,vars:0,template:function(K,te){1&K&&(e.F$t(),e.Hsn(0))},encapsulation:2})}return Y})(),$=(()=>{class Y{constructor(V){this.nzBreadCrumbComponent=V}static#e=this.\u0275fac=function(K){return new(K||Y)(e.Y36(k))};static#t=this.\u0275cmp=e.Xpm({type:Y,selectors:[["nz-breadcrumb-item"]],inputs:{nzOverlay:"nzOverlay"},exportAs:["nzBreadcrumbItem"],ngContentSelectors:y,decls:4,vars:3,consts:[[4,"ngIf","ngIfElse"],["noMenuTpl",""],[4,"ngIf"],["nz-dropdown","",1,"ant-breadcrumb-overlay-link",3,"nzDropdownMenu"],[3,"ngTemplateOutlet"],["nz-icon","","nzType","down"],[1,"ant-breadcrumb-link"],[4,"nzStringTemplateOutlet"]],template:function(K,te){if(1&K&&(e.F$t(),e.YNc(0,x,4,2,"ng-container",0),e.YNc(1,D,2,0,"ng-template",null,1,e.W1O),e.YNc(3,P,2,1,"nz-breadcrumb-separator",2)),2&K){const ne=e.MAs(2);e.Q6J("ngIf",!!te.nzOverlay)("ngIfElse",ne),e.xp6(3),e.Q6J("ngIf",te.nzBreadCrumbComponent.nzSeparator)}},dependencies:[n.O5,n.tP,t.f,i.cm,l.Ls,R],encapsulation:2,changeDetection:0})}return Y})(),W=(()=>{class Y{constructor(V,K,te,ne,fe){this.injector=V,this.cdr=K,this.elementRef=te,this.renderer=ne,this.directionality=fe,this.nzAutoGenerate=!1,this.nzSeparator="/",this.nzRouteLabel="breadcrumb",this.nzRouteLabelFn=re=>re,this.breadcrumbs=[],this.dir="ltr",this.destroy$=new u.x}ngOnInit(){this.nzAutoGenerate&&this.registerRouterChange(),this.directionality.change?.pipe((0,z.R)(this.destroy$)).subscribe(V=>{this.dir=V,this.prepareComponentForRtl(),this.cdr.detectChanges()}),this.dir=this.directionality.value,this.prepareComponentForRtl()}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}navigate(V,K){K.preventDefault(),this.injector.get(E.F0).navigateByUrl(V)}registerRouterChange(){try{const V=this.injector.get(E.F0),K=this.injector.get(E.gz);V.events.pipe((0,M.h)(te=>te instanceof E.m2),(0,z.R)(this.destroy$),(0,h.O)(!0)).subscribe(()=>{this.breadcrumbs=this.getBreadcrumbs(K.root),this.cdr.markForCheck()})}catch{throw new Error(`${v.Bq} You should import RouterModule if you want to use 'NzAutoGenerate'.`)}}getBreadcrumbs(V,K="",te=[]){const ne=V.children;if(0===ne.length)return te;for(const fe of ne)if(fe.outlet===E.eC){const re=fe.snapshot.url.map(ce=>ce.path).filter(ce=>ce).join("/"),be=re?`${K}/${re}`:K,le=this.nzRouteLabelFn(fe.snapshot.data[this.nzRouteLabel]);return re&&le&&te.push({label:le,params:fe.snapshot.params,url:be}),this.getBreadcrumbs(fe,be,te)}return te}prepareComponentForRtl(){"rtl"===this.dir?this.renderer.addClass(this.elementRef.nativeElement,"ant-breadcrumb-rtl"):this.renderer.removeClass(this.elementRef.nativeElement,"ant-breadcrumb-rtl")}static#e=this.\u0275fac=function(K){return new(K||Y)(e.Y36(e.zs3),e.Y36(e.sBO),e.Y36(e.SBq),e.Y36(e.Qsj),e.Y36(d.Is,8))};static#t=this.\u0275cmp=e.Xpm({type:Y,selectors:[["nz-breadcrumb"]],hostAttrs:[1,"ant-breadcrumb"],inputs:{nzAutoGenerate:"nzAutoGenerate",nzSeparator:"nzSeparator",nzRouteLabel:"nzRouteLabel",nzRouteLabelFn:"nzRouteLabelFn"},exportAs:["nzBreadcrumb"],features:[e._Bn([{provide:k,useExisting:Y}])],ngContentSelectors:y,decls:2,vars:1,consts:[[4,"ngIf"],[4,"ngFor","ngForOf"],[3,"click"]],template:function(K,te){1&K&&(e.F$t(),e.Hsn(0),e.YNc(1,A,2,1,"ng-container",0)),2&K&&(e.xp6(1),e.Q6J("ngIf",te.nzAutoGenerate&&te.breadcrumbs.length))},dependencies:[n.sg,n.O5,$],encapsulation:2,changeDetection:0})}return(0,C.gn)([(0,g.yF)()],Y.prototype,"nzAutoGenerate",void 0),Y})(),ze=(()=>{class Y{static#e=this.\u0275fac=function(K){return new(K||Y)};static#t=this.\u0275mod=e.oAB({type:Y});static#n=this.\u0275inj=e.cJS({imports:[n.ez,t.T,p.U8,f.e4,i.b1,l.PV,d.vT]})}return Y})()},42840:(nt,I,o)=>{"use strict";o.d(I,{fY:()=>D,ix:()=>x,sL:()=>_});var e=o(97582),n=o(65879),t=o(78645),i=o(92438),l=o(59773),C=o(27921),E=o(32181),u=o(83064),z=o(27754),M=o(90551),h=o(49388),v=o(96814),g=o(70855),d=o(41958);const p=["nz-button",""];function f(P,S){1&P&&n._UZ(0,"span",1)}const y=["*"],T="button";let x=(()=>{class P{insertSpan(A,k){A.forEach(R=>{if("#text"===R.nodeName){const $=k.createElement("span"),W=k.parentNode(R);k.insertBefore(W,$,R),k.appendChild($,R)}})}get iconOnly(){const A=Array.from(this.elementRef?.nativeElement?.childNodes||[]),k=A.every(W=>"#text"!==W.nodeName),R=0==A.filter(W=>!("#comment"===W.nodeName||W?.attributes?.getNamedItem("nz-icon"))).length;return!!this.nzIconDirectiveElement&&R&&k}constructor(A,k,R,$,W,ze){this.ngZone=A,this.elementRef=k,this.cdr=R,this.renderer=$,this.nzConfigService=W,this.directionality=ze,this._nzModuleName=T,this.nzBlock=!1,this.nzGhost=!1,this.nzSearch=!1,this.nzLoading=!1,this.nzDanger=!1,this.disabled=!1,this.tabIndex=null,this.nzType=null,this.nzShape=null,this.nzSize="default",this.dir="ltr",this.destroy$=new t.x,this.loading$=new t.x,this.nzConfigService.getConfigChangeEventForComponent(T).pipe((0,l.R)(this.destroy$)).subscribe(()=>{this.cdr.markForCheck()})}ngOnInit(){this.directionality.change?.pipe((0,l.R)(this.destroy$)).subscribe(A=>{this.dir=A,this.cdr.detectChanges()}),this.dir=this.directionality.value,this.ngZone.runOutsideAngular(()=>{(0,i.R)(this.elementRef.nativeElement,"click",{capture:!0}).pipe((0,l.R)(this.destroy$)).subscribe(A=>{(this.disabled&&"A"===A.target?.tagName||this.nzLoading)&&(A.preventDefault(),A.stopImmediatePropagation())})})}ngOnChanges(A){const{nzLoading:k}=A;k&&this.loading$.next(this.nzLoading)}ngAfterViewInit(){this.insertSpan(this.elementRef.nativeElement.childNodes,this.renderer)}ngAfterContentInit(){this.loading$.pipe((0,C.O)(this.nzLoading),(0,E.h)(()=>!!this.nzIconDirectiveElement),(0,l.R)(this.destroy$)).subscribe(A=>{const k=this.nzIconDirectiveElement.nativeElement;A?this.renderer.setStyle(k,"display","none"):this.renderer.removeStyle(k,"display")})}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(k){return new(k||P)(n.Y36(n.R0b),n.Y36(n.SBq),n.Y36(n.sBO),n.Y36(n.Qsj),n.Y36(u.jY),n.Y36(h.Is,8))};static#t=this.\u0275cmp=n.Xpm({type:P,selectors:[["button","nz-button",""],["a","nz-button",""]],contentQueries:function(k,R,$){if(1&k&&n.Suo($,M.Ls,5,n.SBq),2&k){let W;n.iGM(W=n.CRH())&&(R.nzIconDirectiveElement=W.first)}},hostAttrs:[1,"ant-btn"],hostVars:32,hostBindings:function(k,R){2&k&&(n.uIk("tabindex",R.disabled?-1:null===R.tabIndex?null:R.tabIndex)("disabled",R.disabled||null),n.ekj("ant-btn-primary","primary"===R.nzType)("ant-btn-dashed","dashed"===R.nzType)("ant-btn-link","link"===R.nzType)("ant-btn-text","text"===R.nzType)("ant-btn-circle","circle"===R.nzShape)("ant-btn-round","round"===R.nzShape)("ant-btn-lg","large"===R.nzSize)("ant-btn-sm","small"===R.nzSize)("ant-btn-dangerous",R.nzDanger)("ant-btn-loading",R.nzLoading)("ant-btn-background-ghost",R.nzGhost)("ant-btn-block",R.nzBlock)("ant-input-search-button",R.nzSearch)("ant-btn-rtl","rtl"===R.dir)("ant-btn-icon-only",R.iconOnly))},inputs:{nzBlock:"nzBlock",nzGhost:"nzGhost",nzSearch:"nzSearch",nzLoading:"nzLoading",nzDanger:"nzDanger",disabled:"disabled",tabIndex:"tabIndex",nzType:"nzType",nzShape:"nzShape",nzSize:"nzSize"},exportAs:["nzButton"],features:[n.TTD],attrs:p,ngContentSelectors:y,decls:2,vars:1,consts:[["nz-icon","","nzType","loading",4,"ngIf"],["nz-icon","","nzType","loading"]],template:function(k,R){1&k&&(n.F$t(),n.YNc(0,f,1,0,"span",0),n.Hsn(1)),2&k&&n.Q6J("ngIf",R.nzLoading)},dependencies:[v.O5,M.Ls,g.w],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,z.yF)()],P.prototype,"nzBlock",void 0),(0,e.gn)([(0,z.yF)()],P.prototype,"nzGhost",void 0),(0,e.gn)([(0,z.yF)()],P.prototype,"nzSearch",void 0),(0,e.gn)([(0,z.yF)()],P.prototype,"nzLoading",void 0),(0,e.gn)([(0,z.yF)()],P.prototype,"nzDanger",void 0),(0,e.gn)([(0,z.yF)()],P.prototype,"disabled",void 0),(0,e.gn)([(0,u.oS)()],P.prototype,"nzSize",void 0),P})(),D=(()=>{class P{constructor(A){this.directionality=A,this.nzSize="default",this.dir="ltr",this.destroy$=new t.x}ngOnInit(){this.dir=this.directionality.value,this.directionality.change?.pipe((0,l.R)(this.destroy$)).subscribe(A=>{this.dir=A})}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(k){return new(k||P)(n.Y36(h.Is,8))};static#t=this.\u0275cmp=n.Xpm({type:P,selectors:[["nz-button-group"]],hostAttrs:[1,"ant-btn-group"],hostVars:6,hostBindings:function(k,R){2&k&&n.ekj("ant-btn-group-lg","large"===R.nzSize)("ant-btn-group-sm","small"===R.nzSize)("ant-btn-group-rtl","rtl"===R.dir)},inputs:{nzSize:"nzSize"},exportAs:["nzButtonGroup"],ngContentSelectors:y,decls:1,vars:0,template:function(k,R){1&k&&(n.F$t(),n.Hsn(0))},encapsulation:2,changeDetection:0})}return P})(),_=(()=>{class P{static#e=this.\u0275fac=function(k){return new(k||P)};static#t=this.\u0275mod=n.oAB({type:P});static#n=this.\u0275inj=n.cJS({imports:[h.vT,v.ez,d.vG,M.PV,g.a,g.a,d.vG]})}return P})()},82962:(nt,I,o)=>{"use strict";o.d(I,{bd:()=>le,vh:()=>Q});var e=o(97582),n=o(65879),t=o(27754),i=o(78645),l=o(59773),C=o(83064),E=o(49388),u=o(96814),z=o(8324);function M(ie,ae){1&ie&&n.Hsn(0)}const h=["*"];function v(ie,ae){1&ie&&(n.TgZ(0,"div",4),n._UZ(1,"div",5),n.qZA()),2&ie&&n.Q6J("ngClass",ae.$implicit)}function g(ie,ae){if(1&ie&&(n.TgZ(0,"div",2),n.YNc(1,v,2,1,"div",3),n.qZA()),2&ie){const xe=ae.$implicit;n.xp6(1),n.Q6J("ngForOf",xe)}}function d(ie,ae){if(1&ie&&(n.ynx(0),n._uU(1),n.BQk()),2&ie){const xe=n.oxw(3);n.xp6(1),n.Oqu(xe.nzTitle)}}function p(ie,ae){if(1&ie&&(n.TgZ(0,"div",11),n.YNc(1,d,2,1,"ng-container",12),n.qZA()),2&ie){const xe=n.oxw(2);n.xp6(1),n.Q6J("nzStringTemplateOutlet",xe.nzTitle)}}function f(ie,ae){if(1&ie&&(n.ynx(0),n._uU(1),n.BQk()),2&ie){const xe=n.oxw(3);n.xp6(1),n.Oqu(xe.nzExtra)}}function y(ie,ae){if(1&ie&&(n.TgZ(0,"div",13),n.YNc(1,f,2,1,"ng-container",12),n.qZA()),2&ie){const xe=n.oxw(2);n.xp6(1),n.Q6J("nzStringTemplateOutlet",xe.nzExtra)}}function T(ie,ae){}function x(ie,ae){if(1&ie&&(n.ynx(0),n.YNc(1,T,0,0,"ng-template",14),n.BQk()),2&ie){const xe=n.oxw(2);n.xp6(1),n.Q6J("ngTemplateOutlet",xe.listOfNzCardTabComponent.template)}}function D(ie,ae){if(1&ie&&(n.TgZ(0,"div",6)(1,"div",7),n.YNc(2,p,2,1,"div",8),n.YNc(3,y,2,1,"div",9),n.qZA(),n.YNc(4,x,2,1,"ng-container",10),n.qZA()),2&ie){const xe=n.oxw();n.xp6(2),n.Q6J("ngIf",xe.nzTitle),n.xp6(1),n.Q6J("ngIf",xe.nzExtra),n.xp6(1),n.Q6J("ngIf",xe.listOfNzCardTabComponent)}}function _(ie,ae){}function P(ie,ae){if(1&ie&&(n.TgZ(0,"div",15),n.YNc(1,_,0,0,"ng-template",14),n.qZA()),2&ie){const xe=n.oxw();n.xp6(1),n.Q6J("ngTemplateOutlet",xe.nzCover)}}function S(ie,ae){1&ie&&(n.ynx(0),n.Hsn(1),n.BQk())}function A(ie,ae){1&ie&&n._UZ(0,"nz-card-loading")}function k(ie,ae){}function R(ie,ae){if(1&ie&&(n.TgZ(0,"li")(1,"span"),n.YNc(2,k,0,0,"ng-template",14),n.qZA()()),2&ie){const xe=ae.$implicit,Me=n.oxw(2);n.Udp("width",100/Me.nzActions.length,"%"),n.xp6(2),n.Q6J("ngTemplateOutlet",xe)}}function $(ie,ae){if(1&ie&&(n.TgZ(0,"ul",16),n.YNc(1,R,3,3,"li",17),n.qZA()),2&ie){const xe=n.oxw();n.xp6(1),n.Q6J("ngForOf",xe.nzActions)}}let ne=(()=>{class ie{constructor(){this.nzHoverable=!0}static#e=this.\u0275fac=function(Me){return new(Me||ie)};static#t=this.\u0275dir=n.lG2({type:ie,selectors:[["","nz-card-grid",""]],hostAttrs:[1,"ant-card-grid"],hostVars:2,hostBindings:function(Me,Ye){2&Me&&n.ekj("ant-card-hoverable",Ye.nzHoverable)},inputs:{nzHoverable:"nzHoverable"},exportAs:["nzCardGrid"]})}return(0,e.gn)([(0,t.yF)()],ie.prototype,"nzHoverable",void 0),ie})(),fe=(()=>{class ie{static#e=this.\u0275fac=function(Me){return new(Me||ie)};static#t=this.\u0275cmp=n.Xpm({type:ie,selectors:[["nz-card-tab"]],viewQuery:function(Me,Ye){if(1&Me&&n.Gf(n.Rgc,7),2&Me){let q;n.iGM(q=n.CRH())&&(Ye.template=q.first)}},exportAs:["nzCardTab"],ngContentSelectors:h,decls:1,vars:0,template:function(Me,Ye){1&Me&&(n.F$t(),n.YNc(0,M,1,0,"ng-template"))},encapsulation:2,changeDetection:0})}return ie})(),re=(()=>{class ie{constructor(){this.listOfLoading=[["ant-col-22"],["ant-col-8","ant-col-15"],["ant-col-6","ant-col-18"],["ant-col-13","ant-col-9"],["ant-col-4","ant-col-3","ant-col-16"],["ant-col-8","ant-col-6","ant-col-8"]]}static#e=this.\u0275fac=function(Me){return new(Me||ie)};static#t=this.\u0275cmp=n.Xpm({type:ie,selectors:[["nz-card-loading"]],hostAttrs:[1,"ant-card-loading-content"],exportAs:["nzCardLoading"],decls:2,vars:1,consts:[[1,"ant-card-loading-content"],["class","ant-row","style","margin-left: -4px; margin-right: -4px;",4,"ngFor","ngForOf"],[1,"ant-row",2,"margin-left","-4px","margin-right","-4px"],["style","padding-left: 4px; padding-right: 4px;",3,"ngClass",4,"ngFor","ngForOf"],[2,"padding-left","4px","padding-right","4px",3,"ngClass"],[1,"ant-card-loading-block"]],template:function(Me,Ye){1&Me&&(n.TgZ(0,"div",0),n.YNc(1,g,2,1,"div",1),n.qZA()),2&Me&&(n.xp6(1),n.Q6J("ngForOf",Ye.listOfLoading))},dependencies:[u.mk,u.sg],encapsulation:2,changeDetection:0})}return ie})(),le=(()=>{class ie{constructor(xe,Me,Ye){this.nzConfigService=xe,this.cdr=Me,this.directionality=Ye,this._nzModuleName="card",this.nzBordered=!0,this.nzBorderless=!1,this.nzLoading=!1,this.nzHoverable=!1,this.nzBodyStyle=null,this.nzActions=[],this.nzType=null,this.nzSize="default",this.dir="ltr",this.destroy$=new i.x,this.nzConfigService.getConfigChangeEventForComponent("card").pipe((0,l.R)(this.destroy$)).subscribe(()=>{this.cdr.markForCheck()})}ngOnInit(){this.directionality.change?.pipe((0,l.R)(this.destroy$)).subscribe(xe=>{this.dir=xe,this.cdr.detectChanges()}),this.dir=this.directionality.value}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(Me){return new(Me||ie)(n.Y36(C.jY),n.Y36(n.sBO),n.Y36(E.Is,8))};static#t=this.\u0275cmp=n.Xpm({type:ie,selectors:[["nz-card"]],contentQueries:function(Me,Ye,q){if(1&Me&&(n.Suo(q,fe,5),n.Suo(q,ne,4)),2&Me){let ve;n.iGM(ve=n.CRH())&&(Ye.listOfNzCardTabComponent=ve.first),n.iGM(ve=n.CRH())&&(Ye.listOfNzCardGridDirective=ve)}},hostAttrs:[1,"ant-card"],hostVars:16,hostBindings:function(Me,Ye){2&Me&&n.ekj("ant-card-loading",Ye.nzLoading)("ant-card-bordered",!1===Ye.nzBorderless&&Ye.nzBordered)("ant-card-hoverable",Ye.nzHoverable)("ant-card-small","small"===Ye.nzSize)("ant-card-contain-grid",Ye.listOfNzCardGridDirective&&Ye.listOfNzCardGridDirective.length)("ant-card-type-inner","inner"===Ye.nzType)("ant-card-contain-tabs",!!Ye.listOfNzCardTabComponent)("ant-card-rtl","rtl"===Ye.dir)},inputs:{nzBordered:"nzBordered",nzBorderless:"nzBorderless",nzLoading:"nzLoading",nzHoverable:"nzHoverable",nzBodyStyle:"nzBodyStyle",nzCover:"nzCover",nzActions:"nzActions",nzType:"nzType",nzSize:"nzSize",nzTitle:"nzTitle",nzExtra:"nzExtra"},exportAs:["nzCard"],ngContentSelectors:h,decls:7,vars:6,consts:[["class","ant-card-head",4,"ngIf"],["class","ant-card-cover",4,"ngIf"],[1,"ant-card-body",3,"ngStyle"],[4,"ngIf","ngIfElse"],["loadingTemplate",""],["class","ant-card-actions",4,"ngIf"],[1,"ant-card-head"],[1,"ant-card-head-wrapper"],["class","ant-card-head-title",4,"ngIf"],["class","ant-card-extra",4,"ngIf"],[4,"ngIf"],[1,"ant-card-head-title"],[4,"nzStringTemplateOutlet"],[1,"ant-card-extra"],[3,"ngTemplateOutlet"],[1,"ant-card-cover"],[1,"ant-card-actions"],[3,"width",4,"ngFor","ngForOf"]],template:function(Me,Ye){if(1&Me&&(n.F$t(),n.YNc(0,D,5,3,"div",0),n.YNc(1,P,2,1,"div",1),n.TgZ(2,"div",2),n.YNc(3,S,2,0,"ng-container",3),n.YNc(4,A,1,0,"ng-template",null,4,n.W1O),n.qZA(),n.YNc(6,$,2,1,"ul",5)),2&Me){const q=n.MAs(5);n.Q6J("ngIf",Ye.nzTitle||Ye.nzExtra||Ye.listOfNzCardTabComponent),n.xp6(1),n.Q6J("ngIf",Ye.nzCover),n.xp6(1),n.Q6J("ngStyle",Ye.nzBodyStyle),n.xp6(1),n.Q6J("ngIf",!Ye.nzLoading)("ngIfElse",q),n.xp6(3),n.Q6J("ngIf",Ye.nzActions.length)}},dependencies:[u.sg,u.O5,u.tP,u.PC,z.f,re],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,C.oS)(),(0,t.yF)()],ie.prototype,"nzBordered",void 0),(0,e.gn)([(0,C.oS)(),(0,t.yF)()],ie.prototype,"nzBorderless",void 0),(0,e.gn)([(0,t.yF)()],ie.prototype,"nzLoading",void 0),(0,e.gn)([(0,C.oS)(),(0,t.yF)()],ie.prototype,"nzHoverable",void 0),(0,e.gn)([(0,C.oS)()],ie.prototype,"nzSize",void 0),ie})(),Q=(()=>{class ie{static#e=this.\u0275fac=function(Me){return new(Me||ie)};static#t=this.\u0275mod=n.oAB({type:ie});static#n=this.\u0275inj=n.cJS({imports:[u.ez,z.T,E.vT]})}return ie})()},77456:(nt,I,o)=>{"use strict";o.d(I,{QZ:()=>$,pA:()=>_,vB:()=>W});var e=o(49388),n=o(62831),t=o(96814),i=o(65879),l=o(97582),C=o(36028),E=o(78645),u=o(92438),z=o(59773),M=o(83064),h=o(27754),v=o(99087);const g=["slickList"],d=["slickTrack"];function p(G,V){}const f=function(G){return{$implicit:G}};function y(G,V){if(1&G){const K=i.EpF();i.TgZ(0,"li",9),i.NdJ("click",function(){const fe=i.CHM(K).index,re=i.oxw(2);return i.KtG(re.onLiClick(fe))}),i.YNc(1,p,0,0,"ng-template",10),i.qZA()}if(2&G){const K=V.index,te=i.oxw(2),ne=i.MAs(8);i.ekj("slick-active",K===te.activeIndex),i.xp6(1),i.Q6J("ngTemplateOutlet",te.nzDotRender||ne)("ngTemplateOutletContext",i.VKq(4,f,K))}}function T(G,V){if(1&G&&(i.TgZ(0,"ul",7),i.YNc(1,y,2,6,"li",8),i.qZA()),2&G){const K=i.oxw();i.ekj("slick-dots-top","top"===K.nzDotPosition)("slick-dots-bottom","bottom"===K.nzDotPosition)("slick-dots-left","left"===K.nzDotPosition)("slick-dots-right","right"===K.nzDotPosition),i.xp6(1),i.Q6J("ngForOf",K.carouselContents)}}function x(G,V){if(1&G&&(i.TgZ(0,"button"),i._uU(1),i.qZA()),2&G){const K=V.$implicit;i.xp6(1),i.Oqu(K+1)}}const D=["*"];let _=(()=>{class G{set isActive(K){this._active=K,this.isActive?this.renderer.addClass(this.el,"slick-active"):this.renderer.removeClass(this.el,"slick-active")}get isActive(){return this._active}constructor(K,te){this.renderer=te,this._active=!1,this.el=K.nativeElement}static#e=this.\u0275fac=function(te){return new(te||G)(i.Y36(i.SBq),i.Y36(i.Qsj))};static#t=this.\u0275dir=i.lG2({type:G,selectors:[["","nz-carousel-content",""]],hostAttrs:[1,"slick-slide"],exportAs:["nzCarouselContent"]})}return G})();class P{get maxIndex(){return this.length-1}get firstEl(){return this.contents[0].el}get lastEl(){return this.contents[this.maxIndex].el}constructor(V,K,te,ne,fe){this.cdr=K,this.renderer=te,this.platform=ne,this.options=fe,this.carouselComponent=V}withCarouselContents(V){const K=this.carouselComponent;if(this.slickListEl=K.slickListEl,this.slickTrackEl=K.slickTrackEl,this.contents=V?.toArray()||[],this.length=this.contents.length,this.platform.isBrowser){const te=K.el.getBoundingClientRect();this.unitWidth=te.width,this.unitHeight=te.height}else V?.forEach((te,ne)=>{0===ne?this.renderer.setStyle(te.el,"width","100%"):this.renderer.setStyle(te.el,"display","none")})}dragging(V){}dispose(){}getFromToInBoundary(V,K){const te=this.maxIndex+1;return{from:(V+te)%te,to:(K+te)%te}}}class S extends P{withCarouselContents(V){super.withCarouselContents(V),this.contents&&(this.slickTrackEl.style.width=this.length*this.unitWidth+"px",this.contents.forEach((K,te)=>{this.renderer.setStyle(K.el,"opacity",this.carouselComponent.activeIndex===te?"1":"0"),this.renderer.setStyle(K.el,"position","relative"),this.renderer.setStyle(K.el,"width",`${this.unitWidth}px`),this.renderer.setStyle(K.el,"left",-this.unitWidth*te+"px"),this.renderer.setStyle(K.el,"transition",["opacity 500ms ease 0s","visibility 500ms ease 0s"])}))}switch(V,K){const{to:te}=this.getFromToInBoundary(V,K),ne=new E.x;return this.contents.forEach((fe,re)=>{this.renderer.setStyle(fe.el,"opacity",te===re?"1":"0")}),setTimeout(()=>{ne.next(),ne.complete()},this.carouselComponent.nzTransitionSpeed),ne}dispose(){this.contents.forEach(V=>{this.renderer.setStyle(V.el,"transition",null),this.renderer.setStyle(V.el,"opacity",null),this.renderer.setStyle(V.el,"width",null),this.renderer.setStyle(V.el,"left",null)}),super.dispose()}}class A extends P{get vertical(){return this.carouselComponent.vertical}constructor(V,K,te,ne,fe){super(V,K,te,ne,fe),this.isDragging=!1,this.isTransitioning=!1}dispose(){super.dispose(),this.renderer.setStyle(this.slickTrackEl,"transform",null)}withCarouselContents(V){super.withCarouselContents(V);const te=this.carouselComponent.activeIndex;this.platform.isBrowser&&this.contents.length&&(this.renderer.setStyle(this.slickListEl,"height",`${this.unitHeight}px`),this.vertical?(this.renderer.setStyle(this.slickTrackEl,"width",`${this.unitWidth}px`),this.renderer.setStyle(this.slickTrackEl,"height",this.length*this.unitHeight+"px"),this.renderer.setStyle(this.slickTrackEl,"transform",`translate3d(0, ${-te*this.unitHeight}px, 0)`)):(this.renderer.setStyle(this.slickTrackEl,"height",`${this.unitHeight}px`),this.renderer.setStyle(this.slickTrackEl,"width",this.length*this.unitWidth+"px"),this.renderer.setStyle(this.slickTrackEl,"transform",`translate3d(${-te*this.unitWidth}px, 0, 0)`)),this.contents.forEach(ne=>{this.renderer.setStyle(ne.el,"position","relative"),this.renderer.setStyle(ne.el,"width",`${this.unitWidth}px`),this.renderer.setStyle(ne.el,"height",`${this.unitHeight}px`)}))}switch(V,K){const{to:te}=this.getFromToInBoundary(V,K),ne=new E.x;return this.renderer.setStyle(this.slickTrackEl,"transition",`transform ${this.carouselComponent.nzTransitionSpeed}ms ease`),this.vertical?this.verticalTransform(V,K):this.horizontalTransform(V,K),this.isTransitioning=!0,this.isDragging=!1,setTimeout(()=>{this.renderer.setStyle(this.slickTrackEl,"transition",null),this.contents.forEach(fe=>{this.renderer.setStyle(fe.el,this.vertical?"top":"left",null)}),this.renderer.setStyle(this.slickTrackEl,"transform",this.vertical?`translate3d(0, ${-te*this.unitHeight}px, 0)`:`translate3d(${-te*this.unitWidth}px, 0, 0)`),this.isTransitioning=!1,ne.next(),ne.complete()},this.carouselComponent.nzTransitionSpeed),ne.asObservable()}dragging(V){if(this.isTransitioning)return;const K=this.carouselComponent.activeIndex;this.carouselComponent.vertical?(!this.isDragging&&this.length>2&&(K===this.maxIndex?this.prepareVerticalContext(!0):0===K&&this.prepareVerticalContext(!1)),this.renderer.setStyle(this.slickTrackEl,"transform",`translate3d(0, ${-K*this.unitHeight+V.x}px, 0)`)):(!this.isDragging&&this.length>2&&(K===this.maxIndex?this.prepareHorizontalContext(!0):0===K&&this.prepareHorizontalContext(!1)),this.renderer.setStyle(this.slickTrackEl,"transform",`translate3d(${-K*this.unitWidth+V.x}px, 0, 0)`)),this.isDragging=!0}verticalTransform(V,K){const{from:te,to:ne}=this.getFromToInBoundary(V,K);this.length>2&&K!==ne?(this.prepareVerticalContext(ne2&&K!==ne?(this.prepareHorizontalContext(ne{class G{set nzDotPosition(K){this._dotPosition=K,this.vertical="left"===K||"right"===K}get nzDotPosition(){return this._dotPosition}constructor(K,te,ne,fe,re,be,le,ce,Q,ie){this.nzConfigService=te,this.ngZone=ne,this.renderer=fe,this.cdr=re,this.platform=be,this.resizeService=le,this.nzDragService=ce,this.directionality=Q,this.customStrategies=ie,this._nzModuleName="carousel",this.nzEffect="scrollx",this.nzEnableSwipe=!0,this.nzDots=!0,this.nzAutoPlay=!1,this.nzAutoPlaySpeed=3e3,this.nzTransitionSpeed=500,this.nzLoop=!0,this.nzStrategyOptions=void 0,this._dotPosition="bottom",this.nzBeforeChange=new i.vpe,this.nzAfterChange=new i.vpe,this.activeIndex=0,this.vertical=!1,this.transitionInProgress=null,this.dir="ltr",this.destroy$=new E.x,this.gestureRect=null,this.pointerDelta=null,this.isTransiting=!1,this.isDragging=!1,this.onLiClick=ae=>{this.goTo("rtl"===this.dir?this.carouselContents.length-1-ae:ae)},this.pointerDown=ae=>{!this.isDragging&&!this.isTransiting&&this.nzEnableSwipe&&(this.clearScheduledTransition(),this.gestureRect=this.slickListEl.getBoundingClientRect(),this.nzDragService.requestDraggingSequence(ae).subscribe(xe=>{this.pointerDelta=xe,this.isDragging=!0,this.strategy?.dragging(this.pointerDelta)},()=>{},()=>{if(this.nzEnableSwipe&&this.isDragging){const xe=this.pointerDelta?this.pointerDelta.x:0;Math.abs(xe)>this.gestureRect.width/3&&(this.nzLoop||xe<=0&&this.activeIndex+10&&this.activeIndex>0)?this.goTo(xe>0?this.activeIndex-1:this.activeIndex+1):this.goTo(this.activeIndex),this.gestureRect=null,this.pointerDelta=null}this.isDragging=!1}))},this.nzDotPosition="bottom",this.el=K.nativeElement}ngOnInit(){this.slickListEl=this.slickList.nativeElement,this.slickTrackEl=this.slickTrack.nativeElement,this.dir=this.directionality.value,this.directionality.change.pipe((0,z.R)(this.destroy$)).subscribe(K=>{this.dir=K,this.markContentActive(this.activeIndex),this.cdr.detectChanges()}),this.ngZone.runOutsideAngular(()=>{(0,u.R)(this.slickListEl,"keydown").pipe((0,z.R)(this.destroy$)).subscribe(K=>{const{keyCode:te}=K;te!==C.oh&&te!==C.SV||(K.preventDefault(),this.ngZone.run(()=>{te===C.oh?this.pre():this.next(),this.cdr.markForCheck()}))})})}ngAfterContentInit(){this.markContentActive(0)}ngAfterViewInit(){this.carouselContents.changes.subscribe(()=>{this.markContentActive(0),this.layout()}),this.resizeService.subscribe().pipe((0,z.R)(this.destroy$)).subscribe(()=>{this.layout()}),this.switchStrategy(),this.markContentActive(0),this.layout(),Promise.resolve().then(()=>{this.layout()})}ngOnChanges(K){const{nzEffect:te,nzDotPosition:ne}=K;te&&!te.isFirstChange()&&(this.switchStrategy(),this.markContentActive(0),this.layout()),ne&&!ne.isFirstChange()&&(this.switchStrategy(),this.markContentActive(0),this.layout()),this.nzAutoPlay&&this.nzAutoPlaySpeed?this.scheduleNextTransition():this.clearScheduledTransition()}ngOnDestroy(){this.clearScheduledTransition(),this.strategy&&this.strategy.dispose(),this.destroy$.next(),this.destroy$.complete()}next(){this.goTo(this.activeIndex+1)}pre(){this.goTo(this.activeIndex-1)}goTo(K){if(this.carouselContents&&this.carouselContents.length&&!this.isTransiting&&(this.nzLoop||K>=0&&K{this.scheduleNextTransition(),this.nzAfterChange.emit(fe),this.isTransiting=!1}),this.markContentActive(fe),this.cdr.markForCheck()}}switchStrategy(){this.strategy&&this.strategy.dispose();const K=this.customStrategies?this.customStrategies.find(te=>te.name===this.nzEffect):null;this.strategy=K?new K.strategy(this,this.cdr,this.renderer,this.platform):"scrollx"===this.nzEffect?new A(this,this.cdr,this.renderer,this.platform):new S(this,this.cdr,this.renderer,this.platform)}scheduleNextTransition(){this.clearScheduledTransition(),this.nzAutoPlay&&this.nzAutoPlaySpeed>0&&this.platform.isBrowser&&(this.transitionInProgress=setTimeout(()=>{this.goTo(this.activeIndex+1)},this.nzAutoPlaySpeed))}clearScheduledTransition(){this.transitionInProgress&&(clearTimeout(this.transitionInProgress),this.transitionInProgress=null)}markContentActive(K){this.activeIndex=K,this.carouselContents&&this.carouselContents.forEach((te,ne)=>{te.isActive="rtl"===this.dir?K===this.carouselContents.length-1-ne:K===ne}),this.cdr.markForCheck()}layout(){this.strategy&&this.strategy.withCarouselContents(this.carouselContents)}static#e=this.\u0275fac=function(te){return new(te||G)(i.Y36(i.SBq),i.Y36(M.jY),i.Y36(i.R0b),i.Y36(i.Qsj),i.Y36(i.sBO),i.Y36(n.t4),i.Y36(v.rI),i.Y36(v.Ml),i.Y36(e.Is,8),i.Y36(k,8))};static#t=this.\u0275cmp=i.Xpm({type:G,selectors:[["nz-carousel"]],contentQueries:function(te,ne,fe){if(1&te&&i.Suo(fe,_,4),2&te){let re;i.iGM(re=i.CRH())&&(ne.carouselContents=re)}},viewQuery:function(te,ne){if(1&te&&(i.Gf(g,7),i.Gf(d,7)),2&te){let fe;i.iGM(fe=i.CRH())&&(ne.slickList=fe.first),i.iGM(fe=i.CRH())&&(ne.slickTrack=fe.first)}},hostAttrs:[1,"ant-carousel"],hostVars:4,hostBindings:function(te,ne){2&te&&i.ekj("ant-carousel-vertical",ne.vertical)("ant-carousel-rtl","rtl"===ne.dir)},inputs:{nzDotRender:"nzDotRender",nzEffect:"nzEffect",nzEnableSwipe:"nzEnableSwipe",nzDots:"nzDots",nzAutoPlay:"nzAutoPlay",nzAutoPlaySpeed:"nzAutoPlaySpeed",nzTransitionSpeed:"nzTransitionSpeed",nzLoop:"nzLoop",nzStrategyOptions:"nzStrategyOptions",nzDotPosition:"nzDotPosition"},outputs:{nzBeforeChange:"nzBeforeChange",nzAfterChange:"nzAfterChange"},exportAs:["nzCarousel"],features:[i.TTD],ngContentSelectors:D,decls:9,vars:3,consts:[[1,"slick-initialized","slick-slider"],["tabindex","-1",1,"slick-list",3,"mousedown","touchstart"],["slickList",""],[1,"slick-track"],["slickTrack",""],["class","slick-dots",3,"slick-dots-top","slick-dots-bottom","slick-dots-left","slick-dots-right",4,"ngIf"],["renderDotTemplate",""],[1,"slick-dots"],[3,"slick-active","click",4,"ngFor","ngForOf"],[3,"click"],[3,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(te,ne){1&te&&(i.F$t(),i.TgZ(0,"div",0)(1,"div",1,2),i.NdJ("mousedown",function(re){return ne.pointerDown(re)})("touchstart",function(re){return ne.pointerDown(re)}),i.TgZ(3,"div",3,4),i.Hsn(5),i.qZA()(),i.YNc(6,T,2,9,"ul",5),i.qZA(),i.YNc(7,x,2,1,"ng-template",null,6,i.W1O)),2&te&&(i.ekj("slick-vertical","left"===ne.nzDotPosition||"right"===ne.nzDotPosition),i.xp6(6),i.Q6J("ngIf",ne.nzDots))},dependencies:[t.sg,t.O5,t.tP],encapsulation:2,changeDetection:0})}return(0,l.gn)([(0,M.oS)()],G.prototype,"nzEffect",void 0),(0,l.gn)([(0,M.oS)(),(0,h.yF)()],G.prototype,"nzEnableSwipe",void 0),(0,l.gn)([(0,M.oS)(),(0,h.yF)()],G.prototype,"nzDots",void 0),(0,l.gn)([(0,M.oS)(),(0,h.yF)()],G.prototype,"nzAutoPlay",void 0),(0,l.gn)([(0,M.oS)(),(0,h.Rn)()],G.prototype,"nzAutoPlaySpeed",void 0),(0,l.gn)([(0,h.Rn)()],G.prototype,"nzTransitionSpeed",void 0),(0,l.gn)([(0,M.oS)()],G.prototype,"nzLoop",void 0),(0,l.gn)([(0,M.oS)()],G.prototype,"nzDotPosition",null),G})(),W=(()=>{class G{static#e=this.\u0275fac=function(te){return new(te||G)};static#t=this.\u0275mod=i.oAB({type:G});static#n=this.\u0275inj=i.cJS({imports:[e.vT,t.ez,n.ud]})}return G})()},25923:(nt,I,o)=>{"use strict";o.d(I,{D4:()=>cn,Fs:()=>Wt});var e=o(97582),n=o(36028),t=o(33651),i=o(65879),l=o(60095),C=o(65619),E=o(78645),u=o(7715),z=o(22096),M=o(65592),h=o(92438),v=o(36232),g=o(64716),d=o(93997),p=o(42460),f=o(37398),y=o(59773),T=o(27921),x=o(94664),D=o(64194),_=o(83064),P=o(85448),S=o(99087),A=o(27754),k=o(96814),R=o(8324),$=o(90551),W=o(84267),ze=o(12131),Y=o(49388),G=o(331),V=o(50883),K=o(60804),te=o(20824);const ne=["nz-cascader-option",""];function fe(Vt,st){}const re=function(Vt,st){return{$implicit:Vt,index:st}};function be(Vt,st){if(1&Vt&&(i.ynx(0),i.YNc(1,fe,0,0,"ng-template",3),i.BQk()),2&Vt){const He=i.oxw();i.xp6(1),i.Q6J("ngTemplateOutlet",He.optionTemplate)("ngTemplateOutletContext",i.WLB(2,re,He.option,He.columnIndex))}}function le(Vt,st){if(1&Vt&&(i._UZ(0,"div",4),i.ALo(1,"nzHighlight")),2&Vt){const He=i.oxw();i.Q6J("innerHTML",i.gM2(1,1,He.optionLabel,He.highlightText,"g","ant-cascader-menu-item-keyword"),i.oJD)}}function ce(Vt,st){1&Vt&&i._UZ(0,"span",8)}function Q(Vt,st){if(1&Vt&&(i.ynx(0),i._UZ(1,"span",10),i.BQk()),2&Vt){const He=i.oxw(3);i.xp6(1),i.Q6J("nzType",He.expandIcon)}}function ie(Vt,st){if(1&Vt&&i.YNc(0,Q,2,1,"ng-container",9),2&Vt){const He=i.oxw(2);i.Q6J("nzStringTemplateOutlet",He.expandIcon)}}function ae(Vt,st){if(1&Vt&&(i.TgZ(0,"div",5),i.YNc(1,ce,1,0,"span",6),i.YNc(2,ie,1,1,"ng-template",null,7,i.W1O),i.qZA()),2&Vt){const He=i.MAs(3),et=i.oxw();i.xp6(1),i.Q6J("ngIf",et.option.loading)("ngIfElse",He)}}const xe=["selectContainer"],Me=["input"],Ye=["menu"];function q(Vt,st){if(1&Vt&&(i.ynx(0),i._uU(1),i.BQk()),2&Vt){const He=i.oxw(3);i.xp6(1),i.Oqu(He.labelRenderText)}}function ve(Vt,st){}function ee(Vt,st){if(1&Vt&&i.YNc(0,ve,0,0,"ng-template",16),2&Vt){const He=i.oxw(3);i.Q6J("ngTemplateOutlet",He.nzLabelRender)("ngTemplateOutletContext",He.labelRenderContext)}}function Be(Vt,st){if(1&Vt&&(i.TgZ(0,"span",13),i.YNc(1,q,2,1,"ng-container",14),i.YNc(2,ee,1,2,"ng-template",null,15,i.W1O),i.qZA()),2&Vt){const He=i.MAs(3),et=i.oxw(2);i.Q6J("title",et.labelRenderText),i.xp6(1),i.Q6J("ngIf",!et.isLabelRenderTemplate)("ngIfElse",He)}}function Re(Vt,st){if(1&Vt&&(i.TgZ(0,"span",17),i._uU(1),i.qZA()),2&Vt){const He=i.oxw(2);i.Udp("visibility",He.inputValue?"hidden":"visible"),i.xp6(1),i.Oqu(He.showPlaceholder?He.nzPlaceHolder||(null==He.locale?null:He.locale.placeholder):null)}}function ct(Vt,st){if(1&Vt&&i._UZ(0,"span",22),2&Vt){const He=i.oxw(3);i.ekj("ant-cascader-picker-arrow-expand",He.menuVisible),i.Q6J("nzType",He.nzSuffixIcon)}}function Ae(Vt,st){1&Vt&&i._UZ(0,"span",23)}function Mt(Vt,st){if(1&Vt&&i._UZ(0,"nz-form-item-feedback-icon",24),2&Vt){const He=i.oxw(3);i.Q6J("status",He.status)}}function je(Vt,st){if(1&Vt&&(i.TgZ(0,"span",18),i.YNc(1,ct,1,3,"span",19),i.YNc(2,Ae,1,0,"span",20),i.YNc(3,Mt,1,1,"nz-form-item-feedback-icon",21),i.qZA()),2&Vt){const He=i.oxw(2);i.ekj("ant-select-arrow-loading",He.isLoading),i.xp6(1),i.Q6J("ngIf",!He.isLoading),i.xp6(1),i.Q6J("ngIf",He.isLoading),i.xp6(1),i.Q6J("ngIf",He.hasFeedback&&!!He.status)}}function ot(Vt,st){if(1&Vt){const He=i.EpF();i.TgZ(0,"span",25)(1,"span",26),i.NdJ("click",function(It){i.CHM(He);const Ot=i.oxw(2);return i.KtG(Ot.clearSelection(It))}),i.qZA()()}}function mt(Vt,st){if(1&Vt){const He=i.EpF();i.ynx(0),i.TgZ(1,"div",4,5)(3,"span",6)(4,"input",7,8),i.NdJ("ngModelChange",function(It){i.CHM(He);const Ot=i.oxw();return i.KtG(Ot.inputValue=It)})("blur",function(){i.CHM(He);const It=i.oxw();return i.KtG(It.handleInputBlur())})("focus",function(){i.CHM(He);const It=i.oxw();return i.KtG(It.handleInputFocus())}),i.qZA()(),i.YNc(6,Be,4,3,"span",9),i.YNc(7,Re,2,3,"span",10),i.qZA(),i.YNc(8,je,4,5,"span",11),i.YNc(9,ot,2,0,"span",12),i.BQk()}if(2&Vt){const He=i.oxw();i.xp6(4),i.Udp("opacity",He.nzShowSearch?"":"0"),i.Q6J("readonly",!He.nzShowSearch)("disabled",He.nzDisabled)("ngModel",He.inputValue),i.uIk("autoComplete","off")("expanded",He.menuVisible)("autofocus",He.nzAutoFocus?"autofocus":null),i.xp6(2),i.Q6J("ngIf",He.showLabelRender),i.xp6(1),i.Q6J("ngIf",!He.showLabelRender),i.xp6(1),i.Q6J("ngIf",He.nzShowArrow),i.xp6(1),i.Q6J("ngIf",He.clearIconVisible)}}function we(Vt,st){if(1&Vt&&(i.TgZ(0,"ul",32)(1,"li",33),i._UZ(2,"nz-embed-empty",34),i.qZA()()),2&Vt){const He=i.oxw(2);i.Udp("width",He.dropdownWidthStyle)("height",He.dropdownHeightStyle),i.xp6(2),i.Q6J("nzComponentName","cascader")("specificContent",He.nzNotFoundContent)}}function de(Vt,st){if(1&Vt){const He=i.EpF();i.TgZ(0,"li",38),i.NdJ("mouseenter",function(It){const xt=i.CHM(He).$implicit,Qe=i.oxw().index,ke=i.oxw(3);return i.KtG(ke.onOptionMouseEnter(xt,Qe,It))})("mouseleave",function(It){const xt=i.CHM(He).$implicit,Qe=i.oxw().index,ke=i.oxw(3);return i.KtG(ke.onOptionMouseLeave(xt,Qe,It))})("click",function(It){const xt=i.CHM(He).$implicit,Qe=i.oxw().index,ke=i.oxw(3);return i.KtG(ke.onOptionClick(xt,Qe,It))}),i.qZA()}if(2&Vt){const He=st.$implicit,et=i.oxw().index,It=i.oxw(3);i.Q6J("expandIcon",It.nzExpandIcon)("columnIndex",et)("nzLabelProperty",It.nzLabelProperty)("optionTemplate",It.nzOptionRender)("activated",It.isOptionActivated(He,et))("highlightText",It.inSearchingMode?It.inputValue:"")("option",He)("dir",It.dir)}}function U(Vt,st){if(1&Vt&&(i.TgZ(0,"ul",36),i.YNc(1,de,1,8,"li",37),i.qZA()),2&Vt){const He=st.$implicit,et=i.oxw(3);i.Udp("height",et.dropdownHeightStyle)("width",et.dropdownWidthStyle),i.Q6J("ngClass",et.menuColumnCls),i.xp6(1),i.Q6J("ngForOf",He)}}function B(Vt,st){if(1&Vt&&i.YNc(0,U,2,6,"ul",35),2&Vt){const He=i.oxw(2);i.Q6J("ngForOf",He.cascaderService.columns)}}function Ee(Vt,st){if(1&Vt){const He=i.EpF();i.TgZ(0,"div",27),i.NdJ("mouseenter",function(){i.CHM(He);const It=i.oxw();return i.KtG(It.onTriggerMouseEnter())})("mouseleave",function(It){i.CHM(He);const Ot=i.oxw();return i.KtG(Ot.onTriggerMouseLeave(It))}),i.TgZ(1,"div",28,29),i.YNc(3,we,3,6,"ul",30),i.YNc(4,B,1,1,"ng-template",null,31,i.W1O),i.qZA()()}if(2&Vt){const He=i.MAs(5),et=i.oxw();i.ekj("ant-cascader-dropdown-rtl","rtl"===et.dir),i.Q6J("@slideMotion","enter")("@.disabled",!(null==et.noAnimation||!et.noAnimation.nzNoAnimation))("nzNoAnimation",null==et.noAnimation?null:et.noAnimation.nzNoAnimation),i.xp6(1),i.ekj("ant-cascader-rtl","rtl"===et.dir)("ant-cascader-menus-hidden",!et.menuVisible)("ant-cascader-menu-empty",et.shouldShowEmpty),i.Q6J("ngClass",et.menuCls)("ngStyle",et.nzMenuStyle),i.xp6(2),i.Q6J("ngIf",et.shouldShowEmpty)("ngIfElse",He)}}const Ie=["*"];function Ne(Vt){return"boolean"!=typeof Vt}let Lt=(()=>{class Vt{constructor(He,et){this.cdr=He,this.optionTemplate=null,this.activated=!1,this.nzLabelProperty="label",this.expandIcon="",this.dir="ltr",this.nativeElement=et.nativeElement}ngOnInit(){""===this.expandIcon&&"rtl"===this.dir?this.expandIcon="left":""===this.expandIcon&&(this.expandIcon="right")}get optionLabel(){return this.option[this.nzLabelProperty]}markForCheck(){this.cdr.markForCheck()}static#e=this.\u0275fac=function(et){return new(et||Vt)(i.Y36(i.sBO),i.Y36(i.SBq))};static#t=this.\u0275cmp=i.Xpm({type:Vt,selectors:[["","nz-cascader-option",""]],hostAttrs:[1,"ant-cascader-menu-item","ant-cascader-menu-item-expanded"],hostVars:7,hostBindings:function(et,It){2&et&&(i.uIk("title",It.option.title||It.optionLabel),i.ekj("ant-cascader-menu-item-active",It.activated)("ant-cascader-menu-item-expand",!It.option.isLeaf)("ant-cascader-menu-item-disabled",It.option.disabled))},inputs:{optionTemplate:"optionTemplate",option:"option",activated:"activated",highlightText:"highlightText",nzLabelProperty:"nzLabelProperty",columnIndex:"columnIndex",expandIcon:"expandIcon",dir:"dir"},exportAs:["nzCascaderOption"],attrs:ne,decls:4,vars:3,consts:[[4,"ngIf","ngIfElse"],["defaultOptionTemplate",""],["class","ant-cascader-menu-item-expand-icon",4,"ngIf"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"ant-cascader-menu-item-content",3,"innerHTML"],[1,"ant-cascader-menu-item-expand-icon"],["nz-icon","","nzType","loading",4,"ngIf","ngIfElse"],["icon",""],["nz-icon","","nzType","loading"],[4,"nzStringTemplateOutlet"],["nz-icon","",3,"nzType"]],template:function(et,It){if(1&et&&(i.YNc(0,be,2,5,"ng-container",0),i.YNc(1,le,2,6,"ng-template",null,1,i.W1O),i.YNc(3,ae,4,2,"div",2)),2&et){const Ot=i.MAs(2);i.Q6J("ngIf",It.optionTemplate)("ngIfElse",Ot),i.xp6(3),i.Q6J("ngIf",!It.option.isLeaf||(null==It.option.children?null:It.option.children.length)||It.option.loading)}},dependencies:[k.O5,k.tP,R.f,$.Ls,W.U],encapsulation:2,changeDetection:0})}return Vt})(),Ut=(()=>{class Vt{constructor(){this.activatedOptions=[],this.columns=[],this.inSearchingMode=!1,this.selectedOptions=[],this.values=[],this.$loading=new C.X(!1),this.$redraw=new E.x,this.$optionSelected=new E.x,this.$quitSearching=new E.x,this.columnsSnapshot=[[]],this.activatedOptionsSnapshot=[]}get nzOptions(){return this.columns[0]}ngOnDestroy(){this.$redraw.complete(),this.$quitSearching.complete(),this.$optionSelected.complete(),this.$loading.complete()}syncOptions(He=!1){const et=this.values,It=et&&et.length,Ot=et.length-1,xt=Qe=>{const ke=()=>{const pe=et[Qe];if(!(0,A.DX)(pe))return void this.$redraw.next();const qe=this.findOptionWithValue(Qe,et[Qe])||("object"==typeof pe?pe:{[`${this.cascaderComponent.nzValueProperty}`]:pe,[`${this.cascaderComponent.nzLabelProperty}`]:pe});this.setOptionActivated(qe,Qe,!1,!1),Qe{this.$quitSearching.next(),this.$redraw.next(),this.inSearchingMode=!1,this.columns=[...this.columnsSnapshot],this.activatedOptions=[...this.selectedOptions]},200)}prepareSearchOptions(He){const et=[],It=[],xt=this.cascaderComponent.nzShowSearch,Qe=Ne(xt)&&xt.filter?xt.filter:(ge,Ze)=>Ze.some($e=>{const Ue=this.getOptionLabel($e);return!!Ue&&-1!==Ue.indexOf(ge)}),ke=Ne(xt)&&xt.sorter?xt.sorter:null,pe=(ge,Ze=!1)=>{It.push(ge);const $e=Array.from(It);if(Qe(He,$e)){const wt={disabled:Ze||ge.disabled,isLeaf:!0,path:$e,[this.cascaderComponent.nzLabelProperty]:$e.map(De=>this.getOptionLabel(De)).join(" / ")};et.push(wt)}It.pop()},qe=(ge,Ze=!1)=>{const $e=Ze||ge.disabled;It.push(ge),ge.children.forEach(Ue=>{Ue.parent||(Ue.parent=ge),Ue.isLeaf||qe(Ue,$e),(Ue.isLeaf||!Ue.children||!Ue.children.length)&&pe(Ue,$e)}),It.pop()};this.columnsSnapshot.length?(this.columnsSnapshot[0].forEach(ge=>function pt(Vt){return Vt.isLeaf||!Vt.children||!Vt.children.length}(ge)?pe(ge):qe(ge)),ke&&et.sort((ge,Ze)=>ke(ge.path,Ze.path,He)),this.columns=[et],this.$redraw.next()):this.columns=[[]]}toggleSearchingMode(He){this.inSearchingMode=He,He?(this.activatedOptionsSnapshot=[...this.activatedOptions],this.activatedOptions=[],this.selectedOptions=[],this.$redraw.next()):(this.activatedOptions=[...this.activatedOptionsSnapshot],this.selectedOptions=[...this.activatedOptions],this.columns=[...this.columnsSnapshot],this.syncOptions(),this.$redraw.next())}clear(){this.values=[],this.selectedOptions=[],this.activatedOptions=[],this.dropBehindColumns(0),this.$redraw.next(),this.$optionSelected.next(null)}getOptionLabel(He){return He[this.cascaderComponent.nzLabelProperty||"label"]}getOptionValue(He){return He[this.cascaderComponent.nzValueProperty||"value"]}setColumnData(He,et,It){(0,A.cO)(this.columns[et],He)||(He.forEach(xt=>xt.parent=It),this.columns[et]=He,this.dropBehindColumns(et))}trackAncestorActivatedOptions(He){for(let et=He-1;et>=0;et--)this.activatedOptions[et]||(this.activatedOptions[et]=this.activatedOptions[et+1].parent)}dropBehindActivatedOptions(He){this.activatedOptions=this.activatedOptions.splice(0,He+1)}dropBehindColumns(He){He{He.loading=!1,this.$loading.next(!1),this.$redraw.next()})).subscribe({next:()=>{He.children&&this.setColumnData(He.children,et+1,He),It?.()},error:()=>{He.isLeaf=!0,Ot?.()}}))}isLoaded(He){return this.columns[He]&&this.columns[He].length>0}findOptionWithValue(He,et){const It=this.columns[He];if(It){const Ot="object"==typeof et?this.getOptionValue(et):et;return It.find(xt=>Ot===this.getOptionValue(xt))}return null}prepareEmitValue(){this.values=this.selectedOptions.map(He=>this.getOptionValue(He))}static#e=this.\u0275fac=function(et){return new(et||Vt)};static#t=this.\u0275prov=i.Yz7({token:Vt,factory:Vt.\u0275fac})}return Vt})();const qt="cascader",en=Vt=>Vt.join(" / ");let cn=(()=>{class Vt{set input(He){this.input$.next(He)}get input(){return this.input$.getValue()}get nzOptions(){return this.cascaderService.nzOptions}set nzOptions(He){this.cascaderService.withOptions(He)}get inSearchingMode(){return this.cascaderService.inSearchingMode}set inputValue(He){this.inputString=He,this.toggleSearchingMode(!!He)}get inputValue(){return this.inputString}get menuCls(){return{[`${this.nzMenuClassName}`]:!!this.nzMenuClassName}}get menuColumnCls(){return{[`${this.nzColumnClassName}`]:!!this.nzColumnClassName}}get hasInput(){return!!this.inputValue}get hasValue(){return this.cascaderService.values&&this.cascaderService.values.length>0}get showLabelRender(){return this.hasValue}get showPlaceholder(){return!(this.hasInput||this.hasValue)}get clearIconVisible(){return this.nzAllowClear&&!this.nzDisabled&&(this.hasValue||this.hasInput)}get isLabelRenderTemplate(){return!!this.nzLabelRender}constructor(He,et,It,Ot,xt,Qe,ke,pe,qe,ge,Ze,$e){this.cascaderService=He,this.nzConfigService=et,this.ngZone=It,this.cdr=Ot,this.i18nService=xt,this.destroy$=Qe,this.elementRef=ke,this.renderer=pe,this.directionality=qe,this.noAnimation=ge,this.nzFormStatusService=Ze,this.nzFormNoStatusService=$e,this._nzModuleName=qt,this.input$=new C.X(void 0),this.nzOptionRender=null,this.nzShowInput=!0,this.nzShowArrow=!0,this.nzAllowClear=!0,this.nzAutoFocus=!1,this.nzChangeOnSelect=!1,this.nzDisabled=!1,this.nzExpandTrigger="click",this.nzValueProperty="value",this.nzLabelRender=null,this.nzLabelProperty="label",this.nzSize="default",this.nzBackdrop=!1,this.nzShowSearch=!1,this.nzPlaceHolder="",this.nzMenuStyle=null,this.nzMouseEnterDelay=150,this.nzMouseLeaveDelay=150,this.nzStatus="",this.nzTriggerAction=["click"],this.nzSuffixIcon="down",this.nzExpandIcon="",this.nzVisibleChange=new i.vpe,this.nzSelectionChange=new i.vpe,this.nzSelect=new i.vpe,this.nzClear=new i.vpe,this.prefixCls="ant-select",this.statusCls={},this.status="",this.hasFeedback=!1,this.shouldShowEmpty=!1,this.menuVisible=!1,this.isLoading=!1,this.labelRenderContext={},this.onChange=Function.prototype,this.onTouched=Function.prototype,this.positions=[...P.n$],this.dropdownHeightStyle="",this.isFocused=!1,this.dir="ltr",this.inputString="",this.isOpening=!1,this.delayMenuTimer=null,this.delaySelectTimer=null,this.isNzDisableFirstChange=!0,this.el=ke.nativeElement,this.cascaderService.withComponent(this),this.renderer.addClass(this.elementRef.nativeElement,"ant-select"),this.renderer.addClass(this.elementRef.nativeElement,"ant-cascader")}ngOnInit(){this.nzFormStatusService?.formStatusChanges.pipe((0,d.x)((et,It)=>et.status===It.status&&et.hasFeedback===It.hasFeedback),(0,p.M)(this.nzFormNoStatusService?this.nzFormNoStatusService.noFormStatus:(0,z.of)(!1)),(0,f.U)(([{status:et,hasFeedback:It},Ot])=>({status:Ot?"":et,hasFeedback:It})),(0,y.R)(this.destroy$)).subscribe(({status:et,hasFeedback:It})=>{this.setStatusStyles(et,It)});const He=this.cascaderService;He.$redraw.pipe((0,y.R)(this.destroy$)).subscribe(()=>{this.checkChildren(),this.setDisplayLabel(),this.cdr.detectChanges(),this.reposition(),this.setDropdownStyles()}),He.$loading.pipe((0,y.R)(this.destroy$)).subscribe(et=>{this.isLoading=et}),He.$optionSelected.pipe((0,y.R)(this.destroy$)).subscribe(et=>{if(et){const{option:It,index:Ot}=et;(It.isLeaf||this.nzChangeOnSelect&&"hover"===this.nzExpandTrigger)&&this.delaySetMenuVisible(!1),this.onChange(this.cascaderService.values),this.nzSelectionChange.emit(this.cascaderService.selectedOptions),this.nzSelect.emit({option:It,index:Ot}),this.cdr.markForCheck()}else this.onChange([]),this.nzSelect.emit(null),this.nzSelectionChange.emit([])}),He.$quitSearching.pipe((0,y.R)(this.destroy$)).subscribe(()=>{this.inputString="",this.dropdownWidthStyle=""}),this.i18nService.localeChange.pipe((0,T.O)(),(0,y.R)(this.destroy$)).subscribe(()=>{this.setLocale()}),this.nzConfigService.getConfigChangeEventForComponent(qt).pipe((0,y.R)(this.destroy$)).subscribe(()=>{this.cdr.markForCheck()}),this.dir=this.directionality.value,this.directionality.change.pipe((0,y.R)(this.destroy$)).subscribe(()=>{this.dir=this.directionality.value,He.$redraw.next()}),this.setupChangeListener(),this.setupKeydownListener()}ngOnChanges(He){const{nzStatus:et}=He;et&&this.setStatusStyles(this.nzStatus,this.hasFeedback)}ngOnDestroy(){this.clearDelayMenuTimer(),this.clearDelaySelectTimer()}registerOnChange(He){this.onChange=He}registerOnTouched(He){this.onTouched=He}writeValue(He){this.cascaderService.values=(0,A.qo)(He),this.cascaderService.syncOptions(!0)}delaySetMenuVisible(He,et=100,It=!1){this.clearDelayMenuTimer(),et?(He&&It&&(this.isOpening=!0),this.delayMenuTimer=setTimeout(()=>{this.setMenuVisible(He),this.cdr.detectChanges(),this.clearDelayMenuTimer(),He&&setTimeout(()=>{this.isOpening=!1},100)},et)):this.setMenuVisible(He)}setMenuVisible(He){this.nzDisabled||this.menuVisible===He||(He&&(this.cascaderService.syncOptions(),this.scrollToActivatedOptions()),He||(this.inputValue=""),this.menuVisible=He,this.nzVisibleChange.emit(He),this.cdr.detectChanges())}clearDelayMenuTimer(){this.delayMenuTimer&&(clearTimeout(this.delayMenuTimer),this.delayMenuTimer=null)}clearSelection(He){He&&(He.preventDefault(),He.stopPropagation()),this.labelRenderText="",this.labelRenderContext={},this.inputValue="",this.setMenuVisible(!1),this.cascaderService.clear(),this.nzClear.emit()}getSubmitValue(){return this.cascaderService.selectedOptions.map(He=>this.cascaderService.getOptionValue(He))}focus(){this.isFocused||((this.input?.nativeElement||this.el).focus(),this.isFocused=!0)}blur(){this.isFocused&&((this.input?.nativeElement||this.el).blur(),this.isFocused=!1)}handleInputBlur(){this.menuVisible?this.focus():this.blur()}handleInputFocus(){this.focus()}onTriggerClick(){this.nzDisabled||(this.nzShowSearch&&this.focus(),this.isActionTrigger("click")&&this.delaySetMenuVisible(!this.menuVisible,100),this.onTouched())}onTriggerMouseEnter(){this.nzDisabled||!this.isActionTrigger("hover")||this.delaySetMenuVisible(!0,this.nzMouseEnterDelay,!0)}onTriggerMouseLeave(He){if(this.nzDisabled||!this.menuVisible||this.isOpening||!this.isActionTrigger("hover"))return void He.preventDefault();const et=He.relatedTarget,Ot=this.menu&&this.menu.nativeElement;this.el.contains(et)||Ot&&Ot.contains(et)||this.delaySetMenuVisible(!1,this.nzMouseLeaveDelay)}onOptionMouseEnter(He,et,It){It.preventDefault(),"hover"===this.nzExpandTrigger&&(He.isLeaf?this.cascaderService.setOptionDeactivatedSinceColumn(et):this.delaySetOptionActivated(He,et,!1))}onOptionMouseLeave(He,et,It){It.preventDefault(),"hover"===this.nzExpandTrigger&&!He.isLeaf&&this.clearDelaySelectTimer()}onOptionClick(He,et,It){It&&It.preventDefault(),(!He||!He.disabled)&&(this.el.focus(),this.inSearchingMode?this.cascaderService.setSearchOptionSelected(He):this.cascaderService.setOptionActivated(He,et,!0))}onClickOutside(He){this.el.contains(He.target)||this.closeMenu()}isActionTrigger(He){return"string"==typeof this.nzTriggerAction?this.nzTriggerAction===He:-1!==this.nzTriggerAction.indexOf(He)}onEnter(){const He=Math.max(this.cascaderService.activatedOptions.length-1,0),et=this.cascaderService.activatedOptions[He];et&&!et.disabled&&(this.inSearchingMode?this.cascaderService.setSearchOptionSelected(et):this.cascaderService.setOptionActivated(et,He,!0))}moveUpOrDown(He){const et=Math.max(this.cascaderService.activatedOptions.length-1,0),It=this.cascaderService.activatedOptions[et],Ot=this.cascaderService.columns[et]||[],xt=Ot.length;let Qe=-1;for(Qe=It?Ot.indexOf(It):He?xt:-1;Qe=He?Qe-1:Qe+1,!(Qe<0||Qe>=xt);){const ke=Ot[Qe];if(ke&&!ke.disabled){this.cascaderService.setOptionActivated(ke,et);break}}}moveLeft(){const He=this.cascaderService.activatedOptions;He.length&&He.pop()}moveRight(){const He=this.cascaderService.activatedOptions.length,et=this.cascaderService.columns[He];if(et&&et.length){const It=et.find(Ot=>!Ot.disabled);It&&this.cascaderService.setOptionActivated(It,He)}}clearDelaySelectTimer(){this.delaySelectTimer&&(clearTimeout(this.delaySelectTimer),this.delaySelectTimer=null)}delaySetOptionActivated(He,et,It){this.clearDelaySelectTimer(),this.delaySelectTimer=setTimeout(()=>{this.cascaderService.setOptionActivated(He,et,It),this.delaySelectTimer=null},150)}toggleSearchingMode(He){this.inSearchingMode!==He&&this.cascaderService.toggleSearchingMode(He),this.inSearchingMode&&this.cascaderService.prepareSearchOptions(this.inputValue)}isOptionActivated(He,et){return this.cascaderService.activatedOptions[et]===He}setDisabledState(He){this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||He,this.isNzDisableFirstChange=!1,this.nzDisabled&&this.closeMenu()}closeMenu(){this.blur(),this.clearDelayMenuTimer(),this.setMenuVisible(!1)}reposition(){this.overlay&&this.overlay.overlayRef&&this.menuVisible&&Promise.resolve().then(()=>{this.overlay.overlayRef.updatePosition(),this.cdr.markForCheck()})}checkChildren(){this.cascaderItems&&this.cascaderItems.forEach(He=>He.markForCheck())}setDisplayLabel(){const He=this.cascaderService.selectedOptions,et=He.map(It=>this.cascaderService.getOptionLabel(It));this.isLabelRenderTemplate&&(this.labelRenderContext={labels:et,selectedOptions:He}),this.labelRenderText=en.call(this,et)}setDropdownStyles(){const He=this.cascaderService.columns[0];this.shouldShowEmpty=this.inSearchingMode&&(!He||!He.length)||!(this.nzOptions&&this.nzOptions.length)&&!this.nzLoadData,this.dropdownHeightStyle=this.shouldShowEmpty?"auto":"",this.input&&(this.dropdownWidthStyle=this.inSearchingMode||this.shouldShowEmpty?`${this.selectContainer.nativeElement.offsetWidth}px`:"")}setStatusStyles(He,et){this.status=He,this.hasFeedback=et,this.cdr.markForCheck(),this.statusCls=(0,A.Zu)(this.prefixCls,He,et),Object.keys(this.statusCls).forEach(It=>{this.statusCls[It]?this.renderer.addClass(this.elementRef.nativeElement,It):this.renderer.removeClass(this.elementRef.nativeElement,It)})}setLocale(){this.locale=this.i18nService.getLocaleData("global"),this.cdr.markForCheck()}scrollToActivatedOptions(){this.ngZone.runOutsideAngular(()=>{Promise.resolve().then(()=>{this.cascaderItems.toArray().filter(He=>He.activated).forEach(He=>{He.nativeElement.scrollIntoView({block:"start",inline:"nearest"})})})})}setupChangeListener(){this.input$.pipe((0,x.w)(He=>He?new M.y(et=>this.ngZone.runOutsideAngular(()=>(0,h.R)(He.nativeElement,"change").subscribe(et))):v.E),(0,y.R)(this.destroy$)).subscribe(He=>He.stopPropagation())}setupKeydownListener(){this.ngZone.runOutsideAngular(()=>{(0,h.R)(this.el,"keydown").pipe((0,y.R)(this.destroy$)).subscribe(He=>{const et=He.keyCode;if(et===n.JH||et===n.LH||et===n.oh||et===n.SV||et===n.K5||et===n.ZH||et===n.hY){if(!this.menuVisible&&et!==n.ZH&&et!==n.hY)return this.ngZone.run(()=>this.setMenuVisible(!0));this.inSearchingMode&&(et===n.ZH||et===n.oh||et===n.SV)||this.menuVisible&&(He.preventDefault(),this.ngZone.run(()=>{et===n.JH?this.moveUpOrDown(!1):et===n.LH?this.moveUpOrDown(!0):et===n.oh?this.moveLeft():et===n.SV?this.moveRight():et===n.K5&&this.onEnter(),this.cdr.markForCheck()}))}})})}static#e=this.\u0275fac=function(et){return new(et||Vt)(i.Y36(Ut),i.Y36(_.jY),i.Y36(i.R0b),i.Y36(i.sBO),i.Y36(ze.wi),i.Y36(S.kn),i.Y36(i.SBq),i.Y36(i.Qsj),i.Y36(Y.Is,8),i.Y36(G.P,9),i.Y36(V.kH,8),i.Y36(V.yW,8))};static#t=this.\u0275cmp=i.Xpm({type:Vt,selectors:[["nz-cascader"],["","nz-cascader",""]],viewQuery:function(et,It){if(1&et&&(i.Gf(xe,5),i.Gf(Me,5),i.Gf(Ye,5),i.Gf(t.pI,5),i.Gf(Lt,5)),2&et){let Ot;i.iGM(Ot=i.CRH())&&(It.selectContainer=Ot.first),i.iGM(Ot=i.CRH())&&(It.input=Ot.first),i.iGM(Ot=i.CRH())&&(It.menu=Ot.first),i.iGM(Ot=i.CRH())&&(It.overlay=Ot.first),i.iGM(Ot=i.CRH())&&(It.cascaderItems=Ot)}},hostVars:23,hostBindings:function(et,It){1&et&&i.NdJ("click",function(){return It.onTriggerClick()})("mouseenter",function(){return It.onTriggerMouseEnter()})("mouseleave",function(xt){return It.onTriggerMouseLeave(xt)}),2&et&&(i.uIk("tabIndex","0"),i.ekj("ant-select-in-form-item",!!It.nzFormStatusService)("ant-select-lg","large"===It.nzSize)("ant-select-sm","small"===It.nzSize)("ant-select-allow-clear",It.nzAllowClear)("ant-select-show-arrow",It.nzShowArrow)("ant-select-show-search",!!It.nzShowSearch)("ant-select-disabled",It.nzDisabled)("ant-select-open",It.menuVisible)("ant-select-focused",It.isFocused)("ant-select-single",!0)("ant-select-rtl","rtl"===It.dir))},inputs:{nzOptionRender:"nzOptionRender",nzShowInput:"nzShowInput",nzShowArrow:"nzShowArrow",nzAllowClear:"nzAllowClear",nzAutoFocus:"nzAutoFocus",nzChangeOnSelect:"nzChangeOnSelect",nzDisabled:"nzDisabled",nzColumnClassName:"nzColumnClassName",nzExpandTrigger:"nzExpandTrigger",nzValueProperty:"nzValueProperty",nzLabelRender:"nzLabelRender",nzLabelProperty:"nzLabelProperty",nzNotFoundContent:"nzNotFoundContent",nzSize:"nzSize",nzBackdrop:"nzBackdrop",nzShowSearch:"nzShowSearch",nzPlaceHolder:"nzPlaceHolder",nzMenuClassName:"nzMenuClassName",nzMenuStyle:"nzMenuStyle",nzMouseEnterDelay:"nzMouseEnterDelay",nzMouseLeaveDelay:"nzMouseLeaveDelay",nzStatus:"nzStatus",nzTriggerAction:"nzTriggerAction",nzChangeOn:"nzChangeOn",nzLoadData:"nzLoadData",nzSuffixIcon:"nzSuffixIcon",nzExpandIcon:"nzExpandIcon",nzOptions:"nzOptions"},outputs:{nzVisibleChange:"nzVisibleChange",nzSelectionChange:"nzSelectionChange",nzSelect:"nzSelect",nzClear:"nzClear"},exportAs:["nzCascader"],features:[i._Bn([{provide:l.JU,useExisting:(0,i.Gpc)(()=>Vt),multi:!0},Ut,S.kn]),i.TTD],ngContentSelectors:Ie,decls:6,vars:6,consts:[["cdkOverlayOrigin",""],["origin","cdkOverlayOrigin","trigger",""],[4,"ngIf"],["cdkConnectedOverlay","","nzConnectedOverlay","",3,"cdkConnectedOverlayHasBackdrop","cdkConnectedOverlayOrigin","cdkConnectedOverlayPositions","cdkConnectedOverlayTransformOriginOn","cdkConnectedOverlayOpen","overlayOutsideClick","detach"],[1,"ant-select-selector"],["selectContainer",""],[1,"ant-select-selection-search"],["type","search",1,"ant-select-selection-search-input",3,"readonly","disabled","ngModel","ngModelChange","blur","focus"],["input",""],["class","ant-select-selection-item",3,"title",4,"ngIf"],["class","ant-select-selection-placeholder",3,"visibility",4,"ngIf"],["class","ant-select-arrow",3,"ant-select-arrow-loading",4,"ngIf"],["class","ant-select-clear",4,"ngIf"],[1,"ant-select-selection-item",3,"title"],[4,"ngIf","ngIfElse"],["labelTemplate",""],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"ant-select-selection-placeholder"],[1,"ant-select-arrow"],["nz-icon","",3,"nzType","ant-cascader-picker-arrow-expand",4,"ngIf"],["nz-icon","","nzType","loading",4,"ngIf"],[3,"status",4,"ngIf"],["nz-icon","",3,"nzType"],["nz-icon","","nzType","loading"],[3,"status"],[1,"ant-select-clear"],["nz-icon","","nzType","close-circle","nzTheme","fill",3,"click"],[1,"ant-select-dropdown","ant-cascader-dropdown","ant-select-dropdown-placement-bottomLeft",3,"nzNoAnimation","mouseenter","mouseleave"],[1,"ant-cascader-menus",3,"ngClass","ngStyle"],["menu",""],["class","ant-cascader-menu",3,"width","height",4,"ngIf","ngIfElse"],["hasOptionsTemplate",""],[1,"ant-cascader-menu"],[1,"ant-cascader-menu-item","ant-cascader-menu-item-disabled"],[1,"ant-cascader-menu-item-content",3,"nzComponentName","specificContent"],["class","ant-cascader-menu","role","menuitemcheckbox",3,"ngClass","height","width",4,"ngFor","ngForOf"],["role","menuitemcheckbox",1,"ant-cascader-menu",3,"ngClass"],["nz-cascader-option","",3,"expandIcon","columnIndex","nzLabelProperty","optionTemplate","activated","highlightText","option","dir","mouseenter","mouseleave","click",4,"ngFor","ngForOf"],["nz-cascader-option","",3,"expandIcon","columnIndex","nzLabelProperty","optionTemplate","activated","highlightText","option","dir","mouseenter","mouseleave","click"]],template:function(et,It){if(1&et&&(i.F$t(),i.TgZ(0,"div",0,1),i.YNc(3,mt,10,12,"ng-container",2),i.Hsn(4),i.qZA(),i.YNc(5,Ee,6,15,"ng-template",3),i.NdJ("overlayOutsideClick",function(xt){return It.onClickOutside(xt)})("detach",function(){return It.closeMenu()})),2&et){const Ot=i.MAs(1);i.xp6(3),i.Q6J("ngIf",It.nzShowInput),i.xp6(2),i.Q6J("cdkConnectedOverlayHasBackdrop",It.nzBackdrop)("cdkConnectedOverlayOrigin",Ot)("cdkConnectedOverlayPositions",It.positions)("cdkConnectedOverlayTransformOriginOn",".ant-cascader-dropdown")("cdkConnectedOverlayOpen",It.menuVisible)}},dependencies:[Y.Lv,k.mk,k.sg,k.O5,k.tP,k.PC,l.Fj,l.JJ,l.On,t.pI,t.xu,K.gB,$.Ls,G.P,P.hQ,V.w_,Lt],encapsulation:2,data:{animation:[D.mF]},changeDetection:0})}return(0,e.gn)([(0,A.yF)()],Vt.prototype,"nzShowInput",void 0),(0,e.gn)([(0,A.yF)()],Vt.prototype,"nzShowArrow",void 0),(0,e.gn)([(0,A.yF)()],Vt.prototype,"nzAllowClear",void 0),(0,e.gn)([(0,A.yF)()],Vt.prototype,"nzAutoFocus",void 0),(0,e.gn)([(0,A.yF)()],Vt.prototype,"nzChangeOnSelect",void 0),(0,e.gn)([(0,A.yF)()],Vt.prototype,"nzDisabled",void 0),(0,e.gn)([(0,_.oS)()],Vt.prototype,"nzSize",void 0),(0,e.gn)([(0,_.oS)()],Vt.prototype,"nzBackdrop",void 0),Vt})(),Wt=(()=>{class Vt{static#e=this.\u0275fac=function(et){return new(et||Vt)};static#t=this.\u0275mod=i.oAB({type:Vt});static#n=this.\u0275inj=i.cJS({imports:[Y.vT,k.ez,l.u5,t.U8,R.T,K.Xo,W.C,$.PV,te.o7,G.g,P.e4,V.mJ]})}return Vt})()},28802:(nt,I,o)=>{"use strict";o.d(I,{D3:()=>C,y7:()=>u});var e=o(65879),n=o(42495),t=o(65592),i=o(78645);let l=(()=>{class z{create(h){return typeof ResizeObserver>"u"?null:new ResizeObserver(h)}static#e=this.\u0275fac=function(v){return new(v||z)};static#t=this.\u0275prov=e.Yz7({token:z,factory:z.\u0275fac,providedIn:"root"})}return z})(),C=(()=>{class z{constructor(h){this.nzResizeObserverFactory=h,this.observedElements=new Map}ngOnDestroy(){this.observedElements.forEach((h,v)=>this.cleanupObserver(v))}observe(h){const v=(0,n.fI)(h);return new t.y(g=>{const p=this.observeElement(v).subscribe(g);return()=>{p.unsubscribe(),this.unobserveElement(v)}})}observeElement(h){if(this.observedElements.has(h))this.observedElements.get(h).count++;else{const v=new i.x,g=this.nzResizeObserverFactory.create(d=>v.next(d));g&&g.observe(h),this.observedElements.set(h,{observer:g,stream:v,count:1})}return this.observedElements.get(h).stream}unobserveElement(h){this.observedElements.has(h)&&(this.observedElements.get(h).count--,this.observedElements.get(h).count||this.cleanupObserver(h))}cleanupObserver(h){if(this.observedElements.has(h)){const{observer:v,stream:g}=this.observedElements.get(h);v&&v.disconnect(),g.complete(),this.observedElements.delete(h)}}static#e=this.\u0275fac=function(v){return new(v||z)(e.LFG(l))};static#t=this.\u0275prov=e.Yz7({token:z,factory:z.\u0275fac,providedIn:"root"})}return z})(),u=(()=>{class z{static#e=this.\u0275fac=function(v){return new(v||z)};static#t=this.\u0275mod=e.oAB({type:z});static#n=this.\u0275inj=e.cJS({providers:[l]})}return z})()},62612:(nt,I,o)=>{"use strict";o.d(I,{EZ:()=>f,Ie:()=>y,Wr:()=>x,ub:()=>T});var e=o(97582),n=o(65879),t=o(60095),i=o(78645),l=o(92438),C=o(59773),E=o(27754),u=o(4300),z=o(49388),M=o(50883),h=o(96814);const v=["*"],g=["inputElement"],d=["nz-checkbox",""];function p(D,_){if(1&D){const P=n.EpF();n.TgZ(0,"label",1),n.NdJ("nzCheckedChange",function(A){const R=n.CHM(P).$implicit,$=n.oxw();return n.KtG($.onCheckedChange(R,A))}),n.TgZ(1,"span"),n._uU(2),n.qZA()()}if(2&D){const P=_.$implicit,S=n.oxw();n.Q6J("nzDisabled",P.disabled||S.nzDisabled)("nzChecked",P.checked),n.xp6(2),n.Oqu(P.label)}}let f=(()=>{class D{constructor(){this.nzOnChange=new n.vpe,this.checkboxList=[]}addCheckbox(P){this.checkboxList.push(P)}removeCheckbox(P){this.checkboxList.splice(this.checkboxList.indexOf(P),1)}onChange(){const P=this.checkboxList.filter(S=>S.nzChecked).map(S=>S.nzValue);this.nzOnChange.emit(P)}static#e=this.\u0275fac=function(S){return new(S||D)};static#t=this.\u0275cmp=n.Xpm({type:D,selectors:[["nz-checkbox-wrapper"]],hostAttrs:[1,"ant-checkbox-group"],outputs:{nzOnChange:"nzOnChange"},exportAs:["nzCheckboxWrapper"],ngContentSelectors:v,decls:1,vars:0,template:function(S,A){1&S&&(n.F$t(),n.Hsn(0))},encapsulation:2,changeDetection:0})}return D})(),y=(()=>{class D{innerCheckedChange(P){this.nzDisabled||(this.nzChecked=P,this.onChange(this.nzChecked),this.nzCheckedChange.emit(this.nzChecked),this.nzCheckboxWrapperComponent&&this.nzCheckboxWrapperComponent.onChange())}writeValue(P){this.nzChecked=P,this.cdr.markForCheck()}registerOnChange(P){this.onChange=P}registerOnTouched(P){this.onTouched=P}setDisabledState(P){this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||P,this.isNzDisableFirstChange=!1,this.cdr.markForCheck()}focus(){this.focusMonitor.focusVia(this.inputElement,"keyboard")}blur(){this.inputElement.nativeElement.blur()}constructor(P,S,A,k,R,$,W){this.ngZone=P,this.elementRef=S,this.nzCheckboxWrapperComponent=A,this.cdr=k,this.focusMonitor=R,this.directionality=$,this.nzFormStatusService=W,this.dir="ltr",this.destroy$=new i.x,this.isNzDisableFirstChange=!0,this.onChange=()=>{},this.onTouched=()=>{},this.nzCheckedChange=new n.vpe,this.nzValue=null,this.nzAutoFocus=!1,this.nzDisabled=!1,this.nzIndeterminate=!1,this.nzChecked=!1,this.nzId=null}ngOnInit(){this.focusMonitor.monitor(this.elementRef,!0).pipe((0,C.R)(this.destroy$)).subscribe(P=>{P||Promise.resolve().then(()=>this.onTouched())}),this.nzCheckboxWrapperComponent&&this.nzCheckboxWrapperComponent.addCheckbox(this),this.directionality.change.pipe((0,C.R)(this.destroy$)).subscribe(P=>{this.dir=P,this.cdr.detectChanges()}),this.dir=this.directionality.value,this.ngZone.runOutsideAngular(()=>{(0,l.R)(this.elementRef.nativeElement,"click").pipe((0,C.R)(this.destroy$)).subscribe(P=>{P.preventDefault(),this.focus(),!this.nzDisabled&&this.ngZone.run(()=>{this.innerCheckedChange(!this.nzChecked),this.cdr.markForCheck()})}),(0,l.R)(this.inputElement.nativeElement,"click").pipe((0,C.R)(this.destroy$)).subscribe(P=>P.stopPropagation())})}ngAfterViewInit(){this.nzAutoFocus&&this.focus()}ngOnDestroy(){this.focusMonitor.stopMonitoring(this.elementRef),this.nzCheckboxWrapperComponent&&this.nzCheckboxWrapperComponent.removeCheckbox(this),this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(S){return new(S||D)(n.Y36(n.R0b),n.Y36(n.SBq),n.Y36(f,8),n.Y36(n.sBO),n.Y36(u.tE),n.Y36(z.Is,8),n.Y36(M.kH,8))};static#t=this.\u0275cmp=n.Xpm({type:D,selectors:[["","nz-checkbox",""]],viewQuery:function(S,A){if(1&S&&n.Gf(g,7),2&S){let k;n.iGM(k=n.CRH())&&(A.inputElement=k.first)}},hostAttrs:[1,"ant-checkbox-wrapper"],hostVars:6,hostBindings:function(S,A){2&S&&n.ekj("ant-checkbox-wrapper-in-form-item",!!A.nzFormStatusService)("ant-checkbox-wrapper-checked",A.nzChecked)("ant-checkbox-rtl","rtl"===A.dir)},inputs:{nzValue:"nzValue",nzAutoFocus:"nzAutoFocus",nzDisabled:"nzDisabled",nzIndeterminate:"nzIndeterminate",nzChecked:"nzChecked",nzId:"nzId"},outputs:{nzCheckedChange:"nzCheckedChange"},exportAs:["nzCheckbox"],features:[n._Bn([{provide:t.JU,useExisting:(0,n.Gpc)(()=>D),multi:!0}])],attrs:d,ngContentSelectors:v,decls:6,vars:11,consts:[[1,"ant-checkbox"],["type","checkbox",1,"ant-checkbox-input",3,"checked","ngModel","disabled","ngModelChange"],["inputElement",""],[1,"ant-checkbox-inner"]],template:function(S,A){1&S&&(n.F$t(),n.TgZ(0,"span",0)(1,"input",1,2),n.NdJ("ngModelChange",function(R){return A.innerCheckedChange(R)}),n.qZA(),n._UZ(3,"span",3),n.qZA(),n.TgZ(4,"span"),n.Hsn(5),n.qZA()),2&S&&(n.ekj("ant-checkbox-checked",A.nzChecked&&!A.nzIndeterminate)("ant-checkbox-disabled",A.nzDisabled)("ant-checkbox-indeterminate",A.nzIndeterminate),n.xp6(1),n.Q6J("checked",A.nzChecked)("ngModel",A.nzChecked)("disabled",A.nzDisabled),n.uIk("autofocus",A.nzAutoFocus?"autofocus":null)("id",A.nzId))},dependencies:[t.Wl,t.JJ,t.On],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,E.yF)()],D.prototype,"nzAutoFocus",void 0),(0,e.gn)([(0,E.yF)()],D.prototype,"nzDisabled",void 0),(0,e.gn)([(0,E.yF)()],D.prototype,"nzIndeterminate",void 0),(0,e.gn)([(0,E.yF)()],D.prototype,"nzChecked",void 0),D})(),T=(()=>{class D{trackByOption(P,S){return S.value}onCheckedChange(P,S){P.checked=S,this.onChange(this.options)}constructor(P,S,A,k){this.elementRef=P,this.focusMonitor=S,this.cdr=A,this.directionality=k,this.onChange=()=>{},this.onTouched=()=>{},this.options=[],this.nzDisabled=!1,this.dir="ltr",this.destroy$=new i.x,this.isNzDisableFirstChange=!0}ngOnInit(){this.focusMonitor.monitor(this.elementRef,!0).pipe((0,C.R)(this.destroy$)).subscribe(P=>{P||Promise.resolve().then(()=>this.onTouched())}),this.directionality.change?.pipe((0,C.R)(this.destroy$)).subscribe(P=>{this.dir=P,this.cdr.detectChanges()}),this.dir=this.directionality.value}ngOnDestroy(){this.focusMonitor.stopMonitoring(this.elementRef),this.destroy$.next(),this.destroy$.complete()}writeValue(P){this.options=P,this.cdr.markForCheck()}registerOnChange(P){this.onChange=P}registerOnTouched(P){this.onTouched=P}setDisabledState(P){this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||P,this.isNzDisableFirstChange=!1,this.cdr.markForCheck()}static#e=this.\u0275fac=function(S){return new(S||D)(n.Y36(n.SBq),n.Y36(u.tE),n.Y36(n.sBO),n.Y36(z.Is,8))};static#t=this.\u0275cmp=n.Xpm({type:D,selectors:[["nz-checkbox-group"]],hostAttrs:[1,"ant-checkbox-group"],hostVars:2,hostBindings:function(S,A){2&S&&n.ekj("ant-checkbox-group-rtl","rtl"===A.dir)},inputs:{nzDisabled:"nzDisabled"},exportAs:["nzCheckboxGroup"],features:[n._Bn([{provide:t.JU,useExisting:(0,n.Gpc)(()=>D),multi:!0}])],decls:1,vars:2,consts:[["nz-checkbox","","class","ant-checkbox-group-item",3,"nzDisabled","nzChecked","nzCheckedChange",4,"ngFor","ngForOf","ngForTrackBy"],["nz-checkbox","",1,"ant-checkbox-group-item",3,"nzDisabled","nzChecked","nzCheckedChange"]],template:function(S,A){1&S&&n.YNc(0,p,3,3,"label",0),2&S&&n.Q6J("ngForOf",A.options)("ngForTrackBy",A.trackByOption)},dependencies:[h.sg,y],encapsulation:2})}return(0,e.gn)([(0,E.yF)()],D.prototype,"nzDisabled",void 0),D})(),x=(()=>{class D{static#e=this.\u0275fac=function(S){return new(S||D)};static#t=this.\u0275mod=n.oAB({type:D});static#n=this.\u0275inj=n.cJS({imports:[z.vT,h.ez,t.u5,u.rt]})}return D})()},64194:(nt,I,o)=>{"use strict";o.d(I,{$C:()=>d,Ev:()=>p,J_:()=>i,MC:()=>C,Rq:()=>g,YK:()=>u,c8:()=>E,lx:()=>l,mF:()=>v});var e=o(86825);let n=(()=>{class y{static#e=this.SLOW="0.3s";static#t=this.BASE="0.2s";static#n=this.FAST="0.1s"}return y})(),t=(()=>{class y{static#e=this.EASE_BASE_OUT="cubic-bezier(0.7, 0.3, 0.1, 1)";static#t=this.EASE_BASE_IN="cubic-bezier(0.9, 0, 0.3, 0.7)";static#n=this.EASE_OUT="cubic-bezier(0.215, 0.61, 0.355, 1)";static#i=this.EASE_IN="cubic-bezier(0.55, 0.055, 0.675, 0.19)";static#o=this.EASE_IN_OUT="cubic-bezier(0.645, 0.045, 0.355, 1)";static#s=this.EASE_OUT_BACK="cubic-bezier(0.12, 0.4, 0.29, 1.46)";static#r=this.EASE_IN_BACK="cubic-bezier(0.71, -0.46, 0.88, 0.6)";static#a=this.EASE_IN_OUT_BACK="cubic-bezier(0.71, -0.46, 0.29, 1.46)";static#l=this.EASE_OUT_CIRC="cubic-bezier(0.08, 0.82, 0.17, 1)";static#c=this.EASE_IN_CIRC="cubic-bezier(0.6, 0.04, 0.98, 0.34)";static#d=this.EASE_IN_OUT_CIRC="cubic-bezier(0.78, 0.14, 0.15, 0.86)";static#u=this.EASE_OUT_QUINT="cubic-bezier(0.23, 1, 0.32, 1)";static#h=this.EASE_IN_QUINT="cubic-bezier(0.755, 0.05, 0.855, 0.06)";static#p=this.EASE_IN_OUT_QUINT="cubic-bezier(0.86, 0, 0.07, 1)"}return y})();const i=(0,e.X$)("collapseMotion",[(0,e.SB)("expanded",(0,e.oB)({height:"*"})),(0,e.SB)("collapsed",(0,e.oB)({height:0,overflow:"hidden"})),(0,e.SB)("hidden",(0,e.oB)({height:0,overflow:"hidden",borderTopWidth:"0"})),(0,e.eR)("expanded => collapsed",(0,e.jt)(`150ms ${t.EASE_IN_OUT}`)),(0,e.eR)("expanded => hidden",(0,e.jt)(`150ms ${t.EASE_IN_OUT}`)),(0,e.eR)("collapsed => expanded",(0,e.jt)(`150ms ${t.EASE_IN_OUT}`)),(0,e.eR)("hidden => expanded",(0,e.jt)(`150ms ${t.EASE_IN_OUT}`))]),l=(0,e.X$)("treeCollapseMotion",[(0,e.eR)("* => *",[(0,e.IO)("nz-tree-node:leave,nz-tree-builtin-node:leave",[(0,e.oB)({overflow:"hidden"}),(0,e.EY)(0,[(0,e.jt)(`150ms ${t.EASE_IN_OUT}`,(0,e.oB)({height:0,opacity:0,"padding-bottom":0}))])],{optional:!0}),(0,e.IO)("nz-tree-node:enter,nz-tree-builtin-node:enter",[(0,e.oB)({overflow:"hidden",height:0,opacity:0,"padding-bottom":0}),(0,e.EY)(0,[(0,e.jt)(`150ms ${t.EASE_IN_OUT}`,(0,e.oB)({overflow:"hidden",height:"*",opacity:"*","padding-bottom":"*"}))])],{optional:!0})])]),C=(0,e.X$)("fadeMotion",[(0,e.eR)(":enter",[(0,e.oB)({opacity:0}),(0,e.jt)(`${n.BASE}`,(0,e.oB)({opacity:1}))]),(0,e.eR)(":leave",[(0,e.oB)({opacity:1}),(0,e.jt)(`${n.BASE}`,(0,e.oB)({opacity:0}))])]),E=(0,e.X$)("helpMotion",[(0,e.eR)(":enter",[(0,e.oB)({opacity:0,transform:"translateY(-5px)"}),(0,e.jt)(`${n.SLOW} ${t.EASE_IN_OUT}`,(0,e.oB)({opacity:1,transform:"translateY(0)"}))]),(0,e.eR)(":leave",[(0,e.oB)({opacity:1,transform:"translateY(0)"}),(0,e.jt)(`${n.SLOW} ${t.EASE_IN_OUT}`,(0,e.oB)({opacity:0,transform:"translateY(-5px)"}))])]),u=(0,e.X$)("moveUpMotion",[(0,e.eR)("* => enter",[(0,e.oB)({transformOrigin:"0 0",transform:"translateY(-100%)",opacity:0}),(0,e.jt)(`${n.BASE}`,(0,e.oB)({transformOrigin:"0 0",transform:"translateY(0%)",opacity:1}))]),(0,e.eR)("* => leave",[(0,e.oB)({transformOrigin:"0 0",transform:"translateY(0%)",opacity:1}),(0,e.jt)(`${n.BASE}`,(0,e.oB)({transformOrigin:"0 0",transform:"translateY(-100%)",opacity:0}))])]),M=((0,e.X$)("notificationMotion",[(0,e.SB)("enterRight",(0,e.oB)({opacity:1,transform:"translateX(0)"})),(0,e.eR)("* => enterRight",[(0,e.oB)({opacity:0,transform:"translateX(5%)"}),(0,e.jt)("100ms linear")]),(0,e.SB)("enterLeft",(0,e.oB)({opacity:1,transform:"translateX(0)"})),(0,e.eR)("* => enterLeft",[(0,e.oB)({opacity:0,transform:"translateX(-5%)"}),(0,e.jt)("100ms linear")]),(0,e.SB)("enterTop",(0,e.oB)({opacity:1,transform:"translateY(0)"})),(0,e.eR)("* => enterTop",[(0,e.oB)({opacity:0,transform:"translateY(-5%)"}),(0,e.jt)("100ms linear")]),(0,e.SB)("enterBottom",(0,e.oB)({opacity:1,transform:"translateY(0)"})),(0,e.eR)("* => enterBottom",[(0,e.oB)({opacity:0,transform:"translateY(5%)"}),(0,e.jt)("100ms linear")]),(0,e.SB)("leave",(0,e.oB)({opacity:0,transform:"scaleY(0.8)",transformOrigin:"0% 0%"})),(0,e.eR)("* => leave",[(0,e.oB)({opacity:1,transform:"scaleY(1)",transformOrigin:"0% 0%"}),(0,e.jt)("100ms linear")])]),`${n.BASE} ${t.EASE_OUT_QUINT}`),h=`${n.BASE} ${t.EASE_IN_QUINT}`,v=(0,e.X$)("slideMotion",[(0,e.SB)("void",(0,e.oB)({opacity:0,transform:"scaleY(0.8)"})),(0,e.SB)("enter",(0,e.oB)({opacity:1,transform:"scaleY(1)"})),(0,e.eR)("void => *",[(0,e.jt)(M)]),(0,e.eR)("* => void",[(0,e.jt)(h)])]),g=(0,e.X$)("slideAlertMotion",[(0,e.eR)(":leave",[(0,e.oB)({opacity:1,transform:"scaleY(1)",transformOrigin:"0% 0%"}),(0,e.jt)(`${n.SLOW} ${t.EASE_IN_OUT_CIRC}`,(0,e.oB)({opacity:0,transform:"scaleY(0)",transformOrigin:"0% 0%"}))])]),d=(0,e.X$)("zoomBigMotion",[(0,e.eR)("void => active",[(0,e.oB)({opacity:0,transform:"scale(0.8)"}),(0,e.jt)(`${n.BASE} ${t.EASE_OUT_CIRC}`,(0,e.oB)({opacity:1,transform:"scale(1)"}))]),(0,e.eR)("active => void",[(0,e.oB)({opacity:1,transform:"scale(1)"}),(0,e.jt)(`${n.BASE} ${t.EASE_IN_OUT_CIRC}`,(0,e.oB)({opacity:0,transform:"scale(0.8)"}))])]),p=(0,e.X$)("zoomBadgeMotion",[(0,e.eR)(":enter",[(0,e.oB)({opacity:0,transform:"scale(0) translate(50%, -50%)"}),(0,e.jt)(`${n.SLOW} ${t.EASE_OUT_BACK}`,(0,e.oB)({opacity:1,transform:"scale(1) translate(50%, -50%)"}))]),(0,e.eR)(":leave",[(0,e.oB)({opacity:1,transform:"scale(1) translate(50%, -50%)"}),(0,e.jt)(`${n.SLOW} ${t.EASE_IN_BACK}`,(0,e.oB)({opacity:0,transform:"scale(0) translate(50%, -50%)"}))])]);(0,e.X$)("thumbMotion",[(0,e.SB)("from",(0,e.oB)({transform:"translateX({{ transform }}px)",width:"{{ width }}px"}),{params:{transform:0,width:0}}),(0,e.SB)("to",(0,e.oB)({transform:"translateX({{ transform }}px)",width:"{{ width }}px"}),{params:{transform:100,width:0}}),(0,e.eR)("from => to",(0,e.jt)(`300ms ${t.EASE_IN_OUT}`))])},13324:(nt,I,o)=>{"use strict";o.d(I,{Bh:()=>t,M8:()=>C,R_:()=>_,o2:()=>l,uf:()=>i});var e=o(94265),n=o(36379);const t=["success","processing","error","default","warning"],i=["pink","red","yellow","orange","cyan","green","blue","purple","geekblue","magenta","volcano","gold","lime"];function l(P){return-1!==i.indexOf(P)}function C(P){return-1!==t.indexOf(P)}const E=2,u=.16,z=.05,M=.05,h=.15,v=5,g=4,d=[{index:7,opacity:.15},{index:6,opacity:.25},{index:5,opacity:.3},{index:5,opacity:.45},{index:5,opacity:.65},{index:5,opacity:.85},{index:4,opacity:.9},{index:3,opacity:.95},{index:2,opacity:.97},{index:1,opacity:.98}];function p({r:P,g:S,b:A}){const k=(0,e.py)(P,S,A);return{h:360*k.h,s:k.s,v:k.v}}function f({r:P,g:S,b:A}){return`#${(0,e.vq)(P,S,A,!1)}`}function T(P,S,A){let k;return k=Math.round(P.h)>=60&&Math.round(P.h)<=240?A?Math.round(P.h)-E*S:Math.round(P.h)+E*S:A?Math.round(P.h)+E*S:Math.round(P.h)-E*S,k<0?k+=360:k>=360&&(k-=360),k}function x(P,S,A){if(0===P.h&&0===P.s)return P.s;let k;return k=A?P.s-u*S:S===g?P.s+u:P.s+z*S,k>1&&(k=1),A&&S===v&&k>.1&&(k=.1),k<.06&&(k=.06),Number(k.toFixed(2))}function D(P,S,A){let k;return k=A?P.v+M*S:P.v-h*S,k>1&&(k=1),Number(k.toFixed(2))}function _(P,S={}){const A=[],k=(0,n.uA)(P);for(let R=v;R>0;R-=1){const $=p(k),W=f((0,n.uA)({h:T($,R,!0),s:x($,R,!0),v:D($,R,!0)}));A.push(W)}A.push(f(k));for(let R=1;R<=g;R+=1){const $=p(k),W=f((0,n.uA)({h:T($,R),s:x($,R),v:D($,R)}));A.push(W)}return"dark"===S.theme?d.map(({index:R,opacity:$})=>f(function y(P,S,A){const k=A/100;return{r:(S.r-P.r)*k+P.r,g:(S.g-P.g)*k+P.g,b:(S.b-P.b)*k+P.b}}((0,n.uA)(S.backgroundColor||"#141414"),(0,n.uA)(A[R]),100*$))):A}},83064:(nt,I,o)=>{"use strict";o.d(I,{jY:()=>f,oS:()=>y,zR:()=>M});var e=o(65879),n=o(78645),t=o(32181),i=o(21441),l=o(30889),C=o(13324),E=o(1608),u=o(27754);const z=new e.OlP("nz-config");function M(T){return(0,e.MR2)([{provide:z,useValue:T}])}const h=`-ant-${Date.now()}-${Math.random()}`;function g(T,x,D){const _=function v(T,x){const D={},_=(A,k)=>{let R=A.clone();return R=k?.(R)||R,R.toRgbString()},P=(A,k)=>{const R=new l.C(A),$=(0,C.R_)(R.toRgbString());D[`${k}-color`]=_(R),D[`${k}-color-disabled`]=$[1],D[`${k}-color-hover`]=$[4],D[`${k}-color-active`]=$[7],D[`${k}-color-outline`]=R.clone().setAlpha(.2).toRgbString(),D[`${k}-color-deprecated-bg`]=$[1],D[`${k}-color-deprecated-border`]=$[3]};if(x.primaryColor){P(x.primaryColor,"primary");const A=new l.C(x.primaryColor),k=(0,C.R_)(A.toRgbString());k.forEach(($,W)=>{D[`primary-${W+1}`]=$}),D["primary-color-deprecated-l-35"]=_(A,$=>$.lighten(35)),D["primary-color-deprecated-l-20"]=_(A,$=>$.lighten(20)),D["primary-color-deprecated-t-20"]=_(A,$=>$.tint(20)),D["primary-color-deprecated-t-50"]=_(A,$=>$.tint(50)),D["primary-color-deprecated-f-12"]=_(A,$=>$.setAlpha(.12*$.getAlpha()));const R=new l.C(k[0]);D["primary-color-active-deprecated-f-30"]=_(R,$=>$.setAlpha(.3*$.getAlpha())),D["primary-color-active-deprecated-d-02"]=_(R,$=>$.darken(2))}return x.successColor&&P(x.successColor,"success"),x.warningColor&&P(x.warningColor,"warning"),x.errorColor&&P(x.errorColor,"error"),x.infoColor&&P(x.infoColor,"info"),`\n :root {\n ${Object.keys(D).map(A=>`--${T}-${A}: ${D[A]};`).join("\n")}\n }\n `.trim()}(T,x);(0,u.J8)()?(0,u.hq)(_,`${h}-dynamic-theme`,{cspNonce:D}):(0,E.ZK)("NzConfigService: SSR do not support dynamic theme with css variables.")}const d=function(T){return void 0!==T};let f=(()=>{class T{constructor(D,_){this.configUpdated$=new n.x,this.config=D||{},this.cspNonce=_,this.config.theme&&g(this.getConfig().prefixCls?.prefixCls||"ant",this.config.theme,_)}getConfig(){return this.config}getConfigForComponent(D){return this.config[D]}getConfigChangeEventForComponent(D){return this.configUpdated$.pipe((0,t.h)(_=>_===D),(0,i.h)(void 0))}set(D,_){this.config[D]={...this.config[D],..._},"theme"===D&&this.config.theme&&g(this.getConfig().prefixCls?.prefixCls||"ant",this.config.theme,this.cspNonce),this.configUpdated$.next(D)}static#e=this.\u0275fac=function(_){return new(_||T)(e.LFG(z,8),e.LFG(e.Ojb,8))};static#t=this.\u0275prov=e.Yz7({token:T,factory:T.\u0275fac,providedIn:"root"})}return T})();function y(){return function(x,D,_){const P=`$$__zorroConfigDecorator__${D}`;return Object.defineProperty(x,P,{configurable:!0,writable:!0,enumerable:!1}),{get(){const S=_?.get?_.get.bind(this)():this[P],A=(this.propertyAssignCounter?.[D]||0)>1,k=this.nzConfigService.getConfigForComponent(this._nzModuleName)?.[D];return A&&d(S)?S:d(k)?k:S},set(S){this.propertyAssignCounter=this.propertyAssignCounter||{},this.propertyAssignCounter[D]=(this.propertyAssignCounter[D]||0)+1,_?.set?_.set.bind(this)(S):this[P]=S},configurable:!0,enumerable:!0}}}},71740:(nt,I,o)=>{"use strict";o.d(I,{N:()=>e});const e={isTestMode:!1}},50883:(nt,I,o)=>{"use strict";o.d(I,{kH:()=>E,mJ:()=>h,w_:()=>M,yW:()=>u});var e=o(65879),n=o(97328),t=o(65619),i=o(96814),l=o(90551);function C(v,g){if(1&v&&e._UZ(0,"span",1),2&v){const d=e.oxw();e.Q6J("nzType",d.iconType)}}let E=(()=>{class v{constructor(){this.formStatusChanges=new n.t(1)}static#e=this.\u0275fac=function(p){return new(p||v)};static#t=this.\u0275prov=e.Yz7({token:v,factory:v.\u0275fac})}return v})(),u=(()=>{class v{constructor(){this.noFormStatus=new t.X(!1)}static#e=this.\u0275fac=function(p){return new(p||v)};static#t=this.\u0275prov=e.Yz7({token:v,factory:v.\u0275fac})}return v})();const z={error:"close-circle-fill",validating:"loading",success:"check-circle-fill",warning:"exclamation-circle-fill"};let M=(()=>{class v{constructor(d){this.cdr=d,this.status="",this.iconType=null}ngOnChanges(d){this.updateIcon()}updateIcon(){this.iconType=this.status?z[this.status]:null,this.cdr.markForCheck()}static#e=this.\u0275fac=function(p){return new(p||v)(e.Y36(e.sBO))};static#t=this.\u0275cmp=e.Xpm({type:v,selectors:[["nz-form-item-feedback-icon"]],hostAttrs:[1,"ant-form-item-feedback-icon"],hostVars:8,hostBindings:function(p,f){2&p&&e.ekj("ant-form-item-feedback-icon-error","error"===f.status)("ant-form-item-feedback-icon-warning","warning"===f.status)("ant-form-item-feedback-icon-success","success"===f.status)("ant-form-item-feedback-icon-validating","validating"===f.status)},inputs:{status:"status"},exportAs:["nzFormFeedbackIcon"],features:[e.TTD],decls:1,vars:1,consts:[["nz-icon","",3,"nzType",4,"ngIf"],["nz-icon","",3,"nzType"]],template:function(p,f){1&p&&e.YNc(0,C,1,1,"span",0),2&p&&e.Q6J("ngIf",f.iconType)},dependencies:[i.O5,l.Ls],encapsulation:2,changeDetection:0})}return v})(),h=(()=>{class v{static#e=this.\u0275fac=function(p){return new(p||v)};static#t=this.\u0275mod=e.oAB({type:v});static#n=this.\u0275inj=e.cJS({imports:[i.ez,l.PV]})}return v})()},84267:(nt,I,o)=>{"use strict";o.d(I,{C:()=>E,U:()=>C});var e=o(65879),n=o(96814);const t=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,i=/([^\#-~ |!])/g;let C=(()=>{class u{constructor(){this.UNIQUE_WRAPPERS=["##==-open_tag-==##","##==-close_tag-==##"]}transform(M,h,v,g){if(!h)return M;const d=new RegExp(h.replace(/([.*+?^=!:${}()|[\]\/\\])/g,"\\$&"),v);return function l(u){return u.replace(/&/g,"&").replace(t,z=>`&#${1024*(z.charCodeAt(0)-55296)+(z.charCodeAt(1)-56320)+65536};`).replace(i,z=>`&#${z.charCodeAt(0)};`).replace(//g,">")}(M.replace(d,`${this.UNIQUE_WRAPPERS[0]}$&${this.UNIQUE_WRAPPERS[1]}`)).replace(new RegExp(this.UNIQUE_WRAPPERS[0],"g"),g?``:"").replace(new RegExp(this.UNIQUE_WRAPPERS[1],"g"),"")}static#e=this.\u0275fac=function(h){return new(h||u)};static#t=this.\u0275pipe=e.Yjl({name:"nzHighlight",type:u,pure:!0})}return u})(),E=(()=>{class u{static#e=this.\u0275fac=function(h){return new(h||u)};static#t=this.\u0275mod=e.oAB({type:u});static#n=this.\u0275inj=e.cJS({imports:[n.ez]})}return u})()},1608:(nt,I,o)=>{"use strict";o.d(I,{Bq:()=>i,ZK:()=>E});var e=o(65879),n=o(71740);const t={},i="[NG-ZORRO]:";const E=(...M)=>function C(M,...h){(n.N.isTestMode||(0,e.X6Q)()&&function l(...M){const h=M.reduce((v,g)=>v+g.toString(),"");return!t[h]&&(t[h]=!0,!0)}(...h))&&M(...h)}((...h)=>console.warn(i,...h),...M)},331:(nt,I,o)=>{"use strict";o.d(I,{P:()=>E,g:()=>u});var e=o(96814),n=o(65879),t=o(97582),i=o(42495),l=o(27754);const C="nz-animate-disabled";let E=(()=>{class z{constructor(h,v,g){this.element=h,this.renderer=v,this.animationType=g,this.nzNoAnimation=!1}ngOnChanges(){this.updateClass()}ngAfterViewInit(){this.updateClass()}updateClass(){const h=(0,i.fI)(this.element);h&&(this.nzNoAnimation||"NoopAnimations"===this.animationType?this.renderer.addClass(h,C):this.renderer.removeClass(h,C))}static#e=this.\u0275fac=function(v){return new(v||z)(n.Y36(n.SBq),n.Y36(n.Qsj),n.Y36(n.QbO,8))};static#t=this.\u0275dir=n.lG2({type:z,selectors:[["","nzNoAnimation",""]],inputs:{nzNoAnimation:"nzNoAnimation"},exportAs:["nzNoAnimation"],features:[n.TTD]})}return(0,t.gn)([(0,l.yF)()],z.prototype,"nzNoAnimation",void 0),z})(),u=(()=>{class z{static#e=this.\u0275fac=function(v){return new(v||z)};static#t=this.\u0275mod=n.oAB({type:z});static#n=this.\u0275inj=n.cJS({imports:[e.ez]})}return z})()},8324:(nt,I,o)=>{"use strict";o.d(I,{T:()=>l,f:()=>t});var e=o(96814),n=o(65879);let t=(()=>{class C{static ngTemplateContextGuard(u,z){return!0}recreateView(){this.viewContainer.clear();const u=this.nzStringTemplateOutlet instanceof n.Rgc;this.embeddedViewRef=this.viewContainer.createEmbeddedView(u?this.nzStringTemplateOutlet:this.templateRef,u?this.nzStringTemplateOutletContext:this.context)}updateContext(){const z=this.nzStringTemplateOutlet instanceof n.Rgc?this.nzStringTemplateOutletContext:this.context,M=this.embeddedViewRef.context;if(z)for(const h of Object.keys(z))M[h]=z[h]}constructor(u,z){this.viewContainer=u,this.templateRef=z,this.embeddedViewRef=null,this.context=new i,this.nzStringTemplateOutletContext=null,this.nzStringTemplateOutlet=null}ngOnChanges(u){const{nzStringTemplateOutletContext:z,nzStringTemplateOutlet:M}=u;M&&(this.context.$implicit=M.currentValue),(()=>{let g=!1;return M&&(g=!!M.firstChange||(M.previousValue instanceof n.Rgc||M.currentValue instanceof n.Rgc)),z&&(f=>{const y=Object.keys(f.previousValue||{}),T=Object.keys(f.currentValue||{});if(y.length===T.length){for(const x of T)if(-1===y.indexOf(x))return!0;return!1}return!0})(z)||g})()?this.recreateView():this.updateContext()}static#e=this.\u0275fac=function(z){return new(z||C)(n.Y36(n.s_b),n.Y36(n.Rgc))};static#t=this.\u0275dir=n.lG2({type:C,selectors:[["","nzStringTemplateOutlet",""]],inputs:{nzStringTemplateOutletContext:"nzStringTemplateOutletContext",nzStringTemplateOutlet:"nzStringTemplateOutlet"},exportAs:["nzStringTemplateOutlet"],features:[n.TTD]})}return C})();class i{}let l=(()=>{class C{static#e=this.\u0275fac=function(z){return new(z||C)};static#t=this.\u0275mod=n.oAB({type:C});static#n=this.\u0275inj=n.cJS({imports:[e.ez]})}return C})()},85448:(nt,I,o)=>{"use strict";o.d(I,{A7:()=>M,Ek:()=>u,bw:()=>d,d_:()=>v,dz:()=>g,e4:()=>f,fG:()=>h,hQ:()=>p,n$:()=>z,yW:()=>E});var e=o(97582),n=o(33651),t=o(65879),i=o(59773),l=o(99087),C=o(27754);const E={top:new n.tR({originX:"center",originY:"top"},{overlayX:"center",overlayY:"bottom"}),topCenter:new n.tR({originX:"center",originY:"top"},{overlayX:"center",overlayY:"bottom"}),topLeft:new n.tR({originX:"start",originY:"top"},{overlayX:"start",overlayY:"bottom"}),topRight:new n.tR({originX:"end",originY:"top"},{overlayX:"end",overlayY:"bottom"}),right:new n.tR({originX:"end",originY:"center"},{overlayX:"start",overlayY:"center"}),rightTop:new n.tR({originX:"end",originY:"top"},{overlayX:"start",overlayY:"top"}),rightBottom:new n.tR({originX:"end",originY:"bottom"},{overlayX:"start",overlayY:"bottom"}),bottom:new n.tR({originX:"center",originY:"bottom"},{overlayX:"center",overlayY:"top"}),bottomCenter:new n.tR({originX:"center",originY:"bottom"},{overlayX:"center",overlayY:"top"}),bottomLeft:new n.tR({originX:"start",originY:"bottom"},{overlayX:"start",overlayY:"top"}),bottomRight:new n.tR({originX:"end",originY:"bottom"},{overlayX:"end",overlayY:"top"}),left:new n.tR({originX:"start",originY:"center"},{overlayX:"end",overlayY:"center"}),leftTop:new n.tR({originX:"start",originY:"top"},{overlayX:"end",overlayY:"top"}),leftBottom:new n.tR({originX:"start",originY:"bottom"},{overlayX:"end",overlayY:"bottom"})},u=[E.top,E.right,E.bottom,E.left],z=[E.bottomLeft,E.bottomRight,E.topLeft,E.topRight,E.topCenter,E.bottomCenter],M=[new n.tR({originX:"start",originY:"bottom"},{overlayX:"start",overlayY:"bottom"}),new n.tR({originX:"start",originY:"bottom"},{overlayX:"end",overlayY:"bottom"})],h=[E.bottomLeft,new n.tR({originX:"start",originY:"bottom"},{overlayX:"end",overlayY:"top"})];function v(y){for(const T in E)if(y.connectionPair.originX===E[T].originX&&y.connectionPair.originY===E[T].originY&&y.connectionPair.overlayX===E[T].overlayX&&y.connectionPair.overlayY===E[T].overlayY)return T}const g={bottomLeft:new n.tR({originX:"start",originY:"bottom"},{overlayX:"start",overlayY:"top"},void 0,2),topLeft:new n.tR({originX:"start",originY:"top"},{overlayX:"start",overlayY:"bottom"},void 0,-2),bottomRight:new n.tR({originX:"end",originY:"bottom"},{overlayX:"end",overlayY:"top"},void 0,2),topRight:new n.tR({originX:"end",originY:"top"},{overlayX:"end",overlayY:"bottom"},void 0,-2)},d=[g.bottomLeft,g.topLeft,g.bottomRight,g.topRight];let p=(()=>{class y{constructor(x,D){this.cdkConnectedOverlay=x,this.nzDestroyService=D,this.nzArrowPointAtCenter=!1,this.cdkConnectedOverlay.backdropClass="nz-overlay-transparent-backdrop",this.cdkConnectedOverlay.positionChange.pipe((0,i.R)(this.nzDestroyService)).subscribe(_=>{this.nzArrowPointAtCenter&&this.updateArrowPosition(_)})}updateArrowPosition(x){const D=this.getOriginRect(),_=v(x);let P=0,S=0;"topLeft"===_||"bottomLeft"===_?P=D.width/2-14:"topRight"===_||"bottomRight"===_?P=-(D.width/2-14):"leftTop"===_||"rightTop"===_?S=D.height/2-10:("leftBottom"===_||"rightBottom"===_)&&(S=-(D.height/2-10)),(this.cdkConnectedOverlay.offsetX!==P||this.cdkConnectedOverlay.offsetY!==S)&&(this.cdkConnectedOverlay.offsetY=S,this.cdkConnectedOverlay.offsetX=P,this.cdkConnectedOverlay.overlayRef.updatePosition())}getFlexibleConnectedPositionStrategyOrigin(){return this.cdkConnectedOverlay.origin instanceof n.xu?this.cdkConnectedOverlay.origin.elementRef:this.cdkConnectedOverlay.origin}getOriginRect(){const x=this.getFlexibleConnectedPositionStrategyOrigin();if(x instanceof t.SBq)return x.nativeElement.getBoundingClientRect();if(x instanceof Element)return x.getBoundingClientRect();const D=x.width||0,_=x.height||0;return{top:x.y,bottom:x.y+_,left:x.x,right:x.x+D,height:_,width:D}}static#e=this.\u0275fac=function(D){return new(D||y)(t.Y36(n.pI),t.Y36(l.kn))};static#t=this.\u0275dir=t.lG2({type:y,selectors:[["","cdkConnectedOverlay","","nzConnectedOverlay",""]],inputs:{nzArrowPointAtCenter:"nzArrowPointAtCenter"},exportAs:["nzConnectedOverlay"],features:[t._Bn([l.kn])]})}return(0,e.gn)([(0,C.yF)()],y.prototype,"nzArrowPointAtCenter",void 0),y})(),f=(()=>{class y{static#e=this.\u0275fac=function(D){return new(D||y)};static#t=this.\u0275mod=t.oAB({type:y});static#n=this.\u0275inj=t.cJS({})}return y})()},56879:(nt,I,o)=>{"use strict";o.d(I,{e:()=>l,h:()=>i});const e=["moz","ms","webkit"];function i(C){if(typeof window>"u")return null;if(window.cancelAnimationFrame)return window.cancelAnimationFrame(C);const E=e.filter(u=>`${u}CancelAnimationFrame`in window||`${u}CancelRequestAnimationFrame`in window)[0];return E?(window[`${E}CancelAnimationFrame`]||window[`${E}CancelRequestAnimationFrame`]).call(this,C):clearTimeout(C)}const l=function t(){if(typeof window>"u")return()=>0;if(window.requestAnimationFrame)return window.requestAnimationFrame.bind(window);const C=e.filter(E=>`${E}RequestAnimationFrame`in window)[0];return C?window[`${C}RequestAnimationFrame`]:function n(){let C=0;return function(E){const u=(new Date).getTime(),z=Math.max(0,16-(u-C)),M=setTimeout(()=>{E(u+z)},z);return C=u+z,M}}()}()},99087:(nt,I,o)=>{"use strict";o.d(I,{G_:()=>S,KV:()=>T,MF:()=>P,Ml:()=>D,WV:()=>A,kn:()=>$,r3:()=>R,rI:()=>f});var e=o(65879),n=o(78645),t=o(29028),i=o(64716),l=o(37398),C=o(32181),E=o(59773),u=o(27921),z=o(93997),M=o(71740),h=o(27754),v=o(96814),g=o(56879),d=o(71088);const p=()=>{};let f=(()=>{class ze{constructor(G,V){this.ngZone=G,this.rendererFactory2=V,this.resizeSource$=new n.x,this.listeners=0,this.disposeHandle=p,this.handler=()=>{this.ngZone.run(()=>{this.resizeSource$.next()})},this.renderer=this.rendererFactory2.createRenderer(null,null)}ngOnDestroy(){this.handler=p}subscribe(){return this.registerListener(),this.resizeSource$.pipe((0,t.e)(16),(0,i.x)(()=>this.unregisterListener()))}unsubscribe(){this.unregisterListener()}registerListener(){0===this.listeners&&this.ngZone.runOutsideAngular(()=>{this.disposeHandle=this.renderer.listen("window","resize",this.handler)}),this.listeners+=1}unregisterListener(){this.listeners-=1,0===this.listeners&&(this.disposeHandle(),this.disposeHandle=p)}static#e=this.\u0275fac=function(V){return new(V||ze)(e.LFG(e.R0b),e.LFG(e.FYo))};static#t=this.\u0275prov=e.Yz7({token:ze,factory:ze.\u0275fac,providedIn:"root"})}return ze})();const y=new Map;let T=(()=>{class ze{constructor(){this._singletonRegistry=new Map}get singletonRegistry(){return M.N.isTestMode?y:this._singletonRegistry}registerSingletonWithKey(G,V){const K=this.singletonRegistry.has(G),te=K?this.singletonRegistry.get(G):this.withNewTarget(V);K||this.singletonRegistry.set(G,te)}unregisterSingletonWithKey(G){this.singletonRegistry.has(G)&&this.singletonRegistry.delete(G)}getSingletonWithKey(G){return this.singletonRegistry.has(G)?this.singletonRegistry.get(G).target:null}withNewTarget(G){return{target:G}}static#e=this.\u0275fac=function(V){return new(V||ze)};static#t=this.\u0275prov=e.Yz7({token:ze,factory:ze.\u0275fac,providedIn:"root"})}return ze})(),D=(()=>{class ze{constructor(G){this.draggingThreshold=5,this.currentDraggingSequence=null,this.currentStartingPoint=null,this.handleRegistry=new Set,this.renderer=G.createRenderer(null,null)}requestDraggingSequence(G){return this.handleRegistry.size||this.registerDraggingHandler((0,h.z6)(G)),this.currentDraggingSequence&&this.currentDraggingSequence.complete(),this.currentStartingPoint=function x(ze){const Y=(0,h.wv)(ze);return{x:Y.pageX,y:Y.pageY}}(G),this.currentDraggingSequence=new n.x,this.currentDraggingSequence.pipe((0,l.U)(V=>({x:V.pageX-this.currentStartingPoint.x,y:V.pageY-this.currentStartingPoint.y})),(0,C.h)(V=>Math.abs(V.x)>this.draggingThreshold||Math.abs(V.y)>this.draggingThreshold),(0,i.x)(()=>this.teardownDraggingSequence()))}registerDraggingHandler(G){G?(this.handleRegistry.add({teardown:this.renderer.listen("document","touchmove",V=>{this.currentDraggingSequence&&this.currentDraggingSequence.next(V.touches[0]||V.changedTouches[0])})}),this.handleRegistry.add({teardown:this.renderer.listen("document","touchend",()=>{this.currentDraggingSequence&&this.currentDraggingSequence.complete()})})):(this.handleRegistry.add({teardown:this.renderer.listen("document","mousemove",V=>{this.currentDraggingSequence&&this.currentDraggingSequence.next(V)})}),this.handleRegistry.add({teardown:this.renderer.listen("document","mouseup",()=>{this.currentDraggingSequence&&this.currentDraggingSequence.complete()})}))}teardownDraggingSequence(){this.currentDraggingSequence=null}static#e=this.\u0275fac=function(V){return new(V||ze)(e.LFG(e.FYo))};static#t=this.\u0275prov=e.Yz7({token:ze,factory:ze.\u0275fac,providedIn:"root"})}return ze})();function _(ze,Y,G,V){const K=G-Y;let te=ze/(V/2);return te<1?K/2*te*te*te+Y:K/2*((te-=2)*te*te+2)+Y}let P=(()=>{class ze{constructor(G,V){this.ngZone=G,this.doc=V}setScrollTop(G,V=0){G===window?(this.doc.body.scrollTop=V,this.doc.documentElement.scrollTop=V):G.scrollTop=V}getOffset(G){const V={top:0,left:0};if(!G||!G.getClientRects().length)return V;const K=G.getBoundingClientRect();if(K.width||K.height){const te=G.ownerDocument.documentElement;V.top=K.top-te.clientTop,V.left=K.left-te.clientLeft}else V.top=K.top,V.left=K.left;return V}getScroll(G,V=!0){if(typeof window>"u")return 0;const K=V?"scrollTop":"scrollLeft";let te=0;return this.isWindow(G)?te=G[V?"pageYOffset":"pageXOffset"]:G instanceof Document?te=G.documentElement[K]:G&&(te=G[K]),G&&!this.isWindow(G)&&"number"!=typeof te&&(te=(G.ownerDocument||G).documentElement[K]),te}isWindow(G){return null!=G&&G===G.window}scrollTo(G,V=0,K={}){const te=G||window,ne=this.getScroll(te),fe=Date.now(),{easing:re,callback:be,duration:le=450}=K,ce=()=>{const ie=Date.now()-fe,ae=(re||_)(ie>le?le:ie,ne,V,le);this.isWindow(te)?te.scrollTo(window.pageXOffset,ae):te instanceof HTMLDocument||"HTMLDocument"===te.constructor.name?te.documentElement.scrollTop=ae:te.scrollTop=ae,ie(0,g.e)(ce))}static#e=this.\u0275fac=function(V){return new(V||ze)(e.LFG(e.R0b),e.LFG(v.K0))};static#t=this.\u0275prov=e.Yz7({token:ze,factory:ze.\u0275fac,providedIn:"root"})}return ze})();var S=function(ze){return ze.xxl="xxl",ze.xl="xl",ze.lg="lg",ze.md="md",ze.sm="sm",ze.xs="xs",ze}(S||{});const A={xs:"(max-width: 575px)",sm:"(min-width: 576px)",md:"(min-width: 768px)",lg:"(min-width: 992px)",xl:"(min-width: 1200px)",xxl:"(min-width: 1600px)"};let R=(()=>{class ze{constructor(G,V){this.resizeService=G,this.mediaMatcher=V,this.destroy$=new n.x,this.resizeService.subscribe().pipe((0,E.R)(this.destroy$)).subscribe(()=>{})}ngOnDestroy(){this.destroy$.next()}subscribe(G,V){if(V){const K=()=>this.matchMedia(G,!0);return this.resizeService.subscribe().pipe((0,l.U)(K),(0,u.O)(K()),(0,z.x)((te,ne)=>te[0]===ne[0]),(0,l.U)(te=>te[1]))}{const K=()=>this.matchMedia(G);return this.resizeService.subscribe().pipe((0,l.U)(K),(0,u.O)(K()),(0,z.x)())}}matchMedia(G,V){let K=S.md;const te={};return Object.keys(G).map(ne=>{const fe=ne,re=this.mediaMatcher.matchMedia(A[fe]).matches;te[ne]=re,re&&(K=fe)}),V?[K,te]:K}static#e=this.\u0275fac=function(V){return new(V||ze)(e.LFG(f),e.LFG(d.vx))};static#t=this.\u0275prov=e.Yz7({token:ze,factory:ze.\u0275fac,providedIn:"root"})}return ze})(),$=(()=>{class ze extends n.x{ngOnDestroy(){this.next(),this.complete()}static#e=this.\u0275fac=function(){let G;return function(K){return(G||(G=e.n5z(ze)))(K||ze)}}();static#t=this.\u0275prov=e.Yz7({token:ze,factory:ze.\u0275fac})}return ze})()},3945:(nt,I,o)=>{"use strict";o.d(I,{Yp:()=>ae,ky:()=>ie,_p:()=>Q,Et:()=>ce,xR:()=>Me});var e=o(97753),n=o(47680),t=o(96156),i=o(40581),l=o(62816),E=o(22040);var M=o(21083),h=o(68584),v=o(5227);function d(Ye,q){(0,l.Z)(2,arguments);var ve=(0,i.Z)(Ye),ee=(0,i.Z)(q);return ve.getFullYear()===ee.getFullYear()}function p(Ye,q){(0,l.Z)(2,arguments);var ve=(0,i.Z)(Ye),ee=(0,i.Z)(q);return ve.getFullYear()===ee.getFullYear()&&ve.getMonth()===ee.getMonth()}var f=o(79189);function y(Ye,q){(0,l.Z)(2,arguments);var ve=(0,f.Z)(Ye),ee=(0,f.Z)(q);return ve.getTime()===ee.getTime()}function T(Ye){(0,l.Z)(1,arguments);var q=(0,i.Z)(Ye);return q.setMinutes(0,0,0),q}function x(Ye,q){(0,l.Z)(2,arguments);var ve=T(Ye),ee=T(q);return ve.getTime()===ee.getTime()}function D(Ye){(0,l.Z)(1,arguments);var q=(0,i.Z)(Ye);return q.setSeconds(0,0),q}function _(Ye,q){(0,l.Z)(2,arguments);var ve=D(Ye),ee=D(q);return ve.getTime()===ee.getTime()}function P(Ye){(0,l.Z)(1,arguments);var q=(0,i.Z)(Ye);return q.setMilliseconds(0),q}function S(Ye,q){(0,l.Z)(2,arguments);var ve=P(Ye),ee=P(q);return ve.getTime()===ee.getTime()}function A(Ye,q){(0,l.Z)(2,arguments);var ve=(0,i.Z)(Ye),ee=(0,i.Z)(q);return ve.getFullYear()-ee.getFullYear()}var k=o(80275),R=o(61855),$=o(33865),W=o(96086),ze=o(588);function Y(Ye,q,ve){(0,l.Z)(2,arguments);var ee=(0,W.Z)(Ye,q)/$.vh;return(0,ze.u)(ve?.roundingMethod)(ee)}function G(Ye,q,ve){(0,l.Z)(2,arguments);var ee=(0,W.Z)(Ye,q)/$.yJ;return(0,ze.u)(ve?.roundingMethod)(ee)}var V=o(13061),te=o(34338),fe=o(80787),re=o(1608),be=o(96814),le=o(27754);function ce(Ye){const[q,ve]=Ye;return!!q&&!!ve&&ve.isBeforeDay(q)}function Q(Ye,q,ve="month",ee="left"){const[Be,Re]=Ye;let ct=Be||new ae,Ae=Re||(q?ct:ct.add(1,ve));return Be&&!Re?(ct=Be,Ae=q?Be:Be.add(1,ve)):!Be&&Re?(ct=q?Re:Re.add(-1,ve),Ae=Re):Be&&Re&&!q&&(Be.isSame(Re,ve)||"left"===ee?Ae=ct.add(1,ve):ct=Ae.add(-1,ve)),[ct,Ae]}function ie(Ye){return Array.isArray(Ye)?Ye.map(q=>q instanceof ae?q.clone():null):Ye instanceof ae?Ye.clone():null}class ae{constructor(q){if(q)if(q instanceof Date)this.nativeDate=q;else{if("string"!=typeof q&&"number"!=typeof q)throw new Error('The input date type is not supported ("Date" is now recommended)');(0,re.ZK)('The string type is not recommended for date-picker, use "Date" type'),this.nativeDate=new Date(q)}else this.nativeDate=new Date}calendarStart(q){return new ae((0,e.Z)((0,n.Z)(this.nativeDate),q))}getYear(){return this.nativeDate.getFullYear()}getMonth(){return this.nativeDate.getMonth()}getDay(){return this.nativeDate.getDay()}getTime(){return this.nativeDate.getTime()}getDate(){return this.nativeDate.getDate()}getHours(){return this.nativeDate.getHours()}getMinutes(){return this.nativeDate.getMinutes()}getSeconds(){return this.nativeDate.getSeconds()}getMilliseconds(){return this.nativeDate.getMilliseconds()}clone(){return new ae(new Date(this.nativeDate))}setHms(q,ve,ee){const Be=new Date(this.nativeDate.setHours(q,ve,ee));return new ae(Be)}setYear(q){return new ae(function C(Ye,q){(0,l.Z)(2,arguments);var ve=(0,i.Z)(Ye),ee=(0,t.Z)(q);return isNaN(ve.getTime())?new Date(NaN):(ve.setFullYear(ee),ve)}(this.nativeDate,q))}addYears(q){return new ae((0,E.Z)(this.nativeDate,q))}setMonth(q){return new ae(function z(Ye,q){(0,l.Z)(2,arguments);var ve=(0,i.Z)(Ye),ee=(0,t.Z)(q),Be=ve.getFullYear(),Re=ve.getDate(),ct=new Date(0);ct.setFullYear(Be,ee,15),ct.setHours(0,0,0,0);var Ae=function u(Ye){(0,l.Z)(1,arguments);var q=(0,i.Z)(Ye),ve=q.getFullYear(),ee=q.getMonth(),Be=new Date(0);return Be.setFullYear(ve,ee+1,0),Be.setHours(0,0,0,0),Be.getDate()}(ct);return ve.setMonth(ee,Math.min(Re,Ae)),ve}(this.nativeDate,q))}addMonths(q){return new ae((0,M.Z)(this.nativeDate,q))}setDay(q,ve){return new ae(function g(Ye,q,ve){var ee,Be,Re,ct,Ae,Mt,je,ot;(0,l.Z)(2,arguments);var mt=(0,v.j)(),we=(0,t.Z)(null!==(ee=null!==(Be=null!==(Re=null!==(ct=ve?.weekStartsOn)&&void 0!==ct?ct:null==ve||null===(Ae=ve.locale)||void 0===Ae||null===(Mt=Ae.options)||void 0===Mt?void 0:Mt.weekStartsOn)&&void 0!==Re?Re:mt.weekStartsOn)&&void 0!==Be?Be:null===(je=mt.locale)||void 0===je||null===(ot=je.options)||void 0===ot?void 0:ot.weekStartsOn)&&void 0!==ee?ee:0);if(!(we>=0&&we<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var de=(0,i.Z)(Ye),U=(0,t.Z)(q),B=de.getDay(),Ne=7-we;return(0,h.Z)(de,U<0||U>6?U-(B+Ne)%7:((U%7+7)%7+Ne)%7-(B+Ne)%7)}(this.nativeDate,q,ve))}setDate(q){const ve=new Date(this.nativeDate);return ve.setDate(q),new ae(ve)}addDays(q){return this.setDate(this.getDate()+q)}add(q,ve){switch(ve){case"decade":return this.addYears(10*q);case"year":return this.addYears(q);default:return this.addMonths(q)}}isSame(q,ve="day"){let ee;switch(ve){case"decade":ee=(Be,Re)=>Math.abs(Be.getFullYear()-Re.getFullYear())<11;break;case"year":ee=d;break;case"month":ee=p;break;case"day":default:ee=y;break;case"hour":ee=x;break;case"minute":ee=_;break;case"second":ee=S}return ee(this.nativeDate,this.toNativeDate(q))}isSameYear(q){return this.isSame(q,"year")}isSameMonth(q){return this.isSame(q,"month")}isSameDay(q){return this.isSame(q,"day")}isSameHour(q){return this.isSame(q,"hour")}isSameMinute(q){return this.isSame(q,"minute")}isSameSecond(q){return this.isSame(q,"second")}isBefore(q,ve="day"){if(null===q)return!1;let ee;switch(ve){case"year":ee=A;break;case"month":ee=k.Z;break;case"day":default:ee=R.Z;break;case"hour":ee=Y;break;case"minute":ee=G;break;case"second":ee=V.Z}return ee(this.nativeDate,this.toNativeDate(q))<0}isBeforeYear(q){return this.isBefore(q,"year")}isBeforeMonth(q){return this.isBefore(q,"month")}isBeforeDay(q){return this.isBefore(q,"day")}isToday(){return function K(Ye){return(0,l.Z)(1,arguments),y(Ye,Date.now())}(this.nativeDate)}isValid(){return(0,te.Z)(this.nativeDate)}isFirstDayOfMonth(){return function ne(Ye){return(0,l.Z)(1,arguments),1===(0,i.Z)(Ye).getDate()}(this.nativeDate)}isLastDayOfMonth(){return(0,fe.Z)(this.nativeDate)}toNativeDate(q){return q instanceof ae?q.nativeDate:q}}class Me{constructor(q,ve){this.format=q,this.localeId=ve,this.regex=null,this.matchMap={hour:null,minute:null,second:null,periodNarrow:null,periodWide:null,periodAbbreviated:null},this.genRegexp()}toDate(q){const ve=this.getTimeResult(q),ee=new Date;return(0,le.DX)(ve?.hour)&&ee.setHours(ve.hour),(0,le.DX)(ve?.minute)&&ee.setMinutes(ve.minute),(0,le.DX)(ve?.second)&&ee.setSeconds(ve.second),1===ve?.period&&ee.getHours()<12&&ee.setHours(ee.getHours()+12),ee}getTimeResult(q){const ve=this.regex.exec(q);let ee=null;return ve?((0,le.DX)(this.matchMap.periodNarrow)&&(ee=(0,be.ol)(this.localeId,be.x.Format,be.Tn.Narrow).indexOf(ve[this.matchMap.periodNarrow+1])),(0,le.DX)(this.matchMap.periodWide)&&(ee=(0,be.ol)(this.localeId,be.x.Format,be.Tn.Wide).indexOf(ve[this.matchMap.periodWide+1])),(0,le.DX)(this.matchMap.periodAbbreviated)&&(ee=(0,be.ol)(this.localeId,be.x.Format,be.Tn.Abbreviated).indexOf(ve[this.matchMap.periodAbbreviated+1])),{hour:(0,le.DX)(this.matchMap.hour)?Number.parseInt(ve[this.matchMap.hour+1],10):null,minute:(0,le.DX)(this.matchMap.minute)?Number.parseInt(ve[this.matchMap.minute+1],10):null,second:(0,le.DX)(this.matchMap.second)?Number.parseInt(ve[this.matchMap.second+1],10):null,period:ee}):null}genRegexp(){let q=this.format.replace(/([.*+?^=!:${}()|[\]\/\\])/g,"\\$&");const ve=/h{1,2}/i,ee=/m{1,2}/,Be=/s{1,2}/,Re=/aaaaa/,ct=/aaaa/,Ae=/a{1,3}/,Mt=ve.exec(this.format),je=ee.exec(this.format),ot=Be.exec(this.format),mt=Re.exec(this.format);let we=null,de=null;mt||(we=ct.exec(this.format)),!we&&!mt&&(de=Ae.exec(this.format)),[Mt,je,ot,mt,we,de].filter(B=>!!B).sort((B,Ee)=>B.index-Ee.index).forEach((B,Ee)=>{switch(B){case Mt:this.matchMap.hour=Ee,q=q.replace(ve,"(\\d{1,2})");break;case je:this.matchMap.minute=Ee,q=q.replace(ee,"(\\d{1,2})");break;case ot:this.matchMap.second=Ee,q=q.replace(Be,"(\\d{1,2})");break;case mt:this.matchMap.periodNarrow=Ee;const Ie=(0,be.ol)(this.localeId,be.x.Format,be.Tn.Narrow).join("|");q=q.replace(Re,`(${Ie})`);break;case we:this.matchMap.periodWide=Ee;const Ne=(0,be.ol)(this.localeId,be.x.Format,be.Tn.Wide).join("|");q=q.replace(ct,`(${Ne})`);break;case de:this.matchMap.periodAbbreviated=Ee;const pt=(0,be.ol)(this.localeId,be.x.Format,be.Tn.Abbreviated).join("|");q=q.replace(Ae,`(${pt})`)}}),this.regex=new RegExp(q)}}},70855:(nt,I,o)=>{"use strict";o.d(I,{a:()=>i,w:()=>t});var e=o(62831),n=o(65879);let t=(()=>{class l{setHiddenAttribute(){this.hidden?this.renderer.setAttribute(this.elementRef.nativeElement,"hidden","string"==typeof this.hidden?this.hidden:""):this.renderer.removeAttribute(this.elementRef.nativeElement,"hidden")}constructor(E,u){this.elementRef=E,this.renderer=u,this.hidden=null,this.renderer.setAttribute(this.elementRef.nativeElement,"hidden","")}ngOnChanges(){this.setHiddenAttribute()}ngAfterViewInit(){this.setHiddenAttribute()}static#e=this.\u0275fac=function(u){return new(u||l)(n.Y36(n.SBq),n.Y36(n.Qsj))};static#t=this.\u0275dir=n.lG2({type:l,selectors:[["","nz-button",""],["nz-button-group"],["","nz-icon",""],["","nz-menu-item",""],["","nz-submenu",""],["nz-select-top-control"],["nz-select-placeholder"],["nz-input-group"]],inputs:{hidden:"hidden"},features:[n.TTD]})}return l})(),i=(()=>{class l{static#e=this.\u0275fac=function(u){return new(u||l)};static#t=this.\u0275mod=n.oAB({type:l});static#n=this.\u0275inj=n.cJS({imports:[e.ud]})}return l})()},94197:(nt,I,o)=>{"use strict";o.d(I,{Zr:()=>t,fP:()=>h,g2:()=>M,kW:()=>z,oH:()=>u});var e=o(65879),n=o(65619);class t{get treeService(){return this.service||this.parentNode&&this.parentNode.treeService}constructor(g,d=null,p=null){if(this._title="",this.level=0,this.parentNode=null,this._icon="",this._children=[],this._isLeaf=!1,this._isChecked=!1,this._isSelectable=!1,this._isDisabled=!1,this._isDisableCheckbox=!1,this._isExpanded=!1,this._isHalfChecked=!1,this._isSelected=!1,this._isLoading=!1,this.canHide=!1,this.isMatched=!1,this.service=null,g instanceof t)return g;this.service=p||null,this.origin=g,this.key=g.key,this.parentNode=d,this._title=g.title||"---",this._icon=g.icon||"",this._isLeaf=g.isLeaf||!1,this._children=[],this._isChecked=g.checked||!1,this._isSelectable=g.disabled||!1!==g.selectable,this._isDisabled=g.disabled||!1,this._isDisableCheckbox=g.disableCheckbox||!1,this._isExpanded=!g.isLeaf&&(g.expanded||!1),this._isHalfChecked=!1,this._isSelected=!g.disabled&&g.selected||!1,this._isLoading=!1,this.isMatched=!1,this.level=d?d.level+1:0,typeof g.children<"u"&&null!==g.children&&g.children.forEach(f=>{const y=this.treeService;y&&!y.isCheckStrictly&&g.checked&&!g.disabled&&!f.disabled&&!f.disableCheckbox&&(f.checked=g.checked),this._children.push(new t(f,this))})}get title(){return this._title}set title(g){this._title=g,this.update()}get icon(){return this._icon}set icon(g){this._icon=g,this.update()}get children(){return this._children}set children(g){this._children=g,this.update()}get isLeaf(){return this._isLeaf}set isLeaf(g){this._isLeaf=g,this.update()}get isChecked(){return this._isChecked}set isChecked(g){this._isChecked=g,this.origin.checked=g,this.afterValueChange("isChecked")}get isHalfChecked(){return this._isHalfChecked}set isHalfChecked(g){this._isHalfChecked=g,this.afterValueChange("isHalfChecked")}get isSelectable(){return this._isSelectable}set isSelectable(g){this._isSelectable=g,this.update()}get isDisabled(){return this._isDisabled}set isDisabled(g){this._isDisabled=g,this.update()}get isDisableCheckbox(){return this._isDisableCheckbox}set isDisableCheckbox(g){this._isDisableCheckbox=g,this.update()}get isExpanded(){return this._isExpanded}set isExpanded(g){this._isExpanded=g,this.origin.expanded=g,this.afterValueChange("isExpanded"),this.afterValueChange("reRender")}get isSelected(){return this._isSelected}set isSelected(g){this._isSelected=g,this.origin.selected=g,this.afterValueChange("isSelected")}get isLoading(){return this._isLoading}set isLoading(g){this._isLoading=g,this.update()}setSyncChecked(g=!1,d=!1){this.setChecked(g,d),this.treeService&&!this.treeService.isCheckStrictly&&this.treeService.conduct(this)}setChecked(g=!1,d=!1){this.origin.checked=g,this.isChecked=g,this.isHalfChecked=d}setExpanded(g){this._isExpanded=g,this.origin.expanded=g,this.afterValueChange("isExpanded")}getParentNode(){return this.parentNode}getChildren(){return this.children}addChildren(g,d=-1){this.isLeaf||(g.forEach(p=>{const f=T=>{T.getChildren().forEach(x=>{x.level=x.getParentNode().level+1,x.origin.level=x.level,f(x)})};let y=p;y instanceof t?y.parentNode=this:y=new t(p,this),y.level=this.level+1,y.origin.level=y.level,f(y);try{-1===d?this.children.push(y):this.children.splice(d,0,y)}catch{}}),this.origin.children=this.getChildren().map(p=>p.origin),this.isLoading=!1),this.afterValueChange("addChildren"),this.afterValueChange("reRender")}clearChildren(){this.afterValueChange("clearChildren"),this.children=[],this.origin.children=[],this.afterValueChange("reRender")}remove(){const g=this.getParentNode();g&&(g.children=g.getChildren().filter(d=>d.key!==this.key),g.origin.children=g.origin.children.filter(d=>d.key!==this.key),this.afterValueChange("remove"),this.afterValueChange("reRender"))}afterValueChange(g){if(this.treeService)switch(g){case"isChecked":this.treeService.setCheckedNodeList(this);break;case"isHalfChecked":this.treeService.setHalfCheckedNodeList(this);break;case"isExpanded":this.treeService.setExpandedNodeList(this);break;case"isSelected":this.treeService.setNodeActive(this);break;case"clearChildren":this.treeService.afterRemove(this.getChildren());break;case"remove":this.treeService.afterRemove([this]);break;case"reRender":this.treeService.flattenTreeData(this.treeService.rootNodes,this.treeService.getExpandedNodeList().map(d=>d.key))}this.update()}update(){this.component&&this.component.markForCheck()}}function i(v){const{isDisabled:g,isDisableCheckbox:d}=v;return!(!g&&!d)}function l(v,g){return g.length>0&&g.indexOf(v)>-1}function u(v=[],g=[]){const d=new Set(!0===g?[]:g),p=[];return function f(y,T=null){return y.map((x,D)=>{const _=function C(v,g){return`${v}-${g}`}(T?T.pos:"0",D),P=function E(v,g){return v??g}(x.key,_);x.isStart=[...T?T.isStart:[],0===D],x.isEnd=[...T?T.isEnd:[],D===y.length-1];const S={parent:T,pos:_,children:[],data:x,isStart:[...T?T.isStart:[],0===D],isEnd:[...T?T.isEnd:[],D===y.length-1]};return p.push(S),S.children=!0===g||d.has(P)||x.isExpanded?f(x.children||[],S):[],S})}(v),p}let z=(()=>{class v{constructor(){this.DRAG_SIDE_RANGE=.25,this.DRAG_MIN_GAP=2,this.isCheckStrictly=!1,this.isMultiple=!1,this.rootNodes=[],this.flattenNodes$=new n.X([]),this.selectedNodeList=[],this.expandedNodeList=[],this.checkedNodeList=[],this.halfCheckedNodeList=[],this.matchedNodeList=[]}initTree(d){this.rootNodes=d,this.expandedNodeList=[],this.selectedNodeList=[],this.halfCheckedNodeList=[],this.checkedNodeList=[],this.matchedNodeList=[]}flattenTreeData(d,p=[]){this.flattenNodes$.next(u(d,p).map(f=>f.data))}getSelectedNode(){return this.selectedNode}getSelectedNodeList(){return this.conductNodeState("select")}getCheckedNodeList(){return this.conductNodeState("check")}getHalfCheckedNodeList(){return this.conductNodeState("halfCheck")}getExpandedNodeList(){return this.conductNodeState("expand")}getMatchedNodeList(){return this.conductNodeState("match")}isArrayOfNzTreeNode(d){return d.every(p=>p instanceof t)}setSelectedNode(d){this.selectedNode=d}setNodeActive(d){!this.isMultiple&&d.isSelected&&(this.selectedNodeList.forEach(p=>{d.key!==p.key&&(p.isSelected=!1)}),this.selectedNodeList=[]),this.setSelectedNodeList(d,this.isMultiple)}setSelectedNodeList(d,p=!1){const f=this.getIndexOfArray(this.selectedNodeList,d.key);p?d.isSelected&&-1===f&&this.selectedNodeList.push(d):d.isSelected&&-1===f&&(this.selectedNodeList=[d]),d.isSelected||(this.selectedNodeList=this.selectedNodeList.filter(y=>y.key!==d.key))}setHalfCheckedNodeList(d){const p=this.getIndexOfArray(this.halfCheckedNodeList,d.key);d.isHalfChecked&&-1===p?this.halfCheckedNodeList.push(d):!d.isHalfChecked&&p>-1&&(this.halfCheckedNodeList=this.halfCheckedNodeList.filter(f=>d.key!==f.key))}setCheckedNodeList(d){const p=this.getIndexOfArray(this.checkedNodeList,d.key);d.isChecked&&-1===p?this.checkedNodeList.push(d):!d.isChecked&&p>-1&&(this.checkedNodeList=this.checkedNodeList.filter(f=>d.key!==f.key))}conductNodeState(d="check"){let p=[];switch(d){case"select":p=this.selectedNodeList;break;case"expand":p=this.expandedNodeList;break;case"match":p=this.matchedNodeList;break;case"check":p=this.checkedNodeList;const f=y=>{const T=y.getParentNode();return!!T&&(this.checkedNodeList.findIndex(x=>x.key===T.key)>-1||f(T))};this.isCheckStrictly||(p=this.checkedNodeList.filter(y=>!f(y)));break;case"halfCheck":this.isCheckStrictly||(p=this.halfCheckedNodeList)}return p}setExpandedNodeList(d){if(d.isLeaf)return;const p=this.getIndexOfArray(this.expandedNodeList,d.key);d.isExpanded&&-1===p?this.expandedNodeList.push(d):!d.isExpanded&&p>-1&&this.expandedNodeList.splice(p,1)}setMatchedNodeList(d){const p=this.getIndexOfArray(this.matchedNodeList,d.key);d.isMatched&&-1===p?this.matchedNodeList.push(d):!d.isMatched&&p>-1&&this.matchedNodeList.splice(p,1)}refreshCheckState(d=!1){d||this.checkedNodeList.forEach(p=>{this.conduct(p,d)})}conduct(d,p=!1){const f=d.isChecked;d&&!p&&(this.conductUp(d),this.conductDown(d,f))}conductUp(d){const p=d.getParentNode();p&&(i(p)||(p.children.every(f=>i(f)||!f.isHalfChecked&&f.isChecked)?(p.isChecked=!0,p.isHalfChecked=!1):p.children.some(f=>f.isHalfChecked||f.isChecked)?(p.isChecked=!1,p.isHalfChecked=!0):(p.isChecked=!1,p.isHalfChecked=!1)),this.setCheckedNodeList(p),this.setHalfCheckedNodeList(p),this.conductUp(p))}conductDown(d,p){i(d)||(d.isChecked=p,d.isHalfChecked=!1,this.setCheckedNodeList(d),this.setHalfCheckedNodeList(d),d.children.forEach(f=>{this.conductDown(f,p)}))}afterRemove(d){const p=f=>{this.selectedNodeList=this.selectedNodeList.filter(y=>y.key!==f.key),this.expandedNodeList=this.expandedNodeList.filter(y=>y.key!==f.key),this.checkedNodeList=this.checkedNodeList.filter(y=>y.key!==f.key),f.children&&f.children.forEach(y=>{p(y)})};d.forEach(f=>{p(f)}),this.refreshCheckState(this.isCheckStrictly)}refreshDragNode(d){0===d.children.length?this.conductUp(d):d.children.forEach(p=>{this.refreshDragNode(p)})}resetNodeLevel(d){const p=d.getParentNode();d.level=p?p.level+1:0;for(const f of d.children)this.resetNodeLevel(f)}calcDropPosition(d){const{clientY:p}=d,{top:f,bottom:y,height:T}=d.target.getBoundingClientRect(),x=Math.max(T*this.DRAG_SIDE_RANGE,this.DRAG_MIN_GAP);return p<=f+x?-1:p>=y-x?1:0}dropAndApply(d,p=-1){if(!d||p>1)return;const f=d.treeService,y=d.getParentNode(),T=this.selectedNode.getParentNode();switch(T?T.children=T.children.filter(x=>x.key!==this.selectedNode.key):this.rootNodes=this.rootNodes.filter(x=>x.key!==this.selectedNode.key),p){case 0:d.addChildren([this.selectedNode]),this.resetNodeLevel(d);break;case-1:case 1:const x=1===p?1:0;if(y){y.addChildren([this.selectedNode],y.children.indexOf(d)+x);const D=this.selectedNode.getParentNode();D&&this.resetNodeLevel(D)}else{const D=this.rootNodes.indexOf(d)+x;this.rootNodes.splice(D,0,this.selectedNode),this.rootNodes[D].parentNode=null,this.resetNodeLevel(this.rootNodes[D])}}this.rootNodes.forEach(x=>{x.treeService||(x.service=f),this.refreshDragNode(x)})}formatEvent(d,p,f){const y={eventName:d,node:p,event:f};switch(d){case"dragstart":case"dragenter":case"dragover":case"dragleave":case"drop":case"dragend":Object.assign(y,{dragNode:this.getSelectedNode()});break;case"click":case"dblclick":Object.assign(y,{selectedKeys:this.selectedNodeList}),Object.assign(y,{nodes:this.selectedNodeList}),Object.assign(y,{keys:this.selectedNodeList.map(x=>x.key)});break;case"check":const T=this.getCheckedNodeList();Object.assign(y,{checkedKeys:T}),Object.assign(y,{nodes:T}),Object.assign(y,{keys:T.map(x=>x.key)});break;case"search":Object.assign(y,{matchedKeys:this.getMatchedNodeList()}),Object.assign(y,{nodes:this.getMatchedNodeList()}),Object.assign(y,{keys:this.getMatchedNodeList().map(x=>x.key)});break;case"expand":Object.assign(y,{nodes:this.expandedNodeList}),Object.assign(y,{keys:this.expandedNodeList.map(x=>x.key)})}return y}getIndexOfArray(d,p){return d.findIndex(f=>f.key===p)}conductCheck(d,p){this.checkedNodeList=[],this.halfCheckedNodeList=[];const f=y=>{y.forEach(T=>{null===d?T.isChecked=!!T.origin.checked:l(T.key,d||[])?(T.isChecked=!0,T.isHalfChecked=!1):(T.isChecked=!1,T.isHalfChecked=!1),T.children.length>0&&f(T.children)})};f(this.rootNodes),this.refreshCheckState(p)}conductExpandedKeys(d=[]){const p=new Set(!0===d?[]:d);this.expandedNodeList=[];const f=y=>{y.forEach(T=>{T.setExpanded(!0===d||p.has(T.key)||!0===T.isExpanded),T.isExpanded&&this.setExpandedNodeList(T),T.children.length>0&&f(T.children)})};f(this.rootNodes)}conductSelectedKeys(d,p){this.selectedNodeList.forEach(y=>y.isSelected=!1),this.selectedNodeList=[];const f=y=>y.every(T=>{if(l(T.key,d)){if(T.isSelected=!0,this.setSelectedNodeList(T),!p)return!1}else T.isSelected=!1;return!(T.children.length>0)||f(T.children)});f(this.rootNodes)}expandNodeAllParentBySearch(d){const p=f=>{if(f&&(f.canHide=!1,f.setExpanded(!0),this.setExpandedNodeList(f),f.getParentNode()))return p(f.getParentNode())};p(d.getParentNode())}static#e=this.\u0275fac=function(p){return new(p||v)};static#t=this.\u0275prov=e.Yz7({token:v,factory:v.\u0275fac})}return v})();const M=new e.OlP("NzTreeHigherOrder");class h{constructor(g){this.nzTreeService=g}coerceTreeNodes(g){let d=[];return d=this.nzTreeService.isArrayOfNzTreeNode(g)?g.map(p=>(p.service=this.nzTreeService,p)):g.map(p=>new t(p,null,this.nzTreeService)),d}getTreeNodes(){return this.nzTreeService.rootNodes}getTreeNodeByKey(g){const d=[],p=f=>{d.push(f),f.getChildren().forEach(y=>{p(y)})};return this.getTreeNodes().forEach(f=>{p(f)}),d.find(f=>f.key===g)||null}getCheckedNodeList(){return this.nzTreeService.getCheckedNodeList()}getSelectedNodeList(){return this.nzTreeService.getSelectedNodeList()}getHalfCheckedNodeList(){return this.nzTreeService.getHalfCheckedNodeList()}getExpandedNodeList(){return this.nzTreeService.getExpandedNodeList()}getMatchedNodeList(){return this.nzTreeService.getMatchedNodeList()}}},27754:(nt,I,o)=>{"use strict";o.d(I,{D8:()=>U,DX:()=>M,GM:()=>q,HH:()=>g,He:()=>f,J8:()=>Ne,Ly:()=>xe,OY:()=>K,Rn:()=>P,Sm:()=>be,WX:()=>y,YM:()=>re,Zu:()=>Vt,cO:()=>u,de:()=>d,hq:()=>Wt,jJ:()=>S,kK:()=>h,lN:()=>Ie,p8:()=>te,pW:()=>A,qR:()=>W,qo:()=>E,rw:()=>T,sw:()=>p,tI:()=>V,te:()=>B,ui:()=>fe,wU:()=>v,wv:()=>R,xV:()=>ne,yF:()=>D,z6:()=>k,zT:()=>le});var e=o(65879),n=o(42495),t=o(1608),i=o(2664),l=o(7715),C=o(22096);function E(st){let He;return He=null==st?[]:Array.isArray(st)?st:[st],He}function u(st,He){if(!st||!He||st.length!==He.length)return!1;const et=st.length;for(let It=0;It"u"||null===st}function v(st,He){if(st===He)return!0;if("object"!=typeof st||!st||"object"!=typeof He||!He)return!1;const et=Object.keys(st),It=Object.keys(He);if(et.length!==It.length)return!1;const Ot=Object.prototype.hasOwnProperty.bind(He);for(let xt=0;xtf(He,st))}function S(st){st.stopPropagation(),st.preventDefault()}function A(st){if(!st.getClientRects().length)return{top:0,left:0};const He=st.getBoundingClientRect(),et=st.ownerDocument.defaultView;return{top:He.top+et.pageYOffset,left:He.left+et.pageXOffset}}function k(st){return st.type.startsWith("touch")}function R(st){return k(st)?st.touches[0]||st.changedTouches[0]:st}function W(st,He="@"){if("string"!=typeof st)return[];const et=function $(st){const He=Array.isArray(st)?st:[st];let et=He.join("").replace(/(\$|\^)/g,"\\$1");return He.length>1&&(et=`[${et}]`),new RegExp(`(\\s|^)(${et})[^\\s]*`,"g")}(He),It=st.match(et);return null!==It?It.map(Ot=>Ot.trim()):[]}function V(st){return!!st&&"function"==typeof st.then&&"function"==typeof st.catch}function K(st,He,et){return(et-st)/(He-st)*100}function te(st){const He=st.toString(),et=He.indexOf(".");return et>=0?He.length-et-1:0}function ne(st,He,et){return isNaN(st)||stet?et:st}function fe(st){return"number"==typeof st&&isFinite(st)}function re(st,He){return Math.round(st*Math.pow(10,He))/Math.pow(10,He)}function be(st,He=0){return st.reduce((et,It)=>et+It,He)}function le(st){st.scrollIntoViewIfNeeded?st.scrollIntoViewIfNeeded(!1):st.scrollIntoView&&st.scrollIntoView(!1)}const ce=["direction","boxSizing","width","height","overflowX","overflowY","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","borderStyle","paddingTop","paddingRight","paddingBottom","paddingLeft","fontStyle","fontVariant","fontWeight","fontStretch","fontSize","fontSizeAdjust","lineHeight","fontFamily","textAlign","textTransform","textIndent","textDecoration","letterSpacing","wordSpacing","tabSize","MozTabSize"],Q=typeof window<"u",ie=Q&&null!=window.mozInnerScreenX,ae=st=>parseInt(st,10);function xe(st,He,et){if(!Q)throw new Error("textarea-caret-position#getCaretCoordinates should only be called in a browser");const It=et&&et.debug||!1;if(It){const ge=document.querySelector("#input-textarea-caret-position-mirror-div");ge&&ge.parentNode.removeChild(ge)}const Ot=document.createElement("div");Ot.id="input-textarea-caret-position-mirror-div",document.body.appendChild(Ot);const xt=Ot.style,Qe=window.getComputedStyle?window.getComputedStyle(st):st.currentStyle,ke="INPUT"===st.nodeName;xt.whiteSpace="pre-wrap",ke||(xt.wordWrap="break-word"),xt.position="absolute",It||(xt.visibility="hidden"),ce.forEach(ge=>{ke&&"lineHeight"===ge?xt.lineHeight=Qe.height:xt[ge]=Qe[ge]}),ie?st.scrollHeight>ae(Qe.height)&&(xt.overflowY="scroll"):xt.overflow="hidden",Ot.textContent=st.value.substring(0,He),ke&&(Ot.textContent=Ot.textContent.replace(/\s/g,"\xa0"));const pe=document.createElement("span");pe.textContent=st.value.substring(He)||".",Ot.appendChild(pe);const qe={top:pe.offsetTop+ae(Qe.borderTopWidth),left:pe.offsetLeft+ae(Qe.borderLeftWidth),height:ae(Qe.lineHeight)};return It?(pe.style.backgroundColor="#eee",function Me(st,He){const et=getComputedStyle(st).getPropertyValue("font-size"),It=document.querySelector("#DEBUG")||document.createElement("div");document.body.appendChild(It),It.id="DEBUG",It.style.position="absolute",It.style.backgroundColor="red",It.style.height=et,It.style.width="1px",It.style.top=`${st.getBoundingClientRect().top-st.scrollTop+window.pageYOffset+He.top}px`,It.style.left=`${st.getBoundingClientRect().left-st.scrollLeft+window.pageXOffset+He.left}px`}(st,qe)):document.body.removeChild(Ot),qe}function q(st){return st?Object.keys(st).map(He=>{const et=st[He];return`${He}:${"string"==typeof et?et:`${et}px`}`}).join(";"):""}let mt,we;const de={position:"absolute",top:"-9999px",width:"50px",height:"50px"};function U(st="vertical",He="ant"){if(typeof document>"u"||typeof window>"u")return 0;const et="vertical"===st;if(et&&mt)return mt;if(!et&&we)return we;const It=document.createElement("div");Object.keys(de).forEach(xt=>{It.style[xt]=de[xt]}),It.className=`${He}-hide-scrollbar scroll-div-append-to-body`,et?It.style.overflowY="scroll":It.style.overflowX="scroll",document.body.appendChild(It);let Ot=0;return et?(Ot=It.offsetWidth-It.clientWidth,mt=Ot):(Ot=It.offsetHeight-It.clientHeight,we=Ot),document.body.removeChild(It),Ot}function B(st,He){return st&&st"STYLE"===It.tagName&&It.getAttribute(Dt(He))===st)}(He,et);if(Ot)return et.cspNonce&&Ot.nonce!==et.cspNonce&&(Ot.nonce=et.cspNonce),Ot.innerHTML!==st&&(Ot.innerHTML=st),Ot;const xt=Ut(st,et);return xt?.setAttribute(Dt(et),He),xt}function Vt(st,He,et){return{[`${st}-status-success`]:"success"===He,[`${st}-status-warning`]:"warning"===He,[`${st}-status-error`]:"error"===He,[`${st}-status-validating`]:"validating"===He,[`${st}-has-feedback`]:et}}},41958:(nt,I,o)=>{"use strict";o.d(I,{dQ:()=>E,vG:()=>u});var e=o(62831),n=o(65879);class t{get waveAttributeName(){return this.insertExtraNode?"ant-click-animating":"ant-click-animating-without-extra-node"}constructor(M,h,v,g,d){this.triggerElement=M,this.ngZone=h,this.insertExtraNode=v,this.platformId=g,this.cspNonce=d,this.waveTransitionDuration=400,this.styleForPseudo=null,this.extraNode=null,this.lastTime=0,this.onClick=p=>{!this.triggerElement||!this.triggerElement.getAttribute||this.triggerElement.getAttribute("disabled")||"INPUT"===p.target.tagName||this.triggerElement.className.indexOf("disabled")>=0||this.fadeOutWave()},this.platform=new e.t4(this.platformId),this.clickHandler=this.onClick.bind(this),this.bindTriggerEvent()}bindTriggerEvent(){this.platform.isBrowser&&this.ngZone.runOutsideAngular(()=>{this.removeTriggerEvent(),this.triggerElement&&this.triggerElement.addEventListener("click",this.clickHandler,!0)})}removeTriggerEvent(){this.triggerElement&&this.triggerElement.removeEventListener("click",this.clickHandler,!0)}removeStyleAndExtraNode(){this.styleForPseudo&&document.body.contains(this.styleForPseudo)&&(document.body.removeChild(this.styleForPseudo),this.styleForPseudo=null),this.insertExtraNode&&this.triggerElement.contains(this.extraNode)&&this.triggerElement.removeChild(this.extraNode)}destroy(){this.removeTriggerEvent(),this.removeStyleAndExtraNode()}fadeOutWave(){const M=this.triggerElement,h=this.getWaveColor(M);M.setAttribute(this.waveAttributeName,"true"),!(Date.now(){M.removeAttribute(this.waveAttributeName),this.removeStyleAndExtraNode()},this.waveTransitionDuration))}isValidColor(M){return!!M&&"#ffffff"!==M&&"rgb(255, 255, 255)"!==M&&this.isNotGrey(M)&&!/rgba\(\d*, \d*, \d*, 0\)/.test(M)&&"transparent"!==M}isNotGrey(M){const h=M.match(/rgba?\((\d*), (\d*), (\d*)(, [\.\d]*)?\)/);return!(h&&h[1]&&h[2]&&h[3]&&h[1]===h[2]&&h[2]===h[3])}getWaveColor(M){const h=getComputedStyle(M);return h.getPropertyValue("border-top-color")||h.getPropertyValue("border-color")||h.getPropertyValue("background-color")}runTimeoutOutsideZone(M,h){this.ngZone.runOutsideAngular(()=>setTimeout(M,h))}}const i={disabled:!1},l=new n.OlP("nz-wave-global-options");function C(z){return(0,n.MR2)([{provide:l,useValue:z}])}let E=(()=>{class z{get disabled(){return this.waveDisabled}get rendererRef(){return this.waveRenderer}constructor(h,v,g,d,p,f){this.ngZone=h,this.elementRef=v,this.config=g,this.animationType=d,this.platformId=p,this.cspNonce=f,this.nzWaveExtraNode=!1,this.waveDisabled=!1,this.waveDisabled=this.isConfigDisabled()}isConfigDisabled(){let h=!1;return this.config&&"boolean"==typeof this.config.disabled&&(h=this.config.disabled),"NoopAnimations"===this.animationType&&(h=!0),h}ngOnDestroy(){this.waveRenderer&&this.waveRenderer.destroy()}ngOnInit(){this.renderWaveIfEnabled()}renderWaveIfEnabled(){!this.waveDisabled&&this.elementRef.nativeElement&&(this.waveRenderer=new t(this.elementRef.nativeElement,this.ngZone,this.nzWaveExtraNode,this.platformId,this.cspNonce))}disable(){this.waveDisabled=!0,this.waveRenderer&&(this.waveRenderer.removeTriggerEvent(),this.waveRenderer.removeStyleAndExtraNode())}enable(){this.waveDisabled=this.isConfigDisabled()||!1,this.waveRenderer&&this.waveRenderer.bindTriggerEvent()}static#e=this.\u0275fac=function(v){return new(v||z)(n.Y36(n.R0b),n.Y36(n.SBq),n.Y36(l,8),n.Y36(n.QbO,8),n.Y36(n.Lbi),n.Y36(n.Ojb,8))};static#t=this.\u0275dir=n.lG2({type:z,selectors:[["","nz-wave",""],["button","nz-button","",3,"nzType","link",3,"nzType","text"]],inputs:{nzWaveExtraNode:"nzWaveExtraNode"},exportAs:["nzWave"]})}return z})(),u=(()=>{class z{static#e=this.\u0275fac=function(v){return new(v||z)};static#t=this.\u0275mod=n.oAB({type:z});static#n=this.\u0275inj=n.cJS({providers:[C(i)],imports:[e.ud]})}return z})()},52682:(nt,I,o)=>{"use strict";o.d(I,{Hb:()=>Os,Mq:()=>Ai,Xv:()=>Ro,mr:()=>lo,uw:()=>no,wS:()=>Fi});var e=o(49388),n=o(33651),t=o(96814),i=o(65879),l=o(60095),C=o(42840),E=o(50883),u=o(331),z=o(8324),M=o(85448),h=o(90551),v=o(60047),g=o(3945),d=o(27754),p=o(12131),f=o(70855),y=o(41958),T=o(97582),x=o(36028),D=o(97328),_=o(78645),P=o(63019),S=o(92438),A=o(22096),k=o(59773),R=o(93997),$=o(42460),W=o(37398),ze=o(64194),Y=o(83064),G=o(99087),V=o(28802),K=o(62831);function te(rt,Gt){1&rt&&i.GkF(0)}function ne(rt,Gt){if(1&rt&&(i.ynx(0),i.YNc(1,te,1,0,"ng-container",4),i.BQk()),2&rt){const Z=i.oxw(2);i.xp6(1),i.Q6J("ngTemplateOutlet",Z.extraFooter)}}function fe(rt,Gt){if(1&rt&&(i.ynx(0),i._UZ(1,"span",5),i.BQk()),2&rt){const Z=i.oxw(2);i.xp6(1),i.Q6J("innerHTML",Z.extraFooter,i.oJD)}}function re(rt,Gt){if(1&rt&&(i.TgZ(0,"div"),i.ynx(1,2),i.YNc(2,ne,2,1,"ng-container",3),i.YNc(3,fe,2,1,"ng-container",3),i.BQk(),i.qZA()),2&rt){const Z=i.oxw();i.Gre("",Z.prefixCls,"-footer-extra"),i.xp6(1),i.Q6J("ngSwitch",!0),i.xp6(1),i.Q6J("ngSwitchCase",Z.isTemplateRef(Z.extraFooter)),i.xp6(1),i.Q6J("ngSwitchCase",Z.isNonEmptyString(Z.extraFooter))}}function be(rt,Gt){if(1&rt){const Z=i.EpF();i.TgZ(0,"a",6),i.NdJ("click",function(){i.CHM(Z);const vt=i.oxw();return i.KtG(vt.isTodayDisabled?null:vt.onClickToday())}),i._uU(1),i.qZA()}if(2&rt){const Z=i.oxw();i.MT6("",Z.prefixCls,"-today-btn ",Z.isTodayDisabled?Z.prefixCls+"-today-btn-disabled":"",""),i.s9C("title",Z.todayTitle),i.xp6(1),i.hij(" ",Z.locale.today," ")}}function le(rt,Gt){1&rt&&i.GkF(0)}function ce(rt,Gt){if(1&rt){const Z=i.EpF();i.TgZ(0,"li")(1,"a",7),i.NdJ("click",function(){i.CHM(Z);const vt=i.oxw(2);return i.KtG(vt.isTodayDisabled?null:vt.onClickToday())}),i._uU(2),i.qZA()()}if(2&rt){const Z=i.oxw(2);i.Gre("",Z.prefixCls,"-now"),i.xp6(1),i.Gre("",Z.prefixCls,"-now-btn"),i.xp6(1),i.hij(" ",Z.locale.now," ")}}function Q(rt,Gt){if(1&rt){const Z=i.EpF();i.TgZ(0,"li")(1,"button",8),i.NdJ("click",function(){i.CHM(Z);const vt=i.oxw(2);return i.KtG(vt.okDisabled?null:vt.clickOk.emit())}),i._uU(2),i.qZA()()}if(2&rt){const Z=i.oxw(2);i.Gre("",Z.prefixCls,"-ok"),i.xp6(1),i.Q6J("disabled",Z.okDisabled),i.xp6(1),i.hij(" ",Z.locale.ok," ")}}function ie(rt,Gt){if(1&rt&&(i.TgZ(0,"ul"),i.YNc(1,le,1,0,"ng-container",4),i.YNc(2,ce,3,7,"li",0),i.YNc(3,Q,3,5,"li",0),i.qZA()),2&rt){const Z=i.oxw();i.Gre("",Z.prefixCls,"-ranges"),i.xp6(1),i.Q6J("ngTemplateOutlet",Z.rangeQuickSelector),i.xp6(1),i.Q6J("ngIf",Z.showNow),i.xp6(1),i.Q6J("ngIf",Z.hasTimePicker)}}function ae(rt,Gt){if(1&rt){const Z=i.EpF();i.ynx(0),i.TgZ(1,"button",6),i.NdJ("click",function(){const $t=i.CHM(Z).$implicit;return i.KtG($t.onClick())}),i._uU(2),i.qZA(),i.BQk()}if(2&rt){const Z=Gt.$implicit;i.xp6(1),i.Tol(Z.className),i.s9C("title",Z.title||null),i.xp6(1),i.hij(" ",Z.label," ")}}function xe(rt,Gt){1&rt&&i._UZ(0,"th",6)}function Me(rt,Gt){if(1&rt&&(i.TgZ(0,"th",7),i._uU(1),i.qZA()),2&rt){const Z=Gt.$implicit;i.s9C("title",Z.title),i.xp6(1),i.hij(" ",Z.content," ")}}function Ye(rt,Gt){if(1&rt&&(i.TgZ(0,"thead")(1,"tr",3),i.YNc(2,xe,1,0,"th",4),i.YNc(3,Me,2,2,"th",5),i.qZA()()),2&rt){const Z=i.oxw();i.xp6(2),i.Q6J("ngIf",Z.showWeek),i.xp6(1),i.Q6J("ngForOf",Z.headRow)}}function q(rt,Gt){if(1&rt&&(i.TgZ(0,"td",11),i._uU(1),i.qZA()),2&rt){const Z=i.oxw().$implicit,dt=i.oxw();i.Gre("",dt.prefixCls,"-cell-week"),i.xp6(1),i.hij(" ",Z.weekNum," ")}}function ve(rt,Gt){1&rt&&i.GkF(0)}const ee=function(rt){return{$implicit:rt}};function Be(rt,Gt){if(1&rt&&(i.ynx(0),i.YNc(1,ve,1,0,"ng-container",16),i.BQk()),2&rt){const Z=i.oxw(2).$implicit;i.xp6(1),i.Q6J("ngTemplateOutlet",Z.cellRender)("ngTemplateOutletContext",i.VKq(2,ee,Z.value))}}function Re(rt,Gt){if(1&rt&&(i.ynx(0),i._UZ(1,"span",17),i.BQk()),2&rt){const Z=i.oxw(2).$implicit;i.xp6(1),i.Q6J("innerHTML",Z.cellRender,i.oJD)}}function ct(rt,Gt){if(1&rt&&(i.ynx(0),i.TgZ(1,"div"),i._uU(2),i.qZA(),i.BQk()),2&rt){const Z=i.oxw(2).$implicit,dt=i.oxw(2);i.xp6(1),i.Gre("",dt.prefixCls,"-cell-inner"),i.uIk("aria-selected",Z.isSelected)("aria-disabled",Z.isDisabled),i.xp6(1),i.hij(" ",Z.content," ")}}function Ae(rt,Gt){if(1&rt&&(i.ynx(0)(1,13),i.YNc(2,Be,2,4,"ng-container",14),i.YNc(3,Re,2,1,"ng-container",14),i.YNc(4,ct,3,6,"ng-container",15),i.BQk()()),2&rt){const Z=i.oxw().$implicit,dt=i.oxw(2);i.xp6(1),i.Q6J("ngSwitch",!0),i.xp6(1),i.Q6J("ngSwitchCase",dt.isTemplateRef(Z.cellRender)),i.xp6(1),i.Q6J("ngSwitchCase",dt.isNonEmptyString(Z.cellRender))}}function Mt(rt,Gt){1&rt&&i.GkF(0)}function je(rt,Gt){if(1&rt&&(i.ynx(0),i.YNc(1,Mt,1,0,"ng-container",16),i.BQk()),2&rt){const Z=i.oxw(2).$implicit;i.xp6(1),i.Q6J("ngTemplateOutlet",Z.fullCellRender)("ngTemplateOutletContext",i.VKq(2,ee,Z.value))}}function ot(rt,Gt){1&rt&&i.GkF(0)}function mt(rt,Gt){if(1&rt&&(i.TgZ(0,"div"),i._uU(1),i.qZA(),i.TgZ(2,"div"),i.YNc(3,ot,1,0,"ng-container",16),i.qZA()),2&rt){const Z=i.oxw(2).$implicit,dt=i.oxw(2);i.Gre("",dt.prefixCls,"-date-value"),i.xp6(1),i.Oqu(Z.content),i.xp6(1),i.Gre("",dt.prefixCls,"-date-content"),i.xp6(1),i.Q6J("ngTemplateOutlet",Z.cellRender)("ngTemplateOutletContext",i.VKq(9,ee,Z.value))}}function we(rt,Gt){if(1&rt&&(i.ynx(0),i.TgZ(1,"div"),i.YNc(2,je,2,4,"ng-container",18),i.YNc(3,mt,4,11,"ng-template",null,19,i.W1O),i.qZA(),i.BQk()),2&rt){const Z=i.MAs(4),dt=i.oxw().$implicit,vt=i.oxw(2);i.xp6(1),i.Gre("",vt.prefixCls,"-date ant-picker-cell-inner"),i.ekj("ant-picker-calendar-date-today",dt.isToday),i.xp6(1),i.Q6J("ngIf",dt.fullCellRender)("ngIfElse",Z)}}function de(rt,Gt){if(1&rt){const Z=i.EpF();i.TgZ(0,"td",12),i.NdJ("click",function(){const $t=i.CHM(Z).$implicit;return i.KtG($t.isDisabled?null:$t.onClick())})("mouseenter",function(){const $t=i.CHM(Z).$implicit;return i.KtG($t.onMouseEnter())}),i.ynx(1,13),i.YNc(2,Ae,5,3,"ng-container",14),i.YNc(3,we,5,7,"ng-container",14),i.BQk(),i.qZA()}if(2&rt){const Z=Gt.$implicit,dt=i.oxw(2);i.s9C("title",Z.title),i.Q6J("ngClass",Z.classMap),i.xp6(1),i.Q6J("ngSwitch",dt.prefixCls),i.xp6(1),i.Q6J("ngSwitchCase","ant-picker"),i.xp6(1),i.Q6J("ngSwitchCase","ant-picker-calendar")}}function U(rt,Gt){if(1&rt&&(i.TgZ(0,"tr",8),i.YNc(1,q,2,4,"td",9),i.YNc(2,de,4,5,"td",10),i.qZA()),2&rt){const Z=Gt.$implicit,dt=i.oxw();i.Q6J("ngClass",Z.classMap),i.xp6(1),i.Q6J("ngIf",Z.weekNum),i.xp6(1),i.Q6J("ngForOf",Z.dateCells)("ngForTrackBy",dt.trackByBodyColumn)}}function B(rt,Gt){if(1&rt){const Z=i.EpF();i.ynx(0),i.TgZ(1,"button",6),i.NdJ("click",function(){const $t=i.CHM(Z).$implicit;return i.KtG($t.onClick())}),i._uU(2),i.qZA(),i.BQk()}if(2&rt){const Z=Gt.$implicit;i.xp6(1),i.Tol(Z.className),i.s9C("title",Z.title||null),i.xp6(1),i.hij(" ",Z.label," ")}}function Ee(rt,Gt){1&rt&&i._UZ(0,"th",6)}function Ie(rt,Gt){if(1&rt&&(i.TgZ(0,"th",7),i._uU(1),i.qZA()),2&rt){const Z=Gt.$implicit;i.s9C("title",Z.title),i.xp6(1),i.hij(" ",Z.content," ")}}function Ne(rt,Gt){if(1&rt&&(i.TgZ(0,"thead")(1,"tr",3),i.YNc(2,Ee,1,0,"th",4),i.YNc(3,Ie,2,2,"th",5),i.qZA()()),2&rt){const Z=i.oxw();i.xp6(2),i.Q6J("ngIf",Z.showWeek),i.xp6(1),i.Q6J("ngForOf",Z.headRow)}}function pt(rt,Gt){if(1&rt&&(i.TgZ(0,"td",11),i._uU(1),i.qZA()),2&rt){const Z=i.oxw().$implicit,dt=i.oxw();i.Gre("",dt.prefixCls,"-cell-week"),i.xp6(1),i.hij(" ",Z.weekNum," ")}}function Dt(rt,Gt){1&rt&&i.GkF(0)}function Lt(rt,Gt){if(1&rt&&(i.ynx(0),i.YNc(1,Dt,1,0,"ng-container",16),i.BQk()),2&rt){const Z=i.oxw(2).$implicit;i.xp6(1),i.Q6J("ngTemplateOutlet",Z.cellRender)("ngTemplateOutletContext",i.VKq(2,ee,Z.value))}}function Ut(rt,Gt){if(1&rt&&(i.ynx(0),i._UZ(1,"span",17),i.BQk()),2&rt){const Z=i.oxw(2).$implicit;i.xp6(1),i.Q6J("innerHTML",Z.cellRender,i.oJD)}}function qt(rt,Gt){if(1&rt&&(i.ynx(0),i.TgZ(1,"div"),i._uU(2),i.qZA(),i.BQk()),2&rt){const Z=i.oxw(2).$implicit,dt=i.oxw(2);i.xp6(1),i.Gre("",dt.prefixCls,"-cell-inner"),i.uIk("aria-selected",Z.isSelected)("aria-disabled",Z.isDisabled),i.xp6(1),i.hij(" ",Z.content," ")}}function en(rt,Gt){if(1&rt&&(i.ynx(0)(1,13),i.YNc(2,Lt,2,4,"ng-container",14),i.YNc(3,Ut,2,1,"ng-container",14),i.YNc(4,qt,3,6,"ng-container",15),i.BQk()()),2&rt){const Z=i.oxw().$implicit,dt=i.oxw(2);i.xp6(1),i.Q6J("ngSwitch",!0),i.xp6(1),i.Q6J("ngSwitchCase",dt.isTemplateRef(Z.cellRender)),i.xp6(1),i.Q6J("ngSwitchCase",dt.isNonEmptyString(Z.cellRender))}}function cn(rt,Gt){1&rt&&i.GkF(0)}function Wt(rt,Gt){if(1&rt&&(i.ynx(0),i.YNc(1,cn,1,0,"ng-container",16),i.BQk()),2&rt){const Z=i.oxw(2).$implicit;i.xp6(1),i.Q6J("ngTemplateOutlet",Z.fullCellRender)("ngTemplateOutletContext",i.VKq(2,ee,Z.value))}}function Vt(rt,Gt){1&rt&&i.GkF(0)}function st(rt,Gt){if(1&rt&&(i.TgZ(0,"div"),i._uU(1),i.qZA(),i.TgZ(2,"div"),i.YNc(3,Vt,1,0,"ng-container",16),i.qZA()),2&rt){const Z=i.oxw(2).$implicit,dt=i.oxw(2);i.Gre("",dt.prefixCls,"-date-value"),i.xp6(1),i.Oqu(Z.content),i.xp6(1),i.Gre("",dt.prefixCls,"-date-content"),i.xp6(1),i.Q6J("ngTemplateOutlet",Z.cellRender)("ngTemplateOutletContext",i.VKq(9,ee,Z.value))}}function He(rt,Gt){if(1&rt&&(i.ynx(0),i.TgZ(1,"div"),i.YNc(2,Wt,2,4,"ng-container",18),i.YNc(3,st,4,11,"ng-template",null,19,i.W1O),i.qZA(),i.BQk()),2&rt){const Z=i.MAs(4),dt=i.oxw().$implicit,vt=i.oxw(2);i.xp6(1),i.Gre("",vt.prefixCls,"-date ant-picker-cell-inner"),i.ekj("ant-picker-calendar-date-today",dt.isToday),i.xp6(1),i.Q6J("ngIf",dt.fullCellRender)("ngIfElse",Z)}}function et(rt,Gt){if(1&rt){const Z=i.EpF();i.TgZ(0,"td",12),i.NdJ("click",function(){const $t=i.CHM(Z).$implicit;return i.KtG($t.isDisabled?null:$t.onClick())})("mouseenter",function(){const $t=i.CHM(Z).$implicit;return i.KtG($t.onMouseEnter())}),i.ynx(1,13),i.YNc(2,en,5,3,"ng-container",14),i.YNc(3,He,5,7,"ng-container",14),i.BQk(),i.qZA()}if(2&rt){const Z=Gt.$implicit,dt=i.oxw(2);i.s9C("title",Z.title),i.Q6J("ngClass",Z.classMap),i.xp6(1),i.Q6J("ngSwitch",dt.prefixCls),i.xp6(1),i.Q6J("ngSwitchCase","ant-picker"),i.xp6(1),i.Q6J("ngSwitchCase","ant-picker-calendar")}}function It(rt,Gt){if(1&rt&&(i.TgZ(0,"tr",8),i.YNc(1,pt,2,4,"td",9),i.YNc(2,et,4,5,"td",10),i.qZA()),2&rt){const Z=Gt.$implicit,dt=i.oxw();i.Q6J("ngClass",Z.classMap),i.xp6(1),i.Q6J("ngIf",Z.weekNum),i.xp6(1),i.Q6J("ngForOf",Z.dateCells)("ngForTrackBy",dt.trackByBodyColumn)}}function Ot(rt,Gt){if(1&rt){const Z=i.EpF();i.ynx(0),i.TgZ(1,"button",6),i.NdJ("click",function(){const $t=i.CHM(Z).$implicit;return i.KtG($t.onClick())}),i._uU(2),i.qZA(),i.BQk()}if(2&rt){const Z=Gt.$implicit;i.xp6(1),i.Tol(Z.className),i.s9C("title",Z.title||null),i.xp6(1),i.hij(" ",Z.label," ")}}function xt(rt,Gt){1&rt&&i._UZ(0,"th",6)}function Qe(rt,Gt){if(1&rt&&(i.TgZ(0,"th",7),i._uU(1),i.qZA()),2&rt){const Z=Gt.$implicit;i.s9C("title",Z.title),i.xp6(1),i.hij(" ",Z.content," ")}}function ke(rt,Gt){if(1&rt&&(i.TgZ(0,"thead")(1,"tr",3),i.YNc(2,xt,1,0,"th",4),i.YNc(3,Qe,2,2,"th",5),i.qZA()()),2&rt){const Z=i.oxw();i.xp6(2),i.Q6J("ngIf",Z.showWeek),i.xp6(1),i.Q6J("ngForOf",Z.headRow)}}function pe(rt,Gt){if(1&rt&&(i.TgZ(0,"td",11),i._uU(1),i.qZA()),2&rt){const Z=i.oxw().$implicit,dt=i.oxw();i.Gre("",dt.prefixCls,"-cell-week"),i.xp6(1),i.hij(" ",Z.weekNum," ")}}function qe(rt,Gt){1&rt&&i.GkF(0)}function ge(rt,Gt){if(1&rt&&(i.ynx(0),i.YNc(1,qe,1,0,"ng-container",16),i.BQk()),2&rt){const Z=i.oxw(2).$implicit;i.xp6(1),i.Q6J("ngTemplateOutlet",Z.cellRender)("ngTemplateOutletContext",i.VKq(2,ee,Z.value))}}function Ze(rt,Gt){if(1&rt&&(i.ynx(0),i._UZ(1,"span",17),i.BQk()),2&rt){const Z=i.oxw(2).$implicit;i.xp6(1),i.Q6J("innerHTML",Z.cellRender,i.oJD)}}function $e(rt,Gt){if(1&rt&&(i.ynx(0),i.TgZ(1,"div"),i._uU(2),i.qZA(),i.BQk()),2&rt){const Z=i.oxw(2).$implicit,dt=i.oxw(2);i.xp6(1),i.Gre("",dt.prefixCls,"-cell-inner"),i.uIk("aria-selected",Z.isSelected)("aria-disabled",Z.isDisabled),i.xp6(1),i.hij(" ",Z.content," ")}}function Ue(rt,Gt){if(1&rt&&(i.ynx(0)(1,13),i.YNc(2,ge,2,4,"ng-container",14),i.YNc(3,Ze,2,1,"ng-container",14),i.YNc(4,$e,3,6,"ng-container",15),i.BQk()()),2&rt){const Z=i.oxw().$implicit,dt=i.oxw(2);i.xp6(1),i.Q6J("ngSwitch",!0),i.xp6(1),i.Q6J("ngSwitchCase",dt.isTemplateRef(Z.cellRender)),i.xp6(1),i.Q6J("ngSwitchCase",dt.isNonEmptyString(Z.cellRender))}}function wt(rt,Gt){1&rt&&i.GkF(0)}function De(rt,Gt){if(1&rt&&(i.ynx(0),i.YNc(1,wt,1,0,"ng-container",16),i.BQk()),2&rt){const Z=i.oxw(2).$implicit;i.xp6(1),i.Q6J("ngTemplateOutlet",Z.fullCellRender)("ngTemplateOutletContext",i.VKq(2,ee,Z.value))}}function Pe(rt,Gt){1&rt&&i.GkF(0)}function Je(rt,Gt){if(1&rt&&(i.TgZ(0,"div"),i._uU(1),i.qZA(),i.TgZ(2,"div"),i.YNc(3,Pe,1,0,"ng-container",16),i.qZA()),2&rt){const Z=i.oxw(2).$implicit,dt=i.oxw(2);i.Gre("",dt.prefixCls,"-date-value"),i.xp6(1),i.Oqu(Z.content),i.xp6(1),i.Gre("",dt.prefixCls,"-date-content"),i.xp6(1),i.Q6J("ngTemplateOutlet",Z.cellRender)("ngTemplateOutletContext",i.VKq(9,ee,Z.value))}}function Ge(rt,Gt){if(1&rt&&(i.ynx(0),i.TgZ(1,"div"),i.YNc(2,De,2,4,"ng-container",18),i.YNc(3,Je,4,11,"ng-template",null,19,i.W1O),i.qZA(),i.BQk()),2&rt){const Z=i.MAs(4),dt=i.oxw().$implicit,vt=i.oxw(2);i.xp6(1),i.Gre("",vt.prefixCls,"-date ant-picker-cell-inner"),i.ekj("ant-picker-calendar-date-today",dt.isToday),i.xp6(1),i.Q6J("ngIf",dt.fullCellRender)("ngIfElse",Z)}}function Ke(rt,Gt){if(1&rt){const Z=i.EpF();i.TgZ(0,"td",12),i.NdJ("click",function(){const $t=i.CHM(Z).$implicit;return i.KtG($t.isDisabled?null:$t.onClick())})("mouseenter",function(){const $t=i.CHM(Z).$implicit;return i.KtG($t.onMouseEnter())}),i.ynx(1,13),i.YNc(2,Ue,5,3,"ng-container",14),i.YNc(3,Ge,5,7,"ng-container",14),i.BQk(),i.qZA()}if(2&rt){const Z=Gt.$implicit,dt=i.oxw(2);i.s9C("title",Z.title),i.Q6J("ngClass",Z.classMap),i.xp6(1),i.Q6J("ngSwitch",dt.prefixCls),i.xp6(1),i.Q6J("ngSwitchCase","ant-picker"),i.xp6(1),i.Q6J("ngSwitchCase","ant-picker-calendar")}}function _e(rt,Gt){if(1&rt&&(i.TgZ(0,"tr",8),i.YNc(1,pe,2,4,"td",9),i.YNc(2,Ke,4,5,"td",10),i.qZA()),2&rt){const Z=Gt.$implicit,dt=i.oxw();i.Q6J("ngClass",Z.classMap),i.xp6(1),i.Q6J("ngIf",Z.weekNum),i.xp6(1),i.Q6J("ngForOf",Z.dateCells)("ngForTrackBy",dt.trackByBodyColumn)}}function it(rt,Gt){if(1&rt){const Z=i.EpF();i.ynx(0),i.TgZ(1,"button",6),i.NdJ("click",function(){const $t=i.CHM(Z).$implicit;return i.KtG($t.onClick())}),i._uU(2),i.qZA(),i.BQk()}if(2&rt){const Z=Gt.$implicit;i.xp6(1),i.Tol(Z.className),i.s9C("title",Z.title||null),i.xp6(1),i.hij(" ",Z.label," ")}}function b(rt,Gt){1&rt&&i._UZ(0,"th",6)}function N(rt,Gt){if(1&rt&&(i.TgZ(0,"th",7),i._uU(1),i.qZA()),2&rt){const Z=Gt.$implicit;i.s9C("title",Z.title),i.xp6(1),i.hij(" ",Z.content," ")}}function O(rt,Gt){if(1&rt&&(i.TgZ(0,"thead")(1,"tr",3),i.YNc(2,b,1,0,"th",4),i.YNc(3,N,2,2,"th",5),i.qZA()()),2&rt){const Z=i.oxw();i.xp6(2),i.Q6J("ngIf",Z.showWeek),i.xp6(1),i.Q6J("ngForOf",Z.headRow)}}function j(rt,Gt){if(1&rt&&(i.TgZ(0,"td",11),i._uU(1),i.qZA()),2&rt){const Z=i.oxw().$implicit,dt=i.oxw();i.Gre("",dt.prefixCls,"-cell-week"),i.xp6(1),i.hij(" ",Z.weekNum," ")}}function L(rt,Gt){1&rt&&i.GkF(0)}function he(rt,Gt){if(1&rt&&(i.ynx(0),i.YNc(1,L,1,0,"ng-container",16),i.BQk()),2&rt){const Z=i.oxw(2).$implicit;i.xp6(1),i.Q6J("ngTemplateOutlet",Z.cellRender)("ngTemplateOutletContext",i.VKq(2,ee,Z.value))}}function Ce(rt,Gt){if(1&rt&&(i.ynx(0),i._UZ(1,"span",17),i.BQk()),2&rt){const Z=i.oxw(2).$implicit;i.xp6(1),i.Q6J("innerHTML",Z.cellRender,i.oJD)}}function bt(rt,Gt){if(1&rt&&(i.ynx(0),i.TgZ(1,"div"),i._uU(2),i.qZA(),i.BQk()),2&rt){const Z=i.oxw(2).$implicit,dt=i.oxw(2);i.xp6(1),i.Gre("",dt.prefixCls,"-cell-inner"),i.uIk("aria-selected",Z.isSelected)("aria-disabled",Z.isDisabled),i.xp6(1),i.hij(" ",Z.content," ")}}function Ft(rt,Gt){if(1&rt&&(i.ynx(0)(1,13),i.YNc(2,he,2,4,"ng-container",14),i.YNc(3,Ce,2,1,"ng-container",14),i.YNc(4,bt,3,6,"ng-container",15),i.BQk()()),2&rt){const Z=i.oxw().$implicit,dt=i.oxw(2);i.xp6(1),i.Q6J("ngSwitch",!0),i.xp6(1),i.Q6J("ngSwitchCase",dt.isTemplateRef(Z.cellRender)),i.xp6(1),i.Q6J("ngSwitchCase",dt.isNonEmptyString(Z.cellRender))}}function sn(rt,Gt){1&rt&&i.GkF(0)}function pn(rt,Gt){if(1&rt&&(i.ynx(0),i.YNc(1,sn,1,0,"ng-container",16),i.BQk()),2&rt){const Z=i.oxw(2).$implicit;i.xp6(1),i.Q6J("ngTemplateOutlet",Z.fullCellRender)("ngTemplateOutletContext",i.VKq(2,ee,Z.value))}}function vn(rt,Gt){1&rt&&i.GkF(0)}function Dn(rt,Gt){if(1&rt&&(i.TgZ(0,"div"),i._uU(1),i.qZA(),i.TgZ(2,"div"),i.YNc(3,vn,1,0,"ng-container",16),i.qZA()),2&rt){const Z=i.oxw(2).$implicit,dt=i.oxw(2);i.Gre("",dt.prefixCls,"-date-value"),i.xp6(1),i.Oqu(Z.content),i.xp6(1),i.Gre("",dt.prefixCls,"-date-content"),i.xp6(1),i.Q6J("ngTemplateOutlet",Z.cellRender)("ngTemplateOutletContext",i.VKq(9,ee,Z.value))}}function Mn(rt,Gt){if(1&rt&&(i.ynx(0),i.TgZ(1,"div"),i.YNc(2,pn,2,4,"ng-container",18),i.YNc(3,Dn,4,11,"ng-template",null,19,i.W1O),i.qZA(),i.BQk()),2&rt){const Z=i.MAs(4),dt=i.oxw().$implicit,vt=i.oxw(2);i.xp6(1),i.Gre("",vt.prefixCls,"-date ant-picker-cell-inner"),i.ekj("ant-picker-calendar-date-today",dt.isToday),i.xp6(1),i.Q6J("ngIf",dt.fullCellRender)("ngIfElse",Z)}}function En(rt,Gt){if(1&rt){const Z=i.EpF();i.TgZ(0,"td",12),i.NdJ("click",function(){const $t=i.CHM(Z).$implicit;return i.KtG($t.isDisabled?null:$t.onClick())})("mouseenter",function(){const $t=i.CHM(Z).$implicit;return i.KtG($t.onMouseEnter())}),i.ynx(1,13),i.YNc(2,Ft,5,3,"ng-container",14),i.YNc(3,Mn,5,7,"ng-container",14),i.BQk(),i.qZA()}if(2&rt){const Z=Gt.$implicit,dt=i.oxw(2);i.s9C("title",Z.title),i.Q6J("ngClass",Z.classMap),i.xp6(1),i.Q6J("ngSwitch",dt.prefixCls),i.xp6(1),i.Q6J("ngSwitchCase","ant-picker"),i.xp6(1),i.Q6J("ngSwitchCase","ant-picker-calendar")}}function bn(rt,Gt){if(1&rt&&(i.TgZ(0,"tr",8),i.YNc(1,j,2,4,"td",9),i.YNc(2,En,4,5,"td",10),i.qZA()),2&rt){const Z=Gt.$implicit,dt=i.oxw();i.Q6J("ngClass",Z.classMap),i.xp6(1),i.Q6J("ngIf",Z.weekNum),i.xp6(1),i.Q6J("ngForOf",Z.dateCells)("ngForTrackBy",dt.trackByBodyColumn)}}function Rn(rt,Gt){if(1&rt){const Z=i.EpF();i.ynx(0),i.TgZ(1,"decade-header",4),i.NdJ("valueChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.activeDate=vt)})("panelModeChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.panelModeChange.emit(vt))})("valueChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.headerChange.emit(vt))}),i.qZA(),i.TgZ(2,"div")(3,"decade-table",5),i.NdJ("valueChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.onChooseDecade(vt))}),i.qZA()(),i.BQk()}if(2&rt){const Z=i.oxw();i.xp6(1),i.Q6J("value",Z.activeDate)("locale",Z.locale)("showSuperPreBtn",Z.enablePrevNext("prev","decade"))("showSuperNextBtn",Z.enablePrevNext("next","decade"))("showNextBtn",!1)("showPreBtn",!1),i.xp6(1),i.Gre("",Z.prefixCls,"-body"),i.xp6(1),i.Q6J("activeDate",Z.activeDate)("value",Z.value)("locale",Z.locale)("disabledDate",Z.disabledDate)}}function qn(rt,Gt){if(1&rt){const Z=i.EpF();i.ynx(0),i.TgZ(1,"year-header",4),i.NdJ("valueChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.activeDate=vt)})("panelModeChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.panelModeChange.emit(vt))})("valueChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.headerChange.emit(vt))}),i.qZA(),i.TgZ(2,"div")(3,"year-table",6),i.NdJ("valueChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.onChooseYear(vt))})("cellHover",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.cellHover.emit(vt))}),i.qZA()(),i.BQk()}if(2&rt){const Z=i.oxw();i.xp6(1),i.Q6J("value",Z.activeDate)("locale",Z.locale)("showSuperPreBtn",Z.enablePrevNext("prev","year"))("showSuperNextBtn",Z.enablePrevNext("next","year"))("showNextBtn",!1)("showPreBtn",!1),i.xp6(1),i.Gre("",Z.prefixCls,"-body"),i.xp6(1),i.Q6J("activeDate",Z.activeDate)("value",Z.value)("locale",Z.locale)("disabledDate",Z.disabledDate)("selectedValue",Z.selectedValue)("hoverValue",Z.hoverValue)}}function si(rt,Gt){if(1&rt){const Z=i.EpF();i.ynx(0),i.TgZ(1,"month-header",4),i.NdJ("valueChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.activeDate=vt)})("panelModeChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.panelModeChange.emit(vt))})("valueChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.headerChange.emit(vt))}),i.qZA(),i.TgZ(2,"div")(3,"month-table",7),i.NdJ("valueChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.onChooseMonth(vt))})("cellHover",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.cellHover.emit(vt))}),i.qZA()(),i.BQk()}if(2&rt){const Z=i.oxw();i.xp6(1),i.Q6J("value",Z.activeDate)("locale",Z.locale)("showSuperPreBtn",Z.enablePrevNext("prev","month"))("showSuperNextBtn",Z.enablePrevNext("next","month"))("showNextBtn",!1)("showPreBtn",!1),i.xp6(1),i.Gre("",Z.prefixCls,"-body"),i.xp6(1),i.Q6J("value",Z.value)("activeDate",Z.activeDate)("locale",Z.locale)("disabledDate",Z.disabledDate)("selectedValue",Z.selectedValue)("hoverValue",Z.hoverValue)}}function Wn(rt,Gt){if(1&rt){const Z=i.EpF();i.ynx(0),i.TgZ(1,"date-header",8),i.NdJ("valueChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.activeDate=vt)})("panelModeChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.panelModeChange.emit(vt))})("valueChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.headerChange.emit(vt))}),i.qZA(),i.TgZ(2,"div")(3,"date-table",9),i.NdJ("valueChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.onSelectDate(vt))})("cellHover",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.cellHover.emit(vt))}),i.qZA()(),i.BQk()}if(2&rt){const Z=i.oxw();i.xp6(1),i.Q6J("value",Z.activeDate)("locale",Z.locale)("showSuperPreBtn",Z.enablePrevNext("prev","week"===Z.panelMode?"week":"date"))("showSuperNextBtn",Z.enablePrevNext("next","week"===Z.panelMode?"week":"date"))("showPreBtn",Z.enablePrevNext("prev","week"===Z.panelMode?"week":"date"))("showNextBtn",Z.enablePrevNext("next","week"===Z.panelMode?"week":"date")),i.xp6(1),i.Gre("",Z.prefixCls,"-body"),i.xp6(1),i.Q6J("locale",Z.locale)("showWeek",Z.showWeek)("value",Z.value)("activeDate",Z.activeDate)("disabledDate",Z.disabledDate)("cellRender",Z.dateRender)("selectedValue",Z.selectedValue)("hoverValue",Z.hoverValue)("canSelectWeek","week"===Z.panelMode)}}function ci(rt,Gt){if(1&rt){const Z=i.EpF();i.ynx(0),i.TgZ(1,"nz-time-picker-panel",10),i.NdJ("ngModelChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.onSelectTime(vt))}),i.qZA(),i.BQk()}if(2&rt){const Z=i.oxw();i.xp6(1),i.Q6J("nzInDatePicker",!0)("ngModel",null==Z.value?null:Z.value.nativeDate)("format",Z.timeOptions.nzFormat)("nzHourStep",Z.timeOptions.nzHourStep)("nzMinuteStep",Z.timeOptions.nzMinuteStep)("nzSecondStep",Z.timeOptions.nzSecondStep)("nzDisabledHours",Z.timeOptions.nzDisabledHours)("nzDisabledMinutes",Z.timeOptions.nzDisabledMinutes)("nzDisabledSeconds",Z.timeOptions.nzDisabledSeconds)("nzHideDisabledOptions",!!Z.timeOptions.nzHideDisabledOptions)("nzDefaultOpenValue",Z.timeOptions.nzDefaultOpenValue)("nzUse12Hours",!!Z.timeOptions.nzUse12Hours)("nzAddOn",Z.timeOptions.nzAddOn)}}function ri(rt,Gt){1&rt&&i.GkF(0)}const di=function(rt){return{partType:rt}};function hi(rt,Gt){if(1&rt&&(i.ynx(0),i.YNc(1,ri,1,0,"ng-container",7),i.BQk()),2&rt){const Z=i.oxw(2),dt=i.MAs(4);i.xp6(1),i.Q6J("ngTemplateOutlet",dt)("ngTemplateOutletContext",i.VKq(2,di,Z.datePickerService.activeInput))}}function fi(rt,Gt){1&rt&&i.GkF(0)}function zi(rt,Gt){1&rt&&i.GkF(0)}const Oi=function(){return{partType:"left"}},ei=function(){return{partType:"right"}};function po(rt,Gt){if(1&rt&&(i.YNc(0,fi,1,0,"ng-container",7),i.YNc(1,zi,1,0,"ng-container",7)),2&rt){i.oxw(2);const Z=i.MAs(4);i.Q6J("ngTemplateOutlet",Z)("ngTemplateOutletContext",i.DdM(4,Oi)),i.xp6(1),i.Q6J("ngTemplateOutlet",Z)("ngTemplateOutletContext",i.DdM(5,ei))}}function oo(rt,Gt){1&rt&&i.GkF(0)}function Wi(rt,Gt){if(1&rt&&(i.ynx(0),i.TgZ(1,"div"),i._UZ(2,"div"),i.TgZ(3,"div")(4,"div"),i.YNc(5,hi,2,4,"ng-container",0),i.YNc(6,po,2,6,"ng-template",null,5,i.W1O),i.qZA(),i.YNc(8,oo,1,0,"ng-container",6),i.qZA()(),i.BQk()),2&rt){const Z=i.MAs(7),dt=i.oxw(),vt=i.MAs(6);i.xp6(1),i.MT6("",dt.prefixCls,"-range-wrapper ",dt.prefixCls,"-date-range-wrapper"),i.xp6(1),i.Akn(dt.arrowPosition),i.Gre("",dt.prefixCls,"-range-arrow"),i.xp6(1),i.MT6("",dt.prefixCls,"-panel-container ",dt.showWeek?dt.prefixCls+"-week-number":"",""),i.xp6(1),i.Gre("",dt.prefixCls,"-panels"),i.xp6(1),i.Q6J("ngIf",dt.hasTimePicker)("ngIfElse",Z),i.xp6(3),i.Q6J("ngTemplateOutlet",vt)}}function Ri(rt,Gt){1&rt&&i.GkF(0)}function Li(rt,Gt){1&rt&&i.GkF(0)}function $i(rt,Gt){if(1&rt&&(i.TgZ(0,"div")(1,"div",8),i.YNc(2,Ri,1,0,"ng-container",6),i.YNc(3,Li,1,0,"ng-container",6),i.qZA()()),2&rt){const Z=i.oxw(),dt=i.MAs(4),vt=i.MAs(6);i.DjV("",Z.prefixCls,"-panel-container ",Z.showWeek?Z.prefixCls+"-week-number":""," ",Z.hasTimePicker?Z.prefixCls+"-time":""," ",Z.isRange?Z.prefixCls+"-range":"",""),i.xp6(1),i.Gre("",Z.prefixCls,"-panel"),i.ekj("ant-picker-panel-rtl","rtl"===Z.dir),i.xp6(1),i.Q6J("ngTemplateOutlet",dt),i.xp6(1),i.Q6J("ngTemplateOutlet",vt)}}function Qi(rt,Gt){if(1&rt){const Z=i.EpF();i.TgZ(0,"div")(1,"inner-popup",9),i.NdJ("panelModeChange",function(vt){const yn=i.CHM(Z).partType,In=i.oxw();return i.KtG(In.onPanelModeChange(vt,yn))})("cellHover",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.onCellHover(vt))})("selectDate",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.changeValueFromSelect(vt,!$t.showTime))})("selectTime",function(vt){const yn=i.CHM(Z).partType,In=i.oxw();return i.KtG(In.onSelectTime(vt,yn))})("headerChange",function(vt){const yn=i.CHM(Z).partType,In=i.oxw();return i.KtG(In.onActiveDateChange(vt,yn))}),i.qZA()()}if(2&rt){const Z=Gt.partType,dt=i.oxw();i.Gre("",dt.prefixCls,"-panel"),i.ekj("ant-picker-panel-rtl","rtl"===dt.dir),i.xp6(1),i.Q6J("showWeek",dt.showWeek)("endPanelMode",dt.getPanelMode(dt.endPanelMode,Z))("partType",Z)("locale",dt.locale)("showTimePicker",dt.hasTimePicker)("timeOptions",dt.getTimeOptions(Z))("panelMode",dt.getPanelMode(dt.panelMode,Z))("activeDate",dt.getActiveDate(Z))("value",dt.getValue(Z))("disabledDate",dt.disabledDate)("dateRender",dt.dateRender)("selectedValue",null==dt.datePickerService?null:dt.datePickerService.value)("hoverValue",dt.hoverValue)}}function Mo(rt,Gt){if(1&rt){const Z=i.EpF();i.TgZ(0,"calendar-footer",11),i.NdJ("clickOk",function(){i.CHM(Z);const vt=i.oxw(2);return i.KtG(vt.onClickOk())})("clickToday",function(vt){i.CHM(Z);const $t=i.oxw(2);return i.KtG($t.onClickToday(vt))}),i.qZA()}if(2&rt){const Z=i.oxw(2),dt=i.MAs(8);i.Q6J("locale",Z.locale)("isRange",Z.isRange)("showToday",Z.showToday)("showNow",Z.showNow)("hasTimePicker",Z.hasTimePicker)("okDisabled",!Z.isAllowed(null==Z.datePickerService?null:Z.datePickerService.value))("extraFooter",Z.extraFooter)("rangeQuickSelector",Z.ranges?dt:null)}}function wi(rt,Gt){if(1&rt&&i.YNc(0,Mo,1,8,"calendar-footer",10),2&rt){const Z=i.oxw();i.Q6J("ngIf",Z.hasFooter)}}function Xi(rt,Gt){if(1&rt){const Z=i.EpF();i.TgZ(0,"li",13),i.NdJ("click",function(){const $t=i.CHM(Z).$implicit,yn=i.oxw(2);return i.KtG(yn.onClickPresetRange(yn.ranges[$t]))})("mouseenter",function(){const $t=i.CHM(Z).$implicit,yn=i.oxw(2);return i.KtG(yn.onHoverPresetRange(yn.ranges[$t]))})("mouseleave",function(){i.CHM(Z);const vt=i.oxw(2);return i.KtG(vt.onPresetRangeMouseLeave())}),i.TgZ(1,"span",14),i._uU(2),i.qZA()()}if(2&rt){const Z=Gt.$implicit,dt=i.oxw(2);i.Gre("",dt.prefixCls,"-preset"),i.xp6(2),i.Oqu(Z)}}function Ei(rt,Gt){if(1&rt&&i.YNc(0,Xi,3,4,"li",12),2&rt){const Z=i.oxw();i.Q6J("ngForOf",Z.getObjectKeys(Z.ranges))}}const Hi=["separatorElement"],qi=["pickerInput"],Pi=["rangePickerInput"];function Ii(rt,Gt){1&rt&&i.GkF(0)}function ki(rt,Gt){if(1&rt){const Z=i.EpF();i.TgZ(0,"div")(1,"input",7,8),i.NdJ("ngModelChange",function(vt){i.CHM(Z);const $t=i.oxw(2);return i.KtG($t.inputValue=vt)})("focus",function(vt){i.CHM(Z);const $t=i.oxw(2);return i.KtG($t.onFocus(vt))})("focusout",function(vt){i.CHM(Z);const $t=i.oxw(2);return i.KtG($t.onFocusout(vt))})("ngModelChange",function(vt){i.CHM(Z);const $t=i.oxw(2);return i.KtG($t.onInputChange(vt))})("keyup.enter",function(vt){i.CHM(Z);const $t=i.oxw(2);return i.KtG($t.onKeyupEnter(vt))}),i.qZA(),i.YNc(3,Ii,1,0,"ng-container",9),i.qZA()}if(2&rt){const Z=i.oxw(2),dt=i.MAs(4);i.Gre("",Z.prefixCls,"-input"),i.xp6(1),i.ekj("ant-input-disabled",Z.nzDisabled),i.s9C("placeholder",Z.getPlaceholder()),i.Q6J("disabled",Z.nzDisabled)("readOnly",Z.nzInputReadOnly)("ngModel",Z.inputValue)("size",Z.inputSize),i.uIk("id",Z.nzId),i.xp6(2),i.Q6J("ngTemplateOutlet",dt)}}function oi(rt,Gt){1&rt&&i.GkF(0)}function Bn(rt,Gt){if(1&rt&&(i.ynx(0),i._uU(1),i.BQk()),2&rt){const Z=i.oxw(4);i.xp6(1),i.Oqu(Z.nzSeparator)}}function Et(rt,Gt){1&rt&&i._UZ(0,"span",14)}function un(rt,Gt){if(1&rt&&(i.ynx(0),i.YNc(1,Bn,2,1,"ng-container",0),i.YNc(2,Et,1,0,"ng-template",null,13,i.W1O),i.BQk()),2&rt){const Z=i.MAs(3),dt=i.oxw(3);i.xp6(1),i.Q6J("ngIf",dt.nzSeparator)("ngIfElse",Z)}}function lt(rt,Gt){1&rt&&i.GkF(0)}function Ct(rt,Gt){1&rt&&i.GkF(0)}function At(rt,Gt){if(1&rt&&(i.ynx(0),i.TgZ(1,"div"),i.YNc(2,oi,1,0,"ng-container",10),i.qZA(),i.TgZ(3,"div",null,11)(5,"span"),i.YNc(6,un,4,2,"ng-container",12),i.qZA()(),i.TgZ(7,"div"),i.YNc(8,lt,1,0,"ng-container",10),i.qZA(),i.YNc(9,Ct,1,0,"ng-container",9),i.BQk()),2&rt){const Z=i.oxw(2),dt=i.MAs(2),vt=i.MAs(4);i.xp6(1),i.Gre("",Z.prefixCls,"-input"),i.xp6(1),i.Q6J("ngTemplateOutlet",dt)("ngTemplateOutletContext",i.DdM(18,Oi)),i.xp6(1),i.Gre("",Z.prefixCls,"-range-separator"),i.xp6(2),i.Gre("",Z.prefixCls,"-separator"),i.xp6(1),i.Q6J("nzStringTemplateOutlet",Z.nzSeparator),i.xp6(1),i.Gre("",Z.prefixCls,"-input"),i.xp6(1),i.Q6J("ngTemplateOutlet",dt)("ngTemplateOutletContext",i.DdM(19,ei)),i.xp6(1),i.Q6J("ngTemplateOutlet",vt)}}function Qt(rt,Gt){if(1&rt&&(i.ynx(0),i.YNc(1,ki,4,12,"div",5),i.YNc(2,At,10,20,"ng-container",6),i.BQk()),2&rt){const Z=i.oxw();i.xp6(1),i.Q6J("ngIf",!Z.isRange),i.xp6(1),i.Q6J("ngIf",Z.isRange)}}function gn(rt,Gt){if(1&rt){const Z=i.EpF();i.TgZ(0,"input",15,16),i.NdJ("click",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.onClickInputBox(vt))})("focusout",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.onFocusout(vt))})("focus",function(vt){const yn=i.CHM(Z).partType,In=i.oxw();return i.KtG(In.onFocus(vt,yn))})("keyup.enter",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.onKeyupEnter(vt))})("ngModelChange",function(vt){const yn=i.CHM(Z).partType,In=i.oxw();return i.KtG(In.inputValue[In.datePickerService.getActiveIndex(yn)]=vt)})("ngModelChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.onInputChange(vt))}),i.qZA()}if(2&rt){const Z=Gt.partType,dt=i.oxw();i.s9C("placeholder",dt.getPlaceholder(Z)),i.Q6J("disabled",dt.nzDisabled)("readOnly",dt.nzInputReadOnly)("size",dt.inputSize)("ngModel",dt.inputValue[dt.datePickerService.getActiveIndex(Z)]),i.uIk("id",dt.nzId)}}function Ln(rt,Gt){if(1&rt){const Z=i.EpF();i.TgZ(0,"span",20),i.NdJ("click",function(vt){i.CHM(Z);const $t=i.oxw(2);return i.KtG($t.onClickClear(vt))}),i._UZ(1,"span",21),i.qZA()}if(2&rt){const Z=i.oxw(2);i.Gre("",Z.prefixCls,"-clear")}}function Sn(rt,Gt){if(1&rt&&(i.ynx(0),i._UZ(1,"span",22),i.BQk()),2&rt){const Z=Gt.$implicit;i.xp6(1),i.Q6J("nzType",Z)}}function gi(rt,Gt){if(1&rt&&i._UZ(0,"nz-form-item-feedback-icon",23),2&rt){const Z=i.oxw(2);i.Q6J("status",Z.status)}}function St(rt,Gt){if(1&rt&&(i._UZ(0,"div",17),i.YNc(1,Ln,2,3,"span",18),i.TgZ(2,"span"),i.YNc(3,Sn,2,1,"ng-container",12),i.YNc(4,gi,1,1,"nz-form-item-feedback-icon",19),i.qZA()),2&rt){const Z=i.oxw();i.Gre("",Z.prefixCls,"-active-bar"),i.Q6J("ngStyle",Z.activeBarStyle),i.xp6(1),i.Q6J("ngIf",Z.showClear()),i.xp6(1),i.Gre("",Z.prefixCls,"-suffix"),i.xp6(1),i.Q6J("nzStringTemplateOutlet",Z.nzSuffixIcon),i.xp6(1),i.Q6J("ngIf",Z.hasFeedback&&!!Z.status)}}function gt(rt,Gt){if(1&rt){const Z=i.EpF();i.TgZ(0,"div",17)(1,"date-range-popup",24),i.NdJ("panelModeChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.onPanelModeChange(vt))})("calendarChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.onCalendarChange(vt))})("resultOk",function(){i.CHM(Z);const vt=i.oxw();return i.KtG(vt.onResultOk())}),i.qZA()()}if(2&rt){const Z=i.oxw();i.MT6("",Z.prefixCls,"-dropdown ",Z.nzDropdownClassName,""),i.ekj("ant-picker-dropdown-rtl","rtl"===Z.dir)("ant-picker-dropdown-placement-bottomLeft","bottom"===Z.currentPositionY&&"start"===Z.currentPositionX)("ant-picker-dropdown-placement-topLeft","top"===Z.currentPositionY&&"start"===Z.currentPositionX)("ant-picker-dropdown-placement-bottomRight","bottom"===Z.currentPositionY&&"end"===Z.currentPositionX)("ant-picker-dropdown-placement-topRight","top"===Z.currentPositionY&&"end"===Z.currentPositionX)("ant-picker-dropdown-range",Z.isRange)("ant-picker-active-left","left"===Z.datePickerService.activeInput)("ant-picker-active-right","right"===Z.datePickerService.activeInput),i.Q6J("ngStyle",Z.nzPopupStyle),i.xp6(1),i.Q6J("isRange",Z.isRange)("inline",Z.nzInline)("defaultPickerValue",Z.nzDefaultPickerValue)("showWeek",Z.nzShowWeekNumber||"week"===Z.nzMode)("panelMode",Z.panelMode)("locale",null==Z.nzLocale?null:Z.nzLocale.lang)("showToday","date"===Z.nzMode&&Z.nzShowToday&&!Z.isRange&&!Z.nzShowTime)("showNow","date"===Z.nzMode&&Z.nzShowNow&&!Z.isRange&&!!Z.nzShowTime)("showTime",Z.nzShowTime)("dateRender",Z.nzDateRender)("disabledDate",Z.nzDisabledDate)("disabledTime",Z.nzDisabledTime)("extraFooter",Z.extraFooter)("ranges",Z.nzRanges)("dir",Z.dir)}}function We(rt,Gt){1&rt&&i.GkF(0)}function Nt(rt,Gt){if(1&rt&&(i.TgZ(0,"div",25),i.YNc(1,We,1,0,"ng-container",9),i.qZA()),2&rt){const Z=i.oxw(),dt=i.MAs(6);i.Q6J("nzNoAnimation",!(null==Z.noAnimation||!Z.noAnimation.nzNoAnimation))("@slideMotion","enter"),i.xp6(1),i.Q6J("ngTemplateOutlet",dt)}}const Kt="ant-picker",ln={nzDisabledHours:()=>[],nzDisabledMinutes:()=>[],nzDisabledSeconds:()=>[]};function zn(rt,Gt){let Z=Gt?Gt(rt&&rt.nativeDate):{};return Z={...ln,...Z},Z}function ui(rt,Gt,Z){return!(!rt||Gt&&Gt(rt.nativeDate)||Z&&!function Qn(rt,Gt){return function kn(rt,Gt){let Z=!1;if(rt){const dt=rt.getHours(),vt=rt.getMinutes(),$t=rt.getSeconds();Z=-1!==Gt.nzDisabledHours().indexOf(dt)||-1!==Gt.nzDisabledMinutes(dt).indexOf(vt)||-1!==Gt.nzDisabledSeconds(dt,vt).indexOf($t)}return!Z}(rt,zn(rt,Gt))}(rt,Z))}function eo(rt){return rt&&rt.replace(/Y/g,"y").replace(/D/g,"d")}let Ui=(()=>{class rt{constructor(Z){this.dateHelper=Z,this.showToday=!1,this.showNow=!1,this.hasTimePicker=!1,this.isRange=!1,this.okDisabled=!1,this.rangeQuickSelector=null,this.clickOk=new i.vpe,this.clickToday=new i.vpe,this.prefixCls=Kt,this.isTemplateRef=d.de,this.isNonEmptyString=d.HH,this.isTodayDisabled=!1,this.todayTitle=""}ngOnChanges(Z){const dt=new Date;if(Z.disabledDate&&(this.isTodayDisabled=!(!this.disabledDate||!this.disabledDate(dt))),Z.locale){const vt=eo(this.locale.dateFormat);this.todayTitle=this.dateHelper.format(dt,vt)}}onClickToday(){const Z=new g.Yp;this.clickToday.emit(Z.clone())}static#e=this.\u0275fac=function(dt){return new(dt||rt)(i.Y36(p.mx))};static#t=this.\u0275cmp=i.Xpm({type:rt,selectors:[["calendar-footer"]],inputs:{locale:"locale",showToday:"showToday",showNow:"showNow",hasTimePicker:"hasTimePicker",isRange:"isRange",okDisabled:"okDisabled",disabledDate:"disabledDate",extraFooter:"extraFooter",rangeQuickSelector:"rangeQuickSelector"},outputs:{clickOk:"clickOk",clickToday:"clickToday"},exportAs:["calendarFooter"],features:[i.TTD],decls:4,vars:6,consts:[[3,"class",4,"ngIf"],["role","button",3,"class","title","click",4,"ngIf"],[3,"ngSwitch"],[4,"ngSwitchCase"],[4,"ngTemplateOutlet"],[3,"innerHTML"],["role","button",3,"title","click"],[3,"click"],["nz-button","","type","button","nzType","primary","nzSize","small",3,"disabled","click"]],template:function(dt,vt){1&dt&&(i.TgZ(0,"div"),i.YNc(1,re,4,6,"div",0),i.YNc(2,be,2,6,"a",1),i.YNc(3,ie,4,6,"ul",0),i.qZA()),2&dt&&(i.Gre("",vt.prefixCls,"-footer"),i.xp6(1),i.Q6J("ngIf",vt.extraFooter),i.xp6(1),i.Q6J("ngIf",vt.showToday),i.xp6(1),i.Q6J("ngIf",vt.hasTimePicker||vt.rangeQuickSelector))},dependencies:[t.O5,t.tP,t.RF,t.n9,C.ix,f.w,y.dQ],encapsulation:2,changeDetection:0})}return rt})(),Un=(()=>{class rt{constructor(){this.activeInput="left",this.arrowLeft=0,this.isRange=!1,this.valueChange$=new D.t(1),this.emitValue$=new _.x,this.inputPartChange$=new _.x}initValue(Z=!1){Z&&(this.initialValue=this.isRange?[]:null),this.setValue(this.initialValue)}hasValue(Z=this.value){return Array.isArray(Z)?!!Z[0]||!!Z[1]:!!Z}makeValue(Z){return this.isRange?Z?Z.map(dt=>new g.Yp(dt)):[]:Z?new g.Yp(Z):null}setActiveDate(Z,dt=!1,vt="month"){this.activeDate=this.isRange?(0,g._p)(Z,dt,{date:"month",month:"year",year:"decade"}[vt],this.activeInput):(0,g.ky)(Z)}setValue(Z){this.value=Z,this.valueChange$.next(this.value)}getActiveIndex(Z=this.activeInput){return{left:0,right:1}[Z]}ngOnDestroy(){this.valueChange$.complete(),this.emitValue$.complete(),this.inputPartChange$.complete()}static#e=this.\u0275fac=function(dt){return new(dt||rt)};static#t=this.\u0275prov=i.Yz7({token:rt,factory:rt.\u0275fac})}return rt})(),go=(()=>{class rt{constructor(){this.prefixCls="ant-picker-header",this.selectors=[],this.showSuperPreBtn=!0,this.showSuperNextBtn=!0,this.showPreBtn=!0,this.showNextBtn=!0,this.panelModeChange=new i.vpe,this.valueChange=new i.vpe}superPreviousTitle(){return this.locale.previousYear}previousTitle(){return this.locale.previousMonth}superNextTitle(){return this.locale.nextYear}nextTitle(){return this.locale.nextMonth}superPrevious(){this.changeValue(this.value.addYears(-1))}superNext(){this.changeValue(this.value.addYears(1))}previous(){this.changeValue(this.value.addMonths(-1))}next(){this.changeValue(this.value.addMonths(1))}changeValue(Z){this.value!==Z&&(this.value=Z,this.valueChange.emit(this.value),this.render())}changeMode(Z){this.panelModeChange.emit(Z)}render(){this.value&&(this.selectors=this.getSelectors())}ngOnInit(){this.value||(this.value=new g.Yp),this.selectors=this.getSelectors()}ngOnChanges(Z){(Z.value||Z.locale)&&this.render()}static#e=this.\u0275fac=function(dt){return new(dt||rt)};static#t=this.\u0275dir=i.lG2({type:rt,inputs:{value:"value",locale:"locale",showSuperPreBtn:"showSuperPreBtn",showSuperNextBtn:"showSuperNextBtn",showPreBtn:"showPreBtn",showNextBtn:"showNextBtn"},outputs:{panelModeChange:"panelModeChange",valueChange:"valueChange"},features:[i.TTD]})}return rt})(),hs=(()=>{class rt extends go{constructor(Z){super(),this.dateHelper=Z}getSelectors(){return[{className:`${this.prefixCls}-year-btn`,title:this.locale.yearSelect,onClick:()=>this.changeMode("year"),label:this.dateHelper.format(this.value.nativeDate,eo(this.locale.yearFormat))},{className:`${this.prefixCls}-month-btn`,title:this.locale.monthSelect,onClick:()=>this.changeMode("month"),label:this.dateHelper.format(this.value.nativeDate,this.locale.monthFormat||"MMM")}]}static#e=this.\u0275fac=function(dt){return new(dt||rt)(i.Y36(p.mx))};static#t=this.\u0275cmp=i.Xpm({type:rt,selectors:[["date-header"]],exportAs:["dateHeader"],features:[i.qOj],decls:11,vars:31,consts:[["role","button","type","button","tabindex","-1",3,"title","click"],[1,"ant-picker-super-prev-icon"],[1,"ant-picker-prev-icon"],[4,"ngFor","ngForOf"],[1,"ant-picker-next-icon"],[1,"ant-picker-super-next-icon"],["role","button","type","button",3,"title","click"]],template:function(dt,vt){1&dt&&(i.TgZ(0,"div")(1,"button",0),i.NdJ("click",function(){return vt.superPrevious()}),i._UZ(2,"span",1),i.qZA(),i.TgZ(3,"button",0),i.NdJ("click",function(){return vt.previous()}),i._UZ(4,"span",2),i.qZA(),i.TgZ(5,"div"),i.YNc(6,ae,3,5,"ng-container",3),i.qZA(),i.TgZ(7,"button",0),i.NdJ("click",function(){return vt.next()}),i._UZ(8,"span",4),i.qZA(),i.TgZ(9,"button",0),i.NdJ("click",function(){return vt.superNext()}),i._UZ(10,"span",5),i.qZA()()),2&dt&&(i.Tol(vt.prefixCls),i.xp6(1),i.Gre("",vt.prefixCls,"-super-prev-btn"),i.Udp("visibility",vt.showSuperPreBtn?"visible":"hidden"),i.s9C("title",vt.superPreviousTitle()),i.xp6(2),i.Gre("",vt.prefixCls,"-prev-btn"),i.Udp("visibility",vt.showPreBtn?"visible":"hidden"),i.s9C("title",vt.previousTitle()),i.xp6(2),i.Gre("",vt.prefixCls,"-view"),i.xp6(1),i.Q6J("ngForOf",vt.selectors),i.xp6(1),i.Gre("",vt.prefixCls,"-next-btn"),i.Udp("visibility",vt.showNextBtn?"visible":"hidden"),i.s9C("title",vt.nextTitle()),i.xp6(2),i.Gre("",vt.prefixCls,"-super-next-btn"),i.Udp("visibility",vt.showSuperNextBtn?"visible":"hidden"),i.s9C("title",vt.superNextTitle()))},dependencies:[t.sg],encapsulation:2,changeDetection:0})}return rt})(),xo=(()=>{class rt{constructor(){this.isTemplateRef=d.de,this.isNonEmptyString=d.HH,this.headRow=[],this.bodyRows=[],this.MAX_ROW=6,this.MAX_COL=7,this.prefixCls="ant-picker",this.activeDate=new g.Yp,this.showWeek=!1,this.selectedValue=[],this.hoverValue=[],this.canSelectWeek=!1,this.valueChange=new i.vpe,this.cellHover=new i.vpe}render(){this.activeDate&&(this.headRow=this.makeHeadRow(),this.bodyRows=this.makeBodyRows())}trackByBodyRow(Z,dt){return dt.trackByIndex}trackByBodyColumn(Z,dt){return dt.trackByIndex}hasRangeValue(){return this.selectedValue?.length>0||this.hoverValue?.length>0}getClassMap(Z){return{"ant-picker-cell":!0,"ant-picker-cell-in-view":!0,"ant-picker-cell-selected":Z.isSelected,"ant-picker-cell-disabled":Z.isDisabled,"ant-picker-cell-in-range":!!Z.isInSelectedRange,"ant-picker-cell-range-start":!!Z.isSelectedStart,"ant-picker-cell-range-end":!!Z.isSelectedEnd,"ant-picker-cell-range-start-single":!!Z.isStartSingle,"ant-picker-cell-range-end-single":!!Z.isEndSingle,"ant-picker-cell-range-hover":!!Z.isInHoverRange,"ant-picker-cell-range-hover-start":!!Z.isHoverStart,"ant-picker-cell-range-hover-end":!!Z.isHoverEnd,"ant-picker-cell-range-hover-edge-start":!!Z.isFirstCellInPanel,"ant-picker-cell-range-hover-edge-end":!!Z.isLastCellInPanel,"ant-picker-cell-range-start-near-hover":!!Z.isRangeStartNearHover,"ant-picker-cell-range-end-near-hover":!!Z.isRangeEndNearHover}}ngOnInit(){this.render()}ngOnChanges(Z){Z.activeDate&&!Z.activeDate.currentValue&&(this.activeDate=new g.Yp),(Z.disabledDate||Z.locale||Z.showWeek||Z.selectWeek||this.isDateRealChange(Z.activeDate)||this.isDateRealChange(Z.value)||this.isDateRealChange(Z.selectedValue)||this.isDateRealChange(Z.hoverValue))&&this.render()}isDateRealChange(Z){if(Z){const dt=Z.previousValue,vt=Z.currentValue;return Array.isArray(vt)?!Array.isArray(dt)||vt.length!==dt.length||vt.some(($t,yn)=>{const In=dt[yn];return In instanceof g.Yp?In.isSameDay($t):In!==$t}):!this.isSameDate(dt,vt)}return!1}isSameDate(Z,dt){return!Z&&!dt||Z&&dt&&dt.isSameDay(Z)}static#e=this.\u0275fac=function(dt){return new(dt||rt)};static#t=this.\u0275dir=i.lG2({type:rt,inputs:{prefixCls:"prefixCls",value:"value",locale:"locale",activeDate:"activeDate",showWeek:"showWeek",selectedValue:"selectedValue",hoverValue:"hoverValue",disabledDate:"disabledDate",cellRender:"cellRender",fullCellRender:"fullCellRender",canSelectWeek:"canSelectWeek"},outputs:{valueChange:"valueChange",cellHover:"cellHover"},features:[i.TTD]})}return rt})(),Ti=(()=>{class rt extends xo{constructor(Z,dt){super(),this.i18n=Z,this.dateHelper=dt}changeValueFromInside(Z){this.activeDate=this.activeDate.setYear(Z.getYear()).setMonth(Z.getMonth()).setDate(Z.getDate()),this.valueChange.emit(this.activeDate),this.activeDate.isSameMonth(this.value)||this.render()}makeHeadRow(){const Z=[],dt=this.activeDate.calendarStart({weekStartsOn:this.dateHelper.getFirstDayOfWeek()});for(let vt=0;vtthis.changeValueFromInside(yi),onMouseEnter:()=>this.cellHover.emit(yi)};this.addCellProperty(Yi,yi),this.showWeek&&!yn.weekNum&&(yn.weekNum=this.dateHelper.getISOWeek(yi.nativeDate)),yi.isSameDay(this.value)&&(yn.isActive=yi.isSameDay(this.value)),yn.dateCells.push(Yi)}yn.classMap={"ant-picker-week-panel-row":this.canSelectWeek,"ant-picker-week-panel-row-selected":this.canSelectWeek&&yn.isActive},Z.push(yn)}return Z}addCellProperty(Z,dt){if(this.hasRangeValue()&&!this.canSelectWeek){const[vt,$t]=this.hoverValue,[yn,In]=this.selectedValue;yn?.isSameDay(dt)&&(Z.isSelectedStart=!0,Z.isSelected=!0),In?.isSameDay(dt)&&(Z.isSelectedEnd=!0,Z.isSelected=!0),vt&&$t&&(Z.isHoverStart=vt.isSameDay(dt),Z.isHoverEnd=$t.isSameDay(dt),Z.isLastCellInPanel=dt.isLastDayOfMonth(),Z.isFirstCellInPanel=dt.isFirstDayOfMonth(),Z.isInHoverRange=vt.isBeforeDay(dt)&&dt.isBeforeDay($t)),Z.isStartSingle=yn&&!In,Z.isEndSingle=!yn&&In,Z.isInSelectedRange=yn?.isBeforeDay(dt)&&dt.isBeforeDay(In),Z.isRangeStartNearHover=yn&&Z.isInHoverRange,Z.isRangeEndNearHover=In&&Z.isInHoverRange}Z.isToday=dt.isToday(),Z.isSelected=dt.isSameDay(this.value),Z.isDisabled=!!this.disabledDate?.(dt.nativeDate),Z.classMap=this.getClassMap(Z)}getClassMap(Z){const dt=new g.Yp(Z.value);return{...super.getClassMap(Z),"ant-picker-cell-today":!!Z.isToday,"ant-picker-cell-in-view":dt.isSameMonth(this.activeDate)}}static#e=this.\u0275fac=function(dt){return new(dt||rt)(i.Y36(p.wi),i.Y36(p.mx))};static#t=this.\u0275cmp=i.Xpm({type:rt,selectors:[["date-table"]],inputs:{locale:"locale"},exportAs:["dateTable"],features:[i.qOj],decls:4,vars:3,consts:[["cellspacing","0","role","grid",1,"ant-picker-content"],[4,"ngIf"],["role","row",3,"ngClass",4,"ngFor","ngForOf","ngForTrackBy"],["role","row"],["role","columnheader",4,"ngIf"],["role","columnheader",3,"title",4,"ngFor","ngForOf"],["role","columnheader"],["role","columnheader",3,"title"],["role","row",3,"ngClass"],["role","gridcell",3,"class",4,"ngIf"],["role","gridcell",3,"title","ngClass","click","mouseenter",4,"ngFor","ngForOf","ngForTrackBy"],["role","gridcell"],["role","gridcell",3,"title","ngClass","click","mouseenter"],[3,"ngSwitch"],[4,"ngSwitchCase"],[4,"ngSwitchDefault"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"innerHTML"],[4,"ngIf","ngIfElse"],["defaultCell",""]],template:function(dt,vt){1&dt&&(i.TgZ(0,"table",0),i.YNc(1,Ye,4,2,"thead",1),i.TgZ(2,"tbody"),i.YNc(3,U,3,4,"tr",2),i.qZA()()),2&dt&&(i.xp6(1),i.Q6J("ngIf",vt.headRow&&vt.headRow.length>0),i.xp6(2),i.Q6J("ngForOf",vt.bodyRows)("ngForTrackBy",vt.trackByBodyRow))},dependencies:[t.mk,t.sg,t.O5,t.tP,t.RF,t.n9,t.ED],encapsulation:2,changeDetection:0})}return rt})(),qo=(()=>{class rt extends go{previous(){}next(){}get startYear(){return 100*parseInt(""+this.value.getYear()/100,10)}get endYear(){return this.startYear+99}superPrevious(){this.changeValue(this.value.addYears(-100))}superNext(){this.changeValue(this.value.addYears(100))}getSelectors(){return[{className:`${this.prefixCls}-decade-btn`,title:"",onClick:()=>{},label:`${this.startYear}-${this.endYear}`}]}static#e=this.\u0275fac=function(){let Z;return function(vt){return(Z||(Z=i.n5z(rt)))(vt||rt)}}();static#t=this.\u0275cmp=i.Xpm({type:rt,selectors:[["decade-header"]],exportAs:["decadeHeader"],features:[i.qOj],decls:11,vars:31,consts:[["role","button","type","button","tabindex","-1",3,"title","click"],[1,"ant-picker-super-prev-icon"],[1,"ant-picker-prev-icon"],[4,"ngFor","ngForOf"],[1,"ant-picker-next-icon"],[1,"ant-picker-super-next-icon"],["role","button","type","button",3,"title","click"]],template:function(dt,vt){1&dt&&(i.TgZ(0,"div")(1,"button",0),i.NdJ("click",function(){return vt.superPrevious()}),i._UZ(2,"span",1),i.qZA(),i.TgZ(3,"button",0),i.NdJ("click",function(){return vt.previous()}),i._UZ(4,"span",2),i.qZA(),i.TgZ(5,"div"),i.YNc(6,B,3,5,"ng-container",3),i.qZA(),i.TgZ(7,"button",0),i.NdJ("click",function(){return vt.next()}),i._UZ(8,"span",4),i.qZA(),i.TgZ(9,"button",0),i.NdJ("click",function(){return vt.superNext()}),i._UZ(10,"span",5),i.qZA()()),2&dt&&(i.Tol(vt.prefixCls),i.xp6(1),i.Gre("",vt.prefixCls,"-super-prev-btn"),i.Udp("visibility",vt.showSuperPreBtn?"visible":"hidden"),i.s9C("title",vt.superPreviousTitle()),i.xp6(2),i.Gre("",vt.prefixCls,"-prev-btn"),i.Udp("visibility",vt.showPreBtn?"visible":"hidden"),i.s9C("title",vt.previousTitle()),i.xp6(2),i.Gre("",vt.prefixCls,"-view"),i.xp6(1),i.Q6J("ngForOf",vt.selectors),i.xp6(1),i.Gre("",vt.prefixCls,"-next-btn"),i.Udp("visibility",vt.showNextBtn?"visible":"hidden"),i.s9C("title",vt.nextTitle()),i.xp6(2),i.Gre("",vt.prefixCls,"-super-next-btn"),i.Udp("visibility",vt.showSuperNextBtn?"visible":"hidden"),i.s9C("title",vt.superNextTitle()))},dependencies:[t.sg],encapsulation:2,changeDetection:0})}return rt})(),So=(()=>{class rt extends xo{get startYear(){return 100*parseInt(""+this.activeDate.getYear()/100,10)}get endYear(){return this.startYear+99}makeHeadRow(){return[]}makeBodyRows(){const Z=[],dt=this.value&&this.value.getYear(),vt=this.startYear,$t=this.endYear,yn=vt-10;let In=0;for(let yi=0;yi<4;yi++){const yo={dateCells:[],trackByIndex:yi};for(let io=0;io<3;io++){const _o=yn+10*In,Yi=yn+10*In+9,ts=`${_o}-${Yi}`,Lo={trackByIndex:io,value:this.activeDate.setYear(_o).nativeDate,content:ts,title:ts,isDisabled:!1,isSelected:dt>=_o&&dt<=Yi,isLowerThanStart:Yi$t,classMap:{},onClick(){},onMouseEnter(){}};Lo.classMap=this.getClassMap(Lo),Lo.onClick=()=>this.chooseDecade(_o),In++,yo.dateCells.push(Lo)}Z.push(yo)}return Z}getClassMap(Z){return{[`${this.prefixCls}-cell`]:!0,[`${this.prefixCls}-cell-in-view`]:!Z.isBiggerThanEnd&&!Z.isLowerThanStart,[`${this.prefixCls}-cell-selected`]:Z.isSelected,[`${this.prefixCls}-cell-disabled`]:Z.isDisabled}}chooseDecade(Z){this.value=this.activeDate.setYear(Z),this.valueChange.emit(this.value)}static#e=this.\u0275fac=function(){let Z;return function(vt){return(Z||(Z=i.n5z(rt)))(vt||rt)}}();static#t=this.\u0275cmp=i.Xpm({type:rt,selectors:[["decade-table"]],exportAs:["decadeTable"],features:[i.qOj],decls:4,vars:3,consts:[["cellspacing","0","role","grid",1,"ant-picker-content"],[4,"ngIf"],["role","row",3,"ngClass",4,"ngFor","ngForOf","ngForTrackBy"],["role","row"],["role","columnheader",4,"ngIf"],["role","columnheader",3,"title",4,"ngFor","ngForOf"],["role","columnheader"],["role","columnheader",3,"title"],["role","row",3,"ngClass"],["role","gridcell",3,"class",4,"ngIf"],["role","gridcell",3,"title","ngClass","click","mouseenter",4,"ngFor","ngForOf","ngForTrackBy"],["role","gridcell"],["role","gridcell",3,"title","ngClass","click","mouseenter"],[3,"ngSwitch"],[4,"ngSwitchCase"],[4,"ngSwitchDefault"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"innerHTML"],[4,"ngIf","ngIfElse"],["defaultCell",""]],template:function(dt,vt){1&dt&&(i.TgZ(0,"table",0),i.YNc(1,Ne,4,2,"thead",1),i.TgZ(2,"tbody"),i.YNc(3,It,3,4,"tr",2),i.qZA()()),2&dt&&(i.xp6(1),i.Q6J("ngIf",vt.headRow&&vt.headRow.length>0),i.xp6(2),i.Q6J("ngForOf",vt.bodyRows)("ngForTrackBy",vt.trackByBodyRow))},dependencies:[t.mk,t.sg,t.O5,t.tP,t.RF,t.n9,t.ED],encapsulation:2,changeDetection:0})}return rt})(),ps=(()=>{class rt extends go{constructor(Z){super(),this.dateHelper=Z}getSelectors(){return[{className:`${this.prefixCls}-month-btn`,title:this.locale.yearSelect,onClick:()=>this.changeMode("year"),label:this.dateHelper.format(this.value.nativeDate,eo(this.locale.yearFormat))}]}static#e=this.\u0275fac=function(dt){return new(dt||rt)(i.Y36(p.mx))};static#t=this.\u0275cmp=i.Xpm({type:rt,selectors:[["month-header"]],exportAs:["monthHeader"],features:[i.qOj],decls:11,vars:31,consts:[["role","button","type","button","tabindex","-1",3,"title","click"],[1,"ant-picker-super-prev-icon"],[1,"ant-picker-prev-icon"],[4,"ngFor","ngForOf"],[1,"ant-picker-next-icon"],[1,"ant-picker-super-next-icon"],["role","button","type","button",3,"title","click"]],template:function(dt,vt){1&dt&&(i.TgZ(0,"div")(1,"button",0),i.NdJ("click",function(){return vt.superPrevious()}),i._UZ(2,"span",1),i.qZA(),i.TgZ(3,"button",0),i.NdJ("click",function(){return vt.previous()}),i._UZ(4,"span",2),i.qZA(),i.TgZ(5,"div"),i.YNc(6,Ot,3,5,"ng-container",3),i.qZA(),i.TgZ(7,"button",0),i.NdJ("click",function(){return vt.next()}),i._UZ(8,"span",4),i.qZA(),i.TgZ(9,"button",0),i.NdJ("click",function(){return vt.superNext()}),i._UZ(10,"span",5),i.qZA()()),2&dt&&(i.Tol(vt.prefixCls),i.xp6(1),i.Gre("",vt.prefixCls,"-super-prev-btn"),i.Udp("visibility",vt.showSuperPreBtn?"visible":"hidden"),i.s9C("title",vt.superPreviousTitle()),i.xp6(2),i.Gre("",vt.prefixCls,"-prev-btn"),i.Udp("visibility",vt.showPreBtn?"visible":"hidden"),i.s9C("title",vt.previousTitle()),i.xp6(2),i.Gre("",vt.prefixCls,"-view"),i.xp6(1),i.Q6J("ngForOf",vt.selectors),i.xp6(1),i.Gre("",vt.prefixCls,"-next-btn"),i.Udp("visibility",vt.showNextBtn?"visible":"hidden"),i.s9C("title",vt.nextTitle()),i.xp6(2),i.Gre("",vt.prefixCls,"-super-next-btn"),i.Udp("visibility",vt.showSuperNextBtn?"visible":"hidden"),i.s9C("title",vt.superNextTitle()))},dependencies:[t.sg],encapsulation:2,changeDetection:0})}return rt})(),vo=(()=>{class rt extends xo{constructor(Z){super(),this.dateHelper=Z,this.MAX_ROW=4,this.MAX_COL=3}makeHeadRow(){return[]}makeBodyRows(){const Z=[];let dt=0;for(let vt=0;vtthis.chooseMonth(io.value.getMonth()),onMouseEnter:()=>this.cellHover.emit(In)};this.addCellProperty(io,In),$t.dateCells.push(io),dt++}Z.push($t)}return Z}isDisabledMonth(Z){if(!this.disabledDate)return!1;for(let vt=Z.setDate(1);vt.getMonth()===Z.getMonth();vt=vt.addDays(1))if(!this.disabledDate(vt.nativeDate))return!1;return!0}addCellProperty(Z,dt){if(this.hasRangeValue()){const[vt,$t]=this.hoverValue,[yn,In]=this.selectedValue;yn?.isSameMonth(dt)&&(Z.isSelectedStart=!0,Z.isSelected=!0),In?.isSameMonth(dt)&&(Z.isSelectedEnd=!0,Z.isSelected=!0),vt&&$t&&(Z.isHoverStart=vt.isSameMonth(dt),Z.isHoverEnd=$t.isSameMonth(dt),Z.isLastCellInPanel=11===dt.getMonth(),Z.isFirstCellInPanel=0===dt.getMonth(),Z.isInHoverRange=vt.isBeforeMonth(dt)&&dt.isBeforeMonth($t)),Z.isStartSingle=yn&&!In,Z.isEndSingle=!yn&&In,Z.isInSelectedRange=yn?.isBeforeMonth(dt)&&dt?.isBeforeMonth(In),Z.isRangeStartNearHover=yn&&Z.isInHoverRange,Z.isRangeEndNearHover=In&&Z.isInHoverRange}else dt.isSameMonth(this.value)&&(Z.isSelected=!0);Z.classMap=this.getClassMap(Z)}chooseMonth(Z){this.value=this.activeDate.setMonth(Z),this.valueChange.emit(this.value)}static#e=this.\u0275fac=function(dt){return new(dt||rt)(i.Y36(p.mx))};static#t=this.\u0275cmp=i.Xpm({type:rt,selectors:[["month-table"]],exportAs:["monthTable"],features:[i.qOj],decls:4,vars:3,consts:[["cellspacing","0","role","grid",1,"ant-picker-content"],[4,"ngIf"],["role","row",3,"ngClass",4,"ngFor","ngForOf","ngForTrackBy"],["role","row"],["role","columnheader",4,"ngIf"],["role","columnheader",3,"title",4,"ngFor","ngForOf"],["role","columnheader"],["role","columnheader",3,"title"],["role","row",3,"ngClass"],["role","gridcell",3,"class",4,"ngIf"],["role","gridcell",3,"title","ngClass","click","mouseenter",4,"ngFor","ngForOf","ngForTrackBy"],["role","gridcell"],["role","gridcell",3,"title","ngClass","click","mouseenter"],[3,"ngSwitch"],[4,"ngSwitchCase"],[4,"ngSwitchDefault"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"innerHTML"],[4,"ngIf","ngIfElse"],["defaultCell",""]],template:function(dt,vt){1&dt&&(i.TgZ(0,"table",0),i.YNc(1,ke,4,2,"thead",1),i.TgZ(2,"tbody"),i.YNc(3,_e,3,4,"tr",2),i.qZA()()),2&dt&&(i.xp6(1),i.Q6J("ngIf",vt.headRow&&vt.headRow.length>0),i.xp6(2),i.Q6J("ngForOf",vt.bodyRows)("ngForTrackBy",vt.trackByBodyRow))},dependencies:[t.mk,t.sg,t.O5,t.tP,t.RF,t.n9,t.ED],encapsulation:2,changeDetection:0})}return rt})(),ao=(()=>{class rt extends go{get startYear(){return 10*parseInt(""+this.value.getYear()/10,10)}get endYear(){return this.startYear+9}superPrevious(){this.changeValue(this.value.addYears(-10))}superNext(){this.changeValue(this.value.addYears(10))}getSelectors(){return[{className:`${this.prefixCls}-year-btn`,title:"",onClick:()=>this.changeMode("decade"),label:`${this.startYear}-${this.endYear}`}]}static#e=this.\u0275fac=function(){let Z;return function(vt){return(Z||(Z=i.n5z(rt)))(vt||rt)}}();static#t=this.\u0275cmp=i.Xpm({type:rt,selectors:[["year-header"]],exportAs:["yearHeader"],features:[i.qOj],decls:11,vars:31,consts:[["role","button","type","button","tabindex","-1",3,"title","click"],[1,"ant-picker-super-prev-icon"],[1,"ant-picker-prev-icon"],[4,"ngFor","ngForOf"],[1,"ant-picker-next-icon"],[1,"ant-picker-super-next-icon"],["role","button","type","button",3,"title","click"]],template:function(dt,vt){1&dt&&(i.TgZ(0,"div")(1,"button",0),i.NdJ("click",function(){return vt.superPrevious()}),i._UZ(2,"span",1),i.qZA(),i.TgZ(3,"button",0),i.NdJ("click",function(){return vt.previous()}),i._UZ(4,"span",2),i.qZA(),i.TgZ(5,"div"),i.YNc(6,it,3,5,"ng-container",3),i.qZA(),i.TgZ(7,"button",0),i.NdJ("click",function(){return vt.next()}),i._UZ(8,"span",4),i.qZA(),i.TgZ(9,"button",0),i.NdJ("click",function(){return vt.superNext()}),i._UZ(10,"span",5),i.qZA()()),2&dt&&(i.Tol(vt.prefixCls),i.xp6(1),i.Gre("",vt.prefixCls,"-super-prev-btn"),i.Udp("visibility",vt.showSuperPreBtn?"visible":"hidden"),i.s9C("title",vt.superPreviousTitle()),i.xp6(2),i.Gre("",vt.prefixCls,"-prev-btn"),i.Udp("visibility",vt.showPreBtn?"visible":"hidden"),i.s9C("title",vt.previousTitle()),i.xp6(2),i.Gre("",vt.prefixCls,"-view"),i.xp6(1),i.Q6J("ngForOf",vt.selectors),i.xp6(1),i.Gre("",vt.prefixCls,"-next-btn"),i.Udp("visibility",vt.showNextBtn?"visible":"hidden"),i.s9C("title",vt.nextTitle()),i.xp6(2),i.Gre("",vt.prefixCls,"-super-next-btn"),i.Udp("visibility",vt.showSuperNextBtn?"visible":"hidden"),i.s9C("title",vt.superNextTitle()))},dependencies:[t.sg],encapsulation:2,changeDetection:0})}return rt})(),Oo=(()=>{class rt extends xo{constructor(Z){super(),this.dateHelper=Z,this.MAX_ROW=4,this.MAX_COL=3}makeHeadRow(){return[]}makeBodyRows(){const Z=this.activeDate&&this.activeDate.getYear(),dt=10*parseInt(""+Z/10,10),vt=dt+9,$t=dt-1,yn=[];let In=0;for(let yi=0;yi=dt&&_o<=vt,isSelected:_o===(this.value&&this.value.getYear()),content:ts,title:ts,classMap:{},isLastCellInPanel:Yi.getYear()===vt,isFirstCellInPanel:Yi.getYear()===dt,cellRender:(0,d.rw)(this.cellRender,Yi),fullCellRender:(0,d.rw)(this.fullCellRender,Yi),onClick:()=>this.chooseYear(_i.value.getFullYear()),onMouseEnter:()=>this.cellHover.emit(Yi)};this.addCellProperty(_i,Yi),yo.dateCells.push(_i),In++}yn.push(yo)}return yn}getClassMap(Z){return{...super.getClassMap(Z),"ant-picker-cell-in-view":!!Z.isSameDecade}}isDisabledYear(Z){if(!this.disabledDate)return!1;for(let vt=Z.setMonth(0).setDate(1);vt.getYear()===Z.getYear();vt=vt.addDays(1))if(!this.disabledDate(vt.nativeDate))return!1;return!0}addCellProperty(Z,dt){if(this.hasRangeValue()){const[vt,$t]=this.hoverValue,[yn,In]=this.selectedValue;yn?.isSameYear(dt)&&(Z.isSelectedStart=!0,Z.isSelected=!0),In?.isSameYear(dt)&&(Z.isSelectedEnd=!0,Z.isSelected=!0),vt&&$t&&(Z.isHoverStart=vt.isSameYear(dt),Z.isHoverEnd=$t.isSameYear(dt),Z.isInHoverRange=vt.isBeforeYear(dt)&&dt.isBeforeYear($t)),Z.isStartSingle=yn&&!In,Z.isEndSingle=!yn&&In,Z.isInSelectedRange=yn?.isBeforeYear(dt)&&dt?.isBeforeYear(In),Z.isRangeStartNearHover=yn&&Z.isInHoverRange,Z.isRangeEndNearHover=In&&Z.isInHoverRange}else dt.isSameYear(this.value)&&(Z.isSelected=!0);Z.classMap=this.getClassMap(Z)}chooseYear(Z){this.value=this.activeDate.setYear(Z),this.valueChange.emit(this.value),this.render()}static#e=this.\u0275fac=function(dt){return new(dt||rt)(i.Y36(p.mx))};static#t=this.\u0275cmp=i.Xpm({type:rt,selectors:[["year-table"]],exportAs:["yearTable"],features:[i.qOj],decls:4,vars:3,consts:[["cellspacing","0","role","grid",1,"ant-picker-content"],[4,"ngIf"],["role","row",3,"ngClass",4,"ngFor","ngForOf","ngForTrackBy"],["role","row"],["role","columnheader",4,"ngIf"],["role","columnheader",3,"title",4,"ngFor","ngForOf"],["role","columnheader"],["role","columnheader",3,"title"],["role","row",3,"ngClass"],["role","gridcell",3,"class",4,"ngIf"],["role","gridcell",3,"title","ngClass","click","mouseenter",4,"ngFor","ngForOf","ngForTrackBy"],["role","gridcell"],["role","gridcell",3,"title","ngClass","click","mouseenter"],[3,"ngSwitch"],[4,"ngSwitchCase"],[4,"ngSwitchDefault"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"innerHTML"],[4,"ngIf","ngIfElse"],["defaultCell",""]],template:function(dt,vt){1&dt&&(i.TgZ(0,"table",0),i.YNc(1,O,4,2,"thead",1),i.TgZ(2,"tbody"),i.YNc(3,bn,3,4,"tr",2),i.qZA()()),2&dt&&(i.xp6(1),i.Q6J("ngIf",vt.headRow&&vt.headRow.length>0),i.xp6(2),i.Q6J("ngForOf",vt.bodyRows)("ngForTrackBy",vt.trackByBodyRow))},dependencies:[t.mk,t.sg,t.O5,t.tP,t.RF,t.n9,t.ED],encapsulation:2,changeDetection:0})}return rt})(),Wo=(()=>{class rt{constructor(){this.panelModeChange=new i.vpe,this.headerChange=new i.vpe,this.selectDate=new i.vpe,this.selectTime=new i.vpe,this.cellHover=new i.vpe,this.prefixCls=Kt}enablePrevNext(Z,dt){return!(!this.showTimePicker&&dt===this.endPanelMode&&("left"===this.partType&&"next"===Z||"right"===this.partType&&"prev"===Z))}onSelectTime(Z){this.selectTime.emit(new g.Yp(Z))}onSelectDate(Z){const dt=Z instanceof g.Yp?Z:new g.Yp(Z),vt=this.timeOptions&&this.timeOptions.nzDefaultOpenValue;!this.value&&vt&&dt.setHms(vt.getHours(),vt.getMinutes(),vt.getSeconds()),this.selectDate.emit(dt)}onChooseMonth(Z){this.activeDate=this.activeDate.setMonth(Z.getMonth()),"month"===this.endPanelMode?(this.value=Z,this.selectDate.emit(Z)):(this.headerChange.emit(Z),this.panelModeChange.emit(this.endPanelMode))}onChooseYear(Z){this.activeDate=this.activeDate.setYear(Z.getYear()),"year"===this.endPanelMode?(this.value=Z,this.selectDate.emit(Z)):(this.headerChange.emit(Z),this.panelModeChange.emit(this.endPanelMode))}onChooseDecade(Z){this.activeDate=this.activeDate.setYear(Z.getYear()),"decade"===this.endPanelMode?(this.value=Z,this.selectDate.emit(Z)):(this.headerChange.emit(Z),this.panelModeChange.emit("year"))}ngOnChanges(Z){Z.activeDate&&!Z.activeDate.currentValue&&(this.activeDate=new g.Yp),Z.panelMode&&"time"===Z.panelMode.currentValue&&(this.panelMode="date")}static#e=this.\u0275fac=function(dt){return new(dt||rt)};static#t=this.\u0275cmp=i.Xpm({type:rt,selectors:[["inner-popup"]],inputs:{activeDate:"activeDate",endPanelMode:"endPanelMode",panelMode:"panelMode",showWeek:"showWeek",locale:"locale",showTimePicker:"showTimePicker",timeOptions:"timeOptions",disabledDate:"disabledDate",dateRender:"dateRender",selectedValue:"selectedValue",hoverValue:"hoverValue",value:"value",partType:"partType"},outputs:{panelModeChange:"panelModeChange",headerChange:"headerChange",selectDate:"selectDate",selectTime:"selectTime",cellHover:"cellHover"},exportAs:["innerPopup"],features:[i.TTD],decls:8,vars:11,consts:[[3,"ngSwitch"],[4,"ngSwitchCase"],[4,"ngSwitchDefault"],[4,"ngIf"],[3,"value","locale","showSuperPreBtn","showSuperNextBtn","showNextBtn","showPreBtn","valueChange","panelModeChange"],[3,"activeDate","value","locale","disabledDate","valueChange"],[3,"activeDate","value","locale","disabledDate","selectedValue","hoverValue","valueChange","cellHover"],[3,"value","activeDate","locale","disabledDate","selectedValue","hoverValue","valueChange","cellHover"],[3,"value","locale","showSuperPreBtn","showSuperNextBtn","showPreBtn","showNextBtn","valueChange","panelModeChange"],[3,"locale","showWeek","value","activeDate","disabledDate","cellRender","selectedValue","hoverValue","canSelectWeek","valueChange","cellHover"],[3,"nzInDatePicker","ngModel","format","nzHourStep","nzMinuteStep","nzSecondStep","nzDisabledHours","nzDisabledMinutes","nzDisabledSeconds","nzHideDisabledOptions","nzDefaultOpenValue","nzUse12Hours","nzAddOn","ngModelChange"]],template:function(dt,vt){1&dt&&(i.TgZ(0,"div")(1,"div"),i.ynx(2,0),i.YNc(3,Rn,4,13,"ng-container",1),i.YNc(4,qn,4,15,"ng-container",1),i.YNc(5,si,4,15,"ng-container",1),i.YNc(6,Wn,4,18,"ng-container",2),i.BQk(),i.qZA(),i.YNc(7,ci,2,13,"ng-container",3),i.qZA()),2&dt&&(i.ekj("ant-picker-datetime-panel",vt.showTimePicker),i.xp6(1),i.MT6("",vt.prefixCls,"-",vt.panelMode,"-panel"),i.xp6(1),i.Q6J("ngSwitch",vt.panelMode),i.xp6(1),i.Q6J("ngSwitchCase","decade"),i.xp6(1),i.Q6J("ngSwitchCase","year"),i.xp6(1),i.Q6J("ngSwitchCase","month"),i.xp6(2),i.Q6J("ngIf",vt.showTimePicker&&vt.timeOptions))},dependencies:[t.O5,t.RF,t.n9,t.ED,l.JJ,l.On,hs,Ti,qo,So,ps,vo,ao,Oo,v.Iv],encapsulation:2,changeDetection:0})}return rt})(),Jn=(()=>{class rt{get hasTimePicker(){return!!this.showTime}get hasFooter(){return this.showToday||this.hasTimePicker||!!this.extraFooter||!!this.ranges}get arrowPosition(){return"rtl"===this.dir?{right:`${this.datePickerService?.arrowLeft}px`}:{left:`${this.datePickerService?.arrowLeft}px`}}constructor(Z,dt,vt,$t){this.datePickerService=Z,this.cdr=dt,this.ngZone=vt,this.host=$t,this.inline=!1,this.dir="ltr",this.panelModeChange=new i.vpe,this.calendarChange=new i.vpe,this.resultOk=new i.vpe,this.prefixCls=Kt,this.endPanelMode="date",this.timeOptions=null,this.hoverValue=[],this.checkedPartArr=[!1,!1],this.destroy$=new _.x,this.disabledStartTime=yn=>this.disabledTime&&this.disabledTime(yn,"start"),this.disabledEndTime=yn=>this.disabledTime&&this.disabledTime(yn,"end")}ngOnInit(){(0,P.T)(this.datePickerService.valueChange$,this.datePickerService.inputPartChange$).pipe((0,k.R)(this.destroy$)).subscribe(()=>{this.updateActiveDate(),this.cdr.markForCheck()}),this.ngZone.runOutsideAngular(()=>{(0,S.R)(this.host.nativeElement,"mousedown").pipe((0,k.R)(this.destroy$)).subscribe(Z=>Z.preventDefault())})}ngOnChanges(Z){(Z.showTime||Z.disabledTime)&&this.showTime&&this.buildTimeOptions(),Z.panelMode&&(this.endPanelMode=this.panelMode),Z.defaultPickerValue&&this.updateActiveDate()}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}updateActiveDate(){const Z=this.datePickerService.hasValue()?this.datePickerService.value:this.datePickerService.makeValue(this.defaultPickerValue);this.datePickerService.setActiveDate(Z,this.hasTimePicker,this.getPanelMode(this.endPanelMode))}onClickOk(){this.changeValueFromSelect(this.isRange?this.datePickerService.value[{left:0,right:1}[this.datePickerService.activeInput]]:this.datePickerService.value),this.resultOk.emit()}onClickToday(Z){this.changeValueFromSelect(Z,!this.showTime)}onCellHover(Z){if(!this.isRange)return;const vt=this.datePickerService.value[{left:1,right:0}[this.datePickerService.activeInput]];vt&&(this.hoverValue=vt.isBeforeDay(Z)?[vt,Z]:[Z,vt])}onPanelModeChange(Z,dt){this.panelMode=this.isRange?0===this.datePickerService.getActiveIndex(dt)?[Z,this.panelMode[1]]:[this.panelMode[0],Z]:Z,this.panelModeChange.emit(this.panelMode)}onActiveDateChange(Z,dt){if(this.isRange){const vt=[];vt[this.datePickerService.getActiveIndex(dt)]=Z,this.datePickerService.setActiveDate(vt,this.hasTimePicker,this.getPanelMode(this.endPanelMode,dt))}else this.datePickerService.setActiveDate(Z)}onSelectTime(Z,dt){if(this.isRange){const vt=(0,g.ky)(this.datePickerService.value),$t=this.datePickerService.getActiveIndex(dt);vt[$t]=this.overrideHms(Z,vt[$t]),this.datePickerService.setValue(vt)}else{const vt=this.overrideHms(Z,this.datePickerService.value);this.datePickerService.setValue(vt)}this.datePickerService.inputPartChange$.next(null),this.buildTimeOptions()}changeValueFromSelect(Z,dt=!0){if(this.isRange){const vt=(0,g.ky)(this.datePickerService.value),$t=this.datePickerService.activeInput;let yn=$t;vt[this.datePickerService.getActiveIndex($t)]=Z,this.checkedPartArr[this.datePickerService.getActiveIndex($t)]=!0,this.hoverValue=vt,dt?this.inline?(yn=this.reversedPart($t),"right"===yn&&(vt[this.datePickerService.getActiveIndex(yn)]=null,this.checkedPartArr[this.datePickerService.getActiveIndex(yn)]=!1),this.datePickerService.setValue(vt),this.calendarChange.emit(vt),this.isBothAllowed(vt)&&this.checkedPartArr[0]&&this.checkedPartArr[1]&&(this.clearHoverValue(),this.datePickerService.emitValue$.next())):((0,g.Et)(vt)&&(yn=this.reversedPart($t),vt[this.datePickerService.getActiveIndex(yn)]=null,this.checkedPartArr[this.datePickerService.getActiveIndex(yn)]=!1),this.datePickerService.setValue(vt),this.isBothAllowed(vt)&&this.checkedPartArr[0]&&this.checkedPartArr[1]?(this.calendarChange.emit(vt),this.clearHoverValue(),this.datePickerService.emitValue$.next()):this.isAllowed(vt)&&(yn=this.reversedPart($t),this.calendarChange.emit([Z.clone()]))):this.datePickerService.setValue(vt),this.datePickerService.inputPartChange$.next(yn)}else this.datePickerService.setValue(Z),this.datePickerService.inputPartChange$.next(null),dt&&this.isAllowed(Z)&&this.datePickerService.emitValue$.next();this.buildTimeOptions()}reversedPart(Z){return"left"===Z?"right":"left"}getPanelMode(Z,dt){return this.isRange?Z[this.datePickerService.getActiveIndex(dt)]:Z}getValue(Z){return this.isRange?(this.datePickerService.value||[])[this.datePickerService.getActiveIndex(Z)]:this.datePickerService.value}getActiveDate(Z){return this.isRange?this.datePickerService.activeDate[this.datePickerService.getActiveIndex(Z)]:this.datePickerService.activeDate}isOneAllowed(Z){const dt=this.datePickerService.getActiveIndex();return ui(Z[dt],this.disabledDate,[this.disabledStartTime,this.disabledEndTime][dt])}isBothAllowed(Z){return ui(Z[0],this.disabledDate,this.disabledStartTime)&&ui(Z[1],this.disabledDate,this.disabledEndTime)}isAllowed(Z,dt=!1){return this.isRange?dt?this.isBothAllowed(Z):this.isOneAllowed(Z):ui(Z,this.disabledDate,this.disabledTime)}getTimeOptions(Z){return this.showTime&&this.timeOptions?this.timeOptions instanceof Array?this.timeOptions[this.datePickerService.getActiveIndex(Z)]:this.timeOptions:null}onClickPresetRange(Z){const dt="function"==typeof Z?Z():Z;dt&&(this.datePickerService.setValue([new g.Yp(dt[0]),new g.Yp(dt[1])]),this.datePickerService.emitValue$.next())}onPresetRangeMouseLeave(){this.clearHoverValue()}onHoverPresetRange(Z){"function"!=typeof Z&&(this.hoverValue=[new g.Yp(Z[0]),new g.Yp(Z[1])])}getObjectKeys(Z){return Z?Object.keys(Z):[]}show(Z){return!(this.showTime&&this.isRange&&this.datePickerService.activeInput!==Z)}clearHoverValue(){this.hoverValue=[]}buildTimeOptions(){if(this.showTime){const Z="object"==typeof this.showTime?this.showTime:{};if(this.isRange){const dt=this.datePickerService.value;this.timeOptions=[this.overrideTimeOptions(Z,dt[0],"start"),this.overrideTimeOptions(Z,dt[1],"end")]}else this.timeOptions=this.overrideTimeOptions(Z,this.datePickerService.value)}else this.timeOptions=null}overrideTimeOptions(Z,dt,vt){let $t;return $t=vt?"start"===vt?this.disabledStartTime:this.disabledEndTime:this.disabledTime,{...Z,...zn(dt,$t)}}overrideHms(Z,dt){return Z=Z||new g.Yp,(dt=dt||new g.Yp).setHms(Z.getHours(),Z.getMinutes(),Z.getSeconds())}static#e=this.\u0275fac=function(dt){return new(dt||rt)(i.Y36(Un),i.Y36(i.sBO),i.Y36(i.R0b),i.Y36(i.SBq))};static#t=this.\u0275cmp=i.Xpm({type:rt,selectors:[["date-range-popup"]],inputs:{isRange:"isRange",inline:"inline",showWeek:"showWeek",locale:"locale",disabledDate:"disabledDate",disabledTime:"disabledTime",showToday:"showToday",showNow:"showNow",showTime:"showTime",extraFooter:"extraFooter",ranges:"ranges",dateRender:"dateRender",panelMode:"panelMode",defaultPickerValue:"defaultPickerValue",dir:"dir"},outputs:{panelModeChange:"panelModeChange",calendarChange:"calendarChange",resultOk:"resultOk"},exportAs:["dateRangePopup"],features:[i.TTD],decls:9,vars:2,consts:[[4,"ngIf","ngIfElse"],["singlePanel",""],["tplInnerPopup",""],["tplFooter",""],["tplRangeQuickSelector",""],["noTimePicker",""],[4,"ngTemplateOutlet"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],["tabindex","-1"],[3,"showWeek","endPanelMode","partType","locale","showTimePicker","timeOptions","panelMode","activeDate","value","disabledDate","dateRender","selectedValue","hoverValue","panelModeChange","cellHover","selectDate","selectTime","headerChange"],[3,"locale","isRange","showToday","showNow","hasTimePicker","okDisabled","extraFooter","rangeQuickSelector","clickOk","clickToday",4,"ngIf"],[3,"locale","isRange","showToday","showNow","hasTimePicker","okDisabled","extraFooter","rangeQuickSelector","clickOk","clickToday"],[3,"class","click","mouseenter","mouseleave",4,"ngFor","ngForOf"],[3,"click","mouseenter","mouseleave"],[1,"ant-tag","ant-tag-blue"]],template:function(dt,vt){if(1&dt&&(i.YNc(0,Wi,9,19,"ng-container",0),i.YNc(1,$i,4,13,"ng-template",null,1,i.W1O),i.YNc(3,Qi,2,18,"ng-template",null,2,i.W1O),i.YNc(5,wi,1,1,"ng-template",null,3,i.W1O),i.YNc(7,Ei,1,1,"ng-template",null,4,i.W1O)),2&dt){const $t=i.MAs(2);i.Q6J("ngIf",vt.isRange)("ngIfElse",$t)}},dependencies:[t.sg,t.O5,t.tP,Ui,Wo],encapsulation:2,changeDetection:0})}return rt})();const to={position:"relative"};let no=(()=>{class rt{get nzShowTime(){return this.showTime}set nzShowTime(Z){this.showTime="object"==typeof Z?Z:(0,d.sw)(Z)}get realOpenState(){return this.isOpenHandledByUser()?!!this.nzOpen:this.overlayOpen}ngAfterViewInit(){this.nzAutoFocus&&this.focus(),this.isRange&&this.platform.isBrowser&&this.nzResizeObserver.observe(this.elementRef).pipe((0,k.R)(this.destroy$)).subscribe(()=>{this.updateInputWidthAndArrowLeft()}),this.datePickerService.inputPartChange$.pipe((0,k.R)(this.destroy$)).subscribe(Z=>{Z&&(this.datePickerService.activeInput=Z),this.focus(),this.updateInputWidthAndArrowLeft()}),this.platform.isBrowser&&this.ngZone.runOutsideAngular(()=>(0,S.R)(this.elementRef.nativeElement,"mousedown").pipe((0,k.R)(this.destroy$)).subscribe(Z=>{"input"!==Z.target.tagName.toLowerCase()&&Z.preventDefault()}))}updateInputWidthAndArrowLeft(){this.inputWidth=this.rangePickerInputs?.first?.nativeElement.offsetWidth||0;const Z={position:"absolute",width:`${this.inputWidth}px`};this.datePickerService.arrowLeft="left"===this.datePickerService.activeInput?0:this.inputWidth+this.separatorElement?.nativeElement.offsetWidth||0,this.activeBarStyle="rtl"===this.dir?{...Z,right:`${this.datePickerService.arrowLeft}px`}:{...Z,left:`${this.datePickerService.arrowLeft}px`},this.cdr.markForCheck()}getInput(Z){if(!this.nzInline)return this.isRange?"left"===Z?this.rangePickerInputs?.first.nativeElement:this.rangePickerInputs?.last.nativeElement:this.pickerInput.nativeElement}focus(){const Z=this.getInput(this.datePickerService.activeInput);this.document.activeElement!==Z&&Z?.focus()}onFocus(Z,dt){Z.preventDefault(),dt&&this.datePickerService.inputPartChange$.next(dt),this.renderClass(!0)}onFocusout(Z){Z.preventDefault(),this.onTouchedFn(),this.elementRef.nativeElement.contains(Z.relatedTarget)||this.checkAndClose(),this.renderClass(!1)}open(){this.nzInline||!this.realOpenState&&!this.nzDisabled&&(this.updateInputWidthAndArrowLeft(),this.overlayOpen=!0,this.nzOnOpenChange.emit(!0),this.focus(),this.cdr.markForCheck())}close(){this.nzInline||this.realOpenState&&(this.overlayOpen=!1,this.nzOnOpenChange.emit(!1))}showClear(){return!this.nzDisabled&&!this.isEmptyValue(this.datePickerService.value)&&this.nzAllowClear}checkAndClose(){if(this.realOpenState)if(this.panel.isAllowed(this.datePickerService.value,!0)){if(Array.isArray(this.datePickerService.value)&&(0,g.Et)(this.datePickerService.value)){const Z=this.datePickerService.getActiveIndex();return void this.panel.changeValueFromSelect(this.datePickerService.value[Z],!0)}this.updateInputValue(),this.datePickerService.emitValue$.next()}else this.datePickerService.setValue(this.datePickerService.initialValue),this.close()}onClickInputBox(Z){Z.stopPropagation(),this.focus(),this.isOpenHandledByUser()||this.open()}onOverlayKeydown(Z){Z.keyCode===x.hY&&this.datePickerService.initValue()}onPositionChange(Z){this.currentPositionX=Z.connectionPair.originX,this.currentPositionY=Z.connectionPair.originY,this.cdr.detectChanges()}onClickClear(Z){Z.preventDefault(),Z.stopPropagation(),this.datePickerService.initValue(!0),this.datePickerService.emitValue$.next()}updateInputValue(){const Z=this.datePickerService.value;this.inputValue=this.isRange?Z?Z.map(dt=>this.formatValue(dt)):["",""]:this.formatValue(Z),this.cdr.markForCheck()}formatValue(Z){return this.dateHelper.format(Z&&Z.nativeDate,this.nzFormat)}onInputChange(Z,dt=!1){if(!this.platform.TRIDENT&&this.document.activeElement===this.getInput(this.datePickerService.activeInput)&&!this.realOpenState)return void this.open();const vt=this.checkValidDate(Z);vt&&this.realOpenState&&this.panel.changeValueFromSelect(vt,dt)}onKeyupEnter(Z){this.onInputChange(Z.target.value,!0)}checkValidDate(Z){const dt=new g.Yp(this.dateHelper.parseDate(Z,this.nzFormat));return dt.isValid()&&Z===this.dateHelper.format(dt.nativeDate,this.nzFormat)?dt:null}getPlaceholder(Z){return this.isRange?this.nzPlaceHolder[this.datePickerService.getActiveIndex(Z)]:this.nzPlaceHolder}isEmptyValue(Z){return null===Z||(this.isRange?!Z||!Array.isArray(Z)||Z.every(dt=>!dt):!Z)}isOpenHandledByUser(){return void 0!==this.nzOpen}constructor(Z,dt,vt,$t,yn,In,yi,yo,io,_o,Yi,ts,Lo,_i,fs,$o){this.nzConfigService=Z,this.datePickerService=dt,this.i18n=vt,this.cdr=$t,this.renderer=yn,this.ngZone=In,this.elementRef=yi,this.dateHelper=yo,this.nzResizeObserver=io,this.platform=_o,this.destroy$=Yi,this.directionality=Lo,this.noAnimation=_i,this.nzFormStatusService=fs,this.nzFormNoStatusService=$o,this._nzModuleName="datePicker",this.isRange=!1,this.dir="ltr",this.statusCls={},this.status="",this.hasFeedback=!1,this.panelMode="date",this.isCustomPlaceHolder=!1,this.isCustomFormat=!1,this.showTime=!1,this.isNzDisableFirstChange=!0,this.nzAllowClear=!0,this.nzAutoFocus=!1,this.nzDisabled=!1,this.nzBorderless=!1,this.nzInputReadOnly=!1,this.nzInline=!1,this.nzPlaceHolder="",this.nzPopupStyle=to,this.nzSize="default",this.nzStatus="",this.nzShowToday=!0,this.nzMode="date",this.nzShowNow=!0,this.nzDefaultPickerValue=null,this.nzSeparator=void 0,this.nzSuffixIcon="calendar",this.nzBackdrop=!1,this.nzId=null,this.nzPlacement="bottomLeft",this.nzShowWeekNumber=!1,this.nzOnPanelChange=new i.vpe,this.nzOnCalendarChange=new i.vpe,this.nzOnOk=new i.vpe,this.nzOnOpenChange=new i.vpe,this.inputSize=12,this.prefixCls=Kt,this.activeBarStyle={},this.overlayOpen=!1,this.overlayPositions=[...M.bw],this.currentPositionX="start",this.currentPositionY="bottom",this.onChangeFn=()=>{},this.onTouchedFn=()=>{},this.document=ts,this.origin=new n.xu(this.elementRef)}ngOnInit(){this.nzFormStatusService?.formStatusChanges.pipe((0,R.x)((Z,dt)=>Z.status===dt.status&&Z.hasFeedback===dt.hasFeedback),(0,$.M)(this.nzFormNoStatusService?this.nzFormNoStatusService.noFormStatus:(0,A.of)(!1)),(0,W.U)(([{status:Z,hasFeedback:dt},vt])=>({status:vt?"":Z,hasFeedback:dt})),(0,k.R)(this.destroy$)).subscribe(({status:Z,hasFeedback:dt})=>{this.setStatusStyles(Z,dt)}),this.nzLocale||this.i18n.localeChange.pipe((0,k.R)(this.destroy$)).subscribe(()=>this.setLocale()),this.datePickerService.isRange=this.isRange,this.datePickerService.initValue(!0),this.datePickerService.emitValue$.pipe((0,k.R)(this.destroy$)).subscribe(()=>{const Z=this.showTime?"second":"day",dt=this.datePickerService.value,vt=this.datePickerService.initialValue;if(!this.isRange&&dt?.isSame(vt?.nativeDate,Z))return this.onTouchedFn(),this.close();if(this.isRange){const[$t,yn]=vt,[In,yi]=dt;if($t?.isSame(In?.nativeDate,Z)&&yn?.isSame(yi?.nativeDate,Z))return this.onTouchedFn(),this.close()}if(this.datePickerService.initialValue=(0,g.ky)(dt),this.isRange){const $t=dt;this.onChangeFn($t.length?[$t[0]?.nativeDate??null,$t[1]?.nativeDate??null]:[])}else this.onChangeFn(dt?dt.nativeDate:null);this.onTouchedFn(),this.close()}),this.directionality.change?.pipe((0,k.R)(this.destroy$)).subscribe(Z=>{this.dir=Z,this.cdr.detectChanges()}),this.dir=this.directionality.value,this.inputValue=this.isRange?["",""]:"",this.setModeAndFormat(),this.datePickerService.valueChange$.pipe((0,k.R)(this.destroy$)).subscribe(()=>{this.updateInputValue()})}ngOnChanges(Z){const{nzStatus:dt,nzPlacement:vt}=Z;Z.nzPopupStyle&&(this.nzPopupStyle=this.nzPopupStyle?{...this.nzPopupStyle,...to}:to),Z.nzPlaceHolder?.currentValue&&(this.isCustomPlaceHolder=!0),Z.nzFormat?.currentValue&&(this.isCustomFormat=!0),Z.nzLocale&&this.setDefaultPlaceHolder(),Z.nzRenderExtraFooter&&(this.extraFooter=(0,d.rw)(this.nzRenderExtraFooter)),Z.nzMode&&(this.setDefaultPlaceHolder(),this.setModeAndFormat()),dt&&this.setStatusStyles(this.nzStatus,this.hasFeedback),vt&&this.setPlacement(this.nzPlacement)}setModeAndFormat(){const Z={year:"yyyy",month:"yyyy-MM",week:"YYYY-ww",date:this.nzShowTime?"yyyy-MM-dd HH:mm:ss":"yyyy-MM-dd"};this.nzMode||(this.nzMode="date"),this.panelMode=this.isRange?[this.nzMode,this.nzMode]:this.nzMode,this.isCustomFormat||(this.nzFormat=Z[this.nzMode]),this.inputSize=Math.max(10,this.nzFormat.length)+2,this.updateInputValue()}onOpenChange(Z){this.nzOnOpenChange.emit(Z)}writeValue(Z){this.setValue(Z),this.cdr.markForCheck()}registerOnChange(Z){this.onChangeFn=Z}registerOnTouched(Z){this.onTouchedFn=Z}setDisabledState(Z){this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||Z,this.cdr.markForCheck(),this.isNzDisableFirstChange=!1}setLocale(){this.nzLocale=this.i18n.getLocaleData("DatePicker",{}),this.setDefaultPlaceHolder(),this.cdr.markForCheck()}setDefaultPlaceHolder(){if(!this.isCustomPlaceHolder&&this.nzLocale){const Z={year:this.getPropertyOfLocale("yearPlaceholder"),month:this.getPropertyOfLocale("monthPlaceholder"),week:this.getPropertyOfLocale("weekPlaceholder"),date:this.getPropertyOfLocale("placeholder")},dt={year:this.getPropertyOfLocale("rangeYearPlaceholder"),month:this.getPropertyOfLocale("rangeMonthPlaceholder"),week:this.getPropertyOfLocale("rangeWeekPlaceholder"),date:this.getPropertyOfLocale("rangePlaceholder")};this.nzPlaceHolder=this.isRange?dt[this.nzMode]:Z[this.nzMode]}}getPropertyOfLocale(Z){return this.nzLocale.lang[Z]||this.i18n.getLocaleData(`DatePicker.lang.${Z}`)}setValue(Z){const dt=this.datePickerService.makeValue(Z);this.datePickerService.setValue(dt),this.datePickerService.initialValue=(0,g.ky)(dt),this.cdr.detectChanges()}renderClass(Z){Z?this.renderer.addClass(this.elementRef.nativeElement,"ant-picker-focused"):this.renderer.removeClass(this.elementRef.nativeElement,"ant-picker-focused")}onPanelModeChange(Z){this.nzOnPanelChange.emit(Z)}onCalendarChange(Z){if(this.isRange&&Array.isArray(Z)){const dt=Z.filter(vt=>vt instanceof g.Yp).map(vt=>vt.nativeDate);this.nzOnCalendarChange.emit(dt)}}onResultOk(){if(this.isRange){const Z=this.datePickerService.value;this.nzOnOk.emit(Z.length?[Z[0]?.nativeDate||null,Z[1]?.nativeDate||null]:[])}else this.nzOnOk.emit(this.datePickerService.value?this.datePickerService.value.nativeDate:null)}setStatusStyles(Z,dt){this.status=Z,this.hasFeedback=dt,this.cdr.markForCheck(),this.statusCls=(0,d.Zu)(this.prefixCls,Z,dt),Object.keys(this.statusCls).forEach(vt=>{this.statusCls[vt]?this.renderer.addClass(this.elementRef.nativeElement,vt):this.renderer.removeClass(this.elementRef.nativeElement,vt)})}setPlacement(Z){const dt=M.dz[Z];this.overlayPositions=[dt,...M.bw],this.currentPositionX=dt.originX,this.currentPositionY=dt.originY}static#e=this.\u0275fac=function(dt){return new(dt||rt)(i.Y36(Y.jY),i.Y36(Un),i.Y36(p.wi),i.Y36(i.sBO),i.Y36(i.Qsj),i.Y36(i.R0b),i.Y36(i.SBq),i.Y36(p.mx),i.Y36(V.D3),i.Y36(K.t4),i.Y36(G.kn),i.Y36(t.K0),i.Y36(e.Is,8),i.Y36(u.P,9),i.Y36(E.kH,8),i.Y36(E.yW,8))};static#t=this.\u0275cmp=i.Xpm({type:rt,selectors:[["nz-date-picker"],["nz-week-picker"],["nz-month-picker"],["nz-year-picker"],["nz-range-picker"]],viewQuery:function(dt,vt){if(1&dt&&(i.Gf(n.pI,5),i.Gf(Jn,5),i.Gf(Hi,5),i.Gf(qi,5),i.Gf(Pi,5)),2&dt){let $t;i.iGM($t=i.CRH())&&(vt.cdkConnectedOverlay=$t.first),i.iGM($t=i.CRH())&&(vt.panel=$t.first),i.iGM($t=i.CRH())&&(vt.separatorElement=$t.first),i.iGM($t=i.CRH())&&(vt.pickerInput=$t.first),i.iGM($t=i.CRH())&&(vt.rangePickerInputs=$t)}},hostVars:16,hostBindings:function(dt,vt){1&dt&&i.NdJ("click",function(yn){return vt.onClickInputBox(yn)}),2&dt&&i.ekj("ant-picker",!0)("ant-picker-range",vt.isRange)("ant-picker-large","large"===vt.nzSize)("ant-picker-small","small"===vt.nzSize)("ant-picker-disabled",vt.nzDisabled)("ant-picker-rtl","rtl"===vt.dir)("ant-picker-borderless",vt.nzBorderless)("ant-picker-inline",vt.nzInline)},inputs:{nzAllowClear:"nzAllowClear",nzAutoFocus:"nzAutoFocus",nzDisabled:"nzDisabled",nzBorderless:"nzBorderless",nzInputReadOnly:"nzInputReadOnly",nzInline:"nzInline",nzOpen:"nzOpen",nzDisabledDate:"nzDisabledDate",nzLocale:"nzLocale",nzPlaceHolder:"nzPlaceHolder",nzPopupStyle:"nzPopupStyle",nzDropdownClassName:"nzDropdownClassName",nzSize:"nzSize",nzStatus:"nzStatus",nzFormat:"nzFormat",nzDateRender:"nzDateRender",nzDisabledTime:"nzDisabledTime",nzRenderExtraFooter:"nzRenderExtraFooter",nzShowToday:"nzShowToday",nzMode:"nzMode",nzShowNow:"nzShowNow",nzRanges:"nzRanges",nzDefaultPickerValue:"nzDefaultPickerValue",nzSeparator:"nzSeparator",nzSuffixIcon:"nzSuffixIcon",nzBackdrop:"nzBackdrop",nzId:"nzId",nzPlacement:"nzPlacement",nzShowWeekNumber:"nzShowWeekNumber",nzShowTime:"nzShowTime"},outputs:{nzOnPanelChange:"nzOnPanelChange",nzOnCalendarChange:"nzOnCalendarChange",nzOnOk:"nzOnOk",nzOnOpenChange:"nzOnOpenChange"},exportAs:["nzDatePicker"],features:[i._Bn([G.kn,Un,{provide:l.JU,multi:!0,useExisting:(0,i.Gpc)(()=>rt)}]),i.TTD],decls:8,vars:7,consts:[[4,"ngIf","ngIfElse"],["tplRangeInput",""],["tplRightRest",""],["inlineMode",""],["cdkConnectedOverlay","","nzConnectedOverlay","",3,"cdkConnectedOverlayHasBackdrop","cdkConnectedOverlayOrigin","cdkConnectedOverlayOpen","cdkConnectedOverlayPositions","cdkConnectedOverlayTransformOriginOn","positionChange","detach","overlayKeydown"],[3,"class",4,"ngIf"],[4,"ngIf"],["autocomplete","off",3,"disabled","readOnly","ngModel","placeholder","size","ngModelChange","focus","focusout","keyup.enter"],["pickerInput",""],[4,"ngTemplateOutlet"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],["separatorElement",""],[4,"nzStringTemplateOutlet"],["defaultSeparator",""],["nz-icon","","nzType","swap-right","nzTheme","outline"],["autocomplete","off",3,"disabled","readOnly","size","ngModel","placeholder","click","focusout","focus","keyup.enter","ngModelChange"],["rangePickerInput",""],[3,"ngStyle"],[3,"class","click",4,"ngIf"],[3,"status",4,"ngIf"],[3,"click"],["nz-icon","","nzType","close-circle","nzTheme","fill"],["nz-icon","",3,"nzType"],[3,"status"],[3,"isRange","inline","defaultPickerValue","showWeek","panelMode","locale","showToday","showNow","showTime","dateRender","disabledDate","disabledTime","extraFooter","ranges","dir","panelModeChange","calendarChange","resultOk"],[1,"ant-picker-wrapper",2,"position","relative",3,"nzNoAnimation"]],template:function(dt,vt){if(1&dt&&(i.YNc(0,Qt,3,2,"ng-container",0),i.YNc(1,gn,2,6,"ng-template",null,1,i.W1O),i.YNc(3,St,5,10,"ng-template",null,2,i.W1O),i.YNc(5,gt,2,36,"ng-template",null,3,i.W1O),i.YNc(7,Nt,2,3,"ng-template",4),i.NdJ("positionChange",function(yn){return vt.onPositionChange(yn)})("detach",function(){return vt.close()})("overlayKeydown",function(yn){return vt.onOverlayKeydown(yn)})),2&dt){const $t=i.MAs(6);i.Q6J("ngIf",!vt.nzInline)("ngIfElse",$t),i.xp6(7),i.Q6J("cdkConnectedOverlayHasBackdrop",vt.nzBackdrop)("cdkConnectedOverlayOrigin",vt.origin)("cdkConnectedOverlayOpen",vt.realOpenState)("cdkConnectedOverlayPositions",vt.overlayPositions)("cdkConnectedOverlayTransformOriginOn",".ant-picker-wrapper")}},dependencies:[e.Lv,t.O5,t.tP,t.PC,l.Fj,l.JJ,l.On,n.pI,h.Ls,M.hQ,u.P,E.w_,z.f,f.w,Jn],encapsulation:2,data:{animation:[ze.mF]},changeDetection:0})}return(0,T.gn)([(0,d.yF)()],rt.prototype,"nzAllowClear",void 0),(0,T.gn)([(0,d.yF)()],rt.prototype,"nzAutoFocus",void 0),(0,T.gn)([(0,d.yF)()],rt.prototype,"nzDisabled",void 0),(0,T.gn)([(0,d.yF)()],rt.prototype,"nzBorderless",void 0),(0,T.gn)([(0,d.yF)()],rt.prototype,"nzInputReadOnly",void 0),(0,T.gn)([(0,d.yF)()],rt.prototype,"nzInline",void 0),(0,T.gn)([(0,d.yF)()],rt.prototype,"nzOpen",void 0),(0,T.gn)([(0,d.yF)()],rt.prototype,"nzShowToday",void 0),(0,T.gn)([(0,d.yF)()],rt.prototype,"nzShowNow",void 0),(0,T.gn)([(0,Y.oS)()],rt.prototype,"nzSeparator",void 0),(0,T.gn)([(0,Y.oS)()],rt.prototype,"nzSuffixIcon",void 0),(0,T.gn)([(0,Y.oS)()],rt.prototype,"nzBackdrop",void 0),(0,T.gn)([(0,d.yF)()],rt.prototype,"nzShowWeekNumber",void 0),rt})(),ji=(()=>{class rt{static#e=this.\u0275fac=function(dt){return new(dt||rt)};static#t=this.\u0275mod=i.oAB({type:rt});static#n=this.\u0275inj=i.cJS({imports:[t.ez,l.u5,p.YI,v.wY,z.T]})}return rt})(),Ro=(()=>{class rt{constructor(Z){this.datePicker=Z,this.datePicker.nzMode="month"}static#e=this.\u0275fac=function(dt){return new(dt||rt)(i.Y36(no,9))};static#t=this.\u0275dir=i.lG2({type:rt,selectors:[["nz-month-picker"]],exportAs:["nzMonthPicker"]})}return rt})(),Fi=(()=>{class rt{constructor(Z){this.datePicker=Z,this.datePicker.isRange=!0}static#e=this.\u0275fac=function(dt){return new(dt||rt)(i.Y36(no,9))};static#t=this.\u0275dir=i.lG2({type:rt,selectors:[["nz-range-picker"]],exportAs:["nzRangePicker"]})}return rt})(),lo=(()=>{class rt{constructor(Z){this.datePicker=Z,this.datePicker.nzMode="week"}static#e=this.\u0275fac=function(dt){return new(dt||rt)(i.Y36(no,9))};static#t=this.\u0275dir=i.lG2({type:rt,selectors:[["nz-week-picker"]],exportAs:["nzWeekPicker"]})}return rt})(),Ai=(()=>{class rt{constructor(Z){this.datePicker=Z,this.datePicker.nzMode="year"}static#e=this.\u0275fac=function(dt){return new(dt||rt)(i.Y36(no,9))};static#t=this.\u0275dir=i.lG2({type:rt,selectors:[["nz-year-picker"]],exportAs:["nzYearPicker"]})}return rt})(),Os=(()=>{class rt{static#e=this.\u0275fac=function(dt){return new(dt||rt)};static#t=this.\u0275mod=i.oAB({type:rt});static#n=this.\u0275inj=i.cJS({imports:[e.vT,t.ez,l.u5,n.U8,ji,h.PV,M.e4,u.g,E.mJ,z.T,v.wY,C.sL,ji]})}return rt})()},66987:(nt,I,o)=>{"use strict";o.d(I,{S:()=>M,g:()=>z});var e=o(97582),n=o(65879),t=o(27754),i=o(96814),l=o(8324),C=o(49388);function E(h,v){if(1&h&&(n.ynx(0),n._uU(1),n.BQk()),2&h){const g=n.oxw(2);n.xp6(1),n.Oqu(g.nzText)}}function u(h,v){if(1&h&&(n.TgZ(0,"span",1),n.YNc(1,E,2,1,"ng-container",2),n.qZA()),2&h){const g=n.oxw();n.xp6(1),n.Q6J("nzStringTemplateOutlet",g.nzText)}}let z=(()=>{class h{constructor(){this.nzType="horizontal",this.nzOrientation="center",this.nzDashed=!1,this.nzPlain=!1}static#e=this.\u0275fac=function(d){return new(d||h)};static#t=this.\u0275cmp=n.Xpm({type:h,selectors:[["nz-divider"]],hostAttrs:[1,"ant-divider"],hostVars:16,hostBindings:function(d,p){2&d&&n.ekj("ant-divider-horizontal","horizontal"===p.nzType)("ant-divider-vertical","vertical"===p.nzType)("ant-divider-with-text",p.nzText)("ant-divider-plain",p.nzPlain)("ant-divider-with-text-left",p.nzText&&"left"===p.nzOrientation)("ant-divider-with-text-right",p.nzText&&"right"===p.nzOrientation)("ant-divider-with-text-center",p.nzText&&"center"===p.nzOrientation)("ant-divider-dashed",p.nzDashed)},inputs:{nzText:"nzText",nzType:"nzType",nzOrientation:"nzOrientation",nzDashed:"nzDashed",nzPlain:"nzPlain"},exportAs:["nzDivider"],decls:1,vars:1,consts:[["class","ant-divider-inner-text",4,"ngIf"],[1,"ant-divider-inner-text"],[4,"nzStringTemplateOutlet"]],template:function(d,p){1&d&&n.YNc(0,u,2,1,"span",0),2&d&&n.Q6J("ngIf",p.nzText)},dependencies:[i.O5,l.f],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,t.yF)()],h.prototype,"nzDashed",void 0),(0,e.gn)([(0,t.yF)()],h.prototype,"nzPlain",void 0),h})(),M=(()=>{class h{static#e=this.\u0275fac=function(d){return new(d||h)};static#t=this.\u0275mod=n.oAB({type:h});static#n=this.\u0275inj=n.cJS({imports:[C.vT,i.ez,l.T]})}return h})()},43389:(nt,I,o)=>{"use strict";o.d(I,{BL:()=>xe,SQ:()=>ne,Vz:()=>Q,ai:()=>ae,lB:()=>be});var e=o(65879),n=o(97582),t=o(36028),i=o(33651),l=o(68484),C=o(96814),E=o(78645),u=o(59773),z=o(83064),M=o(27754),h=o(4300),v=o(49388),g=o(90551),d=o(8324),p=o(331);const f=["drawerTemplate"];function y(Me,Ye){if(1&Me){const q=e.EpF();e.TgZ(0,"div",11),e.NdJ("click",function(){e.CHM(q);const ee=e.oxw(2);return e.KtG(ee.maskClick())}),e.qZA()}if(2&Me){const q=e.oxw(2);e.Q6J("ngStyle",q.nzMaskStyle)}}function T(Me,Ye){if(1&Me&&(e.ynx(0),e._UZ(1,"span",19),e.BQk()),2&Me){const q=Ye.$implicit;e.xp6(1),e.Q6J("nzType",q)}}function x(Me,Ye){if(1&Me){const q=e.EpF();e.TgZ(0,"button",17),e.NdJ("click",function(){e.CHM(q);const ee=e.oxw(3);return e.KtG(ee.closeClick())}),e.YNc(1,T,2,1,"ng-container",18),e.qZA()}if(2&Me){const q=e.oxw(3);e.xp6(1),e.Q6J("nzStringTemplateOutlet",q.nzCloseIcon)}}function D(Me,Ye){if(1&Me&&(e.ynx(0),e._UZ(1,"div",21),e.BQk()),2&Me){const q=e.oxw(4);e.xp6(1),e.Q6J("innerHTML",q.nzTitle,e.oJD)}}function _(Me,Ye){if(1&Me&&(e.TgZ(0,"div",20),e.YNc(1,D,2,1,"ng-container",18),e.qZA()),2&Me){const q=e.oxw(3);e.xp6(1),e.Q6J("nzStringTemplateOutlet",q.nzTitle)}}function P(Me,Ye){if(1&Me&&(e.ynx(0),e._UZ(1,"div",21),e.BQk()),2&Me){const q=e.oxw(4);e.xp6(1),e.Q6J("innerHTML",q.nzExtra,e.oJD)}}function S(Me,Ye){if(1&Me&&(e.TgZ(0,"div",22),e.YNc(1,P,2,1,"ng-container",18),e.qZA()),2&Me){const q=e.oxw(3);e.xp6(1),e.Q6J("nzStringTemplateOutlet",q.nzExtra)}}function A(Me,Ye){if(1&Me&&(e.TgZ(0,"div",12)(1,"div",13),e.YNc(2,x,2,1,"button",14),e.YNc(3,_,2,1,"div",15),e.qZA(),e.YNc(4,S,2,1,"div",16),e.qZA()),2&Me){const q=e.oxw(2);e.ekj("ant-drawer-header-close-only",!q.nzTitle),e.xp6(2),e.Q6J("ngIf",q.nzClosable),e.xp6(1),e.Q6J("ngIf",q.nzTitle),e.xp6(1),e.Q6J("ngIf",q.nzExtra)}}function k(Me,Ye){}function R(Me,Ye){1&Me&&e.GkF(0)}function $(Me,Ye){if(1&Me&&(e.ynx(0),e.YNc(1,R,1,0,"ng-container",24),e.BQk()),2&Me){const q=e.oxw(3);e.xp6(1),e.Q6J("ngTemplateOutlet",q.nzContent)("ngTemplateOutletContext",q.templateContext)}}function W(Me,Ye){if(1&Me&&(e.ynx(0),e.YNc(1,$,2,2,"ng-container",23),e.BQk()),2&Me){const q=e.oxw(2);e.xp6(1),e.Q6J("ngIf",q.isTemplateRef(q.nzContent))}}function ze(Me,Ye){}function Y(Me,Ye){if(1&Me&&(e.ynx(0),e.YNc(1,ze,0,0,"ng-template",25),e.BQk()),2&Me){const q=e.oxw(3);e.xp6(1),e.Q6J("ngTemplateOutlet",q.contentFromContentChild)}}function G(Me,Ye){if(1&Me&&e.YNc(0,Y,2,1,"ng-container",23),2&Me){const q=e.oxw(2);e.Q6J("ngIf",q.contentFromContentChild&&(q.isOpen||q.inAnimation))}}function V(Me,Ye){if(1&Me&&(e.ynx(0),e._UZ(1,"div",21),e.BQk()),2&Me){const q=e.oxw(3);e.xp6(1),e.Q6J("innerHTML",q.nzFooter,e.oJD)}}function K(Me,Ye){if(1&Me&&(e.TgZ(0,"div",26),e.YNc(1,V,2,1,"ng-container",18),e.qZA()),2&Me){const q=e.oxw(2);e.xp6(1),e.Q6J("nzStringTemplateOutlet",q.nzFooter)}}function te(Me,Ye){if(1&Me&&(e.TgZ(0,"div",1),e.YNc(1,y,1,1,"div",2),e.TgZ(2,"div")(3,"div",3)(4,"div",4),e.YNc(5,A,5,5,"div",5),e.TgZ(6,"div",6),e.YNc(7,k,0,0,"ng-template",7),e.YNc(8,W,2,1,"ng-container",8),e.YNc(9,G,1,1,"ng-template",null,9,e.W1O),e.qZA(),e.YNc(11,K,2,1,"div",10),e.qZA()()()()),2&Me){const q=e.MAs(10),ve=e.oxw();e.Udp("transform",ve.offsetTransform)("transition",ve.placementChanging?"none":null)("z-index",ve.nzZIndex),e.ekj("ant-drawer-rtl","rtl"===ve.dir)("ant-drawer-open",ve.isOpen)("no-mask",!ve.nzMask)("ant-drawer-top","top"===ve.nzPlacement)("ant-drawer-bottom","bottom"===ve.nzPlacement)("ant-drawer-right","right"===ve.nzPlacement)("ant-drawer-left","left"===ve.nzPlacement),e.Q6J("nzNoAnimation",ve.nzNoAnimation),e.xp6(1),e.Q6J("ngIf",ve.nzMask),e.xp6(1),e.Gre("ant-drawer-content-wrapper ",ve.nzWrapClassName,""),e.Udp("width",ve.width)("height",ve.height)("transform",ve.transform)("transition",ve.placementChanging?"none":null),e.xp6(2),e.Udp("height",ve.isLeftOrRight?"100%":null),e.xp6(1),e.Q6J("ngIf",ve.nzTitle||ve.nzClosable),e.xp6(1),e.Q6J("ngStyle",ve.nzBodyStyle),e.xp6(2),e.Q6J("ngIf",ve.nzContent)("ngIfElse",q),e.xp6(3),e.Q6J("ngIf",ve.nzFooter)}}let ne=(()=>{class Me{constructor(q){this.templateRef=q}static#e=this.\u0275fac=function(ve){return new(ve||Me)(e.Y36(e.Rgc))};static#t=this.\u0275dir=e.lG2({type:Me,selectors:[["","nzDrawerContent",""]],exportAs:["nzDrawerContent"]})}return Me})();class be{}let Q=(()=>{class Me extends be{set nzVisible(q){this.isOpen=q}get nzVisible(){return this.isOpen}get offsetTransform(){if(!this.isOpen||this.nzOffsetX+this.nzOffsetY===0)return null;switch(this.nzPlacement){case"left":return`translateX(${this.nzOffsetX}px)`;case"right":return`translateX(-${this.nzOffsetX}px)`;case"top":return`translateY(${this.nzOffsetY}px)`;case"bottom":return`translateY(-${this.nzOffsetY}px)`}}get transform(){if(this.isOpen)return null;switch(this.nzPlacement){case"left":return"translateX(-100%)";case"right":return"translateX(100%)";case"top":return"translateY(-100%)";case"bottom":return"translateY(100%)"}}get width(){return this.isLeftOrRight?(0,M.WX)(void 0===this.nzWidth?"large"===this.nzSize?736:378:this.nzWidth):null}get height(){return this.isLeftOrRight?null:(0,M.WX)(void 0===this.nzHeight?"large"===this.nzSize?736:378:this.nzHeight)}get isLeftOrRight(){return"left"===this.nzPlacement||"right"===this.nzPlacement}get afterOpen(){return this.nzAfterOpen.asObservable()}get afterClose(){return this.nzAfterClose.asObservable()}isTemplateRef(q){return q instanceof e.Rgc}constructor(q,ve,ee,Be,Re,ct,Ae,Mt,je,ot,mt){super(),this.cdr=q,this.document=ve,this.nzConfigService=ee,this.renderer=Be,this.overlay=Re,this.injector=ct,this.changeDetectorRef=Ae,this.focusTrapFactory=Mt,this.viewContainerRef=je,this.overlayKeyboardDispatcher=ot,this.directionality=mt,this._nzModuleName="drawer",this.nzCloseIcon="close",this.nzClosable=!0,this.nzMaskClosable=!0,this.nzMask=!0,this.nzCloseOnNavigation=!0,this.nzNoAnimation=!1,this.nzKeyboard=!0,this.nzPlacement="right",this.nzSize="default",this.nzMaskStyle={},this.nzBodyStyle={},this.nzZIndex=1e3,this.nzOffsetX=0,this.nzOffsetY=0,this.componentInstance=null,this.nzOnViewInit=new e.vpe,this.nzOnClose=new e.vpe,this.nzVisibleChange=new e.vpe,this.destroy$=new E.x,this.placementChanging=!1,this.placementChangeTimeoutId=-1,this.isOpen=!1,this.inAnimation=!1,this.templateContext={$implicit:void 0,drawerRef:this},this.nzAfterOpen=new E.x,this.nzAfterClose=new E.x,this.nzDirection=void 0,this.dir="ltr"}ngOnInit(){this.directionality.change?.pipe((0,u.R)(this.destroy$)).subscribe(q=>{this.dir=q,this.cdr.detectChanges()}),this.dir=this.nzDirection||this.directionality.value,this.attachOverlay(),this.updateOverlayStyle(),this.updateBodyOverflow(),this.templateContext={$implicit:this.nzContentParams,drawerRef:this},this.changeDetectorRef.detectChanges()}ngAfterViewInit(){this.attachBodyContent(),this.nzOnViewInit.observers.length&&setTimeout(()=>{this.nzOnViewInit.emit()})}ngOnChanges(q){const{nzPlacement:ve,nzVisible:ee}=q;ee&&(q.nzVisible.currentValue?this.open():this.close()),ve&&!ve.isFirstChange()&&this.triggerPlacementChangeCycleOnce()}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete(),clearTimeout(this.placementChangeTimeoutId),this.disposeOverlay()}getAnimationDuration(){return this.nzNoAnimation?0:300}triggerPlacementChangeCycleOnce(){this.nzNoAnimation||(this.placementChanging=!0,this.changeDetectorRef.markForCheck(),clearTimeout(this.placementChangeTimeoutId),this.placementChangeTimeoutId=setTimeout(()=>{this.placementChanging=!1,this.changeDetectorRef.markForCheck()},this.getAnimationDuration()))}close(q){this.isOpen=!1,this.inAnimation=!0,this.nzVisibleChange.emit(!1),this.updateOverlayStyle(),this.overlayKeyboardDispatcher.remove(this.overlayRef),this.changeDetectorRef.detectChanges(),setTimeout(()=>{this.updateBodyOverflow(),this.restoreFocus(),this.inAnimation=!1,this.nzAfterClose.next(q),this.nzAfterClose.complete(),this.componentInstance=null},this.getAnimationDuration())}open(){this.attachOverlay(),this.isOpen=!0,this.inAnimation=!0,this.nzVisibleChange.emit(!0),this.overlayKeyboardDispatcher.add(this.overlayRef),this.updateOverlayStyle(),this.updateBodyOverflow(),this.savePreviouslyFocusedElement(),this.trapFocus(),this.changeDetectorRef.detectChanges(),setTimeout(()=>{this.inAnimation=!1,this.changeDetectorRef.detectChanges(),this.nzAfterOpen.next()},this.getAnimationDuration())}getContentComponent(){return this.componentInstance}closeClick(){this.nzOnClose.emit()}maskClick(){this.nzMaskClosable&&this.nzMask&&this.nzOnClose.emit()}attachBodyContent(){if(this.bodyPortalOutlet.dispose(),this.nzContent instanceof e.DyG){const q=e.zs3.create({parent:this.injector,providers:[{provide:be,useValue:this}]}),ve=new l.C5(this.nzContent,null,q),ee=this.bodyPortalOutlet.attachComponentPortal(ve);this.componentInstance=ee.instance,Object.assign(ee.instance,this.nzContentParams),ee.changeDetectorRef.detectChanges()}}attachOverlay(){this.overlayRef||(this.portal=new l.UE(this.drawerTemplate,this.viewContainerRef),this.overlayRef=this.overlay.create(this.getOverlayConfig())),this.overlayRef&&!this.overlayRef.hasAttached()&&(this.overlayRef.attach(this.portal),this.overlayRef.keydownEvents().pipe((0,u.R)(this.destroy$)).subscribe(q=>{q.keyCode===t.hY&&this.isOpen&&this.nzKeyboard&&this.nzOnClose.emit()}),this.overlayRef.detachments().pipe((0,u.R)(this.destroy$)).subscribe(()=>{this.disposeOverlay()}))}disposeOverlay(){this.overlayRef?.dispose(),this.overlayRef=null}getOverlayConfig(){return new i.X_({disposeOnNavigation:this.nzCloseOnNavigation,positionStrategy:this.overlay.position().global(),scrollStrategy:this.overlay.scrollStrategies.block()})}updateOverlayStyle(){this.overlayRef&&this.overlayRef.overlayElement&&this.renderer.setStyle(this.overlayRef.overlayElement,"pointer-events",this.isOpen?"auto":"none")}updateBodyOverflow(){this.overlayRef&&(this.isOpen?this.overlayRef.getConfig().scrollStrategy.enable():this.overlayRef.getConfig().scrollStrategy.disable())}savePreviouslyFocusedElement(){this.document&&!this.previouslyFocusedElement&&(this.previouslyFocusedElement=this.document.activeElement,this.previouslyFocusedElement&&"function"==typeof this.previouslyFocusedElement.blur&&this.previouslyFocusedElement.blur())}trapFocus(){!this.focusTrap&&this.overlayRef&&this.overlayRef.overlayElement&&(this.focusTrap=this.focusTrapFactory.create(this.overlayRef.overlayElement),this.focusTrap.focusInitialElement())}restoreFocus(){this.previouslyFocusedElement&&"function"==typeof this.previouslyFocusedElement.focus&&this.previouslyFocusedElement.focus(),this.focusTrap&&this.focusTrap.destroy()}static#e=this.\u0275fac=function(ve){return new(ve||Me)(e.Y36(e.sBO),e.Y36(C.K0,8),e.Y36(z.jY),e.Y36(e.Qsj),e.Y36(i.aV),e.Y36(e.zs3),e.Y36(e.sBO),e.Y36(h.qV),e.Y36(e.s_b),e.Y36(i.Vs),e.Y36(v.Is,8))};static#t=this.\u0275cmp=e.Xpm({type:Me,selectors:[["nz-drawer"]],contentQueries:function(ve,ee,Be){if(1&ve&&e.Suo(Be,ne,7,e.Rgc),2&ve){let Re;e.iGM(Re=e.CRH())&&(ee.contentFromContentChild=Re.first)}},viewQuery:function(ve,ee){if(1&ve&&(e.Gf(f,7),e.Gf(l.Pl,5)),2&ve){let Be;e.iGM(Be=e.CRH())&&(ee.drawerTemplate=Be.first),e.iGM(Be=e.CRH())&&(ee.bodyPortalOutlet=Be.first)}},inputs:{nzContent:"nzContent",nzCloseIcon:"nzCloseIcon",nzClosable:"nzClosable",nzMaskClosable:"nzMaskClosable",nzMask:"nzMask",nzCloseOnNavigation:"nzCloseOnNavigation",nzNoAnimation:"nzNoAnimation",nzKeyboard:"nzKeyboard",nzTitle:"nzTitle",nzExtra:"nzExtra",nzFooter:"nzFooter",nzPlacement:"nzPlacement",nzSize:"nzSize",nzMaskStyle:"nzMaskStyle",nzBodyStyle:"nzBodyStyle",nzWrapClassName:"nzWrapClassName",nzWidth:"nzWidth",nzHeight:"nzHeight",nzZIndex:"nzZIndex",nzOffsetX:"nzOffsetX",nzOffsetY:"nzOffsetY",nzVisible:"nzVisible"},outputs:{nzOnViewInit:"nzOnViewInit",nzOnClose:"nzOnClose",nzVisibleChange:"nzVisibleChange"},exportAs:["nzDrawer"],features:[e.qOj,e.TTD],decls:2,vars:0,consts:[["drawerTemplate",""],[1,"ant-drawer",3,"nzNoAnimation"],["class","ant-drawer-mask",3,"ngStyle","click",4,"ngIf"],[1,"ant-drawer-content"],[1,"ant-drawer-wrapper-body"],["class","ant-drawer-header",3,"ant-drawer-header-close-only",4,"ngIf"],[1,"ant-drawer-body",3,"ngStyle"],["cdkPortalOutlet",""],[4,"ngIf","ngIfElse"],["contentElseTemp",""],["class","ant-drawer-footer",4,"ngIf"],[1,"ant-drawer-mask",3,"ngStyle","click"],[1,"ant-drawer-header"],[1,"ant-drawer-header-title"],["aria-label","Close","class","ant-drawer-close","style","--scroll-bar: 0px;",3,"click",4,"ngIf"],["class","ant-drawer-title",4,"ngIf"],["class","ant-drawer-extra",4,"ngIf"],["aria-label","Close",1,"ant-drawer-close",2,"--scroll-bar","0px",3,"click"],[4,"nzStringTemplateOutlet"],["nz-icon","",3,"nzType"],[1,"ant-drawer-title"],[3,"innerHTML"],[1,"ant-drawer-extra"],[4,"ngIf"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"ngTemplateOutlet"],[1,"ant-drawer-footer"]],template:function(ve,ee){1&ve&&e.YNc(0,te,12,40,"ng-template",null,0,e.W1O)},dependencies:[C.O5,C.tP,C.PC,l.Pl,g.Ls,d.f,p.P],encapsulation:2,changeDetection:0})}return(0,n.gn)([(0,M.yF)()],Me.prototype,"nzClosable",void 0),(0,n.gn)([(0,z.oS)(),(0,M.yF)()],Me.prototype,"nzMaskClosable",void 0),(0,n.gn)([(0,z.oS)(),(0,M.yF)()],Me.prototype,"nzMask",void 0),(0,n.gn)([(0,z.oS)(),(0,M.yF)()],Me.prototype,"nzCloseOnNavigation",void 0),(0,n.gn)([(0,M.yF)()],Me.prototype,"nzNoAnimation",void 0),(0,n.gn)([(0,M.yF)()],Me.prototype,"nzKeyboard",void 0),(0,n.gn)([(0,z.oS)()],Me.prototype,"nzDirection",void 0),Me})();class ie{constructor(Ye,q){this.overlay=Ye,this.options=q,this.unsubscribe$=new E.x;const{nzOnCancel:ve,...ee}=this.options;this.overlayRef=this.overlay.create(),this.drawerRef=this.overlayRef.attach(new l.C5(Q)).instance,this.updateOptions(ee),this.drawerRef.savePreviouslyFocusedElement(),this.drawerRef.nzOnViewInit.pipe((0,u.R)(this.unsubscribe$)).subscribe(()=>{this.drawerRef.open()}),this.drawerRef.nzOnClose.subscribe(()=>{ve?ve().then(Be=>{!1!==Be&&this.drawerRef.close()}):this.drawerRef.close()}),this.drawerRef.afterClose.pipe((0,u.R)(this.unsubscribe$)).subscribe(()=>{this.overlayRef.dispose(),this.drawerRef=null,this.unsubscribe$.next(),this.unsubscribe$.complete()})}getInstance(){return this.drawerRef}updateOptions(Ye){Object.assign(this.drawerRef,Ye)}}let ae=(()=>{class Me{constructor(q){this.overlay=q}create(q){return new ie(this.overlay,q).getInstance()}static#e=this.\u0275fac=function(ve){return new(ve||Me)(e.LFG(i.aV))};static#t=this.\u0275prov=e.Yz7({token:Me,factory:Me.\u0275fac})}return Me})(),xe=(()=>{class Me{static#e=this.\u0275fac=function(ve){return new(ve||Me)};static#t=this.\u0275mod=e.oAB({type:Me});static#n=this.\u0275inj=e.cJS({providers:[ae],imports:[v.vT,C.ez,i.U8,l.eL,g.PV,d.T,p.g]})}return Me})()},62787:(nt,I,o)=>{"use strict";o.d(I,{Iw:()=>xe,RR:()=>Q,Ws:()=>le,b1:()=>ie,cm:()=>re,wA:()=>ce});var e=o(97582),n=o(36028),t=o(68484),i=o(65879),l=o(78645),C=o(65619),E=o(63019),u=o(92438),z=o(36232),M=o(52572),h=o(47394),v=o(21441),g=o(37398),d=o(94664),p=o(32181),f=o(29028),y=o(93997),T=o(59773),x=o(81374),D=o(83064),_=o(85448),P=o(27754),S=o(33651),A=o(62831),k=o(49388),R=o(96814),$=o(42840),W=o(331),ze=o(8324),Y=o(90551),G=o(73460),V=o(64194);function K(Me,Ye){if(1&Me){const q=i.EpF();i.TgZ(0,"div",0),i.NdJ("@slideMotion.done",function(ee){i.CHM(q);const Be=i.oxw();return i.KtG(Be.onAnimationEvent(ee))})("mouseenter",function(){i.CHM(q);const ee=i.oxw();return i.KtG(ee.setMouseState(!0))})("mouseleave",function(){i.CHM(q);const ee=i.oxw();return i.KtG(ee.setMouseState(!1))}),i.Hsn(1),i.qZA()}if(2&Me){const q=i.oxw();i.ekj("ant-dropdown-rtl","rtl"===q.dir),i.Q6J("ngClass",q.nzOverlayClassName)("ngStyle",q.nzOverlayStyle)("@slideMotion",void 0)("@.disabled",!(null==q.noAnimation||!q.noAnimation.nzNoAnimation))("nzNoAnimation",null==q.noAnimation?null:q.noAnimation.nzNoAnimation)}}const te=["*"],fe=[_.yW.bottomLeft,_.yW.bottomRight,_.yW.topRight,_.yW.topLeft];let re=(()=>{class Me{setDropdownMenuValue(q,ve){this.nzDropdownMenu&&this.nzDropdownMenu.setValue(q,ve)}constructor(q,ve,ee,Be,Re,ct){this.nzConfigService=q,this.elementRef=ve,this.overlay=ee,this.renderer=Be,this.viewContainerRef=Re,this.platform=ct,this._nzModuleName="dropDown",this.overlayRef=null,this.destroy$=new l.x,this.positionStrategy=this.overlay.position().flexibleConnectedTo(this.elementRef.nativeElement).withLockedPosition().withTransformOriginOn(".ant-dropdown"),this.inputVisible$=new C.X(!1),this.nzTrigger$=new C.X("hover"),this.overlayClose$=new l.x,this.nzDropdownMenu=null,this.nzTrigger="hover",this.nzMatchWidthElement=null,this.nzBackdrop=!1,this.nzClickHide=!0,this.nzDisabled=!1,this.nzVisible=!1,this.nzOverlayClassName="",this.nzOverlayStyle={},this.nzPlacement="bottomLeft",this.nzVisibleChange=new i.vpe}ngAfterViewInit(){if(this.nzDropdownMenu){const q=this.elementRef.nativeElement,ve=(0,E.T)((0,u.R)(q,"mouseenter").pipe((0,v.h)(!0)),(0,u.R)(q,"mouseleave").pipe((0,v.h)(!1))),Be=(0,E.T)(this.nzDropdownMenu.mouseState$,ve),Re=(0,u.R)(q,"click").pipe((0,g.U)(()=>!this.nzVisible)),ct=this.nzTrigger$.pipe((0,d.w)(ot=>"hover"===ot?Be:"click"===ot?Re:z.E)),Ae=this.nzDropdownMenu.descendantMenuItemClick$.pipe((0,p.h)(()=>this.nzClickHide),(0,v.h)(!1)),Mt=(0,E.T)(ct,Ae,this.overlayClose$).pipe((0,p.h)(()=>!this.nzDisabled)),je=(0,E.T)(this.inputVisible$,Mt);(0,M.a)([je,this.nzDropdownMenu.isChildSubMenuOpen$]).pipe((0,g.U)(([ot,mt])=>ot||mt),(0,f.e)(150),(0,y.x)(),(0,p.h)(()=>this.platform.isBrowser),(0,T.R)(this.destroy$)).subscribe(ot=>{const we=(this.nzMatchWidthElement?this.nzMatchWidthElement.nativeElement:q).getBoundingClientRect().width;this.nzVisible!==ot&&this.nzVisibleChange.emit(ot),this.nzVisible=ot,ot?(this.overlayRef?this.overlayRef.getConfig().minWidth=we:(this.overlayRef=this.overlay.create({positionStrategy:this.positionStrategy,minWidth:we,disposeOnNavigation:!0,hasBackdrop:this.nzBackdrop&&"click"===this.nzTrigger,scrollStrategy:this.overlay.scrollStrategies.reposition()}),(0,E.T)(this.overlayRef.backdropClick(),this.overlayRef.detachments(),this.overlayRef.outsidePointerEvents().pipe((0,p.h)(de=>!this.elementRef.nativeElement.contains(de.target))),this.overlayRef.keydownEvents().pipe((0,p.h)(de=>de.keyCode===n.hY&&!(0,n.Vb)(de)))).pipe((0,T.R)(this.destroy$)).subscribe(()=>{this.overlayClose$.next(!1)})),this.positionStrategy.withPositions([_.yW[this.nzPlacement],...fe]),(!this.portal||this.portal.templateRef!==this.nzDropdownMenu.templateRef)&&(this.portal=new t.UE(this.nzDropdownMenu.templateRef,this.viewContainerRef)),this.overlayRef.attach(this.portal)):this.overlayRef&&this.overlayRef.detach()}),this.nzDropdownMenu.animationStateChange$.pipe((0,T.R)(this.destroy$)).subscribe(ot=>{"void"===ot.toState&&(this.overlayRef&&this.overlayRef.dispose(),this.overlayRef=null)})}}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete(),this.overlayRef&&(this.overlayRef.dispose(),this.overlayRef=null)}ngOnChanges(q){const{nzVisible:ve,nzDisabled:ee,nzOverlayClassName:Be,nzOverlayStyle:Re,nzTrigger:ct}=q;if(ct&&this.nzTrigger$.next(this.nzTrigger),ve&&this.inputVisible$.next(this.nzVisible),ee){const Ae=this.elementRef.nativeElement;this.nzDisabled?(this.renderer.setAttribute(Ae,"disabled",""),this.inputVisible$.next(!1)):this.renderer.removeAttribute(Ae,"disabled")}Be&&this.setDropdownMenuValue("nzOverlayClassName",this.nzOverlayClassName),Re&&this.setDropdownMenuValue("nzOverlayStyle",this.nzOverlayStyle)}static#e=this.\u0275fac=function(ve){return new(ve||Me)(i.Y36(D.jY),i.Y36(i.SBq),i.Y36(S.aV),i.Y36(i.Qsj),i.Y36(i.s_b),i.Y36(A.t4))};static#t=this.\u0275dir=i.lG2({type:Me,selectors:[["","nz-dropdown",""]],hostAttrs:[1,"ant-dropdown-trigger"],inputs:{nzDropdownMenu:"nzDropdownMenu",nzTrigger:"nzTrigger",nzMatchWidthElement:"nzMatchWidthElement",nzBackdrop:"nzBackdrop",nzClickHide:"nzClickHide",nzDisabled:"nzDisabled",nzVisible:"nzVisible",nzOverlayClassName:"nzOverlayClassName",nzOverlayStyle:"nzOverlayStyle",nzPlacement:"nzPlacement"},outputs:{nzVisibleChange:"nzVisibleChange"},exportAs:["nzDropdown"],features:[i.TTD]})}return(0,e.gn)([(0,D.oS)(),(0,P.yF)()],Me.prototype,"nzBackdrop",void 0),(0,e.gn)([(0,P.yF)()],Me.prototype,"nzClickHide",void 0),(0,e.gn)([(0,P.yF)()],Me.prototype,"nzDisabled",void 0),(0,e.gn)([(0,P.yF)()],Me.prototype,"nzVisible",void 0),Me})(),be=(()=>{class Me{static#e=this.\u0275fac=function(ve){return new(ve||Me)};static#t=this.\u0275mod=i.oAB({type:Me});static#n=this.\u0275inj=i.cJS({})}return Me})(),le=(()=>{class Me{constructor(){}static#e=this.\u0275fac=function(ve){return new(ve||Me)};static#t=this.\u0275dir=i.lG2({type:Me,selectors:[["a","nz-dropdown",""]],hostAttrs:[1,"ant-dropdown-link"]})}return Me})(),ce=(()=>{class Me{constructor(q,ve,ee){this.renderer=q,this.nzButtonGroupComponent=ve,this.elementRef=ee}ngAfterViewInit(){const q=this.renderer.parentNode(this.elementRef.nativeElement);this.nzButtonGroupComponent&&q&&this.renderer.addClass(q,"ant-dropdown-button")}static#e=this.\u0275fac=function(ve){return new(ve||Me)(i.Y36(i.Qsj),i.Y36($.fY,9),i.Y36(i.SBq))};static#t=this.\u0275dir=i.lG2({type:Me,selectors:[["","nz-button","","nz-dropdown",""]]})}return Me})(),Q=(()=>{class Me{onAnimationEvent(q){this.animationStateChange$.emit(q)}setMouseState(q){this.mouseState$.next(q)}setValue(q,ve){this[q]=ve,this.cdr.markForCheck()}constructor(q,ve,ee,Be,Re,ct,Ae){this.cdr=q,this.elementRef=ve,this.renderer=ee,this.viewContainerRef=Be,this.nzMenuService=Re,this.directionality=ct,this.noAnimation=Ae,this.mouseState$=new C.X(!1),this.isChildSubMenuOpen$=this.nzMenuService.isChildSubMenuOpen$,this.descendantMenuItemClick$=this.nzMenuService.descendantMenuItemClick$,this.animationStateChange$=new i.vpe,this.nzOverlayClassName="",this.nzOverlayStyle={},this.dir="ltr",this.destroy$=new l.x}ngOnInit(){this.directionality.change?.pipe((0,T.R)(this.destroy$)).subscribe(q=>{this.dir=q,this.cdr.detectChanges()}),this.dir=this.directionality.value}ngAfterContentInit(){this.renderer.removeChild(this.renderer.parentNode(this.elementRef.nativeElement),this.elementRef.nativeElement)}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(ve){return new(ve||Me)(i.Y36(i.sBO),i.Y36(i.SBq),i.Y36(i.Qsj),i.Y36(i.s_b),i.Y36(G.hl),i.Y36(k.Is,8),i.Y36(W.P,9))};static#t=this.\u0275cmp=i.Xpm({type:Me,selectors:[["nz-dropdown-menu"]],viewQuery:function(ve,ee){if(1&ve&&i.Gf(i.Rgc,7),2&ve){let Be;i.iGM(Be=i.CRH())&&(ee.templateRef=Be.first)}},exportAs:["nzDropdownMenu"],features:[i._Bn([G.hl,{provide:G.Cc,useValue:!0}])],ngContentSelectors:te,decls:1,vars:0,consts:[[1,"ant-dropdown",3,"ngClass","ngStyle","nzNoAnimation","mouseenter","mouseleave"]],template:function(ve,ee){1&ve&&(i.F$t(),i.YNc(0,K,2,7,"ng-template"))},dependencies:[R.mk,R.PC,W.P],encapsulation:2,data:{animation:[V.mF]},changeDetection:0})}return Me})(),ie=(()=>{class Me{static#e=this.\u0275fac=function(ve){return new(ve||Me)};static#t=this.\u0275mod=i.oAB({type:Me});static#n=this.\u0275inj=i.cJS({imports:[k.vT,R.ez,S.U8,$.sL,G.ip,Y.PV,W.g,A.ud,_.e4,be,ze.T,G.ip]})}return Me})();const ae=[new S.tR({originX:"start",originY:"top"},{overlayX:"start",overlayY:"top"}),new S.tR({originX:"start",originY:"top"},{overlayX:"start",overlayY:"bottom"}),new S.tR({originX:"start",originY:"top"},{overlayX:"end",overlayY:"bottom"}),new S.tR({originX:"start",originY:"top"},{overlayX:"end",overlayY:"top"})];let xe=(()=>{class Me{constructor(q,ve){this.ngZone=q,this.overlay=ve,this.overlayRef=null,this.closeSubscription=h.w0.EMPTY}create(q,ve){this.close(!0);const{x:ee,y:Be}=q;q instanceof MouseEvent&&q.preventDefault();const Re=this.overlay.position().flexibleConnectedTo({x:ee,y:Be}).withPositions(ae).withTransformOriginOn(".ant-dropdown");return this.overlayRef=this.overlay.create({positionStrategy:Re,disposeOnNavigation:!0,scrollStrategy:this.overlay.scrollStrategies.close()}),this.closeSubscription=new h.w0,this.closeSubscription.add(ve.descendantMenuItemClick$.subscribe(()=>this.close())),this.closeSubscription.add(this.ngZone.runOutsideAngular(()=>(0,E.T)((0,u.R)(document,"click").pipe((0,p.h)(ct=>!!this.overlayRef&&!this.overlayRef.overlayElement.contains(ct.target)),(0,p.h)(ct=>2!==ct.button)),(0,u.R)(document,"keydown").pipe((0,p.h)(ct=>"Escape"===ct.key))).pipe((0,x.P)()).subscribe(()=>this.ngZone.run(()=>this.close())))),this.overlayRef.attach(new t.UE(ve.templateRef,ve.viewContainerRef))}close(q=!1){this.overlayRef&&(this.overlayRef.detach(),q&&this.overlayRef.dispose(),this.overlayRef=null,this.closeSubscription.unsubscribe())}static#e=this.\u0275fac=function(ve){return new(ve||Me)(i.LFG(i.R0b),i.LFG(S.aV))};static#t=this.\u0275prov=i.Yz7({token:Me,factory:Me.\u0275fac,providedIn:be})}return Me})()},60804:(nt,I,o)=>{"use strict";o.d(I,{Xo:()=>te,gB:()=>K,p9:()=>G});var e=o(68484),n=o(65879),t=o(78645),i=o(59773),l=o(27921),C=o(83064),E=o(96814),u=o(12131),z=o(8324),M=o(49388);function h(ne,fe){if(1&ne&&(n.ynx(0),n._UZ(1,"img",5),n.BQk()),2&ne){const re=n.oxw(2);n.xp6(1),n.Q6J("src",re.nzNotFoundImage,n.LSH)("alt",re.isContentString?re.nzNotFoundContent:"empty")}}function v(ne,fe){if(1&ne&&(n.ynx(0),n.YNc(1,h,2,2,"ng-container",4),n.BQk()),2&ne){const re=n.oxw();n.xp6(1),n.Q6J("nzStringTemplateOutlet",re.nzNotFoundImage)}}function g(ne,fe){1&ne&&n._UZ(0,"nz-empty-default")}function d(ne,fe){1&ne&&n._UZ(0,"nz-empty-simple")}function p(ne,fe){if(1&ne&&(n.ynx(0),n._uU(1),n.BQk()),2&ne){const re=n.oxw(2);n.xp6(1),n.hij(" ",re.isContentString?re.nzNotFoundContent:re.locale.description," ")}}function f(ne,fe){if(1&ne&&(n.TgZ(0,"p",6),n.YNc(1,p,2,1,"ng-container",4),n.qZA()),2&ne){const re=n.oxw();n.xp6(1),n.Q6J("nzStringTemplateOutlet",re.nzNotFoundContent)}}function y(ne,fe){if(1&ne&&(n.ynx(0),n._uU(1),n.BQk()),2&ne){const re=n.oxw(2);n.xp6(1),n.hij(" ",re.nzNotFoundFooter," ")}}function T(ne,fe){if(1&ne&&(n.TgZ(0,"div",7),n.YNc(1,y,2,1,"ng-container",4),n.qZA()),2&ne){const re=n.oxw();n.xp6(1),n.Q6J("nzStringTemplateOutlet",re.nzNotFoundFooter)}}function x(ne,fe){1&ne&&n._UZ(0,"nz-empty",6),2&ne&&n.Q6J("nzNotFoundImage","simple")}function D(ne,fe){1&ne&&n._UZ(0,"nz-empty",7),2&ne&&n.Q6J("nzNotFoundImage","simple")}function _(ne,fe){1&ne&&n._UZ(0,"nz-empty")}function P(ne,fe){if(1&ne&&(n.ynx(0,2),n.YNc(1,x,1,1,"nz-empty",3),n.YNc(2,D,1,1,"nz-empty",4),n.YNc(3,_,1,0,"nz-empty",5),n.BQk()),2&ne){const re=n.oxw();n.Q6J("ngSwitch",re.size),n.xp6(1),n.Q6J("ngSwitchCase","normal"),n.xp6(1),n.Q6J("ngSwitchCase","small")}}function S(ne,fe){}function A(ne,fe){if(1&ne&&n.YNc(0,S,0,0,"ng-template",8),2&ne){const re=n.oxw(2);n.Q6J("cdkPortalOutlet",re.contentPortal)}}function k(ne,fe){if(1&ne&&(n.ynx(0),n._uU(1),n.BQk()),2&ne){const re=n.oxw(2);n.xp6(1),n.hij(" ",re.content," ")}}function R(ne,fe){if(1&ne&&(n.ynx(0),n.YNc(1,A,1,1,null,1),n.YNc(2,k,2,1,"ng-container",1),n.BQk()),2&ne){const re=n.oxw();n.xp6(1),n.Q6J("ngIf","string"!==re.contentType),n.xp6(1),n.Q6J("ngIf","string"===re.contentType)}}const $=new n.OlP("nz-empty-component-name");let W=(()=>{class ne{static#e=this.\u0275fac=function(be){return new(be||ne)};static#t=this.\u0275cmp=n.Xpm({type:ne,selectors:[["nz-empty-default"]],exportAs:["nzEmptyDefault"],decls:12,vars:0,consts:[["width","184","height","152","viewBox","0 0 184 152","xmlns","http://www.w3.org/2000/svg",1,"ant-empty-img-default"],["fill","none","fill-rule","evenodd"],["transform","translate(24 31.67)"],["cx","67.797","cy","106.89","rx","67.797","ry","12.668",1,"ant-empty-img-default-ellipse"],["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",1,"ant-empty-img-default-path-1"],["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","transform","translate(13.56)",1,"ant-empty-img-default-path-2"],["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",1,"ant-empty-img-default-path-3"],["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",1,"ant-empty-img-default-path-4"],["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",1,"ant-empty-img-default-path-5"],["transform","translate(149.65 15.383)",1,"ant-empty-img-default-g"],["cx","20.654","cy","3.167","rx","2.849","ry","2.815"],["d","M5.698 5.63H0L2.898.704zM9.259.704h4.985V5.63H9.259z"]],template:function(be,le){1&be&&(n.O4$(),n.TgZ(0,"svg",0)(1,"g",1)(2,"g",2),n._UZ(3,"ellipse",3)(4,"path",4)(5,"path",5)(6,"path",6)(7,"path",7),n.qZA(),n._UZ(8,"path",8),n.TgZ(9,"g",9),n._UZ(10,"ellipse",10)(11,"path",11),n.qZA()()())},encapsulation:2,changeDetection:0})}return ne})(),ze=(()=>{class ne{static#e=this.\u0275fac=function(be){return new(be||ne)};static#t=this.\u0275cmp=n.Xpm({type:ne,selectors:[["nz-empty-simple"]],exportAs:["nzEmptySimple"],decls:6,vars:0,consts:[["width","64","height","41","viewBox","0 0 64 41","xmlns","http://www.w3.org/2000/svg",1,"ant-empty-img-simple"],["transform","translate(0 1)","fill","none","fill-rule","evenodd"],["cx","32","cy","33","rx","32","ry","7",1,"ant-empty-img-simple-ellipse"],["fill-rule","nonzero",1,"ant-empty-img-simple-g"],["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"],["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",1,"ant-empty-img-simple-path"]],template:function(be,le){1&be&&(n.O4$(),n.TgZ(0,"svg",0)(1,"g",1),n._UZ(2,"ellipse",2),n.TgZ(3,"g",3),n._UZ(4,"path",4)(5,"path",5),n.qZA()()())},encapsulation:2,changeDetection:0})}return ne})();const Y=["default","simple"];let G=(()=>{class ne{constructor(re,be){this.i18n=re,this.cdr=be,this.nzNotFoundImage="default",this.isContentString=!1,this.isImageBuildIn=!0,this.destroy$=new t.x}ngOnChanges(re){const{nzNotFoundContent:be,nzNotFoundImage:le}=re;if(be&&(this.isContentString="string"==typeof be.currentValue),le){const ce=le.currentValue||"default";this.isImageBuildIn=Y.findIndex(Q=>Q===ce)>-1}}ngOnInit(){this.i18n.localeChange.pipe((0,i.R)(this.destroy$)).subscribe(()=>{this.locale=this.i18n.getLocaleData("Empty"),this.cdr.markForCheck()})}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(be){return new(be||ne)(n.Y36(u.wi),n.Y36(n.sBO))};static#t=this.\u0275cmp=n.Xpm({type:ne,selectors:[["nz-empty"]],hostAttrs:[1,"ant-empty"],inputs:{nzNotFoundImage:"nzNotFoundImage",nzNotFoundContent:"nzNotFoundContent",nzNotFoundFooter:"nzNotFoundFooter"},exportAs:["nzEmpty"],features:[n.TTD],decls:6,vars:5,consts:[[1,"ant-empty-image"],[4,"ngIf"],["class","ant-empty-description",4,"ngIf"],["class","ant-empty-footer",4,"ngIf"],[4,"nzStringTemplateOutlet"],[3,"src","alt"],[1,"ant-empty-description"],[1,"ant-empty-footer"]],template:function(be,le){1&be&&(n.TgZ(0,"div",0),n.YNc(1,v,2,1,"ng-container",1),n.YNc(2,g,1,0,"nz-empty-default",1),n.YNc(3,d,1,0,"nz-empty-simple",1),n.qZA(),n.YNc(4,f,2,1,"p",2),n.YNc(5,T,2,1,"div",3)),2&be&&(n.xp6(1),n.Q6J("ngIf",!le.isImageBuildIn),n.xp6(1),n.Q6J("ngIf",le.isImageBuildIn&&"simple"!==le.nzNotFoundImage),n.xp6(1),n.Q6J("ngIf",le.isImageBuildIn&&"simple"===le.nzNotFoundImage),n.xp6(1),n.Q6J("ngIf",null!==le.nzNotFoundContent),n.xp6(1),n.Q6J("ngIf",le.nzNotFoundFooter))},dependencies:[E.O5,z.f,W,ze],encapsulation:2,changeDetection:0})}return ne})(),K=(()=>{class ne{constructor(re,be,le,ce){this.configService=re,this.viewContainerRef=be,this.cdr=le,this.injector=ce,this.contentType="string",this.size="",this.destroy$=new t.x}ngOnChanges(re){re.nzComponentName&&(this.size=function V(ne){switch(ne){case"table":case"list":return"normal";case"select":case"tree-select":case"cascader":case"transfer":return"small";default:return""}}(re.nzComponentName.currentValue)),re.specificContent&&!re.specificContent.isFirstChange()&&(this.content=re.specificContent.currentValue,this.renderEmpty())}ngOnInit(){this.subscribeDefaultEmptyContentChange()}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}renderEmpty(){const re=this.content;if("string"==typeof re)this.contentType="string";else if(re instanceof n.Rgc){const be={$implicit:this.nzComponentName};this.contentType="template",this.contentPortal=new e.UE(re,this.viewContainerRef,be)}else if(re instanceof n.DyG){const be=n.zs3.create({parent:this.injector,providers:[{provide:$,useValue:this.nzComponentName}]});this.contentType="component",this.contentPortal=new e.C5(re,this.viewContainerRef,be)}else this.contentType="string",this.contentPortal=void 0;this.cdr.detectChanges()}subscribeDefaultEmptyContentChange(){this.configService.getConfigChangeEventForComponent("empty").pipe((0,l.O)(!0),(0,i.R)(this.destroy$)).subscribe(()=>{this.content=this.specificContent||this.getUserDefaultEmptyContent(),this.renderEmpty()})}getUserDefaultEmptyContent(){return(this.configService.getConfigForComponent("empty")||{}).nzDefaultEmptyContent}static#e=this.\u0275fac=function(be){return new(be||ne)(n.Y36(C.jY),n.Y36(n.s_b),n.Y36(n.sBO),n.Y36(n.zs3))};static#t=this.\u0275cmp=n.Xpm({type:ne,selectors:[["nz-embed-empty"]],inputs:{nzComponentName:"nzComponentName",specificContent:"specificContent"},exportAs:["nzEmbedEmpty"],features:[n.TTD],decls:2,vars:2,consts:[[3,"ngSwitch",4,"ngIf"],[4,"ngIf"],[3,"ngSwitch"],["class","ant-empty-normal",3,"nzNotFoundImage",4,"ngSwitchCase"],["class","ant-empty-small",3,"nzNotFoundImage",4,"ngSwitchCase"],[4,"ngSwitchDefault"],[1,"ant-empty-normal",3,"nzNotFoundImage"],[1,"ant-empty-small",3,"nzNotFoundImage"],[3,"cdkPortalOutlet"]],template:function(be,le){1&be&&(n.YNc(0,P,4,3,"ng-container",0),n.YNc(1,R,3,2,"ng-container",1)),2&be&&(n.Q6J("ngIf",!le.content&&null!==le.specificContent),n.xp6(1),n.Q6J("ngIf",le.content))},dependencies:[E.O5,E.RF,E.n9,E.ED,e.Pl,G],encapsulation:2,changeDetection:0})}return ne})(),te=(()=>{class ne{static#e=this.\u0275fac=function(be){return new(be||ne)};static#t=this.\u0275mod=n.oAB({type:ne});static#n=this.\u0275inj=n.cJS({imports:[M.vT,E.ez,e.eL,z.T,u.YI]})}return ne})()},3599:(nt,I,o)=>{"use strict";o.d(I,{Fd:()=>re,Lr:()=>fe,Nx:()=>K,U5:()=>ie,iK:()=>le});var e=o(49388),n=o(71088),t=o(62831),i=o(96814),l=o(65879),C=o(8324),E=o(10095),u=o(90551),z=o(96109),M=o(60095),h=o(78645),v=o(47394),g=o(32181),d=o(37398),p=o(59773),f=o(27921),y=o(99397),T=o(64194),x=o(50883),D=o(27754),_=o(12131),P=o(97582),S=o(83064);const A=["*"];function k(ae,xe){if(1&ae&&(l.ynx(0),l._uU(1),l.BQk()),2&ae){const Me=l.oxw(2);l.xp6(1),l.Oqu(Me.innerTip)}}const R=function(ae){return[ae]},$=function(ae){return{$implicit:ae}};function W(ae,xe){if(1&ae&&(l.TgZ(0,"div",4)(1,"div",5),l.YNc(2,k,2,1,"ng-container",6),l.qZA()()),2&ae){const Me=l.oxw();l.Q6J("@helpMotion",void 0),l.xp6(1),l.Q6J("ngClass",l.VKq(4,R,"ant-form-item-explain-"+Me.status)),l.xp6(1),l.Q6J("nzStringTemplateOutlet",Me.innerTip)("nzStringTemplateOutletContext",l.VKq(6,$,Me.validateControl))}}function ze(ae,xe){if(1&ae&&(l.ynx(0),l._uU(1),l.BQk()),2&ae){const Me=l.oxw(2);l.xp6(1),l.Oqu(Me.nzExtra)}}function Y(ae,xe){if(1&ae&&(l.TgZ(0,"div",7),l.YNc(1,ze,2,1,"ng-container",8),l.qZA()),2&ae){const Me=l.oxw();l.xp6(1),l.Q6J("nzStringTemplateOutlet",Me.nzExtra)}}function G(ae,xe){if(1&ae&&(l.ynx(0),l._UZ(1,"span",3),l.BQk()),2&ae){const Me=xe.$implicit,Ye=l.oxw(2);l.xp6(1),l.Q6J("nzType",Me)("nzTheme",Ye.tooltipIcon.theme)}}function V(ae,xe){if(1&ae&&(l.TgZ(0,"span",1),l.YNc(1,G,2,2,"ng-container",2),l.qZA()),2&ae){const Me=l.oxw();l.Q6J("nzTooltipTitle",Me.nzTooltipTitle),l.xp6(1),l.Q6J("nzStringTemplateOutlet",Me.tooltipIcon.type)}}let K=(()=>{class ae{setWithHelpViaTips(Me){this.withHelpClass=Me,this.cdr.markForCheck()}setStatus(Me){this.status=Me,this.cdr.markForCheck()}setHasFeedback(Me){this.hasFeedback=Me,this.cdr.markForCheck()}constructor(Me){this.cdr=Me,this.status="",this.hasFeedback=!1,this.withHelpClass=!1,this.destroy$=new h.x}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(Ye){return new(Ye||ae)(l.Y36(l.sBO))};static#t=this.\u0275cmp=l.Xpm({type:ae,selectors:[["nz-form-item"]],hostAttrs:[1,"ant-form-item"],hostVars:12,hostBindings:function(Ye,q){2&Ye&&l.ekj("ant-form-item-has-success","success"===q.status)("ant-form-item-has-warning","warning"===q.status)("ant-form-item-has-error","error"===q.status)("ant-form-item-is-validating","validating"===q.status)("ant-form-item-has-feedback",q.hasFeedback&&q.status)("ant-form-item-with-help",q.withHelpClass)},exportAs:["nzFormItem"],ngContentSelectors:A,decls:1,vars:0,template:function(Ye,q){1&Ye&&(l.F$t(),l.Hsn(0))},encapsulation:2,changeDetection:0})}return ae})();const ne={type:"question-circle",theme:"outline"};let fe=(()=>{class ae{getInputObservable(Me){return this.inputChanges$.pipe((0,g.h)(Ye=>Me in Ye),(0,d.U)(Ye=>Ye[Me]))}constructor(Me,Ye){this.nzConfigService=Me,this.directionality=Ye,this._nzModuleName="form",this.nzLayout="horizontal",this.nzNoColon=!1,this.nzAutoTips={},this.nzDisableAutoTips=!1,this.nzTooltipIcon=ne,this.nzLabelAlign="right",this.nzLabelWrap=!1,this.dir="ltr",this.destroy$=new h.x,this.inputChanges$=new h.x,this.dir=this.directionality.value,this.directionality.change?.pipe((0,p.R)(this.destroy$)).subscribe(q=>{this.dir=q})}ngOnChanges(Me){this.inputChanges$.next(Me)}ngOnDestroy(){this.inputChanges$.complete(),this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(Ye){return new(Ye||ae)(l.Y36(S.jY),l.Y36(e.Is,8))};static#t=this.\u0275dir=l.lG2({type:ae,selectors:[["","nz-form",""]],hostAttrs:[1,"ant-form"],hostVars:8,hostBindings:function(Ye,q){2&Ye&&l.ekj("ant-form-horizontal","horizontal"===q.nzLayout)("ant-form-vertical","vertical"===q.nzLayout)("ant-form-inline","inline"===q.nzLayout)("ant-form-rtl","rtl"===q.dir)},inputs:{nzLayout:"nzLayout",nzNoColon:"nzNoColon",nzAutoTips:"nzAutoTips",nzDisableAutoTips:"nzDisableAutoTips",nzTooltipIcon:"nzTooltipIcon",nzLabelAlign:"nzLabelAlign",nzLabelWrap:"nzLabelWrap"},exportAs:["nzForm"],features:[l.TTD]})}return(0,P.gn)([(0,S.oS)(),(0,D.yF)()],ae.prototype,"nzNoColon",void 0),(0,P.gn)([(0,S.oS)()],ae.prototype,"nzAutoTips",void 0),(0,P.gn)([(0,D.yF)()],ae.prototype,"nzDisableAutoTips",void 0),(0,P.gn)([(0,S.oS)()],ae.prototype,"nzTooltipIcon",void 0),(0,P.gn)([(0,S.oS)(),(0,D.yF)()],ae.prototype,"nzLabelWrap",void 0),ae})(),re=(()=>{class ae{get disableAutoTips(){return"default"!==this.nzDisableAutoTips?(0,D.sw)(this.nzDisableAutoTips):this.nzFormDirective?.nzDisableAutoTips}set nzHasFeedback(Me){this._hasFeedback=(0,D.sw)(Me),this.nzFormStatusService.formStatusChanges.next({status:this.status,hasFeedback:this._hasFeedback}),this.nzFormItemComponent&&this.nzFormItemComponent.setHasFeedback(this._hasFeedback)}get nzHasFeedback(){return this._hasFeedback}set nzValidateStatus(Me){Me instanceof M.TO||Me instanceof M.On?(this.validateControl=Me,this.validateString=null,this.watchControl()):Me instanceof M.u?(this.validateControl=Me.control,this.validateString=null,this.watchControl()):(this.validateString=Me,this.validateControl=null,this.setStatus())}watchControl(){this.validateChanges.unsubscribe(),this.validateControl&&this.validateControl.statusChanges&&(this.validateChanges=this.validateControl.statusChanges.pipe((0,f.O)(null),(0,p.R)(this.destroyed$)).subscribe(()=>{this.disableAutoTips||this.updateAutoErrorTip(),this.setStatus(),this.cdr.markForCheck()}))}setStatus(){this.status=this.getControlStatus(this.validateString),this.innerTip=this.getInnerTip(this.status),this.nzFormStatusService.formStatusChanges.next({status:this.status,hasFeedback:this.nzHasFeedback}),this.nzFormItemComponent&&(this.nzFormItemComponent.setWithHelpViaTips(!!this.innerTip),this.nzFormItemComponent.setStatus(this.status))}getControlStatus(Me){let Ye;return Ye="warning"===Me||this.validateControlStatus("INVALID","warning")?"warning":"error"===Me||this.validateControlStatus("INVALID")?"error":"validating"===Me||"pending"===Me||this.validateControlStatus("PENDING")?"validating":"success"===Me||this.validateControlStatus("VALID")?"success":"",Ye}validateControlStatus(Me,Ye){if(this.validateControl){const{dirty:q,touched:ve,status:ee}=this.validateControl;return(!!q||!!ve)&&(Ye?this.validateControl.hasError(Ye):ee===Me)}return!1}getInnerTip(Me){switch(Me){case"error":return!this.disableAutoTips&&this.autoErrorTip||this.nzErrorTip||null;case"validating":return this.nzValidatingTip||null;case"success":return this.nzSuccessTip||null;case"warning":return this.nzWarningTip||null;default:return null}}updateAutoErrorTip(){if(this.validateControl){const Me=this.validateControl.errors||{};let Ye="";for(const q in Me)if(Me.hasOwnProperty(q)&&(Ye=Me[q]?.[this.localeId]??this.nzAutoTips?.[this.localeId]?.[q]??this.nzAutoTips.default?.[q]??this.nzFormDirective?.nzAutoTips?.[this.localeId]?.[q]??this.nzFormDirective?.nzAutoTips.default?.[q]),Ye)break;this.autoErrorTip=Ye}}subscribeAutoTips(Me){Me?.pipe((0,p.R)(this.destroyed$)).subscribe(()=>{this.disableAutoTips||(this.updateAutoErrorTip(),this.setStatus(),this.cdr.markForCheck())})}constructor(Me,Ye,q,ve,ee){this.nzFormItemComponent=Me,this.cdr=Ye,this.nzFormDirective=ve,this.nzFormStatusService=ee,this._hasFeedback=!1,this.validateChanges=v.w0.EMPTY,this.validateString=null,this.destroyed$=new h.x,this.status="",this.validateControl=null,this.innerTip=null,this.nzAutoTips={},this.nzDisableAutoTips="default",this.subscribeAutoTips(q.localeChange.pipe((0,y.b)(Be=>this.localeId=Be.locale))),this.subscribeAutoTips(this.nzFormDirective?.getInputObservable("nzAutoTips")),this.subscribeAutoTips(this.nzFormDirective?.getInputObservable("nzDisableAutoTips").pipe((0,g.h)(()=>"default"===this.nzDisableAutoTips)))}ngOnChanges(Me){const{nzDisableAutoTips:Ye,nzAutoTips:q,nzSuccessTip:ve,nzWarningTip:ee,nzErrorTip:Be,nzValidatingTip:Re}=Me;Ye||q?(this.updateAutoErrorTip(),this.setStatus()):(ve||ee||Be||Re)&&this.setStatus()}ngOnInit(){this.setStatus()}ngOnDestroy(){this.destroyed$.next(),this.destroyed$.complete()}ngAfterContentInit(){!this.validateControl&&!this.validateString&&(this.nzValidateStatus=this.defaultValidateControl instanceof M.oH?this.defaultValidateControl.control:this.defaultValidateControl)}static#e=this.\u0275fac=function(Ye){return new(Ye||ae)(l.Y36(K,9),l.Y36(l.sBO),l.Y36(_.wi),l.Y36(fe,8),l.Y36(x.kH))};static#t=this.\u0275cmp=l.Xpm({type:ae,selectors:[["nz-form-control"]],contentQueries:function(Ye,q,ve){if(1&Ye&&l.Suo(ve,M.a5,5),2&Ye){let ee;l.iGM(ee=l.CRH())&&(q.defaultValidateControl=ee.first)}},hostAttrs:[1,"ant-form-item-control"],inputs:{nzSuccessTip:"nzSuccessTip",nzWarningTip:"nzWarningTip",nzErrorTip:"nzErrorTip",nzValidatingTip:"nzValidatingTip",nzExtra:"nzExtra",nzAutoTips:"nzAutoTips",nzDisableAutoTips:"nzDisableAutoTips",nzHasFeedback:"nzHasFeedback",nzValidateStatus:"nzValidateStatus"},exportAs:["nzFormControl"],features:[l._Bn([x.kH]),l.TTD],ngContentSelectors:A,decls:5,vars:2,consts:[[1,"ant-form-item-control-input"],[1,"ant-form-item-control-input-content"],["class","ant-form-item-explain ant-form-item-explain-connected",4,"ngIf"],["class","ant-form-item-extra",4,"ngIf"],[1,"ant-form-item-explain","ant-form-item-explain-connected"],["role","alert",3,"ngClass"],[4,"nzStringTemplateOutlet","nzStringTemplateOutletContext"],[1,"ant-form-item-extra"],[4,"nzStringTemplateOutlet"]],template:function(Ye,q){1&Ye&&(l.F$t(),l.TgZ(0,"div",0)(1,"div",1),l.Hsn(2),l.qZA()(),l.YNc(3,W,3,8,"div",2),l.YNc(4,Y,2,1,"div",3)),2&Ye&&(l.xp6(3),l.Q6J("ngIf",q.innerTip),l.xp6(1),l.Q6J("ngIf",q.nzExtra))},dependencies:[i.mk,i.O5,C.f],encapsulation:2,data:{animation:[T.c8]},changeDetection:0})}return ae})();function be(ae){return{...ne,..."string"==typeof ae?{type:ae}:ae}}let le=(()=>{class ae{set nzNoColon(Me){this.noColon=(0,D.sw)(Me)}get nzNoColon(){return"default"!==this.noColon?this.noColon:this.nzFormDirective?.nzNoColon}set nzTooltipIcon(Me){this._tooltipIcon=be(Me)}get tooltipIcon(){return"default"!==this._tooltipIcon?this._tooltipIcon:be(this.nzFormDirective?.nzTooltipIcon||ne)}set nzLabelAlign(Me){this.labelAlign=Me}get nzLabelAlign(){return"default"!==this.labelAlign?this.labelAlign:this.nzFormDirective?.nzLabelAlign||"right"}set nzLabelWrap(Me){this.labelWrap=(0,D.sw)(Me)}get nzLabelWrap(){return"default"!==this.labelWrap?this.labelWrap:this.nzFormDirective?.nzLabelWrap}constructor(Me,Ye){this.cdr=Me,this.nzFormDirective=Ye,this.nzRequired=!1,this.noColon="default",this._tooltipIcon="default",this.labelAlign="default",this.labelWrap="default",this.destroy$=new h.x,this.nzFormDirective&&(this.nzFormDirective.getInputObservable("nzNoColon").pipe((0,g.h)(()=>"default"===this.noColon),(0,p.R)(this.destroy$)).subscribe(()=>this.cdr.markForCheck()),this.nzFormDirective.getInputObservable("nzTooltipIcon").pipe((0,g.h)(()=>"default"===this._tooltipIcon),(0,p.R)(this.destroy$)).subscribe(()=>this.cdr.markForCheck()),this.nzFormDirective.getInputObservable("nzLabelAlign").pipe((0,g.h)(()=>"default"===this.labelAlign),(0,p.R)(this.destroy$)).subscribe(()=>this.cdr.markForCheck()),this.nzFormDirective.getInputObservable("nzLabelWrap").pipe((0,g.h)(()=>"default"===this.labelWrap),(0,p.R)(this.destroy$)).subscribe(()=>this.cdr.markForCheck()))}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(Ye){return new(Ye||ae)(l.Y36(l.sBO),l.Y36(fe,12))};static#t=this.\u0275cmp=l.Xpm({type:ae,selectors:[["nz-form-label"]],hostAttrs:[1,"ant-form-item-label"],hostVars:4,hostBindings:function(Ye,q){2&Ye&&l.ekj("ant-form-item-label-left","left"===q.nzLabelAlign)("ant-form-item-label-wrap",q.nzLabelWrap)},inputs:{nzFor:"nzFor",nzRequired:"nzRequired",nzNoColon:"nzNoColon",nzTooltipTitle:"nzTooltipTitle",nzTooltipIcon:"nzTooltipIcon",nzLabelAlign:"nzLabelAlign",nzLabelWrap:"nzLabelWrap"},exportAs:["nzFormLabel"],ngContentSelectors:A,decls:3,vars:6,consts:[["class","ant-form-item-tooltip","nz-tooltip","",3,"nzTooltipTitle",4,"ngIf"],["nz-tooltip","",1,"ant-form-item-tooltip",3,"nzTooltipTitle"],[4,"nzStringTemplateOutlet"],["nz-icon","",3,"nzType","nzTheme"]],template:function(Ye,q){1&Ye&&(l.F$t(),l.TgZ(0,"label"),l.Hsn(1),l.YNc(2,V,2,2,"span",0),l.qZA()),2&Ye&&(l.ekj("ant-form-item-no-colon",q.nzNoColon)("ant-form-item-required",q.nzRequired),l.uIk("for",q.nzFor),l.xp6(2),l.Q6J("ngIf",q.nzTooltipTitle))},dependencies:[i.O5,u.Ls,z.SY,C.f],encapsulation:2,changeDetection:0})}return(0,P.gn)([(0,D.yF)()],ae.prototype,"nzRequired",void 0),ae})(),ie=(()=>{class ae{static#e=this.\u0275fac=function(Ye){return new(Ye||ae)};static#t=this.\u0275mod=l.oAB({type:ae});static#n=this.\u0275inj=l.cJS({imports:[e.vT,i.ez,E.Jb,u.PV,z.cg,n.xu,t.ud,C.T,E.Jb]})}return ae})()},10095:(nt,I,o)=>{"use strict";o.d(I,{Jb:()=>g,SK:()=>h,t3:()=>v});var e=o(65879),n=o(97328),t=o(78645),i=o(59773),l=o(99087),C=o(71088),E=o(62831),u=o(49388),z=o(27754),M=o(96814);let h=(()=>{class d{getGutter(){const f=[null,null],y=this.nzGutter||0;return(Array.isArray(y)?y:[y,null]).forEach((x,D)=>{"object"==typeof x&&null!==x?(f[D]=null,Object.keys(l.WV).map(_=>{const P=_;this.mediaMatcher.matchMedia(l.WV[P]).matches&&x[P]&&(f[D]=x[P])})):f[D]=Number(x)||null}),f}setGutterStyle(){const[f,y]=this.getGutter();this.actualGutter$.next([f,y]);const T=(x,D)=>{null!==D&&this.renderer.setStyle(this.elementRef.nativeElement,x,`-${D/2}px`)};T("margin-left",f),T("margin-right",f),T("margin-top",y),T("margin-bottom",y)}constructor(f,y,T,x,D,_,P){this.elementRef=f,this.renderer=y,this.mediaMatcher=T,this.ngZone=x,this.platform=D,this.breakpointService=_,this.directionality=P,this.nzAlign=null,this.nzJustify=null,this.nzGutter=null,this.actualGutter$=new n.t(1),this.dir="ltr",this.destroy$=new t.x}ngOnInit(){this.dir=this.directionality.value,this.directionality.change?.pipe((0,i.R)(this.destroy$)).subscribe(f=>{this.dir=f}),this.setGutterStyle()}ngOnChanges(f){f.nzGutter&&this.setGutterStyle()}ngAfterViewInit(){this.platform.isBrowser&&this.breakpointService.subscribe(l.WV).pipe((0,i.R)(this.destroy$)).subscribe(()=>{this.setGutterStyle()})}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(y){return new(y||d)(e.Y36(e.SBq),e.Y36(e.Qsj),e.Y36(C.vx),e.Y36(e.R0b),e.Y36(E.t4),e.Y36(l.r3),e.Y36(u.Is,8))};static#t=this.\u0275dir=e.lG2({type:d,selectors:[["","nz-row",""],["nz-row"],["nz-form-item"]],hostAttrs:[1,"ant-row"],hostVars:20,hostBindings:function(y,T){2&y&&e.ekj("ant-row-top","top"===T.nzAlign)("ant-row-middle","middle"===T.nzAlign)("ant-row-bottom","bottom"===T.nzAlign)("ant-row-start","start"===T.nzJustify)("ant-row-end","end"===T.nzJustify)("ant-row-center","center"===T.nzJustify)("ant-row-space-around","space-around"===T.nzJustify)("ant-row-space-between","space-between"===T.nzJustify)("ant-row-space-evenly","space-evenly"===T.nzJustify)("ant-row-rtl","rtl"===T.dir)},inputs:{nzAlign:"nzAlign",nzJustify:"nzJustify",nzGutter:"nzGutter"},exportAs:["nzRow"],features:[e.TTD]})}return d})(),v=(()=>{class d{setHostClassMap(){const f={"ant-col":!0,[`ant-col-${this.nzSpan}`]:(0,z.DX)(this.nzSpan),[`ant-col-order-${this.nzOrder}`]:(0,z.DX)(this.nzOrder),[`ant-col-offset-${this.nzOffset}`]:(0,z.DX)(this.nzOffset),[`ant-col-pull-${this.nzPull}`]:(0,z.DX)(this.nzPull),[`ant-col-push-${this.nzPush}`]:(0,z.DX)(this.nzPush),"ant-col-rtl":"rtl"===this.dir,...this.generateClass()};for(const y in this.classMap)this.classMap.hasOwnProperty(y)&&this.renderer.removeClass(this.elementRef.nativeElement,y);this.classMap={...f};for(const y in this.classMap)this.classMap.hasOwnProperty(y)&&this.classMap[y]&&this.renderer.addClass(this.elementRef.nativeElement,y)}setHostFlexStyle(){this.hostFlexStyle=this.parseFlex(this.nzFlex)}parseFlex(f){return"number"==typeof f?`${f} ${f} auto`:"string"==typeof f&&/^\d+(\.\d+)?(px|em|rem|%)$/.test(f)?`0 0 ${f}`:f}generateClass(){const y={};return["nzXs","nzSm","nzMd","nzLg","nzXl","nzXXl"].forEach(T=>{const x=T.replace("nz","").toLowerCase();if((0,z.DX)(this[T]))if("number"==typeof this[T]||"string"==typeof this[T])y[`ant-col-${x}-${this[T]}`]=!0;else{const D=this[T];["span","pull","push","offset","order"].forEach(P=>{y[`ant-col-${x}${"span"===P?"-":`-${P}-`}${D[P]}`]=D&&(0,z.DX)(D[P])})}}),y}constructor(f,y,T,x){this.elementRef=f,this.nzRowDirective=y,this.renderer=T,this.directionality=x,this.classMap={},this.destroy$=new t.x,this.hostFlexStyle=null,this.dir="ltr",this.nzFlex=null,this.nzSpan=null,this.nzOrder=null,this.nzOffset=null,this.nzPush=null,this.nzPull=null,this.nzXs=null,this.nzSm=null,this.nzMd=null,this.nzLg=null,this.nzXl=null,this.nzXXl=null}ngOnInit(){this.dir=this.directionality.value,this.directionality.change?.pipe((0,i.R)(this.destroy$)).subscribe(f=>{this.dir=f,this.setHostClassMap()}),this.setHostClassMap(),this.setHostFlexStyle()}ngOnChanges(f){this.setHostClassMap();const{nzFlex:y}=f;y&&this.setHostFlexStyle()}ngAfterViewInit(){this.nzRowDirective&&this.nzRowDirective.actualGutter$.pipe((0,i.R)(this.destroy$)).subscribe(([f,y])=>{const T=(x,D)=>{null!==D&&this.renderer.setStyle(this.elementRef.nativeElement,x,D/2+"px")};T("padding-left",f),T("padding-right",f),T("padding-top",y),T("padding-bottom",y)})}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(y){return new(y||d)(e.Y36(e.SBq),e.Y36(h,9),e.Y36(e.Qsj),e.Y36(u.Is,8))};static#t=this.\u0275dir=e.lG2({type:d,selectors:[["","nz-col",""],["nz-col"],["nz-form-control"],["nz-form-label"]],hostVars:2,hostBindings:function(y,T){2&y&&e.Udp("flex",T.hostFlexStyle)},inputs:{nzFlex:"nzFlex",nzSpan:"nzSpan",nzOrder:"nzOrder",nzOffset:"nzOffset",nzPush:"nzPush",nzPull:"nzPull",nzXs:"nzXs",nzSm:"nzSm",nzMd:"nzMd",nzLg:"nzLg",nzXl:"nzXl",nzXXl:"nzXXl"},exportAs:["nzCol"],features:[e.TTD]})}return d})(),g=(()=>{class d{static#e=this.\u0275fac=function(y){return new(y||d)};static#t=this.\u0275mod=e.oAB({type:d});static#n=this.\u0275inj=e.cJS({imports:[u.vT,M.ez,C.xu,E.ud]})}return d})()},12131:(nt,I,o)=>{"use strict";o.d(I,{mx:()=>W,YI:()=>S,o9:()=>P,wi:()=>_,iF:()=>f,bF:()=>y});var e=o(65879),n=o(65619),t=o(1608),i=o(96814),l=o(40581),C=o(97753),E=o(62816);function u(_e){return(0,E.Z)(1,arguments),(0,C.Z)(_e,{weekStartsOn:1})}var g=o(89207),d=o(80356),p=o(3945),f={locale:"en",Pagination:{items_per_page:"/ page",jump_to:"Go to",jump_to_confirm:"confirm",page:"Page",prev_page:"Previous Page",next_page:"Next Page",prev_5:"Previous 5 Pages",next_5:"Next 5 Pages",prev_3:"Previous 3 Pages",next_3:"Next 3 Pages",page_size:"Page Size"},DatePicker:{lang:{placeholder:"Select date",yearPlaceholder:"Select year",quarterPlaceholder:"Select quarter",monthPlaceholder:"Select month",weekPlaceholder:"Select week",rangePlaceholder:["Start date","End date"],rangeYearPlaceholder:["Start year","End year"],rangeMonthPlaceholder:["Start month","End month"],rangeWeekPlaceholder:["Start week","End week"],locale:"en_US",today:"Today",now:"Now",backToToday:"Back to today",ok:"Ok",clear:"Clear",month:"Month",year:"Year",timeSelect:"select time",dateSelect:"select date",weekSelect:"Choose a week",monthSelect:"Choose a month",yearSelect:"Choose a year",decadeSelect:"Choose a decade",yearFormat:"YYYY",dateFormat:"M/D/YYYY",dayFormat:"D",dateTimeFormat:"M/D/YYYY HH:mm:ss",monthBeforeYear:!0,previousMonth:"Previous month (PageUp)",nextMonth:"Next month (PageDown)",previousYear:"Last year (Control + left)",nextYear:"Next year (Control + right)",previousDecade:"Last decade",nextDecade:"Next decade",previousCentury:"Last century",nextCentury:"Next century"},timePickerLocale:{placeholder:"Select time",rangePlaceholder:["Start time","End time"]}},TimePicker:{placeholder:"Select time",rangePlaceholder:["Start time","End time"]},Calendar:{lang:{placeholder:"Select date",yearPlaceholder:"Select year",quarterPlaceholder:"Select quarter",monthPlaceholder:"Select month",weekPlaceholder:"Select week",rangePlaceholder:["Start date","End date"],rangeYearPlaceholder:["Start year","End year"],rangeMonthPlaceholder:["Start month","End month"],rangeWeekPlaceholder:["Start week","End week"],locale:"en_US",today:"Today",now:"Now",backToToday:"Back to today",ok:"Ok",clear:"Clear",month:"Month",year:"Year",timeSelect:"select time",dateSelect:"select date",weekSelect:"Choose a week",monthSelect:"Choose a month",yearSelect:"Choose a year",decadeSelect:"Choose a decade",yearFormat:"YYYY",dateFormat:"M/D/YYYY",dayFormat:"D",dateTimeFormat:"M/D/YYYY HH:mm:ss",monthBeforeYear:!0,previousMonth:"Previous month (PageUp)",nextMonth:"Next month (PageDown)",previousYear:"Last year (Control + left)",nextYear:"Next year (Control + right)",previousDecade:"Last decade",nextDecade:"Next decade",previousCentury:"Last century",nextCentury:"Next century"},timePickerLocale:{placeholder:"Select time",rangePlaceholder:["Start time","End time"]}},global:{placeholder:"Please select"},Table:{filterTitle:"Filter menu",filterConfirm:"OK",filterReset:"Reset",filterEmptyText:"No filters",emptyText:"No data",selectAll:"Select current page",selectInvert:"Invert current page",selectionAll:"Select all data",sortTitle:"Sort",expand:"Expand row",collapse:"Collapse row",triggerDesc:"Click to sort descending",triggerAsc:"Click to sort ascending",cancelSort:"Click to cancel sorting",filterCheckall:"Select all items",filterSearchPlaceholder:"Search in filters",selectNone:"Clear all data"},Modal:{okText:"OK",cancelText:"Cancel",justOkText:"OK"},Popconfirm:{okText:"OK",cancelText:"Cancel"},Transfer:{titles:["",""],searchPlaceholder:"Search here",itemUnit:"item",itemsUnit:"items",remove:"Remove",selectCurrent:"Select current page",removeCurrent:"Remove current page",selectAll:"Select all data",removeAll:"Remove all data",selectInvert:"Invert current page"},Upload:{uploading:"Uploading...",removeFile:"Remove file",uploadError:"Upload error",previewFile:"Preview file",downloadFile:"Download file"},Empty:{description:"No Data"},Icon:{icon:"icon"},Text:{edit:"Edit",copy:"Copy",copied:"Copied",expand:"Expand"},PageHeader:{back:"Back"},Image:{preview:"Preview"},CronExpression:{cronError:"Invalid cron expression",second:"second",minute:"minute",hour:"hour",day:"day",month:"month",week:"week",secondError:"

      *Any value

      ,Separator between multiple values

      -Connector for interval values

      /Equally distributed

      0-59Allowable range

      ",minuteError:"

      *Any value

      ,Separator between multiple values

      -Connector for interval values

      /Equally distributed

      0-59Allowable range

      ",hourError:"

      *Any value

      ,Separator between multiple values

      -Connector for interval values

      /Equally distributed

      0-23Allowable range

      ",dayError:"

      *Any value

      ,Separator between multiple values

      -Connector for interval values

      /Equally distributed

      1-31Allowable range

      ",monthError:"

      *Any value

      ,Separator between multiple values

      -Connector for interval values

      /Equally distributed

      1-12Allowable range

      ",weekError:"

      *Any value

      ,Separator between multiple values

      -Connector for interval values

      /Equally distributed

      ? Not specify

      0-7Allowable range (0 represents Sunday, 1-7 are Monday to Sunday)

      "},QRCode:{expired:"QR code expired",refresh:"Refresh"}},y={locale:"zh-cn",Pagination:{items_per_page:"\u6761/\u9875",jump_to:"\u8df3\u81f3",jump_to_confirm:"\u786e\u5b9a",page:"\u9875",prev_page:"\u4e0a\u4e00\u9875",next_page:"\u4e0b\u4e00\u9875",prev_5:"\u5411\u524d 5 \u9875",next_5:"\u5411\u540e 5 \u9875",prev_3:"\u5411\u524d 3 \u9875",next_3:"\u5411\u540e 3 \u9875",page_size:"\u9875\u7801"},DatePicker:{lang:{placeholder:"\u8bf7\u9009\u62e9\u65e5\u671f",yearPlaceholder:"\u8bf7\u9009\u62e9\u5e74\u4efd",quarterPlaceholder:"\u8bf7\u9009\u62e9\u5b63\u5ea6",monthPlaceholder:"\u8bf7\u9009\u62e9\u6708\u4efd",weekPlaceholder:"\u8bf7\u9009\u62e9\u5468",rangePlaceholder:["\u5f00\u59cb\u65e5\u671f","\u7ed3\u675f\u65e5\u671f"],rangeYearPlaceholder:["\u5f00\u59cb\u5e74\u4efd","\u7ed3\u675f\u5e74\u4efd"],rangeMonthPlaceholder:["\u5f00\u59cb\u6708\u4efd","\u7ed3\u675f\u6708\u4efd"],rangeWeekPlaceholder:["\u5f00\u59cb\u5468","\u7ed3\u675f\u5468"],locale:"zh_CN",today:"\u4eca\u5929",now:"\u6b64\u523b",backToToday:"\u8fd4\u56de\u4eca\u5929",ok:"\u786e\u5b9a",timeSelect:"\u9009\u62e9\u65f6\u95f4",dateSelect:"\u9009\u62e9\u65e5\u671f",weekSelect:"\u9009\u62e9\u5468",clear:"\u6e05\u9664",month:"\u6708",year:"\u5e74",previousMonth:"\u4e0a\u4e2a\u6708 (\u7ffb\u9875\u4e0a\u952e)",nextMonth:"\u4e0b\u4e2a\u6708 (\u7ffb\u9875\u4e0b\u952e)",monthSelect:"\u9009\u62e9\u6708\u4efd",yearSelect:"\u9009\u62e9\u5e74\u4efd",decadeSelect:"\u9009\u62e9\u5e74\u4ee3",yearFormat:"YYYY\u5e74",dayFormat:"D\u65e5",dateFormat:"YYYY\u5e74M\u6708D\u65e5",dateTimeFormat:"YYYY\u5e74M\u6708D\u65e5 HH\u65f6mm\u5206ss\u79d2",previousYear:"\u4e0a\u4e00\u5e74 (Control\u952e\u52a0\u5de6\u65b9\u5411\u952e)",nextYear:"\u4e0b\u4e00\u5e74 (Control\u952e\u52a0\u53f3\u65b9\u5411\u952e)",previousDecade:"\u4e0a\u4e00\u5e74\u4ee3",nextDecade:"\u4e0b\u4e00\u5e74\u4ee3",previousCentury:"\u4e0a\u4e00\u4e16\u7eaa",nextCentury:"\u4e0b\u4e00\u4e16\u7eaa"},timePickerLocale:{placeholder:"\u8bf7\u9009\u62e9\u65f6\u95f4",rangePlaceholder:["\u5f00\u59cb\u65f6\u95f4","\u7ed3\u675f\u65f6\u95f4"]}},TimePicker:{placeholder:"\u8bf7\u9009\u62e9\u65f6\u95f4",rangePlaceholder:["\u5f00\u59cb\u65f6\u95f4","\u7ed3\u675f\u65f6\u95f4"]},Calendar:{lang:{placeholder:"\u8bf7\u9009\u62e9\u65e5\u671f",yearPlaceholder:"\u8bf7\u9009\u62e9\u5e74\u4efd",quarterPlaceholder:"\u8bf7\u9009\u62e9\u5b63\u5ea6",monthPlaceholder:"\u8bf7\u9009\u62e9\u6708\u4efd",weekPlaceholder:"\u8bf7\u9009\u62e9\u5468",rangePlaceholder:["\u5f00\u59cb\u65e5\u671f","\u7ed3\u675f\u65e5\u671f"],rangeYearPlaceholder:["\u5f00\u59cb\u5e74\u4efd","\u7ed3\u675f\u5e74\u4efd"],rangeMonthPlaceholder:["\u5f00\u59cb\u6708\u4efd","\u7ed3\u675f\u6708\u4efd"],rangeWeekPlaceholder:["\u5f00\u59cb\u5468","\u7ed3\u675f\u5468"],locale:"zh_CN",today:"\u4eca\u5929",now:"\u6b64\u523b",backToToday:"\u8fd4\u56de\u4eca\u5929",ok:"\u786e\u5b9a",timeSelect:"\u9009\u62e9\u65f6\u95f4",dateSelect:"\u9009\u62e9\u65e5\u671f",weekSelect:"\u9009\u62e9\u5468",clear:"\u6e05\u9664",month:"\u6708",year:"\u5e74",previousMonth:"\u4e0a\u4e2a\u6708 (\u7ffb\u9875\u4e0a\u952e)",nextMonth:"\u4e0b\u4e2a\u6708 (\u7ffb\u9875\u4e0b\u952e)",monthSelect:"\u9009\u62e9\u6708\u4efd",yearSelect:"\u9009\u62e9\u5e74\u4efd",decadeSelect:"\u9009\u62e9\u5e74\u4ee3",yearFormat:"YYYY\u5e74",dayFormat:"D\u65e5",dateFormat:"YYYY\u5e74M\u6708D\u65e5",dateTimeFormat:"YYYY\u5e74M\u6708D\u65e5 HH\u65f6mm\u5206ss\u79d2",previousYear:"\u4e0a\u4e00\u5e74 (Control\u952e\u52a0\u5de6\u65b9\u5411\u952e)",nextYear:"\u4e0b\u4e00\u5e74 (Control\u952e\u52a0\u53f3\u65b9\u5411\u952e)",previousDecade:"\u4e0a\u4e00\u5e74\u4ee3",nextDecade:"\u4e0b\u4e00\u5e74\u4ee3",previousCentury:"\u4e0a\u4e00\u4e16\u7eaa",nextCentury:"\u4e0b\u4e00\u4e16\u7eaa"},timePickerLocale:{placeholder:"\u8bf7\u9009\u62e9\u65f6\u95f4",rangePlaceholder:["\u5f00\u59cb\u65f6\u95f4","\u7ed3\u675f\u65f6\u95f4"]}},global:{placeholder:"\u8bf7\u9009\u62e9"},Table:{filterTitle:"\u7b5b\u9009",filterConfirm:"\u786e\u5b9a",filterReset:"\u91cd\u7f6e",filterEmptyText:"\u65e0\u7b5b\u9009\u9879",selectAll:"\u5168\u9009\u5f53\u9875",selectInvert:"\u53cd\u9009\u5f53\u9875",selectionAll:"\u5168\u9009\u6240\u6709",sortTitle:"\u6392\u5e8f",expand:"\u5c55\u5f00\u884c",collapse:"\u5173\u95ed\u884c",triggerDesc:"\u70b9\u51fb\u964d\u5e8f",triggerAsc:"\u70b9\u51fb\u5347\u5e8f",cancelSort:"\u53d6\u6d88\u6392\u5e8f",filterCheckall:"\u5168\u9009",filterSearchPlaceholder:"\u5728\u7b5b\u9009\u9879\u4e2d\u641c\u7d22",selectNone:"\u6e05\u7a7a\u6240\u6709"},Modal:{okText:"\u786e\u5b9a",cancelText:"\u53d6\u6d88",justOkText:"\u77e5\u9053\u4e86"},Popconfirm:{cancelText:"\u53d6\u6d88",okText:"\u786e\u5b9a"},Transfer:{searchPlaceholder:"\u8bf7\u8f93\u5165\u641c\u7d22\u5185\u5bb9",itemUnit:"\u9879",itemsUnit:"\u9879",remove:"\u5220\u9664",selectCurrent:"\u5168\u9009\u5f53\u9875",removeCurrent:"\u5220\u9664\u5f53\u9875",selectAll:"\u5168\u9009\u6240\u6709",removeAll:"\u5220\u9664\u5168\u90e8",selectInvert:"\u53cd\u9009\u5f53\u9875"},Upload:{uploading:"\u6587\u4ef6\u4e0a\u4f20\u4e2d",removeFile:"\u5220\u9664\u6587\u4ef6",uploadError:"\u4e0a\u4f20\u9519\u8bef",previewFile:"\u9884\u89c8\u6587\u4ef6",downloadFile:"\u4e0b\u8f7d\u6587\u4ef6"},Empty:{description:"\u6682\u65e0\u6570\u636e"},Icon:{icon:"\u56fe\u6807"},Text:{edit:"\u7f16\u8f91",copy:"\u590d\u5236",copied:"\u590d\u5236\u6210\u529f",expand:"\u5c55\u5f00"},PageHeader:{back:"\u8fd4\u56de"},Image:{preview:"\u9884\u89c8"},CronExpression:{cronError:"cron \u8868\u8fbe\u5f0f\u4e0d\u5408\u6cd5",second:"\u79d2",minute:"\u5206\u949f",hour:"\u5c0f\u65f6",day:"\u65e5",month:"\u6708",week:"\u5468",secondError:"

      *\u4efb\u610f\u503c

      ,\u591a\u4e2a\u503c\u4e4b\u95f4\u7684\u5206\u9694\u7b26

      -\u533a\u95f4\u503c\u7684\u8fde\u63a5\u7b26

      /\u5e73\u5747\u5206\u914d

      0-59\u5141\u8bb8\u8303\u56f4

      ",minuteError:"

      *\u4efb\u610f\u503c

      ,\u591a\u4e2a\u503c\u4e4b\u95f4\u7684\u5206\u9694\u7b26

      -\u533a\u95f4\u503c\u7684\u8fde\u63a5\u7b26

      /\u5e73\u5747\u5206\u914d

      0-59\u5141\u8bb8\u8303\u56f4

      ",hourError:"

      * \u4efb\u610f\u503c

      , \u591a\u4e2a\u503c\u4e4b\u95f4\u7684\u5206\u9694\u7b26

      - \u533a\u95f4\u503c\u7684\u8fde\u63a5\u7b26

      / \u5e73\u5747\u5206\u914d

      0-23 \u5141\u8bb8\u8303\u56f4

      ",dayError:"

      * \u4efb\u610f\u503c

      , \u591a\u4e2a\u503c\u4e4b\u95f4\u7684\u5206\u9694\u7b26

      - \u533a\u95f4\u503c\u7684\u8fde\u63a5\u7b26

      / \u5e73\u5747\u5206\u914d

      1-31 \u5141\u8bb8\u8303\u56f4

      ",monthError:"

      * \u4efb\u610f\u503c

      , \u591a\u4e2a\u503c\u4e4b\u95f4\u7684\u5206\u9694\u7b26

      - \u533a\u95f4\u503c\u7684\u8fde\u63a5\u7b26

      / \u5e73\u5747\u5206\u914d

      1-12 \u5141\u8bb8\u8303\u56f4

      ",weekError:"

      * \u4efb\u610f\u503c

      , \u591a\u4e2a\u503c\u4e4b\u95f4\u7684\u5206\u9694\u7b26

      - \u533a\u95f4\u503c\u7684\u8fde\u63a5\u7b26

      / \u5e73\u5747\u5206\u914d

      ? \u4e0d\u6307\u5b9a

      0-7 \u5141\u8bb8\u8303\u56f4\uff080\u4ee3\u8868\u5468\u65e5\uff0c1-7\u4f9d\u6b21\u4e3a\u5468\u4e00\u5230\u5468\u65e5\uff09

      "},QRCode:{expired:"\u4e8c\u7ef4\u7801\u8fc7\u671f",refresh:"\u70b9\u51fb\u5237\u65b0"}};const T=new e.OlP("nz-i18n"),D=new e.OlP("nz-date-locale");let _=(()=>{class _e{get localeChange(){return this._change.asObservable()}constructor(b,N){this._change=new n.X(this._locale),this.setLocale(b||y),this.setDateLocale(N||null)}translate(b,N){let O=this._getObjectPath(this._locale,b);return"string"==typeof O?(N&&Object.keys(N).forEach(j=>O=O.replace(new RegExp(`%${j}%`,"g"),N[j])),O):b}setLocale(b){this._locale&&this._locale.locale===b.locale||(this._locale=b,this._change.next(b))}getLocale(){return this._locale}getLocaleId(){return this._locale?this._locale.locale:""}setDateLocale(b){this.dateLocale=b}getDateLocale(){return this.dateLocale}getLocaleData(b,N){const O=b?this._getObjectPath(this._locale,b):this._locale;return!O&&!N&&(0,t.ZK)(`Missing translations for "${b}" in language "${this._locale.locale}".\nYou can use "NzI18nService.setLocale" as a temporary fix.\nWelcome to submit a pull request to help us optimize the translations!\nhttps://github.com/NG-ZORRO/ng-zorro-antd/blob/master/CONTRIBUTING.md`),O||N||this._getObjectPath(f,b)||{}}_getObjectPath(b,N){let O=b;const j=N.split("."),L=j.length;let he=0;for(;O&&he{class _e{constructor(b){this._locale=b}transform(b,N){return this._locale.translate(b,N)}static#e=this.\u0275fac=function(N){return new(N||_e)(e.Y36(_,16))};static#t=this.\u0275pipe=e.Yjl({name:"nzI18n",type:_e,pure:!0})}return _e})(),S=(()=>{class _e{static#e=this.\u0275fac=function(N){return new(N||_e)};static#t=this.\u0275mod=e.oAB({type:_e});static#n=this.\u0275inj=e.cJS({})}return _e})();const A=new e.OlP("date-config"),k={firstDayOfWeek:void 0};let W=(()=>{class _e{constructor(b,N){this.i18n=b,this.config=N,this.config=function R(_e){return{...k,..._e}}(this.config)}static#e=this.\u0275fac=function(N){return new(N||_e)(e.LFG(_),e.LFG(A,8))};static#t=this.\u0275prov=e.Yz7({token:_e,factory:function(N){let O=null;return O=N?new N:function $(_e,it){const b=_e.get(_);return b.getDateLocale()?new ze(b,it):new Y(b,it)}(e.LFG(e.zs3),e.LFG(A,8)),O},providedIn:"root"})}return _e})();class ze extends W{getISOWeek(it){return function v(_e){(0,E.Z)(1,arguments);var it=(0,l.Z)(_e),b=u(it).getTime()-function M(_e){(0,E.Z)(1,arguments);var it=function z(_e){(0,E.Z)(1,arguments);var it=(0,l.Z)(_e),b=it.getFullYear(),N=new Date(0);N.setFullYear(b+1,0,4),N.setHours(0,0,0,0);var O=u(N),j=new Date(0);j.setFullYear(b,0,4),j.setHours(0,0,0,0);var L=u(j);return it.getTime()>=O.getTime()?b+1:it.getTime()>=L.getTime()?b:b-1}(_e),b=new Date(0);return b.setFullYear(it,0,4),b.setHours(0,0,0,0),u(b)}(it).getTime();return Math.round(b/6048e5)+1}(it)}getFirstDayOfWeek(){let it;try{it=this.i18n.getDateLocale().options.weekStartsOn}catch{it=1}return null==this.config.firstDayOfWeek?it:this.config.firstDayOfWeek}format(it,b){return it?(0,g.Z)(it,b,{locale:this.i18n.getDateLocale()}):""}parseDate(it,b){return(0,d.Z)(it,b,new Date,{locale:this.i18n.getDateLocale(),weekStartsOn:this.getFirstDayOfWeek()})}parseTime(it,b){return this.parseDate(it,b)}}class Y extends W{getISOWeek(it){return+this.format(it,"w")}getFirstDayOfWeek(){if(void 0===this.config.firstDayOfWeek){const it=this.i18n.getLocaleId();return it&&["zh-cn","zh-tw"].indexOf(it.toLowerCase())>-1?1:0}return this.config.firstDayOfWeek}format(it,b){return it?(0,i.p6)(it,b,this.i18n.getLocaleId()):""}parseDate(it){return new Date(it)}parseTime(it,b){return new p.xR(b,this.i18n.getLocaleId()).toDate(it)}}},90551:(nt,I,o)=>{"use strict";o.d(I,{Ls:()=>Je,PV:()=>Ge,H5:()=>wt});var e=o(62831),n=o(65879),t=o(97582),i=o(78645),l=o(7715),C=o(59773),E=o(94265),u=o(36379),z=2,M=.16,h=.05,v=.05,g=.15,d=5,p=4,f=[{index:7,opacity:.15},{index:6,opacity:.25},{index:5,opacity:.3},{index:5,opacity:.45},{index:5,opacity:.65},{index:5,opacity:.85},{index:4,opacity:.9},{index:3,opacity:.95},{index:2,opacity:.97},{index:1,opacity:.98}];function y(Ke){var N=(0,E.py)(Ke.r,Ke.g,Ke.b);return{h:360*N.h,s:N.s,v:N.v}}function T(Ke){return"#".concat((0,E.vq)(Ke.r,Ke.g,Ke.b,!1))}function D(Ke,_e,it){var b;return(b=Math.round(Ke.h)>=60&&Math.round(Ke.h)<=240?it?Math.round(Ke.h)-z*_e:Math.round(Ke.h)+z*_e:it?Math.round(Ke.h)+z*_e:Math.round(Ke.h)-z*_e)<0?b+=360:b>=360&&(b-=360),b}function _(Ke,_e,it){return 0===Ke.h&&0===Ke.s?Ke.s:((b=it?Ke.s-M*_e:_e===p?Ke.s+M:Ke.s+h*_e)>1&&(b=1),it&&_e===d&&b>.1&&(b=.1),b<.06&&(b=.06),Number(b.toFixed(2)));var b}function P(Ke,_e,it){var b;return(b=it?Ke.v+v*_e:Ke.v-g*_e)>1&&(b=1),Number(b.toFixed(2))}function S(Ke){for(var _e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},it=[],b=(0,u.uA)(Ke),N=d;N>0;N-=1){var O=y(b),j=T((0,u.uA)({h:D(O,N,!0),s:_(O,N,!0),v:P(O,N,!0)}));it.push(j)}it.push(T(b));for(var L=1;L<=p;L+=1){var he=y(b),Ce=T((0,u.uA)({h:D(he,L),s:_(he,L),v:P(he,L)}));it.push(Ce)}return"dark"===_e.theme?f.map(function(bt){var Ft=bt.index,sn=bt.opacity,pn=T(function x(Ke,_e,it){var b=it/100;return{r:(_e.r-Ke.r)*b+Ke.r,g:(_e.g-Ke.g)*b+Ke.g,b:(_e.b-Ke.b)*b+Ke.b}}((0,u.uA)(_e.backgroundColor||"#141414"),(0,u.uA)(it[Ft]),100*sn));return pn}):it}var A={red:"#F5222D",volcano:"#FA541C",orange:"#FA8C16",gold:"#FAAD14",yellow:"#FADB14",lime:"#A0D911",green:"#52C41A",cyan:"#13C2C2",blue:"#1677FF",geekblue:"#2F54EB",purple:"#722ED1",magenta:"#EB2F96",grey:"#666666"},k={},R={};Object.keys(A).forEach(function(Ke){k[Ke]=S(A[Ke]),k[Ke].primary=k[Ke][5],R[Ke]=S(A[Ke],{theme:"dark",backgroundColor:"#141414"}),R[Ke].primary=R[Ke][5]});var Q=o(96814),ie=o(69862),ae=o(22096),xe=o(65592),Me=o(37398),Ye=o(99397),q=o(64716),ve=o(26306),ee=o(63020),Be=o(32181),Re=o(48180),ct=o(6593);const Ae="[@ant-design/icons-angular]:";function je(Ke){(0,n.X6Q)()&&console.warn(`${Ae} ${Ke}.`)}function ot(Ke){return S(Ke)[0]}function mt(Ke,_e){switch(_e){case"fill":return`${Ke}-fill`;case"outline":return`${Ke}-o`;case"twotone":return`${Ke}-twotone`;case void 0:return Ke;default:throw new Error(`${Ae}Theme "${_e}" is not a recognized theme!`)}}function B(Ke){return"object"==typeof Ke&&"string"==typeof Ke.name&&("string"==typeof Ke.theme||void 0===Ke.theme)&&"string"==typeof Ke.icon}function pt(Ke){const _e=Ke.split(":");switch(_e.length){case 1:return[Ke,""];case 2:return[_e[1],_e[0]];default:throw new Error(`${Ae}The icon type ${Ke} is not valid!`)}}function Ut(Ke){return new Error(`${Ae}the icon ${Ke} does not exist or is not registered.`)}function cn(){return new Error(`${Ae} tag not found.`)}const st=new n.OlP("ant_icons");let He=(()=>{class Ke{set twoToneColor({primaryColor:it,secondaryColor:b}){this._twoToneColorPalette.primaryColor=it,this._twoToneColorPalette.secondaryColor=b||ot(it)}get twoToneColor(){return{...this._twoToneColorPalette}}get _disableDynamicLoading(){return!1}constructor(it,b,N,O,j){this._rendererFactory=it,this._handler=b,this._document=N,this.sanitizer=O,this._antIcons=j,this.defaultTheme="outline",this._svgDefinitions=new Map,this._svgRenderedDefinitions=new Map,this._inProgressFetches=new Map,this._assetsUrlRoot="",this._twoToneColorPalette={primaryColor:"#333333",secondaryColor:"#E6E6E6"},this._enableJsonpLoading=!1,this._jsonpIconLoad$=new i.x,this._renderer=this._rendererFactory.createRenderer(null,null),this._handler&&(this._http=new ie.eN(this._handler)),this._antIcons&&this.addIcon(...this._antIcons)}useJsonpLoading(){this._enableJsonpLoading?je("You are already using jsonp loading."):(this._enableJsonpLoading=!0,window.__ant_icon_load=it=>{this._jsonpIconLoad$.next(it)})}changeAssetsSource(it){this._assetsUrlRoot=it.endsWith("/")?it:it+"/"}addIcon(...it){it.forEach(b=>{this._svgDefinitions.set(mt(b.name,b.theme),b)})}addIconLiteral(it,b){const[N,O]=pt(it);if(!O)throw function Lt(){return new Error(`${Ae}Type should have a namespace. Try "namespace:${name}".`)}();this.addIcon({name:it,icon:b})}clear(){this._svgDefinitions.clear(),this._svgRenderedDefinitions.clear()}getRenderedContent(it,b){const N=B(it)?it:this._svgDefinitions.get(it)||null;if(!N&&this._disableDynamicLoading)throw Ut(it);return(N?(0,ae.of)(N):this._loadIconDynamically(it)).pipe((0,Me.U)(j=>{if(!j)throw Ut(it);return this._loadSVGFromCacheOrCreateNew(j,b)}))}getCachedIcons(){return this._svgDefinitions}_loadIconDynamically(it){if(!this._http&&!this._enableJsonpLoading)return(0,ae.of)(function qt(){return function Mt(Ke){console.error(`${Ae} ${Ke}.`)}('you need to import "HttpClientModule" to use dynamic importing.'),null}());let b=this._inProgressFetches.get(it);if(!b){const[N,O]=pt(it),j=O?{name:it,icon:""}:function Ee(Ke){const _e=Ke.split("-"),it=function de(Ke){return"o"===Ke?"outline":Ke}(_e.splice(_e.length-1,1)[0]);return{name:_e.join("-"),theme:it,icon:""}}(N),he=(O?`${this._assetsUrlRoot}assets/${O}/${N}`:`${this._assetsUrlRoot}assets/${j.theme}/${j.name}`)+(this._enableJsonpLoading?".js":".svg"),Ce=this.sanitizer.sanitize(n.q3G.URL,he);if(!Ce)throw function en(Ke){return new Error(`${Ae}The url "${Ke}" is unsafe.`)}(he);b=(this._enableJsonpLoading?this._loadIconDynamicallyWithJsonp(j,Ce):this._http.get(Ce,{responseType:"text"}).pipe((0,Me.U)(Ft=>({...j,icon:Ft})))).pipe((0,Ye.b)(Ft=>this.addIcon(Ft)),(0,q.x)(()=>this._inProgressFetches.delete(it)),(0,ve.K)(()=>(0,ae.of)(null)),(0,ee.B)()),this._inProgressFetches.set(it,b)}return b}_loadIconDynamicallyWithJsonp(it,b){return new xe.y(N=>{const O=this._document.createElement("script"),j=setTimeout(()=>{L(),N.error(function Wt(){return new Error(`${Ae}Importing timeout error.`)}())},6e3);function L(){O.parentNode.removeChild(O),clearTimeout(j)}O.src=b,this._document.body.appendChild(O),this._jsonpIconLoad$.pipe((0,Be.h)(he=>he.name===it.name&&he.theme===it.theme),(0,Re.q)(1)).subscribe(he=>{N.next(he),L()})})}_loadSVGFromCacheOrCreateNew(it,b){let N;const O=b||this._twoToneColorPalette.primaryColor,j=ot(O)||this._twoToneColorPalette.secondaryColor,L="twotone"===it.theme?function we(Ke,_e,it,b){return`${mt(Ke,_e)}-${it}-${b}`}(it.name,it.theme,O,j):void 0===it.theme?it.name:mt(it.name,it.theme),he=this._svgRenderedDefinitions.get(L);return he?N=he.icon:(N=this._setSVGAttribute(this._colorizeSVGIcon(this._createSVGElementFromString(function Dt(Ke){return""!==pt(Ke)[1]}(it.name)?it.icon:function Ne(Ke){return Ke.replace(/['"]#333['"]/g,'"primaryColor"').replace(/['"]#E6E6E6['"]/g,'"secondaryColor"').replace(/['"]#D9D9D9['"]/g,'"secondaryColor"').replace(/['"]#D8D8D8['"]/g,'"secondaryColor"')}(it.icon)),"twotone"===it.theme,O,j)),this._svgRenderedDefinitions.set(L,{...it,icon:N})),function Ie(Ke){return Ke.cloneNode(!0)}(N)}_createSVGElementFromString(it){const b=this._document.createElement("div");b.innerHTML=it;const N=b.querySelector("svg");if(!N)throw cn;return N}_setSVGAttribute(it){return this._renderer.setAttribute(it,"width","1em"),this._renderer.setAttribute(it,"height","1em"),it}_colorizeSVGIcon(it,b,N,O){if(b){const j=it.childNodes,L=j.length;for(let he=0;he{class Ke{constructor(it,b,N){this._iconService=it,this._elementRef=b,this._renderer=N}ngOnChanges(it){(it.type||it.theme||it.twoToneColor)&&this._changeIcon()}_changeIcon(){return new Promise(it=>{if(!this.type)return this._clearSVGElement(),void it(null);const b=this._getSelfRenderMeta();this._iconService.getRenderedContent(this._parseIconType(this.type,this.theme),this.twoToneColor).subscribe(N=>{const O=this._getSelfRenderMeta();!function et(Ke,_e){return Ke.type===_e.type&&Ke.theme===_e.theme&&Ke.twoToneColor===_e.twoToneColor}(b,O)?it(null):(this._setSVGElement(N),it(N))})})}_getSelfRenderMeta(){return{type:this.type,theme:this.theme,twoToneColor:this.twoToneColor}}_parseIconType(it,b){if(B(it))return it;{const[N,O]=pt(it);return O?it:function U(Ke){return Ke.endsWith("-fill")||Ke.endsWith("-o")||Ke.endsWith("-twotone")}(N)?(b&&je(`'type' ${N} already gets a theme inside so 'theme' ${b} would be ignored`),N):mt(N,b||this._iconService.defaultTheme)}}_setSVGElement(it){this._clearSVGElement(),this._renderer.appendChild(this._elementRef.nativeElement,it)}_clearSVGElement(){const it=this._elementRef.nativeElement,b=it.childNodes;for(let O=b.length-1;O>=0;O--){const j=b[O];"svg"===j.tagName?.toLowerCase()&&this._renderer.removeChild(it,j)}}static#e=this.\u0275fac=function(b){return new(b||Ke)(n.Y36(He),n.Y36(n.SBq),n.Y36(n.Qsj))};static#t=this.\u0275dir=n.lG2({type:Ke,selectors:[["","antIcon",""]],inputs:{type:"type",theme:"theme",twoToneColor:"twoToneColor"},features:[n.TTD]})}return Ke})();var Qe=o(1608),ke=o(27754),pe=o(14715),qe=o(83064);const ge=[pe.V65,pe.ud1,pe.bBn,pe.BOg,pe.Hkd,pe.XuQ,pe.Rfq,pe.yQU,pe.U2Q,pe.UKj,pe.OYp,pe.BXH,pe.eLU,pe.x0x,pe.vkb,pe.VWu,pe.rMt,pe.vEg,pe.RIp,pe.RU0,pe.M8e,pe.ssy,pe.Z5F,pe.iUK,pe.LJh,pe.NFG,pe.UTl,pe.nrZ,pe.gvV,pe.d2H,pe.eFY,pe.sZJ,pe.np6,pe.w1L,pe.UY$,pe.v6v,pe.rHg,pe.v6v,pe.s_U,pe.TSL,pe.FsU,pe.cN2,pe.uIz,pe.d_$],Ze=new n.OlP("nz_icons"),Ue=(new n.OlP("nz_icon_default_twotone_color"),"#1890ff");let wt=(()=>{class Ke extends He{get _disableDynamicLoading(){return!this.platform.isBrowser}ngOnDestroy(){this.subscription&&(this.subscription.unsubscribe(),this.subscription=null)}normalizeSvgElement(it){it.getAttribute("viewBox")||this._renderer.setAttribute(it,"viewBox","0 0 1024 1024"),(!it.getAttribute("width")||!it.getAttribute("height"))&&(this._renderer.setAttribute(it,"width","1em"),this._renderer.setAttribute(it,"height","1em")),it.getAttribute("fill")||this._renderer.setAttribute(it,"fill","currentColor")}fetchFromIconfont(it){const{scriptUrl:b}=it;if(this._document&&!this.iconfontCache.has(b)){const N=this._renderer.createElement("script");this._renderer.setAttribute(N,"src",b),this._renderer.setAttribute(N,"data-namespace",b.replace(/^(https?|http):/g,"")),this._renderer.appendChild(this._document.body,N),this.iconfontCache.add(b)}}createIconfontIcon(it){return this._createSVGElementFromString(``)}constructor(it,b,N,O,j,L,he){super(it,j,L,b,[...ge,...he||[]]),this.nzConfigService=N,this.platform=O,this.configUpdated$=new i.x,this.iconfontCache=new Set,this.subscription=null,this.onConfigChange(),this.configDefaultTwotoneColor(),this.configDefaultTheme()}onConfigChange(){this.subscription=this.nzConfigService.getConfigChangeEventForComponent("icon").subscribe(()=>{this.configDefaultTwotoneColor(),this.configDefaultTheme(),this.configUpdated$.next()})}configDefaultTheme(){const it=this.getConfig();this.defaultTheme=it.nzTheme||"outline"}configDefaultTwotoneColor(){const b=this.getConfig().nzTwotoneColor||Ue;let N=Ue;b&&(b.startsWith("#")?N=b:(0,Qe.ZK)("Twotone color must be a hex color!")),this.twoToneColor={primaryColor:N}}getConfig(){return this.nzConfigService.getConfigForComponent("icon")||{}}static#e=this.\u0275fac=function(b){return new(b||Ke)(n.LFG(n.FYo),n.LFG(ct.H7),n.LFG(qe.jY),n.LFG(e.t4),n.LFG(ie.jN,8),n.LFG(Q.K0,8),n.LFG(Ze,8))};static#t=this.\u0275prov=n.Yz7({token:Ke,factory:Ke.\u0275fac,providedIn:"root"})}return Ke})();const De=new n.OlP("nz_icons_patch");let Pe=(()=>{class Ke{constructor(it,b){this.extraIcons=it,this.rootIconService=b,this.patched=!1}doPatch(){this.patched||(this.extraIcons.forEach(it=>this.rootIconService.addIcon(it)),this.patched=!0)}static#e=this.\u0275fac=function(b){return new(b||Ke)(n.LFG(De,2),n.LFG(wt))};static#t=this.\u0275prov=n.Yz7({token:Ke,factory:Ke.\u0275fac})}return Ke})(),Je=(()=>{class Ke extends It{set nzSpin(it){this.spin=it}set nzType(it){this.type=it}set nzTheme(it){this.theme=it}set nzTwotoneColor(it){this.twoToneColor=it}set nzIconfont(it){this.iconfont=it}constructor(it,b,N,O,j,L){super(O,N,j),this.ngZone=it,this.changeDetectorRef=b,this.iconService=O,this.renderer=j,this.cacheClassName=null,this.nzRotate=0,this.spin=!1,this.destroy$=new i.x,L&&L.doPatch(),this.el=N.nativeElement}ngOnChanges(it){const{nzType:b,nzTwotoneColor:N,nzSpin:O,nzTheme:j,nzRotate:L}=it;b||N||O||j?this.changeIcon2():L?this.handleRotate(this.el.firstChild):this._setSVGElement(this.iconService.createIconfontIcon(`#${this.iconfont}`))}ngOnInit(){this.renderer.setAttribute(this.el,"class",`anticon ${this.el.className}`.trim())}ngAfterContentChecked(){if(!this.type){const it=this.el.children;let b=it.length;if(!this.type&&it.length)for(;b--;){const N=it[b];"svg"===N.tagName.toLowerCase()&&this.iconService.normalizeSvgElement(N)}}}ngOnDestroy(){this.destroy$.next()}changeIcon2(){this.setClassName(),this.ngZone.runOutsideAngular(()=>{(0,l.D)(this._changeIcon()).pipe((0,C.R)(this.destroy$)).subscribe({next:it=>{this.ngZone.run(()=>{this.changeDetectorRef.detectChanges(),it&&(this.setSVGData(it),this.handleSpin(it),this.handleRotate(it))})},error:Qe.ZK})})}handleSpin(it){this.spin||"loading"===this.type?this.renderer.addClass(it,"anticon-spin"):this.renderer.removeClass(it,"anticon-spin")}handleRotate(it){this.nzRotate?this.renderer.setAttribute(it,"style",`transform: rotate(${this.nzRotate}deg)`):this.renderer.removeAttribute(it,"style")}setClassName(){this.cacheClassName&&this.renderer.removeClass(this.el,this.cacheClassName),this.cacheClassName=`anticon-${this.type}`,this.renderer.addClass(this.el,this.cacheClassName)}setSVGData(it){this.renderer.setAttribute(it,"data-icon",this.type),this.renderer.setAttribute(it,"aria-hidden","true")}static#e=this.\u0275fac=function(b){return new(b||Ke)(n.Y36(n.R0b),n.Y36(n.sBO),n.Y36(n.SBq),n.Y36(wt),n.Y36(n.Qsj),n.Y36(Pe,8))};static#t=this.\u0275dir=n.lG2({type:Ke,selectors:[["","nz-icon",""]],hostVars:2,hostBindings:function(b,N){2&b&&n.ekj("anticon",!0)},inputs:{nzSpin:"nzSpin",nzRotate:"nzRotate",nzType:"nzType",nzTheme:"nzTheme",nzTwotoneColor:"nzTwotoneColor",nzIconfont:"nzIconfont"},exportAs:["nzIcon"],features:[n.qOj,n.TTD]})}return(0,t.gn)([(0,ke.yF)()],Ke.prototype,"nzSpin",null),Ke})(),Ge=(()=>{class Ke{static forRoot(it){return{ngModule:Ke,providers:[{provide:Ze,useValue:it}]}}static forChild(it){return{ngModule:Ke,providers:[Pe,{provide:De,useValue:it}]}}static#e=this.\u0275fac=function(b){return new(b||Ke)};static#t=this.\u0275mod=n.oAB({type:Ke});static#n=this.\u0275inj=n.cJS({imports:[e.ud]})}return Ke})()},92760:(nt,I,o)=>{"use strict";o.d(I,{Gb:()=>ae,Ie:()=>ie,x8:()=>le});var e=o(97582),n=o(96814),t=o(65879),i=o(78645),l=o(92438),C=o(32181),E=o(48180),u=o(59773),z=o(83064),M=o(27754),h=o(33651),v=o(68484),g=o(36028),d=o(64194),p=o(99087),f=o(6593),y=o(34423),T=o(90551),x=o(49388),D=o(6192);const _=["imgRef"],P=["imagePreviewWrapper"];function S(xe,Me){if(1&xe){const Ye=t.EpF();t.TgZ(0,"li",10),t.NdJ("click",function(){const ee=t.CHM(Ye).$implicit;return t.KtG(ee.onClick())}),t._UZ(1,"span",11),t.qZA()}if(2&xe){const Ye=Me.$implicit,q=t.oxw();t.ekj("ant-image-preview-operations-operation-disabled",q.zoomOutDisabled&&"zoomOut"===Ye.type),t.xp6(1),t.Q6J("nzType",Ye.icon)}}function A(xe,Me){if(1&xe&&t._UZ(0,"img",13,14),2&xe){const Ye=t.oxw().$implicit,q=t.oxw();t.Udp("width",Ye.width)("height",Ye.height)("transform",q.previewImageTransform),t.uIk("src",q.sanitizerResourceUrl(Ye.src),t.LSH)("srcset",Ye.srcset)("alt",Ye.alt)}}function k(xe,Me){if(1&xe&&(t.ynx(0),t.YNc(1,A,2,9,"img",12),t.BQk()),2&xe){const Ye=Me.index,q=t.oxw();t.xp6(1),t.Q6J("ngIf",q.index===Ye)}}function R(xe,Me){if(1&xe){const Ye=t.EpF();t.ynx(0),t.TgZ(1,"div",15),t.NdJ("click",function(ve){t.CHM(Ye);const ee=t.oxw();return t.KtG(ee.onSwitchLeft(ve))}),t._UZ(2,"span",16),t.qZA(),t.TgZ(3,"div",17),t.NdJ("click",function(ve){t.CHM(Ye);const ee=t.oxw();return t.KtG(ee.onSwitchRight(ve))}),t._UZ(4,"span",18),t.qZA(),t.BQk()}if(2&xe){const Ye=t.oxw();t.xp6(1),t.ekj("ant-image-preview-switch-left-disabled",Ye.index<=0),t.xp6(2),t.ekj("ant-image-preview-switch-right-disabled",Ye.index>=Ye.images.length-1)}}const $=["*"],Y="image";class G{constructor(){this.nzKeyboard=!0,this.nzNoAnimation=!1,this.nzMaskClosable=!0,this.nzCloseOnNavigation=!0}}class V{constructor(Me,Ye,q){this.previewInstance=Me,this.config=Ye,this.overlayRef=q,this.destroy$=new i.x,q.keydownEvents().pipe((0,C.h)(ve=>this.config.nzKeyboard&&(ve.keyCode===g.hY||ve.keyCode===g.oh||ve.keyCode===g.SV)&&!(0,g.Vb)(ve))).subscribe(ve=>{ve.preventDefault(),ve.keyCode===g.hY&&this.close(),ve.keyCode===g.oh&&this.prev(),ve.keyCode===g.SV&&this.next()}),q.detachments().subscribe(()=>{this.overlayRef.dispose()}),Me.containerClick.pipe((0,E.q)(1),(0,u.R)(this.destroy$)).subscribe(()=>{this.close()}),Me.closeClick.pipe((0,E.q)(1),(0,u.R)(this.destroy$)).subscribe(()=>{this.close()}),Me.animationStateChanged.pipe((0,C.h)(ve=>"done"===ve.phaseName&&"leave"===ve.toState),(0,E.q)(1)).subscribe(()=>{this.dispose()})}switchTo(Me){this.previewInstance.switchTo(Me)}next(){this.previewInstance.next()}prev(){this.previewInstance.prev()}close(){this.previewInstance.startLeaveAnimation()}dispose(){this.destroy$.next(),this.overlayRef.dispose()}}function fe(xe,Me,Ye){const q=xe+Me,ve=(Me-Ye)/2;let ee=null;return Me>Ye?(xe>0&&(ee=ve),xe<0&&qYe)&&(ee=xe<0?ve:-ve),ee}const re={x:0,y:0};let be=(()=>{class xe{get animationDisabled(){return this.config.nzNoAnimation??!1}get maskClosable(){const Ye=this.nzConfigService.getConfigForComponent(Y)||{};return this.config.nzMaskClosable??Ye.nzMaskClosable??!0}constructor(Ye,q,ve,ee,Be,Re,ct,Ae){this.ngZone=Ye,this.host=q,this.cdr=ve,this.nzConfigService=ee,this.config=Be,this.overlayRef=Re,this.destroy$=ct,this.sanitizer=Ae,this.images=[],this.index=0,this.isDragging=!1,this.visible=!0,this.animationState="enter",this.animationStateChanged=new t.vpe,this.previewImageTransform="",this.previewImageWrapperTransform="",this.operations=[{icon:"close",onClick:()=>{this.onClose()},type:"close"},{icon:"zoom-in",onClick:()=>{this.onZoomIn()},type:"zoomIn"},{icon:"zoom-out",onClick:()=>{this.onZoomOut()},type:"zoomOut"},{icon:"rotate-right",onClick:()=>{this.onRotateRight()},type:"rotateRight"},{icon:"rotate-left",onClick:()=>{this.onRotateLeft()},type:"rotateLeft"}],this.zoomOutDisabled=!1,this.position={...re},this.containerClick=new t.vpe,this.closeClick=new t.vpe,this.zoom=this.config.nzZoom??1,this.rotate=this.config.nzRotate??0,this.updateZoomOutDisabled(),this.updatePreviewImageTransform(),this.updatePreviewImageWrapperTransform()}ngOnInit(){this.ngZone.runOutsideAngular(()=>{(0,l.R)(this.host.nativeElement,"click").pipe((0,u.R)(this.destroy$)).subscribe(Ye=>{Ye.target===Ye.currentTarget&&this.maskClosable&&this.containerClick.observers.length&&this.ngZone.run(()=>this.containerClick.emit())}),(0,l.R)(this.imagePreviewWrapper.nativeElement,"mousedown").pipe((0,u.R)(this.destroy$)).subscribe(()=>{this.isDragging=!0})})}setImages(Ye){this.images=Ye,this.cdr.markForCheck()}switchTo(Ye){this.index=Ye,this.cdr.markForCheck()}next(){this.index0&&(this.reset(),this.index--,this.updatePreviewImageTransform(),this.updatePreviewImageWrapperTransform(),this.updateZoomOutDisabled(),this.cdr.markForCheck())}markForCheck(){this.cdr.markForCheck()}onClose(){this.closeClick.emit()}onZoomIn(){this.zoom+=1,this.updatePreviewImageTransform(),this.updateZoomOutDisabled(),this.position={...re}}onZoomOut(){this.zoom>1&&(this.zoom-=1,this.updatePreviewImageTransform(),this.updateZoomOutDisabled(),this.position={...re})}onRotateRight(){this.rotate+=90,this.updatePreviewImageTransform()}onRotateLeft(){this.rotate-=90,this.updatePreviewImageTransform()}onSwitchLeft(Ye){Ye.preventDefault(),Ye.stopPropagation(),this.prev()}onSwitchRight(Ye){Ye.preventDefault(),Ye.stopPropagation(),this.next()}onAnimationStart(Ye){"enter"===Ye.toState?this.setEnterAnimationClass():"leave"===Ye.toState&&this.setLeaveAnimationClass(),this.animationStateChanged.emit(Ye)}onAnimationDone(Ye){"enter"===Ye.toState?this.setEnterAnimationClass():"leave"===Ye.toState&&this.setLeaveAnimationClass(),this.animationStateChanged.emit(Ye)}startLeaveAnimation(){this.animationState="leave",this.cdr.markForCheck()}onDragReleased(){this.isDragging=!1;const Ye=this.imageRef.nativeElement.offsetWidth*this.zoom,q=this.imageRef.nativeElement.offsetHeight*this.zoom,{left:ve,top:ee}=function te(xe){const Me=xe.getBoundingClientRect(),Ye=document.documentElement;return{left:Me.left+(window.pageXOffset||Ye.scrollLeft)-(Ye.clientLeft||document.body.clientLeft||0),top:Me.top+(window.pageYOffset||Ye.scrollTop)-(Ye.clientTop||document.body.clientTop||0)}}(this.imageRef.nativeElement),{width:Be,height:Re}=function ne(){return{width:document.documentElement.clientWidth,height:window.innerHeight||document.documentElement.clientHeight}}(),ct=this.rotate%180!=0,Mt=function K(xe){let Me={};return xe.width<=xe.clientWidth&&xe.height<=xe.clientHeight&&(Me={x:0,y:0}),(xe.width>xe.clientWidth||xe.height>xe.clientHeight)&&(Me={x:fe(xe.left,xe.width,xe.clientWidth),y:fe(xe.top,xe.height,xe.clientHeight)}),Me}({width:ct?q:Ye,height:ct?Ye:q,left:ve,top:ee,clientWidth:Be,clientHeight:Re});((0,M.DX)(Mt.x)||(0,M.DX)(Mt.y))&&(this.position={...this.position,...Mt})}sanitizerResourceUrl(Ye){return this.sanitizer.bypassSecurityTrustResourceUrl(Ye)}updatePreviewImageTransform(){this.previewImageTransform=`scale3d(${this.zoom}, ${this.zoom}, 1) rotate(${this.rotate}deg)`}updatePreviewImageWrapperTransform(){this.previewImageWrapperTransform=`translate3d(${this.position.x}px, ${this.position.y}px, 0)`}updateZoomOutDisabled(){this.zoomOutDisabled=this.zoom<=1}setEnterAnimationClass(){if(this.animationDisabled)return;const Ye=this.overlayRef.backdropElement;Ye&&(Ye.classList.add("ant-fade-enter"),Ye.classList.add("ant-fade-enter-active"))}setLeaveAnimationClass(){if(this.animationDisabled)return;const Ye=this.overlayRef.backdropElement;Ye&&(Ye.classList.add("ant-fade-leave"),Ye.classList.add("ant-fade-leave-active"))}reset(){this.zoom=1,this.rotate=0,this.position={...re}}static#e=this.\u0275fac=function(q){return new(q||xe)(t.Y36(t.R0b),t.Y36(t.SBq),t.Y36(t.sBO),t.Y36(z.jY),t.Y36(G),t.Y36(h.Iu),t.Y36(p.kn),t.Y36(f.H7))};static#t=this.\u0275cmp=t.Xpm({type:xe,selectors:[["nz-image-preview"]],viewQuery:function(q,ve){if(1&q&&(t.Gf(_,5),t.Gf(P,7)),2&q){let ee;t.iGM(ee=t.CRH())&&(ve.imageRef=ee.first),t.iGM(ee=t.CRH())&&(ve.imagePreviewWrapper=ee.first)}},hostAttrs:["tabindex","-1","role","document",1,"ant-image-preview-wrap"],hostVars:6,hostBindings:function(q,ve){1&q&&t.WFA("@fadeMotion.start",function(Be){return ve.onAnimationStart(Be)})("@fadeMotion.done",function(Be){return ve.onAnimationDone(Be)}),2&q&&(t.d8E("@.disabled",ve.config.nzNoAnimation)("@fadeMotion",ve.animationState),t.Udp("z-index",ve.config.nzZIndex),t.ekj("ant-image-preview-moving",ve.isDragging))},exportAs:["nzImagePreview"],features:[t._Bn([p.kn])],decls:11,vars:6,consts:[[1,"ant-image-preview"],["tabindex","0","aria-hidden","true",2,"width","0","height","0","overflow","hidden","outline","none"],[1,"ant-image-preview-content"],[1,"ant-image-preview-body"],[1,"ant-image-preview-operations"],["class","ant-image-preview-operations-operation",3,"ant-image-preview-operations-operation-disabled","click",4,"ngFor","ngForOf"],["cdkDrag","",1,"ant-image-preview-img-wrapper",3,"cdkDragFreeDragPosition","cdkDragReleased"],["imagePreviewWrapper",""],[4,"ngFor","ngForOf"],[4,"ngIf"],[1,"ant-image-preview-operations-operation",3,"click"],["nz-icon","","nzTheme","outline",1,"ant-image-preview-operations-icon",3,"nzType"],["cdkDragHandle","","class","ant-image-preview-img",3,"width","height","transform",4,"ngIf"],["cdkDragHandle","",1,"ant-image-preview-img"],["imgRef",""],[1,"ant-image-preview-switch-left",3,"click"],["nz-icon","","nzType","left","nzTheme","outline"],[1,"ant-image-preview-switch-right",3,"click"],["nz-icon","","nzType","right","nzTheme","outline"]],template:function(q,ve){1&q&&(t.TgZ(0,"div",0),t._UZ(1,"div",1),t.TgZ(2,"div",2)(3,"div",3)(4,"ul",4),t.YNc(5,S,2,3,"li",5),t.qZA(),t.TgZ(6,"div",6,7),t.NdJ("cdkDragReleased",function(){return ve.onDragReleased()}),t.YNc(8,k,2,1,"ng-container",8),t.qZA(),t.YNc(9,R,5,4,"ng-container",9),t.qZA()(),t._UZ(10,"div",1),t.qZA()),2&q&&(t.xp6(5),t.Q6J("ngForOf",ve.operations),t.xp6(1),t.Udp("transform",ve.previewImageWrapperTransform),t.Q6J("cdkDragFreeDragPosition",ve.position),t.xp6(2),t.Q6J("ngForOf",ve.images),t.xp6(1),t.Q6J("ngIf",ve.images.length>1))},dependencies:[y.Zt,y.Bh,n.sg,n.O5,T.Ls],encapsulation:2,data:{animation:[d.MC]},changeDetection:0})}return xe})(),le=(()=>{class xe{constructor(Ye,q,ve,ee){this.overlay=Ye,this.injector=q,this.nzConfigService=ve,this.directionality=ee}preview(Ye,q){return this.display(Ye,q)}display(Ye,q){const ve={...new G,...q??{}},ee=this.createOverlay(ve),Be=this.attachPreviewComponent(ee,ve);Be.setImages(Ye);const Re=new V(Be,ve,ee);return Be.previewRef=Re,Re}attachPreviewComponent(Ye,q){const ve=t.zs3.create({parent:this.injector,providers:[{provide:h.Iu,useValue:Ye},{provide:G,useValue:q}]}),ee=new v.C5(be,null,ve);return Ye.attach(ee).instance}createOverlay(Ye){const q=this.nzConfigService.getConfigForComponent(Y)||{},ve=new h.X_({hasBackdrop:!0,scrollStrategy:this.overlay.scrollStrategies.block(),positionStrategy:this.overlay.position().global(),disposeOnNavigation:Ye.nzCloseOnNavigation??q.nzCloseOnNavigation??!0,backdropClass:"ant-image-preview-mask",direction:Ye.nzDirection||q.nzDirection||this.directionality.value});return this.overlay.create(ve)}static#e=this.\u0275fac=function(q){return new(q||xe)(t.LFG(h.aV),t.LFG(t.zs3),t.LFG(z.jY),t.LFG(x.Is,8))};static#t=this.\u0275prov=t.Yz7({token:xe,factory:xe.\u0275fac})}return xe})(),ce=(()=>{class xe{constructor(){this.images=[]}addImage(Ye){this.images.push(Ye)}static#e=this.\u0275fac=function(q){return new(q||xe)};static#t=this.\u0275cmp=t.Xpm({type:xe,selectors:[["nz-image-group"]],exportAs:["nzImageGroup"],ngContentSelectors:$,decls:1,vars:0,template:function(q,ve){1&q&&(t.F$t(),t.Hsn(0))},encapsulation:2,changeDetection:0})}return xe})(),ie=(()=>{class xe{get previewable(){return!this.nzDisablePreview&&"error"!==this.status}constructor(Ye,q,ve,ee,Be,Re,ct){this.document=Ye,this.nzConfigService=q,this.elementRef=ve,this.nzImageService=ee,this.cdr=Be,this.parentGroup=Re,this.directionality=ct,this._nzModuleName="image",this.nzSrc="",this.nzSrcset="",this.nzDisablePreview=!1,this.nzFallback=null,this.nzPlaceholder=null,this.status="normal",this.backLoadDestroy$=new i.x,this.destroy$=new i.x}ngOnInit(){this.backLoad(),this.parentGroup&&this.parentGroup.addImage(this),this.directionality&&(this.directionality.change?.pipe((0,u.R)(this.destroy$)).subscribe(Ye=>{this.dir=Ye,this.cdr.detectChanges()}),this.dir=this.directionality.value)}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}onPreview(){if(this.previewable)if(this.parentGroup){const Ye=this.parentGroup.images.filter(Be=>Be.previewable),q=Ye.map(Be=>({src:Be.nzSrc,srcset:Be.nzSrcset})),ve=Ye.findIndex(Be=>this===Be);this.nzImageService.preview(q,{nzDirection:this.dir}).switchTo(ve)}else this.nzImageService.preview([{src:this.nzSrc,srcset:this.nzSrcset}],{nzDirection:this.dir})}getElement(){return this.elementRef}ngOnChanges(Ye){const{nzSrc:q}=Ye;q&&(this.getElement().nativeElement.src=q.currentValue,this.backLoad())}backLoad(){this.backLoadImage=this.document.createElement("img"),this.backLoadImage.src=this.nzSrc,this.backLoadImage.srcset=this.nzSrcset,this.status="loading",this.backLoadDestroy$.next(),this.backLoadDestroy$.complete(),this.backLoadDestroy$=new i.x,this.backLoadImage.complete?(this.status="normal",this.getElement().nativeElement.src=this.nzSrc,this.getElement().nativeElement.srcset=this.nzSrcset):(this.nzPlaceholder?(this.getElement().nativeElement.src=this.nzPlaceholder,this.getElement().nativeElement.srcset=""):(this.getElement().nativeElement.src=this.nzSrc,this.getElement().nativeElement.srcset=this.nzSrcset),(0,l.R)(this.backLoadImage,"load").pipe((0,u.R)(this.backLoadDestroy$),(0,u.R)(this.destroy$)).subscribe(()=>{this.status="normal",this.getElement().nativeElement.src=this.nzSrc,this.getElement().nativeElement.srcset=this.nzSrcset}),(0,l.R)(this.backLoadImage,"error").pipe((0,u.R)(this.backLoadDestroy$),(0,u.R)(this.destroy$)).subscribe(()=>{this.status="error",this.nzFallback&&(this.getElement().nativeElement.src=this.nzFallback,this.getElement().nativeElement.srcset="")}))}static#e=this.\u0275fac=function(q){return new(q||xe)(t.Y36(n.K0),t.Y36(z.jY),t.Y36(t.SBq),t.Y36(le),t.Y36(t.sBO),t.Y36(ce,8),t.Y36(x.Is,8))};static#t=this.\u0275dir=t.lG2({type:xe,selectors:[["img","nz-image",""]],hostBindings:function(q,ve){1&q&&t.NdJ("click",function(){return ve.onPreview()})},inputs:{nzSrc:"nzSrc",nzSrcset:"nzSrcset",nzDisablePreview:"nzDisablePreview",nzFallback:"nzFallback",nzPlaceholder:"nzPlaceholder"},exportAs:["nzImage"],features:[t.TTD]})}return(0,e.gn)([(0,M.yF)(),(0,z.oS)()],xe.prototype,"nzDisablePreview",void 0),(0,e.gn)([(0,z.oS)()],xe.prototype,"nzFallback",void 0),(0,e.gn)([(0,z.oS)()],xe.prototype,"nzPlaceholder",void 0),xe})(),ae=(()=>{class xe{static#e=this.\u0275fac=function(q){return new(q||xe)};static#t=this.\u0275mod=t.oAB({type:xe});static#n=this.\u0275inj=t.cJS({providers:[le],imports:[x.vT,h.U8,v.eL,y._t,n.ez,T.PV,D.YS]})}return xe})()},68373:(nt,I,o)=>{"use strict";o.d(I,{Zf:()=>Ye,_V:()=>ie});var e=o(97582),n=o(36028),t=o(65879),i=o(60095),l=o(78645),C=o(92438),E=o(63019),u=o(93997),z=o(59773),M=o(99087),h=o(27754),v=o(4300),g=o(49388),d=o(50883),p=o(96814),f=o(90551),y=o(8324);const T=["upHandler"],x=["downHandler"],D=["inputElement"];function _(q,ve){if(1&q&&t._UZ(0,"nz-form-item-feedback-icon",11),2&q){const ee=t.oxw();t.Q6J("status",ee.status)}}let ie=(()=>{class q{onModelChange(ee){this.parsedValue=this.nzParser(ee),this.inputElement.nativeElement.value=`${this.parsedValue}`;const Be=this.getCurrentValidValue(this.parsedValue);this.setValue(Be)}getCurrentValidValue(ee){let Be=ee;return Be=""===Be?"":this.isNotCompleteNumber(Be)?this.value:`${this.getValidValue(Be)}`,this.toNumber(Be)}isNotCompleteNumber(ee){return isNaN(ee)||""===ee||null===ee||!(!ee||ee.toString().indexOf(".")!==ee.toString().length-1)}getValidValue(ee){let Be=parseFloat(ee);return isNaN(Be)?ee:(Bethis.nzMax&&(Be=this.nzMax),Be)}toNumber(ee){if(this.isNotCompleteNumber(ee))return ee;const Be=String(ee);if(Be.indexOf(".")>=0&&(0,h.DX)(this.nzPrecision)){if("function"==typeof this.nzPrecisionMode)return this.nzPrecisionMode(ee,this.nzPrecision);if("cut"===this.nzPrecisionMode){const Re=Be.split(".");return Re[1]=Re[1].slice(0,this.nzPrecision),Number(Re.join("."))}return Number(Number(ee).toFixed(this.nzPrecision))}return Number(ee)}getRatio(ee){let Be=1;return ee.metaKey||ee.ctrlKey?Be=.1:ee.shiftKey&&(Be=10),Be}down(ee,Be){this.isFocused||this.focus(),this.step("down",ee,Be)}up(ee,Be){this.isFocused||this.focus(),this.step("up",ee,Be)}getPrecision(ee){const Be=ee.toString();if(Be.indexOf("e-")>=0)return parseInt(Be.slice(Be.indexOf("e-")+2),10);let Re=0;return Be.indexOf(".")>=0&&(Re=Be.length-Be.indexOf(".")-1),Re}getMaxPrecision(ee,Be){if((0,h.DX)(this.nzPrecision))return this.nzPrecision;const Re=this.getPrecision(Be),ct=this.getPrecision(this.nzStep),Ae=this.getPrecision(ee);return ee?Math.max(Ae,Re+ct):Re+ct}getPrecisionFactor(ee,Be){const Re=this.getMaxPrecision(ee,Be);return Math.pow(10,Re)}upStep(ee,Be){const Re=this.getPrecisionFactor(ee,Be),ct=Math.abs(this.getMaxPrecision(ee,Be));let Ae;return Ae="number"==typeof ee?((Re*ee+Re*this.nzStep*Be)/Re).toFixed(ct):this.nzMin===-1/0?this.nzStep:this.nzMin,this.toNumber(Ae)}downStep(ee,Be){const Re=this.getPrecisionFactor(ee,Be),ct=Math.abs(this.getMaxPrecision(ee,Be));let Ae;return Ae="number"==typeof ee?((Re*ee-Re*this.nzStep*Be)/Re).toFixed(ct):this.nzMin===-1/0?-this.nzStep:this.nzMin,this.toNumber(Ae)}step(ee,Be,Re=1){if(this.stop(),Be.preventDefault(),this.nzDisabled)return;const ct=this.getCurrentValidValue(this.parsedValue)||0;let Ae=0;"up"===ee?Ae=this.upStep(ct,Re):"down"===ee&&(Ae=this.downStep(ct,Re));const Mt=Ae>this.nzMax||Aethis.nzMax?Ae=this.nzMax:Ae{this[ee](Be,Re)},300))}stop(){this.autoStepTimer&&clearTimeout(this.autoStepTimer)}setValue(ee){if(`${this.value}`!=`${ee}`&&this.onChange(ee),this.value=ee,this.parsedValue=ee,this.disabledUp=this.disabledDown=!1,ee||0===ee){const Be=Number(ee);Be>=this.nzMax&&(this.disabledUp=!0),Be<=this.nzMin&&(this.disabledDown=!0)}}updateDisplayValue(ee){const Be=(0,h.DX)(this.nzFormatter(ee))?this.nzFormatter(ee):"";this.displayValue=Be,this.inputElement.nativeElement.value=`${Be}`}writeValue(ee){this.value=ee,this.setValue(ee),this.updateDisplayValue(ee),this.cdr.markForCheck()}registerOnChange(ee){this.onChange=ee}registerOnTouched(ee){this.onTouched=ee}setDisabledState(ee){this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||ee,this.isNzDisableFirstChange=!1,this.disabled$.next(this.nzDisabled),this.cdr.markForCheck()}focus(){this.focusMonitor.focusVia(this.inputElement,"keyboard")}blur(){this.inputElement.nativeElement.blur()}constructor(ee,Be,Re,ct,Ae,Mt,je,ot,mt){this.ngZone=ee,this.elementRef=Be,this.cdr=Re,this.focusMonitor=ct,this.renderer=Ae,this.directionality=Mt,this.destroy$=je,this.nzFormStatusService=ot,this.nzFormNoStatusService=mt,this.isNzDisableFirstChange=!0,this.isFocused=!1,this.disabled$=new l.x,this.disabledUp=!1,this.disabledDown=!1,this.dir="ltr",this.prefixCls="ant-input-number",this.status="",this.statusCls={},this.hasFeedback=!1,this.onChange=()=>{},this.onTouched=()=>{},this.nzBlur=new t.vpe,this.nzFocus=new t.vpe,this.nzSize="default",this.nzMin=-1/0,this.nzMax=1/0,this.nzParser=we=>we.trim().replace(/\u3002/g,".").replace(/[^\w\.-]+/g,""),this.nzPrecisionMode="toFixed",this.nzPlaceHolder="",this.nzStatus="",this.nzStep=1,this.nzInputMode="decimal",this.nzId=null,this.nzDisabled=!1,this.nzReadOnly=!1,this.nzAutoFocus=!1,this.nzBorderless=!1,this.nzFormatter=we=>we}ngOnInit(){this.nzFormStatusService?.formStatusChanges.pipe((0,u.x)((ee,Be)=>ee.status===Be.status&&ee.hasFeedback===Be.hasFeedback),(0,z.R)(this.destroy$)).subscribe(({status:ee,hasFeedback:Be})=>{this.setStatusStyles(ee,Be)}),this.focusMonitor.monitor(this.elementRef,!0).pipe((0,z.R)(this.destroy$)).subscribe(ee=>{ee?(this.isFocused=!0,this.nzFocus.emit()):(this.isFocused=!1,this.updateDisplayValue(this.value),this.nzBlur.emit(),Promise.resolve().then(()=>this.onTouched()))}),this.dir=this.directionality.value,this.directionality.change.pipe((0,z.R)(this.destroy$)).subscribe(ee=>{this.dir=ee}),this.setupHandlersListeners(),this.ngZone.runOutsideAngular(()=>{(0,C.R)(this.inputElement.nativeElement,"keyup").pipe((0,z.R)(this.destroy$)).subscribe(()=>this.stop()),(0,C.R)(this.inputElement.nativeElement,"keydown").pipe((0,z.R)(this.destroy$)).subscribe(ee=>{const{keyCode:Be}=ee;Be!==n.LH&&Be!==n.JH&&Be!==n.K5||this.ngZone.run(()=>{if(Be===n.LH){const Re=this.getRatio(ee);this.up(ee,Re),this.stop()}else if(Be===n.JH){const Re=this.getRatio(ee);this.down(ee,Re),this.stop()}else this.updateDisplayValue(this.value);this.cdr.markForCheck()})})})}ngOnChanges(ee){const{nzStatus:Be,nzDisabled:Re}=ee;if(ee.nzFormatter&&!ee.nzFormatter.isFirstChange()){const ct=this.getCurrentValidValue(this.parsedValue);this.setValue(ct),this.updateDisplayValue(ct)}Re&&this.disabled$.next(this.nzDisabled),Be&&this.setStatusStyles(this.nzStatus,this.hasFeedback)}ngAfterViewInit(){this.nzAutoFocus&&this.focus()}ngOnDestroy(){this.focusMonitor.stopMonitoring(this.elementRef)}setupHandlersListeners(){this.ngZone.runOutsideAngular(()=>{(0,E.T)((0,C.R)(this.upHandler.nativeElement,"mouseup"),(0,C.R)(this.upHandler.nativeElement,"mouseleave"),(0,C.R)(this.downHandler.nativeElement,"mouseup"),(0,C.R)(this.downHandler.nativeElement,"mouseleave")).pipe((0,z.R)(this.destroy$)).subscribe(()=>this.stop())})}setStatusStyles(ee,Be){this.status=ee,this.hasFeedback=Be,this.cdr.markForCheck(),this.statusCls=(0,h.Zu)(this.prefixCls,ee,Be),Object.keys(this.statusCls).forEach(Re=>{this.statusCls[Re]?this.renderer.addClass(this.elementRef.nativeElement,Re):this.renderer.removeClass(this.elementRef.nativeElement,Re)})}static#e=this.\u0275fac=function(Be){return new(Be||q)(t.Y36(t.R0b),t.Y36(t.SBq),t.Y36(t.sBO),t.Y36(v.tE),t.Y36(t.Qsj),t.Y36(g.Is,8),t.Y36(M.kn),t.Y36(d.kH,8),t.Y36(d.yW,8))};static#t=this.\u0275cmp=t.Xpm({type:q,selectors:[["nz-input-number"]],viewQuery:function(Be,Re){if(1&Be&&(t.Gf(T,7),t.Gf(x,7),t.Gf(D,7)),2&Be){let ct;t.iGM(ct=t.CRH())&&(Re.upHandler=ct.first),t.iGM(ct=t.CRH())&&(Re.downHandler=ct.first),t.iGM(ct=t.CRH())&&(Re.inputElement=ct.first)}},hostAttrs:[1,"ant-input-number"],hostVars:16,hostBindings:function(Be,Re){2&Be&&t.ekj("ant-input-number-in-form-item",!!Re.nzFormStatusService)("ant-input-number-focused",Re.isFocused)("ant-input-number-lg","large"===Re.nzSize)("ant-input-number-sm","small"===Re.nzSize)("ant-input-number-disabled",Re.nzDisabled)("ant-input-number-readonly",Re.nzReadOnly)("ant-input-number-rtl","rtl"===Re.dir)("ant-input-number-borderless",Re.nzBorderless)},inputs:{nzSize:"nzSize",nzMin:"nzMin",nzMax:"nzMax",nzParser:"nzParser",nzPrecision:"nzPrecision",nzPrecisionMode:"nzPrecisionMode",nzPlaceHolder:"nzPlaceHolder",nzStatus:"nzStatus",nzStep:"nzStep",nzInputMode:"nzInputMode",nzId:"nzId",nzDisabled:"nzDisabled",nzReadOnly:"nzReadOnly",nzAutoFocus:"nzAutoFocus",nzBorderless:"nzBorderless",nzFormatter:"nzFormatter"},outputs:{nzBlur:"nzBlur",nzFocus:"nzFocus"},exportAs:["nzInputNumber"],features:[t._Bn([{provide:i.JU,useExisting:(0,t.Gpc)(()=>q),multi:!0},M.kn]),t.TTD],decls:11,vars:15,consts:[[1,"ant-input-number-handler-wrap"],["unselectable","unselectable",1,"ant-input-number-handler","ant-input-number-handler-up",3,"mousedown"],["upHandler",""],["nz-icon","","nzType","up",1,"ant-input-number-handler-up-inner"],["unselectable","unselectable",1,"ant-input-number-handler","ant-input-number-handler-down",3,"mousedown"],["downHandler",""],["nz-icon","","nzType","down",1,"ant-input-number-handler-down-inner"],[1,"ant-input-number-input-wrap"],["autocomplete","off",1,"ant-input-number-input",3,"disabled","placeholder","readOnly","ngModel","ngModelChange"],["inputElement",""],["class","ant-input-number-suffix",3,"status",4,"ngIf"],[1,"ant-input-number-suffix",3,"status"]],template:function(Be,Re){1&Be&&(t.TgZ(0,"div",0)(1,"span",1,2),t.NdJ("mousedown",function(Ae){return Re.up(Ae)}),t._UZ(3,"span",3),t.qZA(),t.TgZ(4,"span",4,5),t.NdJ("mousedown",function(Ae){return Re.down(Ae)}),t._UZ(6,"span",6),t.qZA()(),t.TgZ(7,"div",7)(8,"input",8,9),t.NdJ("ngModelChange",function(Ae){return Re.onModelChange(Ae)}),t.qZA()(),t.YNc(10,_,1,1,"nz-form-item-feedback-icon",10)),2&Be&&(t.xp6(1),t.ekj("ant-input-number-handler-up-disabled",Re.disabledUp),t.xp6(3),t.ekj("ant-input-number-handler-down-disabled",Re.disabledDown),t.xp6(4),t.Q6J("disabled",Re.nzDisabled)("placeholder",Re.nzPlaceHolder)("readOnly",Re.nzReadOnly)("ngModel",Re.displayValue),t.uIk("id",Re.nzId)("autofocus",Re.nzAutoFocus?"autofocus":null)("min",Re.nzMin)("max",Re.nzMax)("step",Re.nzStep)("inputmode",Re.nzInputMode),t.xp6(2),t.Q6J("ngIf",Re.hasFeedback&&!!Re.status&&!Re.nzFormNoStatusService))},dependencies:[p.O5,i.Fj,i.JJ,i.On,f.Ls,d.w_],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,h.yF)()],q.prototype,"nzDisabled",void 0),(0,e.gn)([(0,h.yF)()],q.prototype,"nzReadOnly",void 0),(0,e.gn)([(0,h.yF)()],q.prototype,"nzAutoFocus",void 0),(0,e.gn)([(0,h.yF)()],q.prototype,"nzBorderless",void 0),q})(),Ye=(()=>{class q{static#e=this.\u0275fac=function(Be){return new(Be||q)};static#t=this.\u0275mod=t.oAB({type:q});static#n=this.\u0275inj=t.cJS({imports:[g.vT,p.ez,i.u5,y.T,f.PV,d.mJ]})}return q})()},20824:(nt,I,o)=>{"use strict";o.d(I,{Zp:()=>xe,gB:()=>q,ke:()=>Ye,o7:()=>Be,rh:()=>ve,w:()=>ee});var e=o(97582),n=o(65879),t=o(78645),i=o(63019),l=o(36232),C=o(93997),E=o(59773),u=o(32181),z=o(27921),M=o(94664),h=o(21631),v=o(37398),g=o(50883),d=o(27754),p=o(60095),f=o(49388),y=o(4300),T=o(96814),x=o(90551),D=o(8324),_=o(62831),P=o(99087);const S=["nz-input-group-slot",""];function A(Re,ct){if(1&Re&&n._UZ(0,"span",2),2&Re){const Ae=n.oxw();n.Q6J("nzType",Ae.icon)}}function k(Re,ct){if(1&Re&&(n.ynx(0),n._uU(1),n.BQk()),2&Re){const Ae=n.oxw();n.xp6(1),n.Oqu(Ae.template)}}const R=["*"];function $(Re,ct){if(1&Re&&n._UZ(0,"span",7),2&Re){const Ae=n.oxw(2);n.Q6J("icon",Ae.nzAddOnBeforeIcon)("template",Ae.nzAddOnBefore)}}function W(Re,ct){}function ze(Re,ct){if(1&Re&&(n.TgZ(0,"span",8),n.YNc(1,W,0,0,"ng-template",9),n.qZA()),2&Re){const Ae=n.oxw(2),Mt=n.MAs(4);n.ekj("ant-input-affix-wrapper-disabled",Ae.disabled)("ant-input-affix-wrapper-sm",Ae.isSmall)("ant-input-affix-wrapper-lg",Ae.isLarge)("ant-input-affix-wrapper-focused",Ae.focused),n.Q6J("ngClass",Ae.affixInGroupStatusCls),n.xp6(1),n.Q6J("ngTemplateOutlet",Mt)}}function Y(Re,ct){if(1&Re&&n._UZ(0,"span",7),2&Re){const Ae=n.oxw(2);n.Q6J("icon",Ae.nzAddOnAfterIcon)("template",Ae.nzAddOnAfter)}}function G(Re,ct){if(1&Re&&(n.TgZ(0,"span",4),n.YNc(1,$,1,2,"span",5),n.YNc(2,ze,2,10,"span",6),n.YNc(3,Y,1,2,"span",5),n.qZA()),2&Re){const Ae=n.oxw(),Mt=n.MAs(6);n.xp6(1),n.Q6J("ngIf",Ae.nzAddOnBefore||Ae.nzAddOnBeforeIcon),n.xp6(1),n.Q6J("ngIf",Ae.isAffix||Ae.hasFeedback)("ngIfElse",Mt),n.xp6(1),n.Q6J("ngIf",Ae.nzAddOnAfter||Ae.nzAddOnAfterIcon)}}function V(Re,ct){}function K(Re,ct){if(1&Re&&n.YNc(0,V,0,0,"ng-template",9),2&Re){n.oxw(2);const Ae=n.MAs(4);n.Q6J("ngTemplateOutlet",Ae)}}function te(Re,ct){if(1&Re&&n.YNc(0,K,1,1,"ng-template",10),2&Re){const Ae=n.oxw(),Mt=n.MAs(6);n.Q6J("ngIf",Ae.isAffix)("ngIfElse",Mt)}}function ne(Re,ct){if(1&Re&&n._UZ(0,"span",13),2&Re){const Ae=n.oxw(2);n.Q6J("icon",Ae.nzPrefixIcon)("template",Ae.nzPrefix)}}function fe(Re,ct){}function re(Re,ct){if(1&Re&&n._UZ(0,"nz-form-item-feedback-icon",16),2&Re){const Ae=n.oxw(3);n.Q6J("status",Ae.status)}}function be(Re,ct){if(1&Re&&(n.TgZ(0,"span",14),n.YNc(1,re,1,1,"nz-form-item-feedback-icon",15),n.qZA()),2&Re){const Ae=n.oxw(2);n.Q6J("icon",Ae.nzSuffixIcon)("template",Ae.nzSuffix),n.xp6(1),n.Q6J("ngIf",Ae.isFeedback)}}function le(Re,ct){if(1&Re&&(n.YNc(0,ne,1,2,"span",11),n.YNc(1,fe,0,0,"ng-template",9),n.YNc(2,be,2,3,"span",12)),2&Re){const Ae=n.oxw(),Mt=n.MAs(6);n.Q6J("ngIf",Ae.nzPrefix||Ae.nzPrefixIcon),n.xp6(1),n.Q6J("ngTemplateOutlet",Mt),n.xp6(1),n.Q6J("ngIf",Ae.nzSuffix||Ae.nzSuffixIcon||Ae.isFeedback)}}function ce(Re,ct){if(1&Re&&(n.TgZ(0,"span",18),n._UZ(1,"nz-form-item-feedback-icon",16),n.qZA()),2&Re){const Ae=n.oxw(2);n.xp6(1),n.Q6J("status",Ae.status)}}function Q(Re,ct){if(1&Re&&(n.Hsn(0),n.YNc(1,ce,2,1,"span",17)),2&Re){const Ae=n.oxw();n.xp6(1),n.Q6J("ngIf",!Ae.isAddOn&&!Ae.isAffix&&Ae.isFeedback)}}const ie=[[["textarea","nz-input",""]]],ae=["textarea[nz-input]"];let xe=(()=>{class Re{get disabled(){return this.ngControl&&null!==this.ngControl.disabled?this.ngControl.disabled:this._disabled}set disabled(Ae){this._disabled=null!=Ae&&"false"!=`${Ae}`}constructor(Ae,Mt,je,ot,mt,we,de){this.ngControl=Ae,this.renderer=Mt,this.elementRef=je,this.hostView=ot,this.directionality=mt,this.nzFormStatusService=we,this.nzFormNoStatusService=de,this.nzBorderless=!1,this.nzSize="default",this.nzStepperless=!0,this.nzStatus="",this._disabled=!1,this.disabled$=new t.x,this.dir="ltr",this.prefixCls="ant-input",this.status="",this.statusCls={},this.hasFeedback=!1,this.feedbackRef=null,this.components=[],this.destroy$=new t.x}ngOnInit(){this.nzFormStatusService?.formStatusChanges.pipe((0,C.x)((Ae,Mt)=>Ae.status===Mt.status&&Ae.hasFeedback===Mt.hasFeedback),(0,E.R)(this.destroy$)).subscribe(({status:Ae,hasFeedback:Mt})=>{this.setStatusStyles(Ae,Mt)}),this.ngControl&&this.ngControl.statusChanges?.pipe((0,u.h)(()=>null!==this.ngControl.disabled),(0,E.R)(this.destroy$)).subscribe(()=>{this.disabled$.next(this.ngControl.disabled)}),this.dir=this.directionality.value,this.directionality.change?.pipe((0,E.R)(this.destroy$)).subscribe(Ae=>{this.dir=Ae})}ngOnChanges(Ae){const{disabled:Mt,nzStatus:je}=Ae;Mt&&this.disabled$.next(this.disabled),je&&this.setStatusStyles(this.nzStatus,this.hasFeedback)}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}setStatusStyles(Ae,Mt){this.status=Ae,this.hasFeedback=Mt,this.renderFeedbackIcon(),this.statusCls=(0,d.Zu)(this.prefixCls,Ae,Mt),Object.keys(this.statusCls).forEach(je=>{this.statusCls[je]?this.renderer.addClass(this.elementRef.nativeElement,je):this.renderer.removeClass(this.elementRef.nativeElement,je)})}renderFeedbackIcon(){if(!this.status||!this.hasFeedback||this.nzFormNoStatusService)return this.hostView.clear(),void(this.feedbackRef=null);this.feedbackRef=this.feedbackRef||this.hostView.createComponent(g.w_),this.feedbackRef.location.nativeElement.classList.add("ant-input-suffix"),this.feedbackRef.instance.status=this.status,this.feedbackRef.instance.updateIcon()}static#e=this.\u0275fac=function(Mt){return new(Mt||Re)(n.Y36(p.a5,10),n.Y36(n.Qsj),n.Y36(n.SBq),n.Y36(n.s_b),n.Y36(f.Is,8),n.Y36(g.kH,8),n.Y36(g.yW,8))};static#t=this.\u0275dir=n.lG2({type:Re,selectors:[["input","nz-input",""],["textarea","nz-input",""]],hostAttrs:[1,"ant-input"],hostVars:13,hostBindings:function(Mt,je){2&Mt&&(n.uIk("disabled",je.disabled||null),n.ekj("ant-input-disabled",je.disabled)("ant-input-borderless",je.nzBorderless)("ant-input-lg","large"===je.nzSize)("ant-input-sm","small"===je.nzSize)("ant-input-rtl","rtl"===je.dir)("ant-input-stepperless",je.nzStepperless))},inputs:{nzBorderless:"nzBorderless",nzSize:"nzSize",nzStepperless:"nzStepperless",nzStatus:"nzStatus",disabled:"disabled"},exportAs:["nzInput"],features:[n.TTD]})}return(0,e.gn)([(0,d.yF)()],Re.prototype,"nzBorderless",void 0),(0,e.gn)([(0,d.yF)()],Re.prototype,"nzStepperless",void 0),Re})(),Me=(()=>{class Re{constructor(){this.icon=null,this.type=null,this.template=null}static#e=this.\u0275fac=function(Mt){return new(Mt||Re)};static#t=this.\u0275cmp=n.Xpm({type:Re,selectors:[["","nz-input-group-slot",""]],hostVars:6,hostBindings:function(Mt,je){2&Mt&&n.ekj("ant-input-group-addon","addon"===je.type)("ant-input-prefix","prefix"===je.type)("ant-input-suffix","suffix"===je.type)},inputs:{icon:"icon",type:"type",template:"template"},attrs:S,ngContentSelectors:R,decls:3,vars:2,consts:[["nz-icon","",3,"nzType",4,"ngIf"],[4,"nzStringTemplateOutlet"],["nz-icon","",3,"nzType"]],template:function(Mt,je){1&Mt&&(n.F$t(),n.YNc(0,A,1,1,"span",0),n.YNc(1,k,2,1,"ng-container",1),n.Hsn(2)),2&Mt&&(n.Q6J("ngIf",je.icon),n.xp6(1),n.Q6J("nzStringTemplateOutlet",je.template))},dependencies:[T.O5,x.Ls,D.f],encapsulation:2,changeDetection:0})}return Re})(),Ye=(()=>{class Re{constructor(Ae){this.elementRef=Ae}static#e=this.\u0275fac=function(Mt){return new(Mt||Re)(n.Y36(n.SBq))};static#t=this.\u0275dir=n.lG2({type:Re,selectors:[["nz-input-group","nzSuffix",""],["nz-input-group","nzPrefix",""]]})}return Re})(),q=(()=>{class Re{constructor(Ae,Mt,je,ot,mt,we,de){this.focusMonitor=Ae,this.elementRef=Mt,this.renderer=je,this.cdr=ot,this.directionality=mt,this.nzFormStatusService=we,this.nzFormNoStatusService=de,this.nzAddOnBeforeIcon=null,this.nzAddOnAfterIcon=null,this.nzPrefixIcon=null,this.nzSuffixIcon=null,this.nzStatus="",this.nzSize="default",this.nzSearch=!1,this.nzCompact=!1,this.isLarge=!1,this.isSmall=!1,this.isAffix=!1,this.isAddOn=!1,this.isFeedback=!1,this.focused=!1,this.disabled=!1,this.dir="ltr",this.prefixCls="ant-input",this.affixStatusCls={},this.groupStatusCls={},this.affixInGroupStatusCls={},this.status="",this.hasFeedback=!1,this.destroy$=new t.x}updateChildrenInputSize(){this.listOfNzInputDirective&&this.listOfNzInputDirective.forEach(Ae=>Ae.nzSize=this.nzSize)}ngOnInit(){this.nzFormStatusService?.formStatusChanges.pipe((0,C.x)((Ae,Mt)=>Ae.status===Mt.status&&Ae.hasFeedback===Mt.hasFeedback),(0,E.R)(this.destroy$)).subscribe(({status:Ae,hasFeedback:Mt})=>{this.setStatusStyles(Ae,Mt)}),this.focusMonitor.monitor(this.elementRef,!0).pipe((0,E.R)(this.destroy$)).subscribe(Ae=>{this.focused=!!Ae,this.cdr.markForCheck()}),this.dir=this.directionality.value,this.directionality.change?.pipe((0,E.R)(this.destroy$)).subscribe(Ae=>{this.dir=Ae})}ngAfterContentInit(){this.updateChildrenInputSize();const Ae=this.listOfNzInputDirective.changes.pipe((0,z.O)(this.listOfNzInputDirective));Ae.pipe((0,M.w)(Mt=>(0,i.T)(Ae,...Mt.map(je=>je.disabled$))),(0,h.z)(()=>Ae),(0,v.U)(Mt=>Mt.some(je=>je.disabled)),(0,E.R)(this.destroy$)).subscribe(Mt=>{this.disabled=Mt,this.cdr.markForCheck()})}ngOnChanges(Ae){const{nzSize:Mt,nzSuffix:je,nzPrefix:ot,nzPrefixIcon:mt,nzSuffixIcon:we,nzAddOnAfter:de,nzAddOnBefore:U,nzAddOnAfterIcon:B,nzAddOnBeforeIcon:Ee,nzStatus:Ie}=Ae;Mt&&(this.updateChildrenInputSize(),this.isLarge="large"===this.nzSize,this.isSmall="small"===this.nzSize),(je||ot||mt||we)&&(this.isAffix=!!(this.nzSuffix||this.nzPrefix||this.nzPrefixIcon||this.nzSuffixIcon)),(de||U||B||Ee)&&(this.isAddOn=!!(this.nzAddOnAfter||this.nzAddOnBefore||this.nzAddOnAfterIcon||this.nzAddOnBeforeIcon),this.nzFormNoStatusService?.noFormStatus?.next(this.isAddOn)),Ie&&this.setStatusStyles(this.nzStatus,this.hasFeedback)}ngOnDestroy(){this.focusMonitor.stopMonitoring(this.elementRef),this.destroy$.next(),this.destroy$.complete()}setStatusStyles(Ae,Mt){this.status=Ae,this.hasFeedback=Mt,this.isFeedback=!!Ae&&Mt,this.isAffix=!!(this.nzSuffix||this.nzPrefix||this.nzPrefixIcon||this.nzSuffixIcon)||!this.isAddOn&&Mt,this.affixInGroupStatusCls=this.isAffix||this.isFeedback?this.affixStatusCls=(0,d.Zu)(`${this.prefixCls}-affix-wrapper`,Ae,Mt):{},this.cdr.markForCheck(),this.affixStatusCls=(0,d.Zu)(`${this.prefixCls}-affix-wrapper`,this.isAddOn?"":Ae,!this.isAddOn&&Mt),this.groupStatusCls=(0,d.Zu)(`${this.prefixCls}-group-wrapper`,this.isAddOn?Ae:"",!!this.isAddOn&&Mt);const ot={...this.affixStatusCls,...this.groupStatusCls};Object.keys(ot).forEach(mt=>{ot[mt]?this.renderer.addClass(this.elementRef.nativeElement,mt):this.renderer.removeClass(this.elementRef.nativeElement,mt)})}static#e=this.\u0275fac=function(Mt){return new(Mt||Re)(n.Y36(y.tE),n.Y36(n.SBq),n.Y36(n.Qsj),n.Y36(n.sBO),n.Y36(f.Is,8),n.Y36(g.kH,8),n.Y36(g.yW,8))};static#t=this.\u0275cmp=n.Xpm({type:Re,selectors:[["nz-input-group"]],contentQueries:function(Mt,je,ot){if(1&Mt&&n.Suo(ot,xe,4),2&Mt){let mt;n.iGM(mt=n.CRH())&&(je.listOfNzInputDirective=mt)}},hostVars:40,hostBindings:function(Mt,je){2&Mt&&n.ekj("ant-input-group-compact",je.nzCompact)("ant-input-search-enter-button",je.nzSearch)("ant-input-search",je.nzSearch)("ant-input-search-rtl","rtl"===je.dir)("ant-input-search-sm",je.nzSearch&&je.isSmall)("ant-input-search-large",je.nzSearch&&je.isLarge)("ant-input-group-wrapper",je.isAddOn)("ant-input-group-wrapper-rtl","rtl"===je.dir)("ant-input-group-wrapper-lg",je.isAddOn&&je.isLarge)("ant-input-group-wrapper-sm",je.isAddOn&&je.isSmall)("ant-input-affix-wrapper",je.isAffix&&!je.isAddOn)("ant-input-affix-wrapper-rtl","rtl"===je.dir)("ant-input-affix-wrapper-focused",je.isAffix&&je.focused)("ant-input-affix-wrapper-disabled",je.isAffix&&je.disabled)("ant-input-affix-wrapper-lg",je.isAffix&&!je.isAddOn&&je.isLarge)("ant-input-affix-wrapper-sm",je.isAffix&&!je.isAddOn&&je.isSmall)("ant-input-group",!je.isAffix&&!je.isAddOn)("ant-input-group-rtl","rtl"===je.dir)("ant-input-group-lg",!je.isAffix&&!je.isAddOn&&je.isLarge)("ant-input-group-sm",!je.isAffix&&!je.isAddOn&&je.isSmall)},inputs:{nzAddOnBeforeIcon:"nzAddOnBeforeIcon",nzAddOnAfterIcon:"nzAddOnAfterIcon",nzPrefixIcon:"nzPrefixIcon",nzSuffixIcon:"nzSuffixIcon",nzAddOnBefore:"nzAddOnBefore",nzAddOnAfter:"nzAddOnAfter",nzPrefix:"nzPrefix",nzStatus:"nzStatus",nzSuffix:"nzSuffix",nzSize:"nzSize",nzSearch:"nzSearch",nzCompact:"nzCompact"},exportAs:["nzInputGroup"],features:[n._Bn([g.yW]),n.TTD],ngContentSelectors:R,decls:7,vars:2,consts:[["class","ant-input-wrapper ant-input-group",4,"ngIf","ngIfElse"],["noAddOnTemplate",""],["affixTemplate",""],["contentTemplate",""],[1,"ant-input-wrapper","ant-input-group"],["nz-input-group-slot","","type","addon",3,"icon","template",4,"ngIf"],["class","ant-input-affix-wrapper",3,"ant-input-affix-wrapper-disabled","ant-input-affix-wrapper-sm","ant-input-affix-wrapper-lg","ant-input-affix-wrapper-focused","ngClass",4,"ngIf","ngIfElse"],["nz-input-group-slot","","type","addon",3,"icon","template"],[1,"ant-input-affix-wrapper",3,"ngClass"],[3,"ngTemplateOutlet"],[3,"ngIf","ngIfElse"],["nz-input-group-slot","","type","prefix",3,"icon","template",4,"ngIf"],["nz-input-group-slot","","type","suffix",3,"icon","template",4,"ngIf"],["nz-input-group-slot","","type","prefix",3,"icon","template"],["nz-input-group-slot","","type","suffix",3,"icon","template"],[3,"status",4,"ngIf"],[3,"status"],["nz-input-group-slot","","type","suffix",4,"ngIf"],["nz-input-group-slot","","type","suffix"]],template:function(Mt,je){if(1&Mt&&(n.F$t(),n.YNc(0,G,4,4,"span",0),n.YNc(1,te,1,2,"ng-template",null,1,n.W1O),n.YNc(3,le,3,3,"ng-template",null,2,n.W1O),n.YNc(5,Q,2,1,"ng-template",null,3,n.W1O)),2&Mt){const ot=n.MAs(2);n.Q6J("ngIf",je.isAddOn)("ngIfElse",ot)}},dependencies:[T.mk,T.O5,T.tP,g.w_,Me],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,d.yF)()],Re.prototype,"nzSearch",void 0),(0,e.gn)([(0,d.yF)()],Re.prototype,"nzCompact",void 0),Re})(),ve=(()=>{class Re{set nzAutosize(Ae){var je;"string"==typeof Ae||!0===Ae?this.autosize=!0:"string"!=typeof(je=Ae)&&"boolean"!=typeof je&&(je.maxRows||je.minRows)&&(this.autosize=!0,this.minRows=Ae.minRows,this.maxRows=Ae.maxRows,this.maxHeight=this.setMaxHeight(),this.minHeight=this.setMinHeight())}resizeToFitContent(Ae=!1){if(this.cacheTextareaLineHeight(),!this.cachedLineHeight)return;const Mt=this.el,je=Mt.value;if(!Ae&&this.minRows===this.previousMinRows&&je===this.previousValue)return;const ot=Mt.placeholder;Mt.classList.add("nz-textarea-autosize-measuring"),Mt.placeholder="";let mt=Math.round((Mt.scrollHeight-this.inputGap)/this.cachedLineHeight)*this.cachedLineHeight+this.inputGap;null!==this.maxHeight&&mt>this.maxHeight&&(mt=this.maxHeight),null!==this.minHeight&&mtrequestAnimationFrame(()=>{const{selectionStart:we,selectionEnd:de}=Mt;!this.destroy$.isStopped&&document.activeElement===Mt&&Mt.setSelectionRange(we,de)})),this.previousValue=je,this.previousMinRows=this.minRows}cacheTextareaLineHeight(){if(this.cachedLineHeight>=0||!this.el.parentNode)return;const Ae=this.el.cloneNode(!1);Ae.rows=1,Ae.style.position="absolute",Ae.style.visibility="hidden",Ae.style.border="none",Ae.style.padding="0",Ae.style.height="",Ae.style.minHeight="",Ae.style.maxHeight="",Ae.style.overflow="hidden",this.el.parentNode.appendChild(Ae),this.cachedLineHeight=Ae.clientHeight-this.inputGap,this.el.parentNode.removeChild(Ae),this.maxHeight=this.setMaxHeight(),this.minHeight=this.setMinHeight()}setMinHeight(){const Ae=this.minRows&&this.cachedLineHeight?this.minRows*this.cachedLineHeight+this.inputGap:null;return null!==Ae&&(this.el.style.minHeight=`${Ae}px`),Ae}setMaxHeight(){const Ae=this.maxRows&&this.cachedLineHeight?this.maxRows*this.cachedLineHeight+this.inputGap:null;return null!==Ae&&(this.el.style.maxHeight=`${Ae}px`),Ae}noopInputHandler(){}constructor(Ae,Mt,je,ot){this.elementRef=Ae,this.ngZone=Mt,this.platform=je,this.resizeService=ot,this.autosize=!1,this.el=this.elementRef.nativeElement,this.maxHeight=null,this.minHeight=null,this.destroy$=new t.x,this.inputGap=10}ngAfterViewInit(){this.autosize&&this.platform.isBrowser&&(this.resizeToFitContent(),this.resizeService.subscribe().pipe((0,E.R)(this.destroy$)).subscribe(()=>this.resizeToFitContent(!0)))}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}ngDoCheck(){this.autosize&&this.platform.isBrowser&&this.resizeToFitContent()}static#e=this.\u0275fac=function(Mt){return new(Mt||Re)(n.Y36(n.SBq),n.Y36(n.R0b),n.Y36(_.t4),n.Y36(P.rI))};static#t=this.\u0275dir=n.lG2({type:Re,selectors:[["textarea","nzAutosize",""]],hostAttrs:["rows","1"],hostBindings:function(Mt,je){1&Mt&&n.NdJ("input",function(){return je.noopInputHandler()})},inputs:{nzAutosize:"nzAutosize"},exportAs:["nzAutosize"]})}return Re})(),ee=(()=>{class Re{constructor(Ae,Mt){this.renderer=Ae,this.elementRef=Mt,this.nzMaxCharacterCount=0,this.nzComputeCharacterCount=je=>je.length,this.nzFormatter=(je,ot)=>`${je}${ot>0?`/${ot}`:""}`,this.configChange$=new t.x,this.destroy$=new t.x}ngAfterContentInit(){if(!this.nzInputDirective&&(0,n.X6Q)())throw new Error("[nz-textarea-count]: Could not find matching textarea[nz-input] child.");this.nzInputDirective.ngControl&&(0,i.T)(this.nzInputDirective.ngControl.valueChanges||l.E,this.configChange$).pipe((0,E.R)(this.destroy$),(0,v.U)(()=>this.nzInputDirective.ngControl.value),(0,z.O)(this.nzInputDirective.ngControl.value)).subscribe(Mt=>{this.setDataCount(Mt)})}setDataCount(Ae){const Mt=(0,d.DX)(Ae)?String(Ae):"",je=this.nzComputeCharacterCount(Mt),ot=this.nzFormatter(je,this.nzMaxCharacterCount);this.renderer.setAttribute(this.elementRef.nativeElement,"data-count",ot)}ngOnDestroy(){this.configChange$.complete(),this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(Mt){return new(Mt||Re)(n.Y36(n.Qsj),n.Y36(n.SBq))};static#t=this.\u0275cmp=n.Xpm({type:Re,selectors:[["nz-textarea-count"]],contentQueries:function(Mt,je,ot){if(1&Mt&&n.Suo(ot,xe,7),2&Mt){let mt;n.iGM(mt=n.CRH())&&(je.nzInputDirective=mt.first)}},hostAttrs:[1,"ant-input-textarea-show-count"],inputs:{nzMaxCharacterCount:"nzMaxCharacterCount",nzComputeCharacterCount:"nzComputeCharacterCount",nzFormatter:"nzFormatter"},ngContentSelectors:ae,decls:1,vars:0,template:function(Mt,je){1&Mt&&(n.F$t(ie),n.Hsn(0))},encapsulation:2,changeDetection:0})}return Re})(),Be=(()=>{class Re{static#e=this.\u0275fac=function(Mt){return new(Mt||Re)};static#t=this.\u0275mod=n.oAB({type:Re});static#n=this.\u0275inj=n.cJS({imports:[f.vT,T.ez,x.PV,_.ud,D.T,g.mJ]})}return Re})()},16976:(nt,I,o)=>{"use strict";o.d(I,{n_:()=>Ke,AA:()=>_e,yi:()=>qe,Ph:()=>b});var e=o(65879),n=o(96814),t=o(96928),i=o(8324),l=o(97582),C=o(27754),E=o(78645),u=o(74911),z=o(22096),M=o(63019),h=o(65592),v=o(65619),g=o(48180),d=o(37398),p=o(54829),f=o(79360),y=o(8251);function T(N,O){return O?j=>j.pipe(T((L,he)=>(0,p.Xf)(N(L,he)).pipe((0,d.U)((Ce,bt)=>O(L,Ce,he,bt))))):(0,f.e)((j,L)=>{let he=0,Ce=null,bt=!1;j.subscribe((0,y.x)(L,Ft=>{Ce||(Ce=(0,y.x)(L,void 0,()=>{Ce=null,bt&&L.complete()}),(0,p.Xf)(N(Ft,he++)).subscribe(Ce))},()=>{bt=!0,!Ce&&L.complete()}))})}var x=o(27921),D=o(59773),_=o(99087),P=o(60804),S=o(49388),A=o(77273),k=o(10095);const R=["*"];function $(N,O){if(1&N&&e._UZ(0,"nz-avatar",3),2&N){const j=e.oxw();e.Q6J("nzSrc",j.nzSrc)}}function W(N,O){1&N&&e.Hsn(0,0,["*ngIf","!nzSrc"])}function ze(N,O){if(1&N&&e._UZ(0,"nz-list-item-meta-avatar",3),2&N){const j=e.oxw();e.Q6J("nzSrc",j.avatarStr)}}function Y(N,O){if(1&N&&(e.TgZ(0,"nz-list-item-meta-avatar"),e.GkF(1,4),e.qZA()),2&N){const j=e.oxw();e.xp6(1),e.Q6J("ngTemplateOutlet",j.avatarTpl)}}function G(N,O){if(1&N&&(e.ynx(0),e._uU(1),e.BQk()),2&N){const j=e.oxw(3);e.xp6(1),e.Oqu(j.nzTitle)}}function V(N,O){if(1&N&&(e.TgZ(0,"nz-list-item-meta-title"),e.YNc(1,G,2,1,"ng-container",6),e.qZA()),2&N){const j=e.oxw(2);e.xp6(1),e.Q6J("nzStringTemplateOutlet",j.nzTitle)}}function K(N,O){if(1&N&&(e.ynx(0),e._uU(1),e.BQk()),2&N){const j=e.oxw(3);e.xp6(1),e.Oqu(j.nzDescription)}}function te(N,O){if(1&N&&(e.TgZ(0,"nz-list-item-meta-description"),e.YNc(1,K,2,1,"ng-container",6),e.qZA()),2&N){const j=e.oxw(2);e.xp6(1),e.Q6J("nzStringTemplateOutlet",j.nzDescription)}}function ne(N,O){if(1&N&&(e.TgZ(0,"div",5),e.YNc(1,V,2,1,"nz-list-item-meta-title",1),e.YNc(2,te,2,1,"nz-list-item-meta-description",1),e.Hsn(3,1),e.Hsn(4,2),e.qZA()),2&N){const j=e.oxw();e.xp6(1),e.Q6J("ngIf",j.nzTitle&&!j.titleComponent),e.xp6(1),e.Q6J("ngIf",j.nzDescription&&!j.descriptionComponent)}}const fe=[[["nz-list-item-meta-avatar"]],[["nz-list-item-meta-title"]],[["nz-list-item-meta-description"]]],re=["nz-list-item-meta-avatar","nz-list-item-meta-title","nz-list-item-meta-description"];function be(N,O){1&N&&e.Hsn(0)}const le=["nz-list-item-actions",""];function ce(N,O){}function Q(N,O){1&N&&e._UZ(0,"em",3)}function ie(N,O){if(1&N&&(e.TgZ(0,"li"),e.YNc(1,ce,0,0,"ng-template",1),e.YNc(2,Q,1,0,"em",2),e.qZA()),2&N){const j=O.$implicit,L=O.last;e.xp6(1),e.Q6J("ngTemplateOutlet",j),e.xp6(1),e.Q6J("ngIf",!L)}}function ae(N,O){}const xe=function(N,O){return{$implicit:N,index:O}};function Me(N,O){if(1&N&&(e.ynx(0),e.YNc(1,ae,0,0,"ng-template",9),e.BQk()),2&N){const j=O.$implicit,L=O.index,he=e.oxw(2);e.xp6(1),e.Q6J("ngTemplateOutlet",he.nzRenderItem)("ngTemplateOutletContext",e.WLB(2,xe,j,L))}}function Ye(N,O){if(1&N&&(e.TgZ(0,"div",7),e.YNc(1,Me,2,5,"ng-container",8),e.Hsn(2,4),e.qZA()),2&N){const j=e.oxw();e.xp6(1),e.Q6J("ngForOf",j.nzDataSource)}}function q(N,O){if(1&N&&(e.ynx(0),e._uU(1),e.BQk()),2&N){const j=e.oxw(2);e.xp6(1),e.Oqu(j.nzHeader)}}function ve(N,O){if(1&N&&(e.TgZ(0,"nz-list-header"),e.YNc(1,q,2,1,"ng-container",10),e.qZA()),2&N){const j=e.oxw();e.xp6(1),e.Q6J("nzStringTemplateOutlet",j.nzHeader)}}function ee(N,O){1&N&&e._UZ(0,"div"),2&N&&e.Udp("min-height",53,"px")}function Be(N,O){}function Re(N,O){if(1&N&&(e.TgZ(0,"div",13),e.YNc(1,Be,0,0,"ng-template",9),e.qZA()),2&N){const j=O.$implicit,L=O.index,he=e.oxw(2);e.Q6J("nzSpan",he.nzGrid.span||null)("nzXs",he.nzGrid.xs||null)("nzSm",he.nzGrid.sm||null)("nzMd",he.nzGrid.md||null)("nzLg",he.nzGrid.lg||null)("nzXl",he.nzGrid.xl||null)("nzXXl",he.nzGrid.xxl||null),e.xp6(1),e.Q6J("ngTemplateOutlet",he.nzRenderItem)("ngTemplateOutletContext",e.WLB(9,xe,j,L))}}function ct(N,O){if(1&N&&(e.TgZ(0,"div",11),e.YNc(1,Re,2,12,"div",12),e.qZA()),2&N){const j=e.oxw();e.Q6J("nzGutter",j.nzGrid.gutter||null),e.xp6(1),e.Q6J("ngForOf",j.nzDataSource)}}function Ae(N,O){if(1&N&&e._UZ(0,"nz-list-empty",14),2&N){const j=e.oxw();e.Q6J("nzNoResult",j.nzNoResult)}}function Mt(N,O){if(1&N&&(e.ynx(0),e._uU(1),e.BQk()),2&N){const j=e.oxw(2);e.xp6(1),e.Oqu(j.nzFooter)}}function je(N,O){if(1&N&&(e.TgZ(0,"nz-list-footer"),e.YNc(1,Mt,2,1,"ng-container",10),e.qZA()),2&N){const j=e.oxw();e.xp6(1),e.Q6J("nzStringTemplateOutlet",j.nzFooter)}}function ot(N,O){}function mt(N,O){}function we(N,O){if(1&N&&(e.TgZ(0,"nz-list-pagination"),e.YNc(1,mt,0,0,"ng-template",6),e.qZA()),2&N){const j=e.oxw();e.xp6(1),e.Q6J("ngTemplateOutlet",j.nzPagination)}}const de=[[["nz-list-header"]],[["nz-list-footer"],["","nz-list-footer",""]],[["nz-list-load-more"],["","nz-list-load-more",""]],[["nz-list-pagination"],["","nz-list-pagination",""]],"*"],U=["nz-list-header","nz-list-footer, [nz-list-footer]","nz-list-load-more, [nz-list-load-more]","nz-list-pagination, [nz-list-pagination]","*"];function B(N,O){if(1&N&&e._UZ(0,"ul",6),2&N){const j=e.oxw(2);e.Q6J("nzActions",j.nzActions)}}function Ee(N,O){if(1&N&&(e.YNc(0,B,1,1,"ul",5),e.Hsn(1)),2&N){const j=e.oxw();e.Q6J("ngIf",j.nzActions&&j.nzActions.length>0)}}function Ie(N,O){if(1&N&&(e.ynx(0),e._uU(1),e.BQk()),2&N){const j=e.oxw(3);e.xp6(1),e.Oqu(j.nzContent)}}function Ne(N,O){if(1&N&&(e.ynx(0),e.YNc(1,Ie,2,1,"ng-container",8),e.BQk()),2&N){const j=e.oxw(2);e.xp6(1),e.Q6J("nzStringTemplateOutlet",j.nzContent)}}function pt(N,O){if(1&N&&(e.Hsn(0,1),e.Hsn(1,2),e.YNc(2,Ne,2,1,"ng-container",7)),2&N){const j=e.oxw();e.xp6(2),e.Q6J("ngIf",j.nzContent)}}function Dt(N,O){1&N&&e.Hsn(0,3)}function Lt(N,O){}function Ut(N,O){}function qt(N,O){}function en(N,O){}function cn(N,O){if(1&N&&(e.YNc(0,Lt,0,0,"ng-template",9),e.YNc(1,Ut,0,0,"ng-template",9),e.YNc(2,qt,0,0,"ng-template",9),e.YNc(3,en,0,0,"ng-template",9)),2&N){const j=e.oxw(),L=e.MAs(3),he=e.MAs(5),Ce=e.MAs(1);e.Q6J("ngTemplateOutlet",L),e.xp6(1),e.Q6J("ngTemplateOutlet",j.nzExtra),e.xp6(1),e.Q6J("ngTemplateOutlet",he),e.xp6(1),e.Q6J("ngTemplateOutlet",Ce)}}function Wt(N,O){}function Vt(N,O){}function st(N,O){}function He(N,O){if(1&N&&(e.TgZ(0,"nz-list-item-extra"),e.YNc(1,st,0,0,"ng-template",9),e.qZA()),2&N){const j=e.oxw(2);e.xp6(1),e.Q6J("ngTemplateOutlet",j.nzExtra)}}function et(N,O){}function It(N,O){if(1&N&&(e.ynx(0),e.TgZ(1,"div",10),e.YNc(2,Wt,0,0,"ng-template",9),e.YNc(3,Vt,0,0,"ng-template",9),e.qZA(),e.YNc(4,He,2,1,"nz-list-item-extra",7),e.YNc(5,et,0,0,"ng-template",9),e.BQk()),2&N){const j=e.oxw(),L=e.MAs(3),he=e.MAs(1),Ce=e.MAs(5);e.xp6(2),e.Q6J("ngTemplateOutlet",L),e.xp6(1),e.Q6J("ngTemplateOutlet",he),e.xp6(1),e.Q6J("ngIf",j.nzExtra),e.xp6(1),e.Q6J("ngTemplateOutlet",Ce)}}const Ot=[[["nz-list-item-actions"],["","nz-list-item-actions",""]],[["nz-list-item-meta"],["","nz-list-item-meta",""]],"*",[["nz-list-item-extra"],["","nz-list-item-extra",""]]],xt=["nz-list-item-actions, [nz-list-item-actions]","nz-list-item-meta, [nz-list-item-meta]","*","nz-list-item-extra, [nz-list-item-extra]"];let Qe=(()=>{class N{static#e=this.\u0275fac=function(L){return new(L||N)};static#t=this.\u0275cmp=e.Xpm({type:N,selectors:[["nz-list-item-meta-title"]],exportAs:["nzListItemMetaTitle"],ngContentSelectors:R,decls:2,vars:0,consts:[[1,"ant-list-item-meta-title"]],template:function(L,he){1&L&&(e.F$t(),e.TgZ(0,"h4",0),e.Hsn(1),e.qZA())},encapsulation:2,changeDetection:0})}return N})(),ke=(()=>{class N{static#e=this.\u0275fac=function(L){return new(L||N)};static#t=this.\u0275cmp=e.Xpm({type:N,selectors:[["nz-list-item-meta-description"]],exportAs:["nzListItemMetaDescription"],ngContentSelectors:R,decls:2,vars:0,consts:[[1,"ant-list-item-meta-description"]],template:function(L,he){1&L&&(e.F$t(),e.TgZ(0,"div",0),e.Hsn(1),e.qZA())},encapsulation:2,changeDetection:0})}return N})(),pe=(()=>{class N{static#e=this.\u0275fac=function(L){return new(L||N)};static#t=this.\u0275cmp=e.Xpm({type:N,selectors:[["nz-list-item-meta-avatar"]],inputs:{nzSrc:"nzSrc"},exportAs:["nzListItemMetaAvatar"],ngContentSelectors:R,decls:3,vars:2,consts:[[1,"ant-list-item-meta-avatar"],[3,"nzSrc",4,"ngIf"],[4,"ngIf"],[3,"nzSrc"]],template:function(L,he){1&L&&(e.F$t(),e.TgZ(0,"div",0),e.YNc(1,$,1,1,"nz-avatar",1),e.YNc(2,W,1,0,"ng-content",2),e.qZA()),2&L&&(e.xp6(1),e.Q6J("ngIf",he.nzSrc),e.xp6(1),e.Q6J("ngIf",!he.nzSrc))},dependencies:[n.O5,t.Dz],encapsulation:2,changeDetection:0})}return N})(),qe=(()=>{class N{set nzAvatar(j){j instanceof e.Rgc?(this.avatarStr="",this.avatarTpl=j):this.avatarStr=j}constructor(j){this.elementRef=j,this.avatarStr=""}static#e=this.\u0275fac=function(L){return new(L||N)(e.Y36(e.SBq))};static#t=this.\u0275cmp=e.Xpm({type:N,selectors:[["nz-list-item-meta"],["","nz-list-item-meta",""]],contentQueries:function(L,he,Ce){if(1&L&&(e.Suo(Ce,ke,5),e.Suo(Ce,Qe,5)),2&L){let bt;e.iGM(bt=e.CRH())&&(he.descriptionComponent=bt.first),e.iGM(bt=e.CRH())&&(he.titleComponent=bt.first)}},hostAttrs:[1,"ant-list-item-meta"],inputs:{nzAvatar:"nzAvatar",nzTitle:"nzTitle",nzDescription:"nzDescription"},exportAs:["nzListItemMeta"],ngContentSelectors:re,decls:4,vars:3,consts:[[3,"nzSrc",4,"ngIf"],[4,"ngIf"],["class","ant-list-item-meta-content",4,"ngIf"],[3,"nzSrc"],[3,"ngTemplateOutlet"],[1,"ant-list-item-meta-content"],[4,"nzStringTemplateOutlet"]],template:function(L,he){1&L&&(e.F$t(fe),e.YNc(0,ze,1,1,"nz-list-item-meta-avatar",0),e.YNc(1,Y,2,1,"nz-list-item-meta-avatar",1),e.Hsn(2),e.YNc(3,ne,5,2,"div",2)),2&L&&(e.Q6J("ngIf",he.avatarStr),e.xp6(1),e.Q6J("ngIf",he.avatarTpl),e.xp6(2),e.Q6J("ngIf",he.nzTitle||he.nzDescription||he.descriptionComponent||he.titleComponent))},dependencies:[n.O5,n.tP,i.f,Qe,ke,pe],encapsulation:2,changeDetection:0})}return N})(),ge=(()=>{class N{static#e=this.\u0275fac=function(L){return new(L||N)};static#t=this.\u0275cmp=e.Xpm({type:N,selectors:[["nz-list-item-extra"],["","nz-list-item-extra",""]],hostAttrs:[1,"ant-list-item-extra"],exportAs:["nzListItemExtra"],ngContentSelectors:R,decls:1,vars:0,template:function(L,he){1&L&&(e.F$t(),e.Hsn(0))},encapsulation:2,changeDetection:0})}return N})(),Ze=(()=>{class N{static#e=this.\u0275fac=function(L){return new(L||N)};static#t=this.\u0275cmp=e.Xpm({type:N,selectors:[["nz-list-item-action"]],viewQuery:function(L,he){if(1&L&&e.Gf(e.Rgc,5),2&L){let Ce;e.iGM(Ce=e.CRH())&&(he.templateRef=Ce.first)}},exportAs:["nzListItemAction"],ngContentSelectors:R,decls:1,vars:0,template:function(L,he){1&L&&(e.F$t(),e.YNc(0,be,1,0,"ng-template"))},encapsulation:2,changeDetection:0})}return N})(),$e=(()=>{class N{constructor(j,L,he){this.ngZone=j,this.nzActions=[],this.actions=[],this.inputActionChanges$=new E.x,this.contentChildrenChanges$=(0,u.P)(()=>this.nzListItemActions?(0,z.of)(null):this.ngZone.onStable.pipe((0,g.q)(1),this.enterZone(),T(()=>this.nzListItemActions.changes.pipe((0,x.O)(this.nzListItemActions))))),(0,M.T)(this.contentChildrenChanges$,this.inputActionChanges$).pipe((0,D.R)(he)).subscribe(()=>{this.actions=this.nzActions.length?this.nzActions:this.nzListItemActions.map(Ce=>Ce.templateRef),L.detectChanges()})}ngOnChanges(){this.inputActionChanges$.next(null)}enterZone(){return j=>new h.y(L=>j.subscribe({next:he=>this.ngZone.run(()=>L.next(he))}))}static#e=this.\u0275fac=function(L){return new(L||N)(e.Y36(e.R0b),e.Y36(e.sBO),e.Y36(_.kn))};static#t=this.\u0275cmp=e.Xpm({type:N,selectors:[["ul","nz-list-item-actions",""]],contentQueries:function(L,he,Ce){if(1&L&&e.Suo(Ce,Ze,4),2&L){let bt;e.iGM(bt=e.CRH())&&(he.nzListItemActions=bt)}},hostAttrs:[1,"ant-list-item-action"],inputs:{nzActions:"nzActions"},exportAs:["nzListItemActions"],features:[e._Bn([_.kn]),e.TTD],attrs:le,decls:1,vars:1,consts:[[4,"ngFor","ngForOf"],[3,"ngTemplateOutlet"],["class","ant-list-item-action-split",4,"ngIf"],[1,"ant-list-item-action-split"]],template:function(L,he){1&L&&e.YNc(0,ie,3,2,"li",0),2&L&&e.Q6J("ngForOf",he.actions)},dependencies:[n.sg,n.O5,n.tP],encapsulation:2,changeDetection:0})}return N})(),Ue=(()=>{class N{static#e=this.\u0275fac=function(L){return new(L||N)};static#t=this.\u0275cmp=e.Xpm({type:N,selectors:[["nz-list-empty"]],hostAttrs:[1,"ant-list-empty-text"],inputs:{nzNoResult:"nzNoResult"},exportAs:["nzListHeader"],decls:1,vars:2,consts:[[3,"nzComponentName","specificContent"]],template:function(L,he){1&L&&e._UZ(0,"nz-embed-empty",0),2&L&&e.Q6J("nzComponentName","list")("specificContent",he.nzNoResult)},dependencies:[P.gB],encapsulation:2,changeDetection:0})}return N})(),wt=(()=>{class N{static#e=this.\u0275fac=function(L){return new(L||N)};static#t=this.\u0275cmp=e.Xpm({type:N,selectors:[["nz-list-header"]],hostAttrs:[1,"ant-list-header"],exportAs:["nzListHeader"],ngContentSelectors:R,decls:1,vars:0,template:function(L,he){1&L&&(e.F$t(),e.Hsn(0))},encapsulation:2,changeDetection:0})}return N})(),De=(()=>{class N{static#e=this.\u0275fac=function(L){return new(L||N)};static#t=this.\u0275cmp=e.Xpm({type:N,selectors:[["nz-list-footer"]],hostAttrs:[1,"ant-list-footer"],exportAs:["nzListFooter"],ngContentSelectors:R,decls:1,vars:0,template:function(L,he){1&L&&(e.F$t(),e.Hsn(0))},encapsulation:2,changeDetection:0})}return N})(),Pe=(()=>{class N{static#e=this.\u0275fac=function(L){return new(L||N)};static#t=this.\u0275cmp=e.Xpm({type:N,selectors:[["nz-list-pagination"]],hostAttrs:[1,"ant-list-pagination"],exportAs:["nzListPagination"],ngContentSelectors:R,decls:1,vars:0,template:function(L,he){1&L&&(e.F$t(),e.Hsn(0))},encapsulation:2,changeDetection:0})}return N})(),Je=(()=>{class N{static#e=this.\u0275fac=function(L){return new(L||N)};static#t=this.\u0275dir=e.lG2({type:N,selectors:[["nz-list-load-more"]],exportAs:["nzListLoadMoreDirective"]})}return N})(),Ke=(()=>{class N{get itemLayoutNotify$(){return this.itemLayoutNotifySource.asObservable()}constructor(j){this.directionality=j,this.nzBordered=!1,this.nzGrid="",this.nzItemLayout="horizontal",this.nzRenderItem=null,this.nzLoading=!1,this.nzLoadMore=null,this.nzSize="default",this.nzSplit=!0,this.hasSomethingAfterLastItem=!1,this.dir="ltr",this.itemLayoutNotifySource=new v.X(this.nzItemLayout),this.destroy$=new E.x}ngOnInit(){this.dir=this.directionality.value,this.directionality.change?.pipe((0,D.R)(this.destroy$)).subscribe(j=>{this.dir=j})}getSomethingAfterLastItem(){return!!(this.nzLoadMore||this.nzPagination||this.nzFooter||this.nzListFooterComponent||this.nzListPaginationComponent||this.nzListLoadMoreDirective)}ngOnChanges(j){j.nzItemLayout&&this.itemLayoutNotifySource.next(this.nzItemLayout)}ngOnDestroy(){this.itemLayoutNotifySource.unsubscribe(),this.destroy$.next(),this.destroy$.complete()}ngAfterContentInit(){this.hasSomethingAfterLastItem=this.getSomethingAfterLastItem()}static#e=this.\u0275fac=function(L){return new(L||N)(e.Y36(S.Is,8))};static#t=this.\u0275cmp=e.Xpm({type:N,selectors:[["nz-list"],["","nz-list",""]],contentQueries:function(L,he,Ce){if(1&L&&(e.Suo(Ce,De,5),e.Suo(Ce,Pe,5),e.Suo(Ce,Je,5)),2&L){let bt;e.iGM(bt=e.CRH())&&(he.nzListFooterComponent=bt.first),e.iGM(bt=e.CRH())&&(he.nzListPaginationComponent=bt.first),e.iGM(bt=e.CRH())&&(he.nzListLoadMoreDirective=bt.first)}},hostAttrs:[1,"ant-list"],hostVars:16,hostBindings:function(L,he){2&L&&e.ekj("ant-list-rtl","rtl"===he.dir)("ant-list-vertical","vertical"===he.nzItemLayout)("ant-list-lg","large"===he.nzSize)("ant-list-sm","small"===he.nzSize)("ant-list-split",he.nzSplit)("ant-list-bordered",he.nzBordered)("ant-list-loading",he.nzLoading)("ant-list-something-after-last-item",he.hasSomethingAfterLastItem)},inputs:{nzDataSource:"nzDataSource",nzBordered:"nzBordered",nzGrid:"nzGrid",nzHeader:"nzHeader",nzFooter:"nzFooter",nzItemLayout:"nzItemLayout",nzRenderItem:"nzRenderItem",nzLoading:"nzLoading",nzLoadMore:"nzLoadMore",nzPagination:"nzPagination",nzSize:"nzSize",nzSplit:"nzSplit",nzNoResult:"nzNoResult"},exportAs:["nzList"],features:[e.TTD],ngContentSelectors:U,decls:15,vars:9,consts:[["itemsTpl",""],[4,"ngIf"],[3,"nzSpinning"],[3,"min-height",4,"ngIf"],["nz-row","",3,"nzGutter",4,"ngIf","ngIfElse"],[3,"nzNoResult",4,"ngIf"],[3,"ngTemplateOutlet"],[1,"ant-list-items"],[4,"ngFor","ngForOf"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[4,"nzStringTemplateOutlet"],["nz-row","",3,"nzGutter"],["nz-col","",3,"nzSpan","nzXs","nzSm","nzMd","nzLg","nzXl","nzXXl",4,"ngFor","ngForOf"],["nz-col","",3,"nzSpan","nzXs","nzSm","nzMd","nzLg","nzXl","nzXXl"],[3,"nzNoResult"]],template:function(L,he){if(1&L&&(e.F$t(de),e.YNc(0,Ye,3,1,"ng-template",null,0,e.W1O),e.YNc(2,ve,2,1,"nz-list-header",1),e.Hsn(3),e.TgZ(4,"nz-spin",2),e.ynx(5),e.YNc(6,ee,1,2,"div",3),e.YNc(7,ct,2,2,"div",4),e.YNc(8,Ae,1,1,"nz-list-empty",5),e.BQk(),e.qZA(),e.YNc(9,je,2,1,"nz-list-footer",1),e.Hsn(10,1),e.YNc(11,ot,0,0,"ng-template",6),e.Hsn(12,2),e.YNc(13,we,2,1,"nz-list-pagination",1),e.Hsn(14,3)),2&L){const Ce=e.MAs(1);e.xp6(2),e.Q6J("ngIf",he.nzHeader),e.xp6(2),e.Q6J("nzSpinning",he.nzLoading),e.xp6(2),e.Q6J("ngIf",he.nzLoading&&he.nzDataSource&&0===he.nzDataSource.length),e.xp6(1),e.Q6J("ngIf",he.nzGrid&&he.nzDataSource)("ngIfElse",Ce),e.xp6(1),e.Q6J("ngIf",!he.nzLoading&&he.nzDataSource&&0===he.nzDataSource.length),e.xp6(1),e.Q6J("ngIf",he.nzFooter),e.xp6(2),e.Q6J("ngTemplateOutlet",he.nzLoadMore),e.xp6(2),e.Q6J("ngIf",he.nzPagination)}},dependencies:[n.sg,n.O5,n.tP,A.W,k.t3,k.SK,i.f,wt,De,Pe,Ue],encapsulation:2,changeDetection:0})}return(0,l.gn)([(0,C.yF)()],N.prototype,"nzBordered",void 0),(0,l.gn)([(0,C.yF)()],N.prototype,"nzLoading",void 0),(0,l.gn)([(0,C.yF)()],N.prototype,"nzSplit",void 0),N})(),_e=(()=>{class N{get isVerticalAndExtra(){return!("vertical"!==this.itemLayout||!this.listItemExtraDirective&&!this.nzExtra)}constructor(j,L){this.parentComp=j,this.cdr=L,this.nzActions=[],this.nzExtra=null,this.nzNoFlex=!1}ngAfterViewInit(){this.itemLayout$=this.parentComp.itemLayoutNotify$.subscribe(j=>{this.itemLayout=j,this.cdr.detectChanges()})}ngOnDestroy(){this.itemLayout$&&this.itemLayout$.unsubscribe()}static#e=this.\u0275fac=function(L){return new(L||N)(e.Y36(Ke),e.Y36(e.sBO))};static#t=this.\u0275cmp=e.Xpm({type:N,selectors:[["nz-list-item"],["","nz-list-item",""]],contentQueries:function(L,he,Ce){if(1&L&&e.Suo(Ce,ge,5),2&L){let bt;e.iGM(bt=e.CRH())&&(he.listItemExtraDirective=bt.first)}},hostAttrs:[1,"ant-list-item"],hostVars:2,hostBindings:function(L,he){2&L&&e.ekj("ant-list-item-no-flex",he.nzNoFlex)},inputs:{nzActions:"nzActions",nzContent:"nzContent",nzExtra:"nzExtra",nzNoFlex:"nzNoFlex"},exportAs:["nzListItem"],ngContentSelectors:xt,decls:9,vars:2,consts:[["actionsTpl",""],["contentTpl",""],["extraTpl",""],["simpleTpl",""],[4,"ngIf","ngIfElse"],["nz-list-item-actions","",3,"nzActions",4,"ngIf"],["nz-list-item-actions","",3,"nzActions"],[4,"ngIf"],[4,"nzStringTemplateOutlet"],[3,"ngTemplateOutlet"],[1,"ant-list-item-main"]],template:function(L,he){if(1&L&&(e.F$t(Ot),e.YNc(0,Ee,2,1,"ng-template",null,0,e.W1O),e.YNc(2,pt,3,1,"ng-template",null,1,e.W1O),e.YNc(4,Dt,1,0,"ng-template",null,2,e.W1O),e.YNc(6,cn,4,4,"ng-template",null,3,e.W1O),e.YNc(8,It,6,4,"ng-container",4)),2&L){const Ce=e.MAs(7);e.xp6(8),e.Q6J("ngIf",he.isVerticalAndExtra)("ngIfElse",Ce)}},dependencies:[n.O5,n.tP,i.f,$e,ge],encapsulation:2,changeDetection:0})}return(0,l.gn)([(0,C.yF)()],N.prototype,"nzNoFlex",void 0),N})(),b=(()=>{class N{static#e=this.\u0275fac=function(L){return new(L||N)};static#t=this.\u0275mod=e.oAB({type:N});static#n=this.\u0275inj=e.cJS({imports:[S.vT,n.ez,A.j,k.Jb,t.Rt,i.T,P.Xo]})}return N})()},36513:(nt,I,o)=>{"use strict";o.d(I,{Gl:()=>Ye,YW:()=>xe,jO:()=>ae});var e=o(49388),n=o(33651),t=o(96814),i=o(65879),l=o(60095),C=o(50883),E=o(60804),u=o(90551),z=o(78645),M=o(92438),h=o(22096),v=o(65592),g=o(63019),d=o(47394),p=o(59773),f=o(93997),y=o(42460),T=o(37398),x=o(27921),D=o(94664),_=o(99087),P=o(97582),S=o(36028),A=o(68484),k=o(85448),R=o(27754);const $=["items"];function W(q,ve){1&q&&i.GkF(0)}const ze=function(q){return{$implicit:q}};function Y(q,ve){if(1&q&&(i.ynx(0),i.YNc(1,W,1,0,"ng-container",10),i.BQk()),2&q){const ee=i.oxw().$implicit,Be=i.oxw(2);i.xp6(1),i.Q6J("ngTemplateOutlet",Be.suggestionTemplate)("ngTemplateOutletContext",i.VKq(2,ze,ee))}}function G(q,ve){if(1&q&&i._uU(0),2&q){const ee=i.oxw().$implicit,Be=i.oxw(2);i.Oqu(Be.nzValueWith(ee))}}function V(q,ve){if(1&q){const ee=i.EpF();i.TgZ(0,"li",6,7),i.NdJ("click",function(){const ct=i.CHM(ee).$implicit,Ae=i.oxw(2);return i.KtG(Ae.selectSuggestion(ct))}),i.YNc(2,Y,2,4,"ng-container",8),i.YNc(3,G,1,1,"ng-template",null,9,i.W1O),i.qZA()}if(2&q){const ee=ve.index,Be=i.MAs(4),Re=i.oxw(2);i.ekj("ant-mentions-dropdown-menu-item-active",ee===Re.activeIndex)("ant-mentions-dropdown-menu-item-selected",ee===Re.activeIndex),i.xp6(2),i.Q6J("ngIf",Re.suggestionTemplate)("ngIfElse",Be)}}function K(q,ve){1&q&&(i.TgZ(0,"span"),i._UZ(1,"span",13),i.qZA())}function te(q,ve){if(1&q&&(i.TgZ(0,"span"),i._UZ(1,"nz-embed-empty",14),i.qZA()),2&q){const ee=i.oxw(3);i.xp6(1),i.Q6J("specificContent",ee.nzNotFoundContent)}}function ne(q,ve){if(1&q&&(i.TgZ(0,"li",11),i.YNc(1,K,2,0,"span",12),i.YNc(2,te,2,1,"span",12),i.qZA()),2&q){const ee=i.oxw(2);i.xp6(1),i.Q6J("ngIf",ee.nzLoading),i.xp6(1),i.Q6J("ngIf",!ee.nzLoading)}}function fe(q,ve){if(1&q&&(i.TgZ(0,"div",2)(1,"ul",3),i.YNc(2,V,5,6,"li",4),i.YNc(3,ne,3,2,"li",5),i.qZA()()),2&q){const ee=i.oxw();i.xp6(2),i.Q6J("ngForOf",ee.filteredSuggestions),i.xp6(1),i.Q6J("ngIf",0===ee.filteredSuggestions.length)}}function re(q,ve){if(1&q&&i._UZ(0,"nz-form-item-feedback-icon",15),2&q){const ee=i.oxw();i.Q6J("status",ee.status)}}const be=["*"];let le=(()=>{class q{static#e=this.\u0275fac=function(Be){return new(Be||q)};static#t=this.\u0275dir=i.lG2({type:q,selectors:[["","nzMentionSuggestion",""]],exportAs:["nzMentionSuggestion"]})}return q})();let Q=(()=>{class q{constructor(){this.triggerChange$=new z.x}triggerChanged(){return this.triggerChange$.asObservable()}registerTrigger(ee){this.trigger!==ee&&(this.trigger=ee,this.triggerChange$.next(ee))}ngOnDestroy(){this.triggerChange$.complete()}static#e=this.\u0275fac=function(Be){return new(Be||q)};static#t=this.\u0275prov=i.Yz7({token:q,factory:q.\u0275fac})}return q})();const ie={provide:l.JU,useExisting:(0,i.Gpc)(()=>ae),multi:!0};let ae=(()=>{class q{constructor(ee,Be,Re,ct,Ae){this.el=ee,this.ngZone=Be,this.ref=Re,this.destroy$=ct,this.nzMentionService=Ae,this.onChange=()=>{},this.onTouched=()=>{},this.onFocusin=new i.vpe,this.onBlur=new i.vpe,this.onInput=new i.vpe,this.onKeydown=new i.vpe,this.onClick=new i.vpe}completeEvents(){this.onFocusin.complete(),this.onBlur.complete(),this.onInput.complete(),this.onKeydown.complete(),this.onClick.complete()}focus(ee=null){this.el.nativeElement.focus(),this.el.nativeElement.setSelectionRange(ee,ee)}insertMention(ee){const Be=this.el.nativeElement.value,Re=`${ee.mention} `,ct=[Be.slice(0,ee.startPos+1),Re,Be.slice(ee.endPos,Be.length)].join("");this.el.nativeElement.value=ct,this.focus(ee.startPos+Re.length+1),this.onChange(ct),this.value=ct}writeValue(ee){this.value=ee,this.el.nativeElement.value="string"==typeof ee?ee:""}registerOnChange(ee){this.onChange=ee}registerOnTouched(ee){this.onTouched=ee}ngAfterViewInit(){this.nzMentionService.registerTrigger(this),this.setupEventListener("blur",this.onBlur),this.setupEventListener("focusin",this.onFocusin),this.setupEventListener("input",this.onInput,!0),this.setupEventListener("click",this.onClick,!0),this.setupEventListener("keydown",this.onKeydown,!0)}ngOnDestroy(){this.completeEvents()}setupEventListener(ee,Be,Re=!1){this.ngZone.runOutsideAngular(()=>{(0,M.R)(this.el.nativeElement,ee).pipe((0,p.R)(this.destroy$)).subscribe(ct=>{Be.observers.length&&this.ngZone.run(()=>{Be.emit(Re?ct:void 0),this.ref.markForCheck()})})})}static#e=this.\u0275fac=function(Be){return new(Be||q)(i.Y36(i.SBq),i.Y36(i.R0b),i.Y36(i.sBO),i.Y36(_.kn),i.Y36(Q))};static#t=this.\u0275dir=i.lG2({type:q,selectors:[["input","nzMentionTrigger",""],["textarea","nzMentionTrigger",""]],hostAttrs:["autocomplete","off"],outputs:{onFocusin:"onFocusin",onBlur:"onBlur",onInput:"onInput",onKeydown:"onKeydown",onClick:"onClick"},exportAs:["nzMentionTrigger"],features:[i._Bn([_.kn,ie])]})}return q})(),xe=(()=>{class q{set suggestionChild(ee){ee&&(this.suggestionTemplate=ee)}get triggerNativeElement(){return this.trigger.el.nativeElement}get focusItemElement(){const ee=this.items?.toArray();return ee&&ee[this.activeIndex]?ee[this.activeIndex].nativeElement:null}constructor(ee,Be,Re,ct,Ae,Mt,je,ot,mt,we,de,U){this.ngZone=ee,this.ngDocument=Be,this.directionality=Re,this.cdr=ct,this.overlay=Ae,this.viewContainerRef=Mt,this.elementRef=je,this.renderer=ot,this.nzMentionService=mt,this.destroy$=we,this.nzFormStatusService=de,this.nzFormNoStatusService=U,this.nzValueWith=B=>B,this.nzPrefix="@",this.nzLoading=!1,this.nzNotFoundContent="\u65e0\u5339\u914d\u7ed3\u679c\uff0c\u8f7b\u6572\u7a7a\u683c\u5b8c\u6210\u8f93\u5165",this.nzPlacement="bottom",this.nzSuggestions=[],this.nzStatus="",this.nzOnSelect=new i.vpe,this.nzOnSearchChange=new i.vpe,this.isOpen=!1,this.filteredSuggestions=[],this.suggestionTemplate=null,this.activeIndex=-1,this.dir="ltr",this.prefixCls="ant-mentions",this.statusCls={},this.status="",this.hasFeedback=!1,this.previousValue=null,this.cursorMention=null,this.overlayRef=null}ngOnInit(){this.nzFormStatusService?.formStatusChanges.pipe((0,f.x)((ee,Be)=>ee.status===Be.status&&ee.hasFeedback===Be.hasFeedback),(0,y.M)(this.nzFormNoStatusService?this.nzFormNoStatusService.noFormStatus:(0,h.of)(!1)),(0,T.U)(([{status:ee,hasFeedback:Be},Re])=>({status:Re?"":ee,hasFeedback:Be})),(0,p.R)(this.destroy$)).subscribe(({status:ee,hasFeedback:Be})=>{this.setStatusStyles(ee,Be)}),this.nzMentionService.triggerChanged().subscribe(ee=>{this.trigger=ee,this.bindTriggerEvents(),this.closeDropdown(),this.overlayRef=null}),this.dir=this.directionality.value,this.directionality.change?.pipe((0,p.R)(this.destroy$)).subscribe(ee=>{this.dir=ee})}ngOnChanges(ee){const{nzSuggestions:Be,nzStatus:Re}=ee;Be&&this.isOpen&&(this.previousValue=null,this.activeIndex=-1,this.resetDropdown(!1)),Re&&this.setStatusStyles(this.nzStatus,this.hasFeedback)}ngAfterViewInit(){this.items.changes.pipe((0,x.O)(this.items),(0,D.w)(()=>{const ee=this.items.toArray();return new v.y(Be=>this.ngZone.runOutsideAngular(()=>(0,g.T)(...ee.map(Re=>(0,M.R)(Re.nativeElement,"mousedown"))).subscribe(Be)))})).subscribe(ee=>{ee.preventDefault()})}ngOnDestroy(){this.closeDropdown()}closeDropdown(){this.overlayRef&&this.overlayRef.hasAttached()&&(this.overlayRef.detach(),this.overlayOutsideClickSubscription.unsubscribe(),this.isOpen=!1,this.cdr.markForCheck())}openDropdown(){this.attachOverlay(),this.isOpen=!0,this.cdr.markForCheck()}getMentions(){return this.trigger?(0,R.qR)(this.trigger.value,this.nzPrefix):[]}selectSuggestion(ee){const Be=this.nzValueWith(ee);this.trigger.insertMention({mention:Be,startPos:this.cursorMentionStart,endPos:this.cursorMentionEnd}),this.nzOnSelect.emit(ee),this.closeDropdown(),this.activeIndex=-1}handleInput(ee){const Be=ee.target;this.trigger.onChange(Be.value),this.trigger.value=Be.value,this.resetDropdown()}handleKeydown(ee){const Be=ee.keyCode;if(this.isOpen&&Be===S.K5&&-1!==this.activeIndex&&this.filteredSuggestions.length)this.selectSuggestion(this.filteredSuggestions[this.activeIndex]),ee.preventDefault();else if(Be===S.oh||Be===S.SV)this.resetDropdown(),ee.stopPropagation();else{if(this.isOpen&&(Be===S.Mf||Be===S.hY))return void this.closeDropdown();this.isOpen&&Be===S.LH&&(this.setPreviousItemActive(),ee.preventDefault(),ee.stopPropagation()),this.isOpen&&Be===S.JH&&(this.setNextItemActive(),ee.preventDefault(),ee.stopPropagation())}}handleClick(){this.resetDropdown()}bindTriggerEvents(){this.trigger.onInput.subscribe(ee=>this.handleInput(ee)),this.trigger.onKeydown.subscribe(ee=>this.handleKeydown(ee)),this.trigger.onClick.subscribe(()=>this.handleClick())}suggestionsFilter(ee,Be){const Re=ee.substring(1);if(this.previousValue===ee&&ee!==this.cursorMention[0])return;this.previousValue=ee,Be&&this.nzOnSearchChange.emit({value:this.cursorMention.substring(1),prefix:this.cursorMention[0]});const ct=Re.toLowerCase();this.filteredSuggestions=this.nzSuggestions.filter(Ae=>this.nzValueWith(Ae).toLowerCase().includes(ct))}resetDropdown(ee=!0){if(this.resetCursorMention(),"string"!=typeof this.cursorMention||!this.canOpen())return void this.closeDropdown();this.suggestionsFilter(this.cursorMention,ee);const Be=this.filteredSuggestions.indexOf(this.cursorMention.substring(1));this.activeIndex=Be>=0?Be:0,this.openDropdown()}setNextItemActive(){this.activeIndex=this.activeIndex+1<=this.filteredSuggestions.length-1?this.activeIndex+1:0,this.cdr.markForCheck(),this.scrollToFocusItem()}setPreviousItemActive(){this.activeIndex=this.activeIndex-1<0?this.filteredSuggestions.length-1:this.activeIndex-1,this.cdr.markForCheck(),this.scrollToFocusItem()}scrollToFocusItem(){this.focusItemElement&&this.focusItemElement.scrollIntoView({behavior:"smooth",block:"center",inline:"nearest"})}canOpen(){const ee=this.triggerNativeElement;return!ee.readOnly&&!ee.disabled}resetCursorMention(){const ee=this.triggerNativeElement.value.replace(/[\r\n]/g," ")||"",Be=this.triggerNativeElement.selectionStart,Re="string"==typeof this.nzPrefix?[this.nzPrefix]:this.nzPrefix;let ct=Re.length;for(;ct>=0;){const Ae=ee.lastIndexOf(Re[ct],Be),Mt=ee.indexOf(" ",Be)>-1?ee.indexOf(" ",Be):ee.length,je=ee.substring(Ae,Mt);if(!(Ae>0&&" "!==ee[Ae-1]||Ae<0||je.includes(Re[ct],1)||je.includes(" ")))return this.cursorMention=je,this.cursorMentionStart=Ae,void(this.cursorMentionEnd=Mt);this.cursorMention=null,this.cursorMentionStart=-1,this.cursorMentionEnd=-1,ct--}}updatePositions(){const ee=(0,R.Ly)(this.triggerNativeElement,this.cursorMentionStart),Be=ee.top-this.triggerNativeElement.getBoundingClientRect().height-this.triggerNativeElement.scrollTop+("bottom"===this.nzPlacement?ee.height-6:-6);this.positionStrategy.withDefaultOffsetX(ee.left-this.triggerNativeElement.scrollLeft).withDefaultOffsetY(Be),"bottom"===this.nzPlacement&&this.positionStrategy.withPositions([...k.fG]),"top"===this.nzPlacement&&this.positionStrategy.withPositions([...k.A7]),this.positionStrategy.apply()}subscribeOverlayOutsideClick(){const ee=Re=>{const ct=Re.target;return this.isOpen&&ct!==this.trigger.el.nativeElement&&!this.overlayRef?.overlayElement.contains(ct)},Be=new d.w0;return Be.add(this.overlayRef.outsidePointerEvents().subscribe(Re=>ee(Re)&&this.closeDropdown())),Be.add(this.ngZone.runOutsideAngular(()=>(0,M.R)(this.ngDocument,"touchend").subscribe(Re=>ee(Re)&&this.ngZone.run(()=>this.closeDropdown())))),Be}attachOverlay(){this.overlayRef||(this.portal=new A.UE(this.suggestionsTemp,this.viewContainerRef),this.overlayRef=this.overlay.create(this.getOverlayConfig())),this.overlayRef&&!this.overlayRef.hasAttached()&&(this.overlayRef.attach(this.portal),this.overlayOutsideClickSubscription=this.subscribeOverlayOutsideClick()),this.updatePositions()}getOverlayConfig(){return new n.X_({positionStrategy:this.getOverlayPosition(),scrollStrategy:this.overlay.scrollStrategies.reposition(),disposeOnNavigation:!0})}getOverlayPosition(){const ee=[new n.tR({originX:"start",originY:"bottom"},{overlayX:"start",overlayY:"top"}),new n.tR({originX:"start",originY:"top"},{overlayX:"start",overlayY:"bottom"})];return this.positionStrategy=this.overlay.position().flexibleConnectedTo(this.trigger.el).withPositions(ee).withFlexibleDimensions(!1).withPush(!1),this.positionStrategy}setStatusStyles(ee,Be){this.status=ee,this.hasFeedback=Be,this.cdr.markForCheck(),this.statusCls=(0,R.Zu)(this.prefixCls,ee,Be),Object.keys(this.statusCls).forEach(Re=>{this.statusCls[Re]?this.renderer.addClass(this.elementRef.nativeElement,Re):this.renderer.removeClass(this.elementRef.nativeElement,Re)})}static#e=this.\u0275fac=function(Be){return new(Be||q)(i.Y36(i.R0b),i.Y36(t.K0,8),i.Y36(e.Is,8),i.Y36(i.sBO),i.Y36(n.aV),i.Y36(i.s_b),i.Y36(i.SBq),i.Y36(i.Qsj),i.Y36(Q),i.Y36(_.kn),i.Y36(C.kH,8),i.Y36(C.yW,8))};static#t=this.\u0275cmp=i.Xpm({type:q,selectors:[["nz-mention"]],contentQueries:function(Be,Re,ct){if(1&Be&&i.Suo(ct,le,5,i.Rgc),2&Be){let Ae;i.iGM(Ae=i.CRH())&&(Re.suggestionChild=Ae.first)}},viewQuery:function(Be,Re){if(1&Be&&(i.Gf(i.Rgc,5),i.Gf($,5,i.SBq)),2&Be){let ct;i.iGM(ct=i.CRH())&&(Re.suggestionsTemp=ct.first),i.iGM(ct=i.CRH())&&(Re.items=ct)}},hostAttrs:[1,"ant-mentions"],hostVars:2,hostBindings:function(Be,Re){2&Be&&i.ekj("ant-mentions-rtl","rtl"===Re.dir)},inputs:{nzValueWith:"nzValueWith",nzPrefix:"nzPrefix",nzLoading:"nzLoading",nzNotFoundContent:"nzNotFoundContent",nzPlacement:"nzPlacement",nzSuggestions:"nzSuggestions",nzStatus:"nzStatus"},outputs:{nzOnSelect:"nzOnSelect",nzOnSearchChange:"nzOnSearchChange"},exportAs:["nzMention"],features:[i._Bn([Q,_.kn]),i.TTD],ngContentSelectors:be,decls:4,vars:1,consts:[["suggestions",""],["class","ant-mentions-suffix",3,"status",4,"ngIf"],[1,"ant-mentions-dropdown"],["role","menu","tabindex","0",1,"ant-mentions-dropdown-menu"],["class","ant-mentions-dropdown-menu-item","role","menuitem","tabindex","-1",3,"ant-mentions-dropdown-menu-item-active","ant-mentions-dropdown-menu-item-selected","click",4,"ngFor","ngForOf"],["class","ant-mentions-dropdown-menu-item ant-mentions-dropdown-menu-item-disabled",4,"ngIf"],["role","menuitem","tabindex","-1",1,"ant-mentions-dropdown-menu-item",3,"click"],["items",""],[4,"ngIf","ngIfElse"],["defaultSuggestion",""],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"ant-mentions-dropdown-menu-item","ant-mentions-dropdown-menu-item-disabled"],[4,"ngIf"],["nz-icon","","nzType","loading"],["nzComponentName","select",3,"specificContent"],[1,"ant-mentions-suffix",3,"status"]],template:function(Be,Re){1&Be&&(i.F$t(),i.Hsn(0),i.YNc(1,fe,4,2,"ng-template",null,0,i.W1O),i.YNc(3,re,1,1,"nz-form-item-feedback-icon",1)),2&Be&&(i.xp6(3),i.Q6J("ngIf",Re.hasFeedback&&!!Re.status))},dependencies:[t.sg,t.O5,t.tP,u.Ls,E.gB,C.w_],encapsulation:2,changeDetection:0})}return(0,P.gn)([(0,R.yF)()],q.prototype,"nzLoading",void 0),q})(),Ye=(()=>{class q{static#e=this.\u0275fac=function(Be){return new(Be||q)};static#t=this.\u0275mod=i.oAB({type:q});static#n=this.\u0275inj=i.cJS({imports:[e.vT,t.ez,l.u5,n.U8,u.PV,E.Xo,C.mJ]})}return q})()},73460:(nt,I,o)=>{"use strict";o.d(I,{Cc:()=>Mt,YV:()=>en,hl:()=>ot,ip:()=>cn,rY:()=>Ne,u9:()=>we,uA:()=>qt,wO:()=>Lt});var e=o(97582),n=o(65879),t=o(78645),i=o(65619),l=o(63019),C=o(52572),E=o(37398),u=o(21631),z=o(32181),M=o(21441),h=o(29028),v=o(93997),g=o(59773),d=o(27921),p=o(94664),f=o(27754),y=o(52787),T=o(49388),x=o(33651),D=o(85448),_=o(62831),P=o(331),S=o(96814),A=o(90551),k=o(8324),R=o(64194);const $=["nz-menu-item",""],W=["*"],ze=["nz-submenu-title",""];function Y(Wt,Vt){if(1&Wt&&n._UZ(0,"span",4),2&Wt){const st=n.oxw();n.Q6J("nzType",st.nzIcon)}}function G(Wt,Vt){if(1&Wt&&(n.ynx(0),n.TgZ(1,"span",5),n._uU(2),n.qZA(),n.BQk()),2&Wt){const st=n.oxw();n.xp6(2),n.Oqu(st.nzTitle)}}function V(Wt,Vt){1&Wt&&n._UZ(0,"span",9)}function K(Wt,Vt){1&Wt&&n._UZ(0,"span",10)}function te(Wt,Vt){if(1&Wt&&(n.TgZ(0,"span",6),n.YNc(1,V,1,0,"span",7),n.YNc(2,K,1,0,"span",8),n.qZA()),2&Wt){const st=n.oxw();n.Q6J("ngSwitch",st.dir),n.xp6(1),n.Q6J("ngSwitchCase","rtl")}}function ne(Wt,Vt){1&Wt&&n._UZ(0,"span",11)}const fe=["nz-submenu-inline-child",""];function re(Wt,Vt){}const be=["nz-submenu-none-inline-child",""];function le(Wt,Vt){}const ce=["nz-submenu",""];function Q(Wt,Vt){1&Wt&&n.Hsn(0,0,["*ngIf","!nzTitle"])}function ie(Wt,Vt){if(1&Wt&&n._UZ(0,"div",6),2&Wt){const st=n.oxw(),He=n.MAs(7);n.Q6J("mode",st.mode)("nzOpen",st.nzOpen)("@.disabled",!(null==st.noAnimation||!st.noAnimation.nzNoAnimation))("nzNoAnimation",null==st.noAnimation?null:st.noAnimation.nzNoAnimation)("menuClass",st.nzMenuClassName)("templateOutlet",He)}}function ae(Wt,Vt){if(1&Wt){const st=n.EpF();n.TgZ(0,"div",8),n.NdJ("subMenuMouseState",function(et){n.CHM(st);const It=n.oxw(2);return n.KtG(It.setMouseEnterState(et))}),n.qZA()}if(2&Wt){const st=n.oxw(2),He=n.MAs(7);n.Q6J("theme",st.theme)("mode",st.mode)("nzOpen",st.nzOpen)("position",st.position)("nzDisabled",st.nzDisabled)("isMenuInsideDropDown",st.isMenuInsideDropDown)("templateOutlet",He)("menuClass",st.nzMenuClassName)("@.disabled",!(null==st.noAnimation||!st.noAnimation.nzNoAnimation))("nzNoAnimation",null==st.noAnimation?null:st.noAnimation.nzNoAnimation)}}function xe(Wt,Vt){if(1&Wt){const st=n.EpF();n.YNc(0,ae,1,10,"ng-template",7),n.NdJ("positionChange",function(et){n.CHM(st);const It=n.oxw();return n.KtG(It.onPositionChange(et))})}if(2&Wt){const st=n.oxw(),He=n.MAs(1);n.Q6J("cdkConnectedOverlayPositions",st.overlayPositions)("cdkConnectedOverlayOrigin",He)("cdkConnectedOverlayWidth",st.triggerWidth)("cdkConnectedOverlayOpen",st.nzOpen)("cdkConnectedOverlayTransformOriginOn",".ant-menu-submenu")}}function Me(Wt,Vt){1&Wt&&n.Hsn(0,1)}const Ye=[[["","title",""]],"*"],q=["[title]","*"],ve=["titleElement"],ee=["nz-menu-group",""];function Be(Wt,Vt){if(1&Wt&&(n.ynx(0),n._uU(1),n.BQk()),2&Wt){const st=n.oxw();n.xp6(1),n.Oqu(st.nzTitle)}}function Re(Wt,Vt){1&Wt&&n.Hsn(0,1,["*ngIf","!nzTitle"])}const ct=["*",[["","title",""]]],Ae=["*","[title]"],Mt=new n.OlP("NzIsInDropDownMenuToken"),je=new n.OlP("NzMenuServiceLocalToken");let ot=(()=>{class Wt{constructor(){this.descendantMenuItemClick$=new t.x,this.childMenuItemClick$=new t.x,this.theme$=new i.X("light"),this.mode$=new i.X("vertical"),this.inlineIndent$=new i.X(24),this.isChildSubMenuOpen$=new i.X(!1)}onDescendantMenuItemClick(st){this.descendantMenuItemClick$.next(st)}onChildMenuItemClick(st){this.childMenuItemClick$.next(st)}setMode(st){this.mode$.next(st)}setTheme(st){this.theme$.next(st)}setInlineIndent(st){this.inlineIndent$.next(st)}static#e=this.\u0275fac=function(He){return new(He||Wt)};static#t=this.\u0275prov=n.Yz7({token:Wt,factory:Wt.\u0275fac})}return Wt})(),mt=(()=>{class Wt{onChildMenuItemClick(st){this.childMenuItemClick$.next(st)}setOpenStateWithoutDebounce(st){this.isCurrentSubMenuOpen$.next(st)}setMouseEnterTitleOrOverlayState(st){this.isMouseEnterTitleOrOverlay$.next(st)}constructor(st,He,et){this.nzHostSubmenuService=st,this.nzMenuService=He,this.isMenuInsideDropDown=et,this.mode$=this.nzMenuService.mode$.pipe((0,E.U)(Qe=>"inline"===Qe?"inline":"vertical"===Qe||this.nzHostSubmenuService?"vertical":"horizontal")),this.level=1,this.isCurrentSubMenuOpen$=new i.X(!1),this.isChildSubMenuOpen$=new i.X(!1),this.isMouseEnterTitleOrOverlay$=new t.x,this.childMenuItemClick$=new t.x,this.destroy$=new t.x,this.nzHostSubmenuService&&(this.level=this.nzHostSubmenuService.level+1);const It=this.childMenuItemClick$.pipe((0,u.z)(()=>this.mode$),(0,z.h)(Qe=>"inline"!==Qe||this.isMenuInsideDropDown),(0,M.h)(!1)),Ot=(0,l.T)(this.isMouseEnterTitleOrOverlay$,It);(0,C.a)([this.isChildSubMenuOpen$,Ot]).pipe((0,E.U)(([Qe,ke])=>Qe||ke),(0,h.e)(150),(0,v.x)(),(0,g.R)(this.destroy$)).pipe((0,v.x)()).subscribe(Qe=>{this.setOpenStateWithoutDebounce(Qe),this.nzHostSubmenuService?this.nzHostSubmenuService.isChildSubMenuOpen$.next(Qe):this.nzMenuService.isChildSubMenuOpen$.next(Qe)})}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(He){return new(He||Wt)(n.LFG(Wt,12),n.LFG(ot),n.LFG(Mt))};static#t=this.\u0275prov=n.Yz7({token:Wt,factory:Wt.\u0275fac})}return Wt})(),we=(()=>{class Wt{clickMenuItem(st){this.nzDisabled?(st.preventDefault(),st.stopPropagation()):(this.nzMenuService.onDescendantMenuItemClick(this),this.nzSubmenuService?this.nzSubmenuService.onChildMenuItemClick(this):this.nzMenuService.onChildMenuItemClick(this))}setSelectedState(st){this.nzSelected=st,this.selected$.next(st)}updateRouterActive(){!this.listOfRouterLink||!this.router||!this.router.navigated||!this.nzMatchRouter||Promise.resolve().then(()=>{const st=this.hasActiveLinks();this.nzSelected!==st&&(this.nzSelected=st,this.setSelectedState(this.nzSelected),this.cdr.markForCheck())})}hasActiveLinks(){const st=this.isLinkActive(this.router);return this.routerLink&&st(this.routerLink)||this.listOfRouterLink.some(st)}isLinkActive(st){return He=>st.isActive(He.urlTree||"",{paths:this.nzMatchRouterExact?"exact":"subset",queryParams:this.nzMatchRouterExact?"exact":"subset",fragment:"ignored",matrixParams:"ignored"})}constructor(st,He,et,It,Ot,xt,Qe){this.nzMenuService=st,this.cdr=He,this.nzSubmenuService=et,this.isMenuInsideDropDown=It,this.directionality=Ot,this.routerLink=xt,this.router=Qe,this.destroy$=new t.x,this.level=this.nzSubmenuService?this.nzSubmenuService.level+1:1,this.selected$=new t.x,this.inlinePaddingLeft=null,this.dir="ltr",this.nzDisabled=!1,this.nzSelected=!1,this.nzDanger=!1,this.nzMatchRouterExact=!1,this.nzMatchRouter=!1,Qe&&this.router.events.pipe((0,g.R)(this.destroy$),(0,z.h)(ke=>ke instanceof y.m2)).subscribe(()=>{this.updateRouterActive()})}ngOnInit(){(0,C.a)([this.nzMenuService.mode$,this.nzMenuService.inlineIndent$]).pipe((0,g.R)(this.destroy$)).subscribe(([st,He])=>{this.inlinePaddingLeft="inline"===st?this.level*He:null}),this.dir=this.directionality.value,this.directionality.change?.pipe((0,g.R)(this.destroy$)).subscribe(st=>{this.dir=st})}ngAfterContentInit(){this.listOfRouterLink.changes.pipe((0,g.R)(this.destroy$)).subscribe(()=>this.updateRouterActive()),this.updateRouterActive()}ngOnChanges(st){st.nzSelected&&this.setSelectedState(this.nzSelected)}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(He){return new(He||Wt)(n.Y36(ot),n.Y36(n.sBO),n.Y36(mt,8),n.Y36(Mt),n.Y36(T.Is,8),n.Y36(y.rH,8),n.Y36(y.F0,8))};static#t=this.\u0275cmp=n.Xpm({type:Wt,selectors:[["","nz-menu-item",""]],contentQueries:function(He,et,It){if(1&He&&n.Suo(It,y.rH,5),2&He){let Ot;n.iGM(Ot=n.CRH())&&(et.listOfRouterLink=Ot)}},hostVars:20,hostBindings:function(He,et){1&He&&n.NdJ("click",function(Ot){return et.clickMenuItem(Ot)}),2&He&&(n.Udp("padding-left","rtl"===et.dir?null:et.nzPaddingLeft||et.inlinePaddingLeft,"px")("padding-right","rtl"===et.dir?et.nzPaddingLeft||et.inlinePaddingLeft:null,"px"),n.ekj("ant-dropdown-menu-item",et.isMenuInsideDropDown)("ant-dropdown-menu-item-selected",et.isMenuInsideDropDown&&et.nzSelected)("ant-dropdown-menu-item-danger",et.isMenuInsideDropDown&&et.nzDanger)("ant-dropdown-menu-item-disabled",et.isMenuInsideDropDown&&et.nzDisabled)("ant-menu-item",!et.isMenuInsideDropDown)("ant-menu-item-selected",!et.isMenuInsideDropDown&&et.nzSelected)("ant-menu-item-danger",!et.isMenuInsideDropDown&&et.nzDanger)("ant-menu-item-disabled",!et.isMenuInsideDropDown&&et.nzDisabled))},inputs:{nzPaddingLeft:"nzPaddingLeft",nzDisabled:"nzDisabled",nzSelected:"nzSelected",nzDanger:"nzDanger",nzMatchRouterExact:"nzMatchRouterExact",nzMatchRouter:"nzMatchRouter"},exportAs:["nzMenuItem"],features:[n.TTD],attrs:$,ngContentSelectors:W,decls:2,vars:0,consts:[[1,"ant-menu-title-content"]],template:function(He,et){1&He&&(n.F$t(),n.TgZ(0,"span",0),n.Hsn(1),n.qZA())},encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,f.yF)()],Wt.prototype,"nzDisabled",void 0),(0,e.gn)([(0,f.yF)()],Wt.prototype,"nzSelected",void 0),(0,e.gn)([(0,f.yF)()],Wt.prototype,"nzDanger",void 0),(0,e.gn)([(0,f.yF)()],Wt.prototype,"nzMatchRouterExact",void 0),(0,e.gn)([(0,f.yF)()],Wt.prototype,"nzMatchRouter",void 0),Wt})(),de=(()=>{class Wt{constructor(st,He){this.cdr=st,this.directionality=He,this.nzIcon=null,this.nzTitle=null,this.isMenuInsideDropDown=!1,this.nzDisabled=!1,this.paddingLeft=null,this.mode="vertical",this.toggleSubMenu=new n.vpe,this.subMenuMouseState=new n.vpe,this.dir="ltr",this.destroy$=new t.x}ngOnInit(){this.dir=this.directionality.value,this.directionality.change?.pipe((0,g.R)(this.destroy$)).subscribe(st=>{this.dir=st,this.cdr.detectChanges()})}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}setMouseState(st){this.nzDisabled||this.subMenuMouseState.next(st)}clickTitle(){"inline"===this.mode&&!this.nzDisabled&&this.toggleSubMenu.emit()}static#e=this.\u0275fac=function(He){return new(He||Wt)(n.Y36(n.sBO),n.Y36(T.Is,8))};static#t=this.\u0275cmp=n.Xpm({type:Wt,selectors:[["","nz-submenu-title",""]],hostVars:8,hostBindings:function(He,et){1&He&&n.NdJ("click",function(){return et.clickTitle()})("mouseenter",function(){return et.setMouseState(!0)})("mouseleave",function(){return et.setMouseState(!1)}),2&He&&(n.Udp("padding-left","rtl"===et.dir?null:et.paddingLeft,"px")("padding-right","rtl"===et.dir?et.paddingLeft:null,"px"),n.ekj("ant-dropdown-menu-submenu-title",et.isMenuInsideDropDown)("ant-menu-submenu-title",!et.isMenuInsideDropDown))},inputs:{nzIcon:"nzIcon",nzTitle:"nzTitle",isMenuInsideDropDown:"isMenuInsideDropDown",nzDisabled:"nzDisabled",paddingLeft:"paddingLeft",mode:"mode"},outputs:{toggleSubMenu:"toggleSubMenu",subMenuMouseState:"subMenuMouseState"},exportAs:["nzSubmenuTitle"],attrs:ze,ngContentSelectors:W,decls:6,vars:4,consts:[["nz-icon","",3,"nzType",4,"ngIf"],[4,"nzStringTemplateOutlet"],["class","ant-dropdown-menu-submenu-expand-icon",3,"ngSwitch",4,"ngIf","ngIfElse"],["notDropdownTpl",""],["nz-icon","",3,"nzType"],[1,"ant-menu-title-content"],[1,"ant-dropdown-menu-submenu-expand-icon",3,"ngSwitch"],["nz-icon","","nzType","left","class","ant-dropdown-menu-submenu-arrow-icon",4,"ngSwitchCase"],["nz-icon","","nzType","right","class","ant-dropdown-menu-submenu-arrow-icon",4,"ngSwitchDefault"],["nz-icon","","nzType","left",1,"ant-dropdown-menu-submenu-arrow-icon"],["nz-icon","","nzType","right",1,"ant-dropdown-menu-submenu-arrow-icon"],[1,"ant-menu-submenu-arrow"]],template:function(He,et){if(1&He&&(n.F$t(),n.YNc(0,Y,1,1,"span",0),n.YNc(1,G,3,1,"ng-container",1),n.Hsn(2),n.YNc(3,te,3,2,"span",2),n.YNc(4,ne,1,0,"ng-template",null,3,n.W1O)),2&He){const It=n.MAs(5);n.Q6J("ngIf",et.nzIcon),n.xp6(1),n.Q6J("nzStringTemplateOutlet",et.nzTitle),n.xp6(2),n.Q6J("ngIf",et.isMenuInsideDropDown)("ngIfElse",It)}},dependencies:[S.O5,S.RF,S.n9,S.ED,A.Ls,k.f],encapsulation:2,changeDetection:0})}return Wt})(),U=(()=>{class Wt{constructor(st,He,et){this.elementRef=st,this.renderer=He,this.directionality=et,this.templateOutlet=null,this.menuClass="",this.mode="vertical",this.nzOpen=!1,this.listOfCacheClassName=[],this.expandState="collapsed",this.dir="ltr",this.destroy$=new t.x}calcMotionState(){this.expandState=this.nzOpen?"expanded":"collapsed"}ngOnInit(){this.calcMotionState(),this.dir=this.directionality.value,this.directionality.change?.pipe((0,g.R)(this.destroy$)).subscribe(st=>{this.dir=st})}ngOnChanges(st){const{mode:He,nzOpen:et,menuClass:It}=st;(He||et)&&this.calcMotionState(),It&&(this.listOfCacheClassName.length&&this.listOfCacheClassName.filter(Ot=>!!Ot).forEach(Ot=>{this.renderer.removeClass(this.elementRef.nativeElement,Ot)}),this.menuClass&&(this.listOfCacheClassName=this.menuClass.split(" "),this.listOfCacheClassName.filter(Ot=>!!Ot).forEach(Ot=>{this.renderer.addClass(this.elementRef.nativeElement,Ot)})))}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(He){return new(He||Wt)(n.Y36(n.SBq),n.Y36(n.Qsj),n.Y36(T.Is,8))};static#t=this.\u0275cmp=n.Xpm({type:Wt,selectors:[["","nz-submenu-inline-child",""]],hostAttrs:[1,"ant-menu","ant-menu-inline","ant-menu-sub"],hostVars:3,hostBindings:function(He,et){2&He&&(n.d8E("@collapseMotion",et.expandState),n.ekj("ant-menu-rtl","rtl"===et.dir))},inputs:{templateOutlet:"templateOutlet",menuClass:"menuClass",mode:"mode",nzOpen:"nzOpen"},exportAs:["nzSubmenuInlineChild"],features:[n.TTD],attrs:fe,decls:1,vars:1,consts:[[3,"ngTemplateOutlet"]],template:function(He,et){1&He&&n.YNc(0,re,0,0,"ng-template",0),2&He&&n.Q6J("ngTemplateOutlet",et.templateOutlet)},dependencies:[S.tP],encapsulation:2,data:{animation:[R.J_]},changeDetection:0})}return Wt})(),B=(()=>{class Wt{constructor(st){this.directionality=st,this.menuClass="",this.theme="light",this.templateOutlet=null,this.isMenuInsideDropDown=!1,this.mode="vertical",this.position="right",this.nzDisabled=!1,this.nzOpen=!1,this.subMenuMouseState=new n.vpe,this.expandState="collapsed",this.dir="ltr",this.destroy$=new t.x}setMouseState(st){this.nzDisabled||this.subMenuMouseState.next(st)}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}calcMotionState(){this.nzOpen?"horizontal"===this.mode?this.expandState="bottom":"vertical"===this.mode&&(this.expandState="active"):this.expandState="collapsed"}ngOnInit(){this.calcMotionState(),this.dir=this.directionality.value,this.directionality.change?.pipe((0,g.R)(this.destroy$)).subscribe(st=>{this.dir=st})}ngOnChanges(st){const{mode:He,nzOpen:et}=st;(He||et)&&this.calcMotionState()}static#e=this.\u0275fac=function(He){return new(He||Wt)(n.Y36(T.Is,8))};static#t=this.\u0275cmp=n.Xpm({type:Wt,selectors:[["","nz-submenu-none-inline-child",""]],hostAttrs:[1,"ant-menu-submenu","ant-menu-submenu-popup"],hostVars:14,hostBindings:function(He,et){1&He&&n.NdJ("mouseenter",function(){return et.setMouseState(!0)})("mouseleave",function(){return et.setMouseState(!1)}),2&He&&(n.d8E("@slideMotion",et.expandState)("@zoomBigMotion",et.expandState),n.ekj("ant-menu-light","light"===et.theme)("ant-menu-dark","dark"===et.theme)("ant-menu-submenu-placement-bottom","horizontal"===et.mode)("ant-menu-submenu-placement-right","vertical"===et.mode&&"right"===et.position)("ant-menu-submenu-placement-left","vertical"===et.mode&&"left"===et.position)("ant-menu-submenu-rtl","rtl"===et.dir))},inputs:{menuClass:"menuClass",theme:"theme",templateOutlet:"templateOutlet",isMenuInsideDropDown:"isMenuInsideDropDown",mode:"mode",position:"position",nzDisabled:"nzDisabled",nzOpen:"nzOpen"},outputs:{subMenuMouseState:"subMenuMouseState"},exportAs:["nzSubmenuNoneInlineChild"],features:[n.TTD],attrs:be,decls:2,vars:16,consts:[[3,"ngClass"],[3,"ngTemplateOutlet"]],template:function(He,et){1&He&&(n.TgZ(0,"div",0),n.YNc(1,le,0,0,"ng-template",1),n.qZA()),2&He&&(n.ekj("ant-dropdown-menu",et.isMenuInsideDropDown)("ant-menu",!et.isMenuInsideDropDown)("ant-dropdown-menu-vertical",et.isMenuInsideDropDown)("ant-menu-vertical",!et.isMenuInsideDropDown)("ant-dropdown-menu-sub",et.isMenuInsideDropDown)("ant-menu-sub",!et.isMenuInsideDropDown)("ant-menu-rtl","rtl"===et.dir),n.Q6J("ngClass",et.menuClass),n.xp6(1),n.Q6J("ngTemplateOutlet",et.templateOutlet))},dependencies:[S.mk,S.tP],encapsulation:2,data:{animation:[R.$C,R.mF]},changeDetection:0})}return Wt})();const Ee=[D.yW.rightTop,D.yW.right,D.yW.rightBottom,D.yW.leftTop,D.yW.left,D.yW.leftBottom],Ie=[D.yW.bottomLeft,D.yW.bottomRight,D.yW.topRight,D.yW.topLeft];let Ne=(()=>{class Wt{setOpenStateWithoutDebounce(st){this.nzSubmenuService.setOpenStateWithoutDebounce(st)}toggleSubMenu(){this.setOpenStateWithoutDebounce(!this.nzOpen)}setMouseEnterState(st){this.isActive=st,"inline"!==this.mode&&this.nzSubmenuService.setMouseEnterTitleOrOverlayState(st)}setTriggerWidth(){"horizontal"===this.mode&&this.platform.isBrowser&&this.cdkOverlayOrigin&&"bottomLeft"===this.nzPlacement&&(this.triggerWidth=this.cdkOverlayOrigin.nativeElement.getBoundingClientRect().width)}onPositionChange(st){const He=(0,D.d_)(st);"rightTop"===He||"rightBottom"===He||"right"===He?this.position="right":("leftTop"===He||"leftBottom"===He||"left"===He)&&(this.position="left")}constructor(st,He,et,It,Ot,xt,Qe){this.nzMenuService=st,this.cdr=He,this.nzSubmenuService=et,this.platform=It,this.isMenuInsideDropDown=Ot,this.directionality=xt,this.noAnimation=Qe,this.nzMenuClassName="",this.nzPaddingLeft=null,this.nzTitle=null,this.nzIcon=null,this.nzOpen=!1,this.nzDisabled=!1,this.nzPlacement="bottomLeft",this.nzOpenChange=new n.vpe,this.cdkOverlayOrigin=null,this.listOfNzSubMenuComponent=null,this.listOfNzMenuItemDirective=null,this.level=this.nzSubmenuService.level,this.destroy$=new t.x,this.position="right",this.triggerWidth=null,this.theme="light",this.mode="vertical",this.inlinePaddingLeft=null,this.overlayPositions=Ee,this.isSelected=!1,this.isActive=!1,this.dir="ltr"}ngOnInit(){this.nzMenuService.theme$.pipe((0,g.R)(this.destroy$)).subscribe(st=>{this.theme=st,this.cdr.markForCheck()}),this.nzSubmenuService.mode$.pipe((0,g.R)(this.destroy$)).subscribe(st=>{this.mode=st,"horizontal"===st?this.overlayPositions=[D.yW[this.nzPlacement],...Ie]:"vertical"===st&&(this.overlayPositions=Ee),this.cdr.markForCheck()}),(0,C.a)([this.nzSubmenuService.mode$,this.nzMenuService.inlineIndent$]).pipe((0,g.R)(this.destroy$)).subscribe(([st,He])=>{this.inlinePaddingLeft="inline"===st?this.level*He:null,this.cdr.markForCheck()}),this.nzSubmenuService.isCurrentSubMenuOpen$.pipe((0,g.R)(this.destroy$)).subscribe(st=>{this.isActive=st,st!==this.nzOpen&&(this.setTriggerWidth(),this.nzOpen=st,this.nzOpenChange.emit(this.nzOpen),this.cdr.markForCheck())}),this.dir=this.directionality.value,this.directionality.change?.pipe((0,g.R)(this.destroy$)).subscribe(st=>{this.dir=st,this.cdr.markForCheck()})}ngAfterContentInit(){this.setTriggerWidth();const st=this.listOfNzMenuItemDirective,He=st.changes,et=(0,l.T)(He,...st.map(It=>It.selected$));He.pipe((0,d.O)(st),(0,p.w)(()=>et),(0,d.O)(!0),(0,E.U)(()=>st.some(It=>It.nzSelected)),(0,g.R)(this.destroy$)).subscribe(It=>{this.isSelected=It,this.cdr.markForCheck()})}ngOnChanges(st){const{nzOpen:He}=st;He&&(this.nzSubmenuService.setOpenStateWithoutDebounce(this.nzOpen),this.setTriggerWidth())}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(He){return new(He||Wt)(n.Y36(ot),n.Y36(n.sBO),n.Y36(mt),n.Y36(_.t4),n.Y36(Mt),n.Y36(T.Is,8),n.Y36(P.P,9))};static#t=this.\u0275cmp=n.Xpm({type:Wt,selectors:[["","nz-submenu",""]],contentQueries:function(He,et,It){if(1&He&&(n.Suo(It,Wt,5),n.Suo(It,we,5)),2&He){let Ot;n.iGM(Ot=n.CRH())&&(et.listOfNzSubMenuComponent=Ot),n.iGM(Ot=n.CRH())&&(et.listOfNzMenuItemDirective=Ot)}},viewQuery:function(He,et){if(1&He&&n.Gf(x.xu,7,n.SBq),2&He){let It;n.iGM(It=n.CRH())&&(et.cdkOverlayOrigin=It.first)}},hostVars:34,hostBindings:function(He,et){2&He&&n.ekj("ant-dropdown-menu-submenu",et.isMenuInsideDropDown)("ant-dropdown-menu-submenu-disabled",et.isMenuInsideDropDown&&et.nzDisabled)("ant-dropdown-menu-submenu-open",et.isMenuInsideDropDown&&et.nzOpen)("ant-dropdown-menu-submenu-selected",et.isMenuInsideDropDown&&et.isSelected)("ant-dropdown-menu-submenu-vertical",et.isMenuInsideDropDown&&"vertical"===et.mode)("ant-dropdown-menu-submenu-horizontal",et.isMenuInsideDropDown&&"horizontal"===et.mode)("ant-dropdown-menu-submenu-inline",et.isMenuInsideDropDown&&"inline"===et.mode)("ant-dropdown-menu-submenu-active",et.isMenuInsideDropDown&&et.isActive)("ant-menu-submenu",!et.isMenuInsideDropDown)("ant-menu-submenu-disabled",!et.isMenuInsideDropDown&&et.nzDisabled)("ant-menu-submenu-open",!et.isMenuInsideDropDown&&et.nzOpen)("ant-menu-submenu-selected",!et.isMenuInsideDropDown&&et.isSelected)("ant-menu-submenu-vertical",!et.isMenuInsideDropDown&&"vertical"===et.mode)("ant-menu-submenu-horizontal",!et.isMenuInsideDropDown&&"horizontal"===et.mode)("ant-menu-submenu-inline",!et.isMenuInsideDropDown&&"inline"===et.mode)("ant-menu-submenu-active",!et.isMenuInsideDropDown&&et.isActive)("ant-menu-submenu-rtl","rtl"===et.dir)},inputs:{nzMenuClassName:"nzMenuClassName",nzPaddingLeft:"nzPaddingLeft",nzTitle:"nzTitle",nzIcon:"nzIcon",nzOpen:"nzOpen",nzDisabled:"nzDisabled",nzPlacement:"nzPlacement"},outputs:{nzOpenChange:"nzOpenChange"},exportAs:["nzSubmenu"],features:[n._Bn([mt]),n.TTD],attrs:ce,ngContentSelectors:q,decls:8,vars:9,consts:[["nz-submenu-title","","cdkOverlayOrigin","",3,"nzIcon","nzTitle","mode","nzDisabled","isMenuInsideDropDown","paddingLeft","subMenuMouseState","toggleSubMenu"],["origin","cdkOverlayOrigin"],[4,"ngIf"],["nz-submenu-inline-child","",3,"mode","nzOpen","nzNoAnimation","menuClass","templateOutlet",4,"ngIf","ngIfElse"],["nonInlineTemplate",""],["subMenuTemplate",""],["nz-submenu-inline-child","",3,"mode","nzOpen","nzNoAnimation","menuClass","templateOutlet"],["cdkConnectedOverlay","",3,"cdkConnectedOverlayPositions","cdkConnectedOverlayOrigin","cdkConnectedOverlayWidth","cdkConnectedOverlayOpen","cdkConnectedOverlayTransformOriginOn","positionChange"],["nz-submenu-none-inline-child","",3,"theme","mode","nzOpen","position","nzDisabled","isMenuInsideDropDown","templateOutlet","menuClass","nzNoAnimation","subMenuMouseState"]],template:function(He,et){if(1&He&&(n.F$t(Ye),n.TgZ(0,"div",0,1),n.NdJ("subMenuMouseState",function(Ot){return et.setMouseEnterState(Ot)})("toggleSubMenu",function(){return et.toggleSubMenu()}),n.YNc(2,Q,1,0,"ng-content",2),n.qZA(),n.YNc(3,ie,1,6,"div",3),n.YNc(4,xe,1,5,"ng-template",null,4,n.W1O),n.YNc(6,Me,1,0,"ng-template",null,5,n.W1O)),2&He){const It=n.MAs(5);n.Q6J("nzIcon",et.nzIcon)("nzTitle",et.nzTitle)("mode",et.mode)("nzDisabled",et.nzDisabled)("isMenuInsideDropDown",et.isMenuInsideDropDown)("paddingLeft",et.nzPaddingLeft||et.inlinePaddingLeft),n.xp6(2),n.Q6J("ngIf",!et.nzTitle),n.xp6(1),n.Q6J("ngIf","inline"===et.mode)("ngIfElse",It)}},dependencies:[S.O5,x.pI,x.xu,P.P,de,U,B],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,f.yF)()],Wt.prototype,"nzOpen",void 0),(0,e.gn)([(0,f.yF)()],Wt.prototype,"nzDisabled",void 0),Wt})();function pt(Wt,Vt){return Wt||Vt}function Dt(Wt){return Wt||!1}let Lt=(()=>{class Wt{setInlineCollapsed(st){this.nzInlineCollapsed=st,this.inlineCollapsed$.next(st)}updateInlineCollapse(){this.listOfNzMenuItemDirective&&(this.nzInlineCollapsed?(this.listOfOpenedNzSubMenuComponent=this.listOfNzSubMenuComponent.filter(st=>st.nzOpen),this.listOfNzSubMenuComponent.forEach(st=>st.setOpenStateWithoutDebounce(!1))):(this.listOfOpenedNzSubMenuComponent.forEach(st=>st.setOpenStateWithoutDebounce(!0)),this.listOfOpenedNzSubMenuComponent=[]))}constructor(st,He,et,It){this.nzMenuService=st,this.isMenuInsideDropDown=He,this.cdr=et,this.directionality=It,this.nzInlineIndent=24,this.nzTheme="light",this.nzMode="vertical",this.nzInlineCollapsed=!1,this.nzSelectable=!this.isMenuInsideDropDown,this.nzClick=new n.vpe,this.actualMode="vertical",this.dir="ltr",this.inlineCollapsed$=new i.X(this.nzInlineCollapsed),this.mode$=new i.X(this.nzMode),this.destroy$=new t.x,this.listOfOpenedNzSubMenuComponent=[]}ngOnInit(){(0,C.a)([this.inlineCollapsed$,this.mode$]).pipe((0,g.R)(this.destroy$)).subscribe(([st,He])=>{this.actualMode=st?"vertical":He,this.nzMenuService.setMode(this.actualMode),this.cdr.markForCheck()}),this.nzMenuService.descendantMenuItemClick$.pipe((0,g.R)(this.destroy$)).subscribe(st=>{this.nzClick.emit(st),this.nzSelectable&&!st.nzMatchRouter&&this.listOfNzMenuItemDirective.forEach(He=>He.setSelectedState(He===st))}),this.dir=this.directionality.value,this.directionality.change?.pipe((0,g.R)(this.destroy$)).subscribe(st=>{this.dir=st,this.nzMenuService.setMode(this.actualMode),this.cdr.markForCheck()})}ngAfterContentInit(){this.inlineCollapsed$.pipe((0,g.R)(this.destroy$)).subscribe(()=>{this.updateInlineCollapse(),this.cdr.markForCheck()})}ngOnChanges(st){const{nzInlineCollapsed:He,nzInlineIndent:et,nzTheme:It,nzMode:Ot}=st;He&&this.inlineCollapsed$.next(this.nzInlineCollapsed),et&&this.nzMenuService.setInlineIndent(this.nzInlineIndent),It&&this.nzMenuService.setTheme(this.nzTheme),Ot&&(this.mode$.next(this.nzMode),!st.nzMode.isFirstChange()&&this.listOfNzSubMenuComponent&&this.listOfNzSubMenuComponent.forEach(xt=>xt.setOpenStateWithoutDebounce(!1)))}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(He){return new(He||Wt)(n.Y36(ot),n.Y36(Mt),n.Y36(n.sBO),n.Y36(T.Is,8))};static#t=this.\u0275dir=n.lG2({type:Wt,selectors:[["","nz-menu",""]],contentQueries:function(He,et,It){if(1&He&&(n.Suo(It,we,5),n.Suo(It,Ne,5)),2&He){let Ot;n.iGM(Ot=n.CRH())&&(et.listOfNzMenuItemDirective=Ot),n.iGM(Ot=n.CRH())&&(et.listOfNzSubMenuComponent=Ot)}},hostVars:34,hostBindings:function(He,et){2&He&&n.ekj("ant-dropdown-menu",et.isMenuInsideDropDown)("ant-dropdown-menu-root",et.isMenuInsideDropDown)("ant-dropdown-menu-light",et.isMenuInsideDropDown&&"light"===et.nzTheme)("ant-dropdown-menu-dark",et.isMenuInsideDropDown&&"dark"===et.nzTheme)("ant-dropdown-menu-vertical",et.isMenuInsideDropDown&&"vertical"===et.actualMode)("ant-dropdown-menu-horizontal",et.isMenuInsideDropDown&&"horizontal"===et.actualMode)("ant-dropdown-menu-inline",et.isMenuInsideDropDown&&"inline"===et.actualMode)("ant-dropdown-menu-inline-collapsed",et.isMenuInsideDropDown&&et.nzInlineCollapsed)("ant-menu",!et.isMenuInsideDropDown)("ant-menu-root",!et.isMenuInsideDropDown)("ant-menu-light",!et.isMenuInsideDropDown&&"light"===et.nzTheme)("ant-menu-dark",!et.isMenuInsideDropDown&&"dark"===et.nzTheme)("ant-menu-vertical",!et.isMenuInsideDropDown&&"vertical"===et.actualMode)("ant-menu-horizontal",!et.isMenuInsideDropDown&&"horizontal"===et.actualMode)("ant-menu-inline",!et.isMenuInsideDropDown&&"inline"===et.actualMode)("ant-menu-inline-collapsed",!et.isMenuInsideDropDown&&et.nzInlineCollapsed)("ant-menu-rtl","rtl"===et.dir)},inputs:{nzInlineIndent:"nzInlineIndent",nzTheme:"nzTheme",nzMode:"nzMode",nzInlineCollapsed:"nzInlineCollapsed",nzSelectable:"nzSelectable"},outputs:{nzClick:"nzClick"},exportAs:["nzMenu"],features:[n._Bn([{provide:je,useClass:ot},{provide:ot,useFactory:pt,deps:[[new n.tp0,new n.FiY,ot],je]},{provide:Mt,useFactory:Dt,deps:[[new n.tp0,new n.FiY,Mt]]}]),n.TTD]})}return(0,e.gn)([(0,f.yF)()],Wt.prototype,"nzInlineCollapsed",void 0),(0,e.gn)([(0,f.yF)()],Wt.prototype,"nzSelectable",void 0),Wt})();function Ut(Wt){return Wt||!1}let qt=(()=>{class Wt{constructor(st,He,et){this.elementRef=st,this.renderer=He,this.isMenuInsideDropDown=et,this.renderer.addClass(st.nativeElement,this.isMenuInsideDropDown?"ant-dropdown-menu-item-group":"ant-menu-item-group")}ngAfterViewInit(){const st=this.titleElement.nativeElement.nextElementSibling;st&&this.renderer.addClass(st,this.isMenuInsideDropDown?"ant-dropdown-menu-item-group-list":"ant-menu-item-group-list")}static#e=this.\u0275fac=function(He){return new(He||Wt)(n.Y36(n.SBq),n.Y36(n.Qsj),n.Y36(Mt))};static#t=this.\u0275cmp=n.Xpm({type:Wt,selectors:[["","nz-menu-group",""]],viewQuery:function(He,et){if(1&He&&n.Gf(ve,5),2&He){let It;n.iGM(It=n.CRH())&&(et.titleElement=It.first)}},inputs:{nzTitle:"nzTitle"},exportAs:["nzMenuGroup"],features:[n._Bn([{provide:Mt,useFactory:Ut,deps:[[new n.tp0,new n.FiY,Mt]]}])],attrs:ee,ngContentSelectors:Ae,decls:5,vars:6,consts:[["titleElement",""],[4,"nzStringTemplateOutlet"],[4,"ngIf"]],template:function(He,et){1&He&&(n.F$t(ct),n.TgZ(0,"div",null,0),n.YNc(2,Be,2,1,"ng-container",1),n.YNc(3,Re,1,0,"ng-content",2),n.qZA(),n.Hsn(4)),2&He&&(n.ekj("ant-menu-item-group-title",!et.isMenuInsideDropDown)("ant-dropdown-menu-item-group-title",et.isMenuInsideDropDown),n.xp6(2),n.Q6J("nzStringTemplateOutlet",et.nzTitle),n.xp6(1),n.Q6J("ngIf",!et.nzTitle))},dependencies:[S.O5,k.f],encapsulation:2,changeDetection:0})}return Wt})(),en=(()=>{class Wt{constructor(st){this.elementRef=st}static#e=this.\u0275fac=function(He){return new(He||Wt)(n.Y36(n.SBq))};static#t=this.\u0275dir=n.lG2({type:Wt,selectors:[["","nz-menu-divider",""]],hostAttrs:[1,"ant-dropdown-menu-item-divider"],exportAs:["nzMenuDivider"]})}return Wt})(),cn=(()=>{class Wt{static#e=this.\u0275fac=function(He){return new(He||Wt)};static#t=this.\u0275mod=n.oAB({type:Wt});static#n=this.\u0275inj=n.cJS({imports:[T.vT,S.ez,_.ud,x.U8,A.PV,P.g,k.T]})}return Wt})()},43460:(nt,I,o)=>{"use strict";o.d(I,{dD:()=>V,gR:()=>G});var e=o(68484),n=o(65879),t=o(78645),i=o(32181),l=o(48180),C=o(59773),E=o(83064),u=o(27754),z=o(96814),M=o(64194),h=o(90551),v=o(8324),g=o(49388),d=o(33651),p=o(99087);function f(K,te){1&K&&n._UZ(0,"span",10)}function y(K,te){1&K&&n._UZ(0,"span",11)}function T(K,te){1&K&&n._UZ(0,"span",12)}function x(K,te){1&K&&n._UZ(0,"span",13)}function D(K,te){1&K&&n._UZ(0,"span",14)}function _(K,te){if(1&K&&(n.ynx(0),n._UZ(1,"span",15),n.BQk()),2&K){const ne=n.oxw();n.xp6(1),n.Q6J("innerHTML",ne.instance.content,n.oJD)}}function P(K,te){if(1&K){const ne=n.EpF();n.TgZ(0,"nz-message",2),n.NdJ("destroyed",function(re){n.CHM(ne);const be=n.oxw();return n.KtG(be.remove(re.id,re.userAction))}),n.qZA()}2&K&&n.Q6J("instance",te.$implicit)}let S=0;class A{constructor(te,ne,fe){this.nzSingletonService=te,this.overlay=ne,this.injector=fe}remove(te){this.container&&(te?this.container.remove(te):this.container.removeAll())}getInstanceId(){return`${this.componentPrefix}-${S++}`}withContainer(te){let ne=this.nzSingletonService.getSingletonWithKey(this.componentPrefix);if(ne)return ne;const fe=this.overlay.create({hasBackdrop:!1,scrollStrategy:this.overlay.scrollStrategies.noop(),positionStrategy:this.overlay.position().global()}),re=new e.C5(te,null,this.injector),be=fe.attach(re);return fe.hostElement.style.zIndex="1010",ne||(this.container=ne=be.instance,this.nzSingletonService.registerSingletonWithKey(this.componentPrefix,ne),this.container.afterAllInstancesRemoved.subscribe(()=>{this.container=void 0,this.nzSingletonService.unregisterSingletonWithKey(this.componentPrefix),fe.dispose()})),ne}}let k=(()=>{class K{constructor(ne,fe){this.cdr=ne,this.nzConfigService=fe,this.instances=[],this._afterAllInstancesRemoved=new t.x,this.afterAllInstancesRemoved=this._afterAllInstancesRemoved.asObservable(),this.destroy$=new t.x,this.updateConfig()}ngOnInit(){this.subscribeConfigChange()}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}create(ne){const fe=this.onCreate(ne);return this.instances.length>=this.config.nzMaxStack&&(this.instances=this.instances.slice(1)),this.instances=[...this.instances,fe],this.readyInstances(),fe}remove(ne,fe=!1){this.instances.map((re,be)=>({index:be,instance:re})).filter(({instance:re})=>re.messageId===ne).forEach(({index:re,instance:be})=>{this.instances.splice(re,1),this.instances=[...this.instances],this.onRemove(be,fe),this.readyInstances()}),this.instances.length||this.onAllInstancesRemoved()}removeAll(){this.instances.forEach(ne=>this.onRemove(ne,!1)),this.instances=[],this.readyInstances(),this.onAllInstancesRemoved()}onCreate(ne){return ne.options=this.mergeOptions(ne.options),ne.onClose=new t.x,ne}onRemove(ne,fe){ne.onClose.next(fe),ne.onClose.complete()}onAllInstancesRemoved(){this._afterAllInstancesRemoved.next(),this._afterAllInstancesRemoved.complete()}readyInstances(){this.cdr.detectChanges()}mergeOptions(ne){const{nzDuration:fe,nzAnimate:re,nzPauseOnHover:be}=this.config;return{nzDuration:fe,nzAnimate:re,nzPauseOnHover:be,...ne}}static#e=this.\u0275fac=function(fe){return new(fe||K)(n.Y36(n.sBO),n.Y36(E.jY))};static#t=this.\u0275dir=n.lG2({type:K})}return K})(),R=(()=>{class K{constructor(ne){this.cdr=ne,this.destroyed=new n.vpe,this.animationStateChanged=new t.x,this.userAction=!1,this.eraseTimer=null}ngOnInit(){this.options=this.instance.options,this.options.nzAnimate&&(this.instance.state="enter",this.animationStateChanged.pipe((0,i.h)(ne=>"done"===ne.phaseName&&"leave"===ne.toState),(0,l.q)(1)).subscribe(()=>{clearTimeout(this.closeTimer),this.destroyed.next({id:this.instance.messageId,userAction:this.userAction})})),this.autoClose=this.options.nzDuration>0,this.autoClose&&(this.initErase(),this.startEraseTimeout())}ngOnDestroy(){this.autoClose&&this.clearEraseTimeout(),this.animationStateChanged.complete()}onEnter(){this.autoClose&&this.options.nzPauseOnHover&&(this.clearEraseTimeout(),this.updateTTL())}onLeave(){this.autoClose&&this.options.nzPauseOnHover&&this.startEraseTimeout()}destroy(ne=!1){this.userAction=ne,this.options.nzAnimate?(this.instance.state="leave",this.cdr.detectChanges(),this.closeTimer=setTimeout(()=>{this.closeTimer=void 0,this.destroyed.next({id:this.instance.messageId,userAction:ne})},200)):this.destroyed.next({id:this.instance.messageId,userAction:ne})}initErase(){this.eraseTTL=this.options.nzDuration,this.eraseTimingStart=Date.now()}updateTTL(){this.autoClose&&(this.eraseTTL-=Date.now()-this.eraseTimingStart)}startEraseTimeout(){this.eraseTTL>0?(this.clearEraseTimeout(),this.eraseTimer=setTimeout(()=>this.destroy(),this.eraseTTL),this.eraseTimingStart=Date.now()):this.destroy()}clearEraseTimeout(){null!==this.eraseTimer&&(clearTimeout(this.eraseTimer),this.eraseTimer=null)}static#e=this.\u0275fac=function(fe){return new(fe||K)(n.Y36(n.sBO))};static#t=this.\u0275dir=n.lG2({type:K})}return K})(),$=(()=>{class K extends R{constructor(ne){super(ne),this.destroyed=new n.vpe}static#e=this.\u0275fac=function(fe){return new(fe||K)(n.Y36(n.sBO))};static#t=this.\u0275cmp=n.Xpm({type:K,selectors:[["nz-message"]],inputs:{instance:"instance"},outputs:{destroyed:"destroyed"},exportAs:["nzMessage"],features:[n.qOj],decls:10,vars:9,consts:[[1,"ant-message-notice",3,"mouseenter","mouseleave"],[1,"ant-message-notice-content"],[1,"ant-message-custom-content",3,"ngClass"],[3,"ngSwitch"],["nz-icon","","nzType","check-circle",4,"ngSwitchCase"],["nz-icon","","nzType","info-circle",4,"ngSwitchCase"],["nz-icon","","nzType","exclamation-circle",4,"ngSwitchCase"],["nz-icon","","nzType","close-circle",4,"ngSwitchCase"],["nz-icon","","nzType","loading",4,"ngSwitchCase"],[4,"nzStringTemplateOutlet"],["nz-icon","","nzType","check-circle"],["nz-icon","","nzType","info-circle"],["nz-icon","","nzType","exclamation-circle"],["nz-icon","","nzType","close-circle"],["nz-icon","","nzType","loading"],[3,"innerHTML"]],template:function(fe,re){1&fe&&(n.TgZ(0,"div",0),n.NdJ("@moveUpMotion.done",function(le){return re.animationStateChanged.next(le)})("mouseenter",function(){return re.onEnter()})("mouseleave",function(){return re.onLeave()}),n.TgZ(1,"div",1)(2,"div",2),n.ynx(3,3),n.YNc(4,f,1,0,"span",4),n.YNc(5,y,1,0,"span",5),n.YNc(6,T,1,0,"span",6),n.YNc(7,x,1,0,"span",7),n.YNc(8,D,1,0,"span",8),n.BQk(),n.YNc(9,_,2,1,"ng-container",9),n.qZA()()()),2&fe&&(n.Q6J("@moveUpMotion",re.instance.state),n.xp6(2),n.Q6J("ngClass","ant-message-"+re.instance.type),n.xp6(1),n.Q6J("ngSwitch",re.instance.type),n.xp6(1),n.Q6J("ngSwitchCase","success"),n.xp6(1),n.Q6J("ngSwitchCase","info"),n.xp6(1),n.Q6J("ngSwitchCase","warning"),n.xp6(1),n.Q6J("ngSwitchCase","error"),n.xp6(1),n.Q6J("ngSwitchCase","loading"),n.xp6(1),n.Q6J("nzStringTemplateOutlet",re.instance.content))},dependencies:[z.mk,z.RF,z.n9,h.Ls,v.f],encapsulation:2,data:{animation:[M.YK]},changeDetection:0})}return K})();const W="message",ze={nzAnimate:!0,nzDuration:3e3,nzMaxStack:7,nzPauseOnHover:!0,nzTop:24,nzDirection:"ltr"};let Y=(()=>{class K extends k{constructor(ne,fe){super(ne,fe),this.dir="ltr";const re=this.nzConfigService.getConfigForComponent(W);this.dir=re?.nzDirection||"ltr"}subscribeConfigChange(){this.nzConfigService.getConfigChangeEventForComponent(W).pipe((0,C.R)(this.destroy$)).subscribe(()=>{this.updateConfig();const ne=this.nzConfigService.getConfigForComponent(W);if(ne){const{nzDirection:fe}=ne;this.dir=fe||this.dir}})}updateConfig(){this.config={...ze,...this.config,...this.nzConfigService.getConfigForComponent(W)},this.top=(0,u.WX)(this.config.nzTop),this.cdr.markForCheck()}static#e=this.\u0275fac=function(fe){return new(fe||K)(n.Y36(n.sBO),n.Y36(E.jY))};static#t=this.\u0275cmp=n.Xpm({type:K,selectors:[["nz-message-container"]],exportAs:["nzMessageContainer"],features:[n.qOj],decls:2,vars:5,consts:[[1,"ant-message"],[3,"instance","destroyed",4,"ngFor","ngForOf"],[3,"instance","destroyed"]],template:function(fe,re){1&fe&&(n.TgZ(0,"div",0),n.YNc(1,P,1,1,"nz-message",1),n.qZA()),2&fe&&(n.Udp("top",re.top),n.ekj("ant-message-rtl","rtl"===re.dir),n.xp6(1),n.Q6J("ngForOf",re.instances))},dependencies:[z.sg,$],encapsulation:2,changeDetection:0})}return K})(),G=(()=>{class K{static#e=this.\u0275fac=function(fe){return new(fe||K)};static#t=this.\u0275mod=n.oAB({type:K});static#n=this.\u0275inj=n.cJS({imports:[g.vT,z.ez,d.U8,h.PV,v.T]})}return K})(),V=(()=>{class K extends A{constructor(ne,fe,re){super(ne,fe,re),this.componentPrefix="message-"}success(ne,fe){return this.createInstance({type:"success",content:ne},fe)}error(ne,fe){return this.createInstance({type:"error",content:ne},fe)}info(ne,fe){return this.createInstance({type:"info",content:ne},fe)}warning(ne,fe){return this.createInstance({type:"warning",content:ne},fe)}loading(ne,fe){return this.createInstance({type:"loading",content:ne},fe)}create(ne,fe,re){return this.createInstance({type:ne,content:fe},re)}createInstance(ne,fe){return this.container=this.withContainer(Y),this.container.create({...ne,createdAt:new Date,messageId:this.getInstanceId(),options:fe})}static#e=this.\u0275fac=function(fe){return new(fe||K)(n.LFG(p.KV),n.LFG(d.aV),n.LFG(n.zs3))};static#t=this.\u0275prov=n.Yz7({token:K,factory:K.\u0275fac,providedIn:"root"})}return K})()},81221:(nt,I,o)=>{"use strict";o.d(I,{Lf:()=>st,Qp:()=>Qe,Sf:()=>He});var e=o(49671),n=o(33651),t=o(68484),i=o(65879),l=o(78645),C=o(92438),E=o(74911),u=o(59773),z=o(32181),M=o(48180),h=o(27921),v=o(1608),g=o(27754),d=o(96814),p=o(86825),f=o(56879),y=o(4300),T=o(83064),x=o(12131),D=o(8324),_=o(42840),P=o(70855),S=o(41958),A=o(90551),k=o(6192),R=o(36028),$=o(49388),W=o(331);const ze=["nz-modal-close",""];function Y(pe,qe){if(1&pe&&(i.ynx(0),i._UZ(1,"span",2),i.BQk()),2&pe){const ge=qe.$implicit;i.xp6(1),i.Q6J("nzType",ge)}}const G=["modalElement"];function V(pe,qe){if(1&pe){const ge=i.EpF();i.TgZ(0,"button",16),i.NdJ("click",function(){i.CHM(ge);const $e=i.oxw();return i.KtG($e.onCloseClick())}),i.qZA()}}function K(pe,qe){if(1&pe&&(i.ynx(0),i._UZ(1,"span",17),i.BQk()),2&pe){const ge=i.oxw();i.xp6(1),i.Q6J("innerHTML",ge.config.nzTitle,i.oJD)}}function te(pe,qe){}function ne(pe,qe){if(1&pe&&i._UZ(0,"div",17),2&pe){const ge=i.oxw();i.Q6J("innerHTML",ge.config.nzContent,i.oJD)}}function fe(pe,qe){if(1&pe){const ge=i.EpF();i.TgZ(0,"button",18),i.NdJ("click",function(){i.CHM(ge);const $e=i.oxw();return i.KtG($e.onCancel())}),i._uU(1),i.qZA()}if(2&pe){const ge=i.oxw();i.Q6J("nzLoading",!!ge.config.nzCancelLoading)("disabled",ge.config.nzCancelDisabled),i.uIk("cdkFocusInitial","cancel"===ge.config.nzAutofocus||null),i.xp6(1),i.hij(" ",ge.config.nzCancelText||ge.locale.cancelText," ")}}function re(pe,qe){if(1&pe){const ge=i.EpF();i.TgZ(0,"button",19),i.NdJ("click",function(){i.CHM(ge);const $e=i.oxw();return i.KtG($e.onOk())}),i._uU(1),i.qZA()}if(2&pe){const ge=i.oxw();i.Q6J("nzType",ge.config.nzOkType)("nzLoading",!!ge.config.nzOkLoading)("disabled",ge.config.nzOkDisabled)("nzDanger",ge.config.nzOkDanger),i.uIk("cdkFocusInitial","ok"===ge.config.nzAutofocus||null),i.xp6(1),i.hij(" ",ge.config.nzOkText||ge.locale.okText," ")}}const be=["nz-modal-footer",""];function le(pe,qe){if(1&pe&&i._UZ(0,"div",5),2&pe){const ge=i.oxw(3);i.Q6J("innerHTML",ge.config.nzFooter,i.oJD)}}function ce(pe,qe){if(1&pe){const ge=i.EpF();i.TgZ(0,"button",7),i.NdJ("click",function(){const Ue=i.CHM(ge).$implicit,wt=i.oxw(4);return i.KtG(wt.onButtonClick(Ue))}),i._uU(1),i.qZA()}if(2&pe){const ge=qe.$implicit,Ze=i.oxw(4);i.Q6J("hidden",!Ze.getButtonCallableProp(ge,"show"))("nzLoading",Ze.getButtonCallableProp(ge,"loading"))("disabled",Ze.getButtonCallableProp(ge,"disabled"))("nzType",ge.type)("nzDanger",ge.danger)("nzShape",ge.shape)("nzSize",ge.size)("nzGhost",ge.ghost),i.xp6(1),i.hij(" ",ge.label," ")}}function Q(pe,qe){if(1&pe&&(i.ynx(0),i.YNc(1,ce,2,9,"button",6),i.BQk()),2&pe){const ge=i.oxw(3);i.xp6(1),i.Q6J("ngForOf",ge.buttons)}}function ie(pe,qe){if(1&pe&&(i.ynx(0),i.YNc(1,le,1,1,"div",3),i.YNc(2,Q,2,1,"ng-container",4),i.BQk()),2&pe){const ge=i.oxw(2);i.xp6(1),i.Q6J("ngIf",!ge.buttonsFooter),i.xp6(1),i.Q6J("ngIf",ge.buttonsFooter)}}const ae=function(pe,qe){return{$implicit:pe,modalRef:qe}};function xe(pe,qe){if(1&pe&&(i.ynx(0),i.YNc(1,ie,3,2,"ng-container",2),i.BQk()),2&pe){const ge=i.oxw();i.xp6(1),i.Q6J("nzStringTemplateOutlet",ge.config.nzFooter)("nzStringTemplateOutletContext",i.WLB(2,ae,ge.config.nzData,ge.modalRef))}}function Me(pe,qe){if(1&pe){const ge=i.EpF();i.TgZ(0,"button",10),i.NdJ("click",function(){i.CHM(ge);const $e=i.oxw(2);return i.KtG($e.onCancel())}),i._uU(1),i.qZA()}if(2&pe){const ge=i.oxw(2);i.Q6J("nzLoading",!!ge.config.nzCancelLoading)("disabled",ge.config.nzCancelDisabled),i.uIk("cdkFocusInitial","cancel"===ge.config.nzAutofocus||null),i.xp6(1),i.hij(" ",ge.config.nzCancelText||ge.locale.cancelText," ")}}function Ye(pe,qe){if(1&pe){const ge=i.EpF();i.TgZ(0,"button",11),i.NdJ("click",function(){i.CHM(ge);const $e=i.oxw(2);return i.KtG($e.onOk())}),i._uU(1),i.qZA()}if(2&pe){const ge=i.oxw(2);i.Q6J("nzType",ge.config.nzOkType)("nzDanger",ge.config.nzOkDanger)("nzLoading",!!ge.config.nzOkLoading)("disabled",ge.config.nzOkDisabled),i.uIk("cdkFocusInitial","ok"===ge.config.nzAutofocus||null),i.xp6(1),i.hij(" ",ge.config.nzOkText||ge.locale.okText," ")}}function q(pe,qe){if(1&pe&&(i.YNc(0,Me,2,4,"button",8),i.YNc(1,Ye,2,6,"button",9)),2&pe){const ge=i.oxw();i.Q6J("ngIf",null!==ge.config.nzCancelText),i.xp6(1),i.Q6J("ngIf",null!==ge.config.nzOkText)}}const ve=["nz-modal-title",""];function ee(pe,qe){if(1&pe&&(i.ynx(0),i._UZ(1,"div",2),i.BQk()),2&pe){const ge=i.oxw();i.xp6(1),i.Q6J("innerHTML",ge.config.nzTitle,i.oJD)}}function Be(pe,qe){if(1&pe){const ge=i.EpF();i.TgZ(0,"button",9),i.NdJ("click",function(){i.CHM(ge);const $e=i.oxw();return i.KtG($e.onCloseClick())}),i.qZA()}}function Re(pe,qe){1&pe&&i._UZ(0,"div",10)}function ct(pe,qe){}function Ae(pe,qe){if(1&pe&&i._UZ(0,"div",11),2&pe){const ge=i.oxw();i.Q6J("innerHTML",ge.config.nzContent,i.oJD)}}function Mt(pe,qe){if(1&pe){const ge=i.EpF();i.TgZ(0,"div",12),i.NdJ("cancelTriggered",function(){i.CHM(ge);const $e=i.oxw();return i.KtG($e.onCloseClick())})("okTriggered",function(){i.CHM(ge);const $e=i.oxw();return i.KtG($e.onOkClick())}),i.qZA()}if(2&pe){const ge=i.oxw();i.Q6J("modalRef",ge.modalRef)}}const je=()=>{};class ot{constructor(){this.nzCentered=!1,this.nzClosable=!0,this.nzOkLoading=!1,this.nzOkDisabled=!1,this.nzCancelDisabled=!1,this.nzCancelLoading=!1,this.nzNoAnimation=!1,this.nzAutofocus="auto",this.nzKeyboard=!0,this.nzZIndex=1e3,this.nzWidth=520,this.nzCloseIcon="close",this.nzOkType="primary",this.nzOkDanger=!1,this.nzModalType="default",this.nzOnCancel=je,this.nzOnOk=je,this.nzIconType="question-circle"}}const de="ant-modal-mask",U="modal",B=new i.OlP("NZ_MODAL_DATA"),Ee={modalContainer:(0,p.X$)("modalContainer",[(0,p.SB)("void, exit",(0,p.oB)({})),(0,p.SB)("enter",(0,p.oB)({})),(0,p.eR)("* => enter",(0,p.jt)(".24s",(0,p.oB)({}))),(0,p.eR)("* => void, * => exit",(0,p.jt)(".2s",(0,p.oB)({})))])};function Ne(pe,qe,ge){return typeof pe>"u"?typeof qe>"u"?ge:qe:pe}function Dt(){throw Error("Attempting to attach modal content after content is already attached")}let Lt=(()=>{class pe extends t.en{get showMask(){const ge=this.nzConfigService.getConfigForComponent(U)||{};return!!Ne(this.config.nzMask,ge.nzMask,!0)}get maskClosable(){const ge=this.nzConfigService.getConfigForComponent(U)||{};return!!Ne(this.config.nzMaskClosable,ge.nzMaskClosable,!0)}constructor(ge,Ze,$e,Ue,wt,De,Pe,Je,Ge,Ke){super(),this.ngZone=ge,this.host=Ze,this.focusTrapFactory=$e,this.cdr=Ue,this.render=wt,this.overlayRef=De,this.nzConfigService=Pe,this.config=Je,this.animationType=Ke,this.animationStateChanged=new i.vpe,this.containerClick=new i.vpe,this.cancelTriggered=new i.vpe,this.okTriggered=new i.vpe,this.state="enter",this.isStringContent=!1,this.dir="ltr",this.elementFocusedBeforeModalWasOpened=null,this.mouseDown=!1,this.oldMaskStyle=null,this.destroy$=new l.x,this.document=Ge,this.dir=De.getDirection(),this.isStringContent="string"==typeof Je.nzContent,this.nzConfigService.getConfigChangeEventForComponent(U).pipe((0,u.R)(this.destroy$)).subscribe(()=>{this.updateMaskClassname()})}onContainerClick(ge){ge.target===ge.currentTarget&&!this.mouseDown&&this.showMask&&this.maskClosable&&this.containerClick.emit()}onCloseClick(){this.cancelTriggered.emit()}onOkClick(){this.okTriggered.emit()}attachComponentPortal(ge){return this.portalOutlet.hasAttached()&&Dt(),this.savePreviouslyFocusedElement(),this.setZIndexForBackdrop(),this.portalOutlet.attachComponentPortal(ge)}attachTemplatePortal(ge){return this.portalOutlet.hasAttached()&&Dt(),this.savePreviouslyFocusedElement(),this.setZIndexForBackdrop(),this.portalOutlet.attachTemplatePortal(ge)}attachStringContent(){this.savePreviouslyFocusedElement(),this.setZIndexForBackdrop()}getNativeElement(){return this.host.nativeElement}animationDisabled(){return this.config.nzNoAnimation||"NoopAnimations"===this.animationType}setModalTransformOrigin(){const ge=this.modalElementRef.nativeElement;if(this.elementFocusedBeforeModalWasOpened){const Ze=this.elementFocusedBeforeModalWasOpened.getBoundingClientRect(),$e=(0,g.pW)(this.elementFocusedBeforeModalWasOpened);this.render.setStyle(ge,"transform-origin",`${$e.left+Ze.width/2-ge.offsetLeft}px ${$e.top+Ze.height/2-ge.offsetTop}px 0px`)}}savePreviouslyFocusedElement(){this.focusTrap||(this.focusTrap=this.focusTrapFactory.create(this.host.nativeElement)),this.document&&(this.elementFocusedBeforeModalWasOpened=this.document.activeElement,this.host.nativeElement.focus&&this.ngZone.runOutsideAngular(()=>(0,f.e)(()=>this.host.nativeElement.focus())))}trapFocus(){const ge=this.host.nativeElement;if(this.config.nzAutofocus)this.focusTrap.focusInitialElementWhenReady();else{const Ze=this.document.activeElement;Ze!==ge&&!ge.contains(Ze)&&ge.focus()}}restoreFocus(){const ge=this.elementFocusedBeforeModalWasOpened;if(ge&&"function"==typeof ge.focus){const Ze=this.document.activeElement,$e=this.host.nativeElement;(!Ze||Ze===this.document.body||Ze===$e||$e.contains(Ze))&&ge.focus()}this.focusTrap&&this.focusTrap.destroy()}setEnterAnimationClass(){if(this.animationDisabled())return;this.setModalTransformOrigin();const ge=this.modalElementRef.nativeElement,Ze=this.overlayRef.backdropElement;ge.classList.add("ant-zoom-enter"),ge.classList.add("ant-zoom-enter-active"),Ze&&(Ze.classList.add("ant-fade-enter"),Ze.classList.add("ant-fade-enter-active"))}setExitAnimationClass(){const ge=this.modalElementRef.nativeElement;ge.classList.add("ant-zoom-leave"),ge.classList.add("ant-zoom-leave-active"),this.setMaskExitAnimationClass()}setMaskExitAnimationClass(ge=!1){const Ze=this.overlayRef.backdropElement;if(Ze){if(this.animationDisabled()||ge)return void Ze.classList.remove(de);Ze.classList.add("ant-fade-leave"),Ze.classList.add("ant-fade-leave-active")}}cleanAnimationClass(){if(this.animationDisabled())return;const ge=this.overlayRef.backdropElement,Ze=this.modalElementRef.nativeElement;ge&&(ge.classList.remove("ant-fade-enter"),ge.classList.remove("ant-fade-enter-active")),Ze.classList.remove("ant-zoom-enter"),Ze.classList.remove("ant-zoom-enter-active"),Ze.classList.remove("ant-zoom-leave"),Ze.classList.remove("ant-zoom-leave-active")}setZIndexForBackdrop(){const ge=this.overlayRef.backdropElement;ge&&(0,g.DX)(this.config.nzZIndex)&&this.render.setStyle(ge,"z-index",this.config.nzZIndex)}bindBackdropStyle(){const ge=this.overlayRef.backdropElement;if(ge&&(this.oldMaskStyle&&(Object.keys(this.oldMaskStyle).forEach($e=>{this.render.removeStyle(ge,$e)}),this.oldMaskStyle=null),this.setZIndexForBackdrop(),"object"==typeof this.config.nzMaskStyle&&Object.keys(this.config.nzMaskStyle).length)){const Ze={...this.config.nzMaskStyle};Object.keys(Ze).forEach($e=>{this.render.setStyle(ge,$e,Ze[$e])}),this.oldMaskStyle=Ze}}updateMaskClassname(){const ge=this.overlayRef.backdropElement;ge&&(this.showMask?ge.classList.add(de):ge.classList.remove(de))}onAnimationDone(ge){"enter"===ge.toState?this.trapFocus():"exit"===ge.toState&&this.restoreFocus(),this.cleanAnimationClass(),this.animationStateChanged.emit(ge)}onAnimationStart(ge){"enter"===ge.toState?(this.setEnterAnimationClass(),this.bindBackdropStyle()):"exit"===ge.toState&&this.setExitAnimationClass(),this.animationStateChanged.emit(ge)}startExitAnimation(){this.state="exit",this.cdr.markForCheck()}ngOnDestroy(){this.setMaskExitAnimationClass(!0),this.destroy$.next(!0),this.destroy$.complete()}setupMouseListeners(ge){this.ngZone.runOutsideAngular(()=>{(0,C.R)(this.host.nativeElement,"mouseup").pipe((0,u.R)(this.destroy$)).subscribe(()=>{this.mouseDown&&setTimeout(()=>{this.mouseDown=!1})}),(0,C.R)(ge.nativeElement,"mousedown").pipe((0,u.R)(this.destroy$)).subscribe(()=>{this.mouseDown=!0})})}static#e=this.\u0275fac=function(Ze){i.$Z()};static#t=this.\u0275dir=i.lG2({type:pe,features:[i.qOj]})}return pe})(),Ut=(()=>{class pe{constructor(ge){this.config=ge}static#e=this.\u0275fac=function(Ze){return new(Ze||pe)(i.Y36(ot))};static#t=this.\u0275cmp=i.Xpm({type:pe,selectors:[["button","nz-modal-close",""]],hostAttrs:["aria-label","Close",1,"ant-modal-close"],exportAs:["NzModalCloseBuiltin"],attrs:ze,decls:2,vars:1,consts:[[1,"ant-modal-close-x"],[4,"nzStringTemplateOutlet"],["nz-icon","",1,"ant-modal-close-icon",3,"nzType"]],template:function(Ze,$e){1&Ze&&(i.TgZ(0,"span",0),i.YNc(1,Y,2,1,"ng-container",1),i.qZA()),2&Ze&&(i.xp6(1),i.Q6J("nzStringTemplateOutlet",$e.config.nzCloseIcon))},dependencies:[D.f,P.w,A.Ls],encapsulation:2,changeDetection:0})}return pe})(),qt=(()=>{class pe extends Lt{constructor(ge,Ze,$e,Ue,wt,De,Pe,Je,Ge,Ke,_e){super(ge,$e,Ue,wt,De,Pe,Je,Ge,Ke,_e),this.i18n=Ze,this.config=Ge,this.cancelTriggered=new i.vpe,this.okTriggered=new i.vpe,this.i18n.localeChange.pipe((0,u.R)(this.destroy$)).subscribe(()=>{this.locale=this.i18n.getLocaleData("Modal")})}ngOnInit(){this.setupMouseListeners(this.modalElementRef)}onCancel(){this.cancelTriggered.emit()}onOk(){this.okTriggered.emit()}static#e=this.\u0275fac=function(Ze){return new(Ze||pe)(i.Y36(i.R0b),i.Y36(x.wi),i.Y36(i.SBq),i.Y36(y.qV),i.Y36(i.sBO),i.Y36(i.Qsj),i.Y36(n.Iu),i.Y36(T.jY),i.Y36(ot),i.Y36(d.K0,8),i.Y36(i.QbO,8))};static#t=this.\u0275cmp=i.Xpm({type:pe,selectors:[["nz-modal-confirm-container"]],viewQuery:function(Ze,$e){if(1&Ze&&(i.Gf(t.Pl,7),i.Gf(G,7)),2&Ze){let Ue;i.iGM(Ue=i.CRH())&&($e.portalOutlet=Ue.first),i.iGM(Ue=i.CRH())&&($e.modalElementRef=Ue.first)}},hostAttrs:["tabindex","-1","role","dialog"],hostVars:10,hostBindings:function(Ze,$e){1&Ze&&(i.WFA("@modalContainer.start",function(wt){return $e.onAnimationStart(wt)})("@modalContainer.done",function(wt){return $e.onAnimationDone(wt)}),i.NdJ("click",function(wt){return $e.onContainerClick(wt)})),2&Ze&&(i.d8E("@.disabled",$e.config.nzNoAnimation)("@modalContainer",$e.state),i.Tol($e.config.nzWrapClassName?"ant-modal-wrap "+$e.config.nzWrapClassName:"ant-modal-wrap"),i.Udp("z-index",$e.config.nzZIndex),i.ekj("ant-modal-wrap-rtl","rtl"===$e.dir)("ant-modal-centered",$e.config.nzCentered))},outputs:{cancelTriggered:"cancelTriggered",okTriggered:"okTriggered"},exportAs:["nzModalConfirmContainer"],features:[i.qOj],decls:17,vars:13,consts:[["role","document",1,"ant-modal",3,"ngClass","ngStyle"],["modalElement",""],[1,"ant-modal-content"],["nz-modal-close","",3,"click",4,"ngIf"],[1,"ant-modal-body",3,"ngStyle"],[1,"ant-modal-confirm-body-wrapper"],[1,"ant-modal-confirm-body"],["nz-icon","",3,"nzType"],[1,"ant-modal-confirm-title"],[4,"nzStringTemplateOutlet"],[1,"ant-modal-confirm-content"],["cdkPortalOutlet",""],[3,"innerHTML",4,"ngIf"],[1,"ant-modal-confirm-btns"],["nz-button","",3,"nzLoading","disabled","click",4,"ngIf"],["nz-button","",3,"nzType","nzLoading","disabled","nzDanger","click",4,"ngIf"],["nz-modal-close","",3,"click"],[3,"innerHTML"],["nz-button","",3,"nzLoading","disabled","click"],["nz-button","",3,"nzType","nzLoading","disabled","nzDanger","click"]],template:function(Ze,$e){1&Ze&&(i.TgZ(0,"div",0,1),i.ALo(2,"nzToCssUnit"),i.TgZ(3,"div",2),i.YNc(4,V,1,0,"button",3),i.TgZ(5,"div",4)(6,"div",5)(7,"div",6),i._UZ(8,"span",7),i.TgZ(9,"span",8),i.YNc(10,K,2,1,"ng-container",9),i.qZA(),i.TgZ(11,"div",10),i.YNc(12,te,0,0,"ng-template",11),i.YNc(13,ne,1,1,"div",12),i.qZA()(),i.TgZ(14,"div",13),i.YNc(15,fe,2,4,"button",14),i.YNc(16,re,2,6,"button",15),i.qZA()()()()()),2&Ze&&(i.Udp("width",i.lcZ(2,11,null==$e.config?null:$e.config.nzWidth)),i.Q6J("ngClass",$e.config.nzClassName)("ngStyle",$e.config.nzStyle),i.xp6(4),i.Q6J("ngIf",$e.config.nzClosable),i.xp6(1),i.Q6J("ngStyle",$e.config.nzBodyStyle),i.xp6(3),i.Q6J("nzType",$e.config.nzIconType),i.xp6(2),i.Q6J("nzStringTemplateOutlet",$e.config.nzTitle),i.xp6(3),i.Q6J("ngIf",$e.isStringContent),i.xp6(2),i.Q6J("ngIf",null!==$e.config.nzCancelText),i.xp6(1),i.Q6J("ngIf",null!==$e.config.nzOkText))},dependencies:[d.mk,d.O5,d.PC,D.f,t.Pl,_.ix,P.w,S.dQ,A.Ls,Ut,k.ku],encapsulation:2,data:{animation:[Ee.modalContainer]}})}return pe})(),en=(()=>{class pe{constructor(ge,Ze){this.i18n=ge,this.config=Ze,this.buttonsFooter=!1,this.buttons=[],this.cancelTriggered=new i.vpe,this.okTriggered=new i.vpe,this.destroy$=new l.x,Array.isArray(Ze.nzFooter)&&(this.buttonsFooter=!0,this.buttons=Ze.nzFooter.map(cn)),this.i18n.localeChange.pipe((0,u.R)(this.destroy$)).subscribe(()=>{this.locale=this.i18n.getLocaleData("Modal")})}onCancel(){this.cancelTriggered.emit()}onOk(){this.okTriggered.emit()}getButtonCallableProp(ge,Ze){const $e=ge[Ze],Ue=this.modalRef.getContentComponent();return"function"==typeof $e?$e.apply(ge,Ue&&[Ue]):$e}onButtonClick(ge){if(!this.getButtonCallableProp(ge,"loading")){const $e=this.getButtonCallableProp(ge,"onClick");ge.autoLoading&&(0,g.tI)($e)&&(ge.loading=!0,$e.then(()=>ge.loading=!1).catch(Ue=>{throw ge.loading=!1,Ue}))}}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(Ze){return new(Ze||pe)(i.Y36(x.wi),i.Y36(ot))};static#t=this.\u0275cmp=i.Xpm({type:pe,selectors:[["div","nz-modal-footer",""]],hostAttrs:[1,"ant-modal-footer"],inputs:{modalRef:"modalRef"},outputs:{cancelTriggered:"cancelTriggered",okTriggered:"okTriggered"},exportAs:["NzModalFooterBuiltin"],attrs:be,decls:3,vars:2,consts:[[4,"ngIf","ngIfElse"],["defaultFooterButtons",""],[4,"nzStringTemplateOutlet","nzStringTemplateOutletContext"],[3,"innerHTML",4,"ngIf"],[4,"ngIf"],[3,"innerHTML"],["nz-button","",3,"hidden","nzLoading","disabled","nzType","nzDanger","nzShape","nzSize","nzGhost","click",4,"ngFor","ngForOf"],["nz-button","",3,"hidden","nzLoading","disabled","nzType","nzDanger","nzShape","nzSize","nzGhost","click"],["nz-button","",3,"nzLoading","disabled","click",4,"ngIf"],["nz-button","",3,"nzType","nzDanger","nzLoading","disabled","click",4,"ngIf"],["nz-button","",3,"nzLoading","disabled","click"],["nz-button","",3,"nzType","nzDanger","nzLoading","disabled","click"]],template:function(Ze,$e){if(1&Ze&&(i.YNc(0,xe,2,5,"ng-container",0),i.YNc(1,q,2,2,"ng-template",null,1,i.W1O)),2&Ze){const Ue=i.MAs(2);i.Q6J("ngIf",$e.config.nzFooter)("ngIfElse",Ue)}},dependencies:[d.sg,d.O5,D.f,_.ix,P.w,S.dQ],encapsulation:2})}return pe})();function cn(pe){return{type:null,size:"default",autoLoading:!0,show:!0,loading:!1,disabled:!1,...pe}}let Wt=(()=>{class pe{constructor(ge){this.config=ge}static#e=this.\u0275fac=function(Ze){return new(Ze||pe)(i.Y36(ot))};static#t=this.\u0275cmp=i.Xpm({type:pe,selectors:[["div","nz-modal-title",""]],hostAttrs:[1,"ant-modal-header"],exportAs:["NzModalTitleBuiltin"],attrs:ve,decls:2,vars:1,consts:[[1,"ant-modal-title"],[4,"nzStringTemplateOutlet"],[3,"innerHTML"]],template:function(Ze,$e){1&Ze&&(i.TgZ(0,"div",0),i.YNc(1,ee,2,1,"ng-container",1),i.qZA()),2&Ze&&(i.xp6(1),i.Q6J("nzStringTemplateOutlet",$e.config.nzTitle))},dependencies:[D.f],encapsulation:2,changeDetection:0})}return pe})(),Vt=(()=>{class pe extends Lt{constructor(ge,Ze,$e,Ue,wt,De,Pe,Je,Ge,Ke){super(ge,Ze,$e,Ue,wt,De,Pe,Je,Ge,Ke),this.config=Je}ngOnInit(){this.setupMouseListeners(this.modalElementRef)}static#e=this.\u0275fac=function(Ze){return new(Ze||pe)(i.Y36(i.R0b),i.Y36(i.SBq),i.Y36(y.qV),i.Y36(i.sBO),i.Y36(i.Qsj),i.Y36(n.Iu),i.Y36(T.jY),i.Y36(ot),i.Y36(d.K0,8),i.Y36(i.QbO,8))};static#t=this.\u0275cmp=i.Xpm({type:pe,selectors:[["nz-modal-container"]],viewQuery:function(Ze,$e){if(1&Ze&&(i.Gf(t.Pl,7),i.Gf(G,7)),2&Ze){let Ue;i.iGM(Ue=i.CRH())&&($e.portalOutlet=Ue.first),i.iGM(Ue=i.CRH())&&($e.modalElementRef=Ue.first)}},hostAttrs:["tabindex","-1","role","dialog"],hostVars:10,hostBindings:function(Ze,$e){1&Ze&&(i.WFA("@modalContainer.start",function(wt){return $e.onAnimationStart(wt)})("@modalContainer.done",function(wt){return $e.onAnimationDone(wt)}),i.NdJ("click",function(wt){return $e.onContainerClick(wt)})),2&Ze&&(i.d8E("@.disabled",$e.config.nzNoAnimation)("@modalContainer",$e.state),i.Tol($e.config.nzWrapClassName?"ant-modal-wrap "+$e.config.nzWrapClassName:"ant-modal-wrap"),i.Udp("z-index",$e.config.nzZIndex),i.ekj("ant-modal-wrap-rtl","rtl"===$e.dir)("ant-modal-centered",$e.config.nzCentered))},exportAs:["nzModalContainer"],features:[i.qOj],decls:10,vars:11,consts:[["role","document",1,"ant-modal",3,"ngClass","ngStyle"],["modalElement",""],[1,"ant-modal-content"],["nz-modal-close","",3,"click",4,"ngIf"],["nz-modal-title","",4,"ngIf"],[1,"ant-modal-body",3,"ngStyle"],["cdkPortalOutlet",""],[3,"innerHTML",4,"ngIf"],["nz-modal-footer","",3,"modalRef","cancelTriggered","okTriggered",4,"ngIf"],["nz-modal-close","",3,"click"],["nz-modal-title",""],[3,"innerHTML"],["nz-modal-footer","",3,"modalRef","cancelTriggered","okTriggered"]],template:function(Ze,$e){1&Ze&&(i.TgZ(0,"div",0,1),i.ALo(2,"nzToCssUnit"),i.TgZ(3,"div",2),i.YNc(4,Be,1,0,"button",3),i.YNc(5,Re,1,0,"div",4),i.TgZ(6,"div",5),i.YNc(7,ct,0,0,"ng-template",6),i.YNc(8,Ae,1,1,"div",7),i.qZA(),i.YNc(9,Mt,1,1,"div",8),i.qZA()()),2&Ze&&(i.Udp("width",i.lcZ(2,9,null==$e.config?null:$e.config.nzWidth)),i.Q6J("ngClass",$e.config.nzClassName)("ngStyle",$e.config.nzStyle),i.xp6(4),i.Q6J("ngIf",$e.config.nzClosable),i.xp6(1),i.Q6J("ngIf",$e.config.nzTitle),i.xp6(1),i.Q6J("ngStyle",$e.config.nzBodyStyle),i.xp6(2),i.Q6J("ngIf",$e.isStringContent),i.xp6(1),i.Q6J("ngIf",null!==$e.config.nzFooter))},dependencies:[d.mk,d.O5,d.PC,t.Pl,Ut,en,Wt,k.ku],encapsulation:2,data:{animation:[Ee.modalContainer]}})}return pe})();class st{constructor(qe,ge,Ze){this.overlayRef=qe,this.config=ge,this.containerInstance=Ze,this.componentInstance=null,this.state=0,this.afterClose=new l.x,this.afterOpen=new l.x,this.destroy$=new l.x,Ze.animationStateChanged.pipe((0,z.h)($e=>"done"===$e.phaseName&&"enter"===$e.toState),(0,M.q)(1)).subscribe(()=>{this.afterOpen.next(),this.afterOpen.complete(),ge.nzAfterOpen instanceof i.vpe&&ge.nzAfterOpen.emit()}),Ze.animationStateChanged.pipe((0,z.h)($e=>"done"===$e.phaseName&&"exit"===$e.toState),(0,M.q)(1)).subscribe(()=>{clearTimeout(this.closeTimeout),this._finishDialogClose()}),Ze.containerClick.pipe((0,M.q)(1),(0,u.R)(this.destroy$)).subscribe(()=>{!this.config.nzCancelLoading&&!this.config.nzOkLoading&&this.trigger("cancel")}),qe.keydownEvents().pipe((0,z.h)($e=>this.config.nzKeyboard&&!this.config.nzCancelLoading&&!this.config.nzOkLoading&&$e.keyCode===R.hY&&!(0,R.Vb)($e))).subscribe($e=>{$e.preventDefault(),this.trigger("cancel")}),Ze.cancelTriggered.pipe((0,u.R)(this.destroy$)).subscribe(()=>this.trigger("cancel")),Ze.okTriggered.pipe((0,u.R)(this.destroy$)).subscribe(()=>this.trigger("ok")),qe.detachments().subscribe(()=>{this.afterClose.next(this.result),this.afterClose.complete(),ge.nzAfterClose instanceof i.vpe&&ge.nzAfterClose.emit(this.result),this.componentInstance=null,this.overlayRef.dispose()})}getContentComponent(){return this.componentInstance}getElement(){return this.containerInstance.getNativeElement()}destroy(qe){this.close(qe)}triggerOk(){return this.trigger("ok")}triggerCancel(){return this.trigger("cancel")}close(qe){0===this.state&&(this.result=qe,this.containerInstance.animationStateChanged.pipe((0,z.h)(ge=>"start"===ge.phaseName),(0,M.q)(1)).subscribe(ge=>{this.overlayRef.detachBackdrop(),this.closeTimeout=setTimeout(()=>{this._finishDialogClose()},ge.totalTime+100)}),this.containerInstance.startExitAnimation(),this.state=1)}updateConfig(qe){Object.assign(this.config,qe),this.containerInstance.bindBackdropStyle(),this.containerInstance.cdr.markForCheck()}getState(){return this.state}getConfig(){return this.config}getBackdropElement(){return this.overlayRef.backdropElement}trigger(qe){var ge=this;return(0,e.Z)(function*(){if(1===ge.state)return;const Ze={ok:ge.config.nzOnOk,cancel:ge.config.nzOnCancel}[qe],$e={ok:"nzOkLoading",cancel:"nzCancelLoading"}[qe];if(!ge.config[$e])if(Ze instanceof i.vpe)Ze.emit(ge.getContentComponent());else if("function"==typeof Ze){const wt=Ze(ge.getContentComponent());if((0,g.tI)(wt)){ge.config[$e]=!0;let De=!1;try{De=yield wt}finally{ge.config[$e]=!1,ge.closeWhitResult(De)}}else ge.closeWhitResult(wt)}})()}closeWhitResult(qe){!1!==qe&&this.close(qe)}_finishDialogClose(){this.state=2,this.overlayRef.dispose(),this.destroy$.next()}}let He=(()=>{class pe{get openModals(){return this.parentModal?this.parentModal.openModals:this.openModalsAtThisLevel}get _afterAllClosed(){const ge=this.parentModal;return ge?ge._afterAllClosed:this.afterAllClosedAtThisLevel}constructor(ge,Ze,$e,Ue,wt){this.overlay=ge,this.injector=Ze,this.nzConfigService=$e,this.parentModal=Ue,this.directionality=wt,this.openModalsAtThisLevel=[],this.afterAllClosedAtThisLevel=new l.x,this.afterAllClose=(0,E.P)(()=>this.openModals.length?this._afterAllClosed:this._afterAllClosed.pipe((0,h.O)(void 0)))}create(ge){return this.open(ge.nzContent,ge)}closeAll(){this.closeModals(this.openModals)}confirm(ge={},Ze="confirm"){return"nzFooter"in ge&&(0,v.ZK)('The Confirm-Modal doesn\'t support "nzFooter", this property will be ignored.'),"nzWidth"in ge||(ge.nzWidth=416),"nzMaskClosable"in ge||(ge.nzMaskClosable=!1),ge.nzModalType="confirm",ge.nzClassName=`ant-modal-confirm ant-modal-confirm-${Ze} ${ge.nzClassName||""}`,this.create(ge)}info(ge={}){return this.confirmFactory(ge,"info")}success(ge={}){return this.confirmFactory(ge,"success")}error(ge={}){return this.confirmFactory(ge,"error")}warning(ge={}){return this.confirmFactory(ge,"warning")}open(ge,Ze){const $e=function Ie(pe,qe){return{...qe,...pe}}(Ze||{},new ot),Ue=this.createOverlay($e),wt=this.attachModalContainer(Ue,$e),De=this.attachModalContent(ge,wt,Ue,$e);return wt.modalRef=De,this.openModals.push(De),De.afterClose.subscribe(()=>this.removeOpenModal(De)),De}removeOpenModal(ge){const Ze=this.openModals.indexOf(ge);Ze>-1&&(this.openModals.splice(Ze,1),this.openModals.length||this._afterAllClosed.next())}closeModals(ge){let Ze=ge.length;for(;Ze--;)ge[Ze].close(),this.openModals.length||this._afterAllClosed.next()}createOverlay(ge){const Ze=this.nzConfigService.getConfigForComponent(U)||{},$e=new n.X_({hasBackdrop:!0,scrollStrategy:this.overlay.scrollStrategies.block(),positionStrategy:this.overlay.position().global(),disposeOnNavigation:Ne(ge.nzCloseOnNavigation,Ze.nzCloseOnNavigation,!0),direction:Ne(ge.nzDirection,Ze.nzDirection,this.directionality.value)});return Ne(ge.nzMask,Ze.nzMask,!0)&&($e.backdropClass=de),this.overlay.create($e)}attachModalContainer(ge,Ze){const Ue=i.zs3.create({parent:Ze&&Ze.nzViewContainerRef&&Ze.nzViewContainerRef.injector||this.injector,providers:[{provide:n.Iu,useValue:ge},{provide:ot,useValue:Ze}]}),De=new t.C5("confirm"===Ze.nzModalType?qt:Vt,Ze.nzViewContainerRef,Ue);return ge.attach(De).instance}attachModalContent(ge,Ze,$e,Ue){const wt=new st($e,Ue,Ze);if(ge instanceof i.Rgc)Ze.attachTemplatePortal(new t.UE(ge,null,{$implicit:Ue.nzData,modalRef:wt}));else if((0,g.DX)(ge)&&"string"!=typeof ge){const De=this.createInjector(wt,Ue),Pe=Ze.attachComponentPortal(new t.C5(ge,Ue.nzViewContainerRef,De));wt.componentInstance=Pe.instance}else Ze.attachStringContent();return wt}createInjector(ge,Ze){return i.zs3.create({parent:Ze&&Ze.nzViewContainerRef&&Ze.nzViewContainerRef.injector||this.injector,providers:[{provide:st,useValue:ge},{provide:B,useValue:Ze.nzData}]})}confirmFactory(ge={},Ze){return"nzIconType"in ge||(ge.nzIconType={info:"info-circle",success:"check-circle",error:"close-circle",warning:"exclamation-circle"}[Ze]),"nzCancelText"in ge||(ge.nzCancelText=null),this.confirm(ge,Ze)}ngOnDestroy(){this.closeModals(this.openModalsAtThisLevel),this.afterAllClosedAtThisLevel.complete()}static#e=this.\u0275fac=function(Ze){return new(Ze||pe)(i.LFG(n.aV),i.LFG(i.zs3),i.LFG(T.jY),i.LFG(pe,12),i.LFG($.Is,8))};static#t=this.\u0275prov=i.Yz7({token:pe,factory:pe.\u0275fac})}return pe})(),Qe=(()=>{class pe{static#e=this.\u0275fac=function(Ze){return new(Ze||pe)};static#t=this.\u0275mod=i.oAB({type:pe});static#n=this.\u0275inj=i.cJS({providers:[He],imports:[d.ez,$.vT,n.U8,D.T,t.eL,x.YI,_.sL,A.PV,k.YS,W.g,k.YS]})}return pe})()},2274:(nt,I,o)=>{"use strict";o.d(I,{dE:()=>Mt,uK:()=>je});var e=o(97582),n=o(65879),t=o(78645),i=o(97328),l=o(59773),C=o(83064),E=o(99087),u=o(27754),z=o(12131),M=o(49388),h=o(96814),v=o(90551),g=o(60095),d=o(9691);const p=["nz-pagination-item",""];function f(ot,mt){if(1&ot&&(n.TgZ(0,"a"),n._uU(1),n.qZA()),2&ot){const we=n.oxw().page;n.xp6(1),n.Oqu(we)}}function y(ot,mt){1&ot&&n._UZ(0,"span",9)}function T(ot,mt){1&ot&&n._UZ(0,"span",10)}function x(ot,mt){if(1&ot&&(n.TgZ(0,"button",6),n.ynx(1,2),n.YNc(2,y,1,0,"span",7),n.YNc(3,T,1,0,"span",8),n.BQk(),n.qZA()),2&ot){const we=n.oxw(2);n.Q6J("disabled",we.disabled),n.xp6(1),n.Q6J("ngSwitch",we.direction),n.xp6(1),n.Q6J("ngSwitchCase","rtl")}}function D(ot,mt){1&ot&&n._UZ(0,"span",10)}function _(ot,mt){1&ot&&n._UZ(0,"span",9)}function P(ot,mt){if(1&ot&&(n.TgZ(0,"button",6),n.ynx(1,2),n.YNc(2,D,1,0,"span",11),n.YNc(3,_,1,0,"span",12),n.BQk(),n.qZA()),2&ot){const we=n.oxw(2);n.Q6J("disabled",we.disabled),n.xp6(1),n.Q6J("ngSwitch",we.direction),n.xp6(1),n.Q6J("ngSwitchCase","rtl")}}function S(ot,mt){1&ot&&n._UZ(0,"span",20)}function A(ot,mt){1&ot&&n._UZ(0,"span",21)}function k(ot,mt){if(1&ot&&(n.ynx(0,2),n.YNc(1,S,1,0,"span",18),n.YNc(2,A,1,0,"span",19),n.BQk()),2&ot){const we=n.oxw(4);n.Q6J("ngSwitch",we.direction),n.xp6(1),n.Q6J("ngSwitchCase","rtl")}}function R(ot,mt){1&ot&&n._UZ(0,"span",21)}function $(ot,mt){1&ot&&n._UZ(0,"span",20)}function W(ot,mt){if(1&ot&&(n.ynx(0,2),n.YNc(1,R,1,0,"span",22),n.YNc(2,$,1,0,"span",23),n.BQk()),2&ot){const we=n.oxw(4);n.Q6J("ngSwitch",we.direction),n.xp6(1),n.Q6J("ngSwitchCase","rtl")}}function ze(ot,mt){if(1&ot&&(n.TgZ(0,"div",15),n.ynx(1,2),n.YNc(2,k,3,2,"ng-container",16),n.YNc(3,W,3,2,"ng-container",16),n.BQk(),n.TgZ(4,"span",17),n._uU(5,"\u2022\u2022\u2022"),n.qZA()()),2&ot){const we=n.oxw(2).$implicit;n.xp6(1),n.Q6J("ngSwitch",we),n.xp6(1),n.Q6J("ngSwitchCase","prev_5"),n.xp6(1),n.Q6J("ngSwitchCase","next_5")}}function Y(ot,mt){if(1&ot&&(n.ynx(0),n.TgZ(1,"a",13),n.YNc(2,ze,6,3,"div",14),n.qZA(),n.BQk()),2&ot){const we=n.oxw().$implicit;n.xp6(1),n.Q6J("ngSwitch",we)}}function G(ot,mt){1&ot&&(n.ynx(0,2),n.YNc(1,f,2,1,"a",3),n.YNc(2,x,4,3,"button",4),n.YNc(3,P,4,3,"button",4),n.YNc(4,Y,3,1,"ng-container",5),n.BQk()),2&ot&&(n.Q6J("ngSwitch",mt.$implicit),n.xp6(1),n.Q6J("ngSwitchCase","page"),n.xp6(1),n.Q6J("ngSwitchCase","prev"),n.xp6(1),n.Q6J("ngSwitchCase","next"))}function V(ot,mt){}const K=function(ot,mt){return{$implicit:ot,page:mt}},te=["containerTemplate"];function ne(ot,mt){if(1&ot){const we=n.EpF();n.TgZ(0,"ul")(1,"li",1),n.NdJ("click",function(){n.CHM(we);const U=n.oxw();return n.KtG(U.prePage())}),n.qZA(),n.TgZ(2,"li",2)(3,"input",3),n.NdJ("keydown.enter",function(U){n.CHM(we);const B=n.oxw();return n.KtG(B.jumpToPageViaInput(U))}),n.qZA(),n.TgZ(4,"span",4),n._uU(5,"/"),n.qZA(),n._uU(6),n.qZA(),n.TgZ(7,"li",5),n.NdJ("click",function(){n.CHM(we);const U=n.oxw();return n.KtG(U.nextPage())}),n.qZA()()}if(2&ot){const we=n.oxw();n.xp6(1),n.Q6J("disabled",we.isFirstIndex)("direction",we.dir)("itemRender",we.itemRender),n.uIk("title",we.locale.prev_page),n.xp6(1),n.uIk("title",we.pageIndex+"/"+we.lastIndex),n.xp6(1),n.Q6J("disabled",we.disabled)("value",we.pageIndex),n.xp6(3),n.hij(" ",we.lastIndex," "),n.xp6(1),n.Q6J("disabled",we.isLastIndex)("direction",we.dir)("itemRender",we.itemRender),n.uIk("title",null==we.locale?null:we.locale.next_page)}}const fe=["nz-pagination-options",""];function re(ot,mt){if(1&ot&&n._UZ(0,"nz-option",4),2&ot){const we=mt.$implicit;n.Q6J("nzLabel",we.label)("nzValue",we.value)}}function be(ot,mt){if(1&ot){const we=n.EpF();n.TgZ(0,"nz-select",2),n.NdJ("ngModelChange",function(U){n.CHM(we);const B=n.oxw();return n.KtG(B.onPageSizeChange(U))}),n.YNc(1,re,1,2,"nz-option",3),n.qZA()}if(2&ot){const we=n.oxw();n.Q6J("nzDisabled",we.disabled)("nzSize",we.nzSize)("ngModel",we.pageSize),n.xp6(1),n.Q6J("ngForOf",we.listOfPageSizeOption)("ngForTrackBy",we.trackByOption)}}function le(ot,mt){if(1&ot){const we=n.EpF();n.TgZ(0,"div",5),n._uU(1),n.TgZ(2,"input",6),n.NdJ("keydown.enter",function(U){n.CHM(we);const B=n.oxw();return n.KtG(B.jumpToPageViaInput(U))}),n.qZA(),n._uU(3),n.qZA()}if(2&ot){const we=n.oxw();n.xp6(1),n.hij(" ",we.locale.jump_to," "),n.xp6(1),n.Q6J("disabled",we.disabled),n.xp6(1),n.hij(" ",we.locale.page," ")}}function ce(ot,mt){}const Q=function(ot,mt){return{$implicit:ot,range:mt}};function ie(ot,mt){if(1&ot&&(n.TgZ(0,"li",4),n.YNc(1,ce,0,0,"ng-template",5),n.qZA()),2&ot){const we=n.oxw(2);n.xp6(1),n.Q6J("ngTemplateOutlet",we.showTotal)("ngTemplateOutletContext",n.WLB(2,Q,we.total,we.ranges))}}function ae(ot,mt){if(1&ot){const we=n.EpF();n.TgZ(0,"li",6),n.NdJ("gotoIndex",function(U){n.CHM(we);const B=n.oxw(2);return n.KtG(B.jumpPage(U))})("diffIndex",function(U){n.CHM(we);const B=n.oxw(2);return n.KtG(B.jumpDiff(U))}),n.qZA()}if(2&ot){const we=mt.$implicit,de=n.oxw(2);n.Q6J("locale",de.locale)("type",we.type)("index",we.index)("disabled",!!we.disabled)("itemRender",de.itemRender)("active",de.pageIndex===we.index)("direction",de.dir)}}function xe(ot,mt){if(1&ot){const we=n.EpF();n.TgZ(0,"li",7),n.NdJ("pageIndexChange",function(U){n.CHM(we);const B=n.oxw(2);return n.KtG(B.onPageIndexChange(U))})("pageSizeChange",function(U){n.CHM(we);const B=n.oxw(2);return n.KtG(B.onPageSizeChange(U))}),n.qZA()}if(2&ot){const we=n.oxw(2);n.Q6J("total",we.total)("locale",we.locale)("disabled",we.disabled)("nzSize",we.nzSize)("showSizeChanger",we.showSizeChanger)("showQuickJumper",we.showQuickJumper)("pageIndex",we.pageIndex)("pageSize",we.pageSize)("pageSizeOptions",we.pageSizeOptions)}}function Me(ot,mt){if(1&ot&&(n.TgZ(0,"ul"),n.YNc(1,ie,2,5,"li",1),n.YNc(2,ae,1,7,"li",2),n.YNc(3,xe,1,9,"li",3),n.qZA()),2&ot){const we=n.oxw();n.xp6(1),n.Q6J("ngIf",we.showTotal),n.xp6(1),n.Q6J("ngForOf",we.listOfPageItem)("ngForTrackBy",we.trackByPageItem),n.xp6(1),n.Q6J("ngIf",we.showQuickJumper||we.showSizeChanger)}}function Ye(ot,mt){}function q(ot,mt){if(1&ot&&(n.ynx(0),n.YNc(1,Ye,0,0,"ng-template",6),n.BQk()),2&ot){n.oxw(2);const we=n.MAs(2);n.xp6(1),n.Q6J("ngTemplateOutlet",we.template)}}function ve(ot,mt){if(1&ot&&(n.ynx(0),n.YNc(1,q,2,1,"ng-container",5),n.BQk()),2&ot){const we=n.oxw(),de=n.MAs(4);n.xp6(1),n.Q6J("ngIf",we.nzSimple)("ngIfElse",de.template)}}let ee=(()=>{class ot{constructor(){this.active=!1,this.index=null,this.disabled=!1,this.direction="ltr",this.type=null,this.itemRender=null,this.diffIndex=new n.vpe,this.gotoIndex=new n.vpe,this.title=null}clickItem(){this.disabled||("page"===this.type?this.gotoIndex.emit(this.index):this.diffIndex.emit({next:1,prev:-1,prev_5:-5,next_5:5}[this.type]))}ngOnChanges(we){const{locale:de,index:U,type:B}=we;(de||U||B)&&(this.title={page:`${this.index}`,next:this.locale?.next_page,prev:this.locale?.prev_page,prev_5:this.locale?.prev_5,next_5:this.locale?.next_5}[this.type])}static#e=this.\u0275fac=function(de){return new(de||ot)};static#t=this.\u0275cmp=n.Xpm({type:ot,selectors:[["li","nz-pagination-item",""]],hostVars:19,hostBindings:function(de,U){1&de&&n.NdJ("click",function(){return U.clickItem()}),2&de&&(n.uIk("title",U.title),n.ekj("ant-pagination-prev","prev"===U.type)("ant-pagination-next","next"===U.type)("ant-pagination-item","page"===U.type)("ant-pagination-jump-prev","prev_5"===U.type)("ant-pagination-jump-prev-custom-icon","prev_5"===U.type)("ant-pagination-jump-next","next_5"===U.type)("ant-pagination-jump-next-custom-icon","next_5"===U.type)("ant-pagination-disabled",U.disabled)("ant-pagination-item-active",U.active))},inputs:{active:"active",locale:"locale",index:"index",disabled:"disabled",direction:"direction",type:"type",itemRender:"itemRender"},outputs:{diffIndex:"diffIndex",gotoIndex:"gotoIndex"},features:[n.TTD],attrs:p,decls:3,vars:5,consts:[["renderItemTemplate",""],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"ngSwitch"],[4,"ngSwitchCase"],["type","button","class","ant-pagination-item-link",3,"disabled",4,"ngSwitchCase"],[4,"ngSwitchDefault"],["type","button",1,"ant-pagination-item-link",3,"disabled"],["nz-icon","","nzType","right",4,"ngSwitchCase"],["nz-icon","","nzType","left",4,"ngSwitchDefault"],["nz-icon","","nzType","right"],["nz-icon","","nzType","left"],["nz-icon","","nzType","left",4,"ngSwitchCase"],["nz-icon","","nzType","right",4,"ngSwitchDefault"],[1,"ant-pagination-item-link",3,"ngSwitch"],["class","ant-pagination-item-container",4,"ngSwitchDefault"],[1,"ant-pagination-item-container"],[3,"ngSwitch",4,"ngSwitchCase"],[1,"ant-pagination-item-ellipsis"],["nz-icon","","nzType","double-right","class","ant-pagination-item-link-icon",4,"ngSwitchCase"],["nz-icon","","nzType","double-left","class","ant-pagination-item-link-icon",4,"ngSwitchDefault"],["nz-icon","","nzType","double-right",1,"ant-pagination-item-link-icon"],["nz-icon","","nzType","double-left",1,"ant-pagination-item-link-icon"],["nz-icon","","nzType","double-left","class","ant-pagination-item-link-icon",4,"ngSwitchCase"],["nz-icon","","nzType","double-right","class","ant-pagination-item-link-icon",4,"ngSwitchDefault"]],template:function(de,U){if(1&de&&(n.YNc(0,G,5,4,"ng-template",null,0,n.W1O),n.YNc(2,V,0,0,"ng-template",1)),2&de){const B=n.MAs(1);n.xp6(2),n.Q6J("ngTemplateOutlet",U.itemRender||B)("ngTemplateOutletContext",n.WLB(2,K,U.type,U.index))}},dependencies:[h.tP,h.RF,h.n9,h.ED,v.Ls],encapsulation:2,changeDetection:0})}return ot})(),Be=(()=>{class ot{constructor(we,de,U,B){this.cdr=we,this.renderer=de,this.elementRef=U,this.directionality=B,this.itemRender=null,this.disabled=!1,this.total=0,this.pageIndex=1,this.pageSize=10,this.pageIndexChange=new n.vpe,this.lastIndex=0,this.isFirstIndex=!1,this.isLastIndex=!1,this.dir="ltr",this.destroy$=new t.x,de.removeChild(de.parentNode(U.nativeElement),U.nativeElement)}ngOnInit(){this.directionality.change?.pipe((0,l.R)(this.destroy$)).subscribe(we=>{this.dir=we,this.updateRtlStyle(),this.cdr.detectChanges()}),this.dir=this.directionality.value,this.updateRtlStyle()}updateRtlStyle(){"rtl"===this.dir?this.renderer.addClass(this.elementRef.nativeElement,"ant-pagination-rtl"):this.renderer.removeClass(this.elementRef.nativeElement,"ant-pagination-rtl")}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}jumpToPageViaInput(we){const de=we.target,U=(0,u.He)(de.value,this.pageIndex);this.onPageIndexChange(U),de.value=`${this.pageIndex}`}prePage(){this.onPageIndexChange(this.pageIndex-1)}nextPage(){this.onPageIndexChange(this.pageIndex+1)}onPageIndexChange(we){this.pageIndexChange.next(we)}updateBindingValue(){this.lastIndex=Math.ceil(this.total/this.pageSize),this.isFirstIndex=1===this.pageIndex,this.isLastIndex=this.pageIndex===this.lastIndex}ngOnChanges(we){const{pageIndex:de,total:U,pageSize:B}=we;(de||U||B)&&this.updateBindingValue()}static#e=this.\u0275fac=function(de){return new(de||ot)(n.Y36(n.sBO),n.Y36(n.Qsj),n.Y36(n.SBq),n.Y36(M.Is,8))};static#t=this.\u0275cmp=n.Xpm({type:ot,selectors:[["nz-pagination-simple"]],viewQuery:function(de,U){if(1&de&&n.Gf(te,7),2&de){let B;n.iGM(B=n.CRH())&&(U.template=B.first)}},inputs:{itemRender:"itemRender",disabled:"disabled",locale:"locale",total:"total",pageIndex:"pageIndex",pageSize:"pageSize"},outputs:{pageIndexChange:"pageIndexChange"},features:[n.TTD],decls:2,vars:0,consts:[["containerTemplate",""],["nz-pagination-item","","type","prev",3,"disabled","direction","itemRender","click"],[1,"ant-pagination-simple-pager"],["size","3",3,"disabled","value","keydown.enter"],[1,"ant-pagination-slash"],["nz-pagination-item","","type","next",3,"disabled","direction","itemRender","click"]],template:function(de,U){1&de&&n.YNc(0,ne,8,12,"ng-template",null,0,n.W1O)},dependencies:[ee],encapsulation:2,changeDetection:0})}return ot})(),Re=(()=>{class ot{constructor(){this.nzSize="default",this.disabled=!1,this.showSizeChanger=!1,this.showQuickJumper=!1,this.total=0,this.pageIndex=1,this.pageSize=10,this.pageSizeOptions=[],this.pageIndexChange=new n.vpe,this.pageSizeChange=new n.vpe,this.listOfPageSizeOption=[]}onPageSizeChange(we){this.pageSize!==we&&this.pageSizeChange.next(we)}jumpToPageViaInput(we){const de=we.target,U=Math.floor((0,u.He)(de.value,this.pageIndex));this.pageIndexChange.next(U),de.value=""}trackByOption(we,de){return de.value}ngOnChanges(we){const{pageSize:de,pageSizeOptions:U,locale:B}=we;(de||U||B)&&(this.listOfPageSizeOption=[...new Set([...this.pageSizeOptions,this.pageSize])].map(Ee=>({value:Ee,label:`${Ee} ${this.locale.items_per_page}`})))}static#e=this.\u0275fac=function(de){return new(de||ot)};static#t=this.\u0275cmp=n.Xpm({type:ot,selectors:[["li","nz-pagination-options",""]],hostAttrs:[1,"ant-pagination-options"],inputs:{nzSize:"nzSize",disabled:"disabled",showSizeChanger:"showSizeChanger",showQuickJumper:"showQuickJumper",locale:"locale",total:"total",pageIndex:"pageIndex",pageSize:"pageSize",pageSizeOptions:"pageSizeOptions"},outputs:{pageIndexChange:"pageIndexChange",pageSizeChange:"pageSizeChange"},features:[n.TTD],attrs:fe,decls:2,vars:2,consts:[["class","ant-pagination-options-size-changer",3,"nzDisabled","nzSize","ngModel","ngModelChange",4,"ngIf"],["class","ant-pagination-options-quick-jumper",4,"ngIf"],[1,"ant-pagination-options-size-changer",3,"nzDisabled","nzSize","ngModel","ngModelChange"],[3,"nzLabel","nzValue",4,"ngFor","ngForOf","ngForTrackBy"],[3,"nzLabel","nzValue"],[1,"ant-pagination-options-quick-jumper"],[3,"disabled","keydown.enter"]],template:function(de,U){1&de&&(n.YNc(0,be,2,5,"nz-select",0),n.YNc(1,le,4,3,"div",1)),2&de&&(n.Q6J("ngIf",U.showSizeChanger),n.xp6(1),n.Q6J("ngIf",U.showQuickJumper))},dependencies:[h.sg,h.O5,g.JJ,g.On,d.Ip,d.Vq],encapsulation:2,changeDetection:0})}return ot})(),ct=(()=>{class ot{constructor(we,de,U,B){this.cdr=we,this.renderer=de,this.elementRef=U,this.directionality=B,this.nzSize="default",this.itemRender=null,this.showTotal=null,this.disabled=!1,this.showSizeChanger=!1,this.showQuickJumper=!1,this.total=0,this.pageIndex=1,this.pageSize=10,this.pageSizeOptions=[10,20,30,40],this.pageIndexChange=new n.vpe,this.pageSizeChange=new n.vpe,this.ranges=[0,0],this.listOfPageItem=[],this.dir="ltr",this.destroy$=new t.x,de.removeChild(de.parentNode(U.nativeElement),U.nativeElement)}ngOnInit(){this.directionality.change?.pipe((0,l.R)(this.destroy$)).subscribe(we=>{this.dir=we,this.updateRtlStyle(),this.cdr.detectChanges()}),this.dir=this.directionality.value,this.updateRtlStyle()}updateRtlStyle(){"rtl"===this.dir?this.renderer.addClass(this.elementRef.nativeElement,"ant-pagination-rtl"):this.renderer.removeClass(this.elementRef.nativeElement,"ant-pagination-rtl")}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}jumpPage(we){this.onPageIndexChange(we)}jumpDiff(we){this.jumpPage(this.pageIndex+we)}trackByPageItem(we,de){return`${de.type}-${de.index}`}onPageIndexChange(we){this.pageIndexChange.next(we)}onPageSizeChange(we){this.pageSizeChange.next(we)}getLastIndex(we,de){return Math.ceil(we/de)}buildIndexes(){const we=this.getLastIndex(this.total,this.pageSize);this.listOfPageItem=this.getListOfPageItem(this.pageIndex,we)}getListOfPageItem(we,de){const B=(Ee,Ie)=>{const Ne=[];for(let pt=Ee;pt<=Ie;pt++)Ne.push({index:pt,type:"page"});return Ne};return Ee=de<=9?B(1,de):((Ie,Ne)=>{let pt=[];const Dt={type:"prev_5"},Lt={type:"next_5"},Ut=B(1,1),qt=B(de,de);return pt=Ie<5?[...B(2,4===Ie?6:5),Lt]:Ie{class ot{validatePageIndex(we,de){return we>de?de:we<1?1:we}onPageIndexChange(we){const de=this.getLastIndex(this.nzTotal,this.nzPageSize),U=this.validatePageIndex(we,de);U!==this.nzPageIndex&&!this.nzDisabled&&(this.nzPageIndex=U,this.nzPageIndexChange.emit(this.nzPageIndex))}onPageSizeChange(we){this.nzPageSize=we,this.nzPageSizeChange.emit(we);const de=this.getLastIndex(this.nzTotal,this.nzPageSize);this.nzPageIndex>de&&this.onPageIndexChange(de)}onTotalChange(we){const de=this.getLastIndex(we,this.nzPageSize);this.nzPageIndex>de&&Promise.resolve().then(()=>{this.onPageIndexChange(de),this.cdr.markForCheck()})}getLastIndex(we,de){return Math.ceil(we/de)}constructor(we,de,U,B,Ee){this.i18n=we,this.cdr=de,this.breakpointService=U,this.nzConfigService=B,this.directionality=Ee,this._nzModuleName="pagination",this.nzPageSizeChange=new n.vpe,this.nzPageIndexChange=new n.vpe,this.nzShowTotal=null,this.nzItemRender=null,this.nzSize="default",this.nzPageSizeOptions=[10,20,30,40],this.nzShowSizeChanger=!1,this.nzShowQuickJumper=!1,this.nzSimple=!1,this.nzDisabled=!1,this.nzResponsive=!1,this.nzHideOnSinglePage=!1,this.nzTotal=0,this.nzPageIndex=1,this.nzPageSize=10,this.showPagination=!0,this.size="default",this.dir="ltr",this.destroy$=new t.x,this.total$=new i.t(1)}ngOnInit(){this.i18n.localeChange.pipe((0,l.R)(this.destroy$)).subscribe(()=>{this.locale=this.i18n.getLocaleData("Pagination"),this.cdr.markForCheck()}),this.total$.pipe((0,l.R)(this.destroy$)).subscribe(we=>{this.onTotalChange(we)}),this.breakpointService.subscribe(E.WV).pipe((0,l.R)(this.destroy$)).subscribe(we=>{this.nzResponsive&&(this.size=we===E.G_.xs?"small":"default",this.cdr.markForCheck())}),this.directionality.change?.pipe((0,l.R)(this.destroy$)).subscribe(we=>{this.dir=we,this.cdr.detectChanges()}),this.dir=this.directionality.value}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}ngOnChanges(we){const{nzHideOnSinglePage:de,nzTotal:U,nzPageSize:B,nzSize:Ee}=we;U&&this.total$.next(this.nzTotal),(de||U||B)&&(this.showPagination=this.nzHideOnSinglePage&&this.nzTotal>this.nzPageSize||this.nzTotal>0&&!this.nzHideOnSinglePage),Ee&&(this.size=Ee.currentValue)}static#e=this.\u0275fac=function(de){return new(de||ot)(n.Y36(z.wi),n.Y36(n.sBO),n.Y36(E.r3),n.Y36(C.jY),n.Y36(M.Is,8))};static#t=this.\u0275cmp=n.Xpm({type:ot,selectors:[["nz-pagination"]],hostAttrs:[1,"ant-pagination"],hostVars:8,hostBindings:function(de,U){2&de&&n.ekj("ant-pagination-simple",U.nzSimple)("ant-pagination-disabled",U.nzDisabled)("mini",!U.nzSimple&&"small"===U.size)("ant-pagination-rtl","rtl"===U.dir)},inputs:{nzShowTotal:"nzShowTotal",nzItemRender:"nzItemRender",nzSize:"nzSize",nzPageSizeOptions:"nzPageSizeOptions",nzShowSizeChanger:"nzShowSizeChanger",nzShowQuickJumper:"nzShowQuickJumper",nzSimple:"nzSimple",nzDisabled:"nzDisabled",nzResponsive:"nzResponsive",nzHideOnSinglePage:"nzHideOnSinglePage",nzTotal:"nzTotal",nzPageIndex:"nzPageIndex",nzPageSize:"nzPageSize"},outputs:{nzPageSizeChange:"nzPageSizeChange",nzPageIndexChange:"nzPageIndexChange"},exportAs:["nzPagination"],features:[n.TTD],decls:5,vars:18,consts:[[4,"ngIf"],[3,"disabled","itemRender","locale","pageSize","total","pageIndex","pageIndexChange"],["simplePagination",""],[3,"nzSize","itemRender","showTotal","disabled","locale","showSizeChanger","showQuickJumper","total","pageIndex","pageSize","pageSizeOptions","pageIndexChange","pageSizeChange"],["defaultPagination",""],[4,"ngIf","ngIfElse"],[3,"ngTemplateOutlet"]],template:function(de,U){1&de&&(n.YNc(0,ve,2,2,"ng-container",0),n.TgZ(1,"nz-pagination-simple",1,2),n.NdJ("pageIndexChange",function(Ee){return U.onPageIndexChange(Ee)}),n.qZA(),n.TgZ(3,"nz-pagination-default",3,4),n.NdJ("pageIndexChange",function(Ee){return U.onPageIndexChange(Ee)})("pageSizeChange",function(Ee){return U.onPageSizeChange(Ee)}),n.qZA()),2&de&&(n.Q6J("ngIf",U.showPagination),n.xp6(1),n.Q6J("disabled",U.nzDisabled)("itemRender",U.nzItemRender)("locale",U.locale)("pageSize",U.nzPageSize)("total",U.nzTotal)("pageIndex",U.nzPageIndex),n.xp6(2),n.Q6J("nzSize",U.size)("itemRender",U.nzItemRender)("showTotal",U.nzShowTotal)("disabled",U.nzDisabled)("locale",U.locale)("showSizeChanger",U.nzShowSizeChanger)("showQuickJumper",U.nzShowQuickJumper)("total",U.nzTotal)("pageIndex",U.nzPageIndex)("pageSize",U.nzPageSize)("pageSizeOptions",U.nzPageSizeOptions))},dependencies:[h.O5,h.tP,Be,ct],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,C.oS)()],ot.prototype,"nzSize",void 0),(0,e.gn)([(0,C.oS)()],ot.prototype,"nzPageSizeOptions",void 0),(0,e.gn)([(0,C.oS)(),(0,u.yF)()],ot.prototype,"nzShowSizeChanger",void 0),(0,e.gn)([(0,C.oS)(),(0,u.yF)()],ot.prototype,"nzShowQuickJumper",void 0),(0,e.gn)([(0,C.oS)(),(0,u.yF)()],ot.prototype,"nzSimple",void 0),(0,e.gn)([(0,u.yF)()],ot.prototype,"nzDisabled",void 0),(0,e.gn)([(0,u.yF)()],ot.prototype,"nzResponsive",void 0),(0,e.gn)([(0,u.yF)()],ot.prototype,"nzHideOnSinglePage",void 0),(0,e.gn)([(0,u.Rn)()],ot.prototype,"nzTotal",void 0),(0,e.gn)([(0,u.Rn)()],ot.prototype,"nzPageIndex",void 0),(0,e.gn)([(0,u.Rn)()],ot.prototype,"nzPageSize",void 0),ot})(),je=(()=>{class ot{static#e=this.\u0275fac=function(de){return new(de||ot)};static#t=this.\u0275mod=n.oAB({type:ot});static#n=this.\u0275inj=n.cJS({imports:[M.vT,h.ez,g.u5,d.LV,z.YI,v.PV]})}return ot})()},6192:(nt,I,o)=>{"use strict";o.d(I,{YS:()=>g,ku:()=>E});var e=o(96814),n=o(65879),t=o(27754);o(6593);class C{static#e=this.formats={B:{max:1024},kB:{max:Math.pow(1024,2),prev:"B"},KB:{max:Math.pow(1024,2),prev:"B"},MB:{max:Math.pow(1024,3),prev:"kB"},GB:{max:Math.pow(1024,4),prev:"MB"},TB:{max:Number.MAX_SAFE_INTEGER,prev:"GB"}};transform(p,f=0,y="B",T){if(!((0,t.ui)(p)&&(0,t.ui)(f)&&f%1==0&&f>=0))return p;let x=p,D=y;for(;"B"!==D;)x*=1024,D=C.formats[D].prev;if(T){const P=(0,t.YM)(C.calculateResult(C.formats[T],x),f);return C.formatResult(P,T)}for(const _ in C.formats)if(C.formats.hasOwnProperty(_)){const P=C.formats[_];if(x{class d{transform(f,y="px"){let P="px";return["cm","mm","Q","in","pc","pt","px","em","ex","ch","rem","1h","vw","vh","vmin","vmax","%"].some(S=>S===y)&&(P=y),"number"==typeof f?`${f}${P}`:`${f}`}static#e=this.\u0275fac=function(y){return new(y||d)};static#t=this.\u0275pipe=n.Yjl({name:"nzToCssUnit",type:d,pure:!0})}return d})(),g=(()=>{class d{static#e=this.\u0275fac=function(y){return new(y||d)};static#t=this.\u0275mod=n.oAB({type:d});static#n=this.\u0275inj=n.cJS({imports:[e.ez]})}return d})()},19035:(nt,I,o)=>{"use strict";o.d(I,{JW:()=>te,_p:()=>fe});var e=o(97582),n=o(96814),t=o(65879),i=o(78645),l=o(59773),C=o(81374),E=o(64716),u=o(64194),z=o(83064),M=o(27754),h=o(96109),v=o(331),g=o(49388),d=o(42840),p=o(70855),f=o(41958),y=o(33651),T=o(90551),x=o(8324),D=o(85448),_=o(4300),P=o(12131);const S=["okBtn"],A=["cancelBtn"];function k(re,be){1&re&&(t.TgZ(0,"div",15),t._UZ(1,"span",16),t.qZA())}function R(re,be){if(1&re&&(t.ynx(0),t._UZ(1,"span",18),t.BQk()),2&re){const le=be.$implicit;t.xp6(1),t.Q6J("nzType",le||"exclamation-circle")}}function $(re,be){if(1&re&&(t.ynx(0),t.YNc(1,R,2,1,"ng-container",8),t.TgZ(2,"div",17),t._uU(3),t.qZA(),t.BQk()),2&re){const le=t.oxw(2);t.xp6(1),t.Q6J("nzStringTemplateOutlet",le.nzIcon),t.xp6(2),t.Oqu(le.nzTitle)}}function W(re,be){if(1&re&&(t.ynx(0),t._uU(1),t.BQk()),2&re){const le=t.oxw(2);t.xp6(1),t.Oqu(le.nzCancelText)}}function ze(re,be){1&re&&(t.ynx(0),t._uU(1),t.ALo(2,"nzI18n"),t.BQk()),2&re&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"Modal.cancelText")))}function Y(re,be){if(1&re&&(t.ynx(0),t._uU(1),t.BQk()),2&re){const le=t.oxw(2);t.xp6(1),t.Oqu(le.nzOkText)}}function G(re,be){1&re&&(t.ynx(0),t._uU(1),t.ALo(2,"nzI18n"),t.BQk()),2&re&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"Modal.okText")))}function V(re,be){if(1&re){const le=t.EpF();t.TgZ(0,"div",2)(1,"div",3),t.YNc(2,k,2,0,"div",4),t.TgZ(3,"div",5)(4,"div")(5,"div",6)(6,"div",7),t.YNc(7,$,4,2,"ng-container",8),t.qZA(),t.TgZ(8,"div",9)(9,"button",10,11),t.NdJ("click",function(){t.CHM(le);const Q=t.oxw();return t.KtG(Q.onCancel())}),t.YNc(11,W,2,1,"ng-container",12),t.YNc(12,ze,3,3,"ng-container",12),t.qZA(),t.TgZ(13,"button",13,14),t.NdJ("click",function(){t.CHM(le);const Q=t.oxw();return t.KtG(Q.onConfirm())}),t.YNc(15,Y,2,1,"ng-container",12),t.YNc(16,G,3,3,"ng-container",12),t.qZA()()()()()()()}if(2&re){const le=t.oxw();t.ekj("ant-popover-rtl","rtl"===le.dir),t.Q6J("cdkTrapFocusAutoCapture",null!==le.nzAutoFocus)("ngClass",le._classMap)("ngStyle",le.nzOverlayStyle)("@.disabled",!(null==le.noAnimation||!le.noAnimation.nzNoAnimation))("nzNoAnimation",null==le.noAnimation?null:le.noAnimation.nzNoAnimation)("@zoomBigMotion","active"),t.xp6(2),t.Q6J("ngIf",le.nzPopconfirmShowArrow),t.xp6(5),t.Q6J("nzStringTemplateOutlet",le.nzTitle),t.xp6(2),t.Q6J("nzSize","small"),t.uIk("cdkFocusInitial","cancel"===le.nzAutoFocus||null),t.xp6(2),t.Q6J("ngIf",le.nzCancelText),t.xp6(1),t.Q6J("ngIf",!le.nzCancelText),t.xp6(1),t.Q6J("nzSize","small")("nzType","danger"!==le.nzOkType?le.nzOkType:"primary")("nzDanger",le.nzOkDanger||"danger"===le.nzOkType)("nzLoading",le.confirmLoading),t.uIk("cdkFocusInitial","ok"===le.nzAutoFocus||null),t.xp6(2),t.Q6J("ngIf",le.nzOkText),t.xp6(1),t.Q6J("ngIf",!le.nzOkText)}}let te=(()=>{class re extends h.Mg{getProxyPropertyMap(){return{nzOkText:["nzOkText",()=>this.nzOkText],nzOkType:["nzOkType",()=>this.nzOkType],nzOkDanger:["nzOkDanger",()=>this.nzOkDanger],nzCancelText:["nzCancelText",()=>this.nzCancelText],nzBeforeConfirm:["nzBeforeConfirm",()=>this.nzBeforeConfirm],nzCondition:["nzCondition",()=>this.nzCondition],nzIcon:["nzIcon",()=>this.nzIcon],nzPopconfirmShowArrow:["nzPopconfirmShowArrow",()=>this.nzPopconfirmShowArrow],nzPopconfirmBackdrop:["nzBackdrop",()=>this.nzPopconfirmBackdrop],nzAutoFocus:["nzAutoFocus",()=>this.nzAutofocus],...super.getProxyPropertyMap()}}constructor(le,ce,Q,ie,ae,xe){super(le,ce,Q,ie,ae,xe),this._nzModuleName="popconfirm",this.trigger="click",this.placement="top",this.nzCondition=!1,this.nzPopconfirmShowArrow=!0,this.nzPopconfirmBackdrop=!1,this.nzAutofocus=null,this.visibleChange=new t.vpe,this.nzOnCancel=new t.vpe,this.nzOnConfirm=new t.vpe,this.componentRef=this.hostView.createComponent(ne)}createComponent(){super.createComponent(),this.component.nzOnCancel.pipe((0,l.R)(this.destroy$)).subscribe(()=>{this.nzOnCancel.emit()}),this.component.nzOnConfirm.pipe((0,l.R)(this.destroy$)).subscribe(()=>{this.nzOnConfirm.emit()})}static#e=this.\u0275fac=function(ce){return new(ce||re)(t.Y36(t.SBq),t.Y36(t.s_b),t.Y36(t._Vd),t.Y36(t.Qsj),t.Y36(v.P,9),t.Y36(z.jY))};static#t=this.\u0275dir=t.lG2({type:re,selectors:[["","nz-popconfirm",""]],hostVars:2,hostBindings:function(ce,Q){2&ce&&t.ekj("ant-popover-open",Q.visible)},inputs:{arrowPointAtCenter:["nzPopconfirmArrowPointAtCenter","arrowPointAtCenter"],title:["nzPopconfirmTitle","title"],directiveTitle:["nz-popconfirm","directiveTitle"],trigger:["nzPopconfirmTrigger","trigger"],placement:["nzPopconfirmPlacement","placement"],origin:["nzPopconfirmOrigin","origin"],mouseEnterDelay:["nzPopconfirmMouseEnterDelay","mouseEnterDelay"],mouseLeaveDelay:["nzPopconfirmMouseLeaveDelay","mouseLeaveDelay"],overlayClassName:["nzPopconfirmOverlayClassName","overlayClassName"],overlayStyle:["nzPopconfirmOverlayStyle","overlayStyle"],visible:["nzPopconfirmVisible","visible"],nzOkText:"nzOkText",nzOkType:"nzOkType",nzOkDanger:"nzOkDanger",nzCancelText:"nzCancelText",nzBeforeConfirm:"nzBeforeConfirm",nzIcon:"nzIcon",nzCondition:"nzCondition",nzPopconfirmShowArrow:"nzPopconfirmShowArrow",nzPopconfirmBackdrop:"nzPopconfirmBackdrop",nzAutofocus:"nzAutofocus"},outputs:{visibleChange:"nzPopconfirmVisibleChange",nzOnCancel:"nzOnCancel",nzOnConfirm:"nzOnConfirm"},exportAs:["nzPopconfirm"],features:[t.qOj]})}return(0,e.gn)([(0,M.yF)()],re.prototype,"arrowPointAtCenter",void 0),(0,e.gn)([(0,M.yF)()],re.prototype,"nzOkDanger",void 0),(0,e.gn)([(0,M.yF)()],re.prototype,"nzCondition",void 0),(0,e.gn)([(0,M.yF)()],re.prototype,"nzPopconfirmShowArrow",void 0),(0,e.gn)([(0,z.oS)()],re.prototype,"nzPopconfirmBackdrop",void 0),(0,e.gn)([(0,z.oS)()],re.prototype,"nzAutofocus",void 0),re})(),ne=(()=>{class re extends h.XK{constructor(le,ce,Q,ie,ae){super(le,Q,ae),this.elementRef=ce,this.nzCondition=!1,this.nzPopconfirmShowArrow=!0,this.nzOkType="primary",this.nzOkDanger=!1,this.nzAutoFocus=null,this.nzBeforeConfirm=null,this.nzOnCancel=new i.x,this.nzOnConfirm=new i.x,this._trigger="click",this.elementFocusedBeforeModalWasOpened=null,this._prefix="ant-popover",this.confirmLoading=!1,this.document=ie}ngOnDestroy(){super.ngOnDestroy(),this.nzOnCancel.complete(),this.nzOnConfirm.complete()}show(){this.nzCondition?this.onConfirm():(this.capturePreviouslyFocusedElement(),super.show())}hide(){super.hide(),this.restoreFocus()}handleConfirm(){this.nzOnConfirm.next(),super.hide()}onCancel(){this.nzOnCancel.next(),super.hide()}onConfirm(){if(this.nzBeforeConfirm){const le=(0,M.lN)(this.nzBeforeConfirm()).pipe((0,C.P)());this.confirmLoading=!0,le.pipe((0,E.x)(()=>{this.confirmLoading=!1,this.cdr.markForCheck()}),(0,l.R)(this.nzVisibleChange),(0,l.R)(this.destroy$)).subscribe(ce=>{ce&&this.handleConfirm()})}else this.handleConfirm()}capturePreviouslyFocusedElement(){this.document&&(this.elementFocusedBeforeModalWasOpened=this.document.activeElement)}restoreFocus(){const le=this.elementFocusedBeforeModalWasOpened;if(le&&"function"==typeof le.focus){const ce=this.document.activeElement,Q=this.elementRef.nativeElement;(!ce||ce===this.document.body||ce===Q||Q.contains(ce))&&le.focus()}}static#e=this.\u0275fac=function(ce){return new(ce||re)(t.Y36(t.sBO),t.Y36(t.SBq),t.Y36(g.Is,8),t.Y36(n.K0,8),t.Y36(v.P,9))};static#t=this.\u0275cmp=t.Xpm({type:re,selectors:[["nz-popconfirm"]],viewQuery:function(ce,Q){if(1&ce&&(t.Gf(S,5,t.SBq),t.Gf(A,5,t.SBq)),2&ce){let ie;t.iGM(ie=t.CRH())&&(Q.okBtn=ie),t.iGM(ie=t.CRH())&&(Q.cancelBtn=ie)}},exportAs:["nzPopconfirmComponent"],features:[t.qOj],decls:2,vars:6,consts:[["cdkConnectedOverlay","","nzConnectedOverlay","",3,"cdkConnectedOverlayHasBackdrop","cdkConnectedOverlayOrigin","cdkConnectedOverlayPositions","cdkConnectedOverlayOpen","cdkConnectedOverlayPush","nzArrowPointAtCenter","overlayOutsideClick","detach","positionChange"],["overlay","cdkConnectedOverlay"],["cdkTrapFocus","",1,"ant-popover",3,"cdkTrapFocusAutoCapture","ngClass","ngStyle","nzNoAnimation"],[1,"ant-popover-content"],["class","ant-popover-arrow",4,"ngIf"],[1,"ant-popover-inner"],[1,"ant-popover-inner-content"],[1,"ant-popover-message"],[4,"nzStringTemplateOutlet"],[1,"ant-popover-buttons"],["nz-button","",3,"nzSize","click"],["cancelBtn",""],[4,"ngIf"],["nz-button","",3,"nzSize","nzType","nzDanger","nzLoading","click"],["okBtn",""],[1,"ant-popover-arrow"],[1,"ant-popover-arrow-content"],[1,"ant-popover-message-title"],["nz-icon","","nzTheme","fill",3,"nzType"]],template:function(ce,Q){1&ce&&(t.YNc(0,V,17,21,"ng-template",0,1,t.W1O),t.NdJ("overlayOutsideClick",function(ae){return Q.onClickOutside(ae)})("detach",function(){return Q.hide()})("positionChange",function(ae){return Q.onPositionChange(ae)})),2&ce&&t.Q6J("cdkConnectedOverlayHasBackdrop",Q.nzBackdrop)("cdkConnectedOverlayOrigin",Q.origin)("cdkConnectedOverlayPositions",Q._positions)("cdkConnectedOverlayOpen",Q._visible)("cdkConnectedOverlayPush",!0)("nzArrowPointAtCenter",Q.nzArrowPointAtCenter)},dependencies:[n.mk,n.O5,n.PC,d.ix,p.w,f.dQ,y.pI,T.Ls,x.f,D.hQ,v.P,_.mK,P.o9],encapsulation:2,data:{animation:[u.$C]},changeDetection:0})}return re})(),fe=(()=>{class re{static#e=this.\u0275fac=function(ce){return new(ce||re)};static#t=this.\u0275mod=t.oAB({type:re});static#n=this.\u0275inj=t.cJS({imports:[g.vT,n.ez,d.sL,y.U8,P.YI,T.PV,x.T,D.e4,v.g,h.cg,_.rt]})}return re})()},57417:(nt,I,o)=>{"use strict";o.d(I,{$6:()=>D,lU:()=>T});var e=o(97582),n=o(65879),t=o(64194),i=o(83064),l=o(27754),C=o(96109),E=o(331),u=o(49388),z=o(96814),M=o(33651),h=o(8324),v=o(85448);function g(_,P){if(1&_&&(n.ynx(0),n._uU(1),n.BQk()),2&_){const S=n.oxw(3);n.xp6(1),n.Oqu(S.nzTitle)}}function d(_,P){if(1&_&&(n.TgZ(0,"div",10),n.YNc(1,g,2,1,"ng-container",9),n.qZA()),2&_){const S=n.oxw(2);n.xp6(1),n.Q6J("nzStringTemplateOutlet",S.nzTitle)}}function p(_,P){if(1&_&&(n.ynx(0),n._uU(1),n.BQk()),2&_){const S=n.oxw(2);n.xp6(1),n.Oqu(S.nzContent)}}function f(_,P){if(1&_&&(n.TgZ(0,"div",2)(1,"div",3)(2,"div",4),n._UZ(3,"span",5),n.qZA(),n.TgZ(4,"div",6)(5,"div"),n.YNc(6,d,2,1,"div",7),n.TgZ(7,"div",8),n.YNc(8,p,2,1,"ng-container",9),n.qZA()()()()()),2&_){const S=n.oxw();n.ekj("ant-popover-rtl","rtl"===S.dir),n.Q6J("ngClass",S._classMap)("ngStyle",S.nzOverlayStyle)("@.disabled",!(null==S.noAnimation||!S.noAnimation.nzNoAnimation))("nzNoAnimation",null==S.noAnimation?null:S.noAnimation.nzNoAnimation)("@zoomBigMotion","active"),n.xp6(6),n.Q6J("ngIf",S.nzTitle),n.xp6(2),n.Q6J("nzStringTemplateOutlet",S.nzContent)}}let T=(()=>{class _ extends C.Mg{getProxyPropertyMap(){return{nzPopoverBackdrop:["nzBackdrop",()=>this.nzPopoverBackdrop],...super.getProxyPropertyMap()}}constructor(S,A,k,R,$,W){super(S,A,k,R,$,W),this._nzModuleName="popover",this.trigger="hover",this.placement="top",this.nzPopoverBackdrop=!1,this.visibleChange=new n.vpe,this.componentRef=this.hostView.createComponent(x)}static#e=this.\u0275fac=function(A){return new(A||_)(n.Y36(n.SBq),n.Y36(n.s_b),n.Y36(n._Vd),n.Y36(n.Qsj),n.Y36(E.P,9),n.Y36(i.jY))};static#t=this.\u0275dir=n.lG2({type:_,selectors:[["","nz-popover",""]],hostVars:2,hostBindings:function(A,k){2&A&&n.ekj("ant-popover-open",k.visible)},inputs:{arrowPointAtCenter:["nzPopoverArrowPointAtCenter","arrowPointAtCenter"],title:["nzPopoverTitle","title"],content:["nzPopoverContent","content"],directiveTitle:["nz-popover","directiveTitle"],trigger:["nzPopoverTrigger","trigger"],placement:["nzPopoverPlacement","placement"],origin:["nzPopoverOrigin","origin"],visible:["nzPopoverVisible","visible"],mouseEnterDelay:["nzPopoverMouseEnterDelay","mouseEnterDelay"],mouseLeaveDelay:["nzPopoverMouseLeaveDelay","mouseLeaveDelay"],overlayClassName:["nzPopoverOverlayClassName","overlayClassName"],overlayStyle:["nzPopoverOverlayStyle","overlayStyle"],nzPopoverBackdrop:"nzPopoverBackdrop"},outputs:{visibleChange:"nzPopoverVisibleChange"},exportAs:["nzPopover"],features:[n.qOj]})}return(0,e.gn)([(0,l.yF)()],_.prototype,"arrowPointAtCenter",void 0),(0,e.gn)([(0,i.oS)()],_.prototype,"nzPopoverBackdrop",void 0),_})(),x=(()=>{class _ extends C.XK{constructor(S,A,k){super(S,A,k),this._prefix="ant-popover"}get hasBackdrop(){return"click"===this.nzTrigger&&this.nzBackdrop}isEmpty(){return(0,C.pu)(this.nzTitle)&&(0,C.pu)(this.nzContent)}static#e=this.\u0275fac=function(A){return new(A||_)(n.Y36(n.sBO),n.Y36(u.Is,8),n.Y36(E.P,9))};static#t=this.\u0275cmp=n.Xpm({type:_,selectors:[["nz-popover"]],exportAs:["nzPopoverComponent"],features:[n.qOj],decls:2,vars:6,consts:[["cdkConnectedOverlay","","nzConnectedOverlay","",3,"cdkConnectedOverlayHasBackdrop","cdkConnectedOverlayOrigin","cdkConnectedOverlayPositions","cdkConnectedOverlayOpen","cdkConnectedOverlayPush","nzArrowPointAtCenter","overlayOutsideClick","detach","positionChange"],["overlay","cdkConnectedOverlay"],[1,"ant-popover",3,"ngClass","ngStyle","nzNoAnimation"],[1,"ant-popover-content"],[1,"ant-popover-arrow"],[1,"ant-popover-arrow-content"],["role","tooltip",1,"ant-popover-inner"],["class","ant-popover-title",4,"ngIf"],[1,"ant-popover-inner-content"],[4,"nzStringTemplateOutlet"],[1,"ant-popover-title"]],template:function(A,k){1&A&&(n.YNc(0,f,9,9,"ng-template",0,1,n.W1O),n.NdJ("overlayOutsideClick",function($){return k.onClickOutside($)})("detach",function(){return k.hide()})("positionChange",function($){return k.onPositionChange($)})),2&A&&n.Q6J("cdkConnectedOverlayHasBackdrop",k.hasBackdrop)("cdkConnectedOverlayOrigin",k.origin)("cdkConnectedOverlayPositions",k._positions)("cdkConnectedOverlayOpen",k._visible)("cdkConnectedOverlayPush",!0)("nzArrowPointAtCenter",k.nzArrowPointAtCenter)},dependencies:[z.mk,z.O5,z.PC,M.pI,h.f,v.hQ,E.P],encapsulation:2,data:{animation:[t.$C]},changeDetection:0})}return _})(),D=(()=>{class _{static#e=this.\u0275fac=function(A){return new(A||_)};static#t=this.\u0275mod=n.oAB({type:_});static#n=this.\u0275inj=n.cJS({imports:[u.vT,z.ez,M.U8,h.T,v.e4,E.g,C.cg]})}return _})()},48128:(nt,I,o)=>{"use strict";o.d(I,{M:()=>le,W:()=>ce});var e=o(49388),n=o(96814),t=o(65879),i=o(8324),l=o(90551),C=o(97582),E=o(78645),u=o(59773),z=o(83064),M=o(27754);function h(Q,ie){if(1&Q&&(t.ynx(0),t._UZ(1,"span",8),t.BQk()),2&Q){const ae=t.oxw(3);t.xp6(1),t.Q6J("nzType",ae.icon)}}function v(Q,ie){if(1&Q&&(t.ynx(0),t._uU(1),t.BQk()),2&Q){const ae=ie.$implicit,xe=t.oxw(4);t.xp6(1),t.hij(" ",ae(xe.nzPercent)," ")}}const g=function(Q){return{$implicit:Q}};function d(Q,ie){if(1&Q&&t.YNc(0,v,2,1,"ng-container",9),2&Q){const ae=t.oxw(3);t.Q6J("nzStringTemplateOutlet",ae.formatter)("nzStringTemplateOutletContext",t.VKq(2,g,ae.nzPercent))}}function p(Q,ie){if(1&Q&&(t.TgZ(0,"span",5),t.YNc(1,h,2,1,"ng-container",6),t.YNc(2,d,1,4,"ng-template",null,7,t.W1O),t.qZA()),2&Q){const ae=t.MAs(3),xe=t.oxw(2);t.xp6(1),t.Q6J("ngIf",("exception"===xe.status||"success"===xe.status)&&!xe.nzFormat)("ngIfElse",ae)}}function f(Q,ie){if(1&Q&&t.YNc(0,p,4,2,"span",4),2&Q){const ae=t.oxw();t.Q6J("ngIf",ae.nzShowInfo)}}function y(Q,ie){if(1&Q&&t._UZ(0,"div",17),2&Q){const ae=t.oxw(4);t.Udp("width",ae.nzSuccessPercent,"%")("border-radius","round"===ae.nzStrokeLinecap?"100px":"0")("height",ae.strokeWidth,"px")}}function T(Q,ie){if(1&Q&&(t.TgZ(0,"div",13)(1,"div",14),t._UZ(2,"div",15),t.YNc(3,y,1,6,"div",16),t.qZA()()),2&Q){const ae=t.oxw(3);t.xp6(2),t.Udp("width",ae.nzPercent,"%")("border-radius","round"===ae.nzStrokeLinecap?"100px":"0")("background",ae.isGradient?null:ae.nzStrokeColor)("background-image",ae.isGradient?ae.lineGradient:null)("height",ae.strokeWidth,"px"),t.xp6(1),t.Q6J("ngIf",ae.nzSuccessPercent||0===ae.nzSuccessPercent)}}function x(Q,ie){}function D(Q,ie){if(1&Q&&(t.ynx(0),t.YNc(1,T,4,11,"div",11),t.YNc(2,x,0,0,"ng-template",12),t.BQk()),2&Q){const ae=t.oxw(2),xe=t.MAs(1);t.xp6(1),t.Q6J("ngIf",!ae.isSteps),t.xp6(1),t.Q6J("ngTemplateOutlet",xe)}}function _(Q,ie){1&Q&&t._UZ(0,"div",20),2&Q&&t.Q6J("ngStyle",ie.$implicit)}function P(Q,ie){}function S(Q,ie){if(1&Q&&(t.TgZ(0,"div",18),t.YNc(1,_,1,1,"div",19),t.YNc(2,P,0,0,"ng-template",12),t.qZA()),2&Q){const ae=t.oxw(2),xe=t.MAs(1);t.xp6(1),t.Q6J("ngForOf",ae.steps),t.xp6(1),t.Q6J("ngTemplateOutlet",xe)}}function A(Q,ie){if(1&Q&&(t.TgZ(0,"div"),t.YNc(1,D,3,2,"ng-container",2),t.YNc(2,S,3,2,"div",10),t.qZA()),2&Q){const ae=t.oxw();t.xp6(1),t.Q6J("ngIf",!ae.isSteps),t.xp6(1),t.Q6J("ngIf",ae.isSteps)}}function k(Q,ie){if(1&Q&&(t.O4$(),t._UZ(0,"stop")),2&Q){const ae=ie.$implicit;t.uIk("offset",ae.offset)("stop-color",ae.color)}}function R(Q,ie){if(1&Q&&(t.O4$(),t.TgZ(0,"defs")(1,"linearGradient",24),t.YNc(2,k,1,2,"stop",25),t.qZA()()),2&Q){const ae=t.oxw(2);t.xp6(1),t.Q6J("id","gradient-"+ae.gradientId),t.xp6(1),t.Q6J("ngForOf",ae.circleGradient)}}function $(Q,ie){if(1&Q&&(t.O4$(),t._UZ(0,"path",26)),2&Q){const ae=ie.$implicit,xe=t.oxw(2);t.Q6J("ngStyle",ae.strokePathStyle),t.uIk("d",xe.pathString)("stroke-linecap",xe.nzStrokeLinecap)("stroke",ae.stroke)("stroke-width",xe.nzPercent?xe.strokeWidth:0)}}function W(Q,ie){1&Q&&t.O4$()}function ze(Q,ie){if(1&Q&&(t.TgZ(0,"div",14),t.O4$(),t.TgZ(1,"svg",21),t.YNc(2,R,3,2,"defs",2),t._UZ(3,"path",22),t.YNc(4,$,1,5,"path",23),t.qZA(),t.YNc(5,W,0,0,"ng-template",12),t.qZA()),2&Q){const ae=t.oxw(),xe=t.MAs(1);t.Udp("width",ae.nzWidth,"px")("height",ae.nzWidth,"px")("font-size",.15*ae.nzWidth+6,"px"),t.ekj("ant-progress-circle-gradient",ae.isGradient),t.xp6(2),t.Q6J("ngIf",ae.isGradient),t.xp6(1),t.Q6J("ngStyle",ae.trailPathStyle),t.uIk("stroke-width",ae.strokeWidth)("d",ae.pathString),t.xp6(1),t.Q6J("ngForOf",ae.progressCirclePath)("ngForTrackBy",ae.trackByFn),t.xp6(1),t.Q6J("ngTemplateOutlet",xe)}}const G=Q=>{let ie=[];return Object.keys(Q).forEach(ae=>{const xe=Q[ae],Me=function Y(Q){return+Q.replace("%","")}(ae);isNaN(Me)||ie.push({key:Me,value:xe})}),ie=ie.sort((ae,xe)=>ae.key-xe.key),ie};let te=0;const ne="progress",fe=new Map([["success","check"],["exception","close"]]),re=new Map([["normal","#108ee9"],["exception","#ff5500"],["success","#87d068"]]),be=Q=>`${Q}%`;let le=(()=>{class Q{get formatter(){return this.nzFormat||be}get status(){return this.nzStatus||this.inferredStatus}get strokeWidth(){return this.nzStrokeWidth||("line"===this.nzType&&"small"!==this.nzSize?8:6)}get isCircleStyle(){return"circle"===this.nzType||"dashboard"===this.nzType}constructor(ae,xe,Me){this.cdr=ae,this.nzConfigService=xe,this.directionality=Me,this._nzModuleName=ne,this.nzShowInfo=!0,this.nzWidth=132,this.nzStrokeColor=void 0,this.nzSize="default",this.nzPercent=0,this.nzStrokeWidth=void 0,this.nzGapDegree=void 0,this.nzType="line",this.nzGapPosition="top",this.nzStrokeLinecap="round",this.nzSteps=0,this.steps=[],this.lineGradient=null,this.isGradient=!1,this.isSteps=!1,this.gradientId=te++,this.progressCirclePath=[],this.trailPathStyle=null,this.dir="ltr",this.trackByFn=Ye=>`${Ye}`,this.cachedStatus="normal",this.inferredStatus="normal",this.destroy$=new E.x}ngOnChanges(ae){const{nzSteps:xe,nzGapPosition:Me,nzStrokeLinecap:Ye,nzStrokeColor:q,nzGapDegree:ve,nzType:ee,nzStatus:Be,nzPercent:Re,nzSuccessPercent:ct,nzStrokeWidth:Ae}=ae;Be&&(this.cachedStatus=this.nzStatus||this.cachedStatus),(Re||ct)&&(parseInt(this.nzPercent.toString(),10)>=100?((0,M.DX)(this.nzSuccessPercent)&&this.nzSuccessPercent>=100||void 0===this.nzSuccessPercent)&&(this.inferredStatus="success"):this.inferredStatus=this.cachedStatus),(Be||Re||ct||q)&&this.updateIcon(),q&&this.setStrokeColor(),(Me||Ye||ve||ee||Re||q||q)&&this.getCirclePaths(),(Re||xe||Ae)&&(this.isSteps=this.nzSteps>0,this.isSteps&&this.getSteps())}ngOnInit(){this.nzConfigService.getConfigChangeEventForComponent(ne).pipe((0,u.R)(this.destroy$)).subscribe(()=>{this.updateIcon(),this.setStrokeColor(),this.getCirclePaths()}),this.directionality.change?.pipe((0,u.R)(this.destroy$)).subscribe(ae=>{this.dir=ae,this.cdr.detectChanges()}),this.dir=this.directionality.value}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}updateIcon(){const ae=fe.get(this.status);this.icon=ae?ae+(this.isCircleStyle?"-o":"-circle-fill"):""}getSteps(){const ae=Math.floor(this.nzSteps*(this.nzPercent/100)),xe="small"===this.nzSize?2:14,Me=[];for(let Ye=0;Ye{const Mt=2===ae.length&&0===Ae;return{stroke:this.isGradient&&!Mt?`url(#gradient-${this.gradientId})`:null,strokePathStyle:{stroke:this.isGradient?null:Mt?re.get("success"):this.nzStrokeColor,transition:"stroke-dashoffset .3s ease 0s, stroke-dasharray .3s ease 0s, stroke .3s, stroke-width .06s ease .3s",strokeDasharray:`${(ct||0)/100*(Ye-q)}px ${Ye}px`,strokeDashoffset:`-${q/2}px`}}}).reverse()}setStrokeColor(){const ae=this.nzStrokeColor,xe=this.isGradient=!!ae&&"string"!=typeof ae;xe&&!this.isCircleStyle?this.lineGradient=(Q=>{const{from:ie="#1890ff",to:ae="#1890ff",direction:xe="to right",...Me}=Q;return 0!==Object.keys(Me).length?`linear-gradient(${xe}, ${G(Me).map(({key:q,value:ve})=>`${ve} ${q}%`).join(", ")})`:`linear-gradient(${xe}, ${ie}, ${ae})`})(ae):xe&&this.isCircleStyle?this.circleGradient=(Q=>G(this.nzStrokeColor).map(({key:ie,value:ae})=>({offset:`${ie}%`,color:ae})))():(this.lineGradient=null,this.circleGradient=[])}static#e=this.\u0275fac=function(xe){return new(xe||Q)(t.Y36(t.sBO),t.Y36(z.jY),t.Y36(e.Is,8))};static#t=this.\u0275cmp=t.Xpm({type:Q,selectors:[["nz-progress"]],inputs:{nzShowInfo:"nzShowInfo",nzWidth:"nzWidth",nzStrokeColor:"nzStrokeColor",nzSize:"nzSize",nzFormat:"nzFormat",nzSuccessPercent:"nzSuccessPercent",nzPercent:"nzPercent",nzStrokeWidth:"nzStrokeWidth",nzGapDegree:"nzGapDegree",nzStatus:"nzStatus",nzType:"nzType",nzGapPosition:"nzGapPosition",nzStrokeLinecap:"nzStrokeLinecap",nzSteps:"nzSteps"},exportAs:["nzProgress"],features:[t.TTD],decls:5,vars:17,consts:[["progressInfoTemplate",""],[3,"ngClass"],[4,"ngIf"],["class","ant-progress-inner",3,"width","height","fontSize","ant-progress-circle-gradient",4,"ngIf"],["class","ant-progress-text",4,"ngIf"],[1,"ant-progress-text"],[4,"ngIf","ngIfElse"],["formatTemplate",""],["nz-icon","",3,"nzType"],[4,"nzStringTemplateOutlet","nzStringTemplateOutletContext"],["class","ant-progress-steps-outer",4,"ngIf"],["class","ant-progress-outer",4,"ngIf"],[3,"ngTemplateOutlet"],[1,"ant-progress-outer"],[1,"ant-progress-inner"],[1,"ant-progress-bg"],["class","ant-progress-success-bg",3,"width","border-radius","height",4,"ngIf"],[1,"ant-progress-success-bg"],[1,"ant-progress-steps-outer"],["class","ant-progress-steps-item",3,"ngStyle",4,"ngFor","ngForOf"],[1,"ant-progress-steps-item",3,"ngStyle"],["viewBox","0 0 100 100",1,"ant-progress-circle"],["stroke","#f3f3f3","fill-opacity","0",1,"ant-progress-circle-trail",3,"ngStyle"],["class","ant-progress-circle-path","fill-opacity","0",3,"ngStyle",4,"ngFor","ngForOf","ngForTrackBy"],["x1","100%","y1","0%","x2","0%","y2","0%",3,"id"],[4,"ngFor","ngForOf"],["fill-opacity","0",1,"ant-progress-circle-path",3,"ngStyle"]],template:function(xe,Me){1&xe&&(t.YNc(0,f,1,1,"ng-template",null,0,t.W1O),t.TgZ(2,"div",1),t.YNc(3,A,3,2,"div",2),t.YNc(4,ze,6,15,"div",3),t.qZA()),2&xe&&(t.xp6(2),t.ekj("ant-progress-line","line"===Me.nzType)("ant-progress-small","small"===Me.nzSize)("ant-progress-default","default"===Me.nzSize)("ant-progress-show-info",Me.nzShowInfo)("ant-progress-circle",Me.isCircleStyle)("ant-progress-steps",Me.isSteps)("ant-progress-rtl","rtl"===Me.dir),t.Q6J("ngClass","ant-progress ant-progress-status-"+Me.status),t.xp6(1),t.Q6J("ngIf","line"===Me.nzType),t.xp6(1),t.Q6J("ngIf",Me.isCircleStyle))},dependencies:[n.mk,n.sg,n.O5,n.tP,n.PC,l.Ls,i.f],encapsulation:2,changeDetection:0})}return(0,C.gn)([(0,z.oS)()],Q.prototype,"nzShowInfo",void 0),(0,C.gn)([(0,z.oS)()],Q.prototype,"nzStrokeColor",void 0),(0,C.gn)([(0,z.oS)()],Q.prototype,"nzSize",void 0),(0,C.gn)([(0,M.Rn)()],Q.prototype,"nzSuccessPercent",void 0),(0,C.gn)([(0,M.Rn)()],Q.prototype,"nzPercent",void 0),(0,C.gn)([(0,z.oS)(),(0,M.Rn)()],Q.prototype,"nzStrokeWidth",void 0),(0,C.gn)([(0,z.oS)(),(0,M.Rn)()],Q.prototype,"nzGapDegree",void 0),(0,C.gn)([(0,z.oS)()],Q.prototype,"nzGapPosition",void 0),(0,C.gn)([(0,z.oS)()],Q.prototype,"nzStrokeLinecap",void 0),(0,C.gn)([(0,M.Rn)()],Q.prototype,"nzSteps",void 0),Q})(),ce=(()=>{class Q{static#e=this.\u0275fac=function(xe){return new(xe||Q)};static#t=this.\u0275mod=t.oAB({type:Q});static#n=this.\u0275inj=t.cJS({imports:[e.vT,n.ez,l.PV,i.T]})}return Q})()},57907:(nt,I,o)=>{"use strict";o.d(I,{Bq:()=>f,Dg:()=>T,Of:()=>x,aF:()=>D});var e=o(65879),n=o(97582),t=o(60095),i=o(97328),l=o(78645),C=o(92438),E=o(59773),u=o(27754),z=o(49388),M=o(4300),h=o(50883),v=o(96814);const g=["*"],d=["inputElement"],p=["nz-radio",""];let f=(()=>{class _{static#e=this.\u0275fac=function(A){return new(A||_)};static#t=this.\u0275dir=e.lG2({type:_,selectors:[["","nz-radio-button",""]]})}return _})(),y=(()=>{class _{constructor(){this.selected$=new i.t(1),this.touched$=new l.x,this.disabled$=new i.t(1),this.name$=new i.t(1)}touch(){this.touched$.next()}select(S){this.selected$.next(S)}setDisabled(S){this.disabled$.next(S)}setName(S){this.name$.next(S)}static#e=this.\u0275fac=function(A){return new(A||_)};static#t=this.\u0275prov=e.Yz7({token:_,factory:_.\u0275fac})}return _})(),T=(()=>{class _{constructor(S,A,k){this.cdr=S,this.nzRadioService=A,this.directionality=k,this.value=null,this.destroy$=new l.x,this.isNzDisableFirstChange=!0,this.onChange=()=>{},this.onTouched=()=>{},this.nzDisabled=!1,this.nzButtonStyle="outline",this.nzSize="default",this.nzName=null,this.dir="ltr"}ngOnInit(){this.nzRadioService.selected$.pipe((0,E.R)(this.destroy$)).subscribe(S=>{this.value!==S&&(this.value=S,this.onChange(this.value))}),this.nzRadioService.touched$.pipe((0,E.R)(this.destroy$)).subscribe(()=>{Promise.resolve().then(()=>this.onTouched())}),this.directionality.change?.pipe((0,E.R)(this.destroy$)).subscribe(S=>{this.dir=S,this.cdr.detectChanges()}),this.dir=this.directionality.value}ngOnChanges(S){const{nzDisabled:A,nzName:k}=S;A&&this.nzRadioService.setDisabled(this.nzDisabled),k&&this.nzRadioService.setName(this.nzName)}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}writeValue(S){this.value=S,this.nzRadioService.select(S),this.cdr.markForCheck()}registerOnChange(S){this.onChange=S}registerOnTouched(S){this.onTouched=S}setDisabledState(S){this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||S,this.isNzDisableFirstChange=!1,this.nzRadioService.setDisabled(this.nzDisabled),this.cdr.markForCheck()}static#e=this.\u0275fac=function(A){return new(A||_)(e.Y36(e.sBO),e.Y36(y),e.Y36(z.Is,8))};static#t=this.\u0275cmp=e.Xpm({type:_,selectors:[["nz-radio-group"]],hostAttrs:[1,"ant-radio-group"],hostVars:8,hostBindings:function(A,k){2&A&&e.ekj("ant-radio-group-large","large"===k.nzSize)("ant-radio-group-small","small"===k.nzSize)("ant-radio-group-solid","solid"===k.nzButtonStyle)("ant-radio-group-rtl","rtl"===k.dir)},inputs:{nzDisabled:"nzDisabled",nzButtonStyle:"nzButtonStyle",nzSize:"nzSize",nzName:"nzName"},exportAs:["nzRadioGroup"],features:[e._Bn([y,{provide:t.JU,useExisting:(0,e.Gpc)(()=>_),multi:!0}]),e.TTD],ngContentSelectors:g,decls:1,vars:0,template:function(A,k){1&A&&(e.F$t(),e.Hsn(0))},encapsulation:2,changeDetection:0})}return(0,n.gn)([(0,u.yF)()],_.prototype,"nzDisabled",void 0),_})(),x=(()=>{class _{focus(){this.focusMonitor.focusVia(this.inputElement,"keyboard")}blur(){this.inputElement.nativeElement.blur()}constructor(S,A,k,R,$,W,ze,Y){this.ngZone=S,this.elementRef=A,this.cdr=k,this.focusMonitor=R,this.directionality=$,this.nzRadioService=W,this.nzRadioButtonDirective=ze,this.nzFormStatusService=Y,this.isNgModel=!1,this.destroy$=new l.x,this.isNzDisableFirstChange=!0,this.isChecked=!1,this.name=null,this.isRadioButton=!!this.nzRadioButtonDirective,this.onChange=()=>{},this.onTouched=()=>{},this.nzValue=null,this.nzDisabled=!1,this.nzAutoFocus=!1,this.dir="ltr"}setDisabledState(S){this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||S,this.isNzDisableFirstChange=!1,this.cdr.markForCheck()}writeValue(S){this.isChecked=S,this.cdr.markForCheck()}registerOnChange(S){this.isNgModel=!0,this.onChange=S}registerOnTouched(S){this.onTouched=S}ngOnInit(){this.nzRadioService&&(this.nzRadioService.name$.pipe((0,E.R)(this.destroy$)).subscribe(S=>{this.name=S,this.cdr.markForCheck()}),this.nzRadioService.disabled$.pipe((0,E.R)(this.destroy$)).subscribe(S=>{this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||S,this.isNzDisableFirstChange=!1,this.cdr.markForCheck()}),this.nzRadioService.selected$.pipe((0,E.R)(this.destroy$)).subscribe(S=>{const A=this.isChecked;this.isChecked=this.nzValue===S,this.isNgModel&&A!==this.isChecked&&!1===this.isChecked&&this.onChange(!1),this.cdr.markForCheck()})),this.focusMonitor.monitor(this.elementRef,!0).pipe((0,E.R)(this.destroy$)).subscribe(S=>{S||(Promise.resolve().then(()=>this.onTouched()),this.nzRadioService&&this.nzRadioService.touch())}),this.directionality.change.pipe((0,E.R)(this.destroy$)).subscribe(S=>{this.dir=S,this.cdr.detectChanges()}),this.dir=this.directionality.value,this.setupClickListener()}ngAfterViewInit(){this.nzAutoFocus&&this.focus()}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete(),this.focusMonitor.stopMonitoring(this.elementRef)}setupClickListener(){this.ngZone.runOutsideAngular(()=>{(0,C.R)(this.elementRef.nativeElement,"click").pipe((0,E.R)(this.destroy$)).subscribe(S=>{S.stopPropagation(),S.preventDefault(),!this.nzDisabled&&!this.isChecked&&this.ngZone.run(()=>{this.focus(),this.nzRadioService?.select(this.nzValue),this.isNgModel&&(this.isChecked=!0,this.onChange(!0)),this.cdr.markForCheck()})})})}static#e=this.\u0275fac=function(A){return new(A||_)(e.Y36(e.R0b),e.Y36(e.SBq),e.Y36(e.sBO),e.Y36(M.tE),e.Y36(z.Is,8),e.Y36(y,8),e.Y36(f,8),e.Y36(h.kH,8))};static#t=this.\u0275cmp=e.Xpm({type:_,selectors:[["","nz-radio",""],["","nz-radio-button",""]],viewQuery:function(A,k){if(1&A&&e.Gf(d,7),2&A){let R;e.iGM(R=e.CRH())&&(k.inputElement=R.first)}},hostVars:18,hostBindings:function(A,k){2&A&&e.ekj("ant-radio-wrapper-in-form-item",!!k.nzFormStatusService)("ant-radio-wrapper",!k.isRadioButton)("ant-radio-button-wrapper",k.isRadioButton)("ant-radio-wrapper-checked",k.isChecked&&!k.isRadioButton)("ant-radio-button-wrapper-checked",k.isChecked&&k.isRadioButton)("ant-radio-wrapper-disabled",k.nzDisabled&&!k.isRadioButton)("ant-radio-button-wrapper-disabled",k.nzDisabled&&k.isRadioButton)("ant-radio-wrapper-rtl",!k.isRadioButton&&"rtl"===k.dir)("ant-radio-button-wrapper-rtl",k.isRadioButton&&"rtl"===k.dir)},inputs:{nzValue:"nzValue",nzDisabled:"nzDisabled",nzAutoFocus:"nzAutoFocus"},exportAs:["nzRadio"],features:[e._Bn([{provide:t.JU,useExisting:(0,e.Gpc)(()=>_),multi:!0}])],attrs:p,ngContentSelectors:g,decls:6,vars:24,consts:[["type","radio",3,"disabled","checked"],["inputElement",""]],template:function(A,k){1&A&&(e.F$t(),e.TgZ(0,"span"),e._UZ(1,"input",0,1)(3,"span"),e.qZA(),e.TgZ(4,"span"),e.Hsn(5),e.qZA()),2&A&&(e.ekj("ant-radio",!k.isRadioButton)("ant-radio-checked",k.isChecked&&!k.isRadioButton)("ant-radio-disabled",k.nzDisabled&&!k.isRadioButton)("ant-radio-button",k.isRadioButton)("ant-radio-button-checked",k.isChecked&&k.isRadioButton)("ant-radio-button-disabled",k.nzDisabled&&k.isRadioButton),e.xp6(1),e.ekj("ant-radio-input",!k.isRadioButton)("ant-radio-button-input",k.isRadioButton),e.Q6J("disabled",k.nzDisabled)("checked",k.isChecked),e.uIk("autofocus",k.nzAutoFocus?"autofocus":null)("name",k.name),e.xp6(2),e.ekj("ant-radio-inner",!k.isRadioButton)("ant-radio-button-inner",k.isRadioButton))},encapsulation:2,changeDetection:0})}return(0,n.gn)([(0,u.yF)()],_.prototype,"nzDisabled",void 0),(0,n.gn)([(0,u.yF)()],_.prototype,"nzAutoFocus",void 0),_})(),D=(()=>{class _{static#e=this.\u0275fac=function(A){return new(A||_)};static#t=this.\u0275mod=e.oAB({type:_});static#n=this.\u0275inj=e.cJS({imports:[z.vT,v.ez,t.u5]})}return _})()},98421:(nt,I,o)=>{"use strict";o.d(I,{Ju:()=>A,sn:()=>S});var e=o(97582),n=o(36028),t=o(65879),i=o(60095),l=o(92438),C=o(59773),E=o(83064),u=o(99087),z=o(27754),M=o(49388),h=o(96814),v=o(96109),g=o(90551);const d=["nz-rate-item",""];function p(k,R){}function f(k,R){}function y(k,R){1&k&&t._UZ(0,"span",4)}const T=function(k){return{$implicit:k}},x=["ulElement"];function D(k,R){if(1&k){const $=t.EpF();t.TgZ(0,"li",3)(1,"div",4),t.NdJ("itemHover",function(ze){const G=t.CHM($).index,V=t.oxw();return t.KtG(V.onItemHover(G,ze))})("itemClick",function(ze){const G=t.CHM($).index,V=t.oxw();return t.KtG(V.onItemClick(G,ze))}),t.qZA()()}if(2&k){const $=R.index,W=t.oxw();t.Q6J("ngClass",W.starStyleArray[$]||"")("nzTooltipTitle",W.nzTooltips[$]),t.xp6(1),t.Q6J("allowHalf",W.nzAllowHalf)("character",W.nzCharacter)("index",$)}}let _=(()=>{class k{constructor(){this.index=0,this.allowHalf=!1,this.itemHover=new t.vpe,this.itemClick=new t.vpe}hoverRate($){this.itemHover.next($&&this.allowHalf)}clickRate($){this.itemClick.next($&&this.allowHalf)}static#e=this.\u0275fac=function(W){return new(W||k)};static#t=this.\u0275cmp=t.Xpm({type:k,selectors:[["","nz-rate-item",""]],inputs:{character:"character",index:"index",allowHalf:"allowHalf"},outputs:{itemHover:"itemHover",itemClick:"itemClick"},exportAs:["nzRateItem"],attrs:d,decls:6,vars:8,consts:[[1,"ant-rate-star-second",3,"mouseover","click"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"ant-rate-star-first",3,"mouseover","click"],["defaultCharacter",""],["nz-icon","","nzType","star","nzTheme","fill"]],template:function(W,ze){if(1&W&&(t.TgZ(0,"div",0),t.NdJ("mouseover",function(G){return ze.hoverRate(!1),G.stopPropagation()})("click",function(){return ze.clickRate(!1)}),t.YNc(1,p,0,0,"ng-template",1),t.qZA(),t.TgZ(2,"div",2),t.NdJ("mouseover",function(G){return ze.hoverRate(!0),G.stopPropagation()})("click",function(){return ze.clickRate(!0)}),t.YNc(3,f,0,0,"ng-template",1),t.qZA(),t.YNc(4,y,1,0,"ng-template",null,3,t.W1O)),2&W){const Y=t.MAs(5);t.xp6(1),t.Q6J("ngTemplateOutlet",ze.character||Y)("ngTemplateOutletContext",t.VKq(4,T,ze.index)),t.xp6(2),t.Q6J("ngTemplateOutlet",ze.character||Y)("ngTemplateOutletContext",t.VKq(6,T,ze.index))}},dependencies:[h.tP,g.Ls],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,z.yF)()],k.prototype,"allowHalf",void 0),k})();const P="rate";let S=(()=>{class k{get nzValue(){return this._value}set nzValue($){this._value!==$&&(this._value=$,this.hasHalf=!Number.isInteger($),this.hoverValue=Math.ceil($))}constructor($,W,ze,Y,G,V){this.nzConfigService=$,this.ngZone=W,this.renderer=ze,this.cdr=Y,this.directionality=G,this.destroy$=V,this._nzModuleName=P,this.nzAllowClear=!0,this.nzAllowHalf=!1,this.nzDisabled=!1,this.nzAutoFocus=!1,this.nzCount=5,this.nzTooltips=[],this.nzOnBlur=new t.vpe,this.nzOnFocus=new t.vpe,this.nzOnHoverChange=new t.vpe,this.nzOnKeyDown=new t.vpe,this.classMap={},this.starArray=[],this.starStyleArray=[],this.dir="ltr",this.hasHalf=!1,this.hoverValue=0,this.isFocused=!1,this._value=0,this.isNzDisableFirstChange=!0,this.onChange=()=>null,this.onTouched=()=>null}ngOnChanges($){const{nzAutoFocus:W,nzCount:ze,nzValue:Y}=$;if(W&&!W.isFirstChange()){const G=this.ulElement.nativeElement;this.nzAutoFocus&&!this.nzDisabled?this.renderer.setAttribute(G,"autofocus","autofocus"):this.renderer.removeAttribute(G,"autofocus")}ze&&this.updateStarArray(),Y&&this.updateStarStyle()}ngOnInit(){this.nzConfigService.getConfigChangeEventForComponent(P).pipe((0,C.R)(this.destroy$)).subscribe(()=>this.cdr.markForCheck()),this.directionality.change.pipe((0,C.R)(this.destroy$)).subscribe($=>{this.dir=$,this.cdr.detectChanges()}),this.dir=this.directionality.value,this.ngZone.runOutsideAngular(()=>{(0,l.R)(this.ulElement.nativeElement,"focus").pipe((0,C.R)(this.destroy$)).subscribe($=>{this.isFocused=!0,this.nzOnFocus.observers.length&&this.ngZone.run(()=>this.nzOnFocus.emit($))}),(0,l.R)(this.ulElement.nativeElement,"blur").pipe((0,C.R)(this.destroy$)).subscribe($=>{this.isFocused=!1,this.nzOnBlur.observers.length&&this.ngZone.run(()=>this.nzOnBlur.emit($))})})}onItemClick($,W){if(this.nzDisabled)return;this.hoverValue=$+1;const ze=W?$+.5:$+1;this.nzValue===ze?this.nzAllowClear&&(this.nzValue=0,this.onChange(this.nzValue)):(this.nzValue=ze,this.onChange(this.nzValue)),this.updateStarStyle()}onItemHover($,W){this.nzDisabled||this.hoverValue===$+1&&W===this.hasHalf||(this.hoverValue=$+1,this.hasHalf=W,this.nzOnHoverChange.emit(this.hoverValue),this.updateStarStyle())}onRateLeave(){this.hasHalf=!Number.isInteger(this.nzValue),this.hoverValue=Math.ceil(this.nzValue),this.updateStarStyle()}focus(){this.ulElement.nativeElement.focus()}blur(){this.ulElement.nativeElement.blur()}onKeyDown($){const W=this.nzValue;$.keyCode===n.SV&&this.nzValue0&&(this.nzValue-=this.nzAllowHalf?.5:1),W!==this.nzValue&&(this.onChange(this.nzValue),this.nzOnKeyDown.emit($),this.updateStarStyle(),this.cdr.markForCheck())}updateStarArray(){this.starArray=Array(this.nzCount).fill(0).map(($,W)=>W),this.updateStarStyle()}updateStarStyle(){this.starStyleArray=this.starArray.map($=>{const W="ant-rate-star",ze=$+1;return{[`${W}-full`]:zethis.hoverValue,[`${W}-focused`]:this.hasHalf&&ze===this.hoverValue&&this.isFocused}})}writeValue($){this.nzValue=$||0,this.updateStarArray(),this.cdr.markForCheck()}setDisabledState($){this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||$,this.isNzDisableFirstChange=!1,this.cdr.markForCheck()}registerOnChange($){this.onChange=$}registerOnTouched($){this.onTouched=$}static#e=this.\u0275fac=function(W){return new(W||k)(t.Y36(E.jY),t.Y36(t.R0b),t.Y36(t.Qsj),t.Y36(t.sBO),t.Y36(M.Is,8),t.Y36(u.kn))};static#t=this.\u0275cmp=t.Xpm({type:k,selectors:[["nz-rate"]],viewQuery:function(W,ze){if(1&W&&t.Gf(x,7),2&W){let Y;t.iGM(Y=t.CRH())&&(ze.ulElement=Y.first)}},inputs:{nzAllowClear:"nzAllowClear",nzAllowHalf:"nzAllowHalf",nzDisabled:"nzDisabled",nzAutoFocus:"nzAutoFocus",nzCharacter:"nzCharacter",nzCount:"nzCount",nzTooltips:"nzTooltips"},outputs:{nzOnBlur:"nzOnBlur",nzOnFocus:"nzOnFocus",nzOnHoverChange:"nzOnHoverChange",nzOnKeyDown:"nzOnKeyDown"},exportAs:["nzRate"],features:[t._Bn([u.kn,{provide:i.JU,useExisting:(0,t.Gpc)(()=>k),multi:!0}]),t.TTD],decls:3,vars:7,consts:[[1,"ant-rate",3,"ngClass","tabindex","keydown","mouseleave"],["ulElement",""],["class","ant-rate-star","nz-tooltip","",3,"ngClass","nzTooltipTitle",4,"ngFor","ngForOf"],["nz-tooltip","",1,"ant-rate-star",3,"ngClass","nzTooltipTitle"],["nz-rate-item","",3,"allowHalf","character","index","itemHover","itemClick"]],template:function(W,ze){1&W&&(t.TgZ(0,"ul",0,1),t.NdJ("keydown",function(G){return ze.onKeyDown(G),G.preventDefault()})("mouseleave",function(G){return ze.onRateLeave(),G.stopPropagation()}),t.YNc(2,D,2,5,"li",2),t.qZA()),2&W&&(t.ekj("ant-rate-disabled",ze.nzDisabled)("ant-rate-rtl","rtl"===ze.dir),t.Q6J("ngClass",ze.classMap)("tabindex",ze.nzDisabled?-1:1),t.xp6(2),t.Q6J("ngForOf",ze.starArray))},dependencies:[h.mk,h.sg,v.SY,_],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,E.oS)(),(0,z.yF)()],k.prototype,"nzAllowClear",void 0),(0,e.gn)([(0,E.oS)(),(0,z.yF)()],k.prototype,"nzAllowHalf",void 0),(0,e.gn)([(0,z.yF)()],k.prototype,"nzDisabled",void 0),(0,e.gn)([(0,z.yF)()],k.prototype,"nzAutoFocus",void 0),(0,e.gn)([(0,z.Rn)()],k.prototype,"nzCount",void 0),k})(),A=(()=>{class k{static#e=this.\u0275fac=function(W){return new(W||k)};static#t=this.\u0275mod=t.oAB({type:k});static#n=this.\u0275inj=t.cJS({imports:[M.vT,h.ez,g.PV,v.cg]})}return k})()},70612:(nt,I,o)=>{"use strict";o.d(I,{GS:()=>S,IJ:()=>f,Op:()=>P,m8:()=>x});var e=o(96814),n=o(65879),t=o(97582),i=o(78645),l=o(92438),C=o(63019),E=o(59773),u=o(32181),z=o(99087),M=o(27754),h=o(62831);const v=["*"];function g(A,k){if(1&A&&n._UZ(0,"nz-resize-handle",1),2&A){const R=k.$implicit;n.Q6J("nzDirection",R.direction)("nzCursorType",R.cursorType)}}function d(A){return(0,M.z6)(A)?A.touches[0]||A.changedTouches[0]:A}let p=(()=>{class A{constructor(R,$){this.ngZone=R,this.listeners=new Map,this.handleMouseDownOutsideAngular$=new i.x,this.documentMouseUpOutsideAngular$=new i.x,this.documentMouseMoveOutsideAngular$=new i.x,this.mouseEnteredOutsideAngular$=new i.x,this.document=$}startResizing(R){const $=(0,M.z6)(R);this.clearListeners();const ze=$?"touchend":"mouseup";this.listeners.set($?"touchmove":"mousemove",V=>{this.documentMouseMoveOutsideAngular$.next(V)}),this.listeners.set(ze,V=>{this.documentMouseUpOutsideAngular$.next(V),this.clearListeners()}),this.ngZone.runOutsideAngular(()=>{this.listeners.forEach((V,K)=>{this.document.addEventListener(K,V)})})}clearListeners(){this.listeners.forEach((R,$)=>{this.document.removeEventListener($,R)}),this.listeners.clear()}ngOnDestroy(){this.handleMouseDownOutsideAngular$.complete(),this.documentMouseUpOutsideAngular$.complete(),this.documentMouseMoveOutsideAngular$.complete(),this.mouseEnteredOutsideAngular$.complete(),this.clearListeners()}static#e=this.\u0275fac=function($){return new($||A)(n.LFG(n.R0b),n.LFG(e.K0))};static#t=this.\u0275prov=n.Yz7({token:A,factory:A.\u0275fac})}return A})(),f=(()=>{class A{constructor(R,$,W,ze,Y,G){this.elementRef=R,this.renderer=$,this.nzResizableService=W,this.platform=ze,this.ngZone=Y,this.destroy$=G,this.nzBounds="parent",this.nzMinHeight=40,this.nzMinWidth=40,this.nzGridColumnCount=-1,this.nzMaxColumn=-1,this.nzMinColumn=-1,this.nzLockAspectRatio=!1,this.nzPreview=!1,this.nzDisabled=!1,this.nzResize=new n.vpe,this.nzResizeEnd=new n.vpe,this.nzResizeStart=new n.vpe,this.resizing=!1,this.currentHandleEvent=null,this.ghostElement=null,this.sizeCache=null,this.nzResizableService.handleMouseDownOutsideAngular$.pipe((0,E.R)(this.destroy$)).subscribe(V=>{this.nzDisabled||(this.resizing=!0,this.nzResizableService.startResizing(V.mouseEvent),this.currentHandleEvent=V,this.nzResizeStart.observers.length&&this.ngZone.run(()=>this.nzResizeStart.emit({mouseEvent:V.mouseEvent,direction:V.direction})),this.elRect=this.el.getBoundingClientRect())}),this.nzResizableService.documentMouseUpOutsideAngular$.pipe((0,E.R)(this.destroy$),(0,u.h)(Boolean)).subscribe(V=>{this.resizing&&(this.resizing=!1,this.nzResizableService.documentMouseUpOutsideAngular$.next(null),this.endResize(V))}),this.nzResizableService.documentMouseMoveOutsideAngular$.pipe((0,E.R)(this.destroy$)).subscribe(V=>{this.resizing&&this.resize(V)})}setPosition(){const R=getComputedStyle(this.el).position;("static"===R||!R)&&this.renderer.setStyle(this.el,"position","relative")}calcSize(R,$,W){let ze,Y,G,V,K=0,te=0,ne=this.nzMinWidth,fe=1/0,re=1/0;if("parent"===this.nzBounds){const be=this.renderer.parentNode(this.el);if(be instanceof HTMLElement){const le=be.getBoundingClientRect();fe=le.width,re=le.height}}else if("window"===this.nzBounds)typeof window<"u"&&(fe=window.innerWidth,re=window.innerHeight);else if(this.nzBounds&&this.nzBounds.nativeElement&&this.nzBounds.nativeElement instanceof HTMLElement){const be=this.nzBounds.nativeElement.getBoundingClientRect();fe=be.width,re=be.height}return G=(0,M.te)(this.nzMaxWidth,fe),V=(0,M.te)(this.nzMaxHeight,re),-1!==this.nzGridColumnCount&&(te=G/this.nzGridColumnCount,ne=-1!==this.nzMinColumn?te*this.nzMinColumn:ne,G=-1!==this.nzMaxColumn?te*this.nzMaxColumn:G),-1!==W?/(left|right)/i.test(this.currentHandleEvent.direction)?(ze=Math.min(Math.max(R,ne),G),Y=Math.min(Math.max(ze/W,this.nzMinHeight),V),(Y>=V||Y<=this.nzMinHeight)&&(ze=Math.min(Math.max(Y*W,ne),G))):(Y=Math.min(Math.max($,this.nzMinHeight),V),ze=Math.min(Math.max(Y*W,ne),G),(ze>=G||ze<=ne)&&(Y=Math.min(Math.max(ze/W,this.nzMinHeight),V))):(ze=Math.min(Math.max(R,ne),G),Y=Math.min(Math.max($,this.nzMinHeight),V)),-1!==this.nzGridColumnCount&&(K=Math.round(ze/te),ze=K*te),{col:K,width:ze,height:Y}}resize(R){const $=this.elRect,W=d(R),ze=d(this.currentHandleEvent.mouseEvent);let Y=$.width,G=$.height;const V=this.nzLockAspectRatio?Y/G:-1;switch(this.currentHandleEvent.direction){case"bottomRight":Y=W.clientX-$.left,G=W.clientY-$.top;break;case"bottomLeft":Y=$.width+ze.clientX-W.clientX,G=W.clientY-$.top;break;case"topRight":Y=W.clientX-$.left,G=$.height+ze.clientY-W.clientY;break;case"topLeft":Y=$.width+ze.clientX-W.clientX,G=$.height+ze.clientY-W.clientY;break;case"top":G=$.height+ze.clientY-W.clientY;break;case"right":Y=W.clientX-$.left;break;case"bottom":G=W.clientY-$.top;break;case"left":Y=$.width+ze.clientX-W.clientX}const K=this.calcSize(Y,G,V);this.sizeCache={...K},this.nzResize.observers.length&&this.ngZone.run(()=>{this.nzResize.emit({...K,mouseEvent:R,direction:this.currentHandleEvent.direction})}),this.nzPreview&&this.previewResize(K)}endResize(R){this.removeGhostElement();const $=this.sizeCache?{...this.sizeCache}:{width:this.elRect.width,height:this.elRect.height};this.nzResizeEnd.observers.length&&this.ngZone.run(()=>{this.nzResizeEnd.emit({...$,mouseEvent:R,direction:this.currentHandleEvent.direction})}),this.sizeCache=null,this.currentHandleEvent=null}previewResize({width:R,height:$}){this.createGhostElement(),this.renderer.setStyle(this.ghostElement,"width",`${R}px`),this.renderer.setStyle(this.ghostElement,"height",`${$}px`)}createGhostElement(){this.ghostElement||(this.ghostElement=this.renderer.createElement("div"),this.renderer.setAttribute(this.ghostElement,"class","nz-resizable-preview")),this.renderer.appendChild(this.el,this.ghostElement)}removeGhostElement(){this.ghostElement&&this.renderer.removeChild(this.el,this.ghostElement)}ngAfterViewInit(){this.platform.isBrowser&&(this.el=this.elementRef.nativeElement,this.setPosition(),this.ngZone.runOutsideAngular(()=>{(0,l.R)(this.el,"mouseenter").pipe((0,E.R)(this.destroy$)).subscribe(()=>{this.nzResizableService.mouseEnteredOutsideAngular$.next(!0)}),(0,l.R)(this.el,"mouseleave").pipe((0,E.R)(this.destroy$)).subscribe(()=>{this.nzResizableService.mouseEnteredOutsideAngular$.next(!1)})}))}ngOnDestroy(){this.ghostElement=null,this.sizeCache=null}static#e=this.\u0275fac=function($){return new($||A)(n.Y36(n.SBq),n.Y36(n.Qsj),n.Y36(p),n.Y36(h.t4),n.Y36(n.R0b),n.Y36(z.kn))};static#t=this.\u0275dir=n.lG2({type:A,selectors:[["","nz-resizable",""]],hostAttrs:[1,"nz-resizable"],hostVars:4,hostBindings:function($,W){2&$&&n.ekj("nz-resizable-resizing",W.resizing)("nz-resizable-disabled",W.nzDisabled)},inputs:{nzBounds:"nzBounds",nzMaxHeight:"nzMaxHeight",nzMaxWidth:"nzMaxWidth",nzMinHeight:"nzMinHeight",nzMinWidth:"nzMinWidth",nzGridColumnCount:"nzGridColumnCount",nzMaxColumn:"nzMaxColumn",nzMinColumn:"nzMinColumn",nzLockAspectRatio:"nzLockAspectRatio",nzPreview:"nzPreview",nzDisabled:"nzDisabled"},outputs:{nzResize:"nzResize",nzResizeEnd:"nzResizeEnd",nzResizeStart:"nzResizeStart"},exportAs:["nzResizable"],features:[n._Bn([p,z.kn])]})}return(0,t.gn)([(0,M.yF)()],A.prototype,"nzLockAspectRatio",void 0),(0,t.gn)([(0,M.yF)()],A.prototype,"nzPreview",void 0),(0,t.gn)([(0,M.yF)()],A.prototype,"nzDisabled",void 0),A})();class y{constructor(k,R){this.direction=k,this.mouseEvent=R}}const T=(0,h.i$)({passive:!0});let x=(()=>{class A{constructor(R,$,W,ze,Y){this.ngZone=R,this.nzResizableService=$,this.renderer=W,this.host=ze,this.destroy$=Y,this.nzDirection="bottomRight",this.nzCursorType="window",this.nzMouseDown=new n.vpe}ngOnInit(){this.nzResizableService.mouseEnteredOutsideAngular$.pipe((0,E.R)(this.destroy$)).subscribe(R=>{R?this.renderer.addClass(this.host.nativeElement,"nz-resizable-handle-box-hover"):this.renderer.removeClass(this.host.nativeElement,"nz-resizable-handle-box-hover")}),this.ngZone.runOutsideAngular(()=>{(0,C.T)((0,l.R)(this.host.nativeElement,"mousedown",T),(0,l.R)(this.host.nativeElement,"touchstart",T)).pipe((0,E.R)(this.destroy$)).subscribe(R=>{this.nzResizableService.handleMouseDownOutsideAngular$.next(new y(this.nzDirection,R))})})}onPointerDown(R){this.host.nativeElement.setPointerCapture(R.pointerId)}onPointerUp(R){this.host.nativeElement.releasePointerCapture(R.pointerId)}static#e=this.\u0275fac=function($){return new($||A)(n.Y36(n.R0b),n.Y36(p),n.Y36(n.Qsj),n.Y36(n.SBq),n.Y36(z.kn))};static#t=this.\u0275cmp=n.Xpm({type:A,selectors:[["nz-resize-handle"],["","nz-resize-handle",""]],hostAttrs:[1,"nz-resizable-handle"],hostVars:20,hostBindings:function($,W){1&$&&n.NdJ("pointerdown",function(Y){return W.onPointerDown(Y)})("pointerup",function(Y){return W.onPointerUp(Y)}),2&$&&n.ekj("nz-resizable-handle-top","top"===W.nzDirection)("nz-resizable-handle-right","right"===W.nzDirection)("nz-resizable-handle-bottom","bottom"===W.nzDirection)("nz-resizable-handle-left","left"===W.nzDirection)("nz-resizable-handle-topRight","topRight"===W.nzDirection)("nz-resizable-handle-bottomRight","bottomRight"===W.nzDirection)("nz-resizable-handle-bottomLeft","bottomLeft"===W.nzDirection)("nz-resizable-handle-topLeft","topLeft"===W.nzDirection)("nz-resizable-handle-cursor-type-grid","grid"===W.nzCursorType)("nz-resizable-handle-cursor-type-window","window"===W.nzCursorType)},inputs:{nzDirection:"nzDirection",nzCursorType:"nzCursorType"},outputs:{nzMouseDown:"nzMouseDown"},exportAs:["nzResizeHandle"],features:[n._Bn([z.kn])],ngContentSelectors:v,decls:1,vars:0,template:function($,W){1&$&&(n.F$t(),n.Hsn(0))},encapsulation:2,changeDetection:0})}return A})();const D=["bottomRight","topRight","bottomLeft","topLeft","bottom","right","top","left"];function _(A){return A.map(k=>"string"==typeof k?{direction:k,cursorType:"window"}:k)}let P=(()=>{class A{constructor(){this.nzDirections=D,this.resizeHandleOptions=_(this.nzDirections)}ngOnChanges(R){R.nzDirections&&(this.resizeHandleOptions=_(R.nzDirections.currentValue))}static#e=this.\u0275fac=function($){return new($||A)};static#t=this.\u0275cmp=n.Xpm({type:A,selectors:[["nz-resize-handles"]],inputs:{nzDirections:"nzDirections"},exportAs:["nzResizeHandles"],features:[n.TTD],decls:1,vars:1,consts:[[3,"nzDirection","nzCursorType",4,"ngFor","ngForOf"],[3,"nzDirection","nzCursorType"]],template:function($,W){1&$&&n.YNc(0,g,1,2,"nz-resize-handle",0),2&$&&n.Q6J("ngForOf",W.resizeHandleOptions)},dependencies:[e.sg,x],encapsulation:2,changeDetection:0})}return A})(),S=(()=>{class A{static#e=this.\u0275fac=function($){return new($||A)};static#t=this.\u0275mod=n.oAB({type:A});static#n=this.\u0275inj=n.cJS({imports:[e.ez]})}return A})()},9691:(nt,I,o)=>{"use strict";o.d(I,{Go:()=>Ze,Gt:()=>ge,Ip:()=>qe,LV:()=>Ke,Vq:()=>Ge,Y6:()=>$e,Yy:()=>xt,kq:()=>wt,uf:()=>De});var e=o(65879),n=o(78645),t=o(92438),i=o(65619),l=o(22096),C=o(52572),E=o(63019),u=o(205),z=o(96814),M=o(60804),h=o(59773),v=o(27921),g=o(93997),d=o(42460),p=o(37398),f=o(94664),y=o(99087),T=o(90551),x=o(70855),D=o(8324),_=o(97582),P=o(27754),S=o(36028),A=o(33651),k=o(60095),R=o(64194),$=o(83064),W=o(85448),ze=o(56879),Y=o(4300),G=o(331),V=o(62831),K=o(49388),te=o(50883),ne=o(12131);const fe=["*"];function re(_e,it){}function be(_e,it){if(1&_e&&e.YNc(0,re,0,0,"ng-template",4),2&_e){const b=e.oxw();e.Q6J("ngTemplateOutlet",b.template)}}function le(_e,it){if(1&_e&&e._uU(0),2&_e){const b=e.oxw();e.Oqu(b.label)}}function ce(_e,it){1&_e&&e._UZ(0,"span",7)}function Q(_e,it){if(1&_e&&(e.TgZ(0,"div",5),e.YNc(1,ce,1,0,"span",6),e.qZA()),2&_e){const b=e.oxw();e.xp6(1),e.Q6J("ngIf",!b.icon)("ngIfElse",b.icon)}}function ie(_e,it){if(1&_e&&(e.ynx(0),e._uU(1),e.BQk()),2&_e){const b=e.oxw();e.xp6(1),e.Oqu(b.nzLabel)}}function ae(_e,it){if(1&_e&&(e.TgZ(0,"div",4),e._UZ(1,"nz-embed-empty",5),e.qZA()),2&_e){const b=e.oxw();e.xp6(1),e.Q6J("specificContent",b.notFoundContent)}}function xe(_e,it){if(1&_e&&e._UZ(0,"nz-option-item-group",9),2&_e){const b=e.oxw().$implicit;e.Q6J("nzLabel",b.groupLabel)}}function Me(_e,it){if(1&_e){const b=e.EpF();e.TgZ(0,"nz-option-item",10),e.NdJ("itemHover",function(O){e.CHM(b);const j=e.oxw(2);return e.KtG(j.onItemHover(O))})("itemClick",function(O){e.CHM(b);const j=e.oxw(2);return e.KtG(j.onItemClick(O))}),e.qZA()}if(2&_e){const b=e.oxw().$implicit,N=e.oxw();e.Q6J("icon",N.menuItemSelectedIcon)("customContent",b.nzCustomContent)("template",b.template)("grouped",!!b.groupLabel)("disabled",b.nzDisabled)("showState","tags"===N.mode||"multiple"===N.mode)("title",b.nzTitle)("label",b.nzLabel)("compareWith",N.compareWith)("activatedValue",N.activatedValue)("listOfSelectedValue",N.listOfSelectedValue)("value",b.nzValue)}}function Ye(_e,it){1&_e&&(e.ynx(0,6),e.YNc(1,xe,1,1,"nz-option-item-group",7),e.YNc(2,Me,1,12,"nz-option-item",8),e.BQk()),2&_e&&(e.Q6J("ngSwitch",it.$implicit.type),e.xp6(1),e.Q6J("ngSwitchCase","group"),e.xp6(1),e.Q6J("ngSwitchCase","item"))}function q(_e,it){}function ve(_e,it){1&_e&&e.Hsn(0)}const ee=["inputElement"],Be=["mirrorElement"];function Re(_e,it){1&_e&&e._UZ(0,"span",3,4)}function ct(_e,it){if(1&_e&&(e.TgZ(0,"div",4),e._uU(1),e.qZA()),2&_e){const b=e.oxw(2);e.xp6(1),e.Oqu(b.label)}}function Ae(_e,it){if(1&_e&&e._uU(0),2&_e){const b=e.oxw(2);e.Oqu(b.label)}}function Mt(_e,it){if(1&_e&&(e.ynx(0),e.YNc(1,ct,2,1,"div",2),e.YNc(2,Ae,1,1,"ng-template",null,3,e.W1O),e.BQk()),2&_e){const b=e.MAs(3),N=e.oxw();e.xp6(1),e.Q6J("ngIf",N.deletable)("ngIfElse",b)}}function je(_e,it){1&_e&&e._UZ(0,"span",7)}function ot(_e,it){if(1&_e){const b=e.EpF();e.TgZ(0,"span",5),e.NdJ("click",function(O){e.CHM(b);const j=e.oxw();return e.KtG(j.onDelete(O))}),e.YNc(1,je,1,0,"span",6),e.qZA()}if(2&_e){const b=e.oxw();e.xp6(1),e.Q6J("ngIf",!b.removeIcon)("ngIfElse",b.removeIcon)}}const mt=function(_e){return{$implicit:_e}};function we(_e,it){if(1&_e&&(e.ynx(0),e._uU(1),e.BQk()),2&_e){const b=e.oxw();e.xp6(1),e.hij(" ",b.placeholder," ")}}function de(_e,it){if(1&_e&&e._UZ(0,"nz-select-item",6),2&_e){const b=e.oxw(2);e.Q6J("deletable",!1)("disabled",!1)("removeIcon",b.removeIcon)("label",b.listOfTopItem[0].nzLabel)("contentTemplateOutlet",b.customTemplate)("contentTemplateOutletContext",b.listOfTopItem[0])}}function U(_e,it){if(1&_e){const b=e.EpF();e.ynx(0),e.TgZ(1,"nz-select-search",4),e.NdJ("isComposingChange",function(O){e.CHM(b);const j=e.oxw();return e.KtG(j.isComposingChange(O))})("valueChange",function(O){e.CHM(b);const j=e.oxw();return e.KtG(j.onInputValueChange(O))}),e.qZA(),e.YNc(2,de,1,6,"nz-select-item",5),e.BQk()}if(2&_e){const b=e.oxw();e.xp6(1),e.Q6J("nzId",b.nzId)("disabled",b.disabled)("value",b.inputValue)("showInput",b.showSearch)("mirrorSync",!1)("autofocus",b.autofocus)("focusTrigger",b.open),e.xp6(1),e.Q6J("ngIf",b.isShowSingleLabel)}}function B(_e,it){if(1&_e){const b=e.EpF();e.TgZ(0,"nz-select-item",9),e.NdJ("delete",function(){const j=e.CHM(b).$implicit,L=e.oxw(2);return e.KtG(L.onDeleteItem(j.contentTemplateOutletContext))}),e.qZA()}if(2&_e){const b=it.$implicit,N=e.oxw(2);e.Q6J("removeIcon",N.removeIcon)("label",b.nzLabel)("disabled",b.nzDisabled||N.disabled)("contentTemplateOutlet",b.contentTemplateOutlet)("deletable",!0)("contentTemplateOutletContext",b.contentTemplateOutletContext)}}function Ee(_e,it){if(1&_e){const b=e.EpF();e.ynx(0),e.YNc(1,B,1,6,"nz-select-item",7),e.TgZ(2,"nz-select-search",8),e.NdJ("isComposingChange",function(O){e.CHM(b);const j=e.oxw();return e.KtG(j.isComposingChange(O))})("valueChange",function(O){e.CHM(b);const j=e.oxw();return e.KtG(j.onInputValueChange(O))}),e.qZA(),e.BQk()}if(2&_e){const b=e.oxw();e.xp6(1),e.Q6J("ngForOf",b.listOfSlicedItem)("ngForTrackBy",b.trackValue),e.xp6(1),e.Q6J("nzId",b.nzId)("disabled",b.disabled)("value",b.inputValue)("autofocus",b.autofocus)("showInput",!0)("mirrorSync",!0)("focusTrigger",b.open)}}function Ie(_e,it){if(1&_e&&e._UZ(0,"nz-select-placeholder",10),2&_e){const b=e.oxw();e.Q6J("placeholder",b.placeHolder)}}function Ne(_e,it){1&_e&&e._UZ(0,"span",1)}function pt(_e,it){1&_e&&e._UZ(0,"span",3)}function Dt(_e,it){1&_e&&e._UZ(0,"span",8)}function Lt(_e,it){1&_e&&e._UZ(0,"span",9)}function Ut(_e,it){if(1&_e&&(e.ynx(0),e.YNc(1,Dt,1,0,"span",6),e.YNc(2,Lt,1,0,"span",7),e.BQk()),2&_e){const b=e.oxw(2);e.xp6(1),e.Q6J("ngIf",!b.search),e.xp6(1),e.Q6J("ngIf",b.search)}}function qt(_e,it){if(1&_e&&e._UZ(0,"span",11),2&_e){const b=e.oxw().$implicit;e.Q6J("nzType",b)}}function en(_e,it){if(1&_e&&(e.ynx(0),e.YNc(1,qt,1,1,"span",10),e.BQk()),2&_e){const b=it.$implicit;e.xp6(1),e.Q6J("ngIf",b)}}function cn(_e,it){if(1&_e&&e.YNc(0,en,2,1,"ng-container",2),2&_e){const b=e.oxw(2);e.Q6J("nzStringTemplateOutlet",b.suffixIcon)}}function Wt(_e,it){if(1&_e&&(e.YNc(0,Ut,3,2,"ng-container",4),e.YNc(1,cn,1,1,"ng-template",null,5,e.W1O)),2&_e){const b=e.MAs(2),N=e.oxw();e.Q6J("ngIf",N.showArrow&&!N.suffixIcon)("ngIfElse",b)}}function Vt(_e,it){if(1&_e&&(e.ynx(0),e._uU(1),e.BQk()),2&_e){const b=e.oxw();e.xp6(1),e.Oqu(b.feedbackIcon)}}function st(_e,it){if(1&_e&&e._UZ(0,"nz-form-item-feedback-icon",8),2&_e){const b=e.oxw(3);e.Q6J("status",b.status)}}function He(_e,it){if(1&_e&&e.YNc(0,st,1,1,"nz-form-item-feedback-icon",7),2&_e){const b=e.oxw(2);e.Q6J("ngIf",b.hasFeedback&&!!b.status)}}function et(_e,it){if(1&_e&&(e.TgZ(0,"nz-select-arrow",5),e.YNc(1,He,1,1,"ng-template",null,6,e.W1O),e.qZA()),2&_e){const b=e.MAs(2),N=e.oxw();e.Q6J("showArrow",N.nzShowArrow)("loading",N.nzLoading)("search",N.nzOpen&&N.nzShowSearch)("suffixIcon",N.nzSuffixIcon)("feedbackIcon",b)}}function It(_e,it){if(1&_e){const b=e.EpF();e.TgZ(0,"nz-select-clear",9),e.NdJ("clear",function(){e.CHM(b);const O=e.oxw();return e.KtG(O.onClearSelection())}),e.qZA()}if(2&_e){const b=e.oxw();e.Q6J("clearIcon",b.nzClearIcon)}}function Ot(_e,it){if(1&_e){const b=e.EpF();e.TgZ(0,"nz-option-container",10),e.NdJ("keydown",function(O){e.CHM(b);const j=e.oxw();return e.KtG(j.onKeyDown(O))})("itemClick",function(O){e.CHM(b);const j=e.oxw();return e.KtG(j.onItemClick(O))})("scrollToBottom",function(){e.CHM(b);const O=e.oxw();return e.KtG(O.nzScrollToBottom.emit())}),e.qZA()}if(2&_e){const b=e.oxw();e.ekj("ant-select-dropdown-placement-bottomLeft","bottomLeft"===b.dropDownPosition)("ant-select-dropdown-placement-topLeft","topLeft"===b.dropDownPosition)("ant-select-dropdown-placement-bottomRight","bottomRight"===b.dropDownPosition)("ant-select-dropdown-placement-topRight","topRight"===b.dropDownPosition),e.Q6J("ngStyle",b.nzDropdownStyle)("itemSize",b.nzOptionHeightPx)("maxItemLength",b.nzOptionOverflowSize)("matchWidth",b.nzDropdownMatchSelectWidth)("@slideMotion","enter")("@.disabled",!(null==b.noAnimation||!b.noAnimation.nzNoAnimation))("nzNoAnimation",null==b.noAnimation?null:b.noAnimation.nzNoAnimation)("listOfContainerItem",b.listOfContainerItem)("menuItemSelectedIcon",b.nzMenuItemSelectedIcon)("notFoundContent",b.nzNotFoundContent)("activatedValue",b.activatedValue)("listOfSelectedValue",b.listOfValue)("dropdownRender",b.nzDropdownRender)("compareWith",b.compareWith)("mode",b.nzMode)}}let xt=(()=>{class _e{constructor(){this.nzLabel=null,this.changes=new n.x}ngOnChanges(){this.changes.next()}static#e=this.\u0275fac=function(N){return new(N||_e)};static#t=this.\u0275cmp=e.Xpm({type:_e,selectors:[["nz-option-group"]],inputs:{nzLabel:"nzLabel"},exportAs:["nzOptionGroup"],features:[e.TTD],ngContentSelectors:fe,decls:1,vars:0,template:function(N,O){1&N&&(e.F$t(),e.Hsn(0))},encapsulation:2,changeDetection:0})}return _e})(),Qe=(()=>{class _e{constructor(b,N,O){this.elementRef=b,this.ngZone=N,this.destroy$=O,this.selected=!1,this.activated=!1,this.grouped=!1,this.customContent=!1,this.template=null,this.disabled=!1,this.showState=!1,this.label=null,this.value=null,this.activatedValue=null,this.listOfSelectedValue=[],this.icon=null,this.itemClick=new e.vpe,this.itemHover=new e.vpe}ngOnChanges(b){const{value:N,activatedValue:O,listOfSelectedValue:j}=b;(N||j)&&(this.selected=this.listOfSelectedValue.some(L=>this.compareWith(L,this.value))),(N||O)&&(this.activated=this.compareWith(this.activatedValue,this.value))}ngOnInit(){this.ngZone.runOutsideAngular(()=>{(0,t.R)(this.elementRef.nativeElement,"click").pipe((0,h.R)(this.destroy$)).subscribe(()=>{this.disabled||this.ngZone.run(()=>this.itemClick.emit(this.value))}),(0,t.R)(this.elementRef.nativeElement,"mouseenter").pipe((0,h.R)(this.destroy$)).subscribe(()=>{this.disabled||this.ngZone.run(()=>this.itemHover.emit(this.value))})})}static#e=this.\u0275fac=function(N){return new(N||_e)(e.Y36(e.SBq),e.Y36(e.R0b),e.Y36(y.kn))};static#t=this.\u0275cmp=e.Xpm({type:_e,selectors:[["nz-option-item"]],hostAttrs:[1,"ant-select-item","ant-select-item-option"],hostVars:9,hostBindings:function(N,O){2&N&&(e.uIk("title",O.title),e.ekj("ant-select-item-option-grouped",O.grouped)("ant-select-item-option-selected",O.selected&&!O.disabled)("ant-select-item-option-disabled",O.disabled)("ant-select-item-option-active",O.activated&&!O.disabled))},inputs:{grouped:"grouped",customContent:"customContent",template:"template",disabled:"disabled",showState:"showState",title:"title",label:"label",value:"value",activatedValue:"activatedValue",listOfSelectedValue:"listOfSelectedValue",icon:"icon",compareWith:"compareWith"},outputs:{itemClick:"itemClick",itemHover:"itemHover"},features:[e._Bn([y.kn]),e.TTD],decls:5,vars:3,consts:[[1,"ant-select-item-option-content"],[3,"ngIf","ngIfElse"],["noCustomContent",""],["class","ant-select-item-option-state","style","user-select: none","unselectable","on",4,"ngIf"],[3,"ngTemplateOutlet"],["unselectable","on",1,"ant-select-item-option-state",2,"user-select","none"],["nz-icon","","nzType","check","class","ant-select-selected-icon",4,"ngIf","ngIfElse"],["nz-icon","","nzType","check",1,"ant-select-selected-icon"]],template:function(N,O){if(1&N&&(e.TgZ(0,"div",0),e.YNc(1,be,1,1,"ng-template",1),e.YNc(2,le,1,1,"ng-template",null,2,e.W1O),e.qZA(),e.YNc(4,Q,2,2,"div",3)),2&N){const j=e.MAs(3);e.xp6(1),e.Q6J("ngIf",O.customContent)("ngIfElse",j),e.xp6(3),e.Q6J("ngIf",O.showState&&O.selected)}},dependencies:[z.O5,z.tP,T.Ls,x.w],encapsulation:2,changeDetection:0})}return _e})(),ke=(()=>{class _e{constructor(){this.nzLabel=null}static#e=this.\u0275fac=function(N){return new(N||_e)};static#t=this.\u0275cmp=e.Xpm({type:_e,selectors:[["nz-option-item-group"]],hostAttrs:[1,"ant-select-item","ant-select-item-group"],inputs:{nzLabel:"nzLabel"},decls:1,vars:1,consts:[[4,"nzStringTemplateOutlet"]],template:function(N,O){1&N&&e.YNc(0,ie,2,1,"ng-container",0),2&N&&e.Q6J("nzStringTemplateOutlet",O.nzLabel)},dependencies:[D.f],encapsulation:2,changeDetection:0})}return _e})(),pe=(()=>{class _e{constructor(){this.notFoundContent=void 0,this.menuItemSelectedIcon=null,this.dropdownRender=null,this.activatedValue=null,this.listOfSelectedValue=[],this.mode="default",this.matchWidth=!0,this.itemSize=32,this.maxItemLength=8,this.listOfContainerItem=[],this.itemClick=new e.vpe,this.scrollToBottom=new e.vpe,this.scrolledIndex=0}onItemClick(b){this.itemClick.emit(b)}onItemHover(b){this.activatedValue=b}trackValue(b,N){return N.key}onScrolledIndexChange(b){this.scrolledIndex=b,b===this.listOfContainerItem.length-this.maxItemLength&&this.scrollToBottom.emit()}scrollToActivatedValue(){const b=this.listOfContainerItem.findIndex(N=>this.compareWith(N.key,this.activatedValue));(b=this.scrolledIndex+this.maxItemLength)&&this.cdkVirtualScrollViewport.scrollToIndex(b||0)}ngOnChanges(b){const{listOfContainerItem:N,activatedValue:O}=b;(N||O)&&this.scrollToActivatedValue()}ngAfterViewInit(){setTimeout(()=>this.scrollToActivatedValue())}static#e=this.\u0275fac=function(N){return new(N||_e)};static#t=this.\u0275cmp=e.Xpm({type:_e,selectors:[["nz-option-container"]],viewQuery:function(N,O){if(1&N&&e.Gf(u.N7,7),2&N){let j;e.iGM(j=e.CRH())&&(O.cdkVirtualScrollViewport=j.first)}},hostAttrs:[1,"ant-select-dropdown"],inputs:{notFoundContent:"notFoundContent",menuItemSelectedIcon:"menuItemSelectedIcon",dropdownRender:"dropdownRender",activatedValue:"activatedValue",listOfSelectedValue:"listOfSelectedValue",compareWith:"compareWith",mode:"mode",matchWidth:"matchWidth",itemSize:"itemSize",maxItemLength:"maxItemLength",listOfContainerItem:"listOfContainerItem"},outputs:{itemClick:"itemClick",scrollToBottom:"scrollToBottom"},exportAs:["nzOptionContainer"],features:[e.TTD],decls:5,vars:14,consts:[["class","ant-select-item-empty",4,"ngIf"],[3,"itemSize","maxBufferPx","minBufferPx","scrolledIndexChange"],["cdkVirtualFor","",3,"cdkVirtualForOf","cdkVirtualForTrackBy","cdkVirtualForTemplateCacheSize"],[3,"ngTemplateOutlet"],[1,"ant-select-item-empty"],["nzComponentName","select",3,"specificContent"],[3,"ngSwitch"],[3,"nzLabel",4,"ngSwitchCase"],[3,"icon","customContent","template","grouped","disabled","showState","title","label","compareWith","activatedValue","listOfSelectedValue","value","itemHover","itemClick",4,"ngSwitchCase"],[3,"nzLabel"],[3,"icon","customContent","template","grouped","disabled","showState","title","label","compareWith","activatedValue","listOfSelectedValue","value","itemHover","itemClick"]],template:function(N,O){1&N&&(e.TgZ(0,"div"),e.YNc(1,ae,2,1,"div",0),e.TgZ(2,"cdk-virtual-scroll-viewport",1),e.NdJ("scrolledIndexChange",function(L){return O.onScrolledIndexChange(L)}),e.YNc(3,Ye,3,3,"ng-template",2),e.qZA(),e.YNc(4,q,0,0,"ng-template",3),e.qZA()),2&N&&(e.xp6(1),e.Q6J("ngIf",0===O.listOfContainerItem.length),e.xp6(1),e.Udp("height",O.listOfContainerItem.length*O.itemSize,"px")("max-height",O.itemSize*O.maxItemLength,"px"),e.ekj("full-width",!O.matchWidth),e.Q6J("itemSize",O.itemSize)("maxBufferPx",O.itemSize*O.maxItemLength)("minBufferPx",O.itemSize*O.maxItemLength),e.xp6(1),e.Q6J("cdkVirtualForOf",O.listOfContainerItem)("cdkVirtualForTrackBy",O.trackValue)("cdkVirtualForTemplateCacheSize",0),e.xp6(1),e.Q6J("ngTemplateOutlet",O.dropdownRender))},dependencies:[z.O5,z.tP,z.RF,z.n9,u.xd,u.x0,u.N7,M.gB,Qe,ke],encapsulation:2,changeDetection:0})}return _e})(),qe=(()=>{class _e{constructor(b,N){this.nzOptionGroupComponent=b,this.destroy$=N,this.changes=new n.x,this.groupLabel=null,this.nzLabel=null,this.nzValue=null,this.nzDisabled=!1,this.nzHide=!1,this.nzCustomContent=!1}ngOnInit(){this.nzOptionGroupComponent&&this.nzOptionGroupComponent.changes.pipe((0,v.O)(!0),(0,h.R)(this.destroy$)).subscribe(()=>{this.groupLabel=this.nzOptionGroupComponent.nzLabel})}ngOnChanges(){this.changes.next()}static#e=this.\u0275fac=function(N){return new(N||_e)(e.Y36(xt,8),e.Y36(y.kn))};static#t=this.\u0275cmp=e.Xpm({type:_e,selectors:[["nz-option"]],viewQuery:function(N,O){if(1&N&&e.Gf(e.Rgc,7),2&N){let j;e.iGM(j=e.CRH())&&(O.template=j.first)}},inputs:{nzTitle:"nzTitle",nzLabel:"nzLabel",nzValue:"nzValue",nzKey:"nzKey",nzDisabled:"nzDisabled",nzHide:"nzHide",nzCustomContent:"nzCustomContent"},exportAs:["nzOption"],features:[e._Bn([y.kn]),e.TTD],ngContentSelectors:fe,decls:1,vars:0,template:function(N,O){1&N&&(e.F$t(),e.YNc(0,ve,1,0,"ng-template"))},encapsulation:2,changeDetection:0})}return(0,_.gn)([(0,P.yF)()],_e.prototype,"nzDisabled",void 0),(0,_.gn)([(0,P.yF)()],_e.prototype,"nzHide",void 0),(0,_.gn)([(0,P.yF)()],_e.prototype,"nzCustomContent",void 0),_e})(),ge=(()=>{class _e{setCompositionState(b){this.isComposingChange.next(b)}onValueChange(b){this.value=b,this.valueChange.next(b),this.mirrorSync&&this.syncMirrorWidth()}clearInputValue(){this.inputElement.nativeElement.value="",this.onValueChange("")}syncMirrorWidth(){const b=this.mirrorElement.nativeElement,N=this.elementRef.nativeElement,O=this.inputElement.nativeElement;this.renderer.removeStyle(N,"width"),this.renderer.setProperty(b,"textContent",`${O.value}\xa0`),this.renderer.setStyle(N,"width",`${b.scrollWidth}px`)}focus(){this.focusMonitor.focusVia(this.inputElement,"keyboard")}blur(){this.inputElement.nativeElement.blur()}constructor(b,N,O){this.elementRef=b,this.renderer=N,this.focusMonitor=O,this.nzId=null,this.disabled=!1,this.mirrorSync=!1,this.showInput=!0,this.focusTrigger=!1,this.value="",this.autofocus=!1,this.valueChange=new e.vpe,this.isComposingChange=new e.vpe}ngOnChanges(b){const N=this.inputElement.nativeElement,{focusTrigger:O,showInput:j}=b;j&&(this.showInput?this.renderer.removeAttribute(N,"readonly"):this.renderer.setAttribute(N,"readonly","readonly")),O&&!0===O.currentValue&&!1===O.previousValue&&N.focus()}ngAfterViewInit(){this.mirrorSync&&this.syncMirrorWidth(),this.autofocus&&this.focus()}static#e=this.\u0275fac=function(N){return new(N||_e)(e.Y36(e.SBq),e.Y36(e.Qsj),e.Y36(Y.tE))};static#t=this.\u0275cmp=e.Xpm({type:_e,selectors:[["nz-select-search"]],viewQuery:function(N,O){if(1&N&&(e.Gf(ee,7),e.Gf(Be,5)),2&N){let j;e.iGM(j=e.CRH())&&(O.inputElement=j.first),e.iGM(j=e.CRH())&&(O.mirrorElement=j.first)}},hostAttrs:[1,"ant-select-selection-search"],inputs:{nzId:"nzId",disabled:"disabled",mirrorSync:"mirrorSync",showInput:"showInput",focusTrigger:"focusTrigger",value:"value",autofocus:"autofocus"},outputs:{valueChange:"valueChange",isComposingChange:"isComposingChange"},features:[e._Bn([{provide:k.ve,useValue:!1}]),e.TTD],decls:3,vars:7,consts:[["autocomplete","off",1,"ant-select-selection-search-input",3,"ngModel","disabled","ngModelChange","compositionstart","compositionend"],["inputElement",""],["class","ant-select-selection-search-mirror",4,"ngIf"],[1,"ant-select-selection-search-mirror"],["mirrorElement",""]],template:function(N,O){1&N&&(e.TgZ(0,"input",0,1),e.NdJ("ngModelChange",function(L){return O.onValueChange(L)})("compositionstart",function(){return O.setCompositionState(!0)})("compositionend",function(){return O.setCompositionState(!1)}),e.qZA(),e.YNc(2,Re,2,0,"span",2)),2&N&&(e.Udp("opacity",O.showInput?null:0),e.Q6J("ngModel",O.value)("disabled",O.disabled),e.uIk("id",O.nzId)("autofocus",O.autofocus?"autofocus":null),e.xp6(2),e.Q6J("ngIf",O.mirrorSync))},dependencies:[z.O5,k.Fj,k.JJ,k.On],encapsulation:2,changeDetection:0})}return _e})(),Ze=(()=>{class _e{constructor(){this.disabled=!1,this.label=null,this.deletable=!1,this.removeIcon=null,this.contentTemplateOutletContext=null,this.contentTemplateOutlet=null,this.delete=new e.vpe}onDelete(b){b.preventDefault(),b.stopPropagation(),this.disabled||this.delete.next(b)}static#e=this.\u0275fac=function(N){return new(N||_e)};static#t=this.\u0275cmp=e.Xpm({type:_e,selectors:[["nz-select-item"]],hostAttrs:[1,"ant-select-selection-item"],hostVars:3,hostBindings:function(N,O){2&N&&(e.uIk("title",O.label),e.ekj("ant-select-selection-item-disabled",O.disabled))},inputs:{disabled:"disabled",label:"label",deletable:"deletable",removeIcon:"removeIcon",contentTemplateOutletContext:"contentTemplateOutletContext",contentTemplateOutlet:"contentTemplateOutlet"},outputs:{delete:"delete"},decls:2,vars:5,consts:[[4,"nzStringTemplateOutlet","nzStringTemplateOutletContext"],["class","ant-select-selection-item-remove",3,"click",4,"ngIf"],["class","ant-select-selection-item-content",4,"ngIf","ngIfElse"],["labelTemplate",""],[1,"ant-select-selection-item-content"],[1,"ant-select-selection-item-remove",3,"click"],["nz-icon","","nzType","close",4,"ngIf","ngIfElse"],["nz-icon","","nzType","close"]],template:function(N,O){1&N&&(e.YNc(0,Mt,4,2,"ng-container",0),e.YNc(1,ot,2,2,"span",1)),2&N&&(e.Q6J("nzStringTemplateOutlet",O.contentTemplateOutlet)("nzStringTemplateOutletContext",e.VKq(3,mt,O.contentTemplateOutletContext)),e.xp6(1),e.Q6J("ngIf",O.deletable&&!O.disabled))},dependencies:[z.O5,T.Ls,D.f,x.w],encapsulation:2,changeDetection:0})}return _e})(),$e=(()=>{class _e{constructor(){this.placeholder=null}static#e=this.\u0275fac=function(N){return new(N||_e)};static#t=this.\u0275cmp=e.Xpm({type:_e,selectors:[["nz-select-placeholder"]],hostAttrs:[1,"ant-select-selection-placeholder"],inputs:{placeholder:"placeholder"},decls:1,vars:1,consts:[[4,"nzStringTemplateOutlet"]],template:function(N,O){1&N&&e.YNc(0,we,2,1,"ng-container",0),2&N&&e.Q6J("nzStringTemplateOutlet",O.placeholder)},dependencies:[D.f],encapsulation:2,changeDetection:0})}return _e})(),Ue=(()=>{class _e{updateTemplateVariable(){const b=0===this.listOfTopItem.length;this.isShowPlaceholder=b&&!this.isComposing&&!this.inputValue,this.isShowSingleLabel=!b&&!this.isComposing&&!this.inputValue}isComposingChange(b){this.isComposing=b,this.updateTemplateVariable()}onInputValueChange(b){b!==this.inputValue&&(this.inputValue=b,this.updateTemplateVariable(),this.inputValueChange.emit(b),this.tokenSeparate(b,this.tokenSeparators))}tokenSeparate(b,N){if(b&&b.length&&N.length&&"default"!==this.mode&&((L,he)=>{for(let Ce=0;Ce0)return!0;return!1})(b,N)){const L=((L,he)=>{const Ce=new RegExp(`[${he.join()}]`),bt=L.split(Ce).filter(Ft=>Ft);return[...new Set(bt)]})(b,N);this.tokenize.next(L)}}clearInputValue(){this.nzSelectSearchComponent&&this.nzSelectSearchComponent.clearInputValue()}focus(){this.nzSelectSearchComponent&&this.nzSelectSearchComponent.focus()}blur(){this.nzSelectSearchComponent&&this.nzSelectSearchComponent.blur()}trackValue(b,N){return N.nzValue}onDeleteItem(b){!this.disabled&&!b.nzDisabled&&this.deleteItem.next(b)}constructor(b,N,O){this.elementRef=b,this.ngZone=N,this.noAnimation=O,this.nzId=null,this.showSearch=!1,this.placeHolder=null,this.open=!1,this.maxTagCount=1/0,this.autofocus=!1,this.disabled=!1,this.mode="default",this.customTemplate=null,this.maxTagPlaceholder=null,this.removeIcon=null,this.listOfTopItem=[],this.tokenSeparators=[],this.tokenize=new e.vpe,this.inputValueChange=new e.vpe,this.deleteItem=new e.vpe,this.listOfSlicedItem=[],this.isShowPlaceholder=!0,this.isShowSingleLabel=!1,this.isComposing=!1,this.inputValue=null,this.destroy$=new n.x}ngOnChanges(b){const{listOfTopItem:N,maxTagCount:O,customTemplate:j,maxTagPlaceholder:L}=b;if(N&&this.updateTemplateVariable(),N||O||j||L){const he=this.listOfTopItem.slice(0,this.maxTagCount).map(Ce=>({nzLabel:Ce.nzLabel,nzValue:Ce.nzValue,nzDisabled:Ce.nzDisabled,contentTemplateOutlet:this.customTemplate,contentTemplateOutletContext:Ce}));if(this.listOfTopItem.length>this.maxTagCount){const Ce=`+ ${this.listOfTopItem.length-this.maxTagCount} ...`,bt=this.listOfTopItem.map(sn=>sn.nzValue),Ft={nzLabel:Ce,nzValue:"$$__nz_exceeded_item",nzDisabled:!0,contentTemplateOutlet:this.maxTagPlaceholder,contentTemplateOutletContext:bt.slice(this.maxTagCount)};he.push(Ft)}this.listOfSlicedItem=he}}ngOnInit(){this.ngZone.runOutsideAngular(()=>{(0,t.R)(this.elementRef.nativeElement,"click").pipe((0,h.R)(this.destroy$)).subscribe(b=>{b.target!==this.nzSelectSearchComponent.inputElement.nativeElement&&this.nzSelectSearchComponent.focus()}),(0,t.R)(this.elementRef.nativeElement,"keydown").pipe((0,h.R)(this.destroy$)).subscribe(b=>{b.target instanceof HTMLInputElement&&b.keyCode===S.ZH&&"default"!==this.mode&&!b.target.value&&this.listOfTopItem.length>0&&(b.preventDefault(),this.ngZone.run(()=>this.onDeleteItem(this.listOfTopItem[this.listOfTopItem.length-1])))})})}ngOnDestroy(){this.destroy$.next()}static#e=this.\u0275fac=function(N){return new(N||_e)(e.Y36(e.SBq),e.Y36(e.R0b),e.Y36(G.P,9))};static#t=this.\u0275cmp=e.Xpm({type:_e,selectors:[["nz-select-top-control"]],viewQuery:function(N,O){if(1&N&&e.Gf(ge,5),2&N){let j;e.iGM(j=e.CRH())&&(O.nzSelectSearchComponent=j.first)}},hostAttrs:[1,"ant-select-selector"],inputs:{nzId:"nzId",showSearch:"showSearch",placeHolder:"placeHolder",open:"open",maxTagCount:"maxTagCount",autofocus:"autofocus",disabled:"disabled",mode:"mode",customTemplate:"customTemplate",maxTagPlaceholder:"maxTagPlaceholder",removeIcon:"removeIcon",listOfTopItem:"listOfTopItem",tokenSeparators:"tokenSeparators"},outputs:{tokenize:"tokenize",inputValueChange:"inputValueChange",deleteItem:"deleteItem"},exportAs:["nzSelectTopControl"],features:[e.TTD],decls:4,vars:3,consts:[[3,"ngSwitch"],[4,"ngSwitchCase"],[4,"ngSwitchDefault"],[3,"placeholder",4,"ngIf"],[3,"nzId","disabled","value","showInput","mirrorSync","autofocus","focusTrigger","isComposingChange","valueChange"],[3,"deletable","disabled","removeIcon","label","contentTemplateOutlet","contentTemplateOutletContext",4,"ngIf"],[3,"deletable","disabled","removeIcon","label","contentTemplateOutlet","contentTemplateOutletContext"],[3,"removeIcon","label","disabled","contentTemplateOutlet","deletable","contentTemplateOutletContext","delete",4,"ngFor","ngForOf","ngForTrackBy"],[3,"nzId","disabled","value","autofocus","showInput","mirrorSync","focusTrigger","isComposingChange","valueChange"],[3,"removeIcon","label","disabled","contentTemplateOutlet","deletable","contentTemplateOutletContext","delete"],[3,"placeholder"]],template:function(N,O){1&N&&(e.ynx(0,0),e.YNc(1,U,3,8,"ng-container",1),e.YNc(2,Ee,3,9,"ng-container",2),e.BQk(),e.YNc(3,Ie,1,1,"nz-select-placeholder",3)),2&N&&(e.Q6J("ngSwitch",O.mode),e.xp6(1),e.Q6J("ngSwitchCase","default"),e.xp6(2),e.Q6J("ngIf",O.isShowPlaceholder))},dependencies:[z.sg,z.O5,z.RF,z.n9,z.ED,x.w,ge,Ze,$e],encapsulation:2,changeDetection:0})}return _e})(),wt=(()=>{class _e{constructor(){this.clearIcon=null,this.clear=new e.vpe}onClick(b){b.preventDefault(),b.stopPropagation(),this.clear.emit(b)}static#e=this.\u0275fac=function(N){return new(N||_e)};static#t=this.\u0275cmp=e.Xpm({type:_e,selectors:[["nz-select-clear"]],hostAttrs:[1,"ant-select-clear"],hostBindings:function(N,O){1&N&&e.NdJ("click",function(L){return O.onClick(L)})},inputs:{clearIcon:"clearIcon"},outputs:{clear:"clear"},decls:1,vars:2,consts:[["nz-icon","","nzType","close-circle","nzTheme","fill","class","ant-select-close-icon",4,"ngIf","ngIfElse"],["nz-icon","","nzType","close-circle","nzTheme","fill",1,"ant-select-close-icon"]],template:function(N,O){1&N&&e.YNc(0,Ne,1,0,"span",0),2&N&&e.Q6J("ngIf",!O.clearIcon)("ngIfElse",O.clearIcon)},dependencies:[z.O5,T.Ls,x.w],encapsulation:2,changeDetection:0})}return _e})(),De=(()=>{class _e{constructor(){this.loading=!1,this.search=!1,this.showArrow=!1,this.suffixIcon=null,this.feedbackIcon=null}static#e=this.\u0275fac=function(N){return new(N||_e)};static#t=this.\u0275cmp=e.Xpm({type:_e,selectors:[["nz-select-arrow"]],hostAttrs:[1,"ant-select-arrow"],hostVars:2,hostBindings:function(N,O){2&N&&e.ekj("ant-select-arrow-loading",O.loading)},inputs:{loading:"loading",search:"search",showArrow:"showArrow",suffixIcon:"suffixIcon",feedbackIcon:"feedbackIcon"},decls:4,vars:3,consts:[["nz-icon","","nzType","loading",4,"ngIf","ngIfElse"],["defaultArrow",""],[4,"nzStringTemplateOutlet"],["nz-icon","","nzType","loading"],[4,"ngIf","ngIfElse"],["suffixTemplate",""],["nz-icon","","nzType","down",4,"ngIf"],["nz-icon","","nzType","search",4,"ngIf"],["nz-icon","","nzType","down"],["nz-icon","","nzType","search"],["nz-icon","",3,"nzType",4,"ngIf"],["nz-icon","",3,"nzType"]],template:function(N,O){if(1&N&&(e.YNc(0,pt,1,0,"span",0),e.YNc(1,Wt,3,2,"ng-template",null,1,e.W1O),e.YNc(3,Vt,2,1,"ng-container",2)),2&N){const j=e.MAs(2);e.Q6J("ngIf",O.loading)("ngIfElse",j),e.xp6(3),e.Q6J("nzStringTemplateOutlet",O.feedbackIcon)}},dependencies:[z.O5,T.Ls,D.f,x.w],encapsulation:2,changeDetection:0})}return _e})();const Pe=(_e,it)=>!(!it||!it.nzLabel)&&it.nzLabel.toString().toLowerCase().indexOf(_e.toLowerCase())>-1;let Ge=(()=>{class _e{set nzShowArrow(b){this._nzShowArrow=b}get nzShowArrow(){return void 0===this._nzShowArrow?"default"===this.nzMode:this._nzShowArrow}generateTagItem(b){return{nzValue:b,nzLabel:b,type:"item"}}onItemClick(b){if(this.activatedValue=b,"default"===this.nzMode)(0===this.listOfValue.length||!this.compareWith(this.listOfValue[0],b))&&this.updateListOfValue([b]),this.setOpenState(!1);else{const N=this.listOfValue.findIndex(O=>this.compareWith(O,b));if(-1!==N){const O=this.listOfValue.filter((j,L)=>L!==N);this.updateListOfValue(O)}else if(this.listOfValue.length!this.compareWith(O,b.nzValue));this.updateListOfValue(N),this.clearInput()}updateListOfContainerItem(){let b=this.listOfTagAndTemplateItem.filter(j=>!j.nzHide).filter(j=>!(!this.nzServerSearch&&this.searchValue)||this.nzFilterOption(this.searchValue,j));if("tags"===this.nzMode&&this.searchValue){const j=this.listOfTagAndTemplateItem.find(L=>L.nzLabel===this.searchValue);if(j)this.activatedValue=j.nzValue;else{const L=this.generateTagItem(this.searchValue);b=[L,...b],this.activatedValue=L.nzValue}}const N=b.find(j=>j.nzLabel===this.searchValue)||b.find(j=>this.compareWith(j.nzValue,this.activatedValue))||b.find(j=>this.compareWith(j.nzValue,this.listOfValue[0]))||b[0];this.activatedValue=N&&N.nzValue||null;let O=[];this.isReactiveDriven?O=[...new Set(this.nzOptions.filter(j=>j.groupLabel).map(j=>j.groupLabel))]:this.listOfNzOptionGroupComponent&&(O=this.listOfNzOptionGroupComponent.map(j=>j.nzLabel)),O.forEach(j=>{const L=b.findIndex(he=>j===he.groupLabel);L>-1&&b.splice(L,0,{groupLabel:j,type:"group",key:j})}),this.listOfContainerItem=[...b],this.updateCdkConnectedOverlayPositions()}clearInput(){this.nzSelectTopControlComponent.clearInputValue()}updateListOfValue(b){const O=((j,L)=>"default"===this.nzMode?j.length>0?j[0]:null:j)(b);this.value!==O&&(this.listOfValue=b,this.listOfValue$.next(b),this.value=O,this.onChange(this.value))}onTokenSeparate(b){const N=this.listOfTagAndTemplateItem.filter(O=>-1!==b.findIndex(j=>j===O.nzLabel)).map(O=>O.nzValue).filter(O=>-1===this.listOfValue.findIndex(j=>this.compareWith(j,O)));if("multiple"===this.nzMode)this.updateListOfValue([...this.listOfValue,...N]);else if("tags"===this.nzMode){const O=b.filter(j=>-1===this.listOfTagAndTemplateItem.findIndex(L=>L.nzLabel===j));this.updateListOfValue([...this.listOfValue,...N,...O])}this.clearInput()}onKeyDown(b){if(this.nzDisabled)return;const N=this.listOfContainerItem.filter(j=>"item"===j.type).filter(j=>!j.nzDisabled),O=N.findIndex(j=>this.compareWith(j.nzValue,this.activatedValue));switch(b.keyCode){case S.LH:b.preventDefault(),this.nzOpen&&N.length>0&&(this.activatedValue=N[O>0?O-1:N.length-1].nzValue);break;case S.JH:b.preventDefault(),this.nzOpen&&N.length>0?this.activatedValue=N[O{this.triggerWidth=this.originElement.nativeElement.getBoundingClientRect().width,b!==this.triggerWidth&&this.cdr.detectChanges()})}}updateCdkConnectedOverlayPositions(){(0,ze.e)(()=>{this.cdkConnectedOverlay?.overlayRef?.updatePosition()})}constructor(b,N,O,j,L,he,Ce,bt,Ft,sn,pn,vn){this.ngZone=b,this.destroy$=N,this.nzConfigService=O,this.cdr=j,this.host=L,this.renderer=he,this.platform=Ce,this.focusMonitor=bt,this.directionality=Ft,this.noAnimation=sn,this.nzFormStatusService=pn,this.nzFormNoStatusService=vn,this._nzModuleName="select",this.nzId=null,this.nzSize="default",this.nzStatus="",this.nzOptionHeightPx=32,this.nzOptionOverflowSize=8,this.nzDropdownClassName=null,this.nzDropdownMatchSelectWidth=!0,this.nzDropdownStyle=null,this.nzNotFoundContent=void 0,this.nzPlaceHolder=null,this.nzPlacement=null,this.nzMaxTagCount=1/0,this.nzDropdownRender=null,this.nzCustomTemplate=null,this.nzSuffixIcon=null,this.nzClearIcon=null,this.nzRemoveIcon=null,this.nzMenuItemSelectedIcon=null,this.nzTokenSeparators=[],this.nzMaxTagPlaceholder=null,this.nzMaxMultipleCount=1/0,this.nzMode="default",this.nzFilterOption=Pe,this.compareWith=(Dn,Mn)=>Dn===Mn,this.nzAllowClear=!1,this.nzBorderless=!1,this.nzShowSearch=!1,this.nzLoading=!1,this.nzAutoFocus=!1,this.nzAutoClearSearchValue=!0,this.nzServerSearch=!1,this.nzDisabled=!1,this.nzOpen=!1,this.nzSelectOnTab=!1,this.nzBackdrop=!1,this.nzOptions=[],this.nzOnSearch=new e.vpe,this.nzScrollToBottom=new e.vpe,this.nzOpenChange=new e.vpe,this.nzBlur=new e.vpe,this.nzFocus=new e.vpe,this.listOfValue$=new i.X([]),this.listOfTemplateItem$=new i.X([]),this.listOfTagAndTemplateItem=[],this.searchValue="",this.isReactiveDriven=!1,this.requestId=-1,this.isNzDisableFirstChange=!0,this.onChange=()=>{},this.onTouched=()=>{},this.dropDownPosition="bottomLeft",this.triggerWidth=null,this.listOfContainerItem=[],this.listOfTopItem=[],this.activatedValue=null,this.listOfValue=[],this.focused=!1,this.dir="ltr",this.positions=[],this.prefixCls="ant-select",this.statusCls={},this.status="",this.hasFeedback=!1}writeValue(b){if(this.value!==b){this.value=b;const O=((j,L)=>null==j?[]:"default"===this.nzMode?[j]:j)(b);this.listOfValue=O,this.listOfValue$.next(O),this.cdr.markForCheck()}}registerOnChange(b){this.onChange=b}registerOnTouched(b){this.onTouched=b}setDisabledState(b){this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||b,this.isNzDisableFirstChange=!1,this.nzDisabled&&this.setOpenState(!1),this.cdr.markForCheck()}ngOnChanges(b){const{nzOpen:N,nzDisabled:O,nzOptions:j,nzStatus:L,nzPlacement:he}=b;if(N&&this.onOpenChange(),O&&this.nzDisabled&&this.setOpenState(!1),j){this.isReactiveDriven=!0;const bt=(this.nzOptions||[]).map(Ft=>({template:Ft.label instanceof e.Rgc?Ft.label:null,nzTitle:this.getTitle(Ft.title,Ft.label),nzLabel:"string"==typeof Ft.label||"number"==typeof Ft.label?Ft.label:null,nzValue:Ft.value,nzDisabled:Ft.disabled||!1,nzHide:Ft.hide||!1,nzCustomContent:Ft.label instanceof e.Rgc,groupLabel:Ft.groupLabel||null,type:"item",key:void 0===Ft.key?Ft.value:Ft.key}));this.listOfTemplateItem$.next(bt)}if(L&&this.setStatusStyles(this.nzStatus,this.hasFeedback),he){const{currentValue:Ce}=he;this.dropDownPosition=Ce;const bt=["bottomLeft","topLeft","bottomRight","topRight"];this.positions=Ce&&bt.includes(Ce)?[W.yW[Ce]]:bt.map(Ft=>W.yW[Ft])}}ngOnInit(){this.nzFormStatusService?.formStatusChanges.pipe((0,g.x)((b,N)=>b.status===N.status&&b.hasFeedback===N.hasFeedback),(0,d.M)(this.nzFormNoStatusService?this.nzFormNoStatusService.noFormStatus:(0,l.of)(!1)),(0,p.U)(([{status:b,hasFeedback:N},O])=>({status:O?"":b,hasFeedback:N})),(0,h.R)(this.destroy$)).subscribe(({status:b,hasFeedback:N})=>{this.setStatusStyles(b,N)}),this.focusMonitor.monitor(this.host,!0).pipe((0,h.R)(this.destroy$)).subscribe(b=>{b?(this.focused=!0,this.cdr.markForCheck(),this.nzFocus.emit()):(this.focused=!1,this.cdr.markForCheck(),this.nzBlur.emit(),Promise.resolve().then(()=>{this.onTouched()}))}),(0,C.a)([this.listOfValue$,this.listOfTemplateItem$]).pipe((0,h.R)(this.destroy$)).subscribe(([b,N])=>{const O=b.filter(()=>"tags"===this.nzMode).filter(j=>-1===N.findIndex(L=>this.compareWith(L.nzValue,j))).map(j=>this.listOfTopItem.find(L=>this.compareWith(L.nzValue,j))||this.generateTagItem(j));this.listOfTagAndTemplateItem=[...N,...O],this.listOfTopItem=this.listOfValue.map(j=>[...this.listOfTagAndTemplateItem,...this.listOfTopItem].find(L=>this.compareWith(j,L.nzValue))).filter(j=>!!j),this.updateListOfContainerItem()}),this.directionality.change?.pipe((0,h.R)(this.destroy$)).subscribe(b=>{this.dir=b,this.cdr.detectChanges()}),this.nzConfigService.getConfigChangeEventForComponent("select").pipe((0,h.R)(this.destroy$)).subscribe(()=>{this.cdr.markForCheck()}),this.dir=this.directionality.value,this.ngZone.runOutsideAngular(()=>(0,t.R)(this.host.nativeElement,"click").pipe((0,h.R)(this.destroy$)).subscribe(()=>{this.nzOpen&&this.nzShowSearch||this.nzDisabled||this.ngZone.run(()=>this.setOpenState(!this.nzOpen))})),this.cdkConnectedOverlay.overlayKeydown.pipe((0,h.R)(this.destroy$)).subscribe(b=>{b.keyCode===S.hY&&this.setOpenState(!1)})}ngAfterContentInit(){this.isReactiveDriven||(0,E.T)(this.listOfNzOptionGroupComponent.changes,this.listOfNzOptionComponent.changes).pipe((0,v.O)(!0),(0,f.w)(()=>(0,E.T)(this.listOfNzOptionComponent.changes,this.listOfNzOptionGroupComponent.changes,...this.listOfNzOptionComponent.map(b=>b.changes),...this.listOfNzOptionGroupComponent.map(b=>b.changes)).pipe((0,v.O)(!0))),(0,h.R)(this.destroy$)).subscribe(()=>{const b=this.listOfNzOptionComponent.toArray().map(N=>{const{template:O,nzLabel:j,nzValue:L,nzKey:he,nzDisabled:Ce,nzHide:bt,nzCustomContent:Ft,groupLabel:sn}=N;return{template:O,nzLabel:j,nzValue:L,nzDisabled:Ce,nzHide:bt,nzCustomContent:Ft,groupLabel:sn,nzTitle:this.getTitle(N.nzTitle,N.nzLabel),type:"item",key:void 0===he?L:he}});this.listOfTemplateItem$.next(b),this.cdr.markForCheck()})}ngOnDestroy(){(0,ze.h)(this.requestId),this.focusMonitor.stopMonitoring(this.host)}setStatusStyles(b,N){this.status=b,this.hasFeedback=N,this.cdr.markForCheck(),this.statusCls=(0,P.Zu)(this.prefixCls,b,N),Object.keys(this.statusCls).forEach(O=>{this.statusCls[O]?this.renderer.addClass(this.host.nativeElement,O):this.renderer.removeClass(this.host.nativeElement,O)})}getTitle(b,N){let O;return void 0===b?("string"==typeof N||"number"==typeof N)&&(O=N.toString()):("string"==typeof b||"number"==typeof b)&&(O=b.toString()),O}static#e=this.\u0275fac=function(N){return new(N||_e)(e.Y36(e.R0b),e.Y36(y.kn),e.Y36($.jY),e.Y36(e.sBO),e.Y36(e.SBq),e.Y36(e.Qsj),e.Y36(V.t4),e.Y36(Y.tE),e.Y36(K.Is,8),e.Y36(G.P,9),e.Y36(te.kH,8),e.Y36(te.yW,8))};static#t=this.\u0275cmp=e.Xpm({type:_e,selectors:[["nz-select"]],contentQueries:function(N,O,j){if(1&N&&(e.Suo(j,qe,5),e.Suo(j,xt,5)),2&N){let L;e.iGM(L=e.CRH())&&(O.listOfNzOptionComponent=L),e.iGM(L=e.CRH())&&(O.listOfNzOptionGroupComponent=L)}},viewQuery:function(N,O){if(1&N&&(e.Gf(A.xu,7,e.SBq),e.Gf(A.pI,7),e.Gf(Ue,7),e.Gf(xt,7,e.SBq),e.Gf(Ue,7,e.SBq)),2&N){let j;e.iGM(j=e.CRH())&&(O.originElement=j.first),e.iGM(j=e.CRH())&&(O.cdkConnectedOverlay=j.first),e.iGM(j=e.CRH())&&(O.nzSelectTopControlComponent=j.first),e.iGM(j=e.CRH())&&(O.nzOptionGroupComponentElement=j.first),e.iGM(j=e.CRH())&&(O.nzSelectTopControlComponentElement=j.first)}},hostAttrs:[1,"ant-select"],hostVars:26,hostBindings:function(N,O){2&N&&e.ekj("ant-select-in-form-item",!!O.nzFormStatusService)("ant-select-lg","large"===O.nzSize)("ant-select-sm","small"===O.nzSize)("ant-select-show-arrow",O.nzShowArrow)("ant-select-disabled",O.nzDisabled)("ant-select-show-search",(O.nzShowSearch||"default"!==O.nzMode)&&!O.nzDisabled)("ant-select-allow-clear",O.nzAllowClear)("ant-select-borderless",O.nzBorderless)("ant-select-open",O.nzOpen)("ant-select-focused",O.nzOpen||O.focused)("ant-select-single","default"===O.nzMode)("ant-select-multiple","default"!==O.nzMode)("ant-select-rtl","rtl"===O.dir)},inputs:{nzId:"nzId",nzSize:"nzSize",nzStatus:"nzStatus",nzOptionHeightPx:"nzOptionHeightPx",nzOptionOverflowSize:"nzOptionOverflowSize",nzDropdownClassName:"nzDropdownClassName",nzDropdownMatchSelectWidth:"nzDropdownMatchSelectWidth",nzDropdownStyle:"nzDropdownStyle",nzNotFoundContent:"nzNotFoundContent",nzPlaceHolder:"nzPlaceHolder",nzPlacement:"nzPlacement",nzMaxTagCount:"nzMaxTagCount",nzDropdownRender:"nzDropdownRender",nzCustomTemplate:"nzCustomTemplate",nzSuffixIcon:"nzSuffixIcon",nzClearIcon:"nzClearIcon",nzRemoveIcon:"nzRemoveIcon",nzMenuItemSelectedIcon:"nzMenuItemSelectedIcon",nzTokenSeparators:"nzTokenSeparators",nzMaxTagPlaceholder:"nzMaxTagPlaceholder",nzMaxMultipleCount:"nzMaxMultipleCount",nzMode:"nzMode",nzFilterOption:"nzFilterOption",compareWith:"compareWith",nzAllowClear:"nzAllowClear",nzBorderless:"nzBorderless",nzShowSearch:"nzShowSearch",nzLoading:"nzLoading",nzAutoFocus:"nzAutoFocus",nzAutoClearSearchValue:"nzAutoClearSearchValue",nzServerSearch:"nzServerSearch",nzDisabled:"nzDisabled",nzOpen:"nzOpen",nzSelectOnTab:"nzSelectOnTab",nzBackdrop:"nzBackdrop",nzOptions:"nzOptions",nzShowArrow:"nzShowArrow"},outputs:{nzOnSearch:"nzOnSearch",nzScrollToBottom:"nzScrollToBottom",nzOpenChange:"nzOpenChange",nzBlur:"nzBlur",nzFocus:"nzFocus"},exportAs:["nzSelect"],features:[e._Bn([y.kn,{provide:k.JU,useExisting:(0,e.Gpc)(()=>_e),multi:!0}]),e.TTD],decls:5,vars:25,consts:[["cdkOverlayOrigin","",3,"nzId","open","disabled","mode","nzNoAnimation","maxTagPlaceholder","removeIcon","placeHolder","maxTagCount","customTemplate","tokenSeparators","showSearch","autofocus","listOfTopItem","inputValueChange","tokenize","deleteItem","keydown"],["origin","cdkOverlayOrigin"],[3,"showArrow","loading","search","suffixIcon","feedbackIcon",4,"ngIf"],[3,"clearIcon","clear",4,"ngIf"],["cdkConnectedOverlay","","nzConnectedOverlay","",3,"cdkConnectedOverlayHasBackdrop","cdkConnectedOverlayMinWidth","cdkConnectedOverlayWidth","cdkConnectedOverlayOrigin","cdkConnectedOverlayTransformOriginOn","cdkConnectedOverlayPanelClass","cdkConnectedOverlayOpen","cdkConnectedOverlayPositions","overlayOutsideClick","detach","positionChange"],[3,"showArrow","loading","search","suffixIcon","feedbackIcon"],["feedbackIconTpl",""],[3,"status",4,"ngIf"],[3,"status"],[3,"clearIcon","clear"],[3,"ngStyle","itemSize","maxItemLength","matchWidth","nzNoAnimation","listOfContainerItem","menuItemSelectedIcon","notFoundContent","activatedValue","listOfSelectedValue","dropdownRender","compareWith","mode","keydown","itemClick","scrollToBottom"]],template:function(N,O){if(1&N&&(e.TgZ(0,"nz-select-top-control",0,1),e.NdJ("inputValueChange",function(L){return O.onInputValueChange(L)})("tokenize",function(L){return O.onTokenSeparate(L)})("deleteItem",function(L){return O.onItemDelete(L)})("keydown",function(L){return O.onKeyDown(L)}),e.qZA(),e.YNc(2,et,3,5,"nz-select-arrow",2),e.YNc(3,It,1,1,"nz-select-clear",3),e.YNc(4,Ot,1,23,"ng-template",4),e.NdJ("overlayOutsideClick",function(L){return O.onClickOutside(L)})("detach",function(){return O.setOpenState(!1)})("positionChange",function(L){return O.onPositionChange(L)})),2&N){const j=e.MAs(1);e.Q6J("nzId",O.nzId)("open",O.nzOpen)("disabled",O.nzDisabled)("mode",O.nzMode)("@.disabled",!(null==O.noAnimation||!O.noAnimation.nzNoAnimation))("nzNoAnimation",null==O.noAnimation?null:O.noAnimation.nzNoAnimation)("maxTagPlaceholder",O.nzMaxTagPlaceholder)("removeIcon",O.nzRemoveIcon)("placeHolder",O.nzPlaceHolder)("maxTagCount",O.nzMaxTagCount)("customTemplate",O.nzCustomTemplate)("tokenSeparators",O.nzTokenSeparators)("showSearch",O.nzShowSearch)("autofocus",O.nzAutoFocus)("listOfTopItem",O.listOfTopItem),e.xp6(2),e.Q6J("ngIf",O.nzShowArrow||O.hasFeedback&&!!O.status),e.xp6(1),e.Q6J("ngIf",O.nzAllowClear&&!O.nzDisabled&&O.listOfValue.length),e.xp6(1),e.Q6J("cdkConnectedOverlayHasBackdrop",O.nzBackdrop)("cdkConnectedOverlayMinWidth",O.nzDropdownMatchSelectWidth?null:O.triggerWidth)("cdkConnectedOverlayWidth",O.nzDropdownMatchSelectWidth?O.triggerWidth:null)("cdkConnectedOverlayOrigin",j)("cdkConnectedOverlayTransformOriginOn",".ant-select-dropdown")("cdkConnectedOverlayPanelClass",O.nzDropdownClassName)("cdkConnectedOverlayOpen",O.nzOpen)("cdkConnectedOverlayPositions",O.positions)}},dependencies:[z.O5,z.PC,A.pI,A.xu,W.hQ,G.P,x.w,te.w_,pe,Ue,wt,De],encapsulation:2,data:{animation:[R.mF]},changeDetection:0})}return(0,_.gn)([(0,$.oS)()],_e.prototype,"nzSuffixIcon",void 0),(0,_.gn)([(0,P.yF)()],_e.prototype,"nzAllowClear",void 0),(0,_.gn)([(0,$.oS)(),(0,P.yF)()],_e.prototype,"nzBorderless",void 0),(0,_.gn)([(0,P.yF)()],_e.prototype,"nzShowSearch",void 0),(0,_.gn)([(0,P.yF)()],_e.prototype,"nzLoading",void 0),(0,_.gn)([(0,P.yF)()],_e.prototype,"nzAutoFocus",void 0),(0,_.gn)([(0,P.yF)()],_e.prototype,"nzAutoClearSearchValue",void 0),(0,_.gn)([(0,P.yF)()],_e.prototype,"nzServerSearch",void 0),(0,_.gn)([(0,P.yF)()],_e.prototype,"nzDisabled",void 0),(0,_.gn)([(0,P.yF)()],_e.prototype,"nzOpen",void 0),(0,_.gn)([(0,P.yF)()],_e.prototype,"nzSelectOnTab",void 0),(0,_.gn)([(0,$.oS)(),(0,P.yF)()],_e.prototype,"nzBackdrop",void 0),_e})(),Ke=(()=>{class _e{static#e=this.\u0275fac=function(N){return new(N||_e)};static#t=this.\u0275mod=e.oAB({type:_e});static#n=this.\u0275inj=e.cJS({imports:[K.vT,z.ez,ne.YI,k.u5,V.ud,A.U8,T.PV,D.T,M.Xo,W.e4,G.g,x.a,te.mJ,u.Cl,Y.rt]})}return _e})()},24139:(nt,I,o)=>{"use strict";o.d(I,{H0:()=>S,ng:()=>P});var e=o(65879),n=o(27754),t=o(96814),i=o(97582),l=o(49388);const E=["nzType","avatar"];function M(A,k){if(1&A&&(e.TgZ(0,"div",5),e._UZ(1,"nz-skeleton-element",6),e.qZA()),2&A){const R=e.oxw(2);e.xp6(1),e.Q6J("nzSize",R.avatar.size||"default")("nzShape",R.avatar.shape||"circle")}}function h(A,k){if(1&A&&e._UZ(0,"h3",7),2&A){const R=e.oxw(2);e.Udp("width",R.toCSSUnit(R.title.width))}}function v(A,k){if(1&A&&e._UZ(0,"li"),2&A){const R=k.index,$=e.oxw(3);e.Udp("width",$.toCSSUnit($.widthList[R]))}}function g(A,k){if(1&A&&(e.TgZ(0,"ul",8),e.YNc(1,v,1,2,"li",9),e.qZA()),2&A){const R=e.oxw(2);e.xp6(1),e.Q6J("ngForOf",R.rowsList)}}function d(A,k){if(1&A&&(e.ynx(0),e.YNc(1,M,2,2,"div",1),e.TgZ(2,"div",2),e.YNc(3,h,1,2,"h3",3),e.YNc(4,g,2,1,"ul",4),e.qZA(),e.BQk()),2&A){const R=e.oxw();e.xp6(1),e.Q6J("ngIf",!!R.nzAvatar),e.xp6(2),e.Q6J("ngIf",!!R.nzTitle),e.xp6(1),e.Q6J("ngIf",!!R.nzParagraph)}}function p(A,k){1&A&&(e.ynx(0),e.Hsn(1),e.BQk())}const f=["*"];let y=(()=>{class A{constructor(){this.nzActive=!1,this.nzBlock=!1}static#e=this.\u0275fac=function($){return new($||A)};static#t=this.\u0275dir=e.lG2({type:A,selectors:[["nz-skeleton-element"]],hostAttrs:[1,"ant-skeleton","ant-skeleton-element"],hostVars:4,hostBindings:function($,W){2&$&&e.ekj("ant-skeleton-active",W.nzActive)("ant-skeleton-block",W.nzBlock)},inputs:{nzActive:"nzActive",nzType:"nzType",nzBlock:"nzBlock"}})}return(0,i.gn)([(0,n.yF)()],A.prototype,"nzBlock",void 0),A})(),x=(()=>{class A{constructor(){this.nzShape="circle",this.nzSize="default",this.styleMap={}}ngOnChanges(R){if(R.nzSize&&"number"==typeof this.nzSize){const $=`${this.nzSize}px`;this.styleMap={width:$,height:$,"line-height":$}}else this.styleMap={}}static#e=this.\u0275fac=function($){return new($||A)};static#t=this.\u0275cmp=e.Xpm({type:A,selectors:[["nz-skeleton-element","nzType","avatar"]],inputs:{nzShape:"nzShape",nzSize:"nzSize"},features:[e.TTD],attrs:E,decls:1,vars:9,consts:[[1,"ant-skeleton-avatar",3,"ngStyle"]],template:function($,W){1&$&&e._UZ(0,"span",0),2&$&&(e.ekj("ant-skeleton-avatar-square","square"===W.nzShape)("ant-skeleton-avatar-circle","circle"===W.nzShape)("ant-skeleton-avatar-lg","large"===W.nzSize)("ant-skeleton-avatar-sm","small"===W.nzSize),e.Q6J("ngStyle",W.styleMap))},dependencies:[t.PC],encapsulation:2,changeDetection:0})}return A})(),P=(()=>{class A{constructor(R){this.cdr=R,this.nzActive=!1,this.nzLoading=!0,this.nzRound=!1,this.nzTitle=!0,this.nzAvatar=!1,this.nzParagraph=!0,this.rowsList=[],this.widthList=[]}toCSSUnit(R=""){return(0,n.WX)(R)}getTitleProps(){const R=!!this.nzAvatar,$=!!this.nzParagraph;let W="";return!R&&$?W="38%":R&&$&&(W="50%"),{width:W,...this.getProps(this.nzTitle)}}getAvatarProps(){return{shape:this.nzTitle&&!this.nzParagraph?"square":"circle",size:"large",...this.getProps(this.nzAvatar)}}getParagraphProps(){const R=!!this.nzAvatar,$=!!this.nzTitle,W={};return(!R||!$)&&(W.width="61%"),W.rows=!R&&$?3:2,{...W,...this.getProps(this.nzParagraph)}}getProps(R){return R&&"object"==typeof R?R:{}}getWidthList(){const{width:R,rows:$}=this.paragraph;let W=[];return R&&Array.isArray(R)?W=R:R&&!Array.isArray(R)&&(W=[],W[$-1]=R),W}updateProps(){this.title=this.getTitleProps(),this.avatar=this.getAvatarProps(),this.paragraph=this.getParagraphProps(),this.rowsList=[...Array(this.paragraph.rows)],this.widthList=this.getWidthList(),this.cdr.markForCheck()}ngOnInit(){this.updateProps()}ngOnChanges(R){(R.nzTitle||R.nzAvatar||R.nzParagraph)&&this.updateProps()}static#e=this.\u0275fac=function($){return new($||A)(e.Y36(e.sBO))};static#t=this.\u0275cmp=e.Xpm({type:A,selectors:[["nz-skeleton"]],hostAttrs:[1,"ant-skeleton"],hostVars:6,hostBindings:function($,W){2&$&&e.ekj("ant-skeleton-with-avatar",!!W.nzAvatar)("ant-skeleton-active",W.nzActive)("ant-skeleton-round",!!W.nzRound)},inputs:{nzActive:"nzActive",nzLoading:"nzLoading",nzRound:"nzRound",nzTitle:"nzTitle",nzAvatar:"nzAvatar",nzParagraph:"nzParagraph"},exportAs:["nzSkeleton"],features:[e.TTD],ngContentSelectors:f,decls:2,vars:2,consts:[[4,"ngIf"],["class","ant-skeleton-header",4,"ngIf"],[1,"ant-skeleton-content"],["class","ant-skeleton-title",3,"width",4,"ngIf"],["class","ant-skeleton-paragraph",4,"ngIf"],[1,"ant-skeleton-header"],["nzType","avatar",3,"nzSize","nzShape"],[1,"ant-skeleton-title"],[1,"ant-skeleton-paragraph"],[3,"width",4,"ngFor","ngForOf"]],template:function($,W){1&$&&(e.F$t(),e.YNc(0,d,5,3,"ng-container",0),e.YNc(1,p,2,0,"ng-container",0)),2&$&&(e.Q6J("ngIf",W.nzLoading),e.xp6(1),e.Q6J("ngIf",!W.nzLoading))},dependencies:[t.sg,t.O5,y,x],encapsulation:2,changeDetection:0})}return A})(),S=(()=>{class A{static#e=this.\u0275fac=function($){return new($||A)};static#t=this.\u0275mod=e.oAB({type:A});static#n=this.\u0275inj=e.cJS({imports:[l.vT,t.ez]})}return A})()},20012:(nt,I,o)=>{"use strict";o.d(I,{N3:()=>be,jS:()=>G});var e=o(97582),n=o(36028),t=o(65879),i=o(60095),l=o(78645),C=o(92438),E=o(63019),u=o(59773),z=o(32181),M=o(99397),h=o(37398),v=o(93997),g=o(27754),d=o(96109),p=o(96814),f=o(62831),y=o(49388);const T=["handle"];function x(ce,Q){if(1&ce&&t._UZ(0,"span",2),2&ce){const ie=Q.$implicit;t.ekj("ant-slider-dot-active",ie.active),t.Q6J("ngStyle",ie.style)}}function D(ce,Q){if(1&ce&&t._UZ(0,"span",2),2&ce){const ie=Q.$implicit;t.ekj("ant-slider-mark-active",ie.active),t.Q6J("ngStyle",ie.style)("innerHTML",ie.label,t.oJD)}}const _=["slider"];function P(ce,Q){if(1&ce&&t._UZ(0,"nz-slider-step",6),2&ce){const ie=t.oxw();t.Q6J("vertical",ie.nzVertical)("min",ie.nzMin)("max",ie.nzMax)("lowerBound",ie.bounds.lower)("upperBound",ie.bounds.upper)("marksArray",ie.marksArray)("included",ie.nzIncluded)("reverse",ie.nzReverse)}}function S(ce,Q){if(1&ce){const ie=t.EpF();t.TgZ(0,"nz-slider-handle",7),t.NdJ("focusin",function(){const Me=t.CHM(ie).index,Ye=t.oxw();return t.KtG(Ye.onHandleFocusIn(Me))}),t.qZA()}if(2&ce){const ie=Q.$implicit,ae=t.oxw();t.Q6J("vertical",ae.nzVertical)("reverse",ae.nzReverse)("offset",ie.offset)("value",ie.value)("active",ie.active)("tooltipFormatter",ae.nzTipFormatter)("tooltipVisible",ae.nzTooltipVisible)("tooltipPlacement",ae.nzTooltipPlacement)("dir",ae.dir)}}function A(ce,Q){if(1&ce&&t._UZ(0,"nz-slider-marks",6),2&ce){const ie=t.oxw();t.Q6J("vertical",ie.nzVertical)("min",ie.nzMin)("max",ie.nzMax)("lowerBound",ie.bounds.lower)("upperBound",ie.bounds.upper)("marksArray",ie.marksArray)("included",ie.nzIncluded)("reverse",ie.nzReverse)}}let k=(()=>{class ce{constructor(){this.isDragging=!1}static#e=this.\u0275fac=function(ae){return new(ae||ce)};static#t=this.\u0275prov=t.Yz7({token:ce,factory:ce.\u0275fac})}return ce})(),R=(()=>{class ce{constructor(ie,ae){this.sliderService=ie,this.cdr=ae,this.tooltipVisible="default",this.active=!1,this.dir="ltr",this.style={},this.enterHandle=()=>{this.sliderService.isDragging||(this.toggleTooltip(!0),this.updateTooltipPosition(),this.cdr.detectChanges())},this.leaveHandle=()=>{this.sliderService.isDragging||(this.toggleTooltip(!1),this.cdr.detectChanges())}}ngOnChanges(ie){const{offset:ae,value:xe,active:Me,tooltipVisible:Ye,reverse:q,dir:ve}=ie;(ae||q||ve)&&this.updateStyle(),xe&&(this.updateTooltipTitle(),this.updateTooltipPosition()),Me&&this.toggleTooltip(!!Me.currentValue),"always"===Ye?.currentValue&&Promise.resolve().then(()=>this.toggleTooltip(!0,!0))}focus(){this.handleEl?.nativeElement.focus()}toggleTooltip(ie,ae=!1){!ae&&("default"!==this.tooltipVisible||!this.tooltip)||(ie?this.tooltip?.show():this.tooltip?.hide())}updateTooltipTitle(){this.tooltipTitle=this.tooltipFormatter?this.tooltipFormatter(this.value):`${this.value}`}updateTooltipPosition(){this.tooltip&&Promise.resolve().then(()=>this.tooltip?.updatePosition())}updateStyle(){const ae=this.reverse,Me=this.vertical?{[ae?"top":"bottom"]:`${this.offset}%`,[ae?"bottom":"top"]:"auto",transform:ae?null:"translateY(+50%)"}:{...this.getHorizontalStylePosition(),transform:`translateX(${ae?"rtl"===this.dir?"-":"+":"rtl"===this.dir?"+":"-"}50%)`};this.style=Me,this.cdr.markForCheck()}getHorizontalStylePosition(){let ie=this.reverse?"auto":`${this.offset}%`,ae=this.reverse?`${this.offset}%`:"auto";if("rtl"===this.dir){const xe=ie;ie=ae,ae=xe}return{left:ie,right:ae}}static#e=this.\u0275fac=function(ae){return new(ae||ce)(t.Y36(k),t.Y36(t.sBO))};static#t=this.\u0275cmp=t.Xpm({type:ce,selectors:[["nz-slider-handle"]],viewQuery:function(ae,xe){if(1&ae&&(t.Gf(T,5),t.Gf(d.SY,5)),2&ae){let Me;t.iGM(Me=t.CRH())&&(xe.handleEl=Me.first),t.iGM(Me=t.CRH())&&(xe.tooltip=Me.first)}},hostBindings:function(ae,xe){1&ae&&t.NdJ("mouseenter",function(){return xe.enterHandle()})("mouseleave",function(){return xe.leaveHandle()})},inputs:{vertical:"vertical",reverse:"reverse",offset:"offset",value:"value",tooltipVisible:"tooltipVisible",tooltipPlacement:"tooltipPlacement",tooltipFormatter:"tooltipFormatter",active:"active",dir:"dir"},exportAs:["nzSliderHandle"],features:[t.TTD],decls:2,vars:4,consts:[["tabindex","0","nz-tooltip","",1,"ant-slider-handle",3,"ngStyle","nzTooltipTitle","nzTooltipTrigger","nzTooltipPlacement"],["handle",""]],template:function(ae,xe){1&ae&&t._UZ(0,"div",0,1),2&ae&&t.Q6J("ngStyle",xe.style)("nzTooltipTitle",null===xe.tooltipFormatter||"never"===xe.tooltipVisible?null:xe.tooltipTitle)("nzTooltipTrigger",null)("nzTooltipPlacement",xe.tooltipPlacement)},dependencies:[p.PC,d.SY],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,g.yF)()],ce.prototype,"active",void 0),ce})(),$=(()=>{class ce{constructor(){this.offset=0,this.reverse=!1,this.dir="ltr",this.length=0,this.vertical=!1,this.included=!1,this.style={}}ngOnChanges(){const ae=this.reverse,xe=this.included?"visible":"hidden",Ye=this.length,q=this.vertical?{[ae?"top":"bottom"]:`${this.offset}%`,[ae?"bottom":"top"]:"auto",height:`${Ye}%`,visibility:xe}:{...this.getHorizontalStylePosition(),width:`${Ye}%`,visibility:xe};this.style=q}getHorizontalStylePosition(){let ie=this.reverse?"auto":`${this.offset}%`,ae=this.reverse?`${this.offset}%`:"auto";if("rtl"===this.dir){const xe=ie;ie=ae,ae=xe}return{left:ie,right:ae}}static#e=this.\u0275fac=function(ae){return new(ae||ce)};static#t=this.\u0275cmp=t.Xpm({type:ce,selectors:[["nz-slider-track"]],inputs:{offset:"offset",reverse:"reverse",dir:"dir",length:"length",vertical:"vertical",included:"included"},exportAs:["nzSliderTrack"],features:[t.TTD],decls:1,vars:1,consts:[[1,"ant-slider-track",3,"ngStyle"]],template:function(ae,xe){1&ae&&t._UZ(0,"div",0),2&ae&&t.Q6J("ngStyle",xe.style)},dependencies:[p.PC],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,g.Rn)()],ce.prototype,"offset",void 0),(0,e.gn)([(0,g.yF)()],ce.prototype,"reverse",void 0),(0,e.gn)([(0,g.Rn)()],ce.prototype,"length",void 0),(0,e.gn)([(0,g.yF)()],ce.prototype,"vertical",void 0),(0,e.gn)([(0,g.yF)()],ce.prototype,"included",void 0),ce})(),W=(()=>{class ce{constructor(){this.lowerBound=null,this.upperBound=null,this.marksArray=[],this.vertical=!1,this.included=!1,this.steps=[]}ngOnChanges(ie){const{marksArray:ae,lowerBound:xe,upperBound:Me,reverse:Ye}=ie;(ae||Ye)&&this.buildSteps(),(ae||xe||Me||Ye)&&this.togglePointActive()}trackById(ie,ae){return ae.value}buildSteps(){const ie=this.vertical?"bottom":"left";this.steps=this.marksArray.map(ae=>{const{value:xe,config:Me}=ae;let Ye=ae.offset;return this.reverse&&(Ye=(this.max-xe)/(this.max-this.min)*100),{value:xe,offset:Ye,config:Me,active:!1,style:{[ie]:`${Ye}%`}}})}togglePointActive(){this.steps&&null!==this.lowerBound&&null!==this.upperBound&&this.steps.forEach(ie=>{const ae=ie.value;ie.active=!this.included&&ae===this.upperBound||this.included&&ae<=this.upperBound&&ae>=this.lowerBound})}static#e=this.\u0275fac=function(ae){return new(ae||ce)};static#t=this.\u0275cmp=t.Xpm({type:ce,selectors:[["nz-slider-step"]],inputs:{lowerBound:"lowerBound",upperBound:"upperBound",marksArray:"marksArray",min:"min",max:"max",vertical:"vertical",included:"included",reverse:"reverse"},exportAs:["nzSliderStep"],features:[t.TTD],decls:2,vars:2,consts:[[1,"ant-slider-step"],["class","ant-slider-dot",3,"ant-slider-dot-active","ngStyle",4,"ngFor","ngForOf","ngForTrackBy"],[1,"ant-slider-dot",3,"ngStyle"]],template:function(ae,xe){1&ae&&(t.TgZ(0,"div",0),t.YNc(1,x,1,3,"span",1),t.qZA()),2&ae&&(t.xp6(1),t.Q6J("ngForOf",xe.steps)("ngForTrackBy",xe.trackById))},dependencies:[p.sg,p.PC],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,g.yF)()],ce.prototype,"vertical",void 0),(0,e.gn)([(0,g.yF)()],ce.prototype,"included",void 0),ce})(),ze=(()=>{class ce{constructor(){this.lowerBound=null,this.upperBound=null,this.marksArray=[],this.vertical=!1,this.included=!1,this.marks=[]}ngOnChanges(ie){const{marksArray:ae,lowerBound:xe,upperBound:Me,reverse:Ye}=ie;(ae||Ye)&&this.buildMarks(),(ae||xe||Me||Ye)&&this.togglePointActive()}trackById(ie,ae){return ae.value}buildMarks(){const ie=this.max-this.min;this.marks=this.marksArray.map(ae=>{const{value:xe,offset:Me,config:Ye}=ae,q=this.getMarkStyles(xe,ie,Ye);return{label:Y(Ye)?Ye.label:Ye,offset:Me,style:q,value:xe,config:Ye,active:!1}})}getMarkStyles(ie,ae,xe){let Me;const Ye=this.reverse?this.max+this.min-ie:ie;return Me=this.vertical?{marginBottom:"-50%",bottom:(Ye-this.min)/ae*100+"%"}:{transform:"translate3d(-50%, 0, 0)",left:(Ye-this.min)/ae*100+"%"},Y(xe)&&xe.style&&(Me={...Me,...xe.style}),Me}togglePointActive(){this.marks&&null!==this.lowerBound&&null!==this.upperBound&&this.marks.forEach(ie=>{const ae=ie.value;ie.active=!this.included&&ae===this.upperBound||this.included&&ae<=this.upperBound&&ae>=this.lowerBound})}static#e=this.\u0275fac=function(ae){return new(ae||ce)};static#t=this.\u0275cmp=t.Xpm({type:ce,selectors:[["nz-slider-marks"]],inputs:{lowerBound:"lowerBound",upperBound:"upperBound",marksArray:"marksArray",min:"min",max:"max",vertical:"vertical",included:"included",reverse:"reverse"},exportAs:["nzSliderMarks"],features:[t.TTD],decls:2,vars:2,consts:[[1,"ant-slider-mark"],["class","ant-slider-mark-text",3,"ant-slider-mark-active","ngStyle","innerHTML",4,"ngFor","ngForOf","ngForTrackBy"],[1,"ant-slider-mark-text",3,"ngStyle","innerHTML"]],template:function(ae,xe){1&ae&&(t.TgZ(0,"div",0),t.YNc(1,D,1,4,"span",1),t.qZA()),2&ae&&(t.xp6(1),t.Q6J("ngForOf",xe.marks)("ngForTrackBy",xe.trackById))},dependencies:[p.sg,p.PC],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,g.yF)()],ce.prototype,"vertical",void 0),(0,e.gn)([(0,g.yF)()],ce.prototype,"included",void 0),ce})();function Y(ce){return"string"!=typeof ce}let G=(()=>{class ce{constructor(ie,ae,xe,Me){this.sliderService=ie,this.cdr=ae,this.platform=xe,this.directionality=Me,this.nzDisabled=!1,this.nzDots=!1,this.nzIncluded=!0,this.nzRange=!1,this.nzVertical=!1,this.nzReverse=!1,this.nzMarks=null,this.nzMax=100,this.nzMin=0,this.nzStep=1,this.nzTooltipVisible="default",this.nzTooltipPlacement="top",this.nzOnAfterChange=new t.vpe,this.value=null,this.cacheSliderStart=null,this.cacheSliderLength=null,this.activeValueIndex=void 0,this.track={offset:null,length:null},this.handles=[],this.marksArray=null,this.bounds={lower:null,upper:null},this.dir="ltr",this.destroy$=new l.x,this.isNzDisableFirstChange=!0}ngOnInit(){this.dir=this.directionality.value,this.directionality.change?.pipe((0,u.R)(this.destroy$)).subscribe(ie=>{this.dir=ie,this.cdr.detectChanges(),this.updateTrackAndHandles(),this.onValueChange(this.getValue(!0))}),this.handles=te(this.nzRange?2:1),this.marksArray=this.nzMarks?this.generateMarkItems(this.nzMarks):null,this.bindDraggingHandlers(),this.toggleDragDisabled(this.nzDisabled),null===this.getValue()&&this.setValue(this.formatValue(null))}ngOnChanges(ie){const{nzDisabled:ae,nzMarks:xe,nzRange:Me}=ie;ae&&!ae.firstChange?this.toggleDragDisabled(ae.currentValue):xe&&!xe.firstChange?this.marksArray=this.nzMarks?this.generateMarkItems(this.nzMarks):null:Me&&!Me.firstChange&&(this.handles=te(Me.currentValue?2:1),this.setValue(this.formatValue(null)))}ngOnDestroy(){this.unsubscribeDrag(),this.destroy$.next(!0),this.destroy$.complete()}writeValue(ie){this.setValue(ie,!0)}onValueChange(ie){}onTouched(){}registerOnChange(ie){this.onValueChange=ie}registerOnTouched(ie){this.onTouched=ie}setDisabledState(ie){this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||ie,this.isNzDisableFirstChange=!1,this.toggleDragDisabled(this.nzDisabled),this.cdr.markForCheck()}onKeyDown(ie){if(this.nzDisabled)return;const ae=ie.keyCode,Me=ae===n.oh||ae===n.JH;if(ae!==n.SV&&ae!==n.LH&&!Me)return;ie.preventDefault();let Ye=(Me?-this.nzStep:this.nzStep)*(this.nzReverse?-1:1);Ye="rtl"===this.dir?-1*Ye:Ye,this.setActiveValue((0,g.xV)(this.nzRange?this.value[this.activeValueIndex]+Ye:this.value+Ye,this.nzMin,this.nzMax)),this.nzOnAfterChange.emit(this.getValue(!0))}onHandleFocusIn(ie){this.activeValueIndex=ie}setValue(ie,ae=!1){ae?(this.value=this.formatValue(ie),this.updateTrackAndHandles()):function re(ce,Q){return typeof ce==typeof Q&&(K(ce)&&K(Q)?(0,g.cO)(ce,Q):ce===Q)}(this.value,ie)||(this.value=ie,this.updateTrackAndHandles(),this.onValueChange(this.getValue(!0)))}getValue(ie=!1){return ie&&this.value&&K(this.value)?[...this.value].sort((ae,xe)=>ae-xe):this.value}getValueToOffset(ie){let ae=ie;return typeof ae>"u"&&(ae=this.getValue(!0)),K(ae)?ae.map(xe=>this.valueToOffset(xe)):this.valueToOffset(ae)}setActiveValueIndex(ie){const ae=this.getValue();if(K(ae)){let Me,xe=null,Ye=-1;ae.forEach((q,ve)=>{Me=Math.abs(ie-q),(null===xe||Me{ve.offset=K(ae)?ae[ee]:ae,ve.value=K(ie)?ie[ee]:ie||0}),[this.bounds.lower,this.bounds.upper]=Ye,[this.track.offset,this.track.length]=q,this.cdr.markForCheck()}onDragStart(ie){this.toggleDragMoving(!0),this.cacheSliderProperty(),this.setActiveValueIndex(this.getLogicalValue(ie)),this.setActiveValue(this.getLogicalValue(ie)),this.showHandleTooltip(this.nzRange?this.activeValueIndex:0)}onDragMove(ie){this.setActiveValue(this.getLogicalValue(ie)),this.cdr.markForCheck()}getLogicalValue(ie){return this.nzReverse?this.nzVertical||"rtl"!==this.dir?this.nzMax-ie+this.nzMin:ie:this.nzVertical||"rtl"!==this.dir?ie:this.nzMax-ie+this.nzMin}onDragEnd(){this.nzOnAfterChange.emit(this.getValue(!0)),this.toggleDragMoving(!1),this.cacheSliderProperty(!0),this.hideAllHandleTooltip(),this.cdr.markForCheck()}bindDraggingHandlers(){if(!this.platform.isBrowser)return;const ie=q=>ve=>q.reduce((ee,Be)=>ee[Be]||ee,ve),ae=this.slider.nativeElement,xe=this.nzVertical?"pageY":"pageX",Me={start:"mousedown",move:"mousemove",end:"mouseup",pluckKey:[xe]},Ye={start:"touchstart",move:"touchmove",end:"touchend",pluckKey:["touches","0",xe],filter:q=>q instanceof TouchEvent};[Me,Ye].forEach(q=>{const{start:ve,move:ee,end:Be,pluckKey:Re,filter:ct=(()=>!0)}=q;q.startPlucked$=(0,C.R)(ae,ve).pipe((0,z.h)(ct),(0,M.b)(g.jJ),(0,h.U)(ie(Re)),(0,h.U)(Ae=>this.findClosestValue(Ae))),q.end$=(0,C.R)(document,Be),q.moveResolved$=(0,C.R)(document,ee).pipe((0,z.h)(ct),(0,M.b)(g.jJ),(0,h.U)(ie(Re)),(0,v.x)(),(0,h.U)(Ae=>this.findClosestValue(Ae)),(0,v.x)(),(0,u.R)(q.end$))}),this.dragStart$=(0,E.T)(Me.startPlucked$,Ye.startPlucked$),this.dragMove$=(0,E.T)(Me.moveResolved$,Ye.moveResolved$),this.dragEnd$=(0,E.T)(Me.end$,Ye.end$)}subscribeDrag(ie=["start","move","end"]){-1!==ie.indexOf("start")&&this.dragStart$&&!this.dragStart_&&(this.dragStart_=this.dragStart$.subscribe(this.onDragStart.bind(this))),-1!==ie.indexOf("move")&&this.dragMove$&&!this.dragMove_&&(this.dragMove_=this.dragMove$.subscribe(this.onDragMove.bind(this))),-1!==ie.indexOf("end")&&this.dragEnd$&&!this.dragEnd_&&(this.dragEnd_=this.dragEnd$.subscribe(this.onDragEnd.bind(this)))}unsubscribeDrag(ie=["start","move","end"]){-1!==ie.indexOf("start")&&this.dragStart_&&(this.dragStart_.unsubscribe(),this.dragStart_=null),-1!==ie.indexOf("move")&&this.dragMove_&&(this.dragMove_.unsubscribe(),this.dragMove_=null),-1!==ie.indexOf("end")&&this.dragEnd_&&(this.dragEnd_.unsubscribe(),this.dragEnd_=null)}toggleDragMoving(ie){const ae=["move","end"];ie?(this.sliderService.isDragging=!0,this.subscribeDrag(ae)):(this.sliderService.isDragging=!1,this.unsubscribeDrag(ae))}toggleDragDisabled(ie){ie?this.unsubscribeDrag():this.subscribeDrag(["start"])}findClosestValue(ie){const ae=this.getSliderStartPosition(),xe=this.getSliderLength(),Me=(0,g.xV)((ie-ae)/xe,0,1),Ye=(this.nzMax-this.nzMin)*(this.nzVertical?1-Me:Me)+this.nzMin,q=null===this.nzMarks?[]:Object.keys(this.nzMarks).map(parseFloat).sort((Be,Re)=>Be-Re);if(0!==this.nzStep&&!this.nzDots){const Be=Math.round(Ye/this.nzStep)*this.nzStep;q.push(Be)}const ve=q.map(Be=>Math.abs(Ye-Be)),ee=q[ve.indexOf(Math.min(...ve))];return 0===this.nzStep?ee:parseFloat(ee.toFixed((0,g.p8)(this.nzStep)))}valueToOffset(ie){return(0,g.OY)(this.nzMin,this.nzMax,ie)}getSliderStartPosition(){if(null!==this.cacheSliderStart)return this.cacheSliderStart;const ie=(0,g.pW)(this.slider.nativeElement);return this.nzVertical?ie.top:ie.left}getSliderLength(){if(null!==this.cacheSliderLength)return this.cacheSliderLength;const ie=this.slider.nativeElement;return this.nzVertical?ie.clientHeight:ie.clientWidth}cacheSliderProperty(ie=!1){this.cacheSliderStart=ie?null:this.getSliderStartPosition(),this.cacheSliderLength=ie?null:this.getSliderLength()}formatValue(ie){return(0,g.kK)(ie)?this.nzRange?[this.nzMin,this.nzMax]:this.nzMin:function ne(ce,Q){return!(!K(ce)&&isNaN(ce)||K(ce)&&ce.some(ie=>isNaN(ie)))&&function fe(ce,Q=!1){if(K(ce)!==Q)throw function V(){return new Error('The "nzRange" can\'t match the "ngModel"\'s type, please check these properties: "nzRange", "ngModel", "nzDefaultValue".')}();return!0}(ce,Q)}(ie,this.nzRange)?K(ie)?ie.map(ae=>(0,g.xV)(ae,this.nzMin,this.nzMax)):(0,g.xV)(ie,this.nzMin,this.nzMax):this.nzDefaultValue?this.nzDefaultValue:this.nzRange?[this.nzMin,this.nzMax]:this.nzMin}showHandleTooltip(ie=0){this.handles.forEach((ae,xe)=>{ae.active=xe===ie})}hideAllHandleTooltip(){this.handles.forEach(ie=>ie.active=!1)}generateMarkItems(ie){const ae=[];for(const xe in ie)if(ie.hasOwnProperty(xe)){const Me=ie[xe],Ye="number"==typeof xe?xe:parseFloat(xe);Ye>=this.nzMin&&Ye<=this.nzMax&&ae.push({value:Ye,offset:this.valueToOffset(Ye),config:Me})}return ae.length?ae:null}static#e=this.\u0275fac=function(ae){return new(ae||ce)(t.Y36(k),t.Y36(t.sBO),t.Y36(f.t4),t.Y36(y.Is,8))};static#t=this.\u0275cmp=t.Xpm({type:ce,selectors:[["nz-slider"]],viewQuery:function(ae,xe){if(1&ae&&(t.Gf(_,7),t.Gf(R,5)),2&ae){let Me;t.iGM(Me=t.CRH())&&(xe.slider=Me.first),t.iGM(Me=t.CRH())&&(xe.handlerComponents=Me)}},hostBindings:function(ae,xe){1&ae&&t.NdJ("keydown",function(Ye){return xe.onKeyDown(Ye)})},inputs:{nzDisabled:"nzDisabled",nzDots:"nzDots",nzIncluded:"nzIncluded",nzRange:"nzRange",nzVertical:"nzVertical",nzReverse:"nzReverse",nzDefaultValue:"nzDefaultValue",nzMarks:"nzMarks",nzMax:"nzMax",nzMin:"nzMin",nzStep:"nzStep",nzTooltipVisible:"nzTooltipVisible",nzTooltipPlacement:"nzTooltipPlacement",nzTipFormatter:"nzTipFormatter"},outputs:{nzOnAfterChange:"nzOnAfterChange"},exportAs:["nzSlider"],features:[t._Bn([{provide:i.JU,useExisting:(0,t.Gpc)(()=>ce),multi:!0},k]),t.TTD],decls:7,vars:17,consts:[[1,"ant-slider"],["slider",""],[1,"ant-slider-rail"],[3,"vertical","included","offset","length","reverse","dir"],[3,"vertical","min","max","lowerBound","upperBound","marksArray","included","reverse",4,"ngIf"],[3,"vertical","reverse","offset","value","active","tooltipFormatter","tooltipVisible","tooltipPlacement","dir","focusin",4,"ngFor","ngForOf"],[3,"vertical","min","max","lowerBound","upperBound","marksArray","included","reverse"],[3,"vertical","reverse","offset","value","active","tooltipFormatter","tooltipVisible","tooltipPlacement","dir","focusin"]],template:function(ae,xe){1&ae&&(t.TgZ(0,"div",0,1),t._UZ(2,"div",2)(3,"nz-slider-track",3),t.YNc(4,P,1,8,"nz-slider-step",4),t.YNc(5,S,1,9,"nz-slider-handle",5),t.YNc(6,A,1,8,"nz-slider-marks",4),t.qZA()),2&ae&&(t.ekj("ant-slider-rtl","rtl"===xe.dir)("ant-slider-disabled",xe.nzDisabled)("ant-slider-vertical",xe.nzVertical)("ant-slider-with-marks",xe.marksArray),t.xp6(3),t.Q6J("vertical",xe.nzVertical)("included",xe.nzIncluded)("offset",xe.track.offset)("length",xe.track.length)("reverse",xe.nzReverse)("dir",xe.dir),t.xp6(1),t.Q6J("ngIf",xe.marksArray),t.xp6(1),t.Q6J("ngForOf",xe.handles),t.xp6(1),t.Q6J("ngIf",xe.marksArray))},dependencies:[y.Lv,p.sg,p.O5,$,R,W,ze],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,g.yF)()],ce.prototype,"nzDisabled",void 0),(0,e.gn)([(0,g.yF)()],ce.prototype,"nzDots",void 0),(0,e.gn)([(0,g.yF)()],ce.prototype,"nzIncluded",void 0),(0,e.gn)([(0,g.yF)()],ce.prototype,"nzRange",void 0),(0,e.gn)([(0,g.yF)()],ce.prototype,"nzVertical",void 0),(0,e.gn)([(0,g.yF)()],ce.prototype,"nzReverse",void 0),(0,e.gn)([(0,g.Rn)()],ce.prototype,"nzMax",void 0),(0,e.gn)([(0,g.Rn)()],ce.prototype,"nzMin",void 0),(0,e.gn)([(0,g.Rn)()],ce.prototype,"nzStep",void 0),ce})();function K(ce){return ce instanceof Array&&2===ce.length}function te(ce){return Array(ce).fill(0).map(()=>({offset:null,value:null,active:!1}))}let be=(()=>{class ce{static#e=this.\u0275fac=function(ae){return new(ae||ce)};static#t=this.\u0275mod=t.oAB({type:ce});static#n=this.\u0275inj=t.cJS({imports:[y.vT,p.ez,f.ud,d.cg]})}return ce})()},77273:(nt,I,o)=>{"use strict";o.d(I,{W:()=>A,j:()=>k});var e=o(97582),n=o(65879),t=o(78645),i=o(65619),l=o(97328),C=o(74825),E=o(27921),u=o(93997),z=o(94664),M=o(76111),h=o(59773),v=o(83064),g=o(27754),d=o(49388),p=o(96814),f=o(17131);function y(R,$){1&R&&(n.TgZ(0,"span",3),n._UZ(1,"i",4)(2,"i",4)(3,"i",4)(4,"i",4),n.qZA())}function T(R,$){}function x(R,$){if(1&R&&(n.TgZ(0,"div",8),n._uU(1),n.qZA()),2&R){const W=n.oxw(2);n.xp6(1),n.Oqu(W.nzTip)}}function D(R,$){if(1&R&&(n.TgZ(0,"div")(1,"div",5),n.YNc(2,T,0,0,"ng-template",6),n.YNc(3,x,2,1,"div",7),n.qZA()()),2&R){const W=n.oxw(),ze=n.MAs(1);n.xp6(1),n.ekj("ant-spin-rtl","rtl"===W.dir)("ant-spin-spinning",W.isLoading)("ant-spin-lg","large"===W.nzSize)("ant-spin-sm","small"===W.nzSize)("ant-spin-show-text",W.nzTip),n.xp6(1),n.Q6J("ngTemplateOutlet",W.nzIndicator||ze),n.xp6(1),n.Q6J("ngIf",W.nzTip)}}function _(R,$){if(1&R&&(n.TgZ(0,"div",9),n.Hsn(1),n.qZA()),2&R){const W=n.oxw();n.ekj("ant-spin-blur",W.isLoading)}}const P=["*"],S="spin";let A=(()=>{class R{constructor(W,ze,Y){this.nzConfigService=W,this.cdr=ze,this.directionality=Y,this._nzModuleName=S,this.nzIndicator=null,this.nzSize="default",this.nzTip=null,this.nzDelay=0,this.nzSimple=!1,this.nzSpinning=!0,this.destroy$=new t.x,this.spinning$=new i.X(this.nzSpinning),this.delay$=new l.t(1),this.isLoading=!1,this.dir="ltr"}ngOnInit(){this.delay$.pipe((0,E.O)(this.nzDelay),(0,u.x)(),(0,z.w)(ze=>0===ze?this.spinning$:this.spinning$.pipe((0,M.D)(Y=>(0,C.H)(Y?ze:0)))),(0,h.R)(this.destroy$)).subscribe(ze=>{this.isLoading=ze,this.cdr.markForCheck()}),this.nzConfigService.getConfigChangeEventForComponent(S).pipe((0,h.R)(this.destroy$)).subscribe(()=>this.cdr.markForCheck()),this.directionality.change?.pipe((0,h.R)(this.destroy$)).subscribe(ze=>{this.dir=ze,this.cdr.detectChanges()}),this.dir=this.directionality.value}ngOnChanges(W){const{nzSpinning:ze,nzDelay:Y}=W;ze&&this.spinning$.next(this.nzSpinning),Y&&this.delay$.next(this.nzDelay)}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(ze){return new(ze||R)(n.Y36(v.jY),n.Y36(n.sBO),n.Y36(d.Is,8))};static#t=this.\u0275cmp=n.Xpm({type:R,selectors:[["nz-spin"]],hostVars:2,hostBindings:function(ze,Y){2&ze&&n.ekj("ant-spin-nested-loading",!Y.nzSimple)},inputs:{nzIndicator:"nzIndicator",nzSize:"nzSize",nzTip:"nzTip",nzDelay:"nzDelay",nzSimple:"nzSimple",nzSpinning:"nzSpinning"},exportAs:["nzSpin"],features:[n.TTD],ngContentSelectors:P,decls:4,vars:2,consts:[["defaultTemplate",""],[4,"ngIf"],["class","ant-spin-container",3,"ant-spin-blur",4,"ngIf"],[1,"ant-spin-dot","ant-spin-dot-spin"],[1,"ant-spin-dot-item"],[1,"ant-spin"],[3,"ngTemplateOutlet"],["class","ant-spin-text",4,"ngIf"],[1,"ant-spin-text"],[1,"ant-spin-container"]],template:function(ze,Y){1&ze&&(n.F$t(),n.YNc(0,y,5,0,"ng-template",null,0,n.W1O),n.YNc(2,D,4,12,"div",1),n.YNc(3,_,2,2,"div",2)),2&ze&&(n.xp6(2),n.Q6J("ngIf",Y.isLoading),n.xp6(1),n.Q6J("ngIf",!Y.nzSimple))},dependencies:[p.O5,p.tP],encapsulation:2})}return(0,e.gn)([(0,v.oS)()],R.prototype,"nzIndicator",void 0),(0,e.gn)([(0,g.Rn)()],R.prototype,"nzDelay",void 0),(0,e.gn)([(0,g.yF)()],R.prototype,"nzSimple",void 0),(0,e.gn)([(0,g.yF)()],R.prototype,"nzSpinning",void 0),R})(),k=(()=>{class R{static#e=this.\u0275fac=function(ze){return new(ze||R)};static#t=this.\u0275mod=n.oAB({type:R});static#n=this.\u0275inj=n.cJS({imports:[d.vT,p.ez,f.Q8]})}return R})()},39704:(nt,I,o)=>{"use strict";o.d(I,{$W:()=>fe,N6:()=>be,iy:()=>re});var e=o(65879),n=o(78645),t=o(92438),i=o(47394),l=o(63019),C=o(32181),E=o(59773),u=o(27921),z=o(99087),M=o(27754),h=o(97582),v=o(96814),g=o(90551),d=o(8324),p=o(48128),f=o(49388);const y=["processDotTemplate"],T=["itemContainer"];function x(le,ce){1&le&&e._UZ(0,"div",10)}function D(le,ce){if(1&le&&(e.TgZ(0,"div",13),e._UZ(1,"nz-progress",14),e.qZA()),2&le){const Q=e.oxw(2);e.xp6(1),e.Q6J("nzPercent",Q.nzPercentage)("nzWidth","small"===Q.nzSize?32:40)("nzFormat",Q.nullProcessFormat)("nzStrokeWidth",4)}}function _(le,ce){1&le&&(e.TgZ(0,"span",15),e._UZ(1,"span",16),e.qZA())}function P(le,ce){1&le&&(e.TgZ(0,"span",15),e._UZ(1,"span",17),e.qZA())}function S(le,ce){if(1&le&&(e.TgZ(0,"span",15),e._uU(1),e.qZA()),2&le){const Q=e.oxw(2);e.xp6(1),e.hij(" ",Q.index+1," ")}}function A(le,ce){if(1&le&&(e.ynx(0),e._UZ(1,"span",18),e.BQk()),2&le){const Q=ce.$implicit,ie=e.oxw(3);e.xp6(1),e.Q6J("nzType",!ie.oldAPIIcon&&Q)("ngClass",ie.oldAPIIcon&&Q)}}function k(le,ce){if(1&le&&(e.TgZ(0,"span",15),e.YNc(1,A,2,2,"ng-container",7),e.qZA()),2&le){const Q=e.oxw(2);e.xp6(1),e.Q6J("nzStringTemplateOutlet",Q.nzIcon)}}function R(le,ce){if(1&le&&(e.YNc(0,D,2,4,"div",11),e.YNc(1,_,2,0,"span",12),e.YNc(2,P,2,0,"span",12),e.YNc(3,S,2,1,"span",12),e.YNc(4,k,2,1,"span",12)),2&le){const Q=e.oxw();e.Q6J("ngIf",Q.showProgress),e.xp6(1),e.Q6J("ngIf","finish"===Q.nzStatus&&!Q.nzIcon),e.xp6(1),e.Q6J("ngIf","error"===Q.nzStatus),e.xp6(1),e.Q6J("ngIf",("process"===Q.nzStatus||"wait"===Q.nzStatus)&&!Q.nzIcon),e.xp6(1),e.Q6J("ngIf",Q.nzIcon)}}function $(le,ce){1&le&&e._UZ(0,"span",21)}function W(le,ce){}const ze=function(le,ce,Q){return{$implicit:le,status:ce,index:Q}};function Y(le,ce){if(1&le&&(e.TgZ(0,"span",15),e.YNc(1,$,1,0,"ng-template",null,19,e.W1O),e.YNc(3,W,0,0,"ng-template",20),e.qZA()),2&le){const Q=e.MAs(2),ie=e.oxw();e.xp6(3),e.Q6J("ngTemplateOutlet",ie.customProcessTemplate||Q)("ngTemplateOutletContext",e.kEZ(2,ze,Q,ie.nzStatus,ie.index))}}function G(le,ce){if(1&le&&(e.ynx(0),e._uU(1),e.BQk()),2&le){const Q=e.oxw();e.xp6(1),e.Oqu(Q.nzTitle)}}function V(le,ce){if(1&le&&(e.ynx(0),e._uU(1),e.BQk()),2&le){const Q=e.oxw(2);e.xp6(1),e.Oqu(Q.nzSubtitle)}}function K(le,ce){if(1&le&&(e.TgZ(0,"div",22),e.YNc(1,V,2,1,"ng-container",7),e.qZA()),2&le){const Q=e.oxw();e.xp6(1),e.Q6J("nzStringTemplateOutlet",Q.nzSubtitle)}}function te(le,ce){if(1&le&&(e.ynx(0),e._uU(1),e.BQk()),2&le){const Q=e.oxw();e.xp6(1),e.Oqu(Q.nzDescription)}}const ne=["*"];let fe=(()=>{class le{get nzStatus(){return this._status}set nzStatus(Q){this._status=Q,this.isCustomStatus=!0}get nzIcon(){return this._icon}set nzIcon(Q){Q instanceof e.Rgc||(this.oldAPIIcon="string"==typeof Q&&Q.indexOf("anticon")>-1),this._icon=Q}get showProgress(){return null!==this.nzPercentage&&!this.nzIcon&&"process"===this.nzStatus&&this.nzPercentage>=0&&this.nzPercentage<=100}get currentIndex(){return this._currentIndex}set currentIndex(Q){this._currentIndex=Q,this.isCustomStatus||(this._status=Q>this.index?"finish":Q===this.index?this.outStatus||"":"wait")}constructor(Q,ie,ae){this.cdr=Q,this.ngZone=ie,this.destroy$=ae,this.nzDisabled=!1,this.nzPercentage=null,this.nzSize="default",this.isCustomStatus=!1,this._status="wait",this.oldAPIIcon=!0,this.direction="horizontal",this.index=0,this.last=!1,this.outStatus="process",this.showProcessDot=!1,this.clickable=!1,this.clickOutsideAngular$=new n.x,this.nullProcessFormat=()=>null,this._currentIndex=0}ngOnInit(){this.ngZone.runOutsideAngular(()=>(0,t.R)(this.itemContainer.nativeElement,"click").pipe((0,C.h)(()=>this.clickable&&this.currentIndex!==this.index&&!this.nzDisabled),(0,E.R)(this.destroy$)).subscribe(()=>{this.clickOutsideAngular$.next(this.index)}))}enable(){this.nzDisabled=!1,this.cdr.markForCheck()}disable(){this.nzDisabled=!0,this.cdr.markForCheck()}markForCheck(){this.cdr.markForCheck()}static#e=this.\u0275fac=function(ie){return new(ie||le)(e.Y36(e.sBO),e.Y36(e.R0b),e.Y36(z.kn))};static#t=this.\u0275cmp=e.Xpm({type:le,selectors:[["nz-step"]],viewQuery:function(ie,ae){if(1&ie&&(e.Gf(y,5),e.Gf(T,7)),2&ie){let xe;e.iGM(xe=e.CRH())&&(ae.processDotTemplate=xe.first),e.iGM(xe=e.CRH())&&(ae.itemContainer=xe.first)}},hostAttrs:[1,"ant-steps-item"],hostVars:16,hostBindings:function(ie,ae){2&ie&&e.ekj("ant-steps-item-wait","wait"===ae.nzStatus)("ant-steps-item-process","process"===ae.nzStatus)("ant-steps-item-finish","finish"===ae.nzStatus)("ant-steps-item-error","error"===ae.nzStatus)("ant-steps-item-active",ae.currentIndex===ae.index)("ant-steps-item-disabled",ae.nzDisabled)("ant-steps-item-custom",!!ae.nzIcon)("ant-steps-next-error","error"===ae.outStatus&&ae.currentIndex===ae.index+1)},inputs:{nzTitle:"nzTitle",nzSubtitle:"nzSubtitle",nzDescription:"nzDescription",nzDisabled:"nzDisabled",nzPercentage:"nzPercentage",nzSize:"nzSize",nzStatus:"nzStatus",nzIcon:"nzIcon"},exportAs:["nzStep"],features:[e._Bn([z.kn])],decls:12,vars:8,consts:[[1,"ant-steps-item-container",3,"tabindex"],["itemContainer",""],["class","ant-steps-item-tail",4,"ngIf"],[1,"ant-steps-item-icon"],[3,"ngIf"],[1,"ant-steps-item-content"],[1,"ant-steps-item-title"],[4,"nzStringTemplateOutlet"],["class","ant-steps-item-subtitle",4,"ngIf"],[1,"ant-steps-item-description"],[1,"ant-steps-item-tail"],["class","ant-steps-progress-icon",4,"ngIf"],["class","ant-steps-icon",4,"ngIf"],[1,"ant-steps-progress-icon"],["nzType","circle",3,"nzPercent","nzWidth","nzFormat","nzStrokeWidth"],[1,"ant-steps-icon"],["nz-icon","","nzType","check"],["nz-icon","","nzType","close"],["nz-icon","",3,"nzType","ngClass"],["processDotTemplate",""],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"ant-steps-icon-dot"],[1,"ant-steps-item-subtitle"]],template:function(ie,ae){1&ie&&(e.TgZ(0,"div",0,1),e.YNc(2,x,1,0,"div",2),e.TgZ(3,"div",3),e.YNc(4,R,5,5,"ng-template",4),e.YNc(5,Y,4,6,"ng-template",4),e.qZA(),e.TgZ(6,"div",5)(7,"div",6),e.YNc(8,G,2,1,"ng-container",7),e.YNc(9,K,2,1,"div",8),e.qZA(),e.TgZ(10,"div",9),e.YNc(11,te,2,1,"ng-container",7),e.qZA()()()),2&ie&&(e.Q6J("tabindex",ae.clickable&&!ae.nzDisabled?0:null),e.uIk("role",ae.clickable&&!ae.nzDisabled?"button":null),e.xp6(2),e.Q6J("ngIf",!0!==ae.last),e.xp6(2),e.Q6J("ngIf",!ae.showProcessDot),e.xp6(1),e.Q6J("ngIf",ae.showProcessDot),e.xp6(3),e.Q6J("nzStringTemplateOutlet",ae.nzTitle),e.xp6(1),e.Q6J("ngIf",ae.nzSubtitle),e.xp6(2),e.Q6J("nzStringTemplateOutlet",ae.nzDescription))},dependencies:[v.mk,v.O5,v.tP,g.Ls,d.f,p.M],encapsulation:2,changeDetection:0})}return(0,h.gn)([(0,M.yF)()],le.prototype,"nzDisabled",void 0),le})(),re=(()=>{class le{set nzProgressDot(Q){Q instanceof e.Rgc?(this.showProcessDot=!0,this.customProcessDotTemplate=Q):this.showProcessDot=(0,M.sw)(Q),this.updateChildrenSteps()}constructor(Q,ie,ae,xe){this.ngZone=Q,this.cdr=ie,this.directionality=ae,this.destroy$=xe,this.nzCurrent=0,this.nzDirection="horizontal",this.nzLabelPlacement="horizontal",this.nzType="default",this.nzSize="default",this.nzStartIndex=0,this.nzStatus="process",this.nzIndexChange=new e.vpe,this.indexChangeSubscription=i.w0.EMPTY,this.showProcessDot=!1,this.showProgress=!1,this.dir="ltr"}ngOnChanges(Q){(Q.nzStartIndex||Q.nzDirection||Q.nzStatus||Q.nzCurrent||Q.nzSize)&&this.updateChildrenSteps()}ngOnInit(){this.directionality.change?.pipe((0,E.R)(this.destroy$)).subscribe(Q=>{this.dir=Q,this.cdr.detectChanges()}),this.dir=this.directionality.value,this.updateChildrenSteps()}ngAfterContentInit(){this.steps&&this.steps.changes.pipe((0,u.O)(null),(0,E.R)(this.destroy$)).subscribe(()=>{this.updateHostProgressClass(),this.updateChildrenSteps()})}updateHostProgressClass(){this.steps&&!this.showProcessDot&&(this.showProgress=!!this.steps.toArray().find(Q=>null!==Q.nzPercentage))}updateChildrenSteps(){if(this.steps){const Q=this.steps.length;this.steps.toArray().forEach((ie,ae)=>{Promise.resolve().then(()=>{ie.nzSize=this.nzSize,ie.outStatus=this.nzStatus,ie.showProcessDot=this.showProcessDot,this.customProcessDotTemplate&&(ie.customProcessTemplate=this.customProcessDotTemplate),ie.clickable=this.nzIndexChange.observers.length>0,ie.direction=this.nzDirection,ie.index=ae+this.nzStartIndex,ie.currentIndex=this.nzCurrent,ie.last=Q===ae+1,ie.markForCheck()})}),this.indexChangeSubscription.unsubscribe(),this.indexChangeSubscription=(0,l.T)(...this.steps.map(ie=>ie.clickOutsideAngular$)).pipe((0,E.R)(this.destroy$)).subscribe(ie=>{this.nzIndexChange.observers.length&&this.ngZone.run(()=>this.nzIndexChange.emit(ie))})}}static#e=this.\u0275fac=function(ie){return new(ie||le)(e.Y36(e.R0b),e.Y36(e.sBO),e.Y36(f.Is,8),e.Y36(z.kn))};static#t=this.\u0275cmp=e.Xpm({type:le,selectors:[["nz-steps"]],contentQueries:function(ie,ae,xe){if(1&ie&&e.Suo(xe,fe,4),2&ie){let Me;e.iGM(Me=e.CRH())&&(ae.steps=Me)}},hostAttrs:[1,"ant-steps"],hostVars:18,hostBindings:function(ie,ae){2&ie&&e.ekj("ant-steps-horizontal","horizontal"===ae.nzDirection)("ant-steps-vertical","vertical"===ae.nzDirection)("ant-steps-label-horizontal","horizontal"===ae.nzDirection)("ant-steps-label-vertical",(ae.showProcessDot||"vertical"===ae.nzLabelPlacement)&&"horizontal"===ae.nzDirection)("ant-steps-dot",ae.showProcessDot)("ant-steps-small","small"===ae.nzSize)("ant-steps-navigation","navigation"===ae.nzType)("ant-steps-rtl","rtl"===ae.dir)("ant-steps-with-progress",ae.showProgress)},inputs:{nzCurrent:"nzCurrent",nzDirection:"nzDirection",nzLabelPlacement:"nzLabelPlacement",nzType:"nzType",nzSize:"nzSize",nzStartIndex:"nzStartIndex",nzStatus:"nzStatus",nzProgressDot:"nzProgressDot"},outputs:{nzIndexChange:"nzIndexChange"},exportAs:["nzSteps"],features:[e._Bn([z.kn]),e.TTD],ngContentSelectors:ne,decls:1,vars:0,template:function(ie,ae){1&ie&&(e.F$t(),e.Hsn(0))},encapsulation:2,changeDetection:0})}return le})(),be=(()=>{class le{static#e=this.\u0275fac=function(ie){return new(ie||le)};static#t=this.\u0275mod=e.oAB({type:le});static#n=this.\u0275inj=e.cJS({imports:[f.vT,v.ez,g.PV,d.T,p.W]})}return le})()},96494:(nt,I,o)=>{"use strict";o.d(I,{i:()=>S,m:()=>A});var e=o(97582),n=o(36028),t=o(65879),i=o(60095),l=o(78645),C=o(92438),E=o(59773),u=o(83064),z=o(27754),M=o(4300),h=o(49388),v=o(96814),g=o(41958),d=o(90551),p=o(8324);const f=["switchElement"];function y(k,R){1&k&&t._UZ(0,"span",8)}function T(k,R){if(1&k&&(t.ynx(0),t._uU(1),t.BQk()),2&k){const $=t.oxw(2);t.xp6(1),t.Oqu($.nzCheckedChildren)}}function x(k,R){if(1&k&&(t.ynx(0),t.YNc(1,T,2,1,"ng-container",9),t.BQk()),2&k){const $=t.oxw();t.xp6(1),t.Q6J("nzStringTemplateOutlet",$.nzCheckedChildren)}}function D(k,R){if(1&k&&(t.ynx(0),t._uU(1),t.BQk()),2&k){const $=t.oxw(2);t.xp6(1),t.Oqu($.nzUnCheckedChildren)}}function _(k,R){if(1&k&&t.YNc(0,D,2,1,"ng-container",9),2&k){const $=t.oxw();t.Q6J("nzStringTemplateOutlet",$.nzUnCheckedChildren)}}let S=(()=>{class k{updateValue($){this.isChecked!==$&&(this.isChecked=$,this.onChange(this.isChecked))}focus(){this.focusMonitor.focusVia(this.switchElement.nativeElement,"keyboard")}blur(){this.switchElement.nativeElement.blur()}constructor($,W,ze,Y,G,V){this.nzConfigService=$,this.host=W,this.ngZone=ze,this.cdr=Y,this.focusMonitor=G,this.directionality=V,this._nzModuleName="switch",this.isChecked=!1,this.onChange=()=>{},this.onTouched=()=>{},this.nzLoading=!1,this.nzDisabled=!1,this.nzControl=!1,this.nzCheckedChildren=null,this.nzUnCheckedChildren=null,this.nzSize="default",this.nzId=null,this.dir="ltr",this.destroy$=new l.x,this.isNzDisableFirstChange=!0}ngOnInit(){this.directionality.change.pipe((0,E.R)(this.destroy$)).subscribe($=>{this.dir=$,this.cdr.detectChanges()}),this.dir=this.directionality.value,this.ngZone.runOutsideAngular(()=>{(0,C.R)(this.host.nativeElement,"click").pipe((0,E.R)(this.destroy$)).subscribe($=>{$.preventDefault(),!(this.nzControl||this.nzDisabled||this.nzLoading)&&this.ngZone.run(()=>{this.updateValue(!this.isChecked),this.cdr.markForCheck()})}),(0,C.R)(this.switchElement.nativeElement,"keydown").pipe((0,E.R)(this.destroy$)).subscribe($=>{if(this.nzControl||this.nzDisabled||this.nzLoading)return;const{keyCode:W}=$;W!==n.oh&&W!==n.SV&&W!==n.L_&&W!==n.K5||($.preventDefault(),this.ngZone.run(()=>{W===n.oh?this.updateValue(!1):W===n.SV?this.updateValue(!0):(W===n.L_||W===n.K5)&&this.updateValue(!this.isChecked),this.cdr.markForCheck()}))})})}ngAfterViewInit(){this.focusMonitor.monitor(this.switchElement.nativeElement,!0).pipe((0,E.R)(this.destroy$)).subscribe($=>{$||Promise.resolve().then(()=>this.onTouched())})}ngOnDestroy(){this.focusMonitor.stopMonitoring(this.switchElement.nativeElement),this.destroy$.next(),this.destroy$.complete()}writeValue($){this.isChecked=$,this.cdr.markForCheck()}registerOnChange($){this.onChange=$}registerOnTouched($){this.onTouched=$}setDisabledState($){this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||$,this.isNzDisableFirstChange=!1,this.cdr.markForCheck()}static#e=this.\u0275fac=function(W){return new(W||k)(t.Y36(u.jY),t.Y36(t.SBq),t.Y36(t.R0b),t.Y36(t.sBO),t.Y36(M.tE),t.Y36(h.Is,8))};static#t=this.\u0275cmp=t.Xpm({type:k,selectors:[["nz-switch"]],viewQuery:function(W,ze){if(1&W&&t.Gf(f,7),2&W){let Y;t.iGM(Y=t.CRH())&&(ze.switchElement=Y.first)}},inputs:{nzLoading:"nzLoading",nzDisabled:"nzDisabled",nzControl:"nzControl",nzCheckedChildren:"nzCheckedChildren",nzUnCheckedChildren:"nzUnCheckedChildren",nzSize:"nzSize",nzId:"nzId"},exportAs:["nzSwitch"],features:[t._Bn([{provide:i.JU,useExisting:(0,t.Gpc)(()=>k),multi:!0}])],decls:9,vars:16,consts:[["nz-wave","","type","button",1,"ant-switch",3,"disabled","nzWaveExtraNode"],["switchElement",""],[1,"ant-switch-handle"],["nz-icon","","nzType","loading","class","ant-switch-loading-icon",4,"ngIf"],[1,"ant-switch-inner"],[4,"ngIf","ngIfElse"],["uncheckTemplate",""],[1,"ant-click-animating-node"],["nz-icon","","nzType","loading",1,"ant-switch-loading-icon"],[4,"nzStringTemplateOutlet"]],template:function(W,ze){if(1&W&&(t.TgZ(0,"button",0,1)(2,"span",2),t.YNc(3,y,1,0,"span",3),t.qZA(),t.TgZ(4,"span",4),t.YNc(5,x,2,1,"ng-container",5),t.YNc(6,_,1,1,"ng-template",null,6,t.W1O),t.qZA(),t._UZ(8,"div",7),t.qZA()),2&W){const Y=t.MAs(7);t.ekj("ant-switch-checked",ze.isChecked)("ant-switch-loading",ze.nzLoading)("ant-switch-disabled",ze.nzDisabled)("ant-switch-small","small"===ze.nzSize)("ant-switch-rtl","rtl"===ze.dir),t.Q6J("disabled",ze.nzDisabled)("nzWaveExtraNode",!0),t.uIk("id",ze.nzId),t.xp6(3),t.Q6J("ngIf",ze.nzLoading),t.xp6(2),t.Q6J("ngIf",ze.isChecked)("ngIfElse",Y)}},dependencies:[v.O5,g.dQ,d.Ls,p.f],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,z.yF)()],k.prototype,"nzLoading",void 0),(0,e.gn)([(0,z.yF)()],k.prototype,"nzDisabled",void 0),(0,e.gn)([(0,z.yF)()],k.prototype,"nzControl",void 0),(0,e.gn)([(0,u.oS)()],k.prototype,"nzSize",void 0),k})(),A=(()=>{class k{static#e=this.\u0275fac=function(W){return new(W||k)};static#t=this.\u0275mod=t.oAB({type:k});static#n=this.\u0275inj=t.cJS({imports:[h.vT,v.ez,g.vG,d.PV,p.T]})}return k})()},79663:(nt,I,o)=>{"use strict";o.d(I,{$Z:()=>Ii,HQ:()=>Bn,N8:()=>Pi,Om:()=>ki,Uo:()=>di,Vk:()=>$i,_C:()=>ei,d3:()=>oi,h7:()=>zi,p0:()=>wi,qD:()=>Oi,qn:()=>ci,zu:()=>Ei});var e=o(49388),n=o(62831),t=o(205),i=o(96814),l=o(65879),C=o(60095),E=o(42840),u=o(28802),z=o(62612),M=o(8324),h=o(62787),v=o(60804),g=o(12131),d=o(90551),p=o(73460),f=o(2274),y=o(57907),T=o(77273),x=o(97582),D=o(92438),_=o(78645),P=o(97328),S=o(65619),A=o(52572),k=o(63019),R=o(36232),$=o(22096),W=o(59773),ze=o(37398),Y=o(93997),G=o(83620),V=o(836),K=o(32181),te=o(94664),ne=o(27921),fe=o(5177),re=o(21631),be=o(83064),le=o(99087),ce=o(27754),Q=o(70855),ie=o(41958);const ae=["*"];function xe(Et,un){}function Me(Et,un){if(1&Et){const lt=l.EpF();l.TgZ(0,"label",15),l.NdJ("ngModelChange",function(){l.CHM(lt);const At=l.oxw().$implicit,Qt=l.oxw(2);return l.KtG(Qt.check(At))}),l.qZA()}if(2&Et){const lt=l.oxw().$implicit;l.Q6J("ngModel",lt.checked)}}function Ye(Et,un){if(1&Et){const lt=l.EpF();l.TgZ(0,"label",16),l.NdJ("ngModelChange",function(){l.CHM(lt);const At=l.oxw().$implicit,Qt=l.oxw(2);return l.KtG(Qt.check(At))}),l.qZA()}if(2&Et){const lt=l.oxw().$implicit;l.Q6J("ngModel",lt.checked)}}function q(Et,un){if(1&Et){const lt=l.EpF();l.TgZ(0,"li",12),l.NdJ("click",function(){const Qt=l.CHM(lt).$implicit,gn=l.oxw(2);return l.KtG(gn.check(Qt))}),l.YNc(1,Me,1,1,"label",13),l.YNc(2,Ye,1,1,"label",14),l.TgZ(3,"span"),l._uU(4),l.qZA()()}if(2&Et){const lt=un.$implicit,Ct=l.oxw(2);l.Q6J("nzSelected",lt.checked),l.xp6(1),l.Q6J("ngIf",!Ct.filterMultiple),l.xp6(1),l.Q6J("ngIf",Ct.filterMultiple),l.xp6(2),l.Oqu(lt.text)}}function ve(Et,un){if(1&Et){const lt=l.EpF();l.ynx(0),l.TgZ(1,"nz-filter-trigger",3),l.NdJ("nzVisibleChange",function(At){l.CHM(lt);const Qt=l.oxw();return l.KtG(Qt.onVisibleChange(At))}),l._UZ(2,"span",4),l.qZA(),l.TgZ(3,"nz-dropdown-menu",null,5)(5,"div",6)(6,"ul",7),l.YNc(7,q,5,4,"li",8),l.qZA(),l.TgZ(8,"div",9)(9,"button",10),l.NdJ("click",function(){l.CHM(lt);const At=l.oxw();return l.KtG(At.reset())}),l._uU(10),l.qZA(),l.TgZ(11,"button",11),l.NdJ("click",function(){l.CHM(lt);const At=l.oxw();return l.KtG(At.confirm())}),l._uU(12),l.qZA()()()(),l.BQk()}if(2&Et){const lt=l.MAs(4),Ct=l.oxw();l.xp6(1),l.Q6J("nzVisible",Ct.isVisible)("nzActive",Ct.isChecked)("nzDropdownMenu",lt),l.xp6(6),l.Q6J("ngForOf",Ct.listOfParsedFilter)("ngForTrackBy",Ct.trackByValue),l.xp6(2),l.Q6J("disabled",!Ct.isChecked),l.xp6(1),l.hij(" ",Ct.locale.filterReset," "),l.xp6(2),l.Oqu(Ct.locale.filterConfirm)}}function ct(Et,un){}function Ae(Et,un){if(1&Et&&l._UZ(0,"span",6),2&Et){const lt=l.oxw();l.ekj("active","ascend"===lt.sortOrder)}}function Mt(Et,un){if(1&Et&&l._UZ(0,"span",7),2&Et){const lt=l.oxw();l.ekj("active","descend"===lt.sortOrder)}}const je=["nzChecked",""];function ot(Et,un){if(1&Et){const lt=l.EpF();l.ynx(0),l._UZ(1,"nz-row-indent",2),l.TgZ(2,"button",3),l.NdJ("expandChange",function(At){l.CHM(lt);const Qt=l.oxw();return l.KtG(Qt.onExpandChange(At))}),l.qZA(),l.BQk()}if(2&Et){const lt=l.oxw();l.xp6(1),l.Q6J("indentSize",lt.nzIndentSize),l.xp6(1),l.Q6J("expand",lt.nzExpand)("spaceMode",!lt.nzShowExpand)}}function mt(Et,un){if(1&Et){const lt=l.EpF();l.TgZ(0,"label",4),l.NdJ("ngModelChange",function(At){l.CHM(lt);const Qt=l.oxw();return l.KtG(Qt.onCheckedChange(At))}),l.qZA()}if(2&Et){const lt=l.oxw();l.Q6J("nzDisabled",lt.nzDisabled)("ngModel",lt.nzChecked)("nzIndeterminate",lt.nzIndeterminate)}}const we=["nzColumnKey",""];function de(Et,un){if(1&Et){const lt=l.EpF();l.TgZ(0,"nz-table-filter",5),l.NdJ("filterChange",function(At){l.CHM(lt);const Qt=l.oxw();return l.KtG(Qt.onFilterValueChange(At))}),l.qZA()}if(2&Et){const lt=l.oxw(),Ct=l.MAs(2),At=l.MAs(4);l.Q6J("contentTemplate",Ct)("extraTemplate",At)("customFilter",lt.nzCustomFilter)("filterMultiple",lt.nzFilterMultiple)("listOfFilter",lt.nzFilters)}}function U(Et,un){}function B(Et,un){if(1&Et&&l.YNc(0,U,0,0,"ng-template",6),2&Et){const lt=l.oxw(),Ct=l.MAs(6),At=l.MAs(8);l.Q6J("ngTemplateOutlet",lt.nzShowSort?Ct:At)}}function Ee(Et,un){1&Et&&(l.Hsn(0),l.Hsn(1,1))}function Ie(Et,un){if(1&Et&&l._UZ(0,"nz-table-sorters",7),2&Et){const lt=l.oxw(),Ct=l.MAs(8);l.Q6J("sortOrder",lt.sortOrder)("sortDirections",lt.sortDirections)("contentTemplate",Ct)}}function Ne(Et,un){1&Et&&l.Hsn(0,2)}const pt=[[["","nz-th-extra",""]],[["nz-filter-trigger"]],"*"],Dt=["[nz-th-extra]","nz-filter-trigger","*"],Ut=["nz-table-content",""];function qt(Et,un){if(1&Et&&l._UZ(0,"col"),2&Et){const lt=un.$implicit;l.Udp("width",lt)("min-width",lt)}}function en(Et,un){}function cn(Et,un){if(1&Et&&(l.TgZ(0,"thead",3),l.YNc(1,en,0,0,"ng-template",2),l.qZA()),2&Et){const lt=l.oxw();l.xp6(1),l.Q6J("ngTemplateOutlet",lt.theadTemplate)}}function Wt(Et,un){}const Vt=["tdElement"],st=["nz-table-fixed-row",""];function He(Et,un){}function et(Et,un){if(1&Et&&(l.TgZ(0,"div",4),l.ALo(1,"async"),l.YNc(2,He,0,0,"ng-template",5),l.qZA()),2&Et){const lt=l.oxw(),Ct=l.MAs(5);l.Udp("width",l.lcZ(1,3,lt.hostWidth$),"px"),l.xp6(2),l.Q6J("ngTemplateOutlet",Ct)}}function It(Et,un){1&Et&&l.Hsn(0)}const Ot=["nz-table-measure-row",""];function xt(Et,un){1&Et&&l._UZ(0,"td",1,2)}function Qe(Et,un){if(1&Et){const lt=l.EpF();l.TgZ(0,"tr",3),l.NdJ("listOfAutoWidth",function(At){l.CHM(lt);const Qt=l.oxw(2);return l.KtG(Qt.onListOfAutoWidthChange(At))}),l.qZA()}if(2&Et){const lt=l.oxw().ngIf;l.Q6J("listOfMeasureColumn",lt)}}function ke(Et,un){if(1&Et&&(l.ynx(0),l.YNc(1,Qe,1,1,"tr",2),l.BQk()),2&Et){const lt=un.ngIf,Ct=l.oxw();l.xp6(1),l.Q6J("ngIf",Ct.isInsideTable&<.length)}}function pe(Et,un){if(1&Et&&(l.TgZ(0,"tr",4),l._UZ(1,"nz-embed-empty",5),l.ALo(2,"async"),l.qZA()),2&Et){const lt=l.oxw();l.xp6(1),l.Q6J("specificContent",l.lcZ(2,1,lt.noResult$))}}const qe=["tableHeaderElement"],ge=["tableBodyElement"];function Ze(Et,un){if(1&Et&&(l.TgZ(0,"div",7,8),l._UZ(2,"table",9),l.qZA()),2&Et){const lt=l.oxw(2);l.Q6J("ngStyle",lt.bodyStyleMap),l.xp6(2),l.Q6J("scrollX",lt.scrollX)("listOfColWidth",lt.listOfColWidth)("contentTemplate",lt.contentTemplate)}}function $e(Et,un){}const Ue=function(Et,un){return{$implicit:Et,index:un}};function wt(Et,un){if(1&Et&&(l.ynx(0),l.YNc(1,$e,0,0,"ng-template",13),l.BQk()),2&Et){const lt=un.$implicit,Ct=un.index,At=l.oxw(3);l.xp6(1),l.Q6J("ngTemplateOutlet",At.virtualTemplate)("ngTemplateOutletContext",l.WLB(2,Ue,lt,Ct))}}function De(Et,un){if(1&Et&&(l.TgZ(0,"cdk-virtual-scroll-viewport",10,8)(2,"table",11)(3,"tbody"),l.YNc(4,wt,2,5,"ng-container",12),l.qZA()()()),2&Et){const lt=l.oxw(2);l.Udp("height",lt.data.length?lt.scrollY:lt.noDateVirtualHeight),l.Q6J("itemSize",lt.virtualItemSize)("maxBufferPx",lt.virtualMaxBufferPx)("minBufferPx",lt.virtualMinBufferPx),l.xp6(2),l.Q6J("scrollX",lt.scrollX)("listOfColWidth",lt.listOfColWidth),l.xp6(2),l.Q6J("cdkVirtualForOf",lt.data)("cdkVirtualForTrackBy",lt.virtualForTrackBy)}}function Pe(Et,un){if(1&Et&&(l.ynx(0),l.TgZ(1,"div",2,3),l._UZ(3,"table",4),l.qZA(),l.YNc(4,Ze,3,4,"div",5),l.YNc(5,De,5,9,"cdk-virtual-scroll-viewport",6),l.BQk()),2&Et){const lt=l.oxw();l.xp6(1),l.Q6J("ngStyle",lt.headerStyleMap),l.xp6(2),l.Q6J("scrollX",lt.scrollX)("listOfColWidth",lt.listOfColWidth)("theadTemplate",lt.theadTemplate),l.xp6(1),l.Q6J("ngIf",!lt.virtualTemplate),l.xp6(1),l.Q6J("ngIf",lt.virtualTemplate)}}function Je(Et,un){if(1&Et&&(l.TgZ(0,"div",14,8),l._UZ(2,"table",15),l.qZA()),2&Et){const lt=l.oxw();l.Q6J("ngStyle",lt.bodyStyleMap),l.xp6(2),l.Q6J("scrollX",lt.scrollX)("listOfColWidth",lt.listOfColWidth)("theadTemplate",lt.theadTemplate)("contentTemplate",lt.contentTemplate)}}function Ge(Et,un){if(1&Et&&(l.ynx(0),l._uU(1),l.BQk()),2&Et){const lt=l.oxw();l.xp6(1),l.Oqu(lt.title)}}function Ke(Et,un){if(1&Et&&(l.ynx(0),l._uU(1),l.BQk()),2&Et){const lt=l.oxw();l.xp6(1),l.Oqu(lt.footer)}}function _e(Et,un){}function it(Et,un){if(1&Et&&(l.ynx(0),l.YNc(1,_e,0,0,"ng-template",10),l.BQk()),2&Et){l.oxw();const lt=l.MAs(11);l.xp6(1),l.Q6J("ngTemplateOutlet",lt)}}function b(Et,un){if(1&Et&&l._UZ(0,"nz-table-title-footer",11),2&Et){const lt=l.oxw();l.Q6J("title",lt.nzTitle)}}function N(Et,un){if(1&Et&&l._UZ(0,"nz-table-inner-scroll",12),2&Et){const lt=l.oxw(),Ct=l.MAs(13),At=l.MAs(3);l.Q6J("data",lt.data)("scrollX",lt.scrollX)("scrollY",lt.scrollY)("contentTemplate",Ct)("listOfColWidth",lt.listOfAutoColWidth)("theadTemplate",lt.theadTemplate)("verticalScrollBarWidth",lt.verticalScrollBarWidth)("virtualTemplate",lt.nzVirtualScrollDirective?lt.nzVirtualScrollDirective.templateRef:null)("virtualItemSize",lt.nzVirtualItemSize)("virtualMaxBufferPx",lt.nzVirtualMaxBufferPx)("virtualMinBufferPx",lt.nzVirtualMinBufferPx)("tableMainElement",At)("virtualForTrackBy",lt.nzVirtualForTrackBy)}}function O(Et,un){if(1&Et&&l._UZ(0,"nz-table-inner-default",13),2&Et){const lt=l.oxw(),Ct=l.MAs(13);l.Q6J("tableLayout",lt.nzTableLayout)("listOfColWidth",lt.listOfManualColWidth)("theadTemplate",lt.theadTemplate)("contentTemplate",Ct)}}function j(Et,un){if(1&Et&&l._UZ(0,"nz-table-title-footer",14),2&Et){const lt=l.oxw();l.Q6J("footer",lt.nzFooter)}}function L(Et,un){}function he(Et,un){if(1&Et&&(l.ynx(0),l.YNc(1,L,0,0,"ng-template",10),l.BQk()),2&Et){l.oxw();const lt=l.MAs(11);l.xp6(1),l.Q6J("ngTemplateOutlet",lt)}}function Ce(Et,un){if(1&Et){const lt=l.EpF();l.TgZ(0,"nz-pagination",16),l.NdJ("nzPageSizeChange",function(At){l.CHM(lt);const Qt=l.oxw(2);return l.KtG(Qt.onPageSizeChange(At))})("nzPageIndexChange",function(At){l.CHM(lt);const Qt=l.oxw(2);return l.KtG(Qt.onPageIndexChange(At))}),l.qZA()}if(2&Et){const lt=l.oxw(2);l.Q6J("hidden",!lt.showPagination)("nzShowSizeChanger",lt.nzShowSizeChanger)("nzPageSizeOptions",lt.nzPageSizeOptions)("nzItemRender",lt.nzItemRender)("nzShowQuickJumper",lt.nzShowQuickJumper)("nzHideOnSinglePage",lt.nzHideOnSinglePage)("nzShowTotal",lt.nzShowTotal)("nzSize","small"===lt.nzPaginationType?"small":"default"===lt.nzSize?"default":"small")("nzPageSize",lt.nzPageSize)("nzTotal",lt.nzTotal)("nzSimple",lt.nzSimple)("nzPageIndex",lt.nzPageIndex)}}function bt(Et,un){if(1&Et&&l.YNc(0,Ce,1,12,"nz-pagination",15),2&Et){const lt=l.oxw();l.Q6J("ngIf",lt.nzShowPagination&<.data.length)}}function Ft(Et,un){1&Et&&l.Hsn(0)}const sn=["contentTemplate"];function pn(Et,un){1&Et&&l.Hsn(0)}function vn(Et,un){}function Dn(Et,un){if(1&Et&&(l.ynx(0),l.YNc(1,vn,0,0,"ng-template",2),l.BQk()),2&Et){l.oxw();const lt=l.MAs(1);l.xp6(1),l.Q6J("ngTemplateOutlet",lt)}}let En=(()=>{class Et{onVisibleChange(lt){this.nzVisible=lt,this.nzVisibleChange.next(lt)}hide(){this.nzVisible=!1,this.cdr.markForCheck()}show(){this.nzVisible=!0,this.cdr.markForCheck()}constructor(lt,Ct,At,Qt){this.nzConfigService=lt,this.ngZone=Ct,this.cdr=At,this.destroy$=Qt,this._nzModuleName="filterTrigger",this.nzActive=!1,this.nzVisible=!1,this.nzBackdrop=!1,this.nzVisibleChange=new l.vpe}ngOnInit(){this.ngZone.runOutsideAngular(()=>{(0,D.R)(this.nzDropdown.nativeElement,"click").pipe((0,W.R)(this.destroy$)).subscribe(lt=>{lt.stopPropagation()})})}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)(l.Y36(be.jY),l.Y36(l.R0b),l.Y36(l.sBO),l.Y36(le.kn))};static#t=this.\u0275cmp=l.Xpm({type:Et,selectors:[["nz-filter-trigger"]],viewQuery:function(Ct,At){if(1&Ct&&l.Gf(h.cm,7,l.SBq),2&Ct){let Qt;l.iGM(Qt=l.CRH())&&(At.nzDropdown=Qt.first)}},inputs:{nzActive:"nzActive",nzDropdownMenu:"nzDropdownMenu",nzVisible:"nzVisible",nzBackdrop:"nzBackdrop"},outputs:{nzVisibleChange:"nzVisibleChange"},exportAs:["nzFilterTrigger"],features:[l._Bn([le.kn])],ngContentSelectors:ae,decls:2,vars:8,consts:[["nz-dropdown","","nzTrigger","click","nzPlacement","bottomRight",1,"ant-table-filter-trigger",3,"nzBackdrop","nzClickHide","nzDropdownMenu","nzVisible","nzVisibleChange"]],template:function(Ct,At){1&Ct&&(l.F$t(),l.TgZ(0,"span",0),l.NdJ("nzVisibleChange",function(gn){return At.onVisibleChange(gn)}),l.Hsn(1),l.qZA()),2&Ct&&(l.ekj("active",At.nzActive)("ant-table-filter-open",At.nzVisible),l.Q6J("nzBackdrop",At.nzBackdrop)("nzClickHide",!1)("nzDropdownMenu",At.nzDropdownMenu)("nzVisible",At.nzVisible))},dependencies:[h.cm],encapsulation:2,changeDetection:0})}return(0,x.gn)([(0,be.oS)(),(0,ce.yF)()],Et.prototype,"nzBackdrop",void 0),Et})(),bn=(()=>{class Et{trackByValue(lt,Ct){return Ct.value}check(lt){this.filterMultiple?(this.listOfParsedFilter=this.listOfParsedFilter.map(Ct=>Ct===lt?{...Ct,checked:!lt.checked}:Ct),lt.checked=!lt.checked):this.listOfParsedFilter=this.listOfParsedFilter.map(Ct=>({...Ct,checked:Ct===lt})),this.isChecked=this.getCheckedStatus(this.listOfParsedFilter)}confirm(){this.isVisible=!1,this.emitFilterData()}reset(){this.isVisible=!1,this.listOfParsedFilter=this.parseListOfFilter(this.listOfFilter,!0),this.isChecked=this.getCheckedStatus(this.listOfParsedFilter),this.emitFilterData()}onVisibleChange(lt){this.isVisible=lt,lt?this.listOfChecked=this.listOfParsedFilter.filter(Ct=>Ct.checked).map(Ct=>Ct.value):this.emitFilterData()}emitFilterData(){const lt=this.listOfParsedFilter.filter(Ct=>Ct.checked).map(Ct=>Ct.value);(0,ce.cO)(this.listOfChecked,lt)||this.filterChange.emit(this.filterMultiple?lt:lt.length>0?lt[0]:null)}parseListOfFilter(lt,Ct){return lt.map(At=>({text:At.text,value:At.value,checked:!Ct&&!!At.byDefault}))}getCheckedStatus(lt){return lt.some(Ct=>Ct.checked)}constructor(lt,Ct){this.cdr=lt,this.i18n=Ct,this.contentTemplate=null,this.customFilter=!1,this.extraTemplate=null,this.filterMultiple=!0,this.listOfFilter=[],this.filterChange=new l.vpe,this.destroy$=new _.x,this.isChecked=!1,this.isVisible=!1,this.listOfParsedFilter=[],this.listOfChecked=[]}ngOnInit(){this.i18n.localeChange.pipe((0,W.R)(this.destroy$)).subscribe(()=>{this.locale=this.i18n.getLocaleData("Table"),this.cdr.markForCheck()})}ngOnChanges(lt){const{listOfFilter:Ct}=lt;Ct&&this.listOfFilter&&this.listOfFilter.length&&(this.listOfParsedFilter=this.parseListOfFilter(this.listOfFilter),this.isChecked=this.getCheckedStatus(this.listOfParsedFilter))}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)(l.Y36(l.sBO),l.Y36(g.wi))};static#t=this.\u0275cmp=l.Xpm({type:Et,selectors:[["nz-table-filter"]],hostAttrs:[1,"ant-table-filter-column"],inputs:{contentTemplate:"contentTemplate",customFilter:"customFilter",extraTemplate:"extraTemplate",filterMultiple:"filterMultiple",listOfFilter:"listOfFilter"},outputs:{filterChange:"filterChange"},features:[l.TTD],decls:3,vars:3,consts:[[1,"ant-table-column-title"],[3,"ngTemplateOutlet"],[4,"ngIf","ngIfElse"],[3,"nzVisible","nzActive","nzDropdownMenu","nzVisibleChange"],["nz-icon","","nzType","filter","nzTheme","fill"],["filterMenu","nzDropdownMenu"],[1,"ant-table-filter-dropdown"],["nz-menu",""],["nz-menu-item","",3,"nzSelected","click",4,"ngFor","ngForOf","ngForTrackBy"],[1,"ant-table-filter-dropdown-btns"],["nz-button","","nzType","link","nzSize","small",3,"disabled","click"],["nz-button","","nzType","primary","nzSize","small",3,"click"],["nz-menu-item","",3,"nzSelected","click"],["nz-radio","",3,"ngModel","ngModelChange",4,"ngIf"],["nz-checkbox","",3,"ngModel","ngModelChange",4,"ngIf"],["nz-radio","",3,"ngModel","ngModelChange"],["nz-checkbox","",3,"ngModel","ngModelChange"]],template:function(Ct,At){1&Ct&&(l.TgZ(0,"span",0),l.YNc(1,xe,0,0,"ng-template",1),l.qZA(),l.YNc(2,ve,13,8,"ng-container",2)),2&Ct&&(l.xp6(1),l.Q6J("ngTemplateOutlet",At.contentTemplate),l.xp6(1),l.Q6J("ngIf",!At.customFilter)("ngIfElse",At.extraTemplate))},dependencies:[p.wO,p.u9,C.JJ,C.On,y.Of,z.Ie,h.RR,E.ix,Q.w,ie.dQ,i.sg,i.O5,i.tP,d.Ls,En],encapsulation:2,changeDetection:0})}return Et})(),Rn=(()=>{class Et{constructor(){this.expand=!1,this.spaceMode=!1,this.expandChange=new l.vpe}onHostClick(){this.spaceMode||(this.expand=!this.expand,this.expandChange.next(this.expand))}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)};static#t=this.\u0275dir=l.lG2({type:Et,selectors:[["button","nz-row-expand-button",""]],hostAttrs:[1,"ant-table-row-expand-icon"],hostVars:7,hostBindings:function(Ct,At){1&Ct&&l.NdJ("click",function(){return At.onHostClick()}),2&Ct&&(l.Ikx("type","button"),l.ekj("ant-table-row-expand-icon-expanded",!At.spaceMode&&!0===At.expand)("ant-table-row-expand-icon-collapsed",!At.spaceMode&&!1===At.expand)("ant-table-row-expand-icon-spaced",At.spaceMode))},inputs:{expand:"expand",spaceMode:"spaceMode"},outputs:{expandChange:"expandChange"}})}return Et})(),qn=(()=>{class Et{constructor(){this.indentSize=0}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)};static#t=this.\u0275dir=l.lG2({type:Et,selectors:[["nz-row-indent"]],hostAttrs:[1,"ant-table-row-indent"],hostVars:2,hostBindings:function(Ct,At){2&Ct&&l.Udp("padding-left",At.indentSize,"px")},inputs:{indentSize:"indentSize"}})}return Et})(),Wn=(()=>{class Et{constructor(){this.sortDirections=["ascend","descend",null],this.sortOrder=null,this.contentTemplate=null,this.isUp=!1,this.isDown=!1}ngOnChanges(lt){const{sortDirections:Ct}=lt;Ct&&(this.isUp=-1!==this.sortDirections.indexOf("ascend"),this.isDown=-1!==this.sortDirections.indexOf("descend"))}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)};static#t=this.\u0275cmp=l.Xpm({type:Et,selectors:[["nz-table-sorters"]],hostAttrs:[1,"ant-table-column-sorters"],inputs:{sortDirections:"sortDirections",sortOrder:"sortOrder",contentTemplate:"contentTemplate"},features:[l.TTD],decls:6,vars:5,consts:[[1,"ant-table-column-title"],[3,"ngTemplateOutlet"],[1,"ant-table-column-sorter"],[1,"ant-table-column-sorter-inner"],["nz-icon","","nzType","caret-up","class","ant-table-column-sorter-up",3,"active",4,"ngIf"],["nz-icon","","nzType","caret-down","class","ant-table-column-sorter-down",3,"active",4,"ngIf"],["nz-icon","","nzType","caret-up",1,"ant-table-column-sorter-up"],["nz-icon","","nzType","caret-down",1,"ant-table-column-sorter-down"]],template:function(Ct,At){1&Ct&&(l.TgZ(0,"span",0),l.YNc(1,ct,0,0,"ng-template",1),l.qZA(),l.TgZ(2,"span",2)(3,"span",3),l.YNc(4,Ae,1,2,"span",4),l.YNc(5,Mt,1,2,"span",5),l.qZA()()),2&Ct&&(l.xp6(1),l.Q6J("ngTemplateOutlet",At.contentTemplate),l.xp6(1),l.ekj("ant-table-column-sorter-full",At.isDown&&At.isUp),l.xp6(2),l.Q6J("ngIf",At.isUp),l.xp6(1),l.Q6J("ngIf",At.isDown))},dependencies:[Q.w,i.O5,i.tP,d.Ls],encapsulation:2,changeDetection:0})}return Et})(),ci=(()=>{class Et{setAutoLeftWidth(lt){this.renderer.setStyle(this.elementRef.nativeElement,"left",lt)}setAutoRightWidth(lt){this.renderer.setStyle(this.elementRef.nativeElement,"right",lt)}setIsFirstRight(lt){this.setFixClass(lt,"ant-table-cell-fix-right-first")}setIsLastLeft(lt){this.setFixClass(lt,"ant-table-cell-fix-left-last")}setFixClass(lt,Ct){this.renderer.removeClass(this.elementRef.nativeElement,Ct),lt&&this.renderer.addClass(this.elementRef.nativeElement,Ct)}constructor(lt,Ct){this.renderer=lt,this.elementRef=Ct,this.nzRight=!1,this.nzLeft=!1,this.colspan=null,this.colSpan=null,this.changes$=new _.x,this.isAutoLeft=!1,this.isAutoRight=!1,this.isFixedLeft=!1,this.isFixedRight=!1,this.isFixed=!1}ngOnChanges(){this.setIsFirstRight(!1),this.setIsLastLeft(!1),this.isAutoLeft=""===this.nzLeft||!0===this.nzLeft,this.isAutoRight=""===this.nzRight||!0===this.nzRight,this.isFixedLeft=!1!==this.nzLeft,this.isFixedRight=!1!==this.nzRight,this.isFixed=this.isFixedLeft||this.isFixedRight;const lt=Ct=>"string"==typeof Ct&&""!==Ct?Ct:null;this.setAutoLeftWidth(lt(this.nzLeft)),this.setAutoRightWidth(lt(this.nzRight)),this.changes$.next()}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)(l.Y36(l.Qsj),l.Y36(l.SBq))};static#t=this.\u0275dir=l.lG2({type:Et,selectors:[["td","nzRight",""],["th","nzRight",""],["td","nzLeft",""],["th","nzLeft",""]],hostVars:6,hostBindings:function(Ct,At){2&Ct&&(l.Udp("position",At.isFixed?"sticky":null),l.ekj("ant-table-cell-fix-right",At.isFixedRight)("ant-table-cell-fix-left",At.isFixedLeft))},inputs:{nzRight:"nzRight",nzLeft:"nzLeft",colspan:"colspan",colSpan:"colSpan"},features:[l.TTD]})}return Et})(),ri=(()=>{class Et{setTheadTemplate(lt){this.theadTemplate$.next(lt)}setHasFixLeft(lt){this.hasFixLeft$.next(lt)}setHasFixRight(lt){this.hasFixRight$.next(lt)}setTableWidthConfig(lt){this.tableWidthConfigPx$.next(lt)}setListOfTh(lt){let Ct=0;lt.forEach(Qt=>{Ct+=Qt.colspan&&+Qt.colspan||Qt.colSpan&&+Qt.colSpan||1});const At=lt.map(Qt=>Qt.nzWidth);this.columnCount$.next(Ct),this.listOfThWidthConfigPx$.next(At)}setListOfMeasureColumn(lt){const Ct=[];lt.forEach(At=>{const Qt=At.colspan&&+At.colspan||At.colSpan&&+At.colSpan||1;for(let gn=0;gn`${Ct}px`))}setShowEmpty(lt){this.showEmpty$.next(lt)}setNoResult(lt){this.noResult$.next(lt)}setScroll(lt,Ct){const At=!(!lt&&!Ct);At||this.setListOfAutoWidth([]),this.enableAutoMeasure$.next(At)}constructor(){this.theadTemplate$=new P.t(1),this.hasFixLeft$=new P.t(1),this.hasFixRight$=new P.t(1),this.hostWidth$=new P.t(1),this.columnCount$=new P.t(1),this.showEmpty$=new P.t(1),this.noResult$=new P.t(1),this.listOfThWidthConfigPx$=new S.X([]),this.tableWidthConfigPx$=new S.X([]),this.manualWidthConfigPx$=(0,A.a)([this.tableWidthConfigPx$,this.listOfThWidthConfigPx$]).pipe((0,ze.U)(([lt,Ct])=>lt.length?lt:Ct)),this.listOfAutoWidthPx$=new P.t(1),this.listOfListOfThWidthPx$=(0,k.T)(this.manualWidthConfigPx$,(0,A.a)([this.listOfAutoWidthPx$,this.manualWidthConfigPx$]).pipe((0,ze.U)(([lt,Ct])=>lt.length===Ct.length?lt.map((At,Qt)=>"0px"===At?Ct[Qt]||null:Ct[Qt]||At):Ct))),this.listOfMeasureColumn$=new P.t(1),this.listOfListOfThWidth$=this.listOfAutoWidthPx$.pipe((0,ze.U)(lt=>lt.map(Ct=>parseInt(Ct,10)))),this.enableAutoMeasure$=new P.t(1)}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)};static#t=this.\u0275prov=l.Yz7({token:Et,factory:Et.\u0275fac})}return Et})(),di=(()=>{class Et{constructor(lt){this.isInsideTable=!1,this.isInsideTable=!!lt}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)(l.Y36(ri,8))};static#t=this.\u0275dir=l.lG2({type:Et,selectors:[["th",9,"nz-disable-th",3,"mat-cell",""],["td",9,"nz-disable-td",3,"mat-cell",""]],hostVars:2,hostBindings:function(Ct,At){2&Ct&&l.ekj("ant-table-cell",At.isInsideTable)}})}return Et})(),hi=(()=>{class Et{updatePageSize(lt){this.pageSize$.next(lt)}updateFrontPagination(lt){this.frontPagination$.next(lt)}updatePageIndex(lt){this.pageIndex$.next(lt)}updateListOfData(lt){this.listOfData$.next(lt)}updateListOfCustomColumn(lt){this.listOfCustomColumn$.next(lt)}constructor(){this.destroy$=new _.x,this.pageIndex$=new S.X(1),this.frontPagination$=new S.X(!0),this.pageSize$=new S.X(10),this.listOfData$=new S.X([]),this.listOfCustomColumn$=new S.X([]),this.pageIndexDistinct$=this.pageIndex$.pipe((0,Y.x)()),this.pageSizeDistinct$=this.pageSize$.pipe((0,Y.x)()),this.listOfCalcOperator$=new S.X([]),this.queryParams$=(0,A.a)([this.pageIndexDistinct$,this.pageSizeDistinct$,this.listOfCalcOperator$]).pipe((0,G.b)(0),(0,V.T)(1),(0,ze.U)(([lt,Ct,At])=>({pageIndex:lt,pageSize:Ct,sort:At.filter(Qt=>Qt.sortFn).map(Qt=>({key:Qt.key,value:Qt.sortOrder})),filter:At.filter(Qt=>Qt.filterFn).map(Qt=>({key:Qt.key,value:Qt.filterValue}))}))),this.listOfDataAfterCalc$=(0,A.a)([this.listOfData$,this.listOfCalcOperator$]).pipe((0,ze.U)(([lt,Ct])=>{let At=[...lt];const Qt=Ct.filter(Ln=>{const{filterValue:Sn,filterFn:gi}=Ln;return!(null==Sn||Array.isArray(Sn)&&0===Sn.length)&&"function"==typeof gi});for(const Ln of Qt){const{filterFn:Sn,filterValue:gi}=Ln;At=At.filter(St=>Sn(gi,St))}const gn=Ct.filter(Ln=>null!==Ln.sortOrder&&"function"==typeof Ln.sortFn).sort((Ln,Sn)=>+Sn.sortPriority-+Ln.sortPriority);return Ct.length&&At.sort((Ln,Sn)=>{for(const gi of gn){const{sortFn:St,sortOrder:gt}=gi;if(St&>){const We=St(Ln,Sn,gt);if(0!==We)return"ascend"===gt?We:-We}}return 0}),At})),this.listOfFrontEndCurrentPageData$=(0,A.a)([this.pageIndexDistinct$,this.pageSizeDistinct$,this.listOfDataAfterCalc$]).pipe((0,W.R)(this.destroy$),(0,K.h)(lt=>{const[Ct,At,Qt]=lt;return Ct<=(Math.ceil(Qt.length/At)||1)}),(0,ze.U)(([lt,Ct,At])=>At.slice((lt-1)*Ct,lt*Ct))),this.listOfCurrentPageData$=this.frontPagination$.pipe((0,te.w)(lt=>lt?this.listOfFrontEndCurrentPageData$:this.listOfDataAfterCalc$)),this.total$=this.frontPagination$.pipe((0,te.w)(lt=>lt?this.listOfDataAfterCalc$:this.listOfData$),(0,ze.U)(lt=>lt.length),(0,Y.x)())}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)};static#t=this.\u0275prov=l.Yz7({token:Et,factory:Et.\u0275fac})}return Et})(),zi=(()=>{class Et{constructor(){this.nzChecked=!1,this.nzDisabled=!1,this.nzIndeterminate=!1,this.nzIndentSize=0,this.nzShowExpand=!1,this.nzShowCheckbox=!1,this.nzExpand=!1,this.nzCheckedChange=new l.vpe,this.nzExpandChange=new l.vpe,this.isNzShowExpandChanged=!1,this.isNzShowCheckboxChanged=!1}onCheckedChange(lt){this.nzChecked=lt,this.nzCheckedChange.emit(lt)}onExpandChange(lt){this.nzExpand=lt,this.nzExpandChange.emit(lt)}ngOnChanges(lt){const Ct=Sn=>Sn&&Sn.firstChange&&void 0!==Sn.currentValue,{nzExpand:At,nzChecked:Qt,nzShowExpand:gn,nzShowCheckbox:Ln}=lt;gn&&(this.isNzShowExpandChanged=!0),Ln&&(this.isNzShowCheckboxChanged=!0),Ct(At)&&!this.isNzShowExpandChanged&&(this.nzShowExpand=!0),Ct(Qt)&&!this.isNzShowCheckboxChanged&&(this.nzShowCheckbox=!0)}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)};static#t=this.\u0275cmp=l.Xpm({type:Et,selectors:[["td","nzChecked",""],["td","nzDisabled",""],["td","nzIndeterminate",""],["td","nzIndentSize",""],["td","nzExpand",""],["td","nzShowExpand",""],["td","nzShowCheckbox",""]],hostVars:4,hostBindings:function(Ct,At){2&Ct&&l.ekj("ant-table-cell-with-append",At.nzShowExpand||At.nzIndentSize>0)("ant-table-selection-column",At.nzShowCheckbox)},inputs:{nzChecked:"nzChecked",nzDisabled:"nzDisabled",nzIndeterminate:"nzIndeterminate",nzIndentSize:"nzIndentSize",nzShowExpand:"nzShowExpand",nzShowCheckbox:"nzShowCheckbox",nzExpand:"nzExpand"},outputs:{nzCheckedChange:"nzCheckedChange",nzExpandChange:"nzExpandChange"},features:[l.TTD],attrs:je,ngContentSelectors:ae,decls:3,vars:2,consts:[[4,"ngIf"],["nz-checkbox","",3,"nzDisabled","ngModel","nzIndeterminate","ngModelChange",4,"ngIf"],[3,"indentSize"],["nz-row-expand-button","",3,"expand","spaceMode","expandChange"],["nz-checkbox","",3,"nzDisabled","ngModel","nzIndeterminate","ngModelChange"]],template:function(Ct,At){1&Ct&&(l.F$t(),l.YNc(0,ot,3,3,"ng-container",0),l.YNc(1,mt,1,3,"label",1),l.Hsn(2)),2&Ct&&(l.Q6J("ngIf",At.nzShowExpand||At.nzIndentSize>0),l.xp6(1),l.Q6J("ngIf",At.nzShowCheckbox))},dependencies:[C.JJ,C.On,z.Ie,i.O5,qn,Rn],encapsulation:2,changeDetection:0})}return(0,x.gn)([(0,ce.yF)()],Et.prototype,"nzShowExpand",void 0),(0,x.gn)([(0,ce.yF)()],Et.prototype,"nzShowCheckbox",void 0),(0,x.gn)([(0,ce.yF)()],Et.prototype,"nzExpand",void 0),Et})(),Oi=(()=>{class Et{getNextSortDirection(lt,Ct){const At=lt.indexOf(Ct);return At===lt.length-1?lt[0]:lt[At+1]}setSortOrder(lt){this.sortOrderChange$.next(lt)}clearSortOrder(){null!==this.sortOrder&&this.setSortOrder(null)}onFilterValueChange(lt){this.nzFilterChange.emit(lt),this.nzFilterValue=lt,this.updateCalcOperator()}updateCalcOperator(){this.calcOperatorChange$.next()}constructor(lt,Ct,At,Qt){this.host=lt,this.cdr=Ct,this.ngZone=At,this.destroy$=Qt,this.manualClickOrder$=new _.x,this.calcOperatorChange$=new _.x,this.nzFilterValue=null,this.sortOrder=null,this.sortDirections=["ascend","descend",null],this.sortOrderChange$=new _.x,this.isNzShowSortChanged=!1,this.isNzShowFilterChanged=!1,this.nzFilterMultiple=!0,this.nzSortOrder=null,this.nzSortPriority=!1,this.nzSortDirections=["ascend","descend",null],this.nzFilters=[],this.nzSortFn=null,this.nzFilterFn=null,this.nzShowSort=!1,this.nzShowFilter=!1,this.nzCustomFilter=!1,this.nzCheckedChange=new l.vpe,this.nzSortOrderChange=new l.vpe,this.nzFilterChange=new l.vpe}ngOnInit(){this.ngZone.runOutsideAngular(()=>(0,D.R)(this.host.nativeElement,"click").pipe((0,K.h)(()=>this.nzShowSort),(0,W.R)(this.destroy$)).subscribe(()=>{const lt=this.getNextSortDirection(this.sortDirections,this.sortOrder);this.ngZone.run(()=>{this.setSortOrder(lt),this.manualClickOrder$.next(this)})})),this.sortOrderChange$.pipe((0,W.R)(this.destroy$)).subscribe(lt=>{this.sortOrder!==lt&&(this.sortOrder=lt,this.nzSortOrderChange.emit(lt)),this.updateCalcOperator(),this.cdr.markForCheck()})}ngOnChanges(lt){const{nzSortDirections:Ct,nzFilters:At,nzSortOrder:Qt,nzSortFn:gn,nzFilterFn:Ln,nzSortPriority:Sn,nzFilterMultiple:gi,nzShowSort:St,nzShowFilter:gt}=lt;Ct&&this.nzSortDirections&&this.nzSortDirections.length&&(this.sortDirections=this.nzSortDirections),Qt&&(this.sortOrder=this.nzSortOrder,this.setSortOrder(this.nzSortOrder)),St&&(this.isNzShowSortChanged=!0),gt&&(this.isNzShowFilterChanged=!0);const We=Nt=>Nt&&Nt.firstChange&&void 0!==Nt.currentValue;if((We(Qt)||We(gn))&&!this.isNzShowSortChanged&&(this.nzShowSort=!0),We(At)&&!this.isNzShowFilterChanged&&(this.nzShowFilter=!0),(At||gi)&&this.nzShowFilter){const Nt=this.nzFilters.filter(Kt=>Kt.byDefault).map(Kt=>Kt.value);this.nzFilterValue=this.nzFilterMultiple?Nt:Nt[0]||null}(gn||Ln||Sn||At)&&this.updateCalcOperator()}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)(l.Y36(l.SBq),l.Y36(l.sBO),l.Y36(l.R0b),l.Y36(le.kn))};static#t=this.\u0275cmp=l.Xpm({type:Et,selectors:[["th","nzColumnKey",""],["th","nzSortFn",""],["th","nzSortOrder",""],["th","nzFilters",""],["th","nzShowSort",""],["th","nzShowFilter",""],["th","nzCustomFilter",""]],hostVars:4,hostBindings:function(Ct,At){2&Ct&&l.ekj("ant-table-column-has-sorters",At.nzShowSort)("ant-table-column-sort","descend"===At.sortOrder||"ascend"===At.sortOrder)},inputs:{nzColumnKey:"nzColumnKey",nzFilterMultiple:"nzFilterMultiple",nzSortOrder:"nzSortOrder",nzSortPriority:"nzSortPriority",nzSortDirections:"nzSortDirections",nzFilters:"nzFilters",nzSortFn:"nzSortFn",nzFilterFn:"nzFilterFn",nzShowSort:"nzShowSort",nzShowFilter:"nzShowFilter",nzCustomFilter:"nzCustomFilter"},outputs:{nzCheckedChange:"nzCheckedChange",nzSortOrderChange:"nzSortOrderChange",nzFilterChange:"nzFilterChange"},features:[l._Bn([le.kn]),l.TTD],attrs:we,ngContentSelectors:Dt,decls:9,vars:2,consts:[[3,"contentTemplate","extraTemplate","customFilter","filterMultiple","listOfFilter","filterChange",4,"ngIf","ngIfElse"],["notFilterTemplate",""],["extraTemplate",""],["sortTemplate",""],["contentTemplate",""],[3,"contentTemplate","extraTemplate","customFilter","filterMultiple","listOfFilter","filterChange"],[3,"ngTemplateOutlet"],[3,"sortOrder","sortDirections","contentTemplate"]],template:function(Ct,At){if(1&Ct&&(l.F$t(pt),l.YNc(0,de,1,5,"nz-table-filter",0),l.YNc(1,B,1,1,"ng-template",null,1,l.W1O),l.YNc(3,Ee,2,0,"ng-template",null,2,l.W1O),l.YNc(5,Ie,1,3,"ng-template",null,3,l.W1O),l.YNc(7,Ne,1,0,"ng-template",null,4,l.W1O)),2&Ct){const Qt=l.MAs(2);l.Q6J("ngIf",At.nzShowFilter||At.nzCustomFilter)("ngIfElse",Qt)}},dependencies:[i.O5,i.tP,Wn,bn],encapsulation:2,changeDetection:0})}return(0,x.gn)([(0,ce.yF)()],Et.prototype,"nzShowSort",void 0),(0,x.gn)([(0,ce.yF)()],Et.prototype,"nzShowFilter",void 0),(0,x.gn)([(0,ce.yF)()],Et.prototype,"nzCustomFilter",void 0),Et})(),ei=(()=>{class Et{constructor(lt,Ct){this.renderer=lt,this.elementRef=Ct,this.changes$=new _.x,this.nzWidth=null,this.colspan=null,this.colSpan=null,this.rowspan=null,this.rowSpan=null}ngOnChanges(lt){const{nzWidth:Ct,colspan:At,rowspan:Qt,colSpan:gn,rowSpan:Ln}=lt;if(At||gn){const Sn=this.colspan||this.colSpan;(0,ce.kK)(Sn)?this.renderer.removeAttribute(this.elementRef.nativeElement,"colspan"):this.renderer.setAttribute(this.elementRef.nativeElement,"colspan",`${Sn}`)}if(Qt||Ln){const Sn=this.rowspan||this.rowSpan;(0,ce.kK)(Sn)?this.renderer.removeAttribute(this.elementRef.nativeElement,"rowspan"):this.renderer.setAttribute(this.elementRef.nativeElement,"rowspan",`${Sn}`)}(Ct||At)&&this.changes$.next()}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)(l.Y36(l.Qsj),l.Y36(l.SBq))};static#t=this.\u0275dir=l.lG2({type:Et,selectors:[["th"]],inputs:{nzWidth:"nzWidth",colspan:"colspan",colSpan:"colSpan",rowspan:"rowspan",rowSpan:"rowSpan"},features:[l.TTD]})}return Et})(),Li=(()=>{class Et{constructor(){this.tableLayout="auto",this.theadTemplate=null,this.contentTemplate=null,this.listOfColWidth=[],this.scrollX=null}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)};static#t=this.\u0275cmp=l.Xpm({type:Et,selectors:[["table","nz-table-content",""]],hostVars:8,hostBindings:function(Ct,At){2&Ct&&(l.Udp("table-layout",At.tableLayout)("width",At.scrollX)("min-width",At.scrollX?"100%":null),l.ekj("ant-table-fixed",At.scrollX))},inputs:{tableLayout:"tableLayout",theadTemplate:"theadTemplate",contentTemplate:"contentTemplate",listOfColWidth:"listOfColWidth",scrollX:"scrollX"},attrs:Ut,ngContentSelectors:ae,decls:4,vars:3,consts:[[3,"width","minWidth",4,"ngFor","ngForOf"],["class","ant-table-thead",4,"ngIf"],[3,"ngTemplateOutlet"],[1,"ant-table-thead"]],template:function(Ct,At){1&Ct&&(l.F$t(),l.YNc(0,qt,1,4,"col",0),l.YNc(1,cn,2,1,"thead",1),l.YNc(2,Wt,0,0,"ng-template",2),l.Hsn(3)),2&Ct&&(l.Q6J("ngForOf",At.listOfColWidth),l.xp6(1),l.Q6J("ngIf",At.theadTemplate),l.xp6(1),l.Q6J("ngTemplateOutlet",At.contentTemplate))},dependencies:[i.sg,i.O5,i.tP],encapsulation:2,changeDetection:0})}return Et})(),$i=(()=>{class Et{constructor(lt,Ct){this.nzTableStyleService=lt,this.renderer=Ct,this.hostWidth$=new S.X(null),this.enableAutoMeasure$=new S.X(!1),this.destroy$=new _.x}ngOnInit(){if(this.nzTableStyleService){const{enableAutoMeasure$:lt,hostWidth$:Ct}=this.nzTableStyleService;lt.pipe((0,W.R)(this.destroy$)).subscribe(this.enableAutoMeasure$),Ct.pipe((0,W.R)(this.destroy$)).subscribe(this.hostWidth$)}}ngAfterViewInit(){this.nzTableStyleService.columnCount$.pipe((0,W.R)(this.destroy$)).subscribe(lt=>{this.renderer.setAttribute(this.tdElement.nativeElement,"colspan",`${lt}`)})}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)(l.Y36(ri),l.Y36(l.Qsj))};static#t=this.\u0275cmp=l.Xpm({type:Et,selectors:[["tr","nz-table-fixed-row",""],["tr","nzExpand",""]],viewQuery:function(Ct,At){if(1&Ct&&l.Gf(Vt,7),2&Ct){let Qt;l.iGM(Qt=l.CRH())&&(At.tdElement=Qt.first)}},attrs:st,ngContentSelectors:ae,decls:6,vars:4,consts:[[1,"nz-disable-td","ant-table-cell"],["tdElement",""],["class","ant-table-expanded-row-fixed","style","position: sticky; left: 0px; overflow: hidden;",3,"width",4,"ngIf","ngIfElse"],["contentTemplate",""],[1,"ant-table-expanded-row-fixed",2,"position","sticky","left","0px","overflow","hidden"],[3,"ngTemplateOutlet"]],template:function(Ct,At){if(1&Ct&&(l.F$t(),l.TgZ(0,"td",0,1),l.YNc(2,et,3,5,"div",2),l.ALo(3,"async"),l.qZA(),l.YNc(4,It,1,0,"ng-template",null,3,l.W1O)),2&Ct){const Qt=l.MAs(5);l.xp6(2),l.Q6J("ngIf",l.lcZ(3,2,At.enableAutoMeasure$))("ngIfElse",Qt)}},dependencies:[i.O5,i.tP,i.Ov],encapsulation:2,changeDetection:0})}return Et})(),Qi=(()=>{class Et{constructor(){this.tableLayout="auto",this.listOfColWidth=[],this.theadTemplate=null,this.contentTemplate=null}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)};static#t=this.\u0275cmp=l.Xpm({type:Et,selectors:[["nz-table-inner-default"]],hostAttrs:[1,"ant-table-container"],inputs:{tableLayout:"tableLayout",listOfColWidth:"listOfColWidth",theadTemplate:"theadTemplate",contentTemplate:"contentTemplate"},decls:2,vars:4,consts:[[1,"ant-table-content"],["nz-table-content","",3,"contentTemplate","tableLayout","listOfColWidth","theadTemplate"]],template:function(Ct,At){1&Ct&&(l.TgZ(0,"div",0),l._UZ(1,"table",1),l.qZA()),2&Ct&&(l.xp6(1),l.Q6J("contentTemplate",At.contentTemplate)("tableLayout",At.tableLayout)("listOfColWidth",At.listOfColWidth)("theadTemplate",At.theadTemplate))},dependencies:[Li],encapsulation:2,changeDetection:0})}return Et})(),Mo=(()=>{class Et{constructor(lt,Ct){this.nzResizeObserver=lt,this.ngZone=Ct,this.listOfMeasureColumn=[],this.listOfAutoWidth=new l.vpe,this.destroy$=new _.x}trackByFunc(lt,Ct){return Ct}ngAfterViewInit(){this.listOfTdElement.changes.pipe((0,ne.O)(this.listOfTdElement)).pipe((0,te.w)(lt=>(0,A.a)(lt.toArray().map(Ct=>this.nzResizeObserver.observe(Ct).pipe((0,ze.U)(([At])=>{const{width:Qt}=At.target.getBoundingClientRect();return Math.floor(Qt)}))))),(0,G.b)(16),(0,W.R)(this.destroy$)).subscribe(lt=>{this.ngZone instanceof l.R0b&&l.R0b.isInAngularZone()?this.listOfAutoWidth.next(lt):this.ngZone.run(()=>this.listOfAutoWidth.next(lt))})}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)(l.Y36(u.D3),l.Y36(l.R0b))};static#t=this.\u0275cmp=l.Xpm({type:Et,selectors:[["tr","nz-table-measure-row",""]],viewQuery:function(Ct,At){if(1&Ct&&l.Gf(Vt,5),2&Ct){let Qt;l.iGM(Qt=l.CRH())&&(At.listOfTdElement=Qt)}},hostAttrs:[1,"ant-table-measure-now"],inputs:{listOfMeasureColumn:"listOfMeasureColumn"},outputs:{listOfAutoWidth:"listOfAutoWidth"},attrs:Ot,decls:1,vars:2,consts:[["class","nz-disable-td","style","padding: 0px; border: 0px; height: 0px;",4,"ngFor","ngForOf","ngForTrackBy"],[1,"nz-disable-td",2,"padding","0px","border","0px","height","0px"],["tdElement",""]],template:function(Ct,At){1&Ct&&l.YNc(0,xt,2,0,"td",0),2&Ct&&l.Q6J("ngForOf",At.listOfMeasureColumn)("ngForTrackBy",At.trackByFunc)},dependencies:[i.sg],encapsulation:2,changeDetection:0})}return Et})(),wi=(()=>{class Et{constructor(lt){if(this.nzTableStyleService=lt,this.isInsideTable=!1,this.showEmpty$=new S.X(!1),this.noResult$=new S.X(void 0),this.listOfMeasureColumn$=new S.X([]),this.destroy$=new _.x,this.isInsideTable=!!this.nzTableStyleService,this.nzTableStyleService){const{showEmpty$:Ct,noResult$:At,listOfMeasureColumn$:Qt}=this.nzTableStyleService;At.pipe((0,W.R)(this.destroy$)).subscribe(this.noResult$),Qt.pipe((0,W.R)(this.destroy$)).subscribe(this.listOfMeasureColumn$),Ct.pipe((0,W.R)(this.destroy$)).subscribe(this.showEmpty$)}}onListOfAutoWidthChange(lt){this.nzTableStyleService.setListOfAutoWidth(lt)}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)(l.Y36(ri,8))};static#t=this.\u0275cmp=l.Xpm({type:Et,selectors:[["tbody"]],hostVars:2,hostBindings:function(Ct,At){2&Ct&&l.ekj("ant-table-tbody",At.isInsideTable)},ngContentSelectors:ae,decls:5,vars:6,consts:[[4,"ngIf"],["class","ant-table-placeholder","nz-table-fixed-row","",4,"ngIf"],["nz-table-measure-row","",3,"listOfMeasureColumn","listOfAutoWidth",4,"ngIf"],["nz-table-measure-row","",3,"listOfMeasureColumn","listOfAutoWidth"],["nz-table-fixed-row","",1,"ant-table-placeholder"],["nzComponentName","table",3,"specificContent"]],template:function(Ct,At){1&Ct&&(l.F$t(),l.YNc(0,ke,2,1,"ng-container",0),l.ALo(1,"async"),l.Hsn(2),l.YNc(3,pe,3,3,"tr",1),l.ALo(4,"async")),2&Ct&&(l.Q6J("ngIf",l.lcZ(1,2,At.listOfMeasureColumn$)),l.xp6(3),l.Q6J("ngIf",l.lcZ(4,4,At.showEmpty$)))},dependencies:[i.O5,v.gB,Mo,$i,i.Ov],encapsulation:2,changeDetection:0})}return Et})(),Xi=(()=>{class Et{setScrollPositionClassName(lt=!1){const{scrollWidth:Ct,scrollLeft:At,clientWidth:Qt}=this.tableBodyElement.nativeElement,gn="ant-table-ping-left",Ln="ant-table-ping-right";Ct===Qt&&0!==Ct||lt?(this.renderer.removeClass(this.tableMainElement,gn),this.renderer.removeClass(this.tableMainElement,Ln)):0===At?(this.renderer.removeClass(this.tableMainElement,gn),this.renderer.addClass(this.tableMainElement,Ln)):Ct===At+Qt?(this.renderer.removeClass(this.tableMainElement,Ln),this.renderer.addClass(this.tableMainElement,gn)):(this.renderer.addClass(this.tableMainElement,gn),this.renderer.addClass(this.tableMainElement,Ln))}constructor(lt,Ct,At,Qt){this.renderer=lt,this.ngZone=Ct,this.platform=At,this.resizeService=Qt,this.data=[],this.scrollX=null,this.scrollY=null,this.contentTemplate=null,this.widthConfig=[],this.listOfColWidth=[],this.theadTemplate=null,this.virtualTemplate=null,this.virtualItemSize=0,this.virtualMaxBufferPx=200,this.virtualMinBufferPx=100,this.virtualForTrackBy=gn=>gn,this.headerStyleMap={},this.bodyStyleMap={},this.verticalScrollBarWidth=0,this.noDateVirtualHeight="182px",this.data$=new _.x,this.scroll$=new _.x,this.destroy$=new _.x}ngOnChanges(lt){const{scrollX:Ct,scrollY:At,data:Qt}=lt;(Ct||At)&&(this.headerStyleMap={overflowX:"hidden",overflowY:this.scrollY&&0!==this.verticalScrollBarWidth?"scroll":"hidden"},this.bodyStyleMap={overflowY:this.scrollY?"scroll":"hidden",overflowX:this.scrollX?"auto":null,maxHeight:this.scrollY},this.ngZone.runOutsideAngular(()=>this.scroll$.next())),Qt&&this.ngZone.runOutsideAngular(()=>this.data$.next())}ngAfterViewInit(){this.platform.isBrowser&&this.ngZone.runOutsideAngular(()=>{const lt=this.scroll$.pipe((0,ne.O)(null),(0,fe.g)(0),(0,te.w)(()=>(0,D.R)(this.tableBodyElement.nativeElement,"scroll").pipe((0,ne.O)(!0))),(0,W.R)(this.destroy$)),Ct=this.resizeService.subscribe().pipe((0,W.R)(this.destroy$)),At=this.data$.pipe((0,W.R)(this.destroy$));(0,k.T)(lt,Ct,At,this.scroll$).pipe((0,ne.O)(!0),(0,fe.g)(0),(0,W.R)(this.destroy$)).subscribe(()=>this.setScrollPositionClassName()),lt.pipe((0,K.h)(()=>!!this.scrollY)).subscribe(()=>this.tableHeaderElement.nativeElement.scrollLeft=this.tableBodyElement.nativeElement.scrollLeft)})}ngOnDestroy(){this.setScrollPositionClassName(!0),this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)(l.Y36(l.Qsj),l.Y36(l.R0b),l.Y36(n.t4),l.Y36(le.rI))};static#t=this.\u0275cmp=l.Xpm({type:Et,selectors:[["nz-table-inner-scroll"]],viewQuery:function(Ct,At){if(1&Ct&&(l.Gf(qe,5,l.SBq),l.Gf(ge,5,l.SBq),l.Gf(t.N7,5,t.N7)),2&Ct){let Qt;l.iGM(Qt=l.CRH())&&(At.tableHeaderElement=Qt.first),l.iGM(Qt=l.CRH())&&(At.tableBodyElement=Qt.first),l.iGM(Qt=l.CRH())&&(At.cdkVirtualScrollViewport=Qt.first)}},hostAttrs:[1,"ant-table-container"],inputs:{data:"data",scrollX:"scrollX",scrollY:"scrollY",contentTemplate:"contentTemplate",widthConfig:"widthConfig",listOfColWidth:"listOfColWidth",theadTemplate:"theadTemplate",virtualTemplate:"virtualTemplate",virtualItemSize:"virtualItemSize",virtualMaxBufferPx:"virtualMaxBufferPx",virtualMinBufferPx:"virtualMinBufferPx",tableMainElement:"tableMainElement",virtualForTrackBy:"virtualForTrackBy",verticalScrollBarWidth:"verticalScrollBarWidth"},features:[l.TTD],decls:2,vars:2,consts:[[4,"ngIf"],["class","ant-table-content",3,"ngStyle",4,"ngIf"],[1,"ant-table-header","nz-table-hide-scrollbar",3,"ngStyle"],["tableHeaderElement",""],["nz-table-content","","tableLayout","fixed",3,"scrollX","listOfColWidth","theadTemplate"],["class","ant-table-body",3,"ngStyle",4,"ngIf"],[3,"itemSize","maxBufferPx","minBufferPx","height",4,"ngIf"],[1,"ant-table-body",3,"ngStyle"],["tableBodyElement",""],["nz-table-content","","tableLayout","fixed",3,"scrollX","listOfColWidth","contentTemplate"],[3,"itemSize","maxBufferPx","minBufferPx"],["nz-table-content","","tableLayout","fixed",3,"scrollX","listOfColWidth"],[4,"cdkVirtualFor","cdkVirtualForOf","cdkVirtualForTrackBy"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"ant-table-content",3,"ngStyle"],["nz-table-content","","tableLayout","fixed",3,"scrollX","listOfColWidth","theadTemplate","contentTemplate"]],template:function(Ct,At){1&Ct&&(l.YNc(0,Pe,6,6,"ng-container",0),l.YNc(1,Je,3,5,"div",1)),2&Ct&&(l.Q6J("ngIf",At.scrollY),l.xp6(1),l.Q6J("ngIf",!At.scrollY))},dependencies:[i.O5,i.tP,i.PC,t.xd,t.x0,t.N7,wi,Li],encapsulation:2,changeDetection:0})}return Et})(),Ei=(()=>{class Et{constructor(lt){this.templateRef=lt}static ngTemplateContextGuard(lt,Ct){return!0}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)(l.Y36(l.Rgc))};static#t=this.\u0275dir=l.lG2({type:Et,selectors:[["","nz-virtual-scroll",""]],exportAs:["nzVirtualScroll"]})}return Et})(),Hi=(()=>{class Et{constructor(){this.title=null,this.footer=null}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)};static#t=this.\u0275cmp=l.Xpm({type:Et,selectors:[["nz-table-title-footer"]],hostVars:4,hostBindings:function(Ct,At){2&Ct&&l.ekj("ant-table-title",null!==At.title)("ant-table-footer",null!==At.footer)},inputs:{title:"title",footer:"footer"},decls:2,vars:2,consts:[[4,"nzStringTemplateOutlet"]],template:function(Ct,At){1&Ct&&(l.YNc(0,Ge,2,1,"ng-container",0),l.YNc(1,Ke,2,1,"ng-container",0)),2&Ct&&(l.Q6J("nzStringTemplateOutlet",At.title),l.xp6(1),l.Q6J("nzStringTemplateOutlet",At.footer))},dependencies:[M.f],encapsulation:2,changeDetection:0})}return Et})(),Pi=(()=>{class Et{onPageSizeChange(lt){this.nzTableDataService.updatePageSize(lt)}onPageIndexChange(lt){this.nzTableDataService.updatePageIndex(lt)}constructor(lt,Ct,At,Qt,gn,Ln,Sn){this.elementRef=lt,this.nzResizeObserver=Ct,this.nzConfigService=At,this.cdr=Qt,this.nzTableStyleService=gn,this.nzTableDataService=Ln,this.directionality=Sn,this._nzModuleName="table",this.nzTableLayout="auto",this.nzShowTotal=null,this.nzItemRender=null,this.nzTitle=null,this.nzFooter=null,this.nzNoResult=void 0,this.nzPageSizeOptions=[10,20,30,40,50],this.nzVirtualItemSize=0,this.nzVirtualMaxBufferPx=200,this.nzVirtualMinBufferPx=100,this.nzVirtualForTrackBy=gi=>gi,this.nzLoadingDelay=0,this.nzPageIndex=1,this.nzPageSize=10,this.nzTotal=0,this.nzWidthConfig=[],this.nzData=[],this.nzCustomColumn=[],this.nzPaginationPosition="bottom",this.nzScroll={x:null,y:null},this.nzPaginationType="default",this.nzFrontPagination=!0,this.nzTemplateMode=!1,this.nzShowPagination=!0,this.nzLoading=!1,this.nzOuterBordered=!1,this.nzLoadingIndicator=null,this.nzBordered=!1,this.nzSize="default",this.nzShowSizeChanger=!1,this.nzHideOnSinglePage=!1,this.nzShowQuickJumper=!1,this.nzSimple=!1,this.nzPageSizeChange=new l.vpe,this.nzPageIndexChange=new l.vpe,this.nzQueryParams=new l.vpe,this.nzCurrentPageDataChange=new l.vpe,this.nzCustomColumnChange=new l.vpe,this.data=[],this.scrollX=null,this.scrollY=null,this.theadTemplate=null,this.listOfAutoColWidth=[],this.listOfManualColWidth=[],this.hasFixLeft=!1,this.hasFixRight=!1,this.showPagination=!0,this.destroy$=new _.x,this.templateMode$=new S.X(!1),this.dir="ltr",this.verticalScrollBarWidth=0,this.nzConfigService.getConfigChangeEventForComponent("table").pipe((0,W.R)(this.destroy$)).subscribe(()=>{this.cdr.markForCheck()})}ngOnInit(){const{pageIndexDistinct$:lt,pageSizeDistinct$:Ct,listOfCurrentPageData$:At,total$:Qt,queryParams$:gn,listOfCustomColumn$:Ln}=this.nzTableDataService,{theadTemplate$:Sn,hasFixLeft$:gi,hasFixRight$:St}=this.nzTableStyleService;this.dir=this.directionality.value,this.directionality.change?.pipe((0,W.R)(this.destroy$)).subscribe(gt=>{this.dir=gt,this.cdr.detectChanges()}),gn.pipe((0,W.R)(this.destroy$)).subscribe(this.nzQueryParams),lt.pipe((0,W.R)(this.destroy$)).subscribe(gt=>{gt!==this.nzPageIndex&&(this.nzPageIndex=gt,this.nzPageIndexChange.next(gt))}),Ct.pipe((0,W.R)(this.destroy$)).subscribe(gt=>{gt!==this.nzPageSize&&(this.nzPageSize=gt,this.nzPageSizeChange.next(gt))}),Qt.pipe((0,W.R)(this.destroy$),(0,K.h)(()=>this.nzFrontPagination)).subscribe(gt=>{gt!==this.nzTotal&&(this.nzTotal=gt,this.cdr.markForCheck())}),At.pipe((0,W.R)(this.destroy$)).subscribe(gt=>{this.data=gt,this.nzCurrentPageDataChange.next(gt),this.cdr.markForCheck()}),Ln.pipe((0,W.R)(this.destroy$)).subscribe(gt=>{this.nzCustomColumn=gt,this.nzCustomColumnChange.next(gt),this.cdr.markForCheck()}),Sn.pipe((0,W.R)(this.destroy$)).subscribe(gt=>{this.theadTemplate=gt,this.cdr.markForCheck()}),gi.pipe((0,W.R)(this.destroy$)).subscribe(gt=>{this.hasFixLeft=gt,this.cdr.markForCheck()}),St.pipe((0,W.R)(this.destroy$)).subscribe(gt=>{this.hasFixRight=gt,this.cdr.markForCheck()}),(0,A.a)([Qt,this.templateMode$]).pipe((0,ze.U)(([gt,We])=>0===gt&&!We),(0,W.R)(this.destroy$)).subscribe(gt=>{this.nzTableStyleService.setShowEmpty(gt)}),this.verticalScrollBarWidth=(0,ce.D8)("vertical"),this.nzTableStyleService.listOfListOfThWidthPx$.pipe((0,W.R)(this.destroy$)).subscribe(gt=>{this.listOfAutoColWidth=gt,this.cdr.markForCheck()}),this.nzTableStyleService.manualWidthConfigPx$.pipe((0,W.R)(this.destroy$)).subscribe(gt=>{this.listOfManualColWidth=gt,this.cdr.markForCheck()})}ngOnChanges(lt){const{nzScroll:Ct,nzPageIndex:At,nzPageSize:Qt,nzFrontPagination:gn,nzData:Ln,nzCustomColumn:Sn,nzWidthConfig:gi,nzNoResult:St,nzTemplateMode:gt}=lt;At&&this.nzTableDataService.updatePageIndex(this.nzPageIndex),Qt&&this.nzTableDataService.updatePageSize(this.nzPageSize),Ln&&(this.nzData=this.nzData||[],this.nzTableDataService.updateListOfData(this.nzData)),Sn&&(this.nzCustomColumn=this.nzCustomColumn||[],this.nzTableDataService.updateListOfCustomColumn(this.nzCustomColumn)),gn&&this.nzTableDataService.updateFrontPagination(this.nzFrontPagination),Ct&&this.setScrollOnChanges(),gi&&this.nzTableStyleService.setTableWidthConfig(this.nzWidthConfig),gt&&this.templateMode$.next(this.nzTemplateMode),St&&this.nzTableStyleService.setNoResult(this.nzNoResult),this.updateShowPagination()}ngAfterViewInit(){this.nzResizeObserver.observe(this.elementRef).pipe((0,ze.U)(([lt])=>{const{width:Ct}=lt.target.getBoundingClientRect();return Math.floor(Ct-(this.scrollY?this.verticalScrollBarWidth:0))}),(0,W.R)(this.destroy$)).subscribe(this.nzTableStyleService.hostWidth$),this.nzTableInnerScrollComponent&&this.nzTableInnerScrollComponent.cdkVirtualScrollViewport&&(this.cdkVirtualScrollViewport=this.nzTableInnerScrollComponent.cdkVirtualScrollViewport)}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}setScrollOnChanges(){this.scrollX=this.nzScroll&&this.nzScroll.x||null,this.scrollY=this.nzScroll&&this.nzScroll.y||null,this.nzTableStyleService.setScroll(this.scrollX,this.scrollY)}updateShowPagination(){this.showPagination=this.nzHideOnSinglePage&&this.nzData.length>this.nzPageSize||this.nzData.length>0&&!this.nzHideOnSinglePage||!this.nzFrontPagination&&this.nzTotal>this.nzPageSize}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)(l.Y36(l.SBq),l.Y36(u.D3),l.Y36(be.jY),l.Y36(l.sBO),l.Y36(ri),l.Y36(hi),l.Y36(e.Is,8))};static#t=this.\u0275cmp=l.Xpm({type:Et,selectors:[["nz-table"]],contentQueries:function(Ct,At,Qt){if(1&Ct&&l.Suo(Qt,Ei,5),2&Ct){let gn;l.iGM(gn=l.CRH())&&(At.nzVirtualScrollDirective=gn.first)}},viewQuery:function(Ct,At){if(1&Ct&&l.Gf(Xi,5),2&Ct){let Qt;l.iGM(Qt=l.CRH())&&(At.nzTableInnerScrollComponent=Qt.first)}},hostAttrs:[1,"ant-table-wrapper"],hostVars:4,hostBindings:function(Ct,At){2&Ct&&l.ekj("ant-table-wrapper-rtl","rtl"===At.dir)("ant-table-custom-column",At.nzCustomColumn.length)},inputs:{nzTableLayout:"nzTableLayout",nzShowTotal:"nzShowTotal",nzItemRender:"nzItemRender",nzTitle:"nzTitle",nzFooter:"nzFooter",nzNoResult:"nzNoResult",nzPageSizeOptions:"nzPageSizeOptions",nzVirtualItemSize:"nzVirtualItemSize",nzVirtualMaxBufferPx:"nzVirtualMaxBufferPx",nzVirtualMinBufferPx:"nzVirtualMinBufferPx",nzVirtualForTrackBy:"nzVirtualForTrackBy",nzLoadingDelay:"nzLoadingDelay",nzPageIndex:"nzPageIndex",nzPageSize:"nzPageSize",nzTotal:"nzTotal",nzWidthConfig:"nzWidthConfig",nzData:"nzData",nzCustomColumn:"nzCustomColumn",nzPaginationPosition:"nzPaginationPosition",nzScroll:"nzScroll",nzPaginationType:"nzPaginationType",nzFrontPagination:"nzFrontPagination",nzTemplateMode:"nzTemplateMode",nzShowPagination:"nzShowPagination",nzLoading:"nzLoading",nzOuterBordered:"nzOuterBordered",nzLoadingIndicator:"nzLoadingIndicator",nzBordered:"nzBordered",nzSize:"nzSize",nzShowSizeChanger:"nzShowSizeChanger",nzHideOnSinglePage:"nzHideOnSinglePage",nzShowQuickJumper:"nzShowQuickJumper",nzSimple:"nzSimple"},outputs:{nzPageSizeChange:"nzPageSizeChange",nzPageIndexChange:"nzPageIndexChange",nzQueryParams:"nzQueryParams",nzCurrentPageDataChange:"nzCurrentPageDataChange",nzCustomColumnChange:"nzCustomColumnChange"},exportAs:["nzTable"],features:[l._Bn([ri,hi]),l.TTD],ngContentSelectors:ae,decls:14,vars:27,consts:[[3,"nzDelay","nzSpinning","nzIndicator"],[4,"ngIf"],[1,"ant-table"],["tableMainElement",""],[3,"title",4,"ngIf"],[3,"data","scrollX","scrollY","contentTemplate","listOfColWidth","theadTemplate","verticalScrollBarWidth","virtualTemplate","virtualItemSize","virtualMaxBufferPx","virtualMinBufferPx","tableMainElement","virtualForTrackBy",4,"ngIf","ngIfElse"],["defaultTemplate",""],[3,"footer",4,"ngIf"],["paginationTemplate",""],["contentTemplate",""],[3,"ngTemplateOutlet"],[3,"title"],[3,"data","scrollX","scrollY","contentTemplate","listOfColWidth","theadTemplate","verticalScrollBarWidth","virtualTemplate","virtualItemSize","virtualMaxBufferPx","virtualMinBufferPx","tableMainElement","virtualForTrackBy"],[3,"tableLayout","listOfColWidth","theadTemplate","contentTemplate"],[3,"footer"],["class","ant-table-pagination ant-table-pagination-right",3,"hidden","nzShowSizeChanger","nzPageSizeOptions","nzItemRender","nzShowQuickJumper","nzHideOnSinglePage","nzShowTotal","nzSize","nzPageSize","nzTotal","nzSimple","nzPageIndex","nzPageSizeChange","nzPageIndexChange",4,"ngIf"],[1,"ant-table-pagination","ant-table-pagination-right",3,"hidden","nzShowSizeChanger","nzPageSizeOptions","nzItemRender","nzShowQuickJumper","nzHideOnSinglePage","nzShowTotal","nzSize","nzPageSize","nzTotal","nzSimple","nzPageIndex","nzPageSizeChange","nzPageIndexChange"]],template:function(Ct,At){if(1&Ct&&(l.F$t(),l.TgZ(0,"nz-spin",0),l.YNc(1,it,2,1,"ng-container",1),l.TgZ(2,"div",2,3),l.YNc(4,b,1,1,"nz-table-title-footer",4),l.YNc(5,N,1,13,"nz-table-inner-scroll",5),l.YNc(6,O,1,4,"ng-template",null,6,l.W1O),l.YNc(8,j,1,1,"nz-table-title-footer",7),l.qZA(),l.YNc(9,he,2,1,"ng-container",1),l.qZA(),l.YNc(10,bt,1,1,"ng-template",null,8,l.W1O),l.YNc(12,Ft,1,0,"ng-template",null,9,l.W1O)),2&Ct){const Qt=l.MAs(7);l.Q6J("nzDelay",At.nzLoadingDelay)("nzSpinning",At.nzLoading)("nzIndicator",At.nzLoadingIndicator),l.xp6(1),l.Q6J("ngIf","both"===At.nzPaginationPosition||"top"===At.nzPaginationPosition),l.xp6(1),l.ekj("ant-table-rtl","rtl"===At.dir)("ant-table-fixed-header",At.nzData.length&&At.scrollY)("ant-table-fixed-column",At.scrollX)("ant-table-has-fix-left",At.hasFixLeft)("ant-table-has-fix-right",At.hasFixRight)("ant-table-bordered",At.nzBordered)("nz-table-out-bordered",At.nzOuterBordered&&!At.nzBordered)("ant-table-middle","middle"===At.nzSize)("ant-table-small","small"===At.nzSize),l.xp6(2),l.Q6J("ngIf",At.nzTitle),l.xp6(1),l.Q6J("ngIf",At.scrollY||At.scrollX)("ngIfElse",Qt),l.xp6(3),l.Q6J("ngIf",At.nzFooter),l.xp6(1),l.Q6J("ngIf","both"===At.nzPaginationPosition||"bottom"===At.nzPaginationPosition)}},dependencies:[i.O5,i.tP,f.dE,T.W,Hi,Qi,Xi],encapsulation:2,changeDetection:0})}return(0,x.gn)([(0,ce.yF)()],Et.prototype,"nzFrontPagination",void 0),(0,x.gn)([(0,ce.yF)()],Et.prototype,"nzTemplateMode",void 0),(0,x.gn)([(0,ce.yF)()],Et.prototype,"nzShowPagination",void 0),(0,x.gn)([(0,ce.yF)()],Et.prototype,"nzLoading",void 0),(0,x.gn)([(0,ce.yF)()],Et.prototype,"nzOuterBordered",void 0),(0,x.gn)([(0,be.oS)()],Et.prototype,"nzLoadingIndicator",void 0),(0,x.gn)([(0,be.oS)(),(0,ce.yF)()],Et.prototype,"nzBordered",void 0),(0,x.gn)([(0,be.oS)()],Et.prototype,"nzSize",void 0),(0,x.gn)([(0,be.oS)(),(0,ce.yF)()],Et.prototype,"nzShowSizeChanger",void 0),(0,x.gn)([(0,be.oS)(),(0,ce.yF)()],Et.prototype,"nzHideOnSinglePage",void 0),(0,x.gn)([(0,be.oS)(),(0,ce.yF)()],Et.prototype,"nzShowQuickJumper",void 0),(0,x.gn)([(0,be.oS)(),(0,ce.yF)()],Et.prototype,"nzSimple",void 0),Et})(),Ii=(()=>{class Et{constructor(lt){this.nzTableStyleService=lt,this.destroy$=new _.x,this.listOfFixedColumns$=new P.t(1),this.listOfColumns$=new P.t(1),this.listOfFixedColumnsChanges$=this.listOfFixedColumns$.pipe((0,te.w)(Ct=>(0,k.T)(this.listOfFixedColumns$,...Ct.map(At=>At.changes$)).pipe((0,re.z)(()=>this.listOfFixedColumns$))),(0,W.R)(this.destroy$)),this.listOfFixedLeftColumnChanges$=this.listOfFixedColumnsChanges$.pipe((0,ze.U)(Ct=>Ct.filter(At=>!1!==At.nzLeft))),this.listOfFixedRightColumnChanges$=this.listOfFixedColumnsChanges$.pipe((0,ze.U)(Ct=>Ct.filter(At=>!1!==At.nzRight))),this.listOfColumnsChanges$=this.listOfColumns$.pipe((0,te.w)(Ct=>(0,k.T)(this.listOfColumns$,...Ct.map(At=>At.changes$)).pipe((0,re.z)(()=>this.listOfColumns$))),(0,W.R)(this.destroy$)),this.isInsideTable=!1,this.isInsideTable=!!lt}ngAfterContentInit(){this.nzTableStyleService&&(this.listOfCellFixedDirective.changes.pipe((0,ne.O)(this.listOfCellFixedDirective),(0,W.R)(this.destroy$)).subscribe(this.listOfFixedColumns$),this.listOfNzThDirective.changes.pipe((0,ne.O)(this.listOfNzThDirective),(0,W.R)(this.destroy$)).subscribe(this.listOfColumns$),this.listOfFixedLeftColumnChanges$.subscribe(lt=>{lt.forEach(Ct=>Ct.setIsLastLeft(Ct===lt[lt.length-1]))}),this.listOfFixedRightColumnChanges$.subscribe(lt=>{lt.forEach(Ct=>Ct.setIsFirstRight(Ct===lt[0]))}),(0,A.a)([this.nzTableStyleService.listOfListOfThWidth$,this.listOfFixedLeftColumnChanges$]).pipe((0,W.R)(this.destroy$)).subscribe(([lt,Ct])=>{Ct.forEach((At,Qt)=>{if(At.isAutoLeft){const Ln=Ct.slice(0,Qt).reduce((gi,St)=>gi+(St.colspan||St.colSpan||1),0),Sn=lt.slice(0,Ln).reduce((gi,St)=>gi+St,0);At.setAutoLeftWidth(`${Sn}px`)}})}),(0,A.a)([this.nzTableStyleService.listOfListOfThWidth$,this.listOfFixedRightColumnChanges$]).pipe((0,W.R)(this.destroy$)).subscribe(([lt,Ct])=>{Ct.forEach((At,Qt)=>{const gn=Ct[Ct.length-Qt-1];if(gn.isAutoRight){const Sn=Ct.slice(Ct.length-Qt,Ct.length).reduce((St,gt)=>St+(gt.colspan||gt.colSpan||1),0),gi=lt.slice(lt.length-Sn,lt.length).reduce((St,gt)=>St+gt,0);gn.setAutoRightWidth(`${gi}px`)}})}))}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)(l.Y36(ri,8))};static#t=this.\u0275dir=l.lG2({type:Et,selectors:[["tr",3,"mat-row","",3,"mat-header-row","",3,"nz-table-measure-row","",3,"nzExpand","",3,"nz-table-fixed-row",""]],contentQueries:function(Ct,At,Qt){if(1&Ct&&(l.Suo(Qt,ei,4),l.Suo(Qt,ci,4)),2&Ct){let gn;l.iGM(gn=l.CRH())&&(At.listOfNzThDirective=gn),l.iGM(gn=l.CRH())&&(At.listOfCellFixedDirective=gn)}},hostVars:2,hostBindings:function(Ct,At){2&Ct&&l.ekj("ant-table-row",At.isInsideTable)}})}return Et})(),ki=(()=>{class Et{constructor(lt,Ct,At,Qt){this.elementRef=lt,this.renderer=Ct,this.nzTableStyleService=At,this.nzTableDataService=Qt,this.destroy$=new _.x,this.isInsideTable=!1,this.nzSortOrderChange=new l.vpe,this.isInsideTable=!!this.nzTableStyleService}ngOnInit(){this.nzTableStyleService&&this.nzTableStyleService.setTheadTemplate(this.templateRef)}ngAfterContentInit(){if(this.nzTableStyleService){const lt=this.listOfNzTrDirective.changes.pipe((0,ne.O)(this.listOfNzTrDirective),(0,ze.U)(gn=>gn&&gn.first)),Ct=lt.pipe((0,te.w)(gn=>gn?gn.listOfColumnsChanges$:R.E),(0,W.R)(this.destroy$));Ct.subscribe(gn=>this.nzTableStyleService.setListOfTh(gn)),this.nzTableStyleService.enableAutoMeasure$.pipe((0,te.w)(gn=>gn?Ct:(0,$.of)([]))).pipe((0,W.R)(this.destroy$)).subscribe(gn=>this.nzTableStyleService.setListOfMeasureColumn(gn));const At=lt.pipe((0,te.w)(gn=>gn?gn.listOfFixedLeftColumnChanges$:R.E),(0,W.R)(this.destroy$)),Qt=lt.pipe((0,te.w)(gn=>gn?gn.listOfFixedRightColumnChanges$:R.E),(0,W.R)(this.destroy$));At.subscribe(gn=>{this.nzTableStyleService.setHasFixLeft(0!==gn.length)}),Qt.subscribe(gn=>{this.nzTableStyleService.setHasFixRight(0!==gn.length)})}if(this.nzTableDataService){const lt=this.listOfNzThAddOnComponent.changes.pipe((0,ne.O)(this.listOfNzThAddOnComponent));lt.pipe((0,te.w)(()=>(0,k.T)(...this.listOfNzThAddOnComponent.map(Qt=>Qt.manualClickOrder$))),(0,W.R)(this.destroy$)).subscribe(Qt=>{this.nzSortOrderChange.emit({key:Qt.nzColumnKey,value:Qt.sortOrder}),Qt.nzSortFn&&!1===Qt.nzSortPriority&&this.listOfNzThAddOnComponent.filter(Ln=>Ln!==Qt).forEach(Ln=>Ln.clearSortOrder())}),lt.pipe((0,te.w)(Qt=>(0,k.T)(lt,...Qt.map(gn=>gn.calcOperatorChange$)).pipe((0,re.z)(()=>lt))),(0,ze.U)(Qt=>Qt.filter(gn=>!!gn.nzSortFn||!!gn.nzFilterFn).map(gn=>{const{nzSortFn:Ln,sortOrder:Sn,nzFilterFn:gi,nzFilterValue:St,nzSortPriority:gt,nzColumnKey:We}=gn;return{key:We,sortFn:Ln,sortPriority:gt,sortOrder:Sn,filterFn:gi,filterValue:St}})),(0,fe.g)(0),(0,W.R)(this.destroy$)).subscribe(Qt=>{this.nzTableDataService.listOfCalcOperator$.next(Qt)})}}ngAfterViewInit(){this.nzTableStyleService&&this.renderer.removeChild(this.renderer.parentNode(this.elementRef.nativeElement),this.elementRef.nativeElement)}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)(l.Y36(l.SBq),l.Y36(l.Qsj),l.Y36(ri,8),l.Y36(hi,8))};static#t=this.\u0275cmp=l.Xpm({type:Et,selectors:[["thead",9,"ant-table-thead"]],contentQueries:function(Ct,At,Qt){if(1&Ct&&(l.Suo(Qt,Ii,5),l.Suo(Qt,Oi,5)),2&Ct){let gn;l.iGM(gn=l.CRH())&&(At.listOfNzTrDirective=gn),l.iGM(gn=l.CRH())&&(At.listOfNzThAddOnComponent=gn)}},viewQuery:function(Ct,At){if(1&Ct&&l.Gf(sn,7),2&Ct){let Qt;l.iGM(Qt=l.CRH())&&(At.templateRef=Qt.first)}},outputs:{nzSortOrderChange:"nzSortOrderChange"},ngContentSelectors:ae,decls:3,vars:1,consts:[["contentTemplate",""],[4,"ngIf"],[3,"ngTemplateOutlet"]],template:function(Ct,At){1&Ct&&(l.F$t(),l.YNc(0,pn,1,0,"ng-template",null,0,l.W1O),l.YNc(2,Dn,2,1,"ng-container",1)),2&Ct&&(l.xp6(2),l.Q6J("ngIf",!At.isInsideTable))},dependencies:[i.O5,i.tP],encapsulation:2,changeDetection:0})}return Et})(),oi=(()=>{class Et{constructor(){this.nzExpand=!0}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)};static#t=this.\u0275dir=l.lG2({type:Et,selectors:[["tr","nzExpand",""]],hostAttrs:[1,"ant-table-expanded-row"],hostVars:1,hostBindings:function(Ct,At){2&Ct&&l.Ikx("hidden",!At.nzExpand)},inputs:{nzExpand:"nzExpand"}})}return Et})(),Bn=(()=>{class Et{static#e=this.\u0275fac=function(Ct){return new(Ct||Et)};static#t=this.\u0275mod=l.oAB({type:Et});static#n=this.\u0275inj=l.cJS({imports:[e.vT,p.ip,C.u5,M.T,y.aF,z.Wr,h.b1,E.sL,i.ez,n.ud,f.uK,u.y7,T.j,g.YI,d.PV,v.Xo,t.Cl]})}return Et})()},79382:(nt,I,o)=>{"use strict";o.d(I,{we:()=>$e,xH:()=>ge,xw:()=>Qe});var e=o(65879),n=o(90551),t=o(8324),i=o(56879),l=o(4300),C=o(42495),E=o(36028),u=o(92438),z=o(47394),M=o(80927),h=o(76410),v=o(78645),g=o(22096),d=o(63019),p=o(59773),f=o(29028),y=o(27921),T=o(81374),x=o(32181),D=o(5177),_=o(96814),P=o(73460),S=o(62787),A=o(205),k=o(28802),R=o(49388),$=o(97582),W=o(27754),ze=o(52787),Y=o(17131),G=o(62831),V=o(83064),K=o(1608);function te(Ue,wt){if(1&Ue&&(e.ynx(0),e._UZ(1,"span",1),e.BQk()),2&Ue){const De=wt.$implicit;e.xp6(1),e.Q6J("nzType",De)}}function ne(Ue,wt){if(1&Ue&&(e.ynx(0),e._uU(1),e.BQk()),2&Ue){const De=e.oxw().$implicit;e.xp6(1),e.hij(" ",De.tab.label," ")}}const fe=function(){return{visible:!1}};function re(Ue,wt){if(1&Ue){const De=e.EpF();e.TgZ(0,"li",8),e.NdJ("click",function(){const Ge=e.CHM(De).$implicit,Ke=e.oxw(2);return e.KtG(Ke.onSelect(Ge))})("contextmenu",function(Je){const Ke=e.CHM(De).$implicit,_e=e.oxw(2);return e.KtG(_e.onContextmenu(Ke,Je))}),e.YNc(1,ne,2,1,"ng-container",9),e.qZA()}if(2&Ue){const De=wt.$implicit;e.ekj("ant-tabs-dropdown-menu-item-disabled",De.disabled),e.Q6J("nzSelected",De.active)("nzDisabled",De.disabled),e.xp6(1),e.Q6J("nzStringTemplateOutlet",De.tab.label)("nzStringTemplateOutletContext",e.DdM(6,fe))}}function be(Ue,wt){if(1&Ue&&(e.TgZ(0,"ul",6),e.YNc(1,re,2,7,"li",7),e.qZA()),2&Ue){const De=e.oxw();e.xp6(1),e.Q6J("ngForOf",De.items)}}function le(Ue,wt){if(1&Ue){const De=e.EpF();e.TgZ(0,"button",10),e.NdJ("click",function(){e.CHM(De);const Je=e.oxw();return e.KtG(Je.addClicked.emit())}),e.qZA()}if(2&Ue){const De=e.oxw();e.Q6J("addIcon",De.addIcon)}}const ce=function(){return{minWidth:"46px"}},Q=["navWarp"],ie=["navList"];function ae(Ue,wt){if(1&Ue){const De=e.EpF();e.TgZ(0,"button",8),e.NdJ("click",function(){e.CHM(De);const Je=e.oxw();return e.KtG(Je.addClicked.emit())}),e.qZA()}if(2&Ue){const De=e.oxw();e.Q6J("addIcon",De.addIcon)}}function xe(Ue,wt){}function Me(Ue,wt){if(1&Ue&&(e.TgZ(0,"div",9),e.YNc(1,xe,0,0,"ng-template",10),e.qZA()),2&Ue){const De=e.oxw();e.xp6(1),e.Q6J("ngTemplateOutlet",De.extraTemplate)}}const Ye=["*"],q=["nz-tab-body",""];function ve(Ue,wt){}function ee(Ue,wt){if(1&Ue&&(e.ynx(0),e.YNc(1,ve,0,0,"ng-template",1),e.BQk()),2&Ue){const De=e.oxw();e.xp6(1),e.Q6J("ngTemplateOutlet",De.content)}}function Be(Ue,wt){if(1&Ue&&(e.ynx(0),e._UZ(1,"span",1),e.BQk()),2&Ue){const De=wt.$implicit;e.xp6(1),e.Q6J("nzType",De)}}const Re=["contentTemplate"];function ct(Ue,wt){1&Ue&&e.Hsn(0)}function Ae(Ue,wt){1&Ue&&e.Hsn(0,1)}const Mt=[[["","nz-tab-link",""]],"*"],je=["[nz-tab-link]","*"];function ot(Ue,wt){if(1&Ue&&(e.ynx(0),e._uU(1),e.BQk()),2&Ue){const De=e.oxw().$implicit;e.xp6(1),e.Oqu(De.label)}}function mt(Ue,wt){if(1&Ue){const De=e.EpF();e.TgZ(0,"button",10),e.NdJ("click",function(Je){e.CHM(De);const Ge=e.oxw().index,Ke=e.oxw(2);return e.KtG(Ke.onClose(Ge,Je))}),e.qZA()}if(2&Ue){const De=e.oxw().$implicit;e.Q6J("closeIcon",De.nzCloseIcon)}}const we=function(){return{visible:!0}};function de(Ue,wt){if(1&Ue){const De=e.EpF();e.TgZ(0,"div",6),e.NdJ("click",function(Je){const Ge=e.CHM(De),Ke=Ge.$implicit,_e=Ge.index,it=e.oxw(2);return e.KtG(it.clickNavItem(Ke,_e,Je))})("contextmenu",function(Je){const Ke=e.CHM(De).$implicit,_e=e.oxw(2);return e.KtG(_e.contextmenuNavItem(Ke,Je))}),e.TgZ(1,"div",7),e.YNc(2,ot,2,1,"ng-container",8),e.YNc(3,mt,1,1,"button",9),e.qZA()()}if(2&Ue){const De=wt.$implicit,Pe=wt.index,Je=e.oxw(2);e.Udp("margin-right","horizontal"===Je.position?Je.nzTabBarGutter:null,"px")("margin-bottom","vertical"===Je.position?Je.nzTabBarGutter:null,"px"),e.ekj("ant-tabs-tab-active",Je.nzSelectedIndex===Pe)("ant-tabs-tab-disabled",De.nzDisabled),e.xp6(1),e.Q6J("disabled",De.nzDisabled)("tab",De)("active",Je.nzSelectedIndex===Pe),e.uIk("tabIndex",Je.getTabIndex(De,Pe))("aria-disabled",De.nzDisabled)("aria-selected",Je.nzSelectedIndex===Pe&&!Je.nzHideAll)("aria-controls",Je.getTabContentId(Pe)),e.xp6(1),e.Q6J("nzStringTemplateOutlet",De.label)("nzStringTemplateOutletContext",e.DdM(18,we)),e.xp6(1),e.Q6J("ngIf",De.nzClosable&&Je.closable&&!De.nzDisabled)}}function U(Ue,wt){if(1&Ue){const De=e.EpF();e.TgZ(0,"nz-tabs-nav",4),e.NdJ("tabScroll",function(Je){e.CHM(De);const Ge=e.oxw();return e.KtG(Ge.nzTabListScroll.emit(Je))})("selectFocusedIndex",function(Je){e.CHM(De);const Ge=e.oxw();return e.KtG(Ge.setSelectedIndex(Je))})("addClicked",function(){e.CHM(De);const Je=e.oxw();return e.KtG(Je.onAdd())}),e.YNc(1,de,4,19,"div",5),e.qZA()}if(2&Ue){const De=e.oxw();e.Q6J("ngStyle",De.nzTabBarStyle)("selectedIndex",De.nzSelectedIndex||0)("inkBarAnimated",De.inkBarAnimated)("addable",De.addable)("addIcon",De.nzAddIcon)("hideBar",De.nzHideAll)("position",De.position)("extraTemplate",De.nzTabBarExtraContent),e.xp6(1),e.Q6J("ngForOf",De.tabs)}}function B(Ue,wt){if(1&Ue&&e._UZ(0,"div",11),2&Ue){const De=wt.$implicit,Pe=wt.index,Je=e.oxw();e.Q6J("active",Je.nzSelectedIndex===Pe&&!Je.nzHideAll)("content",De.content)("forceRender",De.nzForceRender)("tabPaneAnimated",Je.tabPaneAnimated)}}let Ee=(()=>{class Ue{constructor(De){this.elementRef=De,this.addIcon="plus",this.element=this.elementRef.nativeElement}getElementWidth(){return this.element?.offsetWidth||0}getElementHeight(){return this.element?.offsetHeight||0}static#e=this.\u0275fac=function(Pe){return new(Pe||Ue)(e.Y36(e.SBq))};static#t=this.\u0275cmp=e.Xpm({type:Ue,selectors:[["nz-tab-add-button"],["button","nz-tab-add-button",""]],hostAttrs:["aria-label","Add tab","type","button",1,"ant-tabs-nav-add"],inputs:{addIcon:"addIcon"},decls:1,vars:1,consts:[[4,"nzStringTemplateOutlet"],["nz-icon","","nzTheme","outline",3,"nzType"]],template:function(Pe,Je){1&Pe&&e.YNc(0,te,2,1,"ng-container",0),2&Pe&&e.Q6J("nzStringTemplateOutlet",Je.addIcon)},dependencies:[n.Ls,t.f],encapsulation:2})}return Ue})(),Ie=(()=>{class Ue{get _animated(){return"NoopAnimations"!==this.animationMode&&this.animated}constructor(De,Pe,Je){this.elementRef=De,this.ngZone=Pe,this.animationMode=Je,this.position="horizontal",this.animated=!0}alignToElement(De){this.ngZone.runOutsideAngular(()=>{(0,i.e)(()=>this.setStyles(De))})}setStyles(De){const Pe=this.elementRef.nativeElement;"horizontal"===this.position?(Pe.style.top="",Pe.style.height="",Pe.style.left=this.getLeftPosition(De),Pe.style.width=this.getElementWidth(De)):(Pe.style.left="",Pe.style.width="",Pe.style.top=this.getTopPosition(De),Pe.style.height=this.getElementHeight(De))}getLeftPosition(De){return De?`${De.offsetLeft||0}px`:"0"}getElementWidth(De){return De?`${De.offsetWidth||0}px`:"0"}getTopPosition(De){return De?`${De.offsetTop||0}px`:"0"}getElementHeight(De){return De?`${De.offsetHeight||0}px`:"0"}static#e=this.\u0275fac=function(Pe){return new(Pe||Ue)(e.Y36(e.SBq),e.Y36(e.R0b),e.Y36(e.QbO,8))};static#t=this.\u0275dir=e.lG2({type:Ue,selectors:[["nz-tabs-ink-bar"],["","nz-tabs-ink-bar",""]],hostAttrs:[1,"ant-tabs-ink-bar"],hostVars:2,hostBindings:function(Pe,Je){2&Pe&&e.ekj("ant-tabs-ink-bar-animated",Je._animated)},inputs:{position:"position",animated:"animated"}})}return Ue})(),Ne=(()=>{class Ue{constructor(De){this.elementRef=De,this.disabled=!1,this.active=!1,this.el=De.nativeElement,this.parentElement=this.el.parentElement}focus(){this.el.focus()}get width(){return this.parentElement.offsetWidth}get height(){return this.parentElement.offsetHeight}get left(){return this.parentElement.offsetLeft}get top(){return this.parentElement.offsetTop}static#e=this.\u0275fac=function(Pe){return new(Pe||Ue)(e.Y36(e.SBq))};static#t=this.\u0275dir=e.lG2({type:Ue,selectors:[["","nzTabNavItem",""]],inputs:{disabled:"disabled",tab:"tab",active:"active"}})}return Ue})(),pt=(()=>{class Ue{constructor(De,Pe){this.cdr=De,this.elementRef=Pe,this.items=[],this.addable=!1,this.addIcon="plus",this.addClicked=new e.vpe,this.selected=new e.vpe,this.closeAnimationWaitTimeoutId=-1,this.menuOpened=!1,this.element=this.elementRef.nativeElement}onSelect(De){De.disabled||(De.tab.nzClick.emit(),this.selected.emit(De))}onContextmenu(De,Pe){De.disabled||De.tab.nzContextmenu.emit(Pe)}showItems(){clearTimeout(this.closeAnimationWaitTimeoutId),this.menuOpened=!0,this.cdr.markForCheck()}menuVisChange(De){De||(this.closeAnimationWaitTimeoutId=setTimeout(()=>{this.menuOpened=!1,this.cdr.markForCheck()},150))}getElementWidth(){return this.element?.offsetWidth||0}getElementHeight(){return this.element?.offsetHeight||0}ngOnDestroy(){clearTimeout(this.closeAnimationWaitTimeoutId)}static#e=this.\u0275fac=function(Pe){return new(Pe||Ue)(e.Y36(e.sBO),e.Y36(e.SBq))};static#t=this.\u0275cmp=e.Xpm({type:Ue,selectors:[["nz-tab-nav-operation"]],hostAttrs:[1,"ant-tabs-nav-operations"],hostVars:2,hostBindings:function(Pe,Je){2&Pe&&e.ekj("ant-tabs-nav-operations-hidden",0===Je.items.length)},inputs:{items:"items",addable:"addable",addIcon:"addIcon"},outputs:{addClicked:"addClicked",selected:"selected"},exportAs:["nzTabNavOperation"],decls:7,vars:6,consts:[["nz-dropdown","","type","button","tabindex","-1","aria-hidden","true","nzOverlayClassName","nz-tabs-dropdown",1,"ant-tabs-nav-more",3,"nzDropdownMenu","nzOverlayStyle","nzMatchWidthElement","nzVisibleChange","mouseenter"],["dropdownTrigger","nzDropdown"],["nz-icon","","nzType","ellipsis"],["menu","nzDropdownMenu"],["nz-menu","",4,"ngIf"],["nz-tab-add-button","",3,"addIcon","click",4,"ngIf"],["nz-menu",""],["nz-menu-item","","class","ant-tabs-dropdown-menu-item",3,"ant-tabs-dropdown-menu-item-disabled","nzSelected","nzDisabled","click","contextmenu",4,"ngFor","ngForOf"],["nz-menu-item","",1,"ant-tabs-dropdown-menu-item",3,"nzSelected","nzDisabled","click","contextmenu"],[4,"nzStringTemplateOutlet","nzStringTemplateOutletContext"],["nz-tab-add-button","",3,"addIcon","click"]],template:function(Pe,Je){if(1&Pe&&(e.TgZ(0,"button",0,1),e.NdJ("nzVisibleChange",function(Ke){return Je.menuVisChange(Ke)})("mouseenter",function(){return Je.showItems()}),e._UZ(2,"span",2),e.qZA(),e.TgZ(3,"nz-dropdown-menu",null,3),e.YNc(5,be,2,1,"ul",4),e.qZA(),e.YNc(6,le,1,1,"button",5)),2&Pe){const Ge=e.MAs(4);e.Q6J("nzDropdownMenu",Ge)("nzOverlayStyle",e.DdM(5,ce))("nzMatchWidthElement",null),e.xp6(5),e.Q6J("ngIf",Je.menuOpened),e.xp6(1),e.Q6J("ngIf",Je.addable)}},dependencies:[_.sg,_.O5,n.Ls,t.f,P.wO,P.u9,S.cm,S.RR,Ee],encapsulation:2,changeDetection:0})}return Ue})();const qt=.995**20;let en=(()=>{class Ue{constructor(De,Pe){this.ngZone=De,this.elementRef=Pe,this.lastWheelDirection=null,this.lastWheelTimestamp=0,this.lastTimestamp=0,this.lastTimeDiff=0,this.lastMixedWheel=0,this.lastWheelPrevent=!1,this.touchPosition=null,this.lastOffset=null,this.motion=-1,this.unsubscribe=()=>{},this.offsetChange=new e.vpe,this.tabScroll=new e.vpe,this.onTouchEnd=Je=>{if(!this.touchPosition)return;const Ge=this.lastOffset,Ke=this.lastTimeDiff;if(this.lastOffset=this.touchPosition=null,Ge){const _e=Ge.x/Ke,it=Ge.y/Ke,b=Math.abs(_e),N=Math.abs(it);if(Math.max(b,N)<.1)return;let O=_e,j=it;this.motion=window.setInterval(()=>{Math.abs(O)<.01&&Math.abs(j)<.01?window.clearInterval(this.motion):(O*=qt,j*=qt,this.onOffset(20*O,20*j,Je))},20)}},this.onTouchMove=Je=>{if(!this.touchPosition)return;Je.preventDefault();const{screenX:Ge,screenY:Ke}=Je.touches[0],_e=Ge-this.touchPosition.x,it=Ke-this.touchPosition.y;this.onOffset(_e,it,Je);const b=Date.now();this.lastTimeDiff=b-this.lastTimestamp,this.lastTimestamp=b,this.lastOffset={x:_e,y:it},this.touchPosition={x:Ge,y:Ke}},this.onTouchStart=Je=>{const{screenX:Ge,screenY:Ke}=Je.touches[0];this.touchPosition={x:Ge,y:Ke},window.clearInterval(this.motion)},this.onWheel=Je=>{const{deltaX:Ge,deltaY:Ke}=Je;let _e;const it=Math.abs(Ge),b=Math.abs(Ke);it===b?_e="x"===this.lastWheelDirection?Ge:Ke:it>b?(_e=Ge,this.lastWheelDirection="x"):(_e=Ke,this.lastWheelDirection="y");const N=Date.now(),O=Math.abs(_e);(N-this.lastWheelTimestamp>100||O-this.lastMixedWheel>10)&&(this.lastWheelPrevent=!1),this.onOffset(-_e,-_e,Je),(Je.defaultPrevented||this.lastWheelPrevent)&&(this.lastWheelPrevent=!0),this.lastWheelTimestamp=N,this.lastMixedWheel=O}}ngOnInit(){this.unsubscribe=this.ngZone.runOutsideAngular(()=>{const De=this.elementRef.nativeElement,Pe=(0,u.R)(De,"wheel"),Je=(0,u.R)(De,"touchstart"),Ge=(0,u.R)(De,"touchmove"),Ke=(0,u.R)(De,"touchend"),_e=new z.w0;return _e.add(this.subscribeWrap("wheel",Pe,this.onWheel)),_e.add(this.subscribeWrap("touchstart",Je,this.onTouchStart)),_e.add(this.subscribeWrap("touchmove",Ge,this.onTouchMove)),_e.add(this.subscribeWrap("touchend",Ke,this.onTouchEnd)),()=>{_e.unsubscribe()}})}subscribeWrap(De,Pe,Je){return Pe.subscribe(Ge=>{this.tabScroll.emit({type:De,event:Ge}),Ge.defaultPrevented||Je(Ge)})}onOffset(De,Pe,Je){this.ngZone.run(()=>{this.offsetChange.emit({x:De,y:Pe,event:Je})})}ngOnDestroy(){this.unsubscribe()}static#e=this.\u0275fac=function(Pe){return new(Pe||Ue)(e.Y36(e.R0b),e.Y36(e.SBq))};static#t=this.\u0275dir=e.lG2({type:Ue,selectors:[["","nzTabScrollList",""]],outputs:{offsetChange:"offsetChange",tabScroll:"tabScroll"}})}return Ue})();const cn=typeof requestAnimationFrame<"u"?M.Z:h.E;let Vt=(()=>{class Ue{get selectedIndex(){return this._selectedIndex}set selectedIndex(De){const Pe=(0,C.su)(De);this._selectedIndex!==Pe&&(this._selectedIndex=De,this.selectedIndexChanged=!0,this.keyManager&&this.keyManager.updateActiveItem(De))}get focusIndex(){return this.keyManager?this.keyManager.activeItemIndex:0}set focusIndex(De){!this.isValidIndex(De)||this.focusIndex===De||!this.keyManager||this.keyManager.setActiveItem(De)}get showAddButton(){return 0===this.hiddenItems.length&&this.addable}constructor(De,Pe,Je,Ge,Ke){this.cdr=De,this.ngZone=Pe,this.viewportRuler=Je,this.nzResizeObserver=Ge,this.dir=Ke,this.indexFocused=new e.vpe,this.selectFocusedIndex=new e.vpe,this.addClicked=new e.vpe,this.tabScroll=new e.vpe,this.position="horizontal",this.addable=!1,this.hideBar=!1,this.addIcon="plus",this.inkBarAnimated=!0,this.translate=null,this.transformX=0,this.transformY=0,this.pingLeft=!1,this.pingRight=!1,this.pingTop=!1,this.pingBottom=!1,this.hiddenItems=[],this.destroy$=new v.x,this._selectedIndex=0,this.wrapperWidth=0,this.wrapperHeight=0,this.scrollListWidth=0,this.scrollListHeight=0,this.operationWidth=0,this.operationHeight=0,this.addButtonWidth=0,this.addButtonHeight=0,this.selectedIndexChanged=!1,this.lockAnimationTimeoutId=-1,this.cssTransformTimeWaitingId=-1}ngAfterViewInit(){const De=this.dir?this.dir.change.asObservable():(0,g.of)(null),Pe=this.viewportRuler.change(150),Je=()=>{this.updateScrollListPosition(),this.alignInkBarToSelectedTab()};this.keyManager=new l.Em(this.items).withHorizontalOrientation(this.getLayoutDirection()).withWrap(),this.keyManager.updateActiveItem(this.selectedIndex),(0,i.e)(Je),(0,d.T)(this.nzResizeObserver.observe(this.navWarpRef),this.nzResizeObserver.observe(this.navListRef)).pipe((0,p.R)(this.destroy$),(0,f.e)(16,cn)).subscribe(()=>{Je()}),(0,d.T)(De,Pe,this.items.changes).pipe((0,p.R)(this.destroy$)).subscribe(()=>{Promise.resolve().then(Je),this.keyManager.withHorizontalOrientation(this.getLayoutDirection())}),this.keyManager.change.pipe((0,p.R)(this.destroy$)).subscribe(Ge=>{this.indexFocused.emit(Ge),this.setTabFocus(Ge),this.scrollToTab(this.keyManager.activeItem)})}ngAfterContentChecked(){this.selectedIndexChanged&&(this.updateScrollListPosition(),this.alignInkBarToSelectedTab(),this.selectedIndexChanged=!1,this.cdr.markForCheck())}ngOnDestroy(){clearTimeout(this.lockAnimationTimeoutId),clearTimeout(this.cssTransformTimeWaitingId),this.destroy$.next(),this.destroy$.complete()}onSelectedFromMenu(De){const Pe=this.items.toArray().findIndex(Je=>Je===De);-1!==Pe&&(this.keyManager.updateActiveItem(Pe),this.focusIndex!==this.selectedIndex&&(this.selectFocusedIndex.emit(this.focusIndex),this.scrollToTab(De)))}onOffsetChange(De){if("horizontal"===this.position){if(-1===this.lockAnimationTimeoutId&&(this.transformX>=0&&De.x>0||this.transformX<=this.wrapperWidth-this.scrollListWidth&&De.x<0))return;De.event.preventDefault(),this.transformX=this.clampTransformX(this.transformX+De.x),this.setTransform(this.transformX,0)}else{if(-1===this.lockAnimationTimeoutId&&(this.transformY>=0&&De.y>0||this.transformY<=this.wrapperHeight-this.scrollListHeight&&De.y<0))return;De.event.preventDefault(),this.transformY=this.clampTransformY(this.transformY+De.y),this.setTransform(0,this.transformY)}this.lockAnimation(),this.setVisibleRange(),this.setPingStatus()}handleKeydown(De){const Pe=this.navWarpRef.nativeElement.contains(De.target);if(!(0,E.Vb)(De)&&Pe)switch(De.keyCode){case E.oh:case E.LH:case E.SV:case E.JH:this.lockAnimation(),this.keyManager.onKeydown(De);break;case E.K5:case E.L_:this.focusIndex!==this.selectedIndex&&this.selectFocusedIndex.emit(this.focusIndex);break;default:this.keyManager.onKeydown(De)}}isValidIndex(De){if(!this.items)return!0;const Pe=this.items?this.items.toArray()[De]:null;return!!Pe&&!Pe.disabled}scrollToTab(De){if(!this.items.find(Je=>Je===De))return;const Pe=this.items.toArray();if("horizontal"===this.position){let Je=this.transformX;if("rtl"===this.getLayoutDirection()){const Ge=Pe[0].left+Pe[0].width-De.left-De.width;Gethis.transformX+this.wrapperWidth&&(Je=Ge+De.width-this.wrapperWidth)}else De.left<-this.transformX?Je=-De.left:De.left+De.width>-this.transformX+this.wrapperWidth&&(Je=-(De.left+De.width-this.wrapperWidth));this.transformX=Je,this.transformY=0,this.setTransform(Je,0)}else{let Je=this.transformY;De.top<-this.transformY?Je=-De.top:De.top+De.height>-this.transformY+this.wrapperHeight&&(Je=-(De.top+De.height-this.wrapperHeight)),this.transformY=Je,this.transformX=0,this.setTransform(0,Je)}clearTimeout(this.cssTransformTimeWaitingId),this.cssTransformTimeWaitingId=setTimeout(()=>{this.setVisibleRange()},150)}lockAnimation(){-1===this.lockAnimationTimeoutId&&this.ngZone.runOutsideAngular(()=>{this.navListRef.nativeElement.style.transition="none",this.lockAnimationTimeoutId=setTimeout(()=>{this.navListRef.nativeElement.style.transition="",this.lockAnimationTimeoutId=-1},150)})}setTransform(De,Pe){this.navListRef.nativeElement.style.transform=`translate(${De}px, ${Pe}px)`}clampTransformX(De){const Pe=this.wrapperWidth-this.scrollListWidth;return"rtl"===this.getLayoutDirection()?Math.max(Math.min(Pe,De),0):Math.min(Math.max(Pe,De),0)}clampTransformY(De){return Math.min(Math.max(this.wrapperHeight-this.scrollListHeight,De),0)}updateScrollListPosition(){this.resetSizes(),this.transformX=this.clampTransformX(this.transformX),this.transformY=this.clampTransformY(this.transformY),this.setVisibleRange(),this.setPingStatus(),this.keyManager&&(this.keyManager.updateActiveItem(this.keyManager.activeItemIndex),this.keyManager.activeItem&&this.scrollToTab(this.keyManager.activeItem))}resetSizes(){this.addButtonWidth=this.addBtnRef?this.addBtnRef.getElementWidth():0,this.addButtonHeight=this.addBtnRef?this.addBtnRef.getElementHeight():0,this.operationWidth=this.operationRef.getElementWidth(),this.operationHeight=this.operationRef.getElementHeight(),this.wrapperWidth=this.navWarpRef.nativeElement.offsetWidth||0,this.wrapperHeight=this.navWarpRef.nativeElement.offsetHeight||0,this.scrollListHeight=this.navListRef.nativeElement.offsetHeight||0,this.scrollListWidth=this.navListRef.nativeElement.offsetWidth||0}alignInkBarToSelectedTab(){const De=this.items&&this.items.length?this.items.toArray()[this.selectedIndex]:null,Pe=De?De.elementRef.nativeElement:null;Pe&&this.inkBar.alignToElement(Pe.parentElement)}setPingStatus(){const De={top:!1,right:!1,bottom:!1,left:!1},Pe=this.navWarpRef.nativeElement;"horizontal"===this.position?"rtl"===this.getLayoutDirection()?(De.right=this.transformX>0,De.left=this.transformX+this.wrapperWidth{const Ge=`ant-tabs-nav-wrap-ping-${Je}`;De[Je]?Pe.classList.add(Ge):Pe.classList.remove(Ge)})}setVisibleRange(){let De,Pe,Je,Ge,Ke,_e;const it=this.items.toArray(),b={width:0,height:0,left:0,top:0,right:0},N=Ft=>{let sn;return sn="right"===Pe?it[0].left+it[0].width-it[Ft].left-it[Ft].width:(it[Ft]||b)[Pe],sn};"horizontal"===this.position?(De="width",Ge=this.wrapperWidth,Ke=this.scrollListWidth-(this.hiddenItems.length?this.operationWidth:0),_e=this.addButtonWidth,Je=Math.abs(this.transformX),"rtl"===this.getLayoutDirection()?(Pe="right",this.pingRight=this.transformX>0,this.pingLeft=this.transformX+this.wrapperWidthGe&&(O=Ge-_e),!it.length)return this.hiddenItems=[],void this.cdr.markForCheck();const j=it.length;let L=j;for(let Ft=0;FtJe+O){L=Ft-1;break}let he=0;for(let Ft=j-1;Ft>=0;Ft-=1)if(N(Ft){class Ue{constructor(){this.content=null,this.active=!1,this.tabPaneAnimated=!0,this.forceRender=!1}static#e=this.\u0275fac=function(Pe){return new(Pe||Ue)};static#t=this.\u0275cmp=e.Xpm({type:Ue,selectors:[["","nz-tab-body",""]],hostAttrs:[1,"ant-tabs-tabpane"],hostVars:12,hostBindings:function(Pe,Je){2&Pe&&(e.uIk("tabindex",Je.active?0:-1)("aria-hidden",!Je.active),e.Udp("visibility",Je.tabPaneAnimated?Je.active?null:"hidden":null)("height",Je.tabPaneAnimated?Je.active?null:0:null)("overflow-y",Je.tabPaneAnimated?Je.active?null:"none":null)("display",Je.tabPaneAnimated||Je.active?null:"none"),e.ekj("ant-tabs-tabpane-active",Je.active))},inputs:{content:"content",active:"active",tabPaneAnimated:"tabPaneAnimated",forceRender:"forceRender"},exportAs:["nzTabBody"],attrs:q,decls:1,vars:1,consts:[[4,"ngIf"],[3,"ngTemplateOutlet"]],template:function(Pe,Je){1&Pe&&e.YNc(0,ee,2,1,"ng-container",0),2&Pe&&e.Q6J("ngIf",Je.active||Je.forceRender)},dependencies:[_.O5,_.tP],encapsulation:2,changeDetection:0})}return Ue})(),He=(()=>{class Ue{constructor(){this.closeIcon="close"}static#e=this.\u0275fac=function(Pe){return new(Pe||Ue)};static#t=this.\u0275cmp=e.Xpm({type:Ue,selectors:[["nz-tab-close-button"],["button","nz-tab-close-button",""]],hostAttrs:["aria-label","Close tab","type","button",1,"ant-tabs-tab-remove"],inputs:{closeIcon:"closeIcon"},decls:1,vars:1,consts:[[4,"nzStringTemplateOutlet"],["nz-icon","","nzTheme","outline",3,"nzType"]],template:function(Pe,Je){1&Pe&&e.YNc(0,Be,2,1,"ng-container",0),2&Pe&&e.Q6J("nzStringTemplateOutlet",Je.closeIcon)},dependencies:[n.Ls,t.f],encapsulation:2})}return Ue})(),et=(()=>{class Ue{constructor(De){this.templateRef=De}static#e=this.\u0275fac=function(Pe){return new(Pe||Ue)(e.Y36(e.Rgc,1))};static#t=this.\u0275dir=e.lG2({type:Ue,selectors:[["ng-template","nzTabLink",""]],exportAs:["nzTabLinkTemplate"]})}return Ue})(),It=(()=>{class Ue{constructor(De,Pe){this.elementRef=De,this.routerLink=Pe}static#e=this.\u0275fac=function(Pe){return new(Pe||Ue)(e.Y36(e.SBq),e.Y36(ze.rH,10))};static#t=this.\u0275dir=e.lG2({type:Ue,selectors:[["a","nz-tab-link",""]],exportAs:["nzTabLink"]})}return Ue})(),Ot=(()=>{class Ue{static#e=this.\u0275fac=function(Pe){return new(Pe||Ue)};static#t=this.\u0275dir=e.lG2({type:Ue,selectors:[["","nz-tab",""]],exportAs:["nzTab"]})}return Ue})();const xt=new e.OlP("NZ_TAB_SET");let Qe=(()=>{class Ue{get content(){return this.template||this.contentTemplate}get label(){return this.nzTitle||this.nzTabLinkTemplateDirective?.templateRef}constructor(De){this.closestTabSet=De,this.nzTitle="",this.nzClosable=!1,this.nzCloseIcon="close",this.nzDisabled=!1,this.nzForceRender=!1,this.nzSelect=new e.vpe,this.nzDeselect=new e.vpe,this.nzClick=new e.vpe,this.nzContextmenu=new e.vpe,this.template=null,this.isActive=!1,this.position=null,this.origin=null,this.stateChanges=new v.x}ngOnChanges(De){const{nzTitle:Pe,nzDisabled:Je,nzForceRender:Ge}=De;(Pe||Je||Ge)&&this.stateChanges.next()}ngOnDestroy(){this.stateChanges.complete()}static#e=this.\u0275fac=function(Pe){return new(Pe||Ue)(e.Y36(xt))};static#t=this.\u0275cmp=e.Xpm({type:Ue,selectors:[["nz-tab"]],contentQueries:function(Pe,Je,Ge){if(1&Pe&&(e.Suo(Ge,et,5),e.Suo(Ge,Ot,5,e.Rgc),e.Suo(Ge,It,5)),2&Pe){let Ke;e.iGM(Ke=e.CRH())&&(Je.nzTabLinkTemplateDirective=Ke.first),e.iGM(Ke=e.CRH())&&(Je.template=Ke.first),e.iGM(Ke=e.CRH())&&(Je.linkDirective=Ke.first)}},viewQuery:function(Pe,Je){if(1&Pe&&e.Gf(Re,7),2&Pe){let Ge;e.iGM(Ge=e.CRH())&&(Je.contentTemplate=Ge.first)}},inputs:{nzTitle:"nzTitle",nzClosable:"nzClosable",nzCloseIcon:"nzCloseIcon",nzDisabled:"nzDisabled",nzForceRender:"nzForceRender"},outputs:{nzSelect:"nzSelect",nzDeselect:"nzDeselect",nzClick:"nzClick",nzContextmenu:"nzContextmenu"},exportAs:["nzTab"],features:[e.TTD],ngContentSelectors:je,decls:4,vars:0,consts:[["tabLinkTemplate",""],["contentTemplate",""]],template:function(Pe,Je){1&Pe&&(e.F$t(Mt),e.YNc(0,ct,1,0,"ng-template",null,0,e.W1O),e.YNc(2,Ae,1,0,"ng-template",null,1,e.W1O))},encapsulation:2,changeDetection:0})}return(0,$.gn)([(0,W.yF)()],Ue.prototype,"nzClosable",void 0),(0,$.gn)([(0,W.yF)()],Ue.prototype,"nzDisabled",void 0),(0,$.gn)([(0,W.yF)()],Ue.prototype,"nzForceRender",void 0),Ue})();class ke{}let qe=0,ge=(()=>{class Ue{get nzSelectedIndex(){return this.selectedIndex}set nzSelectedIndex(De){this.indexToSelect=(0,C.su)(De,null)}get position(){return-1===["top","bottom"].indexOf(this.nzTabPosition)?"vertical":"horizontal"}get addable(){return"editable-card"===this.nzType&&!this.nzHideAdd}get closable(){return"editable-card"===this.nzType}get line(){return"line"===this.nzType}get inkBarAnimated(){return this.line&&("boolean"==typeof this.nzAnimated?this.nzAnimated:this.nzAnimated.inkBar)}get tabPaneAnimated(){return"horizontal"===this.position&&this.line&&("boolean"==typeof this.nzAnimated?this.nzAnimated:this.nzAnimated.tabPane)}constructor(De,Pe,Je,Ge,Ke){this.nzConfigService=De,this.ngZone=Pe,this.cdr=Je,this.directionality=Ge,this.router=Ke,this._nzModuleName="tabs",this.nzTabPosition="top",this.nzCanDeactivate=null,this.nzAddIcon="plus",this.nzTabBarStyle=null,this.nzType="line",this.nzSize="default",this.nzAnimated=!0,this.nzTabBarGutter=void 0,this.nzHideAdd=!1,this.nzCentered=!1,this.nzHideAll=!1,this.nzLinkRouter=!1,this.nzLinkExact=!0,this.nzSelectChange=new e.vpe(!0),this.nzSelectedIndexChange=new e.vpe,this.nzTabListScroll=new e.vpe,this.nzClose=new e.vpe,this.nzAdd=new e.vpe,this.allTabs=new e.n_E,this.tabs=new e.n_E,this.dir="ltr",this.destroy$=new v.x,this.indexToSelect=0,this.selectedIndex=null,this.tabLabelSubscription=z.w0.EMPTY,this.tabsSubscription=z.w0.EMPTY,this.canDeactivateSubscription=z.w0.EMPTY,this.tabSetId=qe++}ngOnInit(){this.dir=this.directionality.value,this.directionality.change?.pipe((0,p.R)(this.destroy$)).subscribe(De=>{this.dir=De,this.cdr.detectChanges()})}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete(),this.tabs.destroy(),this.tabLabelSubscription.unsubscribe(),this.tabsSubscription.unsubscribe(),this.canDeactivateSubscription.unsubscribe()}ngAfterContentInit(){this.ngZone.runOutsideAngular(()=>{Promise.resolve().then(()=>this.setUpRouter())}),this.subscribeToTabLabels(),this.subscribeToAllTabChanges(),this.tabsSubscription=this.tabs.changes.subscribe(()=>{if(this.clampTabIndex(this.indexToSelect)===this.selectedIndex){const Pe=this.tabs.toArray();for(let Je=0;Je{this.tabs.forEach((Je,Ge)=>Je.isActive=Ge===De),Pe||this.nzSelectedIndexChange.emit(De)})}this.tabs.forEach((Pe,Je)=>{Pe.position=Je-De,null!=this.selectedIndex&&0===Pe.position&&!Pe.origin&&(Pe.origin=De-this.selectedIndex)}),this.selectedIndex!==De&&(this.selectedIndex=De,this.cdr.markForCheck())}onClose(De,Pe){Pe.preventDefault(),Pe.stopPropagation(),this.nzClose.emit({index:De})}onAdd(){this.nzAdd.emit()}clampTabIndex(De){return Math.min(this.tabs.length-1,Math.max(De||0,0))}createChangeEvent(De){const Pe=new ke;return Pe.index=De,this.tabs&&this.tabs.length&&(Pe.tab=this.tabs.toArray()[De],this.tabs.forEach((Je,Ge)=>{Ge!==De&&Je.nzDeselect.emit()}),Pe.tab.nzSelect.emit()),Pe}subscribeToTabLabels(){this.tabLabelSubscription&&this.tabLabelSubscription.unsubscribe(),this.tabLabelSubscription=(0,d.T)(...this.tabs.map(De=>De.stateChanges)).subscribe(()=>this.cdr.markForCheck())}subscribeToAllTabChanges(){this.allTabs.changes.pipe((0,y.O)(this.allTabs)).subscribe(De=>{this.tabs.reset(De.filter(Pe=>Pe.closestTabSet===this)),this.tabs.notifyOnChanges()})}canDeactivateFun(De,Pe){return"function"==typeof this.nzCanDeactivate?(0,W.lN)(this.nzCanDeactivate(De,Pe)).pipe((0,T.P)(),(0,p.R)(this.destroy$)):(0,g.of)(!0)}clickNavItem(De,Pe,Je){De.nzDisabled||(De.nzClick.emit(),this.isRouterLinkClickEvent(Pe,Je)||this.setSelectedIndex(Pe))}isRouterLinkClickEvent(De,Pe){const Je=Pe.target;return!!this.nzLinkRouter&&!!this.tabs.toArray()[De]?.linkDirective?.elementRef.nativeElement.contains(Je)}contextmenuNavItem(De,Pe){De.nzDisabled||De.nzContextmenu.emit(Pe)}setSelectedIndex(De){this.canDeactivateSubscription.unsubscribe(),this.canDeactivateSubscription=this.canDeactivateFun(this.selectedIndex,De).subscribe(Pe=>{Pe&&(this.nzSelectedIndex=De,this.tabNavBarRef.focusIndex=De,this.cdr.markForCheck())})}getTabIndex(De,Pe){return De.nzDisabled?null:this.selectedIndex===Pe?0:-1}getTabContentId(De){return`nz-tabs-${this.tabSetId}-tab-${De}`}setUpRouter(){if(this.nzLinkRouter){if(!this.router)throw new Error(`${K.Bq} you should import 'RouterModule' if you want to use 'nzLinkRouter'!`);this.router.events.pipe((0,p.R)(this.destroy$),(0,x.h)(De=>De instanceof ze.m2),(0,y.O)(!0),(0,D.g)(0)).subscribe(()=>{this.updateRouterActive(),this.cdr.markForCheck()})}}updateRouterActive(){if(this.router.navigated){const De=this.findShouldActiveTabIndex();De!==this.selectedIndex&&this.setSelectedIndex(De),this.nzHideAll=-1===De}}findShouldActiveTabIndex(){const De=this.tabs.toArray(),Pe=this.isLinkActive(this.router);return De.findIndex(Je=>{const Ge=Je.linkDirective;return!!Ge&&Pe(Ge.routerLink)})}isLinkActive(De){return Pe=>!!Pe&&De.isActive(Pe.urlTree||"",{paths:this.nzLinkExact?"exact":"subset",queryParams:this.nzLinkExact?"exact":"subset",fragment:"ignored",matrixParams:"ignored"})}getTabContentMarginValue(){return 100*-(this.nzSelectedIndex||0)}getTabContentMarginLeft(){return this.tabPaneAnimated&&"rtl"!==this.dir?`${this.getTabContentMarginValue()}%`:""}getTabContentMarginRight(){return this.tabPaneAnimated&&"rtl"===this.dir?`${this.getTabContentMarginValue()}%`:""}static#e=this.\u0275fac=function(Pe){return new(Pe||Ue)(e.Y36(V.jY),e.Y36(e.R0b),e.Y36(e.sBO),e.Y36(R.Is,8),e.Y36(ze.F0,8))};static#t=this.\u0275cmp=e.Xpm({type:Ue,selectors:[["nz-tabset"]],contentQueries:function(Pe,Je,Ge){if(1&Pe&&e.Suo(Ge,Qe,5),2&Pe){let Ke;e.iGM(Ke=e.CRH())&&(Je.allTabs=Ke)}},viewQuery:function(Pe,Je){if(1&Pe&&e.Gf(Vt,5),2&Pe){let Ge;e.iGM(Ge=e.CRH())&&(Je.tabNavBarRef=Ge.first)}},hostAttrs:[1,"ant-tabs"],hostVars:24,hostBindings:function(Pe,Je){2&Pe&&e.ekj("ant-tabs-card","card"===Je.nzType||"editable-card"===Je.nzType)("ant-tabs-editable","editable-card"===Je.nzType)("ant-tabs-editable-card","editable-card"===Je.nzType)("ant-tabs-centered",Je.nzCentered)("ant-tabs-rtl","rtl"===Je.dir)("ant-tabs-top","top"===Je.nzTabPosition)("ant-tabs-bottom","bottom"===Je.nzTabPosition)("ant-tabs-left","left"===Je.nzTabPosition)("ant-tabs-right","right"===Je.nzTabPosition)("ant-tabs-default","default"===Je.nzSize)("ant-tabs-small","small"===Je.nzSize)("ant-tabs-large","large"===Je.nzSize)},inputs:{nzSelectedIndex:"nzSelectedIndex",nzTabPosition:"nzTabPosition",nzTabBarExtraContent:"nzTabBarExtraContent",nzCanDeactivate:"nzCanDeactivate",nzAddIcon:"nzAddIcon",nzTabBarStyle:"nzTabBarStyle",nzType:"nzType",nzSize:"nzSize",nzAnimated:"nzAnimated",nzTabBarGutter:"nzTabBarGutter",nzHideAdd:"nzHideAdd",nzCentered:"nzCentered",nzHideAll:"nzHideAll",nzLinkRouter:"nzLinkRouter",nzLinkExact:"nzLinkExact"},outputs:{nzSelectChange:"nzSelectChange",nzSelectedIndexChange:"nzSelectedIndexChange",nzTabListScroll:"nzTabListScroll",nzClose:"nzClose",nzAdd:"nzAdd"},exportAs:["nzTabset"],features:[e._Bn([{provide:xt,useExisting:Ue}])],decls:4,vars:16,consts:[[3,"ngStyle","selectedIndex","inkBarAnimated","addable","addIcon","hideBar","position","extraTemplate","tabScroll","selectFocusedIndex","addClicked",4,"ngIf"],[1,"ant-tabs-content-holder"],[1,"ant-tabs-content"],["nz-tab-body","",3,"active","content","forceRender","tabPaneAnimated",4,"ngFor","ngForOf"],[3,"ngStyle","selectedIndex","inkBarAnimated","addable","addIcon","hideBar","position","extraTemplate","tabScroll","selectFocusedIndex","addClicked"],["class","ant-tabs-tab",3,"margin-right","margin-bottom","ant-tabs-tab-active","ant-tabs-tab-disabled","click","contextmenu",4,"ngFor","ngForOf"],[1,"ant-tabs-tab",3,"click","contextmenu"],["role","tab","nzTabNavItem","","cdkMonitorElementFocus","",1,"ant-tabs-tab-btn",3,"disabled","tab","active"],[4,"nzStringTemplateOutlet","nzStringTemplateOutletContext"],["nz-tab-close-button","",3,"closeIcon","click",4,"ngIf"],["nz-tab-close-button","",3,"closeIcon","click"],["nz-tab-body","",3,"active","content","forceRender","tabPaneAnimated"]],template:function(Pe,Je){1&Pe&&(e.YNc(0,U,2,9,"nz-tabs-nav",0),e.TgZ(1,"div",1)(2,"div",2),e.YNc(3,B,1,4,"div",3),e.qZA()()),2&Pe&&(e.Q6J("ngIf",Je.tabs.length||Je.addable),e.xp6(2),e.Udp("margin-left",Je.getTabContentMarginLeft())("margin-right",Je.getTabContentMarginRight()),e.ekj("ant-tabs-content-top","top"===Je.nzTabPosition)("ant-tabs-content-bottom","bottom"===Je.nzTabPosition)("ant-tabs-content-left","left"===Je.nzTabPosition)("ant-tabs-content-right","right"===Je.nzTabPosition)("ant-tabs-content-animated",Je.tabPaneAnimated),e.xp6(1),e.Q6J("ngForOf",Je.tabs))},dependencies:[_.sg,_.O5,_.PC,t.f,l.kH,Vt,Ne,He,st],encapsulation:2})}return(0,$.gn)([(0,V.oS)()],Ue.prototype,"nzType",void 0),(0,$.gn)([(0,V.oS)()],Ue.prototype,"nzSize",void 0),(0,$.gn)([(0,V.oS)()],Ue.prototype,"nzAnimated",void 0),(0,$.gn)([(0,V.oS)()],Ue.prototype,"nzTabBarGutter",void 0),(0,$.gn)([(0,W.yF)()],Ue.prototype,"nzHideAdd",void 0),(0,$.gn)([(0,W.yF)()],Ue.prototype,"nzCentered",void 0),(0,$.gn)([(0,W.yF)()],Ue.prototype,"nzHideAll",void 0),(0,$.gn)([(0,W.yF)()],Ue.prototype,"nzLinkRouter",void 0),(0,$.gn)([(0,W.yF)()],Ue.prototype,"nzLinkExact",void 0),Ue})(),$e=(()=>{class Ue{static#e=this.\u0275fac=function(Pe){return new(Pe||Ue)};static#t=this.\u0275mod=e.oAB({type:Ue});static#n=this.\u0275inj=e.cJS({imports:[R.vT,_.ez,Y.Q8,n.PV,t.T,G.ud,l.rt,A.ZD,S.b1]})}return Ue})()},55695:(nt,I,o)=>{"use strict";o.d(I,{X:()=>d,j:()=>g});var e=o(97582),n=o(65879),t=o(78645),i=o(59773),l=o(13324),C=o(27754),E=o(49388),u=o(96814),z=o(90551),M=o(60095);function h(p,f){if(1&p){const y=n.EpF();n.TgZ(0,"span",1),n.NdJ("click",function(x){n.CHM(y);const D=n.oxw();return n.KtG(D.closeTag(x))}),n.qZA()}}const v=["*"];let g=(()=>{class p{constructor(y,T,x,D){this.cdr=y,this.renderer=T,this.elementRef=x,this.directionality=D,this.isPresetColor=!1,this.nzMode="default",this.nzChecked=!1,this.nzOnClose=new n.vpe,this.nzCheckedChange=new n.vpe,this.dir="ltr",this.destroy$=new t.x}updateCheckedStatus(){"checkable"===this.nzMode&&(this.nzChecked=!this.nzChecked,this.nzCheckedChange.emit(this.nzChecked))}closeTag(y){this.nzOnClose.emit(y),y.defaultPrevented||this.renderer.removeChild(this.renderer.parentNode(this.elementRef.nativeElement),this.elementRef.nativeElement)}clearPresetColor(){const y=this.elementRef.nativeElement,T=new RegExp(`(ant-tag-(?:${[...l.uf,...l.Bh].join("|")}))`,"g"),x=y.classList.toString(),D=[];let _=T.exec(x);for(;null!==_;)D.push(_[1]),_=T.exec(x);y.classList.remove(...D)}setPresetColor(){const y=this.elementRef.nativeElement;this.clearPresetColor(),this.isPresetColor=!!this.nzColor&&((0,l.o2)(this.nzColor)||(0,l.M8)(this.nzColor)),this.isPresetColor&&y.classList.add(`ant-tag-${this.nzColor}`)}ngOnInit(){this.directionality.change?.pipe((0,i.R)(this.destroy$)).subscribe(y=>{this.dir=y,this.cdr.detectChanges()}),this.dir=this.directionality.value}ngOnChanges(y){const{nzColor:T}=y;T&&this.setPresetColor()}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(T){return new(T||p)(n.Y36(n.sBO),n.Y36(n.Qsj),n.Y36(n.SBq),n.Y36(E.Is,8))};static#t=this.\u0275cmp=n.Xpm({type:p,selectors:[["nz-tag"]],hostAttrs:[1,"ant-tag"],hostVars:10,hostBindings:function(T,x){1&T&&n.NdJ("click",function(){return x.updateCheckedStatus()}),2&T&&(n.Udp("background-color",x.isPresetColor?"":x.nzColor),n.ekj("ant-tag-has-color",x.nzColor&&!x.isPresetColor)("ant-tag-checkable","checkable"===x.nzMode)("ant-tag-checkable-checked",x.nzChecked)("ant-tag-rtl","rtl"===x.dir))},inputs:{nzMode:"nzMode",nzColor:"nzColor",nzChecked:"nzChecked"},outputs:{nzOnClose:"nzOnClose",nzCheckedChange:"nzCheckedChange"},exportAs:["nzTag"],features:[n.TTD],ngContentSelectors:v,decls:2,vars:1,consts:[["nz-icon","","nzType","close","class","ant-tag-close-icon","tabindex","-1",3,"click",4,"ngIf"],["nz-icon","","nzType","close","tabindex","-1",1,"ant-tag-close-icon",3,"click"]],template:function(T,x){1&T&&(n.F$t(),n.Hsn(0),n.YNc(1,h,1,0,"span",0)),2&T&&(n.xp6(1),n.Q6J("ngIf","closeable"===x.nzMode))},dependencies:[u.O5,z.Ls],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,C.yF)()],p.prototype,"nzChecked",void 0),p})(),d=(()=>{class p{static#e=this.\u0275fac=function(T){return new(T||p)};static#t=this.\u0275mod=n.oAB({type:p});static#n=this.\u0275inj=n.cJS({imports:[E.vT,u.ez,M.u5,z.PV]})}return p})()},60047:(nt,I,o)=>{"use strict";o.d(I,{Iv:()=>je,m4:()=>mt,wY:()=>we});var e=o(97582),n=o(33651),t=o(65879),i=o(60095),l=o(78645),C=o(92438),E=o(22096),u=o(59773),z=o(93997),M=o(42460),h=o(37398),v=o(34338),g=o(64194),d=o(83064),p=o(1608),f=o(27754),y=o(12131),T=o(62831),x=o(49388),D=o(50883),_=o(96814),P=o(90551),S=o(85448),A=o(8324),k=o(70855),R=o(56879),$=o(42840),W=o(41958);const ze=["hourListElement"],Y=["minuteListElement"],G=["secondListElement"],V=["use12HoursListElement"];function K(de,U){if(1&de&&(t.TgZ(0,"div",4)(1,"div",5),t._uU(2),t.qZA()()),2&de){const B=t.oxw();t.xp6(2),t.Oqu(B.dateHelper.format(null==B.time?null:B.time.value,B.format)||"\xa0")}}function te(de,U){if(1&de){const B=t.EpF();t.TgZ(0,"li",10),t.NdJ("click",function(){t.CHM(B);const Ie=t.oxw().$implicit,Ne=t.oxw(2);return t.KtG(Ne.selectHour(Ie))}),t.TgZ(1,"div",11),t._uU(2),t.ALo(3,"number"),t.qZA()()}if(2&de){const B=t.oxw().$implicit,Ee=t.oxw(2);t.ekj("ant-picker-time-panel-cell-selected",Ee.isSelectedHour(B))("ant-picker-time-panel-cell-disabled",B.disabled),t.xp6(2),t.Oqu(t.xi3(3,5,B.index,"2.0-0"))}}function ne(de,U){if(1&de&&(t.ynx(0),t.YNc(1,te,4,8,"li",9),t.BQk()),2&de){const B=U.$implicit,Ee=t.oxw(2);t.xp6(1),t.Q6J("ngIf",!(Ee.nzHideDisabledOptions&&B.disabled))}}function fe(de,U){if(1&de&&(t.TgZ(0,"ul",6,7),t.YNc(2,ne,2,1,"ng-container",8),t.qZA()),2&de){const B=t.oxw();t.xp6(2),t.Q6J("ngForOf",B.hourRange)("ngForTrackBy",B.trackByFn)}}function re(de,U){if(1&de){const B=t.EpF();t.TgZ(0,"li",10),t.NdJ("click",function(){t.CHM(B);const Ie=t.oxw().$implicit,Ne=t.oxw(2);return t.KtG(Ne.selectMinute(Ie))}),t.TgZ(1,"div",11),t._uU(2),t.ALo(3,"number"),t.qZA()()}if(2&de){const B=t.oxw().$implicit,Ee=t.oxw(2);t.ekj("ant-picker-time-panel-cell-selected",Ee.isSelectedMinute(B))("ant-picker-time-panel-cell-disabled",B.disabled),t.xp6(2),t.Oqu(t.xi3(3,5,B.index,"2.0-0"))}}function be(de,U){if(1&de&&(t.ynx(0),t.YNc(1,re,4,8,"li",9),t.BQk()),2&de){const B=U.$implicit,Ee=t.oxw(2);t.xp6(1),t.Q6J("ngIf",!(Ee.nzHideDisabledOptions&&B.disabled))}}function le(de,U){if(1&de&&(t.TgZ(0,"ul",6,12),t.YNc(2,be,2,1,"ng-container",8),t.qZA()),2&de){const B=t.oxw();t.xp6(2),t.Q6J("ngForOf",B.minuteRange)("ngForTrackBy",B.trackByFn)}}function ce(de,U){if(1&de){const B=t.EpF();t.TgZ(0,"li",10),t.NdJ("click",function(){t.CHM(B);const Ie=t.oxw().$implicit,Ne=t.oxw(2);return t.KtG(Ne.selectSecond(Ie))}),t.TgZ(1,"div",11),t._uU(2),t.ALo(3,"number"),t.qZA()()}if(2&de){const B=t.oxw().$implicit,Ee=t.oxw(2);t.ekj("ant-picker-time-panel-cell-selected",Ee.isSelectedSecond(B))("ant-picker-time-panel-cell-disabled",B.disabled),t.xp6(2),t.Oqu(t.xi3(3,5,B.index,"2.0-0"))}}function Q(de,U){if(1&de&&(t.ynx(0),t.YNc(1,ce,4,8,"li",9),t.BQk()),2&de){const B=U.$implicit,Ee=t.oxw(2);t.xp6(1),t.Q6J("ngIf",!(Ee.nzHideDisabledOptions&&B.disabled))}}function ie(de,U){if(1&de&&(t.TgZ(0,"ul",6,13),t.YNc(2,Q,2,1,"ng-container",8),t.qZA()),2&de){const B=t.oxw();t.xp6(2),t.Q6J("ngForOf",B.secondRange)("ngForTrackBy",B.trackByFn)}}function ae(de,U){if(1&de){const B=t.EpF();t.ynx(0),t.TgZ(1,"li",10),t.NdJ("click",function(){const Ne=t.CHM(B).$implicit,pt=t.oxw(2);return t.KtG(pt.select12Hours(Ne))}),t.TgZ(2,"div",11),t._uU(3),t.qZA()(),t.BQk()}if(2&de){const B=U.$implicit,Ee=t.oxw(2);t.xp6(1),t.ekj("ant-picker-time-panel-cell-selected",Ee.isSelected12Hours(B)),t.xp6(2),t.Oqu(B.value)}}function xe(de,U){if(1&de&&(t.TgZ(0,"ul",6,14),t.YNc(2,ae,4,3,"ng-container",15),t.qZA()),2&de){const B=t.oxw();t.xp6(2),t.Q6J("ngForOf",B.use12HoursRange)}}function Me(de,U){}function Ye(de,U){if(1&de&&(t.TgZ(0,"div",23),t.YNc(1,Me,0,0,"ng-template",24),t.qZA()),2&de){const B=t.oxw(2);t.xp6(1),t.Q6J("ngTemplateOutlet",B.nzAddOn)}}function q(de,U){if(1&de){const B=t.EpF();t.TgZ(0,"div",16),t.YNc(1,Ye,2,1,"div",17),t.TgZ(2,"ul",18)(3,"li",19)(4,"a",20),t.NdJ("click",function(){t.CHM(B);const Ie=t.oxw();return t.KtG(Ie.onClickNow())}),t._uU(5),t.ALo(6,"nzI18n"),t.qZA()(),t.TgZ(7,"li",21)(8,"button",22),t.NdJ("click",function(){t.CHM(B);const Ie=t.oxw();return t.KtG(Ie.onClickOk())}),t._uU(9),t.ALo(10,"nzI18n"),t.qZA()()()()}if(2&de){const B=t.oxw();t.xp6(1),t.Q6J("ngIf",B.nzAddOn),t.xp6(4),t.hij(" ",B.nzNowText||t.lcZ(6,3,"Calendar.lang.now")," "),t.xp6(4),t.hij(" ",B.nzOkText||t.lcZ(10,5,"Calendar.lang.ok")," ")}}const ve=["inputElement"];function ee(de,U){if(1&de&&(t.ynx(0),t._UZ(1,"span",8),t.BQk()),2&de){const B=U.$implicit;t.xp6(1),t.Q6J("nzType",B)}}function Be(de,U){if(1&de&&t._UZ(0,"nz-form-item-feedback-icon",9),2&de){const B=t.oxw();t.Q6J("status",B.status)}}function Re(de,U){if(1&de){const B=t.EpF();t.TgZ(0,"span",10),t.NdJ("click",function(Ie){t.CHM(B);const Ne=t.oxw();return t.KtG(Ne.onClickClearBtn(Ie))}),t._UZ(1,"span",11),t.qZA()}if(2&de){const B=t.oxw();t.xp6(1),t.uIk("aria-label",B.nzClearText)("title",B.nzClearText)}}function ct(de,U){if(1&de){const B=t.EpF();t.TgZ(0,"div",12)(1,"div",13)(2,"div",14)(3,"nz-time-picker-panel",15),t.NdJ("ngModelChange",function(Ie){t.CHM(B);const Ne=t.oxw();return t.KtG(Ne.value=Ie)})("ngModelChange",function(Ie){t.CHM(B);const Ne=t.oxw();return t.KtG(Ne.onPanelValueChange(Ie))})("closePanel",function(){t.CHM(B);const Ie=t.oxw();return t.KtG(Ie.closePanel())}),t.ALo(4,"async"),t.qZA()()()()}if(2&de){const B=t.oxw();t.Q6J("@slideMotion","enter"),t.xp6(3),t.Q6J("ngClass",B.nzPopupClassName)("format",B.nzFormat)("nzHourStep",B.nzHourStep)("nzMinuteStep",B.nzMinuteStep)("nzSecondStep",B.nzSecondStep)("nzDisabledHours",B.nzDisabledHours)("nzDisabledMinutes",B.nzDisabledMinutes)("nzDisabledSeconds",B.nzDisabledSeconds)("nzPlaceHolder",B.nzPlaceHolder||t.lcZ(4,19,B.i18nPlaceHolder$))("nzHideDisabledOptions",B.nzHideDisabledOptions)("nzUse12Hours",B.nzUse12Hours)("nzDefaultOpenValue",B.nzDefaultOpenValue)("nzAddOn",B.nzAddOn)("nzClearText",B.nzClearText)("nzNowText",B.nzNowText)("nzOkText",B.nzOkText)("nzAllowEmpty",B.nzAllowEmpty)("ngModel",B.value)}}class Ae{setMinutes(U,B){return B||(this.initValue(),this.value.setMinutes(U),this.update()),this}setHours(U,B){return B||(this.initValue(),this.value.setHours(this._use12Hours?"PM"===this.selected12Hours&&12!==U?U+12:"AM"===this.selected12Hours&&12===U?0:U:U),this.update()),this}setSeconds(U,B){return B||(this.initValue(),this.value.setSeconds(U),this.update()),this}setUse12Hours(U){return this._use12Hours=U,this}get changes(){return this._changes.asObservable()}setValue(U,B){return(0,f.DX)(B)&&(this._use12Hours=B),U!==this.value&&(this._value=U,(0,f.DX)(this.value)?this._use12Hours&&(0,f.DX)(this.hours)&&(this.selected12Hours=this.hours>=12?"PM":"AM"):this._clear()),this}initValue(){(0,f.kK)(this.value)&&this.setValue(new Date,this._use12Hours)}clear(){this._clear(),this.update()}get isEmpty(){return!((0,f.DX)(this.hours)||(0,f.DX)(this.minutes)||(0,f.DX)(this.seconds))}_clear(){this._value=void 0,this.selected12Hours=void 0}update(){this.isEmpty?this._value=void 0:((0,f.DX)(this.hours)&&this.value.setHours(this.hours),(0,f.DX)(this.minutes)&&this.value.setMinutes(this.minutes),(0,f.DX)(this.seconds)&&this.value.setSeconds(this.seconds),this._use12Hours&&("PM"===this.selected12Hours&&this.hours<12&&this.value.setHours(this.hours+12),"AM"===this.selected12Hours&&this.hours>=12&&this.value.setHours(this.hours-12))),this.changed()}changed(){this._changes.next(this.value)}get viewHours(){return this._use12Hours&&(0,f.DX)(this.hours)?this.calculateViewHour(this.hours):this.hours}setSelected12Hours(U){U.toUpperCase()!==this.selected12Hours&&(this.selected12Hours=U.toUpperCase(),this.update())}get value(){return this._value||this._defaultOpenValue}get hours(){return this.value?.getHours()}get minutes(){return this.value?.getMinutes()}get seconds(){return this.value?.getSeconds()}setDefaultOpenValue(U){return this._defaultOpenValue=U,this}constructor(){this.selected12Hours=void 0,this._use12Hours=!1,this._changes=new l.x}calculateViewHour(U){const B=this.selected12Hours;return"PM"===B&&U>12?U-12:"AM"===B&&0===U?12:U}}function Mt(de,U=1,B=0){return new Array(Math.ceil(de/U)).fill(0).map((Ee,Ie)=>(Ie+B)*U)}let je=(()=>{class de{set nzAllowEmpty(B){(0,f.DX)(B)&&(this._allowEmpty=B)}get nzAllowEmpty(){return this._allowEmpty}set nzDisabledHours(B){this._disabledHours=B,this._disabledHours&&this.buildHours()}get nzDisabledHours(){return this._disabledHours}set nzDisabledMinutes(B){(0,f.DX)(B)&&(this._disabledMinutes=B,this.buildMinutes())}get nzDisabledMinutes(){return this._disabledMinutes}set nzDisabledSeconds(B){(0,f.DX)(B)&&(this._disabledSeconds=B,this.buildSeconds())}get nzDisabledSeconds(){return this._disabledSeconds}set format(B){if((0,f.DX)(B)){this._format=B,this.enabledColumns=0;const Ee=new Set(B);this.hourEnabled=Ee.has("H")||Ee.has("h"),this.minuteEnabled=Ee.has("m"),this.secondEnabled=Ee.has("s"),this.hourEnabled&&this.enabledColumns++,this.minuteEnabled&&this.enabledColumns++,this.secondEnabled&&this.enabledColumns++,this.nzUse12Hours&&this.build12Hours()}}get format(){return this._format}set nzHourStep(B){(0,f.DX)(B)&&(this._nzHourStep=B,this.buildHours())}get nzHourStep(){return this._nzHourStep}set nzMinuteStep(B){(0,f.DX)(B)&&(this._nzMinuteStep=B,this.buildMinutes())}get nzMinuteStep(){return this._nzMinuteStep}set nzSecondStep(B){(0,f.DX)(B)&&(this._nzSecondStep=B,this.buildSeconds())}get nzSecondStep(){return this._nzSecondStep}trackByFn(B){return B}buildHours(){let B=24,Ee=this.nzDisabledHours?.(),Ie=0;if(this.nzUse12Hours&&(B=12,Ee&&(Ee="PM"===this.time.selected12Hours?Ee.filter(Ne=>Ne>=12).map(Ne=>Ne>12?Ne-12:Ne):Ee.filter(Ne=>Ne<12||24===Ne).map(Ne=>24===Ne||0===Ne?12:Ne)),Ie=1),this.hourRange=Mt(B,this.nzHourStep,Ie).map(Ne=>({index:Ne,disabled:!!Ee&&-1!==Ee.indexOf(Ne)})),this.nzUse12Hours&&12===this.hourRange[this.hourRange.length-1].index){const Ne=[...this.hourRange];Ne.unshift(Ne[Ne.length-1]),Ne.splice(Ne.length-1,1),this.hourRange=Ne}}buildMinutes(){this.minuteRange=Mt(60,this.nzMinuteStep).map(B=>({index:B,disabled:!!this.nzDisabledMinutes&&-1!==this.nzDisabledMinutes(this.time.hours).indexOf(B)}))}buildSeconds(){this.secondRange=Mt(60,this.nzSecondStep).map(B=>({index:B,disabled:!!this.nzDisabledSeconds&&-1!==this.nzDisabledSeconds(this.time.hours,this.time.minutes).indexOf(B)}))}build12Hours(){const B=this._format.includes("A");this.use12HoursRange=[{index:0,value:B?"AM":"am"},{index:1,value:B?"PM":"pm"}]}buildTimes(){this.buildHours(),this.buildMinutes(),this.buildSeconds(),this.build12Hours()}scrollToTime(B=0){this.hourEnabled&&this.hourListElement&&this.scrollToSelected(this.hourListElement.nativeElement,this.time.viewHours,B,"hour"),this.minuteEnabled&&this.minuteListElement&&this.scrollToSelected(this.minuteListElement.nativeElement,this.time.minutes,B,"minute"),this.secondEnabled&&this.secondListElement&&this.scrollToSelected(this.secondListElement.nativeElement,this.time.seconds,B,"second"),this.nzUse12Hours&&this.use12HoursListElement&&this.scrollToSelected(this.use12HoursListElement.nativeElement,"AM"===this.time.selected12Hours?0:1,B,"12-hour")}selectHour(B){this.time.setHours(B.index,B.disabled),this._disabledMinutes&&this.buildMinutes(),(this._disabledSeconds||this._disabledMinutes)&&this.buildSeconds()}selectMinute(B){this.time.setMinutes(B.index,B.disabled),this._disabledSeconds&&this.buildSeconds()}selectSecond(B){this.time.setSeconds(B.index,B.disabled)}select12Hours(B){this.time.setSelected12Hours(B.value),this._disabledHours&&this.buildHours(),this._disabledMinutes&&this.buildMinutes(),this._disabledSeconds&&this.buildSeconds()}scrollToSelected(B,Ee,Ie=0,Ne){if(!B)return;const pt=this.translateIndex(Ee,Ne);this.scrollTo(B,(B.children[pt]||B.children[0]).offsetTop,Ie)}translateIndex(B,Ee){return"hour"===Ee?this.calcIndex(this.nzDisabledHours?.(),this.hourRange.map(Ie=>Ie.index).indexOf(B)):"minute"===Ee?this.calcIndex(this.nzDisabledMinutes?.(this.time.hours),this.minuteRange.map(Ie=>Ie.index).indexOf(B)):"second"===Ee?this.calcIndex(this.nzDisabledSeconds?.(this.time.hours,this.time.minutes),this.secondRange.map(Ie=>Ie.index).indexOf(B)):this.calcIndex([],this.use12HoursRange.map(Ie=>Ie.index).indexOf(B))}scrollTo(B,Ee,Ie){if(Ie<=0)return void(B.scrollTop=Ee);const pt=(Ee-B.scrollTop)/Ie*10;this.ngZone.runOutsideAngular(()=>{(0,R.e)(()=>{B.scrollTop=B.scrollTop+pt,B.scrollTop!==Ee&&this.scrollTo(B,Ee,Ie-10)})})}calcIndex(B,Ee){return B?.length&&this.nzHideDisabledOptions?Ee-B.reduce((Ie,Ne)=>Ie+(Ne-1||(this.nzDisabledMinutes?.(Ee).indexOf(Ie)??-1)>-1||(this.nzDisabledSeconds?.(Ee,Ie).indexOf(Ne)??-1)>-1}onClickNow(){const B=new Date;this.timeDisabled(B)||(this.time.setValue(B),this.changed(),this.closePanel.emit())}onClickOk(){this.time.setValue(this.time.value,this.nzUse12Hours),this.changed(),this.closePanel.emit()}isSelectedHour(B){return B.index===this.time.viewHours}isSelectedMinute(B){return B.index===this.time.minutes}isSelectedSecond(B){return B.index===this.time.seconds}isSelected12Hours(B){return B.value.toUpperCase()===this.time.selected12Hours}constructor(B,Ee,Ie,Ne){this.ngZone=B,this.cdr=Ee,this.dateHelper=Ie,this.elementRef=Ne,this._nzHourStep=1,this._nzMinuteStep=1,this._nzSecondStep=1,this.unsubscribe$=new l.x,this._format="HH:mm:ss",this._disabledHours=()=>[],this._disabledMinutes=()=>[],this._disabledSeconds=()=>[],this._allowEmpty=!0,this.time=new Ae,this.hourEnabled=!0,this.minuteEnabled=!0,this.secondEnabled=!0,this.firstScrolled=!1,this.enabledColumns=3,this.nzInDatePicker=!1,this.nzHideDisabledOptions=!1,this.nzUse12Hours=!1,this.closePanel=new t.vpe}ngOnInit(){this.time.changes.pipe((0,u.R)(this.unsubscribe$)).subscribe(()=>{this.changed(),this.touched(),this.scrollToTime(120)}),this.buildTimes(),this.ngZone.runOutsideAngular(()=>{setTimeout(()=>{this.scrollToTime(),this.firstScrolled=!0}),(0,C.R)(this.elementRef.nativeElement,"mousedown").pipe((0,u.R)(this.unsubscribe$)).subscribe(B=>{B.preventDefault()})})}ngOnDestroy(){this.unsubscribe$.next(),this.unsubscribe$.complete()}ngOnChanges(B){const{nzUse12Hours:Ee,nzDefaultOpenValue:Ie}=B;!Ee?.previousValue&&Ee?.currentValue&&(this.build12Hours(),this.enabledColumns++),Ie?.currentValue&&this.time.setDefaultOpenValue(this.nzDefaultOpenValue||new Date)}writeValue(B){this.time.setValue(B,this.nzUse12Hours),this.buildTimes(),B&&this.firstScrolled&&this.scrollToTime(120),this.cdr.markForCheck()}registerOnChange(B){this.onChange=B}registerOnTouched(B){this.onTouch=B}static#e=this.\u0275fac=function(Ee){return new(Ee||de)(t.Y36(t.R0b),t.Y36(t.sBO),t.Y36(y.mx),t.Y36(t.SBq))};static#t=this.\u0275cmp=t.Xpm({type:de,selectors:[["nz-time-picker-panel"]],viewQuery:function(Ee,Ie){if(1&Ee&&(t.Gf(ze,5),t.Gf(Y,5),t.Gf(G,5),t.Gf(V,5)),2&Ee){let Ne;t.iGM(Ne=t.CRH())&&(Ie.hourListElement=Ne.first),t.iGM(Ne=t.CRH())&&(Ie.minuteListElement=Ne.first),t.iGM(Ne=t.CRH())&&(Ie.secondListElement=Ne.first),t.iGM(Ne=t.CRH())&&(Ie.use12HoursListElement=Ne.first)}},hostAttrs:[1,"ant-picker-time-panel"],hostVars:12,hostBindings:function(Ee,Ie){2&Ee&&t.ekj("ant-picker-time-panel-column-0",0===Ie.enabledColumns&&!Ie.nzInDatePicker)("ant-picker-time-panel-column-1",1===Ie.enabledColumns&&!Ie.nzInDatePicker)("ant-picker-time-panel-column-2",2===Ie.enabledColumns&&!Ie.nzInDatePicker)("ant-picker-time-panel-column-3",3===Ie.enabledColumns&&!Ie.nzInDatePicker)("ant-picker-time-panel-narrow",Ie.enabledColumns<3)("ant-picker-time-panel-placement-bottomLeft",!Ie.nzInDatePicker)},inputs:{nzInDatePicker:"nzInDatePicker",nzAddOn:"nzAddOn",nzHideDisabledOptions:"nzHideDisabledOptions",nzClearText:"nzClearText",nzNowText:"nzNowText",nzOkText:"nzOkText",nzPlaceHolder:"nzPlaceHolder",nzUse12Hours:"nzUse12Hours",nzDefaultOpenValue:"nzDefaultOpenValue",nzAllowEmpty:"nzAllowEmpty",nzDisabledHours:"nzDisabledHours",nzDisabledMinutes:"nzDisabledMinutes",nzDisabledSeconds:"nzDisabledSeconds",format:"format",nzHourStep:"nzHourStep",nzMinuteStep:"nzMinuteStep",nzSecondStep:"nzSecondStep"},outputs:{closePanel:"closePanel"},exportAs:["nzTimePickerPanel"],features:[t._Bn([{provide:i.JU,useExisting:de,multi:!0}]),t.TTD],decls:7,vars:6,consts:[["class","ant-picker-header",4,"ngIf"],[1,"ant-picker-content"],["class","ant-picker-time-panel-column","style","position: relative;",4,"ngIf"],["class","ant-picker-footer",4,"ngIf"],[1,"ant-picker-header"],[1,"ant-picker-header-view"],[1,"ant-picker-time-panel-column",2,"position","relative"],["hourListElement",""],[4,"ngFor","ngForOf","ngForTrackBy"],["class","ant-picker-time-panel-cell",3,"ant-picker-time-panel-cell-selected","ant-picker-time-panel-cell-disabled","click",4,"ngIf"],[1,"ant-picker-time-panel-cell",3,"click"],[1,"ant-picker-time-panel-cell-inner"],["minuteListElement",""],["secondListElement",""],["use12HoursListElement",""],[4,"ngFor","ngForOf"],[1,"ant-picker-footer"],["class","ant-picker-footer-extra",4,"ngIf"],[1,"ant-picker-ranges"],[1,"ant-picker-now"],[3,"click"],[1,"ant-picker-ok"],["nz-button","","type","button","nzSize","small","nzType","primary",3,"click"],[1,"ant-picker-footer-extra"],[3,"ngTemplateOutlet"]],template:function(Ee,Ie){1&Ee&&(t.YNc(0,K,3,1,"div",0),t.TgZ(1,"div",1),t.YNc(2,fe,3,2,"ul",2),t.YNc(3,le,3,2,"ul",2),t.YNc(4,ie,3,2,"ul",2),t.YNc(5,xe,3,1,"ul",2),t.qZA(),t.YNc(6,q,11,7,"div",3)),2&Ee&&(t.Q6J("ngIf",Ie.nzInDatePicker),t.xp6(2),t.Q6J("ngIf",Ie.hourEnabled),t.xp6(1),t.Q6J("ngIf",Ie.minuteEnabled),t.xp6(1),t.Q6J("ngIf",Ie.secondEnabled),t.xp6(1),t.Q6J("ngIf",Ie.nzUse12Hours),t.xp6(1),t.Q6J("ngIf",!Ie.nzInDatePicker))},dependencies:[_.sg,_.O5,_.tP,$.ix,k.w,W.dQ,_.JJ,y.o9],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,f.yF)()],de.prototype,"nzUse12Hours",void 0),de})(),mt=(()=>{class de{emitValue(B){this.setValue(B,!0),this._onChange&&this._onChange(this.value),this._onTouched&&this._onTouched()}setValue(B,Ee=!1){Ee&&(this.preValue=(0,v.Z)(B)?new Date(B):null),this.value=(0,v.Z)(B)?new Date(B):null,this.inputValue=this.dateHelper.format(B,this.nzFormat),this.cdr.markForCheck()}open(){this.nzDisabled||this.nzOpen||(this.focus(),this.nzOpen=!0,this.nzOpenChange.emit(this.nzOpen))}close(){this.nzOpen=!1,this.cdr.markForCheck(),this.nzOpenChange.emit(this.nzOpen)}updateAutoFocus(){this.isInit&&!this.nzDisabled&&(this.nzAutoFocus?this.renderer.setAttribute(this.inputRef.nativeElement,"autofocus","autofocus"):this.renderer.removeAttribute(this.inputRef.nativeElement,"autofocus"))}onClickClearBtn(B){B.stopPropagation(),this.emitValue(null)}onClickOutside(B){this.element.nativeElement.contains(B.target)||this.setCurrentValueAndClose()}onFocus(B){this.focused=B,B||(this.checkTimeValid(this.value)?this.setCurrentValueAndClose():(this.setValue(this.preValue),this.close()))}focus(){this.inputRef.nativeElement&&this.inputRef.nativeElement.focus()}blur(){this.inputRef.nativeElement&&this.inputRef.nativeElement.blur()}onKeyupEsc(){this.setValue(this.preValue)}onKeyupEnter(){this.nzOpen&&(0,v.Z)(this.value)?this.setCurrentValueAndClose():this.nzOpen||this.open()}onInputChange(B){!this.platform.TRIDENT&&document.activeElement===this.inputRef.nativeElement&&(this.open(),this.parseTimeString(B))}onPanelValueChange(B){this.setValue(B),this.focus()}closePanel(){this.inputRef.nativeElement.blur()}setCurrentValueAndClose(){this.emitValue(this.value),this.close()}constructor(B,Ee,Ie,Ne,pt,Dt,Lt,Ut,qt,en){this.nzConfigService=B,this.i18n=Ee,this.element=Ie,this.renderer=Ne,this.cdr=pt,this.dateHelper=Dt,this.platform=Lt,this.directionality=Ut,this.nzFormStatusService=qt,this.nzFormNoStatusService=en,this._nzModuleName="timePicker",this.destroy$=new l.x,this.isNzDisableFirstChange=!0,this.isInit=!1,this.focused=!1,this.inputValue="",this.value=null,this.preValue=null,this.i18nPlaceHolder$=(0,E.of)(void 0),this.overlayPositions=[{offsetY:3,originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{offsetY:-3,originX:"start",originY:"top",overlayX:"start",overlayY:"bottom"},{offsetY:3,originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"},{offsetY:-3,originX:"end",originY:"top",overlayX:"end",overlayY:"bottom"}],this.dir="ltr",this.prefixCls="ant-picker",this.statusCls={},this.status="",this.hasFeedback=!1,this.nzId=null,this.nzSize=null,this.nzStatus="",this.nzHourStep=1,this.nzMinuteStep=1,this.nzSecondStep=1,this.nzClearText="clear",this.nzNowText="",this.nzOkText="",this.nzPopupClassName="",this.nzPlaceHolder="",this.nzFormat="HH:mm:ss",this.nzOpen=!1,this.nzUse12Hours=!1,this.nzSuffixIcon="clock-circle",this.nzOpenChange=new t.vpe,this.nzHideDisabledOptions=!1,this.nzAllowEmpty=!0,this.nzDisabled=!1,this.nzAutoFocus=!1,this.nzBackdrop=!1,this.nzBorderless=!1,this.nzInputReadOnly=!1}ngOnInit(){this.nzFormStatusService?.formStatusChanges.pipe((0,z.x)((B,Ee)=>B.status===Ee.status&&B.hasFeedback===Ee.hasFeedback),(0,M.M)(this.nzFormNoStatusService?this.nzFormNoStatusService.noFormStatus:(0,E.of)(!1)),(0,h.U)(([{status:B,hasFeedback:Ee},Ie])=>({status:Ie?"":B,hasFeedback:Ee})),(0,u.R)(this.destroy$)).subscribe(({status:B,hasFeedback:Ee})=>{this.setStatusStyles(B,Ee)}),this.inputSize=Math.max(8,this.nzFormat.length)+2,this.origin=new n.xu(this.element),this.i18nPlaceHolder$=this.i18n.localeChange.pipe((0,h.U)(B=>B.TimePicker.placeholder)),this.dir=this.directionality.value,this.directionality.change?.pipe((0,u.R)(this.destroy$)).subscribe(B=>{this.dir=B})}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}ngOnChanges(B){const{nzUse12Hours:Ee,nzFormat:Ie,nzDisabled:Ne,nzAutoFocus:pt,nzStatus:Dt}=B;if(Ee&&!Ee.previousValue&&Ee.currentValue&&!Ie&&(this.nzFormat="h:mm:ss a"),Ne){const Ut=this.inputRef.nativeElement;Ne.currentValue?this.renderer.setAttribute(Ut,"disabled",""):this.renderer.removeAttribute(Ut,"disabled")}pt&&this.updateAutoFocus(),Dt&&this.setStatusStyles(this.nzStatus,this.hasFeedback)}parseTimeString(B){const Ee=this.dateHelper.parseTime(B,this.nzFormat)||null;(0,v.Z)(Ee)&&(this.value=Ee,this.cdr.markForCheck())}ngAfterViewInit(){this.isInit=!0,this.updateAutoFocus()}writeValue(B){let Ee;B instanceof Date?Ee=B:(0,f.kK)(B)?Ee=null:((0,p.ZK)('Non-Date type is not recommended for time-picker, use "Date" type.'),Ee=new Date(B)),this.setValue(Ee,!0)}registerOnChange(B){this._onChange=B}registerOnTouched(B){this._onTouched=B}setDisabledState(B){this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||B,this.isNzDisableFirstChange=!1,this.cdr.markForCheck()}checkTimeValid(B){if(!B)return!0;const Ee=this.nzDisabledHours?.(),Ie=this.nzDisabledMinutes?.(B.getHours()),Ne=this.nzDisabledSeconds?.(B.getHours(),B.getMinutes());return!(Ee?.includes(B.getHours())||Ie?.includes(B.getMinutes())||Ne?.includes(B.getSeconds()))}setStatusStyles(B,Ee){this.status=B,this.hasFeedback=Ee,this.cdr.markForCheck(),this.statusCls=(0,f.Zu)(this.prefixCls,B,Ee),Object.keys(this.statusCls).forEach(Ie=>{this.statusCls[Ie]?this.renderer.addClass(this.element.nativeElement,Ie):this.renderer.removeClass(this.element.nativeElement,Ie)})}static#e=this.\u0275fac=function(Ee){return new(Ee||de)(t.Y36(d.jY),t.Y36(y.wi),t.Y36(t.SBq),t.Y36(t.Qsj),t.Y36(t.sBO),t.Y36(y.mx),t.Y36(T.t4),t.Y36(x.Is,8),t.Y36(D.kH,8),t.Y36(D.yW,8))};static#t=this.\u0275cmp=t.Xpm({type:de,selectors:[["nz-time-picker"]],viewQuery:function(Ee,Ie){if(1&Ee&&t.Gf(ve,7),2&Ee){let Ne;t.iGM(Ne=t.CRH())&&(Ie.inputRef=Ne.first)}},hostAttrs:[1,"ant-picker"],hostVars:12,hostBindings:function(Ee,Ie){1&Ee&&t.NdJ("click",function(){return Ie.open()}),2&Ee&&t.ekj("ant-picker-large","large"===Ie.nzSize)("ant-picker-small","small"===Ie.nzSize)("ant-picker-disabled",Ie.nzDisabled)("ant-picker-focused",Ie.focused)("ant-picker-rtl","rtl"===Ie.dir)("ant-picker-borderless",Ie.nzBorderless)},inputs:{nzId:"nzId",nzSize:"nzSize",nzStatus:"nzStatus",nzHourStep:"nzHourStep",nzMinuteStep:"nzMinuteStep",nzSecondStep:"nzSecondStep",nzClearText:"nzClearText",nzNowText:"nzNowText",nzOkText:"nzOkText",nzPopupClassName:"nzPopupClassName",nzPlaceHolder:"nzPlaceHolder",nzAddOn:"nzAddOn",nzDefaultOpenValue:"nzDefaultOpenValue",nzDisabledHours:"nzDisabledHours",nzDisabledMinutes:"nzDisabledMinutes",nzDisabledSeconds:"nzDisabledSeconds",nzFormat:"nzFormat",nzOpen:"nzOpen",nzUse12Hours:"nzUse12Hours",nzSuffixIcon:"nzSuffixIcon",nzHideDisabledOptions:"nzHideDisabledOptions",nzAllowEmpty:"nzAllowEmpty",nzDisabled:"nzDisabled",nzAutoFocus:"nzAutoFocus",nzBackdrop:"nzBackdrop",nzBorderless:"nzBorderless",nzInputReadOnly:"nzInputReadOnly"},outputs:{nzOpenChange:"nzOpenChange"},exportAs:["nzTimePicker"],features:[t._Bn([{provide:i.JU,useExisting:de,multi:!0}]),t.TTD],decls:9,vars:16,consts:[[1,"ant-picker-input"],["type","text","autocomplete","off",3,"size","placeholder","ngModel","disabled","readOnly","ngModelChange","focus","blur","keyup.enter","keyup.escape"],["inputElement",""],[1,"ant-picker-suffix"],[4,"nzStringTemplateOutlet"],[3,"status",4,"ngIf"],["class","ant-picker-clear",3,"click",4,"ngIf"],["cdkConnectedOverlay","","nzConnectedOverlay","",3,"cdkConnectedOverlayHasBackdrop","cdkConnectedOverlayPositions","cdkConnectedOverlayOrigin","cdkConnectedOverlayOpen","cdkConnectedOverlayTransformOriginOn","detach","overlayOutsideClick"],["nz-icon","",3,"nzType"],[3,"status"],[1,"ant-picker-clear",3,"click"],["nz-icon","","nzType","close-circle","nzTheme","fill"],[1,"ant-picker-dropdown",2,"position","relative"],[1,"ant-picker-panel-container"],["tabindex","-1",1,"ant-picker-panel"],[3,"ngClass","format","nzHourStep","nzMinuteStep","nzSecondStep","nzDisabledHours","nzDisabledMinutes","nzDisabledSeconds","nzPlaceHolder","nzHideDisabledOptions","nzUse12Hours","nzDefaultOpenValue","nzAddOn","nzClearText","nzNowText","nzOkText","nzAllowEmpty","ngModel","ngModelChange","closePanel"]],template:function(Ee,Ie){1&Ee&&(t.TgZ(0,"div",0)(1,"input",1,2),t.NdJ("ngModelChange",function(pt){return Ie.inputValue=pt})("focus",function(){return Ie.onFocus(!0)})("blur",function(){return Ie.onFocus(!1)})("keyup.enter",function(){return Ie.onKeyupEnter()})("keyup.escape",function(){return Ie.onKeyupEsc()})("ngModelChange",function(pt){return Ie.onInputChange(pt)}),t.ALo(3,"async"),t.qZA(),t.TgZ(4,"span",3),t.YNc(5,ee,2,1,"ng-container",4),t.YNc(6,Be,1,1,"nz-form-item-feedback-icon",5),t.qZA(),t.YNc(7,Re,2,2,"span",6),t.qZA(),t.YNc(8,ct,5,21,"ng-template",7),t.NdJ("detach",function(){return Ie.close()})("overlayOutsideClick",function(pt){return Ie.onClickOutside(pt)})),2&Ee&&(t.xp6(1),t.Q6J("size",Ie.inputSize)("placeholder",Ie.nzPlaceHolder||t.lcZ(3,14,Ie.i18nPlaceHolder$))("ngModel",Ie.inputValue)("disabled",Ie.nzDisabled)("readOnly",Ie.nzInputReadOnly),t.uIk("id",Ie.nzId),t.xp6(4),t.Q6J("nzStringTemplateOutlet",Ie.nzSuffixIcon),t.xp6(1),t.Q6J("ngIf",Ie.hasFeedback&&!!Ie.status),t.xp6(1),t.Q6J("ngIf",Ie.nzAllowEmpty&&!Ie.nzDisabled&&Ie.value),t.xp6(1),t.Q6J("cdkConnectedOverlayHasBackdrop",Ie.nzBackdrop)("cdkConnectedOverlayPositions",Ie.overlayPositions)("cdkConnectedOverlayOrigin",Ie.origin)("cdkConnectedOverlayOpen",Ie.nzOpen)("cdkConnectedOverlayTransformOriginOn",".ant-picker-dropdown"))},dependencies:[_.mk,_.O5,i.Fj,i.JJ,i.On,n.pI,P.Ls,S.hQ,A.f,k.w,D.w_,je,_.Ov],encapsulation:2,data:{animation:[g.mF]},changeDetection:0})}return(0,e.gn)([(0,d.oS)()],de.prototype,"nzHourStep",void 0),(0,e.gn)([(0,d.oS)()],de.prototype,"nzMinuteStep",void 0),(0,e.gn)([(0,d.oS)()],de.prototype,"nzSecondStep",void 0),(0,e.gn)([(0,d.oS)()],de.prototype,"nzClearText",void 0),(0,e.gn)([(0,d.oS)()],de.prototype,"nzNowText",void 0),(0,e.gn)([(0,d.oS)()],de.prototype,"nzOkText",void 0),(0,e.gn)([(0,d.oS)()],de.prototype,"nzPopupClassName",void 0),(0,e.gn)([(0,d.oS)()],de.prototype,"nzFormat",void 0),(0,e.gn)([(0,d.oS)(),(0,f.yF)()],de.prototype,"nzUse12Hours",void 0),(0,e.gn)([(0,d.oS)()],de.prototype,"nzSuffixIcon",void 0),(0,e.gn)([(0,f.yF)()],de.prototype,"nzHideDisabledOptions",void 0),(0,e.gn)([(0,d.oS)(),(0,f.yF)()],de.prototype,"nzAllowEmpty",void 0),(0,e.gn)([(0,f.yF)()],de.prototype,"nzDisabled",void 0),(0,e.gn)([(0,f.yF)()],de.prototype,"nzAutoFocus",void 0),(0,e.gn)([(0,d.oS)()],de.prototype,"nzBackdrop",void 0),(0,e.gn)([(0,f.yF)()],de.prototype,"nzBorderless",void 0),(0,e.gn)([(0,f.yF)()],de.prototype,"nzInputReadOnly",void 0),de})(),we=(()=>{class de{static#e=this.\u0275fac=function(Ee){return new(Ee||de)};static#t=this.\u0275mod=t.oAB({type:de});static#n=this.\u0275inj=t.cJS({imports:[x.vT,_.ez,i.u5,y.YI,n.U8,P.PV,S.e4,A.T,$.sL,D.mJ]})}return de})()},96109:(nt,I,o)=>{"use strict";o.d(I,{Mg:()=>P,SY:()=>k,XK:()=>R,cg:()=>$,pu:()=>A});var e=o(97582),n=o(65879),t=o(64194),i=o(13324),l=o(27754),C=o(78645),E=o(76410),u=o(93997),z=o(59773),M=o(32181),h=o(5177),v=o(85448),g=o(331),d=o(83064),p=o(49388),f=o(96814),y=o(33651),T=o(8324);const x=["overlay"];function D(W,ze){if(1&W&&(n.ynx(0),n._uU(1),n.BQk()),2&W){const Y=n.oxw(2);n.xp6(1),n.Oqu(Y.nzTitle)}}function _(W,ze){if(1&W&&(n.TgZ(0,"div",2)(1,"div",3)(2,"div",4),n._UZ(3,"span",5),n.qZA(),n.TgZ(4,"div",6),n.YNc(5,D,2,1,"ng-container",7),n.qZA()()()),2&W){const Y=n.oxw();n.ekj("ant-tooltip-rtl","rtl"===Y.dir),n.Q6J("ngClass",Y._classMap)("ngStyle",Y.nzOverlayStyle)("@.disabled",!(null==Y.noAnimation||!Y.noAnimation.nzNoAnimation))("nzNoAnimation",null==Y.noAnimation?null:Y.noAnimation.nzNoAnimation)("@zoomBigMotion","active"),n.xp6(3),n.Q6J("ngStyle",Y._contentStyleMap),n.xp6(1),n.Q6J("ngStyle",Y._contentStyleMap),n.xp6(1),n.Q6J("nzStringTemplateOutlet",Y.nzTitle)("nzStringTemplateOutletContext",Y.nzTitleContext)}}let P=(()=>{class W{get _title(){return this.title||this.directiveTitle||null}get _content(){return this.content||this.directiveContent||null}get _trigger(){return typeof this.trigger<"u"?this.trigger:"hover"}get _placement(){const Y=this.placement;return Array.isArray(Y)&&Y.length>0?Y:"string"==typeof Y&&Y?[Y]:["top"]}get _visible(){return(typeof this.visible<"u"?this.visible:this.internalVisible)||!1}get _mouseEnterDelay(){return this.mouseEnterDelay||.15}get _mouseLeaveDelay(){return this.mouseLeaveDelay||.1}get _overlayClassName(){return this.overlayClassName||null}get _overlayStyle(){return this.overlayStyle||null}getProxyPropertyMap(){return{noAnimation:["noAnimation",()=>!!this.noAnimation]}}constructor(Y,G,V,K,te,ne){this.elementRef=Y,this.hostView=G,this.resolver=V,this.renderer=K,this.noAnimation=te,this.nzConfigService=ne,this.visibleChange=new n.vpe,this.internalVisible=!1,this.destroy$=new C.x,this.triggerDisposables=[]}ngOnChanges(Y){const{trigger:G}=Y;G&&!G.isFirstChange()&&this.registerTriggers(),this.component&&this.updatePropertiesByChanges(Y)}ngAfterViewInit(){this.createComponent(),this.registerTriggers()}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete(),this.clearTogglingTimer(),this.removeTriggerListeners()}show(){this.component?.show()}hide(){this.component?.hide()}updatePosition(){this.component&&this.component.updatePosition()}createComponent(){const Y=this.componentRef;this.component=Y.instance,this.renderer.removeChild(this.renderer.parentNode(this.elementRef.nativeElement),Y.location.nativeElement),this.component.setOverlayOrigin(this.origin||this.elementRef),this.initProperties();const G=this.component.nzVisibleChange.pipe((0,u.x)());G.pipe((0,z.R)(this.destroy$)).subscribe(V=>{this.internalVisible=V,this.visibleChange.emit(V)}),G.pipe((0,M.h)(V=>V),(0,h.g)(0,E.E),(0,M.h)(()=>!!this.component?.overlay?.overlayRef),(0,z.R)(this.destroy$)).subscribe(()=>{this.component?.updatePosition()})}registerTriggers(){const Y=this.elementRef.nativeElement,G=this.trigger;if(this.removeTriggerListeners(),"hover"===G){let V;this.triggerDisposables.push(this.renderer.listen(Y,"mouseenter",()=>{this.delayEnterLeave(!0,!0,this._mouseEnterDelay)})),this.triggerDisposables.push(this.renderer.listen(Y,"mouseleave",()=>{this.delayEnterLeave(!0,!1,this._mouseLeaveDelay),this.component?.overlay.overlayRef&&!V&&(V=this.component.overlay.overlayRef.overlayElement,this.triggerDisposables.push(this.renderer.listen(V,"mouseenter",()=>{this.delayEnterLeave(!1,!0,this._mouseEnterDelay)})),this.triggerDisposables.push(this.renderer.listen(V,"mouseleave",()=>{this.delayEnterLeave(!1,!1,this._mouseLeaveDelay)})))}))}else"focus"===G?(this.triggerDisposables.push(this.renderer.listen(Y,"focusin",()=>this.show())),this.triggerDisposables.push(this.renderer.listen(Y,"focusout",()=>this.hide()))):"click"===G&&this.triggerDisposables.push(this.renderer.listen(Y,"click",V=>{V.preventDefault(),this.show()}))}updatePropertiesByChanges(Y){this.updatePropertiesByKeys(Object.keys(Y))}updatePropertiesByKeys(Y){const G={title:["nzTitle",()=>this._title],directiveTitle:["nzTitle",()=>this._title],content:["nzContent",()=>this._content],directiveContent:["nzContent",()=>this._content],trigger:["nzTrigger",()=>this._trigger],placement:["nzPlacement",()=>this._placement],visible:["nzVisible",()=>this._visible],mouseEnterDelay:["nzMouseEnterDelay",()=>this._mouseEnterDelay],mouseLeaveDelay:["nzMouseLeaveDelay",()=>this._mouseLeaveDelay],overlayClassName:["nzOverlayClassName",()=>this._overlayClassName],overlayStyle:["nzOverlayStyle",()=>this._overlayStyle],arrowPointAtCenter:["nzArrowPointAtCenter",()=>this.arrowPointAtCenter],...this.getProxyPropertyMap()};(Y||Object.keys(G).filter(V=>!V.startsWith("directive"))).forEach(V=>{if(G[V]){const[K,te]=G[V];this.updateComponentValue(K,te())}}),this.component?.updateByDirective()}initProperties(){this.updatePropertiesByKeys()}updateComponentValue(Y,G){typeof G<"u"&&(this.component[Y]=G)}delayEnterLeave(Y,G,V=-1){this.delayTimer?this.clearTogglingTimer():V>0?this.delayTimer=setTimeout(()=>{this.delayTimer=void 0,G?this.show():this.hide()},1e3*V):G&&Y?this.show():this.hide()}removeTriggerListeners(){this.triggerDisposables.forEach(Y=>Y()),this.triggerDisposables.length=0}clearTogglingTimer(){this.delayTimer&&(clearTimeout(this.delayTimer),this.delayTimer=void 0)}static#e=this.\u0275fac=function(G){return new(G||W)(n.Y36(n.SBq),n.Y36(n.s_b),n.Y36(n._Vd),n.Y36(n.Qsj),n.Y36(g.P),n.Y36(d.jY))};static#t=this.\u0275dir=n.lG2({type:W,features:[n.TTD]})}return W})(),S=(()=>{class W{set nzVisible(Y){const G=(0,l.sw)(Y);this._visible!==G&&(this._visible=G,this.nzVisibleChange.next(G))}get nzVisible(){return this._visible}set nzTrigger(Y){this._trigger=Y}get nzTrigger(){return this._trigger}set nzPlacement(Y){const G=Y.map(V=>v.yW[V]);this._positions=[...G,...v.Ek]}constructor(Y,G,V){this.cdr=Y,this.directionality=G,this.noAnimation=V,this.nzTitle=null,this.nzContent=null,this.nzArrowPointAtCenter=!1,this.nzOverlayStyle={},this.nzBackdrop=!1,this.nzVisibleChange=new C.x,this._visible=!1,this._trigger="hover",this.preferredPlacement="top",this.dir="ltr",this._classMap={},this._prefix="ant-tooltip",this._positions=[...v.Ek],this.destroy$=new C.x}ngOnInit(){this.directionality.change?.pipe((0,z.R)(this.destroy$)).subscribe(Y=>{this.dir=Y,this.cdr.detectChanges()}),this.dir=this.directionality.value}ngOnDestroy(){this.nzVisibleChange.complete(),this.destroy$.next(),this.destroy$.complete()}show(){this.nzVisible||(this.isEmpty()||(this.nzVisible=!0,this.nzVisibleChange.next(!0),this.cdr.detectChanges()),this.origin&&this.overlay&&this.overlay.overlayRef&&"rtl"===this.overlay.overlayRef.getDirection()&&this.overlay.overlayRef.setDirection("ltr"))}hide(){this.nzVisible&&(this.nzVisible=!1,this.nzVisibleChange.next(!1),this.cdr.detectChanges())}updateByDirective(){this.updateStyles(),this.cdr.detectChanges(),Promise.resolve().then(()=>{this.updatePosition(),this.updateVisibilityByTitle()})}updatePosition(){this.origin&&this.overlay&&this.overlay.overlayRef&&this.overlay.overlayRef.updatePosition()}onPositionChange(Y){this.preferredPlacement=(0,v.d_)(Y),this.updateStyles(),this.cdr.detectChanges()}setOverlayOrigin(Y){this.origin=Y,this.cdr.markForCheck()}onClickOutside(Y){!this.origin.nativeElement.contains(Y.target)&&null!==this.nzTrigger&&this.hide()}updateVisibilityByTitle(){this.isEmpty()&&this.hide()}updateStyles(){this._classMap={[this.nzOverlayClassName]:!0,[`${this._prefix}-placement-${this.preferredPlacement}`]:!0}}static#e=this.\u0275fac=function(G){return new(G||W)(n.Y36(n.sBO),n.Y36(p.Is,8),n.Y36(g.P))};static#t=this.\u0275dir=n.lG2({type:W,viewQuery:function(G,V){if(1&G&&n.Gf(x,5),2&G){let K;n.iGM(K=n.CRH())&&(V.overlay=K.first)}}})}return W})();function A(W){return!(W instanceof n.Rgc||""!==W&&(0,l.DX)(W))}let k=(()=>{class W extends P{constructor(Y,G,V,K,te){super(Y,G,V,K,te),this.titleContext=null,this.trigger="hover",this.placement="top",this.visibleChange=new n.vpe,this.componentRef=this.hostView.createComponent(R)}getProxyPropertyMap(){return{...super.getProxyPropertyMap(),nzTooltipColor:["nzColor",()=>this.nzTooltipColor],nzTooltipTitleContext:["nzTitleContext",()=>this.titleContext]}}static#e=this.\u0275fac=function(G){return new(G||W)(n.Y36(n.SBq),n.Y36(n.s_b),n.Y36(n._Vd),n.Y36(n.Qsj),n.Y36(g.P,9))};static#t=this.\u0275dir=n.lG2({type:W,selectors:[["","nz-tooltip",""]],hostVars:2,hostBindings:function(G,V){2&G&&n.ekj("ant-tooltip-open",V.visible)},inputs:{title:["nzTooltipTitle","title"],titleContext:["nzTooltipTitleContext","titleContext"],directiveTitle:["nz-tooltip","directiveTitle"],trigger:["nzTooltipTrigger","trigger"],placement:["nzTooltipPlacement","placement"],origin:["nzTooltipOrigin","origin"],visible:["nzTooltipVisible","visible"],mouseEnterDelay:["nzTooltipMouseEnterDelay","mouseEnterDelay"],mouseLeaveDelay:["nzTooltipMouseLeaveDelay","mouseLeaveDelay"],overlayClassName:["nzTooltipOverlayClassName","overlayClassName"],overlayStyle:["nzTooltipOverlayStyle","overlayStyle"],arrowPointAtCenter:["nzTooltipArrowPointAtCenter","arrowPointAtCenter"],nzTooltipColor:"nzTooltipColor"},outputs:{visibleChange:"nzTooltipVisibleChange"},exportAs:["nzTooltip"],features:[n.qOj]})}return(0,e.gn)([(0,l.yF)()],W.prototype,"arrowPointAtCenter",void 0),W})(),R=(()=>{class W extends S{constructor(Y,G,V){super(Y,G,V),this.nzTitle=null,this.nzTitleContext=null,this._contentStyleMap={}}isEmpty(){return A(this.nzTitle)}updateStyles(){const Y=this.nzColor&&(0,i.o2)(this.nzColor);this._classMap={[this.nzOverlayClassName]:!0,[`${this._prefix}-placement-${this.preferredPlacement}`]:!0,[`${this._prefix}-${this.nzColor}`]:Y},this._contentStyleMap={backgroundColor:this.nzColor&&!Y?this.nzColor:null}}static#e=this.\u0275fac=function(G){return new(G||W)(n.Y36(n.sBO),n.Y36(p.Is,8),n.Y36(g.P,9))};static#t=this.\u0275cmp=n.Xpm({type:W,selectors:[["nz-tooltip"]],exportAs:["nzTooltipComponent"],features:[n.qOj],decls:2,vars:5,consts:[["cdkConnectedOverlay","","nzConnectedOverlay","",3,"cdkConnectedOverlayOrigin","cdkConnectedOverlayOpen","cdkConnectedOverlayPositions","cdkConnectedOverlayPush","nzArrowPointAtCenter","overlayOutsideClick","detach","positionChange"],["overlay","cdkConnectedOverlay"],[1,"ant-tooltip",3,"ngClass","ngStyle","nzNoAnimation"],[1,"ant-tooltip-content"],[1,"ant-tooltip-arrow"],[1,"ant-tooltip-arrow-content",3,"ngStyle"],[1,"ant-tooltip-inner",3,"ngStyle"],[4,"nzStringTemplateOutlet","nzStringTemplateOutletContext"]],template:function(G,V){1&G&&(n.YNc(0,_,6,11,"ng-template",0,1,n.W1O),n.NdJ("overlayOutsideClick",function(te){return V.onClickOutside(te)})("detach",function(){return V.hide()})("positionChange",function(te){return V.onPositionChange(te)})),2&G&&n.Q6J("cdkConnectedOverlayOrigin",V.origin)("cdkConnectedOverlayOpen",V._visible)("cdkConnectedOverlayPositions",V._positions)("cdkConnectedOverlayPush",!0)("nzArrowPointAtCenter",V.nzArrowPointAtCenter)},dependencies:[f.mk,f.PC,y.pI,T.f,v.hQ,g.P],encapsulation:2,data:{animation:[t.$C]},changeDetection:0})}return W})(),$=(()=>{class W{static#e=this.\u0275fac=function(G){return new(G||W)};static#t=this.\u0275mod=n.oAB({type:W});static#n=this.\u0275inj=n.cJS({imports:[p.vT,f.ez,y.U8,T.T,v.e4,g.g]})}return W})()},10358:(nt,I,o)=>{"use strict";o.d(I,{BC:()=>mt,st:()=>we});var e=o(65879),n=o(65592),t=o(63019),i=o(92438),l=o(78645),C=o(22096),E=o(27921),u=o(94664),z=o(93997),M=o(42460),h=o(37398),v=o(59773),g=o(62612),d=o(96814),p=o(60804),f=o(60095),y=o(70855),T=o(90551),x=o(97582),D=o(27754),_=o(12131),P=o(49388),S=o(50883),A=o(42840),k=o(41958),R=o(20824);const $=["nz-transfer-search",""];function W(de,U){if(1&de){const B=e.EpF();e.TgZ(0,"span",4),e.NdJ("click",function(){e.CHM(B);const Ie=e.oxw();return e.KtG(Ie._clear())}),e._UZ(1,"span",5),e.qZA()}}const ze=function(de){return{"ant-input-disabled":de}},Y=["headerCheckbox"],G=["checkboxes"];function V(de,U){if(1&de&&(e.ynx(0),e._uU(1),e.BQk()),2&de){const B=e.oxw().$implicit;e.xp6(1),e.Oqu(B.title)}}function K(de,U){}const te=function(de){return{"ant-transfer-list-content-item-disabled":de}},ne=function(de){return{$implicit:de}};function fe(de,U){if(1&de){const B=e.EpF();e.TgZ(0,"li",13),e.NdJ("click",function(){const Ne=e.CHM(B).$implicit,pt=e.oxw(3);return e.KtG(pt.onItemSelect(Ne))}),e.TgZ(1,"label",14,15),e.NdJ("nzCheckedChange",function(){const Ne=e.CHM(B).$implicit,pt=e.oxw(3);return e.KtG(pt.onItemSelect(Ne))}),e.YNc(3,V,2,1,"ng-container",7),e.YNc(4,K,0,0,"ng-template",16,17,e.W1O),e.qZA()()}if(2&de){const B=U.$implicit,Ee=e.MAs(5),Ie=e.oxw(3);e.Q6J("ngClass",e.VKq(7,te,Ie.disabled||B.disabled)),e.xp6(1),e.Q6J("nzChecked",B.checked)("nzDisabled",Ie.disabled||B.disabled),e.xp6(2),e.Q6J("ngIf",!Ie.render)("ngIfElse",Ee),e.xp6(1),e.Q6J("ngTemplateOutlet",Ie.render)("ngTemplateOutletContext",e.VKq(9,ne,B))}}function re(de,U){if(1&de&&(e.TgZ(0,"ul",11),e.YNc(1,fe,6,11,"li",12),e.qZA()),2&de){const B=e.oxw(2);e.xp6(1),e.Q6J("ngForOf",B.validData)("ngForTrackBy",B.trackByHide)}}function be(de,U){if(1&de&&(e.TgZ(0,"div",18),e._UZ(1,"nz-embed-empty",19),e.qZA()),2&de){const B=e.oxw(2);e.xp6(1),e.Q6J("nzComponentName","transfer")("specificContent",B.notFoundContent)}}function le(de,U){if(1&de&&(e.YNc(0,re,2,2,"ul",9),e.YNc(1,be,2,2,"div",10)),2&de){const B=e.oxw();e.Q6J("ngIf",B.stat.shownCount>0),e.xp6(1),e.Q6J("ngIf",0===B.stat.shownCount)}}function ce(de,U){if(1&de){const B=e.EpF();e.TgZ(0,"label",20,21),e.NdJ("nzCheckedChange",function(Ie){e.CHM(B);const Ne=e.oxw();return e.KtG(Ne.onItemSelectAll(Ie))}),e.qZA()}if(2&de){const B=e.oxw();e.Q6J("nzChecked",B.stat.checkAll)("nzIndeterminate",B.stat.checkHalf)("nzDisabled",0===B.stat.shownCount||B.disabled)}}function Q(de,U){if(1&de&&(e.TgZ(0,"span",22),e._uU(1),e.qZA()),2&de){const B=e.oxw();e.xp6(1),e.Oqu(B.titleText)}}function ie(de,U){if(1&de){const B=e.EpF();e.TgZ(0,"div",23)(1,"span",24),e.NdJ("valueChanged",function(Ie){e.CHM(B);const Ne=e.oxw();return e.KtG(Ne.handleFilter(Ie))})("valueClear",function(){e.CHM(B);const Ie=e.oxw();return e.KtG(Ie.handleClear())}),e.qZA()()}if(2&de){const B=e.oxw();e.xp6(1),e.Q6J("placeholder",B.searchPlaceholder)("disabled",B.disabled)("value",B.filter)}}function ae(de,U){1&de&&e.GkF(0)}const xe=function(de,U,B,Ee,Ie,Ne){return{$implicit:de,direction:U,disabled:B,onItemSelectAll:Ee,onItemSelect:Ie,stat:Ne}};function Me(de,U){if(1&de&&(e.ynx(0),e.TgZ(1,"div",25),e.YNc(2,ae,1,0,"ng-container",26),e.qZA(),e.BQk()),2&de){const B=e.oxw();e.xp6(2),e.Q6J("ngTemplateOutlet",B.renderList)("ngTemplateOutletContext",e.HTZ(2,xe,B.validData,B.direction,B.disabled,B.onItemSelectAll,B.onItemSelect,B.stat))}}function Ye(de,U){}function q(de,U){if(1&de&&(e.TgZ(0,"div",27),e.YNc(1,Ye,0,0,"ng-template",16),e.qZA()),2&de){const B=e.oxw();e.xp6(1),e.Q6J("ngTemplateOutlet",B.footer)("ngTemplateOutletContext",e.VKq(2,ne,B.direction))}}const ve=function(de){return{"ant-transfer__nodata":de}};function ee(de,U){if(1&de&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&de){const B=e.oxw(2);e.xp6(1),e.Oqu(B.nzOperations[1])}}function Be(de,U){if(1&de&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&de){const B=e.oxw(2);e.xp6(1),e.Oqu(B.nzOperations[0])}}function Re(de,U){if(1&de){const B=e.EpF();e.TgZ(0,"div",3)(1,"button",4),e.NdJ("click",function(){e.CHM(B);const Ie=e.oxw();return e.KtG(Ie.moveToLeft())}),e._UZ(2,"span",5),e.YNc(3,ee,2,1,"span",6),e.qZA(),e.TgZ(4,"button",4),e.NdJ("click",function(){e.CHM(B);const Ie=e.oxw();return e.KtG(Ie.moveToRight())}),e._UZ(5,"span",7),e.YNc(6,Be,2,1,"span",6),e.qZA()()}if(2&de){const B=e.oxw();e.xp6(1),e.Q6J("disabled",B.nzDisabled||!B.leftActive)("nzType","primary")("nzSize","small"),e.xp6(2),e.Q6J("ngIf",B.nzOperations[1]),e.xp6(1),e.Q6J("disabled",B.nzDisabled||!B.rightActive)("nzType","primary")("nzSize","small"),e.xp6(2),e.Q6J("ngIf",B.nzOperations[0])}}function ct(de,U){if(1&de&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&de){const B=e.oxw(2);e.xp6(1),e.Oqu(B.nzOperations[0])}}function Ae(de,U){if(1&de&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&de){const B=e.oxw(2);e.xp6(1),e.Oqu(B.nzOperations[1])}}function Mt(de,U){if(1&de){const B=e.EpF();e.TgZ(0,"div",3)(1,"button",4),e.NdJ("click",function(){e.CHM(B);const Ie=e.oxw();return e.KtG(Ie.moveToRight())}),e._UZ(2,"span",5),e.YNc(3,ct,2,1,"span",6),e.qZA(),e.TgZ(4,"button",4),e.NdJ("click",function(){e.CHM(B);const Ie=e.oxw();return e.KtG(Ie.moveToLeft())}),e._UZ(5,"span",7),e.YNc(6,Ae,2,1,"span",6),e.qZA()()}if(2&de){const B=e.oxw();e.xp6(1),e.Q6J("disabled",B.nzDisabled||!B.rightActive)("nzType","primary")("nzSize","small"),e.xp6(2),e.Q6J("ngIf",B.nzOperations[0]),e.xp6(1),e.Q6J("disabled",B.nzDisabled||!B.leftActive)("nzType","primary")("nzSize","small"),e.xp6(2),e.Q6J("ngIf",B.nzOperations[1])}}let je=(()=>{class de{constructor(B){this.cdr=B,this.disabled=!1,this.valueChanged=new e.vpe,this.valueClear=new e.vpe}_handle(){this.valueChanged.emit(this.value)}_clear(){this.disabled||(this.value="",this.valueClear.emit())}ngOnChanges(){this.cdr.detectChanges()}static#e=this.\u0275fac=function(Ee){return new(Ee||de)(e.Y36(e.sBO))};static#t=this.\u0275cmp=e.Xpm({type:de,selectors:[["","nz-transfer-search",""]],inputs:{placeholder:"placeholder",value:"value",disabled:"disabled"},outputs:{valueChanged:"valueChanged",valueClear:"valueClear"},exportAs:["nzTransferSearch"],features:[e.TTD],attrs:$,decls:4,vars:7,consts:[[1,"ant-input-prefix"],["nz-icon","","nzType","search"],[1,"ant-input",3,"ngModel","disabled","placeholder","ngClass","ngModelChange"],["class","ant-input-suffix",3,"click",4,"ngIf"],[1,"ant-input-suffix",3,"click"],["nz-icon","","nzType","close-circle",1,"ant-input-clear-icon"]],template:function(Ee,Ie){1&Ee&&(e.TgZ(0,"span",0),e._UZ(1,"span",1),e.qZA(),e.TgZ(2,"input",2),e.NdJ("ngModelChange",function(pt){return Ie.value=pt})("ngModelChange",function(){return Ie._handle()}),e.qZA(),e.YNc(3,W,2,0,"span",3)),2&Ee&&(e.xp6(2),e.Q6J("ngModel",Ie.value)("disabled",Ie.disabled)("placeholder",Ie.placeholder)("ngClass",e.VKq(5,ze,Ie.disabled)),e.xp6(1),e.Q6J("ngIf",Ie.value&&Ie.value.length>0))},dependencies:[d.mk,d.O5,f.Fj,f.JJ,f.On,y.w,T.Ls],encapsulation:2,changeDetection:0})}return de})(),ot=(()=>{class de{get validData(){return this.dataSource.filter(B=>!B.hide)}trackByHide(B,Ee){return Ee.hide}updateCheckStatus(){const B=this.dataSource.filter(Ee=>!Ee.disabled).length;this.stat.checkCount=this.dataSource.filter(Ee=>Ee.checked&&!Ee.disabled).length,this.stat.shownCount=this.validData.length,this.stat.checkAll=B>0&&B===this.stat.checkCount,this.stat.checkHalf=this.stat.checkCount>0&&!this.stat.checkAll,this.headerCheckbox&&(this.headerCheckbox.nzChecked=this.stat.checkAll)}handleFilter(B){this.filter=B,this.dataSource.forEach(Ee=>{Ee.hide=B.length>0&&!this.matchFilter(B,Ee)}),this.stat.shownCount=this.validData.length,this.filterChange.emit({direction:this.direction,value:B})}handleClear(){this.handleFilter("")}matchFilter(B,Ee){return this.filterOption?this.filterOption(B,Ee):Ee.title.includes(B)}constructor(B,Ee){this.ngZone=B,this.cdr=Ee,this.direction="left",this.titleText="",this.showSelectAll=!0,this.dataSource=[],this.itemUnit="",this.itemsUnit="",this.filter="",this.disabled=!1,this.renderList=null,this.render=null,this.footer=null,this.handleSelectAll=new e.vpe,this.handleSelect=new e.vpe,this.filterChange=new e.vpe,this.stat={checkAll:!1,checkHalf:!1,checkCount:0,shownCount:0},this.onItemSelect=Ie=>{this.disabled||Ie.disabled||(Ie.checked=!Ie.checked,this.updateCheckStatus(),this.handleSelect.emit(Ie))},this.onItemSelectAll=Ie=>{this.dataSource.forEach(Ne=>{!Ne.disabled&&!Ne.hide&&(Ne.checked=Ie)}),this.updateCheckStatus(),this.handleSelectAll.emit(Ie)}}markForCheck(){this.updateCheckStatus(),this.cdr.markForCheck()}ngAfterViewInit(){this.checkboxes.changes.pipe((0,E.O)(this.checkboxes),(0,u.w)(()=>{const B=this.checkboxes.toArray();return new n.y(Ee=>this.ngZone.runOutsideAngular(()=>(0,t.T)(...B.map(Ie=>(0,i.R)(Ie.nativeElement,"click"))).subscribe(Ee)))})).subscribe(B=>{B.stopPropagation()})}static#e=this.\u0275fac=function(Ee){return new(Ee||de)(e.Y36(e.R0b),e.Y36(e.sBO))};static#t=this.\u0275cmp=e.Xpm({type:de,selectors:[["nz-transfer-list"]],viewQuery:function(Ee,Ie){if(1&Ee&&(e.Gf(Y,5,g.Ie),e.Gf(G,5,e.SBq)),2&Ee){let Ne;e.iGM(Ne=e.CRH())&&(Ie.headerCheckbox=Ne.first),e.iGM(Ne=e.CRH())&&(Ie.checkboxes=Ne)}},hostAttrs:[1,"ant-transfer-list"],hostVars:2,hostBindings:function(Ee,Ie){2&Ee&&e.ekj("ant-transfer-list-with-footer",!!Ie.footer)},inputs:{direction:"direction",titleText:"titleText",showSelectAll:"showSelectAll",dataSource:"dataSource",itemUnit:"itemUnit",itemsUnit:"itemsUnit",filter:"filter",disabled:"disabled",showSearch:"showSearch",searchPlaceholder:"searchPlaceholder",notFoundContent:"notFoundContent",filterOption:"filterOption",renderList:"renderList",render:"render",footer:"footer"},outputs:{handleSelectAll:"handleSelectAll",handleSelect:"handleSelect",filterChange:"filterChange"},exportAs:["nzTransferList"],decls:12,vars:14,consts:[["defaultRenderList",""],[1,"ant-transfer-list-header"],["class","ant-transfer-list-checkbox","nz-checkbox","",3,"nzChecked","nzIndeterminate","nzDisabled","nzCheckedChange",4,"ngIf"],[1,"ant-transfer-list-header-selected"],["class","ant-transfer-list-header-title",4,"ngIf"],[3,"ngClass"],["class","ant-transfer-list-body-search-wrapper",4,"ngIf"],[4,"ngIf","ngIfElse"],["class","ant-transfer-list-footer",4,"ngIf"],["class","ant-transfer-list-content",4,"ngIf"],["class","ant-transfer-list-body-not-found",4,"ngIf"],[1,"ant-transfer-list-content"],["class","ant-transfer-list-content-item",3,"ngClass","click",4,"ngFor","ngForOf","ngForTrackBy"],[1,"ant-transfer-list-content-item",3,"ngClass","click"],["nz-checkbox","",3,"nzChecked","nzDisabled","nzCheckedChange"],["checkboxes",""],[3,"ngTemplateOutlet","ngTemplateOutletContext"],["renderContainer",""],[1,"ant-transfer-list-body-not-found"],[3,"nzComponentName","specificContent"],["nz-checkbox","",1,"ant-transfer-list-checkbox",3,"nzChecked","nzIndeterminate","nzDisabled","nzCheckedChange"],["headerCheckbox",""],[1,"ant-transfer-list-header-title"],[1,"ant-transfer-list-body-search-wrapper"],["nz-transfer-search","",1,"ant-input-affix-wrapper","ant-transfer-list-search",3,"placeholder","disabled","value","valueChanged","valueClear"],[1,"ant-transfer-list-body-customize-wrapper"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"ant-transfer-list-footer"]],template:function(Ee,Ie){if(1&Ee&&(e.YNc(0,le,2,2,"ng-template",null,0,e.W1O),e.TgZ(2,"div",1),e.YNc(3,ce,2,3,"label",2),e.TgZ(4,"span",3)(5,"span"),e._uU(6),e.qZA()(),e.YNc(7,Q,2,1,"span",4),e.qZA(),e.TgZ(8,"div",5),e.YNc(9,ie,2,3,"div",6),e.YNc(10,Me,3,9,"ng-container",7),e.qZA(),e.YNc(11,q,2,4,"div",8)),2&Ee){const Ne=e.MAs(1);e.xp6(3),e.Q6J("ngIf",Ie.showSelectAll),e.xp6(3),e.AsE(" ",(Ie.stat.checkCount>0?Ie.stat.checkCount+"/":"")+Ie.stat.shownCount," ",Ie.validData.length>1?Ie.itemsUnit:Ie.itemUnit," "),e.xp6(1),e.Q6J("ngIf",Ie.titleText),e.xp6(1),e.Tol(Ie.showSearch?"ant-transfer-list-body ant-transfer-list-body-with-search":"ant-transfer-list-body"),e.Q6J("ngClass",e.VKq(12,ve,0===Ie.stat.shownCount)),e.xp6(1),e.Q6J("ngIf",Ie.showSearch),e.xp6(1),e.Q6J("ngIf",Ie.renderList)("ngIfElse",Ne),e.xp6(1),e.Q6J("ngIf",Ie.footer)}},dependencies:[d.mk,d.sg,d.O5,d.tP,g.Ie,p.gB,je],encapsulation:2,changeDetection:0})}return de})(),mt=(()=>{class de{splitDataSource(){this.leftDataSource=[],this.rightDataSource=[],this.nzDataSource.forEach(B=>{"right"===B.direction?(B.direction="right",this.rightDataSource.push(B)):(B.direction="left",this.leftDataSource.push(B))})}getCheckedData(B){return this["left"===B?"leftDataSource":"rightDataSource"].filter(Ee=>Ee.checked)}handleSelect(B,Ee,Ie){const Ne=this.getCheckedData(B);this.updateOperationStatus(B,Ne.length),this.nzSelectChange.emit({direction:B,checked:Ee,list:Ne,item:Ie})}handleFilterChange(B){this.nzSearchChange.emit(B)}updateOperationStatus(B,Ee){this["right"===B?"leftActive":"rightActive"]=(typeof Ee>"u"?this.getCheckedData(B).filter(Ie=>!Ie.disabled).length:Ee)>0}moveTo(B){this.updateOperationStatus("left"===B?"right":"left",0);const Ne=("left"===B?this.rightDataSource:this.leftDataSource).filter(pt=>!0===pt.checked&&!pt.disabled);this.nzCanMove({direction:B,list:Ne}).subscribe(pt=>this.truthMoveTo(B,pt.filter(Dt=>!!Dt)),()=>Ne.forEach(pt=>pt.checked=!1))}truthMoveTo(B,Ee){const Ie="left"===B?"right":"left",Ne="left"===B?this.rightDataSource:this.leftDataSource,pt="left"===B?this.leftDataSource:this.rightDataSource;for(const Dt of Ee)Dt.checked=!1,Dt.hide=!1,Dt.direction=B,Ne.splice(Ne.indexOf(Dt),1);pt.splice(0,0,...Ee),this.updateOperationStatus(Ie),this.nzChange.emit({from:Ie,to:B,list:Ee}),this.markForCheckAllList()}constructor(B,Ee,Ie,Ne,pt,Dt,Lt){this.cdr=B,this.i18n=Ee,this.elementRef=Ie,this.renderer=Ne,this.directionality=pt,this.nzFormStatusService=Dt,this.nzFormNoStatusService=Lt,this.unsubscribe$=new l.x,this.leftFilter="",this.rightFilter="",this.dir="ltr",this.prefixCls="ant-transfer",this.statusCls={},this.hasFeedback=!1,this.nzDisabled=!1,this.nzDataSource=[],this.nzTitles=["",""],this.nzOperations=[],this.nzListStyle={},this.nzShowSelectAll=!0,this.nzCanMove=Ut=>(0,C.of)(Ut.list),this.nzRenderList=null,this.nzRender=null,this.nzFooter=null,this.nzShowSearch=!1,this.nzTargetKeys=[],this.nzSelectedKeys=[],this.nzStatus="",this.nzChange=new e.vpe,this.nzSearchChange=new e.vpe,this.nzSelectChange=new e.vpe,this.leftDataSource=[],this.rightDataSource=[],this.handleLeftSelectAll=Ut=>this.handleSelect("left",Ut),this.handleRightSelectAll=Ut=>this.handleSelect("right",Ut),this.handleLeftSelect=Ut=>this.handleSelect("left",!!Ut.checked,Ut),this.handleRightSelect=Ut=>this.handleSelect("right",!!Ut.checked,Ut),this.leftActive=!1,this.rightActive=!1,this.moveToLeft=()=>this.moveTo("left"),this.moveToRight=()=>this.moveTo("right")}markForCheckAllList(){this.lists&&this.lists.forEach(B=>B.markForCheck())}handleNzTargetKeys(){const B=(0,D.qo)(this.nzTargetKeys);this.leftDataSource.forEach(Ie=>{(Ie=>Ie.hasOwnProperty("key"))(Ie)&&-1!==B.indexOf(Ie.key)&&!Ie.disabled&&(Ie.checked=!0)}),this.moveToRight()}handleNzSelectedKeys(){const B=(0,D.qo)(this.nzSelectedKeys);this.nzDataSource.forEach(Ie=>{-1!==B.indexOf(Ie.key)&&(Ie.checked=!0)});const Ee=Ie=>!1===Ie.disabled&&!0===Ie.checked;this.rightActive=this.leftDataSource.some(Ee),this.leftActive=this.rightDataSource.some(Ee)}ngOnInit(){this.nzFormStatusService?.formStatusChanges.pipe((0,z.x)((B,Ee)=>B.status===Ee.status&&B.hasFeedback===Ee.hasFeedback),(0,M.M)(this.nzFormNoStatusService?this.nzFormNoStatusService.noFormStatus:(0,C.of)(!1)),(0,h.U)(([{status:B,hasFeedback:Ee},Ie])=>({status:Ie?"":B,hasFeedback:Ee})),(0,v.R)(this.unsubscribe$)).subscribe(({status:B,hasFeedback:Ee})=>{this.setStatusStyles(B,Ee)}),this.i18n.localeChange.pipe((0,v.R)(this.unsubscribe$)).subscribe(()=>{this.locale=this.i18n.getLocaleData("Transfer"),this.markForCheckAllList()}),this.dir=this.directionality.value,this.directionality.change?.pipe((0,v.R)(this.unsubscribe$)).subscribe(B=>{this.dir=B,this.cdr.detectChanges()})}ngOnChanges(B){const{nzStatus:Ee,nzDataSource:Ie,nzTargetKeys:Ne,nzSelectedKeys:pt}=B;Ie&&(this.splitDataSource(),this.updateOperationStatus("left"),this.updateOperationStatus("right"),this.cdr.detectChanges(),this.markForCheckAllList()),Ne&&this.handleNzTargetKeys(),pt&&this.handleNzSelectedKeys(),Ee&&this.setStatusStyles(this.nzStatus,this.hasFeedback)}ngOnDestroy(){this.unsubscribe$.next(),this.unsubscribe$.complete()}setStatusStyles(B,Ee){this.hasFeedback=Ee,this.cdr.markForCheck(),this.statusCls=(0,D.Zu)(this.prefixCls,B,Ee),Object.keys(this.statusCls).forEach(Ie=>{this.statusCls[Ie]?this.renderer.addClass(this.elementRef.nativeElement,Ie):this.renderer.removeClass(this.elementRef.nativeElement,Ie)})}static#e=this.\u0275fac=function(Ee){return new(Ee||de)(e.Y36(e.sBO),e.Y36(_.wi),e.Y36(e.SBq),e.Y36(e.Qsj),e.Y36(P.Is,8),e.Y36(S.kH,8),e.Y36(S.yW,8))};static#t=this.\u0275cmp=e.Xpm({type:de,selectors:[["nz-transfer"]],viewQuery:function(Ee,Ie){if(1&Ee&&e.Gf(ot,5),2&Ee){let Ne;e.iGM(Ne=e.CRH())&&(Ie.lists=Ne)}},hostAttrs:[1,"ant-transfer"],hostVars:6,hostBindings:function(Ee,Ie){2&Ee&&e.ekj("ant-transfer-rtl","rtl"===Ie.dir)("ant-transfer-disabled",Ie.nzDisabled)("ant-transfer-customize-list",Ie.nzRenderList)},inputs:{nzDisabled:"nzDisabled",nzDataSource:"nzDataSource",nzTitles:"nzTitles",nzOperations:"nzOperations",nzListStyle:"nzListStyle",nzShowSelectAll:"nzShowSelectAll",nzItemUnit:"nzItemUnit",nzItemsUnit:"nzItemsUnit",nzCanMove:"nzCanMove",nzRenderList:"nzRenderList",nzRender:"nzRender",nzFooter:"nzFooter",nzShowSearch:"nzShowSearch",nzFilterOption:"nzFilterOption",nzSearchPlaceholder:"nzSearchPlaceholder",nzNotFoundContent:"nzNotFoundContent",nzTargetKeys:"nzTargetKeys",nzSelectedKeys:"nzSelectedKeys",nzStatus:"nzStatus"},outputs:{nzChange:"nzChange",nzSearchChange:"nzSearchChange",nzSelectChange:"nzSelectChange"},exportAs:["nzTransfer"],features:[e.TTD],decls:4,vars:32,consts:[["data-direction","left","direction","left",1,"ant-transfer-list",3,"ngStyle","titleText","showSelectAll","dataSource","filter","filterOption","renderList","render","disabled","showSearch","searchPlaceholder","notFoundContent","itemUnit","itemsUnit","footer","filterChange","handleSelect","handleSelectAll"],["class","ant-transfer-operation",4,"ngIf"],["data-direction","right","direction","right",1,"ant-transfer-list",3,"ngStyle","titleText","showSelectAll","dataSource","filter","filterOption","renderList","render","disabled","showSearch","searchPlaceholder","notFoundContent","itemUnit","itemsUnit","footer","filterChange","handleSelect","handleSelectAll"],[1,"ant-transfer-operation"],["nz-button","","type","button",3,"disabled","nzType","nzSize","click"],["nz-icon","","nzType","left"],[4,"ngIf"],["nz-icon","","nzType","right"]],template:function(Ee,Ie){1&Ee&&(e.TgZ(0,"nz-transfer-list",0),e.NdJ("filterChange",function(pt){return Ie.handleFilterChange(pt)})("handleSelect",function(pt){return Ie.handleLeftSelect(pt)})("handleSelectAll",function(pt){return Ie.handleLeftSelectAll(pt)}),e.qZA(),e.YNc(1,Re,7,8,"div",1),e.YNc(2,Mt,7,8,"div",1),e.TgZ(3,"nz-transfer-list",2),e.NdJ("filterChange",function(pt){return Ie.handleFilterChange(pt)})("handleSelect",function(pt){return Ie.handleRightSelect(pt)})("handleSelectAll",function(pt){return Ie.handleRightSelectAll(pt)}),e.qZA()),2&Ee&&(e.Q6J("ngStyle",Ie.nzListStyle)("titleText",Ie.nzTitles[0])("showSelectAll",Ie.nzShowSelectAll)("dataSource",Ie.leftDataSource)("filter",Ie.leftFilter)("filterOption",Ie.nzFilterOption)("renderList",Ie.nzRenderList&&Ie.nzRenderList[0])("render",Ie.nzRender)("disabled",Ie.nzDisabled)("showSearch",Ie.nzShowSearch)("searchPlaceholder",Ie.nzSearchPlaceholder||(null==Ie.locale?null:Ie.locale.searchPlaceholder))("notFoundContent",Ie.nzNotFoundContent)("itemUnit",Ie.nzItemUnit||(null==Ie.locale?null:Ie.locale.itemUnit))("itemsUnit",Ie.nzItemsUnit||(null==Ie.locale?null:Ie.locale.itemsUnit))("footer",Ie.nzFooter),e.xp6(1),e.Q6J("ngIf","rtl"!==Ie.dir),e.xp6(1),e.Q6J("ngIf","rtl"===Ie.dir),e.xp6(1),e.Q6J("ngStyle",Ie.nzListStyle)("titleText",Ie.nzTitles[1])("showSelectAll",Ie.nzShowSelectAll)("dataSource",Ie.rightDataSource)("filter",Ie.rightFilter)("filterOption",Ie.nzFilterOption)("renderList",Ie.nzRenderList&&Ie.nzRenderList[1])("render",Ie.nzRender)("disabled",Ie.nzDisabled)("showSearch",Ie.nzShowSearch)("searchPlaceholder",Ie.nzSearchPlaceholder||(null==Ie.locale?null:Ie.locale.searchPlaceholder))("notFoundContent",Ie.nzNotFoundContent)("itemUnit",Ie.nzItemUnit||(null==Ie.locale?null:Ie.locale.itemUnit))("itemsUnit",Ie.nzItemsUnit||(null==Ie.locale?null:Ie.locale.itemsUnit))("footer",Ie.nzFooter))},dependencies:[d.O5,d.PC,A.ix,y.w,k.dQ,T.Ls,ot],encapsulation:2,changeDetection:0})}return(0,x.gn)([(0,D.yF)()],de.prototype,"nzDisabled",void 0),(0,x.gn)([(0,D.yF)()],de.prototype,"nzShowSelectAll",void 0),(0,x.gn)([(0,D.yF)()],de.prototype,"nzShowSearch",void 0),de})(),we=(()=>{class de{static#e=this.\u0275fac=function(Ee){return new(Ee||de)};static#t=this.\u0275mod=e.oAB({type:de});static#n=this.\u0275inj=e.cJS({imports:[P.vT,d.ez,f.u5,g.Wr,A.sL,R.o7,_.YI,T.PV,p.Xo]})}return de})()},80729:(nt,I,o)=>{"use strict";o.d(I,{zr:()=>Ge,cq:()=>Ke});var e=o(97582),n=o(36028),t=o(33651),i=o(65879),l=o(60095),C=o(78645),E=o(22096),u=o(63019),z=o(93997),M=o(42460),h=o(37398),v=o(59773),g=o(99397),d=o(32181),p=o(64194),f=o(83064),y=o(85448),T=o(56879),x=o(94197),D=o(27754),_=o(9691),P=o(49388),S=o(4300),A=o(331),k=o(50883),R=o(96814),$=o(205),W=o(84267),ze=o(8324),Y=o(90551),G=o(92438);function V(_e,it){if(1&_e&&i._UZ(0,"span"),2&_e){const b=it.index,N=i.oxw();i.ekj("ant-tree-indent-unit",!N.nzSelectMode)("ant-select-tree-indent-unit",N.nzSelectMode)("ant-select-tree-indent-unit-start",N.nzSelectMode&&N.nzIsStart[b])("ant-tree-indent-unit-start",!N.nzSelectMode&&N.nzIsStart[b])("ant-select-tree-indent-unit-end",N.nzSelectMode&&N.nzIsEnd[b])("ant-tree-indent-unit-end",!N.nzSelectMode&&N.nzIsEnd[b])}}const K=["builtin",""];function te(_e,it){if(1&_e&&(i.ynx(0),i._UZ(1,"span",4),i.BQk()),2&_e){const b=i.oxw(3);i.xp6(1),i.ekj("ant-select-tree-switcher-icon",b.nzSelectMode)("ant-tree-switcher-icon",!b.nzSelectMode)}}const ne=function(_e,it){return{$implicit:_e,origin:it}};function fe(_e,it){if(1&_e&&(i.ynx(0),i.YNc(1,te,2,4,"ng-container",3),i.BQk()),2&_e){const b=i.oxw(2);i.xp6(1),i.Q6J("nzStringTemplateOutlet",b.nzExpandedIcon)("nzStringTemplateOutletContext",i.WLB(2,ne,b.context,b.context.origin))}}function re(_e,it){if(1&_e&&(i.ynx(0),i.YNc(1,fe,2,5,"ng-container",2),i.BQk()),2&_e){const b=i.oxw(),N=i.MAs(3);i.xp6(1),i.Q6J("ngIf",!b.isLoading)("ngIfElse",N)}}function be(_e,it){if(1&_e&&i._UZ(0,"span",7),2&_e){const b=i.oxw(4);i.Q6J("nzType",b.isSwitcherOpen?"minus-square":"plus-square")}}function le(_e,it){1&_e&&i._UZ(0,"span",8)}function ce(_e,it){if(1&_e&&(i.ynx(0),i.YNc(1,be,1,1,"span",5),i.YNc(2,le,1,0,"span",6),i.BQk()),2&_e){const b=i.oxw(3);i.xp6(1),i.Q6J("ngIf",b.isShowLineIcon),i.xp6(1),i.Q6J("ngIf",!b.isShowLineIcon)}}function Q(_e,it){if(1&_e&&(i.ynx(0),i.YNc(1,ce,3,2,"ng-container",3),i.BQk()),2&_e){const b=i.oxw(2);i.xp6(1),i.Q6J("nzStringTemplateOutlet",b.nzExpandedIcon)("nzStringTemplateOutletContext",i.WLB(2,ne,b.context,b.context.origin))}}function ie(_e,it){if(1&_e&&(i.ynx(0),i.YNc(1,Q,2,5,"ng-container",2),i.BQk()),2&_e){const b=i.oxw(),N=i.MAs(3);i.xp6(1),i.Q6J("ngIf",!b.isLoading)("ngIfElse",N)}}function ae(_e,it){1&_e&&i._UZ(0,"span",9),2&_e&&i.Q6J("nzSpin",!0)}function xe(_e,it){}function Me(_e,it){if(1&_e&&i._UZ(0,"span",6),2&_e){const b=i.oxw(3);i.Q6J("nzType",b.icon)}}function Ye(_e,it){if(1&_e&&(i.TgZ(0,"span")(1,"span"),i.YNc(2,Me,1,1,"span",5),i.qZA()()),2&_e){const b=i.oxw(2);i.ekj("ant-tree-icon__open",b.isSwitcherOpen)("ant-tree-icon__close",b.isSwitcherClose)("ant-tree-icon_loading",b.isLoading)("ant-select-tree-iconEle",b.selectMode)("ant-tree-iconEle",!b.selectMode),i.xp6(1),i.ekj("ant-select-tree-iconEle",b.selectMode)("ant-select-tree-icon__customize",b.selectMode)("ant-tree-iconEle",!b.selectMode)("ant-tree-icon__customize",!b.selectMode),i.xp6(1),i.Q6J("ngIf",b.icon)}}function q(_e,it){if(1&_e&&(i.ynx(0),i.YNc(1,Ye,3,19,"span",3),i._UZ(2,"span",4),i.ALo(3,"nzHighlight"),i.BQk()),2&_e){const b=i.oxw();i.xp6(1),i.Q6J("ngIf",b.icon&&b.showIcon),i.xp6(1),i.Q6J("innerHTML",i.gM2(3,2,b.title,b.matchedValue,"i","font-highlight"),i.oJD)}}function ve(_e,it){if(1&_e&&i._UZ(0,"nz-tree-drop-indicator",7),2&_e){const b=i.oxw();i.Q6J("dropPosition",b.dragPosition)("level",b.context.level)}}function ee(_e,it){if(1&_e){const b=i.EpF();i.TgZ(0,"nz-tree-node-switcher",4),i.NdJ("click",function(O){i.CHM(b);const j=i.oxw();return i.KtG(j.clickExpand(O))}),i.qZA()}if(2&_e){const b=i.oxw();i.Q6J("nzShowExpand",b.nzShowExpand)("nzShowLine",b.nzShowLine)("nzExpandedIcon",b.nzExpandedIcon)("nzSelectMode",b.nzSelectMode)("context",b.nzTreeNode)("isLeaf",b.isLeaf)("isExpanded",b.isExpanded)("isLoading",b.isLoading)}}function Be(_e,it){if(1&_e){const b=i.EpF();i.TgZ(0,"nz-tree-node-checkbox",5),i.NdJ("click",function(O){i.CHM(b);const j=i.oxw();return i.KtG(j.clickCheckBox(O))}),i.qZA()}if(2&_e){const b=i.oxw();i.Q6J("nzSelectMode",b.nzSelectMode)("isChecked",b.isChecked)("isHalfChecked",b.isHalfChecked)("isDisabled",b.isDisabled)("isDisableCheckbox",b.isDisableCheckbox)}}const Re=["nzTreeTemplate"];function ct(_e,it){}const Ae=function(_e){return{$implicit:_e}};function Mt(_e,it){if(1&_e&&(i.ynx(0),i.YNc(1,ct,0,0,"ng-template",10),i.BQk()),2&_e){const b=it.$implicit;i.oxw(2);const N=i.MAs(9);i.xp6(1),i.Q6J("ngTemplateOutlet",N)("ngTemplateOutletContext",i.VKq(2,Ae,b))}}function je(_e,it){if(1&_e&&(i.TgZ(0,"cdk-virtual-scroll-viewport",8),i.YNc(1,Mt,2,4,"ng-container",9),i.qZA()),2&_e){const b=i.oxw();i.Udp("height",b.nzVirtualHeight),i.ekj("ant-select-tree-list-holder-inner",b.nzSelectMode)("ant-tree-list-holder-inner",!b.nzSelectMode),i.Q6J("itemSize",b.nzVirtualItemSize)("minBufferPx",b.nzVirtualMinBufferPx)("maxBufferPx",b.nzVirtualMaxBufferPx),i.xp6(1),i.Q6J("cdkVirtualForOf",b.nzFlattenNodes)("cdkVirtualForTrackBy",b.trackByFlattenNode)}}function ot(_e,it){}function mt(_e,it){if(1&_e&&(i.ynx(0),i.YNc(1,ot,0,0,"ng-template",10),i.BQk()),2&_e){const b=it.$implicit;i.oxw(2);const N=i.MAs(9);i.xp6(1),i.Q6J("ngTemplateOutlet",N)("ngTemplateOutletContext",i.VKq(2,Ae,b))}}function we(_e,it){if(1&_e&&(i.TgZ(0,"div",11),i.YNc(1,mt,2,4,"ng-container",12),i.qZA()),2&_e){const b=i.oxw();i.ekj("ant-select-tree-list-holder-inner",b.nzSelectMode)("ant-tree-list-holder-inner",!b.nzSelectMode),i.Q6J("@.disabled",b.beforeInit||!(null==b.noAnimation||!b.noAnimation.nzNoAnimation))("nzNoAnimation",null==b.noAnimation?null:b.noAnimation.nzNoAnimation)("@treeCollapseMotion",b.nzFlattenNodes.length),i.xp6(1),i.Q6J("ngForOf",b.nzFlattenNodes)("ngForTrackBy",b.trackByFlattenNode)}}function de(_e,it){if(1&_e){const b=i.EpF();i.TgZ(0,"nz-tree-node",13),i.NdJ("nzExpandChange",function(O){i.CHM(b);const j=i.oxw();return i.KtG(j.eventTriggerChanged(O))})("nzClick",function(O){i.CHM(b);const j=i.oxw();return i.KtG(j.eventTriggerChanged(O))})("nzDblClick",function(O){i.CHM(b);const j=i.oxw();return i.KtG(j.eventTriggerChanged(O))})("nzContextMenu",function(O){i.CHM(b);const j=i.oxw();return i.KtG(j.eventTriggerChanged(O))})("nzCheckBoxChange",function(O){i.CHM(b);const j=i.oxw();return i.KtG(j.eventTriggerChanged(O))})("nzOnDragStart",function(O){i.CHM(b);const j=i.oxw();return i.KtG(j.eventTriggerChanged(O))})("nzOnDragEnter",function(O){i.CHM(b);const j=i.oxw();return i.KtG(j.eventTriggerChanged(O))})("nzOnDragOver",function(O){i.CHM(b);const j=i.oxw();return i.KtG(j.eventTriggerChanged(O))})("nzOnDragLeave",function(O){i.CHM(b);const j=i.oxw();return i.KtG(j.eventTriggerChanged(O))})("nzOnDragEnd",function(O){i.CHM(b);const j=i.oxw();return i.KtG(j.eventTriggerChanged(O))})("nzOnDrop",function(O){i.CHM(b);const j=i.oxw();return i.KtG(j.eventTriggerChanged(O))}),i.qZA()}if(2&_e){const b=it.$implicit,N=i.oxw();i.Q6J("icon",b.icon)("title",b.title)("isLoading",b.isLoading)("isSelected",b.isSelected)("isDisabled",b.isDisabled)("isMatched",b.isMatched)("isExpanded",b.isExpanded)("isLeaf",b.isLeaf)("isStart",b.isStart)("isEnd",b.isEnd)("isChecked",b.isChecked)("isHalfChecked",b.isHalfChecked)("isDisableCheckbox",b.isDisableCheckbox)("isSelectable",b.isSelectable)("canHide",b.canHide)("nzTreeNode",b)("nzSelectMode",N.nzSelectMode)("nzShowLine",N.nzShowLine)("nzExpandedIcon",N.nzExpandedIcon)("nzDraggable",N.nzDraggable)("nzCheckable",N.nzCheckable)("nzShowExpand",N.nzShowExpand)("nzAsyncData",N.nzAsyncData)("nzSearchValue",N.nzSearchValue)("nzHideUnMatched",N.nzHideUnMatched)("nzBeforeDrop",N.nzBeforeDrop)("nzShowIcon",N.nzShowIcon)("nzTreeTemplate",N.nzTreeTemplate||N.nzTreeTemplateChild)}}let U=(()=>{class _e{constructor(b){this.cdr=b,this.level=1,this.direction="ltr",this.style={}}ngOnChanges(b){this.renderIndicator(this.dropPosition,this.direction)}renderIndicator(b,N="ltr"){const j="ltr"===N?"left":"right",he={[j]:"4px",["ltr"===N?"right":"left"]:"0px"};switch(b){case-1:he.top="-3px";break;case 1:he.bottom="-3px";break;case 0:he.bottom="-3px",he[j]="28px";break;default:he.display="none"}this.style=he,this.cdr.markForCheck()}static#e=this.\u0275fac=function(N){return new(N||_e)(i.Y36(i.sBO))};static#t=this.\u0275cmp=i.Xpm({type:_e,selectors:[["nz-tree-drop-indicator"]],hostVars:4,hostBindings:function(N,O){2&N&&(i.Akn(O.style),i.ekj("ant-tree-drop-indicator",!0))},inputs:{dropPosition:"dropPosition",level:"level",direction:"direction"},exportAs:["NzTreeDropIndicator"],features:[i.TTD],decls:0,vars:0,template:function(N,O){},encapsulation:2,changeDetection:0})}return _e})(),B=(()=>{class _e{constructor(){this.nzTreeLevel=0,this.nzIsStart=[],this.nzIsEnd=[],this.nzSelectMode=!1,this.listOfUnit=[]}ngOnChanges(b){const{nzTreeLevel:N}=b;N&&(this.listOfUnit=[...new Array(N.currentValue||0)])}static#e=this.\u0275fac=function(N){return new(N||_e)};static#t=this.\u0275cmp=i.Xpm({type:_e,selectors:[["nz-tree-indent"]],hostVars:5,hostBindings:function(N,O){2&N&&(i.uIk("aria-hidden",!0),i.ekj("ant-tree-indent",!O.nzSelectMode)("ant-select-tree-indent",O.nzSelectMode))},inputs:{nzTreeLevel:"nzTreeLevel",nzIsStart:"nzIsStart",nzIsEnd:"nzIsEnd",nzSelectMode:"nzSelectMode"},exportAs:["nzTreeIndent"],features:[i.TTD],decls:1,vars:1,consts:[[3,"ant-tree-indent-unit","ant-select-tree-indent-unit","ant-select-tree-indent-unit-start","ant-tree-indent-unit-start","ant-select-tree-indent-unit-end","ant-tree-indent-unit-end",4,"ngFor","ngForOf"]],template:function(N,O){1&N&&i.YNc(0,V,1,12,"span",0),2&N&&i.Q6J("ngForOf",O.listOfUnit)},dependencies:[R.sg],encapsulation:2,changeDetection:0})}return _e})(),Ee=(()=>{class _e{constructor(){this.nzSelectMode=!1}static#e=this.\u0275fac=function(N){return new(N||_e)};static#t=this.\u0275cmp=i.Xpm({type:_e,selectors:[["nz-tree-node-checkbox","builtin",""]],hostVars:16,hostBindings:function(N,O){2&N&&i.ekj("ant-select-tree-checkbox",O.nzSelectMode)("ant-select-tree-checkbox-checked",O.nzSelectMode&&O.isChecked)("ant-select-tree-checkbox-indeterminate",O.nzSelectMode&&O.isHalfChecked)("ant-select-tree-checkbox-disabled",O.nzSelectMode&&(O.isDisabled||O.isDisableCheckbox))("ant-tree-checkbox",!O.nzSelectMode)("ant-tree-checkbox-checked",!O.nzSelectMode&&O.isChecked)("ant-tree-checkbox-indeterminate",!O.nzSelectMode&&O.isHalfChecked)("ant-tree-checkbox-disabled",!O.nzSelectMode&&(O.isDisabled||O.isDisableCheckbox))},inputs:{nzSelectMode:"nzSelectMode",isChecked:"isChecked",isHalfChecked:"isHalfChecked",isDisabled:"isDisabled",isDisableCheckbox:"isDisableCheckbox"},attrs:K,decls:1,vars:4,template:function(N,O){1&N&&i._UZ(0,"span"),2&N&&i.ekj("ant-tree-checkbox-inner",!O.nzSelectMode)("ant-select-tree-checkbox-inner",O.nzSelectMode)},encapsulation:2,changeDetection:0})}return _e})(),Ie=(()=>{class _e{constructor(){this.nzSelectMode=!1}get isShowLineIcon(){return!this.isLeaf&&!!this.nzShowLine}get isShowSwitchIcon(){return!this.isLeaf&&!this.nzShowLine}get isSwitcherOpen(){return!!this.isExpanded&&!this.isLeaf}get isSwitcherClose(){return!this.isExpanded&&!this.isLeaf}static#e=this.\u0275fac=function(N){return new(N||_e)};static#t=this.\u0275cmp=i.Xpm({type:_e,selectors:[["nz-tree-node-switcher"]],hostVars:16,hostBindings:function(N,O){2&N&&i.ekj("ant-select-tree-switcher",O.nzSelectMode)("ant-select-tree-switcher-noop",O.nzSelectMode&&O.isLeaf)("ant-select-tree-switcher_open",O.nzSelectMode&&O.isSwitcherOpen)("ant-select-tree-switcher_close",O.nzSelectMode&&O.isSwitcherClose)("ant-tree-switcher",!O.nzSelectMode)("ant-tree-switcher-noop",!O.nzSelectMode&&O.isLeaf)("ant-tree-switcher_open",!O.nzSelectMode&&O.isSwitcherOpen)("ant-tree-switcher_close",!O.nzSelectMode&&O.isSwitcherClose)},inputs:{nzShowExpand:"nzShowExpand",nzShowLine:"nzShowLine",nzExpandedIcon:"nzExpandedIcon",nzSelectMode:"nzSelectMode",context:"context",isLeaf:"isLeaf",isLoading:"isLoading",isExpanded:"isExpanded"},decls:4,vars:2,consts:[[4,"ngIf"],["loadingTemplate",""],[4,"ngIf","ngIfElse"],[4,"nzStringTemplateOutlet","nzStringTemplateOutletContext"],["nz-icon","","nzType","caret-down"],["nz-icon","","class","ant-tree-switcher-line-icon",3,"nzType",4,"ngIf"],["nz-icon","","nzType","file","class","ant-tree-switcher-line-icon",4,"ngIf"],["nz-icon","",1,"ant-tree-switcher-line-icon",3,"nzType"],["nz-icon","","nzType","file",1,"ant-tree-switcher-line-icon"],["nz-icon","","nzType","loading",1,"ant-tree-switcher-loading-icon",3,"nzSpin"]],template:function(N,O){1&N&&(i.YNc(0,re,2,2,"ng-container",0),i.YNc(1,ie,2,2,"ng-container",0),i.YNc(2,ae,1,1,"ng-template",null,1,i.W1O)),2&N&&(i.Q6J("ngIf",O.isShowSwitchIcon),i.xp6(1),i.Q6J("ngIf",O.nzShowLine))},dependencies:[R.O5,ze.f,Y.Ls],encapsulation:2,changeDetection:0})}return _e})(),Ne=(()=>{class _e{get canDraggable(){return!(!this.draggable||this.isDisabled)||null}get matchedValue(){return this.isMatched?this.searchValue:""}get isSwitcherOpen(){return this.isExpanded&&!this.isLeaf}get isSwitcherClose(){return!this.isExpanded&&!this.isLeaf}constructor(b){this.cdr=b,this.treeTemplate=null,this.selectMode=!1,this.showIndicator=!0}ngOnChanges(b){const{showIndicator:N,dragPosition:O}=b;(N||O)&&this.cdr.markForCheck()}static#e=this.\u0275fac=function(N){return new(N||_e)(i.Y36(i.sBO))};static#t=this.\u0275cmp=i.Xpm({type:_e,selectors:[["nz-tree-node-title"]],hostVars:21,hostBindings:function(N,O){2&N&&(i.uIk("title",O.title)("draggable",O.canDraggable)("aria-grabbed",O.canDraggable),i.ekj("draggable",O.canDraggable)("ant-select-tree-node-content-wrapper",O.selectMode)("ant-select-tree-node-content-wrapper-open",O.selectMode&&O.isSwitcherOpen)("ant-select-tree-node-content-wrapper-close",O.selectMode&&O.isSwitcherClose)("ant-select-tree-node-selected",O.selectMode&&O.isSelected)("ant-tree-node-content-wrapper",!O.selectMode)("ant-tree-node-content-wrapper-open",!O.selectMode&&O.isSwitcherOpen)("ant-tree-node-content-wrapper-close",!O.selectMode&&O.isSwitcherClose)("ant-tree-node-selected",!O.selectMode&&O.isSelected))},inputs:{searchValue:"searchValue",treeTemplate:"treeTemplate",draggable:"draggable",showIcon:"showIcon",selectMode:"selectMode",context:"context",icon:"icon",title:"title",isLoading:"isLoading",isSelected:"isSelected",isDisabled:"isDisabled",isMatched:"isMatched",isExpanded:"isExpanded",isLeaf:"isLeaf",showIndicator:"showIndicator",dragPosition:"dragPosition"},features:[i.TTD],decls:3,vars:7,consts:[[3,"ngTemplateOutlet","ngTemplateOutletContext"],[4,"ngIf"],[3,"dropPosition","level",4,"ngIf"],[3,"ant-tree-icon__open","ant-tree-icon__close","ant-tree-icon_loading","ant-select-tree-iconEle","ant-tree-iconEle",4,"ngIf"],[1,"ant-tree-title",3,"innerHTML"],["nz-icon","",3,"nzType",4,"ngIf"],["nz-icon","",3,"nzType"],[3,"dropPosition","level"]],template:function(N,O){1&N&&(i.YNc(0,xe,0,0,"ng-template",0),i.YNc(1,q,4,7,"ng-container",1),i.YNc(2,ve,1,2,"nz-tree-drop-indicator",2)),2&N&&(i.Q6J("ngTemplateOutlet",O.treeTemplate)("ngTemplateOutletContext",i.WLB(4,ne,O.context,O.context.origin)),i.xp6(1),i.Q6J("ngIf",!O.treeTemplate),i.xp6(1),i.Q6J("ngIf",O.showIndicator))},dependencies:[R.O5,R.tP,Y.Ls,U,W.U],encapsulation:2,changeDetection:0})}return _e})(),pt=(()=>{class _e{get displayStyle(){return this.nzSearchValue&&this.nzHideUnMatched&&!this.isMatched&&!this.isExpanded&&this.canHide?"none":""}get isSwitcherOpen(){return this.isExpanded&&!this.isLeaf}get isSwitcherClose(){return!this.isExpanded&&!this.isLeaf}clickExpand(b){b.preventDefault(),!this.isLoading&&!this.isLeaf&&(this.nzAsyncData&&0===this.nzTreeNode.children.length&&!this.isExpanded&&(this.nzTreeNode.isLoading=!0),this.nzTreeNode.setExpanded(!this.isExpanded)),this.nzTreeService.setExpandedNodeList(this.nzTreeNode);const N=this.nzTreeService.formatEvent("expand",this.nzTreeNode,b);this.nzExpandChange.emit(N)}clickSelect(b){b.preventDefault(),this.isSelectable&&!this.isDisabled&&(this.nzTreeNode.isSelected=!this.nzTreeNode.isSelected),this.nzTreeService.setSelectedNodeList(this.nzTreeNode);const N=this.nzTreeService.formatEvent("click",this.nzTreeNode,b);this.nzClick.emit(N)}dblClick(b){b.preventDefault();const N=this.nzTreeService.formatEvent("dblclick",this.nzTreeNode,b);this.nzDblClick.emit(N)}contextMenu(b){b.preventDefault();const N=this.nzTreeService.formatEvent("contextmenu",this.nzTreeNode,b);this.nzContextMenu.emit(N)}clickCheckBox(b){if(b.preventDefault(),this.isDisabled||this.isDisableCheckbox)return;this.nzTreeNode.isChecked=!this.nzTreeNode.isChecked,this.nzTreeNode.isHalfChecked=!1,this.nzTreeService.setCheckedNodeList(this.nzTreeNode);const N=this.nzTreeService.formatEvent("check",this.nzTreeNode,b);this.nzCheckBoxChange.emit(N)}clearDragClass(){["drag-over-gap-top","drag-over-gap-bottom","drag-over","drop-target"].forEach(N=>{this.renderer.removeClass(this.elementRef.nativeElement,N)})}handleDragStart(b){try{b.dataTransfer.setData("text/plain",this.nzTreeNode.key)}catch{}this.nzTreeService.setSelectedNode(this.nzTreeNode),this.draggingKey=this.nzTreeNode.key;const N=this.nzTreeService.formatEvent("dragstart",this.nzTreeNode,b);this.nzOnDragStart.emit(N)}handleDragEnter(b){b.preventDefault(),this.showIndicator=this.nzTreeNode.key!==this.nzTreeService.getSelectedNode()?.key,this.renderIndicator(2),this.ngZone.run(()=>{const N=this.nzTreeService.formatEvent("dragenter",this.nzTreeNode,b);this.nzOnDragEnter.emit(N)})}handleDragOver(b){b.preventDefault();const N=this.nzTreeService.calcDropPosition(b);this.dragPos!==N&&(this.clearDragClass(),this.renderIndicator(N),0===this.dragPos&&this.isLeaf||(this.renderer.addClass(this.elementRef.nativeElement,this.dragPosClass[this.dragPos]),this.renderer.addClass(this.elementRef.nativeElement,"drop-target")));const O=this.nzTreeService.formatEvent("dragover",this.nzTreeNode,b);this.nzOnDragOver.emit(O)}handleDragLeave(b){b.preventDefault(),this.renderIndicator(2),this.clearDragClass();const N=this.nzTreeService.formatEvent("dragleave",this.nzTreeNode,b);this.nzOnDragLeave.emit(N)}handleDragDrop(b){b.preventDefault(),b.stopPropagation(),this.ngZone.run(()=>{this.showIndicator=!1,this.clearDragClass();const N=this.nzTreeService.getSelectedNode();if(!N||N&&N.key===this.nzTreeNode.key||0===this.dragPos&&this.isLeaf)return;const O=this.nzTreeService.formatEvent("drop",this.nzTreeNode,b),j=this.nzTreeService.formatEvent("dragend",this.nzTreeNode,b);this.nzBeforeDrop?this.nzBeforeDrop({dragNode:this.nzTreeService.getSelectedNode(),node:this.nzTreeNode,pos:this.dragPos}).subscribe(L=>{L&&this.nzTreeService.dropAndApply(this.nzTreeNode,this.dragPos),this.nzOnDrop.emit(O),this.nzOnDragEnd.emit(j)}):this.nzTreeNode&&(this.nzTreeService.dropAndApply(this.nzTreeNode,this.dragPos),this.nzOnDrop.emit(O))})}handleDragEnd(b){b.preventDefault(),this.ngZone.run(()=>{if(this.nzBeforeDrop)this.draggingKey=null,this.markForCheck();else{this.draggingKey=null;const N=this.nzTreeService.formatEvent("dragend",this.nzTreeNode,b);this.nzOnDragEnd.emit(N)}})}handDragEvent(){this.ngZone.runOutsideAngular(()=>{if(this.nzDraggable){const b=this.elementRef.nativeElement;this.destroy$=new C.x,(0,G.R)(b,"dragstart").pipe((0,v.R)(this.destroy$)).subscribe(N=>this.handleDragStart(N)),(0,G.R)(b,"dragenter").pipe((0,v.R)(this.destroy$)).subscribe(N=>this.handleDragEnter(N)),(0,G.R)(b,"dragover").pipe((0,v.R)(this.destroy$)).subscribe(N=>this.handleDragOver(N)),(0,G.R)(b,"dragleave").pipe((0,v.R)(this.destroy$)).subscribe(N=>this.handleDragLeave(N)),(0,G.R)(b,"drop").pipe((0,v.R)(this.destroy$)).subscribe(N=>this.handleDragDrop(N)),(0,G.R)(b,"dragend").pipe((0,v.R)(this.destroy$)).subscribe(N=>this.handleDragEnd(N))}else this.destroy$.next(!0),this.destroy$.complete()})}markForCheck(){this.cdr.markForCheck()}constructor(b,N,O,j,L,he){this.nzTreeService=b,this.ngZone=N,this.renderer=O,this.elementRef=j,this.cdr=L,this.noAnimation=he,this.icon="",this.title="",this.isLoading=!1,this.isSelected=!1,this.isDisabled=!1,this.isMatched=!1,this.isStart=[],this.isEnd=[],this.nzHideUnMatched=!1,this.nzNoAnimation=!1,this.nzSelectMode=!1,this.nzShowIcon=!1,this.nzTreeTemplate=null,this.nzSearchValue="",this.nzDraggable=!1,this.nzClick=new i.vpe,this.nzDblClick=new i.vpe,this.nzContextMenu=new i.vpe,this.nzCheckBoxChange=new i.vpe,this.nzExpandChange=new i.vpe,this.nzOnDragStart=new i.vpe,this.nzOnDragEnter=new i.vpe,this.nzOnDragOver=new i.vpe,this.nzOnDragLeave=new i.vpe,this.nzOnDrop=new i.vpe,this.nzOnDragEnd=new i.vpe,this.destroy$=new C.x,this.dragPos=2,this.dragPosClass={0:"drag-over",1:"drag-over-gap-bottom","-1":"drag-over-gap-top"},this.draggingKey=null,this.showIndicator=!1}ngOnInit(){this.nzTreeNode.component=this,this.ngZone.runOutsideAngular(()=>{(0,G.R)(this.elementRef.nativeElement,"mousedown").pipe((0,v.R)(this.destroy$)).subscribe(b=>{this.nzSelectMode&&b.preventDefault()})})}ngOnChanges(b){const{nzDraggable:N}=b;N&&this.handDragEvent()}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}renderIndicator(b){this.ngZone.run(()=>{this.showIndicator=2!==b,!(this.nzTreeNode.key===this.nzTreeService.getSelectedNode()?.key||0===b&&this.isLeaf)&&(this.dragPos=b,this.cdr.markForCheck())})}static#e=this.\u0275fac=function(N){return new(N||_e)(i.Y36(x.kW),i.Y36(i.R0b),i.Y36(i.Qsj),i.Y36(i.SBq),i.Y36(i.sBO),i.Y36(A.P,9))};static#t=this.\u0275cmp=i.Xpm({type:_e,selectors:[["nz-tree-node","builtin",""]],hostVars:36,hostBindings:function(N,O){2&N&&(i.Udp("display",O.displayStyle),i.ekj("ant-select-tree-treenode",O.nzSelectMode)("ant-select-tree-treenode-disabled",O.nzSelectMode&&O.isDisabled)("ant-select-tree-treenode-switcher-open",O.nzSelectMode&&O.isSwitcherOpen)("ant-select-tree-treenode-switcher-close",O.nzSelectMode&&O.isSwitcherClose)("ant-select-tree-treenode-checkbox-checked",O.nzSelectMode&&O.isChecked)("ant-select-tree-treenode-checkbox-indeterminate",O.nzSelectMode&&O.isHalfChecked)("ant-select-tree-treenode-selected",O.nzSelectMode&&O.isSelected)("ant-select-tree-treenode-loading",O.nzSelectMode&&O.isLoading)("ant-tree-treenode",!O.nzSelectMode)("ant-tree-treenode-disabled",!O.nzSelectMode&&O.isDisabled)("ant-tree-treenode-switcher-open",!O.nzSelectMode&&O.isSwitcherOpen)("ant-tree-treenode-switcher-close",!O.nzSelectMode&&O.isSwitcherClose)("ant-tree-treenode-checkbox-checked",!O.nzSelectMode&&O.isChecked)("ant-tree-treenode-checkbox-indeterminate",!O.nzSelectMode&&O.isHalfChecked)("ant-tree-treenode-selected",!O.nzSelectMode&&O.isSelected)("ant-tree-treenode-loading",!O.nzSelectMode&&O.isLoading)("dragging",O.draggingKey===O.nzTreeNode.key))},inputs:{icon:"icon",title:"title",isLoading:"isLoading",isSelected:"isSelected",isDisabled:"isDisabled",isMatched:"isMatched",isExpanded:"isExpanded",isLeaf:"isLeaf",isChecked:"isChecked",isHalfChecked:"isHalfChecked",isDisableCheckbox:"isDisableCheckbox",isSelectable:"isSelectable",canHide:"canHide",isStart:"isStart",isEnd:"isEnd",nzTreeNode:"nzTreeNode",nzShowLine:"nzShowLine",nzShowExpand:"nzShowExpand",nzCheckable:"nzCheckable",nzAsyncData:"nzAsyncData",nzHideUnMatched:"nzHideUnMatched",nzNoAnimation:"nzNoAnimation",nzSelectMode:"nzSelectMode",nzShowIcon:"nzShowIcon",nzExpandedIcon:"nzExpandedIcon",nzTreeTemplate:"nzTreeTemplate",nzBeforeDrop:"nzBeforeDrop",nzSearchValue:"nzSearchValue",nzDraggable:"nzDraggable"},outputs:{nzClick:"nzClick",nzDblClick:"nzDblClick",nzContextMenu:"nzContextMenu",nzCheckBoxChange:"nzCheckBoxChange",nzExpandChange:"nzExpandChange",nzOnDragStart:"nzOnDragStart",nzOnDragEnter:"nzOnDragEnter",nzOnDragOver:"nzOnDragOver",nzOnDragLeave:"nzOnDragLeave",nzOnDrop:"nzOnDrop",nzOnDragEnd:"nzOnDragEnd"},exportAs:["nzTreeBuiltinNode"],features:[i.TTD],attrs:K,decls:4,vars:22,consts:[[3,"nzTreeLevel","nzSelectMode","nzIsStart","nzIsEnd"],[3,"nzShowExpand","nzShowLine","nzExpandedIcon","nzSelectMode","context","isLeaf","isExpanded","isLoading","click",4,"ngIf"],["builtin","",3,"nzSelectMode","isChecked","isHalfChecked","isDisabled","isDisableCheckbox","click",4,"ngIf"],[3,"icon","title","isLoading","isSelected","isDisabled","isMatched","isExpanded","isLeaf","searchValue","treeTemplate","draggable","showIcon","selectMode","context","showIndicator","dragPosition","dblclick","click","contextmenu"],[3,"nzShowExpand","nzShowLine","nzExpandedIcon","nzSelectMode","context","isLeaf","isExpanded","isLoading","click"],["builtin","",3,"nzSelectMode","isChecked","isHalfChecked","isDisabled","isDisableCheckbox","click"]],template:function(N,O){1&N&&(i._UZ(0,"nz-tree-indent",0),i.YNc(1,ee,1,8,"nz-tree-node-switcher",1),i.YNc(2,Be,1,5,"nz-tree-node-checkbox",2),i.TgZ(3,"nz-tree-node-title",3),i.NdJ("dblclick",function(L){return O.dblClick(L)})("click",function(L){return O.clickSelect(L)})("contextmenu",function(L){return O.contextMenu(L)}),i.qZA()),2&N&&(i.Q6J("nzTreeLevel",O.nzTreeNode.level)("nzSelectMode",O.nzSelectMode)("nzIsStart",O.isStart)("nzIsEnd",O.isEnd),i.xp6(1),i.Q6J("ngIf",O.nzShowExpand),i.xp6(1),i.Q6J("ngIf",O.nzCheckable),i.xp6(1),i.Q6J("icon",O.icon)("title",O.title)("isLoading",O.isLoading)("isSelected",O.isSelected)("isDisabled",O.isDisabled)("isMatched",O.isMatched)("isExpanded",O.isExpanded)("isLeaf",O.isLeaf)("searchValue",O.nzSearchValue)("treeTemplate",O.nzTreeTemplate)("draggable",O.nzDraggable)("showIcon",O.nzShowIcon)("selectMode",O.nzSelectMode)("context",O.nzTreeNode)("showIndicator",O.showIndicator)("dragPosition",O.dragPos))},dependencies:[R.O5,B,Ie,Ee,Ne],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,D.yF)()],_e.prototype,"nzShowLine",void 0),(0,e.gn)([(0,D.yF)()],_e.prototype,"nzShowExpand",void 0),(0,e.gn)([(0,D.yF)()],_e.prototype,"nzCheckable",void 0),(0,e.gn)([(0,D.yF)()],_e.prototype,"nzAsyncData",void 0),(0,e.gn)([(0,D.yF)()],_e.prototype,"nzHideUnMatched",void 0),(0,e.gn)([(0,D.yF)()],_e.prototype,"nzNoAnimation",void 0),(0,e.gn)([(0,D.yF)()],_e.prototype,"nzSelectMode",void 0),(0,e.gn)([(0,D.yF)()],_e.prototype,"nzShowIcon",void 0),_e})(),Dt=(()=>{class _e extends x.kW{constructor(){super()}static#e=this.\u0275fac=function(N){return new(N||_e)};static#t=this.\u0275prov=i.Yz7({token:_e,factory:_e.\u0275fac})}return _e})();function Lt(_e,it){return _e||it}let qt=(()=>{class _e extends x.fP{writeValue(b){this.handleNzData(b)}registerOnChange(b){this.onChange=b}registerOnTouched(b){this.onTouched=b}renderTreeProperties(b){let N=!1,O=!1;const{nzData:j,nzExpandedKeys:L,nzSelectedKeys:he,nzCheckedKeys:Ce,nzCheckStrictly:bt,nzExpandAll:Ft,nzMultiple:sn,nzSearchValue:pn}=b;Ft&&(N=!0,O=this.nzExpandAll),sn&&(this.nzTreeService.isMultiple=this.nzMultiple),bt&&(this.nzTreeService.isCheckStrictly=this.nzCheckStrictly),j&&this.handleNzData(this.nzData),Ce&&this.handleCheckedKeys(this.nzCheckedKeys),bt&&this.handleCheckedKeys(null),(L||Ft)&&(N=!0,this.handleExpandedKeys(O||this.nzExpandedKeys)),he&&this.handleSelectedKeys(this.nzSelectedKeys,this.nzMultiple),pn&&(pn.firstChange&&!this.nzSearchValue||(N=!1,this.handleSearchValue(pn.currentValue,this.nzSearchFunc),this.nzSearchValueChange.emit(this.nzTreeService.formatEvent("search",null,null))));const vn=this.getExpandedNodeList().map(Mn=>Mn.key);this.handleFlattenNodes(this.nzTreeService.rootNodes,N?O||this.nzExpandedKeys:vn)}trackByFlattenNode(b,N){return N.key}handleNzData(b){if(Array.isArray(b)){const N=this.coerceTreeNodes(b);this.nzTreeService.initTree(N)}}handleFlattenNodes(b,N=[]){this.nzTreeService.flattenTreeData(b,N)}handleCheckedKeys(b){this.nzTreeService.conductCheck(b,this.nzCheckStrictly)}handleExpandedKeys(b=[]){this.nzTreeService.conductExpandedKeys(b)}handleSelectedKeys(b,N){this.nzTreeService.conductSelectedKeys(b,N)}handleSearchValue(b,N){(0,x.oH)(this.nzTreeService.rootNodes,!0).map(L=>L.data).forEach(L=>{L.isMatched=(L=>N?N(L.origin):!(!b||!L.title.toLowerCase().includes(b.toLowerCase())))(L),L.canHide=!L.isMatched,L.isMatched?this.nzTreeService.expandNodeAllParentBySearch(L):(L.setExpanded(!1),this.nzTreeService.setExpandedNodeList(L)),this.nzTreeService.setMatchedNodeList(L)})}eventTriggerChanged(b){const N=b.node;switch(b.eventName){case"expand":this.renderTree(),this.nzExpandChange.emit(b);break;case"click":this.nzClick.emit(b);break;case"dblclick":this.nzDblClick.emit(b);break;case"contextmenu":this.nzContextMenu.emit(b);break;case"check":this.nzTreeService.setCheckedNodeList(N),this.nzCheckStrictly||this.nzTreeService.conduct(N);const O=this.nzTreeService.formatEvent("check",N,b.event);this.nzCheckBoxChange.emit(O);break;case"dragstart":N.isExpanded&&(N.setExpanded(!N.isExpanded),this.renderTree()),this.nzOnDragStart.emit(b);break;case"dragenter":const j=this.nzTreeService.getSelectedNode();j&&j.key!==N.key&&!N.isExpanded&&!N.isLeaf&&(N.setExpanded(!0),this.renderTree()),this.nzOnDragEnter.emit(b);break;case"dragover":this.nzOnDragOver.emit(b);break;case"dragleave":this.nzOnDragLeave.emit(b);break;case"dragend":this.nzOnDragEnd.emit(b);break;case"drop":this.renderTree(),this.nzOnDrop.emit(b)}}renderTree(){this.handleFlattenNodes(this.nzTreeService.rootNodes,this.getExpandedNodeList().map(b=>b.key)),this.cdr.markForCheck()}constructor(b,N,O,j,L){super(b),this.nzConfigService=N,this.cdr=O,this.directionality=j,this.noAnimation=L,this._nzModuleName="tree",this.nzShowIcon=!1,this.nzHideUnMatched=!1,this.nzBlockNode=!1,this.nzExpandAll=!1,this.nzSelectMode=!1,this.nzCheckStrictly=!1,this.nzShowExpand=!0,this.nzShowLine=!1,this.nzCheckable=!1,this.nzAsyncData=!1,this.nzDraggable=!1,this.nzMultiple=!1,this.nzVirtualItemSize=28,this.nzVirtualMaxBufferPx=500,this.nzVirtualMinBufferPx=28,this.nzVirtualHeight=null,this.nzData=[],this.nzExpandedKeys=[],this.nzSelectedKeys=[],this.nzCheckedKeys=[],this.nzSearchValue="",this.nzFlattenNodes=[],this.beforeInit=!0,this.dir="ltr",this.nzExpandedKeysChange=new i.vpe,this.nzSelectedKeysChange=new i.vpe,this.nzCheckedKeysChange=new i.vpe,this.nzSearchValueChange=new i.vpe,this.nzClick=new i.vpe,this.nzDblClick=new i.vpe,this.nzContextMenu=new i.vpe,this.nzCheckBoxChange=new i.vpe,this.nzExpandChange=new i.vpe,this.nzOnDragStart=new i.vpe,this.nzOnDragEnter=new i.vpe,this.nzOnDragOver=new i.vpe,this.nzOnDragLeave=new i.vpe,this.nzOnDrop=new i.vpe,this.nzOnDragEnd=new i.vpe,this.HIDDEN_STYLE={width:0,height:0,display:"flex",overflow:"hidden",opacity:0,border:0,padding:0,margin:0},this.HIDDEN_NODE_STYLE={position:"absolute",pointerEvents:"none",visibility:"hidden",height:0,overflow:"hidden"},this.destroy$=new C.x,this.onChange=()=>null,this.onTouched=()=>null}ngOnInit(){this.nzTreeService.flattenNodes$.pipe((0,v.R)(this.destroy$)).subscribe(b=>{this.nzFlattenNodes=this.nzVirtualHeight&&this.nzHideUnMatched&&this.nzSearchValue?.length>0?b.filter(N=>!N.canHide):b,this.cdr.markForCheck()}),this.dir=this.directionality.value,this.directionality.change?.pipe((0,v.R)(this.destroy$)).subscribe(b=>{this.dir=b,this.cdr.detectChanges()})}ngOnChanges(b){this.renderTreeProperties(b)}ngAfterViewInit(){this.beforeInit=!1}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(N){return new(N||_e)(i.Y36(x.kW),i.Y36(f.jY),i.Y36(i.sBO),i.Y36(P.Is,8),i.Y36(A.P,9))};static#t=this.\u0275cmp=i.Xpm({type:_e,selectors:[["nz-tree"]],contentQueries:function(N,O,j){if(1&N&&i.Suo(j,Re,7),2&N){let L;i.iGM(L=i.CRH())&&(O.nzTreeTemplateChild=L.first)}},viewQuery:function(N,O){if(1&N&&i.Gf($.N7,5,$.N7),2&N){let j;i.iGM(j=i.CRH())&&(O.cdkVirtualScrollViewport=j.first)}},hostVars:20,hostBindings:function(N,O){2&N&&i.ekj("ant-select-tree",O.nzSelectMode)("ant-select-tree-show-line",O.nzSelectMode&&O.nzShowLine)("ant-select-tree-icon-hide",O.nzSelectMode&&!O.nzShowIcon)("ant-select-tree-block-node",O.nzSelectMode&&O.nzBlockNode)("ant-tree",!O.nzSelectMode)("ant-tree-rtl","rtl"===O.dir)("ant-tree-show-line",!O.nzSelectMode&&O.nzShowLine)("ant-tree-icon-hide",!O.nzSelectMode&&!O.nzShowIcon)("ant-tree-block-node",!O.nzSelectMode&&O.nzBlockNode)("draggable-tree",O.nzDraggable)},inputs:{nzShowIcon:"nzShowIcon",nzHideUnMatched:"nzHideUnMatched",nzBlockNode:"nzBlockNode",nzExpandAll:"nzExpandAll",nzSelectMode:"nzSelectMode",nzCheckStrictly:"nzCheckStrictly",nzShowExpand:"nzShowExpand",nzShowLine:"nzShowLine",nzCheckable:"nzCheckable",nzAsyncData:"nzAsyncData",nzDraggable:"nzDraggable",nzMultiple:"nzMultiple",nzExpandedIcon:"nzExpandedIcon",nzVirtualItemSize:"nzVirtualItemSize",nzVirtualMaxBufferPx:"nzVirtualMaxBufferPx",nzVirtualMinBufferPx:"nzVirtualMinBufferPx",nzVirtualHeight:"nzVirtualHeight",nzTreeTemplate:"nzTreeTemplate",nzBeforeDrop:"nzBeforeDrop",nzData:"nzData",nzExpandedKeys:"nzExpandedKeys",nzSelectedKeys:"nzSelectedKeys",nzCheckedKeys:"nzCheckedKeys",nzSearchValue:"nzSearchValue",nzSearchFunc:"nzSearchFunc"},outputs:{nzExpandedKeysChange:"nzExpandedKeysChange",nzSelectedKeysChange:"nzSelectedKeysChange",nzCheckedKeysChange:"nzCheckedKeysChange",nzSearchValueChange:"nzSearchValueChange",nzClick:"nzClick",nzDblClick:"nzDblClick",nzContextMenu:"nzContextMenu",nzCheckBoxChange:"nzCheckBoxChange",nzExpandChange:"nzExpandChange",nzOnDragStart:"nzOnDragStart",nzOnDragEnter:"nzOnDragEnter",nzOnDragOver:"nzOnDragOver",nzOnDragLeave:"nzOnDragLeave",nzOnDrop:"nzOnDrop",nzOnDragEnd:"nzOnDragEnd"},exportAs:["nzTree"],features:[i._Bn([Dt,{provide:x.kW,useFactory:Lt,deps:[[new i.tp0,new i.FiY,x.g2],Dt]},{provide:l.JU,useExisting:(0,i.Gpc)(()=>_e),multi:!0}]),i.qOj,i.TTD],decls:10,vars:6,consts:[[3,"ngStyle"],[1,"ant-tree-treenode",3,"ngStyle"],[1,"ant-tree-indent"],[1,"ant-tree-indent-unit"],[1,"ant-tree-list",2,"position","relative"],[3,"ant-select-tree-list-holder-inner","ant-tree-list-holder-inner","itemSize","minBufferPx","maxBufferPx","height",4,"ngIf"],[3,"ant-select-tree-list-holder-inner","ant-tree-list-holder-inner","nzNoAnimation",4,"ngIf"],["nodeTemplate",""],[3,"itemSize","minBufferPx","maxBufferPx"],[4,"cdkVirtualFor","cdkVirtualForOf","cdkVirtualForTrackBy"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"nzNoAnimation"],[4,"ngFor","ngForOf","ngForTrackBy"],["builtin","",3,"icon","title","isLoading","isSelected","isDisabled","isMatched","isExpanded","isLeaf","isStart","isEnd","isChecked","isHalfChecked","isDisableCheckbox","isSelectable","canHide","nzTreeNode","nzSelectMode","nzShowLine","nzExpandedIcon","nzDraggable","nzCheckable","nzShowExpand","nzAsyncData","nzSearchValue","nzHideUnMatched","nzBeforeDrop","nzShowIcon","nzTreeTemplate","nzExpandChange","nzClick","nzDblClick","nzContextMenu","nzCheckBoxChange","nzOnDragStart","nzOnDragEnter","nzOnDragOver","nzOnDragLeave","nzOnDragEnd","nzOnDrop"]],template:function(N,O){1&N&&(i.TgZ(0,"div"),i._UZ(1,"input",0),i.qZA(),i.TgZ(2,"div",1)(3,"div",2),i._UZ(4,"div",3),i.qZA()(),i.TgZ(5,"div",4),i.YNc(6,je,2,11,"cdk-virtual-scroll-viewport",5),i.YNc(7,we,2,9,"div",6),i.qZA(),i.YNc(8,de,1,28,"ng-template",null,7,i.W1O)),2&N&&(i.xp6(1),i.Q6J("ngStyle",O.HIDDEN_STYLE),i.xp6(1),i.Q6J("ngStyle",O.HIDDEN_NODE_STYLE),i.xp6(3),i.ekj("ant-select-tree-list",O.nzSelectMode),i.xp6(1),i.Q6J("ngIf",O.nzVirtualHeight),i.xp6(1),i.Q6J("ngIf",!O.nzVirtualHeight))},dependencies:[R.sg,R.O5,R.tP,R.PC,A.P,$.xd,$.x0,$.N7,pt],encapsulation:2,data:{animation:[p.lx]},changeDetection:0})}return(0,e.gn)([(0,D.yF)(),(0,f.oS)()],_e.prototype,"nzShowIcon",void 0),(0,e.gn)([(0,D.yF)(),(0,f.oS)()],_e.prototype,"nzHideUnMatched",void 0),(0,e.gn)([(0,D.yF)(),(0,f.oS)()],_e.prototype,"nzBlockNode",void 0),(0,e.gn)([(0,D.yF)()],_e.prototype,"nzExpandAll",void 0),(0,e.gn)([(0,D.yF)()],_e.prototype,"nzSelectMode",void 0),(0,e.gn)([(0,D.yF)()],_e.prototype,"nzCheckStrictly",void 0),(0,e.gn)([(0,D.yF)()],_e.prototype,"nzShowExpand",void 0),(0,e.gn)([(0,D.yF)()],_e.prototype,"nzShowLine",void 0),(0,e.gn)([(0,D.yF)()],_e.prototype,"nzCheckable",void 0),(0,e.gn)([(0,D.yF)()],_e.prototype,"nzAsyncData",void 0),(0,e.gn)([(0,D.yF)()],_e.prototype,"nzDraggable",void 0),(0,e.gn)([(0,D.yF)()],_e.prototype,"nzMultiple",void 0),_e})(),en=(()=>{class _e{static#e=this.\u0275fac=function(N){return new(N||_e)};static#t=this.\u0275mod=i.oAB({type:_e});static#n=this.\u0275inj=i.cJS({imports:[P.vT,R.ez,ze.T,Y.PV,A.g,W.C,$.Cl]})}return _e})();var cn=o(60804);const Wt=["nzTreeTemplate"],Vt=["treeRef"];function st(_e,it){if(1&_e&&(i.TgZ(0,"span",12),i._UZ(1,"nz-embed-empty",13),i.qZA()),2&_e){const b=i.oxw(2);i.xp6(1),i.Q6J("nzComponentName","tree-select")("specificContent",b.nzNotFoundContent)}}const He=function(){return[]};function et(_e,it){if(1&_e){const b=i.EpF();i.TgZ(0,"div",8)(1,"nz-tree",9,10),i.NdJ("nzExpandChange",function(O){i.CHM(b);const j=i.oxw();return i.KtG(j.onExpandedKeysChange(O))})("nzClick",function(O){i.CHM(b);const j=i.oxw();return i.KtG(j.nzTreeClick.emit(O))})("nzCheckedKeysChange",function(){i.CHM(b);const O=i.oxw();return i.KtG(O.updateSelectedNodes())})("nzSelectedKeysChange",function(){i.CHM(b);const O=i.oxw();return i.KtG(O.updateSelectedNodes())})("nzCheckBoxChange",function(O){i.CHM(b);const j=i.oxw();return i.KtG(j.nzTreeCheckBoxChange.emit(O))})("nzSearchValueChange",function(O){i.CHM(b);const j=i.oxw();return i.KtG(j.setSearchValues(O))}),i.qZA(),i.YNc(3,st,2,2,"span",11),i.qZA()}if(2&_e){const b=i.oxw();i.ekj("ant-select-dropdown-placement-bottomLeft","bottom"===b.dropDownPosition)("ant-select-dropdown-placement-topLeft","top"===b.dropDownPosition)("ant-tree-select-dropdown-rtl","rtl"===b.dir),i.Q6J("@slideMotion","enter")("ngClass",b.dropdownClassName)("@.disabled",!(null==b.noAnimation||!b.noAnimation.nzNoAnimation))("nzNoAnimation",null==b.noAnimation?null:b.noAnimation.nzNoAnimation)("dir",b.dir)("ngStyle",b.nzDropdownStyle),i.xp6(1),i.Q6J("hidden",b.isNotFound)("nzData",b.nzNodes)("nzMultiple",b.nzMultiple)("nzSearchValue",b.inputValue)("nzHideUnMatched",b.nzHideUnMatched)("nzShowIcon",b.nzShowIcon)("nzCheckable",b.nzCheckable)("nzAsyncData",b.nzAsyncData)("nzShowExpand",b.nzShowExpand)("nzShowLine",b.nzShowLine)("nzExpandedIcon",b.nzExpandedIcon)("nzExpandAll",b.nzDefaultExpandAll)("nzExpandedKeys",b.expandedKeys)("nzCheckedKeys",b.nzCheckable?b.value:i.DdM(34,He))("nzSelectedKeys",b.nzCheckable?i.DdM(35,He):b.value)("nzTreeTemplate",b.treeTemplate)("nzCheckStrictly",b.nzCheckStrictly)("nzVirtualItemSize",b.nzVirtualItemSize)("nzVirtualMaxBufferPx",b.nzVirtualMaxBufferPx)("nzVirtualMinBufferPx",b.nzVirtualMinBufferPx)("nzVirtualHeight",b.nzVirtualHeight),i.xp6(2),i.Q6J("ngIf",0===b.nzNodes.length||b.isNotFound)}}function It(_e,it){if(1&_e){const b=i.EpF();i.TgZ(0,"nz-select-item",16),i.NdJ("delete",function(){const j=i.CHM(b).$implicit,L=i.oxw(2);return i.KtG(L.removeSelected(j,!0))}),i.qZA()}if(2&_e){const b=it.$implicit,N=i.oxw(2);i.Q6J("deletable",!0)("disabled",b.isDisabled||N.nzDisabled)("label",N.nzDisplayWith(b))}}function Ot(_e,it){if(1&_e&&(i._UZ(0,"nz-select-item",17),i.ALo(1,"slice")),2&_e){const b=i.oxw(2);i.Q6J("contentTemplateOutlet",b.nzMaxTagPlaceholder)("contentTemplateOutletContext",i.xi3(1,5,b.selectedNodes,b.nzMaxTagCount))("deletable",!1)("disabled",!1)("label","+ "+(b.selectedNodes.length-b.nzMaxTagCount)+" ...")}}function xt(_e,it){if(1&_e&&(i.ynx(0),i.YNc(1,It,1,3,"nz-select-item",14),i.ALo(2,"slice"),i.YNc(3,Ot,2,8,"nz-select-item",15),i.BQk()),2&_e){const b=i.oxw();i.xp6(1),i.Q6J("ngForOf",i.Dn7(2,3,b.selectedNodes,0,b.nzMaxTagCount))("ngForTrackBy",b.trackValue),i.xp6(2),i.Q6J("ngIf",b.selectedNodes.length>b.nzMaxTagCount)}}function Qe(_e,it){if(1&_e&&i._UZ(0,"nz-select-placeholder",18),2&_e){const b=i.oxw();i.Udp("display",b.placeHolderDisplay),i.Q6J("placeholder",b.nzPlaceHolder)}}function ke(_e,it){if(1&_e&&i._UZ(0,"nz-select-item",19),2&_e){const b=i.oxw();i.Q6J("deletable",!1)("disabled",!1)("label",b.nzDisplayWith(b.selectedNodes[0]))}}function pe(_e,it){1&_e&&i._UZ(0,"nz-select-arrow")}function qe(_e,it){if(1&_e&&i._UZ(0,"nz-form-item-feedback-icon",23),2&_e){const b=i.oxw(3);i.Q6J("status",b.status)}}function ge(_e,it){if(1&_e&&i.YNc(0,qe,1,1,"nz-form-item-feedback-icon",22),2&_e){const b=i.oxw(2);i.Q6J("ngIf",b.hasFeedback&&!!b.status)}}function Ze(_e,it){if(1&_e&&(i.TgZ(0,"nz-select-arrow",20),i.YNc(1,ge,1,1,"ng-template",null,21,i.W1O),i.qZA()),2&_e){const b=i.MAs(2),N=i.oxw();i.Q6J("showArrow",!N.isMultiple)("feedbackIcon",b)}}function $e(_e,it){if(1&_e){const b=i.EpF();i.TgZ(0,"nz-select-clear",24),i.NdJ("clear",function(){i.CHM(b);const O=i.oxw();return i.KtG(O.onClearSelection())}),i.qZA()}}let Ue=(()=>{class _e extends x.kW{static#e=this.\u0275fac=function(){let b;return function(O){return(b||(b=i.n5z(_e)))(O||_e)}}();static#t=this.\u0275prov=i.Yz7({token:_e,factory:_e.\u0275fac})}return _e})();function wt(_e){return _e.get(Ue)}const Pe="ant-select-dropdown ant-select-tree-dropdown",Je=[y.yW.bottomLeft,y.yW.bottomRight,y.yW.topRight,y.yW.topLeft];let Ge=(()=>{class _e extends x.fP{set nzExpandedKeys(b){this.expandedKeys=b}get nzExpandedKeys(){return this.expandedKeys}get treeTemplate(){return this.nzTreeTemplate||this.nzTreeTemplateChild}get placeHolderDisplay(){return this.inputValue||this.isComposing||this.selectedNodes.length?"none":"block"}get isMultiple(){return this.nzMultiple||this.nzCheckable}constructor(b,N,O,j,L,he,Ce,bt,Ft,sn){super(b),this.nzConfigService=N,this.renderer=O,this.cdr=j,this.elementRef=L,this.directionality=he,this.focusMonitor=Ce,this.noAnimation=bt,this.nzFormStatusService=Ft,this.nzFormNoStatusService=sn,this._nzModuleName="treeSelect",this.nzId=null,this.nzAllowClear=!0,this.nzShowExpand=!0,this.nzShowLine=!1,this.nzDropdownMatchSelectWidth=!0,this.nzCheckable=!1,this.nzHideUnMatched=!1,this.nzShowIcon=!1,this.nzShowSearch=!1,this.nzDisabled=!1,this.nzAsyncData=!1,this.nzMultiple=!1,this.nzDefaultExpandAll=!1,this.nzCheckStrictly=!1,this.nzVirtualItemSize=28,this.nzVirtualMaxBufferPx=500,this.nzVirtualMinBufferPx=28,this.nzVirtualHeight=null,this.nzNodes=[],this.nzOpen=!1,this.nzSize="default",this.nzPlaceHolder="",this.nzDropdownStyle=null,this.nzBackdrop=!1,this.nzStatus="",this.nzPlacement="",this.nzDisplayWith=pn=>pn.title,this.nzMaxTagPlaceholder=null,this.nzOpenChange=new i.vpe,this.nzCleared=new i.vpe,this.nzRemoved=new i.vpe,this.nzExpandChange=new i.vpe,this.nzTreeClick=new i.vpe,this.nzTreeCheckBoxChange=new i.vpe,this.prefixCls="ant-select",this.statusCls={},this.status="",this.hasFeedback=!1,this.dropdownClassName=Pe,this.isComposing=!1,this.isDestroy=!0,this.isNotFound=!1,this.focused=!1,this.inputValue="",this.dropDownPosition="bottom",this.selectedNodes=[],this.expandedKeys=[],this.value=[],this.dir="ltr",this.positions=[],this.destroy$=new C.x,this.isNzDisableFirstChange=!0,this.onChange=pn=>{},this.onTouched=()=>{},this.renderer.addClass(this.elementRef.nativeElement,"ant-select"),this.renderer.addClass(this.elementRef.nativeElement,"ant-tree-select")}ngOnInit(){this.nzFormStatusService?.formStatusChanges.pipe((0,z.x)((b,N)=>b.status===N.status&&b.hasFeedback===N.hasFeedback),(0,M.M)(this.nzFormNoStatusService?this.nzFormNoStatusService.noFormStatus:(0,E.of)(!1)),(0,h.U)(([{status:b,hasFeedback:N},O])=>({status:O?"":b,hasFeedback:N})),(0,v.R)(this.destroy$)).subscribe(({status:b,hasFeedback:N})=>{this.setStatusStyles(b,N)}),this.isDestroy=!1,this.subscribeSelectionChange(),this.directionality.change?.pipe((0,v.R)(this.destroy$)).subscribe(b=>{this.dir=b,this.cdr.detectChanges()}),this.dir=this.directionality.value,this.focusMonitor.monitor(this.elementRef,!0).pipe((0,v.R)(this.destroy$)).subscribe(b=>{b?(this.focused=!0,this.cdr.markForCheck()):(this.focused=!1,this.cdr.markForCheck(),Promise.resolve().then(()=>{this.onTouched()}))})}ngOnDestroy(){this.isDestroy=!0,this.closeDropDown(),this.destroy$.next(),this.destroy$.complete()}isComposingChange(b){this.isComposing=b}setDisabledState(b){this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||b,this.closeDropDown(),this.isNzDisableFirstChange=!1}setStatusStyles(b,N){this.status=b,this.hasFeedback=N,this.cdr.markForCheck(),this.statusCls=(0,D.Zu)(this.prefixCls,b,N),Object.keys(this.statusCls).forEach(O=>{this.statusCls[O]?this.renderer.addClass(this.elementRef.nativeElement,O):this.renderer.removeClass(this.elementRef.nativeElement,O)})}ngOnChanges(b){const{nzNodes:N,nzDropdownClassName:O,nzStatus:j,nzPlacement:L}=b;if(N&&this.updateSelectedNodes(!0),O){const he=this.nzDropdownClassName&&this.nzDropdownClassName.trim();this.dropdownClassName=he?`${Pe} ${he}`:Pe}j&&this.setStatusStyles(this.nzStatus,this.hasFeedback),L&&this.nzPlacement&&y.yW[this.nzPlacement]&&(this.positions=[y.yW[this.nzPlacement]])}writeValue(b){(0,D.DX)(b)?(this.value=this.isMultiple&&Array.isArray(b)?b:[b],this.updateSelectedNodes(!0)):(this.value=[],this.selectedNodes.forEach(N=>{this.removeSelected(N,!1)}),this.selectedNodes=[]),this.cdr.markForCheck()}registerOnChange(b){this.onChange=b}registerOnTouched(b){this.onTouched=b}onKeydown(b){if(!this.nzDisabled)switch(b.keyCode){case n.hY:break;case n.Mf:this.closeDropDown();break;default:this.nzOpen||this.openDropdown()}}trigger(){this.nzDisabled||!this.nzDisabled&&this.nzOpen?this.closeDropDown():this.openDropdown()}openDropdown(){this.nzDisabled||(this.nzOpen=!0,this.nzOpenChange.emit(this.nzOpen),this.updateCdkConnectedOverlayStatus(),(this.nzShowSearch||this.isMultiple)&&this.focusOnInput())}closeDropDown(){this.onTouched(),this.nzOpen=!1,this.inputValue="",this.isNotFound=!1,this.nzOpenChange.emit(this.nzOpen),this.cdr.markForCheck()}onKeyDownInput(b){if(this.isMultiple&&!b.target.value&&b.keyCode===n.ZH&&(b.preventDefault(),this.selectedNodes.length)){const j=this.selectedNodes[this.selectedNodes.length-1];j&&!j.isDisabled&&this.removeSelected(j)}}onExpandedKeysChange(b){this.nzExpandChange.emit(b),this.expandedKeys=[...b.keys]}setInputValue(b){this.isComposing||(this.inputValue=b,this.updatePosition())}removeSelected(b,N=!0){b.isSelected=!1,b.isChecked=!1,this.nzCheckable?this.nzTreeService.conduct(b,this.nzCheckStrictly):this.nzTreeService.setSelectedNodeList(b,this.nzMultiple),N&&this.nzRemoved.emit(b)}focusOnInput(){this.nzSelectSearchComponent&&this.nzSelectSearchComponent.focus()}subscribeSelectionChange(){(0,u.T)(this.nzTreeClick.pipe((0,g.b)(b=>{const N=b.node;this.nzCheckable&&!N.isDisabled&&!N.isDisableCheckbox&&(N.isChecked=!N.isChecked,N.isHalfChecked=!1,this.nzCheckStrictly||this.nzTreeService.conduct(N)),this.nzCheckable&&(N.isSelected=!1)}),(0,d.h)(b=>{const N=b.node;return this.nzCheckable?!N.isDisabled&&!N.isDisableCheckbox:!N.isDisabled&&N.isSelectable})),this.nzCheckable?this.nzTreeCheckBoxChange.asObservable():(0,E.of)(),this.nzCleared,this.nzRemoved).pipe((0,v.R)(this.destroy$)).subscribe(()=>{this.updateSelectedNodes();const b=this.selectedNodes.map(N=>N.key);this.value=[...b],(this.nzShowSearch||this.isMultiple)&&(this.inputValue="",this.isNotFound=!1),this.isMultiple?(this.onChange(b),this.focusOnInput(),this.updatePosition()):(this.closeDropDown(),this.onChange(b.length?b[0]:null))})}updateSelectedNodes(b=!1){if(b){const N=this.coerceTreeNodes(this.nzNodes);this.nzTreeService.isMultiple=this.isMultiple,this.nzTreeService.isCheckStrictly=this.nzCheckStrictly,this.nzTreeService.initTree(N),this.nzCheckable?this.nzTreeService.conductCheck(this.value,this.nzCheckStrictly):this.nzTreeService.conductSelectedKeys(this.value,this.isMultiple)}this.selectedNodes=[...this.nzCheckable?this.getCheckedNodeList():this.getSelectedNodeList()]}updatePosition(){(0,T.e)(()=>{this.cdkConnectedOverlay?.overlayRef?.updatePosition()})}onPositionChange(b){this.dropDownPosition=b.connectionPair.originY}onClearSelection(){this.selectedNodes.forEach(b=>{this.removeSelected(b,!1)}),this.nzCleared.emit()}onClickOutside(b){this.elementRef.nativeElement.contains(b.target)||this.closeDropDown()}setSearchValues(b){Promise.resolve().then(()=>{this.isNotFound=(this.nzShowSearch||this.isMultiple)&&!!this.inputValue&&0===b.matchedKeys.length})}updateCdkConnectedOverlayStatus(){(!this.nzPlacement||!Je.includes(y.yW[this.nzPlacement]))&&(this.triggerWidth=this.cdkOverlayOrigin.elementRef.nativeElement.getBoundingClientRect().width)}trackValue(b,N){return N.key}static#e=this.\u0275fac=function(N){return new(N||_e)(i.Y36(Ue),i.Y36(f.jY),i.Y36(i.Qsj),i.Y36(i.sBO),i.Y36(i.SBq),i.Y36(P.Is,8),i.Y36(S.tE),i.Y36(A.P,9),i.Y36(k.kH,8),i.Y36(k.yW,8))};static#t=this.\u0275cmp=i.Xpm({type:_e,selectors:[["nz-tree-select"]],contentQueries:function(N,O,j){if(1&N&&i.Suo(j,Wt,7),2&N){let L;i.iGM(L=i.CRH())&&(O.nzTreeTemplateChild=L.first)}},viewQuery:function(N,O){if(1&N&&(i.Gf(_.Gt,5),i.Gf(Vt,5),i.Gf(t.xu,7),i.Gf(t.pI,5)),2&N){let j;i.iGM(j=i.CRH())&&(O.nzSelectSearchComponent=j.first),i.iGM(j=i.CRH())&&(O.treeRef=j.first),i.iGM(j=i.CRH())&&(O.cdkOverlayOrigin=j.first),i.iGM(j=i.CRH())&&(O.cdkConnectedOverlay=j.first)}},hostAttrs:[1,"ant-select"],hostVars:24,hostBindings:function(N,O){1&N&&i.NdJ("click",function(){return O.trigger()})("keydown",function(L){return O.onKeydown(L)}),2&N&&i.ekj("ant-select-in-form-item",!!O.nzFormStatusService)("ant-select-lg","large"===O.nzSize)("ant-select-rtl","rtl"===O.dir)("ant-select-sm","small"===O.nzSize)("ant-select-disabled",O.nzDisabled)("ant-select-single",!O.isMultiple)("ant-select-show-arrow",!O.isMultiple)("ant-select-show-search",!O.isMultiple)("ant-select-multiple",O.isMultiple)("ant-select-allow-clear",O.nzAllowClear)("ant-select-open",O.nzOpen)("ant-select-focused",O.nzOpen||O.focused)},inputs:{nzId:"nzId",nzAllowClear:"nzAllowClear",nzShowExpand:"nzShowExpand",nzShowLine:"nzShowLine",nzDropdownMatchSelectWidth:"nzDropdownMatchSelectWidth",nzCheckable:"nzCheckable",nzHideUnMatched:"nzHideUnMatched",nzShowIcon:"nzShowIcon",nzShowSearch:"nzShowSearch",nzDisabled:"nzDisabled",nzAsyncData:"nzAsyncData",nzMultiple:"nzMultiple",nzDefaultExpandAll:"nzDefaultExpandAll",nzCheckStrictly:"nzCheckStrictly",nzVirtualItemSize:"nzVirtualItemSize",nzVirtualMaxBufferPx:"nzVirtualMaxBufferPx",nzVirtualMinBufferPx:"nzVirtualMinBufferPx",nzVirtualHeight:"nzVirtualHeight",nzExpandedIcon:"nzExpandedIcon",nzNotFoundContent:"nzNotFoundContent",nzNodes:"nzNodes",nzOpen:"nzOpen",nzSize:"nzSize",nzPlaceHolder:"nzPlaceHolder",nzDropdownStyle:"nzDropdownStyle",nzDropdownClassName:"nzDropdownClassName",nzBackdrop:"nzBackdrop",nzStatus:"nzStatus",nzPlacement:"nzPlacement",nzExpandedKeys:"nzExpandedKeys",nzDisplayWith:"nzDisplayWith",nzMaxTagCount:"nzMaxTagCount",nzMaxTagPlaceholder:"nzMaxTagPlaceholder",nzTreeTemplate:"nzTreeTemplate"},outputs:{nzOpenChange:"nzOpenChange",nzCleared:"nzCleared",nzRemoved:"nzRemoved",nzExpandChange:"nzExpandChange",nzTreeClick:"nzTreeClick",nzTreeCheckBoxChange:"nzTreeCheckBoxChange"},exportAs:["nzTreeSelect"],features:[i._Bn([Ue,{provide:x.g2,useFactory:wt,deps:[[new i.PiD,i.zs3]]},{provide:l.JU,useExisting:(0,i.Gpc)(()=>_e),multi:!0}]),i.qOj,i.TTD],decls:9,vars:20,consts:[["cdkConnectedOverlay","","nzConnectedOverlay","",3,"cdkConnectedOverlayHasBackdrop","cdkConnectedOverlayOrigin","cdkConnectedOverlayPositions","cdkConnectedOverlayOpen","cdkConnectedOverlayTransformOriginOn","cdkConnectedOverlayMinWidth","cdkConnectedOverlayWidth","overlayOutsideClick","detach","positionChange"],["cdkOverlayOrigin","",1,"ant-select-selector"],[4,"ngIf"],[3,"nzId","showInput","value","mirrorSync","disabled","focusTrigger","keydown","isComposingChange","valueChange"],[3,"placeholder","display",4,"ngIf"],[3,"deletable","disabled","label",4,"ngIf"],[3,"showArrow","feedbackIcon",4,"ngIf"],[3,"clear",4,"ngIf"],[3,"ngClass","nzNoAnimation","dir","ngStyle"],["nzNoAnimation","","nzSelectMode","","nzBlockNode","",3,"hidden","nzData","nzMultiple","nzSearchValue","nzHideUnMatched","nzShowIcon","nzCheckable","nzAsyncData","nzShowExpand","nzShowLine","nzExpandedIcon","nzExpandAll","nzExpandedKeys","nzCheckedKeys","nzSelectedKeys","nzTreeTemplate","nzCheckStrictly","nzVirtualItemSize","nzVirtualMaxBufferPx","nzVirtualMinBufferPx","nzVirtualHeight","nzExpandChange","nzClick","nzCheckedKeysChange","nzSelectedKeysChange","nzCheckBoxChange","nzSearchValueChange"],["treeRef",""],["class","ant-select-not-found",4,"ngIf"],[1,"ant-select-not-found"],[3,"nzComponentName","specificContent"],[3,"deletable","disabled","label","delete",4,"ngFor","ngForOf","ngForTrackBy"],[3,"contentTemplateOutlet","contentTemplateOutletContext","deletable","disabled","label",4,"ngIf"],[3,"deletable","disabled","label","delete"],[3,"contentTemplateOutlet","contentTemplateOutletContext","deletable","disabled","label"],[3,"placeholder"],[3,"deletable","disabled","label"],[3,"showArrow","feedbackIcon"],["feedbackIconTpl",""],[3,"status",4,"ngIf"],[3,"status"],[3,"clear"]],template:function(N,O){1&N&&(i.YNc(0,et,4,36,"ng-template",0),i.NdJ("overlayOutsideClick",function(L){return O.onClickOutside(L)})("detach",function(){return O.closeDropDown()})("positionChange",function(L){return O.onPositionChange(L)}),i.TgZ(1,"div",1),i.YNc(2,xt,4,7,"ng-container",2),i.TgZ(3,"nz-select-search",3),i.NdJ("keydown",function(L){return O.onKeyDownInput(L)})("isComposingChange",function(L){return O.isComposing=L})("valueChange",function(L){return O.setInputValue(L)}),i.qZA(),i.YNc(4,Qe,1,3,"nz-select-placeholder",4),i.YNc(5,ke,1,3,"nz-select-item",5),i.YNc(6,pe,1,0,"nz-select-arrow",2),i.YNc(7,Ze,3,2,"nz-select-arrow",6),i.YNc(8,$e,1,0,"nz-select-clear",7),i.qZA()),2&N&&(i.Q6J("cdkConnectedOverlayHasBackdrop",O.nzBackdrop)("cdkConnectedOverlayOrigin",O.cdkOverlayOrigin)("cdkConnectedOverlayPositions",O.nzPlacement?O.positions:i.DdM(19,He))("cdkConnectedOverlayOpen",O.nzOpen)("cdkConnectedOverlayTransformOriginOn",".ant-select-tree-dropdown")("cdkConnectedOverlayMinWidth",O.nzDropdownMatchSelectWidth?null:O.triggerWidth)("cdkConnectedOverlayWidth",O.nzDropdownMatchSelectWidth?O.triggerWidth:null),i.xp6(2),i.Q6J("ngIf",O.isMultiple),i.xp6(1),i.Q6J("nzId",O.nzId)("showInput",O.nzShowSearch)("value",O.inputValue)("mirrorSync",O.isMultiple)("disabled",O.nzDisabled)("focusTrigger",O.nzOpen),i.xp6(1),i.Q6J("ngIf",O.nzPlaceHolder&&0===O.selectedNodes.length),i.xp6(1),i.Q6J("ngIf",!O.isMultiple&&1===O.selectedNodes.length&&!O.isComposing&&""===O.inputValue),i.xp6(1),i.Q6J("ngIf",!O.isMultiple),i.xp6(1),i.Q6J("ngIf",!O.isMultiple||O.hasFeedback&&!!O.status),i.xp6(1),i.Q6J("ngIf",O.nzAllowClear&&!O.nzDisabled&&O.selectedNodes.length))},dependencies:[P.Lv,R.mk,R.sg,R.O5,R.PC,t.pI,t.xu,_.uf,_.kq,_.Go,_.Y6,_.Gt,qt,cn.gB,y.hQ,A.P,k.w_,R.OU],encapsulation:2,data:{animation:[p.mF]}})}return(0,e.gn)([(0,D.yF)()],_e.prototype,"nzAllowClear",void 0),(0,e.gn)([(0,D.yF)()],_e.prototype,"nzShowExpand",void 0),(0,e.gn)([(0,D.yF)()],_e.prototype,"nzShowLine",void 0),(0,e.gn)([(0,D.yF)(),(0,f.oS)()],_e.prototype,"nzDropdownMatchSelectWidth",void 0),(0,e.gn)([(0,D.yF)()],_e.prototype,"nzCheckable",void 0),(0,e.gn)([(0,D.yF)(),(0,f.oS)()],_e.prototype,"nzHideUnMatched",void 0),(0,e.gn)([(0,D.yF)(),(0,f.oS)()],_e.prototype,"nzShowIcon",void 0),(0,e.gn)([(0,D.yF)()],_e.prototype,"nzShowSearch",void 0),(0,e.gn)([(0,D.yF)()],_e.prototype,"nzDisabled",void 0),(0,e.gn)([(0,D.yF)()],_e.prototype,"nzAsyncData",void 0),(0,e.gn)([(0,D.yF)()],_e.prototype,"nzMultiple",void 0),(0,e.gn)([(0,D.yF)()],_e.prototype,"nzDefaultExpandAll",void 0),(0,e.gn)([(0,D.yF)()],_e.prototype,"nzCheckStrictly",void 0),(0,e.gn)([(0,f.oS)()],_e.prototype,"nzSize",void 0),(0,e.gn)([(0,f.oS)()],_e.prototype,"nzBackdrop",void 0),_e})(),Ke=(()=>{class _e{static#e=this.\u0275fac=function(N){return new(N||_e)};static#t=this.\u0275mod=i.oAB({type:_e});static#n=this.\u0275inj=i.cJS({imports:[P.vT,R.ez,t.U8,l.u5,_.LV,en,Y.PV,cn.Xo,y.e4,A.g,k.mJ]})}return _e})()},41394:(nt,I,o)=>{"use strict";o.d(I,{FY:()=>b,cS:()=>N});var e=o(36028),n=o(69862),t=o(65879),i=o(22096),l=o(65592),C=o(47394),E=o(78645),u=o(92438),z=o(94664),M=o(37398),h=o(99397),v=o(59773),g=o(32181),d=o(1608),p=o(86825),f=o(96814),y=o(62831),T=o(96109),x=o(48128),D=o(90551),_=o(42840),P=o(70855),S=o(97582),A=o(27754),k=o(12131),R=o(49388),$=o(60095);const W=["file"],ze=["nz-upload-btn",""],Y=["*"];function G(O,j){}const V=function(O){return{$implicit:O}};function K(O,j){if(1&O&&(t.TgZ(0,"div",18),t.YNc(1,G,0,0,"ng-template",19),t.qZA()),2&O){const L=t.oxw(2).$implicit,he=t.MAs(5);t.ekj("ant-upload-list-item-file",!L.isUploading),t.xp6(1),t.Q6J("ngTemplateOutlet",he)("ngTemplateOutletContext",t.VKq(4,V,L))}}function te(O,j){if(1&O&&t._UZ(0,"img",22),2&O){const L=t.oxw(3).$implicit;t.Q6J("src",L.thumbUrl||L.url,t.LSH),t.uIk("alt",L.name)}}function ne(O,j){if(1&O){const L=t.EpF();t.TgZ(0,"a",20),t.NdJ("click",function(Ce){t.CHM(L);const bt=t.oxw(2).$implicit,Ft=t.oxw();return t.KtG(Ft.handlePreview(bt,Ce))}),t.YNc(1,te,1,2,"img",21),t.qZA()}if(2&O){t.oxw();const L=t.MAs(5),he=t.oxw().$implicit;t.ekj("ant-upload-list-item-file",!he.isImageUrl),t.Q6J("href",he.url||he.thumbUrl,t.LSH),t.xp6(1),t.Q6J("ngIf",he.isImageUrl)("ngIfElse",L)}}function fe(O,j){}function re(O,j){if(1&O&&(t.TgZ(0,"div",23),t.YNc(1,fe,0,0,"ng-template",19),t.qZA()),2&O){const L=t.oxw(2).$implicit,he=t.MAs(5);t.xp6(1),t.Q6J("ngTemplateOutlet",he)("ngTemplateOutletContext",t.VKq(2,V,L))}}function be(O,j){}function le(O,j){if(1&O&&t.YNc(0,be,0,0,"ng-template",19),2&O){const L=t.oxw(2).$implicit,he=t.MAs(5);t.Q6J("ngTemplateOutlet",he)("ngTemplateOutletContext",t.VKq(2,V,L))}}function ce(O,j){if(1&O&&(t.ynx(0,13),t.YNc(1,K,2,6,"div",14),t.YNc(2,ne,2,5,"a",15),t.YNc(3,re,2,4,"div",16),t.BQk(),t.YNc(4,le,1,4,"ng-template",null,17,t.W1O)),2&O){const L=t.oxw().$implicit;t.Q6J("ngSwitch",L.iconType),t.xp6(1),t.Q6J("ngSwitchCase","uploading"),t.xp6(1),t.Q6J("ngSwitchCase","thumbnail")}}function Q(O,j){1&O&&(t.ynx(0),t._UZ(1,"span",29),t.BQk())}function ie(O,j){if(1&O&&(t.ynx(0),t.YNc(1,Q,2,0,"ng-container",24),t.BQk()),2&O){const L=t.oxw(2).$implicit,he=t.MAs(4);t.xp6(1),t.Q6J("ngIf",L.isUploading)("ngIfElse",he)}}function ae(O,j){if(1&O&&(t.ynx(0),t._uU(1),t.BQk()),2&O){const L=t.oxw(5);t.xp6(1),t.hij(" ",L.locale.uploading," ")}}function xe(O,j){if(1&O&&(t.ynx(0),t.YNc(1,ae,2,1,"ng-container",24),t.BQk()),2&O){const L=t.oxw(2).$implicit,he=t.MAs(4);t.xp6(1),t.Q6J("ngIf",L.isUploading)("ngIfElse",he)}}function Me(O,j){if(1&O&&t._UZ(0,"span",30),2&O){const L=t.oxw(2).$implicit;t.Q6J("nzType",L.isUploading?"loading":"paper-clip")}}function Ye(O,j){if(1&O&&(t.ynx(0)(1,13),t.YNc(2,ie,2,2,"ng-container",27),t.YNc(3,xe,2,2,"ng-container",27),t.YNc(4,Me,1,1,"span",28),t.BQk()()),2&O){const L=t.oxw(3);t.xp6(1),t.Q6J("ngSwitch",L.listType),t.xp6(1),t.Q6J("ngSwitchCase","picture"),t.xp6(1),t.Q6J("ngSwitchCase","picture-card")}}function q(O,j){}function ve(O,j){if(1&O&&t._UZ(0,"span",31),2&O){const L=t.oxw().$implicit;t.Q6J("nzType",L.isImageUrl?"picture":"file")}}function ee(O,j){if(1&O&&(t.YNc(0,Ye,5,3,"ng-container",24),t.YNc(1,q,0,0,"ng-template",19,25,t.W1O),t.YNc(3,ve,1,1,"ng-template",null,26,t.W1O)),2&O){const L=j.$implicit,he=t.MAs(2),Ce=t.oxw(2);t.Q6J("ngIf",!Ce.iconRender)("ngIfElse",he),t.xp6(1),t.Q6J("ngTemplateOutlet",Ce.iconRender)("ngTemplateOutletContext",t.VKq(4,V,L))}}function Be(O,j){if(1&O){const L=t.EpF();t.TgZ(0,"button",33),t.NdJ("click",function(Ce){t.CHM(L);const bt=t.oxw(2).$implicit,Ft=t.oxw();return t.KtG(Ft.handleRemove(bt,Ce))}),t._UZ(1,"span",34),t.qZA()}if(2&O){const L=t.oxw(3);t.uIk("title",L.locale.removeFile)}}function Re(O,j){if(1&O&&t.YNc(0,Be,2,1,"button",32),2&O){const L=t.oxw(2);t.Q6J("ngIf",L.icons.showRemoveIcon)}}function ct(O,j){if(1&O){const L=t.EpF();t.TgZ(0,"button",33),t.NdJ("click",function(){t.CHM(L);const Ce=t.oxw(2).$implicit,bt=t.oxw();return t.KtG(bt.handleDownload(Ce))}),t._UZ(1,"span",35),t.qZA()}if(2&O){const L=t.oxw(3);t.uIk("title",L.locale.downloadFile)}}function Ae(O,j){if(1&O&&t.YNc(0,ct,2,1,"button",32),2&O){const L=t.oxw().$implicit;t.Q6J("ngIf",L.showDownload)}}function Mt(O,j){}function je(O,j){}function ot(O,j){if(1&O&&(t.TgZ(0,"span"),t.YNc(1,Mt,0,0,"ng-template",10),t.YNc(2,je,0,0,"ng-template",10),t.qZA()),2&O){t.oxw(2);const L=t.MAs(9),he=t.MAs(7),Ce=t.oxw();t.Gre("ant-upload-list-item-card-actions ","picture"===Ce.listType?"picture":"",""),t.xp6(1),t.Q6J("ngTemplateOutlet",L),t.xp6(1),t.Q6J("ngTemplateOutlet",he)}}function mt(O,j){if(1&O&&t.YNc(0,ot,3,5,"span",36),2&O){const L=t.oxw(2);t.Q6J("ngIf","picture-card"!==L.listType)}}function we(O,j){if(1&O){const L=t.EpF();t.TgZ(0,"a",39),t.NdJ("click",function(Ce){t.CHM(L);const bt=t.oxw(2).$implicit,Ft=t.oxw();return t.KtG(Ft.handlePreview(bt,Ce))}),t._uU(1),t.qZA()}if(2&O){const L=t.oxw(2).$implicit;t.Q6J("href",L.url,t.LSH),t.uIk("title",L.name)("download",L.linkProps&&L.linkProps.download),t.xp6(1),t.hij(" ",L.name," ")}}function de(O,j){if(1&O){const L=t.EpF();t.TgZ(0,"span",40),t.NdJ("click",function(Ce){t.CHM(L);const bt=t.oxw(2).$implicit,Ft=t.oxw();return t.KtG(Ft.handlePreview(bt,Ce))}),t._uU(1),t.qZA()}if(2&O){const L=t.oxw(2).$implicit;t.uIk("title",L.name),t.xp6(1),t.hij(" ",L.name," ")}}function U(O,j){}function B(O,j){if(1&O&&(t.YNc(0,we,2,4,"a",37),t.YNc(1,de,2,2,"span",38),t.YNc(2,U,0,0,"ng-template",10)),2&O){const L=t.oxw().$implicit,he=t.MAs(11);t.Q6J("ngIf",L.url),t.xp6(1),t.Q6J("ngIf",!L.url),t.xp6(1),t.Q6J("ngTemplateOutlet",he)}}function Ee(O,j){}function Ie(O,j){}const Ne=function(){return{opacity:.5,"pointer-events":"none"}};function pt(O,j){if(1&O){const L=t.EpF();t.TgZ(0,"a",44),t.NdJ("click",function(Ce){t.CHM(L);const bt=t.oxw(2).$implicit,Ft=t.oxw();return t.KtG(Ft.handlePreview(bt,Ce))}),t._UZ(1,"span",45),t.qZA()}if(2&O){const L=t.oxw(2).$implicit,he=t.oxw();t.Q6J("href",L.url||L.thumbUrl,t.LSH)("ngStyle",L.url||L.thumbUrl?null:t.DdM(3,Ne)),t.uIk("title",he.locale.previewFile)}}function Dt(O,j){}function Lt(O,j){if(1&O&&(t.ynx(0),t.YNc(1,Dt,0,0,"ng-template",10),t.BQk()),2&O){t.oxw(2);const L=t.MAs(9);t.xp6(1),t.Q6J("ngTemplateOutlet",L)}}function Ut(O,j){}function qt(O,j){if(1&O&&(t.TgZ(0,"span",41),t.YNc(1,pt,2,4,"a",42),t.YNc(2,Lt,2,1,"ng-container",43),t.YNc(3,Ut,0,0,"ng-template",10),t.qZA()),2&O){const L=t.oxw().$implicit,he=t.MAs(7),Ce=t.oxw();t.xp6(1),t.Q6J("ngIf",Ce.icons.showPreviewIcon),t.xp6(1),t.Q6J("ngIf","done"===L.status),t.xp6(1),t.Q6J("ngTemplateOutlet",he)}}function en(O,j){if(1&O&&(t.TgZ(0,"div",46),t._UZ(1,"nz-progress",47),t.qZA()),2&O){const L=t.oxw().$implicit;t.xp6(1),t.Q6J("nzPercent",L.percent)("nzShowInfo",!1)("nzStrokeWidth",2)}}function cn(O,j){if(1&O&&(t.TgZ(0,"div")(1,"div",1),t.YNc(2,ce,6,3,"ng-template",null,2,t.W1O),t.YNc(4,ee,5,6,"ng-template",null,3,t.W1O),t.YNc(6,Re,1,1,"ng-template",null,4,t.W1O),t.YNc(8,Ae,1,1,"ng-template",null,5,t.W1O),t.YNc(10,mt,1,1,"ng-template",null,6,t.W1O),t.YNc(12,B,3,3,"ng-template",null,7,t.W1O),t.TgZ(14,"div",8)(15,"span",9),t.YNc(16,Ee,0,0,"ng-template",10),t.YNc(17,Ie,0,0,"ng-template",10),t.qZA()(),t.YNc(18,qt,4,3,"span",11),t.YNc(19,en,2,3,"div",12),t.qZA()()),2&O){const L=j.$implicit,he=t.MAs(3),Ce=t.MAs(13),bt=t.oxw();t.Gre("ant-upload-list-",bt.listType,"-container"),t.xp6(1),t.MT6("ant-upload-list-item ant-upload-list-item-",L.status," ant-upload-list-item-list-type-",bt.listType,""),t.Q6J("@itemState",void 0)("nzTooltipTitle","error"===L.status?L.message:null),t.uIk("data-key",L.key),t.xp6(15),t.Q6J("ngTemplateOutlet",he),t.xp6(1),t.Q6J("ngTemplateOutlet",Ce),t.xp6(1),t.Q6J("ngIf","picture-card"===bt.listType&&!L.isUploading),t.xp6(1),t.Q6J("ngIf",L.isUploading)}}const Wt=["uploadComp"],Vt=["listComp"],st=function(){return[]};function He(O,j){if(1&O&&t._UZ(0,"nz-upload-list",8,9),2&O){const L=t.oxw(2);t.Udp("display",L.nzShowUploadList?"":"none"),t.Q6J("locale",L.locale)("listType",L.nzListType)("items",L.nzFileList||t.DdM(13,st))("icons",L.nzShowUploadList)("iconRender",L.nzIconRender)("previewFile",L.nzPreviewFile)("previewIsImage",L.nzPreviewIsImage)("onPreview",L.nzPreview)("onRemove",L.onRemove)("onDownload",L.nzDownload)("dir",L.dir)}}function et(O,j){1&O&&t.GkF(0)}function It(O,j){if(1&O&&(t.ynx(0),t.YNc(1,et,1,0,"ng-container",10),t.BQk()),2&O){const L=t.oxw(2);t.xp6(1),t.Q6J("ngTemplateOutlet",L.nzFileListRender)("ngTemplateOutletContext",t.VKq(2,V,L.nzFileList))}}function Ot(O,j){if(1&O&&(t.YNc(0,He,2,14,"nz-upload-list",6),t.YNc(1,It,2,4,"ng-container",7)),2&O){const L=t.oxw();t.Q6J("ngIf",L.locale&&!L.nzFileListRender),t.xp6(1),t.Q6J("ngIf",L.nzFileListRender)}}function xt(O,j){1&O&&t.Hsn(0)}function Qe(O,j){}function ke(O,j){if(1&O&&(t.TgZ(0,"div",11)(1,"div",12,13),t.YNc(3,Qe,0,0,"ng-template",14),t.qZA()()),2&O){const L=t.oxw(),he=t.MAs(3);t.Udp("display",L.nzShowButton?"":"none"),t.Q6J("ngClass",L.classList),t.xp6(1),t.Q6J("options",L._btnOptions),t.xp6(2),t.Q6J("ngTemplateOutlet",he)}}function pe(O,j){}function qe(O,j){}function ge(O,j){if(1&O){const L=t.EpF();t.ynx(0),t.TgZ(1,"div",15),t.NdJ("drop",function(Ce){t.CHM(L);const bt=t.oxw();return t.KtG(bt.fileDrop(Ce))})("dragover",function(Ce){t.CHM(L);const bt=t.oxw();return t.KtG(bt.fileDrop(Ce))})("dragleave",function(Ce){t.CHM(L);const bt=t.oxw();return t.KtG(bt.fileDrop(Ce))}),t.TgZ(2,"div",16,13)(4,"div",17),t.YNc(5,pe,0,0,"ng-template",14),t.qZA()()(),t.YNc(6,qe,0,0,"ng-template",14),t.BQk()}if(2&O){const L=t.oxw(),he=t.MAs(3),Ce=t.MAs(1);t.xp6(1),t.Q6J("ngClass",L.classList),t.xp6(1),t.Q6J("options",L._btnOptions),t.xp6(3),t.Q6J("ngTemplateOutlet",he),t.xp6(1),t.Q6J("ngTemplateOutlet",Ce)}}function Ze(O,j){}function $e(O,j){}function Ue(O,j){if(1&O&&(t.ynx(0),t.YNc(1,Ze,0,0,"ng-template",14),t.YNc(2,$e,0,0,"ng-template",14),t.BQk()),2&O){t.oxw(2);const L=t.MAs(1),he=t.MAs(5);t.xp6(1),t.Q6J("ngTemplateOutlet",L),t.xp6(1),t.Q6J("ngTemplateOutlet",he)}}function wt(O,j){if(1&O&&t.YNc(0,Ue,3,2,"ng-container",3),2&O){const L=t.oxw(),he=t.MAs(10);t.Q6J("ngIf","picture-card"===L.nzListType)("ngIfElse",he)}}function De(O,j){}function Pe(O,j){}function Je(O,j){if(1&O&&(t.YNc(0,De,0,0,"ng-template",14),t.YNc(1,Pe,0,0,"ng-template",14)),2&O){t.oxw();const L=t.MAs(5),he=t.MAs(1);t.Q6J("ngTemplateOutlet",L),t.xp6(1),t.Q6J("ngTemplateOutlet",he)}}let Ge=(()=>{class O{onClick(){this.options.disabled||!this.options.openFileDialogOnClick||this.file.nativeElement.click()}onFileDrop(L){if(this.options.disabled||"dragover"===L.type)L.preventDefault();else{if(this.options.directory)this.traverseFileTree(L.dataTransfer.items);else{const he=Array.prototype.slice.call(L.dataTransfer.files).filter(Ce=>this.attrAccept(Ce,this.options.accept));he.length&&this.uploadFiles(he)}L.preventDefault()}}onChange(L){if(this.options.disabled)return;const he=L.target;this.uploadFiles(he.files),he.value=""}traverseFileTree(L){const he=(Ce,bt)=>{Ce.isFile?Ce.file(Ft=>{this.attrAccept(Ft,this.options.accept)&&this.uploadFiles([Ft])}):Ce.isDirectory&&Ce.createReader().readEntries(sn=>{for(const pn of sn)he(pn,`${bt}${Ce.name}/`)})};for(const Ce of L)he(Ce.webkitGetAsEntry(),"")}attrAccept(L,he){if(L&&he){const Ce=Array.isArray(he)?he:he.split(","),bt=`${L.name}`,Ft=`${L.type}`,sn=Ft.replace(/\/.*$/,"");return Ce.some(pn=>{const vn=pn.trim();return"."===vn.charAt(0)?-1!==bt.toLowerCase().indexOf(vn.toLowerCase(),bt.toLowerCase().length-vn.toLowerCase().length):/\/\*$/.test(vn)?sn===vn.replace(/\/.*$/,""):Ft===vn})}return!0}attachUid(L){return L.uid||(L.uid=Math.random().toString(36).substring(2)),L}uploadFiles(L){let he=(0,i.of)(Array.prototype.slice.call(L));this.options.filters&&this.options.filters.forEach(Ce=>{he=he.pipe((0,z.w)(bt=>{const Ft=Ce.fn(bt);return Ft instanceof l.y?Ft:(0,i.of)(Ft)}))}),he.subscribe(Ce=>{Ce.forEach(bt=>{this.attachUid(bt),this.upload(bt,Ce)})},Ce=>{(0,d.ZK)("Unhandled upload filter error",Ce)})}upload(L,he){if(!this.options.beforeUpload)return this.post(L);const Ce=this.options.beforeUpload(L,he);if(Ce instanceof l.y)Ce.subscribe(bt=>{const Ft=Object.prototype.toString.call(bt);"[object File]"===Ft||"[object Blob]"===Ft?(this.attachUid(bt),this.post(bt)):"boolean"==typeof bt&&!1!==bt&&this.post(L)},bt=>{(0,d.ZK)("Unhandled upload beforeUpload error",bt)});else if(!1!==Ce)return this.post(L)}post(L){if(this.destroy)return;let Ce,he=(0,i.of)(L);const bt=this.options,{uid:Ft}=L,{action:sn,data:pn,headers:vn,transformFile:Dn}=bt,Mn={action:"string"==typeof sn?sn:"",name:bt.name,headers:vn,file:L,postFile:L,data:pn,withCredentials:bt.withCredentials,onProgress:bt.onProgress?En=>{bt.onProgress(En,L)}:void 0,onSuccess:(En,bn)=>{this.clean(Ft),bt.onSuccess(En,L,bn)},onError:En=>{this.clean(Ft),bt.onError(En,L)}};if("function"==typeof sn){const En=sn(L);En instanceof l.y?he=he.pipe((0,z.w)(()=>En),(0,M.U)(bn=>(Mn.action=bn,L))):Mn.action=En}if("function"==typeof Dn){const En=Dn(L);he=he.pipe((0,z.w)(()=>En instanceof l.y?En:(0,i.of)(En)),(0,h.b)(bn=>Ce=bn))}if("function"==typeof pn){const En=pn(L);En instanceof l.y?he=he.pipe((0,z.w)(()=>En),(0,M.U)(bn=>(Mn.data=bn,Ce??L))):Mn.data=En}if("function"==typeof vn){const En=vn(L);En instanceof l.y?he=he.pipe((0,z.w)(()=>En),(0,M.U)(bn=>(Mn.headers=bn,Ce??L))):Mn.headers=En}he.subscribe(En=>{Mn.postFile=En;const bn=(bt.customRequest||this.xhr).call(this,Mn);bn instanceof C.w0||(0,d.ZK)("Must return Subscription type in '[nzCustomRequest]' property"),this.reqs[Ft]=bn,bt.onStart(L)})}xhr(L){const he=new FormData;L.data&&Object.keys(L.data).map(bt=>{he.append(bt,L.data[bt])}),he.append(L.name,L.postFile),L.headers||(L.headers={}),null!==L.headers["X-Requested-With"]?L.headers["X-Requested-With"]="XMLHttpRequest":delete L.headers["X-Requested-With"];const Ce=new n.aW("POST",L.action,he,{reportProgress:!0,withCredentials:L.withCredentials,headers:new n.WM(L.headers)});return this.http.request(Ce).subscribe(bt=>{bt.type===n.dt.UploadProgress?(bt.total>0&&(bt.percent=bt.loaded/bt.total*100),L.onProgress(bt,L.file)):bt instanceof n.Zn&&L.onSuccess(bt.body,L.file,bt)},bt=>{this.abort(L.file),L.onError(bt,L.file)})}clean(L){const he=this.reqs[L];he instanceof C.w0&&he.unsubscribe(),delete this.reqs[L]}abort(L){L?this.clean(L&&L.uid):Object.keys(this.reqs).forEach(he=>this.clean(he))}constructor(L,he,Ce){if(this.ngZone=L,this.http=he,this.elementRef=Ce,this.reqs={},this.destroy=!1,this.destroy$=new E.x,!he)throw new Error("Not found 'HttpClient', You can import 'HttpClientModule' in your root module.")}ngOnInit(){this.ngZone.runOutsideAngular(()=>{(0,u.R)(this.elementRef.nativeElement,"click").pipe((0,v.R)(this.destroy$)).subscribe(()=>this.onClick()),(0,u.R)(this.elementRef.nativeElement,"keydown").pipe((0,v.R)(this.destroy$)).subscribe(L=>{this.options.disabled||("Enter"===L.key||L.keyCode===e.K5)&&this.onClick()})})}ngOnDestroy(){this.destroy=!0,this.destroy$.next(),this.abort()}static#e=this.\u0275fac=function(he){return new(he||O)(t.Y36(t.R0b),t.Y36(n.eN,8),t.Y36(t.SBq))};static#t=this.\u0275cmp=t.Xpm({type:O,selectors:[["","nz-upload-btn",""]],viewQuery:function(he,Ce){if(1&he&&t.Gf(W,7),2&he){let bt;t.iGM(bt=t.CRH())&&(Ce.file=bt.first)}},hostAttrs:[1,"ant-upload"],hostVars:4,hostBindings:function(he,Ce){1&he&&t.NdJ("drop",function(Ft){return Ce.onFileDrop(Ft)})("dragover",function(Ft){return Ce.onFileDrop(Ft)}),2&he&&(t.uIk("tabindex","0")("role","button"),t.ekj("ant-upload-disabled",Ce.options.disabled))},inputs:{options:"options"},exportAs:["nzUploadBtn"],attrs:ze,ngContentSelectors:Y,decls:3,vars:4,consts:[["type","file",2,"display","none",3,"multiple","change"],["file",""]],template:function(he,Ce){1&he&&(t.F$t(),t.TgZ(0,"input",0,1),t.NdJ("change",function(Ft){return Ce.onChange(Ft)}),t.qZA(),t.Hsn(2)),2&he&&(t.Q6J("multiple",Ce.options.multiple),t.uIk("accept",Ce.options.accept)("directory",Ce.options.directory?"directory":null)("webkitdirectory",Ce.options.directory?"webkitdirectory":null))},encapsulation:2})}return O})();const Ke=O=>!!O&&0===O.indexOf("image/");let it=(()=>{class O{get showPic(){return"picture"===this.listType||"picture-card"===this.listType}set items(L){this.list=L}genErr(L){return L.response&&"string"==typeof L.response?L.response:L.error&&L.error.statusText||this.locale.uploadError}extname(L){const he=L.split("/"),bt=he[he.length-1].split(/#|\?/)[0];return(/\.[^./\\]*$/.exec(bt)||[""])[0]}isImageUrl(L){if(Ke(L.type))return!0;const he=L.thumbUrl||L.url||"";if(!he)return!1;const Ce=this.extname(he);return!(!/^data:image\//.test(he)&&!/(webp|svg|png|gif|jpg|jpeg|jfif|bmp|dpg)$/i.test(Ce))||!/^data:/.test(he)&&!Ce}getIconType(L){return this.showPic?L.isUploading||!L.thumbUrl&&!L.url?"uploading":"thumbnail":""}previewImage(L){if(!Ke(L.type)||!this.platform.isBrowser)return(0,i.of)("");const he=this.doc.createElement("canvas");he.width=200,he.height=200,he.style.cssText="position: fixed; left: 0; top: 0; width: 200px; height: 200px; z-index: 9999; display: none;",this.doc.body.appendChild(he);const Ce=he.getContext("2d"),bt=new Image,Ft=URL.createObjectURL(L);return bt.src=Ft,(0,u.R)(bt,"load").pipe((0,M.U)(()=>{const{width:sn,height:pn}=bt;let vn=200,Dn=200,Mn=0,En=0;sn"u"||typeof L>"u"||!L.FileReader||!L.File||this.list.filter(he=>he.originFileObj instanceof File&&void 0===he.thumbUrl).forEach(he=>{he.thumbUrl="";const Ce=(this.previewFile?this.previewFile(he):this.previewImage(he.originFileObj)).pipe((0,v.R)(this.destroy$));this.ngZone.runOutsideAngular(()=>{Ce.subscribe(bt=>{this.ngZone.run(()=>{he.thumbUrl=bt,this.detectChanges()})})})})}showDownload(L){return!(!this.icons.showDownloadIcon||"done"!==L.status)}fixData(){this.list.forEach(L=>{L.isUploading="uploading"===L.status,L.message=this.genErr(L),L.linkProps="string"==typeof L.linkProps?JSON.parse(L.linkProps):L.linkProps,L.isImageUrl=this.previewIsImage?this.previewIsImage(L):this.isImageUrl(L),L.iconType=this.getIconType(L),L.showDownload=this.showDownload(L)})}handlePreview(L,he){if(this.onPreview)return he.preventDefault(),this.onPreview(L)}handleRemove(L,he){he.preventDefault(),this.onRemove&&this.onRemove(L)}handleDownload(L){"function"==typeof this.onDownload?this.onDownload(L):L.url&&window.open(L.url)}constructor(L,he,Ce,bt){this.cdr=L,this.doc=he,this.ngZone=Ce,this.platform=bt,this.list=[],this.locale={},this.iconRender=null,this.dir="ltr",this.destroy$=new E.x}detectChanges(){this.fixData(),this.cdr.detectChanges()}ngOnChanges(){this.fixData(),this.genThumb()}ngOnDestroy(){this.destroy$.next()}static#e=this.\u0275fac=function(he){return new(he||O)(t.Y36(t.sBO),t.Y36(f.K0),t.Y36(t.R0b),t.Y36(y.t4))};static#t=this.\u0275cmp=t.Xpm({type:O,selectors:[["nz-upload-list"]],hostAttrs:[1,"ant-upload-list"],hostVars:8,hostBindings:function(he,Ce){2&he&&t.ekj("ant-upload-list-rtl","rtl"===Ce.dir)("ant-upload-list-text","text"===Ce.listType)("ant-upload-list-picture","picture"===Ce.listType)("ant-upload-list-picture-card","picture-card"===Ce.listType)},inputs:{locale:"locale",listType:"listType",items:"items",icons:"icons",onPreview:"onPreview",onRemove:"onRemove",onDownload:"onDownload",previewFile:"previewFile",previewIsImage:"previewIsImage",iconRender:"iconRender",dir:"dir"},exportAs:["nzUploadList"],features:[t.TTD],decls:1,vars:1,consts:[[3,"class",4,"ngFor","ngForOf"],["nz-tooltip","",3,"nzTooltipTitle"],["icon",""],["iconNode",""],["removeIcon",""],["downloadIcon",""],["downloadOrDelete",""],["preview",""],[1,"ant-upload-list-item-info"],[1,"ant-upload-span"],[3,"ngTemplateOutlet"],["class","ant-upload-list-item-actions",4,"ngIf"],["class","ant-upload-list-item-progress",4,"ngIf"],[3,"ngSwitch"],["class","ant-upload-list-item-thumbnail",3,"ant-upload-list-item-file",4,"ngSwitchCase"],["class","ant-upload-list-item-thumbnail","target","_blank","rel","noopener noreferrer",3,"ant-upload-list-item-file","href","click",4,"ngSwitchCase"],["class","ant-upload-text-icon",4,"ngSwitchDefault"],["noImageThumbTpl",""],[1,"ant-upload-list-item-thumbnail"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],["target","_blank","rel","noopener noreferrer",1,"ant-upload-list-item-thumbnail",3,"href","click"],["class","ant-upload-list-item-image",3,"src",4,"ngIf","ngIfElse"],[1,"ant-upload-list-item-image",3,"src"],[1,"ant-upload-text-icon"],[4,"ngIf","ngIfElse"],["customIconRender",""],["iconNodeFileIcon",""],[4,"ngSwitchCase"],["nz-icon","",3,"nzType",4,"ngSwitchDefault"],["nz-icon","","nzType","loading"],["nz-icon","",3,"nzType"],["nz-icon","","nzTheme","twotone",3,"nzType"],["type","button","nz-button","","nzType","text","nzSize","small","class","ant-upload-list-item-card-actions-btn",3,"click",4,"ngIf"],["type","button","nz-button","","nzType","text","nzSize","small",1,"ant-upload-list-item-card-actions-btn",3,"click"],["nz-icon","","nzType","delete"],["nz-icon","","nzType","download"],[3,"class",4,"ngIf"],["target","_blank","rel","noopener noreferrer","class","ant-upload-list-item-name",3,"href","click",4,"ngIf"],["class","ant-upload-list-item-name",3,"click",4,"ngIf"],["target","_blank","rel","noopener noreferrer",1,"ant-upload-list-item-name",3,"href","click"],[1,"ant-upload-list-item-name",3,"click"],[1,"ant-upload-list-item-actions"],["target","_blank","rel","noopener noreferrer",3,"href","ngStyle","click",4,"ngIf"],[4,"ngIf"],["target","_blank","rel","noopener noreferrer",3,"href","ngStyle","click"],["nz-icon","","nzType","eye"],[1,"ant-upload-list-item-progress"],["nzType","line",3,"nzPercent","nzShowInfo","nzStrokeWidth"]],template:function(he,Ce){1&he&&t.YNc(0,cn,20,14,"div",0),2&he&&t.Q6J("ngForOf",Ce.list)},dependencies:[f.sg,f.O5,f.tP,f.PC,f.RF,f.n9,f.ED,T.SY,x.M,D.Ls,_.ix,P.w],encapsulation:2,data:{animation:[(0,p.X$)("itemState",[(0,p.eR)(":enter",[(0,p.oB)({height:"0",width:"0",opacity:0}),(0,p.jt)(150,(0,p.oB)({height:"*",width:"*",opacity:1}))]),(0,p.eR)(":leave",[(0,p.jt)(150,(0,p.oB)({height:"0",width:"0",opacity:0}))])])]},changeDetection:0})}return O})(),b=(()=>{class O{set nzShowUploadList(L){this._showUploadList="boolean"==typeof L?(0,A.sw)(L):L}get nzShowUploadList(){return this._showUploadList}zipOptions(){"boolean"==typeof this.nzShowUploadList&&this.nzShowUploadList&&(this.nzShowUploadList={showPreviewIcon:!0,showRemoveIcon:!0,showDownloadIcon:!0});const L=this.nzFilter.slice();if(this.nzMultiple&&this.nzLimit>0&&-1===L.findIndex(he=>"limit"===he.name)&&L.push({name:"limit",fn:he=>he.slice(-this.nzLimit)}),this.nzSize>0&&-1===L.findIndex(he=>"size"===he.name)&&L.push({name:"size",fn:he=>he.filter(Ce=>Ce.size/1024<=this.nzSize)}),this.nzFileType&&this.nzFileType.length>0&&-1===L.findIndex(he=>"type"===he.name)){const he=this.nzFileType.split(",");L.push({name:"type",fn:Ce=>Ce.filter(bt=>~he.indexOf(bt.type))})}return this._btnOptions={disabled:this.nzDisabled,accept:this.nzAccept,action:this.nzAction,directory:this.nzDirectory,openFileDialogOnClick:this.nzOpenFileDialogOnClick,beforeUpload:this.nzBeforeUpload,customRequest:this.nzCustomRequest,data:this.nzData,headers:this.nzHeaders,name:this.nzName,multiple:this.nzMultiple,withCredentials:this.nzWithCredentials,filters:L,transformFile:this.nzTransformFile,onStart:this.onStart,onProgress:this.onProgress,onSuccess:this.onSuccess,onError:this.onError},this}constructor(L,he,Ce,bt,Ft){this.ngZone=L,this.document=he,this.cdr=Ce,this.i18n=bt,this.directionality=Ft,this.destroy$=new E.x,this.dir="ltr",this.nzType="select",this.nzLimit=0,this.nzSize=0,this.nzDirectory=!1,this.nzOpenFileDialogOnClick=!0,this.nzFilter=[],this.nzFileList=[],this.nzDisabled=!1,this.nzListType="text",this.nzMultiple=!1,this.nzName="file",this._showUploadList=!0,this.nzShowButton=!0,this.nzWithCredentials=!1,this.nzIconRender=null,this.nzFileListRender=null,this.nzChange=new t.vpe,this.nzFileListChange=new t.vpe,this.onStart=sn=>{this.nzFileList||(this.nzFileList=[]);const pn=this.fileToObject(sn);pn.status="uploading",this.nzFileList=this.nzFileList.concat(pn),this.nzFileListChange.emit(this.nzFileList),this.nzChange.emit({file:pn,fileList:this.nzFileList,type:"start"}),this.detectChangesList()},this.onProgress=(sn,pn)=>{const Dn=this.getFileItem(pn,this.nzFileList);Dn.percent=sn.percent,this.nzChange.emit({event:sn,file:{...Dn},fileList:this.nzFileList,type:"progress"}),this.detectChangesList()},this.onSuccess=(sn,pn)=>{const vn=this.nzFileList,Dn=this.getFileItem(pn,vn);Dn.status="done",Dn.response=sn,this.nzChange.emit({file:{...Dn},fileList:vn,type:"success"}),this.detectChangesList()},this.onError=(sn,pn)=>{const vn=this.nzFileList,Dn=this.getFileItem(pn,vn);Dn.error=sn,Dn.status="error",this.nzChange.emit({file:{...Dn},fileList:vn,type:"error"}),this.detectChangesList()},this.onRemove=sn=>{this.uploadComp.abort(sn),sn.status="removed";const pn="function"==typeof this.nzRemove?this.nzRemove(sn):null==this.nzRemove||this.nzRemove;(pn instanceof l.y?pn:(0,i.of)(pn)).pipe((0,g.h)(vn=>vn)).subscribe(()=>{this.nzFileList=this.removeFileItem(sn,this.nzFileList),this.nzChange.emit({file:sn,fileList:this.nzFileList,type:"removed"}),this.nzFileListChange.emit(this.nzFileList),this.cdr.detectChanges()})},this.prefixCls="ant-upload",this.classList=[]}fileToObject(L){return{lastModified:L.lastModified,lastModifiedDate:L.lastModifiedDate,name:L.filename||L.name,size:L.size,type:L.type,uid:L.uid,response:L.response,error:L.error,percent:0,originFileObj:L}}getFileItem(L,he){return he.filter(Ce=>Ce.uid===L.uid)[0]}removeFileItem(L,he){return he.filter(Ce=>Ce.uid!==L.uid)}fileDrop(L){L.type!==this.dragState&&(this.dragState=L.type,this.setClassMap())}detectChangesList(){this.cdr.detectChanges(),this.listComp?.detectChanges()}setClassMap(){let L=[];"drag"===this.nzType?(this.nzFileList.some(he=>"uploading"===he.status)&&L.push(`${this.prefixCls}-drag-uploading`),"dragover"===this.dragState&&L.push(`${this.prefixCls}-drag-hover`)):L=[`${this.prefixCls}-select-${this.nzListType}`],this.classList=[this.prefixCls,`${this.prefixCls}-${this.nzType}`,...L,this.nzDisabled&&`${this.prefixCls}-disabled`||"","rtl"===this.dir&&`${this.prefixCls}-rtl`||""].filter(he=>!!he),this.cdr.detectChanges()}ngOnInit(){this.dir=this.directionality.value,this.directionality.change?.pipe((0,v.R)(this.destroy$)).subscribe(L=>{this.dir=L,this.setClassMap(),this.cdr.detectChanges()}),this.i18n.localeChange.pipe((0,v.R)(this.destroy$)).subscribe(()=>{this.locale=this.i18n.getLocaleData("Upload"),this.detectChangesList()})}ngAfterViewInit(){this.ngZone.runOutsideAngular(()=>(0,u.R)(this.document.body,"drop").pipe((0,v.R)(this.destroy$)).subscribe(L=>{L.preventDefault(),L.stopPropagation()}))}ngOnChanges(){this.zipOptions().setClassMap()}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(he){return new(he||O)(t.Y36(t.R0b),t.Y36(f.K0),t.Y36(t.sBO),t.Y36(k.wi),t.Y36(R.Is,8))};static#t=this.\u0275cmp=t.Xpm({type:O,selectors:[["nz-upload"]],viewQuery:function(he,Ce){if(1&he&&(t.Gf(Wt,5),t.Gf(Vt,5)),2&he){let bt;t.iGM(bt=t.CRH())&&(Ce.uploadComp=bt.first),t.iGM(bt=t.CRH())&&(Ce.listComp=bt.first)}},hostVars:2,hostBindings:function(he,Ce){2&he&&t.ekj("ant-upload-picture-card-wrapper","picture-card"===Ce.nzListType)},inputs:{nzType:"nzType",nzLimit:"nzLimit",nzSize:"nzSize",nzFileType:"nzFileType",nzAccept:"nzAccept",nzAction:"nzAction",nzDirectory:"nzDirectory",nzOpenFileDialogOnClick:"nzOpenFileDialogOnClick",nzBeforeUpload:"nzBeforeUpload",nzCustomRequest:"nzCustomRequest",nzData:"nzData",nzFilter:"nzFilter",nzFileList:"nzFileList",nzDisabled:"nzDisabled",nzHeaders:"nzHeaders",nzListType:"nzListType",nzMultiple:"nzMultiple",nzName:"nzName",nzShowUploadList:"nzShowUploadList",nzShowButton:"nzShowButton",nzWithCredentials:"nzWithCredentials",nzRemove:"nzRemove",nzPreview:"nzPreview",nzPreviewFile:"nzPreviewFile",nzPreviewIsImage:"nzPreviewIsImage",nzTransformFile:"nzTransformFile",nzDownload:"nzDownload",nzIconRender:"nzIconRender",nzFileListRender:"nzFileListRender"},outputs:{nzChange:"nzChange",nzFileListChange:"nzFileListChange"},exportAs:["nzUpload"],features:[t.TTD],ngContentSelectors:Y,decls:11,vars:2,consts:[["list",""],["con",""],["btn",""],[4,"ngIf","ngIfElse"],["select",""],["pic",""],[3,"display","locale","listType","items","icons","iconRender","previewFile","previewIsImage","onPreview","onRemove","onDownload","dir",4,"ngIf"],[4,"ngIf"],[3,"locale","listType","items","icons","iconRender","previewFile","previewIsImage","onPreview","onRemove","onDownload","dir"],["listComp",""],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"ngClass"],["nz-upload-btn","",3,"options"],["uploadComp",""],[3,"ngTemplateOutlet"],[3,"ngClass","drop","dragover","dragleave"],["nz-upload-btn","",1,"ant-upload-btn",3,"options"],[1,"ant-upload-drag-container"]],template:function(he,Ce){if(1&he&&(t.F$t(),t.YNc(0,Ot,2,2,"ng-template",null,0,t.W1O),t.YNc(2,xt,1,0,"ng-template",null,1,t.W1O),t.YNc(4,ke,4,5,"ng-template",null,2,t.W1O),t.YNc(6,ge,7,4,"ng-container",3),t.YNc(7,wt,1,2,"ng-template",null,4,t.W1O),t.YNc(9,Je,2,2,"ng-template",null,5,t.W1O)),2&he){const bt=t.MAs(8);t.xp6(6),t.Q6J("ngIf","drag"===Ce.nzType)("ngIfElse",bt)}},dependencies:[R.Lv,f.mk,f.O5,f.tP,Ge,it],encapsulation:2,changeDetection:0})}return(0,S.gn)([(0,A.Rn)()],O.prototype,"nzLimit",void 0),(0,S.gn)([(0,A.Rn)()],O.prototype,"nzSize",void 0),(0,S.gn)([(0,A.yF)()],O.prototype,"nzDirectory",void 0),(0,S.gn)([(0,A.yF)()],O.prototype,"nzOpenFileDialogOnClick",void 0),(0,S.gn)([(0,A.yF)()],O.prototype,"nzDisabled",void 0),(0,S.gn)([(0,A.yF)()],O.prototype,"nzMultiple",void 0),(0,S.gn)([(0,A.yF)()],O.prototype,"nzShowButton",void 0),(0,S.gn)([(0,A.yF)()],O.prototype,"nzWithCredentials",void 0),O})(),N=(()=>{class O{static#e=this.\u0275fac=function(he){return new(he||O)};static#t=this.\u0275mod=t.oAB({type:O});static#n=this.\u0275inj=t.cJS({imports:[R.vT,f.ez,$.u5,y.ud,T.cg,x.W,k.YI,D.PV,_.sL]})}return O})()},45567:(nt,I,o)=>{"use strict";o.d(I,{fq:()=>ct,KY:()=>Re});var e=o(65879),n=o(96814),t=o(78645),i=o(47394),l=o(92438),C=o(93997),E=o(83620),u=o(99397),z=o(30889),M=o(60095);function h(Ae,Mt){if(1&Ae){const je=e.EpF();e.TgZ(0,"span",3),e.NdJ("mousedown",function(mt){e.CHM(je);const we=e.oxw();return e.KtG(we.handleMousedown(mt))}),e._uU(1),e.qZA()}if(2&Ae){const je=e.oxw();e.Q6J("id",je.uniqueId)("ngStyle",je.labelStyle),e.xp6(1),e.hij(" ",je.label," ")}}function v(Ae,Mt){if(1&Ae&&(e.TgZ(0,"div",2),e._UZ(1,"div",3),e.qZA()),2&Ae){const je=e.oxw();e.Udp("left",je.left)("top",je.top),e.xp6(1),e.Q6J("ngStyle",je.pointer)}}const g=["*"];function d(Ae,Mt){1&Ae&&e._UZ(0,"color-checkboard",2)}const p={};let T=(()=>{class Ae{white="transparent";size=8;grey="rgba(0,0,0,.08)";boxShadow;borderRadius;gridStyles;ngOnInit(){const je=function y(Ae,Mt,je){const ot=`${Ae}-${Mt}-${je}`;if(p[ot])return p[ot];const mt=function f(Ae,Mt,je){if(typeof document>"u")return null;const ot=document.createElement("canvas");ot.width=2*je,ot.height=2*je;const mt=ot.getContext("2d");return mt?(mt.fillStyle=Ae,mt.fillRect(0,0,ot.width,ot.height),mt.fillStyle=Mt,mt.fillRect(0,0,je,je),mt.translate(je,je),mt.fillRect(0,0,je,je),ot.toDataURL()):null}(Ae,Mt,je);return mt?(p[ot]=mt,mt):null}(this.white,this.grey,this.size);this.gridStyles={borderRadius:this.borderRadius,boxShadow:this.boxShadow,background:`url(${je}) center left`}}static \u0275fac=function(ot){return new(ot||Ae)};static \u0275cmp=e.Xpm({type:Ae,selectors:[["color-checkboard"]],inputs:{white:"white",size:"size",grey:"grey",boxShadow:"boxShadow",borderRadius:"borderRadius"},decls:1,vars:1,consts:[[1,"grid",3,"ngStyle"]],template:function(ot,mt){1&ot&&e._UZ(0,"div",0),2&ot&&e.Q6J("ngStyle",mt.gridStyles)},dependencies:[n.PC],styles:[".grid[_ngcontent-%COMP%]{inset:0;position:absolute}"],changeDetection:0})}return Ae})(),x=(()=>{class Ae{static \u0275fac=function(ot){return new(ot||Ae)};static \u0275mod=e.oAB({type:Ae});static \u0275inj=e.cJS({imports:[n.ez]})}return Ae})(),D=(()=>{class Ae{el;coordinatesChange=new t.x;mousechange=new t.x;mouseListening=!1;sub;mousemove(je,ot,mt,we=!1){this.mouseListening&&(je.preventDefault(),this.mousechange.next({$event:je,x:ot,y:mt,isTouch:we}))}mouseup(){this.mouseListening=!1}mousedown(je,ot,mt,we=!1){je.preventDefault(),this.mouseListening=!0,this.mousechange.next({$event:je,x:ot,y:mt,isTouch:we})}constructor(je){this.el=je}ngOnInit(){this.sub=this.mousechange.pipe((0,C.x)((je,ot)=>je.x===ot.x&&je.y===ot.y)).subscribe(je=>this.handleChange(je.x,je.y,je.$event,je.isTouch))}ngOnDestroy(){this.sub?.unsubscribe()}handleChange(je,ot,mt,we){const de=this.el.nativeElement.clientWidth,U=this.el.nativeElement.clientHeight,B=je-(this.el.nativeElement.getBoundingClientRect().left+window.pageXOffset);let Ee=ot-this.el.nativeElement.getBoundingClientRect().top;we||(Ee-=window.pageYOffset),this.coordinatesChange.next({x:je,y:ot,top:Ee,left:B,containerWidth:de,containerHeight:U,$event:mt})}static \u0275fac=function(ot){return new(ot||Ae)(e.Y36(e.SBq))};static \u0275dir=e.lG2({type:Ae,selectors:[["","ngx-color-coordinates",""]],hostBindings:function(ot,mt){1&ot&&e.NdJ("mousemove",function(de){return mt.mousemove(de,de.pageX,de.pageY)},!1,e.Jf7)("touchmove",function(de){return mt.mousemove(de,de.touches[0].clientX,de.touches[0].clientY,!0)},!1,e.Jf7)("mouseup",function(){return mt.mouseup()},!1,e.Jf7)("touchend",function(){return mt.mouseup()},!1,e.Jf7)("mousedown",function(de){return mt.mousedown(de,de.pageX,de.pageY)})("touchstart",function(de){return mt.mousedown(de,de.touches[0].clientX,de.touches[0].clientY,!0)})},outputs:{coordinatesChange:"coordinatesChange"}})}return Ae})(),_=(()=>{class Ae{static \u0275fac=function(ot){return new(ot||Ae)};static \u0275mod=e.oAB({type:Ae});static \u0275inj=e.cJS({})}return Ae})(),P=(()=>{class Ae{hsl;rgb;pointer;shadow;radius;direction="horizontal";onChange=new e.vpe;gradient;pointerLeft;pointerTop;ngOnChanges(){"vertical"===this.direction?(this.pointerLeft=0,this.pointerTop=100*this.rgb.a,this.gradient={background:`linear-gradient(to bottom, rgba(${this.rgb.r},${this.rgb.g},${this.rgb.b}, 0) 0%,\n rgba(${this.rgb.r},${this.rgb.g},${this.rgb.b}, 1) 100%)`}):(this.gradient={background:`linear-gradient(to right, rgba(${this.rgb.r},${this.rgb.g},${this.rgb.b}, 0) 0%,\n rgba(${this.rgb.r},${this.rgb.g},${this.rgb.b}, 1) 100%)`},this.pointerLeft=100*this.rgb.a)}handleChange({top:je,left:ot,containerHeight:mt,containerWidth:we,$event:de}){let U;if("vertical"===this.direction){let B;B=je<0?0:je>mt?1:Math.round(100*je/mt)/100,this.hsl.a!==B&&(U={h:this.hsl.h,s:this.hsl.s,l:this.hsl.l,a:B,source:"rgb"})}else{let B;B=ot<0?0:ot>we?1:Math.round(100*ot/we)/100,this.hsl.a!==B&&(U={h:this.hsl.h,s:this.hsl.s,l:this.hsl.l,a:B,source:"rgb"})}U&&this.onChange.emit({data:U,$event:de})}static \u0275fac=function(ot){return new(ot||Ae)};static \u0275cmp=e.Xpm({type:Ae,selectors:[["color-alpha"]],inputs:{hsl:"hsl",rgb:"rgb",pointer:"pointer",shadow:"shadow",radius:"radius",direction:"direction"},outputs:{onChange:"onChange"},features:[e.TTD],decls:7,vars:15,consts:[[1,"alpha"],[1,"alpha-checkboard"],[1,"alpha-gradient",3,"ngStyle"],["ngx-color-coordinates","",3,"coordinatesChange"],[1,"alpha-pointer"],[1,"alpha-slider",3,"ngStyle"]],template:function(ot,mt){1&ot&&(e.TgZ(0,"div",0)(1,"div",1),e._UZ(2,"color-checkboard"),e.qZA(),e._UZ(3,"div",2),e.TgZ(4,"div",3),e.NdJ("coordinatesChange",function(de){return mt.handleChange(de)}),e.TgZ(5,"div",4),e._UZ(6,"div",5),e.qZA()()()),2&ot&&(e.Udp("border-radius",mt.radius),e.xp6(3),e.Udp("box-shadow",mt.shadow)("border-radius",mt.radius),e.Q6J("ngStyle",mt.gradient),e.xp6(1),e.Gre("alpha-container color-alpha-",mt.direction,""),e.xp6(1),e.Udp("left",mt.pointerLeft,"%")("top",mt.pointerTop,"%"),e.xp6(1),e.Q6J("ngStyle",mt.pointer))},dependencies:[n.PC,T,D],styles:[".alpha[_ngcontent-%COMP%]{position:absolute;inset:0}.alpha-checkboard[_ngcontent-%COMP%]{position:absolute;inset:0;overflow:hidden}.alpha-gradient[_ngcontent-%COMP%]{position:absolute;inset:0}.alpha-container[_ngcontent-%COMP%]{position:relative;height:100%;margin:0 3px}.alpha-pointer[_ngcontent-%COMP%]{position:absolute}.alpha-slider[_ngcontent-%COMP%]{width:4px;border-radius:1px;height:8px;box-shadow:0 0 2px #0009;background:#fff;margin-top:1px;transform:translate(-2px)}"],changeDetection:0})}return Ae})(),S=(()=>{class Ae{static \u0275fac=function(ot){return new(ot||Ae)};static \u0275mod=e.oAB({type:Ae});static \u0275inj=e.cJS({imports:[n.ez,x,_]})}return Ae})();function A(Ae){let je=0,ot=0;return["r","g","b","a","h","s","l","v"].forEach(mt=>{Ae[mt]&&(je+=1,isNaN(Ae[mt])||(ot+=1),("s"===mt||"l"===mt)&&/^\d+%$/.test(Ae[mt])&&(ot+=1))}),je===ot&&Ae}function k(Ae,Mt,je){const ot=new z.C(Ae.hex?Ae.hex:Ae);je&&ot.setAlpha(1);const mt=ot.toHsl(),we=ot.toHsv(),de=ot.toRgb(),U=ot.toHex();return 0===mt.s&&(mt.h=Mt||0,we.h=Mt||0),{hsl:mt,hex:"000000"===U&&0===de.a?"transparent":ot.toHexString(),rgb:de,hsv:we,oldHue:Ae.h||Mt||mt.h,source:Ae.source}}function R(Ae){return new z.C(Ae).isValid}var W=function(Ae){return Ae.HEX="hex",Ae.HSL="hsl",Ae.HSV="hsv",Ae.RGB="rgb",Ae}(W||{});let ze=(()=>{class Ae{className;mode=W.HEX;color={h:250,s:.5,l:.2,a:1};colorChange=new e.vpe;onChange=new e.vpe;onChangeComplete=new e.vpe;onSwatchHover=new e.vpe;oldHue;hsl;hsv;rgb;hex;source;currentColor;changes;disableAlpha;_onChangeCompleteSubscription=new i.w0;_onSwatchHoverSubscription=new i.w0;ngOnInit(){this.changes=this.onChange.pipe((0,E.b)(100),(0,u.b)(je=>{switch(this.onChangeComplete.emit(je),this.mode){case W.HEX:this.colorChange.emit(je.color.hex);break;case W.HSL:this.colorChange.emit(je.color.hsl);break;case W.HSV:this.colorChange.emit(je.color.hsv);break;case W.RGB:this.colorChange.emit(je.color.rgb);break;default:const ot=`The mode '${this.mode}' is not supported`;if((0,e.X6Q)())throw new Error(ot);console.warn(ot)}})).subscribe(),this.setState(k(this.color,0)),this.currentColor=this.hex}ngOnChanges(){this.setState(k(this.color,this.oldHue))}ngOnDestroy(){this.changes?.unsubscribe(),this._onChangeCompleteSubscription?.unsubscribe(),this._onSwatchHoverSubscription?.unsubscribe()}setState(je){this.oldHue=je.oldHue,this.hsl=je.hsl,this.hsv=je.hsv,this.rgb=je.rgb,this.hex=je.hex,this.source=je.source,this.afterValidChange()}handleChange(je,ot){if(A(je)){const we=k(je,je.h||this.oldHue,this.disableAlpha);this.setState(we),this.onChange.emit({color:we,$event:ot}),this.afterValidChange()}}afterValidChange(){}handleSwatchHover(je,ot){if(A(je)){const we=k(je,je.h||this.oldHue);this.setState(we),this.onSwatchHover.emit({color:we,$event:ot})}}registerOnChange(je){this._onChangeCompleteSubscription.add(this.onChangeComplete.pipe((0,u.b)(ot=>je(ot.color.hex))).subscribe())}registerOnTouched(je){this._onSwatchHoverSubscription.add(this.onSwatchHover.pipe((0,u.b)(()=>je())).subscribe())}setDisabledState(je){}writeValue(je){this.color=je}static \u0275fac=function(ot){return new(ot||Ae)};static \u0275cmp=e.Xpm({type:Ae,selectors:[["color-wrap"]],inputs:{className:"className",mode:"mode",color:"color"},outputs:{colorChange:"colorChange",onChange:"onChange",onChangeComplete:"onChangeComplete",onSwatchHover:"onSwatchHover"},features:[e._Bn([{provide:M.JU,useExisting:(0,e.Gpc)(()=>Ae),multi:!0}]),e.TTD],decls:0,vars:0,template:function(ot,mt){},encapsulation:2})}return Ae})(),G=0,V=(()=>{class Ae{style;label;value;arrowOffset;dragLabel;dragMax;placeholder="";onChange=new e.vpe;currentValue;blurValue;wrapStyle;inputStyle;labelStyle;focus=!1;mousemove;mouseup;uniqueId="editableInput-"+ ++G;ngOnInit(){this.wrapStyle=this.style&&this.style.wrap?this.style.wrap:{},this.inputStyle=this.style&&this.style.input?this.style.input:{},this.labelStyle=this.style&&this.style.label?this.style.label:{},this.dragLabel&&(this.labelStyle.cursor="ew-resize")}handleFocus(je){this.focus=!0}handleFocusOut(je){this.focus=!1,this.currentValue=this.blurValue}handleKeydown(je){const ot=String(je.target.value),mt=ot.indexOf("%")>-1,we=Number(ot.replace(/%/g,""));if(isNaN(we))return;const de=this.arrowOffset||1;38===je.keyCode&&(this.onChange.emit(this.label?{data:{[this.label]:we+de},$event:je}:{data:we+de,$event:je}),this.currentValue=mt?`${we+de}%`:we+de),40===je.keyCode&&(this.onChange.emit(this.label?{data:{[this.label]:we-de},$event:je}:{data:we-de,$event:je}),this.currentValue=mt?we-de+"%":we-de)}handleKeyup(je){40===je.keyCode||38===je.keyCode||`${this.currentValue}`!==je.target.value&&this.onChange.emit(this.label?{data:{[this.label]:je.target.value},$event:je}:{data:je.target.value,$event:je})}ngOnChanges(){this.focus||(this.currentValue=String(this.value).toUpperCase()),this.blurValue=String(this.value).toUpperCase()}ngOnDestroy(){this.unsubscribe()}subscribe(){this.mousemove=(0,l.R)(document,"mousemove").subscribe(je=>this.handleDrag(je)),this.mouseup=(0,l.R)(document,"mouseup").subscribe(()=>this.unsubscribe())}unsubscribe(){this.mousemove?.unsubscribe(),this.mouseup?.unsubscribe()}handleMousedown(je){this.dragLabel&&(je.preventDefault(),this.handleDrag(je),this.subscribe())}handleDrag(je){if(this.dragLabel){const ot=Math.round(this.value+je.movementX);ot>=0&&ot<=this.dragMax&&this.onChange.emit({data:{[this.label]:ot},$event:je})}}static \u0275fac=function(ot){return new(ot||Ae)};static \u0275cmp=e.Xpm({type:Ae,selectors:[["color-editable-input"]],inputs:{style:"style",label:"label",value:"value",arrowOffset:"arrowOffset",dragLabel:"dragLabel",dragMax:"dragMax",placeholder:"placeholder"},outputs:{onChange:"onChange"},features:[e.TTD],decls:3,vars:6,consts:[[1,"wrap",3,"ngStyle"],["spellCheck","false",3,"ngStyle","value","placeholder","keydown","keyup","focus","focusout"],[3,"id","ngStyle","mousedown",4,"ngIf"],[3,"id","ngStyle","mousedown"]],template:function(ot,mt){1&ot&&(e.TgZ(0,"div",0)(1,"input",1),e.NdJ("keydown",function(de){return mt.handleKeydown(de)})("keyup",function(de){return mt.handleKeyup(de)})("focus",function(de){return mt.handleFocus(de)})("focusout",function(de){return mt.handleFocusOut(de)}),e.qZA(),e.YNc(2,h,2,3,"span",2),e.qZA()),2&ot&&(e.Q6J("ngStyle",mt.wrapStyle),e.xp6(1),e.Q6J("ngStyle",mt.inputStyle)("value",mt.currentValue)("placeholder",mt.placeholder),e.uIk("aria-labelledby",mt.uniqueId),e.xp6(1),e.Q6J("ngIf",mt.label))},dependencies:[n.O5,n.PC],styles:["[_nghost-%COMP%]{display:flex}.wrap[_ngcontent-%COMP%]{position:relative}"],changeDetection:0})}return Ae})(),K=(()=>{class Ae{static \u0275fac=function(ot){return new(ot||Ae)};static \u0275mod=e.oAB({type:Ae});static \u0275inj=e.cJS({imports:[n.ez]})}return Ae})(),te=(()=>{class Ae{hsl;pointer;radius;shadow;hidePointer=!1;direction="horizontal";onChange=new e.vpe;left="0px";top="";ngOnChanges(){"horizontal"===this.direction?this.left=100*this.hsl.h/360+"%":this.top=-100*this.hsl.h/360+100+"%"}handleChange({top:je,left:ot,containerHeight:mt,containerWidth:we,$event:de}){let U;if("vertical"===this.direction){let B;B=je<0?359:je>mt?0:360*(-100*je/mt+100)/100,this.hsl.h!==B&&(U={h:B,s:this.hsl.s,l:this.hsl.l,a:this.hsl.a,source:"rgb"})}else{let B;B=ot<0?0:ot>we?359:100*ot/we*360/100,this.hsl.h!==B&&(U={h:B,s:this.hsl.s,l:this.hsl.l,a:this.hsl.a,source:"rgb"})}U&&this.onChange.emit({data:U,$event:de})}static \u0275fac=function(ot){return new(ot||Ae)};static \u0275cmp=e.Xpm({type:Ae,selectors:[["color-hue"]],inputs:{hsl:"hsl",pointer:"pointer",radius:"radius",shadow:"shadow",hidePointer:"hidePointer",direction:"direction"},outputs:{onChange:"onChange"},features:[e.TTD],decls:3,vars:8,consts:[["ngx-color-coordinates","",1,"color-hue-container",3,"coordinatesChange"],["class","color-hue-pointer",3,"left","top",4,"ngIf"],[1,"color-hue-pointer"],[1,"color-hue-slider",3,"ngStyle"]],template:function(ot,mt){1&ot&&(e.TgZ(0,"div")(1,"div",0),e.NdJ("coordinatesChange",function(de){return mt.handleChange(de)}),e.YNc(2,v,2,5,"div",1),e.qZA()()),2&ot&&(e.Gre("color-hue color-hue-",mt.direction,""),e.Udp("border-radius",mt.radius,"px")("box-shadow",mt.shadow),e.xp6(2),e.Q6J("ngIf",!mt.hidePointer))},dependencies:[n.O5,n.PC,D],styles:[".color-hue[_ngcontent-%COMP%]{position:absolute;inset:0}.color-hue-container[_ngcontent-%COMP%]{margin:0 2px;position:relative;height:100%}.color-hue-pointer[_ngcontent-%COMP%]{position:absolute}.color-hue-slider[_ngcontent-%COMP%]{margin-top:1px;width:4px;border-radius:1px;height:8px;box-shadow:0 0 2px #0009;background:#fff;transform:translate(-2px)}.color-hue-horizontal[_ngcontent-%COMP%]{background:linear-gradient(to right,#f00 0%,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,#f00 100%)}.color-hue-vertical[_ngcontent-%COMP%]{background:linear-gradient(to top,#f00 0%,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,#f00 100%)}"],changeDetection:0})}return Ae})(),ne=(()=>{class Ae{static \u0275fac=function(ot){return new(ot||Ae)};static \u0275mod=e.oAB({type:Ae});static \u0275inj=e.cJS({imports:[n.ez,_]})}return Ae})(),be=(()=>{class Ae{hsl;hsv;radius;pointer;circle;onChange=new e.vpe;background;pointerTop;pointerLeft;ngOnChanges(){this.background=`hsl(${this.hsl.h}, 100%, 50%)`,this.pointerTop=-100*this.hsv.v+1+100+"%",this.pointerLeft=100*this.hsv.s+"%"}handleChange({top:je,left:ot,containerHeight:mt,containerWidth:we,$event:de}){ot<0?ot=0:ot>we?ot=we:je<0?je=0:je>mt&&(je=mt);let B=-je/mt+1;B=B>0?B:0,B=B>1?1:B,this.onChange.emit({data:{h:this.hsl.h,s:ot/we,v:B,a:this.hsl.a,source:"hsva"},$event:de})}static \u0275fac=function(ot){return new(ot||Ae)};static \u0275cmp=e.Xpm({type:Ae,selectors:[["color-saturation"]],inputs:{hsl:"hsl",hsv:"hsv",radius:"radius",pointer:"pointer",circle:"circle"},outputs:{onChange:"onChange"},features:[e.TTD],decls:5,vars:8,consts:[["ngx-color-coordinates","",1,"color-saturation",3,"coordinatesChange"],[1,"saturation-white"],[1,"saturation-black"],[1,"saturation-pointer",3,"ngStyle"],[1,"saturation-circle",3,"ngStyle"]],template:function(ot,mt){1&ot&&(e.TgZ(0,"div",0),e.NdJ("coordinatesChange",function(de){return mt.handleChange(de)}),e.TgZ(1,"div",1),e._UZ(2,"div",2),e.TgZ(3,"div",3),e._UZ(4,"div",4),e.qZA()()()),2&ot&&(e.Udp("background",mt.background),e.xp6(3),e.Udp("top",mt.pointerTop)("left",mt.pointerLeft),e.Q6J("ngStyle",mt.pointer),e.xp6(1),e.Q6J("ngStyle",mt.circle))},dependencies:[n.PC,D],styles:[".saturation-white[_ngcontent-%COMP%]{background:linear-gradient(to right,#fff,rgba(255,255,255,0));position:absolute;inset:0}.saturation-black[_ngcontent-%COMP%]{background:linear-gradient(to top,#000,rgba(0,0,0,0));position:absolute;inset:0}.color-saturation[_ngcontent-%COMP%]{position:absolute;inset:0}.saturation-pointer[_ngcontent-%COMP%]{position:absolute;cursor:default}.saturation-circle[_ngcontent-%COMP%]{width:4px;height:4px;box-shadow:0 0 0 1.5px #fff,inset 0 0 1px 1px #0000004d,0 0 1px 2px #0006;border-radius:50%;cursor:hand;transform:translate(-2px,-4px)}"],changeDetection:0})}return Ae})(),le=(()=>{class Ae{static \u0275fac=function(ot){return new(ot||Ae)};static \u0275mod=e.oAB({type:Ae});static \u0275inj=e.cJS({imports:[n.ez,_]})}return Ae})(),ce=(()=>{class Ae{color;style={};focusStyle={};focus;onClick=new e.vpe;onHover=new e.vpe;divStyles={};focusStyles={};inFocus=!1;ngOnInit(){this.divStyles={background:this.color,...this.style}}currentStyles(){return this.focusStyles={...this.divStyles,...this.focusStyle},this.focus||this.inFocus?this.focusStyles:this.divStyles}handleFocusOut(){this.inFocus=!1}handleFocus(){this.inFocus=!0}handleHover(je,ot){this.onHover.emit({hex:je,$event:ot})}handleClick(je,ot){this.onClick.emit({hex:je,$event:ot})}static \u0275fac=function(ot){return new(ot||Ae)};static \u0275cmp=e.Xpm({type:Ae,selectors:[["color-swatch"]],inputs:{color:"color",style:"style",focusStyle:"focusStyle",focus:"focus"},outputs:{onClick:"onClick",onHover:"onHover"},ngContentSelectors:g,decls:3,vars:3,consts:[["tabindex","0",1,"swatch",3,"ngStyle","click","keydown.enter","focus","blur","mouseover"],["boxShadow","inset 0 0 0 1px rgba(0,0,0,0.1)",4,"ngIf"],["boxShadow","inset 0 0 0 1px rgba(0,0,0,0.1)"]],template:function(ot,mt){1&ot&&(e.F$t(),e.TgZ(0,"div",0),e.NdJ("click",function(de){return mt.handleClick(mt.color,de)})("keydown.enter",function(de){return mt.handleClick(mt.color,de)})("focus",function(){return mt.handleFocus()})("blur",function(){return mt.handleFocusOut()})("mouseover",function(de){return mt.handleHover(mt.color,de)}),e.Hsn(1),e.YNc(2,d,1,0,"color-checkboard",1),e.qZA()),2&ot&&(e.Q6J("ngStyle",mt.currentStyles()),e.uIk("title",mt.color),e.xp6(2),e.Q6J("ngIf","transparent"===mt.color))},dependencies:[n.O5,n.PC,T],styles:[".swatch[_ngcontent-%COMP%]{outline:none;height:100%;width:100%;cursor:pointer;position:relative}"],changeDetection:0})}return Ae})(),Q=(()=>{class Ae{static \u0275fac=function(ot){return new(ot||Ae)};static \u0275mod=e.oAB({type:Ae});static \u0275inj=e.cJS({imports:[n.ez,x]})}return Ae})();const xe=function(Ae,Mt){return{input:Ae,label:Mt}};function Me(Ae,Mt){if(1&Ae){const je=e.EpF();e.TgZ(0,"div",8)(1,"color-editable-input",9),e.NdJ("onChange",function(mt){e.CHM(je);const we=e.oxw();return e.KtG(we.handleChange(mt))}),e.qZA()()}if(2&Ae){const je=e.oxw();e.xp6(1),e.Akn(e.WLB(5,xe,je.input,je.label)),e.Q6J("value",je.round(100*je.rgb.a))("dragLabel",!0)("dragMax",100)}}function Ye(Ae,Mt){if(1&Ae){const je=e.EpF();e.TgZ(0,"div",2)(1,"color-swatch",3),e.NdJ("onClick",function(mt){e.CHM(je);const we=e.oxw();return e.KtG(we.handleClick(mt))})("onHover",function(mt){e.CHM(je);const we=e.oxw();return e.KtG(we.onSwatchHover.emit(mt))}),e.qZA()()}if(2&Ae){const je=Mt.$implicit,ot=e.oxw();e.xp6(1),e.Akn(ot.swatchStyle),e.Q6J("color",ot.normalizeValue(je).color)("focusStyle",ot.focusStyle(je))}}function q(Ae,Mt){if(1&Ae){const je=e.EpF();e.TgZ(0,"div",12)(1,"color-alpha",13),e.NdJ("onChange",function(mt){e.CHM(je);const we=e.oxw();return e.KtG(we.handleValueChange(mt))}),e.qZA()()}if(2&Ae){const je=e.oxw();e.xp6(1),e.Q6J("radius",2)("rgb",je.rgb)("hsl",je.hsl)}}function ve(Ae,Mt){if(1&Ae){const je=e.EpF();e.TgZ(0,"div",14)(1,"color-sketch-preset-colors",15),e.NdJ("onClick",function(mt){e.CHM(je);const we=e.oxw();return e.KtG(we.handleBlockChange(mt))})("onSwatchHover",function(mt){e.CHM(je);const we=e.oxw();return e.KtG(we.onSwatchHover.emit(mt))}),e.qZA()()}if(2&Ae){const je=e.oxw();e.xp6(1),e.Q6J("colors",je.presetColors)}}let ee=(()=>{class Ae{hsl;rgb;hex;disableAlpha=!1;onChange=new e.vpe;input={width:"100%",padding:"4px 10% 3px",border:"none",boxSizing:"border-box",boxShadow:"inset 0 0 0 1px #ccc",fontSize:"11px"};label={display:"block",textAlign:"center",fontSize:"11px",color:"#222",paddingTop:"3px",paddingBottom:"4px",textTransform:"capitalize"};round(je){return Math.round(je)}handleChange({data:je,$event:ot}){if(je.hex){if(R(je.hex)){const mt=new z.C(je.hex);this.onChange.emit({data:{hex:this.disableAlpha||je.hex.length<=6?mt.toHex():mt.toHex8(),source:"hex"},$event:ot})}}else je.r||je.g||je.b?this.onChange.emit({data:{r:je.r||this.rgb.r,g:je.g||this.rgb.g,b:je.b||this.rgb.b,source:"rgb"},$event:ot}):je.a?(je.a<0?je.a=0:je.a>100&&(je.a=100),je.a/=100,this.disableAlpha&&(je.a=1),this.onChange.emit({data:{h:this.hsl.h,s:this.hsl.s,l:this.hsl.l,a:Math.round(100*je.a)/100,source:"rgb"},$event:ot})):(je.h||je.s||je.l)&&this.onChange.emit({data:{h:je.h||this.hsl.h,s:Number(je.s&&je.s||this.hsl.s),l:Number(je.l&&je.l||this.hsl.l),source:"hsl"},$event:ot})}static \u0275fac=function(ot){return new(ot||Ae)};static \u0275cmp=e.Xpm({type:Ae,selectors:[["color-sketch-fields"]],inputs:{hsl:"hsl",rgb:"rgb",hex:"hex",disableAlpha:"disableAlpha"},outputs:{onChange:"onChange"},decls:10,vars:31,consts:[[1,"sketch-fields"],[1,"sketch-double"],["label","hex",3,"value","onChange"],[1,"sketch-single"],["label","r",3,"value","dragLabel","dragMax","onChange"],["label","g",3,"value","dragLabel","dragMax","onChange"],["label","b",3,"value","dragLabel","dragMax","onChange"],["class","sketch-alpha",4,"ngIf"],[1,"sketch-alpha"],["label","a",3,"value","dragLabel","dragMax","onChange"]],template:function(ot,mt){1&ot&&(e.TgZ(0,"div",0)(1,"div",1)(2,"color-editable-input",2),e.NdJ("onChange",function(de){return mt.handleChange(de)}),e.qZA()(),e.TgZ(3,"div",3)(4,"color-editable-input",4),e.NdJ("onChange",function(de){return mt.handleChange(de)}),e.qZA()(),e.TgZ(5,"div",3)(6,"color-editable-input",5),e.NdJ("onChange",function(de){return mt.handleChange(de)}),e.qZA()(),e.TgZ(7,"div",3)(8,"color-editable-input",6),e.NdJ("onChange",function(de){return mt.handleChange(de)}),e.qZA()(),e.YNc(9,Me,2,8,"div",7),e.qZA()),2&ot&&(e.xp6(2),e.Akn(e.WLB(19,xe,mt.input,mt.label)),e.Q6J("value",mt.hex.replace("#","")),e.xp6(2),e.Akn(e.WLB(22,xe,mt.input,mt.label)),e.Q6J("value",mt.rgb.r)("dragLabel",!0)("dragMax",255),e.xp6(2),e.Akn(e.WLB(25,xe,mt.input,mt.label)),e.Q6J("value",mt.rgb.g)("dragLabel",!0)("dragMax",255),e.xp6(2),e.Akn(e.WLB(28,xe,mt.input,mt.label)),e.Q6J("value",mt.rgb.b)("dragLabel",!0)("dragMax",255),e.xp6(1),e.Q6J("ngIf",!1===mt.disableAlpha))},dependencies:[n.O5,V],styles:[".sketch-fields[_ngcontent-%COMP%]{display:flex;padding-top:4px}.sketch-double[_ngcontent-%COMP%]{flex:2 1 0%}.sketch-single[_ngcontent-%COMP%], .sketch-alpha[_ngcontent-%COMP%]{flex:1 1 0%;padding-left:6px}[dir=rtl][_nghost-%COMP%] .sketch-single[_ngcontent-%COMP%], [dir=rtl] [_nghost-%COMP%] .sketch-single[_ngcontent-%COMP%]{padding-right:6px;padding-left:0}[dir=rtl][_nghost-%COMP%] .sketch-alpha[_ngcontent-%COMP%], [dir=rtl] [_nghost-%COMP%] .sketch-alpha[_ngcontent-%COMP%]{padding-right:6px;padding-left:0}"],changeDetection:0})}return Ae})(),Be=(()=>{class Ae{colors;onClick=new e.vpe;onSwatchHover=new e.vpe;swatchStyle={borderRadius:"3px",boxShadow:"inset 0 0 0 1px rgba(0,0,0,.15)"};handleClick({hex:je,$event:ot}){this.onClick.emit({hex:je,$event:ot})}normalizeValue(je){return"string"==typeof je?{color:je}:je}focusStyle(je){return{boxShadow:`inset 0 0 0 1px rgba(0,0,0,.15), 0 0 4px ${this.normalizeValue(je).color}`}}static \u0275fac=function(ot){return new(ot||Ae)};static \u0275cmp=e.Xpm({type:Ae,selectors:[["color-sketch-preset-colors"]],inputs:{colors:"colors"},outputs:{onClick:"onClick",onSwatchHover:"onSwatchHover"},decls:2,vars:1,consts:[[1,"sketch-swatches"],["class","sketch-wrap",4,"ngFor","ngForOf"],[1,"sketch-wrap"],[1,"swatch",3,"color","focusStyle","onClick","onHover"]],template:function(ot,mt){1&ot&&(e.TgZ(0,"div",0),e.YNc(1,Ye,2,4,"div",1),e.qZA()),2&ot&&(e.xp6(1),e.Q6J("ngForOf",mt.colors))},dependencies:[n.sg,ce],styles:[".sketch-swatches[_ngcontent-%COMP%]{position:relative;display:flex;flex-wrap:wrap;margin:0 -10px;padding:10px 0 0 10px;border-top:1px solid rgb(238,238,238)}.sketch-wrap[_ngcontent-%COMP%]{width:16px;height:16px;margin:0 10px 10px 0}[dir=rtl][_nghost-%COMP%] .sketch-swatches[_ngcontent-%COMP%], [dir=rtl] [_nghost-%COMP%] .sketch-swatches[_ngcontent-%COMP%]{padding-right:10px;padding-left:0}[dir=rtl][_nghost-%COMP%] .sketch-wrap[_ngcontent-%COMP%], [dir=rtl] [_nghost-%COMP%] .sketch-wrap[_ngcontent-%COMP%]{margin-left:10px;margin-right:0}"],changeDetection:0})}return Ae})(),Re=(()=>{class Ae extends ze{disableAlpha=!1;presetColors=["#D0021B","#F5A623","#F8E71C","#8B572A","#7ED321","#417505","#BD10E0","#9013FE","#4A90E2","#50E3C2","#B8E986","#000000","#4A4A4A","#9B9B9B","#FFFFFF"];width=200;activeBackground;constructor(){super()}afterValidChange(){this.activeBackground=`rgba(${this.rgb.r}, ${this.rgb.g}, ${this.rgb.b}, ${this.disableAlpha?1:this.rgb.a})`}handleValueChange({data:je,$event:ot}){this.handleChange(je,ot)}handleBlockChange({hex:je,$event:ot}){R(je)&&this.handleChange({hex:je,source:"hex"},ot)}static \u0275fac=function(ot){return new(ot||Ae)};static \u0275cmp=e.Xpm({type:Ae,selectors:[["color-sketch"]],inputs:{disableAlpha:"disableAlpha",presetColors:"presetColors",width:"width"},features:[e._Bn([{provide:M.JU,useExisting:(0,e.Gpc)(()=>Ae),multi:!0},{provide:ze,useExisting:(0,e.Gpc)(()=>Ae)}]),e.qOj],decls:14,vars:16,consts:[[1,"sketch-saturation"],[3,"hsl","hsv","onChange"],[1,"sketch-controls"],[1,"sketch-sliders"],[1,"sketch-hue"],[3,"hsl","onChange"],["class","sketch-alpha",4,"ngIf"],[1,"sketch-color"],[1,"sketch-active"],[1,"sketch-fields-container"],[3,"rgb","hsl","hex","disableAlpha","onChange"],["class","sketch-swatches-container",4,"ngIf"],[1,"sketch-alpha"],[3,"radius","rgb","hsl","onChange"],[1,"sketch-swatches-container"],[3,"colors","onClick","onSwatchHover"]],template:function(ot,mt){1&ot&&(e.TgZ(0,"div")(1,"div",0)(2,"color-saturation",1),e.NdJ("onChange",function(de){return mt.handleValueChange(de)}),e.qZA()(),e.TgZ(3,"div",2)(4,"div",3)(5,"div",4)(6,"color-hue",5),e.NdJ("onChange",function(de){return mt.handleValueChange(de)}),e.qZA()(),e.YNc(7,q,2,3,"div",6),e.qZA(),e.TgZ(8,"div",7),e._UZ(9,"color-checkboard")(10,"div",8),e.qZA()(),e.TgZ(11,"div",9)(12,"color-sketch-fields",10),e.NdJ("onChange",function(de){return mt.handleValueChange(de)}),e.qZA()(),e.YNc(13,ve,2,1,"div",11),e.qZA()),2&ot&&(e.Gre("sketch-picker ",mt.className,""),e.Udp("width",mt.width,"px"),e.xp6(2),e.Q6J("hsl",mt.hsl)("hsv",mt.hsv),e.xp6(4),e.Q6J("hsl",mt.hsl),e.xp6(1),e.Q6J("ngIf",!1===mt.disableAlpha),e.xp6(3),e.Udp("background",mt.activeBackground),e.xp6(2),e.Q6J("rgb",mt.rgb)("hsl",mt.hsl)("hex",mt.hex)("disableAlpha",mt.disableAlpha),e.xp6(1),e.Q6J("ngIf",mt.presetColors&&mt.presetColors.length))},dependencies:function(){return[n.O5,P,T,te,be,ee,Be]},styles:[".sketch-picker[_ngcontent-%COMP%]{padding:10px 10px 3px;box-sizing:initial;background:#fff;border-radius:4px;box-shadow:0 0 0 1px #00000026,0 8px 16px #00000026}.sketch-saturation[_ngcontent-%COMP%]{width:100%;padding-bottom:75%;position:relative;overflow:hidden}.sketch-fields-container[_ngcontent-%COMP%], .sketch-swatches-container[_ngcontent-%COMP%]{display:block}.sketch-controls[_ngcontent-%COMP%]{display:flex}.sketch-sliders[_ngcontent-%COMP%]{padding:4px 0;flex:1 1 0%}.sketch-hue[_ngcontent-%COMP%]{position:relative;height:10px;overflow:hidden}.sketch-alpha[_ngcontent-%COMP%]{position:relative;height:10px;margin-top:4px;overflow:hidden}.sketch-color[_ngcontent-%COMP%]{width:24px;height:24px;position:relative;margin-top:4px;margin-left:4px;border-radius:3px}.sketch-active[_ngcontent-%COMP%]{position:absolute;inset:0;border-radius:2px;box-shadow:#00000026 0 0 0 1px inset,#00000040 0 0 4px inset}[dir=rtl][_nghost-%COMP%] .sketch-color[_ngcontent-%COMP%], [dir=rtl] [_nghost-%COMP%] .sketch-color[_ngcontent-%COMP%]{margin-right:4px;margin-left:0}"],changeDetection:0})}return Ae})(),ct=(()=>{class Ae{static \u0275fac=function(ot){return new(ot||Ae)};static \u0275mod=e.oAB({type:Ae});static \u0275inj=e.cJS({imports:[n.ez,S,x,K,ne,le,Q]})}return Ae})()},44556:(nt,I,o)=>{"use strict";o.d(I,{MR:()=>z,cD:()=>M});var e=o(65879),n=o(96814);function t(h,v){if(1&h&&(e.ynx(0),e._UZ(1,"span",2),e.BQk()),2&h){const g=e.oxw();e.xp6(1),e.Q6J("innerHTML",g.i.text,e.oJD)}}function i(h,v){1&h&&e.GkF(0)}const l=function(h){return{$implicit:h}};var C=function(h){return h[h.ing=0]="ing",h[h.pause=1]="pause",h[h.stop=2]="stop",h[h.done=3]="done",h}(C||{});let E=(()=>{class h{constructor(g){this.ngZone=g,this.fns=[],this.commands=[],this.nextTime=0,this.ing=!1}start(){!0!==this.ing&&(this.ing=!0,this.nextTime=+new Date,this.ngZone.runOutsideAngular(()=>{this.process()}))}process(){for(;this.commands.length;)this.commands.shift()();let g=+new Date-this.nextTime;const d=1+Math.floor(g/100);g=100-g%100,this.nextTime+=100*d;for(let p=0,f=this.fns.length;p0&&this.fns[p](T),this.fns[p+1]=y%20+1}}this.ing&&setTimeout(()=>this.process(),g)}add(g,d){return this.commands.push(()=>{this.fns.push(g),this.fns.push(1e3===d?1:0),this.ing=!0}),this}remove(g){return this.commands.push(()=>{const d=this.fns.indexOf(g);-1!==d&&this.fns.splice(d,2),this.ing=this.fns.length>0}),this}static#e=this.\u0275fac=function(d){return new(d||h)(e.LFG(e.R0b))};static#t=this.\u0275prov=e.Yz7({token:h,factory:h.\u0275fac})}return h})(),u=(()=>{class h{constructor(g){this.locale=g,this.demand=!1,this.leftTime=0,this.format="HH:mm:ss",this.timezone="+0000",this.formatDate=({date:d,formatStr:p,timezone:f})=>(0,n.p6)(new Date(d),p,this.locale,f||this.timezone||"+0000")}static#e=this.\u0275fac=function(d){return new(d||h)(e.LFG(e.soG))};static#t=this.\u0275prov=e.Yz7({token:h,factory:h.\u0275fac,providedIn:"root"})}return h})(),z=(()=>{class h{set config(g){null!=g.notify&&!Array.isArray(g.notify)&&g.notify>0&&(g.notify=[g.notify]),this._config=g}get config(){return this._config}constructor(g,d,p,f,y){this.locale=g,this.timer=d,this.defCog=p,this.cdr=f,this.ngZone=y,this.frequency=1e3,this._notify={},this.status=C.ing,this.isDestroy=!1,this.i={},this.left=0,this.event=new e.vpe}begin(){this.status=C.ing,this.callEvent("start")}restart(){this.status!==C.stop&&this.destroy(),this.init(),this.callEvent("restart")}stop(){this.status!==C.stop&&(this.status=C.stop,this.destroy(),this.callEvent("stop"))}pause(){this.status===C.stop||this.status===C.pause||(this.status=C.pause,this.callEvent("pause"))}resume(){this.status===C.stop||this.status!==C.pause||(this.status=C.ing,this.callEvent("resume"))}callEvent(g){this.event.emit({action:g,left:this.left,status:this.status,text:this.i.text})}init(){const{locale:g,defCog:d}=this,p=this.config={...new u(g),...d,...this.config},f=this.frequency=~p.format.indexOf("S")?100:1e3;this.status=p.demand?C.pause:C.ing,this.getLeft();const y=this.reflow;this.reflow=(T=0,x=!1)=>y.apply(this,[T,x]),Array.isArray(p.notify)&&p.notify.forEach(T=>{if(T<1)throw new Error("The notify config must be a positive integer.");T*=1e3,this._notify[T-=T%f]=!0}),this.timer.add(this.reflow,f).start(),this.reflow(0,!0)}destroy(){return this.timer.remove(this.reflow),this}reflow(g=0,d=!1){if(this.isDestroy)return;const{status:p,config:f,_notify:y}=this;if(!d&&p!==C.ing)return;let T=this.left=this.left-this.frequency*g;T<1&&(T=0),this.i={value:T,text:f.formatDate({date:T,formatStr:f.format,timezone:f.timezone})},"function"==typeof f.prettyText&&(this.i.text=f.prettyText(this.i.text)),this.cdr.detectChanges(),(0===f.notify||y[T])&&this.ngZone.run(()=>{this.callEvent("notify")}),0===T&&this.ngZone.run(()=>{this.status=C.done,this.destroy(),this.callEvent("done")})}getLeft(){const{config:g,frequency:d}=this;let p=1e3*g.leftTime;const f=g.stopTime;!p&&f&&(p=f-(new Date).getTime()),this.left=p-p%d}ngOnInit(){this.init(),this.config.demand||this.begin()}ngOnDestroy(){this.isDestroy=!0,this.destroy()}ngOnChanges(g){g.config.firstChange||this.restart()}static#e=this.\u0275fac=function(d){return new(d||h)(e.Y36(e.soG),e.Y36(E),e.Y36(u),e.Y36(e.sBO),e.Y36(e.R0b))};static#t=this.\u0275cmp=e.Xpm({type:h,selectors:[["countdown"]],hostVars:2,hostBindings:function(d,p){2&d&&e.ekj("count-down",!0)},inputs:{config:"config",render:"render"},outputs:{event:"event"},standalone:!0,features:[e._Bn([E]),e.TTD,e.jDz],decls:2,vars:5,consts:[[4,"ngIf"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"innerHTML"]],template:function(d,p){1&d&&(e.YNc(0,t,2,1,"ng-container",0),e.YNc(1,i,1,0,"ng-container",1)),2&d&&(e.Q6J("ngIf",!p.render),e.xp6(1),e.Q6J("ngTemplateOutlet",p.render)("ngTemplateOutletContext",e.VKq(3,l,p.i)))},dependencies:[n.ez,n.O5,n.tP],encapsulation:2,changeDetection:0})}return h})(),M=(()=>{class h{static#e=this.\u0275fac=function(d){return new(d||h)};static#t=this.\u0275mod=e.oAB({type:h});static#n=this.\u0275inj=e.cJS({imports:[z]})}return h})()},6595:(nt,I,o)=>{"use strict";o.d(I,{TN:()=>A,Ot:()=>S});var e=o(97582),n=o(65879),t=o(60095);function i(k,R,$){return function W(ze,Y,G){const V=`$$__${Y}`;return Object.prototype.hasOwnProperty.call(ze,V)&&console.warn(`The prop "${V}" is already exist, it will be overrided by ${k} decorator.`),Object.defineProperty(ze,V,{configurable:!0,writable:!0}),{get(){return G&&G.get?G.get.bind(this)():this[V]},set(K){G&&G.set&&G.set.bind(this)(R(K,$)),this[V]=R(K,$)}}}}function l(k,R=!1){return R&&typeof k>"u"?void 0:null!=k&&"false"!=`${k}`}function C(k=!1){return i("InputNumber",l,k)}function E(k,R=0){return isNaN(parseFloat(k))||isNaN(Number(k))?R:Number(k)}function u(k=0){return i("InputNumber",E,k)}var z=o(96814),M=o(49671),h=o(65619),v=o(88407),g=o(63020),d=o(32181);let p=(()=>{class k{constructor($){this.doc=$,this.list={},this.cached={},this._notify=new h.X([])}fixPaths($){return $=$||[],Array.isArray($)||($=[$]),$.map(W=>{const ze="string"==typeof W?{path:W}:W;return ze.type||(ze.type=ze.path.endsWith(".js")||ze.callback?"script":"style"),ze})}monitor($){const W=this.fixPaths($),ze=[(0,g.B)(),(0,d.h)(Y=>0!==Y.length)];return W.length>0&&ze.push((0,d.h)(Y=>Y.length===W.length&&Y.every(G=>"ok"===G.status&&W.find(V=>V.path===G.path)))),this._notify.asObservable().pipe(v.z.apply(this,ze))}clear(){this.list={},this.cached={}}load($){var W=this;return(0,M.Z)(function*(){return $=W.fixPaths($),Promise.all($.map(ze=>"script"===ze.type?W.loadScript(ze.path,{callback:ze.callback}):W.loadStyle(ze.path))).then(ze=>(W._notify.next(ze),Promise.resolve(ze)))})()}loadScript($,W){const{innerContent:ze}={...W};return new Promise(Y=>{if(!0===this.list[$])return void Y({...this.cached[$],status:"loading"});this.list[$]=!0;const G=te=>{"ok"===te.status&&W?.callback?window[W?.callback]=()=>{V(te)}:V(te)},V=te=>{te.type="script",this.cached[$]=te,Y(te),this._notify.next([te])},K=this.doc.createElement("script");K.type="text/javascript",K.src=$,K.charset="utf-8",ze&&(K.innerHTML=ze),K.readyState?K.onreadystatechange=()=>{("loaded"===K.readyState||"complete"===K.readyState)&&(K.onreadystatechange=null,G({path:$,status:"ok"}))}:K.onload=()=>G({path:$,status:"ok"}),K.onerror=te=>G({path:$,status:"error",error:te}),this.doc.getElementsByTagName("head")[0].appendChild(K)})}loadStyle($,W){const{rel:ze,innerContent:Y}={rel:"stylesheet",...W};return new Promise(G=>{if(!0===this.list[$])return void G(this.cached[$]);this.list[$]=!0;const V=this.doc.createElement("link");V.rel=ze,V.type="text/css",V.href=$,Y&&(V.innerHTML=Y),this.doc.getElementsByTagName("head")[0].appendChild(V);const K={path:$,status:"ok",type:"style"};this.cached[$]=K,G(K)})}}return k.\u0275fac=function($){return new($||k)(n.LFG(z.K0))},k.\u0275prov=n.Yz7({token:k,factory:k.\u0275fac,providedIn:"root"}),k})();function f(k,R){if(1&k&&n._UZ(0,"textarea",3),2&k){const $=n.oxw();n.uIk("id",$.id)("placeholder",$.placeholder)}}function y(k,R){if(1&k&&(n.TgZ(0,"div"),n.Hsn(1),n.qZA()),2&k){const $=n.oxw();n.uIk("id",$.id)}}function T(k,R){if(1&k&&(n.ynx(0),n._uU(1),n.BQk()),2&k){const $=n.oxw(2);n.xp6(1),n.Oqu($._loading)}}function x(k,R){if(1&k&&(n.TgZ(0,"div",4),n.YNc(1,T,2,1,"ng-container",5),n.qZA()),2&k){const $=n.oxw();n.xp6(1),n.Q6J("ngIf",$._loading)("ngIfElse",$._loadingTpl)}}const D=["*"];class _{constructor(){this.baseURL="./assets/tinymce/",this.fileName="tinymce.min.js"}}const P=!("object"==typeof document&&document);let S=(()=>{class k{set disabled($){this._disabled=$,this.setDisabled()}set loading($){$ instanceof n.Rgc?(this._loading=null,this._loadingTpl=$):this._loading=$}get instance(){return this._instance}_getWin(){return this.doc.defaultView||window}constructor($,W,ze,Y,G){this.defConfig=$,this.lazySrv=W,this.ngZone=ze,this.doc=Y,this.cd=G,this.value="",this.load=!0,this.id=`_tinymce-${Math.random().toString(36).substring(2)}`,this.placeholder="",this.inline=!1,this._disabled=!1,this._loading=null,this._loadingTpl=null,this.delay=0,this.ready=new n.vpe}initDelay(){P||setTimeout(()=>this.init(),Math.max(0,this.delay))}init(){const $=this._getWin();if(!$.tinymce)throw new Error("tinymce js\u6587\u4ef6\u52a0\u8f7d\u5931\u8d25");const{defConfig:W,config:ze,id:Y,inline:G}=this;if(this._instance)return;if(W.baseURL){let te=""+W.baseURL;te.endsWith("/")&&(te=te.substring(0,te.length-1)),$.tinymce.baseURL=te}const V={...W.config,...ze},K={selector:"#"+Y,inline:G,...W.config,...ze,setup:te=>{this._instance=te,this.onChange&&te.on("change keyup",()=>{this.value=te.getContent(),this.ngZone.run(()=>this.onChange(this.value))}),"function"==typeof V.setup&&V.setup(te)},init_instance_callback:te=>{te&&this.value&&te.setContent(this.value),this.setDisabled(),"function"==typeof V.init_instance_callback&&V.init_instance_callback(te),this.ready.emit(this._instance)}};V.auto_focus&&(K.auto_focus=Y),this.ngZone.runOutsideAngular(()=>$.tinymce.init(K)),this.load=!1,this.cd.detectChanges()}destroy(){this._instance&&(this.ngZone.runOutsideAngular(()=>{this._instance.off(),this._instance.remove("#"+this.id)}),this._instance=null)}setDisabled(){this._instance&&this.ngZone.runOutsideAngular(()=>{const $=this._disabled?"readonly":"design";"function"==typeof this._instance.setMode?this._instance.setMode($):this._instance.mode.set($)})}ngAfterViewInit(){if(P)return;if(this._getWin().tinymce)return void this.initDelay();const{defConfig:$}=this,Y=($&&$.baseURL||"./assets/tinymce/")+($&&$.fileName||"tinymce.min.js");this.lazySrv.monitor(Y).subscribe(()=>this.initDelay()),this.lazySrv.load(Y)}ngOnChanges($){this._instance&&$.config&&(this.destroy(),this.initDelay())}ngOnDestroy(){this.destroy()}writeValue($){this.value=$||"",this._instance&&this.ngZone.runOutsideAngular(()=>this._instance.setContent(this.value))}registerOnChange($){this.onChange=$}registerOnTouched($){this.onTouched=$}setDisabledState($){this.disabled=$,this.setDisabled()}static#e=this.\u0275fac=function(W){return new(W||k)(n.Y36(_),n.Y36(p),n.Y36(n.R0b),n.Y36(z.K0),n.Y36(n.sBO))};static#t=this.\u0275cmp=n.Xpm({type:k,selectors:[["tinymce"]],inputs:{config:"config",placeholder:"placeholder",inline:"inline",disabled:"disabled",loading:"loading",delay:"delay"},outputs:{ready:"ready"},exportAs:["tinymce"],features:[n._Bn([{provide:t.JU,useExisting:(0,n.Gpc)(()=>k),multi:!0}]),n.TTD],ngContentSelectors:D,decls:3,vars:3,consts:[["class","tinymce-selector",4,"ngIf"],[4,"ngIf"],["class","loading",4,"ngIf"],[1,"tinymce-selector"],[1,"loading"],[4,"ngIf","ngIfElse"]],template:function(W,ze){1&W&&(n.F$t(),n.YNc(0,f,1,2,"textarea",0),n.YNc(1,y,2,1,"div",1),n.YNc(2,x,2,2,"div",2)),2&W&&(n.Q6J("ngIf",!ze.inline),n.xp6(1),n.Q6J("ngIf",ze.inline),n.xp6(1),n.Q6J("ngIf",ze.load))},dependencies:[z.O5],styles:["tinymce .tinymce-selector{display:none}\n"],encapsulation:2,changeDetection:0})}return(0,e.gn)([C()],k.prototype,"inline",void 0),(0,e.gn)([C()],k.prototype,"disabled",null),(0,e.gn)([u()],k.prototype,"delay",void 0),k})(),A=(()=>{class k{static forRoot($){return{ngModule:k,providers:[{provide:_,useValue:$}]}}static#e=this.\u0275fac=function(W){return new(W||k)};static#t=this.\u0275mod=n.oAB({type:k});static#n=this.\u0275inj=n.cJS({imports:[z.ez]})}return k})()},71002:(nt,I,o)=>{"use strict";function e(n){return(e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(n)}o.d(I,{Z:()=>e})},97582:(nt,I,o)=>{"use strict";function l(fe,re,be,le){var ie,ce=arguments.length,Q=ce<3?re:null===le?le=Object.getOwnPropertyDescriptor(re,be):le;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)Q=Reflect.decorate(fe,re,be,le);else for(var ae=fe.length-1;ae>=0;ae--)(ie=fe[ae])&&(Q=(ce<3?ie(Q):ce>3?ie(re,be,Q):ie(re,be))||Q);return ce>3&&Q&&Object.defineProperty(re,be,Q),Q}function v(fe,re,be,le){return new(be||(be=Promise))(function(Q,ie){function ae(Ye){try{Me(le.next(Ye))}catch(q){ie(q)}}function xe(Ye){try{Me(le.throw(Ye))}catch(q){ie(q)}}function Me(Ye){Ye.done?Q(Ye.value):function ce(Q){return Q instanceof be?Q:new be(function(ie){ie(Q)})}(Ye.value).then(ae,xe)}Me((le=le.apply(fe,re||[])).next())})}function _(fe){return this instanceof _?(this.v=fe,this):new _(fe)}function P(fe,re,be){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var ce,le=be.apply(fe,re||[]),Q=[];return ce={},ie("next"),ie("throw"),ie("return"),ce[Symbol.asyncIterator]=function(){return this},ce;function ie(ve){le[ve]&&(ce[ve]=function(ee){return new Promise(function(Be,Re){Q.push([ve,ee,Be,Re])>1||ae(ve,ee)})})}function ae(ve,ee){try{!function xe(ve){ve.value instanceof _?Promise.resolve(ve.value.v).then(Me,Ye):q(Q[0][2],ve)}(le[ve](ee))}catch(Be){q(Q[0][3],Be)}}function Me(ve){ae("next",ve)}function Ye(ve){ae("throw",ve)}function q(ve,ee){ve(ee),Q.shift(),Q.length&&ae(Q[0][0],Q[0][1])}}function A(fe){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var be,re=fe[Symbol.asyncIterator];return re?re.call(fe):(fe=function f(fe){var re="function"==typeof Symbol&&Symbol.iterator,be=re&&fe[re],le=0;if(be)return be.call(fe);if(fe&&"number"==typeof fe.length)return{next:function(){return fe&&le>=fe.length&&(fe=void 0),{value:fe&&fe[le++],done:!fe}}};throw new TypeError(re?"Object is not iterable.":"Symbol.iterator is not defined.")}(fe),be={},le("next"),le("throw"),le("return"),be[Symbol.asyncIterator]=function(){return this},be);function le(Q){be[Q]=fe[Q]&&function(ie){return new Promise(function(ae,xe){!function ce(Q,ie,ae,xe){Promise.resolve(xe).then(function(Me){Q({value:Me,done:ae})},ie)}(ae,xe,(ie=fe[Q](ie)).done,ie.value)})}}}o.d(I,{FC:()=>P,KL:()=>A,gn:()=>l,mG:()=>v,qq:()=>_}),"function"==typeof SuppressedError&&SuppressedError},64775:nt=>{"use strict";nt.exports=JSON.parse('{"$id":"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#","description":"Meta-schema for $data reference (JSON AnySchema extension proposal)","type":"object","required":["$data"],"properties":{"$data":{"type":"string","anyOf":[{"format":"relative-json-pointer"},{"format":"json-pointer"}]}},"additionalProperties":false}')},98:nt=>{"use strict";nt.exports=JSON.parse('{"$schema":"http://json-schema.org/draft-07/schema#","$id":"http://json-schema.org/draft-07/schema#","title":"Core schema meta-schema","definitions":{"schemaArray":{"type":"array","minItems":1,"items":{"$ref":"#"}},"nonNegativeInteger":{"type":"integer","minimum":0},"nonNegativeIntegerDefault0":{"allOf":[{"$ref":"#/definitions/nonNegativeInteger"},{"default":0}]},"simpleTypes":{"enum":["array","boolean","integer","null","number","object","string"]},"stringArray":{"type":"array","items":{"type":"string"},"uniqueItems":true,"default":[]}},"type":["object","boolean"],"properties":{"$id":{"type":"string","format":"uri-reference"},"$schema":{"type":"string","format":"uri"},"$ref":{"type":"string","format":"uri-reference"},"$comment":{"type":"string"},"title":{"type":"string"},"description":{"type":"string"},"default":true,"readOnly":{"type":"boolean","default":false},"examples":{"type":"array","items":true},"multipleOf":{"type":"number","exclusiveMinimum":0},"maximum":{"type":"number"},"exclusiveMaximum":{"type":"number"},"minimum":{"type":"number"},"exclusiveMinimum":{"type":"number"},"maxLength":{"$ref":"#/definitions/nonNegativeInteger"},"minLength":{"$ref":"#/definitions/nonNegativeIntegerDefault0"},"pattern":{"type":"string","format":"regex"},"additionalItems":{"$ref":"#"},"items":{"anyOf":[{"$ref":"#"},{"$ref":"#/definitions/schemaArray"}],"default":true},"maxItems":{"$ref":"#/definitions/nonNegativeInteger"},"minItems":{"$ref":"#/definitions/nonNegativeIntegerDefault0"},"uniqueItems":{"type":"boolean","default":false},"contains":{"$ref":"#"},"maxProperties":{"$ref":"#/definitions/nonNegativeInteger"},"minProperties":{"$ref":"#/definitions/nonNegativeIntegerDefault0"},"required":{"$ref":"#/definitions/stringArray"},"additionalProperties":{"$ref":"#"},"definitions":{"type":"object","additionalProperties":{"$ref":"#"},"default":{}},"properties":{"type":"object","additionalProperties":{"$ref":"#"},"default":{}},"patternProperties":{"type":"object","additionalProperties":{"$ref":"#"},"propertyNames":{"format":"regex"},"default":{}},"dependencies":{"type":"object","additionalProperties":{"anyOf":[{"$ref":"#"},{"$ref":"#/definitions/stringArray"}]}},"propertyNames":{"$ref":"#"},"const":true,"enum":{"type":"array","items":true,"minItems":1,"uniqueItems":true},"type":{"anyOf":[{"$ref":"#/definitions/simpleTypes"},{"type":"array","items":{"$ref":"#/definitions/simpleTypes"},"minItems":1,"uniqueItems":true}]},"format":{"type":"string"},"contentMediaType":{"type":"string"},"contentEncoding":{"type":"string"},"if":{"$ref":"#"},"then":{"$ref":"#"},"else":{"$ref":"#"},"allOf":{"$ref":"#/definitions/schemaArray"},"anyOf":{"$ref":"#/definitions/schemaArray"},"oneOf":{"$ref":"#/definitions/schemaArray"},"not":{"$ref":"#"}},"default":true}')},4147:nt=>{"use strict";nt.exports=JSON.parse('{"name":"delon","version":"16.4.2","description":"Delon is a set of essential modules for NG-ALAIN.","keywords":["delon","ng-alain","alain","antd","ng-zorro-antd","angular"],"author":"cipchk ","license":"MIT","bugs":{"url":"https://github.com/ng-alain/ng-alain/issues"},"repository":{"type":"git","url":"git+https://github.com/ng-alain/delon.git"},"homepage":"https://ng-alain.com","engines":{"node":"^16.13.0 || ^18.10.0","yarn":">=1.21.1 <2","npm":"Please use yarn instead of NPM to install dependencies"},"scripts":{"ng-high-memory":"node --max_old_space_size=8000 ./node_modules/@angular/cli/bin/ng","prepare":"husky install","start":"npm run site:gen && ng s -o --hmr","lint":"bash scripts/ci/lint.sh -ts -less","lint:ts":"eslint --cache . --ext .ts,.html","lint:fix":"eslint --cache . --ext .ts,.html --fix","lint:style":"npx stylelint \'packages/**/*.less\'","test":"ng test --no-progress --browsers=ChromeHeadlessCI --code-coverage --no-watch","test:cli":"bash scripts/ci/build-schematics.sh -t -clone","test:integration":"bash scripts/ci/build-schematics.sh -b -t -clone -integration","build":"bash scripts/ci/build.sh","build_artifacts":"bash scripts/ci/build-artifacts.sh","analyze":"npm run ng-high-memory build -- --source-map","analyze:view":"source-map-explorer src/dist/browser/*.js","site:gen":"node scripts/site/main init && ng-alain-plugin-theme -t=themeCss && ng-alain-plugin-theme -t=colorLess","site:build":"npm run site:gen && ng b site && npm run site:ngsw && npm run site:minify && npm run site:sitemap && npm run site:helper","site:build:ssr":"npm run site:gen && npm run ssr:prerender && npm run site:ngsw && npm run site:minify && npm run site:sitemap && npm run site:helper","site:helper":"bash scripts/ci/helper.sh","site:minify":"node scripts/build/minify.js","site:sitemap":"node scripts/build/sitemap.js","site:ngsw":"node scripts/build/ngsw.js","changelog":"conventional-changelog -p angular -i CHANGELOG.md -s --pkg package.json","pre-publish":"node scripts/publish/publish.js && node scripts/publish/publish-scaffold.js","publish:next":"bash scripts/publish/publish.sh -next","publish":"bash scripts/publish/publish.sh","sync-scaffold-version":"node scripts/publish/sync-scaffold-version.js","ssr":"npm run ng-high-memory run site:serve-ssr","ssr:serve":"node src/dist/server/main.js","ssr:prerender":"npm run ng-high-memory run site:prerender"},"dependencies":{"@angular/animations":"^16.2.0","@angular/common":"^16.2.0","@angular/compiler":"^16.2.0","@angular/core":"^16.2.0","@angular/forms":"^16.2.0","@angular/platform-browser":"^16.2.0","@angular/platform-browser-dynamic":"^16.2.0","@angular/router":"^16.2.0","rxjs":"~7.8.0","tslib":"^2.3.0","zone.js":"~0.13.0","@angular/service-worker":"^16.2.0","@angular/platform-server":"^16.2.0","@angular/elements":"^16.2.0","@antv/data-set":"^0.11.8","@antv/g2":"^4.2.10","echarts":"^5.4.3","@stackblitz/sdk":"^1.9.0","codesandbox":"^2.2.3","ajv":"^8.12.0","ajv-formats":"^2.1.1","extend":"^3.0.2","file-saver":"^2.0.5","ng-github-button":"^16.0.0","ng-zorro-antd":"^16.2.2","ngx-color":"~9.0.0","ngx-countdown":"^16.0.0","ngx-highlight-js":"^16.1.0","ngx-tinymce":"^16.0.0","qrious":"^4.0.2","@webcomponents/custom-elements":"^1.6.0","aos":"^3.0.0-beta.6","@ng-util/monaco-editor":"^16.0.0","@nguniversal/express-engine":"^16.2.0","express":"^4.18.2","isutf8":"^4.0.0","@github/hotkey":"^2.0.1"},"devDependencies":{"@angular-devkit/build-angular":"^16.2.0","@angular/cli":"~16.2.0","@angular/compiler-cli":"^16.2.0","@types/jasmine":"~4.3.0","jasmine-core":"~4.6.0","karma":"~6.4.0","karma-chrome-launcher":"~3.2.0","karma-coverage":"~2.2.0","karma-jasmine":"~5.1.0","karma-jasmine-html-reporter":"~2.1.0","typescript":"~5.1.3","codelyzer":"^6.0.2","jasmine-spec-reporter":"^7.0.0","protractor":"~7.0.0","ts-node":"~10.9.1","@angular/language-service":"^16.2.0","@types/jasminewd2":"~2.0.10","karma-junit-reporter":"^2.0.1","karma-spec-reporter":"0.0.36","karma-viewport":"^1.0.9","@types/aos":"^3.0.4","@types/file-saver":"^2.0.5","@types/deep-extend":"^0.6.0","@types/extend":"^3.0.1","@types/mockjs":"^1.0.7","@types/parse5":"^7.0.0","karma-summary-reporter":"^3.1.1","karma-parallel":"^0.3.1","chalk":"^5.3.0","codecov":"^3.8.3","conventional-changelog-cli":"^4.0.0","fs-extra":"^11.1.1","@types/fs-extra":"^11.0.1","husky":"^8.0.3","jsonml.js":"^0.1.0","klaw-sync":"^6.0.0","less-vars-to-js":"^1.3.0","less-plugin-clean-css":"^1.5.1","less-plugin-npm-import":"^2.1.0","mark-twain":"^2.0.3","mockjs":"^1.1.0","mustache":"^4.2.0","ng-packagr":"^16.2.1","parse5":"^7.1.2","prettier":"^3.0.2","readline-sync":"^1.4.10","stream":"0.0.2","stylelint":"^15.10.3","stylelint-config-rational-order":"^0.1.2","stylelint-config-standard":"^34.0.0","stylelint-declaration-block-no-ignored-properties":"^2.7.0","stylelint-order":"^6.0.3","source-map-explorer":"^2.5.3","xlsx":"^0.18.5","jszip":"^3.10.1","plyr":"^3.7.8","screenfull":"^6.0.2","less-bundle-promise":"^1.0.11","ng-alain-codelyzer":"^0.0.1","ng-alain-sts":"^0.0.2","ng-alain-plugin-theme":"^15.0.1","tsconfig-paths":"^4.2.0","@nguniversal/builders":"^16.2.0","@types/express":"^4.17.17","html-minifier-terser":"^7.2.0","terser":"^5.19.2","@commitlint/cli":"^17.7.1","@commitlint/config-angular":"^17.7.0","@angular-eslint/builder":"~16.1.1","@angular-eslint/eslint-plugin":"~16.1.1","@angular-eslint/eslint-plugin-template":"~16.1.1","@angular-eslint/schematics":"~16.1.1","@angular-eslint/template-parser":"~16.1.1","@typescript-eslint/eslint-plugin":"~6.4.1","@typescript-eslint/parser":"~6.4.1","eslint":"^8.48.0","eslint-config-prettier":"~9.0.0","eslint-plugin-import":"~2.28.1","eslint-plugin-jsdoc":"~46.5.0","eslint-plugin-prefer-arrow":"~1.2.3","eslint-plugin-prettier":"~5.0.0","eslint-plugin-deprecation":"~1.5.0","lint-staged":"^14.0.1","raw-loader":"^4.0.2","swagger-typescript-api":"^12.0.4","sitemap":"^7.1.1"},"lint-staged":{"(schematics|scripts|packages)/**/!(tslint-rules|testing)/!(polyfills).{html,ts}":["eslint --fix"],"packages/**/*.less":["npm run lint:style"]}}')}},nt=>{nt(nt.s=3975)}]); \ No newline at end of file + deps: ${M}}`};const i={keyword:"dependencies",type:"object",schemaType:"object",error:I.error,code(u){const[z,M]=function l({schema:u}){const z={},M={};for(const h in u)"__proto__"!==h&&((Array.isArray(u[h])?z:M)[h]=u[h]);return[z,M]}(u);C(u,z),E(u,M)}};function C(u,z=u.schema){const{gen:M,data:h,it:v}=u;if(0===Object.keys(z).length)return;const g=M.let("missing");for(const d in z){const p=z[d];if(0===p.length)continue;const f=(0,t.propertyInData)(M,h,d,v.opts.ownProperties);u.setParams({property:d,depsCount:p.length,deps:p.join(", ")}),v.allErrors?M.if(f,()=>{for(const y of p)(0,t.checkReportMissingProp)(u,y)}):(M.if(e._`${f} && (${(0,t.checkMissingProp)(u,p,g)})`),(0,t.reportMissingProp)(u,g),M.else())}}function E(u,z=u.schema){const{gen:M,data:h,keyword:v,it:g}=u,d=M.name("valid");for(const p in z)(0,n.alwaysValidSchema)(g,z[p])||(M.if((0,t.propertyInData)(M,h,p,g.opts.ownProperties),()=>{const f=u.subschema({keyword:v,schemaProp:p},d);u.mergeValidEvaluated(f,d)},()=>M.var(d,!0)),u.ok(d))}I.validatePropertyDeps=C,I.validateSchemaDeps=E,I.default=i},70486:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117),n=o(78754);function l(C,E){const u=C.schema[E];return void 0!==u&&!(0,n.alwaysValidSchema)(C,u)}I.default={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:{message:({params:C})=>e.str`must match "${C.ifClause}" schema`,params:({params:C})=>e._`{failingKeyword: ${C.ifClause}}`},code(C){const{gen:E,parentSchema:u,it:z}=C;void 0===u.then&&void 0===u.else&&(0,n.checkStrictMode)(z,'"if" without "then" and "else" is ignored');const M=l(z,"then"),h=l(z,"else");if(!M&&!h)return;const v=E.let("valid",!0),g=E.name("_valid");if(function d(){const f=C.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},g);C.mergeEvaluated(f)}(),C.reset(),M&&h){const f=E.let("ifClause");C.setParams({ifClause:f}),E.if(g,p("then",f),p("else",f))}else M?E.if(g,p("then")):E.if((0,e.not)(g),p("else"));function p(f,y){return()=>{const T=C.subschema({keyword:f},g);E.assign(v,g),C.mergeValidEvaluated(T,v),y?E.assign(y,e._`${f}`):C.setParams({ifClause:f})}}C.pass(v,()=>C.error(!0))}}},69845:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(92952),n=o(45281),t=o(33013),i=o(33691),l=o(51006),C=o(91804),E=o(87110),u=o(50746),z=o(12505),M=o(57655),h=o(60603),v=o(24651),g=o(60312),d=o(19466),p=o(70486),f=o(70632);I.default=function y(T=!1){const x=[h.default,v.default,g.default,d.default,p.default,f.default,E.default,u.default,C.default,z.default,M.default];return T?x.push(n.default,i.default):x.push(e.default,t.default),x.push(l.default),x}},33013:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.validateTuple=void 0;const e=o(10117),n=o(78754),t=o(89508),i={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(C){const{schema:E,it:u}=C;if(Array.isArray(E))return l(C,"additionalItems",E);u.items=!0,!(0,n.alwaysValidSchema)(u,E)&&C.ok((0,t.validateArray)(C))}};function l(C,E,u=C.schema){const{gen:z,parentSchema:M,data:h,keyword:v,it:g}=C;(function f(y){const{opts:T,errSchemaPath:x}=g,D=u.length;T.strictTuples&&!(D===y.minItems&&(D===y.maxItems||!1===y[E]))&&(0,n.checkStrictMode)(g,`"${v}" is ${D}-tuple, but minItems or maxItems/${E} are not specified or different at path "${x}"`,T.strictTuples)})(M),g.opts.unevaluated&&u.length&&!0!==g.items&&(g.items=n.mergeEvaluated.items(z,u.length,g.items));const d=z.name("valid"),p=z.const("len",e._`${h}.length`);u.forEach((y,T)=>{(0,n.alwaysValidSchema)(g,y)||(z.if(e._`${p} > ${T}`,()=>C.subschema({keyword:v,schemaProp:T,dataProp:T},d)),C.ok(d))})}I.validateTuple=l,I.default=i},33691:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117),n=o(78754),t=o(89508),i=o(92952);I.default={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:{message:({params:{len:E}})=>e.str`must NOT have more than ${E} items`,params:({params:{len:E}})=>e._`{limit: ${E}}`},code(E){const{schema:u,parentSchema:z,it:M}=E,{prefixItems:h}=z;M.items=!0,!(0,n.alwaysValidSchema)(M,u)&&(h?(0,i.validateAdditionalItems)(E,h):E.ok((0,t.validateArray)(E)))}}},60603:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(78754);I.default={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){const{gen:i,schema:l,it:C}=t;if((0,e.alwaysValidSchema)(C,l))return void t.fail();const E=i.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},E),t.failResult(E,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}}},60312:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117),n=o(78754);I.default={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:{message:"must match exactly one schema in oneOf",params:({params:l})=>e._`{passingSchemas: ${l.passing}}`},code(l){const{gen:C,schema:E,parentSchema:u,it:z}=l;if(!Array.isArray(E))throw new Error("ajv implementation error");if(z.opts.discriminator&&u.discriminator)return;const M=E,h=C.let("valid",!1),v=C.let("passing",null),g=C.name("_valid");l.setParams({passing:v}),C.block(function d(){M.forEach((p,f)=>{let y;(0,n.alwaysValidSchema)(z,p)?C.var(g,!0):y=l.subschema({keyword:"oneOf",schemaProp:f,compositeRule:!0},g),f>0&&C.if(e._`${g} && ${h}`).assign(h,!1).assign(v,e._`[${v}, ${f}]`).else(),C.if(g,()=>{C.assign(h,!0),C.assign(v,f),y&&l.mergeEvaluated(y,e.Name)})})}),l.result(h,()=>l.reset(),()=>l.error(!0))}}},57655:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(89508),n=o(10117),t=o(78754),i=o(78754);I.default={keyword:"patternProperties",type:"object",schemaType:"object",code(C){const{gen:E,schema:u,data:z,parentSchema:M,it:h}=C,{opts:v}=h,g=(0,e.allSchemaProperties)(u),d=g.filter(_=>(0,t.alwaysValidSchema)(h,u[_]));if(0===g.length||d.length===g.length&&(!h.opts.unevaluated||!0===h.props))return;const p=v.strictSchema&&!v.allowMatchingProperties&&M.properties,f=E.name("valid");!0!==h.props&&!(h.props instanceof n.Name)&&(h.props=(0,i.evaluatedPropsToName)(E,h.props));const{props:y}=h;function x(_){for(const P in p)new RegExp(_).test(P)&&(0,t.checkStrictMode)(h,`property ${P} matches pattern ${_} (use allowMatchingProperties)`)}function D(_){E.forIn("key",z,P=>{E.if(n._`${(0,e.usePattern)(C,_)}.test(${P})`,()=>{const O=d.includes(_);O||C.subschema({keyword:"patternProperties",schemaProp:_,dataProp:P,dataPropType:i.Type.Str},f),h.opts.unevaluated&&!0!==y?E.assign(n._`${y}[${P}]`,!0):!O&&!h.allErrors&&E.if((0,n.not)(f),()=>E.break())})})}!function T(){for(const _ of g)p&&x(_),h.allErrors?D(_):(E.var(f,!0),D(_),E.if(f))}()}}},45281:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(33013);I.default={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,e.validateTuple)(t,"items")}},12505:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(62175),n=o(89508),t=o(78754),i=o(50746);I.default={keyword:"properties",type:"object",schemaType:"object",code(C){const{gen:E,schema:u,parentSchema:z,data:M,it:h}=C;"all"===h.opts.removeAdditional&&void 0===z.additionalProperties&&i.default.code(new e.KeywordCxt(h,i.default,"additionalProperties"));const v=(0,n.allSchemaProperties)(u);for(const y of v)h.definedProperties.add(y);h.opts.unevaluated&&v.length&&!0!==h.props&&(h.props=t.mergeEvaluated.props(E,(0,t.toHash)(v),h.props));const g=v.filter(y=>!(0,t.alwaysValidSchema)(h,u[y]));if(0===g.length)return;const d=E.name("valid");for(const y of g)p(y)?f(y):(E.if((0,n.propertyInData)(E,M,y,h.opts.ownProperties)),f(y),h.allErrors||E.else().var(d,!0),E.endIf()),C.it.definedProperties.add(y),C.ok(d);function p(y){return h.opts.useDefaults&&!h.compositeRule&&void 0!==u[y].default}function f(y){C.subschema({keyword:"properties",schemaProp:y,dataProp:y},d)}}}},87110:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117),n=o(78754);I.default={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:{message:"property name must be valid",params:({params:l})=>e._`{propertyName: ${l.propertyName}}`},code(l){const{gen:C,schema:E,data:u,it:z}=l;if((0,n.alwaysValidSchema)(z,E))return;const M=C.name("valid");C.forIn("key",u,h=>{l.setParams({propertyName:h}),l.subschema({keyword:"propertyNames",data:h,dataTypes:["string"],propertyName:h,compositeRule:!0},M),C.if((0,e.not)(M),()=>{l.error(!0),z.allErrors||C.break()})}),l.ok(M)}}},70632:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(78754);I.default={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:i,it:l}){void 0===i.if&&(0,e.checkStrictMode)(l,`"${t}" without "if" is ignored`)}}},89508:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.validateUnion=I.validateArray=I.usePattern=I.callValidateCode=I.schemaProperties=I.allSchemaProperties=I.noPropertyInData=I.propertyInData=I.isOwnProperty=I.hasPropFunc=I.reportMissingProp=I.checkMissingProp=I.checkReportMissingProp=void 0;const e=o(10117),n=o(78754),t=o(25631),i=o(78754);function u(x){return x.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:e._`Object.prototype.hasOwnProperty`})}function z(x,D,_){return e._`${u(x)}.call(${D}, ${_})`}function h(x,D,_,P){const O=e._`${D}${(0,e.getProperty)(_)} === undefined`;return P?(0,e.or)(O,(0,e.not)(z(x,D,_))):O}function v(x){return x?Object.keys(x).filter(D=>"__proto__"!==D):[]}I.checkReportMissingProp=function l(x,D){const{gen:_,data:P,it:O}=x;_.if(h(_,P,D,O.opts.ownProperties),()=>{x.setParams({missingProperty:e._`${D}`},!0),x.error()})},I.checkMissingProp=function C({gen:x,data:D,it:{opts:_}},P,O){return(0,e.or)(...P.map(A=>(0,e.and)(h(x,D,A,_.ownProperties),e._`${O} = ${A}`)))},I.reportMissingProp=function E(x,D){x.setParams({missingProperty:D},!0),x.error()},I.hasPropFunc=u,I.isOwnProperty=z,I.propertyInData=function M(x,D,_,P){const O=e._`${D}${(0,e.getProperty)(_)} !== undefined`;return P?e._`${O} && ${z(x,D,_)}`:O},I.noPropertyInData=h,I.allSchemaProperties=v,I.schemaProperties=function g(x,D){return v(D).filter(_=>!(0,n.alwaysValidSchema)(x,D[_]))},I.callValidateCode=function d({schemaCode:x,data:D,it:{gen:_,topSchemaRef:P,schemaPath:O,errorPath:A},it:k},F,W,K){const _e=K?e._`${x}, ${D}, ${P}${O}`:D,Y=[[t.default.instancePath,(0,e.strConcat)(t.default.instancePath,A)],[t.default.parentData,k.parentData],[t.default.parentDataProperty,k.parentDataProperty],[t.default.rootData,t.default.rootData]];k.opts.dynamicRef&&Y.push([t.default.dynamicAnchors,t.default.dynamicAnchors]);const G=e._`${_e}, ${_.object(...Y)}`;return W!==e.nil?e._`${F}.call(${W}, ${G})`:e._`${F}(${G})`};const p=e._`new RegExp`;I.usePattern=function f({gen:x,it:{opts:D}},_){const P=D.unicodeRegExp?"u":"",{regExp:O}=D.code,A=O(_,P);return x.scopeValue("pattern",{key:A.toString(),ref:A,code:e._`${"new RegExp"===O.code?p:(0,i.useFunc)(x,O)}(${_}, ${P})`})},I.validateArray=function y(x){const{gen:D,data:_,keyword:P,it:O}=x,A=D.name("valid");if(O.allErrors){const F=D.let("valid",!0);return k(()=>D.assign(F,!1)),F}return D.var(A,!0),k(()=>D.break()),A;function k(F){const W=D.const("len",e._`${_}.length`);D.forRange("i",0,W,K=>{x.subschema({keyword:P,dataProp:K,dataPropType:n.Type.Num},A),D.if((0,e.not)(A),F)})}},I.validateUnion=function T(x){const{gen:D,schema:_,keyword:P,it:O}=x;if(!Array.isArray(_))throw new Error("ajv implementation error");if(_.some(W=>(0,n.alwaysValidSchema)(O,W))&&!O.opts.unevaluated)return;const k=D.let("valid",!1),F=D.name("_valid");D.block(()=>_.forEach((W,K)=>{const _e=x.subschema({keyword:P,schemaProp:K,compositeRule:!0},F);D.assign(k,e._`${k} || ${F}`),x.mergeValidEvaluated(_e,F)||D.if((0,e.not)(k))})),x.result(k,()=>x.reset(),()=>x.error(!0))}},51141:(nt,I)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.default={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}}},54402:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(51141),n=o(26119);I.default=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",e.default,n.default]},26119:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.callRef=I.getValidate=void 0;const e=o(95695),n=o(89508),t=o(10117),i=o(25631),l=o(24317),C=o(78754),E={keyword:"$ref",schemaType:"string",code(M){const{gen:h,schema:v,it:g}=M,{baseId:d,schemaEnv:p,validateName:f,opts:y,self:T}=g,{root:x}=p;if(("#"===v||"#/"===v)&&d===x.baseId)return function _(){if(p===x)return z(M,f,p,p.$async);const A=h.scopeValue("root",{ref:x});return z(M,t._`${A}.validate`,x,x.$async)}();const D=l.resolveRef.call(T,x,d,v);if(void 0===D)throw new e.default(g.opts.uriResolver,d,v);return D instanceof l.SchemaEnv?function P(A){const k=u(M,A);z(M,k,A,A.$async)}(D):function O(A){const k=h.scopeValue("schema",!0===y.code.source?{ref:A,code:(0,t.stringify)(A)}:{ref:A}),F=h.name("valid"),W=M.subschema({schema:A,dataTypes:[],schemaPath:t.nil,topSchemaRef:k,errSchemaPath:v},F);M.mergeEvaluated(W),M.ok(F)}(D)}};function u(M,h){const{gen:v}=M;return h.validate?v.scopeValue("validate",{ref:h.validate}):t._`${v.scopeValue("wrapper",{ref:h})}.validate`}function z(M,h,v,g){const{gen:d,it:p}=M,{allErrors:f,schemaEnv:y,opts:T}=p,x=T.passContext?i.default.this:t.nil;function P(A){const k=t._`${A}.errors`;d.assign(i.default.vErrors,t._`${i.default.vErrors} === null ? ${k} : ${i.default.vErrors}.concat(${k})`),d.assign(i.default.errors,t._`${i.default.vErrors}.length`)}function O(A){var k;if(!p.opts.unevaluated)return;const F=null===(k=v?.validate)||void 0===k?void 0:k.evaluated;if(!0!==p.props)if(F&&!F.dynamicProps)void 0!==F.props&&(p.props=C.mergeEvaluated.props(d,F.props,p.props));else{const W=d.var("props",t._`${A}.evaluated.props`);p.props=C.mergeEvaluated.props(d,W,p.props,t.Name)}if(!0!==p.items)if(F&&!F.dynamicItems)void 0!==F.items&&(p.items=C.mergeEvaluated.items(d,F.items,p.items));else{const W=d.var("items",t._`${A}.evaluated.items`);p.items=C.mergeEvaluated.items(d,W,p.items,t.Name)}}g?function D(){if(!y.$async)throw new Error("async schema referenced by sync schema");const A=d.let("valid");d.try(()=>{d.code(t._`await ${(0,n.callValidateCode)(M,h,x)}`),O(h),f||d.assign(A,!0)},k=>{d.if(t._`!(${k} instanceof ${p.ValidationError})`,()=>d.throw(k)),P(k),f||d.assign(A,!1)}),M.ok(A)}():function _(){M.result((0,n.callValidateCode)(M,h,x),()=>O(h),()=>P(h))}()}I.getValidate=u,I.callRef=z,I.default=E},96081:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117),n=o(75746),t=o(24317),i=o(78754);I.default={keyword:"discriminator",type:"object",schemaType:"object",error:{message:({params:{discrError:E,tagName:u}})=>E===n.DiscrError.Tag?`tag "${u}" must be string`:`value of tag "${u}" must be in oneOf`,params:({params:{discrError:E,tag:u,tagName:z}})=>e._`{error: ${E}, tag: ${z}, tagValue: ${u}}`},code(E){const{gen:u,data:z,schema:M,parentSchema:h,it:v}=E,{oneOf:g}=h;if(!v.opts.discriminator)throw new Error("discriminator: requires discriminator option");const d=M.propertyName;if("string"!=typeof d)throw new Error("discriminator: requires propertyName");if(M.mapping)throw new Error("discriminator: mapping is not supported");if(!g)throw new Error("discriminator: requires oneOf keyword");const p=u.let("valid",!1),f=u.const("tag",e._`${z}${(0,e.getProperty)(d)}`);function T(D){const _=u.name("valid"),P=E.subschema({keyword:"oneOf",schemaProp:D},_);return E.mergeEvaluated(P,e.Name),_}u.if(e._`typeof ${f} == "string"`,()=>function y(){const D=function x(){var D;const _={},P=A(h);let O=!0;for(let W=0;WE.error(!1,{discrError:n.DiscrError.Tag,tag:f,tagName:d})),E.ok(p)}}},75746:(nt,I)=>{"use strict";var e;Object.defineProperty(I,"__esModule",{value:!0}),I.DiscrError=void 0,(e=I.DiscrError||(I.DiscrError={})).Tag="tag",e.Mapping="mapping"},8677:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(54402),n=o(81495),t=o(69845),i=o(92389),l=o(50836),C=[e.default,n.default,(0,t.default)(),i.default,l.metadataVocabulary,l.contentVocabulary];I.default=C},40229:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117);I.default={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:{message:({schemaCode:i})=>e.str`must match format "${i}"`,params:({schemaCode:i})=>e._`{format: ${i}}`},code(i,l){const{gen:C,data:E,$data:u,schema:z,schemaCode:M,it:h}=i,{opts:v,errSchemaPath:g,schemaEnv:d,self:p}=h;v.validateFormats&&(u?function f(){const T=C.scopeValue("formats",{ref:p.formats,code:v.code.formats}),x=C.const("fDef",e._`${T}[${M}]`),D=C.let("fType"),_=C.let("format");C.if(e._`typeof ${x} == "object" && !(${x} instanceof RegExp)`,()=>C.assign(D,e._`${x}.type || "string"`).assign(_,e._`${x}.validate`),()=>C.assign(D,e._`"string"`).assign(_,x)),i.fail$data((0,e.or)(function P(){return!1===v.strictSchema?e.nil:e._`${M} && !${_}`}(),function O(){const A=d.$async?e._`(${x}.async ? await ${_}(${E}) : ${_}(${E}))`:e._`${_}(${E})`,k=e._`(typeof ${_} == "function" ? ${A} : ${_}.test(${E}))`;return e._`${_} && ${_} !== true && ${D} === ${l} && !${k}`}()))}():function y(){const T=p.formats[z];if(!T)return void function P(){if(!1!==v.strictSchema)throw new Error(k());function k(){return`unknown format "${z}" ignored in schema at path "${g}"`}p.logger.warn(k())}();if(!0===T)return;const[x,D,_]=function O(k){const F=k instanceof RegExp?(0,e.regexpCode)(k):v.code.formats?e._`${v.code.formats}${(0,e.getProperty)(z)}`:void 0,W=C.scopeValue("formats",{key:z,ref:k,code:F});return"object"!=typeof k||k instanceof RegExp?["string",k,W]:[k.type||"string",k.validate,e._`${W}.validate`]}(T);x===l&&i.pass(function A(){if("object"==typeof T&&!(T instanceof RegExp)&&T.async){if(!d.$async)throw new Error("async format in sync schema");return e._`await ${_}(${E})`}return"function"==typeof D?e._`${_}(${E})`:e._`${_}.test(${E})`}())}())}}},92389:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const n=[o(40229).default];I.default=n},50836:(nt,I)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.contentVocabulary=I.metadataVocabulary=void 0,I.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"],I.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]},26316:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117),n=o(78754),t=o(74747);I.default={keyword:"const",$data:!0,error:{message:"must be equal to constant",params:({schemaCode:C})=>e._`{allowedValue: ${C}}`},code(C){const{gen:E,data:u,$data:z,schemaCode:M,schema:h}=C;z||h&&"object"==typeof h?C.fail$data(e._`!${(0,n.useFunc)(E,t.default)}(${u}, ${M})`):C.fail(e._`${h} !== ${u}`)}}},18618:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117),n=o(78754),t=o(74747);I.default={keyword:"enum",schemaType:"array",$data:!0,error:{message:"must be equal to one of the allowed values",params:({schemaCode:C})=>e._`{allowedValues: ${C}}`},code(C){const{gen:E,data:u,$data:z,schema:M,schemaCode:h,it:v}=C;if(!z&&0===M.length)throw new Error("enum must have non-empty array");let d;const p=()=>d??(d=(0,n.useFunc)(E,t.default));let f;if(M.length>=v.opts.loopEnum||z)f=E.let("valid"),C.block$data(f,function y(){E.assign(f,!1),E.forOf("v",h,x=>E.if(e._`${p()}(${u}, ${x})`,()=>E.assign(f,!0).break()))});else{if(!Array.isArray(M))throw new Error("ajv implementation error");const x=E.const("vSchema",h);f=(0,e.or)(...M.map((D,_)=>function T(x,D){const _=M[D];return"object"==typeof _&&null!==_?e._`${p()}(${u}, ${x}[${D}])`:e._`${u} === ${_}`}(x,_)))}C.pass(f)}}},81495:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(89587),n=o(29896),t=o(33260),i=o(50216),l=o(59726),C=o(363),E=o(70507),u=o(17143),z=o(26316),M=o(18618);I.default=[e.default,n.default,t.default,i.default,l.default,C.default,E.default,u.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},z.default,M.default]},70507:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117);I.default={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:{message:({keyword:i,schemaCode:l})=>e.str`must NOT have ${"maxItems"===i?"more":"fewer"} than ${l} items`,params:({schemaCode:i})=>e._`{limit: ${i}}`},code(i){const{keyword:l,data:C,schemaCode:E}=i;i.fail$data(e._`${C}.length ${"maxItems"===l?e.operators.GT:e.operators.LT} ${E}`)}}},33260:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117),n=o(78754),t=o(81197);I.default={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:{message:({keyword:C,schemaCode:E})=>e.str`must NOT have ${"maxLength"===C?"more":"fewer"} than ${E} characters`,params:({schemaCode:C})=>e._`{limit: ${C}}`},code(C){const{keyword:E,data:u,schemaCode:z,it:M}=C,h="maxLength"===E?e.operators.GT:e.operators.LT,v=!1===M.opts.unicode?e._`${u}.length`:e._`${(0,n.useFunc)(C.gen,t.default)}(${u})`;C.fail$data(e._`${v} ${h} ${z}`)}}},89587:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117),n=e.operators,t={maximum:{okStr:"<=",ok:n.LTE,fail:n.GT},minimum:{okStr:">=",ok:n.GTE,fail:n.LT},exclusiveMaximum:{okStr:"<",ok:n.LT,fail:n.GTE},exclusiveMinimum:{okStr:">",ok:n.GT,fail:n.LTE}},i={message:({keyword:C,schemaCode:E})=>e.str`must be ${t[C].okStr} ${E}`,params:({keyword:C,schemaCode:E})=>e._`{comparison: ${t[C].okStr}, limit: ${E}}`},l={keyword:Object.keys(t),type:"number",schemaType:"number",$data:!0,error:i,code(C){const{keyword:E,data:u,schemaCode:z}=C;C.fail$data(e._`${u} ${t[E].fail} ${z} || isNaN(${u})`)}};I.default=l},59726:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117);I.default={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:{message:({keyword:i,schemaCode:l})=>e.str`must NOT have ${"maxProperties"===i?"more":"fewer"} than ${l} properties`,params:({schemaCode:i})=>e._`{limit: ${i}}`},code(i){const{keyword:l,data:C,schemaCode:E}=i;i.fail$data(e._`Object.keys(${C}).length ${"maxProperties"===l?e.operators.GT:e.operators.LT} ${E}`)}}},29896:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(10117);I.default={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:{message:({schemaCode:i})=>e.str`must be multiple of ${i}`,params:({schemaCode:i})=>e._`{multipleOf: ${i}}`},code(i){const{gen:l,data:C,schemaCode:E,it:u}=i,z=u.opts.multipleOfPrecision,M=l.let("res"),h=z?e._`Math.abs(Math.round(${M}) - ${M}) > 1e-${z}`:e._`${M} !== parseInt(${M})`;i.fail$data(e._`(${E} === 0 || (${M} = ${C}/${E}, ${h}))`)}}},50216:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(89508),n=o(10117);I.default={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:{message:({schemaCode:l})=>n.str`must match pattern "${l}"`,params:({schemaCode:l})=>n._`{pattern: ${l}}`},code(l){const{data:C,$data:E,schema:u,schemaCode:z,it:M}=l,v=E?n._`(new RegExp(${z}, ${M.opts.unicodeRegExp?"u":""}))`:(0,e.usePattern)(l,u);l.fail$data(n._`!${v}.test(${C})`)}}},363:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(89508),n=o(10117),t=o(78754);I.default={keyword:"required",type:"object",schemaType:"array",$data:!0,error:{message:({params:{missingProperty:C}})=>n.str`must have required property '${C}'`,params:({params:{missingProperty:C}})=>n._`{missingProperty: ${C}}`},code(C){const{gen:E,schema:u,schemaCode:z,data:M,$data:h,it:v}=C,{opts:g}=v;if(!h&&0===u.length)return;const d=u.length>=g.loopRequired;if(v.allErrors?function p(){if(d||h)C.block$data(n.nil,y);else for(const x of u)(0,e.checkReportMissingProp)(C,x)}():function f(){const x=E.let("missing");if(d||h){const D=E.let("valid",!0);C.block$data(D,()=>function T(x,D){C.setParams({missingProperty:x}),E.forOf(x,z,()=>{E.assign(D,(0,e.propertyInData)(E,M,x,g.ownProperties)),E.if((0,n.not)(D),()=>{C.error(),E.break()})},n.nil)}(x,D)),C.ok(D)}else E.if((0,e.checkMissingProp)(C,u,x)),(0,e.reportMissingProp)(C,x),E.else()}(),g.strictRequired){const x=C.parentSchema.properties,{definedProperties:D}=C.it;for(const _ of u)void 0!==x?.[_]||D.has(_)||(0,t.checkStrictMode)(v,`required property "${_}" is not defined at "${v.schemaEnv.baseId+v.errSchemaPath}" (strictRequired)`,v.opts.strictRequired)}function y(){E.forOf("prop",z,x=>{C.setParams({missingProperty:x}),E.if((0,e.noPropertyInData)(E,M,x,g.ownProperties),()=>C.error())})}}}},17143:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});const e=o(84730),n=o(10117),t=o(78754),i=o(74747);I.default={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:{message:({params:{i:E,j:u}})=>n.str`must NOT have duplicate items (items ## ${u} and ${E} are identical)`,params:({params:{i:E,j:u}})=>n._`{i: ${E}, j: ${u}}`},code(E){const{gen:u,data:z,$data:M,schema:h,parentSchema:v,schemaCode:g,it:d}=E;if(!M&&!h)return;const p=u.let("valid"),f=v.items?(0,e.getSchemaTypes)(v.items):[];function x(_,P){const O=u.name("item"),A=(0,e.checkDataTypes)(f,O,d.opts.strictNumbers,e.DataType.Wrong),k=u.const("indices",n._`{}`);u.for(n._`;${_}--;`,()=>{u.let(O,n._`${z}[${_}]`),u.if(A,n._`continue`),f.length>1&&u.if(n._`typeof ${O} == "string"`,n._`${O} += "_"`),u.if(n._`typeof ${k}[${O}] == "number"`,()=>{u.assign(P,n._`${k}[${O}]`),E.error(),u.assign(p,!1).break()}).code(n._`${k}[${O}] = ${_}`)})}function D(_,P){const O=(0,t.useFunc)(u,i.default),A=u.name("outer");u.label(A).for(n._`;${_}--;`,()=>u.for(n._`${P} = ${_}; ${P}--;`,()=>u.if(n._`${O}(${z}[${_}], ${z}[${P}])`,()=>{E.error(),u.assign(p,!1).break(A)})))}E.block$data(p,function y(){const _=u.let("i",n._`${z}.length`),P=u.let("j");E.setParams({i:_,j:P}),u.assign(p,!0),u.if(n._`${_} > 1`,()=>(function T(){return f.length>0&&!f.some(_=>"object"===_||"array"===_)}()?x:D)(_,P))},n._`${g} === false`),E.ok(p)}}},99402:function(nt){nt.exports=function(){"use strict";var I=typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},o="Expected a function",e=NaN,n="[object Symbol]",t=/^\s+|\s+$/g,i=/^[-+]0x[0-9a-f]+$/i,l=/^0b[01]+$/i,C=/^0o[0-7]+$/i,E=parseInt,z="object"==typeof self&&self&&self.Object===Object&&self,M="object"==typeof I&&I&&I.Object===Object&&I||z||Function("return this")(),h=Object.prototype.toString,v=Math.max,g=Math.min,d=function(){return M.Date.now()};function f(Ne){var pt=typeof Ne;return!!Ne&&("object"==pt||"function"==pt)}function y(Ne){if("number"==typeof Ne)return Ne;if("symbol"==typeof(Lt=Ne)||(Ut=Lt)&&"object"==typeof Ut&&h.call(Lt)==n)return e;var Lt,Ut;if(f(Ne)){var pt="function"==typeof Ne.valueOf?Ne.valueOf():Ne;Ne=f(pt)?pt+"":pt}if("string"!=typeof Ne)return 0===Ne?Ne:+Ne;Ne=Ne.replace(t,"");var Dt=l.test(Ne);return Dt||C.test(Ne)?E(Ne.slice(2),Dt?2:8):i.test(Ne)?e:+Ne}var T=function(Ne,pt,Dt){var Lt=!0,Ut=!0;if("function"!=typeof Ne)throw new TypeError(o);return f(Dt)&&(Lt="leading"in Dt?!!Dt.leading:Lt,Ut="trailing"in Dt?!!Dt.trailing:Ut),function p(Ne,pt,Dt){var Lt,Ut,qt,en,cn,Wt,Vt=0,st=!1,He=!1,et=!0;if("function"!=typeof Ne)throw new TypeError(o);function It(fe){var qe=Lt,ge=Ut;return Lt=Ut=void 0,Vt=fe,en=Ne.apply(ge,qe)}function Ot(fe){var qe=fe-Wt;return void 0===Wt||qe>=pt||qe<0||He&&fe-Vt>=qt}function xt(){var qe,ge,fe=d();if(Ot(fe))return Qe(fe);cn=setTimeout(xt,(ge=pt-((qe=fe)-Wt),He?g(ge,qt-(qe-Vt)):ge))}function Qe(fe){return cn=void 0,et&&Lt?It(fe):(Lt=Ut=void 0,en)}function ke(){var ge,fe=d(),qe=Ot(fe);if(Lt=arguments,Ut=this,Wt=fe,qe){if(void 0===cn)return Vt=ge=Wt,cn=setTimeout(xt,pt),st?It(ge):en;if(He)return cn=setTimeout(xt,pt),It(Wt)}return void 0===cn&&(cn=setTimeout(xt,pt)),en}return pt=y(pt)||0,f(Dt)&&(st=!!Dt.leading,qt=(He="maxWait"in Dt)?v(y(Dt.maxWait)||0,pt):qt,et="trailing"in Dt?!!Dt.trailing:et),ke.cancel=function(){void 0!==cn&&clearTimeout(cn),Vt=0,Lt=Wt=Ut=cn=void 0},ke.flush=function(){return void 0===cn?en:Qe(d())},ke}(Ne,pt,{leading:Lt,maxWait:pt,trailing:Ut})},P=/^\s+|\s+$/g,O=/^[-+]0x[0-9a-f]+$/i,A=/^0b[01]+$/i,k=/^0o[0-7]+$/i,F=parseInt,K="object"==typeof self&&self&&self.Object===Object&&self,_e="object"==typeof I&&I&&I.Object===Object&&I||K||Function("return this")(),Y=Object.prototype.toString,G=Math.max,H=Math.min,j=function(){return _e.Date.now()};function te(Ne){var pt=typeof Ne;return!!Ne&&("object"==pt||"function"==pt)}function ne(Ne){if("number"==typeof Ne)return Ne;if("symbol"==typeof(Lt=Ne)||(Ut=Lt)&&"object"==typeof Ut&&"[object Symbol]"==Y.call(Lt))return NaN;var Lt,Ut;if(te(Ne)){var pt="function"==typeof Ne.valueOf?Ne.valueOf():Ne;Ne=te(pt)?pt+"":pt}if("string"!=typeof Ne)return 0===Ne?Ne:+Ne;Ne=Ne.replace(P,"");var Dt=A.test(Ne);return Dt||k.test(Ne)?F(Ne.slice(2),Dt?2:8):O.test(Ne)?NaN:+Ne}var pe=function(Ne,pt,Dt){var Lt,Ut,qt,en,cn,Wt,Vt=0,st=!1,He=!1,et=!0;if("function"!=typeof Ne)throw new TypeError("Expected a function");function It(fe){var qe=Lt,ge=Ut;return Lt=Ut=void 0,Vt=fe,en=Ne.apply(ge,qe)}function Ot(fe){var qe=fe-Wt;return void 0===Wt||qe>=pt||qe<0||He&&fe-Vt>=qt}function xt(){var qe,ge,fe=j();if(Ot(fe))return Qe(fe);cn=setTimeout(xt,(ge=pt-((qe=fe)-Wt),He?H(ge,qt-(qe-Vt)):ge))}function Qe(fe){return cn=void 0,et&&Lt?It(fe):(Lt=Ut=void 0,en)}function ke(){var ge,fe=j(),qe=Ot(fe);if(Lt=arguments,Ut=this,Wt=fe,qe){if(void 0===cn)return Vt=ge=Wt,cn=setTimeout(xt,pt),st?It(ge):en;if(He)return cn=setTimeout(xt,pt),It(Wt)}return void 0===cn&&(cn=setTimeout(xt,pt)),en}return pt=ne(pt)||0,te(Dt)&&(st=!!Dt.leading,qt=(He="maxWait"in Dt)?G(ne(Dt.maxWait)||0,pt):qt,et="trailing"in Dt?!!Dt.trailing:et),ke.cancel=function(){void 0!==cn&&clearTimeout(cn),Vt=0,Lt=Wt=Ut=cn=void 0},ke.flush=function(){return void 0===cn?en:Qe(j())},ke},re=function(){};function be(Ne){Ne&&Ne.forEach(function(pt){var Dt=Array.prototype.slice.call(pt.addedNodes),Lt=Array.prototype.slice.call(pt.removedNodes);if(function Ut(qt){var en=void 0,cn=void 0;for(en=0;en=en.out&&!qt.once?Wt():Ut>=en.in?Lt.animated||(Vt=cn,(st=qt.animatedClassNames)&&st.forEach(function(He){return Vt.classList.add(He)}),Be("aos:in",cn),Lt.options.id&&Be("aos:in:"+Lt.options.id,cn),Lt.animated=!0):Lt.animated&&!qt.once&&Wt());var Lt,Ut,Vt,st,qt,en,cn,Wt})},ct=function(Ne){for(var pt=0,Dt=0;Ne&&!isNaN(Ne.offsetLeft)&&!isNaN(Ne.offsetTop);)pt+=Ne.offsetLeft-("BODY"!=Ne.tagName?Ne.scrollLeft:0),Dt+=Ne.offsetTop-("BODY"!=Ne.tagName?Ne.scrollTop:0),Ne=Ne.offsetParent;return{top:Dt,left:pt}},Ae=function(Ne,pt,Dt){var Lt=Ne.getAttribute("data-aos-"+pt);if(void 0!==Lt){if("true"===Lt)return!0;if("false"===Lt)return!1}return Lt||Dt},je=function(){var Ne=document.querySelectorAll("[data-aos]");return Array.prototype.map.call(Ne,function(pt){return{node:pt}})},ot=[],mt=!1,we={offset:120,delay:0,easing:"ease",duration:400,disable:!1,once:!1,mirror:!1,anchorPlacement:"top-bottom",startEvent:"DOMContentLoaded",animatedClassName:"aos-animate",initClassName:"aos-init",useClassNames:!1,disableMutationObserver:!1,throttleDelay:99,debounceDelay:50},de=function(){return document.all&&!window.atob},U=function(){var Ne,pt;arguments.length>0&&void 0!==arguments[0]&&arguments[0]&&(mt=!0),mt&&(pt=we,(Ne=ot).forEach(function(Dt,Lt){var Ut=Ae(Dt.node,"mirror",pt.mirror),qt=Ae(Dt.node,"once",pt.once),en=Ae(Dt.node,"id"),cn=pt.useClassNames&&Dt.node.getAttribute("data-aos"),Wt=[pt.animatedClassName].concat(cn?cn.split(" "):[]).filter(function(Vt){return"string"==typeof Vt});pt.initClassName&&Dt.node.classList.add(pt.initClassName),Dt.position={in:function(Vt,st,He){var et=window.innerHeight,It=Ae(Vt,"anchor"),Ot=Ae(Vt,"anchor-placement"),xt=Number(Ae(Vt,"offset",Ot?0:st)),Qe=Ot||He,ke=Vt;It&&document.querySelectorAll(It)&&(ke=document.querySelectorAll(It)[0]);var fe=ct(ke).top-et;switch(Qe){case"top-bottom":break;case"center-bottom":fe+=ke.offsetHeight/2;break;case"bottom-bottom":fe+=ke.offsetHeight;break;case"top-center":fe+=et/2;break;case"center-center":fe+=et/2+ke.offsetHeight/2;break;case"bottom-center":fe+=et/2+ke.offsetHeight;break;case"top-top":fe+=et;break;case"bottom-top":fe+=et+ke.offsetHeight;break;case"center-top":fe+=et+ke.offsetHeight/2}return fe+xt}(Dt.node,pt.offset,pt.anchorPlacement),out:Ut&&function(Vt,st){window;var He=Ae(Vt,"anchor"),et=Ae(Vt,"offset",st),It=Vt;return He&&document.querySelectorAll(He)&&(It=document.querySelectorAll(He)[0]),ct(It).top+It.offsetHeight-et}(Dt.node,pt.offset)},Dt.options={once:qt,mirror:Ut,animatedClassNames:Wt,id:en}}),Re(ot=Ne),window.addEventListener("scroll",T(function(){Re(ot)},we.throttleDelay)))},B=function(){if(ot=je(),Ie(we.disable)||de())return Ee();U()},Ee=function(){ot.forEach(function(Ne,pt){Ne.node.removeAttribute("data-aos"),Ne.node.removeAttribute("data-aos-easing"),Ne.node.removeAttribute("data-aos-duration"),Ne.node.removeAttribute("data-aos-delay"),we.initClassName&&Ne.node.classList.remove(we.initClassName),we.animatedClassName&&Ne.node.classList.remove(we.animatedClassName)})},Ie=function(Ne){return!0===Ne||"mobile"===Ne&&ee.mobile()||"phone"===Ne&&ee.phone()||"tablet"===Ne&&ee.tablet()||"function"==typeof Ne&&!0===Ne()};return{init:function(Ne){return we=ae(we,Ne),ot=je(),we.disableMutationObserver||ce_isSupported()||(console.info('\n aos: MutationObserver is not supported on this browser,\n code mutations observing has been disabled.\n You may have to call "refreshHard()" by yourself.\n '),we.disableMutationObserver=!0),we.disableMutationObserver||ce_ready("[data-aos]",B),Ie(we.disable)||de()?Ee():(document.querySelector("body").setAttribute("data-aos-easing",we.easing),document.querySelector("body").setAttribute("data-aos-duration",we.duration),document.querySelector("body").setAttribute("data-aos-delay",we.delay),-1===["DOMContentLoaded","load"].indexOf(we.startEvent)?document.addEventListener(we.startEvent,function(){U(!0)}):window.addEventListener("load",function(){U(!0)}),"DOMContentLoaded"===we.startEvent&&["complete","interactive"].indexOf(document.readyState)>-1&&U(!0),window.addEventListener("resize",pe(U,we.debounceDelay,!0)),window.addEventListener("orientationchange",pe(U,we.debounceDelay,!0)),ot)},refresh:U,refreshHard:B}}()},57979:(nt,I,o)=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0}),I.getParameters=void 0;var e=o(17167);I.getParameters=function t(i){return function n(i){return e.compressToBase64(i).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}(JSON.stringify(i))}},28539:(nt,I,o)=>{"use strict";I.Z=void 0;var n=o(57979);I.Z=n.getParameters},48292:(nt,I,o)=>{"use strict";function e(n,t){if(null==n)throw new TypeError("assign requires that input parameter not be null or undefined");for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(n[i]=t[i]);return n}o.d(I,{Z:()=>e})},46719:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>ae});var e={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};function i(xe){return function(){var Me=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},Ye=Me.width?String(Me.width):xe.defaultWidth;return xe.formats[Ye]||xe.formats[xe.defaultWidth]}}var u={date:i({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:i({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:i({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},M={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function g(xe){return function(Me,Ye){var ye;if("formatting"===(null!=Ye&&Ye.context?String(Ye.context):"standalone")&&xe.formattingValues){var ee=xe.defaultFormattingWidth||xe.defaultWidth,Be=null!=Ye&&Ye.width?String(Ye.width):ee;ye=xe.formattingValues[Be]||xe.formattingValues[ee]}else{var Re=xe.defaultWidth,ct=null!=Ye&&Ye.width?String(Ye.width):xe.defaultWidth;ye=xe.values[ct]||xe.values[Re]}return ye[xe.argumentCallback?xe.argumentCallback(Me):Me]}}function O(xe){return function(Me){var Ye=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},q=Ye.width,ee=Me.match(q&&xe.matchPatterns[q]||xe.matchPatterns[xe.defaultMatchWidth]);if(!ee)return null;var Ae,Be=ee[0],Re=q&&xe.parsePatterns[q]||xe.parsePatterns[xe.defaultParseWidth],ct=Array.isArray(Re)?function k(xe,Me){for(var Ye=0;Ye0?"in "+ye:ye+" ago":ye},formatLong:u,formatRelative:function(Me,Ye,q,ye){return M[Me]},localize:{ordinalNumber:function(Me,Ye){var q=Number(Me),ye=q%100;if(ye>20||ye<10)switch(ye%10){case 1:return q+"st";case 2:return q+"nd";case 3:return q+"rd"}return q+"th"},era:g({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:g({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:function(Me){return Me-1}}),month:g({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:g({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:g({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})},match:{ordinalNumber:function F(xe){return function(Me){var Ye=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},q=Me.match(xe.matchPattern);if(!q)return null;var ye=q[0],ee=Me.match(xe.parsePattern);if(!ee)return null;var Be=xe.valueCallback?xe.valueCallback(ee[0]):ee[0];return{value:Be=Ye.valueCallback?Ye.valueCallback(Be):Be,rest:Me.slice(ye.length)}}}({matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:function(Me){return parseInt(Me,10)}}),era:O({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:O({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:function(Me){return Me+1}}),month:O({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:O({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:O({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})},options:{weekStartsOn:0,firstWeekContainsDate:1}}},5227:(nt,I,o)=>{"use strict";o.d(I,{j:()=>n});var e={};function n(){return e}},3001:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>l});var e=function(E,u){switch(E){case"P":return u.date({width:"short"});case"PP":return u.date({width:"medium"});case"PPP":return u.date({width:"long"});default:return u.date({width:"full"})}},n=function(E,u){switch(E){case"p":return u.time({width:"short"});case"pp":return u.time({width:"medium"});case"ppp":return u.time({width:"long"});default:return u.time({width:"full"})}};const l={p:n,P:function(E,u){var v,z=E.match(/(P+)(p+)?/)||[],M=z[1],h=z[2];if(!h)return e(E,u);switch(M){case"P":v=u.dateTime({width:"short"});break;case"PP":v=u.dateTime({width:"medium"});break;case"PPP":v=u.dateTime({width:"long"});break;default:v=u.dateTime({width:"full"})}return v.replace("{{date}}",e(M,u)).replace("{{time}}",n(h,u))}}},45351:(nt,I,o)=>{"use strict";function e(n){var t=new Date(Date.UTC(n.getFullYear(),n.getMonth(),n.getDate(),n.getHours(),n.getMinutes(),n.getSeconds(),n.getMilliseconds()));return t.setUTCFullYear(n.getFullYear()),n.getTime()-t.getTime()}o.d(I,{Z:()=>e})},3606:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>E});var e=o(40581),n=o(29307),t=o(92603),i=o(62816),C=6048e5;function E(u){(0,i.Z)(1,arguments);var z=(0,e.Z)(u),M=(0,n.Z)(z).getTime()-function l(u){(0,i.Z)(1,arguments);var z=(0,t.Z)(u),M=new Date(0);return M.setUTCFullYear(z,0,4),M.setUTCHours(0,0,0,0),(0,n.Z)(M)}(z).getTime();return Math.round(M/C)+1}},92603:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>i});var e=o(40581),n=o(62816),t=o(29307);function i(l){(0,n.Z)(1,arguments);var C=(0,e.Z)(l),E=C.getUTCFullYear(),u=new Date(0);u.setUTCFullYear(E+1,0,4),u.setUTCHours(0,0,0,0);var z=(0,t.Z)(u),M=new Date(0);M.setUTCFullYear(E,0,4),M.setUTCHours(0,0,0,0);var h=(0,t.Z)(M);return C.getTime()>=z.getTime()?E+1:C.getTime()>=h.getTime()?E:E-1}},77356:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>z});var e=o(40581),n=o(5163),t=o(93281),i=o(62816),l=o(96156),C=o(5227),u=6048e5;function z(M,h){(0,i.Z)(1,arguments);var v=(0,e.Z)(M),g=(0,n.Z)(v,h).getTime()-function E(M,h){var v,g,d,p,f,y,T,x;(0,i.Z)(1,arguments);var D=(0,C.j)(),_=(0,l.Z)(null!==(v=null!==(g=null!==(d=null!==(p=h?.firstWeekContainsDate)&&void 0!==p?p:null==h||null===(f=h.locale)||void 0===f||null===(y=f.options)||void 0===y?void 0:y.firstWeekContainsDate)&&void 0!==d?d:D.firstWeekContainsDate)&&void 0!==g?g:null===(T=D.locale)||void 0===T||null===(x=T.options)||void 0===x?void 0:x.firstWeekContainsDate)&&void 0!==v?v:1),P=(0,t.Z)(M,h),O=new Date(0);return O.setUTCFullYear(P,0,_),O.setUTCHours(0,0,0,0),(0,n.Z)(O,h)}(v,h).getTime();return Math.round(g/u)+1}},93281:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>C});var e=o(40581),n=o(62816),t=o(5163),i=o(96156),l=o(5227);function C(E,u){var z,M,h,v,g,d,p,f;(0,n.Z)(1,arguments);var y=(0,e.Z)(E),T=y.getUTCFullYear(),x=(0,l.j)(),D=(0,i.Z)(null!==(z=null!==(M=null!==(h=null!==(v=u?.firstWeekContainsDate)&&void 0!==v?v:null==u||null===(g=u.locale)||void 0===g||null===(d=g.options)||void 0===d?void 0:d.firstWeekContainsDate)&&void 0!==h?h:x.firstWeekContainsDate)&&void 0!==M?M:null===(p=x.locale)||void 0===p||null===(f=p.options)||void 0===f?void 0:f.firstWeekContainsDate)&&void 0!==z?z:1);if(!(D>=1&&D<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var _=new Date(0);_.setUTCFullYear(T+1,0,D),_.setUTCHours(0,0,0,0);var P=(0,t.Z)(_,u),O=new Date(0);O.setUTCFullYear(T,0,D),O.setUTCHours(0,0,0,0);var A=(0,t.Z)(O,u);return y.getTime()>=P.getTime()?T+1:y.getTime()>=A.getTime()?T:T-1}},32566:(nt,I,o)=>{"use strict";o.d(I,{Do:()=>i,Iu:()=>t,qp:()=>l});var e=["D","DD"],n=["YY","YYYY"];function t(C){return-1!==e.indexOf(C)}function i(C){return-1!==n.indexOf(C)}function l(C,E,u){if("YYYY"===C)throw new RangeError("Use `yyyy` instead of `YYYY` (in `".concat(E,"`) for formatting years to the input `").concat(u,"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"));if("YY"===C)throw new RangeError("Use `yy` instead of `YY` (in `".concat(E,"`) for formatting years to the input `").concat(u,"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"));if("D"===C)throw new RangeError("Use `d` instead of `D` (in `".concat(E,"`) for formatting days of the month to the input `").concat(u,"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"));if("DD"===C)throw new RangeError("Use `dd` instead of `DD` (in `".concat(E,"`) for formatting days of the month to the input `").concat(u,"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"))}},62816:(nt,I,o)=>{"use strict";function e(n,t){if(t.length1?"s":"")+" required, but only "+t.length+" present")}o.d(I,{Z:()=>e})},588:(nt,I,o)=>{"use strict";o.d(I,{u:()=>t});var e={ceil:Math.ceil,round:Math.round,floor:Math.floor,trunc:function(l){return l<0?Math.ceil(l):Math.floor(l)}},n="trunc";function t(i){return i?e[i]:e[n]}},29307:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>t});var e=o(40581),n=o(62816);function t(i){(0,n.Z)(1,arguments);var C=(0,e.Z)(i),E=C.getUTCDay(),u=(E<1?7:0)+E-1;return C.setUTCDate(C.getUTCDate()-u),C.setUTCHours(0,0,0,0),C}},5163:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>l});var e=o(40581),n=o(62816),t=o(96156),i=o(5227);function l(C,E){var u,z,M,h,v,g,d,p;(0,n.Z)(1,arguments);var f=(0,i.j)(),y=(0,t.Z)(null!==(u=null!==(z=null!==(M=null!==(h=E?.weekStartsOn)&&void 0!==h?h:null==E||null===(v=E.locale)||void 0===v||null===(g=v.options)||void 0===g?void 0:g.weekStartsOn)&&void 0!==M?M:f.weekStartsOn)&&void 0!==z?z:null===(d=f.locale)||void 0===d||null===(p=d.options)||void 0===p?void 0:p.weekStartsOn)&&void 0!==u?u:0);if(!(y>=0&&y<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var T=(0,e.Z)(C),x=T.getUTCDay(),D=(x{"use strict";function e(n){if(null===n||!0===n||!1===n)return NaN;var t=Number(n);return isNaN(t)?t:t<0?Math.ceil(t):Math.floor(t)}o.d(I,{Z:()=>e})},68584:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>i});var e=o(96156),n=o(40581),t=o(62816);function i(l,C){(0,t.Z)(2,arguments);var E=(0,n.Z)(l),u=(0,e.Z)(C);return isNaN(u)?new Date(NaN):(u&&E.setDate(E.getDate()+u),E)}},640:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>i});var e=o(96156),n=o(40581),t=o(62816);function i(l,C){(0,t.Z)(2,arguments);var E=(0,n.Z)(l).getTime(),u=(0,e.Z)(C);return new Date(E+u)}},21083:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>i});var e=o(96156),n=o(40581),t=o(62816);function i(l,C){(0,t.Z)(2,arguments);var E=(0,n.Z)(l),u=(0,e.Z)(C);if(isNaN(u))return new Date(NaN);if(!u)return E;var z=E.getDate(),M=new Date(E.getTime());return M.setMonth(E.getMonth()+u+1,0),z>=M.getDate()?M:(E.setFullYear(M.getFullYear(),M.getMonth(),z),E)}},27163:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>i});var e=o(96156),n=o(640),t=o(62816);function i(l,C){(0,t.Z)(2,arguments);var E=(0,e.Z)(C);return(0,n.Z)(l,1e3*E)}},22040:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>i});var e=o(96156),n=o(21083),t=o(62816);function i(l,C){(0,t.Z)(2,arguments);var E=(0,e.Z)(C);return(0,n.Z)(l,12*E)}},33865:(nt,I,o)=>{"use strict";o.d(I,{qk:()=>C,vh:()=>l,yJ:()=>i}),Math.pow(10,8);var i=6e4,l=36e5,C=1e3},61855:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>l});var e=o(45351),n=o(79189),t=o(62816),i=864e5;function l(C,E){(0,t.Z)(2,arguments);var u=(0,n.Z)(C),z=(0,n.Z)(E),M=u.getTime()-(0,e.Z)(u),h=z.getTime()-(0,e.Z)(z);return Math.round((M-h)/i)}},80275:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>t});var e=o(40581),n=o(62816);function t(i,l){(0,n.Z)(2,arguments);var C=(0,e.Z)(i),E=(0,e.Z)(l);return 12*(C.getFullYear()-E.getFullYear())+(C.getMonth()-E.getMonth())}},96086:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>t});var e=o(40581),n=o(62816);function t(i,l){return(0,n.Z)(2,arguments),(0,e.Z)(i).getTime()-(0,e.Z)(l).getTime()}},13061:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>i});var e=o(96086),n=o(62816),t=o(588);function i(l,C,E){(0,n.Z)(2,arguments);var u=(0,e.Z)(l,C)/1e3;return(0,t.u)(E?.roundingMethod)(u)}},85134:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>t});var e=o(40581),n=o(62816);function t(i){(0,n.Z)(1,arguments);var l=(0,e.Z)(i);return l.setHours(23,59,59,999),l}},92682:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>t});var e=o(40581),n=o(62816);function t(i){(0,n.Z)(1,arguments);var l=(0,e.Z)(i),C=l.getMonth();return l.setFullYear(l.getFullYear(),C+1,0),l.setHours(23,59,59,999),l}},89207:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>G});var e=o(34338),n=o(73492),t=o(40581),i=o(62816),E=o(3606),u=o(92603),z=o(77356),M=o(93281);function h(j,te){for(var ne=j<0?"-":"",pe=Math.abs(j).toString();pe.length0?pe:1-pe;return h("yy"===ne?re%100:re,ne.length)},g_M=function(te,ne){var pe=te.getUTCMonth();return"M"===ne?String(pe+1):h(pe+1,2)},g_d=function(te,ne){return h(te.getUTCDate(),ne.length)},g_h=function(te,ne){return h(te.getUTCHours()%12||12,ne.length)},g_H=function(te,ne){return h(te.getUTCHours(),ne.length)},g_m=function(te,ne){return h(te.getUTCMinutes(),ne.length)},g_s=function(te,ne){return h(te.getUTCSeconds(),ne.length)},g_S=function(te,ne){var pe=ne.length,re=te.getUTCMilliseconds();return h(Math.floor(re*Math.pow(10,pe-3)),ne.length)};function f(j,te){var ne=j>0?"-":"+",pe=Math.abs(j),re=Math.floor(pe/60),be=pe%60;if(0===be)return ne+String(re);var le=te||"";return ne+String(re)+le+h(be,2)}function y(j,te){return j%60==0?(j>0?"-":"+")+h(Math.abs(j)/60,2):T(j,te)}function T(j,te){var ne=te||"",pe=j>0?"-":"+",re=Math.abs(j);return pe+h(Math.floor(re/60),2)+ne+h(re%60,2)}const x={G:function(te,ne,pe){var re=te.getUTCFullYear()>0?1:0;switch(ne){case"G":case"GG":case"GGG":return pe.era(re,{width:"abbreviated"});case"GGGGG":return pe.era(re,{width:"narrow"});default:return pe.era(re,{width:"wide"})}},y:function(te,ne,pe){if("yo"===ne){var re=te.getUTCFullYear();return pe.ordinalNumber(re>0?re:1-re,{unit:"year"})}return g_y(te,ne)},Y:function(te,ne,pe,re){var be=(0,M.Z)(te,re),le=be>0?be:1-be;return"YY"===ne?h(le%100,2):"Yo"===ne?pe.ordinalNumber(le,{unit:"year"}):h(le,ne.length)},R:function(te,ne){return h((0,u.Z)(te),ne.length)},u:function(te,ne){return h(te.getUTCFullYear(),ne.length)},Q:function(te,ne,pe){var re=Math.ceil((te.getUTCMonth()+1)/3);switch(ne){case"Q":return String(re);case"QQ":return h(re,2);case"Qo":return pe.ordinalNumber(re,{unit:"quarter"});case"QQQ":return pe.quarter(re,{width:"abbreviated",context:"formatting"});case"QQQQQ":return pe.quarter(re,{width:"narrow",context:"formatting"});default:return pe.quarter(re,{width:"wide",context:"formatting"})}},q:function(te,ne,pe){var re=Math.ceil((te.getUTCMonth()+1)/3);switch(ne){case"q":return String(re);case"qq":return h(re,2);case"qo":return pe.ordinalNumber(re,{unit:"quarter"});case"qqq":return pe.quarter(re,{width:"abbreviated",context:"standalone"});case"qqqqq":return pe.quarter(re,{width:"narrow",context:"standalone"});default:return pe.quarter(re,{width:"wide",context:"standalone"})}},M:function(te,ne,pe){var re=te.getUTCMonth();switch(ne){case"M":case"MM":return g_M(te,ne);case"Mo":return pe.ordinalNumber(re+1,{unit:"month"});case"MMM":return pe.month(re,{width:"abbreviated",context:"formatting"});case"MMMMM":return pe.month(re,{width:"narrow",context:"formatting"});default:return pe.month(re,{width:"wide",context:"formatting"})}},L:function(te,ne,pe){var re=te.getUTCMonth();switch(ne){case"L":return String(re+1);case"LL":return h(re+1,2);case"Lo":return pe.ordinalNumber(re+1,{unit:"month"});case"LLL":return pe.month(re,{width:"abbreviated",context:"standalone"});case"LLLLL":return pe.month(re,{width:"narrow",context:"standalone"});default:return pe.month(re,{width:"wide",context:"standalone"})}},w:function(te,ne,pe,re){var be=(0,z.Z)(te,re);return"wo"===ne?pe.ordinalNumber(be,{unit:"week"}):h(be,ne.length)},I:function(te,ne,pe){var re=(0,E.Z)(te);return"Io"===ne?pe.ordinalNumber(re,{unit:"week"}):h(re,ne.length)},d:function(te,ne,pe){return"do"===ne?pe.ordinalNumber(te.getUTCDate(),{unit:"date"}):g_d(te,ne)},D:function(te,ne,pe){var re=function C(j){(0,i.Z)(1,arguments);var te=(0,t.Z)(j),ne=te.getTime();te.setUTCMonth(0,1),te.setUTCHours(0,0,0,0);var pe=te.getTime();return Math.floor((ne-pe)/864e5)+1}(te);return"Do"===ne?pe.ordinalNumber(re,{unit:"dayOfYear"}):h(re,ne.length)},E:function(te,ne,pe){var re=te.getUTCDay();switch(ne){case"E":case"EE":case"EEE":return pe.day(re,{width:"abbreviated",context:"formatting"});case"EEEEE":return pe.day(re,{width:"narrow",context:"formatting"});case"EEEEEE":return pe.day(re,{width:"short",context:"formatting"});default:return pe.day(re,{width:"wide",context:"formatting"})}},e:function(te,ne,pe,re){var be=te.getUTCDay(),le=(be-re.weekStartsOn+8)%7||7;switch(ne){case"e":return String(le);case"ee":return h(le,2);case"eo":return pe.ordinalNumber(le,{unit:"day"});case"eee":return pe.day(be,{width:"abbreviated",context:"formatting"});case"eeeee":return pe.day(be,{width:"narrow",context:"formatting"});case"eeeeee":return pe.day(be,{width:"short",context:"formatting"});default:return pe.day(be,{width:"wide",context:"formatting"})}},c:function(te,ne,pe,re){var be=te.getUTCDay(),le=(be-re.weekStartsOn+8)%7||7;switch(ne){case"c":return String(le);case"cc":return h(le,ne.length);case"co":return pe.ordinalNumber(le,{unit:"day"});case"ccc":return pe.day(be,{width:"abbreviated",context:"standalone"});case"ccccc":return pe.day(be,{width:"narrow",context:"standalone"});case"cccccc":return pe.day(be,{width:"short",context:"standalone"});default:return pe.day(be,{width:"wide",context:"standalone"})}},i:function(te,ne,pe){var re=te.getUTCDay(),be=0===re?7:re;switch(ne){case"i":return String(be);case"ii":return h(be,ne.length);case"io":return pe.ordinalNumber(be,{unit:"day"});case"iii":return pe.day(re,{width:"abbreviated",context:"formatting"});case"iiiii":return pe.day(re,{width:"narrow",context:"formatting"});case"iiiiii":return pe.day(re,{width:"short",context:"formatting"});default:return pe.day(re,{width:"wide",context:"formatting"})}},a:function(te,ne,pe){var be=te.getUTCHours()/12>=1?"pm":"am";switch(ne){case"a":case"aa":return pe.dayPeriod(be,{width:"abbreviated",context:"formatting"});case"aaa":return pe.dayPeriod(be,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return pe.dayPeriod(be,{width:"narrow",context:"formatting"});default:return pe.dayPeriod(be,{width:"wide",context:"formatting"})}},b:function(te,ne,pe){var be,re=te.getUTCHours();switch(be=12===re?"noon":0===re?"midnight":re/12>=1?"pm":"am",ne){case"b":case"bb":return pe.dayPeriod(be,{width:"abbreviated",context:"formatting"});case"bbb":return pe.dayPeriod(be,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return pe.dayPeriod(be,{width:"narrow",context:"formatting"});default:return pe.dayPeriod(be,{width:"wide",context:"formatting"})}},B:function(te,ne,pe){var be,re=te.getUTCHours();switch(be=re>=17?"evening":re>=12?"afternoon":re>=4?"morning":"night",ne){case"B":case"BB":case"BBB":return pe.dayPeriod(be,{width:"abbreviated",context:"formatting"});case"BBBBB":return pe.dayPeriod(be,{width:"narrow",context:"formatting"});default:return pe.dayPeriod(be,{width:"wide",context:"formatting"})}},h:function(te,ne,pe){if("ho"===ne){var re=te.getUTCHours()%12;return 0===re&&(re=12),pe.ordinalNumber(re,{unit:"hour"})}return g_h(te,ne)},H:function(te,ne,pe){return"Ho"===ne?pe.ordinalNumber(te.getUTCHours(),{unit:"hour"}):g_H(te,ne)},K:function(te,ne,pe){var re=te.getUTCHours()%12;return"Ko"===ne?pe.ordinalNumber(re,{unit:"hour"}):h(re,ne.length)},k:function(te,ne,pe){var re=te.getUTCHours();return 0===re&&(re=24),"ko"===ne?pe.ordinalNumber(re,{unit:"hour"}):h(re,ne.length)},m:function(te,ne,pe){return"mo"===ne?pe.ordinalNumber(te.getUTCMinutes(),{unit:"minute"}):g_m(te,ne)},s:function(te,ne,pe){return"so"===ne?pe.ordinalNumber(te.getUTCSeconds(),{unit:"second"}):g_s(te,ne)},S:function(te,ne){return g_S(te,ne)},X:function(te,ne,pe,re){var le=(re._originalDate||te).getTimezoneOffset();if(0===le)return"Z";switch(ne){case"X":return y(le);case"XXXX":case"XX":return T(le);default:return T(le,":")}},x:function(te,ne,pe,re){var le=(re._originalDate||te).getTimezoneOffset();switch(ne){case"x":return y(le);case"xxxx":case"xx":return T(le);default:return T(le,":")}},O:function(te,ne,pe,re){var le=(re._originalDate||te).getTimezoneOffset();switch(ne){case"O":case"OO":case"OOO":return"GMT"+f(le,":");default:return"GMT"+T(le,":")}},z:function(te,ne,pe,re){var le=(re._originalDate||te).getTimezoneOffset();switch(ne){case"z":case"zz":case"zzz":return"GMT"+f(le,":");default:return"GMT"+T(le,":")}},t:function(te,ne,pe,re){return h(Math.floor((re._originalDate||te).getTime()/1e3),ne.length)},T:function(te,ne,pe,re){return h((re._originalDate||te).getTime(),ne.length)}};var D=o(3001),_=o(45351),P=o(32566),O=o(96156),A=o(5227),k=o(46719),F=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,W=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,K=/^'([^]*?)'?$/,_e=/''/g,Y=/[a-zA-Z]/;function G(j,te,ne){var pe,re,be,le,ce,Q,ie,ae,xe,Me,Ye,q,ye,ee,Be,Re,ct,Ae;(0,i.Z)(2,arguments);var Mt=String(te),je=(0,A.j)(),ot=null!==(pe=null!==(re=ne?.locale)&&void 0!==re?re:je.locale)&&void 0!==pe?pe:k.Z,mt=(0,O.Z)(null!==(be=null!==(le=null!==(ce=null!==(Q=ne?.firstWeekContainsDate)&&void 0!==Q?Q:null==ne||null===(ie=ne.locale)||void 0===ie||null===(ae=ie.options)||void 0===ae?void 0:ae.firstWeekContainsDate)&&void 0!==ce?ce:je.firstWeekContainsDate)&&void 0!==le?le:null===(xe=je.locale)||void 0===xe||null===(Me=xe.options)||void 0===Me?void 0:Me.firstWeekContainsDate)&&void 0!==be?be:1);if(!(mt>=1&&mt<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var we=(0,O.Z)(null!==(Ye=null!==(q=null!==(ye=null!==(ee=ne?.weekStartsOn)&&void 0!==ee?ee:null==ne||null===(Be=ne.locale)||void 0===Be||null===(Re=Be.options)||void 0===Re?void 0:Re.weekStartsOn)&&void 0!==ye?ye:je.weekStartsOn)&&void 0!==q?q:null===(ct=je.locale)||void 0===ct||null===(Ae=ct.options)||void 0===Ae?void 0:Ae.weekStartsOn)&&void 0!==Ye?Ye:0);if(!(we>=0&&we<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");if(!ot.localize)throw new RangeError("locale must contain localize property");if(!ot.formatLong)throw new RangeError("locale must contain formatLong property");var de=(0,t.Z)(j);if(!(0,e.Z)(de))throw new RangeError("Invalid time value");var U=(0,_.Z)(de),B=(0,n.Z)(de,U),Ee={firstWeekContainsDate:mt,weekStartsOn:we,locale:ot,_originalDate:de},Ie=Mt.match(W).map(function(Ne){var pt=Ne[0];return"p"===pt||"P"===pt?(0,D.Z[pt])(Ne,ot.formatLong):Ne}).join("").match(F).map(function(Ne){if("''"===Ne)return"'";var pt=Ne[0];if("'"===pt)return function H(j){var te=j.match(K);return te?te[1].replace(_e,"'"):j}(Ne);var Dt=x[pt];if(Dt)return!(null!=ne&&ne.useAdditionalWeekYearTokens)&&(0,P.Do)(Ne)&&(0,P.qp)(Ne,te,String(j)),!(null!=ne&&ne.useAdditionalDayOfYearTokens)&&(0,P.Iu)(Ne)&&(0,P.qp)(Ne,te,String(j)),Dt(B,Ne,ot.localize,Ee);if(pt.match(Y))throw new RangeError("Format string contains an unescaped latin alphabet character `"+pt+"`");return Ne}).join("");return Ie}},53770:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>T});var e=o(5227),n=o(40581),t=o(62816);function i(x,D){(0,t.Z)(2,arguments);var _=(0,n.Z)(x),P=(0,n.Z)(D),O=_.getTime()-P.getTime();return O<0?-1:O>0?1:O}var l=o(80275),C=o(80787),u=o(13061),z=o(46719),M=o(48292),v=o(45351),g=1440,d=2520,p=43200,f=86400;function T(x,D){return(0,t.Z)(1,arguments),function y(x,D,_){var P,O;(0,t.Z)(2,arguments);var A=(0,e.j)(),k=null!==(P=null!==(O=_?.locale)&&void 0!==O?O:A.locale)&&void 0!==P?P:z.Z;if(!k.formatDistance)throw new RangeError("locale must contain formatDistance property");var F=i(x,D);if(isNaN(F))throw new RangeError("Invalid time value");var K,_e,W=(0,M.Z)(function h(x){return(0,M.Z)({},x)}(_),{addSuffix:!!_?.addSuffix,comparison:F});F>0?(K=(0,n.Z)(D),_e=(0,n.Z)(x)):(K=(0,n.Z)(x),_e=(0,n.Z)(D));var j,Y=(0,u.Z)(_e,K),G=((0,v.Z)(_e)-(0,v.Z)(K))/1e3,H=Math.round((Y-G)/60);if(H<2)return null!=_&&_.includeSeconds?Y<5?k.formatDistance("lessThanXSeconds",5,W):Y<10?k.formatDistance("lessThanXSeconds",10,W):Y<20?k.formatDistance("lessThanXSeconds",20,W):Y<40?k.formatDistance("halfAMinute",0,W):k.formatDistance(Y<60?"lessThanXMinutes":"xMinutes",1,W):0===H?k.formatDistance("lessThanXMinutes",1,W):k.formatDistance("xMinutes",H,W);if(H<45)return k.formatDistance("xMinutes",H,W);if(H<90)return k.formatDistance("aboutXHours",1,W);if(H27&&_.setDate(30),_.setMonth(_.getMonth()-O*A);var F=i(_,P)===-O;(0,C.Z)((0,n.Z)(x))&&1===A&&1===i(x,P)&&(F=!1),k=O*(A-Number(F))}return 0===k?0:k}(_e,K),j<12){var pe=Math.round(H/p);return k.formatDistance("xMonths",pe,W)}var re=j%12,be=Math.floor(j/12);return re<3?k.formatDistance("aboutXYears",be,W):re<9?k.formatDistance("overXYears",be,W):k.formatDistance("almostXYears",be+1,W)}(x,Date.now(),D)}},80787:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>l});var e=o(40581),n=o(85134),t=o(92682),i=o(62816);function l(C){(0,i.Z)(1,arguments);var E=(0,e.Z)(C);return(0,n.Z)(E).getTime()===(0,t.Z)(E).getTime()}},34338:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>l});var e=o(71002),n=o(62816),i=o(40581);function l(C){if((0,n.Z)(1,arguments),!function t(C){return(0,n.Z)(1,arguments),C instanceof Date||"object"===(0,e.Z)(C)&&"[object Date]"===Object.prototype.toString.call(C)}(C)&&"number"!=typeof C)return!1;var E=(0,i.Z)(C);return!isNaN(Number(E))}},80356:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>ve});var e=o(71002);function n(b,N){(null==N||N>b.length)&&(N=b.length);for(var S=0,$=new Array(N);S=b.length?{done:!0}:{done:!1,value:b[$++]}},e:function(sn){throw sn},f:R}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var bt,he=!0,ze=!1;return{s:function(){S=S.call(b)},n:function(){var sn=S.next();return he=sn.done,sn},e:function(sn){ze=!0,bt=sn},f:function(){try{!he&&null!=S.return&&S.return()}finally{if(ze)throw bt}}}}var l=o(46719),C=o(73492),E=o(40581),u=o(48292),z=o(3001),M=o(45351),h=o(32566),v=o(96156),g=o(62816);function d(b){if(void 0===b)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return b}function p(b,N){return(p=Object.setPrototypeOf?Object.setPrototypeOf.bind():function($,R){return $.__proto__=R,$})(b,N)}function f(b,N){if("function"!=typeof N&&null!==N)throw new TypeError("Super expression must either be null or a function");b.prototype=Object.create(N&&N.prototype,{constructor:{value:b,writable:!0,configurable:!0}}),Object.defineProperty(b,"prototype",{writable:!1}),N&&p(b,N)}function y(b){return(y=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(S){return S.__proto__||Object.getPrototypeOf(S)})(b)}function D(b){var N=function T(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}();return function(){var R,$=y(b);if(N){var he=y(this).constructor;R=Reflect.construct($,arguments,he)}else R=$.apply(this,arguments);return function x(b,N){if(N&&("object"===(0,e.Z)(N)||"function"==typeof N))return N;if(void 0!==N)throw new TypeError("Derived constructors may only return object or undefined");return d(b)}(this,R)}}function _(b,N){if(!(b instanceof N))throw new TypeError("Cannot call a class as a function")}function O(b){var N=function P(b,N){if("object"!==(0,e.Z)(b)||null===b)return b;var S=b[Symbol.toPrimitive];if(void 0!==S){var $=S.call(b,N||"default");if("object"!==(0,e.Z)($))return $;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===N?String:Number)(b)}(b,"string");return"symbol"===(0,e.Z)(N)?N:String(N)}function A(b,N){for(var S=0;S0,$=S?N:1-N;if($<=50)R=b||100;else{var he=$+50;R=b+100*Math.floor(he/100)-(b>=he%100?100:0)}return S?R:1-R}function xe(b){return b%400==0||b%4==0&&b%100!=0}var Me=function(b){f(S,b);var N=D(S);function S(){var $;_(this,S);for(var R=arguments.length,he=new Array(R),ze=0;ze0}},{key:"set",value:function(R,he,ze){var bt=R.getUTCFullYear();if(ze.isTwoDigitYear){var Ft=ae(ze.year,bt);return R.setUTCFullYear(Ft,0,1),R.setUTCHours(0,0,0,0),R}return R.setUTCFullYear("era"in he&&1!==he.era?1-ze.year:ze.year,0,1),R.setUTCHours(0,0,0,0),R}}]),S}(G),Ye=o(93281),q=o(5163),ye=function(b){f(S,b);var N=D(S);function S(){var $;_(this,S);for(var R=arguments.length,he=new Array(R),ze=0;ze0}},{key:"set",value:function(R,he,ze,bt){var Ft=(0,Ye.Z)(R,bt);if(ze.isTwoDigitYear){var sn=ae(ze.year,Ft);return R.setUTCFullYear(sn,0,bt.firstWeekContainsDate),R.setUTCHours(0,0,0,0),(0,q.Z)(R,bt)}return R.setUTCFullYear("era"in he&&1!==he.era?1-ze.year:ze.year,0,bt.firstWeekContainsDate),R.setUTCHours(0,0,0,0),(0,q.Z)(R,bt)}}]),S}(G),ee=o(29307),Be=function(b){f(S,b);var N=D(S);function S(){var $;_(this,S);for(var R=arguments.length,he=new Array(R),ze=0;ze=1&&he<=4}},{key:"set",value:function(R,he,ze){return R.setUTCMonth(3*(ze-1),1),R.setUTCHours(0,0,0,0),R}}]),S}(G),Ae=function(b){f(S,b);var N=D(S);function S(){var $;_(this,S);for(var R=arguments.length,he=new Array(R),ze=0;ze=1&&he<=4}},{key:"set",value:function(R,he,ze){return R.setUTCMonth(3*(ze-1),1),R.setUTCHours(0,0,0,0),R}}]),S}(G),Mt=function(b){f(S,b);var N=D(S);function S(){var $;_(this,S);for(var R=arguments.length,he=new Array(R),ze=0;ze=0&&he<=11}},{key:"set",value:function(R,he,ze){return R.setUTCMonth(ze,1),R.setUTCHours(0,0,0,0),R}}]),S}(G),je=function(b){f(S,b);var N=D(S);function S(){var $;_(this,S);for(var R=arguments.length,he=new Array(R),ze=0;ze=0&&he<=11}},{key:"set",value:function(R,he,ze){return R.setUTCMonth(ze,1),R.setUTCHours(0,0,0,0),R}}]),S}(G),ot=o(77356),we=function(b){f(S,b);var N=D(S);function S(){var $;_(this,S);for(var R=arguments.length,he=new Array(R),ze=0;ze=1&&he<=53}},{key:"set",value:function(R,he,ze,bt){return(0,q.Z)(function mt(b,N,S){(0,g.Z)(2,arguments);var $=(0,E.Z)(b),R=(0,v.Z)(N),he=(0,ot.Z)($,S)-R;return $.setUTCDate($.getUTCDate()-7*he),$}(R,ze,bt),bt)}}]),S}(G),de=o(3606),B=function(b){f(S,b);var N=D(S);function S(){var $;_(this,S);for(var R=arguments.length,he=new Array(R),ze=0;ze=1&&he<=53}},{key:"set",value:function(R,he,ze){return(0,ee.Z)(function U(b,N){(0,g.Z)(2,arguments);var S=(0,E.Z)(b),$=(0,v.Z)(N),R=(0,de.Z)(S)-$;return S.setUTCDate(S.getUTCDate()-7*R),S}(R,ze))}}]),S}(G),Ee=[31,28,31,30,31,30,31,31,30,31,30,31],Ie=[31,29,31,30,31,30,31,31,30,31,30,31],Ne=function(b){f(S,b);var N=D(S);function S(){var $;_(this,S);for(var R=arguments.length,he=new Array(R),ze=0;ze=1&&he<=Ie[Ft]:he>=1&&he<=Ee[Ft]}},{key:"set",value:function(R,he,ze){return R.setUTCDate(ze),R.setUTCHours(0,0,0,0),R}}]),S}(G),pt=function(b){f(S,b);var N=D(S);function S(){var $;_(this,S);for(var R=arguments.length,he=new Array(R),ze=0;ze=1&&he<=366:he>=1&&he<=365}},{key:"set",value:function(R,he,ze){return R.setUTCMonth(0,ze),R.setUTCHours(0,0,0,0),R}}]),S}(G),Dt=o(5227);function Lt(b,N,S){var $,R,he,ze,bt,Ft,sn,pn;(0,g.Z)(2,arguments);var vn=(0,Dt.j)(),Dn=(0,v.Z)(null!==($=null!==(R=null!==(he=null!==(ze=S?.weekStartsOn)&&void 0!==ze?ze:null==S||null===(bt=S.locale)||void 0===bt||null===(Ft=bt.options)||void 0===Ft?void 0:Ft.weekStartsOn)&&void 0!==he?he:vn.weekStartsOn)&&void 0!==R?R:null===(sn=vn.locale)||void 0===sn||null===(pn=sn.options)||void 0===pn?void 0:pn.weekStartsOn)&&void 0!==$?$:0);if(!(Dn>=0&&Dn<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var Mn=(0,E.Z)(b),En=(0,v.Z)(N),si=((En%7+7)%7=0&&he<=6}},{key:"set",value:function(R,he,ze,bt){return(R=Lt(R,ze,bt)).setUTCHours(0,0,0,0),R}}]),S}(G),qt=function(b){f(S,b);var N=D(S);function S(){var $;_(this,S);for(var R=arguments.length,he=new Array(R),ze=0;ze=0&&he<=6}},{key:"set",value:function(R,he,ze,bt){return(R=Lt(R,ze,bt)).setUTCHours(0,0,0,0),R}}]),S}(G),en=function(b){f(S,b);var N=D(S);function S(){var $;_(this,S);for(var R=arguments.length,he=new Array(R),ze=0;ze=0&&he<=6}},{key:"set",value:function(R,he,ze,bt){return(R=Lt(R,ze,bt)).setUTCHours(0,0,0,0),R}}]),S}(G),Wt=function(b){f(S,b);var N=D(S);function S(){var $;_(this,S);for(var R=arguments.length,he=new Array(R),ze=0;ze=1&&he<=7}},{key:"set",value:function(R,he,ze){return R=function cn(b,N){(0,g.Z)(2,arguments);var S=(0,v.Z)(N);S%7==0&&(S-=7);var R=(0,E.Z)(b),Ft=((S%7+7)%7<1?7:0)+S-R.getUTCDay();return R.setUTCDate(R.getUTCDate()+Ft),R}(R,ze),R.setUTCHours(0,0,0,0),R}}]),S}(G),Vt=function(b){f(S,b);var N=D(S);function S(){var $;_(this,S);for(var R=arguments.length,he=new Array(R),ze=0;ze=1&&he<=12}},{key:"set",value:function(R,he,ze){var bt=R.getUTCHours()>=12;return R.setUTCHours(bt&&ze<12?ze+12:bt||12!==ze?ze:0,0,0,0),R}}]),S}(G),It=function(b){f(S,b);var N=D(S);function S(){var $;_(this,S);for(var R=arguments.length,he=new Array(R),ze=0;ze=0&&he<=23}},{key:"set",value:function(R,he,ze){return R.setUTCHours(ze,0,0,0),R}}]),S}(G),Ot=function(b){f(S,b);var N=D(S);function S(){var $;_(this,S);for(var R=arguments.length,he=new Array(R),ze=0;ze=0&&he<=11}},{key:"set",value:function(R,he,ze){var bt=R.getUTCHours()>=12;return R.setUTCHours(bt&&ze<12?ze+12:ze,0,0,0),R}}]),S}(G),xt=function(b){f(S,b);var N=D(S);function S(){var $;_(this,S);for(var R=arguments.length,he=new Array(R),ze=0;ze=1&&he<=24}},{key:"set",value:function(R,he,ze){return R.setUTCHours(ze<=24?ze%24:ze,0,0,0),R}}]),S}(G),Qe=function(b){f(S,b);var N=D(S);function S(){var $;_(this,S);for(var R=arguments.length,he=new Array(R),ze=0;ze=0&&he<=59}},{key:"set",value:function(R,he,ze){return R.setUTCMinutes(ze,0,0),R}}]),S}(G),ke=function(b){f(S,b);var N=D(S);function S(){var $;_(this,S);for(var R=arguments.length,he=new Array(R),ze=0;ze=0&&he<=59}},{key:"set",value:function(R,he,ze){return R.setUTCSeconds(ze,0),R}}]),S}(G),fe=function(b){f(S,b);var N=D(S);function S(){var $;_(this,S);for(var R=arguments.length,he=new Array(R),ze=0;ze=1&&Oi<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var ei=(0,v.Z)(null!==(En=null!==(bn=null!==(Rn=null!==(qn=$?.weekStartsOn)&&void 0!==qn?qn:null==$||null===(si=$.locale)||void 0===si||null===(Wn=si.options)||void 0===Wn?void 0:Wn.weekStartsOn)&&void 0!==Rn?Rn:fi.weekStartsOn)&&void 0!==bn?bn:null===(ci=fi.locale)||void 0===ci||null===(ri=ci.options)||void 0===ri?void 0:ri.weekStartsOn)&&void 0!==En?En:0);if(!(ei>=0&&ei<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");if(""===hi)return""===di?(0,E.Z)(S):new Date(NaN);var $i,po={firstWeekContainsDate:Oi,weekStartsOn:ei,locale:zi},oo=[new Y],Wi=hi.match(De).map(function(oi){var Bn=oi[0];return Bn in z.Z?(0,z.Z[Bn])(oi,zi.formatLong):oi}).join("").match(wt),Ri=[],Li=i(Wi);try{var Qi=function(){var Bn=$i.value;!(null!=$&&$.useAdditionalWeekYearTokens)&&(0,h.Do)(Bn)&&(0,h.qp)(Bn,hi,b),(null==$||!$.useAdditionalDayOfYearTokens)&&(0,h.Iu)(Bn)&&(0,h.qp)(Bn,hi,b);var Et=Bn[0],un=Ue[Et];if(un){var lt=un.incompatibleTokens;if(Array.isArray(lt)){var Ct=Ri.find(function(Qt){return lt.includes(Qt.token)||Qt.token===Et});if(Ct)throw new RangeError("The format string mustn't contain `".concat(Ct.fullToken,"` and `").concat(Bn,"` at the same time"))}else if("*"===un.incompatibleTokens&&Ri.length>0)throw new RangeError("The format string mustn't contain `".concat(Bn,"` and any other token at the same time"));Ri.push({token:Et,fullToken:Bn});var At=un.run(di,Bn,zi.match,po);if(!At)return{v:new Date(NaN)};oo.push(At.setter),di=At.rest}else{if(Et.match(Ke))throw new RangeError("Format string contains an unescaped latin alphabet character `"+Et+"`");if("''"===Bn?Bn="'":"'"===Et&&(Bn=function it(b){return b.match(Pe)[1].replace(Je,"'")}(Bn)),0!==di.indexOf(Bn))return{v:new Date(NaN)};di=di.slice(Bn.length)}};for(Li.s();!($i=Li.n()).done;){var Mo=Qi();if("object"===(0,e.Z)(Mo))return Mo.v}}catch(oi){Li.e(oi)}finally{Li.f()}if(di.length>0&&Ge.test(di))return new Date(NaN);var wi=oo.map(function(oi){return oi.priority}).sort(function(oi,Bn){return Bn-oi}).filter(function(oi,Bn,Et){return Et.indexOf(oi)===Bn}).map(function(oi){return oo.filter(function(Bn){return Bn.priority===oi}).sort(function(Bn,Et){return Et.subPriority-Bn.subPriority})}).map(function(oi){return oi[0]}),Xi=(0,E.Z)(S);if(isNaN(Xi.getTime()))return new Date(NaN);var Pi,Ei=(0,C.Z)(Xi,(0,M.Z)(Xi)),Hi={},qi=i(wi);try{for(qi.s();!(Pi=qi.n()).done;){var Ii=Pi.value;if(!Ii.validate(Ei,po))return new Date(NaN);var ki=Ii.set(Ei,Hi,po);Array.isArray(ki)?(Ei=ki[0],(0,u.Z)(Hi,ki[1])):Ei=ki}}catch(oi){qi.e(oi)}finally{qi.f()}return Ei}},79189:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>t});var e=o(40581),n=o(62816);function t(i){(0,n.Z)(1,arguments);var l=(0,e.Z)(i);return l.setHours(0,0,0,0),l}},47680:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>t});var e=o(40581),n=o(62816);function t(i){(0,n.Z)(1,arguments);var l=(0,e.Z)(i);return l.setDate(1),l.setHours(0,0,0,0),l}},97753:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>l});var e=o(40581),n=o(96156),t=o(62816),i=o(5227);function l(C,E){var u,z,M,h,v,g,d,p;(0,t.Z)(1,arguments);var f=(0,i.j)(),y=(0,n.Z)(null!==(u=null!==(z=null!==(M=null!==(h=E?.weekStartsOn)&&void 0!==h?h:null==E||null===(v=E.locale)||void 0===v||null===(g=v.options)||void 0===g?void 0:g.weekStartsOn)&&void 0!==M?M:f.weekStartsOn)&&void 0!==z?z:null===(d=f.locale)||void 0===d||null===(p=d.options)||void 0===p?void 0:p.weekStartsOn)&&void 0!==u?u:0);if(!(y>=0&&y<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var T=(0,e.Z)(C),x=T.getDay(),D=(x{"use strict";o.d(I,{Z:()=>i});var e=o(640),n=o(62816),t=o(96156);function i(l,C){(0,n.Z)(2,arguments);var E=(0,t.Z)(C);return(0,e.Z)(l,-E)}},76962:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>l});var e=o(96156),n=o(68584),t=o(62816);function l(C,E){return(0,t.Z)(2,arguments),function i(C,E){(0,t.Z)(2,arguments);var u=(0,e.Z)(E);return(0,n.Z)(C,7*u)}(C,-(0,e.Z)(E))}},40581:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>t});var e=o(71002),n=o(62816);function t(i){(0,n.Z)(1,arguments);var l=Object.prototype.toString.call(i);return i instanceof Date||"object"===(0,e.Z)(i)&&"[object Date]"===l?new Date(i.getTime()):"number"==typeof i||"[object Number]"===l?new Date(i):(("string"==typeof i||"[object String]"===l)&&typeof console<"u"&&(console.warn("Starting with v2.0.0-beta.1 date-fns doesn't accept strings as date arguments. Please use `parseISO` to parse strings. See: https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#string-arguments"),console.warn((new Error).stack)),new Date(NaN))}},15377:nt=>{"use strict";var I=Object.prototype.hasOwnProperty,o=Object.prototype.toString,e=Object.defineProperty,n=Object.getOwnPropertyDescriptor,t=function(u){return"function"==typeof Array.isArray?Array.isArray(u):"[object Array]"===o.call(u)},i=function(u){if(!u||"[object Object]"!==o.call(u))return!1;var h,z=I.call(u,"constructor"),M=u.constructor&&u.constructor.prototype&&I.call(u.constructor.prototype,"isPrototypeOf");if(u.constructor&&!z&&!M)return!1;for(h in u);return typeof h>"u"||I.call(u,h)},l=function(u,z){e&&"__proto__"===z.name?e(u,z.name,{enumerable:!0,configurable:!0,value:z.newValue,writable:!0}):u[z.name]=z.newValue},C=function(u,z){if("__proto__"===z){if(!I.call(u,z))return;if(n)return n(u,z).value}return u[z]};nt.exports=function E(){var u,z,M,h,v,g,d=arguments[0],p=1,f=arguments.length,y=!1;for("boolean"==typeof d&&(y=d,d=arguments[1]||{},p=2),(null==d||"object"!=typeof d&&"function"!=typeof d)&&(d={});p{"use strict";nt.exports=function I(o,e){if(o===e)return!0;if(o&&e&&"object"==typeof o&&"object"==typeof e){if(o.constructor!==e.constructor)return!1;var n,t,i;if(Array.isArray(o)){if((n=o.length)!=e.length)return!1;for(t=n;0!=t--;)if(!I(o[t],e[t]))return!1;return!0}if(o.constructor===RegExp)return o.source===e.source&&o.flags===e.flags;if(o.valueOf!==Object.prototype.valueOf)return o.valueOf()===e.valueOf();if(o.toString!==Object.prototype.toString)return o.toString()===e.toString();if((n=(i=Object.keys(o)).length)!==Object.keys(e).length)return!1;for(t=n;0!=t--;)if(!Object.prototype.hasOwnProperty.call(e,i[t]))return!1;for(t=n;0!=t--;){var l=i[t];if(!I(o[l],e[l]))return!1}return!0}return o!=o&&e!=e}},10217:function(nt,I){var o,n;void 0!==(n="function"==typeof(o=function(){"use strict";function i(M,h,v){var g=new XMLHttpRequest;g.open("GET",M),g.responseType="blob",g.onload=function(){z(g.response,h,v)},g.onerror=function(){console.error("could not download file")},g.send()}function l(M){var h=new XMLHttpRequest;h.open("HEAD",M,!1);try{h.send()}catch{}return 200<=h.status&&299>=h.status}function C(M){try{M.dispatchEvent(new MouseEvent("click"))}catch{var h=document.createEvent("MouseEvents");h.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),M.dispatchEvent(h)}}var E="object"==typeof window&&window.window===window?window:"object"==typeof self&&self.self===self?self:"object"==typeof global&&global.global===global?global:void 0,u=E.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),z=E.saveAs||("object"!=typeof window||window!==E?function(){}:"download"in HTMLAnchorElement.prototype&&!u?function(M,h,v){var g=E.URL||E.webkitURL,d=document.createElement("a");d.download=h=h||M.name||"download",d.rel="noopener","string"==typeof M?(d.href=M,d.origin===location.origin?C(d):l(d.href)?i(M,h,v):C(d,d.target="_blank")):(d.href=g.createObjectURL(M),setTimeout(function(){g.revokeObjectURL(d.href)},4e4),setTimeout(function(){C(d)},0))}:"msSaveOrOpenBlob"in navigator?function(M,h,v){if(h=h||M.name||"download","string"!=typeof M)navigator.msSaveOrOpenBlob(function t(M,h){return typeof h>"u"?h={autoBom:!1}:"object"!=typeof h&&(console.warn("Deprecated: Expected third argument to be a object"),h={autoBom:!h}),h.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(M.type)?new Blob(["\ufeff",M],{type:M.type}):M}(M,v),h);else if(l(M))i(M,h,v);else{var g=document.createElement("a");g.href=M,g.target="_blank",setTimeout(function(){C(g)})}}:function(M,h,v,g){if((g=g||open("","_blank"))&&(g.document.title=g.document.body.innerText="downloading..."),"string"==typeof M)return i(M,h,v);var d="application/octet-stream"===M.type,p=/constructor/i.test(E.HTMLElement)||E.safari,f=/CriOS\/[\d]+/.test(navigator.userAgent);if((f||d&&p||u)&&typeof FileReader<"u"){var y=new FileReader;y.onloadend=function(){var D=y.result;D=f?D:D.replace(/^data:[^;]*;/,"data:attachment/file;"),g?g.location.href=D:location=D,g=null},y.readAsDataURL(M)}else{var T=E.URL||E.webkitURL,x=T.createObjectURL(M);g?g.location=x:location.href=x,g=null,setTimeout(function(){T.revokeObjectURL(x)},4e4)}});E.saveAs=z.saveAs=z,nt.exports=z})?o.apply(I,[]):o)&&(nt.exports=n)},37037:nt=>{"use strict";var I=nt.exports=function(n,t,i){"function"==typeof t&&(i=t,t={}),o(t,"function"==typeof(i=t.cb||i)?i:i.pre||function(){},i.post||function(){},n,"",n)};function o(n,t,i,l,C,E,u,z,M,h){if(l&&"object"==typeof l&&!Array.isArray(l)){for(var v in t(l,C,E,u,z,M,h),l){var g=l[v];if(Array.isArray(g)){if(v in I.arrayKeywords)for(var d=0;d{var e,n=function(){var t=String.fromCharCode,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",l="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",C={};function E(z,M){if(!C[z]){C[z]={};for(var h=0;h>>8,h[2*v+1]=d%256}return h},decompressFromUint8Array:function(z){if(null==z)return u.decompress(z);for(var M=new Array(z.length/2),h=0,v=M.length;h>=1}else{for(g=1,v=0;v<_;v++)O=O<<1|g,A==M-1?(A=0,P.push(h(O)),O=0):A++,g=0;for(g=T.charCodeAt(0),v=0;v<16;v++)O=O<<1|1&g,A==M-1?(A=0,P.push(h(O)),O=0):A++,g>>=1}0==--x&&(x=Math.pow(2,_),_++),delete p[T]}else for(g=d[T],v=0;v<_;v++)O=O<<1|1&g,A==M-1?(A=0,P.push(h(O)),O=0):A++,g>>=1;0==--x&&(x=Math.pow(2,_),_++),d[y]=D++,T=String(f)}if(""!==T){if(Object.prototype.hasOwnProperty.call(p,T)){if(T.charCodeAt(0)<256){for(v=0;v<_;v++)O<<=1,A==M-1?(A=0,P.push(h(O)),O=0):A++;for(g=T.charCodeAt(0),v=0;v<8;v++)O=O<<1|1&g,A==M-1?(A=0,P.push(h(O)),O=0):A++,g>>=1}else{for(g=1,v=0;v<_;v++)O=O<<1|g,A==M-1?(A=0,P.push(h(O)),O=0):A++,g=0;for(g=T.charCodeAt(0),v=0;v<16;v++)O=O<<1|1&g,A==M-1?(A=0,P.push(h(O)),O=0):A++,g>>=1}0==--x&&(x=Math.pow(2,_),_++),delete p[T]}else for(g=d[T],v=0;v<_;v++)O=O<<1|1&g,A==M-1?(A=0,P.push(h(O)),O=0):A++,g>>=1;0==--x&&(x=Math.pow(2,_),_++)}for(g=2,v=0;v<_;v++)O=O<<1|1&g,A==M-1?(A=0,P.push(h(O)),O=0):A++,g>>=1;for(;;){if(O<<=1,A==M-1){P.push(h(O));break}A++}return P.join("")},decompress:function(z){return null==z?"":""==z?null:u._decompress(z.length,32768,function(M){return z.charCodeAt(M)})},_decompress:function(z,M,h){var x,D,_,P,O,A,k,v=[],d=4,p=4,f=3,y="",T=[],F={val:h(0),position:M,index:1};for(x=0;x<3;x+=1)v[x]=x;for(_=0,O=Math.pow(2,2),A=1;A!=O;)P=F.val&F.position,F.position>>=1,0==F.position&&(F.position=M,F.val=h(F.index++)),_|=(P>0?1:0)*A,A<<=1;switch(_){case 0:for(_=0,O=Math.pow(2,8),A=1;A!=O;)P=F.val&F.position,F.position>>=1,0==F.position&&(F.position=M,F.val=h(F.index++)),_|=(P>0?1:0)*A,A<<=1;k=t(_);break;case 1:for(_=0,O=Math.pow(2,16),A=1;A!=O;)P=F.val&F.position,F.position>>=1,0==F.position&&(F.position=M,F.val=h(F.index++)),_|=(P>0?1:0)*A,A<<=1;k=t(_);break;case 2:return""}for(v[3]=k,D=k,T.push(k);;){if(F.index>z)return"";for(_=0,O=Math.pow(2,f),A=1;A!=O;)P=F.val&F.position,F.position>>=1,0==F.position&&(F.position=M,F.val=h(F.index++)),_|=(P>0?1:0)*A,A<<=1;switch(k=_){case 0:for(_=0,O=Math.pow(2,8),A=1;A!=O;)P=F.val&F.position,F.position>>=1,0==F.position&&(F.position=M,F.val=h(F.index++)),_|=(P>0?1:0)*A,A<<=1;v[p++]=t(_),k=p-1,d--;break;case 1:for(_=0,O=Math.pow(2,16),A=1;A!=O;)P=F.val&F.position,F.position>>=1,0==F.position&&(F.position=M,F.val=h(F.index++)),_|=(P>0?1:0)*A,A<<=1;v[p++]=t(_),k=p-1,d--;break;case 2:return T.join("")}if(0==d&&(d=Math.pow(2,f),f++),v[k])y=v[k];else{if(k!==p)return null;y=D+D.charAt(0)}T.push(y),v[p++]=D+y.charAt(0),D=y,0==--d&&(d=Math.pow(2,f),f++)}}};return u}();void 0!==(e=function(){return n}.call(I,o,I,nt))&&(nt.exports=e)},65619:(nt,I,o)=>{"use strict";o.d(I,{X:()=>n});var e=o(78645);class n extends e.x{constructor(i){super(),this._value=i}get value(){return this.getValue()}_subscribe(i){const l=super._subscribe(i);return!l.closed&&i.next(this._value),l}getValue(){const{hasError:i,thrownError:l,_value:C}=this;if(i)throw l;return this._throwIfClosed(),C}next(i){super.next(this._value=i)}}},65592:(nt,I,o)=>{"use strict";o.d(I,{y:()=>u});var e=o(80305),n=o(47394),t=o(14850),i=o(88407),l=o(82653),C=o(84674),E=o(81441);let u=(()=>{class v{constructor(d){d&&(this._subscribe=d)}lift(d){const p=new v;return p.source=this,p.operator=d,p}subscribe(d,p,f){const y=function h(v){return v&&v instanceof e.Lv||function M(v){return v&&(0,C.m)(v.next)&&(0,C.m)(v.error)&&(0,C.m)(v.complete)}(v)&&(0,n.Nn)(v)}(d)?d:new e.Hp(d,p,f);return(0,E.x)(()=>{const{operator:T,source:x}=this;y.add(T?T.call(y,x):x?this._subscribe(y):this._trySubscribe(y))}),y}_trySubscribe(d){try{return this._subscribe(d)}catch(p){d.error(p)}}forEach(d,p){return new(p=z(p))((f,y)=>{const T=new e.Hp({next:x=>{try{d(x)}catch(D){y(D),T.unsubscribe()}},error:y,complete:f});this.subscribe(T)})}_subscribe(d){var p;return null===(p=this.source)||void 0===p?void 0:p.subscribe(d)}[t.L](){return this}pipe(...d){return(0,i.U)(d)(this)}toPromise(d){return new(d=z(d))((p,f)=>{let y;this.subscribe(T=>y=T,T=>f(T),()=>p(y))})}}return v.create=g=>new v(g),v})();function z(v){var g;return null!==(g=v??l.config.Promise)&&void 0!==g?g:Promise}},97328:(nt,I,o)=>{"use strict";o.d(I,{t:()=>t});var e=o(78645),n=o(84552);class t extends e.x{constructor(l=1/0,C=1/0,E=n.l){super(),this._bufferSize=l,this._windowTime=C,this._timestampProvider=E,this._buffer=[],this._infiniteTimeWindow=!0,this._infiniteTimeWindow=C===1/0,this._bufferSize=Math.max(1,l),this._windowTime=Math.max(1,C)}next(l){const{isStopped:C,_buffer:E,_infiniteTimeWindow:u,_timestampProvider:z,_windowTime:M}=this;C||(E.push(l),!u&&E.push(z.now()+M)),this._trimBuffer(),super.next(l)}_subscribe(l){this._throwIfClosed(),this._trimBuffer();const C=this._innerSubscribe(l),{_infiniteTimeWindow:E,_buffer:u}=this,z=u.slice();for(let M=0;M{"use strict";o.d(I,{x:()=>E});var e=o(65592),n=o(47394);const i=(0,o(82306).d)(z=>function(){z(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"});var l=o(49039),C=o(81441);let E=(()=>{class z extends e.y{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(h){const v=new u(this,this);return v.operator=h,v}_throwIfClosed(){if(this.closed)throw new i}next(h){(0,C.x)(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(const v of this.currentObservers)v.next(h)}})}error(h){(0,C.x)(()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=h;const{observers:v}=this;for(;v.length;)v.shift().error(h)}})}complete(){(0,C.x)(()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;const{observers:h}=this;for(;h.length;)h.shift().complete()}})}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var h;return(null===(h=this.observers)||void 0===h?void 0:h.length)>0}_trySubscribe(h){return this._throwIfClosed(),super._trySubscribe(h)}_subscribe(h){return this._throwIfClosed(),this._checkFinalizedStatuses(h),this._innerSubscribe(h)}_innerSubscribe(h){const{hasError:v,isStopped:g,observers:d}=this;return v||g?n.Lc:(this.currentObservers=null,d.push(h),new n.w0(()=>{this.currentObservers=null,(0,l.P)(d,h)}))}_checkFinalizedStatuses(h){const{hasError:v,thrownError:g,isStopped:d}=this;v?h.error(g):d&&h.complete()}asObservable(){const h=new e.y;return h.source=this,h}}return z.create=(M,h)=>new u(M,h),z})();class u extends E{constructor(M,h){super(),this.destination=M,this.source=h}next(M){var h,v;null===(v=null===(h=this.destination)||void 0===h?void 0:h.next)||void 0===v||v.call(h,M)}error(M){var h,v;null===(v=null===(h=this.destination)||void 0===h?void 0:h.error)||void 0===v||v.call(h,M)}complete(){var M,h;null===(h=null===(M=this.destination)||void 0===M?void 0:M.complete)||void 0===h||h.call(M)}_subscribe(M){var h,v;return null!==(v=null===(h=this.source)||void 0===h?void 0:h.subscribe(M))&&void 0!==v?v:n.Lc}}},80305:(nt,I,o)=>{"use strict";o.d(I,{Hp:()=>f,Lv:()=>v});var e=o(84674),n=o(47394),t=o(82653),i=o(93894),l=o(72420);const C=z("C",void 0,void 0);function z(_,P,O){return{kind:_,value:P,error:O}}var M=o(87599),h=o(81441);class v extends n.w0{constructor(P){super(),this.isStopped=!1,P?(this.destination=P,(0,n.Nn)(P)&&P.add(this)):this.destination=D}static create(P,O,A){return new f(P,O,A)}next(P){this.isStopped?x(function u(_){return z("N",_,void 0)}(P),this):this._next(P)}error(P){this.isStopped?x(function E(_){return z("E",void 0,_)}(P),this):(this.isStopped=!0,this._error(P))}complete(){this.isStopped?x(C,this):(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe(),this.destination=null)}_next(P){this.destination.next(P)}_error(P){try{this.destination.error(P)}finally{this.unsubscribe()}}_complete(){try{this.destination.complete()}finally{this.unsubscribe()}}}const g=Function.prototype.bind;function d(_,P){return g.call(_,P)}class p{constructor(P){this.partialObserver=P}next(P){const{partialObserver:O}=this;if(O.next)try{O.next(P)}catch(A){y(A)}}error(P){const{partialObserver:O}=this;if(O.error)try{O.error(P)}catch(A){y(A)}else y(P)}complete(){const{partialObserver:P}=this;if(P.complete)try{P.complete()}catch(O){y(O)}}}class f extends v{constructor(P,O,A){let k;if(super(),(0,e.m)(P)||!P)k={next:P??void 0,error:O??void 0,complete:A??void 0};else{let F;this&&t.config.useDeprecatedNextContext?(F=Object.create(P),F.unsubscribe=()=>this.unsubscribe(),k={next:P.next&&d(P.next,F),error:P.error&&d(P.error,F),complete:P.complete&&d(P.complete,F)}):k=P}this.destination=new p(k)}}function y(_){t.config.useDeprecatedSynchronousErrorHandling?(0,h.O)(_):(0,i.h)(_)}function x(_,P){const{onStoppedNotification:O}=t.config;O&&M.z.setTimeout(()=>O(_,P))}const D={closed:!0,next:l.Z,error:function T(_){throw _},complete:l.Z}},47394:(nt,I,o)=>{"use strict";o.d(I,{Lc:()=>C,w0:()=>l,Nn:()=>E});var e=o(84674);const t=(0,o(82306).d)(z=>function(h){z(this),this.message=h?`${h.length} errors occurred during unsubscription:\n${h.map((v,g)=>`${g+1}) ${v.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=h});var i=o(49039);class l{constructor(M){this.initialTeardown=M,this.closed=!1,this._parentage=null,this._finalizers=null}unsubscribe(){let M;if(!this.closed){this.closed=!0;const{_parentage:h}=this;if(h)if(this._parentage=null,Array.isArray(h))for(const d of h)d.remove(this);else h.remove(this);const{initialTeardown:v}=this;if((0,e.m)(v))try{v()}catch(d){M=d instanceof t?d.errors:[d]}const{_finalizers:g}=this;if(g){this._finalizers=null;for(const d of g)try{u(d)}catch(p){M=M??[],p instanceof t?M=[...M,...p.errors]:M.push(p)}}if(M)throw new t(M)}}add(M){var h;if(M&&M!==this)if(this.closed)u(M);else{if(M instanceof l){if(M.closed||M._hasParent(this))return;M._addParent(this)}(this._finalizers=null!==(h=this._finalizers)&&void 0!==h?h:[]).push(M)}}_hasParent(M){const{_parentage:h}=this;return h===M||Array.isArray(h)&&h.includes(M)}_addParent(M){const{_parentage:h}=this;this._parentage=Array.isArray(h)?(h.push(M),h):h?[h,M]:M}_removeParent(M){const{_parentage:h}=this;h===M?this._parentage=null:Array.isArray(h)&&(0,i.P)(h,M)}remove(M){const{_finalizers:h}=this;h&&(0,i.P)(h,M),M instanceof l&&M._removeParent(this)}}l.EMPTY=(()=>{const z=new l;return z.closed=!0,z})();const C=l.EMPTY;function E(z){return z instanceof l||z&&"closed"in z&&(0,e.m)(z.remove)&&(0,e.m)(z.add)&&(0,e.m)(z.unsubscribe)}function u(z){(0,e.m)(z)?z():z.unsubscribe()}},82653:(nt,I,o)=>{"use strict";o.d(I,{config:()=>e});const e={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1}},93168:(nt,I,o)=>{"use strict";o.d(I,{c:()=>C});var e=o(65592),n=o(47394),t=o(66196),i=o(8251),l=o(79360);class C extends e.y{constructor(u,z){super(),this.source=u,this.subjectFactory=z,this._subject=null,this._refCount=0,this._connection=null,(0,l.A)(u)&&(this.lift=u.lift)}_subscribe(u){return this.getSubject().subscribe(u)}getSubject(){const u=this._subject;return(!u||u.isStopped)&&(this._subject=this.subjectFactory()),this._subject}_teardown(){this._refCount=0;const{_connection:u}=this;this._subject=this._connection=null,u?.unsubscribe()}connect(){let u=this._connection;if(!u){u=this._connection=new n.w0;const z=this.getSubject();u.add(this.source.subscribe((0,i.x)(z,void 0,()=>{this._teardown(),z.complete()},M=>{this._teardown(),z.error(M)},()=>this._teardown()))),u.closed&&(this._connection=null,u=n.w0.EMPTY)}return u}refCount(){return(0,t.x)()(this)}}},52572:(nt,I,o)=>{"use strict";o.d(I,{a:()=>M});var e=o(65592),n=o(17453),t=o(7715),i=o(42737),l=o(97400),C=o(79940),E=o(92714),u=o(8251),z=o(27103);function M(...g){const d=(0,C.yG)(g),p=(0,C.jO)(g),{args:f,keys:y}=(0,n.D)(g);if(0===f.length)return(0,t.D)([],d);const T=new e.y(function h(g,d,p=i.y){return f=>{v(d,()=>{const{length:y}=g,T=new Array(y);let x=y,D=y;for(let _=0;_{const P=(0,t.D)(g[_],d);let O=!1;P.subscribe((0,u.x)(f,A=>{T[_]=A,O||(O=!0,D--),D||f.next(p(T.slice()))},()=>{--x||f.complete()}))},f)},f)}}(f,d,y?x=>(0,E.n)(y,x):i.y));return p?T.pipe((0,l.Z)(p)):T}function v(g,d,p){g?(0,z.f)(p,g,d):d()}},35211:(nt,I,o)=>{"use strict";o.d(I,{z:()=>l});var e=o(57537),t=o(79940),i=o(7715);function l(...C){return function n(){return(0,e.J)(1)}()((0,i.D)(C,(0,t.yG)(C)))}},74911:(nt,I,o)=>{"use strict";o.d(I,{P:()=>t});var e=o(65592),n=o(54829);function t(i){return new e.y(l=>{(0,n.Xf)(i()).subscribe(l)})}},36232:(nt,I,o)=>{"use strict";o.d(I,{E:()=>n});const n=new(o(65592).y)(l=>l.complete())},7715:(nt,I,o)=>{"use strict";o.d(I,{D:()=>A});var e=o(54829),n=o(27103),t=o(79360),i=o(8251);function l(k,F=0){return(0,t.e)((W,K)=>{W.subscribe((0,i.x)(K,_e=>(0,n.f)(K,k,()=>K.next(_e),F),()=>(0,n.f)(K,k,()=>K.complete(),F),_e=>(0,n.f)(K,k,()=>K.error(_e),F)))})}function C(k,F=0){return(0,t.e)((W,K)=>{K.add(k.schedule(()=>W.subscribe(K),F))})}var z=o(65592),h=o(64971),v=o(84674);function d(k,F){if(!k)throw new Error("Iterable cannot be null");return new z.y(W=>{(0,n.f)(W,F,()=>{const K=k[Symbol.asyncIterator]();(0,n.f)(W,F,()=>{K.next().then(_e=>{_e.done?W.complete():W.next(_e.value)})},0,!0)})})}var p=o(38382),f=o(54026),y=o(64266),T=o(83664),x=o(15726),D=o(69853),_=o(50541);function A(k,F){return F?function O(k,F){if(null!=k){if((0,p.c)(k))return function E(k,F){return(0,e.Xf)(k).pipe(C(F),l(F))}(k,F);if((0,y.z)(k))return function M(k,F){return new z.y(W=>{let K=0;return F.schedule(function(){K===k.length?W.complete():(W.next(k[K++]),W.closed||this.schedule())})})}(k,F);if((0,f.t)(k))return function u(k,F){return(0,e.Xf)(k).pipe(C(F),l(F))}(k,F);if((0,x.D)(k))return d(k,F);if((0,T.T)(k))return function g(k,F){return new z.y(W=>{let K;return(0,n.f)(W,F,()=>{K=k[h.h](),(0,n.f)(W,F,()=>{let _e,Y;try{({value:_e,done:Y}=K.next())}catch(G){return void W.error(G)}Y?W.complete():W.next(_e)},0,!0)}),()=>(0,v.m)(K?.return)&&K.return()})}(k,F);if((0,_.L)(k))return function P(k,F){return d((0,_.Q)(k),F)}(k,F)}throw(0,D.z)(k)}(k,F):(0,e.Xf)(k)}},92438:(nt,I,o)=>{"use strict";o.d(I,{R:()=>M});var e=o(54829),n=o(65592),t=o(21631),i=o(64266),l=o(84674),C=o(97400);const E=["addListener","removeListener"],u=["addEventListener","removeEventListener"],z=["on","off"];function M(p,f,y,T){if((0,l.m)(y)&&(T=y,y=void 0),T)return M(p,f,y).pipe((0,C.Z)(T));const[x,D]=function d(p){return(0,l.m)(p.addEventListener)&&(0,l.m)(p.removeEventListener)}(p)?u.map(_=>P=>p[_](f,P,y)):function v(p){return(0,l.m)(p.addListener)&&(0,l.m)(p.removeListener)}(p)?E.map(h(p,f)):function g(p){return(0,l.m)(p.on)&&(0,l.m)(p.off)}(p)?z.map(h(p,f)):[];if(!x&&(0,i.z)(p))return(0,t.z)(_=>M(_,f,y))((0,e.Xf)(p));if(!x)throw new TypeError("Invalid event target");return new n.y(_=>{const P=(...O)=>_.next(1D(P)})}function h(p,f){return y=>T=>p[y](f,T)}},54829:(nt,I,o)=>{"use strict";o.d(I,{Xf:()=>g});var e=o(97582),n=o(64266),t=o(54026),i=o(65592),l=o(38382),C=o(15726),E=o(69853),u=o(83664),z=o(50541),M=o(84674),h=o(93894),v=o(14850);function g(_){if(_ instanceof i.y)return _;if(null!=_){if((0,l.c)(_))return function d(_){return new i.y(P=>{const O=_[v.L]();if((0,M.m)(O.subscribe))return O.subscribe(P);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}(_);if((0,n.z)(_))return function p(_){return new i.y(P=>{for(let O=0;O<_.length&&!P.closed;O++)P.next(_[O]);P.complete()})}(_);if((0,t.t)(_))return function f(_){return new i.y(P=>{_.then(O=>{P.closed||(P.next(O),P.complete())},O=>P.error(O)).then(null,h.h)})}(_);if((0,C.D)(_))return T(_);if((0,u.T)(_))return function y(_){return new i.y(P=>{for(const O of _)if(P.next(O),P.closed)return;P.complete()})}(_);if((0,z.L)(_))return function x(_){return T((0,z.Q)(_))}(_)}throw(0,E.z)(_)}function T(_){return new i.y(P=>{(function D(_,P){var O,A,k,F;return(0,e.mG)(this,void 0,void 0,function*(){try{for(O=(0,e.KL)(_);!(A=yield O.next()).done;)if(P.next(A.value),P.closed)return}catch(W){k={error:W}}finally{try{A&&!A.done&&(F=O.return)&&(yield F.call(O))}finally{if(k)throw k.error}}P.complete()})})(_,P).catch(O=>P.error(O))})}},91687:(nt,I,o)=>{"use strict";o.d(I,{F:()=>t});var e=o(16321),n=o(74825);function t(i=0,l=e.z){return i<0&&(i=0),(0,n.H)(i,i,l)}},63019:(nt,I,o)=>{"use strict";o.d(I,{T:()=>C});var e=o(57537),n=o(54829),t=o(36232),i=o(79940),l=o(7715);function C(...E){const u=(0,i.yG)(E),z=(0,i._6)(E,1/0),M=E;return M.length?1===M.length?(0,n.Xf)(M[0]):(0,e.J)(z)((0,l.D)(M,u)):t.E}},22096:(nt,I,o)=>{"use strict";o.d(I,{of:()=>t});var e=o(79940),n=o(7715);function t(...i){const l=(0,e.yG)(i);return(0,n.D)(i,l)}},58504:(nt,I,o)=>{"use strict";o.d(I,{_:()=>t});var e=o(65592),n=o(84674);function t(i,l){const C=(0,n.m)(i)?i:()=>i,E=u=>u.error(C());return new e.y(l?u=>l.schedule(E,0,u):E)}},74825:(nt,I,o)=>{"use strict";o.d(I,{H:()=>l});var e=o(65592),n=o(16321),t=o(50671);function l(C=0,E,u=n.P){let z=-1;return null!=E&&((0,t.K)(E)?u=E:z=E),new e.y(M=>{let h=function i(C){return C instanceof Date&&!isNaN(C)}(C)?+C-u.now():C;h<0&&(h=0);let v=0;return u.schedule(function(){M.closed||(M.next(v++),0<=z?this.schedule(void 0,z):M.complete())},h)})}},8251:(nt,I,o)=>{"use strict";o.d(I,{x:()=>n});var e=o(80305);function n(i,l,C,E,u){return new t(i,l,C,E,u)}class t extends e.Lv{constructor(l,C,E,u,z,M){super(l),this.onFinalize=z,this.shouldUnsubscribe=M,this._next=C?function(h){try{C(h)}catch(v){l.error(v)}}:super._next,this._error=u?function(h){try{u(h)}catch(v){l.error(v)}finally{this.unsubscribe()}}:super._error,this._complete=E?function(){try{E()}catch(h){l.error(h)}finally{this.unsubscribe()}}:super._complete}unsubscribe(){var l;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){const{closed:C}=this;super.unsubscribe(),!C&&(null===(l=this.onFinalize)||void 0===l||l.call(this))}}}},29028:(nt,I,o)=>{"use strict";o.d(I,{e:()=>E});var e=o(16321),n=o(79360),t=o(54829),i=o(8251),C=o(74825);function E(u,z=e.z){return function l(u){return(0,n.e)((z,M)=>{let h=!1,v=null,g=null,d=!1;const p=()=>{if(g?.unsubscribe(),g=null,h){h=!1;const y=v;v=null,M.next(y)}d&&M.complete()},f=()=>{g=null,d&&M.complete()};z.subscribe((0,i.x)(M,y=>{h=!0,v=y,g||(0,t.Xf)(u(y)).subscribe(g=(0,i.x)(M,p,f))},()=>{d=!0,(!h||!g||g.closed)&&M.complete()}))})}(()=>(0,C.H)(u,z))}},26306:(nt,I,o)=>{"use strict";o.d(I,{K:()=>i});var e=o(54829),n=o(8251),t=o(79360);function i(l){return(0,t.e)((C,E)=>{let M,u=null,z=!1;u=C.subscribe((0,n.x)(E,void 0,void 0,h=>{M=(0,e.Xf)(l(h,i(l)(C))),u?(u.unsubscribe(),u=null,M.subscribe(E)):z=!0})),z&&(u.unsubscribe(),u=null,M.subscribe(E))})}},76328:(nt,I,o)=>{"use strict";o.d(I,{b:()=>t});var e=o(21631),n=o(84674);function t(i,l){return(0,n.m)(l)?(0,e.z)(i,l,1):(0,e.z)(i,1)}},76111:(nt,I,o)=>{"use strict";o.d(I,{D:()=>l});var e=o(79360),n=o(72420),t=o(8251),i=o(54829);function l(C){return(0,e.e)((E,u)=>{let z=!1,M=null,h=null;const v=()=>{if(h?.unsubscribe(),h=null,z){z=!1;const g=M;M=null,u.next(g)}};E.subscribe((0,t.x)(u,g=>{h?.unsubscribe(),z=!0,M=g,h=(0,t.x)(u,v,n.Z),(0,i.Xf)(C(g)).subscribe(h)},()=>{v(),u.complete()},void 0,()=>{M=h=null}))})}},83620:(nt,I,o)=>{"use strict";o.d(I,{b:()=>i});var e=o(16321),n=o(79360),t=o(8251);function i(l,C=e.z){return(0,n.e)((E,u)=>{let z=null,M=null,h=null;const v=()=>{if(z){z.unsubscribe(),z=null;const d=M;M=null,u.next(d)}};function g(){const d=h+l,p=C.now();if(p{M=d,h=C.now(),z||(z=C.schedule(g,l),u.add(z))},()=>{v(),u.complete()},void 0,()=>{M=z=null}))})}},43572:(nt,I,o)=>{"use strict";o.d(I,{d:()=>t});var e=o(79360),n=o(8251);function t(i){return(0,e.e)((l,C)=>{let E=!1;l.subscribe((0,n.x)(C,u=>{E=!0,C.next(u)},()=>{E||C.next(i),C.complete()}))})}},5177:(nt,I,o)=>{"use strict";o.d(I,{g:()=>g});var e=o(16321),n=o(35211),t=o(48180),i=o(79360),l=o(8251),C=o(72420),u=o(21441),z=o(21631),M=o(54829);function h(d,p){return p?f=>(0,n.z)(p.pipe((0,t.q)(1),function E(){return(0,i.e)((d,p)=>{d.subscribe((0,l.x)(p,C.Z))})}()),f.pipe(h(d))):(0,z.z)((f,y)=>(0,M.Xf)(d(f,y)).pipe((0,t.q)(1),(0,u.h)(f)))}var v=o(74825);function g(d,p=e.z){const f=(0,v.H)(d,p);return h(()=>f)}},93997:(nt,I,o)=>{"use strict";o.d(I,{x:()=>i});var e=o(42737),n=o(79360),t=o(8251);function i(C,E=e.y){return C=C??l,(0,n.e)((u,z)=>{let M,h=!0;u.subscribe((0,t.x)(z,v=>{const g=E(v);(h||!C(M,g))&&(h=!1,M=g,z.next(v))}))})}function l(C,E){return C===E}},32181:(nt,I,o)=>{"use strict";o.d(I,{h:()=>t});var e=o(79360),n=o(8251);function t(i,l){return(0,e.e)((C,E)=>{let u=0;C.subscribe((0,n.x)(E,z=>i.call(l,z,u++)&&E.next(z)))})}},64716:(nt,I,o)=>{"use strict";o.d(I,{x:()=>n});var e=o(79360);function n(t){return(0,e.e)((i,l)=>{try{i.subscribe(l)}finally{l.add(t)}})}},81374:(nt,I,o)=>{"use strict";o.d(I,{P:()=>E});var e=o(46973),n=o(32181),t=o(48180),i=o(43572),l=o(3026),C=o(42737);function E(u,z){const M=arguments.length>=2;return h=>h.pipe(u?(0,n.h)((v,g)=>u(v,g,h)):C.y,(0,t.q)(1),M?(0,i.d)(z):(0,l.T)(()=>new e.K))}},37398:(nt,I,o)=>{"use strict";o.d(I,{U:()=>t});var e=o(79360),n=o(8251);function t(i,l){return(0,e.e)((C,E)=>{let u=0;C.subscribe((0,n.x)(E,z=>{E.next(i.call(l,z,u++))}))})}},21441:(nt,I,o)=>{"use strict";o.d(I,{h:()=>n});var e=o(37398);function n(t){return(0,e.U)(()=>t)}},57537:(nt,I,o)=>{"use strict";o.d(I,{J:()=>t});var e=o(21631),n=o(42737);function t(i=1/0){return(0,e.z)(n.y,i)}},21631:(nt,I,o)=>{"use strict";o.d(I,{z:()=>u});var e=o(37398),n=o(54829),t=o(79360),i=o(27103),l=o(8251),E=o(84674);function u(z,M,h=1/0){return(0,E.m)(M)?u((v,g)=>(0,e.U)((d,p)=>M(v,d,g,p))((0,n.Xf)(z(v,g))),h):("number"==typeof M&&(h=M),(0,t.e)((v,g)=>function C(z,M,h,v,g,d,p,f){const y=[];let T=0,x=0,D=!1;const _=()=>{D&&!y.length&&!T&&M.complete()},P=A=>T{d&&M.next(A),T++;let k=!1;(0,n.Xf)(h(A,x++)).subscribe((0,l.x)(M,F=>{g?.(F),d?P(F):M.next(F)},()=>{k=!0},void 0,()=>{if(k)try{for(T--;y.length&&TO(F)):O(F)}_()}catch(F){M.error(F)}}))};return z.subscribe((0,l.x)(M,P,()=>{D=!0,_()})),()=>{f?.()}}(v,g,z,h)))}},66196:(nt,I,o)=>{"use strict";o.d(I,{x:()=>t});var e=o(79360),n=o(8251);function t(){return(0,e.e)((i,l)=>{let C=null;i._refCount++;const E=(0,n.x)(l,void 0,void 0,void 0,()=>{if(!i||i._refCount<=0||0<--i._refCount)return void(C=null);const u=i._connection,z=C;C=null,u&&(!z||u===z)&&u.unsubscribe(),l.unsubscribe()});i.subscribe(E),E.closed||(C=i.connect())})}},63020:(nt,I,o)=>{"use strict";o.d(I,{B:()=>l});var e=o(54829),n=o(78645),t=o(80305),i=o(79360);function l(E={}){const{connector:u=(()=>new n.x),resetOnError:z=!0,resetOnComplete:M=!0,resetOnRefCountZero:h=!0}=E;return v=>{let g,d,p,f=0,y=!1,T=!1;const x=()=>{d?.unsubscribe(),d=void 0},D=()=>{x(),g=p=void 0,y=T=!1},_=()=>{const P=g;D(),P?.unsubscribe()};return(0,i.e)((P,O)=>{f++,!T&&!y&&x();const A=p=p??u();O.add(()=>{f--,0===f&&!T&&!y&&(d=C(_,h))}),A.subscribe(O),!g&&f>0&&(g=new t.Hp({next:k=>A.next(k),error:k=>{T=!0,x(),d=C(D,z,k),A.error(k)},complete:()=>{y=!0,x(),d=C(D,M),A.complete()}}),(0,e.Xf)(P).subscribe(g))})(v)}}function C(E,u,...z){if(!0===u)return void E();if(!1===u)return;const M=new t.Hp({next:()=>{M.unsubscribe(),E()}});return(0,e.Xf)(u(...z)).subscribe(M)}},836:(nt,I,o)=>{"use strict";o.d(I,{T:()=>n});var e=o(32181);function n(t){return(0,e.h)((i,l)=>t<=l)}},27921:(nt,I,o)=>{"use strict";o.d(I,{O:()=>i});var e=o(35211),n=o(79940),t=o(79360);function i(...l){const C=(0,n.yG)(l);return(0,t.e)((E,u)=>{(C?(0,e.z)(l,E,C):(0,e.z)(l,E)).subscribe(u)})}},94664:(nt,I,o)=>{"use strict";o.d(I,{w:()=>i});var e=o(54829),n=o(79360),t=o(8251);function i(l,C){return(0,n.e)((E,u)=>{let z=null,M=0,h=!1;const v=()=>h&&!z&&u.complete();E.subscribe((0,t.x)(u,g=>{z?.unsubscribe();let d=0;const p=M++;(0,e.Xf)(l(g,p)).subscribe(z=(0,t.x)(u,f=>u.next(C?C(g,f,p,d++):f),()=>{z=null,v()}))},()=>{h=!0,v()}))})}},48180:(nt,I,o)=>{"use strict";o.d(I,{q:()=>i});var e=o(36232),n=o(79360),t=o(8251);function i(l){return l<=0?()=>e.E:(0,n.e)((C,E)=>{let u=0;C.subscribe((0,t.x)(E,z=>{++u<=l&&(E.next(z),l<=u&&E.complete())}))})}},59773:(nt,I,o)=>{"use strict";o.d(I,{R:()=>l});var e=o(79360),n=o(8251),t=o(54829),i=o(72420);function l(C){return(0,e.e)((E,u)=>{(0,t.Xf)(C).subscribe((0,n.x)(u,()=>u.complete(),i.Z)),!u.closed&&E.subscribe(u)})}},99397:(nt,I,o)=>{"use strict";o.d(I,{b:()=>l});var e=o(84674),n=o(79360),t=o(8251),i=o(42737);function l(C,E,u){const z=(0,e.m)(C)||E||u?{next:C,error:E,complete:u}:C;return z?(0,n.e)((M,h)=>{var v;null===(v=z.subscribe)||void 0===v||v.call(z);let g=!0;M.subscribe((0,t.x)(h,d=>{var p;null===(p=z.next)||void 0===p||p.call(z,d),h.next(d)},()=>{var d;g=!1,null===(d=z.complete)||void 0===d||d.call(z),h.complete()},d=>{var p;g=!1,null===(p=z.error)||void 0===p||p.call(z,d),h.error(d)},()=>{var d,p;g&&(null===(d=z.unsubscribe)||void 0===d||d.call(z)),null===(p=z.finalize)||void 0===p||p.call(z)}))}):i.y}},18753:(nt,I,o)=>{"use strict";o.d(I,{p:()=>E});var e=o(16321),n=o(79360),t=o(8251),i=o(54829),C=o(74825);function E(u,z=e.z,M){const h=(0,C.H)(u,z);return function l(u,z){return(0,n.e)((M,h)=>{const{leading:v=!0,trailing:g=!1}=z??{};let d=!1,p=null,f=null,y=!1;const T=()=>{f?.unsubscribe(),f=null,g&&(_(),y&&h.complete())},x=()=>{f=null,y&&h.complete()},D=P=>f=(0,i.Xf)(u(P)).subscribe((0,t.x)(h,T,x)),_=()=>{if(d){d=!1;const P=p;p=null,h.next(P),!y&&D(P)}};M.subscribe((0,t.x)(h,P=>{d=!0,p=P,(!f||f.closed)&&(v?_():D(P))},()=>{y=!0,(!(g&&d&&f)||f.closed)&&h.complete()}))})}(()=>h,M)}},3026:(nt,I,o)=>{"use strict";o.d(I,{T:()=>i});var e=o(46973),n=o(79360),t=o(8251);function i(C=l){return(0,n.e)((E,u)=>{let z=!1;E.subscribe((0,t.x)(u,M=>{z=!0,u.next(M)},()=>z?u.complete():u.error(C())))})}function l(){return new e.K}},42460:(nt,I,o)=>{"use strict";o.d(I,{M:()=>E});var e=o(79360),n=o(8251),t=o(54829),i=o(42737),l=o(72420),C=o(79940);function E(...u){const z=(0,C.jO)(u);return(0,e.e)((M,h)=>{const v=u.length,g=new Array(v);let d=u.map(()=>!1),p=!1;for(let f=0;f{g[f]=y,!p&&!d[f]&&(d[f]=!0,(p=d.every(i.y))&&(d=null))},l.Z));M.subscribe((0,n.x)(h,f=>{if(p){const y=[f,...g];h.next(z?z(...y):y)}}))})}},41954:(nt,I,o)=>{"use strict";o.d(I,{o:()=>l});var e=o(47394);class n extends e.w0{constructor(E,u){super()}schedule(E,u=0){return this}}const t={setInterval(C,E,...u){const{delegate:z}=t;return z?.setInterval?z.setInterval(C,E,...u):setInterval(C,E,...u)},clearInterval(C){const{delegate:E}=t;return(E?.clearInterval||clearInterval)(C)},delegate:void 0};var i=o(49039);class l extends n{constructor(E,u){super(E,u),this.scheduler=E,this.work=u,this.pending=!1}schedule(E,u=0){var z;if(this.closed)return this;this.state=E;const M=this.id,h=this.scheduler;return null!=M&&(this.id=this.recycleAsyncId(h,M,u)),this.pending=!0,this.delay=u,this.id=null!==(z=this.id)&&void 0!==z?z:this.requestAsyncId(h,this.id,u),this}requestAsyncId(E,u,z=0){return t.setInterval(E.flush.bind(E,this),z)}recycleAsyncId(E,u,z=0){if(null!=z&&this.delay===z&&!1===this.pending)return u;null!=u&&t.clearInterval(u)}execute(E,u){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;const z=this._execute(E,u);if(z)return z;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(E,u){let M,z=!1;try{this.work(E)}catch(h){z=!0,M=h||new Error("Scheduled action threw falsy error")}if(z)return this.unsubscribe(),M}unsubscribe(){if(!this.closed){const{id:E,scheduler:u}=this,{actions:z}=u;this.work=this.state=this.scheduler=null,this.pending=!1,(0,i.P)(z,this),null!=E&&(this.id=this.recycleAsyncId(u,E,null)),this.delay=null,super.unsubscribe()}}}},2631:(nt,I,o)=>{"use strict";o.d(I,{v:()=>t});var e=o(84552);class n{constructor(l,C=n.now){this.schedulerActionCtor=l,this.now=C}schedule(l,C=0,E){return new this.schedulerActionCtor(this,l).schedule(E,C)}}n.now=e.l.now;class t extends n{constructor(l,C=n.now){super(l,C),this.actions=[],this._active=!1}flush(l){const{actions:C}=this;if(this._active)return void C.push(l);let E;this._active=!0;do{if(E=l.execute(l.state,l.delay))break}while(l=C.shift());if(this._active=!1,E){for(;l=C.shift();)l.unsubscribe();throw E}}}},80927:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>E});var e=o(41954),n=o(47394);const t={schedule(z){let M=requestAnimationFrame,h=cancelAnimationFrame;const{delegate:v}=t;v&&(M=v.requestAnimationFrame,h=v.cancelAnimationFrame);const g=M(d=>{h=void 0,z(d)});return new n.w0(()=>h?.(g))},requestAnimationFrame(...z){const{delegate:M}=t;return(M?.requestAnimationFrame||requestAnimationFrame)(...z)},cancelAnimationFrame(...z){const{delegate:M}=t;return(M?.cancelAnimationFrame||cancelAnimationFrame)(...z)},delegate:void 0};var l=o(2631);const E=new class C extends l.v{flush(M){this._active=!0;const h=this._scheduled;this._scheduled=void 0;const{actions:v}=this;let g;M=M||v.shift();do{if(g=M.execute(M.state,M.delay))break}while((M=v[0])&&M.id===h&&v.shift());if(this._active=!1,g){for(;(M=v[0])&&M.id===h&&v.shift();)M.unsubscribe();throw g}}}(class i extends e.o{constructor(M,h){super(M,h),this.scheduler=M,this.work=h}requestAsyncId(M,h,v=0){return null!==v&&v>0?super.requestAsyncId(M,h,v):(M.actions.push(this),M._scheduled||(M._scheduled=t.requestAnimationFrame(()=>M.flush(void 0))))}recycleAsyncId(M,h,v=0){var g;if(null!=v?v>0:this.delay>0)return super.recycleAsyncId(M,h,v);const{actions:d}=M;null!=h&&(null===(g=d[d.length-1])||void 0===g?void 0:g.id)!==h&&(t.cancelAnimationFrame(h),M._scheduled=void 0)}})},76410:(nt,I,o)=>{"use strict";o.d(I,{E:()=>d});var e=o(41954);let t,n=1;const i={};function l(f){return f in i&&(delete i[f],!0)}const C={setImmediate(f){const y=n++;return i[y]=!0,t||(t=Promise.resolve()),t.then(()=>l(y)&&f()),y},clearImmediate(f){l(f)}},{setImmediate:u,clearImmediate:z}=C,M={setImmediate(...f){const{delegate:y}=M;return(y?.setImmediate||u)(...f)},clearImmediate(f){const{delegate:y}=M;return(y?.clearImmediate||z)(f)},delegate:void 0};var v=o(2631);const d=new class g extends v.v{flush(y){this._active=!0;const T=this._scheduled;this._scheduled=void 0;const{actions:x}=this;let D;y=y||x.shift();do{if(D=y.execute(y.state,y.delay))break}while((y=x[0])&&y.id===T&&x.shift());if(this._active=!1,D){for(;(y=x[0])&&y.id===T&&x.shift();)y.unsubscribe();throw D}}}(class h extends e.o{constructor(y,T){super(y,T),this.scheduler=y,this.work=T}requestAsyncId(y,T,x=0){return null!==x&&x>0?super.requestAsyncId(y,T,x):(y.actions.push(this),y._scheduled||(y._scheduled=M.setImmediate(y.flush.bind(y,void 0))))}recycleAsyncId(y,T,x=0){var D;if(null!=x?x>0:this.delay>0)return super.recycleAsyncId(y,T,x);const{actions:_}=y;null!=T&&(null===(D=_[_.length-1])||void 0===D?void 0:D.id)!==T&&(M.clearImmediate(T),y._scheduled===T&&(y._scheduled=void 0))}})},16321:(nt,I,o)=>{"use strict";o.d(I,{P:()=>i,z:()=>t});var e=o(41954);const t=new(o(2631).v)(e.o),i=t},84552:(nt,I,o)=>{"use strict";o.d(I,{l:()=>e});const e={now:()=>(e.delegate||Date).now(),delegate:void 0}},87599:(nt,I,o)=>{"use strict";o.d(I,{z:()=>e});const e={setTimeout(n,t,...i){const{delegate:l}=e;return l?.setTimeout?l.setTimeout(n,t,...i):setTimeout(n,t,...i)},clearTimeout(n){const{delegate:t}=e;return(t?.clearTimeout||clearTimeout)(n)},delegate:void 0}},64971:(nt,I,o)=>{"use strict";o.d(I,{h:()=>n});const n=function e(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}()},14850:(nt,I,o)=>{"use strict";o.d(I,{L:()=>e});const e="function"==typeof Symbol&&Symbol.observable||"@@observable"},46973:(nt,I,o)=>{"use strict";o.d(I,{K:()=>n});const n=(0,o(82306).d)(t=>function(){t(this),this.name="EmptyError",this.message="no elements in sequence"})},79940:(nt,I,o)=>{"use strict";o.d(I,{_6:()=>C,jO:()=>i,yG:()=>l});var e=o(84674),n=o(50671);function t(E){return E[E.length-1]}function i(E){return(0,e.m)(t(E))?E.pop():void 0}function l(E){return(0,n.K)(t(E))?E.pop():void 0}function C(E,u){return"number"==typeof t(E)?E.pop():u}},17453:(nt,I,o)=>{"use strict";o.d(I,{D:()=>l});const{isArray:e}=Array,{getPrototypeOf:n,prototype:t,keys:i}=Object;function l(E){if(1===E.length){const u=E[0];if(e(u))return{args:u,keys:null};if(function C(E){return E&&"object"==typeof E&&n(E)===t}(u)){const z=i(u);return{args:z.map(M=>u[M]),keys:z}}}return{args:E,keys:null}}},49039:(nt,I,o)=>{"use strict";function e(n,t){if(n){const i=n.indexOf(t);0<=i&&n.splice(i,1)}}o.d(I,{P:()=>e})},82306:(nt,I,o)=>{"use strict";function e(n){const i=n(l=>{Error.call(l),l.stack=(new Error).stack});return i.prototype=Object.create(Error.prototype),i.prototype.constructor=i,i}o.d(I,{d:()=>e})},92714:(nt,I,o)=>{"use strict";function e(n,t){return n.reduce((i,l,C)=>(i[l]=t[C],i),{})}o.d(I,{n:()=>e})},81441:(nt,I,o)=>{"use strict";o.d(I,{O:()=>i,x:()=>t});var e=o(82653);let n=null;function t(l){if(e.config.useDeprecatedSynchronousErrorHandling){const C=!n;if(C&&(n={errorThrown:!1,error:null}),l(),C){const{errorThrown:E,error:u}=n;if(n=null,E)throw u}}else l()}function i(l){e.config.useDeprecatedSynchronousErrorHandling&&n&&(n.errorThrown=!0,n.error=l)}},27103:(nt,I,o)=>{"use strict";function e(n,t,i,l=0,C=!1){const E=t.schedule(function(){i(),C?n.add(this.schedule(null,l)):this.unsubscribe()},l);if(n.add(E),!C)return E}o.d(I,{f:()=>e})},42737:(nt,I,o)=>{"use strict";function e(n){return n}o.d(I,{y:()=>e})},64266:(nt,I,o)=>{"use strict";o.d(I,{z:()=>e});const e=n=>n&&"number"==typeof n.length&&"function"!=typeof n},15726:(nt,I,o)=>{"use strict";o.d(I,{D:()=>n});var e=o(84674);function n(t){return Symbol.asyncIterator&&(0,e.m)(t?.[Symbol.asyncIterator])}},84674:(nt,I,o)=>{"use strict";function e(n){return"function"==typeof n}o.d(I,{m:()=>e})},38382:(nt,I,o)=>{"use strict";o.d(I,{c:()=>t});var e=o(14850),n=o(84674);function t(i){return(0,n.m)(i[e.L])}},83664:(nt,I,o)=>{"use strict";o.d(I,{T:()=>t});var e=o(64971),n=o(84674);function t(i){return(0,n.m)(i?.[e.h])}},2664:(nt,I,o)=>{"use strict";o.d(I,{b:()=>t});var e=o(65592),n=o(84674);function t(i){return!!i&&(i instanceof e.y||(0,n.m)(i.lift)&&(0,n.m)(i.subscribe))}},54026:(nt,I,o)=>{"use strict";o.d(I,{t:()=>n});var e=o(84674);function n(t){return(0,e.m)(t?.then)}},50541:(nt,I,o)=>{"use strict";o.d(I,{L:()=>i,Q:()=>t});var e=o(97582),n=o(84674);function t(l){return(0,e.FC)(this,arguments,function*(){const E=l.getReader();try{for(;;){const{value:u,done:z}=yield(0,e.qq)(E.read());if(z)return yield(0,e.qq)(void 0);yield yield(0,e.qq)(u)}}finally{E.releaseLock()}})}function i(l){return(0,n.m)(l?.getReader)}},50671:(nt,I,o)=>{"use strict";o.d(I,{K:()=>n});var e=o(84674);function n(t){return t&&(0,e.m)(t.schedule)}},79360:(nt,I,o)=>{"use strict";o.d(I,{A:()=>n,e:()=>t});var e=o(84674);function n(i){return(0,e.m)(i?.lift)}function t(i){return l=>{if(n(l))return l.lift(function(C){try{return i(C,this)}catch(E){this.error(E)}});throw new TypeError("Unable to lift unknown Observable type")}}},97400:(nt,I,o)=>{"use strict";o.d(I,{Z:()=>i});var e=o(37398);const{isArray:n}=Array;function i(l){return(0,e.U)(C=>function t(l,C){return n(C)?l(...C):l(C)}(l,C))}},72420:(nt,I,o)=>{"use strict";function e(){}o.d(I,{Z:()=>e})},88407:(nt,I,o)=>{"use strict";o.d(I,{U:()=>t,z:()=>n});var e=o(42737);function n(...i){return t(i)}function t(i){return 0===i.length?e.y:1===i.length?i[0]:function(C){return i.reduce((E,u)=>u(E),C)}}},93894:(nt,I,o)=>{"use strict";o.d(I,{h:()=>t});var e=o(82653),n=o(87599);function t(i){n.z.setTimeout(()=>{const{onUnhandledError:l}=e.config;if(!l)throw i;l(i)})}},69853:(nt,I,o)=>{"use strict";function e(n){return new TypeError(`You provided ${null!==n&&"object"==typeof n?"an invalid object":`'${n}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}o.d(I,{z:()=>e})},96064:function(nt,I){!function(o){"use strict";function e(){for(var De=arguments.length,Pe=Array(De),Je=0;Je1){Pe[0]=Pe[0].slice(0,-1);for(var Ge=Pe.length-1,Ke=1;Ke= 0x80 (not a basic code point)","invalid-input":"Invalid input"},F=Math.floor,W=String.fromCharCode;function K(De){throw new RangeError(A[De])}function Y(De,Pe){var Je=De.split("@"),Ge="";return Je.length>1&&(Ge=Je[0]+"@",De=Je[1]),Ge+function _e(De,Pe){for(var Je=[],Ge=De.length;Ge--;)Je[Ge]=Pe(De[Ge]);return Je}((De=De.replace(O,".")).split("."),Pe).join(".")}function G(De){for(var Pe=[],Je=0,Ge=De.length;Je=55296&&Ke<=56319&&Je>1,Pe+=F(Pe/Je);Pe>455;Ke+=g)Pe=F(Pe/35);return F(Ke+36*Pe/(Pe+38))},pe=function(Pe){var Je=[],Ge=Pe.length,Ke=0,ve=128,it=72,b=Pe.lastIndexOf("-");b<0&&(b=0);for(var N=0;N=128&&K("not-basic"),Je.push(Pe.charCodeAt(N));for(var S=b>0?b+1:0;S=Ge&&K("invalid-input");var ze=j(Pe.charCodeAt(S++));(ze>=g||ze>F((v-Ke)/R))&&K("overflow"),Ke+=ze*R;var bt=he<=it?1:he>=it+26?26:he-it;if(zeF(v/Ft)&&K("overflow"),R*=Ft}var sn=Je.length+1;it=ne(Ke-$,sn,0==$),F(Ke/sn)>v-ve&&K("overflow"),ve+=F(Ke/sn),Ke%=sn,Je.splice(Ke++,0,ve)}return String.fromCodePoint.apply(String,Je)},re=function(Pe){var Je=[],Ge=(Pe=G(Pe)).length,Ke=128,ve=0,it=72,b=!0,N=!1,S=void 0;try{for(var R,$=Pe[Symbol.iterator]();!(b=(R=$.next()).done);b=!0){var he=R.value;he<128&&Je.push(W(he))}}catch(ei){N=!0,S=ei}finally{try{!b&&$.return&&$.return()}finally{if(N)throw S}}var ze=Je.length,bt=ze;for(ze&&Je.push("-");bt=Ke&&EnF((v-ve)/bn)&&K("overflow"),ve+=(Ft-Ke)*bn,Ke=Ft;var Rn=!0,qn=!1,si=void 0;try{for(var ci,Wn=Pe[Symbol.iterator]();!(Rn=(ci=Wn.next()).done);Rn=!0){var ri=ci.value;if(riv&&K("overflow"),ri==Ke){for(var di=ve,hi=g;;hi+=g){var fi=hi<=it?1:hi>=it+26?26:hi-it;if(di>6|192).toString(16).toUpperCase()+"%"+(63&Pe|128).toString(16).toUpperCase():"%"+(Pe>>12|224).toString(16).toUpperCase()+"%"+(Pe>>6&63|128).toString(16).toUpperCase()+"%"+(63&Pe|128).toString(16).toUpperCase()}function ae(De){for(var Pe="",Je=0,Ge=De.length;Je=194&&Ke<224){if(Ge-Je>=6){var ve=parseInt(De.substr(Je+4,2),16);Pe+=String.fromCharCode((31&Ke)<<6|63&ve)}else Pe+=De.substr(Je,6);Je+=6}else if(Ke>=224){if(Ge-Je>=9){var it=parseInt(De.substr(Je+4,2),16),b=parseInt(De.substr(Je+7,2),16);Pe+=String.fromCharCode((15&Ke)<<12|(63&it)<<6|63&b)}else Pe+=De.substr(Je,9);Je+=9}else Pe+=De.substr(Je,3),Je+=3}return Pe}function xe(De,Pe){function Je(Ge){var Ke=ae(Ge);return Ke.match(Pe.UNRESERVED)?Ke:Ge}return De.scheme&&(De.scheme=String(De.scheme).replace(Pe.PCT_ENCODED,Je).toLowerCase().replace(Pe.NOT_SCHEME,"")),void 0!==De.userinfo&&(De.userinfo=String(De.userinfo).replace(Pe.PCT_ENCODED,Je).replace(Pe.NOT_USERINFO,ie).replace(Pe.PCT_ENCODED,i)),void 0!==De.host&&(De.host=String(De.host).replace(Pe.PCT_ENCODED,Je).toLowerCase().replace(Pe.NOT_HOST,ie).replace(Pe.PCT_ENCODED,i)),void 0!==De.path&&(De.path=String(De.path).replace(Pe.PCT_ENCODED,Je).replace(De.scheme?Pe.NOT_PATH:Pe.NOT_PATH_NOSCHEME,ie).replace(Pe.PCT_ENCODED,i)),void 0!==De.query&&(De.query=String(De.query).replace(Pe.PCT_ENCODED,Je).replace(Pe.NOT_QUERY,ie).replace(Pe.PCT_ENCODED,i)),void 0!==De.fragment&&(De.fragment=String(De.fragment).replace(Pe.PCT_ENCODED,Je).replace(Pe.NOT_FRAGMENT,ie).replace(Pe.PCT_ENCODED,i)),De}function Me(De){return De.replace(/^0*(.*)/,"$1")||"0"}function Ye(De,Pe){var Je=De.match(Pe.IPV4ADDRESS)||[],Ke=M(Je,2)[1];return Ke?Ke.split(".").map(Me).join("."):De}function q(De,Pe){var Je=De.match(Pe.IPV6ADDRESS)||[],Ge=M(Je,3),Ke=Ge[1],ve=Ge[2];if(Ke){for(var it=Ke.toLowerCase().split("::").reverse(),b=M(it,2),N=b[0],S=b[1],$=S?S.split(":").map(Me):[],R=N.split(":").map(Me),he=Pe.IPV4ADDRESS.test(R[R.length-1]),ze=he?7:8,bt=R.length-ze,Ft=Array(ze),sn=0;sn1){var Mn=Ft.slice(0,vn.index),En=Ft.slice(vn.index+vn.length);Dn=Mn.join(":")+"::"+En.join(":")}else Dn=Ft.join(":");return ve&&(Dn+="%"+ve),Dn}return De}var ye=/^(?:([^:\/?#]+):)?(?:\/\/((?:([^\/?#@]*)@)?(\[[^\/?#\]]+\]|[^\/?#:]*)(?:\:(\d*))?))?([^?#]*)(?:\?([^#]*))?(?:#((?:.|\n|\r)*))?/i,ee=void 0==="".match(/(){0}/)[1];function Be(De){var Pe=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},Je={},Ge=!1!==Pe.iri?z:u;"suffix"===Pe.reference&&(De=(Pe.scheme?Pe.scheme+":":"")+"//"+De);var Ke=De.match(ye);if(Ke){ee?(Je.scheme=Ke[1],Je.userinfo=Ke[3],Je.host=Ke[4],Je.port=parseInt(Ke[5],10),Je.path=Ke[6]||"",Je.query=Ke[7],Je.fragment=Ke[8],isNaN(Je.port)&&(Je.port=Ke[5])):(Je.scheme=Ke[1]||void 0,Je.userinfo=-1!==De.indexOf("@")?Ke[3]:void 0,Je.host=-1!==De.indexOf("//")?Ke[4]:void 0,Je.port=parseInt(Ke[5],10),Je.path=Ke[6]||"",Je.query=-1!==De.indexOf("?")?Ke[7]:void 0,Je.fragment=-1!==De.indexOf("#")?Ke[8]:void 0,isNaN(Je.port)&&(Je.port=De.match(/\/\/(?:.|\n)*\:(?:\/|\?|\#|$)/)?Ke[4]:void 0)),Je.host&&(Je.host=q(Ye(Je.host,Ge),Ge)),Je.reference=void 0!==Je.scheme||void 0!==Je.userinfo||void 0!==Je.host||void 0!==Je.port||Je.path||void 0!==Je.query?void 0===Je.scheme?"relative":void 0===Je.fragment?"absolute":"uri":"same-document",Pe.reference&&"suffix"!==Pe.reference&&Pe.reference!==Je.reference&&(Je.error=Je.error||"URI is not a "+Pe.reference+" reference.");var ve=Q[(Pe.scheme||Je.scheme||"").toLowerCase()];if(Pe.unicodeSupport||ve&&ve.unicodeSupport)xe(Je,Ge);else{if(Je.host&&(Pe.domainHost||ve&&ve.domainHost))try{Je.host=ce.toASCII(Je.host.replace(Ge.PCT_ENCODED,ae).toLowerCase())}catch(it){Je.error=Je.error||"Host's domain name can not be converted to ASCII via punycode: "+it}xe(Je,u)}ve&&ve.parse&&ve.parse(Je,Pe)}else Je.error=Je.error||"URI can not be parsed.";return Je}var ct=/^\.\.?\//,Ae=/^\/\.(\/|$)/,Mt=/^\/\.\.(\/|$)/,je=/^\/?(?:.|\n)*?(?=\/|$)/;function ot(De){for(var Pe=[];De.length;)if(De.match(ct))De=De.replace(ct,"");else if(De.match(Ae))De=De.replace(Ae,"/");else if(De.match(Mt))De=De.replace(Mt,"/"),Pe.pop();else if("."===De||".."===De)De="";else{var Je=De.match(je);if(!Je)throw new Error("Unexpected dot segment condition");var Ge=Je[0];De=De.slice(Ge.length),Pe.push(Ge)}return Pe.join("")}function mt(De){var Pe=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},Je=Pe.iri?z:u,Ge=[],Ke=Q[(Pe.scheme||De.scheme||"").toLowerCase()];if(Ke&&Ke.serialize&&Ke.serialize(De,Pe),De.host&&!Je.IPV6ADDRESS.test(De.host)&&(Pe.domainHost||Ke&&Ke.domainHost))try{De.host=Pe.iri?ce.toUnicode(De.host):ce.toASCII(De.host.replace(Je.PCT_ENCODED,ae).toLowerCase())}catch(b){De.error=De.error||"Host's domain name can not be converted to "+(Pe.iri?"Unicode":"ASCII")+" via punycode: "+b}xe(De,Je),"suffix"!==Pe.reference&&De.scheme&&(Ge.push(De.scheme),Ge.push(":"));var ve=function Re(De,Pe){var Je=!1!==Pe.iri?z:u,Ge=[];return void 0!==De.userinfo&&(Ge.push(De.userinfo),Ge.push("@")),void 0!==De.host&&Ge.push(q(Ye(String(De.host),Je),Je).replace(Je.IPV6ADDRESS,function(Ke,ve,it){return"["+ve+(it?"%25"+it:"")+"]"})),("number"==typeof De.port||"string"==typeof De.port)&&(Ge.push(":"),Ge.push(String(De.port))),Ge.length?Ge.join(""):void 0}(De,Pe);if(void 0!==ve&&("suffix"!==Pe.reference&&Ge.push("//"),Ge.push(ve),De.path&&"/"!==De.path.charAt(0)&&Ge.push("/")),void 0!==De.path){var it=De.path;!Pe.absolutePath&&(!Ke||!Ke.absolutePath)&&(it=ot(it)),void 0===ve&&(it=it.replace(/^\/\//,"/%2F")),Ge.push(it)}return void 0!==De.query&&(Ge.push("?"),Ge.push(De.query)),void 0!==De.fragment&&(Ge.push("#"),Ge.push(De.fragment)),Ge.join("")}function we(De,Pe){var Je=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},Ke={};return arguments[3]||(De=Be(mt(De,Je),Je),Pe=Be(mt(Pe,Je),Je)),!(Je=Je||{}).tolerant&&Pe.scheme?(Ke.scheme=Pe.scheme,Ke.userinfo=Pe.userinfo,Ke.host=Pe.host,Ke.port=Pe.port,Ke.path=ot(Pe.path||""),Ke.query=Pe.query):(void 0!==Pe.userinfo||void 0!==Pe.host||void 0!==Pe.port?(Ke.userinfo=Pe.userinfo,Ke.host=Pe.host,Ke.port=Pe.port,Ke.path=ot(Pe.path||""),Ke.query=Pe.query):(Pe.path?("/"===Pe.path.charAt(0)?Ke.path=ot(Pe.path):(Ke.path=void 0===De.userinfo&&void 0===De.host&&void 0===De.port||De.path?De.path?De.path.slice(0,De.path.lastIndexOf("/")+1)+Pe.path:Pe.path:"/"+Pe.path,Ke.path=ot(Ke.path)),Ke.query=Pe.query):(Ke.path=De.path,Ke.query=void 0!==Pe.query?Pe.query:De.query),Ke.userinfo=De.userinfo,Ke.host=De.host,Ke.port=De.port),Ke.scheme=De.scheme),Ke.fragment=Pe.fragment,Ke}function Ie(De,Pe){return De&&De.toString().replace(Pe&&Pe.iri?z.PCT_ENCODED:u.PCT_ENCODED,ae)}var Ne={scheme:"http",domainHost:!0,parse:function(Pe,Je){return Pe.host||(Pe.error=Pe.error||"HTTP URIs must have a host."),Pe},serialize:function(Pe,Je){var Ge="https"===String(Pe.scheme).toLowerCase();return(Pe.port===(Ge?443:80)||""===Pe.port)&&(Pe.port=void 0),Pe.path||(Pe.path="/"),Pe}},pt={scheme:"https",domainHost:Ne.domainHost,parse:Ne.parse,serialize:Ne.serialize};function Dt(De){return"boolean"==typeof De.secure?De.secure:"wss"===String(De.scheme).toLowerCase()}var Lt={scheme:"ws",domainHost:!0,parse:function(Pe,Je){var Ge=Pe;return Ge.secure=Dt(Ge),Ge.resourceName=(Ge.path||"/")+(Ge.query?"?"+Ge.query:""),Ge.path=void 0,Ge.query=void 0,Ge},serialize:function(Pe,Je){if((Pe.port===(Dt(Pe)?443:80)||""===Pe.port)&&(Pe.port=void 0),"boolean"==typeof Pe.secure&&(Pe.scheme=Pe.secure?"wss":"ws",Pe.secure=void 0),Pe.resourceName){var Ge=Pe.resourceName.split("?"),Ke=M(Ge,2),ve=Ke[0],it=Ke[1];Pe.path=ve&&"/"!==ve?ve:void 0,Pe.query=it,Pe.resourceName=void 0}return Pe.fragment=void 0,Pe}},Ut={scheme:"wss",domainHost:Lt.domainHost,parse:Lt.parse,serialize:Lt.serialize},qt={},cn="[A-Za-z0-9\\-\\.\\_\\~\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]",Wt="[0-9A-Fa-f]",Vt=n(n("%[EFef]"+Wt+"%"+Wt+Wt+"%"+Wt+Wt)+"|"+n("%[89A-Fa-f]"+Wt+"%"+Wt+Wt)+"|"+n("%"+Wt+Wt)),et=e("[\\!\\$\\%\\'\\(\\)\\*\\+\\,\\-\\.0-9\\<\\>A-Z\\x5E-\\x7E]",'[\\"\\\\]'),Ot=new RegExp(cn,"g"),xt=new RegExp(Vt,"g"),Qe=new RegExp(e("[^]","[A-Za-z0-9\\!\\$\\%\\'\\*\\+\\-\\^\\_\\`\\{\\|\\}\\~]","[\\.]",'[\\"]',et),"g"),ke=new RegExp(e("[^]",cn,"[\\!\\$\\'\\(\\)\\*\\+\\,\\;\\:\\@]"),"g"),fe=ke;function qe(De){var Pe=ae(De);return Pe.match(Ot)?Pe:De}var ge={scheme:"mailto",parse:function(Pe,Je){var Ge=Pe,Ke=Ge.to=Ge.path?Ge.path.split(","):[];if(Ge.path=void 0,Ge.query){for(var ve=!1,it={},b=Ge.query.split("&"),N=0,S=b.length;N{"use strict";o.d(I,{Z:()=>e});const e="import { MockStatusError, MockRequest } from '@delon/mock';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n// import * as Mock from 'mockjs';\n\nconst r = (min: number, max: number): number => Math.floor(Math.random() * (max - min + 1) + min);\n\nexport const USERS = {\n // \u652f\u6301\u503c\u4e3a Object \u548c Array\n 'GET /users': (req: MockRequest) => {\n const total = req.queryString.total || 100;\n const res: NzSafeAny = {\n list: [],\n total\n };\n for (let i = 0; i < +req.queryString.ps; i++) {\n res.list.push({\n id: i + 1,\n type: r(1, 3),\n picture: {\n thumbnail: `https://randomuser.me/api/portraits/thumb/${r(0, 1) === 0 ? 'men' : 'women'}/${r(1, 50)}.jpg`\n },\n name: {\n last: `last-${r(1, 10)}`,\n first: `first-${r(10, 20)}`\n },\n nat: ['CH', 'US', 'DE'][i % 3],\n gender: ['male', 'female'][i % 2],\n email: `aaa${r(1, 10)}@qq.com`,\n phone: `phone-${r(1000, 100000)}`,\n price: r(10, 10000000),\n total: r(10, 10000000),\n website: `https://${r(10, 10000000)}.com/`,\n disabled: r(1, 100) > 50,\n registered: new Date()\n });\n }\n return res;\n },\n 'GET /user/check/': () => false,\n 'GET /user/check/:name': (req: MockRequest) => req.params.name === 'cipchk',\n // GET POST \u53ef\u7701\u7565\n // '/users/1': Mock.mock({ id: 1, 'rank|3': '\u2605\u2605\u2605' }),\n // \u53d1\u9001 Status \u9519\u8bef\n '/500': () => {\n throw new MockStatusError(500);\n },\n '/404': () => {\n throw new MockStatusError(404);\n },\n '/user/:id': (req: MockRequest) => {\n return { id: req.params.id, name: 'detail' };\n },\n '/user/:id/edit': (req: MockRequest) => {\n return { id: req.params.id, name: 'edit' };\n },\n '/user/:id/upload': (req: MockRequest) => {\n return { id: req.params.id, name: 'upload' };\n }\n};\n"},59344:nt=>{function I(e,n,t,i,l,C,E){try{var u=e[C](E),z=u.value}catch(M){return void t(M)}u.done?n(z):Promise.resolve(z).then(i,l)}nt.exports=function o(e){return function(){var n=this,t=arguments;return new Promise(function(i,l){var C=e.apply(n,t);function E(z){I(C,i,l,E,u,"next",z)}function u(z){I(C,i,l,E,u,"throw",z)}E(void 0)})}},nt.exports.__esModule=!0,nt.exports.default=nt.exports},49671:(nt,I,o)=>{"use strict";function e(t,i,l,C,E,u,z){try{var M=t[u](z),h=M.value}catch(v){return void l(v)}M.done?i(h):Promise.resolve(h).then(C,E)}function n(t){return function(){var i=this,l=arguments;return new Promise(function(C,E){var u=t.apply(i,l);function z(h){e(u,C,E,z,M,"next",h)}function M(h){e(u,C,E,z,M,"throw",h)}z(void 0)})}}o.d(I,{Z:()=>n})},86825:(nt,I,o)=>{"use strict";o.d(I,{EY:()=>f,IO:()=>p,LC:()=>n,SB:()=>z,X$:()=>i,ZE:()=>T,ZN:()=>y,_j:()=>e,eR:()=>h,jt:()=>l,k1:()=>x,l3:()=>t,oB:()=>u,vP:()=>E});class e{}class n{}const t="*";function i(D,_){return{type:7,name:D,definitions:_,options:{}}}function l(D,_=null){return{type:4,styles:_,timings:D}}function E(D,_=null){return{type:2,steps:D,options:_}}function u(D){return{type:6,styles:D,offset:null}}function z(D,_,P){return{type:0,name:D,styles:_,options:P}}function h(D,_,P=null){return{type:1,expr:D,animation:_,options:P}}function p(D,_,P=null){return{type:11,selector:D,animation:_,options:P}}function f(D,_){return{type:12,timings:D,animation:_}}class y{constructor(_=0,P=0){this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._originalOnDoneFns=[],this._originalOnStartFns=[],this._started=!1,this._destroyed=!1,this._finished=!1,this._position=0,this.parentPlayer=null,this.totalTime=_+P}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(_=>_()),this._onDoneFns=[])}onStart(_){this._originalOnStartFns.push(_),this._onStartFns.push(_)}onDone(_){this._originalOnDoneFns.push(_),this._onDoneFns.push(_)}onDestroy(_){this._onDestroyFns.push(_)}hasStarted(){return this._started}init(){}play(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0}triggerMicrotask(){queueMicrotask(()=>this._onFinish())}_onStart(){this._onStartFns.forEach(_=>_()),this._onStartFns=[]}pause(){}restart(){}finish(){this._onFinish()}destroy(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(_=>_()),this._onDestroyFns=[])}reset(){this._started=!1,this._finished=!1,this._onStartFns=this._originalOnStartFns,this._onDoneFns=this._originalOnDoneFns}setPosition(_){this._position=this.totalTime?_*this.totalTime:1}getPosition(){return this.totalTime?this._position/this.totalTime:1}triggerCallback(_){const P="start"==_?this._onStartFns:this._onDoneFns;P.forEach(O=>O()),P.length=0}}class T{constructor(_){this._onDoneFns=[],this._onStartFns=[],this._finished=!1,this._started=!1,this._destroyed=!1,this._onDestroyFns=[],this.parentPlayer=null,this.totalTime=0,this.players=_;let P=0,O=0,A=0;const k=this.players.length;0==k?queueMicrotask(()=>this._onFinish()):this.players.forEach(F=>{F.onDone(()=>{++P==k&&this._onFinish()}),F.onDestroy(()=>{++O==k&&this._onDestroy()}),F.onStart(()=>{++A==k&&this._onStart()})}),this.totalTime=this.players.reduce((F,W)=>Math.max(F,W.totalTime),0)}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(_=>_()),this._onDoneFns=[])}init(){this.players.forEach(_=>_.init())}onStart(_){this._onStartFns.push(_)}_onStart(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(_=>_()),this._onStartFns=[])}onDone(_){this._onDoneFns.push(_)}onDestroy(_){this._onDestroyFns.push(_)}hasStarted(){return this._started}play(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(_=>_.play())}pause(){this.players.forEach(_=>_.pause())}restart(){this.players.forEach(_=>_.restart())}finish(){this._onFinish(),this.players.forEach(_=>_.finish())}destroy(){this._onDestroy()}_onDestroy(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(_=>_.destroy()),this._onDestroyFns.forEach(_=>_()),this._onDestroyFns=[])}reset(){this.players.forEach(_=>_.reset()),this._destroyed=!1,this._finished=!1,this._started=!1}setPosition(_){const P=_*this.totalTime;this.players.forEach(O=>{const A=O.totalTime?Math.min(1,P/O.totalTime):1;O.setPosition(A)})}getPosition(){const _=this.players.reduce((P,O)=>null===P||O.totalTime>P.totalTime?O:P,null);return null!=_?_.getPosition():0}beforeDestroy(){this.players.forEach(_=>{_.beforeDestroy&&_.beforeDestroy()})}triggerCallback(_){const P="start"==_?this._onStartFns:this._onDoneFns;P.forEach(O=>O()),P.length=0}}const x="!"},4300:(nt,I,o)=>{"use strict";o.d(I,{Em:()=>j,X6:()=>ot,kH:()=>Wt,mK:()=>Be,qV:()=>ee,rt:()=>It,tE:()=>cn,yG:()=>mt});var e=o(96814),n=o(65879),t=o(62831),i=o(78645),l=o(47394),C=o(65619),E=o(22096),u=o(36028),z=o(99397),M=o(83620),h=o(32181),v=o(37398),g=o(48180),d=o(836),p=o(93997),f=o(59773),y=o(42495),T=o(17131),x=o(71088);class G{constructor(xt){this._items=xt,this._activeItemIndex=-1,this._activeItem=null,this._wrap=!1,this._letterKeyStream=new i.x,this._typeaheadSubscription=l.w0.EMPTY,this._vertical=!0,this._allowedModifierKeys=[],this._homeAndEnd=!1,this._pageUpAndDown={enabled:!1,delta:10},this._skipPredicateFn=Qe=>Qe.disabled,this._pressedLetters=[],this.tabOut=new i.x,this.change=new i.x,xt instanceof n.n_E&&(this._itemChangesSubscription=xt.changes.subscribe(Qe=>{if(this._activeItem){const fe=Qe.toArray().indexOf(this._activeItem);fe>-1&&fe!==this._activeItemIndex&&(this._activeItemIndex=fe)}}))}skipPredicate(xt){return this._skipPredicateFn=xt,this}withWrap(xt=!0){return this._wrap=xt,this}withVerticalOrientation(xt=!0){return this._vertical=xt,this}withHorizontalOrientation(xt){return this._horizontal=xt,this}withAllowedModifierKeys(xt){return this._allowedModifierKeys=xt,this}withTypeAhead(xt=200){return this._typeaheadSubscription.unsubscribe(),this._typeaheadSubscription=this._letterKeyStream.pipe((0,z.b)(Qe=>this._pressedLetters.push(Qe)),(0,M.b)(xt),(0,h.h)(()=>this._pressedLetters.length>0),(0,v.U)(()=>this._pressedLetters.join(""))).subscribe(Qe=>{const ke=this._getItemsArray();for(let fe=1;fe!xt[qe]||this._allowedModifierKeys.indexOf(qe)>-1);switch(Qe){case u.Mf:return void this.tabOut.next();case u.JH:if(this._vertical&&fe){this.setNextItemActive();break}return;case u.LH:if(this._vertical&&fe){this.setPreviousItemActive();break}return;case u.SV:if(this._horizontal&&fe){"rtl"===this._horizontal?this.setPreviousItemActive():this.setNextItemActive();break}return;case u.oh:if(this._horizontal&&fe){"rtl"===this._horizontal?this.setNextItemActive():this.setPreviousItemActive();break}return;case u.Sd:if(this._homeAndEnd&&fe){this.setFirstItemActive();break}return;case u.uR:if(this._homeAndEnd&&fe){this.setLastItemActive();break}return;case u.Ku:if(this._pageUpAndDown.enabled&&fe){const qe=this._activeItemIndex-this._pageUpAndDown.delta;this._setActiveItemByIndex(qe>0?qe:0,1);break}return;case u.VM:if(this._pageUpAndDown.enabled&&fe){const qe=this._activeItemIndex+this._pageUpAndDown.delta,ge=this._getItemsArray().length;this._setActiveItemByIndex(qe=u.A&&Qe<=u.Z||Qe>=u.xE&&Qe<=u.aO)&&this._letterKeyStream.next(String.fromCharCode(Qe))))}this._pressedLetters=[],xt.preventDefault()}get activeItemIndex(){return this._activeItemIndex}get activeItem(){return this._activeItem}isTyping(){return this._pressedLetters.length>0}setFirstItemActive(){this._setActiveItemByIndex(0,1)}setLastItemActive(){this._setActiveItemByIndex(this._items.length-1,-1)}setNextItemActive(){this._activeItemIndex<0?this.setFirstItemActive():this._setActiveItemByDelta(1)}setPreviousItemActive(){this._activeItemIndex<0&&this._wrap?this.setLastItemActive():this._setActiveItemByDelta(-1)}updateActiveItem(xt){const Qe=this._getItemsArray(),ke="number"==typeof xt?xt:Qe.indexOf(xt);this._activeItem=Qe[ke]??null,this._activeItemIndex=ke}destroy(){this._typeaheadSubscription.unsubscribe(),this._itemChangesSubscription?.unsubscribe(),this._letterKeyStream.complete(),this.tabOut.complete(),this.change.complete(),this._pressedLetters=[]}_setActiveItemByDelta(xt){this._wrap?this._setActiveInWrapMode(xt):this._setActiveInDefaultMode(xt)}_setActiveInWrapMode(xt){const Qe=this._getItemsArray();for(let ke=1;ke<=Qe.length;ke++){const fe=(this._activeItemIndex+xt*ke+Qe.length)%Qe.length;if(!this._skipPredicateFn(Qe[fe]))return void this.setActiveItem(fe)}}_setActiveInDefaultMode(xt){this._setActiveItemByIndex(this._activeItemIndex+xt,xt)}_setActiveItemByIndex(xt,Qe){const ke=this._getItemsArray();if(ke[xt]){for(;this._skipPredicateFn(ke[xt]);)if(!ke[xt+=Qe])return;this.setActiveItem(xt)}}_getItemsArray(){return this._items instanceof n.n_E?this._items.toArray():this._items}}class j extends G{constructor(){super(...arguments),this._origin="program"}setFocusOrigin(xt){return this._origin=xt,this}setActiveItem(xt){super.setActiveItem(xt),this.activeItem&&this.activeItem.focus(this._origin)}}let ne=(()=>{class Ot{constructor(Qe){this._platform=Qe}isDisabled(Qe){return Qe.hasAttribute("disabled")}isVisible(Qe){return function re(Ot){return!!(Ot.offsetWidth||Ot.offsetHeight||"function"==typeof Ot.getClientRects&&Ot.getClientRects().length)}(Qe)&&"visible"===getComputedStyle(Qe).visibility}isTabbable(Qe){if(!this._platform.isBrowser)return!1;const ke=function pe(Ot){try{return Ot.frameElement}catch{return null}}(function q(Ot){return Ot.ownerDocument&&Ot.ownerDocument.defaultView||window}(Qe));if(ke&&(-1===xe(ke)||!this.isVisible(ke)))return!1;let fe=Qe.nodeName.toLowerCase(),qe=xe(Qe);return Qe.hasAttribute("contenteditable")?-1!==qe:!("iframe"===fe||"object"===fe||this._platform.WEBKIT&&this._platform.IOS&&!function Me(Ot){let xt=Ot.nodeName.toLowerCase(),Qe="input"===xt&&Ot.type;return"text"===Qe||"password"===Qe||"select"===xt||"textarea"===xt}(Qe))&&("audio"===fe?!!Qe.hasAttribute("controls")&&-1!==qe:"video"===fe?-1!==qe&&(null!==qe||this._platform.FIREFOX||Qe.hasAttribute("controls")):Qe.tabIndex>=0)}isFocusable(Qe,ke){return function Ye(Ot){return!function le(Ot){return function Q(Ot){return"input"==Ot.nodeName.toLowerCase()}(Ot)&&"hidden"==Ot.type}(Ot)&&(function be(Ot){let xt=Ot.nodeName.toLowerCase();return"input"===xt||"select"===xt||"button"===xt||"textarea"===xt}(Ot)||function ce(Ot){return function ie(Ot){return"a"==Ot.nodeName.toLowerCase()}(Ot)&&Ot.hasAttribute("href")}(Ot)||Ot.hasAttribute("contenteditable")||ae(Ot))}(Qe)&&!this.isDisabled(Qe)&&(ke?.ignoreVisibility||this.isVisible(Qe))}static#e=this.\u0275fac=function(ke){return new(ke||Ot)(n.LFG(t.t4))};static#t=this.\u0275prov=n.Yz7({token:Ot,factory:Ot.\u0275fac,providedIn:"root"})}return Ot})();function ae(Ot){if(!Ot.hasAttribute("tabindex")||void 0===Ot.tabIndex)return!1;let xt=Ot.getAttribute("tabindex");return!(!xt||isNaN(parseInt(xt,10)))}function xe(Ot){if(!ae(Ot))return null;const xt=parseInt(Ot.getAttribute("tabindex")||"",10);return isNaN(xt)?-1:xt}class ye{get enabled(){return this._enabled}set enabled(xt){this._enabled=xt,this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(xt,this._startAnchor),this._toggleAnchorTabIndex(xt,this._endAnchor))}constructor(xt,Qe,ke,fe,qe=!1){this._element=xt,this._checker=Qe,this._ngZone=ke,this._document=fe,this._hasAttached=!1,this.startAnchorListener=()=>this.focusLastTabbableElement(),this.endAnchorListener=()=>this.focusFirstTabbableElement(),this._enabled=!0,qe||this.attachAnchors()}destroy(){const xt=this._startAnchor,Qe=this._endAnchor;xt&&(xt.removeEventListener("focus",this.startAnchorListener),xt.remove()),Qe&&(Qe.removeEventListener("focus",this.endAnchorListener),Qe.remove()),this._startAnchor=this._endAnchor=null,this._hasAttached=!1}attachAnchors(){return!!this._hasAttached||(this._ngZone.runOutsideAngular(()=>{this._startAnchor||(this._startAnchor=this._createAnchor(),this._startAnchor.addEventListener("focus",this.startAnchorListener)),this._endAnchor||(this._endAnchor=this._createAnchor(),this._endAnchor.addEventListener("focus",this.endAnchorListener))}),this._element.parentNode&&(this._element.parentNode.insertBefore(this._startAnchor,this._element),this._element.parentNode.insertBefore(this._endAnchor,this._element.nextSibling),this._hasAttached=!0),this._hasAttached)}focusInitialElementWhenReady(xt){return new Promise(Qe=>{this._executeOnStable(()=>Qe(this.focusInitialElement(xt)))})}focusFirstTabbableElementWhenReady(xt){return new Promise(Qe=>{this._executeOnStable(()=>Qe(this.focusFirstTabbableElement(xt)))})}focusLastTabbableElementWhenReady(xt){return new Promise(Qe=>{this._executeOnStable(()=>Qe(this.focusLastTabbableElement(xt)))})}_getRegionBoundary(xt){const Qe=this._element.querySelectorAll(`[cdk-focus-region-${xt}], [cdkFocusRegion${xt}], [cdk-focus-${xt}]`);return"start"==xt?Qe.length?Qe[0]:this._getFirstTabbableElement(this._element):Qe.length?Qe[Qe.length-1]:this._getLastTabbableElement(this._element)}focusInitialElement(xt){const Qe=this._element.querySelector("[cdk-focus-initial], [cdkFocusInitial]");if(Qe){if(!this._checker.isFocusable(Qe)){const ke=this._getFirstTabbableElement(Qe);return ke?.focus(xt),!!ke}return Qe.focus(xt),!0}return this.focusFirstTabbableElement(xt)}focusFirstTabbableElement(xt){const Qe=this._getRegionBoundary("start");return Qe&&Qe.focus(xt),!!Qe}focusLastTabbableElement(xt){const Qe=this._getRegionBoundary("end");return Qe&&Qe.focus(xt),!!Qe}hasAttached(){return this._hasAttached}_getFirstTabbableElement(xt){if(this._checker.isFocusable(xt)&&this._checker.isTabbable(xt))return xt;const Qe=xt.children;for(let ke=0;ke=0;ke--){const fe=Qe[ke].nodeType===this._document.ELEMENT_NODE?this._getLastTabbableElement(Qe[ke]):null;if(fe)return fe}return null}_createAnchor(){const xt=this._document.createElement("div");return this._toggleAnchorTabIndex(this._enabled,xt),xt.classList.add("cdk-visually-hidden"),xt.classList.add("cdk-focus-trap-anchor"),xt.setAttribute("aria-hidden","true"),xt}_toggleAnchorTabIndex(xt,Qe){xt?Qe.setAttribute("tabindex","0"):Qe.removeAttribute("tabindex")}toggleAnchors(xt){this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(xt,this._startAnchor),this._toggleAnchorTabIndex(xt,this._endAnchor))}_executeOnStable(xt){this._ngZone.isStable?xt():this._ngZone.onStable.pipe((0,g.q)(1)).subscribe(xt)}}let ee=(()=>{class Ot{constructor(Qe,ke,fe){this._checker=Qe,this._ngZone=ke,this._document=fe}create(Qe,ke=!1){return new ye(Qe,this._checker,this._ngZone,this._document,ke)}static#e=this.\u0275fac=function(ke){return new(ke||Ot)(n.LFG(ne),n.LFG(n.R0b),n.LFG(e.K0))};static#t=this.\u0275prov=n.Yz7({token:Ot,factory:Ot.\u0275fac,providedIn:"root"})}return Ot})(),Be=(()=>{class Ot{get enabled(){return this.focusTrap.enabled}set enabled(Qe){this.focusTrap.enabled=(0,y.Ig)(Qe)}get autoCapture(){return this._autoCapture}set autoCapture(Qe){this._autoCapture=(0,y.Ig)(Qe)}constructor(Qe,ke,fe){this._elementRef=Qe,this._focusTrapFactory=ke,this._previouslyFocusedElement=null,this.focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement,!0)}ngOnDestroy(){this.focusTrap.destroy(),this._previouslyFocusedElement&&(this._previouslyFocusedElement.focus(),this._previouslyFocusedElement=null)}ngAfterContentInit(){this.focusTrap.attachAnchors(),this.autoCapture&&this._captureFocus()}ngDoCheck(){this.focusTrap.hasAttached()||this.focusTrap.attachAnchors()}ngOnChanges(Qe){const ke=Qe.autoCapture;ke&&!ke.firstChange&&this.autoCapture&&this.focusTrap.hasAttached()&&this._captureFocus()}_captureFocus(){this._previouslyFocusedElement=(0,t.ht)(),this.focusTrap.focusInitialElementWhenReady()}static#e=this.\u0275fac=function(ke){return new(ke||Ot)(n.Y36(n.SBq),n.Y36(ee),n.Y36(e.K0))};static#t=this.\u0275dir=n.lG2({type:Ot,selectors:[["","cdkTrapFocus",""]],inputs:{enabled:["cdkTrapFocus","enabled"],autoCapture:["cdkTrapFocusAutoCapture","autoCapture"]},exportAs:["cdkTrapFocus"],features:[n.TTD]})}return Ot})();function ot(Ot){return 0===Ot.buttons||0===Ot.offsetX&&0===Ot.offsetY}function mt(Ot){const xt=Ot.touches&&Ot.touches[0]||Ot.changedTouches&&Ot.changedTouches[0];return!(!xt||-1!==xt.identifier||null!=xt.radiusX&&1!==xt.radiusX||null!=xt.radiusY&&1!==xt.radiusY)}const we=new n.OlP("cdk-input-modality-detector-options"),de={ignoreKeys:[u.zL,u.jx,u.b2,u.MW,u.JU]},B=(0,t.i$)({passive:!0,capture:!0});let Ee=(()=>{class Ot{get mostRecentModality(){return this._modality.value}constructor(Qe,ke,fe,qe){this._platform=Qe,this._mostRecentTarget=null,this._modality=new C.X(null),this._lastTouchMs=0,this._onKeydown=ge=>{this._options?.ignoreKeys?.some(Ze=>Ze===ge.keyCode)||(this._modality.next("keyboard"),this._mostRecentTarget=(0,t.sA)(ge))},this._onMousedown=ge=>{Date.now()-this._lastTouchMs<650||(this._modality.next(ot(ge)?"keyboard":"mouse"),this._mostRecentTarget=(0,t.sA)(ge))},this._onTouchstart=ge=>{mt(ge)?this._modality.next("keyboard"):(this._lastTouchMs=Date.now(),this._modality.next("touch"),this._mostRecentTarget=(0,t.sA)(ge))},this._options={...de,...qe},this.modalityDetected=this._modality.pipe((0,d.T)(1)),this.modalityChanged=this.modalityDetected.pipe((0,p.x)()),Qe.isBrowser&&ke.runOutsideAngular(()=>{fe.addEventListener("keydown",this._onKeydown,B),fe.addEventListener("mousedown",this._onMousedown,B),fe.addEventListener("touchstart",this._onTouchstart,B)})}ngOnDestroy(){this._modality.complete(),this._platform.isBrowser&&(document.removeEventListener("keydown",this._onKeydown,B),document.removeEventListener("mousedown",this._onMousedown,B),document.removeEventListener("touchstart",this._onTouchstart,B))}static#e=this.\u0275fac=function(ke){return new(ke||Ot)(n.LFG(t.t4),n.LFG(n.R0b),n.LFG(e.K0),n.LFG(we,8))};static#t=this.\u0275prov=n.Yz7({token:Ot,factory:Ot.\u0275fac,providedIn:"root"})}return Ot})();const qt=new n.OlP("cdk-focus-monitor-default-options"),en=(0,t.i$)({passive:!0,capture:!0});let cn=(()=>{class Ot{constructor(Qe,ke,fe,qe,ge){this._ngZone=Qe,this._platform=ke,this._inputModalityDetector=fe,this._origin=null,this._windowFocused=!1,this._originFromTouchInteraction=!1,this._elementInfo=new Map,this._monitoredElementCount=0,this._rootNodeFocusListenerCount=new Map,this._windowFocusListener=()=>{this._windowFocused=!0,this._windowFocusTimeoutId=window.setTimeout(()=>this._windowFocused=!1)},this._stopInputModalityDetector=new i.x,this._rootNodeFocusAndBlurListener=Ze=>{for(let Ue=(0,t.sA)(Ze);Ue;Ue=Ue.parentElement)"focus"===Ze.type?this._onFocus(Ze,Ue):this._onBlur(Ze,Ue)},this._document=qe,this._detectionMode=ge?.detectionMode||0}monitor(Qe,ke=!1){const fe=(0,y.fI)(Qe);if(!this._platform.isBrowser||1!==fe.nodeType)return(0,E.of)();const qe=(0,t.kV)(fe)||this._getDocument(),ge=this._elementInfo.get(fe);if(ge)return ke&&(ge.checkChildren=!0),ge.subject;const Ze={checkChildren:ke,subject:new i.x,rootNode:qe};return this._elementInfo.set(fe,Ze),this._registerGlobalListeners(Ze),Ze.subject}stopMonitoring(Qe){const ke=(0,y.fI)(Qe),fe=this._elementInfo.get(ke);fe&&(fe.subject.complete(),this._setClasses(ke),this._elementInfo.delete(ke),this._removeGlobalListeners(fe))}focusVia(Qe,ke,fe){const qe=(0,y.fI)(Qe);qe===this._getDocument().activeElement?this._getClosestElementsInfo(qe).forEach(([Ze,$e])=>this._originChanged(Ze,ke,$e)):(this._setOrigin(ke),"function"==typeof qe.focus&&qe.focus(fe))}ngOnDestroy(){this._elementInfo.forEach((Qe,ke)=>this.stopMonitoring(ke))}_getDocument(){return this._document||document}_getWindow(){return this._getDocument().defaultView||window}_getFocusOrigin(Qe){return this._origin?this._originFromTouchInteraction?this._shouldBeAttributedToTouch(Qe)?"touch":"program":this._origin:this._windowFocused&&this._lastFocusOrigin?this._lastFocusOrigin:Qe&&this._isLastInteractionFromInputLabel(Qe)?"mouse":"program"}_shouldBeAttributedToTouch(Qe){return 1===this._detectionMode||!!Qe?.contains(this._inputModalityDetector._mostRecentTarget)}_setClasses(Qe,ke){Qe.classList.toggle("cdk-focused",!!ke),Qe.classList.toggle("cdk-touch-focused","touch"===ke),Qe.classList.toggle("cdk-keyboard-focused","keyboard"===ke),Qe.classList.toggle("cdk-mouse-focused","mouse"===ke),Qe.classList.toggle("cdk-program-focused","program"===ke)}_setOrigin(Qe,ke=!1){this._ngZone.runOutsideAngular(()=>{this._origin=Qe,this._originFromTouchInteraction="touch"===Qe&&ke,0===this._detectionMode&&(clearTimeout(this._originTimeoutId),this._originTimeoutId=setTimeout(()=>this._origin=null,this._originFromTouchInteraction?650:1))})}_onFocus(Qe,ke){const fe=this._elementInfo.get(ke),qe=(0,t.sA)(Qe);!fe||!fe.checkChildren&&ke!==qe||this._originChanged(ke,this._getFocusOrigin(qe),fe)}_onBlur(Qe,ke){const fe=this._elementInfo.get(ke);!fe||fe.checkChildren&&Qe.relatedTarget instanceof Node&&ke.contains(Qe.relatedTarget)||(this._setClasses(ke),this._emitOrigin(fe,null))}_emitOrigin(Qe,ke){Qe.subject.observers.length&&this._ngZone.run(()=>Qe.subject.next(ke))}_registerGlobalListeners(Qe){if(!this._platform.isBrowser)return;const ke=Qe.rootNode,fe=this._rootNodeFocusListenerCount.get(ke)||0;fe||this._ngZone.runOutsideAngular(()=>{ke.addEventListener("focus",this._rootNodeFocusAndBlurListener,en),ke.addEventListener("blur",this._rootNodeFocusAndBlurListener,en)}),this._rootNodeFocusListenerCount.set(ke,fe+1),1==++this._monitoredElementCount&&(this._ngZone.runOutsideAngular(()=>{this._getWindow().addEventListener("focus",this._windowFocusListener)}),this._inputModalityDetector.modalityDetected.pipe((0,f.R)(this._stopInputModalityDetector)).subscribe(qe=>{this._setOrigin(qe,!0)}))}_removeGlobalListeners(Qe){const ke=Qe.rootNode;if(this._rootNodeFocusListenerCount.has(ke)){const fe=this._rootNodeFocusListenerCount.get(ke);fe>1?this._rootNodeFocusListenerCount.set(ke,fe-1):(ke.removeEventListener("focus",this._rootNodeFocusAndBlurListener,en),ke.removeEventListener("blur",this._rootNodeFocusAndBlurListener,en),this._rootNodeFocusListenerCount.delete(ke))}--this._monitoredElementCount||(this._getWindow().removeEventListener("focus",this._windowFocusListener),this._stopInputModalityDetector.next(),clearTimeout(this._windowFocusTimeoutId),clearTimeout(this._originTimeoutId))}_originChanged(Qe,ke,fe){this._setClasses(Qe,ke),this._emitOrigin(fe,ke),this._lastFocusOrigin=ke}_getClosestElementsInfo(Qe){const ke=[];return this._elementInfo.forEach((fe,qe)=>{(qe===Qe||fe.checkChildren&&qe.contains(Qe))&&ke.push([qe,fe])}),ke}_isLastInteractionFromInputLabel(Qe){const{_mostRecentTarget:ke,mostRecentModality:fe}=this._inputModalityDetector;if("mouse"!==fe||!ke||ke===Qe||"INPUT"!==Qe.nodeName&&"TEXTAREA"!==Qe.nodeName||Qe.disabled)return!1;const qe=Qe.labels;if(qe)for(let ge=0;ge{class Ot{constructor(Qe,ke){this._elementRef=Qe,this._focusMonitor=ke,this._focusOrigin=null,this.cdkFocusChange=new n.vpe}get focusOrigin(){return this._focusOrigin}ngAfterViewInit(){const Qe=this._elementRef.nativeElement;this._monitorSubscription=this._focusMonitor.monitor(Qe,1===Qe.nodeType&&Qe.hasAttribute("cdkMonitorSubtreeFocus")).subscribe(ke=>{this._focusOrigin=ke,this.cdkFocusChange.emit(ke)})}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef),this._monitorSubscription&&this._monitorSubscription.unsubscribe()}static#e=this.\u0275fac=function(ke){return new(ke||Ot)(n.Y36(n.SBq),n.Y36(cn))};static#t=this.\u0275dir=n.lG2({type:Ot,selectors:[["","cdkMonitorElementFocus",""],["","cdkMonitorSubtreeFocus",""]],outputs:{cdkFocusChange:"cdkFocusChange"},exportAs:["cdkMonitorFocus"]})}return Ot})();const Vt="cdk-high-contrast-black-on-white",st="cdk-high-contrast-white-on-black",He="cdk-high-contrast-active";let et=(()=>{class Ot{constructor(Qe,ke){this._platform=Qe,this._document=ke,this._breakpointSubscription=(0,n.f3M)(x.Yg).observe("(forced-colors: active)").subscribe(()=>{this._hasCheckedHighContrastMode&&(this._hasCheckedHighContrastMode=!1,this._applyBodyHighContrastModeCssClasses())})}getHighContrastMode(){if(!this._platform.isBrowser)return 0;const Qe=this._document.createElement("div");Qe.style.backgroundColor="rgb(1,2,3)",Qe.style.position="absolute",this._document.body.appendChild(Qe);const ke=this._document.defaultView||window,fe=ke&&ke.getComputedStyle?ke.getComputedStyle(Qe):null,qe=(fe&&fe.backgroundColor||"").replace(/ /g,"");switch(Qe.remove(),qe){case"rgb(0,0,0)":case"rgb(45,50,54)":case"rgb(32,32,32)":return 2;case"rgb(255,255,255)":case"rgb(255,250,239)":return 1}return 0}ngOnDestroy(){this._breakpointSubscription.unsubscribe()}_applyBodyHighContrastModeCssClasses(){if(!this._hasCheckedHighContrastMode&&this._platform.isBrowser&&this._document.body){const Qe=this._document.body.classList;Qe.remove(He,Vt,st),this._hasCheckedHighContrastMode=!0;const ke=this.getHighContrastMode();1===ke?Qe.add(He,Vt):2===ke&&Qe.add(He,st)}}static#e=this.\u0275fac=function(ke){return new(ke||Ot)(n.LFG(t.t4),n.LFG(e.K0))};static#t=this.\u0275prov=n.Yz7({token:Ot,factory:Ot.\u0275fac,providedIn:"root"})}return Ot})(),It=(()=>{class Ot{constructor(Qe){Qe._applyBodyHighContrastModeCssClasses()}static#e=this.\u0275fac=function(ke){return new(ke||Ot)(n.LFG(et))};static#t=this.\u0275mod=n.oAB({type:Ot});static#n=this.\u0275inj=n.cJS({imports:[T.Q8]})}return Ot})()},49388:(nt,I,o)=>{"use strict";o.d(I,{Is:()=>E,Lv:()=>u,vT:()=>z});var e=o(65879),n=o(96814);const t=new e.OlP("cdk-dir-doc",{providedIn:"root",factory:function i(){return(0,e.f3M)(n.K0)}}),l=/^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i;function C(M){const h=M?.toLowerCase()||"";return"auto"===h&&typeof navigator<"u"&&navigator?.language?l.test(navigator.language)?"rtl":"ltr":"rtl"===h?"rtl":"ltr"}let E=(()=>{class M{constructor(v){this.value="ltr",this.change=new e.vpe,v&&(this.value=C((v.body?v.body.dir:null)||(v.documentElement?v.documentElement.dir:null)||"ltr"))}ngOnDestroy(){this.change.complete()}static#e=this.\u0275fac=function(g){return new(g||M)(e.LFG(t,8))};static#t=this.\u0275prov=e.Yz7({token:M,factory:M.\u0275fac,providedIn:"root"})}return M})(),u=(()=>{class M{constructor(){this._dir="ltr",this._isInitialized=!1,this.change=new e.vpe}get dir(){return this._dir}set dir(v){const g=this._dir;this._dir=C(v),this._rawDir=v,g!==this._dir&&this._isInitialized&&this.change.emit(this._dir)}get value(){return this.dir}ngAfterContentInit(){this._isInitialized=!0}ngOnDestroy(){this.change.complete()}static#e=this.\u0275fac=function(g){return new(g||M)};static#t=this.\u0275dir=e.lG2({type:M,selectors:[["","dir",""]],hostVars:1,hostBindings:function(g,d){2&g&&e.uIk("dir",d._rawDir)},inputs:{dir:"dir"},outputs:{change:"dirChange"},exportAs:["dir"],features:[e._Bn([{provide:E,useExisting:M}])]})}return M})(),z=(()=>{class M{static#e=this.\u0275fac=function(g){return new(g||M)};static#t=this.\u0275mod=e.oAB({type:M});static#n=this.\u0275inj=e.cJS({})}return M})()},42495:(nt,I,o)=>{"use strict";o.d(I,{Eq:()=>l,HM:()=>C,Ig:()=>n,fI:()=>E,su:()=>t,t6:()=>i});var e=o(65879);function n(z){return null!=z&&"false"!=`${z}`}function t(z,M=0){return i(z)?Number(z):M}function i(z){return!isNaN(parseFloat(z))&&!isNaN(Number(z))}function l(z){return Array.isArray(z)?z:[z]}function C(z){return null==z?"":"string"==typeof z?z:`${z}px`}function E(z){return z instanceof e.SBq?z.nativeElement:z}},34423:(nt,I,o)=>{"use strict";o.d(I,{Bh:()=>pt,Zt:()=>Vt,_t:()=>xt,v0:()=>B});var e=o(65879),n=o(96814),t=o(205),i=o(62831),l=o(42495),C=o(4300),E=o(78645),u=o(47394),z=o(91687),M=o(80927),h=o(65592),v=o(63019),g=o(59773),d=o(37398),p=o(48180),f=o(27921),y=o(99397),T=o(94664),x=o(49388);function D(Qe,ke,fe){for(let qe in ke)if(ke.hasOwnProperty(qe)){const ge=ke[qe];ge?Qe.setProperty(qe,ge,fe?.has(qe)?"important":""):Qe.removeProperty(qe)}return Qe}function _(Qe,ke){const fe=ke?"":"none";D(Qe.style,{"touch-action":ke?"":"none","-webkit-user-drag":ke?"":"none","-webkit-tap-highlight-color":ke?"":"transparent","user-select":fe,"-ms-user-select":fe,"-webkit-user-select":fe,"-moz-user-select":fe})}function P(Qe,ke,fe){D(Qe.style,{position:ke?"":"fixed",top:ke?"":"0",opacity:ke?"":"0",left:ke?"":"-999em"},fe)}function O(Qe,ke){return ke&&"none"!=ke?Qe+" "+ke:Qe}function A(Qe){const ke=Qe.toLowerCase().indexOf("ms")>-1?1:1e3;return parseFloat(Qe)*ke}function F(Qe,ke){return Qe.getPropertyValue(ke).split(",").map(qe=>qe.trim())}function W(Qe){const ke=Qe.getBoundingClientRect();return{top:ke.top,right:ke.right,bottom:ke.bottom,left:ke.left,width:ke.width,height:ke.height,x:ke.x,y:ke.y}}function K(Qe,ke,fe){const{top:qe,bottom:ge,left:Ze,right:$e}=Qe;return fe>=qe&&fe<=ge&&ke>=Ze&&ke<=$e}function _e(Qe,ke,fe){Qe.top+=ke,Qe.bottom=Qe.top+Qe.height,Qe.left+=fe,Qe.right=Qe.left+Qe.width}function Y(Qe,ke,fe,qe){const{top:ge,right:Ze,bottom:$e,left:Ue,width:wt,height:De}=Qe,Pe=wt*ke,Je=De*ke;return qe>ge-Je&&qe<$e+Je&&fe>Ue-Pe&&fe{this.positions.set(fe,{scrollPosition:{top:fe.scrollTop,left:fe.scrollLeft},clientRect:W(fe)})})}handleScroll(ke){const fe=(0,i.sA)(ke),qe=this.positions.get(fe);if(!qe)return null;const ge=qe.scrollPosition;let Ze,$e;if(fe===this._document){const De=this.getViewportScrollPosition();Ze=De.top,$e=De.left}else Ze=fe.scrollTop,$e=fe.scrollLeft;const Ue=ge.top-Ze,wt=ge.left-$e;return this.positions.forEach((De,Pe)=>{De.clientRect&&fe!==Pe&&fe.contains(Pe)&&_e(De.clientRect,Ue,wt)}),ge.top=Ze,ge.left=$e,{top:Ue,left:wt}}getViewportScrollPosition(){return{top:window.scrollY,left:window.scrollX}}}function H(Qe){const ke=Qe.cloneNode(!0),fe=ke.querySelectorAll("[id]"),qe=Qe.nodeName.toLowerCase();ke.removeAttribute("id");for(let ge=0;ge_(qe,fe)))}constructor(ke,fe,qe,ge,Ze,$e){this._config=fe,this._document=qe,this._ngZone=ge,this._viewportRuler=Ze,this._dragDropRegistry=$e,this._passiveTransform={x:0,y:0},this._activeTransform={x:0,y:0},this._hasStartedDragging=!1,this._moveEvents=new E.x,this._pointerMoveSubscription=u.w0.EMPTY,this._pointerUpSubscription=u.w0.EMPTY,this._scrollSubscription=u.w0.EMPTY,this._resizeSubscription=u.w0.EMPTY,this._boundaryElement=null,this._nativeInteractionsEnabled=!0,this._handles=[],this._disabledHandles=new Set,this._direction="ltr",this.dragStartDelay=0,this._disabled=!1,this.beforeStarted=new E.x,this.started=new E.x,this.released=new E.x,this.ended=new E.x,this.entered=new E.x,this.exited=new E.x,this.dropped=new E.x,this.moved=this._moveEvents,this._pointerDown=Ue=>{if(this.beforeStarted.next(),this._handles.length){const wt=this._getTargetHandle(Ue);wt&&!this._disabledHandles.has(wt)&&!this.disabled&&this._initializeDragSequence(wt,Ue)}else this.disabled||this._initializeDragSequence(this._rootElement,Ue)},this._pointerMove=Ue=>{const wt=this._getPointerPositionOnPage(Ue);if(!this._hasStartedDragging){if(Math.abs(wt.x-this._pickupPositionOnPage.x)+Math.abs(wt.y-this._pickupPositionOnPage.y)>=this._config.dragStartThreshold){const Ke=Date.now()>=this._dragStartTime+this._getDragStartDelay(Ue),ve=this._dropContainer;if(!Ke)return void this._endDragSequence(Ue);(!ve||!ve.isDragging()&&!ve.isReceiving())&&(Ue.preventDefault(),this._hasStartedDragging=!0,this._ngZone.run(()=>this._startDragSequence(Ue)))}return}Ue.preventDefault();const De=this._getConstrainedPointerPosition(wt);if(this._hasMoved=!0,this._lastKnownPointerPosition=wt,this._updatePointerDirectionDelta(De),this._dropContainer)this._updateActiveDropContainer(De,wt);else{const Pe=this.constrainPosition?this._initialClientRect:this._pickupPositionOnPage,Je=this._activeTransform;Je.x=De.x-Pe.x+this._passiveTransform.x,Je.y=De.y-Pe.y+this._passiveTransform.y,this._applyRootElementTransform(Je.x,Je.y)}this._moveEvents.observers.length&&this._ngZone.run(()=>{this._moveEvents.next({source:this,pointerPosition:De,event:Ue,distance:this._getDragDistance(De),delta:this._pointerDirectionDelta})})},this._pointerUp=Ue=>{this._endDragSequence(Ue)},this._nativeDragStart=Ue=>{if(this._handles.length){const wt=this._getTargetHandle(Ue);wt&&!this._disabledHandles.has(wt)&&!this.disabled&&Ue.preventDefault()}else this.disabled||Ue.preventDefault()},this.withRootElement(ke).withParent(fe.parentDragRef||null),this._parentPositions=new G(qe),$e.registerDragItem(this)}getPlaceholderElement(){return this._placeholder}getRootElement(){return this._rootElement}getVisibleElement(){return this.isDragging()?this.getPlaceholderElement():this.getRootElement()}withHandles(ke){this._handles=ke.map(qe=>(0,l.fI)(qe)),this._handles.forEach(qe=>_(qe,this.disabled)),this._toggleNativeDragInteractions();const fe=new Set;return this._disabledHandles.forEach(qe=>{this._handles.indexOf(qe)>-1&&fe.add(qe)}),this._disabledHandles=fe,this}withPreviewTemplate(ke){return this._previewTemplate=ke,this}withPlaceholderTemplate(ke){return this._placeholderTemplate=ke,this}withRootElement(ke){const fe=(0,l.fI)(ke);return fe!==this._rootElement&&(this._rootElement&&this._removeRootElementListeners(this._rootElement),this._ngZone.runOutsideAngular(()=>{fe.addEventListener("mousedown",this._pointerDown,be),fe.addEventListener("touchstart",this._pointerDown,re),fe.addEventListener("dragstart",this._nativeDragStart,be)}),this._initialTransform=void 0,this._rootElement=fe),typeof SVGElement<"u"&&this._rootElement instanceof SVGElement&&(this._ownerSVGElement=this._rootElement.ownerSVGElement),this}withBoundaryElement(ke){return this._boundaryElement=ke?(0,l.fI)(ke):null,this._resizeSubscription.unsubscribe(),ke&&(this._resizeSubscription=this._viewportRuler.change(10).subscribe(()=>this._containInsideBoundaryOnResize())),this}withParent(ke){return this._parentDragRef=ke,this}dispose(){this._removeRootElementListeners(this._rootElement),this.isDragging()&&this._rootElement?.remove(),this._anchor?.remove(),this._destroyPreview(),this._destroyPlaceholder(),this._dragDropRegistry.removeDragItem(this),this._removeSubscriptions(),this.beforeStarted.complete(),this.started.complete(),this.released.complete(),this.ended.complete(),this.entered.complete(),this.exited.complete(),this.dropped.complete(),this._moveEvents.complete(),this._handles=[],this._disabledHandles.clear(),this._dropContainer=void 0,this._resizeSubscription.unsubscribe(),this._parentPositions.clear(),this._boundaryElement=this._rootElement=this._ownerSVGElement=this._placeholderTemplate=this._previewTemplate=this._anchor=this._parentDragRef=null}isDragging(){return this._hasStartedDragging&&this._dragDropRegistry.isDragging(this)}reset(){this._rootElement.style.transform=this._initialTransform||"",this._activeTransform={x:0,y:0},this._passiveTransform={x:0,y:0}}disableHandle(ke){!this._disabledHandles.has(ke)&&this._handles.indexOf(ke)>-1&&(this._disabledHandles.add(ke),_(ke,!0))}enableHandle(ke){this._disabledHandles.has(ke)&&(this._disabledHandles.delete(ke),_(ke,this.disabled))}withDirection(ke){return this._direction=ke,this}_withDropContainer(ke){this._dropContainer=ke}getFreeDragPosition(){const ke=this.isDragging()?this._activeTransform:this._passiveTransform;return{x:ke.x,y:ke.y}}setFreeDragPosition(ke){return this._activeTransform={x:0,y:0},this._passiveTransform.x=ke.x,this._passiveTransform.y=ke.y,this._dropContainer||this._applyRootElementTransform(ke.x,ke.y),this}withPreviewContainer(ke){return this._previewContainer=ke,this}_sortFromLastPointerPosition(){const ke=this._lastKnownPointerPosition;ke&&this._dropContainer&&this._updateActiveDropContainer(this._getConstrainedPointerPosition(ke),ke)}_removeSubscriptions(){this._pointerMoveSubscription.unsubscribe(),this._pointerUpSubscription.unsubscribe(),this._scrollSubscription.unsubscribe()}_destroyPreview(){this._preview?.remove(),this._previewRef?.destroy(),this._preview=this._previewRef=null}_destroyPlaceholder(){this._placeholder?.remove(),this._placeholderRef?.destroy(),this._placeholder=this._placeholderRef=null}_endDragSequence(ke){if(this._dragDropRegistry.isDragging(this)&&(this._removeSubscriptions(),this._dragDropRegistry.stopDragging(this),this._toggleNativeDragInteractions(),this._handles&&(this._rootElement.style.webkitTapHighlightColor=this._rootElementTapHighlight),this._hasStartedDragging))if(this.released.next({source:this,event:ke}),this._dropContainer)this._dropContainer._stopScrolling(),this._animatePreviewToPlaceholder().then(()=>{this._cleanupDragArtifacts(ke),this._cleanupCachedDimensions(),this._dragDropRegistry.stopDragging(this)});else{this._passiveTransform.x=this._activeTransform.x;const fe=this._getPointerPositionOnPage(ke);this._passiveTransform.y=this._activeTransform.y,this._ngZone.run(()=>{this.ended.next({source:this,distance:this._getDragDistance(fe),dropPoint:fe,event:ke})}),this._cleanupCachedDimensions(),this._dragDropRegistry.stopDragging(this)}}_startDragSequence(ke){xe(ke)&&(this._lastTouchEventTime=Date.now()),this._toggleNativeDragInteractions();const fe=this._dropContainer;if(fe){const qe=this._rootElement,ge=qe.parentNode,Ze=this._placeholder=this._createPlaceholderElement(),$e=this._anchor=this._anchor||this._document.createComment(""),Ue=this._getShadowRoot();ge.insertBefore($e,qe),this._initialTransform=qe.style.transform||"",this._preview=this._createPreviewElement(),P(qe,!1,ce),this._document.body.appendChild(ge.replaceChild(Ze,qe)),this._getPreviewInsertionPoint(ge,Ue).appendChild(this._preview),this.started.next({source:this,event:ke}),fe.start(),this._initialContainer=fe,this._initialIndex=fe.getItemIndex(this)}else this.started.next({source:this,event:ke}),this._initialContainer=this._initialIndex=void 0;this._parentPositions.cache(fe?fe.getScrollableParents():[])}_initializeDragSequence(ke,fe){this._parentDragRef&&fe.stopPropagation();const qe=this.isDragging(),ge=xe(fe),Ze=!ge&&0!==fe.button,$e=this._rootElement,Ue=(0,i.sA)(fe),wt=!ge&&this._lastTouchEventTime&&this._lastTouchEventTime+800>Date.now(),De=ge?(0,C.yG)(fe):(0,C.X6)(fe);if(Ue&&Ue.draggable&&"mousedown"===fe.type&&fe.preventDefault(),qe||Ze||wt||De)return;if(this._handles.length){const Ge=$e.style;this._rootElementTapHighlight=Ge.webkitTapHighlightColor||"",Ge.webkitTapHighlightColor="transparent"}this._hasStartedDragging=this._hasMoved=!1,this._removeSubscriptions(),this._initialClientRect=this._rootElement.getBoundingClientRect(),this._pointerMoveSubscription=this._dragDropRegistry.pointerMove.subscribe(this._pointerMove),this._pointerUpSubscription=this._dragDropRegistry.pointerUp.subscribe(this._pointerUp),this._scrollSubscription=this._dragDropRegistry.scrolled(this._getShadowRoot()).subscribe(Ge=>this._updateOnScroll(Ge)),this._boundaryElement&&(this._boundaryRect=W(this._boundaryElement));const Pe=this._previewTemplate;this._pickupPositionInElement=Pe&&Pe.template&&!Pe.matchSize?{x:0,y:0}:this._getPointerPositionInElement(this._initialClientRect,ke,fe);const Je=this._pickupPositionOnPage=this._lastKnownPointerPosition=this._getPointerPositionOnPage(fe);this._pointerDirectionDelta={x:0,y:0},this._pointerPositionAtLastDirectionChange={x:Je.x,y:Je.y},this._dragStartTime=Date.now(),this._dragDropRegistry.startDragging(this,fe)}_cleanupDragArtifacts(ke){P(this._rootElement,!0,ce),this._anchor.parentNode.replaceChild(this._rootElement,this._anchor),this._destroyPreview(),this._destroyPlaceholder(),this._initialClientRect=this._boundaryRect=this._previewRect=this._initialTransform=void 0,this._ngZone.run(()=>{const fe=this._dropContainer,qe=fe.getItemIndex(this),ge=this._getPointerPositionOnPage(ke),Ze=this._getDragDistance(ge),$e=fe._isOverContainer(ge.x,ge.y);this.ended.next({source:this,distance:Ze,dropPoint:ge,event:ke}),this.dropped.next({item:this,currentIndex:qe,previousIndex:this._initialIndex,container:fe,previousContainer:this._initialContainer,isPointerOverContainer:$e,distance:Ze,dropPoint:ge,event:ke}),fe.drop(this,qe,this._initialIndex,this._initialContainer,$e,Ze,ge,ke),this._dropContainer=this._initialContainer})}_updateActiveDropContainer({x:ke,y:fe},{x:qe,y:ge}){let Ze=this._initialContainer._getSiblingContainerFromPosition(this,ke,fe);!Ze&&this._dropContainer!==this._initialContainer&&this._initialContainer._isOverContainer(ke,fe)&&(Ze=this._initialContainer),Ze&&Ze!==this._dropContainer&&this._ngZone.run(()=>{this.exited.next({item:this,container:this._dropContainer}),this._dropContainer.exit(this),this._dropContainer=Ze,this._dropContainer.enter(this,ke,fe,Ze===this._initialContainer&&Ze.sortingDisabled?this._initialIndex:void 0),this.entered.next({item:this,container:Ze,currentIndex:Ze.getItemIndex(this)})}),this.isDragging()&&(this._dropContainer._startScrollingIfNecessary(qe,ge),this._dropContainer._sortItem(this,ke,fe,this._pointerDirectionDelta),this.constrainPosition?this._applyPreviewTransform(ke,fe):this._applyPreviewTransform(ke-this._pickupPositionInElement.x,fe-this._pickupPositionInElement.y))}_createPreviewElement(){const ke=this._previewTemplate,fe=this.previewClass,qe=ke?ke.template:null;let ge;if(qe&&ke){const Ze=ke.matchSize?this._initialClientRect:null,$e=ke.viewContainer.createEmbeddedView(qe,ke.context);$e.detectChanges(),ge=Me($e,this._document),this._previewRef=$e,ke.matchSize?Ye(ge,Ze):ge.style.transform=ie(this._pickupPositionOnPage.x,this._pickupPositionOnPage.y)}else ge=H(this._rootElement),Ye(ge,this._initialClientRect),this._initialTransform&&(ge.style.transform=this._initialTransform);return D(ge.style,{"pointer-events":"none",margin:"0",position:"fixed",top:"0",left:"0","z-index":`${this._config.zIndex||1e3}`},ce),_(ge,!1),ge.classList.add("cdk-drag-preview"),ge.setAttribute("dir",this._direction),fe&&(Array.isArray(fe)?fe.forEach(Ze=>ge.classList.add(Ze)):ge.classList.add(fe)),ge}_animatePreviewToPlaceholder(){if(!this._hasMoved)return Promise.resolve();const ke=this._placeholder.getBoundingClientRect();this._preview.classList.add("cdk-drag-animating"),this._applyPreviewTransform(ke.left,ke.top);const fe=function k(Qe){const ke=getComputedStyle(Qe),fe=F(ke,"transition-property"),qe=fe.find(Ue=>"transform"===Ue||"all"===Ue);if(!qe)return 0;const ge=fe.indexOf(qe),Ze=F(ke,"transition-duration"),$e=F(ke,"transition-delay");return A(Ze[ge])+A($e[ge])}(this._preview);return 0===fe?Promise.resolve():this._ngZone.runOutsideAngular(()=>new Promise(qe=>{const ge=$e=>{(!$e||(0,i.sA)($e)===this._preview&&"transform"===$e.propertyName)&&(this._preview?.removeEventListener("transitionend",ge),qe(),clearTimeout(Ze))},Ze=setTimeout(ge,1.5*fe);this._preview.addEventListener("transitionend",ge)}))}_createPlaceholderElement(){const ke=this._placeholderTemplate,fe=ke?ke.template:null;let qe;return fe?(this._placeholderRef=ke.viewContainer.createEmbeddedView(fe,ke.context),this._placeholderRef.detectChanges(),qe=Me(this._placeholderRef,this._document)):qe=H(this._rootElement),qe.style.pointerEvents="none",qe.classList.add("cdk-drag-placeholder"),qe}_getPointerPositionInElement(ke,fe,qe){const ge=fe===this._rootElement?null:fe,Ze=ge?ge.getBoundingClientRect():ke,$e=xe(qe)?qe.targetTouches[0]:qe,Ue=this._getViewportScrollPosition();return{x:Ze.left-ke.left+($e.pageX-Ze.left-Ue.left),y:Ze.top-ke.top+($e.pageY-Ze.top-Ue.top)}}_getPointerPositionOnPage(ke){const fe=this._getViewportScrollPosition(),qe=xe(ke)?ke.touches[0]||ke.changedTouches[0]||{pageX:0,pageY:0}:ke,ge=qe.pageX-fe.left,Ze=qe.pageY-fe.top;if(this._ownerSVGElement){const $e=this._ownerSVGElement.getScreenCTM();if($e){const Ue=this._ownerSVGElement.createSVGPoint();return Ue.x=ge,Ue.y=Ze,Ue.matrixTransform($e.inverse())}}return{x:ge,y:Ze}}_getConstrainedPointerPosition(ke){const fe=this._dropContainer?this._dropContainer.lockAxis:null;let{x:qe,y:ge}=this.constrainPosition?this.constrainPosition(ke,this,this._initialClientRect,this._pickupPositionInElement):ke;if("x"===this.lockAxis||"x"===fe?ge=this._pickupPositionOnPage.y-(this.constrainPosition?this._pickupPositionInElement.y:0):("y"===this.lockAxis||"y"===fe)&&(qe=this._pickupPositionOnPage.x-(this.constrainPosition?this._pickupPositionInElement.x:0)),this._boundaryRect){const{x:Ze,y:$e}=this.constrainPosition?{x:0,y:0}:this._pickupPositionInElement,Ue=this._boundaryRect,{width:wt,height:De}=this._getPreviewRect(),Pe=Ue.top+$e,Je=Ue.bottom-(De-$e);qe=ae(qe,Ue.left+Ze,Ue.right-(wt-Ze)),ge=ae(ge,Pe,Je)}return{x:qe,y:ge}}_updatePointerDirectionDelta(ke){const{x:fe,y:qe}=ke,ge=this._pointerDirectionDelta,Ze=this._pointerPositionAtLastDirectionChange,$e=Math.abs(fe-Ze.x),Ue=Math.abs(qe-Ze.y);return $e>this._config.pointerDirectionChangeThreshold&&(ge.x=fe>Ze.x?1:-1,Ze.x=fe),Ue>this._config.pointerDirectionChangeThreshold&&(ge.y=qe>Ze.y?1:-1,Ze.y=qe),ge}_toggleNativeDragInteractions(){if(!this._rootElement||!this._handles)return;const ke=this._handles.length>0||!this.isDragging();ke!==this._nativeInteractionsEnabled&&(this._nativeInteractionsEnabled=ke,_(this._rootElement,ke))}_removeRootElementListeners(ke){ke.removeEventListener("mousedown",this._pointerDown,be),ke.removeEventListener("touchstart",this._pointerDown,re),ke.removeEventListener("dragstart",this._nativeDragStart,be)}_applyRootElementTransform(ke,fe){const qe=ie(ke,fe),ge=this._rootElement.style;null==this._initialTransform&&(this._initialTransform=ge.transform&&"none"!=ge.transform?ge.transform:""),ge.transform=O(qe,this._initialTransform)}_applyPreviewTransform(ke,fe){const qe=this._previewTemplate?.template?void 0:this._initialTransform,ge=ie(ke,fe);this._preview.style.transform=O(ge,qe)}_getDragDistance(ke){const fe=this._pickupPositionOnPage;return fe?{x:ke.x-fe.x,y:ke.y-fe.y}:{x:0,y:0}}_cleanupCachedDimensions(){this._boundaryRect=this._previewRect=void 0,this._parentPositions.clear()}_containInsideBoundaryOnResize(){let{x:ke,y:fe}=this._passiveTransform;if(0===ke&&0===fe||this.isDragging()||!this._boundaryElement)return;const qe=this._rootElement.getBoundingClientRect(),ge=this._boundaryElement.getBoundingClientRect();if(0===ge.width&&0===ge.height||0===qe.width&&0===qe.height)return;const Ze=ge.left-qe.left,$e=qe.right-ge.right,Ue=ge.top-qe.top,wt=qe.bottom-ge.bottom;ge.width>qe.width?(Ze>0&&(ke+=Ze),$e>0&&(ke-=$e)):ke=0,ge.height>qe.height?(Ue>0&&(fe+=Ue),wt>0&&(fe-=wt)):fe=0,(ke!==this._passiveTransform.x||fe!==this._passiveTransform.y)&&this.setFreeDragPosition({y:fe,x:ke})}_getDragStartDelay(ke){const fe=this.dragStartDelay;return"number"==typeof fe?fe:xe(ke)?fe.touch:fe?fe.mouse:0}_updateOnScroll(ke){const fe=this._parentPositions.handleScroll(ke);if(fe){const qe=(0,i.sA)(ke);this._boundaryRect&&qe!==this._boundaryElement&&qe.contains(this._boundaryElement)&&_e(this._boundaryRect,fe.top,fe.left),this._pickupPositionOnPage.x+=fe.left,this._pickupPositionOnPage.y+=fe.top,this._dropContainer||(this._activeTransform.x-=fe.left,this._activeTransform.y-=fe.top,this._applyRootElementTransform(this._activeTransform.x,this._activeTransform.y))}}_getViewportScrollPosition(){return this._parentPositions.positions.get(this._document)?.scrollPosition||this._parentPositions.getViewportScrollPosition()}_getShadowRoot(){return void 0===this._cachedShadowRoot&&(this._cachedShadowRoot=(0,i.kV)(this._rootElement)),this._cachedShadowRoot}_getPreviewInsertionPoint(ke,fe){const qe=this._previewContainer||"global";if("parent"===qe)return ke;if("global"===qe){const ge=this._document;return fe||ge.fullscreenElement||ge.webkitFullscreenElement||ge.mozFullScreenElement||ge.msFullscreenElement||ge.body}return(0,l.fI)(qe)}_getPreviewRect(){return(!this._previewRect||!this._previewRect.width&&!this._previewRect.height)&&(this._previewRect=this._preview?this._preview.getBoundingClientRect():this._initialClientRect),this._previewRect}_getTargetHandle(ke){return this._handles.find(fe=>ke.target&&(ke.target===fe||fe.contains(ke.target)))}}function ie(Qe,ke){return`translate3d(${Math.round(Qe)}px, ${Math.round(ke)}px, 0)`}function ae(Qe,ke,fe){return Math.max(ke,Math.min(fe,Qe))}function xe(Qe){return"t"===Qe.type[0]}function Me(Qe,ke){const fe=Qe.rootNodes;if(1===fe.length&&fe[0].nodeType===ke.ELEMENT_NODE)return fe[0];const qe=ke.createElement("div");return fe.forEach(ge=>qe.appendChild(ge)),qe}function Ye(Qe,ke){Qe.style.width=`${ke.width}px`,Qe.style.height=`${ke.height}px`,Qe.style.transform=ie(ke.left,ke.top)}function Be(Qe,ke){return Math.max(0,Math.min(ke,Qe))}class Re{constructor(ke,fe){this._element=ke,this._dragDropRegistry=fe,this._itemPositions=[],this.orientation="vertical",this._previousSwap={drag:null,delta:0,overlaps:!1}}start(ke){this.withItems(ke)}sort(ke,fe,qe,ge){const Ze=this._itemPositions,$e=this._getItemIndexFromPointerPosition(ke,fe,qe,ge);if(-1===$e&&Ze.length>0)return null;const Ue="horizontal"===this.orientation,wt=Ze.findIndex(b=>b.drag===ke),De=Ze[$e],Je=De.clientRect,Ge=wt>$e?1:-1,Ke=this._getItemOffsetPx(Ze[wt].clientRect,Je,Ge),ve=this._getSiblingOffsetPx(wt,Ze,Ge),it=Ze.slice();return function q(Qe,ke,fe){const qe=Be(ke,Qe.length-1),ge=Be(fe,Qe.length-1);if(qe===ge)return;const Ze=Qe[qe],$e=ge{if(it[N]===b)return;const S=b.drag===ke,$=S?Ke:ve,R=S?ke.getPlaceholderElement():b.drag.getRootElement();b.offset+=$,Ue?(R.style.transform=O(`translate3d(${Math.round(b.offset)}px, 0, 0)`,b.initialTransform),_e(b.clientRect,0,$)):(R.style.transform=O(`translate3d(0, ${Math.round(b.offset)}px, 0)`,b.initialTransform),_e(b.clientRect,$,0))}),this._previousSwap.overlaps=K(Je,fe,qe),this._previousSwap.drag=De.drag,this._previousSwap.delta=Ue?ge.x:ge.y,{previousIndex:wt,currentIndex:$e}}enter(ke,fe,qe,ge){const Ze=null==ge||ge<0?this._getItemIndexFromPointerPosition(ke,fe,qe):ge,$e=this._activeDraggables,Ue=$e.indexOf(ke),wt=ke.getPlaceholderElement();let De=$e[Ze];if(De===ke&&(De=$e[Ze+1]),!De&&(null==Ze||-1===Ze||Ze<$e.length-1)&&this._shouldEnterAsFirstChild(fe,qe)&&(De=$e[0]),Ue>-1&&$e.splice(Ue,1),De&&!this._dragDropRegistry.isDragging(De)){const Pe=De.getRootElement();Pe.parentElement.insertBefore(wt,Pe),$e.splice(Ze,0,ke)}else(0,l.fI)(this._element).appendChild(wt),$e.push(ke);wt.style.transform="",this._cacheItemPositions()}withItems(ke){this._activeDraggables=ke.slice(),this._cacheItemPositions()}withSortPredicate(ke){this._sortPredicate=ke}reset(){this._activeDraggables.forEach(ke=>{const fe=ke.getRootElement();if(fe){const qe=this._itemPositions.find(ge=>ge.drag===ke)?.initialTransform;fe.style.transform=qe||""}}),this._itemPositions=[],this._activeDraggables=[],this._previousSwap.drag=null,this._previousSwap.delta=0,this._previousSwap.overlaps=!1}getActiveItemsSnapshot(){return this._activeDraggables}getItemIndex(ke){return("horizontal"===this.orientation&&"rtl"===this.direction?this._itemPositions.slice().reverse():this._itemPositions).findIndex(qe=>qe.drag===ke)}updateOnScroll(ke,fe){this._itemPositions.forEach(({clientRect:qe})=>{_e(qe,ke,fe)}),this._itemPositions.forEach(({drag:qe})=>{this._dragDropRegistry.isDragging(qe)&&qe._sortFromLastPointerPosition()})}_cacheItemPositions(){const ke="horizontal"===this.orientation;this._itemPositions=this._activeDraggables.map(fe=>{const qe=fe.getVisibleElement();return{drag:fe,offset:0,initialTransform:qe.style.transform||"",clientRect:W(qe)}}).sort((fe,qe)=>ke?fe.clientRect.left-qe.clientRect.left:fe.clientRect.top-qe.clientRect.top)}_getItemOffsetPx(ke,fe,qe){const ge="horizontal"===this.orientation;let Ze=ge?fe.left-ke.left:fe.top-ke.top;return-1===qe&&(Ze+=ge?fe.width-ke.width:fe.height-ke.height),Ze}_getSiblingOffsetPx(ke,fe,qe){const ge="horizontal"===this.orientation,Ze=fe[ke].clientRect,$e=fe[ke+-1*qe];let Ue=Ze[ge?"width":"height"]*qe;if($e){const wt=ge?"left":"top",De=ge?"right":"bottom";-1===qe?Ue-=$e.clientRect[wt]-Ze[De]:Ue+=Ze[wt]-$e.clientRect[De]}return Ue}_shouldEnterAsFirstChild(ke,fe){if(!this._activeDraggables.length)return!1;const qe=this._itemPositions,ge="horizontal"===this.orientation;if(qe[0].drag!==this._activeDraggables[0]){const $e=qe[qe.length-1].clientRect;return ge?ke>=$e.right:fe>=$e.bottom}{const $e=qe[0].clientRect;return ge?ke<=$e.left:fe<=$e.top}}_getItemIndexFromPointerPosition(ke,fe,qe,ge){const Ze="horizontal"===this.orientation,$e=this._itemPositions.findIndex(({drag:Ue,clientRect:wt})=>Ue!==ke&&((!ge||Ue!==this._previousSwap.drag||!this._previousSwap.overlaps||(Ze?ge.x:ge.y)!==this._previousSwap.delta)&&(Ze?fe>=Math.floor(wt.left)&&fe=Math.floor(wt.top)&&qe!0,this.sortPredicate=()=>!0,this.beforeStarted=new E.x,this.entered=new E.x,this.exited=new E.x,this.dropped=new E.x,this.sorted=new E.x,this.receivingStarted=new E.x,this.receivingStopped=new E.x,this._isDragging=!1,this._draggables=[],this._siblings=[],this._activeSiblings=new Set,this._viewportScrollSubscription=u.w0.EMPTY,this._verticalScrollDirection=0,this._horizontalScrollDirection=0,this._stopScrollTimers=new E.x,this._cachedShadowRoot=null,this._startScrollInterval=()=>{this._stopScrolling(),(0,z.F)(0,M.Z).pipe((0,g.R)(this._stopScrollTimers)).subscribe(()=>{const $e=this._scrollNode,Ue=this.autoScrollStep;1===this._verticalScrollDirection?$e.scrollBy(0,-Ue):2===this._verticalScrollDirection&&$e.scrollBy(0,Ue),1===this._horizontalScrollDirection?$e.scrollBy(-Ue,0):2===this._horizontalScrollDirection&&$e.scrollBy(Ue,0)})},this.element=(0,l.fI)(ke),this._document=qe,this.withScrollableParents([this.element]),fe.registerDropContainer(this),this._parentPositions=new G(qe),this._sortStrategy=new Re(this.element,fe),this._sortStrategy.withSortPredicate(($e,Ue)=>this.sortPredicate($e,Ue,this))}dispose(){this._stopScrolling(),this._stopScrollTimers.complete(),this._viewportScrollSubscription.unsubscribe(),this.beforeStarted.complete(),this.entered.complete(),this.exited.complete(),this.dropped.complete(),this.sorted.complete(),this.receivingStarted.complete(),this.receivingStopped.complete(),this._activeSiblings.clear(),this._scrollNode=null,this._parentPositions.clear(),this._dragDropRegistry.removeDropContainer(this)}isDragging(){return this._isDragging}start(){this._draggingStarted(),this._notifyReceivingSiblings()}enter(ke,fe,qe,ge){this._draggingStarted(),null==ge&&this.sortingDisabled&&(ge=this._draggables.indexOf(ke)),this._sortStrategy.enter(ke,fe,qe,ge),this._cacheParentPositions(),this._notifyReceivingSiblings(),this.entered.next({item:ke,container:this,currentIndex:this.getItemIndex(ke)})}exit(ke){this._reset(),this.exited.next({item:ke,container:this})}drop(ke,fe,qe,ge,Ze,$e,Ue,wt={}){this._reset(),this.dropped.next({item:ke,currentIndex:fe,previousIndex:qe,container:this,previousContainer:ge,isPointerOverContainer:Ze,distance:$e,dropPoint:Ue,event:wt})}withItems(ke){const fe=this._draggables;return this._draggables=ke,ke.forEach(qe=>qe._withDropContainer(this)),this.isDragging()&&(fe.filter(ge=>ge.isDragging()).every(ge=>-1===ke.indexOf(ge))?this._reset():this._sortStrategy.withItems(this._draggables)),this}withDirection(ke){return this._sortStrategy.direction=ke,this}connectedTo(ke){return this._siblings=ke.slice(),this}withOrientation(ke){return this._sortStrategy.orientation=ke,this}withScrollableParents(ke){const fe=(0,l.fI)(this.element);return this._scrollableElements=-1===ke.indexOf(fe)?[fe,...ke]:ke.slice(),this}getScrollableParents(){return this._scrollableElements}getItemIndex(ke){return this._isDragging?this._sortStrategy.getItemIndex(ke):this._draggables.indexOf(ke)}isReceiving(){return this._activeSiblings.size>0}_sortItem(ke,fe,qe,ge){if(this.sortingDisabled||!this._clientRect||!Y(this._clientRect,.05,fe,qe))return;const Ze=this._sortStrategy.sort(ke,fe,qe,ge);Ze&&this.sorted.next({previousIndex:Ze.previousIndex,currentIndex:Ze.currentIndex,container:this,item:ke})}_startScrollingIfNecessary(ke,fe){if(this.autoScrollDisabled)return;let qe,ge=0,Ze=0;if(this._parentPositions.positions.forEach(($e,Ue)=>{Ue===this._document||!$e.clientRect||qe||Y($e.clientRect,.05,ke,fe)&&([ge,Ze]=function mt(Qe,ke,fe,qe){const ge=je(ke,qe),Ze=ot(ke,fe);let $e=0,Ue=0;if(ge){const wt=Qe.scrollTop;1===ge?wt>0&&($e=1):Qe.scrollHeight-wt>Qe.clientHeight&&($e=2)}if(Ze){const wt=Qe.scrollLeft;1===Ze?wt>0&&(Ue=1):Qe.scrollWidth-wt>Qe.clientWidth&&(Ue=2)}return[$e,Ue]}(Ue,$e.clientRect,ke,fe),(ge||Ze)&&(qe=Ue))}),!ge&&!Ze){const{width:$e,height:Ue}=this._viewportRuler.getViewportSize(),wt={width:$e,height:Ue,top:0,right:$e,bottom:Ue,left:0};ge=je(wt,fe),Ze=ot(wt,ke),qe=window}qe&&(ge!==this._verticalScrollDirection||Ze!==this._horizontalScrollDirection||qe!==this._scrollNode)&&(this._verticalScrollDirection=ge,this._horizontalScrollDirection=Ze,this._scrollNode=qe,(ge||Ze)&&qe?this._ngZone.runOutsideAngular(this._startScrollInterval):this._stopScrolling())}_stopScrolling(){this._stopScrollTimers.next()}_draggingStarted(){const ke=(0,l.fI)(this.element).style;this.beforeStarted.next(),this._isDragging=!0,this._initialScrollSnap=ke.msScrollSnapType||ke.scrollSnapType||"",ke.scrollSnapType=ke.msScrollSnapType="none",this._sortStrategy.start(this._draggables),this._cacheParentPositions(),this._viewportScrollSubscription.unsubscribe(),this._listenToScrollEvents()}_cacheParentPositions(){const ke=(0,l.fI)(this.element);this._parentPositions.cache(this._scrollableElements),this._clientRect=this._parentPositions.positions.get(ke).clientRect}_reset(){this._isDragging=!1;const ke=(0,l.fI)(this.element).style;ke.scrollSnapType=ke.msScrollSnapType=this._initialScrollSnap,this._siblings.forEach(fe=>fe._stopReceiving(this)),this._sortStrategy.reset(),this._stopScrolling(),this._viewportScrollSubscription.unsubscribe(),this._parentPositions.clear()}_isOverContainer(ke,fe){return null!=this._clientRect&&K(this._clientRect,ke,fe)}_getSiblingContainerFromPosition(ke,fe,qe){return this._siblings.find(ge=>ge._canReceive(ke,fe,qe))}_canReceive(ke,fe,qe){if(!this._clientRect||!K(this._clientRect,fe,qe)||!this.enterPredicate(ke,this))return!1;const ge=this._getShadowRoot().elementFromPoint(fe,qe);if(!ge)return!1;const Ze=(0,l.fI)(this.element);return ge===Ze||Ze.contains(ge)}_startReceiving(ke,fe){const qe=this._activeSiblings;!qe.has(ke)&&fe.every(ge=>this.enterPredicate(ge,this)||this._draggables.indexOf(ge)>-1)&&(qe.add(ke),this._cacheParentPositions(),this._listenToScrollEvents(),this.receivingStarted.next({initiator:ke,receiver:this,items:fe}))}_stopReceiving(ke){this._activeSiblings.delete(ke),this._viewportScrollSubscription.unsubscribe(),this.receivingStopped.next({initiator:ke,receiver:this})}_listenToScrollEvents(){this._viewportScrollSubscription=this._dragDropRegistry.scrolled(this._getShadowRoot()).subscribe(ke=>{if(this.isDragging()){const fe=this._parentPositions.handleScroll(ke);fe&&this._sortStrategy.updateOnScroll(fe.top,fe.left)}else this.isReceiving()&&this._cacheParentPositions()})}_getShadowRoot(){if(!this._cachedShadowRoot){const ke=(0,i.kV)((0,l.fI)(this.element));this._cachedShadowRoot=ke||this._document}return this._cachedShadowRoot}_notifyReceivingSiblings(){const ke=this._sortStrategy.getActiveItemsSnapshot().filter(fe=>fe.isDragging());this._siblings.forEach(fe=>fe._startReceiving(this,ke))}}function je(Qe,ke){const{top:fe,bottom:qe,height:ge}=Qe,Ze=.05*ge;return ke>=fe-Ze&&ke<=fe+Ze?1:ke>=qe-Ze&&ke<=qe+Ze?2:0}function ot(Qe,ke){const{left:fe,right:qe,width:ge}=Qe,Ze=.05*ge;return ke>=fe-Ze&&ke<=fe+Ze?1:ke>=qe-Ze&&ke<=qe+Ze?2:0}const we=(0,i.i$)({passive:!1,capture:!0});let de=(()=>{class Qe{constructor(fe,qe){this._ngZone=fe,this._dropInstances=new Set,this._dragInstances=new Set,this._activeDragInstances=[],this._globalListeners=new Map,this._draggingPredicate=ge=>ge.isDragging(),this.pointerMove=new E.x,this.pointerUp=new E.x,this.scroll=new E.x,this._preventDefaultWhileDragging=ge=>{this._activeDragInstances.length>0&&ge.preventDefault()},this._persistentTouchmoveListener=ge=>{this._activeDragInstances.length>0&&(this._activeDragInstances.some(this._draggingPredicate)&&ge.preventDefault(),this.pointerMove.next(ge))},this._document=qe}registerDropContainer(fe){this._dropInstances.has(fe)||this._dropInstances.add(fe)}registerDragItem(fe){this._dragInstances.add(fe),1===this._dragInstances.size&&this._ngZone.runOutsideAngular(()=>{this._document.addEventListener("touchmove",this._persistentTouchmoveListener,we)})}removeDropContainer(fe){this._dropInstances.delete(fe)}removeDragItem(fe){this._dragInstances.delete(fe),this.stopDragging(fe),0===this._dragInstances.size&&this._document.removeEventListener("touchmove",this._persistentTouchmoveListener,we)}startDragging(fe,qe){if(!(this._activeDragInstances.indexOf(fe)>-1)&&(this._activeDragInstances.push(fe),1===this._activeDragInstances.length)){const ge=qe.type.startsWith("touch");this._globalListeners.set(ge?"touchend":"mouseup",{handler:Ze=>this.pointerUp.next(Ze),options:!0}).set("scroll",{handler:Ze=>this.scroll.next(Ze),options:!0}).set("selectstart",{handler:this._preventDefaultWhileDragging,options:we}),ge||this._globalListeners.set("mousemove",{handler:Ze=>this.pointerMove.next(Ze),options:we}),this._ngZone.runOutsideAngular(()=>{this._globalListeners.forEach((Ze,$e)=>{this._document.addEventListener($e,Ze.handler,Ze.options)})})}}stopDragging(fe){const qe=this._activeDragInstances.indexOf(fe);qe>-1&&(this._activeDragInstances.splice(qe,1),0===this._activeDragInstances.length&&this._clearGlobalListeners())}isDragging(fe){return this._activeDragInstances.indexOf(fe)>-1}scrolled(fe){const qe=[this.scroll];return fe&&fe!==this._document&&qe.push(new h.y(ge=>this._ngZone.runOutsideAngular(()=>{const $e=Ue=>{this._activeDragInstances.length&&ge.next(Ue)};return fe.addEventListener("scroll",$e,!0),()=>{fe.removeEventListener("scroll",$e,!0)}}))),(0,v.T)(...qe)}ngOnDestroy(){this._dragInstances.forEach(fe=>this.removeDragItem(fe)),this._dropInstances.forEach(fe=>this.removeDropContainer(fe)),this._clearGlobalListeners(),this.pointerMove.complete(),this.pointerUp.complete()}_clearGlobalListeners(){this._globalListeners.forEach((fe,qe)=>{this._document.removeEventListener(qe,fe.handler,fe.options)}),this._globalListeners.clear()}static#e=this.\u0275fac=function(qe){return new(qe||Qe)(e.LFG(e.R0b),e.LFG(n.K0))};static#t=this.\u0275prov=e.Yz7({token:Qe,factory:Qe.\u0275fac,providedIn:"root"})}return Qe})();const U={dragStartThreshold:5,pointerDirectionChangeThreshold:5};let B=(()=>{class Qe{constructor(fe,qe,ge,Ze){this._document=fe,this._ngZone=qe,this._viewportRuler=ge,this._dragDropRegistry=Ze}createDrag(fe,qe=U){return new Q(fe,qe,this._document,this._ngZone,this._viewportRuler,this._dragDropRegistry)}createDropList(fe){return new Mt(fe,this._dragDropRegistry,this._document,this._ngZone,this._viewportRuler)}static#e=this.\u0275fac=function(qe){return new(qe||Qe)(e.LFG(n.K0),e.LFG(e.R0b),e.LFG(t.rL),e.LFG(de))};static#t=this.\u0275prov=e.Yz7({token:Qe,factory:Qe.\u0275fac,providedIn:"root"})}return Qe})();const Ee=new e.OlP("CDK_DRAG_PARENT"),Ne=new e.OlP("CdkDragHandle");let pt=(()=>{class Qe{get disabled(){return this._disabled}set disabled(fe){this._disabled=(0,l.Ig)(fe),this._stateChanges.next(this)}constructor(fe,qe){this.element=fe,this._stateChanges=new E.x,this._disabled=!1,this._parentDrag=qe}ngOnDestroy(){this._stateChanges.complete()}static#e=this.\u0275fac=function(qe){return new(qe||Qe)(e.Y36(e.SBq),e.Y36(Ee,12))};static#t=this.\u0275dir=e.lG2({type:Qe,selectors:[["","cdkDragHandle",""]],hostAttrs:[1,"cdk-drag-handle"],inputs:{disabled:["cdkDragHandleDisabled","disabled"]},standalone:!0,features:[e._Bn([{provide:Ne,useExisting:Qe}])]})}return Qe})();const Dt=new e.OlP("CdkDragPlaceholder"),Ut=new e.OlP("CdkDragPreview"),en=new e.OlP("CDK_DRAG_CONFIG"),Wt=new e.OlP("CdkDropList");let Vt=(()=>{class Qe{static#e=this._dragInstances=[];get disabled(){return this._disabled||this.dropContainer&&this.dropContainer.disabled}set disabled(fe){this._disabled=(0,l.Ig)(fe),this._dragRef.disabled=this._disabled}constructor(fe,qe,ge,Ze,$e,Ue,wt,De,Pe,Je,Ge){this.element=fe,this.dropContainer=qe,this._ngZone=Ze,this._viewContainerRef=$e,this._dir=wt,this._changeDetectorRef=Pe,this._selfHandle=Je,this._parentDrag=Ge,this._destroyed=new E.x,this.started=new e.vpe,this.released=new e.vpe,this.ended=new e.vpe,this.entered=new e.vpe,this.exited=new e.vpe,this.dropped=new e.vpe,this.moved=new h.y(Ke=>{const ve=this._dragRef.moved.pipe((0,d.U)(it=>({source:this,pointerPosition:it.pointerPosition,event:it.event,delta:it.delta,distance:it.distance}))).subscribe(Ke);return()=>{ve.unsubscribe()}}),this._dragRef=De.createDrag(fe,{dragStartThreshold:Ue&&null!=Ue.dragStartThreshold?Ue.dragStartThreshold:5,pointerDirectionChangeThreshold:Ue&&null!=Ue.pointerDirectionChangeThreshold?Ue.pointerDirectionChangeThreshold:5,zIndex:Ue?.zIndex}),this._dragRef.data=this,Qe._dragInstances.push(this),Ue&&this._assignDefaults(Ue),qe&&(this._dragRef._withDropContainer(qe._dropListRef),qe.addItem(this)),this._syncInputs(this._dragRef),this._handleEvents(this._dragRef)}getPlaceholderElement(){return this._dragRef.getPlaceholderElement()}getRootElement(){return this._dragRef.getRootElement()}reset(){this._dragRef.reset()}getFreeDragPosition(){return this._dragRef.getFreeDragPosition()}setFreeDragPosition(fe){this._dragRef.setFreeDragPosition(fe)}ngAfterViewInit(){this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.pipe((0,p.q)(1),(0,g.R)(this._destroyed)).subscribe(()=>{this._updateRootElement(),this._setupHandlesListener(),this.freeDragPosition&&this._dragRef.setFreeDragPosition(this.freeDragPosition)})})}ngOnChanges(fe){const qe=fe.rootElementSelector,ge=fe.freeDragPosition;qe&&!qe.firstChange&&this._updateRootElement(),ge&&!ge.firstChange&&this.freeDragPosition&&this._dragRef.setFreeDragPosition(this.freeDragPosition)}ngOnDestroy(){this.dropContainer&&this.dropContainer.removeItem(this);const fe=Qe._dragInstances.indexOf(this);fe>-1&&Qe._dragInstances.splice(fe,1),this._ngZone.runOutsideAngular(()=>{this._destroyed.next(),this._destroyed.complete(),this._dragRef.dispose()})}_updateRootElement(){const fe=this.element.nativeElement;let qe=fe;this.rootElementSelector&&(qe=void 0!==fe.closest?fe.closest(this.rootElementSelector):fe.parentElement?.closest(this.rootElementSelector)),this._dragRef.withRootElement(qe||fe)}_getBoundaryElement(){const fe=this.boundaryElement;return fe?"string"==typeof fe?this.element.nativeElement.closest(fe):(0,l.fI)(fe):null}_syncInputs(fe){fe.beforeStarted.subscribe(()=>{if(!fe.isDragging()){const qe=this._dir,ge=this.dragStartDelay,Ze=this._placeholderTemplate?{template:this._placeholderTemplate.templateRef,context:this._placeholderTemplate.data,viewContainer:this._viewContainerRef}:null,$e=this._previewTemplate?{template:this._previewTemplate.templateRef,context:this._previewTemplate.data,matchSize:this._previewTemplate.matchSize,viewContainer:this._viewContainerRef}:null;fe.disabled=this.disabled,fe.lockAxis=this.lockAxis,fe.dragStartDelay="object"==typeof ge&&ge?ge:(0,l.su)(ge),fe.constrainPosition=this.constrainPosition,fe.previewClass=this.previewClass,fe.withBoundaryElement(this._getBoundaryElement()).withPlaceholderTemplate(Ze).withPreviewTemplate($e).withPreviewContainer(this.previewContainer||"global"),qe&&fe.withDirection(qe.value)}}),fe.beforeStarted.pipe((0,p.q)(1)).subscribe(()=>{if(this._parentDrag)return void fe.withParent(this._parentDrag._dragRef);let qe=this.element.nativeElement.parentElement;for(;qe;){if(qe.classList.contains("cdk-drag")){fe.withParent(Qe._dragInstances.find(ge=>ge.element.nativeElement===qe)?._dragRef||null);break}qe=qe.parentElement}})}_handleEvents(fe){fe.started.subscribe(qe=>{this.started.emit({source:this,event:qe.event}),this._changeDetectorRef.markForCheck()}),fe.released.subscribe(qe=>{this.released.emit({source:this,event:qe.event})}),fe.ended.subscribe(qe=>{this.ended.emit({source:this,distance:qe.distance,dropPoint:qe.dropPoint,event:qe.event}),this._changeDetectorRef.markForCheck()}),fe.entered.subscribe(qe=>{this.entered.emit({container:qe.container.data,item:this,currentIndex:qe.currentIndex})}),fe.exited.subscribe(qe=>{this.exited.emit({container:qe.container.data,item:this})}),fe.dropped.subscribe(qe=>{this.dropped.emit({previousIndex:qe.previousIndex,currentIndex:qe.currentIndex,previousContainer:qe.previousContainer.data,container:qe.container.data,isPointerOverContainer:qe.isPointerOverContainer,item:this,distance:qe.distance,dropPoint:qe.dropPoint,event:qe.event})})}_assignDefaults(fe){const{lockAxis:qe,dragStartDelay:ge,constrainPosition:Ze,previewClass:$e,boundaryElement:Ue,draggingDisabled:wt,rootElementSelector:De,previewContainer:Pe}=fe;this.disabled=wt??!1,this.dragStartDelay=ge||0,qe&&(this.lockAxis=qe),Ze&&(this.constrainPosition=Ze),$e&&(this.previewClass=$e),Ue&&(this.boundaryElement=Ue),De&&(this.rootElementSelector=De),Pe&&(this.previewContainer=Pe)}_setupHandlesListener(){this._handles.changes.pipe((0,f.O)(this._handles),(0,y.b)(fe=>{const qe=fe.filter(ge=>ge._parentDrag===this).map(ge=>ge.element);this._selfHandle&&this.rootElementSelector&&qe.push(this.element),this._dragRef.withHandles(qe)}),(0,T.w)(fe=>(0,v.T)(...fe.map(qe=>qe._stateChanges.pipe((0,f.O)(qe))))),(0,g.R)(this._destroyed)).subscribe(fe=>{const qe=this._dragRef,ge=fe.element.nativeElement;fe.disabled?qe.disableHandle(ge):qe.enableHandle(ge)})}static#t=this.\u0275fac=function(qe){return new(qe||Qe)(e.Y36(e.SBq),e.Y36(Wt,12),e.Y36(n.K0),e.Y36(e.R0b),e.Y36(e.s_b),e.Y36(en,8),e.Y36(x.Is,8),e.Y36(B),e.Y36(e.sBO),e.Y36(Ne,10),e.Y36(Ee,12))};static#n=this.\u0275dir=e.lG2({type:Qe,selectors:[["","cdkDrag",""]],contentQueries:function(qe,ge,Ze){if(1&qe&&(e.Suo(Ze,Ut,5),e.Suo(Ze,Dt,5),e.Suo(Ze,Ne,5)),2&qe){let $e;e.iGM($e=e.CRH())&&(ge._previewTemplate=$e.first),e.iGM($e=e.CRH())&&(ge._placeholderTemplate=$e.first),e.iGM($e=e.CRH())&&(ge._handles=$e)}},hostAttrs:[1,"cdk-drag"],hostVars:4,hostBindings:function(qe,ge){2&qe&&e.ekj("cdk-drag-disabled",ge.disabled)("cdk-drag-dragging",ge._dragRef.isDragging())},inputs:{data:["cdkDragData","data"],lockAxis:["cdkDragLockAxis","lockAxis"],rootElementSelector:["cdkDragRootElement","rootElementSelector"],boundaryElement:["cdkDragBoundary","boundaryElement"],dragStartDelay:["cdkDragStartDelay","dragStartDelay"],freeDragPosition:["cdkDragFreeDragPosition","freeDragPosition"],disabled:["cdkDragDisabled","disabled"],constrainPosition:["cdkDragConstrainPosition","constrainPosition"],previewClass:["cdkDragPreviewClass","previewClass"],previewContainer:["cdkDragPreviewContainer","previewContainer"]},outputs:{started:"cdkDragStarted",released:"cdkDragReleased",ended:"cdkDragEnded",entered:"cdkDragEntered",exited:"cdkDragExited",dropped:"cdkDragDropped",moved:"cdkDragMoved"},exportAs:["cdkDrag"],standalone:!0,features:[e._Bn([{provide:Ee,useExisting:Qe}]),e.TTD]})}return Qe})(),xt=(()=>{class Qe{static#e=this.\u0275fac=function(qe){return new(qe||Qe)};static#t=this.\u0275mod=e.oAB({type:Qe});static#n=this.\u0275inj=e.cJS({providers:[B],imports:[t.ZD]})}return Qe})()},36028:(nt,I,o)=>{"use strict";o.d(I,{A:()=>le,JH:()=>D,JU:()=>C,K5:()=>l,Ku:()=>g,LH:()=>T,L_:()=>v,MW:()=>pt,Mf:()=>t,SV:()=>x,Sd:()=>f,VM:()=>d,Vb:()=>fi,Z:()=>Ne,ZH:()=>n,aO:()=>te,b2:()=>hi,hY:()=>h,jx:()=>E,oh:()=>y,uR:()=>p,xE:()=>k,zL:()=>u});const n=8,t=9,l=13,C=16,E=17,u=18,h=27,v=32,g=33,d=34,p=35,f=36,y=37,T=38,x=39,D=40,k=48,te=57,le=65,Ne=90,pt=91,hi=224;function fi(zi,...Oi){return Oi.length?Oi.some(ei=>zi[ei]):zi.altKey||zi.shiftKey||zi.ctrlKey||zi.metaKey}},71088:(nt,I,o)=>{"use strict";o.d(I,{Yg:()=>D,vx:()=>y,xu:()=>d});var e=o(65879),n=o(42495),t=o(78645),i=o(52572),l=o(35211),C=o(65592),E=o(48180),u=o(836),z=o(83620),M=o(37398),h=o(27921),v=o(59773),g=o(62831);let d=(()=>{class O{static#e=this.\u0275fac=function(F){return new(F||O)};static#t=this.\u0275mod=e.oAB({type:O});static#n=this.\u0275inj=e.cJS({})}return O})();const p=new Set;let f,y=(()=>{class O{constructor(k,F){this._platform=k,this._nonce=F,this._matchMedia=this._platform.isBrowser&&window.matchMedia?window.matchMedia.bind(window):x}matchMedia(k){return(this._platform.WEBKIT||this._platform.BLINK)&&function T(O,A){if(!p.has(O))try{f||(f=document.createElement("style"),A&&(f.nonce=A),f.setAttribute("type","text/css"),document.head.appendChild(f)),f.sheet&&(f.sheet.insertRule(`@media ${O} {body{ }}`,0),p.add(O))}catch(k){console.error(k)}}(k,this._nonce),this._matchMedia(k)}static#e=this.\u0275fac=function(F){return new(F||O)(e.LFG(g.t4),e.LFG(e.Ojb,8))};static#t=this.\u0275prov=e.Yz7({token:O,factory:O.\u0275fac,providedIn:"root"})}return O})();function x(O){return{matches:"all"===O||""===O,media:O,addListener:()=>{},removeListener:()=>{}}}let D=(()=>{class O{constructor(k,F){this._mediaMatcher=k,this._zone=F,this._queries=new Map,this._destroySubject=new t.x}ngOnDestroy(){this._destroySubject.next(),this._destroySubject.complete()}isMatched(k){return _((0,n.Eq)(k)).some(W=>this._registerQuery(W).mql.matches)}observe(k){const W=_((0,n.Eq)(k)).map(_e=>this._registerQuery(_e).observable);let K=(0,i.a)(W);return K=(0,l.z)(K.pipe((0,E.q)(1)),K.pipe((0,u.T)(1),(0,z.b)(0))),K.pipe((0,M.U)(_e=>{const Y={matches:!1,breakpoints:{}};return _e.forEach(({matches:G,query:H})=>{Y.matches=Y.matches||G,Y.breakpoints[H]=G}),Y}))}_registerQuery(k){if(this._queries.has(k))return this._queries.get(k);const F=this._mediaMatcher.matchMedia(k),K={observable:new C.y(_e=>{const Y=G=>this._zone.run(()=>_e.next(G));return F.addListener(Y),()=>{F.removeListener(Y)}}).pipe((0,h.O)(F),(0,M.U)(({matches:_e})=>({query:k,matches:_e})),(0,v.R)(this._destroySubject)),mql:F};return this._queries.set(k,K),K}static#e=this.\u0275fac=function(F){return new(F||O)(e.LFG(y),e.LFG(e.R0b))};static#t=this.\u0275prov=e.Yz7({token:O,factory:O.\u0275fac,providedIn:"root"})}return O})();function _(O){return O.map(A=>A.split(",")).reduce((A,k)=>A.concat(k)).map(A=>A.trim())}},17131:(nt,I,o)=>{"use strict";o.d(I,{Q8:()=>z,wD:()=>u});var e=o(42495),n=o(65879),t=o(65592),i=o(78645),l=o(83620);let C=(()=>{class M{create(v){return typeof MutationObserver>"u"?null:new MutationObserver(v)}static#e=this.\u0275fac=function(g){return new(g||M)};static#t=this.\u0275prov=n.Yz7({token:M,factory:M.\u0275fac,providedIn:"root"})}return M})(),E=(()=>{class M{constructor(v){this._mutationObserverFactory=v,this._observedElements=new Map}ngOnDestroy(){this._observedElements.forEach((v,g)=>this._cleanupObserver(g))}observe(v){const g=(0,e.fI)(v);return new t.y(d=>{const f=this._observeElement(g).subscribe(d);return()=>{f.unsubscribe(),this._unobserveElement(g)}})}_observeElement(v){if(this._observedElements.has(v))this._observedElements.get(v).count++;else{const g=new i.x,d=this._mutationObserverFactory.create(p=>g.next(p));d&&d.observe(v,{characterData:!0,childList:!0,subtree:!0}),this._observedElements.set(v,{observer:d,stream:g,count:1})}return this._observedElements.get(v).stream}_unobserveElement(v){this._observedElements.has(v)&&(this._observedElements.get(v).count--,this._observedElements.get(v).count||this._cleanupObserver(v))}_cleanupObserver(v){if(this._observedElements.has(v)){const{observer:g,stream:d}=this._observedElements.get(v);g&&g.disconnect(),d.complete(),this._observedElements.delete(v)}}static#e=this.\u0275fac=function(g){return new(g||M)(n.LFG(C))};static#t=this.\u0275prov=n.Yz7({token:M,factory:M.\u0275fac,providedIn:"root"})}return M})(),u=(()=>{class M{get disabled(){return this._disabled}set disabled(v){this._disabled=(0,e.Ig)(v),this._disabled?this._unsubscribe():this._subscribe()}get debounce(){return this._debounce}set debounce(v){this._debounce=(0,e.su)(v),this._subscribe()}constructor(v,g,d){this._contentObserver=v,this._elementRef=g,this._ngZone=d,this.event=new n.vpe,this._disabled=!1,this._currentSubscription=null}ngAfterContentInit(){!this._currentSubscription&&!this.disabled&&this._subscribe()}ngOnDestroy(){this._unsubscribe()}_subscribe(){this._unsubscribe();const v=this._contentObserver.observe(this._elementRef);this._ngZone.runOutsideAngular(()=>{this._currentSubscription=(this.debounce?v.pipe((0,l.b)(this.debounce)):v).subscribe(this.event)})}_unsubscribe(){this._currentSubscription?.unsubscribe()}static#e=this.\u0275fac=function(g){return new(g||M)(n.Y36(E),n.Y36(n.SBq),n.Y36(n.R0b))};static#t=this.\u0275dir=n.lG2({type:M,selectors:[["","cdkObserveContent",""]],inputs:{disabled:["cdkObserveContentDisabled","disabled"],debounce:"debounce"},outputs:{event:"cdkObserveContent"},exportAs:["cdkObserveContent"]})}return M})(),z=(()=>{class M{static#e=this.\u0275fac=function(g){return new(g||M)};static#t=this.\u0275mod=n.oAB({type:M});static#n=this.\u0275inj=n.cJS({providers:[C]})}return M})()},33651:(nt,I,o)=>{"use strict";o.d(I,{pI:()=>Mt,xu:()=>Ae,tR:()=>K,aV:()=>Be,X_:()=>W,Vs:()=>te,U8:()=>mt,Iu:()=>re});var e=o(205),n=o(96814),t=o(65879),i=o(42495),l=o(62831),C=o(32181),E=o(48180),u=o(59773),z=o(79360),M=o(8251),v=o(49388),g=o(68484),d=o(78645),p=o(47394),f=o(63019),y=o(36028);const T=(0,l.Mq)();class x{constructor(U,B){this._viewportRuler=U,this._previousHTMLStyles={top:"",left:""},this._isEnabled=!1,this._document=B}attach(){}enable(){if(this._canBeEnabled()){const U=this._document.documentElement;this._previousScrollPosition=this._viewportRuler.getViewportScrollPosition(),this._previousHTMLStyles.left=U.style.left||"",this._previousHTMLStyles.top=U.style.top||"",U.style.left=(0,i.HM)(-this._previousScrollPosition.left),U.style.top=(0,i.HM)(-this._previousScrollPosition.top),U.classList.add("cdk-global-scrollblock"),this._isEnabled=!0}}disable(){if(this._isEnabled){const U=this._document.documentElement,Ee=U.style,Ie=this._document.body.style,Ne=Ee.scrollBehavior||"",pt=Ie.scrollBehavior||"";this._isEnabled=!1,Ee.left=this._previousHTMLStyles.left,Ee.top=this._previousHTMLStyles.top,U.classList.remove("cdk-global-scrollblock"),T&&(Ee.scrollBehavior=Ie.scrollBehavior="auto"),window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),T&&(Ee.scrollBehavior=Ne,Ie.scrollBehavior=pt)}}_canBeEnabled(){if(this._document.documentElement.classList.contains("cdk-global-scrollblock")||this._isEnabled)return!1;const B=this._document.body,Ee=this._viewportRuler.getViewportSize();return B.scrollHeight>Ee.height||B.scrollWidth>Ee.width}}class _{constructor(U,B,Ee,Ie){this._scrollDispatcher=U,this._ngZone=B,this._viewportRuler=Ee,this._config=Ie,this._scrollSubscription=null,this._detach=()=>{this.disable(),this._overlayRef.hasAttached()&&this._ngZone.run(()=>this._overlayRef.detach())}}attach(U){this._overlayRef=U}enable(){if(this._scrollSubscription)return;const U=this._scrollDispatcher.scrolled(0).pipe((0,C.h)(B=>!B||!this._overlayRef.overlayElement.contains(B.getElementRef().nativeElement)));this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=U.subscribe(()=>{const B=this._viewportRuler.getViewportScrollPosition().top;Math.abs(B-this._initialScrollPosition)>this._config.threshold?this._detach():this._overlayRef.updatePosition()})):this._scrollSubscription=U.subscribe(this._detach)}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}class P{enable(){}disable(){}attach(){}}function O(de,U){return U.some(B=>de.bottomB.bottom||de.rightB.right)}function A(de,U){return U.some(B=>de.topB.bottom||de.leftB.right)}class k{constructor(U,B,Ee,Ie){this._scrollDispatcher=U,this._viewportRuler=B,this._ngZone=Ee,this._config=Ie,this._scrollSubscription=null}attach(U){this._overlayRef=U}enable(){this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(()=>{if(this._overlayRef.updatePosition(),this._config&&this._config.autoClose){const B=this._overlayRef.overlayElement.getBoundingClientRect(),{width:Ee,height:Ie}=this._viewportRuler.getViewportSize();O(B,[{width:Ee,height:Ie,bottom:Ie,right:Ee,top:0,left:0}])&&(this.disable(),this._ngZone.run(()=>this._overlayRef.detach()))}}))}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}let F=(()=>{class de{constructor(B,Ee,Ie,Ne){this._scrollDispatcher=B,this._viewportRuler=Ee,this._ngZone=Ie,this.noop=()=>new P,this.close=pt=>new _(this._scrollDispatcher,this._ngZone,this._viewportRuler,pt),this.block=()=>new x(this._viewportRuler,this._document),this.reposition=pt=>new k(this._scrollDispatcher,this._viewportRuler,this._ngZone,pt),this._document=Ne}static#e=this.\u0275fac=function(Ee){return new(Ee||de)(t.LFG(e.mF),t.LFG(e.rL),t.LFG(t.R0b),t.LFG(n.K0))};static#t=this.\u0275prov=t.Yz7({token:de,factory:de.\u0275fac,providedIn:"root"})}return de})();class W{constructor(U){if(this.scrollStrategy=new P,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,U){const B=Object.keys(U);for(const Ee of B)void 0!==U[Ee]&&(this[Ee]=U[Ee])}}}class K{constructor(U,B,Ee,Ie,Ne){this.offsetX=Ee,this.offsetY=Ie,this.panelClass=Ne,this.originX=U.originX,this.originY=U.originY,this.overlayX=B.overlayX,this.overlayY=B.overlayY}}class Y{constructor(U,B){this.connectionPair=U,this.scrollableViewProperties=B}}let j=(()=>{class de{constructor(B){this._attachedOverlays=[],this._document=B}ngOnDestroy(){this.detach()}add(B){this.remove(B),this._attachedOverlays.push(B)}remove(B){const Ee=this._attachedOverlays.indexOf(B);Ee>-1&&this._attachedOverlays.splice(Ee,1),0===this._attachedOverlays.length&&this.detach()}static#e=this.\u0275fac=function(Ee){return new(Ee||de)(t.LFG(n.K0))};static#t=this.\u0275prov=t.Yz7({token:de,factory:de.\u0275fac,providedIn:"root"})}return de})(),te=(()=>{class de extends j{constructor(B,Ee){super(B),this._ngZone=Ee,this._keydownListener=Ie=>{const Ne=this._attachedOverlays;for(let pt=Ne.length-1;pt>-1;pt--)if(Ne[pt]._keydownEvents.observers.length>0){const Dt=Ne[pt]._keydownEvents;this._ngZone?this._ngZone.run(()=>Dt.next(Ie)):Dt.next(Ie);break}}}add(B){super.add(B),this._isAttached||(this._ngZone?this._ngZone.runOutsideAngular(()=>this._document.body.addEventListener("keydown",this._keydownListener)):this._document.body.addEventListener("keydown",this._keydownListener),this._isAttached=!0)}detach(){this._isAttached&&(this._document.body.removeEventListener("keydown",this._keydownListener),this._isAttached=!1)}static#e=this.\u0275fac=function(Ee){return new(Ee||de)(t.LFG(n.K0),t.LFG(t.R0b,8))};static#t=this.\u0275prov=t.Yz7({token:de,factory:de.\u0275fac,providedIn:"root"})}return de})(),ne=(()=>{class de extends j{constructor(B,Ee,Ie){super(B),this._platform=Ee,this._ngZone=Ie,this._cursorStyleIsSet=!1,this._pointerDownListener=Ne=>{this._pointerDownEventTarget=(0,l.sA)(Ne)},this._clickListener=Ne=>{const pt=(0,l.sA)(Ne),Dt="click"===Ne.type&&this._pointerDownEventTarget?this._pointerDownEventTarget:pt;this._pointerDownEventTarget=null;const Lt=this._attachedOverlays.slice();for(let Ut=Lt.length-1;Ut>-1;Ut--){const qt=Lt[Ut];if(qt._outsidePointerEvents.observers.length<1||!qt.hasAttached())continue;if(qt.overlayElement.contains(pt)||qt.overlayElement.contains(Dt))break;const en=qt._outsidePointerEvents;this._ngZone?this._ngZone.run(()=>en.next(Ne)):en.next(Ne)}}}add(B){if(super.add(B),!this._isAttached){const Ee=this._document.body;this._ngZone?this._ngZone.runOutsideAngular(()=>this._addEventListeners(Ee)):this._addEventListeners(Ee),this._platform.IOS&&!this._cursorStyleIsSet&&(this._cursorOriginalValue=Ee.style.cursor,Ee.style.cursor="pointer",this._cursorStyleIsSet=!0),this._isAttached=!0}}detach(){if(this._isAttached){const B=this._document.body;B.removeEventListener("pointerdown",this._pointerDownListener,!0),B.removeEventListener("click",this._clickListener,!0),B.removeEventListener("auxclick",this._clickListener,!0),B.removeEventListener("contextmenu",this._clickListener,!0),this._platform.IOS&&this._cursorStyleIsSet&&(B.style.cursor=this._cursorOriginalValue,this._cursorStyleIsSet=!1),this._isAttached=!1}}_addEventListeners(B){B.addEventListener("pointerdown",this._pointerDownListener,!0),B.addEventListener("click",this._clickListener,!0),B.addEventListener("auxclick",this._clickListener,!0),B.addEventListener("contextmenu",this._clickListener,!0)}static#e=this.\u0275fac=function(Ee){return new(Ee||de)(t.LFG(n.K0),t.LFG(l.t4),t.LFG(t.R0b,8))};static#t=this.\u0275prov=t.Yz7({token:de,factory:de.\u0275fac,providedIn:"root"})}return de})(),pe=(()=>{class de{constructor(B,Ee){this._platform=Ee,this._document=B}ngOnDestroy(){this._containerElement?.remove()}getContainerElement(){return this._containerElement||this._createContainer(),this._containerElement}_createContainer(){const B="cdk-overlay-container";if(this._platform.isBrowser||(0,l.Oy)()){const Ie=this._document.querySelectorAll(`.${B}[platform="server"], .${B}[platform="test"]`);for(let Ne=0;Nethis._backdropClick.next(en),this._backdropTransitionendHandler=en=>{this._disposeBackdrop(en.target)},this._keydownEvents=new d.x,this._outsidePointerEvents=new d.x,Ie.scrollStrategy&&(this._scrollStrategy=Ie.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=Ie.positionStrategy}get overlayElement(){return this._pane}get backdropElement(){return this._backdropElement}get hostElement(){return this._host}attach(U){!this._host.parentElement&&this._previousHostParent&&this._previousHostParent.appendChild(this._host);const B=this._portalOutlet.attach(U);return this._positionStrategy&&this._positionStrategy.attach(this),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._ngZone.onStable.pipe((0,E.q)(1)).subscribe(()=>{this.hasAttached()&&this.updatePosition()}),this._togglePointerEvents(!0),this._config.hasBackdrop&&this._attachBackdrop(),this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!0),this._attachments.next(),this._keyboardDispatcher.add(this),this._config.disposeOnNavigation&&(this._locationChanges=this._location.subscribe(()=>this.dispose())),this._outsideClickDispatcher.add(this),"function"==typeof B?.onDestroy&&B.onDestroy(()=>{this.hasAttached()&&this._ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>this.detach()))}),B}detach(){if(!this.hasAttached())return;this.detachBackdrop(),this._togglePointerEvents(!1),this._positionStrategy&&this._positionStrategy.detach&&this._positionStrategy.detach(),this._scrollStrategy&&this._scrollStrategy.disable();const U=this._portalOutlet.detach();return this._detachments.next(),this._keyboardDispatcher.remove(this),this._detachContentWhenStable(),this._locationChanges.unsubscribe(),this._outsideClickDispatcher.remove(this),U}dispose(){const U=this.hasAttached();this._positionStrategy&&this._positionStrategy.dispose(),this._disposeScrollStrategy(),this._disposeBackdrop(this._backdropElement),this._locationChanges.unsubscribe(),this._keyboardDispatcher.remove(this),this._portalOutlet.dispose(),this._attachments.complete(),this._backdropClick.complete(),this._keydownEvents.complete(),this._outsidePointerEvents.complete(),this._outsideClickDispatcher.remove(this),this._host?.remove(),this._previousHostParent=this._pane=this._host=null,U&&this._detachments.next(),this._detachments.complete()}hasAttached(){return this._portalOutlet.hasAttached()}backdropClick(){return this._backdropClick}attachments(){return this._attachments}detachments(){return this._detachments}keydownEvents(){return this._keydownEvents}outsidePointerEvents(){return this._outsidePointerEvents}getConfig(){return this._config}updatePosition(){this._positionStrategy&&this._positionStrategy.apply()}updatePositionStrategy(U){U!==this._positionStrategy&&(this._positionStrategy&&this._positionStrategy.dispose(),this._positionStrategy=U,this.hasAttached()&&(U.attach(this),this.updatePosition()))}updateSize(U){this._config={...this._config,...U},this._updateElementSize()}setDirection(U){this._config={...this._config,direction:U},this._updateElementDirection()}addPanelClass(U){this._pane&&this._toggleClasses(this._pane,U,!0)}removePanelClass(U){this._pane&&this._toggleClasses(this._pane,U,!1)}getDirection(){const U=this._config.direction;return U?"string"==typeof U?U:U.value:"ltr"}updateScrollStrategy(U){U!==this._scrollStrategy&&(this._disposeScrollStrategy(),this._scrollStrategy=U,this.hasAttached()&&(U.attach(this),U.enable()))}_updateElementDirection(){this._host.setAttribute("dir",this.getDirection())}_updateElementSize(){if(!this._pane)return;const U=this._pane.style;U.width=(0,i.HM)(this._config.width),U.height=(0,i.HM)(this._config.height),U.minWidth=(0,i.HM)(this._config.minWidth),U.minHeight=(0,i.HM)(this._config.minHeight),U.maxWidth=(0,i.HM)(this._config.maxWidth),U.maxHeight=(0,i.HM)(this._config.maxHeight)}_togglePointerEvents(U){this._pane.style.pointerEvents=U?"":"none"}_attachBackdrop(){const U="cdk-overlay-backdrop-showing";this._backdropElement=this._document.createElement("div"),this._backdropElement.classList.add("cdk-overlay-backdrop"),this._animationsDisabled&&this._backdropElement.classList.add("cdk-overlay-backdrop-noop-animation"),this._config.backdropClass&&this._toggleClasses(this._backdropElement,this._config.backdropClass,!0),this._host.parentElement.insertBefore(this._backdropElement,this._host),this._backdropElement.addEventListener("click",this._backdropClickHandler),!this._animationsDisabled&&typeof requestAnimationFrame<"u"?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>{this._backdropElement&&this._backdropElement.classList.add(U)})}):this._backdropElement.classList.add(U)}_updateStackingOrder(){this._host.nextSibling&&this._host.parentNode.appendChild(this._host)}detachBackdrop(){const U=this._backdropElement;if(U){if(this._animationsDisabled)return void this._disposeBackdrop(U);U.classList.remove("cdk-overlay-backdrop-showing"),this._ngZone.runOutsideAngular(()=>{U.addEventListener("transitionend",this._backdropTransitionendHandler)}),U.style.pointerEvents="none",this._backdropTimeout=this._ngZone.runOutsideAngular(()=>setTimeout(()=>{this._disposeBackdrop(U)},500))}}_toggleClasses(U,B,Ee){const Ie=(0,i.Eq)(B||[]).filter(Ne=>!!Ne);Ie.length&&(Ee?U.classList.add(...Ie):U.classList.remove(...Ie))}_detachContentWhenStable(){this._ngZone.runOutsideAngular(()=>{const U=this._ngZone.onStable.pipe((0,u.R)((0,f.T)(this._attachments,this._detachments))).subscribe(()=>{(!this._pane||!this._host||0===this._pane.children.length)&&(this._pane&&this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!1),this._host&&this._host.parentElement&&(this._previousHostParent=this._host.parentElement,this._host.remove()),U.unsubscribe())})})}_disposeScrollStrategy(){const U=this._scrollStrategy;U&&(U.disable(),U.detach&&U.detach())}_disposeBackdrop(U){U&&(U.removeEventListener("click",this._backdropClickHandler),U.removeEventListener("transitionend",this._backdropTransitionendHandler),U.remove(),this._backdropElement===U&&(this._backdropElement=null)),this._backdropTimeout&&(clearTimeout(this._backdropTimeout),this._backdropTimeout=void 0)}}const be="cdk-overlay-connected-position-bounding-box",le=/([A-Za-z%]+)$/;class ce{get positions(){return this._preferredPositions}constructor(U,B,Ee,Ie,Ne){this._viewportRuler=B,this._document=Ee,this._platform=Ie,this._overlayContainer=Ne,this._lastBoundingBoxSize={width:0,height:0},this._isPushed=!1,this._canPush=!0,this._growAfterOpen=!1,this._hasFlexibleDimensions=!0,this._positionLocked=!1,this._viewportMargin=0,this._scrollables=[],this._preferredPositions=[],this._positionChanges=new d.x,this._resizeSubscription=p.w0.EMPTY,this._offsetX=0,this._offsetY=0,this._appliedPanelClasses=[],this.positionChanges=this._positionChanges,this.setOrigin(U)}attach(U){this._validatePositions(),U.hostElement.classList.add(be),this._overlayRef=U,this._boundingBox=U.hostElement,this._pane=U.overlayElement,this._isDisposed=!1,this._isInitialRender=!0,this._lastPosition=null,this._resizeSubscription.unsubscribe(),this._resizeSubscription=this._viewportRuler.change().subscribe(()=>{this._isInitialRender=!0,this.apply()})}apply(){if(this._isDisposed||!this._platform.isBrowser)return;if(!this._isInitialRender&&this._positionLocked&&this._lastPosition)return void this.reapplyLastPosition();this._clearPanelClasses(),this._resetOverlayElementStyles(),this._resetBoundingBoxStyles(),this._viewportRect=this._getNarrowedViewportRect(),this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._containerRect=this._overlayContainer.getContainerElement().getBoundingClientRect();const U=this._originRect,B=this._overlayRect,Ee=this._viewportRect,Ie=this._containerRect,Ne=[];let pt;for(let Dt of this._preferredPositions){let Lt=this._getOriginPoint(U,Ie,Dt),Ut=this._getOverlayPoint(Lt,B,Dt),qt=this._getOverlayFit(Ut,B,Ee,Dt);if(qt.isCompletelyWithinViewport)return this._isPushed=!1,void this._applyPosition(Dt,Lt);this._canFitWithFlexibleDimensions(qt,Ut,Ee)?Ne.push({position:Dt,origin:Lt,overlayRect:B,boundingBoxRect:this._calculateBoundingBoxRect(Lt,Dt)}):(!pt||pt.overlayFit.visibleAreaLt&&(Lt=qt,Dt=Ut)}return this._isPushed=!1,void this._applyPosition(Dt.position,Dt.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(pt.position,pt.originPoint);this._applyPosition(pt.position,pt.originPoint)}detach(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}dispose(){this._isDisposed||(this._boundingBox&&Q(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove(be),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}reapplyLastPosition(){if(this._isDisposed||!this._platform.isBrowser)return;const U=this._lastPosition;if(U){this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect(),this._containerRect=this._overlayContainer.getContainerElement().getBoundingClientRect();const B=this._getOriginPoint(this._originRect,this._containerRect,U);this._applyPosition(U,B)}else this.apply()}withScrollableContainers(U){return this._scrollables=U,this}withPositions(U){return this._preferredPositions=U,-1===U.indexOf(this._lastPosition)&&(this._lastPosition=null),this._validatePositions(),this}withViewportMargin(U){return this._viewportMargin=U,this}withFlexibleDimensions(U=!0){return this._hasFlexibleDimensions=U,this}withGrowAfterOpen(U=!0){return this._growAfterOpen=U,this}withPush(U=!0){return this._canPush=U,this}withLockedPosition(U=!0){return this._positionLocked=U,this}setOrigin(U){return this._origin=U,this}withDefaultOffsetX(U){return this._offsetX=U,this}withDefaultOffsetY(U){return this._offsetY=U,this}withTransformOriginOn(U){return this._transformOriginSelector=U,this}_getOriginPoint(U,B,Ee){let Ie,Ne;if("center"==Ee.originX)Ie=U.left+U.width/2;else{const pt=this._isRtl()?U.right:U.left,Dt=this._isRtl()?U.left:U.right;Ie="start"==Ee.originX?pt:Dt}return B.left<0&&(Ie-=B.left),Ne="center"==Ee.originY?U.top+U.height/2:"top"==Ee.originY?U.top:U.bottom,B.top<0&&(Ne-=B.top),{x:Ie,y:Ne}}_getOverlayPoint(U,B,Ee){let Ie,Ne;return Ie="center"==Ee.overlayX?-B.width/2:"start"===Ee.overlayX?this._isRtl()?-B.width:0:this._isRtl()?0:-B.width,Ne="center"==Ee.overlayY?-B.height/2:"top"==Ee.overlayY?0:-B.height,{x:U.x+Ie,y:U.y+Ne}}_getOverlayFit(U,B,Ee,Ie){const Ne=ae(B);let{x:pt,y:Dt}=U,Lt=this._getOffset(Ie,"x"),Ut=this._getOffset(Ie,"y");Lt&&(pt+=Lt),Ut&&(Dt+=Ut);let cn=0-Dt,Wt=Dt+Ne.height-Ee.height,Vt=this._subtractOverflows(Ne.width,0-pt,pt+Ne.width-Ee.width),st=this._subtractOverflows(Ne.height,cn,Wt),He=Vt*st;return{visibleArea:He,isCompletelyWithinViewport:Ne.width*Ne.height===He,fitsInViewportVertically:st===Ne.height,fitsInViewportHorizontally:Vt==Ne.width}}_canFitWithFlexibleDimensions(U,B,Ee){if(this._hasFlexibleDimensions){const Ie=Ee.bottom-B.y,Ne=Ee.right-B.x,pt=ie(this._overlayRef.getConfig().minHeight),Dt=ie(this._overlayRef.getConfig().minWidth);return(U.fitsInViewportVertically||null!=pt&&pt<=Ie)&&(U.fitsInViewportHorizontally||null!=Dt&&Dt<=Ne)}return!1}_pushOverlayOnScreen(U,B,Ee){if(this._previousPushAmount&&this._positionLocked)return{x:U.x+this._previousPushAmount.x,y:U.y+this._previousPushAmount.y};const Ie=ae(B),Ne=this._viewportRect,pt=Math.max(U.x+Ie.width-Ne.width,0),Dt=Math.max(U.y+Ie.height-Ne.height,0),Lt=Math.max(Ne.top-Ee.top-U.y,0),Ut=Math.max(Ne.left-Ee.left-U.x,0);let qt=0,en=0;return qt=Ie.width<=Ne.width?Ut||-pt:U.xVt&&!this._isInitialRender&&!this._growAfterOpen&&(pt=U.y-Vt/2)}if("end"===B.overlayX&&!Ie||"start"===B.overlayX&&Ie)cn=Ee.width-U.x+this._viewportMargin,qt=U.x-this._viewportMargin;else if("start"===B.overlayX&&!Ie||"end"===B.overlayX&&Ie)en=U.x,qt=Ee.right-U.x;else{const Wt=Math.min(Ee.right-U.x+Ee.left,U.x),Vt=this._lastBoundingBoxSize.width;qt=2*Wt,en=U.x-Wt,qt>Vt&&!this._isInitialRender&&!this._growAfterOpen&&(en=U.x-Vt/2)}return{top:pt,left:en,bottom:Dt,right:cn,width:qt,height:Ne}}_setBoundingBoxStyles(U,B){const Ee=this._calculateBoundingBoxRect(U,B);!this._isInitialRender&&!this._growAfterOpen&&(Ee.height=Math.min(Ee.height,this._lastBoundingBoxSize.height),Ee.width=Math.min(Ee.width,this._lastBoundingBoxSize.width));const Ie={};if(this._hasExactPosition())Ie.top=Ie.left="0",Ie.bottom=Ie.right=Ie.maxHeight=Ie.maxWidth="",Ie.width=Ie.height="100%";else{const Ne=this._overlayRef.getConfig().maxHeight,pt=this._overlayRef.getConfig().maxWidth;Ie.height=(0,i.HM)(Ee.height),Ie.top=(0,i.HM)(Ee.top),Ie.bottom=(0,i.HM)(Ee.bottom),Ie.width=(0,i.HM)(Ee.width),Ie.left=(0,i.HM)(Ee.left),Ie.right=(0,i.HM)(Ee.right),Ie.alignItems="center"===B.overlayX?"center":"end"===B.overlayX?"flex-end":"flex-start",Ie.justifyContent="center"===B.overlayY?"center":"bottom"===B.overlayY?"flex-end":"flex-start",Ne&&(Ie.maxHeight=(0,i.HM)(Ne)),pt&&(Ie.maxWidth=(0,i.HM)(pt))}this._lastBoundingBoxSize=Ee,Q(this._boundingBox.style,Ie)}_resetBoundingBoxStyles(){Q(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}_resetOverlayElementStyles(){Q(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}_setOverlayElementStyles(U,B){const Ee={},Ie=this._hasExactPosition(),Ne=this._hasFlexibleDimensions,pt=this._overlayRef.getConfig();if(Ie){const qt=this._viewportRuler.getViewportScrollPosition();Q(Ee,this._getExactOverlayY(B,U,qt)),Q(Ee,this._getExactOverlayX(B,U,qt))}else Ee.position="static";let Dt="",Lt=this._getOffset(B,"x"),Ut=this._getOffset(B,"y");Lt&&(Dt+=`translateX(${Lt}px) `),Ut&&(Dt+=`translateY(${Ut}px)`),Ee.transform=Dt.trim(),pt.maxHeight&&(Ie?Ee.maxHeight=(0,i.HM)(pt.maxHeight):Ne&&(Ee.maxHeight="")),pt.maxWidth&&(Ie?Ee.maxWidth=(0,i.HM)(pt.maxWidth):Ne&&(Ee.maxWidth="")),Q(this._pane.style,Ee)}_getExactOverlayY(U,B,Ee){let Ie={top:"",bottom:""},Ne=this._getOverlayPoint(B,this._overlayRect,U);return this._isPushed&&(Ne=this._pushOverlayOnScreen(Ne,this._overlayRect,Ee)),"bottom"===U.overlayY?Ie.bottom=this._document.documentElement.clientHeight-(Ne.y+this._overlayRect.height)+"px":Ie.top=(0,i.HM)(Ne.y),Ie}_getExactOverlayX(U,B,Ee){let pt,Ie={left:"",right:""},Ne=this._getOverlayPoint(B,this._overlayRect,U);return this._isPushed&&(Ne=this._pushOverlayOnScreen(Ne,this._overlayRect,Ee)),pt=this._isRtl()?"end"===U.overlayX?"left":"right":"end"===U.overlayX?"right":"left","right"===pt?Ie.right=this._document.documentElement.clientWidth-(Ne.x+this._overlayRect.width)+"px":Ie.left=(0,i.HM)(Ne.x),Ie}_getScrollVisibility(){const U=this._getOriginRect(),B=this._pane.getBoundingClientRect(),Ee=this._scrollables.map(Ie=>Ie.getElementRef().nativeElement.getBoundingClientRect());return{isOriginClipped:A(U,Ee),isOriginOutsideView:O(U,Ee),isOverlayClipped:A(B,Ee),isOverlayOutsideView:O(B,Ee)}}_subtractOverflows(U,...B){return B.reduce((Ee,Ie)=>Ee-Math.max(Ie,0),U)}_getNarrowedViewportRect(){const U=this._document.documentElement.clientWidth,B=this._document.documentElement.clientHeight,Ee=this._viewportRuler.getViewportScrollPosition();return{top:Ee.top+this._viewportMargin,left:Ee.left+this._viewportMargin,right:Ee.left+U-this._viewportMargin,bottom:Ee.top+B-this._viewportMargin,width:U-2*this._viewportMargin,height:B-2*this._viewportMargin}}_isRtl(){return"rtl"===this._overlayRef.getDirection()}_hasExactPosition(){return!this._hasFlexibleDimensions||this._isPushed}_getOffset(U,B){return"x"===B?null==U.offsetX?this._offsetX:U.offsetX:null==U.offsetY?this._offsetY:U.offsetY}_validatePositions(){}_addPanelClasses(U){this._pane&&(0,i.Eq)(U).forEach(B=>{""!==B&&-1===this._appliedPanelClasses.indexOf(B)&&(this._appliedPanelClasses.push(B),this._pane.classList.add(B))})}_clearPanelClasses(){this._pane&&(this._appliedPanelClasses.forEach(U=>{this._pane.classList.remove(U)}),this._appliedPanelClasses=[])}_getOriginRect(){const U=this._origin;if(U instanceof t.SBq)return U.nativeElement.getBoundingClientRect();if(U instanceof Element)return U.getBoundingClientRect();const B=U.width||0,Ee=U.height||0;return{top:U.y,bottom:U.y+Ee,left:U.x,right:U.x+B,height:Ee,width:B}}}function Q(de,U){for(let B in U)U.hasOwnProperty(B)&&(de[B]=U[B]);return de}function ie(de){if("number"!=typeof de&&null!=de){const[U,B]=de.split(le);return B&&"px"!==B?null:parseFloat(U)}return de||null}function ae(de){return{top:Math.floor(de.top),right:Math.floor(de.right),bottom:Math.floor(de.bottom),left:Math.floor(de.left),width:Math.floor(de.width),height:Math.floor(de.height)}}const Ye="cdk-global-overlay-wrapper";class q{constructor(){this._cssPosition="static",this._topOffset="",this._bottomOffset="",this._alignItems="",this._xPosition="",this._xOffset="",this._width="",this._height="",this._isDisposed=!1}attach(U){const B=U.getConfig();this._overlayRef=U,this._width&&!B.width&&U.updateSize({width:this._width}),this._height&&!B.height&&U.updateSize({height:this._height}),U.hostElement.classList.add(Ye),this._isDisposed=!1}top(U=""){return this._bottomOffset="",this._topOffset=U,this._alignItems="flex-start",this}left(U=""){return this._xOffset=U,this._xPosition="left",this}bottom(U=""){return this._topOffset="",this._bottomOffset=U,this._alignItems="flex-end",this}right(U=""){return this._xOffset=U,this._xPosition="right",this}start(U=""){return this._xOffset=U,this._xPosition="start",this}end(U=""){return this._xOffset=U,this._xPosition="end",this}width(U=""){return this._overlayRef?this._overlayRef.updateSize({width:U}):this._width=U,this}height(U=""){return this._overlayRef?this._overlayRef.updateSize({height:U}):this._height=U,this}centerHorizontally(U=""){return this.left(U),this._xPosition="center",this}centerVertically(U=""){return this.top(U),this._alignItems="center",this}apply(){if(!this._overlayRef||!this._overlayRef.hasAttached())return;const U=this._overlayRef.overlayElement.style,B=this._overlayRef.hostElement.style,Ee=this._overlayRef.getConfig(),{width:Ie,height:Ne,maxWidth:pt,maxHeight:Dt}=Ee,Lt=!("100%"!==Ie&&"100vw"!==Ie||pt&&"100%"!==pt&&"100vw"!==pt),Ut=!("100%"!==Ne&&"100vh"!==Ne||Dt&&"100%"!==Dt&&"100vh"!==Dt),qt=this._xPosition,en=this._xOffset,cn="rtl"===this._overlayRef.getConfig().direction;let Wt="",Vt="",st="";Lt?st="flex-start":"center"===qt?(st="center",cn?Vt=en:Wt=en):cn?"left"===qt||"end"===qt?(st="flex-end",Wt=en):("right"===qt||"start"===qt)&&(st="flex-start",Vt=en):"left"===qt||"start"===qt?(st="flex-start",Wt=en):("right"===qt||"end"===qt)&&(st="flex-end",Vt=en),U.position=this._cssPosition,U.marginLeft=Lt?"0":Wt,U.marginTop=Ut?"0":this._topOffset,U.marginBottom=this._bottomOffset,U.marginRight=Lt?"0":Vt,B.justifyContent=st,B.alignItems=Ut?"flex-start":this._alignItems}dispose(){if(this._isDisposed||!this._overlayRef)return;const U=this._overlayRef.overlayElement.style,B=this._overlayRef.hostElement,Ee=B.style;B.classList.remove(Ye),Ee.justifyContent=Ee.alignItems=U.marginTop=U.marginBottom=U.marginLeft=U.marginRight=U.position="",this._overlayRef=null,this._isDisposed=!0}}let ye=(()=>{class de{constructor(B,Ee,Ie,Ne){this._viewportRuler=B,this._document=Ee,this._platform=Ie,this._overlayContainer=Ne}global(){return new q}flexibleConnectedTo(B){return new ce(B,this._viewportRuler,this._document,this._platform,this._overlayContainer)}static#e=this.\u0275fac=function(Ee){return new(Ee||de)(t.LFG(e.rL),t.LFG(n.K0),t.LFG(l.t4),t.LFG(pe))};static#t=this.\u0275prov=t.Yz7({token:de,factory:de.\u0275fac,providedIn:"root"})}return de})(),ee=0,Be=(()=>{class de{constructor(B,Ee,Ie,Ne,pt,Dt,Lt,Ut,qt,en,cn,Wt){this.scrollStrategies=B,this._overlayContainer=Ee,this._componentFactoryResolver=Ie,this._positionBuilder=Ne,this._keyboardDispatcher=pt,this._injector=Dt,this._ngZone=Lt,this._document=Ut,this._directionality=qt,this._location=en,this._outsideClickDispatcher=cn,this._animationsModuleType=Wt}create(B){const Ee=this._createHostElement(),Ie=this._createPaneElement(Ee),Ne=this._createPortalOutlet(Ie),pt=new W(B);return pt.direction=pt.direction||this._directionality.value,new re(Ne,Ee,Ie,pt,this._ngZone,this._keyboardDispatcher,this._document,this._location,this._outsideClickDispatcher,"NoopAnimations"===this._animationsModuleType)}position(){return this._positionBuilder}_createPaneElement(B){const Ee=this._document.createElement("div");return Ee.id="cdk-overlay-"+ee++,Ee.classList.add("cdk-overlay-pane"),B.appendChild(Ee),Ee}_createHostElement(){const B=this._document.createElement("div");return this._overlayContainer.getContainerElement().appendChild(B),B}_createPortalOutlet(B){return this._appRef||(this._appRef=this._injector.get(t.z2F)),new g.u0(B,this._componentFactoryResolver,this._appRef,this._injector,this._document)}static#e=this.\u0275fac=function(Ee){return new(Ee||de)(t.LFG(F),t.LFG(pe),t.LFG(t._Vd),t.LFG(ye),t.LFG(te),t.LFG(t.zs3),t.LFG(t.R0b),t.LFG(n.K0),t.LFG(v.Is),t.LFG(n.Ye),t.LFG(ne),t.LFG(t.QbO,8))};static#t=this.\u0275prov=t.Yz7({token:de,factory:de.\u0275fac,providedIn:"root"})}return de})();const Re=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],ct=new t.OlP("cdk-connected-overlay-scroll-strategy");let Ae=(()=>{class de{constructor(B){this.elementRef=B}static#e=this.\u0275fac=function(Ee){return new(Ee||de)(t.Y36(t.SBq))};static#t=this.\u0275dir=t.lG2({type:de,selectors:[["","cdk-overlay-origin",""],["","overlay-origin",""],["","cdkOverlayOrigin",""]],exportAs:["cdkOverlayOrigin"],standalone:!0})}return de})(),Mt=(()=>{class de{get offsetX(){return this._offsetX}set offsetX(B){this._offsetX=B,this._position&&this._updatePositionStrategy(this._position)}get offsetY(){return this._offsetY}set offsetY(B){this._offsetY=B,this._position&&this._updatePositionStrategy(this._position)}get hasBackdrop(){return this._hasBackdrop}set hasBackdrop(B){this._hasBackdrop=(0,i.Ig)(B)}get lockPosition(){return this._lockPosition}set lockPosition(B){this._lockPosition=(0,i.Ig)(B)}get flexibleDimensions(){return this._flexibleDimensions}set flexibleDimensions(B){this._flexibleDimensions=(0,i.Ig)(B)}get growAfterOpen(){return this._growAfterOpen}set growAfterOpen(B){this._growAfterOpen=(0,i.Ig)(B)}get push(){return this._push}set push(B){this._push=(0,i.Ig)(B)}constructor(B,Ee,Ie,Ne,pt){this._overlay=B,this._dir=pt,this._hasBackdrop=!1,this._lockPosition=!1,this._growAfterOpen=!1,this._flexibleDimensions=!1,this._push=!1,this._backdropSubscription=p.w0.EMPTY,this._attachSubscription=p.w0.EMPTY,this._detachSubscription=p.w0.EMPTY,this._positionSubscription=p.w0.EMPTY,this.viewportMargin=0,this.open=!1,this.disableClose=!1,this.backdropClick=new t.vpe,this.positionChange=new t.vpe,this.attach=new t.vpe,this.detach=new t.vpe,this.overlayKeydown=new t.vpe,this.overlayOutsideClick=new t.vpe,this._templatePortal=new g.UE(Ee,Ie),this._scrollStrategyFactory=Ne,this.scrollStrategy=this._scrollStrategyFactory()}get overlayRef(){return this._overlayRef}get dir(){return this._dir?this._dir.value:"ltr"}ngOnDestroy(){this._attachSubscription.unsubscribe(),this._detachSubscription.unsubscribe(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this._overlayRef&&this._overlayRef.dispose()}ngOnChanges(B){this._position&&(this._updatePositionStrategy(this._position),this._overlayRef.updateSize({width:this.width,minWidth:this.minWidth,height:this.height,minHeight:this.minHeight}),B.origin&&this.open&&this._position.apply()),B.open&&(this.open?this._attachOverlay():this._detachOverlay())}_createOverlay(){(!this.positions||!this.positions.length)&&(this.positions=Re);const B=this._overlayRef=this._overlay.create(this._buildConfig());this._attachSubscription=B.attachments().subscribe(()=>this.attach.emit()),this._detachSubscription=B.detachments().subscribe(()=>this.detach.emit()),B.keydownEvents().subscribe(Ee=>{this.overlayKeydown.next(Ee),Ee.keyCode===y.hY&&!this.disableClose&&!(0,y.Vb)(Ee)&&(Ee.preventDefault(),this._detachOverlay())}),this._overlayRef.outsidePointerEvents().subscribe(Ee=>{this.overlayOutsideClick.next(Ee)})}_buildConfig(){const B=this._position=this.positionStrategy||this._createPositionStrategy(),Ee=new W({direction:this._dir,positionStrategy:B,scrollStrategy:this.scrollStrategy,hasBackdrop:this.hasBackdrop});return(this.width||0===this.width)&&(Ee.width=this.width),(this.height||0===this.height)&&(Ee.height=this.height),(this.minWidth||0===this.minWidth)&&(Ee.minWidth=this.minWidth),(this.minHeight||0===this.minHeight)&&(Ee.minHeight=this.minHeight),this.backdropClass&&(Ee.backdropClass=this.backdropClass),this.panelClass&&(Ee.panelClass=this.panelClass),Ee}_updatePositionStrategy(B){const Ee=this.positions.map(Ie=>({originX:Ie.originX,originY:Ie.originY,overlayX:Ie.overlayX,overlayY:Ie.overlayY,offsetX:Ie.offsetX||this.offsetX,offsetY:Ie.offsetY||this.offsetY,panelClass:Ie.panelClass||void 0}));return B.setOrigin(this._getFlexibleConnectedPositionStrategyOrigin()).withPositions(Ee).withFlexibleDimensions(this.flexibleDimensions).withPush(this.push).withGrowAfterOpen(this.growAfterOpen).withViewportMargin(this.viewportMargin).withLockedPosition(this.lockPosition).withTransformOriginOn(this.transformOriginSelector)}_createPositionStrategy(){const B=this._overlay.position().flexibleConnectedTo(this._getFlexibleConnectedPositionStrategyOrigin());return this._updatePositionStrategy(B),B}_getFlexibleConnectedPositionStrategyOrigin(){return this.origin instanceof Ae?this.origin.elementRef:this.origin}_attachOverlay(){this._overlayRef?this._overlayRef.getConfig().hasBackdrop=this.hasBackdrop:this._createOverlay(),this._overlayRef.hasAttached()||this._overlayRef.attach(this._templatePortal),this.hasBackdrop?this._backdropSubscription=this._overlayRef.backdropClick().subscribe(B=>{this.backdropClick.emit(B)}):this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this.positionChange.observers.length>0&&(this._positionSubscription=this._position.positionChanges.pipe(function h(de,U=!1){return(0,z.e)((B,Ee)=>{let Ie=0;B.subscribe((0,M.x)(Ee,Ne=>{const pt=de(Ne,Ie++);(pt||U)&&Ee.next(Ne),!pt&&Ee.complete()}))})}(()=>this.positionChange.observers.length>0)).subscribe(B=>{this.positionChange.emit(B),0===this.positionChange.observers.length&&this._positionSubscription.unsubscribe()}))}_detachOverlay(){this._overlayRef&&this._overlayRef.detach(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe()}static#e=this.\u0275fac=function(Ee){return new(Ee||de)(t.Y36(Be),t.Y36(t.Rgc),t.Y36(t.s_b),t.Y36(ct),t.Y36(v.Is,8))};static#t=this.\u0275dir=t.lG2({type:de,selectors:[["","cdk-connected-overlay",""],["","connected-overlay",""],["","cdkConnectedOverlay",""]],inputs:{origin:["cdkConnectedOverlayOrigin","origin"],positions:["cdkConnectedOverlayPositions","positions"],positionStrategy:["cdkConnectedOverlayPositionStrategy","positionStrategy"],offsetX:["cdkConnectedOverlayOffsetX","offsetX"],offsetY:["cdkConnectedOverlayOffsetY","offsetY"],width:["cdkConnectedOverlayWidth","width"],height:["cdkConnectedOverlayHeight","height"],minWidth:["cdkConnectedOverlayMinWidth","minWidth"],minHeight:["cdkConnectedOverlayMinHeight","minHeight"],backdropClass:["cdkConnectedOverlayBackdropClass","backdropClass"],panelClass:["cdkConnectedOverlayPanelClass","panelClass"],viewportMargin:["cdkConnectedOverlayViewportMargin","viewportMargin"],scrollStrategy:["cdkConnectedOverlayScrollStrategy","scrollStrategy"],open:["cdkConnectedOverlayOpen","open"],disableClose:["cdkConnectedOverlayDisableClose","disableClose"],transformOriginSelector:["cdkConnectedOverlayTransformOriginOn","transformOriginSelector"],hasBackdrop:["cdkConnectedOverlayHasBackdrop","hasBackdrop"],lockPosition:["cdkConnectedOverlayLockPosition","lockPosition"],flexibleDimensions:["cdkConnectedOverlayFlexibleDimensions","flexibleDimensions"],growAfterOpen:["cdkConnectedOverlayGrowAfterOpen","growAfterOpen"],push:["cdkConnectedOverlayPush","push"]},outputs:{backdropClick:"backdropClick",positionChange:"positionChange",attach:"attach",detach:"detach",overlayKeydown:"overlayKeydown",overlayOutsideClick:"overlayOutsideClick"},exportAs:["cdkConnectedOverlay"],standalone:!0,features:[t.TTD]})}return de})();const ot={provide:ct,deps:[Be],useFactory:function je(de){return()=>de.scrollStrategies.reposition()}};let mt=(()=>{class de{static#e=this.\u0275fac=function(Ee){return new(Ee||de)};static#t=this.\u0275mod=t.oAB({type:de});static#n=this.\u0275inj=t.cJS({providers:[Be,ot],imports:[v.vT,g.eL,e.Cl,e.Cl]})}return de})()},62831:(nt,I,o)=>{"use strict";o.d(I,{Mq:()=>d,Oy:()=>_,_i:()=>p,ht:()=>x,i$:()=>h,kV:()=>T,sA:()=>D,t4:()=>i,ud:()=>l});var e=o(65879),n=o(96814);let t;try{t=typeof Intl<"u"&&Intl.v8BreakIterator}catch{t=!1}let z,v,g,f,i=(()=>{class P{constructor(A){this._platformId=A,this.isBrowser=this._platformId?(0,n.NF)(this._platformId):"object"==typeof document&&!!document,this.EDGE=this.isBrowser&&/(edge)/i.test(navigator.userAgent),this.TRIDENT=this.isBrowser&&/(msie|trident)/i.test(navigator.userAgent),this.BLINK=this.isBrowser&&!(!window.chrome&&!t)&&typeof CSS<"u"&&!this.EDGE&&!this.TRIDENT,this.WEBKIT=this.isBrowser&&/AppleWebKit/i.test(navigator.userAgent)&&!this.BLINK&&!this.EDGE&&!this.TRIDENT,this.IOS=this.isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!("MSStream"in window),this.FIREFOX=this.isBrowser&&/(firefox|minefield)/i.test(navigator.userAgent),this.ANDROID=this.isBrowser&&/android/i.test(navigator.userAgent)&&!this.TRIDENT,this.SAFARI=this.isBrowser&&/safari/i.test(navigator.userAgent)&&this.WEBKIT}static#e=this.\u0275fac=function(k){return new(k||P)(e.LFG(e.Lbi))};static#t=this.\u0275prov=e.Yz7({token:P,factory:P.\u0275fac,providedIn:"root"})}return P})(),l=(()=>{class P{static#e=this.\u0275fac=function(k){return new(k||P)};static#t=this.\u0275mod=e.oAB({type:P});static#n=this.\u0275inj=e.cJS({})}return P})();function h(P){return function M(){if(null==z&&typeof window<"u")try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:()=>z=!0}))}finally{z=z||!1}return z}()?P:!!P.capture}function d(){if(null==g){if("object"!=typeof document||!document||"function"!=typeof Element||!Element)return g=!1,g;if("scrollBehavior"in document.documentElement.style)g=!0;else{const P=Element.prototype.scrollTo;g=!!P&&!/\{\s*\[native code\]\s*\}/.test(P.toString())}}return g}function p(){if("object"!=typeof document||!document)return 0;if(null==v){const P=document.createElement("div"),O=P.style;P.dir="rtl",O.width="1px",O.overflow="auto",O.visibility="hidden",O.pointerEvents="none",O.position="absolute";const A=document.createElement("div"),k=A.style;k.width="2px",k.height="1px",P.appendChild(A),document.body.appendChild(P),v=0,0===P.scrollLeft&&(P.scrollLeft=1,v=0===P.scrollLeft?1:2),P.remove()}return v}function T(P){if(function y(){if(null==f){const P=typeof document<"u"?document.head:null;f=!(!P||!P.createShadowRoot&&!P.attachShadow)}return f}()){const O=P.getRootNode?P.getRootNode():null;if(typeof ShadowRoot<"u"&&ShadowRoot&&O instanceof ShadowRoot)return O}return null}function x(){let P=typeof document<"u"&&document?document.activeElement:null;for(;P&&P.shadowRoot;){const O=P.shadowRoot.activeElement;if(O===P)break;P=O}return P}function D(P){return P.composedPath?P.composedPath()[0]:P.target}function _(){return typeof __karma__<"u"&&!!__karma__||typeof jasmine<"u"&&!!jasmine||typeof jest<"u"&&!!jest||typeof Mocha<"u"&&!!Mocha}},68484:(nt,I,o)=>{"use strict";o.d(I,{C5:()=>M,Pl:()=>x,UE:()=>h,eL:()=>_,en:()=>g,u0:()=>p});var e=o(65879),n=o(96814);class z{attach(A){return this._attachedHost=A,A.attach(this)}detach(){let A=this._attachedHost;null!=A&&(this._attachedHost=null,A.detach())}get isAttached(){return null!=this._attachedHost}setAttachedHost(A){this._attachedHost=A}}class M extends z{constructor(A,k,F,W,K){super(),this.component=A,this.viewContainerRef=k,this.injector=F,this.componentFactoryResolver=W,this.projectableNodes=K}}class h extends z{constructor(A,k,F,W){super(),this.templateRef=A,this.viewContainerRef=k,this.context=F,this.injector=W}get origin(){return this.templateRef.elementRef}attach(A,k=this.context){return this.context=k,super.attach(A)}detach(){return this.context=void 0,super.detach()}}class v extends z{constructor(A){super(),this.element=A instanceof e.SBq?A.nativeElement:A}}class g{constructor(){this._isDisposed=!1,this.attachDomPortal=null}hasAttached(){return!!this._attachedPortal}attach(A){return A instanceof M?(this._attachedPortal=A,this.attachComponentPortal(A)):A instanceof h?(this._attachedPortal=A,this.attachTemplatePortal(A)):this.attachDomPortal&&A instanceof v?(this._attachedPortal=A,this.attachDomPortal(A)):void 0}detach(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}dispose(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}setDisposeFn(A){this._disposeFn=A}_invokeDisposeFn(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}}class p extends g{constructor(A,k,F,W,K){super(),this.outletElement=A,this._componentFactoryResolver=k,this._appRef=F,this._defaultInjector=W,this.attachDomPortal=_e=>{const Y=_e.element,G=this._document.createComment("dom-portal");Y.parentNode.insertBefore(G,Y),this.outletElement.appendChild(Y),this._attachedPortal=_e,super.setDisposeFn(()=>{G.parentNode&&G.parentNode.replaceChild(Y,G)})},this._document=K}attachComponentPortal(A){const F=(A.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(A.component);let W;return A.viewContainerRef?(W=A.viewContainerRef.createComponent(F,A.viewContainerRef.length,A.injector||A.viewContainerRef.injector,A.projectableNodes||void 0),this.setDisposeFn(()=>W.destroy())):(W=F.create(A.injector||this._defaultInjector||e.zs3.NULL),this._appRef.attachView(W.hostView),this.setDisposeFn(()=>{this._appRef.viewCount>0&&this._appRef.detachView(W.hostView),W.destroy()})),this.outletElement.appendChild(this._getComponentRootNode(W)),this._attachedPortal=A,W}attachTemplatePortal(A){let k=A.viewContainerRef,F=k.createEmbeddedView(A.templateRef,A.context,{injector:A.injector});return F.rootNodes.forEach(W=>this.outletElement.appendChild(W)),F.detectChanges(),this.setDisposeFn(()=>{let W=k.indexOf(F);-1!==W&&k.remove(W)}),this._attachedPortal=A,F}dispose(){super.dispose(),this.outletElement.remove()}_getComponentRootNode(A){return A.hostView.rootNodes[0]}}let x=(()=>{class O extends g{constructor(k,F,W){super(),this._componentFactoryResolver=k,this._viewContainerRef=F,this._isInitialized=!1,this.attached=new e.vpe,this.attachDomPortal=K=>{const _e=K.element,Y=this._document.createComment("dom-portal");K.setAttachedHost(this),_e.parentNode.insertBefore(Y,_e),this._getRootNode().appendChild(_e),this._attachedPortal=K,super.setDisposeFn(()=>{Y.parentNode&&Y.parentNode.replaceChild(_e,Y)})},this._document=W}get portal(){return this._attachedPortal}set portal(k){this.hasAttached()&&!k&&!this._isInitialized||(this.hasAttached()&&super.detach(),k&&super.attach(k),this._attachedPortal=k||null)}get attachedRef(){return this._attachedRef}ngOnInit(){this._isInitialized=!0}ngOnDestroy(){super.dispose(),this._attachedRef=this._attachedPortal=null}attachComponentPortal(k){k.setAttachedHost(this);const F=null!=k.viewContainerRef?k.viewContainerRef:this._viewContainerRef,K=(k.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(k.component),_e=F.createComponent(K,F.length,k.injector||F.injector,k.projectableNodes||void 0);return F!==this._viewContainerRef&&this._getRootNode().appendChild(_e.hostView.rootNodes[0]),super.setDisposeFn(()=>_e.destroy()),this._attachedPortal=k,this._attachedRef=_e,this.attached.emit(_e),_e}attachTemplatePortal(k){k.setAttachedHost(this);const F=this._viewContainerRef.createEmbeddedView(k.templateRef,k.context,{injector:k.injector});return super.setDisposeFn(()=>this._viewContainerRef.clear()),this._attachedPortal=k,this._attachedRef=F,this.attached.emit(F),F}_getRootNode(){const k=this._viewContainerRef.element.nativeElement;return k.nodeType===k.ELEMENT_NODE?k:k.parentNode}static#e=this.\u0275fac=function(F){return new(F||O)(e.Y36(e._Vd),e.Y36(e.s_b),e.Y36(n.K0))};static#t=this.\u0275dir=e.lG2({type:O,selectors:[["","cdkPortalOutlet",""]],inputs:{portal:["cdkPortalOutlet","portal"]},outputs:{attached:"attached"},exportAs:["cdkPortalOutlet"],features:[e.qOj]})}return O})(),_=(()=>{class O{static#e=this.\u0275fac=function(F){return new(F||O)};static#t=this.\u0275mod=e.oAB({type:O});static#n=this.\u0275inj=e.cJS({})}return O})()},205:(nt,I,o)=>{"use strict";o.d(I,{xd:()=>Q,ZD:()=>ot,x0:()=>Ae,N7:()=>Re,mF:()=>ae,Cl:()=>mt,rL:()=>Ye});var e=o(42495),n=o(65879),t=o(78645),i=o(22096),l=o(65592),C=o(92438),E=o(80927),u=o(76410),z=o(47394),M=o(2664),h=o(93997),v=o(29028),g=o(32181),d=o(59773),p=o(27921),f=o(79360),y=o(8251),x=o(94664),D=o(97328),_=o(63020),O=o(62831),A=o(96814),k=o(49388),F=o(93168);class W{}class _e extends W{constructor(de){super(),this._data=de}connect(){return(0,M.b)(this._data)?this._data:(0,i.of)(this._data)}disconnect(){}}class G{constructor(){this.viewCacheSize=20,this._viewCache=[]}applyChanges(de,U,B,Ee,Ie){de.forEachOperation((Ne,pt,Dt)=>{let Lt,Ut;null==Ne.previousIndex?(Lt=this._insertView(()=>B(Ne,pt,Dt),Dt,U,Ee(Ne)),Ut=Lt?1:0):null==Dt?(this._detachAndCacheView(pt,U),Ut=3):(Lt=this._moveView(pt,Dt,U,Ee(Ne)),Ut=2),Ie&&Ie({context:Lt?.context,operation:Ut,record:Ne})})}detach(){for(const de of this._viewCache)de.destroy();this._viewCache=[]}_insertView(de,U,B,Ee){const Ie=this._insertViewFromCache(U,B);if(Ie)return void(Ie.context.$implicit=Ee);const Ne=de();return B.createEmbeddedView(Ne.templateRef,Ne.context,Ne.index)}_detachAndCacheView(de,U){const B=U.detach(de);this._maybeCacheView(B,U)}_moveView(de,U,B,Ee){const Ie=B.get(de);return B.move(Ie,U),Ie.context.$implicit=Ee,Ie}_maybeCacheView(de,U){if(this._viewCache.length0?Ie/this._itemSize:0;if(U.end>Ee){const Dt=Math.ceil(B/this._itemSize),Lt=Math.max(0,Math.min(Ne,Ee-Dt));Ne!=Lt&&(Ne=Lt,Ie=Lt*this._itemSize,U.start=Math.floor(Ne)),U.end=Math.max(0,Math.min(Ee,U.start+Dt))}const pt=Ie-U.start*this._itemSize;if(pt0&&(U.end=Math.min(Ee,U.end+Lt),U.start=Math.max(0,Math.floor(Ne-this._minBufferPx/this._itemSize)))}}this._viewport.setRenderedRange(U),this._viewport.setRenderedContentOffset(this._itemSize*U.start),this._scrolledIndexChange.next(Math.floor(Ne))}}function ce(we){return we._scrollStrategy}let Q=(()=>{class we{constructor(){this._itemSize=20,this._minBufferPx=100,this._maxBufferPx=200,this._scrollStrategy=new le(this.itemSize,this.minBufferPx,this.maxBufferPx)}get itemSize(){return this._itemSize}set itemSize(U){this._itemSize=(0,e.su)(U)}get minBufferPx(){return this._minBufferPx}set minBufferPx(U){this._minBufferPx=(0,e.su)(U)}get maxBufferPx(){return this._maxBufferPx}set maxBufferPx(U){this._maxBufferPx=(0,e.su)(U)}ngOnChanges(){this._scrollStrategy.updateItemAndBufferSize(this.itemSize,this.minBufferPx,this.maxBufferPx)}static#e=this.\u0275fac=function(B){return new(B||we)};static#t=this.\u0275dir=n.lG2({type:we,selectors:[["cdk-virtual-scroll-viewport","itemSize",""]],inputs:{itemSize:"itemSize",minBufferPx:"minBufferPx",maxBufferPx:"maxBufferPx"},standalone:!0,features:[n._Bn([{provide:be,useFactory:ce,deps:[(0,n.Gpc)(()=>we)]}]),n.TTD]})}return we})(),ae=(()=>{class we{constructor(U,B,Ee){this._ngZone=U,this._platform=B,this._scrolled=new t.x,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map,this._document=Ee}register(U){this.scrollContainers.has(U)||this.scrollContainers.set(U,U.elementScrolled().subscribe(()=>this._scrolled.next(U)))}deregister(U){const B=this.scrollContainers.get(U);B&&(B.unsubscribe(),this.scrollContainers.delete(U))}scrolled(U=20){return this._platform.isBrowser?new l.y(B=>{this._globalSubscription||this._addGlobalListener();const Ee=U>0?this._scrolled.pipe((0,v.e)(U)).subscribe(B):this._scrolled.subscribe(B);return this._scrolledCount++,()=>{Ee.unsubscribe(),this._scrolledCount--,this._scrolledCount||this._removeGlobalListener()}}):(0,i.of)()}ngOnDestroy(){this._removeGlobalListener(),this.scrollContainers.forEach((U,B)=>this.deregister(B)),this._scrolled.complete()}ancestorScrolled(U,B){const Ee=this.getAncestorScrollContainers(U);return this.scrolled(B).pipe((0,g.h)(Ie=>!Ie||Ee.indexOf(Ie)>-1))}getAncestorScrollContainers(U){const B=[];return this.scrollContainers.forEach((Ee,Ie)=>{this._scrollableContainsElement(Ie,U)&&B.push(Ie)}),B}_getWindow(){return this._document.defaultView||window}_scrollableContainsElement(U,B){let Ee=(0,e.fI)(B),Ie=U.getElementRef().nativeElement;do{if(Ee==Ie)return!0}while(Ee=Ee.parentElement);return!1}_addGlobalListener(){this._globalSubscription=this._ngZone.runOutsideAngular(()=>{const U=this._getWindow();return(0,C.R)(U.document,"scroll").subscribe(()=>this._scrolled.next())})}_removeGlobalListener(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)}static#e=this.\u0275fac=function(B){return new(B||we)(n.LFG(n.R0b),n.LFG(O.t4),n.LFG(A.K0,8))};static#t=this.\u0275prov=n.Yz7({token:we,factory:we.\u0275fac,providedIn:"root"})}return we})(),xe=(()=>{class we{constructor(U,B,Ee,Ie){this.elementRef=U,this.scrollDispatcher=B,this.ngZone=Ee,this.dir=Ie,this._destroyed=new t.x,this._elementScrolled=new l.y(Ne=>this.ngZone.runOutsideAngular(()=>(0,C.R)(this.elementRef.nativeElement,"scroll").pipe((0,d.R)(this._destroyed)).subscribe(Ne)))}ngOnInit(){this.scrollDispatcher.register(this)}ngOnDestroy(){this.scrollDispatcher.deregister(this),this._destroyed.next(),this._destroyed.complete()}elementScrolled(){return this._elementScrolled}getElementRef(){return this.elementRef}scrollTo(U){const B=this.elementRef.nativeElement,Ee=this.dir&&"rtl"==this.dir.value;null==U.left&&(U.left=Ee?U.end:U.start),null==U.right&&(U.right=Ee?U.start:U.end),null!=U.bottom&&(U.top=B.scrollHeight-B.clientHeight-U.bottom),Ee&&0!=(0,O._i)()?(null!=U.left&&(U.right=B.scrollWidth-B.clientWidth-U.left),2==(0,O._i)()?U.left=U.right:1==(0,O._i)()&&(U.left=U.right?-U.right:U.right)):null!=U.right&&(U.left=B.scrollWidth-B.clientWidth-U.right),this._applyScrollToOptions(U)}_applyScrollToOptions(U){const B=this.elementRef.nativeElement;(0,O.Mq)()?B.scrollTo(U):(null!=U.top&&(B.scrollTop=U.top),null!=U.left&&(B.scrollLeft=U.left))}measureScrollOffset(U){const B="left",Ie=this.elementRef.nativeElement;if("top"==U)return Ie.scrollTop;if("bottom"==U)return Ie.scrollHeight-Ie.clientHeight-Ie.scrollTop;const Ne=this.dir&&"rtl"==this.dir.value;return"start"==U?U=Ne?"right":B:"end"==U&&(U=Ne?B:"right"),Ne&&2==(0,O._i)()?U==B?Ie.scrollWidth-Ie.clientWidth-Ie.scrollLeft:Ie.scrollLeft:Ne&&1==(0,O._i)()?U==B?Ie.scrollLeft+Ie.scrollWidth-Ie.clientWidth:-Ie.scrollLeft:U==B?Ie.scrollLeft:Ie.scrollWidth-Ie.clientWidth-Ie.scrollLeft}static#e=this.\u0275fac=function(B){return new(B||we)(n.Y36(n.SBq),n.Y36(ae),n.Y36(n.R0b),n.Y36(k.Is,8))};static#t=this.\u0275dir=n.lG2({type:we,selectors:[["","cdk-scrollable",""],["","cdkScrollable",""]],standalone:!0})}return we})(),Ye=(()=>{class we{constructor(U,B,Ee){this._platform=U,this._change=new t.x,this._changeListener=Ie=>{this._change.next(Ie)},this._document=Ee,B.runOutsideAngular(()=>{if(U.isBrowser){const Ie=this._getWindow();Ie.addEventListener("resize",this._changeListener),Ie.addEventListener("orientationchange",this._changeListener)}this.change().subscribe(()=>this._viewportSize=null)})}ngOnDestroy(){if(this._platform.isBrowser){const U=this._getWindow();U.removeEventListener("resize",this._changeListener),U.removeEventListener("orientationchange",this._changeListener)}this._change.complete()}getViewportSize(){this._viewportSize||this._updateViewportSize();const U={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),U}getViewportRect(){const U=this.getViewportScrollPosition(),{width:B,height:Ee}=this.getViewportSize();return{top:U.top,left:U.left,bottom:U.top+Ee,right:U.left+B,height:Ee,width:B}}getViewportScrollPosition(){if(!this._platform.isBrowser)return{top:0,left:0};const U=this._document,B=this._getWindow(),Ee=U.documentElement,Ie=Ee.getBoundingClientRect();return{top:-Ie.top||U.body.scrollTop||B.scrollY||Ee.scrollTop||0,left:-Ie.left||U.body.scrollLeft||B.scrollX||Ee.scrollLeft||0}}change(U=20){return U>0?this._change.pipe((0,v.e)(U)):this._change}_getWindow(){return this._document.defaultView||window}_updateViewportSize(){const U=this._getWindow();this._viewportSize=this._platform.isBrowser?{width:U.innerWidth,height:U.innerHeight}:{width:0,height:0}}static#e=this.\u0275fac=function(B){return new(B||we)(n.LFG(O.t4),n.LFG(n.R0b),n.LFG(A.K0,8))};static#t=this.\u0275prov=n.Yz7({token:we,factory:we.\u0275fac,providedIn:"root"})}return we})();const q=new n.OlP("VIRTUAL_SCROLLABLE");let ye=(()=>{class we extends xe{constructor(U,B,Ee,Ie){super(U,B,Ee,Ie)}measureViewportSize(U){const B=this.elementRef.nativeElement;return"horizontal"===U?B.clientWidth:B.clientHeight}static#e=this.\u0275fac=function(B){return new(B||we)(n.Y36(n.SBq),n.Y36(ae),n.Y36(n.R0b),n.Y36(k.Is,8))};static#t=this.\u0275dir=n.lG2({type:we,features:[n.qOj]})}return we})();const Be=typeof requestAnimationFrame<"u"?E.Z:u.E;let Re=(()=>{class we extends ye{get orientation(){return this._orientation}set orientation(U){this._orientation!==U&&(this._orientation=U,this._calculateSpacerSize())}get appendOnly(){return this._appendOnly}set appendOnly(U){this._appendOnly=(0,e.Ig)(U)}constructor(U,B,Ee,Ie,Ne,pt,Dt,Lt){super(U,pt,Ee,Ne),this.elementRef=U,this._changeDetectorRef=B,this._scrollStrategy=Ie,this.scrollable=Lt,this._platform=(0,n.f3M)(O.t4),this._detachedSubject=new t.x,this._renderedRangeSubject=new t.x,this._orientation="vertical",this._appendOnly=!1,this.scrolledIndexChange=new l.y(Ut=>this._scrollStrategy.scrolledIndexChange.subscribe(qt=>Promise.resolve().then(()=>this.ngZone.run(()=>Ut.next(qt))))),this.renderedRangeStream=this._renderedRangeSubject,this._totalContentSize=0,this._totalContentWidth="",this._totalContentHeight="",this._renderedRange={start:0,end:0},this._dataLength=0,this._viewportSize=0,this._renderedContentOffset=0,this._renderedContentOffsetNeedsRewrite=!1,this._isChangeDetectionPending=!1,this._runAfterChangeDetection=[],this._viewportChanges=z.w0.EMPTY,this._viewportChanges=Dt.change().subscribe(()=>{this.checkViewportSize()}),this.scrollable||(this.elementRef.nativeElement.classList.add("cdk-virtual-scrollable"),this.scrollable=this)}ngOnInit(){this._platform.isBrowser&&(this.scrollable===this&&super.ngOnInit(),this.ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>{this._measureViewportSize(),this._scrollStrategy.attach(this),this.scrollable.elementScrolled().pipe((0,p.O)(null),(0,v.e)(0,Be),(0,d.R)(this._destroyed)).subscribe(()=>this._scrollStrategy.onContentScrolled()),this._markChangeDetectionNeeded()})))}ngOnDestroy(){this.detach(),this._scrollStrategy.detach(),this._renderedRangeSubject.complete(),this._detachedSubject.complete(),this._viewportChanges.unsubscribe(),super.ngOnDestroy()}attach(U){this.ngZone.runOutsideAngular(()=>{this._forOf=U,this._forOf.dataStream.pipe((0,d.R)(this._detachedSubject)).subscribe(B=>{const Ee=B.length;Ee!==this._dataLength&&(this._dataLength=Ee,this._scrollStrategy.onDataLengthChanged()),this._doChangeDetection()})})}detach(){this._forOf=null,this._detachedSubject.next()}getDataLength(){return this._dataLength}getViewportSize(){return this._viewportSize}getRenderedRange(){return this._renderedRange}measureBoundingClientRectWithScrollOffset(U){return this.getElementRef().nativeElement.getBoundingClientRect()[U]}setTotalContentSize(U){this._totalContentSize!==U&&(this._totalContentSize=U,this._calculateSpacerSize(),this._markChangeDetectionNeeded())}setRenderedRange(U){(function ee(we,de){return we.start==de.start&&we.end==de.end})(this._renderedRange,U)||(this.appendOnly&&(U={start:0,end:Math.max(this._renderedRange.end,U.end)}),this._renderedRangeSubject.next(this._renderedRange=U),this._markChangeDetectionNeeded(()=>this._scrollStrategy.onContentRendered()))}getOffsetToRenderedContentStart(){return this._renderedContentOffsetNeedsRewrite?null:this._renderedContentOffset}setRenderedContentOffset(U,B="to-start"){U=this.appendOnly&&"to-start"===B?0:U;const Ie="horizontal"==this.orientation,Ne=Ie?"X":"Y";let Dt=`translate${Ne}(${Number((Ie&&this.dir&&"rtl"==this.dir.value?-1:1)*U)}px)`;this._renderedContentOffset=U,"to-end"===B&&(Dt+=` translate${Ne}(-100%)`,this._renderedContentOffsetNeedsRewrite=!0),this._renderedContentTransform!=Dt&&(this._renderedContentTransform=Dt,this._markChangeDetectionNeeded(()=>{this._renderedContentOffsetNeedsRewrite?(this._renderedContentOffset-=this.measureRenderedContentSize(),this._renderedContentOffsetNeedsRewrite=!1,this.setRenderedContentOffset(this._renderedContentOffset)):this._scrollStrategy.onRenderedOffsetChanged()}))}scrollToOffset(U,B="auto"){const Ee={behavior:B};"horizontal"===this.orientation?Ee.start=U:Ee.top=U,this.scrollable.scrollTo(Ee)}scrollToIndex(U,B="auto"){this._scrollStrategy.scrollToIndex(U,B)}measureScrollOffset(U){let B;return B=this.scrollable==this?Ee=>super.measureScrollOffset(Ee):Ee=>this.scrollable.measureScrollOffset(Ee),Math.max(0,B(U??("horizontal"===this.orientation?"start":"top"))-this.measureViewportOffset())}measureViewportOffset(U){let B;const Ne="rtl"==this.dir?.value;B="start"==U?Ne?"right":"left":"end"==U?Ne?"left":"right":U||("horizontal"===this.orientation?"left":"top");const pt=this.scrollable.measureBoundingClientRectWithScrollOffset(B);return this.elementRef.nativeElement.getBoundingClientRect()[B]-pt}measureRenderedContentSize(){const U=this._contentWrapper.nativeElement;return"horizontal"===this.orientation?U.offsetWidth:U.offsetHeight}measureRangeSize(U){return this._forOf?this._forOf.measureRangeSize(U,this.orientation):0}checkViewportSize(){this._measureViewportSize(),this._scrollStrategy.onDataLengthChanged()}_measureViewportSize(){this._viewportSize=this.scrollable.measureViewportSize(this.orientation)}_markChangeDetectionNeeded(U){U&&this._runAfterChangeDetection.push(U),this._isChangeDetectionPending||(this._isChangeDetectionPending=!0,this.ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>{this._doChangeDetection()})))}_doChangeDetection(){this._isChangeDetectionPending=!1,this._contentWrapper.nativeElement.style.transform=this._renderedContentTransform,this.ngZone.run(()=>this._changeDetectorRef.markForCheck());const U=this._runAfterChangeDetection;this._runAfterChangeDetection=[];for(const B of U)B()}_calculateSpacerSize(){this._totalContentHeight="horizontal"===this.orientation?"":`${this._totalContentSize}px`,this._totalContentWidth="horizontal"===this.orientation?`${this._totalContentSize}px`:""}static#e=this.\u0275fac=function(B){return new(B||we)(n.Y36(n.SBq),n.Y36(n.sBO),n.Y36(n.R0b),n.Y36(be,8),n.Y36(k.Is,8),n.Y36(ae),n.Y36(Ye),n.Y36(q,8))};static#t=this.\u0275cmp=n.Xpm({type:we,selectors:[["cdk-virtual-scroll-viewport"]],viewQuery:function(B,Ee){if(1&B&&n.Gf(pe,7),2&B){let Ie;n.iGM(Ie=n.CRH())&&(Ee._contentWrapper=Ie.first)}},hostAttrs:[1,"cdk-virtual-scroll-viewport"],hostVars:4,hostBindings:function(B,Ee){2&B&&n.ekj("cdk-virtual-scroll-orientation-horizontal","horizontal"===Ee.orientation)("cdk-virtual-scroll-orientation-vertical","horizontal"!==Ee.orientation)},inputs:{orientation:"orientation",appendOnly:"appendOnly"},outputs:{scrolledIndexChange:"scrolledIndexChange"},standalone:!0,features:[n._Bn([{provide:xe,useFactory:(U,B)=>U||B,deps:[[new n.FiY,new n.tBr(q)],we]}]),n.qOj,n.jDz],ngContentSelectors:re,decls:4,vars:4,consts:[[1,"cdk-virtual-scroll-content-wrapper"],["contentWrapper",""],[1,"cdk-virtual-scroll-spacer"]],template:function(B,Ee){1&B&&(n.F$t(),n.TgZ(0,"div",0,1),n.Hsn(2),n.qZA(),n._UZ(3,"div",2)),2&B&&(n.xp6(3),n.Udp("width",Ee._totalContentWidth)("height",Ee._totalContentHeight))},styles:["cdk-virtual-scroll-viewport{display:block;position:relative;transform:translateZ(0)}.cdk-virtual-scrollable{overflow:auto;will-change:scroll-position;contain:strict;-webkit-overflow-scrolling:touch}.cdk-virtual-scroll-content-wrapper{position:absolute;top:0;left:0;contain:content}[dir=rtl] .cdk-virtual-scroll-content-wrapper{right:0;left:auto}.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper{min-height:100%}.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper>dl:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper>ol:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper>table:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper>ul:not([cdkVirtualFor]){padding-left:0;padding-right:0;margin-left:0;margin-right:0;border-left-width:0;border-right-width:0;outline:none}.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper{min-width:100%}.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper>dl:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper>ol:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper>table:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper>ul:not([cdkVirtualFor]){padding-top:0;padding-bottom:0;margin-top:0;margin-bottom:0;border-top-width:0;border-bottom-width:0;outline:none}.cdk-virtual-scroll-spacer{height:1px;transform-origin:0 0;flex:0 0 auto}[dir=rtl] .cdk-virtual-scroll-spacer{transform-origin:100% 0}"],encapsulation:2,changeDetection:0})}return we})();function ct(we,de,U){if(!U.getBoundingClientRect)return 0;const Ee=U.getBoundingClientRect();return"horizontal"===we?"start"===de?Ee.left:Ee.right:"start"===de?Ee.top:Ee.bottom}let Ae=(()=>{class we{get cdkVirtualForOf(){return this._cdkVirtualForOf}set cdkVirtualForOf(U){this._cdkVirtualForOf=U,function K(we){return we&&"function"==typeof we.connect&&!(we instanceof F.c)}(U)?this._dataSourceChanges.next(U):this._dataSourceChanges.next(new _e((0,M.b)(U)?U:Array.from(U||[])))}get cdkVirtualForTrackBy(){return this._cdkVirtualForTrackBy}set cdkVirtualForTrackBy(U){this._needsUpdate=!0,this._cdkVirtualForTrackBy=U?(B,Ee)=>U(B+(this._renderedRange?this._renderedRange.start:0),Ee):void 0}set cdkVirtualForTemplate(U){U&&(this._needsUpdate=!0,this._template=U)}get cdkVirtualForTemplateCacheSize(){return this._viewRepeater.viewCacheSize}set cdkVirtualForTemplateCacheSize(U){this._viewRepeater.viewCacheSize=(0,e.su)(U)}constructor(U,B,Ee,Ie,Ne,pt){this._viewContainerRef=U,this._template=B,this._differs=Ee,this._viewRepeater=Ie,this._viewport=Ne,this.viewChange=new t.x,this._dataSourceChanges=new t.x,this.dataStream=this._dataSourceChanges.pipe((0,p.O)(null),function T(){return(0,f.e)((we,de)=>{let U,B=!1;we.subscribe((0,y.x)(de,Ee=>{const Ie=U;U=Ee,B&&de.next([Ie,Ee]),B=!0}))})}(),(0,x.w)(([Dt,Lt])=>this._changeDataSource(Dt,Lt)),function P(we,de,U){let B,Ee=!1;return we&&"object"==typeof we?({bufferSize:B=1/0,windowTime:de=1/0,refCount:Ee=!1,scheduler:U}=we):B=we??1/0,(0,_.B)({connector:()=>new D.t(B,de,U),resetOnError:!0,resetOnComplete:!1,resetOnRefCountZero:Ee})}(1)),this._differ=null,this._needsUpdate=!1,this._destroyed=new t.x,this.dataStream.subscribe(Dt=>{this._data=Dt,this._onRenderedDataChange()}),this._viewport.renderedRangeStream.pipe((0,d.R)(this._destroyed)).subscribe(Dt=>{this._renderedRange=Dt,this.viewChange.observers.length&&pt.run(()=>this.viewChange.next(this._renderedRange)),this._onRenderedDataChange()}),this._viewport.attach(this)}measureRangeSize(U,B){if(U.start>=U.end)return 0;const Ee=U.start-this._renderedRange.start,Ie=U.end-U.start;let Ne,pt;for(let Dt=0;Dt-1;Dt--){const Lt=this._viewContainerRef.get(Dt+Ee);if(Lt&&Lt.rootNodes.length){pt=Lt.rootNodes[Lt.rootNodes.length-1];break}}return Ne&&pt?ct(B,"end",pt)-ct(B,"start",Ne):0}ngDoCheck(){if(this._differ&&this._needsUpdate){const U=this._differ.diff(this._renderedItems);U?this._applyChanges(U):this._updateContext(),this._needsUpdate=!1}}ngOnDestroy(){this._viewport.detach(),this._dataSourceChanges.next(void 0),this._dataSourceChanges.complete(),this.viewChange.complete(),this._destroyed.next(),this._destroyed.complete(),this._viewRepeater.detach()}_onRenderedDataChange(){this._renderedRange&&(this._renderedItems=this._data.slice(this._renderedRange.start,this._renderedRange.end),this._differ||(this._differ=this._differs.find(this._renderedItems).create((U,B)=>this.cdkVirtualForTrackBy?this.cdkVirtualForTrackBy(U,B):B)),this._needsUpdate=!0)}_changeDataSource(U,B){return U&&U.disconnect(this),this._needsUpdate=!0,B?B.connect(this):(0,i.of)()}_updateContext(){const U=this._data.length;let B=this._viewContainerRef.length;for(;B--;){const Ee=this._viewContainerRef.get(B);Ee.context.index=this._renderedRange.start+B,Ee.context.count=U,this._updateComputedContextProperties(Ee.context),Ee.detectChanges()}}_applyChanges(U){this._viewRepeater.applyChanges(U,this._viewContainerRef,(Ie,Ne,pt)=>this._getEmbeddedViewArgs(Ie,pt),Ie=>Ie.item),U.forEachIdentityChange(Ie=>{this._viewContainerRef.get(Ie.currentIndex).context.$implicit=Ie.item});const B=this._data.length;let Ee=this._viewContainerRef.length;for(;Ee--;){const Ie=this._viewContainerRef.get(Ee);Ie.context.index=this._renderedRange.start+Ee,Ie.context.count=B,this._updateComputedContextProperties(Ie.context)}}_updateComputedContextProperties(U){U.first=0===U.index,U.last=U.index===U.count-1,U.even=U.index%2==0,U.odd=!U.even}_getEmbeddedViewArgs(U,B){return{templateRef:this._template,context:{$implicit:U.item,cdkVirtualForOf:this._cdkVirtualForOf,index:-1,count:-1,first:!1,last:!1,odd:!1,even:!1},index:B}}static#e=this.\u0275fac=function(B){return new(B||we)(n.Y36(n.s_b),n.Y36(n.Rgc),n.Y36(n.ZZ4),n.Y36(ne),n.Y36(Re,4),n.Y36(n.R0b))};static#t=this.\u0275dir=n.lG2({type:we,selectors:[["","cdkVirtualFor","","cdkVirtualForOf",""]],inputs:{cdkVirtualForOf:"cdkVirtualForOf",cdkVirtualForTrackBy:"cdkVirtualForTrackBy",cdkVirtualForTemplate:"cdkVirtualForTemplate",cdkVirtualForTemplateCacheSize:"cdkVirtualForTemplateCacheSize"},standalone:!0,features:[n._Bn([{provide:ne,useClass:G}])]})}return we})(),ot=(()=>{class we{static#e=this.\u0275fac=function(B){return new(B||we)};static#t=this.\u0275mod=n.oAB({type:we});static#n=this.\u0275inj=n.cJS({})}return we})(),mt=(()=>{class we{static#e=this.\u0275fac=function(B){return new(B||we)};static#t=this.\u0275mod=n.oAB({type:we});static#n=this.\u0275inj=n.cJS({imports:[k.vT,ot,k.vT,ot]})}return we})()},96814:(nt,I,o)=>{"use strict";o.d(I,{Do:()=>f,ED:()=>oo,EM:()=>so,H9:()=>Nt,HT:()=>i,JF:()=>vo,JJ:()=>gt,K0:()=>C,Mx:()=>Mn,NF:()=>go,O5:()=>hi,OU:()=>zn,Ov:()=>Pi,PC:()=>$i,PM:()=>hs,RF:()=>ei,S$:()=>g,Tn:()=>F,Ts:()=>Ln,V_:()=>u,Ye:()=>y,b0:()=>p,bD:()=>ui,ez:()=>Qn,gd:()=>Bn,mk:()=>Rn,n9:()=>po,ol:()=>G,p6:()=>Ee,q:()=>t,qS:()=>Dn,sg:()=>ci,tP:()=>Qi,uf:()=>$,w_:()=>l,x:()=>k});var e=o(65879);let n=null;function t(){return n}function i(me){n||(n=me)}class l{}const C=new e.OlP("DocumentToken");let E=(()=>{class me{historyGo(Ve){throw new Error("Not implemented")}static#e=this.\u0275fac=function(ut){return new(ut||me)};static#t=this.\u0275prov=e.Yz7({token:me,factory:function(){return(0,e.f3M)(z)},providedIn:"platform"})}return me})();const u=new e.OlP("Location Initialized");let z=(()=>{class me extends E{constructor(){super(),this._doc=(0,e.f3M)(C),this._location=window.location,this._history=window.history}getBaseHrefFromDOM(){return t().getBaseHref(this._doc)}onPopState(Ve){const ut=t().getGlobalEventTarget(this._doc,"window");return ut.addEventListener("popstate",Ve,!1),()=>ut.removeEventListener("popstate",Ve)}onHashChange(Ve){const ut=t().getGlobalEventTarget(this._doc,"window");return ut.addEventListener("hashchange",Ve,!1),()=>ut.removeEventListener("hashchange",Ve)}get href(){return this._location.href}get protocol(){return this._location.protocol}get hostname(){return this._location.hostname}get port(){return this._location.port}get pathname(){return this._location.pathname}get search(){return this._location.search}get hash(){return this._location.hash}set pathname(Ve){this._location.pathname=Ve}pushState(Ve,ut,Ht){this._history.pushState(Ve,ut,Ht)}replaceState(Ve,ut,Ht){this._history.replaceState(Ve,ut,Ht)}forward(){this._history.forward()}back(){this._history.back()}historyGo(Ve=0){this._history.go(Ve)}getState(){return this._history.state}static#e=this.\u0275fac=function(ut){return new(ut||me)};static#t=this.\u0275prov=e.Yz7({token:me,factory:function(){return new me},providedIn:"platform"})}return me})();function M(me,_t){if(0==me.length)return _t;if(0==_t.length)return me;let Ve=0;return me.endsWith("/")&&Ve++,_t.startsWith("/")&&Ve++,2==Ve?me+_t.substring(1):1==Ve?me+_t:me+"/"+_t}function h(me){const _t=me.match(/#|\?|$/),Ve=_t&&_t.index||me.length;return me.slice(0,Ve-("/"===me[Ve-1]?1:0))+me.slice(Ve)}function v(me){return me&&"?"!==me[0]?"?"+me:me}let g=(()=>{class me{historyGo(Ve){throw new Error("Not implemented")}static#e=this.\u0275fac=function(ut){return new(ut||me)};static#t=this.\u0275prov=e.Yz7({token:me,factory:function(){return(0,e.f3M)(p)},providedIn:"root"})}return me})();const d=new e.OlP("appBaseHref");let p=(()=>{class me extends g{constructor(Ve,ut){super(),this._platformLocation=Ve,this._removeListenerFns=[],this._baseHref=ut??this._platformLocation.getBaseHrefFromDOM()??(0,e.f3M)(C).location?.origin??""}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(Ve){this._removeListenerFns.push(this._platformLocation.onPopState(Ve),this._platformLocation.onHashChange(Ve))}getBaseHref(){return this._baseHref}prepareExternalUrl(Ve){return M(this._baseHref,Ve)}path(Ve=!1){const ut=this._platformLocation.pathname+v(this._platformLocation.search),Ht=this._platformLocation.hash;return Ht&&Ve?`${ut}${Ht}`:ut}pushState(Ve,ut,Ht,rn){const an=this.prepareExternalUrl(Ht+v(rn));this._platformLocation.pushState(Ve,ut,an)}replaceState(Ve,ut,Ht,rn){const an=this.prepareExternalUrl(Ht+v(rn));this._platformLocation.replaceState(Ve,ut,an)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(Ve=0){this._platformLocation.historyGo?.(Ve)}static#e=this.\u0275fac=function(ut){return new(ut||me)(e.LFG(E),e.LFG(d,8))};static#t=this.\u0275prov=e.Yz7({token:me,factory:me.\u0275fac,providedIn:"root"})}return me})(),f=(()=>{class me extends g{constructor(Ve,ut){super(),this._platformLocation=Ve,this._baseHref="",this._removeListenerFns=[],null!=ut&&(this._baseHref=ut)}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(Ve){this._removeListenerFns.push(this._platformLocation.onPopState(Ve),this._platformLocation.onHashChange(Ve))}getBaseHref(){return this._baseHref}path(Ve=!1){let ut=this._platformLocation.hash;return null==ut&&(ut="#"),ut.length>0?ut.substring(1):ut}prepareExternalUrl(Ve){const ut=M(this._baseHref,Ve);return ut.length>0?"#"+ut:ut}pushState(Ve,ut,Ht,rn){let an=this.prepareExternalUrl(Ht+v(rn));0==an.length&&(an=this._platformLocation.pathname),this._platformLocation.pushState(Ve,ut,an)}replaceState(Ve,ut,Ht,rn){let an=this.prepareExternalUrl(Ht+v(rn));0==an.length&&(an=this._platformLocation.pathname),this._platformLocation.replaceState(Ve,ut,an)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(Ve=0){this._platformLocation.historyGo?.(Ve)}static#e=this.\u0275fac=function(ut){return new(ut||me)(e.LFG(E),e.LFG(d,8))};static#t=this.\u0275prov=e.Yz7({token:me,factory:me.\u0275fac})}return me})(),y=(()=>{class me{constructor(Ve){this._subject=new e.vpe,this._urlChangeListeners=[],this._urlChangeSubscription=null,this._locationStrategy=Ve;const ut=this._locationStrategy.getBaseHref();this._basePath=function _(me){if(new RegExp("^(https?:)?//").test(me)){const[,Ve]=me.split(/\/\/[^\/]+/);return Ve}return me}(h(D(ut))),this._locationStrategy.onPopState(Ht=>{this._subject.emit({url:this.path(!0),pop:!0,state:Ht.state,type:Ht.type})})}ngOnDestroy(){this._urlChangeSubscription?.unsubscribe(),this._urlChangeListeners=[]}path(Ve=!1){return this.normalize(this._locationStrategy.path(Ve))}getState(){return this._locationStrategy.getState()}isCurrentPathEqualTo(Ve,ut=""){return this.path()==this.normalize(Ve+v(ut))}normalize(Ve){return me.stripTrailingSlash(function x(me,_t){if(!me||!_t.startsWith(me))return _t;const Ve=_t.substring(me.length);return""===Ve||["/",";","?","#"].includes(Ve[0])?Ve:_t}(this._basePath,D(Ve)))}prepareExternalUrl(Ve){return Ve&&"/"!==Ve[0]&&(Ve="/"+Ve),this._locationStrategy.prepareExternalUrl(Ve)}go(Ve,ut="",Ht=null){this._locationStrategy.pushState(Ht,"",Ve,ut),this._notifyUrlChangeListeners(this.prepareExternalUrl(Ve+v(ut)),Ht)}replaceState(Ve,ut="",Ht=null){this._locationStrategy.replaceState(Ht,"",Ve,ut),this._notifyUrlChangeListeners(this.prepareExternalUrl(Ve+v(ut)),Ht)}forward(){this._locationStrategy.forward()}back(){this._locationStrategy.back()}historyGo(Ve=0){this._locationStrategy.historyGo?.(Ve)}onUrlChange(Ve){return this._urlChangeListeners.push(Ve),this._urlChangeSubscription||(this._urlChangeSubscription=this.subscribe(ut=>{this._notifyUrlChangeListeners(ut.url,ut.state)})),()=>{const ut=this._urlChangeListeners.indexOf(Ve);this._urlChangeListeners.splice(ut,1),0===this._urlChangeListeners.length&&(this._urlChangeSubscription?.unsubscribe(),this._urlChangeSubscription=null)}}_notifyUrlChangeListeners(Ve="",ut){this._urlChangeListeners.forEach(Ht=>Ht(Ve,ut))}subscribe(Ve,ut,Ht){return this._subject.subscribe({next:Ve,error:ut,complete:Ht})}static#e=this.normalizeQueryParams=v;static#t=this.joinWithSlash=M;static#n=this.stripTrailingSlash=h;static#i=this.\u0275fac=function(ut){return new(ut||me)(e.LFG(g))};static#o=this.\u0275prov=e.Yz7({token:me,factory:function(){return function T(){return new y((0,e.LFG)(g))}()},providedIn:"root"})}return me})();function D(me){return me.replace(/\/index.html$/,"")}const P={ADP:[void 0,void 0,0],AFN:[void 0,"\u060b",0],ALL:[void 0,void 0,0],AMD:[void 0,"\u058f",2],AOA:[void 0,"Kz"],ARS:[void 0,"$"],AUD:["A$","$"],AZN:[void 0,"\u20bc"],BAM:[void 0,"KM"],BBD:[void 0,"$"],BDT:[void 0,"\u09f3"],BHD:[void 0,void 0,3],BIF:[void 0,void 0,0],BMD:[void 0,"$"],BND:[void 0,"$"],BOB:[void 0,"Bs"],BRL:["R$"],BSD:[void 0,"$"],BWP:[void 0,"P"],BYN:[void 0,void 0,2],BYR:[void 0,void 0,0],BZD:[void 0,"$"],CAD:["CA$","$",2],CHF:[void 0,void 0,2],CLF:[void 0,void 0,4],CLP:[void 0,"$",0],CNY:["CN\xa5","\xa5"],COP:[void 0,"$",2],CRC:[void 0,"\u20a1",2],CUC:[void 0,"$"],CUP:[void 0,"$"],CZK:[void 0,"K\u010d",2],DJF:[void 0,void 0,0],DKK:[void 0,"kr",2],DOP:[void 0,"$"],EGP:[void 0,"E\xa3"],ESP:[void 0,"\u20a7",0],EUR:["\u20ac"],FJD:[void 0,"$"],FKP:[void 0,"\xa3"],GBP:["\xa3"],GEL:[void 0,"\u20be"],GHS:[void 0,"GH\u20b5"],GIP:[void 0,"\xa3"],GNF:[void 0,"FG",0],GTQ:[void 0,"Q"],GYD:[void 0,"$",2],HKD:["HK$","$"],HNL:[void 0,"L"],HRK:[void 0,"kn"],HUF:[void 0,"Ft",2],IDR:[void 0,"Rp",2],ILS:["\u20aa"],INR:["\u20b9"],IQD:[void 0,void 0,0],IRR:[void 0,void 0,0],ISK:[void 0,"kr",0],ITL:[void 0,void 0,0],JMD:[void 0,"$"],JOD:[void 0,void 0,3],JPY:["\xa5",void 0,0],KHR:[void 0,"\u17db"],KMF:[void 0,"CF",0],KPW:[void 0,"\u20a9",0],KRW:["\u20a9",void 0,0],KWD:[void 0,void 0,3],KYD:[void 0,"$"],KZT:[void 0,"\u20b8"],LAK:[void 0,"\u20ad",0],LBP:[void 0,"L\xa3",0],LKR:[void 0,"Rs"],LRD:[void 0,"$"],LTL:[void 0,"Lt"],LUF:[void 0,void 0,0],LVL:[void 0,"Ls"],LYD:[void 0,void 0,3],MGA:[void 0,"Ar",0],MGF:[void 0,void 0,0],MMK:[void 0,"K",0],MNT:[void 0,"\u20ae",2],MRO:[void 0,void 0,0],MUR:[void 0,"Rs",2],MXN:["MX$","$"],MYR:[void 0,"RM"],NAD:[void 0,"$"],NGN:[void 0,"\u20a6"],NIO:[void 0,"C$"],NOK:[void 0,"kr",2],NPR:[void 0,"Rs"],NZD:["NZ$","$"],OMR:[void 0,void 0,3],PHP:["\u20b1"],PKR:[void 0,"Rs",2],PLN:[void 0,"z\u0142"],PYG:[void 0,"\u20b2",0],RON:[void 0,"lei"],RSD:[void 0,void 0,0],RUB:[void 0,"\u20bd"],RWF:[void 0,"RF",0],SBD:[void 0,"$"],SEK:[void 0,"kr",2],SGD:[void 0,"$"],SHP:[void 0,"\xa3"],SLE:[void 0,void 0,2],SLL:[void 0,void 0,0],SOS:[void 0,void 0,0],SRD:[void 0,"$"],SSP:[void 0,"\xa3"],STD:[void 0,void 0,0],STN:[void 0,"Db"],SYP:[void 0,"\xa3",0],THB:[void 0,"\u0e3f"],TMM:[void 0,void 0,0],TND:[void 0,void 0,3],TOP:[void 0,"T$"],TRL:[void 0,void 0,0],TRY:[void 0,"\u20ba"],TTD:[void 0,"$"],TWD:["NT$","$",2],TZS:[void 0,void 0,2],UAH:[void 0,"\u20b4"],UGX:[void 0,void 0,0],USD:["$"],UYI:[void 0,void 0,0],UYU:[void 0,"$"],UYW:[void 0,void 0,4],UZS:[void 0,void 0,2],VEF:[void 0,"Bs",2],VND:["\u20ab",void 0,0],VUV:[void 0,void 0,0],XAF:["FCFA",void 0,0],XCD:["EC$","$"],XOF:["F\u202fCFA",void 0,0],XPF:["CFPF",void 0,0],XXX:["\xa4"],YER:[void 0,void 0,0],ZAR:[void 0,"R"],ZMK:[void 0,void 0,0],ZMW:[void 0,"ZK"],ZWD:[void 0,void 0,0]};var O=function(me){return me[me.Decimal=0]="Decimal",me[me.Percent=1]="Percent",me[me.Currency=2]="Currency",me[me.Scientific=3]="Scientific",me}(O||{}),k=function(me){return me[me.Format=0]="Format",me[me.Standalone=1]="Standalone",me}(k||{}),F=function(me){return me[me.Narrow=0]="Narrow",me[me.Abbreviated=1]="Abbreviated",me[me.Wide=2]="Wide",me[me.Short=3]="Short",me}(F||{}),W=function(me){return me[me.Short=0]="Short",me[me.Medium=1]="Medium",me[me.Long=2]="Long",me[me.Full=3]="Full",me}(W||{}),K=function(me){return me[me.Decimal=0]="Decimal",me[me.Group=1]="Group",me[me.List=2]="List",me[me.PercentSign=3]="PercentSign",me[me.PlusSign=4]="PlusSign",me[me.MinusSign=5]="MinusSign",me[me.Exponential=6]="Exponential",me[me.SuperscriptingExponent=7]="SuperscriptingExponent",me[me.PerMille=8]="PerMille",me[me.Infinity=9]="Infinity",me[me.NaN=10]="NaN",me[me.TimeSeparator=11]="TimeSeparator",me[me.CurrencyDecimal=12]="CurrencyDecimal",me[me.CurrencyGroup=13]="CurrencyGroup",me}(K||{});function G(me,_t,Ve){const ut=(0,e.cg1)(me),rn=Re([ut[e.wAp.DayPeriodsFormat],ut[e.wAp.DayPeriodsStandalone]],_t);return Re(rn,Ve)}function re(me,_t){return Re((0,e.cg1)(me)[e.wAp.DateFormat],_t)}function be(me,_t){return Re((0,e.cg1)(me)[e.wAp.TimeFormat],_t)}function le(me,_t){return Re((0,e.cg1)(me)[e.wAp.DateTimeFormat],_t)}function ce(me,_t){const Ve=(0,e.cg1)(me),ut=Ve[e.wAp.NumberSymbols][_t];if(typeof ut>"u"){if(_t===K.CurrencyDecimal)return Ve[e.wAp.NumberSymbols][K.Decimal];if(_t===K.CurrencyGroup)return Ve[e.wAp.NumberSymbols][K.Group]}return ut}function Q(me,_t){return(0,e.cg1)(me)[e.wAp.NumberFormats][_t]}function q(me){if(!me[e.wAp.ExtraData])throw new Error(`Missing extra locale data for the locale "${me[e.wAp.LocaleId]}". Use "registerLocaleData" to load new data. See the "I18n guide" on angular.io to know more.`)}function Re(me,_t){for(let Ve=_t;Ve>-1;Ve--)if(typeof me[Ve]<"u")return me[Ve];throw new Error("Locale data API: locale data undefined")}function ct(me){const[_t,Ve]=me.split(":");return{hours:+_t,minutes:+Ve}}const ot=/^(\d{4,})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/,mt={},we=/((?:[^BEGHLMOSWYZabcdhmswyz']+)|(?:'(?:[^']|'')*')|(?:G{1,5}|y{1,4}|Y{1,4}|M{1,5}|L{1,5}|w{1,2}|W{1}|d{1,2}|E{1,6}|c{1,6}|a{1,5}|b{1,5}|B{1,5}|h{1,2}|H{1,2}|m{1,2}|s{1,2}|S{1,3}|z{1,4}|Z{1,5}|O{1,4}))([\s\S]*)/;var de=function(me){return me[me.Short=0]="Short",me[me.ShortGMT=1]="ShortGMT",me[me.Long=2]="Long",me[me.Extended=3]="Extended",me}(de||{}),U=function(me){return me[me.FullYear=0]="FullYear",me[me.Month=1]="Month",me[me.Date=2]="Date",me[me.Hours=3]="Hours",me[me.Minutes=4]="Minutes",me[me.Seconds=5]="Seconds",me[me.FractionalSeconds=6]="FractionalSeconds",me[me.Day=7]="Day",me}(U||{}),B=function(me){return me[me.DayPeriods=0]="DayPeriods",me[me.Days=1]="Days",me[me.Months=2]="Months",me[me.Eras=3]="Eras",me}(B||{});function Ee(me,_t,Ve,ut){let Ht=function ge(me){if($e(me))return me;if("number"==typeof me&&!isNaN(me))return new Date(me);if("string"==typeof me){if(me=me.trim(),/^(\d{4}(-\d{1,2}(-\d{1,2})?)?)$/.test(me)){const[Ht,rn=1,an=1]=me.split("-").map(An=>+An);return Ie(Ht,rn-1,an)}const Ve=parseFloat(me);if(!isNaN(me-Ve))return new Date(Ve);let ut;if(ut=me.match(ot))return function Ze(me){const _t=new Date(0);let Ve=0,ut=0;const Ht=me[8]?_t.setUTCFullYear:_t.setFullYear,rn=me[8]?_t.setUTCHours:_t.setHours;me[9]&&(Ve=Number(me[9]+me[10]),ut=Number(me[9]+me[11])),Ht.call(_t,Number(me[1]),Number(me[2])-1,Number(me[3]));const an=Number(me[4]||0)-Ve,An=Number(me[5]||0)-ut,bi=Number(me[6]||0),Ni=Math.floor(1e3*parseFloat("0."+(me[7]||0)));return rn.call(_t,an,An,bi,Ni),_t}(ut)}const _t=new Date(me);if(!$e(_t))throw new Error(`Unable to convert "${me}" into a date`);return _t}(me);_t=Ne(Ve,_t)||_t;let An,an=[];for(;_t;){if(An=we.exec(_t),!An){an.push(_t);break}{an=an.concat(An.slice(1));const mi=an.pop();if(!mi)break;_t=mi}}let bi=Ht.getTimezoneOffset();ut&&(bi=ke(ut,bi),Ht=function qe(me,_t,Ve){const ut=Ve?-1:1,Ht=me.getTimezoneOffset();return function fe(me,_t){return(me=new Date(me.getTime())).setMinutes(me.getMinutes()+_t),me}(me,ut*(ke(_t,Ht)-Ht))}(Ht,ut,!0));let Ni="";return an.forEach(mi=>{const Gn=function Qe(me){if(xt[me])return xt[me];let _t;switch(me){case"G":case"GG":case"GGG":_t=en(B.Eras,F.Abbreviated);break;case"GGGG":_t=en(B.Eras,F.Wide);break;case"GGGGG":_t=en(B.Eras,F.Narrow);break;case"y":_t=Ut(U.FullYear,1,0,!1,!0);break;case"yy":_t=Ut(U.FullYear,2,0,!0,!0);break;case"yyy":_t=Ut(U.FullYear,3,0,!1,!0);break;case"yyyy":_t=Ut(U.FullYear,4,0,!1,!0);break;case"Y":_t=Ot(1);break;case"YY":_t=Ot(2,!0);break;case"YYY":_t=Ot(3);break;case"YYYY":_t=Ot(4);break;case"M":case"L":_t=Ut(U.Month,1,1);break;case"MM":case"LL":_t=Ut(U.Month,2,1);break;case"MMM":_t=en(B.Months,F.Abbreviated);break;case"MMMM":_t=en(B.Months,F.Wide);break;case"MMMMM":_t=en(B.Months,F.Narrow);break;case"LLL":_t=en(B.Months,F.Abbreviated,k.Standalone);break;case"LLLL":_t=en(B.Months,F.Wide,k.Standalone);break;case"LLLLL":_t=en(B.Months,F.Narrow,k.Standalone);break;case"w":_t=It(1);break;case"ww":_t=It(2);break;case"W":_t=It(1,!0);break;case"d":_t=Ut(U.Date,1);break;case"dd":_t=Ut(U.Date,2);break;case"c":case"cc":_t=Ut(U.Day,1);break;case"ccc":_t=en(B.Days,F.Abbreviated,k.Standalone);break;case"cccc":_t=en(B.Days,F.Wide,k.Standalone);break;case"ccccc":_t=en(B.Days,F.Narrow,k.Standalone);break;case"cccccc":_t=en(B.Days,F.Short,k.Standalone);break;case"E":case"EE":case"EEE":_t=en(B.Days,F.Abbreviated);break;case"EEEE":_t=en(B.Days,F.Wide);break;case"EEEEE":_t=en(B.Days,F.Narrow);break;case"EEEEEE":_t=en(B.Days,F.Short);break;case"a":case"aa":case"aaa":_t=en(B.DayPeriods,F.Abbreviated);break;case"aaaa":_t=en(B.DayPeriods,F.Wide);break;case"aaaaa":_t=en(B.DayPeriods,F.Narrow);break;case"b":case"bb":case"bbb":_t=en(B.DayPeriods,F.Abbreviated,k.Standalone,!0);break;case"bbbb":_t=en(B.DayPeriods,F.Wide,k.Standalone,!0);break;case"bbbbb":_t=en(B.DayPeriods,F.Narrow,k.Standalone,!0);break;case"B":case"BB":case"BBB":_t=en(B.DayPeriods,F.Abbreviated,k.Format,!0);break;case"BBBB":_t=en(B.DayPeriods,F.Wide,k.Format,!0);break;case"BBBBB":_t=en(B.DayPeriods,F.Narrow,k.Format,!0);break;case"h":_t=Ut(U.Hours,1,-12);break;case"hh":_t=Ut(U.Hours,2,-12);break;case"H":_t=Ut(U.Hours,1);break;case"HH":_t=Ut(U.Hours,2);break;case"m":_t=Ut(U.Minutes,1);break;case"mm":_t=Ut(U.Minutes,2);break;case"s":_t=Ut(U.Seconds,1);break;case"ss":_t=Ut(U.Seconds,2);break;case"S":_t=Ut(U.FractionalSeconds,1);break;case"SS":_t=Ut(U.FractionalSeconds,2);break;case"SSS":_t=Ut(U.FractionalSeconds,3);break;case"Z":case"ZZ":case"ZZZ":_t=Wt(de.Short);break;case"ZZZZZ":_t=Wt(de.Extended);break;case"O":case"OO":case"OOO":case"z":case"zz":case"zzz":_t=Wt(de.ShortGMT);break;case"OOOO":case"ZZZZ":case"zzzz":_t=Wt(de.Long);break;default:return null}return xt[me]=_t,_t}(mi);Ni+=Gn?Gn(Ht,Ve,bi):"''"===mi?"'":mi.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),Ni}function Ie(me,_t,Ve){const ut=new Date(0);return ut.setFullYear(me,_t,Ve),ut.setHours(0,0,0),ut}function Ne(me,_t){const Ve=function Y(me){return(0,e.cg1)(me)[e.wAp.LocaleId]}(me);if(mt[Ve]=mt[Ve]||{},mt[Ve][_t])return mt[Ve][_t];let ut="";switch(_t){case"shortDate":ut=re(me,W.Short);break;case"mediumDate":ut=re(me,W.Medium);break;case"longDate":ut=re(me,W.Long);break;case"fullDate":ut=re(me,W.Full);break;case"shortTime":ut=be(me,W.Short);break;case"mediumTime":ut=be(me,W.Medium);break;case"longTime":ut=be(me,W.Long);break;case"fullTime":ut=be(me,W.Full);break;case"short":const Ht=Ne(me,"shortTime"),rn=Ne(me,"shortDate");ut=pt(le(me,W.Short),[Ht,rn]);break;case"medium":const an=Ne(me,"mediumTime"),An=Ne(me,"mediumDate");ut=pt(le(me,W.Medium),[an,An]);break;case"long":const bi=Ne(me,"longTime"),Ni=Ne(me,"longDate");ut=pt(le(me,W.Long),[bi,Ni]);break;case"full":const mi=Ne(me,"fullTime"),Gn=Ne(me,"fullDate");ut=pt(le(me,W.Full),[mi,Gn])}return ut&&(mt[Ve][_t]=ut),ut}function pt(me,_t){return _t&&(me=me.replace(/\{([^}]+)}/g,function(Ve,ut){return null!=_t&&ut in _t?_t[ut]:Ve})),me}function Dt(me,_t,Ve="-",ut,Ht){let rn="";(me<0||Ht&&me<=0)&&(Ht?me=1-me:(me=-me,rn=Ve));let an=String(me);for(;an.length<_t;)an="0"+an;return ut&&(an=an.slice(an.length-_t)),rn+an}function Ut(me,_t,Ve=0,ut=!1,Ht=!1){return function(rn,an){let An=function qt(me,_t){switch(me){case U.FullYear:return _t.getFullYear();case U.Month:return _t.getMonth();case U.Date:return _t.getDate();case U.Hours:return _t.getHours();case U.Minutes:return _t.getMinutes();case U.Seconds:return _t.getSeconds();case U.FractionalSeconds:return _t.getMilliseconds();case U.Day:return _t.getDay();default:throw new Error(`Unknown DateType value "${me}".`)}}(me,rn);if((Ve>0||An>-Ve)&&(An+=Ve),me===U.Hours)0===An&&-12===Ve&&(An=12);else if(me===U.FractionalSeconds)return function Lt(me,_t){return Dt(me,3).substring(0,_t)}(An,_t);const bi=ce(an,K.MinusSign);return Dt(An,_t,bi,ut,Ht)}}function en(me,_t,Ve=k.Format,ut=!1){return function(Ht,rn){return function cn(me,_t,Ve,ut,Ht,rn){switch(Ve){case B.Months:return function j(me,_t,Ve){const ut=(0,e.cg1)(me),rn=Re([ut[e.wAp.MonthsFormat],ut[e.wAp.MonthsStandalone]],_t);return Re(rn,Ve)}(_t,Ht,ut)[me.getMonth()];case B.Days:return function H(me,_t,Ve){const ut=(0,e.cg1)(me),rn=Re([ut[e.wAp.DaysFormat],ut[e.wAp.DaysStandalone]],_t);return Re(rn,Ve)}(_t,Ht,ut)[me.getDay()];case B.DayPeriods:const an=me.getHours(),An=me.getMinutes();if(rn){const Ni=function ye(me){const _t=(0,e.cg1)(me);return q(_t),(_t[e.wAp.ExtraData][2]||[]).map(ut=>"string"==typeof ut?ct(ut):[ct(ut[0]),ct(ut[1])])}(_t),mi=function ee(me,_t,Ve){const ut=(0,e.cg1)(me);q(ut);const rn=Re([ut[e.wAp.ExtraData][0],ut[e.wAp.ExtraData][1]],_t)||[];return Re(rn,Ve)||[]}(_t,Ht,ut),Gn=Ni.findIndex(Ki=>{if(Array.isArray(Ki)){const[Fn,Zi]=Ki,Vo=an>=Fn.hours&&An>=Fn.minutes,Ko=an0?Math.floor(Ht/60):Math.ceil(Ht/60);switch(me){case de.Short:return(Ht>=0?"+":"")+Dt(an,2,rn)+Dt(Math.abs(Ht%60),2,rn);case de.ShortGMT:return"GMT"+(Ht>=0?"+":"")+Dt(an,1,rn);case de.Long:return"GMT"+(Ht>=0?"+":"")+Dt(an,2,rn)+":"+Dt(Math.abs(Ht%60),2,rn);case de.Extended:return 0===ut?"Z":(Ht>=0?"+":"")+Dt(an,2,rn)+":"+Dt(Math.abs(Ht%60),2,rn);default:throw new Error(`Unknown zone width "${me}"`)}}}const Vt=0,st=4;function et(me){return Ie(me.getFullYear(),me.getMonth(),me.getDate()+(st-me.getDay()))}function It(me,_t=!1){return function(Ve,ut){let Ht;if(_t){const rn=new Date(Ve.getFullYear(),Ve.getMonth(),1).getDay()-1,an=Ve.getDate();Ht=1+Math.floor((an+rn)/7)}else{const rn=et(Ve),an=function He(me){const _t=Ie(me,Vt,1).getDay();return Ie(me,0,1+(_t<=st?st:st+7)-_t)}(rn.getFullYear()),An=rn.getTime()-an.getTime();Ht=1+Math.round(An/6048e5)}return Dt(Ht,me,ce(ut,K.MinusSign))}}function Ot(me,_t=!1){return function(Ve,ut){return Dt(et(Ve).getFullYear(),me,ce(ut,K.MinusSign),_t)}}const xt={};function ke(me,_t){me=me.replace(/:/g,"");const Ve=Date.parse("Jan 01, 1970 00:00:00 "+me)/6e4;return isNaN(Ve)?_t:Ve}function $e(me){return me instanceof Date&&!isNaN(me.valueOf())}const Ue=/^(\d+)?\.((\d+)(-(\d+))?)?$/,wt=22,De=".",Pe="0",Je=";",Ge=",",Ke="#";function b(me,_t,Ve,ut,Ht,rn,an=!1){let An="",bi=!1;if(isFinite(me)){let Ni=function ze(me){let ut,Ht,rn,an,An,_t=Math.abs(me)+"",Ve=0;for((Ht=_t.indexOf(De))>-1&&(_t=_t.replace(De,"")),(rn=_t.search(/e/i))>0?(Ht<0&&(Ht=rn),Ht+=+_t.slice(rn+1),_t=_t.substring(0,rn)):Ht<0&&(Ht=_t.length),rn=0;_t.charAt(rn)===Pe;rn++);if(rn===(An=_t.length))ut=[0],Ht=1;else{for(An--;_t.charAt(An)===Pe;)An--;for(Ht-=rn,ut=[],an=0;rn<=An;rn++,an++)ut[an]=Number(_t.charAt(rn))}return Ht>wt&&(ut=ut.splice(0,wt-1),Ve=Ht-1,Ht=1),{digits:ut,exponent:Ve,integerLen:Ht}}(me);an&&(Ni=function he(me){if(0===me.digits[0])return me;const _t=me.digits.length-me.integerLen;return me.exponent?me.exponent+=2:(0===_t?me.digits.push(0,0):1===_t&&me.digits.push(0),me.integerLen+=2),me}(Ni));let mi=_t.minInt,Gn=_t.minFrac,Ki=_t.maxFrac;if(rn){const wo=rn.match(Ue);if(null===wo)throw new Error(`${rn} is not a valid digit info`);const gs=wo[1],ni=wo[3],Es=wo[5];null!=gs&&(mi=Ft(gs)),null!=ni&&(Gn=Ft(ni)),null!=Es?Ki=Ft(Es):null!=ni&&Gn>Ki&&(Ki=Gn)}!function bt(me,_t,Ve){if(_t>Ve)throw new Error(`The minimum number of digits after fraction (${_t}) is higher than the maximum (${Ve}).`);let ut=me.digits,Ht=ut.length-me.integerLen;const rn=Math.min(Math.max(_t,Ht),Ve);let an=rn+me.integerLen,An=ut[an];if(an>0){ut.splice(Math.max(me.integerLen,an));for(let Gn=an;Gn=5)if(an-1<0){for(let Gn=0;Gn>an;Gn--)ut.unshift(0),me.integerLen++;ut.unshift(1),me.integerLen++}else ut[an-1]++;for(;Ht=Ni?Zi.pop():bi=!1),Ki>=10?1:0},0);mi&&(ut.unshift(mi),me.integerLen++)}(Ni,Gn,Ki);let Fn=Ni.digits,Zi=Ni.integerLen;const Vo=Ni.exponent;let Ko=[];for(bi=Fn.every(wo=>!wo);Zi0?Ko=Fn.splice(Zi,Fn.length):(Ko=Fn,Fn=[0]);const Ms=[];for(Fn.length>=_t.lgSize&&Ms.unshift(Fn.splice(-_t.lgSize,Fn.length).join(""));Fn.length>_t.gSize;)Ms.unshift(Fn.splice(-_t.gSize,Fn.length).join(""));Fn.length&&Ms.unshift(Fn.join("")),An=Ms.join(ce(Ve,ut)),Ko.length&&(An+=ce(Ve,Ht)+Ko.join("")),Vo&&(An+=ce(Ve,K.Exponential)+"+"+Vo)}else An=ce(Ve,K.Infinity);return An=me<0&&!bi?_t.negPre+An+_t.negSuf:_t.posPre+An+_t.posSuf,An}function $(me,_t,Ve){return b(me,R(Q(_t,O.Decimal),ce(_t,K.MinusSign)),_t,K.Group,K.Decimal,Ve)}function R(me,_t="-"){const Ve={minInt:1,minFrac:0,maxFrac:0,posPre:"",posSuf:"",negPre:"",negSuf:"",gSize:0,lgSize:0},ut=me.split(Je),Ht=ut[0],rn=ut[1],an=-1!==Ht.indexOf(De)?Ht.split(De):[Ht.substring(0,Ht.lastIndexOf(Pe)+1),Ht.substring(Ht.lastIndexOf(Pe)+1)],An=an[0],bi=an[1]||"";Ve.posPre=An.substring(0,An.indexOf(Ke));for(let mi=0;mi{class me{constructor(Ve,ut,Ht,rn){this._iterableDiffers=Ve,this._keyValueDiffers=ut,this._ngEl=Ht,this._renderer=rn,this.initialClasses=bn,this.stateMap=new Map}set klass(Ve){this.initialClasses=null!=Ve?Ve.trim().split(En):bn}set ngClass(Ve){this.rawClass="string"==typeof Ve?Ve.trim().split(En):Ve}ngDoCheck(){for(const ut of this.initialClasses)this._updateState(ut,!0);const Ve=this.rawClass;if(Array.isArray(Ve)||Ve instanceof Set)for(const ut of Ve)this._updateState(ut,!0);else if(null!=Ve)for(const ut of Object.keys(Ve))this._updateState(ut,!!Ve[ut]);this._applyStateDiff()}_updateState(Ve,ut){const Ht=this.stateMap.get(Ve);void 0!==Ht?(Ht.enabled!==ut&&(Ht.changed=!0,Ht.enabled=ut),Ht.touched=!0):this.stateMap.set(Ve,{enabled:ut,changed:!0,touched:!0})}_applyStateDiff(){for(const Ve of this.stateMap){const ut=Ve[0],Ht=Ve[1];Ht.changed?(this._toggleClass(ut,Ht.enabled),Ht.changed=!1):Ht.touched||(Ht.enabled&&this._toggleClass(ut,!1),this.stateMap.delete(ut)),Ht.touched=!1}}_toggleClass(Ve,ut){(Ve=Ve.trim()).length>0&&Ve.split(En).forEach(Ht=>{ut?this._renderer.addClass(this._ngEl.nativeElement,Ht):this._renderer.removeClass(this._ngEl.nativeElement,Ht)})}static#e=this.\u0275fac=function(ut){return new(ut||me)(e.Y36(e.ZZ4),e.Y36(e.aQg),e.Y36(e.SBq),e.Y36(e.Qsj))};static#t=this.\u0275dir=e.lG2({type:me,selectors:[["","ngClass",""]],inputs:{klass:["class","klass"],ngClass:"ngClass"},standalone:!0})}return me})();class Wn{constructor(_t,Ve,ut,Ht){this.$implicit=_t,this.ngForOf=Ve,this.index=ut,this.count=Ht}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}let ci=(()=>{class me{set ngForOf(Ve){this._ngForOf=Ve,this._ngForOfDirty=!0}set ngForTrackBy(Ve){this._trackByFn=Ve}get ngForTrackBy(){return this._trackByFn}constructor(Ve,ut,Ht){this._viewContainer=Ve,this._template=ut,this._differs=Ht,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}set ngForTemplate(Ve){Ve&&(this._template=Ve)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const Ve=this._ngForOf;!this._differ&&Ve&&(this._differ=this._differs.find(Ve).create(this.ngForTrackBy))}if(this._differ){const Ve=this._differ.diff(this._ngForOf);Ve&&this._applyChanges(Ve)}}_applyChanges(Ve){const ut=this._viewContainer;Ve.forEachOperation((Ht,rn,an)=>{if(null==Ht.previousIndex)ut.createEmbeddedView(this._template,new Wn(Ht.item,this._ngForOf,-1,-1),null===an?void 0:an);else if(null==an)ut.remove(null===rn?void 0:rn);else if(null!==rn){const An=ut.get(rn);ut.move(An,an),ri(An,Ht)}});for(let Ht=0,rn=ut.length;Ht{ri(ut.get(Ht.currentIndex),Ht)})}static ngTemplateContextGuard(Ve,ut){return!0}static#e=this.\u0275fac=function(ut){return new(ut||me)(e.Y36(e.s_b),e.Y36(e.Rgc),e.Y36(e.ZZ4))};static#t=this.\u0275dir=e.lG2({type:me,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"},standalone:!0})}return me})();function ri(me,_t){me.context.$implicit=_t.item}let hi=(()=>{class me{constructor(Ve,ut){this._viewContainer=Ve,this._context=new fi,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=ut}set ngIf(Ve){this._context.$implicit=this._context.ngIf=Ve,this._updateView()}set ngIfThen(Ve){zi("ngIfThen",Ve),this._thenTemplateRef=Ve,this._thenViewRef=null,this._updateView()}set ngIfElse(Ve){zi("ngIfElse",Ve),this._elseTemplateRef=Ve,this._elseViewRef=null,this._updateView()}_updateView(){this._context.$implicit?this._thenViewRef||(this._viewContainer.clear(),this._elseViewRef=null,this._thenTemplateRef&&(this._thenViewRef=this._viewContainer.createEmbeddedView(this._thenTemplateRef,this._context))):this._elseViewRef||(this._viewContainer.clear(),this._thenViewRef=null,this._elseTemplateRef&&(this._elseViewRef=this._viewContainer.createEmbeddedView(this._elseTemplateRef,this._context)))}static ngTemplateContextGuard(Ve,ut){return!0}static#e=this.\u0275fac=function(ut){return new(ut||me)(e.Y36(e.s_b),e.Y36(e.Rgc))};static#t=this.\u0275dir=e.lG2({type:me,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"},standalone:!0})}return me})();class fi{constructor(){this.$implicit=null,this.ngIf=null}}function zi(me,_t){if(_t&&!_t.createEmbeddedView)throw new Error(`${me} must be a TemplateRef, but received '${(0,e.AaK)(_t)}'.`)}class Oi{constructor(_t,Ve){this._viewContainerRef=_t,this._templateRef=Ve,this._created=!1}create(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)}destroy(){this._created=!1,this._viewContainerRef.clear()}enforceState(_t){_t&&!this._created?this.create():!_t&&this._created&&this.destroy()}}let ei=(()=>{class me{constructor(){this._defaultViews=[],this._defaultUsed=!1,this._caseCount=0,this._lastCaseCheckIndex=0,this._lastCasesMatched=!1}set ngSwitch(Ve){this._ngSwitch=Ve,0===this._caseCount&&this._updateDefaultCases(!0)}_addCase(){return this._caseCount++}_addDefault(Ve){this._defaultViews.push(Ve)}_matchCase(Ve){const ut=Ve==this._ngSwitch;return this._lastCasesMatched=this._lastCasesMatched||ut,this._lastCaseCheckIndex++,this._lastCaseCheckIndex===this._caseCount&&(this._updateDefaultCases(!this._lastCasesMatched),this._lastCaseCheckIndex=0,this._lastCasesMatched=!1),ut}_updateDefaultCases(Ve){if(this._defaultViews.length>0&&Ve!==this._defaultUsed){this._defaultUsed=Ve;for(const ut of this._defaultViews)ut.enforceState(Ve)}}static#e=this.\u0275fac=function(ut){return new(ut||me)};static#t=this.\u0275dir=e.lG2({type:me,selectors:[["","ngSwitch",""]],inputs:{ngSwitch:"ngSwitch"},standalone:!0})}return me})(),po=(()=>{class me{constructor(Ve,ut,Ht){this.ngSwitch=Ht,Ht._addCase(),this._view=new Oi(Ve,ut)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}static#e=this.\u0275fac=function(ut){return new(ut||me)(e.Y36(e.s_b),e.Y36(e.Rgc),e.Y36(ei,9))};static#t=this.\u0275dir=e.lG2({type:me,selectors:[["","ngSwitchCase",""]],inputs:{ngSwitchCase:"ngSwitchCase"},standalone:!0})}return me})(),oo=(()=>{class me{constructor(Ve,ut,Ht){Ht._addDefault(new Oi(Ve,ut))}static#e=this.\u0275fac=function(ut){return new(ut||me)(e.Y36(e.s_b),e.Y36(e.Rgc),e.Y36(ei,9))};static#t=this.\u0275dir=e.lG2({type:me,selectors:[["","ngSwitchDefault",""]],standalone:!0})}return me})(),$i=(()=>{class me{constructor(Ve,ut,Ht){this._ngEl=Ve,this._differs=ut,this._renderer=Ht,this._ngStyle=null,this._differ=null}set ngStyle(Ve){this._ngStyle=Ve,!this._differ&&Ve&&(this._differ=this._differs.find(Ve).create())}ngDoCheck(){if(this._differ){const Ve=this._differ.diff(this._ngStyle);Ve&&this._applyChanges(Ve)}}_setStyle(Ve,ut){const[Ht,rn]=Ve.split("."),an=-1===Ht.indexOf("-")?void 0:e.JOm.DashCase;null!=ut?this._renderer.setStyle(this._ngEl.nativeElement,Ht,rn?`${ut}${rn}`:ut,an):this._renderer.removeStyle(this._ngEl.nativeElement,Ht,an)}_applyChanges(Ve){Ve.forEachRemovedItem(ut=>this._setStyle(ut.key,null)),Ve.forEachAddedItem(ut=>this._setStyle(ut.key,ut.currentValue)),Ve.forEachChangedItem(ut=>this._setStyle(ut.key,ut.currentValue))}static#e=this.\u0275fac=function(ut){return new(ut||me)(e.Y36(e.SBq),e.Y36(e.aQg),e.Y36(e.Qsj))};static#t=this.\u0275dir=e.lG2({type:me,selectors:[["","ngStyle",""]],inputs:{ngStyle:"ngStyle"},standalone:!0})}return me})(),Qi=(()=>{class me{constructor(Ve){this._viewContainerRef=Ve,this._viewRef=null,this.ngTemplateOutletContext=null,this.ngTemplateOutlet=null,this.ngTemplateOutletInjector=null}ngOnChanges(Ve){if(Ve.ngTemplateOutlet||Ve.ngTemplateOutletInjector){const ut=this._viewContainerRef;if(this._viewRef&&ut.remove(ut.indexOf(this._viewRef)),this.ngTemplateOutlet){const{ngTemplateOutlet:Ht,ngTemplateOutletContext:rn,ngTemplateOutletInjector:an}=this;this._viewRef=ut.createEmbeddedView(Ht,rn,an?{injector:an}:void 0)}else this._viewRef=null}else this._viewRef&&Ve.ngTemplateOutletContext&&this.ngTemplateOutletContext&&(this._viewRef.context=this.ngTemplateOutletContext)}static#e=this.\u0275fac=function(ut){return new(ut||me)(e.Y36(e.s_b))};static#t=this.\u0275dir=e.lG2({type:me,selectors:[["","ngTemplateOutlet",""]],inputs:{ngTemplateOutletContext:"ngTemplateOutletContext",ngTemplateOutlet:"ngTemplateOutlet",ngTemplateOutletInjector:"ngTemplateOutletInjector"},standalone:!0,features:[e.TTD]})}return me})();function wi(me,_t){return new e.vHH(2100,!1)}class Xi{createSubscription(_t,Ve){return(0,e.rg0)(()=>_t.subscribe({next:Ve,error:ut=>{throw ut}}))}dispose(_t){(0,e.rg0)(()=>_t.unsubscribe())}}class Ei{createSubscription(_t,Ve){return _t.then(Ve,ut=>{throw ut})}dispose(_t){}}const Hi=new Ei,qi=new Xi;let Pi=(()=>{class me{constructor(Ve){this._latestValue=null,this._subscription=null,this._obj=null,this._strategy=null,this._ref=Ve}ngOnDestroy(){this._subscription&&this._dispose(),this._ref=null}transform(Ve){return this._obj?Ve!==this._obj?(this._dispose(),this.transform(Ve)):this._latestValue:(Ve&&this._subscribe(Ve),this._latestValue)}_subscribe(Ve){this._obj=Ve,this._strategy=this._selectStrategy(Ve),this._subscription=this._strategy.createSubscription(Ve,ut=>this._updateLatestValue(Ve,ut))}_selectStrategy(Ve){if((0,e.QGY)(Ve))return Hi;if((0,e.F4k)(Ve))return qi;throw wi()}_dispose(){this._strategy.dispose(this._subscription),this._latestValue=null,this._subscription=null,this._obj=null}_updateLatestValue(Ve,ut){Ve===this._obj&&(this._latestValue=ut,this._ref.markForCheck())}static#e=this.\u0275fac=function(ut){return new(ut||me)(e.Y36(e.sBO,16))};static#t=this.\u0275pipe=e.Yjl({name:"async",type:me,pure:!1,standalone:!0})}return me})(),Bn=(()=>{class me{transform(Ve){if(null==Ve)return null;if("string"!=typeof Ve)throw wi();return Ve.toUpperCase()}static#e=this.\u0275fac=function(ut){return new(ut||me)};static#t=this.\u0275pipe=e.Yjl({name:"uppercase",type:me,pure:!0,standalone:!0})}return me})(),Ln=(()=>{class me{transform(Ve){return JSON.stringify(Ve,null,2)}static#e=this.\u0275fac=function(ut){return new(ut||me)};static#t=this.\u0275pipe=e.Yjl({name:"json",type:me,pure:!1,standalone:!0})}return me})(),gt=(()=>{class me{constructor(Ve){this._locale=Ve}transform(Ve,ut,Ht){if(!Kt(Ve))return null;Ht=Ht||this._locale;try{return $(ln(Ve),Ht,ut)}catch(rn){throw wi()}}static#e=this.\u0275fac=function(ut){return new(ut||me)(e.Y36(e.soG,16))};static#t=this.\u0275pipe=e.Yjl({name:"number",type:me,pure:!0,standalone:!0})}return me})(),Nt=(()=>{class me{constructor(Ve,ut="USD"){this._locale=Ve,this._defaultCurrencyCode=ut}transform(Ve,ut=this._defaultCurrencyCode,Ht="symbol",rn,an){if(!Kt(Ve))return null;an=an||this._locale,"boolean"==typeof Ht&&(Ht=Ht?"symbol":"code");let An=ut||this._defaultCurrencyCode;"code"!==Ht&&(An="symbol"===Ht||"symbol-narrow"===Ht?function Ae(me,_t,Ve="en"){const ut=function Me(me){return(0,e.cg1)(me)[e.wAp.Currencies]}(Ve)[me]||P[me]||[],Ht=ut[1];return"narrow"===_t&&"string"==typeof Ht?Ht:ut[0]||me}(An,"symbol"===Ht?"wide":"narrow",an):Ht);try{return function N(me,_t,Ve,ut,Ht){const an=R(Q(_t,O.Currency),ce(_t,K.MinusSign));return an.minFrac=function je(me){let _t;const Ve=P[me];return Ve&&(_t=Ve[2]),"number"==typeof _t?_t:2}(ut),an.maxFrac=an.minFrac,b(me,an,_t,K.CurrencyGroup,K.CurrencyDecimal,Ht).replace("\xa4",Ve).replace("\xa4","").trim()}(ln(Ve),an,An,ut,rn)}catch(bi){throw wi()}}static#e=this.\u0275fac=function(ut){return new(ut||me)(e.Y36(e.soG,16),e.Y36(e.EJc,16))};static#t=this.\u0275pipe=e.Yjl({name:"currency",type:me,pure:!0,standalone:!0})}return me})();function Kt(me){return!(null==me||""===me||me!=me)}function ln(me){if("string"==typeof me&&!isNaN(Number(me)-parseFloat(me)))return Number(me);if("number"!=typeof me)throw new Error(`${me} is not a number`);return me}let zn=(()=>{class me{transform(Ve,ut,Ht){if(null==Ve)return null;if(!this.supports(Ve))throw wi();return Ve.slice(ut,Ht)}supports(Ve){return"string"==typeof Ve||Array.isArray(Ve)}static#e=this.\u0275fac=function(ut){return new(ut||me)};static#t=this.\u0275pipe=e.Yjl({name:"slice",type:me,pure:!1,standalone:!0})}return me})(),Qn=(()=>{class me{static#e=this.\u0275fac=function(ut){return new(ut||me)};static#t=this.\u0275mod=e.oAB({type:me});static#n=this.\u0275inj=e.cJS({})}return me})();const ui="browser",eo="server";function go(me){return me===ui}function hs(me){return me===eo}let so=(()=>{class me{static#e=this.\u0275prov=(0,e.Yz7)({token:me,providedIn:"root",factory:()=>new ro((0,e.LFG)(C),window)})}return me})();class ro{constructor(_t,Ve){this.document=_t,this.window=Ve,this.offset=()=>[0,0]}setOffset(_t){this.offset=Array.isArray(_t)?()=>_t:_t}getScrollPosition(){return this.supportsScrolling()?[this.window.pageXOffset,this.window.pageYOffset]:[0,0]}scrollToPosition(_t){this.supportsScrolling()&&this.window.scrollTo(_t[0],_t[1])}scrollToAnchor(_t){if(!this.supportsScrolling())return;const Ve=function So(me,_t){const Ve=me.getElementById(_t)||me.getElementsByName(_t)[0];if(Ve)return Ve;if("function"==typeof me.createTreeWalker&&me.body&&"function"==typeof me.body.attachShadow){const ut=me.createTreeWalker(me.body,NodeFilter.SHOW_ELEMENT);let Ht=ut.currentNode;for(;Ht;){const rn=Ht.shadowRoot;if(rn){const an=rn.getElementById(_t)||rn.querySelector(`[name="${_t}"]`);if(an)return an}Ht=ut.nextNode()}}return null}(this.document,_t);Ve&&(this.scrollToElement(Ve),Ve.focus())}setHistoryScrollRestoration(_t){this.supportsScrolling()&&(this.window.history.scrollRestoration=_t)}scrollToElement(_t){const Ve=_t.getBoundingClientRect(),ut=Ve.left+this.window.pageXOffset,Ht=Ve.top+this.window.pageYOffset,rn=this.offset();this.window.scrollTo(ut-rn[0],Ht-rn[1])}supportsScrolling(){try{return!!this.window&&!!this.window.scrollTo&&"pageXOffset"in this.window}catch{return!1}}}class vo{}},69862:(nt,I,o)=>{"use strict";o.d(I,{JF:()=>Ue,LE:()=>_,QO:()=>G,TP:()=>q,UA:()=>te,WM:()=>g,Xk:()=>P,Zn:()=>j,aW:()=>_e,dt:()=>Y,eN:()=>pe,jN:()=>v});var e=o(65879),n=o(22096),t=o(7715),i=o(65592),l=o(76328),C=o(32181),E=o(37398),u=o(64716),z=o(94664),M=o(96814);class h{}class v{}class g{constructor(N){this.normalizedNames=new Map,this.lazyUpdate=null,N?"string"==typeof N?this.lazyInit=()=>{this.headers=new Map,N.split("\n").forEach(S=>{const $=S.indexOf(":");if($>0){const R=S.slice(0,$),he=R.toLowerCase(),ze=S.slice($+1).trim();this.maybeSetNormalizedName(R,he),this.headers.has(he)?this.headers.get(he).push(ze):this.headers.set(he,[ze])}})}:typeof Headers<"u"&&N instanceof Headers?(this.headers=new Map,N.forEach((S,$)=>{this.setHeaderEntries($,S)})):this.lazyInit=()=>{this.headers=new Map,Object.entries(N).forEach(([S,$])=>{this.setHeaderEntries(S,$)})}:this.headers=new Map}has(N){return this.init(),this.headers.has(N.toLowerCase())}get(N){this.init();const S=this.headers.get(N.toLowerCase());return S&&S.length>0?S[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(N){return this.init(),this.headers.get(N.toLowerCase())||null}append(N,S){return this.clone({name:N,value:S,op:"a"})}set(N,S){return this.clone({name:N,value:S,op:"s"})}delete(N,S){return this.clone({name:N,value:S,op:"d"})}maybeSetNormalizedName(N,S){this.normalizedNames.has(S)||this.normalizedNames.set(S,N)}init(){this.lazyInit&&(this.lazyInit instanceof g?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(N=>this.applyUpdate(N)),this.lazyUpdate=null))}copyFrom(N){N.init(),Array.from(N.headers.keys()).forEach(S=>{this.headers.set(S,N.headers.get(S)),this.normalizedNames.set(S,N.normalizedNames.get(S))})}clone(N){const S=new g;return S.lazyInit=this.lazyInit&&this.lazyInit instanceof g?this.lazyInit:this,S.lazyUpdate=(this.lazyUpdate||[]).concat([N]),S}applyUpdate(N){const S=N.name.toLowerCase();switch(N.op){case"a":case"s":let $=N.value;if("string"==typeof $&&($=[$]),0===$.length)return;this.maybeSetNormalizedName(N.name,S);const R=("a"===N.op?this.headers.get(S):void 0)||[];R.push(...$),this.headers.set(S,R);break;case"d":const he=N.value;if(he){let ze=this.headers.get(S);if(!ze)return;ze=ze.filter(bt=>-1===he.indexOf(bt)),0===ze.length?(this.headers.delete(S),this.normalizedNames.delete(S)):this.headers.set(S,ze)}else this.headers.delete(S),this.normalizedNames.delete(S)}}setHeaderEntries(N,S){const $=(Array.isArray(S)?S:[S]).map(he=>he.toString()),R=N.toLowerCase();this.headers.set(R,$),this.maybeSetNormalizedName(N,R)}forEach(N){this.init(),Array.from(this.normalizedNames.keys()).forEach(S=>N(this.normalizedNames.get(S),this.headers.get(S)))}}class p{encodeKey(N){return x(N)}encodeValue(N){return x(N)}decodeKey(N){return decodeURIComponent(N)}decodeValue(N){return decodeURIComponent(N)}}const y=/%(\d[a-f0-9])/gi,T={40:"@","3A":":",24:"$","2C":",","3B":";","3D":"=","3F":"?","2F":"/"};function x(b){return encodeURIComponent(b).replace(y,(N,S)=>T[S]??N)}function D(b){return`${b}`}class _{constructor(N={}){if(this.updates=null,this.cloneFrom=null,this.encoder=N.encoder||new p,N.fromString){if(N.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function f(b,N){const S=new Map;return b.length>0&&b.replace(/^\?/,"").split("&").forEach(R=>{const he=R.indexOf("="),[ze,bt]=-1==he?[N.decodeKey(R),""]:[N.decodeKey(R.slice(0,he)),N.decodeValue(R.slice(he+1))],Ft=S.get(ze)||[];Ft.push(bt),S.set(ze,Ft)}),S}(N.fromString,this.encoder)}else N.fromObject?(this.map=new Map,Object.keys(N.fromObject).forEach(S=>{const $=N.fromObject[S],R=Array.isArray($)?$.map(D):[D($)];this.map.set(S,R)})):this.map=null}has(N){return this.init(),this.map.has(N)}get(N){this.init();const S=this.map.get(N);return S?S[0]:null}getAll(N){return this.init(),this.map.get(N)||null}keys(){return this.init(),Array.from(this.map.keys())}append(N,S){return this.clone({param:N,value:S,op:"a"})}appendAll(N){const S=[];return Object.keys(N).forEach($=>{const R=N[$];Array.isArray(R)?R.forEach(he=>{S.push({param:$,value:he,op:"a"})}):S.push({param:$,value:R,op:"a"})}),this.clone(S)}set(N,S){return this.clone({param:N,value:S,op:"s"})}delete(N,S){return this.clone({param:N,value:S,op:"d"})}toString(){return this.init(),this.keys().map(N=>{const S=this.encoder.encodeKey(N);return this.map.get(N).map($=>S+"="+this.encoder.encodeValue($)).join("&")}).filter(N=>""!==N).join("&")}clone(N){const S=new _({encoder:this.encoder});return S.cloneFrom=this.cloneFrom||this,S.updates=(this.updates||[]).concat(N),S}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(N=>this.map.set(N,this.cloneFrom.map.get(N))),this.updates.forEach(N=>{switch(N.op){case"a":case"s":const S=("a"===N.op?this.map.get(N.param):void 0)||[];S.push(D(N.value)),this.map.set(N.param,S);break;case"d":if(void 0===N.value){this.map.delete(N.param);break}{let $=this.map.get(N.param)||[];const R=$.indexOf(D(N.value));-1!==R&&$.splice(R,1),$.length>0?this.map.set(N.param,$):this.map.delete(N.param)}}}),this.cloneFrom=this.updates=null)}}class P{constructor(N){this.defaultValue=N}}class O{constructor(){this.map=new Map}set(N,S){return this.map.set(N,S),this}get(N){return this.map.has(N)||this.map.set(N,N.defaultValue()),this.map.get(N)}delete(N){return this.map.delete(N),this}has(N){return this.map.has(N)}keys(){return this.map.keys()}}function k(b){return typeof ArrayBuffer<"u"&&b instanceof ArrayBuffer}function F(b){return typeof Blob<"u"&&b instanceof Blob}function W(b){return typeof FormData<"u"&&b instanceof FormData}class _e{constructor(N,S,$,R){let he;if(this.url=S,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=N.toUpperCase(),function A(b){switch(b){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||R?(this.body=void 0!==$?$:null,he=R):he=$,he&&(this.reportProgress=!!he.reportProgress,this.withCredentials=!!he.withCredentials,he.responseType&&(this.responseType=he.responseType),he.headers&&(this.headers=he.headers),he.context&&(this.context=he.context),he.params&&(this.params=he.params)),this.headers||(this.headers=new g),this.context||(this.context=new O),this.params){const ze=this.params.toString();if(0===ze.length)this.urlWithParams=S;else{const bt=S.indexOf("?");this.urlWithParams=S+(-1===bt?"?":btvn.set(Dn,N.setHeaders[Dn]),Ft)),N.setParams&&(sn=Object.keys(N.setParams).reduce((vn,Dn)=>vn.set(Dn,N.setParams[Dn]),sn)),new _e(S,$,he,{params:sn,headers:Ft,context:pn,reportProgress:bt,responseType:R,withCredentials:ze})}}var Y=function(b){return b[b.Sent=0]="Sent",b[b.UploadProgress=1]="UploadProgress",b[b.ResponseHeader=2]="ResponseHeader",b[b.DownloadProgress=3]="DownloadProgress",b[b.Response=4]="Response",b[b.User=5]="User",b}(Y||{});class G{constructor(N,S=200,$="OK"){this.headers=N.headers||new g,this.status=void 0!==N.status?N.status:S,this.statusText=N.statusText||$,this.url=N.url||null,this.ok=this.status>=200&&this.status<300}}class H extends G{constructor(N={}){super(N),this.type=Y.ResponseHeader}clone(N={}){return new H({headers:N.headers||this.headers,status:void 0!==N.status?N.status:this.status,statusText:N.statusText||this.statusText,url:N.url||this.url||void 0})}}class j extends G{constructor(N={}){super(N),this.type=Y.Response,this.body=void 0!==N.body?N.body:null}clone(N={}){return new j({body:void 0!==N.body?N.body:this.body,headers:N.headers||this.headers,status:void 0!==N.status?N.status:this.status,statusText:N.statusText||this.statusText,url:N.url||this.url||void 0})}}class te extends G{constructor(N){super(N,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?`Http failure during parsing for ${N.url||"(unknown url)"}`:`Http failure response for ${N.url||"(unknown url)"}: ${N.status} ${N.statusText}`,this.error=N.error||null}}function ne(b,N){return{body:N,headers:b.headers,context:b.context,observe:b.observe,params:b.params,reportProgress:b.reportProgress,responseType:b.responseType,withCredentials:b.withCredentials}}let pe=(()=>{class b{constructor(S){this.handler=S}request(S,$,R={}){let he;if(S instanceof _e)he=S;else{let Ft,sn;Ft=R.headers instanceof g?R.headers:new g(R.headers),R.params&&(sn=R.params instanceof _?R.params:new _({fromObject:R.params})),he=new _e(S,$,void 0!==R.body?R.body:null,{headers:Ft,context:R.context,params:sn,reportProgress:R.reportProgress,responseType:R.responseType||"json",withCredentials:R.withCredentials})}const ze=(0,n.of)(he).pipe((0,l.b)(Ft=>this.handler.handle(Ft)));if(S instanceof _e||"events"===R.observe)return ze;const bt=ze.pipe((0,C.h)(Ft=>Ft instanceof j));switch(R.observe||"body"){case"body":switch(he.responseType){case"arraybuffer":return bt.pipe((0,E.U)(Ft=>{if(null!==Ft.body&&!(Ft.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return Ft.body}));case"blob":return bt.pipe((0,E.U)(Ft=>{if(null!==Ft.body&&!(Ft.body instanceof Blob))throw new Error("Response is not a Blob.");return Ft.body}));case"text":return bt.pipe((0,E.U)(Ft=>{if(null!==Ft.body&&"string"!=typeof Ft.body)throw new Error("Response is not a string.");return Ft.body}));default:return bt.pipe((0,E.U)(Ft=>Ft.body))}case"response":return bt;default:throw new Error(`Unreachable: unhandled observe type ${R.observe}}`)}}delete(S,$={}){return this.request("DELETE",S,$)}get(S,$={}){return this.request("GET",S,$)}head(S,$={}){return this.request("HEAD",S,$)}jsonp(S,$){return this.request("JSONP",S,{params:(new _).append($,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(S,$={}){return this.request("OPTIONS",S,$)}patch(S,$,R={}){return this.request("PATCH",S,ne(R,$))}post(S,$,R={}){return this.request("POST",S,ne(R,$))}put(S,$,R={}){return this.request("PUT",S,ne(R,$))}static#e=this.\u0275fac=function($){return new($||b)(e.LFG(h))};static#t=this.\u0275prov=e.Yz7({token:b,factory:b.\u0275fac})}return b})();function xe(b,N){return N(b)}function Me(b,N){return(S,$)=>N.intercept(S,{handle:R=>b(R,$)})}const q=new e.OlP(""),ye=new e.OlP(""),ee=new e.OlP("");function Be(){let b=null;return(N,S)=>{null===b&&(b=((0,e.f3M)(q,{optional:!0})??[]).reduceRight(Me,xe));const $=(0,e.f3M)(e.HDt),R=$.add();return b(N,S).pipe((0,u.x)(()=>$.remove(R)))}}let Re=(()=>{class b extends h{constructor(S,$){super(),this.backend=S,this.injector=$,this.chain=null,this.pendingTasks=(0,e.f3M)(e.HDt)}handle(S){if(null===this.chain){const R=Array.from(new Set([...this.injector.get(ye),...this.injector.get(ee,[])]));this.chain=R.reduceRight((he,ze)=>function Ye(b,N,S){return($,R)=>S.runInContext(()=>N($,he=>b(he,R)))}(he,ze,this.injector),xe)}const $=this.pendingTasks.add();return this.chain(S,R=>this.backend.handle(R)).pipe((0,u.x)(()=>this.pendingTasks.remove($)))}static#e=this.\u0275fac=function($){return new($||b)(e.LFG(v),e.LFG(e.lqb))};static#t=this.\u0275prov=e.Yz7({token:b,factory:b.\u0275fac})}return b})();const Ie=/^\)\]\}',?\n/;let pt=(()=>{class b{constructor(S){this.xhrFactory=S}handle(S){if("JSONP"===S.method)throw new e.vHH(-2800,!1);const $=this.xhrFactory;return($.\u0275loadImpl?(0,t.D)($.\u0275loadImpl()):(0,n.of)(null)).pipe((0,z.w)(()=>new i.y(he=>{const ze=$.build();if(ze.open(S.method,S.urlWithParams),S.withCredentials&&(ze.withCredentials=!0),S.headers.forEach((bn,Rn)=>ze.setRequestHeader(bn,Rn.join(","))),S.headers.has("Accept")||ze.setRequestHeader("Accept","application/json, text/plain, */*"),!S.headers.has("Content-Type")){const bn=S.detectContentTypeHeader();null!==bn&&ze.setRequestHeader("Content-Type",bn)}if(S.responseType){const bn=S.responseType.toLowerCase();ze.responseType="json"!==bn?bn:"text"}const bt=S.serializeBody();let Ft=null;const sn=()=>{if(null!==Ft)return Ft;const bn=ze.statusText||"OK",Rn=new g(ze.getAllResponseHeaders()),qn=function Ne(b){return"responseURL"in b&&b.responseURL?b.responseURL:/^X-Request-URL:/m.test(b.getAllResponseHeaders())?b.getResponseHeader("X-Request-URL"):null}(ze)||S.url;return Ft=new H({headers:Rn,status:ze.status,statusText:bn,url:qn}),Ft},pn=()=>{let{headers:bn,status:Rn,statusText:qn,url:si}=sn(),Wn=null;204!==Rn&&(Wn=typeof ze.response>"u"?ze.responseText:ze.response),0===Rn&&(Rn=Wn?200:0);let ci=Rn>=200&&Rn<300;if("json"===S.responseType&&"string"==typeof Wn){const ri=Wn;Wn=Wn.replace(Ie,"");try{Wn=""!==Wn?JSON.parse(Wn):null}catch(di){Wn=ri,ci&&(ci=!1,Wn={error:di,text:Wn})}}ci?(he.next(new j({body:Wn,headers:bn,status:Rn,statusText:qn,url:si||void 0})),he.complete()):he.error(new te({error:Wn,headers:bn,status:Rn,statusText:qn,url:si||void 0}))},vn=bn=>{const{url:Rn}=sn(),qn=new te({error:bn,status:ze.status||0,statusText:ze.statusText||"Unknown Error",url:Rn||void 0});he.error(qn)};let Dn=!1;const Mn=bn=>{Dn||(he.next(sn()),Dn=!0);let Rn={type:Y.DownloadProgress,loaded:bn.loaded};bn.lengthComputable&&(Rn.total=bn.total),"text"===S.responseType&&ze.responseText&&(Rn.partialText=ze.responseText),he.next(Rn)},En=bn=>{let Rn={type:Y.UploadProgress,loaded:bn.loaded};bn.lengthComputable&&(Rn.total=bn.total),he.next(Rn)};return ze.addEventListener("load",pn),ze.addEventListener("error",vn),ze.addEventListener("timeout",vn),ze.addEventListener("abort",vn),S.reportProgress&&(ze.addEventListener("progress",Mn),null!==bt&&ze.upload&&ze.upload.addEventListener("progress",En)),ze.send(bt),he.next({type:Y.Sent}),()=>{ze.removeEventListener("error",vn),ze.removeEventListener("abort",vn),ze.removeEventListener("load",pn),ze.removeEventListener("timeout",vn),S.reportProgress&&(ze.removeEventListener("progress",Mn),null!==bt&&ze.upload&&ze.upload.removeEventListener("progress",En)),ze.readyState!==ze.DONE&&ze.abort()}})))}static#e=this.\u0275fac=function($){return new($||b)(e.LFG(M.JF))};static#t=this.\u0275prov=e.Yz7({token:b,factory:b.\u0275fac})}return b})();const Dt=new e.OlP("XSRF_ENABLED"),Ut=new e.OlP("XSRF_COOKIE_NAME",{providedIn:"root",factory:()=>"XSRF-TOKEN"}),en=new e.OlP("XSRF_HEADER_NAME",{providedIn:"root",factory:()=>"X-XSRF-TOKEN"});class cn{}let Wt=(()=>{class b{constructor(S,$,R){this.doc=S,this.platform=$,this.cookieName=R,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const S=this.doc.cookie||"";return S!==this.lastCookieString&&(this.parseCount++,this.lastToken=(0,M.Mx)(S,this.cookieName),this.lastCookieString=S),this.lastToken}static#e=this.\u0275fac=function($){return new($||b)(e.LFG(M.K0),e.LFG(e.Lbi),e.LFG(Ut))};static#t=this.\u0275prov=e.Yz7({token:b,factory:b.\u0275fac})}return b})();function Vt(b,N){const S=b.url.toLowerCase();if(!(0,e.f3M)(Dt)||"GET"===b.method||"HEAD"===b.method||S.startsWith("http://")||S.startsWith("https://"))return N(b);const $=(0,e.f3M)(cn).getToken(),R=(0,e.f3M)(en);return null!=$&&!b.headers.has(R)&&(b=b.clone({headers:b.headers.set(R,$)})),N(b)}var He=function(b){return b[b.Interceptors=0]="Interceptors",b[b.LegacyInterceptors=1]="LegacyInterceptors",b[b.CustomXsrfConfiguration=2]="CustomXsrfConfiguration",b[b.NoXsrfProtection=3]="NoXsrfProtection",b[b.JsonpSupport=4]="JsonpSupport",b[b.RequestsMadeViaParent=5]="RequestsMadeViaParent",b[b.Fetch=6]="Fetch",b}(He||{});function It(...b){const N=[pe,pt,Re,{provide:h,useExisting:Re},{provide:v,useExisting:pt},{provide:ye,useValue:Vt,multi:!0},{provide:Dt,useValue:!0},{provide:cn,useClass:Wt}];for(const S of b)N.push(...S.\u0275providers);return(0,e.MR2)(N)}const xt=new e.OlP("LEGACY_INTERCEPTOR_FN");function Qe(){return function et(b,N){return{\u0275kind:b,\u0275providers:N}}(He.LegacyInterceptors,[{provide:xt,useFactory:Be},{provide:ye,useExisting:xt,multi:!0}])}let Ue=(()=>{class b{static#e=this.\u0275fac=function($){return new($||b)};static#t=this.\u0275mod=e.oAB({type:b});static#n=this.\u0275inj=e.cJS({providers:[It(Qe())]})}return b})()},65879:(nt,I,o)=>{"use strict";o.d(I,{$8M:()=>J,$WT:()=>At,$Z:()=>c2,AFp:()=>Kd,ALo:()=>K4,AaK:()=>v,Akn:()=>lr,AsE:()=>dp,B6R:()=>Hi,BQk:()=>Eu,CHM:()=>Sr,CRH:()=>hg,Ckj:()=>Wh,DdM:()=>L4,DjV:()=>Vm,Dn7:()=>G4,DyG:()=>No,EJc:()=>M5,EiD:()=>Uh,EpF:()=>tm,F$t:()=>am,F4k:()=>nm,FYo:()=>c1,FiY:()=>gr,G48:()=>l7,Gf:()=>dg,GfV:()=>d1,GkF:()=>Q1,Gpc:()=>p,Gre:()=>Bm,HDt:()=>kg,HTZ:()=>V4,Hsn:()=>lm,Ikx:()=>up,JOm:()=>hc,JVY:()=>$f,JZr:()=>D,Jf7:()=>D1,KtG:()=>Or,L6k:()=>jf,LAX:()=>Zf,LFG:()=>Je,LMc:()=>F7,LSH:()=>Ec,Lbi:()=>Zd,Lck:()=>mv,MAs:()=>X2,MGl:()=>Du,MMx:()=>O4,MR2:()=>Vd,MT6:()=>Hm,NdJ:()=>q1,O4$:()=>fa,Ojb:()=>v0,OlP:()=>Ut,Oqu:()=>cp,P3R:()=>jh,PXZ:()=>X5,PiD:()=>Xr,Q6J:()=>Z1,QGY:()=>X1,QbO:()=>_0,Qsj:()=>A0,R0b:()=>Jo,RDi:()=>Bf,Rgc:()=>qc,SBq:()=>pl,Sil:()=>b5,Suo:()=>ug,TTD:()=>Gn,TgZ:()=>zu,Tol:()=>Mm,Udp:()=>rp,VKq:()=>F4,VuI:()=>R7,W1O:()=>gg,WD2:()=>mi,WFA:()=>ep,WLB:()=>B4,X6Q:()=>a7,XFs:()=>de,Xpm:()=>Ei,Xq5:()=>R2,Xts:()=>cl,Y36:()=>_l,YKP:()=>x4,YNc:()=>J2,Yjl:()=>Et,Yz7:()=>q,Z0I:()=>Re,ZZ4:()=>$p,_Bn:()=>b4,_UZ:()=>G1,_Vd:()=>hl,_c5:()=>E7,_uU:()=>wm,aQg:()=>jp,c2e:()=>Ng,cJS:()=>ee,cQ8:()=>np,cg1:()=>pp,d8E:()=>hp,dDg:()=>Z5,dqk:()=>pt,dwT:()=>m_,eBb:()=>Kf,eFA:()=>$g,eJc:()=>Op,ekj:()=>ap,eoX:()=>Vg,evT:()=>b1,f3M:()=>Ke,g9A:()=>n1,gHi:()=>fl,gM2:()=>Q4,h0i:()=>La,hGG:()=>D7,hij:()=>Su,iGM:()=>cg,ifc:()=>ze,ip1:()=>Ag,jDz:()=>w4,kEZ:()=>H4,kL8:()=>Qm,kcU:()=>$l,ktI:()=>ml,lG2:()=>Bn,lcZ:()=>Z4,lqb:()=>rr,lri:()=>Bg,mCW:()=>Tc,n5z:()=>nc,n_E:()=>Au,oAB:()=>Ii,oJD:()=>Yh,oxw:()=>rm,pB0:()=>Jf,q3G:()=>ea,qFp:()=>B7,qLn:()=>Rr,qOj:()=>H1,qZA:()=>Tu,qzn:()=>Sa,rWj:()=>Hg,rg0:()=>rn,s9C:()=>tp,sBO:()=>c7,s_b:()=>Ru,soG:()=>Fu,tBr:()=>ds,tb:()=>Bp,tp0:()=>sc,uIk:()=>U1,vHH:()=>_,vpe:()=>ar,wAp:()=>wl,xi3:()=>J4,xp6:()=>a2,ynx:()=>Mu,z2F:()=>Nl,z3N:()=>_r,zSh:()=>Yd,zs3:()=>Xs});var e=o(78645),n=o(47394),t=o(65592),i=o(63019),l=o(65619),C=o(22096),E=o(63020),u=o(94664),z=o(93997);function M(s){for(let r in s)if(s[r]===M)return r;throw Error("Could not find renamed property on target object.")}function h(s,r){for(const a in r)r.hasOwnProperty(a)&&!s.hasOwnProperty(a)&&(s[a]=r[a])}function v(s){if("string"==typeof s)return s;if(Array.isArray(s))return"["+s.map(v).join(", ")+"]";if(null==s)return""+s;if(s.overriddenName)return`${s.overriddenName}`;if(s.name)return`${s.name}`;const r=s.toString();if(null==r)return""+r;const a=r.indexOf("\n");return-1===a?r:r.substring(0,a)}function g(s,r){return null==s||""===s?null===r?"":r:null==r||""===r?s:s+" "+r}const d=M({__forward_ref__:M});function p(s){return s.__forward_ref__=p,s.toString=function(){return v(this())},s}function f(s){return y(s)?s():s}function y(s){return"function"==typeof s&&s.hasOwnProperty(d)&&s.__forward_ref__===p}function T(s){return s&&!!s.\u0275providers}const D="https://g.co/ng/security#xss";class _ extends Error{constructor(r,a){super(function P(s,r){return`NG0${Math.abs(s)}${r?": "+r:""}`}(r,a)),this.code=r}}function O(s){return"string"==typeof s?s:null==s?"":String(s)}function K(s,r){throw new _(-201,!1)}function ie(s,r){null==s&&function ae(s,r,a,c){throw new Error(`ASSERTION ERROR: ${s}`+(null==c?"":` [Expected=> ${a} ${c} ${r} <=Actual]`))}(r,s,null,"!=")}function q(s){return{token:s.token,providedIn:s.providedIn||null,factory:s.factory,value:void 0}}function ee(s){return{providers:s.providers||[],imports:s.imports||[]}}function Be(s){return ct(s,je)||ct(s,mt)}function Re(s){return null!==Be(s)}function ct(s,r){return s.hasOwnProperty(r)?s[r]:null}function Mt(s){return s&&(s.hasOwnProperty(ot)||s.hasOwnProperty(we))?s[ot]:null}const je=M({\u0275prov:M}),ot=M({\u0275inj:M}),mt=M({ngInjectableDef:M}),we=M({ngInjectorDef:M});var de=function(s){return s[s.Default=0]="Default",s[s.Host=1]="Host",s[s.Self=2]="Self",s[s.SkipSelf=4]="SkipSelf",s[s.Optional=8]="Optional",s}(de||{});let U;function B(){return U}function Ee(s){const r=U;return U=s,r}function Ie(s,r,a){const c=Be(s);return c&&"root"==c.providedIn?void 0===c.value?c.value=c.factory():c.value:a&de.Optional?null:void 0!==r?r:void K(v(s))}const pt=globalThis;class Ut{constructor(r,a){this._desc=r,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof a?this.__NG_ELEMENT_ID__=a:void 0!==a&&(this.\u0275prov=q({token:this,providedIn:a.providedIn||"root",factory:a.factory}))}get multi(){return this}toString(){return`InjectionToken ${this._desc}`}}const Qe={},ke="__NG_DI_FLAG__",fe="ngTempTokenPath",ge=/\n/gm,$e="__source";let Ue;function De(s){const r=Ue;return Ue=s,r}function Pe(s,r=de.Default){if(void 0===Ue)throw new _(-203,!1);return null===Ue?Ie(s,void 0,r):Ue.get(s,r&de.Optional?null:void 0,r)}function Je(s,r=de.Default){return(B()||Pe)(f(s),r)}function Ke(s,r=de.Default){return Je(s,ve(r))}function ve(s){return typeof s>"u"||"number"==typeof s?s:0|(s.optional&&8)|(s.host&&1)|(s.self&&2)|(s.skipSelf&&4)}function it(s){const r=[];for(let a=0;ar){V=w-1;break}}}for(;ww?"":m[kt+1].toLowerCase();const Xt=8&c?Zt:null;if(Xt&&-1!==Rn(Xt,Xe,0)||2&c&&Xe!==Zt){if(ei(c))return!1;V=!0}}}}else{if(!V&&!ei(c)&&!ei(Te))return!1;if(V&&ei(Te))continue;V=!1,c=Te|1&c}}return ei(c)||V}function ei(s){return 0==(1&s)}function po(s,r,a,c){if(null===r)return-1;let m=0;if(c||!a){let w=!1;for(;m-1)for(a++;a0?'="'+se+'"':"")+"]"}else 8&c?m+="."+V:4&c&&(m+=" "+V);else""!==m&&!ei(V)&&(r+=Qi(w,m),m=""),c=V,w=w||!ei(c);a++}return""!==m&&(r+=Qi(w,m)),r}function Ei(s){return R(()=>{const r=gn(s),a={...r,decls:s.decls,vars:s.vars,template:s.template,consts:s.consts||null,ngContentSelectors:s.ngContentSelectors,onPush:s.changeDetection===he.OnPush,directiveDefs:null,pipeDefs:null,dependencies:r.standalone&&s.dependencies||null,getStandaloneInjector:null,signals:s.signals??!1,data:s.data||{},encapsulation:s.encapsulation||ze.Emulated,styles:s.styles||Ft,_:null,schemas:s.schemas||null,tView:null,id:""};Ln(a);const c=s.dependencies;return a.directiveDefs=Sn(c,!1),a.pipeDefs=Sn(c,!0),a.id=function St(s){let r=0;const a=[s.selectors,s.ngContentSelectors,s.hostVars,s.hostAttrs,s.consts,s.vars,s.decls,s.encapsulation,s.standalone,s.signals,s.exportAs,JSON.stringify(s.inputs),JSON.stringify(s.outputs),Object.getOwnPropertyNames(s.type.prototype),!!s.contentQueries,!!s.viewQuery].join("|");for(const m of a)r=Math.imul(31,r)+m.charCodeAt(0)<<0;return r+=2147483648,"c"+r}(a),a})}function Hi(s,r,a){const c=s.\u0275cmp;c.directiveDefs=Sn(r,!1),c.pipeDefs=Sn(a,!0)}function qi(s){return un(s)||lt(s)}function Pi(s){return null!==s}function Ii(s){return R(()=>({type:s.type,bootstrap:s.bootstrap||Ft,declarations:s.declarations||Ft,imports:s.imports||Ft,exports:s.exports||Ft,transitiveCompileScopes:null,schemas:s.schemas||null,id:s.id||null}))}function oi(s,r){if(null==s)return bt;const a={};for(const c in s)if(s.hasOwnProperty(c)){let m=s[c],w=m;Array.isArray(m)&&(w=m[1],m=m[0]),a[m]=c,r&&(r[m]=w)}return a}function Bn(s){return R(()=>{const r=gn(s);return Ln(r),r})}function Et(s){return{type:s.type,name:s.name,factory:null,pure:!1!==s.pure,standalone:!0===s.standalone,onDestroy:s.type.prototype.ngOnDestroy||null}}function un(s){return s[sn]||null}function lt(s){return s[pn]||null}function Ct(s){return s[vn]||null}function At(s){const r=un(s)||lt(s)||Ct(s);return null!==r&&r.standalone}function Qt(s,r){const a=s[Dn]||null;if(!a&&!0===r)throw new Error(`Type ${v(s)} does not have '\u0275mod' property.`);return a}function gn(s){const r={};return{type:s.type,providersResolver:null,factory:null,hostBindings:s.hostBindings||null,hostVars:s.hostVars||0,hostAttrs:s.hostAttrs||null,contentQueries:s.contentQueries||null,declaredInputs:r,inputTransforms:null,inputConfig:s.inputs||bt,exportAs:s.exportAs||null,standalone:!0===s.standalone,signals:!0===s.signals,selectors:s.selectors||Ft,viewQuery:s.viewQuery||null,features:s.features||null,setInput:null,findHostDirectiveDefs:null,hostDirectives:null,inputs:oi(s.inputs,r),outputs:oi(s.outputs)}}function Ln(s){s.features?.forEach(r=>r(s))}function Sn(s,r){if(!s)return null;const a=r?Ct:qi;return()=>("function"==typeof s?s():s).map(c=>a(c)).filter(Pi)}const gt=0,We=1,Nt=2,Kt=3,ln=4,zn=5,kn=6,Qn=7,ui=8,eo=9,Ui=10,Un=11,go=12,hs=13,xo=14,Ti=15,qo=16,so=17,ro=18,So=19,ps=20,vo=21,ao=22,Oo=23,Wo=24,Jn=25,es=1,no=2,ji=7,Fi=9,Ai=11;function rt(s){return Array.isArray(s)&&"object"==typeof s[es]}function Gt(s){return Array.isArray(s)&&!0===s[es]}function Z(s){return 0!=(4&s.flags)}function dt(s){return s.componentOffset>-1}function vt(s){return 1==(1&s.flags)}function $t(s){return!!s.template}function yn(s){return 0!=(512&s[Nt])}function Co(s,r){return s.hasOwnProperty(Mn)?s[Mn]:null}let uo=null,Qo=!1;function Do(s){const r=uo;return uo=s,r}const ws={version:0,dirty:!1,producerNode:void 0,producerLastReadVersion:void 0,producerIndexOfThis:void 0,nextProducerIndex:0,liveConsumerNode:void 0,liveConsumerIndexOfThis:void 0,consumerAllowSignalWrites:!1,consumerIsAlwaysLive:!1,producerMustRecompute:()=>!1,producerRecomputeValue:()=>{},consumerMarkedDirty:()=>{}};function Ps(s){if(!zs(s)||s.dirty){if(!s.producerMustRecompute(s)&&!fn(s))return void(s.dirty=!1);s.producerRecomputeValue(s),s.dirty=!1}}function Yt(s){s.dirty=!0,function Ho(s){if(void 0===s.liveConsumerNode)return;const r=Qo;Qo=!0;try{for(const a of s.liveConsumerNode)a.dirty||Yt(a)}finally{Qo=r}}(s),s.consumerMarkedDirty?.(s)}function ms(s){return s&&(s.nextProducerIndex=0),Do(s)}function Pn(s,r){if(Do(r),s&&void 0!==s.producerNode&&void 0!==s.producerIndexOfThis&&void 0!==s.producerLastReadVersion){if(zs(s))for(let a=s.nextProducerIndex;as.nextProducerIndex;)s.producerNode.pop(),s.producerLastReadVersion.pop(),s.producerIndexOfThis.pop()}}function fn(s){js(s);for(let r=0;r0}function js(s){s.producerNode??=[],s.producerIndexOfThis??=[],s.producerLastReadVersion??=[]}let Ks=null;function rn(s){const r=Do(null);try{return s()}finally{Do(r)}}const An=()=>{},bi=(()=>({...ws,consumerIsAlwaysLive:!0,consumerAllowSignalWrites:!1,consumerMarkedDirty:s=>{s.schedule(s.ref)},hasRun:!1,cleanupFn:An}))();class mi{constructor(r,a,c){this.previousValue=r,this.currentValue=a,this.firstChange=c}isFirstChange(){return this.firstChange}}function Gn(){return Ki}function Ki(s){return s.type.prototype.ngOnChanges&&(s.setInput=Zi),Fn}function Fn(){const s=Ko(this),r=s?.current;if(r){const a=s.previous;if(a===bt)s.previous=r;else for(let c in r)a[c]=r[c];s.current=null,this.ngOnChanges(r)}}function Zi(s,r,a,c){const m=this.declaredInputs[a],w=Ko(s)||function Ms(s,r){return s[Vo]=r}(s,{previous:bt,current:null}),V=w.current||(w.current={}),se=w.previous,Te=se[m];V[m]=new mi(Te&&Te.currentValue,r,se===bt),s[c]=r}Gn.ngInherit=!0;const Vo="__ngSimpleChanges__";function Ko(s){return s[Vo]||null}const ni=function(s,r,a){},Es="svg";function xi(s){for(;Array.isArray(s);)s=s[gt];return s}function br(s,r){return xi(r[s])}function Uo(s,r){return xi(r[s.index])}function Ba(s,r){return s.data[r]}function Js(s,r){return s[r]}function Yo(s,r){const a=r[s];return rt(a)?a:a[gt]}function Bi(s,r){return null==r?null:s[r]}function da(s){s[so]=0}function Ll(s){1024&s[Nt]||(s[Nt]|=1024,Ua(s,1))}function Va(s){1024&s[Nt]&&(s[Nt]&=-1025,Ua(s,-1))}function Ua(s,r){let a=s[Kt];if(null===a)return;a[zn]+=r;let c=a;for(a=a[Kt];null!==a&&(1===r&&1===c[zn]||-1===r&&0===c[zn]);)a[zn]+=r,c=a,a=a[Kt]}function ua(s,r){if(256==(256&s[Nt]))throw new _(911,!1);null===s[vo]&&(s[vo]=[]),s[vo].push(r)}const Zn={lFrame:Gs(null),bindingsEnabled:!0,skipHydrationRootTNode:null};function nr(){return Zn.bindingsEnabled}function ir(){return null!==Zn.skipHydrationRootTNode}function hn(){return Zn.lFrame.lView}function ai(){return Zn.lFrame.tView}function Sr(s){return Zn.lFrame.contextLView=s,s[ui]}function Or(s){return Zn.lFrame.contextLView=null,s}function To(){let s=Ur();for(;null!==s&&64===s.type;)s=s.parent;return s}function Ur(){return Zn.lFrame.currentTNode}function rs(s,r){const a=Zn.lFrame;a.currentTNode=s,a.isParent=r}function wr(){return Zn.lFrame.isParent}function Yr(){Zn.lFrame.isParent=!1}function Zo(){const s=Zn.lFrame;let r=s.bindingRootIndex;return-1===r&&(r=s.bindingRootIndex=s.tView.bindingStartIndex),r}function ks(){return Zn.lFrame.bindingIndex}function Se(){return Zn.lFrame.bindingIndex++}function oe(s){const r=Zn.lFrame,a=r.bindingIndex;return r.bindingIndex=r.bindingIndex+s,a}function zt(s,r){const a=Zn.lFrame;a.bindingIndex=a.bindingRootIndex=s,on(r)}function on(s){Zn.lFrame.currentDirectiveIndex=s}function tn(s){const r=Zn.lFrame.currentDirectiveIndex;return-1===r?null:s[r]}function xn(){return Zn.lFrame.currentQueryIndex}function ti(s){Zn.lFrame.currentQueryIndex=s}function Vi(s){const r=s[We];return 2===r.type?r.declTNode:1===r.type?s[kn]:null}function Ci(s,r,a){if(a&de.SkipSelf){let m=r,w=s;for(;!(m=m.parent,null!==m||a&de.Host||(m=Vi(w),null===m||(w=w[xo],10&m.type))););if(null===m)return!1;r=m,s=w}const c=Zn.lFrame=or();return c.currentTNode=r,c.lView=s,!0}function Po(s){const r=or(),a=s[We];Zn.lFrame=r,r.currentTNode=a.firstChild,r.lView=s,r.tView=a,r.contextLView=s,r.bindingIndex=a.bindingStartIndex,r.inI18n=!1}function or(){const s=Zn.lFrame,r=null===s?null:s.child;return null===r?Gs(s):r}function Gs(s){const r={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:s,child:null,inI18n:!1};return null!==s&&(s.child=r),r}function as(){const s=Zn.lFrame;return Zn.lFrame=s.parent,s.currentTNode=null,s.lView=null,s}const Rs=as;function Wr(){const s=as();s.isParent=!0,s.tView=null,s.selectedIndex=-1,s.contextLView=null,s.elementDepthCount=0,s.currentDirectiveIndex=-1,s.currentNamespace=null,s.bindingRootIndex=-1,s.bindingIndex=-1,s.currentQueryIndex=0}function Io(){return Zn.lFrame.selectedIndex}function pr(s){Zn.lFrame.selectedIndex=s}function ho(){const s=Zn.lFrame;return Ba(s.tView,s.selectedIndex)}function fa(){Zn.lFrame.currentNamespace=Es}function $l(){!function nd(){Zn.lFrame.currentNamespace=null}()}let Za=!0;function ma(){return Za}function Ls(s){Za=s}function ga(s,r){for(let a=r.directiveStart,c=r.directiveEnd;a=c)break}else r[Te]<0&&(s[so]+=65536),(se>13>16&&(3&s[Nt])===r&&(s[Nt]+=8192,Kl(se,w)):Kl(se,w)}const fr=-1;class Fs{constructor(r,a,c){this.factory=r,this.resolving=!1,this.canSeeViewProviders=a,this.injectImpl=c}}function Qa(s){return s!==fr}function Kr(s){return 32767&s}function Ir(s,r){let a=function ad(s){return s>>16}(s),c=r;for(;a>0;)c=c[xo],a--;return c}let Xa=!0;function va(s){const r=Xa;return Xa=s,r}const Gl=255,Ql=5;let Xl=0;const Bs={};function ya(s,r){const a=Ca(s,r);if(-1!==a)return a;const c=r[We];c.firstCreatePass&&(s.injectorIndex=r.length,qa(c.data,s),qa(r,null),qa(c.blueprint,null));const m=Zr(s,r),w=s.injectorIndex;if(Qa(m)){const V=Kr(m),se=Ir(m,r),Te=se[We].data;for(let Xe=0;Xe<8;Xe++)r[w+Xe]=se[V+Xe]|Te[V+Xe]}return r[w+8]=m,w}function qa(s,r){s.push(0,0,0,0,0,0,0,0,r)}function Ca(s,r){return-1===s.injectorIndex||s.parent&&s.parent.injectorIndex===s.injectorIndex||null===r[s.injectorIndex+8]?-1:s.injectorIndex}function Zr(s,r){if(s.parent&&-1!==s.parent.injectorIndex)return s.parent.injectorIndex;let a=0,c=null,m=r;for(;null!==m;){if(c=Ce(m),null===c)return fr;if(a++,m=m[xo],-1!==c.injectorIndex)return c.injectorIndex|a<<16}return fr}function Jr(s,r,a){!function ld(s,r,a){let c;"string"==typeof a?c=a.charCodeAt(0)||0:a.hasOwnProperty(En)&&(c=a[En]),null==c&&(c=a[En]=Xl++);const m=c&Gl;r.data[s+(m>>Ql)]|=1<=0?r&Gl:pd:r}(a);if("function"==typeof w){if(!Ci(r,s,c))return c&de.Host?cd(m,0,c):ql(r,a,c,m);try{let V;if(V=w(c),null!=V||c&de.Optional)return V;K()}finally{Rs()}}else if("number"==typeof w){let V=null,se=Ca(s,r),Te=fr,Xe=c&de.Host?r[Ti][kn]:null;for((-1===se||c&de.SkipSelf)&&(Te=-1===se?Zr(s,r):r[se+8],Te!==fr&&ud(c,!1)?(V=r[We],se=Kr(Te),r=Ir(Te,r)):se=-1);-1!==se;){const yt=r[We];if(tc(w,se,yt.data)){const kt=dd(se,r,a,V,c,Xe);if(kt!==Bs)return kt}Te=r[se+8],Te!==fr&&ud(c,r[We].data[se+8]===Xe)&&tc(w,se,r)?(V=yt,se=Kr(Te),r=Ir(Te,r)):se=-1}}return m}function dd(s,r,a,c,m,w){const V=r[We],se=V.data[s+8],yt=el(se,V,a,null==c?dt(se)&&Xa:c!=V&&0!=(3&se.type),m&de.Host&&w===se);return null!==yt?mr(r,V,yt,se):Bs}function el(s,r,a,c,m){const w=s.providerIndexes,V=r.data,se=1048575&w,Te=s.directiveStart,yt=w>>20,Zt=m?se+yt:s.directiveEnd;for(let Xt=c?se:se+yt;Xt=Te&&dn.type===a)return Xt}if(m){const Xt=V[Te];if(Xt&&$t(Xt)&&Xt.type===a)return Te}return null}function mr(s,r,a,c){let m=s[a];const w=r.data;if(function id(s){return s instanceof Fs}(m)){const V=m;V.resolving&&function k(s,r){const a=r?`. Dependency path: ${r.join(" > ")} > ${s}`:"";throw new _(-200,`Circular dependency in DI detected for ${s}${a}`)}(function A(s){return"function"==typeof s?s.name||s.toString():"object"==typeof s&&null!=s&&"function"==typeof s.type?s.type.name||s.type.toString():O(s)}(w[a]));const se=va(V.canSeeViewProviders);V.resolving=!0;const Xe=V.injectImpl?Ee(V.injectImpl):null;Ci(s,c,de.Default);try{m=s[a]=V.factory(void 0,w,s,c),r.firstCreatePass&&a>=c.directiveStart&&function jl(s,r,a){const{ngOnChanges:c,ngOnInit:m,ngDoCheck:w}=r.type.prototype;if(c){const V=Ki(r);(a.preOrderHooks??=[]).push(s,V),(a.preOrderCheckHooks??=[]).push(s,V)}m&&(a.preOrderHooks??=[]).push(0-s,m),w&&((a.preOrderHooks??=[]).push(s,w),(a.preOrderCheckHooks??=[]).push(s,w))}(a,w[a],r)}finally{null!==Xe&&Ee(Xe),va(se),V.resolving=!1,Rs()}}return m}function tc(s,r,a){return!!(a[r+(s>>Ql)]&1<{const r=s.prototype.constructor,a=r[Mn]||Ta(r),c=Object.prototype;let m=Object.getPrototypeOf(s.prototype).constructor;for(;m&&m!==c;){const w=m[Mn]||Ta(m);if(w&&w!==a)return w;m=Object.getPrototypeOf(m)}return w=>new w})}function Ta(s){return y(s)?()=>{const r=Ta(f(s));return r&&r()}:Co(s)}function Ce(s){const r=s[We],a=r.type;return 2===a?r.declTNode:1===a?s[kn]:null}function J(s){return function Ku(s,r){if("class"===r)return s.classes;if("style"===r)return s.styles;const a=s.attrs;if(a){const c=a.length;let m=0;for(;m{const c=function Pt(s){return function(...a){if(s){const c=s(...a);for(const m in c)this[m]=c[m]}}}(r);function m(...w){if(this instanceof m)return c.apply(this,w),this;const V=new m(...w);return se.annotation=V,se;function se(Te,Xe,yt){const kt=Te.hasOwnProperty(X)?Te[X]:Object.defineProperty(Te,X,{value:[]})[X];for(;kt.length<=yt;)kt.push(null);return(kt[yt]=kt[yt]||[]).push(V),Te}}return a&&(m.prototype=Object.create(a.prototype)),m.prototype.ngMetadataName=s,m.annotationCls=m,m})}const No=Function;function is(s,r){s.forEach(a=>Array.isArray(a)?is(a,r):r(a))}function Us(s,r,a){r>=s.length?s.push(a):s.splice(r,0,a)}function ls(s,r){return r>=s.length-1?s.pop():s.splice(r,1)[0]}function Ar(s,r){const a=[];for(let c=0;c=0?s[1|c]=a:(c=~c,function ic(s,r,a,c){let m=s.length;if(m==r)s.push(a,c);else if(1===m)s.push(c,s[0]),s[0]=a;else{for(m--,s.push(s[m-1],s[m]);m>r;)s[m]=s[m-2],m--;s[r]=a,s[r+1]=c}}(s,c,r,a)),c}function $n(s,r){const a=Kn(s,r);if(a>=0)return s[1|a]}function Kn(s,r){return function bo(s,r,a){let c=0,m=s.length>>a;for(;m!==c;){const w=c+(m-c>>1),V=s[w<r?m=w:c=w+1}return~(m<({token:s})),-1),gr=b(Rt("Optional"),8),Xr=b(Rt("Self"),2),sc=b(Rt("SkipSelf"),4);function dc(s){return 128==(128&s.flags)}var hc=function(s){return s[s.Important=1]="Important",s[s.DashCase=2]="DashCase",s}(hc||{});const lh=/^>|^->||--!>|)/g,lf="\u200b$1\u200b";const Cd=new Map;let cf=0;const Td="__ngContext__";function os(s,r){rt(r)?(s[Td]=r[So],function uf(s){Cd.set(s[So],s)}(r)):s[Td]=r}let pc;function Md(s,r){return pc(s,r)}function ol(s){const r=s[Kt];return Gt(r)?r[Kt]:r}function _h(s){return yh(s[go])}function vh(s){return yh(s[ln])}function yh(s){for(;null!==s&&!Gt(s);)s=s[ln];return s}function Da(s,r,a,c,m){if(null!=c){let w,V=!1;Gt(c)?w=c:rt(c)&&(V=!0,c=c[gt]);const se=xi(c);0===s&&null!==a?null==m?Mh(r,a,se):kr(r,a,se,m||null,!0):1===s&&null!==a?kr(r,a,se,m||null,!0):2===s?function yc(s,r,a){const c=_c(s,r);c&&function wf(s,r,a,c){s.removeChild(r,a,c)}(s,c,r,a)}(r,se,V):3===s&&r.destroyNode(se),null!=w&&function Af(s,r,a,c,m){const w=a[ji];w!==xi(a)&&Da(r,s,c,w,m);for(let se=Ai;ser.replace(af,lf))}(r))}function mc(s,r,a){return s.createElement(r,a)}function zh(s,r){const a=s[Fi],c=a.indexOf(r);Va(r),a.splice(c,1)}function gc(s,r){if(s.length<=Ai)return;const a=Ai+r,c=s[a];if(c){const m=c[qo];null!==m&&m!==s&&zh(m,c),r>0&&(s[a-1][ln]=c[ln]);const w=ls(s,Ai+r);!function Tf(s,r){rl(s,r,r[Un],2,null,null),r[gt]=null,r[kn]=null}(c[We],c);const V=w[ro];null!==V&&V.detachView(w[We]),c[Kt]=null,c[ln]=null,c[Nt]&=-129}return c}function Dd(s,r){if(!(256&r[Nt])){const a=r[Un];r[Oo]&&ss(r[Oo]),r[Wo]&&ss(r[Wo]),a.destroyNode&&rl(s,r,a,3,null,null),function Df(s){let r=s[go];if(!r)return bd(s[We],s);for(;r;){let a=null;if(rt(r))a=r[go];else{const c=r[Ai];c&&(a=c)}if(!a){for(;r&&!r[ln]&&r!==s;)rt(r)&&bd(r[We],r),r=r[Kt];null===r&&(r=s),rt(r)&&bd(r[We],r),a=r&&r[ln]}r=a}}(r)}}function bd(s,r){if(!(256&r[Nt])){r[Nt]&=-129,r[Nt]|=256,function Of(s,r){let a;if(null!=s&&null!=(a=s.destroyHooks))for(let c=0;c=0?c[V]():c[-V].unsubscribe(),w+=2}else a[w].call(c[a[w+1]]);null!==c&&(r[Qn]=null);const m=r[vo];if(null!==m){r[vo]=null;for(let w=0;w-1){const{encapsulation:w}=s.data[c.directiveStart+m];if(w===ze.None||w===ze.Emulated)return null}return Uo(c,a)}}(s,r.parent,a)}function kr(s,r,a,c,m){s.insertBefore(r,a,c,m)}function Mh(s,r,a){s.appendChild(r,a)}function Eh(s,r,a,c,m){null!==c?kr(s,r,a,c,m):Mh(s,r,a)}function _c(s,r){return s.parentNode(r)}function Dh(s,r,a){return xh(s,r,a)}let Sd,Cc,Id,zc,xh=function bh(s,r,a){return 40&s.type?Uo(s,a):null};function vc(s,r,a,c){const m=xd(s,c,r),w=r[Un],se=Dh(c.parent||r[kn],c,r);if(null!=m)if(Array.isArray(a))for(let Te=0;Tes,createScript:s=>s,createScriptURL:s=>s})}catch{}return Cc}()?.createHTML(s)||s}function Bf(s){Id=s}function xa(){if(void 0!==Id)return Id;if(typeof document<"u")return document;throw new _(210,!1)}function Ad(){if(void 0===zc&&(zc=null,pt.trustedTypes))try{zc=pt.trustedTypes.createPolicy("angular#unsafe-bypass",{createHTML:s=>s,createScript:s=>s,createScriptURL:s=>s})}catch{}return zc}function Nd(s){return Ad()?.createHTML(s)||s}function kd(s){return Ad()?.createScriptURL(s)||s}class qr{constructor(r){this.changingThisBreaksApplicationSecurity=r}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see ${D})`}}class Hf extends qr{getTypeName(){return"HTML"}}class kh extends qr{getTypeName(){return"Style"}}class Vf extends qr{getTypeName(){return"Script"}}class Uf extends qr{getTypeName(){return"URL"}}class Yf extends qr{getTypeName(){return"ResourceURL"}}function _r(s){return s instanceof qr?s.changingThisBreaksApplicationSecurity:s}function Sa(s,r){const a=function Wf(s){return s instanceof qr&&s.getTypeName()||null}(s);if(null!=a&&a!==r){if("ResourceURL"===a&&"URL"===r)return!0;throw new Error(`Required a safe ${r}, got a ${a} (see ${D})`)}return a===r}function $f(s){return new Hf(s)}function jf(s){return new kh(s)}function Kf(s){return new Vf(s)}function Zf(s){return new Uf(s)}function Jf(s){return new Yf(s)}class Gf{constructor(r){this.inertDocumentHelper=r}getInertBodyElement(r){r=""+r;try{const a=(new window.DOMParser).parseFromString(ba(r),"text/html").body;return null===a?this.inertDocumentHelper.getInertBodyElement(r):(a.removeChild(a.firstChild),a)}catch{return null}}}class Qf{constructor(r){this.defaultDoc=r,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert")}getInertBodyElement(r){const a=this.inertDocument.createElement("template");return a.innerHTML=ba(r),a}}const Lh=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:\/?#]*(?:[\/?#]|$))/i;function Tc(s){return(s=String(s)).match(Lh)?s:"unsafe:"+s}function sr(s){const r={};for(const a of s.split(","))r[a]=!0;return r}function al(...s){const r={};for(const a of s)for(const c in a)a.hasOwnProperty(c)&&(r[c]=!0);return r}const Rd=sr("area,br,col,hr,img,wbr"),Fh=sr("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),Bh=sr("rp,rt"),Ld=al(Rd,al(Fh,sr("address,article,aside,blockquote,caption,center,del,details,dialog,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,main,map,menu,nav,ol,pre,section,summary,table,ul")),al(Bh,sr("a,abbr,acronym,audio,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,picture,q,ruby,rp,rt,s,samp,small,source,span,strike,strong,sub,sup,time,track,tt,u,var,video")),al(Bh,Fh)),Fd=sr("background,cite,href,itemtype,longdesc,poster,src,xlink:href"),Hh=al(Fd,sr("abbr,accesskey,align,alt,autoplay,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,controls,coords,datetime,default,dir,download,face,headers,height,hidden,hreflang,hspace,ismap,itemscope,itemprop,kind,label,lang,language,loop,media,muted,nohref,nowrap,open,preload,rel,rev,role,rows,rowspan,rules,scope,scrolling,shape,size,sizes,span,srclang,srcset,start,summary,tabindex,target,title,translate,type,usemap,valign,value,vspace,width"),sr("aria-activedescendant,aria-atomic,aria-autocomplete,aria-busy,aria-checked,aria-colcount,aria-colindex,aria-colspan,aria-controls,aria-current,aria-describedby,aria-details,aria-disabled,aria-dropeffect,aria-errormessage,aria-expanded,aria-flowto,aria-grabbed,aria-haspopup,aria-hidden,aria-invalid,aria-keyshortcuts,aria-label,aria-labelledby,aria-level,aria-live,aria-modal,aria-multiline,aria-multiselectable,aria-orientation,aria-owns,aria-placeholder,aria-posinset,aria-pressed,aria-readonly,aria-relevant,aria-required,aria-roledescription,aria-rowcount,aria-rowindex,aria-rowspan,aria-selected,aria-setsize,aria-sort,aria-valuemax,aria-valuemin,aria-valuenow,aria-valuetext")),qf=sr("script,style,template");class e0{constructor(){this.sanitizedSomething=!1,this.buf=[]}sanitizeChildren(r){let a=r.firstChild,c=!0;for(;a;)if(a.nodeType===Node.ELEMENT_NODE?c=this.startElement(a):a.nodeType===Node.TEXT_NODE?this.chars(a.nodeValue):this.sanitizedSomething=!0,c&&a.firstChild)a=a.firstChild;else for(;a;){a.nodeType===Node.ELEMENT_NODE&&this.endElement(a);let m=this.checkClobberedElement(a,a.nextSibling);if(m){a=m;break}a=this.checkClobberedElement(a,a.parentNode)}return this.buf.join("")}startElement(r){const a=r.nodeName.toLowerCase();if(!Ld.hasOwnProperty(a))return this.sanitizedSomething=!0,!qf.hasOwnProperty(a);this.buf.push("<"),this.buf.push(a);const c=r.attributes;for(let m=0;m"),!0}endElement(r){const a=r.nodeName.toLowerCase();Ld.hasOwnProperty(a)&&!Rd.hasOwnProperty(a)&&(this.buf.push(""))}chars(r){this.buf.push(Vh(r))}checkClobberedElement(r,a){if(a&&(r.compareDocumentPosition(a)&Node.DOCUMENT_POSITION_CONTAINED_BY)===Node.DOCUMENT_POSITION_CONTAINED_BY)throw new Error(`Failed to sanitize html because the element is clobbered: ${r.outerHTML}`);return a}}const t0=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,n0=/([^\#-~ |!])/g;function Vh(s){return s.replace(/&/g,"&").replace(t0,function(r){return"&#"+(1024*(r.charCodeAt(0)-55296)+(r.charCodeAt(1)-56320)+65536)+";"}).replace(n0,function(r){return"&#"+r.charCodeAt(0)+";"}).replace(//g,">")}let Mc;function Uh(s,r){let a=null;try{Mc=Mc||function Rh(s){const r=new Qf(s);return function Xf(){try{return!!(new window.DOMParser).parseFromString(ba(""),"text/html")}catch{return!1}}()?new Gf(r):r}(s);let c=r?String(r):"";a=Mc.getInertBodyElement(c);let m=5,w=c;do{if(0===m)throw new Error("Failed to sanitize html because the input is unstable");m--,c=w,w=a.innerHTML,a=Mc.getInertBodyElement(c)}while(c!==w);return ba((new e0).sanitizeChildren(Bd(a)||a))}finally{if(a){const c=Bd(a)||a;for(;c.firstChild;)c.removeChild(c.firstChild)}}}function Bd(s){return"content"in s&&function o0(s){return s.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===s.nodeName}(s)?s.content:null}var ea=function(s){return s[s.NONE=0]="NONE",s[s.HTML=1]="HTML",s[s.STYLE=2]="STYLE",s[s.SCRIPT=3]="SCRIPT",s[s.URL=4]="URL",s[s.RESOURCE_URL=5]="RESOURCE_URL",s}(ea||{});function Yh(s){const r=ll();return r?Nd(r.sanitize(ea.HTML,s)||""):Sa(s,"HTML")?Nd(_r(s)):Uh(xa(),O(s))}function Wh(s){const r=ll();return r?r.sanitize(ea.STYLE,s)||"":Sa(s,"Style")?_r(s):O(s)}function Ec(s){const r=ll();return r?r.sanitize(ea.URL,s)||"":Sa(s,"URL")?_r(s):Tc(O(s))}function $h(s){const r=ll();if(r)return kd(r.sanitize(ea.RESOURCE_URL,s)||"");if(Sa(s,"ResourceURL"))return kd(_r(s));throw new _(904,!1)}function jh(s,r,a){return function l0(s,r){return"src"===r&&("embed"===s||"frame"===s||"iframe"===s||"media"===s||"script"===s)||"href"===r&&("base"===s||"link"===s)?$h:Ec}(r,a)(s)}function ll(){const s=hn();return s&&s[Ui].sanitizer}const cl=new Ut("ENVIRONMENT_INITIALIZER"),Kh=new Ut("INJECTOR",-1),Zh=new Ut("INJECTOR_DEF_TYPES");class Hd{get(r,a=Qe){if(a===Qe){const c=new Error(`NullInjectorError: No provider for ${v(r)}!`);throw c.name="NullInjectorError",c}return a}}function Vd(s){return{\u0275providers:s}}function c0(...s){return{\u0275providers:Jh(0,s),\u0275fromNgModule:!0}}function Jh(s,...r){const a=[],c=new Set;let m;const w=V=>{a.push(V)};return is(r,V=>{const se=V;Dc(se,w,[],c)&&(m||=[],m.push(se))}),void 0!==m&&Gh(m,w),a}function Gh(s,r){for(let a=0;a{r(w,c)})}}function Dc(s,r,a,c){if(!(s=f(s)))return!1;let m=null,w=Mt(s);const V=!w&&un(s);if(w||V){if(V&&!V.standalone)return!1;m=s}else{const Te=s.ngModule;if(w=Mt(Te),!w)return!1;m=Te}const se=c.has(m);if(V){if(se)return!1;if(c.add(m),V.dependencies){const Te="function"==typeof V.dependencies?V.dependencies():V.dependencies;for(const Xe of Te)Dc(Xe,r,a,c)}}else{if(!w)return!1;{if(null!=w.imports&&!se){let Xe;c.add(m);try{is(w.imports,yt=>{Dc(yt,r,a,c)&&(Xe||=[],Xe.push(yt))})}finally{}void 0!==Xe&&Gh(Xe,r)}if(!se){const Xe=Co(m)||(()=>new m);r({provide:m,useFactory:Xe,deps:Ft},m),r({provide:Zh,useValue:m,multi:!0},m),r({provide:cl,useValue:()=>Je(m),multi:!0},m)}const Te=w.providers;if(null!=Te&&!se){const Xe=s;Ud(Te,yt=>{r(yt,Xe)})}}}return m!==s&&void 0!==s.providers}function Ud(s,r){for(let a of s)T(a)&&(a=a.\u0275providers),Array.isArray(a)?Ud(a,r):r(a)}const d0=M({provide:String,useValue:M});function bc(s){return null!==s&&"object"==typeof s&&d0 in s}function ta(s){return"function"==typeof s}const Yd=new Ut("Set Injector scope."),xc={},u0={};let Wd;function Sc(){return void 0===Wd&&(Wd=new Hd),Wd}class rr{}class Oa extends rr{get destroyed(){return this._destroyed}constructor(r,a,c,m){super(),this.parent=a,this.source=c,this.scopes=m,this.records=new Map,this._ngOnDestroyHooks=new Set,this._onDestroyHooks=[],this._destroyed=!1,jd(r,V=>this.processProvider(V)),this.records.set(Kh,wa(void 0,this)),m.has("environment")&&this.records.set(rr,wa(void 0,this));const w=this.records.get(Yd);null!=w&&"string"==typeof w.value&&this.scopes.add(w.value),this.injectorDefTypes=new Set(this.get(Zh.multi,Ft,de.Self))}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{for(const a of this._ngOnDestroyHooks)a.ngOnDestroy();const r=this._onDestroyHooks;this._onDestroyHooks=[];for(const a of r)a()}finally{this.records.clear(),this._ngOnDestroyHooks.clear(),this.injectorDefTypes.clear()}}onDestroy(r){return this.assertNotDestroyed(),this._onDestroyHooks.push(r),()=>this.removeOnDestroy(r)}runInContext(r){this.assertNotDestroyed();const a=De(this),c=Ee(void 0);try{return r()}finally{De(a),Ee(c)}}get(r,a=Qe,c=de.Default){if(this.assertNotDestroyed(),r.hasOwnProperty(bn))return r[bn](this);c=ve(c);const w=De(this),V=Ee(void 0);try{if(!(c&de.SkipSelf)){let Te=this.records.get(r);if(void 0===Te){const Xe=function m0(s){return"function"==typeof s||"object"==typeof s&&s instanceof Ut}(r)&&Be(r);Te=Xe&&this.injectableDefInScope(Xe)?wa($d(r),xc):null,this.records.set(r,Te)}if(null!=Te)return this.hydrate(r,Te)}return(c&de.Self?Sc():this.parent).get(r,a=c&de.Optional&&a===Qe?null:a)}catch(se){if("NullInjectorError"===se.name){if((se[fe]=se[fe]||[]).unshift(v(r)),w)throw se;return function S(s,r,a,c){const m=s[fe];throw r[$e]&&m.unshift(r[$e]),s.message=function $(s,r,a,c=null){s=s&&"\n"===s.charAt(0)&&"\u0275"==s.charAt(1)?s.slice(2):s;let m=v(r);if(Array.isArray(r))m=r.map(v).join(" -> ");else if("object"==typeof r){let w=[];for(let V in r)if(r.hasOwnProperty(V)){let se=r[V];w.push(V+":"+("string"==typeof se?JSON.stringify(se):v(se)))}m=`{${w.join(", ")}}`}return`${a}${c?"("+c+")":""}[${m}]: ${s.replace(ge,"\n ")}`}("\n"+s.message,m,a,c),s.ngTokenPath=m,s[fe]=null,s}(se,r,"R3InjectorError",this.source)}throw se}finally{Ee(V),De(w)}}resolveInjectorInitializers(){const r=De(this),a=Ee(void 0);try{const m=this.get(cl.multi,Ft,de.Self);for(const w of m)w()}finally{De(r),Ee(a)}}toString(){const r=[],a=this.records;for(const c of a.keys())r.push(v(c));return`R3Injector[${r.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new _(205,!1)}processProvider(r){let a=ta(r=f(r))?r:f(r&&r.provide);const c=function h0(s){return bc(s)?wa(void 0,s.useValue):wa(t1(s),xc)}(r);if(ta(r)||!0!==r.multi)this.records.get(a);else{let m=this.records.get(a);m||(m=wa(void 0,xc,!0),m.factory=()=>it(m.multi),this.records.set(a,m)),a=r,m.multi.push(r)}this.records.set(a,c)}hydrate(r,a){return a.value===xc&&(a.value=u0,a.value=a.factory()),"object"==typeof a.value&&a.value&&function f0(s){return null!==s&&"object"==typeof s&&"function"==typeof s.ngOnDestroy}(a.value)&&this._ngOnDestroyHooks.add(a.value),a.value}injectableDefInScope(r){if(!r.providedIn)return!1;const a=f(r.providedIn);return"string"==typeof a?"any"===a||this.scopes.has(a):this.injectorDefTypes.has(a)}removeOnDestroy(r){const a=this._onDestroyHooks.indexOf(r);-1!==a&&this._onDestroyHooks.splice(a,1)}}function $d(s){const r=Be(s),a=null!==r?r.factory:Co(s);if(null!==a)return a;if(s instanceof Ut)throw new _(204,!1);if(s instanceof Function)return function e1(s){const r=s.length;if(r>0)throw Ar(r,"?"),new _(204,!1);const a=function Ae(s){return s&&(s[je]||s[mt])||null}(s);return null!==a?()=>a.factory(s):()=>new s}(s);throw new _(204,!1)}function t1(s,r,a){let c;if(ta(s)){const m=f(s);return Co(m)||$d(m)}if(bc(s))c=()=>f(s.useValue);else if(function Xh(s){return!(!s||!s.useFactory)}(s))c=()=>s.useFactory(...it(s.deps||[]));else if(function Qh(s){return!(!s||!s.useExisting)}(s))c=()=>Je(f(s.useExisting));else{const m=f(s&&(s.useClass||s.provide));if(!function p0(s){return!!s.deps}(s))return Co(m)||$d(m);c=()=>new m(...it(s.deps))}return c}function wa(s,r,a=!1){return{factory:s,value:r,multi:a?[]:void 0}}function jd(s,r){for(const a of s)Array.isArray(a)?jd(a,r):a&&T(a)?jd(a.\u0275providers,r):r(a)}const Kd=new Ut("AppId",{providedIn:"root",factory:()=>g0}),g0="ng",n1=new Ut("Platform Initializer"),Zd=new Ut("Platform ID",{providedIn:"platform",factory:()=>"unknown"}),_0=new Ut("AnimationModuleType"),v0=new Ut("CSP nonce",{providedIn:"root",factory:()=>xa().body?.querySelector("[ngCspNonce]")?.getAttribute("ngCspNonce")||null});let o1=(s,r,a)=>null;function tu(s,r,a=!1){return o1(s,r,a)}class S0{}class r1{}class l1{resolveComponentFactory(r){throw function O0(s){const r=Error(`No component factory found for ${v(s)}.`);return r.ngComponent=s,r}(r)}}let hl=(()=>{class s{static#e=this.NULL=new l1}return s})();function P0(){return Ia(To(),hn())}function Ia(s,r){return new pl(Uo(s,r))}let pl=(()=>{class s{constructor(a){this.nativeElement=a}static#e=this.__NG_ELEMENT_ID__=P0}return s})();function I0(s){return s instanceof pl?s.nativeElement:s}class c1{}let A0=(()=>{class s{constructor(){this.destroyNode=null}static#e=this.__NG_ELEMENT_ID__=()=>function N0(){const s=hn(),a=Yo(To().index,s);return(rt(a)?a:s)[Un]}()}return s})(),k0=(()=>{class s{static#e=this.\u0275prov=q({token:s,providedIn:"root",factory:()=>null})}return s})();class d1{constructor(r){this.full=r,this.major=r.split(".")[0],this.minor=r.split(".")[1],this.patch=r.split(".").slice(2).join(".")}}const u1=new d1("16.2.11"),su={};function fl(s){if(!B()&&!function wt(){return Ue}())throw new _(-203,!1)}function g1(s,r=null,a=null,c){const m=_1(s,r,a,c);return m.resolveInjectorInitializers(),m}function _1(s,r=null,a=null,c,m=new Set){const w=[a||Ft,c0(s)];return c=c||("object"==typeof s?void 0:v(s)),new Oa(w,r||Sc(),c||null,m)}let Xs=(()=>{class s{static#e=this.THROW_IF_NOT_FOUND=Qe;static#t=this.NULL=new Hd;static create(a,c){if(Array.isArray(a))return g1({name:""},c,a,"");{const m=a.name??"";return g1({name:m},a.parent,a.providers,m)}}static#n=this.\u0275prov=q({token:s,providedIn:"any",factory:()=>Je(Kh)});static#i=this.__NG_ELEMENT_ID__=-1}return s})();function ru(s){return s.ngOriginalError}class Rr{constructor(){this._console=console}handleError(r){const a=this._findOriginalError(r);this._console.error("ERROR",r),a&&this._console.error("ORIGINAL ERROR",a)}_findOriginalError(r){let a=r&&ru(r);for(;a&&ru(a);)a=ru(a);return a||null}}let ml=(()=>{class s{static#e=this.__NG_ELEMENT_ID__=U0;static#t=this.__NG_ENV_ID__=a=>a}return s})();class V0 extends ml{constructor(r){super(),this._lView=r}onDestroy(r){return ua(this._lView,r),()=>function Ya(s,r){if(null===s[vo])return;const a=s[vo].indexOf(r);-1!==a&&s[vo].splice(a,1)}(this._lView,r)}}function U0(){return new V0(hn())}function au(s){return r=>{setTimeout(s,void 0,r)}}const ar=class Y0 extends e.x{constructor(r=!1){super(),this.__isAsync=r}emit(r){super.next(r)}subscribe(r,a,c){let m=r,w=a||(()=>null),V=c;if(r&&"object"==typeof r){const Te=r;m=Te.next?.bind(Te),w=Te.error?.bind(Te),V=Te.complete?.bind(Te)}this.__isAsync&&(w=au(w),m&&(m=au(m)),V&&(V=au(V)));const se=super.subscribe({next:m,error:w,complete:V});return r instanceof n.w0&&r.add(se),se}};function y1(...s){}class Jo{constructor({enableLongStackTrace:r=!1,shouldCoalesceEventChangeDetection:a=!1,shouldCoalesceRunChangeDetection:c=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new ar(!1),this.onMicrotaskEmpty=new ar(!1),this.onStable=new ar(!1),this.onError=new ar(!1),typeof Zone>"u")throw new _(908,!1);Zone.assertZonePatched();const m=this;m._nesting=0,m._outer=m._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(m._inner=m._inner.fork(new Zone.TaskTrackingZoneSpec)),r&&Zone.longStackTraceZoneSpec&&(m._inner=m._inner.fork(Zone.longStackTraceZoneSpec)),m.shouldCoalesceEventChangeDetection=!c&&a,m.shouldCoalesceRunChangeDetection=c,m.lastRequestAnimationFrameId=-1,m.nativeRequestAnimationFrame=function W0(){const s="function"==typeof pt.requestAnimationFrame;let r=pt[s?"requestAnimationFrame":"setTimeout"],a=pt[s?"cancelAnimationFrame":"clearTimeout"];if(typeof Zone<"u"&&r&&a){const c=r[Zone.__symbol__("OriginalDelegate")];c&&(r=c);const m=a[Zone.__symbol__("OriginalDelegate")];m&&(a=m)}return{nativeRequestAnimationFrame:r,nativeCancelAnimationFrame:a}}().nativeRequestAnimationFrame,function j0(s){const r=()=>{!function $0(s){s.isCheckStableRunning||-1!==s.lastRequestAnimationFrameId||(s.lastRequestAnimationFrameId=s.nativeRequestAnimationFrame.call(pt,()=>{s.fakeTopEventTask||(s.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{s.lastRequestAnimationFrameId=-1,lu(s),s.isCheckStableRunning=!0,kc(s),s.isCheckStableRunning=!1},void 0,()=>{},()=>{})),s.fakeTopEventTask.invoke()}),lu(s))}(s)};s._inner=s._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(a,c,m,w,V,se)=>{if(function Z0(s){return!(!Array.isArray(s)||1!==s.length)&&!0===s[0].data?.__ignore_ng_zone__}(se))return a.invokeTask(m,w,V,se);try{return z1(s),a.invokeTask(m,w,V,se)}finally{(s.shouldCoalesceEventChangeDetection&&"eventTask"===w.type||s.shouldCoalesceRunChangeDetection)&&r(),T1(s)}},onInvoke:(a,c,m,w,V,se,Te)=>{try{return z1(s),a.invoke(m,w,V,se,Te)}finally{s.shouldCoalesceRunChangeDetection&&r(),T1(s)}},onHasTask:(a,c,m,w)=>{a.hasTask(m,w),c===m&&("microTask"==w.change?(s._hasPendingMicrotasks=w.microTask,lu(s),kc(s)):"macroTask"==w.change&&(s.hasPendingMacrotasks=w.macroTask))},onHandleError:(a,c,m,w)=>(a.handleError(m,w),s.runOutsideAngular(()=>s.onError.emit(w)),!1)})}(m)}static isInAngularZone(){return typeof Zone<"u"&&!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!Jo.isInAngularZone())throw new _(909,!1)}static assertNotInAngularZone(){if(Jo.isInAngularZone())throw new _(909,!1)}run(r,a,c){return this._inner.run(r,a,c)}runTask(r,a,c,m){const w=this._inner,V=w.scheduleEventTask("NgZoneEvent: "+m,r,C1,y1,y1);try{return w.runTask(V,a,c)}finally{w.cancelTask(V)}}runGuarded(r,a,c){return this._inner.runGuarded(r,a,c)}runOutsideAngular(r){return this._outer.run(r)}}const C1={};function kc(s){if(0==s._nesting&&!s.hasPendingMicrotasks&&!s.isStable)try{s._nesting++,s.onMicrotaskEmpty.emit(null)}finally{if(s._nesting--,!s.hasPendingMicrotasks)try{s.runOutsideAngular(()=>s.onStable.emit(null))}finally{s.isStable=!0}}}function lu(s){s.hasPendingMicrotasks=!!(s._hasPendingMicrotasks||(s.shouldCoalesceEventChangeDetection||s.shouldCoalesceRunChangeDetection)&&-1!==s.lastRequestAnimationFrameId)}function z1(s){s._nesting++,s.isStable&&(s.isStable=!1,s.onUnstable.emit(null))}function T1(s){s._nesting--,kc(s)}class K0{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new ar,this.onMicrotaskEmpty=new ar,this.onStable=new ar,this.onError=new ar}run(r,a,c){return r.apply(a,c)}runGuarded(r,a,c){return r.apply(a,c)}runOutsideAngular(r){return r()}runTask(r,a,c,m){return r.apply(a,c)}}const M1=new Ut("",{providedIn:"root",factory:E1});function E1(){const s=Ke(Jo);let r=!0;const a=new t.y(m=>{r=s.isStable&&!s.hasPendingMacrotasks&&!s.hasPendingMicrotasks,s.runOutsideAngular(()=>{m.next(r),m.complete()})}),c=new t.y(m=>{let w;s.runOutsideAngular(()=>{w=s.onStable.subscribe(()=>{Jo.assertNotInAngularZone(),queueMicrotask(()=>{!r&&!s.hasPendingMacrotasks&&!s.hasPendingMicrotasks&&(r=!0,m.next(!0))})})});const V=s.onUnstable.subscribe(()=>{Jo.assertInAngularZone(),r&&(r=!1,s.runOutsideAngular(()=>{m.next(!1)}))});return()=>{w.unsubscribe(),V.unsubscribe()}});return(0,i.T)(a,c.pipe((0,E.B)()))}function D1(s){return s.ownerDocument.defaultView}function b1(s){return s.ownerDocument}function Lr(s){return s instanceof Function?s():s}let S1=(()=>{class s{constructor(){this.renderDepth=0,this.handler=null}begin(){this.handler?.validateBegin(),this.renderDepth++}end(){this.renderDepth--,0===this.renderDepth&&this.handler?.execute()}ngOnDestroy(){this.handler?.destroy(),this.handler=null}static#e=this.\u0275prov=q({token:s,providedIn:"root",factory:()=>new s})}return s})();function Rc(s){for(;s;){s[Nt]|=64;const r=ol(s);if(yn(s)&&!r)return s;s=r}return null}const X0=new Ut("",{providedIn:"root",factory:()=>!1});let du=null;function n2(s,r){return s[r]??r2()}function o2(s,r){const a=r2();a.producerNode?.length&&(s[r]=du,a.lView=s,du=s2())}const q3={...ws,consumerIsAlwaysLive:!0,consumerMarkedDirty:s=>{Rc(s.lView)},lView:null};function s2(){return Object.create(q3)}function r2(){return du??=s2(),du}const pi={};function a2(s){l2(ai(),hn(),Io()+s,!1)}function l2(s,r,a,c){if(!c)if(3==(3&r[Nt])){const w=s.preOrderCheckHooks;null!==w&&$r(r,w,a)}else{const w=s.preOrderHooks;null!==w&&jr(r,w,0,a)}pr(a)}function _l(s,r=de.Default){const a=hn();return null===a?Je(s,r):ec(To(),a,f(s),r)}function c2(){throw new Error("invalid")}function uu(s,r,a,c,m,w,V,se,Te,Xe,yt){const kt=r.blueprint.slice();return kt[gt]=m,kt[Nt]=140|c,(null!==Xe||s&&2048&s[Nt])&&(kt[Nt]|=2048),da(kt),kt[Kt]=kt[xo]=s,kt[ui]=a,kt[Ui]=V||s&&s[Ui],kt[Un]=se||s&&s[Un],kt[eo]=Te||s&&s[eo]||null,kt[kn]=w,kt[So]=function df(){return cf++}(),kt[ao]=yt,kt[ps]=Xe,kt[Ti]=2==r.type?s[Ti]:kt,kt}function vl(s,r,a,c,m){let w=s.data[r];if(null===w)w=function O1(s,r,a,c,m){const w=Ur(),V=wr(),Te=s.data[r]=function a6(s,r,a,c,m,w){let V=r?r.injectorIndex:-1,se=0;return ir()&&(se|=128),{type:a,index:c,insertBeforeIndex:null,injectorIndex:V,directiveStart:-1,directiveEnd:-1,directiveStylingLast:-1,componentOffset:-1,propertyBindings:null,flags:se,providerIndexes:0,value:m,attrs:w,mergedAttrs:null,localNames:null,initialInputs:void 0,inputs:null,outputs:null,tView:null,next:null,prev:null,projectionNext:null,child:null,parent:r,projection:null,styles:null,stylesWithoutHost:null,residualStyles:void 0,classes:null,classesWithoutHost:null,residualClasses:void 0,classBindings:0,styleBindings:0}}(0,V?w:w&&w.parent,a,r,c,m);return null===s.firstChild&&(s.firstChild=Te),null!==w&&(V?null==w.child&&null!==Te.parent&&(w.child=Te):null===w.next&&(w.next=Te,Te.prev=w)),Te}(s,r,a,c,m),function Oe(){return Zn.lFrame.inI18n}()&&(w.flags|=32);else if(64&w.type){w.type=a,w.value=c,w.attrs=m;const V=function As(){const s=Zn.lFrame,r=s.currentTNode;return s.isParent?r:r.parent}();w.injectorIndex=null===V?-1:V.injectorIndex}return rs(w,!0),w}function Lc(s,r,a,c){if(0===a)return-1;const m=r.length;for(let w=0;wJn&&l2(s,r,Jn,!1),ni(se?2:0,m);const Xe=se?w:null,yt=ms(Xe);try{null!==Xe&&(Xe.dirty=!1),a(c,m)}finally{Pn(Xe,yt)}}finally{se&&null===r[Oo]&&o2(r,Oo),pr(V),ni(se?3:1,m)}}function w1(s,r,a){if(Z(r)){const c=Do(null);try{const w=r.directiveEnd;for(let V=r.directiveStart;Vnull;function p2(s,r,a,c){for(let m in s)if(s.hasOwnProperty(m)){a=null===a?{}:a;const w=s[m];null===c?f2(a,r,m,w):c.hasOwnProperty(m)&&f2(a,r,c[m],w)}return a}function f2(s,r,a,c){s.hasOwnProperty(a)?s[a].push(r,c):s[a]=[r,c]}function Ws(s,r,a,c,m,w,V,se){const Te=Uo(r,a);let yt,Xe=r.inputs;!se&&null!=Xe&&(yt=Xe[c])?(F1(s,a,yt,c,m),dt(r)&&function d6(s,r){const a=Yo(r,s);16&a[Nt]||(a[Nt]|=64)}(a,r.index)):3&r.type&&(c=function c6(s){return"class"===s?"className":"for"===s?"htmlFor":"formaction"===s?"formAction":"innerHtml"===s?"innerHTML":"readonly"===s?"readOnly":"tabindex"===s?"tabIndex":s}(c),m=null!=V?V(m,r.value||"",c):m,w.setProperty(Te,c,m))}function N1(s,r,a,c){if(nr()){const m=null===c?null:{"":-1},w=function g6(s,r){const a=s.directiveRegistry;let c=null,m=null;if(a)for(let w=0;w0;){const a=s[--r];if("number"==typeof a&&a<0)return a}return 0})(V)!=se&&V.push(se),V.push(a,c,w)}}(s,r,c,Lc(s,a,m.hostVars,pi),m)}function vr(s,r,a,c,m,w){const V=Uo(s,r);!function R1(s,r,a,c,m,w,V){if(null==w)s.removeAttribute(r,m,a);else{const se=null==V?O(w):V(w,c||"",m);s.setAttribute(r,m,se,a)}}(r[Un],V,w,s.value,a,c,m)}function T6(s,r,a,c,m,w){const V=w[r];if(null!==V)for(let se=0;se{class s{constructor(){this.all=new Set,this.queue=new Map}create(a,c,m){const w=typeof Zone>"u"?null:Zone.current,V=function an(s,r,a){const c=Object.create(bi);a&&(c.consumerAllowSignalWrites=!0),c.fn=s,c.schedule=r;const m=V=>{c.cleanupFn=V};return c.ref={notify:()=>Yt(c),run:()=>{if(c.dirty=!1,c.hasRun&&!fn(c))return;c.hasRun=!0;const V=ms(c);try{c.cleanupFn(),c.cleanupFn=An,c.fn(m)}finally{Pn(c,V)}},cleanup:()=>c.cleanupFn()},c.ref}(a,Xe=>{this.all.has(Xe)&&this.queue.set(Xe,w)},m);let se;this.all.add(V),V.notify();const Te=()=>{V.cleanup(),se?.(),this.all.delete(V),this.queue.delete(V)};return se=c?.onDestroy(Te),{destroy:Te}}flush(){if(0!==this.queue.size)for(const[a,c]of this.queue)this.queue.delete(a),c?c.run(()=>a.run()):a.run()}get isQueueEmpty(){return 0===this.queue.size}static#e=this.\u0275prov=q({token:s,providedIn:"root",factory:()=>new s})}return s})();function pu(s,r,a){let c=a?s.styles:null,m=a?s.classes:null,w=0;if(null!==r)for(let V=0;V0){x2(s,1);const m=a.components;null!==m&&O2(s,m,1)}}function O2(s,r,a){for(let c=0;c-1&&(gc(r,c),ls(a,c))}this._attachedToViewContainer=!1}Dd(this._lView[We],this._lView)}onDestroy(r){ua(this._lView,r)}markForCheck(){Rc(this._cdRefInjectingView||this._lView)}detach(){this._lView[Nt]&=-129}reattach(){this._lView[Nt]|=128}detectChanges(){fu(this._lView[We],this._lView,this.context)}checkNoChanges(){}attachToViewContainerRef(){if(this._appRef)throw new _(902,!1);this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null,function Ef(s,r){rl(s,r,r[Un],2,null,null)}(this._lView[We],this._lView)}attachToAppRef(r){if(this._attachedToViewContainer)throw new _(902,!1);this._appRef=r}}class P6 extends Bc{constructor(r){super(r),this._view=r}detectChanges(){const r=this._view;fu(r[We],r,r[ui],!1)}checkNoChanges(){}get context(){return null}}class w2 extends hl{constructor(r){super(),this.ngModule=r}resolveComponentFactory(r){const a=un(r);return new Hc(a,this.ngModule)}}function P2(s){const r=[];for(let a in s)s.hasOwnProperty(a)&&r.push({propName:s[a],templateName:a});return r}class A6{constructor(r,a){this.injector=r,this.parentInjector=a}get(r,a,c){c=ve(c);const m=this.injector.get(r,su,c);return m!==su||a===su?m:this.parentInjector.get(r,a,c)}}class Hc extends r1{get inputs(){const r=this.componentDef,a=r.inputTransforms,c=P2(r.inputs);if(null!==a)for(const m of c)a.hasOwnProperty(m.propName)&&(m.transform=a[m.propName]);return c}get outputs(){return P2(this.componentDef.outputs)}constructor(r,a){super(),this.componentDef=r,this.ngModule=a,this.componentType=r.type,this.selector=function wi(s){return s.map(Mo).join(",")}(r.selectors),this.ngContentSelectors=r.ngContentSelectors?r.ngContentSelectors:[],this.isBoundToModule=!!a}create(r,a,c,m){let w=(m=m||this.ngModule)instanceof rr?m:m?.injector;w&&null!==this.componentDef.getStandaloneInjector&&(w=this.componentDef.getStandaloneInjector(w)||w);const V=w?new A6(r,w):r,se=V.get(c1,null);if(null===se)throw new _(407,!1);const kt={rendererFactory:se,sanitizer:V.get(k0,null),effectManager:V.get(E2,null),afterRenderEventManager:V.get(S1,null)},Zt=se.createRenderer(null,this.componentDef),Xt=this.componentDef.selectors[0][0]||"div",dn=c?function n6(s,r,a,c){const w=c.get(X0,!1)||a===ze.ShadowDom,V=s.selectRootElement(r,w);return function i6(s){h2(s)}(V),V}(Zt,c,this.componentDef.encapsulation,V):mc(Zt,Xt,function I6(s){const r=s.toLowerCase();return"svg"===r?Es:"math"===r?"math":null}(Xt)),Yn=this.componentDef.signals?4608:this.componentDef.onPush?576:528;let mn=null;null!==dn&&(mn=tu(dn,V,!0));const li=A1(0,null,null,1,0,null,null,null,null,null,null),vi=uu(null,li,null,Yn,null,null,kt,Zt,V,null,mn);let Gi,Ss;Po(vi);try{const Br=this.componentDef;let kl,Zp=null;Br.findHostDirectiveDefs?(kl=[],Zp=new Map,Br.findHostDirectiveDefs(Br,kl,Zp),kl.push(Br)):kl=[Br];const H7=function k6(s,r){const a=s[We],c=Jn;return s[c]=r,vl(a,c,2,"#host",null)}(vi,dn),V7=function R6(s,r,a,c,m,w,V){const se=m[We];!function L6(s,r,a,c){for(const m of s)r.mergedAttrs=ci(r.mergedAttrs,m.hostAttrs);null!==r.mergedAttrs&&(pu(r,r.mergedAttrs,!0),null!==a&&Ah(c,a,r))}(c,s,r,V);let Te=null;null!==r&&(Te=tu(r,m[eo]));const Xe=w.rendererFactory.createRenderer(r,a);let yt=16;a.signals?yt=4096:a.onPush&&(yt=64);const kt=uu(m,u2(a),null,yt,m[s.index],s,w,Xe,null,null,Te);return se.firstCreatePass&&k1(se,s,c.length-1),hu(m,kt),m[s.index]=kt}(H7,dn,Br,kl,vi,kt,Zt);Ss=Ba(li,Jn),dn&&function B6(s,r,a,c){if(c)qn(s,a,["ng-version",u1.full]);else{const{attrs:m,classes:w}=function Xi(s){const r=[],a=[];let c=1,m=2;for(;c0&&Ih(s,a,w.join(" "))}}(Zt,Br,dn,c),void 0!==a&&function H6(s,r,a){const c=s.projection=[];for(let m=0;m=0;c--){const m=s[c];m.hostVars=r+=m.hostVars,m.hostAttrs=ci(m.hostAttrs,a=ci(a,m.hostAttrs))}}(c)}function mu(s){return s===bt?{}:s===Ft?[]:s}function Y6(s,r){const a=s.viewQuery;s.viewQuery=a?(c,m)=>{r(c,m),a(c,m)}:r}function W6(s,r){const a=s.contentQueries;s.contentQueries=a?(c,m,w)=>{r(c,m,w),a(c,m,w)}:r}function $6(s,r){const a=s.hostBindings;s.hostBindings=a?(c,m)=>{r(c,m),a(c,m)}:r}function R2(s){const r=s.inputConfig,a={};for(const c in r)if(r.hasOwnProperty(c)){const m=r[c];Array.isArray(m)&&m[2]&&(a[c]=m[2])}s.inputTransforms=a}function gu(s){return!!V1(s)&&(Array.isArray(s)||!(s instanceof Map)&&Symbol.iterator in s)}function V1(s){return null!==s&&("function"==typeof s||"object"==typeof s)}function yr(s,r,a){return s[r]=a}function Vc(s,r){return s[r]}function us(s,r,a){return!Object.is(s[r],a)&&(s[r]=a,!0)}function Na(s,r,a,c){const m=us(s,r,a);return us(s,r+1,c)||m}function _u(s,r,a,c,m){const w=Na(s,r,a,c);return us(s,r+2,m)||w}function qs(s,r,a,c,m,w){const V=Na(s,r,a,c);return Na(s,r+2,m,w)||V}function U1(s,r,a,c){const m=hn();return us(m,Se(),r)&&(ai(),vr(ho(),m,s,r,a,c)),U1}function Cl(s,r,a,c){return us(s,Se(),a)?r+O(a)+c:pi}function zl(s,r,a,c,m,w){const se=Na(s,ks(),a,m);return oe(2),se?r+O(a)+c+O(m)+w:pi}function J2(s,r,a,c,m,w,V,se){const Te=hn(),Xe=ai(),yt=s+Jn,kt=Xe.firstCreatePass?function _8(s,r,a,c,m,w,V,se,Te){const Xe=r.consts,yt=vl(r,s,4,V||null,Bi(Xe,se));N1(r,a,yt,Bi(Xe,Te)),ga(r,yt);const kt=yt.tView=A1(2,yt,c,m,w,r.directiveRegistry,r.pipeRegistry,null,r.schemas,Xe,null);return null!==r.queries&&(r.queries.template(r,yt),kt.queries=r.queries.embeddedTView(yt)),yt}(yt,Xe,Te,r,a,c,m,w,V):Xe.data[yt];rs(kt,!1);const Zt=G2(Xe,Te,kt,s);ma()&&vc(Xe,Te,Zt,kt),os(Zt,Te),hu(Te,Te[yt]=v2(Zt,Te,Zt,kt)),vt(kt)&&P1(Xe,Te,kt),null!=V&&I1(Te,kt,se)}let G2=function Q2(s,r,a,c){return Ls(!0),r[Un].createComment("")};function X2(s){return Js(function Vl(){return Zn.lFrame.contextLView}(),Jn+s)}function Z1(s,r,a){const c=hn();return us(c,Se(),r)&&Ws(ai(),ho(),c,s,r,c[Un],a,!1),Z1}function J1(s,r,a,c,m){const V=m?"class":"style";F1(s,a,r.inputs[V],V,c)}function zu(s,r,a,c){const m=hn(),w=ai(),V=Jn+s,se=m[Un],Te=w.firstCreatePass?function z8(s,r,a,c,m,w){const V=r.consts,Te=vl(r,s,2,c,Bi(V,m));return N1(r,a,Te,Bi(V,w)),null!==Te.attrs&&pu(Te,Te.attrs,!1),null!==Te.mergedAttrs&&pu(Te,Te.mergedAttrs,!0),null!==r.queries&&r.queries.elementStart(r,Te),Te}(V,w,m,r,a,c):w.data[V],Xe=q2(w,m,Te,se,r,s);m[V]=Xe;const yt=vt(Te);return rs(Te,!0),Ah(se,Xe,Te),32!=(32&Te.flags)&&ma()&&vc(w,m,Xe,Te),0===function Fl(){return Zn.lFrame.elementDepthCount}()&&os(Xe,m),function pa(){Zn.lFrame.elementDepthCount++}(),yt&&(P1(w,m,Te),w1(w,Te,m)),null!==c&&I1(m,Te),zu}function Tu(){let s=To();wr()?Yr():(s=s.parent,rs(s,!1));const r=s;(function Bl(s){return Zn.skipHydrationRootTNode===s})(r)&&function zo(){Zn.skipHydrationRootTNode=null}(),function $a(){Zn.lFrame.elementDepthCount--}();const a=ai();return a.firstCreatePass&&(ga(a,s),Z(s)&&a.queries.elementEnd(s)),null!=r.classesWithoutHost&&function Wu(s){return 0!=(8&s.flags)}(r)&&J1(a,r,hn(),r.classesWithoutHost,!0),null!=r.stylesWithoutHost&&function sd(s){return 0!=(16&s.flags)}(r)&&J1(a,r,hn(),r.stylesWithoutHost,!1),Tu}function G1(s,r,a,c){return zu(s,r,a,c),Tu(),G1}let q2=(s,r,a,c,m,w)=>(Ls(!0),mc(c,m,function Ka(){return Zn.lFrame.currentNamespace}()));function Mu(s,r,a){const c=hn(),m=ai(),w=s+Jn,V=m.firstCreatePass?function E8(s,r,a,c,m){const w=r.consts,V=Bi(w,c),se=vl(r,s,8,"ng-container",V);return null!==V&&pu(se,V,!0),N1(r,a,se,Bi(w,m)),null!==r.queries&&r.queries.elementStart(r,se),se}(w,m,c,r,a):m.data[w];rs(V,!0);const se=em(m,c,V,s);return c[w]=se,ma()&&vc(m,c,se,V),os(se,c),vt(V)&&(P1(m,c,V),w1(m,V,c)),null!=a&&I1(c,V),Mu}function Eu(){let s=To();const r=ai();return wr()?Yr():(s=s.parent,rs(s,!1)),r.firstCreatePass&&(ga(r,s),Z(s)&&r.queries.elementEnd(s)),Eu}function Q1(s,r,a){return Mu(s,r,a),Eu(),Q1}let em=(s,r,a,c)=>(Ls(!0),Ed(r[Un],""));function tm(){return hn()}function X1(s){return!!s&&"function"==typeof s.then}function nm(s){return!!s&&"function"==typeof s.subscribe}function q1(s,r,a,c){const m=hn(),w=ai(),V=To();return im(w,m,m[Un],V,s,r,c),q1}function ep(s,r){const a=To(),c=hn(),m=ai();return im(m,c,T2(tn(m.data),a,c),a,s,r),ep}function im(s,r,a,c,m,w,V){const se=vt(c),Xe=s.firstCreatePass&&z2(s),yt=r[ui],kt=C2(r);let Zt=!0;if(3&c.type||V){const _n=Uo(c,r),wn=V?V(_n):_n,Yn=kt.length,mn=V?vi=>V(xi(vi[c.index])):c.index;let li=null;if(!V&&se&&(li=function x8(s,r,a,c){const m=s.cleanup;if(null!=m)for(let w=0;wTe?se[Te]:null}"string"==typeof V&&(w+=2)}return null}(s,r,m,c.index)),null!==li)(li.__ngLastListenerFn__||li).__ngNextListenerFn__=w,li.__ngLastListenerFn__=w,Zt=!1;else{w=sm(c,r,yt,w,!1);const vi=a.listen(wn,m,w);kt.push(w,vi),Xe&&Xe.push(m,mn,Yn,Yn+1)}}else w=sm(c,r,yt,w,!1);const Xt=c.outputs;let dn;if(Zt&&null!==Xt&&(dn=Xt[m])){const _n=dn.length;if(_n)for(let wn=0;wn<_n;wn+=2){const Gi=r[dn[wn]][dn[wn+1]].subscribe(w),Ss=kt.length;kt.push(w,Gi),Xe&&Xe.push(m,c.index,Ss,-(Ss+1))}}}function om(s,r,a,c){try{return ni(6,r,a),!1!==a(c)}catch(m){return M2(s,m),!1}finally{ni(7,r,a)}}function sm(s,r,a,c,m){return function w(V){if(V===Function)return c;Rc(s.componentOffset>-1?Yo(s.index,r):r);let Te=om(r,a,c,V),Xe=w.__ngNextListenerFn__;for(;Xe;)Te=om(r,a,Xe,V)&&Te,Xe=Xe.__ngNextListenerFn__;return m&&!1===Te&&V.preventDefault(),Te}}function rm(s=1){return function Ul(s){return(Zn.lFrame.contextLView=function Yl(s,r){for(;s>0;)r=r[xo],s--;return r}(s,Zn.lFrame.contextLView))[ui]}(s)}function S8(s,r){let a=null;const c=function Wi(s){const r=s.attrs;if(null!=r){const a=r.indexOf(5);if(!(1&a))return r[a+1]}return null}(s);for(let m=0;m>17&32767}function ip(s){return 2|s}function ka(s){return(131068&s)>>2}function op(s,r){return-131069&s|r<<2}function sp(s){return 1|s}function gm(s,r,a,c,m){const w=s[a+1],V=null===r;let se=c?ia(w):ka(w),Te=!1;for(;0!==se&&(!1===Te||V);){const yt=s[se+1];N8(s[se],r)&&(Te=!0,s[se+1]=c?sp(yt):ip(yt)),se=c?ia(yt):ka(yt)}Te&&(s[a+1]=c?ip(w):sp(w))}function N8(s,r){return null===s||null==r||(Array.isArray(s)?s[1]:s)===r||!(!Array.isArray(s)||"string"!=typeof r)&&Kn(s,r)>=0}const Go={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function _m(s){return s.substring(Go.key,Go.keyEnd)}function k8(s){return s.substring(Go.value,Go.valueEnd)}function vm(s,r){const a=Go.textEnd;return a===r?-1:(r=Go.keyEnd=function F8(s,r,a){for(;r32;)r++;return r}(s,Go.key=r,a),Sl(s,r,a))}function ym(s,r){const a=Go.textEnd;let c=Go.key=Sl(s,r,a);return a===c?-1:(c=Go.keyEnd=function B8(s,r,a){let c;for(;r=65&&(-33&c)<=90||c>=48&&c<=57);)r++;return r}(s,c,a),c=zm(s,c,a),c=Go.value=Sl(s,c,a),c=Go.valueEnd=function H8(s,r,a){let c=-1,m=-1,w=-1,V=r,se=V;for(;V32&&(se=V),w=m,m=c,c=-33&Te}return se}(s,c,a),zm(s,c,a))}function Cm(s){Go.key=0,Go.keyEnd=0,Go.value=0,Go.valueEnd=0,Go.textEnd=s.length}function Sl(s,r,a){for(;r=0;a=ym(r,a))bm(s,_m(r),k8(r))}function Mm(s){dr(K8,Cr,s,!0)}function Cr(s,r){for(let a=function R8(s){return Cm(s),vm(s,Sl(s,0,Go.textEnd))}(r);a>=0;a=vm(r,a))On(s,_m(r),!0)}function cr(s,r,a,c){const m=hn(),w=ai(),V=oe(2);w.firstUpdatePass&&Dm(w,s,V,c),r!==pi&&us(m,V,r)&&xm(w,w.data[Io()],m,m[Un],s,m[V+1]=function J8(s,r){return null==s||""===s||("string"==typeof r?s+=r:"object"==typeof s&&(s=v(_r(s)))),s}(r,a),c,V)}function dr(s,r,a,c){const m=ai(),w=oe(2);m.firstUpdatePass&&Dm(m,null,w,c);const V=hn();if(a!==pi&&us(V,w,a)){const se=m.data[Io()];if(Om(se,c)&&!Em(m,w)){let Te=c?se.classesWithoutHost:se.stylesWithoutHost;null!==Te&&(a=g(Te,a||"")),J1(m,se,V,a,c)}else!function Z8(s,r,a,c,m,w,V,se){m===pi&&(m=Ft);let Te=0,Xe=0,yt=0=s.expandoStartIndex}function Dm(s,r,a,c){const m=s.data;if(null===m[a+1]){const w=m[Io()],V=Em(s,a);Om(w,c)&&null===r&&!V&&(r=!1),r=function U8(s,r,a,c){const m=tn(s);let w=c?r.residualClasses:r.residualStyles;if(null===m)0===(c?r.classBindings:r.styleBindings)&&(a=$c(a=lp(null,s,r,a,c),r.attrs,c),w=null);else{const V=r.directiveStylingLast;if(-1===V||s[V]!==m)if(a=lp(m,s,r,a,c),null===w){let Te=function Y8(s,r,a){const c=a?r.classBindings:r.styleBindings;if(0!==ka(c))return s[ia(c)]}(s,r,c);void 0!==Te&&Array.isArray(Te)&&(Te=lp(null,s,r,Te[1],c),Te=$c(Te,r.attrs,c),function W8(s,r,a,c){s[ia(a?r.classBindings:r.styleBindings)]=c}(s,r,c,Te))}else w=function $8(s,r,a){let c;const m=r.directiveEnd;for(let w=1+r.directiveStylingLast;w0)&&(Xe=!0)):yt=a,m)if(0!==Te){const Zt=ia(s[se+1]);s[c+1]=bu(Zt,se),0!==Zt&&(s[Zt+1]=op(s[Zt+1],c)),s[se+1]=function w8(s,r){return 131071&s|r<<17}(s[se+1],c)}else s[c+1]=bu(se,0),0!==se&&(s[se+1]=op(s[se+1],c)),se=c;else s[c+1]=bu(Te,0),0===se?se=c:s[Te+1]=op(s[Te+1],c),Te=c;Xe&&(s[c+1]=ip(s[c+1])),gm(s,yt,c,!0),gm(s,yt,c,!1),function A8(s,r,a,c,m){const w=m?s.residualClasses:s.residualStyles;null!=w&&"string"==typeof r&&Kn(w,r)>=0&&(a[c+1]=sp(a[c+1]))}(r,yt,s,c,w),V=bu(se,Te),w?r.classBindings=V:r.styleBindings=V}(m,w,r,a,V,c)}}function lp(s,r,a,c,m){let w=null;const V=a.directiveEnd;let se=a.directiveStylingLast;for(-1===se?se=a.directiveStart:se++;se0;){const Te=s[m],Xe=Array.isArray(Te),yt=Xe?Te[1]:Te,kt=null===yt;let Zt=a[m+1];Zt===pi&&(Zt=kt?Ft:void 0);let Xt=kt?$n(Zt,c):yt===c?Zt:void 0;if(Xe&&!xu(Xt)&&(Xt=$n(Te,c)),xu(Xt)&&(se=Xt,V))return se;const dn=s[m+1];m=V?ia(dn):ka(dn)}if(null!==r){let Te=w?r.residualClasses:r.residualStyles;null!=Te&&(se=$n(Te,c))}return se}function xu(s){return void 0!==s}function Om(s,r){return 0!=(s.flags&(r?8:16))}function wm(s,r=""){const a=hn(),c=ai(),m=s+Jn,w=c.firstCreatePass?vl(c,m,1,r,null):c.data[m],V=Pm(c,a,w,r,s);a[m]=V,ma()&&vc(c,a,V,w),rs(w,!1)}let Pm=(s,r,a,c,m)=>(Ls(!0),function fc(s,r){return s.createText(r)}(r[Un],c));function cp(s){return Su("",s,""),cp}function Su(s,r,a){const c=hn(),m=Cl(c,s,r,a);return m!==pi&&Fr(c,Io(),m),Su}function dp(s,r,a,c,m){const w=hn(),V=zl(w,s,r,a,c,m);return V!==pi&&Fr(w,Io(),V),dp}function Bm(s,r,a){dr(On,Cr,Cl(hn(),s,r,a),!0)}function Hm(s,r,a,c,m){dr(On,Cr,zl(hn(),s,r,a,c,m),!0)}function Vm(s,r,a,c,m,w,V,se,Te){dr(On,Cr,function Ml(s,r,a,c,m,w,V,se,Te,Xe){const kt=qs(s,ks(),a,m,V,Te);return oe(4),kt?r+O(a)+c+O(m)+w+O(V)+se+O(Te)+Xe:pi}(hn(),s,r,a,c,m,w,V,se,Te),!0)}function up(s,r,a){const c=hn();return us(c,Se(),r)&&Ws(ai(),ho(),c,s,r,c[Un],a,!0),up}function hp(s,r,a){const c=hn();if(us(c,Se(),r)){const w=ai(),V=ho();Ws(w,V,c,s,r,T2(tn(w.data),V,c),a,!0)}return hp}const Ra=void 0;var f_=["en",[["a","p"],["AM","PM"],Ra],[["AM","PM"],Ra,Ra],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],Ra,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],Ra,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",Ra,"{1} 'at' {0}",Ra],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},"ltr",function p_(s){const a=Math.floor(Math.abs(s)),c=s.toString().replace(/^[^.]*\.?/,"").length;return 1===a&&0===c?1:5}];let Ol={};function m_(s,r,a){"string"!=typeof r&&(a=r,r=s[wl.LocaleId]),r=r.toLowerCase().replace(/_/g,"-"),Ol[r]=s,a&&(Ol[r][wl.ExtraData]=a)}function pp(s){const r=function g_(s){return s.toLowerCase().replace(/_/g,"-")}(s);let a=Xm(r);if(a)return a;const c=r.split("-")[0];if(a=Xm(c),a)return a;if("en"===c)return f_;throw new _(701,!1)}function Qm(s){return pp(s)[wl.PluralCase]}function Xm(s){return s in Ol||(Ol[s]=pt.ng&&pt.ng.common&&pt.ng.common.locales&&pt.ng.common.locales[s]),Ol[s]}var wl=function(s){return s[s.LocaleId=0]="LocaleId",s[s.DayPeriodsFormat=1]="DayPeriodsFormat",s[s.DayPeriodsStandalone=2]="DayPeriodsStandalone",s[s.DaysFormat=3]="DaysFormat",s[s.DaysStandalone=4]="DaysStandalone",s[s.MonthsFormat=5]="MonthsFormat",s[s.MonthsStandalone=6]="MonthsStandalone",s[s.Eras=7]="Eras",s[s.FirstDayOfWeek=8]="FirstDayOfWeek",s[s.WeekendRange=9]="WeekendRange",s[s.DateFormat=10]="DateFormat",s[s.TimeFormat=11]="TimeFormat",s[s.DateTimeFormat=12]="DateTimeFormat",s[s.NumberSymbols=13]="NumberSymbols",s[s.NumberFormats=14]="NumberFormats",s[s.CurrencyCode=15]="CurrencyCode",s[s.CurrencySymbol=16]="CurrencySymbol",s[s.CurrencyName=17]="CurrencyName",s[s.Currencies=18]="Currencies",s[s.Directionality=19]="Directionality",s[s.PluralCase=20]="PluralCase",s[s.ExtraData=21]="ExtraData",s}(wl||{});const Pl="en-US";let qm=Pl;function gp(s,r,a,c,m){if(s=f(s),Array.isArray(s))for(let w=0;w>20;if(ta(s)||!s.multi){const Xt=new Fs(Xe,m,_l),dn=vp(Te,r,m?yt:yt+Zt,kt);-1===dn?(Jr(ya(se,V),w,Te),_p(w,s,r.length),r.push(Te),se.directiveStart++,se.directiveEnd++,m&&(se.providerIndexes+=1048576),a.push(Xt),V.push(Xt)):(a[dn]=Xt,V[dn]=Xt)}else{const Xt=vp(Te,r,yt+Zt,kt),dn=vp(Te,r,yt,yt+Zt),wn=dn>=0&&a[dn];if(m&&!wn||!m&&!(Xt>=0&&a[Xt])){Jr(ya(se,V),w,Te);const Yn=function fv(s,r,a,c,m){const w=new Fs(s,a,_l);return w.multi=[],w.index=r,w.componentProviders=0,D4(w,m,c&&!a),w}(m?pv:hv,a.length,m,c,Xe);!m&&wn&&(a[dn].providerFactory=Yn),_p(w,s,r.length,0),r.push(Te),se.directiveStart++,se.directiveEnd++,m&&(se.providerIndexes+=1048576),a.push(Yn),V.push(Yn)}else _p(w,s,Xt>-1?Xt:dn,D4(a[m?dn:Xt],Xe,!m&&c));!m&&c&&wn&&a[dn].componentProviders++}}}function _p(s,r,a,c){const m=ta(r),w=function qh(s){return!!s.useClass}(r);if(m||w){const Te=(w?f(r.useClass):r).prototype.ngOnDestroy;if(Te){const Xe=s.destroyHooks||(s.destroyHooks=[]);if(!m&&r.multi){const yt=Xe.indexOf(a);-1===yt?Xe.push(a,[c,Te]):Xe[yt+1].push(c,Te)}else Xe.push(a,Te)}}}function D4(s,r,a){return a&&s.componentProviders++,s.multi.push(r)-1}function vp(s,r,a,c){for(let m=a;m{a.providersResolver=(c,m)=>function uv(s,r,a){const c=ai();if(c.firstCreatePass){const m=$t(s);gp(a,c.data,c.blueprint,m,!0),gp(r,c.data,c.blueprint,m,!1)}}(c,m?m(s):s,r)}}class La{}class x4{}function mv(s,r){return new Cp(s,r??null,[])}class Cp extends La{constructor(r,a,c){super(),this._parent=a,this._bootstrapComponents=[],this.destroyCbs=[],this.componentFactoryResolver=new w2(this);const m=Qt(r);this._bootstrapComponents=Lr(m.bootstrap),this._r3Injector=_1(r,a,[{provide:La,useValue:this},{provide:hl,useValue:this.componentFactoryResolver},...c],v(r),new Set(["environment"])),this._r3Injector.resolveInjectorInitializers(),this.instance=this._r3Injector.get(r)}get injector(){return this._r3Injector}destroy(){const r=this._r3Injector;!r.destroyed&&r.destroy(),this.destroyCbs.forEach(a=>a()),this.destroyCbs=null}onDestroy(r){this.destroyCbs.push(r)}}class zp extends x4{constructor(r){super(),this.moduleType=r}create(r){return new Cp(this.moduleType,r,[])}}class S4 extends La{constructor(r){super(),this.componentFactoryResolver=new w2(this),this.instance=null;const a=new Oa([...r.providers,{provide:La,useValue:this},{provide:hl,useValue:this.componentFactoryResolver}],r.parent||Sc(),r.debugName,new Set(["environment"]));this.injector=a,r.runEnvironmentInitializers&&a.resolveInjectorInitializers()}destroy(){this.injector.destroy()}onDestroy(r){this.injector.onDestroy(r)}}function O4(s,r,a=null){return new S4({providers:s,parent:r,debugName:a,runEnvironmentInitializers:!0}).injector}let _v=(()=>{class s{constructor(a){this._injector=a,this.cachedInjectors=new Map}getOrCreateStandaloneInjector(a){if(!a.standalone)return null;if(!this.cachedInjectors.has(a)){const c=Jh(0,a.type),m=c.length>0?O4([c],this._injector,`Standalone[${a.type.name}]`):null;this.cachedInjectors.set(a,m)}return this.cachedInjectors.get(a)}ngOnDestroy(){try{for(const a of this.cachedInjectors.values())null!==a&&a.destroy()}finally{this.cachedInjectors.clear()}}static#e=this.\u0275prov=q({token:s,providedIn:"environment",factory:()=>new s(Je(rr))})}return s})();function w4(s){s.getStandaloneInjector=r=>r.get(_v).getOrCreateStandaloneInjector(s)}function L4(s,r,a){const c=Zo()+s,m=hn();return m[c]===pi?yr(m,c,a?r.call(a):r()):Vc(m,c)}function F4(s,r,a,c){return U4(hn(),Zo(),s,r,a,c)}function B4(s,r,a,c,m){return Y4(hn(),Zo(),s,r,a,c,m)}function H4(s,r,a,c,m,w){return W4(hn(),Zo(),s,r,a,c,m,w)}function V4(s,r,a,c,m,w,V,se,Te){const Xe=Zo()+s,yt=hn(),kt=qs(yt,Xe,a,c,m,w);return Na(yt,Xe+4,V,se)||kt?yr(yt,Xe+6,Te?r.call(Te,a,c,m,w,V,se):r(a,c,m,w,V,se)):Vc(yt,Xe+6)}function Qc(s,r){const a=s[r];return a===pi?void 0:a}function U4(s,r,a,c,m,w){const V=r+a;return us(s,V,m)?yr(s,V+1,w?c.call(w,m):c(m)):Qc(s,V+1)}function Y4(s,r,a,c,m,w,V){const se=r+a;return Na(s,se,m,w)?yr(s,se+2,V?c.call(V,m,w):c(m,w)):Qc(s,se+2)}function W4(s,r,a,c,m,w,V,se){const Te=r+a;return _u(s,Te,m,w,V)?yr(s,Te+3,se?c.call(se,m,w,V):c(m,w,V)):Qc(s,Te+3)}function K4(s,r){const a=ai();let c;const m=s+Jn;a.firstCreatePass?(c=function Pv(s,r){if(r)for(let a=r.length-1;a>=0;a--){const c=r[a];if(s===c.name)return c}}(r,a.pipeRegistry),a.data[m]=c,c.onDestroy&&(a.destroyHooks??=[]).push(m,c.onDestroy)):c=a.data[m];const w=c.factory||(c.factory=Co(c.type)),se=Ee(_l);try{const Te=va(!1),Xe=w();return va(Te),function C8(s,r,a,c){a>=s.data.length&&(s.data[a]=null,s.blueprint[a]=null),r[a]=c}(a,hn(),m,Xe),Xe}finally{Ee(se)}}function Z4(s,r,a){const c=s+Jn,m=hn(),w=Js(m,c);return Xc(m,c)?U4(m,Zo(),r,w.transform,a,w):w.transform(a)}function J4(s,r,a,c){const m=s+Jn,w=hn(),V=Js(w,m);return Xc(w,m)?Y4(w,Zo(),r,V.transform,a,c,V):V.transform(a,c)}function G4(s,r,a,c,m){const w=s+Jn,V=hn(),se=Js(V,w);return Xc(V,w)?W4(V,Zo(),r,se.transform,a,c,m,se):se.transform(a,c,m)}function Q4(s,r,a,c,m,w){const V=s+Jn,se=hn(),Te=Js(se,V);return Xc(se,V)?function $4(s,r,a,c,m,w,V,se,Te){const Xe=r+a;return qs(s,Xe,m,w,V,se)?yr(s,Xe+4,Te?c.call(Te,m,w,V,se):c(m,w,V,se)):Qc(s,Xe+4)}(se,Zo(),r,Te.transform,a,c,m,w,Te):Te.transform(a,c,m,w)}function Xc(s,r){return s[We].data[r].pure}function Av(){return this._results[Symbol.iterator]()}class Au{static#e=Symbol.iterator;get changes(){return this._changes||(this._changes=new ar)}constructor(r=!1){this._emitDistinctChangesOnly=r,this.dirty=!0,this._results=[],this._changesDetected=!1,this._changes=null,this.length=0,this.first=void 0,this.last=void 0;const a=Au.prototype;a[Symbol.iterator]||(a[Symbol.iterator]=Av)}get(r){return this._results[r]}map(r){return this._results.map(r)}filter(r){return this._results.filter(r)}find(r){return this._results.find(r)}reduce(r,a){return this._results.reduce(r,a)}forEach(r){this._results.forEach(r)}some(r){return this._results.some(r)}toArray(){return this._results.slice()}toString(){return this._results.toString()}reset(r,a){const c=this;c.dirty=!1;const m=function Ji(s){return s.flat(Number.POSITIVE_INFINITY)}(r);(this._changesDetected=!function Vs(s,r,a){if(s.length!==r.length)return!1;for(let c=0;c0&&(a[m-1][ln]=r),c{class s{static#e=this.__NG_ELEMENT_ID__=Fv}return s})();const Rv=qc,Lv=class extends Rv{constructor(r,a,c){super(),this._declarationLView=r,this._declarationTContainer=a,this.elementRef=c}get ssrId(){return this._declarationTContainer.tView?.ssrId||null}createEmbeddedView(r,a){return this.createEmbeddedViewImpl(r,a)}createEmbeddedViewImpl(r,a,c){const m=function Nv(s,r,a,c){const m=r.tView,se=uu(s,m,a,4096&s[Nt]?4096:16,null,r,null,null,null,c?.injector??null,c?.hydrationInfo??null);se[qo]=s[r.index];const Xe=s[ro];return null!==Xe&&(se[ro]=Xe.createEmbeddedView(m)),B1(m,se,a),se}(this._declarationLView,this._declarationTContainer,r,{injector:a,hydrationInfo:c});return new Bc(m)}};function Fv(){return Nu(To(),hn())}function Nu(s,r){return 4&s.type?new Lv(r,s,Ia(s,r)):null}let Ru=(()=>{class s{static#e=this.__NG_ELEMENT_ID__=Wv}return s})();function Wv(){return og(To(),hn())}const $v=Ru,ng=class extends $v{constructor(r,a,c){super(),this._lContainer=r,this._hostTNode=a,this._hostLView=c}get element(){return Ia(this._hostTNode,this._hostLView)}get injector(){return new Xo(this._hostTNode,this._hostLView)}get parentInjector(){const r=Zr(this._hostTNode,this._hostLView);if(Qa(r)){const a=Ir(r,this._hostLView),c=Kr(r);return new Xo(a[We].data[c+8],a)}return new Xo(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(r){const a=ig(this._lContainer);return null!==a&&a[r]||null}get length(){return this._lContainer.length-Ai}createEmbeddedView(r,a,c){let m,w;"number"==typeof c?m=c:null!=c&&(m=c.index,w=c.injector);const se=r.createEmbeddedViewImpl(a||{},w,null);return this.insertImpl(se,m,false),se}createComponent(r,a,c,m,w){const V=r&&!function Hs(s){return"function"==typeof s}(r);let se;if(V)se=a;else{const _n=a||{};se=_n.index,c=_n.injector,m=_n.projectableNodes,w=_n.environmentInjector||_n.ngModuleRef}const Te=V?r:new Hc(un(r)),Xe=c||this.parentInjector;if(!w&&null==Te.ngModule){const wn=(V?Xe:this.parentInjector).get(rr,null);wn&&(w=wn)}un(Te.componentType??{});const Xt=Te.create(Xe,m,null,w);return this.insertImpl(Xt.hostView,se,false),Xt}insert(r,a){return this.insertImpl(r,a,!1)}insertImpl(r,a,c){const m=r._lView;if(function ca(s){return Gt(s[Kt])}(m)){const Te=this.indexOf(r);if(-1!==Te)this.detach(Te);else{const Xe=m[Kt],yt=new ng(Xe,Xe[kn],Xe[Kt]);yt.detach(yt.indexOf(r))}}const V=this._adjustIndex(a),se=this._lContainer;return kv(se,m,V,!c),r.attachToViewContainerRef(),Us(Mp(se),V,r),r}move(r,a){return this.insert(r,a)}indexOf(r){const a=ig(this._lContainer);return null!==a?a.indexOf(r):-1}remove(r){const a=this._adjustIndex(r,-1),c=gc(this._lContainer,a);c&&(ls(Mp(this._lContainer),a),Dd(c[We],c))}detach(r){const a=this._adjustIndex(r,-1),c=gc(this._lContainer,a);return c&&null!=ls(Mp(this._lContainer),a)?new Bc(c):null}_adjustIndex(r,a=0){return r??this.length+a}};function ig(s){return s[8]}function Mp(s){return s[8]||(s[8]=[])}function og(s,r){let a;const c=r[s.index];return Gt(c)?a=c:(a=v2(c,r,null,s),r[s.index]=a,hu(r,a)),sg(a,r,s,c),new ng(a,s,r)}let sg=function rg(s,r,a,c){if(s[ji])return;let m;m=8&a.type?xi(c):function jv(s,r){const a=s[Un],c=a.createComment(""),m=Uo(r,s);return kr(a,_c(a,m),c,function Pf(s,r){return s.nextSibling(r)}(a,m),!1),c}(r,a),s[ji]=m};class Ep{constructor(r){this.queryList=r,this.matches=null}clone(){return new Ep(this.queryList)}setDirty(){this.queryList.setDirty()}}class Dp{constructor(r=[]){this.queries=r}createEmbeddedView(r){const a=r.queries;if(null!==a){const c=null!==r.contentQueries?r.contentQueries[0]:a.length,m=[];for(let w=0;w0)c.push(V[se/2]);else{const Xe=w[se+1],yt=r[-Te];for(let kt=Ai;kt{class s{constructor(){this.initialized=!1,this.done=!1,this.donePromise=new Promise((a,c)=>{this.resolve=a,this.reject=c}),this.appInits=Ke(Ag,{optional:!0})??[]}runInitializers(){if(this.initialized)return;const a=[];for(const m of this.appInits){const w=m();if(X1(w))a.push(w);else if(nm(w)){const V=new Promise((se,Te)=>{w.subscribe({complete:se,error:Te})});a.push(V)}}const c=()=>{this.done=!0,this.resolve()};Promise.all(a).then(()=>{c()}).catch(m=>{this.reject(m)}),0===a.length&&c(),this.initialized=!0}static#e=this.\u0275fac=function(c){return new(c||s)};static#t=this.\u0275prov=q({token:s,factory:s.\u0275fac,providedIn:"root"})}return s})(),Ng=(()=>{class s{log(a){console.log(a)}warn(a){console.warn(a)}static#e=this.\u0275fac=function(c){return new(c||s)};static#t=this.\u0275prov=q({token:s,factory:s.\u0275fac,providedIn:"platform"})}return s})();const Fu=new Ut("LocaleId",{providedIn:"root",factory:()=>Ke(Fu,de.Optional|de.SkipSelf)||function T5(){return typeof $localize<"u"&&$localize.locale||Pl}()}),M5=new Ut("DefaultCurrencyCode",{providedIn:"root",factory:()=>"USD"});let kg=(()=>{class s{constructor(){this.taskId=0,this.pendingTasks=new Set,this.hasPendingTasks=new l.X(!1)}add(){this.hasPendingTasks.next(!0);const a=this.taskId++;return this.pendingTasks.add(a),a}remove(a){this.pendingTasks.delete(a),0===this.pendingTasks.size&&this.hasPendingTasks.next(!1)}ngOnDestroy(){this.pendingTasks.clear(),this.hasPendingTasks.next(!1)}static#e=this.\u0275fac=function(c){return new(c||s)};static#t=this.\u0275prov=q({token:s,factory:s.\u0275fac,providedIn:"root"})}return s})();class D5{constructor(r,a){this.ngModuleFactory=r,this.componentFactories=a}}let b5=(()=>{class s{compileModuleSync(a){return new zp(a)}compileModuleAsync(a){return Promise.resolve(this.compileModuleSync(a))}compileModuleAndAllComponentsSync(a){const c=this.compileModuleSync(a),w=Lr(Qt(a).declarations).reduce((V,se)=>{const Te=un(se);return Te&&V.push(new Hc(Te)),V},[]);return new D5(c,w)}compileModuleAndAllComponentsAsync(a){return Promise.resolve(this.compileModuleAndAllComponentsSync(a))}clearCache(){}clearCacheFor(a){}getModuleId(a){}static#e=this.\u0275fac=function(c){return new(c||s)};static#t=this.\u0275prov=q({token:s,factory:s.\u0275fac,providedIn:"root"})}return s})();const Bg=new Ut(""),Hg=new Ut("");let Lp,Z5=(()=>{class s{constructor(a,c,m){this._ngZone=a,this.registry=c,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,Lp||(function J5(s){Lp=s}(m),m.addToWindow(c)),this._watchAngularEvents(),a.run(()=>{this.taskTrackingZone=typeof Zone>"u"?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{Jo.assertNotInAngularZone(),queueMicrotask(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())queueMicrotask(()=>{for(;0!==this._callbacks.length;){let a=this._callbacks.pop();clearTimeout(a.timeoutId),a.doneCb(this._didWork)}this._didWork=!1});else{let a=this.getPendingTasks();this._callbacks=this._callbacks.filter(c=>!c.updateCb||!c.updateCb(a)||(clearTimeout(c.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(a=>({source:a.source,creationLocation:a.creationLocation,data:a.data})):[]}addCallback(a,c,m){let w=-1;c&&c>0&&(w=setTimeout(()=>{this._callbacks=this._callbacks.filter(V=>V.timeoutId!==w),a(this._didWork,this.getPendingTasks())},c)),this._callbacks.push({doneCb:a,timeoutId:w,updateCb:m})}whenStable(a,c,m){if(m&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/plugins/task-tracking" loaded?');this.addCallback(a,c,m),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}registerApplication(a){this.registry.registerApplication(a,this)}unregisterApplication(a){this.registry.unregisterApplication(a)}findProviders(a,c,m){return[]}static#e=this.\u0275fac=function(c){return new(c||s)(Je(Jo),Je(Vg),Je(Hg))};static#t=this.\u0275prov=q({token:s,factory:s.\u0275fac})}return s})(),Vg=(()=>{class s{constructor(){this._applications=new Map}registerApplication(a,c){this._applications.set(a,c)}unregisterApplication(a){this._applications.delete(a)}unregisterAllApplications(){this._applications.clear()}getTestability(a){return this._applications.get(a)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(a,c=!0){return Lp?.findTestabilityInTree(this,a,c)??null}static#e=this.\u0275fac=function(c){return new(c||s)};static#t=this.\u0275prov=q({token:s,factory:s.\u0275fac,providedIn:"platform"})}return s})(),oa=null;const Ug=new Ut("AllowMultipleToken"),Fp=new Ut("PlatformDestroyListeners"),Bp=new Ut("appBootstrapListener");class X5{constructor(r,a){this.name=r,this.token=a}}function $g(s,r,a=[]){const c=`Platform: ${r}`,m=new Ut(c);return(w=[])=>{let V=Hp();if(!V||V.injector.get(Ug,!1)){const se=[...a,...w,{provide:m,useValue:!0}];s?s(se):function q5(s){if(oa&&!oa.get(Ug,!1))throw new _(400,!1);(function Yg(){!function tr(s){Ks=s}(()=>{throw new _(600,!1)})})(),oa=s;const r=s.get(Kg);(function Wg(s){s.get(n1,null)?.forEach(a=>a())})(s)}(function jg(s=[],r){return Xs.create({name:r,providers:[{provide:Yd,useValue:"platform"},{provide:Fp,useValue:new Set([()=>oa=null])},...s]})}(se,c))}return function t7(s){const r=Hp();if(!r)throw new _(401,!1);return r}()}}function Hp(){return oa?.get(Kg)??null}let Kg=(()=>{class s{constructor(a){this._injector=a,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(a,c){const m=function n7(s="zone.js",r){return"noop"===s?new K0:"zone.js"===s?new Jo(r):s}(c?.ngZone,function Zg(s){return{enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:s?.eventCoalescing??!1,shouldCoalesceRunChangeDetection:s?.runCoalescing??!1}}({eventCoalescing:c?.ngZoneEventCoalescing,runCoalescing:c?.ngZoneRunCoalescing}));return m.run(()=>{const w=function gv(s,r,a){return new Cp(s,r,a)}(a.moduleType,this.injector,function qg(s){return[{provide:Jo,useFactory:s},{provide:cl,multi:!0,useFactory:()=>{const r=Ke(s7,{optional:!0});return()=>r.initialize()}},{provide:Xg,useFactory:o7},{provide:M1,useFactory:E1}]}(()=>m)),V=w.injector.get(Rr,null);return m.runOutsideAngular(()=>{const se=m.onError.subscribe({next:Te=>{V.handleError(Te)}});w.onDestroy(()=>{Hu(this._modules,w),se.unsubscribe()})}),function Jg(s,r,a){try{const c=a();return X1(c)?c.catch(m=>{throw r.runOutsideAngular(()=>s.handleError(m)),m}):c}catch(c){throw r.runOutsideAngular(()=>s.handleError(c)),c}}(V,m,()=>{const se=w.injector.get(Np);return se.runInitializers(),se.donePromise.then(()=>(function e4(s){ie(s,"Expected localeId to be defined"),"string"==typeof s&&(qm=s.toLowerCase().replace(/_/g,"-"))}(w.injector.get(Fu,Pl)||Pl),this._moduleDoBootstrap(w),w))})})}bootstrapModule(a,c=[]){const m=Gg({},c);return function G5(s,r,a){const c=new zp(a);return Promise.resolve(c)}(0,0,a).then(w=>this.bootstrapModuleFactory(w,m))}_moduleDoBootstrap(a){const c=a.injector.get(Nl);if(a._bootstrapComponents.length>0)a._bootstrapComponents.forEach(m=>c.bootstrap(m));else{if(!a.instance.ngDoBootstrap)throw new _(-403,!1);a.instance.ngDoBootstrap(c)}this._modules.push(a)}onDestroy(a){this._destroyListeners.push(a)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new _(404,!1);this._modules.slice().forEach(c=>c.destroy()),this._destroyListeners.forEach(c=>c());const a=this._injector.get(Fp,null);a&&(a.forEach(c=>c()),a.clear()),this._destroyed=!0}get destroyed(){return this._destroyed}static#e=this.\u0275fac=function(c){return new(c||s)(Je(Xs))};static#t=this.\u0275prov=q({token:s,factory:s.\u0275fac,providedIn:"platform"})}return s})();function Gg(s,r){return Array.isArray(r)?r.reduce(Gg,s):{...s,...r}}let Nl=(()=>{class s{constructor(){this._bootstrapListeners=[],this._runningTick=!1,this._destroyed=!1,this._destroyListeners=[],this._views=[],this.internalErrorHandler=Ke(Xg),this.zoneIsStable=Ke(M1),this.componentTypes=[],this.components=[],this.isStable=Ke(kg).hasPendingTasks.pipe((0,u.w)(a=>a?(0,C.of)(!1):this.zoneIsStable),(0,z.x)(),(0,E.B)()),this._injector=Ke(rr)}get destroyed(){return this._destroyed}get injector(){return this._injector}bootstrap(a,c){const m=a instanceof r1;if(!this._injector.get(Np).done)throw!m&&At(a),new _(405,!1);let V;V=m?a:this._injector.get(hl).resolveComponentFactory(a),this.componentTypes.push(V.componentType);const se=function Q5(s){return s.isBoundToModule}(V)?void 0:this._injector.get(La),Xe=V.create(Xs.NULL,[],c||V.selector,se),yt=Xe.location.nativeElement,kt=Xe.injector.get(Bg,null);return kt?.registerApplication(yt),Xe.onDestroy(()=>{this.detachView(Xe.hostView),Hu(this.components,Xe),kt?.unregisterApplication(yt)}),this._loadComponent(Xe),Xe}tick(){if(this._runningTick)throw new _(101,!1);try{this._runningTick=!0;for(let a of this._views)a.detectChanges()}catch(a){this.internalErrorHandler(a)}finally{this._runningTick=!1}}attachView(a){const c=a;this._views.push(c),c.attachToAppRef(this)}detachView(a){const c=a;Hu(this._views,c),c.detachFromAppRef()}_loadComponent(a){this.attachView(a.hostView),this.tick(),this.components.push(a);const c=this._injector.get(Bp,[]);c.push(...this._bootstrapListeners),c.forEach(m=>m(a))}ngOnDestroy(){if(!this._destroyed)try{this._destroyListeners.forEach(a=>a()),this._views.slice().forEach(a=>a.destroy())}finally{this._destroyed=!0,this._views=[],this._bootstrapListeners=[],this._destroyListeners=[]}}onDestroy(a){return this._destroyListeners.push(a),()=>Hu(this._destroyListeners,a)}destroy(){if(this._destroyed)throw new _(406,!1);const a=this._injector;a.destroy&&!a.destroyed&&a.destroy()}get viewCount(){return this._views.length}warnIfDestroyed(){}static#e=this.\u0275fac=function(c){return new(c||s)};static#t=this.\u0275prov=q({token:s,factory:s.\u0275fac,providedIn:"root"})}return s})();function Hu(s,r){const a=s.indexOf(r);a>-1&&s.splice(a,1)}const Xg=new Ut("",{providedIn:"root",factory:()=>Ke(Rr).handleError.bind(void 0)});function o7(){const s=Ke(Jo),r=Ke(Rr);return a=>s.runOutsideAngular(()=>r.handleError(a))}let s7=(()=>{class s{constructor(){this.zone=Ke(Jo),this.applicationRef=Ke(Nl)}initialize(){this._onMicrotaskEmptySubscription||(this._onMicrotaskEmptySubscription=this.zone.onMicrotaskEmpty.subscribe({next:()=>{this.zone.run(()=>{this.applicationRef.tick()})}}))}ngOnDestroy(){this._onMicrotaskEmptySubscription?.unsubscribe()}static#e=this.\u0275fac=function(c){return new(c||s)};static#t=this.\u0275prov=q({token:s,factory:s.\u0275fac,providedIn:"root"})}return s})();function a7(){return!1}function l7(){}let c7=(()=>{class s{static#e=this.__NG_ELEMENT_ID__=d7}return s})();function d7(s){return function u7(s,r,a){if(dt(s)&&!a){const c=Yo(s.index,r);return new Bc(c,c)}return 47&s.type?new Bc(r[Ti],r):null}(To(),hn(),16==(16&s))}class o3{constructor(){}supports(r){return gu(r)}create(r){return new _7(r)}}const g7=(s,r)=>r;class _7{constructor(r){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=r||g7}forEachItem(r){let a;for(a=this._itHead;null!==a;a=a._next)r(a)}forEachOperation(r){let a=this._itHead,c=this._removalsHead,m=0,w=null;for(;a||c;){const V=!c||a&&a.currentIndex{V=this._trackByFn(m,se),null!==a&&Object.is(a.trackById,V)?(c&&(a=this._verifyReinsertion(a,se,V,m)),Object.is(a.item,se)||this._addIdentityChange(a,se)):(a=this._mismatch(a,se,V,m),c=!0),a=a._next,m++}),this.length=m;return this._truncate(a),this.collection=r,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let r;for(r=this._previousItHead=this._itHead;null!==r;r=r._next)r._nextPrevious=r._next;for(r=this._additionsHead;null!==r;r=r._nextAdded)r.previousIndex=r.currentIndex;for(this._additionsHead=this._additionsTail=null,r=this._movesHead;null!==r;r=r._nextMoved)r.previousIndex=r.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(r,a,c,m){let w;return null===r?w=this._itTail:(w=r._prev,this._remove(r)),null!==(r=null===this._unlinkedRecords?null:this._unlinkedRecords.get(c,null))?(Object.is(r.item,a)||this._addIdentityChange(r,a),this._reinsertAfter(r,w,m)):null!==(r=null===this._linkedRecords?null:this._linkedRecords.get(c,m))?(Object.is(r.item,a)||this._addIdentityChange(r,a),this._moveAfter(r,w,m)):r=this._addAfter(new v7(a,c),w,m),r}_verifyReinsertion(r,a,c,m){let w=null===this._unlinkedRecords?null:this._unlinkedRecords.get(c,null);return null!==w?r=this._reinsertAfter(w,r._prev,m):r.currentIndex!=m&&(r.currentIndex=m,this._addToMoves(r,m)),r}_truncate(r){for(;null!==r;){const a=r._next;this._addToRemovals(this._unlink(r)),r=a}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(r,a,c){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(r);const m=r._prevRemoved,w=r._nextRemoved;return null===m?this._removalsHead=w:m._nextRemoved=w,null===w?this._removalsTail=m:w._prevRemoved=m,this._insertAfter(r,a,c),this._addToMoves(r,c),r}_moveAfter(r,a,c){return this._unlink(r),this._insertAfter(r,a,c),this._addToMoves(r,c),r}_addAfter(r,a,c){return this._insertAfter(r,a,c),this._additionsTail=null===this._additionsTail?this._additionsHead=r:this._additionsTail._nextAdded=r,r}_insertAfter(r,a,c){const m=null===a?this._itHead:a._next;return r._next=m,r._prev=a,null===m?this._itTail=r:m._prev=r,null===a?this._itHead=r:a._next=r,null===this._linkedRecords&&(this._linkedRecords=new s3),this._linkedRecords.put(r),r.currentIndex=c,r}_remove(r){return this._addToRemovals(this._unlink(r))}_unlink(r){null!==this._linkedRecords&&this._linkedRecords.remove(r);const a=r._prev,c=r._next;return null===a?this._itHead=c:a._next=c,null===c?this._itTail=a:c._prev=a,r}_addToMoves(r,a){return r.previousIndex===a||(this._movesTail=null===this._movesTail?this._movesHead=r:this._movesTail._nextMoved=r),r}_addToRemovals(r){return null===this._unlinkedRecords&&(this._unlinkedRecords=new s3),this._unlinkedRecords.put(r),r.currentIndex=null,r._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=r,r._prevRemoved=null):(r._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=r),r}_addIdentityChange(r,a){return r.item=a,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=r:this._identityChangesTail._nextIdentityChange=r,r}}class v7{constructor(r,a){this.item=r,this.trackById=a,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class y7{constructor(){this._head=null,this._tail=null}add(r){null===this._head?(this._head=this._tail=r,r._nextDup=null,r._prevDup=null):(this._tail._nextDup=r,r._prevDup=this._tail,r._nextDup=null,this._tail=r)}get(r,a){let c;for(c=this._head;null!==c;c=c._nextDup)if((null===a||a<=c.currentIndex)&&Object.is(c.trackById,r))return c;return null}remove(r){const a=r._prevDup,c=r._nextDup;return null===a?this._head=c:a._nextDup=c,null===c?this._tail=a:c._prevDup=a,null===this._head}}class s3{constructor(){this.map=new Map}put(r){const a=r.trackById;let c=this.map.get(a);c||(c=new y7,this.map.set(a,c)),c.add(r)}get(r,a){const m=this.map.get(r);return m?m.get(r,a):null}remove(r){const a=r.trackById;return this.map.get(a).remove(r)&&this.map.delete(a),r}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function r3(s,r,a){const c=s.previousIndex;if(null===c)return c;let m=0;return a&&c{if(a&&a.key===m)this._maybeAddToChanges(a,c),this._appendAfter=a,a=a._next;else{const w=this._getOrCreateRecordForKey(m,c);a=this._insertBeforeOrAppend(a,w)}}),a){a._prev&&(a._prev._next=null),this._removalsHead=a;for(let c=a;null!==c;c=c._nextRemoved)c===this._mapHead&&(this._mapHead=null),this._records.delete(c.key),c._nextRemoved=c._next,c.previousValue=c.currentValue,c.currentValue=null,c._prev=null,c._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(r,a){if(r){const c=r._prev;return a._next=r,a._prev=c,r._prev=a,c&&(c._next=a),r===this._mapHead&&(this._mapHead=a),this._appendAfter=r,r}return this._appendAfter?(this._appendAfter._next=a,a._prev=this._appendAfter):this._mapHead=a,this._appendAfter=a,null}_getOrCreateRecordForKey(r,a){if(this._records.has(r)){const m=this._records.get(r);this._maybeAddToChanges(m,a);const w=m._prev,V=m._next;return w&&(w._next=V),V&&(V._prev=w),m._next=null,m._prev=null,m}const c=new z7(r);return this._records.set(r,c),c.currentValue=a,this._addToAdditions(c),c}_reset(){if(this.isDirty){let r;for(this._previousMapHead=this._mapHead,r=this._previousMapHead;null!==r;r=r._next)r._nextPrevious=r._next;for(r=this._changesHead;null!==r;r=r._nextChanged)r.previousValue=r.currentValue;for(r=this._additionsHead;null!=r;r=r._nextAdded)r.previousValue=r.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(r,a){Object.is(a,r.currentValue)||(r.previousValue=r.currentValue,r.currentValue=a,this._addToChanges(r))}_addToAdditions(r){null===this._additionsHead?this._additionsHead=this._additionsTail=r:(this._additionsTail._nextAdded=r,this._additionsTail=r)}_addToChanges(r){null===this._changesHead?this._changesHead=this._changesTail=r:(this._changesTail._nextChanged=r,this._changesTail=r)}_forEach(r,a){r instanceof Map?r.forEach(a):Object.keys(r).forEach(c=>a(r[c],c))}}class z7{constructor(r){this.key=r,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}function l3(){return new $p([new o3])}let $p=(()=>{class s{static#e=this.\u0275prov=q({token:s,providedIn:"root",factory:l3});constructor(a){this.factories=a}static create(a,c){if(null!=c){const m=c.factories.slice();a=a.concat(m)}return new s(a)}static extend(a){return{provide:s,useFactory:c=>s.create(a,c||l3()),deps:[[s,new sc,new gr]]}}find(a){const c=this.factories.find(m=>m.supports(a));if(null!=c)return c;throw new _(901,!1)}}return s})();function c3(){return new jp([new a3])}let jp=(()=>{class s{static#e=this.\u0275prov=q({token:s,providedIn:"root",factory:c3});constructor(a){this.factories=a}static create(a,c){if(c){const m=c.factories.slice();a=a.concat(m)}return new s(a)}static extend(a){return{provide:s,useFactory:c=>s.create(a,c||c3()),deps:[[s,new sc,new gr]]}}find(a){const c=this.factories.find(m=>m.supports(a));if(c)return c;throw new _(901,!1)}}return s})();const E7=$g(null,"core",[]);let D7=(()=>{class s{constructor(a){}static#e=this.\u0275fac=function(c){return new(c||s)(Je(Nl))};static#t=this.\u0275mod=Ii({type:s});static#n=this.\u0275inj=ee({})}return s})();function R7(s){return"boolean"==typeof s?s:null!=s&&"false"!==s}function F7(s,r){const a=un(s),c=r.elementInjector||Sc();return new Hc(a).create(c,r.projectableNodes,r.hostElement,r.environmentInjector)}function B7(s){const r=un(s);if(!r)return null;const a=new Hc(r);return{get selector(){return a.selector},get type(){return a.componentType},get inputs(){return a.inputs},get outputs(){return a.outputs},get ngContentSelectors(){return a.ngContentSelectors},get isStandalone(){return r.standalone},get isSignal(){return r.signals}}}},71993:(nt,I,o)=>{"use strict";o.d(I,{sL:()=>i});var e=o(65879),n=o(65592),t=o(59773);function i(we){we||((0,e.gHi)(i),we=(0,e.f3M)(e.ktI));const de=new n.y(U=>we.onDestroy(U.next.bind(U)));return U=>U.pipe((0,t.R)(de))}},19288:(nt,I,o)=>{"use strict";o.r(I),o.d(I,{NgElement:()=>_,VERSION:()=>O,createCustomElement:()=>P});var e=o(65879),n=o(97328),t=o(63019),i=o(94664),l=o(37398);const C={schedule(A,k){const F=setTimeout(A,k);return()=>clearTimeout(F)},scheduleBeforeRender(A){if(typeof window>"u")return C.schedule(A,0);if(typeof window.requestAnimationFrame>"u")return C.schedule(A,16);const k=window.requestAnimationFrame(A);return()=>window.cancelAnimationFrame(k)}};let h;function y(A,k,F){let W=F;return function u(A){return!!A&&A.nodeType===Node.ELEMENT_NODE}(A)&&k.some((K,_e)=>!("*"===K||!function v(A,k){if(!h){const F=Element.prototype;h=F.matches||F.matchesSelector||F.mozMatchesSelector||F.msMatchesSelector||F.oMatchesSelector||F.webkitMatchesSelector}return A.nodeType===Node.ELEMENT_NODE&&h.call(A,k)}(A,K)||(W=_e,0))),W}class x{constructor(k,F){this.componentFactory=F.get(e._Vd).resolveComponentFactory(k)}create(k){return new D(this.componentFactory,k)}}class D{constructor(k,F){this.componentFactory=k,this.injector=F,this.eventEmitters=new n.t(1),this.events=this.eventEmitters.pipe((0,i.w)(W=>(0,t.T)(...W))),this.componentRef=null,this.viewChangeDetectorRef=null,this.inputChanges=null,this.hasInputChanges=!1,this.implementsOnChanges=!1,this.scheduledChangeDetectionFn=null,this.scheduledDestroyFn=null,this.initialInputValues=new Map,this.unchangedInputs=new Set(this.componentFactory.inputs.map(({propName:W})=>W)),this.ngZone=this.injector.get(e.R0b),this.elementZone=typeof Zone>"u"?null:this.ngZone.run(()=>Zone.current)}connect(k){this.runInZone(()=>{if(null!==this.scheduledDestroyFn)return this.scheduledDestroyFn(),void(this.scheduledDestroyFn=null);null===this.componentRef&&this.initializeComponent(k)})}disconnect(){this.runInZone(()=>{null===this.componentRef||null!==this.scheduledDestroyFn||(this.scheduledDestroyFn=C.schedule(()=>{null!==this.componentRef&&(this.componentRef.destroy(),this.componentRef=null,this.viewChangeDetectorRef=null)},10))})}getInputValue(k){return this.runInZone(()=>null===this.componentRef?this.initialInputValues.get(k):this.componentRef.instance[k])}setInputValue(k,F,W){this.runInZone(()=>{W&&(F=W.call(this.componentRef?.instance,F)),null!==this.componentRef?function g(A,k){return A===k||A!=A&&k!=k}(F,this.getInputValue(k))&&(void 0!==F||!this.unchangedInputs.has(k))||(this.recordInputChange(k,F),this.unchangedInputs.delete(k),this.hasInputChanges=!0,this.componentRef.instance[k]=F,this.scheduleDetectChanges()):this.initialInputValues.set(k,F)})}initializeComponent(k){const F=e.zs3.create({providers:[],parent:this.injector}),W=function f(A,k){const F=A.childNodes,W=k.map(()=>[]);let K=-1;k.some((_e,Y)=>"*"===_e&&(K=Y,!0));for(let _e=0,Y=F.length;_e{this.initialInputValues.has(k)&&this.setInputValue(k,this.initialInputValues.get(k),F)}),this.initialInputValues.clear()}initializeOutputs(k){const F=this.componentFactory.outputs.map(({propName:W,templateName:K})=>k.instance[W].pipe((0,l.U)(Y=>({name:K,value:Y}))));this.eventEmitters.next(F)}callNgOnChanges(k){if(!this.implementsOnChanges||null===this.inputChanges)return;const F=this.inputChanges;this.inputChanges=null,k.instance.ngOnChanges(F)}markViewForCheck(k){this.hasInputChanges&&(this.hasInputChanges=!1,k.markForCheck())}scheduleDetectChanges(){this.scheduledChangeDetectionFn||(this.scheduledChangeDetectionFn=C.scheduleBeforeRender(()=>{this.scheduledChangeDetectionFn=null,this.detectChanges()}))}recordInputChange(k,F){if(!this.implementsOnChanges)return;null===this.inputChanges&&(this.inputChanges={});const W=this.inputChanges[k];if(W)return void(W.currentValue=F);const K=this.unchangedInputs.has(k),_e=K?void 0:this.getInputValue(k);this.inputChanges[k]=new e.WD2(_e,F,K)}detectChanges(){null!==this.componentRef&&(this.callNgOnChanges(this.componentRef),this.markViewForCheck(this.viewChangeDetectorRef),this.componentRef.changeDetectorRef.detectChanges())}runInZone(k){return this.elementZone&&Zone.current!==this.elementZone?this.ngZone.run(k):k()}}class _ extends HTMLElement{constructor(){super(...arguments),this.ngElementEventsSubscription=null}}function P(A,k){const F=function p(A,k){return k.get(e._Vd).resolveComponentFactory(A).inputs}(A,k.injector),W=k.strategyFactory||new x(A,k.injector),K=function d(A){const k={};return A.forEach(({propName:F,templateName:W,transform:K})=>{k[function E(A){return A.replace(/[A-Z]/g,k=>`-${k.toLowerCase()}`)}(W)]=[F,K]}),k}(F);class _e extends _{static#e=this.observedAttributes=Object.keys(K);get ngElementStrategy(){if(!this._ngElementStrategy){const G=this._ngElementStrategy=W.create(this.injector||k.injector);F.forEach(({propName:H,transform:j})=>{if(!this.hasOwnProperty(H))return;const te=this[H];delete this[H],G.setInputValue(H,te,j)})}return this._ngElementStrategy}constructor(G){super(),this.injector=G}attributeChangedCallback(G,H,j,te){const[ne,pe]=K[G];this.ngElementStrategy.setInputValue(ne,j,pe)}connectedCallback(){let G=!1;this.ngElementStrategy.events&&(this.subscribeToEvents(),G=!0),this.ngElementStrategy.connect(this),G||this.subscribeToEvents()}disconnectedCallback(){this._ngElementStrategy&&this._ngElementStrategy.disconnect(),this.ngElementEventsSubscription&&(this.ngElementEventsSubscription.unsubscribe(),this.ngElementEventsSubscription=null)}subscribeToEvents(){this.ngElementEventsSubscription=this.ngElementStrategy.events.subscribe(G=>{const H=new CustomEvent(G.name,{detail:G.value});this.dispatchEvent(H)})}}return F.forEach(({propName:Y,transform:G})=>{Object.defineProperty(_e.prototype,Y,{get(){return this.ngElementStrategy.getInputValue(Y)},set(H){this.ngElementStrategy.setInputValue(Y,H,G)},configurable:!0,enumerable:!0})}),_e}const O=new e.GfV("16.2.11")},60095:(nt,I,o)=>{"use strict";o.d(I,{TO:()=>Pe,ve:()=>D,Wl:()=>y,Fj:()=>_,NI:()=>Ri,oH:()=>St,u:()=>ui,cw:()=>Je,sg:()=>We,u5:()=>fs,nD:()=>Gt,JU:()=>p,a5:()=>ot,JJ:()=>U,JL:()=>B,F:()=>po,On:()=>ki,c5:()=>dt,UX:()=>$o,Q7:()=>ji,kI:()=>W,_Y:()=>oi});var e=o(65879),n=o(96814),t=o(7715),i=o(65592),l=o(17453),C=o(54829),E=o(79940),u=o(8251),z=o(97400),M=o(92714),v=o(37398);let g=(()=>{class at{constructor(Fe,Tt){this._renderer=Fe,this._elementRef=Tt,this.onChange=jt=>{},this.onTouched=()=>{}}setProperty(Fe,Tt){this._renderer.setProperty(this._elementRef.nativeElement,Fe,Tt)}registerOnTouched(Fe){this.onTouched=Fe}registerOnChange(Fe){this.onChange=Fe}setDisabledState(Fe){this.setProperty("disabled",Fe)}static#e=this.\u0275fac=function(Tt){return new(Tt||at)(e.Y36(e.Qsj),e.Y36(e.SBq))};static#t=this.\u0275dir=e.lG2({type:at})}return at})(),d=(()=>{class at extends g{static#e=this.\u0275fac=function(){let Fe;return function(jt){return(Fe||(Fe=e.n5z(at)))(jt||at)}}();static#t=this.\u0275dir=e.lG2({type:at,features:[e.qOj]})}return at})();const p=new e.OlP("NgValueAccessor"),f={provide:p,useExisting:(0,e.Gpc)(()=>y),multi:!0};let y=(()=>{class at extends d{writeValue(Fe){this.setProperty("checked",Fe)}static#e=this.\u0275fac=function(){let Fe;return function(jt){return(Fe||(Fe=e.n5z(at)))(jt||at)}}();static#t=this.\u0275dir=e.lG2({type:at,selectors:[["input","type","checkbox","formControlName",""],["input","type","checkbox","formControl",""],["input","type","checkbox","ngModel",""]],hostBindings:function(Tt,jt){1&Tt&&e.NdJ("change",function(jn){return jt.onChange(jn.target.checked)})("blur",function(){return jt.onTouched()})},features:[e._Bn([f]),e.qOj]})}return at})();const T={provide:p,useExisting:(0,e.Gpc)(()=>_),multi:!0},D=new e.OlP("CompositionEventMode");let _=(()=>{class at extends g{constructor(Fe,Tt,jt){super(Fe,Tt),this._compositionMode=jt,this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function x(){const at=(0,n.q)()?(0,n.q)().getUserAgent():"";return/android (\d+)/.test(at.toLowerCase())}())}writeValue(Fe){this.setProperty("value",Fe??"")}_handleInput(Fe){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(Fe)}_compositionStart(){this._composing=!0}_compositionEnd(Fe){this._composing=!1,this._compositionMode&&this.onChange(Fe)}static#e=this.\u0275fac=function(Tt){return new(Tt||at)(e.Y36(e.Qsj),e.Y36(e.SBq),e.Y36(D,8))};static#t=this.\u0275dir=e.lG2({type:at,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(Tt,jt){1&Tt&&e.NdJ("input",function(jn){return jt._handleInput(jn.target.value)})("blur",function(){return jt.onTouched()})("compositionstart",function(){return jt._compositionStart()})("compositionend",function(jn){return jt._compositionEnd(jn.target.value)})},features:[e._Bn([T]),e.qOj]})}return at})();function P(at){return null==at||("string"==typeof at||Array.isArray(at))&&0===at.length}function O(at){return null!=at&&"number"==typeof at.length}const A=new e.OlP("NgValidators"),k=new e.OlP("NgAsyncValidators"),F=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;class W{static min(ht){return function K(at){return ht=>{if(P(ht.value)||P(at))return null;const Fe=parseFloat(ht.value);return!isNaN(Fe)&&Fe{if(P(ht.value)||P(at))return null;const Fe=parseFloat(ht.value);return!isNaN(Fe)&&Fe>at?{max:{max:at,actual:ht.value}}:null}}(ht)}static required(ht){return Y(ht)}static requiredTrue(ht){return function G(at){return!0===at.value?null:{required:!0}}(ht)}static email(ht){return function H(at){return P(at.value)||F.test(at.value)?null:{email:!0}}(ht)}static minLength(ht){return function j(at){return ht=>P(ht.value)||!O(ht.value)?null:ht.value.lengthO(ht.value)&&ht.value.length>at?{maxlength:{requiredLength:at,actualLength:ht.value.length}}:null}function ne(at){if(!at)return pe;let ht,Fe;return"string"==typeof at?(Fe="","^"!==at.charAt(0)&&(Fe+="^"),Fe+=at,"$"!==at.charAt(at.length-1)&&(Fe+="$"),ht=new RegExp(Fe)):(Fe=at.toString(),ht=at),Tt=>{if(P(Tt.value))return null;const jt=Tt.value;return ht.test(jt)?null:{pattern:{requiredPattern:Fe,actualValue:jt}}}}function pe(at){return null}function re(at){return null!=at}function be(at){return(0,e.QGY)(at)?(0,t.D)(at):at}function le(at){let ht={};return at.forEach(Fe=>{ht=null!=Fe?{...ht,...Fe}:ht}),0===Object.keys(ht).length?null:ht}function ce(at,ht){return ht.map(Fe=>Fe(at))}function ie(at){return at.map(ht=>function Q(at){return!at.validate}(ht)?ht:Fe=>ht.validate(Fe))}function ae(at){if(!at)return null;const ht=at.filter(re);return 0==ht.length?null:function(Fe){return le(ce(Fe,ht))}}function xe(at){return null!=at?ae(ie(at)):null}function Me(at){if(!at)return null;const ht=at.filter(re);return 0==ht.length?null:function(Fe){return function h(...at){const ht=(0,E.jO)(at),{args:Fe,keys:Tt}=(0,l.D)(at),jt=new i.y(Nn=>{const{length:jn}=Fe;if(!jn)return void Nn.complete();const co=new Array(jn);let jo=jn,Fo=jn;for(let ys=0;ys{Co||(Co=!0,Fo--),co[ys]=Eo},()=>jo--,void 0,()=>{(!jo||!Co)&&(Fo||Nn.next(Tt?(0,M.n)(Tt,co):co),Nn.complete())}))}});return ht?jt.pipe((0,z.Z)(ht)):jt}(ce(Fe,ht).map(be)).pipe((0,v.U)(le))}}function Ye(at){return null!=at?Me(ie(at)):null}function q(at,ht){return null===at?[ht]:Array.isArray(at)?[...at,ht]:[at,ht]}function ye(at){return at._rawValidators}function ee(at){return at._rawAsyncValidators}function Be(at){return at?Array.isArray(at)?at:[at]:[]}function Re(at,ht){return Array.isArray(at)?at.includes(ht):at===ht}function ct(at,ht){const Fe=Be(ht);return Be(at).forEach(jt=>{Re(Fe,jt)||Fe.push(jt)}),Fe}function Ae(at,ht){return Be(ht).filter(Fe=>!Re(at,Fe))}class Mt{constructor(){this._rawValidators=[],this._rawAsyncValidators=[],this._onDestroyCallbacks=[]}get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}_setValidators(ht){this._rawValidators=ht||[],this._composedValidatorFn=xe(this._rawValidators)}_setAsyncValidators(ht){this._rawAsyncValidators=ht||[],this._composedAsyncValidatorFn=Ye(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_registerOnDestroy(ht){this._onDestroyCallbacks.push(ht)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(ht=>ht()),this._onDestroyCallbacks=[]}reset(ht=void 0){this.control&&this.control.reset(ht)}hasError(ht,Fe){return!!this.control&&this.control.hasError(ht,Fe)}getError(ht,Fe){return this.control?this.control.getError(ht,Fe):null}}class je extends Mt{get formDirective(){return null}get path(){return null}}class ot extends Mt{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null}}class mt{constructor(ht){this._cd=ht}get isTouched(){return!!this._cd?.control?.touched}get isUntouched(){return!!this._cd?.control?.untouched}get isPristine(){return!!this._cd?.control?.pristine}get isDirty(){return!!this._cd?.control?.dirty}get isValid(){return!!this._cd?.control?.valid}get isInvalid(){return!!this._cd?.control?.invalid}get isPending(){return!!this._cd?.control?.pending}get isSubmitted(){return!!this._cd?.submitted}}let U=(()=>{class at extends mt{constructor(Fe){super(Fe)}static#e=this.\u0275fac=function(Tt){return new(Tt||at)(e.Y36(ot,2))};static#t=this.\u0275dir=e.lG2({type:at,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(Tt,jt){2&Tt&&e.ekj("ng-untouched",jt.isUntouched)("ng-touched",jt.isTouched)("ng-pristine",jt.isPristine)("ng-dirty",jt.isDirty)("ng-valid",jt.isValid)("ng-invalid",jt.isInvalid)("ng-pending",jt.isPending)},features:[e.qOj]})}return at})(),B=(()=>{class at extends mt{constructor(Fe){super(Fe)}static#e=this.\u0275fac=function(Tt){return new(Tt||at)(e.Y36(je,10))};static#t=this.\u0275dir=e.lG2({type:at,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(Tt,jt){2&Tt&&e.ekj("ng-untouched",jt.isUntouched)("ng-touched",jt.isTouched)("ng-pristine",jt.isPristine)("ng-dirty",jt.isDirty)("ng-valid",jt.isValid)("ng-invalid",jt.isInvalid)("ng-pending",jt.isPending)("ng-submitted",jt.isSubmitted)},features:[e.qOj]})}return at})();const xt="VALID",Qe="INVALID",ke="PENDING",fe="DISABLED";function qe(at){return(Ue(at)?at.validators:at)||null}function Ze(at,ht){return(Ue(ht)?ht.asyncValidators:at)||null}function Ue(at){return null!=at&&!Array.isArray(at)&&"object"==typeof at}class Pe{constructor(ht,Fe){this._pendingDirty=!1,this._hasOwnPendingAsyncValidator=!1,this._pendingTouched=!1,this._onCollectionChange=()=>{},this._parent=null,this.pristine=!0,this.touched=!1,this._onDisabledChange=[],this._assignValidators(ht),this._assignAsyncValidators(Fe)}get validator(){return this._composedValidatorFn}set validator(ht){this._rawValidators=this._composedValidatorFn=ht}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(ht){this._rawAsyncValidators=this._composedAsyncValidatorFn=ht}get parent(){return this._parent}get valid(){return this.status===xt}get invalid(){return this.status===Qe}get pending(){return this.status==ke}get disabled(){return this.status===fe}get enabled(){return this.status!==fe}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(ht){this._assignValidators(ht)}setAsyncValidators(ht){this._assignAsyncValidators(ht)}addValidators(ht){this.setValidators(ct(ht,this._rawValidators))}addAsyncValidators(ht){this.setAsyncValidators(ct(ht,this._rawAsyncValidators))}removeValidators(ht){this.setValidators(Ae(ht,this._rawValidators))}removeAsyncValidators(ht){this.setAsyncValidators(Ae(ht,this._rawAsyncValidators))}hasValidator(ht){return Re(this._rawValidators,ht)}hasAsyncValidator(ht){return Re(this._rawAsyncValidators,ht)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(ht={}){this.touched=!0,this._parent&&!ht.onlySelf&&this._parent.markAsTouched(ht)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(ht=>ht.markAllAsTouched())}markAsUntouched(ht={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(Fe=>{Fe.markAsUntouched({onlySelf:!0})}),this._parent&&!ht.onlySelf&&this._parent._updateTouched(ht)}markAsDirty(ht={}){this.pristine=!1,this._parent&&!ht.onlySelf&&this._parent.markAsDirty(ht)}markAsPristine(ht={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(Fe=>{Fe.markAsPristine({onlySelf:!0})}),this._parent&&!ht.onlySelf&&this._parent._updatePristine(ht)}markAsPending(ht={}){this.status=ke,!1!==ht.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!ht.onlySelf&&this._parent.markAsPending(ht)}disable(ht={}){const Fe=this._parentMarkedDirty(ht.onlySelf);this.status=fe,this.errors=null,this._forEachChild(Tt=>{Tt.disable({...ht,onlySelf:!0})}),this._updateValue(),!1!==ht.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors({...ht,skipPristineCheck:Fe}),this._onDisabledChange.forEach(Tt=>Tt(!0))}enable(ht={}){const Fe=this._parentMarkedDirty(ht.onlySelf);this.status=xt,this._forEachChild(Tt=>{Tt.enable({...ht,onlySelf:!0})}),this.updateValueAndValidity({onlySelf:!0,emitEvent:ht.emitEvent}),this._updateAncestors({...ht,skipPristineCheck:Fe}),this._onDisabledChange.forEach(Tt=>Tt(!1))}_updateAncestors(ht){this._parent&&!ht.onlySelf&&(this._parent.updateValueAndValidity(ht),ht.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(ht){this._parent=ht}getRawValue(){return this.value}updateValueAndValidity(ht={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===xt||this.status===ke)&&this._runAsyncValidator(ht.emitEvent)),!1!==ht.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!ht.onlySelf&&this._parent.updateValueAndValidity(ht)}_updateTreeValidity(ht={emitEvent:!0}){this._forEachChild(Fe=>Fe._updateTreeValidity(ht)),this.updateValueAndValidity({onlySelf:!0,emitEvent:ht.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?fe:xt}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(ht){if(this.asyncValidator){this.status=ke,this._hasOwnPendingAsyncValidator=!0;const Fe=be(this.asyncValidator(this));this._asyncValidationSubscription=Fe.subscribe(Tt=>{this._hasOwnPendingAsyncValidator=!1,this.setErrors(Tt,{emitEvent:ht})})}}_cancelExistingSubscription(){this._asyncValidationSubscription&&(this._asyncValidationSubscription.unsubscribe(),this._hasOwnPendingAsyncValidator=!1)}setErrors(ht,Fe={}){this.errors=ht,this._updateControlsErrors(!1!==Fe.emitEvent)}get(ht){let Fe=ht;return null==Fe||(Array.isArray(Fe)||(Fe=Fe.split(".")),0===Fe.length)?null:Fe.reduce((Tt,jt)=>Tt&&Tt._find(jt),this)}getError(ht,Fe){const Tt=Fe?this.get(Fe):this;return Tt&&Tt.errors?Tt.errors[ht]:null}hasError(ht,Fe){return!!this.getError(ht,Fe)}get root(){let ht=this;for(;ht._parent;)ht=ht._parent;return ht}_updateControlsErrors(ht){this.status=this._calculateStatus(),ht&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(ht)}_initObservables(){this.valueChanges=new e.vpe,this.statusChanges=new e.vpe}_calculateStatus(){return this._allControlsDisabled()?fe:this.errors?Qe:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(ke)?ke:this._anyControlsHaveStatus(Qe)?Qe:xt}_anyControlsHaveStatus(ht){return this._anyControls(Fe=>Fe.status===ht)}_anyControlsDirty(){return this._anyControls(ht=>ht.dirty)}_anyControlsTouched(){return this._anyControls(ht=>ht.touched)}_updatePristine(ht={}){this.pristine=!this._anyControlsDirty(),this._parent&&!ht.onlySelf&&this._parent._updatePristine(ht)}_updateTouched(ht={}){this.touched=this._anyControlsTouched(),this._parent&&!ht.onlySelf&&this._parent._updateTouched(ht)}_registerOnCollectionChange(ht){this._onCollectionChange=ht}_setUpdateStrategy(ht){Ue(ht)&&null!=ht.updateOn&&(this._updateOn=ht.updateOn)}_parentMarkedDirty(ht){return!ht&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}_find(ht){return null}_assignValidators(ht){this._rawValidators=Array.isArray(ht)?ht.slice():ht,this._composedValidatorFn=function ge(at){return Array.isArray(at)?xe(at):at||null}(this._rawValidators)}_assignAsyncValidators(ht){this._rawAsyncValidators=Array.isArray(ht)?ht.slice():ht,this._composedAsyncValidatorFn=function $e(at){return Array.isArray(at)?Ye(at):at||null}(this._rawAsyncValidators)}}class Je extends Pe{constructor(ht,Fe,Tt){super(qe(Fe),Ze(Tt,Fe)),this.controls=ht,this._initObservables(),this._setUpdateStrategy(Fe),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}registerControl(ht,Fe){return this.controls[ht]?this.controls[ht]:(this.controls[ht]=Fe,Fe.setParent(this),Fe._registerOnCollectionChange(this._onCollectionChange),Fe)}addControl(ht,Fe,Tt={}){this.registerControl(ht,Fe),this.updateValueAndValidity({emitEvent:Tt.emitEvent}),this._onCollectionChange()}removeControl(ht,Fe={}){this.controls[ht]&&this.controls[ht]._registerOnCollectionChange(()=>{}),delete this.controls[ht],this.updateValueAndValidity({emitEvent:Fe.emitEvent}),this._onCollectionChange()}setControl(ht,Fe,Tt={}){this.controls[ht]&&this.controls[ht]._registerOnCollectionChange(()=>{}),delete this.controls[ht],Fe&&this.registerControl(ht,Fe),this.updateValueAndValidity({emitEvent:Tt.emitEvent}),this._onCollectionChange()}contains(ht){return this.controls.hasOwnProperty(ht)&&this.controls[ht].enabled}setValue(ht,Fe={}){(function De(at,ht,Fe){at._forEachChild((Tt,jt)=>{if(void 0===Fe[jt])throw new e.vHH(1002,"")})})(this,0,ht),Object.keys(ht).forEach(Tt=>{(function wt(at,ht,Fe){const Tt=at.controls;if(!(ht?Object.keys(Tt):Tt).length)throw new e.vHH(1e3,"");if(!Tt[Fe])throw new e.vHH(1001,"")})(this,!0,Tt),this.controls[Tt].setValue(ht[Tt],{onlySelf:!0,emitEvent:Fe.emitEvent})}),this.updateValueAndValidity(Fe)}patchValue(ht,Fe={}){null!=ht&&(Object.keys(ht).forEach(Tt=>{const jt=this.controls[Tt];jt&&jt.patchValue(ht[Tt],{onlySelf:!0,emitEvent:Fe.emitEvent})}),this.updateValueAndValidity(Fe))}reset(ht={},Fe={}){this._forEachChild((Tt,jt)=>{Tt.reset(ht?ht[jt]:null,{onlySelf:!0,emitEvent:Fe.emitEvent})}),this._updatePristine(Fe),this._updateTouched(Fe),this.updateValueAndValidity(Fe)}getRawValue(){return this._reduceChildren({},(ht,Fe,Tt)=>(ht[Tt]=Fe.getRawValue(),ht))}_syncPendingControls(){let ht=this._reduceChildren(!1,(Fe,Tt)=>!!Tt._syncPendingControls()||Fe);return ht&&this.updateValueAndValidity({onlySelf:!0}),ht}_forEachChild(ht){Object.keys(this.controls).forEach(Fe=>{const Tt=this.controls[Fe];Tt&&ht(Tt,Fe)})}_setUpControls(){this._forEachChild(ht=>{ht.setParent(this),ht._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(ht){for(const[Fe,Tt]of Object.entries(this.controls))if(this.contains(Fe)&&ht(Tt))return!0;return!1}_reduceValue(){return this._reduceChildren({},(Fe,Tt,jt)=>((Tt.enabled||this.disabled)&&(Fe[jt]=Tt.value),Fe))}_reduceChildren(ht,Fe){let Tt=ht;return this._forEachChild((jt,Nn)=>{Tt=Fe(Tt,jt,Nn)}),Tt}_allControlsDisabled(){for(const ht of Object.keys(this.controls))if(this.controls[ht].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_find(ht){return this.controls.hasOwnProperty(ht)?this.controls[ht]:null}}const b=new e.OlP("CallSetDisabledState",{providedIn:"root",factory:()=>N}),N="always";function S(at,ht){return[...ht.path,at]}function $(at,ht,Fe=N){bt(at,ht),ht.valueAccessor.writeValue(at.value),(at.disabled||"always"===Fe)&&ht.valueAccessor.setDisabledState?.(at.disabled),function sn(at,ht){ht.valueAccessor.registerOnChange(Fe=>{at._pendingValue=Fe,at._pendingChange=!0,at._pendingDirty=!0,"change"===at.updateOn&&vn(at,ht)})}(at,ht),function Dn(at,ht){const Fe=(Tt,jt)=>{ht.valueAccessor.writeValue(Tt),jt&&ht.viewToModelUpdate(Tt)};at.registerOnChange(Fe),ht._registerOnDestroy(()=>{at._unregisterOnChange(Fe)})}(at,ht),function pn(at,ht){ht.valueAccessor.registerOnTouched(()=>{at._pendingTouched=!0,"blur"===at.updateOn&&at._pendingChange&&vn(at,ht),"submit"!==at.updateOn&&at.markAsTouched()})}(at,ht),function ze(at,ht){if(ht.valueAccessor.setDisabledState){const Fe=Tt=>{ht.valueAccessor.setDisabledState(Tt)};at.registerOnDisabledChange(Fe),ht._registerOnDestroy(()=>{at._unregisterOnDisabledChange(Fe)})}}(at,ht)}function R(at,ht,Fe=!0){const Tt=()=>{};ht.valueAccessor&&(ht.valueAccessor.registerOnChange(Tt),ht.valueAccessor.registerOnTouched(Tt)),Ft(at,ht),at&&(ht._invokeOnDestroyCallbacks(),at._registerOnCollectionChange(()=>{}))}function he(at,ht){at.forEach(Fe=>{Fe.registerOnValidatorChange&&Fe.registerOnValidatorChange(ht)})}function bt(at,ht){const Fe=ye(at);null!==ht.validator?at.setValidators(q(Fe,ht.validator)):"function"==typeof Fe&&at.setValidators([Fe]);const Tt=ee(at);null!==ht.asyncValidator?at.setAsyncValidators(q(Tt,ht.asyncValidator)):"function"==typeof Tt&&at.setAsyncValidators([Tt]);const jt=()=>at.updateValueAndValidity();he(ht._rawValidators,jt),he(ht._rawAsyncValidators,jt)}function Ft(at,ht){let Fe=!1;if(null!==at){if(null!==ht.validator){const jt=ye(at);if(Array.isArray(jt)&&jt.length>0){const Nn=jt.filter(jn=>jn!==ht.validator);Nn.length!==jt.length&&(Fe=!0,at.setValidators(Nn))}}if(null!==ht.asyncValidator){const jt=ee(at);if(Array.isArray(jt)&&jt.length>0){const Nn=jt.filter(jn=>jn!==ht.asyncValidator);Nn.length!==jt.length&&(Fe=!0,at.setAsyncValidators(Nn))}}}const Tt=()=>{};return he(ht._rawValidators,Tt),he(ht._rawAsyncValidators,Tt),Fe}function vn(at,ht){at._pendingDirty&&at.markAsDirty(),at.setValue(at._pendingValue,{emitModelToViewChange:!1}),ht.viewToModelUpdate(at._pendingValue),at._pendingChange=!1}function Mn(at,ht){bt(at,ht)}function ci(at,ht){if(!at.hasOwnProperty("model"))return!1;const Fe=at.model;return!!Fe.isFirstChange()||!Object.is(ht,Fe.currentValue)}function di(at,ht){at._syncPendingControls(),ht.forEach(Fe=>{const Tt=Fe.control;"submit"===Tt.updateOn&&Tt._pendingChange&&(Fe.viewToModelUpdate(Tt._pendingValue),Tt._pendingChange=!1)})}function hi(at,ht){if(!ht)return null;let Fe,Tt,jt;return Array.isArray(ht),ht.forEach(Nn=>{Nn.constructor===_?Fe=Nn:function ri(at){return Object.getPrototypeOf(at.constructor)===d}(Nn)?Tt=Nn:jt=Nn}),jt||Tt||Fe||null}const Oi={provide:je,useExisting:(0,e.Gpc)(()=>po)},ei=(()=>Promise.resolve())();let po=(()=>{class at extends je{constructor(Fe,Tt,jt){super(),this.callSetDisabledState=jt,this.submitted=!1,this._directives=new Set,this.ngSubmit=new e.vpe,this.form=new Je({},xe(Fe),Ye(Tt))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(Fe){ei.then(()=>{const Tt=this._findContainer(Fe.path);Fe.control=Tt.registerControl(Fe.name,Fe.control),$(Fe.control,Fe,this.callSetDisabledState),Fe.control.updateValueAndValidity({emitEvent:!1}),this._directives.add(Fe)})}getControl(Fe){return this.form.get(Fe.path)}removeControl(Fe){ei.then(()=>{const Tt=this._findContainer(Fe.path);Tt&&Tt.removeControl(Fe.name),this._directives.delete(Fe)})}addFormGroup(Fe){ei.then(()=>{const Tt=this._findContainer(Fe.path),jt=new Je({});Mn(jt,Fe),Tt.registerControl(Fe.name,jt),jt.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(Fe){ei.then(()=>{const Tt=this._findContainer(Fe.path);Tt&&Tt.removeControl(Fe.name)})}getFormGroup(Fe){return this.form.get(Fe.path)}updateModel(Fe,Tt){ei.then(()=>{this.form.get(Fe.path).setValue(Tt)})}setValue(Fe){this.control.setValue(Fe)}onSubmit(Fe){return this.submitted=!0,di(this.form,this._directives),this.ngSubmit.emit(Fe),"dialog"===Fe?.target?.method}onReset(){this.resetForm()}resetForm(Fe=void 0){this.form.reset(Fe),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(Fe){return Fe.pop(),Fe.length?this.form.get(Fe):this.form}static#e=this.\u0275fac=function(Tt){return new(Tt||at)(e.Y36(A,10),e.Y36(k,10),e.Y36(b,8))};static#t=this.\u0275dir=e.lG2({type:at,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(Tt,jt){1&Tt&&e.NdJ("submit",function(jn){return jt.onSubmit(jn)})("reset",function(){return jt.onReset()})},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[e._Bn([Oi]),e.qOj]})}return at})();function oo(at,ht){const Fe=at.indexOf(ht);Fe>-1&&at.splice(Fe,1)}function Wi(at){return"object"==typeof at&&null!==at&&2===Object.keys(at).length&&"value"in at&&"disabled"in at}const Ri=class extends Pe{constructor(ht=null,Fe,Tt){super(qe(Fe),Ze(Tt,Fe)),this.defaultValue=null,this._onChange=[],this._pendingChange=!1,this._applyFormState(ht),this._setUpdateStrategy(Fe),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),Ue(Fe)&&(Fe.nonNullable||Fe.initialValueIsDefault)&&(this.defaultValue=Wi(ht)?ht.value:ht)}setValue(ht,Fe={}){this.value=this._pendingValue=ht,this._onChange.length&&!1!==Fe.emitModelToViewChange&&this._onChange.forEach(Tt=>Tt(this.value,!1!==Fe.emitViewToModelChange)),this.updateValueAndValidity(Fe)}patchValue(ht,Fe={}){this.setValue(ht,Fe)}reset(ht=this.defaultValue,Fe={}){this._applyFormState(ht),this.markAsPristine(Fe),this.markAsUntouched(Fe),this.setValue(this.value,Fe),this._pendingChange=!1}_updateValue(){}_anyControls(ht){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(ht){this._onChange.push(ht)}_unregisterOnChange(ht){oo(this._onChange,ht)}registerOnDisabledChange(ht){this._onDisabledChange.push(ht)}_unregisterOnDisabledChange(ht){oo(this._onDisabledChange,ht)}_forEachChild(ht){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(ht){Wi(ht)?(this.value=this._pendingValue=ht.value,ht.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=ht}},Pi={provide:ot,useExisting:(0,e.Gpc)(()=>ki)},Ii=(()=>Promise.resolve())();let ki=(()=>{class at extends ot{constructor(Fe,Tt,jt,Nn,jn,co){super(),this._changeDetectorRef=jn,this.callSetDisabledState=co,this.control=new Ri,this._registered=!1,this.name="",this.update=new e.vpe,this._parent=Fe,this._setValidators(Tt),this._setAsyncValidators(jt),this.valueAccessor=hi(0,Nn)}ngOnChanges(Fe){if(this._checkForErrors(),!this._registered||"name"in Fe){if(this._registered&&(this._checkName(),this.formDirective)){const Tt=Fe.name.previousValue;this.formDirective.removeControl({name:Tt,path:this._getPath(Tt)})}this._setUpControl()}"isDisabled"in Fe&&this._updateDisabled(Fe),ci(Fe,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._getPath(this.name)}get formDirective(){return this._parent?this._parent.formDirective:null}viewToModelUpdate(Fe){this.viewModel=Fe,this.update.emit(Fe)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){$(this.control,this,this.callSetDisabledState),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()}_updateValue(Fe){Ii.then(()=>{this.control.setValue(Fe,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(Fe){const Tt=Fe.isDisabled.currentValue,jt=0!==Tt&&(0,e.VuI)(Tt);Ii.then(()=>{jt&&!this.control.disabled?this.control.disable():!jt&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(Fe){return this._parent?S(Fe,this._parent):[Fe]}static#e=this.\u0275fac=function(Tt){return new(Tt||at)(e.Y36(je,9),e.Y36(A,10),e.Y36(k,10),e.Y36(p,10),e.Y36(e.sBO,8),e.Y36(b,8))};static#t=this.\u0275dir=e.lG2({type:at,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:["disabled","isDisabled"],model:["ngModel","model"],options:["ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],features:[e._Bn([Pi]),e.qOj,e.TTD]})}return at})(),oi=(()=>{class at{static#e=this.\u0275fac=function(Tt){return new(Tt||at)};static#t=this.\u0275dir=e.lG2({type:at,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]})}return at})(),Ct=(()=>{class at{static#e=this.\u0275fac=function(Tt){return new(Tt||at)};static#t=this.\u0275mod=e.oAB({type:at});static#n=this.\u0275inj=e.cJS({})}return at})();const Sn=new e.OlP("NgModelWithFormControlWarning"),gi={provide:ot,useExisting:(0,e.Gpc)(()=>St)};let St=(()=>{class at extends ot{set isDisabled(Fe){}static#e=this._ngModelWarningSentOnce=!1;constructor(Fe,Tt,jt,Nn,jn){super(),this._ngModelWarningConfig=Nn,this.callSetDisabledState=jn,this.update=new e.vpe,this._ngModelWarningSent=!1,this._setValidators(Fe),this._setAsyncValidators(Tt),this.valueAccessor=hi(0,jt)}ngOnChanges(Fe){if(this._isControlChanged(Fe)){const Tt=Fe.form.previousValue;Tt&&R(Tt,this,!1),$(this.form,this,this.callSetDisabledState),this.form.updateValueAndValidity({emitEvent:!1})}ci(Fe,this.viewModel)&&(this.form.setValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.form&&R(this.form,this,!1)}get path(){return[]}get control(){return this.form}viewToModelUpdate(Fe){this.viewModel=Fe,this.update.emit(Fe)}_isControlChanged(Fe){return Fe.hasOwnProperty("form")}static#t=this.\u0275fac=function(Tt){return new(Tt||at)(e.Y36(A,10),e.Y36(k,10),e.Y36(p,10),e.Y36(Sn,8),e.Y36(b,8))};static#n=this.\u0275dir=e.lG2({type:at,selectors:[["","formControl",""]],inputs:{form:["formControl","form"],isDisabled:["disabled","isDisabled"],model:["ngModel","model"]},outputs:{update:"ngModelChange"},exportAs:["ngForm"],features:[e._Bn([gi]),e.qOj,e.TTD]})}return at})();const gt={provide:je,useExisting:(0,e.Gpc)(()=>We)};let We=(()=>{class at extends je{constructor(Fe,Tt,jt){super(),this.callSetDisabledState=jt,this.submitted=!1,this._onCollectionChange=()=>this._updateDomValue(),this.directives=[],this.form=null,this.ngSubmit=new e.vpe,this._setValidators(Fe),this._setAsyncValidators(Tt)}ngOnChanges(Fe){this._checkFormPresent(),Fe.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations(),this._oldForm=this.form)}ngOnDestroy(){this.form&&(Ft(this.form,this),this.form._onCollectionChange===this._onCollectionChange&&this.form._registerOnCollectionChange(()=>{}))}get formDirective(){return this}get control(){return this.form}get path(){return[]}addControl(Fe){const Tt=this.form.get(Fe.path);return $(Tt,Fe,this.callSetDisabledState),Tt.updateValueAndValidity({emitEvent:!1}),this.directives.push(Fe),Tt}getControl(Fe){return this.form.get(Fe.path)}removeControl(Fe){R(Fe.control||null,Fe,!1),function fi(at,ht){const Fe=at.indexOf(ht);Fe>-1&&at.splice(Fe,1)}(this.directives,Fe)}addFormGroup(Fe){this._setUpFormContainer(Fe)}removeFormGroup(Fe){this._cleanUpFormContainer(Fe)}getFormGroup(Fe){return this.form.get(Fe.path)}addFormArray(Fe){this._setUpFormContainer(Fe)}removeFormArray(Fe){this._cleanUpFormContainer(Fe)}getFormArray(Fe){return this.form.get(Fe.path)}updateModel(Fe,Tt){this.form.get(Fe.path).setValue(Tt)}onSubmit(Fe){return this.submitted=!0,di(this.form,this.directives),this.ngSubmit.emit(Fe),"dialog"===Fe?.target?.method}onReset(){this.resetForm()}resetForm(Fe=void 0){this.form.reset(Fe),this.submitted=!1}_updateDomValue(){this.directives.forEach(Fe=>{const Tt=Fe.control,jt=this.form.get(Fe.path);Tt!==jt&&(R(Tt||null,Fe),(at=>at instanceof Ri)(jt)&&($(jt,Fe,this.callSetDisabledState),Fe.control=jt))}),this.form._updateTreeValidity({emitEvent:!1})}_setUpFormContainer(Fe){const Tt=this.form.get(Fe.path);Mn(Tt,Fe),Tt.updateValueAndValidity({emitEvent:!1})}_cleanUpFormContainer(Fe){if(this.form){const Tt=this.form.get(Fe.path);Tt&&function En(at,ht){return Ft(at,ht)}(Tt,Fe)&&Tt.updateValueAndValidity({emitEvent:!1})}}_updateRegistrations(){this.form._registerOnCollectionChange(this._onCollectionChange),this._oldForm&&this._oldForm._registerOnCollectionChange(()=>{})}_updateValidators(){bt(this.form,this),this._oldForm&&Ft(this._oldForm,this)}_checkFormPresent(){}static#e=this.\u0275fac=function(Tt){return new(Tt||at)(e.Y36(A,10),e.Y36(k,10),e.Y36(b,8))};static#t=this.\u0275dir=e.lG2({type:at,selectors:[["","formGroup",""]],hostBindings:function(Tt,jt){1&Tt&&e.NdJ("submit",function(jn){return jt.onSubmit(jn)})("reset",function(){return jt.onReset()})},inputs:{form:["formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[e._Bn([gt]),e.qOj,e.TTD]})}return at})();const Qn={provide:ot,useExisting:(0,e.Gpc)(()=>ui)};let ui=(()=>{class at extends ot{set isDisabled(Fe){}static#e=this._ngModelWarningSentOnce=!1;constructor(Fe,Tt,jt,Nn,jn){super(),this._ngModelWarningConfig=jn,this._added=!1,this.name=null,this.update=new e.vpe,this._ngModelWarningSent=!1,this._parent=Fe,this._setValidators(Tt),this._setAsyncValidators(jt),this.valueAccessor=hi(0,Nn)}ngOnChanges(Fe){this._added||this._setUpControl(),ci(Fe,this.viewModel)&&(this.viewModel=this.model,this.formDirective.updateModel(this,this.model))}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}viewToModelUpdate(Fe){this.viewModel=Fe,this.update.emit(Fe)}get path(){return S(null==this.name?this.name:this.name.toString(),this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}_checkParentType(){}_setUpControl(){this._checkParentType(),this.control=this.formDirective.addControl(this),this._added=!0}static#t=this.\u0275fac=function(Tt){return new(Tt||at)(e.Y36(je,13),e.Y36(A,10),e.Y36(k,10),e.Y36(p,10),e.Y36(Sn,8))};static#n=this.\u0275dir=e.lG2({type:at,selectors:[["","formControlName",""]],inputs:{name:["formControlName","name"],isDisabled:["disabled","isDisabled"],model:["ngModel","model"]},outputs:{update:"ngModelChange"},features:[e._Bn([Qn]),e.qOj,e.TTD]})}return at})();let ao=(()=>{class at{constructor(){this._validator=pe}ngOnChanges(Fe){if(this.inputName in Fe){const Tt=this.normalizeInput(Fe[this.inputName].currentValue);this._enabled=this.enabled(Tt),this._validator=this._enabled?this.createValidator(Tt):pe,this._onChange&&this._onChange()}}validate(Fe){return this._validator(Fe)}registerOnValidatorChange(Fe){this._onChange=Fe}enabled(Fe){return null!=Fe}static#e=this.\u0275fac=function(Tt){return new(Tt||at)};static#t=this.\u0275dir=e.lG2({type:at,features:[e.TTD]})}return at})();const es={provide:A,useExisting:(0,e.Gpc)(()=>ji),multi:!0};let ji=(()=>{class at extends ao{constructor(){super(...arguments),this.inputName="required",this.normalizeInput=e.VuI,this.createValidator=Fe=>Y}enabled(Fe){return Fe}static#e=this.\u0275fac=function(){let Fe;return function(jt){return(Fe||(Fe=e.n5z(at)))(jt||at)}}();static#t=this.\u0275dir=e.lG2({type:at,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(Tt,jt){2&Tt&&e.uIk("required",jt._enabled?"":null)},inputs:{required:"required"},features:[e._Bn([es]),e.qOj]})}return at})();const rt={provide:A,useExisting:(0,e.Gpc)(()=>Gt),multi:!0};let Gt=(()=>{class at extends ao{constructor(){super(...arguments),this.inputName="maxlength",this.normalizeInput=Fe=>function ps(at){return"number"==typeof at?at:parseInt(at,10)}(Fe),this.createValidator=Fe=>te(Fe)}static#e=this.\u0275fac=function(){let Fe;return function(jt){return(Fe||(Fe=e.n5z(at)))(jt||at)}}();static#t=this.\u0275dir=e.lG2({type:at,selectors:[["","maxlength","","formControlName",""],["","maxlength","","formControl",""],["","maxlength","","ngModel",""]],hostVars:1,hostBindings:function(Tt,jt){2&Tt&&e.uIk("maxlength",jt._enabled?jt.maxlength:null)},inputs:{maxlength:"maxlength"},features:[e._Bn([rt]),e.qOj]})}return at})();const Z={provide:A,useExisting:(0,e.Gpc)(()=>dt),multi:!0};let dt=(()=>{class at extends ao{constructor(){super(...arguments),this.inputName="pattern",this.normalizeInput=Fe=>Fe,this.createValidator=Fe=>ne(Fe)}static#e=this.\u0275fac=function(){let Fe;return function(jt){return(Fe||(Fe=e.n5z(at)))(jt||at)}}();static#t=this.\u0275dir=e.lG2({type:at,selectors:[["","pattern","","formControlName",""],["","pattern","","formControl",""],["","pattern","","ngModel",""]],hostVars:1,hostBindings:function(Tt,jt){2&Tt&&e.uIk("pattern",jt._enabled?jt.pattern:null)},inputs:{pattern:"pattern"},features:[e._Bn([Z]),e.qOj]})}return at})(),In=(()=>{class at{static#e=this.\u0275fac=function(Tt){return new(Tt||at)};static#t=this.\u0275mod=e.oAB({type:at});static#n=this.\u0275inj=e.cJS({imports:[Ct]})}return at})(),fs=(()=>{class at{static withConfig(Fe){return{ngModule:at,providers:[{provide:b,useValue:Fe.callSetDisabledState??N}]}}static#e=this.\u0275fac=function(Tt){return new(Tt||at)};static#t=this.\u0275mod=e.oAB({type:at});static#n=this.\u0275inj=e.cJS({imports:[In]})}return at})(),$o=(()=>{class at{static withConfig(Fe){return{ngModule:at,providers:[{provide:Sn,useValue:Fe.warnOnNgModelWithFormControl??"always"},{provide:b,useValue:Fe.callSetDisabledState??N}]}}static#e=this.\u0275fac=function(Tt){return new(Tt||at)};static#t=this.\u0275mod=e.oAB({type:at});static#n=this.\u0275inj=e.cJS({imports:[In]})}return at})()},6593:(nt,I,o)=>{"use strict";o.d(I,{Dx:()=>ot,H7:()=>Vt,b2:()=>Re,q6:()=>q,se:()=>F});var e=o(65879),n=o(96814);class t extends n.w_{constructor(){super(...arguments),this.supportsDOMEvents=!0}}class i extends t{static makeCurrent(){(0,n.HT)(new i)}onAndCancel(Ze,$e,Ue){return Ze.addEventListener($e,Ue),()=>{Ze.removeEventListener($e,Ue)}}dispatchEvent(Ze,$e){Ze.dispatchEvent($e)}remove(Ze){Ze.parentNode&&Ze.parentNode.removeChild(Ze)}createElement(Ze,$e){return($e=$e||this.getDefaultDocument()).createElement(Ze)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(Ze){return Ze.nodeType===Node.ELEMENT_NODE}isShadowRoot(Ze){return Ze instanceof DocumentFragment}getGlobalEventTarget(Ze,$e){return"window"===$e?window:"document"===$e?Ze:"body"===$e?Ze.body:null}getBaseHref(Ze){const $e=function C(){return l=l||document.querySelector("base"),l?l.getAttribute("href"):null}();return null==$e?null:function u(ge){E=E||document.createElement("a"),E.setAttribute("href",ge);const Ze=E.pathname;return"/"===Ze.charAt(0)?Ze:`/${Ze}`}($e)}resetBaseElement(){l=null}getUserAgent(){return window.navigator.userAgent}getCookie(Ze){return(0,n.Mx)(document.cookie,Ze)}}let E,l=null,M=(()=>{class ge{build(){return new XMLHttpRequest}static#e=this.\u0275fac=function(Ue){return new(Ue||ge)};static#t=this.\u0275prov=e.Yz7({token:ge,factory:ge.\u0275fac})}return ge})();const h=new e.OlP("EventManagerPlugins");let v=(()=>{class ge{constructor($e,Ue){this._zone=Ue,this._eventNameToPlugin=new Map,$e.forEach(wt=>{wt.manager=this}),this._plugins=$e.slice().reverse()}addEventListener($e,Ue,wt){return this._findPluginFor(Ue).addEventListener($e,Ue,wt)}getZone(){return this._zone}_findPluginFor($e){let Ue=this._eventNameToPlugin.get($e);if(Ue)return Ue;if(Ue=this._plugins.find(De=>De.supports($e)),!Ue)throw new e.vHH(5101,!1);return this._eventNameToPlugin.set($e,Ue),Ue}static#e=this.\u0275fac=function(Ue){return new(Ue||ge)(e.LFG(h),e.LFG(e.R0b))};static#t=this.\u0275prov=e.Yz7({token:ge,factory:ge.\u0275fac})}return ge})();class g{constructor(Ze){this._doc=Ze}}const d="ng-app-id";let p=(()=>{class ge{constructor($e,Ue,wt,De={}){this.doc=$e,this.appId=Ue,this.nonce=wt,this.platformId=De,this.styleRef=new Map,this.hostNodes=new Set,this.styleNodesInDOM=this.collectServerRenderedStyles(),this.platformIsServer=(0,n.PM)(De),this.resetHostNodes()}addStyles($e){for(const Ue of $e)1===this.changeUsageCount(Ue,1)&&this.onStyleAdded(Ue)}removeStyles($e){for(const Ue of $e)this.changeUsageCount(Ue,-1)<=0&&this.onStyleRemoved(Ue)}ngOnDestroy(){const $e=this.styleNodesInDOM;$e&&($e.forEach(Ue=>Ue.remove()),$e.clear());for(const Ue of this.getAllStyles())this.onStyleRemoved(Ue);this.resetHostNodes()}addHost($e){this.hostNodes.add($e);for(const Ue of this.getAllStyles())this.addStyleToHost($e,Ue)}removeHost($e){this.hostNodes.delete($e)}getAllStyles(){return this.styleRef.keys()}onStyleAdded($e){for(const Ue of this.hostNodes)this.addStyleToHost(Ue,$e)}onStyleRemoved($e){const Ue=this.styleRef;Ue.get($e)?.elements?.forEach(wt=>wt.remove()),Ue.delete($e)}collectServerRenderedStyles(){const $e=this.doc.head?.querySelectorAll(`style[${d}="${this.appId}"]`);if($e?.length){const Ue=new Map;return $e.forEach(wt=>{null!=wt.textContent&&Ue.set(wt.textContent,wt)}),Ue}return null}changeUsageCount($e,Ue){const wt=this.styleRef;if(wt.has($e)){const De=wt.get($e);return De.usage+=Ue,De.usage}return wt.set($e,{usage:Ue,elements:[]}),Ue}getStyleElement($e,Ue){const wt=this.styleNodesInDOM,De=wt?.get(Ue);if(De?.parentNode===$e)return wt.delete(Ue),De.removeAttribute(d),De;{const Pe=this.doc.createElement("style");return this.nonce&&Pe.setAttribute("nonce",this.nonce),Pe.textContent=Ue,this.platformIsServer&&Pe.setAttribute(d,this.appId),Pe}}addStyleToHost($e,Ue){const wt=this.getStyleElement($e,Ue);$e.appendChild(wt);const De=this.styleRef,Pe=De.get(Ue)?.elements;Pe?Pe.push(wt):De.set(Ue,{elements:[wt],usage:1})}resetHostNodes(){const $e=this.hostNodes;$e.clear(),$e.add(this.doc.head)}static#e=this.\u0275fac=function(Ue){return new(Ue||ge)(e.LFG(n.K0),e.LFG(e.AFp),e.LFG(e.Ojb,8),e.LFG(e.Lbi))};static#t=this.\u0275prov=e.Yz7({token:ge,factory:ge.\u0275fac})}return ge})();const f={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/",math:"http://www.w3.org/1998/MathML/"},y=/%COMP%/g,T="%COMP%",x=`_nghost-${T}`,D=`_ngcontent-${T}`,P=new e.OlP("RemoveStylesOnCompDestroy",{providedIn:"root",factory:()=>!1});function k(ge,Ze){return Ze.map($e=>$e.replace(y,ge))}let F=(()=>{class ge{constructor($e,Ue,wt,De,Pe,Je,Ge,Ke=null){this.eventManager=$e,this.sharedStylesHost=Ue,this.appId=wt,this.removeStylesOnCompDestroy=De,this.doc=Pe,this.platformId=Je,this.ngZone=Ge,this.nonce=Ke,this.rendererByCompId=new Map,this.platformIsServer=(0,n.PM)(Je),this.defaultRenderer=new W($e,Pe,Ge,this.platformIsServer)}createRenderer($e,Ue){if(!$e||!Ue)return this.defaultRenderer;this.platformIsServer&&Ue.encapsulation===e.ifc.ShadowDom&&(Ue={...Ue,encapsulation:e.ifc.Emulated});const wt=this.getOrCreateRenderer($e,Ue);return wt instanceof j?wt.applyToHost($e):wt instanceof H&&wt.applyStyles(),wt}getOrCreateRenderer($e,Ue){const wt=this.rendererByCompId;let De=wt.get(Ue.id);if(!De){const Pe=this.doc,Je=this.ngZone,Ge=this.eventManager,Ke=this.sharedStylesHost,ve=this.removeStylesOnCompDestroy,it=this.platformIsServer;switch(Ue.encapsulation){case e.ifc.Emulated:De=new j(Ge,Ke,Ue,this.appId,ve,Pe,Je,it);break;case e.ifc.ShadowDom:return new G(Ge,Ke,$e,Ue,Pe,Je,this.nonce,it);default:De=new H(Ge,Ke,Ue,ve,Pe,Je,it)}wt.set(Ue.id,De)}return De}ngOnDestroy(){this.rendererByCompId.clear()}static#e=this.\u0275fac=function(Ue){return new(Ue||ge)(e.LFG(v),e.LFG(p),e.LFG(e.AFp),e.LFG(P),e.LFG(n.K0),e.LFG(e.Lbi),e.LFG(e.R0b),e.LFG(e.Ojb))};static#t=this.\u0275prov=e.Yz7({token:ge,factory:ge.\u0275fac})}return ge})();class W{constructor(Ze,$e,Ue,wt){this.eventManager=Ze,this.doc=$e,this.ngZone=Ue,this.platformIsServer=wt,this.data=Object.create(null),this.destroyNode=null}destroy(){}createElement(Ze,$e){return $e?this.doc.createElementNS(f[$e]||$e,Ze):this.doc.createElement(Ze)}createComment(Ze){return this.doc.createComment(Ze)}createText(Ze){return this.doc.createTextNode(Ze)}appendChild(Ze,$e){(Y(Ze)?Ze.content:Ze).appendChild($e)}insertBefore(Ze,$e,Ue){Ze&&(Y(Ze)?Ze.content:Ze).insertBefore($e,Ue)}removeChild(Ze,$e){Ze&&Ze.removeChild($e)}selectRootElement(Ze,$e){let Ue="string"==typeof Ze?this.doc.querySelector(Ze):Ze;if(!Ue)throw new e.vHH(-5104,!1);return $e||(Ue.textContent=""),Ue}parentNode(Ze){return Ze.parentNode}nextSibling(Ze){return Ze.nextSibling}setAttribute(Ze,$e,Ue,wt){if(wt){$e=wt+":"+$e;const De=f[wt];De?Ze.setAttributeNS(De,$e,Ue):Ze.setAttribute($e,Ue)}else Ze.setAttribute($e,Ue)}removeAttribute(Ze,$e,Ue){if(Ue){const wt=f[Ue];wt?Ze.removeAttributeNS(wt,$e):Ze.removeAttribute(`${Ue}:${$e}`)}else Ze.removeAttribute($e)}addClass(Ze,$e){Ze.classList.add($e)}removeClass(Ze,$e){Ze.classList.remove($e)}setStyle(Ze,$e,Ue,wt){wt&(e.JOm.DashCase|e.JOm.Important)?Ze.style.setProperty($e,Ue,wt&e.JOm.Important?"important":""):Ze.style[$e]=Ue}removeStyle(Ze,$e,Ue){Ue&e.JOm.DashCase?Ze.style.removeProperty($e):Ze.style[$e]=""}setProperty(Ze,$e,Ue){Ze[$e]=Ue}setValue(Ze,$e){Ze.nodeValue=$e}listen(Ze,$e,Ue){if("string"==typeof Ze&&!(Ze=(0,n.q)().getGlobalEventTarget(this.doc,Ze)))throw new Error(`Unsupported event target ${Ze} for event ${$e}`);return this.eventManager.addEventListener(Ze,$e,this.decoratePreventDefault(Ue))}decoratePreventDefault(Ze){return $e=>{if("__ngUnwrap__"===$e)return Ze;!1===(this.platformIsServer?this.ngZone.runGuarded(()=>Ze($e)):Ze($e))&&$e.preventDefault()}}}function Y(ge){return"TEMPLATE"===ge.tagName&&void 0!==ge.content}class G extends W{constructor(Ze,$e,Ue,wt,De,Pe,Je,Ge){super(Ze,De,Pe,Ge),this.sharedStylesHost=$e,this.hostEl=Ue,this.shadowRoot=Ue.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const Ke=k(wt.id,wt.styles);for(const ve of Ke){const it=document.createElement("style");Je&&it.setAttribute("nonce",Je),it.textContent=ve,this.shadowRoot.appendChild(it)}}nodeOrShadowRoot(Ze){return Ze===this.hostEl?this.shadowRoot:Ze}appendChild(Ze,$e){return super.appendChild(this.nodeOrShadowRoot(Ze),$e)}insertBefore(Ze,$e,Ue){return super.insertBefore(this.nodeOrShadowRoot(Ze),$e,Ue)}removeChild(Ze,$e){return super.removeChild(this.nodeOrShadowRoot(Ze),$e)}parentNode(Ze){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(Ze)))}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}}class H extends W{constructor(Ze,$e,Ue,wt,De,Pe,Je,Ge){super(Ze,De,Pe,Je),this.sharedStylesHost=$e,this.removeStylesOnCompDestroy=wt,this.styles=Ge?k(Ge,Ue.styles):Ue.styles}applyStyles(){this.sharedStylesHost.addStyles(this.styles)}destroy(){this.removeStylesOnCompDestroy&&this.sharedStylesHost.removeStyles(this.styles)}}class j extends H{constructor(Ze,$e,Ue,wt,De,Pe,Je,Ge){const Ke=wt+"-"+Ue.id;super(Ze,$e,Ue,De,Pe,Je,Ge,Ke),this.contentAttr=function O(ge){return D.replace(y,ge)}(Ke),this.hostAttr=function A(ge){return x.replace(y,ge)}(Ke)}applyToHost(Ze){this.applyStyles(),this.setAttribute(Ze,this.hostAttr,"")}createElement(Ze,$e){const Ue=super.createElement(Ze,$e);return super.setAttribute(Ue,this.contentAttr,""),Ue}}let te=(()=>{class ge extends g{constructor($e){super($e)}supports($e){return!0}addEventListener($e,Ue,wt){return $e.addEventListener(Ue,wt,!1),()=>this.removeEventListener($e,Ue,wt)}removeEventListener($e,Ue,wt){return $e.removeEventListener(Ue,wt)}static#e=this.\u0275fac=function(Ue){return new(Ue||ge)(e.LFG(n.K0))};static#t=this.\u0275prov=e.Yz7({token:ge,factory:ge.\u0275fac})}return ge})();const ne=["alt","control","meta","shift"],pe={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},re={alt:ge=>ge.altKey,control:ge=>ge.ctrlKey,meta:ge=>ge.metaKey,shift:ge=>ge.shiftKey};let be=(()=>{class ge extends g{constructor($e){super($e)}supports($e){return null!=ge.parseEventName($e)}addEventListener($e,Ue,wt){const De=ge.parseEventName(Ue),Pe=ge.eventCallback(De.fullKey,wt,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>(0,n.q)().onAndCancel($e,De.domEventName,Pe))}static parseEventName($e){const Ue=$e.toLowerCase().split("."),wt=Ue.shift();if(0===Ue.length||"keydown"!==wt&&"keyup"!==wt)return null;const De=ge._normalizeKey(Ue.pop());let Pe="",Je=Ue.indexOf("code");if(Je>-1&&(Ue.splice(Je,1),Pe="code."),ne.forEach(Ke=>{const ve=Ue.indexOf(Ke);ve>-1&&(Ue.splice(ve,1),Pe+=Ke+".")}),Pe+=De,0!=Ue.length||0===De.length)return null;const Ge={};return Ge.domEventName=wt,Ge.fullKey=Pe,Ge}static matchEventFullKeyCode($e,Ue){let wt=pe[$e.key]||$e.key,De="";return Ue.indexOf("code.")>-1&&(wt=$e.code,De="code."),!(null==wt||!wt)&&(wt=wt.toLowerCase()," "===wt?wt="space":"."===wt&&(wt="dot"),ne.forEach(Pe=>{Pe!==wt&&(0,re[Pe])($e)&&(De+=Pe+".")}),De+=wt,De===Ue)}static eventCallback($e,Ue,wt){return De=>{ge.matchEventFullKeyCode(De,$e)&&wt.runGuarded(()=>Ue(De))}}static _normalizeKey($e){return"esc"===$e?"escape":$e}static#e=this.\u0275fac=function(Ue){return new(Ue||ge)(e.LFG(n.K0))};static#t=this.\u0275prov=e.Yz7({token:ge,factory:ge.\u0275fac})}return ge})();const q=(0,e.eFA)(e._c5,"browser",[{provide:e.Lbi,useValue:n.bD},{provide:e.g9A,useValue:function ae(){i.makeCurrent()},multi:!0},{provide:n.K0,useFactory:function Me(){return(0,e.RDi)(document),document},deps:[]}]),ye=new e.OlP(""),ee=[{provide:e.rWj,useClass:class z{addToWindow(Ze){e.dqk.getAngularTestability=(Ue,wt=!0)=>{const De=Ze.findTestabilityInTree(Ue,wt);if(null==De)throw new e.vHH(5103,!1);return De},e.dqk.getAllAngularTestabilities=()=>Ze.getAllTestabilities(),e.dqk.getAllAngularRootElements=()=>Ze.getAllRootElements(),e.dqk.frameworkStabilizers||(e.dqk.frameworkStabilizers=[]),e.dqk.frameworkStabilizers.push(Ue=>{const wt=e.dqk.getAllAngularTestabilities();let De=wt.length,Pe=!1;const Je=function(Ge){Pe=Pe||Ge,De--,0==De&&Ue(Pe)};wt.forEach(Ge=>{Ge.whenStable(Je)})})}findTestabilityInTree(Ze,$e,Ue){return null==$e?null:Ze.getTestability($e)??(Ue?(0,n.q)().isShadowRoot($e)?this.findTestabilityInTree(Ze,$e.host,!0):this.findTestabilityInTree(Ze,$e.parentElement,!0):null)}},deps:[]},{provide:e.lri,useClass:e.dDg,deps:[e.R0b,e.eoX,e.rWj]},{provide:e.dDg,useClass:e.dDg,deps:[e.R0b,e.eoX,e.rWj]}],Be=[{provide:e.zSh,useValue:"root"},{provide:e.qLn,useFactory:function xe(){return new e.qLn},deps:[]},{provide:h,useClass:te,multi:!0,deps:[n.K0,e.R0b,e.Lbi]},{provide:h,useClass:be,multi:!0,deps:[n.K0]},F,p,v,{provide:e.FYo,useExisting:F},{provide:n.JF,useClass:M,deps:[]},[]];let Re=(()=>{class ge{constructor($e){}static withServerTransition($e){return{ngModule:ge,providers:[{provide:e.AFp,useValue:$e.appId}]}}static#e=this.\u0275fac=function(Ue){return new(Ue||ge)(e.LFG(ye,12))};static#t=this.\u0275mod=e.oAB({type:ge});static#n=this.\u0275inj=e.cJS({providers:[...Be,...ee],imports:[n.ez,e.hGG]})}return ge})(),ot=(()=>{class ge{constructor($e){this._doc=$e}getTitle(){return this._doc.title}setTitle($e){this._doc.title=$e||""}static#e=this.\u0275fac=function(Ue){return new(Ue||ge)(e.LFG(n.K0))};static#t=this.\u0275prov=e.Yz7({token:ge,factory:function(Ue){let wt=null;return wt=Ue?new Ue:function je(){return new ot((0,e.LFG)(n.K0))}(),wt},providedIn:"root"})}return ge})();typeof window<"u"&&window;let Vt=(()=>{class ge{static#e=this.\u0275fac=function(Ue){return new(Ue||ge)};static#t=this.\u0275prov=e.Yz7({token:ge,factory:function(Ue){let wt=null;return wt=Ue?new(Ue||ge):e.LFG(He),wt},providedIn:"root"})}return ge})(),He=(()=>{class ge extends Vt{constructor($e){super(),this._doc=$e}sanitize($e,Ue){if(null==Ue)return null;switch($e){case e.q3G.NONE:return Ue;case e.q3G.HTML:return(0,e.qzn)(Ue,"HTML")?(0,e.z3N)(Ue):(0,e.EiD)(this._doc,String(Ue)).toString();case e.q3G.STYLE:return(0,e.qzn)(Ue,"Style")?(0,e.z3N)(Ue):Ue;case e.q3G.SCRIPT:if((0,e.qzn)(Ue,"Script"))return(0,e.z3N)(Ue);throw new e.vHH(5200,!1);case e.q3G.URL:return(0,e.qzn)(Ue,"URL")?(0,e.z3N)(Ue):(0,e.mCW)(String(Ue));case e.q3G.RESOURCE_URL:if((0,e.qzn)(Ue,"ResourceURL"))return(0,e.z3N)(Ue);throw new e.vHH(5201,!1);default:throw new e.vHH(5202,!1)}}bypassSecurityTrustHtml($e){return(0,e.JVY)($e)}bypassSecurityTrustStyle($e){return(0,e.L6k)($e)}bypassSecurityTrustScript($e){return(0,e.eBb)($e)}bypassSecurityTrustUrl($e){return(0,e.LAX)($e)}bypassSecurityTrustResourceUrl($e){return(0,e.pB0)($e)}static#e=this.\u0275fac=function(Ue){return new(Ue||ge)(e.LFG(n.K0))};static#t=this.\u0275prov=e.Yz7({token:ge,factory:function(Ue){let wt=null;return wt=Ue?new Ue:function st(ge){return new He(ge.get(n.K0))}(e.LFG(e.zs3)),wt},providedIn:"root"})}return ge})()},52787:(nt,I,o)=>{"use strict";o.d(I,{gz:()=>At,gk:()=>di,m2:()=>ri,Q3:()=>fi,OD:()=>ci,eC:()=>ie,cx:()=>Gn,GH:()=>Ri,xV:()=>Wi,F0:()=>ni,rH:()=>xi,Od:()=>Dr,Bz:()=>ai,lC:()=>Nt});var e=o(65879),n=o(2664),t=o(7715),i=o(22096),l=o(65619),C=o(52572),E=o(46973),u=o(35211),z=o(74911),M=o(88407),h=o(58504),v=o(36232),g=o(93168),d=o(78645),p=o(47394),f=o(96814),y=o(37398),T=o(94664),x=o(48180),D=o(27921),_=o(32181),P=o(21631),O=o(81374),A=o(76328),k=o(99397),F=o(26306),W=o(79360),K=o(8251);var G=o(43572);function H(ue){return ue<=0?()=>v.E:(0,W.e)((Se,oe)=>{let Oe=[];Se.subscribe((0,K.x)(oe,tt=>{Oe.push(tt),ue{for(const tt of Oe)oe.next(tt);oe.complete()},void 0,()=>{Oe=null}))})}var j=o(3026),te=o(42737),pe=o(21441),re=o(64716),be=o(66196),le=o(59773),ce=o(57537),Q=o(6593);const ie="primary",ae=Symbol("RouteTitle");class xe{constructor(Se){this.params=Se||{}}has(Se){return Object.prototype.hasOwnProperty.call(this.params,Se)}get(Se){if(this.has(Se)){const oe=this.params[Se];return Array.isArray(oe)?oe[0]:oe}return null}getAll(Se){if(this.has(Se)){const oe=this.params[Se];return Array.isArray(oe)?oe:[oe]}return[]}get keys(){return Object.keys(this.params)}}function Me(ue){return new xe(ue)}function Ye(ue,Se,oe){const Oe=oe.path.split("/");if(Oe.length>ue.length||"full"===oe.pathMatch&&(Se.hasChildren()||Oe.lengthOe[zt]===tt)}return ue===Se}function Be(ue){return ue.length>0?ue[ue.length-1]:null}function Re(ue){return(0,n.b)(ue)?ue:(0,e.QGY)(ue)?(0,t.D)(Promise.resolve(ue)):(0,i.of)(ue)}const ct={exact:function ot(ue,Se,oe){if(!pt(ue.segments,Se.segments)||!U(ue.segments,Se.segments,oe)||ue.numberOfChildren!==Se.numberOfChildren)return!1;for(const Oe in Se.children)if(!ue.children[Oe]||!ot(ue.children[Oe],Se.children[Oe],oe))return!1;return!0},subset:we},Ae={exact:function je(ue,Se){return ye(ue,Se)},subset:function mt(ue,Se){return Object.keys(Se).length<=Object.keys(ue).length&&Object.keys(Se).every(oe=>ee(ue[oe],Se[oe]))},ignored:()=>!0};function Mt(ue,Se,oe){return ct[oe.paths](ue.root,Se.root,oe.matrixParams)&&Ae[oe.queryParams](ue.queryParams,Se.queryParams)&&!("exact"===oe.fragment&&ue.fragment!==Se.fragment)}function we(ue,Se,oe){return de(ue,Se,Se.segments,oe)}function de(ue,Se,oe,Oe){if(ue.segments.length>oe.length){const tt=ue.segments.slice(0,oe.length);return!(!pt(tt,oe)||Se.hasChildren()||!U(tt,oe,Oe))}if(ue.segments.length===oe.length){if(!pt(ue.segments,oe)||!U(ue.segments,oe,Oe))return!1;for(const tt in Se.children)if(!ue.children[tt]||!we(ue.children[tt],Se.children[tt],Oe))return!1;return!0}{const tt=oe.slice(0,ue.segments.length),zt=oe.slice(ue.segments.length);return!!(pt(ue.segments,tt)&&U(ue.segments,tt,Oe)&&ue.children[ie])&&de(ue.children[ie],Se,zt,Oe)}}function U(ue,Se,oe){return Se.every((Oe,tt)=>Ae[oe](ue[tt].parameters,Oe.parameters))}class B{constructor(Se=new Ee([],{}),oe={},Oe=null){this.root=Se,this.queryParams=oe,this.fragment=Oe}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=Me(this.queryParams)),this._queryParamMap}toString(){return qt.serialize(this)}}class Ee{constructor(Se,oe){this.segments=Se,this.children=oe,this.parent=null,Object.values(oe).forEach(Oe=>Oe.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return en(this)}}class Ie{constructor(Se,oe){this.path=Se,this.parameters=oe}get parameterMap(){return this._parameterMap||(this._parameterMap=Me(this.parameters)),this._parameterMap}toString(){return Ot(this)}}function pt(ue,Se){return ue.length===Se.length&&ue.every((oe,Oe)=>oe.path===Se[Oe].path)}let Lt=(()=>{class ue{static#e=this.\u0275fac=function(Oe){return new(Oe||ue)};static#t=this.\u0275prov=e.Yz7({token:ue,factory:function(){return new Ut},providedIn:"root"})}return ue})();class Ut{parse(Se){const oe=new De(Se);return new B(oe.parseRootSegment(),oe.parseQueryParams(),oe.parseFragment())}serialize(Se){const oe=`/${cn(Se.root,!0)}`,Oe=function Qe(ue){const Se=Object.keys(ue).map(oe=>{const Oe=ue[oe];return Array.isArray(Oe)?Oe.map(tt=>`${Vt(oe)}=${Vt(tt)}`).join("&"):`${Vt(oe)}=${Vt(Oe)}`}).filter(oe=>!!oe);return Se.length?`?${Se.join("&")}`:""}(Se.queryParams);return`${oe}${Oe}${"string"==typeof Se.fragment?`#${function st(ue){return encodeURI(ue)}(Se.fragment)}`:""}`}}const qt=new Ut;function en(ue){return ue.segments.map(Se=>Ot(Se)).join("/")}function cn(ue,Se){if(!ue.hasChildren())return en(ue);if(Se){const oe=ue.children[ie]?cn(ue.children[ie],!1):"",Oe=[];return Object.entries(ue.children).forEach(([tt,zt])=>{tt!==ie&&Oe.push(`${tt}:${cn(zt,!1)}`)}),Oe.length>0?`${oe}(${Oe.join("//")})`:oe}{const oe=function Dt(ue,Se){let oe=[];return Object.entries(ue.children).forEach(([Oe,tt])=>{Oe===ie&&(oe=oe.concat(Se(tt,Oe)))}),Object.entries(ue.children).forEach(([Oe,tt])=>{Oe!==ie&&(oe=oe.concat(Se(tt,Oe)))}),oe}(ue,(Oe,tt)=>tt===ie?[cn(ue.children[ie],!1)]:[`${tt}:${cn(Oe,!1)}`]);return 1===Object.keys(ue.children).length&&null!=ue.children[ie]?`${en(ue)}/${oe[0]}`:`${en(ue)}/(${oe.join("//")})`}}function Wt(ue){return encodeURIComponent(ue).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Vt(ue){return Wt(ue).replace(/%3B/gi,";")}function He(ue){return Wt(ue).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function et(ue){return decodeURIComponent(ue)}function It(ue){return et(ue.replace(/\+/g,"%20"))}function Ot(ue){return`${He(ue.path)}${function xt(ue){return Object.keys(ue).map(Se=>`;${He(Se)}=${He(ue[Se])}`).join("")}(ue.parameters)}`}const ke=/^[^\/()?;#]+/;function fe(ue){const Se=ue.match(ke);return Se?Se[0]:""}const qe=/^[^\/()?;=#]+/,Ze=/^[^=?&#]+/,Ue=/^[^&#]+/;class De{constructor(Se){this.url=Se,this.remaining=Se}parseRootSegment(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new Ee([],{}):new Ee([],this.parseChildren())}parseQueryParams(){const Se={};if(this.consumeOptional("?"))do{this.parseQueryParam(Se)}while(this.consumeOptional("&"));return Se}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(""===this.remaining)return{};this.consumeOptional("/");const Se=[];for(this.peekStartsWith("(")||Se.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),Se.push(this.parseSegment());let oe={};this.peekStartsWith("/(")&&(this.capture("/"),oe=this.parseParens(!0));let Oe={};return this.peekStartsWith("(")&&(Oe=this.parseParens(!1)),(Se.length>0||Object.keys(oe).length>0)&&(Oe[ie]=new Ee(Se,oe)),Oe}parseSegment(){const Se=fe(this.remaining);if(""===Se&&this.peekStartsWith(";"))throw new e.vHH(4009,!1);return this.capture(Se),new Ie(et(Se),this.parseMatrixParams())}parseMatrixParams(){const Se={};for(;this.consumeOptional(";");)this.parseParam(Se);return Se}parseParam(Se){const oe=function ge(ue){const Se=ue.match(qe);return Se?Se[0]:""}(this.remaining);if(!oe)return;this.capture(oe);let Oe="";if(this.consumeOptional("=")){const tt=fe(this.remaining);tt&&(Oe=tt,this.capture(Oe))}Se[et(oe)]=et(Oe)}parseQueryParam(Se){const oe=function $e(ue){const Se=ue.match(Ze);return Se?Se[0]:""}(this.remaining);if(!oe)return;this.capture(oe);let Oe="";if(this.consumeOptional("=")){const Bt=function wt(ue){const Se=ue.match(Ue);return Se?Se[0]:""}(this.remaining);Bt&&(Oe=Bt,this.capture(Oe))}const tt=It(oe),zt=It(Oe);if(Se.hasOwnProperty(tt)){let Bt=Se[tt];Array.isArray(Bt)||(Bt=[Bt],Se[tt]=Bt),Bt.push(zt)}else Se[tt]=zt}parseParens(Se){const oe={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){const Oe=fe(this.remaining),tt=this.remaining[Oe.length];if("/"!==tt&&")"!==tt&&";"!==tt)throw new e.vHH(4010,!1);let zt;Oe.indexOf(":")>-1?(zt=Oe.slice(0,Oe.indexOf(":")),this.capture(zt),this.capture(":")):Se&&(zt=ie);const Bt=this.parseChildren();oe[zt]=1===Object.keys(Bt).length?Bt[ie]:new Ee([],Bt),this.consumeOptional("//")}return oe}peekStartsWith(Se){return this.remaining.startsWith(Se)}consumeOptional(Se){return!!this.peekStartsWith(Se)&&(this.remaining=this.remaining.substring(Se.length),!0)}capture(Se){if(!this.consumeOptional(Se))throw new e.vHH(4011,!1)}}function Pe(ue){return ue.segments.length>0?new Ee([],{[ie]:ue}):ue}function Je(ue){const Se={};for(const Oe of Object.keys(ue.children)){const zt=Je(ue.children[Oe]);if(Oe===ie&&0===zt.segments.length&&zt.hasChildren())for(const[Bt,on]of Object.entries(zt.children))Se[Bt]=on;else(zt.segments.length>0||zt.hasChildren())&&(Se[Oe]=zt)}return function Ge(ue){if(1===ue.numberOfChildren&&ue.children[ie]){const Se=ue.children[ie];return new Ee(ue.segments.concat(Se.segments),Se.children)}return ue}(new Ee(ue.segments,Se))}function Ke(ue){return ue instanceof B}function it(ue){let Se;const tt=Pe(function oe(zt){const Bt={};for(const tn of zt.children){const xn=oe(tn);Bt[tn.outlet]=xn}const on=new Ee(zt.url,Bt);return zt===ue&&(Se=on),on}(ue.root));return Se??tt}function b(ue,Se,oe,Oe){let tt=ue;for(;tt.parent;)tt=tt.parent;if(0===Se.length)return $(tt,tt,tt,oe,Oe);const zt=function ze(ue){if("string"==typeof ue[0]&&1===ue.length&&"/"===ue[0])return new he(!0,0,ue);let Se=0,oe=!1;const Oe=ue.reduce((tt,zt,Bt)=>{if("object"==typeof zt&&null!=zt){if(zt.outlets){const on={};return Object.entries(zt.outlets).forEach(([tn,xn])=>{on[tn]="string"==typeof xn?xn.split("/"):xn}),[...tt,{outlets:on}]}if(zt.segmentPath)return[...tt,zt.segmentPath]}return"string"!=typeof zt?[...tt,zt]:0===Bt?(zt.split("/").forEach((on,tn)=>{0==tn&&"."===on||(0==tn&&""===on?oe=!0:".."===on?Se++:""!=on&&tt.push(on))}),tt):[...tt,zt]},[]);return new he(oe,Se,Oe)}(Se);if(zt.toRoot())return $(tt,tt,new Ee([],{}),oe,Oe);const Bt=function Ft(ue,Se,oe){if(ue.isAbsolute)return new bt(Se,!0,0);if(!oe)return new bt(Se,!1,NaN);if(null===oe.parent)return new bt(oe,!0,0);const Oe=N(ue.commands[0])?0:1;return function sn(ue,Se,oe){let Oe=ue,tt=Se,zt=oe;for(;zt>tt;){if(zt-=tt,Oe=Oe.parent,!Oe)throw new e.vHH(4005,!1);tt=Oe.segments.length}return new bt(Oe,!1,tt-zt)}(oe,oe.segments.length-1+Oe,ue.numberOfDoubleDots)}(zt,tt,ue),on=Bt.processChildren?Dn(Bt.segmentGroup,Bt.index,zt.commands):vn(Bt.segmentGroup,Bt.index,zt.commands);return $(tt,Bt.segmentGroup,on,oe,Oe)}function N(ue){return"object"==typeof ue&&null!=ue&&!ue.outlets&&!ue.segmentPath}function S(ue){return"object"==typeof ue&&null!=ue&&ue.outlets}function $(ue,Se,oe,Oe,tt){let Bt,zt={};Oe&&Object.entries(Oe).forEach(([tn,xn])=>{zt[tn]=Array.isArray(xn)?xn.map(ti=>`${ti}`):`${xn}`}),Bt=ue===Se?oe:R(ue,Se,oe);const on=Pe(Je(Bt));return new B(on,zt,tt)}function R(ue,Se,oe){const Oe={};return Object.entries(ue.children).forEach(([tt,zt])=>{Oe[tt]=zt===Se?oe:R(zt,Se,oe)}),new Ee(ue.segments,Oe)}class he{constructor(Se,oe,Oe){if(this.isAbsolute=Se,this.numberOfDoubleDots=oe,this.commands=Oe,Se&&Oe.length>0&&N(Oe[0]))throw new e.vHH(4003,!1);const tt=Oe.find(S);if(tt&&tt!==Be(Oe))throw new e.vHH(4004,!1)}toRoot(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}class bt{constructor(Se,oe,Oe){this.segmentGroup=Se,this.processChildren=oe,this.index=Oe}}function vn(ue,Se,oe){if(ue||(ue=new Ee([],{})),0===ue.segments.length&&ue.hasChildren())return Dn(ue,Se,oe);const Oe=function Mn(ue,Se,oe){let Oe=0,tt=Se;const zt={match:!1,pathIndex:0,commandIndex:0};for(;tt=oe.length)return zt;const Bt=ue.segments[tt],on=oe[Oe];if(S(on))break;const tn=`${on}`,xn=Oe0&&void 0===tn)break;if(tn&&xn&&"object"==typeof xn&&void 0===xn.outlets){if(!qn(tn,xn,Bt))return zt;Oe+=2}else{if(!qn(tn,{},Bt))return zt;Oe++}tt++}return{match:!0,pathIndex:tt,commandIndex:Oe}}(ue,Se,oe),tt=oe.slice(Oe.commandIndex);if(Oe.match&&Oe.pathIndexzt!==ie)&&ue.children[ie]&&1===ue.numberOfChildren&&0===ue.children[ie].segments.length){const zt=Dn(ue.children[ie],Se,oe);return new Ee(ue.segments,zt.children)}return Object.entries(Oe).forEach(([zt,Bt])=>{"string"==typeof Bt&&(Bt=[Bt]),null!==Bt&&(tt[zt]=vn(ue.children[zt],Se,Bt))}),Object.entries(ue.children).forEach(([zt,Bt])=>{void 0===Oe[zt]&&(tt[zt]=Bt)}),new Ee(ue.segments,tt)}}function En(ue,Se,oe){const Oe=ue.segments.slice(0,Se);let tt=0;for(;tt{"string"==typeof Oe&&(Oe=[Oe]),null!==Oe&&(Se[oe]=En(new Ee([],{}),0,Oe))}),Se}function Rn(ue){const Se={};return Object.entries(ue).forEach(([oe,Oe])=>Se[oe]=`${Oe}`),Se}function qn(ue,Se,oe){return ue==oe.path&&ye(Se,oe.parameters)}const si="imperative";class Wn{constructor(Se,oe){this.id=Se,this.url=oe}}class ci extends Wn{constructor(Se,oe,Oe="imperative",tt=null){super(Se,oe),this.type=0,this.navigationTrigger=Oe,this.restoredState=tt}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}}class ri extends Wn{constructor(Se,oe,Oe){super(Se,oe),this.urlAfterRedirects=Oe,this.type=1}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}}class di extends Wn{constructor(Se,oe,Oe,tt){super(Se,oe),this.reason=Oe,this.code=tt,this.type=2}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}}class hi extends Wn{constructor(Se,oe,Oe,tt){super(Se,oe),this.reason=Oe,this.code=tt,this.type=16}}class fi extends Wn{constructor(Se,oe,Oe,tt){super(Se,oe),this.error=Oe,this.target=tt,this.type=3}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}}class zi extends Wn{constructor(Se,oe,Oe,tt){super(Se,oe),this.urlAfterRedirects=Oe,this.state=tt,this.type=4}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class Oi extends Wn{constructor(Se,oe,Oe,tt){super(Se,oe),this.urlAfterRedirects=Oe,this.state=tt,this.type=7}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class ei extends Wn{constructor(Se,oe,Oe,tt,zt){super(Se,oe),this.urlAfterRedirects=Oe,this.state=tt,this.shouldActivate=zt,this.type=8}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}}class po extends Wn{constructor(Se,oe,Oe,tt){super(Se,oe),this.urlAfterRedirects=Oe,this.state=tt,this.type=5}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class oo extends Wn{constructor(Se,oe,Oe,tt){super(Se,oe),this.urlAfterRedirects=Oe,this.state=tt,this.type=6}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class Wi{constructor(Se){this.route=Se,this.type=9}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}}class Ri{constructor(Se){this.route=Se,this.type=10}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}}class Li{constructor(Se){this.snapshot=Se,this.type=11}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class $i{constructor(Se){this.snapshot=Se,this.type=12}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class Qi{constructor(Se){this.snapshot=Se,this.type=13}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class Mo{constructor(Se){this.snapshot=Se,this.type=14}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class wi{constructor(Se,oe,Oe){this.routerEvent=Se,this.position=oe,this.anchor=Oe,this.type=15}toString(){return`Scroll(anchor: '${this.anchor}', position: '${this.position?`${this.position[0]}, ${this.position[1]}`:null}')`}}class Xi{}class Ei{constructor(Se){this.url=Se}}class qi{constructor(){this.outlet=null,this.route=null,this.injector=null,this.children=new Pi,this.attachRef=null}}let Pi=(()=>{class ue{constructor(){this.contexts=new Map}onChildOutletCreated(oe,Oe){const tt=this.getOrCreateContext(oe);tt.outlet=Oe,this.contexts.set(oe,tt)}onChildOutletDestroyed(oe){const Oe=this.getContext(oe);Oe&&(Oe.outlet=null,Oe.attachRef=null)}onOutletDeactivated(){const oe=this.contexts;return this.contexts=new Map,oe}onOutletReAttached(oe){this.contexts=oe}getOrCreateContext(oe){let Oe=this.getContext(oe);return Oe||(Oe=new qi,this.contexts.set(oe,Oe)),Oe}getContext(oe){return this.contexts.get(oe)||null}static#e=this.\u0275fac=function(Oe){return new(Oe||ue)};static#t=this.\u0275prov=e.Yz7({token:ue,factory:ue.\u0275fac,providedIn:"root"})}return ue})();class Ii{constructor(Se){this._root=Se}get root(){return this._root.value}parent(Se){const oe=this.pathFromRoot(Se);return oe.length>1?oe[oe.length-2]:null}children(Se){const oe=ki(Se,this._root);return oe?oe.children.map(Oe=>Oe.value):[]}firstChild(Se){const oe=ki(Se,this._root);return oe&&oe.children.length>0?oe.children[0].value:null}siblings(Se){const oe=oi(Se,this._root);return oe.length<2?[]:oe[oe.length-2].children.map(tt=>tt.value).filter(tt=>tt!==Se)}pathFromRoot(Se){return oi(Se,this._root).map(oe=>oe.value)}}function ki(ue,Se){if(ue===Se.value)return Se;for(const oe of Se.children){const Oe=ki(ue,oe);if(Oe)return Oe}return null}function oi(ue,Se){if(ue===Se.value)return[Se];for(const oe of Se.children){const Oe=oi(ue,oe);if(Oe.length)return Oe.unshift(Se),Oe}return[]}class Bn{constructor(Se,oe){this.value=Se,this.children=oe}toString(){return`TreeNode(${this.value})`}}function Et(ue){const Se={};return ue&&ue.children.forEach(oe=>Se[oe.value.outlet]=oe),Se}class un extends Ii{constructor(Se,oe){super(Se),this.snapshot=oe,gi(this,Se)}toString(){return this.snapshot.toString()}}function lt(ue,Se){const oe=function Ct(ue,Se){const Bt=new Ln([],{},{},"",{},ie,Se,null,{});return new Sn("",new Bn(Bt,[]))}(0,Se),Oe=new l.X([new Ie("",{})]),tt=new l.X({}),zt=new l.X({}),Bt=new l.X({}),on=new l.X(""),tn=new At(Oe,tt,Bt,on,zt,ie,Se,oe.root);return tn.snapshot=oe.root,new un(new Bn(tn,[]),oe)}class At{constructor(Se,oe,Oe,tt,zt,Bt,on,tn){this.urlSubject=Se,this.paramsSubject=oe,this.queryParamsSubject=Oe,this.fragmentSubject=tt,this.dataSubject=zt,this.outlet=Bt,this.component=on,this._futureSnapshot=tn,this.title=this.dataSubject?.pipe((0,y.U)(xn=>xn[ae]))??(0,i.of)(void 0),this.url=Se,this.params=oe,this.queryParams=Oe,this.fragment=tt,this.data=zt}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=this.params.pipe((0,y.U)(Se=>Me(Se)))),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe((0,y.U)(Se=>Me(Se)))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}}function Qt(ue,Se="emptyOnly"){const oe=ue.pathFromRoot;let Oe=0;if("always"!==Se)for(Oe=oe.length-1;Oe>=1;){const tt=oe[Oe],zt=oe[Oe-1];if(tt.routeConfig&&""===tt.routeConfig.path)Oe--;else{if(zt.component)break;Oe--}}return function gn(ue){return ue.reduce((Se,oe)=>({params:{...Se.params,...oe.params},data:{...Se.data,...oe.data},resolve:{...oe.data,...Se.resolve,...oe.routeConfig?.data,...oe._resolvedData}}),{params:{},data:{},resolve:{}})}(oe.slice(Oe))}class Ln{get title(){return this.data?.[ae]}constructor(Se,oe,Oe,tt,zt,Bt,on,tn,xn){this.url=Se,this.params=oe,this.queryParams=Oe,this.fragment=tt,this.data=zt,this.outlet=Bt,this.component=on,this.routeConfig=tn,this._resolve=xn}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=Me(this.params)),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=Me(this.queryParams)),this._queryParamMap}toString(){return`Route(url:'${this.url.map(Oe=>Oe.toString()).join("/")}', path:'${this.routeConfig?this.routeConfig.path:""}')`}}class Sn extends Ii{constructor(Se,oe){super(oe),this.url=Se,gi(this,oe)}toString(){return St(this._root)}}function gi(ue,Se){Se.value._routerState=ue,Se.children.forEach(oe=>gi(ue,oe))}function St(ue){const Se=ue.children.length>0?` { ${ue.children.map(St).join(", ")} } `:"";return`${ue.value}${Se}`}function gt(ue){if(ue.snapshot){const Se=ue.snapshot,oe=ue._futureSnapshot;ue.snapshot=oe,ye(Se.queryParams,oe.queryParams)||ue.queryParamsSubject.next(oe.queryParams),Se.fragment!==oe.fragment&&ue.fragmentSubject.next(oe.fragment),ye(Se.params,oe.params)||ue.paramsSubject.next(oe.params),function q(ue,Se){if(ue.length!==Se.length)return!1;for(let oe=0;oeye(oe.parameters,Se[Oe].parameters))}(ue.url,Se.url);return oe&&!(!ue.parent!=!Se.parent)&&(!ue.parent||We(ue.parent,Se.parent))}let Nt=(()=>{class ue{constructor(){this.activated=null,this._activatedRoute=null,this.name=ie,this.activateEvents=new e.vpe,this.deactivateEvents=new e.vpe,this.attachEvents=new e.vpe,this.detachEvents=new e.vpe,this.parentContexts=(0,e.f3M)(Pi),this.location=(0,e.f3M)(e.s_b),this.changeDetector=(0,e.f3M)(e.sBO),this.environmentInjector=(0,e.f3M)(e.lqb),this.inputBinder=(0,e.f3M)(ln,{optional:!0}),this.supportsBindingToComponentInputs=!0}get activatedComponentRef(){return this.activated}ngOnChanges(oe){if(oe.name){const{firstChange:Oe,previousValue:tt}=oe.name;if(Oe)return;this.isTrackedInParentContexts(tt)&&(this.deactivate(),this.parentContexts.onChildOutletDestroyed(tt)),this.initializeOutletWithName()}}ngOnDestroy(){this.isTrackedInParentContexts(this.name)&&this.parentContexts.onChildOutletDestroyed(this.name),this.inputBinder?.unsubscribeFromRouteData(this)}isTrackedInParentContexts(oe){return this.parentContexts.getContext(oe)?.outlet===this}ngOnInit(){this.initializeOutletWithName()}initializeOutletWithName(){if(this.parentContexts.onChildOutletCreated(this.name,this),this.activated)return;const oe=this.parentContexts.getContext(this.name);oe?.route&&(oe.attachRef?this.attach(oe.attachRef,oe.route):this.activateWith(oe.route,oe.injector))}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new e.vHH(4012,!1);return this.activated.instance}get activatedRoute(){if(!this.activated)throw new e.vHH(4012,!1);return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new e.vHH(4012,!1);this.location.detach();const oe=this.activated;return this.activated=null,this._activatedRoute=null,this.detachEvents.emit(oe.instance),oe}attach(oe,Oe){this.activated=oe,this._activatedRoute=Oe,this.location.insert(oe.hostView),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.attachEvents.emit(oe.instance)}deactivate(){if(this.activated){const oe=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(oe)}}activateWith(oe,Oe){if(this.isActivated)throw new e.vHH(4013,!1);this._activatedRoute=oe;const tt=this.location,Bt=oe.snapshot.component,on=this.parentContexts.getOrCreateContext(this.name).children,tn=new Kt(oe,on,tt.injector);this.activated=tt.createComponent(Bt,{index:tt.length,injector:tn,environmentInjector:Oe??this.environmentInjector}),this.changeDetector.markForCheck(),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.activateEvents.emit(this.activated.instance)}static#e=this.\u0275fac=function(Oe){return new(Oe||ue)};static#t=this.\u0275dir=e.lG2({type:ue,selectors:[["router-outlet"]],inputs:{name:"name"},outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"],standalone:!0,features:[e.TTD]})}return ue})();class Kt{constructor(Se,oe,Oe){this.route=Se,this.childContexts=oe,this.parent=Oe}get(Se,oe){return Se===At?this.route:Se===Pi?this.childContexts:this.parent.get(Se,oe)}}const ln=new e.OlP("");let zn=(()=>{class ue{constructor(){this.outletDataSubscriptions=new Map}bindActivatedRouteToOutletComponent(oe){this.unsubscribeFromRouteData(oe),this.subscribeToRouteData(oe)}unsubscribeFromRouteData(oe){this.outletDataSubscriptions.get(oe)?.unsubscribe(),this.outletDataSubscriptions.delete(oe)}subscribeToRouteData(oe){const{activatedRoute:Oe}=oe,tt=(0,C.a)([Oe.queryParams,Oe.params,Oe.data]).pipe((0,T.w)(([zt,Bt,on],tn)=>(on={...zt,...Bt,...on},0===tn?(0,i.of)(on):Promise.resolve(on)))).subscribe(zt=>{if(!oe.isActivated||!oe.activatedComponentRef||oe.activatedRoute!==Oe||null===Oe.component)return void this.unsubscribeFromRouteData(oe);const Bt=(0,e.qFp)(Oe.component);if(Bt)for(const{templateName:on}of Bt.inputs)oe.activatedComponentRef.setInput(on,zt[on]);else this.unsubscribeFromRouteData(oe)});this.outletDataSubscriptions.set(oe,tt)}static#e=this.\u0275fac=function(Oe){return new(Oe||ue)};static#t=this.\u0275prov=e.Yz7({token:ue,factory:ue.\u0275fac})}return ue})();function Qn(ue,Se,oe){if(oe&&ue.shouldReuseRoute(Se.value,oe.value.snapshot)){const Oe=oe.value;Oe._futureSnapshot=Se.value;const tt=function ui(ue,Se,oe){return Se.children.map(Oe=>{for(const tt of oe.children)if(ue.shouldReuseRoute(Oe.value,tt.value.snapshot))return Qn(ue,Oe,tt);return Qn(ue,Oe)})}(ue,Se,oe);return new Bn(Oe,tt)}{if(ue.shouldAttach(Se.value)){const zt=ue.retrieve(Se.value);if(null!==zt){const Bt=zt.route;return Bt.value._futureSnapshot=Se.value,Bt.children=Se.children.map(on=>Qn(ue,on)),Bt}}const Oe=function eo(ue){return new At(new l.X(ue.url),new l.X(ue.params),new l.X(ue.queryParams),new l.X(ue.fragment),new l.X(ue.data),ue.outlet,ue.component,ue)}(Se.value),tt=Se.children.map(zt=>Qn(ue,zt));return new Bn(Oe,tt)}}const Ui="ngNavigationCancelingError";function Un(ue,Se){const{redirectTo:oe,navigationBehaviorOptions:Oe}=Ke(Se)?{redirectTo:Se,navigationBehaviorOptions:void 0}:Se,tt=go(!1,0,Se);return tt.url=oe,tt.navigationBehaviorOptions=Oe,tt}function go(ue,Se,oe){const Oe=new Error("NavigationCancelingError: "+(ue||""));return Oe[Ui]=!0,Oe.cancellationCode=Se,oe&&(Oe.url=oe),Oe}function xo(ue){return ue&&ue[Ui]}let Ti=(()=>{class ue{static#e=this.\u0275fac=function(Oe){return new(Oe||ue)};static#t=this.\u0275cmp=e.Xpm({type:ue,selectors:[["ng-component"]],standalone:!0,features:[e.jDz],decls:1,vars:0,template:function(Oe,tt){1&Oe&&e._UZ(0,"router-outlet")},dependencies:[Nt],encapsulation:2})}return ue})();function Jn(ue){const Se=ue.children&&ue.children.map(Jn),oe=Se?{...ue,children:Se}:{...ue};return!oe.component&&!oe.loadComponent&&(Se||oe.loadChildren)&&oe.outlet&&oe.outlet!==ie&&(oe.component=Ti),oe}function to(ue){return ue.outlet||ie}function no(ue){if(!ue)return null;if(ue.routeConfig?._injector)return ue.routeConfig._injector;for(let Se=ue.parent;Se;Se=Se.parent){const oe=Se.routeConfig;if(oe?._loadedInjector)return oe._loadedInjector;if(oe?._injector)return oe._injector}return null}class Fi{constructor(Se,oe,Oe,tt,zt){this.routeReuseStrategy=Se,this.futureState=oe,this.currState=Oe,this.forwardEvent=tt,this.inputBindingEnabled=zt}activate(Se){const oe=this.futureState._root,Oe=this.currState?this.currState._root:null;this.deactivateChildRoutes(oe,Oe,Se),gt(this.futureState.root),this.activateChildRoutes(oe,Oe,Se)}deactivateChildRoutes(Se,oe,Oe){const tt=Et(oe);Se.children.forEach(zt=>{const Bt=zt.value.outlet;this.deactivateRoutes(zt,tt[Bt],Oe),delete tt[Bt]}),Object.values(tt).forEach(zt=>{this.deactivateRouteAndItsChildren(zt,Oe)})}deactivateRoutes(Se,oe,Oe){const tt=Se.value,zt=oe?oe.value:null;if(tt===zt)if(tt.component){const Bt=Oe.getContext(tt.outlet);Bt&&this.deactivateChildRoutes(Se,oe,Bt.children)}else this.deactivateChildRoutes(Se,oe,Oe);else zt&&this.deactivateRouteAndItsChildren(oe,Oe)}deactivateRouteAndItsChildren(Se,oe){Se.value.component&&this.routeReuseStrategy.shouldDetach(Se.value.snapshot)?this.detachAndStoreRouteSubtree(Se,oe):this.deactivateRouteAndOutlet(Se,oe)}detachAndStoreRouteSubtree(Se,oe){const Oe=oe.getContext(Se.value.outlet),tt=Oe&&Se.value.component?Oe.children:oe,zt=Et(Se);for(const Bt of Object.keys(zt))this.deactivateRouteAndItsChildren(zt[Bt],tt);if(Oe&&Oe.outlet){const Bt=Oe.outlet.detach(),on=Oe.children.onOutletDeactivated();this.routeReuseStrategy.store(Se.value.snapshot,{componentRef:Bt,route:Se,contexts:on})}}deactivateRouteAndOutlet(Se,oe){const Oe=oe.getContext(Se.value.outlet),tt=Oe&&Se.value.component?Oe.children:oe,zt=Et(Se);for(const Bt of Object.keys(zt))this.deactivateRouteAndItsChildren(zt[Bt],tt);Oe&&(Oe.outlet&&(Oe.outlet.deactivate(),Oe.children.onOutletDeactivated()),Oe.attachRef=null,Oe.route=null)}activateChildRoutes(Se,oe,Oe){const tt=Et(oe);Se.children.forEach(zt=>{this.activateRoutes(zt,tt[zt.value.outlet],Oe),this.forwardEvent(new Mo(zt.value.snapshot))}),Se.children.length&&this.forwardEvent(new $i(Se.value.snapshot))}activateRoutes(Se,oe,Oe){const tt=Se.value,zt=oe?oe.value:null;if(gt(tt),tt===zt)if(tt.component){const Bt=Oe.getOrCreateContext(tt.outlet);this.activateChildRoutes(Se,oe,Bt.children)}else this.activateChildRoutes(Se,oe,Oe);else if(tt.component){const Bt=Oe.getOrCreateContext(tt.outlet);if(this.routeReuseStrategy.shouldAttach(tt.snapshot)){const on=this.routeReuseStrategy.retrieve(tt.snapshot);this.routeReuseStrategy.store(tt.snapshot,null),Bt.children.onOutletReAttached(on.contexts),Bt.attachRef=on.componentRef,Bt.route=on.route.value,Bt.outlet&&Bt.outlet.attach(on.componentRef,on.route.value),gt(on.route.value),this.activateChildRoutes(Se,null,Bt.children)}else{const on=no(tt.snapshot);Bt.attachRef=null,Bt.route=tt,Bt.injector=on,Bt.outlet&&Bt.outlet.activateWith(tt,Bt.injector),this.activateChildRoutes(Se,null,Bt.children)}}else this.activateChildRoutes(Se,null,Oe)}}class lo{constructor(Se){this.path=Se,this.route=this.path[this.path.length-1]}}class Ai{constructor(Se,oe){this.component=Se,this.route=oe}}function Os(ue,Se,oe){const Oe=ue._root;return Z(Oe,Se?Se._root:null,oe,[Oe.value])}function Gt(ue,Se){const oe=Symbol(),Oe=Se.get(ue,oe);return Oe===oe?"function"!=typeof ue||(0,e.Z0I)(ue)?Se.get(ue):ue:Oe}function Z(ue,Se,oe,Oe,tt={canDeactivateChecks:[],canActivateChecks:[]}){const zt=Et(Se);return ue.children.forEach(Bt=>{(function dt(ue,Se,oe,Oe,tt={canDeactivateChecks:[],canActivateChecks:[]}){const zt=ue.value,Bt=Se?Se.value:null,on=oe?oe.getContext(ue.value.outlet):null;if(Bt&&zt.routeConfig===Bt.routeConfig){const tn=function vt(ue,Se,oe){if("function"==typeof oe)return oe(ue,Se);switch(oe){case"pathParamsChange":return!pt(ue.url,Se.url);case"pathParamsOrQueryParamsChange":return!pt(ue.url,Se.url)||!ye(ue.queryParams,Se.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!We(ue,Se)||!ye(ue.queryParams,Se.queryParams);default:return!We(ue,Se)}}(Bt,zt,zt.routeConfig.runGuardsAndResolvers);tn?tt.canActivateChecks.push(new lo(Oe)):(zt.data=Bt.data,zt._resolvedData=Bt._resolvedData),Z(ue,Se,zt.component?on?on.children:null:oe,Oe,tt),tn&&on&&on.outlet&&on.outlet.isActivated&&tt.canDeactivateChecks.push(new Ai(on.outlet.component,Bt))}else Bt&&$t(Se,on,tt),tt.canActivateChecks.push(new lo(Oe)),Z(ue,null,zt.component?on?on.children:null:oe,Oe,tt)})(Bt,zt[Bt.value.outlet],oe,Oe.concat([Bt.value]),tt),delete zt[Bt.value.outlet]}),Object.entries(zt).forEach(([Bt,on])=>$t(on,oe.getContext(Bt),tt)),tt}function $t(ue,Se,oe){const Oe=Et(ue),tt=ue.value;Object.entries(Oe).forEach(([zt,Bt])=>{$t(Bt,tt.component?Se?Se.children.getContext(zt):null:Se,oe)}),oe.canDeactivateChecks.push(new Ai(tt.component&&Se&&Se.outlet&&Se.outlet.isActivated?Se.outlet.component:null,tt))}function yn(ue){return"function"==typeof ue}function _i(ue){return ue instanceof E.K||"EmptyError"===ue?.name}const fs=Symbol("INITIAL_VALUE");function $o(){return(0,T.w)(ue=>(0,C.a)(ue.map(Se=>Se.pipe((0,x.q)(1),(0,D.O)(fs)))).pipe((0,y.U)(Se=>{for(const oe of Se)if(!0!==oe){if(oe===fs)return fs;if(!1===oe||oe instanceof B)return oe}return!0}),(0,_.h)(Se=>Se!==fs),(0,x.q)(1)))}function Fo(ue){return(0,M.z)((0,k.b)(Se=>{if(Ke(Se))throw Un(0,Se)}),(0,y.U)(Se=>!0===Se))}class Co{constructor(Se){this.segmentGroup=Se||null}}class Eo{constructor(Se){this.urlTree=Se}}function Bo(ue){return(0,h._)(new Co(ue))}function $s(ue){return(0,h._)(new Eo(ue))}class Do{constructor(Se,oe){this.urlSerializer=Se,this.urlTree=oe}noMatchError(Se){return new e.vHH(4002,!1)}lineralizeSegments(Se,oe){let Oe=[],tt=oe.root;for(;;){if(Oe=Oe.concat(tt.segments),0===tt.numberOfChildren)return(0,i.of)(Oe);if(tt.numberOfChildren>1||!tt.children[ie])return(0,h._)(new e.vHH(4e3,!1));tt=tt.children[ie]}}applyRedirectCommands(Se,oe,Oe){return this.applyRedirectCreateUrlTree(oe,this.urlSerializer.parse(oe),Se,Oe)}applyRedirectCreateUrlTree(Se,oe,Oe,tt){const zt=this.createSegmentGroup(Se,oe.root,Oe,tt);return new B(zt,this.createQueryParams(oe.queryParams,this.urlTree.queryParams),oe.fragment)}createQueryParams(Se,oe){const Oe={};return Object.entries(Se).forEach(([tt,zt])=>{if("string"==typeof zt&&zt.startsWith(":")){const on=zt.substring(1);Oe[tt]=oe[on]}else Oe[tt]=zt}),Oe}createSegmentGroup(Se,oe,Oe,tt){const zt=this.createSegments(Se,oe.segments,Oe,tt);let Bt={};return Object.entries(oe.children).forEach(([on,tn])=>{Bt[on]=this.createSegmentGroup(Se,tn,Oe,tt)}),new Ee(zt,Bt)}createSegments(Se,oe,Oe,tt){return oe.map(zt=>zt.path.startsWith(":")?this.findPosParam(Se,zt,tt):this.findOrReturn(zt,Oe))}findPosParam(Se,oe,Oe){const tt=Oe[oe.path.substring(1)];if(!tt)throw new e.vHH(4001,!1);return tt}findOrReturn(Se,oe){let Oe=0;for(const tt of oe){if(tt.path===Se.path)return oe.splice(Oe),tt;Oe++}return Se}}const ws={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function er(ue,Se,oe,Oe,tt){const zt=Ps(ue,Se,oe);return zt.matched?(Oe=function qo(ue,Se){return ue.providers&&!ue._injector&&(ue._injector=(0,e.MMx)(ue.providers,Se,`Route: ${ue.path}`)),ue._injector??Se}(Se,Oe),function ys(ue,Se,oe,Oe){const tt=Se.canMatch;if(!tt||0===tt.length)return(0,i.of)(!0);const zt=tt.map(Bt=>{const on=Gt(Bt,ue);return Re(function Yi(ue){return ue&&yn(ue.canMatch)}(on)?on.canMatch(Se,oe):ue.runInContext(()=>on(Se,oe)))});return(0,i.of)(zt).pipe($o(),Fo())}(Oe,Se,oe).pipe((0,y.U)(Bt=>!0===Bt?zt:{...ws}))):(0,i.of)(zt)}function Ps(ue,Se,oe){if(""===Se.path)return"full"===Se.pathMatch&&(ue.hasChildren()||oe.length>0)?{...ws}:{matched:!0,consumedSegments:[],remainingSegments:oe,parameters:{},positionalParamSegments:{}};const tt=(Se.matcher||Ye)(oe,ue,Se);if(!tt)return{...ws};const zt={};Object.entries(tt.posParams??{}).forEach(([on,tn])=>{zt[on]=tn.path});const Bt=tt.consumed.length>0?{...zt,...tt.consumed[tt.consumed.length-1].parameters}:zt;return{matched:!0,consumedSegments:tt.consumed,remainingSegments:oe.slice(tt.consumed.length),parameters:Bt,positionalParamSegments:tt.posParams??{}}}function Ho(ue,Se,oe,Oe){return oe.length>0&&function ms(ue,Se,oe){return oe.some(Oe=>fn(ue,Se,Oe)&&to(Oe)!==ie)}(ue,oe,Oe)?{segmentGroup:new Ee(Se,Yt(Oe,new Ee(oe,ue.children))),slicedSegments:[]}:0===oe.length&&function Pn(ue,Se,oe){return oe.some(Oe=>fn(ue,Se,Oe))}(ue,oe,Oe)?{segmentGroup:new Ee(ue.segments,ur(ue,0,oe,Oe,ue.children)),slicedSegments:oe}:{segmentGroup:new Ee(ue.segments,ue.children),slicedSegments:oe}}function ur(ue,Se,oe,Oe,tt){const zt={};for(const Bt of Oe)if(fn(ue,oe,Bt)&&!tt[to(Bt)]){const on=new Ee([],{});zt[to(Bt)]=on}return{...tt,...zt}}function Yt(ue,Se){const oe={};oe[ie]=Se;for(const Oe of ue)if(""===Oe.path&&to(Oe)!==ie){const tt=new Ee([],{});oe[to(Oe)]=tt}return oe}function fn(ue,Se,oe){return(!(ue.hasChildren()||Se.length>0)||"full"!==oe.pathMatch)&&""===oe.path}class zs{constructor(Se,oe,Oe,tt,zt,Bt,on){this.injector=Se,this.configLoader=oe,this.rootComponentType=Oe,this.config=tt,this.urlTree=zt,this.paramsInheritanceStrategy=Bt,this.urlSerializer=on,this.allowRedirects=!0,this.applyRedirects=new Do(this.urlSerializer,this.urlTree)}noMatchError(Se){return new e.vHH(4002,!1)}recognize(){const Se=Ho(this.urlTree.root,[],[],this.config).segmentGroup;return this.processSegmentGroup(this.injector,this.config,Se,ie).pipe((0,F.K)(oe=>{if(oe instanceof Eo)return this.allowRedirects=!1,this.urlTree=oe.urlTree,this.match(oe.urlTree);throw oe instanceof Co?this.noMatchError(oe):oe}),(0,y.U)(oe=>{const Oe=new Ln([],Object.freeze({}),Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,{},ie,this.rootComponentType,null,{}),tt=new Bn(Oe,oe),zt=new Sn("",tt),Bt=function ve(ue,Se,oe=null,Oe=null){return b(it(ue),Se,oe,Oe)}(Oe,[],this.urlTree.queryParams,this.urlTree.fragment);return Bt.queryParams=this.urlTree.queryParams,zt.url=this.urlSerializer.serialize(Bt),this.inheritParamsAndData(zt._root),{state:zt,tree:Bt}}))}match(Se){return this.processSegmentGroup(this.injector,this.config,Se.root,ie).pipe((0,F.K)(Oe=>{throw Oe instanceof Co?this.noMatchError(Oe):Oe}))}inheritParamsAndData(Se){const oe=Se.value,Oe=Qt(oe,this.paramsInheritanceStrategy);oe.params=Object.freeze(Oe.params),oe.data=Object.freeze(Oe.data),Se.children.forEach(tt=>this.inheritParamsAndData(tt))}processSegmentGroup(Se,oe,Oe,tt){return 0===Oe.segments.length&&Oe.hasChildren()?this.processChildren(Se,oe,Oe):this.processSegment(Se,oe,Oe,Oe.segments,tt,!0)}processChildren(Se,oe,Oe){const tt=[];for(const zt of Object.keys(Oe.children))"primary"===zt?tt.unshift(zt):tt.push(zt);return(0,t.D)(tt).pipe((0,A.b)(zt=>{const Bt=Oe.children[zt],on=function es(ue,Se){const oe=ue.filter(Oe=>to(Oe)===Se);return oe.push(...ue.filter(Oe=>to(Oe)!==Se)),oe}(oe,zt);return this.processSegmentGroup(Se,on,Bt,zt)}),function Y(ue,Se){return(0,W.e)(function _e(ue,Se,oe,Oe,tt){return(zt,Bt)=>{let on=oe,tn=Se,xn=0;zt.subscribe((0,K.x)(Bt,ti=>{const Vi=xn++;tn=on?ue(tn,ti,Vi):(on=!0,ti),Oe&&Bt.next(tn)},tt&&(()=>{on&&Bt.next(tn),Bt.complete()})))}}(ue,Se,arguments.length>=2,!0))}((zt,Bt)=>(zt.push(...Bt),zt)),(0,G.d)(null),function ne(ue,Se){const oe=arguments.length>=2;return Oe=>Oe.pipe(ue?(0,_.h)((tt,zt)=>ue(tt,zt,Oe)):te.y,H(1),oe?(0,G.d)(Se):(0,j.T)(()=>new E.K))}(),(0,P.z)(zt=>{if(null===zt)return Bo(Oe);const Bt=Tr(zt);return function js(ue){ue.sort((Se,oe)=>Se.value.outlet===ie?-1:oe.value.outlet===ie?1:Se.value.outlet.localeCompare(oe.value.outlet))}(Bt),(0,i.of)(Bt)}))}processSegment(Se,oe,Oe,tt,zt,Bt){return(0,t.D)(oe).pipe((0,A.b)(on=>this.processSegmentAgainstRoute(on._injector??Se,oe,on,Oe,tt,zt,Bt).pipe((0,F.K)(tn=>{if(tn instanceof Co)return(0,i.of)(null);throw tn}))),(0,O.P)(on=>!!on),(0,F.K)(on=>{if(_i(on))return function Cs(ue,Se,oe){return 0===Se.length&&!ue.children[oe]}(Oe,tt,zt)?(0,i.of)([]):Bo(Oe);throw on}))}processSegmentAgainstRoute(Se,oe,Oe,tt,zt,Bt,on){return function ss(ue,Se,oe,Oe){return!!(to(ue)===Oe||Oe!==ie&&fn(Se,oe,ue))&&("**"===ue.path||Ps(Se,ue,oe).matched)}(Oe,tt,zt,Bt)?void 0===Oe.redirectTo?this.matchSegmentAgainstRoute(Se,tt,Oe,zt,Bt,on):on&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(Se,tt,oe,Oe,zt,Bt):Bo(tt):Bo(tt)}expandSegmentAgainstRouteUsingRedirect(Se,oe,Oe,tt,zt,Bt){return"**"===tt.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(Se,Oe,tt,Bt):this.expandRegularSegmentAgainstRouteUsingRedirect(Se,oe,Oe,tt,zt,Bt)}expandWildCardWithParamsAgainstRouteUsingRedirect(Se,oe,Oe,tt){const zt=this.applyRedirects.applyRedirectCommands([],Oe.redirectTo,{});return Oe.redirectTo.startsWith("/")?$s(zt):this.applyRedirects.lineralizeSegments(Oe,zt).pipe((0,P.z)(Bt=>{const on=new Ee(Bt,{});return this.processSegment(Se,oe,on,Bt,tt,!1)}))}expandRegularSegmentAgainstRouteUsingRedirect(Se,oe,Oe,tt,zt,Bt){const{matched:on,consumedSegments:tn,remainingSegments:xn,positionalParamSegments:ti}=Ps(oe,tt,zt);if(!on)return Bo(oe);const Vi=this.applyRedirects.applyRedirectCommands(tn,tt.redirectTo,ti);return tt.redirectTo.startsWith("/")?$s(Vi):this.applyRedirects.lineralizeSegments(tt,Vi).pipe((0,P.z)(Ci=>this.processSegment(Se,Oe,oe,Ci.concat(xn),Bt,!1)))}matchSegmentAgainstRoute(Se,oe,Oe,tt,zt,Bt){let on;if("**"===Oe.path){const tn=tt.length>0?Be(tt).parameters:{},xn=new Ln(tt,tn,Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,sa(Oe),to(Oe),Oe.component??Oe._loadedComponent??null,Oe,Is(Oe));on=(0,i.of)({snapshot:xn,consumedSegments:[],remainingSegments:[]}),oe.children={}}else on=er(oe,Oe,tt,Se).pipe((0,y.U)(({matched:tn,consumedSegments:xn,remainingSegments:ti,parameters:Vi})=>tn?{snapshot:new Ln(xn,Vi,Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,sa(Oe),to(Oe),Oe.component??Oe._loadedComponent??null,Oe,Is(Oe)),consumedSegments:xn,remainingSegments:ti}:null));return on.pipe((0,T.w)(tn=>null===tn?Bo(oe):this.getChildConfig(Se=Oe._injector??Se,Oe,tt).pipe((0,T.w)(({routes:xn})=>{const ti=Oe._loadedInjector??Se,{snapshot:Vi,consumedSegments:Ci,remainingSegments:Po}=tn,{segmentGroup:or,slicedSegments:Gs}=Ho(oe,Ci,Po,xn);if(0===Gs.length&&or.hasChildren())return this.processChildren(ti,xn,or).pipe((0,y.U)(Rs=>null===Rs?null:[new Bn(Vi,Rs)]));if(0===xn.length&&0===Gs.length)return(0,i.of)([new Bn(Vi,[])]);const as=to(Oe)===zt;return this.processSegment(ti,xn,or,Gs,as?ie:zt,!0).pipe((0,y.U)(Rs=>[new Bn(Vi,Rs)]))}))))}getChildConfig(Se,oe,Oe){return oe.children?(0,i.of)({routes:oe.children,injector:Se}):oe.loadChildren?void 0!==oe._loadedRoutes?(0,i.of)({routes:oe._loadedRoutes,injector:oe._loadedInjector}):function jo(ue,Se,oe,Oe){const tt=Se.canLoad;if(void 0===tt||0===tt.length)return(0,i.of)(!0);const zt=tt.map(Bt=>{const on=Gt(Bt,ue);return Re(function yi(ue){return ue&&yn(ue.canLoad)}(on)?on.canLoad(Se,oe):ue.runInContext(()=>on(Se,oe)))});return(0,i.of)(zt).pipe($o(),Fo())}(Se,oe,Oe).pipe((0,P.z)(tt=>tt?this.configLoader.loadChildren(Se,oe).pipe((0,k.b)(zt=>{oe._loadedRoutes=zt.routes,oe._loadedInjector=zt.injector})):function Qo(ue){return(0,h._)(go(!1,3))}())):(0,i.of)({routes:[],injector:Se})}}function zr(ue){const Se=ue.value.routeConfig;return Se&&""===Se.path}function Tr(ue){const Se=[],oe=new Set;for(const Oe of ue){if(!zr(Oe)){Se.push(Oe);continue}const tt=Se.find(zt=>Oe.value.routeConfig===zt.value.routeConfig);void 0!==tt?(tt.children.push(...Oe.children),oe.add(tt)):Se.push(Oe)}for(const Oe of oe){const tt=Tr(Oe.children);Se.push(new Bn(Oe.value,tt))}return Se.filter(Oe=>!oe.has(Oe))}function sa(ue){return ue.data||{}}function Is(ue){return ue.resolve||{}}function Hr(ue){return"string"==typeof ue.title||null===ue.title}function Ts(ue){return(0,T.w)(Se=>{const oe=ue(Se);return oe?(0,t.D)(oe).pipe((0,y.U)(()=>Se)):(0,i.of)(Se)})}const Zs=new e.OlP("ROUTES");let me=(()=>{class ue{constructor(){this.componentLoaders=new WeakMap,this.childrenLoaders=new WeakMap,this.compiler=(0,e.f3M)(e.Sil)}loadComponent(oe){if(this.componentLoaders.get(oe))return this.componentLoaders.get(oe);if(oe._loadedComponent)return(0,i.of)(oe._loadedComponent);this.onLoadStartListener&&this.onLoadStartListener(oe);const Oe=Re(oe.loadComponent()).pipe((0,y.U)(ut),(0,k.b)(zt=>{this.onLoadEndListener&&this.onLoadEndListener(oe),oe._loadedComponent=zt}),(0,re.x)(()=>{this.componentLoaders.delete(oe)})),tt=new g.c(Oe,()=>new d.x).pipe((0,be.x)());return this.componentLoaders.set(oe,tt),tt}loadChildren(oe,Oe){if(this.childrenLoaders.get(Oe))return this.childrenLoaders.get(Oe);if(Oe._loadedRoutes)return(0,i.of)({routes:Oe._loadedRoutes,injector:Oe._loadedInjector});this.onLoadStartListener&&this.onLoadStartListener(Oe);const zt=function _t(ue,Se,oe,Oe){return Re(ue.loadChildren()).pipe((0,y.U)(ut),(0,P.z)(tt=>tt instanceof e.YKP||Array.isArray(tt)?(0,i.of)(tt):(0,t.D)(Se.compileModuleAsync(tt))),(0,y.U)(tt=>{Oe&&Oe(ue);let zt,Bt,on=!1;return Array.isArray(tt)?(Bt=tt,!0):(zt=tt.create(oe).injector,Bt=zt.get(Zs,[],{optional:!0,self:!0}).flat()),{routes:Bt.map(Jn),injector:zt}}))}(Oe,this.compiler,oe,this.onLoadEndListener).pipe((0,re.x)(()=>{this.childrenLoaders.delete(Oe)})),Bt=new g.c(zt,()=>new d.x).pipe((0,be.x)());return this.childrenLoaders.set(Oe,Bt),Bt}static#e=this.\u0275fac=function(Oe){return new(Oe||ue)};static#t=this.\u0275prov=e.Yz7({token:ue,factory:ue.\u0275fac,providedIn:"root"})}return ue})();function ut(ue){return function Ve(ue){return ue&&"object"==typeof ue&&"default"in ue}(ue)?ue.default:ue}let Ht=(()=>{class ue{get hasRequestedNavigation(){return 0!==this.navigationId}constructor(){this.currentNavigation=null,this.currentTransition=null,this.lastSuccessfulNavigation=null,this.events=new d.x,this.transitionAbortSubject=new d.x,this.configLoader=(0,e.f3M)(me),this.environmentInjector=(0,e.f3M)(e.lqb),this.urlSerializer=(0,e.f3M)(Lt),this.rootContexts=(0,e.f3M)(Pi),this.inputBindingEnabled=null!==(0,e.f3M)(ln,{optional:!0}),this.navigationId=0,this.afterPreactivation=()=>(0,i.of)(void 0),this.rootComponentType=null,this.configLoader.onLoadEndListener=tt=>this.events.next(new Ri(tt)),this.configLoader.onLoadStartListener=tt=>this.events.next(new Wi(tt))}complete(){this.transitions?.complete()}handleNavigationRequest(oe){const Oe=++this.navigationId;this.transitions?.next({...this.transitions.value,...oe,id:Oe})}setupNavigations(oe,Oe,tt){return this.transitions=new l.X({id:0,currentUrlTree:Oe,currentRawUrl:Oe,currentBrowserUrl:Oe,extractedUrl:oe.urlHandlingStrategy.extract(Oe),urlAfterRedirects:oe.urlHandlingStrategy.extract(Oe),rawUrl:Oe,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:si,restoredState:null,currentSnapshot:tt.snapshot,targetSnapshot:null,currentRouterState:tt,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.transitions.pipe((0,_.h)(zt=>0!==zt.id),(0,y.U)(zt=>({...zt,extractedUrl:oe.urlHandlingStrategy.extract(zt.rawUrl)})),(0,T.w)(zt=>{this.currentTransition=zt;let Bt=!1,on=!1;return(0,i.of)(zt).pipe((0,k.b)(tn=>{this.currentNavigation={id:tn.id,initialUrl:tn.rawUrl,extractedUrl:tn.extractedUrl,trigger:tn.source,extras:tn.extras,previousNavigation:this.lastSuccessfulNavigation?{...this.lastSuccessfulNavigation,previousNavigation:null}:null}}),(0,T.w)(tn=>{const xn=tn.currentBrowserUrl.toString(),ti=!oe.navigated||tn.extractedUrl.toString()!==xn||xn!==tn.currentUrlTree.toString();if(!ti&&"reload"!==(tn.extras.onSameUrlNavigation??oe.onSameUrlNavigation)){const Ci="";return this.events.next(new hi(tn.id,this.urlSerializer.serialize(tn.rawUrl),Ci,0)),tn.resolve(null),v.E}if(oe.urlHandlingStrategy.shouldProcessUrl(tn.rawUrl))return(0,i.of)(tn).pipe((0,T.w)(Ci=>{const Po=this.transitions?.getValue();return this.events.next(new ci(Ci.id,this.urlSerializer.serialize(Ci.extractedUrl),Ci.source,Ci.restoredState)),Po!==this.transitions?.getValue()?v.E:Promise.resolve(Ci)}),function ra(ue,Se,oe,Oe,tt,zt){return(0,P.z)(Bt=>function ns(ue,Se,oe,Oe,tt,zt,Bt="emptyOnly"){return new zs(ue,Se,oe,Oe,tt,Bt,zt).recognize()}(ue,Se,oe,Oe,Bt.extractedUrl,tt,zt).pipe((0,y.U)(({state:on,tree:tn})=>({...Bt,targetSnapshot:on,urlAfterRedirects:tn}))))}(this.environmentInjector,this.configLoader,this.rootComponentType,oe.config,this.urlSerializer,oe.paramsInheritanceStrategy),(0,k.b)(Ci=>{zt.targetSnapshot=Ci.targetSnapshot,zt.urlAfterRedirects=Ci.urlAfterRedirects,this.currentNavigation={...this.currentNavigation,finalUrl:Ci.urlAfterRedirects};const Po=new zi(Ci.id,this.urlSerializer.serialize(Ci.extractedUrl),this.urlSerializer.serialize(Ci.urlAfterRedirects),Ci.targetSnapshot);this.events.next(Po)}));if(ti&&oe.urlHandlingStrategy.shouldProcessUrl(tn.currentRawUrl)){const{id:Ci,extractedUrl:Po,source:or,restoredState:Gs,extras:as}=tn,Rs=new ci(Ci,this.urlSerializer.serialize(Po),or,Gs);this.events.next(Rs);const Wr=lt(0,this.rootComponentType).snapshot;return this.currentTransition=zt={...tn,targetSnapshot:Wr,urlAfterRedirects:Po,extras:{...as,skipLocationChange:!1,replaceUrl:!1}},(0,i.of)(zt)}{const Ci="";return this.events.next(new hi(tn.id,this.urlSerializer.serialize(tn.extractedUrl),Ci,1)),tn.resolve(null),v.E}}),(0,k.b)(tn=>{const xn=new Oi(tn.id,this.urlSerializer.serialize(tn.extractedUrl),this.urlSerializer.serialize(tn.urlAfterRedirects),tn.targetSnapshot);this.events.next(xn)}),(0,y.U)(tn=>(this.currentTransition=zt={...tn,guards:Os(tn.targetSnapshot,tn.currentSnapshot,this.rootContexts)},zt)),function at(ue,Se){return(0,P.z)(oe=>{const{targetSnapshot:Oe,currentSnapshot:tt,guards:{canActivateChecks:zt,canDeactivateChecks:Bt}}=oe;return 0===Bt.length&&0===zt.length?(0,i.of)({...oe,guardsResult:!0}):function ht(ue,Se,oe,Oe){return(0,t.D)(ue).pipe((0,P.z)(tt=>function co(ue,Se,oe,Oe,tt){const zt=Se&&Se.routeConfig?Se.routeConfig.canDeactivate:null;if(!zt||0===zt.length)return(0,i.of)(!0);const Bt=zt.map(on=>{const tn=no(Se)??tt,xn=Gt(on,tn);return Re(function _o(ue){return ue&&yn(ue.canDeactivate)}(xn)?xn.canDeactivate(ue,Se,oe,Oe):tn.runInContext(()=>xn(ue,Se,oe,Oe))).pipe((0,O.P)())});return(0,i.of)(Bt).pipe($o())}(tt.component,tt.route,oe,Se,Oe)),(0,O.P)(tt=>!0!==tt,!0))}(Bt,Oe,tt,ue).pipe((0,P.z)(on=>on&&function In(ue){return"boolean"==typeof ue}(on)?function Fe(ue,Se,oe,Oe){return(0,t.D)(Se).pipe((0,A.b)(tt=>(0,u.z)(function jt(ue,Se){return null!==ue&&Se&&Se(new Li(ue)),(0,i.of)(!0)}(tt.route.parent,Oe),function Tt(ue,Se){return null!==ue&&Se&&Se(new Qi(ue)),(0,i.of)(!0)}(tt.route,Oe),function jn(ue,Se,oe){const Oe=Se[Se.length-1],zt=Se.slice(0,Se.length-1).reverse().map(Bt=>function rt(ue){const Se=ue.routeConfig?ue.routeConfig.canActivateChild:null;return Se&&0!==Se.length?{node:ue,guards:Se}:null}(Bt)).filter(Bt=>null!==Bt).map(Bt=>(0,z.P)(()=>{const on=Bt.guards.map(tn=>{const xn=no(Bt.node)??oe,ti=Gt(tn,xn);return Re(function io(ue){return ue&&yn(ue.canActivateChild)}(ti)?ti.canActivateChild(Oe,ue):xn.runInContext(()=>ti(Oe,ue))).pipe((0,O.P)())});return(0,i.of)(on).pipe($o())}));return(0,i.of)(zt).pipe($o())}(ue,tt.path,oe),function Nn(ue,Se,oe){const Oe=Se.routeConfig?Se.routeConfig.canActivate:null;if(!Oe||0===Oe.length)return(0,i.of)(!0);const tt=Oe.map(zt=>(0,z.P)(()=>{const Bt=no(Se)??oe,on=Gt(zt,Bt);return Re(function yo(ue){return ue&&yn(ue.canActivate)}(on)?on.canActivate(Se,ue):Bt.runInContext(()=>on(Se,ue))).pipe((0,O.P)())}));return(0,i.of)(tt).pipe($o())}(ue,tt.route,oe))),(0,O.P)(tt=>!0!==tt,!0))}(Oe,zt,ue,Se):(0,i.of)(on)),(0,y.U)(on=>({...oe,guardsResult:on})))})}(this.environmentInjector,tn=>this.events.next(tn)),(0,k.b)(tn=>{if(zt.guardsResult=tn.guardsResult,Ke(tn.guardsResult))throw Un(0,tn.guardsResult);const xn=new ei(tn.id,this.urlSerializer.serialize(tn.extractedUrl),this.urlSerializer.serialize(tn.urlAfterRedirects),tn.targetSnapshot,!!tn.guardsResult);this.events.next(xn)}),(0,_.h)(tn=>!!tn.guardsResult||(this.cancelNavigationTransition(tn,"",3),!1)),Ts(tn=>{if(tn.guards.canActivateChecks.length)return(0,i.of)(tn).pipe((0,k.b)(xn=>{const ti=new po(xn.id,this.urlSerializer.serialize(xn.extractedUrl),this.urlSerializer.serialize(xn.urlAfterRedirects),xn.targetSnapshot);this.events.next(ti)}),(0,T.w)(xn=>{let ti=!1;return(0,i.of)(xn).pipe(function Mr(ue,Se){return(0,P.z)(oe=>{const{targetSnapshot:Oe,guards:{canActivateChecks:tt}}=oe;if(!tt.length)return(0,i.of)(oe);let zt=0;return(0,t.D)(tt).pipe((0,A.b)(Bt=>function Ks(ue,Se,oe,Oe){const tt=ue.routeConfig,zt=ue._resolve;return void 0!==tt?.title&&!Hr(tt)&&(zt[ae]=tt.title),function Er(ue,Se,oe,Oe){const tt=function tr(ue){return[...Object.keys(ue),...Object.getOwnPropertySymbols(ue)]}(ue);if(0===tt.length)return(0,i.of)({});const zt={};return(0,t.D)(tt).pipe((0,P.z)(Bt=>function hr(ue,Se,oe,Oe){const tt=no(Se)??Oe,zt=Gt(ue,tt);return Re(zt.resolve?zt.resolve(Se,oe):tt.runInContext(()=>zt(Se,oe)))}(ue[Bt],Se,oe,Oe).pipe((0,O.P)(),(0,k.b)(on=>{zt[Bt]=on}))),H(1),(0,pe.h)(zt),(0,F.K)(Bt=>_i(Bt)?v.E:(0,h._)(Bt)))}(zt,ue,Se,Oe).pipe((0,y.U)(Bt=>(ue._resolvedData=Bt,ue.data=Qt(ue,oe).resolve,tt&&Hr(tt)&&(ue.data[ae]=tt.title),null)))}(Bt.route,Oe,ue,Se)),(0,k.b)(()=>zt++),H(1),(0,P.z)(Bt=>zt===tt.length?(0,i.of)(oe):v.E))})}(oe.paramsInheritanceStrategy,this.environmentInjector),(0,k.b)({next:()=>ti=!0,complete:()=>{ti||this.cancelNavigationTransition(xn,"",2)}}))}),(0,k.b)(xn=>{const ti=new oo(xn.id,this.urlSerializer.serialize(xn.extractedUrl),this.urlSerializer.serialize(xn.urlAfterRedirects),xn.targetSnapshot);this.events.next(ti)}))}),Ts(tn=>{const xn=ti=>{const Vi=[];ti.routeConfig?.loadComponent&&!ti.routeConfig._loadedComponent&&Vi.push(this.configLoader.loadComponent(ti.routeConfig).pipe((0,k.b)(Ci=>{ti.component=Ci}),(0,y.U)(()=>{})));for(const Ci of ti.children)Vi.push(...xn(Ci));return Vi};return(0,C.a)(xn(tn.targetSnapshot.root)).pipe((0,G.d)(),(0,x.q)(1))}),Ts(()=>this.afterPreactivation()),(0,y.U)(tn=>{const xn=function kn(ue,Se,oe){const Oe=Qn(ue,Se._root,oe?oe._root:void 0);return new un(Oe,Se)}(oe.routeReuseStrategy,tn.targetSnapshot,tn.currentRouterState);return this.currentTransition=zt={...tn,targetRouterState:xn},zt}),(0,k.b)(()=>{this.events.next(new Xi)}),((ue,Se,oe,Oe)=>(0,y.U)(tt=>(new Fi(Se,tt.targetRouterState,tt.currentRouterState,oe,Oe).activate(ue),tt)))(this.rootContexts,oe.routeReuseStrategy,tn=>this.events.next(tn),this.inputBindingEnabled),(0,x.q)(1),(0,k.b)({next:tn=>{Bt=!0,this.lastSuccessfulNavigation=this.currentNavigation,this.events.next(new ri(tn.id,this.urlSerializer.serialize(tn.extractedUrl),this.urlSerializer.serialize(tn.urlAfterRedirects))),oe.titleStrategy?.updateTitle(tn.targetRouterState.snapshot),tn.resolve(!0)},complete:()=>{Bt=!0}}),(0,le.R)(this.transitionAbortSubject.pipe((0,k.b)(tn=>{throw tn}))),(0,re.x)(()=>{Bt||on||this.cancelNavigationTransition(zt,"",1),this.currentNavigation?.id===zt.id&&(this.currentNavigation=null)}),(0,F.K)(tn=>{if(on=!0,xo(tn))this.events.next(new di(zt.id,this.urlSerializer.serialize(zt.extractedUrl),tn.message,tn.cancellationCode)),function hs(ue){return xo(ue)&&Ke(ue.url)}(tn)?this.events.next(new Ei(tn.url)):zt.resolve(!1);else{this.events.next(new fi(zt.id,this.urlSerializer.serialize(zt.extractedUrl),tn,zt.targetSnapshot??void 0));try{zt.resolve(oe.errorHandler(tn))}catch(xn){zt.reject(xn)}}return v.E}))}))}cancelNavigationTransition(oe,Oe,tt){const zt=new di(oe.id,this.urlSerializer.serialize(oe.extractedUrl),Oe,tt);this.events.next(zt),oe.resolve(!1)}static#e=this.\u0275fac=function(Oe){return new(Oe||ue)};static#t=this.\u0275prov=e.Yz7({token:ue,factory:ue.\u0275fac,providedIn:"root"})}return ue})();function rn(ue){return ue!==si}let an=(()=>{class ue{buildTitle(oe){let Oe,tt=oe.root;for(;void 0!==tt;)Oe=this.getResolvedTitleForRoute(tt)??Oe,tt=tt.children.find(zt=>zt.outlet===ie);return Oe}getResolvedTitleForRoute(oe){return oe.data[ae]}static#e=this.\u0275fac=function(Oe){return new(Oe||ue)};static#t=this.\u0275prov=e.Yz7({token:ue,factory:function(){return(0,e.f3M)(An)},providedIn:"root"})}return ue})(),An=(()=>{class ue extends an{constructor(oe){super(),this.title=oe}updateTitle(oe){const Oe=this.buildTitle(oe);void 0!==Oe&&this.title.setTitle(Oe)}static#e=this.\u0275fac=function(Oe){return new(Oe||ue)(e.LFG(Q.Dx))};static#t=this.\u0275prov=e.Yz7({token:ue,factory:ue.\u0275fac,providedIn:"root"})}return ue})(),bi=(()=>{class ue{static#e=this.\u0275fac=function(Oe){return new(Oe||ue)};static#t=this.\u0275prov=e.Yz7({token:ue,factory:function(){return(0,e.f3M)(mi)},providedIn:"root"})}return ue})();class Ni{shouldDetach(Se){return!1}store(Se,oe){}shouldAttach(Se){return!1}retrieve(Se){return null}shouldReuseRoute(Se,oe){return Se.routeConfig===oe.routeConfig}}let mi=(()=>{class ue extends Ni{static#e=this.\u0275fac=function(){let oe;return function(tt){return(oe||(oe=e.n5z(ue)))(tt||ue)}}();static#t=this.\u0275prov=e.Yz7({token:ue,factory:ue.\u0275fac,providedIn:"root"})}return ue})();const Gn=new e.OlP("",{providedIn:"root",factory:()=>({})});let Ki=(()=>{class ue{static#e=this.\u0275fac=function(Oe){return new(Oe||ue)};static#t=this.\u0275prov=e.Yz7({token:ue,factory:function(){return(0,e.f3M)(Fn)},providedIn:"root"})}return ue})(),Fn=(()=>{class ue{shouldProcessUrl(oe){return!0}extract(oe){return oe}merge(oe,Oe){return oe}static#e=this.\u0275fac=function(Oe){return new(Oe||ue)};static#t=this.\u0275prov=e.Yz7({token:ue,factory:ue.\u0275fac,providedIn:"root"})}return ue})();var Zi=function(ue){return ue[ue.COMPLETE=0]="COMPLETE",ue[ue.FAILED=1]="FAILED",ue[ue.REDIRECTING=2]="REDIRECTING",ue}(Zi||{});function Vo(ue,Se){ue.events.pipe((0,_.h)(oe=>oe instanceof ri||oe instanceof di||oe instanceof fi||oe instanceof hi),(0,y.U)(oe=>oe instanceof ri||oe instanceof hi?Zi.COMPLETE:oe instanceof di&&(0===oe.code||1===oe.code)?Zi.REDIRECTING:Zi.FAILED),(0,_.h)(oe=>oe!==Zi.REDIRECTING),(0,x.q)(1)).subscribe(()=>{Se()})}function Ko(ue){throw ue}function Ms(ue,Se,oe){return Se.parse("/")}const wo={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},gs={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"};let ni=(()=>{class ue{get navigationId(){return this.navigationTransitions.navigationId}get browserPageId(){return"computed"!==this.canceledNavigationResolution?this.currentPageId:this.location.getState()?.\u0275routerPageId??this.currentPageId}get events(){return this._events}constructor(){this.disposed=!1,this.currentPageId=0,this.console=(0,e.f3M)(e.c2e),this.isNgZoneEnabled=!1,this._events=new d.x,this.options=(0,e.f3M)(Gn,{optional:!0})||{},this.pendingTasks=(0,e.f3M)(e.HDt),this.errorHandler=this.options.errorHandler||Ko,this.malformedUriErrorHandler=this.options.malformedUriErrorHandler||Ms,this.navigated=!1,this.lastSuccessfulId=-1,this.urlHandlingStrategy=(0,e.f3M)(Ki),this.routeReuseStrategy=(0,e.f3M)(bi),this.titleStrategy=(0,e.f3M)(an),this.onSameUrlNavigation=this.options.onSameUrlNavigation||"ignore",this.paramsInheritanceStrategy=this.options.paramsInheritanceStrategy||"emptyOnly",this.urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred",this.canceledNavigationResolution=this.options.canceledNavigationResolution||"replace",this.config=(0,e.f3M)(Zs,{optional:!0})?.flat()??[],this.navigationTransitions=(0,e.f3M)(Ht),this.urlSerializer=(0,e.f3M)(Lt),this.location=(0,e.f3M)(f.Ye),this.componentInputBindingEnabled=!!(0,e.f3M)(ln,{optional:!0}),this.eventsSubscription=new p.w0,this.isNgZoneEnabled=(0,e.f3M)(e.R0b)instanceof e.R0b&&e.R0b.isInAngularZone(),this.resetConfig(this.config),this.currentUrlTree=new B,this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.routerState=lt(0,null),this.navigationTransitions.setupNavigations(this,this.currentUrlTree,this.routerState).subscribe(oe=>{this.lastSuccessfulId=oe.id,this.currentPageId=this.browserPageId},oe=>{this.console.warn(`Unhandled Navigation Error: ${oe}`)}),this.subscribeToNavigationEvents()}subscribeToNavigationEvents(){const oe=this.navigationTransitions.events.subscribe(Oe=>{try{const{currentTransition:tt}=this.navigationTransitions;if(null===tt)return void(Vr(Oe)&&this._events.next(Oe));if(Oe instanceof ci)rn(tt.source)&&(this.browserUrlTree=tt.extractedUrl);else if(Oe instanceof hi)this.rawUrlTree=tt.rawUrl;else if(Oe instanceof zi){if("eager"===this.urlUpdateStrategy){if(!tt.extras.skipLocationChange){const zt=this.urlHandlingStrategy.merge(tt.urlAfterRedirects,tt.rawUrl);this.setBrowserUrl(zt,tt)}this.browserUrlTree=tt.urlAfterRedirects}}else if(Oe instanceof Xi)this.currentUrlTree=tt.urlAfterRedirects,this.rawUrlTree=this.urlHandlingStrategy.merge(tt.urlAfterRedirects,tt.rawUrl),this.routerState=tt.targetRouterState,"deferred"===this.urlUpdateStrategy&&(tt.extras.skipLocationChange||this.setBrowserUrl(this.rawUrlTree,tt),this.browserUrlTree=tt.urlAfterRedirects);else if(Oe instanceof di)0!==Oe.code&&1!==Oe.code&&(this.navigated=!0),(3===Oe.code||2===Oe.code)&&this.restoreHistory(tt);else if(Oe instanceof Ei){const zt=this.urlHandlingStrategy.merge(Oe.url,tt.currentRawUrl),Bt={skipLocationChange:tt.extras.skipLocationChange,replaceUrl:"eager"===this.urlUpdateStrategy||rn(tt.source)};this.scheduleNavigation(zt,si,null,Bt,{resolve:tt.resolve,reject:tt.reject,promise:tt.promise})}Oe instanceof fi&&this.restoreHistory(tt,!0),Oe instanceof ri&&(this.navigated=!0),Vr(Oe)&&this._events.next(Oe)}catch(tt){this.navigationTransitions.transitionAbortSubject.next(tt)}});this.eventsSubscription.add(oe)}resetRootComponentType(oe){this.routerState.root.component=oe,this.navigationTransitions.rootComponentType=oe}initialNavigation(){if(this.setUpLocationChangeListener(),!this.navigationTransitions.hasRequestedNavigation){const oe=this.location.getState();this.navigateToSyncWithBrowser(this.location.path(!0),si,oe)}}setUpLocationChangeListener(){this.locationSubscription||(this.locationSubscription=this.location.subscribe(oe=>{const Oe="popstate"===oe.type?"popstate":"hashchange";"popstate"===Oe&&setTimeout(()=>{this.navigateToSyncWithBrowser(oe.url,Oe,oe.state)},0)}))}navigateToSyncWithBrowser(oe,Oe,tt){const zt={replaceUrl:!0},Bt=tt?.navigationId?tt:null;if(tt){const tn={...tt};delete tn.navigationId,delete tn.\u0275routerPageId,0!==Object.keys(tn).length&&(zt.state=tn)}const on=this.parseUrl(oe);this.scheduleNavigation(on,Oe,Bt,zt)}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.navigationTransitions.currentNavigation}get lastSuccessfulNavigation(){return this.navigationTransitions.lastSuccessfulNavigation}resetConfig(oe){this.config=oe.map(Jn),this.navigated=!1,this.lastSuccessfulId=-1}ngOnDestroy(){this.dispose()}dispose(){this.navigationTransitions.complete(),this.locationSubscription&&(this.locationSubscription.unsubscribe(),this.locationSubscription=void 0),this.disposed=!0,this.eventsSubscription.unsubscribe()}createUrlTree(oe,Oe={}){const{relativeTo:tt,queryParams:zt,fragment:Bt,queryParamsHandling:on,preserveFragment:tn}=Oe,xn=tn?this.currentUrlTree.fragment:Bt;let Vi,ti=null;switch(on){case"merge":ti={...this.currentUrlTree.queryParams,...zt};break;case"preserve":ti=this.currentUrlTree.queryParams;break;default:ti=zt||null}null!==ti&&(ti=this.removeEmptyProps(ti));try{Vi=it(tt?tt.snapshot:this.routerState.snapshot.root)}catch{("string"!=typeof oe[0]||!oe[0].startsWith("/"))&&(oe=[]),Vi=this.currentUrlTree.root}return b(Vi,oe,ti,xn??null)}navigateByUrl(oe,Oe={skipLocationChange:!1}){const tt=Ke(oe)?oe:this.parseUrl(oe),zt=this.urlHandlingStrategy.merge(tt,this.rawUrlTree);return this.scheduleNavigation(zt,si,null,Oe)}navigate(oe,Oe={skipLocationChange:!1}){return function Es(ue){for(let Se=0;Se{const zt=oe[tt];return null!=zt&&(Oe[tt]=zt),Oe},{})}scheduleNavigation(oe,Oe,tt,zt,Bt){if(this.disposed)return Promise.resolve(!1);let on,tn,xn;Bt?(on=Bt.resolve,tn=Bt.reject,xn=Bt.promise):xn=new Promise((Vi,Ci)=>{on=Vi,tn=Ci});const ti=this.pendingTasks.add();return Vo(this,()=>{queueMicrotask(()=>this.pendingTasks.remove(ti))}),this.navigationTransitions.handleNavigationRequest({source:Oe,restoredState:tt,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,currentBrowserUrl:this.browserUrlTree,rawUrl:oe,extras:zt,resolve:on,reject:tn,promise:xn,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),xn.catch(Vi=>Promise.reject(Vi))}setBrowserUrl(oe,Oe){const tt=this.urlSerializer.serialize(oe);if(this.location.isCurrentPathEqualTo(tt)||Oe.extras.replaceUrl){const Bt={...Oe.extras.state,...this.generateNgRouterState(Oe.id,this.browserPageId)};this.location.replaceState(tt,"",Bt)}else{const zt={...Oe.extras.state,...this.generateNgRouterState(Oe.id,this.browserPageId+1)};this.location.go(tt,"",zt)}}restoreHistory(oe,Oe=!1){if("computed"===this.canceledNavigationResolution){const zt=this.currentPageId-this.browserPageId;0!==zt?this.location.historyGo(zt):this.currentUrlTree===this.getCurrentNavigation()?.finalUrl&&0===zt&&(this.resetState(oe),this.browserUrlTree=oe.currentUrlTree,this.resetUrlToCurrentUrlTree())}else"replace"===this.canceledNavigationResolution&&(Oe&&this.resetState(oe),this.resetUrlToCurrentUrlTree())}resetState(oe){this.routerState=oe.currentRouterState,this.currentUrlTree=oe.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,oe.rawUrl)}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}generateNgRouterState(oe,Oe){return"computed"===this.canceledNavigationResolution?{navigationId:oe,\u0275routerPageId:Oe}:{navigationId:oe}}static#e=this.\u0275fac=function(Oe){return new(Oe||ue)};static#t=this.\u0275prov=e.Yz7({token:ue,factory:ue.\u0275fac,providedIn:"root"})}return ue})();function Vr(ue){return!(ue instanceof Xi||ue instanceof Ei)}let xi=(()=>{class ue{constructor(oe,Oe,tt,zt,Bt,on){this.router=oe,this.route=Oe,this.tabIndexAttribute=tt,this.renderer=zt,this.el=Bt,this.locationStrategy=on,this.href=null,this.commands=null,this.onChanges=new d.x,this.preserveFragment=!1,this.skipLocationChange=!1,this.replaceUrl=!1;const tn=Bt.nativeElement.tagName?.toLowerCase();this.isAnchorElement="a"===tn||"area"===tn,this.isAnchorElement?this.subscription=oe.events.subscribe(xn=>{xn instanceof ri&&this.updateHref()}):this.setTabIndexIfNotOnNativeEl("0")}setTabIndexIfNotOnNativeEl(oe){null!=this.tabIndexAttribute||this.isAnchorElement||this.applyAttributeValue("tabindex",oe)}ngOnChanges(oe){this.isAnchorElement&&this.updateHref(),this.onChanges.next(this)}set routerLink(oe){null!=oe?(this.commands=Array.isArray(oe)?oe:[oe],this.setTabIndexIfNotOnNativeEl("0")):(this.commands=null,this.setTabIndexIfNotOnNativeEl(null))}onClick(oe,Oe,tt,zt,Bt){return!!(null===this.urlTree||this.isAnchorElement&&(0!==oe||Oe||tt||zt||Bt||"string"==typeof this.target&&"_self"!=this.target))||(this.router.navigateByUrl(this.urlTree,{skipLocationChange:this.skipLocationChange,replaceUrl:this.replaceUrl,state:this.state}),!this.isAnchorElement)}ngOnDestroy(){this.subscription?.unsubscribe()}updateHref(){this.href=null!==this.urlTree&&this.locationStrategy?this.locationStrategy?.prepareExternalUrl(this.router.serializeUrl(this.urlTree)):null;const oe=null===this.href?null:(0,e.P3R)(this.href,this.el.nativeElement.tagName.toLowerCase(),"href");this.applyAttributeValue("href",oe)}applyAttributeValue(oe,Oe){const tt=this.renderer,zt=this.el.nativeElement;null!==Oe?tt.setAttribute(zt,oe,Oe):tt.removeAttribute(zt,oe)}get urlTree(){return null===this.commands?null:this.router.createUrlTree(this.commands,{relativeTo:void 0!==this.relativeTo?this.relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,queryParamsHandling:this.queryParamsHandling,preserveFragment:this.preserveFragment})}static#e=this.\u0275fac=function(Oe){return new(Oe||ue)(e.Y36(ni),e.Y36(At),e.$8M("tabindex"),e.Y36(e.Qsj),e.Y36(e.SBq),e.Y36(f.S$))};static#t=this.\u0275dir=e.lG2({type:ue,selectors:[["","routerLink",""]],hostVars:1,hostBindings:function(Oe,tt){1&Oe&&e.NdJ("click",function(Bt){return tt.onClick(Bt.button,Bt.ctrlKey,Bt.shiftKey,Bt.altKey,Bt.metaKey)}),2&Oe&&e.uIk("target",tt.target)},inputs:{target:"target",queryParams:"queryParams",fragment:"fragment",queryParamsHandling:"queryParamsHandling",state:"state",relativeTo:"relativeTo",preserveFragment:["preserveFragment","preserveFragment",e.VuI],skipLocationChange:["skipLocationChange","skipLocationChange",e.VuI],replaceUrl:["replaceUrl","replaceUrl",e.VuI],routerLink:"routerLink"},standalone:!0,features:[e.Xq5,e.TTD]})}return ue})(),Dr=(()=>{class ue{get isActive(){return this._isActive}constructor(oe,Oe,tt,zt,Bt){this.router=oe,this.element=Oe,this.renderer=tt,this.cdr=zt,this.link=Bt,this.classes=[],this._isActive=!1,this.routerLinkActiveOptions={exact:!1},this.isActiveChange=new e.vpe,this.routerEventsSubscription=oe.events.subscribe(on=>{on instanceof ri&&this.update()})}ngAfterContentInit(){(0,i.of)(this.links.changes,(0,i.of)(null)).pipe((0,ce.J)()).subscribe(oe=>{this.update(),this.subscribeToEachLinkOnChanges()})}subscribeToEachLinkOnChanges(){this.linkInputChangesSubscription?.unsubscribe();const oe=[...this.links.toArray(),this.link].filter(Oe=>!!Oe).map(Oe=>Oe.onChanges);this.linkInputChangesSubscription=(0,t.D)(oe).pipe((0,ce.J)()).subscribe(Oe=>{this._isActive!==this.isLinkActive(this.router)(Oe)&&this.update()})}set routerLinkActive(oe){const Oe=Array.isArray(oe)?oe:oe.split(" ");this.classes=Oe.filter(tt=>!!tt)}ngOnChanges(oe){this.update()}ngOnDestroy(){this.routerEventsSubscription.unsubscribe(),this.linkInputChangesSubscription?.unsubscribe()}update(){!this.links||!this.router.navigated||queueMicrotask(()=>{const oe=this.hasActiveLinks();this._isActive!==oe&&(this._isActive=oe,this.cdr.markForCheck(),this.classes.forEach(Oe=>{oe?this.renderer.addClass(this.element.nativeElement,Oe):this.renderer.removeClass(this.element.nativeElement,Oe)}),oe&&void 0!==this.ariaCurrentWhenActive?this.renderer.setAttribute(this.element.nativeElement,"aria-current",this.ariaCurrentWhenActive.toString()):this.renderer.removeAttribute(this.element.nativeElement,"aria-current"),this.isActiveChange.emit(oe))})}isLinkActive(oe){const Oe=function br(ue){return!!ue.paths}(this.routerLinkActiveOptions)?this.routerLinkActiveOptions:this.routerLinkActiveOptions.exact||!1;return tt=>!!tt.urlTree&&oe.isActive(tt.urlTree,Oe)}hasActiveLinks(){const oe=this.isLinkActive(this.router);return this.link&&oe(this.link)||this.links.some(oe)}static#e=this.\u0275fac=function(Oe){return new(Oe||ue)(e.Y36(ni),e.Y36(e.SBq),e.Y36(e.Qsj),e.Y36(e.sBO),e.Y36(xi,8))};static#t=this.\u0275dir=e.lG2({type:ue,selectors:[["","routerLinkActive",""]],contentQueries:function(Oe,tt,zt){if(1&Oe&&e.Suo(zt,xi,5),2&Oe){let Bt;e.iGM(Bt=e.CRH())&&(tt.links=Bt)}},inputs:{routerLinkActiveOptions:"routerLinkActiveOptions",ariaCurrentWhenActive:"ariaCurrentWhenActive",routerLinkActive:"routerLinkActive"},outputs:{isActiveChange:"isActiveChange"},exportAs:["routerLinkActive"],standalone:!0,features:[e.TTD]})}return ue})();class Uo{}let Js=(()=>{class ue{constructor(oe,Oe,tt,zt,Bt){this.router=oe,this.injector=tt,this.preloadingStrategy=zt,this.loader=Bt}setUpPreloading(){this.subscription=this.router.events.pipe((0,_.h)(oe=>oe instanceof ri),(0,A.b)(()=>this.preload())).subscribe(()=>{})}preload(){return this.processRoutes(this.injector,this.router.config)}ngOnDestroy(){this.subscription&&this.subscription.unsubscribe()}processRoutes(oe,Oe){const tt=[];for(const zt of Oe){zt.providers&&!zt._injector&&(zt._injector=(0,e.MMx)(zt.providers,oe,`Route: ${zt.path}`));const Bt=zt._injector??oe,on=zt._loadedInjector??Bt;(zt.loadChildren&&!zt._loadedRoutes&&void 0===zt.canLoad||zt.loadComponent&&!zt._loadedComponent)&&tt.push(this.preloadConfig(Bt,zt)),(zt.children||zt._loadedRoutes)&&tt.push(this.processRoutes(on,zt.children??zt._loadedRoutes))}return(0,t.D)(tt).pipe((0,ce.J)())}preloadConfig(oe,Oe){return this.preloadingStrategy.preload(Oe,()=>{let tt;tt=Oe.loadChildren&&void 0===Oe.canLoad?this.loader.loadChildren(oe,Oe):(0,i.of)(null);const zt=tt.pipe((0,P.z)(Bt=>null===Bt?(0,i.of)(void 0):(Oe._loadedRoutes=Bt.routes,Oe._loadedInjector=Bt.injector,this.processRoutes(Bt.injector??oe,Bt.routes))));if(Oe.loadComponent&&!Oe._loadedComponent){const Bt=this.loader.loadComponent(Oe);return(0,t.D)([zt,Bt]).pipe((0,ce.J)())}return zt})}static#e=this.\u0275fac=function(Oe){return new(Oe||ue)(e.LFG(ni),e.LFG(e.Sil),e.LFG(e.lqb),e.LFG(Uo),e.LFG(me))};static#t=this.\u0275prov=e.Yz7({token:ue,factory:ue.\u0275fac,providedIn:"root"})}return ue})();const Yo=new e.OlP("");let la=(()=>{class ue{constructor(oe,Oe,tt,zt,Bt={}){this.urlSerializer=oe,this.transitions=Oe,this.viewportScroller=tt,this.zone=zt,this.options=Bt,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},Bt.scrollPositionRestoration=Bt.scrollPositionRestoration||"disabled",Bt.anchorScrolling=Bt.anchorScrolling||"disabled"}init(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.transitions.events.subscribe(oe=>{oe instanceof ci?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=oe.navigationTrigger,this.restoredId=oe.restoredState?oe.restoredState.navigationId:0):oe instanceof ri?(this.lastId=oe.id,this.scheduleScrollEvent(oe,this.urlSerializer.parse(oe.urlAfterRedirects).fragment)):oe instanceof hi&&0===oe.code&&(this.lastSource=void 0,this.restoredId=0,this.scheduleScrollEvent(oe,this.urlSerializer.parse(oe.url).fragment))})}consumeScrollEvents(){return this.transitions.events.subscribe(oe=>{oe instanceof wi&&(oe.position?"top"===this.options.scrollPositionRestoration?this.viewportScroller.scrollToPosition([0,0]):"enabled"===this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition(oe.position):oe.anchor&&"enabled"===this.options.anchorScrolling?this.viewportScroller.scrollToAnchor(oe.anchor):"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(oe,Oe){this.zone.runOutsideAngular(()=>{setTimeout(()=>{this.zone.run(()=>{this.transitions.events.next(new wi(oe,"popstate"===this.lastSource?this.store[this.restoredId]:null,Oe))})},0)})}ngOnDestroy(){this.routerEventsSubscription?.unsubscribe(),this.scrollEventsSubscription?.unsubscribe()}static#e=this.\u0275fac=function(Oe){e.$Z()};static#t=this.\u0275prov=e.Yz7({token:ue,factory:ue.\u0275fac})}return ue})();function Bi(ue,Se){return{\u0275kind:ue,\u0275providers:Se}}function ua(){const ue=(0,e.f3M)(e.zs3);return Se=>{const oe=ue.get(e.z2F);if(Se!==oe.components[0])return;const Oe=ue.get(ni),tt=ue.get(Ya);1===ue.get(Zn)&&Oe.initialNavigation(),ue.get(pa,null,e.XFs.Optional)?.setUpPreloading(),ue.get(Yo,null,e.XFs.Optional)?.init(),Oe.resetRootComponentType(oe.componentTypes[0]),tt.closed||(tt.next(),tt.complete(),tt.unsubscribe())}}const Ya=new e.OlP("",{factory:()=>new d.x}),Zn=new e.OlP("",{providedIn:"root",factory:()=>1}),pa=new e.OlP("");function $a(ue){return Bi(0,[{provide:pa,useExisting:Js},{provide:Uo,useExisting:ue}])}const xr=new e.OlP("ROUTER_FORROOT_GUARD"),zo=[f.Ye,{provide:Lt,useClass:Ut},ni,Pi,{provide:At,useFactory:function ca(ue){return ue.routerState.root},deps:[ni]},me,[]];function hn(){return new e.PXZ("Router",ni)}let ai=(()=>{class ue{constructor(oe){}static forRoot(oe,Oe){return{ngModule:ue,providers:[zo,[],{provide:Zs,multi:!0,useValue:oe},{provide:xr,useFactory:Ur,deps:[[ni,new e.FiY,new e.tp0]]},{provide:Gn,useValue:Oe||{}},Oe?.useHash?{provide:f.S$,useClass:f.Do}:{provide:f.S$,useClass:f.b0},{provide:Yo,useFactory:()=>{const ue=(0,e.f3M)(f.EM),Se=(0,e.f3M)(e.R0b),oe=(0,e.f3M)(Gn),Oe=(0,e.f3M)(Ht),tt=(0,e.f3M)(Lt);return oe.scrollOffset&&ue.setOffset(oe.scrollOffset),new la(tt,Oe,ue,Se,oe)}},Oe?.preloadingStrategy?$a(Oe.preloadingStrategy).\u0275providers:[],{provide:e.PXZ,multi:!0,useFactory:hn},Oe?.initialNavigation?As(Oe):[],Oe?.bindToComponentInputs?Bi(8,[zn,{provide:ln,useExisting:zn}]).\u0275providers:[],[{provide:rs,useFactory:ua},{provide:e.tb,multi:!0,useExisting:rs}]]}}static forChild(oe){return{ngModule:ue,providers:[{provide:Zs,multi:!0,useValue:oe}]}}static#e=this.\u0275fac=function(Oe){return new(Oe||ue)(e.LFG(xr,8))};static#t=this.\u0275mod=e.oAB({type:ue});static#n=this.\u0275inj=e.cJS({})}return ue})();function Ur(ue){return"guarded"}function As(ue){return["disabled"===ue.initialNavigation?Bi(3,[{provide:e.ip1,multi:!0,useFactory:()=>{const Se=(0,e.f3M)(ni);return()=>{Se.setUpLocationChangeListener()}}},{provide:Zn,useValue:2}]).\u0275providers:[],"enabledBlocking"===ue.initialNavigation?Bi(2,[{provide:Zn,useValue:0},{provide:e.ip1,multi:!0,deps:[e.zs3],useFactory:Se=>{const oe=Se.get(f.V_,Promise.resolve());return()=>oe.then(()=>new Promise(Oe=>{const tt=Se.get(ni),zt=Se.get(Ya);Vo(tt,()=>{Oe(!0)}),Se.get(Ht).afterPreactivation=()=>(Oe(!0),zt.closed?(0,i.of)(void 0):zt),tt.initialNavigation()}))}}]).\u0275providers:[]]}const rs=new e.OlP("")},14715:(nt,I,o)=>{"use strict";o.d(I,{BOg:()=>bt,BXH:()=>fi,BXO:()=>Kd,Dfz:()=>bc,ECR:()=>H0,Ej7:()=>no,FsU:()=>w0,Hkd:()=>Ge,Idu:()=>Ni,ItN:()=>Xr,Kw4:()=>ao,LBP:()=>Xu,LJh:()=>Wa,M4u:()=>sr,M8e:()=>Ts,Mwl:()=>Ps,NFG:()=>Pr,OYp:()=>Oi,OeK:()=>Tt,P0d:()=>Mi,Q2k:()=>Ls,RIp:()=>ss,RU0:()=>Yt,RYI:()=>ti,RZ3:()=>kd,Rfq:()=>ze,SFb:()=>fa,TSL:()=>u1,U2Q:()=>En,UKj:()=>Sn,UTl:()=>Pt,UY$:()=>kh,V65:()=>ye,VWu:()=>Fo,WH2:()=>Io,XuQ:()=>b,Xwh:()=>fl,Z5F:()=>bi,_ry:()=>qu,aIM:()=>na,bBn:()=>R,cLx:()=>wc,cN2:()=>e1,d2H:()=>Ds,d_$:()=>kc,eFY:()=>lh,eLU:()=>ki,fhO:()=>p1,gvV:()=>ls,iUK:()=>Bi,irO:()=>Ta,kR2:()=>sf,khz:()=>Qu,mqL:()=>Zr,nZ9:()=>Qs,np6:()=>Lh,nrZ:()=>L,qtR:()=>nu,rHg:()=>Rd,rMt:()=>jo,rk5:()=>ho,s4U:()=>Jl,sZJ:()=>kr,s_U:()=>l1,ssy:()=>tr,u8X:()=>Bs,uIz:()=>C1,uYj:()=>Ec,ud1:()=>Ue,v6v:()=>qh,vEg:()=>$s,vkb:()=>$t,w1L:()=>Nd,wJM:()=>io,x0x:()=>so,yQU:()=>pn,yhW:()=>_e,zdJ:()=>pc});const _e={name:"appstore",theme:"outline",icon:''},ye={name:"bars",theme:"outline",icon:''},Ue={name:"calendar",theme:"outline",icon:''},Ge={name:"caret-down",theme:"fill",icon:''},b={name:"caret-down",theme:"outline",icon:''},R={name:"caret-up",theme:"fill",icon:''},ze={name:"check-circle",theme:"fill",icon:''},bt={name:"caret-up",theme:"outline",icon:''},pn={name:"check-circle",theme:"outline",icon:''},En={name:"check",theme:"outline",icon:''},fi={name:"close-circle",theme:"fill",icon:''},Oi={name:"close-circle",theme:"outline",icon:''},ki={name:"close",theme:"outline",icon:''},Sn={name:"clock-circle",theme:"outline",icon:''},so={name:"copy",theme:"outline",icon:''},ao={name:"copyright",theme:"outline",icon:''},no={name:"dashboard",theme:"outline",icon:''},$t={name:"delete",theme:"outline",icon:''},io={name:"dingding",theme:"outline",icon:''},Tt={name:"bell",theme:"outline",icon:''},jo={name:"double-right",theme:"outline",icon:''},Fo={name:"double-left",theme:"outline",icon:''},$s={name:"down",theme:"outline",icon:''},Ps={name:"download",theme:"outline",icon:''},Yt={name:"ellipsis",theme:"outline",icon:''},ss={name:"edit",theme:"outline",icon:''},tr={name:"exclamation-circle",theme:"outline",icon:''},Ts={name:"exclamation-circle",theme:"fill",icon:''},bi={name:"eye",theme:"outline",icon:''},Ni={name:"facebook",theme:"outline",icon:''},Bi={name:"file",theme:"fill",icon:''},Wa={name:"file",theme:"outline",icon:''},Pr={name:"filter",theme:"fill",icon:''},ti={name:"folder",theme:"outline",icon:''},Io={name:"form",theme:"outline",icon:''},ho={name:"fullscreen",theme:"outline",icon:''},fa={name:"fullscreen-exit",theme:"outline",icon:''},Ls={name:"folder-open",theme:"outline",icon:''},Jl={name:"github",theme:"outline",icon:''},Bs={name:"global",theme:"outline",icon:''},Zr={name:"heart",theme:"outline",icon:''},Ta={name:"inbox",theme:"outline",icon:''},L={name:"info-circle",theme:"outline",icon:''},Pt={name:"info-circle",theme:"fill",icon:''},Mi={name:"layout",theme:"outline",icon:''},ls={name:"left",theme:"outline",icon:''},Ds={name:"loading",theme:"outline",icon:''},Qs={name:"lock",theme:"outline",icon:''},Xr={name:"logout",theme:"outline",icon:''},Qu={name:"menu",theme:"outline",icon:''},Xu={name:"menu-fold",theme:"outline",icon:''},qu={name:"menu-unfold",theme:"outline",icon:''},sf={name:"code-sandbox",theme:"outline",icon:''},lh={name:"paper-clip",theme:"outline",icon:''},pc={name:"plus",theme:"outline",icon:''},kr={name:"question-circle",theme:"outline",icon:''},Nd={name:"rotate-right",theme:"outline",icon:''},kd={name:"rocket",theme:"outline",icon:''},kh={name:"rotate-left",theme:"outline",icon:''},Lh={name:"right",theme:"outline",icon:''},sr={name:"setting",theme:"outline",icon:''},Rd={name:"search",theme:"outline",icon:''},Ec={name:"skin",theme:"outline",icon:''},bc={name:"star",theme:"outline",icon:''},qh={name:"star",theme:"fill",icon:''},e1={name:"swap-right",theme:"outline",icon:''},Kd={name:"snippets",theme:"outline",icon:''},wc={name:"thunderbolt",theme:"fill",icon:''},na={name:"tool",theme:"outline",icon:''},nu={name:"twitter",theme:"outline",icon:''},w0={name:"up",theme:"outline",icon:''},l1={name:"upload",theme:"outline",icon:''},u1={name:"vertical-align-top",theme:"outline",icon:''},fl={name:"vertical-left",theme:"outline",icon:''},p1={name:"vertical-right",theme:"outline",icon:''},H0={name:"user",theme:"outline",icon:''},C1={name:"zoom-in",theme:"outline",icon:''},kc={name:"zoom-out",theme:"outline",icon:''}},83991:(nt,I,o)=>{"use strict";o.d(I,{M:()=>z,l:()=>M});var e=o(65879),n=o(96814),t=o(65619),i=o(69862);const l=function(h){return{display:h}},C=["*"];let E=(()=>{class h{get notify(){return this._notify.asObservable()}constructor(g){this.http=g,this.cached={},this._notify=new t.X(null)}req(g,d){const p=`https://api.github.com/repos/${g}/${d}`;null==this.cached[p]?(this.cached[p]={},this.http.get(p).subscribe(f=>{this.cached[p]=f,this._notify.next(this.cached[p])})):this._notify.next(this.cached[p])}static#e=this.\u0275fac=function(d){return new(d||h)(e.LFG(i.eN))};static#t=this.\u0275prov=e.Yz7({token:h,factory:h.\u0275fac,providedIn:"root"})}return h})();const u=!("object"==typeof document&&document);let z=(()=>{class h{get repo_url(){return`//github.com/${this.namespace}/${this.repo}/`}get count_url(){return`//github.com/${this.namespace}/${this.repo}/${this.typeToPath[this.type]||this.type}/`}constructor(g,d){this.srv=g,this.cdr=d,this.typeToLabel={stargazers:"Star",subscribers:"Watch",forks:"Fork"},this.typeToPath={forks:"network"},this.count=0,this.type="stargazers",this.size="default",this.showZero=!1}setCount(g){this.count=g?g[`${this.type}_count`]:0,this.cdr.detectChanges()}ngOnInit(){this.notify$=this.srv.notify.subscribe(g=>this.setCount(g))}ngOnChanges(){u||this.srv.req(this.namespace,this.repo)}ngOnDestroy(){this.notify$?.unsubscribe()}static#e=this.\u0275fac=function(d){return new(d||h)(e.Y36(E),e.Y36(e.sBO))};static#t=this.\u0275cmp=e.Xpm({type:h,selectors:[["github-button"]],hostVars:2,hostBindings:function(d,p){2&d&&e.ekj("github-btn-large","large"===p.size)},inputs:{type:"type",size:"size",namespace:"namespace",repo:"repo",showZero:"showZero"},standalone:!0,features:[e.TTD,e.jDz],ngContentSelectors:C,decls:7,vars:7,consts:[["target","_blank",1,"gh-btn",3,"href"],["aria-hidden","true",1,"gh-ico"],[1,"gh-text"],["target","_blank",1,"gh-count",3,"href","ngStyle"]],template:function(d,p){1&d&&(e.F$t(),e.TgZ(0,"a",0),e._UZ(1,"span",1),e.TgZ(2,"span",2),e._uU(3),e.qZA()(),e.TgZ(4,"a",3),e._uU(5),e.qZA(),e.Hsn(6)),2&d&&(e.Q6J("href",p.repo_url,e.LSH),e.xp6(3),e.Oqu(p.typeToLabel[p.type]),e.xp6(1),e.Q6J("href",p.count_url,e.LSH)("ngStyle",e.VKq(5,l,p.showZero||p.count>0?"block":"none")),e.xp6(1),e.hij(" ",p.count," "))},dependencies:[n.ez,n.PC],styles:['[_nghost-%COMP%]{font:700 11px/14px Helvetica Neue,Helvetica,Arial,sans-serif;height:20px;overflow:hidden}[_nghost-%COMP%]:after, [_nghost-%COMP%]:before{content:" ";display:table}[_nghost-%COMP%]:after{clear:both;visibility:hidden;font-size:0;height:0}[_nghost-%COMP%] .gh-btn, [_nghost-%COMP%] .gh-count, [_nghost-%COMP%] .gh-ico{float:left}[_nghost-%COMP%] .gh-btn, [_nghost-%COMP%] .gh-count{padding:2px 5px 2px 4px;color:#333;text-decoration:none;white-space:nowrap;cursor:pointer;border-radius:3px}[_nghost-%COMP%] .gh-btn{background-color:#eee;background-image:linear-gradient(to bottom,#fcfcfc 0,#eee 100%);background-repeat:no-repeat;border:1px solid #d5d5d5}[_nghost-%COMP%] .gh-btn:hover, [_nghost-%COMP%] .gh-btn:focus{text-decoration:none;background-color:#ddd;background-image:linear-gradient(to bottom,#eee 0,#ddd 100%);border-color:#ccc}[_nghost-%COMP%] .gh-btn:active{background-image:none;background-color:#dcdcdc;border-color:#b5b5b5;box-shadow:inset 0 2px 4px #00000026}[_nghost-%COMP%] .gh-ico{width:14px;height:14px;margin-right:4px;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2ZXJzaW9uPSIxLjEiIGlkPSJMYXllcl8xIiB4PSIwcHgiIHk9IjBweCIgd2lkdGg9IjQwcHgiIGhlaWdodD0iNDBweCIgdmlld0JveD0iMTIgMTIgNDAgNDAiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMTIgMTIgNDAgNDAiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxwYXRoIGZpbGw9IiMzMzMzMzMiIGQ9Ik0zMiAxMy40Yy0xMC41IDAtMTkgOC41LTE5IDE5YzAgOC40IDUuNSAxNS41IDEzIDE4YzEgMC4yIDEuMy0wLjQgMS4zLTAuOWMwLTAuNSAwLTEuNyAwLTMuMiBjLTUuMyAxLjEtNi40LTIuNi02LjQtMi42QzIwIDQxLjYgMTguOCA0MSAxOC44IDQxYy0xLjctMS4yIDAuMS0xLjEgMC4xLTEuMWMxLjkgMC4xIDIuOSAyIDIuOSAyYzEuNyAyLjkgNC41IDIuMSA1LjUgMS42IGMwLjItMS4yIDAuNy0yLjEgMS4yLTIuNmMtNC4yLTAuNS04LjctMi4xLTguNy05LjRjMC0yLjEgMC43LTMuNyAyLTUuMWMtMC4yLTAuNS0wLjgtMi40IDAuMi01YzAgMCAxLjYtMC41IDUuMiAyIGMxLjUtMC40IDMuMS0wLjcgNC44LTAuN2MxLjYgMCAzLjMgMC4yIDQuNyAwLjdjMy42LTIuNCA1LjItMiA1LjItMmMxIDIuNiAwLjQgNC42IDAuMiA1YzEuMiAxLjMgMiAzIDIgNS4xYzAgNy4zLTQuNSA4LjktOC43IDkuNCBjMC43IDAuNiAxLjMgMS43IDEuMyAzLjVjMCAyLjYgMCA0LjYgMCA1LjJjMCAwLjUgMC40IDEuMSAxLjMgMC45YzcuNS0yLjYgMTMtOS43IDEzLTE4LjFDNTEgMjEuOSA0Mi41IDEzLjQgMzIgMTMuNHoiLz48L3N2Zz4=);background-size:100% 100%;background-repeat:no-repeat}[_nghost-%COMP%] .gh-count{position:relative;display:none;margin-left:4px;background-color:#fafafa;border:1px solid #d4d4d4}[_nghost-%COMP%] .gh-count:hover, [_nghost-%COMP%] .gh-count:focus{color:#4183c4}[_nghost-%COMP%] .gh-count:before, [_nghost-%COMP%] .gh-count:after{content:"";position:absolute;display:inline-block;width:0;height:0;border-color:transparent;border-style:solid}[_nghost-%COMP%] .gh-count:before{top:50%;left:-3px;margin-top:-4px;border-width:4px 4px 4px 0;border-right-color:#fafafa}[_nghost-%COMP%] .gh-count:after{top:50%;left:-4px;z-index:-1;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#d4d4d4}.github-btn-large[_nghost-%COMP%]{height:30px}.github-btn-large[_nghost-%COMP%] .gh-btn, .github-btn-large[_nghost-%COMP%] .gh-count{padding:3px 10px 3px 8px;font-size:16px;line-height:22px;border-radius:4px}.github-btn-large[_nghost-%COMP%] .gh-ico{width:20px;height:20px}.github-btn-large[_nghost-%COMP%] .gh-count{margin-left:6px}.github-btn-large[_nghost-%COMP%] .gh-count:before{left:-5px;margin-top:-6px;border-width:6px 6px 6px 0}.github-btn-large[_nghost-%COMP%] .gh-count:after{left:-6px;margin-top:-7px;border-width:7px 7px 7px 0}'],changeDetection:0})}return h})(),M=(()=>{class h{static#e=this.\u0275fac=function(d){return new(d||h)};static#t=this.\u0275mod=e.oAB({type:h});static#n=this.\u0275inj=e.cJS({imports:[z]})}return h})()},23771:(nt,I,o)=>{"use strict";o.d(I,{$:()=>F,j:()=>W});var e=o(97582),n=o(96814),t=o(65879),i=o(47394),l=o(97328),C=o(78645),E=o(63019),u=o(92438),z=o(59773),M=o(37398),h=o(18753),v=o(83064),g=o(27754),d=o(99087),p=o(62831),f=o(28802),y=o(49388);const T=["fixedEl"],x=["*"];var D=function(K){return K.resize="resize",K.scroll="scroll",K.touchstart="touchstart",K.touchmove="touchmove",K.touchend="touchend",K.pageshow="pageshow",K.load="LOAD",K}(D||{});function P(K){return function _(K){return typeof window<"u"&&K===window}(K)?{top:0,left:0,bottom:0}:K.getBoundingClientRect()}const A="ant-affix";let F=(()=>{class K{get target(){const Y=this.nzTarget;return("string"==typeof Y?this.document.querySelector(Y):Y)||window}constructor(Y,G,H,j,te,ne,pe,re,be,le){this.nzConfigService=H,this.scrollSrv=j,this.ngZone=te,this.platform=ne,this.renderer=pe,this.nzResizeObserver=re,this.cdr=be,this.directionality=le,this._nzModuleName="affix",this.nzChange=new t.vpe,this.dir="ltr",this.positionChangeSubscription=i.w0.EMPTY,this.offsetChanged$=new l.t(1),this.destroy$=new C.x,this.placeholderNode=Y.nativeElement,this.document=G}ngOnInit(){this.directionality.change?.pipe((0,z.R)(this.destroy$)).subscribe(Y=>{this.dir=Y,this.registerListeners(),this.updatePosition({}),this.cdr.detectChanges()}),this.dir=this.directionality.value}ngOnChanges(Y){const{nzOffsetBottom:G,nzOffsetTop:H,nzTarget:j}=Y;(G||H)&&this.offsetChanged$.next(),j&&this.registerListeners()}ngAfterViewInit(){this.registerListeners()}ngOnDestroy(){this.removeListeners()}registerListeners(){if(!this.platform.isBrowser)return;this.removeListeners();const Y=this.target===window?this.document.body:this.target;this.positionChangeSubscription=this.ngZone.runOutsideAngular(()=>(0,E.T)(...Object.keys(D).map(G=>(0,u.R)(this.target,G)),this.offsetChanged$.pipe((0,M.U)(()=>({}))),this.nzResizeObserver.observe(Y)).pipe((0,h.p)(20,void 0,{trailing:!0}),(0,z.R)(this.destroy$)).subscribe(G=>this.updatePosition(G))),this.timeout=setTimeout(()=>this.updatePosition({}))}removeListeners(){clearTimeout(this.timeout),this.positionChangeSubscription.unsubscribe(),this.destroy$.next(!0),this.destroy$.complete()}getOffset(Y,G){const H=Y.getBoundingClientRect(),j=P(G),te=this.scrollSrv.getScroll(G,!0),ne=this.scrollSrv.getScroll(G,!1),pe=this.document.body;return{top:H.top-j.top+te-(pe.clientTop||0),left:H.left-j.left+ne-(pe.clientLeft||0),width:H.width,height:H.height}}setAffixStyle(Y,G){const H=this.affixStyle,j=this.target===window;if("scroll"===Y.type&&H&&G&&j||(0,g.wU)(H,G))return;const te=!!G,ne=this.fixedEl.nativeElement;this.renderer.setStyle(ne,"cssText",(0,g.GM)(G)),this.affixStyle=G,te?ne.classList.add(A):ne.classList.remove(A),this.updateRtlClass(),(G&&!H||!G&&H)&&this.nzChange.emit(te)}setPlaceholderStyle(Y){(0,g.wU)(Y,this.placeholderStyle)||(this.renderer.setStyle(this.placeholderNode,"cssText",(0,g.GM)(Y)),this.placeholderStyle=Y)}syncPlaceholderStyle(Y){if(!this.affixStyle)return;this.renderer.setStyle(this.placeholderNode,"cssText",""),this.placeholderStyle=void 0;const G={width:this.placeholderNode.offsetWidth,height:this.fixedEl.nativeElement.offsetHeight};this.setAffixStyle(Y,{...this.affixStyle,...G}),this.setPlaceholderStyle(G)}updatePosition(Y){if(!this.platform.isBrowser)return;const G=this.target;let H=this.nzOffsetTop;const j=this.scrollSrv.getScroll(G,!0),te=this.getOffset(this.placeholderNode,G),ne=this.fixedEl.nativeElement,pe={width:ne.offsetWidth,height:ne.offsetHeight},re={top:!1,bottom:!1};"number"!=typeof H&&"number"!=typeof this.nzOffsetBottom?(re.top=!0,H=0):(re.top="number"==typeof H,re.bottom="number"==typeof this.nzOffsetBottom);const be=P(G),le=G.innerHeight||G.clientHeight;if(j>=te.top-H&&re.top){const ce=te.width;this.setAffixStyle(Y,{position:"fixed",top:be.top+H,left:be.left+te.left,width:ce}),this.setPlaceholderStyle({width:ce,height:pe.height})}else if(j<=te.top+pe.height+this.nzOffsetBottom-le&&re.bottom){const ce=G===window?0:window.innerHeight-be.bottom,Q=te.width;this.setAffixStyle(Y,{position:"fixed",bottom:ce+this.nzOffsetBottom,left:be.left+te.left,width:Q}),this.setPlaceholderStyle({width:Q,height:te.height})}else Y.type===D.resize&&this.affixStyle&&"fixed"===this.affixStyle.position&&this.placeholderNode.offsetWidth?this.setAffixStyle(Y,{...this.affixStyle,width:this.placeholderNode.offsetWidth}):this.setAffixStyle(Y),this.setPlaceholderStyle();"resize"===Y.type&&this.syncPlaceholderStyle(Y)}updateRtlClass(){const Y=this.fixedEl.nativeElement;"rtl"===this.dir&&Y.classList.contains(A)?Y.classList.add(`${A}-rtl`):Y.classList.remove(`${A}-rtl`)}static#e=this.\u0275fac=function(G){return new(G||K)(t.Y36(t.SBq),t.Y36(n.K0),t.Y36(v.jY),t.Y36(d.MF),t.Y36(t.R0b),t.Y36(p.t4),t.Y36(t.Qsj),t.Y36(f.D3),t.Y36(t.sBO),t.Y36(y.Is,8))};static#t=this.\u0275cmp=t.Xpm({type:K,selectors:[["nz-affix"]],viewQuery:function(G,H){if(1&G&&t.Gf(T,7),2&G){let j;t.iGM(j=t.CRH())&&(H.fixedEl=j.first)}},inputs:{nzTarget:"nzTarget",nzOffsetTop:"nzOffsetTop",nzOffsetBottom:"nzOffsetBottom"},outputs:{nzChange:"nzChange"},exportAs:["nzAffix"],features:[t.TTD],ngContentSelectors:x,decls:3,vars:0,consts:[["fixedEl",""]],template:function(G,H){1&G&&(t.F$t(),t.TgZ(0,"div",null,0),t.Hsn(2),t.qZA())},encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,v.oS)(),(0,g.Rn)(void 0)],K.prototype,"nzOffsetTop",void 0),(0,e.gn)([(0,v.oS)(),(0,g.Rn)(void 0)],K.prototype,"nzOffsetBottom",void 0),K})(),W=(()=>{class K{static#e=this.\u0275fac=function(G){return new(G||K)};static#t=this.\u0275mod=t.oAB({type:K});static#n=this.\u0275inj=t.cJS({imports:[y.vT,n.ez,p.ud]})}return K})()},93903:(nt,I,o)=>{"use strict";o.d(I,{L:()=>Y,r:()=>_e});var e=o(97582),n=o(65879),t=o(78645),i=o(59773),l=o(64194),C=o(83064),E=o(27754),u=o(49388),z=o(96814),M=o(90551),h=o(8324);function v(G,H){1&G&&n.GkF(0)}function g(G,H){if(1&G&&(n.ynx(0),n.YNc(1,v,1,0,"ng-container",9),n.BQk()),2&G){const j=n.oxw(3);n.xp6(1),n.Q6J("nzStringTemplateOutlet",j.nzIcon)}}function d(G,H){if(1&G&&n._UZ(0,"span",10),2&G){const j=n.oxw(3);n.Q6J("nzType",j.nzIconType||j.inferredIconType)("nzTheme",j.iconTheme)}}function p(G,H){if(1&G&&(n.TgZ(0,"div",6),n.YNc(1,g,2,1,"ng-container",7),n.YNc(2,d,1,2,"ng-template",null,8,n.W1O),n.qZA()),2&G){const j=n.MAs(3),te=n.oxw(2);n.xp6(1),n.Q6J("ngIf",te.nzIcon)("ngIfElse",j)}}function f(G,H){if(1&G&&(n.ynx(0),n._uU(1),n.BQk()),2&G){const j=n.oxw(4);n.xp6(1),n.Oqu(j.nzMessage)}}function y(G,H){if(1&G&&(n.TgZ(0,"span",14),n.YNc(1,f,2,1,"ng-container",9),n.qZA()),2&G){const j=n.oxw(3);n.xp6(1),n.Q6J("nzStringTemplateOutlet",j.nzMessage)}}function T(G,H){if(1&G&&(n.ynx(0),n._uU(1),n.BQk()),2&G){const j=n.oxw(4);n.xp6(1),n.Oqu(j.nzDescription)}}function x(G,H){if(1&G&&(n.TgZ(0,"span",15),n.YNc(1,T,2,1,"ng-container",9),n.qZA()),2&G){const j=n.oxw(3);n.xp6(1),n.Q6J("nzStringTemplateOutlet",j.nzDescription)}}function D(G,H){if(1&G&&(n.TgZ(0,"div",11),n.YNc(1,y,2,1,"span",12),n.YNc(2,x,2,1,"span",13),n.qZA()),2&G){const j=n.oxw(2);n.xp6(1),n.Q6J("ngIf",j.nzMessage),n.xp6(1),n.Q6J("ngIf",j.nzDescription)}}function _(G,H){if(1&G&&(n.ynx(0),n._uU(1),n.BQk()),2&G){const j=n.oxw(3);n.xp6(1),n.Oqu(j.nzAction)}}function P(G,H){if(1&G&&(n.TgZ(0,"div",16),n.YNc(1,_,2,1,"ng-container",9),n.qZA()),2&G){const j=n.oxw(2);n.xp6(1),n.Q6J("nzStringTemplateOutlet",j.nzAction)}}function O(G,H){1&G&&n._UZ(0,"span",19)}function A(G,H){if(1&G&&(n.ynx(0),n.TgZ(1,"span",20),n._uU(2),n.qZA(),n.BQk()),2&G){const j=n.oxw(4);n.xp6(2),n.Oqu(j.nzCloseText)}}function k(G,H){if(1&G&&(n.ynx(0),n.YNc(1,A,3,1,"ng-container",9),n.BQk()),2&G){const j=n.oxw(3);n.xp6(1),n.Q6J("nzStringTemplateOutlet",j.nzCloseText)}}function F(G,H){if(1&G){const j=n.EpF();n.TgZ(0,"button",17),n.NdJ("click",function(){n.CHM(j);const ne=n.oxw(2);return n.KtG(ne.closeAlert())}),n.YNc(1,O,1,0,"ng-template",null,18,n.W1O),n.YNc(3,k,2,1,"ng-container",7),n.qZA()}if(2&G){const j=n.MAs(2),te=n.oxw(2);n.xp6(3),n.Q6J("ngIf",te.nzCloseText)("ngIfElse",j)}}function W(G,H){if(1&G){const j=n.EpF();n.TgZ(0,"div",1),n.NdJ("@slideAlertMotion.done",function(){n.CHM(j);const ne=n.oxw();return n.KtG(ne.onFadeAnimationDone())}),n.YNc(1,p,4,2,"div",2),n.YNc(2,D,3,2,"div",3),n.YNc(3,P,2,1,"div",4),n.YNc(4,F,4,2,"button",5),n.qZA()}if(2&G){const j=n.oxw();n.ekj("ant-alert-rtl","rtl"===j.dir)("ant-alert-success","success"===j.nzType)("ant-alert-info","info"===j.nzType)("ant-alert-warning","warning"===j.nzType)("ant-alert-error","error"===j.nzType)("ant-alert-no-icon",!j.nzShowIcon)("ant-alert-banner",j.nzBanner)("ant-alert-closable",j.nzCloseable)("ant-alert-with-description",!!j.nzDescription),n.Q6J("@.disabled",j.nzNoAnimation)("@slideAlertMotion",void 0),n.xp6(1),n.Q6J("ngIf",j.nzShowIcon),n.xp6(1),n.Q6J("ngIf",j.nzMessage||j.nzDescription),n.xp6(1),n.Q6J("ngIf",j.nzAction),n.xp6(1),n.Q6J("ngIf",j.nzCloseable||j.nzCloseText)}}const K="alert";let _e=(()=>{class G{constructor(j,te,ne){this.nzConfigService=j,this.cdr=te,this.directionality=ne,this._nzModuleName=K,this.nzAction=null,this.nzCloseText=null,this.nzIconType=null,this.nzMessage=null,this.nzDescription=null,this.nzType="info",this.nzCloseable=!1,this.nzShowIcon=!1,this.nzBanner=!1,this.nzNoAnimation=!1,this.nzIcon=null,this.nzOnClose=new n.vpe,this.closed=!1,this.iconTheme="fill",this.inferredIconType="info-circle",this.dir="ltr",this.isTypeSet=!1,this.isShowIconSet=!1,this.destroy$=new t.x,this.nzConfigService.getConfigChangeEventForComponent(K).pipe((0,i.R)(this.destroy$)).subscribe(()=>{this.cdr.markForCheck()})}ngOnInit(){this.directionality.change?.pipe((0,i.R)(this.destroy$)).subscribe(j=>{this.dir=j,this.cdr.detectChanges()}),this.dir=this.directionality.value}closeAlert(){this.closed=!0}onFadeAnimationDone(){this.closed&&this.nzOnClose.emit(!0)}ngOnChanges(j){const{nzShowIcon:te,nzDescription:ne,nzType:pe,nzBanner:re}=j;if(te&&(this.isShowIconSet=!0),pe)switch(this.isTypeSet=!0,this.nzType){case"error":this.inferredIconType="close-circle";break;case"success":this.inferredIconType="check-circle";break;case"info":this.inferredIconType="info-circle";break;case"warning":this.inferredIconType="exclamation-circle"}ne&&(this.iconTheme=this.nzDescription?"outline":"fill"),re&&(this.isTypeSet||(this.nzType="warning"),this.isShowIconSet||(this.nzShowIcon=!0))}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(te){return new(te||G)(n.Y36(C.jY),n.Y36(n.sBO),n.Y36(u.Is,8))};static#t=this.\u0275cmp=n.Xpm({type:G,selectors:[["nz-alert"]],inputs:{nzAction:"nzAction",nzCloseText:"nzCloseText",nzIconType:"nzIconType",nzMessage:"nzMessage",nzDescription:"nzDescription",nzType:"nzType",nzCloseable:"nzCloseable",nzShowIcon:"nzShowIcon",nzBanner:"nzBanner",nzNoAnimation:"nzNoAnimation",nzIcon:"nzIcon"},outputs:{nzOnClose:"nzOnClose"},exportAs:["nzAlert"],features:[n.TTD],decls:1,vars:1,consts:[["class","ant-alert",3,"ant-alert-rtl","ant-alert-success","ant-alert-info","ant-alert-warning","ant-alert-error","ant-alert-no-icon","ant-alert-banner","ant-alert-closable","ant-alert-with-description",4,"ngIf"],[1,"ant-alert"],["class","ant-alert-icon",4,"ngIf"],["class","ant-alert-content",4,"ngIf"],["class","ant-alert-action",4,"ngIf"],["type","button","tabindex","0","class","ant-alert-close-icon",3,"click",4,"ngIf"],[1,"ant-alert-icon"],[4,"ngIf","ngIfElse"],["iconDefaultTemplate",""],[4,"nzStringTemplateOutlet"],["nz-icon","",3,"nzType","nzTheme"],[1,"ant-alert-content"],["class","ant-alert-message",4,"ngIf"],["class","ant-alert-description",4,"ngIf"],[1,"ant-alert-message"],[1,"ant-alert-description"],[1,"ant-alert-action"],["type","button","tabindex","0",1,"ant-alert-close-icon",3,"click"],["closeDefaultTemplate",""],["nz-icon","","nzType","close"],[1,"ant-alert-close-text"]],template:function(te,ne){1&te&&n.YNc(0,W,5,24,"div",0),2&te&&n.Q6J("ngIf",!ne.closed)},dependencies:[z.O5,M.Ls,h.f],encapsulation:2,data:{animation:[l.Rq]},changeDetection:0})}return(0,e.gn)([(0,C.oS)(),(0,E.yF)()],G.prototype,"nzCloseable",void 0),(0,e.gn)([(0,C.oS)(),(0,E.yF)()],G.prototype,"nzShowIcon",void 0),(0,e.gn)([(0,E.yF)()],G.prototype,"nzBanner",void 0),(0,e.gn)([(0,E.yF)()],G.prototype,"nzNoAnimation",void 0),G})(),Y=(()=>{class G{static#e=this.\u0275fac=function(te){return new(te||G)};static#t=this.\u0275mod=n.oAB({type:G});static#n=this.\u0275inj=n.cJS({imports:[u.vT,z.ez,M.PV,h.T]})}return G})()},29094:(nt,I,o)=>{"use strict";o.d(I,{Fp:()=>K,IT:()=>W,on:()=>_e});var e=o(65879),n=o(97582),t=o(62831),i=o(96814),l=o(78645),C=o(92438),E=o(18753),u=o(59773),z=o(83064),M=o(27754),h=o(99087),v=o(23771),g=o(49388);const d=["ink"];function p(Y,G){}function f(Y,G){if(1&Y&&(e.TgZ(0,"nz-affix",2),e.YNc(1,p,0,0,"ng-template",3),e.qZA()),2&Y){const H=e.oxw(),j=e.MAs(2);e.Q6J("nzOffsetTop",H.nzOffsetTop)("nzTarget",H.container),e.xp6(1),e.Q6J("ngTemplateOutlet",j)}}const y=function(Y){return{"ant-anchor-fixed":Y}};function T(Y,G){if(1&Y&&(e.TgZ(0,"div",4)(1,"div",5)(2,"div",6),e._UZ(3,"div",7,8),e.qZA(),e.Hsn(5),e.qZA()()),2&Y){const H=e.oxw();e.Q6J("ngStyle",H.wrapperStyle),e.xp6(1),e.Q6J("ngClass",e.VKq(2,y,!H.nzAffix&&!H.nzShowInkInFixed))}}const x=["*"],D=["nzTemplate"],_=["linkTitle"];function P(Y,G){if(1&Y&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&Y){const H=e.oxw();e.xp6(1),e.Oqu(H.titleStr)}}function O(Y,G){if(!Y||!Y.getClientRects().length)return 0;const H=Y.getBoundingClientRect();return H.width||H.height?G===window?H.top-Y.ownerDocument.documentElement.clientTop:H.top-G.getBoundingClientRect().top:H.top}const k=/#([^#]+)$/,F=(0,t.i$)({passive:!0});let W=(()=>{class Y{constructor(H,j,te,ne,pe,re,be){this.doc=H,this.nzConfigService=j,this.scrollSrv=te,this.cdr=ne,this.platform=pe,this.zone=re,this.renderer=be,this._nzModuleName="anchor",this.nzAffix=!0,this.nzShowInkInFixed=!1,this.nzBounds=5,this.nzOffsetTop=void 0,this.nzTargetOffset=void 0,this.nzClick=new e.vpe,this.nzChange=new e.vpe,this.nzScroll=new e.vpe,this.visible=!1,this.wrapperStyle={"max-height":"100vh"},this.links=[],this.animating=!1,this.destroy$=new l.x,this.handleScrollTimeoutID=-1}registerLink(H){this.links.push(H)}unregisterLink(H){this.links.splice(this.links.indexOf(H),1)}getContainer(){return this.container||window}ngAfterViewInit(){this.registerScrollEvent()}ngOnDestroy(){clearTimeout(this.handleScrollTimeoutID),this.destroy$.next(!0),this.destroy$.complete()}registerScrollEvent(){this.platform.isBrowser&&(this.destroy$.next(!0),this.zone.runOutsideAngular(()=>{(0,C.R)(this.getContainer(),"scroll",F).pipe((0,E.p)(50),(0,u.R)(this.destroy$)).subscribe(()=>this.handleScroll())}),this.handleScrollTimeoutID=setTimeout(()=>this.handleScroll()))}handleScroll(){if(typeof document>"u"||this.animating)return;const H=[],te=(this.nzTargetOffset?this.nzTargetOffset:this.nzOffsetTop||0)+this.nzBounds;if(this.links.forEach(ne=>{const pe=k.exec(ne.nzHref.toString());if(!pe)return;const re=this.doc.getElementById(pe[1]);if(re){const be=O(re,this.getContainer());bere.top>pe.top?re:pe);this.handleActive(ne.comp)}else this.clearActive(),this.cdr.detectChanges();this.setVisible()}clearActive(){this.links.forEach(H=>{H.unsetActive()})}setActive(H){const j=this.activeLink,te=this.nzCurrentAnchor&&this.links.find(pe=>pe.nzHref===this.nzCurrentAnchor)||H;if(!te)return;te.setActive();const ne=te.getLinkTitleElement();this.ink.nativeElement.style.top=ne.offsetTop+ne.clientHeight/2-4.5+"px",this.activeLink=(H||te).nzHref,j!==this.activeLink&&this.nzChange.emit(this.activeLink)}handleActive(H){this.clearActive(),this.setActive(H),this.visible=!0,this.setVisible(),this.nzScroll.emit(H)}setVisible(){const j="visible";this.ink&&(this.visible?this.renderer.addClass(this.ink.nativeElement,j):this.renderer.removeClass(this.ink.nativeElement,j))}handleScrollTo(H){const j=this.doc.querySelector(H.nzHref);if(!j)return;this.animating=!0;let pe=this.scrollSrv.getScroll(this.getContainer())+O(j,this.getContainer());pe-=void 0!==this.nzTargetOffset?this.nzTargetOffset:this.nzOffsetTop||0,this.scrollSrv.scrollTo(this.getContainer(),pe,{callback:()=>{this.animating=!1,this.handleActive(H)}}),this.nzClick.emit(H.nzHref)}ngOnChanges(H){const{nzOffsetTop:j,nzContainer:te,nzCurrentAnchor:ne}=H;if(j&&(this.wrapperStyle={"max-height":`calc(100vh - ${this.nzOffsetTop}px)`}),te){const pe=this.nzContainer;this.container="string"==typeof pe?this.doc.querySelector(pe):pe,this.registerScrollEvent()}ne&&this.setActive()}static#e=this.\u0275fac=function(j){return new(j||Y)(e.Y36(i.K0),e.Y36(z.jY),e.Y36(h.MF),e.Y36(e.sBO),e.Y36(t.t4),e.Y36(e.R0b),e.Y36(e.Qsj))};static#t=this.\u0275cmp=e.Xpm({type:Y,selectors:[["nz-anchor"]],viewQuery:function(j,te){if(1&j&&e.Gf(d,5),2&j){let ne;e.iGM(ne=e.CRH())&&(te.ink=ne.first)}},inputs:{nzAffix:"nzAffix",nzShowInkInFixed:"nzShowInkInFixed",nzBounds:"nzBounds",nzOffsetTop:"nzOffsetTop",nzTargetOffset:"nzTargetOffset",nzContainer:"nzContainer",nzCurrentAnchor:"nzCurrentAnchor"},outputs:{nzClick:"nzClick",nzChange:"nzChange",nzScroll:"nzScroll"},exportAs:["nzAnchor"],features:[e.TTD],ngContentSelectors:x,decls:3,vars:2,consts:[[3,"nzOffsetTop","nzTarget",4,"ngIf","ngIfElse"],["content",""],[3,"nzOffsetTop","nzTarget"],[3,"ngTemplateOutlet"],[1,"ant-anchor-wrapper",3,"ngStyle"],[1,"ant-anchor",3,"ngClass"],[1,"ant-anchor-ink"],[1,"ant-anchor-ink-ball"],["ink",""]],template:function(j,te){if(1&j&&(e.F$t(),e.YNc(0,f,2,3,"nz-affix",0),e.YNc(1,T,6,4,"ng-template",null,1,e.W1O)),2&j){const ne=e.MAs(2);e.Q6J("ngIf",te.nzAffix)("ngIfElse",ne)}},dependencies:[i.mk,i.O5,i.tP,i.PC,v.$],encapsulation:2,changeDetection:0})}return(0,n.gn)([(0,M.yF)()],Y.prototype,"nzAffix",void 0),(0,n.gn)([(0,z.oS)(),(0,M.yF)()],Y.prototype,"nzShowInkInFixed",void 0),(0,n.gn)([(0,z.oS)(),(0,M.Rn)()],Y.prototype,"nzBounds",void 0),(0,n.gn)([(0,M.Rn)(void 0),(0,z.oS)()],Y.prototype,"nzOffsetTop",void 0),(0,n.gn)([(0,M.Rn)(void 0),(0,z.oS)()],Y.prototype,"nzTargetOffset",void 0),Y})(),K=(()=>{class Y{set nzTitle(H){H instanceof e.Rgc?(this.titleStr=null,this.titleTpl=H):this.titleStr=H}constructor(H,j,te,ne){this.elementRef=H,this.anchorComp=j,this.platform=te,this.renderer=ne,this.nzHref="#",this.titleStr=""}ngOnInit(){this.anchorComp.registerLink(this)}getLinkTitleElement(){return this.linkTitle.nativeElement}setActive(){this.renderer.addClass(this.elementRef.nativeElement,"ant-anchor-link-active")}unsetActive(){this.renderer.removeClass(this.elementRef.nativeElement,"ant-anchor-link-active")}goToClick(H){H.preventDefault(),H.stopPropagation(),this.platform.isBrowser&&this.anchorComp.handleScrollTo(this)}ngOnDestroy(){this.anchorComp.unregisterLink(this)}static#e=this.\u0275fac=function(j){return new(j||Y)(e.Y36(e.SBq),e.Y36(W),e.Y36(t.t4),e.Y36(e.Qsj))};static#t=this.\u0275cmp=e.Xpm({type:Y,selectors:[["nz-link"]],contentQueries:function(j,te,ne){if(1&j&&e.Suo(ne,D,5),2&j){let pe;e.iGM(pe=e.CRH())&&(te.nzTemplate=pe.first)}},viewQuery:function(j,te){if(1&j&&e.Gf(_,5),2&j){let ne;e.iGM(ne=e.CRH())&&(te.linkTitle=ne.first)}},hostAttrs:[1,"ant-anchor-link"],inputs:{nzHref:"nzHref",nzTarget:"nzTarget",nzTitle:"nzTitle"},exportAs:["nzLink"],ngContentSelectors:x,decls:4,vars:5,consts:[[1,"ant-anchor-link-title",3,"href","title","target","click"],["linkTitle",""],[4,"ngIf","ngIfElse"]],template:function(j,te){1&j&&(e.F$t(),e.TgZ(0,"a",0,1),e.NdJ("click",function(pe){return te.goToClick(pe)}),e.YNc(2,P,2,1,"span",2),e.qZA(),e.Hsn(3)),2&j&&(e.Q6J("href",te.nzHref,e.LSH)("title",te.titleStr)("target",te.nzTarget),e.xp6(2),e.Q6J("ngIf",te.titleStr)("ngIfElse",te.titleTpl||te.nzTemplate))},dependencies:[i.O5],encapsulation:2,changeDetection:0})}return Y})(),_e=(()=>{class Y{static#e=this.\u0275fac=function(j){return new(j||Y)};static#t=this.\u0275mod=e.oAB({type:Y});static#n=this.\u0275inj=e.cJS({imports:[g.vT,i.ez,v.j,t.ud]})}return Y})()},95717:(nt,I,o)=>{"use strict";o.d(I,{NB:()=>le,Pf:()=>ie,gi:()=>ae,ic:()=>xe});var e=o(49388),n=o(33651),t=o(96814),i=o(65879),l=o(331),C=o(8324),E=o(20824),u=o(97582),z=o(78645),M=o(92438),h=o(47394),v=o(74911),g=o(63019),d=o(32181),p=o(59773),f=o(99397),y=o(5177),T=o(48180),x=o(94664),D=o(27754),_=o(36028),P=o(68484),O=o(60095),A=o(64194);function k(Me,Ye){if(1&Me&&(i.ynx(0),i._uU(1),i.BQk()),2&Me){const q=i.oxw();i.xp6(1),i.Oqu(q.nzLabel)}}const F=[[["nz-auto-option"]]],W=["nz-auto-option"],K=["*"],_e=["panel"],Y=["content"];function G(Me,Ye){}function H(Me,Ye){1&Me&&i.YNc(0,G,0,0,"ng-template")}function j(Me,Ye){1&Me&&i.Hsn(0)}function te(Me,Ye){if(1&Me&&(i.TgZ(0,"nz-auto-option",8),i._uU(1),i.qZA()),2&Me){const q=Ye.$implicit;i.Q6J("nzValue",q)("nzLabel",q&&q.label?q.label:q),i.xp6(1),i.hij(" ",q&&q.label?q.label:q," ")}}function ne(Me,Ye){if(1&Me&&i.YNc(0,te,2,3,"nz-auto-option",7),2&Me){const q=i.oxw(2);i.Q6J("ngForOf",q.nzDataSource)}}function pe(Me,Ye){if(1&Me){const q=i.EpF();i.TgZ(0,"div",0,1),i.NdJ("@slideMotion.done",function(ee){i.CHM(q);const Be=i.oxw();return i.KtG(Be.onAnimationEvent(ee))}),i.TgZ(2,"div",2)(3,"div",3),i.YNc(4,H,1,0,null,4),i.qZA()()(),i.YNc(5,j,1,0,"ng-template",null,5,i.W1O),i.YNc(7,ne,1,1,"ng-template",null,6,i.W1O)}if(2&Me){const q=i.MAs(6),ye=i.MAs(8),ee=i.oxw();i.ekj("ant-select-dropdown-hidden",!ee.showPanel)("ant-select-dropdown-rtl","rtl"===ee.dir),i.Q6J("ngClass",ee.nzOverlayClassName)("ngStyle",ee.nzOverlayStyle)("nzNoAnimation",null==ee.noAnimation?null:ee.noAnimation.nzNoAnimation)("@slideMotion",void 0)("@.disabled",!(null==ee.noAnimation||!ee.noAnimation.nzNoAnimation)),i.xp6(4),i.Q6J("ngTemplateOutlet",ee.nzDataSource?ye:q)}}let re=(()=>{class Me{constructor(){}static#e=this.\u0275fac=function(ye){return new(ye||Me)};static#t=this.\u0275cmp=i.Xpm({type:Me,selectors:[["nz-auto-optgroup"]],inputs:{nzLabel:"nzLabel"},exportAs:["nzAutoOptgroup"],ngContentSelectors:W,decls:3,vars:1,consts:[[1,"ant-select-item","ant-select-item-group"],[4,"nzStringTemplateOutlet"]],template:function(ye,ee){1&ye&&(i.F$t(F),i.TgZ(0,"div",0),i.YNc(1,k,2,1,"ng-container",1),i.qZA(),i.Hsn(2)),2&ye&&(i.xp6(1),i.Q6J("nzStringTemplateOutlet",ee.nzLabel))},dependencies:[C.f],encapsulation:2,changeDetection:0})}return Me})();class be{constructor(Ye,q=!1){this.source=Ye,this.isUserInput=q}}let le=(()=>{class Me{constructor(q,ye,ee,Be){this.ngZone=q,this.changeDetectorRef=ye,this.element=ee,this.nzAutocompleteOptgroupComponent=Be,this.nzDisabled=!1,this.selectionChange=new i.vpe,this.mouseEntered=new i.vpe,this.active=!1,this.selected=!1,this.destroy$=new z.x}ngOnInit(){this.ngZone.runOutsideAngular(()=>{(0,M.R)(this.element.nativeElement,"mouseenter").pipe((0,d.h)(()=>this.mouseEntered.observers.length>0),(0,p.R)(this.destroy$)).subscribe(()=>{this.ngZone.run(()=>this.mouseEntered.emit(this))}),(0,M.R)(this.element.nativeElement,"mousedown").pipe((0,p.R)(this.destroy$)).subscribe(q=>q.preventDefault())})}ngOnDestroy(){this.destroy$.next()}select(q=!0){this.selected=!0,this.changeDetectorRef.markForCheck(),q&&this.emitSelectionChangeEvent()}deselect(){this.selected=!1,this.changeDetectorRef.markForCheck(),this.emitSelectionChangeEvent()}getLabel(){return this.nzLabel||this.nzValue.toString()}setActiveStyles(){this.active||(this.active=!0,this.changeDetectorRef.markForCheck())}setInactiveStyles(){this.active&&(this.active=!1,this.changeDetectorRef.markForCheck())}scrollIntoViewIfNeeded(){(0,D.zT)(this.element.nativeElement)}selectViaInteraction(){this.nzDisabled||(this.selected=!this.selected,this.selected?this.setActiveStyles():this.setInactiveStyles(),this.emitSelectionChangeEvent(!0),this.changeDetectorRef.markForCheck())}emitSelectionChangeEvent(q=!1){this.selectionChange.emit(new be(this,q))}static#e=this.\u0275fac=function(ye){return new(ye||Me)(i.Y36(i.R0b),i.Y36(i.sBO),i.Y36(i.SBq),i.Y36(re,8))};static#t=this.\u0275cmp=i.Xpm({type:Me,selectors:[["nz-auto-option"]],hostAttrs:["role","menuitem",1,"ant-select-item","ant-select-item-option"],hostVars:10,hostBindings:function(ye,ee){1&ye&&i.NdJ("click",function(){return ee.selectViaInteraction()}),2&ye&&(i.uIk("aria-selected",ee.selected.toString())("aria-disabled",ee.nzDisabled.toString()),i.ekj("ant-select-item-option-grouped",ee.nzAutocompleteOptgroupComponent)("ant-select-item-option-selected",ee.selected)("ant-select-item-option-active",ee.active)("ant-select-item-option-disabled",ee.nzDisabled))},inputs:{nzValue:"nzValue",nzLabel:"nzLabel",nzDisabled:"nzDisabled"},outputs:{selectionChange:"selectionChange",mouseEntered:"mouseEntered"},exportAs:["nzAutoOption"],ngContentSelectors:K,decls:2,vars:0,consts:[[1,"ant-select-item-option-content"]],template:function(ye,ee){1&ye&&(i.F$t(),i.TgZ(0,"div",0),i.Hsn(1),i.qZA())},encapsulation:2,changeDetection:0})}return(0,u.gn)([(0,D.yF)()],Me.prototype,"nzDisabled",void 0),Me})();const ce={provide:O.JU,useExisting:(0,i.Gpc)(()=>ie),multi:!0};let ie=(()=>{class Me{get activeOption(){return this.nzAutocomplete&&this.nzAutocomplete.options.length?this.nzAutocomplete.activeItem:null}constructor(q,ye,ee,Be,Re,ct){this.ngZone=q,this.elementRef=ye,this.overlay=ee,this.viewContainerRef=Be,this.nzInputGroupWhitSuffixOrPrefixDirective=Re,this.document=ct,this.onChange=()=>{},this.onTouched=()=>{},this.panelOpen=!1,this.destroy$=new z.x,this.overlayRef=null,this.portal=null,this.previousValue=null}ngAfterViewInit(){this.nzAutocomplete&&this.nzAutocomplete.animationStateChange.pipe((0,p.R)(this.destroy$)).subscribe(q=>{"void"===q.toState&&this.overlayRef&&(this.overlayRef.dispose(),this.overlayRef=null)})}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete(),this.destroyPanel()}writeValue(q){this.ngZone.runOutsideAngular(()=>Promise.resolve(null).then(()=>this.setTriggerValue(q)))}registerOnChange(q){this.onChange=q}registerOnTouched(q){this.onTouched=q}setDisabledState(q){this.elementRef.nativeElement.disabled=q,this.closePanel()}openPanel(){this.previousValue=this.elementRef.nativeElement.value,this.attachOverlay(),this.updateStatus()}closePanel(){this.panelOpen&&(this.nzAutocomplete.isOpen=this.panelOpen=!1,this.overlayRef&&this.overlayRef.hasAttached()&&(this.overlayRef.detach(),this.selectionChangeSubscription.unsubscribe(),this.overlayOutsideClickSubscription.unsubscribe(),this.optionsChangeSubscription.unsubscribe(),this.portal=null))}handleKeydown(q){const ye=q.keyCode,ee=ye===_.LH||ye===_.JH;ye===_.hY&&q.preventDefault(),!this.panelOpen||ye!==_.hY&&ye!==_.Mf?this.panelOpen&&ye===_.K5?this.nzAutocomplete.showPanel&&(q.preventDefault(),this.activeOption?this.activeOption.selectViaInteraction():this.closePanel()):this.panelOpen&&ee&&this.nzAutocomplete.showPanel&&(q.stopPropagation(),q.preventDefault(),ye===_.LH?this.nzAutocomplete.setPreviousItemActive():this.nzAutocomplete.setNextItemActive(),this.activeOption&&this.activeOption.scrollIntoViewIfNeeded(),this.doBackfill()):(this.activeOption&&this.activeOption.getLabel()!==this.previousValue&&this.setTriggerValue(this.previousValue),this.closePanel())}handleInput(q){const ye=q.target,ee=this.document;let Be=ye.value;"number"===ye.type&&(Be=""===Be?null:parseFloat(Be)),this.previousValue!==Be&&(this.previousValue=Be,this.onChange(Be),this.canOpen()&&ee.activeElement===q.target&&this.openPanel())}handleFocus(){this.canOpen()&&this.openPanel()}handleBlur(){this.onTouched()}subscribeOptionsChange(){return this.nzAutocomplete.options.changes.pipe((0,f.b)(()=>this.positionStrategy.reapplyLastPosition()),(0,y.g)(0)).subscribe(()=>{this.resetActiveItem(),this.panelOpen&&this.overlayRef.updatePosition()})}subscribeSelectionChange(){return this.nzAutocomplete.selectionChange.subscribe(q=>{this.setValueAndClose(q)})}subscribeOverlayOutsideClick(){return this.overlayRef.outsidePointerEvents().pipe((0,d.h)(q=>!this.elementRef.nativeElement.contains(q.target))).subscribe(()=>{this.closePanel()})}attachOverlay(){if(!this.nzAutocomplete)throw function Q(){return Error("Attempting to open an undefined instance of `nz-autocomplete`. Make sure that the id passed to the `nzAutocomplete` is correct and that you're attempting to open it after the ngAfterContentInit hook.")}();!this.portal&&this.nzAutocomplete.template&&(this.portal=new P.UE(this.nzAutocomplete.template,this.viewContainerRef)),this.overlayRef||(this.overlayRef=this.overlay.create(this.getOverlayConfig())),this.overlayRef&&!this.overlayRef.hasAttached()&&(this.overlayRef.attach(this.portal),this.selectionChangeSubscription=this.subscribeSelectionChange(),this.optionsChangeSubscription=this.subscribeOptionsChange(),this.overlayOutsideClickSubscription=this.subscribeOverlayOutsideClick(),this.overlayRef.detachments().pipe((0,p.R)(this.destroy$)).subscribe(()=>{this.closePanel()})),this.nzAutocomplete.isOpen=this.panelOpen=!0}updateStatus(){this.overlayRef&&this.overlayRef.updateSize({width:this.nzAutocomplete.nzWidth||this.getHostWidth()}),this.nzAutocomplete.setVisibility(),this.resetActiveItem(),this.activeOption&&this.activeOption.scrollIntoViewIfNeeded()}destroyPanel(){this.overlayRef&&this.closePanel()}getOverlayConfig(){return new n.X_({positionStrategy:this.getOverlayPosition(),disposeOnNavigation:!0,scrollStrategy:this.overlay.scrollStrategies.reposition(),width:this.nzAutocomplete.nzWidth||this.getHostWidth()})}getConnectedElement(){return this.nzInputGroupWhitSuffixOrPrefixDirective?this.nzInputGroupWhitSuffixOrPrefixDirective.elementRef:this.elementRef}getHostWidth(){return this.getConnectedElement().nativeElement.getBoundingClientRect().width}getOverlayPosition(){const q=[new n.tR({originX:"start",originY:"bottom"},{overlayX:"start",overlayY:"top"}),new n.tR({originX:"start",originY:"top"},{overlayX:"start",overlayY:"bottom"})];return this.positionStrategy=this.overlay.position().flexibleConnectedTo(this.getConnectedElement()).withFlexibleDimensions(!1).withPush(!1).withPositions(q).withTransformOriginOn(".ant-select-dropdown"),this.positionStrategy}resetActiveItem(){const q=this.nzAutocomplete.getOptionIndex(this.previousValue);this.nzAutocomplete.clearSelectedOptions(null,!0),-1!==q?(this.nzAutocomplete.setActiveItem(q),this.nzAutocomplete.activeItem.select(!1)):this.nzAutocomplete.setActiveItem(this.nzAutocomplete.nzDefaultActiveFirstOption?0:-1)}setValueAndClose(q){const ye=q.nzValue;this.setTriggerValue(q.getLabel()),this.onChange(ye),this.elementRef.nativeElement.focus(),this.closePanel()}setTriggerValue(q){const ye=this.nzAutocomplete.getOption(q),ee=ye?ye.getLabel():q;this.elementRef.nativeElement.value=ee??"",this.nzAutocomplete.nzBackfill||(this.previousValue=ee)}doBackfill(){this.nzAutocomplete.nzBackfill&&this.nzAutocomplete.activeItem&&this.setTriggerValue(this.nzAutocomplete.activeItem.getLabel())}canOpen(){const q=this.elementRef.nativeElement;return!q.readOnly&&!q.disabled}static#e=this.\u0275fac=function(ye){return new(ye||Me)(i.Y36(i.R0b),i.Y36(i.SBq),i.Y36(n.aV),i.Y36(i.s_b),i.Y36(E.ke,8),i.Y36(t.K0,8))};static#t=this.\u0275dir=i.lG2({type:Me,selectors:[["input","nzAutocomplete",""],["textarea","nzAutocomplete",""]],hostAttrs:["autocomplete","off","aria-autocomplete","list"],hostBindings:function(ye,ee){1&ye&&i.NdJ("focusin",function(){return ee.handleFocus()})("blur",function(){return ee.handleBlur()})("input",function(Re){return ee.handleInput(Re)})("keydown",function(Re){return ee.handleKeydown(Re)})},inputs:{nzAutocomplete:"nzAutocomplete"},exportAs:["nzAutocompleteTrigger"],features:[i._Bn([ce])]})}return Me})(),ae=(()=>{class Me{get options(){return this.nzDataSource?this.fromDataSourceOptions:this.fromContentOptions}constructor(q,ye,ee,Be){this.changeDetectorRef=q,this.ngZone=ye,this.directionality=ee,this.noAnimation=Be,this.nzOverlayClassName="",this.nzOverlayStyle={},this.nzDefaultActiveFirstOption=!0,this.nzBackfill=!1,this.compareWith=(Re,ct)=>Re===ct,this.selectionChange=new i.vpe,this.showPanel=!0,this.isOpen=!1,this.activeItem=null,this.dir="ltr",this.destroy$=new z.x,this.animationStateChange=new i.vpe,this.activeItemIndex=-1,this.selectionChangeSubscription=h.w0.EMPTY,this.optionMouseEnterSubscription=h.w0.EMPTY,this.dataSourceChangeSubscription=h.w0.EMPTY,this.optionSelectionChanges=(0,v.P)(()=>this.options?(0,g.T)(...this.options.map(Re=>Re.selectionChange)):this.ngZone.onStable.asObservable().pipe((0,T.q)(1),(0,x.w)(()=>this.optionSelectionChanges))),this.optionMouseEnter=(0,v.P)(()=>this.options?(0,g.T)(...this.options.map(Re=>Re.mouseEntered)):this.ngZone.onStable.asObservable().pipe((0,T.q)(1),(0,x.w)(()=>this.optionMouseEnter)))}ngOnInit(){this.directionality.change?.pipe((0,p.R)(this.destroy$)).subscribe(q=>{this.dir=q,this.changeDetectorRef.detectChanges()}),this.dir=this.directionality.value}onAnimationEvent(q){this.animationStateChange.emit(q)}ngAfterContentInit(){this.nzDataSource||this.optionsInit()}ngAfterViewInit(){this.nzDataSource&&this.optionsInit()}ngOnDestroy(){this.dataSourceChangeSubscription.unsubscribe(),this.selectionChangeSubscription.unsubscribe(),this.optionMouseEnterSubscription.unsubscribe(),this.dataSourceChangeSubscription=this.selectionChangeSubscription=this.optionMouseEnterSubscription=null,this.destroy$.next(),this.destroy$.complete()}setVisibility(){this.showPanel=!!this.options.length,this.changeDetectorRef.markForCheck()}setActiveItem(q){const ye=this.options.get(q);ye&&!ye.active?(this.activeItem=ye,this.activeItemIndex=q,this.clearSelectedOptions(this.activeItem),this.activeItem.setActiveStyles()):(this.activeItem=null,this.activeItemIndex=-1,this.clearSelectedOptions()),this.changeDetectorRef.markForCheck()}setNextItemActive(){this.setActiveItem(this.activeItemIndex+1<=this.options.length-1?this.activeItemIndex+1:0)}setPreviousItemActive(){this.setActiveItem(this.activeItemIndex-1<0?this.options.length-1:this.activeItemIndex-1)}getOptionIndex(q){return this.options.reduce((ye,ee,Be)=>-1===ye?this.compareWith(q,ee.nzValue)?Be:-1:ye,-1)}getOption(q){return this.options.find(ye=>this.compareWith(q,ye.nzValue))||null}optionsInit(){this.setVisibility(),this.subscribeOptionChanges(),this.dataSourceChangeSubscription=(this.nzDataSource?this.fromDataSourceOptions.changes:this.fromContentOptions.changes).subscribe(ye=>{!ye.dirty&&this.isOpen&&setTimeout(()=>this.setVisibility()),this.subscribeOptionChanges()})}clearSelectedOptions(q,ye=!1){this.options.forEach(ee=>{ee!==q&&(ye&&ee.deselect(),ee.setInactiveStyles())})}subscribeOptionChanges(){this.selectionChangeSubscription.unsubscribe(),this.selectionChangeSubscription=this.optionSelectionChanges.pipe((0,d.h)(q=>q.isUserInput)).subscribe(q=>{q.source.select(),q.source.setActiveStyles(),this.activeItem=q.source,this.activeItemIndex=this.getOptionIndex(this.activeItem.nzValue),this.clearSelectedOptions(q.source,!0),this.selectionChange.emit(q.source)}),this.optionMouseEnterSubscription.unsubscribe(),this.optionMouseEnterSubscription=this.optionMouseEnter.subscribe(q=>{q.setActiveStyles(),this.activeItem=q,this.activeItemIndex=this.getOptionIndex(this.activeItem.nzValue),this.clearSelectedOptions(q)})}static#e=this.\u0275fac=function(ye){return new(ye||Me)(i.Y36(i.sBO),i.Y36(i.R0b),i.Y36(e.Is,8),i.Y36(l.P,9))};static#t=this.\u0275cmp=i.Xpm({type:Me,selectors:[["nz-autocomplete"]],contentQueries:function(ye,ee,Be){if(1&ye&&i.Suo(Be,le,5),2&ye){let Re;i.iGM(Re=i.CRH())&&(ee.fromContentOptions=Re)}},viewQuery:function(ye,ee){if(1&ye&&(i.Gf(i.Rgc,5),i.Gf(_e,5),i.Gf(Y,5),i.Gf(le,5)),2&ye){let Be;i.iGM(Be=i.CRH())&&(ee.template=Be.first),i.iGM(Be=i.CRH())&&(ee.panel=Be.first),i.iGM(Be=i.CRH())&&(ee.content=Be.first),i.iGM(Be=i.CRH())&&(ee.fromDataSourceOptions=Be)}},inputs:{nzWidth:"nzWidth",nzOverlayClassName:"nzOverlayClassName",nzOverlayStyle:"nzOverlayStyle",nzDefaultActiveFirstOption:"nzDefaultActiveFirstOption",nzBackfill:"nzBackfill",compareWith:"compareWith",nzDataSource:"nzDataSource"},outputs:{selectionChange:"selectionChange"},exportAs:["nzAutocomplete"],ngContentSelectors:K,decls:1,vars:0,consts:[[1,"ant-select-dropdown","ant-select-dropdown-placement-bottomLeft",3,"ngClass","ngStyle","nzNoAnimation"],["panel",""],[2,"max-height","256px","overflow-y","auto","overflow-anchor","none"],[2,"display","flex","flex-direction","column"],[4,"ngTemplateOutlet"],["contentTemplate",""],["optionsTemplate",""],[3,"nzValue","nzLabel",4,"ngFor","ngForOf"],[3,"nzValue","nzLabel"]],template:function(ye,ee){1&ye&&(i.F$t(),i.YNc(0,pe,9,10,"ng-template"))},dependencies:[t.mk,t.sg,t.tP,t.PC,l.P,le],encapsulation:2,data:{animation:[A.mF]},changeDetection:0})}return(0,u.gn)([(0,D.yF)()],Me.prototype,"nzDefaultActiveFirstOption",void 0),(0,u.gn)([(0,D.yF)()],Me.prototype,"nzBackfill",void 0),Me})(),xe=(()=>{class Me{static#e=this.\u0275fac=function(ye){return new(ye||Me)};static#t=this.\u0275mod=i.oAB({type:Me});static#n=this.\u0275inj=i.cJS({imports:[e.vT,t.ez,n.U8,C.T,l.g,E.o7]})}return Me})()},96928:(nt,I,o)=>{"use strict";o.d(I,{Dz:()=>p,Rt:()=>y});var e=o(97582),n=o(65879),t=o(83064),i=o(27754),l=o(62831),C=o(96814),E=o(90551),u=o(49388);const z=["textEl"];function M(T,x){if(1&T&&n._UZ(0,"span",3),2&T){const D=n.oxw();n.Q6J("nzType",D.nzIcon)}}function h(T,x){if(1&T){const D=n.EpF();n.TgZ(0,"img",4),n.NdJ("error",function(P){n.CHM(D);const O=n.oxw();return n.KtG(O.imgError(P))}),n.qZA()}if(2&T){const D=n.oxw();n.Q6J("src",D.nzSrc,n.LSH),n.uIk("srcset",D.nzSrcSet)("alt",D.nzAlt)}}function v(T,x){if(1&T&&(n.TgZ(0,"span",5,6),n._uU(2),n.qZA()),2&T){const D=n.oxw();n.xp6(2),n.Oqu(D.nzText)}}let p=(()=>{class T{constructor(D,_,P,O,A){this.nzConfigService=D,this.elementRef=_,this.cdr=P,this.platform=O,this.ngZone=A,this._nzModuleName="avatar",this.nzShape="circle",this.nzSize="default",this.nzGap=4,this.nzError=new n.vpe,this.hasText=!1,this.hasSrc=!0,this.hasIcon=!1,this.classMap={},this.customSize=null,this.el=this.elementRef.nativeElement}imgError(D){this.nzError.emit(D),D.defaultPrevented||(this.hasSrc=!1,this.hasIcon=!1,this.hasText=!1,this.nzIcon?this.hasIcon=!0:this.nzText&&(this.hasText=!0),this.cdr.detectChanges(),this.setSizeStyle(),this.notifyCalc())}ngOnChanges(){this.hasText=!this.nzSrc&&!!this.nzText,this.hasIcon=!this.nzSrc&&!!this.nzIcon,this.hasSrc=!!this.nzSrc,this.setSizeStyle(),this.notifyCalc()}calcStringSize(){if(!this.hasText)return;const D=this.textEl.nativeElement,_=D.offsetWidth,P=this.el.getBoundingClientRect().width,O=2*this.nzGap{setTimeout(()=>{this.calcStringSize()})})}setSizeStyle(){this.customSize="number"==typeof this.nzSize?`${this.nzSize}px`:null,this.cdr.markForCheck()}static#e=this.\u0275fac=function(_){return new(_||T)(n.Y36(t.jY),n.Y36(n.SBq),n.Y36(n.sBO),n.Y36(l.t4),n.Y36(n.R0b))};static#t=this.\u0275cmp=n.Xpm({type:T,selectors:[["nz-avatar"]],viewQuery:function(_,P){if(1&_&&n.Gf(z,5),2&_){let O;n.iGM(O=n.CRH())&&(P.textEl=O.first)}},hostAttrs:[1,"ant-avatar"],hostVars:20,hostBindings:function(_,P){2&_&&(n.Udp("width",P.customSize)("height",P.customSize)("line-height",P.customSize)("font-size",P.hasIcon&&P.customSize?P.nzSize/2:null,"px"),n.ekj("ant-avatar-lg","large"===P.nzSize)("ant-avatar-sm","small"===P.nzSize)("ant-avatar-square","square"===P.nzShape)("ant-avatar-circle","circle"===P.nzShape)("ant-avatar-icon",P.nzIcon)("ant-avatar-image",P.hasSrc))},inputs:{nzShape:"nzShape",nzSize:"nzSize",nzGap:"nzGap",nzText:"nzText",nzSrc:"nzSrc",nzSrcSet:"nzSrcSet",nzAlt:"nzAlt",nzIcon:"nzIcon"},outputs:{nzError:"nzError"},exportAs:["nzAvatar"],features:[n.TTD],decls:3,vars:3,consts:[["nz-icon","",3,"nzType",4,"ngIf"],[3,"src","error",4,"ngIf"],["class","ant-avatar-string",4,"ngIf"],["nz-icon","",3,"nzType"],[3,"src","error"],[1,"ant-avatar-string"],["textEl",""]],template:function(_,P){1&_&&(n.YNc(0,M,1,1,"span",0),n.YNc(1,h,1,3,"img",1),n.YNc(2,v,3,1,"span",2)),2&_&&(n.Q6J("ngIf",P.nzIcon&&P.hasIcon),n.xp6(1),n.Q6J("ngIf",P.nzSrc&&P.hasSrc),n.xp6(1),n.Q6J("ngIf",P.nzText&&P.hasText))},dependencies:[C.O5,E.Ls],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,t.oS)()],T.prototype,"nzShape",void 0),(0,e.gn)([(0,t.oS)()],T.prototype,"nzSize",void 0),(0,e.gn)([(0,t.oS)(),(0,i.Rn)()],T.prototype,"nzGap",void 0),T})(),y=(()=>{class T{static#e=this.\u0275fac=function(_){return new(_||T)};static#t=this.\u0275mod=n.oAB({type:T});static#n=this.\u0275inj=n.cJS({imports:[u.vT,C.ez,E.PV,l.ud]})}return T})()},47532:(nt,I,o)=>{"use strict";o.d(I,{j:()=>O,o:()=>P});var e=o(97582),n=o(62831),t=o(96814),i=o(65879),l=o(92438),C=o(78645),E=o(47394),u=o(59773),z=o(83620),M=o(64194),h=o(83064),v=o(99087),g=o(27754),d=o(49388),p=o(90551);const f=["backTop"];function y(A,k){1&A&&(i.TgZ(0,"div",5)(1,"div",6),i._UZ(2,"span",7),i.qZA()())}function T(A,k){}function x(A,k){if(1&A&&(i.TgZ(0,"div",1,2),i.YNc(2,y,3,0,"ng-template",null,3,i.W1O),i.YNc(4,T,0,0,"ng-template",4),i.qZA()),2&A){const F=i.MAs(3),W=i.oxw();i.ekj("ant-back-top-rtl","rtl"===W.dir),i.Q6J("@fadeMotion",void 0),i.xp6(4),i.Q6J("ngTemplateOutlet",W.nzTemplate||F)}}const _=(0,n.i$)({passive:!0});let P=(()=>{class A{set backTop(F){F&&(this.backTopClickSubscription.unsubscribe(),this.backTopClickSubscription=this.zone.runOutsideAngular(()=>(0,l.R)(F.nativeElement,"click").pipe((0,u.R)(this.destroy$)).subscribe(()=>{this.scrollSrv.scrollTo(this.getTarget(),0,{duration:this.nzDuration}),this.nzClick.observers.length&&this.zone.run(()=>this.nzClick.emit(!0))})))}constructor(F,W,K,_e,Y,G,H,j,te){this.doc=F,this.nzConfigService=W,this.scrollSrv=K,this.platform=_e,this.cd=Y,this.zone=G,this.cdr=H,this.destroy$=j,this.directionality=te,this._nzModuleName="backTop",this.scrollListenerDestroy$=new C.x,this.target=null,this.visible=!1,this.dir="ltr",this.nzVisibilityHeight=400,this.nzDuration=450,this.nzClick=new i.vpe,this.backTopClickSubscription=E.w0.EMPTY,this.dir=this.directionality.value}ngOnInit(){this.registerScrollEvent(),this.directionality.change?.pipe((0,u.R)(this.destroy$)).subscribe(F=>{this.dir=F,this.cdr.detectChanges()}),this.dir=this.directionality.value}getTarget(){return this.target||window}handleScroll(){this.visible!==this.scrollSrv.getScroll(this.getTarget())>this.nzVisibilityHeight&&(this.visible=!this.visible,this.cd.detectChanges())}registerScrollEvent(){this.platform.isBrowser&&(this.scrollListenerDestroy$.next(!0),this.handleScroll(),this.zone.runOutsideAngular(()=>{(0,l.R)(this.getTarget(),"scroll",_).pipe((0,z.b)(50),(0,u.R)(this.scrollListenerDestroy$)).subscribe(()=>this.handleScroll())}))}ngOnDestroy(){this.scrollListenerDestroy$.next(!0),this.scrollListenerDestroy$.complete()}ngOnChanges(F){const{nzTarget:W}=F;W&&(this.target="string"==typeof this.nzTarget?this.doc.querySelector(this.nzTarget):this.nzTarget,this.registerScrollEvent())}static#e=this.\u0275fac=function(W){return new(W||A)(i.Y36(t.K0),i.Y36(h.jY),i.Y36(v.MF),i.Y36(n.t4),i.Y36(i.sBO),i.Y36(i.R0b),i.Y36(i.sBO),i.Y36(v.kn),i.Y36(d.Is,8))};static#t=this.\u0275cmp=i.Xpm({type:A,selectors:[["nz-back-top"]],viewQuery:function(W,K){if(1&W&&i.Gf(f,5),2&W){let _e;i.iGM(_e=i.CRH())&&(K.backTop=_e.first)}},inputs:{nzTemplate:"nzTemplate",nzVisibilityHeight:"nzVisibilityHeight",nzTarget:"nzTarget",nzDuration:"nzDuration"},outputs:{nzClick:"nzClick"},exportAs:["nzBackTop"],features:[i._Bn([v.kn]),i.TTD],decls:1,vars:1,consts:[["class","ant-back-top",3,"ant-back-top-rtl",4,"ngIf"],[1,"ant-back-top"],["backTop",""],["defaultContent",""],[3,"ngTemplateOutlet"],[1,"ant-back-top-content"],[1,"ant-back-top-icon"],["nz-icon","","nzType","vertical-align-top"]],template:function(W,K){1&W&&i.YNc(0,x,5,4,"div",0),2&W&&i.Q6J("ngIf",K.visible)},dependencies:[t.O5,t.tP,p.Ls],encapsulation:2,data:{animation:[M.MC]},changeDetection:0})}return(0,e.gn)([(0,h.oS)(),(0,g.Rn)()],A.prototype,"nzVisibilityHeight",void 0),(0,e.gn)([(0,g.Rn)()],A.prototype,"nzDuration",void 0),A})(),O=(()=>{class A{static#e=this.\u0275fac=function(W){return new(W||A)};static#t=this.\u0275mod=i.oAB({type:A});static#n=this.\u0275inj=i.cJS({imports:[d.vT,t.ez,n.ud,p.PV]})}return A})()},33640:(nt,I,o)=>{"use strict";o.d(I,{mS:()=>_e,x7:()=>W});var e=o(97582),n=o(65879),t=o(78645),i=o(59773),l=o(64194),C=o(83064),E=o(27754),u=o(49388),z=o(331),M=o(96814),h=o(8324),v=o(17131);function g(Y,G){if(1&Y&&(n.TgZ(0,"p",6),n._uU(1),n.qZA()),2&Y){const H=G.$implicit,j=n.oxw(2).index,te=n.oxw(2);n.ekj("current",H===te.countArray[j]),n.xp6(1),n.hij(" ",H," ")}}function d(Y,G){if(1&Y&&(n.ynx(0),n.YNc(1,g,2,3,"p",5),n.BQk()),2&Y){const H=n.oxw(3);n.xp6(1),n.Q6J("ngForOf",H.countSingleArray)}}function p(Y,G){if(1&Y&&(n.TgZ(0,"span",3),n.YNc(1,d,2,1,"ng-container",4),n.qZA()),2&Y){const H=G.index,j=n.oxw(2);n.Udp("transform","translateY("+100*-j.countArray[H]+"%)"),n.Q6J("nzNoAnimation",j.noAnimation),n.xp6(1),n.Q6J("ngIf",!j.nzDot&&void 0!==j.countArray[H])}}function f(Y,G){if(1&Y&&(n.ynx(0),n.YNc(1,p,2,4,"span",2),n.BQk()),2&Y){const H=n.oxw();n.xp6(1),n.Q6J("ngForOf",H.maxNumberArray)}}function y(Y,G){if(1&Y&&n._uU(0),2&Y){const H=n.oxw();n.hij("",H.nzOverflowCount,"+")}}function T(Y,G){if(1&Y&&(n.ynx(0),n._uU(1),n.BQk()),2&Y){const H=n.oxw(2);n.xp6(1),n.Oqu(H.nzText)}}function x(Y,G){if(1&Y&&(n.ynx(0),n._UZ(1,"span",2),n.TgZ(2,"span",3),n.YNc(3,T,2,1,"ng-container",1),n.qZA(),n.BQk()),2&Y){const H=n.oxw();n.xp6(1),n.Gre("ant-badge-status-dot ant-badge-status-",H.nzStatus||H.presetColor,""),n.Udp("background",!H.presetColor&&H.nzColor),n.Q6J("ngStyle",H.nzStyle),n.xp6(2),n.Q6J("nzStringTemplateOutlet",H.nzText)}}function D(Y,G){if(1&Y&&n._UZ(0,"nz-badge-sup",5),2&Y){const H=n.oxw(2);n.Q6J("nzOffset",H.nzOffset)("nzSize",H.nzSize)("nzTitle",H.nzTitle)("nzStyle",H.nzStyle)("nzDot",H.nzDot)("nzOverflowCount",H.nzOverflowCount)("disableAnimation",!!(H.nzStandalone||H.nzStatus||H.nzColor||null!=H.noAnimation&&H.noAnimation.nzNoAnimation))("nzCount",H.nzCount)("noAnimation",!(null==H.noAnimation||!H.noAnimation.nzNoAnimation))}}function _(Y,G){if(1&Y&&(n.ynx(0),n.YNc(1,D,1,9,"nz-badge-sup",4),n.BQk()),2&Y){const H=n.oxw();n.xp6(1),n.Q6J("ngIf",H.showSup)}}const P=["*"],A=["pink","red","yellow","orange","cyan","green","blue","purple","geekblue","magenta","volcano","gold","lime"];let k=(()=>{class Y{constructor(){this.nzStyle=null,this.nzDot=!1,this.nzOverflowCount=99,this.disableAnimation=!1,this.noAnimation=!1,this.nzSize="default",this.maxNumberArray=[],this.countArray=[],this.count=0,this.countSingleArray=[0,1,2,3,4,5,6,7,8,9]}generateMaxNumberArray(){this.maxNumberArray=this.nzOverflowCount.toString().split("")}ngOnInit(){this.generateMaxNumberArray()}ngOnChanges(H){const{nzOverflowCount:j,nzCount:te}=H;te&&"number"==typeof te.currentValue&&(this.count=Math.max(0,te.currentValue),this.countArray=this.count.toString().split("").map(ne=>+ne)),j&&this.generateMaxNumberArray()}static#e=this.\u0275fac=function(j){return new(j||Y)};static#t=this.\u0275cmp=n.Xpm({type:Y,selectors:[["nz-badge-sup"]],hostAttrs:[1,"ant-scroll-number"],hostVars:17,hostBindings:function(j,te){2&j&&(n.uIk("title",null===te.nzTitle?"":te.nzTitle||te.nzCount),n.d8E("@.disabled",te.disableAnimation)("@zoomBadgeMotion",void 0),n.Akn(te.nzStyle),n.Udp("right",te.nzOffset&&te.nzOffset[0]?-te.nzOffset[0]:null,"px")("margin-top",te.nzOffset&&te.nzOffset[1]?te.nzOffset[1]:null,"px"),n.ekj("ant-badge-count",!te.nzDot)("ant-badge-count-sm","small"===te.nzSize)("ant-badge-dot",te.nzDot)("ant-badge-multiple-words",te.countArray.length>=2))},inputs:{nzOffset:"nzOffset",nzTitle:"nzTitle",nzStyle:"nzStyle",nzDot:"nzDot",nzOverflowCount:"nzOverflowCount",disableAnimation:"disableAnimation",nzCount:"nzCount",noAnimation:"noAnimation",nzSize:"nzSize"},exportAs:["nzBadgeSup"],features:[n.TTD],decls:3,vars:2,consts:[[4,"ngIf","ngIfElse"],["overflowTemplate",""],["class","ant-scroll-number-only",3,"nzNoAnimation","transform",4,"ngFor","ngForOf"],[1,"ant-scroll-number-only",3,"nzNoAnimation"],[4,"ngIf"],["class","ant-scroll-number-only-unit",3,"current",4,"ngFor","ngForOf"],[1,"ant-scroll-number-only-unit"]],template:function(j,te){if(1&j&&(n.YNc(0,f,2,1,"ng-container",0),n.YNc(1,y,1,1,"ng-template",null,1,n.W1O)),2&j){const ne=n.MAs(2);n.Q6J("ngIf",te.count<=te.nzOverflowCount)("ngIfElse",ne)}},dependencies:[M.sg,M.O5,z.P],encapsulation:2,data:{animation:[l.Ev]},changeDetection:0})}return Y})(),W=(()=>{class Y{constructor(H,j,te,ne,pe,re){this.nzConfigService=H,this.renderer=j,this.cdr=te,this.elementRef=ne,this.directionality=pe,this.noAnimation=re,this._nzModuleName="badge",this.showSup=!1,this.presetColor=null,this.dir="ltr",this.destroy$=new t.x,this.nzShowZero=!1,this.nzShowDot=!0,this.nzStandalone=!1,this.nzDot=!1,this.nzOverflowCount=99,this.nzColor=void 0,this.nzStyle=null,this.nzText=null,this.nzSize="default"}ngOnInit(){this.directionality.change?.pipe((0,i.R)(this.destroy$)).subscribe(H=>{this.dir=H,this.prepareBadgeForRtl(),this.cdr.detectChanges()}),this.dir=this.directionality.value,this.prepareBadgeForRtl()}ngOnChanges(H){const{nzColor:j,nzShowDot:te,nzDot:ne,nzCount:pe,nzShowZero:re}=H;j&&(this.presetColor=this.nzColor&&-1!==A.indexOf(this.nzColor)?this.nzColor:null),(te||ne||pe||re)&&(this.showSup=this.nzShowDot&&this.nzDot||"number"==typeof this.nzCount&&this.nzCount>0||"number"==typeof this.nzCount&&this.nzCount<=0&&this.nzShowZero)}prepareBadgeForRtl(){this.isRtlLayout?this.renderer.addClass(this.elementRef.nativeElement,"ant-badge-rtl"):this.renderer.removeClass(this.elementRef.nativeElement,"ant-badge-rtl")}get isRtlLayout(){return"rtl"===this.dir}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(j){return new(j||Y)(n.Y36(C.jY),n.Y36(n.Qsj),n.Y36(n.sBO),n.Y36(n.SBq),n.Y36(u.Is,8),n.Y36(z.P,9))};static#t=this.\u0275cmp=n.Xpm({type:Y,selectors:[["nz-badge"]],hostAttrs:[1,"ant-badge"],hostVars:4,hostBindings:function(j,te){2&j&&n.ekj("ant-badge-status",te.nzStatus)("ant-badge-not-a-wrapper",!!(te.nzStandalone||te.nzStatus||te.nzColor))},inputs:{nzShowZero:"nzShowZero",nzShowDot:"nzShowDot",nzStandalone:"nzStandalone",nzDot:"nzDot",nzOverflowCount:"nzOverflowCount",nzColor:"nzColor",nzStyle:"nzStyle",nzText:"nzText",nzTitle:"nzTitle",nzStatus:"nzStatus",nzCount:"nzCount",nzOffset:"nzOffset",nzSize:"nzSize"},exportAs:["nzBadge"],features:[n.TTD],ngContentSelectors:P,decls:3,vars:2,consts:[[4,"ngIf"],[4,"nzStringTemplateOutlet"],[3,"ngStyle"],[1,"ant-badge-status-text"],[3,"nzOffset","nzSize","nzTitle","nzStyle","nzDot","nzOverflowCount","disableAnimation","nzCount","noAnimation",4,"ngIf"],[3,"nzOffset","nzSize","nzTitle","nzStyle","nzDot","nzOverflowCount","disableAnimation","nzCount","noAnimation"]],template:function(j,te){1&j&&(n.F$t(),n.YNc(0,x,4,7,"ng-container",0),n.Hsn(1),n.YNc(2,_,2,1,"ng-container",1)),2&j&&(n.Q6J("ngIf",te.nzStatus||te.nzColor),n.xp6(2),n.Q6J("nzStringTemplateOutlet",te.nzCount))},dependencies:[M.O5,M.PC,h.f,k],encapsulation:2,data:{animation:[l.Ev]},changeDetection:0})}return(0,e.gn)([(0,E.yF)()],Y.prototype,"nzShowZero",void 0),(0,e.gn)([(0,E.yF)()],Y.prototype,"nzShowDot",void 0),(0,e.gn)([(0,E.yF)()],Y.prototype,"nzStandalone",void 0),(0,e.gn)([(0,E.yF)()],Y.prototype,"nzDot",void 0),(0,e.gn)([(0,C.oS)()],Y.prototype,"nzOverflowCount",void 0),(0,e.gn)([(0,C.oS)()],Y.prototype,"nzColor",void 0),Y})(),_e=(()=>{class Y{static#e=this.\u0275fac=function(j){return new(j||Y)};static#t=this.\u0275mod=n.oAB({type:Y});static#n=this.\u0275inj=n.cJS({imports:[u.vT,M.ez,v.Q8,h.T,z.g]})}return Y})()},3626:(nt,I,o)=>{"use strict";o.d(I,{Dg:()=>K,MO:()=>W,lt:()=>_e});var e=o(65879),n=o(96814),t=o(8324),i=o(62787),l=o(90551),C=o(97582),E=o(52787),u=o(78645),z=o(59773),M=o(32181),h=o(27921),v=o(1608),g=o(27754),d=o(49388),p=o(33651),f=o(85448);const y=["*"];function T(Y,G){}function x(Y,G){if(1&Y&&(e.ynx(0),e.TgZ(1,"span",3),e.YNc(2,T,0,0,"ng-template",4),e._UZ(3,"span",5),e.qZA(),e.BQk()),2&Y){const H=e.oxw(),j=e.MAs(2);e.xp6(1),e.Q6J("nzDropdownMenu",H.nzOverlay),e.xp6(1),e.Q6J("ngTemplateOutlet",j)}}function D(Y,G){1&Y&&(e.TgZ(0,"span",6),e.Hsn(1),e.qZA())}function _(Y,G){if(1&Y&&(e.ynx(0),e._uU(1),e.BQk()),2&Y){const H=e.oxw(2);e.xp6(1),e.hij(" ",H.nzBreadCrumbComponent.nzSeparator," ")}}function P(Y,G){if(1&Y&&(e.TgZ(0,"nz-breadcrumb-separator"),e.YNc(1,_,2,1,"ng-container",7),e.qZA()),2&Y){const H=e.oxw();e.xp6(1),e.Q6J("nzStringTemplateOutlet",H.nzBreadCrumbComponent.nzSeparator)}}function O(Y,G){if(1&Y){const H=e.EpF();e.TgZ(0,"nz-breadcrumb-item")(1,"a",2),e.NdJ("click",function(te){const pe=e.CHM(H).$implicit,re=e.oxw(2);return e.KtG(re.navigate(pe.url,te))}),e._uU(2),e.qZA()()}if(2&Y){const H=G.$implicit;e.xp6(1),e.uIk("href",H.url,e.LSH),e.xp6(1),e.Oqu(H.label)}}function A(Y,G){if(1&Y&&(e.ynx(0),e.YNc(1,O,3,2,"nz-breadcrumb-item",1),e.BQk()),2&Y){const H=e.oxw();e.xp6(1),e.Q6J("ngForOf",H.breadcrumbs)}}class k{}let F=(()=>{class Y{static#e=this.\u0275fac=function(j){return new(j||Y)};static#t=this.\u0275cmp=e.Xpm({type:Y,selectors:[["nz-breadcrumb-separator"]],hostAttrs:[1,"ant-breadcrumb-separator"],exportAs:["nzBreadcrumbSeparator"],ngContentSelectors:y,decls:1,vars:0,template:function(j,te){1&j&&(e.F$t(),e.Hsn(0))},encapsulation:2})}return Y})(),W=(()=>{class Y{constructor(H){this.nzBreadCrumbComponent=H}static#e=this.\u0275fac=function(j){return new(j||Y)(e.Y36(k))};static#t=this.\u0275cmp=e.Xpm({type:Y,selectors:[["nz-breadcrumb-item"]],inputs:{nzOverlay:"nzOverlay"},exportAs:["nzBreadcrumbItem"],ngContentSelectors:y,decls:4,vars:3,consts:[[4,"ngIf","ngIfElse"],["noMenuTpl",""],[4,"ngIf"],["nz-dropdown","",1,"ant-breadcrumb-overlay-link",3,"nzDropdownMenu"],[3,"ngTemplateOutlet"],["nz-icon","","nzType","down"],[1,"ant-breadcrumb-link"],[4,"nzStringTemplateOutlet"]],template:function(j,te){if(1&j&&(e.F$t(),e.YNc(0,x,4,2,"ng-container",0),e.YNc(1,D,2,0,"ng-template",null,1,e.W1O),e.YNc(3,P,2,1,"nz-breadcrumb-separator",2)),2&j){const ne=e.MAs(2);e.Q6J("ngIf",!!te.nzOverlay)("ngIfElse",ne),e.xp6(3),e.Q6J("ngIf",te.nzBreadCrumbComponent.nzSeparator)}},dependencies:[n.O5,n.tP,t.f,i.cm,l.Ls,F],encapsulation:2,changeDetection:0})}return Y})(),K=(()=>{class Y{constructor(H,j,te,ne,pe){this.injector=H,this.cdr=j,this.elementRef=te,this.renderer=ne,this.directionality=pe,this.nzAutoGenerate=!1,this.nzSeparator="/",this.nzRouteLabel="breadcrumb",this.nzRouteLabelFn=re=>re,this.breadcrumbs=[],this.dir="ltr",this.destroy$=new u.x}ngOnInit(){this.nzAutoGenerate&&this.registerRouterChange(),this.directionality.change?.pipe((0,z.R)(this.destroy$)).subscribe(H=>{this.dir=H,this.prepareComponentForRtl(),this.cdr.detectChanges()}),this.dir=this.directionality.value,this.prepareComponentForRtl()}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}navigate(H,j){j.preventDefault(),this.injector.get(E.F0).navigateByUrl(H)}registerRouterChange(){try{const H=this.injector.get(E.F0),j=this.injector.get(E.gz);H.events.pipe((0,M.h)(te=>te instanceof E.m2),(0,z.R)(this.destroy$),(0,h.O)(!0)).subscribe(()=>{this.breadcrumbs=this.getBreadcrumbs(j.root),this.cdr.markForCheck()})}catch{throw new Error(`${v.Bq} You should import RouterModule if you want to use 'NzAutoGenerate'.`)}}getBreadcrumbs(H,j="",te=[]){const ne=H.children;if(0===ne.length)return te;for(const pe of ne)if(pe.outlet===E.eC){const re=pe.snapshot.url.map(ce=>ce.path).filter(ce=>ce).join("/"),be=re?`${j}/${re}`:j,le=this.nzRouteLabelFn(pe.snapshot.data[this.nzRouteLabel]);return re&&le&&te.push({label:le,params:pe.snapshot.params,url:be}),this.getBreadcrumbs(pe,be,te)}return te}prepareComponentForRtl(){"rtl"===this.dir?this.renderer.addClass(this.elementRef.nativeElement,"ant-breadcrumb-rtl"):this.renderer.removeClass(this.elementRef.nativeElement,"ant-breadcrumb-rtl")}static#e=this.\u0275fac=function(j){return new(j||Y)(e.Y36(e.zs3),e.Y36(e.sBO),e.Y36(e.SBq),e.Y36(e.Qsj),e.Y36(d.Is,8))};static#t=this.\u0275cmp=e.Xpm({type:Y,selectors:[["nz-breadcrumb"]],hostAttrs:[1,"ant-breadcrumb"],inputs:{nzAutoGenerate:"nzAutoGenerate",nzSeparator:"nzSeparator",nzRouteLabel:"nzRouteLabel",nzRouteLabelFn:"nzRouteLabelFn"},exportAs:["nzBreadcrumb"],features:[e._Bn([{provide:k,useExisting:Y}])],ngContentSelectors:y,decls:2,vars:1,consts:[[4,"ngIf"],[4,"ngFor","ngForOf"],[3,"click"]],template:function(j,te){1&j&&(e.F$t(),e.Hsn(0),e.YNc(1,A,2,1,"ng-container",0)),2&j&&(e.xp6(1),e.Q6J("ngIf",te.nzAutoGenerate&&te.breadcrumbs.length))},dependencies:[n.sg,n.O5,W],encapsulation:2,changeDetection:0})}return(0,C.gn)([(0,g.yF)()],Y.prototype,"nzAutoGenerate",void 0),Y})(),_e=(()=>{class Y{static#e=this.\u0275fac=function(j){return new(j||Y)};static#t=this.\u0275mod=e.oAB({type:Y});static#n=this.\u0275inj=e.cJS({imports:[n.ez,t.T,p.U8,f.e4,i.b1,l.PV,d.vT]})}return Y})()},42840:(nt,I,o)=>{"use strict";o.d(I,{fY:()=>D,ix:()=>x,sL:()=>_});var e=o(97582),n=o(65879),t=o(78645),i=o(92438),l=o(59773),C=o(27921),E=o(32181),u=o(83064),z=o(27754),M=o(90551),h=o(49388),v=o(96814),g=o(70855),d=o(41958);const p=["nz-button",""];function f(P,O){1&P&&n._UZ(0,"span",1)}const y=["*"],T="button";let x=(()=>{class P{insertSpan(A,k){A.forEach(F=>{if("#text"===F.nodeName){const W=k.createElement("span"),K=k.parentNode(F);k.insertBefore(K,W,F),k.appendChild(W,F)}})}get iconOnly(){const A=Array.from(this.elementRef?.nativeElement?.childNodes||[]),k=A.every(K=>"#text"!==K.nodeName),F=0==A.filter(K=>!("#comment"===K.nodeName||K?.attributes?.getNamedItem("nz-icon"))).length;return!!this.nzIconDirectiveElement&&F&&k}constructor(A,k,F,W,K,_e){this.ngZone=A,this.elementRef=k,this.cdr=F,this.renderer=W,this.nzConfigService=K,this.directionality=_e,this._nzModuleName=T,this.nzBlock=!1,this.nzGhost=!1,this.nzSearch=!1,this.nzLoading=!1,this.nzDanger=!1,this.disabled=!1,this.tabIndex=null,this.nzType=null,this.nzShape=null,this.nzSize="default",this.dir="ltr",this.destroy$=new t.x,this.loading$=new t.x,this.nzConfigService.getConfigChangeEventForComponent(T).pipe((0,l.R)(this.destroy$)).subscribe(()=>{this.cdr.markForCheck()})}ngOnInit(){this.directionality.change?.pipe((0,l.R)(this.destroy$)).subscribe(A=>{this.dir=A,this.cdr.detectChanges()}),this.dir=this.directionality.value,this.ngZone.runOutsideAngular(()=>{(0,i.R)(this.elementRef.nativeElement,"click",{capture:!0}).pipe((0,l.R)(this.destroy$)).subscribe(A=>{(this.disabled&&"A"===A.target?.tagName||this.nzLoading)&&(A.preventDefault(),A.stopImmediatePropagation())})})}ngOnChanges(A){const{nzLoading:k}=A;k&&this.loading$.next(this.nzLoading)}ngAfterViewInit(){this.insertSpan(this.elementRef.nativeElement.childNodes,this.renderer)}ngAfterContentInit(){this.loading$.pipe((0,C.O)(this.nzLoading),(0,E.h)(()=>!!this.nzIconDirectiveElement),(0,l.R)(this.destroy$)).subscribe(A=>{const k=this.nzIconDirectiveElement.nativeElement;A?this.renderer.setStyle(k,"display","none"):this.renderer.removeStyle(k,"display")})}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(k){return new(k||P)(n.Y36(n.R0b),n.Y36(n.SBq),n.Y36(n.sBO),n.Y36(n.Qsj),n.Y36(u.jY),n.Y36(h.Is,8))};static#t=this.\u0275cmp=n.Xpm({type:P,selectors:[["button","nz-button",""],["a","nz-button",""]],contentQueries:function(k,F,W){if(1&k&&n.Suo(W,M.Ls,5,n.SBq),2&k){let K;n.iGM(K=n.CRH())&&(F.nzIconDirectiveElement=K.first)}},hostAttrs:[1,"ant-btn"],hostVars:32,hostBindings:function(k,F){2&k&&(n.uIk("tabindex",F.disabled?-1:null===F.tabIndex?null:F.tabIndex)("disabled",F.disabled||null),n.ekj("ant-btn-primary","primary"===F.nzType)("ant-btn-dashed","dashed"===F.nzType)("ant-btn-link","link"===F.nzType)("ant-btn-text","text"===F.nzType)("ant-btn-circle","circle"===F.nzShape)("ant-btn-round","round"===F.nzShape)("ant-btn-lg","large"===F.nzSize)("ant-btn-sm","small"===F.nzSize)("ant-btn-dangerous",F.nzDanger)("ant-btn-loading",F.nzLoading)("ant-btn-background-ghost",F.nzGhost)("ant-btn-block",F.nzBlock)("ant-input-search-button",F.nzSearch)("ant-btn-rtl","rtl"===F.dir)("ant-btn-icon-only",F.iconOnly))},inputs:{nzBlock:"nzBlock",nzGhost:"nzGhost",nzSearch:"nzSearch",nzLoading:"nzLoading",nzDanger:"nzDanger",disabled:"disabled",tabIndex:"tabIndex",nzType:"nzType",nzShape:"nzShape",nzSize:"nzSize"},exportAs:["nzButton"],features:[n.TTD],attrs:p,ngContentSelectors:y,decls:2,vars:1,consts:[["nz-icon","","nzType","loading",4,"ngIf"],["nz-icon","","nzType","loading"]],template:function(k,F){1&k&&(n.F$t(),n.YNc(0,f,1,0,"span",0),n.Hsn(1)),2&k&&n.Q6J("ngIf",F.nzLoading)},dependencies:[v.O5,M.Ls,g.w],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,z.yF)()],P.prototype,"nzBlock",void 0),(0,e.gn)([(0,z.yF)()],P.prototype,"nzGhost",void 0),(0,e.gn)([(0,z.yF)()],P.prototype,"nzSearch",void 0),(0,e.gn)([(0,z.yF)()],P.prototype,"nzLoading",void 0),(0,e.gn)([(0,z.yF)()],P.prototype,"nzDanger",void 0),(0,e.gn)([(0,z.yF)()],P.prototype,"disabled",void 0),(0,e.gn)([(0,u.oS)()],P.prototype,"nzSize",void 0),P})(),D=(()=>{class P{constructor(A){this.directionality=A,this.nzSize="default",this.dir="ltr",this.destroy$=new t.x}ngOnInit(){this.dir=this.directionality.value,this.directionality.change?.pipe((0,l.R)(this.destroy$)).subscribe(A=>{this.dir=A})}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(k){return new(k||P)(n.Y36(h.Is,8))};static#t=this.\u0275cmp=n.Xpm({type:P,selectors:[["nz-button-group"]],hostAttrs:[1,"ant-btn-group"],hostVars:6,hostBindings:function(k,F){2&k&&n.ekj("ant-btn-group-lg","large"===F.nzSize)("ant-btn-group-sm","small"===F.nzSize)("ant-btn-group-rtl","rtl"===F.dir)},inputs:{nzSize:"nzSize"},exportAs:["nzButtonGroup"],ngContentSelectors:y,decls:1,vars:0,template:function(k,F){1&k&&(n.F$t(),n.Hsn(0))},encapsulation:2,changeDetection:0})}return P})(),_=(()=>{class P{static#e=this.\u0275fac=function(k){return new(k||P)};static#t=this.\u0275mod=n.oAB({type:P});static#n=this.\u0275inj=n.cJS({imports:[h.vT,v.ez,d.vG,M.PV,g.a,g.a,d.vG]})}return P})()},82962:(nt,I,o)=>{"use strict";o.d(I,{bd:()=>le,vh:()=>Q});var e=o(97582),n=o(65879),t=o(27754),i=o(78645),l=o(59773),C=o(83064),E=o(49388),u=o(96814),z=o(8324);function M(ie,ae){1&ie&&n.Hsn(0)}const h=["*"];function v(ie,ae){1&ie&&(n.TgZ(0,"div",4),n._UZ(1,"div",5),n.qZA()),2&ie&&n.Q6J("ngClass",ae.$implicit)}function g(ie,ae){if(1&ie&&(n.TgZ(0,"div",2),n.YNc(1,v,2,1,"div",3),n.qZA()),2&ie){const xe=ae.$implicit;n.xp6(1),n.Q6J("ngForOf",xe)}}function d(ie,ae){if(1&ie&&(n.ynx(0),n._uU(1),n.BQk()),2&ie){const xe=n.oxw(3);n.xp6(1),n.Oqu(xe.nzTitle)}}function p(ie,ae){if(1&ie&&(n.TgZ(0,"div",11),n.YNc(1,d,2,1,"ng-container",12),n.qZA()),2&ie){const xe=n.oxw(2);n.xp6(1),n.Q6J("nzStringTemplateOutlet",xe.nzTitle)}}function f(ie,ae){if(1&ie&&(n.ynx(0),n._uU(1),n.BQk()),2&ie){const xe=n.oxw(3);n.xp6(1),n.Oqu(xe.nzExtra)}}function y(ie,ae){if(1&ie&&(n.TgZ(0,"div",13),n.YNc(1,f,2,1,"ng-container",12),n.qZA()),2&ie){const xe=n.oxw(2);n.xp6(1),n.Q6J("nzStringTemplateOutlet",xe.nzExtra)}}function T(ie,ae){}function x(ie,ae){if(1&ie&&(n.ynx(0),n.YNc(1,T,0,0,"ng-template",14),n.BQk()),2&ie){const xe=n.oxw(2);n.xp6(1),n.Q6J("ngTemplateOutlet",xe.listOfNzCardTabComponent.template)}}function D(ie,ae){if(1&ie&&(n.TgZ(0,"div",6)(1,"div",7),n.YNc(2,p,2,1,"div",8),n.YNc(3,y,2,1,"div",9),n.qZA(),n.YNc(4,x,2,1,"ng-container",10),n.qZA()),2&ie){const xe=n.oxw();n.xp6(2),n.Q6J("ngIf",xe.nzTitle),n.xp6(1),n.Q6J("ngIf",xe.nzExtra),n.xp6(1),n.Q6J("ngIf",xe.listOfNzCardTabComponent)}}function _(ie,ae){}function P(ie,ae){if(1&ie&&(n.TgZ(0,"div",15),n.YNc(1,_,0,0,"ng-template",14),n.qZA()),2&ie){const xe=n.oxw();n.xp6(1),n.Q6J("ngTemplateOutlet",xe.nzCover)}}function O(ie,ae){1&ie&&(n.ynx(0),n.Hsn(1),n.BQk())}function A(ie,ae){1&ie&&n._UZ(0,"nz-card-loading")}function k(ie,ae){}function F(ie,ae){if(1&ie&&(n.TgZ(0,"li")(1,"span"),n.YNc(2,k,0,0,"ng-template",14),n.qZA()()),2&ie){const xe=ae.$implicit,Me=n.oxw(2);n.Udp("width",100/Me.nzActions.length,"%"),n.xp6(2),n.Q6J("ngTemplateOutlet",xe)}}function W(ie,ae){if(1&ie&&(n.TgZ(0,"ul",16),n.YNc(1,F,3,3,"li",17),n.qZA()),2&ie){const xe=n.oxw();n.xp6(1),n.Q6J("ngForOf",xe.nzActions)}}let ne=(()=>{class ie{constructor(){this.nzHoverable=!0}static#e=this.\u0275fac=function(Me){return new(Me||ie)};static#t=this.\u0275dir=n.lG2({type:ie,selectors:[["","nz-card-grid",""]],hostAttrs:[1,"ant-card-grid"],hostVars:2,hostBindings:function(Me,Ye){2&Me&&n.ekj("ant-card-hoverable",Ye.nzHoverable)},inputs:{nzHoverable:"nzHoverable"},exportAs:["nzCardGrid"]})}return(0,e.gn)([(0,t.yF)()],ie.prototype,"nzHoverable",void 0),ie})(),pe=(()=>{class ie{static#e=this.\u0275fac=function(Me){return new(Me||ie)};static#t=this.\u0275cmp=n.Xpm({type:ie,selectors:[["nz-card-tab"]],viewQuery:function(Me,Ye){if(1&Me&&n.Gf(n.Rgc,7),2&Me){let q;n.iGM(q=n.CRH())&&(Ye.template=q.first)}},exportAs:["nzCardTab"],ngContentSelectors:h,decls:1,vars:0,template:function(Me,Ye){1&Me&&(n.F$t(),n.YNc(0,M,1,0,"ng-template"))},encapsulation:2,changeDetection:0})}return ie})(),re=(()=>{class ie{constructor(){this.listOfLoading=[["ant-col-22"],["ant-col-8","ant-col-15"],["ant-col-6","ant-col-18"],["ant-col-13","ant-col-9"],["ant-col-4","ant-col-3","ant-col-16"],["ant-col-8","ant-col-6","ant-col-8"]]}static#e=this.\u0275fac=function(Me){return new(Me||ie)};static#t=this.\u0275cmp=n.Xpm({type:ie,selectors:[["nz-card-loading"]],hostAttrs:[1,"ant-card-loading-content"],exportAs:["nzCardLoading"],decls:2,vars:1,consts:[[1,"ant-card-loading-content"],["class","ant-row","style","margin-left: -4px; margin-right: -4px;",4,"ngFor","ngForOf"],[1,"ant-row",2,"margin-left","-4px","margin-right","-4px"],["style","padding-left: 4px; padding-right: 4px;",3,"ngClass",4,"ngFor","ngForOf"],[2,"padding-left","4px","padding-right","4px",3,"ngClass"],[1,"ant-card-loading-block"]],template:function(Me,Ye){1&Me&&(n.TgZ(0,"div",0),n.YNc(1,g,2,1,"div",1),n.qZA()),2&Me&&(n.xp6(1),n.Q6J("ngForOf",Ye.listOfLoading))},dependencies:[u.mk,u.sg],encapsulation:2,changeDetection:0})}return ie})(),le=(()=>{class ie{constructor(xe,Me,Ye){this.nzConfigService=xe,this.cdr=Me,this.directionality=Ye,this._nzModuleName="card",this.nzBordered=!0,this.nzBorderless=!1,this.nzLoading=!1,this.nzHoverable=!1,this.nzBodyStyle=null,this.nzActions=[],this.nzType=null,this.nzSize="default",this.dir="ltr",this.destroy$=new i.x,this.nzConfigService.getConfigChangeEventForComponent("card").pipe((0,l.R)(this.destroy$)).subscribe(()=>{this.cdr.markForCheck()})}ngOnInit(){this.directionality.change?.pipe((0,l.R)(this.destroy$)).subscribe(xe=>{this.dir=xe,this.cdr.detectChanges()}),this.dir=this.directionality.value}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(Me){return new(Me||ie)(n.Y36(C.jY),n.Y36(n.sBO),n.Y36(E.Is,8))};static#t=this.\u0275cmp=n.Xpm({type:ie,selectors:[["nz-card"]],contentQueries:function(Me,Ye,q){if(1&Me&&(n.Suo(q,pe,5),n.Suo(q,ne,4)),2&Me){let ye;n.iGM(ye=n.CRH())&&(Ye.listOfNzCardTabComponent=ye.first),n.iGM(ye=n.CRH())&&(Ye.listOfNzCardGridDirective=ye)}},hostAttrs:[1,"ant-card"],hostVars:16,hostBindings:function(Me,Ye){2&Me&&n.ekj("ant-card-loading",Ye.nzLoading)("ant-card-bordered",!1===Ye.nzBorderless&&Ye.nzBordered)("ant-card-hoverable",Ye.nzHoverable)("ant-card-small","small"===Ye.nzSize)("ant-card-contain-grid",Ye.listOfNzCardGridDirective&&Ye.listOfNzCardGridDirective.length)("ant-card-type-inner","inner"===Ye.nzType)("ant-card-contain-tabs",!!Ye.listOfNzCardTabComponent)("ant-card-rtl","rtl"===Ye.dir)},inputs:{nzBordered:"nzBordered",nzBorderless:"nzBorderless",nzLoading:"nzLoading",nzHoverable:"nzHoverable",nzBodyStyle:"nzBodyStyle",nzCover:"nzCover",nzActions:"nzActions",nzType:"nzType",nzSize:"nzSize",nzTitle:"nzTitle",nzExtra:"nzExtra"},exportAs:["nzCard"],ngContentSelectors:h,decls:7,vars:6,consts:[["class","ant-card-head",4,"ngIf"],["class","ant-card-cover",4,"ngIf"],[1,"ant-card-body",3,"ngStyle"],[4,"ngIf","ngIfElse"],["loadingTemplate",""],["class","ant-card-actions",4,"ngIf"],[1,"ant-card-head"],[1,"ant-card-head-wrapper"],["class","ant-card-head-title",4,"ngIf"],["class","ant-card-extra",4,"ngIf"],[4,"ngIf"],[1,"ant-card-head-title"],[4,"nzStringTemplateOutlet"],[1,"ant-card-extra"],[3,"ngTemplateOutlet"],[1,"ant-card-cover"],[1,"ant-card-actions"],[3,"width",4,"ngFor","ngForOf"]],template:function(Me,Ye){if(1&Me&&(n.F$t(),n.YNc(0,D,5,3,"div",0),n.YNc(1,P,2,1,"div",1),n.TgZ(2,"div",2),n.YNc(3,O,2,0,"ng-container",3),n.YNc(4,A,1,0,"ng-template",null,4,n.W1O),n.qZA(),n.YNc(6,W,2,1,"ul",5)),2&Me){const q=n.MAs(5);n.Q6J("ngIf",Ye.nzTitle||Ye.nzExtra||Ye.listOfNzCardTabComponent),n.xp6(1),n.Q6J("ngIf",Ye.nzCover),n.xp6(1),n.Q6J("ngStyle",Ye.nzBodyStyle),n.xp6(1),n.Q6J("ngIf",!Ye.nzLoading)("ngIfElse",q),n.xp6(3),n.Q6J("ngIf",Ye.nzActions.length)}},dependencies:[u.sg,u.O5,u.tP,u.PC,z.f,re],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,C.oS)(),(0,t.yF)()],ie.prototype,"nzBordered",void 0),(0,e.gn)([(0,C.oS)(),(0,t.yF)()],ie.prototype,"nzBorderless",void 0),(0,e.gn)([(0,t.yF)()],ie.prototype,"nzLoading",void 0),(0,e.gn)([(0,C.oS)(),(0,t.yF)()],ie.prototype,"nzHoverable",void 0),(0,e.gn)([(0,C.oS)()],ie.prototype,"nzSize",void 0),ie})(),Q=(()=>{class ie{static#e=this.\u0275fac=function(Me){return new(Me||ie)};static#t=this.\u0275mod=n.oAB({type:ie});static#n=this.\u0275inj=n.cJS({imports:[u.ez,z.T,E.vT]})}return ie})()},77456:(nt,I,o)=>{"use strict";o.d(I,{QZ:()=>W,pA:()=>_,vB:()=>K});var e=o(49388),n=o(62831),t=o(96814),i=o(65879),l=o(97582),C=o(36028),E=o(78645),u=o(92438),z=o(59773),M=o(83064),h=o(27754),v=o(99087);const g=["slickList"],d=["slickTrack"];function p(G,H){}const f=function(G){return{$implicit:G}};function y(G,H){if(1&G){const j=i.EpF();i.TgZ(0,"li",9),i.NdJ("click",function(){const pe=i.CHM(j).index,re=i.oxw(2);return i.KtG(re.onLiClick(pe))}),i.YNc(1,p,0,0,"ng-template",10),i.qZA()}if(2&G){const j=H.index,te=i.oxw(2),ne=i.MAs(8);i.ekj("slick-active",j===te.activeIndex),i.xp6(1),i.Q6J("ngTemplateOutlet",te.nzDotRender||ne)("ngTemplateOutletContext",i.VKq(4,f,j))}}function T(G,H){if(1&G&&(i.TgZ(0,"ul",7),i.YNc(1,y,2,6,"li",8),i.qZA()),2&G){const j=i.oxw();i.ekj("slick-dots-top","top"===j.nzDotPosition)("slick-dots-bottom","bottom"===j.nzDotPosition)("slick-dots-left","left"===j.nzDotPosition)("slick-dots-right","right"===j.nzDotPosition),i.xp6(1),i.Q6J("ngForOf",j.carouselContents)}}function x(G,H){if(1&G&&(i.TgZ(0,"button"),i._uU(1),i.qZA()),2&G){const j=H.$implicit;i.xp6(1),i.Oqu(j+1)}}const D=["*"];let _=(()=>{class G{set isActive(j){this._active=j,this.isActive?this.renderer.addClass(this.el,"slick-active"):this.renderer.removeClass(this.el,"slick-active")}get isActive(){return this._active}constructor(j,te){this.renderer=te,this._active=!1,this.el=j.nativeElement}static#e=this.\u0275fac=function(te){return new(te||G)(i.Y36(i.SBq),i.Y36(i.Qsj))};static#t=this.\u0275dir=i.lG2({type:G,selectors:[["","nz-carousel-content",""]],hostAttrs:[1,"slick-slide"],exportAs:["nzCarouselContent"]})}return G})();class P{get maxIndex(){return this.length-1}get firstEl(){return this.contents[0].el}get lastEl(){return this.contents[this.maxIndex].el}constructor(H,j,te,ne,pe){this.cdr=j,this.renderer=te,this.platform=ne,this.options=pe,this.carouselComponent=H}withCarouselContents(H){const j=this.carouselComponent;if(this.slickListEl=j.slickListEl,this.slickTrackEl=j.slickTrackEl,this.contents=H?.toArray()||[],this.length=this.contents.length,this.platform.isBrowser){const te=j.el.getBoundingClientRect();this.unitWidth=te.width,this.unitHeight=te.height}else H?.forEach((te,ne)=>{0===ne?this.renderer.setStyle(te.el,"width","100%"):this.renderer.setStyle(te.el,"display","none")})}dragging(H){}dispose(){}getFromToInBoundary(H,j){const te=this.maxIndex+1;return{from:(H+te)%te,to:(j+te)%te}}}class O extends P{withCarouselContents(H){super.withCarouselContents(H),this.contents&&(this.slickTrackEl.style.width=this.length*this.unitWidth+"px",this.contents.forEach((j,te)=>{this.renderer.setStyle(j.el,"opacity",this.carouselComponent.activeIndex===te?"1":"0"),this.renderer.setStyle(j.el,"position","relative"),this.renderer.setStyle(j.el,"width",`${this.unitWidth}px`),this.renderer.setStyle(j.el,"left",-this.unitWidth*te+"px"),this.renderer.setStyle(j.el,"transition",["opacity 500ms ease 0s","visibility 500ms ease 0s"])}))}switch(H,j){const{to:te}=this.getFromToInBoundary(H,j),ne=new E.x;return this.contents.forEach((pe,re)=>{this.renderer.setStyle(pe.el,"opacity",te===re?"1":"0")}),setTimeout(()=>{ne.next(),ne.complete()},this.carouselComponent.nzTransitionSpeed),ne}dispose(){this.contents.forEach(H=>{this.renderer.setStyle(H.el,"transition",null),this.renderer.setStyle(H.el,"opacity",null),this.renderer.setStyle(H.el,"width",null),this.renderer.setStyle(H.el,"left",null)}),super.dispose()}}class A extends P{get vertical(){return this.carouselComponent.vertical}constructor(H,j,te,ne,pe){super(H,j,te,ne,pe),this.isDragging=!1,this.isTransitioning=!1}dispose(){super.dispose(),this.renderer.setStyle(this.slickTrackEl,"transform",null)}withCarouselContents(H){super.withCarouselContents(H);const te=this.carouselComponent.activeIndex;this.platform.isBrowser&&this.contents.length&&(this.renderer.setStyle(this.slickListEl,"height",`${this.unitHeight}px`),this.vertical?(this.renderer.setStyle(this.slickTrackEl,"width",`${this.unitWidth}px`),this.renderer.setStyle(this.slickTrackEl,"height",this.length*this.unitHeight+"px"),this.renderer.setStyle(this.slickTrackEl,"transform",`translate3d(0, ${-te*this.unitHeight}px, 0)`)):(this.renderer.setStyle(this.slickTrackEl,"height",`${this.unitHeight}px`),this.renderer.setStyle(this.slickTrackEl,"width",this.length*this.unitWidth+"px"),this.renderer.setStyle(this.slickTrackEl,"transform",`translate3d(${-te*this.unitWidth}px, 0, 0)`)),this.contents.forEach(ne=>{this.renderer.setStyle(ne.el,"position","relative"),this.renderer.setStyle(ne.el,"width",`${this.unitWidth}px`),this.renderer.setStyle(ne.el,"height",`${this.unitHeight}px`)}))}switch(H,j){const{to:te}=this.getFromToInBoundary(H,j),ne=new E.x;return this.renderer.setStyle(this.slickTrackEl,"transition",`transform ${this.carouselComponent.nzTransitionSpeed}ms ease`),this.vertical?this.verticalTransform(H,j):this.horizontalTransform(H,j),this.isTransitioning=!0,this.isDragging=!1,setTimeout(()=>{this.renderer.setStyle(this.slickTrackEl,"transition",null),this.contents.forEach(pe=>{this.renderer.setStyle(pe.el,this.vertical?"top":"left",null)}),this.renderer.setStyle(this.slickTrackEl,"transform",this.vertical?`translate3d(0, ${-te*this.unitHeight}px, 0)`:`translate3d(${-te*this.unitWidth}px, 0, 0)`),this.isTransitioning=!1,ne.next(),ne.complete()},this.carouselComponent.nzTransitionSpeed),ne.asObservable()}dragging(H){if(this.isTransitioning)return;const j=this.carouselComponent.activeIndex;this.carouselComponent.vertical?(!this.isDragging&&this.length>2&&(j===this.maxIndex?this.prepareVerticalContext(!0):0===j&&this.prepareVerticalContext(!1)),this.renderer.setStyle(this.slickTrackEl,"transform",`translate3d(0, ${-j*this.unitHeight+H.x}px, 0)`)):(!this.isDragging&&this.length>2&&(j===this.maxIndex?this.prepareHorizontalContext(!0):0===j&&this.prepareHorizontalContext(!1)),this.renderer.setStyle(this.slickTrackEl,"transform",`translate3d(${-j*this.unitWidth+H.x}px, 0, 0)`)),this.isDragging=!0}verticalTransform(H,j){const{from:te,to:ne}=this.getFromToInBoundary(H,j);this.length>2&&j!==ne?(this.prepareVerticalContext(ne2&&j!==ne?(this.prepareHorizontalContext(ne{class G{set nzDotPosition(j){this._dotPosition=j,this.vertical="left"===j||"right"===j}get nzDotPosition(){return this._dotPosition}constructor(j,te,ne,pe,re,be,le,ce,Q,ie){this.nzConfigService=te,this.ngZone=ne,this.renderer=pe,this.cdr=re,this.platform=be,this.resizeService=le,this.nzDragService=ce,this.directionality=Q,this.customStrategies=ie,this._nzModuleName="carousel",this.nzEffect="scrollx",this.nzEnableSwipe=!0,this.nzDots=!0,this.nzAutoPlay=!1,this.nzAutoPlaySpeed=3e3,this.nzTransitionSpeed=500,this.nzLoop=!0,this.nzStrategyOptions=void 0,this._dotPosition="bottom",this.nzBeforeChange=new i.vpe,this.nzAfterChange=new i.vpe,this.activeIndex=0,this.vertical=!1,this.transitionInProgress=null,this.dir="ltr",this.destroy$=new E.x,this.gestureRect=null,this.pointerDelta=null,this.isTransiting=!1,this.isDragging=!1,this.onLiClick=ae=>{this.goTo("rtl"===this.dir?this.carouselContents.length-1-ae:ae)},this.pointerDown=ae=>{!this.isDragging&&!this.isTransiting&&this.nzEnableSwipe&&(this.clearScheduledTransition(),this.gestureRect=this.slickListEl.getBoundingClientRect(),this.nzDragService.requestDraggingSequence(ae).subscribe(xe=>{this.pointerDelta=xe,this.isDragging=!0,this.strategy?.dragging(this.pointerDelta)},()=>{},()=>{if(this.nzEnableSwipe&&this.isDragging){const xe=this.pointerDelta?this.pointerDelta.x:0;Math.abs(xe)>this.gestureRect.width/3&&(this.nzLoop||xe<=0&&this.activeIndex+10&&this.activeIndex>0)?this.goTo(xe>0?this.activeIndex-1:this.activeIndex+1):this.goTo(this.activeIndex),this.gestureRect=null,this.pointerDelta=null}this.isDragging=!1}))},this.nzDotPosition="bottom",this.el=j.nativeElement}ngOnInit(){this.slickListEl=this.slickList.nativeElement,this.slickTrackEl=this.slickTrack.nativeElement,this.dir=this.directionality.value,this.directionality.change.pipe((0,z.R)(this.destroy$)).subscribe(j=>{this.dir=j,this.markContentActive(this.activeIndex),this.cdr.detectChanges()}),this.ngZone.runOutsideAngular(()=>{(0,u.R)(this.slickListEl,"keydown").pipe((0,z.R)(this.destroy$)).subscribe(j=>{const{keyCode:te}=j;te!==C.oh&&te!==C.SV||(j.preventDefault(),this.ngZone.run(()=>{te===C.oh?this.pre():this.next(),this.cdr.markForCheck()}))})})}ngAfterContentInit(){this.markContentActive(0)}ngAfterViewInit(){this.carouselContents.changes.subscribe(()=>{this.markContentActive(0),this.layout()}),this.resizeService.subscribe().pipe((0,z.R)(this.destroy$)).subscribe(()=>{this.layout()}),this.switchStrategy(),this.markContentActive(0),this.layout(),Promise.resolve().then(()=>{this.layout()})}ngOnChanges(j){const{nzEffect:te,nzDotPosition:ne}=j;te&&!te.isFirstChange()&&(this.switchStrategy(),this.markContentActive(0),this.layout()),ne&&!ne.isFirstChange()&&(this.switchStrategy(),this.markContentActive(0),this.layout()),this.nzAutoPlay&&this.nzAutoPlaySpeed?this.scheduleNextTransition():this.clearScheduledTransition()}ngOnDestroy(){this.clearScheduledTransition(),this.strategy&&this.strategy.dispose(),this.destroy$.next(),this.destroy$.complete()}next(){this.goTo(this.activeIndex+1)}pre(){this.goTo(this.activeIndex-1)}goTo(j){if(this.carouselContents&&this.carouselContents.length&&!this.isTransiting&&(this.nzLoop||j>=0&&j{this.scheduleNextTransition(),this.nzAfterChange.emit(pe),this.isTransiting=!1}),this.markContentActive(pe),this.cdr.markForCheck()}}switchStrategy(){this.strategy&&this.strategy.dispose();const j=this.customStrategies?this.customStrategies.find(te=>te.name===this.nzEffect):null;this.strategy=j?new j.strategy(this,this.cdr,this.renderer,this.platform):"scrollx"===this.nzEffect?new A(this,this.cdr,this.renderer,this.platform):new O(this,this.cdr,this.renderer,this.platform)}scheduleNextTransition(){this.clearScheduledTransition(),this.nzAutoPlay&&this.nzAutoPlaySpeed>0&&this.platform.isBrowser&&(this.transitionInProgress=setTimeout(()=>{this.goTo(this.activeIndex+1)},this.nzAutoPlaySpeed))}clearScheduledTransition(){this.transitionInProgress&&(clearTimeout(this.transitionInProgress),this.transitionInProgress=null)}markContentActive(j){this.activeIndex=j,this.carouselContents&&this.carouselContents.forEach((te,ne)=>{te.isActive="rtl"===this.dir?j===this.carouselContents.length-1-ne:j===ne}),this.cdr.markForCheck()}layout(){this.strategy&&this.strategy.withCarouselContents(this.carouselContents)}static#e=this.\u0275fac=function(te){return new(te||G)(i.Y36(i.SBq),i.Y36(M.jY),i.Y36(i.R0b),i.Y36(i.Qsj),i.Y36(i.sBO),i.Y36(n.t4),i.Y36(v.rI),i.Y36(v.Ml),i.Y36(e.Is,8),i.Y36(k,8))};static#t=this.\u0275cmp=i.Xpm({type:G,selectors:[["nz-carousel"]],contentQueries:function(te,ne,pe){if(1&te&&i.Suo(pe,_,4),2&te){let re;i.iGM(re=i.CRH())&&(ne.carouselContents=re)}},viewQuery:function(te,ne){if(1&te&&(i.Gf(g,7),i.Gf(d,7)),2&te){let pe;i.iGM(pe=i.CRH())&&(ne.slickList=pe.first),i.iGM(pe=i.CRH())&&(ne.slickTrack=pe.first)}},hostAttrs:[1,"ant-carousel"],hostVars:4,hostBindings:function(te,ne){2&te&&i.ekj("ant-carousel-vertical",ne.vertical)("ant-carousel-rtl","rtl"===ne.dir)},inputs:{nzDotRender:"nzDotRender",nzEffect:"nzEffect",nzEnableSwipe:"nzEnableSwipe",nzDots:"nzDots",nzAutoPlay:"nzAutoPlay",nzAutoPlaySpeed:"nzAutoPlaySpeed",nzTransitionSpeed:"nzTransitionSpeed",nzLoop:"nzLoop",nzStrategyOptions:"nzStrategyOptions",nzDotPosition:"nzDotPosition"},outputs:{nzBeforeChange:"nzBeforeChange",nzAfterChange:"nzAfterChange"},exportAs:["nzCarousel"],features:[i.TTD],ngContentSelectors:D,decls:9,vars:3,consts:[[1,"slick-initialized","slick-slider"],["tabindex","-1",1,"slick-list",3,"mousedown","touchstart"],["slickList",""],[1,"slick-track"],["slickTrack",""],["class","slick-dots",3,"slick-dots-top","slick-dots-bottom","slick-dots-left","slick-dots-right",4,"ngIf"],["renderDotTemplate",""],[1,"slick-dots"],[3,"slick-active","click",4,"ngFor","ngForOf"],[3,"click"],[3,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(te,ne){1&te&&(i.F$t(),i.TgZ(0,"div",0)(1,"div",1,2),i.NdJ("mousedown",function(re){return ne.pointerDown(re)})("touchstart",function(re){return ne.pointerDown(re)}),i.TgZ(3,"div",3,4),i.Hsn(5),i.qZA()(),i.YNc(6,T,2,9,"ul",5),i.qZA(),i.YNc(7,x,2,1,"ng-template",null,6,i.W1O)),2&te&&(i.ekj("slick-vertical","left"===ne.nzDotPosition||"right"===ne.nzDotPosition),i.xp6(6),i.Q6J("ngIf",ne.nzDots))},dependencies:[t.sg,t.O5,t.tP],encapsulation:2,changeDetection:0})}return(0,l.gn)([(0,M.oS)()],G.prototype,"nzEffect",void 0),(0,l.gn)([(0,M.oS)(),(0,h.yF)()],G.prototype,"nzEnableSwipe",void 0),(0,l.gn)([(0,M.oS)(),(0,h.yF)()],G.prototype,"nzDots",void 0),(0,l.gn)([(0,M.oS)(),(0,h.yF)()],G.prototype,"nzAutoPlay",void 0),(0,l.gn)([(0,M.oS)(),(0,h.Rn)()],G.prototype,"nzAutoPlaySpeed",void 0),(0,l.gn)([(0,h.Rn)()],G.prototype,"nzTransitionSpeed",void 0),(0,l.gn)([(0,M.oS)()],G.prototype,"nzLoop",void 0),(0,l.gn)([(0,M.oS)()],G.prototype,"nzDotPosition",null),G})(),K=(()=>{class G{static#e=this.\u0275fac=function(te){return new(te||G)};static#t=this.\u0275mod=i.oAB({type:G});static#n=this.\u0275inj=i.cJS({imports:[e.vT,t.ez,n.ud]})}return G})()},25923:(nt,I,o)=>{"use strict";o.d(I,{D4:()=>cn,Fs:()=>Wt});var e=o(97582),n=o(36028),t=o(33651),i=o(65879),l=o(60095),C=o(65619),E=o(78645),u=o(7715),z=o(22096),M=o(65592),h=o(92438),v=o(36232),g=o(64716),d=o(93997),p=o(42460),f=o(37398),y=o(59773),T=o(27921),x=o(94664),D=o(64194),_=o(83064),P=o(85448),O=o(99087),A=o(27754),k=o(96814),F=o(8324),W=o(90551),K=o(84267),_e=o(12131),Y=o(49388),G=o(331),H=o(50883),j=o(60804),te=o(20824);const ne=["nz-cascader-option",""];function pe(Vt,st){}const re=function(Vt,st){return{$implicit:Vt,index:st}};function be(Vt,st){if(1&Vt&&(i.ynx(0),i.YNc(1,pe,0,0,"ng-template",3),i.BQk()),2&Vt){const He=i.oxw();i.xp6(1),i.Q6J("ngTemplateOutlet",He.optionTemplate)("ngTemplateOutletContext",i.WLB(2,re,He.option,He.columnIndex))}}function le(Vt,st){if(1&Vt&&(i._UZ(0,"div",4),i.ALo(1,"nzHighlight")),2&Vt){const He=i.oxw();i.Q6J("innerHTML",i.gM2(1,1,He.optionLabel,He.highlightText,"g","ant-cascader-menu-item-keyword"),i.oJD)}}function ce(Vt,st){1&Vt&&i._UZ(0,"span",8)}function Q(Vt,st){if(1&Vt&&(i.ynx(0),i._UZ(1,"span",10),i.BQk()),2&Vt){const He=i.oxw(3);i.xp6(1),i.Q6J("nzType",He.expandIcon)}}function ie(Vt,st){if(1&Vt&&i.YNc(0,Q,2,1,"ng-container",9),2&Vt){const He=i.oxw(2);i.Q6J("nzStringTemplateOutlet",He.expandIcon)}}function ae(Vt,st){if(1&Vt&&(i.TgZ(0,"div",5),i.YNc(1,ce,1,0,"span",6),i.YNc(2,ie,1,1,"ng-template",null,7,i.W1O),i.qZA()),2&Vt){const He=i.MAs(3),et=i.oxw();i.xp6(1),i.Q6J("ngIf",et.option.loading)("ngIfElse",He)}}const xe=["selectContainer"],Me=["input"],Ye=["menu"];function q(Vt,st){if(1&Vt&&(i.ynx(0),i._uU(1),i.BQk()),2&Vt){const He=i.oxw(3);i.xp6(1),i.Oqu(He.labelRenderText)}}function ye(Vt,st){}function ee(Vt,st){if(1&Vt&&i.YNc(0,ye,0,0,"ng-template",16),2&Vt){const He=i.oxw(3);i.Q6J("ngTemplateOutlet",He.nzLabelRender)("ngTemplateOutletContext",He.labelRenderContext)}}function Be(Vt,st){if(1&Vt&&(i.TgZ(0,"span",13),i.YNc(1,q,2,1,"ng-container",14),i.YNc(2,ee,1,2,"ng-template",null,15,i.W1O),i.qZA()),2&Vt){const He=i.MAs(3),et=i.oxw(2);i.Q6J("title",et.labelRenderText),i.xp6(1),i.Q6J("ngIf",!et.isLabelRenderTemplate)("ngIfElse",He)}}function Re(Vt,st){if(1&Vt&&(i.TgZ(0,"span",17),i._uU(1),i.qZA()),2&Vt){const He=i.oxw(2);i.Udp("visibility",He.inputValue?"hidden":"visible"),i.xp6(1),i.Oqu(He.showPlaceholder?He.nzPlaceHolder||(null==He.locale?null:He.locale.placeholder):null)}}function ct(Vt,st){if(1&Vt&&i._UZ(0,"span",22),2&Vt){const He=i.oxw(3);i.ekj("ant-cascader-picker-arrow-expand",He.menuVisible),i.Q6J("nzType",He.nzSuffixIcon)}}function Ae(Vt,st){1&Vt&&i._UZ(0,"span",23)}function Mt(Vt,st){if(1&Vt&&i._UZ(0,"nz-form-item-feedback-icon",24),2&Vt){const He=i.oxw(3);i.Q6J("status",He.status)}}function je(Vt,st){if(1&Vt&&(i.TgZ(0,"span",18),i.YNc(1,ct,1,3,"span",19),i.YNc(2,Ae,1,0,"span",20),i.YNc(3,Mt,1,1,"nz-form-item-feedback-icon",21),i.qZA()),2&Vt){const He=i.oxw(2);i.ekj("ant-select-arrow-loading",He.isLoading),i.xp6(1),i.Q6J("ngIf",!He.isLoading),i.xp6(1),i.Q6J("ngIf",He.isLoading),i.xp6(1),i.Q6J("ngIf",He.hasFeedback&&!!He.status)}}function ot(Vt,st){if(1&Vt){const He=i.EpF();i.TgZ(0,"span",25)(1,"span",26),i.NdJ("click",function(It){i.CHM(He);const Ot=i.oxw(2);return i.KtG(Ot.clearSelection(It))}),i.qZA()()}}function mt(Vt,st){if(1&Vt){const He=i.EpF();i.ynx(0),i.TgZ(1,"div",4,5)(3,"span",6)(4,"input",7,8),i.NdJ("ngModelChange",function(It){i.CHM(He);const Ot=i.oxw();return i.KtG(Ot.inputValue=It)})("blur",function(){i.CHM(He);const It=i.oxw();return i.KtG(It.handleInputBlur())})("focus",function(){i.CHM(He);const It=i.oxw();return i.KtG(It.handleInputFocus())}),i.qZA()(),i.YNc(6,Be,4,3,"span",9),i.YNc(7,Re,2,3,"span",10),i.qZA(),i.YNc(8,je,4,5,"span",11),i.YNc(9,ot,2,0,"span",12),i.BQk()}if(2&Vt){const He=i.oxw();i.xp6(4),i.Udp("opacity",He.nzShowSearch?"":"0"),i.Q6J("readonly",!He.nzShowSearch)("disabled",He.nzDisabled)("ngModel",He.inputValue),i.uIk("autoComplete","off")("expanded",He.menuVisible)("autofocus",He.nzAutoFocus?"autofocus":null),i.xp6(2),i.Q6J("ngIf",He.showLabelRender),i.xp6(1),i.Q6J("ngIf",!He.showLabelRender),i.xp6(1),i.Q6J("ngIf",He.nzShowArrow),i.xp6(1),i.Q6J("ngIf",He.clearIconVisible)}}function we(Vt,st){if(1&Vt&&(i.TgZ(0,"ul",32)(1,"li",33),i._UZ(2,"nz-embed-empty",34),i.qZA()()),2&Vt){const He=i.oxw(2);i.Udp("width",He.dropdownWidthStyle)("height",He.dropdownHeightStyle),i.xp6(2),i.Q6J("nzComponentName","cascader")("specificContent",He.nzNotFoundContent)}}function de(Vt,st){if(1&Vt){const He=i.EpF();i.TgZ(0,"li",38),i.NdJ("mouseenter",function(It){const xt=i.CHM(He).$implicit,Qe=i.oxw().index,ke=i.oxw(3);return i.KtG(ke.onOptionMouseEnter(xt,Qe,It))})("mouseleave",function(It){const xt=i.CHM(He).$implicit,Qe=i.oxw().index,ke=i.oxw(3);return i.KtG(ke.onOptionMouseLeave(xt,Qe,It))})("click",function(It){const xt=i.CHM(He).$implicit,Qe=i.oxw().index,ke=i.oxw(3);return i.KtG(ke.onOptionClick(xt,Qe,It))}),i.qZA()}if(2&Vt){const He=st.$implicit,et=i.oxw().index,It=i.oxw(3);i.Q6J("expandIcon",It.nzExpandIcon)("columnIndex",et)("nzLabelProperty",It.nzLabelProperty)("optionTemplate",It.nzOptionRender)("activated",It.isOptionActivated(He,et))("highlightText",It.inSearchingMode?It.inputValue:"")("option",He)("dir",It.dir)}}function U(Vt,st){if(1&Vt&&(i.TgZ(0,"ul",36),i.YNc(1,de,1,8,"li",37),i.qZA()),2&Vt){const He=st.$implicit,et=i.oxw(3);i.Udp("height",et.dropdownHeightStyle)("width",et.dropdownWidthStyle),i.Q6J("ngClass",et.menuColumnCls),i.xp6(1),i.Q6J("ngForOf",He)}}function B(Vt,st){if(1&Vt&&i.YNc(0,U,2,6,"ul",35),2&Vt){const He=i.oxw(2);i.Q6J("ngForOf",He.cascaderService.columns)}}function Ee(Vt,st){if(1&Vt){const He=i.EpF();i.TgZ(0,"div",27),i.NdJ("mouseenter",function(){i.CHM(He);const It=i.oxw();return i.KtG(It.onTriggerMouseEnter())})("mouseleave",function(It){i.CHM(He);const Ot=i.oxw();return i.KtG(Ot.onTriggerMouseLeave(It))}),i.TgZ(1,"div",28,29),i.YNc(3,we,3,6,"ul",30),i.YNc(4,B,1,1,"ng-template",null,31,i.W1O),i.qZA()()}if(2&Vt){const He=i.MAs(5),et=i.oxw();i.ekj("ant-cascader-dropdown-rtl","rtl"===et.dir),i.Q6J("@slideMotion","enter")("@.disabled",!(null==et.noAnimation||!et.noAnimation.nzNoAnimation))("nzNoAnimation",null==et.noAnimation?null:et.noAnimation.nzNoAnimation),i.xp6(1),i.ekj("ant-cascader-rtl","rtl"===et.dir)("ant-cascader-menus-hidden",!et.menuVisible)("ant-cascader-menu-empty",et.shouldShowEmpty),i.Q6J("ngClass",et.menuCls)("ngStyle",et.nzMenuStyle),i.xp6(2),i.Q6J("ngIf",et.shouldShowEmpty)("ngIfElse",He)}}const Ie=["*"];function Ne(Vt){return"boolean"!=typeof Vt}let Lt=(()=>{class Vt{constructor(He,et){this.cdr=He,this.optionTemplate=null,this.activated=!1,this.nzLabelProperty="label",this.expandIcon="",this.dir="ltr",this.nativeElement=et.nativeElement}ngOnInit(){""===this.expandIcon&&"rtl"===this.dir?this.expandIcon="left":""===this.expandIcon&&(this.expandIcon="right")}get optionLabel(){return this.option[this.nzLabelProperty]}markForCheck(){this.cdr.markForCheck()}static#e=this.\u0275fac=function(et){return new(et||Vt)(i.Y36(i.sBO),i.Y36(i.SBq))};static#t=this.\u0275cmp=i.Xpm({type:Vt,selectors:[["","nz-cascader-option",""]],hostAttrs:[1,"ant-cascader-menu-item","ant-cascader-menu-item-expanded"],hostVars:7,hostBindings:function(et,It){2&et&&(i.uIk("title",It.option.title||It.optionLabel),i.ekj("ant-cascader-menu-item-active",It.activated)("ant-cascader-menu-item-expand",!It.option.isLeaf)("ant-cascader-menu-item-disabled",It.option.disabled))},inputs:{optionTemplate:"optionTemplate",option:"option",activated:"activated",highlightText:"highlightText",nzLabelProperty:"nzLabelProperty",columnIndex:"columnIndex",expandIcon:"expandIcon",dir:"dir"},exportAs:["nzCascaderOption"],attrs:ne,decls:4,vars:3,consts:[[4,"ngIf","ngIfElse"],["defaultOptionTemplate",""],["class","ant-cascader-menu-item-expand-icon",4,"ngIf"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"ant-cascader-menu-item-content",3,"innerHTML"],[1,"ant-cascader-menu-item-expand-icon"],["nz-icon","","nzType","loading",4,"ngIf","ngIfElse"],["icon",""],["nz-icon","","nzType","loading"],[4,"nzStringTemplateOutlet"],["nz-icon","",3,"nzType"]],template:function(et,It){if(1&et&&(i.YNc(0,be,2,5,"ng-container",0),i.YNc(1,le,2,6,"ng-template",null,1,i.W1O),i.YNc(3,ae,4,2,"div",2)),2&et){const Ot=i.MAs(2);i.Q6J("ngIf",It.optionTemplate)("ngIfElse",Ot),i.xp6(3),i.Q6J("ngIf",!It.option.isLeaf||(null==It.option.children?null:It.option.children.length)||It.option.loading)}},dependencies:[k.O5,k.tP,F.f,W.Ls,K.U],encapsulation:2,changeDetection:0})}return Vt})(),Ut=(()=>{class Vt{constructor(){this.activatedOptions=[],this.columns=[],this.inSearchingMode=!1,this.selectedOptions=[],this.values=[],this.$loading=new C.X(!1),this.$redraw=new E.x,this.$optionSelected=new E.x,this.$quitSearching=new E.x,this.columnsSnapshot=[[]],this.activatedOptionsSnapshot=[]}get nzOptions(){return this.columns[0]}ngOnDestroy(){this.$redraw.complete(),this.$quitSearching.complete(),this.$optionSelected.complete(),this.$loading.complete()}syncOptions(He=!1){const et=this.values,It=et&&et.length,Ot=et.length-1,xt=Qe=>{const ke=()=>{const fe=et[Qe];if(!(0,A.DX)(fe))return void this.$redraw.next();const qe=this.findOptionWithValue(Qe,et[Qe])||("object"==typeof fe?fe:{[`${this.cascaderComponent.nzValueProperty}`]:fe,[`${this.cascaderComponent.nzLabelProperty}`]:fe});this.setOptionActivated(qe,Qe,!1,!1),Qe{this.$quitSearching.next(),this.$redraw.next(),this.inSearchingMode=!1,this.columns=[...this.columnsSnapshot],this.activatedOptions=[...this.selectedOptions]},200)}prepareSearchOptions(He){const et=[],It=[],xt=this.cascaderComponent.nzShowSearch,Qe=Ne(xt)&&xt.filter?xt.filter:(ge,Ze)=>Ze.some($e=>{const Ue=this.getOptionLabel($e);return!!Ue&&-1!==Ue.indexOf(ge)}),ke=Ne(xt)&&xt.sorter?xt.sorter:null,fe=(ge,Ze=!1)=>{It.push(ge);const $e=Array.from(It);if(Qe(He,$e)){const wt={disabled:Ze||ge.disabled,isLeaf:!0,path:$e,[this.cascaderComponent.nzLabelProperty]:$e.map(De=>this.getOptionLabel(De)).join(" / ")};et.push(wt)}It.pop()},qe=(ge,Ze=!1)=>{const $e=Ze||ge.disabled;It.push(ge),ge.children.forEach(Ue=>{Ue.parent||(Ue.parent=ge),Ue.isLeaf||qe(Ue,$e),(Ue.isLeaf||!Ue.children||!Ue.children.length)&&fe(Ue,$e)}),It.pop()};this.columnsSnapshot.length?(this.columnsSnapshot[0].forEach(ge=>function pt(Vt){return Vt.isLeaf||!Vt.children||!Vt.children.length}(ge)?fe(ge):qe(ge)),ke&&et.sort((ge,Ze)=>ke(ge.path,Ze.path,He)),this.columns=[et],this.$redraw.next()):this.columns=[[]]}toggleSearchingMode(He){this.inSearchingMode=He,He?(this.activatedOptionsSnapshot=[...this.activatedOptions],this.activatedOptions=[],this.selectedOptions=[],this.$redraw.next()):(this.activatedOptions=[...this.activatedOptionsSnapshot],this.selectedOptions=[...this.activatedOptions],this.columns=[...this.columnsSnapshot],this.syncOptions(),this.$redraw.next())}clear(){this.values=[],this.selectedOptions=[],this.activatedOptions=[],this.dropBehindColumns(0),this.$redraw.next(),this.$optionSelected.next(null)}getOptionLabel(He){return He[this.cascaderComponent.nzLabelProperty||"label"]}getOptionValue(He){return He[this.cascaderComponent.nzValueProperty||"value"]}setColumnData(He,et,It){(0,A.cO)(this.columns[et],He)||(He.forEach(xt=>xt.parent=It),this.columns[et]=He,this.dropBehindColumns(et))}trackAncestorActivatedOptions(He){for(let et=He-1;et>=0;et--)this.activatedOptions[et]||(this.activatedOptions[et]=this.activatedOptions[et+1].parent)}dropBehindActivatedOptions(He){this.activatedOptions=this.activatedOptions.splice(0,He+1)}dropBehindColumns(He){He{He.loading=!1,this.$loading.next(!1),this.$redraw.next()})).subscribe({next:()=>{He.children&&this.setColumnData(He.children,et+1,He),It?.()},error:()=>{He.isLeaf=!0,Ot?.()}}))}isLoaded(He){return this.columns[He]&&this.columns[He].length>0}findOptionWithValue(He,et){const It=this.columns[He];if(It){const Ot="object"==typeof et?this.getOptionValue(et):et;return It.find(xt=>Ot===this.getOptionValue(xt))}return null}prepareEmitValue(){this.values=this.selectedOptions.map(He=>this.getOptionValue(He))}static#e=this.\u0275fac=function(et){return new(et||Vt)};static#t=this.\u0275prov=i.Yz7({token:Vt,factory:Vt.\u0275fac})}return Vt})();const qt="cascader",en=Vt=>Vt.join(" / ");let cn=(()=>{class Vt{set input(He){this.input$.next(He)}get input(){return this.input$.getValue()}get nzOptions(){return this.cascaderService.nzOptions}set nzOptions(He){this.cascaderService.withOptions(He)}get inSearchingMode(){return this.cascaderService.inSearchingMode}set inputValue(He){this.inputString=He,this.toggleSearchingMode(!!He)}get inputValue(){return this.inputString}get menuCls(){return{[`${this.nzMenuClassName}`]:!!this.nzMenuClassName}}get menuColumnCls(){return{[`${this.nzColumnClassName}`]:!!this.nzColumnClassName}}get hasInput(){return!!this.inputValue}get hasValue(){return this.cascaderService.values&&this.cascaderService.values.length>0}get showLabelRender(){return this.hasValue}get showPlaceholder(){return!(this.hasInput||this.hasValue)}get clearIconVisible(){return this.nzAllowClear&&!this.nzDisabled&&(this.hasValue||this.hasInput)}get isLabelRenderTemplate(){return!!this.nzLabelRender}constructor(He,et,It,Ot,xt,Qe,ke,fe,qe,ge,Ze,$e){this.cascaderService=He,this.nzConfigService=et,this.ngZone=It,this.cdr=Ot,this.i18nService=xt,this.destroy$=Qe,this.elementRef=ke,this.renderer=fe,this.directionality=qe,this.noAnimation=ge,this.nzFormStatusService=Ze,this.nzFormNoStatusService=$e,this._nzModuleName=qt,this.input$=new C.X(void 0),this.nzOptionRender=null,this.nzShowInput=!0,this.nzShowArrow=!0,this.nzAllowClear=!0,this.nzAutoFocus=!1,this.nzChangeOnSelect=!1,this.nzDisabled=!1,this.nzExpandTrigger="click",this.nzValueProperty="value",this.nzLabelRender=null,this.nzLabelProperty="label",this.nzSize="default",this.nzBackdrop=!1,this.nzShowSearch=!1,this.nzPlaceHolder="",this.nzMenuStyle=null,this.nzMouseEnterDelay=150,this.nzMouseLeaveDelay=150,this.nzStatus="",this.nzTriggerAction=["click"],this.nzSuffixIcon="down",this.nzExpandIcon="",this.nzVisibleChange=new i.vpe,this.nzSelectionChange=new i.vpe,this.nzSelect=new i.vpe,this.nzClear=new i.vpe,this.prefixCls="ant-select",this.statusCls={},this.status="",this.hasFeedback=!1,this.shouldShowEmpty=!1,this.menuVisible=!1,this.isLoading=!1,this.labelRenderContext={},this.onChange=Function.prototype,this.onTouched=Function.prototype,this.positions=[...P.n$],this.dropdownHeightStyle="",this.isFocused=!1,this.dir="ltr",this.inputString="",this.isOpening=!1,this.delayMenuTimer=null,this.delaySelectTimer=null,this.isNzDisableFirstChange=!0,this.el=ke.nativeElement,this.cascaderService.withComponent(this),this.renderer.addClass(this.elementRef.nativeElement,"ant-select"),this.renderer.addClass(this.elementRef.nativeElement,"ant-cascader")}ngOnInit(){this.nzFormStatusService?.formStatusChanges.pipe((0,d.x)((et,It)=>et.status===It.status&&et.hasFeedback===It.hasFeedback),(0,p.M)(this.nzFormNoStatusService?this.nzFormNoStatusService.noFormStatus:(0,z.of)(!1)),(0,f.U)(([{status:et,hasFeedback:It},Ot])=>({status:Ot?"":et,hasFeedback:It})),(0,y.R)(this.destroy$)).subscribe(({status:et,hasFeedback:It})=>{this.setStatusStyles(et,It)});const He=this.cascaderService;He.$redraw.pipe((0,y.R)(this.destroy$)).subscribe(()=>{this.checkChildren(),this.setDisplayLabel(),this.cdr.detectChanges(),this.reposition(),this.setDropdownStyles()}),He.$loading.pipe((0,y.R)(this.destroy$)).subscribe(et=>{this.isLoading=et}),He.$optionSelected.pipe((0,y.R)(this.destroy$)).subscribe(et=>{if(et){const{option:It,index:Ot}=et;(It.isLeaf||this.nzChangeOnSelect&&"hover"===this.nzExpandTrigger)&&this.delaySetMenuVisible(!1),this.onChange(this.cascaderService.values),this.nzSelectionChange.emit(this.cascaderService.selectedOptions),this.nzSelect.emit({option:It,index:Ot}),this.cdr.markForCheck()}else this.onChange([]),this.nzSelect.emit(null),this.nzSelectionChange.emit([])}),He.$quitSearching.pipe((0,y.R)(this.destroy$)).subscribe(()=>{this.inputString="",this.dropdownWidthStyle=""}),this.i18nService.localeChange.pipe((0,T.O)(),(0,y.R)(this.destroy$)).subscribe(()=>{this.setLocale()}),this.nzConfigService.getConfigChangeEventForComponent(qt).pipe((0,y.R)(this.destroy$)).subscribe(()=>{this.cdr.markForCheck()}),this.dir=this.directionality.value,this.directionality.change.pipe((0,y.R)(this.destroy$)).subscribe(()=>{this.dir=this.directionality.value,He.$redraw.next()}),this.setupChangeListener(),this.setupKeydownListener()}ngOnChanges(He){const{nzStatus:et}=He;et&&this.setStatusStyles(this.nzStatus,this.hasFeedback)}ngOnDestroy(){this.clearDelayMenuTimer(),this.clearDelaySelectTimer()}registerOnChange(He){this.onChange=He}registerOnTouched(He){this.onTouched=He}writeValue(He){this.cascaderService.values=(0,A.qo)(He),this.cascaderService.syncOptions(!0)}delaySetMenuVisible(He,et=100,It=!1){this.clearDelayMenuTimer(),et?(He&&It&&(this.isOpening=!0),this.delayMenuTimer=setTimeout(()=>{this.setMenuVisible(He),this.cdr.detectChanges(),this.clearDelayMenuTimer(),He&&setTimeout(()=>{this.isOpening=!1},100)},et)):this.setMenuVisible(He)}setMenuVisible(He){this.nzDisabled||this.menuVisible===He||(He&&(this.cascaderService.syncOptions(),this.scrollToActivatedOptions()),He||(this.inputValue=""),this.menuVisible=He,this.nzVisibleChange.emit(He),this.cdr.detectChanges())}clearDelayMenuTimer(){this.delayMenuTimer&&(clearTimeout(this.delayMenuTimer),this.delayMenuTimer=null)}clearSelection(He){He&&(He.preventDefault(),He.stopPropagation()),this.labelRenderText="",this.labelRenderContext={},this.inputValue="",this.setMenuVisible(!1),this.cascaderService.clear(),this.nzClear.emit()}getSubmitValue(){return this.cascaderService.selectedOptions.map(He=>this.cascaderService.getOptionValue(He))}focus(){this.isFocused||((this.input?.nativeElement||this.el).focus(),this.isFocused=!0)}blur(){this.isFocused&&((this.input?.nativeElement||this.el).blur(),this.isFocused=!1)}handleInputBlur(){this.menuVisible?this.focus():this.blur()}handleInputFocus(){this.focus()}onTriggerClick(){this.nzDisabled||(this.nzShowSearch&&this.focus(),this.isActionTrigger("click")&&this.delaySetMenuVisible(!this.menuVisible,100),this.onTouched())}onTriggerMouseEnter(){this.nzDisabled||!this.isActionTrigger("hover")||this.delaySetMenuVisible(!0,this.nzMouseEnterDelay,!0)}onTriggerMouseLeave(He){if(this.nzDisabled||!this.menuVisible||this.isOpening||!this.isActionTrigger("hover"))return void He.preventDefault();const et=He.relatedTarget,Ot=this.menu&&this.menu.nativeElement;this.el.contains(et)||Ot&&Ot.contains(et)||this.delaySetMenuVisible(!1,this.nzMouseLeaveDelay)}onOptionMouseEnter(He,et,It){It.preventDefault(),"hover"===this.nzExpandTrigger&&(He.isLeaf?this.cascaderService.setOptionDeactivatedSinceColumn(et):this.delaySetOptionActivated(He,et,!1))}onOptionMouseLeave(He,et,It){It.preventDefault(),"hover"===this.nzExpandTrigger&&!He.isLeaf&&this.clearDelaySelectTimer()}onOptionClick(He,et,It){It&&It.preventDefault(),(!He||!He.disabled)&&(this.el.focus(),this.inSearchingMode?this.cascaderService.setSearchOptionSelected(He):this.cascaderService.setOptionActivated(He,et,!0))}onClickOutside(He){this.el.contains(He.target)||this.closeMenu()}isActionTrigger(He){return"string"==typeof this.nzTriggerAction?this.nzTriggerAction===He:-1!==this.nzTriggerAction.indexOf(He)}onEnter(){const He=Math.max(this.cascaderService.activatedOptions.length-1,0),et=this.cascaderService.activatedOptions[He];et&&!et.disabled&&(this.inSearchingMode?this.cascaderService.setSearchOptionSelected(et):this.cascaderService.setOptionActivated(et,He,!0))}moveUpOrDown(He){const et=Math.max(this.cascaderService.activatedOptions.length-1,0),It=this.cascaderService.activatedOptions[et],Ot=this.cascaderService.columns[et]||[],xt=Ot.length;let Qe=-1;for(Qe=It?Ot.indexOf(It):He?xt:-1;Qe=He?Qe-1:Qe+1,!(Qe<0||Qe>=xt);){const ke=Ot[Qe];if(ke&&!ke.disabled){this.cascaderService.setOptionActivated(ke,et);break}}}moveLeft(){const He=this.cascaderService.activatedOptions;He.length&&He.pop()}moveRight(){const He=this.cascaderService.activatedOptions.length,et=this.cascaderService.columns[He];if(et&&et.length){const It=et.find(Ot=>!Ot.disabled);It&&this.cascaderService.setOptionActivated(It,He)}}clearDelaySelectTimer(){this.delaySelectTimer&&(clearTimeout(this.delaySelectTimer),this.delaySelectTimer=null)}delaySetOptionActivated(He,et,It){this.clearDelaySelectTimer(),this.delaySelectTimer=setTimeout(()=>{this.cascaderService.setOptionActivated(He,et,It),this.delaySelectTimer=null},150)}toggleSearchingMode(He){this.inSearchingMode!==He&&this.cascaderService.toggleSearchingMode(He),this.inSearchingMode&&this.cascaderService.prepareSearchOptions(this.inputValue)}isOptionActivated(He,et){return this.cascaderService.activatedOptions[et]===He}setDisabledState(He){this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||He,this.isNzDisableFirstChange=!1,this.nzDisabled&&this.closeMenu()}closeMenu(){this.blur(),this.clearDelayMenuTimer(),this.setMenuVisible(!1)}reposition(){this.overlay&&this.overlay.overlayRef&&this.menuVisible&&Promise.resolve().then(()=>{this.overlay.overlayRef.updatePosition(),this.cdr.markForCheck()})}checkChildren(){this.cascaderItems&&this.cascaderItems.forEach(He=>He.markForCheck())}setDisplayLabel(){const He=this.cascaderService.selectedOptions,et=He.map(It=>this.cascaderService.getOptionLabel(It));this.isLabelRenderTemplate&&(this.labelRenderContext={labels:et,selectedOptions:He}),this.labelRenderText=en.call(this,et)}setDropdownStyles(){const He=this.cascaderService.columns[0];this.shouldShowEmpty=this.inSearchingMode&&(!He||!He.length)||!(this.nzOptions&&this.nzOptions.length)&&!this.nzLoadData,this.dropdownHeightStyle=this.shouldShowEmpty?"auto":"",this.input&&(this.dropdownWidthStyle=this.inSearchingMode||this.shouldShowEmpty?`${this.selectContainer.nativeElement.offsetWidth}px`:"")}setStatusStyles(He,et){this.status=He,this.hasFeedback=et,this.cdr.markForCheck(),this.statusCls=(0,A.Zu)(this.prefixCls,He,et),Object.keys(this.statusCls).forEach(It=>{this.statusCls[It]?this.renderer.addClass(this.elementRef.nativeElement,It):this.renderer.removeClass(this.elementRef.nativeElement,It)})}setLocale(){this.locale=this.i18nService.getLocaleData("global"),this.cdr.markForCheck()}scrollToActivatedOptions(){this.ngZone.runOutsideAngular(()=>{Promise.resolve().then(()=>{this.cascaderItems.toArray().filter(He=>He.activated).forEach(He=>{He.nativeElement.scrollIntoView({block:"start",inline:"nearest"})})})})}setupChangeListener(){this.input$.pipe((0,x.w)(He=>He?new M.y(et=>this.ngZone.runOutsideAngular(()=>(0,h.R)(He.nativeElement,"change").subscribe(et))):v.E),(0,y.R)(this.destroy$)).subscribe(He=>He.stopPropagation())}setupKeydownListener(){this.ngZone.runOutsideAngular(()=>{(0,h.R)(this.el,"keydown").pipe((0,y.R)(this.destroy$)).subscribe(He=>{const et=He.keyCode;if(et===n.JH||et===n.LH||et===n.oh||et===n.SV||et===n.K5||et===n.ZH||et===n.hY){if(!this.menuVisible&&et!==n.ZH&&et!==n.hY)return this.ngZone.run(()=>this.setMenuVisible(!0));this.inSearchingMode&&(et===n.ZH||et===n.oh||et===n.SV)||this.menuVisible&&(He.preventDefault(),this.ngZone.run(()=>{et===n.JH?this.moveUpOrDown(!1):et===n.LH?this.moveUpOrDown(!0):et===n.oh?this.moveLeft():et===n.SV?this.moveRight():et===n.K5&&this.onEnter(),this.cdr.markForCheck()}))}})})}static#e=this.\u0275fac=function(et){return new(et||Vt)(i.Y36(Ut),i.Y36(_.jY),i.Y36(i.R0b),i.Y36(i.sBO),i.Y36(_e.wi),i.Y36(O.kn),i.Y36(i.SBq),i.Y36(i.Qsj),i.Y36(Y.Is,8),i.Y36(G.P,9),i.Y36(H.kH,8),i.Y36(H.yW,8))};static#t=this.\u0275cmp=i.Xpm({type:Vt,selectors:[["nz-cascader"],["","nz-cascader",""]],viewQuery:function(et,It){if(1&et&&(i.Gf(xe,5),i.Gf(Me,5),i.Gf(Ye,5),i.Gf(t.pI,5),i.Gf(Lt,5)),2&et){let Ot;i.iGM(Ot=i.CRH())&&(It.selectContainer=Ot.first),i.iGM(Ot=i.CRH())&&(It.input=Ot.first),i.iGM(Ot=i.CRH())&&(It.menu=Ot.first),i.iGM(Ot=i.CRH())&&(It.overlay=Ot.first),i.iGM(Ot=i.CRH())&&(It.cascaderItems=Ot)}},hostVars:23,hostBindings:function(et,It){1&et&&i.NdJ("click",function(){return It.onTriggerClick()})("mouseenter",function(){return It.onTriggerMouseEnter()})("mouseleave",function(xt){return It.onTriggerMouseLeave(xt)}),2&et&&(i.uIk("tabIndex","0"),i.ekj("ant-select-in-form-item",!!It.nzFormStatusService)("ant-select-lg","large"===It.nzSize)("ant-select-sm","small"===It.nzSize)("ant-select-allow-clear",It.nzAllowClear)("ant-select-show-arrow",It.nzShowArrow)("ant-select-show-search",!!It.nzShowSearch)("ant-select-disabled",It.nzDisabled)("ant-select-open",It.menuVisible)("ant-select-focused",It.isFocused)("ant-select-single",!0)("ant-select-rtl","rtl"===It.dir))},inputs:{nzOptionRender:"nzOptionRender",nzShowInput:"nzShowInput",nzShowArrow:"nzShowArrow",nzAllowClear:"nzAllowClear",nzAutoFocus:"nzAutoFocus",nzChangeOnSelect:"nzChangeOnSelect",nzDisabled:"nzDisabled",nzColumnClassName:"nzColumnClassName",nzExpandTrigger:"nzExpandTrigger",nzValueProperty:"nzValueProperty",nzLabelRender:"nzLabelRender",nzLabelProperty:"nzLabelProperty",nzNotFoundContent:"nzNotFoundContent",nzSize:"nzSize",nzBackdrop:"nzBackdrop",nzShowSearch:"nzShowSearch",nzPlaceHolder:"nzPlaceHolder",nzMenuClassName:"nzMenuClassName",nzMenuStyle:"nzMenuStyle",nzMouseEnterDelay:"nzMouseEnterDelay",nzMouseLeaveDelay:"nzMouseLeaveDelay",nzStatus:"nzStatus",nzTriggerAction:"nzTriggerAction",nzChangeOn:"nzChangeOn",nzLoadData:"nzLoadData",nzSuffixIcon:"nzSuffixIcon",nzExpandIcon:"nzExpandIcon",nzOptions:"nzOptions"},outputs:{nzVisibleChange:"nzVisibleChange",nzSelectionChange:"nzSelectionChange",nzSelect:"nzSelect",nzClear:"nzClear"},exportAs:["nzCascader"],features:[i._Bn([{provide:l.JU,useExisting:(0,i.Gpc)(()=>Vt),multi:!0},Ut,O.kn]),i.TTD],ngContentSelectors:Ie,decls:6,vars:6,consts:[["cdkOverlayOrigin",""],["origin","cdkOverlayOrigin","trigger",""],[4,"ngIf"],["cdkConnectedOverlay","","nzConnectedOverlay","",3,"cdkConnectedOverlayHasBackdrop","cdkConnectedOverlayOrigin","cdkConnectedOverlayPositions","cdkConnectedOverlayTransformOriginOn","cdkConnectedOverlayOpen","overlayOutsideClick","detach"],[1,"ant-select-selector"],["selectContainer",""],[1,"ant-select-selection-search"],["type","search",1,"ant-select-selection-search-input",3,"readonly","disabled","ngModel","ngModelChange","blur","focus"],["input",""],["class","ant-select-selection-item",3,"title",4,"ngIf"],["class","ant-select-selection-placeholder",3,"visibility",4,"ngIf"],["class","ant-select-arrow",3,"ant-select-arrow-loading",4,"ngIf"],["class","ant-select-clear",4,"ngIf"],[1,"ant-select-selection-item",3,"title"],[4,"ngIf","ngIfElse"],["labelTemplate",""],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"ant-select-selection-placeholder"],[1,"ant-select-arrow"],["nz-icon","",3,"nzType","ant-cascader-picker-arrow-expand",4,"ngIf"],["nz-icon","","nzType","loading",4,"ngIf"],[3,"status",4,"ngIf"],["nz-icon","",3,"nzType"],["nz-icon","","nzType","loading"],[3,"status"],[1,"ant-select-clear"],["nz-icon","","nzType","close-circle","nzTheme","fill",3,"click"],[1,"ant-select-dropdown","ant-cascader-dropdown","ant-select-dropdown-placement-bottomLeft",3,"nzNoAnimation","mouseenter","mouseleave"],[1,"ant-cascader-menus",3,"ngClass","ngStyle"],["menu",""],["class","ant-cascader-menu",3,"width","height",4,"ngIf","ngIfElse"],["hasOptionsTemplate",""],[1,"ant-cascader-menu"],[1,"ant-cascader-menu-item","ant-cascader-menu-item-disabled"],[1,"ant-cascader-menu-item-content",3,"nzComponentName","specificContent"],["class","ant-cascader-menu","role","menuitemcheckbox",3,"ngClass","height","width",4,"ngFor","ngForOf"],["role","menuitemcheckbox",1,"ant-cascader-menu",3,"ngClass"],["nz-cascader-option","",3,"expandIcon","columnIndex","nzLabelProperty","optionTemplate","activated","highlightText","option","dir","mouseenter","mouseleave","click",4,"ngFor","ngForOf"],["nz-cascader-option","",3,"expandIcon","columnIndex","nzLabelProperty","optionTemplate","activated","highlightText","option","dir","mouseenter","mouseleave","click"]],template:function(et,It){if(1&et&&(i.F$t(),i.TgZ(0,"div",0,1),i.YNc(3,mt,10,12,"ng-container",2),i.Hsn(4),i.qZA(),i.YNc(5,Ee,6,15,"ng-template",3),i.NdJ("overlayOutsideClick",function(xt){return It.onClickOutside(xt)})("detach",function(){return It.closeMenu()})),2&et){const Ot=i.MAs(1);i.xp6(3),i.Q6J("ngIf",It.nzShowInput),i.xp6(2),i.Q6J("cdkConnectedOverlayHasBackdrop",It.nzBackdrop)("cdkConnectedOverlayOrigin",Ot)("cdkConnectedOverlayPositions",It.positions)("cdkConnectedOverlayTransformOriginOn",".ant-cascader-dropdown")("cdkConnectedOverlayOpen",It.menuVisible)}},dependencies:[Y.Lv,k.mk,k.sg,k.O5,k.tP,k.PC,l.Fj,l.JJ,l.On,t.pI,t.xu,j.gB,W.Ls,G.P,P.hQ,H.w_,Lt],encapsulation:2,data:{animation:[D.mF]},changeDetection:0})}return(0,e.gn)([(0,A.yF)()],Vt.prototype,"nzShowInput",void 0),(0,e.gn)([(0,A.yF)()],Vt.prototype,"nzShowArrow",void 0),(0,e.gn)([(0,A.yF)()],Vt.prototype,"nzAllowClear",void 0),(0,e.gn)([(0,A.yF)()],Vt.prototype,"nzAutoFocus",void 0),(0,e.gn)([(0,A.yF)()],Vt.prototype,"nzChangeOnSelect",void 0),(0,e.gn)([(0,A.yF)()],Vt.prototype,"nzDisabled",void 0),(0,e.gn)([(0,_.oS)()],Vt.prototype,"nzSize",void 0),(0,e.gn)([(0,_.oS)()],Vt.prototype,"nzBackdrop",void 0),Vt})(),Wt=(()=>{class Vt{static#e=this.\u0275fac=function(et){return new(et||Vt)};static#t=this.\u0275mod=i.oAB({type:Vt});static#n=this.\u0275inj=i.cJS({imports:[Y.vT,k.ez,l.u5,t.U8,F.T,j.Xo,K.C,W.PV,te.o7,G.g,P.e4,H.mJ]})}return Vt})()},28802:(nt,I,o)=>{"use strict";o.d(I,{D3:()=>C,y7:()=>u});var e=o(65879),n=o(42495),t=o(65592),i=o(78645);let l=(()=>{class z{create(h){return typeof ResizeObserver>"u"?null:new ResizeObserver(h)}static#e=this.\u0275fac=function(v){return new(v||z)};static#t=this.\u0275prov=e.Yz7({token:z,factory:z.\u0275fac,providedIn:"root"})}return z})(),C=(()=>{class z{constructor(h){this.nzResizeObserverFactory=h,this.observedElements=new Map}ngOnDestroy(){this.observedElements.forEach((h,v)=>this.cleanupObserver(v))}observe(h){const v=(0,n.fI)(h);return new t.y(g=>{const p=this.observeElement(v).subscribe(g);return()=>{p.unsubscribe(),this.unobserveElement(v)}})}observeElement(h){if(this.observedElements.has(h))this.observedElements.get(h).count++;else{const v=new i.x,g=this.nzResizeObserverFactory.create(d=>v.next(d));g&&g.observe(h),this.observedElements.set(h,{observer:g,stream:v,count:1})}return this.observedElements.get(h).stream}unobserveElement(h){this.observedElements.has(h)&&(this.observedElements.get(h).count--,this.observedElements.get(h).count||this.cleanupObserver(h))}cleanupObserver(h){if(this.observedElements.has(h)){const{observer:v,stream:g}=this.observedElements.get(h);v&&v.disconnect(),g.complete(),this.observedElements.delete(h)}}static#e=this.\u0275fac=function(v){return new(v||z)(e.LFG(l))};static#t=this.\u0275prov=e.Yz7({token:z,factory:z.\u0275fac,providedIn:"root"})}return z})(),u=(()=>{class z{static#e=this.\u0275fac=function(v){return new(v||z)};static#t=this.\u0275mod=e.oAB({type:z});static#n=this.\u0275inj=e.cJS({providers:[l]})}return z})()},62612:(nt,I,o)=>{"use strict";o.d(I,{EZ:()=>f,Ie:()=>y,Wr:()=>x,ub:()=>T});var e=o(97582),n=o(65879),t=o(60095),i=o(78645),l=o(92438),C=o(59773),E=o(27754),u=o(4300),z=o(49388),M=o(50883),h=o(96814);const v=["*"],g=["inputElement"],d=["nz-checkbox",""];function p(D,_){if(1&D){const P=n.EpF();n.TgZ(0,"label",1),n.NdJ("nzCheckedChange",function(A){const F=n.CHM(P).$implicit,W=n.oxw();return n.KtG(W.onCheckedChange(F,A))}),n.TgZ(1,"span"),n._uU(2),n.qZA()()}if(2&D){const P=_.$implicit,O=n.oxw();n.Q6J("nzDisabled",P.disabled||O.nzDisabled)("nzChecked",P.checked),n.xp6(2),n.Oqu(P.label)}}let f=(()=>{class D{constructor(){this.nzOnChange=new n.vpe,this.checkboxList=[]}addCheckbox(P){this.checkboxList.push(P)}removeCheckbox(P){this.checkboxList.splice(this.checkboxList.indexOf(P),1)}onChange(){const P=this.checkboxList.filter(O=>O.nzChecked).map(O=>O.nzValue);this.nzOnChange.emit(P)}static#e=this.\u0275fac=function(O){return new(O||D)};static#t=this.\u0275cmp=n.Xpm({type:D,selectors:[["nz-checkbox-wrapper"]],hostAttrs:[1,"ant-checkbox-group"],outputs:{nzOnChange:"nzOnChange"},exportAs:["nzCheckboxWrapper"],ngContentSelectors:v,decls:1,vars:0,template:function(O,A){1&O&&(n.F$t(),n.Hsn(0))},encapsulation:2,changeDetection:0})}return D})(),y=(()=>{class D{innerCheckedChange(P){this.nzDisabled||(this.nzChecked=P,this.onChange(this.nzChecked),this.nzCheckedChange.emit(this.nzChecked),this.nzCheckboxWrapperComponent&&this.nzCheckboxWrapperComponent.onChange())}writeValue(P){this.nzChecked=P,this.cdr.markForCheck()}registerOnChange(P){this.onChange=P}registerOnTouched(P){this.onTouched=P}setDisabledState(P){this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||P,this.isNzDisableFirstChange=!1,this.cdr.markForCheck()}focus(){this.focusMonitor.focusVia(this.inputElement,"keyboard")}blur(){this.inputElement.nativeElement.blur()}constructor(P,O,A,k,F,W,K){this.ngZone=P,this.elementRef=O,this.nzCheckboxWrapperComponent=A,this.cdr=k,this.focusMonitor=F,this.directionality=W,this.nzFormStatusService=K,this.dir="ltr",this.destroy$=new i.x,this.isNzDisableFirstChange=!0,this.onChange=()=>{},this.onTouched=()=>{},this.nzCheckedChange=new n.vpe,this.nzValue=null,this.nzAutoFocus=!1,this.nzDisabled=!1,this.nzIndeterminate=!1,this.nzChecked=!1,this.nzId=null}ngOnInit(){this.focusMonitor.monitor(this.elementRef,!0).pipe((0,C.R)(this.destroy$)).subscribe(P=>{P||Promise.resolve().then(()=>this.onTouched())}),this.nzCheckboxWrapperComponent&&this.nzCheckboxWrapperComponent.addCheckbox(this),this.directionality.change.pipe((0,C.R)(this.destroy$)).subscribe(P=>{this.dir=P,this.cdr.detectChanges()}),this.dir=this.directionality.value,this.ngZone.runOutsideAngular(()=>{(0,l.R)(this.elementRef.nativeElement,"click").pipe((0,C.R)(this.destroy$)).subscribe(P=>{P.preventDefault(),this.focus(),!this.nzDisabled&&this.ngZone.run(()=>{this.innerCheckedChange(!this.nzChecked),this.cdr.markForCheck()})}),(0,l.R)(this.inputElement.nativeElement,"click").pipe((0,C.R)(this.destroy$)).subscribe(P=>P.stopPropagation())})}ngAfterViewInit(){this.nzAutoFocus&&this.focus()}ngOnDestroy(){this.focusMonitor.stopMonitoring(this.elementRef),this.nzCheckboxWrapperComponent&&this.nzCheckboxWrapperComponent.removeCheckbox(this),this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(O){return new(O||D)(n.Y36(n.R0b),n.Y36(n.SBq),n.Y36(f,8),n.Y36(n.sBO),n.Y36(u.tE),n.Y36(z.Is,8),n.Y36(M.kH,8))};static#t=this.\u0275cmp=n.Xpm({type:D,selectors:[["","nz-checkbox",""]],viewQuery:function(O,A){if(1&O&&n.Gf(g,7),2&O){let k;n.iGM(k=n.CRH())&&(A.inputElement=k.first)}},hostAttrs:[1,"ant-checkbox-wrapper"],hostVars:6,hostBindings:function(O,A){2&O&&n.ekj("ant-checkbox-wrapper-in-form-item",!!A.nzFormStatusService)("ant-checkbox-wrapper-checked",A.nzChecked)("ant-checkbox-rtl","rtl"===A.dir)},inputs:{nzValue:"nzValue",nzAutoFocus:"nzAutoFocus",nzDisabled:"nzDisabled",nzIndeterminate:"nzIndeterminate",nzChecked:"nzChecked",nzId:"nzId"},outputs:{nzCheckedChange:"nzCheckedChange"},exportAs:["nzCheckbox"],features:[n._Bn([{provide:t.JU,useExisting:(0,n.Gpc)(()=>D),multi:!0}])],attrs:d,ngContentSelectors:v,decls:6,vars:11,consts:[[1,"ant-checkbox"],["type","checkbox",1,"ant-checkbox-input",3,"checked","ngModel","disabled","ngModelChange"],["inputElement",""],[1,"ant-checkbox-inner"]],template:function(O,A){1&O&&(n.F$t(),n.TgZ(0,"span",0)(1,"input",1,2),n.NdJ("ngModelChange",function(F){return A.innerCheckedChange(F)}),n.qZA(),n._UZ(3,"span",3),n.qZA(),n.TgZ(4,"span"),n.Hsn(5),n.qZA()),2&O&&(n.ekj("ant-checkbox-checked",A.nzChecked&&!A.nzIndeterminate)("ant-checkbox-disabled",A.nzDisabled)("ant-checkbox-indeterminate",A.nzIndeterminate),n.xp6(1),n.Q6J("checked",A.nzChecked)("ngModel",A.nzChecked)("disabled",A.nzDisabled),n.uIk("autofocus",A.nzAutoFocus?"autofocus":null)("id",A.nzId))},dependencies:[t.Wl,t.JJ,t.On],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,E.yF)()],D.prototype,"nzAutoFocus",void 0),(0,e.gn)([(0,E.yF)()],D.prototype,"nzDisabled",void 0),(0,e.gn)([(0,E.yF)()],D.prototype,"nzIndeterminate",void 0),(0,e.gn)([(0,E.yF)()],D.prototype,"nzChecked",void 0),D})(),T=(()=>{class D{trackByOption(P,O){return O.value}onCheckedChange(P,O){P.checked=O,this.onChange(this.options)}constructor(P,O,A,k){this.elementRef=P,this.focusMonitor=O,this.cdr=A,this.directionality=k,this.onChange=()=>{},this.onTouched=()=>{},this.options=[],this.nzDisabled=!1,this.dir="ltr",this.destroy$=new i.x,this.isNzDisableFirstChange=!0}ngOnInit(){this.focusMonitor.monitor(this.elementRef,!0).pipe((0,C.R)(this.destroy$)).subscribe(P=>{P||Promise.resolve().then(()=>this.onTouched())}),this.directionality.change?.pipe((0,C.R)(this.destroy$)).subscribe(P=>{this.dir=P,this.cdr.detectChanges()}),this.dir=this.directionality.value}ngOnDestroy(){this.focusMonitor.stopMonitoring(this.elementRef),this.destroy$.next(),this.destroy$.complete()}writeValue(P){this.options=P,this.cdr.markForCheck()}registerOnChange(P){this.onChange=P}registerOnTouched(P){this.onTouched=P}setDisabledState(P){this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||P,this.isNzDisableFirstChange=!1,this.cdr.markForCheck()}static#e=this.\u0275fac=function(O){return new(O||D)(n.Y36(n.SBq),n.Y36(u.tE),n.Y36(n.sBO),n.Y36(z.Is,8))};static#t=this.\u0275cmp=n.Xpm({type:D,selectors:[["nz-checkbox-group"]],hostAttrs:[1,"ant-checkbox-group"],hostVars:2,hostBindings:function(O,A){2&O&&n.ekj("ant-checkbox-group-rtl","rtl"===A.dir)},inputs:{nzDisabled:"nzDisabled"},exportAs:["nzCheckboxGroup"],features:[n._Bn([{provide:t.JU,useExisting:(0,n.Gpc)(()=>D),multi:!0}])],decls:1,vars:2,consts:[["nz-checkbox","","class","ant-checkbox-group-item",3,"nzDisabled","nzChecked","nzCheckedChange",4,"ngFor","ngForOf","ngForTrackBy"],["nz-checkbox","",1,"ant-checkbox-group-item",3,"nzDisabled","nzChecked","nzCheckedChange"]],template:function(O,A){1&O&&n.YNc(0,p,3,3,"label",0),2&O&&n.Q6J("ngForOf",A.options)("ngForTrackBy",A.trackByOption)},dependencies:[h.sg,y],encapsulation:2})}return(0,e.gn)([(0,E.yF)()],D.prototype,"nzDisabled",void 0),D})(),x=(()=>{class D{static#e=this.\u0275fac=function(O){return new(O||D)};static#t=this.\u0275mod=n.oAB({type:D});static#n=this.\u0275inj=n.cJS({imports:[z.vT,h.ez,t.u5,u.rt]})}return D})()},64194:(nt,I,o)=>{"use strict";o.d(I,{$C:()=>d,Ev:()=>p,J_:()=>i,MC:()=>C,Rq:()=>g,YK:()=>u,c8:()=>E,lx:()=>l,mF:()=>v});var e=o(86825);let n=(()=>{class y{static#e=this.SLOW="0.3s";static#t=this.BASE="0.2s";static#n=this.FAST="0.1s"}return y})(),t=(()=>{class y{static#e=this.EASE_BASE_OUT="cubic-bezier(0.7, 0.3, 0.1, 1)";static#t=this.EASE_BASE_IN="cubic-bezier(0.9, 0, 0.3, 0.7)";static#n=this.EASE_OUT="cubic-bezier(0.215, 0.61, 0.355, 1)";static#i=this.EASE_IN="cubic-bezier(0.55, 0.055, 0.675, 0.19)";static#o=this.EASE_IN_OUT="cubic-bezier(0.645, 0.045, 0.355, 1)";static#s=this.EASE_OUT_BACK="cubic-bezier(0.12, 0.4, 0.29, 1.46)";static#r=this.EASE_IN_BACK="cubic-bezier(0.71, -0.46, 0.88, 0.6)";static#a=this.EASE_IN_OUT_BACK="cubic-bezier(0.71, -0.46, 0.29, 1.46)";static#l=this.EASE_OUT_CIRC="cubic-bezier(0.08, 0.82, 0.17, 1)";static#c=this.EASE_IN_CIRC="cubic-bezier(0.6, 0.04, 0.98, 0.34)";static#d=this.EASE_IN_OUT_CIRC="cubic-bezier(0.78, 0.14, 0.15, 0.86)";static#u=this.EASE_OUT_QUINT="cubic-bezier(0.23, 1, 0.32, 1)";static#h=this.EASE_IN_QUINT="cubic-bezier(0.755, 0.05, 0.855, 0.06)";static#p=this.EASE_IN_OUT_QUINT="cubic-bezier(0.86, 0, 0.07, 1)"}return y})();const i=(0,e.X$)("collapseMotion",[(0,e.SB)("expanded",(0,e.oB)({height:"*"})),(0,e.SB)("collapsed",(0,e.oB)({height:0,overflow:"hidden"})),(0,e.SB)("hidden",(0,e.oB)({height:0,overflow:"hidden",borderTopWidth:"0"})),(0,e.eR)("expanded => collapsed",(0,e.jt)(`150ms ${t.EASE_IN_OUT}`)),(0,e.eR)("expanded => hidden",(0,e.jt)(`150ms ${t.EASE_IN_OUT}`)),(0,e.eR)("collapsed => expanded",(0,e.jt)(`150ms ${t.EASE_IN_OUT}`)),(0,e.eR)("hidden => expanded",(0,e.jt)(`150ms ${t.EASE_IN_OUT}`))]),l=(0,e.X$)("treeCollapseMotion",[(0,e.eR)("* => *",[(0,e.IO)("nz-tree-node:leave,nz-tree-builtin-node:leave",[(0,e.oB)({overflow:"hidden"}),(0,e.EY)(0,[(0,e.jt)(`150ms ${t.EASE_IN_OUT}`,(0,e.oB)({height:0,opacity:0,"padding-bottom":0}))])],{optional:!0}),(0,e.IO)("nz-tree-node:enter,nz-tree-builtin-node:enter",[(0,e.oB)({overflow:"hidden",height:0,opacity:0,"padding-bottom":0}),(0,e.EY)(0,[(0,e.jt)(`150ms ${t.EASE_IN_OUT}`,(0,e.oB)({overflow:"hidden",height:"*",opacity:"*","padding-bottom":"*"}))])],{optional:!0})])]),C=(0,e.X$)("fadeMotion",[(0,e.eR)(":enter",[(0,e.oB)({opacity:0}),(0,e.jt)(`${n.BASE}`,(0,e.oB)({opacity:1}))]),(0,e.eR)(":leave",[(0,e.oB)({opacity:1}),(0,e.jt)(`${n.BASE}`,(0,e.oB)({opacity:0}))])]),E=(0,e.X$)("helpMotion",[(0,e.eR)(":enter",[(0,e.oB)({opacity:0,transform:"translateY(-5px)"}),(0,e.jt)(`${n.SLOW} ${t.EASE_IN_OUT}`,(0,e.oB)({opacity:1,transform:"translateY(0)"}))]),(0,e.eR)(":leave",[(0,e.oB)({opacity:1,transform:"translateY(0)"}),(0,e.jt)(`${n.SLOW} ${t.EASE_IN_OUT}`,(0,e.oB)({opacity:0,transform:"translateY(-5px)"}))])]),u=(0,e.X$)("moveUpMotion",[(0,e.eR)("* => enter",[(0,e.oB)({transformOrigin:"0 0",transform:"translateY(-100%)",opacity:0}),(0,e.jt)(`${n.BASE}`,(0,e.oB)({transformOrigin:"0 0",transform:"translateY(0%)",opacity:1}))]),(0,e.eR)("* => leave",[(0,e.oB)({transformOrigin:"0 0",transform:"translateY(0%)",opacity:1}),(0,e.jt)(`${n.BASE}`,(0,e.oB)({transformOrigin:"0 0",transform:"translateY(-100%)",opacity:0}))])]),M=((0,e.X$)("notificationMotion",[(0,e.SB)("enterRight",(0,e.oB)({opacity:1,transform:"translateX(0)"})),(0,e.eR)("* => enterRight",[(0,e.oB)({opacity:0,transform:"translateX(5%)"}),(0,e.jt)("100ms linear")]),(0,e.SB)("enterLeft",(0,e.oB)({opacity:1,transform:"translateX(0)"})),(0,e.eR)("* => enterLeft",[(0,e.oB)({opacity:0,transform:"translateX(-5%)"}),(0,e.jt)("100ms linear")]),(0,e.SB)("enterTop",(0,e.oB)({opacity:1,transform:"translateY(0)"})),(0,e.eR)("* => enterTop",[(0,e.oB)({opacity:0,transform:"translateY(-5%)"}),(0,e.jt)("100ms linear")]),(0,e.SB)("enterBottom",(0,e.oB)({opacity:1,transform:"translateY(0)"})),(0,e.eR)("* => enterBottom",[(0,e.oB)({opacity:0,transform:"translateY(5%)"}),(0,e.jt)("100ms linear")]),(0,e.SB)("leave",(0,e.oB)({opacity:0,transform:"scaleY(0.8)",transformOrigin:"0% 0%"})),(0,e.eR)("* => leave",[(0,e.oB)({opacity:1,transform:"scaleY(1)",transformOrigin:"0% 0%"}),(0,e.jt)("100ms linear")])]),`${n.BASE} ${t.EASE_OUT_QUINT}`),h=`${n.BASE} ${t.EASE_IN_QUINT}`,v=(0,e.X$)("slideMotion",[(0,e.SB)("void",(0,e.oB)({opacity:0,transform:"scaleY(0.8)"})),(0,e.SB)("enter",(0,e.oB)({opacity:1,transform:"scaleY(1)"})),(0,e.eR)("void => *",[(0,e.jt)(M)]),(0,e.eR)("* => void",[(0,e.jt)(h)])]),g=(0,e.X$)("slideAlertMotion",[(0,e.eR)(":leave",[(0,e.oB)({opacity:1,transform:"scaleY(1)",transformOrigin:"0% 0%"}),(0,e.jt)(`${n.SLOW} ${t.EASE_IN_OUT_CIRC}`,(0,e.oB)({opacity:0,transform:"scaleY(0)",transformOrigin:"0% 0%"}))])]),d=(0,e.X$)("zoomBigMotion",[(0,e.eR)("void => active",[(0,e.oB)({opacity:0,transform:"scale(0.8)"}),(0,e.jt)(`${n.BASE} ${t.EASE_OUT_CIRC}`,(0,e.oB)({opacity:1,transform:"scale(1)"}))]),(0,e.eR)("active => void",[(0,e.oB)({opacity:1,transform:"scale(1)"}),(0,e.jt)(`${n.BASE} ${t.EASE_IN_OUT_CIRC}`,(0,e.oB)({opacity:0,transform:"scale(0.8)"}))])]),p=(0,e.X$)("zoomBadgeMotion",[(0,e.eR)(":enter",[(0,e.oB)({opacity:0,transform:"scale(0) translate(50%, -50%)"}),(0,e.jt)(`${n.SLOW} ${t.EASE_OUT_BACK}`,(0,e.oB)({opacity:1,transform:"scale(1) translate(50%, -50%)"}))]),(0,e.eR)(":leave",[(0,e.oB)({opacity:1,transform:"scale(1) translate(50%, -50%)"}),(0,e.jt)(`${n.SLOW} ${t.EASE_IN_BACK}`,(0,e.oB)({opacity:0,transform:"scale(0) translate(50%, -50%)"}))])]);(0,e.X$)("thumbMotion",[(0,e.SB)("from",(0,e.oB)({transform:"translateX({{ transform }}px)",width:"{{ width }}px"}),{params:{transform:0,width:0}}),(0,e.SB)("to",(0,e.oB)({transform:"translateX({{ transform }}px)",width:"{{ width }}px"}),{params:{transform:100,width:0}}),(0,e.eR)("from => to",(0,e.jt)(`300ms ${t.EASE_IN_OUT}`))])},13324:(nt,I,o)=>{"use strict";o.d(I,{Bh:()=>t,M8:()=>C,R_:()=>_,o2:()=>l,uf:()=>i});var e=o(94265),n=o(36379);const t=["success","processing","error","default","warning"],i=["pink","red","yellow","orange","cyan","green","blue","purple","geekblue","magenta","volcano","gold","lime"];function l(P){return-1!==i.indexOf(P)}function C(P){return-1!==t.indexOf(P)}const E=2,u=.16,z=.05,M=.05,h=.15,v=5,g=4,d=[{index:7,opacity:.15},{index:6,opacity:.25},{index:5,opacity:.3},{index:5,opacity:.45},{index:5,opacity:.65},{index:5,opacity:.85},{index:4,opacity:.9},{index:3,opacity:.95},{index:2,opacity:.97},{index:1,opacity:.98}];function p({r:P,g:O,b:A}){const k=(0,e.py)(P,O,A);return{h:360*k.h,s:k.s,v:k.v}}function f({r:P,g:O,b:A}){return`#${(0,e.vq)(P,O,A,!1)}`}function T(P,O,A){let k;return k=Math.round(P.h)>=60&&Math.round(P.h)<=240?A?Math.round(P.h)-E*O:Math.round(P.h)+E*O:A?Math.round(P.h)+E*O:Math.round(P.h)-E*O,k<0?k+=360:k>=360&&(k-=360),k}function x(P,O,A){if(0===P.h&&0===P.s)return P.s;let k;return k=A?P.s-u*O:O===g?P.s+u:P.s+z*O,k>1&&(k=1),A&&O===v&&k>.1&&(k=.1),k<.06&&(k=.06),Number(k.toFixed(2))}function D(P,O,A){let k;return k=A?P.v+M*O:P.v-h*O,k>1&&(k=1),Number(k.toFixed(2))}function _(P,O={}){const A=[],k=(0,n.uA)(P);for(let F=v;F>0;F-=1){const W=p(k),K=f((0,n.uA)({h:T(W,F,!0),s:x(W,F,!0),v:D(W,F,!0)}));A.push(K)}A.push(f(k));for(let F=1;F<=g;F+=1){const W=p(k),K=f((0,n.uA)({h:T(W,F),s:x(W,F),v:D(W,F)}));A.push(K)}return"dark"===O.theme?d.map(({index:F,opacity:W})=>f(function y(P,O,A){const k=A/100;return{r:(O.r-P.r)*k+P.r,g:(O.g-P.g)*k+P.g,b:(O.b-P.b)*k+P.b}}((0,n.uA)(O.backgroundColor||"#141414"),(0,n.uA)(A[F]),100*W))):A}},83064:(nt,I,o)=>{"use strict";o.d(I,{jY:()=>f,oS:()=>y,zR:()=>M});var e=o(65879),n=o(78645),t=o(32181),i=o(21441),l=o(30889),C=o(13324),E=o(1608),u=o(27754);const z=new e.OlP("nz-config");function M(T){return(0,e.MR2)([{provide:z,useValue:T}])}const h=`-ant-${Date.now()}-${Math.random()}`;function g(T,x,D){const _=function v(T,x){const D={},_=(A,k)=>{let F=A.clone();return F=k?.(F)||F,F.toRgbString()},P=(A,k)=>{const F=new l.C(A),W=(0,C.R_)(F.toRgbString());D[`${k}-color`]=_(F),D[`${k}-color-disabled`]=W[1],D[`${k}-color-hover`]=W[4],D[`${k}-color-active`]=W[7],D[`${k}-color-outline`]=F.clone().setAlpha(.2).toRgbString(),D[`${k}-color-deprecated-bg`]=W[1],D[`${k}-color-deprecated-border`]=W[3]};if(x.primaryColor){P(x.primaryColor,"primary");const A=new l.C(x.primaryColor),k=(0,C.R_)(A.toRgbString());k.forEach((W,K)=>{D[`primary-${K+1}`]=W}),D["primary-color-deprecated-l-35"]=_(A,W=>W.lighten(35)),D["primary-color-deprecated-l-20"]=_(A,W=>W.lighten(20)),D["primary-color-deprecated-t-20"]=_(A,W=>W.tint(20)),D["primary-color-deprecated-t-50"]=_(A,W=>W.tint(50)),D["primary-color-deprecated-f-12"]=_(A,W=>W.setAlpha(.12*W.getAlpha()));const F=new l.C(k[0]);D["primary-color-active-deprecated-f-30"]=_(F,W=>W.setAlpha(.3*W.getAlpha())),D["primary-color-active-deprecated-d-02"]=_(F,W=>W.darken(2))}return x.successColor&&P(x.successColor,"success"),x.warningColor&&P(x.warningColor,"warning"),x.errorColor&&P(x.errorColor,"error"),x.infoColor&&P(x.infoColor,"info"),`\n :root {\n ${Object.keys(D).map(A=>`--${T}-${A}: ${D[A]};`).join("\n")}\n }\n `.trim()}(T,x);(0,u.J8)()?(0,u.hq)(_,`${h}-dynamic-theme`,{cspNonce:D}):(0,E.ZK)("NzConfigService: SSR do not support dynamic theme with css variables.")}const d=function(T){return void 0!==T};let f=(()=>{class T{constructor(D,_){this.configUpdated$=new n.x,this.config=D||{},this.cspNonce=_,this.config.theme&&g(this.getConfig().prefixCls?.prefixCls||"ant",this.config.theme,_)}getConfig(){return this.config}getConfigForComponent(D){return this.config[D]}getConfigChangeEventForComponent(D){return this.configUpdated$.pipe((0,t.h)(_=>_===D),(0,i.h)(void 0))}set(D,_){this.config[D]={...this.config[D],..._},"theme"===D&&this.config.theme&&g(this.getConfig().prefixCls?.prefixCls||"ant",this.config.theme,this.cspNonce),this.configUpdated$.next(D)}static#e=this.\u0275fac=function(_){return new(_||T)(e.LFG(z,8),e.LFG(e.Ojb,8))};static#t=this.\u0275prov=e.Yz7({token:T,factory:T.\u0275fac,providedIn:"root"})}return T})();function y(){return function(x,D,_){const P=`$$__zorroConfigDecorator__${D}`;return Object.defineProperty(x,P,{configurable:!0,writable:!0,enumerable:!1}),{get(){const O=_?.get?_.get.bind(this)():this[P],A=(this.propertyAssignCounter?.[D]||0)>1,k=this.nzConfigService.getConfigForComponent(this._nzModuleName)?.[D];return A&&d(O)?O:d(k)?k:O},set(O){this.propertyAssignCounter=this.propertyAssignCounter||{},this.propertyAssignCounter[D]=(this.propertyAssignCounter[D]||0)+1,_?.set?_.set.bind(this)(O):this[P]=O},configurable:!0,enumerable:!0}}}},71740:(nt,I,o)=>{"use strict";o.d(I,{N:()=>e});const e={isTestMode:!1}},50883:(nt,I,o)=>{"use strict";o.d(I,{kH:()=>E,mJ:()=>h,w_:()=>M,yW:()=>u});var e=o(65879),n=o(97328),t=o(65619),i=o(96814),l=o(90551);function C(v,g){if(1&v&&e._UZ(0,"span",1),2&v){const d=e.oxw();e.Q6J("nzType",d.iconType)}}let E=(()=>{class v{constructor(){this.formStatusChanges=new n.t(1)}static#e=this.\u0275fac=function(p){return new(p||v)};static#t=this.\u0275prov=e.Yz7({token:v,factory:v.\u0275fac})}return v})(),u=(()=>{class v{constructor(){this.noFormStatus=new t.X(!1)}static#e=this.\u0275fac=function(p){return new(p||v)};static#t=this.\u0275prov=e.Yz7({token:v,factory:v.\u0275fac})}return v})();const z={error:"close-circle-fill",validating:"loading",success:"check-circle-fill",warning:"exclamation-circle-fill"};let M=(()=>{class v{constructor(d){this.cdr=d,this.status="",this.iconType=null}ngOnChanges(d){this.updateIcon()}updateIcon(){this.iconType=this.status?z[this.status]:null,this.cdr.markForCheck()}static#e=this.\u0275fac=function(p){return new(p||v)(e.Y36(e.sBO))};static#t=this.\u0275cmp=e.Xpm({type:v,selectors:[["nz-form-item-feedback-icon"]],hostAttrs:[1,"ant-form-item-feedback-icon"],hostVars:8,hostBindings:function(p,f){2&p&&e.ekj("ant-form-item-feedback-icon-error","error"===f.status)("ant-form-item-feedback-icon-warning","warning"===f.status)("ant-form-item-feedback-icon-success","success"===f.status)("ant-form-item-feedback-icon-validating","validating"===f.status)},inputs:{status:"status"},exportAs:["nzFormFeedbackIcon"],features:[e.TTD],decls:1,vars:1,consts:[["nz-icon","",3,"nzType",4,"ngIf"],["nz-icon","",3,"nzType"]],template:function(p,f){1&p&&e.YNc(0,C,1,1,"span",0),2&p&&e.Q6J("ngIf",f.iconType)},dependencies:[i.O5,l.Ls],encapsulation:2,changeDetection:0})}return v})(),h=(()=>{class v{static#e=this.\u0275fac=function(p){return new(p||v)};static#t=this.\u0275mod=e.oAB({type:v});static#n=this.\u0275inj=e.cJS({imports:[i.ez,l.PV]})}return v})()},84267:(nt,I,o)=>{"use strict";o.d(I,{C:()=>E,U:()=>C});var e=o(65879),n=o(96814);const t=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,i=/([^\#-~ |!])/g;let C=(()=>{class u{constructor(){this.UNIQUE_WRAPPERS=["##==-open_tag-==##","##==-close_tag-==##"]}transform(M,h,v,g){if(!h)return M;const d=new RegExp(h.replace(/([.*+?^=!:${}()|[\]\/\\])/g,"\\$&"),v);return function l(u){return u.replace(/&/g,"&").replace(t,z=>`&#${1024*(z.charCodeAt(0)-55296)+(z.charCodeAt(1)-56320)+65536};`).replace(i,z=>`&#${z.charCodeAt(0)};`).replace(//g,">")}(M.replace(d,`${this.UNIQUE_WRAPPERS[0]}$&${this.UNIQUE_WRAPPERS[1]}`)).replace(new RegExp(this.UNIQUE_WRAPPERS[0],"g"),g?``:"").replace(new RegExp(this.UNIQUE_WRAPPERS[1],"g"),"")}static#e=this.\u0275fac=function(h){return new(h||u)};static#t=this.\u0275pipe=e.Yjl({name:"nzHighlight",type:u,pure:!0})}return u})(),E=(()=>{class u{static#e=this.\u0275fac=function(h){return new(h||u)};static#t=this.\u0275mod=e.oAB({type:u});static#n=this.\u0275inj=e.cJS({imports:[n.ez]})}return u})()},1608:(nt,I,o)=>{"use strict";o.d(I,{Bq:()=>i,ZK:()=>E});var e=o(65879),n=o(71740);const t={},i="[NG-ZORRO]:";const E=(...M)=>function C(M,...h){(n.N.isTestMode||(0,e.X6Q)()&&function l(...M){const h=M.reduce((v,g)=>v+g.toString(),"");return!t[h]&&(t[h]=!0,!0)}(...h))&&M(...h)}((...h)=>console.warn(i,...h),...M)},331:(nt,I,o)=>{"use strict";o.d(I,{P:()=>E,g:()=>u});var e=o(96814),n=o(65879),t=o(97582),i=o(42495),l=o(27754);const C="nz-animate-disabled";let E=(()=>{class z{constructor(h,v,g){this.element=h,this.renderer=v,this.animationType=g,this.nzNoAnimation=!1}ngOnChanges(){this.updateClass()}ngAfterViewInit(){this.updateClass()}updateClass(){const h=(0,i.fI)(this.element);h&&(this.nzNoAnimation||"NoopAnimations"===this.animationType?this.renderer.addClass(h,C):this.renderer.removeClass(h,C))}static#e=this.\u0275fac=function(v){return new(v||z)(n.Y36(n.SBq),n.Y36(n.Qsj),n.Y36(n.QbO,8))};static#t=this.\u0275dir=n.lG2({type:z,selectors:[["","nzNoAnimation",""]],inputs:{nzNoAnimation:"nzNoAnimation"},exportAs:["nzNoAnimation"],features:[n.TTD]})}return(0,t.gn)([(0,l.yF)()],z.prototype,"nzNoAnimation",void 0),z})(),u=(()=>{class z{static#e=this.\u0275fac=function(v){return new(v||z)};static#t=this.\u0275mod=n.oAB({type:z});static#n=this.\u0275inj=n.cJS({imports:[e.ez]})}return z})()},8324:(nt,I,o)=>{"use strict";o.d(I,{T:()=>l,f:()=>t});var e=o(96814),n=o(65879);let t=(()=>{class C{static ngTemplateContextGuard(u,z){return!0}recreateView(){this.viewContainer.clear();const u=this.nzStringTemplateOutlet instanceof n.Rgc;this.embeddedViewRef=this.viewContainer.createEmbeddedView(u?this.nzStringTemplateOutlet:this.templateRef,u?this.nzStringTemplateOutletContext:this.context)}updateContext(){const z=this.nzStringTemplateOutlet instanceof n.Rgc?this.nzStringTemplateOutletContext:this.context,M=this.embeddedViewRef.context;if(z)for(const h of Object.keys(z))M[h]=z[h]}constructor(u,z){this.viewContainer=u,this.templateRef=z,this.embeddedViewRef=null,this.context=new i,this.nzStringTemplateOutletContext=null,this.nzStringTemplateOutlet=null}ngOnChanges(u){const{nzStringTemplateOutletContext:z,nzStringTemplateOutlet:M}=u;M&&(this.context.$implicit=M.currentValue),(()=>{let g=!1;return M&&(g=!!M.firstChange||(M.previousValue instanceof n.Rgc||M.currentValue instanceof n.Rgc)),z&&(f=>{const y=Object.keys(f.previousValue||{}),T=Object.keys(f.currentValue||{});if(y.length===T.length){for(const x of T)if(-1===y.indexOf(x))return!0;return!1}return!0})(z)||g})()?this.recreateView():this.updateContext()}static#e=this.\u0275fac=function(z){return new(z||C)(n.Y36(n.s_b),n.Y36(n.Rgc))};static#t=this.\u0275dir=n.lG2({type:C,selectors:[["","nzStringTemplateOutlet",""]],inputs:{nzStringTemplateOutletContext:"nzStringTemplateOutletContext",nzStringTemplateOutlet:"nzStringTemplateOutlet"},exportAs:["nzStringTemplateOutlet"],features:[n.TTD]})}return C})();class i{}let l=(()=>{class C{static#e=this.\u0275fac=function(z){return new(z||C)};static#t=this.\u0275mod=n.oAB({type:C});static#n=this.\u0275inj=n.cJS({imports:[e.ez]})}return C})()},85448:(nt,I,o)=>{"use strict";o.d(I,{A7:()=>M,Ek:()=>u,bw:()=>d,d_:()=>v,dz:()=>g,e4:()=>f,fG:()=>h,hQ:()=>p,n$:()=>z,yW:()=>E});var e=o(97582),n=o(33651),t=o(65879),i=o(59773),l=o(99087),C=o(27754);const E={top:new n.tR({originX:"center",originY:"top"},{overlayX:"center",overlayY:"bottom"}),topCenter:new n.tR({originX:"center",originY:"top"},{overlayX:"center",overlayY:"bottom"}),topLeft:new n.tR({originX:"start",originY:"top"},{overlayX:"start",overlayY:"bottom"}),topRight:new n.tR({originX:"end",originY:"top"},{overlayX:"end",overlayY:"bottom"}),right:new n.tR({originX:"end",originY:"center"},{overlayX:"start",overlayY:"center"}),rightTop:new n.tR({originX:"end",originY:"top"},{overlayX:"start",overlayY:"top"}),rightBottom:new n.tR({originX:"end",originY:"bottom"},{overlayX:"start",overlayY:"bottom"}),bottom:new n.tR({originX:"center",originY:"bottom"},{overlayX:"center",overlayY:"top"}),bottomCenter:new n.tR({originX:"center",originY:"bottom"},{overlayX:"center",overlayY:"top"}),bottomLeft:new n.tR({originX:"start",originY:"bottom"},{overlayX:"start",overlayY:"top"}),bottomRight:new n.tR({originX:"end",originY:"bottom"},{overlayX:"end",overlayY:"top"}),left:new n.tR({originX:"start",originY:"center"},{overlayX:"end",overlayY:"center"}),leftTop:new n.tR({originX:"start",originY:"top"},{overlayX:"end",overlayY:"top"}),leftBottom:new n.tR({originX:"start",originY:"bottom"},{overlayX:"end",overlayY:"bottom"})},u=[E.top,E.right,E.bottom,E.left],z=[E.bottomLeft,E.bottomRight,E.topLeft,E.topRight,E.topCenter,E.bottomCenter],M=[new n.tR({originX:"start",originY:"bottom"},{overlayX:"start",overlayY:"bottom"}),new n.tR({originX:"start",originY:"bottom"},{overlayX:"end",overlayY:"bottom"})],h=[E.bottomLeft,new n.tR({originX:"start",originY:"bottom"},{overlayX:"end",overlayY:"top"})];function v(y){for(const T in E)if(y.connectionPair.originX===E[T].originX&&y.connectionPair.originY===E[T].originY&&y.connectionPair.overlayX===E[T].overlayX&&y.connectionPair.overlayY===E[T].overlayY)return T}const g={bottomLeft:new n.tR({originX:"start",originY:"bottom"},{overlayX:"start",overlayY:"top"},void 0,2),topLeft:new n.tR({originX:"start",originY:"top"},{overlayX:"start",overlayY:"bottom"},void 0,-2),bottomRight:new n.tR({originX:"end",originY:"bottom"},{overlayX:"end",overlayY:"top"},void 0,2),topRight:new n.tR({originX:"end",originY:"top"},{overlayX:"end",overlayY:"bottom"},void 0,-2)},d=[g.bottomLeft,g.topLeft,g.bottomRight,g.topRight];let p=(()=>{class y{constructor(x,D){this.cdkConnectedOverlay=x,this.nzDestroyService=D,this.nzArrowPointAtCenter=!1,this.cdkConnectedOverlay.backdropClass="nz-overlay-transparent-backdrop",this.cdkConnectedOverlay.positionChange.pipe((0,i.R)(this.nzDestroyService)).subscribe(_=>{this.nzArrowPointAtCenter&&this.updateArrowPosition(_)})}updateArrowPosition(x){const D=this.getOriginRect(),_=v(x);let P=0,O=0;"topLeft"===_||"bottomLeft"===_?P=D.width/2-14:"topRight"===_||"bottomRight"===_?P=-(D.width/2-14):"leftTop"===_||"rightTop"===_?O=D.height/2-10:("leftBottom"===_||"rightBottom"===_)&&(O=-(D.height/2-10)),(this.cdkConnectedOverlay.offsetX!==P||this.cdkConnectedOverlay.offsetY!==O)&&(this.cdkConnectedOverlay.offsetY=O,this.cdkConnectedOverlay.offsetX=P,this.cdkConnectedOverlay.overlayRef.updatePosition())}getFlexibleConnectedPositionStrategyOrigin(){return this.cdkConnectedOverlay.origin instanceof n.xu?this.cdkConnectedOverlay.origin.elementRef:this.cdkConnectedOverlay.origin}getOriginRect(){const x=this.getFlexibleConnectedPositionStrategyOrigin();if(x instanceof t.SBq)return x.nativeElement.getBoundingClientRect();if(x instanceof Element)return x.getBoundingClientRect();const D=x.width||0,_=x.height||0;return{top:x.y,bottom:x.y+_,left:x.x,right:x.x+D,height:_,width:D}}static#e=this.\u0275fac=function(D){return new(D||y)(t.Y36(n.pI),t.Y36(l.kn))};static#t=this.\u0275dir=t.lG2({type:y,selectors:[["","cdkConnectedOverlay","","nzConnectedOverlay",""]],inputs:{nzArrowPointAtCenter:"nzArrowPointAtCenter"},exportAs:["nzConnectedOverlay"],features:[t._Bn([l.kn])]})}return(0,e.gn)([(0,C.yF)()],y.prototype,"nzArrowPointAtCenter",void 0),y})(),f=(()=>{class y{static#e=this.\u0275fac=function(D){return new(D||y)};static#t=this.\u0275mod=t.oAB({type:y});static#n=this.\u0275inj=t.cJS({})}return y})()},56879:(nt,I,o)=>{"use strict";o.d(I,{e:()=>l,h:()=>i});const e=["moz","ms","webkit"];function i(C){if(typeof window>"u")return null;if(window.cancelAnimationFrame)return window.cancelAnimationFrame(C);const E=e.filter(u=>`${u}CancelAnimationFrame`in window||`${u}CancelRequestAnimationFrame`in window)[0];return E?(window[`${E}CancelAnimationFrame`]||window[`${E}CancelRequestAnimationFrame`]).call(this,C):clearTimeout(C)}const l=function t(){if(typeof window>"u")return()=>0;if(window.requestAnimationFrame)return window.requestAnimationFrame.bind(window);const C=e.filter(E=>`${E}RequestAnimationFrame`in window)[0];return C?window[`${C}RequestAnimationFrame`]:function n(){let C=0;return function(E){const u=(new Date).getTime(),z=Math.max(0,16-(u-C)),M=setTimeout(()=>{E(u+z)},z);return C=u+z,M}}()}()},99087:(nt,I,o)=>{"use strict";o.d(I,{G_:()=>O,KV:()=>T,MF:()=>P,Ml:()=>D,WV:()=>A,kn:()=>W,r3:()=>F,rI:()=>f});var e=o(65879),n=o(78645),t=o(29028),i=o(64716),l=o(37398),C=o(32181),E=o(59773),u=o(27921),z=o(93997),M=o(71740),h=o(27754),v=o(96814),g=o(56879),d=o(71088);const p=()=>{};let f=(()=>{class _e{constructor(G,H){this.ngZone=G,this.rendererFactory2=H,this.resizeSource$=new n.x,this.listeners=0,this.disposeHandle=p,this.handler=()=>{this.ngZone.run(()=>{this.resizeSource$.next()})},this.renderer=this.rendererFactory2.createRenderer(null,null)}ngOnDestroy(){this.handler=p}subscribe(){return this.registerListener(),this.resizeSource$.pipe((0,t.e)(16),(0,i.x)(()=>this.unregisterListener()))}unsubscribe(){this.unregisterListener()}registerListener(){0===this.listeners&&this.ngZone.runOutsideAngular(()=>{this.disposeHandle=this.renderer.listen("window","resize",this.handler)}),this.listeners+=1}unregisterListener(){this.listeners-=1,0===this.listeners&&(this.disposeHandle(),this.disposeHandle=p)}static#e=this.\u0275fac=function(H){return new(H||_e)(e.LFG(e.R0b),e.LFG(e.FYo))};static#t=this.\u0275prov=e.Yz7({token:_e,factory:_e.\u0275fac,providedIn:"root"})}return _e})();const y=new Map;let T=(()=>{class _e{constructor(){this._singletonRegistry=new Map}get singletonRegistry(){return M.N.isTestMode?y:this._singletonRegistry}registerSingletonWithKey(G,H){const j=this.singletonRegistry.has(G),te=j?this.singletonRegistry.get(G):this.withNewTarget(H);j||this.singletonRegistry.set(G,te)}unregisterSingletonWithKey(G){this.singletonRegistry.has(G)&&this.singletonRegistry.delete(G)}getSingletonWithKey(G){return this.singletonRegistry.has(G)?this.singletonRegistry.get(G).target:null}withNewTarget(G){return{target:G}}static#e=this.\u0275fac=function(H){return new(H||_e)};static#t=this.\u0275prov=e.Yz7({token:_e,factory:_e.\u0275fac,providedIn:"root"})}return _e})(),D=(()=>{class _e{constructor(G){this.draggingThreshold=5,this.currentDraggingSequence=null,this.currentStartingPoint=null,this.handleRegistry=new Set,this.renderer=G.createRenderer(null,null)}requestDraggingSequence(G){return this.handleRegistry.size||this.registerDraggingHandler((0,h.z6)(G)),this.currentDraggingSequence&&this.currentDraggingSequence.complete(),this.currentStartingPoint=function x(_e){const Y=(0,h.wv)(_e);return{x:Y.pageX,y:Y.pageY}}(G),this.currentDraggingSequence=new n.x,this.currentDraggingSequence.pipe((0,l.U)(H=>({x:H.pageX-this.currentStartingPoint.x,y:H.pageY-this.currentStartingPoint.y})),(0,C.h)(H=>Math.abs(H.x)>this.draggingThreshold||Math.abs(H.y)>this.draggingThreshold),(0,i.x)(()=>this.teardownDraggingSequence()))}registerDraggingHandler(G){G?(this.handleRegistry.add({teardown:this.renderer.listen("document","touchmove",H=>{this.currentDraggingSequence&&this.currentDraggingSequence.next(H.touches[0]||H.changedTouches[0])})}),this.handleRegistry.add({teardown:this.renderer.listen("document","touchend",()=>{this.currentDraggingSequence&&this.currentDraggingSequence.complete()})})):(this.handleRegistry.add({teardown:this.renderer.listen("document","mousemove",H=>{this.currentDraggingSequence&&this.currentDraggingSequence.next(H)})}),this.handleRegistry.add({teardown:this.renderer.listen("document","mouseup",()=>{this.currentDraggingSequence&&this.currentDraggingSequence.complete()})}))}teardownDraggingSequence(){this.currentDraggingSequence=null}static#e=this.\u0275fac=function(H){return new(H||_e)(e.LFG(e.FYo))};static#t=this.\u0275prov=e.Yz7({token:_e,factory:_e.\u0275fac,providedIn:"root"})}return _e})();function _(_e,Y,G,H){const j=G-Y;let te=_e/(H/2);return te<1?j/2*te*te*te+Y:j/2*((te-=2)*te*te+2)+Y}let P=(()=>{class _e{constructor(G,H){this.ngZone=G,this.doc=H}setScrollTop(G,H=0){G===window?(this.doc.body.scrollTop=H,this.doc.documentElement.scrollTop=H):G.scrollTop=H}getOffset(G){const H={top:0,left:0};if(!G||!G.getClientRects().length)return H;const j=G.getBoundingClientRect();if(j.width||j.height){const te=G.ownerDocument.documentElement;H.top=j.top-te.clientTop,H.left=j.left-te.clientLeft}else H.top=j.top,H.left=j.left;return H}getScroll(G,H=!0){if(typeof window>"u")return 0;const j=H?"scrollTop":"scrollLeft";let te=0;return this.isWindow(G)?te=G[H?"pageYOffset":"pageXOffset"]:G instanceof Document?te=G.documentElement[j]:G&&(te=G[j]),G&&!this.isWindow(G)&&"number"!=typeof te&&(te=(G.ownerDocument||G).documentElement[j]),te}isWindow(G){return null!=G&&G===G.window}scrollTo(G,H=0,j={}){const te=G||window,ne=this.getScroll(te),pe=Date.now(),{easing:re,callback:be,duration:le=450}=j,ce=()=>{const ie=Date.now()-pe,ae=(re||_)(ie>le?le:ie,ne,H,le);this.isWindow(te)?te.scrollTo(window.pageXOffset,ae):te instanceof HTMLDocument||"HTMLDocument"===te.constructor.name?te.documentElement.scrollTop=ae:te.scrollTop=ae,ie(0,g.e)(ce))}static#e=this.\u0275fac=function(H){return new(H||_e)(e.LFG(e.R0b),e.LFG(v.K0))};static#t=this.\u0275prov=e.Yz7({token:_e,factory:_e.\u0275fac,providedIn:"root"})}return _e})();var O=function(_e){return _e.xxl="xxl",_e.xl="xl",_e.lg="lg",_e.md="md",_e.sm="sm",_e.xs="xs",_e}(O||{});const A={xs:"(max-width: 575px)",sm:"(min-width: 576px)",md:"(min-width: 768px)",lg:"(min-width: 992px)",xl:"(min-width: 1200px)",xxl:"(min-width: 1600px)"};let F=(()=>{class _e{constructor(G,H){this.resizeService=G,this.mediaMatcher=H,this.destroy$=new n.x,this.resizeService.subscribe().pipe((0,E.R)(this.destroy$)).subscribe(()=>{})}ngOnDestroy(){this.destroy$.next()}subscribe(G,H){if(H){const j=()=>this.matchMedia(G,!0);return this.resizeService.subscribe().pipe((0,l.U)(j),(0,u.O)(j()),(0,z.x)((te,ne)=>te[0]===ne[0]),(0,l.U)(te=>te[1]))}{const j=()=>this.matchMedia(G);return this.resizeService.subscribe().pipe((0,l.U)(j),(0,u.O)(j()),(0,z.x)())}}matchMedia(G,H){let j=O.md;const te={};return Object.keys(G).map(ne=>{const pe=ne,re=this.mediaMatcher.matchMedia(A[pe]).matches;te[ne]=re,re&&(j=pe)}),H?[j,te]:j}static#e=this.\u0275fac=function(H){return new(H||_e)(e.LFG(f),e.LFG(d.vx))};static#t=this.\u0275prov=e.Yz7({token:_e,factory:_e.\u0275fac,providedIn:"root"})}return _e})(),W=(()=>{class _e extends n.x{ngOnDestroy(){this.next(),this.complete()}static#e=this.\u0275fac=function(){let G;return function(j){return(G||(G=e.n5z(_e)))(j||_e)}}();static#t=this.\u0275prov=e.Yz7({token:_e,factory:_e.\u0275fac})}return _e})()},3945:(nt,I,o)=>{"use strict";o.d(I,{Yp:()=>ae,ky:()=>ie,_p:()=>Q,Et:()=>ce,xR:()=>Me});var e=o(97753),n=o(47680),t=o(96156),i=o(40581),l=o(62816),E=o(22040);var M=o(21083),h=o(68584),v=o(5227);function d(Ye,q){(0,l.Z)(2,arguments);var ye=(0,i.Z)(Ye),ee=(0,i.Z)(q);return ye.getFullYear()===ee.getFullYear()}function p(Ye,q){(0,l.Z)(2,arguments);var ye=(0,i.Z)(Ye),ee=(0,i.Z)(q);return ye.getFullYear()===ee.getFullYear()&&ye.getMonth()===ee.getMonth()}var f=o(79189);function y(Ye,q){(0,l.Z)(2,arguments);var ye=(0,f.Z)(Ye),ee=(0,f.Z)(q);return ye.getTime()===ee.getTime()}function T(Ye){(0,l.Z)(1,arguments);var q=(0,i.Z)(Ye);return q.setMinutes(0,0,0),q}function x(Ye,q){(0,l.Z)(2,arguments);var ye=T(Ye),ee=T(q);return ye.getTime()===ee.getTime()}function D(Ye){(0,l.Z)(1,arguments);var q=(0,i.Z)(Ye);return q.setSeconds(0,0),q}function _(Ye,q){(0,l.Z)(2,arguments);var ye=D(Ye),ee=D(q);return ye.getTime()===ee.getTime()}function P(Ye){(0,l.Z)(1,arguments);var q=(0,i.Z)(Ye);return q.setMilliseconds(0),q}function O(Ye,q){(0,l.Z)(2,arguments);var ye=P(Ye),ee=P(q);return ye.getTime()===ee.getTime()}function A(Ye,q){(0,l.Z)(2,arguments);var ye=(0,i.Z)(Ye),ee=(0,i.Z)(q);return ye.getFullYear()-ee.getFullYear()}var k=o(80275),F=o(61855),W=o(33865),K=o(96086),_e=o(588);function Y(Ye,q,ye){(0,l.Z)(2,arguments);var ee=(0,K.Z)(Ye,q)/W.vh;return(0,_e.u)(ye?.roundingMethod)(ee)}function G(Ye,q,ye){(0,l.Z)(2,arguments);var ee=(0,K.Z)(Ye,q)/W.yJ;return(0,_e.u)(ye?.roundingMethod)(ee)}var H=o(13061),te=o(34338),pe=o(80787),re=o(1608),be=o(96814),le=o(27754);function ce(Ye){const[q,ye]=Ye;return!!q&&!!ye&&ye.isBeforeDay(q)}function Q(Ye,q,ye="month",ee="left"){const[Be,Re]=Ye;let ct=Be||new ae,Ae=Re||(q?ct:ct.add(1,ye));return Be&&!Re?(ct=Be,Ae=q?Be:Be.add(1,ye)):!Be&&Re?(ct=q?Re:Re.add(-1,ye),Ae=Re):Be&&Re&&!q&&(Be.isSame(Re,ye)||"left"===ee?Ae=ct.add(1,ye):ct=Ae.add(-1,ye)),[ct,Ae]}function ie(Ye){return Array.isArray(Ye)?Ye.map(q=>q instanceof ae?q.clone():null):Ye instanceof ae?Ye.clone():null}class ae{constructor(q){if(q)if(q instanceof Date)this.nativeDate=q;else{if("string"!=typeof q&&"number"!=typeof q)throw new Error('The input date type is not supported ("Date" is now recommended)');(0,re.ZK)('The string type is not recommended for date-picker, use "Date" type'),this.nativeDate=new Date(q)}else this.nativeDate=new Date}calendarStart(q){return new ae((0,e.Z)((0,n.Z)(this.nativeDate),q))}getYear(){return this.nativeDate.getFullYear()}getMonth(){return this.nativeDate.getMonth()}getDay(){return this.nativeDate.getDay()}getTime(){return this.nativeDate.getTime()}getDate(){return this.nativeDate.getDate()}getHours(){return this.nativeDate.getHours()}getMinutes(){return this.nativeDate.getMinutes()}getSeconds(){return this.nativeDate.getSeconds()}getMilliseconds(){return this.nativeDate.getMilliseconds()}clone(){return new ae(new Date(this.nativeDate))}setHms(q,ye,ee){const Be=new Date(this.nativeDate.setHours(q,ye,ee));return new ae(Be)}setYear(q){return new ae(function C(Ye,q){(0,l.Z)(2,arguments);var ye=(0,i.Z)(Ye),ee=(0,t.Z)(q);return isNaN(ye.getTime())?new Date(NaN):(ye.setFullYear(ee),ye)}(this.nativeDate,q))}addYears(q){return new ae((0,E.Z)(this.nativeDate,q))}setMonth(q){return new ae(function z(Ye,q){(0,l.Z)(2,arguments);var ye=(0,i.Z)(Ye),ee=(0,t.Z)(q),Be=ye.getFullYear(),Re=ye.getDate(),ct=new Date(0);ct.setFullYear(Be,ee,15),ct.setHours(0,0,0,0);var Ae=function u(Ye){(0,l.Z)(1,arguments);var q=(0,i.Z)(Ye),ye=q.getFullYear(),ee=q.getMonth(),Be=new Date(0);return Be.setFullYear(ye,ee+1,0),Be.setHours(0,0,0,0),Be.getDate()}(ct);return ye.setMonth(ee,Math.min(Re,Ae)),ye}(this.nativeDate,q))}addMonths(q){return new ae((0,M.Z)(this.nativeDate,q))}setDay(q,ye){return new ae(function g(Ye,q,ye){var ee,Be,Re,ct,Ae,Mt,je,ot;(0,l.Z)(2,arguments);var mt=(0,v.j)(),we=(0,t.Z)(null!==(ee=null!==(Be=null!==(Re=null!==(ct=ye?.weekStartsOn)&&void 0!==ct?ct:null==ye||null===(Ae=ye.locale)||void 0===Ae||null===(Mt=Ae.options)||void 0===Mt?void 0:Mt.weekStartsOn)&&void 0!==Re?Re:mt.weekStartsOn)&&void 0!==Be?Be:null===(je=mt.locale)||void 0===je||null===(ot=je.options)||void 0===ot?void 0:ot.weekStartsOn)&&void 0!==ee?ee:0);if(!(we>=0&&we<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var de=(0,i.Z)(Ye),U=(0,t.Z)(q),B=de.getDay(),Ne=7-we;return(0,h.Z)(de,U<0||U>6?U-(B+Ne)%7:((U%7+7)%7+Ne)%7-(B+Ne)%7)}(this.nativeDate,q,ye))}setDate(q){const ye=new Date(this.nativeDate);return ye.setDate(q),new ae(ye)}addDays(q){return this.setDate(this.getDate()+q)}add(q,ye){switch(ye){case"decade":return this.addYears(10*q);case"year":return this.addYears(q);default:return this.addMonths(q)}}isSame(q,ye="day"){let ee;switch(ye){case"decade":ee=(Be,Re)=>Math.abs(Be.getFullYear()-Re.getFullYear())<11;break;case"year":ee=d;break;case"month":ee=p;break;case"day":default:ee=y;break;case"hour":ee=x;break;case"minute":ee=_;break;case"second":ee=O}return ee(this.nativeDate,this.toNativeDate(q))}isSameYear(q){return this.isSame(q,"year")}isSameMonth(q){return this.isSame(q,"month")}isSameDay(q){return this.isSame(q,"day")}isSameHour(q){return this.isSame(q,"hour")}isSameMinute(q){return this.isSame(q,"minute")}isSameSecond(q){return this.isSame(q,"second")}isBefore(q,ye="day"){if(null===q)return!1;let ee;switch(ye){case"year":ee=A;break;case"month":ee=k.Z;break;case"day":default:ee=F.Z;break;case"hour":ee=Y;break;case"minute":ee=G;break;case"second":ee=H.Z}return ee(this.nativeDate,this.toNativeDate(q))<0}isBeforeYear(q){return this.isBefore(q,"year")}isBeforeMonth(q){return this.isBefore(q,"month")}isBeforeDay(q){return this.isBefore(q,"day")}isToday(){return function j(Ye){return(0,l.Z)(1,arguments),y(Ye,Date.now())}(this.nativeDate)}isValid(){return(0,te.Z)(this.nativeDate)}isFirstDayOfMonth(){return function ne(Ye){return(0,l.Z)(1,arguments),1===(0,i.Z)(Ye).getDate()}(this.nativeDate)}isLastDayOfMonth(){return(0,pe.Z)(this.nativeDate)}toNativeDate(q){return q instanceof ae?q.nativeDate:q}}class Me{constructor(q,ye){this.format=q,this.localeId=ye,this.regex=null,this.matchMap={hour:null,minute:null,second:null,periodNarrow:null,periodWide:null,periodAbbreviated:null},this.genRegexp()}toDate(q){const ye=this.getTimeResult(q),ee=new Date;return(0,le.DX)(ye?.hour)&&ee.setHours(ye.hour),(0,le.DX)(ye?.minute)&&ee.setMinutes(ye.minute),(0,le.DX)(ye?.second)&&ee.setSeconds(ye.second),1===ye?.period&&ee.getHours()<12&&ee.setHours(ee.getHours()+12),ee}getTimeResult(q){const ye=this.regex.exec(q);let ee=null;return ye?((0,le.DX)(this.matchMap.periodNarrow)&&(ee=(0,be.ol)(this.localeId,be.x.Format,be.Tn.Narrow).indexOf(ye[this.matchMap.periodNarrow+1])),(0,le.DX)(this.matchMap.periodWide)&&(ee=(0,be.ol)(this.localeId,be.x.Format,be.Tn.Wide).indexOf(ye[this.matchMap.periodWide+1])),(0,le.DX)(this.matchMap.periodAbbreviated)&&(ee=(0,be.ol)(this.localeId,be.x.Format,be.Tn.Abbreviated).indexOf(ye[this.matchMap.periodAbbreviated+1])),{hour:(0,le.DX)(this.matchMap.hour)?Number.parseInt(ye[this.matchMap.hour+1],10):null,minute:(0,le.DX)(this.matchMap.minute)?Number.parseInt(ye[this.matchMap.minute+1],10):null,second:(0,le.DX)(this.matchMap.second)?Number.parseInt(ye[this.matchMap.second+1],10):null,period:ee}):null}genRegexp(){let q=this.format.replace(/([.*+?^=!:${}()|[\]\/\\])/g,"\\$&");const ye=/h{1,2}/i,ee=/m{1,2}/,Be=/s{1,2}/,Re=/aaaaa/,ct=/aaaa/,Ae=/a{1,3}/,Mt=ye.exec(this.format),je=ee.exec(this.format),ot=Be.exec(this.format),mt=Re.exec(this.format);let we=null,de=null;mt||(we=ct.exec(this.format)),!we&&!mt&&(de=Ae.exec(this.format)),[Mt,je,ot,mt,we,de].filter(B=>!!B).sort((B,Ee)=>B.index-Ee.index).forEach((B,Ee)=>{switch(B){case Mt:this.matchMap.hour=Ee,q=q.replace(ye,"(\\d{1,2})");break;case je:this.matchMap.minute=Ee,q=q.replace(ee,"(\\d{1,2})");break;case ot:this.matchMap.second=Ee,q=q.replace(Be,"(\\d{1,2})");break;case mt:this.matchMap.periodNarrow=Ee;const Ie=(0,be.ol)(this.localeId,be.x.Format,be.Tn.Narrow).join("|");q=q.replace(Re,`(${Ie})`);break;case we:this.matchMap.periodWide=Ee;const Ne=(0,be.ol)(this.localeId,be.x.Format,be.Tn.Wide).join("|");q=q.replace(ct,`(${Ne})`);break;case de:this.matchMap.periodAbbreviated=Ee;const pt=(0,be.ol)(this.localeId,be.x.Format,be.Tn.Abbreviated).join("|");q=q.replace(Ae,`(${pt})`)}}),this.regex=new RegExp(q)}}},70855:(nt,I,o)=>{"use strict";o.d(I,{a:()=>i,w:()=>t});var e=o(62831),n=o(65879);let t=(()=>{class l{setHiddenAttribute(){this.hidden?this.renderer.setAttribute(this.elementRef.nativeElement,"hidden","string"==typeof this.hidden?this.hidden:""):this.renderer.removeAttribute(this.elementRef.nativeElement,"hidden")}constructor(E,u){this.elementRef=E,this.renderer=u,this.hidden=null,this.renderer.setAttribute(this.elementRef.nativeElement,"hidden","")}ngOnChanges(){this.setHiddenAttribute()}ngAfterViewInit(){this.setHiddenAttribute()}static#e=this.\u0275fac=function(u){return new(u||l)(n.Y36(n.SBq),n.Y36(n.Qsj))};static#t=this.\u0275dir=n.lG2({type:l,selectors:[["","nz-button",""],["nz-button-group"],["","nz-icon",""],["","nz-menu-item",""],["","nz-submenu",""],["nz-select-top-control"],["nz-select-placeholder"],["nz-input-group"]],inputs:{hidden:"hidden"},features:[n.TTD]})}return l})(),i=(()=>{class l{static#e=this.\u0275fac=function(u){return new(u||l)};static#t=this.\u0275mod=n.oAB({type:l});static#n=this.\u0275inj=n.cJS({imports:[e.ud]})}return l})()},94197:(nt,I,o)=>{"use strict";o.d(I,{Zr:()=>t,fP:()=>h,g2:()=>M,kW:()=>z,oH:()=>u});var e=o(65879),n=o(65619);class t{get treeService(){return this.service||this.parentNode&&this.parentNode.treeService}constructor(g,d=null,p=null){if(this._title="",this.level=0,this.parentNode=null,this._icon="",this._children=[],this._isLeaf=!1,this._isChecked=!1,this._isSelectable=!1,this._isDisabled=!1,this._isDisableCheckbox=!1,this._isExpanded=!1,this._isHalfChecked=!1,this._isSelected=!1,this._isLoading=!1,this.canHide=!1,this.isMatched=!1,this.service=null,g instanceof t)return g;this.service=p||null,this.origin=g,this.key=g.key,this.parentNode=d,this._title=g.title||"---",this._icon=g.icon||"",this._isLeaf=g.isLeaf||!1,this._children=[],this._isChecked=g.checked||!1,this._isSelectable=g.disabled||!1!==g.selectable,this._isDisabled=g.disabled||!1,this._isDisableCheckbox=g.disableCheckbox||!1,this._isExpanded=!g.isLeaf&&(g.expanded||!1),this._isHalfChecked=!1,this._isSelected=!g.disabled&&g.selected||!1,this._isLoading=!1,this.isMatched=!1,this.level=d?d.level+1:0,typeof g.children<"u"&&null!==g.children&&g.children.forEach(f=>{const y=this.treeService;y&&!y.isCheckStrictly&&g.checked&&!g.disabled&&!f.disabled&&!f.disableCheckbox&&(f.checked=g.checked),this._children.push(new t(f,this))})}get title(){return this._title}set title(g){this._title=g,this.update()}get icon(){return this._icon}set icon(g){this._icon=g,this.update()}get children(){return this._children}set children(g){this._children=g,this.update()}get isLeaf(){return this._isLeaf}set isLeaf(g){this._isLeaf=g,this.update()}get isChecked(){return this._isChecked}set isChecked(g){this._isChecked=g,this.origin.checked=g,this.afterValueChange("isChecked")}get isHalfChecked(){return this._isHalfChecked}set isHalfChecked(g){this._isHalfChecked=g,this.afterValueChange("isHalfChecked")}get isSelectable(){return this._isSelectable}set isSelectable(g){this._isSelectable=g,this.update()}get isDisabled(){return this._isDisabled}set isDisabled(g){this._isDisabled=g,this.update()}get isDisableCheckbox(){return this._isDisableCheckbox}set isDisableCheckbox(g){this._isDisableCheckbox=g,this.update()}get isExpanded(){return this._isExpanded}set isExpanded(g){this._isExpanded=g,this.origin.expanded=g,this.afterValueChange("isExpanded"),this.afterValueChange("reRender")}get isSelected(){return this._isSelected}set isSelected(g){this._isSelected=g,this.origin.selected=g,this.afterValueChange("isSelected")}get isLoading(){return this._isLoading}set isLoading(g){this._isLoading=g,this.update()}setSyncChecked(g=!1,d=!1){this.setChecked(g,d),this.treeService&&!this.treeService.isCheckStrictly&&this.treeService.conduct(this)}setChecked(g=!1,d=!1){this.origin.checked=g,this.isChecked=g,this.isHalfChecked=d}setExpanded(g){this._isExpanded=g,this.origin.expanded=g,this.afterValueChange("isExpanded")}getParentNode(){return this.parentNode}getChildren(){return this.children}addChildren(g,d=-1){this.isLeaf||(g.forEach(p=>{const f=T=>{T.getChildren().forEach(x=>{x.level=x.getParentNode().level+1,x.origin.level=x.level,f(x)})};let y=p;y instanceof t?y.parentNode=this:y=new t(p,this),y.level=this.level+1,y.origin.level=y.level,f(y);try{-1===d?this.children.push(y):this.children.splice(d,0,y)}catch{}}),this.origin.children=this.getChildren().map(p=>p.origin),this.isLoading=!1),this.afterValueChange("addChildren"),this.afterValueChange("reRender")}clearChildren(){this.afterValueChange("clearChildren"),this.children=[],this.origin.children=[],this.afterValueChange("reRender")}remove(){const g=this.getParentNode();g&&(g.children=g.getChildren().filter(d=>d.key!==this.key),g.origin.children=g.origin.children.filter(d=>d.key!==this.key),this.afterValueChange("remove"),this.afterValueChange("reRender"))}afterValueChange(g){if(this.treeService)switch(g){case"isChecked":this.treeService.setCheckedNodeList(this);break;case"isHalfChecked":this.treeService.setHalfCheckedNodeList(this);break;case"isExpanded":this.treeService.setExpandedNodeList(this);break;case"isSelected":this.treeService.setNodeActive(this);break;case"clearChildren":this.treeService.afterRemove(this.getChildren());break;case"remove":this.treeService.afterRemove([this]);break;case"reRender":this.treeService.flattenTreeData(this.treeService.rootNodes,this.treeService.getExpandedNodeList().map(d=>d.key))}this.update()}update(){this.component&&this.component.markForCheck()}}function i(v){const{isDisabled:g,isDisableCheckbox:d}=v;return!(!g&&!d)}function l(v,g){return g.length>0&&g.indexOf(v)>-1}function u(v=[],g=[]){const d=new Set(!0===g?[]:g),p=[];return function f(y,T=null){return y.map((x,D)=>{const _=function C(v,g){return`${v}-${g}`}(T?T.pos:"0",D),P=function E(v,g){return v??g}(x.key,_);x.isStart=[...T?T.isStart:[],0===D],x.isEnd=[...T?T.isEnd:[],D===y.length-1];const O={parent:T,pos:_,children:[],data:x,isStart:[...T?T.isStart:[],0===D],isEnd:[...T?T.isEnd:[],D===y.length-1]};return p.push(O),O.children=!0===g||d.has(P)||x.isExpanded?f(x.children||[],O):[],O})}(v),p}let z=(()=>{class v{constructor(){this.DRAG_SIDE_RANGE=.25,this.DRAG_MIN_GAP=2,this.isCheckStrictly=!1,this.isMultiple=!1,this.rootNodes=[],this.flattenNodes$=new n.X([]),this.selectedNodeList=[],this.expandedNodeList=[],this.checkedNodeList=[],this.halfCheckedNodeList=[],this.matchedNodeList=[]}initTree(d){this.rootNodes=d,this.expandedNodeList=[],this.selectedNodeList=[],this.halfCheckedNodeList=[],this.checkedNodeList=[],this.matchedNodeList=[]}flattenTreeData(d,p=[]){this.flattenNodes$.next(u(d,p).map(f=>f.data))}getSelectedNode(){return this.selectedNode}getSelectedNodeList(){return this.conductNodeState("select")}getCheckedNodeList(){return this.conductNodeState("check")}getHalfCheckedNodeList(){return this.conductNodeState("halfCheck")}getExpandedNodeList(){return this.conductNodeState("expand")}getMatchedNodeList(){return this.conductNodeState("match")}isArrayOfNzTreeNode(d){return d.every(p=>p instanceof t)}setSelectedNode(d){this.selectedNode=d}setNodeActive(d){!this.isMultiple&&d.isSelected&&(this.selectedNodeList.forEach(p=>{d.key!==p.key&&(p.isSelected=!1)}),this.selectedNodeList=[]),this.setSelectedNodeList(d,this.isMultiple)}setSelectedNodeList(d,p=!1){const f=this.getIndexOfArray(this.selectedNodeList,d.key);p?d.isSelected&&-1===f&&this.selectedNodeList.push(d):d.isSelected&&-1===f&&(this.selectedNodeList=[d]),d.isSelected||(this.selectedNodeList=this.selectedNodeList.filter(y=>y.key!==d.key))}setHalfCheckedNodeList(d){const p=this.getIndexOfArray(this.halfCheckedNodeList,d.key);d.isHalfChecked&&-1===p?this.halfCheckedNodeList.push(d):!d.isHalfChecked&&p>-1&&(this.halfCheckedNodeList=this.halfCheckedNodeList.filter(f=>d.key!==f.key))}setCheckedNodeList(d){const p=this.getIndexOfArray(this.checkedNodeList,d.key);d.isChecked&&-1===p?this.checkedNodeList.push(d):!d.isChecked&&p>-1&&(this.checkedNodeList=this.checkedNodeList.filter(f=>d.key!==f.key))}conductNodeState(d="check"){let p=[];switch(d){case"select":p=this.selectedNodeList;break;case"expand":p=this.expandedNodeList;break;case"match":p=this.matchedNodeList;break;case"check":p=this.checkedNodeList;const f=y=>{const T=y.getParentNode();return!!T&&(this.checkedNodeList.findIndex(x=>x.key===T.key)>-1||f(T))};this.isCheckStrictly||(p=this.checkedNodeList.filter(y=>!f(y)));break;case"halfCheck":this.isCheckStrictly||(p=this.halfCheckedNodeList)}return p}setExpandedNodeList(d){if(d.isLeaf)return;const p=this.getIndexOfArray(this.expandedNodeList,d.key);d.isExpanded&&-1===p?this.expandedNodeList.push(d):!d.isExpanded&&p>-1&&this.expandedNodeList.splice(p,1)}setMatchedNodeList(d){const p=this.getIndexOfArray(this.matchedNodeList,d.key);d.isMatched&&-1===p?this.matchedNodeList.push(d):!d.isMatched&&p>-1&&this.matchedNodeList.splice(p,1)}refreshCheckState(d=!1){d||this.checkedNodeList.forEach(p=>{this.conduct(p,d)})}conduct(d,p=!1){const f=d.isChecked;d&&!p&&(this.conductUp(d),this.conductDown(d,f))}conductUp(d){const p=d.getParentNode();p&&(i(p)||(p.children.every(f=>i(f)||!f.isHalfChecked&&f.isChecked)?(p.isChecked=!0,p.isHalfChecked=!1):p.children.some(f=>f.isHalfChecked||f.isChecked)?(p.isChecked=!1,p.isHalfChecked=!0):(p.isChecked=!1,p.isHalfChecked=!1)),this.setCheckedNodeList(p),this.setHalfCheckedNodeList(p),this.conductUp(p))}conductDown(d,p){i(d)||(d.isChecked=p,d.isHalfChecked=!1,this.setCheckedNodeList(d),this.setHalfCheckedNodeList(d),d.children.forEach(f=>{this.conductDown(f,p)}))}afterRemove(d){const p=f=>{this.selectedNodeList=this.selectedNodeList.filter(y=>y.key!==f.key),this.expandedNodeList=this.expandedNodeList.filter(y=>y.key!==f.key),this.checkedNodeList=this.checkedNodeList.filter(y=>y.key!==f.key),f.children&&f.children.forEach(y=>{p(y)})};d.forEach(f=>{p(f)}),this.refreshCheckState(this.isCheckStrictly)}refreshDragNode(d){0===d.children.length?this.conductUp(d):d.children.forEach(p=>{this.refreshDragNode(p)})}resetNodeLevel(d){const p=d.getParentNode();d.level=p?p.level+1:0;for(const f of d.children)this.resetNodeLevel(f)}calcDropPosition(d){const{clientY:p}=d,{top:f,bottom:y,height:T}=d.target.getBoundingClientRect(),x=Math.max(T*this.DRAG_SIDE_RANGE,this.DRAG_MIN_GAP);return p<=f+x?-1:p>=y-x?1:0}dropAndApply(d,p=-1){if(!d||p>1)return;const f=d.treeService,y=d.getParentNode(),T=this.selectedNode.getParentNode();switch(T?T.children=T.children.filter(x=>x.key!==this.selectedNode.key):this.rootNodes=this.rootNodes.filter(x=>x.key!==this.selectedNode.key),p){case 0:d.addChildren([this.selectedNode]),this.resetNodeLevel(d);break;case-1:case 1:const x=1===p?1:0;if(y){y.addChildren([this.selectedNode],y.children.indexOf(d)+x);const D=this.selectedNode.getParentNode();D&&this.resetNodeLevel(D)}else{const D=this.rootNodes.indexOf(d)+x;this.rootNodes.splice(D,0,this.selectedNode),this.rootNodes[D].parentNode=null,this.resetNodeLevel(this.rootNodes[D])}}this.rootNodes.forEach(x=>{x.treeService||(x.service=f),this.refreshDragNode(x)})}formatEvent(d,p,f){const y={eventName:d,node:p,event:f};switch(d){case"dragstart":case"dragenter":case"dragover":case"dragleave":case"drop":case"dragend":Object.assign(y,{dragNode:this.getSelectedNode()});break;case"click":case"dblclick":Object.assign(y,{selectedKeys:this.selectedNodeList}),Object.assign(y,{nodes:this.selectedNodeList}),Object.assign(y,{keys:this.selectedNodeList.map(x=>x.key)});break;case"check":const T=this.getCheckedNodeList();Object.assign(y,{checkedKeys:T}),Object.assign(y,{nodes:T}),Object.assign(y,{keys:T.map(x=>x.key)});break;case"search":Object.assign(y,{matchedKeys:this.getMatchedNodeList()}),Object.assign(y,{nodes:this.getMatchedNodeList()}),Object.assign(y,{keys:this.getMatchedNodeList().map(x=>x.key)});break;case"expand":Object.assign(y,{nodes:this.expandedNodeList}),Object.assign(y,{keys:this.expandedNodeList.map(x=>x.key)})}return y}getIndexOfArray(d,p){return d.findIndex(f=>f.key===p)}conductCheck(d,p){this.checkedNodeList=[],this.halfCheckedNodeList=[];const f=y=>{y.forEach(T=>{null===d?T.isChecked=!!T.origin.checked:l(T.key,d||[])?(T.isChecked=!0,T.isHalfChecked=!1):(T.isChecked=!1,T.isHalfChecked=!1),T.children.length>0&&f(T.children)})};f(this.rootNodes),this.refreshCheckState(p)}conductExpandedKeys(d=[]){const p=new Set(!0===d?[]:d);this.expandedNodeList=[];const f=y=>{y.forEach(T=>{T.setExpanded(!0===d||p.has(T.key)||!0===T.isExpanded),T.isExpanded&&this.setExpandedNodeList(T),T.children.length>0&&f(T.children)})};f(this.rootNodes)}conductSelectedKeys(d,p){this.selectedNodeList.forEach(y=>y.isSelected=!1),this.selectedNodeList=[];const f=y=>y.every(T=>{if(l(T.key,d)){if(T.isSelected=!0,this.setSelectedNodeList(T),!p)return!1}else T.isSelected=!1;return!(T.children.length>0)||f(T.children)});f(this.rootNodes)}expandNodeAllParentBySearch(d){const p=f=>{if(f&&(f.canHide=!1,f.setExpanded(!0),this.setExpandedNodeList(f),f.getParentNode()))return p(f.getParentNode())};p(d.getParentNode())}static#e=this.\u0275fac=function(p){return new(p||v)};static#t=this.\u0275prov=e.Yz7({token:v,factory:v.\u0275fac})}return v})();const M=new e.OlP("NzTreeHigherOrder");class h{constructor(g){this.nzTreeService=g}coerceTreeNodes(g){let d=[];return d=this.nzTreeService.isArrayOfNzTreeNode(g)?g.map(p=>(p.service=this.nzTreeService,p)):g.map(p=>new t(p,null,this.nzTreeService)),d}getTreeNodes(){return this.nzTreeService.rootNodes}getTreeNodeByKey(g){const d=[],p=f=>{d.push(f),f.getChildren().forEach(y=>{p(y)})};return this.getTreeNodes().forEach(f=>{p(f)}),d.find(f=>f.key===g)||null}getCheckedNodeList(){return this.nzTreeService.getCheckedNodeList()}getSelectedNodeList(){return this.nzTreeService.getSelectedNodeList()}getHalfCheckedNodeList(){return this.nzTreeService.getHalfCheckedNodeList()}getExpandedNodeList(){return this.nzTreeService.getExpandedNodeList()}getMatchedNodeList(){return this.nzTreeService.getMatchedNodeList()}}},27754:(nt,I,o)=>{"use strict";o.d(I,{D8:()=>U,DX:()=>M,GM:()=>q,HH:()=>g,He:()=>f,J8:()=>Ne,Ly:()=>xe,OY:()=>j,Rn:()=>P,Sm:()=>be,WX:()=>y,YM:()=>re,Zu:()=>Vt,cO:()=>u,de:()=>d,hq:()=>Wt,jJ:()=>O,kK:()=>h,lN:()=>Ie,p8:()=>te,pW:()=>A,qR:()=>K,qo:()=>E,rw:()=>T,sw:()=>p,tI:()=>H,te:()=>B,ui:()=>pe,wU:()=>v,wv:()=>F,xV:()=>ne,yF:()=>D,z6:()=>k,zT:()=>le});var e=o(65879),n=o(42495),t=o(1608),i=o(2664),l=o(7715),C=o(22096);function E(st){let He;return He=null==st?[]:Array.isArray(st)?st:[st],He}function u(st,He){if(!st||!He||st.length!==He.length)return!1;const et=st.length;for(let It=0;It"u"||null===st}function v(st,He){if(st===He)return!0;if("object"!=typeof st||!st||"object"!=typeof He||!He)return!1;const et=Object.keys(st),It=Object.keys(He);if(et.length!==It.length)return!1;const Ot=Object.prototype.hasOwnProperty.bind(He);for(let xt=0;xtf(He,st))}function O(st){st.stopPropagation(),st.preventDefault()}function A(st){if(!st.getClientRects().length)return{top:0,left:0};const He=st.getBoundingClientRect(),et=st.ownerDocument.defaultView;return{top:He.top+et.pageYOffset,left:He.left+et.pageXOffset}}function k(st){return st.type.startsWith("touch")}function F(st){return k(st)?st.touches[0]||st.changedTouches[0]:st}function K(st,He="@"){if("string"!=typeof st)return[];const et=function W(st){const He=Array.isArray(st)?st:[st];let et=He.join("").replace(/(\$|\^)/g,"\\$1");return He.length>1&&(et=`[${et}]`),new RegExp(`(\\s|^)(${et})[^\\s]*`,"g")}(He),It=st.match(et);return null!==It?It.map(Ot=>Ot.trim()):[]}function H(st){return!!st&&"function"==typeof st.then&&"function"==typeof st.catch}function j(st,He,et){return(et-st)/(He-st)*100}function te(st){const He=st.toString(),et=He.indexOf(".");return et>=0?He.length-et-1:0}function ne(st,He,et){return isNaN(st)||stet?et:st}function pe(st){return"number"==typeof st&&isFinite(st)}function re(st,He){return Math.round(st*Math.pow(10,He))/Math.pow(10,He)}function be(st,He=0){return st.reduce((et,It)=>et+It,He)}function le(st){st.scrollIntoViewIfNeeded?st.scrollIntoViewIfNeeded(!1):st.scrollIntoView&&st.scrollIntoView(!1)}const ce=["direction","boxSizing","width","height","overflowX","overflowY","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","borderStyle","paddingTop","paddingRight","paddingBottom","paddingLeft","fontStyle","fontVariant","fontWeight","fontStretch","fontSize","fontSizeAdjust","lineHeight","fontFamily","textAlign","textTransform","textIndent","textDecoration","letterSpacing","wordSpacing","tabSize","MozTabSize"],Q=typeof window<"u",ie=Q&&null!=window.mozInnerScreenX,ae=st=>parseInt(st,10);function xe(st,He,et){if(!Q)throw new Error("textarea-caret-position#getCaretCoordinates should only be called in a browser");const It=et&&et.debug||!1;if(It){const ge=document.querySelector("#input-textarea-caret-position-mirror-div");ge&&ge.parentNode.removeChild(ge)}const Ot=document.createElement("div");Ot.id="input-textarea-caret-position-mirror-div",document.body.appendChild(Ot);const xt=Ot.style,Qe=window.getComputedStyle?window.getComputedStyle(st):st.currentStyle,ke="INPUT"===st.nodeName;xt.whiteSpace="pre-wrap",ke||(xt.wordWrap="break-word"),xt.position="absolute",It||(xt.visibility="hidden"),ce.forEach(ge=>{ke&&"lineHeight"===ge?xt.lineHeight=Qe.height:xt[ge]=Qe[ge]}),ie?st.scrollHeight>ae(Qe.height)&&(xt.overflowY="scroll"):xt.overflow="hidden",Ot.textContent=st.value.substring(0,He),ke&&(Ot.textContent=Ot.textContent.replace(/\s/g,"\xa0"));const fe=document.createElement("span");fe.textContent=st.value.substring(He)||".",Ot.appendChild(fe);const qe={top:fe.offsetTop+ae(Qe.borderTopWidth),left:fe.offsetLeft+ae(Qe.borderLeftWidth),height:ae(Qe.lineHeight)};return It?(fe.style.backgroundColor="#eee",function Me(st,He){const et=getComputedStyle(st).getPropertyValue("font-size"),It=document.querySelector("#DEBUG")||document.createElement("div");document.body.appendChild(It),It.id="DEBUG",It.style.position="absolute",It.style.backgroundColor="red",It.style.height=et,It.style.width="1px",It.style.top=`${st.getBoundingClientRect().top-st.scrollTop+window.pageYOffset+He.top}px`,It.style.left=`${st.getBoundingClientRect().left-st.scrollLeft+window.pageXOffset+He.left}px`}(st,qe)):document.body.removeChild(Ot),qe}function q(st){return st?Object.keys(st).map(He=>{const et=st[He];return`${He}:${"string"==typeof et?et:`${et}px`}`}).join(";"):""}let mt,we;const de={position:"absolute",top:"-9999px",width:"50px",height:"50px"};function U(st="vertical",He="ant"){if(typeof document>"u"||typeof window>"u")return 0;const et="vertical"===st;if(et&&mt)return mt;if(!et&&we)return we;const It=document.createElement("div");Object.keys(de).forEach(xt=>{It.style[xt]=de[xt]}),It.className=`${He}-hide-scrollbar scroll-div-append-to-body`,et?It.style.overflowY="scroll":It.style.overflowX="scroll",document.body.appendChild(It);let Ot=0;return et?(Ot=It.offsetWidth-It.clientWidth,mt=Ot):(Ot=It.offsetHeight-It.clientHeight,we=Ot),document.body.removeChild(It),Ot}function B(st,He){return st&&st"STYLE"===It.tagName&&It.getAttribute(Dt(He))===st)}(He,et);if(Ot)return et.cspNonce&&Ot.nonce!==et.cspNonce&&(Ot.nonce=et.cspNonce),Ot.innerHTML!==st&&(Ot.innerHTML=st),Ot;const xt=Ut(st,et);return xt?.setAttribute(Dt(et),He),xt}function Vt(st,He,et){return{[`${st}-status-success`]:"success"===He,[`${st}-status-warning`]:"warning"===He,[`${st}-status-error`]:"error"===He,[`${st}-status-validating`]:"validating"===He,[`${st}-has-feedback`]:et}}},41958:(nt,I,o)=>{"use strict";o.d(I,{dQ:()=>E,vG:()=>u});var e=o(62831),n=o(65879);class t{get waveAttributeName(){return this.insertExtraNode?"ant-click-animating":"ant-click-animating-without-extra-node"}constructor(M,h,v,g,d){this.triggerElement=M,this.ngZone=h,this.insertExtraNode=v,this.platformId=g,this.cspNonce=d,this.waveTransitionDuration=400,this.styleForPseudo=null,this.extraNode=null,this.lastTime=0,this.onClick=p=>{!this.triggerElement||!this.triggerElement.getAttribute||this.triggerElement.getAttribute("disabled")||"INPUT"===p.target.tagName||this.triggerElement.className.indexOf("disabled")>=0||this.fadeOutWave()},this.platform=new e.t4(this.platformId),this.clickHandler=this.onClick.bind(this),this.bindTriggerEvent()}bindTriggerEvent(){this.platform.isBrowser&&this.ngZone.runOutsideAngular(()=>{this.removeTriggerEvent(),this.triggerElement&&this.triggerElement.addEventListener("click",this.clickHandler,!0)})}removeTriggerEvent(){this.triggerElement&&this.triggerElement.removeEventListener("click",this.clickHandler,!0)}removeStyleAndExtraNode(){this.styleForPseudo&&document.body.contains(this.styleForPseudo)&&(document.body.removeChild(this.styleForPseudo),this.styleForPseudo=null),this.insertExtraNode&&this.triggerElement.contains(this.extraNode)&&this.triggerElement.removeChild(this.extraNode)}destroy(){this.removeTriggerEvent(),this.removeStyleAndExtraNode()}fadeOutWave(){const M=this.triggerElement,h=this.getWaveColor(M);M.setAttribute(this.waveAttributeName,"true"),!(Date.now(){M.removeAttribute(this.waveAttributeName),this.removeStyleAndExtraNode()},this.waveTransitionDuration))}isValidColor(M){return!!M&&"#ffffff"!==M&&"rgb(255, 255, 255)"!==M&&this.isNotGrey(M)&&!/rgba\(\d*, \d*, \d*, 0\)/.test(M)&&"transparent"!==M}isNotGrey(M){const h=M.match(/rgba?\((\d*), (\d*), (\d*)(, [\.\d]*)?\)/);return!(h&&h[1]&&h[2]&&h[3]&&h[1]===h[2]&&h[2]===h[3])}getWaveColor(M){const h=getComputedStyle(M);return h.getPropertyValue("border-top-color")||h.getPropertyValue("border-color")||h.getPropertyValue("background-color")}runTimeoutOutsideZone(M,h){this.ngZone.runOutsideAngular(()=>setTimeout(M,h))}}const i={disabled:!1},l=new n.OlP("nz-wave-global-options");function C(z){return(0,n.MR2)([{provide:l,useValue:z}])}let E=(()=>{class z{get disabled(){return this.waveDisabled}get rendererRef(){return this.waveRenderer}constructor(h,v,g,d,p,f){this.ngZone=h,this.elementRef=v,this.config=g,this.animationType=d,this.platformId=p,this.cspNonce=f,this.nzWaveExtraNode=!1,this.waveDisabled=!1,this.waveDisabled=this.isConfigDisabled()}isConfigDisabled(){let h=!1;return this.config&&"boolean"==typeof this.config.disabled&&(h=this.config.disabled),"NoopAnimations"===this.animationType&&(h=!0),h}ngOnDestroy(){this.waveRenderer&&this.waveRenderer.destroy()}ngOnInit(){this.renderWaveIfEnabled()}renderWaveIfEnabled(){!this.waveDisabled&&this.elementRef.nativeElement&&(this.waveRenderer=new t(this.elementRef.nativeElement,this.ngZone,this.nzWaveExtraNode,this.platformId,this.cspNonce))}disable(){this.waveDisabled=!0,this.waveRenderer&&(this.waveRenderer.removeTriggerEvent(),this.waveRenderer.removeStyleAndExtraNode())}enable(){this.waveDisabled=this.isConfigDisabled()||!1,this.waveRenderer&&this.waveRenderer.bindTriggerEvent()}static#e=this.\u0275fac=function(v){return new(v||z)(n.Y36(n.R0b),n.Y36(n.SBq),n.Y36(l,8),n.Y36(n.QbO,8),n.Y36(n.Lbi),n.Y36(n.Ojb,8))};static#t=this.\u0275dir=n.lG2({type:z,selectors:[["","nz-wave",""],["button","nz-button","",3,"nzType","link",3,"nzType","text"]],inputs:{nzWaveExtraNode:"nzWaveExtraNode"},exportAs:["nzWave"]})}return z})(),u=(()=>{class z{static#e=this.\u0275fac=function(v){return new(v||z)};static#t=this.\u0275mod=n.oAB({type:z});static#n=this.\u0275inj=n.cJS({providers:[C(i)],imports:[e.ud]})}return z})()},52682:(nt,I,o)=>{"use strict";o.d(I,{Hb:()=>Os,Mq:()=>Ai,Xv:()=>Ro,mr:()=>lo,uw:()=>no,wS:()=>Fi});var e=o(49388),n=o(33651),t=o(96814),i=o(65879),l=o(60095),C=o(42840),E=o(50883),u=o(331),z=o(8324),M=o(85448),h=o(90551),v=o(60047),g=o(3945),d=o(27754),p=o(12131),f=o(70855),y=o(41958),T=o(97582),x=o(36028),D=o(97328),_=o(78645),P=o(63019),O=o(92438),A=o(22096),k=o(59773),F=o(93997),W=o(42460),K=o(37398),_e=o(64194),Y=o(83064),G=o(99087),H=o(28802),j=o(62831);function te(rt,Gt){1&rt&&i.GkF(0)}function ne(rt,Gt){if(1&rt&&(i.ynx(0),i.YNc(1,te,1,0,"ng-container",4),i.BQk()),2&rt){const Z=i.oxw(2);i.xp6(1),i.Q6J("ngTemplateOutlet",Z.extraFooter)}}function pe(rt,Gt){if(1&rt&&(i.ynx(0),i._UZ(1,"span",5),i.BQk()),2&rt){const Z=i.oxw(2);i.xp6(1),i.Q6J("innerHTML",Z.extraFooter,i.oJD)}}function re(rt,Gt){if(1&rt&&(i.TgZ(0,"div"),i.ynx(1,2),i.YNc(2,ne,2,1,"ng-container",3),i.YNc(3,pe,2,1,"ng-container",3),i.BQk(),i.qZA()),2&rt){const Z=i.oxw();i.Gre("",Z.prefixCls,"-footer-extra"),i.xp6(1),i.Q6J("ngSwitch",!0),i.xp6(1),i.Q6J("ngSwitchCase",Z.isTemplateRef(Z.extraFooter)),i.xp6(1),i.Q6J("ngSwitchCase",Z.isNonEmptyString(Z.extraFooter))}}function be(rt,Gt){if(1&rt){const Z=i.EpF();i.TgZ(0,"a",6),i.NdJ("click",function(){i.CHM(Z);const vt=i.oxw();return i.KtG(vt.isTodayDisabled?null:vt.onClickToday())}),i._uU(1),i.qZA()}if(2&rt){const Z=i.oxw();i.MT6("",Z.prefixCls,"-today-btn ",Z.isTodayDisabled?Z.prefixCls+"-today-btn-disabled":"",""),i.s9C("title",Z.todayTitle),i.xp6(1),i.hij(" ",Z.locale.today," ")}}function le(rt,Gt){1&rt&&i.GkF(0)}function ce(rt,Gt){if(1&rt){const Z=i.EpF();i.TgZ(0,"li")(1,"a",7),i.NdJ("click",function(){i.CHM(Z);const vt=i.oxw(2);return i.KtG(vt.isTodayDisabled?null:vt.onClickToday())}),i._uU(2),i.qZA()()}if(2&rt){const Z=i.oxw(2);i.Gre("",Z.prefixCls,"-now"),i.xp6(1),i.Gre("",Z.prefixCls,"-now-btn"),i.xp6(1),i.hij(" ",Z.locale.now," ")}}function Q(rt,Gt){if(1&rt){const Z=i.EpF();i.TgZ(0,"li")(1,"button",8),i.NdJ("click",function(){i.CHM(Z);const vt=i.oxw(2);return i.KtG(vt.okDisabled?null:vt.clickOk.emit())}),i._uU(2),i.qZA()()}if(2&rt){const Z=i.oxw(2);i.Gre("",Z.prefixCls,"-ok"),i.xp6(1),i.Q6J("disabled",Z.okDisabled),i.xp6(1),i.hij(" ",Z.locale.ok," ")}}function ie(rt,Gt){if(1&rt&&(i.TgZ(0,"ul"),i.YNc(1,le,1,0,"ng-container",4),i.YNc(2,ce,3,7,"li",0),i.YNc(3,Q,3,5,"li",0),i.qZA()),2&rt){const Z=i.oxw();i.Gre("",Z.prefixCls,"-ranges"),i.xp6(1),i.Q6J("ngTemplateOutlet",Z.rangeQuickSelector),i.xp6(1),i.Q6J("ngIf",Z.showNow),i.xp6(1),i.Q6J("ngIf",Z.hasTimePicker)}}function ae(rt,Gt){if(1&rt){const Z=i.EpF();i.ynx(0),i.TgZ(1,"button",6),i.NdJ("click",function(){const $t=i.CHM(Z).$implicit;return i.KtG($t.onClick())}),i._uU(2),i.qZA(),i.BQk()}if(2&rt){const Z=Gt.$implicit;i.xp6(1),i.Tol(Z.className),i.s9C("title",Z.title||null),i.xp6(1),i.hij(" ",Z.label," ")}}function xe(rt,Gt){1&rt&&i._UZ(0,"th",6)}function Me(rt,Gt){if(1&rt&&(i.TgZ(0,"th",7),i._uU(1),i.qZA()),2&rt){const Z=Gt.$implicit;i.s9C("title",Z.title),i.xp6(1),i.hij(" ",Z.content," ")}}function Ye(rt,Gt){if(1&rt&&(i.TgZ(0,"thead")(1,"tr",3),i.YNc(2,xe,1,0,"th",4),i.YNc(3,Me,2,2,"th",5),i.qZA()()),2&rt){const Z=i.oxw();i.xp6(2),i.Q6J("ngIf",Z.showWeek),i.xp6(1),i.Q6J("ngForOf",Z.headRow)}}function q(rt,Gt){if(1&rt&&(i.TgZ(0,"td",11),i._uU(1),i.qZA()),2&rt){const Z=i.oxw().$implicit,dt=i.oxw();i.Gre("",dt.prefixCls,"-cell-week"),i.xp6(1),i.hij(" ",Z.weekNum," ")}}function ye(rt,Gt){1&rt&&i.GkF(0)}const ee=function(rt){return{$implicit:rt}};function Be(rt,Gt){if(1&rt&&(i.ynx(0),i.YNc(1,ye,1,0,"ng-container",16),i.BQk()),2&rt){const Z=i.oxw(2).$implicit;i.xp6(1),i.Q6J("ngTemplateOutlet",Z.cellRender)("ngTemplateOutletContext",i.VKq(2,ee,Z.value))}}function Re(rt,Gt){if(1&rt&&(i.ynx(0),i._UZ(1,"span",17),i.BQk()),2&rt){const Z=i.oxw(2).$implicit;i.xp6(1),i.Q6J("innerHTML",Z.cellRender,i.oJD)}}function ct(rt,Gt){if(1&rt&&(i.ynx(0),i.TgZ(1,"div"),i._uU(2),i.qZA(),i.BQk()),2&rt){const Z=i.oxw(2).$implicit,dt=i.oxw(2);i.xp6(1),i.Gre("",dt.prefixCls,"-cell-inner"),i.uIk("aria-selected",Z.isSelected)("aria-disabled",Z.isDisabled),i.xp6(1),i.hij(" ",Z.content," ")}}function Ae(rt,Gt){if(1&rt&&(i.ynx(0)(1,13),i.YNc(2,Be,2,4,"ng-container",14),i.YNc(3,Re,2,1,"ng-container",14),i.YNc(4,ct,3,6,"ng-container",15),i.BQk()()),2&rt){const Z=i.oxw().$implicit,dt=i.oxw(2);i.xp6(1),i.Q6J("ngSwitch",!0),i.xp6(1),i.Q6J("ngSwitchCase",dt.isTemplateRef(Z.cellRender)),i.xp6(1),i.Q6J("ngSwitchCase",dt.isNonEmptyString(Z.cellRender))}}function Mt(rt,Gt){1&rt&&i.GkF(0)}function je(rt,Gt){if(1&rt&&(i.ynx(0),i.YNc(1,Mt,1,0,"ng-container",16),i.BQk()),2&rt){const Z=i.oxw(2).$implicit;i.xp6(1),i.Q6J("ngTemplateOutlet",Z.fullCellRender)("ngTemplateOutletContext",i.VKq(2,ee,Z.value))}}function ot(rt,Gt){1&rt&&i.GkF(0)}function mt(rt,Gt){if(1&rt&&(i.TgZ(0,"div"),i._uU(1),i.qZA(),i.TgZ(2,"div"),i.YNc(3,ot,1,0,"ng-container",16),i.qZA()),2&rt){const Z=i.oxw(2).$implicit,dt=i.oxw(2);i.Gre("",dt.prefixCls,"-date-value"),i.xp6(1),i.Oqu(Z.content),i.xp6(1),i.Gre("",dt.prefixCls,"-date-content"),i.xp6(1),i.Q6J("ngTemplateOutlet",Z.cellRender)("ngTemplateOutletContext",i.VKq(9,ee,Z.value))}}function we(rt,Gt){if(1&rt&&(i.ynx(0),i.TgZ(1,"div"),i.YNc(2,je,2,4,"ng-container",18),i.YNc(3,mt,4,11,"ng-template",null,19,i.W1O),i.qZA(),i.BQk()),2&rt){const Z=i.MAs(4),dt=i.oxw().$implicit,vt=i.oxw(2);i.xp6(1),i.Gre("",vt.prefixCls,"-date ant-picker-cell-inner"),i.ekj("ant-picker-calendar-date-today",dt.isToday),i.xp6(1),i.Q6J("ngIf",dt.fullCellRender)("ngIfElse",Z)}}function de(rt,Gt){if(1&rt){const Z=i.EpF();i.TgZ(0,"td",12),i.NdJ("click",function(){const $t=i.CHM(Z).$implicit;return i.KtG($t.isDisabled?null:$t.onClick())})("mouseenter",function(){const $t=i.CHM(Z).$implicit;return i.KtG($t.onMouseEnter())}),i.ynx(1,13),i.YNc(2,Ae,5,3,"ng-container",14),i.YNc(3,we,5,7,"ng-container",14),i.BQk(),i.qZA()}if(2&rt){const Z=Gt.$implicit,dt=i.oxw(2);i.s9C("title",Z.title),i.Q6J("ngClass",Z.classMap),i.xp6(1),i.Q6J("ngSwitch",dt.prefixCls),i.xp6(1),i.Q6J("ngSwitchCase","ant-picker"),i.xp6(1),i.Q6J("ngSwitchCase","ant-picker-calendar")}}function U(rt,Gt){if(1&rt&&(i.TgZ(0,"tr",8),i.YNc(1,q,2,4,"td",9),i.YNc(2,de,4,5,"td",10),i.qZA()),2&rt){const Z=Gt.$implicit,dt=i.oxw();i.Q6J("ngClass",Z.classMap),i.xp6(1),i.Q6J("ngIf",Z.weekNum),i.xp6(1),i.Q6J("ngForOf",Z.dateCells)("ngForTrackBy",dt.trackByBodyColumn)}}function B(rt,Gt){if(1&rt){const Z=i.EpF();i.ynx(0),i.TgZ(1,"button",6),i.NdJ("click",function(){const $t=i.CHM(Z).$implicit;return i.KtG($t.onClick())}),i._uU(2),i.qZA(),i.BQk()}if(2&rt){const Z=Gt.$implicit;i.xp6(1),i.Tol(Z.className),i.s9C("title",Z.title||null),i.xp6(1),i.hij(" ",Z.label," ")}}function Ee(rt,Gt){1&rt&&i._UZ(0,"th",6)}function Ie(rt,Gt){if(1&rt&&(i.TgZ(0,"th",7),i._uU(1),i.qZA()),2&rt){const Z=Gt.$implicit;i.s9C("title",Z.title),i.xp6(1),i.hij(" ",Z.content," ")}}function Ne(rt,Gt){if(1&rt&&(i.TgZ(0,"thead")(1,"tr",3),i.YNc(2,Ee,1,0,"th",4),i.YNc(3,Ie,2,2,"th",5),i.qZA()()),2&rt){const Z=i.oxw();i.xp6(2),i.Q6J("ngIf",Z.showWeek),i.xp6(1),i.Q6J("ngForOf",Z.headRow)}}function pt(rt,Gt){if(1&rt&&(i.TgZ(0,"td",11),i._uU(1),i.qZA()),2&rt){const Z=i.oxw().$implicit,dt=i.oxw();i.Gre("",dt.prefixCls,"-cell-week"),i.xp6(1),i.hij(" ",Z.weekNum," ")}}function Dt(rt,Gt){1&rt&&i.GkF(0)}function Lt(rt,Gt){if(1&rt&&(i.ynx(0),i.YNc(1,Dt,1,0,"ng-container",16),i.BQk()),2&rt){const Z=i.oxw(2).$implicit;i.xp6(1),i.Q6J("ngTemplateOutlet",Z.cellRender)("ngTemplateOutletContext",i.VKq(2,ee,Z.value))}}function Ut(rt,Gt){if(1&rt&&(i.ynx(0),i._UZ(1,"span",17),i.BQk()),2&rt){const Z=i.oxw(2).$implicit;i.xp6(1),i.Q6J("innerHTML",Z.cellRender,i.oJD)}}function qt(rt,Gt){if(1&rt&&(i.ynx(0),i.TgZ(1,"div"),i._uU(2),i.qZA(),i.BQk()),2&rt){const Z=i.oxw(2).$implicit,dt=i.oxw(2);i.xp6(1),i.Gre("",dt.prefixCls,"-cell-inner"),i.uIk("aria-selected",Z.isSelected)("aria-disabled",Z.isDisabled),i.xp6(1),i.hij(" ",Z.content," ")}}function en(rt,Gt){if(1&rt&&(i.ynx(0)(1,13),i.YNc(2,Lt,2,4,"ng-container",14),i.YNc(3,Ut,2,1,"ng-container",14),i.YNc(4,qt,3,6,"ng-container",15),i.BQk()()),2&rt){const Z=i.oxw().$implicit,dt=i.oxw(2);i.xp6(1),i.Q6J("ngSwitch",!0),i.xp6(1),i.Q6J("ngSwitchCase",dt.isTemplateRef(Z.cellRender)),i.xp6(1),i.Q6J("ngSwitchCase",dt.isNonEmptyString(Z.cellRender))}}function cn(rt,Gt){1&rt&&i.GkF(0)}function Wt(rt,Gt){if(1&rt&&(i.ynx(0),i.YNc(1,cn,1,0,"ng-container",16),i.BQk()),2&rt){const Z=i.oxw(2).$implicit;i.xp6(1),i.Q6J("ngTemplateOutlet",Z.fullCellRender)("ngTemplateOutletContext",i.VKq(2,ee,Z.value))}}function Vt(rt,Gt){1&rt&&i.GkF(0)}function st(rt,Gt){if(1&rt&&(i.TgZ(0,"div"),i._uU(1),i.qZA(),i.TgZ(2,"div"),i.YNc(3,Vt,1,0,"ng-container",16),i.qZA()),2&rt){const Z=i.oxw(2).$implicit,dt=i.oxw(2);i.Gre("",dt.prefixCls,"-date-value"),i.xp6(1),i.Oqu(Z.content),i.xp6(1),i.Gre("",dt.prefixCls,"-date-content"),i.xp6(1),i.Q6J("ngTemplateOutlet",Z.cellRender)("ngTemplateOutletContext",i.VKq(9,ee,Z.value))}}function He(rt,Gt){if(1&rt&&(i.ynx(0),i.TgZ(1,"div"),i.YNc(2,Wt,2,4,"ng-container",18),i.YNc(3,st,4,11,"ng-template",null,19,i.W1O),i.qZA(),i.BQk()),2&rt){const Z=i.MAs(4),dt=i.oxw().$implicit,vt=i.oxw(2);i.xp6(1),i.Gre("",vt.prefixCls,"-date ant-picker-cell-inner"),i.ekj("ant-picker-calendar-date-today",dt.isToday),i.xp6(1),i.Q6J("ngIf",dt.fullCellRender)("ngIfElse",Z)}}function et(rt,Gt){if(1&rt){const Z=i.EpF();i.TgZ(0,"td",12),i.NdJ("click",function(){const $t=i.CHM(Z).$implicit;return i.KtG($t.isDisabled?null:$t.onClick())})("mouseenter",function(){const $t=i.CHM(Z).$implicit;return i.KtG($t.onMouseEnter())}),i.ynx(1,13),i.YNc(2,en,5,3,"ng-container",14),i.YNc(3,He,5,7,"ng-container",14),i.BQk(),i.qZA()}if(2&rt){const Z=Gt.$implicit,dt=i.oxw(2);i.s9C("title",Z.title),i.Q6J("ngClass",Z.classMap),i.xp6(1),i.Q6J("ngSwitch",dt.prefixCls),i.xp6(1),i.Q6J("ngSwitchCase","ant-picker"),i.xp6(1),i.Q6J("ngSwitchCase","ant-picker-calendar")}}function It(rt,Gt){if(1&rt&&(i.TgZ(0,"tr",8),i.YNc(1,pt,2,4,"td",9),i.YNc(2,et,4,5,"td",10),i.qZA()),2&rt){const Z=Gt.$implicit,dt=i.oxw();i.Q6J("ngClass",Z.classMap),i.xp6(1),i.Q6J("ngIf",Z.weekNum),i.xp6(1),i.Q6J("ngForOf",Z.dateCells)("ngForTrackBy",dt.trackByBodyColumn)}}function Ot(rt,Gt){if(1&rt){const Z=i.EpF();i.ynx(0),i.TgZ(1,"button",6),i.NdJ("click",function(){const $t=i.CHM(Z).$implicit;return i.KtG($t.onClick())}),i._uU(2),i.qZA(),i.BQk()}if(2&rt){const Z=Gt.$implicit;i.xp6(1),i.Tol(Z.className),i.s9C("title",Z.title||null),i.xp6(1),i.hij(" ",Z.label," ")}}function xt(rt,Gt){1&rt&&i._UZ(0,"th",6)}function Qe(rt,Gt){if(1&rt&&(i.TgZ(0,"th",7),i._uU(1),i.qZA()),2&rt){const Z=Gt.$implicit;i.s9C("title",Z.title),i.xp6(1),i.hij(" ",Z.content," ")}}function ke(rt,Gt){if(1&rt&&(i.TgZ(0,"thead")(1,"tr",3),i.YNc(2,xt,1,0,"th",4),i.YNc(3,Qe,2,2,"th",5),i.qZA()()),2&rt){const Z=i.oxw();i.xp6(2),i.Q6J("ngIf",Z.showWeek),i.xp6(1),i.Q6J("ngForOf",Z.headRow)}}function fe(rt,Gt){if(1&rt&&(i.TgZ(0,"td",11),i._uU(1),i.qZA()),2&rt){const Z=i.oxw().$implicit,dt=i.oxw();i.Gre("",dt.prefixCls,"-cell-week"),i.xp6(1),i.hij(" ",Z.weekNum," ")}}function qe(rt,Gt){1&rt&&i.GkF(0)}function ge(rt,Gt){if(1&rt&&(i.ynx(0),i.YNc(1,qe,1,0,"ng-container",16),i.BQk()),2&rt){const Z=i.oxw(2).$implicit;i.xp6(1),i.Q6J("ngTemplateOutlet",Z.cellRender)("ngTemplateOutletContext",i.VKq(2,ee,Z.value))}}function Ze(rt,Gt){if(1&rt&&(i.ynx(0),i._UZ(1,"span",17),i.BQk()),2&rt){const Z=i.oxw(2).$implicit;i.xp6(1),i.Q6J("innerHTML",Z.cellRender,i.oJD)}}function $e(rt,Gt){if(1&rt&&(i.ynx(0),i.TgZ(1,"div"),i._uU(2),i.qZA(),i.BQk()),2&rt){const Z=i.oxw(2).$implicit,dt=i.oxw(2);i.xp6(1),i.Gre("",dt.prefixCls,"-cell-inner"),i.uIk("aria-selected",Z.isSelected)("aria-disabled",Z.isDisabled),i.xp6(1),i.hij(" ",Z.content," ")}}function Ue(rt,Gt){if(1&rt&&(i.ynx(0)(1,13),i.YNc(2,ge,2,4,"ng-container",14),i.YNc(3,Ze,2,1,"ng-container",14),i.YNc(4,$e,3,6,"ng-container",15),i.BQk()()),2&rt){const Z=i.oxw().$implicit,dt=i.oxw(2);i.xp6(1),i.Q6J("ngSwitch",!0),i.xp6(1),i.Q6J("ngSwitchCase",dt.isTemplateRef(Z.cellRender)),i.xp6(1),i.Q6J("ngSwitchCase",dt.isNonEmptyString(Z.cellRender))}}function wt(rt,Gt){1&rt&&i.GkF(0)}function De(rt,Gt){if(1&rt&&(i.ynx(0),i.YNc(1,wt,1,0,"ng-container",16),i.BQk()),2&rt){const Z=i.oxw(2).$implicit;i.xp6(1),i.Q6J("ngTemplateOutlet",Z.fullCellRender)("ngTemplateOutletContext",i.VKq(2,ee,Z.value))}}function Pe(rt,Gt){1&rt&&i.GkF(0)}function Je(rt,Gt){if(1&rt&&(i.TgZ(0,"div"),i._uU(1),i.qZA(),i.TgZ(2,"div"),i.YNc(3,Pe,1,0,"ng-container",16),i.qZA()),2&rt){const Z=i.oxw(2).$implicit,dt=i.oxw(2);i.Gre("",dt.prefixCls,"-date-value"),i.xp6(1),i.Oqu(Z.content),i.xp6(1),i.Gre("",dt.prefixCls,"-date-content"),i.xp6(1),i.Q6J("ngTemplateOutlet",Z.cellRender)("ngTemplateOutletContext",i.VKq(9,ee,Z.value))}}function Ge(rt,Gt){if(1&rt&&(i.ynx(0),i.TgZ(1,"div"),i.YNc(2,De,2,4,"ng-container",18),i.YNc(3,Je,4,11,"ng-template",null,19,i.W1O),i.qZA(),i.BQk()),2&rt){const Z=i.MAs(4),dt=i.oxw().$implicit,vt=i.oxw(2);i.xp6(1),i.Gre("",vt.prefixCls,"-date ant-picker-cell-inner"),i.ekj("ant-picker-calendar-date-today",dt.isToday),i.xp6(1),i.Q6J("ngIf",dt.fullCellRender)("ngIfElse",Z)}}function Ke(rt,Gt){if(1&rt){const Z=i.EpF();i.TgZ(0,"td",12),i.NdJ("click",function(){const $t=i.CHM(Z).$implicit;return i.KtG($t.isDisabled?null:$t.onClick())})("mouseenter",function(){const $t=i.CHM(Z).$implicit;return i.KtG($t.onMouseEnter())}),i.ynx(1,13),i.YNc(2,Ue,5,3,"ng-container",14),i.YNc(3,Ge,5,7,"ng-container",14),i.BQk(),i.qZA()}if(2&rt){const Z=Gt.$implicit,dt=i.oxw(2);i.s9C("title",Z.title),i.Q6J("ngClass",Z.classMap),i.xp6(1),i.Q6J("ngSwitch",dt.prefixCls),i.xp6(1),i.Q6J("ngSwitchCase","ant-picker"),i.xp6(1),i.Q6J("ngSwitchCase","ant-picker-calendar")}}function ve(rt,Gt){if(1&rt&&(i.TgZ(0,"tr",8),i.YNc(1,fe,2,4,"td",9),i.YNc(2,Ke,4,5,"td",10),i.qZA()),2&rt){const Z=Gt.$implicit,dt=i.oxw();i.Q6J("ngClass",Z.classMap),i.xp6(1),i.Q6J("ngIf",Z.weekNum),i.xp6(1),i.Q6J("ngForOf",Z.dateCells)("ngForTrackBy",dt.trackByBodyColumn)}}function it(rt,Gt){if(1&rt){const Z=i.EpF();i.ynx(0),i.TgZ(1,"button",6),i.NdJ("click",function(){const $t=i.CHM(Z).$implicit;return i.KtG($t.onClick())}),i._uU(2),i.qZA(),i.BQk()}if(2&rt){const Z=Gt.$implicit;i.xp6(1),i.Tol(Z.className),i.s9C("title",Z.title||null),i.xp6(1),i.hij(" ",Z.label," ")}}function b(rt,Gt){1&rt&&i._UZ(0,"th",6)}function N(rt,Gt){if(1&rt&&(i.TgZ(0,"th",7),i._uU(1),i.qZA()),2&rt){const Z=Gt.$implicit;i.s9C("title",Z.title),i.xp6(1),i.hij(" ",Z.content," ")}}function S(rt,Gt){if(1&rt&&(i.TgZ(0,"thead")(1,"tr",3),i.YNc(2,b,1,0,"th",4),i.YNc(3,N,2,2,"th",5),i.qZA()()),2&rt){const Z=i.oxw();i.xp6(2),i.Q6J("ngIf",Z.showWeek),i.xp6(1),i.Q6J("ngForOf",Z.headRow)}}function $(rt,Gt){if(1&rt&&(i.TgZ(0,"td",11),i._uU(1),i.qZA()),2&rt){const Z=i.oxw().$implicit,dt=i.oxw();i.Gre("",dt.prefixCls,"-cell-week"),i.xp6(1),i.hij(" ",Z.weekNum," ")}}function R(rt,Gt){1&rt&&i.GkF(0)}function he(rt,Gt){if(1&rt&&(i.ynx(0),i.YNc(1,R,1,0,"ng-container",16),i.BQk()),2&rt){const Z=i.oxw(2).$implicit;i.xp6(1),i.Q6J("ngTemplateOutlet",Z.cellRender)("ngTemplateOutletContext",i.VKq(2,ee,Z.value))}}function ze(rt,Gt){if(1&rt&&(i.ynx(0),i._UZ(1,"span",17),i.BQk()),2&rt){const Z=i.oxw(2).$implicit;i.xp6(1),i.Q6J("innerHTML",Z.cellRender,i.oJD)}}function bt(rt,Gt){if(1&rt&&(i.ynx(0),i.TgZ(1,"div"),i._uU(2),i.qZA(),i.BQk()),2&rt){const Z=i.oxw(2).$implicit,dt=i.oxw(2);i.xp6(1),i.Gre("",dt.prefixCls,"-cell-inner"),i.uIk("aria-selected",Z.isSelected)("aria-disabled",Z.isDisabled),i.xp6(1),i.hij(" ",Z.content," ")}}function Ft(rt,Gt){if(1&rt&&(i.ynx(0)(1,13),i.YNc(2,he,2,4,"ng-container",14),i.YNc(3,ze,2,1,"ng-container",14),i.YNc(4,bt,3,6,"ng-container",15),i.BQk()()),2&rt){const Z=i.oxw().$implicit,dt=i.oxw(2);i.xp6(1),i.Q6J("ngSwitch",!0),i.xp6(1),i.Q6J("ngSwitchCase",dt.isTemplateRef(Z.cellRender)),i.xp6(1),i.Q6J("ngSwitchCase",dt.isNonEmptyString(Z.cellRender))}}function sn(rt,Gt){1&rt&&i.GkF(0)}function pn(rt,Gt){if(1&rt&&(i.ynx(0),i.YNc(1,sn,1,0,"ng-container",16),i.BQk()),2&rt){const Z=i.oxw(2).$implicit;i.xp6(1),i.Q6J("ngTemplateOutlet",Z.fullCellRender)("ngTemplateOutletContext",i.VKq(2,ee,Z.value))}}function vn(rt,Gt){1&rt&&i.GkF(0)}function Dn(rt,Gt){if(1&rt&&(i.TgZ(0,"div"),i._uU(1),i.qZA(),i.TgZ(2,"div"),i.YNc(3,vn,1,0,"ng-container",16),i.qZA()),2&rt){const Z=i.oxw(2).$implicit,dt=i.oxw(2);i.Gre("",dt.prefixCls,"-date-value"),i.xp6(1),i.Oqu(Z.content),i.xp6(1),i.Gre("",dt.prefixCls,"-date-content"),i.xp6(1),i.Q6J("ngTemplateOutlet",Z.cellRender)("ngTemplateOutletContext",i.VKq(9,ee,Z.value))}}function Mn(rt,Gt){if(1&rt&&(i.ynx(0),i.TgZ(1,"div"),i.YNc(2,pn,2,4,"ng-container",18),i.YNc(3,Dn,4,11,"ng-template",null,19,i.W1O),i.qZA(),i.BQk()),2&rt){const Z=i.MAs(4),dt=i.oxw().$implicit,vt=i.oxw(2);i.xp6(1),i.Gre("",vt.prefixCls,"-date ant-picker-cell-inner"),i.ekj("ant-picker-calendar-date-today",dt.isToday),i.xp6(1),i.Q6J("ngIf",dt.fullCellRender)("ngIfElse",Z)}}function En(rt,Gt){if(1&rt){const Z=i.EpF();i.TgZ(0,"td",12),i.NdJ("click",function(){const $t=i.CHM(Z).$implicit;return i.KtG($t.isDisabled?null:$t.onClick())})("mouseenter",function(){const $t=i.CHM(Z).$implicit;return i.KtG($t.onMouseEnter())}),i.ynx(1,13),i.YNc(2,Ft,5,3,"ng-container",14),i.YNc(3,Mn,5,7,"ng-container",14),i.BQk(),i.qZA()}if(2&rt){const Z=Gt.$implicit,dt=i.oxw(2);i.s9C("title",Z.title),i.Q6J("ngClass",Z.classMap),i.xp6(1),i.Q6J("ngSwitch",dt.prefixCls),i.xp6(1),i.Q6J("ngSwitchCase","ant-picker"),i.xp6(1),i.Q6J("ngSwitchCase","ant-picker-calendar")}}function bn(rt,Gt){if(1&rt&&(i.TgZ(0,"tr",8),i.YNc(1,$,2,4,"td",9),i.YNc(2,En,4,5,"td",10),i.qZA()),2&rt){const Z=Gt.$implicit,dt=i.oxw();i.Q6J("ngClass",Z.classMap),i.xp6(1),i.Q6J("ngIf",Z.weekNum),i.xp6(1),i.Q6J("ngForOf",Z.dateCells)("ngForTrackBy",dt.trackByBodyColumn)}}function Rn(rt,Gt){if(1&rt){const Z=i.EpF();i.ynx(0),i.TgZ(1,"decade-header",4),i.NdJ("valueChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.activeDate=vt)})("panelModeChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.panelModeChange.emit(vt))})("valueChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.headerChange.emit(vt))}),i.qZA(),i.TgZ(2,"div")(3,"decade-table",5),i.NdJ("valueChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.onChooseDecade(vt))}),i.qZA()(),i.BQk()}if(2&rt){const Z=i.oxw();i.xp6(1),i.Q6J("value",Z.activeDate)("locale",Z.locale)("showSuperPreBtn",Z.enablePrevNext("prev","decade"))("showSuperNextBtn",Z.enablePrevNext("next","decade"))("showNextBtn",!1)("showPreBtn",!1),i.xp6(1),i.Gre("",Z.prefixCls,"-body"),i.xp6(1),i.Q6J("activeDate",Z.activeDate)("value",Z.value)("locale",Z.locale)("disabledDate",Z.disabledDate)}}function qn(rt,Gt){if(1&rt){const Z=i.EpF();i.ynx(0),i.TgZ(1,"year-header",4),i.NdJ("valueChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.activeDate=vt)})("panelModeChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.panelModeChange.emit(vt))})("valueChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.headerChange.emit(vt))}),i.qZA(),i.TgZ(2,"div")(3,"year-table",6),i.NdJ("valueChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.onChooseYear(vt))})("cellHover",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.cellHover.emit(vt))}),i.qZA()(),i.BQk()}if(2&rt){const Z=i.oxw();i.xp6(1),i.Q6J("value",Z.activeDate)("locale",Z.locale)("showSuperPreBtn",Z.enablePrevNext("prev","year"))("showSuperNextBtn",Z.enablePrevNext("next","year"))("showNextBtn",!1)("showPreBtn",!1),i.xp6(1),i.Gre("",Z.prefixCls,"-body"),i.xp6(1),i.Q6J("activeDate",Z.activeDate)("value",Z.value)("locale",Z.locale)("disabledDate",Z.disabledDate)("selectedValue",Z.selectedValue)("hoverValue",Z.hoverValue)}}function si(rt,Gt){if(1&rt){const Z=i.EpF();i.ynx(0),i.TgZ(1,"month-header",4),i.NdJ("valueChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.activeDate=vt)})("panelModeChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.panelModeChange.emit(vt))})("valueChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.headerChange.emit(vt))}),i.qZA(),i.TgZ(2,"div")(3,"month-table",7),i.NdJ("valueChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.onChooseMonth(vt))})("cellHover",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.cellHover.emit(vt))}),i.qZA()(),i.BQk()}if(2&rt){const Z=i.oxw();i.xp6(1),i.Q6J("value",Z.activeDate)("locale",Z.locale)("showSuperPreBtn",Z.enablePrevNext("prev","month"))("showSuperNextBtn",Z.enablePrevNext("next","month"))("showNextBtn",!1)("showPreBtn",!1),i.xp6(1),i.Gre("",Z.prefixCls,"-body"),i.xp6(1),i.Q6J("value",Z.value)("activeDate",Z.activeDate)("locale",Z.locale)("disabledDate",Z.disabledDate)("selectedValue",Z.selectedValue)("hoverValue",Z.hoverValue)}}function Wn(rt,Gt){if(1&rt){const Z=i.EpF();i.ynx(0),i.TgZ(1,"date-header",8),i.NdJ("valueChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.activeDate=vt)})("panelModeChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.panelModeChange.emit(vt))})("valueChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.headerChange.emit(vt))}),i.qZA(),i.TgZ(2,"div")(3,"date-table",9),i.NdJ("valueChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.onSelectDate(vt))})("cellHover",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.cellHover.emit(vt))}),i.qZA()(),i.BQk()}if(2&rt){const Z=i.oxw();i.xp6(1),i.Q6J("value",Z.activeDate)("locale",Z.locale)("showSuperPreBtn",Z.enablePrevNext("prev","week"===Z.panelMode?"week":"date"))("showSuperNextBtn",Z.enablePrevNext("next","week"===Z.panelMode?"week":"date"))("showPreBtn",Z.enablePrevNext("prev","week"===Z.panelMode?"week":"date"))("showNextBtn",Z.enablePrevNext("next","week"===Z.panelMode?"week":"date")),i.xp6(1),i.Gre("",Z.prefixCls,"-body"),i.xp6(1),i.Q6J("locale",Z.locale)("showWeek",Z.showWeek)("value",Z.value)("activeDate",Z.activeDate)("disabledDate",Z.disabledDate)("cellRender",Z.dateRender)("selectedValue",Z.selectedValue)("hoverValue",Z.hoverValue)("canSelectWeek","week"===Z.panelMode)}}function ci(rt,Gt){if(1&rt){const Z=i.EpF();i.ynx(0),i.TgZ(1,"nz-time-picker-panel",10),i.NdJ("ngModelChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.onSelectTime(vt))}),i.qZA(),i.BQk()}if(2&rt){const Z=i.oxw();i.xp6(1),i.Q6J("nzInDatePicker",!0)("ngModel",null==Z.value?null:Z.value.nativeDate)("format",Z.timeOptions.nzFormat)("nzHourStep",Z.timeOptions.nzHourStep)("nzMinuteStep",Z.timeOptions.nzMinuteStep)("nzSecondStep",Z.timeOptions.nzSecondStep)("nzDisabledHours",Z.timeOptions.nzDisabledHours)("nzDisabledMinutes",Z.timeOptions.nzDisabledMinutes)("nzDisabledSeconds",Z.timeOptions.nzDisabledSeconds)("nzHideDisabledOptions",!!Z.timeOptions.nzHideDisabledOptions)("nzDefaultOpenValue",Z.timeOptions.nzDefaultOpenValue)("nzUse12Hours",!!Z.timeOptions.nzUse12Hours)("nzAddOn",Z.timeOptions.nzAddOn)}}function ri(rt,Gt){1&rt&&i.GkF(0)}const di=function(rt){return{partType:rt}};function hi(rt,Gt){if(1&rt&&(i.ynx(0),i.YNc(1,ri,1,0,"ng-container",7),i.BQk()),2&rt){const Z=i.oxw(2),dt=i.MAs(4);i.xp6(1),i.Q6J("ngTemplateOutlet",dt)("ngTemplateOutletContext",i.VKq(2,di,Z.datePickerService.activeInput))}}function fi(rt,Gt){1&rt&&i.GkF(0)}function zi(rt,Gt){1&rt&&i.GkF(0)}const Oi=function(){return{partType:"left"}},ei=function(){return{partType:"right"}};function po(rt,Gt){if(1&rt&&(i.YNc(0,fi,1,0,"ng-container",7),i.YNc(1,zi,1,0,"ng-container",7)),2&rt){i.oxw(2);const Z=i.MAs(4);i.Q6J("ngTemplateOutlet",Z)("ngTemplateOutletContext",i.DdM(4,Oi)),i.xp6(1),i.Q6J("ngTemplateOutlet",Z)("ngTemplateOutletContext",i.DdM(5,ei))}}function oo(rt,Gt){1&rt&&i.GkF(0)}function Wi(rt,Gt){if(1&rt&&(i.ynx(0),i.TgZ(1,"div"),i._UZ(2,"div"),i.TgZ(3,"div")(4,"div"),i.YNc(5,hi,2,4,"ng-container",0),i.YNc(6,po,2,6,"ng-template",null,5,i.W1O),i.qZA(),i.YNc(8,oo,1,0,"ng-container",6),i.qZA()(),i.BQk()),2&rt){const Z=i.MAs(7),dt=i.oxw(),vt=i.MAs(6);i.xp6(1),i.MT6("",dt.prefixCls,"-range-wrapper ",dt.prefixCls,"-date-range-wrapper"),i.xp6(1),i.Akn(dt.arrowPosition),i.Gre("",dt.prefixCls,"-range-arrow"),i.xp6(1),i.MT6("",dt.prefixCls,"-panel-container ",dt.showWeek?dt.prefixCls+"-week-number":"",""),i.xp6(1),i.Gre("",dt.prefixCls,"-panels"),i.xp6(1),i.Q6J("ngIf",dt.hasTimePicker)("ngIfElse",Z),i.xp6(3),i.Q6J("ngTemplateOutlet",vt)}}function Ri(rt,Gt){1&rt&&i.GkF(0)}function Li(rt,Gt){1&rt&&i.GkF(0)}function $i(rt,Gt){if(1&rt&&(i.TgZ(0,"div")(1,"div",8),i.YNc(2,Ri,1,0,"ng-container",6),i.YNc(3,Li,1,0,"ng-container",6),i.qZA()()),2&rt){const Z=i.oxw(),dt=i.MAs(4),vt=i.MAs(6);i.DjV("",Z.prefixCls,"-panel-container ",Z.showWeek?Z.prefixCls+"-week-number":""," ",Z.hasTimePicker?Z.prefixCls+"-time":""," ",Z.isRange?Z.prefixCls+"-range":"",""),i.xp6(1),i.Gre("",Z.prefixCls,"-panel"),i.ekj("ant-picker-panel-rtl","rtl"===Z.dir),i.xp6(1),i.Q6J("ngTemplateOutlet",dt),i.xp6(1),i.Q6J("ngTemplateOutlet",vt)}}function Qi(rt,Gt){if(1&rt){const Z=i.EpF();i.TgZ(0,"div")(1,"inner-popup",9),i.NdJ("panelModeChange",function(vt){const yn=i.CHM(Z).partType,In=i.oxw();return i.KtG(In.onPanelModeChange(vt,yn))})("cellHover",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.onCellHover(vt))})("selectDate",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.changeValueFromSelect(vt,!$t.showTime))})("selectTime",function(vt){const yn=i.CHM(Z).partType,In=i.oxw();return i.KtG(In.onSelectTime(vt,yn))})("headerChange",function(vt){const yn=i.CHM(Z).partType,In=i.oxw();return i.KtG(In.onActiveDateChange(vt,yn))}),i.qZA()()}if(2&rt){const Z=Gt.partType,dt=i.oxw();i.Gre("",dt.prefixCls,"-panel"),i.ekj("ant-picker-panel-rtl","rtl"===dt.dir),i.xp6(1),i.Q6J("showWeek",dt.showWeek)("endPanelMode",dt.getPanelMode(dt.endPanelMode,Z))("partType",Z)("locale",dt.locale)("showTimePicker",dt.hasTimePicker)("timeOptions",dt.getTimeOptions(Z))("panelMode",dt.getPanelMode(dt.panelMode,Z))("activeDate",dt.getActiveDate(Z))("value",dt.getValue(Z))("disabledDate",dt.disabledDate)("dateRender",dt.dateRender)("selectedValue",null==dt.datePickerService?null:dt.datePickerService.value)("hoverValue",dt.hoverValue)}}function Mo(rt,Gt){if(1&rt){const Z=i.EpF();i.TgZ(0,"calendar-footer",11),i.NdJ("clickOk",function(){i.CHM(Z);const vt=i.oxw(2);return i.KtG(vt.onClickOk())})("clickToday",function(vt){i.CHM(Z);const $t=i.oxw(2);return i.KtG($t.onClickToday(vt))}),i.qZA()}if(2&rt){const Z=i.oxw(2),dt=i.MAs(8);i.Q6J("locale",Z.locale)("isRange",Z.isRange)("showToday",Z.showToday)("showNow",Z.showNow)("hasTimePicker",Z.hasTimePicker)("okDisabled",!Z.isAllowed(null==Z.datePickerService?null:Z.datePickerService.value))("extraFooter",Z.extraFooter)("rangeQuickSelector",Z.ranges?dt:null)}}function wi(rt,Gt){if(1&rt&&i.YNc(0,Mo,1,8,"calendar-footer",10),2&rt){const Z=i.oxw();i.Q6J("ngIf",Z.hasFooter)}}function Xi(rt,Gt){if(1&rt){const Z=i.EpF();i.TgZ(0,"li",13),i.NdJ("click",function(){const $t=i.CHM(Z).$implicit,yn=i.oxw(2);return i.KtG(yn.onClickPresetRange(yn.ranges[$t]))})("mouseenter",function(){const $t=i.CHM(Z).$implicit,yn=i.oxw(2);return i.KtG(yn.onHoverPresetRange(yn.ranges[$t]))})("mouseleave",function(){i.CHM(Z);const vt=i.oxw(2);return i.KtG(vt.onPresetRangeMouseLeave())}),i.TgZ(1,"span",14),i._uU(2),i.qZA()()}if(2&rt){const Z=Gt.$implicit,dt=i.oxw(2);i.Gre("",dt.prefixCls,"-preset"),i.xp6(2),i.Oqu(Z)}}function Ei(rt,Gt){if(1&rt&&i.YNc(0,Xi,3,4,"li",12),2&rt){const Z=i.oxw();i.Q6J("ngForOf",Z.getObjectKeys(Z.ranges))}}const Hi=["separatorElement"],qi=["pickerInput"],Pi=["rangePickerInput"];function Ii(rt,Gt){1&rt&&i.GkF(0)}function ki(rt,Gt){if(1&rt){const Z=i.EpF();i.TgZ(0,"div")(1,"input",7,8),i.NdJ("ngModelChange",function(vt){i.CHM(Z);const $t=i.oxw(2);return i.KtG($t.inputValue=vt)})("focus",function(vt){i.CHM(Z);const $t=i.oxw(2);return i.KtG($t.onFocus(vt))})("focusout",function(vt){i.CHM(Z);const $t=i.oxw(2);return i.KtG($t.onFocusout(vt))})("ngModelChange",function(vt){i.CHM(Z);const $t=i.oxw(2);return i.KtG($t.onInputChange(vt))})("keyup.enter",function(vt){i.CHM(Z);const $t=i.oxw(2);return i.KtG($t.onKeyupEnter(vt))}),i.qZA(),i.YNc(3,Ii,1,0,"ng-container",9),i.qZA()}if(2&rt){const Z=i.oxw(2),dt=i.MAs(4);i.Gre("",Z.prefixCls,"-input"),i.xp6(1),i.ekj("ant-input-disabled",Z.nzDisabled),i.s9C("placeholder",Z.getPlaceholder()),i.Q6J("disabled",Z.nzDisabled)("readOnly",Z.nzInputReadOnly)("ngModel",Z.inputValue)("size",Z.inputSize),i.uIk("id",Z.nzId),i.xp6(2),i.Q6J("ngTemplateOutlet",dt)}}function oi(rt,Gt){1&rt&&i.GkF(0)}function Bn(rt,Gt){if(1&rt&&(i.ynx(0),i._uU(1),i.BQk()),2&rt){const Z=i.oxw(4);i.xp6(1),i.Oqu(Z.nzSeparator)}}function Et(rt,Gt){1&rt&&i._UZ(0,"span",14)}function un(rt,Gt){if(1&rt&&(i.ynx(0),i.YNc(1,Bn,2,1,"ng-container",0),i.YNc(2,Et,1,0,"ng-template",null,13,i.W1O),i.BQk()),2&rt){const Z=i.MAs(3),dt=i.oxw(3);i.xp6(1),i.Q6J("ngIf",dt.nzSeparator)("ngIfElse",Z)}}function lt(rt,Gt){1&rt&&i.GkF(0)}function Ct(rt,Gt){1&rt&&i.GkF(0)}function At(rt,Gt){if(1&rt&&(i.ynx(0),i.TgZ(1,"div"),i.YNc(2,oi,1,0,"ng-container",10),i.qZA(),i.TgZ(3,"div",null,11)(5,"span"),i.YNc(6,un,4,2,"ng-container",12),i.qZA()(),i.TgZ(7,"div"),i.YNc(8,lt,1,0,"ng-container",10),i.qZA(),i.YNc(9,Ct,1,0,"ng-container",9),i.BQk()),2&rt){const Z=i.oxw(2),dt=i.MAs(2),vt=i.MAs(4);i.xp6(1),i.Gre("",Z.prefixCls,"-input"),i.xp6(1),i.Q6J("ngTemplateOutlet",dt)("ngTemplateOutletContext",i.DdM(18,Oi)),i.xp6(1),i.Gre("",Z.prefixCls,"-range-separator"),i.xp6(2),i.Gre("",Z.prefixCls,"-separator"),i.xp6(1),i.Q6J("nzStringTemplateOutlet",Z.nzSeparator),i.xp6(1),i.Gre("",Z.prefixCls,"-input"),i.xp6(1),i.Q6J("ngTemplateOutlet",dt)("ngTemplateOutletContext",i.DdM(19,ei)),i.xp6(1),i.Q6J("ngTemplateOutlet",vt)}}function Qt(rt,Gt){if(1&rt&&(i.ynx(0),i.YNc(1,ki,4,12,"div",5),i.YNc(2,At,10,20,"ng-container",6),i.BQk()),2&rt){const Z=i.oxw();i.xp6(1),i.Q6J("ngIf",!Z.isRange),i.xp6(1),i.Q6J("ngIf",Z.isRange)}}function gn(rt,Gt){if(1&rt){const Z=i.EpF();i.TgZ(0,"input",15,16),i.NdJ("click",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.onClickInputBox(vt))})("focusout",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.onFocusout(vt))})("focus",function(vt){const yn=i.CHM(Z).partType,In=i.oxw();return i.KtG(In.onFocus(vt,yn))})("keyup.enter",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.onKeyupEnter(vt))})("ngModelChange",function(vt){const yn=i.CHM(Z).partType,In=i.oxw();return i.KtG(In.inputValue[In.datePickerService.getActiveIndex(yn)]=vt)})("ngModelChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.onInputChange(vt))}),i.qZA()}if(2&rt){const Z=Gt.partType,dt=i.oxw();i.s9C("placeholder",dt.getPlaceholder(Z)),i.Q6J("disabled",dt.nzDisabled)("readOnly",dt.nzInputReadOnly)("size",dt.inputSize)("ngModel",dt.inputValue[dt.datePickerService.getActiveIndex(Z)]),i.uIk("id",dt.nzId)}}function Ln(rt,Gt){if(1&rt){const Z=i.EpF();i.TgZ(0,"span",20),i.NdJ("click",function(vt){i.CHM(Z);const $t=i.oxw(2);return i.KtG($t.onClickClear(vt))}),i._UZ(1,"span",21),i.qZA()}if(2&rt){const Z=i.oxw(2);i.Gre("",Z.prefixCls,"-clear")}}function Sn(rt,Gt){if(1&rt&&(i.ynx(0),i._UZ(1,"span",22),i.BQk()),2&rt){const Z=Gt.$implicit;i.xp6(1),i.Q6J("nzType",Z)}}function gi(rt,Gt){if(1&rt&&i._UZ(0,"nz-form-item-feedback-icon",23),2&rt){const Z=i.oxw(2);i.Q6J("status",Z.status)}}function St(rt,Gt){if(1&rt&&(i._UZ(0,"div",17),i.YNc(1,Ln,2,3,"span",18),i.TgZ(2,"span"),i.YNc(3,Sn,2,1,"ng-container",12),i.YNc(4,gi,1,1,"nz-form-item-feedback-icon",19),i.qZA()),2&rt){const Z=i.oxw();i.Gre("",Z.prefixCls,"-active-bar"),i.Q6J("ngStyle",Z.activeBarStyle),i.xp6(1),i.Q6J("ngIf",Z.showClear()),i.xp6(1),i.Gre("",Z.prefixCls,"-suffix"),i.xp6(1),i.Q6J("nzStringTemplateOutlet",Z.nzSuffixIcon),i.xp6(1),i.Q6J("ngIf",Z.hasFeedback&&!!Z.status)}}function gt(rt,Gt){if(1&rt){const Z=i.EpF();i.TgZ(0,"div",17)(1,"date-range-popup",24),i.NdJ("panelModeChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.onPanelModeChange(vt))})("calendarChange",function(vt){i.CHM(Z);const $t=i.oxw();return i.KtG($t.onCalendarChange(vt))})("resultOk",function(){i.CHM(Z);const vt=i.oxw();return i.KtG(vt.onResultOk())}),i.qZA()()}if(2&rt){const Z=i.oxw();i.MT6("",Z.prefixCls,"-dropdown ",Z.nzDropdownClassName,""),i.ekj("ant-picker-dropdown-rtl","rtl"===Z.dir)("ant-picker-dropdown-placement-bottomLeft","bottom"===Z.currentPositionY&&"start"===Z.currentPositionX)("ant-picker-dropdown-placement-topLeft","top"===Z.currentPositionY&&"start"===Z.currentPositionX)("ant-picker-dropdown-placement-bottomRight","bottom"===Z.currentPositionY&&"end"===Z.currentPositionX)("ant-picker-dropdown-placement-topRight","top"===Z.currentPositionY&&"end"===Z.currentPositionX)("ant-picker-dropdown-range",Z.isRange)("ant-picker-active-left","left"===Z.datePickerService.activeInput)("ant-picker-active-right","right"===Z.datePickerService.activeInput),i.Q6J("ngStyle",Z.nzPopupStyle),i.xp6(1),i.Q6J("isRange",Z.isRange)("inline",Z.nzInline)("defaultPickerValue",Z.nzDefaultPickerValue)("showWeek",Z.nzShowWeekNumber||"week"===Z.nzMode)("panelMode",Z.panelMode)("locale",null==Z.nzLocale?null:Z.nzLocale.lang)("showToday","date"===Z.nzMode&&Z.nzShowToday&&!Z.isRange&&!Z.nzShowTime)("showNow","date"===Z.nzMode&&Z.nzShowNow&&!Z.isRange&&!!Z.nzShowTime)("showTime",Z.nzShowTime)("dateRender",Z.nzDateRender)("disabledDate",Z.nzDisabledDate)("disabledTime",Z.nzDisabledTime)("extraFooter",Z.extraFooter)("ranges",Z.nzRanges)("dir",Z.dir)}}function We(rt,Gt){1&rt&&i.GkF(0)}function Nt(rt,Gt){if(1&rt&&(i.TgZ(0,"div",25),i.YNc(1,We,1,0,"ng-container",9),i.qZA()),2&rt){const Z=i.oxw(),dt=i.MAs(6);i.Q6J("nzNoAnimation",!(null==Z.noAnimation||!Z.noAnimation.nzNoAnimation))("@slideMotion","enter"),i.xp6(1),i.Q6J("ngTemplateOutlet",dt)}}const Kt="ant-picker",ln={nzDisabledHours:()=>[],nzDisabledMinutes:()=>[],nzDisabledSeconds:()=>[]};function zn(rt,Gt){let Z=Gt?Gt(rt&&rt.nativeDate):{};return Z={...ln,...Z},Z}function ui(rt,Gt,Z){return!(!rt||Gt&&Gt(rt.nativeDate)||Z&&!function Qn(rt,Gt){return function kn(rt,Gt){let Z=!1;if(rt){const dt=rt.getHours(),vt=rt.getMinutes(),$t=rt.getSeconds();Z=-1!==Gt.nzDisabledHours().indexOf(dt)||-1!==Gt.nzDisabledMinutes(dt).indexOf(vt)||-1!==Gt.nzDisabledSeconds(dt,vt).indexOf($t)}return!Z}(rt,zn(rt,Gt))}(rt,Z))}function eo(rt){return rt&&rt.replace(/Y/g,"y").replace(/D/g,"d")}let Ui=(()=>{class rt{constructor(Z){this.dateHelper=Z,this.showToday=!1,this.showNow=!1,this.hasTimePicker=!1,this.isRange=!1,this.okDisabled=!1,this.rangeQuickSelector=null,this.clickOk=new i.vpe,this.clickToday=new i.vpe,this.prefixCls=Kt,this.isTemplateRef=d.de,this.isNonEmptyString=d.HH,this.isTodayDisabled=!1,this.todayTitle=""}ngOnChanges(Z){const dt=new Date;if(Z.disabledDate&&(this.isTodayDisabled=!(!this.disabledDate||!this.disabledDate(dt))),Z.locale){const vt=eo(this.locale.dateFormat);this.todayTitle=this.dateHelper.format(dt,vt)}}onClickToday(){const Z=new g.Yp;this.clickToday.emit(Z.clone())}static#e=this.\u0275fac=function(dt){return new(dt||rt)(i.Y36(p.mx))};static#t=this.\u0275cmp=i.Xpm({type:rt,selectors:[["calendar-footer"]],inputs:{locale:"locale",showToday:"showToday",showNow:"showNow",hasTimePicker:"hasTimePicker",isRange:"isRange",okDisabled:"okDisabled",disabledDate:"disabledDate",extraFooter:"extraFooter",rangeQuickSelector:"rangeQuickSelector"},outputs:{clickOk:"clickOk",clickToday:"clickToday"},exportAs:["calendarFooter"],features:[i.TTD],decls:4,vars:6,consts:[[3,"class",4,"ngIf"],["role","button",3,"class","title","click",4,"ngIf"],[3,"ngSwitch"],[4,"ngSwitchCase"],[4,"ngTemplateOutlet"],[3,"innerHTML"],["role","button",3,"title","click"],[3,"click"],["nz-button","","type","button","nzType","primary","nzSize","small",3,"disabled","click"]],template:function(dt,vt){1&dt&&(i.TgZ(0,"div"),i.YNc(1,re,4,6,"div",0),i.YNc(2,be,2,6,"a",1),i.YNc(3,ie,4,6,"ul",0),i.qZA()),2&dt&&(i.Gre("",vt.prefixCls,"-footer"),i.xp6(1),i.Q6J("ngIf",vt.extraFooter),i.xp6(1),i.Q6J("ngIf",vt.showToday),i.xp6(1),i.Q6J("ngIf",vt.hasTimePicker||vt.rangeQuickSelector))},dependencies:[t.O5,t.tP,t.RF,t.n9,C.ix,f.w,y.dQ],encapsulation:2,changeDetection:0})}return rt})(),Un=(()=>{class rt{constructor(){this.activeInput="left",this.arrowLeft=0,this.isRange=!1,this.valueChange$=new D.t(1),this.emitValue$=new _.x,this.inputPartChange$=new _.x}initValue(Z=!1){Z&&(this.initialValue=this.isRange?[]:null),this.setValue(this.initialValue)}hasValue(Z=this.value){return Array.isArray(Z)?!!Z[0]||!!Z[1]:!!Z}makeValue(Z){return this.isRange?Z?Z.map(dt=>new g.Yp(dt)):[]:Z?new g.Yp(Z):null}setActiveDate(Z,dt=!1,vt="month"){this.activeDate=this.isRange?(0,g._p)(Z,dt,{date:"month",month:"year",year:"decade"}[vt],this.activeInput):(0,g.ky)(Z)}setValue(Z){this.value=Z,this.valueChange$.next(this.value)}getActiveIndex(Z=this.activeInput){return{left:0,right:1}[Z]}ngOnDestroy(){this.valueChange$.complete(),this.emitValue$.complete(),this.inputPartChange$.complete()}static#e=this.\u0275fac=function(dt){return new(dt||rt)};static#t=this.\u0275prov=i.Yz7({token:rt,factory:rt.\u0275fac})}return rt})(),go=(()=>{class rt{constructor(){this.prefixCls="ant-picker-header",this.selectors=[],this.showSuperPreBtn=!0,this.showSuperNextBtn=!0,this.showPreBtn=!0,this.showNextBtn=!0,this.panelModeChange=new i.vpe,this.valueChange=new i.vpe}superPreviousTitle(){return this.locale.previousYear}previousTitle(){return this.locale.previousMonth}superNextTitle(){return this.locale.nextYear}nextTitle(){return this.locale.nextMonth}superPrevious(){this.changeValue(this.value.addYears(-1))}superNext(){this.changeValue(this.value.addYears(1))}previous(){this.changeValue(this.value.addMonths(-1))}next(){this.changeValue(this.value.addMonths(1))}changeValue(Z){this.value!==Z&&(this.value=Z,this.valueChange.emit(this.value),this.render())}changeMode(Z){this.panelModeChange.emit(Z)}render(){this.value&&(this.selectors=this.getSelectors())}ngOnInit(){this.value||(this.value=new g.Yp),this.selectors=this.getSelectors()}ngOnChanges(Z){(Z.value||Z.locale)&&this.render()}static#e=this.\u0275fac=function(dt){return new(dt||rt)};static#t=this.\u0275dir=i.lG2({type:rt,inputs:{value:"value",locale:"locale",showSuperPreBtn:"showSuperPreBtn",showSuperNextBtn:"showSuperNextBtn",showPreBtn:"showPreBtn",showNextBtn:"showNextBtn"},outputs:{panelModeChange:"panelModeChange",valueChange:"valueChange"},features:[i.TTD]})}return rt})(),hs=(()=>{class rt extends go{constructor(Z){super(),this.dateHelper=Z}getSelectors(){return[{className:`${this.prefixCls}-year-btn`,title:this.locale.yearSelect,onClick:()=>this.changeMode("year"),label:this.dateHelper.format(this.value.nativeDate,eo(this.locale.yearFormat))},{className:`${this.prefixCls}-month-btn`,title:this.locale.monthSelect,onClick:()=>this.changeMode("month"),label:this.dateHelper.format(this.value.nativeDate,this.locale.monthFormat||"MMM")}]}static#e=this.\u0275fac=function(dt){return new(dt||rt)(i.Y36(p.mx))};static#t=this.\u0275cmp=i.Xpm({type:rt,selectors:[["date-header"]],exportAs:["dateHeader"],features:[i.qOj],decls:11,vars:31,consts:[["role","button","type","button","tabindex","-1",3,"title","click"],[1,"ant-picker-super-prev-icon"],[1,"ant-picker-prev-icon"],[4,"ngFor","ngForOf"],[1,"ant-picker-next-icon"],[1,"ant-picker-super-next-icon"],["role","button","type","button",3,"title","click"]],template:function(dt,vt){1&dt&&(i.TgZ(0,"div")(1,"button",0),i.NdJ("click",function(){return vt.superPrevious()}),i._UZ(2,"span",1),i.qZA(),i.TgZ(3,"button",0),i.NdJ("click",function(){return vt.previous()}),i._UZ(4,"span",2),i.qZA(),i.TgZ(5,"div"),i.YNc(6,ae,3,5,"ng-container",3),i.qZA(),i.TgZ(7,"button",0),i.NdJ("click",function(){return vt.next()}),i._UZ(8,"span",4),i.qZA(),i.TgZ(9,"button",0),i.NdJ("click",function(){return vt.superNext()}),i._UZ(10,"span",5),i.qZA()()),2&dt&&(i.Tol(vt.prefixCls),i.xp6(1),i.Gre("",vt.prefixCls,"-super-prev-btn"),i.Udp("visibility",vt.showSuperPreBtn?"visible":"hidden"),i.s9C("title",vt.superPreviousTitle()),i.xp6(2),i.Gre("",vt.prefixCls,"-prev-btn"),i.Udp("visibility",vt.showPreBtn?"visible":"hidden"),i.s9C("title",vt.previousTitle()),i.xp6(2),i.Gre("",vt.prefixCls,"-view"),i.xp6(1),i.Q6J("ngForOf",vt.selectors),i.xp6(1),i.Gre("",vt.prefixCls,"-next-btn"),i.Udp("visibility",vt.showNextBtn?"visible":"hidden"),i.s9C("title",vt.nextTitle()),i.xp6(2),i.Gre("",vt.prefixCls,"-super-next-btn"),i.Udp("visibility",vt.showSuperNextBtn?"visible":"hidden"),i.s9C("title",vt.superNextTitle()))},dependencies:[t.sg],encapsulation:2,changeDetection:0})}return rt})(),xo=(()=>{class rt{constructor(){this.isTemplateRef=d.de,this.isNonEmptyString=d.HH,this.headRow=[],this.bodyRows=[],this.MAX_ROW=6,this.MAX_COL=7,this.prefixCls="ant-picker",this.activeDate=new g.Yp,this.showWeek=!1,this.selectedValue=[],this.hoverValue=[],this.canSelectWeek=!1,this.valueChange=new i.vpe,this.cellHover=new i.vpe}render(){this.activeDate&&(this.headRow=this.makeHeadRow(),this.bodyRows=this.makeBodyRows())}trackByBodyRow(Z,dt){return dt.trackByIndex}trackByBodyColumn(Z,dt){return dt.trackByIndex}hasRangeValue(){return this.selectedValue?.length>0||this.hoverValue?.length>0}getClassMap(Z){return{"ant-picker-cell":!0,"ant-picker-cell-in-view":!0,"ant-picker-cell-selected":Z.isSelected,"ant-picker-cell-disabled":Z.isDisabled,"ant-picker-cell-in-range":!!Z.isInSelectedRange,"ant-picker-cell-range-start":!!Z.isSelectedStart,"ant-picker-cell-range-end":!!Z.isSelectedEnd,"ant-picker-cell-range-start-single":!!Z.isStartSingle,"ant-picker-cell-range-end-single":!!Z.isEndSingle,"ant-picker-cell-range-hover":!!Z.isInHoverRange,"ant-picker-cell-range-hover-start":!!Z.isHoverStart,"ant-picker-cell-range-hover-end":!!Z.isHoverEnd,"ant-picker-cell-range-hover-edge-start":!!Z.isFirstCellInPanel,"ant-picker-cell-range-hover-edge-end":!!Z.isLastCellInPanel,"ant-picker-cell-range-start-near-hover":!!Z.isRangeStartNearHover,"ant-picker-cell-range-end-near-hover":!!Z.isRangeEndNearHover}}ngOnInit(){this.render()}ngOnChanges(Z){Z.activeDate&&!Z.activeDate.currentValue&&(this.activeDate=new g.Yp),(Z.disabledDate||Z.locale||Z.showWeek||Z.selectWeek||this.isDateRealChange(Z.activeDate)||this.isDateRealChange(Z.value)||this.isDateRealChange(Z.selectedValue)||this.isDateRealChange(Z.hoverValue))&&this.render()}isDateRealChange(Z){if(Z){const dt=Z.previousValue,vt=Z.currentValue;return Array.isArray(vt)?!Array.isArray(dt)||vt.length!==dt.length||vt.some(($t,yn)=>{const In=dt[yn];return In instanceof g.Yp?In.isSameDay($t):In!==$t}):!this.isSameDate(dt,vt)}return!1}isSameDate(Z,dt){return!Z&&!dt||Z&&dt&&dt.isSameDay(Z)}static#e=this.\u0275fac=function(dt){return new(dt||rt)};static#t=this.\u0275dir=i.lG2({type:rt,inputs:{prefixCls:"prefixCls",value:"value",locale:"locale",activeDate:"activeDate",showWeek:"showWeek",selectedValue:"selectedValue",hoverValue:"hoverValue",disabledDate:"disabledDate",cellRender:"cellRender",fullCellRender:"fullCellRender",canSelectWeek:"canSelectWeek"},outputs:{valueChange:"valueChange",cellHover:"cellHover"},features:[i.TTD]})}return rt})(),Ti=(()=>{class rt extends xo{constructor(Z,dt){super(),this.i18n=Z,this.dateHelper=dt}changeValueFromInside(Z){this.activeDate=this.activeDate.setYear(Z.getYear()).setMonth(Z.getMonth()).setDate(Z.getDate()),this.valueChange.emit(this.activeDate),this.activeDate.isSameMonth(this.value)||this.render()}makeHeadRow(){const Z=[],dt=this.activeDate.calendarStart({weekStartsOn:this.dateHelper.getFirstDayOfWeek()});for(let vt=0;vtthis.changeValueFromInside(yi),onMouseEnter:()=>this.cellHover.emit(yi)};this.addCellProperty(Yi,yi),this.showWeek&&!yn.weekNum&&(yn.weekNum=this.dateHelper.getISOWeek(yi.nativeDate)),yi.isSameDay(this.value)&&(yn.isActive=yi.isSameDay(this.value)),yn.dateCells.push(Yi)}yn.classMap={"ant-picker-week-panel-row":this.canSelectWeek,"ant-picker-week-panel-row-selected":this.canSelectWeek&&yn.isActive},Z.push(yn)}return Z}addCellProperty(Z,dt){if(this.hasRangeValue()&&!this.canSelectWeek){const[vt,$t]=this.hoverValue,[yn,In]=this.selectedValue;yn?.isSameDay(dt)&&(Z.isSelectedStart=!0,Z.isSelected=!0),In?.isSameDay(dt)&&(Z.isSelectedEnd=!0,Z.isSelected=!0),vt&&$t&&(Z.isHoverStart=vt.isSameDay(dt),Z.isHoverEnd=$t.isSameDay(dt),Z.isLastCellInPanel=dt.isLastDayOfMonth(),Z.isFirstCellInPanel=dt.isFirstDayOfMonth(),Z.isInHoverRange=vt.isBeforeDay(dt)&&dt.isBeforeDay($t)),Z.isStartSingle=yn&&!In,Z.isEndSingle=!yn&&In,Z.isInSelectedRange=yn?.isBeforeDay(dt)&&dt.isBeforeDay(In),Z.isRangeStartNearHover=yn&&Z.isInHoverRange,Z.isRangeEndNearHover=In&&Z.isInHoverRange}Z.isToday=dt.isToday(),Z.isSelected=dt.isSameDay(this.value),Z.isDisabled=!!this.disabledDate?.(dt.nativeDate),Z.classMap=this.getClassMap(Z)}getClassMap(Z){const dt=new g.Yp(Z.value);return{...super.getClassMap(Z),"ant-picker-cell-today":!!Z.isToday,"ant-picker-cell-in-view":dt.isSameMonth(this.activeDate)}}static#e=this.\u0275fac=function(dt){return new(dt||rt)(i.Y36(p.wi),i.Y36(p.mx))};static#t=this.\u0275cmp=i.Xpm({type:rt,selectors:[["date-table"]],inputs:{locale:"locale"},exportAs:["dateTable"],features:[i.qOj],decls:4,vars:3,consts:[["cellspacing","0","role","grid",1,"ant-picker-content"],[4,"ngIf"],["role","row",3,"ngClass",4,"ngFor","ngForOf","ngForTrackBy"],["role","row"],["role","columnheader",4,"ngIf"],["role","columnheader",3,"title",4,"ngFor","ngForOf"],["role","columnheader"],["role","columnheader",3,"title"],["role","row",3,"ngClass"],["role","gridcell",3,"class",4,"ngIf"],["role","gridcell",3,"title","ngClass","click","mouseenter",4,"ngFor","ngForOf","ngForTrackBy"],["role","gridcell"],["role","gridcell",3,"title","ngClass","click","mouseenter"],[3,"ngSwitch"],[4,"ngSwitchCase"],[4,"ngSwitchDefault"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"innerHTML"],[4,"ngIf","ngIfElse"],["defaultCell",""]],template:function(dt,vt){1&dt&&(i.TgZ(0,"table",0),i.YNc(1,Ye,4,2,"thead",1),i.TgZ(2,"tbody"),i.YNc(3,U,3,4,"tr",2),i.qZA()()),2&dt&&(i.xp6(1),i.Q6J("ngIf",vt.headRow&&vt.headRow.length>0),i.xp6(2),i.Q6J("ngForOf",vt.bodyRows)("ngForTrackBy",vt.trackByBodyRow))},dependencies:[t.mk,t.sg,t.O5,t.tP,t.RF,t.n9,t.ED],encapsulation:2,changeDetection:0})}return rt})(),qo=(()=>{class rt extends go{previous(){}next(){}get startYear(){return 100*parseInt(""+this.value.getYear()/100,10)}get endYear(){return this.startYear+99}superPrevious(){this.changeValue(this.value.addYears(-100))}superNext(){this.changeValue(this.value.addYears(100))}getSelectors(){return[{className:`${this.prefixCls}-decade-btn`,title:"",onClick:()=>{},label:`${this.startYear}-${this.endYear}`}]}static#e=this.\u0275fac=function(){let Z;return function(vt){return(Z||(Z=i.n5z(rt)))(vt||rt)}}();static#t=this.\u0275cmp=i.Xpm({type:rt,selectors:[["decade-header"]],exportAs:["decadeHeader"],features:[i.qOj],decls:11,vars:31,consts:[["role","button","type","button","tabindex","-1",3,"title","click"],[1,"ant-picker-super-prev-icon"],[1,"ant-picker-prev-icon"],[4,"ngFor","ngForOf"],[1,"ant-picker-next-icon"],[1,"ant-picker-super-next-icon"],["role","button","type","button",3,"title","click"]],template:function(dt,vt){1&dt&&(i.TgZ(0,"div")(1,"button",0),i.NdJ("click",function(){return vt.superPrevious()}),i._UZ(2,"span",1),i.qZA(),i.TgZ(3,"button",0),i.NdJ("click",function(){return vt.previous()}),i._UZ(4,"span",2),i.qZA(),i.TgZ(5,"div"),i.YNc(6,B,3,5,"ng-container",3),i.qZA(),i.TgZ(7,"button",0),i.NdJ("click",function(){return vt.next()}),i._UZ(8,"span",4),i.qZA(),i.TgZ(9,"button",0),i.NdJ("click",function(){return vt.superNext()}),i._UZ(10,"span",5),i.qZA()()),2&dt&&(i.Tol(vt.prefixCls),i.xp6(1),i.Gre("",vt.prefixCls,"-super-prev-btn"),i.Udp("visibility",vt.showSuperPreBtn?"visible":"hidden"),i.s9C("title",vt.superPreviousTitle()),i.xp6(2),i.Gre("",vt.prefixCls,"-prev-btn"),i.Udp("visibility",vt.showPreBtn?"visible":"hidden"),i.s9C("title",vt.previousTitle()),i.xp6(2),i.Gre("",vt.prefixCls,"-view"),i.xp6(1),i.Q6J("ngForOf",vt.selectors),i.xp6(1),i.Gre("",vt.prefixCls,"-next-btn"),i.Udp("visibility",vt.showNextBtn?"visible":"hidden"),i.s9C("title",vt.nextTitle()),i.xp6(2),i.Gre("",vt.prefixCls,"-super-next-btn"),i.Udp("visibility",vt.showSuperNextBtn?"visible":"hidden"),i.s9C("title",vt.superNextTitle()))},dependencies:[t.sg],encapsulation:2,changeDetection:0})}return rt})(),So=(()=>{class rt extends xo{get startYear(){return 100*parseInt(""+this.activeDate.getYear()/100,10)}get endYear(){return this.startYear+99}makeHeadRow(){return[]}makeBodyRows(){const Z=[],dt=this.value&&this.value.getYear(),vt=this.startYear,$t=this.endYear,yn=vt-10;let In=0;for(let yi=0;yi<4;yi++){const yo={dateCells:[],trackByIndex:yi};for(let io=0;io<3;io++){const _o=yn+10*In,Yi=yn+10*In+9,ts=`${_o}-${Yi}`,Lo={trackByIndex:io,value:this.activeDate.setYear(_o).nativeDate,content:ts,title:ts,isDisabled:!1,isSelected:dt>=_o&&dt<=Yi,isLowerThanStart:Yi$t,classMap:{},onClick(){},onMouseEnter(){}};Lo.classMap=this.getClassMap(Lo),Lo.onClick=()=>this.chooseDecade(_o),In++,yo.dateCells.push(Lo)}Z.push(yo)}return Z}getClassMap(Z){return{[`${this.prefixCls}-cell`]:!0,[`${this.prefixCls}-cell-in-view`]:!Z.isBiggerThanEnd&&!Z.isLowerThanStart,[`${this.prefixCls}-cell-selected`]:Z.isSelected,[`${this.prefixCls}-cell-disabled`]:Z.isDisabled}}chooseDecade(Z){this.value=this.activeDate.setYear(Z),this.valueChange.emit(this.value)}static#e=this.\u0275fac=function(){let Z;return function(vt){return(Z||(Z=i.n5z(rt)))(vt||rt)}}();static#t=this.\u0275cmp=i.Xpm({type:rt,selectors:[["decade-table"]],exportAs:["decadeTable"],features:[i.qOj],decls:4,vars:3,consts:[["cellspacing","0","role","grid",1,"ant-picker-content"],[4,"ngIf"],["role","row",3,"ngClass",4,"ngFor","ngForOf","ngForTrackBy"],["role","row"],["role","columnheader",4,"ngIf"],["role","columnheader",3,"title",4,"ngFor","ngForOf"],["role","columnheader"],["role","columnheader",3,"title"],["role","row",3,"ngClass"],["role","gridcell",3,"class",4,"ngIf"],["role","gridcell",3,"title","ngClass","click","mouseenter",4,"ngFor","ngForOf","ngForTrackBy"],["role","gridcell"],["role","gridcell",3,"title","ngClass","click","mouseenter"],[3,"ngSwitch"],[4,"ngSwitchCase"],[4,"ngSwitchDefault"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"innerHTML"],[4,"ngIf","ngIfElse"],["defaultCell",""]],template:function(dt,vt){1&dt&&(i.TgZ(0,"table",0),i.YNc(1,Ne,4,2,"thead",1),i.TgZ(2,"tbody"),i.YNc(3,It,3,4,"tr",2),i.qZA()()),2&dt&&(i.xp6(1),i.Q6J("ngIf",vt.headRow&&vt.headRow.length>0),i.xp6(2),i.Q6J("ngForOf",vt.bodyRows)("ngForTrackBy",vt.trackByBodyRow))},dependencies:[t.mk,t.sg,t.O5,t.tP,t.RF,t.n9,t.ED],encapsulation:2,changeDetection:0})}return rt})(),ps=(()=>{class rt extends go{constructor(Z){super(),this.dateHelper=Z}getSelectors(){return[{className:`${this.prefixCls}-month-btn`,title:this.locale.yearSelect,onClick:()=>this.changeMode("year"),label:this.dateHelper.format(this.value.nativeDate,eo(this.locale.yearFormat))}]}static#e=this.\u0275fac=function(dt){return new(dt||rt)(i.Y36(p.mx))};static#t=this.\u0275cmp=i.Xpm({type:rt,selectors:[["month-header"]],exportAs:["monthHeader"],features:[i.qOj],decls:11,vars:31,consts:[["role","button","type","button","tabindex","-1",3,"title","click"],[1,"ant-picker-super-prev-icon"],[1,"ant-picker-prev-icon"],[4,"ngFor","ngForOf"],[1,"ant-picker-next-icon"],[1,"ant-picker-super-next-icon"],["role","button","type","button",3,"title","click"]],template:function(dt,vt){1&dt&&(i.TgZ(0,"div")(1,"button",0),i.NdJ("click",function(){return vt.superPrevious()}),i._UZ(2,"span",1),i.qZA(),i.TgZ(3,"button",0),i.NdJ("click",function(){return vt.previous()}),i._UZ(4,"span",2),i.qZA(),i.TgZ(5,"div"),i.YNc(6,Ot,3,5,"ng-container",3),i.qZA(),i.TgZ(7,"button",0),i.NdJ("click",function(){return vt.next()}),i._UZ(8,"span",4),i.qZA(),i.TgZ(9,"button",0),i.NdJ("click",function(){return vt.superNext()}),i._UZ(10,"span",5),i.qZA()()),2&dt&&(i.Tol(vt.prefixCls),i.xp6(1),i.Gre("",vt.prefixCls,"-super-prev-btn"),i.Udp("visibility",vt.showSuperPreBtn?"visible":"hidden"),i.s9C("title",vt.superPreviousTitle()),i.xp6(2),i.Gre("",vt.prefixCls,"-prev-btn"),i.Udp("visibility",vt.showPreBtn?"visible":"hidden"),i.s9C("title",vt.previousTitle()),i.xp6(2),i.Gre("",vt.prefixCls,"-view"),i.xp6(1),i.Q6J("ngForOf",vt.selectors),i.xp6(1),i.Gre("",vt.prefixCls,"-next-btn"),i.Udp("visibility",vt.showNextBtn?"visible":"hidden"),i.s9C("title",vt.nextTitle()),i.xp6(2),i.Gre("",vt.prefixCls,"-super-next-btn"),i.Udp("visibility",vt.showSuperNextBtn?"visible":"hidden"),i.s9C("title",vt.superNextTitle()))},dependencies:[t.sg],encapsulation:2,changeDetection:0})}return rt})(),vo=(()=>{class rt extends xo{constructor(Z){super(),this.dateHelper=Z,this.MAX_ROW=4,this.MAX_COL=3}makeHeadRow(){return[]}makeBodyRows(){const Z=[];let dt=0;for(let vt=0;vtthis.chooseMonth(io.value.getMonth()),onMouseEnter:()=>this.cellHover.emit(In)};this.addCellProperty(io,In),$t.dateCells.push(io),dt++}Z.push($t)}return Z}isDisabledMonth(Z){if(!this.disabledDate)return!1;for(let vt=Z.setDate(1);vt.getMonth()===Z.getMonth();vt=vt.addDays(1))if(!this.disabledDate(vt.nativeDate))return!1;return!0}addCellProperty(Z,dt){if(this.hasRangeValue()){const[vt,$t]=this.hoverValue,[yn,In]=this.selectedValue;yn?.isSameMonth(dt)&&(Z.isSelectedStart=!0,Z.isSelected=!0),In?.isSameMonth(dt)&&(Z.isSelectedEnd=!0,Z.isSelected=!0),vt&&$t&&(Z.isHoverStart=vt.isSameMonth(dt),Z.isHoverEnd=$t.isSameMonth(dt),Z.isLastCellInPanel=11===dt.getMonth(),Z.isFirstCellInPanel=0===dt.getMonth(),Z.isInHoverRange=vt.isBeforeMonth(dt)&&dt.isBeforeMonth($t)),Z.isStartSingle=yn&&!In,Z.isEndSingle=!yn&&In,Z.isInSelectedRange=yn?.isBeforeMonth(dt)&&dt?.isBeforeMonth(In),Z.isRangeStartNearHover=yn&&Z.isInHoverRange,Z.isRangeEndNearHover=In&&Z.isInHoverRange}else dt.isSameMonth(this.value)&&(Z.isSelected=!0);Z.classMap=this.getClassMap(Z)}chooseMonth(Z){this.value=this.activeDate.setMonth(Z),this.valueChange.emit(this.value)}static#e=this.\u0275fac=function(dt){return new(dt||rt)(i.Y36(p.mx))};static#t=this.\u0275cmp=i.Xpm({type:rt,selectors:[["month-table"]],exportAs:["monthTable"],features:[i.qOj],decls:4,vars:3,consts:[["cellspacing","0","role","grid",1,"ant-picker-content"],[4,"ngIf"],["role","row",3,"ngClass",4,"ngFor","ngForOf","ngForTrackBy"],["role","row"],["role","columnheader",4,"ngIf"],["role","columnheader",3,"title",4,"ngFor","ngForOf"],["role","columnheader"],["role","columnheader",3,"title"],["role","row",3,"ngClass"],["role","gridcell",3,"class",4,"ngIf"],["role","gridcell",3,"title","ngClass","click","mouseenter",4,"ngFor","ngForOf","ngForTrackBy"],["role","gridcell"],["role","gridcell",3,"title","ngClass","click","mouseenter"],[3,"ngSwitch"],[4,"ngSwitchCase"],[4,"ngSwitchDefault"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"innerHTML"],[4,"ngIf","ngIfElse"],["defaultCell",""]],template:function(dt,vt){1&dt&&(i.TgZ(0,"table",0),i.YNc(1,ke,4,2,"thead",1),i.TgZ(2,"tbody"),i.YNc(3,ve,3,4,"tr",2),i.qZA()()),2&dt&&(i.xp6(1),i.Q6J("ngIf",vt.headRow&&vt.headRow.length>0),i.xp6(2),i.Q6J("ngForOf",vt.bodyRows)("ngForTrackBy",vt.trackByBodyRow))},dependencies:[t.mk,t.sg,t.O5,t.tP,t.RF,t.n9,t.ED],encapsulation:2,changeDetection:0})}return rt})(),ao=(()=>{class rt extends go{get startYear(){return 10*parseInt(""+this.value.getYear()/10,10)}get endYear(){return this.startYear+9}superPrevious(){this.changeValue(this.value.addYears(-10))}superNext(){this.changeValue(this.value.addYears(10))}getSelectors(){return[{className:`${this.prefixCls}-year-btn`,title:"",onClick:()=>this.changeMode("decade"),label:`${this.startYear}-${this.endYear}`}]}static#e=this.\u0275fac=function(){let Z;return function(vt){return(Z||(Z=i.n5z(rt)))(vt||rt)}}();static#t=this.\u0275cmp=i.Xpm({type:rt,selectors:[["year-header"]],exportAs:["yearHeader"],features:[i.qOj],decls:11,vars:31,consts:[["role","button","type","button","tabindex","-1",3,"title","click"],[1,"ant-picker-super-prev-icon"],[1,"ant-picker-prev-icon"],[4,"ngFor","ngForOf"],[1,"ant-picker-next-icon"],[1,"ant-picker-super-next-icon"],["role","button","type","button",3,"title","click"]],template:function(dt,vt){1&dt&&(i.TgZ(0,"div")(1,"button",0),i.NdJ("click",function(){return vt.superPrevious()}),i._UZ(2,"span",1),i.qZA(),i.TgZ(3,"button",0),i.NdJ("click",function(){return vt.previous()}),i._UZ(4,"span",2),i.qZA(),i.TgZ(5,"div"),i.YNc(6,it,3,5,"ng-container",3),i.qZA(),i.TgZ(7,"button",0),i.NdJ("click",function(){return vt.next()}),i._UZ(8,"span",4),i.qZA(),i.TgZ(9,"button",0),i.NdJ("click",function(){return vt.superNext()}),i._UZ(10,"span",5),i.qZA()()),2&dt&&(i.Tol(vt.prefixCls),i.xp6(1),i.Gre("",vt.prefixCls,"-super-prev-btn"),i.Udp("visibility",vt.showSuperPreBtn?"visible":"hidden"),i.s9C("title",vt.superPreviousTitle()),i.xp6(2),i.Gre("",vt.prefixCls,"-prev-btn"),i.Udp("visibility",vt.showPreBtn?"visible":"hidden"),i.s9C("title",vt.previousTitle()),i.xp6(2),i.Gre("",vt.prefixCls,"-view"),i.xp6(1),i.Q6J("ngForOf",vt.selectors),i.xp6(1),i.Gre("",vt.prefixCls,"-next-btn"),i.Udp("visibility",vt.showNextBtn?"visible":"hidden"),i.s9C("title",vt.nextTitle()),i.xp6(2),i.Gre("",vt.prefixCls,"-super-next-btn"),i.Udp("visibility",vt.showSuperNextBtn?"visible":"hidden"),i.s9C("title",vt.superNextTitle()))},dependencies:[t.sg],encapsulation:2,changeDetection:0})}return rt})(),Oo=(()=>{class rt extends xo{constructor(Z){super(),this.dateHelper=Z,this.MAX_ROW=4,this.MAX_COL=3}makeHeadRow(){return[]}makeBodyRows(){const Z=this.activeDate&&this.activeDate.getYear(),dt=10*parseInt(""+Z/10,10),vt=dt+9,$t=dt-1,yn=[];let In=0;for(let yi=0;yi=dt&&_o<=vt,isSelected:_o===(this.value&&this.value.getYear()),content:ts,title:ts,classMap:{},isLastCellInPanel:Yi.getYear()===vt,isFirstCellInPanel:Yi.getYear()===dt,cellRender:(0,d.rw)(this.cellRender,Yi),fullCellRender:(0,d.rw)(this.fullCellRender,Yi),onClick:()=>this.chooseYear(_i.value.getFullYear()),onMouseEnter:()=>this.cellHover.emit(Yi)};this.addCellProperty(_i,Yi),yo.dateCells.push(_i),In++}yn.push(yo)}return yn}getClassMap(Z){return{...super.getClassMap(Z),"ant-picker-cell-in-view":!!Z.isSameDecade}}isDisabledYear(Z){if(!this.disabledDate)return!1;for(let vt=Z.setMonth(0).setDate(1);vt.getYear()===Z.getYear();vt=vt.addDays(1))if(!this.disabledDate(vt.nativeDate))return!1;return!0}addCellProperty(Z,dt){if(this.hasRangeValue()){const[vt,$t]=this.hoverValue,[yn,In]=this.selectedValue;yn?.isSameYear(dt)&&(Z.isSelectedStart=!0,Z.isSelected=!0),In?.isSameYear(dt)&&(Z.isSelectedEnd=!0,Z.isSelected=!0),vt&&$t&&(Z.isHoverStart=vt.isSameYear(dt),Z.isHoverEnd=$t.isSameYear(dt),Z.isInHoverRange=vt.isBeforeYear(dt)&&dt.isBeforeYear($t)),Z.isStartSingle=yn&&!In,Z.isEndSingle=!yn&&In,Z.isInSelectedRange=yn?.isBeforeYear(dt)&&dt?.isBeforeYear(In),Z.isRangeStartNearHover=yn&&Z.isInHoverRange,Z.isRangeEndNearHover=In&&Z.isInHoverRange}else dt.isSameYear(this.value)&&(Z.isSelected=!0);Z.classMap=this.getClassMap(Z)}chooseYear(Z){this.value=this.activeDate.setYear(Z),this.valueChange.emit(this.value),this.render()}static#e=this.\u0275fac=function(dt){return new(dt||rt)(i.Y36(p.mx))};static#t=this.\u0275cmp=i.Xpm({type:rt,selectors:[["year-table"]],exportAs:["yearTable"],features:[i.qOj],decls:4,vars:3,consts:[["cellspacing","0","role","grid",1,"ant-picker-content"],[4,"ngIf"],["role","row",3,"ngClass",4,"ngFor","ngForOf","ngForTrackBy"],["role","row"],["role","columnheader",4,"ngIf"],["role","columnheader",3,"title",4,"ngFor","ngForOf"],["role","columnheader"],["role","columnheader",3,"title"],["role","row",3,"ngClass"],["role","gridcell",3,"class",4,"ngIf"],["role","gridcell",3,"title","ngClass","click","mouseenter",4,"ngFor","ngForOf","ngForTrackBy"],["role","gridcell"],["role","gridcell",3,"title","ngClass","click","mouseenter"],[3,"ngSwitch"],[4,"ngSwitchCase"],[4,"ngSwitchDefault"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"innerHTML"],[4,"ngIf","ngIfElse"],["defaultCell",""]],template:function(dt,vt){1&dt&&(i.TgZ(0,"table",0),i.YNc(1,S,4,2,"thead",1),i.TgZ(2,"tbody"),i.YNc(3,bn,3,4,"tr",2),i.qZA()()),2&dt&&(i.xp6(1),i.Q6J("ngIf",vt.headRow&&vt.headRow.length>0),i.xp6(2),i.Q6J("ngForOf",vt.bodyRows)("ngForTrackBy",vt.trackByBodyRow))},dependencies:[t.mk,t.sg,t.O5,t.tP,t.RF,t.n9,t.ED],encapsulation:2,changeDetection:0})}return rt})(),Wo=(()=>{class rt{constructor(){this.panelModeChange=new i.vpe,this.headerChange=new i.vpe,this.selectDate=new i.vpe,this.selectTime=new i.vpe,this.cellHover=new i.vpe,this.prefixCls=Kt}enablePrevNext(Z,dt){return!(!this.showTimePicker&&dt===this.endPanelMode&&("left"===this.partType&&"next"===Z||"right"===this.partType&&"prev"===Z))}onSelectTime(Z){this.selectTime.emit(new g.Yp(Z))}onSelectDate(Z){const dt=Z instanceof g.Yp?Z:new g.Yp(Z),vt=this.timeOptions&&this.timeOptions.nzDefaultOpenValue;!this.value&&vt&&dt.setHms(vt.getHours(),vt.getMinutes(),vt.getSeconds()),this.selectDate.emit(dt)}onChooseMonth(Z){this.activeDate=this.activeDate.setMonth(Z.getMonth()),"month"===this.endPanelMode?(this.value=Z,this.selectDate.emit(Z)):(this.headerChange.emit(Z),this.panelModeChange.emit(this.endPanelMode))}onChooseYear(Z){this.activeDate=this.activeDate.setYear(Z.getYear()),"year"===this.endPanelMode?(this.value=Z,this.selectDate.emit(Z)):(this.headerChange.emit(Z),this.panelModeChange.emit(this.endPanelMode))}onChooseDecade(Z){this.activeDate=this.activeDate.setYear(Z.getYear()),"decade"===this.endPanelMode?(this.value=Z,this.selectDate.emit(Z)):(this.headerChange.emit(Z),this.panelModeChange.emit("year"))}ngOnChanges(Z){Z.activeDate&&!Z.activeDate.currentValue&&(this.activeDate=new g.Yp),Z.panelMode&&"time"===Z.panelMode.currentValue&&(this.panelMode="date")}static#e=this.\u0275fac=function(dt){return new(dt||rt)};static#t=this.\u0275cmp=i.Xpm({type:rt,selectors:[["inner-popup"]],inputs:{activeDate:"activeDate",endPanelMode:"endPanelMode",panelMode:"panelMode",showWeek:"showWeek",locale:"locale",showTimePicker:"showTimePicker",timeOptions:"timeOptions",disabledDate:"disabledDate",dateRender:"dateRender",selectedValue:"selectedValue",hoverValue:"hoverValue",value:"value",partType:"partType"},outputs:{panelModeChange:"panelModeChange",headerChange:"headerChange",selectDate:"selectDate",selectTime:"selectTime",cellHover:"cellHover"},exportAs:["innerPopup"],features:[i.TTD],decls:8,vars:11,consts:[[3,"ngSwitch"],[4,"ngSwitchCase"],[4,"ngSwitchDefault"],[4,"ngIf"],[3,"value","locale","showSuperPreBtn","showSuperNextBtn","showNextBtn","showPreBtn","valueChange","panelModeChange"],[3,"activeDate","value","locale","disabledDate","valueChange"],[3,"activeDate","value","locale","disabledDate","selectedValue","hoverValue","valueChange","cellHover"],[3,"value","activeDate","locale","disabledDate","selectedValue","hoverValue","valueChange","cellHover"],[3,"value","locale","showSuperPreBtn","showSuperNextBtn","showPreBtn","showNextBtn","valueChange","panelModeChange"],[3,"locale","showWeek","value","activeDate","disabledDate","cellRender","selectedValue","hoverValue","canSelectWeek","valueChange","cellHover"],[3,"nzInDatePicker","ngModel","format","nzHourStep","nzMinuteStep","nzSecondStep","nzDisabledHours","nzDisabledMinutes","nzDisabledSeconds","nzHideDisabledOptions","nzDefaultOpenValue","nzUse12Hours","nzAddOn","ngModelChange"]],template:function(dt,vt){1&dt&&(i.TgZ(0,"div")(1,"div"),i.ynx(2,0),i.YNc(3,Rn,4,13,"ng-container",1),i.YNc(4,qn,4,15,"ng-container",1),i.YNc(5,si,4,15,"ng-container",1),i.YNc(6,Wn,4,18,"ng-container",2),i.BQk(),i.qZA(),i.YNc(7,ci,2,13,"ng-container",3),i.qZA()),2&dt&&(i.ekj("ant-picker-datetime-panel",vt.showTimePicker),i.xp6(1),i.MT6("",vt.prefixCls,"-",vt.panelMode,"-panel"),i.xp6(1),i.Q6J("ngSwitch",vt.panelMode),i.xp6(1),i.Q6J("ngSwitchCase","decade"),i.xp6(1),i.Q6J("ngSwitchCase","year"),i.xp6(1),i.Q6J("ngSwitchCase","month"),i.xp6(2),i.Q6J("ngIf",vt.showTimePicker&&vt.timeOptions))},dependencies:[t.O5,t.RF,t.n9,t.ED,l.JJ,l.On,hs,Ti,qo,So,ps,vo,ao,Oo,v.Iv],encapsulation:2,changeDetection:0})}return rt})(),Jn=(()=>{class rt{get hasTimePicker(){return!!this.showTime}get hasFooter(){return this.showToday||this.hasTimePicker||!!this.extraFooter||!!this.ranges}get arrowPosition(){return"rtl"===this.dir?{right:`${this.datePickerService?.arrowLeft}px`}:{left:`${this.datePickerService?.arrowLeft}px`}}constructor(Z,dt,vt,$t){this.datePickerService=Z,this.cdr=dt,this.ngZone=vt,this.host=$t,this.inline=!1,this.dir="ltr",this.panelModeChange=new i.vpe,this.calendarChange=new i.vpe,this.resultOk=new i.vpe,this.prefixCls=Kt,this.endPanelMode="date",this.timeOptions=null,this.hoverValue=[],this.checkedPartArr=[!1,!1],this.destroy$=new _.x,this.disabledStartTime=yn=>this.disabledTime&&this.disabledTime(yn,"start"),this.disabledEndTime=yn=>this.disabledTime&&this.disabledTime(yn,"end")}ngOnInit(){(0,P.T)(this.datePickerService.valueChange$,this.datePickerService.inputPartChange$).pipe((0,k.R)(this.destroy$)).subscribe(()=>{this.updateActiveDate(),this.cdr.markForCheck()}),this.ngZone.runOutsideAngular(()=>{(0,O.R)(this.host.nativeElement,"mousedown").pipe((0,k.R)(this.destroy$)).subscribe(Z=>Z.preventDefault())})}ngOnChanges(Z){(Z.showTime||Z.disabledTime)&&this.showTime&&this.buildTimeOptions(),Z.panelMode&&(this.endPanelMode=this.panelMode),Z.defaultPickerValue&&this.updateActiveDate()}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}updateActiveDate(){const Z=this.datePickerService.hasValue()?this.datePickerService.value:this.datePickerService.makeValue(this.defaultPickerValue);this.datePickerService.setActiveDate(Z,this.hasTimePicker,this.getPanelMode(this.endPanelMode))}onClickOk(){this.changeValueFromSelect(this.isRange?this.datePickerService.value[{left:0,right:1}[this.datePickerService.activeInput]]:this.datePickerService.value),this.resultOk.emit()}onClickToday(Z){this.changeValueFromSelect(Z,!this.showTime)}onCellHover(Z){if(!this.isRange)return;const vt=this.datePickerService.value[{left:1,right:0}[this.datePickerService.activeInput]];vt&&(this.hoverValue=vt.isBeforeDay(Z)?[vt,Z]:[Z,vt])}onPanelModeChange(Z,dt){this.panelMode=this.isRange?0===this.datePickerService.getActiveIndex(dt)?[Z,this.panelMode[1]]:[this.panelMode[0],Z]:Z,this.panelModeChange.emit(this.panelMode)}onActiveDateChange(Z,dt){if(this.isRange){const vt=[];vt[this.datePickerService.getActiveIndex(dt)]=Z,this.datePickerService.setActiveDate(vt,this.hasTimePicker,this.getPanelMode(this.endPanelMode,dt))}else this.datePickerService.setActiveDate(Z)}onSelectTime(Z,dt){if(this.isRange){const vt=(0,g.ky)(this.datePickerService.value),$t=this.datePickerService.getActiveIndex(dt);vt[$t]=this.overrideHms(Z,vt[$t]),this.datePickerService.setValue(vt)}else{const vt=this.overrideHms(Z,this.datePickerService.value);this.datePickerService.setValue(vt)}this.datePickerService.inputPartChange$.next(null),this.buildTimeOptions()}changeValueFromSelect(Z,dt=!0){if(this.isRange){const vt=(0,g.ky)(this.datePickerService.value),$t=this.datePickerService.activeInput;let yn=$t;vt[this.datePickerService.getActiveIndex($t)]=Z,this.checkedPartArr[this.datePickerService.getActiveIndex($t)]=!0,this.hoverValue=vt,dt?this.inline?(yn=this.reversedPart($t),"right"===yn&&(vt[this.datePickerService.getActiveIndex(yn)]=null,this.checkedPartArr[this.datePickerService.getActiveIndex(yn)]=!1),this.datePickerService.setValue(vt),this.calendarChange.emit(vt),this.isBothAllowed(vt)&&this.checkedPartArr[0]&&this.checkedPartArr[1]&&(this.clearHoverValue(),this.datePickerService.emitValue$.next())):((0,g.Et)(vt)&&(yn=this.reversedPart($t),vt[this.datePickerService.getActiveIndex(yn)]=null,this.checkedPartArr[this.datePickerService.getActiveIndex(yn)]=!1),this.datePickerService.setValue(vt),this.isBothAllowed(vt)&&this.checkedPartArr[0]&&this.checkedPartArr[1]?(this.calendarChange.emit(vt),this.clearHoverValue(),this.datePickerService.emitValue$.next()):this.isAllowed(vt)&&(yn=this.reversedPart($t),this.calendarChange.emit([Z.clone()]))):this.datePickerService.setValue(vt),this.datePickerService.inputPartChange$.next(yn)}else this.datePickerService.setValue(Z),this.datePickerService.inputPartChange$.next(null),dt&&this.isAllowed(Z)&&this.datePickerService.emitValue$.next();this.buildTimeOptions()}reversedPart(Z){return"left"===Z?"right":"left"}getPanelMode(Z,dt){return this.isRange?Z[this.datePickerService.getActiveIndex(dt)]:Z}getValue(Z){return this.isRange?(this.datePickerService.value||[])[this.datePickerService.getActiveIndex(Z)]:this.datePickerService.value}getActiveDate(Z){return this.isRange?this.datePickerService.activeDate[this.datePickerService.getActiveIndex(Z)]:this.datePickerService.activeDate}isOneAllowed(Z){const dt=this.datePickerService.getActiveIndex();return ui(Z[dt],this.disabledDate,[this.disabledStartTime,this.disabledEndTime][dt])}isBothAllowed(Z){return ui(Z[0],this.disabledDate,this.disabledStartTime)&&ui(Z[1],this.disabledDate,this.disabledEndTime)}isAllowed(Z,dt=!1){return this.isRange?dt?this.isBothAllowed(Z):this.isOneAllowed(Z):ui(Z,this.disabledDate,this.disabledTime)}getTimeOptions(Z){return this.showTime&&this.timeOptions?this.timeOptions instanceof Array?this.timeOptions[this.datePickerService.getActiveIndex(Z)]:this.timeOptions:null}onClickPresetRange(Z){const dt="function"==typeof Z?Z():Z;dt&&(this.datePickerService.setValue([new g.Yp(dt[0]),new g.Yp(dt[1])]),this.datePickerService.emitValue$.next())}onPresetRangeMouseLeave(){this.clearHoverValue()}onHoverPresetRange(Z){"function"!=typeof Z&&(this.hoverValue=[new g.Yp(Z[0]),new g.Yp(Z[1])])}getObjectKeys(Z){return Z?Object.keys(Z):[]}show(Z){return!(this.showTime&&this.isRange&&this.datePickerService.activeInput!==Z)}clearHoverValue(){this.hoverValue=[]}buildTimeOptions(){if(this.showTime){const Z="object"==typeof this.showTime?this.showTime:{};if(this.isRange){const dt=this.datePickerService.value;this.timeOptions=[this.overrideTimeOptions(Z,dt[0],"start"),this.overrideTimeOptions(Z,dt[1],"end")]}else this.timeOptions=this.overrideTimeOptions(Z,this.datePickerService.value)}else this.timeOptions=null}overrideTimeOptions(Z,dt,vt){let $t;return $t=vt?"start"===vt?this.disabledStartTime:this.disabledEndTime:this.disabledTime,{...Z,...zn(dt,$t)}}overrideHms(Z,dt){return Z=Z||new g.Yp,(dt=dt||new g.Yp).setHms(Z.getHours(),Z.getMinutes(),Z.getSeconds())}static#e=this.\u0275fac=function(dt){return new(dt||rt)(i.Y36(Un),i.Y36(i.sBO),i.Y36(i.R0b),i.Y36(i.SBq))};static#t=this.\u0275cmp=i.Xpm({type:rt,selectors:[["date-range-popup"]],inputs:{isRange:"isRange",inline:"inline",showWeek:"showWeek",locale:"locale",disabledDate:"disabledDate",disabledTime:"disabledTime",showToday:"showToday",showNow:"showNow",showTime:"showTime",extraFooter:"extraFooter",ranges:"ranges",dateRender:"dateRender",panelMode:"panelMode",defaultPickerValue:"defaultPickerValue",dir:"dir"},outputs:{panelModeChange:"panelModeChange",calendarChange:"calendarChange",resultOk:"resultOk"},exportAs:["dateRangePopup"],features:[i.TTD],decls:9,vars:2,consts:[[4,"ngIf","ngIfElse"],["singlePanel",""],["tplInnerPopup",""],["tplFooter",""],["tplRangeQuickSelector",""],["noTimePicker",""],[4,"ngTemplateOutlet"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],["tabindex","-1"],[3,"showWeek","endPanelMode","partType","locale","showTimePicker","timeOptions","panelMode","activeDate","value","disabledDate","dateRender","selectedValue","hoverValue","panelModeChange","cellHover","selectDate","selectTime","headerChange"],[3,"locale","isRange","showToday","showNow","hasTimePicker","okDisabled","extraFooter","rangeQuickSelector","clickOk","clickToday",4,"ngIf"],[3,"locale","isRange","showToday","showNow","hasTimePicker","okDisabled","extraFooter","rangeQuickSelector","clickOk","clickToday"],[3,"class","click","mouseenter","mouseleave",4,"ngFor","ngForOf"],[3,"click","mouseenter","mouseleave"],[1,"ant-tag","ant-tag-blue"]],template:function(dt,vt){if(1&dt&&(i.YNc(0,Wi,9,19,"ng-container",0),i.YNc(1,$i,4,13,"ng-template",null,1,i.W1O),i.YNc(3,Qi,2,18,"ng-template",null,2,i.W1O),i.YNc(5,wi,1,1,"ng-template",null,3,i.W1O),i.YNc(7,Ei,1,1,"ng-template",null,4,i.W1O)),2&dt){const $t=i.MAs(2);i.Q6J("ngIf",vt.isRange)("ngIfElse",$t)}},dependencies:[t.sg,t.O5,t.tP,Ui,Wo],encapsulation:2,changeDetection:0})}return rt})();const to={position:"relative"};let no=(()=>{class rt{get nzShowTime(){return this.showTime}set nzShowTime(Z){this.showTime="object"==typeof Z?Z:(0,d.sw)(Z)}get realOpenState(){return this.isOpenHandledByUser()?!!this.nzOpen:this.overlayOpen}ngAfterViewInit(){this.nzAutoFocus&&this.focus(),this.isRange&&this.platform.isBrowser&&this.nzResizeObserver.observe(this.elementRef).pipe((0,k.R)(this.destroy$)).subscribe(()=>{this.updateInputWidthAndArrowLeft()}),this.datePickerService.inputPartChange$.pipe((0,k.R)(this.destroy$)).subscribe(Z=>{Z&&(this.datePickerService.activeInput=Z),this.focus(),this.updateInputWidthAndArrowLeft()}),this.platform.isBrowser&&this.ngZone.runOutsideAngular(()=>(0,O.R)(this.elementRef.nativeElement,"mousedown").pipe((0,k.R)(this.destroy$)).subscribe(Z=>{"input"!==Z.target.tagName.toLowerCase()&&Z.preventDefault()}))}updateInputWidthAndArrowLeft(){this.inputWidth=this.rangePickerInputs?.first?.nativeElement.offsetWidth||0;const Z={position:"absolute",width:`${this.inputWidth}px`};this.datePickerService.arrowLeft="left"===this.datePickerService.activeInput?0:this.inputWidth+this.separatorElement?.nativeElement.offsetWidth||0,this.activeBarStyle="rtl"===this.dir?{...Z,right:`${this.datePickerService.arrowLeft}px`}:{...Z,left:`${this.datePickerService.arrowLeft}px`},this.cdr.markForCheck()}getInput(Z){if(!this.nzInline)return this.isRange?"left"===Z?this.rangePickerInputs?.first.nativeElement:this.rangePickerInputs?.last.nativeElement:this.pickerInput.nativeElement}focus(){const Z=this.getInput(this.datePickerService.activeInput);this.document.activeElement!==Z&&Z?.focus()}onFocus(Z,dt){Z.preventDefault(),dt&&this.datePickerService.inputPartChange$.next(dt),this.renderClass(!0)}onFocusout(Z){Z.preventDefault(),this.onTouchedFn(),this.elementRef.nativeElement.contains(Z.relatedTarget)||this.checkAndClose(),this.renderClass(!1)}open(){this.nzInline||!this.realOpenState&&!this.nzDisabled&&(this.updateInputWidthAndArrowLeft(),this.overlayOpen=!0,this.nzOnOpenChange.emit(!0),this.focus(),this.cdr.markForCheck())}close(){this.nzInline||this.realOpenState&&(this.overlayOpen=!1,this.nzOnOpenChange.emit(!1))}showClear(){return!this.nzDisabled&&!this.isEmptyValue(this.datePickerService.value)&&this.nzAllowClear}checkAndClose(){if(this.realOpenState)if(this.panel.isAllowed(this.datePickerService.value,!0)){if(Array.isArray(this.datePickerService.value)&&(0,g.Et)(this.datePickerService.value)){const Z=this.datePickerService.getActiveIndex();return void this.panel.changeValueFromSelect(this.datePickerService.value[Z],!0)}this.updateInputValue(),this.datePickerService.emitValue$.next()}else this.datePickerService.setValue(this.datePickerService.initialValue),this.close()}onClickInputBox(Z){Z.stopPropagation(),this.focus(),this.isOpenHandledByUser()||this.open()}onOverlayKeydown(Z){Z.keyCode===x.hY&&this.datePickerService.initValue()}onPositionChange(Z){this.currentPositionX=Z.connectionPair.originX,this.currentPositionY=Z.connectionPair.originY,this.cdr.detectChanges()}onClickClear(Z){Z.preventDefault(),Z.stopPropagation(),this.datePickerService.initValue(!0),this.datePickerService.emitValue$.next()}updateInputValue(){const Z=this.datePickerService.value;this.inputValue=this.isRange?Z?Z.map(dt=>this.formatValue(dt)):["",""]:this.formatValue(Z),this.cdr.markForCheck()}formatValue(Z){return this.dateHelper.format(Z&&Z.nativeDate,this.nzFormat)}onInputChange(Z,dt=!1){if(!this.platform.TRIDENT&&this.document.activeElement===this.getInput(this.datePickerService.activeInput)&&!this.realOpenState)return void this.open();const vt=this.checkValidDate(Z);vt&&this.realOpenState&&this.panel.changeValueFromSelect(vt,dt)}onKeyupEnter(Z){this.onInputChange(Z.target.value,!0)}checkValidDate(Z){const dt=new g.Yp(this.dateHelper.parseDate(Z,this.nzFormat));return dt.isValid()&&Z===this.dateHelper.format(dt.nativeDate,this.nzFormat)?dt:null}getPlaceholder(Z){return this.isRange?this.nzPlaceHolder[this.datePickerService.getActiveIndex(Z)]:this.nzPlaceHolder}isEmptyValue(Z){return null===Z||(this.isRange?!Z||!Array.isArray(Z)||Z.every(dt=>!dt):!Z)}isOpenHandledByUser(){return void 0!==this.nzOpen}constructor(Z,dt,vt,$t,yn,In,yi,yo,io,_o,Yi,ts,Lo,_i,fs,$o){this.nzConfigService=Z,this.datePickerService=dt,this.i18n=vt,this.cdr=$t,this.renderer=yn,this.ngZone=In,this.elementRef=yi,this.dateHelper=yo,this.nzResizeObserver=io,this.platform=_o,this.destroy$=Yi,this.directionality=Lo,this.noAnimation=_i,this.nzFormStatusService=fs,this.nzFormNoStatusService=$o,this._nzModuleName="datePicker",this.isRange=!1,this.dir="ltr",this.statusCls={},this.status="",this.hasFeedback=!1,this.panelMode="date",this.isCustomPlaceHolder=!1,this.isCustomFormat=!1,this.showTime=!1,this.isNzDisableFirstChange=!0,this.nzAllowClear=!0,this.nzAutoFocus=!1,this.nzDisabled=!1,this.nzBorderless=!1,this.nzInputReadOnly=!1,this.nzInline=!1,this.nzPlaceHolder="",this.nzPopupStyle=to,this.nzSize="default",this.nzStatus="",this.nzShowToday=!0,this.nzMode="date",this.nzShowNow=!0,this.nzDefaultPickerValue=null,this.nzSeparator=void 0,this.nzSuffixIcon="calendar",this.nzBackdrop=!1,this.nzId=null,this.nzPlacement="bottomLeft",this.nzShowWeekNumber=!1,this.nzOnPanelChange=new i.vpe,this.nzOnCalendarChange=new i.vpe,this.nzOnOk=new i.vpe,this.nzOnOpenChange=new i.vpe,this.inputSize=12,this.prefixCls=Kt,this.activeBarStyle={},this.overlayOpen=!1,this.overlayPositions=[...M.bw],this.currentPositionX="start",this.currentPositionY="bottom",this.onChangeFn=()=>{},this.onTouchedFn=()=>{},this.document=ts,this.origin=new n.xu(this.elementRef)}ngOnInit(){this.nzFormStatusService?.formStatusChanges.pipe((0,F.x)((Z,dt)=>Z.status===dt.status&&Z.hasFeedback===dt.hasFeedback),(0,W.M)(this.nzFormNoStatusService?this.nzFormNoStatusService.noFormStatus:(0,A.of)(!1)),(0,K.U)(([{status:Z,hasFeedback:dt},vt])=>({status:vt?"":Z,hasFeedback:dt})),(0,k.R)(this.destroy$)).subscribe(({status:Z,hasFeedback:dt})=>{this.setStatusStyles(Z,dt)}),this.nzLocale||this.i18n.localeChange.pipe((0,k.R)(this.destroy$)).subscribe(()=>this.setLocale()),this.datePickerService.isRange=this.isRange,this.datePickerService.initValue(!0),this.datePickerService.emitValue$.pipe((0,k.R)(this.destroy$)).subscribe(()=>{const Z=this.showTime?"second":"day",dt=this.datePickerService.value,vt=this.datePickerService.initialValue;if(!this.isRange&&dt?.isSame(vt?.nativeDate,Z))return this.onTouchedFn(),this.close();if(this.isRange){const[$t,yn]=vt,[In,yi]=dt;if($t?.isSame(In?.nativeDate,Z)&&yn?.isSame(yi?.nativeDate,Z))return this.onTouchedFn(),this.close()}if(this.datePickerService.initialValue=(0,g.ky)(dt),this.isRange){const $t=dt;this.onChangeFn($t.length?[$t[0]?.nativeDate??null,$t[1]?.nativeDate??null]:[])}else this.onChangeFn(dt?dt.nativeDate:null);this.onTouchedFn(),this.close()}),this.directionality.change?.pipe((0,k.R)(this.destroy$)).subscribe(Z=>{this.dir=Z,this.cdr.detectChanges()}),this.dir=this.directionality.value,this.inputValue=this.isRange?["",""]:"",this.setModeAndFormat(),this.datePickerService.valueChange$.pipe((0,k.R)(this.destroy$)).subscribe(()=>{this.updateInputValue()})}ngOnChanges(Z){const{nzStatus:dt,nzPlacement:vt}=Z;Z.nzPopupStyle&&(this.nzPopupStyle=this.nzPopupStyle?{...this.nzPopupStyle,...to}:to),Z.nzPlaceHolder?.currentValue&&(this.isCustomPlaceHolder=!0),Z.nzFormat?.currentValue&&(this.isCustomFormat=!0),Z.nzLocale&&this.setDefaultPlaceHolder(),Z.nzRenderExtraFooter&&(this.extraFooter=(0,d.rw)(this.nzRenderExtraFooter)),Z.nzMode&&(this.setDefaultPlaceHolder(),this.setModeAndFormat()),dt&&this.setStatusStyles(this.nzStatus,this.hasFeedback),vt&&this.setPlacement(this.nzPlacement)}setModeAndFormat(){const Z={year:"yyyy",month:"yyyy-MM",week:"YYYY-ww",date:this.nzShowTime?"yyyy-MM-dd HH:mm:ss":"yyyy-MM-dd"};this.nzMode||(this.nzMode="date"),this.panelMode=this.isRange?[this.nzMode,this.nzMode]:this.nzMode,this.isCustomFormat||(this.nzFormat=Z[this.nzMode]),this.inputSize=Math.max(10,this.nzFormat.length)+2,this.updateInputValue()}onOpenChange(Z){this.nzOnOpenChange.emit(Z)}writeValue(Z){this.setValue(Z),this.cdr.markForCheck()}registerOnChange(Z){this.onChangeFn=Z}registerOnTouched(Z){this.onTouchedFn=Z}setDisabledState(Z){this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||Z,this.cdr.markForCheck(),this.isNzDisableFirstChange=!1}setLocale(){this.nzLocale=this.i18n.getLocaleData("DatePicker",{}),this.setDefaultPlaceHolder(),this.cdr.markForCheck()}setDefaultPlaceHolder(){if(!this.isCustomPlaceHolder&&this.nzLocale){const Z={year:this.getPropertyOfLocale("yearPlaceholder"),month:this.getPropertyOfLocale("monthPlaceholder"),week:this.getPropertyOfLocale("weekPlaceholder"),date:this.getPropertyOfLocale("placeholder")},dt={year:this.getPropertyOfLocale("rangeYearPlaceholder"),month:this.getPropertyOfLocale("rangeMonthPlaceholder"),week:this.getPropertyOfLocale("rangeWeekPlaceholder"),date:this.getPropertyOfLocale("rangePlaceholder")};this.nzPlaceHolder=this.isRange?dt[this.nzMode]:Z[this.nzMode]}}getPropertyOfLocale(Z){return this.nzLocale.lang[Z]||this.i18n.getLocaleData(`DatePicker.lang.${Z}`)}setValue(Z){const dt=this.datePickerService.makeValue(Z);this.datePickerService.setValue(dt),this.datePickerService.initialValue=(0,g.ky)(dt),this.cdr.detectChanges()}renderClass(Z){Z?this.renderer.addClass(this.elementRef.nativeElement,"ant-picker-focused"):this.renderer.removeClass(this.elementRef.nativeElement,"ant-picker-focused")}onPanelModeChange(Z){this.nzOnPanelChange.emit(Z)}onCalendarChange(Z){if(this.isRange&&Array.isArray(Z)){const dt=Z.filter(vt=>vt instanceof g.Yp).map(vt=>vt.nativeDate);this.nzOnCalendarChange.emit(dt)}}onResultOk(){if(this.isRange){const Z=this.datePickerService.value;this.nzOnOk.emit(Z.length?[Z[0]?.nativeDate||null,Z[1]?.nativeDate||null]:[])}else this.nzOnOk.emit(this.datePickerService.value?this.datePickerService.value.nativeDate:null)}setStatusStyles(Z,dt){this.status=Z,this.hasFeedback=dt,this.cdr.markForCheck(),this.statusCls=(0,d.Zu)(this.prefixCls,Z,dt),Object.keys(this.statusCls).forEach(vt=>{this.statusCls[vt]?this.renderer.addClass(this.elementRef.nativeElement,vt):this.renderer.removeClass(this.elementRef.nativeElement,vt)})}setPlacement(Z){const dt=M.dz[Z];this.overlayPositions=[dt,...M.bw],this.currentPositionX=dt.originX,this.currentPositionY=dt.originY}static#e=this.\u0275fac=function(dt){return new(dt||rt)(i.Y36(Y.jY),i.Y36(Un),i.Y36(p.wi),i.Y36(i.sBO),i.Y36(i.Qsj),i.Y36(i.R0b),i.Y36(i.SBq),i.Y36(p.mx),i.Y36(H.D3),i.Y36(j.t4),i.Y36(G.kn),i.Y36(t.K0),i.Y36(e.Is,8),i.Y36(u.P,9),i.Y36(E.kH,8),i.Y36(E.yW,8))};static#t=this.\u0275cmp=i.Xpm({type:rt,selectors:[["nz-date-picker"],["nz-week-picker"],["nz-month-picker"],["nz-year-picker"],["nz-range-picker"]],viewQuery:function(dt,vt){if(1&dt&&(i.Gf(n.pI,5),i.Gf(Jn,5),i.Gf(Hi,5),i.Gf(qi,5),i.Gf(Pi,5)),2&dt){let $t;i.iGM($t=i.CRH())&&(vt.cdkConnectedOverlay=$t.first),i.iGM($t=i.CRH())&&(vt.panel=$t.first),i.iGM($t=i.CRH())&&(vt.separatorElement=$t.first),i.iGM($t=i.CRH())&&(vt.pickerInput=$t.first),i.iGM($t=i.CRH())&&(vt.rangePickerInputs=$t)}},hostVars:16,hostBindings:function(dt,vt){1&dt&&i.NdJ("click",function(yn){return vt.onClickInputBox(yn)}),2&dt&&i.ekj("ant-picker",!0)("ant-picker-range",vt.isRange)("ant-picker-large","large"===vt.nzSize)("ant-picker-small","small"===vt.nzSize)("ant-picker-disabled",vt.nzDisabled)("ant-picker-rtl","rtl"===vt.dir)("ant-picker-borderless",vt.nzBorderless)("ant-picker-inline",vt.nzInline)},inputs:{nzAllowClear:"nzAllowClear",nzAutoFocus:"nzAutoFocus",nzDisabled:"nzDisabled",nzBorderless:"nzBorderless",nzInputReadOnly:"nzInputReadOnly",nzInline:"nzInline",nzOpen:"nzOpen",nzDisabledDate:"nzDisabledDate",nzLocale:"nzLocale",nzPlaceHolder:"nzPlaceHolder",nzPopupStyle:"nzPopupStyle",nzDropdownClassName:"nzDropdownClassName",nzSize:"nzSize",nzStatus:"nzStatus",nzFormat:"nzFormat",nzDateRender:"nzDateRender",nzDisabledTime:"nzDisabledTime",nzRenderExtraFooter:"nzRenderExtraFooter",nzShowToday:"nzShowToday",nzMode:"nzMode",nzShowNow:"nzShowNow",nzRanges:"nzRanges",nzDefaultPickerValue:"nzDefaultPickerValue",nzSeparator:"nzSeparator",nzSuffixIcon:"nzSuffixIcon",nzBackdrop:"nzBackdrop",nzId:"nzId",nzPlacement:"nzPlacement",nzShowWeekNumber:"nzShowWeekNumber",nzShowTime:"nzShowTime"},outputs:{nzOnPanelChange:"nzOnPanelChange",nzOnCalendarChange:"nzOnCalendarChange",nzOnOk:"nzOnOk",nzOnOpenChange:"nzOnOpenChange"},exportAs:["nzDatePicker"],features:[i._Bn([G.kn,Un,{provide:l.JU,multi:!0,useExisting:(0,i.Gpc)(()=>rt)}]),i.TTD],decls:8,vars:7,consts:[[4,"ngIf","ngIfElse"],["tplRangeInput",""],["tplRightRest",""],["inlineMode",""],["cdkConnectedOverlay","","nzConnectedOverlay","",3,"cdkConnectedOverlayHasBackdrop","cdkConnectedOverlayOrigin","cdkConnectedOverlayOpen","cdkConnectedOverlayPositions","cdkConnectedOverlayTransformOriginOn","positionChange","detach","overlayKeydown"],[3,"class",4,"ngIf"],[4,"ngIf"],["autocomplete","off",3,"disabled","readOnly","ngModel","placeholder","size","ngModelChange","focus","focusout","keyup.enter"],["pickerInput",""],[4,"ngTemplateOutlet"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],["separatorElement",""],[4,"nzStringTemplateOutlet"],["defaultSeparator",""],["nz-icon","","nzType","swap-right","nzTheme","outline"],["autocomplete","off",3,"disabled","readOnly","size","ngModel","placeholder","click","focusout","focus","keyup.enter","ngModelChange"],["rangePickerInput",""],[3,"ngStyle"],[3,"class","click",4,"ngIf"],[3,"status",4,"ngIf"],[3,"click"],["nz-icon","","nzType","close-circle","nzTheme","fill"],["nz-icon","",3,"nzType"],[3,"status"],[3,"isRange","inline","defaultPickerValue","showWeek","panelMode","locale","showToday","showNow","showTime","dateRender","disabledDate","disabledTime","extraFooter","ranges","dir","panelModeChange","calendarChange","resultOk"],[1,"ant-picker-wrapper",2,"position","relative",3,"nzNoAnimation"]],template:function(dt,vt){if(1&dt&&(i.YNc(0,Qt,3,2,"ng-container",0),i.YNc(1,gn,2,6,"ng-template",null,1,i.W1O),i.YNc(3,St,5,10,"ng-template",null,2,i.W1O),i.YNc(5,gt,2,36,"ng-template",null,3,i.W1O),i.YNc(7,Nt,2,3,"ng-template",4),i.NdJ("positionChange",function(yn){return vt.onPositionChange(yn)})("detach",function(){return vt.close()})("overlayKeydown",function(yn){return vt.onOverlayKeydown(yn)})),2&dt){const $t=i.MAs(6);i.Q6J("ngIf",!vt.nzInline)("ngIfElse",$t),i.xp6(7),i.Q6J("cdkConnectedOverlayHasBackdrop",vt.nzBackdrop)("cdkConnectedOverlayOrigin",vt.origin)("cdkConnectedOverlayOpen",vt.realOpenState)("cdkConnectedOverlayPositions",vt.overlayPositions)("cdkConnectedOverlayTransformOriginOn",".ant-picker-wrapper")}},dependencies:[e.Lv,t.O5,t.tP,t.PC,l.Fj,l.JJ,l.On,n.pI,h.Ls,M.hQ,u.P,E.w_,z.f,f.w,Jn],encapsulation:2,data:{animation:[_e.mF]},changeDetection:0})}return(0,T.gn)([(0,d.yF)()],rt.prototype,"nzAllowClear",void 0),(0,T.gn)([(0,d.yF)()],rt.prototype,"nzAutoFocus",void 0),(0,T.gn)([(0,d.yF)()],rt.prototype,"nzDisabled",void 0),(0,T.gn)([(0,d.yF)()],rt.prototype,"nzBorderless",void 0),(0,T.gn)([(0,d.yF)()],rt.prototype,"nzInputReadOnly",void 0),(0,T.gn)([(0,d.yF)()],rt.prototype,"nzInline",void 0),(0,T.gn)([(0,d.yF)()],rt.prototype,"nzOpen",void 0),(0,T.gn)([(0,d.yF)()],rt.prototype,"nzShowToday",void 0),(0,T.gn)([(0,d.yF)()],rt.prototype,"nzShowNow",void 0),(0,T.gn)([(0,Y.oS)()],rt.prototype,"nzSeparator",void 0),(0,T.gn)([(0,Y.oS)()],rt.prototype,"nzSuffixIcon",void 0),(0,T.gn)([(0,Y.oS)()],rt.prototype,"nzBackdrop",void 0),(0,T.gn)([(0,d.yF)()],rt.prototype,"nzShowWeekNumber",void 0),rt})(),ji=(()=>{class rt{static#e=this.\u0275fac=function(dt){return new(dt||rt)};static#t=this.\u0275mod=i.oAB({type:rt});static#n=this.\u0275inj=i.cJS({imports:[t.ez,l.u5,p.YI,v.wY,z.T]})}return rt})(),Ro=(()=>{class rt{constructor(Z){this.datePicker=Z,this.datePicker.nzMode="month"}static#e=this.\u0275fac=function(dt){return new(dt||rt)(i.Y36(no,9))};static#t=this.\u0275dir=i.lG2({type:rt,selectors:[["nz-month-picker"]],exportAs:["nzMonthPicker"]})}return rt})(),Fi=(()=>{class rt{constructor(Z){this.datePicker=Z,this.datePicker.isRange=!0}static#e=this.\u0275fac=function(dt){return new(dt||rt)(i.Y36(no,9))};static#t=this.\u0275dir=i.lG2({type:rt,selectors:[["nz-range-picker"]],exportAs:["nzRangePicker"]})}return rt})(),lo=(()=>{class rt{constructor(Z){this.datePicker=Z,this.datePicker.nzMode="week"}static#e=this.\u0275fac=function(dt){return new(dt||rt)(i.Y36(no,9))};static#t=this.\u0275dir=i.lG2({type:rt,selectors:[["nz-week-picker"]],exportAs:["nzWeekPicker"]})}return rt})(),Ai=(()=>{class rt{constructor(Z){this.datePicker=Z,this.datePicker.nzMode="year"}static#e=this.\u0275fac=function(dt){return new(dt||rt)(i.Y36(no,9))};static#t=this.\u0275dir=i.lG2({type:rt,selectors:[["nz-year-picker"]],exportAs:["nzYearPicker"]})}return rt})(),Os=(()=>{class rt{static#e=this.\u0275fac=function(dt){return new(dt||rt)};static#t=this.\u0275mod=i.oAB({type:rt});static#n=this.\u0275inj=i.cJS({imports:[e.vT,t.ez,l.u5,n.U8,ji,h.PV,M.e4,u.g,E.mJ,z.T,v.wY,C.sL,ji]})}return rt})()},66987:(nt,I,o)=>{"use strict";o.d(I,{S:()=>M,g:()=>z});var e=o(97582),n=o(65879),t=o(27754),i=o(96814),l=o(8324),C=o(49388);function E(h,v){if(1&h&&(n.ynx(0),n._uU(1),n.BQk()),2&h){const g=n.oxw(2);n.xp6(1),n.Oqu(g.nzText)}}function u(h,v){if(1&h&&(n.TgZ(0,"span",1),n.YNc(1,E,2,1,"ng-container",2),n.qZA()),2&h){const g=n.oxw();n.xp6(1),n.Q6J("nzStringTemplateOutlet",g.nzText)}}let z=(()=>{class h{constructor(){this.nzType="horizontal",this.nzOrientation="center",this.nzDashed=!1,this.nzPlain=!1}static#e=this.\u0275fac=function(d){return new(d||h)};static#t=this.\u0275cmp=n.Xpm({type:h,selectors:[["nz-divider"]],hostAttrs:[1,"ant-divider"],hostVars:16,hostBindings:function(d,p){2&d&&n.ekj("ant-divider-horizontal","horizontal"===p.nzType)("ant-divider-vertical","vertical"===p.nzType)("ant-divider-with-text",p.nzText)("ant-divider-plain",p.nzPlain)("ant-divider-with-text-left",p.nzText&&"left"===p.nzOrientation)("ant-divider-with-text-right",p.nzText&&"right"===p.nzOrientation)("ant-divider-with-text-center",p.nzText&&"center"===p.nzOrientation)("ant-divider-dashed",p.nzDashed)},inputs:{nzText:"nzText",nzType:"nzType",nzOrientation:"nzOrientation",nzDashed:"nzDashed",nzPlain:"nzPlain"},exportAs:["nzDivider"],decls:1,vars:1,consts:[["class","ant-divider-inner-text",4,"ngIf"],[1,"ant-divider-inner-text"],[4,"nzStringTemplateOutlet"]],template:function(d,p){1&d&&n.YNc(0,u,2,1,"span",0),2&d&&n.Q6J("ngIf",p.nzText)},dependencies:[i.O5,l.f],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,t.yF)()],h.prototype,"nzDashed",void 0),(0,e.gn)([(0,t.yF)()],h.prototype,"nzPlain",void 0),h})(),M=(()=>{class h{static#e=this.\u0275fac=function(d){return new(d||h)};static#t=this.\u0275mod=n.oAB({type:h});static#n=this.\u0275inj=n.cJS({imports:[C.vT,i.ez,l.T]})}return h})()},43389:(nt,I,o)=>{"use strict";o.d(I,{BL:()=>xe,SQ:()=>ne,Vz:()=>Q,ai:()=>ae,lB:()=>be});var e=o(65879),n=o(97582),t=o(36028),i=o(33651),l=o(68484),C=o(96814),E=o(78645),u=o(59773),z=o(83064),M=o(27754),h=o(4300),v=o(49388),g=o(90551),d=o(8324),p=o(331);const f=["drawerTemplate"];function y(Me,Ye){if(1&Me){const q=e.EpF();e.TgZ(0,"div",11),e.NdJ("click",function(){e.CHM(q);const ee=e.oxw(2);return e.KtG(ee.maskClick())}),e.qZA()}if(2&Me){const q=e.oxw(2);e.Q6J("ngStyle",q.nzMaskStyle)}}function T(Me,Ye){if(1&Me&&(e.ynx(0),e._UZ(1,"span",19),e.BQk()),2&Me){const q=Ye.$implicit;e.xp6(1),e.Q6J("nzType",q)}}function x(Me,Ye){if(1&Me){const q=e.EpF();e.TgZ(0,"button",17),e.NdJ("click",function(){e.CHM(q);const ee=e.oxw(3);return e.KtG(ee.closeClick())}),e.YNc(1,T,2,1,"ng-container",18),e.qZA()}if(2&Me){const q=e.oxw(3);e.xp6(1),e.Q6J("nzStringTemplateOutlet",q.nzCloseIcon)}}function D(Me,Ye){if(1&Me&&(e.ynx(0),e._UZ(1,"div",21),e.BQk()),2&Me){const q=e.oxw(4);e.xp6(1),e.Q6J("innerHTML",q.nzTitle,e.oJD)}}function _(Me,Ye){if(1&Me&&(e.TgZ(0,"div",20),e.YNc(1,D,2,1,"ng-container",18),e.qZA()),2&Me){const q=e.oxw(3);e.xp6(1),e.Q6J("nzStringTemplateOutlet",q.nzTitle)}}function P(Me,Ye){if(1&Me&&(e.ynx(0),e._UZ(1,"div",21),e.BQk()),2&Me){const q=e.oxw(4);e.xp6(1),e.Q6J("innerHTML",q.nzExtra,e.oJD)}}function O(Me,Ye){if(1&Me&&(e.TgZ(0,"div",22),e.YNc(1,P,2,1,"ng-container",18),e.qZA()),2&Me){const q=e.oxw(3);e.xp6(1),e.Q6J("nzStringTemplateOutlet",q.nzExtra)}}function A(Me,Ye){if(1&Me&&(e.TgZ(0,"div",12)(1,"div",13),e.YNc(2,x,2,1,"button",14),e.YNc(3,_,2,1,"div",15),e.qZA(),e.YNc(4,O,2,1,"div",16),e.qZA()),2&Me){const q=e.oxw(2);e.ekj("ant-drawer-header-close-only",!q.nzTitle),e.xp6(2),e.Q6J("ngIf",q.nzClosable),e.xp6(1),e.Q6J("ngIf",q.nzTitle),e.xp6(1),e.Q6J("ngIf",q.nzExtra)}}function k(Me,Ye){}function F(Me,Ye){1&Me&&e.GkF(0)}function W(Me,Ye){if(1&Me&&(e.ynx(0),e.YNc(1,F,1,0,"ng-container",24),e.BQk()),2&Me){const q=e.oxw(3);e.xp6(1),e.Q6J("ngTemplateOutlet",q.nzContent)("ngTemplateOutletContext",q.templateContext)}}function K(Me,Ye){if(1&Me&&(e.ynx(0),e.YNc(1,W,2,2,"ng-container",23),e.BQk()),2&Me){const q=e.oxw(2);e.xp6(1),e.Q6J("ngIf",q.isTemplateRef(q.nzContent))}}function _e(Me,Ye){}function Y(Me,Ye){if(1&Me&&(e.ynx(0),e.YNc(1,_e,0,0,"ng-template",25),e.BQk()),2&Me){const q=e.oxw(3);e.xp6(1),e.Q6J("ngTemplateOutlet",q.contentFromContentChild)}}function G(Me,Ye){if(1&Me&&e.YNc(0,Y,2,1,"ng-container",23),2&Me){const q=e.oxw(2);e.Q6J("ngIf",q.contentFromContentChild&&(q.isOpen||q.inAnimation))}}function H(Me,Ye){if(1&Me&&(e.ynx(0),e._UZ(1,"div",21),e.BQk()),2&Me){const q=e.oxw(3);e.xp6(1),e.Q6J("innerHTML",q.nzFooter,e.oJD)}}function j(Me,Ye){if(1&Me&&(e.TgZ(0,"div",26),e.YNc(1,H,2,1,"ng-container",18),e.qZA()),2&Me){const q=e.oxw(2);e.xp6(1),e.Q6J("nzStringTemplateOutlet",q.nzFooter)}}function te(Me,Ye){if(1&Me&&(e.TgZ(0,"div",1),e.YNc(1,y,1,1,"div",2),e.TgZ(2,"div")(3,"div",3)(4,"div",4),e.YNc(5,A,5,5,"div",5),e.TgZ(6,"div",6),e.YNc(7,k,0,0,"ng-template",7),e.YNc(8,K,2,1,"ng-container",8),e.YNc(9,G,1,1,"ng-template",null,9,e.W1O),e.qZA(),e.YNc(11,j,2,1,"div",10),e.qZA()()()()),2&Me){const q=e.MAs(10),ye=e.oxw();e.Udp("transform",ye.offsetTransform)("transition",ye.placementChanging?"none":null)("z-index",ye.nzZIndex),e.ekj("ant-drawer-rtl","rtl"===ye.dir)("ant-drawer-open",ye.isOpen)("no-mask",!ye.nzMask)("ant-drawer-top","top"===ye.nzPlacement)("ant-drawer-bottom","bottom"===ye.nzPlacement)("ant-drawer-right","right"===ye.nzPlacement)("ant-drawer-left","left"===ye.nzPlacement),e.Q6J("nzNoAnimation",ye.nzNoAnimation),e.xp6(1),e.Q6J("ngIf",ye.nzMask),e.xp6(1),e.Gre("ant-drawer-content-wrapper ",ye.nzWrapClassName,""),e.Udp("width",ye.width)("height",ye.height)("transform",ye.transform)("transition",ye.placementChanging?"none":null),e.xp6(2),e.Udp("height",ye.isLeftOrRight?"100%":null),e.xp6(1),e.Q6J("ngIf",ye.nzTitle||ye.nzClosable),e.xp6(1),e.Q6J("ngStyle",ye.nzBodyStyle),e.xp6(2),e.Q6J("ngIf",ye.nzContent)("ngIfElse",q),e.xp6(3),e.Q6J("ngIf",ye.nzFooter)}}let ne=(()=>{class Me{constructor(q){this.templateRef=q}static#e=this.\u0275fac=function(ye){return new(ye||Me)(e.Y36(e.Rgc))};static#t=this.\u0275dir=e.lG2({type:Me,selectors:[["","nzDrawerContent",""]],exportAs:["nzDrawerContent"]})}return Me})();class be{}let Q=(()=>{class Me extends be{set nzVisible(q){this.isOpen=q}get nzVisible(){return this.isOpen}get offsetTransform(){if(!this.isOpen||this.nzOffsetX+this.nzOffsetY===0)return null;switch(this.nzPlacement){case"left":return`translateX(${this.nzOffsetX}px)`;case"right":return`translateX(-${this.nzOffsetX}px)`;case"top":return`translateY(${this.nzOffsetY}px)`;case"bottom":return`translateY(-${this.nzOffsetY}px)`}}get transform(){if(this.isOpen)return null;switch(this.nzPlacement){case"left":return"translateX(-100%)";case"right":return"translateX(100%)";case"top":return"translateY(-100%)";case"bottom":return"translateY(100%)"}}get width(){return this.isLeftOrRight?(0,M.WX)(void 0===this.nzWidth?"large"===this.nzSize?736:378:this.nzWidth):null}get height(){return this.isLeftOrRight?null:(0,M.WX)(void 0===this.nzHeight?"large"===this.nzSize?736:378:this.nzHeight)}get isLeftOrRight(){return"left"===this.nzPlacement||"right"===this.nzPlacement}get afterOpen(){return this.nzAfterOpen.asObservable()}get afterClose(){return this.nzAfterClose.asObservable()}isTemplateRef(q){return q instanceof e.Rgc}constructor(q,ye,ee,Be,Re,ct,Ae,Mt,je,ot,mt){super(),this.cdr=q,this.document=ye,this.nzConfigService=ee,this.renderer=Be,this.overlay=Re,this.injector=ct,this.changeDetectorRef=Ae,this.focusTrapFactory=Mt,this.viewContainerRef=je,this.overlayKeyboardDispatcher=ot,this.directionality=mt,this._nzModuleName="drawer",this.nzCloseIcon="close",this.nzClosable=!0,this.nzMaskClosable=!0,this.nzMask=!0,this.nzCloseOnNavigation=!0,this.nzNoAnimation=!1,this.nzKeyboard=!0,this.nzPlacement="right",this.nzSize="default",this.nzMaskStyle={},this.nzBodyStyle={},this.nzZIndex=1e3,this.nzOffsetX=0,this.nzOffsetY=0,this.componentInstance=null,this.nzOnViewInit=new e.vpe,this.nzOnClose=new e.vpe,this.nzVisibleChange=new e.vpe,this.destroy$=new E.x,this.placementChanging=!1,this.placementChangeTimeoutId=-1,this.isOpen=!1,this.inAnimation=!1,this.templateContext={$implicit:void 0,drawerRef:this},this.nzAfterOpen=new E.x,this.nzAfterClose=new E.x,this.nzDirection=void 0,this.dir="ltr"}ngOnInit(){this.directionality.change?.pipe((0,u.R)(this.destroy$)).subscribe(q=>{this.dir=q,this.cdr.detectChanges()}),this.dir=this.nzDirection||this.directionality.value,this.attachOverlay(),this.updateOverlayStyle(),this.updateBodyOverflow(),this.templateContext={$implicit:this.nzContentParams,drawerRef:this},this.changeDetectorRef.detectChanges()}ngAfterViewInit(){this.attachBodyContent(),this.nzOnViewInit.observers.length&&setTimeout(()=>{this.nzOnViewInit.emit()})}ngOnChanges(q){const{nzPlacement:ye,nzVisible:ee}=q;ee&&(q.nzVisible.currentValue?this.open():this.close()),ye&&!ye.isFirstChange()&&this.triggerPlacementChangeCycleOnce()}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete(),clearTimeout(this.placementChangeTimeoutId),this.disposeOverlay()}getAnimationDuration(){return this.nzNoAnimation?0:300}triggerPlacementChangeCycleOnce(){this.nzNoAnimation||(this.placementChanging=!0,this.changeDetectorRef.markForCheck(),clearTimeout(this.placementChangeTimeoutId),this.placementChangeTimeoutId=setTimeout(()=>{this.placementChanging=!1,this.changeDetectorRef.markForCheck()},this.getAnimationDuration()))}close(q){this.isOpen=!1,this.inAnimation=!0,this.nzVisibleChange.emit(!1),this.updateOverlayStyle(),this.overlayKeyboardDispatcher.remove(this.overlayRef),this.changeDetectorRef.detectChanges(),setTimeout(()=>{this.updateBodyOverflow(),this.restoreFocus(),this.inAnimation=!1,this.nzAfterClose.next(q),this.nzAfterClose.complete(),this.componentInstance=null},this.getAnimationDuration())}open(){this.attachOverlay(),this.isOpen=!0,this.inAnimation=!0,this.nzVisibleChange.emit(!0),this.overlayKeyboardDispatcher.add(this.overlayRef),this.updateOverlayStyle(),this.updateBodyOverflow(),this.savePreviouslyFocusedElement(),this.trapFocus(),this.changeDetectorRef.detectChanges(),setTimeout(()=>{this.inAnimation=!1,this.changeDetectorRef.detectChanges(),this.nzAfterOpen.next()},this.getAnimationDuration())}getContentComponent(){return this.componentInstance}closeClick(){this.nzOnClose.emit()}maskClick(){this.nzMaskClosable&&this.nzMask&&this.nzOnClose.emit()}attachBodyContent(){if(this.bodyPortalOutlet.dispose(),this.nzContent instanceof e.DyG){const q=e.zs3.create({parent:this.injector,providers:[{provide:be,useValue:this}]}),ye=new l.C5(this.nzContent,null,q),ee=this.bodyPortalOutlet.attachComponentPortal(ye);this.componentInstance=ee.instance,Object.assign(ee.instance,this.nzContentParams),ee.changeDetectorRef.detectChanges()}}attachOverlay(){this.overlayRef||(this.portal=new l.UE(this.drawerTemplate,this.viewContainerRef),this.overlayRef=this.overlay.create(this.getOverlayConfig())),this.overlayRef&&!this.overlayRef.hasAttached()&&(this.overlayRef.attach(this.portal),this.overlayRef.keydownEvents().pipe((0,u.R)(this.destroy$)).subscribe(q=>{q.keyCode===t.hY&&this.isOpen&&this.nzKeyboard&&this.nzOnClose.emit()}),this.overlayRef.detachments().pipe((0,u.R)(this.destroy$)).subscribe(()=>{this.disposeOverlay()}))}disposeOverlay(){this.overlayRef?.dispose(),this.overlayRef=null}getOverlayConfig(){return new i.X_({disposeOnNavigation:this.nzCloseOnNavigation,positionStrategy:this.overlay.position().global(),scrollStrategy:this.overlay.scrollStrategies.block()})}updateOverlayStyle(){this.overlayRef&&this.overlayRef.overlayElement&&this.renderer.setStyle(this.overlayRef.overlayElement,"pointer-events",this.isOpen?"auto":"none")}updateBodyOverflow(){this.overlayRef&&(this.isOpen?this.overlayRef.getConfig().scrollStrategy.enable():this.overlayRef.getConfig().scrollStrategy.disable())}savePreviouslyFocusedElement(){this.document&&!this.previouslyFocusedElement&&(this.previouslyFocusedElement=this.document.activeElement,this.previouslyFocusedElement&&"function"==typeof this.previouslyFocusedElement.blur&&this.previouslyFocusedElement.blur())}trapFocus(){!this.focusTrap&&this.overlayRef&&this.overlayRef.overlayElement&&(this.focusTrap=this.focusTrapFactory.create(this.overlayRef.overlayElement),this.focusTrap.focusInitialElement())}restoreFocus(){this.previouslyFocusedElement&&"function"==typeof this.previouslyFocusedElement.focus&&this.previouslyFocusedElement.focus(),this.focusTrap&&this.focusTrap.destroy()}static#e=this.\u0275fac=function(ye){return new(ye||Me)(e.Y36(e.sBO),e.Y36(C.K0,8),e.Y36(z.jY),e.Y36(e.Qsj),e.Y36(i.aV),e.Y36(e.zs3),e.Y36(e.sBO),e.Y36(h.qV),e.Y36(e.s_b),e.Y36(i.Vs),e.Y36(v.Is,8))};static#t=this.\u0275cmp=e.Xpm({type:Me,selectors:[["nz-drawer"]],contentQueries:function(ye,ee,Be){if(1&ye&&e.Suo(Be,ne,7,e.Rgc),2&ye){let Re;e.iGM(Re=e.CRH())&&(ee.contentFromContentChild=Re.first)}},viewQuery:function(ye,ee){if(1&ye&&(e.Gf(f,7),e.Gf(l.Pl,5)),2&ye){let Be;e.iGM(Be=e.CRH())&&(ee.drawerTemplate=Be.first),e.iGM(Be=e.CRH())&&(ee.bodyPortalOutlet=Be.first)}},inputs:{nzContent:"nzContent",nzCloseIcon:"nzCloseIcon",nzClosable:"nzClosable",nzMaskClosable:"nzMaskClosable",nzMask:"nzMask",nzCloseOnNavigation:"nzCloseOnNavigation",nzNoAnimation:"nzNoAnimation",nzKeyboard:"nzKeyboard",nzTitle:"nzTitle",nzExtra:"nzExtra",nzFooter:"nzFooter",nzPlacement:"nzPlacement",nzSize:"nzSize",nzMaskStyle:"nzMaskStyle",nzBodyStyle:"nzBodyStyle",nzWrapClassName:"nzWrapClassName",nzWidth:"nzWidth",nzHeight:"nzHeight",nzZIndex:"nzZIndex",nzOffsetX:"nzOffsetX",nzOffsetY:"nzOffsetY",nzVisible:"nzVisible"},outputs:{nzOnViewInit:"nzOnViewInit",nzOnClose:"nzOnClose",nzVisibleChange:"nzVisibleChange"},exportAs:["nzDrawer"],features:[e.qOj,e.TTD],decls:2,vars:0,consts:[["drawerTemplate",""],[1,"ant-drawer",3,"nzNoAnimation"],["class","ant-drawer-mask",3,"ngStyle","click",4,"ngIf"],[1,"ant-drawer-content"],[1,"ant-drawer-wrapper-body"],["class","ant-drawer-header",3,"ant-drawer-header-close-only",4,"ngIf"],[1,"ant-drawer-body",3,"ngStyle"],["cdkPortalOutlet",""],[4,"ngIf","ngIfElse"],["contentElseTemp",""],["class","ant-drawer-footer",4,"ngIf"],[1,"ant-drawer-mask",3,"ngStyle","click"],[1,"ant-drawer-header"],[1,"ant-drawer-header-title"],["aria-label","Close","class","ant-drawer-close","style","--scroll-bar: 0px;",3,"click",4,"ngIf"],["class","ant-drawer-title",4,"ngIf"],["class","ant-drawer-extra",4,"ngIf"],["aria-label","Close",1,"ant-drawer-close",2,"--scroll-bar","0px",3,"click"],[4,"nzStringTemplateOutlet"],["nz-icon","",3,"nzType"],[1,"ant-drawer-title"],[3,"innerHTML"],[1,"ant-drawer-extra"],[4,"ngIf"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"ngTemplateOutlet"],[1,"ant-drawer-footer"]],template:function(ye,ee){1&ye&&e.YNc(0,te,12,40,"ng-template",null,0,e.W1O)},dependencies:[C.O5,C.tP,C.PC,l.Pl,g.Ls,d.f,p.P],encapsulation:2,changeDetection:0})}return(0,n.gn)([(0,M.yF)()],Me.prototype,"nzClosable",void 0),(0,n.gn)([(0,z.oS)(),(0,M.yF)()],Me.prototype,"nzMaskClosable",void 0),(0,n.gn)([(0,z.oS)(),(0,M.yF)()],Me.prototype,"nzMask",void 0),(0,n.gn)([(0,z.oS)(),(0,M.yF)()],Me.prototype,"nzCloseOnNavigation",void 0),(0,n.gn)([(0,M.yF)()],Me.prototype,"nzNoAnimation",void 0),(0,n.gn)([(0,M.yF)()],Me.prototype,"nzKeyboard",void 0),(0,n.gn)([(0,z.oS)()],Me.prototype,"nzDirection",void 0),Me})();class ie{constructor(Ye,q){this.overlay=Ye,this.options=q,this.unsubscribe$=new E.x;const{nzOnCancel:ye,...ee}=this.options;this.overlayRef=this.overlay.create(),this.drawerRef=this.overlayRef.attach(new l.C5(Q)).instance,this.updateOptions(ee),this.drawerRef.savePreviouslyFocusedElement(),this.drawerRef.nzOnViewInit.pipe((0,u.R)(this.unsubscribe$)).subscribe(()=>{this.drawerRef.open()}),this.drawerRef.nzOnClose.subscribe(()=>{ye?ye().then(Be=>{!1!==Be&&this.drawerRef.close()}):this.drawerRef.close()}),this.drawerRef.afterClose.pipe((0,u.R)(this.unsubscribe$)).subscribe(()=>{this.overlayRef.dispose(),this.drawerRef=null,this.unsubscribe$.next(),this.unsubscribe$.complete()})}getInstance(){return this.drawerRef}updateOptions(Ye){Object.assign(this.drawerRef,Ye)}}let ae=(()=>{class Me{constructor(q){this.overlay=q}create(q){return new ie(this.overlay,q).getInstance()}static#e=this.\u0275fac=function(ye){return new(ye||Me)(e.LFG(i.aV))};static#t=this.\u0275prov=e.Yz7({token:Me,factory:Me.\u0275fac})}return Me})(),xe=(()=>{class Me{static#e=this.\u0275fac=function(ye){return new(ye||Me)};static#t=this.\u0275mod=e.oAB({type:Me});static#n=this.\u0275inj=e.cJS({providers:[ae],imports:[v.vT,C.ez,i.U8,l.eL,g.PV,d.T,p.g]})}return Me})()},62787:(nt,I,o)=>{"use strict";o.d(I,{Iw:()=>xe,RR:()=>Q,Ws:()=>le,b1:()=>ie,cm:()=>re,wA:()=>ce});var e=o(97582),n=o(36028),t=o(68484),i=o(65879),l=o(78645),C=o(65619),E=o(63019),u=o(92438),z=o(36232),M=o(52572),h=o(47394),v=o(21441),g=o(37398),d=o(94664),p=o(32181),f=o(29028),y=o(93997),T=o(59773),x=o(81374),D=o(83064),_=o(85448),P=o(27754),O=o(33651),A=o(62831),k=o(49388),F=o(96814),W=o(42840),K=o(331),_e=o(8324),Y=o(90551),G=o(73460),H=o(64194);function j(Me,Ye){if(1&Me){const q=i.EpF();i.TgZ(0,"div",0),i.NdJ("@slideMotion.done",function(ee){i.CHM(q);const Be=i.oxw();return i.KtG(Be.onAnimationEvent(ee))})("mouseenter",function(){i.CHM(q);const ee=i.oxw();return i.KtG(ee.setMouseState(!0))})("mouseleave",function(){i.CHM(q);const ee=i.oxw();return i.KtG(ee.setMouseState(!1))}),i.Hsn(1),i.qZA()}if(2&Me){const q=i.oxw();i.ekj("ant-dropdown-rtl","rtl"===q.dir),i.Q6J("ngClass",q.nzOverlayClassName)("ngStyle",q.nzOverlayStyle)("@slideMotion",void 0)("@.disabled",!(null==q.noAnimation||!q.noAnimation.nzNoAnimation))("nzNoAnimation",null==q.noAnimation?null:q.noAnimation.nzNoAnimation)}}const te=["*"],pe=[_.yW.bottomLeft,_.yW.bottomRight,_.yW.topRight,_.yW.topLeft];let re=(()=>{class Me{setDropdownMenuValue(q,ye){this.nzDropdownMenu&&this.nzDropdownMenu.setValue(q,ye)}constructor(q,ye,ee,Be,Re,ct){this.nzConfigService=q,this.elementRef=ye,this.overlay=ee,this.renderer=Be,this.viewContainerRef=Re,this.platform=ct,this._nzModuleName="dropDown",this.overlayRef=null,this.destroy$=new l.x,this.positionStrategy=this.overlay.position().flexibleConnectedTo(this.elementRef.nativeElement).withLockedPosition().withTransformOriginOn(".ant-dropdown"),this.inputVisible$=new C.X(!1),this.nzTrigger$=new C.X("hover"),this.overlayClose$=new l.x,this.nzDropdownMenu=null,this.nzTrigger="hover",this.nzMatchWidthElement=null,this.nzBackdrop=!1,this.nzClickHide=!0,this.nzDisabled=!1,this.nzVisible=!1,this.nzOverlayClassName="",this.nzOverlayStyle={},this.nzPlacement="bottomLeft",this.nzVisibleChange=new i.vpe}ngAfterViewInit(){if(this.nzDropdownMenu){const q=this.elementRef.nativeElement,ye=(0,E.T)((0,u.R)(q,"mouseenter").pipe((0,v.h)(!0)),(0,u.R)(q,"mouseleave").pipe((0,v.h)(!1))),Be=(0,E.T)(this.nzDropdownMenu.mouseState$,ye),Re=(0,u.R)(q,"click").pipe((0,g.U)(()=>!this.nzVisible)),ct=this.nzTrigger$.pipe((0,d.w)(ot=>"hover"===ot?Be:"click"===ot?Re:z.E)),Ae=this.nzDropdownMenu.descendantMenuItemClick$.pipe((0,p.h)(()=>this.nzClickHide),(0,v.h)(!1)),Mt=(0,E.T)(ct,Ae,this.overlayClose$).pipe((0,p.h)(()=>!this.nzDisabled)),je=(0,E.T)(this.inputVisible$,Mt);(0,M.a)([je,this.nzDropdownMenu.isChildSubMenuOpen$]).pipe((0,g.U)(([ot,mt])=>ot||mt),(0,f.e)(150),(0,y.x)(),(0,p.h)(()=>this.platform.isBrowser),(0,T.R)(this.destroy$)).subscribe(ot=>{const we=(this.nzMatchWidthElement?this.nzMatchWidthElement.nativeElement:q).getBoundingClientRect().width;this.nzVisible!==ot&&this.nzVisibleChange.emit(ot),this.nzVisible=ot,ot?(this.overlayRef?this.overlayRef.getConfig().minWidth=we:(this.overlayRef=this.overlay.create({positionStrategy:this.positionStrategy,minWidth:we,disposeOnNavigation:!0,hasBackdrop:this.nzBackdrop&&"click"===this.nzTrigger,scrollStrategy:this.overlay.scrollStrategies.reposition()}),(0,E.T)(this.overlayRef.backdropClick(),this.overlayRef.detachments(),this.overlayRef.outsidePointerEvents().pipe((0,p.h)(de=>!this.elementRef.nativeElement.contains(de.target))),this.overlayRef.keydownEvents().pipe((0,p.h)(de=>de.keyCode===n.hY&&!(0,n.Vb)(de)))).pipe((0,T.R)(this.destroy$)).subscribe(()=>{this.overlayClose$.next(!1)})),this.positionStrategy.withPositions([_.yW[this.nzPlacement],...pe]),(!this.portal||this.portal.templateRef!==this.nzDropdownMenu.templateRef)&&(this.portal=new t.UE(this.nzDropdownMenu.templateRef,this.viewContainerRef)),this.overlayRef.attach(this.portal)):this.overlayRef&&this.overlayRef.detach()}),this.nzDropdownMenu.animationStateChange$.pipe((0,T.R)(this.destroy$)).subscribe(ot=>{"void"===ot.toState&&(this.overlayRef&&this.overlayRef.dispose(),this.overlayRef=null)})}}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete(),this.overlayRef&&(this.overlayRef.dispose(),this.overlayRef=null)}ngOnChanges(q){const{nzVisible:ye,nzDisabled:ee,nzOverlayClassName:Be,nzOverlayStyle:Re,nzTrigger:ct}=q;if(ct&&this.nzTrigger$.next(this.nzTrigger),ye&&this.inputVisible$.next(this.nzVisible),ee){const Ae=this.elementRef.nativeElement;this.nzDisabled?(this.renderer.setAttribute(Ae,"disabled",""),this.inputVisible$.next(!1)):this.renderer.removeAttribute(Ae,"disabled")}Be&&this.setDropdownMenuValue("nzOverlayClassName",this.nzOverlayClassName),Re&&this.setDropdownMenuValue("nzOverlayStyle",this.nzOverlayStyle)}static#e=this.\u0275fac=function(ye){return new(ye||Me)(i.Y36(D.jY),i.Y36(i.SBq),i.Y36(O.aV),i.Y36(i.Qsj),i.Y36(i.s_b),i.Y36(A.t4))};static#t=this.\u0275dir=i.lG2({type:Me,selectors:[["","nz-dropdown",""]],hostAttrs:[1,"ant-dropdown-trigger"],inputs:{nzDropdownMenu:"nzDropdownMenu",nzTrigger:"nzTrigger",nzMatchWidthElement:"nzMatchWidthElement",nzBackdrop:"nzBackdrop",nzClickHide:"nzClickHide",nzDisabled:"nzDisabled",nzVisible:"nzVisible",nzOverlayClassName:"nzOverlayClassName",nzOverlayStyle:"nzOverlayStyle",nzPlacement:"nzPlacement"},outputs:{nzVisibleChange:"nzVisibleChange"},exportAs:["nzDropdown"],features:[i.TTD]})}return(0,e.gn)([(0,D.oS)(),(0,P.yF)()],Me.prototype,"nzBackdrop",void 0),(0,e.gn)([(0,P.yF)()],Me.prototype,"nzClickHide",void 0),(0,e.gn)([(0,P.yF)()],Me.prototype,"nzDisabled",void 0),(0,e.gn)([(0,P.yF)()],Me.prototype,"nzVisible",void 0),Me})(),be=(()=>{class Me{static#e=this.\u0275fac=function(ye){return new(ye||Me)};static#t=this.\u0275mod=i.oAB({type:Me});static#n=this.\u0275inj=i.cJS({})}return Me})(),le=(()=>{class Me{constructor(){}static#e=this.\u0275fac=function(ye){return new(ye||Me)};static#t=this.\u0275dir=i.lG2({type:Me,selectors:[["a","nz-dropdown",""]],hostAttrs:[1,"ant-dropdown-link"]})}return Me})(),ce=(()=>{class Me{constructor(q,ye,ee){this.renderer=q,this.nzButtonGroupComponent=ye,this.elementRef=ee}ngAfterViewInit(){const q=this.renderer.parentNode(this.elementRef.nativeElement);this.nzButtonGroupComponent&&q&&this.renderer.addClass(q,"ant-dropdown-button")}static#e=this.\u0275fac=function(ye){return new(ye||Me)(i.Y36(i.Qsj),i.Y36(W.fY,9),i.Y36(i.SBq))};static#t=this.\u0275dir=i.lG2({type:Me,selectors:[["","nz-button","","nz-dropdown",""]]})}return Me})(),Q=(()=>{class Me{onAnimationEvent(q){this.animationStateChange$.emit(q)}setMouseState(q){this.mouseState$.next(q)}setValue(q,ye){this[q]=ye,this.cdr.markForCheck()}constructor(q,ye,ee,Be,Re,ct,Ae){this.cdr=q,this.elementRef=ye,this.renderer=ee,this.viewContainerRef=Be,this.nzMenuService=Re,this.directionality=ct,this.noAnimation=Ae,this.mouseState$=new C.X(!1),this.isChildSubMenuOpen$=this.nzMenuService.isChildSubMenuOpen$,this.descendantMenuItemClick$=this.nzMenuService.descendantMenuItemClick$,this.animationStateChange$=new i.vpe,this.nzOverlayClassName="",this.nzOverlayStyle={},this.dir="ltr",this.destroy$=new l.x}ngOnInit(){this.directionality.change?.pipe((0,T.R)(this.destroy$)).subscribe(q=>{this.dir=q,this.cdr.detectChanges()}),this.dir=this.directionality.value}ngAfterContentInit(){this.renderer.removeChild(this.renderer.parentNode(this.elementRef.nativeElement),this.elementRef.nativeElement)}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(ye){return new(ye||Me)(i.Y36(i.sBO),i.Y36(i.SBq),i.Y36(i.Qsj),i.Y36(i.s_b),i.Y36(G.hl),i.Y36(k.Is,8),i.Y36(K.P,9))};static#t=this.\u0275cmp=i.Xpm({type:Me,selectors:[["nz-dropdown-menu"]],viewQuery:function(ye,ee){if(1&ye&&i.Gf(i.Rgc,7),2&ye){let Be;i.iGM(Be=i.CRH())&&(ee.templateRef=Be.first)}},exportAs:["nzDropdownMenu"],features:[i._Bn([G.hl,{provide:G.Cc,useValue:!0}])],ngContentSelectors:te,decls:1,vars:0,consts:[[1,"ant-dropdown",3,"ngClass","ngStyle","nzNoAnimation","mouseenter","mouseleave"]],template:function(ye,ee){1&ye&&(i.F$t(),i.YNc(0,j,2,7,"ng-template"))},dependencies:[F.mk,F.PC,K.P],encapsulation:2,data:{animation:[H.mF]},changeDetection:0})}return Me})(),ie=(()=>{class Me{static#e=this.\u0275fac=function(ye){return new(ye||Me)};static#t=this.\u0275mod=i.oAB({type:Me});static#n=this.\u0275inj=i.cJS({imports:[k.vT,F.ez,O.U8,W.sL,G.ip,Y.PV,K.g,A.ud,_.e4,be,_e.T,G.ip]})}return Me})();const ae=[new O.tR({originX:"start",originY:"top"},{overlayX:"start",overlayY:"top"}),new O.tR({originX:"start",originY:"top"},{overlayX:"start",overlayY:"bottom"}),new O.tR({originX:"start",originY:"top"},{overlayX:"end",overlayY:"bottom"}),new O.tR({originX:"start",originY:"top"},{overlayX:"end",overlayY:"top"})];let xe=(()=>{class Me{constructor(q,ye){this.ngZone=q,this.overlay=ye,this.overlayRef=null,this.closeSubscription=h.w0.EMPTY}create(q,ye){this.close(!0);const{x:ee,y:Be}=q;q instanceof MouseEvent&&q.preventDefault();const Re=this.overlay.position().flexibleConnectedTo({x:ee,y:Be}).withPositions(ae).withTransformOriginOn(".ant-dropdown");return this.overlayRef=this.overlay.create({positionStrategy:Re,disposeOnNavigation:!0,scrollStrategy:this.overlay.scrollStrategies.close()}),this.closeSubscription=new h.w0,this.closeSubscription.add(ye.descendantMenuItemClick$.subscribe(()=>this.close())),this.closeSubscription.add(this.ngZone.runOutsideAngular(()=>(0,E.T)((0,u.R)(document,"click").pipe((0,p.h)(ct=>!!this.overlayRef&&!this.overlayRef.overlayElement.contains(ct.target)),(0,p.h)(ct=>2!==ct.button)),(0,u.R)(document,"keydown").pipe((0,p.h)(ct=>"Escape"===ct.key))).pipe((0,x.P)()).subscribe(()=>this.ngZone.run(()=>this.close())))),this.overlayRef.attach(new t.UE(ye.templateRef,ye.viewContainerRef))}close(q=!1){this.overlayRef&&(this.overlayRef.detach(),q&&this.overlayRef.dispose(),this.overlayRef=null,this.closeSubscription.unsubscribe())}static#e=this.\u0275fac=function(ye){return new(ye||Me)(i.LFG(i.R0b),i.LFG(O.aV))};static#t=this.\u0275prov=i.Yz7({token:Me,factory:Me.\u0275fac,providedIn:be})}return Me})()},60804:(nt,I,o)=>{"use strict";o.d(I,{Xo:()=>te,gB:()=>j,p9:()=>G});var e=o(68484),n=o(65879),t=o(78645),i=o(59773),l=o(27921),C=o(83064),E=o(96814),u=o(12131),z=o(8324),M=o(49388);function h(ne,pe){if(1&ne&&(n.ynx(0),n._UZ(1,"img",5),n.BQk()),2&ne){const re=n.oxw(2);n.xp6(1),n.Q6J("src",re.nzNotFoundImage,n.LSH)("alt",re.isContentString?re.nzNotFoundContent:"empty")}}function v(ne,pe){if(1&ne&&(n.ynx(0),n.YNc(1,h,2,2,"ng-container",4),n.BQk()),2&ne){const re=n.oxw();n.xp6(1),n.Q6J("nzStringTemplateOutlet",re.nzNotFoundImage)}}function g(ne,pe){1&ne&&n._UZ(0,"nz-empty-default")}function d(ne,pe){1&ne&&n._UZ(0,"nz-empty-simple")}function p(ne,pe){if(1&ne&&(n.ynx(0),n._uU(1),n.BQk()),2&ne){const re=n.oxw(2);n.xp6(1),n.hij(" ",re.isContentString?re.nzNotFoundContent:re.locale.description," ")}}function f(ne,pe){if(1&ne&&(n.TgZ(0,"p",6),n.YNc(1,p,2,1,"ng-container",4),n.qZA()),2&ne){const re=n.oxw();n.xp6(1),n.Q6J("nzStringTemplateOutlet",re.nzNotFoundContent)}}function y(ne,pe){if(1&ne&&(n.ynx(0),n._uU(1),n.BQk()),2&ne){const re=n.oxw(2);n.xp6(1),n.hij(" ",re.nzNotFoundFooter," ")}}function T(ne,pe){if(1&ne&&(n.TgZ(0,"div",7),n.YNc(1,y,2,1,"ng-container",4),n.qZA()),2&ne){const re=n.oxw();n.xp6(1),n.Q6J("nzStringTemplateOutlet",re.nzNotFoundFooter)}}function x(ne,pe){1&ne&&n._UZ(0,"nz-empty",6),2&ne&&n.Q6J("nzNotFoundImage","simple")}function D(ne,pe){1&ne&&n._UZ(0,"nz-empty",7),2&ne&&n.Q6J("nzNotFoundImage","simple")}function _(ne,pe){1&ne&&n._UZ(0,"nz-empty")}function P(ne,pe){if(1&ne&&(n.ynx(0,2),n.YNc(1,x,1,1,"nz-empty",3),n.YNc(2,D,1,1,"nz-empty",4),n.YNc(3,_,1,0,"nz-empty",5),n.BQk()),2&ne){const re=n.oxw();n.Q6J("ngSwitch",re.size),n.xp6(1),n.Q6J("ngSwitchCase","normal"),n.xp6(1),n.Q6J("ngSwitchCase","small")}}function O(ne,pe){}function A(ne,pe){if(1&ne&&n.YNc(0,O,0,0,"ng-template",8),2&ne){const re=n.oxw(2);n.Q6J("cdkPortalOutlet",re.contentPortal)}}function k(ne,pe){if(1&ne&&(n.ynx(0),n._uU(1),n.BQk()),2&ne){const re=n.oxw(2);n.xp6(1),n.hij(" ",re.content," ")}}function F(ne,pe){if(1&ne&&(n.ynx(0),n.YNc(1,A,1,1,null,1),n.YNc(2,k,2,1,"ng-container",1),n.BQk()),2&ne){const re=n.oxw();n.xp6(1),n.Q6J("ngIf","string"!==re.contentType),n.xp6(1),n.Q6J("ngIf","string"===re.contentType)}}const W=new n.OlP("nz-empty-component-name");let K=(()=>{class ne{static#e=this.\u0275fac=function(be){return new(be||ne)};static#t=this.\u0275cmp=n.Xpm({type:ne,selectors:[["nz-empty-default"]],exportAs:["nzEmptyDefault"],decls:12,vars:0,consts:[["width","184","height","152","viewBox","0 0 184 152","xmlns","http://www.w3.org/2000/svg",1,"ant-empty-img-default"],["fill","none","fill-rule","evenodd"],["transform","translate(24 31.67)"],["cx","67.797","cy","106.89","rx","67.797","ry","12.668",1,"ant-empty-img-default-ellipse"],["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",1,"ant-empty-img-default-path-1"],["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","transform","translate(13.56)",1,"ant-empty-img-default-path-2"],["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",1,"ant-empty-img-default-path-3"],["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",1,"ant-empty-img-default-path-4"],["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",1,"ant-empty-img-default-path-5"],["transform","translate(149.65 15.383)",1,"ant-empty-img-default-g"],["cx","20.654","cy","3.167","rx","2.849","ry","2.815"],["d","M5.698 5.63H0L2.898.704zM9.259.704h4.985V5.63H9.259z"]],template:function(be,le){1&be&&(n.O4$(),n.TgZ(0,"svg",0)(1,"g",1)(2,"g",2),n._UZ(3,"ellipse",3)(4,"path",4)(5,"path",5)(6,"path",6)(7,"path",7),n.qZA(),n._UZ(8,"path",8),n.TgZ(9,"g",9),n._UZ(10,"ellipse",10)(11,"path",11),n.qZA()()())},encapsulation:2,changeDetection:0})}return ne})(),_e=(()=>{class ne{static#e=this.\u0275fac=function(be){return new(be||ne)};static#t=this.\u0275cmp=n.Xpm({type:ne,selectors:[["nz-empty-simple"]],exportAs:["nzEmptySimple"],decls:6,vars:0,consts:[["width","64","height","41","viewBox","0 0 64 41","xmlns","http://www.w3.org/2000/svg",1,"ant-empty-img-simple"],["transform","translate(0 1)","fill","none","fill-rule","evenodd"],["cx","32","cy","33","rx","32","ry","7",1,"ant-empty-img-simple-ellipse"],["fill-rule","nonzero",1,"ant-empty-img-simple-g"],["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"],["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",1,"ant-empty-img-simple-path"]],template:function(be,le){1&be&&(n.O4$(),n.TgZ(0,"svg",0)(1,"g",1),n._UZ(2,"ellipse",2),n.TgZ(3,"g",3),n._UZ(4,"path",4)(5,"path",5),n.qZA()()())},encapsulation:2,changeDetection:0})}return ne})();const Y=["default","simple"];let G=(()=>{class ne{constructor(re,be){this.i18n=re,this.cdr=be,this.nzNotFoundImage="default",this.isContentString=!1,this.isImageBuildIn=!0,this.destroy$=new t.x}ngOnChanges(re){const{nzNotFoundContent:be,nzNotFoundImage:le}=re;if(be&&(this.isContentString="string"==typeof be.currentValue),le){const ce=le.currentValue||"default";this.isImageBuildIn=Y.findIndex(Q=>Q===ce)>-1}}ngOnInit(){this.i18n.localeChange.pipe((0,i.R)(this.destroy$)).subscribe(()=>{this.locale=this.i18n.getLocaleData("Empty"),this.cdr.markForCheck()})}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(be){return new(be||ne)(n.Y36(u.wi),n.Y36(n.sBO))};static#t=this.\u0275cmp=n.Xpm({type:ne,selectors:[["nz-empty"]],hostAttrs:[1,"ant-empty"],inputs:{nzNotFoundImage:"nzNotFoundImage",nzNotFoundContent:"nzNotFoundContent",nzNotFoundFooter:"nzNotFoundFooter"},exportAs:["nzEmpty"],features:[n.TTD],decls:6,vars:5,consts:[[1,"ant-empty-image"],[4,"ngIf"],["class","ant-empty-description",4,"ngIf"],["class","ant-empty-footer",4,"ngIf"],[4,"nzStringTemplateOutlet"],[3,"src","alt"],[1,"ant-empty-description"],[1,"ant-empty-footer"]],template:function(be,le){1&be&&(n.TgZ(0,"div",0),n.YNc(1,v,2,1,"ng-container",1),n.YNc(2,g,1,0,"nz-empty-default",1),n.YNc(3,d,1,0,"nz-empty-simple",1),n.qZA(),n.YNc(4,f,2,1,"p",2),n.YNc(5,T,2,1,"div",3)),2&be&&(n.xp6(1),n.Q6J("ngIf",!le.isImageBuildIn),n.xp6(1),n.Q6J("ngIf",le.isImageBuildIn&&"simple"!==le.nzNotFoundImage),n.xp6(1),n.Q6J("ngIf",le.isImageBuildIn&&"simple"===le.nzNotFoundImage),n.xp6(1),n.Q6J("ngIf",null!==le.nzNotFoundContent),n.xp6(1),n.Q6J("ngIf",le.nzNotFoundFooter))},dependencies:[E.O5,z.f,K,_e],encapsulation:2,changeDetection:0})}return ne})(),j=(()=>{class ne{constructor(re,be,le,ce){this.configService=re,this.viewContainerRef=be,this.cdr=le,this.injector=ce,this.contentType="string",this.size="",this.destroy$=new t.x}ngOnChanges(re){re.nzComponentName&&(this.size=function H(ne){switch(ne){case"table":case"list":return"normal";case"select":case"tree-select":case"cascader":case"transfer":return"small";default:return""}}(re.nzComponentName.currentValue)),re.specificContent&&!re.specificContent.isFirstChange()&&(this.content=re.specificContent.currentValue,this.renderEmpty())}ngOnInit(){this.subscribeDefaultEmptyContentChange()}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}renderEmpty(){const re=this.content;if("string"==typeof re)this.contentType="string";else if(re instanceof n.Rgc){const be={$implicit:this.nzComponentName};this.contentType="template",this.contentPortal=new e.UE(re,this.viewContainerRef,be)}else if(re instanceof n.DyG){const be=n.zs3.create({parent:this.injector,providers:[{provide:W,useValue:this.nzComponentName}]});this.contentType="component",this.contentPortal=new e.C5(re,this.viewContainerRef,be)}else this.contentType="string",this.contentPortal=void 0;this.cdr.detectChanges()}subscribeDefaultEmptyContentChange(){this.configService.getConfigChangeEventForComponent("empty").pipe((0,l.O)(!0),(0,i.R)(this.destroy$)).subscribe(()=>{this.content=this.specificContent||this.getUserDefaultEmptyContent(),this.renderEmpty()})}getUserDefaultEmptyContent(){return(this.configService.getConfigForComponent("empty")||{}).nzDefaultEmptyContent}static#e=this.\u0275fac=function(be){return new(be||ne)(n.Y36(C.jY),n.Y36(n.s_b),n.Y36(n.sBO),n.Y36(n.zs3))};static#t=this.\u0275cmp=n.Xpm({type:ne,selectors:[["nz-embed-empty"]],inputs:{nzComponentName:"nzComponentName",specificContent:"specificContent"},exportAs:["nzEmbedEmpty"],features:[n.TTD],decls:2,vars:2,consts:[[3,"ngSwitch",4,"ngIf"],[4,"ngIf"],[3,"ngSwitch"],["class","ant-empty-normal",3,"nzNotFoundImage",4,"ngSwitchCase"],["class","ant-empty-small",3,"nzNotFoundImage",4,"ngSwitchCase"],[4,"ngSwitchDefault"],[1,"ant-empty-normal",3,"nzNotFoundImage"],[1,"ant-empty-small",3,"nzNotFoundImage"],[3,"cdkPortalOutlet"]],template:function(be,le){1&be&&(n.YNc(0,P,4,3,"ng-container",0),n.YNc(1,F,3,2,"ng-container",1)),2&be&&(n.Q6J("ngIf",!le.content&&null!==le.specificContent),n.xp6(1),n.Q6J("ngIf",le.content))},dependencies:[E.O5,E.RF,E.n9,E.ED,e.Pl,G],encapsulation:2,changeDetection:0})}return ne})(),te=(()=>{class ne{static#e=this.\u0275fac=function(be){return new(be||ne)};static#t=this.\u0275mod=n.oAB({type:ne});static#n=this.\u0275inj=n.cJS({imports:[M.vT,E.ez,e.eL,z.T,u.YI]})}return ne})()},3599:(nt,I,o)=>{"use strict";o.d(I,{Fd:()=>re,Lr:()=>pe,Nx:()=>j,U5:()=>ie,iK:()=>le});var e=o(49388),n=o(71088),t=o(62831),i=o(96814),l=o(65879),C=o(8324),E=o(10095),u=o(90551),z=o(96109),M=o(60095),h=o(78645),v=o(47394),g=o(32181),d=o(37398),p=o(59773),f=o(27921),y=o(99397),T=o(64194),x=o(50883),D=o(27754),_=o(12131),P=o(97582),O=o(83064);const A=["*"];function k(ae,xe){if(1&ae&&(l.ynx(0),l._uU(1),l.BQk()),2&ae){const Me=l.oxw(2);l.xp6(1),l.Oqu(Me.innerTip)}}const F=function(ae){return[ae]},W=function(ae){return{$implicit:ae}};function K(ae,xe){if(1&ae&&(l.TgZ(0,"div",4)(1,"div",5),l.YNc(2,k,2,1,"ng-container",6),l.qZA()()),2&ae){const Me=l.oxw();l.Q6J("@helpMotion",void 0),l.xp6(1),l.Q6J("ngClass",l.VKq(4,F,"ant-form-item-explain-"+Me.status)),l.xp6(1),l.Q6J("nzStringTemplateOutlet",Me.innerTip)("nzStringTemplateOutletContext",l.VKq(6,W,Me.validateControl))}}function _e(ae,xe){if(1&ae&&(l.ynx(0),l._uU(1),l.BQk()),2&ae){const Me=l.oxw(2);l.xp6(1),l.Oqu(Me.nzExtra)}}function Y(ae,xe){if(1&ae&&(l.TgZ(0,"div",7),l.YNc(1,_e,2,1,"ng-container",8),l.qZA()),2&ae){const Me=l.oxw();l.xp6(1),l.Q6J("nzStringTemplateOutlet",Me.nzExtra)}}function G(ae,xe){if(1&ae&&(l.ynx(0),l._UZ(1,"span",3),l.BQk()),2&ae){const Me=xe.$implicit,Ye=l.oxw(2);l.xp6(1),l.Q6J("nzType",Me)("nzTheme",Ye.tooltipIcon.theme)}}function H(ae,xe){if(1&ae&&(l.TgZ(0,"span",1),l.YNc(1,G,2,2,"ng-container",2),l.qZA()),2&ae){const Me=l.oxw();l.Q6J("nzTooltipTitle",Me.nzTooltipTitle),l.xp6(1),l.Q6J("nzStringTemplateOutlet",Me.tooltipIcon.type)}}let j=(()=>{class ae{setWithHelpViaTips(Me){this.withHelpClass=Me,this.cdr.markForCheck()}setStatus(Me){this.status=Me,this.cdr.markForCheck()}setHasFeedback(Me){this.hasFeedback=Me,this.cdr.markForCheck()}constructor(Me){this.cdr=Me,this.status="",this.hasFeedback=!1,this.withHelpClass=!1,this.destroy$=new h.x}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(Ye){return new(Ye||ae)(l.Y36(l.sBO))};static#t=this.\u0275cmp=l.Xpm({type:ae,selectors:[["nz-form-item"]],hostAttrs:[1,"ant-form-item"],hostVars:12,hostBindings:function(Ye,q){2&Ye&&l.ekj("ant-form-item-has-success","success"===q.status)("ant-form-item-has-warning","warning"===q.status)("ant-form-item-has-error","error"===q.status)("ant-form-item-is-validating","validating"===q.status)("ant-form-item-has-feedback",q.hasFeedback&&q.status)("ant-form-item-with-help",q.withHelpClass)},exportAs:["nzFormItem"],ngContentSelectors:A,decls:1,vars:0,template:function(Ye,q){1&Ye&&(l.F$t(),l.Hsn(0))},encapsulation:2,changeDetection:0})}return ae})();const ne={type:"question-circle",theme:"outline"};let pe=(()=>{class ae{getInputObservable(Me){return this.inputChanges$.pipe((0,g.h)(Ye=>Me in Ye),(0,d.U)(Ye=>Ye[Me]))}constructor(Me,Ye){this.nzConfigService=Me,this.directionality=Ye,this._nzModuleName="form",this.nzLayout="horizontal",this.nzNoColon=!1,this.nzAutoTips={},this.nzDisableAutoTips=!1,this.nzTooltipIcon=ne,this.nzLabelAlign="right",this.nzLabelWrap=!1,this.dir="ltr",this.destroy$=new h.x,this.inputChanges$=new h.x,this.dir=this.directionality.value,this.directionality.change?.pipe((0,p.R)(this.destroy$)).subscribe(q=>{this.dir=q})}ngOnChanges(Me){this.inputChanges$.next(Me)}ngOnDestroy(){this.inputChanges$.complete(),this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(Ye){return new(Ye||ae)(l.Y36(O.jY),l.Y36(e.Is,8))};static#t=this.\u0275dir=l.lG2({type:ae,selectors:[["","nz-form",""]],hostAttrs:[1,"ant-form"],hostVars:8,hostBindings:function(Ye,q){2&Ye&&l.ekj("ant-form-horizontal","horizontal"===q.nzLayout)("ant-form-vertical","vertical"===q.nzLayout)("ant-form-inline","inline"===q.nzLayout)("ant-form-rtl","rtl"===q.dir)},inputs:{nzLayout:"nzLayout",nzNoColon:"nzNoColon",nzAutoTips:"nzAutoTips",nzDisableAutoTips:"nzDisableAutoTips",nzTooltipIcon:"nzTooltipIcon",nzLabelAlign:"nzLabelAlign",nzLabelWrap:"nzLabelWrap"},exportAs:["nzForm"],features:[l.TTD]})}return(0,P.gn)([(0,O.oS)(),(0,D.yF)()],ae.prototype,"nzNoColon",void 0),(0,P.gn)([(0,O.oS)()],ae.prototype,"nzAutoTips",void 0),(0,P.gn)([(0,D.yF)()],ae.prototype,"nzDisableAutoTips",void 0),(0,P.gn)([(0,O.oS)()],ae.prototype,"nzTooltipIcon",void 0),(0,P.gn)([(0,O.oS)(),(0,D.yF)()],ae.prototype,"nzLabelWrap",void 0),ae})(),re=(()=>{class ae{get disableAutoTips(){return"default"!==this.nzDisableAutoTips?(0,D.sw)(this.nzDisableAutoTips):this.nzFormDirective?.nzDisableAutoTips}set nzHasFeedback(Me){this._hasFeedback=(0,D.sw)(Me),this.nzFormStatusService.formStatusChanges.next({status:this.status,hasFeedback:this._hasFeedback}),this.nzFormItemComponent&&this.nzFormItemComponent.setHasFeedback(this._hasFeedback)}get nzHasFeedback(){return this._hasFeedback}set nzValidateStatus(Me){Me instanceof M.TO||Me instanceof M.On?(this.validateControl=Me,this.validateString=null,this.watchControl()):Me instanceof M.u?(this.validateControl=Me.control,this.validateString=null,this.watchControl()):(this.validateString=Me,this.validateControl=null,this.setStatus())}watchControl(){this.validateChanges.unsubscribe(),this.validateControl&&this.validateControl.statusChanges&&(this.validateChanges=this.validateControl.statusChanges.pipe((0,f.O)(null),(0,p.R)(this.destroyed$)).subscribe(()=>{this.disableAutoTips||this.updateAutoErrorTip(),this.setStatus(),this.cdr.markForCheck()}))}setStatus(){this.status=this.getControlStatus(this.validateString),this.innerTip=this.getInnerTip(this.status),this.nzFormStatusService.formStatusChanges.next({status:this.status,hasFeedback:this.nzHasFeedback}),this.nzFormItemComponent&&(this.nzFormItemComponent.setWithHelpViaTips(!!this.innerTip),this.nzFormItemComponent.setStatus(this.status))}getControlStatus(Me){let Ye;return Ye="warning"===Me||this.validateControlStatus("INVALID","warning")?"warning":"error"===Me||this.validateControlStatus("INVALID")?"error":"validating"===Me||"pending"===Me||this.validateControlStatus("PENDING")?"validating":"success"===Me||this.validateControlStatus("VALID")?"success":"",Ye}validateControlStatus(Me,Ye){if(this.validateControl){const{dirty:q,touched:ye,status:ee}=this.validateControl;return(!!q||!!ye)&&(Ye?this.validateControl.hasError(Ye):ee===Me)}return!1}getInnerTip(Me){switch(Me){case"error":return!this.disableAutoTips&&this.autoErrorTip||this.nzErrorTip||null;case"validating":return this.nzValidatingTip||null;case"success":return this.nzSuccessTip||null;case"warning":return this.nzWarningTip||null;default:return null}}updateAutoErrorTip(){if(this.validateControl){const Me=this.validateControl.errors||{};let Ye="";for(const q in Me)if(Me.hasOwnProperty(q)&&(Ye=Me[q]?.[this.localeId]??this.nzAutoTips?.[this.localeId]?.[q]??this.nzAutoTips.default?.[q]??this.nzFormDirective?.nzAutoTips?.[this.localeId]?.[q]??this.nzFormDirective?.nzAutoTips.default?.[q]),Ye)break;this.autoErrorTip=Ye}}subscribeAutoTips(Me){Me?.pipe((0,p.R)(this.destroyed$)).subscribe(()=>{this.disableAutoTips||(this.updateAutoErrorTip(),this.setStatus(),this.cdr.markForCheck())})}constructor(Me,Ye,q,ye,ee){this.nzFormItemComponent=Me,this.cdr=Ye,this.nzFormDirective=ye,this.nzFormStatusService=ee,this._hasFeedback=!1,this.validateChanges=v.w0.EMPTY,this.validateString=null,this.destroyed$=new h.x,this.status="",this.validateControl=null,this.innerTip=null,this.nzAutoTips={},this.nzDisableAutoTips="default",this.subscribeAutoTips(q.localeChange.pipe((0,y.b)(Be=>this.localeId=Be.locale))),this.subscribeAutoTips(this.nzFormDirective?.getInputObservable("nzAutoTips")),this.subscribeAutoTips(this.nzFormDirective?.getInputObservable("nzDisableAutoTips").pipe((0,g.h)(()=>"default"===this.nzDisableAutoTips)))}ngOnChanges(Me){const{nzDisableAutoTips:Ye,nzAutoTips:q,nzSuccessTip:ye,nzWarningTip:ee,nzErrorTip:Be,nzValidatingTip:Re}=Me;Ye||q?(this.updateAutoErrorTip(),this.setStatus()):(ye||ee||Be||Re)&&this.setStatus()}ngOnInit(){this.setStatus()}ngOnDestroy(){this.destroyed$.next(),this.destroyed$.complete()}ngAfterContentInit(){!this.validateControl&&!this.validateString&&(this.nzValidateStatus=this.defaultValidateControl instanceof M.oH?this.defaultValidateControl.control:this.defaultValidateControl)}static#e=this.\u0275fac=function(Ye){return new(Ye||ae)(l.Y36(j,9),l.Y36(l.sBO),l.Y36(_.wi),l.Y36(pe,8),l.Y36(x.kH))};static#t=this.\u0275cmp=l.Xpm({type:ae,selectors:[["nz-form-control"]],contentQueries:function(Ye,q,ye){if(1&Ye&&l.Suo(ye,M.a5,5),2&Ye){let ee;l.iGM(ee=l.CRH())&&(q.defaultValidateControl=ee.first)}},hostAttrs:[1,"ant-form-item-control"],inputs:{nzSuccessTip:"nzSuccessTip",nzWarningTip:"nzWarningTip",nzErrorTip:"nzErrorTip",nzValidatingTip:"nzValidatingTip",nzExtra:"nzExtra",nzAutoTips:"nzAutoTips",nzDisableAutoTips:"nzDisableAutoTips",nzHasFeedback:"nzHasFeedback",nzValidateStatus:"nzValidateStatus"},exportAs:["nzFormControl"],features:[l._Bn([x.kH]),l.TTD],ngContentSelectors:A,decls:5,vars:2,consts:[[1,"ant-form-item-control-input"],[1,"ant-form-item-control-input-content"],["class","ant-form-item-explain ant-form-item-explain-connected",4,"ngIf"],["class","ant-form-item-extra",4,"ngIf"],[1,"ant-form-item-explain","ant-form-item-explain-connected"],["role","alert",3,"ngClass"],[4,"nzStringTemplateOutlet","nzStringTemplateOutletContext"],[1,"ant-form-item-extra"],[4,"nzStringTemplateOutlet"]],template:function(Ye,q){1&Ye&&(l.F$t(),l.TgZ(0,"div",0)(1,"div",1),l.Hsn(2),l.qZA()(),l.YNc(3,K,3,8,"div",2),l.YNc(4,Y,2,1,"div",3)),2&Ye&&(l.xp6(3),l.Q6J("ngIf",q.innerTip),l.xp6(1),l.Q6J("ngIf",q.nzExtra))},dependencies:[i.mk,i.O5,C.f],encapsulation:2,data:{animation:[T.c8]},changeDetection:0})}return ae})();function be(ae){return{...ne,..."string"==typeof ae?{type:ae}:ae}}let le=(()=>{class ae{set nzNoColon(Me){this.noColon=(0,D.sw)(Me)}get nzNoColon(){return"default"!==this.noColon?this.noColon:this.nzFormDirective?.nzNoColon}set nzTooltipIcon(Me){this._tooltipIcon=be(Me)}get tooltipIcon(){return"default"!==this._tooltipIcon?this._tooltipIcon:be(this.nzFormDirective?.nzTooltipIcon||ne)}set nzLabelAlign(Me){this.labelAlign=Me}get nzLabelAlign(){return"default"!==this.labelAlign?this.labelAlign:this.nzFormDirective?.nzLabelAlign||"right"}set nzLabelWrap(Me){this.labelWrap=(0,D.sw)(Me)}get nzLabelWrap(){return"default"!==this.labelWrap?this.labelWrap:this.nzFormDirective?.nzLabelWrap}constructor(Me,Ye){this.cdr=Me,this.nzFormDirective=Ye,this.nzRequired=!1,this.noColon="default",this._tooltipIcon="default",this.labelAlign="default",this.labelWrap="default",this.destroy$=new h.x,this.nzFormDirective&&(this.nzFormDirective.getInputObservable("nzNoColon").pipe((0,g.h)(()=>"default"===this.noColon),(0,p.R)(this.destroy$)).subscribe(()=>this.cdr.markForCheck()),this.nzFormDirective.getInputObservable("nzTooltipIcon").pipe((0,g.h)(()=>"default"===this._tooltipIcon),(0,p.R)(this.destroy$)).subscribe(()=>this.cdr.markForCheck()),this.nzFormDirective.getInputObservable("nzLabelAlign").pipe((0,g.h)(()=>"default"===this.labelAlign),(0,p.R)(this.destroy$)).subscribe(()=>this.cdr.markForCheck()),this.nzFormDirective.getInputObservable("nzLabelWrap").pipe((0,g.h)(()=>"default"===this.labelWrap),(0,p.R)(this.destroy$)).subscribe(()=>this.cdr.markForCheck()))}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(Ye){return new(Ye||ae)(l.Y36(l.sBO),l.Y36(pe,12))};static#t=this.\u0275cmp=l.Xpm({type:ae,selectors:[["nz-form-label"]],hostAttrs:[1,"ant-form-item-label"],hostVars:4,hostBindings:function(Ye,q){2&Ye&&l.ekj("ant-form-item-label-left","left"===q.nzLabelAlign)("ant-form-item-label-wrap",q.nzLabelWrap)},inputs:{nzFor:"nzFor",nzRequired:"nzRequired",nzNoColon:"nzNoColon",nzTooltipTitle:"nzTooltipTitle",nzTooltipIcon:"nzTooltipIcon",nzLabelAlign:"nzLabelAlign",nzLabelWrap:"nzLabelWrap"},exportAs:["nzFormLabel"],ngContentSelectors:A,decls:3,vars:6,consts:[["class","ant-form-item-tooltip","nz-tooltip","",3,"nzTooltipTitle",4,"ngIf"],["nz-tooltip","",1,"ant-form-item-tooltip",3,"nzTooltipTitle"],[4,"nzStringTemplateOutlet"],["nz-icon","",3,"nzType","nzTheme"]],template:function(Ye,q){1&Ye&&(l.F$t(),l.TgZ(0,"label"),l.Hsn(1),l.YNc(2,H,2,2,"span",0),l.qZA()),2&Ye&&(l.ekj("ant-form-item-no-colon",q.nzNoColon)("ant-form-item-required",q.nzRequired),l.uIk("for",q.nzFor),l.xp6(2),l.Q6J("ngIf",q.nzTooltipTitle))},dependencies:[i.O5,u.Ls,z.SY,C.f],encapsulation:2,changeDetection:0})}return(0,P.gn)([(0,D.yF)()],ae.prototype,"nzRequired",void 0),ae})(),ie=(()=>{class ae{static#e=this.\u0275fac=function(Ye){return new(Ye||ae)};static#t=this.\u0275mod=l.oAB({type:ae});static#n=this.\u0275inj=l.cJS({imports:[e.vT,i.ez,E.Jb,u.PV,z.cg,n.xu,t.ud,C.T,E.Jb]})}return ae})()},10095:(nt,I,o)=>{"use strict";o.d(I,{Jb:()=>g,SK:()=>h,t3:()=>v});var e=o(65879),n=o(97328),t=o(78645),i=o(59773),l=o(99087),C=o(71088),E=o(62831),u=o(49388),z=o(27754),M=o(96814);let h=(()=>{class d{getGutter(){const f=[null,null],y=this.nzGutter||0;return(Array.isArray(y)?y:[y,null]).forEach((x,D)=>{"object"==typeof x&&null!==x?(f[D]=null,Object.keys(l.WV).map(_=>{const P=_;this.mediaMatcher.matchMedia(l.WV[P]).matches&&x[P]&&(f[D]=x[P])})):f[D]=Number(x)||null}),f}setGutterStyle(){const[f,y]=this.getGutter();this.actualGutter$.next([f,y]);const T=(x,D)=>{null!==D&&this.renderer.setStyle(this.elementRef.nativeElement,x,`-${D/2}px`)};T("margin-left",f),T("margin-right",f),T("margin-top",y),T("margin-bottom",y)}constructor(f,y,T,x,D,_,P){this.elementRef=f,this.renderer=y,this.mediaMatcher=T,this.ngZone=x,this.platform=D,this.breakpointService=_,this.directionality=P,this.nzAlign=null,this.nzJustify=null,this.nzGutter=null,this.actualGutter$=new n.t(1),this.dir="ltr",this.destroy$=new t.x}ngOnInit(){this.dir=this.directionality.value,this.directionality.change?.pipe((0,i.R)(this.destroy$)).subscribe(f=>{this.dir=f}),this.setGutterStyle()}ngOnChanges(f){f.nzGutter&&this.setGutterStyle()}ngAfterViewInit(){this.platform.isBrowser&&this.breakpointService.subscribe(l.WV).pipe((0,i.R)(this.destroy$)).subscribe(()=>{this.setGutterStyle()})}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(y){return new(y||d)(e.Y36(e.SBq),e.Y36(e.Qsj),e.Y36(C.vx),e.Y36(e.R0b),e.Y36(E.t4),e.Y36(l.r3),e.Y36(u.Is,8))};static#t=this.\u0275dir=e.lG2({type:d,selectors:[["","nz-row",""],["nz-row"],["nz-form-item"]],hostAttrs:[1,"ant-row"],hostVars:20,hostBindings:function(y,T){2&y&&e.ekj("ant-row-top","top"===T.nzAlign)("ant-row-middle","middle"===T.nzAlign)("ant-row-bottom","bottom"===T.nzAlign)("ant-row-start","start"===T.nzJustify)("ant-row-end","end"===T.nzJustify)("ant-row-center","center"===T.nzJustify)("ant-row-space-around","space-around"===T.nzJustify)("ant-row-space-between","space-between"===T.nzJustify)("ant-row-space-evenly","space-evenly"===T.nzJustify)("ant-row-rtl","rtl"===T.dir)},inputs:{nzAlign:"nzAlign",nzJustify:"nzJustify",nzGutter:"nzGutter"},exportAs:["nzRow"],features:[e.TTD]})}return d})(),v=(()=>{class d{setHostClassMap(){const f={"ant-col":!0,[`ant-col-${this.nzSpan}`]:(0,z.DX)(this.nzSpan),[`ant-col-order-${this.nzOrder}`]:(0,z.DX)(this.nzOrder),[`ant-col-offset-${this.nzOffset}`]:(0,z.DX)(this.nzOffset),[`ant-col-pull-${this.nzPull}`]:(0,z.DX)(this.nzPull),[`ant-col-push-${this.nzPush}`]:(0,z.DX)(this.nzPush),"ant-col-rtl":"rtl"===this.dir,...this.generateClass()};for(const y in this.classMap)this.classMap.hasOwnProperty(y)&&this.renderer.removeClass(this.elementRef.nativeElement,y);this.classMap={...f};for(const y in this.classMap)this.classMap.hasOwnProperty(y)&&this.classMap[y]&&this.renderer.addClass(this.elementRef.nativeElement,y)}setHostFlexStyle(){this.hostFlexStyle=this.parseFlex(this.nzFlex)}parseFlex(f){return"number"==typeof f?`${f} ${f} auto`:"string"==typeof f&&/^\d+(\.\d+)?(px|em|rem|%)$/.test(f)?`0 0 ${f}`:f}generateClass(){const y={};return["nzXs","nzSm","nzMd","nzLg","nzXl","nzXXl"].forEach(T=>{const x=T.replace("nz","").toLowerCase();if((0,z.DX)(this[T]))if("number"==typeof this[T]||"string"==typeof this[T])y[`ant-col-${x}-${this[T]}`]=!0;else{const D=this[T];["span","pull","push","offset","order"].forEach(P=>{y[`ant-col-${x}${"span"===P?"-":`-${P}-`}${D[P]}`]=D&&(0,z.DX)(D[P])})}}),y}constructor(f,y,T,x){this.elementRef=f,this.nzRowDirective=y,this.renderer=T,this.directionality=x,this.classMap={},this.destroy$=new t.x,this.hostFlexStyle=null,this.dir="ltr",this.nzFlex=null,this.nzSpan=null,this.nzOrder=null,this.nzOffset=null,this.nzPush=null,this.nzPull=null,this.nzXs=null,this.nzSm=null,this.nzMd=null,this.nzLg=null,this.nzXl=null,this.nzXXl=null}ngOnInit(){this.dir=this.directionality.value,this.directionality.change?.pipe((0,i.R)(this.destroy$)).subscribe(f=>{this.dir=f,this.setHostClassMap()}),this.setHostClassMap(),this.setHostFlexStyle()}ngOnChanges(f){this.setHostClassMap();const{nzFlex:y}=f;y&&this.setHostFlexStyle()}ngAfterViewInit(){this.nzRowDirective&&this.nzRowDirective.actualGutter$.pipe((0,i.R)(this.destroy$)).subscribe(([f,y])=>{const T=(x,D)=>{null!==D&&this.renderer.setStyle(this.elementRef.nativeElement,x,D/2+"px")};T("padding-left",f),T("padding-right",f),T("padding-top",y),T("padding-bottom",y)})}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(y){return new(y||d)(e.Y36(e.SBq),e.Y36(h,9),e.Y36(e.Qsj),e.Y36(u.Is,8))};static#t=this.\u0275dir=e.lG2({type:d,selectors:[["","nz-col",""],["nz-col"],["nz-form-control"],["nz-form-label"]],hostVars:2,hostBindings:function(y,T){2&y&&e.Udp("flex",T.hostFlexStyle)},inputs:{nzFlex:"nzFlex",nzSpan:"nzSpan",nzOrder:"nzOrder",nzOffset:"nzOffset",nzPush:"nzPush",nzPull:"nzPull",nzXs:"nzXs",nzSm:"nzSm",nzMd:"nzMd",nzLg:"nzLg",nzXl:"nzXl",nzXXl:"nzXXl"},exportAs:["nzCol"],features:[e.TTD]})}return d})(),g=(()=>{class d{static#e=this.\u0275fac=function(y){return new(y||d)};static#t=this.\u0275mod=e.oAB({type:d});static#n=this.\u0275inj=e.cJS({imports:[u.vT,M.ez,C.xu,E.ud]})}return d})()},12131:(nt,I,o)=>{"use strict";o.d(I,{mx:()=>K,YI:()=>O,o9:()=>P,wi:()=>_,iF:()=>f,bF:()=>y});var e=o(65879),n=o(65619),t=o(1608),i=o(96814),l=o(40581),C=o(97753),E=o(62816);function u(ve){return(0,E.Z)(1,arguments),(0,C.Z)(ve,{weekStartsOn:1})}var g=o(89207),d=o(80356),p=o(3945),f={locale:"en",Pagination:{items_per_page:"/ page",jump_to:"Go to",jump_to_confirm:"confirm",page:"Page",prev_page:"Previous Page",next_page:"Next Page",prev_5:"Previous 5 Pages",next_5:"Next 5 Pages",prev_3:"Previous 3 Pages",next_3:"Next 3 Pages",page_size:"Page Size"},DatePicker:{lang:{placeholder:"Select date",yearPlaceholder:"Select year",quarterPlaceholder:"Select quarter",monthPlaceholder:"Select month",weekPlaceholder:"Select week",rangePlaceholder:["Start date","End date"],rangeYearPlaceholder:["Start year","End year"],rangeMonthPlaceholder:["Start month","End month"],rangeWeekPlaceholder:["Start week","End week"],locale:"en_US",today:"Today",now:"Now",backToToday:"Back to today",ok:"Ok",clear:"Clear",month:"Month",year:"Year",timeSelect:"select time",dateSelect:"select date",weekSelect:"Choose a week",monthSelect:"Choose a month",yearSelect:"Choose a year",decadeSelect:"Choose a decade",yearFormat:"YYYY",dateFormat:"M/D/YYYY",dayFormat:"D",dateTimeFormat:"M/D/YYYY HH:mm:ss",monthBeforeYear:!0,previousMonth:"Previous month (PageUp)",nextMonth:"Next month (PageDown)",previousYear:"Last year (Control + left)",nextYear:"Next year (Control + right)",previousDecade:"Last decade",nextDecade:"Next decade",previousCentury:"Last century",nextCentury:"Next century"},timePickerLocale:{placeholder:"Select time",rangePlaceholder:["Start time","End time"]}},TimePicker:{placeholder:"Select time",rangePlaceholder:["Start time","End time"]},Calendar:{lang:{placeholder:"Select date",yearPlaceholder:"Select year",quarterPlaceholder:"Select quarter",monthPlaceholder:"Select month",weekPlaceholder:"Select week",rangePlaceholder:["Start date","End date"],rangeYearPlaceholder:["Start year","End year"],rangeMonthPlaceholder:["Start month","End month"],rangeWeekPlaceholder:["Start week","End week"],locale:"en_US",today:"Today",now:"Now",backToToday:"Back to today",ok:"Ok",clear:"Clear",month:"Month",year:"Year",timeSelect:"select time",dateSelect:"select date",weekSelect:"Choose a week",monthSelect:"Choose a month",yearSelect:"Choose a year",decadeSelect:"Choose a decade",yearFormat:"YYYY",dateFormat:"M/D/YYYY",dayFormat:"D",dateTimeFormat:"M/D/YYYY HH:mm:ss",monthBeforeYear:!0,previousMonth:"Previous month (PageUp)",nextMonth:"Next month (PageDown)",previousYear:"Last year (Control + left)",nextYear:"Next year (Control + right)",previousDecade:"Last decade",nextDecade:"Next decade",previousCentury:"Last century",nextCentury:"Next century"},timePickerLocale:{placeholder:"Select time",rangePlaceholder:["Start time","End time"]}},global:{placeholder:"Please select"},Table:{filterTitle:"Filter menu",filterConfirm:"OK",filterReset:"Reset",filterEmptyText:"No filters",emptyText:"No data",selectAll:"Select current page",selectInvert:"Invert current page",selectionAll:"Select all data",sortTitle:"Sort",expand:"Expand row",collapse:"Collapse row",triggerDesc:"Click to sort descending",triggerAsc:"Click to sort ascending",cancelSort:"Click to cancel sorting",filterCheckall:"Select all items",filterSearchPlaceholder:"Search in filters",selectNone:"Clear all data"},Modal:{okText:"OK",cancelText:"Cancel",justOkText:"OK"},Popconfirm:{okText:"OK",cancelText:"Cancel"},Transfer:{titles:["",""],searchPlaceholder:"Search here",itemUnit:"item",itemsUnit:"items",remove:"Remove",selectCurrent:"Select current page",removeCurrent:"Remove current page",selectAll:"Select all data",removeAll:"Remove all data",selectInvert:"Invert current page"},Upload:{uploading:"Uploading...",removeFile:"Remove file",uploadError:"Upload error",previewFile:"Preview file",downloadFile:"Download file"},Empty:{description:"No Data"},Icon:{icon:"icon"},Text:{edit:"Edit",copy:"Copy",copied:"Copied",expand:"Expand"},PageHeader:{back:"Back"},Image:{preview:"Preview"},CronExpression:{cronError:"Invalid cron expression",second:"second",minute:"minute",hour:"hour",day:"day",month:"month",week:"week",secondError:"

      *Any value

      ,Separator between multiple values

      -Connector for interval values

      /Equally distributed

      0-59Allowable range

      ",minuteError:"

      *Any value

      ,Separator between multiple values

      -Connector for interval values

      /Equally distributed

      0-59Allowable range

      ",hourError:"

      *Any value

      ,Separator between multiple values

      -Connector for interval values

      /Equally distributed

      0-23Allowable range

      ",dayError:"

      *Any value

      ,Separator between multiple values

      -Connector for interval values

      /Equally distributed

      1-31Allowable range

      ",monthError:"

      *Any value

      ,Separator between multiple values

      -Connector for interval values

      /Equally distributed

      1-12Allowable range

      ",weekError:"

      *Any value

      ,Separator between multiple values

      -Connector for interval values

      /Equally distributed

      ? Not specify

      0-7Allowable range (0 represents Sunday, 1-7 are Monday to Sunday)

      "},QRCode:{expired:"QR code expired",refresh:"Refresh"}},y={locale:"zh-cn",Pagination:{items_per_page:"\u6761/\u9875",jump_to:"\u8df3\u81f3",jump_to_confirm:"\u786e\u5b9a",page:"\u9875",prev_page:"\u4e0a\u4e00\u9875",next_page:"\u4e0b\u4e00\u9875",prev_5:"\u5411\u524d 5 \u9875",next_5:"\u5411\u540e 5 \u9875",prev_3:"\u5411\u524d 3 \u9875",next_3:"\u5411\u540e 3 \u9875",page_size:"\u9875\u7801"},DatePicker:{lang:{placeholder:"\u8bf7\u9009\u62e9\u65e5\u671f",yearPlaceholder:"\u8bf7\u9009\u62e9\u5e74\u4efd",quarterPlaceholder:"\u8bf7\u9009\u62e9\u5b63\u5ea6",monthPlaceholder:"\u8bf7\u9009\u62e9\u6708\u4efd",weekPlaceholder:"\u8bf7\u9009\u62e9\u5468",rangePlaceholder:["\u5f00\u59cb\u65e5\u671f","\u7ed3\u675f\u65e5\u671f"],rangeYearPlaceholder:["\u5f00\u59cb\u5e74\u4efd","\u7ed3\u675f\u5e74\u4efd"],rangeMonthPlaceholder:["\u5f00\u59cb\u6708\u4efd","\u7ed3\u675f\u6708\u4efd"],rangeWeekPlaceholder:["\u5f00\u59cb\u5468","\u7ed3\u675f\u5468"],locale:"zh_CN",today:"\u4eca\u5929",now:"\u6b64\u523b",backToToday:"\u8fd4\u56de\u4eca\u5929",ok:"\u786e\u5b9a",timeSelect:"\u9009\u62e9\u65f6\u95f4",dateSelect:"\u9009\u62e9\u65e5\u671f",weekSelect:"\u9009\u62e9\u5468",clear:"\u6e05\u9664",month:"\u6708",year:"\u5e74",previousMonth:"\u4e0a\u4e2a\u6708 (\u7ffb\u9875\u4e0a\u952e)",nextMonth:"\u4e0b\u4e2a\u6708 (\u7ffb\u9875\u4e0b\u952e)",monthSelect:"\u9009\u62e9\u6708\u4efd",yearSelect:"\u9009\u62e9\u5e74\u4efd",decadeSelect:"\u9009\u62e9\u5e74\u4ee3",yearFormat:"YYYY\u5e74",dayFormat:"D\u65e5",dateFormat:"YYYY\u5e74M\u6708D\u65e5",dateTimeFormat:"YYYY\u5e74M\u6708D\u65e5 HH\u65f6mm\u5206ss\u79d2",previousYear:"\u4e0a\u4e00\u5e74 (Control\u952e\u52a0\u5de6\u65b9\u5411\u952e)",nextYear:"\u4e0b\u4e00\u5e74 (Control\u952e\u52a0\u53f3\u65b9\u5411\u952e)",previousDecade:"\u4e0a\u4e00\u5e74\u4ee3",nextDecade:"\u4e0b\u4e00\u5e74\u4ee3",previousCentury:"\u4e0a\u4e00\u4e16\u7eaa",nextCentury:"\u4e0b\u4e00\u4e16\u7eaa"},timePickerLocale:{placeholder:"\u8bf7\u9009\u62e9\u65f6\u95f4",rangePlaceholder:["\u5f00\u59cb\u65f6\u95f4","\u7ed3\u675f\u65f6\u95f4"]}},TimePicker:{placeholder:"\u8bf7\u9009\u62e9\u65f6\u95f4",rangePlaceholder:["\u5f00\u59cb\u65f6\u95f4","\u7ed3\u675f\u65f6\u95f4"]},Calendar:{lang:{placeholder:"\u8bf7\u9009\u62e9\u65e5\u671f",yearPlaceholder:"\u8bf7\u9009\u62e9\u5e74\u4efd",quarterPlaceholder:"\u8bf7\u9009\u62e9\u5b63\u5ea6",monthPlaceholder:"\u8bf7\u9009\u62e9\u6708\u4efd",weekPlaceholder:"\u8bf7\u9009\u62e9\u5468",rangePlaceholder:["\u5f00\u59cb\u65e5\u671f","\u7ed3\u675f\u65e5\u671f"],rangeYearPlaceholder:["\u5f00\u59cb\u5e74\u4efd","\u7ed3\u675f\u5e74\u4efd"],rangeMonthPlaceholder:["\u5f00\u59cb\u6708\u4efd","\u7ed3\u675f\u6708\u4efd"],rangeWeekPlaceholder:["\u5f00\u59cb\u5468","\u7ed3\u675f\u5468"],locale:"zh_CN",today:"\u4eca\u5929",now:"\u6b64\u523b",backToToday:"\u8fd4\u56de\u4eca\u5929",ok:"\u786e\u5b9a",timeSelect:"\u9009\u62e9\u65f6\u95f4",dateSelect:"\u9009\u62e9\u65e5\u671f",weekSelect:"\u9009\u62e9\u5468",clear:"\u6e05\u9664",month:"\u6708",year:"\u5e74",previousMonth:"\u4e0a\u4e2a\u6708 (\u7ffb\u9875\u4e0a\u952e)",nextMonth:"\u4e0b\u4e2a\u6708 (\u7ffb\u9875\u4e0b\u952e)",monthSelect:"\u9009\u62e9\u6708\u4efd",yearSelect:"\u9009\u62e9\u5e74\u4efd",decadeSelect:"\u9009\u62e9\u5e74\u4ee3",yearFormat:"YYYY\u5e74",dayFormat:"D\u65e5",dateFormat:"YYYY\u5e74M\u6708D\u65e5",dateTimeFormat:"YYYY\u5e74M\u6708D\u65e5 HH\u65f6mm\u5206ss\u79d2",previousYear:"\u4e0a\u4e00\u5e74 (Control\u952e\u52a0\u5de6\u65b9\u5411\u952e)",nextYear:"\u4e0b\u4e00\u5e74 (Control\u952e\u52a0\u53f3\u65b9\u5411\u952e)",previousDecade:"\u4e0a\u4e00\u5e74\u4ee3",nextDecade:"\u4e0b\u4e00\u5e74\u4ee3",previousCentury:"\u4e0a\u4e00\u4e16\u7eaa",nextCentury:"\u4e0b\u4e00\u4e16\u7eaa"},timePickerLocale:{placeholder:"\u8bf7\u9009\u62e9\u65f6\u95f4",rangePlaceholder:["\u5f00\u59cb\u65f6\u95f4","\u7ed3\u675f\u65f6\u95f4"]}},global:{placeholder:"\u8bf7\u9009\u62e9"},Table:{filterTitle:"\u7b5b\u9009",filterConfirm:"\u786e\u5b9a",filterReset:"\u91cd\u7f6e",filterEmptyText:"\u65e0\u7b5b\u9009\u9879",selectAll:"\u5168\u9009\u5f53\u9875",selectInvert:"\u53cd\u9009\u5f53\u9875",selectionAll:"\u5168\u9009\u6240\u6709",sortTitle:"\u6392\u5e8f",expand:"\u5c55\u5f00\u884c",collapse:"\u5173\u95ed\u884c",triggerDesc:"\u70b9\u51fb\u964d\u5e8f",triggerAsc:"\u70b9\u51fb\u5347\u5e8f",cancelSort:"\u53d6\u6d88\u6392\u5e8f",filterCheckall:"\u5168\u9009",filterSearchPlaceholder:"\u5728\u7b5b\u9009\u9879\u4e2d\u641c\u7d22",selectNone:"\u6e05\u7a7a\u6240\u6709"},Modal:{okText:"\u786e\u5b9a",cancelText:"\u53d6\u6d88",justOkText:"\u77e5\u9053\u4e86"},Popconfirm:{cancelText:"\u53d6\u6d88",okText:"\u786e\u5b9a"},Transfer:{searchPlaceholder:"\u8bf7\u8f93\u5165\u641c\u7d22\u5185\u5bb9",itemUnit:"\u9879",itemsUnit:"\u9879",remove:"\u5220\u9664",selectCurrent:"\u5168\u9009\u5f53\u9875",removeCurrent:"\u5220\u9664\u5f53\u9875",selectAll:"\u5168\u9009\u6240\u6709",removeAll:"\u5220\u9664\u5168\u90e8",selectInvert:"\u53cd\u9009\u5f53\u9875"},Upload:{uploading:"\u6587\u4ef6\u4e0a\u4f20\u4e2d",removeFile:"\u5220\u9664\u6587\u4ef6",uploadError:"\u4e0a\u4f20\u9519\u8bef",previewFile:"\u9884\u89c8\u6587\u4ef6",downloadFile:"\u4e0b\u8f7d\u6587\u4ef6"},Empty:{description:"\u6682\u65e0\u6570\u636e"},Icon:{icon:"\u56fe\u6807"},Text:{edit:"\u7f16\u8f91",copy:"\u590d\u5236",copied:"\u590d\u5236\u6210\u529f",expand:"\u5c55\u5f00"},PageHeader:{back:"\u8fd4\u56de"},Image:{preview:"\u9884\u89c8"},CronExpression:{cronError:"cron \u8868\u8fbe\u5f0f\u4e0d\u5408\u6cd5",second:"\u79d2",minute:"\u5206\u949f",hour:"\u5c0f\u65f6",day:"\u65e5",month:"\u6708",week:"\u5468",secondError:"

      *\u4efb\u610f\u503c

      ,\u591a\u4e2a\u503c\u4e4b\u95f4\u7684\u5206\u9694\u7b26

      -\u533a\u95f4\u503c\u7684\u8fde\u63a5\u7b26

      /\u5e73\u5747\u5206\u914d

      0-59\u5141\u8bb8\u8303\u56f4

      ",minuteError:"

      *\u4efb\u610f\u503c

      ,\u591a\u4e2a\u503c\u4e4b\u95f4\u7684\u5206\u9694\u7b26

      -\u533a\u95f4\u503c\u7684\u8fde\u63a5\u7b26

      /\u5e73\u5747\u5206\u914d

      0-59\u5141\u8bb8\u8303\u56f4

      ",hourError:"

      * \u4efb\u610f\u503c

      , \u591a\u4e2a\u503c\u4e4b\u95f4\u7684\u5206\u9694\u7b26

      - \u533a\u95f4\u503c\u7684\u8fde\u63a5\u7b26

      / \u5e73\u5747\u5206\u914d

      0-23 \u5141\u8bb8\u8303\u56f4

      ",dayError:"

      * \u4efb\u610f\u503c

      , \u591a\u4e2a\u503c\u4e4b\u95f4\u7684\u5206\u9694\u7b26

      - \u533a\u95f4\u503c\u7684\u8fde\u63a5\u7b26

      / \u5e73\u5747\u5206\u914d

      1-31 \u5141\u8bb8\u8303\u56f4

      ",monthError:"

      * \u4efb\u610f\u503c

      , \u591a\u4e2a\u503c\u4e4b\u95f4\u7684\u5206\u9694\u7b26

      - \u533a\u95f4\u503c\u7684\u8fde\u63a5\u7b26

      / \u5e73\u5747\u5206\u914d

      1-12 \u5141\u8bb8\u8303\u56f4

      ",weekError:"

      * \u4efb\u610f\u503c

      , \u591a\u4e2a\u503c\u4e4b\u95f4\u7684\u5206\u9694\u7b26

      - \u533a\u95f4\u503c\u7684\u8fde\u63a5\u7b26

      / \u5e73\u5747\u5206\u914d

      ? \u4e0d\u6307\u5b9a

      0-7 \u5141\u8bb8\u8303\u56f4\uff080\u4ee3\u8868\u5468\u65e5\uff0c1-7\u4f9d\u6b21\u4e3a\u5468\u4e00\u5230\u5468\u65e5\uff09

      "},QRCode:{expired:"\u4e8c\u7ef4\u7801\u8fc7\u671f",refresh:"\u70b9\u51fb\u5237\u65b0"}};const T=new e.OlP("nz-i18n"),D=new e.OlP("nz-date-locale");let _=(()=>{class ve{get localeChange(){return this._change.asObservable()}constructor(b,N){this._change=new n.X(this._locale),this.setLocale(b||y),this.setDateLocale(N||null)}translate(b,N){let S=this._getObjectPath(this._locale,b);return"string"==typeof S?(N&&Object.keys(N).forEach($=>S=S.replace(new RegExp(`%${$}%`,"g"),N[$])),S):b}setLocale(b){this._locale&&this._locale.locale===b.locale||(this._locale=b,this._change.next(b))}getLocale(){return this._locale}getLocaleId(){return this._locale?this._locale.locale:""}setDateLocale(b){this.dateLocale=b}getDateLocale(){return this.dateLocale}getLocaleData(b,N){const S=b?this._getObjectPath(this._locale,b):this._locale;return!S&&!N&&(0,t.ZK)(`Missing translations for "${b}" in language "${this._locale.locale}".\nYou can use "NzI18nService.setLocale" as a temporary fix.\nWelcome to submit a pull request to help us optimize the translations!\nhttps://github.com/NG-ZORRO/ng-zorro-antd/blob/master/CONTRIBUTING.md`),S||N||this._getObjectPath(f,b)||{}}_getObjectPath(b,N){let S=b;const $=N.split("."),R=$.length;let he=0;for(;S&&he{class ve{constructor(b){this._locale=b}transform(b,N){return this._locale.translate(b,N)}static#e=this.\u0275fac=function(N){return new(N||ve)(e.Y36(_,16))};static#t=this.\u0275pipe=e.Yjl({name:"nzI18n",type:ve,pure:!0})}return ve})(),O=(()=>{class ve{static#e=this.\u0275fac=function(N){return new(N||ve)};static#t=this.\u0275mod=e.oAB({type:ve});static#n=this.\u0275inj=e.cJS({})}return ve})();const A=new e.OlP("date-config"),k={firstDayOfWeek:void 0};let K=(()=>{class ve{constructor(b,N){this.i18n=b,this.config=N,this.config=function F(ve){return{...k,...ve}}(this.config)}static#e=this.\u0275fac=function(N){return new(N||ve)(e.LFG(_),e.LFG(A,8))};static#t=this.\u0275prov=e.Yz7({token:ve,factory:function(N){let S=null;return S=N?new N:function W(ve,it){const b=ve.get(_);return b.getDateLocale()?new _e(b,it):new Y(b,it)}(e.LFG(e.zs3),e.LFG(A,8)),S},providedIn:"root"})}return ve})();class _e extends K{getISOWeek(it){return function v(ve){(0,E.Z)(1,arguments);var it=(0,l.Z)(ve),b=u(it).getTime()-function M(ve){(0,E.Z)(1,arguments);var it=function z(ve){(0,E.Z)(1,arguments);var it=(0,l.Z)(ve),b=it.getFullYear(),N=new Date(0);N.setFullYear(b+1,0,4),N.setHours(0,0,0,0);var S=u(N),$=new Date(0);$.setFullYear(b,0,4),$.setHours(0,0,0,0);var R=u($);return it.getTime()>=S.getTime()?b+1:it.getTime()>=R.getTime()?b:b-1}(ve),b=new Date(0);return b.setFullYear(it,0,4),b.setHours(0,0,0,0),u(b)}(it).getTime();return Math.round(b/6048e5)+1}(it)}getFirstDayOfWeek(){let it;try{it=this.i18n.getDateLocale().options.weekStartsOn}catch{it=1}return null==this.config.firstDayOfWeek?it:this.config.firstDayOfWeek}format(it,b){return it?(0,g.Z)(it,b,{locale:this.i18n.getDateLocale()}):""}parseDate(it,b){return(0,d.Z)(it,b,new Date,{locale:this.i18n.getDateLocale(),weekStartsOn:this.getFirstDayOfWeek()})}parseTime(it,b){return this.parseDate(it,b)}}class Y extends K{getISOWeek(it){return+this.format(it,"w")}getFirstDayOfWeek(){if(void 0===this.config.firstDayOfWeek){const it=this.i18n.getLocaleId();return it&&["zh-cn","zh-tw"].indexOf(it.toLowerCase())>-1?1:0}return this.config.firstDayOfWeek}format(it,b){return it?(0,i.p6)(it,b,this.i18n.getLocaleId()):""}parseDate(it){return new Date(it)}parseTime(it,b){return new p.xR(b,this.i18n.getLocaleId()).toDate(it)}}},90551:(nt,I,o)=>{"use strict";o.d(I,{Ls:()=>Je,PV:()=>Ge,H5:()=>wt});var e=o(62831),n=o(65879),t=o(97582),i=o(78645),l=o(7715),C=o(59773),E=o(94265),u=o(36379),z=2,M=.16,h=.05,v=.05,g=.15,d=5,p=4,f=[{index:7,opacity:.15},{index:6,opacity:.25},{index:5,opacity:.3},{index:5,opacity:.45},{index:5,opacity:.65},{index:5,opacity:.85},{index:4,opacity:.9},{index:3,opacity:.95},{index:2,opacity:.97},{index:1,opacity:.98}];function y(Ke){var N=(0,E.py)(Ke.r,Ke.g,Ke.b);return{h:360*N.h,s:N.s,v:N.v}}function T(Ke){return"#".concat((0,E.vq)(Ke.r,Ke.g,Ke.b,!1))}function D(Ke,ve,it){var b;return(b=Math.round(Ke.h)>=60&&Math.round(Ke.h)<=240?it?Math.round(Ke.h)-z*ve:Math.round(Ke.h)+z*ve:it?Math.round(Ke.h)+z*ve:Math.round(Ke.h)-z*ve)<0?b+=360:b>=360&&(b-=360),b}function _(Ke,ve,it){return 0===Ke.h&&0===Ke.s?Ke.s:((b=it?Ke.s-M*ve:ve===p?Ke.s+M:Ke.s+h*ve)>1&&(b=1),it&&ve===d&&b>.1&&(b=.1),b<.06&&(b=.06),Number(b.toFixed(2)));var b}function P(Ke,ve,it){var b;return(b=it?Ke.v+v*ve:Ke.v-g*ve)>1&&(b=1),Number(b.toFixed(2))}function O(Ke){for(var ve=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},it=[],b=(0,u.uA)(Ke),N=d;N>0;N-=1){var S=y(b),$=T((0,u.uA)({h:D(S,N,!0),s:_(S,N,!0),v:P(S,N,!0)}));it.push($)}it.push(T(b));for(var R=1;R<=p;R+=1){var he=y(b),ze=T((0,u.uA)({h:D(he,R),s:_(he,R),v:P(he,R)}));it.push(ze)}return"dark"===ve.theme?f.map(function(bt){var Ft=bt.index,sn=bt.opacity,pn=T(function x(Ke,ve,it){var b=it/100;return{r:(ve.r-Ke.r)*b+Ke.r,g:(ve.g-Ke.g)*b+Ke.g,b:(ve.b-Ke.b)*b+Ke.b}}((0,u.uA)(ve.backgroundColor||"#141414"),(0,u.uA)(it[Ft]),100*sn));return pn}):it}var A={red:"#F5222D",volcano:"#FA541C",orange:"#FA8C16",gold:"#FAAD14",yellow:"#FADB14",lime:"#A0D911",green:"#52C41A",cyan:"#13C2C2",blue:"#1677FF",geekblue:"#2F54EB",purple:"#722ED1",magenta:"#EB2F96",grey:"#666666"},k={},F={};Object.keys(A).forEach(function(Ke){k[Ke]=O(A[Ke]),k[Ke].primary=k[Ke][5],F[Ke]=O(A[Ke],{theme:"dark",backgroundColor:"#141414"}),F[Ke].primary=F[Ke][5]});var Q=o(96814),ie=o(69862),ae=o(22096),xe=o(65592),Me=o(37398),Ye=o(99397),q=o(64716),ye=o(26306),ee=o(63020),Be=o(32181),Re=o(48180),ct=o(6593);const Ae="[@ant-design/icons-angular]:";function je(Ke){(0,n.X6Q)()&&console.warn(`${Ae} ${Ke}.`)}function ot(Ke){return O(Ke)[0]}function mt(Ke,ve){switch(ve){case"fill":return`${Ke}-fill`;case"outline":return`${Ke}-o`;case"twotone":return`${Ke}-twotone`;case void 0:return Ke;default:throw new Error(`${Ae}Theme "${ve}" is not a recognized theme!`)}}function B(Ke){return"object"==typeof Ke&&"string"==typeof Ke.name&&("string"==typeof Ke.theme||void 0===Ke.theme)&&"string"==typeof Ke.icon}function pt(Ke){const ve=Ke.split(":");switch(ve.length){case 1:return[Ke,""];case 2:return[ve[1],ve[0]];default:throw new Error(`${Ae}The icon type ${Ke} is not valid!`)}}function Ut(Ke){return new Error(`${Ae}the icon ${Ke} does not exist or is not registered.`)}function cn(){return new Error(`${Ae} tag not found.`)}const st=new n.OlP("ant_icons");let He=(()=>{class Ke{set twoToneColor({primaryColor:it,secondaryColor:b}){this._twoToneColorPalette.primaryColor=it,this._twoToneColorPalette.secondaryColor=b||ot(it)}get twoToneColor(){return{...this._twoToneColorPalette}}get _disableDynamicLoading(){return!1}constructor(it,b,N,S,$){this._rendererFactory=it,this._handler=b,this._document=N,this.sanitizer=S,this._antIcons=$,this.defaultTheme="outline",this._svgDefinitions=new Map,this._svgRenderedDefinitions=new Map,this._inProgressFetches=new Map,this._assetsUrlRoot="",this._twoToneColorPalette={primaryColor:"#333333",secondaryColor:"#E6E6E6"},this._enableJsonpLoading=!1,this._jsonpIconLoad$=new i.x,this._renderer=this._rendererFactory.createRenderer(null,null),this._handler&&(this._http=new ie.eN(this._handler)),this._antIcons&&this.addIcon(...this._antIcons)}useJsonpLoading(){this._enableJsonpLoading?je("You are already using jsonp loading."):(this._enableJsonpLoading=!0,window.__ant_icon_load=it=>{this._jsonpIconLoad$.next(it)})}changeAssetsSource(it){this._assetsUrlRoot=it.endsWith("/")?it:it+"/"}addIcon(...it){it.forEach(b=>{this._svgDefinitions.set(mt(b.name,b.theme),b)})}addIconLiteral(it,b){const[N,S]=pt(it);if(!S)throw function Lt(){return new Error(`${Ae}Type should have a namespace. Try "namespace:${name}".`)}();this.addIcon({name:it,icon:b})}clear(){this._svgDefinitions.clear(),this._svgRenderedDefinitions.clear()}getRenderedContent(it,b){const N=B(it)?it:this._svgDefinitions.get(it)||null;if(!N&&this._disableDynamicLoading)throw Ut(it);return(N?(0,ae.of)(N):this._loadIconDynamically(it)).pipe((0,Me.U)($=>{if(!$)throw Ut(it);return this._loadSVGFromCacheOrCreateNew($,b)}))}getCachedIcons(){return this._svgDefinitions}_loadIconDynamically(it){if(!this._http&&!this._enableJsonpLoading)return(0,ae.of)(function qt(){return function Mt(Ke){console.error(`${Ae} ${Ke}.`)}('you need to import "HttpClientModule" to use dynamic importing.'),null}());let b=this._inProgressFetches.get(it);if(!b){const[N,S]=pt(it),$=S?{name:it,icon:""}:function Ee(Ke){const ve=Ke.split("-"),it=function de(Ke){return"o"===Ke?"outline":Ke}(ve.splice(ve.length-1,1)[0]);return{name:ve.join("-"),theme:it,icon:""}}(N),he=(S?`${this._assetsUrlRoot}assets/${S}/${N}`:`${this._assetsUrlRoot}assets/${$.theme}/${$.name}`)+(this._enableJsonpLoading?".js":".svg"),ze=this.sanitizer.sanitize(n.q3G.URL,he);if(!ze)throw function en(Ke){return new Error(`${Ae}The url "${Ke}" is unsafe.`)}(he);b=(this._enableJsonpLoading?this._loadIconDynamicallyWithJsonp($,ze):this._http.get(ze,{responseType:"text"}).pipe((0,Me.U)(Ft=>({...$,icon:Ft})))).pipe((0,Ye.b)(Ft=>this.addIcon(Ft)),(0,q.x)(()=>this._inProgressFetches.delete(it)),(0,ye.K)(()=>(0,ae.of)(null)),(0,ee.B)()),this._inProgressFetches.set(it,b)}return b}_loadIconDynamicallyWithJsonp(it,b){return new xe.y(N=>{const S=this._document.createElement("script"),$=setTimeout(()=>{R(),N.error(function Wt(){return new Error(`${Ae}Importing timeout error.`)}())},6e3);function R(){S.parentNode.removeChild(S),clearTimeout($)}S.src=b,this._document.body.appendChild(S),this._jsonpIconLoad$.pipe((0,Be.h)(he=>he.name===it.name&&he.theme===it.theme),(0,Re.q)(1)).subscribe(he=>{N.next(he),R()})})}_loadSVGFromCacheOrCreateNew(it,b){let N;const S=b||this._twoToneColorPalette.primaryColor,$=ot(S)||this._twoToneColorPalette.secondaryColor,R="twotone"===it.theme?function we(Ke,ve,it,b){return`${mt(Ke,ve)}-${it}-${b}`}(it.name,it.theme,S,$):void 0===it.theme?it.name:mt(it.name,it.theme),he=this._svgRenderedDefinitions.get(R);return he?N=he.icon:(N=this._setSVGAttribute(this._colorizeSVGIcon(this._createSVGElementFromString(function Dt(Ke){return""!==pt(Ke)[1]}(it.name)?it.icon:function Ne(Ke){return Ke.replace(/['"]#333['"]/g,'"primaryColor"').replace(/['"]#E6E6E6['"]/g,'"secondaryColor"').replace(/['"]#D9D9D9['"]/g,'"secondaryColor"').replace(/['"]#D8D8D8['"]/g,'"secondaryColor"')}(it.icon)),"twotone"===it.theme,S,$)),this._svgRenderedDefinitions.set(R,{...it,icon:N})),function Ie(Ke){return Ke.cloneNode(!0)}(N)}_createSVGElementFromString(it){const b=this._document.createElement("div");b.innerHTML=it;const N=b.querySelector("svg");if(!N)throw cn;return N}_setSVGAttribute(it){return this._renderer.setAttribute(it,"width","1em"),this._renderer.setAttribute(it,"height","1em"),it}_colorizeSVGIcon(it,b,N,S){if(b){const $=it.childNodes,R=$.length;for(let he=0;he{class Ke{constructor(it,b,N){this._iconService=it,this._elementRef=b,this._renderer=N}ngOnChanges(it){(it.type||it.theme||it.twoToneColor)&&this._changeIcon()}_changeIcon(){return new Promise(it=>{if(!this.type)return this._clearSVGElement(),void it(null);const b=this._getSelfRenderMeta();this._iconService.getRenderedContent(this._parseIconType(this.type,this.theme),this.twoToneColor).subscribe(N=>{const S=this._getSelfRenderMeta();!function et(Ke,ve){return Ke.type===ve.type&&Ke.theme===ve.theme&&Ke.twoToneColor===ve.twoToneColor}(b,S)?it(null):(this._setSVGElement(N),it(N))})})}_getSelfRenderMeta(){return{type:this.type,theme:this.theme,twoToneColor:this.twoToneColor}}_parseIconType(it,b){if(B(it))return it;{const[N,S]=pt(it);return S?it:function U(Ke){return Ke.endsWith("-fill")||Ke.endsWith("-o")||Ke.endsWith("-twotone")}(N)?(b&&je(`'type' ${N} already gets a theme inside so 'theme' ${b} would be ignored`),N):mt(N,b||this._iconService.defaultTheme)}}_setSVGElement(it){this._clearSVGElement(),this._renderer.appendChild(this._elementRef.nativeElement,it)}_clearSVGElement(){const it=this._elementRef.nativeElement,b=it.childNodes;for(let S=b.length-1;S>=0;S--){const $=b[S];"svg"===$.tagName?.toLowerCase()&&this._renderer.removeChild(it,$)}}static#e=this.\u0275fac=function(b){return new(b||Ke)(n.Y36(He),n.Y36(n.SBq),n.Y36(n.Qsj))};static#t=this.\u0275dir=n.lG2({type:Ke,selectors:[["","antIcon",""]],inputs:{type:"type",theme:"theme",twoToneColor:"twoToneColor"},features:[n.TTD]})}return Ke})();var Qe=o(1608),ke=o(27754),fe=o(14715),qe=o(83064);const ge=[fe.V65,fe.ud1,fe.bBn,fe.BOg,fe.Hkd,fe.XuQ,fe.Rfq,fe.yQU,fe.U2Q,fe.UKj,fe.OYp,fe.BXH,fe.eLU,fe.x0x,fe.vkb,fe.VWu,fe.rMt,fe.vEg,fe.RIp,fe.RU0,fe.M8e,fe.ssy,fe.Z5F,fe.iUK,fe.LJh,fe.NFG,fe.UTl,fe.nrZ,fe.gvV,fe.d2H,fe.eFY,fe.sZJ,fe.np6,fe.w1L,fe.UY$,fe.v6v,fe.rHg,fe.v6v,fe.s_U,fe.TSL,fe.FsU,fe.cN2,fe.uIz,fe.d_$],Ze=new n.OlP("nz_icons"),Ue=(new n.OlP("nz_icon_default_twotone_color"),"#1890ff");let wt=(()=>{class Ke extends He{get _disableDynamicLoading(){return!this.platform.isBrowser}ngOnDestroy(){this.subscription&&(this.subscription.unsubscribe(),this.subscription=null)}normalizeSvgElement(it){it.getAttribute("viewBox")||this._renderer.setAttribute(it,"viewBox","0 0 1024 1024"),(!it.getAttribute("width")||!it.getAttribute("height"))&&(this._renderer.setAttribute(it,"width","1em"),this._renderer.setAttribute(it,"height","1em")),it.getAttribute("fill")||this._renderer.setAttribute(it,"fill","currentColor")}fetchFromIconfont(it){const{scriptUrl:b}=it;if(this._document&&!this.iconfontCache.has(b)){const N=this._renderer.createElement("script");this._renderer.setAttribute(N,"src",b),this._renderer.setAttribute(N,"data-namespace",b.replace(/^(https?|http):/g,"")),this._renderer.appendChild(this._document.body,N),this.iconfontCache.add(b)}}createIconfontIcon(it){return this._createSVGElementFromString(``)}constructor(it,b,N,S,$,R,he){super(it,$,R,b,[...ge,...he||[]]),this.nzConfigService=N,this.platform=S,this.configUpdated$=new i.x,this.iconfontCache=new Set,this.subscription=null,this.onConfigChange(),this.configDefaultTwotoneColor(),this.configDefaultTheme()}onConfigChange(){this.subscription=this.nzConfigService.getConfigChangeEventForComponent("icon").subscribe(()=>{this.configDefaultTwotoneColor(),this.configDefaultTheme(),this.configUpdated$.next()})}configDefaultTheme(){const it=this.getConfig();this.defaultTheme=it.nzTheme||"outline"}configDefaultTwotoneColor(){const b=this.getConfig().nzTwotoneColor||Ue;let N=Ue;b&&(b.startsWith("#")?N=b:(0,Qe.ZK)("Twotone color must be a hex color!")),this.twoToneColor={primaryColor:N}}getConfig(){return this.nzConfigService.getConfigForComponent("icon")||{}}static#e=this.\u0275fac=function(b){return new(b||Ke)(n.LFG(n.FYo),n.LFG(ct.H7),n.LFG(qe.jY),n.LFG(e.t4),n.LFG(ie.jN,8),n.LFG(Q.K0,8),n.LFG(Ze,8))};static#t=this.\u0275prov=n.Yz7({token:Ke,factory:Ke.\u0275fac,providedIn:"root"})}return Ke})();const De=new n.OlP("nz_icons_patch");let Pe=(()=>{class Ke{constructor(it,b){this.extraIcons=it,this.rootIconService=b,this.patched=!1}doPatch(){this.patched||(this.extraIcons.forEach(it=>this.rootIconService.addIcon(it)),this.patched=!0)}static#e=this.\u0275fac=function(b){return new(b||Ke)(n.LFG(De,2),n.LFG(wt))};static#t=this.\u0275prov=n.Yz7({token:Ke,factory:Ke.\u0275fac})}return Ke})(),Je=(()=>{class Ke extends It{set nzSpin(it){this.spin=it}set nzType(it){this.type=it}set nzTheme(it){this.theme=it}set nzTwotoneColor(it){this.twoToneColor=it}set nzIconfont(it){this.iconfont=it}constructor(it,b,N,S,$,R){super(S,N,$),this.ngZone=it,this.changeDetectorRef=b,this.iconService=S,this.renderer=$,this.cacheClassName=null,this.nzRotate=0,this.spin=!1,this.destroy$=new i.x,R&&R.doPatch(),this.el=N.nativeElement}ngOnChanges(it){const{nzType:b,nzTwotoneColor:N,nzSpin:S,nzTheme:$,nzRotate:R}=it;b||N||S||$?this.changeIcon2():R?this.handleRotate(this.el.firstChild):this._setSVGElement(this.iconService.createIconfontIcon(`#${this.iconfont}`))}ngOnInit(){this.renderer.setAttribute(this.el,"class",`anticon ${this.el.className}`.trim())}ngAfterContentChecked(){if(!this.type){const it=this.el.children;let b=it.length;if(!this.type&&it.length)for(;b--;){const N=it[b];"svg"===N.tagName.toLowerCase()&&this.iconService.normalizeSvgElement(N)}}}ngOnDestroy(){this.destroy$.next()}changeIcon2(){this.setClassName(),this.ngZone.runOutsideAngular(()=>{(0,l.D)(this._changeIcon()).pipe((0,C.R)(this.destroy$)).subscribe({next:it=>{this.ngZone.run(()=>{this.changeDetectorRef.detectChanges(),it&&(this.setSVGData(it),this.handleSpin(it),this.handleRotate(it))})},error:Qe.ZK})})}handleSpin(it){this.spin||"loading"===this.type?this.renderer.addClass(it,"anticon-spin"):this.renderer.removeClass(it,"anticon-spin")}handleRotate(it){this.nzRotate?this.renderer.setAttribute(it,"style",`transform: rotate(${this.nzRotate}deg)`):this.renderer.removeAttribute(it,"style")}setClassName(){this.cacheClassName&&this.renderer.removeClass(this.el,this.cacheClassName),this.cacheClassName=`anticon-${this.type}`,this.renderer.addClass(this.el,this.cacheClassName)}setSVGData(it){this.renderer.setAttribute(it,"data-icon",this.type),this.renderer.setAttribute(it,"aria-hidden","true")}static#e=this.\u0275fac=function(b){return new(b||Ke)(n.Y36(n.R0b),n.Y36(n.sBO),n.Y36(n.SBq),n.Y36(wt),n.Y36(n.Qsj),n.Y36(Pe,8))};static#t=this.\u0275dir=n.lG2({type:Ke,selectors:[["","nz-icon",""]],hostVars:2,hostBindings:function(b,N){2&b&&n.ekj("anticon",!0)},inputs:{nzSpin:"nzSpin",nzRotate:"nzRotate",nzType:"nzType",nzTheme:"nzTheme",nzTwotoneColor:"nzTwotoneColor",nzIconfont:"nzIconfont"},exportAs:["nzIcon"],features:[n.qOj,n.TTD]})}return(0,t.gn)([(0,ke.yF)()],Ke.prototype,"nzSpin",null),Ke})(),Ge=(()=>{class Ke{static forRoot(it){return{ngModule:Ke,providers:[{provide:Ze,useValue:it}]}}static forChild(it){return{ngModule:Ke,providers:[Pe,{provide:De,useValue:it}]}}static#e=this.\u0275fac=function(b){return new(b||Ke)};static#t=this.\u0275mod=n.oAB({type:Ke});static#n=this.\u0275inj=n.cJS({imports:[e.ud]})}return Ke})()},92760:(nt,I,o)=>{"use strict";o.d(I,{Gb:()=>ae,Ie:()=>ie,x8:()=>le});var e=o(97582),n=o(96814),t=o(65879),i=o(78645),l=o(92438),C=o(32181),E=o(48180),u=o(59773),z=o(83064),M=o(27754),h=o(33651),v=o(68484),g=o(36028),d=o(64194),p=o(99087),f=o(6593),y=o(34423),T=o(90551),x=o(49388),D=o(6192);const _=["imgRef"],P=["imagePreviewWrapper"];function O(xe,Me){if(1&xe){const Ye=t.EpF();t.TgZ(0,"li",10),t.NdJ("click",function(){const ee=t.CHM(Ye).$implicit;return t.KtG(ee.onClick())}),t._UZ(1,"span",11),t.qZA()}if(2&xe){const Ye=Me.$implicit,q=t.oxw();t.ekj("ant-image-preview-operations-operation-disabled",q.zoomOutDisabled&&"zoomOut"===Ye.type),t.xp6(1),t.Q6J("nzType",Ye.icon)}}function A(xe,Me){if(1&xe&&t._UZ(0,"img",13,14),2&xe){const Ye=t.oxw().$implicit,q=t.oxw();t.Udp("width",Ye.width)("height",Ye.height)("transform",q.previewImageTransform),t.uIk("src",q.sanitizerResourceUrl(Ye.src),t.LSH)("srcset",Ye.srcset)("alt",Ye.alt)}}function k(xe,Me){if(1&xe&&(t.ynx(0),t.YNc(1,A,2,9,"img",12),t.BQk()),2&xe){const Ye=Me.index,q=t.oxw();t.xp6(1),t.Q6J("ngIf",q.index===Ye)}}function F(xe,Me){if(1&xe){const Ye=t.EpF();t.ynx(0),t.TgZ(1,"div",15),t.NdJ("click",function(ye){t.CHM(Ye);const ee=t.oxw();return t.KtG(ee.onSwitchLeft(ye))}),t._UZ(2,"span",16),t.qZA(),t.TgZ(3,"div",17),t.NdJ("click",function(ye){t.CHM(Ye);const ee=t.oxw();return t.KtG(ee.onSwitchRight(ye))}),t._UZ(4,"span",18),t.qZA(),t.BQk()}if(2&xe){const Ye=t.oxw();t.xp6(1),t.ekj("ant-image-preview-switch-left-disabled",Ye.index<=0),t.xp6(2),t.ekj("ant-image-preview-switch-right-disabled",Ye.index>=Ye.images.length-1)}}const W=["*"],Y="image";class G{constructor(){this.nzKeyboard=!0,this.nzNoAnimation=!1,this.nzMaskClosable=!0,this.nzCloseOnNavigation=!0}}class H{constructor(Me,Ye,q){this.previewInstance=Me,this.config=Ye,this.overlayRef=q,this.destroy$=new i.x,q.keydownEvents().pipe((0,C.h)(ye=>this.config.nzKeyboard&&(ye.keyCode===g.hY||ye.keyCode===g.oh||ye.keyCode===g.SV)&&!(0,g.Vb)(ye))).subscribe(ye=>{ye.preventDefault(),ye.keyCode===g.hY&&this.close(),ye.keyCode===g.oh&&this.prev(),ye.keyCode===g.SV&&this.next()}),q.detachments().subscribe(()=>{this.overlayRef.dispose()}),Me.containerClick.pipe((0,E.q)(1),(0,u.R)(this.destroy$)).subscribe(()=>{this.close()}),Me.closeClick.pipe((0,E.q)(1),(0,u.R)(this.destroy$)).subscribe(()=>{this.close()}),Me.animationStateChanged.pipe((0,C.h)(ye=>"done"===ye.phaseName&&"leave"===ye.toState),(0,E.q)(1)).subscribe(()=>{this.dispose()})}switchTo(Me){this.previewInstance.switchTo(Me)}next(){this.previewInstance.next()}prev(){this.previewInstance.prev()}close(){this.previewInstance.startLeaveAnimation()}dispose(){this.destroy$.next(),this.overlayRef.dispose()}}function pe(xe,Me,Ye){const q=xe+Me,ye=(Me-Ye)/2;let ee=null;return Me>Ye?(xe>0&&(ee=ye),xe<0&&qYe)&&(ee=xe<0?ye:-ye),ee}const re={x:0,y:0};let be=(()=>{class xe{get animationDisabled(){return this.config.nzNoAnimation??!1}get maskClosable(){const Ye=this.nzConfigService.getConfigForComponent(Y)||{};return this.config.nzMaskClosable??Ye.nzMaskClosable??!0}constructor(Ye,q,ye,ee,Be,Re,ct,Ae){this.ngZone=Ye,this.host=q,this.cdr=ye,this.nzConfigService=ee,this.config=Be,this.overlayRef=Re,this.destroy$=ct,this.sanitizer=Ae,this.images=[],this.index=0,this.isDragging=!1,this.visible=!0,this.animationState="enter",this.animationStateChanged=new t.vpe,this.previewImageTransform="",this.previewImageWrapperTransform="",this.operations=[{icon:"close",onClick:()=>{this.onClose()},type:"close"},{icon:"zoom-in",onClick:()=>{this.onZoomIn()},type:"zoomIn"},{icon:"zoom-out",onClick:()=>{this.onZoomOut()},type:"zoomOut"},{icon:"rotate-right",onClick:()=>{this.onRotateRight()},type:"rotateRight"},{icon:"rotate-left",onClick:()=>{this.onRotateLeft()},type:"rotateLeft"}],this.zoomOutDisabled=!1,this.position={...re},this.containerClick=new t.vpe,this.closeClick=new t.vpe,this.zoom=this.config.nzZoom??1,this.rotate=this.config.nzRotate??0,this.updateZoomOutDisabled(),this.updatePreviewImageTransform(),this.updatePreviewImageWrapperTransform()}ngOnInit(){this.ngZone.runOutsideAngular(()=>{(0,l.R)(this.host.nativeElement,"click").pipe((0,u.R)(this.destroy$)).subscribe(Ye=>{Ye.target===Ye.currentTarget&&this.maskClosable&&this.containerClick.observers.length&&this.ngZone.run(()=>this.containerClick.emit())}),(0,l.R)(this.imagePreviewWrapper.nativeElement,"mousedown").pipe((0,u.R)(this.destroy$)).subscribe(()=>{this.isDragging=!0})})}setImages(Ye){this.images=Ye,this.cdr.markForCheck()}switchTo(Ye){this.index=Ye,this.cdr.markForCheck()}next(){this.index0&&(this.reset(),this.index--,this.updatePreviewImageTransform(),this.updatePreviewImageWrapperTransform(),this.updateZoomOutDisabled(),this.cdr.markForCheck())}markForCheck(){this.cdr.markForCheck()}onClose(){this.closeClick.emit()}onZoomIn(){this.zoom+=1,this.updatePreviewImageTransform(),this.updateZoomOutDisabled(),this.position={...re}}onZoomOut(){this.zoom>1&&(this.zoom-=1,this.updatePreviewImageTransform(),this.updateZoomOutDisabled(),this.position={...re})}onRotateRight(){this.rotate+=90,this.updatePreviewImageTransform()}onRotateLeft(){this.rotate-=90,this.updatePreviewImageTransform()}onSwitchLeft(Ye){Ye.preventDefault(),Ye.stopPropagation(),this.prev()}onSwitchRight(Ye){Ye.preventDefault(),Ye.stopPropagation(),this.next()}onAnimationStart(Ye){"enter"===Ye.toState?this.setEnterAnimationClass():"leave"===Ye.toState&&this.setLeaveAnimationClass(),this.animationStateChanged.emit(Ye)}onAnimationDone(Ye){"enter"===Ye.toState?this.setEnterAnimationClass():"leave"===Ye.toState&&this.setLeaveAnimationClass(),this.animationStateChanged.emit(Ye)}startLeaveAnimation(){this.animationState="leave",this.cdr.markForCheck()}onDragReleased(){this.isDragging=!1;const Ye=this.imageRef.nativeElement.offsetWidth*this.zoom,q=this.imageRef.nativeElement.offsetHeight*this.zoom,{left:ye,top:ee}=function te(xe){const Me=xe.getBoundingClientRect(),Ye=document.documentElement;return{left:Me.left+(window.pageXOffset||Ye.scrollLeft)-(Ye.clientLeft||document.body.clientLeft||0),top:Me.top+(window.pageYOffset||Ye.scrollTop)-(Ye.clientTop||document.body.clientTop||0)}}(this.imageRef.nativeElement),{width:Be,height:Re}=function ne(){return{width:document.documentElement.clientWidth,height:window.innerHeight||document.documentElement.clientHeight}}(),ct=this.rotate%180!=0,Mt=function j(xe){let Me={};return xe.width<=xe.clientWidth&&xe.height<=xe.clientHeight&&(Me={x:0,y:0}),(xe.width>xe.clientWidth||xe.height>xe.clientHeight)&&(Me={x:pe(xe.left,xe.width,xe.clientWidth),y:pe(xe.top,xe.height,xe.clientHeight)}),Me}({width:ct?q:Ye,height:ct?Ye:q,left:ye,top:ee,clientWidth:Be,clientHeight:Re});((0,M.DX)(Mt.x)||(0,M.DX)(Mt.y))&&(this.position={...this.position,...Mt})}sanitizerResourceUrl(Ye){return this.sanitizer.bypassSecurityTrustResourceUrl(Ye)}updatePreviewImageTransform(){this.previewImageTransform=`scale3d(${this.zoom}, ${this.zoom}, 1) rotate(${this.rotate}deg)`}updatePreviewImageWrapperTransform(){this.previewImageWrapperTransform=`translate3d(${this.position.x}px, ${this.position.y}px, 0)`}updateZoomOutDisabled(){this.zoomOutDisabled=this.zoom<=1}setEnterAnimationClass(){if(this.animationDisabled)return;const Ye=this.overlayRef.backdropElement;Ye&&(Ye.classList.add("ant-fade-enter"),Ye.classList.add("ant-fade-enter-active"))}setLeaveAnimationClass(){if(this.animationDisabled)return;const Ye=this.overlayRef.backdropElement;Ye&&(Ye.classList.add("ant-fade-leave"),Ye.classList.add("ant-fade-leave-active"))}reset(){this.zoom=1,this.rotate=0,this.position={...re}}static#e=this.\u0275fac=function(q){return new(q||xe)(t.Y36(t.R0b),t.Y36(t.SBq),t.Y36(t.sBO),t.Y36(z.jY),t.Y36(G),t.Y36(h.Iu),t.Y36(p.kn),t.Y36(f.H7))};static#t=this.\u0275cmp=t.Xpm({type:xe,selectors:[["nz-image-preview"]],viewQuery:function(q,ye){if(1&q&&(t.Gf(_,5),t.Gf(P,7)),2&q){let ee;t.iGM(ee=t.CRH())&&(ye.imageRef=ee.first),t.iGM(ee=t.CRH())&&(ye.imagePreviewWrapper=ee.first)}},hostAttrs:["tabindex","-1","role","document",1,"ant-image-preview-wrap"],hostVars:6,hostBindings:function(q,ye){1&q&&t.WFA("@fadeMotion.start",function(Be){return ye.onAnimationStart(Be)})("@fadeMotion.done",function(Be){return ye.onAnimationDone(Be)}),2&q&&(t.d8E("@.disabled",ye.config.nzNoAnimation)("@fadeMotion",ye.animationState),t.Udp("z-index",ye.config.nzZIndex),t.ekj("ant-image-preview-moving",ye.isDragging))},exportAs:["nzImagePreview"],features:[t._Bn([p.kn])],decls:11,vars:6,consts:[[1,"ant-image-preview"],["tabindex","0","aria-hidden","true",2,"width","0","height","0","overflow","hidden","outline","none"],[1,"ant-image-preview-content"],[1,"ant-image-preview-body"],[1,"ant-image-preview-operations"],["class","ant-image-preview-operations-operation",3,"ant-image-preview-operations-operation-disabled","click",4,"ngFor","ngForOf"],["cdkDrag","",1,"ant-image-preview-img-wrapper",3,"cdkDragFreeDragPosition","cdkDragReleased"],["imagePreviewWrapper",""],[4,"ngFor","ngForOf"],[4,"ngIf"],[1,"ant-image-preview-operations-operation",3,"click"],["nz-icon","","nzTheme","outline",1,"ant-image-preview-operations-icon",3,"nzType"],["cdkDragHandle","","class","ant-image-preview-img",3,"width","height","transform",4,"ngIf"],["cdkDragHandle","",1,"ant-image-preview-img"],["imgRef",""],[1,"ant-image-preview-switch-left",3,"click"],["nz-icon","","nzType","left","nzTheme","outline"],[1,"ant-image-preview-switch-right",3,"click"],["nz-icon","","nzType","right","nzTheme","outline"]],template:function(q,ye){1&q&&(t.TgZ(0,"div",0),t._UZ(1,"div",1),t.TgZ(2,"div",2)(3,"div",3)(4,"ul",4),t.YNc(5,O,2,3,"li",5),t.qZA(),t.TgZ(6,"div",6,7),t.NdJ("cdkDragReleased",function(){return ye.onDragReleased()}),t.YNc(8,k,2,1,"ng-container",8),t.qZA(),t.YNc(9,F,5,4,"ng-container",9),t.qZA()(),t._UZ(10,"div",1),t.qZA()),2&q&&(t.xp6(5),t.Q6J("ngForOf",ye.operations),t.xp6(1),t.Udp("transform",ye.previewImageWrapperTransform),t.Q6J("cdkDragFreeDragPosition",ye.position),t.xp6(2),t.Q6J("ngForOf",ye.images),t.xp6(1),t.Q6J("ngIf",ye.images.length>1))},dependencies:[y.Zt,y.Bh,n.sg,n.O5,T.Ls],encapsulation:2,data:{animation:[d.MC]},changeDetection:0})}return xe})(),le=(()=>{class xe{constructor(Ye,q,ye,ee){this.overlay=Ye,this.injector=q,this.nzConfigService=ye,this.directionality=ee}preview(Ye,q){return this.display(Ye,q)}display(Ye,q){const ye={...new G,...q??{}},ee=this.createOverlay(ye),Be=this.attachPreviewComponent(ee,ye);Be.setImages(Ye);const Re=new H(Be,ye,ee);return Be.previewRef=Re,Re}attachPreviewComponent(Ye,q){const ye=t.zs3.create({parent:this.injector,providers:[{provide:h.Iu,useValue:Ye},{provide:G,useValue:q}]}),ee=new v.C5(be,null,ye);return Ye.attach(ee).instance}createOverlay(Ye){const q=this.nzConfigService.getConfigForComponent(Y)||{},ye=new h.X_({hasBackdrop:!0,scrollStrategy:this.overlay.scrollStrategies.block(),positionStrategy:this.overlay.position().global(),disposeOnNavigation:Ye.nzCloseOnNavigation??q.nzCloseOnNavigation??!0,backdropClass:"ant-image-preview-mask",direction:Ye.nzDirection||q.nzDirection||this.directionality.value});return this.overlay.create(ye)}static#e=this.\u0275fac=function(q){return new(q||xe)(t.LFG(h.aV),t.LFG(t.zs3),t.LFG(z.jY),t.LFG(x.Is,8))};static#t=this.\u0275prov=t.Yz7({token:xe,factory:xe.\u0275fac})}return xe})(),ce=(()=>{class xe{constructor(){this.images=[]}addImage(Ye){this.images.push(Ye)}static#e=this.\u0275fac=function(q){return new(q||xe)};static#t=this.\u0275cmp=t.Xpm({type:xe,selectors:[["nz-image-group"]],exportAs:["nzImageGroup"],ngContentSelectors:W,decls:1,vars:0,template:function(q,ye){1&q&&(t.F$t(),t.Hsn(0))},encapsulation:2,changeDetection:0})}return xe})(),ie=(()=>{class xe{get previewable(){return!this.nzDisablePreview&&"error"!==this.status}constructor(Ye,q,ye,ee,Be,Re,ct){this.document=Ye,this.nzConfigService=q,this.elementRef=ye,this.nzImageService=ee,this.cdr=Be,this.parentGroup=Re,this.directionality=ct,this._nzModuleName="image",this.nzSrc="",this.nzSrcset="",this.nzDisablePreview=!1,this.nzFallback=null,this.nzPlaceholder=null,this.status="normal",this.backLoadDestroy$=new i.x,this.destroy$=new i.x}ngOnInit(){this.backLoad(),this.parentGroup&&this.parentGroup.addImage(this),this.directionality&&(this.directionality.change?.pipe((0,u.R)(this.destroy$)).subscribe(Ye=>{this.dir=Ye,this.cdr.detectChanges()}),this.dir=this.directionality.value)}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}onPreview(){if(this.previewable)if(this.parentGroup){const Ye=this.parentGroup.images.filter(Be=>Be.previewable),q=Ye.map(Be=>({src:Be.nzSrc,srcset:Be.nzSrcset})),ye=Ye.findIndex(Be=>this===Be);this.nzImageService.preview(q,{nzDirection:this.dir}).switchTo(ye)}else this.nzImageService.preview([{src:this.nzSrc,srcset:this.nzSrcset}],{nzDirection:this.dir})}getElement(){return this.elementRef}ngOnChanges(Ye){const{nzSrc:q}=Ye;q&&(this.getElement().nativeElement.src=q.currentValue,this.backLoad())}backLoad(){this.backLoadImage=this.document.createElement("img"),this.backLoadImage.src=this.nzSrc,this.backLoadImage.srcset=this.nzSrcset,this.status="loading",this.backLoadDestroy$.next(),this.backLoadDestroy$.complete(),this.backLoadDestroy$=new i.x,this.backLoadImage.complete?(this.status="normal",this.getElement().nativeElement.src=this.nzSrc,this.getElement().nativeElement.srcset=this.nzSrcset):(this.nzPlaceholder?(this.getElement().nativeElement.src=this.nzPlaceholder,this.getElement().nativeElement.srcset=""):(this.getElement().nativeElement.src=this.nzSrc,this.getElement().nativeElement.srcset=this.nzSrcset),(0,l.R)(this.backLoadImage,"load").pipe((0,u.R)(this.backLoadDestroy$),(0,u.R)(this.destroy$)).subscribe(()=>{this.status="normal",this.getElement().nativeElement.src=this.nzSrc,this.getElement().nativeElement.srcset=this.nzSrcset}),(0,l.R)(this.backLoadImage,"error").pipe((0,u.R)(this.backLoadDestroy$),(0,u.R)(this.destroy$)).subscribe(()=>{this.status="error",this.nzFallback&&(this.getElement().nativeElement.src=this.nzFallback,this.getElement().nativeElement.srcset="")}))}static#e=this.\u0275fac=function(q){return new(q||xe)(t.Y36(n.K0),t.Y36(z.jY),t.Y36(t.SBq),t.Y36(le),t.Y36(t.sBO),t.Y36(ce,8),t.Y36(x.Is,8))};static#t=this.\u0275dir=t.lG2({type:xe,selectors:[["img","nz-image",""]],hostBindings:function(q,ye){1&q&&t.NdJ("click",function(){return ye.onPreview()})},inputs:{nzSrc:"nzSrc",nzSrcset:"nzSrcset",nzDisablePreview:"nzDisablePreview",nzFallback:"nzFallback",nzPlaceholder:"nzPlaceholder"},exportAs:["nzImage"],features:[t.TTD]})}return(0,e.gn)([(0,M.yF)(),(0,z.oS)()],xe.prototype,"nzDisablePreview",void 0),(0,e.gn)([(0,z.oS)()],xe.prototype,"nzFallback",void 0),(0,e.gn)([(0,z.oS)()],xe.prototype,"nzPlaceholder",void 0),xe})(),ae=(()=>{class xe{static#e=this.\u0275fac=function(q){return new(q||xe)};static#t=this.\u0275mod=t.oAB({type:xe});static#n=this.\u0275inj=t.cJS({providers:[le],imports:[x.vT,h.U8,v.eL,y._t,n.ez,T.PV,D.YS]})}return xe})()},68373:(nt,I,o)=>{"use strict";o.d(I,{Zf:()=>Ye,_V:()=>ie});var e=o(97582),n=o(36028),t=o(65879),i=o(60095),l=o(78645),C=o(92438),E=o(63019),u=o(93997),z=o(59773),M=o(99087),h=o(27754),v=o(4300),g=o(49388),d=o(50883),p=o(96814),f=o(90551),y=o(8324);const T=["upHandler"],x=["downHandler"],D=["inputElement"];function _(q,ye){if(1&q&&t._UZ(0,"nz-form-item-feedback-icon",11),2&q){const ee=t.oxw();t.Q6J("status",ee.status)}}let ie=(()=>{class q{onModelChange(ee){this.parsedValue=this.nzParser(ee),this.inputElement.nativeElement.value=`${this.parsedValue}`;const Be=this.getCurrentValidValue(this.parsedValue);this.setValue(Be)}getCurrentValidValue(ee){let Be=ee;return Be=""===Be?"":this.isNotCompleteNumber(Be)?this.value:`${this.getValidValue(Be)}`,this.toNumber(Be)}isNotCompleteNumber(ee){return isNaN(ee)||""===ee||null===ee||!(!ee||ee.toString().indexOf(".")!==ee.toString().length-1)}getValidValue(ee){let Be=parseFloat(ee);return isNaN(Be)?ee:(Bethis.nzMax&&(Be=this.nzMax),Be)}toNumber(ee){if(this.isNotCompleteNumber(ee))return ee;const Be=String(ee);if(Be.indexOf(".")>=0&&(0,h.DX)(this.nzPrecision)){if("function"==typeof this.nzPrecisionMode)return this.nzPrecisionMode(ee,this.nzPrecision);if("cut"===this.nzPrecisionMode){const Re=Be.split(".");return Re[1]=Re[1].slice(0,this.nzPrecision),Number(Re.join("."))}return Number(Number(ee).toFixed(this.nzPrecision))}return Number(ee)}getRatio(ee){let Be=1;return ee.metaKey||ee.ctrlKey?Be=.1:ee.shiftKey&&(Be=10),Be}down(ee,Be){this.isFocused||this.focus(),this.step("down",ee,Be)}up(ee,Be){this.isFocused||this.focus(),this.step("up",ee,Be)}getPrecision(ee){const Be=ee.toString();if(Be.indexOf("e-")>=0)return parseInt(Be.slice(Be.indexOf("e-")+2),10);let Re=0;return Be.indexOf(".")>=0&&(Re=Be.length-Be.indexOf(".")-1),Re}getMaxPrecision(ee,Be){if((0,h.DX)(this.nzPrecision))return this.nzPrecision;const Re=this.getPrecision(Be),ct=this.getPrecision(this.nzStep),Ae=this.getPrecision(ee);return ee?Math.max(Ae,Re+ct):Re+ct}getPrecisionFactor(ee,Be){const Re=this.getMaxPrecision(ee,Be);return Math.pow(10,Re)}upStep(ee,Be){const Re=this.getPrecisionFactor(ee,Be),ct=Math.abs(this.getMaxPrecision(ee,Be));let Ae;return Ae="number"==typeof ee?((Re*ee+Re*this.nzStep*Be)/Re).toFixed(ct):this.nzMin===-1/0?this.nzStep:this.nzMin,this.toNumber(Ae)}downStep(ee,Be){const Re=this.getPrecisionFactor(ee,Be),ct=Math.abs(this.getMaxPrecision(ee,Be));let Ae;return Ae="number"==typeof ee?((Re*ee-Re*this.nzStep*Be)/Re).toFixed(ct):this.nzMin===-1/0?-this.nzStep:this.nzMin,this.toNumber(Ae)}step(ee,Be,Re=1){if(this.stop(),Be.preventDefault(),this.nzDisabled)return;const ct=this.getCurrentValidValue(this.parsedValue)||0;let Ae=0;"up"===ee?Ae=this.upStep(ct,Re):"down"===ee&&(Ae=this.downStep(ct,Re));const Mt=Ae>this.nzMax||Aethis.nzMax?Ae=this.nzMax:Ae{this[ee](Be,Re)},300))}stop(){this.autoStepTimer&&clearTimeout(this.autoStepTimer)}setValue(ee){if(`${this.value}`!=`${ee}`&&this.onChange(ee),this.value=ee,this.parsedValue=ee,this.disabledUp=this.disabledDown=!1,ee||0===ee){const Be=Number(ee);Be>=this.nzMax&&(this.disabledUp=!0),Be<=this.nzMin&&(this.disabledDown=!0)}}updateDisplayValue(ee){const Be=(0,h.DX)(this.nzFormatter(ee))?this.nzFormatter(ee):"";this.displayValue=Be,this.inputElement.nativeElement.value=`${Be}`}writeValue(ee){this.value=ee,this.setValue(ee),this.updateDisplayValue(ee),this.cdr.markForCheck()}registerOnChange(ee){this.onChange=ee}registerOnTouched(ee){this.onTouched=ee}setDisabledState(ee){this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||ee,this.isNzDisableFirstChange=!1,this.disabled$.next(this.nzDisabled),this.cdr.markForCheck()}focus(){this.focusMonitor.focusVia(this.inputElement,"keyboard")}blur(){this.inputElement.nativeElement.blur()}constructor(ee,Be,Re,ct,Ae,Mt,je,ot,mt){this.ngZone=ee,this.elementRef=Be,this.cdr=Re,this.focusMonitor=ct,this.renderer=Ae,this.directionality=Mt,this.destroy$=je,this.nzFormStatusService=ot,this.nzFormNoStatusService=mt,this.isNzDisableFirstChange=!0,this.isFocused=!1,this.disabled$=new l.x,this.disabledUp=!1,this.disabledDown=!1,this.dir="ltr",this.prefixCls="ant-input-number",this.status="",this.statusCls={},this.hasFeedback=!1,this.onChange=()=>{},this.onTouched=()=>{},this.nzBlur=new t.vpe,this.nzFocus=new t.vpe,this.nzSize="default",this.nzMin=-1/0,this.nzMax=1/0,this.nzParser=we=>we.trim().replace(/\u3002/g,".").replace(/[^\w\.-]+/g,""),this.nzPrecisionMode="toFixed",this.nzPlaceHolder="",this.nzStatus="",this.nzStep=1,this.nzInputMode="decimal",this.nzId=null,this.nzDisabled=!1,this.nzReadOnly=!1,this.nzAutoFocus=!1,this.nzBorderless=!1,this.nzFormatter=we=>we}ngOnInit(){this.nzFormStatusService?.formStatusChanges.pipe((0,u.x)((ee,Be)=>ee.status===Be.status&&ee.hasFeedback===Be.hasFeedback),(0,z.R)(this.destroy$)).subscribe(({status:ee,hasFeedback:Be})=>{this.setStatusStyles(ee,Be)}),this.focusMonitor.monitor(this.elementRef,!0).pipe((0,z.R)(this.destroy$)).subscribe(ee=>{ee?(this.isFocused=!0,this.nzFocus.emit()):(this.isFocused=!1,this.updateDisplayValue(this.value),this.nzBlur.emit(),Promise.resolve().then(()=>this.onTouched()))}),this.dir=this.directionality.value,this.directionality.change.pipe((0,z.R)(this.destroy$)).subscribe(ee=>{this.dir=ee}),this.setupHandlersListeners(),this.ngZone.runOutsideAngular(()=>{(0,C.R)(this.inputElement.nativeElement,"keyup").pipe((0,z.R)(this.destroy$)).subscribe(()=>this.stop()),(0,C.R)(this.inputElement.nativeElement,"keydown").pipe((0,z.R)(this.destroy$)).subscribe(ee=>{const{keyCode:Be}=ee;Be!==n.LH&&Be!==n.JH&&Be!==n.K5||this.ngZone.run(()=>{if(Be===n.LH){const Re=this.getRatio(ee);this.up(ee,Re),this.stop()}else if(Be===n.JH){const Re=this.getRatio(ee);this.down(ee,Re),this.stop()}else this.updateDisplayValue(this.value);this.cdr.markForCheck()})})})}ngOnChanges(ee){const{nzStatus:Be,nzDisabled:Re}=ee;if(ee.nzFormatter&&!ee.nzFormatter.isFirstChange()){const ct=this.getCurrentValidValue(this.parsedValue);this.setValue(ct),this.updateDisplayValue(ct)}Re&&this.disabled$.next(this.nzDisabled),Be&&this.setStatusStyles(this.nzStatus,this.hasFeedback)}ngAfterViewInit(){this.nzAutoFocus&&this.focus()}ngOnDestroy(){this.focusMonitor.stopMonitoring(this.elementRef)}setupHandlersListeners(){this.ngZone.runOutsideAngular(()=>{(0,E.T)((0,C.R)(this.upHandler.nativeElement,"mouseup"),(0,C.R)(this.upHandler.nativeElement,"mouseleave"),(0,C.R)(this.downHandler.nativeElement,"mouseup"),(0,C.R)(this.downHandler.nativeElement,"mouseleave")).pipe((0,z.R)(this.destroy$)).subscribe(()=>this.stop())})}setStatusStyles(ee,Be){this.status=ee,this.hasFeedback=Be,this.cdr.markForCheck(),this.statusCls=(0,h.Zu)(this.prefixCls,ee,Be),Object.keys(this.statusCls).forEach(Re=>{this.statusCls[Re]?this.renderer.addClass(this.elementRef.nativeElement,Re):this.renderer.removeClass(this.elementRef.nativeElement,Re)})}static#e=this.\u0275fac=function(Be){return new(Be||q)(t.Y36(t.R0b),t.Y36(t.SBq),t.Y36(t.sBO),t.Y36(v.tE),t.Y36(t.Qsj),t.Y36(g.Is,8),t.Y36(M.kn),t.Y36(d.kH,8),t.Y36(d.yW,8))};static#t=this.\u0275cmp=t.Xpm({type:q,selectors:[["nz-input-number"]],viewQuery:function(Be,Re){if(1&Be&&(t.Gf(T,7),t.Gf(x,7),t.Gf(D,7)),2&Be){let ct;t.iGM(ct=t.CRH())&&(Re.upHandler=ct.first),t.iGM(ct=t.CRH())&&(Re.downHandler=ct.first),t.iGM(ct=t.CRH())&&(Re.inputElement=ct.first)}},hostAttrs:[1,"ant-input-number"],hostVars:16,hostBindings:function(Be,Re){2&Be&&t.ekj("ant-input-number-in-form-item",!!Re.nzFormStatusService)("ant-input-number-focused",Re.isFocused)("ant-input-number-lg","large"===Re.nzSize)("ant-input-number-sm","small"===Re.nzSize)("ant-input-number-disabled",Re.nzDisabled)("ant-input-number-readonly",Re.nzReadOnly)("ant-input-number-rtl","rtl"===Re.dir)("ant-input-number-borderless",Re.nzBorderless)},inputs:{nzSize:"nzSize",nzMin:"nzMin",nzMax:"nzMax",nzParser:"nzParser",nzPrecision:"nzPrecision",nzPrecisionMode:"nzPrecisionMode",nzPlaceHolder:"nzPlaceHolder",nzStatus:"nzStatus",nzStep:"nzStep",nzInputMode:"nzInputMode",nzId:"nzId",nzDisabled:"nzDisabled",nzReadOnly:"nzReadOnly",nzAutoFocus:"nzAutoFocus",nzBorderless:"nzBorderless",nzFormatter:"nzFormatter"},outputs:{nzBlur:"nzBlur",nzFocus:"nzFocus"},exportAs:["nzInputNumber"],features:[t._Bn([{provide:i.JU,useExisting:(0,t.Gpc)(()=>q),multi:!0},M.kn]),t.TTD],decls:11,vars:15,consts:[[1,"ant-input-number-handler-wrap"],["unselectable","unselectable",1,"ant-input-number-handler","ant-input-number-handler-up",3,"mousedown"],["upHandler",""],["nz-icon","","nzType","up",1,"ant-input-number-handler-up-inner"],["unselectable","unselectable",1,"ant-input-number-handler","ant-input-number-handler-down",3,"mousedown"],["downHandler",""],["nz-icon","","nzType","down",1,"ant-input-number-handler-down-inner"],[1,"ant-input-number-input-wrap"],["autocomplete","off",1,"ant-input-number-input",3,"disabled","placeholder","readOnly","ngModel","ngModelChange"],["inputElement",""],["class","ant-input-number-suffix",3,"status",4,"ngIf"],[1,"ant-input-number-suffix",3,"status"]],template:function(Be,Re){1&Be&&(t.TgZ(0,"div",0)(1,"span",1,2),t.NdJ("mousedown",function(Ae){return Re.up(Ae)}),t._UZ(3,"span",3),t.qZA(),t.TgZ(4,"span",4,5),t.NdJ("mousedown",function(Ae){return Re.down(Ae)}),t._UZ(6,"span",6),t.qZA()(),t.TgZ(7,"div",7)(8,"input",8,9),t.NdJ("ngModelChange",function(Ae){return Re.onModelChange(Ae)}),t.qZA()(),t.YNc(10,_,1,1,"nz-form-item-feedback-icon",10)),2&Be&&(t.xp6(1),t.ekj("ant-input-number-handler-up-disabled",Re.disabledUp),t.xp6(3),t.ekj("ant-input-number-handler-down-disabled",Re.disabledDown),t.xp6(4),t.Q6J("disabled",Re.nzDisabled)("placeholder",Re.nzPlaceHolder)("readOnly",Re.nzReadOnly)("ngModel",Re.displayValue),t.uIk("id",Re.nzId)("autofocus",Re.nzAutoFocus?"autofocus":null)("min",Re.nzMin)("max",Re.nzMax)("step",Re.nzStep)("inputmode",Re.nzInputMode),t.xp6(2),t.Q6J("ngIf",Re.hasFeedback&&!!Re.status&&!Re.nzFormNoStatusService))},dependencies:[p.O5,i.Fj,i.JJ,i.On,f.Ls,d.w_],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,h.yF)()],q.prototype,"nzDisabled",void 0),(0,e.gn)([(0,h.yF)()],q.prototype,"nzReadOnly",void 0),(0,e.gn)([(0,h.yF)()],q.prototype,"nzAutoFocus",void 0),(0,e.gn)([(0,h.yF)()],q.prototype,"nzBorderless",void 0),q})(),Ye=(()=>{class q{static#e=this.\u0275fac=function(Be){return new(Be||q)};static#t=this.\u0275mod=t.oAB({type:q});static#n=this.\u0275inj=t.cJS({imports:[g.vT,p.ez,i.u5,y.T,f.PV,d.mJ]})}return q})()},20824:(nt,I,o)=>{"use strict";o.d(I,{Zp:()=>xe,gB:()=>q,ke:()=>Ye,o7:()=>Be,rh:()=>ye,w:()=>ee});var e=o(97582),n=o(65879),t=o(78645),i=o(63019),l=o(36232),C=o(93997),E=o(59773),u=o(32181),z=o(27921),M=o(94664),h=o(21631),v=o(37398),g=o(50883),d=o(27754),p=o(60095),f=o(49388),y=o(4300),T=o(96814),x=o(90551),D=o(8324),_=o(62831),P=o(99087);const O=["nz-input-group-slot",""];function A(Re,ct){if(1&Re&&n._UZ(0,"span",2),2&Re){const Ae=n.oxw();n.Q6J("nzType",Ae.icon)}}function k(Re,ct){if(1&Re&&(n.ynx(0),n._uU(1),n.BQk()),2&Re){const Ae=n.oxw();n.xp6(1),n.Oqu(Ae.template)}}const F=["*"];function W(Re,ct){if(1&Re&&n._UZ(0,"span",7),2&Re){const Ae=n.oxw(2);n.Q6J("icon",Ae.nzAddOnBeforeIcon)("template",Ae.nzAddOnBefore)}}function K(Re,ct){}function _e(Re,ct){if(1&Re&&(n.TgZ(0,"span",8),n.YNc(1,K,0,0,"ng-template",9),n.qZA()),2&Re){const Ae=n.oxw(2),Mt=n.MAs(4);n.ekj("ant-input-affix-wrapper-disabled",Ae.disabled)("ant-input-affix-wrapper-sm",Ae.isSmall)("ant-input-affix-wrapper-lg",Ae.isLarge)("ant-input-affix-wrapper-focused",Ae.focused),n.Q6J("ngClass",Ae.affixInGroupStatusCls),n.xp6(1),n.Q6J("ngTemplateOutlet",Mt)}}function Y(Re,ct){if(1&Re&&n._UZ(0,"span",7),2&Re){const Ae=n.oxw(2);n.Q6J("icon",Ae.nzAddOnAfterIcon)("template",Ae.nzAddOnAfter)}}function G(Re,ct){if(1&Re&&(n.TgZ(0,"span",4),n.YNc(1,W,1,2,"span",5),n.YNc(2,_e,2,10,"span",6),n.YNc(3,Y,1,2,"span",5),n.qZA()),2&Re){const Ae=n.oxw(),Mt=n.MAs(6);n.xp6(1),n.Q6J("ngIf",Ae.nzAddOnBefore||Ae.nzAddOnBeforeIcon),n.xp6(1),n.Q6J("ngIf",Ae.isAffix||Ae.hasFeedback)("ngIfElse",Mt),n.xp6(1),n.Q6J("ngIf",Ae.nzAddOnAfter||Ae.nzAddOnAfterIcon)}}function H(Re,ct){}function j(Re,ct){if(1&Re&&n.YNc(0,H,0,0,"ng-template",9),2&Re){n.oxw(2);const Ae=n.MAs(4);n.Q6J("ngTemplateOutlet",Ae)}}function te(Re,ct){if(1&Re&&n.YNc(0,j,1,1,"ng-template",10),2&Re){const Ae=n.oxw(),Mt=n.MAs(6);n.Q6J("ngIf",Ae.isAffix)("ngIfElse",Mt)}}function ne(Re,ct){if(1&Re&&n._UZ(0,"span",13),2&Re){const Ae=n.oxw(2);n.Q6J("icon",Ae.nzPrefixIcon)("template",Ae.nzPrefix)}}function pe(Re,ct){}function re(Re,ct){if(1&Re&&n._UZ(0,"nz-form-item-feedback-icon",16),2&Re){const Ae=n.oxw(3);n.Q6J("status",Ae.status)}}function be(Re,ct){if(1&Re&&(n.TgZ(0,"span",14),n.YNc(1,re,1,1,"nz-form-item-feedback-icon",15),n.qZA()),2&Re){const Ae=n.oxw(2);n.Q6J("icon",Ae.nzSuffixIcon)("template",Ae.nzSuffix),n.xp6(1),n.Q6J("ngIf",Ae.isFeedback)}}function le(Re,ct){if(1&Re&&(n.YNc(0,ne,1,2,"span",11),n.YNc(1,pe,0,0,"ng-template",9),n.YNc(2,be,2,3,"span",12)),2&Re){const Ae=n.oxw(),Mt=n.MAs(6);n.Q6J("ngIf",Ae.nzPrefix||Ae.nzPrefixIcon),n.xp6(1),n.Q6J("ngTemplateOutlet",Mt),n.xp6(1),n.Q6J("ngIf",Ae.nzSuffix||Ae.nzSuffixIcon||Ae.isFeedback)}}function ce(Re,ct){if(1&Re&&(n.TgZ(0,"span",18),n._UZ(1,"nz-form-item-feedback-icon",16),n.qZA()),2&Re){const Ae=n.oxw(2);n.xp6(1),n.Q6J("status",Ae.status)}}function Q(Re,ct){if(1&Re&&(n.Hsn(0),n.YNc(1,ce,2,1,"span",17)),2&Re){const Ae=n.oxw();n.xp6(1),n.Q6J("ngIf",!Ae.isAddOn&&!Ae.isAffix&&Ae.isFeedback)}}const ie=[[["textarea","nz-input",""]]],ae=["textarea[nz-input]"];let xe=(()=>{class Re{get disabled(){return this.ngControl&&null!==this.ngControl.disabled?this.ngControl.disabled:this._disabled}set disabled(Ae){this._disabled=null!=Ae&&"false"!=`${Ae}`}constructor(Ae,Mt,je,ot,mt,we,de){this.ngControl=Ae,this.renderer=Mt,this.elementRef=je,this.hostView=ot,this.directionality=mt,this.nzFormStatusService=we,this.nzFormNoStatusService=de,this.nzBorderless=!1,this.nzSize="default",this.nzStepperless=!0,this.nzStatus="",this._disabled=!1,this.disabled$=new t.x,this.dir="ltr",this.prefixCls="ant-input",this.status="",this.statusCls={},this.hasFeedback=!1,this.feedbackRef=null,this.components=[],this.destroy$=new t.x}ngOnInit(){this.nzFormStatusService?.formStatusChanges.pipe((0,C.x)((Ae,Mt)=>Ae.status===Mt.status&&Ae.hasFeedback===Mt.hasFeedback),(0,E.R)(this.destroy$)).subscribe(({status:Ae,hasFeedback:Mt})=>{this.setStatusStyles(Ae,Mt)}),this.ngControl&&this.ngControl.statusChanges?.pipe((0,u.h)(()=>null!==this.ngControl.disabled),(0,E.R)(this.destroy$)).subscribe(()=>{this.disabled$.next(this.ngControl.disabled)}),this.dir=this.directionality.value,this.directionality.change?.pipe((0,E.R)(this.destroy$)).subscribe(Ae=>{this.dir=Ae})}ngOnChanges(Ae){const{disabled:Mt,nzStatus:je}=Ae;Mt&&this.disabled$.next(this.disabled),je&&this.setStatusStyles(this.nzStatus,this.hasFeedback)}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}setStatusStyles(Ae,Mt){this.status=Ae,this.hasFeedback=Mt,this.renderFeedbackIcon(),this.statusCls=(0,d.Zu)(this.prefixCls,Ae,Mt),Object.keys(this.statusCls).forEach(je=>{this.statusCls[je]?this.renderer.addClass(this.elementRef.nativeElement,je):this.renderer.removeClass(this.elementRef.nativeElement,je)})}renderFeedbackIcon(){if(!this.status||!this.hasFeedback||this.nzFormNoStatusService)return this.hostView.clear(),void(this.feedbackRef=null);this.feedbackRef=this.feedbackRef||this.hostView.createComponent(g.w_),this.feedbackRef.location.nativeElement.classList.add("ant-input-suffix"),this.feedbackRef.instance.status=this.status,this.feedbackRef.instance.updateIcon()}static#e=this.\u0275fac=function(Mt){return new(Mt||Re)(n.Y36(p.a5,10),n.Y36(n.Qsj),n.Y36(n.SBq),n.Y36(n.s_b),n.Y36(f.Is,8),n.Y36(g.kH,8),n.Y36(g.yW,8))};static#t=this.\u0275dir=n.lG2({type:Re,selectors:[["input","nz-input",""],["textarea","nz-input",""]],hostAttrs:[1,"ant-input"],hostVars:13,hostBindings:function(Mt,je){2&Mt&&(n.uIk("disabled",je.disabled||null),n.ekj("ant-input-disabled",je.disabled)("ant-input-borderless",je.nzBorderless)("ant-input-lg","large"===je.nzSize)("ant-input-sm","small"===je.nzSize)("ant-input-rtl","rtl"===je.dir)("ant-input-stepperless",je.nzStepperless))},inputs:{nzBorderless:"nzBorderless",nzSize:"nzSize",nzStepperless:"nzStepperless",nzStatus:"nzStatus",disabled:"disabled"},exportAs:["nzInput"],features:[n.TTD]})}return(0,e.gn)([(0,d.yF)()],Re.prototype,"nzBorderless",void 0),(0,e.gn)([(0,d.yF)()],Re.prototype,"nzStepperless",void 0),Re})(),Me=(()=>{class Re{constructor(){this.icon=null,this.type=null,this.template=null}static#e=this.\u0275fac=function(Mt){return new(Mt||Re)};static#t=this.\u0275cmp=n.Xpm({type:Re,selectors:[["","nz-input-group-slot",""]],hostVars:6,hostBindings:function(Mt,je){2&Mt&&n.ekj("ant-input-group-addon","addon"===je.type)("ant-input-prefix","prefix"===je.type)("ant-input-suffix","suffix"===je.type)},inputs:{icon:"icon",type:"type",template:"template"},attrs:O,ngContentSelectors:F,decls:3,vars:2,consts:[["nz-icon","",3,"nzType",4,"ngIf"],[4,"nzStringTemplateOutlet"],["nz-icon","",3,"nzType"]],template:function(Mt,je){1&Mt&&(n.F$t(),n.YNc(0,A,1,1,"span",0),n.YNc(1,k,2,1,"ng-container",1),n.Hsn(2)),2&Mt&&(n.Q6J("ngIf",je.icon),n.xp6(1),n.Q6J("nzStringTemplateOutlet",je.template))},dependencies:[T.O5,x.Ls,D.f],encapsulation:2,changeDetection:0})}return Re})(),Ye=(()=>{class Re{constructor(Ae){this.elementRef=Ae}static#e=this.\u0275fac=function(Mt){return new(Mt||Re)(n.Y36(n.SBq))};static#t=this.\u0275dir=n.lG2({type:Re,selectors:[["nz-input-group","nzSuffix",""],["nz-input-group","nzPrefix",""]]})}return Re})(),q=(()=>{class Re{constructor(Ae,Mt,je,ot,mt,we,de){this.focusMonitor=Ae,this.elementRef=Mt,this.renderer=je,this.cdr=ot,this.directionality=mt,this.nzFormStatusService=we,this.nzFormNoStatusService=de,this.nzAddOnBeforeIcon=null,this.nzAddOnAfterIcon=null,this.nzPrefixIcon=null,this.nzSuffixIcon=null,this.nzStatus="",this.nzSize="default",this.nzSearch=!1,this.nzCompact=!1,this.isLarge=!1,this.isSmall=!1,this.isAffix=!1,this.isAddOn=!1,this.isFeedback=!1,this.focused=!1,this.disabled=!1,this.dir="ltr",this.prefixCls="ant-input",this.affixStatusCls={},this.groupStatusCls={},this.affixInGroupStatusCls={},this.status="",this.hasFeedback=!1,this.destroy$=new t.x}updateChildrenInputSize(){this.listOfNzInputDirective&&this.listOfNzInputDirective.forEach(Ae=>Ae.nzSize=this.nzSize)}ngOnInit(){this.nzFormStatusService?.formStatusChanges.pipe((0,C.x)((Ae,Mt)=>Ae.status===Mt.status&&Ae.hasFeedback===Mt.hasFeedback),(0,E.R)(this.destroy$)).subscribe(({status:Ae,hasFeedback:Mt})=>{this.setStatusStyles(Ae,Mt)}),this.focusMonitor.monitor(this.elementRef,!0).pipe((0,E.R)(this.destroy$)).subscribe(Ae=>{this.focused=!!Ae,this.cdr.markForCheck()}),this.dir=this.directionality.value,this.directionality.change?.pipe((0,E.R)(this.destroy$)).subscribe(Ae=>{this.dir=Ae})}ngAfterContentInit(){this.updateChildrenInputSize();const Ae=this.listOfNzInputDirective.changes.pipe((0,z.O)(this.listOfNzInputDirective));Ae.pipe((0,M.w)(Mt=>(0,i.T)(Ae,...Mt.map(je=>je.disabled$))),(0,h.z)(()=>Ae),(0,v.U)(Mt=>Mt.some(je=>je.disabled)),(0,E.R)(this.destroy$)).subscribe(Mt=>{this.disabled=Mt,this.cdr.markForCheck()})}ngOnChanges(Ae){const{nzSize:Mt,nzSuffix:je,nzPrefix:ot,nzPrefixIcon:mt,nzSuffixIcon:we,nzAddOnAfter:de,nzAddOnBefore:U,nzAddOnAfterIcon:B,nzAddOnBeforeIcon:Ee,nzStatus:Ie}=Ae;Mt&&(this.updateChildrenInputSize(),this.isLarge="large"===this.nzSize,this.isSmall="small"===this.nzSize),(je||ot||mt||we)&&(this.isAffix=!!(this.nzSuffix||this.nzPrefix||this.nzPrefixIcon||this.nzSuffixIcon)),(de||U||B||Ee)&&(this.isAddOn=!!(this.nzAddOnAfter||this.nzAddOnBefore||this.nzAddOnAfterIcon||this.nzAddOnBeforeIcon),this.nzFormNoStatusService?.noFormStatus?.next(this.isAddOn)),Ie&&this.setStatusStyles(this.nzStatus,this.hasFeedback)}ngOnDestroy(){this.focusMonitor.stopMonitoring(this.elementRef),this.destroy$.next(),this.destroy$.complete()}setStatusStyles(Ae,Mt){this.status=Ae,this.hasFeedback=Mt,this.isFeedback=!!Ae&&Mt,this.isAffix=!!(this.nzSuffix||this.nzPrefix||this.nzPrefixIcon||this.nzSuffixIcon)||!this.isAddOn&&Mt,this.affixInGroupStatusCls=this.isAffix||this.isFeedback?this.affixStatusCls=(0,d.Zu)(`${this.prefixCls}-affix-wrapper`,Ae,Mt):{},this.cdr.markForCheck(),this.affixStatusCls=(0,d.Zu)(`${this.prefixCls}-affix-wrapper`,this.isAddOn?"":Ae,!this.isAddOn&&Mt),this.groupStatusCls=(0,d.Zu)(`${this.prefixCls}-group-wrapper`,this.isAddOn?Ae:"",!!this.isAddOn&&Mt);const ot={...this.affixStatusCls,...this.groupStatusCls};Object.keys(ot).forEach(mt=>{ot[mt]?this.renderer.addClass(this.elementRef.nativeElement,mt):this.renderer.removeClass(this.elementRef.nativeElement,mt)})}static#e=this.\u0275fac=function(Mt){return new(Mt||Re)(n.Y36(y.tE),n.Y36(n.SBq),n.Y36(n.Qsj),n.Y36(n.sBO),n.Y36(f.Is,8),n.Y36(g.kH,8),n.Y36(g.yW,8))};static#t=this.\u0275cmp=n.Xpm({type:Re,selectors:[["nz-input-group"]],contentQueries:function(Mt,je,ot){if(1&Mt&&n.Suo(ot,xe,4),2&Mt){let mt;n.iGM(mt=n.CRH())&&(je.listOfNzInputDirective=mt)}},hostVars:40,hostBindings:function(Mt,je){2&Mt&&n.ekj("ant-input-group-compact",je.nzCompact)("ant-input-search-enter-button",je.nzSearch)("ant-input-search",je.nzSearch)("ant-input-search-rtl","rtl"===je.dir)("ant-input-search-sm",je.nzSearch&&je.isSmall)("ant-input-search-large",je.nzSearch&&je.isLarge)("ant-input-group-wrapper",je.isAddOn)("ant-input-group-wrapper-rtl","rtl"===je.dir)("ant-input-group-wrapper-lg",je.isAddOn&&je.isLarge)("ant-input-group-wrapper-sm",je.isAddOn&&je.isSmall)("ant-input-affix-wrapper",je.isAffix&&!je.isAddOn)("ant-input-affix-wrapper-rtl","rtl"===je.dir)("ant-input-affix-wrapper-focused",je.isAffix&&je.focused)("ant-input-affix-wrapper-disabled",je.isAffix&&je.disabled)("ant-input-affix-wrapper-lg",je.isAffix&&!je.isAddOn&&je.isLarge)("ant-input-affix-wrapper-sm",je.isAffix&&!je.isAddOn&&je.isSmall)("ant-input-group",!je.isAffix&&!je.isAddOn)("ant-input-group-rtl","rtl"===je.dir)("ant-input-group-lg",!je.isAffix&&!je.isAddOn&&je.isLarge)("ant-input-group-sm",!je.isAffix&&!je.isAddOn&&je.isSmall)},inputs:{nzAddOnBeforeIcon:"nzAddOnBeforeIcon",nzAddOnAfterIcon:"nzAddOnAfterIcon",nzPrefixIcon:"nzPrefixIcon",nzSuffixIcon:"nzSuffixIcon",nzAddOnBefore:"nzAddOnBefore",nzAddOnAfter:"nzAddOnAfter",nzPrefix:"nzPrefix",nzStatus:"nzStatus",nzSuffix:"nzSuffix",nzSize:"nzSize",nzSearch:"nzSearch",nzCompact:"nzCompact"},exportAs:["nzInputGroup"],features:[n._Bn([g.yW]),n.TTD],ngContentSelectors:F,decls:7,vars:2,consts:[["class","ant-input-wrapper ant-input-group",4,"ngIf","ngIfElse"],["noAddOnTemplate",""],["affixTemplate",""],["contentTemplate",""],[1,"ant-input-wrapper","ant-input-group"],["nz-input-group-slot","","type","addon",3,"icon","template",4,"ngIf"],["class","ant-input-affix-wrapper",3,"ant-input-affix-wrapper-disabled","ant-input-affix-wrapper-sm","ant-input-affix-wrapper-lg","ant-input-affix-wrapper-focused","ngClass",4,"ngIf","ngIfElse"],["nz-input-group-slot","","type","addon",3,"icon","template"],[1,"ant-input-affix-wrapper",3,"ngClass"],[3,"ngTemplateOutlet"],[3,"ngIf","ngIfElse"],["nz-input-group-slot","","type","prefix",3,"icon","template",4,"ngIf"],["nz-input-group-slot","","type","suffix",3,"icon","template",4,"ngIf"],["nz-input-group-slot","","type","prefix",3,"icon","template"],["nz-input-group-slot","","type","suffix",3,"icon","template"],[3,"status",4,"ngIf"],[3,"status"],["nz-input-group-slot","","type","suffix",4,"ngIf"],["nz-input-group-slot","","type","suffix"]],template:function(Mt,je){if(1&Mt&&(n.F$t(),n.YNc(0,G,4,4,"span",0),n.YNc(1,te,1,2,"ng-template",null,1,n.W1O),n.YNc(3,le,3,3,"ng-template",null,2,n.W1O),n.YNc(5,Q,2,1,"ng-template",null,3,n.W1O)),2&Mt){const ot=n.MAs(2);n.Q6J("ngIf",je.isAddOn)("ngIfElse",ot)}},dependencies:[T.mk,T.O5,T.tP,g.w_,Me],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,d.yF)()],Re.prototype,"nzSearch",void 0),(0,e.gn)([(0,d.yF)()],Re.prototype,"nzCompact",void 0),Re})(),ye=(()=>{class Re{set nzAutosize(Ae){var je;"string"==typeof Ae||!0===Ae?this.autosize=!0:"string"!=typeof(je=Ae)&&"boolean"!=typeof je&&(je.maxRows||je.minRows)&&(this.autosize=!0,this.minRows=Ae.minRows,this.maxRows=Ae.maxRows,this.maxHeight=this.setMaxHeight(),this.minHeight=this.setMinHeight())}resizeToFitContent(Ae=!1){if(this.cacheTextareaLineHeight(),!this.cachedLineHeight)return;const Mt=this.el,je=Mt.value;if(!Ae&&this.minRows===this.previousMinRows&&je===this.previousValue)return;const ot=Mt.placeholder;Mt.classList.add("nz-textarea-autosize-measuring"),Mt.placeholder="";let mt=Math.round((Mt.scrollHeight-this.inputGap)/this.cachedLineHeight)*this.cachedLineHeight+this.inputGap;null!==this.maxHeight&&mt>this.maxHeight&&(mt=this.maxHeight),null!==this.minHeight&&mtrequestAnimationFrame(()=>{const{selectionStart:we,selectionEnd:de}=Mt;!this.destroy$.isStopped&&document.activeElement===Mt&&Mt.setSelectionRange(we,de)})),this.previousValue=je,this.previousMinRows=this.minRows}cacheTextareaLineHeight(){if(this.cachedLineHeight>=0||!this.el.parentNode)return;const Ae=this.el.cloneNode(!1);Ae.rows=1,Ae.style.position="absolute",Ae.style.visibility="hidden",Ae.style.border="none",Ae.style.padding="0",Ae.style.height="",Ae.style.minHeight="",Ae.style.maxHeight="",Ae.style.overflow="hidden",this.el.parentNode.appendChild(Ae),this.cachedLineHeight=Ae.clientHeight-this.inputGap,this.el.parentNode.removeChild(Ae),this.maxHeight=this.setMaxHeight(),this.minHeight=this.setMinHeight()}setMinHeight(){const Ae=this.minRows&&this.cachedLineHeight?this.minRows*this.cachedLineHeight+this.inputGap:null;return null!==Ae&&(this.el.style.minHeight=`${Ae}px`),Ae}setMaxHeight(){const Ae=this.maxRows&&this.cachedLineHeight?this.maxRows*this.cachedLineHeight+this.inputGap:null;return null!==Ae&&(this.el.style.maxHeight=`${Ae}px`),Ae}noopInputHandler(){}constructor(Ae,Mt,je,ot){this.elementRef=Ae,this.ngZone=Mt,this.platform=je,this.resizeService=ot,this.autosize=!1,this.el=this.elementRef.nativeElement,this.maxHeight=null,this.minHeight=null,this.destroy$=new t.x,this.inputGap=10}ngAfterViewInit(){this.autosize&&this.platform.isBrowser&&(this.resizeToFitContent(),this.resizeService.subscribe().pipe((0,E.R)(this.destroy$)).subscribe(()=>this.resizeToFitContent(!0)))}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}ngDoCheck(){this.autosize&&this.platform.isBrowser&&this.resizeToFitContent()}static#e=this.\u0275fac=function(Mt){return new(Mt||Re)(n.Y36(n.SBq),n.Y36(n.R0b),n.Y36(_.t4),n.Y36(P.rI))};static#t=this.\u0275dir=n.lG2({type:Re,selectors:[["textarea","nzAutosize",""]],hostAttrs:["rows","1"],hostBindings:function(Mt,je){1&Mt&&n.NdJ("input",function(){return je.noopInputHandler()})},inputs:{nzAutosize:"nzAutosize"},exportAs:["nzAutosize"]})}return Re})(),ee=(()=>{class Re{constructor(Ae,Mt){this.renderer=Ae,this.elementRef=Mt,this.nzMaxCharacterCount=0,this.nzComputeCharacterCount=je=>je.length,this.nzFormatter=(je,ot)=>`${je}${ot>0?`/${ot}`:""}`,this.configChange$=new t.x,this.destroy$=new t.x}ngAfterContentInit(){if(!this.nzInputDirective&&(0,n.X6Q)())throw new Error("[nz-textarea-count]: Could not find matching textarea[nz-input] child.");this.nzInputDirective.ngControl&&(0,i.T)(this.nzInputDirective.ngControl.valueChanges||l.E,this.configChange$).pipe((0,E.R)(this.destroy$),(0,v.U)(()=>this.nzInputDirective.ngControl.value),(0,z.O)(this.nzInputDirective.ngControl.value)).subscribe(Mt=>{this.setDataCount(Mt)})}setDataCount(Ae){const Mt=(0,d.DX)(Ae)?String(Ae):"",je=this.nzComputeCharacterCount(Mt),ot=this.nzFormatter(je,this.nzMaxCharacterCount);this.renderer.setAttribute(this.elementRef.nativeElement,"data-count",ot)}ngOnDestroy(){this.configChange$.complete(),this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(Mt){return new(Mt||Re)(n.Y36(n.Qsj),n.Y36(n.SBq))};static#t=this.\u0275cmp=n.Xpm({type:Re,selectors:[["nz-textarea-count"]],contentQueries:function(Mt,je,ot){if(1&Mt&&n.Suo(ot,xe,7),2&Mt){let mt;n.iGM(mt=n.CRH())&&(je.nzInputDirective=mt.first)}},hostAttrs:[1,"ant-input-textarea-show-count"],inputs:{nzMaxCharacterCount:"nzMaxCharacterCount",nzComputeCharacterCount:"nzComputeCharacterCount",nzFormatter:"nzFormatter"},ngContentSelectors:ae,decls:1,vars:0,template:function(Mt,je){1&Mt&&(n.F$t(ie),n.Hsn(0))},encapsulation:2,changeDetection:0})}return Re})(),Be=(()=>{class Re{static#e=this.\u0275fac=function(Mt){return new(Mt||Re)};static#t=this.\u0275mod=n.oAB({type:Re});static#n=this.\u0275inj=n.cJS({imports:[f.vT,T.ez,x.PV,_.ud,D.T,g.mJ]})}return Re})()},16976:(nt,I,o)=>{"use strict";o.d(I,{n_:()=>Ke,AA:()=>ve,yi:()=>qe,Ph:()=>b});var e=o(65879),n=o(96814),t=o(96928),i=o(8324),l=o(97582),C=o(27754),E=o(78645),u=o(74911),z=o(22096),M=o(63019),h=o(65592),v=o(65619),g=o(48180),d=o(37398),p=o(54829),f=o(79360),y=o(8251);function T(N,S){return S?$=>$.pipe(T((R,he)=>(0,p.Xf)(N(R,he)).pipe((0,d.U)((ze,bt)=>S(R,ze,he,bt))))):(0,f.e)(($,R)=>{let he=0,ze=null,bt=!1;$.subscribe((0,y.x)(R,Ft=>{ze||(ze=(0,y.x)(R,void 0,()=>{ze=null,bt&&R.complete()}),(0,p.Xf)(N(Ft,he++)).subscribe(ze))},()=>{bt=!0,!ze&&R.complete()}))})}var x=o(27921),D=o(59773),_=o(99087),P=o(60804),O=o(49388),A=o(77273),k=o(10095);const F=["*"];function W(N,S){if(1&N&&e._UZ(0,"nz-avatar",3),2&N){const $=e.oxw();e.Q6J("nzSrc",$.nzSrc)}}function K(N,S){1&N&&e.Hsn(0,0,["*ngIf","!nzSrc"])}function _e(N,S){if(1&N&&e._UZ(0,"nz-list-item-meta-avatar",3),2&N){const $=e.oxw();e.Q6J("nzSrc",$.avatarStr)}}function Y(N,S){if(1&N&&(e.TgZ(0,"nz-list-item-meta-avatar"),e.GkF(1,4),e.qZA()),2&N){const $=e.oxw();e.xp6(1),e.Q6J("ngTemplateOutlet",$.avatarTpl)}}function G(N,S){if(1&N&&(e.ynx(0),e._uU(1),e.BQk()),2&N){const $=e.oxw(3);e.xp6(1),e.Oqu($.nzTitle)}}function H(N,S){if(1&N&&(e.TgZ(0,"nz-list-item-meta-title"),e.YNc(1,G,2,1,"ng-container",6),e.qZA()),2&N){const $=e.oxw(2);e.xp6(1),e.Q6J("nzStringTemplateOutlet",$.nzTitle)}}function j(N,S){if(1&N&&(e.ynx(0),e._uU(1),e.BQk()),2&N){const $=e.oxw(3);e.xp6(1),e.Oqu($.nzDescription)}}function te(N,S){if(1&N&&(e.TgZ(0,"nz-list-item-meta-description"),e.YNc(1,j,2,1,"ng-container",6),e.qZA()),2&N){const $=e.oxw(2);e.xp6(1),e.Q6J("nzStringTemplateOutlet",$.nzDescription)}}function ne(N,S){if(1&N&&(e.TgZ(0,"div",5),e.YNc(1,H,2,1,"nz-list-item-meta-title",1),e.YNc(2,te,2,1,"nz-list-item-meta-description",1),e.Hsn(3,1),e.Hsn(4,2),e.qZA()),2&N){const $=e.oxw();e.xp6(1),e.Q6J("ngIf",$.nzTitle&&!$.titleComponent),e.xp6(1),e.Q6J("ngIf",$.nzDescription&&!$.descriptionComponent)}}const pe=[[["nz-list-item-meta-avatar"]],[["nz-list-item-meta-title"]],[["nz-list-item-meta-description"]]],re=["nz-list-item-meta-avatar","nz-list-item-meta-title","nz-list-item-meta-description"];function be(N,S){1&N&&e.Hsn(0)}const le=["nz-list-item-actions",""];function ce(N,S){}function Q(N,S){1&N&&e._UZ(0,"em",3)}function ie(N,S){if(1&N&&(e.TgZ(0,"li"),e.YNc(1,ce,0,0,"ng-template",1),e.YNc(2,Q,1,0,"em",2),e.qZA()),2&N){const $=S.$implicit,R=S.last;e.xp6(1),e.Q6J("ngTemplateOutlet",$),e.xp6(1),e.Q6J("ngIf",!R)}}function ae(N,S){}const xe=function(N,S){return{$implicit:N,index:S}};function Me(N,S){if(1&N&&(e.ynx(0),e.YNc(1,ae,0,0,"ng-template",9),e.BQk()),2&N){const $=S.$implicit,R=S.index,he=e.oxw(2);e.xp6(1),e.Q6J("ngTemplateOutlet",he.nzRenderItem)("ngTemplateOutletContext",e.WLB(2,xe,$,R))}}function Ye(N,S){if(1&N&&(e.TgZ(0,"div",7),e.YNc(1,Me,2,5,"ng-container",8),e.Hsn(2,4),e.qZA()),2&N){const $=e.oxw();e.xp6(1),e.Q6J("ngForOf",$.nzDataSource)}}function q(N,S){if(1&N&&(e.ynx(0),e._uU(1),e.BQk()),2&N){const $=e.oxw(2);e.xp6(1),e.Oqu($.nzHeader)}}function ye(N,S){if(1&N&&(e.TgZ(0,"nz-list-header"),e.YNc(1,q,2,1,"ng-container",10),e.qZA()),2&N){const $=e.oxw();e.xp6(1),e.Q6J("nzStringTemplateOutlet",$.nzHeader)}}function ee(N,S){1&N&&e._UZ(0,"div"),2&N&&e.Udp("min-height",53,"px")}function Be(N,S){}function Re(N,S){if(1&N&&(e.TgZ(0,"div",13),e.YNc(1,Be,0,0,"ng-template",9),e.qZA()),2&N){const $=S.$implicit,R=S.index,he=e.oxw(2);e.Q6J("nzSpan",he.nzGrid.span||null)("nzXs",he.nzGrid.xs||null)("nzSm",he.nzGrid.sm||null)("nzMd",he.nzGrid.md||null)("nzLg",he.nzGrid.lg||null)("nzXl",he.nzGrid.xl||null)("nzXXl",he.nzGrid.xxl||null),e.xp6(1),e.Q6J("ngTemplateOutlet",he.nzRenderItem)("ngTemplateOutletContext",e.WLB(9,xe,$,R))}}function ct(N,S){if(1&N&&(e.TgZ(0,"div",11),e.YNc(1,Re,2,12,"div",12),e.qZA()),2&N){const $=e.oxw();e.Q6J("nzGutter",$.nzGrid.gutter||null),e.xp6(1),e.Q6J("ngForOf",$.nzDataSource)}}function Ae(N,S){if(1&N&&e._UZ(0,"nz-list-empty",14),2&N){const $=e.oxw();e.Q6J("nzNoResult",$.nzNoResult)}}function Mt(N,S){if(1&N&&(e.ynx(0),e._uU(1),e.BQk()),2&N){const $=e.oxw(2);e.xp6(1),e.Oqu($.nzFooter)}}function je(N,S){if(1&N&&(e.TgZ(0,"nz-list-footer"),e.YNc(1,Mt,2,1,"ng-container",10),e.qZA()),2&N){const $=e.oxw();e.xp6(1),e.Q6J("nzStringTemplateOutlet",$.nzFooter)}}function ot(N,S){}function mt(N,S){}function we(N,S){if(1&N&&(e.TgZ(0,"nz-list-pagination"),e.YNc(1,mt,0,0,"ng-template",6),e.qZA()),2&N){const $=e.oxw();e.xp6(1),e.Q6J("ngTemplateOutlet",$.nzPagination)}}const de=[[["nz-list-header"]],[["nz-list-footer"],["","nz-list-footer",""]],[["nz-list-load-more"],["","nz-list-load-more",""]],[["nz-list-pagination"],["","nz-list-pagination",""]],"*"],U=["nz-list-header","nz-list-footer, [nz-list-footer]","nz-list-load-more, [nz-list-load-more]","nz-list-pagination, [nz-list-pagination]","*"];function B(N,S){if(1&N&&e._UZ(0,"ul",6),2&N){const $=e.oxw(2);e.Q6J("nzActions",$.nzActions)}}function Ee(N,S){if(1&N&&(e.YNc(0,B,1,1,"ul",5),e.Hsn(1)),2&N){const $=e.oxw();e.Q6J("ngIf",$.nzActions&&$.nzActions.length>0)}}function Ie(N,S){if(1&N&&(e.ynx(0),e._uU(1),e.BQk()),2&N){const $=e.oxw(3);e.xp6(1),e.Oqu($.nzContent)}}function Ne(N,S){if(1&N&&(e.ynx(0),e.YNc(1,Ie,2,1,"ng-container",8),e.BQk()),2&N){const $=e.oxw(2);e.xp6(1),e.Q6J("nzStringTemplateOutlet",$.nzContent)}}function pt(N,S){if(1&N&&(e.Hsn(0,1),e.Hsn(1,2),e.YNc(2,Ne,2,1,"ng-container",7)),2&N){const $=e.oxw();e.xp6(2),e.Q6J("ngIf",$.nzContent)}}function Dt(N,S){1&N&&e.Hsn(0,3)}function Lt(N,S){}function Ut(N,S){}function qt(N,S){}function en(N,S){}function cn(N,S){if(1&N&&(e.YNc(0,Lt,0,0,"ng-template",9),e.YNc(1,Ut,0,0,"ng-template",9),e.YNc(2,qt,0,0,"ng-template",9),e.YNc(3,en,0,0,"ng-template",9)),2&N){const $=e.oxw(),R=e.MAs(3),he=e.MAs(5),ze=e.MAs(1);e.Q6J("ngTemplateOutlet",R),e.xp6(1),e.Q6J("ngTemplateOutlet",$.nzExtra),e.xp6(1),e.Q6J("ngTemplateOutlet",he),e.xp6(1),e.Q6J("ngTemplateOutlet",ze)}}function Wt(N,S){}function Vt(N,S){}function st(N,S){}function He(N,S){if(1&N&&(e.TgZ(0,"nz-list-item-extra"),e.YNc(1,st,0,0,"ng-template",9),e.qZA()),2&N){const $=e.oxw(2);e.xp6(1),e.Q6J("ngTemplateOutlet",$.nzExtra)}}function et(N,S){}function It(N,S){if(1&N&&(e.ynx(0),e.TgZ(1,"div",10),e.YNc(2,Wt,0,0,"ng-template",9),e.YNc(3,Vt,0,0,"ng-template",9),e.qZA(),e.YNc(4,He,2,1,"nz-list-item-extra",7),e.YNc(5,et,0,0,"ng-template",9),e.BQk()),2&N){const $=e.oxw(),R=e.MAs(3),he=e.MAs(1),ze=e.MAs(5);e.xp6(2),e.Q6J("ngTemplateOutlet",R),e.xp6(1),e.Q6J("ngTemplateOutlet",he),e.xp6(1),e.Q6J("ngIf",$.nzExtra),e.xp6(1),e.Q6J("ngTemplateOutlet",ze)}}const Ot=[[["nz-list-item-actions"],["","nz-list-item-actions",""]],[["nz-list-item-meta"],["","nz-list-item-meta",""]],"*",[["nz-list-item-extra"],["","nz-list-item-extra",""]]],xt=["nz-list-item-actions, [nz-list-item-actions]","nz-list-item-meta, [nz-list-item-meta]","*","nz-list-item-extra, [nz-list-item-extra]"];let Qe=(()=>{class N{static#e=this.\u0275fac=function(R){return new(R||N)};static#t=this.\u0275cmp=e.Xpm({type:N,selectors:[["nz-list-item-meta-title"]],exportAs:["nzListItemMetaTitle"],ngContentSelectors:F,decls:2,vars:0,consts:[[1,"ant-list-item-meta-title"]],template:function(R,he){1&R&&(e.F$t(),e.TgZ(0,"h4",0),e.Hsn(1),e.qZA())},encapsulation:2,changeDetection:0})}return N})(),ke=(()=>{class N{static#e=this.\u0275fac=function(R){return new(R||N)};static#t=this.\u0275cmp=e.Xpm({type:N,selectors:[["nz-list-item-meta-description"]],exportAs:["nzListItemMetaDescription"],ngContentSelectors:F,decls:2,vars:0,consts:[[1,"ant-list-item-meta-description"]],template:function(R,he){1&R&&(e.F$t(),e.TgZ(0,"div",0),e.Hsn(1),e.qZA())},encapsulation:2,changeDetection:0})}return N})(),fe=(()=>{class N{static#e=this.\u0275fac=function(R){return new(R||N)};static#t=this.\u0275cmp=e.Xpm({type:N,selectors:[["nz-list-item-meta-avatar"]],inputs:{nzSrc:"nzSrc"},exportAs:["nzListItemMetaAvatar"],ngContentSelectors:F,decls:3,vars:2,consts:[[1,"ant-list-item-meta-avatar"],[3,"nzSrc",4,"ngIf"],[4,"ngIf"],[3,"nzSrc"]],template:function(R,he){1&R&&(e.F$t(),e.TgZ(0,"div",0),e.YNc(1,W,1,1,"nz-avatar",1),e.YNc(2,K,1,0,"ng-content",2),e.qZA()),2&R&&(e.xp6(1),e.Q6J("ngIf",he.nzSrc),e.xp6(1),e.Q6J("ngIf",!he.nzSrc))},dependencies:[n.O5,t.Dz],encapsulation:2,changeDetection:0})}return N})(),qe=(()=>{class N{set nzAvatar($){$ instanceof e.Rgc?(this.avatarStr="",this.avatarTpl=$):this.avatarStr=$}constructor($){this.elementRef=$,this.avatarStr=""}static#e=this.\u0275fac=function(R){return new(R||N)(e.Y36(e.SBq))};static#t=this.\u0275cmp=e.Xpm({type:N,selectors:[["nz-list-item-meta"],["","nz-list-item-meta",""]],contentQueries:function(R,he,ze){if(1&R&&(e.Suo(ze,ke,5),e.Suo(ze,Qe,5)),2&R){let bt;e.iGM(bt=e.CRH())&&(he.descriptionComponent=bt.first),e.iGM(bt=e.CRH())&&(he.titleComponent=bt.first)}},hostAttrs:[1,"ant-list-item-meta"],inputs:{nzAvatar:"nzAvatar",nzTitle:"nzTitle",nzDescription:"nzDescription"},exportAs:["nzListItemMeta"],ngContentSelectors:re,decls:4,vars:3,consts:[[3,"nzSrc",4,"ngIf"],[4,"ngIf"],["class","ant-list-item-meta-content",4,"ngIf"],[3,"nzSrc"],[3,"ngTemplateOutlet"],[1,"ant-list-item-meta-content"],[4,"nzStringTemplateOutlet"]],template:function(R,he){1&R&&(e.F$t(pe),e.YNc(0,_e,1,1,"nz-list-item-meta-avatar",0),e.YNc(1,Y,2,1,"nz-list-item-meta-avatar",1),e.Hsn(2),e.YNc(3,ne,5,2,"div",2)),2&R&&(e.Q6J("ngIf",he.avatarStr),e.xp6(1),e.Q6J("ngIf",he.avatarTpl),e.xp6(2),e.Q6J("ngIf",he.nzTitle||he.nzDescription||he.descriptionComponent||he.titleComponent))},dependencies:[n.O5,n.tP,i.f,Qe,ke,fe],encapsulation:2,changeDetection:0})}return N})(),ge=(()=>{class N{static#e=this.\u0275fac=function(R){return new(R||N)};static#t=this.\u0275cmp=e.Xpm({type:N,selectors:[["nz-list-item-extra"],["","nz-list-item-extra",""]],hostAttrs:[1,"ant-list-item-extra"],exportAs:["nzListItemExtra"],ngContentSelectors:F,decls:1,vars:0,template:function(R,he){1&R&&(e.F$t(),e.Hsn(0))},encapsulation:2,changeDetection:0})}return N})(),Ze=(()=>{class N{static#e=this.\u0275fac=function(R){return new(R||N)};static#t=this.\u0275cmp=e.Xpm({type:N,selectors:[["nz-list-item-action"]],viewQuery:function(R,he){if(1&R&&e.Gf(e.Rgc,5),2&R){let ze;e.iGM(ze=e.CRH())&&(he.templateRef=ze.first)}},exportAs:["nzListItemAction"],ngContentSelectors:F,decls:1,vars:0,template:function(R,he){1&R&&(e.F$t(),e.YNc(0,be,1,0,"ng-template"))},encapsulation:2,changeDetection:0})}return N})(),$e=(()=>{class N{constructor($,R,he){this.ngZone=$,this.nzActions=[],this.actions=[],this.inputActionChanges$=new E.x,this.contentChildrenChanges$=(0,u.P)(()=>this.nzListItemActions?(0,z.of)(null):this.ngZone.onStable.pipe((0,g.q)(1),this.enterZone(),T(()=>this.nzListItemActions.changes.pipe((0,x.O)(this.nzListItemActions))))),(0,M.T)(this.contentChildrenChanges$,this.inputActionChanges$).pipe((0,D.R)(he)).subscribe(()=>{this.actions=this.nzActions.length?this.nzActions:this.nzListItemActions.map(ze=>ze.templateRef),R.detectChanges()})}ngOnChanges(){this.inputActionChanges$.next(null)}enterZone(){return $=>new h.y(R=>$.subscribe({next:he=>this.ngZone.run(()=>R.next(he))}))}static#e=this.\u0275fac=function(R){return new(R||N)(e.Y36(e.R0b),e.Y36(e.sBO),e.Y36(_.kn))};static#t=this.\u0275cmp=e.Xpm({type:N,selectors:[["ul","nz-list-item-actions",""]],contentQueries:function(R,he,ze){if(1&R&&e.Suo(ze,Ze,4),2&R){let bt;e.iGM(bt=e.CRH())&&(he.nzListItemActions=bt)}},hostAttrs:[1,"ant-list-item-action"],inputs:{nzActions:"nzActions"},exportAs:["nzListItemActions"],features:[e._Bn([_.kn]),e.TTD],attrs:le,decls:1,vars:1,consts:[[4,"ngFor","ngForOf"],[3,"ngTemplateOutlet"],["class","ant-list-item-action-split",4,"ngIf"],[1,"ant-list-item-action-split"]],template:function(R,he){1&R&&e.YNc(0,ie,3,2,"li",0),2&R&&e.Q6J("ngForOf",he.actions)},dependencies:[n.sg,n.O5,n.tP],encapsulation:2,changeDetection:0})}return N})(),Ue=(()=>{class N{static#e=this.\u0275fac=function(R){return new(R||N)};static#t=this.\u0275cmp=e.Xpm({type:N,selectors:[["nz-list-empty"]],hostAttrs:[1,"ant-list-empty-text"],inputs:{nzNoResult:"nzNoResult"},exportAs:["nzListHeader"],decls:1,vars:2,consts:[[3,"nzComponentName","specificContent"]],template:function(R,he){1&R&&e._UZ(0,"nz-embed-empty",0),2&R&&e.Q6J("nzComponentName","list")("specificContent",he.nzNoResult)},dependencies:[P.gB],encapsulation:2,changeDetection:0})}return N})(),wt=(()=>{class N{static#e=this.\u0275fac=function(R){return new(R||N)};static#t=this.\u0275cmp=e.Xpm({type:N,selectors:[["nz-list-header"]],hostAttrs:[1,"ant-list-header"],exportAs:["nzListHeader"],ngContentSelectors:F,decls:1,vars:0,template:function(R,he){1&R&&(e.F$t(),e.Hsn(0))},encapsulation:2,changeDetection:0})}return N})(),De=(()=>{class N{static#e=this.\u0275fac=function(R){return new(R||N)};static#t=this.\u0275cmp=e.Xpm({type:N,selectors:[["nz-list-footer"]],hostAttrs:[1,"ant-list-footer"],exportAs:["nzListFooter"],ngContentSelectors:F,decls:1,vars:0,template:function(R,he){1&R&&(e.F$t(),e.Hsn(0))},encapsulation:2,changeDetection:0})}return N})(),Pe=(()=>{class N{static#e=this.\u0275fac=function(R){return new(R||N)};static#t=this.\u0275cmp=e.Xpm({type:N,selectors:[["nz-list-pagination"]],hostAttrs:[1,"ant-list-pagination"],exportAs:["nzListPagination"],ngContentSelectors:F,decls:1,vars:0,template:function(R,he){1&R&&(e.F$t(),e.Hsn(0))},encapsulation:2,changeDetection:0})}return N})(),Je=(()=>{class N{static#e=this.\u0275fac=function(R){return new(R||N)};static#t=this.\u0275dir=e.lG2({type:N,selectors:[["nz-list-load-more"]],exportAs:["nzListLoadMoreDirective"]})}return N})(),Ke=(()=>{class N{get itemLayoutNotify$(){return this.itemLayoutNotifySource.asObservable()}constructor($){this.directionality=$,this.nzBordered=!1,this.nzGrid="",this.nzItemLayout="horizontal",this.nzRenderItem=null,this.nzLoading=!1,this.nzLoadMore=null,this.nzSize="default",this.nzSplit=!0,this.hasSomethingAfterLastItem=!1,this.dir="ltr",this.itemLayoutNotifySource=new v.X(this.nzItemLayout),this.destroy$=new E.x}ngOnInit(){this.dir=this.directionality.value,this.directionality.change?.pipe((0,D.R)(this.destroy$)).subscribe($=>{this.dir=$})}getSomethingAfterLastItem(){return!!(this.nzLoadMore||this.nzPagination||this.nzFooter||this.nzListFooterComponent||this.nzListPaginationComponent||this.nzListLoadMoreDirective)}ngOnChanges($){$.nzItemLayout&&this.itemLayoutNotifySource.next(this.nzItemLayout)}ngOnDestroy(){this.itemLayoutNotifySource.unsubscribe(),this.destroy$.next(),this.destroy$.complete()}ngAfterContentInit(){this.hasSomethingAfterLastItem=this.getSomethingAfterLastItem()}static#e=this.\u0275fac=function(R){return new(R||N)(e.Y36(O.Is,8))};static#t=this.\u0275cmp=e.Xpm({type:N,selectors:[["nz-list"],["","nz-list",""]],contentQueries:function(R,he,ze){if(1&R&&(e.Suo(ze,De,5),e.Suo(ze,Pe,5),e.Suo(ze,Je,5)),2&R){let bt;e.iGM(bt=e.CRH())&&(he.nzListFooterComponent=bt.first),e.iGM(bt=e.CRH())&&(he.nzListPaginationComponent=bt.first),e.iGM(bt=e.CRH())&&(he.nzListLoadMoreDirective=bt.first)}},hostAttrs:[1,"ant-list"],hostVars:16,hostBindings:function(R,he){2&R&&e.ekj("ant-list-rtl","rtl"===he.dir)("ant-list-vertical","vertical"===he.nzItemLayout)("ant-list-lg","large"===he.nzSize)("ant-list-sm","small"===he.nzSize)("ant-list-split",he.nzSplit)("ant-list-bordered",he.nzBordered)("ant-list-loading",he.nzLoading)("ant-list-something-after-last-item",he.hasSomethingAfterLastItem)},inputs:{nzDataSource:"nzDataSource",nzBordered:"nzBordered",nzGrid:"nzGrid",nzHeader:"nzHeader",nzFooter:"nzFooter",nzItemLayout:"nzItemLayout",nzRenderItem:"nzRenderItem",nzLoading:"nzLoading",nzLoadMore:"nzLoadMore",nzPagination:"nzPagination",nzSize:"nzSize",nzSplit:"nzSplit",nzNoResult:"nzNoResult"},exportAs:["nzList"],features:[e.TTD],ngContentSelectors:U,decls:15,vars:9,consts:[["itemsTpl",""],[4,"ngIf"],[3,"nzSpinning"],[3,"min-height",4,"ngIf"],["nz-row","",3,"nzGutter",4,"ngIf","ngIfElse"],[3,"nzNoResult",4,"ngIf"],[3,"ngTemplateOutlet"],[1,"ant-list-items"],[4,"ngFor","ngForOf"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[4,"nzStringTemplateOutlet"],["nz-row","",3,"nzGutter"],["nz-col","",3,"nzSpan","nzXs","nzSm","nzMd","nzLg","nzXl","nzXXl",4,"ngFor","ngForOf"],["nz-col","",3,"nzSpan","nzXs","nzSm","nzMd","nzLg","nzXl","nzXXl"],[3,"nzNoResult"]],template:function(R,he){if(1&R&&(e.F$t(de),e.YNc(0,Ye,3,1,"ng-template",null,0,e.W1O),e.YNc(2,ye,2,1,"nz-list-header",1),e.Hsn(3),e.TgZ(4,"nz-spin",2),e.ynx(5),e.YNc(6,ee,1,2,"div",3),e.YNc(7,ct,2,2,"div",4),e.YNc(8,Ae,1,1,"nz-list-empty",5),e.BQk(),e.qZA(),e.YNc(9,je,2,1,"nz-list-footer",1),e.Hsn(10,1),e.YNc(11,ot,0,0,"ng-template",6),e.Hsn(12,2),e.YNc(13,we,2,1,"nz-list-pagination",1),e.Hsn(14,3)),2&R){const ze=e.MAs(1);e.xp6(2),e.Q6J("ngIf",he.nzHeader),e.xp6(2),e.Q6J("nzSpinning",he.nzLoading),e.xp6(2),e.Q6J("ngIf",he.nzLoading&&he.nzDataSource&&0===he.nzDataSource.length),e.xp6(1),e.Q6J("ngIf",he.nzGrid&&he.nzDataSource)("ngIfElse",ze),e.xp6(1),e.Q6J("ngIf",!he.nzLoading&&he.nzDataSource&&0===he.nzDataSource.length),e.xp6(1),e.Q6J("ngIf",he.nzFooter),e.xp6(2),e.Q6J("ngTemplateOutlet",he.nzLoadMore),e.xp6(2),e.Q6J("ngIf",he.nzPagination)}},dependencies:[n.sg,n.O5,n.tP,A.W,k.t3,k.SK,i.f,wt,De,Pe,Ue],encapsulation:2,changeDetection:0})}return(0,l.gn)([(0,C.yF)()],N.prototype,"nzBordered",void 0),(0,l.gn)([(0,C.yF)()],N.prototype,"nzLoading",void 0),(0,l.gn)([(0,C.yF)()],N.prototype,"nzSplit",void 0),N})(),ve=(()=>{class N{get isVerticalAndExtra(){return!("vertical"!==this.itemLayout||!this.listItemExtraDirective&&!this.nzExtra)}constructor($,R){this.parentComp=$,this.cdr=R,this.nzActions=[],this.nzExtra=null,this.nzNoFlex=!1}ngAfterViewInit(){this.itemLayout$=this.parentComp.itemLayoutNotify$.subscribe($=>{this.itemLayout=$,this.cdr.detectChanges()})}ngOnDestroy(){this.itemLayout$&&this.itemLayout$.unsubscribe()}static#e=this.\u0275fac=function(R){return new(R||N)(e.Y36(Ke),e.Y36(e.sBO))};static#t=this.\u0275cmp=e.Xpm({type:N,selectors:[["nz-list-item"],["","nz-list-item",""]],contentQueries:function(R,he,ze){if(1&R&&e.Suo(ze,ge,5),2&R){let bt;e.iGM(bt=e.CRH())&&(he.listItemExtraDirective=bt.first)}},hostAttrs:[1,"ant-list-item"],hostVars:2,hostBindings:function(R,he){2&R&&e.ekj("ant-list-item-no-flex",he.nzNoFlex)},inputs:{nzActions:"nzActions",nzContent:"nzContent",nzExtra:"nzExtra",nzNoFlex:"nzNoFlex"},exportAs:["nzListItem"],ngContentSelectors:xt,decls:9,vars:2,consts:[["actionsTpl",""],["contentTpl",""],["extraTpl",""],["simpleTpl",""],[4,"ngIf","ngIfElse"],["nz-list-item-actions","",3,"nzActions",4,"ngIf"],["nz-list-item-actions","",3,"nzActions"],[4,"ngIf"],[4,"nzStringTemplateOutlet"],[3,"ngTemplateOutlet"],[1,"ant-list-item-main"]],template:function(R,he){if(1&R&&(e.F$t(Ot),e.YNc(0,Ee,2,1,"ng-template",null,0,e.W1O),e.YNc(2,pt,3,1,"ng-template",null,1,e.W1O),e.YNc(4,Dt,1,0,"ng-template",null,2,e.W1O),e.YNc(6,cn,4,4,"ng-template",null,3,e.W1O),e.YNc(8,It,6,4,"ng-container",4)),2&R){const ze=e.MAs(7);e.xp6(8),e.Q6J("ngIf",he.isVerticalAndExtra)("ngIfElse",ze)}},dependencies:[n.O5,n.tP,i.f,$e,ge],encapsulation:2,changeDetection:0})}return(0,l.gn)([(0,C.yF)()],N.prototype,"nzNoFlex",void 0),N})(),b=(()=>{class N{static#e=this.\u0275fac=function(R){return new(R||N)};static#t=this.\u0275mod=e.oAB({type:N});static#n=this.\u0275inj=e.cJS({imports:[O.vT,n.ez,A.j,k.Jb,t.Rt,i.T,P.Xo]})}return N})()},36513:(nt,I,o)=>{"use strict";o.d(I,{Gl:()=>Ye,YW:()=>xe,jO:()=>ae});var e=o(49388),n=o(33651),t=o(96814),i=o(65879),l=o(60095),C=o(50883),E=o(60804),u=o(90551),z=o(78645),M=o(92438),h=o(22096),v=o(65592),g=o(63019),d=o(47394),p=o(59773),f=o(93997),y=o(42460),T=o(37398),x=o(27921),D=o(94664),_=o(99087),P=o(97582),O=o(36028),A=o(68484),k=o(85448),F=o(27754);const W=["items"];function K(q,ye){1&q&&i.GkF(0)}const _e=function(q){return{$implicit:q}};function Y(q,ye){if(1&q&&(i.ynx(0),i.YNc(1,K,1,0,"ng-container",10),i.BQk()),2&q){const ee=i.oxw().$implicit,Be=i.oxw(2);i.xp6(1),i.Q6J("ngTemplateOutlet",Be.suggestionTemplate)("ngTemplateOutletContext",i.VKq(2,_e,ee))}}function G(q,ye){if(1&q&&i._uU(0),2&q){const ee=i.oxw().$implicit,Be=i.oxw(2);i.Oqu(Be.nzValueWith(ee))}}function H(q,ye){if(1&q){const ee=i.EpF();i.TgZ(0,"li",6,7),i.NdJ("click",function(){const ct=i.CHM(ee).$implicit,Ae=i.oxw(2);return i.KtG(Ae.selectSuggestion(ct))}),i.YNc(2,Y,2,4,"ng-container",8),i.YNc(3,G,1,1,"ng-template",null,9,i.W1O),i.qZA()}if(2&q){const ee=ye.index,Be=i.MAs(4),Re=i.oxw(2);i.ekj("ant-mentions-dropdown-menu-item-active",ee===Re.activeIndex)("ant-mentions-dropdown-menu-item-selected",ee===Re.activeIndex),i.xp6(2),i.Q6J("ngIf",Re.suggestionTemplate)("ngIfElse",Be)}}function j(q,ye){1&q&&(i.TgZ(0,"span"),i._UZ(1,"span",13),i.qZA())}function te(q,ye){if(1&q&&(i.TgZ(0,"span"),i._UZ(1,"nz-embed-empty",14),i.qZA()),2&q){const ee=i.oxw(3);i.xp6(1),i.Q6J("specificContent",ee.nzNotFoundContent)}}function ne(q,ye){if(1&q&&(i.TgZ(0,"li",11),i.YNc(1,j,2,0,"span",12),i.YNc(2,te,2,1,"span",12),i.qZA()),2&q){const ee=i.oxw(2);i.xp6(1),i.Q6J("ngIf",ee.nzLoading),i.xp6(1),i.Q6J("ngIf",!ee.nzLoading)}}function pe(q,ye){if(1&q&&(i.TgZ(0,"div",2)(1,"ul",3),i.YNc(2,H,5,6,"li",4),i.YNc(3,ne,3,2,"li",5),i.qZA()()),2&q){const ee=i.oxw();i.xp6(2),i.Q6J("ngForOf",ee.filteredSuggestions),i.xp6(1),i.Q6J("ngIf",0===ee.filteredSuggestions.length)}}function re(q,ye){if(1&q&&i._UZ(0,"nz-form-item-feedback-icon",15),2&q){const ee=i.oxw();i.Q6J("status",ee.status)}}const be=["*"];let le=(()=>{class q{static#e=this.\u0275fac=function(Be){return new(Be||q)};static#t=this.\u0275dir=i.lG2({type:q,selectors:[["","nzMentionSuggestion",""]],exportAs:["nzMentionSuggestion"]})}return q})();let Q=(()=>{class q{constructor(){this.triggerChange$=new z.x}triggerChanged(){return this.triggerChange$.asObservable()}registerTrigger(ee){this.trigger!==ee&&(this.trigger=ee,this.triggerChange$.next(ee))}ngOnDestroy(){this.triggerChange$.complete()}static#e=this.\u0275fac=function(Be){return new(Be||q)};static#t=this.\u0275prov=i.Yz7({token:q,factory:q.\u0275fac})}return q})();const ie={provide:l.JU,useExisting:(0,i.Gpc)(()=>ae),multi:!0};let ae=(()=>{class q{constructor(ee,Be,Re,ct,Ae){this.el=ee,this.ngZone=Be,this.ref=Re,this.destroy$=ct,this.nzMentionService=Ae,this.onChange=()=>{},this.onTouched=()=>{},this.onFocusin=new i.vpe,this.onBlur=new i.vpe,this.onInput=new i.vpe,this.onKeydown=new i.vpe,this.onClick=new i.vpe}completeEvents(){this.onFocusin.complete(),this.onBlur.complete(),this.onInput.complete(),this.onKeydown.complete(),this.onClick.complete()}focus(ee=null){this.el.nativeElement.focus(),this.el.nativeElement.setSelectionRange(ee,ee)}insertMention(ee){const Be=this.el.nativeElement.value,Re=`${ee.mention} `,ct=[Be.slice(0,ee.startPos+1),Re,Be.slice(ee.endPos,Be.length)].join("");this.el.nativeElement.value=ct,this.focus(ee.startPos+Re.length+1),this.onChange(ct),this.value=ct}writeValue(ee){this.value=ee,this.el.nativeElement.value="string"==typeof ee?ee:""}registerOnChange(ee){this.onChange=ee}registerOnTouched(ee){this.onTouched=ee}ngAfterViewInit(){this.nzMentionService.registerTrigger(this),this.setupEventListener("blur",this.onBlur),this.setupEventListener("focusin",this.onFocusin),this.setupEventListener("input",this.onInput,!0),this.setupEventListener("click",this.onClick,!0),this.setupEventListener("keydown",this.onKeydown,!0)}ngOnDestroy(){this.completeEvents()}setupEventListener(ee,Be,Re=!1){this.ngZone.runOutsideAngular(()=>{(0,M.R)(this.el.nativeElement,ee).pipe((0,p.R)(this.destroy$)).subscribe(ct=>{Be.observers.length&&this.ngZone.run(()=>{Be.emit(Re?ct:void 0),this.ref.markForCheck()})})})}static#e=this.\u0275fac=function(Be){return new(Be||q)(i.Y36(i.SBq),i.Y36(i.R0b),i.Y36(i.sBO),i.Y36(_.kn),i.Y36(Q))};static#t=this.\u0275dir=i.lG2({type:q,selectors:[["input","nzMentionTrigger",""],["textarea","nzMentionTrigger",""]],hostAttrs:["autocomplete","off"],outputs:{onFocusin:"onFocusin",onBlur:"onBlur",onInput:"onInput",onKeydown:"onKeydown",onClick:"onClick"},exportAs:["nzMentionTrigger"],features:[i._Bn([_.kn,ie])]})}return q})(),xe=(()=>{class q{set suggestionChild(ee){ee&&(this.suggestionTemplate=ee)}get triggerNativeElement(){return this.trigger.el.nativeElement}get focusItemElement(){const ee=this.items?.toArray();return ee&&ee[this.activeIndex]?ee[this.activeIndex].nativeElement:null}constructor(ee,Be,Re,ct,Ae,Mt,je,ot,mt,we,de,U){this.ngZone=ee,this.ngDocument=Be,this.directionality=Re,this.cdr=ct,this.overlay=Ae,this.viewContainerRef=Mt,this.elementRef=je,this.renderer=ot,this.nzMentionService=mt,this.destroy$=we,this.nzFormStatusService=de,this.nzFormNoStatusService=U,this.nzValueWith=B=>B,this.nzPrefix="@",this.nzLoading=!1,this.nzNotFoundContent="\u65e0\u5339\u914d\u7ed3\u679c\uff0c\u8f7b\u6572\u7a7a\u683c\u5b8c\u6210\u8f93\u5165",this.nzPlacement="bottom",this.nzSuggestions=[],this.nzStatus="",this.nzOnSelect=new i.vpe,this.nzOnSearchChange=new i.vpe,this.isOpen=!1,this.filteredSuggestions=[],this.suggestionTemplate=null,this.activeIndex=-1,this.dir="ltr",this.prefixCls="ant-mentions",this.statusCls={},this.status="",this.hasFeedback=!1,this.previousValue=null,this.cursorMention=null,this.overlayRef=null}ngOnInit(){this.nzFormStatusService?.formStatusChanges.pipe((0,f.x)((ee,Be)=>ee.status===Be.status&&ee.hasFeedback===Be.hasFeedback),(0,y.M)(this.nzFormNoStatusService?this.nzFormNoStatusService.noFormStatus:(0,h.of)(!1)),(0,T.U)(([{status:ee,hasFeedback:Be},Re])=>({status:Re?"":ee,hasFeedback:Be})),(0,p.R)(this.destroy$)).subscribe(({status:ee,hasFeedback:Be})=>{this.setStatusStyles(ee,Be)}),this.nzMentionService.triggerChanged().subscribe(ee=>{this.trigger=ee,this.bindTriggerEvents(),this.closeDropdown(),this.overlayRef=null}),this.dir=this.directionality.value,this.directionality.change?.pipe((0,p.R)(this.destroy$)).subscribe(ee=>{this.dir=ee})}ngOnChanges(ee){const{nzSuggestions:Be,nzStatus:Re}=ee;Be&&this.isOpen&&(this.previousValue=null,this.activeIndex=-1,this.resetDropdown(!1)),Re&&this.setStatusStyles(this.nzStatus,this.hasFeedback)}ngAfterViewInit(){this.items.changes.pipe((0,x.O)(this.items),(0,D.w)(()=>{const ee=this.items.toArray();return new v.y(Be=>this.ngZone.runOutsideAngular(()=>(0,g.T)(...ee.map(Re=>(0,M.R)(Re.nativeElement,"mousedown"))).subscribe(Be)))})).subscribe(ee=>{ee.preventDefault()})}ngOnDestroy(){this.closeDropdown()}closeDropdown(){this.overlayRef&&this.overlayRef.hasAttached()&&(this.overlayRef.detach(),this.overlayOutsideClickSubscription.unsubscribe(),this.isOpen=!1,this.cdr.markForCheck())}openDropdown(){this.attachOverlay(),this.isOpen=!0,this.cdr.markForCheck()}getMentions(){return this.trigger?(0,F.qR)(this.trigger.value,this.nzPrefix):[]}selectSuggestion(ee){const Be=this.nzValueWith(ee);this.trigger.insertMention({mention:Be,startPos:this.cursorMentionStart,endPos:this.cursorMentionEnd}),this.nzOnSelect.emit(ee),this.closeDropdown(),this.activeIndex=-1}handleInput(ee){const Be=ee.target;this.trigger.onChange(Be.value),this.trigger.value=Be.value,this.resetDropdown()}handleKeydown(ee){const Be=ee.keyCode;if(this.isOpen&&Be===O.K5&&-1!==this.activeIndex&&this.filteredSuggestions.length)this.selectSuggestion(this.filteredSuggestions[this.activeIndex]),ee.preventDefault();else if(Be===O.oh||Be===O.SV)this.resetDropdown(),ee.stopPropagation();else{if(this.isOpen&&(Be===O.Mf||Be===O.hY))return void this.closeDropdown();this.isOpen&&Be===O.LH&&(this.setPreviousItemActive(),ee.preventDefault(),ee.stopPropagation()),this.isOpen&&Be===O.JH&&(this.setNextItemActive(),ee.preventDefault(),ee.stopPropagation())}}handleClick(){this.resetDropdown()}bindTriggerEvents(){this.trigger.onInput.subscribe(ee=>this.handleInput(ee)),this.trigger.onKeydown.subscribe(ee=>this.handleKeydown(ee)),this.trigger.onClick.subscribe(()=>this.handleClick())}suggestionsFilter(ee,Be){const Re=ee.substring(1);if(this.previousValue===ee&&ee!==this.cursorMention[0])return;this.previousValue=ee,Be&&this.nzOnSearchChange.emit({value:this.cursorMention.substring(1),prefix:this.cursorMention[0]});const ct=Re.toLowerCase();this.filteredSuggestions=this.nzSuggestions.filter(Ae=>this.nzValueWith(Ae).toLowerCase().includes(ct))}resetDropdown(ee=!0){if(this.resetCursorMention(),"string"!=typeof this.cursorMention||!this.canOpen())return void this.closeDropdown();this.suggestionsFilter(this.cursorMention,ee);const Be=this.filteredSuggestions.indexOf(this.cursorMention.substring(1));this.activeIndex=Be>=0?Be:0,this.openDropdown()}setNextItemActive(){this.activeIndex=this.activeIndex+1<=this.filteredSuggestions.length-1?this.activeIndex+1:0,this.cdr.markForCheck(),this.scrollToFocusItem()}setPreviousItemActive(){this.activeIndex=this.activeIndex-1<0?this.filteredSuggestions.length-1:this.activeIndex-1,this.cdr.markForCheck(),this.scrollToFocusItem()}scrollToFocusItem(){this.focusItemElement&&this.focusItemElement.scrollIntoView({behavior:"smooth",block:"center",inline:"nearest"})}canOpen(){const ee=this.triggerNativeElement;return!ee.readOnly&&!ee.disabled}resetCursorMention(){const ee=this.triggerNativeElement.value.replace(/[\r\n]/g," ")||"",Be=this.triggerNativeElement.selectionStart,Re="string"==typeof this.nzPrefix?[this.nzPrefix]:this.nzPrefix;let ct=Re.length;for(;ct>=0;){const Ae=ee.lastIndexOf(Re[ct],Be),Mt=ee.indexOf(" ",Be)>-1?ee.indexOf(" ",Be):ee.length,je=ee.substring(Ae,Mt);if(!(Ae>0&&" "!==ee[Ae-1]||Ae<0||je.includes(Re[ct],1)||je.includes(" ")))return this.cursorMention=je,this.cursorMentionStart=Ae,void(this.cursorMentionEnd=Mt);this.cursorMention=null,this.cursorMentionStart=-1,this.cursorMentionEnd=-1,ct--}}updatePositions(){const ee=(0,F.Ly)(this.triggerNativeElement,this.cursorMentionStart),Be=ee.top-this.triggerNativeElement.getBoundingClientRect().height-this.triggerNativeElement.scrollTop+("bottom"===this.nzPlacement?ee.height-6:-6);this.positionStrategy.withDefaultOffsetX(ee.left-this.triggerNativeElement.scrollLeft).withDefaultOffsetY(Be),"bottom"===this.nzPlacement&&this.positionStrategy.withPositions([...k.fG]),"top"===this.nzPlacement&&this.positionStrategy.withPositions([...k.A7]),this.positionStrategy.apply()}subscribeOverlayOutsideClick(){const ee=Re=>{const ct=Re.target;return this.isOpen&&ct!==this.trigger.el.nativeElement&&!this.overlayRef?.overlayElement.contains(ct)},Be=new d.w0;return Be.add(this.overlayRef.outsidePointerEvents().subscribe(Re=>ee(Re)&&this.closeDropdown())),Be.add(this.ngZone.runOutsideAngular(()=>(0,M.R)(this.ngDocument,"touchend").subscribe(Re=>ee(Re)&&this.ngZone.run(()=>this.closeDropdown())))),Be}attachOverlay(){this.overlayRef||(this.portal=new A.UE(this.suggestionsTemp,this.viewContainerRef),this.overlayRef=this.overlay.create(this.getOverlayConfig())),this.overlayRef&&!this.overlayRef.hasAttached()&&(this.overlayRef.attach(this.portal),this.overlayOutsideClickSubscription=this.subscribeOverlayOutsideClick()),this.updatePositions()}getOverlayConfig(){return new n.X_({positionStrategy:this.getOverlayPosition(),scrollStrategy:this.overlay.scrollStrategies.reposition(),disposeOnNavigation:!0})}getOverlayPosition(){const ee=[new n.tR({originX:"start",originY:"bottom"},{overlayX:"start",overlayY:"top"}),new n.tR({originX:"start",originY:"top"},{overlayX:"start",overlayY:"bottom"})];return this.positionStrategy=this.overlay.position().flexibleConnectedTo(this.trigger.el).withPositions(ee).withFlexibleDimensions(!1).withPush(!1),this.positionStrategy}setStatusStyles(ee,Be){this.status=ee,this.hasFeedback=Be,this.cdr.markForCheck(),this.statusCls=(0,F.Zu)(this.prefixCls,ee,Be),Object.keys(this.statusCls).forEach(Re=>{this.statusCls[Re]?this.renderer.addClass(this.elementRef.nativeElement,Re):this.renderer.removeClass(this.elementRef.nativeElement,Re)})}static#e=this.\u0275fac=function(Be){return new(Be||q)(i.Y36(i.R0b),i.Y36(t.K0,8),i.Y36(e.Is,8),i.Y36(i.sBO),i.Y36(n.aV),i.Y36(i.s_b),i.Y36(i.SBq),i.Y36(i.Qsj),i.Y36(Q),i.Y36(_.kn),i.Y36(C.kH,8),i.Y36(C.yW,8))};static#t=this.\u0275cmp=i.Xpm({type:q,selectors:[["nz-mention"]],contentQueries:function(Be,Re,ct){if(1&Be&&i.Suo(ct,le,5,i.Rgc),2&Be){let Ae;i.iGM(Ae=i.CRH())&&(Re.suggestionChild=Ae.first)}},viewQuery:function(Be,Re){if(1&Be&&(i.Gf(i.Rgc,5),i.Gf(W,5,i.SBq)),2&Be){let ct;i.iGM(ct=i.CRH())&&(Re.suggestionsTemp=ct.first),i.iGM(ct=i.CRH())&&(Re.items=ct)}},hostAttrs:[1,"ant-mentions"],hostVars:2,hostBindings:function(Be,Re){2&Be&&i.ekj("ant-mentions-rtl","rtl"===Re.dir)},inputs:{nzValueWith:"nzValueWith",nzPrefix:"nzPrefix",nzLoading:"nzLoading",nzNotFoundContent:"nzNotFoundContent",nzPlacement:"nzPlacement",nzSuggestions:"nzSuggestions",nzStatus:"nzStatus"},outputs:{nzOnSelect:"nzOnSelect",nzOnSearchChange:"nzOnSearchChange"},exportAs:["nzMention"],features:[i._Bn([Q,_.kn]),i.TTD],ngContentSelectors:be,decls:4,vars:1,consts:[["suggestions",""],["class","ant-mentions-suffix",3,"status",4,"ngIf"],[1,"ant-mentions-dropdown"],["role","menu","tabindex","0",1,"ant-mentions-dropdown-menu"],["class","ant-mentions-dropdown-menu-item","role","menuitem","tabindex","-1",3,"ant-mentions-dropdown-menu-item-active","ant-mentions-dropdown-menu-item-selected","click",4,"ngFor","ngForOf"],["class","ant-mentions-dropdown-menu-item ant-mentions-dropdown-menu-item-disabled",4,"ngIf"],["role","menuitem","tabindex","-1",1,"ant-mentions-dropdown-menu-item",3,"click"],["items",""],[4,"ngIf","ngIfElse"],["defaultSuggestion",""],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"ant-mentions-dropdown-menu-item","ant-mentions-dropdown-menu-item-disabled"],[4,"ngIf"],["nz-icon","","nzType","loading"],["nzComponentName","select",3,"specificContent"],[1,"ant-mentions-suffix",3,"status"]],template:function(Be,Re){1&Be&&(i.F$t(),i.Hsn(0),i.YNc(1,pe,4,2,"ng-template",null,0,i.W1O),i.YNc(3,re,1,1,"nz-form-item-feedback-icon",1)),2&Be&&(i.xp6(3),i.Q6J("ngIf",Re.hasFeedback&&!!Re.status))},dependencies:[t.sg,t.O5,t.tP,u.Ls,E.gB,C.w_],encapsulation:2,changeDetection:0})}return(0,P.gn)([(0,F.yF)()],q.prototype,"nzLoading",void 0),q})(),Ye=(()=>{class q{static#e=this.\u0275fac=function(Be){return new(Be||q)};static#t=this.\u0275mod=i.oAB({type:q});static#n=this.\u0275inj=i.cJS({imports:[e.vT,t.ez,l.u5,n.U8,u.PV,E.Xo,C.mJ]})}return q})()},73460:(nt,I,o)=>{"use strict";o.d(I,{Cc:()=>Mt,YV:()=>en,hl:()=>ot,ip:()=>cn,rY:()=>Ne,u9:()=>we,uA:()=>qt,wO:()=>Lt});var e=o(97582),n=o(65879),t=o(78645),i=o(65619),l=o(63019),C=o(52572),E=o(37398),u=o(21631),z=o(32181),M=o(21441),h=o(29028),v=o(93997),g=o(59773),d=o(27921),p=o(94664),f=o(27754),y=o(52787),T=o(49388),x=o(33651),D=o(85448),_=o(62831),P=o(331),O=o(96814),A=o(90551),k=o(8324),F=o(64194);const W=["nz-menu-item",""],K=["*"],_e=["nz-submenu-title",""];function Y(Wt,Vt){if(1&Wt&&n._UZ(0,"span",4),2&Wt){const st=n.oxw();n.Q6J("nzType",st.nzIcon)}}function G(Wt,Vt){if(1&Wt&&(n.ynx(0),n.TgZ(1,"span",5),n._uU(2),n.qZA(),n.BQk()),2&Wt){const st=n.oxw();n.xp6(2),n.Oqu(st.nzTitle)}}function H(Wt,Vt){1&Wt&&n._UZ(0,"span",9)}function j(Wt,Vt){1&Wt&&n._UZ(0,"span",10)}function te(Wt,Vt){if(1&Wt&&(n.TgZ(0,"span",6),n.YNc(1,H,1,0,"span",7),n.YNc(2,j,1,0,"span",8),n.qZA()),2&Wt){const st=n.oxw();n.Q6J("ngSwitch",st.dir),n.xp6(1),n.Q6J("ngSwitchCase","rtl")}}function ne(Wt,Vt){1&Wt&&n._UZ(0,"span",11)}const pe=["nz-submenu-inline-child",""];function re(Wt,Vt){}const be=["nz-submenu-none-inline-child",""];function le(Wt,Vt){}const ce=["nz-submenu",""];function Q(Wt,Vt){1&Wt&&n.Hsn(0,0,["*ngIf","!nzTitle"])}function ie(Wt,Vt){if(1&Wt&&n._UZ(0,"div",6),2&Wt){const st=n.oxw(),He=n.MAs(7);n.Q6J("mode",st.mode)("nzOpen",st.nzOpen)("@.disabled",!(null==st.noAnimation||!st.noAnimation.nzNoAnimation))("nzNoAnimation",null==st.noAnimation?null:st.noAnimation.nzNoAnimation)("menuClass",st.nzMenuClassName)("templateOutlet",He)}}function ae(Wt,Vt){if(1&Wt){const st=n.EpF();n.TgZ(0,"div",8),n.NdJ("subMenuMouseState",function(et){n.CHM(st);const It=n.oxw(2);return n.KtG(It.setMouseEnterState(et))}),n.qZA()}if(2&Wt){const st=n.oxw(2),He=n.MAs(7);n.Q6J("theme",st.theme)("mode",st.mode)("nzOpen",st.nzOpen)("position",st.position)("nzDisabled",st.nzDisabled)("isMenuInsideDropDown",st.isMenuInsideDropDown)("templateOutlet",He)("menuClass",st.nzMenuClassName)("@.disabled",!(null==st.noAnimation||!st.noAnimation.nzNoAnimation))("nzNoAnimation",null==st.noAnimation?null:st.noAnimation.nzNoAnimation)}}function xe(Wt,Vt){if(1&Wt){const st=n.EpF();n.YNc(0,ae,1,10,"ng-template",7),n.NdJ("positionChange",function(et){n.CHM(st);const It=n.oxw();return n.KtG(It.onPositionChange(et))})}if(2&Wt){const st=n.oxw(),He=n.MAs(1);n.Q6J("cdkConnectedOverlayPositions",st.overlayPositions)("cdkConnectedOverlayOrigin",He)("cdkConnectedOverlayWidth",st.triggerWidth)("cdkConnectedOverlayOpen",st.nzOpen)("cdkConnectedOverlayTransformOriginOn",".ant-menu-submenu")}}function Me(Wt,Vt){1&Wt&&n.Hsn(0,1)}const Ye=[[["","title",""]],"*"],q=["[title]","*"],ye=["titleElement"],ee=["nz-menu-group",""];function Be(Wt,Vt){if(1&Wt&&(n.ynx(0),n._uU(1),n.BQk()),2&Wt){const st=n.oxw();n.xp6(1),n.Oqu(st.nzTitle)}}function Re(Wt,Vt){1&Wt&&n.Hsn(0,1,["*ngIf","!nzTitle"])}const ct=["*",[["","title",""]]],Ae=["*","[title]"],Mt=new n.OlP("NzIsInDropDownMenuToken"),je=new n.OlP("NzMenuServiceLocalToken");let ot=(()=>{class Wt{constructor(){this.descendantMenuItemClick$=new t.x,this.childMenuItemClick$=new t.x,this.theme$=new i.X("light"),this.mode$=new i.X("vertical"),this.inlineIndent$=new i.X(24),this.isChildSubMenuOpen$=new i.X(!1)}onDescendantMenuItemClick(st){this.descendantMenuItemClick$.next(st)}onChildMenuItemClick(st){this.childMenuItemClick$.next(st)}setMode(st){this.mode$.next(st)}setTheme(st){this.theme$.next(st)}setInlineIndent(st){this.inlineIndent$.next(st)}static#e=this.\u0275fac=function(He){return new(He||Wt)};static#t=this.\u0275prov=n.Yz7({token:Wt,factory:Wt.\u0275fac})}return Wt})(),mt=(()=>{class Wt{onChildMenuItemClick(st){this.childMenuItemClick$.next(st)}setOpenStateWithoutDebounce(st){this.isCurrentSubMenuOpen$.next(st)}setMouseEnterTitleOrOverlayState(st){this.isMouseEnterTitleOrOverlay$.next(st)}constructor(st,He,et){this.nzHostSubmenuService=st,this.nzMenuService=He,this.isMenuInsideDropDown=et,this.mode$=this.nzMenuService.mode$.pipe((0,E.U)(Qe=>"inline"===Qe?"inline":"vertical"===Qe||this.nzHostSubmenuService?"vertical":"horizontal")),this.level=1,this.isCurrentSubMenuOpen$=new i.X(!1),this.isChildSubMenuOpen$=new i.X(!1),this.isMouseEnterTitleOrOverlay$=new t.x,this.childMenuItemClick$=new t.x,this.destroy$=new t.x,this.nzHostSubmenuService&&(this.level=this.nzHostSubmenuService.level+1);const It=this.childMenuItemClick$.pipe((0,u.z)(()=>this.mode$),(0,z.h)(Qe=>"inline"!==Qe||this.isMenuInsideDropDown),(0,M.h)(!1)),Ot=(0,l.T)(this.isMouseEnterTitleOrOverlay$,It);(0,C.a)([this.isChildSubMenuOpen$,Ot]).pipe((0,E.U)(([Qe,ke])=>Qe||ke),(0,h.e)(150),(0,v.x)(),(0,g.R)(this.destroy$)).pipe((0,v.x)()).subscribe(Qe=>{this.setOpenStateWithoutDebounce(Qe),this.nzHostSubmenuService?this.nzHostSubmenuService.isChildSubMenuOpen$.next(Qe):this.nzMenuService.isChildSubMenuOpen$.next(Qe)})}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(He){return new(He||Wt)(n.LFG(Wt,12),n.LFG(ot),n.LFG(Mt))};static#t=this.\u0275prov=n.Yz7({token:Wt,factory:Wt.\u0275fac})}return Wt})(),we=(()=>{class Wt{clickMenuItem(st){this.nzDisabled?(st.preventDefault(),st.stopPropagation()):(this.nzMenuService.onDescendantMenuItemClick(this),this.nzSubmenuService?this.nzSubmenuService.onChildMenuItemClick(this):this.nzMenuService.onChildMenuItemClick(this))}setSelectedState(st){this.nzSelected=st,this.selected$.next(st)}updateRouterActive(){!this.listOfRouterLink||!this.router||!this.router.navigated||!this.nzMatchRouter||Promise.resolve().then(()=>{const st=this.hasActiveLinks();this.nzSelected!==st&&(this.nzSelected=st,this.setSelectedState(this.nzSelected),this.cdr.markForCheck())})}hasActiveLinks(){const st=this.isLinkActive(this.router);return this.routerLink&&st(this.routerLink)||this.listOfRouterLink.some(st)}isLinkActive(st){return He=>st.isActive(He.urlTree||"",{paths:this.nzMatchRouterExact?"exact":"subset",queryParams:this.nzMatchRouterExact?"exact":"subset",fragment:"ignored",matrixParams:"ignored"})}constructor(st,He,et,It,Ot,xt,Qe){this.nzMenuService=st,this.cdr=He,this.nzSubmenuService=et,this.isMenuInsideDropDown=It,this.directionality=Ot,this.routerLink=xt,this.router=Qe,this.destroy$=new t.x,this.level=this.nzSubmenuService?this.nzSubmenuService.level+1:1,this.selected$=new t.x,this.inlinePaddingLeft=null,this.dir="ltr",this.nzDisabled=!1,this.nzSelected=!1,this.nzDanger=!1,this.nzMatchRouterExact=!1,this.nzMatchRouter=!1,Qe&&this.router.events.pipe((0,g.R)(this.destroy$),(0,z.h)(ke=>ke instanceof y.m2)).subscribe(()=>{this.updateRouterActive()})}ngOnInit(){(0,C.a)([this.nzMenuService.mode$,this.nzMenuService.inlineIndent$]).pipe((0,g.R)(this.destroy$)).subscribe(([st,He])=>{this.inlinePaddingLeft="inline"===st?this.level*He:null}),this.dir=this.directionality.value,this.directionality.change?.pipe((0,g.R)(this.destroy$)).subscribe(st=>{this.dir=st})}ngAfterContentInit(){this.listOfRouterLink.changes.pipe((0,g.R)(this.destroy$)).subscribe(()=>this.updateRouterActive()),this.updateRouterActive()}ngOnChanges(st){st.nzSelected&&this.setSelectedState(this.nzSelected)}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(He){return new(He||Wt)(n.Y36(ot),n.Y36(n.sBO),n.Y36(mt,8),n.Y36(Mt),n.Y36(T.Is,8),n.Y36(y.rH,8),n.Y36(y.F0,8))};static#t=this.\u0275cmp=n.Xpm({type:Wt,selectors:[["","nz-menu-item",""]],contentQueries:function(He,et,It){if(1&He&&n.Suo(It,y.rH,5),2&He){let Ot;n.iGM(Ot=n.CRH())&&(et.listOfRouterLink=Ot)}},hostVars:20,hostBindings:function(He,et){1&He&&n.NdJ("click",function(Ot){return et.clickMenuItem(Ot)}),2&He&&(n.Udp("padding-left","rtl"===et.dir?null:et.nzPaddingLeft||et.inlinePaddingLeft,"px")("padding-right","rtl"===et.dir?et.nzPaddingLeft||et.inlinePaddingLeft:null,"px"),n.ekj("ant-dropdown-menu-item",et.isMenuInsideDropDown)("ant-dropdown-menu-item-selected",et.isMenuInsideDropDown&&et.nzSelected)("ant-dropdown-menu-item-danger",et.isMenuInsideDropDown&&et.nzDanger)("ant-dropdown-menu-item-disabled",et.isMenuInsideDropDown&&et.nzDisabled)("ant-menu-item",!et.isMenuInsideDropDown)("ant-menu-item-selected",!et.isMenuInsideDropDown&&et.nzSelected)("ant-menu-item-danger",!et.isMenuInsideDropDown&&et.nzDanger)("ant-menu-item-disabled",!et.isMenuInsideDropDown&&et.nzDisabled))},inputs:{nzPaddingLeft:"nzPaddingLeft",nzDisabled:"nzDisabled",nzSelected:"nzSelected",nzDanger:"nzDanger",nzMatchRouterExact:"nzMatchRouterExact",nzMatchRouter:"nzMatchRouter"},exportAs:["nzMenuItem"],features:[n.TTD],attrs:W,ngContentSelectors:K,decls:2,vars:0,consts:[[1,"ant-menu-title-content"]],template:function(He,et){1&He&&(n.F$t(),n.TgZ(0,"span",0),n.Hsn(1),n.qZA())},encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,f.yF)()],Wt.prototype,"nzDisabled",void 0),(0,e.gn)([(0,f.yF)()],Wt.prototype,"nzSelected",void 0),(0,e.gn)([(0,f.yF)()],Wt.prototype,"nzDanger",void 0),(0,e.gn)([(0,f.yF)()],Wt.prototype,"nzMatchRouterExact",void 0),(0,e.gn)([(0,f.yF)()],Wt.prototype,"nzMatchRouter",void 0),Wt})(),de=(()=>{class Wt{constructor(st,He){this.cdr=st,this.directionality=He,this.nzIcon=null,this.nzTitle=null,this.isMenuInsideDropDown=!1,this.nzDisabled=!1,this.paddingLeft=null,this.mode="vertical",this.toggleSubMenu=new n.vpe,this.subMenuMouseState=new n.vpe,this.dir="ltr",this.destroy$=new t.x}ngOnInit(){this.dir=this.directionality.value,this.directionality.change?.pipe((0,g.R)(this.destroy$)).subscribe(st=>{this.dir=st,this.cdr.detectChanges()})}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}setMouseState(st){this.nzDisabled||this.subMenuMouseState.next(st)}clickTitle(){"inline"===this.mode&&!this.nzDisabled&&this.toggleSubMenu.emit()}static#e=this.\u0275fac=function(He){return new(He||Wt)(n.Y36(n.sBO),n.Y36(T.Is,8))};static#t=this.\u0275cmp=n.Xpm({type:Wt,selectors:[["","nz-submenu-title",""]],hostVars:8,hostBindings:function(He,et){1&He&&n.NdJ("click",function(){return et.clickTitle()})("mouseenter",function(){return et.setMouseState(!0)})("mouseleave",function(){return et.setMouseState(!1)}),2&He&&(n.Udp("padding-left","rtl"===et.dir?null:et.paddingLeft,"px")("padding-right","rtl"===et.dir?et.paddingLeft:null,"px"),n.ekj("ant-dropdown-menu-submenu-title",et.isMenuInsideDropDown)("ant-menu-submenu-title",!et.isMenuInsideDropDown))},inputs:{nzIcon:"nzIcon",nzTitle:"nzTitle",isMenuInsideDropDown:"isMenuInsideDropDown",nzDisabled:"nzDisabled",paddingLeft:"paddingLeft",mode:"mode"},outputs:{toggleSubMenu:"toggleSubMenu",subMenuMouseState:"subMenuMouseState"},exportAs:["nzSubmenuTitle"],attrs:_e,ngContentSelectors:K,decls:6,vars:4,consts:[["nz-icon","",3,"nzType",4,"ngIf"],[4,"nzStringTemplateOutlet"],["class","ant-dropdown-menu-submenu-expand-icon",3,"ngSwitch",4,"ngIf","ngIfElse"],["notDropdownTpl",""],["nz-icon","",3,"nzType"],[1,"ant-menu-title-content"],[1,"ant-dropdown-menu-submenu-expand-icon",3,"ngSwitch"],["nz-icon","","nzType","left","class","ant-dropdown-menu-submenu-arrow-icon",4,"ngSwitchCase"],["nz-icon","","nzType","right","class","ant-dropdown-menu-submenu-arrow-icon",4,"ngSwitchDefault"],["nz-icon","","nzType","left",1,"ant-dropdown-menu-submenu-arrow-icon"],["nz-icon","","nzType","right",1,"ant-dropdown-menu-submenu-arrow-icon"],[1,"ant-menu-submenu-arrow"]],template:function(He,et){if(1&He&&(n.F$t(),n.YNc(0,Y,1,1,"span",0),n.YNc(1,G,3,1,"ng-container",1),n.Hsn(2),n.YNc(3,te,3,2,"span",2),n.YNc(4,ne,1,0,"ng-template",null,3,n.W1O)),2&He){const It=n.MAs(5);n.Q6J("ngIf",et.nzIcon),n.xp6(1),n.Q6J("nzStringTemplateOutlet",et.nzTitle),n.xp6(2),n.Q6J("ngIf",et.isMenuInsideDropDown)("ngIfElse",It)}},dependencies:[O.O5,O.RF,O.n9,O.ED,A.Ls,k.f],encapsulation:2,changeDetection:0})}return Wt})(),U=(()=>{class Wt{constructor(st,He,et){this.elementRef=st,this.renderer=He,this.directionality=et,this.templateOutlet=null,this.menuClass="",this.mode="vertical",this.nzOpen=!1,this.listOfCacheClassName=[],this.expandState="collapsed",this.dir="ltr",this.destroy$=new t.x}calcMotionState(){this.expandState=this.nzOpen?"expanded":"collapsed"}ngOnInit(){this.calcMotionState(),this.dir=this.directionality.value,this.directionality.change?.pipe((0,g.R)(this.destroy$)).subscribe(st=>{this.dir=st})}ngOnChanges(st){const{mode:He,nzOpen:et,menuClass:It}=st;(He||et)&&this.calcMotionState(),It&&(this.listOfCacheClassName.length&&this.listOfCacheClassName.filter(Ot=>!!Ot).forEach(Ot=>{this.renderer.removeClass(this.elementRef.nativeElement,Ot)}),this.menuClass&&(this.listOfCacheClassName=this.menuClass.split(" "),this.listOfCacheClassName.filter(Ot=>!!Ot).forEach(Ot=>{this.renderer.addClass(this.elementRef.nativeElement,Ot)})))}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(He){return new(He||Wt)(n.Y36(n.SBq),n.Y36(n.Qsj),n.Y36(T.Is,8))};static#t=this.\u0275cmp=n.Xpm({type:Wt,selectors:[["","nz-submenu-inline-child",""]],hostAttrs:[1,"ant-menu","ant-menu-inline","ant-menu-sub"],hostVars:3,hostBindings:function(He,et){2&He&&(n.d8E("@collapseMotion",et.expandState),n.ekj("ant-menu-rtl","rtl"===et.dir))},inputs:{templateOutlet:"templateOutlet",menuClass:"menuClass",mode:"mode",nzOpen:"nzOpen"},exportAs:["nzSubmenuInlineChild"],features:[n.TTD],attrs:pe,decls:1,vars:1,consts:[[3,"ngTemplateOutlet"]],template:function(He,et){1&He&&n.YNc(0,re,0,0,"ng-template",0),2&He&&n.Q6J("ngTemplateOutlet",et.templateOutlet)},dependencies:[O.tP],encapsulation:2,data:{animation:[F.J_]},changeDetection:0})}return Wt})(),B=(()=>{class Wt{constructor(st){this.directionality=st,this.menuClass="",this.theme="light",this.templateOutlet=null,this.isMenuInsideDropDown=!1,this.mode="vertical",this.position="right",this.nzDisabled=!1,this.nzOpen=!1,this.subMenuMouseState=new n.vpe,this.expandState="collapsed",this.dir="ltr",this.destroy$=new t.x}setMouseState(st){this.nzDisabled||this.subMenuMouseState.next(st)}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}calcMotionState(){this.nzOpen?"horizontal"===this.mode?this.expandState="bottom":"vertical"===this.mode&&(this.expandState="active"):this.expandState="collapsed"}ngOnInit(){this.calcMotionState(),this.dir=this.directionality.value,this.directionality.change?.pipe((0,g.R)(this.destroy$)).subscribe(st=>{this.dir=st})}ngOnChanges(st){const{mode:He,nzOpen:et}=st;(He||et)&&this.calcMotionState()}static#e=this.\u0275fac=function(He){return new(He||Wt)(n.Y36(T.Is,8))};static#t=this.\u0275cmp=n.Xpm({type:Wt,selectors:[["","nz-submenu-none-inline-child",""]],hostAttrs:[1,"ant-menu-submenu","ant-menu-submenu-popup"],hostVars:14,hostBindings:function(He,et){1&He&&n.NdJ("mouseenter",function(){return et.setMouseState(!0)})("mouseleave",function(){return et.setMouseState(!1)}),2&He&&(n.d8E("@slideMotion",et.expandState)("@zoomBigMotion",et.expandState),n.ekj("ant-menu-light","light"===et.theme)("ant-menu-dark","dark"===et.theme)("ant-menu-submenu-placement-bottom","horizontal"===et.mode)("ant-menu-submenu-placement-right","vertical"===et.mode&&"right"===et.position)("ant-menu-submenu-placement-left","vertical"===et.mode&&"left"===et.position)("ant-menu-submenu-rtl","rtl"===et.dir))},inputs:{menuClass:"menuClass",theme:"theme",templateOutlet:"templateOutlet",isMenuInsideDropDown:"isMenuInsideDropDown",mode:"mode",position:"position",nzDisabled:"nzDisabled",nzOpen:"nzOpen"},outputs:{subMenuMouseState:"subMenuMouseState"},exportAs:["nzSubmenuNoneInlineChild"],features:[n.TTD],attrs:be,decls:2,vars:16,consts:[[3,"ngClass"],[3,"ngTemplateOutlet"]],template:function(He,et){1&He&&(n.TgZ(0,"div",0),n.YNc(1,le,0,0,"ng-template",1),n.qZA()),2&He&&(n.ekj("ant-dropdown-menu",et.isMenuInsideDropDown)("ant-menu",!et.isMenuInsideDropDown)("ant-dropdown-menu-vertical",et.isMenuInsideDropDown)("ant-menu-vertical",!et.isMenuInsideDropDown)("ant-dropdown-menu-sub",et.isMenuInsideDropDown)("ant-menu-sub",!et.isMenuInsideDropDown)("ant-menu-rtl","rtl"===et.dir),n.Q6J("ngClass",et.menuClass),n.xp6(1),n.Q6J("ngTemplateOutlet",et.templateOutlet))},dependencies:[O.mk,O.tP],encapsulation:2,data:{animation:[F.$C,F.mF]},changeDetection:0})}return Wt})();const Ee=[D.yW.rightTop,D.yW.right,D.yW.rightBottom,D.yW.leftTop,D.yW.left,D.yW.leftBottom],Ie=[D.yW.bottomLeft,D.yW.bottomRight,D.yW.topRight,D.yW.topLeft];let Ne=(()=>{class Wt{setOpenStateWithoutDebounce(st){this.nzSubmenuService.setOpenStateWithoutDebounce(st)}toggleSubMenu(){this.setOpenStateWithoutDebounce(!this.nzOpen)}setMouseEnterState(st){this.isActive=st,"inline"!==this.mode&&this.nzSubmenuService.setMouseEnterTitleOrOverlayState(st)}setTriggerWidth(){"horizontal"===this.mode&&this.platform.isBrowser&&this.cdkOverlayOrigin&&"bottomLeft"===this.nzPlacement&&(this.triggerWidth=this.cdkOverlayOrigin.nativeElement.getBoundingClientRect().width)}onPositionChange(st){const He=(0,D.d_)(st);"rightTop"===He||"rightBottom"===He||"right"===He?this.position="right":("leftTop"===He||"leftBottom"===He||"left"===He)&&(this.position="left")}constructor(st,He,et,It,Ot,xt,Qe){this.nzMenuService=st,this.cdr=He,this.nzSubmenuService=et,this.platform=It,this.isMenuInsideDropDown=Ot,this.directionality=xt,this.noAnimation=Qe,this.nzMenuClassName="",this.nzPaddingLeft=null,this.nzTitle=null,this.nzIcon=null,this.nzOpen=!1,this.nzDisabled=!1,this.nzPlacement="bottomLeft",this.nzOpenChange=new n.vpe,this.cdkOverlayOrigin=null,this.listOfNzSubMenuComponent=null,this.listOfNzMenuItemDirective=null,this.level=this.nzSubmenuService.level,this.destroy$=new t.x,this.position="right",this.triggerWidth=null,this.theme="light",this.mode="vertical",this.inlinePaddingLeft=null,this.overlayPositions=Ee,this.isSelected=!1,this.isActive=!1,this.dir="ltr"}ngOnInit(){this.nzMenuService.theme$.pipe((0,g.R)(this.destroy$)).subscribe(st=>{this.theme=st,this.cdr.markForCheck()}),this.nzSubmenuService.mode$.pipe((0,g.R)(this.destroy$)).subscribe(st=>{this.mode=st,"horizontal"===st?this.overlayPositions=[D.yW[this.nzPlacement],...Ie]:"vertical"===st&&(this.overlayPositions=Ee),this.cdr.markForCheck()}),(0,C.a)([this.nzSubmenuService.mode$,this.nzMenuService.inlineIndent$]).pipe((0,g.R)(this.destroy$)).subscribe(([st,He])=>{this.inlinePaddingLeft="inline"===st?this.level*He:null,this.cdr.markForCheck()}),this.nzSubmenuService.isCurrentSubMenuOpen$.pipe((0,g.R)(this.destroy$)).subscribe(st=>{this.isActive=st,st!==this.nzOpen&&(this.setTriggerWidth(),this.nzOpen=st,this.nzOpenChange.emit(this.nzOpen),this.cdr.markForCheck())}),this.dir=this.directionality.value,this.directionality.change?.pipe((0,g.R)(this.destroy$)).subscribe(st=>{this.dir=st,this.cdr.markForCheck()})}ngAfterContentInit(){this.setTriggerWidth();const st=this.listOfNzMenuItemDirective,He=st.changes,et=(0,l.T)(He,...st.map(It=>It.selected$));He.pipe((0,d.O)(st),(0,p.w)(()=>et),(0,d.O)(!0),(0,E.U)(()=>st.some(It=>It.nzSelected)),(0,g.R)(this.destroy$)).subscribe(It=>{this.isSelected=It,this.cdr.markForCheck()})}ngOnChanges(st){const{nzOpen:He}=st;He&&(this.nzSubmenuService.setOpenStateWithoutDebounce(this.nzOpen),this.setTriggerWidth())}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(He){return new(He||Wt)(n.Y36(ot),n.Y36(n.sBO),n.Y36(mt),n.Y36(_.t4),n.Y36(Mt),n.Y36(T.Is,8),n.Y36(P.P,9))};static#t=this.\u0275cmp=n.Xpm({type:Wt,selectors:[["","nz-submenu",""]],contentQueries:function(He,et,It){if(1&He&&(n.Suo(It,Wt,5),n.Suo(It,we,5)),2&He){let Ot;n.iGM(Ot=n.CRH())&&(et.listOfNzSubMenuComponent=Ot),n.iGM(Ot=n.CRH())&&(et.listOfNzMenuItemDirective=Ot)}},viewQuery:function(He,et){if(1&He&&n.Gf(x.xu,7,n.SBq),2&He){let It;n.iGM(It=n.CRH())&&(et.cdkOverlayOrigin=It.first)}},hostVars:34,hostBindings:function(He,et){2&He&&n.ekj("ant-dropdown-menu-submenu",et.isMenuInsideDropDown)("ant-dropdown-menu-submenu-disabled",et.isMenuInsideDropDown&&et.nzDisabled)("ant-dropdown-menu-submenu-open",et.isMenuInsideDropDown&&et.nzOpen)("ant-dropdown-menu-submenu-selected",et.isMenuInsideDropDown&&et.isSelected)("ant-dropdown-menu-submenu-vertical",et.isMenuInsideDropDown&&"vertical"===et.mode)("ant-dropdown-menu-submenu-horizontal",et.isMenuInsideDropDown&&"horizontal"===et.mode)("ant-dropdown-menu-submenu-inline",et.isMenuInsideDropDown&&"inline"===et.mode)("ant-dropdown-menu-submenu-active",et.isMenuInsideDropDown&&et.isActive)("ant-menu-submenu",!et.isMenuInsideDropDown)("ant-menu-submenu-disabled",!et.isMenuInsideDropDown&&et.nzDisabled)("ant-menu-submenu-open",!et.isMenuInsideDropDown&&et.nzOpen)("ant-menu-submenu-selected",!et.isMenuInsideDropDown&&et.isSelected)("ant-menu-submenu-vertical",!et.isMenuInsideDropDown&&"vertical"===et.mode)("ant-menu-submenu-horizontal",!et.isMenuInsideDropDown&&"horizontal"===et.mode)("ant-menu-submenu-inline",!et.isMenuInsideDropDown&&"inline"===et.mode)("ant-menu-submenu-active",!et.isMenuInsideDropDown&&et.isActive)("ant-menu-submenu-rtl","rtl"===et.dir)},inputs:{nzMenuClassName:"nzMenuClassName",nzPaddingLeft:"nzPaddingLeft",nzTitle:"nzTitle",nzIcon:"nzIcon",nzOpen:"nzOpen",nzDisabled:"nzDisabled",nzPlacement:"nzPlacement"},outputs:{nzOpenChange:"nzOpenChange"},exportAs:["nzSubmenu"],features:[n._Bn([mt]),n.TTD],attrs:ce,ngContentSelectors:q,decls:8,vars:9,consts:[["nz-submenu-title","","cdkOverlayOrigin","",3,"nzIcon","nzTitle","mode","nzDisabled","isMenuInsideDropDown","paddingLeft","subMenuMouseState","toggleSubMenu"],["origin","cdkOverlayOrigin"],[4,"ngIf"],["nz-submenu-inline-child","",3,"mode","nzOpen","nzNoAnimation","menuClass","templateOutlet",4,"ngIf","ngIfElse"],["nonInlineTemplate",""],["subMenuTemplate",""],["nz-submenu-inline-child","",3,"mode","nzOpen","nzNoAnimation","menuClass","templateOutlet"],["cdkConnectedOverlay","",3,"cdkConnectedOverlayPositions","cdkConnectedOverlayOrigin","cdkConnectedOverlayWidth","cdkConnectedOverlayOpen","cdkConnectedOverlayTransformOriginOn","positionChange"],["nz-submenu-none-inline-child","",3,"theme","mode","nzOpen","position","nzDisabled","isMenuInsideDropDown","templateOutlet","menuClass","nzNoAnimation","subMenuMouseState"]],template:function(He,et){if(1&He&&(n.F$t(Ye),n.TgZ(0,"div",0,1),n.NdJ("subMenuMouseState",function(Ot){return et.setMouseEnterState(Ot)})("toggleSubMenu",function(){return et.toggleSubMenu()}),n.YNc(2,Q,1,0,"ng-content",2),n.qZA(),n.YNc(3,ie,1,6,"div",3),n.YNc(4,xe,1,5,"ng-template",null,4,n.W1O),n.YNc(6,Me,1,0,"ng-template",null,5,n.W1O)),2&He){const It=n.MAs(5);n.Q6J("nzIcon",et.nzIcon)("nzTitle",et.nzTitle)("mode",et.mode)("nzDisabled",et.nzDisabled)("isMenuInsideDropDown",et.isMenuInsideDropDown)("paddingLeft",et.nzPaddingLeft||et.inlinePaddingLeft),n.xp6(2),n.Q6J("ngIf",!et.nzTitle),n.xp6(1),n.Q6J("ngIf","inline"===et.mode)("ngIfElse",It)}},dependencies:[O.O5,x.pI,x.xu,P.P,de,U,B],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,f.yF)()],Wt.prototype,"nzOpen",void 0),(0,e.gn)([(0,f.yF)()],Wt.prototype,"nzDisabled",void 0),Wt})();function pt(Wt,Vt){return Wt||Vt}function Dt(Wt){return Wt||!1}let Lt=(()=>{class Wt{setInlineCollapsed(st){this.nzInlineCollapsed=st,this.inlineCollapsed$.next(st)}updateInlineCollapse(){this.listOfNzMenuItemDirective&&(this.nzInlineCollapsed?(this.listOfOpenedNzSubMenuComponent=this.listOfNzSubMenuComponent.filter(st=>st.nzOpen),this.listOfNzSubMenuComponent.forEach(st=>st.setOpenStateWithoutDebounce(!1))):(this.listOfOpenedNzSubMenuComponent.forEach(st=>st.setOpenStateWithoutDebounce(!0)),this.listOfOpenedNzSubMenuComponent=[]))}constructor(st,He,et,It){this.nzMenuService=st,this.isMenuInsideDropDown=He,this.cdr=et,this.directionality=It,this.nzInlineIndent=24,this.nzTheme="light",this.nzMode="vertical",this.nzInlineCollapsed=!1,this.nzSelectable=!this.isMenuInsideDropDown,this.nzClick=new n.vpe,this.actualMode="vertical",this.dir="ltr",this.inlineCollapsed$=new i.X(this.nzInlineCollapsed),this.mode$=new i.X(this.nzMode),this.destroy$=new t.x,this.listOfOpenedNzSubMenuComponent=[]}ngOnInit(){(0,C.a)([this.inlineCollapsed$,this.mode$]).pipe((0,g.R)(this.destroy$)).subscribe(([st,He])=>{this.actualMode=st?"vertical":He,this.nzMenuService.setMode(this.actualMode),this.cdr.markForCheck()}),this.nzMenuService.descendantMenuItemClick$.pipe((0,g.R)(this.destroy$)).subscribe(st=>{this.nzClick.emit(st),this.nzSelectable&&!st.nzMatchRouter&&this.listOfNzMenuItemDirective.forEach(He=>He.setSelectedState(He===st))}),this.dir=this.directionality.value,this.directionality.change?.pipe((0,g.R)(this.destroy$)).subscribe(st=>{this.dir=st,this.nzMenuService.setMode(this.actualMode),this.cdr.markForCheck()})}ngAfterContentInit(){this.inlineCollapsed$.pipe((0,g.R)(this.destroy$)).subscribe(()=>{this.updateInlineCollapse(),this.cdr.markForCheck()})}ngOnChanges(st){const{nzInlineCollapsed:He,nzInlineIndent:et,nzTheme:It,nzMode:Ot}=st;He&&this.inlineCollapsed$.next(this.nzInlineCollapsed),et&&this.nzMenuService.setInlineIndent(this.nzInlineIndent),It&&this.nzMenuService.setTheme(this.nzTheme),Ot&&(this.mode$.next(this.nzMode),!st.nzMode.isFirstChange()&&this.listOfNzSubMenuComponent&&this.listOfNzSubMenuComponent.forEach(xt=>xt.setOpenStateWithoutDebounce(!1)))}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(He){return new(He||Wt)(n.Y36(ot),n.Y36(Mt),n.Y36(n.sBO),n.Y36(T.Is,8))};static#t=this.\u0275dir=n.lG2({type:Wt,selectors:[["","nz-menu",""]],contentQueries:function(He,et,It){if(1&He&&(n.Suo(It,we,5),n.Suo(It,Ne,5)),2&He){let Ot;n.iGM(Ot=n.CRH())&&(et.listOfNzMenuItemDirective=Ot),n.iGM(Ot=n.CRH())&&(et.listOfNzSubMenuComponent=Ot)}},hostVars:34,hostBindings:function(He,et){2&He&&n.ekj("ant-dropdown-menu",et.isMenuInsideDropDown)("ant-dropdown-menu-root",et.isMenuInsideDropDown)("ant-dropdown-menu-light",et.isMenuInsideDropDown&&"light"===et.nzTheme)("ant-dropdown-menu-dark",et.isMenuInsideDropDown&&"dark"===et.nzTheme)("ant-dropdown-menu-vertical",et.isMenuInsideDropDown&&"vertical"===et.actualMode)("ant-dropdown-menu-horizontal",et.isMenuInsideDropDown&&"horizontal"===et.actualMode)("ant-dropdown-menu-inline",et.isMenuInsideDropDown&&"inline"===et.actualMode)("ant-dropdown-menu-inline-collapsed",et.isMenuInsideDropDown&&et.nzInlineCollapsed)("ant-menu",!et.isMenuInsideDropDown)("ant-menu-root",!et.isMenuInsideDropDown)("ant-menu-light",!et.isMenuInsideDropDown&&"light"===et.nzTheme)("ant-menu-dark",!et.isMenuInsideDropDown&&"dark"===et.nzTheme)("ant-menu-vertical",!et.isMenuInsideDropDown&&"vertical"===et.actualMode)("ant-menu-horizontal",!et.isMenuInsideDropDown&&"horizontal"===et.actualMode)("ant-menu-inline",!et.isMenuInsideDropDown&&"inline"===et.actualMode)("ant-menu-inline-collapsed",!et.isMenuInsideDropDown&&et.nzInlineCollapsed)("ant-menu-rtl","rtl"===et.dir)},inputs:{nzInlineIndent:"nzInlineIndent",nzTheme:"nzTheme",nzMode:"nzMode",nzInlineCollapsed:"nzInlineCollapsed",nzSelectable:"nzSelectable"},outputs:{nzClick:"nzClick"},exportAs:["nzMenu"],features:[n._Bn([{provide:je,useClass:ot},{provide:ot,useFactory:pt,deps:[[new n.tp0,new n.FiY,ot],je]},{provide:Mt,useFactory:Dt,deps:[[new n.tp0,new n.FiY,Mt]]}]),n.TTD]})}return(0,e.gn)([(0,f.yF)()],Wt.prototype,"nzInlineCollapsed",void 0),(0,e.gn)([(0,f.yF)()],Wt.prototype,"nzSelectable",void 0),Wt})();function Ut(Wt){return Wt||!1}let qt=(()=>{class Wt{constructor(st,He,et){this.elementRef=st,this.renderer=He,this.isMenuInsideDropDown=et,this.renderer.addClass(st.nativeElement,this.isMenuInsideDropDown?"ant-dropdown-menu-item-group":"ant-menu-item-group")}ngAfterViewInit(){const st=this.titleElement.nativeElement.nextElementSibling;st&&this.renderer.addClass(st,this.isMenuInsideDropDown?"ant-dropdown-menu-item-group-list":"ant-menu-item-group-list")}static#e=this.\u0275fac=function(He){return new(He||Wt)(n.Y36(n.SBq),n.Y36(n.Qsj),n.Y36(Mt))};static#t=this.\u0275cmp=n.Xpm({type:Wt,selectors:[["","nz-menu-group",""]],viewQuery:function(He,et){if(1&He&&n.Gf(ye,5),2&He){let It;n.iGM(It=n.CRH())&&(et.titleElement=It.first)}},inputs:{nzTitle:"nzTitle"},exportAs:["nzMenuGroup"],features:[n._Bn([{provide:Mt,useFactory:Ut,deps:[[new n.tp0,new n.FiY,Mt]]}])],attrs:ee,ngContentSelectors:Ae,decls:5,vars:6,consts:[["titleElement",""],[4,"nzStringTemplateOutlet"],[4,"ngIf"]],template:function(He,et){1&He&&(n.F$t(ct),n.TgZ(0,"div",null,0),n.YNc(2,Be,2,1,"ng-container",1),n.YNc(3,Re,1,0,"ng-content",2),n.qZA(),n.Hsn(4)),2&He&&(n.ekj("ant-menu-item-group-title",!et.isMenuInsideDropDown)("ant-dropdown-menu-item-group-title",et.isMenuInsideDropDown),n.xp6(2),n.Q6J("nzStringTemplateOutlet",et.nzTitle),n.xp6(1),n.Q6J("ngIf",!et.nzTitle))},dependencies:[O.O5,k.f],encapsulation:2,changeDetection:0})}return Wt})(),en=(()=>{class Wt{constructor(st){this.elementRef=st}static#e=this.\u0275fac=function(He){return new(He||Wt)(n.Y36(n.SBq))};static#t=this.\u0275dir=n.lG2({type:Wt,selectors:[["","nz-menu-divider",""]],hostAttrs:[1,"ant-dropdown-menu-item-divider"],exportAs:["nzMenuDivider"]})}return Wt})(),cn=(()=>{class Wt{static#e=this.\u0275fac=function(He){return new(He||Wt)};static#t=this.\u0275mod=n.oAB({type:Wt});static#n=this.\u0275inj=n.cJS({imports:[T.vT,O.ez,_.ud,x.U8,A.PV,P.g,k.T]})}return Wt})()},43460:(nt,I,o)=>{"use strict";o.d(I,{dD:()=>H,gR:()=>G});var e=o(68484),n=o(65879),t=o(78645),i=o(32181),l=o(48180),C=o(59773),E=o(83064),u=o(27754),z=o(96814),M=o(64194),h=o(90551),v=o(8324),g=o(49388),d=o(33651),p=o(99087);function f(j,te){1&j&&n._UZ(0,"span",10)}function y(j,te){1&j&&n._UZ(0,"span",11)}function T(j,te){1&j&&n._UZ(0,"span",12)}function x(j,te){1&j&&n._UZ(0,"span",13)}function D(j,te){1&j&&n._UZ(0,"span",14)}function _(j,te){if(1&j&&(n.ynx(0),n._UZ(1,"span",15),n.BQk()),2&j){const ne=n.oxw();n.xp6(1),n.Q6J("innerHTML",ne.instance.content,n.oJD)}}function P(j,te){if(1&j){const ne=n.EpF();n.TgZ(0,"nz-message",2),n.NdJ("destroyed",function(re){n.CHM(ne);const be=n.oxw();return n.KtG(be.remove(re.id,re.userAction))}),n.qZA()}2&j&&n.Q6J("instance",te.$implicit)}let O=0;class A{constructor(te,ne,pe){this.nzSingletonService=te,this.overlay=ne,this.injector=pe}remove(te){this.container&&(te?this.container.remove(te):this.container.removeAll())}getInstanceId(){return`${this.componentPrefix}-${O++}`}withContainer(te){let ne=this.nzSingletonService.getSingletonWithKey(this.componentPrefix);if(ne)return ne;const pe=this.overlay.create({hasBackdrop:!1,scrollStrategy:this.overlay.scrollStrategies.noop(),positionStrategy:this.overlay.position().global()}),re=new e.C5(te,null,this.injector),be=pe.attach(re);return pe.hostElement.style.zIndex="1010",ne||(this.container=ne=be.instance,this.nzSingletonService.registerSingletonWithKey(this.componentPrefix,ne),this.container.afterAllInstancesRemoved.subscribe(()=>{this.container=void 0,this.nzSingletonService.unregisterSingletonWithKey(this.componentPrefix),pe.dispose()})),ne}}let k=(()=>{class j{constructor(ne,pe){this.cdr=ne,this.nzConfigService=pe,this.instances=[],this._afterAllInstancesRemoved=new t.x,this.afterAllInstancesRemoved=this._afterAllInstancesRemoved.asObservable(),this.destroy$=new t.x,this.updateConfig()}ngOnInit(){this.subscribeConfigChange()}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}create(ne){const pe=this.onCreate(ne);return this.instances.length>=this.config.nzMaxStack&&(this.instances=this.instances.slice(1)),this.instances=[...this.instances,pe],this.readyInstances(),pe}remove(ne,pe=!1){this.instances.map((re,be)=>({index:be,instance:re})).filter(({instance:re})=>re.messageId===ne).forEach(({index:re,instance:be})=>{this.instances.splice(re,1),this.instances=[...this.instances],this.onRemove(be,pe),this.readyInstances()}),this.instances.length||this.onAllInstancesRemoved()}removeAll(){this.instances.forEach(ne=>this.onRemove(ne,!1)),this.instances=[],this.readyInstances(),this.onAllInstancesRemoved()}onCreate(ne){return ne.options=this.mergeOptions(ne.options),ne.onClose=new t.x,ne}onRemove(ne,pe){ne.onClose.next(pe),ne.onClose.complete()}onAllInstancesRemoved(){this._afterAllInstancesRemoved.next(),this._afterAllInstancesRemoved.complete()}readyInstances(){this.cdr.detectChanges()}mergeOptions(ne){const{nzDuration:pe,nzAnimate:re,nzPauseOnHover:be}=this.config;return{nzDuration:pe,nzAnimate:re,nzPauseOnHover:be,...ne}}static#e=this.\u0275fac=function(pe){return new(pe||j)(n.Y36(n.sBO),n.Y36(E.jY))};static#t=this.\u0275dir=n.lG2({type:j})}return j})(),F=(()=>{class j{constructor(ne){this.cdr=ne,this.destroyed=new n.vpe,this.animationStateChanged=new t.x,this.userAction=!1,this.eraseTimer=null}ngOnInit(){this.options=this.instance.options,this.options.nzAnimate&&(this.instance.state="enter",this.animationStateChanged.pipe((0,i.h)(ne=>"done"===ne.phaseName&&"leave"===ne.toState),(0,l.q)(1)).subscribe(()=>{clearTimeout(this.closeTimer),this.destroyed.next({id:this.instance.messageId,userAction:this.userAction})})),this.autoClose=this.options.nzDuration>0,this.autoClose&&(this.initErase(),this.startEraseTimeout())}ngOnDestroy(){this.autoClose&&this.clearEraseTimeout(),this.animationStateChanged.complete()}onEnter(){this.autoClose&&this.options.nzPauseOnHover&&(this.clearEraseTimeout(),this.updateTTL())}onLeave(){this.autoClose&&this.options.nzPauseOnHover&&this.startEraseTimeout()}destroy(ne=!1){this.userAction=ne,this.options.nzAnimate?(this.instance.state="leave",this.cdr.detectChanges(),this.closeTimer=setTimeout(()=>{this.closeTimer=void 0,this.destroyed.next({id:this.instance.messageId,userAction:ne})},200)):this.destroyed.next({id:this.instance.messageId,userAction:ne})}initErase(){this.eraseTTL=this.options.nzDuration,this.eraseTimingStart=Date.now()}updateTTL(){this.autoClose&&(this.eraseTTL-=Date.now()-this.eraseTimingStart)}startEraseTimeout(){this.eraseTTL>0?(this.clearEraseTimeout(),this.eraseTimer=setTimeout(()=>this.destroy(),this.eraseTTL),this.eraseTimingStart=Date.now()):this.destroy()}clearEraseTimeout(){null!==this.eraseTimer&&(clearTimeout(this.eraseTimer),this.eraseTimer=null)}static#e=this.\u0275fac=function(pe){return new(pe||j)(n.Y36(n.sBO))};static#t=this.\u0275dir=n.lG2({type:j})}return j})(),W=(()=>{class j extends F{constructor(ne){super(ne),this.destroyed=new n.vpe}static#e=this.\u0275fac=function(pe){return new(pe||j)(n.Y36(n.sBO))};static#t=this.\u0275cmp=n.Xpm({type:j,selectors:[["nz-message"]],inputs:{instance:"instance"},outputs:{destroyed:"destroyed"},exportAs:["nzMessage"],features:[n.qOj],decls:10,vars:9,consts:[[1,"ant-message-notice",3,"mouseenter","mouseleave"],[1,"ant-message-notice-content"],[1,"ant-message-custom-content",3,"ngClass"],[3,"ngSwitch"],["nz-icon","","nzType","check-circle",4,"ngSwitchCase"],["nz-icon","","nzType","info-circle",4,"ngSwitchCase"],["nz-icon","","nzType","exclamation-circle",4,"ngSwitchCase"],["nz-icon","","nzType","close-circle",4,"ngSwitchCase"],["nz-icon","","nzType","loading",4,"ngSwitchCase"],[4,"nzStringTemplateOutlet"],["nz-icon","","nzType","check-circle"],["nz-icon","","nzType","info-circle"],["nz-icon","","nzType","exclamation-circle"],["nz-icon","","nzType","close-circle"],["nz-icon","","nzType","loading"],[3,"innerHTML"]],template:function(pe,re){1&pe&&(n.TgZ(0,"div",0),n.NdJ("@moveUpMotion.done",function(le){return re.animationStateChanged.next(le)})("mouseenter",function(){return re.onEnter()})("mouseleave",function(){return re.onLeave()}),n.TgZ(1,"div",1)(2,"div",2),n.ynx(3,3),n.YNc(4,f,1,0,"span",4),n.YNc(5,y,1,0,"span",5),n.YNc(6,T,1,0,"span",6),n.YNc(7,x,1,0,"span",7),n.YNc(8,D,1,0,"span",8),n.BQk(),n.YNc(9,_,2,1,"ng-container",9),n.qZA()()()),2&pe&&(n.Q6J("@moveUpMotion",re.instance.state),n.xp6(2),n.Q6J("ngClass","ant-message-"+re.instance.type),n.xp6(1),n.Q6J("ngSwitch",re.instance.type),n.xp6(1),n.Q6J("ngSwitchCase","success"),n.xp6(1),n.Q6J("ngSwitchCase","info"),n.xp6(1),n.Q6J("ngSwitchCase","warning"),n.xp6(1),n.Q6J("ngSwitchCase","error"),n.xp6(1),n.Q6J("ngSwitchCase","loading"),n.xp6(1),n.Q6J("nzStringTemplateOutlet",re.instance.content))},dependencies:[z.mk,z.RF,z.n9,h.Ls,v.f],encapsulation:2,data:{animation:[M.YK]},changeDetection:0})}return j})();const K="message",_e={nzAnimate:!0,nzDuration:3e3,nzMaxStack:7,nzPauseOnHover:!0,nzTop:24,nzDirection:"ltr"};let Y=(()=>{class j extends k{constructor(ne,pe){super(ne,pe),this.dir="ltr";const re=this.nzConfigService.getConfigForComponent(K);this.dir=re?.nzDirection||"ltr"}subscribeConfigChange(){this.nzConfigService.getConfigChangeEventForComponent(K).pipe((0,C.R)(this.destroy$)).subscribe(()=>{this.updateConfig();const ne=this.nzConfigService.getConfigForComponent(K);if(ne){const{nzDirection:pe}=ne;this.dir=pe||this.dir}})}updateConfig(){this.config={..._e,...this.config,...this.nzConfigService.getConfigForComponent(K)},this.top=(0,u.WX)(this.config.nzTop),this.cdr.markForCheck()}static#e=this.\u0275fac=function(pe){return new(pe||j)(n.Y36(n.sBO),n.Y36(E.jY))};static#t=this.\u0275cmp=n.Xpm({type:j,selectors:[["nz-message-container"]],exportAs:["nzMessageContainer"],features:[n.qOj],decls:2,vars:5,consts:[[1,"ant-message"],[3,"instance","destroyed",4,"ngFor","ngForOf"],[3,"instance","destroyed"]],template:function(pe,re){1&pe&&(n.TgZ(0,"div",0),n.YNc(1,P,1,1,"nz-message",1),n.qZA()),2&pe&&(n.Udp("top",re.top),n.ekj("ant-message-rtl","rtl"===re.dir),n.xp6(1),n.Q6J("ngForOf",re.instances))},dependencies:[z.sg,W],encapsulation:2,changeDetection:0})}return j})(),G=(()=>{class j{static#e=this.\u0275fac=function(pe){return new(pe||j)};static#t=this.\u0275mod=n.oAB({type:j});static#n=this.\u0275inj=n.cJS({imports:[g.vT,z.ez,d.U8,h.PV,v.T]})}return j})(),H=(()=>{class j extends A{constructor(ne,pe,re){super(ne,pe,re),this.componentPrefix="message-"}success(ne,pe){return this.createInstance({type:"success",content:ne},pe)}error(ne,pe){return this.createInstance({type:"error",content:ne},pe)}info(ne,pe){return this.createInstance({type:"info",content:ne},pe)}warning(ne,pe){return this.createInstance({type:"warning",content:ne},pe)}loading(ne,pe){return this.createInstance({type:"loading",content:ne},pe)}create(ne,pe,re){return this.createInstance({type:ne,content:pe},re)}createInstance(ne,pe){return this.container=this.withContainer(Y),this.container.create({...ne,createdAt:new Date,messageId:this.getInstanceId(),options:pe})}static#e=this.\u0275fac=function(pe){return new(pe||j)(n.LFG(p.KV),n.LFG(d.aV),n.LFG(n.zs3))};static#t=this.\u0275prov=n.Yz7({token:j,factory:j.\u0275fac,providedIn:"root"})}return j})()},81221:(nt,I,o)=>{"use strict";o.d(I,{Lf:()=>st,Qp:()=>Qe,Sf:()=>He});var e=o(49671),n=o(33651),t=o(68484),i=o(65879),l=o(78645),C=o(92438),E=o(74911),u=o(59773),z=o(32181),M=o(48180),h=o(27921),v=o(1608),g=o(27754),d=o(96814),p=o(86825),f=o(56879),y=o(4300),T=o(83064),x=o(12131),D=o(8324),_=o(42840),P=o(70855),O=o(41958),A=o(90551),k=o(6192),F=o(36028),W=o(49388),K=o(331);const _e=["nz-modal-close",""];function Y(fe,qe){if(1&fe&&(i.ynx(0),i._UZ(1,"span",2),i.BQk()),2&fe){const ge=qe.$implicit;i.xp6(1),i.Q6J("nzType",ge)}}const G=["modalElement"];function H(fe,qe){if(1&fe){const ge=i.EpF();i.TgZ(0,"button",16),i.NdJ("click",function(){i.CHM(ge);const $e=i.oxw();return i.KtG($e.onCloseClick())}),i.qZA()}}function j(fe,qe){if(1&fe&&(i.ynx(0),i._UZ(1,"span",17),i.BQk()),2&fe){const ge=i.oxw();i.xp6(1),i.Q6J("innerHTML",ge.config.nzTitle,i.oJD)}}function te(fe,qe){}function ne(fe,qe){if(1&fe&&i._UZ(0,"div",17),2&fe){const ge=i.oxw();i.Q6J("innerHTML",ge.config.nzContent,i.oJD)}}function pe(fe,qe){if(1&fe){const ge=i.EpF();i.TgZ(0,"button",18),i.NdJ("click",function(){i.CHM(ge);const $e=i.oxw();return i.KtG($e.onCancel())}),i._uU(1),i.qZA()}if(2&fe){const ge=i.oxw();i.Q6J("nzLoading",!!ge.config.nzCancelLoading)("disabled",ge.config.nzCancelDisabled),i.uIk("cdkFocusInitial","cancel"===ge.config.nzAutofocus||null),i.xp6(1),i.hij(" ",ge.config.nzCancelText||ge.locale.cancelText," ")}}function re(fe,qe){if(1&fe){const ge=i.EpF();i.TgZ(0,"button",19),i.NdJ("click",function(){i.CHM(ge);const $e=i.oxw();return i.KtG($e.onOk())}),i._uU(1),i.qZA()}if(2&fe){const ge=i.oxw();i.Q6J("nzType",ge.config.nzOkType)("nzLoading",!!ge.config.nzOkLoading)("disabled",ge.config.nzOkDisabled)("nzDanger",ge.config.nzOkDanger),i.uIk("cdkFocusInitial","ok"===ge.config.nzAutofocus||null),i.xp6(1),i.hij(" ",ge.config.nzOkText||ge.locale.okText," ")}}const be=["nz-modal-footer",""];function le(fe,qe){if(1&fe&&i._UZ(0,"div",5),2&fe){const ge=i.oxw(3);i.Q6J("innerHTML",ge.config.nzFooter,i.oJD)}}function ce(fe,qe){if(1&fe){const ge=i.EpF();i.TgZ(0,"button",7),i.NdJ("click",function(){const Ue=i.CHM(ge).$implicit,wt=i.oxw(4);return i.KtG(wt.onButtonClick(Ue))}),i._uU(1),i.qZA()}if(2&fe){const ge=qe.$implicit,Ze=i.oxw(4);i.Q6J("hidden",!Ze.getButtonCallableProp(ge,"show"))("nzLoading",Ze.getButtonCallableProp(ge,"loading"))("disabled",Ze.getButtonCallableProp(ge,"disabled"))("nzType",ge.type)("nzDanger",ge.danger)("nzShape",ge.shape)("nzSize",ge.size)("nzGhost",ge.ghost),i.xp6(1),i.hij(" ",ge.label," ")}}function Q(fe,qe){if(1&fe&&(i.ynx(0),i.YNc(1,ce,2,9,"button",6),i.BQk()),2&fe){const ge=i.oxw(3);i.xp6(1),i.Q6J("ngForOf",ge.buttons)}}function ie(fe,qe){if(1&fe&&(i.ynx(0),i.YNc(1,le,1,1,"div",3),i.YNc(2,Q,2,1,"ng-container",4),i.BQk()),2&fe){const ge=i.oxw(2);i.xp6(1),i.Q6J("ngIf",!ge.buttonsFooter),i.xp6(1),i.Q6J("ngIf",ge.buttonsFooter)}}const ae=function(fe,qe){return{$implicit:fe,modalRef:qe}};function xe(fe,qe){if(1&fe&&(i.ynx(0),i.YNc(1,ie,3,2,"ng-container",2),i.BQk()),2&fe){const ge=i.oxw();i.xp6(1),i.Q6J("nzStringTemplateOutlet",ge.config.nzFooter)("nzStringTemplateOutletContext",i.WLB(2,ae,ge.config.nzData,ge.modalRef))}}function Me(fe,qe){if(1&fe){const ge=i.EpF();i.TgZ(0,"button",10),i.NdJ("click",function(){i.CHM(ge);const $e=i.oxw(2);return i.KtG($e.onCancel())}),i._uU(1),i.qZA()}if(2&fe){const ge=i.oxw(2);i.Q6J("nzLoading",!!ge.config.nzCancelLoading)("disabled",ge.config.nzCancelDisabled),i.uIk("cdkFocusInitial","cancel"===ge.config.nzAutofocus||null),i.xp6(1),i.hij(" ",ge.config.nzCancelText||ge.locale.cancelText," ")}}function Ye(fe,qe){if(1&fe){const ge=i.EpF();i.TgZ(0,"button",11),i.NdJ("click",function(){i.CHM(ge);const $e=i.oxw(2);return i.KtG($e.onOk())}),i._uU(1),i.qZA()}if(2&fe){const ge=i.oxw(2);i.Q6J("nzType",ge.config.nzOkType)("nzDanger",ge.config.nzOkDanger)("nzLoading",!!ge.config.nzOkLoading)("disabled",ge.config.nzOkDisabled),i.uIk("cdkFocusInitial","ok"===ge.config.nzAutofocus||null),i.xp6(1),i.hij(" ",ge.config.nzOkText||ge.locale.okText," ")}}function q(fe,qe){if(1&fe&&(i.YNc(0,Me,2,4,"button",8),i.YNc(1,Ye,2,6,"button",9)),2&fe){const ge=i.oxw();i.Q6J("ngIf",null!==ge.config.nzCancelText),i.xp6(1),i.Q6J("ngIf",null!==ge.config.nzOkText)}}const ye=["nz-modal-title",""];function ee(fe,qe){if(1&fe&&(i.ynx(0),i._UZ(1,"div",2),i.BQk()),2&fe){const ge=i.oxw();i.xp6(1),i.Q6J("innerHTML",ge.config.nzTitle,i.oJD)}}function Be(fe,qe){if(1&fe){const ge=i.EpF();i.TgZ(0,"button",9),i.NdJ("click",function(){i.CHM(ge);const $e=i.oxw();return i.KtG($e.onCloseClick())}),i.qZA()}}function Re(fe,qe){1&fe&&i._UZ(0,"div",10)}function ct(fe,qe){}function Ae(fe,qe){if(1&fe&&i._UZ(0,"div",11),2&fe){const ge=i.oxw();i.Q6J("innerHTML",ge.config.nzContent,i.oJD)}}function Mt(fe,qe){if(1&fe){const ge=i.EpF();i.TgZ(0,"div",12),i.NdJ("cancelTriggered",function(){i.CHM(ge);const $e=i.oxw();return i.KtG($e.onCloseClick())})("okTriggered",function(){i.CHM(ge);const $e=i.oxw();return i.KtG($e.onOkClick())}),i.qZA()}if(2&fe){const ge=i.oxw();i.Q6J("modalRef",ge.modalRef)}}const je=()=>{};class ot{constructor(){this.nzCentered=!1,this.nzClosable=!0,this.nzOkLoading=!1,this.nzOkDisabled=!1,this.nzCancelDisabled=!1,this.nzCancelLoading=!1,this.nzNoAnimation=!1,this.nzAutofocus="auto",this.nzKeyboard=!0,this.nzZIndex=1e3,this.nzWidth=520,this.nzCloseIcon="close",this.nzOkType="primary",this.nzOkDanger=!1,this.nzModalType="default",this.nzOnCancel=je,this.nzOnOk=je,this.nzIconType="question-circle"}}const de="ant-modal-mask",U="modal",B=new i.OlP("NZ_MODAL_DATA"),Ee={modalContainer:(0,p.X$)("modalContainer",[(0,p.SB)("void, exit",(0,p.oB)({})),(0,p.SB)("enter",(0,p.oB)({})),(0,p.eR)("* => enter",(0,p.jt)(".24s",(0,p.oB)({}))),(0,p.eR)("* => void, * => exit",(0,p.jt)(".2s",(0,p.oB)({})))])};function Ne(fe,qe,ge){return typeof fe>"u"?typeof qe>"u"?ge:qe:fe}function Dt(){throw Error("Attempting to attach modal content after content is already attached")}let Lt=(()=>{class fe extends t.en{get showMask(){const ge=this.nzConfigService.getConfigForComponent(U)||{};return!!Ne(this.config.nzMask,ge.nzMask,!0)}get maskClosable(){const ge=this.nzConfigService.getConfigForComponent(U)||{};return!!Ne(this.config.nzMaskClosable,ge.nzMaskClosable,!0)}constructor(ge,Ze,$e,Ue,wt,De,Pe,Je,Ge,Ke){super(),this.ngZone=ge,this.host=Ze,this.focusTrapFactory=$e,this.cdr=Ue,this.render=wt,this.overlayRef=De,this.nzConfigService=Pe,this.config=Je,this.animationType=Ke,this.animationStateChanged=new i.vpe,this.containerClick=new i.vpe,this.cancelTriggered=new i.vpe,this.okTriggered=new i.vpe,this.state="enter",this.isStringContent=!1,this.dir="ltr",this.elementFocusedBeforeModalWasOpened=null,this.mouseDown=!1,this.oldMaskStyle=null,this.destroy$=new l.x,this.document=Ge,this.dir=De.getDirection(),this.isStringContent="string"==typeof Je.nzContent,this.nzConfigService.getConfigChangeEventForComponent(U).pipe((0,u.R)(this.destroy$)).subscribe(()=>{this.updateMaskClassname()})}onContainerClick(ge){ge.target===ge.currentTarget&&!this.mouseDown&&this.showMask&&this.maskClosable&&this.containerClick.emit()}onCloseClick(){this.cancelTriggered.emit()}onOkClick(){this.okTriggered.emit()}attachComponentPortal(ge){return this.portalOutlet.hasAttached()&&Dt(),this.savePreviouslyFocusedElement(),this.setZIndexForBackdrop(),this.portalOutlet.attachComponentPortal(ge)}attachTemplatePortal(ge){return this.portalOutlet.hasAttached()&&Dt(),this.savePreviouslyFocusedElement(),this.setZIndexForBackdrop(),this.portalOutlet.attachTemplatePortal(ge)}attachStringContent(){this.savePreviouslyFocusedElement(),this.setZIndexForBackdrop()}getNativeElement(){return this.host.nativeElement}animationDisabled(){return this.config.nzNoAnimation||"NoopAnimations"===this.animationType}setModalTransformOrigin(){const ge=this.modalElementRef.nativeElement;if(this.elementFocusedBeforeModalWasOpened){const Ze=this.elementFocusedBeforeModalWasOpened.getBoundingClientRect(),$e=(0,g.pW)(this.elementFocusedBeforeModalWasOpened);this.render.setStyle(ge,"transform-origin",`${$e.left+Ze.width/2-ge.offsetLeft}px ${$e.top+Ze.height/2-ge.offsetTop}px 0px`)}}savePreviouslyFocusedElement(){this.focusTrap||(this.focusTrap=this.focusTrapFactory.create(this.host.nativeElement)),this.document&&(this.elementFocusedBeforeModalWasOpened=this.document.activeElement,this.host.nativeElement.focus&&this.ngZone.runOutsideAngular(()=>(0,f.e)(()=>this.host.nativeElement.focus())))}trapFocus(){const ge=this.host.nativeElement;if(this.config.nzAutofocus)this.focusTrap.focusInitialElementWhenReady();else{const Ze=this.document.activeElement;Ze!==ge&&!ge.contains(Ze)&&ge.focus()}}restoreFocus(){const ge=this.elementFocusedBeforeModalWasOpened;if(ge&&"function"==typeof ge.focus){const Ze=this.document.activeElement,$e=this.host.nativeElement;(!Ze||Ze===this.document.body||Ze===$e||$e.contains(Ze))&&ge.focus()}this.focusTrap&&this.focusTrap.destroy()}setEnterAnimationClass(){if(this.animationDisabled())return;this.setModalTransformOrigin();const ge=this.modalElementRef.nativeElement,Ze=this.overlayRef.backdropElement;ge.classList.add("ant-zoom-enter"),ge.classList.add("ant-zoom-enter-active"),Ze&&(Ze.classList.add("ant-fade-enter"),Ze.classList.add("ant-fade-enter-active"))}setExitAnimationClass(){const ge=this.modalElementRef.nativeElement;ge.classList.add("ant-zoom-leave"),ge.classList.add("ant-zoom-leave-active"),this.setMaskExitAnimationClass()}setMaskExitAnimationClass(ge=!1){const Ze=this.overlayRef.backdropElement;if(Ze){if(this.animationDisabled()||ge)return void Ze.classList.remove(de);Ze.classList.add("ant-fade-leave"),Ze.classList.add("ant-fade-leave-active")}}cleanAnimationClass(){if(this.animationDisabled())return;const ge=this.overlayRef.backdropElement,Ze=this.modalElementRef.nativeElement;ge&&(ge.classList.remove("ant-fade-enter"),ge.classList.remove("ant-fade-enter-active")),Ze.classList.remove("ant-zoom-enter"),Ze.classList.remove("ant-zoom-enter-active"),Ze.classList.remove("ant-zoom-leave"),Ze.classList.remove("ant-zoom-leave-active")}setZIndexForBackdrop(){const ge=this.overlayRef.backdropElement;ge&&(0,g.DX)(this.config.nzZIndex)&&this.render.setStyle(ge,"z-index",this.config.nzZIndex)}bindBackdropStyle(){const ge=this.overlayRef.backdropElement;if(ge&&(this.oldMaskStyle&&(Object.keys(this.oldMaskStyle).forEach($e=>{this.render.removeStyle(ge,$e)}),this.oldMaskStyle=null),this.setZIndexForBackdrop(),"object"==typeof this.config.nzMaskStyle&&Object.keys(this.config.nzMaskStyle).length)){const Ze={...this.config.nzMaskStyle};Object.keys(Ze).forEach($e=>{this.render.setStyle(ge,$e,Ze[$e])}),this.oldMaskStyle=Ze}}updateMaskClassname(){const ge=this.overlayRef.backdropElement;ge&&(this.showMask?ge.classList.add(de):ge.classList.remove(de))}onAnimationDone(ge){"enter"===ge.toState?this.trapFocus():"exit"===ge.toState&&this.restoreFocus(),this.cleanAnimationClass(),this.animationStateChanged.emit(ge)}onAnimationStart(ge){"enter"===ge.toState?(this.setEnterAnimationClass(),this.bindBackdropStyle()):"exit"===ge.toState&&this.setExitAnimationClass(),this.animationStateChanged.emit(ge)}startExitAnimation(){this.state="exit",this.cdr.markForCheck()}ngOnDestroy(){this.setMaskExitAnimationClass(!0),this.destroy$.next(!0),this.destroy$.complete()}setupMouseListeners(ge){this.ngZone.runOutsideAngular(()=>{(0,C.R)(this.host.nativeElement,"mouseup").pipe((0,u.R)(this.destroy$)).subscribe(()=>{this.mouseDown&&setTimeout(()=>{this.mouseDown=!1})}),(0,C.R)(ge.nativeElement,"mousedown").pipe((0,u.R)(this.destroy$)).subscribe(()=>{this.mouseDown=!0})})}static#e=this.\u0275fac=function(Ze){i.$Z()};static#t=this.\u0275dir=i.lG2({type:fe,features:[i.qOj]})}return fe})(),Ut=(()=>{class fe{constructor(ge){this.config=ge}static#e=this.\u0275fac=function(Ze){return new(Ze||fe)(i.Y36(ot))};static#t=this.\u0275cmp=i.Xpm({type:fe,selectors:[["button","nz-modal-close",""]],hostAttrs:["aria-label","Close",1,"ant-modal-close"],exportAs:["NzModalCloseBuiltin"],attrs:_e,decls:2,vars:1,consts:[[1,"ant-modal-close-x"],[4,"nzStringTemplateOutlet"],["nz-icon","",1,"ant-modal-close-icon",3,"nzType"]],template:function(Ze,$e){1&Ze&&(i.TgZ(0,"span",0),i.YNc(1,Y,2,1,"ng-container",1),i.qZA()),2&Ze&&(i.xp6(1),i.Q6J("nzStringTemplateOutlet",$e.config.nzCloseIcon))},dependencies:[D.f,P.w,A.Ls],encapsulation:2,changeDetection:0})}return fe})(),qt=(()=>{class fe extends Lt{constructor(ge,Ze,$e,Ue,wt,De,Pe,Je,Ge,Ke,ve){super(ge,$e,Ue,wt,De,Pe,Je,Ge,Ke,ve),this.i18n=Ze,this.config=Ge,this.cancelTriggered=new i.vpe,this.okTriggered=new i.vpe,this.i18n.localeChange.pipe((0,u.R)(this.destroy$)).subscribe(()=>{this.locale=this.i18n.getLocaleData("Modal")})}ngOnInit(){this.setupMouseListeners(this.modalElementRef)}onCancel(){this.cancelTriggered.emit()}onOk(){this.okTriggered.emit()}static#e=this.\u0275fac=function(Ze){return new(Ze||fe)(i.Y36(i.R0b),i.Y36(x.wi),i.Y36(i.SBq),i.Y36(y.qV),i.Y36(i.sBO),i.Y36(i.Qsj),i.Y36(n.Iu),i.Y36(T.jY),i.Y36(ot),i.Y36(d.K0,8),i.Y36(i.QbO,8))};static#t=this.\u0275cmp=i.Xpm({type:fe,selectors:[["nz-modal-confirm-container"]],viewQuery:function(Ze,$e){if(1&Ze&&(i.Gf(t.Pl,7),i.Gf(G,7)),2&Ze){let Ue;i.iGM(Ue=i.CRH())&&($e.portalOutlet=Ue.first),i.iGM(Ue=i.CRH())&&($e.modalElementRef=Ue.first)}},hostAttrs:["tabindex","-1","role","dialog"],hostVars:10,hostBindings:function(Ze,$e){1&Ze&&(i.WFA("@modalContainer.start",function(wt){return $e.onAnimationStart(wt)})("@modalContainer.done",function(wt){return $e.onAnimationDone(wt)}),i.NdJ("click",function(wt){return $e.onContainerClick(wt)})),2&Ze&&(i.d8E("@.disabled",$e.config.nzNoAnimation)("@modalContainer",$e.state),i.Tol($e.config.nzWrapClassName?"ant-modal-wrap "+$e.config.nzWrapClassName:"ant-modal-wrap"),i.Udp("z-index",$e.config.nzZIndex),i.ekj("ant-modal-wrap-rtl","rtl"===$e.dir)("ant-modal-centered",$e.config.nzCentered))},outputs:{cancelTriggered:"cancelTriggered",okTriggered:"okTriggered"},exportAs:["nzModalConfirmContainer"],features:[i.qOj],decls:17,vars:13,consts:[["role","document",1,"ant-modal",3,"ngClass","ngStyle"],["modalElement",""],[1,"ant-modal-content"],["nz-modal-close","",3,"click",4,"ngIf"],[1,"ant-modal-body",3,"ngStyle"],[1,"ant-modal-confirm-body-wrapper"],[1,"ant-modal-confirm-body"],["nz-icon","",3,"nzType"],[1,"ant-modal-confirm-title"],[4,"nzStringTemplateOutlet"],[1,"ant-modal-confirm-content"],["cdkPortalOutlet",""],[3,"innerHTML",4,"ngIf"],[1,"ant-modal-confirm-btns"],["nz-button","",3,"nzLoading","disabled","click",4,"ngIf"],["nz-button","",3,"nzType","nzLoading","disabled","nzDanger","click",4,"ngIf"],["nz-modal-close","",3,"click"],[3,"innerHTML"],["nz-button","",3,"nzLoading","disabled","click"],["nz-button","",3,"nzType","nzLoading","disabled","nzDanger","click"]],template:function(Ze,$e){1&Ze&&(i.TgZ(0,"div",0,1),i.ALo(2,"nzToCssUnit"),i.TgZ(3,"div",2),i.YNc(4,H,1,0,"button",3),i.TgZ(5,"div",4)(6,"div",5)(7,"div",6),i._UZ(8,"span",7),i.TgZ(9,"span",8),i.YNc(10,j,2,1,"ng-container",9),i.qZA(),i.TgZ(11,"div",10),i.YNc(12,te,0,0,"ng-template",11),i.YNc(13,ne,1,1,"div",12),i.qZA()(),i.TgZ(14,"div",13),i.YNc(15,pe,2,4,"button",14),i.YNc(16,re,2,6,"button",15),i.qZA()()()()()),2&Ze&&(i.Udp("width",i.lcZ(2,11,null==$e.config?null:$e.config.nzWidth)),i.Q6J("ngClass",$e.config.nzClassName)("ngStyle",$e.config.nzStyle),i.xp6(4),i.Q6J("ngIf",$e.config.nzClosable),i.xp6(1),i.Q6J("ngStyle",$e.config.nzBodyStyle),i.xp6(3),i.Q6J("nzType",$e.config.nzIconType),i.xp6(2),i.Q6J("nzStringTemplateOutlet",$e.config.nzTitle),i.xp6(3),i.Q6J("ngIf",$e.isStringContent),i.xp6(2),i.Q6J("ngIf",null!==$e.config.nzCancelText),i.xp6(1),i.Q6J("ngIf",null!==$e.config.nzOkText))},dependencies:[d.mk,d.O5,d.PC,D.f,t.Pl,_.ix,P.w,O.dQ,A.Ls,Ut,k.ku],encapsulation:2,data:{animation:[Ee.modalContainer]}})}return fe})(),en=(()=>{class fe{constructor(ge,Ze){this.i18n=ge,this.config=Ze,this.buttonsFooter=!1,this.buttons=[],this.cancelTriggered=new i.vpe,this.okTriggered=new i.vpe,this.destroy$=new l.x,Array.isArray(Ze.nzFooter)&&(this.buttonsFooter=!0,this.buttons=Ze.nzFooter.map(cn)),this.i18n.localeChange.pipe((0,u.R)(this.destroy$)).subscribe(()=>{this.locale=this.i18n.getLocaleData("Modal")})}onCancel(){this.cancelTriggered.emit()}onOk(){this.okTriggered.emit()}getButtonCallableProp(ge,Ze){const $e=ge[Ze],Ue=this.modalRef.getContentComponent();return"function"==typeof $e?$e.apply(ge,Ue&&[Ue]):$e}onButtonClick(ge){if(!this.getButtonCallableProp(ge,"loading")){const $e=this.getButtonCallableProp(ge,"onClick");ge.autoLoading&&(0,g.tI)($e)&&(ge.loading=!0,$e.then(()=>ge.loading=!1).catch(Ue=>{throw ge.loading=!1,Ue}))}}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(Ze){return new(Ze||fe)(i.Y36(x.wi),i.Y36(ot))};static#t=this.\u0275cmp=i.Xpm({type:fe,selectors:[["div","nz-modal-footer",""]],hostAttrs:[1,"ant-modal-footer"],inputs:{modalRef:"modalRef"},outputs:{cancelTriggered:"cancelTriggered",okTriggered:"okTriggered"},exportAs:["NzModalFooterBuiltin"],attrs:be,decls:3,vars:2,consts:[[4,"ngIf","ngIfElse"],["defaultFooterButtons",""],[4,"nzStringTemplateOutlet","nzStringTemplateOutletContext"],[3,"innerHTML",4,"ngIf"],[4,"ngIf"],[3,"innerHTML"],["nz-button","",3,"hidden","nzLoading","disabled","nzType","nzDanger","nzShape","nzSize","nzGhost","click",4,"ngFor","ngForOf"],["nz-button","",3,"hidden","nzLoading","disabled","nzType","nzDanger","nzShape","nzSize","nzGhost","click"],["nz-button","",3,"nzLoading","disabled","click",4,"ngIf"],["nz-button","",3,"nzType","nzDanger","nzLoading","disabled","click",4,"ngIf"],["nz-button","",3,"nzLoading","disabled","click"],["nz-button","",3,"nzType","nzDanger","nzLoading","disabled","click"]],template:function(Ze,$e){if(1&Ze&&(i.YNc(0,xe,2,5,"ng-container",0),i.YNc(1,q,2,2,"ng-template",null,1,i.W1O)),2&Ze){const Ue=i.MAs(2);i.Q6J("ngIf",$e.config.nzFooter)("ngIfElse",Ue)}},dependencies:[d.sg,d.O5,D.f,_.ix,P.w,O.dQ],encapsulation:2})}return fe})();function cn(fe){return{type:null,size:"default",autoLoading:!0,show:!0,loading:!1,disabled:!1,...fe}}let Wt=(()=>{class fe{constructor(ge){this.config=ge}static#e=this.\u0275fac=function(Ze){return new(Ze||fe)(i.Y36(ot))};static#t=this.\u0275cmp=i.Xpm({type:fe,selectors:[["div","nz-modal-title",""]],hostAttrs:[1,"ant-modal-header"],exportAs:["NzModalTitleBuiltin"],attrs:ye,decls:2,vars:1,consts:[[1,"ant-modal-title"],[4,"nzStringTemplateOutlet"],[3,"innerHTML"]],template:function(Ze,$e){1&Ze&&(i.TgZ(0,"div",0),i.YNc(1,ee,2,1,"ng-container",1),i.qZA()),2&Ze&&(i.xp6(1),i.Q6J("nzStringTemplateOutlet",$e.config.nzTitle))},dependencies:[D.f],encapsulation:2,changeDetection:0})}return fe})(),Vt=(()=>{class fe extends Lt{constructor(ge,Ze,$e,Ue,wt,De,Pe,Je,Ge,Ke){super(ge,Ze,$e,Ue,wt,De,Pe,Je,Ge,Ke),this.config=Je}ngOnInit(){this.setupMouseListeners(this.modalElementRef)}static#e=this.\u0275fac=function(Ze){return new(Ze||fe)(i.Y36(i.R0b),i.Y36(i.SBq),i.Y36(y.qV),i.Y36(i.sBO),i.Y36(i.Qsj),i.Y36(n.Iu),i.Y36(T.jY),i.Y36(ot),i.Y36(d.K0,8),i.Y36(i.QbO,8))};static#t=this.\u0275cmp=i.Xpm({type:fe,selectors:[["nz-modal-container"]],viewQuery:function(Ze,$e){if(1&Ze&&(i.Gf(t.Pl,7),i.Gf(G,7)),2&Ze){let Ue;i.iGM(Ue=i.CRH())&&($e.portalOutlet=Ue.first),i.iGM(Ue=i.CRH())&&($e.modalElementRef=Ue.first)}},hostAttrs:["tabindex","-1","role","dialog"],hostVars:10,hostBindings:function(Ze,$e){1&Ze&&(i.WFA("@modalContainer.start",function(wt){return $e.onAnimationStart(wt)})("@modalContainer.done",function(wt){return $e.onAnimationDone(wt)}),i.NdJ("click",function(wt){return $e.onContainerClick(wt)})),2&Ze&&(i.d8E("@.disabled",$e.config.nzNoAnimation)("@modalContainer",$e.state),i.Tol($e.config.nzWrapClassName?"ant-modal-wrap "+$e.config.nzWrapClassName:"ant-modal-wrap"),i.Udp("z-index",$e.config.nzZIndex),i.ekj("ant-modal-wrap-rtl","rtl"===$e.dir)("ant-modal-centered",$e.config.nzCentered))},exportAs:["nzModalContainer"],features:[i.qOj],decls:10,vars:11,consts:[["role","document",1,"ant-modal",3,"ngClass","ngStyle"],["modalElement",""],[1,"ant-modal-content"],["nz-modal-close","",3,"click",4,"ngIf"],["nz-modal-title","",4,"ngIf"],[1,"ant-modal-body",3,"ngStyle"],["cdkPortalOutlet",""],[3,"innerHTML",4,"ngIf"],["nz-modal-footer","",3,"modalRef","cancelTriggered","okTriggered",4,"ngIf"],["nz-modal-close","",3,"click"],["nz-modal-title",""],[3,"innerHTML"],["nz-modal-footer","",3,"modalRef","cancelTriggered","okTriggered"]],template:function(Ze,$e){1&Ze&&(i.TgZ(0,"div",0,1),i.ALo(2,"nzToCssUnit"),i.TgZ(3,"div",2),i.YNc(4,Be,1,0,"button",3),i.YNc(5,Re,1,0,"div",4),i.TgZ(6,"div",5),i.YNc(7,ct,0,0,"ng-template",6),i.YNc(8,Ae,1,1,"div",7),i.qZA(),i.YNc(9,Mt,1,1,"div",8),i.qZA()()),2&Ze&&(i.Udp("width",i.lcZ(2,9,null==$e.config?null:$e.config.nzWidth)),i.Q6J("ngClass",$e.config.nzClassName)("ngStyle",$e.config.nzStyle),i.xp6(4),i.Q6J("ngIf",$e.config.nzClosable),i.xp6(1),i.Q6J("ngIf",$e.config.nzTitle),i.xp6(1),i.Q6J("ngStyle",$e.config.nzBodyStyle),i.xp6(2),i.Q6J("ngIf",$e.isStringContent),i.xp6(1),i.Q6J("ngIf",null!==$e.config.nzFooter))},dependencies:[d.mk,d.O5,d.PC,t.Pl,Ut,en,Wt,k.ku],encapsulation:2,data:{animation:[Ee.modalContainer]}})}return fe})();class st{constructor(qe,ge,Ze){this.overlayRef=qe,this.config=ge,this.containerInstance=Ze,this.componentInstance=null,this.state=0,this.afterClose=new l.x,this.afterOpen=new l.x,this.destroy$=new l.x,Ze.animationStateChanged.pipe((0,z.h)($e=>"done"===$e.phaseName&&"enter"===$e.toState),(0,M.q)(1)).subscribe(()=>{this.afterOpen.next(),this.afterOpen.complete(),ge.nzAfterOpen instanceof i.vpe&&ge.nzAfterOpen.emit()}),Ze.animationStateChanged.pipe((0,z.h)($e=>"done"===$e.phaseName&&"exit"===$e.toState),(0,M.q)(1)).subscribe(()=>{clearTimeout(this.closeTimeout),this._finishDialogClose()}),Ze.containerClick.pipe((0,M.q)(1),(0,u.R)(this.destroy$)).subscribe(()=>{!this.config.nzCancelLoading&&!this.config.nzOkLoading&&this.trigger("cancel")}),qe.keydownEvents().pipe((0,z.h)($e=>this.config.nzKeyboard&&!this.config.nzCancelLoading&&!this.config.nzOkLoading&&$e.keyCode===F.hY&&!(0,F.Vb)($e))).subscribe($e=>{$e.preventDefault(),this.trigger("cancel")}),Ze.cancelTriggered.pipe((0,u.R)(this.destroy$)).subscribe(()=>this.trigger("cancel")),Ze.okTriggered.pipe((0,u.R)(this.destroy$)).subscribe(()=>this.trigger("ok")),qe.detachments().subscribe(()=>{this.afterClose.next(this.result),this.afterClose.complete(),ge.nzAfterClose instanceof i.vpe&&ge.nzAfterClose.emit(this.result),this.componentInstance=null,this.overlayRef.dispose()})}getContentComponent(){return this.componentInstance}getElement(){return this.containerInstance.getNativeElement()}destroy(qe){this.close(qe)}triggerOk(){return this.trigger("ok")}triggerCancel(){return this.trigger("cancel")}close(qe){0===this.state&&(this.result=qe,this.containerInstance.animationStateChanged.pipe((0,z.h)(ge=>"start"===ge.phaseName),(0,M.q)(1)).subscribe(ge=>{this.overlayRef.detachBackdrop(),this.closeTimeout=setTimeout(()=>{this._finishDialogClose()},ge.totalTime+100)}),this.containerInstance.startExitAnimation(),this.state=1)}updateConfig(qe){Object.assign(this.config,qe),this.containerInstance.bindBackdropStyle(),this.containerInstance.cdr.markForCheck()}getState(){return this.state}getConfig(){return this.config}getBackdropElement(){return this.overlayRef.backdropElement}trigger(qe){var ge=this;return(0,e.Z)(function*(){if(1===ge.state)return;const Ze={ok:ge.config.nzOnOk,cancel:ge.config.nzOnCancel}[qe],$e={ok:"nzOkLoading",cancel:"nzCancelLoading"}[qe];if(!ge.config[$e])if(Ze instanceof i.vpe)Ze.emit(ge.getContentComponent());else if("function"==typeof Ze){const wt=Ze(ge.getContentComponent());if((0,g.tI)(wt)){ge.config[$e]=!0;let De=!1;try{De=yield wt}finally{ge.config[$e]=!1,ge.closeWhitResult(De)}}else ge.closeWhitResult(wt)}})()}closeWhitResult(qe){!1!==qe&&this.close(qe)}_finishDialogClose(){this.state=2,this.overlayRef.dispose(),this.destroy$.next()}}let He=(()=>{class fe{get openModals(){return this.parentModal?this.parentModal.openModals:this.openModalsAtThisLevel}get _afterAllClosed(){const ge=this.parentModal;return ge?ge._afterAllClosed:this.afterAllClosedAtThisLevel}constructor(ge,Ze,$e,Ue,wt){this.overlay=ge,this.injector=Ze,this.nzConfigService=$e,this.parentModal=Ue,this.directionality=wt,this.openModalsAtThisLevel=[],this.afterAllClosedAtThisLevel=new l.x,this.afterAllClose=(0,E.P)(()=>this.openModals.length?this._afterAllClosed:this._afterAllClosed.pipe((0,h.O)(void 0)))}create(ge){return this.open(ge.nzContent,ge)}closeAll(){this.closeModals(this.openModals)}confirm(ge={},Ze="confirm"){return"nzFooter"in ge&&(0,v.ZK)('The Confirm-Modal doesn\'t support "nzFooter", this property will be ignored.'),"nzWidth"in ge||(ge.nzWidth=416),"nzMaskClosable"in ge||(ge.nzMaskClosable=!1),ge.nzModalType="confirm",ge.nzClassName=`ant-modal-confirm ant-modal-confirm-${Ze} ${ge.nzClassName||""}`,this.create(ge)}info(ge={}){return this.confirmFactory(ge,"info")}success(ge={}){return this.confirmFactory(ge,"success")}error(ge={}){return this.confirmFactory(ge,"error")}warning(ge={}){return this.confirmFactory(ge,"warning")}open(ge,Ze){const $e=function Ie(fe,qe){return{...qe,...fe}}(Ze||{},new ot),Ue=this.createOverlay($e),wt=this.attachModalContainer(Ue,$e),De=this.attachModalContent(ge,wt,Ue,$e);return wt.modalRef=De,this.openModals.push(De),De.afterClose.subscribe(()=>this.removeOpenModal(De)),De}removeOpenModal(ge){const Ze=this.openModals.indexOf(ge);Ze>-1&&(this.openModals.splice(Ze,1),this.openModals.length||this._afterAllClosed.next())}closeModals(ge){let Ze=ge.length;for(;Ze--;)ge[Ze].close(),this.openModals.length||this._afterAllClosed.next()}createOverlay(ge){const Ze=this.nzConfigService.getConfigForComponent(U)||{},$e=new n.X_({hasBackdrop:!0,scrollStrategy:this.overlay.scrollStrategies.block(),positionStrategy:this.overlay.position().global(),disposeOnNavigation:Ne(ge.nzCloseOnNavigation,Ze.nzCloseOnNavigation,!0),direction:Ne(ge.nzDirection,Ze.nzDirection,this.directionality.value)});return Ne(ge.nzMask,Ze.nzMask,!0)&&($e.backdropClass=de),this.overlay.create($e)}attachModalContainer(ge,Ze){const Ue=i.zs3.create({parent:Ze&&Ze.nzViewContainerRef&&Ze.nzViewContainerRef.injector||this.injector,providers:[{provide:n.Iu,useValue:ge},{provide:ot,useValue:Ze}]}),De=new t.C5("confirm"===Ze.nzModalType?qt:Vt,Ze.nzViewContainerRef,Ue);return ge.attach(De).instance}attachModalContent(ge,Ze,$e,Ue){const wt=new st($e,Ue,Ze);if(ge instanceof i.Rgc)Ze.attachTemplatePortal(new t.UE(ge,null,{$implicit:Ue.nzData,modalRef:wt}));else if((0,g.DX)(ge)&&"string"!=typeof ge){const De=this.createInjector(wt,Ue),Pe=Ze.attachComponentPortal(new t.C5(ge,Ue.nzViewContainerRef,De));wt.componentInstance=Pe.instance}else Ze.attachStringContent();return wt}createInjector(ge,Ze){return i.zs3.create({parent:Ze&&Ze.nzViewContainerRef&&Ze.nzViewContainerRef.injector||this.injector,providers:[{provide:st,useValue:ge},{provide:B,useValue:Ze.nzData}]})}confirmFactory(ge={},Ze){return"nzIconType"in ge||(ge.nzIconType={info:"info-circle",success:"check-circle",error:"close-circle",warning:"exclamation-circle"}[Ze]),"nzCancelText"in ge||(ge.nzCancelText=null),this.confirm(ge,Ze)}ngOnDestroy(){this.closeModals(this.openModalsAtThisLevel),this.afterAllClosedAtThisLevel.complete()}static#e=this.\u0275fac=function(Ze){return new(Ze||fe)(i.LFG(n.aV),i.LFG(i.zs3),i.LFG(T.jY),i.LFG(fe,12),i.LFG(W.Is,8))};static#t=this.\u0275prov=i.Yz7({token:fe,factory:fe.\u0275fac})}return fe})(),Qe=(()=>{class fe{static#e=this.\u0275fac=function(Ze){return new(Ze||fe)};static#t=this.\u0275mod=i.oAB({type:fe});static#n=this.\u0275inj=i.cJS({providers:[He],imports:[d.ez,W.vT,n.U8,D.T,t.eL,x.YI,_.sL,A.PV,k.YS,K.g,k.YS]})}return fe})()},2274:(nt,I,o)=>{"use strict";o.d(I,{dE:()=>Mt,uK:()=>je});var e=o(97582),n=o(65879),t=o(78645),i=o(97328),l=o(59773),C=o(83064),E=o(99087),u=o(27754),z=o(12131),M=o(49388),h=o(96814),v=o(90551),g=o(60095),d=o(9691);const p=["nz-pagination-item",""];function f(ot,mt){if(1&ot&&(n.TgZ(0,"a"),n._uU(1),n.qZA()),2&ot){const we=n.oxw().page;n.xp6(1),n.Oqu(we)}}function y(ot,mt){1&ot&&n._UZ(0,"span",9)}function T(ot,mt){1&ot&&n._UZ(0,"span",10)}function x(ot,mt){if(1&ot&&(n.TgZ(0,"button",6),n.ynx(1,2),n.YNc(2,y,1,0,"span",7),n.YNc(3,T,1,0,"span",8),n.BQk(),n.qZA()),2&ot){const we=n.oxw(2);n.Q6J("disabled",we.disabled),n.xp6(1),n.Q6J("ngSwitch",we.direction),n.xp6(1),n.Q6J("ngSwitchCase","rtl")}}function D(ot,mt){1&ot&&n._UZ(0,"span",10)}function _(ot,mt){1&ot&&n._UZ(0,"span",9)}function P(ot,mt){if(1&ot&&(n.TgZ(0,"button",6),n.ynx(1,2),n.YNc(2,D,1,0,"span",11),n.YNc(3,_,1,0,"span",12),n.BQk(),n.qZA()),2&ot){const we=n.oxw(2);n.Q6J("disabled",we.disabled),n.xp6(1),n.Q6J("ngSwitch",we.direction),n.xp6(1),n.Q6J("ngSwitchCase","rtl")}}function O(ot,mt){1&ot&&n._UZ(0,"span",20)}function A(ot,mt){1&ot&&n._UZ(0,"span",21)}function k(ot,mt){if(1&ot&&(n.ynx(0,2),n.YNc(1,O,1,0,"span",18),n.YNc(2,A,1,0,"span",19),n.BQk()),2&ot){const we=n.oxw(4);n.Q6J("ngSwitch",we.direction),n.xp6(1),n.Q6J("ngSwitchCase","rtl")}}function F(ot,mt){1&ot&&n._UZ(0,"span",21)}function W(ot,mt){1&ot&&n._UZ(0,"span",20)}function K(ot,mt){if(1&ot&&(n.ynx(0,2),n.YNc(1,F,1,0,"span",22),n.YNc(2,W,1,0,"span",23),n.BQk()),2&ot){const we=n.oxw(4);n.Q6J("ngSwitch",we.direction),n.xp6(1),n.Q6J("ngSwitchCase","rtl")}}function _e(ot,mt){if(1&ot&&(n.TgZ(0,"div",15),n.ynx(1,2),n.YNc(2,k,3,2,"ng-container",16),n.YNc(3,K,3,2,"ng-container",16),n.BQk(),n.TgZ(4,"span",17),n._uU(5,"\u2022\u2022\u2022"),n.qZA()()),2&ot){const we=n.oxw(2).$implicit;n.xp6(1),n.Q6J("ngSwitch",we),n.xp6(1),n.Q6J("ngSwitchCase","prev_5"),n.xp6(1),n.Q6J("ngSwitchCase","next_5")}}function Y(ot,mt){if(1&ot&&(n.ynx(0),n.TgZ(1,"a",13),n.YNc(2,_e,6,3,"div",14),n.qZA(),n.BQk()),2&ot){const we=n.oxw().$implicit;n.xp6(1),n.Q6J("ngSwitch",we)}}function G(ot,mt){1&ot&&(n.ynx(0,2),n.YNc(1,f,2,1,"a",3),n.YNc(2,x,4,3,"button",4),n.YNc(3,P,4,3,"button",4),n.YNc(4,Y,3,1,"ng-container",5),n.BQk()),2&ot&&(n.Q6J("ngSwitch",mt.$implicit),n.xp6(1),n.Q6J("ngSwitchCase","page"),n.xp6(1),n.Q6J("ngSwitchCase","prev"),n.xp6(1),n.Q6J("ngSwitchCase","next"))}function H(ot,mt){}const j=function(ot,mt){return{$implicit:ot,page:mt}},te=["containerTemplate"];function ne(ot,mt){if(1&ot){const we=n.EpF();n.TgZ(0,"ul")(1,"li",1),n.NdJ("click",function(){n.CHM(we);const U=n.oxw();return n.KtG(U.prePage())}),n.qZA(),n.TgZ(2,"li",2)(3,"input",3),n.NdJ("keydown.enter",function(U){n.CHM(we);const B=n.oxw();return n.KtG(B.jumpToPageViaInput(U))}),n.qZA(),n.TgZ(4,"span",4),n._uU(5,"/"),n.qZA(),n._uU(6),n.qZA(),n.TgZ(7,"li",5),n.NdJ("click",function(){n.CHM(we);const U=n.oxw();return n.KtG(U.nextPage())}),n.qZA()()}if(2&ot){const we=n.oxw();n.xp6(1),n.Q6J("disabled",we.isFirstIndex)("direction",we.dir)("itemRender",we.itemRender),n.uIk("title",we.locale.prev_page),n.xp6(1),n.uIk("title",we.pageIndex+"/"+we.lastIndex),n.xp6(1),n.Q6J("disabled",we.disabled)("value",we.pageIndex),n.xp6(3),n.hij(" ",we.lastIndex," "),n.xp6(1),n.Q6J("disabled",we.isLastIndex)("direction",we.dir)("itemRender",we.itemRender),n.uIk("title",null==we.locale?null:we.locale.next_page)}}const pe=["nz-pagination-options",""];function re(ot,mt){if(1&ot&&n._UZ(0,"nz-option",4),2&ot){const we=mt.$implicit;n.Q6J("nzLabel",we.label)("nzValue",we.value)}}function be(ot,mt){if(1&ot){const we=n.EpF();n.TgZ(0,"nz-select",2),n.NdJ("ngModelChange",function(U){n.CHM(we);const B=n.oxw();return n.KtG(B.onPageSizeChange(U))}),n.YNc(1,re,1,2,"nz-option",3),n.qZA()}if(2&ot){const we=n.oxw();n.Q6J("nzDisabled",we.disabled)("nzSize",we.nzSize)("ngModel",we.pageSize),n.xp6(1),n.Q6J("ngForOf",we.listOfPageSizeOption)("ngForTrackBy",we.trackByOption)}}function le(ot,mt){if(1&ot){const we=n.EpF();n.TgZ(0,"div",5),n._uU(1),n.TgZ(2,"input",6),n.NdJ("keydown.enter",function(U){n.CHM(we);const B=n.oxw();return n.KtG(B.jumpToPageViaInput(U))}),n.qZA(),n._uU(3),n.qZA()}if(2&ot){const we=n.oxw();n.xp6(1),n.hij(" ",we.locale.jump_to," "),n.xp6(1),n.Q6J("disabled",we.disabled),n.xp6(1),n.hij(" ",we.locale.page," ")}}function ce(ot,mt){}const Q=function(ot,mt){return{$implicit:ot,range:mt}};function ie(ot,mt){if(1&ot&&(n.TgZ(0,"li",4),n.YNc(1,ce,0,0,"ng-template",5),n.qZA()),2&ot){const we=n.oxw(2);n.xp6(1),n.Q6J("ngTemplateOutlet",we.showTotal)("ngTemplateOutletContext",n.WLB(2,Q,we.total,we.ranges))}}function ae(ot,mt){if(1&ot){const we=n.EpF();n.TgZ(0,"li",6),n.NdJ("gotoIndex",function(U){n.CHM(we);const B=n.oxw(2);return n.KtG(B.jumpPage(U))})("diffIndex",function(U){n.CHM(we);const B=n.oxw(2);return n.KtG(B.jumpDiff(U))}),n.qZA()}if(2&ot){const we=mt.$implicit,de=n.oxw(2);n.Q6J("locale",de.locale)("type",we.type)("index",we.index)("disabled",!!we.disabled)("itemRender",de.itemRender)("active",de.pageIndex===we.index)("direction",de.dir)}}function xe(ot,mt){if(1&ot){const we=n.EpF();n.TgZ(0,"li",7),n.NdJ("pageIndexChange",function(U){n.CHM(we);const B=n.oxw(2);return n.KtG(B.onPageIndexChange(U))})("pageSizeChange",function(U){n.CHM(we);const B=n.oxw(2);return n.KtG(B.onPageSizeChange(U))}),n.qZA()}if(2&ot){const we=n.oxw(2);n.Q6J("total",we.total)("locale",we.locale)("disabled",we.disabled)("nzSize",we.nzSize)("showSizeChanger",we.showSizeChanger)("showQuickJumper",we.showQuickJumper)("pageIndex",we.pageIndex)("pageSize",we.pageSize)("pageSizeOptions",we.pageSizeOptions)}}function Me(ot,mt){if(1&ot&&(n.TgZ(0,"ul"),n.YNc(1,ie,2,5,"li",1),n.YNc(2,ae,1,7,"li",2),n.YNc(3,xe,1,9,"li",3),n.qZA()),2&ot){const we=n.oxw();n.xp6(1),n.Q6J("ngIf",we.showTotal),n.xp6(1),n.Q6J("ngForOf",we.listOfPageItem)("ngForTrackBy",we.trackByPageItem),n.xp6(1),n.Q6J("ngIf",we.showQuickJumper||we.showSizeChanger)}}function Ye(ot,mt){}function q(ot,mt){if(1&ot&&(n.ynx(0),n.YNc(1,Ye,0,0,"ng-template",6),n.BQk()),2&ot){n.oxw(2);const we=n.MAs(2);n.xp6(1),n.Q6J("ngTemplateOutlet",we.template)}}function ye(ot,mt){if(1&ot&&(n.ynx(0),n.YNc(1,q,2,1,"ng-container",5),n.BQk()),2&ot){const we=n.oxw(),de=n.MAs(4);n.xp6(1),n.Q6J("ngIf",we.nzSimple)("ngIfElse",de.template)}}let ee=(()=>{class ot{constructor(){this.active=!1,this.index=null,this.disabled=!1,this.direction="ltr",this.type=null,this.itemRender=null,this.diffIndex=new n.vpe,this.gotoIndex=new n.vpe,this.title=null}clickItem(){this.disabled||("page"===this.type?this.gotoIndex.emit(this.index):this.diffIndex.emit({next:1,prev:-1,prev_5:-5,next_5:5}[this.type]))}ngOnChanges(we){const{locale:de,index:U,type:B}=we;(de||U||B)&&(this.title={page:`${this.index}`,next:this.locale?.next_page,prev:this.locale?.prev_page,prev_5:this.locale?.prev_5,next_5:this.locale?.next_5}[this.type])}static#e=this.\u0275fac=function(de){return new(de||ot)};static#t=this.\u0275cmp=n.Xpm({type:ot,selectors:[["li","nz-pagination-item",""]],hostVars:19,hostBindings:function(de,U){1&de&&n.NdJ("click",function(){return U.clickItem()}),2&de&&(n.uIk("title",U.title),n.ekj("ant-pagination-prev","prev"===U.type)("ant-pagination-next","next"===U.type)("ant-pagination-item","page"===U.type)("ant-pagination-jump-prev","prev_5"===U.type)("ant-pagination-jump-prev-custom-icon","prev_5"===U.type)("ant-pagination-jump-next","next_5"===U.type)("ant-pagination-jump-next-custom-icon","next_5"===U.type)("ant-pagination-disabled",U.disabled)("ant-pagination-item-active",U.active))},inputs:{active:"active",locale:"locale",index:"index",disabled:"disabled",direction:"direction",type:"type",itemRender:"itemRender"},outputs:{diffIndex:"diffIndex",gotoIndex:"gotoIndex"},features:[n.TTD],attrs:p,decls:3,vars:5,consts:[["renderItemTemplate",""],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"ngSwitch"],[4,"ngSwitchCase"],["type","button","class","ant-pagination-item-link",3,"disabled",4,"ngSwitchCase"],[4,"ngSwitchDefault"],["type","button",1,"ant-pagination-item-link",3,"disabled"],["nz-icon","","nzType","right",4,"ngSwitchCase"],["nz-icon","","nzType","left",4,"ngSwitchDefault"],["nz-icon","","nzType","right"],["nz-icon","","nzType","left"],["nz-icon","","nzType","left",4,"ngSwitchCase"],["nz-icon","","nzType","right",4,"ngSwitchDefault"],[1,"ant-pagination-item-link",3,"ngSwitch"],["class","ant-pagination-item-container",4,"ngSwitchDefault"],[1,"ant-pagination-item-container"],[3,"ngSwitch",4,"ngSwitchCase"],[1,"ant-pagination-item-ellipsis"],["nz-icon","","nzType","double-right","class","ant-pagination-item-link-icon",4,"ngSwitchCase"],["nz-icon","","nzType","double-left","class","ant-pagination-item-link-icon",4,"ngSwitchDefault"],["nz-icon","","nzType","double-right",1,"ant-pagination-item-link-icon"],["nz-icon","","nzType","double-left",1,"ant-pagination-item-link-icon"],["nz-icon","","nzType","double-left","class","ant-pagination-item-link-icon",4,"ngSwitchCase"],["nz-icon","","nzType","double-right","class","ant-pagination-item-link-icon",4,"ngSwitchDefault"]],template:function(de,U){if(1&de&&(n.YNc(0,G,5,4,"ng-template",null,0,n.W1O),n.YNc(2,H,0,0,"ng-template",1)),2&de){const B=n.MAs(1);n.xp6(2),n.Q6J("ngTemplateOutlet",U.itemRender||B)("ngTemplateOutletContext",n.WLB(2,j,U.type,U.index))}},dependencies:[h.tP,h.RF,h.n9,h.ED,v.Ls],encapsulation:2,changeDetection:0})}return ot})(),Be=(()=>{class ot{constructor(we,de,U,B){this.cdr=we,this.renderer=de,this.elementRef=U,this.directionality=B,this.itemRender=null,this.disabled=!1,this.total=0,this.pageIndex=1,this.pageSize=10,this.pageIndexChange=new n.vpe,this.lastIndex=0,this.isFirstIndex=!1,this.isLastIndex=!1,this.dir="ltr",this.destroy$=new t.x,de.removeChild(de.parentNode(U.nativeElement),U.nativeElement)}ngOnInit(){this.directionality.change?.pipe((0,l.R)(this.destroy$)).subscribe(we=>{this.dir=we,this.updateRtlStyle(),this.cdr.detectChanges()}),this.dir=this.directionality.value,this.updateRtlStyle()}updateRtlStyle(){"rtl"===this.dir?this.renderer.addClass(this.elementRef.nativeElement,"ant-pagination-rtl"):this.renderer.removeClass(this.elementRef.nativeElement,"ant-pagination-rtl")}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}jumpToPageViaInput(we){const de=we.target,U=(0,u.He)(de.value,this.pageIndex);this.onPageIndexChange(U),de.value=`${this.pageIndex}`}prePage(){this.onPageIndexChange(this.pageIndex-1)}nextPage(){this.onPageIndexChange(this.pageIndex+1)}onPageIndexChange(we){this.pageIndexChange.next(we)}updateBindingValue(){this.lastIndex=Math.ceil(this.total/this.pageSize),this.isFirstIndex=1===this.pageIndex,this.isLastIndex=this.pageIndex===this.lastIndex}ngOnChanges(we){const{pageIndex:de,total:U,pageSize:B}=we;(de||U||B)&&this.updateBindingValue()}static#e=this.\u0275fac=function(de){return new(de||ot)(n.Y36(n.sBO),n.Y36(n.Qsj),n.Y36(n.SBq),n.Y36(M.Is,8))};static#t=this.\u0275cmp=n.Xpm({type:ot,selectors:[["nz-pagination-simple"]],viewQuery:function(de,U){if(1&de&&n.Gf(te,7),2&de){let B;n.iGM(B=n.CRH())&&(U.template=B.first)}},inputs:{itemRender:"itemRender",disabled:"disabled",locale:"locale",total:"total",pageIndex:"pageIndex",pageSize:"pageSize"},outputs:{pageIndexChange:"pageIndexChange"},features:[n.TTD],decls:2,vars:0,consts:[["containerTemplate",""],["nz-pagination-item","","type","prev",3,"disabled","direction","itemRender","click"],[1,"ant-pagination-simple-pager"],["size","3",3,"disabled","value","keydown.enter"],[1,"ant-pagination-slash"],["nz-pagination-item","","type","next",3,"disabled","direction","itemRender","click"]],template:function(de,U){1&de&&n.YNc(0,ne,8,12,"ng-template",null,0,n.W1O)},dependencies:[ee],encapsulation:2,changeDetection:0})}return ot})(),Re=(()=>{class ot{constructor(){this.nzSize="default",this.disabled=!1,this.showSizeChanger=!1,this.showQuickJumper=!1,this.total=0,this.pageIndex=1,this.pageSize=10,this.pageSizeOptions=[],this.pageIndexChange=new n.vpe,this.pageSizeChange=new n.vpe,this.listOfPageSizeOption=[]}onPageSizeChange(we){this.pageSize!==we&&this.pageSizeChange.next(we)}jumpToPageViaInput(we){const de=we.target,U=Math.floor((0,u.He)(de.value,this.pageIndex));this.pageIndexChange.next(U),de.value=""}trackByOption(we,de){return de.value}ngOnChanges(we){const{pageSize:de,pageSizeOptions:U,locale:B}=we;(de||U||B)&&(this.listOfPageSizeOption=[...new Set([...this.pageSizeOptions,this.pageSize])].map(Ee=>({value:Ee,label:`${Ee} ${this.locale.items_per_page}`})))}static#e=this.\u0275fac=function(de){return new(de||ot)};static#t=this.\u0275cmp=n.Xpm({type:ot,selectors:[["li","nz-pagination-options",""]],hostAttrs:[1,"ant-pagination-options"],inputs:{nzSize:"nzSize",disabled:"disabled",showSizeChanger:"showSizeChanger",showQuickJumper:"showQuickJumper",locale:"locale",total:"total",pageIndex:"pageIndex",pageSize:"pageSize",pageSizeOptions:"pageSizeOptions"},outputs:{pageIndexChange:"pageIndexChange",pageSizeChange:"pageSizeChange"},features:[n.TTD],attrs:pe,decls:2,vars:2,consts:[["class","ant-pagination-options-size-changer",3,"nzDisabled","nzSize","ngModel","ngModelChange",4,"ngIf"],["class","ant-pagination-options-quick-jumper",4,"ngIf"],[1,"ant-pagination-options-size-changer",3,"nzDisabled","nzSize","ngModel","ngModelChange"],[3,"nzLabel","nzValue",4,"ngFor","ngForOf","ngForTrackBy"],[3,"nzLabel","nzValue"],[1,"ant-pagination-options-quick-jumper"],[3,"disabled","keydown.enter"]],template:function(de,U){1&de&&(n.YNc(0,be,2,5,"nz-select",0),n.YNc(1,le,4,3,"div",1)),2&de&&(n.Q6J("ngIf",U.showSizeChanger),n.xp6(1),n.Q6J("ngIf",U.showQuickJumper))},dependencies:[h.sg,h.O5,g.JJ,g.On,d.Ip,d.Vq],encapsulation:2,changeDetection:0})}return ot})(),ct=(()=>{class ot{constructor(we,de,U,B){this.cdr=we,this.renderer=de,this.elementRef=U,this.directionality=B,this.nzSize="default",this.itemRender=null,this.showTotal=null,this.disabled=!1,this.showSizeChanger=!1,this.showQuickJumper=!1,this.total=0,this.pageIndex=1,this.pageSize=10,this.pageSizeOptions=[10,20,30,40],this.pageIndexChange=new n.vpe,this.pageSizeChange=new n.vpe,this.ranges=[0,0],this.listOfPageItem=[],this.dir="ltr",this.destroy$=new t.x,de.removeChild(de.parentNode(U.nativeElement),U.nativeElement)}ngOnInit(){this.directionality.change?.pipe((0,l.R)(this.destroy$)).subscribe(we=>{this.dir=we,this.updateRtlStyle(),this.cdr.detectChanges()}),this.dir=this.directionality.value,this.updateRtlStyle()}updateRtlStyle(){"rtl"===this.dir?this.renderer.addClass(this.elementRef.nativeElement,"ant-pagination-rtl"):this.renderer.removeClass(this.elementRef.nativeElement,"ant-pagination-rtl")}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}jumpPage(we){this.onPageIndexChange(we)}jumpDiff(we){this.jumpPage(this.pageIndex+we)}trackByPageItem(we,de){return`${de.type}-${de.index}`}onPageIndexChange(we){this.pageIndexChange.next(we)}onPageSizeChange(we){this.pageSizeChange.next(we)}getLastIndex(we,de){return Math.ceil(we/de)}buildIndexes(){const we=this.getLastIndex(this.total,this.pageSize);this.listOfPageItem=this.getListOfPageItem(this.pageIndex,we)}getListOfPageItem(we,de){const B=(Ee,Ie)=>{const Ne=[];for(let pt=Ee;pt<=Ie;pt++)Ne.push({index:pt,type:"page"});return Ne};return Ee=de<=9?B(1,de):((Ie,Ne)=>{let pt=[];const Dt={type:"prev_5"},Lt={type:"next_5"},Ut=B(1,1),qt=B(de,de);return pt=Ie<5?[...B(2,4===Ie?6:5),Lt]:Ie{class ot{validatePageIndex(we,de){return we>de?de:we<1?1:we}onPageIndexChange(we){const de=this.getLastIndex(this.nzTotal,this.nzPageSize),U=this.validatePageIndex(we,de);U!==this.nzPageIndex&&!this.nzDisabled&&(this.nzPageIndex=U,this.nzPageIndexChange.emit(this.nzPageIndex))}onPageSizeChange(we){this.nzPageSize=we,this.nzPageSizeChange.emit(we);const de=this.getLastIndex(this.nzTotal,this.nzPageSize);this.nzPageIndex>de&&this.onPageIndexChange(de)}onTotalChange(we){const de=this.getLastIndex(we,this.nzPageSize);this.nzPageIndex>de&&Promise.resolve().then(()=>{this.onPageIndexChange(de),this.cdr.markForCheck()})}getLastIndex(we,de){return Math.ceil(we/de)}constructor(we,de,U,B,Ee){this.i18n=we,this.cdr=de,this.breakpointService=U,this.nzConfigService=B,this.directionality=Ee,this._nzModuleName="pagination",this.nzPageSizeChange=new n.vpe,this.nzPageIndexChange=new n.vpe,this.nzShowTotal=null,this.nzItemRender=null,this.nzSize="default",this.nzPageSizeOptions=[10,20,30,40],this.nzShowSizeChanger=!1,this.nzShowQuickJumper=!1,this.nzSimple=!1,this.nzDisabled=!1,this.nzResponsive=!1,this.nzHideOnSinglePage=!1,this.nzTotal=0,this.nzPageIndex=1,this.nzPageSize=10,this.showPagination=!0,this.size="default",this.dir="ltr",this.destroy$=new t.x,this.total$=new i.t(1)}ngOnInit(){this.i18n.localeChange.pipe((0,l.R)(this.destroy$)).subscribe(()=>{this.locale=this.i18n.getLocaleData("Pagination"),this.cdr.markForCheck()}),this.total$.pipe((0,l.R)(this.destroy$)).subscribe(we=>{this.onTotalChange(we)}),this.breakpointService.subscribe(E.WV).pipe((0,l.R)(this.destroy$)).subscribe(we=>{this.nzResponsive&&(this.size=we===E.G_.xs?"small":"default",this.cdr.markForCheck())}),this.directionality.change?.pipe((0,l.R)(this.destroy$)).subscribe(we=>{this.dir=we,this.cdr.detectChanges()}),this.dir=this.directionality.value}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}ngOnChanges(we){const{nzHideOnSinglePage:de,nzTotal:U,nzPageSize:B,nzSize:Ee}=we;U&&this.total$.next(this.nzTotal),(de||U||B)&&(this.showPagination=this.nzHideOnSinglePage&&this.nzTotal>this.nzPageSize||this.nzTotal>0&&!this.nzHideOnSinglePage),Ee&&(this.size=Ee.currentValue)}static#e=this.\u0275fac=function(de){return new(de||ot)(n.Y36(z.wi),n.Y36(n.sBO),n.Y36(E.r3),n.Y36(C.jY),n.Y36(M.Is,8))};static#t=this.\u0275cmp=n.Xpm({type:ot,selectors:[["nz-pagination"]],hostAttrs:[1,"ant-pagination"],hostVars:8,hostBindings:function(de,U){2&de&&n.ekj("ant-pagination-simple",U.nzSimple)("ant-pagination-disabled",U.nzDisabled)("mini",!U.nzSimple&&"small"===U.size)("ant-pagination-rtl","rtl"===U.dir)},inputs:{nzShowTotal:"nzShowTotal",nzItemRender:"nzItemRender",nzSize:"nzSize",nzPageSizeOptions:"nzPageSizeOptions",nzShowSizeChanger:"nzShowSizeChanger",nzShowQuickJumper:"nzShowQuickJumper",nzSimple:"nzSimple",nzDisabled:"nzDisabled",nzResponsive:"nzResponsive",nzHideOnSinglePage:"nzHideOnSinglePage",nzTotal:"nzTotal",nzPageIndex:"nzPageIndex",nzPageSize:"nzPageSize"},outputs:{nzPageSizeChange:"nzPageSizeChange",nzPageIndexChange:"nzPageIndexChange"},exportAs:["nzPagination"],features:[n.TTD],decls:5,vars:18,consts:[[4,"ngIf"],[3,"disabled","itemRender","locale","pageSize","total","pageIndex","pageIndexChange"],["simplePagination",""],[3,"nzSize","itemRender","showTotal","disabled","locale","showSizeChanger","showQuickJumper","total","pageIndex","pageSize","pageSizeOptions","pageIndexChange","pageSizeChange"],["defaultPagination",""],[4,"ngIf","ngIfElse"],[3,"ngTemplateOutlet"]],template:function(de,U){1&de&&(n.YNc(0,ye,2,2,"ng-container",0),n.TgZ(1,"nz-pagination-simple",1,2),n.NdJ("pageIndexChange",function(Ee){return U.onPageIndexChange(Ee)}),n.qZA(),n.TgZ(3,"nz-pagination-default",3,4),n.NdJ("pageIndexChange",function(Ee){return U.onPageIndexChange(Ee)})("pageSizeChange",function(Ee){return U.onPageSizeChange(Ee)}),n.qZA()),2&de&&(n.Q6J("ngIf",U.showPagination),n.xp6(1),n.Q6J("disabled",U.nzDisabled)("itemRender",U.nzItemRender)("locale",U.locale)("pageSize",U.nzPageSize)("total",U.nzTotal)("pageIndex",U.nzPageIndex),n.xp6(2),n.Q6J("nzSize",U.size)("itemRender",U.nzItemRender)("showTotal",U.nzShowTotal)("disabled",U.nzDisabled)("locale",U.locale)("showSizeChanger",U.nzShowSizeChanger)("showQuickJumper",U.nzShowQuickJumper)("total",U.nzTotal)("pageIndex",U.nzPageIndex)("pageSize",U.nzPageSize)("pageSizeOptions",U.nzPageSizeOptions))},dependencies:[h.O5,h.tP,Be,ct],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,C.oS)()],ot.prototype,"nzSize",void 0),(0,e.gn)([(0,C.oS)()],ot.prototype,"nzPageSizeOptions",void 0),(0,e.gn)([(0,C.oS)(),(0,u.yF)()],ot.prototype,"nzShowSizeChanger",void 0),(0,e.gn)([(0,C.oS)(),(0,u.yF)()],ot.prototype,"nzShowQuickJumper",void 0),(0,e.gn)([(0,C.oS)(),(0,u.yF)()],ot.prototype,"nzSimple",void 0),(0,e.gn)([(0,u.yF)()],ot.prototype,"nzDisabled",void 0),(0,e.gn)([(0,u.yF)()],ot.prototype,"nzResponsive",void 0),(0,e.gn)([(0,u.yF)()],ot.prototype,"nzHideOnSinglePage",void 0),(0,e.gn)([(0,u.Rn)()],ot.prototype,"nzTotal",void 0),(0,e.gn)([(0,u.Rn)()],ot.prototype,"nzPageIndex",void 0),(0,e.gn)([(0,u.Rn)()],ot.prototype,"nzPageSize",void 0),ot})(),je=(()=>{class ot{static#e=this.\u0275fac=function(de){return new(de||ot)};static#t=this.\u0275mod=n.oAB({type:ot});static#n=this.\u0275inj=n.cJS({imports:[M.vT,h.ez,g.u5,d.LV,z.YI,v.PV]})}return ot})()},6192:(nt,I,o)=>{"use strict";o.d(I,{YS:()=>g,ku:()=>E});var e=o(96814),n=o(65879),t=o(27754);o(6593);class C{static#e=this.formats={B:{max:1024},kB:{max:Math.pow(1024,2),prev:"B"},KB:{max:Math.pow(1024,2),prev:"B"},MB:{max:Math.pow(1024,3),prev:"kB"},GB:{max:Math.pow(1024,4),prev:"MB"},TB:{max:Number.MAX_SAFE_INTEGER,prev:"GB"}};transform(p,f=0,y="B",T){if(!((0,t.ui)(p)&&(0,t.ui)(f)&&f%1==0&&f>=0))return p;let x=p,D=y;for(;"B"!==D;)x*=1024,D=C.formats[D].prev;if(T){const P=(0,t.YM)(C.calculateResult(C.formats[T],x),f);return C.formatResult(P,T)}for(const _ in C.formats)if(C.formats.hasOwnProperty(_)){const P=C.formats[_];if(x{class d{transform(f,y="px"){let P="px";return["cm","mm","Q","in","pc","pt","px","em","ex","ch","rem","1h","vw","vh","vmin","vmax","%"].some(O=>O===y)&&(P=y),"number"==typeof f?`${f}${P}`:`${f}`}static#e=this.\u0275fac=function(y){return new(y||d)};static#t=this.\u0275pipe=n.Yjl({name:"nzToCssUnit",type:d,pure:!0})}return d})(),g=(()=>{class d{static#e=this.\u0275fac=function(y){return new(y||d)};static#t=this.\u0275mod=n.oAB({type:d});static#n=this.\u0275inj=n.cJS({imports:[e.ez]})}return d})()},19035:(nt,I,o)=>{"use strict";o.d(I,{JW:()=>te,_p:()=>pe});var e=o(97582),n=o(96814),t=o(65879),i=o(78645),l=o(59773),C=o(81374),E=o(64716),u=o(64194),z=o(83064),M=o(27754),h=o(96109),v=o(331),g=o(49388),d=o(42840),p=o(70855),f=o(41958),y=o(33651),T=o(90551),x=o(8324),D=o(85448),_=o(4300),P=o(12131);const O=["okBtn"],A=["cancelBtn"];function k(re,be){1&re&&(t.TgZ(0,"div",15),t._UZ(1,"span",16),t.qZA())}function F(re,be){if(1&re&&(t.ynx(0),t._UZ(1,"span",18),t.BQk()),2&re){const le=be.$implicit;t.xp6(1),t.Q6J("nzType",le||"exclamation-circle")}}function W(re,be){if(1&re&&(t.ynx(0),t.YNc(1,F,2,1,"ng-container",8),t.TgZ(2,"div",17),t._uU(3),t.qZA(),t.BQk()),2&re){const le=t.oxw(2);t.xp6(1),t.Q6J("nzStringTemplateOutlet",le.nzIcon),t.xp6(2),t.Oqu(le.nzTitle)}}function K(re,be){if(1&re&&(t.ynx(0),t._uU(1),t.BQk()),2&re){const le=t.oxw(2);t.xp6(1),t.Oqu(le.nzCancelText)}}function _e(re,be){1&re&&(t.ynx(0),t._uU(1),t.ALo(2,"nzI18n"),t.BQk()),2&re&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"Modal.cancelText")))}function Y(re,be){if(1&re&&(t.ynx(0),t._uU(1),t.BQk()),2&re){const le=t.oxw(2);t.xp6(1),t.Oqu(le.nzOkText)}}function G(re,be){1&re&&(t.ynx(0),t._uU(1),t.ALo(2,"nzI18n"),t.BQk()),2&re&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"Modal.okText")))}function H(re,be){if(1&re){const le=t.EpF();t.TgZ(0,"div",2)(1,"div",3),t.YNc(2,k,2,0,"div",4),t.TgZ(3,"div",5)(4,"div")(5,"div",6)(6,"div",7),t.YNc(7,W,4,2,"ng-container",8),t.qZA(),t.TgZ(8,"div",9)(9,"button",10,11),t.NdJ("click",function(){t.CHM(le);const Q=t.oxw();return t.KtG(Q.onCancel())}),t.YNc(11,K,2,1,"ng-container",12),t.YNc(12,_e,3,3,"ng-container",12),t.qZA(),t.TgZ(13,"button",13,14),t.NdJ("click",function(){t.CHM(le);const Q=t.oxw();return t.KtG(Q.onConfirm())}),t.YNc(15,Y,2,1,"ng-container",12),t.YNc(16,G,3,3,"ng-container",12),t.qZA()()()()()()()}if(2&re){const le=t.oxw();t.ekj("ant-popover-rtl","rtl"===le.dir),t.Q6J("cdkTrapFocusAutoCapture",null!==le.nzAutoFocus)("ngClass",le._classMap)("ngStyle",le.nzOverlayStyle)("@.disabled",!(null==le.noAnimation||!le.noAnimation.nzNoAnimation))("nzNoAnimation",null==le.noAnimation?null:le.noAnimation.nzNoAnimation)("@zoomBigMotion","active"),t.xp6(2),t.Q6J("ngIf",le.nzPopconfirmShowArrow),t.xp6(5),t.Q6J("nzStringTemplateOutlet",le.nzTitle),t.xp6(2),t.Q6J("nzSize","small"),t.uIk("cdkFocusInitial","cancel"===le.nzAutoFocus||null),t.xp6(2),t.Q6J("ngIf",le.nzCancelText),t.xp6(1),t.Q6J("ngIf",!le.nzCancelText),t.xp6(1),t.Q6J("nzSize","small")("nzType","danger"!==le.nzOkType?le.nzOkType:"primary")("nzDanger",le.nzOkDanger||"danger"===le.nzOkType)("nzLoading",le.confirmLoading),t.uIk("cdkFocusInitial","ok"===le.nzAutoFocus||null),t.xp6(2),t.Q6J("ngIf",le.nzOkText),t.xp6(1),t.Q6J("ngIf",!le.nzOkText)}}let te=(()=>{class re extends h.Mg{getProxyPropertyMap(){return{nzOkText:["nzOkText",()=>this.nzOkText],nzOkType:["nzOkType",()=>this.nzOkType],nzOkDanger:["nzOkDanger",()=>this.nzOkDanger],nzCancelText:["nzCancelText",()=>this.nzCancelText],nzBeforeConfirm:["nzBeforeConfirm",()=>this.nzBeforeConfirm],nzCondition:["nzCondition",()=>this.nzCondition],nzIcon:["nzIcon",()=>this.nzIcon],nzPopconfirmShowArrow:["nzPopconfirmShowArrow",()=>this.nzPopconfirmShowArrow],nzPopconfirmBackdrop:["nzBackdrop",()=>this.nzPopconfirmBackdrop],nzAutoFocus:["nzAutoFocus",()=>this.nzAutofocus],...super.getProxyPropertyMap()}}constructor(le,ce,Q,ie,ae,xe){super(le,ce,Q,ie,ae,xe),this._nzModuleName="popconfirm",this.trigger="click",this.placement="top",this.nzCondition=!1,this.nzPopconfirmShowArrow=!0,this.nzPopconfirmBackdrop=!1,this.nzAutofocus=null,this.visibleChange=new t.vpe,this.nzOnCancel=new t.vpe,this.nzOnConfirm=new t.vpe,this.componentRef=this.hostView.createComponent(ne)}createComponent(){super.createComponent(),this.component.nzOnCancel.pipe((0,l.R)(this.destroy$)).subscribe(()=>{this.nzOnCancel.emit()}),this.component.nzOnConfirm.pipe((0,l.R)(this.destroy$)).subscribe(()=>{this.nzOnConfirm.emit()})}static#e=this.\u0275fac=function(ce){return new(ce||re)(t.Y36(t.SBq),t.Y36(t.s_b),t.Y36(t._Vd),t.Y36(t.Qsj),t.Y36(v.P,9),t.Y36(z.jY))};static#t=this.\u0275dir=t.lG2({type:re,selectors:[["","nz-popconfirm",""]],hostVars:2,hostBindings:function(ce,Q){2&ce&&t.ekj("ant-popover-open",Q.visible)},inputs:{arrowPointAtCenter:["nzPopconfirmArrowPointAtCenter","arrowPointAtCenter"],title:["nzPopconfirmTitle","title"],directiveTitle:["nz-popconfirm","directiveTitle"],trigger:["nzPopconfirmTrigger","trigger"],placement:["nzPopconfirmPlacement","placement"],origin:["nzPopconfirmOrigin","origin"],mouseEnterDelay:["nzPopconfirmMouseEnterDelay","mouseEnterDelay"],mouseLeaveDelay:["nzPopconfirmMouseLeaveDelay","mouseLeaveDelay"],overlayClassName:["nzPopconfirmOverlayClassName","overlayClassName"],overlayStyle:["nzPopconfirmOverlayStyle","overlayStyle"],visible:["nzPopconfirmVisible","visible"],nzOkText:"nzOkText",nzOkType:"nzOkType",nzOkDanger:"nzOkDanger",nzCancelText:"nzCancelText",nzBeforeConfirm:"nzBeforeConfirm",nzIcon:"nzIcon",nzCondition:"nzCondition",nzPopconfirmShowArrow:"nzPopconfirmShowArrow",nzPopconfirmBackdrop:"nzPopconfirmBackdrop",nzAutofocus:"nzAutofocus"},outputs:{visibleChange:"nzPopconfirmVisibleChange",nzOnCancel:"nzOnCancel",nzOnConfirm:"nzOnConfirm"},exportAs:["nzPopconfirm"],features:[t.qOj]})}return(0,e.gn)([(0,M.yF)()],re.prototype,"arrowPointAtCenter",void 0),(0,e.gn)([(0,M.yF)()],re.prototype,"nzOkDanger",void 0),(0,e.gn)([(0,M.yF)()],re.prototype,"nzCondition",void 0),(0,e.gn)([(0,M.yF)()],re.prototype,"nzPopconfirmShowArrow",void 0),(0,e.gn)([(0,z.oS)()],re.prototype,"nzPopconfirmBackdrop",void 0),(0,e.gn)([(0,z.oS)()],re.prototype,"nzAutofocus",void 0),re})(),ne=(()=>{class re extends h.XK{constructor(le,ce,Q,ie,ae){super(le,Q,ae),this.elementRef=ce,this.nzCondition=!1,this.nzPopconfirmShowArrow=!0,this.nzOkType="primary",this.nzOkDanger=!1,this.nzAutoFocus=null,this.nzBeforeConfirm=null,this.nzOnCancel=new i.x,this.nzOnConfirm=new i.x,this._trigger="click",this.elementFocusedBeforeModalWasOpened=null,this._prefix="ant-popover",this.confirmLoading=!1,this.document=ie}ngOnDestroy(){super.ngOnDestroy(),this.nzOnCancel.complete(),this.nzOnConfirm.complete()}show(){this.nzCondition?this.onConfirm():(this.capturePreviouslyFocusedElement(),super.show())}hide(){super.hide(),this.restoreFocus()}handleConfirm(){this.nzOnConfirm.next(),super.hide()}onCancel(){this.nzOnCancel.next(),super.hide()}onConfirm(){if(this.nzBeforeConfirm){const le=(0,M.lN)(this.nzBeforeConfirm()).pipe((0,C.P)());this.confirmLoading=!0,le.pipe((0,E.x)(()=>{this.confirmLoading=!1,this.cdr.markForCheck()}),(0,l.R)(this.nzVisibleChange),(0,l.R)(this.destroy$)).subscribe(ce=>{ce&&this.handleConfirm()})}else this.handleConfirm()}capturePreviouslyFocusedElement(){this.document&&(this.elementFocusedBeforeModalWasOpened=this.document.activeElement)}restoreFocus(){const le=this.elementFocusedBeforeModalWasOpened;if(le&&"function"==typeof le.focus){const ce=this.document.activeElement,Q=this.elementRef.nativeElement;(!ce||ce===this.document.body||ce===Q||Q.contains(ce))&&le.focus()}}static#e=this.\u0275fac=function(ce){return new(ce||re)(t.Y36(t.sBO),t.Y36(t.SBq),t.Y36(g.Is,8),t.Y36(n.K0,8),t.Y36(v.P,9))};static#t=this.\u0275cmp=t.Xpm({type:re,selectors:[["nz-popconfirm"]],viewQuery:function(ce,Q){if(1&ce&&(t.Gf(O,5,t.SBq),t.Gf(A,5,t.SBq)),2&ce){let ie;t.iGM(ie=t.CRH())&&(Q.okBtn=ie),t.iGM(ie=t.CRH())&&(Q.cancelBtn=ie)}},exportAs:["nzPopconfirmComponent"],features:[t.qOj],decls:2,vars:6,consts:[["cdkConnectedOverlay","","nzConnectedOverlay","",3,"cdkConnectedOverlayHasBackdrop","cdkConnectedOverlayOrigin","cdkConnectedOverlayPositions","cdkConnectedOverlayOpen","cdkConnectedOverlayPush","nzArrowPointAtCenter","overlayOutsideClick","detach","positionChange"],["overlay","cdkConnectedOverlay"],["cdkTrapFocus","",1,"ant-popover",3,"cdkTrapFocusAutoCapture","ngClass","ngStyle","nzNoAnimation"],[1,"ant-popover-content"],["class","ant-popover-arrow",4,"ngIf"],[1,"ant-popover-inner"],[1,"ant-popover-inner-content"],[1,"ant-popover-message"],[4,"nzStringTemplateOutlet"],[1,"ant-popover-buttons"],["nz-button","",3,"nzSize","click"],["cancelBtn",""],[4,"ngIf"],["nz-button","",3,"nzSize","nzType","nzDanger","nzLoading","click"],["okBtn",""],[1,"ant-popover-arrow"],[1,"ant-popover-arrow-content"],[1,"ant-popover-message-title"],["nz-icon","","nzTheme","fill",3,"nzType"]],template:function(ce,Q){1&ce&&(t.YNc(0,H,17,21,"ng-template",0,1,t.W1O),t.NdJ("overlayOutsideClick",function(ae){return Q.onClickOutside(ae)})("detach",function(){return Q.hide()})("positionChange",function(ae){return Q.onPositionChange(ae)})),2&ce&&t.Q6J("cdkConnectedOverlayHasBackdrop",Q.nzBackdrop)("cdkConnectedOverlayOrigin",Q.origin)("cdkConnectedOverlayPositions",Q._positions)("cdkConnectedOverlayOpen",Q._visible)("cdkConnectedOverlayPush",!0)("nzArrowPointAtCenter",Q.nzArrowPointAtCenter)},dependencies:[n.mk,n.O5,n.PC,d.ix,p.w,f.dQ,y.pI,T.Ls,x.f,D.hQ,v.P,_.mK,P.o9],encapsulation:2,data:{animation:[u.$C]},changeDetection:0})}return re})(),pe=(()=>{class re{static#e=this.\u0275fac=function(ce){return new(ce||re)};static#t=this.\u0275mod=t.oAB({type:re});static#n=this.\u0275inj=t.cJS({imports:[g.vT,n.ez,d.sL,y.U8,P.YI,T.PV,x.T,D.e4,v.g,h.cg,_.rt]})}return re})()},57417:(nt,I,o)=>{"use strict";o.d(I,{$6:()=>D,lU:()=>T});var e=o(97582),n=o(65879),t=o(64194),i=o(83064),l=o(27754),C=o(96109),E=o(331),u=o(49388),z=o(96814),M=o(33651),h=o(8324),v=o(85448);function g(_,P){if(1&_&&(n.ynx(0),n._uU(1),n.BQk()),2&_){const O=n.oxw(3);n.xp6(1),n.Oqu(O.nzTitle)}}function d(_,P){if(1&_&&(n.TgZ(0,"div",10),n.YNc(1,g,2,1,"ng-container",9),n.qZA()),2&_){const O=n.oxw(2);n.xp6(1),n.Q6J("nzStringTemplateOutlet",O.nzTitle)}}function p(_,P){if(1&_&&(n.ynx(0),n._uU(1),n.BQk()),2&_){const O=n.oxw(2);n.xp6(1),n.Oqu(O.nzContent)}}function f(_,P){if(1&_&&(n.TgZ(0,"div",2)(1,"div",3)(2,"div",4),n._UZ(3,"span",5),n.qZA(),n.TgZ(4,"div",6)(5,"div"),n.YNc(6,d,2,1,"div",7),n.TgZ(7,"div",8),n.YNc(8,p,2,1,"ng-container",9),n.qZA()()()()()),2&_){const O=n.oxw();n.ekj("ant-popover-rtl","rtl"===O.dir),n.Q6J("ngClass",O._classMap)("ngStyle",O.nzOverlayStyle)("@.disabled",!(null==O.noAnimation||!O.noAnimation.nzNoAnimation))("nzNoAnimation",null==O.noAnimation?null:O.noAnimation.nzNoAnimation)("@zoomBigMotion","active"),n.xp6(6),n.Q6J("ngIf",O.nzTitle),n.xp6(2),n.Q6J("nzStringTemplateOutlet",O.nzContent)}}let T=(()=>{class _ extends C.Mg{getProxyPropertyMap(){return{nzPopoverBackdrop:["nzBackdrop",()=>this.nzPopoverBackdrop],...super.getProxyPropertyMap()}}constructor(O,A,k,F,W,K){super(O,A,k,F,W,K),this._nzModuleName="popover",this.trigger="hover",this.placement="top",this.nzPopoverBackdrop=!1,this.visibleChange=new n.vpe,this.componentRef=this.hostView.createComponent(x)}static#e=this.\u0275fac=function(A){return new(A||_)(n.Y36(n.SBq),n.Y36(n.s_b),n.Y36(n._Vd),n.Y36(n.Qsj),n.Y36(E.P,9),n.Y36(i.jY))};static#t=this.\u0275dir=n.lG2({type:_,selectors:[["","nz-popover",""]],hostVars:2,hostBindings:function(A,k){2&A&&n.ekj("ant-popover-open",k.visible)},inputs:{arrowPointAtCenter:["nzPopoverArrowPointAtCenter","arrowPointAtCenter"],title:["nzPopoverTitle","title"],content:["nzPopoverContent","content"],directiveTitle:["nz-popover","directiveTitle"],trigger:["nzPopoverTrigger","trigger"],placement:["nzPopoverPlacement","placement"],origin:["nzPopoverOrigin","origin"],visible:["nzPopoverVisible","visible"],mouseEnterDelay:["nzPopoverMouseEnterDelay","mouseEnterDelay"],mouseLeaveDelay:["nzPopoverMouseLeaveDelay","mouseLeaveDelay"],overlayClassName:["nzPopoverOverlayClassName","overlayClassName"],overlayStyle:["nzPopoverOverlayStyle","overlayStyle"],nzPopoverBackdrop:"nzPopoverBackdrop"},outputs:{visibleChange:"nzPopoverVisibleChange"},exportAs:["nzPopover"],features:[n.qOj]})}return(0,e.gn)([(0,l.yF)()],_.prototype,"arrowPointAtCenter",void 0),(0,e.gn)([(0,i.oS)()],_.prototype,"nzPopoverBackdrop",void 0),_})(),x=(()=>{class _ extends C.XK{constructor(O,A,k){super(O,A,k),this._prefix="ant-popover"}get hasBackdrop(){return"click"===this.nzTrigger&&this.nzBackdrop}isEmpty(){return(0,C.pu)(this.nzTitle)&&(0,C.pu)(this.nzContent)}static#e=this.\u0275fac=function(A){return new(A||_)(n.Y36(n.sBO),n.Y36(u.Is,8),n.Y36(E.P,9))};static#t=this.\u0275cmp=n.Xpm({type:_,selectors:[["nz-popover"]],exportAs:["nzPopoverComponent"],features:[n.qOj],decls:2,vars:6,consts:[["cdkConnectedOverlay","","nzConnectedOverlay","",3,"cdkConnectedOverlayHasBackdrop","cdkConnectedOverlayOrigin","cdkConnectedOverlayPositions","cdkConnectedOverlayOpen","cdkConnectedOverlayPush","nzArrowPointAtCenter","overlayOutsideClick","detach","positionChange"],["overlay","cdkConnectedOverlay"],[1,"ant-popover",3,"ngClass","ngStyle","nzNoAnimation"],[1,"ant-popover-content"],[1,"ant-popover-arrow"],[1,"ant-popover-arrow-content"],["role","tooltip",1,"ant-popover-inner"],["class","ant-popover-title",4,"ngIf"],[1,"ant-popover-inner-content"],[4,"nzStringTemplateOutlet"],[1,"ant-popover-title"]],template:function(A,k){1&A&&(n.YNc(0,f,9,9,"ng-template",0,1,n.W1O),n.NdJ("overlayOutsideClick",function(W){return k.onClickOutside(W)})("detach",function(){return k.hide()})("positionChange",function(W){return k.onPositionChange(W)})),2&A&&n.Q6J("cdkConnectedOverlayHasBackdrop",k.hasBackdrop)("cdkConnectedOverlayOrigin",k.origin)("cdkConnectedOverlayPositions",k._positions)("cdkConnectedOverlayOpen",k._visible)("cdkConnectedOverlayPush",!0)("nzArrowPointAtCenter",k.nzArrowPointAtCenter)},dependencies:[z.mk,z.O5,z.PC,M.pI,h.f,v.hQ,E.P],encapsulation:2,data:{animation:[t.$C]},changeDetection:0})}return _})(),D=(()=>{class _{static#e=this.\u0275fac=function(A){return new(A||_)};static#t=this.\u0275mod=n.oAB({type:_});static#n=this.\u0275inj=n.cJS({imports:[u.vT,z.ez,M.U8,h.T,v.e4,E.g,C.cg]})}return _})()},48128:(nt,I,o)=>{"use strict";o.d(I,{M:()=>le,W:()=>ce});var e=o(49388),n=o(96814),t=o(65879),i=o(8324),l=o(90551),C=o(97582),E=o(78645),u=o(59773),z=o(83064),M=o(27754);function h(Q,ie){if(1&Q&&(t.ynx(0),t._UZ(1,"span",8),t.BQk()),2&Q){const ae=t.oxw(3);t.xp6(1),t.Q6J("nzType",ae.icon)}}function v(Q,ie){if(1&Q&&(t.ynx(0),t._uU(1),t.BQk()),2&Q){const ae=ie.$implicit,xe=t.oxw(4);t.xp6(1),t.hij(" ",ae(xe.nzPercent)," ")}}const g=function(Q){return{$implicit:Q}};function d(Q,ie){if(1&Q&&t.YNc(0,v,2,1,"ng-container",9),2&Q){const ae=t.oxw(3);t.Q6J("nzStringTemplateOutlet",ae.formatter)("nzStringTemplateOutletContext",t.VKq(2,g,ae.nzPercent))}}function p(Q,ie){if(1&Q&&(t.TgZ(0,"span",5),t.YNc(1,h,2,1,"ng-container",6),t.YNc(2,d,1,4,"ng-template",null,7,t.W1O),t.qZA()),2&Q){const ae=t.MAs(3),xe=t.oxw(2);t.xp6(1),t.Q6J("ngIf",("exception"===xe.status||"success"===xe.status)&&!xe.nzFormat)("ngIfElse",ae)}}function f(Q,ie){if(1&Q&&t.YNc(0,p,4,2,"span",4),2&Q){const ae=t.oxw();t.Q6J("ngIf",ae.nzShowInfo)}}function y(Q,ie){if(1&Q&&t._UZ(0,"div",17),2&Q){const ae=t.oxw(4);t.Udp("width",ae.nzSuccessPercent,"%")("border-radius","round"===ae.nzStrokeLinecap?"100px":"0")("height",ae.strokeWidth,"px")}}function T(Q,ie){if(1&Q&&(t.TgZ(0,"div",13)(1,"div",14),t._UZ(2,"div",15),t.YNc(3,y,1,6,"div",16),t.qZA()()),2&Q){const ae=t.oxw(3);t.xp6(2),t.Udp("width",ae.nzPercent,"%")("border-radius","round"===ae.nzStrokeLinecap?"100px":"0")("background",ae.isGradient?null:ae.nzStrokeColor)("background-image",ae.isGradient?ae.lineGradient:null)("height",ae.strokeWidth,"px"),t.xp6(1),t.Q6J("ngIf",ae.nzSuccessPercent||0===ae.nzSuccessPercent)}}function x(Q,ie){}function D(Q,ie){if(1&Q&&(t.ynx(0),t.YNc(1,T,4,11,"div",11),t.YNc(2,x,0,0,"ng-template",12),t.BQk()),2&Q){const ae=t.oxw(2),xe=t.MAs(1);t.xp6(1),t.Q6J("ngIf",!ae.isSteps),t.xp6(1),t.Q6J("ngTemplateOutlet",xe)}}function _(Q,ie){1&Q&&t._UZ(0,"div",20),2&Q&&t.Q6J("ngStyle",ie.$implicit)}function P(Q,ie){}function O(Q,ie){if(1&Q&&(t.TgZ(0,"div",18),t.YNc(1,_,1,1,"div",19),t.YNc(2,P,0,0,"ng-template",12),t.qZA()),2&Q){const ae=t.oxw(2),xe=t.MAs(1);t.xp6(1),t.Q6J("ngForOf",ae.steps),t.xp6(1),t.Q6J("ngTemplateOutlet",xe)}}function A(Q,ie){if(1&Q&&(t.TgZ(0,"div"),t.YNc(1,D,3,2,"ng-container",2),t.YNc(2,O,3,2,"div",10),t.qZA()),2&Q){const ae=t.oxw();t.xp6(1),t.Q6J("ngIf",!ae.isSteps),t.xp6(1),t.Q6J("ngIf",ae.isSteps)}}function k(Q,ie){if(1&Q&&(t.O4$(),t._UZ(0,"stop")),2&Q){const ae=ie.$implicit;t.uIk("offset",ae.offset)("stop-color",ae.color)}}function F(Q,ie){if(1&Q&&(t.O4$(),t.TgZ(0,"defs")(1,"linearGradient",24),t.YNc(2,k,1,2,"stop",25),t.qZA()()),2&Q){const ae=t.oxw(2);t.xp6(1),t.Q6J("id","gradient-"+ae.gradientId),t.xp6(1),t.Q6J("ngForOf",ae.circleGradient)}}function W(Q,ie){if(1&Q&&(t.O4$(),t._UZ(0,"path",26)),2&Q){const ae=ie.$implicit,xe=t.oxw(2);t.Q6J("ngStyle",ae.strokePathStyle),t.uIk("d",xe.pathString)("stroke-linecap",xe.nzStrokeLinecap)("stroke",ae.stroke)("stroke-width",xe.nzPercent?xe.strokeWidth:0)}}function K(Q,ie){1&Q&&t.O4$()}function _e(Q,ie){if(1&Q&&(t.TgZ(0,"div",14),t.O4$(),t.TgZ(1,"svg",21),t.YNc(2,F,3,2,"defs",2),t._UZ(3,"path",22),t.YNc(4,W,1,5,"path",23),t.qZA(),t.YNc(5,K,0,0,"ng-template",12),t.qZA()),2&Q){const ae=t.oxw(),xe=t.MAs(1);t.Udp("width",ae.nzWidth,"px")("height",ae.nzWidth,"px")("font-size",.15*ae.nzWidth+6,"px"),t.ekj("ant-progress-circle-gradient",ae.isGradient),t.xp6(2),t.Q6J("ngIf",ae.isGradient),t.xp6(1),t.Q6J("ngStyle",ae.trailPathStyle),t.uIk("stroke-width",ae.strokeWidth)("d",ae.pathString),t.xp6(1),t.Q6J("ngForOf",ae.progressCirclePath)("ngForTrackBy",ae.trackByFn),t.xp6(1),t.Q6J("ngTemplateOutlet",xe)}}const G=Q=>{let ie=[];return Object.keys(Q).forEach(ae=>{const xe=Q[ae],Me=function Y(Q){return+Q.replace("%","")}(ae);isNaN(Me)||ie.push({key:Me,value:xe})}),ie=ie.sort((ae,xe)=>ae.key-xe.key),ie};let te=0;const ne="progress",pe=new Map([["success","check"],["exception","close"]]),re=new Map([["normal","#108ee9"],["exception","#ff5500"],["success","#87d068"]]),be=Q=>`${Q}%`;let le=(()=>{class Q{get formatter(){return this.nzFormat||be}get status(){return this.nzStatus||this.inferredStatus}get strokeWidth(){return this.nzStrokeWidth||("line"===this.nzType&&"small"!==this.nzSize?8:6)}get isCircleStyle(){return"circle"===this.nzType||"dashboard"===this.nzType}constructor(ae,xe,Me){this.cdr=ae,this.nzConfigService=xe,this.directionality=Me,this._nzModuleName=ne,this.nzShowInfo=!0,this.nzWidth=132,this.nzStrokeColor=void 0,this.nzSize="default",this.nzPercent=0,this.nzStrokeWidth=void 0,this.nzGapDegree=void 0,this.nzType="line",this.nzGapPosition="top",this.nzStrokeLinecap="round",this.nzSteps=0,this.steps=[],this.lineGradient=null,this.isGradient=!1,this.isSteps=!1,this.gradientId=te++,this.progressCirclePath=[],this.trailPathStyle=null,this.dir="ltr",this.trackByFn=Ye=>`${Ye}`,this.cachedStatus="normal",this.inferredStatus="normal",this.destroy$=new E.x}ngOnChanges(ae){const{nzSteps:xe,nzGapPosition:Me,nzStrokeLinecap:Ye,nzStrokeColor:q,nzGapDegree:ye,nzType:ee,nzStatus:Be,nzPercent:Re,nzSuccessPercent:ct,nzStrokeWidth:Ae}=ae;Be&&(this.cachedStatus=this.nzStatus||this.cachedStatus),(Re||ct)&&(parseInt(this.nzPercent.toString(),10)>=100?((0,M.DX)(this.nzSuccessPercent)&&this.nzSuccessPercent>=100||void 0===this.nzSuccessPercent)&&(this.inferredStatus="success"):this.inferredStatus=this.cachedStatus),(Be||Re||ct||q)&&this.updateIcon(),q&&this.setStrokeColor(),(Me||Ye||ye||ee||Re||q||q)&&this.getCirclePaths(),(Re||xe||Ae)&&(this.isSteps=this.nzSteps>0,this.isSteps&&this.getSteps())}ngOnInit(){this.nzConfigService.getConfigChangeEventForComponent(ne).pipe((0,u.R)(this.destroy$)).subscribe(()=>{this.updateIcon(),this.setStrokeColor(),this.getCirclePaths()}),this.directionality.change?.pipe((0,u.R)(this.destroy$)).subscribe(ae=>{this.dir=ae,this.cdr.detectChanges()}),this.dir=this.directionality.value}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}updateIcon(){const ae=pe.get(this.status);this.icon=ae?ae+(this.isCircleStyle?"-o":"-circle-fill"):""}getSteps(){const ae=Math.floor(this.nzSteps*(this.nzPercent/100)),xe="small"===this.nzSize?2:14,Me=[];for(let Ye=0;Ye{const Mt=2===ae.length&&0===Ae;return{stroke:this.isGradient&&!Mt?`url(#gradient-${this.gradientId})`:null,strokePathStyle:{stroke:this.isGradient?null:Mt?re.get("success"):this.nzStrokeColor,transition:"stroke-dashoffset .3s ease 0s, stroke-dasharray .3s ease 0s, stroke .3s, stroke-width .06s ease .3s",strokeDasharray:`${(ct||0)/100*(Ye-q)}px ${Ye}px`,strokeDashoffset:`-${q/2}px`}}}).reverse()}setStrokeColor(){const ae=this.nzStrokeColor,xe=this.isGradient=!!ae&&"string"!=typeof ae;xe&&!this.isCircleStyle?this.lineGradient=(Q=>{const{from:ie="#1890ff",to:ae="#1890ff",direction:xe="to right",...Me}=Q;return 0!==Object.keys(Me).length?`linear-gradient(${xe}, ${G(Me).map(({key:q,value:ye})=>`${ye} ${q}%`).join(", ")})`:`linear-gradient(${xe}, ${ie}, ${ae})`})(ae):xe&&this.isCircleStyle?this.circleGradient=(Q=>G(this.nzStrokeColor).map(({key:ie,value:ae})=>({offset:`${ie}%`,color:ae})))():(this.lineGradient=null,this.circleGradient=[])}static#e=this.\u0275fac=function(xe){return new(xe||Q)(t.Y36(t.sBO),t.Y36(z.jY),t.Y36(e.Is,8))};static#t=this.\u0275cmp=t.Xpm({type:Q,selectors:[["nz-progress"]],inputs:{nzShowInfo:"nzShowInfo",nzWidth:"nzWidth",nzStrokeColor:"nzStrokeColor",nzSize:"nzSize",nzFormat:"nzFormat",nzSuccessPercent:"nzSuccessPercent",nzPercent:"nzPercent",nzStrokeWidth:"nzStrokeWidth",nzGapDegree:"nzGapDegree",nzStatus:"nzStatus",nzType:"nzType",nzGapPosition:"nzGapPosition",nzStrokeLinecap:"nzStrokeLinecap",nzSteps:"nzSteps"},exportAs:["nzProgress"],features:[t.TTD],decls:5,vars:17,consts:[["progressInfoTemplate",""],[3,"ngClass"],[4,"ngIf"],["class","ant-progress-inner",3,"width","height","fontSize","ant-progress-circle-gradient",4,"ngIf"],["class","ant-progress-text",4,"ngIf"],[1,"ant-progress-text"],[4,"ngIf","ngIfElse"],["formatTemplate",""],["nz-icon","",3,"nzType"],[4,"nzStringTemplateOutlet","nzStringTemplateOutletContext"],["class","ant-progress-steps-outer",4,"ngIf"],["class","ant-progress-outer",4,"ngIf"],[3,"ngTemplateOutlet"],[1,"ant-progress-outer"],[1,"ant-progress-inner"],[1,"ant-progress-bg"],["class","ant-progress-success-bg",3,"width","border-radius","height",4,"ngIf"],[1,"ant-progress-success-bg"],[1,"ant-progress-steps-outer"],["class","ant-progress-steps-item",3,"ngStyle",4,"ngFor","ngForOf"],[1,"ant-progress-steps-item",3,"ngStyle"],["viewBox","0 0 100 100",1,"ant-progress-circle"],["stroke","#f3f3f3","fill-opacity","0",1,"ant-progress-circle-trail",3,"ngStyle"],["class","ant-progress-circle-path","fill-opacity","0",3,"ngStyle",4,"ngFor","ngForOf","ngForTrackBy"],["x1","100%","y1","0%","x2","0%","y2","0%",3,"id"],[4,"ngFor","ngForOf"],["fill-opacity","0",1,"ant-progress-circle-path",3,"ngStyle"]],template:function(xe,Me){1&xe&&(t.YNc(0,f,1,1,"ng-template",null,0,t.W1O),t.TgZ(2,"div",1),t.YNc(3,A,3,2,"div",2),t.YNc(4,_e,6,15,"div",3),t.qZA()),2&xe&&(t.xp6(2),t.ekj("ant-progress-line","line"===Me.nzType)("ant-progress-small","small"===Me.nzSize)("ant-progress-default","default"===Me.nzSize)("ant-progress-show-info",Me.nzShowInfo)("ant-progress-circle",Me.isCircleStyle)("ant-progress-steps",Me.isSteps)("ant-progress-rtl","rtl"===Me.dir),t.Q6J("ngClass","ant-progress ant-progress-status-"+Me.status),t.xp6(1),t.Q6J("ngIf","line"===Me.nzType),t.xp6(1),t.Q6J("ngIf",Me.isCircleStyle))},dependencies:[n.mk,n.sg,n.O5,n.tP,n.PC,l.Ls,i.f],encapsulation:2,changeDetection:0})}return(0,C.gn)([(0,z.oS)()],Q.prototype,"nzShowInfo",void 0),(0,C.gn)([(0,z.oS)()],Q.prototype,"nzStrokeColor",void 0),(0,C.gn)([(0,z.oS)()],Q.prototype,"nzSize",void 0),(0,C.gn)([(0,M.Rn)()],Q.prototype,"nzSuccessPercent",void 0),(0,C.gn)([(0,M.Rn)()],Q.prototype,"nzPercent",void 0),(0,C.gn)([(0,z.oS)(),(0,M.Rn)()],Q.prototype,"nzStrokeWidth",void 0),(0,C.gn)([(0,z.oS)(),(0,M.Rn)()],Q.prototype,"nzGapDegree",void 0),(0,C.gn)([(0,z.oS)()],Q.prototype,"nzGapPosition",void 0),(0,C.gn)([(0,z.oS)()],Q.prototype,"nzStrokeLinecap",void 0),(0,C.gn)([(0,M.Rn)()],Q.prototype,"nzSteps",void 0),Q})(),ce=(()=>{class Q{static#e=this.\u0275fac=function(xe){return new(xe||Q)};static#t=this.\u0275mod=t.oAB({type:Q});static#n=this.\u0275inj=t.cJS({imports:[e.vT,n.ez,l.PV,i.T]})}return Q})()},57907:(nt,I,o)=>{"use strict";o.d(I,{Bq:()=>f,Dg:()=>T,Of:()=>x,aF:()=>D});var e=o(65879),n=o(97582),t=o(60095),i=o(97328),l=o(78645),C=o(92438),E=o(59773),u=o(27754),z=o(49388),M=o(4300),h=o(50883),v=o(96814);const g=["*"],d=["inputElement"],p=["nz-radio",""];let f=(()=>{class _{static#e=this.\u0275fac=function(A){return new(A||_)};static#t=this.\u0275dir=e.lG2({type:_,selectors:[["","nz-radio-button",""]]})}return _})(),y=(()=>{class _{constructor(){this.selected$=new i.t(1),this.touched$=new l.x,this.disabled$=new i.t(1),this.name$=new i.t(1)}touch(){this.touched$.next()}select(O){this.selected$.next(O)}setDisabled(O){this.disabled$.next(O)}setName(O){this.name$.next(O)}static#e=this.\u0275fac=function(A){return new(A||_)};static#t=this.\u0275prov=e.Yz7({token:_,factory:_.\u0275fac})}return _})(),T=(()=>{class _{constructor(O,A,k){this.cdr=O,this.nzRadioService=A,this.directionality=k,this.value=null,this.destroy$=new l.x,this.isNzDisableFirstChange=!0,this.onChange=()=>{},this.onTouched=()=>{},this.nzDisabled=!1,this.nzButtonStyle="outline",this.nzSize="default",this.nzName=null,this.dir="ltr"}ngOnInit(){this.nzRadioService.selected$.pipe((0,E.R)(this.destroy$)).subscribe(O=>{this.value!==O&&(this.value=O,this.onChange(this.value))}),this.nzRadioService.touched$.pipe((0,E.R)(this.destroy$)).subscribe(()=>{Promise.resolve().then(()=>this.onTouched())}),this.directionality.change?.pipe((0,E.R)(this.destroy$)).subscribe(O=>{this.dir=O,this.cdr.detectChanges()}),this.dir=this.directionality.value}ngOnChanges(O){const{nzDisabled:A,nzName:k}=O;A&&this.nzRadioService.setDisabled(this.nzDisabled),k&&this.nzRadioService.setName(this.nzName)}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}writeValue(O){this.value=O,this.nzRadioService.select(O),this.cdr.markForCheck()}registerOnChange(O){this.onChange=O}registerOnTouched(O){this.onTouched=O}setDisabledState(O){this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||O,this.isNzDisableFirstChange=!1,this.nzRadioService.setDisabled(this.nzDisabled),this.cdr.markForCheck()}static#e=this.\u0275fac=function(A){return new(A||_)(e.Y36(e.sBO),e.Y36(y),e.Y36(z.Is,8))};static#t=this.\u0275cmp=e.Xpm({type:_,selectors:[["nz-radio-group"]],hostAttrs:[1,"ant-radio-group"],hostVars:8,hostBindings:function(A,k){2&A&&e.ekj("ant-radio-group-large","large"===k.nzSize)("ant-radio-group-small","small"===k.nzSize)("ant-radio-group-solid","solid"===k.nzButtonStyle)("ant-radio-group-rtl","rtl"===k.dir)},inputs:{nzDisabled:"nzDisabled",nzButtonStyle:"nzButtonStyle",nzSize:"nzSize",nzName:"nzName"},exportAs:["nzRadioGroup"],features:[e._Bn([y,{provide:t.JU,useExisting:(0,e.Gpc)(()=>_),multi:!0}]),e.TTD],ngContentSelectors:g,decls:1,vars:0,template:function(A,k){1&A&&(e.F$t(),e.Hsn(0))},encapsulation:2,changeDetection:0})}return(0,n.gn)([(0,u.yF)()],_.prototype,"nzDisabled",void 0),_})(),x=(()=>{class _{focus(){this.focusMonitor.focusVia(this.inputElement,"keyboard")}blur(){this.inputElement.nativeElement.blur()}constructor(O,A,k,F,W,K,_e,Y){this.ngZone=O,this.elementRef=A,this.cdr=k,this.focusMonitor=F,this.directionality=W,this.nzRadioService=K,this.nzRadioButtonDirective=_e,this.nzFormStatusService=Y,this.isNgModel=!1,this.destroy$=new l.x,this.isNzDisableFirstChange=!0,this.isChecked=!1,this.name=null,this.isRadioButton=!!this.nzRadioButtonDirective,this.onChange=()=>{},this.onTouched=()=>{},this.nzValue=null,this.nzDisabled=!1,this.nzAutoFocus=!1,this.dir="ltr"}setDisabledState(O){this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||O,this.isNzDisableFirstChange=!1,this.cdr.markForCheck()}writeValue(O){this.isChecked=O,this.cdr.markForCheck()}registerOnChange(O){this.isNgModel=!0,this.onChange=O}registerOnTouched(O){this.onTouched=O}ngOnInit(){this.nzRadioService&&(this.nzRadioService.name$.pipe((0,E.R)(this.destroy$)).subscribe(O=>{this.name=O,this.cdr.markForCheck()}),this.nzRadioService.disabled$.pipe((0,E.R)(this.destroy$)).subscribe(O=>{this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||O,this.isNzDisableFirstChange=!1,this.cdr.markForCheck()}),this.nzRadioService.selected$.pipe((0,E.R)(this.destroy$)).subscribe(O=>{const A=this.isChecked;this.isChecked=this.nzValue===O,this.isNgModel&&A!==this.isChecked&&!1===this.isChecked&&this.onChange(!1),this.cdr.markForCheck()})),this.focusMonitor.monitor(this.elementRef,!0).pipe((0,E.R)(this.destroy$)).subscribe(O=>{O||(Promise.resolve().then(()=>this.onTouched()),this.nzRadioService&&this.nzRadioService.touch())}),this.directionality.change.pipe((0,E.R)(this.destroy$)).subscribe(O=>{this.dir=O,this.cdr.detectChanges()}),this.dir=this.directionality.value,this.setupClickListener()}ngAfterViewInit(){this.nzAutoFocus&&this.focus()}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete(),this.focusMonitor.stopMonitoring(this.elementRef)}setupClickListener(){this.ngZone.runOutsideAngular(()=>{(0,C.R)(this.elementRef.nativeElement,"click").pipe((0,E.R)(this.destroy$)).subscribe(O=>{O.stopPropagation(),O.preventDefault(),!this.nzDisabled&&!this.isChecked&&this.ngZone.run(()=>{this.focus(),this.nzRadioService?.select(this.nzValue),this.isNgModel&&(this.isChecked=!0,this.onChange(!0)),this.cdr.markForCheck()})})})}static#e=this.\u0275fac=function(A){return new(A||_)(e.Y36(e.R0b),e.Y36(e.SBq),e.Y36(e.sBO),e.Y36(M.tE),e.Y36(z.Is,8),e.Y36(y,8),e.Y36(f,8),e.Y36(h.kH,8))};static#t=this.\u0275cmp=e.Xpm({type:_,selectors:[["","nz-radio",""],["","nz-radio-button",""]],viewQuery:function(A,k){if(1&A&&e.Gf(d,7),2&A){let F;e.iGM(F=e.CRH())&&(k.inputElement=F.first)}},hostVars:18,hostBindings:function(A,k){2&A&&e.ekj("ant-radio-wrapper-in-form-item",!!k.nzFormStatusService)("ant-radio-wrapper",!k.isRadioButton)("ant-radio-button-wrapper",k.isRadioButton)("ant-radio-wrapper-checked",k.isChecked&&!k.isRadioButton)("ant-radio-button-wrapper-checked",k.isChecked&&k.isRadioButton)("ant-radio-wrapper-disabled",k.nzDisabled&&!k.isRadioButton)("ant-radio-button-wrapper-disabled",k.nzDisabled&&k.isRadioButton)("ant-radio-wrapper-rtl",!k.isRadioButton&&"rtl"===k.dir)("ant-radio-button-wrapper-rtl",k.isRadioButton&&"rtl"===k.dir)},inputs:{nzValue:"nzValue",nzDisabled:"nzDisabled",nzAutoFocus:"nzAutoFocus"},exportAs:["nzRadio"],features:[e._Bn([{provide:t.JU,useExisting:(0,e.Gpc)(()=>_),multi:!0}])],attrs:p,ngContentSelectors:g,decls:6,vars:24,consts:[["type","radio",3,"disabled","checked"],["inputElement",""]],template:function(A,k){1&A&&(e.F$t(),e.TgZ(0,"span"),e._UZ(1,"input",0,1)(3,"span"),e.qZA(),e.TgZ(4,"span"),e.Hsn(5),e.qZA()),2&A&&(e.ekj("ant-radio",!k.isRadioButton)("ant-radio-checked",k.isChecked&&!k.isRadioButton)("ant-radio-disabled",k.nzDisabled&&!k.isRadioButton)("ant-radio-button",k.isRadioButton)("ant-radio-button-checked",k.isChecked&&k.isRadioButton)("ant-radio-button-disabled",k.nzDisabled&&k.isRadioButton),e.xp6(1),e.ekj("ant-radio-input",!k.isRadioButton)("ant-radio-button-input",k.isRadioButton),e.Q6J("disabled",k.nzDisabled)("checked",k.isChecked),e.uIk("autofocus",k.nzAutoFocus?"autofocus":null)("name",k.name),e.xp6(2),e.ekj("ant-radio-inner",!k.isRadioButton)("ant-radio-button-inner",k.isRadioButton))},encapsulation:2,changeDetection:0})}return(0,n.gn)([(0,u.yF)()],_.prototype,"nzDisabled",void 0),(0,n.gn)([(0,u.yF)()],_.prototype,"nzAutoFocus",void 0),_})(),D=(()=>{class _{static#e=this.\u0275fac=function(A){return new(A||_)};static#t=this.\u0275mod=e.oAB({type:_});static#n=this.\u0275inj=e.cJS({imports:[z.vT,v.ez,t.u5]})}return _})()},98421:(nt,I,o)=>{"use strict";o.d(I,{Ju:()=>A,sn:()=>O});var e=o(97582),n=o(36028),t=o(65879),i=o(60095),l=o(92438),C=o(59773),E=o(83064),u=o(99087),z=o(27754),M=o(49388),h=o(96814),v=o(96109),g=o(90551);const d=["nz-rate-item",""];function p(k,F){}function f(k,F){}function y(k,F){1&k&&t._UZ(0,"span",4)}const T=function(k){return{$implicit:k}},x=["ulElement"];function D(k,F){if(1&k){const W=t.EpF();t.TgZ(0,"li",3)(1,"div",4),t.NdJ("itemHover",function(_e){const G=t.CHM(W).index,H=t.oxw();return t.KtG(H.onItemHover(G,_e))})("itemClick",function(_e){const G=t.CHM(W).index,H=t.oxw();return t.KtG(H.onItemClick(G,_e))}),t.qZA()()}if(2&k){const W=F.index,K=t.oxw();t.Q6J("ngClass",K.starStyleArray[W]||"")("nzTooltipTitle",K.nzTooltips[W]),t.xp6(1),t.Q6J("allowHalf",K.nzAllowHalf)("character",K.nzCharacter)("index",W)}}let _=(()=>{class k{constructor(){this.index=0,this.allowHalf=!1,this.itemHover=new t.vpe,this.itemClick=new t.vpe}hoverRate(W){this.itemHover.next(W&&this.allowHalf)}clickRate(W){this.itemClick.next(W&&this.allowHalf)}static#e=this.\u0275fac=function(K){return new(K||k)};static#t=this.\u0275cmp=t.Xpm({type:k,selectors:[["","nz-rate-item",""]],inputs:{character:"character",index:"index",allowHalf:"allowHalf"},outputs:{itemHover:"itemHover",itemClick:"itemClick"},exportAs:["nzRateItem"],attrs:d,decls:6,vars:8,consts:[[1,"ant-rate-star-second",3,"mouseover","click"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"ant-rate-star-first",3,"mouseover","click"],["defaultCharacter",""],["nz-icon","","nzType","star","nzTheme","fill"]],template:function(K,_e){if(1&K&&(t.TgZ(0,"div",0),t.NdJ("mouseover",function(G){return _e.hoverRate(!1),G.stopPropagation()})("click",function(){return _e.clickRate(!1)}),t.YNc(1,p,0,0,"ng-template",1),t.qZA(),t.TgZ(2,"div",2),t.NdJ("mouseover",function(G){return _e.hoverRate(!0),G.stopPropagation()})("click",function(){return _e.clickRate(!0)}),t.YNc(3,f,0,0,"ng-template",1),t.qZA(),t.YNc(4,y,1,0,"ng-template",null,3,t.W1O)),2&K){const Y=t.MAs(5);t.xp6(1),t.Q6J("ngTemplateOutlet",_e.character||Y)("ngTemplateOutletContext",t.VKq(4,T,_e.index)),t.xp6(2),t.Q6J("ngTemplateOutlet",_e.character||Y)("ngTemplateOutletContext",t.VKq(6,T,_e.index))}},dependencies:[h.tP,g.Ls],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,z.yF)()],k.prototype,"allowHalf",void 0),k})();const P="rate";let O=(()=>{class k{get nzValue(){return this._value}set nzValue(W){this._value!==W&&(this._value=W,this.hasHalf=!Number.isInteger(W),this.hoverValue=Math.ceil(W))}constructor(W,K,_e,Y,G,H){this.nzConfigService=W,this.ngZone=K,this.renderer=_e,this.cdr=Y,this.directionality=G,this.destroy$=H,this._nzModuleName=P,this.nzAllowClear=!0,this.nzAllowHalf=!1,this.nzDisabled=!1,this.nzAutoFocus=!1,this.nzCount=5,this.nzTooltips=[],this.nzOnBlur=new t.vpe,this.nzOnFocus=new t.vpe,this.nzOnHoverChange=new t.vpe,this.nzOnKeyDown=new t.vpe,this.classMap={},this.starArray=[],this.starStyleArray=[],this.dir="ltr",this.hasHalf=!1,this.hoverValue=0,this.isFocused=!1,this._value=0,this.isNzDisableFirstChange=!0,this.onChange=()=>null,this.onTouched=()=>null}ngOnChanges(W){const{nzAutoFocus:K,nzCount:_e,nzValue:Y}=W;if(K&&!K.isFirstChange()){const G=this.ulElement.nativeElement;this.nzAutoFocus&&!this.nzDisabled?this.renderer.setAttribute(G,"autofocus","autofocus"):this.renderer.removeAttribute(G,"autofocus")}_e&&this.updateStarArray(),Y&&this.updateStarStyle()}ngOnInit(){this.nzConfigService.getConfigChangeEventForComponent(P).pipe((0,C.R)(this.destroy$)).subscribe(()=>this.cdr.markForCheck()),this.directionality.change.pipe((0,C.R)(this.destroy$)).subscribe(W=>{this.dir=W,this.cdr.detectChanges()}),this.dir=this.directionality.value,this.ngZone.runOutsideAngular(()=>{(0,l.R)(this.ulElement.nativeElement,"focus").pipe((0,C.R)(this.destroy$)).subscribe(W=>{this.isFocused=!0,this.nzOnFocus.observers.length&&this.ngZone.run(()=>this.nzOnFocus.emit(W))}),(0,l.R)(this.ulElement.nativeElement,"blur").pipe((0,C.R)(this.destroy$)).subscribe(W=>{this.isFocused=!1,this.nzOnBlur.observers.length&&this.ngZone.run(()=>this.nzOnBlur.emit(W))})})}onItemClick(W,K){if(this.nzDisabled)return;this.hoverValue=W+1;const _e=K?W+.5:W+1;this.nzValue===_e?this.nzAllowClear&&(this.nzValue=0,this.onChange(this.nzValue)):(this.nzValue=_e,this.onChange(this.nzValue)),this.updateStarStyle()}onItemHover(W,K){this.nzDisabled||this.hoverValue===W+1&&K===this.hasHalf||(this.hoverValue=W+1,this.hasHalf=K,this.nzOnHoverChange.emit(this.hoverValue),this.updateStarStyle())}onRateLeave(){this.hasHalf=!Number.isInteger(this.nzValue),this.hoverValue=Math.ceil(this.nzValue),this.updateStarStyle()}focus(){this.ulElement.nativeElement.focus()}blur(){this.ulElement.nativeElement.blur()}onKeyDown(W){const K=this.nzValue;W.keyCode===n.SV&&this.nzValue0&&(this.nzValue-=this.nzAllowHalf?.5:1),K!==this.nzValue&&(this.onChange(this.nzValue),this.nzOnKeyDown.emit(W),this.updateStarStyle(),this.cdr.markForCheck())}updateStarArray(){this.starArray=Array(this.nzCount).fill(0).map((W,K)=>K),this.updateStarStyle()}updateStarStyle(){this.starStyleArray=this.starArray.map(W=>{const K="ant-rate-star",_e=W+1;return{[`${K}-full`]:_ethis.hoverValue,[`${K}-focused`]:this.hasHalf&&_e===this.hoverValue&&this.isFocused}})}writeValue(W){this.nzValue=W||0,this.updateStarArray(),this.cdr.markForCheck()}setDisabledState(W){this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||W,this.isNzDisableFirstChange=!1,this.cdr.markForCheck()}registerOnChange(W){this.onChange=W}registerOnTouched(W){this.onTouched=W}static#e=this.\u0275fac=function(K){return new(K||k)(t.Y36(E.jY),t.Y36(t.R0b),t.Y36(t.Qsj),t.Y36(t.sBO),t.Y36(M.Is,8),t.Y36(u.kn))};static#t=this.\u0275cmp=t.Xpm({type:k,selectors:[["nz-rate"]],viewQuery:function(K,_e){if(1&K&&t.Gf(x,7),2&K){let Y;t.iGM(Y=t.CRH())&&(_e.ulElement=Y.first)}},inputs:{nzAllowClear:"nzAllowClear",nzAllowHalf:"nzAllowHalf",nzDisabled:"nzDisabled",nzAutoFocus:"nzAutoFocus",nzCharacter:"nzCharacter",nzCount:"nzCount",nzTooltips:"nzTooltips"},outputs:{nzOnBlur:"nzOnBlur",nzOnFocus:"nzOnFocus",nzOnHoverChange:"nzOnHoverChange",nzOnKeyDown:"nzOnKeyDown"},exportAs:["nzRate"],features:[t._Bn([u.kn,{provide:i.JU,useExisting:(0,t.Gpc)(()=>k),multi:!0}]),t.TTD],decls:3,vars:7,consts:[[1,"ant-rate",3,"ngClass","tabindex","keydown","mouseleave"],["ulElement",""],["class","ant-rate-star","nz-tooltip","",3,"ngClass","nzTooltipTitle",4,"ngFor","ngForOf"],["nz-tooltip","",1,"ant-rate-star",3,"ngClass","nzTooltipTitle"],["nz-rate-item","",3,"allowHalf","character","index","itemHover","itemClick"]],template:function(K,_e){1&K&&(t.TgZ(0,"ul",0,1),t.NdJ("keydown",function(G){return _e.onKeyDown(G),G.preventDefault()})("mouseleave",function(G){return _e.onRateLeave(),G.stopPropagation()}),t.YNc(2,D,2,5,"li",2),t.qZA()),2&K&&(t.ekj("ant-rate-disabled",_e.nzDisabled)("ant-rate-rtl","rtl"===_e.dir),t.Q6J("ngClass",_e.classMap)("tabindex",_e.nzDisabled?-1:1),t.xp6(2),t.Q6J("ngForOf",_e.starArray))},dependencies:[h.mk,h.sg,v.SY,_],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,E.oS)(),(0,z.yF)()],k.prototype,"nzAllowClear",void 0),(0,e.gn)([(0,E.oS)(),(0,z.yF)()],k.prototype,"nzAllowHalf",void 0),(0,e.gn)([(0,z.yF)()],k.prototype,"nzDisabled",void 0),(0,e.gn)([(0,z.yF)()],k.prototype,"nzAutoFocus",void 0),(0,e.gn)([(0,z.Rn)()],k.prototype,"nzCount",void 0),k})(),A=(()=>{class k{static#e=this.\u0275fac=function(K){return new(K||k)};static#t=this.\u0275mod=t.oAB({type:k});static#n=this.\u0275inj=t.cJS({imports:[M.vT,h.ez,g.PV,v.cg]})}return k})()},70612:(nt,I,o)=>{"use strict";o.d(I,{GS:()=>O,IJ:()=>f,Op:()=>P,m8:()=>x});var e=o(96814),n=o(65879),t=o(97582),i=o(78645),l=o(92438),C=o(63019),E=o(59773),u=o(32181),z=o(99087),M=o(27754),h=o(62831);const v=["*"];function g(A,k){if(1&A&&n._UZ(0,"nz-resize-handle",1),2&A){const F=k.$implicit;n.Q6J("nzDirection",F.direction)("nzCursorType",F.cursorType)}}function d(A){return(0,M.z6)(A)?A.touches[0]||A.changedTouches[0]:A}let p=(()=>{class A{constructor(F,W){this.ngZone=F,this.listeners=new Map,this.handleMouseDownOutsideAngular$=new i.x,this.documentMouseUpOutsideAngular$=new i.x,this.documentMouseMoveOutsideAngular$=new i.x,this.mouseEnteredOutsideAngular$=new i.x,this.document=W}startResizing(F){const W=(0,M.z6)(F);this.clearListeners();const _e=W?"touchend":"mouseup";this.listeners.set(W?"touchmove":"mousemove",H=>{this.documentMouseMoveOutsideAngular$.next(H)}),this.listeners.set(_e,H=>{this.documentMouseUpOutsideAngular$.next(H),this.clearListeners()}),this.ngZone.runOutsideAngular(()=>{this.listeners.forEach((H,j)=>{this.document.addEventListener(j,H)})})}clearListeners(){this.listeners.forEach((F,W)=>{this.document.removeEventListener(W,F)}),this.listeners.clear()}ngOnDestroy(){this.handleMouseDownOutsideAngular$.complete(),this.documentMouseUpOutsideAngular$.complete(),this.documentMouseMoveOutsideAngular$.complete(),this.mouseEnteredOutsideAngular$.complete(),this.clearListeners()}static#e=this.\u0275fac=function(W){return new(W||A)(n.LFG(n.R0b),n.LFG(e.K0))};static#t=this.\u0275prov=n.Yz7({token:A,factory:A.\u0275fac})}return A})(),f=(()=>{class A{constructor(F,W,K,_e,Y,G){this.elementRef=F,this.renderer=W,this.nzResizableService=K,this.platform=_e,this.ngZone=Y,this.destroy$=G,this.nzBounds="parent",this.nzMinHeight=40,this.nzMinWidth=40,this.nzGridColumnCount=-1,this.nzMaxColumn=-1,this.nzMinColumn=-1,this.nzLockAspectRatio=!1,this.nzPreview=!1,this.nzDisabled=!1,this.nzResize=new n.vpe,this.nzResizeEnd=new n.vpe,this.nzResizeStart=new n.vpe,this.resizing=!1,this.currentHandleEvent=null,this.ghostElement=null,this.sizeCache=null,this.nzResizableService.handleMouseDownOutsideAngular$.pipe((0,E.R)(this.destroy$)).subscribe(H=>{this.nzDisabled||(this.resizing=!0,this.nzResizableService.startResizing(H.mouseEvent),this.currentHandleEvent=H,this.nzResizeStart.observers.length&&this.ngZone.run(()=>this.nzResizeStart.emit({mouseEvent:H.mouseEvent,direction:H.direction})),this.elRect=this.el.getBoundingClientRect())}),this.nzResizableService.documentMouseUpOutsideAngular$.pipe((0,E.R)(this.destroy$),(0,u.h)(Boolean)).subscribe(H=>{this.resizing&&(this.resizing=!1,this.nzResizableService.documentMouseUpOutsideAngular$.next(null),this.endResize(H))}),this.nzResizableService.documentMouseMoveOutsideAngular$.pipe((0,E.R)(this.destroy$)).subscribe(H=>{this.resizing&&this.resize(H)})}setPosition(){const F=getComputedStyle(this.el).position;("static"===F||!F)&&this.renderer.setStyle(this.el,"position","relative")}calcSize(F,W,K){let _e,Y,G,H,j=0,te=0,ne=this.nzMinWidth,pe=1/0,re=1/0;if("parent"===this.nzBounds){const be=this.renderer.parentNode(this.el);if(be instanceof HTMLElement){const le=be.getBoundingClientRect();pe=le.width,re=le.height}}else if("window"===this.nzBounds)typeof window<"u"&&(pe=window.innerWidth,re=window.innerHeight);else if(this.nzBounds&&this.nzBounds.nativeElement&&this.nzBounds.nativeElement instanceof HTMLElement){const be=this.nzBounds.nativeElement.getBoundingClientRect();pe=be.width,re=be.height}return G=(0,M.te)(this.nzMaxWidth,pe),H=(0,M.te)(this.nzMaxHeight,re),-1!==this.nzGridColumnCount&&(te=G/this.nzGridColumnCount,ne=-1!==this.nzMinColumn?te*this.nzMinColumn:ne,G=-1!==this.nzMaxColumn?te*this.nzMaxColumn:G),-1!==K?/(left|right)/i.test(this.currentHandleEvent.direction)?(_e=Math.min(Math.max(F,ne),G),Y=Math.min(Math.max(_e/K,this.nzMinHeight),H),(Y>=H||Y<=this.nzMinHeight)&&(_e=Math.min(Math.max(Y*K,ne),G))):(Y=Math.min(Math.max(W,this.nzMinHeight),H),_e=Math.min(Math.max(Y*K,ne),G),(_e>=G||_e<=ne)&&(Y=Math.min(Math.max(_e/K,this.nzMinHeight),H))):(_e=Math.min(Math.max(F,ne),G),Y=Math.min(Math.max(W,this.nzMinHeight),H)),-1!==this.nzGridColumnCount&&(j=Math.round(_e/te),_e=j*te),{col:j,width:_e,height:Y}}resize(F){const W=this.elRect,K=d(F),_e=d(this.currentHandleEvent.mouseEvent);let Y=W.width,G=W.height;const H=this.nzLockAspectRatio?Y/G:-1;switch(this.currentHandleEvent.direction){case"bottomRight":Y=K.clientX-W.left,G=K.clientY-W.top;break;case"bottomLeft":Y=W.width+_e.clientX-K.clientX,G=K.clientY-W.top;break;case"topRight":Y=K.clientX-W.left,G=W.height+_e.clientY-K.clientY;break;case"topLeft":Y=W.width+_e.clientX-K.clientX,G=W.height+_e.clientY-K.clientY;break;case"top":G=W.height+_e.clientY-K.clientY;break;case"right":Y=K.clientX-W.left;break;case"bottom":G=K.clientY-W.top;break;case"left":Y=W.width+_e.clientX-K.clientX}const j=this.calcSize(Y,G,H);this.sizeCache={...j},this.nzResize.observers.length&&this.ngZone.run(()=>{this.nzResize.emit({...j,mouseEvent:F,direction:this.currentHandleEvent.direction})}),this.nzPreview&&this.previewResize(j)}endResize(F){this.removeGhostElement();const W=this.sizeCache?{...this.sizeCache}:{width:this.elRect.width,height:this.elRect.height};this.nzResizeEnd.observers.length&&this.ngZone.run(()=>{this.nzResizeEnd.emit({...W,mouseEvent:F,direction:this.currentHandleEvent.direction})}),this.sizeCache=null,this.currentHandleEvent=null}previewResize({width:F,height:W}){this.createGhostElement(),this.renderer.setStyle(this.ghostElement,"width",`${F}px`),this.renderer.setStyle(this.ghostElement,"height",`${W}px`)}createGhostElement(){this.ghostElement||(this.ghostElement=this.renderer.createElement("div"),this.renderer.setAttribute(this.ghostElement,"class","nz-resizable-preview")),this.renderer.appendChild(this.el,this.ghostElement)}removeGhostElement(){this.ghostElement&&this.renderer.removeChild(this.el,this.ghostElement)}ngAfterViewInit(){this.platform.isBrowser&&(this.el=this.elementRef.nativeElement,this.setPosition(),this.ngZone.runOutsideAngular(()=>{(0,l.R)(this.el,"mouseenter").pipe((0,E.R)(this.destroy$)).subscribe(()=>{this.nzResizableService.mouseEnteredOutsideAngular$.next(!0)}),(0,l.R)(this.el,"mouseleave").pipe((0,E.R)(this.destroy$)).subscribe(()=>{this.nzResizableService.mouseEnteredOutsideAngular$.next(!1)})}))}ngOnDestroy(){this.ghostElement=null,this.sizeCache=null}static#e=this.\u0275fac=function(W){return new(W||A)(n.Y36(n.SBq),n.Y36(n.Qsj),n.Y36(p),n.Y36(h.t4),n.Y36(n.R0b),n.Y36(z.kn))};static#t=this.\u0275dir=n.lG2({type:A,selectors:[["","nz-resizable",""]],hostAttrs:[1,"nz-resizable"],hostVars:4,hostBindings:function(W,K){2&W&&n.ekj("nz-resizable-resizing",K.resizing)("nz-resizable-disabled",K.nzDisabled)},inputs:{nzBounds:"nzBounds",nzMaxHeight:"nzMaxHeight",nzMaxWidth:"nzMaxWidth",nzMinHeight:"nzMinHeight",nzMinWidth:"nzMinWidth",nzGridColumnCount:"nzGridColumnCount",nzMaxColumn:"nzMaxColumn",nzMinColumn:"nzMinColumn",nzLockAspectRatio:"nzLockAspectRatio",nzPreview:"nzPreview",nzDisabled:"nzDisabled"},outputs:{nzResize:"nzResize",nzResizeEnd:"nzResizeEnd",nzResizeStart:"nzResizeStart"},exportAs:["nzResizable"],features:[n._Bn([p,z.kn])]})}return(0,t.gn)([(0,M.yF)()],A.prototype,"nzLockAspectRatio",void 0),(0,t.gn)([(0,M.yF)()],A.prototype,"nzPreview",void 0),(0,t.gn)([(0,M.yF)()],A.prototype,"nzDisabled",void 0),A})();class y{constructor(k,F){this.direction=k,this.mouseEvent=F}}const T=(0,h.i$)({passive:!0});let x=(()=>{class A{constructor(F,W,K,_e,Y){this.ngZone=F,this.nzResizableService=W,this.renderer=K,this.host=_e,this.destroy$=Y,this.nzDirection="bottomRight",this.nzCursorType="window",this.nzMouseDown=new n.vpe}ngOnInit(){this.nzResizableService.mouseEnteredOutsideAngular$.pipe((0,E.R)(this.destroy$)).subscribe(F=>{F?this.renderer.addClass(this.host.nativeElement,"nz-resizable-handle-box-hover"):this.renderer.removeClass(this.host.nativeElement,"nz-resizable-handle-box-hover")}),this.ngZone.runOutsideAngular(()=>{(0,C.T)((0,l.R)(this.host.nativeElement,"mousedown",T),(0,l.R)(this.host.nativeElement,"touchstart",T)).pipe((0,E.R)(this.destroy$)).subscribe(F=>{this.nzResizableService.handleMouseDownOutsideAngular$.next(new y(this.nzDirection,F))})})}onPointerDown(F){this.host.nativeElement.setPointerCapture(F.pointerId)}onPointerUp(F){this.host.nativeElement.releasePointerCapture(F.pointerId)}static#e=this.\u0275fac=function(W){return new(W||A)(n.Y36(n.R0b),n.Y36(p),n.Y36(n.Qsj),n.Y36(n.SBq),n.Y36(z.kn))};static#t=this.\u0275cmp=n.Xpm({type:A,selectors:[["nz-resize-handle"],["","nz-resize-handle",""]],hostAttrs:[1,"nz-resizable-handle"],hostVars:20,hostBindings:function(W,K){1&W&&n.NdJ("pointerdown",function(Y){return K.onPointerDown(Y)})("pointerup",function(Y){return K.onPointerUp(Y)}),2&W&&n.ekj("nz-resizable-handle-top","top"===K.nzDirection)("nz-resizable-handle-right","right"===K.nzDirection)("nz-resizable-handle-bottom","bottom"===K.nzDirection)("nz-resizable-handle-left","left"===K.nzDirection)("nz-resizable-handle-topRight","topRight"===K.nzDirection)("nz-resizable-handle-bottomRight","bottomRight"===K.nzDirection)("nz-resizable-handle-bottomLeft","bottomLeft"===K.nzDirection)("nz-resizable-handle-topLeft","topLeft"===K.nzDirection)("nz-resizable-handle-cursor-type-grid","grid"===K.nzCursorType)("nz-resizable-handle-cursor-type-window","window"===K.nzCursorType)},inputs:{nzDirection:"nzDirection",nzCursorType:"nzCursorType"},outputs:{nzMouseDown:"nzMouseDown"},exportAs:["nzResizeHandle"],features:[n._Bn([z.kn])],ngContentSelectors:v,decls:1,vars:0,template:function(W,K){1&W&&(n.F$t(),n.Hsn(0))},encapsulation:2,changeDetection:0})}return A})();const D=["bottomRight","topRight","bottomLeft","topLeft","bottom","right","top","left"];function _(A){return A.map(k=>"string"==typeof k?{direction:k,cursorType:"window"}:k)}let P=(()=>{class A{constructor(){this.nzDirections=D,this.resizeHandleOptions=_(this.nzDirections)}ngOnChanges(F){F.nzDirections&&(this.resizeHandleOptions=_(F.nzDirections.currentValue))}static#e=this.\u0275fac=function(W){return new(W||A)};static#t=this.\u0275cmp=n.Xpm({type:A,selectors:[["nz-resize-handles"]],inputs:{nzDirections:"nzDirections"},exportAs:["nzResizeHandles"],features:[n.TTD],decls:1,vars:1,consts:[[3,"nzDirection","nzCursorType",4,"ngFor","ngForOf"],[3,"nzDirection","nzCursorType"]],template:function(W,K){1&W&&n.YNc(0,g,1,2,"nz-resize-handle",0),2&W&&n.Q6J("ngForOf",K.resizeHandleOptions)},dependencies:[e.sg,x],encapsulation:2,changeDetection:0})}return A})(),O=(()=>{class A{static#e=this.\u0275fac=function(W){return new(W||A)};static#t=this.\u0275mod=n.oAB({type:A});static#n=this.\u0275inj=n.cJS({imports:[e.ez]})}return A})()},9691:(nt,I,o)=>{"use strict";o.d(I,{Go:()=>Ze,Gt:()=>ge,Ip:()=>qe,LV:()=>Ke,Vq:()=>Ge,Y6:()=>$e,Yy:()=>xt,kq:()=>wt,uf:()=>De});var e=o(65879),n=o(78645),t=o(92438),i=o(65619),l=o(22096),C=o(52572),E=o(63019),u=o(205),z=o(96814),M=o(60804),h=o(59773),v=o(27921),g=o(93997),d=o(42460),p=o(37398),f=o(94664),y=o(99087),T=o(90551),x=o(70855),D=o(8324),_=o(97582),P=o(27754),O=o(36028),A=o(33651),k=o(60095),F=o(64194),W=o(83064),K=o(85448),_e=o(56879),Y=o(4300),G=o(331),H=o(62831),j=o(49388),te=o(50883),ne=o(12131);const pe=["*"];function re(ve,it){}function be(ve,it){if(1&ve&&e.YNc(0,re,0,0,"ng-template",4),2&ve){const b=e.oxw();e.Q6J("ngTemplateOutlet",b.template)}}function le(ve,it){if(1&ve&&e._uU(0),2&ve){const b=e.oxw();e.Oqu(b.label)}}function ce(ve,it){1&ve&&e._UZ(0,"span",7)}function Q(ve,it){if(1&ve&&(e.TgZ(0,"div",5),e.YNc(1,ce,1,0,"span",6),e.qZA()),2&ve){const b=e.oxw();e.xp6(1),e.Q6J("ngIf",!b.icon)("ngIfElse",b.icon)}}function ie(ve,it){if(1&ve&&(e.ynx(0),e._uU(1),e.BQk()),2&ve){const b=e.oxw();e.xp6(1),e.Oqu(b.nzLabel)}}function ae(ve,it){if(1&ve&&(e.TgZ(0,"div",4),e._UZ(1,"nz-embed-empty",5),e.qZA()),2&ve){const b=e.oxw();e.xp6(1),e.Q6J("specificContent",b.notFoundContent)}}function xe(ve,it){if(1&ve&&e._UZ(0,"nz-option-item-group",9),2&ve){const b=e.oxw().$implicit;e.Q6J("nzLabel",b.groupLabel)}}function Me(ve,it){if(1&ve){const b=e.EpF();e.TgZ(0,"nz-option-item",10),e.NdJ("itemHover",function(S){e.CHM(b);const $=e.oxw(2);return e.KtG($.onItemHover(S))})("itemClick",function(S){e.CHM(b);const $=e.oxw(2);return e.KtG($.onItemClick(S))}),e.qZA()}if(2&ve){const b=e.oxw().$implicit,N=e.oxw();e.Q6J("icon",N.menuItemSelectedIcon)("customContent",b.nzCustomContent)("template",b.template)("grouped",!!b.groupLabel)("disabled",b.nzDisabled)("showState","tags"===N.mode||"multiple"===N.mode)("title",b.nzTitle)("label",b.nzLabel)("compareWith",N.compareWith)("activatedValue",N.activatedValue)("listOfSelectedValue",N.listOfSelectedValue)("value",b.nzValue)}}function Ye(ve,it){1&ve&&(e.ynx(0,6),e.YNc(1,xe,1,1,"nz-option-item-group",7),e.YNc(2,Me,1,12,"nz-option-item",8),e.BQk()),2&ve&&(e.Q6J("ngSwitch",it.$implicit.type),e.xp6(1),e.Q6J("ngSwitchCase","group"),e.xp6(1),e.Q6J("ngSwitchCase","item"))}function q(ve,it){}function ye(ve,it){1&ve&&e.Hsn(0)}const ee=["inputElement"],Be=["mirrorElement"];function Re(ve,it){1&ve&&e._UZ(0,"span",3,4)}function ct(ve,it){if(1&ve&&(e.TgZ(0,"div",4),e._uU(1),e.qZA()),2&ve){const b=e.oxw(2);e.xp6(1),e.Oqu(b.label)}}function Ae(ve,it){if(1&ve&&e._uU(0),2&ve){const b=e.oxw(2);e.Oqu(b.label)}}function Mt(ve,it){if(1&ve&&(e.ynx(0),e.YNc(1,ct,2,1,"div",2),e.YNc(2,Ae,1,1,"ng-template",null,3,e.W1O),e.BQk()),2&ve){const b=e.MAs(3),N=e.oxw();e.xp6(1),e.Q6J("ngIf",N.deletable)("ngIfElse",b)}}function je(ve,it){1&ve&&e._UZ(0,"span",7)}function ot(ve,it){if(1&ve){const b=e.EpF();e.TgZ(0,"span",5),e.NdJ("click",function(S){e.CHM(b);const $=e.oxw();return e.KtG($.onDelete(S))}),e.YNc(1,je,1,0,"span",6),e.qZA()}if(2&ve){const b=e.oxw();e.xp6(1),e.Q6J("ngIf",!b.removeIcon)("ngIfElse",b.removeIcon)}}const mt=function(ve){return{$implicit:ve}};function we(ve,it){if(1&ve&&(e.ynx(0),e._uU(1),e.BQk()),2&ve){const b=e.oxw();e.xp6(1),e.hij(" ",b.placeholder," ")}}function de(ve,it){if(1&ve&&e._UZ(0,"nz-select-item",6),2&ve){const b=e.oxw(2);e.Q6J("deletable",!1)("disabled",!1)("removeIcon",b.removeIcon)("label",b.listOfTopItem[0].nzLabel)("contentTemplateOutlet",b.customTemplate)("contentTemplateOutletContext",b.listOfTopItem[0])}}function U(ve,it){if(1&ve){const b=e.EpF();e.ynx(0),e.TgZ(1,"nz-select-search",4),e.NdJ("isComposingChange",function(S){e.CHM(b);const $=e.oxw();return e.KtG($.isComposingChange(S))})("valueChange",function(S){e.CHM(b);const $=e.oxw();return e.KtG($.onInputValueChange(S))}),e.qZA(),e.YNc(2,de,1,6,"nz-select-item",5),e.BQk()}if(2&ve){const b=e.oxw();e.xp6(1),e.Q6J("nzId",b.nzId)("disabled",b.disabled)("value",b.inputValue)("showInput",b.showSearch)("mirrorSync",!1)("autofocus",b.autofocus)("focusTrigger",b.open),e.xp6(1),e.Q6J("ngIf",b.isShowSingleLabel)}}function B(ve,it){if(1&ve){const b=e.EpF();e.TgZ(0,"nz-select-item",9),e.NdJ("delete",function(){const $=e.CHM(b).$implicit,R=e.oxw(2);return e.KtG(R.onDeleteItem($.contentTemplateOutletContext))}),e.qZA()}if(2&ve){const b=it.$implicit,N=e.oxw(2);e.Q6J("removeIcon",N.removeIcon)("label",b.nzLabel)("disabled",b.nzDisabled||N.disabled)("contentTemplateOutlet",b.contentTemplateOutlet)("deletable",!0)("contentTemplateOutletContext",b.contentTemplateOutletContext)}}function Ee(ve,it){if(1&ve){const b=e.EpF();e.ynx(0),e.YNc(1,B,1,6,"nz-select-item",7),e.TgZ(2,"nz-select-search",8),e.NdJ("isComposingChange",function(S){e.CHM(b);const $=e.oxw();return e.KtG($.isComposingChange(S))})("valueChange",function(S){e.CHM(b);const $=e.oxw();return e.KtG($.onInputValueChange(S))}),e.qZA(),e.BQk()}if(2&ve){const b=e.oxw();e.xp6(1),e.Q6J("ngForOf",b.listOfSlicedItem)("ngForTrackBy",b.trackValue),e.xp6(1),e.Q6J("nzId",b.nzId)("disabled",b.disabled)("value",b.inputValue)("autofocus",b.autofocus)("showInput",!0)("mirrorSync",!0)("focusTrigger",b.open)}}function Ie(ve,it){if(1&ve&&e._UZ(0,"nz-select-placeholder",10),2&ve){const b=e.oxw();e.Q6J("placeholder",b.placeHolder)}}function Ne(ve,it){1&ve&&e._UZ(0,"span",1)}function pt(ve,it){1&ve&&e._UZ(0,"span",3)}function Dt(ve,it){1&ve&&e._UZ(0,"span",8)}function Lt(ve,it){1&ve&&e._UZ(0,"span",9)}function Ut(ve,it){if(1&ve&&(e.ynx(0),e.YNc(1,Dt,1,0,"span",6),e.YNc(2,Lt,1,0,"span",7),e.BQk()),2&ve){const b=e.oxw(2);e.xp6(1),e.Q6J("ngIf",!b.search),e.xp6(1),e.Q6J("ngIf",b.search)}}function qt(ve,it){if(1&ve&&e._UZ(0,"span",11),2&ve){const b=e.oxw().$implicit;e.Q6J("nzType",b)}}function en(ve,it){if(1&ve&&(e.ynx(0),e.YNc(1,qt,1,1,"span",10),e.BQk()),2&ve){const b=it.$implicit;e.xp6(1),e.Q6J("ngIf",b)}}function cn(ve,it){if(1&ve&&e.YNc(0,en,2,1,"ng-container",2),2&ve){const b=e.oxw(2);e.Q6J("nzStringTemplateOutlet",b.suffixIcon)}}function Wt(ve,it){if(1&ve&&(e.YNc(0,Ut,3,2,"ng-container",4),e.YNc(1,cn,1,1,"ng-template",null,5,e.W1O)),2&ve){const b=e.MAs(2),N=e.oxw();e.Q6J("ngIf",N.showArrow&&!N.suffixIcon)("ngIfElse",b)}}function Vt(ve,it){if(1&ve&&(e.ynx(0),e._uU(1),e.BQk()),2&ve){const b=e.oxw();e.xp6(1),e.Oqu(b.feedbackIcon)}}function st(ve,it){if(1&ve&&e._UZ(0,"nz-form-item-feedback-icon",8),2&ve){const b=e.oxw(3);e.Q6J("status",b.status)}}function He(ve,it){if(1&ve&&e.YNc(0,st,1,1,"nz-form-item-feedback-icon",7),2&ve){const b=e.oxw(2);e.Q6J("ngIf",b.hasFeedback&&!!b.status)}}function et(ve,it){if(1&ve&&(e.TgZ(0,"nz-select-arrow",5),e.YNc(1,He,1,1,"ng-template",null,6,e.W1O),e.qZA()),2&ve){const b=e.MAs(2),N=e.oxw();e.Q6J("showArrow",N.nzShowArrow)("loading",N.nzLoading)("search",N.nzOpen&&N.nzShowSearch)("suffixIcon",N.nzSuffixIcon)("feedbackIcon",b)}}function It(ve,it){if(1&ve){const b=e.EpF();e.TgZ(0,"nz-select-clear",9),e.NdJ("clear",function(){e.CHM(b);const S=e.oxw();return e.KtG(S.onClearSelection())}),e.qZA()}if(2&ve){const b=e.oxw();e.Q6J("clearIcon",b.nzClearIcon)}}function Ot(ve,it){if(1&ve){const b=e.EpF();e.TgZ(0,"nz-option-container",10),e.NdJ("keydown",function(S){e.CHM(b);const $=e.oxw();return e.KtG($.onKeyDown(S))})("itemClick",function(S){e.CHM(b);const $=e.oxw();return e.KtG($.onItemClick(S))})("scrollToBottom",function(){e.CHM(b);const S=e.oxw();return e.KtG(S.nzScrollToBottom.emit())}),e.qZA()}if(2&ve){const b=e.oxw();e.ekj("ant-select-dropdown-placement-bottomLeft","bottomLeft"===b.dropDownPosition)("ant-select-dropdown-placement-topLeft","topLeft"===b.dropDownPosition)("ant-select-dropdown-placement-bottomRight","bottomRight"===b.dropDownPosition)("ant-select-dropdown-placement-topRight","topRight"===b.dropDownPosition),e.Q6J("ngStyle",b.nzDropdownStyle)("itemSize",b.nzOptionHeightPx)("maxItemLength",b.nzOptionOverflowSize)("matchWidth",b.nzDropdownMatchSelectWidth)("@slideMotion","enter")("@.disabled",!(null==b.noAnimation||!b.noAnimation.nzNoAnimation))("nzNoAnimation",null==b.noAnimation?null:b.noAnimation.nzNoAnimation)("listOfContainerItem",b.listOfContainerItem)("menuItemSelectedIcon",b.nzMenuItemSelectedIcon)("notFoundContent",b.nzNotFoundContent)("activatedValue",b.activatedValue)("listOfSelectedValue",b.listOfValue)("dropdownRender",b.nzDropdownRender)("compareWith",b.compareWith)("mode",b.nzMode)}}let xt=(()=>{class ve{constructor(){this.nzLabel=null,this.changes=new n.x}ngOnChanges(){this.changes.next()}static#e=this.\u0275fac=function(N){return new(N||ve)};static#t=this.\u0275cmp=e.Xpm({type:ve,selectors:[["nz-option-group"]],inputs:{nzLabel:"nzLabel"},exportAs:["nzOptionGroup"],features:[e.TTD],ngContentSelectors:pe,decls:1,vars:0,template:function(N,S){1&N&&(e.F$t(),e.Hsn(0))},encapsulation:2,changeDetection:0})}return ve})(),Qe=(()=>{class ve{constructor(b,N,S){this.elementRef=b,this.ngZone=N,this.destroy$=S,this.selected=!1,this.activated=!1,this.grouped=!1,this.customContent=!1,this.template=null,this.disabled=!1,this.showState=!1,this.label=null,this.value=null,this.activatedValue=null,this.listOfSelectedValue=[],this.icon=null,this.itemClick=new e.vpe,this.itemHover=new e.vpe}ngOnChanges(b){const{value:N,activatedValue:S,listOfSelectedValue:$}=b;(N||$)&&(this.selected=this.listOfSelectedValue.some(R=>this.compareWith(R,this.value))),(N||S)&&(this.activated=this.compareWith(this.activatedValue,this.value))}ngOnInit(){this.ngZone.runOutsideAngular(()=>{(0,t.R)(this.elementRef.nativeElement,"click").pipe((0,h.R)(this.destroy$)).subscribe(()=>{this.disabled||this.ngZone.run(()=>this.itemClick.emit(this.value))}),(0,t.R)(this.elementRef.nativeElement,"mouseenter").pipe((0,h.R)(this.destroy$)).subscribe(()=>{this.disabled||this.ngZone.run(()=>this.itemHover.emit(this.value))})})}static#e=this.\u0275fac=function(N){return new(N||ve)(e.Y36(e.SBq),e.Y36(e.R0b),e.Y36(y.kn))};static#t=this.\u0275cmp=e.Xpm({type:ve,selectors:[["nz-option-item"]],hostAttrs:[1,"ant-select-item","ant-select-item-option"],hostVars:9,hostBindings:function(N,S){2&N&&(e.uIk("title",S.title),e.ekj("ant-select-item-option-grouped",S.grouped)("ant-select-item-option-selected",S.selected&&!S.disabled)("ant-select-item-option-disabled",S.disabled)("ant-select-item-option-active",S.activated&&!S.disabled))},inputs:{grouped:"grouped",customContent:"customContent",template:"template",disabled:"disabled",showState:"showState",title:"title",label:"label",value:"value",activatedValue:"activatedValue",listOfSelectedValue:"listOfSelectedValue",icon:"icon",compareWith:"compareWith"},outputs:{itemClick:"itemClick",itemHover:"itemHover"},features:[e._Bn([y.kn]),e.TTD],decls:5,vars:3,consts:[[1,"ant-select-item-option-content"],[3,"ngIf","ngIfElse"],["noCustomContent",""],["class","ant-select-item-option-state","style","user-select: none","unselectable","on",4,"ngIf"],[3,"ngTemplateOutlet"],["unselectable","on",1,"ant-select-item-option-state",2,"user-select","none"],["nz-icon","","nzType","check","class","ant-select-selected-icon",4,"ngIf","ngIfElse"],["nz-icon","","nzType","check",1,"ant-select-selected-icon"]],template:function(N,S){if(1&N&&(e.TgZ(0,"div",0),e.YNc(1,be,1,1,"ng-template",1),e.YNc(2,le,1,1,"ng-template",null,2,e.W1O),e.qZA(),e.YNc(4,Q,2,2,"div",3)),2&N){const $=e.MAs(3);e.xp6(1),e.Q6J("ngIf",S.customContent)("ngIfElse",$),e.xp6(3),e.Q6J("ngIf",S.showState&&S.selected)}},dependencies:[z.O5,z.tP,T.Ls,x.w],encapsulation:2,changeDetection:0})}return ve})(),ke=(()=>{class ve{constructor(){this.nzLabel=null}static#e=this.\u0275fac=function(N){return new(N||ve)};static#t=this.\u0275cmp=e.Xpm({type:ve,selectors:[["nz-option-item-group"]],hostAttrs:[1,"ant-select-item","ant-select-item-group"],inputs:{nzLabel:"nzLabel"},decls:1,vars:1,consts:[[4,"nzStringTemplateOutlet"]],template:function(N,S){1&N&&e.YNc(0,ie,2,1,"ng-container",0),2&N&&e.Q6J("nzStringTemplateOutlet",S.nzLabel)},dependencies:[D.f],encapsulation:2,changeDetection:0})}return ve})(),fe=(()=>{class ve{constructor(){this.notFoundContent=void 0,this.menuItemSelectedIcon=null,this.dropdownRender=null,this.activatedValue=null,this.listOfSelectedValue=[],this.mode="default",this.matchWidth=!0,this.itemSize=32,this.maxItemLength=8,this.listOfContainerItem=[],this.itemClick=new e.vpe,this.scrollToBottom=new e.vpe,this.scrolledIndex=0}onItemClick(b){this.itemClick.emit(b)}onItemHover(b){this.activatedValue=b}trackValue(b,N){return N.key}onScrolledIndexChange(b){this.scrolledIndex=b,b===this.listOfContainerItem.length-this.maxItemLength&&this.scrollToBottom.emit()}scrollToActivatedValue(){const b=this.listOfContainerItem.findIndex(N=>this.compareWith(N.key,this.activatedValue));(b=this.scrolledIndex+this.maxItemLength)&&this.cdkVirtualScrollViewport.scrollToIndex(b||0)}ngOnChanges(b){const{listOfContainerItem:N,activatedValue:S}=b;(N||S)&&this.scrollToActivatedValue()}ngAfterViewInit(){setTimeout(()=>this.scrollToActivatedValue())}static#e=this.\u0275fac=function(N){return new(N||ve)};static#t=this.\u0275cmp=e.Xpm({type:ve,selectors:[["nz-option-container"]],viewQuery:function(N,S){if(1&N&&e.Gf(u.N7,7),2&N){let $;e.iGM($=e.CRH())&&(S.cdkVirtualScrollViewport=$.first)}},hostAttrs:[1,"ant-select-dropdown"],inputs:{notFoundContent:"notFoundContent",menuItemSelectedIcon:"menuItemSelectedIcon",dropdownRender:"dropdownRender",activatedValue:"activatedValue",listOfSelectedValue:"listOfSelectedValue",compareWith:"compareWith",mode:"mode",matchWidth:"matchWidth",itemSize:"itemSize",maxItemLength:"maxItemLength",listOfContainerItem:"listOfContainerItem"},outputs:{itemClick:"itemClick",scrollToBottom:"scrollToBottom"},exportAs:["nzOptionContainer"],features:[e.TTD],decls:5,vars:14,consts:[["class","ant-select-item-empty",4,"ngIf"],[3,"itemSize","maxBufferPx","minBufferPx","scrolledIndexChange"],["cdkVirtualFor","",3,"cdkVirtualForOf","cdkVirtualForTrackBy","cdkVirtualForTemplateCacheSize"],[3,"ngTemplateOutlet"],[1,"ant-select-item-empty"],["nzComponentName","select",3,"specificContent"],[3,"ngSwitch"],[3,"nzLabel",4,"ngSwitchCase"],[3,"icon","customContent","template","grouped","disabled","showState","title","label","compareWith","activatedValue","listOfSelectedValue","value","itemHover","itemClick",4,"ngSwitchCase"],[3,"nzLabel"],[3,"icon","customContent","template","grouped","disabled","showState","title","label","compareWith","activatedValue","listOfSelectedValue","value","itemHover","itemClick"]],template:function(N,S){1&N&&(e.TgZ(0,"div"),e.YNc(1,ae,2,1,"div",0),e.TgZ(2,"cdk-virtual-scroll-viewport",1),e.NdJ("scrolledIndexChange",function(R){return S.onScrolledIndexChange(R)}),e.YNc(3,Ye,3,3,"ng-template",2),e.qZA(),e.YNc(4,q,0,0,"ng-template",3),e.qZA()),2&N&&(e.xp6(1),e.Q6J("ngIf",0===S.listOfContainerItem.length),e.xp6(1),e.Udp("height",S.listOfContainerItem.length*S.itemSize,"px")("max-height",S.itemSize*S.maxItemLength,"px"),e.ekj("full-width",!S.matchWidth),e.Q6J("itemSize",S.itemSize)("maxBufferPx",S.itemSize*S.maxItemLength)("minBufferPx",S.itemSize*S.maxItemLength),e.xp6(1),e.Q6J("cdkVirtualForOf",S.listOfContainerItem)("cdkVirtualForTrackBy",S.trackValue)("cdkVirtualForTemplateCacheSize",0),e.xp6(1),e.Q6J("ngTemplateOutlet",S.dropdownRender))},dependencies:[z.O5,z.tP,z.RF,z.n9,u.xd,u.x0,u.N7,M.gB,Qe,ke],encapsulation:2,changeDetection:0})}return ve})(),qe=(()=>{class ve{constructor(b,N){this.nzOptionGroupComponent=b,this.destroy$=N,this.changes=new n.x,this.groupLabel=null,this.nzLabel=null,this.nzValue=null,this.nzDisabled=!1,this.nzHide=!1,this.nzCustomContent=!1}ngOnInit(){this.nzOptionGroupComponent&&this.nzOptionGroupComponent.changes.pipe((0,v.O)(!0),(0,h.R)(this.destroy$)).subscribe(()=>{this.groupLabel=this.nzOptionGroupComponent.nzLabel})}ngOnChanges(){this.changes.next()}static#e=this.\u0275fac=function(N){return new(N||ve)(e.Y36(xt,8),e.Y36(y.kn))};static#t=this.\u0275cmp=e.Xpm({type:ve,selectors:[["nz-option"]],viewQuery:function(N,S){if(1&N&&e.Gf(e.Rgc,7),2&N){let $;e.iGM($=e.CRH())&&(S.template=$.first)}},inputs:{nzTitle:"nzTitle",nzLabel:"nzLabel",nzValue:"nzValue",nzKey:"nzKey",nzDisabled:"nzDisabled",nzHide:"nzHide",nzCustomContent:"nzCustomContent"},exportAs:["nzOption"],features:[e._Bn([y.kn]),e.TTD],ngContentSelectors:pe,decls:1,vars:0,template:function(N,S){1&N&&(e.F$t(),e.YNc(0,ye,1,0,"ng-template"))},encapsulation:2,changeDetection:0})}return(0,_.gn)([(0,P.yF)()],ve.prototype,"nzDisabled",void 0),(0,_.gn)([(0,P.yF)()],ve.prototype,"nzHide",void 0),(0,_.gn)([(0,P.yF)()],ve.prototype,"nzCustomContent",void 0),ve})(),ge=(()=>{class ve{setCompositionState(b){this.isComposingChange.next(b)}onValueChange(b){this.value=b,this.valueChange.next(b),this.mirrorSync&&this.syncMirrorWidth()}clearInputValue(){this.inputElement.nativeElement.value="",this.onValueChange("")}syncMirrorWidth(){const b=this.mirrorElement.nativeElement,N=this.elementRef.nativeElement,S=this.inputElement.nativeElement;this.renderer.removeStyle(N,"width"),this.renderer.setProperty(b,"textContent",`${S.value}\xa0`),this.renderer.setStyle(N,"width",`${b.scrollWidth}px`)}focus(){this.focusMonitor.focusVia(this.inputElement,"keyboard")}blur(){this.inputElement.nativeElement.blur()}constructor(b,N,S){this.elementRef=b,this.renderer=N,this.focusMonitor=S,this.nzId=null,this.disabled=!1,this.mirrorSync=!1,this.showInput=!0,this.focusTrigger=!1,this.value="",this.autofocus=!1,this.valueChange=new e.vpe,this.isComposingChange=new e.vpe}ngOnChanges(b){const N=this.inputElement.nativeElement,{focusTrigger:S,showInput:$}=b;$&&(this.showInput?this.renderer.removeAttribute(N,"readonly"):this.renderer.setAttribute(N,"readonly","readonly")),S&&!0===S.currentValue&&!1===S.previousValue&&N.focus()}ngAfterViewInit(){this.mirrorSync&&this.syncMirrorWidth(),this.autofocus&&this.focus()}static#e=this.\u0275fac=function(N){return new(N||ve)(e.Y36(e.SBq),e.Y36(e.Qsj),e.Y36(Y.tE))};static#t=this.\u0275cmp=e.Xpm({type:ve,selectors:[["nz-select-search"]],viewQuery:function(N,S){if(1&N&&(e.Gf(ee,7),e.Gf(Be,5)),2&N){let $;e.iGM($=e.CRH())&&(S.inputElement=$.first),e.iGM($=e.CRH())&&(S.mirrorElement=$.first)}},hostAttrs:[1,"ant-select-selection-search"],inputs:{nzId:"nzId",disabled:"disabled",mirrorSync:"mirrorSync",showInput:"showInput",focusTrigger:"focusTrigger",value:"value",autofocus:"autofocus"},outputs:{valueChange:"valueChange",isComposingChange:"isComposingChange"},features:[e._Bn([{provide:k.ve,useValue:!1}]),e.TTD],decls:3,vars:7,consts:[["autocomplete","off",1,"ant-select-selection-search-input",3,"ngModel","disabled","ngModelChange","compositionstart","compositionend"],["inputElement",""],["class","ant-select-selection-search-mirror",4,"ngIf"],[1,"ant-select-selection-search-mirror"],["mirrorElement",""]],template:function(N,S){1&N&&(e.TgZ(0,"input",0,1),e.NdJ("ngModelChange",function(R){return S.onValueChange(R)})("compositionstart",function(){return S.setCompositionState(!0)})("compositionend",function(){return S.setCompositionState(!1)}),e.qZA(),e.YNc(2,Re,2,0,"span",2)),2&N&&(e.Udp("opacity",S.showInput?null:0),e.Q6J("ngModel",S.value)("disabled",S.disabled),e.uIk("id",S.nzId)("autofocus",S.autofocus?"autofocus":null),e.xp6(2),e.Q6J("ngIf",S.mirrorSync))},dependencies:[z.O5,k.Fj,k.JJ,k.On],encapsulation:2,changeDetection:0})}return ve})(),Ze=(()=>{class ve{constructor(){this.disabled=!1,this.label=null,this.deletable=!1,this.removeIcon=null,this.contentTemplateOutletContext=null,this.contentTemplateOutlet=null,this.delete=new e.vpe}onDelete(b){b.preventDefault(),b.stopPropagation(),this.disabled||this.delete.next(b)}static#e=this.\u0275fac=function(N){return new(N||ve)};static#t=this.\u0275cmp=e.Xpm({type:ve,selectors:[["nz-select-item"]],hostAttrs:[1,"ant-select-selection-item"],hostVars:3,hostBindings:function(N,S){2&N&&(e.uIk("title",S.label),e.ekj("ant-select-selection-item-disabled",S.disabled))},inputs:{disabled:"disabled",label:"label",deletable:"deletable",removeIcon:"removeIcon",contentTemplateOutletContext:"contentTemplateOutletContext",contentTemplateOutlet:"contentTemplateOutlet"},outputs:{delete:"delete"},decls:2,vars:5,consts:[[4,"nzStringTemplateOutlet","nzStringTemplateOutletContext"],["class","ant-select-selection-item-remove",3,"click",4,"ngIf"],["class","ant-select-selection-item-content",4,"ngIf","ngIfElse"],["labelTemplate",""],[1,"ant-select-selection-item-content"],[1,"ant-select-selection-item-remove",3,"click"],["nz-icon","","nzType","close",4,"ngIf","ngIfElse"],["nz-icon","","nzType","close"]],template:function(N,S){1&N&&(e.YNc(0,Mt,4,2,"ng-container",0),e.YNc(1,ot,2,2,"span",1)),2&N&&(e.Q6J("nzStringTemplateOutlet",S.contentTemplateOutlet)("nzStringTemplateOutletContext",e.VKq(3,mt,S.contentTemplateOutletContext)),e.xp6(1),e.Q6J("ngIf",S.deletable&&!S.disabled))},dependencies:[z.O5,T.Ls,D.f,x.w],encapsulation:2,changeDetection:0})}return ve})(),$e=(()=>{class ve{constructor(){this.placeholder=null}static#e=this.\u0275fac=function(N){return new(N||ve)};static#t=this.\u0275cmp=e.Xpm({type:ve,selectors:[["nz-select-placeholder"]],hostAttrs:[1,"ant-select-selection-placeholder"],inputs:{placeholder:"placeholder"},decls:1,vars:1,consts:[[4,"nzStringTemplateOutlet"]],template:function(N,S){1&N&&e.YNc(0,we,2,1,"ng-container",0),2&N&&e.Q6J("nzStringTemplateOutlet",S.placeholder)},dependencies:[D.f],encapsulation:2,changeDetection:0})}return ve})(),Ue=(()=>{class ve{updateTemplateVariable(){const b=0===this.listOfTopItem.length;this.isShowPlaceholder=b&&!this.isComposing&&!this.inputValue,this.isShowSingleLabel=!b&&!this.isComposing&&!this.inputValue}isComposingChange(b){this.isComposing=b,this.updateTemplateVariable()}onInputValueChange(b){b!==this.inputValue&&(this.inputValue=b,this.updateTemplateVariable(),this.inputValueChange.emit(b),this.tokenSeparate(b,this.tokenSeparators))}tokenSeparate(b,N){if(b&&b.length&&N.length&&"default"!==this.mode&&((R,he)=>{for(let ze=0;ze0)return!0;return!1})(b,N)){const R=((R,he)=>{const ze=new RegExp(`[${he.join()}]`),bt=R.split(ze).filter(Ft=>Ft);return[...new Set(bt)]})(b,N);this.tokenize.next(R)}}clearInputValue(){this.nzSelectSearchComponent&&this.nzSelectSearchComponent.clearInputValue()}focus(){this.nzSelectSearchComponent&&this.nzSelectSearchComponent.focus()}blur(){this.nzSelectSearchComponent&&this.nzSelectSearchComponent.blur()}trackValue(b,N){return N.nzValue}onDeleteItem(b){!this.disabled&&!b.nzDisabled&&this.deleteItem.next(b)}constructor(b,N,S){this.elementRef=b,this.ngZone=N,this.noAnimation=S,this.nzId=null,this.showSearch=!1,this.placeHolder=null,this.open=!1,this.maxTagCount=1/0,this.autofocus=!1,this.disabled=!1,this.mode="default",this.customTemplate=null,this.maxTagPlaceholder=null,this.removeIcon=null,this.listOfTopItem=[],this.tokenSeparators=[],this.tokenize=new e.vpe,this.inputValueChange=new e.vpe,this.deleteItem=new e.vpe,this.listOfSlicedItem=[],this.isShowPlaceholder=!0,this.isShowSingleLabel=!1,this.isComposing=!1,this.inputValue=null,this.destroy$=new n.x}ngOnChanges(b){const{listOfTopItem:N,maxTagCount:S,customTemplate:$,maxTagPlaceholder:R}=b;if(N&&this.updateTemplateVariable(),N||S||$||R){const he=this.listOfTopItem.slice(0,this.maxTagCount).map(ze=>({nzLabel:ze.nzLabel,nzValue:ze.nzValue,nzDisabled:ze.nzDisabled,contentTemplateOutlet:this.customTemplate,contentTemplateOutletContext:ze}));if(this.listOfTopItem.length>this.maxTagCount){const ze=`+ ${this.listOfTopItem.length-this.maxTagCount} ...`,bt=this.listOfTopItem.map(sn=>sn.nzValue),Ft={nzLabel:ze,nzValue:"$$__nz_exceeded_item",nzDisabled:!0,contentTemplateOutlet:this.maxTagPlaceholder,contentTemplateOutletContext:bt.slice(this.maxTagCount)};he.push(Ft)}this.listOfSlicedItem=he}}ngOnInit(){this.ngZone.runOutsideAngular(()=>{(0,t.R)(this.elementRef.nativeElement,"click").pipe((0,h.R)(this.destroy$)).subscribe(b=>{b.target!==this.nzSelectSearchComponent.inputElement.nativeElement&&this.nzSelectSearchComponent.focus()}),(0,t.R)(this.elementRef.nativeElement,"keydown").pipe((0,h.R)(this.destroy$)).subscribe(b=>{b.target instanceof HTMLInputElement&&b.keyCode===O.ZH&&"default"!==this.mode&&!b.target.value&&this.listOfTopItem.length>0&&(b.preventDefault(),this.ngZone.run(()=>this.onDeleteItem(this.listOfTopItem[this.listOfTopItem.length-1])))})})}ngOnDestroy(){this.destroy$.next()}static#e=this.\u0275fac=function(N){return new(N||ve)(e.Y36(e.SBq),e.Y36(e.R0b),e.Y36(G.P,9))};static#t=this.\u0275cmp=e.Xpm({type:ve,selectors:[["nz-select-top-control"]],viewQuery:function(N,S){if(1&N&&e.Gf(ge,5),2&N){let $;e.iGM($=e.CRH())&&(S.nzSelectSearchComponent=$.first)}},hostAttrs:[1,"ant-select-selector"],inputs:{nzId:"nzId",showSearch:"showSearch",placeHolder:"placeHolder",open:"open",maxTagCount:"maxTagCount",autofocus:"autofocus",disabled:"disabled",mode:"mode",customTemplate:"customTemplate",maxTagPlaceholder:"maxTagPlaceholder",removeIcon:"removeIcon",listOfTopItem:"listOfTopItem",tokenSeparators:"tokenSeparators"},outputs:{tokenize:"tokenize",inputValueChange:"inputValueChange",deleteItem:"deleteItem"},exportAs:["nzSelectTopControl"],features:[e.TTD],decls:4,vars:3,consts:[[3,"ngSwitch"],[4,"ngSwitchCase"],[4,"ngSwitchDefault"],[3,"placeholder",4,"ngIf"],[3,"nzId","disabled","value","showInput","mirrorSync","autofocus","focusTrigger","isComposingChange","valueChange"],[3,"deletable","disabled","removeIcon","label","contentTemplateOutlet","contentTemplateOutletContext",4,"ngIf"],[3,"deletable","disabled","removeIcon","label","contentTemplateOutlet","contentTemplateOutletContext"],[3,"removeIcon","label","disabled","contentTemplateOutlet","deletable","contentTemplateOutletContext","delete",4,"ngFor","ngForOf","ngForTrackBy"],[3,"nzId","disabled","value","autofocus","showInput","mirrorSync","focusTrigger","isComposingChange","valueChange"],[3,"removeIcon","label","disabled","contentTemplateOutlet","deletable","contentTemplateOutletContext","delete"],[3,"placeholder"]],template:function(N,S){1&N&&(e.ynx(0,0),e.YNc(1,U,3,8,"ng-container",1),e.YNc(2,Ee,3,9,"ng-container",2),e.BQk(),e.YNc(3,Ie,1,1,"nz-select-placeholder",3)),2&N&&(e.Q6J("ngSwitch",S.mode),e.xp6(1),e.Q6J("ngSwitchCase","default"),e.xp6(2),e.Q6J("ngIf",S.isShowPlaceholder))},dependencies:[z.sg,z.O5,z.RF,z.n9,z.ED,x.w,ge,Ze,$e],encapsulation:2,changeDetection:0})}return ve})(),wt=(()=>{class ve{constructor(){this.clearIcon=null,this.clear=new e.vpe}onClick(b){b.preventDefault(),b.stopPropagation(),this.clear.emit(b)}static#e=this.\u0275fac=function(N){return new(N||ve)};static#t=this.\u0275cmp=e.Xpm({type:ve,selectors:[["nz-select-clear"]],hostAttrs:[1,"ant-select-clear"],hostBindings:function(N,S){1&N&&e.NdJ("click",function(R){return S.onClick(R)})},inputs:{clearIcon:"clearIcon"},outputs:{clear:"clear"},decls:1,vars:2,consts:[["nz-icon","","nzType","close-circle","nzTheme","fill","class","ant-select-close-icon",4,"ngIf","ngIfElse"],["nz-icon","","nzType","close-circle","nzTheme","fill",1,"ant-select-close-icon"]],template:function(N,S){1&N&&e.YNc(0,Ne,1,0,"span",0),2&N&&e.Q6J("ngIf",!S.clearIcon)("ngIfElse",S.clearIcon)},dependencies:[z.O5,T.Ls,x.w],encapsulation:2,changeDetection:0})}return ve})(),De=(()=>{class ve{constructor(){this.loading=!1,this.search=!1,this.showArrow=!1,this.suffixIcon=null,this.feedbackIcon=null}static#e=this.\u0275fac=function(N){return new(N||ve)};static#t=this.\u0275cmp=e.Xpm({type:ve,selectors:[["nz-select-arrow"]],hostAttrs:[1,"ant-select-arrow"],hostVars:2,hostBindings:function(N,S){2&N&&e.ekj("ant-select-arrow-loading",S.loading)},inputs:{loading:"loading",search:"search",showArrow:"showArrow",suffixIcon:"suffixIcon",feedbackIcon:"feedbackIcon"},decls:4,vars:3,consts:[["nz-icon","","nzType","loading",4,"ngIf","ngIfElse"],["defaultArrow",""],[4,"nzStringTemplateOutlet"],["nz-icon","","nzType","loading"],[4,"ngIf","ngIfElse"],["suffixTemplate",""],["nz-icon","","nzType","down",4,"ngIf"],["nz-icon","","nzType","search",4,"ngIf"],["nz-icon","","nzType","down"],["nz-icon","","nzType","search"],["nz-icon","",3,"nzType",4,"ngIf"],["nz-icon","",3,"nzType"]],template:function(N,S){if(1&N&&(e.YNc(0,pt,1,0,"span",0),e.YNc(1,Wt,3,2,"ng-template",null,1,e.W1O),e.YNc(3,Vt,2,1,"ng-container",2)),2&N){const $=e.MAs(2);e.Q6J("ngIf",S.loading)("ngIfElse",$),e.xp6(3),e.Q6J("nzStringTemplateOutlet",S.feedbackIcon)}},dependencies:[z.O5,T.Ls,D.f,x.w],encapsulation:2,changeDetection:0})}return ve})();const Pe=(ve,it)=>!(!it||!it.nzLabel)&&it.nzLabel.toString().toLowerCase().indexOf(ve.toLowerCase())>-1;let Ge=(()=>{class ve{set nzShowArrow(b){this._nzShowArrow=b}get nzShowArrow(){return void 0===this._nzShowArrow?"default"===this.nzMode:this._nzShowArrow}generateTagItem(b){return{nzValue:b,nzLabel:b,type:"item"}}onItemClick(b){if(this.activatedValue=b,"default"===this.nzMode)(0===this.listOfValue.length||!this.compareWith(this.listOfValue[0],b))&&this.updateListOfValue([b]),this.setOpenState(!1);else{const N=this.listOfValue.findIndex(S=>this.compareWith(S,b));if(-1!==N){const S=this.listOfValue.filter(($,R)=>R!==N);this.updateListOfValue(S)}else if(this.listOfValue.length!this.compareWith(S,b.nzValue));this.updateListOfValue(N),this.clearInput()}updateListOfContainerItem(){let b=this.listOfTagAndTemplateItem.filter($=>!$.nzHide).filter($=>!(!this.nzServerSearch&&this.searchValue)||this.nzFilterOption(this.searchValue,$));if("tags"===this.nzMode&&this.searchValue){const $=this.listOfTagAndTemplateItem.find(R=>R.nzLabel===this.searchValue);if($)this.activatedValue=$.nzValue;else{const R=this.generateTagItem(this.searchValue);b=[R,...b],this.activatedValue=R.nzValue}}const N=b.find($=>$.nzLabel===this.searchValue)||b.find($=>this.compareWith($.nzValue,this.activatedValue))||b.find($=>this.compareWith($.nzValue,this.listOfValue[0]))||b[0];this.activatedValue=N&&N.nzValue||null;let S=[];this.isReactiveDriven?S=[...new Set(this.nzOptions.filter($=>$.groupLabel).map($=>$.groupLabel))]:this.listOfNzOptionGroupComponent&&(S=this.listOfNzOptionGroupComponent.map($=>$.nzLabel)),S.forEach($=>{const R=b.findIndex(he=>$===he.groupLabel);R>-1&&b.splice(R,0,{groupLabel:$,type:"group",key:$})}),this.listOfContainerItem=[...b],this.updateCdkConnectedOverlayPositions()}clearInput(){this.nzSelectTopControlComponent.clearInputValue()}updateListOfValue(b){const S=(($,R)=>"default"===this.nzMode?$.length>0?$[0]:null:$)(b);this.value!==S&&(this.listOfValue=b,this.listOfValue$.next(b),this.value=S,this.onChange(this.value))}onTokenSeparate(b){const N=this.listOfTagAndTemplateItem.filter(S=>-1!==b.findIndex($=>$===S.nzLabel)).map(S=>S.nzValue).filter(S=>-1===this.listOfValue.findIndex($=>this.compareWith($,S)));if("multiple"===this.nzMode)this.updateListOfValue([...this.listOfValue,...N]);else if("tags"===this.nzMode){const S=b.filter($=>-1===this.listOfTagAndTemplateItem.findIndex(R=>R.nzLabel===$));this.updateListOfValue([...this.listOfValue,...N,...S])}this.clearInput()}onKeyDown(b){if(this.nzDisabled)return;const N=this.listOfContainerItem.filter($=>"item"===$.type).filter($=>!$.nzDisabled),S=N.findIndex($=>this.compareWith($.nzValue,this.activatedValue));switch(b.keyCode){case O.LH:b.preventDefault(),this.nzOpen&&N.length>0&&(this.activatedValue=N[S>0?S-1:N.length-1].nzValue);break;case O.JH:b.preventDefault(),this.nzOpen&&N.length>0?this.activatedValue=N[S{this.triggerWidth=this.originElement.nativeElement.getBoundingClientRect().width,b!==this.triggerWidth&&this.cdr.detectChanges()})}}updateCdkConnectedOverlayPositions(){(0,_e.e)(()=>{this.cdkConnectedOverlay?.overlayRef?.updatePosition()})}constructor(b,N,S,$,R,he,ze,bt,Ft,sn,pn,vn){this.ngZone=b,this.destroy$=N,this.nzConfigService=S,this.cdr=$,this.host=R,this.renderer=he,this.platform=ze,this.focusMonitor=bt,this.directionality=Ft,this.noAnimation=sn,this.nzFormStatusService=pn,this.nzFormNoStatusService=vn,this._nzModuleName="select",this.nzId=null,this.nzSize="default",this.nzStatus="",this.nzOptionHeightPx=32,this.nzOptionOverflowSize=8,this.nzDropdownClassName=null,this.nzDropdownMatchSelectWidth=!0,this.nzDropdownStyle=null,this.nzNotFoundContent=void 0,this.nzPlaceHolder=null,this.nzPlacement=null,this.nzMaxTagCount=1/0,this.nzDropdownRender=null,this.nzCustomTemplate=null,this.nzSuffixIcon=null,this.nzClearIcon=null,this.nzRemoveIcon=null,this.nzMenuItemSelectedIcon=null,this.nzTokenSeparators=[],this.nzMaxTagPlaceholder=null,this.nzMaxMultipleCount=1/0,this.nzMode="default",this.nzFilterOption=Pe,this.compareWith=(Dn,Mn)=>Dn===Mn,this.nzAllowClear=!1,this.nzBorderless=!1,this.nzShowSearch=!1,this.nzLoading=!1,this.nzAutoFocus=!1,this.nzAutoClearSearchValue=!0,this.nzServerSearch=!1,this.nzDisabled=!1,this.nzOpen=!1,this.nzSelectOnTab=!1,this.nzBackdrop=!1,this.nzOptions=[],this.nzOnSearch=new e.vpe,this.nzScrollToBottom=new e.vpe,this.nzOpenChange=new e.vpe,this.nzBlur=new e.vpe,this.nzFocus=new e.vpe,this.listOfValue$=new i.X([]),this.listOfTemplateItem$=new i.X([]),this.listOfTagAndTemplateItem=[],this.searchValue="",this.isReactiveDriven=!1,this.requestId=-1,this.isNzDisableFirstChange=!0,this.onChange=()=>{},this.onTouched=()=>{},this.dropDownPosition="bottomLeft",this.triggerWidth=null,this.listOfContainerItem=[],this.listOfTopItem=[],this.activatedValue=null,this.listOfValue=[],this.focused=!1,this.dir="ltr",this.positions=[],this.prefixCls="ant-select",this.statusCls={},this.status="",this.hasFeedback=!1}writeValue(b){if(this.value!==b){this.value=b;const S=(($,R)=>null==$?[]:"default"===this.nzMode?[$]:$)(b);this.listOfValue=S,this.listOfValue$.next(S),this.cdr.markForCheck()}}registerOnChange(b){this.onChange=b}registerOnTouched(b){this.onTouched=b}setDisabledState(b){this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||b,this.isNzDisableFirstChange=!1,this.nzDisabled&&this.setOpenState(!1),this.cdr.markForCheck()}ngOnChanges(b){const{nzOpen:N,nzDisabled:S,nzOptions:$,nzStatus:R,nzPlacement:he}=b;if(N&&this.onOpenChange(),S&&this.nzDisabled&&this.setOpenState(!1),$){this.isReactiveDriven=!0;const bt=(this.nzOptions||[]).map(Ft=>({template:Ft.label instanceof e.Rgc?Ft.label:null,nzTitle:this.getTitle(Ft.title,Ft.label),nzLabel:"string"==typeof Ft.label||"number"==typeof Ft.label?Ft.label:null,nzValue:Ft.value,nzDisabled:Ft.disabled||!1,nzHide:Ft.hide||!1,nzCustomContent:Ft.label instanceof e.Rgc,groupLabel:Ft.groupLabel||null,type:"item",key:void 0===Ft.key?Ft.value:Ft.key}));this.listOfTemplateItem$.next(bt)}if(R&&this.setStatusStyles(this.nzStatus,this.hasFeedback),he){const{currentValue:ze}=he;this.dropDownPosition=ze;const bt=["bottomLeft","topLeft","bottomRight","topRight"];this.positions=ze&&bt.includes(ze)?[K.yW[ze]]:bt.map(Ft=>K.yW[Ft])}}ngOnInit(){this.nzFormStatusService?.formStatusChanges.pipe((0,g.x)((b,N)=>b.status===N.status&&b.hasFeedback===N.hasFeedback),(0,d.M)(this.nzFormNoStatusService?this.nzFormNoStatusService.noFormStatus:(0,l.of)(!1)),(0,p.U)(([{status:b,hasFeedback:N},S])=>({status:S?"":b,hasFeedback:N})),(0,h.R)(this.destroy$)).subscribe(({status:b,hasFeedback:N})=>{this.setStatusStyles(b,N)}),this.focusMonitor.monitor(this.host,!0).pipe((0,h.R)(this.destroy$)).subscribe(b=>{b?(this.focused=!0,this.cdr.markForCheck(),this.nzFocus.emit()):(this.focused=!1,this.cdr.markForCheck(),this.nzBlur.emit(),Promise.resolve().then(()=>{this.onTouched()}))}),(0,C.a)([this.listOfValue$,this.listOfTemplateItem$]).pipe((0,h.R)(this.destroy$)).subscribe(([b,N])=>{const S=b.filter(()=>"tags"===this.nzMode).filter($=>-1===N.findIndex(R=>this.compareWith(R.nzValue,$))).map($=>this.listOfTopItem.find(R=>this.compareWith(R.nzValue,$))||this.generateTagItem($));this.listOfTagAndTemplateItem=[...N,...S],this.listOfTopItem=this.listOfValue.map($=>[...this.listOfTagAndTemplateItem,...this.listOfTopItem].find(R=>this.compareWith($,R.nzValue))).filter($=>!!$),this.updateListOfContainerItem()}),this.directionality.change?.pipe((0,h.R)(this.destroy$)).subscribe(b=>{this.dir=b,this.cdr.detectChanges()}),this.nzConfigService.getConfigChangeEventForComponent("select").pipe((0,h.R)(this.destroy$)).subscribe(()=>{this.cdr.markForCheck()}),this.dir=this.directionality.value,this.ngZone.runOutsideAngular(()=>(0,t.R)(this.host.nativeElement,"click").pipe((0,h.R)(this.destroy$)).subscribe(()=>{this.nzOpen&&this.nzShowSearch||this.nzDisabled||this.ngZone.run(()=>this.setOpenState(!this.nzOpen))})),this.cdkConnectedOverlay.overlayKeydown.pipe((0,h.R)(this.destroy$)).subscribe(b=>{b.keyCode===O.hY&&this.setOpenState(!1)})}ngAfterContentInit(){this.isReactiveDriven||(0,E.T)(this.listOfNzOptionGroupComponent.changes,this.listOfNzOptionComponent.changes).pipe((0,v.O)(!0),(0,f.w)(()=>(0,E.T)(this.listOfNzOptionComponent.changes,this.listOfNzOptionGroupComponent.changes,...this.listOfNzOptionComponent.map(b=>b.changes),...this.listOfNzOptionGroupComponent.map(b=>b.changes)).pipe((0,v.O)(!0))),(0,h.R)(this.destroy$)).subscribe(()=>{const b=this.listOfNzOptionComponent.toArray().map(N=>{const{template:S,nzLabel:$,nzValue:R,nzKey:he,nzDisabled:ze,nzHide:bt,nzCustomContent:Ft,groupLabel:sn}=N;return{template:S,nzLabel:$,nzValue:R,nzDisabled:ze,nzHide:bt,nzCustomContent:Ft,groupLabel:sn,nzTitle:this.getTitle(N.nzTitle,N.nzLabel),type:"item",key:void 0===he?R:he}});this.listOfTemplateItem$.next(b),this.cdr.markForCheck()})}ngOnDestroy(){(0,_e.h)(this.requestId),this.focusMonitor.stopMonitoring(this.host)}setStatusStyles(b,N){this.status=b,this.hasFeedback=N,this.cdr.markForCheck(),this.statusCls=(0,P.Zu)(this.prefixCls,b,N),Object.keys(this.statusCls).forEach(S=>{this.statusCls[S]?this.renderer.addClass(this.host.nativeElement,S):this.renderer.removeClass(this.host.nativeElement,S)})}getTitle(b,N){let S;return void 0===b?("string"==typeof N||"number"==typeof N)&&(S=N.toString()):("string"==typeof b||"number"==typeof b)&&(S=b.toString()),S}static#e=this.\u0275fac=function(N){return new(N||ve)(e.Y36(e.R0b),e.Y36(y.kn),e.Y36(W.jY),e.Y36(e.sBO),e.Y36(e.SBq),e.Y36(e.Qsj),e.Y36(H.t4),e.Y36(Y.tE),e.Y36(j.Is,8),e.Y36(G.P,9),e.Y36(te.kH,8),e.Y36(te.yW,8))};static#t=this.\u0275cmp=e.Xpm({type:ve,selectors:[["nz-select"]],contentQueries:function(N,S,$){if(1&N&&(e.Suo($,qe,5),e.Suo($,xt,5)),2&N){let R;e.iGM(R=e.CRH())&&(S.listOfNzOptionComponent=R),e.iGM(R=e.CRH())&&(S.listOfNzOptionGroupComponent=R)}},viewQuery:function(N,S){if(1&N&&(e.Gf(A.xu,7,e.SBq),e.Gf(A.pI,7),e.Gf(Ue,7),e.Gf(xt,7,e.SBq),e.Gf(Ue,7,e.SBq)),2&N){let $;e.iGM($=e.CRH())&&(S.originElement=$.first),e.iGM($=e.CRH())&&(S.cdkConnectedOverlay=$.first),e.iGM($=e.CRH())&&(S.nzSelectTopControlComponent=$.first),e.iGM($=e.CRH())&&(S.nzOptionGroupComponentElement=$.first),e.iGM($=e.CRH())&&(S.nzSelectTopControlComponentElement=$.first)}},hostAttrs:[1,"ant-select"],hostVars:26,hostBindings:function(N,S){2&N&&e.ekj("ant-select-in-form-item",!!S.nzFormStatusService)("ant-select-lg","large"===S.nzSize)("ant-select-sm","small"===S.nzSize)("ant-select-show-arrow",S.nzShowArrow)("ant-select-disabled",S.nzDisabled)("ant-select-show-search",(S.nzShowSearch||"default"!==S.nzMode)&&!S.nzDisabled)("ant-select-allow-clear",S.nzAllowClear)("ant-select-borderless",S.nzBorderless)("ant-select-open",S.nzOpen)("ant-select-focused",S.nzOpen||S.focused)("ant-select-single","default"===S.nzMode)("ant-select-multiple","default"!==S.nzMode)("ant-select-rtl","rtl"===S.dir)},inputs:{nzId:"nzId",nzSize:"nzSize",nzStatus:"nzStatus",nzOptionHeightPx:"nzOptionHeightPx",nzOptionOverflowSize:"nzOptionOverflowSize",nzDropdownClassName:"nzDropdownClassName",nzDropdownMatchSelectWidth:"nzDropdownMatchSelectWidth",nzDropdownStyle:"nzDropdownStyle",nzNotFoundContent:"nzNotFoundContent",nzPlaceHolder:"nzPlaceHolder",nzPlacement:"nzPlacement",nzMaxTagCount:"nzMaxTagCount",nzDropdownRender:"nzDropdownRender",nzCustomTemplate:"nzCustomTemplate",nzSuffixIcon:"nzSuffixIcon",nzClearIcon:"nzClearIcon",nzRemoveIcon:"nzRemoveIcon",nzMenuItemSelectedIcon:"nzMenuItemSelectedIcon",nzTokenSeparators:"nzTokenSeparators",nzMaxTagPlaceholder:"nzMaxTagPlaceholder",nzMaxMultipleCount:"nzMaxMultipleCount",nzMode:"nzMode",nzFilterOption:"nzFilterOption",compareWith:"compareWith",nzAllowClear:"nzAllowClear",nzBorderless:"nzBorderless",nzShowSearch:"nzShowSearch",nzLoading:"nzLoading",nzAutoFocus:"nzAutoFocus",nzAutoClearSearchValue:"nzAutoClearSearchValue",nzServerSearch:"nzServerSearch",nzDisabled:"nzDisabled",nzOpen:"nzOpen",nzSelectOnTab:"nzSelectOnTab",nzBackdrop:"nzBackdrop",nzOptions:"nzOptions",nzShowArrow:"nzShowArrow"},outputs:{nzOnSearch:"nzOnSearch",nzScrollToBottom:"nzScrollToBottom",nzOpenChange:"nzOpenChange",nzBlur:"nzBlur",nzFocus:"nzFocus"},exportAs:["nzSelect"],features:[e._Bn([y.kn,{provide:k.JU,useExisting:(0,e.Gpc)(()=>ve),multi:!0}]),e.TTD],decls:5,vars:25,consts:[["cdkOverlayOrigin","",3,"nzId","open","disabled","mode","nzNoAnimation","maxTagPlaceholder","removeIcon","placeHolder","maxTagCount","customTemplate","tokenSeparators","showSearch","autofocus","listOfTopItem","inputValueChange","tokenize","deleteItem","keydown"],["origin","cdkOverlayOrigin"],[3,"showArrow","loading","search","suffixIcon","feedbackIcon",4,"ngIf"],[3,"clearIcon","clear",4,"ngIf"],["cdkConnectedOverlay","","nzConnectedOverlay","",3,"cdkConnectedOverlayHasBackdrop","cdkConnectedOverlayMinWidth","cdkConnectedOverlayWidth","cdkConnectedOverlayOrigin","cdkConnectedOverlayTransformOriginOn","cdkConnectedOverlayPanelClass","cdkConnectedOverlayOpen","cdkConnectedOverlayPositions","overlayOutsideClick","detach","positionChange"],[3,"showArrow","loading","search","suffixIcon","feedbackIcon"],["feedbackIconTpl",""],[3,"status",4,"ngIf"],[3,"status"],[3,"clearIcon","clear"],[3,"ngStyle","itemSize","maxItemLength","matchWidth","nzNoAnimation","listOfContainerItem","menuItemSelectedIcon","notFoundContent","activatedValue","listOfSelectedValue","dropdownRender","compareWith","mode","keydown","itemClick","scrollToBottom"]],template:function(N,S){if(1&N&&(e.TgZ(0,"nz-select-top-control",0,1),e.NdJ("inputValueChange",function(R){return S.onInputValueChange(R)})("tokenize",function(R){return S.onTokenSeparate(R)})("deleteItem",function(R){return S.onItemDelete(R)})("keydown",function(R){return S.onKeyDown(R)}),e.qZA(),e.YNc(2,et,3,5,"nz-select-arrow",2),e.YNc(3,It,1,1,"nz-select-clear",3),e.YNc(4,Ot,1,23,"ng-template",4),e.NdJ("overlayOutsideClick",function(R){return S.onClickOutside(R)})("detach",function(){return S.setOpenState(!1)})("positionChange",function(R){return S.onPositionChange(R)})),2&N){const $=e.MAs(1);e.Q6J("nzId",S.nzId)("open",S.nzOpen)("disabled",S.nzDisabled)("mode",S.nzMode)("@.disabled",!(null==S.noAnimation||!S.noAnimation.nzNoAnimation))("nzNoAnimation",null==S.noAnimation?null:S.noAnimation.nzNoAnimation)("maxTagPlaceholder",S.nzMaxTagPlaceholder)("removeIcon",S.nzRemoveIcon)("placeHolder",S.nzPlaceHolder)("maxTagCount",S.nzMaxTagCount)("customTemplate",S.nzCustomTemplate)("tokenSeparators",S.nzTokenSeparators)("showSearch",S.nzShowSearch)("autofocus",S.nzAutoFocus)("listOfTopItem",S.listOfTopItem),e.xp6(2),e.Q6J("ngIf",S.nzShowArrow||S.hasFeedback&&!!S.status),e.xp6(1),e.Q6J("ngIf",S.nzAllowClear&&!S.nzDisabled&&S.listOfValue.length),e.xp6(1),e.Q6J("cdkConnectedOverlayHasBackdrop",S.nzBackdrop)("cdkConnectedOverlayMinWidth",S.nzDropdownMatchSelectWidth?null:S.triggerWidth)("cdkConnectedOverlayWidth",S.nzDropdownMatchSelectWidth?S.triggerWidth:null)("cdkConnectedOverlayOrigin",$)("cdkConnectedOverlayTransformOriginOn",".ant-select-dropdown")("cdkConnectedOverlayPanelClass",S.nzDropdownClassName)("cdkConnectedOverlayOpen",S.nzOpen)("cdkConnectedOverlayPositions",S.positions)}},dependencies:[z.O5,z.PC,A.pI,A.xu,K.hQ,G.P,x.w,te.w_,fe,Ue,wt,De],encapsulation:2,data:{animation:[F.mF]},changeDetection:0})}return(0,_.gn)([(0,W.oS)()],ve.prototype,"nzSuffixIcon",void 0),(0,_.gn)([(0,P.yF)()],ve.prototype,"nzAllowClear",void 0),(0,_.gn)([(0,W.oS)(),(0,P.yF)()],ve.prototype,"nzBorderless",void 0),(0,_.gn)([(0,P.yF)()],ve.prototype,"nzShowSearch",void 0),(0,_.gn)([(0,P.yF)()],ve.prototype,"nzLoading",void 0),(0,_.gn)([(0,P.yF)()],ve.prototype,"nzAutoFocus",void 0),(0,_.gn)([(0,P.yF)()],ve.prototype,"nzAutoClearSearchValue",void 0),(0,_.gn)([(0,P.yF)()],ve.prototype,"nzServerSearch",void 0),(0,_.gn)([(0,P.yF)()],ve.prototype,"nzDisabled",void 0),(0,_.gn)([(0,P.yF)()],ve.prototype,"nzOpen",void 0),(0,_.gn)([(0,P.yF)()],ve.prototype,"nzSelectOnTab",void 0),(0,_.gn)([(0,W.oS)(),(0,P.yF)()],ve.prototype,"nzBackdrop",void 0),ve})(),Ke=(()=>{class ve{static#e=this.\u0275fac=function(N){return new(N||ve)};static#t=this.\u0275mod=e.oAB({type:ve});static#n=this.\u0275inj=e.cJS({imports:[j.vT,z.ez,ne.YI,k.u5,H.ud,A.U8,T.PV,D.T,M.Xo,K.e4,G.g,x.a,te.mJ,u.Cl,Y.rt]})}return ve})()},24139:(nt,I,o)=>{"use strict";o.d(I,{H0:()=>O,ng:()=>P});var e=o(65879),n=o(27754),t=o(96814),i=o(97582),l=o(49388);const E=["nzType","avatar"];function M(A,k){if(1&A&&(e.TgZ(0,"div",5),e._UZ(1,"nz-skeleton-element",6),e.qZA()),2&A){const F=e.oxw(2);e.xp6(1),e.Q6J("nzSize",F.avatar.size||"default")("nzShape",F.avatar.shape||"circle")}}function h(A,k){if(1&A&&e._UZ(0,"h3",7),2&A){const F=e.oxw(2);e.Udp("width",F.toCSSUnit(F.title.width))}}function v(A,k){if(1&A&&e._UZ(0,"li"),2&A){const F=k.index,W=e.oxw(3);e.Udp("width",W.toCSSUnit(W.widthList[F]))}}function g(A,k){if(1&A&&(e.TgZ(0,"ul",8),e.YNc(1,v,1,2,"li",9),e.qZA()),2&A){const F=e.oxw(2);e.xp6(1),e.Q6J("ngForOf",F.rowsList)}}function d(A,k){if(1&A&&(e.ynx(0),e.YNc(1,M,2,2,"div",1),e.TgZ(2,"div",2),e.YNc(3,h,1,2,"h3",3),e.YNc(4,g,2,1,"ul",4),e.qZA(),e.BQk()),2&A){const F=e.oxw();e.xp6(1),e.Q6J("ngIf",!!F.nzAvatar),e.xp6(2),e.Q6J("ngIf",!!F.nzTitle),e.xp6(1),e.Q6J("ngIf",!!F.nzParagraph)}}function p(A,k){1&A&&(e.ynx(0),e.Hsn(1),e.BQk())}const f=["*"];let y=(()=>{class A{constructor(){this.nzActive=!1,this.nzBlock=!1}static#e=this.\u0275fac=function(W){return new(W||A)};static#t=this.\u0275dir=e.lG2({type:A,selectors:[["nz-skeleton-element"]],hostAttrs:[1,"ant-skeleton","ant-skeleton-element"],hostVars:4,hostBindings:function(W,K){2&W&&e.ekj("ant-skeleton-active",K.nzActive)("ant-skeleton-block",K.nzBlock)},inputs:{nzActive:"nzActive",nzType:"nzType",nzBlock:"nzBlock"}})}return(0,i.gn)([(0,n.yF)()],A.prototype,"nzBlock",void 0),A})(),x=(()=>{class A{constructor(){this.nzShape="circle",this.nzSize="default",this.styleMap={}}ngOnChanges(F){if(F.nzSize&&"number"==typeof this.nzSize){const W=`${this.nzSize}px`;this.styleMap={width:W,height:W,"line-height":W}}else this.styleMap={}}static#e=this.\u0275fac=function(W){return new(W||A)};static#t=this.\u0275cmp=e.Xpm({type:A,selectors:[["nz-skeleton-element","nzType","avatar"]],inputs:{nzShape:"nzShape",nzSize:"nzSize"},features:[e.TTD],attrs:E,decls:1,vars:9,consts:[[1,"ant-skeleton-avatar",3,"ngStyle"]],template:function(W,K){1&W&&e._UZ(0,"span",0),2&W&&(e.ekj("ant-skeleton-avatar-square","square"===K.nzShape)("ant-skeleton-avatar-circle","circle"===K.nzShape)("ant-skeleton-avatar-lg","large"===K.nzSize)("ant-skeleton-avatar-sm","small"===K.nzSize),e.Q6J("ngStyle",K.styleMap))},dependencies:[t.PC],encapsulation:2,changeDetection:0})}return A})(),P=(()=>{class A{constructor(F){this.cdr=F,this.nzActive=!1,this.nzLoading=!0,this.nzRound=!1,this.nzTitle=!0,this.nzAvatar=!1,this.nzParagraph=!0,this.rowsList=[],this.widthList=[]}toCSSUnit(F=""){return(0,n.WX)(F)}getTitleProps(){const F=!!this.nzAvatar,W=!!this.nzParagraph;let K="";return!F&&W?K="38%":F&&W&&(K="50%"),{width:K,...this.getProps(this.nzTitle)}}getAvatarProps(){return{shape:this.nzTitle&&!this.nzParagraph?"square":"circle",size:"large",...this.getProps(this.nzAvatar)}}getParagraphProps(){const F=!!this.nzAvatar,W=!!this.nzTitle,K={};return(!F||!W)&&(K.width="61%"),K.rows=!F&&W?3:2,{...K,...this.getProps(this.nzParagraph)}}getProps(F){return F&&"object"==typeof F?F:{}}getWidthList(){const{width:F,rows:W}=this.paragraph;let K=[];return F&&Array.isArray(F)?K=F:F&&!Array.isArray(F)&&(K=[],K[W-1]=F),K}updateProps(){this.title=this.getTitleProps(),this.avatar=this.getAvatarProps(),this.paragraph=this.getParagraphProps(),this.rowsList=[...Array(this.paragraph.rows)],this.widthList=this.getWidthList(),this.cdr.markForCheck()}ngOnInit(){this.updateProps()}ngOnChanges(F){(F.nzTitle||F.nzAvatar||F.nzParagraph)&&this.updateProps()}static#e=this.\u0275fac=function(W){return new(W||A)(e.Y36(e.sBO))};static#t=this.\u0275cmp=e.Xpm({type:A,selectors:[["nz-skeleton"]],hostAttrs:[1,"ant-skeleton"],hostVars:6,hostBindings:function(W,K){2&W&&e.ekj("ant-skeleton-with-avatar",!!K.nzAvatar)("ant-skeleton-active",K.nzActive)("ant-skeleton-round",!!K.nzRound)},inputs:{nzActive:"nzActive",nzLoading:"nzLoading",nzRound:"nzRound",nzTitle:"nzTitle",nzAvatar:"nzAvatar",nzParagraph:"nzParagraph"},exportAs:["nzSkeleton"],features:[e.TTD],ngContentSelectors:f,decls:2,vars:2,consts:[[4,"ngIf"],["class","ant-skeleton-header",4,"ngIf"],[1,"ant-skeleton-content"],["class","ant-skeleton-title",3,"width",4,"ngIf"],["class","ant-skeleton-paragraph",4,"ngIf"],[1,"ant-skeleton-header"],["nzType","avatar",3,"nzSize","nzShape"],[1,"ant-skeleton-title"],[1,"ant-skeleton-paragraph"],[3,"width",4,"ngFor","ngForOf"]],template:function(W,K){1&W&&(e.F$t(),e.YNc(0,d,5,3,"ng-container",0),e.YNc(1,p,2,0,"ng-container",0)),2&W&&(e.Q6J("ngIf",K.nzLoading),e.xp6(1),e.Q6J("ngIf",!K.nzLoading))},dependencies:[t.sg,t.O5,y,x],encapsulation:2,changeDetection:0})}return A})(),O=(()=>{class A{static#e=this.\u0275fac=function(W){return new(W||A)};static#t=this.\u0275mod=e.oAB({type:A});static#n=this.\u0275inj=e.cJS({imports:[l.vT,t.ez]})}return A})()},20012:(nt,I,o)=>{"use strict";o.d(I,{N3:()=>be,jS:()=>G});var e=o(97582),n=o(36028),t=o(65879),i=o(60095),l=o(78645),C=o(92438),E=o(63019),u=o(59773),z=o(32181),M=o(99397),h=o(37398),v=o(93997),g=o(27754),d=o(96109),p=o(96814),f=o(62831),y=o(49388);const T=["handle"];function x(ce,Q){if(1&ce&&t._UZ(0,"span",2),2&ce){const ie=Q.$implicit;t.ekj("ant-slider-dot-active",ie.active),t.Q6J("ngStyle",ie.style)}}function D(ce,Q){if(1&ce&&t._UZ(0,"span",2),2&ce){const ie=Q.$implicit;t.ekj("ant-slider-mark-active",ie.active),t.Q6J("ngStyle",ie.style)("innerHTML",ie.label,t.oJD)}}const _=["slider"];function P(ce,Q){if(1&ce&&t._UZ(0,"nz-slider-step",6),2&ce){const ie=t.oxw();t.Q6J("vertical",ie.nzVertical)("min",ie.nzMin)("max",ie.nzMax)("lowerBound",ie.bounds.lower)("upperBound",ie.bounds.upper)("marksArray",ie.marksArray)("included",ie.nzIncluded)("reverse",ie.nzReverse)}}function O(ce,Q){if(1&ce){const ie=t.EpF();t.TgZ(0,"nz-slider-handle",7),t.NdJ("focusin",function(){const Me=t.CHM(ie).index,Ye=t.oxw();return t.KtG(Ye.onHandleFocusIn(Me))}),t.qZA()}if(2&ce){const ie=Q.$implicit,ae=t.oxw();t.Q6J("vertical",ae.nzVertical)("reverse",ae.nzReverse)("offset",ie.offset)("value",ie.value)("active",ie.active)("tooltipFormatter",ae.nzTipFormatter)("tooltipVisible",ae.nzTooltipVisible)("tooltipPlacement",ae.nzTooltipPlacement)("dir",ae.dir)}}function A(ce,Q){if(1&ce&&t._UZ(0,"nz-slider-marks",6),2&ce){const ie=t.oxw();t.Q6J("vertical",ie.nzVertical)("min",ie.nzMin)("max",ie.nzMax)("lowerBound",ie.bounds.lower)("upperBound",ie.bounds.upper)("marksArray",ie.marksArray)("included",ie.nzIncluded)("reverse",ie.nzReverse)}}let k=(()=>{class ce{constructor(){this.isDragging=!1}static#e=this.\u0275fac=function(ae){return new(ae||ce)};static#t=this.\u0275prov=t.Yz7({token:ce,factory:ce.\u0275fac})}return ce})(),F=(()=>{class ce{constructor(ie,ae){this.sliderService=ie,this.cdr=ae,this.tooltipVisible="default",this.active=!1,this.dir="ltr",this.style={},this.enterHandle=()=>{this.sliderService.isDragging||(this.toggleTooltip(!0),this.updateTooltipPosition(),this.cdr.detectChanges())},this.leaveHandle=()=>{this.sliderService.isDragging||(this.toggleTooltip(!1),this.cdr.detectChanges())}}ngOnChanges(ie){const{offset:ae,value:xe,active:Me,tooltipVisible:Ye,reverse:q,dir:ye}=ie;(ae||q||ye)&&this.updateStyle(),xe&&(this.updateTooltipTitle(),this.updateTooltipPosition()),Me&&this.toggleTooltip(!!Me.currentValue),"always"===Ye?.currentValue&&Promise.resolve().then(()=>this.toggleTooltip(!0,!0))}focus(){this.handleEl?.nativeElement.focus()}toggleTooltip(ie,ae=!1){!ae&&("default"!==this.tooltipVisible||!this.tooltip)||(ie?this.tooltip?.show():this.tooltip?.hide())}updateTooltipTitle(){this.tooltipTitle=this.tooltipFormatter?this.tooltipFormatter(this.value):`${this.value}`}updateTooltipPosition(){this.tooltip&&Promise.resolve().then(()=>this.tooltip?.updatePosition())}updateStyle(){const ae=this.reverse,Me=this.vertical?{[ae?"top":"bottom"]:`${this.offset}%`,[ae?"bottom":"top"]:"auto",transform:ae?null:"translateY(+50%)"}:{...this.getHorizontalStylePosition(),transform:`translateX(${ae?"rtl"===this.dir?"-":"+":"rtl"===this.dir?"+":"-"}50%)`};this.style=Me,this.cdr.markForCheck()}getHorizontalStylePosition(){let ie=this.reverse?"auto":`${this.offset}%`,ae=this.reverse?`${this.offset}%`:"auto";if("rtl"===this.dir){const xe=ie;ie=ae,ae=xe}return{left:ie,right:ae}}static#e=this.\u0275fac=function(ae){return new(ae||ce)(t.Y36(k),t.Y36(t.sBO))};static#t=this.\u0275cmp=t.Xpm({type:ce,selectors:[["nz-slider-handle"]],viewQuery:function(ae,xe){if(1&ae&&(t.Gf(T,5),t.Gf(d.SY,5)),2&ae){let Me;t.iGM(Me=t.CRH())&&(xe.handleEl=Me.first),t.iGM(Me=t.CRH())&&(xe.tooltip=Me.first)}},hostBindings:function(ae,xe){1&ae&&t.NdJ("mouseenter",function(){return xe.enterHandle()})("mouseleave",function(){return xe.leaveHandle()})},inputs:{vertical:"vertical",reverse:"reverse",offset:"offset",value:"value",tooltipVisible:"tooltipVisible",tooltipPlacement:"tooltipPlacement",tooltipFormatter:"tooltipFormatter",active:"active",dir:"dir"},exportAs:["nzSliderHandle"],features:[t.TTD],decls:2,vars:4,consts:[["tabindex","0","nz-tooltip","",1,"ant-slider-handle",3,"ngStyle","nzTooltipTitle","nzTooltipTrigger","nzTooltipPlacement"],["handle",""]],template:function(ae,xe){1&ae&&t._UZ(0,"div",0,1),2&ae&&t.Q6J("ngStyle",xe.style)("nzTooltipTitle",null===xe.tooltipFormatter||"never"===xe.tooltipVisible?null:xe.tooltipTitle)("nzTooltipTrigger",null)("nzTooltipPlacement",xe.tooltipPlacement)},dependencies:[p.PC,d.SY],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,g.yF)()],ce.prototype,"active",void 0),ce})(),W=(()=>{class ce{constructor(){this.offset=0,this.reverse=!1,this.dir="ltr",this.length=0,this.vertical=!1,this.included=!1,this.style={}}ngOnChanges(){const ae=this.reverse,xe=this.included?"visible":"hidden",Ye=this.length,q=this.vertical?{[ae?"top":"bottom"]:`${this.offset}%`,[ae?"bottom":"top"]:"auto",height:`${Ye}%`,visibility:xe}:{...this.getHorizontalStylePosition(),width:`${Ye}%`,visibility:xe};this.style=q}getHorizontalStylePosition(){let ie=this.reverse?"auto":`${this.offset}%`,ae=this.reverse?`${this.offset}%`:"auto";if("rtl"===this.dir){const xe=ie;ie=ae,ae=xe}return{left:ie,right:ae}}static#e=this.\u0275fac=function(ae){return new(ae||ce)};static#t=this.\u0275cmp=t.Xpm({type:ce,selectors:[["nz-slider-track"]],inputs:{offset:"offset",reverse:"reverse",dir:"dir",length:"length",vertical:"vertical",included:"included"},exportAs:["nzSliderTrack"],features:[t.TTD],decls:1,vars:1,consts:[[1,"ant-slider-track",3,"ngStyle"]],template:function(ae,xe){1&ae&&t._UZ(0,"div",0),2&ae&&t.Q6J("ngStyle",xe.style)},dependencies:[p.PC],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,g.Rn)()],ce.prototype,"offset",void 0),(0,e.gn)([(0,g.yF)()],ce.prototype,"reverse",void 0),(0,e.gn)([(0,g.Rn)()],ce.prototype,"length",void 0),(0,e.gn)([(0,g.yF)()],ce.prototype,"vertical",void 0),(0,e.gn)([(0,g.yF)()],ce.prototype,"included",void 0),ce})(),K=(()=>{class ce{constructor(){this.lowerBound=null,this.upperBound=null,this.marksArray=[],this.vertical=!1,this.included=!1,this.steps=[]}ngOnChanges(ie){const{marksArray:ae,lowerBound:xe,upperBound:Me,reverse:Ye}=ie;(ae||Ye)&&this.buildSteps(),(ae||xe||Me||Ye)&&this.togglePointActive()}trackById(ie,ae){return ae.value}buildSteps(){const ie=this.vertical?"bottom":"left";this.steps=this.marksArray.map(ae=>{const{value:xe,config:Me}=ae;let Ye=ae.offset;return this.reverse&&(Ye=(this.max-xe)/(this.max-this.min)*100),{value:xe,offset:Ye,config:Me,active:!1,style:{[ie]:`${Ye}%`}}})}togglePointActive(){this.steps&&null!==this.lowerBound&&null!==this.upperBound&&this.steps.forEach(ie=>{const ae=ie.value;ie.active=!this.included&&ae===this.upperBound||this.included&&ae<=this.upperBound&&ae>=this.lowerBound})}static#e=this.\u0275fac=function(ae){return new(ae||ce)};static#t=this.\u0275cmp=t.Xpm({type:ce,selectors:[["nz-slider-step"]],inputs:{lowerBound:"lowerBound",upperBound:"upperBound",marksArray:"marksArray",min:"min",max:"max",vertical:"vertical",included:"included",reverse:"reverse"},exportAs:["nzSliderStep"],features:[t.TTD],decls:2,vars:2,consts:[[1,"ant-slider-step"],["class","ant-slider-dot",3,"ant-slider-dot-active","ngStyle",4,"ngFor","ngForOf","ngForTrackBy"],[1,"ant-slider-dot",3,"ngStyle"]],template:function(ae,xe){1&ae&&(t.TgZ(0,"div",0),t.YNc(1,x,1,3,"span",1),t.qZA()),2&ae&&(t.xp6(1),t.Q6J("ngForOf",xe.steps)("ngForTrackBy",xe.trackById))},dependencies:[p.sg,p.PC],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,g.yF)()],ce.prototype,"vertical",void 0),(0,e.gn)([(0,g.yF)()],ce.prototype,"included",void 0),ce})(),_e=(()=>{class ce{constructor(){this.lowerBound=null,this.upperBound=null,this.marksArray=[],this.vertical=!1,this.included=!1,this.marks=[]}ngOnChanges(ie){const{marksArray:ae,lowerBound:xe,upperBound:Me,reverse:Ye}=ie;(ae||Ye)&&this.buildMarks(),(ae||xe||Me||Ye)&&this.togglePointActive()}trackById(ie,ae){return ae.value}buildMarks(){const ie=this.max-this.min;this.marks=this.marksArray.map(ae=>{const{value:xe,offset:Me,config:Ye}=ae,q=this.getMarkStyles(xe,ie,Ye);return{label:Y(Ye)?Ye.label:Ye,offset:Me,style:q,value:xe,config:Ye,active:!1}})}getMarkStyles(ie,ae,xe){let Me;const Ye=this.reverse?this.max+this.min-ie:ie;return Me=this.vertical?{marginBottom:"-50%",bottom:(Ye-this.min)/ae*100+"%"}:{transform:"translate3d(-50%, 0, 0)",left:(Ye-this.min)/ae*100+"%"},Y(xe)&&xe.style&&(Me={...Me,...xe.style}),Me}togglePointActive(){this.marks&&null!==this.lowerBound&&null!==this.upperBound&&this.marks.forEach(ie=>{const ae=ie.value;ie.active=!this.included&&ae===this.upperBound||this.included&&ae<=this.upperBound&&ae>=this.lowerBound})}static#e=this.\u0275fac=function(ae){return new(ae||ce)};static#t=this.\u0275cmp=t.Xpm({type:ce,selectors:[["nz-slider-marks"]],inputs:{lowerBound:"lowerBound",upperBound:"upperBound",marksArray:"marksArray",min:"min",max:"max",vertical:"vertical",included:"included",reverse:"reverse"},exportAs:["nzSliderMarks"],features:[t.TTD],decls:2,vars:2,consts:[[1,"ant-slider-mark"],["class","ant-slider-mark-text",3,"ant-slider-mark-active","ngStyle","innerHTML",4,"ngFor","ngForOf","ngForTrackBy"],[1,"ant-slider-mark-text",3,"ngStyle","innerHTML"]],template:function(ae,xe){1&ae&&(t.TgZ(0,"div",0),t.YNc(1,D,1,4,"span",1),t.qZA()),2&ae&&(t.xp6(1),t.Q6J("ngForOf",xe.marks)("ngForTrackBy",xe.trackById))},dependencies:[p.sg,p.PC],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,g.yF)()],ce.prototype,"vertical",void 0),(0,e.gn)([(0,g.yF)()],ce.prototype,"included",void 0),ce})();function Y(ce){return"string"!=typeof ce}let G=(()=>{class ce{constructor(ie,ae,xe,Me){this.sliderService=ie,this.cdr=ae,this.platform=xe,this.directionality=Me,this.nzDisabled=!1,this.nzDots=!1,this.nzIncluded=!0,this.nzRange=!1,this.nzVertical=!1,this.nzReverse=!1,this.nzMarks=null,this.nzMax=100,this.nzMin=0,this.nzStep=1,this.nzTooltipVisible="default",this.nzTooltipPlacement="top",this.nzOnAfterChange=new t.vpe,this.value=null,this.cacheSliderStart=null,this.cacheSliderLength=null,this.activeValueIndex=void 0,this.track={offset:null,length:null},this.handles=[],this.marksArray=null,this.bounds={lower:null,upper:null},this.dir="ltr",this.destroy$=new l.x,this.isNzDisableFirstChange=!0}ngOnInit(){this.dir=this.directionality.value,this.directionality.change?.pipe((0,u.R)(this.destroy$)).subscribe(ie=>{this.dir=ie,this.cdr.detectChanges(),this.updateTrackAndHandles(),this.onValueChange(this.getValue(!0))}),this.handles=te(this.nzRange?2:1),this.marksArray=this.nzMarks?this.generateMarkItems(this.nzMarks):null,this.bindDraggingHandlers(),this.toggleDragDisabled(this.nzDisabled),null===this.getValue()&&this.setValue(this.formatValue(null))}ngOnChanges(ie){const{nzDisabled:ae,nzMarks:xe,nzRange:Me}=ie;ae&&!ae.firstChange?this.toggleDragDisabled(ae.currentValue):xe&&!xe.firstChange?this.marksArray=this.nzMarks?this.generateMarkItems(this.nzMarks):null:Me&&!Me.firstChange&&(this.handles=te(Me.currentValue?2:1),this.setValue(this.formatValue(null)))}ngOnDestroy(){this.unsubscribeDrag(),this.destroy$.next(!0),this.destroy$.complete()}writeValue(ie){this.setValue(ie,!0)}onValueChange(ie){}onTouched(){}registerOnChange(ie){this.onValueChange=ie}registerOnTouched(ie){this.onTouched=ie}setDisabledState(ie){this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||ie,this.isNzDisableFirstChange=!1,this.toggleDragDisabled(this.nzDisabled),this.cdr.markForCheck()}onKeyDown(ie){if(this.nzDisabled)return;const ae=ie.keyCode,Me=ae===n.oh||ae===n.JH;if(ae!==n.SV&&ae!==n.LH&&!Me)return;ie.preventDefault();let Ye=(Me?-this.nzStep:this.nzStep)*(this.nzReverse?-1:1);Ye="rtl"===this.dir?-1*Ye:Ye,this.setActiveValue((0,g.xV)(this.nzRange?this.value[this.activeValueIndex]+Ye:this.value+Ye,this.nzMin,this.nzMax)),this.nzOnAfterChange.emit(this.getValue(!0))}onHandleFocusIn(ie){this.activeValueIndex=ie}setValue(ie,ae=!1){ae?(this.value=this.formatValue(ie),this.updateTrackAndHandles()):function re(ce,Q){return typeof ce==typeof Q&&(j(ce)&&j(Q)?(0,g.cO)(ce,Q):ce===Q)}(this.value,ie)||(this.value=ie,this.updateTrackAndHandles(),this.onValueChange(this.getValue(!0)))}getValue(ie=!1){return ie&&this.value&&j(this.value)?[...this.value].sort((ae,xe)=>ae-xe):this.value}getValueToOffset(ie){let ae=ie;return typeof ae>"u"&&(ae=this.getValue(!0)),j(ae)?ae.map(xe=>this.valueToOffset(xe)):this.valueToOffset(ae)}setActiveValueIndex(ie){const ae=this.getValue();if(j(ae)){let Me,xe=null,Ye=-1;ae.forEach((q,ye)=>{Me=Math.abs(ie-q),(null===xe||Me{ye.offset=j(ae)?ae[ee]:ae,ye.value=j(ie)?ie[ee]:ie||0}),[this.bounds.lower,this.bounds.upper]=Ye,[this.track.offset,this.track.length]=q,this.cdr.markForCheck()}onDragStart(ie){this.toggleDragMoving(!0),this.cacheSliderProperty(),this.setActiveValueIndex(this.getLogicalValue(ie)),this.setActiveValue(this.getLogicalValue(ie)),this.showHandleTooltip(this.nzRange?this.activeValueIndex:0)}onDragMove(ie){this.setActiveValue(this.getLogicalValue(ie)),this.cdr.markForCheck()}getLogicalValue(ie){return this.nzReverse?this.nzVertical||"rtl"!==this.dir?this.nzMax-ie+this.nzMin:ie:this.nzVertical||"rtl"!==this.dir?ie:this.nzMax-ie+this.nzMin}onDragEnd(){this.nzOnAfterChange.emit(this.getValue(!0)),this.toggleDragMoving(!1),this.cacheSliderProperty(!0),this.hideAllHandleTooltip(),this.cdr.markForCheck()}bindDraggingHandlers(){if(!this.platform.isBrowser)return;const ie=q=>ye=>q.reduce((ee,Be)=>ee[Be]||ee,ye),ae=this.slider.nativeElement,xe=this.nzVertical?"pageY":"pageX",Me={start:"mousedown",move:"mousemove",end:"mouseup",pluckKey:[xe]},Ye={start:"touchstart",move:"touchmove",end:"touchend",pluckKey:["touches","0",xe],filter:q=>q instanceof TouchEvent};[Me,Ye].forEach(q=>{const{start:ye,move:ee,end:Be,pluckKey:Re,filter:ct=(()=>!0)}=q;q.startPlucked$=(0,C.R)(ae,ye).pipe((0,z.h)(ct),(0,M.b)(g.jJ),(0,h.U)(ie(Re)),(0,h.U)(Ae=>this.findClosestValue(Ae))),q.end$=(0,C.R)(document,Be),q.moveResolved$=(0,C.R)(document,ee).pipe((0,z.h)(ct),(0,M.b)(g.jJ),(0,h.U)(ie(Re)),(0,v.x)(),(0,h.U)(Ae=>this.findClosestValue(Ae)),(0,v.x)(),(0,u.R)(q.end$))}),this.dragStart$=(0,E.T)(Me.startPlucked$,Ye.startPlucked$),this.dragMove$=(0,E.T)(Me.moveResolved$,Ye.moveResolved$),this.dragEnd$=(0,E.T)(Me.end$,Ye.end$)}subscribeDrag(ie=["start","move","end"]){-1!==ie.indexOf("start")&&this.dragStart$&&!this.dragStart_&&(this.dragStart_=this.dragStart$.subscribe(this.onDragStart.bind(this))),-1!==ie.indexOf("move")&&this.dragMove$&&!this.dragMove_&&(this.dragMove_=this.dragMove$.subscribe(this.onDragMove.bind(this))),-1!==ie.indexOf("end")&&this.dragEnd$&&!this.dragEnd_&&(this.dragEnd_=this.dragEnd$.subscribe(this.onDragEnd.bind(this)))}unsubscribeDrag(ie=["start","move","end"]){-1!==ie.indexOf("start")&&this.dragStart_&&(this.dragStart_.unsubscribe(),this.dragStart_=null),-1!==ie.indexOf("move")&&this.dragMove_&&(this.dragMove_.unsubscribe(),this.dragMove_=null),-1!==ie.indexOf("end")&&this.dragEnd_&&(this.dragEnd_.unsubscribe(),this.dragEnd_=null)}toggleDragMoving(ie){const ae=["move","end"];ie?(this.sliderService.isDragging=!0,this.subscribeDrag(ae)):(this.sliderService.isDragging=!1,this.unsubscribeDrag(ae))}toggleDragDisabled(ie){ie?this.unsubscribeDrag():this.subscribeDrag(["start"])}findClosestValue(ie){const ae=this.getSliderStartPosition(),xe=this.getSliderLength(),Me=(0,g.xV)((ie-ae)/xe,0,1),Ye=(this.nzMax-this.nzMin)*(this.nzVertical?1-Me:Me)+this.nzMin,q=null===this.nzMarks?[]:Object.keys(this.nzMarks).map(parseFloat).sort((Be,Re)=>Be-Re);if(0!==this.nzStep&&!this.nzDots){const Be=Math.round(Ye/this.nzStep)*this.nzStep;q.push(Be)}const ye=q.map(Be=>Math.abs(Ye-Be)),ee=q[ye.indexOf(Math.min(...ye))];return 0===this.nzStep?ee:parseFloat(ee.toFixed((0,g.p8)(this.nzStep)))}valueToOffset(ie){return(0,g.OY)(this.nzMin,this.nzMax,ie)}getSliderStartPosition(){if(null!==this.cacheSliderStart)return this.cacheSliderStart;const ie=(0,g.pW)(this.slider.nativeElement);return this.nzVertical?ie.top:ie.left}getSliderLength(){if(null!==this.cacheSliderLength)return this.cacheSliderLength;const ie=this.slider.nativeElement;return this.nzVertical?ie.clientHeight:ie.clientWidth}cacheSliderProperty(ie=!1){this.cacheSliderStart=ie?null:this.getSliderStartPosition(),this.cacheSliderLength=ie?null:this.getSliderLength()}formatValue(ie){return(0,g.kK)(ie)?this.nzRange?[this.nzMin,this.nzMax]:this.nzMin:function ne(ce,Q){return!(!j(ce)&&isNaN(ce)||j(ce)&&ce.some(ie=>isNaN(ie)))&&function pe(ce,Q=!1){if(j(ce)!==Q)throw function H(){return new Error('The "nzRange" can\'t match the "ngModel"\'s type, please check these properties: "nzRange", "ngModel", "nzDefaultValue".')}();return!0}(ce,Q)}(ie,this.nzRange)?j(ie)?ie.map(ae=>(0,g.xV)(ae,this.nzMin,this.nzMax)):(0,g.xV)(ie,this.nzMin,this.nzMax):this.nzDefaultValue?this.nzDefaultValue:this.nzRange?[this.nzMin,this.nzMax]:this.nzMin}showHandleTooltip(ie=0){this.handles.forEach((ae,xe)=>{ae.active=xe===ie})}hideAllHandleTooltip(){this.handles.forEach(ie=>ie.active=!1)}generateMarkItems(ie){const ae=[];for(const xe in ie)if(ie.hasOwnProperty(xe)){const Me=ie[xe],Ye="number"==typeof xe?xe:parseFloat(xe);Ye>=this.nzMin&&Ye<=this.nzMax&&ae.push({value:Ye,offset:this.valueToOffset(Ye),config:Me})}return ae.length?ae:null}static#e=this.\u0275fac=function(ae){return new(ae||ce)(t.Y36(k),t.Y36(t.sBO),t.Y36(f.t4),t.Y36(y.Is,8))};static#t=this.\u0275cmp=t.Xpm({type:ce,selectors:[["nz-slider"]],viewQuery:function(ae,xe){if(1&ae&&(t.Gf(_,7),t.Gf(F,5)),2&ae){let Me;t.iGM(Me=t.CRH())&&(xe.slider=Me.first),t.iGM(Me=t.CRH())&&(xe.handlerComponents=Me)}},hostBindings:function(ae,xe){1&ae&&t.NdJ("keydown",function(Ye){return xe.onKeyDown(Ye)})},inputs:{nzDisabled:"nzDisabled",nzDots:"nzDots",nzIncluded:"nzIncluded",nzRange:"nzRange",nzVertical:"nzVertical",nzReverse:"nzReverse",nzDefaultValue:"nzDefaultValue",nzMarks:"nzMarks",nzMax:"nzMax",nzMin:"nzMin",nzStep:"nzStep",nzTooltipVisible:"nzTooltipVisible",nzTooltipPlacement:"nzTooltipPlacement",nzTipFormatter:"nzTipFormatter"},outputs:{nzOnAfterChange:"nzOnAfterChange"},exportAs:["nzSlider"],features:[t._Bn([{provide:i.JU,useExisting:(0,t.Gpc)(()=>ce),multi:!0},k]),t.TTD],decls:7,vars:17,consts:[[1,"ant-slider"],["slider",""],[1,"ant-slider-rail"],[3,"vertical","included","offset","length","reverse","dir"],[3,"vertical","min","max","lowerBound","upperBound","marksArray","included","reverse",4,"ngIf"],[3,"vertical","reverse","offset","value","active","tooltipFormatter","tooltipVisible","tooltipPlacement","dir","focusin",4,"ngFor","ngForOf"],[3,"vertical","min","max","lowerBound","upperBound","marksArray","included","reverse"],[3,"vertical","reverse","offset","value","active","tooltipFormatter","tooltipVisible","tooltipPlacement","dir","focusin"]],template:function(ae,xe){1&ae&&(t.TgZ(0,"div",0,1),t._UZ(2,"div",2)(3,"nz-slider-track",3),t.YNc(4,P,1,8,"nz-slider-step",4),t.YNc(5,O,1,9,"nz-slider-handle",5),t.YNc(6,A,1,8,"nz-slider-marks",4),t.qZA()),2&ae&&(t.ekj("ant-slider-rtl","rtl"===xe.dir)("ant-slider-disabled",xe.nzDisabled)("ant-slider-vertical",xe.nzVertical)("ant-slider-with-marks",xe.marksArray),t.xp6(3),t.Q6J("vertical",xe.nzVertical)("included",xe.nzIncluded)("offset",xe.track.offset)("length",xe.track.length)("reverse",xe.nzReverse)("dir",xe.dir),t.xp6(1),t.Q6J("ngIf",xe.marksArray),t.xp6(1),t.Q6J("ngForOf",xe.handles),t.xp6(1),t.Q6J("ngIf",xe.marksArray))},dependencies:[y.Lv,p.sg,p.O5,W,F,K,_e],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,g.yF)()],ce.prototype,"nzDisabled",void 0),(0,e.gn)([(0,g.yF)()],ce.prototype,"nzDots",void 0),(0,e.gn)([(0,g.yF)()],ce.prototype,"nzIncluded",void 0),(0,e.gn)([(0,g.yF)()],ce.prototype,"nzRange",void 0),(0,e.gn)([(0,g.yF)()],ce.prototype,"nzVertical",void 0),(0,e.gn)([(0,g.yF)()],ce.prototype,"nzReverse",void 0),(0,e.gn)([(0,g.Rn)()],ce.prototype,"nzMax",void 0),(0,e.gn)([(0,g.Rn)()],ce.prototype,"nzMin",void 0),(0,e.gn)([(0,g.Rn)()],ce.prototype,"nzStep",void 0),ce})();function j(ce){return ce instanceof Array&&2===ce.length}function te(ce){return Array(ce).fill(0).map(()=>({offset:null,value:null,active:!1}))}let be=(()=>{class ce{static#e=this.\u0275fac=function(ae){return new(ae||ce)};static#t=this.\u0275mod=t.oAB({type:ce});static#n=this.\u0275inj=t.cJS({imports:[y.vT,p.ez,f.ud,d.cg]})}return ce})()},77273:(nt,I,o)=>{"use strict";o.d(I,{W:()=>A,j:()=>k});var e=o(97582),n=o(65879),t=o(78645),i=o(65619),l=o(97328),C=o(74825),E=o(27921),u=o(93997),z=o(94664),M=o(76111),h=o(59773),v=o(83064),g=o(27754),d=o(49388),p=o(96814),f=o(17131);function y(F,W){1&F&&(n.TgZ(0,"span",3),n._UZ(1,"i",4)(2,"i",4)(3,"i",4)(4,"i",4),n.qZA())}function T(F,W){}function x(F,W){if(1&F&&(n.TgZ(0,"div",8),n._uU(1),n.qZA()),2&F){const K=n.oxw(2);n.xp6(1),n.Oqu(K.nzTip)}}function D(F,W){if(1&F&&(n.TgZ(0,"div")(1,"div",5),n.YNc(2,T,0,0,"ng-template",6),n.YNc(3,x,2,1,"div",7),n.qZA()()),2&F){const K=n.oxw(),_e=n.MAs(1);n.xp6(1),n.ekj("ant-spin-rtl","rtl"===K.dir)("ant-spin-spinning",K.isLoading)("ant-spin-lg","large"===K.nzSize)("ant-spin-sm","small"===K.nzSize)("ant-spin-show-text",K.nzTip),n.xp6(1),n.Q6J("ngTemplateOutlet",K.nzIndicator||_e),n.xp6(1),n.Q6J("ngIf",K.nzTip)}}function _(F,W){if(1&F&&(n.TgZ(0,"div",9),n.Hsn(1),n.qZA()),2&F){const K=n.oxw();n.ekj("ant-spin-blur",K.isLoading)}}const P=["*"],O="spin";let A=(()=>{class F{constructor(K,_e,Y){this.nzConfigService=K,this.cdr=_e,this.directionality=Y,this._nzModuleName=O,this.nzIndicator=null,this.nzSize="default",this.nzTip=null,this.nzDelay=0,this.nzSimple=!1,this.nzSpinning=!0,this.destroy$=new t.x,this.spinning$=new i.X(this.nzSpinning),this.delay$=new l.t(1),this.isLoading=!1,this.dir="ltr"}ngOnInit(){this.delay$.pipe((0,E.O)(this.nzDelay),(0,u.x)(),(0,z.w)(_e=>0===_e?this.spinning$:this.spinning$.pipe((0,M.D)(Y=>(0,C.H)(Y?_e:0)))),(0,h.R)(this.destroy$)).subscribe(_e=>{this.isLoading=_e,this.cdr.markForCheck()}),this.nzConfigService.getConfigChangeEventForComponent(O).pipe((0,h.R)(this.destroy$)).subscribe(()=>this.cdr.markForCheck()),this.directionality.change?.pipe((0,h.R)(this.destroy$)).subscribe(_e=>{this.dir=_e,this.cdr.detectChanges()}),this.dir=this.directionality.value}ngOnChanges(K){const{nzSpinning:_e,nzDelay:Y}=K;_e&&this.spinning$.next(this.nzSpinning),Y&&this.delay$.next(this.nzDelay)}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(_e){return new(_e||F)(n.Y36(v.jY),n.Y36(n.sBO),n.Y36(d.Is,8))};static#t=this.\u0275cmp=n.Xpm({type:F,selectors:[["nz-spin"]],hostVars:2,hostBindings:function(_e,Y){2&_e&&n.ekj("ant-spin-nested-loading",!Y.nzSimple)},inputs:{nzIndicator:"nzIndicator",nzSize:"nzSize",nzTip:"nzTip",nzDelay:"nzDelay",nzSimple:"nzSimple",nzSpinning:"nzSpinning"},exportAs:["nzSpin"],features:[n.TTD],ngContentSelectors:P,decls:4,vars:2,consts:[["defaultTemplate",""],[4,"ngIf"],["class","ant-spin-container",3,"ant-spin-blur",4,"ngIf"],[1,"ant-spin-dot","ant-spin-dot-spin"],[1,"ant-spin-dot-item"],[1,"ant-spin"],[3,"ngTemplateOutlet"],["class","ant-spin-text",4,"ngIf"],[1,"ant-spin-text"],[1,"ant-spin-container"]],template:function(_e,Y){1&_e&&(n.F$t(),n.YNc(0,y,5,0,"ng-template",null,0,n.W1O),n.YNc(2,D,4,12,"div",1),n.YNc(3,_,2,2,"div",2)),2&_e&&(n.xp6(2),n.Q6J("ngIf",Y.isLoading),n.xp6(1),n.Q6J("ngIf",!Y.nzSimple))},dependencies:[p.O5,p.tP],encapsulation:2})}return(0,e.gn)([(0,v.oS)()],F.prototype,"nzIndicator",void 0),(0,e.gn)([(0,g.Rn)()],F.prototype,"nzDelay",void 0),(0,e.gn)([(0,g.yF)()],F.prototype,"nzSimple",void 0),(0,e.gn)([(0,g.yF)()],F.prototype,"nzSpinning",void 0),F})(),k=(()=>{class F{static#e=this.\u0275fac=function(_e){return new(_e||F)};static#t=this.\u0275mod=n.oAB({type:F});static#n=this.\u0275inj=n.cJS({imports:[d.vT,p.ez,f.Q8]})}return F})()},39704:(nt,I,o)=>{"use strict";o.d(I,{$W:()=>pe,N6:()=>be,iy:()=>re});var e=o(65879),n=o(78645),t=o(92438),i=o(47394),l=o(63019),C=o(32181),E=o(59773),u=o(27921),z=o(99087),M=o(27754),h=o(97582),v=o(96814),g=o(90551),d=o(8324),p=o(48128),f=o(49388);const y=["processDotTemplate"],T=["itemContainer"];function x(le,ce){1&le&&e._UZ(0,"div",10)}function D(le,ce){if(1&le&&(e.TgZ(0,"div",13),e._UZ(1,"nz-progress",14),e.qZA()),2&le){const Q=e.oxw(2);e.xp6(1),e.Q6J("nzPercent",Q.nzPercentage)("nzWidth","small"===Q.nzSize?32:40)("nzFormat",Q.nullProcessFormat)("nzStrokeWidth",4)}}function _(le,ce){1&le&&(e.TgZ(0,"span",15),e._UZ(1,"span",16),e.qZA())}function P(le,ce){1&le&&(e.TgZ(0,"span",15),e._UZ(1,"span",17),e.qZA())}function O(le,ce){if(1&le&&(e.TgZ(0,"span",15),e._uU(1),e.qZA()),2&le){const Q=e.oxw(2);e.xp6(1),e.hij(" ",Q.index+1," ")}}function A(le,ce){if(1&le&&(e.ynx(0),e._UZ(1,"span",18),e.BQk()),2&le){const Q=ce.$implicit,ie=e.oxw(3);e.xp6(1),e.Q6J("nzType",!ie.oldAPIIcon&&Q)("ngClass",ie.oldAPIIcon&&Q)}}function k(le,ce){if(1&le&&(e.TgZ(0,"span",15),e.YNc(1,A,2,2,"ng-container",7),e.qZA()),2&le){const Q=e.oxw(2);e.xp6(1),e.Q6J("nzStringTemplateOutlet",Q.nzIcon)}}function F(le,ce){if(1&le&&(e.YNc(0,D,2,4,"div",11),e.YNc(1,_,2,0,"span",12),e.YNc(2,P,2,0,"span",12),e.YNc(3,O,2,1,"span",12),e.YNc(4,k,2,1,"span",12)),2&le){const Q=e.oxw();e.Q6J("ngIf",Q.showProgress),e.xp6(1),e.Q6J("ngIf","finish"===Q.nzStatus&&!Q.nzIcon),e.xp6(1),e.Q6J("ngIf","error"===Q.nzStatus),e.xp6(1),e.Q6J("ngIf",("process"===Q.nzStatus||"wait"===Q.nzStatus)&&!Q.nzIcon),e.xp6(1),e.Q6J("ngIf",Q.nzIcon)}}function W(le,ce){1&le&&e._UZ(0,"span",21)}function K(le,ce){}const _e=function(le,ce,Q){return{$implicit:le,status:ce,index:Q}};function Y(le,ce){if(1&le&&(e.TgZ(0,"span",15),e.YNc(1,W,1,0,"ng-template",null,19,e.W1O),e.YNc(3,K,0,0,"ng-template",20),e.qZA()),2&le){const Q=e.MAs(2),ie=e.oxw();e.xp6(3),e.Q6J("ngTemplateOutlet",ie.customProcessTemplate||Q)("ngTemplateOutletContext",e.kEZ(2,_e,Q,ie.nzStatus,ie.index))}}function G(le,ce){if(1&le&&(e.ynx(0),e._uU(1),e.BQk()),2&le){const Q=e.oxw();e.xp6(1),e.Oqu(Q.nzTitle)}}function H(le,ce){if(1&le&&(e.ynx(0),e._uU(1),e.BQk()),2&le){const Q=e.oxw(2);e.xp6(1),e.Oqu(Q.nzSubtitle)}}function j(le,ce){if(1&le&&(e.TgZ(0,"div",22),e.YNc(1,H,2,1,"ng-container",7),e.qZA()),2&le){const Q=e.oxw();e.xp6(1),e.Q6J("nzStringTemplateOutlet",Q.nzSubtitle)}}function te(le,ce){if(1&le&&(e.ynx(0),e._uU(1),e.BQk()),2&le){const Q=e.oxw();e.xp6(1),e.Oqu(Q.nzDescription)}}const ne=["*"];let pe=(()=>{class le{get nzStatus(){return this._status}set nzStatus(Q){this._status=Q,this.isCustomStatus=!0}get nzIcon(){return this._icon}set nzIcon(Q){Q instanceof e.Rgc||(this.oldAPIIcon="string"==typeof Q&&Q.indexOf("anticon")>-1),this._icon=Q}get showProgress(){return null!==this.nzPercentage&&!this.nzIcon&&"process"===this.nzStatus&&this.nzPercentage>=0&&this.nzPercentage<=100}get currentIndex(){return this._currentIndex}set currentIndex(Q){this._currentIndex=Q,this.isCustomStatus||(this._status=Q>this.index?"finish":Q===this.index?this.outStatus||"":"wait")}constructor(Q,ie,ae){this.cdr=Q,this.ngZone=ie,this.destroy$=ae,this.nzDisabled=!1,this.nzPercentage=null,this.nzSize="default",this.isCustomStatus=!1,this._status="wait",this.oldAPIIcon=!0,this.direction="horizontal",this.index=0,this.last=!1,this.outStatus="process",this.showProcessDot=!1,this.clickable=!1,this.clickOutsideAngular$=new n.x,this.nullProcessFormat=()=>null,this._currentIndex=0}ngOnInit(){this.ngZone.runOutsideAngular(()=>(0,t.R)(this.itemContainer.nativeElement,"click").pipe((0,C.h)(()=>this.clickable&&this.currentIndex!==this.index&&!this.nzDisabled),(0,E.R)(this.destroy$)).subscribe(()=>{this.clickOutsideAngular$.next(this.index)}))}enable(){this.nzDisabled=!1,this.cdr.markForCheck()}disable(){this.nzDisabled=!0,this.cdr.markForCheck()}markForCheck(){this.cdr.markForCheck()}static#e=this.\u0275fac=function(ie){return new(ie||le)(e.Y36(e.sBO),e.Y36(e.R0b),e.Y36(z.kn))};static#t=this.\u0275cmp=e.Xpm({type:le,selectors:[["nz-step"]],viewQuery:function(ie,ae){if(1&ie&&(e.Gf(y,5),e.Gf(T,7)),2&ie){let xe;e.iGM(xe=e.CRH())&&(ae.processDotTemplate=xe.first),e.iGM(xe=e.CRH())&&(ae.itemContainer=xe.first)}},hostAttrs:[1,"ant-steps-item"],hostVars:16,hostBindings:function(ie,ae){2&ie&&e.ekj("ant-steps-item-wait","wait"===ae.nzStatus)("ant-steps-item-process","process"===ae.nzStatus)("ant-steps-item-finish","finish"===ae.nzStatus)("ant-steps-item-error","error"===ae.nzStatus)("ant-steps-item-active",ae.currentIndex===ae.index)("ant-steps-item-disabled",ae.nzDisabled)("ant-steps-item-custom",!!ae.nzIcon)("ant-steps-next-error","error"===ae.outStatus&&ae.currentIndex===ae.index+1)},inputs:{nzTitle:"nzTitle",nzSubtitle:"nzSubtitle",nzDescription:"nzDescription",nzDisabled:"nzDisabled",nzPercentage:"nzPercentage",nzSize:"nzSize",nzStatus:"nzStatus",nzIcon:"nzIcon"},exportAs:["nzStep"],features:[e._Bn([z.kn])],decls:12,vars:8,consts:[[1,"ant-steps-item-container",3,"tabindex"],["itemContainer",""],["class","ant-steps-item-tail",4,"ngIf"],[1,"ant-steps-item-icon"],[3,"ngIf"],[1,"ant-steps-item-content"],[1,"ant-steps-item-title"],[4,"nzStringTemplateOutlet"],["class","ant-steps-item-subtitle",4,"ngIf"],[1,"ant-steps-item-description"],[1,"ant-steps-item-tail"],["class","ant-steps-progress-icon",4,"ngIf"],["class","ant-steps-icon",4,"ngIf"],[1,"ant-steps-progress-icon"],["nzType","circle",3,"nzPercent","nzWidth","nzFormat","nzStrokeWidth"],[1,"ant-steps-icon"],["nz-icon","","nzType","check"],["nz-icon","","nzType","close"],["nz-icon","",3,"nzType","ngClass"],["processDotTemplate",""],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"ant-steps-icon-dot"],[1,"ant-steps-item-subtitle"]],template:function(ie,ae){1&ie&&(e.TgZ(0,"div",0,1),e.YNc(2,x,1,0,"div",2),e.TgZ(3,"div",3),e.YNc(4,F,5,5,"ng-template",4),e.YNc(5,Y,4,6,"ng-template",4),e.qZA(),e.TgZ(6,"div",5)(7,"div",6),e.YNc(8,G,2,1,"ng-container",7),e.YNc(9,j,2,1,"div",8),e.qZA(),e.TgZ(10,"div",9),e.YNc(11,te,2,1,"ng-container",7),e.qZA()()()),2&ie&&(e.Q6J("tabindex",ae.clickable&&!ae.nzDisabled?0:null),e.uIk("role",ae.clickable&&!ae.nzDisabled?"button":null),e.xp6(2),e.Q6J("ngIf",!0!==ae.last),e.xp6(2),e.Q6J("ngIf",!ae.showProcessDot),e.xp6(1),e.Q6J("ngIf",ae.showProcessDot),e.xp6(3),e.Q6J("nzStringTemplateOutlet",ae.nzTitle),e.xp6(1),e.Q6J("ngIf",ae.nzSubtitle),e.xp6(2),e.Q6J("nzStringTemplateOutlet",ae.nzDescription))},dependencies:[v.mk,v.O5,v.tP,g.Ls,d.f,p.M],encapsulation:2,changeDetection:0})}return(0,h.gn)([(0,M.yF)()],le.prototype,"nzDisabled",void 0),le})(),re=(()=>{class le{set nzProgressDot(Q){Q instanceof e.Rgc?(this.showProcessDot=!0,this.customProcessDotTemplate=Q):this.showProcessDot=(0,M.sw)(Q),this.updateChildrenSteps()}constructor(Q,ie,ae,xe){this.ngZone=Q,this.cdr=ie,this.directionality=ae,this.destroy$=xe,this.nzCurrent=0,this.nzDirection="horizontal",this.nzLabelPlacement="horizontal",this.nzType="default",this.nzSize="default",this.nzStartIndex=0,this.nzStatus="process",this.nzIndexChange=new e.vpe,this.indexChangeSubscription=i.w0.EMPTY,this.showProcessDot=!1,this.showProgress=!1,this.dir="ltr"}ngOnChanges(Q){(Q.nzStartIndex||Q.nzDirection||Q.nzStatus||Q.nzCurrent||Q.nzSize)&&this.updateChildrenSteps()}ngOnInit(){this.directionality.change?.pipe((0,E.R)(this.destroy$)).subscribe(Q=>{this.dir=Q,this.cdr.detectChanges()}),this.dir=this.directionality.value,this.updateChildrenSteps()}ngAfterContentInit(){this.steps&&this.steps.changes.pipe((0,u.O)(null),(0,E.R)(this.destroy$)).subscribe(()=>{this.updateHostProgressClass(),this.updateChildrenSteps()})}updateHostProgressClass(){this.steps&&!this.showProcessDot&&(this.showProgress=!!this.steps.toArray().find(Q=>null!==Q.nzPercentage))}updateChildrenSteps(){if(this.steps){const Q=this.steps.length;this.steps.toArray().forEach((ie,ae)=>{Promise.resolve().then(()=>{ie.nzSize=this.nzSize,ie.outStatus=this.nzStatus,ie.showProcessDot=this.showProcessDot,this.customProcessDotTemplate&&(ie.customProcessTemplate=this.customProcessDotTemplate),ie.clickable=this.nzIndexChange.observers.length>0,ie.direction=this.nzDirection,ie.index=ae+this.nzStartIndex,ie.currentIndex=this.nzCurrent,ie.last=Q===ae+1,ie.markForCheck()})}),this.indexChangeSubscription.unsubscribe(),this.indexChangeSubscription=(0,l.T)(...this.steps.map(ie=>ie.clickOutsideAngular$)).pipe((0,E.R)(this.destroy$)).subscribe(ie=>{this.nzIndexChange.observers.length&&this.ngZone.run(()=>this.nzIndexChange.emit(ie))})}}static#e=this.\u0275fac=function(ie){return new(ie||le)(e.Y36(e.R0b),e.Y36(e.sBO),e.Y36(f.Is,8),e.Y36(z.kn))};static#t=this.\u0275cmp=e.Xpm({type:le,selectors:[["nz-steps"]],contentQueries:function(ie,ae,xe){if(1&ie&&e.Suo(xe,pe,4),2&ie){let Me;e.iGM(Me=e.CRH())&&(ae.steps=Me)}},hostAttrs:[1,"ant-steps"],hostVars:18,hostBindings:function(ie,ae){2&ie&&e.ekj("ant-steps-horizontal","horizontal"===ae.nzDirection)("ant-steps-vertical","vertical"===ae.nzDirection)("ant-steps-label-horizontal","horizontal"===ae.nzDirection)("ant-steps-label-vertical",(ae.showProcessDot||"vertical"===ae.nzLabelPlacement)&&"horizontal"===ae.nzDirection)("ant-steps-dot",ae.showProcessDot)("ant-steps-small","small"===ae.nzSize)("ant-steps-navigation","navigation"===ae.nzType)("ant-steps-rtl","rtl"===ae.dir)("ant-steps-with-progress",ae.showProgress)},inputs:{nzCurrent:"nzCurrent",nzDirection:"nzDirection",nzLabelPlacement:"nzLabelPlacement",nzType:"nzType",nzSize:"nzSize",nzStartIndex:"nzStartIndex",nzStatus:"nzStatus",nzProgressDot:"nzProgressDot"},outputs:{nzIndexChange:"nzIndexChange"},exportAs:["nzSteps"],features:[e._Bn([z.kn]),e.TTD],ngContentSelectors:ne,decls:1,vars:0,template:function(ie,ae){1&ie&&(e.F$t(),e.Hsn(0))},encapsulation:2,changeDetection:0})}return le})(),be=(()=>{class le{static#e=this.\u0275fac=function(ie){return new(ie||le)};static#t=this.\u0275mod=e.oAB({type:le});static#n=this.\u0275inj=e.cJS({imports:[f.vT,v.ez,g.PV,d.T,p.W]})}return le})()},96494:(nt,I,o)=>{"use strict";o.d(I,{i:()=>O,m:()=>A});var e=o(97582),n=o(36028),t=o(65879),i=o(60095),l=o(78645),C=o(92438),E=o(59773),u=o(83064),z=o(27754),M=o(4300),h=o(49388),v=o(96814),g=o(41958),d=o(90551),p=o(8324);const f=["switchElement"];function y(k,F){1&k&&t._UZ(0,"span",8)}function T(k,F){if(1&k&&(t.ynx(0),t._uU(1),t.BQk()),2&k){const W=t.oxw(2);t.xp6(1),t.Oqu(W.nzCheckedChildren)}}function x(k,F){if(1&k&&(t.ynx(0),t.YNc(1,T,2,1,"ng-container",9),t.BQk()),2&k){const W=t.oxw();t.xp6(1),t.Q6J("nzStringTemplateOutlet",W.nzCheckedChildren)}}function D(k,F){if(1&k&&(t.ynx(0),t._uU(1),t.BQk()),2&k){const W=t.oxw(2);t.xp6(1),t.Oqu(W.nzUnCheckedChildren)}}function _(k,F){if(1&k&&t.YNc(0,D,2,1,"ng-container",9),2&k){const W=t.oxw();t.Q6J("nzStringTemplateOutlet",W.nzUnCheckedChildren)}}let O=(()=>{class k{updateValue(W){this.isChecked!==W&&(this.isChecked=W,this.onChange(this.isChecked))}focus(){this.focusMonitor.focusVia(this.switchElement.nativeElement,"keyboard")}blur(){this.switchElement.nativeElement.blur()}constructor(W,K,_e,Y,G,H){this.nzConfigService=W,this.host=K,this.ngZone=_e,this.cdr=Y,this.focusMonitor=G,this.directionality=H,this._nzModuleName="switch",this.isChecked=!1,this.onChange=()=>{},this.onTouched=()=>{},this.nzLoading=!1,this.nzDisabled=!1,this.nzControl=!1,this.nzCheckedChildren=null,this.nzUnCheckedChildren=null,this.nzSize="default",this.nzId=null,this.dir="ltr",this.destroy$=new l.x,this.isNzDisableFirstChange=!0}ngOnInit(){this.directionality.change.pipe((0,E.R)(this.destroy$)).subscribe(W=>{this.dir=W,this.cdr.detectChanges()}),this.dir=this.directionality.value,this.ngZone.runOutsideAngular(()=>{(0,C.R)(this.host.nativeElement,"click").pipe((0,E.R)(this.destroy$)).subscribe(W=>{W.preventDefault(),!(this.nzControl||this.nzDisabled||this.nzLoading)&&this.ngZone.run(()=>{this.updateValue(!this.isChecked),this.cdr.markForCheck()})}),(0,C.R)(this.switchElement.nativeElement,"keydown").pipe((0,E.R)(this.destroy$)).subscribe(W=>{if(this.nzControl||this.nzDisabled||this.nzLoading)return;const{keyCode:K}=W;K!==n.oh&&K!==n.SV&&K!==n.L_&&K!==n.K5||(W.preventDefault(),this.ngZone.run(()=>{K===n.oh?this.updateValue(!1):K===n.SV?this.updateValue(!0):(K===n.L_||K===n.K5)&&this.updateValue(!this.isChecked),this.cdr.markForCheck()}))})})}ngAfterViewInit(){this.focusMonitor.monitor(this.switchElement.nativeElement,!0).pipe((0,E.R)(this.destroy$)).subscribe(W=>{W||Promise.resolve().then(()=>this.onTouched())})}ngOnDestroy(){this.focusMonitor.stopMonitoring(this.switchElement.nativeElement),this.destroy$.next(),this.destroy$.complete()}writeValue(W){this.isChecked=W,this.cdr.markForCheck()}registerOnChange(W){this.onChange=W}registerOnTouched(W){this.onTouched=W}setDisabledState(W){this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||W,this.isNzDisableFirstChange=!1,this.cdr.markForCheck()}static#e=this.\u0275fac=function(K){return new(K||k)(t.Y36(u.jY),t.Y36(t.SBq),t.Y36(t.R0b),t.Y36(t.sBO),t.Y36(M.tE),t.Y36(h.Is,8))};static#t=this.\u0275cmp=t.Xpm({type:k,selectors:[["nz-switch"]],viewQuery:function(K,_e){if(1&K&&t.Gf(f,7),2&K){let Y;t.iGM(Y=t.CRH())&&(_e.switchElement=Y.first)}},inputs:{nzLoading:"nzLoading",nzDisabled:"nzDisabled",nzControl:"nzControl",nzCheckedChildren:"nzCheckedChildren",nzUnCheckedChildren:"nzUnCheckedChildren",nzSize:"nzSize",nzId:"nzId"},exportAs:["nzSwitch"],features:[t._Bn([{provide:i.JU,useExisting:(0,t.Gpc)(()=>k),multi:!0}])],decls:9,vars:16,consts:[["nz-wave","","type","button",1,"ant-switch",3,"disabled","nzWaveExtraNode"],["switchElement",""],[1,"ant-switch-handle"],["nz-icon","","nzType","loading","class","ant-switch-loading-icon",4,"ngIf"],[1,"ant-switch-inner"],[4,"ngIf","ngIfElse"],["uncheckTemplate",""],[1,"ant-click-animating-node"],["nz-icon","","nzType","loading",1,"ant-switch-loading-icon"],[4,"nzStringTemplateOutlet"]],template:function(K,_e){if(1&K&&(t.TgZ(0,"button",0,1)(2,"span",2),t.YNc(3,y,1,0,"span",3),t.qZA(),t.TgZ(4,"span",4),t.YNc(5,x,2,1,"ng-container",5),t.YNc(6,_,1,1,"ng-template",null,6,t.W1O),t.qZA(),t._UZ(8,"div",7),t.qZA()),2&K){const Y=t.MAs(7);t.ekj("ant-switch-checked",_e.isChecked)("ant-switch-loading",_e.nzLoading)("ant-switch-disabled",_e.nzDisabled)("ant-switch-small","small"===_e.nzSize)("ant-switch-rtl","rtl"===_e.dir),t.Q6J("disabled",_e.nzDisabled)("nzWaveExtraNode",!0),t.uIk("id",_e.nzId),t.xp6(3),t.Q6J("ngIf",_e.nzLoading),t.xp6(2),t.Q6J("ngIf",_e.isChecked)("ngIfElse",Y)}},dependencies:[v.O5,g.dQ,d.Ls,p.f],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,z.yF)()],k.prototype,"nzLoading",void 0),(0,e.gn)([(0,z.yF)()],k.prototype,"nzDisabled",void 0),(0,e.gn)([(0,z.yF)()],k.prototype,"nzControl",void 0),(0,e.gn)([(0,u.oS)()],k.prototype,"nzSize",void 0),k})(),A=(()=>{class k{static#e=this.\u0275fac=function(K){return new(K||k)};static#t=this.\u0275mod=t.oAB({type:k});static#n=this.\u0275inj=t.cJS({imports:[h.vT,v.ez,g.vG,d.PV,p.T]})}return k})()},79663:(nt,I,o)=>{"use strict";o.d(I,{$Z:()=>Ii,HQ:()=>Bn,N8:()=>Pi,Om:()=>ki,Uo:()=>di,Vk:()=>$i,_C:()=>ei,d3:()=>oi,h7:()=>zi,p0:()=>wi,qD:()=>Oi,qn:()=>ci,zu:()=>Ei});var e=o(49388),n=o(62831),t=o(205),i=o(96814),l=o(65879),C=o(60095),E=o(42840),u=o(28802),z=o(62612),M=o(8324),h=o(62787),v=o(60804),g=o(12131),d=o(90551),p=o(73460),f=o(2274),y=o(57907),T=o(77273),x=o(97582),D=o(92438),_=o(78645),P=o(97328),O=o(65619),A=o(52572),k=o(63019),F=o(36232),W=o(22096),K=o(59773),_e=o(37398),Y=o(93997),G=o(83620),H=o(836),j=o(32181),te=o(94664),ne=o(27921),pe=o(5177),re=o(21631),be=o(83064),le=o(99087),ce=o(27754),Q=o(70855),ie=o(41958);const ae=["*"];function xe(Et,un){}function Me(Et,un){if(1&Et){const lt=l.EpF();l.TgZ(0,"label",15),l.NdJ("ngModelChange",function(){l.CHM(lt);const At=l.oxw().$implicit,Qt=l.oxw(2);return l.KtG(Qt.check(At))}),l.qZA()}if(2&Et){const lt=l.oxw().$implicit;l.Q6J("ngModel",lt.checked)}}function Ye(Et,un){if(1&Et){const lt=l.EpF();l.TgZ(0,"label",16),l.NdJ("ngModelChange",function(){l.CHM(lt);const At=l.oxw().$implicit,Qt=l.oxw(2);return l.KtG(Qt.check(At))}),l.qZA()}if(2&Et){const lt=l.oxw().$implicit;l.Q6J("ngModel",lt.checked)}}function q(Et,un){if(1&Et){const lt=l.EpF();l.TgZ(0,"li",12),l.NdJ("click",function(){const Qt=l.CHM(lt).$implicit,gn=l.oxw(2);return l.KtG(gn.check(Qt))}),l.YNc(1,Me,1,1,"label",13),l.YNc(2,Ye,1,1,"label",14),l.TgZ(3,"span"),l._uU(4),l.qZA()()}if(2&Et){const lt=un.$implicit,Ct=l.oxw(2);l.Q6J("nzSelected",lt.checked),l.xp6(1),l.Q6J("ngIf",!Ct.filterMultiple),l.xp6(1),l.Q6J("ngIf",Ct.filterMultiple),l.xp6(2),l.Oqu(lt.text)}}function ye(Et,un){if(1&Et){const lt=l.EpF();l.ynx(0),l.TgZ(1,"nz-filter-trigger",3),l.NdJ("nzVisibleChange",function(At){l.CHM(lt);const Qt=l.oxw();return l.KtG(Qt.onVisibleChange(At))}),l._UZ(2,"span",4),l.qZA(),l.TgZ(3,"nz-dropdown-menu",null,5)(5,"div",6)(6,"ul",7),l.YNc(7,q,5,4,"li",8),l.qZA(),l.TgZ(8,"div",9)(9,"button",10),l.NdJ("click",function(){l.CHM(lt);const At=l.oxw();return l.KtG(At.reset())}),l._uU(10),l.qZA(),l.TgZ(11,"button",11),l.NdJ("click",function(){l.CHM(lt);const At=l.oxw();return l.KtG(At.confirm())}),l._uU(12),l.qZA()()()(),l.BQk()}if(2&Et){const lt=l.MAs(4),Ct=l.oxw();l.xp6(1),l.Q6J("nzVisible",Ct.isVisible)("nzActive",Ct.isChecked)("nzDropdownMenu",lt),l.xp6(6),l.Q6J("ngForOf",Ct.listOfParsedFilter)("ngForTrackBy",Ct.trackByValue),l.xp6(2),l.Q6J("disabled",!Ct.isChecked),l.xp6(1),l.hij(" ",Ct.locale.filterReset," "),l.xp6(2),l.Oqu(Ct.locale.filterConfirm)}}function ct(Et,un){}function Ae(Et,un){if(1&Et&&l._UZ(0,"span",6),2&Et){const lt=l.oxw();l.ekj("active","ascend"===lt.sortOrder)}}function Mt(Et,un){if(1&Et&&l._UZ(0,"span",7),2&Et){const lt=l.oxw();l.ekj("active","descend"===lt.sortOrder)}}const je=["nzChecked",""];function ot(Et,un){if(1&Et){const lt=l.EpF();l.ynx(0),l._UZ(1,"nz-row-indent",2),l.TgZ(2,"button",3),l.NdJ("expandChange",function(At){l.CHM(lt);const Qt=l.oxw();return l.KtG(Qt.onExpandChange(At))}),l.qZA(),l.BQk()}if(2&Et){const lt=l.oxw();l.xp6(1),l.Q6J("indentSize",lt.nzIndentSize),l.xp6(1),l.Q6J("expand",lt.nzExpand)("spaceMode",!lt.nzShowExpand)}}function mt(Et,un){if(1&Et){const lt=l.EpF();l.TgZ(0,"label",4),l.NdJ("ngModelChange",function(At){l.CHM(lt);const Qt=l.oxw();return l.KtG(Qt.onCheckedChange(At))}),l.qZA()}if(2&Et){const lt=l.oxw();l.Q6J("nzDisabled",lt.nzDisabled)("ngModel",lt.nzChecked)("nzIndeterminate",lt.nzIndeterminate)}}const we=["nzColumnKey",""];function de(Et,un){if(1&Et){const lt=l.EpF();l.TgZ(0,"nz-table-filter",5),l.NdJ("filterChange",function(At){l.CHM(lt);const Qt=l.oxw();return l.KtG(Qt.onFilterValueChange(At))}),l.qZA()}if(2&Et){const lt=l.oxw(),Ct=l.MAs(2),At=l.MAs(4);l.Q6J("contentTemplate",Ct)("extraTemplate",At)("customFilter",lt.nzCustomFilter)("filterMultiple",lt.nzFilterMultiple)("listOfFilter",lt.nzFilters)}}function U(Et,un){}function B(Et,un){if(1&Et&&l.YNc(0,U,0,0,"ng-template",6),2&Et){const lt=l.oxw(),Ct=l.MAs(6),At=l.MAs(8);l.Q6J("ngTemplateOutlet",lt.nzShowSort?Ct:At)}}function Ee(Et,un){1&Et&&(l.Hsn(0),l.Hsn(1,1))}function Ie(Et,un){if(1&Et&&l._UZ(0,"nz-table-sorters",7),2&Et){const lt=l.oxw(),Ct=l.MAs(8);l.Q6J("sortOrder",lt.sortOrder)("sortDirections",lt.sortDirections)("contentTemplate",Ct)}}function Ne(Et,un){1&Et&&l.Hsn(0,2)}const pt=[[["","nz-th-extra",""]],[["nz-filter-trigger"]],"*"],Dt=["[nz-th-extra]","nz-filter-trigger","*"],Ut=["nz-table-content",""];function qt(Et,un){if(1&Et&&l._UZ(0,"col"),2&Et){const lt=un.$implicit;l.Udp("width",lt)("min-width",lt)}}function en(Et,un){}function cn(Et,un){if(1&Et&&(l.TgZ(0,"thead",3),l.YNc(1,en,0,0,"ng-template",2),l.qZA()),2&Et){const lt=l.oxw();l.xp6(1),l.Q6J("ngTemplateOutlet",lt.theadTemplate)}}function Wt(Et,un){}const Vt=["tdElement"],st=["nz-table-fixed-row",""];function He(Et,un){}function et(Et,un){if(1&Et&&(l.TgZ(0,"div",4),l.ALo(1,"async"),l.YNc(2,He,0,0,"ng-template",5),l.qZA()),2&Et){const lt=l.oxw(),Ct=l.MAs(5);l.Udp("width",l.lcZ(1,3,lt.hostWidth$),"px"),l.xp6(2),l.Q6J("ngTemplateOutlet",Ct)}}function It(Et,un){1&Et&&l.Hsn(0)}const Ot=["nz-table-measure-row",""];function xt(Et,un){1&Et&&l._UZ(0,"td",1,2)}function Qe(Et,un){if(1&Et){const lt=l.EpF();l.TgZ(0,"tr",3),l.NdJ("listOfAutoWidth",function(At){l.CHM(lt);const Qt=l.oxw(2);return l.KtG(Qt.onListOfAutoWidthChange(At))}),l.qZA()}if(2&Et){const lt=l.oxw().ngIf;l.Q6J("listOfMeasureColumn",lt)}}function ke(Et,un){if(1&Et&&(l.ynx(0),l.YNc(1,Qe,1,1,"tr",2),l.BQk()),2&Et){const lt=un.ngIf,Ct=l.oxw();l.xp6(1),l.Q6J("ngIf",Ct.isInsideTable&<.length)}}function fe(Et,un){if(1&Et&&(l.TgZ(0,"tr",4),l._UZ(1,"nz-embed-empty",5),l.ALo(2,"async"),l.qZA()),2&Et){const lt=l.oxw();l.xp6(1),l.Q6J("specificContent",l.lcZ(2,1,lt.noResult$))}}const qe=["tableHeaderElement"],ge=["tableBodyElement"];function Ze(Et,un){if(1&Et&&(l.TgZ(0,"div",7,8),l._UZ(2,"table",9),l.qZA()),2&Et){const lt=l.oxw(2);l.Q6J("ngStyle",lt.bodyStyleMap),l.xp6(2),l.Q6J("scrollX",lt.scrollX)("listOfColWidth",lt.listOfColWidth)("contentTemplate",lt.contentTemplate)}}function $e(Et,un){}const Ue=function(Et,un){return{$implicit:Et,index:un}};function wt(Et,un){if(1&Et&&(l.ynx(0),l.YNc(1,$e,0,0,"ng-template",13),l.BQk()),2&Et){const lt=un.$implicit,Ct=un.index,At=l.oxw(3);l.xp6(1),l.Q6J("ngTemplateOutlet",At.virtualTemplate)("ngTemplateOutletContext",l.WLB(2,Ue,lt,Ct))}}function De(Et,un){if(1&Et&&(l.TgZ(0,"cdk-virtual-scroll-viewport",10,8)(2,"table",11)(3,"tbody"),l.YNc(4,wt,2,5,"ng-container",12),l.qZA()()()),2&Et){const lt=l.oxw(2);l.Udp("height",lt.data.length?lt.scrollY:lt.noDateVirtualHeight),l.Q6J("itemSize",lt.virtualItemSize)("maxBufferPx",lt.virtualMaxBufferPx)("minBufferPx",lt.virtualMinBufferPx),l.xp6(2),l.Q6J("scrollX",lt.scrollX)("listOfColWidth",lt.listOfColWidth),l.xp6(2),l.Q6J("cdkVirtualForOf",lt.data)("cdkVirtualForTrackBy",lt.virtualForTrackBy)}}function Pe(Et,un){if(1&Et&&(l.ynx(0),l.TgZ(1,"div",2,3),l._UZ(3,"table",4),l.qZA(),l.YNc(4,Ze,3,4,"div",5),l.YNc(5,De,5,9,"cdk-virtual-scroll-viewport",6),l.BQk()),2&Et){const lt=l.oxw();l.xp6(1),l.Q6J("ngStyle",lt.headerStyleMap),l.xp6(2),l.Q6J("scrollX",lt.scrollX)("listOfColWidth",lt.listOfColWidth)("theadTemplate",lt.theadTemplate),l.xp6(1),l.Q6J("ngIf",!lt.virtualTemplate),l.xp6(1),l.Q6J("ngIf",lt.virtualTemplate)}}function Je(Et,un){if(1&Et&&(l.TgZ(0,"div",14,8),l._UZ(2,"table",15),l.qZA()),2&Et){const lt=l.oxw();l.Q6J("ngStyle",lt.bodyStyleMap),l.xp6(2),l.Q6J("scrollX",lt.scrollX)("listOfColWidth",lt.listOfColWidth)("theadTemplate",lt.theadTemplate)("contentTemplate",lt.contentTemplate)}}function Ge(Et,un){if(1&Et&&(l.ynx(0),l._uU(1),l.BQk()),2&Et){const lt=l.oxw();l.xp6(1),l.Oqu(lt.title)}}function Ke(Et,un){if(1&Et&&(l.ynx(0),l._uU(1),l.BQk()),2&Et){const lt=l.oxw();l.xp6(1),l.Oqu(lt.footer)}}function ve(Et,un){}function it(Et,un){if(1&Et&&(l.ynx(0),l.YNc(1,ve,0,0,"ng-template",10),l.BQk()),2&Et){l.oxw();const lt=l.MAs(11);l.xp6(1),l.Q6J("ngTemplateOutlet",lt)}}function b(Et,un){if(1&Et&&l._UZ(0,"nz-table-title-footer",11),2&Et){const lt=l.oxw();l.Q6J("title",lt.nzTitle)}}function N(Et,un){if(1&Et&&l._UZ(0,"nz-table-inner-scroll",12),2&Et){const lt=l.oxw(),Ct=l.MAs(13),At=l.MAs(3);l.Q6J("data",lt.data)("scrollX",lt.scrollX)("scrollY",lt.scrollY)("contentTemplate",Ct)("listOfColWidth",lt.listOfAutoColWidth)("theadTemplate",lt.theadTemplate)("verticalScrollBarWidth",lt.verticalScrollBarWidth)("virtualTemplate",lt.nzVirtualScrollDirective?lt.nzVirtualScrollDirective.templateRef:null)("virtualItemSize",lt.nzVirtualItemSize)("virtualMaxBufferPx",lt.nzVirtualMaxBufferPx)("virtualMinBufferPx",lt.nzVirtualMinBufferPx)("tableMainElement",At)("virtualForTrackBy",lt.nzVirtualForTrackBy)}}function S(Et,un){if(1&Et&&l._UZ(0,"nz-table-inner-default",13),2&Et){const lt=l.oxw(),Ct=l.MAs(13);l.Q6J("tableLayout",lt.nzTableLayout)("listOfColWidth",lt.listOfManualColWidth)("theadTemplate",lt.theadTemplate)("contentTemplate",Ct)}}function $(Et,un){if(1&Et&&l._UZ(0,"nz-table-title-footer",14),2&Et){const lt=l.oxw();l.Q6J("footer",lt.nzFooter)}}function R(Et,un){}function he(Et,un){if(1&Et&&(l.ynx(0),l.YNc(1,R,0,0,"ng-template",10),l.BQk()),2&Et){l.oxw();const lt=l.MAs(11);l.xp6(1),l.Q6J("ngTemplateOutlet",lt)}}function ze(Et,un){if(1&Et){const lt=l.EpF();l.TgZ(0,"nz-pagination",16),l.NdJ("nzPageSizeChange",function(At){l.CHM(lt);const Qt=l.oxw(2);return l.KtG(Qt.onPageSizeChange(At))})("nzPageIndexChange",function(At){l.CHM(lt);const Qt=l.oxw(2);return l.KtG(Qt.onPageIndexChange(At))}),l.qZA()}if(2&Et){const lt=l.oxw(2);l.Q6J("hidden",!lt.showPagination)("nzShowSizeChanger",lt.nzShowSizeChanger)("nzPageSizeOptions",lt.nzPageSizeOptions)("nzItemRender",lt.nzItemRender)("nzShowQuickJumper",lt.nzShowQuickJumper)("nzHideOnSinglePage",lt.nzHideOnSinglePage)("nzShowTotal",lt.nzShowTotal)("nzSize","small"===lt.nzPaginationType?"small":"default"===lt.nzSize?"default":"small")("nzPageSize",lt.nzPageSize)("nzTotal",lt.nzTotal)("nzSimple",lt.nzSimple)("nzPageIndex",lt.nzPageIndex)}}function bt(Et,un){if(1&Et&&l.YNc(0,ze,1,12,"nz-pagination",15),2&Et){const lt=l.oxw();l.Q6J("ngIf",lt.nzShowPagination&<.data.length)}}function Ft(Et,un){1&Et&&l.Hsn(0)}const sn=["contentTemplate"];function pn(Et,un){1&Et&&l.Hsn(0)}function vn(Et,un){}function Dn(Et,un){if(1&Et&&(l.ynx(0),l.YNc(1,vn,0,0,"ng-template",2),l.BQk()),2&Et){l.oxw();const lt=l.MAs(1);l.xp6(1),l.Q6J("ngTemplateOutlet",lt)}}let En=(()=>{class Et{onVisibleChange(lt){this.nzVisible=lt,this.nzVisibleChange.next(lt)}hide(){this.nzVisible=!1,this.cdr.markForCheck()}show(){this.nzVisible=!0,this.cdr.markForCheck()}constructor(lt,Ct,At,Qt){this.nzConfigService=lt,this.ngZone=Ct,this.cdr=At,this.destroy$=Qt,this._nzModuleName="filterTrigger",this.nzActive=!1,this.nzVisible=!1,this.nzBackdrop=!1,this.nzVisibleChange=new l.vpe}ngOnInit(){this.ngZone.runOutsideAngular(()=>{(0,D.R)(this.nzDropdown.nativeElement,"click").pipe((0,K.R)(this.destroy$)).subscribe(lt=>{lt.stopPropagation()})})}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)(l.Y36(be.jY),l.Y36(l.R0b),l.Y36(l.sBO),l.Y36(le.kn))};static#t=this.\u0275cmp=l.Xpm({type:Et,selectors:[["nz-filter-trigger"]],viewQuery:function(Ct,At){if(1&Ct&&l.Gf(h.cm,7,l.SBq),2&Ct){let Qt;l.iGM(Qt=l.CRH())&&(At.nzDropdown=Qt.first)}},inputs:{nzActive:"nzActive",nzDropdownMenu:"nzDropdownMenu",nzVisible:"nzVisible",nzBackdrop:"nzBackdrop"},outputs:{nzVisibleChange:"nzVisibleChange"},exportAs:["nzFilterTrigger"],features:[l._Bn([le.kn])],ngContentSelectors:ae,decls:2,vars:8,consts:[["nz-dropdown","","nzTrigger","click","nzPlacement","bottomRight",1,"ant-table-filter-trigger",3,"nzBackdrop","nzClickHide","nzDropdownMenu","nzVisible","nzVisibleChange"]],template:function(Ct,At){1&Ct&&(l.F$t(),l.TgZ(0,"span",0),l.NdJ("nzVisibleChange",function(gn){return At.onVisibleChange(gn)}),l.Hsn(1),l.qZA()),2&Ct&&(l.ekj("active",At.nzActive)("ant-table-filter-open",At.nzVisible),l.Q6J("nzBackdrop",At.nzBackdrop)("nzClickHide",!1)("nzDropdownMenu",At.nzDropdownMenu)("nzVisible",At.nzVisible))},dependencies:[h.cm],encapsulation:2,changeDetection:0})}return(0,x.gn)([(0,be.oS)(),(0,ce.yF)()],Et.prototype,"nzBackdrop",void 0),Et})(),bn=(()=>{class Et{trackByValue(lt,Ct){return Ct.value}check(lt){this.filterMultiple?(this.listOfParsedFilter=this.listOfParsedFilter.map(Ct=>Ct===lt?{...Ct,checked:!lt.checked}:Ct),lt.checked=!lt.checked):this.listOfParsedFilter=this.listOfParsedFilter.map(Ct=>({...Ct,checked:Ct===lt})),this.isChecked=this.getCheckedStatus(this.listOfParsedFilter)}confirm(){this.isVisible=!1,this.emitFilterData()}reset(){this.isVisible=!1,this.listOfParsedFilter=this.parseListOfFilter(this.listOfFilter,!0),this.isChecked=this.getCheckedStatus(this.listOfParsedFilter),this.emitFilterData()}onVisibleChange(lt){this.isVisible=lt,lt?this.listOfChecked=this.listOfParsedFilter.filter(Ct=>Ct.checked).map(Ct=>Ct.value):this.emitFilterData()}emitFilterData(){const lt=this.listOfParsedFilter.filter(Ct=>Ct.checked).map(Ct=>Ct.value);(0,ce.cO)(this.listOfChecked,lt)||this.filterChange.emit(this.filterMultiple?lt:lt.length>0?lt[0]:null)}parseListOfFilter(lt,Ct){return lt.map(At=>({text:At.text,value:At.value,checked:!Ct&&!!At.byDefault}))}getCheckedStatus(lt){return lt.some(Ct=>Ct.checked)}constructor(lt,Ct){this.cdr=lt,this.i18n=Ct,this.contentTemplate=null,this.customFilter=!1,this.extraTemplate=null,this.filterMultiple=!0,this.listOfFilter=[],this.filterChange=new l.vpe,this.destroy$=new _.x,this.isChecked=!1,this.isVisible=!1,this.listOfParsedFilter=[],this.listOfChecked=[]}ngOnInit(){this.i18n.localeChange.pipe((0,K.R)(this.destroy$)).subscribe(()=>{this.locale=this.i18n.getLocaleData("Table"),this.cdr.markForCheck()})}ngOnChanges(lt){const{listOfFilter:Ct}=lt;Ct&&this.listOfFilter&&this.listOfFilter.length&&(this.listOfParsedFilter=this.parseListOfFilter(this.listOfFilter),this.isChecked=this.getCheckedStatus(this.listOfParsedFilter))}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)(l.Y36(l.sBO),l.Y36(g.wi))};static#t=this.\u0275cmp=l.Xpm({type:Et,selectors:[["nz-table-filter"]],hostAttrs:[1,"ant-table-filter-column"],inputs:{contentTemplate:"contentTemplate",customFilter:"customFilter",extraTemplate:"extraTemplate",filterMultiple:"filterMultiple",listOfFilter:"listOfFilter"},outputs:{filterChange:"filterChange"},features:[l.TTD],decls:3,vars:3,consts:[[1,"ant-table-column-title"],[3,"ngTemplateOutlet"],[4,"ngIf","ngIfElse"],[3,"nzVisible","nzActive","nzDropdownMenu","nzVisibleChange"],["nz-icon","","nzType","filter","nzTheme","fill"],["filterMenu","nzDropdownMenu"],[1,"ant-table-filter-dropdown"],["nz-menu",""],["nz-menu-item","",3,"nzSelected","click",4,"ngFor","ngForOf","ngForTrackBy"],[1,"ant-table-filter-dropdown-btns"],["nz-button","","nzType","link","nzSize","small",3,"disabled","click"],["nz-button","","nzType","primary","nzSize","small",3,"click"],["nz-menu-item","",3,"nzSelected","click"],["nz-radio","",3,"ngModel","ngModelChange",4,"ngIf"],["nz-checkbox","",3,"ngModel","ngModelChange",4,"ngIf"],["nz-radio","",3,"ngModel","ngModelChange"],["nz-checkbox","",3,"ngModel","ngModelChange"]],template:function(Ct,At){1&Ct&&(l.TgZ(0,"span",0),l.YNc(1,xe,0,0,"ng-template",1),l.qZA(),l.YNc(2,ye,13,8,"ng-container",2)),2&Ct&&(l.xp6(1),l.Q6J("ngTemplateOutlet",At.contentTemplate),l.xp6(1),l.Q6J("ngIf",!At.customFilter)("ngIfElse",At.extraTemplate))},dependencies:[p.wO,p.u9,C.JJ,C.On,y.Of,z.Ie,h.RR,E.ix,Q.w,ie.dQ,i.sg,i.O5,i.tP,d.Ls,En],encapsulation:2,changeDetection:0})}return Et})(),Rn=(()=>{class Et{constructor(){this.expand=!1,this.spaceMode=!1,this.expandChange=new l.vpe}onHostClick(){this.spaceMode||(this.expand=!this.expand,this.expandChange.next(this.expand))}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)};static#t=this.\u0275dir=l.lG2({type:Et,selectors:[["button","nz-row-expand-button",""]],hostAttrs:[1,"ant-table-row-expand-icon"],hostVars:7,hostBindings:function(Ct,At){1&Ct&&l.NdJ("click",function(){return At.onHostClick()}),2&Ct&&(l.Ikx("type","button"),l.ekj("ant-table-row-expand-icon-expanded",!At.spaceMode&&!0===At.expand)("ant-table-row-expand-icon-collapsed",!At.spaceMode&&!1===At.expand)("ant-table-row-expand-icon-spaced",At.spaceMode))},inputs:{expand:"expand",spaceMode:"spaceMode"},outputs:{expandChange:"expandChange"}})}return Et})(),qn=(()=>{class Et{constructor(){this.indentSize=0}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)};static#t=this.\u0275dir=l.lG2({type:Et,selectors:[["nz-row-indent"]],hostAttrs:[1,"ant-table-row-indent"],hostVars:2,hostBindings:function(Ct,At){2&Ct&&l.Udp("padding-left",At.indentSize,"px")},inputs:{indentSize:"indentSize"}})}return Et})(),Wn=(()=>{class Et{constructor(){this.sortDirections=["ascend","descend",null],this.sortOrder=null,this.contentTemplate=null,this.isUp=!1,this.isDown=!1}ngOnChanges(lt){const{sortDirections:Ct}=lt;Ct&&(this.isUp=-1!==this.sortDirections.indexOf("ascend"),this.isDown=-1!==this.sortDirections.indexOf("descend"))}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)};static#t=this.\u0275cmp=l.Xpm({type:Et,selectors:[["nz-table-sorters"]],hostAttrs:[1,"ant-table-column-sorters"],inputs:{sortDirections:"sortDirections",sortOrder:"sortOrder",contentTemplate:"contentTemplate"},features:[l.TTD],decls:6,vars:5,consts:[[1,"ant-table-column-title"],[3,"ngTemplateOutlet"],[1,"ant-table-column-sorter"],[1,"ant-table-column-sorter-inner"],["nz-icon","","nzType","caret-up","class","ant-table-column-sorter-up",3,"active",4,"ngIf"],["nz-icon","","nzType","caret-down","class","ant-table-column-sorter-down",3,"active",4,"ngIf"],["nz-icon","","nzType","caret-up",1,"ant-table-column-sorter-up"],["nz-icon","","nzType","caret-down",1,"ant-table-column-sorter-down"]],template:function(Ct,At){1&Ct&&(l.TgZ(0,"span",0),l.YNc(1,ct,0,0,"ng-template",1),l.qZA(),l.TgZ(2,"span",2)(3,"span",3),l.YNc(4,Ae,1,2,"span",4),l.YNc(5,Mt,1,2,"span",5),l.qZA()()),2&Ct&&(l.xp6(1),l.Q6J("ngTemplateOutlet",At.contentTemplate),l.xp6(1),l.ekj("ant-table-column-sorter-full",At.isDown&&At.isUp),l.xp6(2),l.Q6J("ngIf",At.isUp),l.xp6(1),l.Q6J("ngIf",At.isDown))},dependencies:[Q.w,i.O5,i.tP,d.Ls],encapsulation:2,changeDetection:0})}return Et})(),ci=(()=>{class Et{setAutoLeftWidth(lt){this.renderer.setStyle(this.elementRef.nativeElement,"left",lt)}setAutoRightWidth(lt){this.renderer.setStyle(this.elementRef.nativeElement,"right",lt)}setIsFirstRight(lt){this.setFixClass(lt,"ant-table-cell-fix-right-first")}setIsLastLeft(lt){this.setFixClass(lt,"ant-table-cell-fix-left-last")}setFixClass(lt,Ct){this.renderer.removeClass(this.elementRef.nativeElement,Ct),lt&&this.renderer.addClass(this.elementRef.nativeElement,Ct)}constructor(lt,Ct){this.renderer=lt,this.elementRef=Ct,this.nzRight=!1,this.nzLeft=!1,this.colspan=null,this.colSpan=null,this.changes$=new _.x,this.isAutoLeft=!1,this.isAutoRight=!1,this.isFixedLeft=!1,this.isFixedRight=!1,this.isFixed=!1}ngOnChanges(){this.setIsFirstRight(!1),this.setIsLastLeft(!1),this.isAutoLeft=""===this.nzLeft||!0===this.nzLeft,this.isAutoRight=""===this.nzRight||!0===this.nzRight,this.isFixedLeft=!1!==this.nzLeft,this.isFixedRight=!1!==this.nzRight,this.isFixed=this.isFixedLeft||this.isFixedRight;const lt=Ct=>"string"==typeof Ct&&""!==Ct?Ct:null;this.setAutoLeftWidth(lt(this.nzLeft)),this.setAutoRightWidth(lt(this.nzRight)),this.changes$.next()}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)(l.Y36(l.Qsj),l.Y36(l.SBq))};static#t=this.\u0275dir=l.lG2({type:Et,selectors:[["td","nzRight",""],["th","nzRight",""],["td","nzLeft",""],["th","nzLeft",""]],hostVars:6,hostBindings:function(Ct,At){2&Ct&&(l.Udp("position",At.isFixed?"sticky":null),l.ekj("ant-table-cell-fix-right",At.isFixedRight)("ant-table-cell-fix-left",At.isFixedLeft))},inputs:{nzRight:"nzRight",nzLeft:"nzLeft",colspan:"colspan",colSpan:"colSpan"},features:[l.TTD]})}return Et})(),ri=(()=>{class Et{setTheadTemplate(lt){this.theadTemplate$.next(lt)}setHasFixLeft(lt){this.hasFixLeft$.next(lt)}setHasFixRight(lt){this.hasFixRight$.next(lt)}setTableWidthConfig(lt){this.tableWidthConfigPx$.next(lt)}setListOfTh(lt){let Ct=0;lt.forEach(Qt=>{Ct+=Qt.colspan&&+Qt.colspan||Qt.colSpan&&+Qt.colSpan||1});const At=lt.map(Qt=>Qt.nzWidth);this.columnCount$.next(Ct),this.listOfThWidthConfigPx$.next(At)}setListOfMeasureColumn(lt){const Ct=[];lt.forEach(At=>{const Qt=At.colspan&&+At.colspan||At.colSpan&&+At.colSpan||1;for(let gn=0;gn`${Ct}px`))}setShowEmpty(lt){this.showEmpty$.next(lt)}setNoResult(lt){this.noResult$.next(lt)}setScroll(lt,Ct){const At=!(!lt&&!Ct);At||this.setListOfAutoWidth([]),this.enableAutoMeasure$.next(At)}constructor(){this.theadTemplate$=new P.t(1),this.hasFixLeft$=new P.t(1),this.hasFixRight$=new P.t(1),this.hostWidth$=new P.t(1),this.columnCount$=new P.t(1),this.showEmpty$=new P.t(1),this.noResult$=new P.t(1),this.listOfThWidthConfigPx$=new O.X([]),this.tableWidthConfigPx$=new O.X([]),this.manualWidthConfigPx$=(0,A.a)([this.tableWidthConfigPx$,this.listOfThWidthConfigPx$]).pipe((0,_e.U)(([lt,Ct])=>lt.length?lt:Ct)),this.listOfAutoWidthPx$=new P.t(1),this.listOfListOfThWidthPx$=(0,k.T)(this.manualWidthConfigPx$,(0,A.a)([this.listOfAutoWidthPx$,this.manualWidthConfigPx$]).pipe((0,_e.U)(([lt,Ct])=>lt.length===Ct.length?lt.map((At,Qt)=>"0px"===At?Ct[Qt]||null:Ct[Qt]||At):Ct))),this.listOfMeasureColumn$=new P.t(1),this.listOfListOfThWidth$=this.listOfAutoWidthPx$.pipe((0,_e.U)(lt=>lt.map(Ct=>parseInt(Ct,10)))),this.enableAutoMeasure$=new P.t(1)}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)};static#t=this.\u0275prov=l.Yz7({token:Et,factory:Et.\u0275fac})}return Et})(),di=(()=>{class Et{constructor(lt){this.isInsideTable=!1,this.isInsideTable=!!lt}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)(l.Y36(ri,8))};static#t=this.\u0275dir=l.lG2({type:Et,selectors:[["th",9,"nz-disable-th",3,"mat-cell",""],["td",9,"nz-disable-td",3,"mat-cell",""]],hostVars:2,hostBindings:function(Ct,At){2&Ct&&l.ekj("ant-table-cell",At.isInsideTable)}})}return Et})(),hi=(()=>{class Et{updatePageSize(lt){this.pageSize$.next(lt)}updateFrontPagination(lt){this.frontPagination$.next(lt)}updatePageIndex(lt){this.pageIndex$.next(lt)}updateListOfData(lt){this.listOfData$.next(lt)}updateListOfCustomColumn(lt){this.listOfCustomColumn$.next(lt)}constructor(){this.destroy$=new _.x,this.pageIndex$=new O.X(1),this.frontPagination$=new O.X(!0),this.pageSize$=new O.X(10),this.listOfData$=new O.X([]),this.listOfCustomColumn$=new O.X([]),this.pageIndexDistinct$=this.pageIndex$.pipe((0,Y.x)()),this.pageSizeDistinct$=this.pageSize$.pipe((0,Y.x)()),this.listOfCalcOperator$=new O.X([]),this.queryParams$=(0,A.a)([this.pageIndexDistinct$,this.pageSizeDistinct$,this.listOfCalcOperator$]).pipe((0,G.b)(0),(0,H.T)(1),(0,_e.U)(([lt,Ct,At])=>({pageIndex:lt,pageSize:Ct,sort:At.filter(Qt=>Qt.sortFn).map(Qt=>({key:Qt.key,value:Qt.sortOrder})),filter:At.filter(Qt=>Qt.filterFn).map(Qt=>({key:Qt.key,value:Qt.filterValue}))}))),this.listOfDataAfterCalc$=(0,A.a)([this.listOfData$,this.listOfCalcOperator$]).pipe((0,_e.U)(([lt,Ct])=>{let At=[...lt];const Qt=Ct.filter(Ln=>{const{filterValue:Sn,filterFn:gi}=Ln;return!(null==Sn||Array.isArray(Sn)&&0===Sn.length)&&"function"==typeof gi});for(const Ln of Qt){const{filterFn:Sn,filterValue:gi}=Ln;At=At.filter(St=>Sn(gi,St))}const gn=Ct.filter(Ln=>null!==Ln.sortOrder&&"function"==typeof Ln.sortFn).sort((Ln,Sn)=>+Sn.sortPriority-+Ln.sortPriority);return Ct.length&&At.sort((Ln,Sn)=>{for(const gi of gn){const{sortFn:St,sortOrder:gt}=gi;if(St&>){const We=St(Ln,Sn,gt);if(0!==We)return"ascend"===gt?We:-We}}return 0}),At})),this.listOfFrontEndCurrentPageData$=(0,A.a)([this.pageIndexDistinct$,this.pageSizeDistinct$,this.listOfDataAfterCalc$]).pipe((0,K.R)(this.destroy$),(0,j.h)(lt=>{const[Ct,At,Qt]=lt;return Ct<=(Math.ceil(Qt.length/At)||1)}),(0,_e.U)(([lt,Ct,At])=>At.slice((lt-1)*Ct,lt*Ct))),this.listOfCurrentPageData$=this.frontPagination$.pipe((0,te.w)(lt=>lt?this.listOfFrontEndCurrentPageData$:this.listOfDataAfterCalc$)),this.total$=this.frontPagination$.pipe((0,te.w)(lt=>lt?this.listOfDataAfterCalc$:this.listOfData$),(0,_e.U)(lt=>lt.length),(0,Y.x)())}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)};static#t=this.\u0275prov=l.Yz7({token:Et,factory:Et.\u0275fac})}return Et})(),zi=(()=>{class Et{constructor(){this.nzChecked=!1,this.nzDisabled=!1,this.nzIndeterminate=!1,this.nzIndentSize=0,this.nzShowExpand=!1,this.nzShowCheckbox=!1,this.nzExpand=!1,this.nzCheckedChange=new l.vpe,this.nzExpandChange=new l.vpe,this.isNzShowExpandChanged=!1,this.isNzShowCheckboxChanged=!1}onCheckedChange(lt){this.nzChecked=lt,this.nzCheckedChange.emit(lt)}onExpandChange(lt){this.nzExpand=lt,this.nzExpandChange.emit(lt)}ngOnChanges(lt){const Ct=Sn=>Sn&&Sn.firstChange&&void 0!==Sn.currentValue,{nzExpand:At,nzChecked:Qt,nzShowExpand:gn,nzShowCheckbox:Ln}=lt;gn&&(this.isNzShowExpandChanged=!0),Ln&&(this.isNzShowCheckboxChanged=!0),Ct(At)&&!this.isNzShowExpandChanged&&(this.nzShowExpand=!0),Ct(Qt)&&!this.isNzShowCheckboxChanged&&(this.nzShowCheckbox=!0)}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)};static#t=this.\u0275cmp=l.Xpm({type:Et,selectors:[["td","nzChecked",""],["td","nzDisabled",""],["td","nzIndeterminate",""],["td","nzIndentSize",""],["td","nzExpand",""],["td","nzShowExpand",""],["td","nzShowCheckbox",""]],hostVars:4,hostBindings:function(Ct,At){2&Ct&&l.ekj("ant-table-cell-with-append",At.nzShowExpand||At.nzIndentSize>0)("ant-table-selection-column",At.nzShowCheckbox)},inputs:{nzChecked:"nzChecked",nzDisabled:"nzDisabled",nzIndeterminate:"nzIndeterminate",nzIndentSize:"nzIndentSize",nzShowExpand:"nzShowExpand",nzShowCheckbox:"nzShowCheckbox",nzExpand:"nzExpand"},outputs:{nzCheckedChange:"nzCheckedChange",nzExpandChange:"nzExpandChange"},features:[l.TTD],attrs:je,ngContentSelectors:ae,decls:3,vars:2,consts:[[4,"ngIf"],["nz-checkbox","",3,"nzDisabled","ngModel","nzIndeterminate","ngModelChange",4,"ngIf"],[3,"indentSize"],["nz-row-expand-button","",3,"expand","spaceMode","expandChange"],["nz-checkbox","",3,"nzDisabled","ngModel","nzIndeterminate","ngModelChange"]],template:function(Ct,At){1&Ct&&(l.F$t(),l.YNc(0,ot,3,3,"ng-container",0),l.YNc(1,mt,1,3,"label",1),l.Hsn(2)),2&Ct&&(l.Q6J("ngIf",At.nzShowExpand||At.nzIndentSize>0),l.xp6(1),l.Q6J("ngIf",At.nzShowCheckbox))},dependencies:[C.JJ,C.On,z.Ie,i.O5,qn,Rn],encapsulation:2,changeDetection:0})}return(0,x.gn)([(0,ce.yF)()],Et.prototype,"nzShowExpand",void 0),(0,x.gn)([(0,ce.yF)()],Et.prototype,"nzShowCheckbox",void 0),(0,x.gn)([(0,ce.yF)()],Et.prototype,"nzExpand",void 0),Et})(),Oi=(()=>{class Et{getNextSortDirection(lt,Ct){const At=lt.indexOf(Ct);return At===lt.length-1?lt[0]:lt[At+1]}setSortOrder(lt){this.sortOrderChange$.next(lt)}clearSortOrder(){null!==this.sortOrder&&this.setSortOrder(null)}onFilterValueChange(lt){this.nzFilterChange.emit(lt),this.nzFilterValue=lt,this.updateCalcOperator()}updateCalcOperator(){this.calcOperatorChange$.next()}constructor(lt,Ct,At,Qt){this.host=lt,this.cdr=Ct,this.ngZone=At,this.destroy$=Qt,this.manualClickOrder$=new _.x,this.calcOperatorChange$=new _.x,this.nzFilterValue=null,this.sortOrder=null,this.sortDirections=["ascend","descend",null],this.sortOrderChange$=new _.x,this.isNzShowSortChanged=!1,this.isNzShowFilterChanged=!1,this.nzFilterMultiple=!0,this.nzSortOrder=null,this.nzSortPriority=!1,this.nzSortDirections=["ascend","descend",null],this.nzFilters=[],this.nzSortFn=null,this.nzFilterFn=null,this.nzShowSort=!1,this.nzShowFilter=!1,this.nzCustomFilter=!1,this.nzCheckedChange=new l.vpe,this.nzSortOrderChange=new l.vpe,this.nzFilterChange=new l.vpe}ngOnInit(){this.ngZone.runOutsideAngular(()=>(0,D.R)(this.host.nativeElement,"click").pipe((0,j.h)(()=>this.nzShowSort),(0,K.R)(this.destroy$)).subscribe(()=>{const lt=this.getNextSortDirection(this.sortDirections,this.sortOrder);this.ngZone.run(()=>{this.setSortOrder(lt),this.manualClickOrder$.next(this)})})),this.sortOrderChange$.pipe((0,K.R)(this.destroy$)).subscribe(lt=>{this.sortOrder!==lt&&(this.sortOrder=lt,this.nzSortOrderChange.emit(lt)),this.updateCalcOperator(),this.cdr.markForCheck()})}ngOnChanges(lt){const{nzSortDirections:Ct,nzFilters:At,nzSortOrder:Qt,nzSortFn:gn,nzFilterFn:Ln,nzSortPriority:Sn,nzFilterMultiple:gi,nzShowSort:St,nzShowFilter:gt}=lt;Ct&&this.nzSortDirections&&this.nzSortDirections.length&&(this.sortDirections=this.nzSortDirections),Qt&&(this.sortOrder=this.nzSortOrder,this.setSortOrder(this.nzSortOrder)),St&&(this.isNzShowSortChanged=!0),gt&&(this.isNzShowFilterChanged=!0);const We=Nt=>Nt&&Nt.firstChange&&void 0!==Nt.currentValue;if((We(Qt)||We(gn))&&!this.isNzShowSortChanged&&(this.nzShowSort=!0),We(At)&&!this.isNzShowFilterChanged&&(this.nzShowFilter=!0),(At||gi)&&this.nzShowFilter){const Nt=this.nzFilters.filter(Kt=>Kt.byDefault).map(Kt=>Kt.value);this.nzFilterValue=this.nzFilterMultiple?Nt:Nt[0]||null}(gn||Ln||Sn||At)&&this.updateCalcOperator()}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)(l.Y36(l.SBq),l.Y36(l.sBO),l.Y36(l.R0b),l.Y36(le.kn))};static#t=this.\u0275cmp=l.Xpm({type:Et,selectors:[["th","nzColumnKey",""],["th","nzSortFn",""],["th","nzSortOrder",""],["th","nzFilters",""],["th","nzShowSort",""],["th","nzShowFilter",""],["th","nzCustomFilter",""]],hostVars:4,hostBindings:function(Ct,At){2&Ct&&l.ekj("ant-table-column-has-sorters",At.nzShowSort)("ant-table-column-sort","descend"===At.sortOrder||"ascend"===At.sortOrder)},inputs:{nzColumnKey:"nzColumnKey",nzFilterMultiple:"nzFilterMultiple",nzSortOrder:"nzSortOrder",nzSortPriority:"nzSortPriority",nzSortDirections:"nzSortDirections",nzFilters:"nzFilters",nzSortFn:"nzSortFn",nzFilterFn:"nzFilterFn",nzShowSort:"nzShowSort",nzShowFilter:"nzShowFilter",nzCustomFilter:"nzCustomFilter"},outputs:{nzCheckedChange:"nzCheckedChange",nzSortOrderChange:"nzSortOrderChange",nzFilterChange:"nzFilterChange"},features:[l._Bn([le.kn]),l.TTD],attrs:we,ngContentSelectors:Dt,decls:9,vars:2,consts:[[3,"contentTemplate","extraTemplate","customFilter","filterMultiple","listOfFilter","filterChange",4,"ngIf","ngIfElse"],["notFilterTemplate",""],["extraTemplate",""],["sortTemplate",""],["contentTemplate",""],[3,"contentTemplate","extraTemplate","customFilter","filterMultiple","listOfFilter","filterChange"],[3,"ngTemplateOutlet"],[3,"sortOrder","sortDirections","contentTemplate"]],template:function(Ct,At){if(1&Ct&&(l.F$t(pt),l.YNc(0,de,1,5,"nz-table-filter",0),l.YNc(1,B,1,1,"ng-template",null,1,l.W1O),l.YNc(3,Ee,2,0,"ng-template",null,2,l.W1O),l.YNc(5,Ie,1,3,"ng-template",null,3,l.W1O),l.YNc(7,Ne,1,0,"ng-template",null,4,l.W1O)),2&Ct){const Qt=l.MAs(2);l.Q6J("ngIf",At.nzShowFilter||At.nzCustomFilter)("ngIfElse",Qt)}},dependencies:[i.O5,i.tP,Wn,bn],encapsulation:2,changeDetection:0})}return(0,x.gn)([(0,ce.yF)()],Et.prototype,"nzShowSort",void 0),(0,x.gn)([(0,ce.yF)()],Et.prototype,"nzShowFilter",void 0),(0,x.gn)([(0,ce.yF)()],Et.prototype,"nzCustomFilter",void 0),Et})(),ei=(()=>{class Et{constructor(lt,Ct){this.renderer=lt,this.elementRef=Ct,this.changes$=new _.x,this.nzWidth=null,this.colspan=null,this.colSpan=null,this.rowspan=null,this.rowSpan=null}ngOnChanges(lt){const{nzWidth:Ct,colspan:At,rowspan:Qt,colSpan:gn,rowSpan:Ln}=lt;if(At||gn){const Sn=this.colspan||this.colSpan;(0,ce.kK)(Sn)?this.renderer.removeAttribute(this.elementRef.nativeElement,"colspan"):this.renderer.setAttribute(this.elementRef.nativeElement,"colspan",`${Sn}`)}if(Qt||Ln){const Sn=this.rowspan||this.rowSpan;(0,ce.kK)(Sn)?this.renderer.removeAttribute(this.elementRef.nativeElement,"rowspan"):this.renderer.setAttribute(this.elementRef.nativeElement,"rowspan",`${Sn}`)}(Ct||At)&&this.changes$.next()}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)(l.Y36(l.Qsj),l.Y36(l.SBq))};static#t=this.\u0275dir=l.lG2({type:Et,selectors:[["th"]],inputs:{nzWidth:"nzWidth",colspan:"colspan",colSpan:"colSpan",rowspan:"rowspan",rowSpan:"rowSpan"},features:[l.TTD]})}return Et})(),Li=(()=>{class Et{constructor(){this.tableLayout="auto",this.theadTemplate=null,this.contentTemplate=null,this.listOfColWidth=[],this.scrollX=null}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)};static#t=this.\u0275cmp=l.Xpm({type:Et,selectors:[["table","nz-table-content",""]],hostVars:8,hostBindings:function(Ct,At){2&Ct&&(l.Udp("table-layout",At.tableLayout)("width",At.scrollX)("min-width",At.scrollX?"100%":null),l.ekj("ant-table-fixed",At.scrollX))},inputs:{tableLayout:"tableLayout",theadTemplate:"theadTemplate",contentTemplate:"contentTemplate",listOfColWidth:"listOfColWidth",scrollX:"scrollX"},attrs:Ut,ngContentSelectors:ae,decls:4,vars:3,consts:[[3,"width","minWidth",4,"ngFor","ngForOf"],["class","ant-table-thead",4,"ngIf"],[3,"ngTemplateOutlet"],[1,"ant-table-thead"]],template:function(Ct,At){1&Ct&&(l.F$t(),l.YNc(0,qt,1,4,"col",0),l.YNc(1,cn,2,1,"thead",1),l.YNc(2,Wt,0,0,"ng-template",2),l.Hsn(3)),2&Ct&&(l.Q6J("ngForOf",At.listOfColWidth),l.xp6(1),l.Q6J("ngIf",At.theadTemplate),l.xp6(1),l.Q6J("ngTemplateOutlet",At.contentTemplate))},dependencies:[i.sg,i.O5,i.tP],encapsulation:2,changeDetection:0})}return Et})(),$i=(()=>{class Et{constructor(lt,Ct){this.nzTableStyleService=lt,this.renderer=Ct,this.hostWidth$=new O.X(null),this.enableAutoMeasure$=new O.X(!1),this.destroy$=new _.x}ngOnInit(){if(this.nzTableStyleService){const{enableAutoMeasure$:lt,hostWidth$:Ct}=this.nzTableStyleService;lt.pipe((0,K.R)(this.destroy$)).subscribe(this.enableAutoMeasure$),Ct.pipe((0,K.R)(this.destroy$)).subscribe(this.hostWidth$)}}ngAfterViewInit(){this.nzTableStyleService.columnCount$.pipe((0,K.R)(this.destroy$)).subscribe(lt=>{this.renderer.setAttribute(this.tdElement.nativeElement,"colspan",`${lt}`)})}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)(l.Y36(ri),l.Y36(l.Qsj))};static#t=this.\u0275cmp=l.Xpm({type:Et,selectors:[["tr","nz-table-fixed-row",""],["tr","nzExpand",""]],viewQuery:function(Ct,At){if(1&Ct&&l.Gf(Vt,7),2&Ct){let Qt;l.iGM(Qt=l.CRH())&&(At.tdElement=Qt.first)}},attrs:st,ngContentSelectors:ae,decls:6,vars:4,consts:[[1,"nz-disable-td","ant-table-cell"],["tdElement",""],["class","ant-table-expanded-row-fixed","style","position: sticky; left: 0px; overflow: hidden;",3,"width",4,"ngIf","ngIfElse"],["contentTemplate",""],[1,"ant-table-expanded-row-fixed",2,"position","sticky","left","0px","overflow","hidden"],[3,"ngTemplateOutlet"]],template:function(Ct,At){if(1&Ct&&(l.F$t(),l.TgZ(0,"td",0,1),l.YNc(2,et,3,5,"div",2),l.ALo(3,"async"),l.qZA(),l.YNc(4,It,1,0,"ng-template",null,3,l.W1O)),2&Ct){const Qt=l.MAs(5);l.xp6(2),l.Q6J("ngIf",l.lcZ(3,2,At.enableAutoMeasure$))("ngIfElse",Qt)}},dependencies:[i.O5,i.tP,i.Ov],encapsulation:2,changeDetection:0})}return Et})(),Qi=(()=>{class Et{constructor(){this.tableLayout="auto",this.listOfColWidth=[],this.theadTemplate=null,this.contentTemplate=null}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)};static#t=this.\u0275cmp=l.Xpm({type:Et,selectors:[["nz-table-inner-default"]],hostAttrs:[1,"ant-table-container"],inputs:{tableLayout:"tableLayout",listOfColWidth:"listOfColWidth",theadTemplate:"theadTemplate",contentTemplate:"contentTemplate"},decls:2,vars:4,consts:[[1,"ant-table-content"],["nz-table-content","",3,"contentTemplate","tableLayout","listOfColWidth","theadTemplate"]],template:function(Ct,At){1&Ct&&(l.TgZ(0,"div",0),l._UZ(1,"table",1),l.qZA()),2&Ct&&(l.xp6(1),l.Q6J("contentTemplate",At.contentTemplate)("tableLayout",At.tableLayout)("listOfColWidth",At.listOfColWidth)("theadTemplate",At.theadTemplate))},dependencies:[Li],encapsulation:2,changeDetection:0})}return Et})(),Mo=(()=>{class Et{constructor(lt,Ct){this.nzResizeObserver=lt,this.ngZone=Ct,this.listOfMeasureColumn=[],this.listOfAutoWidth=new l.vpe,this.destroy$=new _.x}trackByFunc(lt,Ct){return Ct}ngAfterViewInit(){this.listOfTdElement.changes.pipe((0,ne.O)(this.listOfTdElement)).pipe((0,te.w)(lt=>(0,A.a)(lt.toArray().map(Ct=>this.nzResizeObserver.observe(Ct).pipe((0,_e.U)(([At])=>{const{width:Qt}=At.target.getBoundingClientRect();return Math.floor(Qt)}))))),(0,G.b)(16),(0,K.R)(this.destroy$)).subscribe(lt=>{this.ngZone instanceof l.R0b&&l.R0b.isInAngularZone()?this.listOfAutoWidth.next(lt):this.ngZone.run(()=>this.listOfAutoWidth.next(lt))})}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)(l.Y36(u.D3),l.Y36(l.R0b))};static#t=this.\u0275cmp=l.Xpm({type:Et,selectors:[["tr","nz-table-measure-row",""]],viewQuery:function(Ct,At){if(1&Ct&&l.Gf(Vt,5),2&Ct){let Qt;l.iGM(Qt=l.CRH())&&(At.listOfTdElement=Qt)}},hostAttrs:[1,"ant-table-measure-now"],inputs:{listOfMeasureColumn:"listOfMeasureColumn"},outputs:{listOfAutoWidth:"listOfAutoWidth"},attrs:Ot,decls:1,vars:2,consts:[["class","nz-disable-td","style","padding: 0px; border: 0px; height: 0px;",4,"ngFor","ngForOf","ngForTrackBy"],[1,"nz-disable-td",2,"padding","0px","border","0px","height","0px"],["tdElement",""]],template:function(Ct,At){1&Ct&&l.YNc(0,xt,2,0,"td",0),2&Ct&&l.Q6J("ngForOf",At.listOfMeasureColumn)("ngForTrackBy",At.trackByFunc)},dependencies:[i.sg],encapsulation:2,changeDetection:0})}return Et})(),wi=(()=>{class Et{constructor(lt){if(this.nzTableStyleService=lt,this.isInsideTable=!1,this.showEmpty$=new O.X(!1),this.noResult$=new O.X(void 0),this.listOfMeasureColumn$=new O.X([]),this.destroy$=new _.x,this.isInsideTable=!!this.nzTableStyleService,this.nzTableStyleService){const{showEmpty$:Ct,noResult$:At,listOfMeasureColumn$:Qt}=this.nzTableStyleService;At.pipe((0,K.R)(this.destroy$)).subscribe(this.noResult$),Qt.pipe((0,K.R)(this.destroy$)).subscribe(this.listOfMeasureColumn$),Ct.pipe((0,K.R)(this.destroy$)).subscribe(this.showEmpty$)}}onListOfAutoWidthChange(lt){this.nzTableStyleService.setListOfAutoWidth(lt)}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)(l.Y36(ri,8))};static#t=this.\u0275cmp=l.Xpm({type:Et,selectors:[["tbody"]],hostVars:2,hostBindings:function(Ct,At){2&Ct&&l.ekj("ant-table-tbody",At.isInsideTable)},ngContentSelectors:ae,decls:5,vars:6,consts:[[4,"ngIf"],["class","ant-table-placeholder","nz-table-fixed-row","",4,"ngIf"],["nz-table-measure-row","",3,"listOfMeasureColumn","listOfAutoWidth",4,"ngIf"],["nz-table-measure-row","",3,"listOfMeasureColumn","listOfAutoWidth"],["nz-table-fixed-row","",1,"ant-table-placeholder"],["nzComponentName","table",3,"specificContent"]],template:function(Ct,At){1&Ct&&(l.F$t(),l.YNc(0,ke,2,1,"ng-container",0),l.ALo(1,"async"),l.Hsn(2),l.YNc(3,fe,3,3,"tr",1),l.ALo(4,"async")),2&Ct&&(l.Q6J("ngIf",l.lcZ(1,2,At.listOfMeasureColumn$)),l.xp6(3),l.Q6J("ngIf",l.lcZ(4,4,At.showEmpty$)))},dependencies:[i.O5,v.gB,Mo,$i,i.Ov],encapsulation:2,changeDetection:0})}return Et})(),Xi=(()=>{class Et{setScrollPositionClassName(lt=!1){const{scrollWidth:Ct,scrollLeft:At,clientWidth:Qt}=this.tableBodyElement.nativeElement,gn="ant-table-ping-left",Ln="ant-table-ping-right";Ct===Qt&&0!==Ct||lt?(this.renderer.removeClass(this.tableMainElement,gn),this.renderer.removeClass(this.tableMainElement,Ln)):0===At?(this.renderer.removeClass(this.tableMainElement,gn),this.renderer.addClass(this.tableMainElement,Ln)):Ct===At+Qt?(this.renderer.removeClass(this.tableMainElement,Ln),this.renderer.addClass(this.tableMainElement,gn)):(this.renderer.addClass(this.tableMainElement,gn),this.renderer.addClass(this.tableMainElement,Ln))}constructor(lt,Ct,At,Qt){this.renderer=lt,this.ngZone=Ct,this.platform=At,this.resizeService=Qt,this.data=[],this.scrollX=null,this.scrollY=null,this.contentTemplate=null,this.widthConfig=[],this.listOfColWidth=[],this.theadTemplate=null,this.virtualTemplate=null,this.virtualItemSize=0,this.virtualMaxBufferPx=200,this.virtualMinBufferPx=100,this.virtualForTrackBy=gn=>gn,this.headerStyleMap={},this.bodyStyleMap={},this.verticalScrollBarWidth=0,this.noDateVirtualHeight="182px",this.data$=new _.x,this.scroll$=new _.x,this.destroy$=new _.x}ngOnChanges(lt){const{scrollX:Ct,scrollY:At,data:Qt}=lt;(Ct||At)&&(this.headerStyleMap={overflowX:"hidden",overflowY:this.scrollY&&0!==this.verticalScrollBarWidth?"scroll":"hidden"},this.bodyStyleMap={overflowY:this.scrollY?"scroll":"hidden",overflowX:this.scrollX?"auto":null,maxHeight:this.scrollY},this.ngZone.runOutsideAngular(()=>this.scroll$.next())),Qt&&this.ngZone.runOutsideAngular(()=>this.data$.next())}ngAfterViewInit(){this.platform.isBrowser&&this.ngZone.runOutsideAngular(()=>{const lt=this.scroll$.pipe((0,ne.O)(null),(0,pe.g)(0),(0,te.w)(()=>(0,D.R)(this.tableBodyElement.nativeElement,"scroll").pipe((0,ne.O)(!0))),(0,K.R)(this.destroy$)),Ct=this.resizeService.subscribe().pipe((0,K.R)(this.destroy$)),At=this.data$.pipe((0,K.R)(this.destroy$));(0,k.T)(lt,Ct,At,this.scroll$).pipe((0,ne.O)(!0),(0,pe.g)(0),(0,K.R)(this.destroy$)).subscribe(()=>this.setScrollPositionClassName()),lt.pipe((0,j.h)(()=>!!this.scrollY)).subscribe(()=>this.tableHeaderElement.nativeElement.scrollLeft=this.tableBodyElement.nativeElement.scrollLeft)})}ngOnDestroy(){this.setScrollPositionClassName(!0),this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)(l.Y36(l.Qsj),l.Y36(l.R0b),l.Y36(n.t4),l.Y36(le.rI))};static#t=this.\u0275cmp=l.Xpm({type:Et,selectors:[["nz-table-inner-scroll"]],viewQuery:function(Ct,At){if(1&Ct&&(l.Gf(qe,5,l.SBq),l.Gf(ge,5,l.SBq),l.Gf(t.N7,5,t.N7)),2&Ct){let Qt;l.iGM(Qt=l.CRH())&&(At.tableHeaderElement=Qt.first),l.iGM(Qt=l.CRH())&&(At.tableBodyElement=Qt.first),l.iGM(Qt=l.CRH())&&(At.cdkVirtualScrollViewport=Qt.first)}},hostAttrs:[1,"ant-table-container"],inputs:{data:"data",scrollX:"scrollX",scrollY:"scrollY",contentTemplate:"contentTemplate",widthConfig:"widthConfig",listOfColWidth:"listOfColWidth",theadTemplate:"theadTemplate",virtualTemplate:"virtualTemplate",virtualItemSize:"virtualItemSize",virtualMaxBufferPx:"virtualMaxBufferPx",virtualMinBufferPx:"virtualMinBufferPx",tableMainElement:"tableMainElement",virtualForTrackBy:"virtualForTrackBy",verticalScrollBarWidth:"verticalScrollBarWidth"},features:[l.TTD],decls:2,vars:2,consts:[[4,"ngIf"],["class","ant-table-content",3,"ngStyle",4,"ngIf"],[1,"ant-table-header","nz-table-hide-scrollbar",3,"ngStyle"],["tableHeaderElement",""],["nz-table-content","","tableLayout","fixed",3,"scrollX","listOfColWidth","theadTemplate"],["class","ant-table-body",3,"ngStyle",4,"ngIf"],[3,"itemSize","maxBufferPx","minBufferPx","height",4,"ngIf"],[1,"ant-table-body",3,"ngStyle"],["tableBodyElement",""],["nz-table-content","","tableLayout","fixed",3,"scrollX","listOfColWidth","contentTemplate"],[3,"itemSize","maxBufferPx","minBufferPx"],["nz-table-content","","tableLayout","fixed",3,"scrollX","listOfColWidth"],[4,"cdkVirtualFor","cdkVirtualForOf","cdkVirtualForTrackBy"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"ant-table-content",3,"ngStyle"],["nz-table-content","","tableLayout","fixed",3,"scrollX","listOfColWidth","theadTemplate","contentTemplate"]],template:function(Ct,At){1&Ct&&(l.YNc(0,Pe,6,6,"ng-container",0),l.YNc(1,Je,3,5,"div",1)),2&Ct&&(l.Q6J("ngIf",At.scrollY),l.xp6(1),l.Q6J("ngIf",!At.scrollY))},dependencies:[i.O5,i.tP,i.PC,t.xd,t.x0,t.N7,wi,Li],encapsulation:2,changeDetection:0})}return Et})(),Ei=(()=>{class Et{constructor(lt){this.templateRef=lt}static ngTemplateContextGuard(lt,Ct){return!0}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)(l.Y36(l.Rgc))};static#t=this.\u0275dir=l.lG2({type:Et,selectors:[["","nz-virtual-scroll",""]],exportAs:["nzVirtualScroll"]})}return Et})(),Hi=(()=>{class Et{constructor(){this.title=null,this.footer=null}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)};static#t=this.\u0275cmp=l.Xpm({type:Et,selectors:[["nz-table-title-footer"]],hostVars:4,hostBindings:function(Ct,At){2&Ct&&l.ekj("ant-table-title",null!==At.title)("ant-table-footer",null!==At.footer)},inputs:{title:"title",footer:"footer"},decls:2,vars:2,consts:[[4,"nzStringTemplateOutlet"]],template:function(Ct,At){1&Ct&&(l.YNc(0,Ge,2,1,"ng-container",0),l.YNc(1,Ke,2,1,"ng-container",0)),2&Ct&&(l.Q6J("nzStringTemplateOutlet",At.title),l.xp6(1),l.Q6J("nzStringTemplateOutlet",At.footer))},dependencies:[M.f],encapsulation:2,changeDetection:0})}return Et})(),Pi=(()=>{class Et{onPageSizeChange(lt){this.nzTableDataService.updatePageSize(lt)}onPageIndexChange(lt){this.nzTableDataService.updatePageIndex(lt)}constructor(lt,Ct,At,Qt,gn,Ln,Sn){this.elementRef=lt,this.nzResizeObserver=Ct,this.nzConfigService=At,this.cdr=Qt,this.nzTableStyleService=gn,this.nzTableDataService=Ln,this.directionality=Sn,this._nzModuleName="table",this.nzTableLayout="auto",this.nzShowTotal=null,this.nzItemRender=null,this.nzTitle=null,this.nzFooter=null,this.nzNoResult=void 0,this.nzPageSizeOptions=[10,20,30,40,50],this.nzVirtualItemSize=0,this.nzVirtualMaxBufferPx=200,this.nzVirtualMinBufferPx=100,this.nzVirtualForTrackBy=gi=>gi,this.nzLoadingDelay=0,this.nzPageIndex=1,this.nzPageSize=10,this.nzTotal=0,this.nzWidthConfig=[],this.nzData=[],this.nzCustomColumn=[],this.nzPaginationPosition="bottom",this.nzScroll={x:null,y:null},this.nzPaginationType="default",this.nzFrontPagination=!0,this.nzTemplateMode=!1,this.nzShowPagination=!0,this.nzLoading=!1,this.nzOuterBordered=!1,this.nzLoadingIndicator=null,this.nzBordered=!1,this.nzSize="default",this.nzShowSizeChanger=!1,this.nzHideOnSinglePage=!1,this.nzShowQuickJumper=!1,this.nzSimple=!1,this.nzPageSizeChange=new l.vpe,this.nzPageIndexChange=new l.vpe,this.nzQueryParams=new l.vpe,this.nzCurrentPageDataChange=new l.vpe,this.nzCustomColumnChange=new l.vpe,this.data=[],this.scrollX=null,this.scrollY=null,this.theadTemplate=null,this.listOfAutoColWidth=[],this.listOfManualColWidth=[],this.hasFixLeft=!1,this.hasFixRight=!1,this.showPagination=!0,this.destroy$=new _.x,this.templateMode$=new O.X(!1),this.dir="ltr",this.verticalScrollBarWidth=0,this.nzConfigService.getConfigChangeEventForComponent("table").pipe((0,K.R)(this.destroy$)).subscribe(()=>{this.cdr.markForCheck()})}ngOnInit(){const{pageIndexDistinct$:lt,pageSizeDistinct$:Ct,listOfCurrentPageData$:At,total$:Qt,queryParams$:gn,listOfCustomColumn$:Ln}=this.nzTableDataService,{theadTemplate$:Sn,hasFixLeft$:gi,hasFixRight$:St}=this.nzTableStyleService;this.dir=this.directionality.value,this.directionality.change?.pipe((0,K.R)(this.destroy$)).subscribe(gt=>{this.dir=gt,this.cdr.detectChanges()}),gn.pipe((0,K.R)(this.destroy$)).subscribe(this.nzQueryParams),lt.pipe((0,K.R)(this.destroy$)).subscribe(gt=>{gt!==this.nzPageIndex&&(this.nzPageIndex=gt,this.nzPageIndexChange.next(gt))}),Ct.pipe((0,K.R)(this.destroy$)).subscribe(gt=>{gt!==this.nzPageSize&&(this.nzPageSize=gt,this.nzPageSizeChange.next(gt))}),Qt.pipe((0,K.R)(this.destroy$),(0,j.h)(()=>this.nzFrontPagination)).subscribe(gt=>{gt!==this.nzTotal&&(this.nzTotal=gt,this.cdr.markForCheck())}),At.pipe((0,K.R)(this.destroy$)).subscribe(gt=>{this.data=gt,this.nzCurrentPageDataChange.next(gt),this.cdr.markForCheck()}),Ln.pipe((0,K.R)(this.destroy$)).subscribe(gt=>{this.nzCustomColumn=gt,this.nzCustomColumnChange.next(gt),this.cdr.markForCheck()}),Sn.pipe((0,K.R)(this.destroy$)).subscribe(gt=>{this.theadTemplate=gt,this.cdr.markForCheck()}),gi.pipe((0,K.R)(this.destroy$)).subscribe(gt=>{this.hasFixLeft=gt,this.cdr.markForCheck()}),St.pipe((0,K.R)(this.destroy$)).subscribe(gt=>{this.hasFixRight=gt,this.cdr.markForCheck()}),(0,A.a)([Qt,this.templateMode$]).pipe((0,_e.U)(([gt,We])=>0===gt&&!We),(0,K.R)(this.destroy$)).subscribe(gt=>{this.nzTableStyleService.setShowEmpty(gt)}),this.verticalScrollBarWidth=(0,ce.D8)("vertical"),this.nzTableStyleService.listOfListOfThWidthPx$.pipe((0,K.R)(this.destroy$)).subscribe(gt=>{this.listOfAutoColWidth=gt,this.cdr.markForCheck()}),this.nzTableStyleService.manualWidthConfigPx$.pipe((0,K.R)(this.destroy$)).subscribe(gt=>{this.listOfManualColWidth=gt,this.cdr.markForCheck()})}ngOnChanges(lt){const{nzScroll:Ct,nzPageIndex:At,nzPageSize:Qt,nzFrontPagination:gn,nzData:Ln,nzCustomColumn:Sn,nzWidthConfig:gi,nzNoResult:St,nzTemplateMode:gt}=lt;At&&this.nzTableDataService.updatePageIndex(this.nzPageIndex),Qt&&this.nzTableDataService.updatePageSize(this.nzPageSize),Ln&&(this.nzData=this.nzData||[],this.nzTableDataService.updateListOfData(this.nzData)),Sn&&(this.nzCustomColumn=this.nzCustomColumn||[],this.nzTableDataService.updateListOfCustomColumn(this.nzCustomColumn)),gn&&this.nzTableDataService.updateFrontPagination(this.nzFrontPagination),Ct&&this.setScrollOnChanges(),gi&&this.nzTableStyleService.setTableWidthConfig(this.nzWidthConfig),gt&&this.templateMode$.next(this.nzTemplateMode),St&&this.nzTableStyleService.setNoResult(this.nzNoResult),this.updateShowPagination()}ngAfterViewInit(){this.nzResizeObserver.observe(this.elementRef).pipe((0,_e.U)(([lt])=>{const{width:Ct}=lt.target.getBoundingClientRect();return Math.floor(Ct-(this.scrollY?this.verticalScrollBarWidth:0))}),(0,K.R)(this.destroy$)).subscribe(this.nzTableStyleService.hostWidth$),this.nzTableInnerScrollComponent&&this.nzTableInnerScrollComponent.cdkVirtualScrollViewport&&(this.cdkVirtualScrollViewport=this.nzTableInnerScrollComponent.cdkVirtualScrollViewport)}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}setScrollOnChanges(){this.scrollX=this.nzScroll&&this.nzScroll.x||null,this.scrollY=this.nzScroll&&this.nzScroll.y||null,this.nzTableStyleService.setScroll(this.scrollX,this.scrollY)}updateShowPagination(){this.showPagination=this.nzHideOnSinglePage&&this.nzData.length>this.nzPageSize||this.nzData.length>0&&!this.nzHideOnSinglePage||!this.nzFrontPagination&&this.nzTotal>this.nzPageSize}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)(l.Y36(l.SBq),l.Y36(u.D3),l.Y36(be.jY),l.Y36(l.sBO),l.Y36(ri),l.Y36(hi),l.Y36(e.Is,8))};static#t=this.\u0275cmp=l.Xpm({type:Et,selectors:[["nz-table"]],contentQueries:function(Ct,At,Qt){if(1&Ct&&l.Suo(Qt,Ei,5),2&Ct){let gn;l.iGM(gn=l.CRH())&&(At.nzVirtualScrollDirective=gn.first)}},viewQuery:function(Ct,At){if(1&Ct&&l.Gf(Xi,5),2&Ct){let Qt;l.iGM(Qt=l.CRH())&&(At.nzTableInnerScrollComponent=Qt.first)}},hostAttrs:[1,"ant-table-wrapper"],hostVars:4,hostBindings:function(Ct,At){2&Ct&&l.ekj("ant-table-wrapper-rtl","rtl"===At.dir)("ant-table-custom-column",At.nzCustomColumn.length)},inputs:{nzTableLayout:"nzTableLayout",nzShowTotal:"nzShowTotal",nzItemRender:"nzItemRender",nzTitle:"nzTitle",nzFooter:"nzFooter",nzNoResult:"nzNoResult",nzPageSizeOptions:"nzPageSizeOptions",nzVirtualItemSize:"nzVirtualItemSize",nzVirtualMaxBufferPx:"nzVirtualMaxBufferPx",nzVirtualMinBufferPx:"nzVirtualMinBufferPx",nzVirtualForTrackBy:"nzVirtualForTrackBy",nzLoadingDelay:"nzLoadingDelay",nzPageIndex:"nzPageIndex",nzPageSize:"nzPageSize",nzTotal:"nzTotal",nzWidthConfig:"nzWidthConfig",nzData:"nzData",nzCustomColumn:"nzCustomColumn",nzPaginationPosition:"nzPaginationPosition",nzScroll:"nzScroll",nzPaginationType:"nzPaginationType",nzFrontPagination:"nzFrontPagination",nzTemplateMode:"nzTemplateMode",nzShowPagination:"nzShowPagination",nzLoading:"nzLoading",nzOuterBordered:"nzOuterBordered",nzLoadingIndicator:"nzLoadingIndicator",nzBordered:"nzBordered",nzSize:"nzSize",nzShowSizeChanger:"nzShowSizeChanger",nzHideOnSinglePage:"nzHideOnSinglePage",nzShowQuickJumper:"nzShowQuickJumper",nzSimple:"nzSimple"},outputs:{nzPageSizeChange:"nzPageSizeChange",nzPageIndexChange:"nzPageIndexChange",nzQueryParams:"nzQueryParams",nzCurrentPageDataChange:"nzCurrentPageDataChange",nzCustomColumnChange:"nzCustomColumnChange"},exportAs:["nzTable"],features:[l._Bn([ri,hi]),l.TTD],ngContentSelectors:ae,decls:14,vars:27,consts:[[3,"nzDelay","nzSpinning","nzIndicator"],[4,"ngIf"],[1,"ant-table"],["tableMainElement",""],[3,"title",4,"ngIf"],[3,"data","scrollX","scrollY","contentTemplate","listOfColWidth","theadTemplate","verticalScrollBarWidth","virtualTemplate","virtualItemSize","virtualMaxBufferPx","virtualMinBufferPx","tableMainElement","virtualForTrackBy",4,"ngIf","ngIfElse"],["defaultTemplate",""],[3,"footer",4,"ngIf"],["paginationTemplate",""],["contentTemplate",""],[3,"ngTemplateOutlet"],[3,"title"],[3,"data","scrollX","scrollY","contentTemplate","listOfColWidth","theadTemplate","verticalScrollBarWidth","virtualTemplate","virtualItemSize","virtualMaxBufferPx","virtualMinBufferPx","tableMainElement","virtualForTrackBy"],[3,"tableLayout","listOfColWidth","theadTemplate","contentTemplate"],[3,"footer"],["class","ant-table-pagination ant-table-pagination-right",3,"hidden","nzShowSizeChanger","nzPageSizeOptions","nzItemRender","nzShowQuickJumper","nzHideOnSinglePage","nzShowTotal","nzSize","nzPageSize","nzTotal","nzSimple","nzPageIndex","nzPageSizeChange","nzPageIndexChange",4,"ngIf"],[1,"ant-table-pagination","ant-table-pagination-right",3,"hidden","nzShowSizeChanger","nzPageSizeOptions","nzItemRender","nzShowQuickJumper","nzHideOnSinglePage","nzShowTotal","nzSize","nzPageSize","nzTotal","nzSimple","nzPageIndex","nzPageSizeChange","nzPageIndexChange"]],template:function(Ct,At){if(1&Ct&&(l.F$t(),l.TgZ(0,"nz-spin",0),l.YNc(1,it,2,1,"ng-container",1),l.TgZ(2,"div",2,3),l.YNc(4,b,1,1,"nz-table-title-footer",4),l.YNc(5,N,1,13,"nz-table-inner-scroll",5),l.YNc(6,S,1,4,"ng-template",null,6,l.W1O),l.YNc(8,$,1,1,"nz-table-title-footer",7),l.qZA(),l.YNc(9,he,2,1,"ng-container",1),l.qZA(),l.YNc(10,bt,1,1,"ng-template",null,8,l.W1O),l.YNc(12,Ft,1,0,"ng-template",null,9,l.W1O)),2&Ct){const Qt=l.MAs(7);l.Q6J("nzDelay",At.nzLoadingDelay)("nzSpinning",At.nzLoading)("nzIndicator",At.nzLoadingIndicator),l.xp6(1),l.Q6J("ngIf","both"===At.nzPaginationPosition||"top"===At.nzPaginationPosition),l.xp6(1),l.ekj("ant-table-rtl","rtl"===At.dir)("ant-table-fixed-header",At.nzData.length&&At.scrollY)("ant-table-fixed-column",At.scrollX)("ant-table-has-fix-left",At.hasFixLeft)("ant-table-has-fix-right",At.hasFixRight)("ant-table-bordered",At.nzBordered)("nz-table-out-bordered",At.nzOuterBordered&&!At.nzBordered)("ant-table-middle","middle"===At.nzSize)("ant-table-small","small"===At.nzSize),l.xp6(2),l.Q6J("ngIf",At.nzTitle),l.xp6(1),l.Q6J("ngIf",At.scrollY||At.scrollX)("ngIfElse",Qt),l.xp6(3),l.Q6J("ngIf",At.nzFooter),l.xp6(1),l.Q6J("ngIf","both"===At.nzPaginationPosition||"bottom"===At.nzPaginationPosition)}},dependencies:[i.O5,i.tP,f.dE,T.W,Hi,Qi,Xi],encapsulation:2,changeDetection:0})}return(0,x.gn)([(0,ce.yF)()],Et.prototype,"nzFrontPagination",void 0),(0,x.gn)([(0,ce.yF)()],Et.prototype,"nzTemplateMode",void 0),(0,x.gn)([(0,ce.yF)()],Et.prototype,"nzShowPagination",void 0),(0,x.gn)([(0,ce.yF)()],Et.prototype,"nzLoading",void 0),(0,x.gn)([(0,ce.yF)()],Et.prototype,"nzOuterBordered",void 0),(0,x.gn)([(0,be.oS)()],Et.prototype,"nzLoadingIndicator",void 0),(0,x.gn)([(0,be.oS)(),(0,ce.yF)()],Et.prototype,"nzBordered",void 0),(0,x.gn)([(0,be.oS)()],Et.prototype,"nzSize",void 0),(0,x.gn)([(0,be.oS)(),(0,ce.yF)()],Et.prototype,"nzShowSizeChanger",void 0),(0,x.gn)([(0,be.oS)(),(0,ce.yF)()],Et.prototype,"nzHideOnSinglePage",void 0),(0,x.gn)([(0,be.oS)(),(0,ce.yF)()],Et.prototype,"nzShowQuickJumper",void 0),(0,x.gn)([(0,be.oS)(),(0,ce.yF)()],Et.prototype,"nzSimple",void 0),Et})(),Ii=(()=>{class Et{constructor(lt){this.nzTableStyleService=lt,this.destroy$=new _.x,this.listOfFixedColumns$=new P.t(1),this.listOfColumns$=new P.t(1),this.listOfFixedColumnsChanges$=this.listOfFixedColumns$.pipe((0,te.w)(Ct=>(0,k.T)(this.listOfFixedColumns$,...Ct.map(At=>At.changes$)).pipe((0,re.z)(()=>this.listOfFixedColumns$))),(0,K.R)(this.destroy$)),this.listOfFixedLeftColumnChanges$=this.listOfFixedColumnsChanges$.pipe((0,_e.U)(Ct=>Ct.filter(At=>!1!==At.nzLeft))),this.listOfFixedRightColumnChanges$=this.listOfFixedColumnsChanges$.pipe((0,_e.U)(Ct=>Ct.filter(At=>!1!==At.nzRight))),this.listOfColumnsChanges$=this.listOfColumns$.pipe((0,te.w)(Ct=>(0,k.T)(this.listOfColumns$,...Ct.map(At=>At.changes$)).pipe((0,re.z)(()=>this.listOfColumns$))),(0,K.R)(this.destroy$)),this.isInsideTable=!1,this.isInsideTable=!!lt}ngAfterContentInit(){this.nzTableStyleService&&(this.listOfCellFixedDirective.changes.pipe((0,ne.O)(this.listOfCellFixedDirective),(0,K.R)(this.destroy$)).subscribe(this.listOfFixedColumns$),this.listOfNzThDirective.changes.pipe((0,ne.O)(this.listOfNzThDirective),(0,K.R)(this.destroy$)).subscribe(this.listOfColumns$),this.listOfFixedLeftColumnChanges$.subscribe(lt=>{lt.forEach(Ct=>Ct.setIsLastLeft(Ct===lt[lt.length-1]))}),this.listOfFixedRightColumnChanges$.subscribe(lt=>{lt.forEach(Ct=>Ct.setIsFirstRight(Ct===lt[0]))}),(0,A.a)([this.nzTableStyleService.listOfListOfThWidth$,this.listOfFixedLeftColumnChanges$]).pipe((0,K.R)(this.destroy$)).subscribe(([lt,Ct])=>{Ct.forEach((At,Qt)=>{if(At.isAutoLeft){const Ln=Ct.slice(0,Qt).reduce((gi,St)=>gi+(St.colspan||St.colSpan||1),0),Sn=lt.slice(0,Ln).reduce((gi,St)=>gi+St,0);At.setAutoLeftWidth(`${Sn}px`)}})}),(0,A.a)([this.nzTableStyleService.listOfListOfThWidth$,this.listOfFixedRightColumnChanges$]).pipe((0,K.R)(this.destroy$)).subscribe(([lt,Ct])=>{Ct.forEach((At,Qt)=>{const gn=Ct[Ct.length-Qt-1];if(gn.isAutoRight){const Sn=Ct.slice(Ct.length-Qt,Ct.length).reduce((St,gt)=>St+(gt.colspan||gt.colSpan||1),0),gi=lt.slice(lt.length-Sn,lt.length).reduce((St,gt)=>St+gt,0);gn.setAutoRightWidth(`${gi}px`)}})}))}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)(l.Y36(ri,8))};static#t=this.\u0275dir=l.lG2({type:Et,selectors:[["tr",3,"mat-row","",3,"mat-header-row","",3,"nz-table-measure-row","",3,"nzExpand","",3,"nz-table-fixed-row",""]],contentQueries:function(Ct,At,Qt){if(1&Ct&&(l.Suo(Qt,ei,4),l.Suo(Qt,ci,4)),2&Ct){let gn;l.iGM(gn=l.CRH())&&(At.listOfNzThDirective=gn),l.iGM(gn=l.CRH())&&(At.listOfCellFixedDirective=gn)}},hostVars:2,hostBindings:function(Ct,At){2&Ct&&l.ekj("ant-table-row",At.isInsideTable)}})}return Et})(),ki=(()=>{class Et{constructor(lt,Ct,At,Qt){this.elementRef=lt,this.renderer=Ct,this.nzTableStyleService=At,this.nzTableDataService=Qt,this.destroy$=new _.x,this.isInsideTable=!1,this.nzSortOrderChange=new l.vpe,this.isInsideTable=!!this.nzTableStyleService}ngOnInit(){this.nzTableStyleService&&this.nzTableStyleService.setTheadTemplate(this.templateRef)}ngAfterContentInit(){if(this.nzTableStyleService){const lt=this.listOfNzTrDirective.changes.pipe((0,ne.O)(this.listOfNzTrDirective),(0,_e.U)(gn=>gn&&gn.first)),Ct=lt.pipe((0,te.w)(gn=>gn?gn.listOfColumnsChanges$:F.E),(0,K.R)(this.destroy$));Ct.subscribe(gn=>this.nzTableStyleService.setListOfTh(gn)),this.nzTableStyleService.enableAutoMeasure$.pipe((0,te.w)(gn=>gn?Ct:(0,W.of)([]))).pipe((0,K.R)(this.destroy$)).subscribe(gn=>this.nzTableStyleService.setListOfMeasureColumn(gn));const At=lt.pipe((0,te.w)(gn=>gn?gn.listOfFixedLeftColumnChanges$:F.E),(0,K.R)(this.destroy$)),Qt=lt.pipe((0,te.w)(gn=>gn?gn.listOfFixedRightColumnChanges$:F.E),(0,K.R)(this.destroy$));At.subscribe(gn=>{this.nzTableStyleService.setHasFixLeft(0!==gn.length)}),Qt.subscribe(gn=>{this.nzTableStyleService.setHasFixRight(0!==gn.length)})}if(this.nzTableDataService){const lt=this.listOfNzThAddOnComponent.changes.pipe((0,ne.O)(this.listOfNzThAddOnComponent));lt.pipe((0,te.w)(()=>(0,k.T)(...this.listOfNzThAddOnComponent.map(Qt=>Qt.manualClickOrder$))),(0,K.R)(this.destroy$)).subscribe(Qt=>{this.nzSortOrderChange.emit({key:Qt.nzColumnKey,value:Qt.sortOrder}),Qt.nzSortFn&&!1===Qt.nzSortPriority&&this.listOfNzThAddOnComponent.filter(Ln=>Ln!==Qt).forEach(Ln=>Ln.clearSortOrder())}),lt.pipe((0,te.w)(Qt=>(0,k.T)(lt,...Qt.map(gn=>gn.calcOperatorChange$)).pipe((0,re.z)(()=>lt))),(0,_e.U)(Qt=>Qt.filter(gn=>!!gn.nzSortFn||!!gn.nzFilterFn).map(gn=>{const{nzSortFn:Ln,sortOrder:Sn,nzFilterFn:gi,nzFilterValue:St,nzSortPriority:gt,nzColumnKey:We}=gn;return{key:We,sortFn:Ln,sortPriority:gt,sortOrder:Sn,filterFn:gi,filterValue:St}})),(0,pe.g)(0),(0,K.R)(this.destroy$)).subscribe(Qt=>{this.nzTableDataService.listOfCalcOperator$.next(Qt)})}}ngAfterViewInit(){this.nzTableStyleService&&this.renderer.removeChild(this.renderer.parentNode(this.elementRef.nativeElement),this.elementRef.nativeElement)}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)(l.Y36(l.SBq),l.Y36(l.Qsj),l.Y36(ri,8),l.Y36(hi,8))};static#t=this.\u0275cmp=l.Xpm({type:Et,selectors:[["thead",9,"ant-table-thead"]],contentQueries:function(Ct,At,Qt){if(1&Ct&&(l.Suo(Qt,Ii,5),l.Suo(Qt,Oi,5)),2&Ct){let gn;l.iGM(gn=l.CRH())&&(At.listOfNzTrDirective=gn),l.iGM(gn=l.CRH())&&(At.listOfNzThAddOnComponent=gn)}},viewQuery:function(Ct,At){if(1&Ct&&l.Gf(sn,7),2&Ct){let Qt;l.iGM(Qt=l.CRH())&&(At.templateRef=Qt.first)}},outputs:{nzSortOrderChange:"nzSortOrderChange"},ngContentSelectors:ae,decls:3,vars:1,consts:[["contentTemplate",""],[4,"ngIf"],[3,"ngTemplateOutlet"]],template:function(Ct,At){1&Ct&&(l.F$t(),l.YNc(0,pn,1,0,"ng-template",null,0,l.W1O),l.YNc(2,Dn,2,1,"ng-container",1)),2&Ct&&(l.xp6(2),l.Q6J("ngIf",!At.isInsideTable))},dependencies:[i.O5,i.tP],encapsulation:2,changeDetection:0})}return Et})(),oi=(()=>{class Et{constructor(){this.nzExpand=!0}static#e=this.\u0275fac=function(Ct){return new(Ct||Et)};static#t=this.\u0275dir=l.lG2({type:Et,selectors:[["tr","nzExpand",""]],hostAttrs:[1,"ant-table-expanded-row"],hostVars:1,hostBindings:function(Ct,At){2&Ct&&l.Ikx("hidden",!At.nzExpand)},inputs:{nzExpand:"nzExpand"}})}return Et})(),Bn=(()=>{class Et{static#e=this.\u0275fac=function(Ct){return new(Ct||Et)};static#t=this.\u0275mod=l.oAB({type:Et});static#n=this.\u0275inj=l.cJS({imports:[e.vT,p.ip,C.u5,M.T,y.aF,z.Wr,h.b1,E.sL,i.ez,n.ud,f.uK,u.y7,T.j,g.YI,d.PV,v.Xo,t.Cl]})}return Et})()},79382:(nt,I,o)=>{"use strict";o.d(I,{we:()=>$e,xH:()=>ge,xw:()=>Qe});var e=o(65879),n=o(90551),t=o(8324),i=o(56879),l=o(4300),C=o(42495),E=o(36028),u=o(92438),z=o(47394),M=o(80927),h=o(76410),v=o(78645),g=o(22096),d=o(63019),p=o(59773),f=o(29028),y=o(27921),T=o(81374),x=o(32181),D=o(5177),_=o(96814),P=o(73460),O=o(62787),A=o(205),k=o(28802),F=o(49388),W=o(97582),K=o(27754),_e=o(52787),Y=o(17131),G=o(62831),H=o(83064),j=o(1608);function te(Ue,wt){if(1&Ue&&(e.ynx(0),e._UZ(1,"span",1),e.BQk()),2&Ue){const De=wt.$implicit;e.xp6(1),e.Q6J("nzType",De)}}function ne(Ue,wt){if(1&Ue&&(e.ynx(0),e._uU(1),e.BQk()),2&Ue){const De=e.oxw().$implicit;e.xp6(1),e.hij(" ",De.tab.label," ")}}const pe=function(){return{visible:!1}};function re(Ue,wt){if(1&Ue){const De=e.EpF();e.TgZ(0,"li",8),e.NdJ("click",function(){const Ge=e.CHM(De).$implicit,Ke=e.oxw(2);return e.KtG(Ke.onSelect(Ge))})("contextmenu",function(Je){const Ke=e.CHM(De).$implicit,ve=e.oxw(2);return e.KtG(ve.onContextmenu(Ke,Je))}),e.YNc(1,ne,2,1,"ng-container",9),e.qZA()}if(2&Ue){const De=wt.$implicit;e.ekj("ant-tabs-dropdown-menu-item-disabled",De.disabled),e.Q6J("nzSelected",De.active)("nzDisabled",De.disabled),e.xp6(1),e.Q6J("nzStringTemplateOutlet",De.tab.label)("nzStringTemplateOutletContext",e.DdM(6,pe))}}function be(Ue,wt){if(1&Ue&&(e.TgZ(0,"ul",6),e.YNc(1,re,2,7,"li",7),e.qZA()),2&Ue){const De=e.oxw();e.xp6(1),e.Q6J("ngForOf",De.items)}}function le(Ue,wt){if(1&Ue){const De=e.EpF();e.TgZ(0,"button",10),e.NdJ("click",function(){e.CHM(De);const Je=e.oxw();return e.KtG(Je.addClicked.emit())}),e.qZA()}if(2&Ue){const De=e.oxw();e.Q6J("addIcon",De.addIcon)}}const ce=function(){return{minWidth:"46px"}},Q=["navWarp"],ie=["navList"];function ae(Ue,wt){if(1&Ue){const De=e.EpF();e.TgZ(0,"button",8),e.NdJ("click",function(){e.CHM(De);const Je=e.oxw();return e.KtG(Je.addClicked.emit())}),e.qZA()}if(2&Ue){const De=e.oxw();e.Q6J("addIcon",De.addIcon)}}function xe(Ue,wt){}function Me(Ue,wt){if(1&Ue&&(e.TgZ(0,"div",9),e.YNc(1,xe,0,0,"ng-template",10),e.qZA()),2&Ue){const De=e.oxw();e.xp6(1),e.Q6J("ngTemplateOutlet",De.extraTemplate)}}const Ye=["*"],q=["nz-tab-body",""];function ye(Ue,wt){}function ee(Ue,wt){if(1&Ue&&(e.ynx(0),e.YNc(1,ye,0,0,"ng-template",1),e.BQk()),2&Ue){const De=e.oxw();e.xp6(1),e.Q6J("ngTemplateOutlet",De.content)}}function Be(Ue,wt){if(1&Ue&&(e.ynx(0),e._UZ(1,"span",1),e.BQk()),2&Ue){const De=wt.$implicit;e.xp6(1),e.Q6J("nzType",De)}}const Re=["contentTemplate"];function ct(Ue,wt){1&Ue&&e.Hsn(0)}function Ae(Ue,wt){1&Ue&&e.Hsn(0,1)}const Mt=[[["","nz-tab-link",""]],"*"],je=["[nz-tab-link]","*"];function ot(Ue,wt){if(1&Ue&&(e.ynx(0),e._uU(1),e.BQk()),2&Ue){const De=e.oxw().$implicit;e.xp6(1),e.Oqu(De.label)}}function mt(Ue,wt){if(1&Ue){const De=e.EpF();e.TgZ(0,"button",10),e.NdJ("click",function(Je){e.CHM(De);const Ge=e.oxw().index,Ke=e.oxw(2);return e.KtG(Ke.onClose(Ge,Je))}),e.qZA()}if(2&Ue){const De=e.oxw().$implicit;e.Q6J("closeIcon",De.nzCloseIcon)}}const we=function(){return{visible:!0}};function de(Ue,wt){if(1&Ue){const De=e.EpF();e.TgZ(0,"div",6),e.NdJ("click",function(Je){const Ge=e.CHM(De),Ke=Ge.$implicit,ve=Ge.index,it=e.oxw(2);return e.KtG(it.clickNavItem(Ke,ve,Je))})("contextmenu",function(Je){const Ke=e.CHM(De).$implicit,ve=e.oxw(2);return e.KtG(ve.contextmenuNavItem(Ke,Je))}),e.TgZ(1,"div",7),e.YNc(2,ot,2,1,"ng-container",8),e.YNc(3,mt,1,1,"button",9),e.qZA()()}if(2&Ue){const De=wt.$implicit,Pe=wt.index,Je=e.oxw(2);e.Udp("margin-right","horizontal"===Je.position?Je.nzTabBarGutter:null,"px")("margin-bottom","vertical"===Je.position?Je.nzTabBarGutter:null,"px"),e.ekj("ant-tabs-tab-active",Je.nzSelectedIndex===Pe)("ant-tabs-tab-disabled",De.nzDisabled),e.xp6(1),e.Q6J("disabled",De.nzDisabled)("tab",De)("active",Je.nzSelectedIndex===Pe),e.uIk("tabIndex",Je.getTabIndex(De,Pe))("aria-disabled",De.nzDisabled)("aria-selected",Je.nzSelectedIndex===Pe&&!Je.nzHideAll)("aria-controls",Je.getTabContentId(Pe)),e.xp6(1),e.Q6J("nzStringTemplateOutlet",De.label)("nzStringTemplateOutletContext",e.DdM(18,we)),e.xp6(1),e.Q6J("ngIf",De.nzClosable&&Je.closable&&!De.nzDisabled)}}function U(Ue,wt){if(1&Ue){const De=e.EpF();e.TgZ(0,"nz-tabs-nav",4),e.NdJ("tabScroll",function(Je){e.CHM(De);const Ge=e.oxw();return e.KtG(Ge.nzTabListScroll.emit(Je))})("selectFocusedIndex",function(Je){e.CHM(De);const Ge=e.oxw();return e.KtG(Ge.setSelectedIndex(Je))})("addClicked",function(){e.CHM(De);const Je=e.oxw();return e.KtG(Je.onAdd())}),e.YNc(1,de,4,19,"div",5),e.qZA()}if(2&Ue){const De=e.oxw();e.Q6J("ngStyle",De.nzTabBarStyle)("selectedIndex",De.nzSelectedIndex||0)("inkBarAnimated",De.inkBarAnimated)("addable",De.addable)("addIcon",De.nzAddIcon)("hideBar",De.nzHideAll)("position",De.position)("extraTemplate",De.nzTabBarExtraContent),e.xp6(1),e.Q6J("ngForOf",De.tabs)}}function B(Ue,wt){if(1&Ue&&e._UZ(0,"div",11),2&Ue){const De=wt.$implicit,Pe=wt.index,Je=e.oxw();e.Q6J("active",Je.nzSelectedIndex===Pe&&!Je.nzHideAll)("content",De.content)("forceRender",De.nzForceRender)("tabPaneAnimated",Je.tabPaneAnimated)}}let Ee=(()=>{class Ue{constructor(De){this.elementRef=De,this.addIcon="plus",this.element=this.elementRef.nativeElement}getElementWidth(){return this.element?.offsetWidth||0}getElementHeight(){return this.element?.offsetHeight||0}static#e=this.\u0275fac=function(Pe){return new(Pe||Ue)(e.Y36(e.SBq))};static#t=this.\u0275cmp=e.Xpm({type:Ue,selectors:[["nz-tab-add-button"],["button","nz-tab-add-button",""]],hostAttrs:["aria-label","Add tab","type","button",1,"ant-tabs-nav-add"],inputs:{addIcon:"addIcon"},decls:1,vars:1,consts:[[4,"nzStringTemplateOutlet"],["nz-icon","","nzTheme","outline",3,"nzType"]],template:function(Pe,Je){1&Pe&&e.YNc(0,te,2,1,"ng-container",0),2&Pe&&e.Q6J("nzStringTemplateOutlet",Je.addIcon)},dependencies:[n.Ls,t.f],encapsulation:2})}return Ue})(),Ie=(()=>{class Ue{get _animated(){return"NoopAnimations"!==this.animationMode&&this.animated}constructor(De,Pe,Je){this.elementRef=De,this.ngZone=Pe,this.animationMode=Je,this.position="horizontal",this.animated=!0}alignToElement(De){this.ngZone.runOutsideAngular(()=>{(0,i.e)(()=>this.setStyles(De))})}setStyles(De){const Pe=this.elementRef.nativeElement;"horizontal"===this.position?(Pe.style.top="",Pe.style.height="",Pe.style.left=this.getLeftPosition(De),Pe.style.width=this.getElementWidth(De)):(Pe.style.left="",Pe.style.width="",Pe.style.top=this.getTopPosition(De),Pe.style.height=this.getElementHeight(De))}getLeftPosition(De){return De?`${De.offsetLeft||0}px`:"0"}getElementWidth(De){return De?`${De.offsetWidth||0}px`:"0"}getTopPosition(De){return De?`${De.offsetTop||0}px`:"0"}getElementHeight(De){return De?`${De.offsetHeight||0}px`:"0"}static#e=this.\u0275fac=function(Pe){return new(Pe||Ue)(e.Y36(e.SBq),e.Y36(e.R0b),e.Y36(e.QbO,8))};static#t=this.\u0275dir=e.lG2({type:Ue,selectors:[["nz-tabs-ink-bar"],["","nz-tabs-ink-bar",""]],hostAttrs:[1,"ant-tabs-ink-bar"],hostVars:2,hostBindings:function(Pe,Je){2&Pe&&e.ekj("ant-tabs-ink-bar-animated",Je._animated)},inputs:{position:"position",animated:"animated"}})}return Ue})(),Ne=(()=>{class Ue{constructor(De){this.elementRef=De,this.disabled=!1,this.active=!1,this.el=De.nativeElement,this.parentElement=this.el.parentElement}focus(){this.el.focus()}get width(){return this.parentElement.offsetWidth}get height(){return this.parentElement.offsetHeight}get left(){return this.parentElement.offsetLeft}get top(){return this.parentElement.offsetTop}static#e=this.\u0275fac=function(Pe){return new(Pe||Ue)(e.Y36(e.SBq))};static#t=this.\u0275dir=e.lG2({type:Ue,selectors:[["","nzTabNavItem",""]],inputs:{disabled:"disabled",tab:"tab",active:"active"}})}return Ue})(),pt=(()=>{class Ue{constructor(De,Pe){this.cdr=De,this.elementRef=Pe,this.items=[],this.addable=!1,this.addIcon="plus",this.addClicked=new e.vpe,this.selected=new e.vpe,this.closeAnimationWaitTimeoutId=-1,this.menuOpened=!1,this.element=this.elementRef.nativeElement}onSelect(De){De.disabled||(De.tab.nzClick.emit(),this.selected.emit(De))}onContextmenu(De,Pe){De.disabled||De.tab.nzContextmenu.emit(Pe)}showItems(){clearTimeout(this.closeAnimationWaitTimeoutId),this.menuOpened=!0,this.cdr.markForCheck()}menuVisChange(De){De||(this.closeAnimationWaitTimeoutId=setTimeout(()=>{this.menuOpened=!1,this.cdr.markForCheck()},150))}getElementWidth(){return this.element?.offsetWidth||0}getElementHeight(){return this.element?.offsetHeight||0}ngOnDestroy(){clearTimeout(this.closeAnimationWaitTimeoutId)}static#e=this.\u0275fac=function(Pe){return new(Pe||Ue)(e.Y36(e.sBO),e.Y36(e.SBq))};static#t=this.\u0275cmp=e.Xpm({type:Ue,selectors:[["nz-tab-nav-operation"]],hostAttrs:[1,"ant-tabs-nav-operations"],hostVars:2,hostBindings:function(Pe,Je){2&Pe&&e.ekj("ant-tabs-nav-operations-hidden",0===Je.items.length)},inputs:{items:"items",addable:"addable",addIcon:"addIcon"},outputs:{addClicked:"addClicked",selected:"selected"},exportAs:["nzTabNavOperation"],decls:7,vars:6,consts:[["nz-dropdown","","type","button","tabindex","-1","aria-hidden","true","nzOverlayClassName","nz-tabs-dropdown",1,"ant-tabs-nav-more",3,"nzDropdownMenu","nzOverlayStyle","nzMatchWidthElement","nzVisibleChange","mouseenter"],["dropdownTrigger","nzDropdown"],["nz-icon","","nzType","ellipsis"],["menu","nzDropdownMenu"],["nz-menu","",4,"ngIf"],["nz-tab-add-button","",3,"addIcon","click",4,"ngIf"],["nz-menu",""],["nz-menu-item","","class","ant-tabs-dropdown-menu-item",3,"ant-tabs-dropdown-menu-item-disabled","nzSelected","nzDisabled","click","contextmenu",4,"ngFor","ngForOf"],["nz-menu-item","",1,"ant-tabs-dropdown-menu-item",3,"nzSelected","nzDisabled","click","contextmenu"],[4,"nzStringTemplateOutlet","nzStringTemplateOutletContext"],["nz-tab-add-button","",3,"addIcon","click"]],template:function(Pe,Je){if(1&Pe&&(e.TgZ(0,"button",0,1),e.NdJ("nzVisibleChange",function(Ke){return Je.menuVisChange(Ke)})("mouseenter",function(){return Je.showItems()}),e._UZ(2,"span",2),e.qZA(),e.TgZ(3,"nz-dropdown-menu",null,3),e.YNc(5,be,2,1,"ul",4),e.qZA(),e.YNc(6,le,1,1,"button",5)),2&Pe){const Ge=e.MAs(4);e.Q6J("nzDropdownMenu",Ge)("nzOverlayStyle",e.DdM(5,ce))("nzMatchWidthElement",null),e.xp6(5),e.Q6J("ngIf",Je.menuOpened),e.xp6(1),e.Q6J("ngIf",Je.addable)}},dependencies:[_.sg,_.O5,n.Ls,t.f,P.wO,P.u9,O.cm,O.RR,Ee],encapsulation:2,changeDetection:0})}return Ue})();const qt=.995**20;let en=(()=>{class Ue{constructor(De,Pe){this.ngZone=De,this.elementRef=Pe,this.lastWheelDirection=null,this.lastWheelTimestamp=0,this.lastTimestamp=0,this.lastTimeDiff=0,this.lastMixedWheel=0,this.lastWheelPrevent=!1,this.touchPosition=null,this.lastOffset=null,this.motion=-1,this.unsubscribe=()=>{},this.offsetChange=new e.vpe,this.tabScroll=new e.vpe,this.onTouchEnd=Je=>{if(!this.touchPosition)return;const Ge=this.lastOffset,Ke=this.lastTimeDiff;if(this.lastOffset=this.touchPosition=null,Ge){const ve=Ge.x/Ke,it=Ge.y/Ke,b=Math.abs(ve),N=Math.abs(it);if(Math.max(b,N)<.1)return;let S=ve,$=it;this.motion=window.setInterval(()=>{Math.abs(S)<.01&&Math.abs($)<.01?window.clearInterval(this.motion):(S*=qt,$*=qt,this.onOffset(20*S,20*$,Je))},20)}},this.onTouchMove=Je=>{if(!this.touchPosition)return;Je.preventDefault();const{screenX:Ge,screenY:Ke}=Je.touches[0],ve=Ge-this.touchPosition.x,it=Ke-this.touchPosition.y;this.onOffset(ve,it,Je);const b=Date.now();this.lastTimeDiff=b-this.lastTimestamp,this.lastTimestamp=b,this.lastOffset={x:ve,y:it},this.touchPosition={x:Ge,y:Ke}},this.onTouchStart=Je=>{const{screenX:Ge,screenY:Ke}=Je.touches[0];this.touchPosition={x:Ge,y:Ke},window.clearInterval(this.motion)},this.onWheel=Je=>{const{deltaX:Ge,deltaY:Ke}=Je;let ve;const it=Math.abs(Ge),b=Math.abs(Ke);it===b?ve="x"===this.lastWheelDirection?Ge:Ke:it>b?(ve=Ge,this.lastWheelDirection="x"):(ve=Ke,this.lastWheelDirection="y");const N=Date.now(),S=Math.abs(ve);(N-this.lastWheelTimestamp>100||S-this.lastMixedWheel>10)&&(this.lastWheelPrevent=!1),this.onOffset(-ve,-ve,Je),(Je.defaultPrevented||this.lastWheelPrevent)&&(this.lastWheelPrevent=!0),this.lastWheelTimestamp=N,this.lastMixedWheel=S}}ngOnInit(){this.unsubscribe=this.ngZone.runOutsideAngular(()=>{const De=this.elementRef.nativeElement,Pe=(0,u.R)(De,"wheel"),Je=(0,u.R)(De,"touchstart"),Ge=(0,u.R)(De,"touchmove"),Ke=(0,u.R)(De,"touchend"),ve=new z.w0;return ve.add(this.subscribeWrap("wheel",Pe,this.onWheel)),ve.add(this.subscribeWrap("touchstart",Je,this.onTouchStart)),ve.add(this.subscribeWrap("touchmove",Ge,this.onTouchMove)),ve.add(this.subscribeWrap("touchend",Ke,this.onTouchEnd)),()=>{ve.unsubscribe()}})}subscribeWrap(De,Pe,Je){return Pe.subscribe(Ge=>{this.tabScroll.emit({type:De,event:Ge}),Ge.defaultPrevented||Je(Ge)})}onOffset(De,Pe,Je){this.ngZone.run(()=>{this.offsetChange.emit({x:De,y:Pe,event:Je})})}ngOnDestroy(){this.unsubscribe()}static#e=this.\u0275fac=function(Pe){return new(Pe||Ue)(e.Y36(e.R0b),e.Y36(e.SBq))};static#t=this.\u0275dir=e.lG2({type:Ue,selectors:[["","nzTabScrollList",""]],outputs:{offsetChange:"offsetChange",tabScroll:"tabScroll"}})}return Ue})();const cn=typeof requestAnimationFrame<"u"?M.Z:h.E;let Vt=(()=>{class Ue{get selectedIndex(){return this._selectedIndex}set selectedIndex(De){const Pe=(0,C.su)(De);this._selectedIndex!==Pe&&(this._selectedIndex=De,this.selectedIndexChanged=!0,this.keyManager&&this.keyManager.updateActiveItem(De))}get focusIndex(){return this.keyManager?this.keyManager.activeItemIndex:0}set focusIndex(De){!this.isValidIndex(De)||this.focusIndex===De||!this.keyManager||this.keyManager.setActiveItem(De)}get showAddButton(){return 0===this.hiddenItems.length&&this.addable}constructor(De,Pe,Je,Ge,Ke){this.cdr=De,this.ngZone=Pe,this.viewportRuler=Je,this.nzResizeObserver=Ge,this.dir=Ke,this.indexFocused=new e.vpe,this.selectFocusedIndex=new e.vpe,this.addClicked=new e.vpe,this.tabScroll=new e.vpe,this.position="horizontal",this.addable=!1,this.hideBar=!1,this.addIcon="plus",this.inkBarAnimated=!0,this.translate=null,this.transformX=0,this.transformY=0,this.pingLeft=!1,this.pingRight=!1,this.pingTop=!1,this.pingBottom=!1,this.hiddenItems=[],this.destroy$=new v.x,this._selectedIndex=0,this.wrapperWidth=0,this.wrapperHeight=0,this.scrollListWidth=0,this.scrollListHeight=0,this.operationWidth=0,this.operationHeight=0,this.addButtonWidth=0,this.addButtonHeight=0,this.selectedIndexChanged=!1,this.lockAnimationTimeoutId=-1,this.cssTransformTimeWaitingId=-1}ngAfterViewInit(){const De=this.dir?this.dir.change.asObservable():(0,g.of)(null),Pe=this.viewportRuler.change(150),Je=()=>{this.updateScrollListPosition(),this.alignInkBarToSelectedTab()};this.keyManager=new l.Em(this.items).withHorizontalOrientation(this.getLayoutDirection()).withWrap(),this.keyManager.updateActiveItem(this.selectedIndex),(0,i.e)(Je),(0,d.T)(this.nzResizeObserver.observe(this.navWarpRef),this.nzResizeObserver.observe(this.navListRef)).pipe((0,p.R)(this.destroy$),(0,f.e)(16,cn)).subscribe(()=>{Je()}),(0,d.T)(De,Pe,this.items.changes).pipe((0,p.R)(this.destroy$)).subscribe(()=>{Promise.resolve().then(Je),this.keyManager.withHorizontalOrientation(this.getLayoutDirection())}),this.keyManager.change.pipe((0,p.R)(this.destroy$)).subscribe(Ge=>{this.indexFocused.emit(Ge),this.setTabFocus(Ge),this.scrollToTab(this.keyManager.activeItem)})}ngAfterContentChecked(){this.selectedIndexChanged&&(this.updateScrollListPosition(),this.alignInkBarToSelectedTab(),this.selectedIndexChanged=!1,this.cdr.markForCheck())}ngOnDestroy(){clearTimeout(this.lockAnimationTimeoutId),clearTimeout(this.cssTransformTimeWaitingId),this.destroy$.next(),this.destroy$.complete()}onSelectedFromMenu(De){const Pe=this.items.toArray().findIndex(Je=>Je===De);-1!==Pe&&(this.keyManager.updateActiveItem(Pe),this.focusIndex!==this.selectedIndex&&(this.selectFocusedIndex.emit(this.focusIndex),this.scrollToTab(De)))}onOffsetChange(De){if("horizontal"===this.position){if(-1===this.lockAnimationTimeoutId&&(this.transformX>=0&&De.x>0||this.transformX<=this.wrapperWidth-this.scrollListWidth&&De.x<0))return;De.event.preventDefault(),this.transformX=this.clampTransformX(this.transformX+De.x),this.setTransform(this.transformX,0)}else{if(-1===this.lockAnimationTimeoutId&&(this.transformY>=0&&De.y>0||this.transformY<=this.wrapperHeight-this.scrollListHeight&&De.y<0))return;De.event.preventDefault(),this.transformY=this.clampTransformY(this.transformY+De.y),this.setTransform(0,this.transformY)}this.lockAnimation(),this.setVisibleRange(),this.setPingStatus()}handleKeydown(De){const Pe=this.navWarpRef.nativeElement.contains(De.target);if(!(0,E.Vb)(De)&&Pe)switch(De.keyCode){case E.oh:case E.LH:case E.SV:case E.JH:this.lockAnimation(),this.keyManager.onKeydown(De);break;case E.K5:case E.L_:this.focusIndex!==this.selectedIndex&&this.selectFocusedIndex.emit(this.focusIndex);break;default:this.keyManager.onKeydown(De)}}isValidIndex(De){if(!this.items)return!0;const Pe=this.items?this.items.toArray()[De]:null;return!!Pe&&!Pe.disabled}scrollToTab(De){if(!this.items.find(Je=>Je===De))return;const Pe=this.items.toArray();if("horizontal"===this.position){let Je=this.transformX;if("rtl"===this.getLayoutDirection()){const Ge=Pe[0].left+Pe[0].width-De.left-De.width;Gethis.transformX+this.wrapperWidth&&(Je=Ge+De.width-this.wrapperWidth)}else De.left<-this.transformX?Je=-De.left:De.left+De.width>-this.transformX+this.wrapperWidth&&(Je=-(De.left+De.width-this.wrapperWidth));this.transformX=Je,this.transformY=0,this.setTransform(Je,0)}else{let Je=this.transformY;De.top<-this.transformY?Je=-De.top:De.top+De.height>-this.transformY+this.wrapperHeight&&(Je=-(De.top+De.height-this.wrapperHeight)),this.transformY=Je,this.transformX=0,this.setTransform(0,Je)}clearTimeout(this.cssTransformTimeWaitingId),this.cssTransformTimeWaitingId=setTimeout(()=>{this.setVisibleRange()},150)}lockAnimation(){-1===this.lockAnimationTimeoutId&&this.ngZone.runOutsideAngular(()=>{this.navListRef.nativeElement.style.transition="none",this.lockAnimationTimeoutId=setTimeout(()=>{this.navListRef.nativeElement.style.transition="",this.lockAnimationTimeoutId=-1},150)})}setTransform(De,Pe){this.navListRef.nativeElement.style.transform=`translate(${De}px, ${Pe}px)`}clampTransformX(De){const Pe=this.wrapperWidth-this.scrollListWidth;return"rtl"===this.getLayoutDirection()?Math.max(Math.min(Pe,De),0):Math.min(Math.max(Pe,De),0)}clampTransformY(De){return Math.min(Math.max(this.wrapperHeight-this.scrollListHeight,De),0)}updateScrollListPosition(){this.resetSizes(),this.transformX=this.clampTransformX(this.transformX),this.transformY=this.clampTransformY(this.transformY),this.setVisibleRange(),this.setPingStatus(),this.keyManager&&(this.keyManager.updateActiveItem(this.keyManager.activeItemIndex),this.keyManager.activeItem&&this.scrollToTab(this.keyManager.activeItem))}resetSizes(){this.addButtonWidth=this.addBtnRef?this.addBtnRef.getElementWidth():0,this.addButtonHeight=this.addBtnRef?this.addBtnRef.getElementHeight():0,this.operationWidth=this.operationRef.getElementWidth(),this.operationHeight=this.operationRef.getElementHeight(),this.wrapperWidth=this.navWarpRef.nativeElement.offsetWidth||0,this.wrapperHeight=this.navWarpRef.nativeElement.offsetHeight||0,this.scrollListHeight=this.navListRef.nativeElement.offsetHeight||0,this.scrollListWidth=this.navListRef.nativeElement.offsetWidth||0}alignInkBarToSelectedTab(){const De=this.items&&this.items.length?this.items.toArray()[this.selectedIndex]:null,Pe=De?De.elementRef.nativeElement:null;Pe&&this.inkBar.alignToElement(Pe.parentElement)}setPingStatus(){const De={top:!1,right:!1,bottom:!1,left:!1},Pe=this.navWarpRef.nativeElement;"horizontal"===this.position?"rtl"===this.getLayoutDirection()?(De.right=this.transformX>0,De.left=this.transformX+this.wrapperWidth{const Ge=`ant-tabs-nav-wrap-ping-${Je}`;De[Je]?Pe.classList.add(Ge):Pe.classList.remove(Ge)})}setVisibleRange(){let De,Pe,Je,Ge,Ke,ve;const it=this.items.toArray(),b={width:0,height:0,left:0,top:0,right:0},N=Ft=>{let sn;return sn="right"===Pe?it[0].left+it[0].width-it[Ft].left-it[Ft].width:(it[Ft]||b)[Pe],sn};"horizontal"===this.position?(De="width",Ge=this.wrapperWidth,Ke=this.scrollListWidth-(this.hiddenItems.length?this.operationWidth:0),ve=this.addButtonWidth,Je=Math.abs(this.transformX),"rtl"===this.getLayoutDirection()?(Pe="right",this.pingRight=this.transformX>0,this.pingLeft=this.transformX+this.wrapperWidthGe&&(S=Ge-ve),!it.length)return this.hiddenItems=[],void this.cdr.markForCheck();const $=it.length;let R=$;for(let Ft=0;Ft<$;Ft+=1)if(N(Ft)+(it[Ft]||b)[De]>Je+S){R=Ft-1;break}let he=0;for(let Ft=$-1;Ft>=0;Ft-=1)if(N(Ft){class Ue{constructor(){this.content=null,this.active=!1,this.tabPaneAnimated=!0,this.forceRender=!1}static#e=this.\u0275fac=function(Pe){return new(Pe||Ue)};static#t=this.\u0275cmp=e.Xpm({type:Ue,selectors:[["","nz-tab-body",""]],hostAttrs:[1,"ant-tabs-tabpane"],hostVars:12,hostBindings:function(Pe,Je){2&Pe&&(e.uIk("tabindex",Je.active?0:-1)("aria-hidden",!Je.active),e.Udp("visibility",Je.tabPaneAnimated?Je.active?null:"hidden":null)("height",Je.tabPaneAnimated?Je.active?null:0:null)("overflow-y",Je.tabPaneAnimated?Je.active?null:"none":null)("display",Je.tabPaneAnimated||Je.active?null:"none"),e.ekj("ant-tabs-tabpane-active",Je.active))},inputs:{content:"content",active:"active",tabPaneAnimated:"tabPaneAnimated",forceRender:"forceRender"},exportAs:["nzTabBody"],attrs:q,decls:1,vars:1,consts:[[4,"ngIf"],[3,"ngTemplateOutlet"]],template:function(Pe,Je){1&Pe&&e.YNc(0,ee,2,1,"ng-container",0),2&Pe&&e.Q6J("ngIf",Je.active||Je.forceRender)},dependencies:[_.O5,_.tP],encapsulation:2,changeDetection:0})}return Ue})(),He=(()=>{class Ue{constructor(){this.closeIcon="close"}static#e=this.\u0275fac=function(Pe){return new(Pe||Ue)};static#t=this.\u0275cmp=e.Xpm({type:Ue,selectors:[["nz-tab-close-button"],["button","nz-tab-close-button",""]],hostAttrs:["aria-label","Close tab","type","button",1,"ant-tabs-tab-remove"],inputs:{closeIcon:"closeIcon"},decls:1,vars:1,consts:[[4,"nzStringTemplateOutlet"],["nz-icon","","nzTheme","outline",3,"nzType"]],template:function(Pe,Je){1&Pe&&e.YNc(0,Be,2,1,"ng-container",0),2&Pe&&e.Q6J("nzStringTemplateOutlet",Je.closeIcon)},dependencies:[n.Ls,t.f],encapsulation:2})}return Ue})(),et=(()=>{class Ue{constructor(De){this.templateRef=De}static#e=this.\u0275fac=function(Pe){return new(Pe||Ue)(e.Y36(e.Rgc,1))};static#t=this.\u0275dir=e.lG2({type:Ue,selectors:[["ng-template","nzTabLink",""]],exportAs:["nzTabLinkTemplate"]})}return Ue})(),It=(()=>{class Ue{constructor(De,Pe){this.elementRef=De,this.routerLink=Pe}static#e=this.\u0275fac=function(Pe){return new(Pe||Ue)(e.Y36(e.SBq),e.Y36(_e.rH,10))};static#t=this.\u0275dir=e.lG2({type:Ue,selectors:[["a","nz-tab-link",""]],exportAs:["nzTabLink"]})}return Ue})(),Ot=(()=>{class Ue{static#e=this.\u0275fac=function(Pe){return new(Pe||Ue)};static#t=this.\u0275dir=e.lG2({type:Ue,selectors:[["","nz-tab",""]],exportAs:["nzTab"]})}return Ue})();const xt=new e.OlP("NZ_TAB_SET");let Qe=(()=>{class Ue{get content(){return this.template||this.contentTemplate}get label(){return this.nzTitle||this.nzTabLinkTemplateDirective?.templateRef}constructor(De){this.closestTabSet=De,this.nzTitle="",this.nzClosable=!1,this.nzCloseIcon="close",this.nzDisabled=!1,this.nzForceRender=!1,this.nzSelect=new e.vpe,this.nzDeselect=new e.vpe,this.nzClick=new e.vpe,this.nzContextmenu=new e.vpe,this.template=null,this.isActive=!1,this.position=null,this.origin=null,this.stateChanges=new v.x}ngOnChanges(De){const{nzTitle:Pe,nzDisabled:Je,nzForceRender:Ge}=De;(Pe||Je||Ge)&&this.stateChanges.next()}ngOnDestroy(){this.stateChanges.complete()}static#e=this.\u0275fac=function(Pe){return new(Pe||Ue)(e.Y36(xt))};static#t=this.\u0275cmp=e.Xpm({type:Ue,selectors:[["nz-tab"]],contentQueries:function(Pe,Je,Ge){if(1&Pe&&(e.Suo(Ge,et,5),e.Suo(Ge,Ot,5,e.Rgc),e.Suo(Ge,It,5)),2&Pe){let Ke;e.iGM(Ke=e.CRH())&&(Je.nzTabLinkTemplateDirective=Ke.first),e.iGM(Ke=e.CRH())&&(Je.template=Ke.first),e.iGM(Ke=e.CRH())&&(Je.linkDirective=Ke.first)}},viewQuery:function(Pe,Je){if(1&Pe&&e.Gf(Re,7),2&Pe){let Ge;e.iGM(Ge=e.CRH())&&(Je.contentTemplate=Ge.first)}},inputs:{nzTitle:"nzTitle",nzClosable:"nzClosable",nzCloseIcon:"nzCloseIcon",nzDisabled:"nzDisabled",nzForceRender:"nzForceRender"},outputs:{nzSelect:"nzSelect",nzDeselect:"nzDeselect",nzClick:"nzClick",nzContextmenu:"nzContextmenu"},exportAs:["nzTab"],features:[e.TTD],ngContentSelectors:je,decls:4,vars:0,consts:[["tabLinkTemplate",""],["contentTemplate",""]],template:function(Pe,Je){1&Pe&&(e.F$t(Mt),e.YNc(0,ct,1,0,"ng-template",null,0,e.W1O),e.YNc(2,Ae,1,0,"ng-template",null,1,e.W1O))},encapsulation:2,changeDetection:0})}return(0,W.gn)([(0,K.yF)()],Ue.prototype,"nzClosable",void 0),(0,W.gn)([(0,K.yF)()],Ue.prototype,"nzDisabled",void 0),(0,W.gn)([(0,K.yF)()],Ue.prototype,"nzForceRender",void 0),Ue})();class ke{}let qe=0,ge=(()=>{class Ue{get nzSelectedIndex(){return this.selectedIndex}set nzSelectedIndex(De){this.indexToSelect=(0,C.su)(De,null)}get position(){return-1===["top","bottom"].indexOf(this.nzTabPosition)?"vertical":"horizontal"}get addable(){return"editable-card"===this.nzType&&!this.nzHideAdd}get closable(){return"editable-card"===this.nzType}get line(){return"line"===this.nzType}get inkBarAnimated(){return this.line&&("boolean"==typeof this.nzAnimated?this.nzAnimated:this.nzAnimated.inkBar)}get tabPaneAnimated(){return"horizontal"===this.position&&this.line&&("boolean"==typeof this.nzAnimated?this.nzAnimated:this.nzAnimated.tabPane)}constructor(De,Pe,Je,Ge,Ke){this.nzConfigService=De,this.ngZone=Pe,this.cdr=Je,this.directionality=Ge,this.router=Ke,this._nzModuleName="tabs",this.nzTabPosition="top",this.nzCanDeactivate=null,this.nzAddIcon="plus",this.nzTabBarStyle=null,this.nzType="line",this.nzSize="default",this.nzAnimated=!0,this.nzTabBarGutter=void 0,this.nzHideAdd=!1,this.nzCentered=!1,this.nzHideAll=!1,this.nzLinkRouter=!1,this.nzLinkExact=!0,this.nzSelectChange=new e.vpe(!0),this.nzSelectedIndexChange=new e.vpe,this.nzTabListScroll=new e.vpe,this.nzClose=new e.vpe,this.nzAdd=new e.vpe,this.allTabs=new e.n_E,this.tabs=new e.n_E,this.dir="ltr",this.destroy$=new v.x,this.indexToSelect=0,this.selectedIndex=null,this.tabLabelSubscription=z.w0.EMPTY,this.tabsSubscription=z.w0.EMPTY,this.canDeactivateSubscription=z.w0.EMPTY,this.tabSetId=qe++}ngOnInit(){this.dir=this.directionality.value,this.directionality.change?.pipe((0,p.R)(this.destroy$)).subscribe(De=>{this.dir=De,this.cdr.detectChanges()})}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete(),this.tabs.destroy(),this.tabLabelSubscription.unsubscribe(),this.tabsSubscription.unsubscribe(),this.canDeactivateSubscription.unsubscribe()}ngAfterContentInit(){this.ngZone.runOutsideAngular(()=>{Promise.resolve().then(()=>this.setUpRouter())}),this.subscribeToTabLabels(),this.subscribeToAllTabChanges(),this.tabsSubscription=this.tabs.changes.subscribe(()=>{if(this.clampTabIndex(this.indexToSelect)===this.selectedIndex){const Pe=this.tabs.toArray();for(let Je=0;Je{this.tabs.forEach((Je,Ge)=>Je.isActive=Ge===De),Pe||this.nzSelectedIndexChange.emit(De)})}this.tabs.forEach((Pe,Je)=>{Pe.position=Je-De,null!=this.selectedIndex&&0===Pe.position&&!Pe.origin&&(Pe.origin=De-this.selectedIndex)}),this.selectedIndex!==De&&(this.selectedIndex=De,this.cdr.markForCheck())}onClose(De,Pe){Pe.preventDefault(),Pe.stopPropagation(),this.nzClose.emit({index:De})}onAdd(){this.nzAdd.emit()}clampTabIndex(De){return Math.min(this.tabs.length-1,Math.max(De||0,0))}createChangeEvent(De){const Pe=new ke;return Pe.index=De,this.tabs&&this.tabs.length&&(Pe.tab=this.tabs.toArray()[De],this.tabs.forEach((Je,Ge)=>{Ge!==De&&Je.nzDeselect.emit()}),Pe.tab.nzSelect.emit()),Pe}subscribeToTabLabels(){this.tabLabelSubscription&&this.tabLabelSubscription.unsubscribe(),this.tabLabelSubscription=(0,d.T)(...this.tabs.map(De=>De.stateChanges)).subscribe(()=>this.cdr.markForCheck())}subscribeToAllTabChanges(){this.allTabs.changes.pipe((0,y.O)(this.allTabs)).subscribe(De=>{this.tabs.reset(De.filter(Pe=>Pe.closestTabSet===this)),this.tabs.notifyOnChanges()})}canDeactivateFun(De,Pe){return"function"==typeof this.nzCanDeactivate?(0,K.lN)(this.nzCanDeactivate(De,Pe)).pipe((0,T.P)(),(0,p.R)(this.destroy$)):(0,g.of)(!0)}clickNavItem(De,Pe,Je){De.nzDisabled||(De.nzClick.emit(),this.isRouterLinkClickEvent(Pe,Je)||this.setSelectedIndex(Pe))}isRouterLinkClickEvent(De,Pe){const Je=Pe.target;return!!this.nzLinkRouter&&!!this.tabs.toArray()[De]?.linkDirective?.elementRef.nativeElement.contains(Je)}contextmenuNavItem(De,Pe){De.nzDisabled||De.nzContextmenu.emit(Pe)}setSelectedIndex(De){this.canDeactivateSubscription.unsubscribe(),this.canDeactivateSubscription=this.canDeactivateFun(this.selectedIndex,De).subscribe(Pe=>{Pe&&(this.nzSelectedIndex=De,this.tabNavBarRef.focusIndex=De,this.cdr.markForCheck())})}getTabIndex(De,Pe){return De.nzDisabled?null:this.selectedIndex===Pe?0:-1}getTabContentId(De){return`nz-tabs-${this.tabSetId}-tab-${De}`}setUpRouter(){if(this.nzLinkRouter){if(!this.router)throw new Error(`${j.Bq} you should import 'RouterModule' if you want to use 'nzLinkRouter'!`);this.router.events.pipe((0,p.R)(this.destroy$),(0,x.h)(De=>De instanceof _e.m2),(0,y.O)(!0),(0,D.g)(0)).subscribe(()=>{this.updateRouterActive(),this.cdr.markForCheck()})}}updateRouterActive(){if(this.router.navigated){const De=this.findShouldActiveTabIndex();De!==this.selectedIndex&&this.setSelectedIndex(De),this.nzHideAll=-1===De}}findShouldActiveTabIndex(){const De=this.tabs.toArray(),Pe=this.isLinkActive(this.router);return De.findIndex(Je=>{const Ge=Je.linkDirective;return!!Ge&&Pe(Ge.routerLink)})}isLinkActive(De){return Pe=>!!Pe&&De.isActive(Pe.urlTree||"",{paths:this.nzLinkExact?"exact":"subset",queryParams:this.nzLinkExact?"exact":"subset",fragment:"ignored",matrixParams:"ignored"})}getTabContentMarginValue(){return 100*-(this.nzSelectedIndex||0)}getTabContentMarginLeft(){return this.tabPaneAnimated&&"rtl"!==this.dir?`${this.getTabContentMarginValue()}%`:""}getTabContentMarginRight(){return this.tabPaneAnimated&&"rtl"===this.dir?`${this.getTabContentMarginValue()}%`:""}static#e=this.\u0275fac=function(Pe){return new(Pe||Ue)(e.Y36(H.jY),e.Y36(e.R0b),e.Y36(e.sBO),e.Y36(F.Is,8),e.Y36(_e.F0,8))};static#t=this.\u0275cmp=e.Xpm({type:Ue,selectors:[["nz-tabset"]],contentQueries:function(Pe,Je,Ge){if(1&Pe&&e.Suo(Ge,Qe,5),2&Pe){let Ke;e.iGM(Ke=e.CRH())&&(Je.allTabs=Ke)}},viewQuery:function(Pe,Je){if(1&Pe&&e.Gf(Vt,5),2&Pe){let Ge;e.iGM(Ge=e.CRH())&&(Je.tabNavBarRef=Ge.first)}},hostAttrs:[1,"ant-tabs"],hostVars:24,hostBindings:function(Pe,Je){2&Pe&&e.ekj("ant-tabs-card","card"===Je.nzType||"editable-card"===Je.nzType)("ant-tabs-editable","editable-card"===Je.nzType)("ant-tabs-editable-card","editable-card"===Je.nzType)("ant-tabs-centered",Je.nzCentered)("ant-tabs-rtl","rtl"===Je.dir)("ant-tabs-top","top"===Je.nzTabPosition)("ant-tabs-bottom","bottom"===Je.nzTabPosition)("ant-tabs-left","left"===Je.nzTabPosition)("ant-tabs-right","right"===Je.nzTabPosition)("ant-tabs-default","default"===Je.nzSize)("ant-tabs-small","small"===Je.nzSize)("ant-tabs-large","large"===Je.nzSize)},inputs:{nzSelectedIndex:"nzSelectedIndex",nzTabPosition:"nzTabPosition",nzTabBarExtraContent:"nzTabBarExtraContent",nzCanDeactivate:"nzCanDeactivate",nzAddIcon:"nzAddIcon",nzTabBarStyle:"nzTabBarStyle",nzType:"nzType",nzSize:"nzSize",nzAnimated:"nzAnimated",nzTabBarGutter:"nzTabBarGutter",nzHideAdd:"nzHideAdd",nzCentered:"nzCentered",nzHideAll:"nzHideAll",nzLinkRouter:"nzLinkRouter",nzLinkExact:"nzLinkExact"},outputs:{nzSelectChange:"nzSelectChange",nzSelectedIndexChange:"nzSelectedIndexChange",nzTabListScroll:"nzTabListScroll",nzClose:"nzClose",nzAdd:"nzAdd"},exportAs:["nzTabset"],features:[e._Bn([{provide:xt,useExisting:Ue}])],decls:4,vars:16,consts:[[3,"ngStyle","selectedIndex","inkBarAnimated","addable","addIcon","hideBar","position","extraTemplate","tabScroll","selectFocusedIndex","addClicked",4,"ngIf"],[1,"ant-tabs-content-holder"],[1,"ant-tabs-content"],["nz-tab-body","",3,"active","content","forceRender","tabPaneAnimated",4,"ngFor","ngForOf"],[3,"ngStyle","selectedIndex","inkBarAnimated","addable","addIcon","hideBar","position","extraTemplate","tabScroll","selectFocusedIndex","addClicked"],["class","ant-tabs-tab",3,"margin-right","margin-bottom","ant-tabs-tab-active","ant-tabs-tab-disabled","click","contextmenu",4,"ngFor","ngForOf"],[1,"ant-tabs-tab",3,"click","contextmenu"],["role","tab","nzTabNavItem","","cdkMonitorElementFocus","",1,"ant-tabs-tab-btn",3,"disabled","tab","active"],[4,"nzStringTemplateOutlet","nzStringTemplateOutletContext"],["nz-tab-close-button","",3,"closeIcon","click",4,"ngIf"],["nz-tab-close-button","",3,"closeIcon","click"],["nz-tab-body","",3,"active","content","forceRender","tabPaneAnimated"]],template:function(Pe,Je){1&Pe&&(e.YNc(0,U,2,9,"nz-tabs-nav",0),e.TgZ(1,"div",1)(2,"div",2),e.YNc(3,B,1,4,"div",3),e.qZA()()),2&Pe&&(e.Q6J("ngIf",Je.tabs.length||Je.addable),e.xp6(2),e.Udp("margin-left",Je.getTabContentMarginLeft())("margin-right",Je.getTabContentMarginRight()),e.ekj("ant-tabs-content-top","top"===Je.nzTabPosition)("ant-tabs-content-bottom","bottom"===Je.nzTabPosition)("ant-tabs-content-left","left"===Je.nzTabPosition)("ant-tabs-content-right","right"===Je.nzTabPosition)("ant-tabs-content-animated",Je.tabPaneAnimated),e.xp6(1),e.Q6J("ngForOf",Je.tabs))},dependencies:[_.sg,_.O5,_.PC,t.f,l.kH,Vt,Ne,He,st],encapsulation:2})}return(0,W.gn)([(0,H.oS)()],Ue.prototype,"nzType",void 0),(0,W.gn)([(0,H.oS)()],Ue.prototype,"nzSize",void 0),(0,W.gn)([(0,H.oS)()],Ue.prototype,"nzAnimated",void 0),(0,W.gn)([(0,H.oS)()],Ue.prototype,"nzTabBarGutter",void 0),(0,W.gn)([(0,K.yF)()],Ue.prototype,"nzHideAdd",void 0),(0,W.gn)([(0,K.yF)()],Ue.prototype,"nzCentered",void 0),(0,W.gn)([(0,K.yF)()],Ue.prototype,"nzHideAll",void 0),(0,W.gn)([(0,K.yF)()],Ue.prototype,"nzLinkRouter",void 0),(0,W.gn)([(0,K.yF)()],Ue.prototype,"nzLinkExact",void 0),Ue})(),$e=(()=>{class Ue{static#e=this.\u0275fac=function(Pe){return new(Pe||Ue)};static#t=this.\u0275mod=e.oAB({type:Ue});static#n=this.\u0275inj=e.cJS({imports:[F.vT,_.ez,Y.Q8,n.PV,t.T,G.ud,l.rt,A.ZD,O.b1]})}return Ue})()},55695:(nt,I,o)=>{"use strict";o.d(I,{X:()=>d,j:()=>g});var e=o(97582),n=o(65879),t=o(78645),i=o(59773),l=o(13324),C=o(27754),E=o(49388),u=o(96814),z=o(90551),M=o(60095);function h(p,f){if(1&p){const y=n.EpF();n.TgZ(0,"span",1),n.NdJ("click",function(x){n.CHM(y);const D=n.oxw();return n.KtG(D.closeTag(x))}),n.qZA()}}const v=["*"];let g=(()=>{class p{constructor(y,T,x,D){this.cdr=y,this.renderer=T,this.elementRef=x,this.directionality=D,this.isPresetColor=!1,this.nzMode="default",this.nzChecked=!1,this.nzOnClose=new n.vpe,this.nzCheckedChange=new n.vpe,this.dir="ltr",this.destroy$=new t.x}updateCheckedStatus(){"checkable"===this.nzMode&&(this.nzChecked=!this.nzChecked,this.nzCheckedChange.emit(this.nzChecked))}closeTag(y){this.nzOnClose.emit(y),y.defaultPrevented||this.renderer.removeChild(this.renderer.parentNode(this.elementRef.nativeElement),this.elementRef.nativeElement)}clearPresetColor(){const y=this.elementRef.nativeElement,T=new RegExp(`(ant-tag-(?:${[...l.uf,...l.Bh].join("|")}))`,"g"),x=y.classList.toString(),D=[];let _=T.exec(x);for(;null!==_;)D.push(_[1]),_=T.exec(x);y.classList.remove(...D)}setPresetColor(){const y=this.elementRef.nativeElement;this.clearPresetColor(),this.isPresetColor=!!this.nzColor&&((0,l.o2)(this.nzColor)||(0,l.M8)(this.nzColor)),this.isPresetColor&&y.classList.add(`ant-tag-${this.nzColor}`)}ngOnInit(){this.directionality.change?.pipe((0,i.R)(this.destroy$)).subscribe(y=>{this.dir=y,this.cdr.detectChanges()}),this.dir=this.directionality.value}ngOnChanges(y){const{nzColor:T}=y;T&&this.setPresetColor()}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(T){return new(T||p)(n.Y36(n.sBO),n.Y36(n.Qsj),n.Y36(n.SBq),n.Y36(E.Is,8))};static#t=this.\u0275cmp=n.Xpm({type:p,selectors:[["nz-tag"]],hostAttrs:[1,"ant-tag"],hostVars:10,hostBindings:function(T,x){1&T&&n.NdJ("click",function(){return x.updateCheckedStatus()}),2&T&&(n.Udp("background-color",x.isPresetColor?"":x.nzColor),n.ekj("ant-tag-has-color",x.nzColor&&!x.isPresetColor)("ant-tag-checkable","checkable"===x.nzMode)("ant-tag-checkable-checked",x.nzChecked)("ant-tag-rtl","rtl"===x.dir))},inputs:{nzMode:"nzMode",nzColor:"nzColor",nzChecked:"nzChecked"},outputs:{nzOnClose:"nzOnClose",nzCheckedChange:"nzCheckedChange"},exportAs:["nzTag"],features:[n.TTD],ngContentSelectors:v,decls:2,vars:1,consts:[["nz-icon","","nzType","close","class","ant-tag-close-icon","tabindex","-1",3,"click",4,"ngIf"],["nz-icon","","nzType","close","tabindex","-1",1,"ant-tag-close-icon",3,"click"]],template:function(T,x){1&T&&(n.F$t(),n.Hsn(0),n.YNc(1,h,1,0,"span",0)),2&T&&(n.xp6(1),n.Q6J("ngIf","closeable"===x.nzMode))},dependencies:[u.O5,z.Ls],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,C.yF)()],p.prototype,"nzChecked",void 0),p})(),d=(()=>{class p{static#e=this.\u0275fac=function(T){return new(T||p)};static#t=this.\u0275mod=n.oAB({type:p});static#n=this.\u0275inj=n.cJS({imports:[E.vT,u.ez,M.u5,z.PV]})}return p})()},60047:(nt,I,o)=>{"use strict";o.d(I,{Iv:()=>je,m4:()=>mt,wY:()=>we});var e=o(97582),n=o(33651),t=o(65879),i=o(60095),l=o(78645),C=o(92438),E=o(22096),u=o(59773),z=o(93997),M=o(42460),h=o(37398),v=o(34338),g=o(64194),d=o(83064),p=o(1608),f=o(27754),y=o(12131),T=o(62831),x=o(49388),D=o(50883),_=o(96814),P=o(90551),O=o(85448),A=o(8324),k=o(70855),F=o(56879),W=o(42840),K=o(41958);const _e=["hourListElement"],Y=["minuteListElement"],G=["secondListElement"],H=["use12HoursListElement"];function j(de,U){if(1&de&&(t.TgZ(0,"div",4)(1,"div",5),t._uU(2),t.qZA()()),2&de){const B=t.oxw();t.xp6(2),t.Oqu(B.dateHelper.format(null==B.time?null:B.time.value,B.format)||"\xa0")}}function te(de,U){if(1&de){const B=t.EpF();t.TgZ(0,"li",10),t.NdJ("click",function(){t.CHM(B);const Ie=t.oxw().$implicit,Ne=t.oxw(2);return t.KtG(Ne.selectHour(Ie))}),t.TgZ(1,"div",11),t._uU(2),t.ALo(3,"number"),t.qZA()()}if(2&de){const B=t.oxw().$implicit,Ee=t.oxw(2);t.ekj("ant-picker-time-panel-cell-selected",Ee.isSelectedHour(B))("ant-picker-time-panel-cell-disabled",B.disabled),t.xp6(2),t.Oqu(t.xi3(3,5,B.index,"2.0-0"))}}function ne(de,U){if(1&de&&(t.ynx(0),t.YNc(1,te,4,8,"li",9),t.BQk()),2&de){const B=U.$implicit,Ee=t.oxw(2);t.xp6(1),t.Q6J("ngIf",!(Ee.nzHideDisabledOptions&&B.disabled))}}function pe(de,U){if(1&de&&(t.TgZ(0,"ul",6,7),t.YNc(2,ne,2,1,"ng-container",8),t.qZA()),2&de){const B=t.oxw();t.xp6(2),t.Q6J("ngForOf",B.hourRange)("ngForTrackBy",B.trackByFn)}}function re(de,U){if(1&de){const B=t.EpF();t.TgZ(0,"li",10),t.NdJ("click",function(){t.CHM(B);const Ie=t.oxw().$implicit,Ne=t.oxw(2);return t.KtG(Ne.selectMinute(Ie))}),t.TgZ(1,"div",11),t._uU(2),t.ALo(3,"number"),t.qZA()()}if(2&de){const B=t.oxw().$implicit,Ee=t.oxw(2);t.ekj("ant-picker-time-panel-cell-selected",Ee.isSelectedMinute(B))("ant-picker-time-panel-cell-disabled",B.disabled),t.xp6(2),t.Oqu(t.xi3(3,5,B.index,"2.0-0"))}}function be(de,U){if(1&de&&(t.ynx(0),t.YNc(1,re,4,8,"li",9),t.BQk()),2&de){const B=U.$implicit,Ee=t.oxw(2);t.xp6(1),t.Q6J("ngIf",!(Ee.nzHideDisabledOptions&&B.disabled))}}function le(de,U){if(1&de&&(t.TgZ(0,"ul",6,12),t.YNc(2,be,2,1,"ng-container",8),t.qZA()),2&de){const B=t.oxw();t.xp6(2),t.Q6J("ngForOf",B.minuteRange)("ngForTrackBy",B.trackByFn)}}function ce(de,U){if(1&de){const B=t.EpF();t.TgZ(0,"li",10),t.NdJ("click",function(){t.CHM(B);const Ie=t.oxw().$implicit,Ne=t.oxw(2);return t.KtG(Ne.selectSecond(Ie))}),t.TgZ(1,"div",11),t._uU(2),t.ALo(3,"number"),t.qZA()()}if(2&de){const B=t.oxw().$implicit,Ee=t.oxw(2);t.ekj("ant-picker-time-panel-cell-selected",Ee.isSelectedSecond(B))("ant-picker-time-panel-cell-disabled",B.disabled),t.xp6(2),t.Oqu(t.xi3(3,5,B.index,"2.0-0"))}}function Q(de,U){if(1&de&&(t.ynx(0),t.YNc(1,ce,4,8,"li",9),t.BQk()),2&de){const B=U.$implicit,Ee=t.oxw(2);t.xp6(1),t.Q6J("ngIf",!(Ee.nzHideDisabledOptions&&B.disabled))}}function ie(de,U){if(1&de&&(t.TgZ(0,"ul",6,13),t.YNc(2,Q,2,1,"ng-container",8),t.qZA()),2&de){const B=t.oxw();t.xp6(2),t.Q6J("ngForOf",B.secondRange)("ngForTrackBy",B.trackByFn)}}function ae(de,U){if(1&de){const B=t.EpF();t.ynx(0),t.TgZ(1,"li",10),t.NdJ("click",function(){const Ne=t.CHM(B).$implicit,pt=t.oxw(2);return t.KtG(pt.select12Hours(Ne))}),t.TgZ(2,"div",11),t._uU(3),t.qZA()(),t.BQk()}if(2&de){const B=U.$implicit,Ee=t.oxw(2);t.xp6(1),t.ekj("ant-picker-time-panel-cell-selected",Ee.isSelected12Hours(B)),t.xp6(2),t.Oqu(B.value)}}function xe(de,U){if(1&de&&(t.TgZ(0,"ul",6,14),t.YNc(2,ae,4,3,"ng-container",15),t.qZA()),2&de){const B=t.oxw();t.xp6(2),t.Q6J("ngForOf",B.use12HoursRange)}}function Me(de,U){}function Ye(de,U){if(1&de&&(t.TgZ(0,"div",23),t.YNc(1,Me,0,0,"ng-template",24),t.qZA()),2&de){const B=t.oxw(2);t.xp6(1),t.Q6J("ngTemplateOutlet",B.nzAddOn)}}function q(de,U){if(1&de){const B=t.EpF();t.TgZ(0,"div",16),t.YNc(1,Ye,2,1,"div",17),t.TgZ(2,"ul",18)(3,"li",19)(4,"a",20),t.NdJ("click",function(){t.CHM(B);const Ie=t.oxw();return t.KtG(Ie.onClickNow())}),t._uU(5),t.ALo(6,"nzI18n"),t.qZA()(),t.TgZ(7,"li",21)(8,"button",22),t.NdJ("click",function(){t.CHM(B);const Ie=t.oxw();return t.KtG(Ie.onClickOk())}),t._uU(9),t.ALo(10,"nzI18n"),t.qZA()()()()}if(2&de){const B=t.oxw();t.xp6(1),t.Q6J("ngIf",B.nzAddOn),t.xp6(4),t.hij(" ",B.nzNowText||t.lcZ(6,3,"Calendar.lang.now")," "),t.xp6(4),t.hij(" ",B.nzOkText||t.lcZ(10,5,"Calendar.lang.ok")," ")}}const ye=["inputElement"];function ee(de,U){if(1&de&&(t.ynx(0),t._UZ(1,"span",8),t.BQk()),2&de){const B=U.$implicit;t.xp6(1),t.Q6J("nzType",B)}}function Be(de,U){if(1&de&&t._UZ(0,"nz-form-item-feedback-icon",9),2&de){const B=t.oxw();t.Q6J("status",B.status)}}function Re(de,U){if(1&de){const B=t.EpF();t.TgZ(0,"span",10),t.NdJ("click",function(Ie){t.CHM(B);const Ne=t.oxw();return t.KtG(Ne.onClickClearBtn(Ie))}),t._UZ(1,"span",11),t.qZA()}if(2&de){const B=t.oxw();t.xp6(1),t.uIk("aria-label",B.nzClearText)("title",B.nzClearText)}}function ct(de,U){if(1&de){const B=t.EpF();t.TgZ(0,"div",12)(1,"div",13)(2,"div",14)(3,"nz-time-picker-panel",15),t.NdJ("ngModelChange",function(Ie){t.CHM(B);const Ne=t.oxw();return t.KtG(Ne.value=Ie)})("ngModelChange",function(Ie){t.CHM(B);const Ne=t.oxw();return t.KtG(Ne.onPanelValueChange(Ie))})("closePanel",function(){t.CHM(B);const Ie=t.oxw();return t.KtG(Ie.closePanel())}),t.ALo(4,"async"),t.qZA()()()()}if(2&de){const B=t.oxw();t.Q6J("@slideMotion","enter"),t.xp6(3),t.Q6J("ngClass",B.nzPopupClassName)("format",B.nzFormat)("nzHourStep",B.nzHourStep)("nzMinuteStep",B.nzMinuteStep)("nzSecondStep",B.nzSecondStep)("nzDisabledHours",B.nzDisabledHours)("nzDisabledMinutes",B.nzDisabledMinutes)("nzDisabledSeconds",B.nzDisabledSeconds)("nzPlaceHolder",B.nzPlaceHolder||t.lcZ(4,19,B.i18nPlaceHolder$))("nzHideDisabledOptions",B.nzHideDisabledOptions)("nzUse12Hours",B.nzUse12Hours)("nzDefaultOpenValue",B.nzDefaultOpenValue)("nzAddOn",B.nzAddOn)("nzClearText",B.nzClearText)("nzNowText",B.nzNowText)("nzOkText",B.nzOkText)("nzAllowEmpty",B.nzAllowEmpty)("ngModel",B.value)}}class Ae{setMinutes(U,B){return B||(this.initValue(),this.value.setMinutes(U),this.update()),this}setHours(U,B){return B||(this.initValue(),this.value.setHours(this._use12Hours?"PM"===this.selected12Hours&&12!==U?U+12:"AM"===this.selected12Hours&&12===U?0:U:U),this.update()),this}setSeconds(U,B){return B||(this.initValue(),this.value.setSeconds(U),this.update()),this}setUse12Hours(U){return this._use12Hours=U,this}get changes(){return this._changes.asObservable()}setValue(U,B){return(0,f.DX)(B)&&(this._use12Hours=B),U!==this.value&&(this._value=U,(0,f.DX)(this.value)?this._use12Hours&&(0,f.DX)(this.hours)&&(this.selected12Hours=this.hours>=12?"PM":"AM"):this._clear()),this}initValue(){(0,f.kK)(this.value)&&this.setValue(new Date,this._use12Hours)}clear(){this._clear(),this.update()}get isEmpty(){return!((0,f.DX)(this.hours)||(0,f.DX)(this.minutes)||(0,f.DX)(this.seconds))}_clear(){this._value=void 0,this.selected12Hours=void 0}update(){this.isEmpty?this._value=void 0:((0,f.DX)(this.hours)&&this.value.setHours(this.hours),(0,f.DX)(this.minutes)&&this.value.setMinutes(this.minutes),(0,f.DX)(this.seconds)&&this.value.setSeconds(this.seconds),this._use12Hours&&("PM"===this.selected12Hours&&this.hours<12&&this.value.setHours(this.hours+12),"AM"===this.selected12Hours&&this.hours>=12&&this.value.setHours(this.hours-12))),this.changed()}changed(){this._changes.next(this.value)}get viewHours(){return this._use12Hours&&(0,f.DX)(this.hours)?this.calculateViewHour(this.hours):this.hours}setSelected12Hours(U){U.toUpperCase()!==this.selected12Hours&&(this.selected12Hours=U.toUpperCase(),this.update())}get value(){return this._value||this._defaultOpenValue}get hours(){return this.value?.getHours()}get minutes(){return this.value?.getMinutes()}get seconds(){return this.value?.getSeconds()}setDefaultOpenValue(U){return this._defaultOpenValue=U,this}constructor(){this.selected12Hours=void 0,this._use12Hours=!1,this._changes=new l.x}calculateViewHour(U){const B=this.selected12Hours;return"PM"===B&&U>12?U-12:"AM"===B&&0===U?12:U}}function Mt(de,U=1,B=0){return new Array(Math.ceil(de/U)).fill(0).map((Ee,Ie)=>(Ie+B)*U)}let je=(()=>{class de{set nzAllowEmpty(B){(0,f.DX)(B)&&(this._allowEmpty=B)}get nzAllowEmpty(){return this._allowEmpty}set nzDisabledHours(B){this._disabledHours=B,this._disabledHours&&this.buildHours()}get nzDisabledHours(){return this._disabledHours}set nzDisabledMinutes(B){(0,f.DX)(B)&&(this._disabledMinutes=B,this.buildMinutes())}get nzDisabledMinutes(){return this._disabledMinutes}set nzDisabledSeconds(B){(0,f.DX)(B)&&(this._disabledSeconds=B,this.buildSeconds())}get nzDisabledSeconds(){return this._disabledSeconds}set format(B){if((0,f.DX)(B)){this._format=B,this.enabledColumns=0;const Ee=new Set(B);this.hourEnabled=Ee.has("H")||Ee.has("h"),this.minuteEnabled=Ee.has("m"),this.secondEnabled=Ee.has("s"),this.hourEnabled&&this.enabledColumns++,this.minuteEnabled&&this.enabledColumns++,this.secondEnabled&&this.enabledColumns++,this.nzUse12Hours&&this.build12Hours()}}get format(){return this._format}set nzHourStep(B){(0,f.DX)(B)&&(this._nzHourStep=B,this.buildHours())}get nzHourStep(){return this._nzHourStep}set nzMinuteStep(B){(0,f.DX)(B)&&(this._nzMinuteStep=B,this.buildMinutes())}get nzMinuteStep(){return this._nzMinuteStep}set nzSecondStep(B){(0,f.DX)(B)&&(this._nzSecondStep=B,this.buildSeconds())}get nzSecondStep(){return this._nzSecondStep}trackByFn(B){return B}buildHours(){let B=24,Ee=this.nzDisabledHours?.(),Ie=0;if(this.nzUse12Hours&&(B=12,Ee&&(Ee="PM"===this.time.selected12Hours?Ee.filter(Ne=>Ne>=12).map(Ne=>Ne>12?Ne-12:Ne):Ee.filter(Ne=>Ne<12||24===Ne).map(Ne=>24===Ne||0===Ne?12:Ne)),Ie=1),this.hourRange=Mt(B,this.nzHourStep,Ie).map(Ne=>({index:Ne,disabled:!!Ee&&-1!==Ee.indexOf(Ne)})),this.nzUse12Hours&&12===this.hourRange[this.hourRange.length-1].index){const Ne=[...this.hourRange];Ne.unshift(Ne[Ne.length-1]),Ne.splice(Ne.length-1,1),this.hourRange=Ne}}buildMinutes(){this.minuteRange=Mt(60,this.nzMinuteStep).map(B=>({index:B,disabled:!!this.nzDisabledMinutes&&-1!==this.nzDisabledMinutes(this.time.hours).indexOf(B)}))}buildSeconds(){this.secondRange=Mt(60,this.nzSecondStep).map(B=>({index:B,disabled:!!this.nzDisabledSeconds&&-1!==this.nzDisabledSeconds(this.time.hours,this.time.minutes).indexOf(B)}))}build12Hours(){const B=this._format.includes("A");this.use12HoursRange=[{index:0,value:B?"AM":"am"},{index:1,value:B?"PM":"pm"}]}buildTimes(){this.buildHours(),this.buildMinutes(),this.buildSeconds(),this.build12Hours()}scrollToTime(B=0){this.hourEnabled&&this.hourListElement&&this.scrollToSelected(this.hourListElement.nativeElement,this.time.viewHours,B,"hour"),this.minuteEnabled&&this.minuteListElement&&this.scrollToSelected(this.minuteListElement.nativeElement,this.time.minutes,B,"minute"),this.secondEnabled&&this.secondListElement&&this.scrollToSelected(this.secondListElement.nativeElement,this.time.seconds,B,"second"),this.nzUse12Hours&&this.use12HoursListElement&&this.scrollToSelected(this.use12HoursListElement.nativeElement,"AM"===this.time.selected12Hours?0:1,B,"12-hour")}selectHour(B){this.time.setHours(B.index,B.disabled),this._disabledMinutes&&this.buildMinutes(),(this._disabledSeconds||this._disabledMinutes)&&this.buildSeconds()}selectMinute(B){this.time.setMinutes(B.index,B.disabled),this._disabledSeconds&&this.buildSeconds()}selectSecond(B){this.time.setSeconds(B.index,B.disabled)}select12Hours(B){this.time.setSelected12Hours(B.value),this._disabledHours&&this.buildHours(),this._disabledMinutes&&this.buildMinutes(),this._disabledSeconds&&this.buildSeconds()}scrollToSelected(B,Ee,Ie=0,Ne){if(!B)return;const pt=this.translateIndex(Ee,Ne);this.scrollTo(B,(B.children[pt]||B.children[0]).offsetTop,Ie)}translateIndex(B,Ee){return"hour"===Ee?this.calcIndex(this.nzDisabledHours?.(),this.hourRange.map(Ie=>Ie.index).indexOf(B)):"minute"===Ee?this.calcIndex(this.nzDisabledMinutes?.(this.time.hours),this.minuteRange.map(Ie=>Ie.index).indexOf(B)):"second"===Ee?this.calcIndex(this.nzDisabledSeconds?.(this.time.hours,this.time.minutes),this.secondRange.map(Ie=>Ie.index).indexOf(B)):this.calcIndex([],this.use12HoursRange.map(Ie=>Ie.index).indexOf(B))}scrollTo(B,Ee,Ie){if(Ie<=0)return void(B.scrollTop=Ee);const pt=(Ee-B.scrollTop)/Ie*10;this.ngZone.runOutsideAngular(()=>{(0,F.e)(()=>{B.scrollTop=B.scrollTop+pt,B.scrollTop!==Ee&&this.scrollTo(B,Ee,Ie-10)})})}calcIndex(B,Ee){return B?.length&&this.nzHideDisabledOptions?Ee-B.reduce((Ie,Ne)=>Ie+(Ne-1||(this.nzDisabledMinutes?.(Ee).indexOf(Ie)??-1)>-1||(this.nzDisabledSeconds?.(Ee,Ie).indexOf(Ne)??-1)>-1}onClickNow(){const B=new Date;this.timeDisabled(B)||(this.time.setValue(B),this.changed(),this.closePanel.emit())}onClickOk(){this.time.setValue(this.time.value,this.nzUse12Hours),this.changed(),this.closePanel.emit()}isSelectedHour(B){return B.index===this.time.viewHours}isSelectedMinute(B){return B.index===this.time.minutes}isSelectedSecond(B){return B.index===this.time.seconds}isSelected12Hours(B){return B.value.toUpperCase()===this.time.selected12Hours}constructor(B,Ee,Ie,Ne){this.ngZone=B,this.cdr=Ee,this.dateHelper=Ie,this.elementRef=Ne,this._nzHourStep=1,this._nzMinuteStep=1,this._nzSecondStep=1,this.unsubscribe$=new l.x,this._format="HH:mm:ss",this._disabledHours=()=>[],this._disabledMinutes=()=>[],this._disabledSeconds=()=>[],this._allowEmpty=!0,this.time=new Ae,this.hourEnabled=!0,this.minuteEnabled=!0,this.secondEnabled=!0,this.firstScrolled=!1,this.enabledColumns=3,this.nzInDatePicker=!1,this.nzHideDisabledOptions=!1,this.nzUse12Hours=!1,this.closePanel=new t.vpe}ngOnInit(){this.time.changes.pipe((0,u.R)(this.unsubscribe$)).subscribe(()=>{this.changed(),this.touched(),this.scrollToTime(120)}),this.buildTimes(),this.ngZone.runOutsideAngular(()=>{setTimeout(()=>{this.scrollToTime(),this.firstScrolled=!0}),(0,C.R)(this.elementRef.nativeElement,"mousedown").pipe((0,u.R)(this.unsubscribe$)).subscribe(B=>{B.preventDefault()})})}ngOnDestroy(){this.unsubscribe$.next(),this.unsubscribe$.complete()}ngOnChanges(B){const{nzUse12Hours:Ee,nzDefaultOpenValue:Ie}=B;!Ee?.previousValue&&Ee?.currentValue&&(this.build12Hours(),this.enabledColumns++),Ie?.currentValue&&this.time.setDefaultOpenValue(this.nzDefaultOpenValue||new Date)}writeValue(B){this.time.setValue(B,this.nzUse12Hours),this.buildTimes(),B&&this.firstScrolled&&this.scrollToTime(120),this.cdr.markForCheck()}registerOnChange(B){this.onChange=B}registerOnTouched(B){this.onTouch=B}static#e=this.\u0275fac=function(Ee){return new(Ee||de)(t.Y36(t.R0b),t.Y36(t.sBO),t.Y36(y.mx),t.Y36(t.SBq))};static#t=this.\u0275cmp=t.Xpm({type:de,selectors:[["nz-time-picker-panel"]],viewQuery:function(Ee,Ie){if(1&Ee&&(t.Gf(_e,5),t.Gf(Y,5),t.Gf(G,5),t.Gf(H,5)),2&Ee){let Ne;t.iGM(Ne=t.CRH())&&(Ie.hourListElement=Ne.first),t.iGM(Ne=t.CRH())&&(Ie.minuteListElement=Ne.first),t.iGM(Ne=t.CRH())&&(Ie.secondListElement=Ne.first),t.iGM(Ne=t.CRH())&&(Ie.use12HoursListElement=Ne.first)}},hostAttrs:[1,"ant-picker-time-panel"],hostVars:12,hostBindings:function(Ee,Ie){2&Ee&&t.ekj("ant-picker-time-panel-column-0",0===Ie.enabledColumns&&!Ie.nzInDatePicker)("ant-picker-time-panel-column-1",1===Ie.enabledColumns&&!Ie.nzInDatePicker)("ant-picker-time-panel-column-2",2===Ie.enabledColumns&&!Ie.nzInDatePicker)("ant-picker-time-panel-column-3",3===Ie.enabledColumns&&!Ie.nzInDatePicker)("ant-picker-time-panel-narrow",Ie.enabledColumns<3)("ant-picker-time-panel-placement-bottomLeft",!Ie.nzInDatePicker)},inputs:{nzInDatePicker:"nzInDatePicker",nzAddOn:"nzAddOn",nzHideDisabledOptions:"nzHideDisabledOptions",nzClearText:"nzClearText",nzNowText:"nzNowText",nzOkText:"nzOkText",nzPlaceHolder:"nzPlaceHolder",nzUse12Hours:"nzUse12Hours",nzDefaultOpenValue:"nzDefaultOpenValue",nzAllowEmpty:"nzAllowEmpty",nzDisabledHours:"nzDisabledHours",nzDisabledMinutes:"nzDisabledMinutes",nzDisabledSeconds:"nzDisabledSeconds",format:"format",nzHourStep:"nzHourStep",nzMinuteStep:"nzMinuteStep",nzSecondStep:"nzSecondStep"},outputs:{closePanel:"closePanel"},exportAs:["nzTimePickerPanel"],features:[t._Bn([{provide:i.JU,useExisting:de,multi:!0}]),t.TTD],decls:7,vars:6,consts:[["class","ant-picker-header",4,"ngIf"],[1,"ant-picker-content"],["class","ant-picker-time-panel-column","style","position: relative;",4,"ngIf"],["class","ant-picker-footer",4,"ngIf"],[1,"ant-picker-header"],[1,"ant-picker-header-view"],[1,"ant-picker-time-panel-column",2,"position","relative"],["hourListElement",""],[4,"ngFor","ngForOf","ngForTrackBy"],["class","ant-picker-time-panel-cell",3,"ant-picker-time-panel-cell-selected","ant-picker-time-panel-cell-disabled","click",4,"ngIf"],[1,"ant-picker-time-panel-cell",3,"click"],[1,"ant-picker-time-panel-cell-inner"],["minuteListElement",""],["secondListElement",""],["use12HoursListElement",""],[4,"ngFor","ngForOf"],[1,"ant-picker-footer"],["class","ant-picker-footer-extra",4,"ngIf"],[1,"ant-picker-ranges"],[1,"ant-picker-now"],[3,"click"],[1,"ant-picker-ok"],["nz-button","","type","button","nzSize","small","nzType","primary",3,"click"],[1,"ant-picker-footer-extra"],[3,"ngTemplateOutlet"]],template:function(Ee,Ie){1&Ee&&(t.YNc(0,j,3,1,"div",0),t.TgZ(1,"div",1),t.YNc(2,pe,3,2,"ul",2),t.YNc(3,le,3,2,"ul",2),t.YNc(4,ie,3,2,"ul",2),t.YNc(5,xe,3,1,"ul",2),t.qZA(),t.YNc(6,q,11,7,"div",3)),2&Ee&&(t.Q6J("ngIf",Ie.nzInDatePicker),t.xp6(2),t.Q6J("ngIf",Ie.hourEnabled),t.xp6(1),t.Q6J("ngIf",Ie.minuteEnabled),t.xp6(1),t.Q6J("ngIf",Ie.secondEnabled),t.xp6(1),t.Q6J("ngIf",Ie.nzUse12Hours),t.xp6(1),t.Q6J("ngIf",!Ie.nzInDatePicker))},dependencies:[_.sg,_.O5,_.tP,W.ix,k.w,K.dQ,_.JJ,y.o9],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,f.yF)()],de.prototype,"nzUse12Hours",void 0),de})(),mt=(()=>{class de{emitValue(B){this.setValue(B,!0),this._onChange&&this._onChange(this.value),this._onTouched&&this._onTouched()}setValue(B,Ee=!1){Ee&&(this.preValue=(0,v.Z)(B)?new Date(B):null),this.value=(0,v.Z)(B)?new Date(B):null,this.inputValue=this.dateHelper.format(B,this.nzFormat),this.cdr.markForCheck()}open(){this.nzDisabled||this.nzOpen||(this.focus(),this.nzOpen=!0,this.nzOpenChange.emit(this.nzOpen))}close(){this.nzOpen=!1,this.cdr.markForCheck(),this.nzOpenChange.emit(this.nzOpen)}updateAutoFocus(){this.isInit&&!this.nzDisabled&&(this.nzAutoFocus?this.renderer.setAttribute(this.inputRef.nativeElement,"autofocus","autofocus"):this.renderer.removeAttribute(this.inputRef.nativeElement,"autofocus"))}onClickClearBtn(B){B.stopPropagation(),this.emitValue(null)}onClickOutside(B){this.element.nativeElement.contains(B.target)||this.setCurrentValueAndClose()}onFocus(B){this.focused=B,B||(this.checkTimeValid(this.value)?this.setCurrentValueAndClose():(this.setValue(this.preValue),this.close()))}focus(){this.inputRef.nativeElement&&this.inputRef.nativeElement.focus()}blur(){this.inputRef.nativeElement&&this.inputRef.nativeElement.blur()}onKeyupEsc(){this.setValue(this.preValue)}onKeyupEnter(){this.nzOpen&&(0,v.Z)(this.value)?this.setCurrentValueAndClose():this.nzOpen||this.open()}onInputChange(B){!this.platform.TRIDENT&&document.activeElement===this.inputRef.nativeElement&&(this.open(),this.parseTimeString(B))}onPanelValueChange(B){this.setValue(B),this.focus()}closePanel(){this.inputRef.nativeElement.blur()}setCurrentValueAndClose(){this.emitValue(this.value),this.close()}constructor(B,Ee,Ie,Ne,pt,Dt,Lt,Ut,qt,en){this.nzConfigService=B,this.i18n=Ee,this.element=Ie,this.renderer=Ne,this.cdr=pt,this.dateHelper=Dt,this.platform=Lt,this.directionality=Ut,this.nzFormStatusService=qt,this.nzFormNoStatusService=en,this._nzModuleName="timePicker",this.destroy$=new l.x,this.isNzDisableFirstChange=!0,this.isInit=!1,this.focused=!1,this.inputValue="",this.value=null,this.preValue=null,this.i18nPlaceHolder$=(0,E.of)(void 0),this.overlayPositions=[{offsetY:3,originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{offsetY:-3,originX:"start",originY:"top",overlayX:"start",overlayY:"bottom"},{offsetY:3,originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"},{offsetY:-3,originX:"end",originY:"top",overlayX:"end",overlayY:"bottom"}],this.dir="ltr",this.prefixCls="ant-picker",this.statusCls={},this.status="",this.hasFeedback=!1,this.nzId=null,this.nzSize=null,this.nzStatus="",this.nzHourStep=1,this.nzMinuteStep=1,this.nzSecondStep=1,this.nzClearText="clear",this.nzNowText="",this.nzOkText="",this.nzPopupClassName="",this.nzPlaceHolder="",this.nzFormat="HH:mm:ss",this.nzOpen=!1,this.nzUse12Hours=!1,this.nzSuffixIcon="clock-circle",this.nzOpenChange=new t.vpe,this.nzHideDisabledOptions=!1,this.nzAllowEmpty=!0,this.nzDisabled=!1,this.nzAutoFocus=!1,this.nzBackdrop=!1,this.nzBorderless=!1,this.nzInputReadOnly=!1}ngOnInit(){this.nzFormStatusService?.formStatusChanges.pipe((0,z.x)((B,Ee)=>B.status===Ee.status&&B.hasFeedback===Ee.hasFeedback),(0,M.M)(this.nzFormNoStatusService?this.nzFormNoStatusService.noFormStatus:(0,E.of)(!1)),(0,h.U)(([{status:B,hasFeedback:Ee},Ie])=>({status:Ie?"":B,hasFeedback:Ee})),(0,u.R)(this.destroy$)).subscribe(({status:B,hasFeedback:Ee})=>{this.setStatusStyles(B,Ee)}),this.inputSize=Math.max(8,this.nzFormat.length)+2,this.origin=new n.xu(this.element),this.i18nPlaceHolder$=this.i18n.localeChange.pipe((0,h.U)(B=>B.TimePicker.placeholder)),this.dir=this.directionality.value,this.directionality.change?.pipe((0,u.R)(this.destroy$)).subscribe(B=>{this.dir=B})}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}ngOnChanges(B){const{nzUse12Hours:Ee,nzFormat:Ie,nzDisabled:Ne,nzAutoFocus:pt,nzStatus:Dt}=B;if(Ee&&!Ee.previousValue&&Ee.currentValue&&!Ie&&(this.nzFormat="h:mm:ss a"),Ne){const Ut=this.inputRef.nativeElement;Ne.currentValue?this.renderer.setAttribute(Ut,"disabled",""):this.renderer.removeAttribute(Ut,"disabled")}pt&&this.updateAutoFocus(),Dt&&this.setStatusStyles(this.nzStatus,this.hasFeedback)}parseTimeString(B){const Ee=this.dateHelper.parseTime(B,this.nzFormat)||null;(0,v.Z)(Ee)&&(this.value=Ee,this.cdr.markForCheck())}ngAfterViewInit(){this.isInit=!0,this.updateAutoFocus()}writeValue(B){let Ee;B instanceof Date?Ee=B:(0,f.kK)(B)?Ee=null:((0,p.ZK)('Non-Date type is not recommended for time-picker, use "Date" type.'),Ee=new Date(B)),this.setValue(Ee,!0)}registerOnChange(B){this._onChange=B}registerOnTouched(B){this._onTouched=B}setDisabledState(B){this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||B,this.isNzDisableFirstChange=!1,this.cdr.markForCheck()}checkTimeValid(B){if(!B)return!0;const Ee=this.nzDisabledHours?.(),Ie=this.nzDisabledMinutes?.(B.getHours()),Ne=this.nzDisabledSeconds?.(B.getHours(),B.getMinutes());return!(Ee?.includes(B.getHours())||Ie?.includes(B.getMinutes())||Ne?.includes(B.getSeconds()))}setStatusStyles(B,Ee){this.status=B,this.hasFeedback=Ee,this.cdr.markForCheck(),this.statusCls=(0,f.Zu)(this.prefixCls,B,Ee),Object.keys(this.statusCls).forEach(Ie=>{this.statusCls[Ie]?this.renderer.addClass(this.element.nativeElement,Ie):this.renderer.removeClass(this.element.nativeElement,Ie)})}static#e=this.\u0275fac=function(Ee){return new(Ee||de)(t.Y36(d.jY),t.Y36(y.wi),t.Y36(t.SBq),t.Y36(t.Qsj),t.Y36(t.sBO),t.Y36(y.mx),t.Y36(T.t4),t.Y36(x.Is,8),t.Y36(D.kH,8),t.Y36(D.yW,8))};static#t=this.\u0275cmp=t.Xpm({type:de,selectors:[["nz-time-picker"]],viewQuery:function(Ee,Ie){if(1&Ee&&t.Gf(ye,7),2&Ee){let Ne;t.iGM(Ne=t.CRH())&&(Ie.inputRef=Ne.first)}},hostAttrs:[1,"ant-picker"],hostVars:12,hostBindings:function(Ee,Ie){1&Ee&&t.NdJ("click",function(){return Ie.open()}),2&Ee&&t.ekj("ant-picker-large","large"===Ie.nzSize)("ant-picker-small","small"===Ie.nzSize)("ant-picker-disabled",Ie.nzDisabled)("ant-picker-focused",Ie.focused)("ant-picker-rtl","rtl"===Ie.dir)("ant-picker-borderless",Ie.nzBorderless)},inputs:{nzId:"nzId",nzSize:"nzSize",nzStatus:"nzStatus",nzHourStep:"nzHourStep",nzMinuteStep:"nzMinuteStep",nzSecondStep:"nzSecondStep",nzClearText:"nzClearText",nzNowText:"nzNowText",nzOkText:"nzOkText",nzPopupClassName:"nzPopupClassName",nzPlaceHolder:"nzPlaceHolder",nzAddOn:"nzAddOn",nzDefaultOpenValue:"nzDefaultOpenValue",nzDisabledHours:"nzDisabledHours",nzDisabledMinutes:"nzDisabledMinutes",nzDisabledSeconds:"nzDisabledSeconds",nzFormat:"nzFormat",nzOpen:"nzOpen",nzUse12Hours:"nzUse12Hours",nzSuffixIcon:"nzSuffixIcon",nzHideDisabledOptions:"nzHideDisabledOptions",nzAllowEmpty:"nzAllowEmpty",nzDisabled:"nzDisabled",nzAutoFocus:"nzAutoFocus",nzBackdrop:"nzBackdrop",nzBorderless:"nzBorderless",nzInputReadOnly:"nzInputReadOnly"},outputs:{nzOpenChange:"nzOpenChange"},exportAs:["nzTimePicker"],features:[t._Bn([{provide:i.JU,useExisting:de,multi:!0}]),t.TTD],decls:9,vars:16,consts:[[1,"ant-picker-input"],["type","text","autocomplete","off",3,"size","placeholder","ngModel","disabled","readOnly","ngModelChange","focus","blur","keyup.enter","keyup.escape"],["inputElement",""],[1,"ant-picker-suffix"],[4,"nzStringTemplateOutlet"],[3,"status",4,"ngIf"],["class","ant-picker-clear",3,"click",4,"ngIf"],["cdkConnectedOverlay","","nzConnectedOverlay","",3,"cdkConnectedOverlayHasBackdrop","cdkConnectedOverlayPositions","cdkConnectedOverlayOrigin","cdkConnectedOverlayOpen","cdkConnectedOverlayTransformOriginOn","detach","overlayOutsideClick"],["nz-icon","",3,"nzType"],[3,"status"],[1,"ant-picker-clear",3,"click"],["nz-icon","","nzType","close-circle","nzTheme","fill"],[1,"ant-picker-dropdown",2,"position","relative"],[1,"ant-picker-panel-container"],["tabindex","-1",1,"ant-picker-panel"],[3,"ngClass","format","nzHourStep","nzMinuteStep","nzSecondStep","nzDisabledHours","nzDisabledMinutes","nzDisabledSeconds","nzPlaceHolder","nzHideDisabledOptions","nzUse12Hours","nzDefaultOpenValue","nzAddOn","nzClearText","nzNowText","nzOkText","nzAllowEmpty","ngModel","ngModelChange","closePanel"]],template:function(Ee,Ie){1&Ee&&(t.TgZ(0,"div",0)(1,"input",1,2),t.NdJ("ngModelChange",function(pt){return Ie.inputValue=pt})("focus",function(){return Ie.onFocus(!0)})("blur",function(){return Ie.onFocus(!1)})("keyup.enter",function(){return Ie.onKeyupEnter()})("keyup.escape",function(){return Ie.onKeyupEsc()})("ngModelChange",function(pt){return Ie.onInputChange(pt)}),t.ALo(3,"async"),t.qZA(),t.TgZ(4,"span",3),t.YNc(5,ee,2,1,"ng-container",4),t.YNc(6,Be,1,1,"nz-form-item-feedback-icon",5),t.qZA(),t.YNc(7,Re,2,2,"span",6),t.qZA(),t.YNc(8,ct,5,21,"ng-template",7),t.NdJ("detach",function(){return Ie.close()})("overlayOutsideClick",function(pt){return Ie.onClickOutside(pt)})),2&Ee&&(t.xp6(1),t.Q6J("size",Ie.inputSize)("placeholder",Ie.nzPlaceHolder||t.lcZ(3,14,Ie.i18nPlaceHolder$))("ngModel",Ie.inputValue)("disabled",Ie.nzDisabled)("readOnly",Ie.nzInputReadOnly),t.uIk("id",Ie.nzId),t.xp6(4),t.Q6J("nzStringTemplateOutlet",Ie.nzSuffixIcon),t.xp6(1),t.Q6J("ngIf",Ie.hasFeedback&&!!Ie.status),t.xp6(1),t.Q6J("ngIf",Ie.nzAllowEmpty&&!Ie.nzDisabled&&Ie.value),t.xp6(1),t.Q6J("cdkConnectedOverlayHasBackdrop",Ie.nzBackdrop)("cdkConnectedOverlayPositions",Ie.overlayPositions)("cdkConnectedOverlayOrigin",Ie.origin)("cdkConnectedOverlayOpen",Ie.nzOpen)("cdkConnectedOverlayTransformOriginOn",".ant-picker-dropdown"))},dependencies:[_.mk,_.O5,i.Fj,i.JJ,i.On,n.pI,P.Ls,O.hQ,A.f,k.w,D.w_,je,_.Ov],encapsulation:2,data:{animation:[g.mF]},changeDetection:0})}return(0,e.gn)([(0,d.oS)()],de.prototype,"nzHourStep",void 0),(0,e.gn)([(0,d.oS)()],de.prototype,"nzMinuteStep",void 0),(0,e.gn)([(0,d.oS)()],de.prototype,"nzSecondStep",void 0),(0,e.gn)([(0,d.oS)()],de.prototype,"nzClearText",void 0),(0,e.gn)([(0,d.oS)()],de.prototype,"nzNowText",void 0),(0,e.gn)([(0,d.oS)()],de.prototype,"nzOkText",void 0),(0,e.gn)([(0,d.oS)()],de.prototype,"nzPopupClassName",void 0),(0,e.gn)([(0,d.oS)()],de.prototype,"nzFormat",void 0),(0,e.gn)([(0,d.oS)(),(0,f.yF)()],de.prototype,"nzUse12Hours",void 0),(0,e.gn)([(0,d.oS)()],de.prototype,"nzSuffixIcon",void 0),(0,e.gn)([(0,f.yF)()],de.prototype,"nzHideDisabledOptions",void 0),(0,e.gn)([(0,d.oS)(),(0,f.yF)()],de.prototype,"nzAllowEmpty",void 0),(0,e.gn)([(0,f.yF)()],de.prototype,"nzDisabled",void 0),(0,e.gn)([(0,f.yF)()],de.prototype,"nzAutoFocus",void 0),(0,e.gn)([(0,d.oS)()],de.prototype,"nzBackdrop",void 0),(0,e.gn)([(0,f.yF)()],de.prototype,"nzBorderless",void 0),(0,e.gn)([(0,f.yF)()],de.prototype,"nzInputReadOnly",void 0),de})(),we=(()=>{class de{static#e=this.\u0275fac=function(Ee){return new(Ee||de)};static#t=this.\u0275mod=t.oAB({type:de});static#n=this.\u0275inj=t.cJS({imports:[x.vT,_.ez,i.u5,y.YI,n.U8,P.PV,O.e4,A.T,W.sL,D.mJ]})}return de})()},96109:(nt,I,o)=>{"use strict";o.d(I,{Mg:()=>P,SY:()=>k,XK:()=>F,cg:()=>W,pu:()=>A});var e=o(97582),n=o(65879),t=o(64194),i=o(13324),l=o(27754),C=o(78645),E=o(76410),u=o(93997),z=o(59773),M=o(32181),h=o(5177),v=o(85448),g=o(331),d=o(83064),p=o(49388),f=o(96814),y=o(33651),T=o(8324);const x=["overlay"];function D(K,_e){if(1&K&&(n.ynx(0),n._uU(1),n.BQk()),2&K){const Y=n.oxw(2);n.xp6(1),n.Oqu(Y.nzTitle)}}function _(K,_e){if(1&K&&(n.TgZ(0,"div",2)(1,"div",3)(2,"div",4),n._UZ(3,"span",5),n.qZA(),n.TgZ(4,"div",6),n.YNc(5,D,2,1,"ng-container",7),n.qZA()()()),2&K){const Y=n.oxw();n.ekj("ant-tooltip-rtl","rtl"===Y.dir),n.Q6J("ngClass",Y._classMap)("ngStyle",Y.nzOverlayStyle)("@.disabled",!(null==Y.noAnimation||!Y.noAnimation.nzNoAnimation))("nzNoAnimation",null==Y.noAnimation?null:Y.noAnimation.nzNoAnimation)("@zoomBigMotion","active"),n.xp6(3),n.Q6J("ngStyle",Y._contentStyleMap),n.xp6(1),n.Q6J("ngStyle",Y._contentStyleMap),n.xp6(1),n.Q6J("nzStringTemplateOutlet",Y.nzTitle)("nzStringTemplateOutletContext",Y.nzTitleContext)}}let P=(()=>{class K{get _title(){return this.title||this.directiveTitle||null}get _content(){return this.content||this.directiveContent||null}get _trigger(){return typeof this.trigger<"u"?this.trigger:"hover"}get _placement(){const Y=this.placement;return Array.isArray(Y)&&Y.length>0?Y:"string"==typeof Y&&Y?[Y]:["top"]}get _visible(){return(typeof this.visible<"u"?this.visible:this.internalVisible)||!1}get _mouseEnterDelay(){return this.mouseEnterDelay||.15}get _mouseLeaveDelay(){return this.mouseLeaveDelay||.1}get _overlayClassName(){return this.overlayClassName||null}get _overlayStyle(){return this.overlayStyle||null}getProxyPropertyMap(){return{noAnimation:["noAnimation",()=>!!this.noAnimation]}}constructor(Y,G,H,j,te,ne){this.elementRef=Y,this.hostView=G,this.resolver=H,this.renderer=j,this.noAnimation=te,this.nzConfigService=ne,this.visibleChange=new n.vpe,this.internalVisible=!1,this.destroy$=new C.x,this.triggerDisposables=[]}ngOnChanges(Y){const{trigger:G}=Y;G&&!G.isFirstChange()&&this.registerTriggers(),this.component&&this.updatePropertiesByChanges(Y)}ngAfterViewInit(){this.createComponent(),this.registerTriggers()}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete(),this.clearTogglingTimer(),this.removeTriggerListeners()}show(){this.component?.show()}hide(){this.component?.hide()}updatePosition(){this.component&&this.component.updatePosition()}createComponent(){const Y=this.componentRef;this.component=Y.instance,this.renderer.removeChild(this.renderer.parentNode(this.elementRef.nativeElement),Y.location.nativeElement),this.component.setOverlayOrigin(this.origin||this.elementRef),this.initProperties();const G=this.component.nzVisibleChange.pipe((0,u.x)());G.pipe((0,z.R)(this.destroy$)).subscribe(H=>{this.internalVisible=H,this.visibleChange.emit(H)}),G.pipe((0,M.h)(H=>H),(0,h.g)(0,E.E),(0,M.h)(()=>!!this.component?.overlay?.overlayRef),(0,z.R)(this.destroy$)).subscribe(()=>{this.component?.updatePosition()})}registerTriggers(){const Y=this.elementRef.nativeElement,G=this.trigger;if(this.removeTriggerListeners(),"hover"===G){let H;this.triggerDisposables.push(this.renderer.listen(Y,"mouseenter",()=>{this.delayEnterLeave(!0,!0,this._mouseEnterDelay)})),this.triggerDisposables.push(this.renderer.listen(Y,"mouseleave",()=>{this.delayEnterLeave(!0,!1,this._mouseLeaveDelay),this.component?.overlay.overlayRef&&!H&&(H=this.component.overlay.overlayRef.overlayElement,this.triggerDisposables.push(this.renderer.listen(H,"mouseenter",()=>{this.delayEnterLeave(!1,!0,this._mouseEnterDelay)})),this.triggerDisposables.push(this.renderer.listen(H,"mouseleave",()=>{this.delayEnterLeave(!1,!1,this._mouseLeaveDelay)})))}))}else"focus"===G?(this.triggerDisposables.push(this.renderer.listen(Y,"focusin",()=>this.show())),this.triggerDisposables.push(this.renderer.listen(Y,"focusout",()=>this.hide()))):"click"===G&&this.triggerDisposables.push(this.renderer.listen(Y,"click",H=>{H.preventDefault(),this.show()}))}updatePropertiesByChanges(Y){this.updatePropertiesByKeys(Object.keys(Y))}updatePropertiesByKeys(Y){const G={title:["nzTitle",()=>this._title],directiveTitle:["nzTitle",()=>this._title],content:["nzContent",()=>this._content],directiveContent:["nzContent",()=>this._content],trigger:["nzTrigger",()=>this._trigger],placement:["nzPlacement",()=>this._placement],visible:["nzVisible",()=>this._visible],mouseEnterDelay:["nzMouseEnterDelay",()=>this._mouseEnterDelay],mouseLeaveDelay:["nzMouseLeaveDelay",()=>this._mouseLeaveDelay],overlayClassName:["nzOverlayClassName",()=>this._overlayClassName],overlayStyle:["nzOverlayStyle",()=>this._overlayStyle],arrowPointAtCenter:["nzArrowPointAtCenter",()=>this.arrowPointAtCenter],...this.getProxyPropertyMap()};(Y||Object.keys(G).filter(H=>!H.startsWith("directive"))).forEach(H=>{if(G[H]){const[j,te]=G[H];this.updateComponentValue(j,te())}}),this.component?.updateByDirective()}initProperties(){this.updatePropertiesByKeys()}updateComponentValue(Y,G){typeof G<"u"&&(this.component[Y]=G)}delayEnterLeave(Y,G,H=-1){this.delayTimer?this.clearTogglingTimer():H>0?this.delayTimer=setTimeout(()=>{this.delayTimer=void 0,G?this.show():this.hide()},1e3*H):G&&Y?this.show():this.hide()}removeTriggerListeners(){this.triggerDisposables.forEach(Y=>Y()),this.triggerDisposables.length=0}clearTogglingTimer(){this.delayTimer&&(clearTimeout(this.delayTimer),this.delayTimer=void 0)}static#e=this.\u0275fac=function(G){return new(G||K)(n.Y36(n.SBq),n.Y36(n.s_b),n.Y36(n._Vd),n.Y36(n.Qsj),n.Y36(g.P),n.Y36(d.jY))};static#t=this.\u0275dir=n.lG2({type:K,features:[n.TTD]})}return K})(),O=(()=>{class K{set nzVisible(Y){const G=(0,l.sw)(Y);this._visible!==G&&(this._visible=G,this.nzVisibleChange.next(G))}get nzVisible(){return this._visible}set nzTrigger(Y){this._trigger=Y}get nzTrigger(){return this._trigger}set nzPlacement(Y){const G=Y.map(H=>v.yW[H]);this._positions=[...G,...v.Ek]}constructor(Y,G,H){this.cdr=Y,this.directionality=G,this.noAnimation=H,this.nzTitle=null,this.nzContent=null,this.nzArrowPointAtCenter=!1,this.nzOverlayStyle={},this.nzBackdrop=!1,this.nzVisibleChange=new C.x,this._visible=!1,this._trigger="hover",this.preferredPlacement="top",this.dir="ltr",this._classMap={},this._prefix="ant-tooltip",this._positions=[...v.Ek],this.destroy$=new C.x}ngOnInit(){this.directionality.change?.pipe((0,z.R)(this.destroy$)).subscribe(Y=>{this.dir=Y,this.cdr.detectChanges()}),this.dir=this.directionality.value}ngOnDestroy(){this.nzVisibleChange.complete(),this.destroy$.next(),this.destroy$.complete()}show(){this.nzVisible||(this.isEmpty()||(this.nzVisible=!0,this.nzVisibleChange.next(!0),this.cdr.detectChanges()),this.origin&&this.overlay&&this.overlay.overlayRef&&"rtl"===this.overlay.overlayRef.getDirection()&&this.overlay.overlayRef.setDirection("ltr"))}hide(){this.nzVisible&&(this.nzVisible=!1,this.nzVisibleChange.next(!1),this.cdr.detectChanges())}updateByDirective(){this.updateStyles(),this.cdr.detectChanges(),Promise.resolve().then(()=>{this.updatePosition(),this.updateVisibilityByTitle()})}updatePosition(){this.origin&&this.overlay&&this.overlay.overlayRef&&this.overlay.overlayRef.updatePosition()}onPositionChange(Y){this.preferredPlacement=(0,v.d_)(Y),this.updateStyles(),this.cdr.detectChanges()}setOverlayOrigin(Y){this.origin=Y,this.cdr.markForCheck()}onClickOutside(Y){!this.origin.nativeElement.contains(Y.target)&&null!==this.nzTrigger&&this.hide()}updateVisibilityByTitle(){this.isEmpty()&&this.hide()}updateStyles(){this._classMap={[this.nzOverlayClassName]:!0,[`${this._prefix}-placement-${this.preferredPlacement}`]:!0}}static#e=this.\u0275fac=function(G){return new(G||K)(n.Y36(n.sBO),n.Y36(p.Is,8),n.Y36(g.P))};static#t=this.\u0275dir=n.lG2({type:K,viewQuery:function(G,H){if(1&G&&n.Gf(x,5),2&G){let j;n.iGM(j=n.CRH())&&(H.overlay=j.first)}}})}return K})();function A(K){return!(K instanceof n.Rgc||""!==K&&(0,l.DX)(K))}let k=(()=>{class K extends P{constructor(Y,G,H,j,te){super(Y,G,H,j,te),this.titleContext=null,this.trigger="hover",this.placement="top",this.visibleChange=new n.vpe,this.componentRef=this.hostView.createComponent(F)}getProxyPropertyMap(){return{...super.getProxyPropertyMap(),nzTooltipColor:["nzColor",()=>this.nzTooltipColor],nzTooltipTitleContext:["nzTitleContext",()=>this.titleContext]}}static#e=this.\u0275fac=function(G){return new(G||K)(n.Y36(n.SBq),n.Y36(n.s_b),n.Y36(n._Vd),n.Y36(n.Qsj),n.Y36(g.P,9))};static#t=this.\u0275dir=n.lG2({type:K,selectors:[["","nz-tooltip",""]],hostVars:2,hostBindings:function(G,H){2&G&&n.ekj("ant-tooltip-open",H.visible)},inputs:{title:["nzTooltipTitle","title"],titleContext:["nzTooltipTitleContext","titleContext"],directiveTitle:["nz-tooltip","directiveTitle"],trigger:["nzTooltipTrigger","trigger"],placement:["nzTooltipPlacement","placement"],origin:["nzTooltipOrigin","origin"],visible:["nzTooltipVisible","visible"],mouseEnterDelay:["nzTooltipMouseEnterDelay","mouseEnterDelay"],mouseLeaveDelay:["nzTooltipMouseLeaveDelay","mouseLeaveDelay"],overlayClassName:["nzTooltipOverlayClassName","overlayClassName"],overlayStyle:["nzTooltipOverlayStyle","overlayStyle"],arrowPointAtCenter:["nzTooltipArrowPointAtCenter","arrowPointAtCenter"],nzTooltipColor:"nzTooltipColor"},outputs:{visibleChange:"nzTooltipVisibleChange"},exportAs:["nzTooltip"],features:[n.qOj]})}return(0,e.gn)([(0,l.yF)()],K.prototype,"arrowPointAtCenter",void 0),K})(),F=(()=>{class K extends O{constructor(Y,G,H){super(Y,G,H),this.nzTitle=null,this.nzTitleContext=null,this._contentStyleMap={}}isEmpty(){return A(this.nzTitle)}updateStyles(){const Y=this.nzColor&&(0,i.o2)(this.nzColor);this._classMap={[this.nzOverlayClassName]:!0,[`${this._prefix}-placement-${this.preferredPlacement}`]:!0,[`${this._prefix}-${this.nzColor}`]:Y},this._contentStyleMap={backgroundColor:this.nzColor&&!Y?this.nzColor:null}}static#e=this.\u0275fac=function(G){return new(G||K)(n.Y36(n.sBO),n.Y36(p.Is,8),n.Y36(g.P,9))};static#t=this.\u0275cmp=n.Xpm({type:K,selectors:[["nz-tooltip"]],exportAs:["nzTooltipComponent"],features:[n.qOj],decls:2,vars:5,consts:[["cdkConnectedOverlay","","nzConnectedOverlay","",3,"cdkConnectedOverlayOrigin","cdkConnectedOverlayOpen","cdkConnectedOverlayPositions","cdkConnectedOverlayPush","nzArrowPointAtCenter","overlayOutsideClick","detach","positionChange"],["overlay","cdkConnectedOverlay"],[1,"ant-tooltip",3,"ngClass","ngStyle","nzNoAnimation"],[1,"ant-tooltip-content"],[1,"ant-tooltip-arrow"],[1,"ant-tooltip-arrow-content",3,"ngStyle"],[1,"ant-tooltip-inner",3,"ngStyle"],[4,"nzStringTemplateOutlet","nzStringTemplateOutletContext"]],template:function(G,H){1&G&&(n.YNc(0,_,6,11,"ng-template",0,1,n.W1O),n.NdJ("overlayOutsideClick",function(te){return H.onClickOutside(te)})("detach",function(){return H.hide()})("positionChange",function(te){return H.onPositionChange(te)})),2&G&&n.Q6J("cdkConnectedOverlayOrigin",H.origin)("cdkConnectedOverlayOpen",H._visible)("cdkConnectedOverlayPositions",H._positions)("cdkConnectedOverlayPush",!0)("nzArrowPointAtCenter",H.nzArrowPointAtCenter)},dependencies:[f.mk,f.PC,y.pI,T.f,v.hQ,g.P],encapsulation:2,data:{animation:[t.$C]},changeDetection:0})}return K})(),W=(()=>{class K{static#e=this.\u0275fac=function(G){return new(G||K)};static#t=this.\u0275mod=n.oAB({type:K});static#n=this.\u0275inj=n.cJS({imports:[p.vT,f.ez,y.U8,T.T,v.e4,g.g]})}return K})()},10358:(nt,I,o)=>{"use strict";o.d(I,{BC:()=>mt,st:()=>we});var e=o(65879),n=o(65592),t=o(63019),i=o(92438),l=o(78645),C=o(22096),E=o(27921),u=o(94664),z=o(93997),M=o(42460),h=o(37398),v=o(59773),g=o(62612),d=o(96814),p=o(60804),f=o(60095),y=o(70855),T=o(90551),x=o(97582),D=o(27754),_=o(12131),P=o(49388),O=o(50883),A=o(42840),k=o(41958),F=o(20824);const W=["nz-transfer-search",""];function K(de,U){if(1&de){const B=e.EpF();e.TgZ(0,"span",4),e.NdJ("click",function(){e.CHM(B);const Ie=e.oxw();return e.KtG(Ie._clear())}),e._UZ(1,"span",5),e.qZA()}}const _e=function(de){return{"ant-input-disabled":de}},Y=["headerCheckbox"],G=["checkboxes"];function H(de,U){if(1&de&&(e.ynx(0),e._uU(1),e.BQk()),2&de){const B=e.oxw().$implicit;e.xp6(1),e.Oqu(B.title)}}function j(de,U){}const te=function(de){return{"ant-transfer-list-content-item-disabled":de}},ne=function(de){return{$implicit:de}};function pe(de,U){if(1&de){const B=e.EpF();e.TgZ(0,"li",13),e.NdJ("click",function(){const Ne=e.CHM(B).$implicit,pt=e.oxw(3);return e.KtG(pt.onItemSelect(Ne))}),e.TgZ(1,"label",14,15),e.NdJ("nzCheckedChange",function(){const Ne=e.CHM(B).$implicit,pt=e.oxw(3);return e.KtG(pt.onItemSelect(Ne))}),e.YNc(3,H,2,1,"ng-container",7),e.YNc(4,j,0,0,"ng-template",16,17,e.W1O),e.qZA()()}if(2&de){const B=U.$implicit,Ee=e.MAs(5),Ie=e.oxw(3);e.Q6J("ngClass",e.VKq(7,te,Ie.disabled||B.disabled)),e.xp6(1),e.Q6J("nzChecked",B.checked)("nzDisabled",Ie.disabled||B.disabled),e.xp6(2),e.Q6J("ngIf",!Ie.render)("ngIfElse",Ee),e.xp6(1),e.Q6J("ngTemplateOutlet",Ie.render)("ngTemplateOutletContext",e.VKq(9,ne,B))}}function re(de,U){if(1&de&&(e.TgZ(0,"ul",11),e.YNc(1,pe,6,11,"li",12),e.qZA()),2&de){const B=e.oxw(2);e.xp6(1),e.Q6J("ngForOf",B.validData)("ngForTrackBy",B.trackByHide)}}function be(de,U){if(1&de&&(e.TgZ(0,"div",18),e._UZ(1,"nz-embed-empty",19),e.qZA()),2&de){const B=e.oxw(2);e.xp6(1),e.Q6J("nzComponentName","transfer")("specificContent",B.notFoundContent)}}function le(de,U){if(1&de&&(e.YNc(0,re,2,2,"ul",9),e.YNc(1,be,2,2,"div",10)),2&de){const B=e.oxw();e.Q6J("ngIf",B.stat.shownCount>0),e.xp6(1),e.Q6J("ngIf",0===B.stat.shownCount)}}function ce(de,U){if(1&de){const B=e.EpF();e.TgZ(0,"label",20,21),e.NdJ("nzCheckedChange",function(Ie){e.CHM(B);const Ne=e.oxw();return e.KtG(Ne.onItemSelectAll(Ie))}),e.qZA()}if(2&de){const B=e.oxw();e.Q6J("nzChecked",B.stat.checkAll)("nzIndeterminate",B.stat.checkHalf)("nzDisabled",0===B.stat.shownCount||B.disabled)}}function Q(de,U){if(1&de&&(e.TgZ(0,"span",22),e._uU(1),e.qZA()),2&de){const B=e.oxw();e.xp6(1),e.Oqu(B.titleText)}}function ie(de,U){if(1&de){const B=e.EpF();e.TgZ(0,"div",23)(1,"span",24),e.NdJ("valueChanged",function(Ie){e.CHM(B);const Ne=e.oxw();return e.KtG(Ne.handleFilter(Ie))})("valueClear",function(){e.CHM(B);const Ie=e.oxw();return e.KtG(Ie.handleClear())}),e.qZA()()}if(2&de){const B=e.oxw();e.xp6(1),e.Q6J("placeholder",B.searchPlaceholder)("disabled",B.disabled)("value",B.filter)}}function ae(de,U){1&de&&e.GkF(0)}const xe=function(de,U,B,Ee,Ie,Ne){return{$implicit:de,direction:U,disabled:B,onItemSelectAll:Ee,onItemSelect:Ie,stat:Ne}};function Me(de,U){if(1&de&&(e.ynx(0),e.TgZ(1,"div",25),e.YNc(2,ae,1,0,"ng-container",26),e.qZA(),e.BQk()),2&de){const B=e.oxw();e.xp6(2),e.Q6J("ngTemplateOutlet",B.renderList)("ngTemplateOutletContext",e.HTZ(2,xe,B.validData,B.direction,B.disabled,B.onItemSelectAll,B.onItemSelect,B.stat))}}function Ye(de,U){}function q(de,U){if(1&de&&(e.TgZ(0,"div",27),e.YNc(1,Ye,0,0,"ng-template",16),e.qZA()),2&de){const B=e.oxw();e.xp6(1),e.Q6J("ngTemplateOutlet",B.footer)("ngTemplateOutletContext",e.VKq(2,ne,B.direction))}}const ye=function(de){return{"ant-transfer__nodata":de}};function ee(de,U){if(1&de&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&de){const B=e.oxw(2);e.xp6(1),e.Oqu(B.nzOperations[1])}}function Be(de,U){if(1&de&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&de){const B=e.oxw(2);e.xp6(1),e.Oqu(B.nzOperations[0])}}function Re(de,U){if(1&de){const B=e.EpF();e.TgZ(0,"div",3)(1,"button",4),e.NdJ("click",function(){e.CHM(B);const Ie=e.oxw();return e.KtG(Ie.moveToLeft())}),e._UZ(2,"span",5),e.YNc(3,ee,2,1,"span",6),e.qZA(),e.TgZ(4,"button",4),e.NdJ("click",function(){e.CHM(B);const Ie=e.oxw();return e.KtG(Ie.moveToRight())}),e._UZ(5,"span",7),e.YNc(6,Be,2,1,"span",6),e.qZA()()}if(2&de){const B=e.oxw();e.xp6(1),e.Q6J("disabled",B.nzDisabled||!B.leftActive)("nzType","primary")("nzSize","small"),e.xp6(2),e.Q6J("ngIf",B.nzOperations[1]),e.xp6(1),e.Q6J("disabled",B.nzDisabled||!B.rightActive)("nzType","primary")("nzSize","small"),e.xp6(2),e.Q6J("ngIf",B.nzOperations[0])}}function ct(de,U){if(1&de&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&de){const B=e.oxw(2);e.xp6(1),e.Oqu(B.nzOperations[0])}}function Ae(de,U){if(1&de&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&de){const B=e.oxw(2);e.xp6(1),e.Oqu(B.nzOperations[1])}}function Mt(de,U){if(1&de){const B=e.EpF();e.TgZ(0,"div",3)(1,"button",4),e.NdJ("click",function(){e.CHM(B);const Ie=e.oxw();return e.KtG(Ie.moveToRight())}),e._UZ(2,"span",5),e.YNc(3,ct,2,1,"span",6),e.qZA(),e.TgZ(4,"button",4),e.NdJ("click",function(){e.CHM(B);const Ie=e.oxw();return e.KtG(Ie.moveToLeft())}),e._UZ(5,"span",7),e.YNc(6,Ae,2,1,"span",6),e.qZA()()}if(2&de){const B=e.oxw();e.xp6(1),e.Q6J("disabled",B.nzDisabled||!B.rightActive)("nzType","primary")("nzSize","small"),e.xp6(2),e.Q6J("ngIf",B.nzOperations[0]),e.xp6(1),e.Q6J("disabled",B.nzDisabled||!B.leftActive)("nzType","primary")("nzSize","small"),e.xp6(2),e.Q6J("ngIf",B.nzOperations[1])}}let je=(()=>{class de{constructor(B){this.cdr=B,this.disabled=!1,this.valueChanged=new e.vpe,this.valueClear=new e.vpe}_handle(){this.valueChanged.emit(this.value)}_clear(){this.disabled||(this.value="",this.valueClear.emit())}ngOnChanges(){this.cdr.detectChanges()}static#e=this.\u0275fac=function(Ee){return new(Ee||de)(e.Y36(e.sBO))};static#t=this.\u0275cmp=e.Xpm({type:de,selectors:[["","nz-transfer-search",""]],inputs:{placeholder:"placeholder",value:"value",disabled:"disabled"},outputs:{valueChanged:"valueChanged",valueClear:"valueClear"},exportAs:["nzTransferSearch"],features:[e.TTD],attrs:W,decls:4,vars:7,consts:[[1,"ant-input-prefix"],["nz-icon","","nzType","search"],[1,"ant-input",3,"ngModel","disabled","placeholder","ngClass","ngModelChange"],["class","ant-input-suffix",3,"click",4,"ngIf"],[1,"ant-input-suffix",3,"click"],["nz-icon","","nzType","close-circle",1,"ant-input-clear-icon"]],template:function(Ee,Ie){1&Ee&&(e.TgZ(0,"span",0),e._UZ(1,"span",1),e.qZA(),e.TgZ(2,"input",2),e.NdJ("ngModelChange",function(pt){return Ie.value=pt})("ngModelChange",function(){return Ie._handle()}),e.qZA(),e.YNc(3,K,2,0,"span",3)),2&Ee&&(e.xp6(2),e.Q6J("ngModel",Ie.value)("disabled",Ie.disabled)("placeholder",Ie.placeholder)("ngClass",e.VKq(5,_e,Ie.disabled)),e.xp6(1),e.Q6J("ngIf",Ie.value&&Ie.value.length>0))},dependencies:[d.mk,d.O5,f.Fj,f.JJ,f.On,y.w,T.Ls],encapsulation:2,changeDetection:0})}return de})(),ot=(()=>{class de{get validData(){return this.dataSource.filter(B=>!B.hide)}trackByHide(B,Ee){return Ee.hide}updateCheckStatus(){const B=this.dataSource.filter(Ee=>!Ee.disabled).length;this.stat.checkCount=this.dataSource.filter(Ee=>Ee.checked&&!Ee.disabled).length,this.stat.shownCount=this.validData.length,this.stat.checkAll=B>0&&B===this.stat.checkCount,this.stat.checkHalf=this.stat.checkCount>0&&!this.stat.checkAll,this.headerCheckbox&&(this.headerCheckbox.nzChecked=this.stat.checkAll)}handleFilter(B){this.filter=B,this.dataSource.forEach(Ee=>{Ee.hide=B.length>0&&!this.matchFilter(B,Ee)}),this.stat.shownCount=this.validData.length,this.filterChange.emit({direction:this.direction,value:B})}handleClear(){this.handleFilter("")}matchFilter(B,Ee){return this.filterOption?this.filterOption(B,Ee):Ee.title.includes(B)}constructor(B,Ee){this.ngZone=B,this.cdr=Ee,this.direction="left",this.titleText="",this.showSelectAll=!0,this.dataSource=[],this.itemUnit="",this.itemsUnit="",this.filter="",this.disabled=!1,this.renderList=null,this.render=null,this.footer=null,this.handleSelectAll=new e.vpe,this.handleSelect=new e.vpe,this.filterChange=new e.vpe,this.stat={checkAll:!1,checkHalf:!1,checkCount:0,shownCount:0},this.onItemSelect=Ie=>{this.disabled||Ie.disabled||(Ie.checked=!Ie.checked,this.updateCheckStatus(),this.handleSelect.emit(Ie))},this.onItemSelectAll=Ie=>{this.dataSource.forEach(Ne=>{!Ne.disabled&&!Ne.hide&&(Ne.checked=Ie)}),this.updateCheckStatus(),this.handleSelectAll.emit(Ie)}}markForCheck(){this.updateCheckStatus(),this.cdr.markForCheck()}ngAfterViewInit(){this.checkboxes.changes.pipe((0,E.O)(this.checkboxes),(0,u.w)(()=>{const B=this.checkboxes.toArray();return new n.y(Ee=>this.ngZone.runOutsideAngular(()=>(0,t.T)(...B.map(Ie=>(0,i.R)(Ie.nativeElement,"click"))).subscribe(Ee)))})).subscribe(B=>{B.stopPropagation()})}static#e=this.\u0275fac=function(Ee){return new(Ee||de)(e.Y36(e.R0b),e.Y36(e.sBO))};static#t=this.\u0275cmp=e.Xpm({type:de,selectors:[["nz-transfer-list"]],viewQuery:function(Ee,Ie){if(1&Ee&&(e.Gf(Y,5,g.Ie),e.Gf(G,5,e.SBq)),2&Ee){let Ne;e.iGM(Ne=e.CRH())&&(Ie.headerCheckbox=Ne.first),e.iGM(Ne=e.CRH())&&(Ie.checkboxes=Ne)}},hostAttrs:[1,"ant-transfer-list"],hostVars:2,hostBindings:function(Ee,Ie){2&Ee&&e.ekj("ant-transfer-list-with-footer",!!Ie.footer)},inputs:{direction:"direction",titleText:"titleText",showSelectAll:"showSelectAll",dataSource:"dataSource",itemUnit:"itemUnit",itemsUnit:"itemsUnit",filter:"filter",disabled:"disabled",showSearch:"showSearch",searchPlaceholder:"searchPlaceholder",notFoundContent:"notFoundContent",filterOption:"filterOption",renderList:"renderList",render:"render",footer:"footer"},outputs:{handleSelectAll:"handleSelectAll",handleSelect:"handleSelect",filterChange:"filterChange"},exportAs:["nzTransferList"],decls:12,vars:14,consts:[["defaultRenderList",""],[1,"ant-transfer-list-header"],["class","ant-transfer-list-checkbox","nz-checkbox","",3,"nzChecked","nzIndeterminate","nzDisabled","nzCheckedChange",4,"ngIf"],[1,"ant-transfer-list-header-selected"],["class","ant-transfer-list-header-title",4,"ngIf"],[3,"ngClass"],["class","ant-transfer-list-body-search-wrapper",4,"ngIf"],[4,"ngIf","ngIfElse"],["class","ant-transfer-list-footer",4,"ngIf"],["class","ant-transfer-list-content",4,"ngIf"],["class","ant-transfer-list-body-not-found",4,"ngIf"],[1,"ant-transfer-list-content"],["class","ant-transfer-list-content-item",3,"ngClass","click",4,"ngFor","ngForOf","ngForTrackBy"],[1,"ant-transfer-list-content-item",3,"ngClass","click"],["nz-checkbox","",3,"nzChecked","nzDisabled","nzCheckedChange"],["checkboxes",""],[3,"ngTemplateOutlet","ngTemplateOutletContext"],["renderContainer",""],[1,"ant-transfer-list-body-not-found"],[3,"nzComponentName","specificContent"],["nz-checkbox","",1,"ant-transfer-list-checkbox",3,"nzChecked","nzIndeterminate","nzDisabled","nzCheckedChange"],["headerCheckbox",""],[1,"ant-transfer-list-header-title"],[1,"ant-transfer-list-body-search-wrapper"],["nz-transfer-search","",1,"ant-input-affix-wrapper","ant-transfer-list-search",3,"placeholder","disabled","value","valueChanged","valueClear"],[1,"ant-transfer-list-body-customize-wrapper"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"ant-transfer-list-footer"]],template:function(Ee,Ie){if(1&Ee&&(e.YNc(0,le,2,2,"ng-template",null,0,e.W1O),e.TgZ(2,"div",1),e.YNc(3,ce,2,3,"label",2),e.TgZ(4,"span",3)(5,"span"),e._uU(6),e.qZA()(),e.YNc(7,Q,2,1,"span",4),e.qZA(),e.TgZ(8,"div",5),e.YNc(9,ie,2,3,"div",6),e.YNc(10,Me,3,9,"ng-container",7),e.qZA(),e.YNc(11,q,2,4,"div",8)),2&Ee){const Ne=e.MAs(1);e.xp6(3),e.Q6J("ngIf",Ie.showSelectAll),e.xp6(3),e.AsE(" ",(Ie.stat.checkCount>0?Ie.stat.checkCount+"/":"")+Ie.stat.shownCount," ",Ie.validData.length>1?Ie.itemsUnit:Ie.itemUnit," "),e.xp6(1),e.Q6J("ngIf",Ie.titleText),e.xp6(1),e.Tol(Ie.showSearch?"ant-transfer-list-body ant-transfer-list-body-with-search":"ant-transfer-list-body"),e.Q6J("ngClass",e.VKq(12,ye,0===Ie.stat.shownCount)),e.xp6(1),e.Q6J("ngIf",Ie.showSearch),e.xp6(1),e.Q6J("ngIf",Ie.renderList)("ngIfElse",Ne),e.xp6(1),e.Q6J("ngIf",Ie.footer)}},dependencies:[d.mk,d.sg,d.O5,d.tP,g.Ie,p.gB,je],encapsulation:2,changeDetection:0})}return de})(),mt=(()=>{class de{splitDataSource(){this.leftDataSource=[],this.rightDataSource=[],this.nzDataSource.forEach(B=>{"right"===B.direction?(B.direction="right",this.rightDataSource.push(B)):(B.direction="left",this.leftDataSource.push(B))})}getCheckedData(B){return this["left"===B?"leftDataSource":"rightDataSource"].filter(Ee=>Ee.checked)}handleSelect(B,Ee,Ie){const Ne=this.getCheckedData(B);this.updateOperationStatus(B,Ne.length),this.nzSelectChange.emit({direction:B,checked:Ee,list:Ne,item:Ie})}handleFilterChange(B){this.nzSearchChange.emit(B)}updateOperationStatus(B,Ee){this["right"===B?"leftActive":"rightActive"]=(typeof Ee>"u"?this.getCheckedData(B).filter(Ie=>!Ie.disabled).length:Ee)>0}moveTo(B){this.updateOperationStatus("left"===B?"right":"left",0);const Ne=("left"===B?this.rightDataSource:this.leftDataSource).filter(pt=>!0===pt.checked&&!pt.disabled);this.nzCanMove({direction:B,list:Ne}).subscribe(pt=>this.truthMoveTo(B,pt.filter(Dt=>!!Dt)),()=>Ne.forEach(pt=>pt.checked=!1))}truthMoveTo(B,Ee){const Ie="left"===B?"right":"left",Ne="left"===B?this.rightDataSource:this.leftDataSource,pt="left"===B?this.leftDataSource:this.rightDataSource;for(const Dt of Ee)Dt.checked=!1,Dt.hide=!1,Dt.direction=B,Ne.splice(Ne.indexOf(Dt),1);pt.splice(0,0,...Ee),this.updateOperationStatus(Ie),this.nzChange.emit({from:Ie,to:B,list:Ee}),this.markForCheckAllList()}constructor(B,Ee,Ie,Ne,pt,Dt,Lt){this.cdr=B,this.i18n=Ee,this.elementRef=Ie,this.renderer=Ne,this.directionality=pt,this.nzFormStatusService=Dt,this.nzFormNoStatusService=Lt,this.unsubscribe$=new l.x,this.leftFilter="",this.rightFilter="",this.dir="ltr",this.prefixCls="ant-transfer",this.statusCls={},this.hasFeedback=!1,this.nzDisabled=!1,this.nzDataSource=[],this.nzTitles=["",""],this.nzOperations=[],this.nzListStyle={},this.nzShowSelectAll=!0,this.nzCanMove=Ut=>(0,C.of)(Ut.list),this.nzRenderList=null,this.nzRender=null,this.nzFooter=null,this.nzShowSearch=!1,this.nzTargetKeys=[],this.nzSelectedKeys=[],this.nzStatus="",this.nzChange=new e.vpe,this.nzSearchChange=new e.vpe,this.nzSelectChange=new e.vpe,this.leftDataSource=[],this.rightDataSource=[],this.handleLeftSelectAll=Ut=>this.handleSelect("left",Ut),this.handleRightSelectAll=Ut=>this.handleSelect("right",Ut),this.handleLeftSelect=Ut=>this.handleSelect("left",!!Ut.checked,Ut),this.handleRightSelect=Ut=>this.handleSelect("right",!!Ut.checked,Ut),this.leftActive=!1,this.rightActive=!1,this.moveToLeft=()=>this.moveTo("left"),this.moveToRight=()=>this.moveTo("right")}markForCheckAllList(){this.lists&&this.lists.forEach(B=>B.markForCheck())}handleNzTargetKeys(){const B=(0,D.qo)(this.nzTargetKeys);this.leftDataSource.forEach(Ie=>{(Ie=>Ie.hasOwnProperty("key"))(Ie)&&-1!==B.indexOf(Ie.key)&&!Ie.disabled&&(Ie.checked=!0)}),this.moveToRight()}handleNzSelectedKeys(){const B=(0,D.qo)(this.nzSelectedKeys);this.nzDataSource.forEach(Ie=>{-1!==B.indexOf(Ie.key)&&(Ie.checked=!0)});const Ee=Ie=>!1===Ie.disabled&&!0===Ie.checked;this.rightActive=this.leftDataSource.some(Ee),this.leftActive=this.rightDataSource.some(Ee)}ngOnInit(){this.nzFormStatusService?.formStatusChanges.pipe((0,z.x)((B,Ee)=>B.status===Ee.status&&B.hasFeedback===Ee.hasFeedback),(0,M.M)(this.nzFormNoStatusService?this.nzFormNoStatusService.noFormStatus:(0,C.of)(!1)),(0,h.U)(([{status:B,hasFeedback:Ee},Ie])=>({status:Ie?"":B,hasFeedback:Ee})),(0,v.R)(this.unsubscribe$)).subscribe(({status:B,hasFeedback:Ee})=>{this.setStatusStyles(B,Ee)}),this.i18n.localeChange.pipe((0,v.R)(this.unsubscribe$)).subscribe(()=>{this.locale=this.i18n.getLocaleData("Transfer"),this.markForCheckAllList()}),this.dir=this.directionality.value,this.directionality.change?.pipe((0,v.R)(this.unsubscribe$)).subscribe(B=>{this.dir=B,this.cdr.detectChanges()})}ngOnChanges(B){const{nzStatus:Ee,nzDataSource:Ie,nzTargetKeys:Ne,nzSelectedKeys:pt}=B;Ie&&(this.splitDataSource(),this.updateOperationStatus("left"),this.updateOperationStatus("right"),this.cdr.detectChanges(),this.markForCheckAllList()),Ne&&this.handleNzTargetKeys(),pt&&this.handleNzSelectedKeys(),Ee&&this.setStatusStyles(this.nzStatus,this.hasFeedback)}ngOnDestroy(){this.unsubscribe$.next(),this.unsubscribe$.complete()}setStatusStyles(B,Ee){this.hasFeedback=Ee,this.cdr.markForCheck(),this.statusCls=(0,D.Zu)(this.prefixCls,B,Ee),Object.keys(this.statusCls).forEach(Ie=>{this.statusCls[Ie]?this.renderer.addClass(this.elementRef.nativeElement,Ie):this.renderer.removeClass(this.elementRef.nativeElement,Ie)})}static#e=this.\u0275fac=function(Ee){return new(Ee||de)(e.Y36(e.sBO),e.Y36(_.wi),e.Y36(e.SBq),e.Y36(e.Qsj),e.Y36(P.Is,8),e.Y36(O.kH,8),e.Y36(O.yW,8))};static#t=this.\u0275cmp=e.Xpm({type:de,selectors:[["nz-transfer"]],viewQuery:function(Ee,Ie){if(1&Ee&&e.Gf(ot,5),2&Ee){let Ne;e.iGM(Ne=e.CRH())&&(Ie.lists=Ne)}},hostAttrs:[1,"ant-transfer"],hostVars:6,hostBindings:function(Ee,Ie){2&Ee&&e.ekj("ant-transfer-rtl","rtl"===Ie.dir)("ant-transfer-disabled",Ie.nzDisabled)("ant-transfer-customize-list",Ie.nzRenderList)},inputs:{nzDisabled:"nzDisabled",nzDataSource:"nzDataSource",nzTitles:"nzTitles",nzOperations:"nzOperations",nzListStyle:"nzListStyle",nzShowSelectAll:"nzShowSelectAll",nzItemUnit:"nzItemUnit",nzItemsUnit:"nzItemsUnit",nzCanMove:"nzCanMove",nzRenderList:"nzRenderList",nzRender:"nzRender",nzFooter:"nzFooter",nzShowSearch:"nzShowSearch",nzFilterOption:"nzFilterOption",nzSearchPlaceholder:"nzSearchPlaceholder",nzNotFoundContent:"nzNotFoundContent",nzTargetKeys:"nzTargetKeys",nzSelectedKeys:"nzSelectedKeys",nzStatus:"nzStatus"},outputs:{nzChange:"nzChange",nzSearchChange:"nzSearchChange",nzSelectChange:"nzSelectChange"},exportAs:["nzTransfer"],features:[e.TTD],decls:4,vars:32,consts:[["data-direction","left","direction","left",1,"ant-transfer-list",3,"ngStyle","titleText","showSelectAll","dataSource","filter","filterOption","renderList","render","disabled","showSearch","searchPlaceholder","notFoundContent","itemUnit","itemsUnit","footer","filterChange","handleSelect","handleSelectAll"],["class","ant-transfer-operation",4,"ngIf"],["data-direction","right","direction","right",1,"ant-transfer-list",3,"ngStyle","titleText","showSelectAll","dataSource","filter","filterOption","renderList","render","disabled","showSearch","searchPlaceholder","notFoundContent","itemUnit","itemsUnit","footer","filterChange","handleSelect","handleSelectAll"],[1,"ant-transfer-operation"],["nz-button","","type","button",3,"disabled","nzType","nzSize","click"],["nz-icon","","nzType","left"],[4,"ngIf"],["nz-icon","","nzType","right"]],template:function(Ee,Ie){1&Ee&&(e.TgZ(0,"nz-transfer-list",0),e.NdJ("filterChange",function(pt){return Ie.handleFilterChange(pt)})("handleSelect",function(pt){return Ie.handleLeftSelect(pt)})("handleSelectAll",function(pt){return Ie.handleLeftSelectAll(pt)}),e.qZA(),e.YNc(1,Re,7,8,"div",1),e.YNc(2,Mt,7,8,"div",1),e.TgZ(3,"nz-transfer-list",2),e.NdJ("filterChange",function(pt){return Ie.handleFilterChange(pt)})("handleSelect",function(pt){return Ie.handleRightSelect(pt)})("handleSelectAll",function(pt){return Ie.handleRightSelectAll(pt)}),e.qZA()),2&Ee&&(e.Q6J("ngStyle",Ie.nzListStyle)("titleText",Ie.nzTitles[0])("showSelectAll",Ie.nzShowSelectAll)("dataSource",Ie.leftDataSource)("filter",Ie.leftFilter)("filterOption",Ie.nzFilterOption)("renderList",Ie.nzRenderList&&Ie.nzRenderList[0])("render",Ie.nzRender)("disabled",Ie.nzDisabled)("showSearch",Ie.nzShowSearch)("searchPlaceholder",Ie.nzSearchPlaceholder||(null==Ie.locale?null:Ie.locale.searchPlaceholder))("notFoundContent",Ie.nzNotFoundContent)("itemUnit",Ie.nzItemUnit||(null==Ie.locale?null:Ie.locale.itemUnit))("itemsUnit",Ie.nzItemsUnit||(null==Ie.locale?null:Ie.locale.itemsUnit))("footer",Ie.nzFooter),e.xp6(1),e.Q6J("ngIf","rtl"!==Ie.dir),e.xp6(1),e.Q6J("ngIf","rtl"===Ie.dir),e.xp6(1),e.Q6J("ngStyle",Ie.nzListStyle)("titleText",Ie.nzTitles[1])("showSelectAll",Ie.nzShowSelectAll)("dataSource",Ie.rightDataSource)("filter",Ie.rightFilter)("filterOption",Ie.nzFilterOption)("renderList",Ie.nzRenderList&&Ie.nzRenderList[1])("render",Ie.nzRender)("disabled",Ie.nzDisabled)("showSearch",Ie.nzShowSearch)("searchPlaceholder",Ie.nzSearchPlaceholder||(null==Ie.locale?null:Ie.locale.searchPlaceholder))("notFoundContent",Ie.nzNotFoundContent)("itemUnit",Ie.nzItemUnit||(null==Ie.locale?null:Ie.locale.itemUnit))("itemsUnit",Ie.nzItemsUnit||(null==Ie.locale?null:Ie.locale.itemsUnit))("footer",Ie.nzFooter))},dependencies:[d.O5,d.PC,A.ix,y.w,k.dQ,T.Ls,ot],encapsulation:2,changeDetection:0})}return(0,x.gn)([(0,D.yF)()],de.prototype,"nzDisabled",void 0),(0,x.gn)([(0,D.yF)()],de.prototype,"nzShowSelectAll",void 0),(0,x.gn)([(0,D.yF)()],de.prototype,"nzShowSearch",void 0),de})(),we=(()=>{class de{static#e=this.\u0275fac=function(Ee){return new(Ee||de)};static#t=this.\u0275mod=e.oAB({type:de});static#n=this.\u0275inj=e.cJS({imports:[P.vT,d.ez,f.u5,g.Wr,A.sL,F.o7,_.YI,T.PV,p.Xo]})}return de})()},80729:(nt,I,o)=>{"use strict";o.d(I,{zr:()=>Ge,cq:()=>Ke});var e=o(97582),n=o(36028),t=o(33651),i=o(65879),l=o(60095),C=o(78645),E=o(22096),u=o(63019),z=o(93997),M=o(42460),h=o(37398),v=o(59773),g=o(99397),d=o(32181),p=o(64194),f=o(83064),y=o(85448),T=o(56879),x=o(94197),D=o(27754),_=o(9691),P=o(49388),O=o(4300),A=o(331),k=o(50883),F=o(96814),W=o(205),K=o(84267),_e=o(8324),Y=o(90551),G=o(92438);function H(ve,it){if(1&ve&&i._UZ(0,"span"),2&ve){const b=it.index,N=i.oxw();i.ekj("ant-tree-indent-unit",!N.nzSelectMode)("ant-select-tree-indent-unit",N.nzSelectMode)("ant-select-tree-indent-unit-start",N.nzSelectMode&&N.nzIsStart[b])("ant-tree-indent-unit-start",!N.nzSelectMode&&N.nzIsStart[b])("ant-select-tree-indent-unit-end",N.nzSelectMode&&N.nzIsEnd[b])("ant-tree-indent-unit-end",!N.nzSelectMode&&N.nzIsEnd[b])}}const j=["builtin",""];function te(ve,it){if(1&ve&&(i.ynx(0),i._UZ(1,"span",4),i.BQk()),2&ve){const b=i.oxw(3);i.xp6(1),i.ekj("ant-select-tree-switcher-icon",b.nzSelectMode)("ant-tree-switcher-icon",!b.nzSelectMode)}}const ne=function(ve,it){return{$implicit:ve,origin:it}};function pe(ve,it){if(1&ve&&(i.ynx(0),i.YNc(1,te,2,4,"ng-container",3),i.BQk()),2&ve){const b=i.oxw(2);i.xp6(1),i.Q6J("nzStringTemplateOutlet",b.nzExpandedIcon)("nzStringTemplateOutletContext",i.WLB(2,ne,b.context,b.context.origin))}}function re(ve,it){if(1&ve&&(i.ynx(0),i.YNc(1,pe,2,5,"ng-container",2),i.BQk()),2&ve){const b=i.oxw(),N=i.MAs(3);i.xp6(1),i.Q6J("ngIf",!b.isLoading)("ngIfElse",N)}}function be(ve,it){if(1&ve&&i._UZ(0,"span",7),2&ve){const b=i.oxw(4);i.Q6J("nzType",b.isSwitcherOpen?"minus-square":"plus-square")}}function le(ve,it){1&ve&&i._UZ(0,"span",8)}function ce(ve,it){if(1&ve&&(i.ynx(0),i.YNc(1,be,1,1,"span",5),i.YNc(2,le,1,0,"span",6),i.BQk()),2&ve){const b=i.oxw(3);i.xp6(1),i.Q6J("ngIf",b.isShowLineIcon),i.xp6(1),i.Q6J("ngIf",!b.isShowLineIcon)}}function Q(ve,it){if(1&ve&&(i.ynx(0),i.YNc(1,ce,3,2,"ng-container",3),i.BQk()),2&ve){const b=i.oxw(2);i.xp6(1),i.Q6J("nzStringTemplateOutlet",b.nzExpandedIcon)("nzStringTemplateOutletContext",i.WLB(2,ne,b.context,b.context.origin))}}function ie(ve,it){if(1&ve&&(i.ynx(0),i.YNc(1,Q,2,5,"ng-container",2),i.BQk()),2&ve){const b=i.oxw(),N=i.MAs(3);i.xp6(1),i.Q6J("ngIf",!b.isLoading)("ngIfElse",N)}}function ae(ve,it){1&ve&&i._UZ(0,"span",9),2&ve&&i.Q6J("nzSpin",!0)}function xe(ve,it){}function Me(ve,it){if(1&ve&&i._UZ(0,"span",6),2&ve){const b=i.oxw(3);i.Q6J("nzType",b.icon)}}function Ye(ve,it){if(1&ve&&(i.TgZ(0,"span")(1,"span"),i.YNc(2,Me,1,1,"span",5),i.qZA()()),2&ve){const b=i.oxw(2);i.ekj("ant-tree-icon__open",b.isSwitcherOpen)("ant-tree-icon__close",b.isSwitcherClose)("ant-tree-icon_loading",b.isLoading)("ant-select-tree-iconEle",b.selectMode)("ant-tree-iconEle",!b.selectMode),i.xp6(1),i.ekj("ant-select-tree-iconEle",b.selectMode)("ant-select-tree-icon__customize",b.selectMode)("ant-tree-iconEle",!b.selectMode)("ant-tree-icon__customize",!b.selectMode),i.xp6(1),i.Q6J("ngIf",b.icon)}}function q(ve,it){if(1&ve&&(i.ynx(0),i.YNc(1,Ye,3,19,"span",3),i._UZ(2,"span",4),i.ALo(3,"nzHighlight"),i.BQk()),2&ve){const b=i.oxw();i.xp6(1),i.Q6J("ngIf",b.icon&&b.showIcon),i.xp6(1),i.Q6J("innerHTML",i.gM2(3,2,b.title,b.matchedValue,"i","font-highlight"),i.oJD)}}function ye(ve,it){if(1&ve&&i._UZ(0,"nz-tree-drop-indicator",7),2&ve){const b=i.oxw();i.Q6J("dropPosition",b.dragPosition)("level",b.context.level)}}function ee(ve,it){if(1&ve){const b=i.EpF();i.TgZ(0,"nz-tree-node-switcher",4),i.NdJ("click",function(S){i.CHM(b);const $=i.oxw();return i.KtG($.clickExpand(S))}),i.qZA()}if(2&ve){const b=i.oxw();i.Q6J("nzShowExpand",b.nzShowExpand)("nzShowLine",b.nzShowLine)("nzExpandedIcon",b.nzExpandedIcon)("nzSelectMode",b.nzSelectMode)("context",b.nzTreeNode)("isLeaf",b.isLeaf)("isExpanded",b.isExpanded)("isLoading",b.isLoading)}}function Be(ve,it){if(1&ve){const b=i.EpF();i.TgZ(0,"nz-tree-node-checkbox",5),i.NdJ("click",function(S){i.CHM(b);const $=i.oxw();return i.KtG($.clickCheckBox(S))}),i.qZA()}if(2&ve){const b=i.oxw();i.Q6J("nzSelectMode",b.nzSelectMode)("isChecked",b.isChecked)("isHalfChecked",b.isHalfChecked)("isDisabled",b.isDisabled)("isDisableCheckbox",b.isDisableCheckbox)}}const Re=["nzTreeTemplate"];function ct(ve,it){}const Ae=function(ve){return{$implicit:ve}};function Mt(ve,it){if(1&ve&&(i.ynx(0),i.YNc(1,ct,0,0,"ng-template",10),i.BQk()),2&ve){const b=it.$implicit;i.oxw(2);const N=i.MAs(9);i.xp6(1),i.Q6J("ngTemplateOutlet",N)("ngTemplateOutletContext",i.VKq(2,Ae,b))}}function je(ve,it){if(1&ve&&(i.TgZ(0,"cdk-virtual-scroll-viewport",8),i.YNc(1,Mt,2,4,"ng-container",9),i.qZA()),2&ve){const b=i.oxw();i.Udp("height",b.nzVirtualHeight),i.ekj("ant-select-tree-list-holder-inner",b.nzSelectMode)("ant-tree-list-holder-inner",!b.nzSelectMode),i.Q6J("itemSize",b.nzVirtualItemSize)("minBufferPx",b.nzVirtualMinBufferPx)("maxBufferPx",b.nzVirtualMaxBufferPx),i.xp6(1),i.Q6J("cdkVirtualForOf",b.nzFlattenNodes)("cdkVirtualForTrackBy",b.trackByFlattenNode)}}function ot(ve,it){}function mt(ve,it){if(1&ve&&(i.ynx(0),i.YNc(1,ot,0,0,"ng-template",10),i.BQk()),2&ve){const b=it.$implicit;i.oxw(2);const N=i.MAs(9);i.xp6(1),i.Q6J("ngTemplateOutlet",N)("ngTemplateOutletContext",i.VKq(2,Ae,b))}}function we(ve,it){if(1&ve&&(i.TgZ(0,"div",11),i.YNc(1,mt,2,4,"ng-container",12),i.qZA()),2&ve){const b=i.oxw();i.ekj("ant-select-tree-list-holder-inner",b.nzSelectMode)("ant-tree-list-holder-inner",!b.nzSelectMode),i.Q6J("@.disabled",b.beforeInit||!(null==b.noAnimation||!b.noAnimation.nzNoAnimation))("nzNoAnimation",null==b.noAnimation?null:b.noAnimation.nzNoAnimation)("@treeCollapseMotion",b.nzFlattenNodes.length),i.xp6(1),i.Q6J("ngForOf",b.nzFlattenNodes)("ngForTrackBy",b.trackByFlattenNode)}}function de(ve,it){if(1&ve){const b=i.EpF();i.TgZ(0,"nz-tree-node",13),i.NdJ("nzExpandChange",function(S){i.CHM(b);const $=i.oxw();return i.KtG($.eventTriggerChanged(S))})("nzClick",function(S){i.CHM(b);const $=i.oxw();return i.KtG($.eventTriggerChanged(S))})("nzDblClick",function(S){i.CHM(b);const $=i.oxw();return i.KtG($.eventTriggerChanged(S))})("nzContextMenu",function(S){i.CHM(b);const $=i.oxw();return i.KtG($.eventTriggerChanged(S))})("nzCheckBoxChange",function(S){i.CHM(b);const $=i.oxw();return i.KtG($.eventTriggerChanged(S))})("nzOnDragStart",function(S){i.CHM(b);const $=i.oxw();return i.KtG($.eventTriggerChanged(S))})("nzOnDragEnter",function(S){i.CHM(b);const $=i.oxw();return i.KtG($.eventTriggerChanged(S))})("nzOnDragOver",function(S){i.CHM(b);const $=i.oxw();return i.KtG($.eventTriggerChanged(S))})("nzOnDragLeave",function(S){i.CHM(b);const $=i.oxw();return i.KtG($.eventTriggerChanged(S))})("nzOnDragEnd",function(S){i.CHM(b);const $=i.oxw();return i.KtG($.eventTriggerChanged(S))})("nzOnDrop",function(S){i.CHM(b);const $=i.oxw();return i.KtG($.eventTriggerChanged(S))}),i.qZA()}if(2&ve){const b=it.$implicit,N=i.oxw();i.Q6J("icon",b.icon)("title",b.title)("isLoading",b.isLoading)("isSelected",b.isSelected)("isDisabled",b.isDisabled)("isMatched",b.isMatched)("isExpanded",b.isExpanded)("isLeaf",b.isLeaf)("isStart",b.isStart)("isEnd",b.isEnd)("isChecked",b.isChecked)("isHalfChecked",b.isHalfChecked)("isDisableCheckbox",b.isDisableCheckbox)("isSelectable",b.isSelectable)("canHide",b.canHide)("nzTreeNode",b)("nzSelectMode",N.nzSelectMode)("nzShowLine",N.nzShowLine)("nzExpandedIcon",N.nzExpandedIcon)("nzDraggable",N.nzDraggable)("nzCheckable",N.nzCheckable)("nzShowExpand",N.nzShowExpand)("nzAsyncData",N.nzAsyncData)("nzSearchValue",N.nzSearchValue)("nzHideUnMatched",N.nzHideUnMatched)("nzBeforeDrop",N.nzBeforeDrop)("nzShowIcon",N.nzShowIcon)("nzTreeTemplate",N.nzTreeTemplate||N.nzTreeTemplateChild)}}let U=(()=>{class ve{constructor(b){this.cdr=b,this.level=1,this.direction="ltr",this.style={}}ngOnChanges(b){this.renderIndicator(this.dropPosition,this.direction)}renderIndicator(b,N="ltr"){const $="ltr"===N?"left":"right",he={[$]:"4px",["ltr"===N?"right":"left"]:"0px"};switch(b){case-1:he.top="-3px";break;case 1:he.bottom="-3px";break;case 0:he.bottom="-3px",he[$]="28px";break;default:he.display="none"}this.style=he,this.cdr.markForCheck()}static#e=this.\u0275fac=function(N){return new(N||ve)(i.Y36(i.sBO))};static#t=this.\u0275cmp=i.Xpm({type:ve,selectors:[["nz-tree-drop-indicator"]],hostVars:4,hostBindings:function(N,S){2&N&&(i.Akn(S.style),i.ekj("ant-tree-drop-indicator",!0))},inputs:{dropPosition:"dropPosition",level:"level",direction:"direction"},exportAs:["NzTreeDropIndicator"],features:[i.TTD],decls:0,vars:0,template:function(N,S){},encapsulation:2,changeDetection:0})}return ve})(),B=(()=>{class ve{constructor(){this.nzTreeLevel=0,this.nzIsStart=[],this.nzIsEnd=[],this.nzSelectMode=!1,this.listOfUnit=[]}ngOnChanges(b){const{nzTreeLevel:N}=b;N&&(this.listOfUnit=[...new Array(N.currentValue||0)])}static#e=this.\u0275fac=function(N){return new(N||ve)};static#t=this.\u0275cmp=i.Xpm({type:ve,selectors:[["nz-tree-indent"]],hostVars:5,hostBindings:function(N,S){2&N&&(i.uIk("aria-hidden",!0),i.ekj("ant-tree-indent",!S.nzSelectMode)("ant-select-tree-indent",S.nzSelectMode))},inputs:{nzTreeLevel:"nzTreeLevel",nzIsStart:"nzIsStart",nzIsEnd:"nzIsEnd",nzSelectMode:"nzSelectMode"},exportAs:["nzTreeIndent"],features:[i.TTD],decls:1,vars:1,consts:[[3,"ant-tree-indent-unit","ant-select-tree-indent-unit","ant-select-tree-indent-unit-start","ant-tree-indent-unit-start","ant-select-tree-indent-unit-end","ant-tree-indent-unit-end",4,"ngFor","ngForOf"]],template:function(N,S){1&N&&i.YNc(0,H,1,12,"span",0),2&N&&i.Q6J("ngForOf",S.listOfUnit)},dependencies:[F.sg],encapsulation:2,changeDetection:0})}return ve})(),Ee=(()=>{class ve{constructor(){this.nzSelectMode=!1}static#e=this.\u0275fac=function(N){return new(N||ve)};static#t=this.\u0275cmp=i.Xpm({type:ve,selectors:[["nz-tree-node-checkbox","builtin",""]],hostVars:16,hostBindings:function(N,S){2&N&&i.ekj("ant-select-tree-checkbox",S.nzSelectMode)("ant-select-tree-checkbox-checked",S.nzSelectMode&&S.isChecked)("ant-select-tree-checkbox-indeterminate",S.nzSelectMode&&S.isHalfChecked)("ant-select-tree-checkbox-disabled",S.nzSelectMode&&(S.isDisabled||S.isDisableCheckbox))("ant-tree-checkbox",!S.nzSelectMode)("ant-tree-checkbox-checked",!S.nzSelectMode&&S.isChecked)("ant-tree-checkbox-indeterminate",!S.nzSelectMode&&S.isHalfChecked)("ant-tree-checkbox-disabled",!S.nzSelectMode&&(S.isDisabled||S.isDisableCheckbox))},inputs:{nzSelectMode:"nzSelectMode",isChecked:"isChecked",isHalfChecked:"isHalfChecked",isDisabled:"isDisabled",isDisableCheckbox:"isDisableCheckbox"},attrs:j,decls:1,vars:4,template:function(N,S){1&N&&i._UZ(0,"span"),2&N&&i.ekj("ant-tree-checkbox-inner",!S.nzSelectMode)("ant-select-tree-checkbox-inner",S.nzSelectMode)},encapsulation:2,changeDetection:0})}return ve})(),Ie=(()=>{class ve{constructor(){this.nzSelectMode=!1}get isShowLineIcon(){return!this.isLeaf&&!!this.nzShowLine}get isShowSwitchIcon(){return!this.isLeaf&&!this.nzShowLine}get isSwitcherOpen(){return!!this.isExpanded&&!this.isLeaf}get isSwitcherClose(){return!this.isExpanded&&!this.isLeaf}static#e=this.\u0275fac=function(N){return new(N||ve)};static#t=this.\u0275cmp=i.Xpm({type:ve,selectors:[["nz-tree-node-switcher"]],hostVars:16,hostBindings:function(N,S){2&N&&i.ekj("ant-select-tree-switcher",S.nzSelectMode)("ant-select-tree-switcher-noop",S.nzSelectMode&&S.isLeaf)("ant-select-tree-switcher_open",S.nzSelectMode&&S.isSwitcherOpen)("ant-select-tree-switcher_close",S.nzSelectMode&&S.isSwitcherClose)("ant-tree-switcher",!S.nzSelectMode)("ant-tree-switcher-noop",!S.nzSelectMode&&S.isLeaf)("ant-tree-switcher_open",!S.nzSelectMode&&S.isSwitcherOpen)("ant-tree-switcher_close",!S.nzSelectMode&&S.isSwitcherClose)},inputs:{nzShowExpand:"nzShowExpand",nzShowLine:"nzShowLine",nzExpandedIcon:"nzExpandedIcon",nzSelectMode:"nzSelectMode",context:"context",isLeaf:"isLeaf",isLoading:"isLoading",isExpanded:"isExpanded"},decls:4,vars:2,consts:[[4,"ngIf"],["loadingTemplate",""],[4,"ngIf","ngIfElse"],[4,"nzStringTemplateOutlet","nzStringTemplateOutletContext"],["nz-icon","","nzType","caret-down"],["nz-icon","","class","ant-tree-switcher-line-icon",3,"nzType",4,"ngIf"],["nz-icon","","nzType","file","class","ant-tree-switcher-line-icon",4,"ngIf"],["nz-icon","",1,"ant-tree-switcher-line-icon",3,"nzType"],["nz-icon","","nzType","file",1,"ant-tree-switcher-line-icon"],["nz-icon","","nzType","loading",1,"ant-tree-switcher-loading-icon",3,"nzSpin"]],template:function(N,S){1&N&&(i.YNc(0,re,2,2,"ng-container",0),i.YNc(1,ie,2,2,"ng-container",0),i.YNc(2,ae,1,1,"ng-template",null,1,i.W1O)),2&N&&(i.Q6J("ngIf",S.isShowSwitchIcon),i.xp6(1),i.Q6J("ngIf",S.nzShowLine))},dependencies:[F.O5,_e.f,Y.Ls],encapsulation:2,changeDetection:0})}return ve})(),Ne=(()=>{class ve{get canDraggable(){return!(!this.draggable||this.isDisabled)||null}get matchedValue(){return this.isMatched?this.searchValue:""}get isSwitcherOpen(){return this.isExpanded&&!this.isLeaf}get isSwitcherClose(){return!this.isExpanded&&!this.isLeaf}constructor(b){this.cdr=b,this.treeTemplate=null,this.selectMode=!1,this.showIndicator=!0}ngOnChanges(b){const{showIndicator:N,dragPosition:S}=b;(N||S)&&this.cdr.markForCheck()}static#e=this.\u0275fac=function(N){return new(N||ve)(i.Y36(i.sBO))};static#t=this.\u0275cmp=i.Xpm({type:ve,selectors:[["nz-tree-node-title"]],hostVars:21,hostBindings:function(N,S){2&N&&(i.uIk("title",S.title)("draggable",S.canDraggable)("aria-grabbed",S.canDraggable),i.ekj("draggable",S.canDraggable)("ant-select-tree-node-content-wrapper",S.selectMode)("ant-select-tree-node-content-wrapper-open",S.selectMode&&S.isSwitcherOpen)("ant-select-tree-node-content-wrapper-close",S.selectMode&&S.isSwitcherClose)("ant-select-tree-node-selected",S.selectMode&&S.isSelected)("ant-tree-node-content-wrapper",!S.selectMode)("ant-tree-node-content-wrapper-open",!S.selectMode&&S.isSwitcherOpen)("ant-tree-node-content-wrapper-close",!S.selectMode&&S.isSwitcherClose)("ant-tree-node-selected",!S.selectMode&&S.isSelected))},inputs:{searchValue:"searchValue",treeTemplate:"treeTemplate",draggable:"draggable",showIcon:"showIcon",selectMode:"selectMode",context:"context",icon:"icon",title:"title",isLoading:"isLoading",isSelected:"isSelected",isDisabled:"isDisabled",isMatched:"isMatched",isExpanded:"isExpanded",isLeaf:"isLeaf",showIndicator:"showIndicator",dragPosition:"dragPosition"},features:[i.TTD],decls:3,vars:7,consts:[[3,"ngTemplateOutlet","ngTemplateOutletContext"],[4,"ngIf"],[3,"dropPosition","level",4,"ngIf"],[3,"ant-tree-icon__open","ant-tree-icon__close","ant-tree-icon_loading","ant-select-tree-iconEle","ant-tree-iconEle",4,"ngIf"],[1,"ant-tree-title",3,"innerHTML"],["nz-icon","",3,"nzType",4,"ngIf"],["nz-icon","",3,"nzType"],[3,"dropPosition","level"]],template:function(N,S){1&N&&(i.YNc(0,xe,0,0,"ng-template",0),i.YNc(1,q,4,7,"ng-container",1),i.YNc(2,ye,1,2,"nz-tree-drop-indicator",2)),2&N&&(i.Q6J("ngTemplateOutlet",S.treeTemplate)("ngTemplateOutletContext",i.WLB(4,ne,S.context,S.context.origin)),i.xp6(1),i.Q6J("ngIf",!S.treeTemplate),i.xp6(1),i.Q6J("ngIf",S.showIndicator))},dependencies:[F.O5,F.tP,Y.Ls,U,K.U],encapsulation:2,changeDetection:0})}return ve})(),pt=(()=>{class ve{get displayStyle(){return this.nzSearchValue&&this.nzHideUnMatched&&!this.isMatched&&!this.isExpanded&&this.canHide?"none":""}get isSwitcherOpen(){return this.isExpanded&&!this.isLeaf}get isSwitcherClose(){return!this.isExpanded&&!this.isLeaf}clickExpand(b){b.preventDefault(),!this.isLoading&&!this.isLeaf&&(this.nzAsyncData&&0===this.nzTreeNode.children.length&&!this.isExpanded&&(this.nzTreeNode.isLoading=!0),this.nzTreeNode.setExpanded(!this.isExpanded)),this.nzTreeService.setExpandedNodeList(this.nzTreeNode);const N=this.nzTreeService.formatEvent("expand",this.nzTreeNode,b);this.nzExpandChange.emit(N)}clickSelect(b){b.preventDefault(),this.isSelectable&&!this.isDisabled&&(this.nzTreeNode.isSelected=!this.nzTreeNode.isSelected),this.nzTreeService.setSelectedNodeList(this.nzTreeNode);const N=this.nzTreeService.formatEvent("click",this.nzTreeNode,b);this.nzClick.emit(N)}dblClick(b){b.preventDefault();const N=this.nzTreeService.formatEvent("dblclick",this.nzTreeNode,b);this.nzDblClick.emit(N)}contextMenu(b){b.preventDefault();const N=this.nzTreeService.formatEvent("contextmenu",this.nzTreeNode,b);this.nzContextMenu.emit(N)}clickCheckBox(b){if(b.preventDefault(),this.isDisabled||this.isDisableCheckbox)return;this.nzTreeNode.isChecked=!this.nzTreeNode.isChecked,this.nzTreeNode.isHalfChecked=!1,this.nzTreeService.setCheckedNodeList(this.nzTreeNode);const N=this.nzTreeService.formatEvent("check",this.nzTreeNode,b);this.nzCheckBoxChange.emit(N)}clearDragClass(){["drag-over-gap-top","drag-over-gap-bottom","drag-over","drop-target"].forEach(N=>{this.renderer.removeClass(this.elementRef.nativeElement,N)})}handleDragStart(b){try{b.dataTransfer.setData("text/plain",this.nzTreeNode.key)}catch{}this.nzTreeService.setSelectedNode(this.nzTreeNode),this.draggingKey=this.nzTreeNode.key;const N=this.nzTreeService.formatEvent("dragstart",this.nzTreeNode,b);this.nzOnDragStart.emit(N)}handleDragEnter(b){b.preventDefault(),this.showIndicator=this.nzTreeNode.key!==this.nzTreeService.getSelectedNode()?.key,this.renderIndicator(2),this.ngZone.run(()=>{const N=this.nzTreeService.formatEvent("dragenter",this.nzTreeNode,b);this.nzOnDragEnter.emit(N)})}handleDragOver(b){b.preventDefault();const N=this.nzTreeService.calcDropPosition(b);this.dragPos!==N&&(this.clearDragClass(),this.renderIndicator(N),0===this.dragPos&&this.isLeaf||(this.renderer.addClass(this.elementRef.nativeElement,this.dragPosClass[this.dragPos]),this.renderer.addClass(this.elementRef.nativeElement,"drop-target")));const S=this.nzTreeService.formatEvent("dragover",this.nzTreeNode,b);this.nzOnDragOver.emit(S)}handleDragLeave(b){b.preventDefault(),this.renderIndicator(2),this.clearDragClass();const N=this.nzTreeService.formatEvent("dragleave",this.nzTreeNode,b);this.nzOnDragLeave.emit(N)}handleDragDrop(b){b.preventDefault(),b.stopPropagation(),this.ngZone.run(()=>{this.showIndicator=!1,this.clearDragClass();const N=this.nzTreeService.getSelectedNode();if(!N||N&&N.key===this.nzTreeNode.key||0===this.dragPos&&this.isLeaf)return;const S=this.nzTreeService.formatEvent("drop",this.nzTreeNode,b),$=this.nzTreeService.formatEvent("dragend",this.nzTreeNode,b);this.nzBeforeDrop?this.nzBeforeDrop({dragNode:this.nzTreeService.getSelectedNode(),node:this.nzTreeNode,pos:this.dragPos}).subscribe(R=>{R&&this.nzTreeService.dropAndApply(this.nzTreeNode,this.dragPos),this.nzOnDrop.emit(S),this.nzOnDragEnd.emit($)}):this.nzTreeNode&&(this.nzTreeService.dropAndApply(this.nzTreeNode,this.dragPos),this.nzOnDrop.emit(S))})}handleDragEnd(b){b.preventDefault(),this.ngZone.run(()=>{if(this.nzBeforeDrop)this.draggingKey=null,this.markForCheck();else{this.draggingKey=null;const N=this.nzTreeService.formatEvent("dragend",this.nzTreeNode,b);this.nzOnDragEnd.emit(N)}})}handDragEvent(){this.ngZone.runOutsideAngular(()=>{if(this.nzDraggable){const b=this.elementRef.nativeElement;this.destroy$=new C.x,(0,G.R)(b,"dragstart").pipe((0,v.R)(this.destroy$)).subscribe(N=>this.handleDragStart(N)),(0,G.R)(b,"dragenter").pipe((0,v.R)(this.destroy$)).subscribe(N=>this.handleDragEnter(N)),(0,G.R)(b,"dragover").pipe((0,v.R)(this.destroy$)).subscribe(N=>this.handleDragOver(N)),(0,G.R)(b,"dragleave").pipe((0,v.R)(this.destroy$)).subscribe(N=>this.handleDragLeave(N)),(0,G.R)(b,"drop").pipe((0,v.R)(this.destroy$)).subscribe(N=>this.handleDragDrop(N)),(0,G.R)(b,"dragend").pipe((0,v.R)(this.destroy$)).subscribe(N=>this.handleDragEnd(N))}else this.destroy$.next(!0),this.destroy$.complete()})}markForCheck(){this.cdr.markForCheck()}constructor(b,N,S,$,R,he){this.nzTreeService=b,this.ngZone=N,this.renderer=S,this.elementRef=$,this.cdr=R,this.noAnimation=he,this.icon="",this.title="",this.isLoading=!1,this.isSelected=!1,this.isDisabled=!1,this.isMatched=!1,this.isStart=[],this.isEnd=[],this.nzHideUnMatched=!1,this.nzNoAnimation=!1,this.nzSelectMode=!1,this.nzShowIcon=!1,this.nzTreeTemplate=null,this.nzSearchValue="",this.nzDraggable=!1,this.nzClick=new i.vpe,this.nzDblClick=new i.vpe,this.nzContextMenu=new i.vpe,this.nzCheckBoxChange=new i.vpe,this.nzExpandChange=new i.vpe,this.nzOnDragStart=new i.vpe,this.nzOnDragEnter=new i.vpe,this.nzOnDragOver=new i.vpe,this.nzOnDragLeave=new i.vpe,this.nzOnDrop=new i.vpe,this.nzOnDragEnd=new i.vpe,this.destroy$=new C.x,this.dragPos=2,this.dragPosClass={0:"drag-over",1:"drag-over-gap-bottom","-1":"drag-over-gap-top"},this.draggingKey=null,this.showIndicator=!1}ngOnInit(){this.nzTreeNode.component=this,this.ngZone.runOutsideAngular(()=>{(0,G.R)(this.elementRef.nativeElement,"mousedown").pipe((0,v.R)(this.destroy$)).subscribe(b=>{this.nzSelectMode&&b.preventDefault()})})}ngOnChanges(b){const{nzDraggable:N}=b;N&&this.handDragEvent()}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}renderIndicator(b){this.ngZone.run(()=>{this.showIndicator=2!==b,!(this.nzTreeNode.key===this.nzTreeService.getSelectedNode()?.key||0===b&&this.isLeaf)&&(this.dragPos=b,this.cdr.markForCheck())})}static#e=this.\u0275fac=function(N){return new(N||ve)(i.Y36(x.kW),i.Y36(i.R0b),i.Y36(i.Qsj),i.Y36(i.SBq),i.Y36(i.sBO),i.Y36(A.P,9))};static#t=this.\u0275cmp=i.Xpm({type:ve,selectors:[["nz-tree-node","builtin",""]],hostVars:36,hostBindings:function(N,S){2&N&&(i.Udp("display",S.displayStyle),i.ekj("ant-select-tree-treenode",S.nzSelectMode)("ant-select-tree-treenode-disabled",S.nzSelectMode&&S.isDisabled)("ant-select-tree-treenode-switcher-open",S.nzSelectMode&&S.isSwitcherOpen)("ant-select-tree-treenode-switcher-close",S.nzSelectMode&&S.isSwitcherClose)("ant-select-tree-treenode-checkbox-checked",S.nzSelectMode&&S.isChecked)("ant-select-tree-treenode-checkbox-indeterminate",S.nzSelectMode&&S.isHalfChecked)("ant-select-tree-treenode-selected",S.nzSelectMode&&S.isSelected)("ant-select-tree-treenode-loading",S.nzSelectMode&&S.isLoading)("ant-tree-treenode",!S.nzSelectMode)("ant-tree-treenode-disabled",!S.nzSelectMode&&S.isDisabled)("ant-tree-treenode-switcher-open",!S.nzSelectMode&&S.isSwitcherOpen)("ant-tree-treenode-switcher-close",!S.nzSelectMode&&S.isSwitcherClose)("ant-tree-treenode-checkbox-checked",!S.nzSelectMode&&S.isChecked)("ant-tree-treenode-checkbox-indeterminate",!S.nzSelectMode&&S.isHalfChecked)("ant-tree-treenode-selected",!S.nzSelectMode&&S.isSelected)("ant-tree-treenode-loading",!S.nzSelectMode&&S.isLoading)("dragging",S.draggingKey===S.nzTreeNode.key))},inputs:{icon:"icon",title:"title",isLoading:"isLoading",isSelected:"isSelected",isDisabled:"isDisabled",isMatched:"isMatched",isExpanded:"isExpanded",isLeaf:"isLeaf",isChecked:"isChecked",isHalfChecked:"isHalfChecked",isDisableCheckbox:"isDisableCheckbox",isSelectable:"isSelectable",canHide:"canHide",isStart:"isStart",isEnd:"isEnd",nzTreeNode:"nzTreeNode",nzShowLine:"nzShowLine",nzShowExpand:"nzShowExpand",nzCheckable:"nzCheckable",nzAsyncData:"nzAsyncData",nzHideUnMatched:"nzHideUnMatched",nzNoAnimation:"nzNoAnimation",nzSelectMode:"nzSelectMode",nzShowIcon:"nzShowIcon",nzExpandedIcon:"nzExpandedIcon",nzTreeTemplate:"nzTreeTemplate",nzBeforeDrop:"nzBeforeDrop",nzSearchValue:"nzSearchValue",nzDraggable:"nzDraggable"},outputs:{nzClick:"nzClick",nzDblClick:"nzDblClick",nzContextMenu:"nzContextMenu",nzCheckBoxChange:"nzCheckBoxChange",nzExpandChange:"nzExpandChange",nzOnDragStart:"nzOnDragStart",nzOnDragEnter:"nzOnDragEnter",nzOnDragOver:"nzOnDragOver",nzOnDragLeave:"nzOnDragLeave",nzOnDrop:"nzOnDrop",nzOnDragEnd:"nzOnDragEnd"},exportAs:["nzTreeBuiltinNode"],features:[i.TTD],attrs:j,decls:4,vars:22,consts:[[3,"nzTreeLevel","nzSelectMode","nzIsStart","nzIsEnd"],[3,"nzShowExpand","nzShowLine","nzExpandedIcon","nzSelectMode","context","isLeaf","isExpanded","isLoading","click",4,"ngIf"],["builtin","",3,"nzSelectMode","isChecked","isHalfChecked","isDisabled","isDisableCheckbox","click",4,"ngIf"],[3,"icon","title","isLoading","isSelected","isDisabled","isMatched","isExpanded","isLeaf","searchValue","treeTemplate","draggable","showIcon","selectMode","context","showIndicator","dragPosition","dblclick","click","contextmenu"],[3,"nzShowExpand","nzShowLine","nzExpandedIcon","nzSelectMode","context","isLeaf","isExpanded","isLoading","click"],["builtin","",3,"nzSelectMode","isChecked","isHalfChecked","isDisabled","isDisableCheckbox","click"]],template:function(N,S){1&N&&(i._UZ(0,"nz-tree-indent",0),i.YNc(1,ee,1,8,"nz-tree-node-switcher",1),i.YNc(2,Be,1,5,"nz-tree-node-checkbox",2),i.TgZ(3,"nz-tree-node-title",3),i.NdJ("dblclick",function(R){return S.dblClick(R)})("click",function(R){return S.clickSelect(R)})("contextmenu",function(R){return S.contextMenu(R)}),i.qZA()),2&N&&(i.Q6J("nzTreeLevel",S.nzTreeNode.level)("nzSelectMode",S.nzSelectMode)("nzIsStart",S.isStart)("nzIsEnd",S.isEnd),i.xp6(1),i.Q6J("ngIf",S.nzShowExpand),i.xp6(1),i.Q6J("ngIf",S.nzCheckable),i.xp6(1),i.Q6J("icon",S.icon)("title",S.title)("isLoading",S.isLoading)("isSelected",S.isSelected)("isDisabled",S.isDisabled)("isMatched",S.isMatched)("isExpanded",S.isExpanded)("isLeaf",S.isLeaf)("searchValue",S.nzSearchValue)("treeTemplate",S.nzTreeTemplate)("draggable",S.nzDraggable)("showIcon",S.nzShowIcon)("selectMode",S.nzSelectMode)("context",S.nzTreeNode)("showIndicator",S.showIndicator)("dragPosition",S.dragPos))},dependencies:[F.O5,B,Ie,Ee,Ne],encapsulation:2,changeDetection:0})}return(0,e.gn)([(0,D.yF)()],ve.prototype,"nzShowLine",void 0),(0,e.gn)([(0,D.yF)()],ve.prototype,"nzShowExpand",void 0),(0,e.gn)([(0,D.yF)()],ve.prototype,"nzCheckable",void 0),(0,e.gn)([(0,D.yF)()],ve.prototype,"nzAsyncData",void 0),(0,e.gn)([(0,D.yF)()],ve.prototype,"nzHideUnMatched",void 0),(0,e.gn)([(0,D.yF)()],ve.prototype,"nzNoAnimation",void 0),(0,e.gn)([(0,D.yF)()],ve.prototype,"nzSelectMode",void 0),(0,e.gn)([(0,D.yF)()],ve.prototype,"nzShowIcon",void 0),ve})(),Dt=(()=>{class ve extends x.kW{constructor(){super()}static#e=this.\u0275fac=function(N){return new(N||ve)};static#t=this.\u0275prov=i.Yz7({token:ve,factory:ve.\u0275fac})}return ve})();function Lt(ve,it){return ve||it}let qt=(()=>{class ve extends x.fP{writeValue(b){this.handleNzData(b)}registerOnChange(b){this.onChange=b}registerOnTouched(b){this.onTouched=b}renderTreeProperties(b){let N=!1,S=!1;const{nzData:$,nzExpandedKeys:R,nzSelectedKeys:he,nzCheckedKeys:ze,nzCheckStrictly:bt,nzExpandAll:Ft,nzMultiple:sn,nzSearchValue:pn}=b;Ft&&(N=!0,S=this.nzExpandAll),sn&&(this.nzTreeService.isMultiple=this.nzMultiple),bt&&(this.nzTreeService.isCheckStrictly=this.nzCheckStrictly),$&&this.handleNzData(this.nzData),ze&&this.handleCheckedKeys(this.nzCheckedKeys),bt&&this.handleCheckedKeys(null),(R||Ft)&&(N=!0,this.handleExpandedKeys(S||this.nzExpandedKeys)),he&&this.handleSelectedKeys(this.nzSelectedKeys,this.nzMultiple),pn&&(pn.firstChange&&!this.nzSearchValue||(N=!1,this.handleSearchValue(pn.currentValue,this.nzSearchFunc),this.nzSearchValueChange.emit(this.nzTreeService.formatEvent("search",null,null))));const vn=this.getExpandedNodeList().map(Mn=>Mn.key);this.handleFlattenNodes(this.nzTreeService.rootNodes,N?S||this.nzExpandedKeys:vn)}trackByFlattenNode(b,N){return N.key}handleNzData(b){if(Array.isArray(b)){const N=this.coerceTreeNodes(b);this.nzTreeService.initTree(N)}}handleFlattenNodes(b,N=[]){this.nzTreeService.flattenTreeData(b,N)}handleCheckedKeys(b){this.nzTreeService.conductCheck(b,this.nzCheckStrictly)}handleExpandedKeys(b=[]){this.nzTreeService.conductExpandedKeys(b)}handleSelectedKeys(b,N){this.nzTreeService.conductSelectedKeys(b,N)}handleSearchValue(b,N){(0,x.oH)(this.nzTreeService.rootNodes,!0).map(R=>R.data).forEach(R=>{R.isMatched=(R=>N?N(R.origin):!(!b||!R.title.toLowerCase().includes(b.toLowerCase())))(R),R.canHide=!R.isMatched,R.isMatched?this.nzTreeService.expandNodeAllParentBySearch(R):(R.setExpanded(!1),this.nzTreeService.setExpandedNodeList(R)),this.nzTreeService.setMatchedNodeList(R)})}eventTriggerChanged(b){const N=b.node;switch(b.eventName){case"expand":this.renderTree(),this.nzExpandChange.emit(b);break;case"click":this.nzClick.emit(b);break;case"dblclick":this.nzDblClick.emit(b);break;case"contextmenu":this.nzContextMenu.emit(b);break;case"check":this.nzTreeService.setCheckedNodeList(N),this.nzCheckStrictly||this.nzTreeService.conduct(N);const S=this.nzTreeService.formatEvent("check",N,b.event);this.nzCheckBoxChange.emit(S);break;case"dragstart":N.isExpanded&&(N.setExpanded(!N.isExpanded),this.renderTree()),this.nzOnDragStart.emit(b);break;case"dragenter":const $=this.nzTreeService.getSelectedNode();$&&$.key!==N.key&&!N.isExpanded&&!N.isLeaf&&(N.setExpanded(!0),this.renderTree()),this.nzOnDragEnter.emit(b);break;case"dragover":this.nzOnDragOver.emit(b);break;case"dragleave":this.nzOnDragLeave.emit(b);break;case"dragend":this.nzOnDragEnd.emit(b);break;case"drop":this.renderTree(),this.nzOnDrop.emit(b)}}renderTree(){this.handleFlattenNodes(this.nzTreeService.rootNodes,this.getExpandedNodeList().map(b=>b.key)),this.cdr.markForCheck()}constructor(b,N,S,$,R){super(b),this.nzConfigService=N,this.cdr=S,this.directionality=$,this.noAnimation=R,this._nzModuleName="tree",this.nzShowIcon=!1,this.nzHideUnMatched=!1,this.nzBlockNode=!1,this.nzExpandAll=!1,this.nzSelectMode=!1,this.nzCheckStrictly=!1,this.nzShowExpand=!0,this.nzShowLine=!1,this.nzCheckable=!1,this.nzAsyncData=!1,this.nzDraggable=!1,this.nzMultiple=!1,this.nzVirtualItemSize=28,this.nzVirtualMaxBufferPx=500,this.nzVirtualMinBufferPx=28,this.nzVirtualHeight=null,this.nzData=[],this.nzExpandedKeys=[],this.nzSelectedKeys=[],this.nzCheckedKeys=[],this.nzSearchValue="",this.nzFlattenNodes=[],this.beforeInit=!0,this.dir="ltr",this.nzExpandedKeysChange=new i.vpe,this.nzSelectedKeysChange=new i.vpe,this.nzCheckedKeysChange=new i.vpe,this.nzSearchValueChange=new i.vpe,this.nzClick=new i.vpe,this.nzDblClick=new i.vpe,this.nzContextMenu=new i.vpe,this.nzCheckBoxChange=new i.vpe,this.nzExpandChange=new i.vpe,this.nzOnDragStart=new i.vpe,this.nzOnDragEnter=new i.vpe,this.nzOnDragOver=new i.vpe,this.nzOnDragLeave=new i.vpe,this.nzOnDrop=new i.vpe,this.nzOnDragEnd=new i.vpe,this.HIDDEN_STYLE={width:0,height:0,display:"flex",overflow:"hidden",opacity:0,border:0,padding:0,margin:0},this.HIDDEN_NODE_STYLE={position:"absolute",pointerEvents:"none",visibility:"hidden",height:0,overflow:"hidden"},this.destroy$=new C.x,this.onChange=()=>null,this.onTouched=()=>null}ngOnInit(){this.nzTreeService.flattenNodes$.pipe((0,v.R)(this.destroy$)).subscribe(b=>{this.nzFlattenNodes=this.nzVirtualHeight&&this.nzHideUnMatched&&this.nzSearchValue?.length>0?b.filter(N=>!N.canHide):b,this.cdr.markForCheck()}),this.dir=this.directionality.value,this.directionality.change?.pipe((0,v.R)(this.destroy$)).subscribe(b=>{this.dir=b,this.cdr.detectChanges()})}ngOnChanges(b){this.renderTreeProperties(b)}ngAfterViewInit(){this.beforeInit=!1}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static#e=this.\u0275fac=function(N){return new(N||ve)(i.Y36(x.kW),i.Y36(f.jY),i.Y36(i.sBO),i.Y36(P.Is,8),i.Y36(A.P,9))};static#t=this.\u0275cmp=i.Xpm({type:ve,selectors:[["nz-tree"]],contentQueries:function(N,S,$){if(1&N&&i.Suo($,Re,7),2&N){let R;i.iGM(R=i.CRH())&&(S.nzTreeTemplateChild=R.first)}},viewQuery:function(N,S){if(1&N&&i.Gf(W.N7,5,W.N7),2&N){let $;i.iGM($=i.CRH())&&(S.cdkVirtualScrollViewport=$.first)}},hostVars:20,hostBindings:function(N,S){2&N&&i.ekj("ant-select-tree",S.nzSelectMode)("ant-select-tree-show-line",S.nzSelectMode&&S.nzShowLine)("ant-select-tree-icon-hide",S.nzSelectMode&&!S.nzShowIcon)("ant-select-tree-block-node",S.nzSelectMode&&S.nzBlockNode)("ant-tree",!S.nzSelectMode)("ant-tree-rtl","rtl"===S.dir)("ant-tree-show-line",!S.nzSelectMode&&S.nzShowLine)("ant-tree-icon-hide",!S.nzSelectMode&&!S.nzShowIcon)("ant-tree-block-node",!S.nzSelectMode&&S.nzBlockNode)("draggable-tree",S.nzDraggable)},inputs:{nzShowIcon:"nzShowIcon",nzHideUnMatched:"nzHideUnMatched",nzBlockNode:"nzBlockNode",nzExpandAll:"nzExpandAll",nzSelectMode:"nzSelectMode",nzCheckStrictly:"nzCheckStrictly",nzShowExpand:"nzShowExpand",nzShowLine:"nzShowLine",nzCheckable:"nzCheckable",nzAsyncData:"nzAsyncData",nzDraggable:"nzDraggable",nzMultiple:"nzMultiple",nzExpandedIcon:"nzExpandedIcon",nzVirtualItemSize:"nzVirtualItemSize",nzVirtualMaxBufferPx:"nzVirtualMaxBufferPx",nzVirtualMinBufferPx:"nzVirtualMinBufferPx",nzVirtualHeight:"nzVirtualHeight",nzTreeTemplate:"nzTreeTemplate",nzBeforeDrop:"nzBeforeDrop",nzData:"nzData",nzExpandedKeys:"nzExpandedKeys",nzSelectedKeys:"nzSelectedKeys",nzCheckedKeys:"nzCheckedKeys",nzSearchValue:"nzSearchValue",nzSearchFunc:"nzSearchFunc"},outputs:{nzExpandedKeysChange:"nzExpandedKeysChange",nzSelectedKeysChange:"nzSelectedKeysChange",nzCheckedKeysChange:"nzCheckedKeysChange",nzSearchValueChange:"nzSearchValueChange",nzClick:"nzClick",nzDblClick:"nzDblClick",nzContextMenu:"nzContextMenu",nzCheckBoxChange:"nzCheckBoxChange",nzExpandChange:"nzExpandChange",nzOnDragStart:"nzOnDragStart",nzOnDragEnter:"nzOnDragEnter",nzOnDragOver:"nzOnDragOver",nzOnDragLeave:"nzOnDragLeave",nzOnDrop:"nzOnDrop",nzOnDragEnd:"nzOnDragEnd"},exportAs:["nzTree"],features:[i._Bn([Dt,{provide:x.kW,useFactory:Lt,deps:[[new i.tp0,new i.FiY,x.g2],Dt]},{provide:l.JU,useExisting:(0,i.Gpc)(()=>ve),multi:!0}]),i.qOj,i.TTD],decls:10,vars:6,consts:[[3,"ngStyle"],[1,"ant-tree-treenode",3,"ngStyle"],[1,"ant-tree-indent"],[1,"ant-tree-indent-unit"],[1,"ant-tree-list",2,"position","relative"],[3,"ant-select-tree-list-holder-inner","ant-tree-list-holder-inner","itemSize","minBufferPx","maxBufferPx","height",4,"ngIf"],[3,"ant-select-tree-list-holder-inner","ant-tree-list-holder-inner","nzNoAnimation",4,"ngIf"],["nodeTemplate",""],[3,"itemSize","minBufferPx","maxBufferPx"],[4,"cdkVirtualFor","cdkVirtualForOf","cdkVirtualForTrackBy"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"nzNoAnimation"],[4,"ngFor","ngForOf","ngForTrackBy"],["builtin","",3,"icon","title","isLoading","isSelected","isDisabled","isMatched","isExpanded","isLeaf","isStart","isEnd","isChecked","isHalfChecked","isDisableCheckbox","isSelectable","canHide","nzTreeNode","nzSelectMode","nzShowLine","nzExpandedIcon","nzDraggable","nzCheckable","nzShowExpand","nzAsyncData","nzSearchValue","nzHideUnMatched","nzBeforeDrop","nzShowIcon","nzTreeTemplate","nzExpandChange","nzClick","nzDblClick","nzContextMenu","nzCheckBoxChange","nzOnDragStart","nzOnDragEnter","nzOnDragOver","nzOnDragLeave","nzOnDragEnd","nzOnDrop"]],template:function(N,S){1&N&&(i.TgZ(0,"div"),i._UZ(1,"input",0),i.qZA(),i.TgZ(2,"div",1)(3,"div",2),i._UZ(4,"div",3),i.qZA()(),i.TgZ(5,"div",4),i.YNc(6,je,2,11,"cdk-virtual-scroll-viewport",5),i.YNc(7,we,2,9,"div",6),i.qZA(),i.YNc(8,de,1,28,"ng-template",null,7,i.W1O)),2&N&&(i.xp6(1),i.Q6J("ngStyle",S.HIDDEN_STYLE),i.xp6(1),i.Q6J("ngStyle",S.HIDDEN_NODE_STYLE),i.xp6(3),i.ekj("ant-select-tree-list",S.nzSelectMode),i.xp6(1),i.Q6J("ngIf",S.nzVirtualHeight),i.xp6(1),i.Q6J("ngIf",!S.nzVirtualHeight))},dependencies:[F.sg,F.O5,F.tP,F.PC,A.P,W.xd,W.x0,W.N7,pt],encapsulation:2,data:{animation:[p.lx]},changeDetection:0})}return(0,e.gn)([(0,D.yF)(),(0,f.oS)()],ve.prototype,"nzShowIcon",void 0),(0,e.gn)([(0,D.yF)(),(0,f.oS)()],ve.prototype,"nzHideUnMatched",void 0),(0,e.gn)([(0,D.yF)(),(0,f.oS)()],ve.prototype,"nzBlockNode",void 0),(0,e.gn)([(0,D.yF)()],ve.prototype,"nzExpandAll",void 0),(0,e.gn)([(0,D.yF)()],ve.prototype,"nzSelectMode",void 0),(0,e.gn)([(0,D.yF)()],ve.prototype,"nzCheckStrictly",void 0),(0,e.gn)([(0,D.yF)()],ve.prototype,"nzShowExpand",void 0),(0,e.gn)([(0,D.yF)()],ve.prototype,"nzShowLine",void 0),(0,e.gn)([(0,D.yF)()],ve.prototype,"nzCheckable",void 0),(0,e.gn)([(0,D.yF)()],ve.prototype,"nzAsyncData",void 0),(0,e.gn)([(0,D.yF)()],ve.prototype,"nzDraggable",void 0),(0,e.gn)([(0,D.yF)()],ve.prototype,"nzMultiple",void 0),ve})(),en=(()=>{class ve{static#e=this.\u0275fac=function(N){return new(N||ve)};static#t=this.\u0275mod=i.oAB({type:ve});static#n=this.\u0275inj=i.cJS({imports:[P.vT,F.ez,_e.T,Y.PV,A.g,K.C,W.Cl]})}return ve})();var cn=o(60804);const Wt=["nzTreeTemplate"],Vt=["treeRef"];function st(ve,it){if(1&ve&&(i.TgZ(0,"span",12),i._UZ(1,"nz-embed-empty",13),i.qZA()),2&ve){const b=i.oxw(2);i.xp6(1),i.Q6J("nzComponentName","tree-select")("specificContent",b.nzNotFoundContent)}}const He=function(){return[]};function et(ve,it){if(1&ve){const b=i.EpF();i.TgZ(0,"div",8)(1,"nz-tree",9,10),i.NdJ("nzExpandChange",function(S){i.CHM(b);const $=i.oxw();return i.KtG($.onExpandedKeysChange(S))})("nzClick",function(S){i.CHM(b);const $=i.oxw();return i.KtG($.nzTreeClick.emit(S))})("nzCheckedKeysChange",function(){i.CHM(b);const S=i.oxw();return i.KtG(S.updateSelectedNodes())})("nzSelectedKeysChange",function(){i.CHM(b);const S=i.oxw();return i.KtG(S.updateSelectedNodes())})("nzCheckBoxChange",function(S){i.CHM(b);const $=i.oxw();return i.KtG($.nzTreeCheckBoxChange.emit(S))})("nzSearchValueChange",function(S){i.CHM(b);const $=i.oxw();return i.KtG($.setSearchValues(S))}),i.qZA(),i.YNc(3,st,2,2,"span",11),i.qZA()}if(2&ve){const b=i.oxw();i.ekj("ant-select-dropdown-placement-bottomLeft","bottom"===b.dropDownPosition)("ant-select-dropdown-placement-topLeft","top"===b.dropDownPosition)("ant-tree-select-dropdown-rtl","rtl"===b.dir),i.Q6J("@slideMotion","enter")("ngClass",b.dropdownClassName)("@.disabled",!(null==b.noAnimation||!b.noAnimation.nzNoAnimation))("nzNoAnimation",null==b.noAnimation?null:b.noAnimation.nzNoAnimation)("dir",b.dir)("ngStyle",b.nzDropdownStyle),i.xp6(1),i.Q6J("hidden",b.isNotFound)("nzData",b.nzNodes)("nzMultiple",b.nzMultiple)("nzSearchValue",b.inputValue)("nzHideUnMatched",b.nzHideUnMatched)("nzShowIcon",b.nzShowIcon)("nzCheckable",b.nzCheckable)("nzAsyncData",b.nzAsyncData)("nzShowExpand",b.nzShowExpand)("nzShowLine",b.nzShowLine)("nzExpandedIcon",b.nzExpandedIcon)("nzExpandAll",b.nzDefaultExpandAll)("nzExpandedKeys",b.expandedKeys)("nzCheckedKeys",b.nzCheckable?b.value:i.DdM(34,He))("nzSelectedKeys",b.nzCheckable?i.DdM(35,He):b.value)("nzTreeTemplate",b.treeTemplate)("nzCheckStrictly",b.nzCheckStrictly)("nzVirtualItemSize",b.nzVirtualItemSize)("nzVirtualMaxBufferPx",b.nzVirtualMaxBufferPx)("nzVirtualMinBufferPx",b.nzVirtualMinBufferPx)("nzVirtualHeight",b.nzVirtualHeight),i.xp6(2),i.Q6J("ngIf",0===b.nzNodes.length||b.isNotFound)}}function It(ve,it){if(1&ve){const b=i.EpF();i.TgZ(0,"nz-select-item",16),i.NdJ("delete",function(){const $=i.CHM(b).$implicit,R=i.oxw(2);return i.KtG(R.removeSelected($,!0))}),i.qZA()}if(2&ve){const b=it.$implicit,N=i.oxw(2);i.Q6J("deletable",!0)("disabled",b.isDisabled||N.nzDisabled)("label",N.nzDisplayWith(b))}}function Ot(ve,it){if(1&ve&&(i._UZ(0,"nz-select-item",17),i.ALo(1,"slice")),2&ve){const b=i.oxw(2);i.Q6J("contentTemplateOutlet",b.nzMaxTagPlaceholder)("contentTemplateOutletContext",i.xi3(1,5,b.selectedNodes,b.nzMaxTagCount))("deletable",!1)("disabled",!1)("label","+ "+(b.selectedNodes.length-b.nzMaxTagCount)+" ...")}}function xt(ve,it){if(1&ve&&(i.ynx(0),i.YNc(1,It,1,3,"nz-select-item",14),i.ALo(2,"slice"),i.YNc(3,Ot,2,8,"nz-select-item",15),i.BQk()),2&ve){const b=i.oxw();i.xp6(1),i.Q6J("ngForOf",i.Dn7(2,3,b.selectedNodes,0,b.nzMaxTagCount))("ngForTrackBy",b.trackValue),i.xp6(2),i.Q6J("ngIf",b.selectedNodes.length>b.nzMaxTagCount)}}function Qe(ve,it){if(1&ve&&i._UZ(0,"nz-select-placeholder",18),2&ve){const b=i.oxw();i.Udp("display",b.placeHolderDisplay),i.Q6J("placeholder",b.nzPlaceHolder)}}function ke(ve,it){if(1&ve&&i._UZ(0,"nz-select-item",19),2&ve){const b=i.oxw();i.Q6J("deletable",!1)("disabled",!1)("label",b.nzDisplayWith(b.selectedNodes[0]))}}function fe(ve,it){1&ve&&i._UZ(0,"nz-select-arrow")}function qe(ve,it){if(1&ve&&i._UZ(0,"nz-form-item-feedback-icon",23),2&ve){const b=i.oxw(3);i.Q6J("status",b.status)}}function ge(ve,it){if(1&ve&&i.YNc(0,qe,1,1,"nz-form-item-feedback-icon",22),2&ve){const b=i.oxw(2);i.Q6J("ngIf",b.hasFeedback&&!!b.status)}}function Ze(ve,it){if(1&ve&&(i.TgZ(0,"nz-select-arrow",20),i.YNc(1,ge,1,1,"ng-template",null,21,i.W1O),i.qZA()),2&ve){const b=i.MAs(2),N=i.oxw();i.Q6J("showArrow",!N.isMultiple)("feedbackIcon",b)}}function $e(ve,it){if(1&ve){const b=i.EpF();i.TgZ(0,"nz-select-clear",24),i.NdJ("clear",function(){i.CHM(b);const S=i.oxw();return i.KtG(S.onClearSelection())}),i.qZA()}}let Ue=(()=>{class ve extends x.kW{static#e=this.\u0275fac=function(){let b;return function(S){return(b||(b=i.n5z(ve)))(S||ve)}}();static#t=this.\u0275prov=i.Yz7({token:ve,factory:ve.\u0275fac})}return ve})();function wt(ve){return ve.get(Ue)}const Pe="ant-select-dropdown ant-select-tree-dropdown",Je=[y.yW.bottomLeft,y.yW.bottomRight,y.yW.topRight,y.yW.topLeft];let Ge=(()=>{class ve extends x.fP{set nzExpandedKeys(b){this.expandedKeys=b}get nzExpandedKeys(){return this.expandedKeys}get treeTemplate(){return this.nzTreeTemplate||this.nzTreeTemplateChild}get placeHolderDisplay(){return this.inputValue||this.isComposing||this.selectedNodes.length?"none":"block"}get isMultiple(){return this.nzMultiple||this.nzCheckable}constructor(b,N,S,$,R,he,ze,bt,Ft,sn){super(b),this.nzConfigService=N,this.renderer=S,this.cdr=$,this.elementRef=R,this.directionality=he,this.focusMonitor=ze,this.noAnimation=bt,this.nzFormStatusService=Ft,this.nzFormNoStatusService=sn,this._nzModuleName="treeSelect",this.nzId=null,this.nzAllowClear=!0,this.nzShowExpand=!0,this.nzShowLine=!1,this.nzDropdownMatchSelectWidth=!0,this.nzCheckable=!1,this.nzHideUnMatched=!1,this.nzShowIcon=!1,this.nzShowSearch=!1,this.nzDisabled=!1,this.nzAsyncData=!1,this.nzMultiple=!1,this.nzDefaultExpandAll=!1,this.nzCheckStrictly=!1,this.nzVirtualItemSize=28,this.nzVirtualMaxBufferPx=500,this.nzVirtualMinBufferPx=28,this.nzVirtualHeight=null,this.nzNodes=[],this.nzOpen=!1,this.nzSize="default",this.nzPlaceHolder="",this.nzDropdownStyle=null,this.nzBackdrop=!1,this.nzStatus="",this.nzPlacement="",this.nzDisplayWith=pn=>pn.title,this.nzMaxTagPlaceholder=null,this.nzOpenChange=new i.vpe,this.nzCleared=new i.vpe,this.nzRemoved=new i.vpe,this.nzExpandChange=new i.vpe,this.nzTreeClick=new i.vpe,this.nzTreeCheckBoxChange=new i.vpe,this.prefixCls="ant-select",this.statusCls={},this.status="",this.hasFeedback=!1,this.dropdownClassName=Pe,this.isComposing=!1,this.isDestroy=!0,this.isNotFound=!1,this.focused=!1,this.inputValue="",this.dropDownPosition="bottom",this.selectedNodes=[],this.expandedKeys=[],this.value=[],this.dir="ltr",this.positions=[],this.destroy$=new C.x,this.isNzDisableFirstChange=!0,this.onChange=pn=>{},this.onTouched=()=>{},this.renderer.addClass(this.elementRef.nativeElement,"ant-select"),this.renderer.addClass(this.elementRef.nativeElement,"ant-tree-select")}ngOnInit(){this.nzFormStatusService?.formStatusChanges.pipe((0,z.x)((b,N)=>b.status===N.status&&b.hasFeedback===N.hasFeedback),(0,M.M)(this.nzFormNoStatusService?this.nzFormNoStatusService.noFormStatus:(0,E.of)(!1)),(0,h.U)(([{status:b,hasFeedback:N},S])=>({status:S?"":b,hasFeedback:N})),(0,v.R)(this.destroy$)).subscribe(({status:b,hasFeedback:N})=>{this.setStatusStyles(b,N)}),this.isDestroy=!1,this.subscribeSelectionChange(),this.directionality.change?.pipe((0,v.R)(this.destroy$)).subscribe(b=>{this.dir=b,this.cdr.detectChanges()}),this.dir=this.directionality.value,this.focusMonitor.monitor(this.elementRef,!0).pipe((0,v.R)(this.destroy$)).subscribe(b=>{b?(this.focused=!0,this.cdr.markForCheck()):(this.focused=!1,this.cdr.markForCheck(),Promise.resolve().then(()=>{this.onTouched()}))})}ngOnDestroy(){this.isDestroy=!0,this.closeDropDown(),this.destroy$.next(),this.destroy$.complete()}isComposingChange(b){this.isComposing=b}setDisabledState(b){this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||b,this.closeDropDown(),this.isNzDisableFirstChange=!1}setStatusStyles(b,N){this.status=b,this.hasFeedback=N,this.cdr.markForCheck(),this.statusCls=(0,D.Zu)(this.prefixCls,b,N),Object.keys(this.statusCls).forEach(S=>{this.statusCls[S]?this.renderer.addClass(this.elementRef.nativeElement,S):this.renderer.removeClass(this.elementRef.nativeElement,S)})}ngOnChanges(b){const{nzNodes:N,nzDropdownClassName:S,nzStatus:$,nzPlacement:R}=b;if(N&&this.updateSelectedNodes(!0),S){const he=this.nzDropdownClassName&&this.nzDropdownClassName.trim();this.dropdownClassName=he?`${Pe} ${he}`:Pe}$&&this.setStatusStyles(this.nzStatus,this.hasFeedback),R&&this.nzPlacement&&y.yW[this.nzPlacement]&&(this.positions=[y.yW[this.nzPlacement]])}writeValue(b){(0,D.DX)(b)?(this.value=this.isMultiple&&Array.isArray(b)?b:[b],this.updateSelectedNodes(!0)):(this.value=[],this.selectedNodes.forEach(N=>{this.removeSelected(N,!1)}),this.selectedNodes=[]),this.cdr.markForCheck()}registerOnChange(b){this.onChange=b}registerOnTouched(b){this.onTouched=b}onKeydown(b){if(!this.nzDisabled)switch(b.keyCode){case n.hY:break;case n.Mf:this.closeDropDown();break;default:this.nzOpen||this.openDropdown()}}trigger(){this.nzDisabled||!this.nzDisabled&&this.nzOpen?this.closeDropDown():this.openDropdown()}openDropdown(){this.nzDisabled||(this.nzOpen=!0,this.nzOpenChange.emit(this.nzOpen),this.updateCdkConnectedOverlayStatus(),(this.nzShowSearch||this.isMultiple)&&this.focusOnInput())}closeDropDown(){this.onTouched(),this.nzOpen=!1,this.inputValue="",this.isNotFound=!1,this.nzOpenChange.emit(this.nzOpen),this.cdr.markForCheck()}onKeyDownInput(b){if(this.isMultiple&&!b.target.value&&b.keyCode===n.ZH&&(b.preventDefault(),this.selectedNodes.length)){const $=this.selectedNodes[this.selectedNodes.length-1];$&&!$.isDisabled&&this.removeSelected($)}}onExpandedKeysChange(b){this.nzExpandChange.emit(b),this.expandedKeys=[...b.keys]}setInputValue(b){this.isComposing||(this.inputValue=b,this.updatePosition())}removeSelected(b,N=!0){b.isSelected=!1,b.isChecked=!1,this.nzCheckable?this.nzTreeService.conduct(b,this.nzCheckStrictly):this.nzTreeService.setSelectedNodeList(b,this.nzMultiple),N&&this.nzRemoved.emit(b)}focusOnInput(){this.nzSelectSearchComponent&&this.nzSelectSearchComponent.focus()}subscribeSelectionChange(){(0,u.T)(this.nzTreeClick.pipe((0,g.b)(b=>{const N=b.node;this.nzCheckable&&!N.isDisabled&&!N.isDisableCheckbox&&(N.isChecked=!N.isChecked,N.isHalfChecked=!1,this.nzCheckStrictly||this.nzTreeService.conduct(N)),this.nzCheckable&&(N.isSelected=!1)}),(0,d.h)(b=>{const N=b.node;return this.nzCheckable?!N.isDisabled&&!N.isDisableCheckbox:!N.isDisabled&&N.isSelectable})),this.nzCheckable?this.nzTreeCheckBoxChange.asObservable():(0,E.of)(),this.nzCleared,this.nzRemoved).pipe((0,v.R)(this.destroy$)).subscribe(()=>{this.updateSelectedNodes();const b=this.selectedNodes.map(N=>N.key);this.value=[...b],(this.nzShowSearch||this.isMultiple)&&(this.inputValue="",this.isNotFound=!1),this.isMultiple?(this.onChange(b),this.focusOnInput(),this.updatePosition()):(this.closeDropDown(),this.onChange(b.length?b[0]:null))})}updateSelectedNodes(b=!1){if(b){const N=this.coerceTreeNodes(this.nzNodes);this.nzTreeService.isMultiple=this.isMultiple,this.nzTreeService.isCheckStrictly=this.nzCheckStrictly,this.nzTreeService.initTree(N),this.nzCheckable?this.nzTreeService.conductCheck(this.value,this.nzCheckStrictly):this.nzTreeService.conductSelectedKeys(this.value,this.isMultiple)}this.selectedNodes=[...this.nzCheckable?this.getCheckedNodeList():this.getSelectedNodeList()]}updatePosition(){(0,T.e)(()=>{this.cdkConnectedOverlay?.overlayRef?.updatePosition()})}onPositionChange(b){this.dropDownPosition=b.connectionPair.originY}onClearSelection(){this.selectedNodes.forEach(b=>{this.removeSelected(b,!1)}),this.nzCleared.emit()}onClickOutside(b){this.elementRef.nativeElement.contains(b.target)||this.closeDropDown()}setSearchValues(b){Promise.resolve().then(()=>{this.isNotFound=(this.nzShowSearch||this.isMultiple)&&!!this.inputValue&&0===b.matchedKeys.length})}updateCdkConnectedOverlayStatus(){(!this.nzPlacement||!Je.includes(y.yW[this.nzPlacement]))&&(this.triggerWidth=this.cdkOverlayOrigin.elementRef.nativeElement.getBoundingClientRect().width)}trackValue(b,N){return N.key}static#e=this.\u0275fac=function(N){return new(N||ve)(i.Y36(Ue),i.Y36(f.jY),i.Y36(i.Qsj),i.Y36(i.sBO),i.Y36(i.SBq),i.Y36(P.Is,8),i.Y36(O.tE),i.Y36(A.P,9),i.Y36(k.kH,8),i.Y36(k.yW,8))};static#t=this.\u0275cmp=i.Xpm({type:ve,selectors:[["nz-tree-select"]],contentQueries:function(N,S,$){if(1&N&&i.Suo($,Wt,7),2&N){let R;i.iGM(R=i.CRH())&&(S.nzTreeTemplateChild=R.first)}},viewQuery:function(N,S){if(1&N&&(i.Gf(_.Gt,5),i.Gf(Vt,5),i.Gf(t.xu,7),i.Gf(t.pI,5)),2&N){let $;i.iGM($=i.CRH())&&(S.nzSelectSearchComponent=$.first),i.iGM($=i.CRH())&&(S.treeRef=$.first),i.iGM($=i.CRH())&&(S.cdkOverlayOrigin=$.first),i.iGM($=i.CRH())&&(S.cdkConnectedOverlay=$.first)}},hostAttrs:[1,"ant-select"],hostVars:24,hostBindings:function(N,S){1&N&&i.NdJ("click",function(){return S.trigger()})("keydown",function(R){return S.onKeydown(R)}),2&N&&i.ekj("ant-select-in-form-item",!!S.nzFormStatusService)("ant-select-lg","large"===S.nzSize)("ant-select-rtl","rtl"===S.dir)("ant-select-sm","small"===S.nzSize)("ant-select-disabled",S.nzDisabled)("ant-select-single",!S.isMultiple)("ant-select-show-arrow",!S.isMultiple)("ant-select-show-search",!S.isMultiple)("ant-select-multiple",S.isMultiple)("ant-select-allow-clear",S.nzAllowClear)("ant-select-open",S.nzOpen)("ant-select-focused",S.nzOpen||S.focused)},inputs:{nzId:"nzId",nzAllowClear:"nzAllowClear",nzShowExpand:"nzShowExpand",nzShowLine:"nzShowLine",nzDropdownMatchSelectWidth:"nzDropdownMatchSelectWidth",nzCheckable:"nzCheckable",nzHideUnMatched:"nzHideUnMatched",nzShowIcon:"nzShowIcon",nzShowSearch:"nzShowSearch",nzDisabled:"nzDisabled",nzAsyncData:"nzAsyncData",nzMultiple:"nzMultiple",nzDefaultExpandAll:"nzDefaultExpandAll",nzCheckStrictly:"nzCheckStrictly",nzVirtualItemSize:"nzVirtualItemSize",nzVirtualMaxBufferPx:"nzVirtualMaxBufferPx",nzVirtualMinBufferPx:"nzVirtualMinBufferPx",nzVirtualHeight:"nzVirtualHeight",nzExpandedIcon:"nzExpandedIcon",nzNotFoundContent:"nzNotFoundContent",nzNodes:"nzNodes",nzOpen:"nzOpen",nzSize:"nzSize",nzPlaceHolder:"nzPlaceHolder",nzDropdownStyle:"nzDropdownStyle",nzDropdownClassName:"nzDropdownClassName",nzBackdrop:"nzBackdrop",nzStatus:"nzStatus",nzPlacement:"nzPlacement",nzExpandedKeys:"nzExpandedKeys",nzDisplayWith:"nzDisplayWith",nzMaxTagCount:"nzMaxTagCount",nzMaxTagPlaceholder:"nzMaxTagPlaceholder",nzTreeTemplate:"nzTreeTemplate"},outputs:{nzOpenChange:"nzOpenChange",nzCleared:"nzCleared",nzRemoved:"nzRemoved",nzExpandChange:"nzExpandChange",nzTreeClick:"nzTreeClick",nzTreeCheckBoxChange:"nzTreeCheckBoxChange"},exportAs:["nzTreeSelect"],features:[i._Bn([Ue,{provide:x.g2,useFactory:wt,deps:[[new i.PiD,i.zs3]]},{provide:l.JU,useExisting:(0,i.Gpc)(()=>ve),multi:!0}]),i.qOj,i.TTD],decls:9,vars:20,consts:[["cdkConnectedOverlay","","nzConnectedOverlay","",3,"cdkConnectedOverlayHasBackdrop","cdkConnectedOverlayOrigin","cdkConnectedOverlayPositions","cdkConnectedOverlayOpen","cdkConnectedOverlayTransformOriginOn","cdkConnectedOverlayMinWidth","cdkConnectedOverlayWidth","overlayOutsideClick","detach","positionChange"],["cdkOverlayOrigin","",1,"ant-select-selector"],[4,"ngIf"],[3,"nzId","showInput","value","mirrorSync","disabled","focusTrigger","keydown","isComposingChange","valueChange"],[3,"placeholder","display",4,"ngIf"],[3,"deletable","disabled","label",4,"ngIf"],[3,"showArrow","feedbackIcon",4,"ngIf"],[3,"clear",4,"ngIf"],[3,"ngClass","nzNoAnimation","dir","ngStyle"],["nzNoAnimation","","nzSelectMode","","nzBlockNode","",3,"hidden","nzData","nzMultiple","nzSearchValue","nzHideUnMatched","nzShowIcon","nzCheckable","nzAsyncData","nzShowExpand","nzShowLine","nzExpandedIcon","nzExpandAll","nzExpandedKeys","nzCheckedKeys","nzSelectedKeys","nzTreeTemplate","nzCheckStrictly","nzVirtualItemSize","nzVirtualMaxBufferPx","nzVirtualMinBufferPx","nzVirtualHeight","nzExpandChange","nzClick","nzCheckedKeysChange","nzSelectedKeysChange","nzCheckBoxChange","nzSearchValueChange"],["treeRef",""],["class","ant-select-not-found",4,"ngIf"],[1,"ant-select-not-found"],[3,"nzComponentName","specificContent"],[3,"deletable","disabled","label","delete",4,"ngFor","ngForOf","ngForTrackBy"],[3,"contentTemplateOutlet","contentTemplateOutletContext","deletable","disabled","label",4,"ngIf"],[3,"deletable","disabled","label","delete"],[3,"contentTemplateOutlet","contentTemplateOutletContext","deletable","disabled","label"],[3,"placeholder"],[3,"deletable","disabled","label"],[3,"showArrow","feedbackIcon"],["feedbackIconTpl",""],[3,"status",4,"ngIf"],[3,"status"],[3,"clear"]],template:function(N,S){1&N&&(i.YNc(0,et,4,36,"ng-template",0),i.NdJ("overlayOutsideClick",function(R){return S.onClickOutside(R)})("detach",function(){return S.closeDropDown()})("positionChange",function(R){return S.onPositionChange(R)}),i.TgZ(1,"div",1),i.YNc(2,xt,4,7,"ng-container",2),i.TgZ(3,"nz-select-search",3),i.NdJ("keydown",function(R){return S.onKeyDownInput(R)})("isComposingChange",function(R){return S.isComposing=R})("valueChange",function(R){return S.setInputValue(R)}),i.qZA(),i.YNc(4,Qe,1,3,"nz-select-placeholder",4),i.YNc(5,ke,1,3,"nz-select-item",5),i.YNc(6,fe,1,0,"nz-select-arrow",2),i.YNc(7,Ze,3,2,"nz-select-arrow",6),i.YNc(8,$e,1,0,"nz-select-clear",7),i.qZA()),2&N&&(i.Q6J("cdkConnectedOverlayHasBackdrop",S.nzBackdrop)("cdkConnectedOverlayOrigin",S.cdkOverlayOrigin)("cdkConnectedOverlayPositions",S.nzPlacement?S.positions:i.DdM(19,He))("cdkConnectedOverlayOpen",S.nzOpen)("cdkConnectedOverlayTransformOriginOn",".ant-select-tree-dropdown")("cdkConnectedOverlayMinWidth",S.nzDropdownMatchSelectWidth?null:S.triggerWidth)("cdkConnectedOverlayWidth",S.nzDropdownMatchSelectWidth?S.triggerWidth:null),i.xp6(2),i.Q6J("ngIf",S.isMultiple),i.xp6(1),i.Q6J("nzId",S.nzId)("showInput",S.nzShowSearch)("value",S.inputValue)("mirrorSync",S.isMultiple)("disabled",S.nzDisabled)("focusTrigger",S.nzOpen),i.xp6(1),i.Q6J("ngIf",S.nzPlaceHolder&&0===S.selectedNodes.length),i.xp6(1),i.Q6J("ngIf",!S.isMultiple&&1===S.selectedNodes.length&&!S.isComposing&&""===S.inputValue),i.xp6(1),i.Q6J("ngIf",!S.isMultiple),i.xp6(1),i.Q6J("ngIf",!S.isMultiple||S.hasFeedback&&!!S.status),i.xp6(1),i.Q6J("ngIf",S.nzAllowClear&&!S.nzDisabled&&S.selectedNodes.length))},dependencies:[P.Lv,F.mk,F.sg,F.O5,F.PC,t.pI,t.xu,_.uf,_.kq,_.Go,_.Y6,_.Gt,qt,cn.gB,y.hQ,A.P,k.w_,F.OU],encapsulation:2,data:{animation:[p.mF]}})}return(0,e.gn)([(0,D.yF)()],ve.prototype,"nzAllowClear",void 0),(0,e.gn)([(0,D.yF)()],ve.prototype,"nzShowExpand",void 0),(0,e.gn)([(0,D.yF)()],ve.prototype,"nzShowLine",void 0),(0,e.gn)([(0,D.yF)(),(0,f.oS)()],ve.prototype,"nzDropdownMatchSelectWidth",void 0),(0,e.gn)([(0,D.yF)()],ve.prototype,"nzCheckable",void 0),(0,e.gn)([(0,D.yF)(),(0,f.oS)()],ve.prototype,"nzHideUnMatched",void 0),(0,e.gn)([(0,D.yF)(),(0,f.oS)()],ve.prototype,"nzShowIcon",void 0),(0,e.gn)([(0,D.yF)()],ve.prototype,"nzShowSearch",void 0),(0,e.gn)([(0,D.yF)()],ve.prototype,"nzDisabled",void 0),(0,e.gn)([(0,D.yF)()],ve.prototype,"nzAsyncData",void 0),(0,e.gn)([(0,D.yF)()],ve.prototype,"nzMultiple",void 0),(0,e.gn)([(0,D.yF)()],ve.prototype,"nzDefaultExpandAll",void 0),(0,e.gn)([(0,D.yF)()],ve.prototype,"nzCheckStrictly",void 0),(0,e.gn)([(0,f.oS)()],ve.prototype,"nzSize",void 0),(0,e.gn)([(0,f.oS)()],ve.prototype,"nzBackdrop",void 0),ve})(),Ke=(()=>{class ve{static#e=this.\u0275fac=function(N){return new(N||ve)};static#t=this.\u0275mod=i.oAB({type:ve});static#n=this.\u0275inj=i.cJS({imports:[P.vT,F.ez,t.U8,l.u5,_.LV,en,Y.PV,cn.Xo,y.e4,A.g,k.mJ]})}return ve})()},41394:(nt,I,o)=>{"use strict";o.d(I,{FY:()=>b,cS:()=>N});var e=o(36028),n=o(69862),t=o(65879),i=o(22096),l=o(65592),C=o(47394),E=o(78645),u=o(92438),z=o(94664),M=o(37398),h=o(99397),v=o(59773),g=o(32181),d=o(1608),p=o(86825),f=o(96814),y=o(62831),T=o(96109),x=o(48128),D=o(90551),_=o(42840),P=o(70855),O=o(97582),A=o(27754),k=o(12131),F=o(49388),W=o(60095);const K=["file"],_e=["nz-upload-btn",""],Y=["*"];function G(S,$){}const H=function(S){return{$implicit:S}};function j(S,$){if(1&S&&(t.TgZ(0,"div",18),t.YNc(1,G,0,0,"ng-template",19),t.qZA()),2&S){const R=t.oxw(2).$implicit,he=t.MAs(5);t.ekj("ant-upload-list-item-file",!R.isUploading),t.xp6(1),t.Q6J("ngTemplateOutlet",he)("ngTemplateOutletContext",t.VKq(4,H,R))}}function te(S,$){if(1&S&&t._UZ(0,"img",22),2&S){const R=t.oxw(3).$implicit;t.Q6J("src",R.thumbUrl||R.url,t.LSH),t.uIk("alt",R.name)}}function ne(S,$){if(1&S){const R=t.EpF();t.TgZ(0,"a",20),t.NdJ("click",function(ze){t.CHM(R);const bt=t.oxw(2).$implicit,Ft=t.oxw();return t.KtG(Ft.handlePreview(bt,ze))}),t.YNc(1,te,1,2,"img",21),t.qZA()}if(2&S){t.oxw();const R=t.MAs(5),he=t.oxw().$implicit;t.ekj("ant-upload-list-item-file",!he.isImageUrl),t.Q6J("href",he.url||he.thumbUrl,t.LSH),t.xp6(1),t.Q6J("ngIf",he.isImageUrl)("ngIfElse",R)}}function pe(S,$){}function re(S,$){if(1&S&&(t.TgZ(0,"div",23),t.YNc(1,pe,0,0,"ng-template",19),t.qZA()),2&S){const R=t.oxw(2).$implicit,he=t.MAs(5);t.xp6(1),t.Q6J("ngTemplateOutlet",he)("ngTemplateOutletContext",t.VKq(2,H,R))}}function be(S,$){}function le(S,$){if(1&S&&t.YNc(0,be,0,0,"ng-template",19),2&S){const R=t.oxw(2).$implicit,he=t.MAs(5);t.Q6J("ngTemplateOutlet",he)("ngTemplateOutletContext",t.VKq(2,H,R))}}function ce(S,$){if(1&S&&(t.ynx(0,13),t.YNc(1,j,2,6,"div",14),t.YNc(2,ne,2,5,"a",15),t.YNc(3,re,2,4,"div",16),t.BQk(),t.YNc(4,le,1,4,"ng-template",null,17,t.W1O)),2&S){const R=t.oxw().$implicit;t.Q6J("ngSwitch",R.iconType),t.xp6(1),t.Q6J("ngSwitchCase","uploading"),t.xp6(1),t.Q6J("ngSwitchCase","thumbnail")}}function Q(S,$){1&S&&(t.ynx(0),t._UZ(1,"span",29),t.BQk())}function ie(S,$){if(1&S&&(t.ynx(0),t.YNc(1,Q,2,0,"ng-container",24),t.BQk()),2&S){const R=t.oxw(2).$implicit,he=t.MAs(4);t.xp6(1),t.Q6J("ngIf",R.isUploading)("ngIfElse",he)}}function ae(S,$){if(1&S&&(t.ynx(0),t._uU(1),t.BQk()),2&S){const R=t.oxw(5);t.xp6(1),t.hij(" ",R.locale.uploading," ")}}function xe(S,$){if(1&S&&(t.ynx(0),t.YNc(1,ae,2,1,"ng-container",24),t.BQk()),2&S){const R=t.oxw(2).$implicit,he=t.MAs(4);t.xp6(1),t.Q6J("ngIf",R.isUploading)("ngIfElse",he)}}function Me(S,$){if(1&S&&t._UZ(0,"span",30),2&S){const R=t.oxw(2).$implicit;t.Q6J("nzType",R.isUploading?"loading":"paper-clip")}}function Ye(S,$){if(1&S&&(t.ynx(0)(1,13),t.YNc(2,ie,2,2,"ng-container",27),t.YNc(3,xe,2,2,"ng-container",27),t.YNc(4,Me,1,1,"span",28),t.BQk()()),2&S){const R=t.oxw(3);t.xp6(1),t.Q6J("ngSwitch",R.listType),t.xp6(1),t.Q6J("ngSwitchCase","picture"),t.xp6(1),t.Q6J("ngSwitchCase","picture-card")}}function q(S,$){}function ye(S,$){if(1&S&&t._UZ(0,"span",31),2&S){const R=t.oxw().$implicit;t.Q6J("nzType",R.isImageUrl?"picture":"file")}}function ee(S,$){if(1&S&&(t.YNc(0,Ye,5,3,"ng-container",24),t.YNc(1,q,0,0,"ng-template",19,25,t.W1O),t.YNc(3,ye,1,1,"ng-template",null,26,t.W1O)),2&S){const R=$.$implicit,he=t.MAs(2),ze=t.oxw(2);t.Q6J("ngIf",!ze.iconRender)("ngIfElse",he),t.xp6(1),t.Q6J("ngTemplateOutlet",ze.iconRender)("ngTemplateOutletContext",t.VKq(4,H,R))}}function Be(S,$){if(1&S){const R=t.EpF();t.TgZ(0,"button",33),t.NdJ("click",function(ze){t.CHM(R);const bt=t.oxw(2).$implicit,Ft=t.oxw();return t.KtG(Ft.handleRemove(bt,ze))}),t._UZ(1,"span",34),t.qZA()}if(2&S){const R=t.oxw(3);t.uIk("title",R.locale.removeFile)}}function Re(S,$){if(1&S&&t.YNc(0,Be,2,1,"button",32),2&S){const R=t.oxw(2);t.Q6J("ngIf",R.icons.showRemoveIcon)}}function ct(S,$){if(1&S){const R=t.EpF();t.TgZ(0,"button",33),t.NdJ("click",function(){t.CHM(R);const ze=t.oxw(2).$implicit,bt=t.oxw();return t.KtG(bt.handleDownload(ze))}),t._UZ(1,"span",35),t.qZA()}if(2&S){const R=t.oxw(3);t.uIk("title",R.locale.downloadFile)}}function Ae(S,$){if(1&S&&t.YNc(0,ct,2,1,"button",32),2&S){const R=t.oxw().$implicit;t.Q6J("ngIf",R.showDownload)}}function Mt(S,$){}function je(S,$){}function ot(S,$){if(1&S&&(t.TgZ(0,"span"),t.YNc(1,Mt,0,0,"ng-template",10),t.YNc(2,je,0,0,"ng-template",10),t.qZA()),2&S){t.oxw(2);const R=t.MAs(9),he=t.MAs(7),ze=t.oxw();t.Gre("ant-upload-list-item-card-actions ","picture"===ze.listType?"picture":"",""),t.xp6(1),t.Q6J("ngTemplateOutlet",R),t.xp6(1),t.Q6J("ngTemplateOutlet",he)}}function mt(S,$){if(1&S&&t.YNc(0,ot,3,5,"span",36),2&S){const R=t.oxw(2);t.Q6J("ngIf","picture-card"!==R.listType)}}function we(S,$){if(1&S){const R=t.EpF();t.TgZ(0,"a",39),t.NdJ("click",function(ze){t.CHM(R);const bt=t.oxw(2).$implicit,Ft=t.oxw();return t.KtG(Ft.handlePreview(bt,ze))}),t._uU(1),t.qZA()}if(2&S){const R=t.oxw(2).$implicit;t.Q6J("href",R.url,t.LSH),t.uIk("title",R.name)("download",R.linkProps&&R.linkProps.download),t.xp6(1),t.hij(" ",R.name," ")}}function de(S,$){if(1&S){const R=t.EpF();t.TgZ(0,"span",40),t.NdJ("click",function(ze){t.CHM(R);const bt=t.oxw(2).$implicit,Ft=t.oxw();return t.KtG(Ft.handlePreview(bt,ze))}),t._uU(1),t.qZA()}if(2&S){const R=t.oxw(2).$implicit;t.uIk("title",R.name),t.xp6(1),t.hij(" ",R.name," ")}}function U(S,$){}function B(S,$){if(1&S&&(t.YNc(0,we,2,4,"a",37),t.YNc(1,de,2,2,"span",38),t.YNc(2,U,0,0,"ng-template",10)),2&S){const R=t.oxw().$implicit,he=t.MAs(11);t.Q6J("ngIf",R.url),t.xp6(1),t.Q6J("ngIf",!R.url),t.xp6(1),t.Q6J("ngTemplateOutlet",he)}}function Ee(S,$){}function Ie(S,$){}const Ne=function(){return{opacity:.5,"pointer-events":"none"}};function pt(S,$){if(1&S){const R=t.EpF();t.TgZ(0,"a",44),t.NdJ("click",function(ze){t.CHM(R);const bt=t.oxw(2).$implicit,Ft=t.oxw();return t.KtG(Ft.handlePreview(bt,ze))}),t._UZ(1,"span",45),t.qZA()}if(2&S){const R=t.oxw(2).$implicit,he=t.oxw();t.Q6J("href",R.url||R.thumbUrl,t.LSH)("ngStyle",R.url||R.thumbUrl?null:t.DdM(3,Ne)),t.uIk("title",he.locale.previewFile)}}function Dt(S,$){}function Lt(S,$){if(1&S&&(t.ynx(0),t.YNc(1,Dt,0,0,"ng-template",10),t.BQk()),2&S){t.oxw(2);const R=t.MAs(9);t.xp6(1),t.Q6J("ngTemplateOutlet",R)}}function Ut(S,$){}function qt(S,$){if(1&S&&(t.TgZ(0,"span",41),t.YNc(1,pt,2,4,"a",42),t.YNc(2,Lt,2,1,"ng-container",43),t.YNc(3,Ut,0,0,"ng-template",10),t.qZA()),2&S){const R=t.oxw().$implicit,he=t.MAs(7),ze=t.oxw();t.xp6(1),t.Q6J("ngIf",ze.icons.showPreviewIcon),t.xp6(1),t.Q6J("ngIf","done"===R.status),t.xp6(1),t.Q6J("ngTemplateOutlet",he)}}function en(S,$){if(1&S&&(t.TgZ(0,"div",46),t._UZ(1,"nz-progress",47),t.qZA()),2&S){const R=t.oxw().$implicit;t.xp6(1),t.Q6J("nzPercent",R.percent)("nzShowInfo",!1)("nzStrokeWidth",2)}}function cn(S,$){if(1&S&&(t.TgZ(0,"div")(1,"div",1),t.YNc(2,ce,6,3,"ng-template",null,2,t.W1O),t.YNc(4,ee,5,6,"ng-template",null,3,t.W1O),t.YNc(6,Re,1,1,"ng-template",null,4,t.W1O),t.YNc(8,Ae,1,1,"ng-template",null,5,t.W1O),t.YNc(10,mt,1,1,"ng-template",null,6,t.W1O),t.YNc(12,B,3,3,"ng-template",null,7,t.W1O),t.TgZ(14,"div",8)(15,"span",9),t.YNc(16,Ee,0,0,"ng-template",10),t.YNc(17,Ie,0,0,"ng-template",10),t.qZA()(),t.YNc(18,qt,4,3,"span",11),t.YNc(19,en,2,3,"div",12),t.qZA()()),2&S){const R=$.$implicit,he=t.MAs(3),ze=t.MAs(13),bt=t.oxw();t.Gre("ant-upload-list-",bt.listType,"-container"),t.xp6(1),t.MT6("ant-upload-list-item ant-upload-list-item-",R.status," ant-upload-list-item-list-type-",bt.listType,""),t.Q6J("@itemState",void 0)("nzTooltipTitle","error"===R.status?R.message:null),t.uIk("data-key",R.key),t.xp6(15),t.Q6J("ngTemplateOutlet",he),t.xp6(1),t.Q6J("ngTemplateOutlet",ze),t.xp6(1),t.Q6J("ngIf","picture-card"===bt.listType&&!R.isUploading),t.xp6(1),t.Q6J("ngIf",R.isUploading)}}const Wt=["uploadComp"],Vt=["listComp"],st=function(){return[]};function He(S,$){if(1&S&&t._UZ(0,"nz-upload-list",8,9),2&S){const R=t.oxw(2);t.Udp("display",R.nzShowUploadList?"":"none"),t.Q6J("locale",R.locale)("listType",R.nzListType)("items",R.nzFileList||t.DdM(13,st))("icons",R.nzShowUploadList)("iconRender",R.nzIconRender)("previewFile",R.nzPreviewFile)("previewIsImage",R.nzPreviewIsImage)("onPreview",R.nzPreview)("onRemove",R.onRemove)("onDownload",R.nzDownload)("dir",R.dir)}}function et(S,$){1&S&&t.GkF(0)}function It(S,$){if(1&S&&(t.ynx(0),t.YNc(1,et,1,0,"ng-container",10),t.BQk()),2&S){const R=t.oxw(2);t.xp6(1),t.Q6J("ngTemplateOutlet",R.nzFileListRender)("ngTemplateOutletContext",t.VKq(2,H,R.nzFileList))}}function Ot(S,$){if(1&S&&(t.YNc(0,He,2,14,"nz-upload-list",6),t.YNc(1,It,2,4,"ng-container",7)),2&S){const R=t.oxw();t.Q6J("ngIf",R.locale&&!R.nzFileListRender),t.xp6(1),t.Q6J("ngIf",R.nzFileListRender)}}function xt(S,$){1&S&&t.Hsn(0)}function Qe(S,$){}function ke(S,$){if(1&S&&(t.TgZ(0,"div",11)(1,"div",12,13),t.YNc(3,Qe,0,0,"ng-template",14),t.qZA()()),2&S){const R=t.oxw(),he=t.MAs(3);t.Udp("display",R.nzShowButton?"":"none"),t.Q6J("ngClass",R.classList),t.xp6(1),t.Q6J("options",R._btnOptions),t.xp6(2),t.Q6J("ngTemplateOutlet",he)}}function fe(S,$){}function qe(S,$){}function ge(S,$){if(1&S){const R=t.EpF();t.ynx(0),t.TgZ(1,"div",15),t.NdJ("drop",function(ze){t.CHM(R);const bt=t.oxw();return t.KtG(bt.fileDrop(ze))})("dragover",function(ze){t.CHM(R);const bt=t.oxw();return t.KtG(bt.fileDrop(ze))})("dragleave",function(ze){t.CHM(R);const bt=t.oxw();return t.KtG(bt.fileDrop(ze))}),t.TgZ(2,"div",16,13)(4,"div",17),t.YNc(5,fe,0,0,"ng-template",14),t.qZA()()(),t.YNc(6,qe,0,0,"ng-template",14),t.BQk()}if(2&S){const R=t.oxw(),he=t.MAs(3),ze=t.MAs(1);t.xp6(1),t.Q6J("ngClass",R.classList),t.xp6(1),t.Q6J("options",R._btnOptions),t.xp6(3),t.Q6J("ngTemplateOutlet",he),t.xp6(1),t.Q6J("ngTemplateOutlet",ze)}}function Ze(S,$){}function $e(S,$){}function Ue(S,$){if(1&S&&(t.ynx(0),t.YNc(1,Ze,0,0,"ng-template",14),t.YNc(2,$e,0,0,"ng-template",14),t.BQk()),2&S){t.oxw(2);const R=t.MAs(1),he=t.MAs(5);t.xp6(1),t.Q6J("ngTemplateOutlet",R),t.xp6(1),t.Q6J("ngTemplateOutlet",he)}}function wt(S,$){if(1&S&&t.YNc(0,Ue,3,2,"ng-container",3),2&S){const R=t.oxw(),he=t.MAs(10);t.Q6J("ngIf","picture-card"===R.nzListType)("ngIfElse",he)}}function De(S,$){}function Pe(S,$){}function Je(S,$){if(1&S&&(t.YNc(0,De,0,0,"ng-template",14),t.YNc(1,Pe,0,0,"ng-template",14)),2&S){t.oxw();const R=t.MAs(5),he=t.MAs(1);t.Q6J("ngTemplateOutlet",R),t.xp6(1),t.Q6J("ngTemplateOutlet",he)}}let Ge=(()=>{class S{onClick(){this.options.disabled||!this.options.openFileDialogOnClick||this.file.nativeElement.click()}onFileDrop(R){if(this.options.disabled||"dragover"===R.type)R.preventDefault();else{if(this.options.directory)this.traverseFileTree(R.dataTransfer.items);else{const he=Array.prototype.slice.call(R.dataTransfer.files).filter(ze=>this.attrAccept(ze,this.options.accept));he.length&&this.uploadFiles(he)}R.preventDefault()}}onChange(R){if(this.options.disabled)return;const he=R.target;this.uploadFiles(he.files),he.value=""}traverseFileTree(R){const he=(ze,bt)=>{ze.isFile?ze.file(Ft=>{this.attrAccept(Ft,this.options.accept)&&this.uploadFiles([Ft])}):ze.isDirectory&&ze.createReader().readEntries(sn=>{for(const pn of sn)he(pn,`${bt}${ze.name}/`)})};for(const ze of R)he(ze.webkitGetAsEntry(),"")}attrAccept(R,he){if(R&&he){const ze=Array.isArray(he)?he:he.split(","),bt=`${R.name}`,Ft=`${R.type}`,sn=Ft.replace(/\/.*$/,"");return ze.some(pn=>{const vn=pn.trim();return"."===vn.charAt(0)?-1!==bt.toLowerCase().indexOf(vn.toLowerCase(),bt.toLowerCase().length-vn.toLowerCase().length):/\/\*$/.test(vn)?sn===vn.replace(/\/.*$/,""):Ft===vn})}return!0}attachUid(R){return R.uid||(R.uid=Math.random().toString(36).substring(2)),R}uploadFiles(R){let he=(0,i.of)(Array.prototype.slice.call(R));this.options.filters&&this.options.filters.forEach(ze=>{he=he.pipe((0,z.w)(bt=>{const Ft=ze.fn(bt);return Ft instanceof l.y?Ft:(0,i.of)(Ft)}))}),he.subscribe(ze=>{ze.forEach(bt=>{this.attachUid(bt),this.upload(bt,ze)})},ze=>{(0,d.ZK)("Unhandled upload filter error",ze)})}upload(R,he){if(!this.options.beforeUpload)return this.post(R);const ze=this.options.beforeUpload(R,he);if(ze instanceof l.y)ze.subscribe(bt=>{const Ft=Object.prototype.toString.call(bt);"[object File]"===Ft||"[object Blob]"===Ft?(this.attachUid(bt),this.post(bt)):"boolean"==typeof bt&&!1!==bt&&this.post(R)},bt=>{(0,d.ZK)("Unhandled upload beforeUpload error",bt)});else if(!1!==ze)return this.post(R)}post(R){if(this.destroy)return;let ze,he=(0,i.of)(R);const bt=this.options,{uid:Ft}=R,{action:sn,data:pn,headers:vn,transformFile:Dn}=bt,Mn={action:"string"==typeof sn?sn:"",name:bt.name,headers:vn,file:R,postFile:R,data:pn,withCredentials:bt.withCredentials,onProgress:bt.onProgress?En=>{bt.onProgress(En,R)}:void 0,onSuccess:(En,bn)=>{this.clean(Ft),bt.onSuccess(En,R,bn)},onError:En=>{this.clean(Ft),bt.onError(En,R)}};if("function"==typeof sn){const En=sn(R);En instanceof l.y?he=he.pipe((0,z.w)(()=>En),(0,M.U)(bn=>(Mn.action=bn,R))):Mn.action=En}if("function"==typeof Dn){const En=Dn(R);he=he.pipe((0,z.w)(()=>En instanceof l.y?En:(0,i.of)(En)),(0,h.b)(bn=>ze=bn))}if("function"==typeof pn){const En=pn(R);En instanceof l.y?he=he.pipe((0,z.w)(()=>En),(0,M.U)(bn=>(Mn.data=bn,ze??R))):Mn.data=En}if("function"==typeof vn){const En=vn(R);En instanceof l.y?he=he.pipe((0,z.w)(()=>En),(0,M.U)(bn=>(Mn.headers=bn,ze??R))):Mn.headers=En}he.subscribe(En=>{Mn.postFile=En;const bn=(bt.customRequest||this.xhr).call(this,Mn);bn instanceof C.w0||(0,d.ZK)("Must return Subscription type in '[nzCustomRequest]' property"),this.reqs[Ft]=bn,bt.onStart(R)})}xhr(R){const he=new FormData;R.data&&Object.keys(R.data).map(bt=>{he.append(bt,R.data[bt])}),he.append(R.name,R.postFile),R.headers||(R.headers={}),null!==R.headers["X-Requested-With"]?R.headers["X-Requested-With"]="XMLHttpRequest":delete R.headers["X-Requested-With"];const ze=new n.aW("POST",R.action,he,{reportProgress:!0,withCredentials:R.withCredentials,headers:new n.WM(R.headers)});return this.http.request(ze).subscribe(bt=>{bt.type===n.dt.UploadProgress?(bt.total>0&&(bt.percent=bt.loaded/bt.total*100),R.onProgress(bt,R.file)):bt instanceof n.Zn&&R.onSuccess(bt.body,R.file,bt)},bt=>{this.abort(R.file),R.onError(bt,R.file)})}clean(R){const he=this.reqs[R];he instanceof C.w0&&he.unsubscribe(),delete this.reqs[R]}abort(R){R?this.clean(R&&R.uid):Object.keys(this.reqs).forEach(he=>this.clean(he))}constructor(R,he,ze){if(this.ngZone=R,this.http=he,this.elementRef=ze,this.reqs={},this.destroy=!1,this.destroy$=new E.x,!he)throw new Error("Not found 'HttpClient', You can import 'HttpClientModule' in your root module.")}ngOnInit(){this.ngZone.runOutsideAngular(()=>{(0,u.R)(this.elementRef.nativeElement,"click").pipe((0,v.R)(this.destroy$)).subscribe(()=>this.onClick()),(0,u.R)(this.elementRef.nativeElement,"keydown").pipe((0,v.R)(this.destroy$)).subscribe(R=>{this.options.disabled||("Enter"===R.key||R.keyCode===e.K5)&&this.onClick()})})}ngOnDestroy(){this.destroy=!0,this.destroy$.next(),this.abort()}static#e=this.\u0275fac=function(he){return new(he||S)(t.Y36(t.R0b),t.Y36(n.eN,8),t.Y36(t.SBq))};static#t=this.\u0275cmp=t.Xpm({type:S,selectors:[["","nz-upload-btn",""]],viewQuery:function(he,ze){if(1&he&&t.Gf(K,7),2&he){let bt;t.iGM(bt=t.CRH())&&(ze.file=bt.first)}},hostAttrs:[1,"ant-upload"],hostVars:4,hostBindings:function(he,ze){1&he&&t.NdJ("drop",function(Ft){return ze.onFileDrop(Ft)})("dragover",function(Ft){return ze.onFileDrop(Ft)}),2&he&&(t.uIk("tabindex","0")("role","button"),t.ekj("ant-upload-disabled",ze.options.disabled))},inputs:{options:"options"},exportAs:["nzUploadBtn"],attrs:_e,ngContentSelectors:Y,decls:3,vars:4,consts:[["type","file",2,"display","none",3,"multiple","change"],["file",""]],template:function(he,ze){1&he&&(t.F$t(),t.TgZ(0,"input",0,1),t.NdJ("change",function(Ft){return ze.onChange(Ft)}),t.qZA(),t.Hsn(2)),2&he&&(t.Q6J("multiple",ze.options.multiple),t.uIk("accept",ze.options.accept)("directory",ze.options.directory?"directory":null)("webkitdirectory",ze.options.directory?"webkitdirectory":null))},encapsulation:2})}return S})();const Ke=S=>!!S&&0===S.indexOf("image/");let it=(()=>{class S{get showPic(){return"picture"===this.listType||"picture-card"===this.listType}set items(R){this.list=R}genErr(R){return R.response&&"string"==typeof R.response?R.response:R.error&&R.error.statusText||this.locale.uploadError}extname(R){const he=R.split("/"),bt=he[he.length-1].split(/#|\?/)[0];return(/\.[^./\\]*$/.exec(bt)||[""])[0]}isImageUrl(R){if(Ke(R.type))return!0;const he=R.thumbUrl||R.url||"";if(!he)return!1;const ze=this.extname(he);return!(!/^data:image\//.test(he)&&!/(webp|svg|png|gif|jpg|jpeg|jfif|bmp|dpg)$/i.test(ze))||!/^data:/.test(he)&&!ze}getIconType(R){return this.showPic?R.isUploading||!R.thumbUrl&&!R.url?"uploading":"thumbnail":""}previewImage(R){if(!Ke(R.type)||!this.platform.isBrowser)return(0,i.of)("");const he=this.doc.createElement("canvas");he.width=200,he.height=200,he.style.cssText="position: fixed; left: 0; top: 0; width: 200px; height: 200px; z-index: 9999; display: none;",this.doc.body.appendChild(he);const ze=he.getContext("2d"),bt=new Image,Ft=URL.createObjectURL(R);return bt.src=Ft,(0,u.R)(bt,"load").pipe((0,M.U)(()=>{const{width:sn,height:pn}=bt;let vn=200,Dn=200,Mn=0,En=0;sn"u"||typeof R>"u"||!R.FileReader||!R.File||this.list.filter(he=>he.originFileObj instanceof File&&void 0===he.thumbUrl).forEach(he=>{he.thumbUrl="";const ze=(this.previewFile?this.previewFile(he):this.previewImage(he.originFileObj)).pipe((0,v.R)(this.destroy$));this.ngZone.runOutsideAngular(()=>{ze.subscribe(bt=>{this.ngZone.run(()=>{he.thumbUrl=bt,this.detectChanges()})})})})}showDownload(R){return!(!this.icons.showDownloadIcon||"done"!==R.status)}fixData(){this.list.forEach(R=>{R.isUploading="uploading"===R.status,R.message=this.genErr(R),R.linkProps="string"==typeof R.linkProps?JSON.parse(R.linkProps):R.linkProps,R.isImageUrl=this.previewIsImage?this.previewIsImage(R):this.isImageUrl(R),R.iconType=this.getIconType(R),R.showDownload=this.showDownload(R)})}handlePreview(R,he){if(this.onPreview)return he.preventDefault(),this.onPreview(R)}handleRemove(R,he){he.preventDefault(),this.onRemove&&this.onRemove(R)}handleDownload(R){"function"==typeof this.onDownload?this.onDownload(R):R.url&&window.open(R.url)}constructor(R,he,ze,bt){this.cdr=R,this.doc=he,this.ngZone=ze,this.platform=bt,this.list=[],this.locale={},this.iconRender=null,this.dir="ltr",this.destroy$=new E.x}detectChanges(){this.fixData(),this.cdr.detectChanges()}ngOnChanges(){this.fixData(),this.genThumb()}ngOnDestroy(){this.destroy$.next()}static#e=this.\u0275fac=function(he){return new(he||S)(t.Y36(t.sBO),t.Y36(f.K0),t.Y36(t.R0b),t.Y36(y.t4))};static#t=this.\u0275cmp=t.Xpm({type:S,selectors:[["nz-upload-list"]],hostAttrs:[1,"ant-upload-list"],hostVars:8,hostBindings:function(he,ze){2&he&&t.ekj("ant-upload-list-rtl","rtl"===ze.dir)("ant-upload-list-text","text"===ze.listType)("ant-upload-list-picture","picture"===ze.listType)("ant-upload-list-picture-card","picture-card"===ze.listType)},inputs:{locale:"locale",listType:"listType",items:"items",icons:"icons",onPreview:"onPreview",onRemove:"onRemove",onDownload:"onDownload",previewFile:"previewFile",previewIsImage:"previewIsImage",iconRender:"iconRender",dir:"dir"},exportAs:["nzUploadList"],features:[t.TTD],decls:1,vars:1,consts:[[3,"class",4,"ngFor","ngForOf"],["nz-tooltip","",3,"nzTooltipTitle"],["icon",""],["iconNode",""],["removeIcon",""],["downloadIcon",""],["downloadOrDelete",""],["preview",""],[1,"ant-upload-list-item-info"],[1,"ant-upload-span"],[3,"ngTemplateOutlet"],["class","ant-upload-list-item-actions",4,"ngIf"],["class","ant-upload-list-item-progress",4,"ngIf"],[3,"ngSwitch"],["class","ant-upload-list-item-thumbnail",3,"ant-upload-list-item-file",4,"ngSwitchCase"],["class","ant-upload-list-item-thumbnail","target","_blank","rel","noopener noreferrer",3,"ant-upload-list-item-file","href","click",4,"ngSwitchCase"],["class","ant-upload-text-icon",4,"ngSwitchDefault"],["noImageThumbTpl",""],[1,"ant-upload-list-item-thumbnail"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],["target","_blank","rel","noopener noreferrer",1,"ant-upload-list-item-thumbnail",3,"href","click"],["class","ant-upload-list-item-image",3,"src",4,"ngIf","ngIfElse"],[1,"ant-upload-list-item-image",3,"src"],[1,"ant-upload-text-icon"],[4,"ngIf","ngIfElse"],["customIconRender",""],["iconNodeFileIcon",""],[4,"ngSwitchCase"],["nz-icon","",3,"nzType",4,"ngSwitchDefault"],["nz-icon","","nzType","loading"],["nz-icon","",3,"nzType"],["nz-icon","","nzTheme","twotone",3,"nzType"],["type","button","nz-button","","nzType","text","nzSize","small","class","ant-upload-list-item-card-actions-btn",3,"click",4,"ngIf"],["type","button","nz-button","","nzType","text","nzSize","small",1,"ant-upload-list-item-card-actions-btn",3,"click"],["nz-icon","","nzType","delete"],["nz-icon","","nzType","download"],[3,"class",4,"ngIf"],["target","_blank","rel","noopener noreferrer","class","ant-upload-list-item-name",3,"href","click",4,"ngIf"],["class","ant-upload-list-item-name",3,"click",4,"ngIf"],["target","_blank","rel","noopener noreferrer",1,"ant-upload-list-item-name",3,"href","click"],[1,"ant-upload-list-item-name",3,"click"],[1,"ant-upload-list-item-actions"],["target","_blank","rel","noopener noreferrer",3,"href","ngStyle","click",4,"ngIf"],[4,"ngIf"],["target","_blank","rel","noopener noreferrer",3,"href","ngStyle","click"],["nz-icon","","nzType","eye"],[1,"ant-upload-list-item-progress"],["nzType","line",3,"nzPercent","nzShowInfo","nzStrokeWidth"]],template:function(he,ze){1&he&&t.YNc(0,cn,20,14,"div",0),2&he&&t.Q6J("ngForOf",ze.list)},dependencies:[f.sg,f.O5,f.tP,f.PC,f.RF,f.n9,f.ED,T.SY,x.M,D.Ls,_.ix,P.w],encapsulation:2,data:{animation:[(0,p.X$)("itemState",[(0,p.eR)(":enter",[(0,p.oB)({height:"0",width:"0",opacity:0}),(0,p.jt)(150,(0,p.oB)({height:"*",width:"*",opacity:1}))]),(0,p.eR)(":leave",[(0,p.jt)(150,(0,p.oB)({height:"0",width:"0",opacity:0}))])])]},changeDetection:0})}return S})(),b=(()=>{class S{set nzShowUploadList(R){this._showUploadList="boolean"==typeof R?(0,A.sw)(R):R}get nzShowUploadList(){return this._showUploadList}zipOptions(){"boolean"==typeof this.nzShowUploadList&&this.nzShowUploadList&&(this.nzShowUploadList={showPreviewIcon:!0,showRemoveIcon:!0,showDownloadIcon:!0});const R=this.nzFilter.slice();if(this.nzMultiple&&this.nzLimit>0&&-1===R.findIndex(he=>"limit"===he.name)&&R.push({name:"limit",fn:he=>he.slice(-this.nzLimit)}),this.nzSize>0&&-1===R.findIndex(he=>"size"===he.name)&&R.push({name:"size",fn:he=>he.filter(ze=>ze.size/1024<=this.nzSize)}),this.nzFileType&&this.nzFileType.length>0&&-1===R.findIndex(he=>"type"===he.name)){const he=this.nzFileType.split(",");R.push({name:"type",fn:ze=>ze.filter(bt=>~he.indexOf(bt.type))})}return this._btnOptions={disabled:this.nzDisabled,accept:this.nzAccept,action:this.nzAction,directory:this.nzDirectory,openFileDialogOnClick:this.nzOpenFileDialogOnClick,beforeUpload:this.nzBeforeUpload,customRequest:this.nzCustomRequest,data:this.nzData,headers:this.nzHeaders,name:this.nzName,multiple:this.nzMultiple,withCredentials:this.nzWithCredentials,filters:R,transformFile:this.nzTransformFile,onStart:this.onStart,onProgress:this.onProgress,onSuccess:this.onSuccess,onError:this.onError},this}constructor(R,he,ze,bt,Ft){this.ngZone=R,this.document=he,this.cdr=ze,this.i18n=bt,this.directionality=Ft,this.destroy$=new E.x,this.dir="ltr",this.nzType="select",this.nzLimit=0,this.nzSize=0,this.nzDirectory=!1,this.nzOpenFileDialogOnClick=!0,this.nzFilter=[],this.nzFileList=[],this.nzDisabled=!1,this.nzListType="text",this.nzMultiple=!1,this.nzName="file",this._showUploadList=!0,this.nzShowButton=!0,this.nzWithCredentials=!1,this.nzIconRender=null,this.nzFileListRender=null,this.nzChange=new t.vpe,this.nzFileListChange=new t.vpe,this.onStart=sn=>{this.nzFileList||(this.nzFileList=[]);const pn=this.fileToObject(sn);pn.status="uploading",this.nzFileList=this.nzFileList.concat(pn),this.nzFileListChange.emit(this.nzFileList),this.nzChange.emit({file:pn,fileList:this.nzFileList,type:"start"}),this.detectChangesList()},this.onProgress=(sn,pn)=>{const Dn=this.getFileItem(pn,this.nzFileList);Dn.percent=sn.percent,this.nzChange.emit({event:sn,file:{...Dn},fileList:this.nzFileList,type:"progress"}),this.detectChangesList()},this.onSuccess=(sn,pn)=>{const vn=this.nzFileList,Dn=this.getFileItem(pn,vn);Dn.status="done",Dn.response=sn,this.nzChange.emit({file:{...Dn},fileList:vn,type:"success"}),this.detectChangesList()},this.onError=(sn,pn)=>{const vn=this.nzFileList,Dn=this.getFileItem(pn,vn);Dn.error=sn,Dn.status="error",this.nzChange.emit({file:{...Dn},fileList:vn,type:"error"}),this.detectChangesList()},this.onRemove=sn=>{this.uploadComp.abort(sn),sn.status="removed";const pn="function"==typeof this.nzRemove?this.nzRemove(sn):null==this.nzRemove||this.nzRemove;(pn instanceof l.y?pn:(0,i.of)(pn)).pipe((0,g.h)(vn=>vn)).subscribe(()=>{this.nzFileList=this.removeFileItem(sn,this.nzFileList),this.nzChange.emit({file:sn,fileList:this.nzFileList,type:"removed"}),this.nzFileListChange.emit(this.nzFileList),this.cdr.detectChanges()})},this.prefixCls="ant-upload",this.classList=[]}fileToObject(R){return{lastModified:R.lastModified,lastModifiedDate:R.lastModifiedDate,name:R.filename||R.name,size:R.size,type:R.type,uid:R.uid,response:R.response,error:R.error,percent:0,originFileObj:R}}getFileItem(R,he){return he.filter(ze=>ze.uid===R.uid)[0]}removeFileItem(R,he){return he.filter(ze=>ze.uid!==R.uid)}fileDrop(R){R.type!==this.dragState&&(this.dragState=R.type,this.setClassMap())}detectChangesList(){this.cdr.detectChanges(),this.listComp?.detectChanges()}setClassMap(){let R=[];"drag"===this.nzType?(this.nzFileList.some(he=>"uploading"===he.status)&&R.push(`${this.prefixCls}-drag-uploading`),"dragover"===this.dragState&&R.push(`${this.prefixCls}-drag-hover`)):R=[`${this.prefixCls}-select-${this.nzListType}`],this.classList=[this.prefixCls,`${this.prefixCls}-${this.nzType}`,...R,this.nzDisabled&&`${this.prefixCls}-disabled`||"","rtl"===this.dir&&`${this.prefixCls}-rtl`||""].filter(he=>!!he),this.cdr.detectChanges()}ngOnInit(){this.dir=this.directionality.value,this.directionality.change?.pipe((0,v.R)(this.destroy$)).subscribe(R=>{this.dir=R,this.setClassMap(),this.cdr.detectChanges()}),this.i18n.localeChange.pipe((0,v.R)(this.destroy$)).subscribe(()=>{this.locale=this.i18n.getLocaleData("Upload"),this.detectChangesList()})}ngAfterViewInit(){this.ngZone.runOutsideAngular(()=>(0,u.R)(this.document.body,"drop").pipe((0,v.R)(this.destroy$)).subscribe(R=>{R.preventDefault(),R.stopPropagation()}))}ngOnChanges(){this.zipOptions().setClassMap()}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static#e=this.\u0275fac=function(he){return new(he||S)(t.Y36(t.R0b),t.Y36(f.K0),t.Y36(t.sBO),t.Y36(k.wi),t.Y36(F.Is,8))};static#t=this.\u0275cmp=t.Xpm({type:S,selectors:[["nz-upload"]],viewQuery:function(he,ze){if(1&he&&(t.Gf(Wt,5),t.Gf(Vt,5)),2&he){let bt;t.iGM(bt=t.CRH())&&(ze.uploadComp=bt.first),t.iGM(bt=t.CRH())&&(ze.listComp=bt.first)}},hostVars:2,hostBindings:function(he,ze){2&he&&t.ekj("ant-upload-picture-card-wrapper","picture-card"===ze.nzListType)},inputs:{nzType:"nzType",nzLimit:"nzLimit",nzSize:"nzSize",nzFileType:"nzFileType",nzAccept:"nzAccept",nzAction:"nzAction",nzDirectory:"nzDirectory",nzOpenFileDialogOnClick:"nzOpenFileDialogOnClick",nzBeforeUpload:"nzBeforeUpload",nzCustomRequest:"nzCustomRequest",nzData:"nzData",nzFilter:"nzFilter",nzFileList:"nzFileList",nzDisabled:"nzDisabled",nzHeaders:"nzHeaders",nzListType:"nzListType",nzMultiple:"nzMultiple",nzName:"nzName",nzShowUploadList:"nzShowUploadList",nzShowButton:"nzShowButton",nzWithCredentials:"nzWithCredentials",nzRemove:"nzRemove",nzPreview:"nzPreview",nzPreviewFile:"nzPreviewFile",nzPreviewIsImage:"nzPreviewIsImage",nzTransformFile:"nzTransformFile",nzDownload:"nzDownload",nzIconRender:"nzIconRender",nzFileListRender:"nzFileListRender"},outputs:{nzChange:"nzChange",nzFileListChange:"nzFileListChange"},exportAs:["nzUpload"],features:[t.TTD],ngContentSelectors:Y,decls:11,vars:2,consts:[["list",""],["con",""],["btn",""],[4,"ngIf","ngIfElse"],["select",""],["pic",""],[3,"display","locale","listType","items","icons","iconRender","previewFile","previewIsImage","onPreview","onRemove","onDownload","dir",4,"ngIf"],[4,"ngIf"],[3,"locale","listType","items","icons","iconRender","previewFile","previewIsImage","onPreview","onRemove","onDownload","dir"],["listComp",""],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"ngClass"],["nz-upload-btn","",3,"options"],["uploadComp",""],[3,"ngTemplateOutlet"],[3,"ngClass","drop","dragover","dragleave"],["nz-upload-btn","",1,"ant-upload-btn",3,"options"],[1,"ant-upload-drag-container"]],template:function(he,ze){if(1&he&&(t.F$t(),t.YNc(0,Ot,2,2,"ng-template",null,0,t.W1O),t.YNc(2,xt,1,0,"ng-template",null,1,t.W1O),t.YNc(4,ke,4,5,"ng-template",null,2,t.W1O),t.YNc(6,ge,7,4,"ng-container",3),t.YNc(7,wt,1,2,"ng-template",null,4,t.W1O),t.YNc(9,Je,2,2,"ng-template",null,5,t.W1O)),2&he){const bt=t.MAs(8);t.xp6(6),t.Q6J("ngIf","drag"===ze.nzType)("ngIfElse",bt)}},dependencies:[F.Lv,f.mk,f.O5,f.tP,Ge,it],encapsulation:2,changeDetection:0})}return(0,O.gn)([(0,A.Rn)()],S.prototype,"nzLimit",void 0),(0,O.gn)([(0,A.Rn)()],S.prototype,"nzSize",void 0),(0,O.gn)([(0,A.yF)()],S.prototype,"nzDirectory",void 0),(0,O.gn)([(0,A.yF)()],S.prototype,"nzOpenFileDialogOnClick",void 0),(0,O.gn)([(0,A.yF)()],S.prototype,"nzDisabled",void 0),(0,O.gn)([(0,A.yF)()],S.prototype,"nzMultiple",void 0),(0,O.gn)([(0,A.yF)()],S.prototype,"nzShowButton",void 0),(0,O.gn)([(0,A.yF)()],S.prototype,"nzWithCredentials",void 0),S})(),N=(()=>{class S{static#e=this.\u0275fac=function(he){return new(he||S)};static#t=this.\u0275mod=t.oAB({type:S});static#n=this.\u0275inj=t.cJS({imports:[F.vT,f.ez,W.u5,y.ud,T.cg,x.W,k.YI,D.PV,_.sL]})}return S})()},45567:(nt,I,o)=>{"use strict";o.d(I,{fq:()=>ct,KY:()=>Re});var e=o(65879),n=o(96814),t=o(78645),i=o(47394),l=o(92438),C=o(93997),E=o(83620),u=o(99397),z=o(30889),M=o(60095);function h(Ae,Mt){if(1&Ae){const je=e.EpF();e.TgZ(0,"span",3),e.NdJ("mousedown",function(mt){e.CHM(je);const we=e.oxw();return e.KtG(we.handleMousedown(mt))}),e._uU(1),e.qZA()}if(2&Ae){const je=e.oxw();e.Q6J("id",je.uniqueId)("ngStyle",je.labelStyle),e.xp6(1),e.hij(" ",je.label," ")}}function v(Ae,Mt){if(1&Ae&&(e.TgZ(0,"div",2),e._UZ(1,"div",3),e.qZA()),2&Ae){const je=e.oxw();e.Udp("left",je.left)("top",je.top),e.xp6(1),e.Q6J("ngStyle",je.pointer)}}const g=["*"];function d(Ae,Mt){1&Ae&&e._UZ(0,"color-checkboard",2)}const p={};let T=(()=>{class Ae{white="transparent";size=8;grey="rgba(0,0,0,.08)";boxShadow;borderRadius;gridStyles;ngOnInit(){const je=function y(Ae,Mt,je){const ot=`${Ae}-${Mt}-${je}`;if(p[ot])return p[ot];const mt=function f(Ae,Mt,je){if(typeof document>"u")return null;const ot=document.createElement("canvas");ot.width=2*je,ot.height=2*je;const mt=ot.getContext("2d");return mt?(mt.fillStyle=Ae,mt.fillRect(0,0,ot.width,ot.height),mt.fillStyle=Mt,mt.fillRect(0,0,je,je),mt.translate(je,je),mt.fillRect(0,0,je,je),ot.toDataURL()):null}(Ae,Mt,je);return mt?(p[ot]=mt,mt):null}(this.white,this.grey,this.size);this.gridStyles={borderRadius:this.borderRadius,boxShadow:this.boxShadow,background:`url(${je}) center left`}}static \u0275fac=function(ot){return new(ot||Ae)};static \u0275cmp=e.Xpm({type:Ae,selectors:[["color-checkboard"]],inputs:{white:"white",size:"size",grey:"grey",boxShadow:"boxShadow",borderRadius:"borderRadius"},decls:1,vars:1,consts:[[1,"grid",3,"ngStyle"]],template:function(ot,mt){1&ot&&e._UZ(0,"div",0),2&ot&&e.Q6J("ngStyle",mt.gridStyles)},dependencies:[n.PC],styles:[".grid[_ngcontent-%COMP%]{inset:0;position:absolute}"],changeDetection:0})}return Ae})(),x=(()=>{class Ae{static \u0275fac=function(ot){return new(ot||Ae)};static \u0275mod=e.oAB({type:Ae});static \u0275inj=e.cJS({imports:[n.ez]})}return Ae})(),D=(()=>{class Ae{el;coordinatesChange=new t.x;mousechange=new t.x;mouseListening=!1;sub;mousemove(je,ot,mt,we=!1){this.mouseListening&&(je.preventDefault(),this.mousechange.next({$event:je,x:ot,y:mt,isTouch:we}))}mouseup(){this.mouseListening=!1}mousedown(je,ot,mt,we=!1){je.preventDefault(),this.mouseListening=!0,this.mousechange.next({$event:je,x:ot,y:mt,isTouch:we})}constructor(je){this.el=je}ngOnInit(){this.sub=this.mousechange.pipe((0,C.x)((je,ot)=>je.x===ot.x&&je.y===ot.y)).subscribe(je=>this.handleChange(je.x,je.y,je.$event,je.isTouch))}ngOnDestroy(){this.sub?.unsubscribe()}handleChange(je,ot,mt,we){const de=this.el.nativeElement.clientWidth,U=this.el.nativeElement.clientHeight,B=je-(this.el.nativeElement.getBoundingClientRect().left+window.pageXOffset);let Ee=ot-this.el.nativeElement.getBoundingClientRect().top;we||(Ee-=window.pageYOffset),this.coordinatesChange.next({x:je,y:ot,top:Ee,left:B,containerWidth:de,containerHeight:U,$event:mt})}static \u0275fac=function(ot){return new(ot||Ae)(e.Y36(e.SBq))};static \u0275dir=e.lG2({type:Ae,selectors:[["","ngx-color-coordinates",""]],hostBindings:function(ot,mt){1&ot&&e.NdJ("mousemove",function(de){return mt.mousemove(de,de.pageX,de.pageY)},!1,e.Jf7)("touchmove",function(de){return mt.mousemove(de,de.touches[0].clientX,de.touches[0].clientY,!0)},!1,e.Jf7)("mouseup",function(){return mt.mouseup()},!1,e.Jf7)("touchend",function(){return mt.mouseup()},!1,e.Jf7)("mousedown",function(de){return mt.mousedown(de,de.pageX,de.pageY)})("touchstart",function(de){return mt.mousedown(de,de.touches[0].clientX,de.touches[0].clientY,!0)})},outputs:{coordinatesChange:"coordinatesChange"}})}return Ae})(),_=(()=>{class Ae{static \u0275fac=function(ot){return new(ot||Ae)};static \u0275mod=e.oAB({type:Ae});static \u0275inj=e.cJS({})}return Ae})(),P=(()=>{class Ae{hsl;rgb;pointer;shadow;radius;direction="horizontal";onChange=new e.vpe;gradient;pointerLeft;pointerTop;ngOnChanges(){"vertical"===this.direction?(this.pointerLeft=0,this.pointerTop=100*this.rgb.a,this.gradient={background:`linear-gradient(to bottom, rgba(${this.rgb.r},${this.rgb.g},${this.rgb.b}, 0) 0%,\n rgba(${this.rgb.r},${this.rgb.g},${this.rgb.b}, 1) 100%)`}):(this.gradient={background:`linear-gradient(to right, rgba(${this.rgb.r},${this.rgb.g},${this.rgb.b}, 0) 0%,\n rgba(${this.rgb.r},${this.rgb.g},${this.rgb.b}, 1) 100%)`},this.pointerLeft=100*this.rgb.a)}handleChange({top:je,left:ot,containerHeight:mt,containerWidth:we,$event:de}){let U;if("vertical"===this.direction){let B;B=je<0?0:je>mt?1:Math.round(100*je/mt)/100,this.hsl.a!==B&&(U={h:this.hsl.h,s:this.hsl.s,l:this.hsl.l,a:B,source:"rgb"})}else{let B;B=ot<0?0:ot>we?1:Math.round(100*ot/we)/100,this.hsl.a!==B&&(U={h:this.hsl.h,s:this.hsl.s,l:this.hsl.l,a:B,source:"rgb"})}U&&this.onChange.emit({data:U,$event:de})}static \u0275fac=function(ot){return new(ot||Ae)};static \u0275cmp=e.Xpm({type:Ae,selectors:[["color-alpha"]],inputs:{hsl:"hsl",rgb:"rgb",pointer:"pointer",shadow:"shadow",radius:"radius",direction:"direction"},outputs:{onChange:"onChange"},features:[e.TTD],decls:7,vars:15,consts:[[1,"alpha"],[1,"alpha-checkboard"],[1,"alpha-gradient",3,"ngStyle"],["ngx-color-coordinates","",3,"coordinatesChange"],[1,"alpha-pointer"],[1,"alpha-slider",3,"ngStyle"]],template:function(ot,mt){1&ot&&(e.TgZ(0,"div",0)(1,"div",1),e._UZ(2,"color-checkboard"),e.qZA(),e._UZ(3,"div",2),e.TgZ(4,"div",3),e.NdJ("coordinatesChange",function(de){return mt.handleChange(de)}),e.TgZ(5,"div",4),e._UZ(6,"div",5),e.qZA()()()),2&ot&&(e.Udp("border-radius",mt.radius),e.xp6(3),e.Udp("box-shadow",mt.shadow)("border-radius",mt.radius),e.Q6J("ngStyle",mt.gradient),e.xp6(1),e.Gre("alpha-container color-alpha-",mt.direction,""),e.xp6(1),e.Udp("left",mt.pointerLeft,"%")("top",mt.pointerTop,"%"),e.xp6(1),e.Q6J("ngStyle",mt.pointer))},dependencies:[n.PC,T,D],styles:[".alpha[_ngcontent-%COMP%]{position:absolute;inset:0}.alpha-checkboard[_ngcontent-%COMP%]{position:absolute;inset:0;overflow:hidden}.alpha-gradient[_ngcontent-%COMP%]{position:absolute;inset:0}.alpha-container[_ngcontent-%COMP%]{position:relative;height:100%;margin:0 3px}.alpha-pointer[_ngcontent-%COMP%]{position:absolute}.alpha-slider[_ngcontent-%COMP%]{width:4px;border-radius:1px;height:8px;box-shadow:0 0 2px #0009;background:#fff;margin-top:1px;transform:translate(-2px)}"],changeDetection:0})}return Ae})(),O=(()=>{class Ae{static \u0275fac=function(ot){return new(ot||Ae)};static \u0275mod=e.oAB({type:Ae});static \u0275inj=e.cJS({imports:[n.ez,x,_]})}return Ae})();function A(Ae){let je=0,ot=0;return["r","g","b","a","h","s","l","v"].forEach(mt=>{Ae[mt]&&(je+=1,isNaN(Ae[mt])||(ot+=1),("s"===mt||"l"===mt)&&/^\d+%$/.test(Ae[mt])&&(ot+=1))}),je===ot&&Ae}function k(Ae,Mt,je){const ot=new z.C(Ae.hex?Ae.hex:Ae);je&&ot.setAlpha(1);const mt=ot.toHsl(),we=ot.toHsv(),de=ot.toRgb(),U=ot.toHex();return 0===mt.s&&(mt.h=Mt||0,we.h=Mt||0),{hsl:mt,hex:"000000"===U&&0===de.a?"transparent":ot.toHexString(),rgb:de,hsv:we,oldHue:Ae.h||Mt||mt.h,source:Ae.source}}function F(Ae){return new z.C(Ae).isValid}var K=function(Ae){return Ae.HEX="hex",Ae.HSL="hsl",Ae.HSV="hsv",Ae.RGB="rgb",Ae}(K||{});let _e=(()=>{class Ae{className;mode=K.HEX;color={h:250,s:.5,l:.2,a:1};colorChange=new e.vpe;onChange=new e.vpe;onChangeComplete=new e.vpe;onSwatchHover=new e.vpe;oldHue;hsl;hsv;rgb;hex;source;currentColor;changes;disableAlpha;_onChangeCompleteSubscription=new i.w0;_onSwatchHoverSubscription=new i.w0;ngOnInit(){this.changes=this.onChange.pipe((0,E.b)(100),(0,u.b)(je=>{switch(this.onChangeComplete.emit(je),this.mode){case K.HEX:this.colorChange.emit(je.color.hex);break;case K.HSL:this.colorChange.emit(je.color.hsl);break;case K.HSV:this.colorChange.emit(je.color.hsv);break;case K.RGB:this.colorChange.emit(je.color.rgb);break;default:const ot=`The mode '${this.mode}' is not supported`;if((0,e.X6Q)())throw new Error(ot);console.warn(ot)}})).subscribe(),this.setState(k(this.color,0)),this.currentColor=this.hex}ngOnChanges(){this.setState(k(this.color,this.oldHue))}ngOnDestroy(){this.changes?.unsubscribe(),this._onChangeCompleteSubscription?.unsubscribe(),this._onSwatchHoverSubscription?.unsubscribe()}setState(je){this.oldHue=je.oldHue,this.hsl=je.hsl,this.hsv=je.hsv,this.rgb=je.rgb,this.hex=je.hex,this.source=je.source,this.afterValidChange()}handleChange(je,ot){if(A(je)){const we=k(je,je.h||this.oldHue,this.disableAlpha);this.setState(we),this.onChange.emit({color:we,$event:ot}),this.afterValidChange()}}afterValidChange(){}handleSwatchHover(je,ot){if(A(je)){const we=k(je,je.h||this.oldHue);this.setState(we),this.onSwatchHover.emit({color:we,$event:ot})}}registerOnChange(je){this._onChangeCompleteSubscription.add(this.onChangeComplete.pipe((0,u.b)(ot=>je(ot.color.hex))).subscribe())}registerOnTouched(je){this._onSwatchHoverSubscription.add(this.onSwatchHover.pipe((0,u.b)(()=>je())).subscribe())}setDisabledState(je){}writeValue(je){this.color=je}static \u0275fac=function(ot){return new(ot||Ae)};static \u0275cmp=e.Xpm({type:Ae,selectors:[["color-wrap"]],inputs:{className:"className",mode:"mode",color:"color"},outputs:{colorChange:"colorChange",onChange:"onChange",onChangeComplete:"onChangeComplete",onSwatchHover:"onSwatchHover"},features:[e._Bn([{provide:M.JU,useExisting:(0,e.Gpc)(()=>Ae),multi:!0}]),e.TTD],decls:0,vars:0,template:function(ot,mt){},encapsulation:2})}return Ae})(),G=0,H=(()=>{class Ae{style;label;value;arrowOffset;dragLabel;dragMax;placeholder="";onChange=new e.vpe;currentValue;blurValue;wrapStyle;inputStyle;labelStyle;focus=!1;mousemove;mouseup;uniqueId="editableInput-"+ ++G;ngOnInit(){this.wrapStyle=this.style&&this.style.wrap?this.style.wrap:{},this.inputStyle=this.style&&this.style.input?this.style.input:{},this.labelStyle=this.style&&this.style.label?this.style.label:{},this.dragLabel&&(this.labelStyle.cursor="ew-resize")}handleFocus(je){this.focus=!0}handleFocusOut(je){this.focus=!1,this.currentValue=this.blurValue}handleKeydown(je){const ot=String(je.target.value),mt=ot.indexOf("%")>-1,we=Number(ot.replace(/%/g,""));if(isNaN(we))return;const de=this.arrowOffset||1;38===je.keyCode&&(this.onChange.emit(this.label?{data:{[this.label]:we+de},$event:je}:{data:we+de,$event:je}),this.currentValue=mt?`${we+de}%`:we+de),40===je.keyCode&&(this.onChange.emit(this.label?{data:{[this.label]:we-de},$event:je}:{data:we-de,$event:je}),this.currentValue=mt?we-de+"%":we-de)}handleKeyup(je){40===je.keyCode||38===je.keyCode||`${this.currentValue}`!==je.target.value&&this.onChange.emit(this.label?{data:{[this.label]:je.target.value},$event:je}:{data:je.target.value,$event:je})}ngOnChanges(){this.focus||(this.currentValue=String(this.value).toUpperCase()),this.blurValue=String(this.value).toUpperCase()}ngOnDestroy(){this.unsubscribe()}subscribe(){this.mousemove=(0,l.R)(document,"mousemove").subscribe(je=>this.handleDrag(je)),this.mouseup=(0,l.R)(document,"mouseup").subscribe(()=>this.unsubscribe())}unsubscribe(){this.mousemove?.unsubscribe(),this.mouseup?.unsubscribe()}handleMousedown(je){this.dragLabel&&(je.preventDefault(),this.handleDrag(je),this.subscribe())}handleDrag(je){if(this.dragLabel){const ot=Math.round(this.value+je.movementX);ot>=0&&ot<=this.dragMax&&this.onChange.emit({data:{[this.label]:ot},$event:je})}}static \u0275fac=function(ot){return new(ot||Ae)};static \u0275cmp=e.Xpm({type:Ae,selectors:[["color-editable-input"]],inputs:{style:"style",label:"label",value:"value",arrowOffset:"arrowOffset",dragLabel:"dragLabel",dragMax:"dragMax",placeholder:"placeholder"},outputs:{onChange:"onChange"},features:[e.TTD],decls:3,vars:6,consts:[[1,"wrap",3,"ngStyle"],["spellCheck","false",3,"ngStyle","value","placeholder","keydown","keyup","focus","focusout"],[3,"id","ngStyle","mousedown",4,"ngIf"],[3,"id","ngStyle","mousedown"]],template:function(ot,mt){1&ot&&(e.TgZ(0,"div",0)(1,"input",1),e.NdJ("keydown",function(de){return mt.handleKeydown(de)})("keyup",function(de){return mt.handleKeyup(de)})("focus",function(de){return mt.handleFocus(de)})("focusout",function(de){return mt.handleFocusOut(de)}),e.qZA(),e.YNc(2,h,2,3,"span",2),e.qZA()),2&ot&&(e.Q6J("ngStyle",mt.wrapStyle),e.xp6(1),e.Q6J("ngStyle",mt.inputStyle)("value",mt.currentValue)("placeholder",mt.placeholder),e.uIk("aria-labelledby",mt.uniqueId),e.xp6(1),e.Q6J("ngIf",mt.label))},dependencies:[n.O5,n.PC],styles:["[_nghost-%COMP%]{display:flex}.wrap[_ngcontent-%COMP%]{position:relative}"],changeDetection:0})}return Ae})(),j=(()=>{class Ae{static \u0275fac=function(ot){return new(ot||Ae)};static \u0275mod=e.oAB({type:Ae});static \u0275inj=e.cJS({imports:[n.ez]})}return Ae})(),te=(()=>{class Ae{hsl;pointer;radius;shadow;hidePointer=!1;direction="horizontal";onChange=new e.vpe;left="0px";top="";ngOnChanges(){"horizontal"===this.direction?this.left=100*this.hsl.h/360+"%":this.top=-100*this.hsl.h/360+100+"%"}handleChange({top:je,left:ot,containerHeight:mt,containerWidth:we,$event:de}){let U;if("vertical"===this.direction){let B;B=je<0?359:je>mt?0:360*(-100*je/mt+100)/100,this.hsl.h!==B&&(U={h:B,s:this.hsl.s,l:this.hsl.l,a:this.hsl.a,source:"rgb"})}else{let B;B=ot<0?0:ot>we?359:100*ot/we*360/100,this.hsl.h!==B&&(U={h:B,s:this.hsl.s,l:this.hsl.l,a:this.hsl.a,source:"rgb"})}U&&this.onChange.emit({data:U,$event:de})}static \u0275fac=function(ot){return new(ot||Ae)};static \u0275cmp=e.Xpm({type:Ae,selectors:[["color-hue"]],inputs:{hsl:"hsl",pointer:"pointer",radius:"radius",shadow:"shadow",hidePointer:"hidePointer",direction:"direction"},outputs:{onChange:"onChange"},features:[e.TTD],decls:3,vars:8,consts:[["ngx-color-coordinates","",1,"color-hue-container",3,"coordinatesChange"],["class","color-hue-pointer",3,"left","top",4,"ngIf"],[1,"color-hue-pointer"],[1,"color-hue-slider",3,"ngStyle"]],template:function(ot,mt){1&ot&&(e.TgZ(0,"div")(1,"div",0),e.NdJ("coordinatesChange",function(de){return mt.handleChange(de)}),e.YNc(2,v,2,5,"div",1),e.qZA()()),2&ot&&(e.Gre("color-hue color-hue-",mt.direction,""),e.Udp("border-radius",mt.radius,"px")("box-shadow",mt.shadow),e.xp6(2),e.Q6J("ngIf",!mt.hidePointer))},dependencies:[n.O5,n.PC,D],styles:[".color-hue[_ngcontent-%COMP%]{position:absolute;inset:0}.color-hue-container[_ngcontent-%COMP%]{margin:0 2px;position:relative;height:100%}.color-hue-pointer[_ngcontent-%COMP%]{position:absolute}.color-hue-slider[_ngcontent-%COMP%]{margin-top:1px;width:4px;border-radius:1px;height:8px;box-shadow:0 0 2px #0009;background:#fff;transform:translate(-2px)}.color-hue-horizontal[_ngcontent-%COMP%]{background:linear-gradient(to right,#f00 0%,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,#f00 100%)}.color-hue-vertical[_ngcontent-%COMP%]{background:linear-gradient(to top,#f00 0%,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,#f00 100%)}"],changeDetection:0})}return Ae})(),ne=(()=>{class Ae{static \u0275fac=function(ot){return new(ot||Ae)};static \u0275mod=e.oAB({type:Ae});static \u0275inj=e.cJS({imports:[n.ez,_]})}return Ae})(),be=(()=>{class Ae{hsl;hsv;radius;pointer;circle;onChange=new e.vpe;background;pointerTop;pointerLeft;ngOnChanges(){this.background=`hsl(${this.hsl.h}, 100%, 50%)`,this.pointerTop=-100*this.hsv.v+1+100+"%",this.pointerLeft=100*this.hsv.s+"%"}handleChange({top:je,left:ot,containerHeight:mt,containerWidth:we,$event:de}){ot<0?ot=0:ot>we?ot=we:je<0?je=0:je>mt&&(je=mt);let B=-je/mt+1;B=B>0?B:0,B=B>1?1:B,this.onChange.emit({data:{h:this.hsl.h,s:ot/we,v:B,a:this.hsl.a,source:"hsva"},$event:de})}static \u0275fac=function(ot){return new(ot||Ae)};static \u0275cmp=e.Xpm({type:Ae,selectors:[["color-saturation"]],inputs:{hsl:"hsl",hsv:"hsv",radius:"radius",pointer:"pointer",circle:"circle"},outputs:{onChange:"onChange"},features:[e.TTD],decls:5,vars:8,consts:[["ngx-color-coordinates","",1,"color-saturation",3,"coordinatesChange"],[1,"saturation-white"],[1,"saturation-black"],[1,"saturation-pointer",3,"ngStyle"],[1,"saturation-circle",3,"ngStyle"]],template:function(ot,mt){1&ot&&(e.TgZ(0,"div",0),e.NdJ("coordinatesChange",function(de){return mt.handleChange(de)}),e.TgZ(1,"div",1),e._UZ(2,"div",2),e.TgZ(3,"div",3),e._UZ(4,"div",4),e.qZA()()()),2&ot&&(e.Udp("background",mt.background),e.xp6(3),e.Udp("top",mt.pointerTop)("left",mt.pointerLeft),e.Q6J("ngStyle",mt.pointer),e.xp6(1),e.Q6J("ngStyle",mt.circle))},dependencies:[n.PC,D],styles:[".saturation-white[_ngcontent-%COMP%]{background:linear-gradient(to right,#fff,rgba(255,255,255,0));position:absolute;inset:0}.saturation-black[_ngcontent-%COMP%]{background:linear-gradient(to top,#000,rgba(0,0,0,0));position:absolute;inset:0}.color-saturation[_ngcontent-%COMP%]{position:absolute;inset:0}.saturation-pointer[_ngcontent-%COMP%]{position:absolute;cursor:default}.saturation-circle[_ngcontent-%COMP%]{width:4px;height:4px;box-shadow:0 0 0 1.5px #fff,inset 0 0 1px 1px #0000004d,0 0 1px 2px #0006;border-radius:50%;cursor:hand;transform:translate(-2px,-4px)}"],changeDetection:0})}return Ae})(),le=(()=>{class Ae{static \u0275fac=function(ot){return new(ot||Ae)};static \u0275mod=e.oAB({type:Ae});static \u0275inj=e.cJS({imports:[n.ez,_]})}return Ae})(),ce=(()=>{class Ae{color;style={};focusStyle={};focus;onClick=new e.vpe;onHover=new e.vpe;divStyles={};focusStyles={};inFocus=!1;ngOnInit(){this.divStyles={background:this.color,...this.style}}currentStyles(){return this.focusStyles={...this.divStyles,...this.focusStyle},this.focus||this.inFocus?this.focusStyles:this.divStyles}handleFocusOut(){this.inFocus=!1}handleFocus(){this.inFocus=!0}handleHover(je,ot){this.onHover.emit({hex:je,$event:ot})}handleClick(je,ot){this.onClick.emit({hex:je,$event:ot})}static \u0275fac=function(ot){return new(ot||Ae)};static \u0275cmp=e.Xpm({type:Ae,selectors:[["color-swatch"]],inputs:{color:"color",style:"style",focusStyle:"focusStyle",focus:"focus"},outputs:{onClick:"onClick",onHover:"onHover"},ngContentSelectors:g,decls:3,vars:3,consts:[["tabindex","0",1,"swatch",3,"ngStyle","click","keydown.enter","focus","blur","mouseover"],["boxShadow","inset 0 0 0 1px rgba(0,0,0,0.1)",4,"ngIf"],["boxShadow","inset 0 0 0 1px rgba(0,0,0,0.1)"]],template:function(ot,mt){1&ot&&(e.F$t(),e.TgZ(0,"div",0),e.NdJ("click",function(de){return mt.handleClick(mt.color,de)})("keydown.enter",function(de){return mt.handleClick(mt.color,de)})("focus",function(){return mt.handleFocus()})("blur",function(){return mt.handleFocusOut()})("mouseover",function(de){return mt.handleHover(mt.color,de)}),e.Hsn(1),e.YNc(2,d,1,0,"color-checkboard",1),e.qZA()),2&ot&&(e.Q6J("ngStyle",mt.currentStyles()),e.uIk("title",mt.color),e.xp6(2),e.Q6J("ngIf","transparent"===mt.color))},dependencies:[n.O5,n.PC,T],styles:[".swatch[_ngcontent-%COMP%]{outline:none;height:100%;width:100%;cursor:pointer;position:relative}"],changeDetection:0})}return Ae})(),Q=(()=>{class Ae{static \u0275fac=function(ot){return new(ot||Ae)};static \u0275mod=e.oAB({type:Ae});static \u0275inj=e.cJS({imports:[n.ez,x]})}return Ae})();const xe=function(Ae,Mt){return{input:Ae,label:Mt}};function Me(Ae,Mt){if(1&Ae){const je=e.EpF();e.TgZ(0,"div",8)(1,"color-editable-input",9),e.NdJ("onChange",function(mt){e.CHM(je);const we=e.oxw();return e.KtG(we.handleChange(mt))}),e.qZA()()}if(2&Ae){const je=e.oxw();e.xp6(1),e.Akn(e.WLB(5,xe,je.input,je.label)),e.Q6J("value",je.round(100*je.rgb.a))("dragLabel",!0)("dragMax",100)}}function Ye(Ae,Mt){if(1&Ae){const je=e.EpF();e.TgZ(0,"div",2)(1,"color-swatch",3),e.NdJ("onClick",function(mt){e.CHM(je);const we=e.oxw();return e.KtG(we.handleClick(mt))})("onHover",function(mt){e.CHM(je);const we=e.oxw();return e.KtG(we.onSwatchHover.emit(mt))}),e.qZA()()}if(2&Ae){const je=Mt.$implicit,ot=e.oxw();e.xp6(1),e.Akn(ot.swatchStyle),e.Q6J("color",ot.normalizeValue(je).color)("focusStyle",ot.focusStyle(je))}}function q(Ae,Mt){if(1&Ae){const je=e.EpF();e.TgZ(0,"div",12)(1,"color-alpha",13),e.NdJ("onChange",function(mt){e.CHM(je);const we=e.oxw();return e.KtG(we.handleValueChange(mt))}),e.qZA()()}if(2&Ae){const je=e.oxw();e.xp6(1),e.Q6J("radius",2)("rgb",je.rgb)("hsl",je.hsl)}}function ye(Ae,Mt){if(1&Ae){const je=e.EpF();e.TgZ(0,"div",14)(1,"color-sketch-preset-colors",15),e.NdJ("onClick",function(mt){e.CHM(je);const we=e.oxw();return e.KtG(we.handleBlockChange(mt))})("onSwatchHover",function(mt){e.CHM(je);const we=e.oxw();return e.KtG(we.onSwatchHover.emit(mt))}),e.qZA()()}if(2&Ae){const je=e.oxw();e.xp6(1),e.Q6J("colors",je.presetColors)}}let ee=(()=>{class Ae{hsl;rgb;hex;disableAlpha=!1;onChange=new e.vpe;input={width:"100%",padding:"4px 10% 3px",border:"none",boxSizing:"border-box",boxShadow:"inset 0 0 0 1px #ccc",fontSize:"11px"};label={display:"block",textAlign:"center",fontSize:"11px",color:"#222",paddingTop:"3px",paddingBottom:"4px",textTransform:"capitalize"};round(je){return Math.round(je)}handleChange({data:je,$event:ot}){if(je.hex){if(F(je.hex)){const mt=new z.C(je.hex);this.onChange.emit({data:{hex:this.disableAlpha||je.hex.length<=6?mt.toHex():mt.toHex8(),source:"hex"},$event:ot})}}else je.r||je.g||je.b?this.onChange.emit({data:{r:je.r||this.rgb.r,g:je.g||this.rgb.g,b:je.b||this.rgb.b,source:"rgb"},$event:ot}):je.a?(je.a<0?je.a=0:je.a>100&&(je.a=100),je.a/=100,this.disableAlpha&&(je.a=1),this.onChange.emit({data:{h:this.hsl.h,s:this.hsl.s,l:this.hsl.l,a:Math.round(100*je.a)/100,source:"rgb"},$event:ot})):(je.h||je.s||je.l)&&this.onChange.emit({data:{h:je.h||this.hsl.h,s:Number(je.s&&je.s||this.hsl.s),l:Number(je.l&&je.l||this.hsl.l),source:"hsl"},$event:ot})}static \u0275fac=function(ot){return new(ot||Ae)};static \u0275cmp=e.Xpm({type:Ae,selectors:[["color-sketch-fields"]],inputs:{hsl:"hsl",rgb:"rgb",hex:"hex",disableAlpha:"disableAlpha"},outputs:{onChange:"onChange"},decls:10,vars:31,consts:[[1,"sketch-fields"],[1,"sketch-double"],["label","hex",3,"value","onChange"],[1,"sketch-single"],["label","r",3,"value","dragLabel","dragMax","onChange"],["label","g",3,"value","dragLabel","dragMax","onChange"],["label","b",3,"value","dragLabel","dragMax","onChange"],["class","sketch-alpha",4,"ngIf"],[1,"sketch-alpha"],["label","a",3,"value","dragLabel","dragMax","onChange"]],template:function(ot,mt){1&ot&&(e.TgZ(0,"div",0)(1,"div",1)(2,"color-editable-input",2),e.NdJ("onChange",function(de){return mt.handleChange(de)}),e.qZA()(),e.TgZ(3,"div",3)(4,"color-editable-input",4),e.NdJ("onChange",function(de){return mt.handleChange(de)}),e.qZA()(),e.TgZ(5,"div",3)(6,"color-editable-input",5),e.NdJ("onChange",function(de){return mt.handleChange(de)}),e.qZA()(),e.TgZ(7,"div",3)(8,"color-editable-input",6),e.NdJ("onChange",function(de){return mt.handleChange(de)}),e.qZA()(),e.YNc(9,Me,2,8,"div",7),e.qZA()),2&ot&&(e.xp6(2),e.Akn(e.WLB(19,xe,mt.input,mt.label)),e.Q6J("value",mt.hex.replace("#","")),e.xp6(2),e.Akn(e.WLB(22,xe,mt.input,mt.label)),e.Q6J("value",mt.rgb.r)("dragLabel",!0)("dragMax",255),e.xp6(2),e.Akn(e.WLB(25,xe,mt.input,mt.label)),e.Q6J("value",mt.rgb.g)("dragLabel",!0)("dragMax",255),e.xp6(2),e.Akn(e.WLB(28,xe,mt.input,mt.label)),e.Q6J("value",mt.rgb.b)("dragLabel",!0)("dragMax",255),e.xp6(1),e.Q6J("ngIf",!1===mt.disableAlpha))},dependencies:[n.O5,H],styles:[".sketch-fields[_ngcontent-%COMP%]{display:flex;padding-top:4px}.sketch-double[_ngcontent-%COMP%]{flex:2 1 0%}.sketch-single[_ngcontent-%COMP%], .sketch-alpha[_ngcontent-%COMP%]{flex:1 1 0%;padding-left:6px}[dir=rtl][_nghost-%COMP%] .sketch-single[_ngcontent-%COMP%], [dir=rtl] [_nghost-%COMP%] .sketch-single[_ngcontent-%COMP%]{padding-right:6px;padding-left:0}[dir=rtl][_nghost-%COMP%] .sketch-alpha[_ngcontent-%COMP%], [dir=rtl] [_nghost-%COMP%] .sketch-alpha[_ngcontent-%COMP%]{padding-right:6px;padding-left:0}"],changeDetection:0})}return Ae})(),Be=(()=>{class Ae{colors;onClick=new e.vpe;onSwatchHover=new e.vpe;swatchStyle={borderRadius:"3px",boxShadow:"inset 0 0 0 1px rgba(0,0,0,.15)"};handleClick({hex:je,$event:ot}){this.onClick.emit({hex:je,$event:ot})}normalizeValue(je){return"string"==typeof je?{color:je}:je}focusStyle(je){return{boxShadow:`inset 0 0 0 1px rgba(0,0,0,.15), 0 0 4px ${this.normalizeValue(je).color}`}}static \u0275fac=function(ot){return new(ot||Ae)};static \u0275cmp=e.Xpm({type:Ae,selectors:[["color-sketch-preset-colors"]],inputs:{colors:"colors"},outputs:{onClick:"onClick",onSwatchHover:"onSwatchHover"},decls:2,vars:1,consts:[[1,"sketch-swatches"],["class","sketch-wrap",4,"ngFor","ngForOf"],[1,"sketch-wrap"],[1,"swatch",3,"color","focusStyle","onClick","onHover"]],template:function(ot,mt){1&ot&&(e.TgZ(0,"div",0),e.YNc(1,Ye,2,4,"div",1),e.qZA()),2&ot&&(e.xp6(1),e.Q6J("ngForOf",mt.colors))},dependencies:[n.sg,ce],styles:[".sketch-swatches[_ngcontent-%COMP%]{position:relative;display:flex;flex-wrap:wrap;margin:0 -10px;padding:10px 0 0 10px;border-top:1px solid rgb(238,238,238)}.sketch-wrap[_ngcontent-%COMP%]{width:16px;height:16px;margin:0 10px 10px 0}[dir=rtl][_nghost-%COMP%] .sketch-swatches[_ngcontent-%COMP%], [dir=rtl] [_nghost-%COMP%] .sketch-swatches[_ngcontent-%COMP%]{padding-right:10px;padding-left:0}[dir=rtl][_nghost-%COMP%] .sketch-wrap[_ngcontent-%COMP%], [dir=rtl] [_nghost-%COMP%] .sketch-wrap[_ngcontent-%COMP%]{margin-left:10px;margin-right:0}"],changeDetection:0})}return Ae})(),Re=(()=>{class Ae extends _e{disableAlpha=!1;presetColors=["#D0021B","#F5A623","#F8E71C","#8B572A","#7ED321","#417505","#BD10E0","#9013FE","#4A90E2","#50E3C2","#B8E986","#000000","#4A4A4A","#9B9B9B","#FFFFFF"];width=200;activeBackground;constructor(){super()}afterValidChange(){this.activeBackground=`rgba(${this.rgb.r}, ${this.rgb.g}, ${this.rgb.b}, ${this.disableAlpha?1:this.rgb.a})`}handleValueChange({data:je,$event:ot}){this.handleChange(je,ot)}handleBlockChange({hex:je,$event:ot}){F(je)&&this.handleChange({hex:je,source:"hex"},ot)}static \u0275fac=function(ot){return new(ot||Ae)};static \u0275cmp=e.Xpm({type:Ae,selectors:[["color-sketch"]],inputs:{disableAlpha:"disableAlpha",presetColors:"presetColors",width:"width"},features:[e._Bn([{provide:M.JU,useExisting:(0,e.Gpc)(()=>Ae),multi:!0},{provide:_e,useExisting:(0,e.Gpc)(()=>Ae)}]),e.qOj],decls:14,vars:16,consts:[[1,"sketch-saturation"],[3,"hsl","hsv","onChange"],[1,"sketch-controls"],[1,"sketch-sliders"],[1,"sketch-hue"],[3,"hsl","onChange"],["class","sketch-alpha",4,"ngIf"],[1,"sketch-color"],[1,"sketch-active"],[1,"sketch-fields-container"],[3,"rgb","hsl","hex","disableAlpha","onChange"],["class","sketch-swatches-container",4,"ngIf"],[1,"sketch-alpha"],[3,"radius","rgb","hsl","onChange"],[1,"sketch-swatches-container"],[3,"colors","onClick","onSwatchHover"]],template:function(ot,mt){1&ot&&(e.TgZ(0,"div")(1,"div",0)(2,"color-saturation",1),e.NdJ("onChange",function(de){return mt.handleValueChange(de)}),e.qZA()(),e.TgZ(3,"div",2)(4,"div",3)(5,"div",4)(6,"color-hue",5),e.NdJ("onChange",function(de){return mt.handleValueChange(de)}),e.qZA()(),e.YNc(7,q,2,3,"div",6),e.qZA(),e.TgZ(8,"div",7),e._UZ(9,"color-checkboard")(10,"div",8),e.qZA()(),e.TgZ(11,"div",9)(12,"color-sketch-fields",10),e.NdJ("onChange",function(de){return mt.handleValueChange(de)}),e.qZA()(),e.YNc(13,ye,2,1,"div",11),e.qZA()),2&ot&&(e.Gre("sketch-picker ",mt.className,""),e.Udp("width",mt.width,"px"),e.xp6(2),e.Q6J("hsl",mt.hsl)("hsv",mt.hsv),e.xp6(4),e.Q6J("hsl",mt.hsl),e.xp6(1),e.Q6J("ngIf",!1===mt.disableAlpha),e.xp6(3),e.Udp("background",mt.activeBackground),e.xp6(2),e.Q6J("rgb",mt.rgb)("hsl",mt.hsl)("hex",mt.hex)("disableAlpha",mt.disableAlpha),e.xp6(1),e.Q6J("ngIf",mt.presetColors&&mt.presetColors.length))},dependencies:function(){return[n.O5,P,T,te,be,ee,Be]},styles:[".sketch-picker[_ngcontent-%COMP%]{padding:10px 10px 3px;box-sizing:initial;background:#fff;border-radius:4px;box-shadow:0 0 0 1px #00000026,0 8px 16px #00000026}.sketch-saturation[_ngcontent-%COMP%]{width:100%;padding-bottom:75%;position:relative;overflow:hidden}.sketch-fields-container[_ngcontent-%COMP%], .sketch-swatches-container[_ngcontent-%COMP%]{display:block}.sketch-controls[_ngcontent-%COMP%]{display:flex}.sketch-sliders[_ngcontent-%COMP%]{padding:4px 0;flex:1 1 0%}.sketch-hue[_ngcontent-%COMP%]{position:relative;height:10px;overflow:hidden}.sketch-alpha[_ngcontent-%COMP%]{position:relative;height:10px;margin-top:4px;overflow:hidden}.sketch-color[_ngcontent-%COMP%]{width:24px;height:24px;position:relative;margin-top:4px;margin-left:4px;border-radius:3px}.sketch-active[_ngcontent-%COMP%]{position:absolute;inset:0;border-radius:2px;box-shadow:#00000026 0 0 0 1px inset,#00000040 0 0 4px inset}[dir=rtl][_nghost-%COMP%] .sketch-color[_ngcontent-%COMP%], [dir=rtl] [_nghost-%COMP%] .sketch-color[_ngcontent-%COMP%]{margin-right:4px;margin-left:0}"],changeDetection:0})}return Ae})(),ct=(()=>{class Ae{static \u0275fac=function(ot){return new(ot||Ae)};static \u0275mod=e.oAB({type:Ae});static \u0275inj=e.cJS({imports:[n.ez,O,x,j,ne,le,Q]})}return Ae})()},44556:(nt,I,o)=>{"use strict";o.d(I,{MR:()=>z,cD:()=>M});var e=o(65879),n=o(96814);function t(h,v){if(1&h&&(e.ynx(0),e._UZ(1,"span",2),e.BQk()),2&h){const g=e.oxw();e.xp6(1),e.Q6J("innerHTML",g.i.text,e.oJD)}}function i(h,v){1&h&&e.GkF(0)}const l=function(h){return{$implicit:h}};var C=function(h){return h[h.ing=0]="ing",h[h.pause=1]="pause",h[h.stop=2]="stop",h[h.done=3]="done",h}(C||{});let E=(()=>{class h{constructor(g){this.ngZone=g,this.fns=[],this.commands=[],this.nextTime=0,this.ing=!1}start(){!0!==this.ing&&(this.ing=!0,this.nextTime=+new Date,this.ngZone.runOutsideAngular(()=>{this.process()}))}process(){for(;this.commands.length;)this.commands.shift()();let g=+new Date-this.nextTime;const d=1+Math.floor(g/100);g=100-g%100,this.nextTime+=100*d;for(let p=0,f=this.fns.length;p0&&this.fns[p](T),this.fns[p+1]=y%20+1}}this.ing&&setTimeout(()=>this.process(),g)}add(g,d){return this.commands.push(()=>{this.fns.push(g),this.fns.push(1e3===d?1:0),this.ing=!0}),this}remove(g){return this.commands.push(()=>{const d=this.fns.indexOf(g);-1!==d&&this.fns.splice(d,2),this.ing=this.fns.length>0}),this}static#e=this.\u0275fac=function(d){return new(d||h)(e.LFG(e.R0b))};static#t=this.\u0275prov=e.Yz7({token:h,factory:h.\u0275fac})}return h})(),u=(()=>{class h{constructor(g){this.locale=g,this.demand=!1,this.leftTime=0,this.format="HH:mm:ss",this.timezone="+0000",this.formatDate=({date:d,formatStr:p,timezone:f})=>(0,n.p6)(new Date(d),p,this.locale,f||this.timezone||"+0000")}static#e=this.\u0275fac=function(d){return new(d||h)(e.LFG(e.soG))};static#t=this.\u0275prov=e.Yz7({token:h,factory:h.\u0275fac,providedIn:"root"})}return h})(),z=(()=>{class h{set config(g){null!=g.notify&&!Array.isArray(g.notify)&&g.notify>0&&(g.notify=[g.notify]),this._config=g}get config(){return this._config}constructor(g,d,p,f,y){this.locale=g,this.timer=d,this.defCog=p,this.cdr=f,this.ngZone=y,this.frequency=1e3,this._notify={},this.status=C.ing,this.isDestroy=!1,this.i={},this.left=0,this.event=new e.vpe}begin(){this.status=C.ing,this.callEvent("start")}restart(){this.status!==C.stop&&this.destroy(),this.init(),this.callEvent("restart")}stop(){this.status!==C.stop&&(this.status=C.stop,this.destroy(),this.callEvent("stop"))}pause(){this.status===C.stop||this.status===C.pause||(this.status=C.pause,this.callEvent("pause"))}resume(){this.status===C.stop||this.status!==C.pause||(this.status=C.ing,this.callEvent("resume"))}callEvent(g){this.event.emit({action:g,left:this.left,status:this.status,text:this.i.text})}init(){const{locale:g,defCog:d}=this,p=this.config={...new u(g),...d,...this.config},f=this.frequency=~p.format.indexOf("S")?100:1e3;this.status=p.demand?C.pause:C.ing,this.getLeft();const y=this.reflow;this.reflow=(T=0,x=!1)=>y.apply(this,[T,x]),Array.isArray(p.notify)&&p.notify.forEach(T=>{if(T<1)throw new Error("The notify config must be a positive integer.");T*=1e3,this._notify[T-=T%f]=!0}),this.timer.add(this.reflow,f).start(),this.reflow(0,!0)}destroy(){return this.timer.remove(this.reflow),this}reflow(g=0,d=!1){if(this.isDestroy)return;const{status:p,config:f,_notify:y}=this;if(!d&&p!==C.ing)return;let T=this.left=this.left-this.frequency*g;T<1&&(T=0),this.i={value:T,text:f.formatDate({date:T,formatStr:f.format,timezone:f.timezone})},"function"==typeof f.prettyText&&(this.i.text=f.prettyText(this.i.text)),this.cdr.detectChanges(),(0===f.notify||y[T])&&this.ngZone.run(()=>{this.callEvent("notify")}),0===T&&this.ngZone.run(()=>{this.status=C.done,this.destroy(),this.callEvent("done")})}getLeft(){const{config:g,frequency:d}=this;let p=1e3*g.leftTime;const f=g.stopTime;!p&&f&&(p=f-(new Date).getTime()),this.left=p-p%d}ngOnInit(){this.init(),this.config.demand||this.begin()}ngOnDestroy(){this.isDestroy=!0,this.destroy()}ngOnChanges(g){g.config.firstChange||this.restart()}static#e=this.\u0275fac=function(d){return new(d||h)(e.Y36(e.soG),e.Y36(E),e.Y36(u),e.Y36(e.sBO),e.Y36(e.R0b))};static#t=this.\u0275cmp=e.Xpm({type:h,selectors:[["countdown"]],hostVars:2,hostBindings:function(d,p){2&d&&e.ekj("count-down",!0)},inputs:{config:"config",render:"render"},outputs:{event:"event"},standalone:!0,features:[e._Bn([E]),e.TTD,e.jDz],decls:2,vars:5,consts:[[4,"ngIf"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"innerHTML"]],template:function(d,p){1&d&&(e.YNc(0,t,2,1,"ng-container",0),e.YNc(1,i,1,0,"ng-container",1)),2&d&&(e.Q6J("ngIf",!p.render),e.xp6(1),e.Q6J("ngTemplateOutlet",p.render)("ngTemplateOutletContext",e.VKq(3,l,p.i)))},dependencies:[n.ez,n.O5,n.tP],encapsulation:2,changeDetection:0})}return h})(),M=(()=>{class h{static#e=this.\u0275fac=function(d){return new(d||h)};static#t=this.\u0275mod=e.oAB({type:h});static#n=this.\u0275inj=e.cJS({imports:[z]})}return h})()},6595:(nt,I,o)=>{"use strict";o.d(I,{TN:()=>A,Ot:()=>O});var e=o(97582),n=o(65879),t=o(60095);function i(k,F,W){return function K(_e,Y,G){const H=`$$__${Y}`;return Object.prototype.hasOwnProperty.call(_e,H)&&console.warn(`The prop "${H}" is already exist, it will be overrided by ${k} decorator.`),Object.defineProperty(_e,H,{configurable:!0,writable:!0}),{get(){return G&&G.get?G.get.bind(this)():this[H]},set(j){G&&G.set&&G.set.bind(this)(F(j,W)),this[H]=F(j,W)}}}}function l(k,F=!1){return F&&typeof k>"u"?void 0:null!=k&&"false"!=`${k}`}function C(k=!1){return i("InputNumber",l,k)}function E(k,F=0){return isNaN(parseFloat(k))||isNaN(Number(k))?F:Number(k)}function u(k=0){return i("InputNumber",E,k)}var z=o(96814),M=o(49671),h=o(65619),v=o(88407),g=o(63020),d=o(32181);let p=(()=>{class k{constructor(W){this.doc=W,this.list={},this.cached={},this._notify=new h.X([])}fixPaths(W){return W=W||[],Array.isArray(W)||(W=[W]),W.map(K=>{const _e="string"==typeof K?{path:K}:K;return _e.type||(_e.type=_e.path.endsWith(".js")||_e.callback?"script":"style"),_e})}monitor(W){const K=this.fixPaths(W),_e=[(0,g.B)(),(0,d.h)(Y=>0!==Y.length)];return K.length>0&&_e.push((0,d.h)(Y=>Y.length===K.length&&Y.every(G=>"ok"===G.status&&K.find(H=>H.path===G.path)))),this._notify.asObservable().pipe(v.z.apply(this,_e))}clear(){this.list={},this.cached={}}load(W){var K=this;return(0,M.Z)(function*(){return W=K.fixPaths(W),Promise.all(W.map(_e=>"script"===_e.type?K.loadScript(_e.path,{callback:_e.callback}):K.loadStyle(_e.path))).then(_e=>(K._notify.next(_e),Promise.resolve(_e)))})()}loadScript(W,K){const{innerContent:_e}={...K};return new Promise(Y=>{if(!0===this.list[W])return void Y({...this.cached[W],status:"loading"});this.list[W]=!0;const G=te=>{"ok"===te.status&&K?.callback?window[K?.callback]=()=>{H(te)}:H(te)},H=te=>{te.type="script",this.cached[W]=te,Y(te),this._notify.next([te])},j=this.doc.createElement("script");j.type="text/javascript",j.src=W,j.charset="utf-8",_e&&(j.innerHTML=_e),j.readyState?j.onreadystatechange=()=>{("loaded"===j.readyState||"complete"===j.readyState)&&(j.onreadystatechange=null,G({path:W,status:"ok"}))}:j.onload=()=>G({path:W,status:"ok"}),j.onerror=te=>G({path:W,status:"error",error:te}),this.doc.getElementsByTagName("head")[0].appendChild(j)})}loadStyle(W,K){const{rel:_e,innerContent:Y}={rel:"stylesheet",...K};return new Promise(G=>{if(!0===this.list[W])return void G(this.cached[W]);this.list[W]=!0;const H=this.doc.createElement("link");H.rel=_e,H.type="text/css",H.href=W,Y&&(H.innerHTML=Y),this.doc.getElementsByTagName("head")[0].appendChild(H);const j={path:W,status:"ok",type:"style"};this.cached[W]=j,G(j)})}}return k.\u0275fac=function(W){return new(W||k)(n.LFG(z.K0))},k.\u0275prov=n.Yz7({token:k,factory:k.\u0275fac,providedIn:"root"}),k})();function f(k,F){if(1&k&&n._UZ(0,"textarea",3),2&k){const W=n.oxw();n.uIk("id",W.id)("placeholder",W.placeholder)}}function y(k,F){if(1&k&&(n.TgZ(0,"div"),n.Hsn(1),n.qZA()),2&k){const W=n.oxw();n.uIk("id",W.id)}}function T(k,F){if(1&k&&(n.ynx(0),n._uU(1),n.BQk()),2&k){const W=n.oxw(2);n.xp6(1),n.Oqu(W._loading)}}function x(k,F){if(1&k&&(n.TgZ(0,"div",4),n.YNc(1,T,2,1,"ng-container",5),n.qZA()),2&k){const W=n.oxw();n.xp6(1),n.Q6J("ngIf",W._loading)("ngIfElse",W._loadingTpl)}}const D=["*"];class _{constructor(){this.baseURL="./assets/tinymce/",this.fileName="tinymce.min.js"}}const P=!("object"==typeof document&&document);let O=(()=>{class k{set disabled(W){this._disabled=W,this.setDisabled()}set loading(W){W instanceof n.Rgc?(this._loading=null,this._loadingTpl=W):this._loading=W}get instance(){return this._instance}_getWin(){return this.doc.defaultView||window}constructor(W,K,_e,Y,G){this.defConfig=W,this.lazySrv=K,this.ngZone=_e,this.doc=Y,this.cd=G,this.value="",this.load=!0,this.id=`_tinymce-${Math.random().toString(36).substring(2)}`,this.placeholder="",this.inline=!1,this._disabled=!1,this._loading=null,this._loadingTpl=null,this.delay=0,this.ready=new n.vpe}initDelay(){P||setTimeout(()=>this.init(),Math.max(0,this.delay))}init(){const W=this._getWin();if(!W.tinymce)throw new Error("tinymce js\u6587\u4ef6\u52a0\u8f7d\u5931\u8d25");const{defConfig:K,config:_e,id:Y,inline:G}=this;if(this._instance)return;if(K.baseURL){let te=""+K.baseURL;te.endsWith("/")&&(te=te.substring(0,te.length-1)),W.tinymce.baseURL=te}const H={...K.config,..._e},j={selector:"#"+Y,inline:G,...K.config,..._e,setup:te=>{this._instance=te,this.onChange&&te.on("change keyup",()=>{this.value=te.getContent(),this.ngZone.run(()=>this.onChange(this.value))}),"function"==typeof H.setup&&H.setup(te)},init_instance_callback:te=>{te&&this.value&&te.setContent(this.value),this.setDisabled(),"function"==typeof H.init_instance_callback&&H.init_instance_callback(te),this.ready.emit(this._instance)}};H.auto_focus&&(j.auto_focus=Y),this.ngZone.runOutsideAngular(()=>W.tinymce.init(j)),this.load=!1,this.cd.detectChanges()}destroy(){this._instance&&(this.ngZone.runOutsideAngular(()=>{this._instance.off(),this._instance.remove("#"+this.id)}),this._instance=null)}setDisabled(){this._instance&&this.ngZone.runOutsideAngular(()=>{const W=this._disabled?"readonly":"design";"function"==typeof this._instance.setMode?this._instance.setMode(W):this._instance.mode.set(W)})}ngAfterViewInit(){if(P)return;if(this._getWin().tinymce)return void this.initDelay();const{defConfig:W}=this,Y=(W&&W.baseURL||"./assets/tinymce/")+(W&&W.fileName||"tinymce.min.js");this.lazySrv.monitor(Y).subscribe(()=>this.initDelay()),this.lazySrv.load(Y)}ngOnChanges(W){this._instance&&W.config&&(this.destroy(),this.initDelay())}ngOnDestroy(){this.destroy()}writeValue(W){this.value=W||"",this._instance&&this.ngZone.runOutsideAngular(()=>this._instance.setContent(this.value))}registerOnChange(W){this.onChange=W}registerOnTouched(W){this.onTouched=W}setDisabledState(W){this.disabled=W,this.setDisabled()}static#e=this.\u0275fac=function(K){return new(K||k)(n.Y36(_),n.Y36(p),n.Y36(n.R0b),n.Y36(z.K0),n.Y36(n.sBO))};static#t=this.\u0275cmp=n.Xpm({type:k,selectors:[["tinymce"]],inputs:{config:"config",placeholder:"placeholder",inline:"inline",disabled:"disabled",loading:"loading",delay:"delay"},outputs:{ready:"ready"},exportAs:["tinymce"],features:[n._Bn([{provide:t.JU,useExisting:(0,n.Gpc)(()=>k),multi:!0}]),n.TTD],ngContentSelectors:D,decls:3,vars:3,consts:[["class","tinymce-selector",4,"ngIf"],[4,"ngIf"],["class","loading",4,"ngIf"],[1,"tinymce-selector"],[1,"loading"],[4,"ngIf","ngIfElse"]],template:function(K,_e){1&K&&(n.F$t(),n.YNc(0,f,1,2,"textarea",0),n.YNc(1,y,2,1,"div",1),n.YNc(2,x,2,2,"div",2)),2&K&&(n.Q6J("ngIf",!_e.inline),n.xp6(1),n.Q6J("ngIf",_e.inline),n.xp6(1),n.Q6J("ngIf",_e.load))},dependencies:[z.O5],styles:["tinymce .tinymce-selector{display:none}\n"],encapsulation:2,changeDetection:0})}return(0,e.gn)([C()],k.prototype,"inline",void 0),(0,e.gn)([C()],k.prototype,"disabled",null),(0,e.gn)([u()],k.prototype,"delay",void 0),k})(),A=(()=>{class k{static forRoot(W){return{ngModule:k,providers:[{provide:_,useValue:W}]}}static#e=this.\u0275fac=function(K){return new(K||k)};static#t=this.\u0275mod=n.oAB({type:k});static#n=this.\u0275inj=n.cJS({imports:[z.ez]})}return k})()},71002:(nt,I,o)=>{"use strict";function e(n){return(e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(n)}o.d(I,{Z:()=>e})},97582:(nt,I,o)=>{"use strict";function l(pe,re,be,le){var ie,ce=arguments.length,Q=ce<3?re:null===le?le=Object.getOwnPropertyDescriptor(re,be):le;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)Q=Reflect.decorate(pe,re,be,le);else for(var ae=pe.length-1;ae>=0;ae--)(ie=pe[ae])&&(Q=(ce<3?ie(Q):ce>3?ie(re,be,Q):ie(re,be))||Q);return ce>3&&Q&&Object.defineProperty(re,be,Q),Q}function v(pe,re,be,le){return new(be||(be=Promise))(function(Q,ie){function ae(Ye){try{Me(le.next(Ye))}catch(q){ie(q)}}function xe(Ye){try{Me(le.throw(Ye))}catch(q){ie(q)}}function Me(Ye){Ye.done?Q(Ye.value):function ce(Q){return Q instanceof be?Q:new be(function(ie){ie(Q)})}(Ye.value).then(ae,xe)}Me((le=le.apply(pe,re||[])).next())})}function _(pe){return this instanceof _?(this.v=pe,this):new _(pe)}function P(pe,re,be){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var ce,le=be.apply(pe,re||[]),Q=[];return ce={},ie("next"),ie("throw"),ie("return"),ce[Symbol.asyncIterator]=function(){return this},ce;function ie(ye){le[ye]&&(ce[ye]=function(ee){return new Promise(function(Be,Re){Q.push([ye,ee,Be,Re])>1||ae(ye,ee)})})}function ae(ye,ee){try{!function xe(ye){ye.value instanceof _?Promise.resolve(ye.value.v).then(Me,Ye):q(Q[0][2],ye)}(le[ye](ee))}catch(Be){q(Q[0][3],Be)}}function Me(ye){ae("next",ye)}function Ye(ye){ae("throw",ye)}function q(ye,ee){ye(ee),Q.shift(),Q.length&&ae(Q[0][0],Q[0][1])}}function A(pe){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var be,re=pe[Symbol.asyncIterator];return re?re.call(pe):(pe=function f(pe){var re="function"==typeof Symbol&&Symbol.iterator,be=re&&pe[re],le=0;if(be)return be.call(pe);if(pe&&"number"==typeof pe.length)return{next:function(){return pe&&le>=pe.length&&(pe=void 0),{value:pe&&pe[le++],done:!pe}}};throw new TypeError(re?"Object is not iterable.":"Symbol.iterator is not defined.")}(pe),be={},le("next"),le("throw"),le("return"),be[Symbol.asyncIterator]=function(){return this},be);function le(Q){be[Q]=pe[Q]&&function(ie){return new Promise(function(ae,xe){!function ce(Q,ie,ae,xe){Promise.resolve(xe).then(function(Me){Q({value:Me,done:ae})},ie)}(ae,xe,(ie=pe[Q](ie)).done,ie.value)})}}}o.d(I,{FC:()=>P,KL:()=>A,gn:()=>l,mG:()=>v,qq:()=>_}),"function"==typeof SuppressedError&&SuppressedError},64775:nt=>{"use strict";nt.exports=JSON.parse('{"$id":"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#","description":"Meta-schema for $data reference (JSON AnySchema extension proposal)","type":"object","required":["$data"],"properties":{"$data":{"type":"string","anyOf":[{"format":"relative-json-pointer"},{"format":"json-pointer"}]}},"additionalProperties":false}')},98:nt=>{"use strict";nt.exports=JSON.parse('{"$schema":"http://json-schema.org/draft-07/schema#","$id":"http://json-schema.org/draft-07/schema#","title":"Core schema meta-schema","definitions":{"schemaArray":{"type":"array","minItems":1,"items":{"$ref":"#"}},"nonNegativeInteger":{"type":"integer","minimum":0},"nonNegativeIntegerDefault0":{"allOf":[{"$ref":"#/definitions/nonNegativeInteger"},{"default":0}]},"simpleTypes":{"enum":["array","boolean","integer","null","number","object","string"]},"stringArray":{"type":"array","items":{"type":"string"},"uniqueItems":true,"default":[]}},"type":["object","boolean"],"properties":{"$id":{"type":"string","format":"uri-reference"},"$schema":{"type":"string","format":"uri"},"$ref":{"type":"string","format":"uri-reference"},"$comment":{"type":"string"},"title":{"type":"string"},"description":{"type":"string"},"default":true,"readOnly":{"type":"boolean","default":false},"examples":{"type":"array","items":true},"multipleOf":{"type":"number","exclusiveMinimum":0},"maximum":{"type":"number"},"exclusiveMaximum":{"type":"number"},"minimum":{"type":"number"},"exclusiveMinimum":{"type":"number"},"maxLength":{"$ref":"#/definitions/nonNegativeInteger"},"minLength":{"$ref":"#/definitions/nonNegativeIntegerDefault0"},"pattern":{"type":"string","format":"regex"},"additionalItems":{"$ref":"#"},"items":{"anyOf":[{"$ref":"#"},{"$ref":"#/definitions/schemaArray"}],"default":true},"maxItems":{"$ref":"#/definitions/nonNegativeInteger"},"minItems":{"$ref":"#/definitions/nonNegativeIntegerDefault0"},"uniqueItems":{"type":"boolean","default":false},"contains":{"$ref":"#"},"maxProperties":{"$ref":"#/definitions/nonNegativeInteger"},"minProperties":{"$ref":"#/definitions/nonNegativeIntegerDefault0"},"required":{"$ref":"#/definitions/stringArray"},"additionalProperties":{"$ref":"#"},"definitions":{"type":"object","additionalProperties":{"$ref":"#"},"default":{}},"properties":{"type":"object","additionalProperties":{"$ref":"#"},"default":{}},"patternProperties":{"type":"object","additionalProperties":{"$ref":"#"},"propertyNames":{"format":"regex"},"default":{}},"dependencies":{"type":"object","additionalProperties":{"anyOf":[{"$ref":"#"},{"$ref":"#/definitions/stringArray"}]}},"propertyNames":{"$ref":"#"},"const":true,"enum":{"type":"array","items":true,"minItems":1,"uniqueItems":true},"type":{"anyOf":[{"$ref":"#/definitions/simpleTypes"},{"type":"array","items":{"$ref":"#/definitions/simpleTypes"},"minItems":1,"uniqueItems":true}]},"format":{"type":"string"},"contentMediaType":{"type":"string"},"contentEncoding":{"type":"string"},"if":{"$ref":"#"},"then":{"$ref":"#"},"else":{"$ref":"#"},"allOf":{"$ref":"#/definitions/schemaArray"},"anyOf":{"$ref":"#/definitions/schemaArray"},"oneOf":{"$ref":"#/definitions/schemaArray"},"not":{"$ref":"#"}},"default":true}')},4147:nt=>{"use strict";nt.exports=JSON.parse('{"name":"delon","version":"16.4.2","description":"Delon is a set of essential modules for NG-ALAIN.","keywords":["delon","ng-alain","alain","antd","ng-zorro-antd","angular"],"author":"cipchk ","license":"MIT","bugs":{"url":"https://github.com/ng-alain/ng-alain/issues"},"repository":{"type":"git","url":"git+https://github.com/ng-alain/delon.git"},"homepage":"https://ng-alain.com","engines":{"node":"^16.13.0 || ^18.10.0","yarn":">=1.21.1 <2","npm":"Please use yarn instead of NPM to install dependencies"},"scripts":{"ng-high-memory":"node --max_old_space_size=8000 ./node_modules/@angular/cli/bin/ng","prepare":"husky install","start":"npm run site:gen && ng s -o --hmr","lint":"bash scripts/ci/lint.sh -ts -less","lint:ts":"eslint --cache . --ext .ts,.html","lint:fix":"eslint --cache . --ext .ts,.html --fix","lint:style":"npx stylelint \'packages/**/*.less\'","test":"ng test --no-progress --browsers=ChromeHeadlessCI --code-coverage --no-watch","test:cli":"bash scripts/ci/build-schematics.sh -t -clone","test:integration":"bash scripts/ci/build-schematics.sh -b -t -clone -integration","build":"bash scripts/ci/build.sh","build_artifacts":"bash scripts/ci/build-artifacts.sh","analyze":"npm run ng-high-memory build -- --source-map","analyze:view":"source-map-explorer src/dist/browser/*.js","site:gen":"node scripts/site/main init && ng-alain-plugin-theme -t=themeCss && ng-alain-plugin-theme -t=colorLess","site:build":"npm run site:gen && ng b site && npm run site:ngsw && npm run site:minify && npm run site:sitemap && npm run site:helper","site:build:ssr":"npm run site:gen && npm run ssr:prerender && npm run site:ngsw && npm run site:minify && npm run site:sitemap && npm run site:helper","site:helper":"bash scripts/ci/helper.sh","site:minify":"node scripts/build/minify.js","site:sitemap":"node scripts/build/sitemap.js","site:ngsw":"node scripts/build/ngsw.js","changelog":"conventional-changelog -p angular -i CHANGELOG.md -s --pkg package.json","pre-publish":"node scripts/publish/publish.js && node scripts/publish/publish-scaffold.js","publish:next":"bash scripts/publish/publish.sh -next","publish":"bash scripts/publish/publish.sh","sync-scaffold-version":"node scripts/publish/sync-scaffold-version.js","ssr":"npm run ng-high-memory run site:serve-ssr","ssr:serve":"node src/dist/server/main.js","ssr:prerender":"npm run ng-high-memory run site:prerender"},"dependencies":{"@angular/animations":"^16.2.0","@angular/common":"^16.2.0","@angular/compiler":"^16.2.0","@angular/core":"^16.2.0","@angular/forms":"^16.2.0","@angular/platform-browser":"^16.2.0","@angular/platform-browser-dynamic":"^16.2.0","@angular/router":"^16.2.0","rxjs":"~7.8.0","tslib":"^2.3.0","zone.js":"~0.13.0","@angular/service-worker":"^16.2.0","@angular/platform-server":"^16.2.0","@angular/elements":"^16.2.0","@antv/data-set":"^0.11.8","@antv/g2":"^4.2.10","echarts":"^5.4.3","@stackblitz/sdk":"^1.9.0","codesandbox":"^2.2.3","ajv":"^8.12.0","ajv-formats":"^2.1.1","extend":"^3.0.2","file-saver":"^2.0.5","ng-github-button":"^16.0.0","ng-zorro-antd":"^16.2.2","ngx-color":"~9.0.0","ngx-countdown":"^16.0.0","ngx-highlight-js":"^16.1.0","ngx-tinymce":"^16.0.0","qrious":"^4.0.2","@webcomponents/custom-elements":"^1.6.0","aos":"^3.0.0-beta.6","@ng-util/monaco-editor":"^16.0.0","@nguniversal/express-engine":"^16.2.0","express":"^4.18.2","isutf8":"^4.0.0","@github/hotkey":"^2.0.1"},"devDependencies":{"@angular-devkit/build-angular":"^16.2.0","@angular/cli":"~16.2.0","@angular/compiler-cli":"^16.2.0","@types/jasmine":"~4.3.0","jasmine-core":"~4.6.0","karma":"~6.4.0","karma-chrome-launcher":"~3.2.0","karma-coverage":"~2.2.0","karma-jasmine":"~5.1.0","karma-jasmine-html-reporter":"~2.1.0","typescript":"~5.1.3","codelyzer":"^6.0.2","jasmine-spec-reporter":"^7.0.0","protractor":"~7.0.0","ts-node":"~10.9.1","@angular/language-service":"^16.2.0","@types/jasminewd2":"~2.0.10","karma-junit-reporter":"^2.0.1","karma-spec-reporter":"0.0.36","karma-viewport":"^1.0.9","@types/aos":"^3.0.4","@types/file-saver":"^2.0.5","@types/deep-extend":"^0.6.0","@types/extend":"^3.0.1","@types/mockjs":"^1.0.7","@types/parse5":"^7.0.0","karma-summary-reporter":"^3.1.1","karma-parallel":"^0.3.1","chalk":"^5.3.0","codecov":"^3.8.3","conventional-changelog-cli":"^4.0.0","fs-extra":"^11.1.1","@types/fs-extra":"^11.0.1","husky":"^8.0.3","jsonml.js":"^0.1.0","klaw-sync":"^6.0.0","less-vars-to-js":"^1.3.0","less-plugin-clean-css":"^1.5.1","less-plugin-npm-import":"^2.1.0","mark-twain":"^2.0.3","mockjs":"^1.1.0","mustache":"^4.2.0","ng-packagr":"^16.2.1","parse5":"^7.1.2","prettier":"^3.0.2","readline-sync":"^1.4.10","stream":"0.0.2","stylelint":"^15.10.3","stylelint-config-standard":"^34.0.0","stylelint-declaration-block-no-ignored-properties":"^2.7.0","stylelint-config-clean-order":"^5.2.0","source-map-explorer":"^2.5.3","xlsx":"^0.18.5","jszip":"^3.10.1","plyr":"^3.7.8","screenfull":"^6.0.2","less-bundle-promise":"^1.0.11","ng-alain-codelyzer":"^0.0.1","ng-alain-sts":"^0.0.2","ng-alain-plugin-theme":"^15.0.1","tsconfig-paths":"^4.2.0","@nguniversal/builders":"^16.2.0","@types/express":"^4.17.17","html-minifier-terser":"^7.2.0","terser":"^5.19.2","@commitlint/cli":"^17.7.1","@commitlint/config-angular":"^17.7.0","@angular-eslint/builder":"~16.1.1","@angular-eslint/eslint-plugin":"~16.1.1","@angular-eslint/eslint-plugin-template":"~16.1.1","@angular-eslint/schematics":"~16.1.1","@angular-eslint/template-parser":"~16.1.1","@typescript-eslint/eslint-plugin":"~6.4.1","@typescript-eslint/parser":"~6.4.1","eslint":"^8.48.0","eslint-config-prettier":"~9.0.0","eslint-plugin-import":"~2.28.1","eslint-plugin-jsdoc":"~46.5.0","eslint-plugin-prefer-arrow":"~1.2.3","eslint-plugin-prettier":"~5.0.0","eslint-plugin-deprecation":"~1.5.0","lint-staged":"^14.0.1","raw-loader":"^4.0.2","swagger-typescript-api":"^12.0.4","sitemap":"^7.1.1"},"lint-staged":{"(schematics|scripts|packages)/**/!(tslint-rules|testing)/!(polyfills).{html,ts}":["eslint --fix"],"packages/**/*.less":["npm run lint:style"]}}')}},nt=>{nt(nt.s=3975)}]); \ No newline at end of file diff --git a/mock/getting-started/en/index.html b/mock/getting-started/en/index.html new file mode 100644 index 000000000..dd88c9a1e --- /dev/null +++ b/mock/getting-started/en/index.html @@ -0,0 +1,7 @@ +开始使用 - NG-ALAIN

      开始使用

      写在前面

      Mock 是指通过生成模拟数据让前端开发人员独立于后端进行开发,有时我们也会运用在测试环境中。

      @delon/mock 是一个简单 Mock 功能,包括以下几个特征:

      • 任意 Angular 项目

      • 开发无侵入

      • 超简单用法

      • 支持 mock.js

      如何使用

      安装 @delon/mock 依赖包:

      yarn add @delon/mock -D

      参考 global-config.module.ts 导入Mock 规则数据

      MockOptions 配置

      可以通过全局配置覆盖它们。

      成员说明类型默认值全局配置
      [data]any-Mock 数据规则
      [delay]number300请求延迟,单位:毫秒
      [force]booleanfalse是否强制所有请求都Mock,true 表示当请求的URL不存在时直接返回 404 错误,false 表示未命中时发送真实HTTP请求
      [log]booleantrue是否打印 Mock 请求信息,弥补浏览器无Network信息;当请求经过 Mock 会接收【👽Mock】
      [executeOtherInterceptors]booleantrue是否拦截命中后继续调用后续拦截器的 intercept 方法
      [copy]booleantrue是否返回副本数据

      懒模块还需要导入 forChild 确保HTTP拦截器有效,一般可以直接在 SharedModule 直接使用 forChild

      为什么只对开发环境有效?

      Mock 并非是真实数据,大部分场景是针对开发本地或测试环境;所以在生产环境中不应该包括 Mock 模块以及规则数据。因此上述才会根据 !environment.production 依据环境来决定是否加载 DelonMockModule

      当然,你依然可以在生产环境也使用这种规则,就像 //ng-alain.github.io/ng-alain/ 一样,需要一些模拟请求来保证环境的运行。

      import { DelonMockModule } from '@delon/mock';
      +import * as MOCKDATA from '../../_mock';
      +@NgModule({
      +  imports: [
      +    DelonMockModule.forRoot({ data: MOCKDATA })
      +  ]
      +})
      \ No newline at end of file diff --git a/mock/getting-started/zh/index.html b/mock/getting-started/zh/index.html new file mode 100644 index 000000000..f5553606d --- /dev/null +++ b/mock/getting-started/zh/index.html @@ -0,0 +1,7 @@ +开始使用 - NG-ALAIN

      开始使用

      写在前面

      Mock 是指通过生成模拟数据让前端开发人员独立于后端进行开发,有时我们也会运用在测试环境中。

      @delon/mock 是一个简单 Mock 功能,包括以下几个特征:

      • 任意 Angular 项目

      • 开发无侵入

      • 超简单用法

      • 支持 mock.js

      如何使用

      安装 @delon/mock 依赖包:

      yarn add @delon/mock -D

      参考 global-config.module.ts 导入Mock 规则数据

      MockOptions 配置

      可以通过全局配置覆盖它们。

      成员说明类型默认值全局配置
      [data]any-Mock 数据规则
      [delay]number300请求延迟,单位:毫秒
      [force]booleanfalse是否强制所有请求都Mock,true 表示当请求的URL不存在时直接返回 404 错误,false 表示未命中时发送真实HTTP请求
      [log]booleantrue是否打印 Mock 请求信息,弥补浏览器无Network信息;当请求经过 Mock 会接收【👽Mock】
      [executeOtherInterceptors]booleantrue是否拦截命中后继续调用后续拦截器的 intercept 方法
      [copy]booleantrue是否返回副本数据

      懒模块还需要导入 forChild 确保HTTP拦截器有效,一般可以直接在 SharedModule 直接使用 forChild

      为什么只对开发环境有效?

      Mock 并非是真实数据,大部分场景是针对开发本地或测试环境;所以在生产环境中不应该包括 Mock 模块以及规则数据。因此上述才会根据 !environment.production 依据环境来决定是否加载 DelonMockModule

      当然,你依然可以在生产环境也使用这种规则,就像 //ng-alain.github.io/ng-alain/ 一样,需要一些模拟请求来保证环境的运行。

      import { DelonMockModule } from '@delon/mock';
      +import * as MOCKDATA from '../../_mock';
      +@NgModule({
      +  imports: [
      +    DelonMockModule.forRoot({ data: MOCKDATA })
      +  ]
      +})
      \ No newline at end of file diff --git a/mock/rule/en/index.html b/mock/rule/en/index.html new file mode 100644 index 000000000..9448bbc44 --- /dev/null +++ b/mock/rule/en/index.html @@ -0,0 +1,43 @@ +规则数据 - NG-ALAIN

      规则数据

      写在前面

      Mock 规则数据是一个 Object 对象,Key 为请求域声明,Value 为响应内容,例如:

      export const USERS = {
      +  'GET /users': { users: [1, 2], total: 2 },
      +}

      表示当通过 HttpClient.get('/users') 访问时,会直接返回 { users: [1, 2], total: 2 },并且不会发送任何 HTTP 请求,你可以通过 Network 面板来确认。

      Key 请求域声明

      使用 ' ' 空格来区隔请求方法和URL,请求方法可忽略,默认为 GET;URL 支持路由参数和正则表达式。一些有效的 Key:

      export const USERS = {
      +  'GET /users': null,
      +  // GET 可省略
      +  '/users/1': null,
      +  // POST 请求
      +  'POST /users/1': null,
      +  // 路由参数
      +  '/users/:id': null,
      +  // 正则表达式需要用 `()` 包裹
      +  '/data/(.*)': null
      +};

      Value 响应内容

      响应内容支持三种类型:ObjectArray(req: MockRequest) => any

      import { MockStatusError } from '@delon/mock';
      +
      +export const USERS = {
      +  // Array
      +  '/users': [ { uid: 1 }, { uid: 2 } ],
      +  // Object
      +  '/users': { uid: 1 },
      +  // Function
      +  '/qs': (req: MockRequest) => req.queryString.pi,
      +  // 支持返回完整的 HttpResponse
      +  '/http': (req: MockRequest) => new HttpResponse({ body: 'Body', headers: new HttpHeaders({ 'token': '1' }) }),
      +  // 发送 Status 错误
      +  '/404': () => { throw new MockStatusError(404); }
      +};

      MockRequest

      名称类型描述
      [params]any路由参数,/:idparams.id
      [queryString]anyURL参数,/users?pi=1&ps=10queryString.piqueryString.ps
      [headers]anyHeaders 值
      [body]any请求 body
      [original]HttpRequest<any>原始 HttpRequest

      MockStatusError

      当你希望响应一个 404 异常时。

      一些示例

      import { MockStatusError } from '@delon/mock';
      +
      +export const USERS = {
      +  // 支持值为 Object 和 Array
      +  'GET /users': { users: [1, 2], total: 2 },
      +  // GET 可省略
      +  '/users/1': { users: [1, 2], total: 2 },
      +  // POST 请求
      +  'POST /users/1': { uid: 1 },
      +  // 获取请求参数 queryString、headers、body
      +  '/qs': (req: MockRequest) => req.queryString.pi,
      +  // 路由参数
      +  '/users/:id': (req: MockRequest) => req.params, // /users/100, output: { id: 100 }
      +  // 发送 Status 错误
      +  '/404': () => { throw new MockStatusError(404); },
      +  // 使用 () 表示:正则表达式
      +  '/data/(.*)': (req: MockRequest) => req
      +};

      存储规则

      一般来说 Mock 都是开发过程中需要,因此建议在项目根目录下创建一个 _mock 目录,并创建一个 index.ts 文件用于导出所有数据规则,参考 ng-alain/_mock

      \ No newline at end of file diff --git a/mock/rule/zh/index.html b/mock/rule/zh/index.html new file mode 100644 index 000000000..5f85b960c --- /dev/null +++ b/mock/rule/zh/index.html @@ -0,0 +1,43 @@ +规则数据 - NG-ALAIN

      规则数据

      写在前面

      Mock 规则数据是一个 Object 对象,Key 为请求域声明,Value 为响应内容,例如:

      export const USERS = {
      +  'GET /users': { users: [1, 2], total: 2 },
      +}

      表示当通过 HttpClient.get('/users') 访问时,会直接返回 { users: [1, 2], total: 2 },并且不会发送任何 HTTP 请求,你可以通过 Network 面板来确认。

      Key 请求域声明

      使用 ' ' 空格来区隔请求方法和URL,请求方法可忽略,默认为 GET;URL 支持路由参数和正则表达式。一些有效的 Key:

      export const USERS = {
      +  'GET /users': null,
      +  // GET 可省略
      +  '/users/1': null,
      +  // POST 请求
      +  'POST /users/1': null,
      +  // 路由参数
      +  '/users/:id': null,
      +  // 正则表达式需要用 `()` 包裹
      +  '/data/(.*)': null
      +};

      Value 响应内容

      响应内容支持三种类型:ObjectArray(req: MockRequest) => any

      import { MockStatusError } from '@delon/mock';
      +
      +export const USERS = {
      +  // Array
      +  '/users': [ { uid: 1 }, { uid: 2 } ],
      +  // Object
      +  '/users': { uid: 1 },
      +  // Function
      +  '/qs': (req: MockRequest) => req.queryString.pi,
      +  // 支持返回完整的 HttpResponse
      +  '/http': (req: MockRequest) => new HttpResponse({ body: 'Body', headers: new HttpHeaders({ 'token': '1' }) }),
      +  // 发送 Status 错误
      +  '/404': () => { throw new MockStatusError(404); }
      +};

      MockRequest

      名称类型描述
      [params]any路由参数,/:idparams.id
      [queryString]anyURL参数,/users?pi=1&ps=10queryString.piqueryString.ps
      [headers]anyHeaders 值
      [body]any请求 body
      [original]HttpRequest<any>原始 HttpRequest

      MockStatusError

      当你希望响应一个 404 异常时。

      一些示例

      import { MockStatusError } from '@delon/mock';
      +
      +export const USERS = {
      +  // 支持值为 Object 和 Array
      +  'GET /users': { users: [1, 2], total: 2 },
      +  // GET 可省略
      +  '/users/1': { users: [1, 2], total: 2 },
      +  // POST 请求
      +  'POST /users/1': { uid: 1 },
      +  // 获取请求参数 queryString、headers、body
      +  '/qs': (req: MockRequest) => req.queryString.pi,
      +  // 路由参数
      +  '/users/:id': (req: MockRequest) => req.params, // /users/100, output: { id: 100 }
      +  // 发送 Status 错误
      +  '/404': () => { throw new MockStatusError(404); },
      +  // 使用 () 表示:正则表达式
      +  '/data/(.*)': (req: MockRequest) => req
      +};

      存储规则

      一般来说 Mock 都是开发过程中需要,因此建议在项目根目录下创建一个 _mock 目录,并创建一个 index.ts 文件用于导出所有数据规则,参考 ng-alain/_mock

      \ No newline at end of file diff --git a/ngsw.en.json b/ngsw.en.json index 35eeaa053..3b4805a00 100644 --- a/ngsw.en.json +++ b/ngsw.en.json @@ -1 +1 @@ -{"configVersion":1,"timestamp":1698379481161,"index":"/index.html","assetGroups":[{"name":"app","installMode":"prefetch","updateMode":"prefetch","cacheQueryOptions":{"ignoreVary":true},"urls":["/160.8933dcb761850593.js","/274.53ccab60f9007be4.js","/311.eb37062fcd79cca8.js","/324.7b8f4d584c4d0e3b.js","/414.9038696269c23417.js","/440.22e24eb06a6cfa61.js","/491.d266fd791b98c4a4.js","/520.ef1eb512a64527da.js","/598.000ee902c5c77d7d.js","/696.09f163fa9e095620.js","/711.82e87176b4aa9476.js","/739.4d97e40d86fc9d17.js","/821.bd243b482a51497d.js","/960.87082988e2c9c2bf.js","/967.682711394b69d3ea.js","/index.html","/main.45ee0ca5f60b6432.js","/ngsw-worker.js","/polyfills.6bed21258378d496.js","/runtime.2ee111a129e082d8.js","/safety-worker.js","/scripts.c2e9a31bbab5d761.js","/styles.63d908442a13e3df.css","/worker-basic.min.js"],"patterns":["https:\\/\\/gw\\.alipayobjects\\.com\\/.*","https:\\/\\/img\\.alicdn\\.com\\/.*","https:\\/\\/dummyimage\\.com\\/.*"]},{"name":"assets","installMode":"lazy","updateMode":"prefetch","cacheQueryOptions":{"ignoreVary":true},"urls":["/assets/LOGO.ai","/assets/color.less","/assets/demo.docx","/assets/demo.pdf","/assets/demo.pptx","/assets/demo.xlsx","/assets/demo.zip","/assets/donate.png","/assets/highlight.pack.js","/assets/icons/icon-128x128.png","/assets/icons/icon-144x144.png","/assets/icons/icon-152x152.png","/assets/icons/icon-192x192.png","/assets/icons/icon-384x384.png","/assets/icons/icon-512x512.png","/assets/icons/icon-72x72.png","/assets/icons/icon-96x96.png","/assets/img/404.jpg","/assets/img/avatar.jpg","/assets/img/form-input.png","/assets/img/logo-color.png","/assets/img/logo-color.svg","/assets/img/logo-full.svg","/assets/img/logo.png","/assets/img/logo.svg","/assets/img/ng-alain.svg","/assets/img/plnkr.png","/assets/img/zorro.svg","/assets/jszip/jszip.min.js","/assets/logo-color.svg","/assets/logo-full.svg","/assets/logo.svg","/assets/plyr/plyr.css","/assets/plyr/plyr.min.js","/assets/plyr/plyr.svg","/assets/pro.png","/assets/qq-group.png","/assets/qrious/qrious.min.js","/assets/schema/basic.json","/assets/schema/conditional.json","/assets/schema/fixed.json","/assets/schema/onboarding.json","/assets/schema/sort.json","/assets/schema/validation.json","/assets/screenshot/architecture.png","/assets/screenshot/basic.png","/assets/screenshot/bundle-size.png","/assets/screenshot/desktop.png","/assets/screenshot/ipad.png","/assets/screenshot/iphone.png","/assets/screenshot/ms.png","/assets/screenshot/pro.png","/assets/screenshot/start.png","/assets/screenshot/yun.png","/assets/style.compact.css","/assets/style.dark.css","/assets/xlsx/cpexcel.js","/assets/xlsx/xlsx.full.min.js"],"patterns":[]}],"dataGroups":[],"hashTable":{"/160.8933dcb761850593.js":"5c445bbdcf88580757bfc74de2ef3c0410de8202","/274.53ccab60f9007be4.js":"73a1110557311da137dfcfb5191012244f56a981","/311.eb37062fcd79cca8.js":"3e6f25c62bf2615ea1db576a3f5c32b52b5afb94","/324.7b8f4d584c4d0e3b.js":"44684a5477e4efcb350b2ab0bcb5d587e42af7da","/414.9038696269c23417.js":"d5e99275a0e81425ec7da63b1d2be40ea3cefff1","/440.22e24eb06a6cfa61.js":"c6b45ad15b2add7fdfcd65359581db0f2703efc6","/491.d266fd791b98c4a4.js":"f74d65faa909e1daa02ef85aa64a5fd8d1f665ab","/520.ef1eb512a64527da.js":"bcebb1a63a11b743454f40ad02ab4ddc393f0df1","/598.000ee902c5c77d7d.js":"f71518a7d1a84dfa226a6207c00fbf5a9616b92e","/696.09f163fa9e095620.js":"4babf678bb0d8be6aeee6b3ac543a6fb748acfb8","/711.82e87176b4aa9476.js":"1743f5ba1eac4dfe62b3680b4493bd8a0c2b2da4","/739.4d97e40d86fc9d17.js":"65f0da91db4548587421813635a8219095e4ea21","/821.bd243b482a51497d.js":"e7b00aba6724d9d0ffeb0a486f163057aa0a9ae5","/960.87082988e2c9c2bf.js":"a563958e84ab72498aa2bc652b7343e2348f7ac9","/967.682711394b69d3ea.js":"ac98d5f0f34f40930eead72731769046552f6488","/assets/LOGO.ai":"f0eb50ff534d6596d2e66439066909d965fd74f2","/assets/color.less":"412eb726abb18f6960c32fc0bb0d589384e41f8a","/assets/demo.docx":"e6cf4a7b4a490811ed5bec39e8cf203824e8703f","/assets/demo.pdf":"05248c1d4a636ee577f515809534ca1c85cd45c2","/assets/demo.pptx":"09fcb13206d59676838c2682a2a9b62f0a11863b","/assets/demo.xlsx":"fbfaf8aa861857adadaf89b28fe31ad3100395ea","/assets/demo.zip":"99584e56a5910ccb3d58d6dbbbf4c341747b9d57","/assets/donate.png":"e00d7905db3e9e5a8365072da22bf4816224a79c","/assets/highlight.pack.js":"d43298ac40a94f15d24baaa1f9d4087a7c1a2146","/assets/icons/icon-128x128.png":"a64acae4187c0ac026f569727d427e510e57bd3c","/assets/icons/icon-144x144.png":"3777651bff501b02af74e14a4a7d97330ed06b51","/assets/icons/icon-152x152.png":"1ce29288030cd2787bca6f9e20a9d9ea543c807d","/assets/icons/icon-192x192.png":"027f8042ef3f22333b7f57463f764c14fb10ddda","/assets/icons/icon-384x384.png":"8c398368508ae5b7e7b0f0b500493cb75e5d1ada","/assets/icons/icon-512x512.png":"a8d39cf76ddcb33fa87d534476b2cdefa733d5fe","/assets/icons/icon-72x72.png":"3771059af6090c411bae02002f2e1d7877c368e9","/assets/icons/icon-96x96.png":"400b8ad0e5b8bf5ac0740b3f480e713b2a3fc0e5","/assets/img/404.jpg":"9604038f6b13cb304a14a13b2fa76d43444b4414","/assets/img/avatar.jpg":"1258f9ead6901ff45abd313a1b4f265749749b58","/assets/img/form-input.png":"75c924b9bd023a5e27e9745936a27caaf20a1537","/assets/img/logo-color.png":"8defcb0c2b47a66d7c1b57f78525e488adc62642","/assets/img/logo-color.svg":"587f7e7d6cacc6eb7222b99c08d3df8abc8edd4e","/assets/img/logo-full.svg":"fed68d999561a3180b925071180d3d4cfd2b8440","/assets/img/logo.png":"7dcbf051ab322ef1bd076940e981bf9abdd5ae78","/assets/img/logo.svg":"a2334b77c19d8dc880bbbd82e9939a0aa8d59573","/assets/img/ng-alain.svg":"fb55683a364df5de725cb98a7c51b2eb21ca4de6","/assets/img/plnkr.png":"dc4da4819d5a9b4ff44f1457f96808a761ab9143","/assets/img/zorro.svg":"82d83c92dff3114bd45e985e3c8e402f37a4beb9","/assets/jszip/jszip.min.js":"c96375d50e72b199aa54de7b9ad908fd5a2dc7bc","/assets/logo-color.svg":"587f7e7d6cacc6eb7222b99c08d3df8abc8edd4e","/assets/logo-full.svg":"fed68d999561a3180b925071180d3d4cfd2b8440","/assets/logo.svg":"a2334b77c19d8dc880bbbd82e9939a0aa8d59573","/assets/plyr/plyr.css":"3e9561fb7a2a70b93bb1014f5d958b123fe61764","/assets/plyr/plyr.min.js":"9b165c0e728a0ac4e2cddc944c9a2c5819ca7342","/assets/plyr/plyr.svg":"bc98e4a347921594352fbae53aaad185c0c7f6b5","/assets/pro.png":"0e8e2bd64766aab6e12f44607ad7e92aec241468","/assets/qq-group.png":"1effddfab735644966df1759c2768f282a3e650e","/assets/qrious/qrious.min.js":"a9271e81e2ac6a692b1c133811afa33f0f3d7dc5","/assets/schema/basic.json":"d3b26817208571cfed1a5dd667875c358b1d7e1f","/assets/schema/conditional.json":"204f15af35cc98d5d692c7265d84d2645a6394f0","/assets/schema/fixed.json":"f4d6c6c66503ec0c817ab89e8538c2be028c7cff","/assets/schema/onboarding.json":"20c6f311cc99ccbf7180afb906e9abf74473786b","/assets/schema/sort.json":"850f554e1a7db144e9ad305b6a3ad79bfb58ca28","/assets/schema/validation.json":"0a5971cb42a49672e0005b88036ef47bc8cebe94","/assets/screenshot/architecture.png":"9e19b12a25deab3280ebf5795597a90af29c4c38","/assets/screenshot/basic.png":"42a70c07d9f35413991972634011459fdb010022","/assets/screenshot/bundle-size.png":"f67a8b0678161abce9afcb694db3c02d3b4b5f73","/assets/screenshot/desktop.png":"42a70c07d9f35413991972634011459fdb010022","/assets/screenshot/ipad.png":"0fc5d85a81da2057ec68fc9094c0cb5c862bf309","/assets/screenshot/iphone.png":"6b7d70c66cd422ad5aee06d91ddb39c7fd0558bb","/assets/screenshot/ms.png":"26b0065c7c5d4f9f9c6b0efa4915eb6576caee75","/assets/screenshot/pro.png":"37bd67671530613e955593eb3fc818e27d18dcb6","/assets/screenshot/start.png":"8af50c7dbc9bab333f7e88b67debb6657bc61ed9","/assets/screenshot/yun.png":"b0e3dec2af4dfae8f25e5d90f19cd3c60107e89f","/assets/style.compact.css":"3996636431ec532a2b8ab8d5ff8ebe7bf903b0a1","/assets/style.dark.css":"adfa0753218af8a5e6385fb18ade647938e385a5","/assets/xlsx/cpexcel.js":"9191595b39ba1918d32fb250d3ff21d07f99fc19","/assets/xlsx/xlsx.full.min.js":"7f749f81a45a53229136c6c1f1d50dcb16ddc233","/index.html":"7f7ddbc2a1364986bd1a768c94f03dc50c4168dd","/main.45ee0ca5f60b6432.js":"2dc0286a9f718c366bfd2ebe9c88af202cf73fb6","/ngsw-worker.js":"77d8567420654739b595a7c247149fb3101fd9fb","/polyfills.6bed21258378d496.js":"d7baf2ea4ad968030720714f5655abad5c1f278e","/runtime.2ee111a129e082d8.js":"967a02aa2e0fcc096d22da8560a2bd1caff56a65","/safety-worker.js":"70914dc203fa1f881e56f2b794d7a4f9c48ee745","/scripts.c2e9a31bbab5d761.js":"ca73a628d638d603be98d5eb8fd41f25740268e4","/styles.63d908442a13e3df.css":"7e3b42ae596b96afb8d0384a99c14b6e4d355014","/worker-basic.min.js":"70914dc203fa1f881e56f2b794d7a4f9c48ee745"},"navigationUrls":[{"positive":true,"regex":"^\\/.*$"},{"positive":false,"regex":"^\\/(?:.+\\/)?[^/]*\\.[^/]*$"},{"positive":false,"regex":"^\\/(?:.+\\/)?[^/]*__[^/]*$"},{"positive":false,"regex":"^\\/(?:.+\\/)?[^/]*__[^/]*\\/.*$"},{"positive":false,"regex":"^\\/(?:.+\\/)?stackblitz$"},{"positive":false,"regex":"^\\/version\\/.*$"},{"positive":false,"regex":"^\\/issue-helper\\/.*$"},{"positive":false,"regex":"^\\/docs\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/docs\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/components\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/components\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/cli\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/cli\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/theme\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/theme\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/auth\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/auth\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/acl\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/acl\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/form\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/form\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/cache\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/cache\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/chart\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/chart\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/mock\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/mock\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/util\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/util\\/[^/][^/]*$"}],"navigationRequestStrategy":"performance","local":"en"} +{"configVersion":1,"timestamp":1698758880039,"index":"/index.html","assetGroups":[{"name":"app","installMode":"prefetch","updateMode":"prefetch","cacheQueryOptions":{"ignoreVary":true},"urls":["/160.8933dcb761850593.js","/274.53ccab60f9007be4.js","/311.e23562654f2e1e13.js","/324.7b8f4d584c4d0e3b.js","/414.9038696269c23417.js","/440.22e24eb06a6cfa61.js","/491.d266fd791b98c4a4.js","/520.ef1eb512a64527da.js","/598.000ee902c5c77d7d.js","/696.09f163fa9e095620.js","/711.82e87176b4aa9476.js","/739.4d97e40d86fc9d17.js","/821.bd243b482a51497d.js","/960.87082988e2c9c2bf.js","/967.682711394b69d3ea.js","/index.html","/main.fbd13711a2b1f5c4.js","/ngsw-worker.js","/polyfills.6bed21258378d496.js","/runtime.60ff8d985730d5b2.js","/safety-worker.js","/scripts.c2e9a31bbab5d761.js","/styles.efec4df9833e118e.css","/worker-basic.min.js"],"patterns":["https:\\/\\/gw\\.alipayobjects\\.com\\/.*","https:\\/\\/img\\.alicdn\\.com\\/.*","https:\\/\\/dummyimage\\.com\\/.*"]},{"name":"assets","installMode":"lazy","updateMode":"prefetch","cacheQueryOptions":{"ignoreVary":true},"urls":["/assets/LOGO.ai","/assets/color.less","/assets/demo.docx","/assets/demo.pdf","/assets/demo.pptx","/assets/demo.xlsx","/assets/demo.zip","/assets/donate.png","/assets/highlight.pack.js","/assets/icons/icon-128x128.png","/assets/icons/icon-144x144.png","/assets/icons/icon-152x152.png","/assets/icons/icon-192x192.png","/assets/icons/icon-384x384.png","/assets/icons/icon-512x512.png","/assets/icons/icon-72x72.png","/assets/icons/icon-96x96.png","/assets/img/404.jpg","/assets/img/avatar.jpg","/assets/img/form-input.png","/assets/img/logo-color.png","/assets/img/logo-color.svg","/assets/img/logo-full.svg","/assets/img/logo.png","/assets/img/logo.svg","/assets/img/ng-alain.svg","/assets/img/plnkr.png","/assets/img/zorro.svg","/assets/jszip/jszip.min.js","/assets/logo-color.svg","/assets/logo-full.svg","/assets/logo.svg","/assets/plyr/plyr.css","/assets/plyr/plyr.min.js","/assets/plyr/plyr.svg","/assets/pro.png","/assets/qq-group.png","/assets/qrious/qrious.min.js","/assets/schema/basic.json","/assets/schema/conditional.json","/assets/schema/fixed.json","/assets/schema/onboarding.json","/assets/schema/sort.json","/assets/schema/validation.json","/assets/screenshot/architecture.png","/assets/screenshot/basic.png","/assets/screenshot/bundle-size.png","/assets/screenshot/desktop.png","/assets/screenshot/ipad.png","/assets/screenshot/iphone.png","/assets/screenshot/ms.png","/assets/screenshot/pro.png","/assets/screenshot/start.png","/assets/screenshot/yun.png","/assets/style.compact.css","/assets/style.dark.css","/assets/xlsx/cpexcel.js","/assets/xlsx/xlsx.full.min.js"],"patterns":[]}],"dataGroups":[],"hashTable":{"/160.8933dcb761850593.js":"5c445bbdcf88580757bfc74de2ef3c0410de8202","/274.53ccab60f9007be4.js":"73a1110557311da137dfcfb5191012244f56a981","/311.e23562654f2e1e13.js":"1010b5c791150c8047aac6fe33dfb7731a65eba0","/324.7b8f4d584c4d0e3b.js":"44684a5477e4efcb350b2ab0bcb5d587e42af7da","/414.9038696269c23417.js":"d5e99275a0e81425ec7da63b1d2be40ea3cefff1","/440.22e24eb06a6cfa61.js":"c6b45ad15b2add7fdfcd65359581db0f2703efc6","/491.d266fd791b98c4a4.js":"f74d65faa909e1daa02ef85aa64a5fd8d1f665ab","/520.ef1eb512a64527da.js":"bcebb1a63a11b743454f40ad02ab4ddc393f0df1","/598.000ee902c5c77d7d.js":"f71518a7d1a84dfa226a6207c00fbf5a9616b92e","/696.09f163fa9e095620.js":"4babf678bb0d8be6aeee6b3ac543a6fb748acfb8","/711.82e87176b4aa9476.js":"1743f5ba1eac4dfe62b3680b4493bd8a0c2b2da4","/739.4d97e40d86fc9d17.js":"65f0da91db4548587421813635a8219095e4ea21","/821.bd243b482a51497d.js":"e7b00aba6724d9d0ffeb0a486f163057aa0a9ae5","/960.87082988e2c9c2bf.js":"a563958e84ab72498aa2bc652b7343e2348f7ac9","/967.682711394b69d3ea.js":"ac98d5f0f34f40930eead72731769046552f6488","/assets/LOGO.ai":"f0eb50ff534d6596d2e66439066909d965fd74f2","/assets/color.less":"412eb726abb18f6960c32fc0bb0d589384e41f8a","/assets/demo.docx":"e6cf4a7b4a490811ed5bec39e8cf203824e8703f","/assets/demo.pdf":"05248c1d4a636ee577f515809534ca1c85cd45c2","/assets/demo.pptx":"09fcb13206d59676838c2682a2a9b62f0a11863b","/assets/demo.xlsx":"fbfaf8aa861857adadaf89b28fe31ad3100395ea","/assets/demo.zip":"99584e56a5910ccb3d58d6dbbbf4c341747b9d57","/assets/donate.png":"e00d7905db3e9e5a8365072da22bf4816224a79c","/assets/highlight.pack.js":"d43298ac40a94f15d24baaa1f9d4087a7c1a2146","/assets/icons/icon-128x128.png":"a64acae4187c0ac026f569727d427e510e57bd3c","/assets/icons/icon-144x144.png":"3777651bff501b02af74e14a4a7d97330ed06b51","/assets/icons/icon-152x152.png":"1ce29288030cd2787bca6f9e20a9d9ea543c807d","/assets/icons/icon-192x192.png":"027f8042ef3f22333b7f57463f764c14fb10ddda","/assets/icons/icon-384x384.png":"8c398368508ae5b7e7b0f0b500493cb75e5d1ada","/assets/icons/icon-512x512.png":"a8d39cf76ddcb33fa87d534476b2cdefa733d5fe","/assets/icons/icon-72x72.png":"3771059af6090c411bae02002f2e1d7877c368e9","/assets/icons/icon-96x96.png":"400b8ad0e5b8bf5ac0740b3f480e713b2a3fc0e5","/assets/img/404.jpg":"9604038f6b13cb304a14a13b2fa76d43444b4414","/assets/img/avatar.jpg":"1258f9ead6901ff45abd313a1b4f265749749b58","/assets/img/form-input.png":"75c924b9bd023a5e27e9745936a27caaf20a1537","/assets/img/logo-color.png":"8defcb0c2b47a66d7c1b57f78525e488adc62642","/assets/img/logo-color.svg":"587f7e7d6cacc6eb7222b99c08d3df8abc8edd4e","/assets/img/logo-full.svg":"fed68d999561a3180b925071180d3d4cfd2b8440","/assets/img/logo.png":"7dcbf051ab322ef1bd076940e981bf9abdd5ae78","/assets/img/logo.svg":"a2334b77c19d8dc880bbbd82e9939a0aa8d59573","/assets/img/ng-alain.svg":"fb55683a364df5de725cb98a7c51b2eb21ca4de6","/assets/img/plnkr.png":"dc4da4819d5a9b4ff44f1457f96808a761ab9143","/assets/img/zorro.svg":"82d83c92dff3114bd45e985e3c8e402f37a4beb9","/assets/jszip/jszip.min.js":"c96375d50e72b199aa54de7b9ad908fd5a2dc7bc","/assets/logo-color.svg":"587f7e7d6cacc6eb7222b99c08d3df8abc8edd4e","/assets/logo-full.svg":"fed68d999561a3180b925071180d3d4cfd2b8440","/assets/logo.svg":"a2334b77c19d8dc880bbbd82e9939a0aa8d59573","/assets/plyr/plyr.css":"3e9561fb7a2a70b93bb1014f5d958b123fe61764","/assets/plyr/plyr.min.js":"9b165c0e728a0ac4e2cddc944c9a2c5819ca7342","/assets/plyr/plyr.svg":"bc98e4a347921594352fbae53aaad185c0c7f6b5","/assets/pro.png":"0e8e2bd64766aab6e12f44607ad7e92aec241468","/assets/qq-group.png":"1effddfab735644966df1759c2768f282a3e650e","/assets/qrious/qrious.min.js":"a9271e81e2ac6a692b1c133811afa33f0f3d7dc5","/assets/schema/basic.json":"d3b26817208571cfed1a5dd667875c358b1d7e1f","/assets/schema/conditional.json":"204f15af35cc98d5d692c7265d84d2645a6394f0","/assets/schema/fixed.json":"f4d6c6c66503ec0c817ab89e8538c2be028c7cff","/assets/schema/onboarding.json":"20c6f311cc99ccbf7180afb906e9abf74473786b","/assets/schema/sort.json":"850f554e1a7db144e9ad305b6a3ad79bfb58ca28","/assets/schema/validation.json":"0a5971cb42a49672e0005b88036ef47bc8cebe94","/assets/screenshot/architecture.png":"9e19b12a25deab3280ebf5795597a90af29c4c38","/assets/screenshot/basic.png":"42a70c07d9f35413991972634011459fdb010022","/assets/screenshot/bundle-size.png":"f67a8b0678161abce9afcb694db3c02d3b4b5f73","/assets/screenshot/desktop.png":"42a70c07d9f35413991972634011459fdb010022","/assets/screenshot/ipad.png":"0fc5d85a81da2057ec68fc9094c0cb5c862bf309","/assets/screenshot/iphone.png":"6b7d70c66cd422ad5aee06d91ddb39c7fd0558bb","/assets/screenshot/ms.png":"26b0065c7c5d4f9f9c6b0efa4915eb6576caee75","/assets/screenshot/pro.png":"37bd67671530613e955593eb3fc818e27d18dcb6","/assets/screenshot/start.png":"8af50c7dbc9bab333f7e88b67debb6657bc61ed9","/assets/screenshot/yun.png":"b0e3dec2af4dfae8f25e5d90f19cd3c60107e89f","/assets/style.compact.css":"450f3ea3fbe3e383b2c5ae674cfd5031462bf67e","/assets/style.dark.css":"302f462cff38fe2c0834203cdc965369fb589548","/assets/xlsx/cpexcel.js":"9191595b39ba1918d32fb250d3ff21d07f99fc19","/assets/xlsx/xlsx.full.min.js":"7f749f81a45a53229136c6c1f1d50dcb16ddc233","/index.html":"c3207416f0bec32af0eea18136796039e40a3ff7","/main.fbd13711a2b1f5c4.js":"0e7812bb77594d3494d6698a0d717ca3dbfb13b0","/ngsw-worker.js":"77d8567420654739b595a7c247149fb3101fd9fb","/polyfills.6bed21258378d496.js":"d7baf2ea4ad968030720714f5655abad5c1f278e","/runtime.60ff8d985730d5b2.js":"5bb81cc66febfa75db6bd03377e9ca2333682469","/safety-worker.js":"70914dc203fa1f881e56f2b794d7a4f9c48ee745","/scripts.c2e9a31bbab5d761.js":"ca73a628d638d603be98d5eb8fd41f25740268e4","/styles.efec4df9833e118e.css":"ba09adf267234772a077f87f05cc4f82e4a95ca7","/worker-basic.min.js":"70914dc203fa1f881e56f2b794d7a4f9c48ee745"},"navigationUrls":[{"positive":true,"regex":"^\\/.*$"},{"positive":false,"regex":"^\\/(?:.+\\/)?[^/]*\\.[^/]*$"},{"positive":false,"regex":"^\\/(?:.+\\/)?[^/]*__[^/]*$"},{"positive":false,"regex":"^\\/(?:.+\\/)?[^/]*__[^/]*\\/.*$"},{"positive":false,"regex":"^\\/(?:.+\\/)?stackblitz$"},{"positive":false,"regex":"^\\/version\\/.*$"},{"positive":false,"regex":"^\\/issue-helper\\/.*$"},{"positive":false,"regex":"^\\/docs\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/docs\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/components\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/components\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/cli\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/cli\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/theme\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/theme\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/auth\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/auth\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/acl\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/acl\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/form\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/form\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/cache\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/cache\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/chart\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/chart\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/mock\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/mock\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/util\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/util\\/[^/][^/]*$"}],"navigationRequestStrategy":"performance","local":"en"} diff --git a/ngsw.json b/ngsw.json index bb24564a4..94a737ea2 100644 --- a/ngsw.json +++ b/ngsw.json @@ -1,6 +1,6 @@ { "configVersion": 1, - "timestamp": 1698379481161, + "timestamp": 1698758880039, "index": "/index.html", "assetGroups": [ { @@ -13,7 +13,7 @@ "urls": [ "/160.8933dcb761850593.js", "/274.53ccab60f9007be4.js", - "/311.eb37062fcd79cca8.js", + "/311.e23562654f2e1e13.js", "/324.7b8f4d584c4d0e3b.js", "/414.9038696269c23417.js", "/440.22e24eb06a6cfa61.js", @@ -27,13 +27,13 @@ "/960.87082988e2c9c2bf.js", "/967.682711394b69d3ea.js", "/index.html", - "/main.45ee0ca5f60b6432.js", + "/main.fbd13711a2b1f5c4.js", "/ngsw-worker.js", "/polyfills.6bed21258378d496.js", - "/runtime.2ee111a129e082d8.js", + "/runtime.60ff8d985730d5b2.js", "/safety-worker.js", "/scripts.c2e9a31bbab5d761.js", - "/styles.63d908442a13e3df.css", + "/styles.efec4df9833e118e.css", "/worker-basic.min.js" ], "patterns": [ @@ -116,7 +116,7 @@ "hashTable": { "/160.8933dcb761850593.js": "5c445bbdcf88580757bfc74de2ef3c0410de8202", "/274.53ccab60f9007be4.js": "73a1110557311da137dfcfb5191012244f56a981", - "/311.eb37062fcd79cca8.js": "3e6f25c62bf2615ea1db576a3f5c32b52b5afb94", + "/311.e23562654f2e1e13.js": "1010b5c791150c8047aac6fe33dfb7731a65eba0", "/324.7b8f4d584c4d0e3b.js": "44684a5477e4efcb350b2ab0bcb5d587e42af7da", "/414.9038696269c23417.js": "d5e99275a0e81425ec7da63b1d2be40ea3cefff1", "/440.22e24eb06a6cfa61.js": "c6b45ad15b2add7fdfcd65359581db0f2703efc6", @@ -183,18 +183,18 @@ "/assets/screenshot/pro.png": "37bd67671530613e955593eb3fc818e27d18dcb6", "/assets/screenshot/start.png": "8af50c7dbc9bab333f7e88b67debb6657bc61ed9", "/assets/screenshot/yun.png": "b0e3dec2af4dfae8f25e5d90f19cd3c60107e89f", - "/assets/style.compact.css": "3996636431ec532a2b8ab8d5ff8ebe7bf903b0a1", - "/assets/style.dark.css": "adfa0753218af8a5e6385fb18ade647938e385a5", + "/assets/style.compact.css": "450f3ea3fbe3e383b2c5ae674cfd5031462bf67e", + "/assets/style.dark.css": "302f462cff38fe2c0834203cdc965369fb589548", "/assets/xlsx/cpexcel.js": "9191595b39ba1918d32fb250d3ff21d07f99fc19", "/assets/xlsx/xlsx.full.min.js": "7f749f81a45a53229136c6c1f1d50dcb16ddc233", - "/index.html": "7f7ddbc2a1364986bd1a768c94f03dc50c4168dd", - "/main.45ee0ca5f60b6432.js": "2dc0286a9f718c366bfd2ebe9c88af202cf73fb6", + "/index.html": "c3207416f0bec32af0eea18136796039e40a3ff7", + "/main.fbd13711a2b1f5c4.js": "0e7812bb77594d3494d6698a0d717ca3dbfb13b0", "/ngsw-worker.js": "77d8567420654739b595a7c247149fb3101fd9fb", "/polyfills.6bed21258378d496.js": "d7baf2ea4ad968030720714f5655abad5c1f278e", - "/runtime.2ee111a129e082d8.js": "967a02aa2e0fcc096d22da8560a2bd1caff56a65", + "/runtime.60ff8d985730d5b2.js": "5bb81cc66febfa75db6bd03377e9ca2333682469", "/safety-worker.js": "70914dc203fa1f881e56f2b794d7a4f9c48ee745", "/scripts.c2e9a31bbab5d761.js": "ca73a628d638d603be98d5eb8fd41f25740268e4", - "/styles.63d908442a13e3df.css": "7e3b42ae596b96afb8d0384a99c14b6e4d355014", + "/styles.efec4df9833e118e.css": "ba09adf267234772a077f87f05cc4f82e4a95ca7", "/worker-basic.min.js": "70914dc203fa1f881e56f2b794d7a4f9c48ee745" }, "navigationUrls": [ diff --git a/ngsw.zh.json b/ngsw.zh.json index 0c1f58fa1..26918d2ee 100644 --- a/ngsw.zh.json +++ b/ngsw.zh.json @@ -1 +1 @@ -{"configVersion":1,"timestamp":1698379479466,"index":"/index.html","assetGroups":[{"name":"app","installMode":"prefetch","updateMode":"prefetch","cacheQueryOptions":{"ignoreVary":true},"urls":["/160.8933dcb761850593.js","/274.53ccab60f9007be4.js","/311.eb37062fcd79cca8.js","/324.7b8f4d584c4d0e3b.js","/414.9038696269c23417.js","/440.22e24eb06a6cfa61.js","/491.d266fd791b98c4a4.js","/520.ef1eb512a64527da.js","/598.000ee902c5c77d7d.js","/696.09f163fa9e095620.js","/711.82e87176b4aa9476.js","/739.4d97e40d86fc9d17.js","/821.bd243b482a51497d.js","/960.87082988e2c9c2bf.js","/967.682711394b69d3ea.js","/index.html","/main.45ee0ca5f60b6432.js","/ngsw-worker.js","/polyfills.6bed21258378d496.js","/runtime.2ee111a129e082d8.js","/safety-worker.js","/scripts.c2e9a31bbab5d761.js","/styles.63d908442a13e3df.css","/worker-basic.min.js"],"patterns":["https:\\/\\/gw\\.alipayobjects\\.com\\/.*","https:\\/\\/img\\.alicdn\\.com\\/.*","https:\\/\\/dummyimage\\.com\\/.*"]},{"name":"assets","installMode":"lazy","updateMode":"prefetch","cacheQueryOptions":{"ignoreVary":true},"urls":["/assets/LOGO.ai","/assets/color.less","/assets/demo.docx","/assets/demo.pdf","/assets/demo.pptx","/assets/demo.xlsx","/assets/demo.zip","/assets/donate.png","/assets/highlight.pack.js","/assets/icons/icon-128x128.png","/assets/icons/icon-144x144.png","/assets/icons/icon-152x152.png","/assets/icons/icon-192x192.png","/assets/icons/icon-384x384.png","/assets/icons/icon-512x512.png","/assets/icons/icon-72x72.png","/assets/icons/icon-96x96.png","/assets/img/404.jpg","/assets/img/avatar.jpg","/assets/img/form-input.png","/assets/img/logo-color.png","/assets/img/logo-color.svg","/assets/img/logo-full.svg","/assets/img/logo.png","/assets/img/logo.svg","/assets/img/ng-alain.svg","/assets/img/plnkr.png","/assets/img/zorro.svg","/assets/jszip/jszip.min.js","/assets/logo-color.svg","/assets/logo-full.svg","/assets/logo.svg","/assets/plyr/plyr.css","/assets/plyr/plyr.min.js","/assets/plyr/plyr.svg","/assets/pro.png","/assets/qq-group.png","/assets/qrious/qrious.min.js","/assets/schema/basic.json","/assets/schema/conditional.json","/assets/schema/fixed.json","/assets/schema/onboarding.json","/assets/schema/sort.json","/assets/schema/validation.json","/assets/screenshot/architecture.png","/assets/screenshot/basic.png","/assets/screenshot/bundle-size.png","/assets/screenshot/desktop.png","/assets/screenshot/ipad.png","/assets/screenshot/iphone.png","/assets/screenshot/ms.png","/assets/screenshot/pro.png","/assets/screenshot/start.png","/assets/screenshot/yun.png","/assets/style.compact.css","/assets/style.dark.css","/assets/xlsx/cpexcel.js","/assets/xlsx/xlsx.full.min.js"],"patterns":[]}],"dataGroups":[],"hashTable":{"/160.8933dcb761850593.js":"5c445bbdcf88580757bfc74de2ef3c0410de8202","/274.53ccab60f9007be4.js":"73a1110557311da137dfcfb5191012244f56a981","/311.eb37062fcd79cca8.js":"3e6f25c62bf2615ea1db576a3f5c32b52b5afb94","/324.7b8f4d584c4d0e3b.js":"44684a5477e4efcb350b2ab0bcb5d587e42af7da","/414.9038696269c23417.js":"d5e99275a0e81425ec7da63b1d2be40ea3cefff1","/440.22e24eb06a6cfa61.js":"c6b45ad15b2add7fdfcd65359581db0f2703efc6","/491.d266fd791b98c4a4.js":"f74d65faa909e1daa02ef85aa64a5fd8d1f665ab","/520.ef1eb512a64527da.js":"bcebb1a63a11b743454f40ad02ab4ddc393f0df1","/598.000ee902c5c77d7d.js":"f71518a7d1a84dfa226a6207c00fbf5a9616b92e","/696.09f163fa9e095620.js":"4babf678bb0d8be6aeee6b3ac543a6fb748acfb8","/711.82e87176b4aa9476.js":"1743f5ba1eac4dfe62b3680b4493bd8a0c2b2da4","/739.4d97e40d86fc9d17.js":"65f0da91db4548587421813635a8219095e4ea21","/821.bd243b482a51497d.js":"e7b00aba6724d9d0ffeb0a486f163057aa0a9ae5","/960.87082988e2c9c2bf.js":"a563958e84ab72498aa2bc652b7343e2348f7ac9","/967.682711394b69d3ea.js":"ac98d5f0f34f40930eead72731769046552f6488","/assets/LOGO.ai":"f0eb50ff534d6596d2e66439066909d965fd74f2","/assets/color.less":"412eb726abb18f6960c32fc0bb0d589384e41f8a","/assets/demo.docx":"e6cf4a7b4a490811ed5bec39e8cf203824e8703f","/assets/demo.pdf":"05248c1d4a636ee577f515809534ca1c85cd45c2","/assets/demo.pptx":"09fcb13206d59676838c2682a2a9b62f0a11863b","/assets/demo.xlsx":"fbfaf8aa861857adadaf89b28fe31ad3100395ea","/assets/demo.zip":"99584e56a5910ccb3d58d6dbbbf4c341747b9d57","/assets/donate.png":"e00d7905db3e9e5a8365072da22bf4816224a79c","/assets/highlight.pack.js":"d43298ac40a94f15d24baaa1f9d4087a7c1a2146","/assets/icons/icon-128x128.png":"a64acae4187c0ac026f569727d427e510e57bd3c","/assets/icons/icon-144x144.png":"3777651bff501b02af74e14a4a7d97330ed06b51","/assets/icons/icon-152x152.png":"1ce29288030cd2787bca6f9e20a9d9ea543c807d","/assets/icons/icon-192x192.png":"027f8042ef3f22333b7f57463f764c14fb10ddda","/assets/icons/icon-384x384.png":"8c398368508ae5b7e7b0f0b500493cb75e5d1ada","/assets/icons/icon-512x512.png":"a8d39cf76ddcb33fa87d534476b2cdefa733d5fe","/assets/icons/icon-72x72.png":"3771059af6090c411bae02002f2e1d7877c368e9","/assets/icons/icon-96x96.png":"400b8ad0e5b8bf5ac0740b3f480e713b2a3fc0e5","/assets/img/404.jpg":"9604038f6b13cb304a14a13b2fa76d43444b4414","/assets/img/avatar.jpg":"1258f9ead6901ff45abd313a1b4f265749749b58","/assets/img/form-input.png":"75c924b9bd023a5e27e9745936a27caaf20a1537","/assets/img/logo-color.png":"8defcb0c2b47a66d7c1b57f78525e488adc62642","/assets/img/logo-color.svg":"587f7e7d6cacc6eb7222b99c08d3df8abc8edd4e","/assets/img/logo-full.svg":"fed68d999561a3180b925071180d3d4cfd2b8440","/assets/img/logo.png":"7dcbf051ab322ef1bd076940e981bf9abdd5ae78","/assets/img/logo.svg":"a2334b77c19d8dc880bbbd82e9939a0aa8d59573","/assets/img/ng-alain.svg":"fb55683a364df5de725cb98a7c51b2eb21ca4de6","/assets/img/plnkr.png":"dc4da4819d5a9b4ff44f1457f96808a761ab9143","/assets/img/zorro.svg":"82d83c92dff3114bd45e985e3c8e402f37a4beb9","/assets/jszip/jszip.min.js":"c96375d50e72b199aa54de7b9ad908fd5a2dc7bc","/assets/logo-color.svg":"587f7e7d6cacc6eb7222b99c08d3df8abc8edd4e","/assets/logo-full.svg":"fed68d999561a3180b925071180d3d4cfd2b8440","/assets/logo.svg":"a2334b77c19d8dc880bbbd82e9939a0aa8d59573","/assets/plyr/plyr.css":"3e9561fb7a2a70b93bb1014f5d958b123fe61764","/assets/plyr/plyr.min.js":"9b165c0e728a0ac4e2cddc944c9a2c5819ca7342","/assets/plyr/plyr.svg":"bc98e4a347921594352fbae53aaad185c0c7f6b5","/assets/pro.png":"0e8e2bd64766aab6e12f44607ad7e92aec241468","/assets/qq-group.png":"1effddfab735644966df1759c2768f282a3e650e","/assets/qrious/qrious.min.js":"a9271e81e2ac6a692b1c133811afa33f0f3d7dc5","/assets/schema/basic.json":"d3b26817208571cfed1a5dd667875c358b1d7e1f","/assets/schema/conditional.json":"204f15af35cc98d5d692c7265d84d2645a6394f0","/assets/schema/fixed.json":"f4d6c6c66503ec0c817ab89e8538c2be028c7cff","/assets/schema/onboarding.json":"20c6f311cc99ccbf7180afb906e9abf74473786b","/assets/schema/sort.json":"850f554e1a7db144e9ad305b6a3ad79bfb58ca28","/assets/schema/validation.json":"0a5971cb42a49672e0005b88036ef47bc8cebe94","/assets/screenshot/architecture.png":"9e19b12a25deab3280ebf5795597a90af29c4c38","/assets/screenshot/basic.png":"42a70c07d9f35413991972634011459fdb010022","/assets/screenshot/bundle-size.png":"f67a8b0678161abce9afcb694db3c02d3b4b5f73","/assets/screenshot/desktop.png":"42a70c07d9f35413991972634011459fdb010022","/assets/screenshot/ipad.png":"0fc5d85a81da2057ec68fc9094c0cb5c862bf309","/assets/screenshot/iphone.png":"6b7d70c66cd422ad5aee06d91ddb39c7fd0558bb","/assets/screenshot/ms.png":"26b0065c7c5d4f9f9c6b0efa4915eb6576caee75","/assets/screenshot/pro.png":"37bd67671530613e955593eb3fc818e27d18dcb6","/assets/screenshot/start.png":"8af50c7dbc9bab333f7e88b67debb6657bc61ed9","/assets/screenshot/yun.png":"b0e3dec2af4dfae8f25e5d90f19cd3c60107e89f","/assets/style.compact.css":"3996636431ec532a2b8ab8d5ff8ebe7bf903b0a1","/assets/style.dark.css":"adfa0753218af8a5e6385fb18ade647938e385a5","/assets/xlsx/cpexcel.js":"9191595b39ba1918d32fb250d3ff21d07f99fc19","/assets/xlsx/xlsx.full.min.js":"7f749f81a45a53229136c6c1f1d50dcb16ddc233","/index.html":"7f7ddbc2a1364986bd1a768c94f03dc50c4168dd","/main.45ee0ca5f60b6432.js":"2dc0286a9f718c366bfd2ebe9c88af202cf73fb6","/ngsw-worker.js":"77d8567420654739b595a7c247149fb3101fd9fb","/polyfills.6bed21258378d496.js":"d7baf2ea4ad968030720714f5655abad5c1f278e","/runtime.2ee111a129e082d8.js":"967a02aa2e0fcc096d22da8560a2bd1caff56a65","/safety-worker.js":"70914dc203fa1f881e56f2b794d7a4f9c48ee745","/scripts.c2e9a31bbab5d761.js":"ca73a628d638d603be98d5eb8fd41f25740268e4","/styles.63d908442a13e3df.css":"7e3b42ae596b96afb8d0384a99c14b6e4d355014","/worker-basic.min.js":"70914dc203fa1f881e56f2b794d7a4f9c48ee745"},"navigationUrls":[{"positive":true,"regex":"^\\/.*$"},{"positive":false,"regex":"^\\/(?:.+\\/)?[^/]*\\.[^/]*$"},{"positive":false,"regex":"^\\/(?:.+\\/)?[^/]*__[^/]*$"},{"positive":false,"regex":"^\\/(?:.+\\/)?[^/]*__[^/]*\\/.*$"},{"positive":false,"regex":"^\\/(?:.+\\/)?stackblitz$"},{"positive":false,"regex":"^\\/version\\/.*$"},{"positive":false,"regex":"^\\/issue-helper\\/.*$"},{"positive":false,"regex":"^\\/docs\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/docs\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/components\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/components\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/cli\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/cli\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/theme\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/theme\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/auth\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/auth\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/acl\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/acl\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/form\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/form\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/cache\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/cache\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/chart\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/chart\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/mock\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/mock\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/util\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/util\\/[^/][^/]*$"}],"navigationRequestStrategy":"performance","local":"zh"} +{"configVersion":1,"timestamp":1698758877594,"index":"/index.html","assetGroups":[{"name":"app","installMode":"prefetch","updateMode":"prefetch","cacheQueryOptions":{"ignoreVary":true},"urls":["/160.8933dcb761850593.js","/274.53ccab60f9007be4.js","/311.e23562654f2e1e13.js","/324.7b8f4d584c4d0e3b.js","/414.9038696269c23417.js","/440.22e24eb06a6cfa61.js","/491.d266fd791b98c4a4.js","/520.ef1eb512a64527da.js","/598.000ee902c5c77d7d.js","/696.09f163fa9e095620.js","/711.82e87176b4aa9476.js","/739.4d97e40d86fc9d17.js","/821.bd243b482a51497d.js","/960.87082988e2c9c2bf.js","/967.682711394b69d3ea.js","/index.html","/main.fbd13711a2b1f5c4.js","/ngsw-worker.js","/polyfills.6bed21258378d496.js","/runtime.60ff8d985730d5b2.js","/safety-worker.js","/scripts.c2e9a31bbab5d761.js","/styles.efec4df9833e118e.css","/worker-basic.min.js"],"patterns":["https:\\/\\/gw\\.alipayobjects\\.com\\/.*","https:\\/\\/img\\.alicdn\\.com\\/.*","https:\\/\\/dummyimage\\.com\\/.*"]},{"name":"assets","installMode":"lazy","updateMode":"prefetch","cacheQueryOptions":{"ignoreVary":true},"urls":["/assets/LOGO.ai","/assets/color.less","/assets/demo.docx","/assets/demo.pdf","/assets/demo.pptx","/assets/demo.xlsx","/assets/demo.zip","/assets/donate.png","/assets/highlight.pack.js","/assets/icons/icon-128x128.png","/assets/icons/icon-144x144.png","/assets/icons/icon-152x152.png","/assets/icons/icon-192x192.png","/assets/icons/icon-384x384.png","/assets/icons/icon-512x512.png","/assets/icons/icon-72x72.png","/assets/icons/icon-96x96.png","/assets/img/404.jpg","/assets/img/avatar.jpg","/assets/img/form-input.png","/assets/img/logo-color.png","/assets/img/logo-color.svg","/assets/img/logo-full.svg","/assets/img/logo.png","/assets/img/logo.svg","/assets/img/ng-alain.svg","/assets/img/plnkr.png","/assets/img/zorro.svg","/assets/jszip/jszip.min.js","/assets/logo-color.svg","/assets/logo-full.svg","/assets/logo.svg","/assets/plyr/plyr.css","/assets/plyr/plyr.min.js","/assets/plyr/plyr.svg","/assets/pro.png","/assets/qq-group.png","/assets/qrious/qrious.min.js","/assets/schema/basic.json","/assets/schema/conditional.json","/assets/schema/fixed.json","/assets/schema/onboarding.json","/assets/schema/sort.json","/assets/schema/validation.json","/assets/screenshot/architecture.png","/assets/screenshot/basic.png","/assets/screenshot/bundle-size.png","/assets/screenshot/desktop.png","/assets/screenshot/ipad.png","/assets/screenshot/iphone.png","/assets/screenshot/ms.png","/assets/screenshot/pro.png","/assets/screenshot/start.png","/assets/screenshot/yun.png","/assets/style.compact.css","/assets/style.dark.css","/assets/xlsx/cpexcel.js","/assets/xlsx/xlsx.full.min.js"],"patterns":[]}],"dataGroups":[],"hashTable":{"/160.8933dcb761850593.js":"5c445bbdcf88580757bfc74de2ef3c0410de8202","/274.53ccab60f9007be4.js":"73a1110557311da137dfcfb5191012244f56a981","/311.e23562654f2e1e13.js":"1010b5c791150c8047aac6fe33dfb7731a65eba0","/324.7b8f4d584c4d0e3b.js":"44684a5477e4efcb350b2ab0bcb5d587e42af7da","/414.9038696269c23417.js":"d5e99275a0e81425ec7da63b1d2be40ea3cefff1","/440.22e24eb06a6cfa61.js":"c6b45ad15b2add7fdfcd65359581db0f2703efc6","/491.d266fd791b98c4a4.js":"f74d65faa909e1daa02ef85aa64a5fd8d1f665ab","/520.ef1eb512a64527da.js":"bcebb1a63a11b743454f40ad02ab4ddc393f0df1","/598.000ee902c5c77d7d.js":"f71518a7d1a84dfa226a6207c00fbf5a9616b92e","/696.09f163fa9e095620.js":"4babf678bb0d8be6aeee6b3ac543a6fb748acfb8","/711.82e87176b4aa9476.js":"1743f5ba1eac4dfe62b3680b4493bd8a0c2b2da4","/739.4d97e40d86fc9d17.js":"65f0da91db4548587421813635a8219095e4ea21","/821.bd243b482a51497d.js":"e7b00aba6724d9d0ffeb0a486f163057aa0a9ae5","/960.87082988e2c9c2bf.js":"a563958e84ab72498aa2bc652b7343e2348f7ac9","/967.682711394b69d3ea.js":"ac98d5f0f34f40930eead72731769046552f6488","/assets/LOGO.ai":"f0eb50ff534d6596d2e66439066909d965fd74f2","/assets/color.less":"412eb726abb18f6960c32fc0bb0d589384e41f8a","/assets/demo.docx":"e6cf4a7b4a490811ed5bec39e8cf203824e8703f","/assets/demo.pdf":"05248c1d4a636ee577f515809534ca1c85cd45c2","/assets/demo.pptx":"09fcb13206d59676838c2682a2a9b62f0a11863b","/assets/demo.xlsx":"fbfaf8aa861857adadaf89b28fe31ad3100395ea","/assets/demo.zip":"99584e56a5910ccb3d58d6dbbbf4c341747b9d57","/assets/donate.png":"e00d7905db3e9e5a8365072da22bf4816224a79c","/assets/highlight.pack.js":"d43298ac40a94f15d24baaa1f9d4087a7c1a2146","/assets/icons/icon-128x128.png":"a64acae4187c0ac026f569727d427e510e57bd3c","/assets/icons/icon-144x144.png":"3777651bff501b02af74e14a4a7d97330ed06b51","/assets/icons/icon-152x152.png":"1ce29288030cd2787bca6f9e20a9d9ea543c807d","/assets/icons/icon-192x192.png":"027f8042ef3f22333b7f57463f764c14fb10ddda","/assets/icons/icon-384x384.png":"8c398368508ae5b7e7b0f0b500493cb75e5d1ada","/assets/icons/icon-512x512.png":"a8d39cf76ddcb33fa87d534476b2cdefa733d5fe","/assets/icons/icon-72x72.png":"3771059af6090c411bae02002f2e1d7877c368e9","/assets/icons/icon-96x96.png":"400b8ad0e5b8bf5ac0740b3f480e713b2a3fc0e5","/assets/img/404.jpg":"9604038f6b13cb304a14a13b2fa76d43444b4414","/assets/img/avatar.jpg":"1258f9ead6901ff45abd313a1b4f265749749b58","/assets/img/form-input.png":"75c924b9bd023a5e27e9745936a27caaf20a1537","/assets/img/logo-color.png":"8defcb0c2b47a66d7c1b57f78525e488adc62642","/assets/img/logo-color.svg":"587f7e7d6cacc6eb7222b99c08d3df8abc8edd4e","/assets/img/logo-full.svg":"fed68d999561a3180b925071180d3d4cfd2b8440","/assets/img/logo.png":"7dcbf051ab322ef1bd076940e981bf9abdd5ae78","/assets/img/logo.svg":"a2334b77c19d8dc880bbbd82e9939a0aa8d59573","/assets/img/ng-alain.svg":"fb55683a364df5de725cb98a7c51b2eb21ca4de6","/assets/img/plnkr.png":"dc4da4819d5a9b4ff44f1457f96808a761ab9143","/assets/img/zorro.svg":"82d83c92dff3114bd45e985e3c8e402f37a4beb9","/assets/jszip/jszip.min.js":"c96375d50e72b199aa54de7b9ad908fd5a2dc7bc","/assets/logo-color.svg":"587f7e7d6cacc6eb7222b99c08d3df8abc8edd4e","/assets/logo-full.svg":"fed68d999561a3180b925071180d3d4cfd2b8440","/assets/logo.svg":"a2334b77c19d8dc880bbbd82e9939a0aa8d59573","/assets/plyr/plyr.css":"3e9561fb7a2a70b93bb1014f5d958b123fe61764","/assets/plyr/plyr.min.js":"9b165c0e728a0ac4e2cddc944c9a2c5819ca7342","/assets/plyr/plyr.svg":"bc98e4a347921594352fbae53aaad185c0c7f6b5","/assets/pro.png":"0e8e2bd64766aab6e12f44607ad7e92aec241468","/assets/qq-group.png":"1effddfab735644966df1759c2768f282a3e650e","/assets/qrious/qrious.min.js":"a9271e81e2ac6a692b1c133811afa33f0f3d7dc5","/assets/schema/basic.json":"d3b26817208571cfed1a5dd667875c358b1d7e1f","/assets/schema/conditional.json":"204f15af35cc98d5d692c7265d84d2645a6394f0","/assets/schema/fixed.json":"f4d6c6c66503ec0c817ab89e8538c2be028c7cff","/assets/schema/onboarding.json":"20c6f311cc99ccbf7180afb906e9abf74473786b","/assets/schema/sort.json":"850f554e1a7db144e9ad305b6a3ad79bfb58ca28","/assets/schema/validation.json":"0a5971cb42a49672e0005b88036ef47bc8cebe94","/assets/screenshot/architecture.png":"9e19b12a25deab3280ebf5795597a90af29c4c38","/assets/screenshot/basic.png":"42a70c07d9f35413991972634011459fdb010022","/assets/screenshot/bundle-size.png":"f67a8b0678161abce9afcb694db3c02d3b4b5f73","/assets/screenshot/desktop.png":"42a70c07d9f35413991972634011459fdb010022","/assets/screenshot/ipad.png":"0fc5d85a81da2057ec68fc9094c0cb5c862bf309","/assets/screenshot/iphone.png":"6b7d70c66cd422ad5aee06d91ddb39c7fd0558bb","/assets/screenshot/ms.png":"26b0065c7c5d4f9f9c6b0efa4915eb6576caee75","/assets/screenshot/pro.png":"37bd67671530613e955593eb3fc818e27d18dcb6","/assets/screenshot/start.png":"8af50c7dbc9bab333f7e88b67debb6657bc61ed9","/assets/screenshot/yun.png":"b0e3dec2af4dfae8f25e5d90f19cd3c60107e89f","/assets/style.compact.css":"450f3ea3fbe3e383b2c5ae674cfd5031462bf67e","/assets/style.dark.css":"302f462cff38fe2c0834203cdc965369fb589548","/assets/xlsx/cpexcel.js":"9191595b39ba1918d32fb250d3ff21d07f99fc19","/assets/xlsx/xlsx.full.min.js":"7f749f81a45a53229136c6c1f1d50dcb16ddc233","/index.html":"c3207416f0bec32af0eea18136796039e40a3ff7","/main.fbd13711a2b1f5c4.js":"0e7812bb77594d3494d6698a0d717ca3dbfb13b0","/ngsw-worker.js":"77d8567420654739b595a7c247149fb3101fd9fb","/polyfills.6bed21258378d496.js":"d7baf2ea4ad968030720714f5655abad5c1f278e","/runtime.60ff8d985730d5b2.js":"5bb81cc66febfa75db6bd03377e9ca2333682469","/safety-worker.js":"70914dc203fa1f881e56f2b794d7a4f9c48ee745","/scripts.c2e9a31bbab5d761.js":"ca73a628d638d603be98d5eb8fd41f25740268e4","/styles.efec4df9833e118e.css":"ba09adf267234772a077f87f05cc4f82e4a95ca7","/worker-basic.min.js":"70914dc203fa1f881e56f2b794d7a4f9c48ee745"},"navigationUrls":[{"positive":true,"regex":"^\\/.*$"},{"positive":false,"regex":"^\\/(?:.+\\/)?[^/]*\\.[^/]*$"},{"positive":false,"regex":"^\\/(?:.+\\/)?[^/]*__[^/]*$"},{"positive":false,"regex":"^\\/(?:.+\\/)?[^/]*__[^/]*\\/.*$"},{"positive":false,"regex":"^\\/(?:.+\\/)?stackblitz$"},{"positive":false,"regex":"^\\/version\\/.*$"},{"positive":false,"regex":"^\\/issue-helper\\/.*$"},{"positive":false,"regex":"^\\/docs\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/docs\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/components\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/components\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/cli\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/cli\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/theme\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/theme\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/auth\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/auth\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/acl\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/acl\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/form\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/form\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/cache\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/cache\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/chart\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/chart\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/mock\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/mock\\/[^/][^/]*$"},{"positive":false,"regex":"^\\/util\\/(?:.+\\/)?[^/]*$"},{"positive":false,"regex":"^\\/util\\/[^/][^/]*$"}],"navigationRequestStrategy":"performance","local":"zh"} diff --git a/runtime.2ee111a129e082d8.js b/runtime.60ff8d985730d5b2.js similarity index 58% rename from runtime.2ee111a129e082d8.js rename to runtime.60ff8d985730d5b2.js index 05063db15..ac85d554d 100644 --- a/runtime.2ee111a129e082d8.js +++ b/runtime.60ff8d985730d5b2.js @@ -1 +1 @@ -(()=>{"use strict";var e,v={},m={};function r(e){var n=m[e];if(void 0!==n)return n.exports;var t=m[e]={exports:{}};return v[e].call(t.exports,t,t.exports,r),t.exports}r.m=v,e=[],r.O=(n,t,d,i)=>{if(!t){var a=1/0;for(f=0;f=i)&&Object.keys(r.O).every(p=>r.O[p](t[c]))?t.splice(c--,1):(l=!1,i0&&e[f-1][2]>i;f--)e[f]=e[f-1];e[f]=[t,d,i]},r.n=e=>{var n=e&&e.__esModule?()=>e.default:()=>e;return r.d(n,{a:n}),n},r.d=(e,n)=>{for(var t in n)r.o(n,t)&&!r.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:n[t]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce((n,t)=>(r.f[t](e,n),n),[])),r.u=e=>e+"."+{160:"8933dcb761850593",274:"53ccab60f9007be4",311:"eb37062fcd79cca8",324:"7b8f4d584c4d0e3b",414:"9038696269c23417",440:"22e24eb06a6cfa61",491:"d266fd791b98c4a4",520:"ef1eb512a64527da",598:"000ee902c5c77d7d",696:"09f163fa9e095620",711:"82e87176b4aa9476",739:"4d97e40d86fc9d17",821:"bd243b482a51497d",960:"87082988e2c9c2bf",967:"682711394b69d3ea"}[e]+".js",r.miniCssF=e=>{},r.o=(e,n)=>Object.prototype.hasOwnProperty.call(e,n),(()=>{var e={},n="site:";r.l=(t,d,i,f)=>{if(e[t])e[t].push(d);else{var a,l;if(void 0!==i)for(var c=document.getElementsByTagName("script"),u=0;u{a.onerror=a.onload=null,clearTimeout(b);var _=e[t];if(delete e[t],a.parentNode&&a.parentNode.removeChild(a),_&&_.forEach(h=>h(p)),g)return g(p)},b=setTimeout(s.bind(null,void 0,{type:"timeout",target:a}),12e4);a.onerror=s.bind(null,a.onerror),a.onload=s.bind(null,a.onload),l&&document.head.appendChild(a)}}})(),r.r=e=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e;r.tt=()=>(void 0===e&&(e={createScriptURL:n=>n},typeof trustedTypes<"u"&&trustedTypes.createPolicy&&(e=trustedTypes.createPolicy("angular#bundler",e))),e)})(),r.tu=e=>r.tt().createScriptURL(e),r.p="",(()=>{var e={666:0};r.f.j=(d,i)=>{var f=r.o(e,d)?e[d]:void 0;if(0!==f)if(f)i.push(f[2]);else if(666!=d){var a=new Promise((o,s)=>f=e[d]=[o,s]);i.push(f[2]=a);var l=r.p+r.u(d),c=new Error;r.l(l,o=>{if(r.o(e,d)&&(0!==(f=e[d])&&(e[d]=void 0),f)){var s=o&&("load"===o.type?"missing":o.type),b=o&&o.target&&o.target.src;c.message="Loading chunk "+d+" failed.\n("+s+": "+b+")",c.name="ChunkLoadError",c.type=s,c.request=b,f[1](c)}},"chunk-"+d,d)}else e[d]=0},r.O.j=d=>0===e[d];var n=(d,i)=>{var c,u,[f,a,l]=i,o=0;if(f.some(b=>0!==e[b])){for(c in a)r.o(a,c)&&(r.m[c]=a[c]);if(l)var s=l(r)}for(d&&d(i);o{"use strict";var e,v={},m={};function r(e){var n=m[e];if(void 0!==n)return n.exports;var t=m[e]={exports:{}};return v[e].call(t.exports,t,t.exports,r),t.exports}r.m=v,e=[],r.O=(n,t,i,d)=>{if(!t){var a=1/0;for(f=0;f=d)&&Object.keys(r.O).every(p=>r.O[p](t[c]))?t.splice(c--,1):(l=!1,d0&&e[f-1][2]>d;f--)e[f]=e[f-1];e[f]=[t,i,d]},r.n=e=>{var n=e&&e.__esModule?()=>e.default:()=>e;return r.d(n,{a:n}),n},r.d=(e,n)=>{for(var t in n)r.o(n,t)&&!r.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:n[t]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce((n,t)=>(r.f[t](e,n),n),[])),r.u=e=>e+"."+{160:"8933dcb761850593",274:"53ccab60f9007be4",311:"e23562654f2e1e13",324:"7b8f4d584c4d0e3b",414:"9038696269c23417",440:"22e24eb06a6cfa61",491:"d266fd791b98c4a4",520:"ef1eb512a64527da",598:"000ee902c5c77d7d",696:"09f163fa9e095620",711:"82e87176b4aa9476",739:"4d97e40d86fc9d17",821:"bd243b482a51497d",960:"87082988e2c9c2bf",967:"682711394b69d3ea"}[e]+".js",r.miniCssF=e=>{},r.o=(e,n)=>Object.prototype.hasOwnProperty.call(e,n),(()=>{var e={},n="site:";r.l=(t,i,d,f)=>{if(e[t])e[t].push(i);else{var a,l;if(void 0!==d)for(var c=document.getElementsByTagName("script"),u=0;u{a.onerror=a.onload=null,clearTimeout(b);var _=e[t];if(delete e[t],a.parentNode&&a.parentNode.removeChild(a),_&&_.forEach(h=>h(p)),g)return g(p)},b=setTimeout(s.bind(null,void 0,{type:"timeout",target:a}),12e4);a.onerror=s.bind(null,a.onerror),a.onload=s.bind(null,a.onload),l&&document.head.appendChild(a)}}})(),r.r=e=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e;r.tt=()=>(void 0===e&&(e={createScriptURL:n=>n},typeof trustedTypes<"u"&&trustedTypes.createPolicy&&(e=trustedTypes.createPolicy("angular#bundler",e))),e)})(),r.tu=e=>r.tt().createScriptURL(e),r.p="",(()=>{var e={666:0};r.f.j=(i,d)=>{var f=r.o(e,i)?e[i]:void 0;if(0!==f)if(f)d.push(f[2]);else if(666!=i){var a=new Promise((o,s)=>f=e[i]=[o,s]);d.push(f[2]=a);var l=r.p+r.u(i),c=new Error;r.l(l,o=>{if(r.o(e,i)&&(0!==(f=e[i])&&(e[i]=void 0),f)){var s=o&&("load"===o.type?"missing":o.type),b=o&&o.target&&o.target.src;c.message="Loading chunk "+i+" failed.\n("+s+": "+b+")",c.name="ChunkLoadError",c.type=s,c.request=b,f[1](c)}},"chunk-"+i,i)}else e[i]=0},r.O.j=i=>0===e[i];var n=(i,d)=>{var c,u,[f,a,l]=d,o=0;if(f.some(b=>0!==e[b])){for(c in a)r.o(a,c)&&(r.m[c]=a[c]);if(l)var s=l(r)}for(i&&i(d);ohttps://ng-alain.com/2023-10-27T04:04:42.611Zhourly1.0https://ng-alain.com/acl/control/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/acl/getting-started/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/acl/guard/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/auth/get/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/auth/getting-started/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/auth/guard/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/auth/qa/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/auth/send/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/auth/service/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/auth/set/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/cache/getting-started/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/cache/service/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/chart/bar/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/chart/card/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/chart/chart-echarts/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/chart/custom/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/chart/faq/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/chart/gauge/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/chart/getting-started/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/chart/mini-area/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/chart/mini-bar/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/chart/mini-progress/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/chart/number-info/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/chart/pie/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/chart/radar/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/chart/single-bar/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/chart/tag-cloud/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/chart/timeline/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/chart/trend/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/chart/water-wave/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/cli/add/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/cli/default/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/cli/generate/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/cli/getting-started/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/cli/plugin/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/cli/sta/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/auto-focus/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/avatar-list/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/cell/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/count-down/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/date-picker/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/down-file/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/ellipsis/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/error-collect/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/exception/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/footer-toolbar/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/full-content/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/global-footer/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/highlight/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/hotkey/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/let/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/loading/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/lodop/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/media/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/notice-icon/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/observers/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/onboarding/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/page-header/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/pdf/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/qr/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/quick-menu/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/result/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/reuse-tab/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/se/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/sg/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/st/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/sv/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/tag-select/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/xlsx/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/components/zip/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/docs/acl/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/docs/architecture/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/docs/auth/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/docs/cache/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/docs/changelog/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/docs/cli/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/docs/contributing/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/docs/deploy/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/docs/faq/en2023-10-27T04:04:42.611Zhourly0.8https://ng-alain.com/docs/getting-started/en2023-10-27T04:04:42.611Zhourly0.8https://ng-alain.com/docs/global-config/en2023-10-27T04:04:42.611Zhourly0.6https://ng-alain.com/docs/graph/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/how-to-start/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/i18n/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/import/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/mock/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/module/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/new-component/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/new-page/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/performance/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/server/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/ssr/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/style-guide/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/theme/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/upgrade-v16/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/upgrade/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/acl/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/array/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/autocomplete/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/boolean/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/cascader/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/checkbox/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/conditional/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/custom/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/customize/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/date/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/error/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/getting-started/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/i18n/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/layout/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/markdown/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/mention/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/modal/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/number/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/object/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/qa/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/radio/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/rate/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/schema/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/select/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/slider/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/string/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/tag/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/text/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/textarea/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/time/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/tinymce/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/transfer/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/tree-select/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/upload/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/mock/getting-started/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/mock/rule/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/component-styles/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/customize-theme/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/date/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/drawer/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/getting-started/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/global/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/http/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/icon/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/index/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/keys/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/layout-blank/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/layout-default/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/locale/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/menu/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/modal/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/performance/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/responsive/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/rtl/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/safe/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/settings/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/theme-btn/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/title/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/tools/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/yn/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/util/array/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/util/browser/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/util/date-time/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/util/decorator/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/util/form/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/util/format/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/util/getting-started/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/util/math/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/util/other/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/util/pipes-currency/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/util/pipes-filter/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/util/pipes-format/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/util/token/en2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/acl/control/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/acl/getting-started/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/acl/guard/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/auth/get/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/auth/getting-started/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/auth/guard/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/auth/qa/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/auth/send/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/auth/service/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/auth/set/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/cache/getting-started/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/cache/service/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/chart/bar/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/chart/card/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/chart/chart-echarts/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/chart/custom/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/chart/faq/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/chart/gauge/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/chart/getting-started/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/chart/mini-area/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/chart/mini-bar/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/chart/mini-progress/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/chart/number-info/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/chart/pie/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/chart/radar/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/chart/single-bar/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/chart/tag-cloud/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/chart/timeline/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/chart/trend/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/chart/water-wave/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/cli/add/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/cli/default/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/cli/generate/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/cli/getting-started/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/cli/plugin/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/cli/sta/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/auto-focus/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/avatar-list/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/cell/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/count-down/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/date-picker/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/down-file/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/ellipsis/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/error-collect/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/exception/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/footer-toolbar/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/full-content/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/global-footer/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/highlight/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/hotkey/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/let/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/loading/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/lodop/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/media/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/notice-icon/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/observers/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/onboarding/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/page-header/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/pdf/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/qr/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/quick-menu/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/result/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/reuse-tab/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/se/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/sg/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/st/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/sv/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/tag-select/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/xlsx/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/components/zip/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/acl/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/architecture/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/auth/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/cache/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/changelog/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/cli/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/contributing/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/deploy/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/faq/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/getting-started/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/global-config/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/graph/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/how-to-start/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/i18n/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/import/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/mock/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/module/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/new-component/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/new-page/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/performance/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/server/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/ssr/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/style-guide/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/theme/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/upgrade-v16/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/docs/upgrade/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/acl/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/array/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/autocomplete/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/boolean/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/cascader/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/checkbox/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/conditional/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/custom/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/customize/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/date/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/error/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/getting-started/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/i18n/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/layout/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/markdown/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/mention/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/modal/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/number/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/object/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/qa/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/radio/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/rate/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/schema/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/select/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/slider/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/string/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/tag/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/text/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/textarea/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/time/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/tinymce/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/transfer/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/tree-select/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/form/upload/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/mock/getting-started/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/mock/rule/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/component-styles/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/customize-theme/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/date/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/drawer/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/getting-started/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/global/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/http/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/icon/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/index/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/keys/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/layout-blank/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/layout-default/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/locale/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/menu/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/modal/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/performance/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/responsive/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/rtl/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/safe/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/settings/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/theme-btn/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/title/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/tools/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/theme/yn/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/util/array/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/util/browser/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/util/date-time/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/util/decorator/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/util/form/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/util/format/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/util/getting-started/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/util/math/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/util/other/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/util/pipes-currency/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/util/pipes-filter/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/util/pipes-format/zh2023-10-27T04:04:42.612Zhourly0.6https://ng-alain.com/util/token/zh2023-10-27T04:04:42.612Zhourly0.6 \ No newline at end of file +https://ng-alain.com/2023-10-31T13:28:18.242Zhourly1.0https://ng-alain.com/acl/control/en2023-10-31T13:28:18.242Zhourly0.6https://ng-alain.com/acl/getting-started/en2023-10-31T13:28:18.242Zhourly0.6https://ng-alain.com/acl/guard/en2023-10-31T13:28:18.242Zhourly0.6https://ng-alain.com/auth/get/en2023-10-31T13:28:18.242Zhourly0.6https://ng-alain.com/auth/getting-started/en2023-10-31T13:28:18.242Zhourly0.6https://ng-alain.com/auth/guard/en2023-10-31T13:28:18.242Zhourly0.6https://ng-alain.com/auth/qa/en2023-10-31T13:28:18.242Zhourly0.6https://ng-alain.com/auth/send/en2023-10-31T13:28:18.242Zhourly0.6https://ng-alain.com/auth/service/en2023-10-31T13:28:18.242Zhourly0.6https://ng-alain.com/auth/set/en2023-10-31T13:28:18.242Zhourly0.6https://ng-alain.com/cache/getting-started/en2023-10-31T13:28:18.242Zhourly0.6https://ng-alain.com/cache/service/en2023-10-31T13:28:18.242Zhourly0.6https://ng-alain.com/chart/bar/en2023-10-31T13:28:18.242Zhourly0.6https://ng-alain.com/chart/card/en2023-10-31T13:28:18.242Zhourly0.6https://ng-alain.com/chart/chart-echarts/en2023-10-31T13:28:18.242Zhourly0.6https://ng-alain.com/chart/custom/en2023-10-31T13:28:18.242Zhourly0.6https://ng-alain.com/chart/faq/en2023-10-31T13:28:18.242Zhourly0.6https://ng-alain.com/chart/gauge/en2023-10-31T13:28:18.242Zhourly0.6https://ng-alain.com/chart/getting-started/en2023-10-31T13:28:18.242Zhourly0.6https://ng-alain.com/chart/mini-area/en2023-10-31T13:28:18.242Zhourly0.6https://ng-alain.com/chart/mini-bar/en2023-10-31T13:28:18.242Zhourly0.6https://ng-alain.com/chart/mini-progress/en2023-10-31T13:28:18.242Zhourly0.6https://ng-alain.com/chart/number-info/en2023-10-31T13:28:18.242Zhourly0.6https://ng-alain.com/chart/pie/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/chart/radar/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/chart/single-bar/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/chart/tag-cloud/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/chart/timeline/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/chart/trend/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/chart/water-wave/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/cli/add/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/cli/default/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/cli/generate/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/cli/getting-started/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/cli/plugin/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/cli/sta/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/auto-focus/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/avatar-list/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/cell/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/count-down/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/date-picker/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/down-file/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/ellipsis/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/error-collect/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/exception/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/footer-toolbar/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/full-content/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/global-footer/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/highlight/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/hotkey/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/let/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/loading/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/lodop/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/media/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/notice-icon/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/observers/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/onboarding/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/page-header/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/pdf/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/qr/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/quick-menu/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/result/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/reuse-tab/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/se/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/sg/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/st/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/sv/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/tag-select/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/xlsx/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/zip/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/acl/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/architecture/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/auth/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/cache/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/changelog/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/cli/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/contributing/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/deploy/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/faq/en2023-10-31T13:28:18.243Zhourly0.8https://ng-alain.com/docs/getting-started/en2023-10-31T13:28:18.243Zhourly0.8https://ng-alain.com/docs/global-config/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/graph/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/how-to-start/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/i18n/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/import/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/mock/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/module/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/new-component/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/new-page/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/performance/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/server/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/ssr/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/style-guide/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/theme/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/upgrade-v16/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/upgrade/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/acl/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/array/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/autocomplete/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/boolean/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/cascader/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/checkbox/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/conditional/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/custom/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/customize/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/date/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/error/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/getting-started/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/i18n/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/layout/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/markdown/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/mention/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/modal/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/number/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/object/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/qa/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/radio/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/rate/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/schema/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/select/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/slider/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/string/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/tag/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/text/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/textarea/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/time/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/tinymce/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/transfer/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/tree-select/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/upload/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/mock/getting-started/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/mock/rule/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/component-styles/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/customize-theme/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/date/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/drawer/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/getting-started/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/global/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/http/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/icon/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/index/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/keys/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/layout-blank/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/layout-default/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/locale/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/menu/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/modal/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/performance/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/responsive/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/rtl/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/safe/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/settings/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/theme-btn/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/title/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/tools/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/yn/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/util/array/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/util/browser/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/util/date-time/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/util/decorator/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/util/form/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/util/format/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/util/getting-started/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/util/math/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/util/other/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/util/pipes-currency/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/util/pipes-filter/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/util/pipes-format/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/util/token/en2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/acl/control/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/acl/getting-started/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/acl/guard/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/auth/get/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/auth/getting-started/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/auth/guard/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/auth/qa/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/auth/send/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/auth/service/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/auth/set/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/cache/getting-started/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/cache/service/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/chart/bar/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/chart/card/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/chart/chart-echarts/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/chart/custom/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/chart/faq/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/chart/gauge/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/chart/getting-started/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/chart/mini-area/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/chart/mini-bar/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/chart/mini-progress/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/chart/number-info/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/chart/pie/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/chart/radar/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/chart/single-bar/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/chart/tag-cloud/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/chart/timeline/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/chart/trend/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/chart/water-wave/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/cli/add/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/cli/default/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/cli/generate/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/cli/getting-started/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/cli/plugin/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/cli/sta/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/auto-focus/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/avatar-list/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/cell/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/count-down/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/date-picker/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/down-file/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/ellipsis/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/error-collect/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/exception/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/footer-toolbar/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/full-content/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/global-footer/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/highlight/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/hotkey/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/let/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/loading/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/lodop/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/media/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/notice-icon/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/observers/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/onboarding/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/page-header/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/pdf/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/qr/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/quick-menu/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/result/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/reuse-tab/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/se/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/sg/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/st/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/sv/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/tag-select/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/xlsx/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/components/zip/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/acl/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/architecture/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/auth/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/cache/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/changelog/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/cli/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/contributing/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/deploy/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/faq/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/getting-started/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/global-config/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/graph/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/how-to-start/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/i18n/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/import/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/mock/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/module/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/new-component/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/new-page/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/performance/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/server/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/ssr/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/style-guide/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/theme/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/upgrade-v16/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/docs/upgrade/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/acl/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/array/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/autocomplete/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/boolean/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/cascader/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/checkbox/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/conditional/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/custom/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/customize/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/date/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/error/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/getting-started/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/i18n/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/layout/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/markdown/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/mention/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/modal/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/number/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/object/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/qa/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/radio/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/rate/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/schema/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/select/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/slider/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/string/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/tag/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/text/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/textarea/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/time/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/tinymce/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/transfer/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/tree-select/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/form/upload/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/mock/getting-started/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/mock/rule/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/component-styles/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/customize-theme/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/date/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/drawer/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/getting-started/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/global/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/http/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/icon/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/index/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/keys/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/layout-blank/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/layout-default/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/locale/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/menu/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/modal/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/performance/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/responsive/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/rtl/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/safe/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/settings/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/theme-btn/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/title/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/tools/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/theme/yn/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/util/array/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/util/browser/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/util/date-time/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/util/decorator/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/util/form/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/util/format/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/util/getting-started/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/util/math/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/util/other/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/util/pipes-currency/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/util/pipes-filter/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/util/pipes-format/zh2023-10-31T13:28:18.243Zhourly0.6https://ng-alain.com/util/token/zh2023-10-31T13:28:18.243Zhourly0.6 \ No newline at end of file diff --git a/styles.63d908442a13e3df.css b/styles.efec4df9833e118e.css similarity index 94% rename from styles.63d908442a13e3df.css rename to styles.efec4df9833e118e.css index ca62bfbca..b50c70ec6 100644 --- a/styles.63d908442a13e3df.css +++ b/styles.efec4df9833e118e.css @@ -1 +1 @@ -[data-aos][data-aos][data-aos-duration="50"],body[data-aos-duration="50"] [data-aos]{transition-duration:50ms}[data-aos][data-aos][data-aos-delay="50"],body[data-aos-delay="50"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="50"].aos-animate,body[data-aos-delay="50"] [data-aos].aos-animate{transition-delay:50ms}[data-aos][data-aos][data-aos-duration="100"],body[data-aos-duration="100"] [data-aos]{transition-duration:.1s}[data-aos][data-aos][data-aos-delay="100"],body[data-aos-delay="100"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="100"].aos-animate,body[data-aos-delay="100"] [data-aos].aos-animate{transition-delay:.1s}[data-aos][data-aos][data-aos-duration="150"],body[data-aos-duration="150"] [data-aos]{transition-duration:.15s}[data-aos][data-aos][data-aos-delay="150"],body[data-aos-delay="150"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="150"].aos-animate,body[data-aos-delay="150"] [data-aos].aos-animate{transition-delay:.15s}[data-aos][data-aos][data-aos-duration="200"],body[data-aos-duration="200"] [data-aos]{transition-duration:.2s}[data-aos][data-aos][data-aos-delay="200"],body[data-aos-delay="200"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="200"].aos-animate,body[data-aos-delay="200"] [data-aos].aos-animate{transition-delay:.2s}[data-aos][data-aos][data-aos-duration="250"],body[data-aos-duration="250"] [data-aos]{transition-duration:.25s}[data-aos][data-aos][data-aos-delay="250"],body[data-aos-delay="250"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="250"].aos-animate,body[data-aos-delay="250"] [data-aos].aos-animate{transition-delay:.25s}[data-aos][data-aos][data-aos-duration="300"],body[data-aos-duration="300"] [data-aos]{transition-duration:.3s}[data-aos][data-aos][data-aos-delay="300"],body[data-aos-delay="300"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="300"].aos-animate,body[data-aos-delay="300"] [data-aos].aos-animate{transition-delay:.3s}[data-aos][data-aos][data-aos-duration="350"],body[data-aos-duration="350"] [data-aos]{transition-duration:.35s}[data-aos][data-aos][data-aos-delay="350"],body[data-aos-delay="350"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="350"].aos-animate,body[data-aos-delay="350"] [data-aos].aos-animate{transition-delay:.35s}[data-aos][data-aos][data-aos-duration="400"],body[data-aos-duration="400"] [data-aos]{transition-duration:.4s}[data-aos][data-aos][data-aos-delay="400"],body[data-aos-delay="400"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="400"].aos-animate,body[data-aos-delay="400"] [data-aos].aos-animate{transition-delay:.4s}[data-aos][data-aos][data-aos-duration="450"],body[data-aos-duration="450"] [data-aos]{transition-duration:.45s}[data-aos][data-aos][data-aos-delay="450"],body[data-aos-delay="450"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="450"].aos-animate,body[data-aos-delay="450"] [data-aos].aos-animate{transition-delay:.45s}[data-aos][data-aos][data-aos-duration="500"],body[data-aos-duration="500"] [data-aos]{transition-duration:.5s}[data-aos][data-aos][data-aos-delay="500"],body[data-aos-delay="500"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="500"].aos-animate,body[data-aos-delay="500"] [data-aos].aos-animate{transition-delay:.5s}[data-aos][data-aos][data-aos-duration="550"],body[data-aos-duration="550"] [data-aos]{transition-duration:.55s}[data-aos][data-aos][data-aos-delay="550"],body[data-aos-delay="550"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="550"].aos-animate,body[data-aos-delay="550"] [data-aos].aos-animate{transition-delay:.55s}[data-aos][data-aos][data-aos-duration="600"],body[data-aos-duration="600"] [data-aos]{transition-duration:.6s}[data-aos][data-aos][data-aos-delay="600"],body[data-aos-delay="600"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="600"].aos-animate,body[data-aos-delay="600"] [data-aos].aos-animate{transition-delay:.6s}[data-aos][data-aos][data-aos-duration="650"],body[data-aos-duration="650"] [data-aos]{transition-duration:.65s}[data-aos][data-aos][data-aos-delay="650"],body[data-aos-delay="650"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="650"].aos-animate,body[data-aos-delay="650"] [data-aos].aos-animate{transition-delay:.65s}[data-aos][data-aos][data-aos-duration="700"],body[data-aos-duration="700"] [data-aos]{transition-duration:.7s}[data-aos][data-aos][data-aos-delay="700"],body[data-aos-delay="700"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="700"].aos-animate,body[data-aos-delay="700"] [data-aos].aos-animate{transition-delay:.7s}[data-aos][data-aos][data-aos-duration="750"],body[data-aos-duration="750"] [data-aos]{transition-duration:.75s}[data-aos][data-aos][data-aos-delay="750"],body[data-aos-delay="750"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="750"].aos-animate,body[data-aos-delay="750"] [data-aos].aos-animate{transition-delay:.75s}[data-aos][data-aos][data-aos-duration="800"],body[data-aos-duration="800"] [data-aos]{transition-duration:.8s}[data-aos][data-aos][data-aos-delay="800"],body[data-aos-delay="800"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="800"].aos-animate,body[data-aos-delay="800"] [data-aos].aos-animate{transition-delay:.8s}[data-aos][data-aos][data-aos-duration="850"],body[data-aos-duration="850"] [data-aos]{transition-duration:.85s}[data-aos][data-aos][data-aos-delay="850"],body[data-aos-delay="850"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="850"].aos-animate,body[data-aos-delay="850"] [data-aos].aos-animate{transition-delay:.85s}[data-aos][data-aos][data-aos-duration="900"],body[data-aos-duration="900"] [data-aos]{transition-duration:.9s}[data-aos][data-aos][data-aos-delay="900"],body[data-aos-delay="900"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="900"].aos-animate,body[data-aos-delay="900"] [data-aos].aos-animate{transition-delay:.9s}[data-aos][data-aos][data-aos-duration="950"],body[data-aos-duration="950"] [data-aos]{transition-duration:.95s}[data-aos][data-aos][data-aos-delay="950"],body[data-aos-delay="950"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="950"].aos-animate,body[data-aos-delay="950"] [data-aos].aos-animate{transition-delay:.95s}[data-aos][data-aos][data-aos-duration="1000"],body[data-aos-duration="1000"] [data-aos]{transition-duration:1s}[data-aos][data-aos][data-aos-delay="1000"],body[data-aos-delay="1000"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1000"].aos-animate,body[data-aos-delay="1000"] [data-aos].aos-animate{transition-delay:1s}[data-aos][data-aos][data-aos-duration="1050"],body[data-aos-duration="1050"] [data-aos]{transition-duration:1.05s}[data-aos][data-aos][data-aos-delay="1050"],body[data-aos-delay="1050"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1050"].aos-animate,body[data-aos-delay="1050"] [data-aos].aos-animate{transition-delay:1.05s}[data-aos][data-aos][data-aos-duration="1100"],body[data-aos-duration="1100"] [data-aos]{transition-duration:1.1s}[data-aos][data-aos][data-aos-delay="1100"],body[data-aos-delay="1100"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1100"].aos-animate,body[data-aos-delay="1100"] [data-aos].aos-animate{transition-delay:1.1s}[data-aos][data-aos][data-aos-duration="1150"],body[data-aos-duration="1150"] [data-aos]{transition-duration:1.15s}[data-aos][data-aos][data-aos-delay="1150"],body[data-aos-delay="1150"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1150"].aos-animate,body[data-aos-delay="1150"] [data-aos].aos-animate{transition-delay:1.15s}[data-aos][data-aos][data-aos-duration="1200"],body[data-aos-duration="1200"] [data-aos]{transition-duration:1.2s}[data-aos][data-aos][data-aos-delay="1200"],body[data-aos-delay="1200"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1200"].aos-animate,body[data-aos-delay="1200"] [data-aos].aos-animate{transition-delay:1.2s}[data-aos][data-aos][data-aos-duration="1250"],body[data-aos-duration="1250"] [data-aos]{transition-duration:1.25s}[data-aos][data-aos][data-aos-delay="1250"],body[data-aos-delay="1250"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1250"].aos-animate,body[data-aos-delay="1250"] [data-aos].aos-animate{transition-delay:1.25s}[data-aos][data-aos][data-aos-duration="1300"],body[data-aos-duration="1300"] [data-aos]{transition-duration:1.3s}[data-aos][data-aos][data-aos-delay="1300"],body[data-aos-delay="1300"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1300"].aos-animate,body[data-aos-delay="1300"] [data-aos].aos-animate{transition-delay:1.3s}[data-aos][data-aos][data-aos-duration="1350"],body[data-aos-duration="1350"] [data-aos]{transition-duration:1.35s}[data-aos][data-aos][data-aos-delay="1350"],body[data-aos-delay="1350"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1350"].aos-animate,body[data-aos-delay="1350"] [data-aos].aos-animate{transition-delay:1.35s}[data-aos][data-aos][data-aos-duration="1400"],body[data-aos-duration="1400"] [data-aos]{transition-duration:1.4s}[data-aos][data-aos][data-aos-delay="1400"],body[data-aos-delay="1400"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1400"].aos-animate,body[data-aos-delay="1400"] [data-aos].aos-animate{transition-delay:1.4s}[data-aos][data-aos][data-aos-duration="1450"],body[data-aos-duration="1450"] [data-aos]{transition-duration:1.45s}[data-aos][data-aos][data-aos-delay="1450"],body[data-aos-delay="1450"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1450"].aos-animate,body[data-aos-delay="1450"] [data-aos].aos-animate{transition-delay:1.45s}[data-aos][data-aos][data-aos-duration="1500"],body[data-aos-duration="1500"] [data-aos]{transition-duration:1.5s}[data-aos][data-aos][data-aos-delay="1500"],body[data-aos-delay="1500"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1500"].aos-animate,body[data-aos-delay="1500"] [data-aos].aos-animate{transition-delay:1.5s}[data-aos][data-aos][data-aos-duration="1550"],body[data-aos-duration="1550"] [data-aos]{transition-duration:1.55s}[data-aos][data-aos][data-aos-delay="1550"],body[data-aos-delay="1550"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1550"].aos-animate,body[data-aos-delay="1550"] [data-aos].aos-animate{transition-delay:1.55s}[data-aos][data-aos][data-aos-duration="1600"],body[data-aos-duration="1600"] [data-aos]{transition-duration:1.6s}[data-aos][data-aos][data-aos-delay="1600"],body[data-aos-delay="1600"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1600"].aos-animate,body[data-aos-delay="1600"] [data-aos].aos-animate{transition-delay:1.6s}[data-aos][data-aos][data-aos-duration="1650"],body[data-aos-duration="1650"] [data-aos]{transition-duration:1.65s}[data-aos][data-aos][data-aos-delay="1650"],body[data-aos-delay="1650"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1650"].aos-animate,body[data-aos-delay="1650"] [data-aos].aos-animate{transition-delay:1.65s}[data-aos][data-aos][data-aos-duration="1700"],body[data-aos-duration="1700"] [data-aos]{transition-duration:1.7s}[data-aos][data-aos][data-aos-delay="1700"],body[data-aos-delay="1700"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1700"].aos-animate,body[data-aos-delay="1700"] [data-aos].aos-animate{transition-delay:1.7s}[data-aos][data-aos][data-aos-duration="1750"],body[data-aos-duration="1750"] [data-aos]{transition-duration:1.75s}[data-aos][data-aos][data-aos-delay="1750"],body[data-aos-delay="1750"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1750"].aos-animate,body[data-aos-delay="1750"] [data-aos].aos-animate{transition-delay:1.75s}[data-aos][data-aos][data-aos-duration="1800"],body[data-aos-duration="1800"] [data-aos]{transition-duration:1.8s}[data-aos][data-aos][data-aos-delay="1800"],body[data-aos-delay="1800"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1800"].aos-animate,body[data-aos-delay="1800"] [data-aos].aos-animate{transition-delay:1.8s}[data-aos][data-aos][data-aos-duration="1850"],body[data-aos-duration="1850"] [data-aos]{transition-duration:1.85s}[data-aos][data-aos][data-aos-delay="1850"],body[data-aos-delay="1850"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1850"].aos-animate,body[data-aos-delay="1850"] [data-aos].aos-animate{transition-delay:1.85s}[data-aos][data-aos][data-aos-duration="1900"],body[data-aos-duration="1900"] [data-aos]{transition-duration:1.9s}[data-aos][data-aos][data-aos-delay="1900"],body[data-aos-delay="1900"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1900"].aos-animate,body[data-aos-delay="1900"] [data-aos].aos-animate{transition-delay:1.9s}[data-aos][data-aos][data-aos-duration="1950"],body[data-aos-duration="1950"] [data-aos]{transition-duration:1.95s}[data-aos][data-aos][data-aos-delay="1950"],body[data-aos-delay="1950"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1950"].aos-animate,body[data-aos-delay="1950"] [data-aos].aos-animate{transition-delay:1.95s}[data-aos][data-aos][data-aos-duration="2000"],body[data-aos-duration="2000"] [data-aos]{transition-duration:2s}[data-aos][data-aos][data-aos-delay="2000"],body[data-aos-delay="2000"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2000"].aos-animate,body[data-aos-delay="2000"] [data-aos].aos-animate{transition-delay:2s}[data-aos][data-aos][data-aos-duration="2050"],body[data-aos-duration="2050"] [data-aos]{transition-duration:2.05s}[data-aos][data-aos][data-aos-delay="2050"],body[data-aos-delay="2050"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2050"].aos-animate,body[data-aos-delay="2050"] [data-aos].aos-animate{transition-delay:2.05s}[data-aos][data-aos][data-aos-duration="2100"],body[data-aos-duration="2100"] [data-aos]{transition-duration:2.1s}[data-aos][data-aos][data-aos-delay="2100"],body[data-aos-delay="2100"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2100"].aos-animate,body[data-aos-delay="2100"] [data-aos].aos-animate{transition-delay:2.1s}[data-aos][data-aos][data-aos-duration="2150"],body[data-aos-duration="2150"] [data-aos]{transition-duration:2.15s}[data-aos][data-aos][data-aos-delay="2150"],body[data-aos-delay="2150"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2150"].aos-animate,body[data-aos-delay="2150"] [data-aos].aos-animate{transition-delay:2.15s}[data-aos][data-aos][data-aos-duration="2200"],body[data-aos-duration="2200"] [data-aos]{transition-duration:2.2s}[data-aos][data-aos][data-aos-delay="2200"],body[data-aos-delay="2200"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2200"].aos-animate,body[data-aos-delay="2200"] [data-aos].aos-animate{transition-delay:2.2s}[data-aos][data-aos][data-aos-duration="2250"],body[data-aos-duration="2250"] [data-aos]{transition-duration:2.25s}[data-aos][data-aos][data-aos-delay="2250"],body[data-aos-delay="2250"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2250"].aos-animate,body[data-aos-delay="2250"] [data-aos].aos-animate{transition-delay:2.25s}[data-aos][data-aos][data-aos-duration="2300"],body[data-aos-duration="2300"] [data-aos]{transition-duration:2.3s}[data-aos][data-aos][data-aos-delay="2300"],body[data-aos-delay="2300"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2300"].aos-animate,body[data-aos-delay="2300"] [data-aos].aos-animate{transition-delay:2.3s}[data-aos][data-aos][data-aos-duration="2350"],body[data-aos-duration="2350"] [data-aos]{transition-duration:2.35s}[data-aos][data-aos][data-aos-delay="2350"],body[data-aos-delay="2350"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2350"].aos-animate,body[data-aos-delay="2350"] [data-aos].aos-animate{transition-delay:2.35s}[data-aos][data-aos][data-aos-duration="2400"],body[data-aos-duration="2400"] [data-aos]{transition-duration:2.4s}[data-aos][data-aos][data-aos-delay="2400"],body[data-aos-delay="2400"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2400"].aos-animate,body[data-aos-delay="2400"] [data-aos].aos-animate{transition-delay:2.4s}[data-aos][data-aos][data-aos-duration="2450"],body[data-aos-duration="2450"] [data-aos]{transition-duration:2.45s}[data-aos][data-aos][data-aos-delay="2450"],body[data-aos-delay="2450"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2450"].aos-animate,body[data-aos-delay="2450"] [data-aos].aos-animate{transition-delay:2.45s}[data-aos][data-aos][data-aos-duration="2500"],body[data-aos-duration="2500"] [data-aos]{transition-duration:2.5s}[data-aos][data-aos][data-aos-delay="2500"],body[data-aos-delay="2500"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2500"].aos-animate,body[data-aos-delay="2500"] [data-aos].aos-animate{transition-delay:2.5s}[data-aos][data-aos][data-aos-duration="2550"],body[data-aos-duration="2550"] [data-aos]{transition-duration:2.55s}[data-aos][data-aos][data-aos-delay="2550"],body[data-aos-delay="2550"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2550"].aos-animate,body[data-aos-delay="2550"] [data-aos].aos-animate{transition-delay:2.55s}[data-aos][data-aos][data-aos-duration="2600"],body[data-aos-duration="2600"] [data-aos]{transition-duration:2.6s}[data-aos][data-aos][data-aos-delay="2600"],body[data-aos-delay="2600"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2600"].aos-animate,body[data-aos-delay="2600"] [data-aos].aos-animate{transition-delay:2.6s}[data-aos][data-aos][data-aos-duration="2650"],body[data-aos-duration="2650"] [data-aos]{transition-duration:2.65s}[data-aos][data-aos][data-aos-delay="2650"],body[data-aos-delay="2650"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2650"].aos-animate,body[data-aos-delay="2650"] [data-aos].aos-animate{transition-delay:2.65s}[data-aos][data-aos][data-aos-duration="2700"],body[data-aos-duration="2700"] [data-aos]{transition-duration:2.7s}[data-aos][data-aos][data-aos-delay="2700"],body[data-aos-delay="2700"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2700"].aos-animate,body[data-aos-delay="2700"] [data-aos].aos-animate{transition-delay:2.7s}[data-aos][data-aos][data-aos-duration="2750"],body[data-aos-duration="2750"] [data-aos]{transition-duration:2.75s}[data-aos][data-aos][data-aos-delay="2750"],body[data-aos-delay="2750"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2750"].aos-animate,body[data-aos-delay="2750"] [data-aos].aos-animate{transition-delay:2.75s}[data-aos][data-aos][data-aos-duration="2800"],body[data-aos-duration="2800"] [data-aos]{transition-duration:2.8s}[data-aos][data-aos][data-aos-delay="2800"],body[data-aos-delay="2800"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2800"].aos-animate,body[data-aos-delay="2800"] [data-aos].aos-animate{transition-delay:2.8s}[data-aos][data-aos][data-aos-duration="2850"],body[data-aos-duration="2850"] [data-aos]{transition-duration:2.85s}[data-aos][data-aos][data-aos-delay="2850"],body[data-aos-delay="2850"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2850"].aos-animate,body[data-aos-delay="2850"] [data-aos].aos-animate{transition-delay:2.85s}[data-aos][data-aos][data-aos-duration="2900"],body[data-aos-duration="2900"] [data-aos]{transition-duration:2.9s}[data-aos][data-aos][data-aos-delay="2900"],body[data-aos-delay="2900"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2900"].aos-animate,body[data-aos-delay="2900"] [data-aos].aos-animate{transition-delay:2.9s}[data-aos][data-aos][data-aos-duration="2950"],body[data-aos-duration="2950"] [data-aos]{transition-duration:2.95s}[data-aos][data-aos][data-aos-delay="2950"],body[data-aos-delay="2950"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2950"].aos-animate,body[data-aos-delay="2950"] [data-aos].aos-animate{transition-delay:2.95s}[data-aos][data-aos][data-aos-duration="3000"],body[data-aos-duration="3000"] [data-aos]{transition-duration:3s}[data-aos][data-aos][data-aos-delay="3000"],body[data-aos-delay="3000"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="3000"].aos-animate,body[data-aos-delay="3000"] [data-aos].aos-animate{transition-delay:3s}[data-aos]{pointer-events:none}[data-aos].aos-animate{pointer-events:auto}[data-aos][data-aos][data-aos-easing=linear],body[data-aos-easing=linear] [data-aos]{transition-timing-function:cubic-bezier(.25,.25,.75,.75)}[data-aos][data-aos][data-aos-easing=ease],body[data-aos-easing=ease] [data-aos]{transition-timing-function:ease}[data-aos][data-aos][data-aos-easing=ease-in],body[data-aos-easing=ease-in] [data-aos]{transition-timing-function:ease-in}[data-aos][data-aos][data-aos-easing=ease-out],body[data-aos-easing=ease-out] [data-aos]{transition-timing-function:ease-out}[data-aos][data-aos][data-aos-easing=ease-in-out],body[data-aos-easing=ease-in-out] [data-aos]{transition-timing-function:ease-in-out}[data-aos][data-aos][data-aos-easing=ease-in-back],body[data-aos-easing=ease-in-back] [data-aos]{transition-timing-function:cubic-bezier(.6,-.28,.735,.045)}[data-aos][data-aos][data-aos-easing=ease-out-back],body[data-aos-easing=ease-out-back] [data-aos]{transition-timing-function:cubic-bezier(.175,.885,.32,1.275)}[data-aos][data-aos][data-aos-easing=ease-in-out-back],body[data-aos-easing=ease-in-out-back] [data-aos]{transition-timing-function:cubic-bezier(.68,-.55,.265,1.55)}[data-aos][data-aos][data-aos-easing=ease-in-sine],body[data-aos-easing=ease-in-sine] [data-aos]{transition-timing-function:cubic-bezier(.47,0,.745,.715)}[data-aos][data-aos][data-aos-easing=ease-out-sine],body[data-aos-easing=ease-out-sine] [data-aos]{transition-timing-function:cubic-bezier(.39,.575,.565,1)}[data-aos][data-aos][data-aos-easing=ease-in-out-sine],body[data-aos-easing=ease-in-out-sine] [data-aos]{transition-timing-function:cubic-bezier(.445,.05,.55,.95)}[data-aos][data-aos][data-aos-easing=ease-in-quad],body[data-aos-easing=ease-in-quad] [data-aos]{transition-timing-function:cubic-bezier(.55,.085,.68,.53)}[data-aos][data-aos][data-aos-easing=ease-out-quad],body[data-aos-easing=ease-out-quad] [data-aos]{transition-timing-function:cubic-bezier(.25,.46,.45,.94)}[data-aos][data-aos][data-aos-easing=ease-in-out-quad],body[data-aos-easing=ease-in-out-quad] [data-aos]{transition-timing-function:cubic-bezier(.455,.03,.515,.955)}[data-aos][data-aos][data-aos-easing=ease-in-cubic],body[data-aos-easing=ease-in-cubic] [data-aos]{transition-timing-function:cubic-bezier(.55,.085,.68,.53)}[data-aos][data-aos][data-aos-easing=ease-out-cubic],body[data-aos-easing=ease-out-cubic] [data-aos]{transition-timing-function:cubic-bezier(.25,.46,.45,.94)}[data-aos][data-aos][data-aos-easing=ease-in-out-cubic],body[data-aos-easing=ease-in-out-cubic] [data-aos]{transition-timing-function:cubic-bezier(.455,.03,.515,.955)}[data-aos][data-aos][data-aos-easing=ease-in-quart],body[data-aos-easing=ease-in-quart] [data-aos]{transition-timing-function:cubic-bezier(.55,.085,.68,.53)}[data-aos][data-aos][data-aos-easing=ease-out-quart],body[data-aos-easing=ease-out-quart] [data-aos]{transition-timing-function:cubic-bezier(.25,.46,.45,.94)}[data-aos][data-aos][data-aos-easing=ease-in-out-quart],body[data-aos-easing=ease-in-out-quart] [data-aos]{transition-timing-function:cubic-bezier(.455,.03,.515,.955)}@media screen{html:not(.no-js) [data-aos^=fade][data-aos^=fade]{opacity:0;transition-property:opacity,transform}html:not(.no-js) [data-aos^=fade][data-aos^=fade].aos-animate{opacity:1;transform:none}html:not(.no-js) [data-aos=fade-up]{transform:translate3d(0,100px,0)}html:not(.no-js) [data-aos=fade-down]{transform:translate3d(0,-100px,0)}html:not(.no-js) [data-aos=fade-right]{transform:translate3d(-100px,0,0)}html:not(.no-js) [data-aos=fade-left]{transform:translate3d(100px,0,0)}html:not(.no-js) [data-aos=fade-up-right]{transform:translate3d(-100px,100px,0)}html:not(.no-js) [data-aos=fade-up-left]{transform:translate3d(100px,100px,0)}html:not(.no-js) [data-aos=fade-down-right]{transform:translate3d(-100px,-100px,0)}html:not(.no-js) [data-aos=fade-down-left]{transform:translate3d(100px,-100px,0)}html:not(.no-js) [data-aos^=zoom][data-aos^=zoom]{opacity:0;transition-property:opacity,transform}html:not(.no-js) [data-aos^=zoom][data-aos^=zoom].aos-animate{opacity:1;transform:translateZ(0) scale(1)}html:not(.no-js) [data-aos=zoom-in]{transform:scale(.6)}html:not(.no-js) [data-aos=zoom-in-up]{transform:translate3d(0,100px,0) scale(.6)}html:not(.no-js) [data-aos=zoom-in-down]{transform:translate3d(0,-100px,0) scale(.6)}html:not(.no-js) [data-aos=zoom-in-right]{transform:translate3d(-100px,0,0) scale(.6)}html:not(.no-js) [data-aos=zoom-in-left]{transform:translate3d(100px,0,0) scale(.6)}html:not(.no-js) [data-aos=zoom-out]{transform:scale(1.2)}html:not(.no-js) [data-aos=zoom-out-up]{transform:translate3d(0,100px,0) scale(1.2)}html:not(.no-js) [data-aos=zoom-out-down]{transform:translate3d(0,-100px,0) scale(1.2)}html:not(.no-js) [data-aos=zoom-out-right]{transform:translate3d(-100px,0,0) scale(1.2)}html:not(.no-js) [data-aos=zoom-out-left]{transform:translate3d(100px,0,0) scale(1.2)}html:not(.no-js) [data-aos^=slide][data-aos^=slide]{transition-property:transform;visibility:hidden}html:not(.no-js) [data-aos^=slide][data-aos^=slide].aos-animate{visibility:visible;transform:translateZ(0)}html:not(.no-js) [data-aos=slide-up]{transform:translate3d(0,100%,0)}html:not(.no-js) [data-aos=slide-down]{transform:translate3d(0,-100%,0)}html:not(.no-js) [data-aos=slide-right]{transform:translate3d(-100%,0,0)}html:not(.no-js) [data-aos=slide-left]{transform:translate3d(100%,0,0)}html:not(.no-js) [data-aos^=flip][data-aos^=flip]{backface-visibility:hidden;transition-property:transform}html:not(.no-js) [data-aos=flip-left]{transform:perspective(2500px) rotateY(-100deg)}html:not(.no-js) [data-aos=flip-left].aos-animate{transform:perspective(2500px) rotateY(0)}html:not(.no-js) [data-aos=flip-right]{transform:perspective(2500px) rotateY(100deg)}html:not(.no-js) [data-aos=flip-right].aos-animate{transform:perspective(2500px) rotateY(0)}html:not(.no-js) [data-aos=flip-up]{transform:perspective(2500px) rotateX(-100deg)}html:not(.no-js) [data-aos=flip-up].aos-animate{transform:perspective(2500px) rotateX(0)}html:not(.no-js) [data-aos=flip-down]{transform:perspective(2500px) rotateX(100deg)}html:not(.no-js) [data-aos=flip-down].aos-animate{transform:perspective(2500px) rotateX(0)}}[class^=ant-]::-ms-clear,[class*=ant-]::-ms-clear,[class^=ant-] input::-ms-clear,[class*=ant-] input::-ms-clear,[class^=ant-] input::-ms-reveal,[class*=ant-] input::-ms-reveal{display:none}html,body{width:100%;height:100%}input::-ms-clear,input::-ms-reveal{display:none}*,*:before,*:after{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{margin:0;color:#000000d9;font-size:14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-variant:tabular-nums;line-height:1.5715;background-color:#fff;font-feature-settings:"tnum"}[tabindex="-1"]:focus{outline:none!important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;color:#000000d9;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;border-bottom:0;cursor:help}address{margin-bottom:1em;font-style:normal;line-height:inherit}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#1890ff;text-decoration:none;background-color:transparent;outline:none;cursor:pointer;transition:color .3s;-webkit-text-decoration-skip:objects}a:hover{color:#40a9ff}a:active{color:#096dd9}a:active,a:hover{text-decoration:none;outline:0}a:focus{text-decoration:none;outline:0}a[disabled]{color:#00000040;cursor:not-allowed}pre,code,kbd,samp{font-size:1em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;color:#00000073;text-align:left;caption-side:bottom}input,button,select,optgroup,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;margin:0;padding:0;border:0}legend{display:block;width:100%;max-width:100%;margin-bottom:.5em;padding:0;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}mark{padding:.2em;background-color:#feffe6}::selection{color:#fff;background:#1890ff}.clearfix:before{display:table;content:""}.clearfix:after{display:table;clear:both;content:""}.anticon{display:inline-block;color:inherit;font-style:normal;line-height:0;text-align:center;text-transform:none;vertical-align:-.125em;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.anticon>*{line-height:1}.anticon svg{display:inline-block}.anticon:before{display:none}.anticon .anticon-icon{display:block}.anticon>.anticon{line-height:0;vertical-align:0}.anticon[tabindex]{cursor:pointer}.anticon-spin:before{display:inline-block;animation:loadingCircle 1s infinite linear}.anticon-spin{display:inline-block;animation:loadingCircle 1s infinite linear}.ant-fade-enter,.ant-fade-appear,.ant-fade-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-fade-enter.ant-fade-enter-active,.ant-fade-appear.ant-fade-appear-active{animation-name:antFadeIn;animation-play-state:running}.ant-fade-leave.ant-fade-leave-active{animation-name:antFadeOut;animation-play-state:running;pointer-events:none}.ant-fade-enter,.ant-fade-appear{opacity:0;animation-timing-function:linear}.ant-fade-leave{animation-timing-function:linear}@keyframes antFadeIn{0%{opacity:0}to{opacity:1}}@keyframes antFadeOut{0%{opacity:1}to{opacity:0}}.ant-move-up-enter,.ant-move-up-appear,.ant-move-up-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-move-up-enter.ant-move-up-enter-active,.ant-move-up-appear.ant-move-up-appear-active{animation-name:antMoveUpIn;animation-play-state:running}.ant-move-up-leave.ant-move-up-leave-active{animation-name:antMoveUpOut;animation-play-state:running;pointer-events:none}.ant-move-up-enter,.ant-move-up-appear{opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-move-up-leave{animation-timing-function:cubic-bezier(.6,.04,.98,.34)}.ant-move-down-enter,.ant-move-down-appear,.ant-move-down-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-move-down-enter.ant-move-down-enter-active,.ant-move-down-appear.ant-move-down-appear-active{animation-name:antMoveDownIn;animation-play-state:running}.ant-move-down-leave.ant-move-down-leave-active{animation-name:antMoveDownOut;animation-play-state:running;pointer-events:none}.ant-move-down-enter,.ant-move-down-appear{opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-move-down-leave{animation-timing-function:cubic-bezier(.6,.04,.98,.34)}.ant-move-left-enter,.ant-move-left-appear,.ant-move-left-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-move-left-enter.ant-move-left-enter-active,.ant-move-left-appear.ant-move-left-appear-active{animation-name:antMoveLeftIn;animation-play-state:running}.ant-move-left-leave.ant-move-left-leave-active{animation-name:antMoveLeftOut;animation-play-state:running;pointer-events:none}.ant-move-left-enter,.ant-move-left-appear{opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-move-left-leave{animation-timing-function:cubic-bezier(.6,.04,.98,.34)}.ant-move-right-enter,.ant-move-right-appear,.ant-move-right-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-move-right-enter.ant-move-right-enter-active,.ant-move-right-appear.ant-move-right-appear-active{animation-name:antMoveRightIn;animation-play-state:running}.ant-move-right-leave.ant-move-right-leave-active{animation-name:antMoveRightOut;animation-play-state:running;pointer-events:none}.ant-move-right-enter,.ant-move-right-appear{opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-move-right-leave{animation-timing-function:cubic-bezier(.6,.04,.98,.34)}@keyframes antMoveDownIn{0%{transform:translateY(100%);transform-origin:0 0;opacity:0}to{transform:translateY(0);transform-origin:0 0;opacity:1}}@keyframes antMoveDownOut{0%{transform:translateY(0);transform-origin:0 0;opacity:1}to{transform:translateY(100%);transform-origin:0 0;opacity:0}}@keyframes antMoveLeftIn{0%{transform:translate(-100%);transform-origin:0 0;opacity:0}to{transform:translate(0);transform-origin:0 0;opacity:1}}@keyframes antMoveLeftOut{0%{transform:translate(0);transform-origin:0 0;opacity:1}to{transform:translate(-100%);transform-origin:0 0;opacity:0}}@keyframes antMoveRightIn{0%{transform:translate(100%);transform-origin:0 0;opacity:0}to{transform:translate(0);transform-origin:0 0;opacity:1}}@keyframes antMoveRightOut{0%{transform:translate(0);transform-origin:0 0;opacity:1}to{transform:translate(100%);transform-origin:0 0;opacity:0}}@keyframes antMoveUpIn{0%{transform:translateY(-100%);transform-origin:0 0;opacity:0}to{transform:translateY(0);transform-origin:0 0;opacity:1}}@keyframes antMoveUpOut{0%{transform:translateY(0);transform-origin:0 0;opacity:1}to{transform:translateY(-100%);transform-origin:0 0;opacity:0}}@keyframes loadingCircle{to{transform:rotate(360deg)}}[ant-click-animating=true],[ant-click-animating-without-extra-node=true]{position:relative}html{--antd-wave-shadow-color: #1890ff;--scroll-bar: 0}[ant-click-animating-without-extra-node=true]:after,.ant-click-animating-node{position:absolute;inset:0;display:block;border-radius:inherit;box-shadow:0 0 #1890ff;box-shadow:0 0 0 0 var(--antd-wave-shadow-color);opacity:.2;animation:fadeEffect 2s cubic-bezier(.08,.82,.17,1),waveEffect .4s cubic-bezier(.08,.82,.17,1);animation-fill-mode:forwards;content:"";pointer-events:none}@keyframes waveEffect{to{box-shadow:0 0 #1890ff;box-shadow:0 0 0 6px var(--antd-wave-shadow-color)}}@keyframes fadeEffect{to{opacity:0}}.ant-slide-up-enter,.ant-slide-up-appear,.ant-slide-up-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-slide-up-enter.ant-slide-up-enter-active,.ant-slide-up-appear.ant-slide-up-appear-active{animation-name:antSlideUpIn;animation-play-state:running}.ant-slide-up-leave.ant-slide-up-leave-active{animation-name:antSlideUpOut;animation-play-state:running;pointer-events:none}.ant-slide-up-enter,.ant-slide-up-appear{opacity:0;animation-timing-function:cubic-bezier(.23,1,.32,1)}.ant-slide-up-leave{animation-timing-function:cubic-bezier(.755,.05,.855,.06)}.ant-slide-down-enter,.ant-slide-down-appear,.ant-slide-down-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-slide-down-enter.ant-slide-down-enter-active,.ant-slide-down-appear.ant-slide-down-appear-active{animation-name:antSlideDownIn;animation-play-state:running}.ant-slide-down-leave.ant-slide-down-leave-active{animation-name:antSlideDownOut;animation-play-state:running;pointer-events:none}.ant-slide-down-enter,.ant-slide-down-appear{opacity:0;animation-timing-function:cubic-bezier(.23,1,.32,1)}.ant-slide-down-leave{animation-timing-function:cubic-bezier(.755,.05,.855,.06)}.ant-slide-left-enter,.ant-slide-left-appear,.ant-slide-left-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-slide-left-enter.ant-slide-left-enter-active,.ant-slide-left-appear.ant-slide-left-appear-active{animation-name:antSlideLeftIn;animation-play-state:running}.ant-slide-left-leave.ant-slide-left-leave-active{animation-name:antSlideLeftOut;animation-play-state:running;pointer-events:none}.ant-slide-left-enter,.ant-slide-left-appear{opacity:0;animation-timing-function:cubic-bezier(.23,1,.32,1)}.ant-slide-left-leave{animation-timing-function:cubic-bezier(.755,.05,.855,.06)}.ant-slide-right-enter,.ant-slide-right-appear,.ant-slide-right-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-slide-right-enter.ant-slide-right-enter-active,.ant-slide-right-appear.ant-slide-right-appear-active{animation-name:antSlideRightIn;animation-play-state:running}.ant-slide-right-leave.ant-slide-right-leave-active{animation-name:antSlideRightOut;animation-play-state:running;pointer-events:none}.ant-slide-right-enter,.ant-slide-right-appear{opacity:0;animation-timing-function:cubic-bezier(.23,1,.32,1)}.ant-slide-right-leave{animation-timing-function:cubic-bezier(.755,.05,.855,.06)}@keyframes antSlideUpIn{0%{transform:scaleY(.8);transform-origin:0% 0%;opacity:0}to{transform:scaleY(1);transform-origin:0% 0%;opacity:1}}@keyframes antSlideUpOut{0%{transform:scaleY(1);transform-origin:0% 0%;opacity:1}to{transform:scaleY(.8);transform-origin:0% 0%;opacity:0}}@keyframes antSlideDownIn{0%{transform:scaleY(.8);transform-origin:100% 100%;opacity:0}to{transform:scaleY(1);transform-origin:100% 100%;opacity:1}}@keyframes antSlideDownOut{0%{transform:scaleY(1);transform-origin:100% 100%;opacity:1}to{transform:scaleY(.8);transform-origin:100% 100%;opacity:0}}@keyframes antSlideLeftIn{0%{transform:scaleX(.8);transform-origin:0% 0%;opacity:0}to{transform:scaleX(1);transform-origin:0% 0%;opacity:1}}@keyframes antSlideLeftOut{0%{transform:scaleX(1);transform-origin:0% 0%;opacity:1}to{transform:scaleX(.8);transform-origin:0% 0%;opacity:0}}@keyframes antSlideRightIn{0%{transform:scaleX(.8);transform-origin:100% 0%;opacity:0}to{transform:scaleX(1);transform-origin:100% 0%;opacity:1}}@keyframes antSlideRightOut{0%{transform:scaleX(1);transform-origin:100% 0%;opacity:1}to{transform:scaleX(.8);transform-origin:100% 0%;opacity:0}}.ant-zoom-enter,.ant-zoom-appear,.ant-zoom-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-enter.ant-zoom-enter-active,.ant-zoom-appear.ant-zoom-appear-active{animation-name:antZoomIn;animation-play-state:running}.ant-zoom-leave.ant-zoom-leave-active{animation-name:antZoomOut;animation-play-state:running;pointer-events:none}.ant-zoom-enter,.ant-zoom-appear{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-enter-prepare,.ant-zoom-appear-prepare{transform:none}.ant-zoom-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-big-enter,.ant-zoom-big-appear,.ant-zoom-big-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-big-enter.ant-zoom-big-enter-active,.ant-zoom-big-appear.ant-zoom-big-appear-active{animation-name:antZoomBigIn;animation-play-state:running}.ant-zoom-big-leave.ant-zoom-big-leave-active{animation-name:antZoomBigOut;animation-play-state:running;pointer-events:none}.ant-zoom-big-enter,.ant-zoom-big-appear{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-big-enter-prepare,.ant-zoom-big-appear-prepare{transform:none}.ant-zoom-big-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-big-fast-enter,.ant-zoom-big-fast-appear,.ant-zoom-big-fast-leave{animation-duration:.1s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-big-fast-enter.ant-zoom-big-fast-enter-active,.ant-zoom-big-fast-appear.ant-zoom-big-fast-appear-active{animation-name:antZoomBigIn;animation-play-state:running}.ant-zoom-big-fast-leave.ant-zoom-big-fast-leave-active{animation-name:antZoomBigOut;animation-play-state:running;pointer-events:none}.ant-zoom-big-fast-enter,.ant-zoom-big-fast-appear{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-big-fast-enter-prepare,.ant-zoom-big-fast-appear-prepare{transform:none}.ant-zoom-big-fast-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-up-enter,.ant-zoom-up-appear,.ant-zoom-up-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-up-enter.ant-zoom-up-enter-active,.ant-zoom-up-appear.ant-zoom-up-appear-active{animation-name:antZoomUpIn;animation-play-state:running}.ant-zoom-up-leave.ant-zoom-up-leave-active{animation-name:antZoomUpOut;animation-play-state:running;pointer-events:none}.ant-zoom-up-enter,.ant-zoom-up-appear{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-up-enter-prepare,.ant-zoom-up-appear-prepare{transform:none}.ant-zoom-up-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-down-enter,.ant-zoom-down-appear,.ant-zoom-down-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-down-enter.ant-zoom-down-enter-active,.ant-zoom-down-appear.ant-zoom-down-appear-active{animation-name:antZoomDownIn;animation-play-state:running}.ant-zoom-down-leave.ant-zoom-down-leave-active{animation-name:antZoomDownOut;animation-play-state:running;pointer-events:none}.ant-zoom-down-enter,.ant-zoom-down-appear{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-down-enter-prepare,.ant-zoom-down-appear-prepare{transform:none}.ant-zoom-down-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-left-enter,.ant-zoom-left-appear,.ant-zoom-left-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-left-enter.ant-zoom-left-enter-active,.ant-zoom-left-appear.ant-zoom-left-appear-active{animation-name:antZoomLeftIn;animation-play-state:running}.ant-zoom-left-leave.ant-zoom-left-leave-active{animation-name:antZoomLeftOut;animation-play-state:running;pointer-events:none}.ant-zoom-left-enter,.ant-zoom-left-appear{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-left-enter-prepare,.ant-zoom-left-appear-prepare{transform:none}.ant-zoom-left-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-right-enter,.ant-zoom-right-appear,.ant-zoom-right-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-right-enter.ant-zoom-right-enter-active,.ant-zoom-right-appear.ant-zoom-right-appear-active{animation-name:antZoomRightIn;animation-play-state:running}.ant-zoom-right-leave.ant-zoom-right-leave-active{animation-name:antZoomRightOut;animation-play-state:running;pointer-events:none}.ant-zoom-right-enter,.ant-zoom-right-appear{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-right-enter-prepare,.ant-zoom-right-appear-prepare{transform:none}.ant-zoom-right-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}@keyframes antZoomIn{0%{transform:scale(.2);opacity:0}to{transform:scale(1);opacity:1}}@keyframes antZoomOut{0%{transform:scale(1)}to{transform:scale(.2);opacity:0}}@keyframes antZoomBigIn{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}@keyframes antZoomBigOut{0%{transform:scale(1)}to{transform:scale(.8);opacity:0}}@keyframes antZoomUpIn{0%{transform:scale(.8);transform-origin:50% 0%;opacity:0}to{transform:scale(1);transform-origin:50% 0%}}@keyframes antZoomUpOut{0%{transform:scale(1);transform-origin:50% 0%}to{transform:scale(.8);transform-origin:50% 0%;opacity:0}}@keyframes antZoomLeftIn{0%{transform:scale(.8);transform-origin:0% 50%;opacity:0}to{transform:scale(1);transform-origin:0% 50%}}@keyframes antZoomLeftOut{0%{transform:scale(1);transform-origin:0% 50%}to{transform:scale(.8);transform-origin:0% 50%;opacity:0}}@keyframes antZoomRightIn{0%{transform:scale(.8);transform-origin:100% 50%;opacity:0}to{transform:scale(1);transform-origin:100% 50%}}@keyframes antZoomRightOut{0%{transform:scale(1);transform-origin:100% 50%}to{transform:scale(.8);transform-origin:100% 50%;opacity:0}}@keyframes antZoomDownIn{0%{transform:scale(.8);transform-origin:50% 100%;opacity:0}to{transform:scale(1);transform-origin:50% 100%}}@keyframes antZoomDownOut{0%{transform:scale(1);transform-origin:50% 100%}to{transform:scale(.8);transform-origin:50% 100%;opacity:0}}.ant-motion-collapse-legacy{overflow:hidden}.ant-motion-collapse-legacy-active{transition:height .2s cubic-bezier(.645,.045,.355,1),opacity .2s cubic-bezier(.645,.045,.355,1)!important}.ant-motion-collapse{overflow:hidden;transition:height .2s cubic-bezier(.645,.045,.355,1),opacity .2s cubic-bezier(.645,.045,.355,1)!important}.cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;max-width:100%;max-height:100%}.cdk-overlay-backdrop{position:absolute;inset:0;z-index:1000;pointer-events:auto;-webkit-tap-highlight-color:rgba(0,0,0,0);transition:opacity .4s cubic-bezier(.25,.8,.25,1);opacity:0}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:1}.cdk-high-contrast-active .cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:.6}.cdk-overlay-dark-backdrop{background:rgba(0,0,0,.32)}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{position:absolute;z-index:1000;display:flex;flex-direction:column;min-width:1px;min-height:1px}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}.cdk-visually-hidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;outline:0;-webkit-appearance:none;-moz-appearance:none}.nz-overlay-transparent-backdrop,.nz-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0}.nz-animate-disabled.ant-scroll-number-only,.nz-animate-disabled.ant-drawer.ant-drawer-open .ant-drawer-mask{animation:none;transition:none}.nz-animate-disabled.ant-drawer>*{transition:none}.nz-animate-disabled .ant-modal-mask,.nz-animate-disabled .ant-modal,.nz-animate-disabled .ant-modal-mask.zoom-enter,.nz-animate-disabled .ant-modal.zoom-enter,.nz-animate-disabled .ant-modal-mask.zoom-leave,.nz-animate-disabled .ant-modal.zoom-leave,.nz-animate-disabled .ant-modal-mask.zoom-enter-active,.nz-animate-disabled .ant-modal.zoom-enter-active,.nz-animate-disabled .ant-modal-mask.zoom-leave-active,.nz-animate-disabled .ant-modal.zoom-leave-active{animation:none;transition:none}.nz-animate-disabled.ant-menu,.nz-animate-disabled.ant-menu .ant-menu-item,.nz-animate-disabled.ant-menu .ant-menu-submenu-title,.nz-animate-disabled.ant-menu .ant-menu-item .anticon,.nz-animate-disabled.ant-menu .ant-menu-submenu-title .anticon{transition:none}.nz-animate-disabled.ant-menu .ant-menu-item .anticon+span,.nz-animate-disabled.ant-menu .ant-menu-submenu-title .anticon+span{transition:none}.nz-animate-disabled.ant-tabs .ant-tabs-top-content.ant-tabs-content-animated,.nz-animate-disabled.ant-tabs .ant-tabs-bottom-content.ant-tabs-content-animated,.nz-animate-disabled.ant-tabs .ant-tabs-top-content>.ant-tabs-tabpane,.nz-animate-disabled.ant-tabs .ant-tabs-bottom-content>.ant-tabs-tabpane,.nz-animate-disabled.ant-tabs.ant-tabs-left .ant-tabs-ink-bar-animated,.nz-animate-disabled.ant-tabs.ant-tabs-right .ant-tabs-ink-bar-animated,.nz-animate-disabled.ant-tabs.ant-tabs-top .ant-tabs-ink-bar-animated,.nz-animate-disabled.ant-tabs.ant-tabs-bottom .ant-tabs-ink-bar-animated{transition:none}.nz-animate-disabled.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow svg{transition:none}.ant-affix{position:fixed;z-index:10}nz-affix{display:block}.ant-alert{box-sizing:border-box;margin:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;display:flex;align-items:center;padding:8px 15px;word-wrap:break-word;border-radius:2px}.ant-alert-content{flex:1;min-width:0}.ant-alert-icon{margin-right:8px}.ant-alert-description{display:none;font-size:14px;line-height:22px}.ant-alert-success{background-color:#f6ffed;border:1px solid #b7eb8f}.ant-alert-success .ant-alert-icon{color:#52c41a}.ant-alert-info{background-color:#e6f7ff;border:1px solid #91d5ff}.ant-alert-info .ant-alert-icon{color:#1890ff}.ant-alert-warning{background-color:#fffbe6;border:1px solid #ffe58f}.ant-alert-warning .ant-alert-icon{color:#faad14}.ant-alert-error{background-color:#fff2f0;border:1px solid #ffccc7}.ant-alert-error .ant-alert-icon{color:#ff4d4f}.ant-alert-error .ant-alert-description>pre{margin:0;padding:0}.ant-alert-action{margin-left:8px}.ant-alert-close-icon{margin-left:8px;padding:0;overflow:hidden;font-size:12px;line-height:12px;background-color:transparent;border:none;outline:none;cursor:pointer}.ant-alert-close-icon .anticon-close{color:#00000073;transition:color .3s}.ant-alert-close-icon .anticon-close:hover{color:#000000bf}.ant-alert-close-text{color:#00000073;transition:color .3s}.ant-alert-close-text:hover{color:#000000bf}.ant-alert-with-description{align-items:flex-start;padding:15px 15px 15px 24px}.ant-alert-with-description.ant-alert-no-icon{padding:15px}.ant-alert-with-description .ant-alert-icon{margin-right:15px;font-size:24px}.ant-alert-with-description .ant-alert-message{display:block;margin-bottom:4px;color:#000000d9;font-size:16px}.ant-alert-message{color:#000000d9}.ant-alert-with-description .ant-alert-description{display:block}.ant-alert.ant-alert-motion-leave{overflow:hidden;opacity:1;transition:max-height .3s cubic-bezier(.78,.14,.15,.86),opacity .3s cubic-bezier(.78,.14,.15,.86),padding-top .3s cubic-bezier(.78,.14,.15,.86),padding-bottom .3s cubic-bezier(.78,.14,.15,.86),margin-bottom .3s cubic-bezier(.78,.14,.15,.86)}.ant-alert.ant-alert-motion-leave-active{max-height:0;margin-bottom:0!important;padding-top:0;padding-bottom:0;opacity:0}.ant-alert-banner{margin-bottom:0;border:0;border-radius:0}.ant-alert.ant-alert-rtl{direction:rtl}.ant-alert-rtl .ant-alert-icon{margin-right:auto;margin-left:8px}.ant-alert-rtl .ant-alert-action,.ant-alert-rtl .ant-alert-close-icon{margin-right:8px;margin-left:auto}.ant-alert-rtl.ant-alert-with-description{padding-right:24px;padding-left:15px}.ant-alert-rtl.ant-alert-with-description .ant-alert-icon{margin-right:auto;margin-left:15px}nz-alert{display:block}.ant-alert-icon{line-height:1}.ant-anchor{box-sizing:border-box;margin:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;padding:0 0 0 2px}.ant-anchor-wrapper{margin-left:-4px;padding-left:4px;overflow:auto;background-color:transparent}.ant-anchor-ink{position:absolute;top:0;left:0;height:100%}.ant-anchor-ink:before{position:relative;display:block;width:2px;height:100%;margin:0 auto;background-color:#f0f0f0;content:" "}.ant-anchor-ink-ball{position:absolute;left:50%;display:none;width:8px;height:8px;background-color:#fff;border:2px solid #1890ff;border-radius:8px;transform:translate(-50%);transition:top .3s ease-in-out}.ant-anchor-ink-ball.visible{display:inline-block}.ant-anchor-fixed .ant-anchor-ink .ant-anchor-ink-ball{display:none}.ant-anchor-link{padding:4px 0 4px 16px}.ant-anchor-link-title{position:relative;display:block;margin-bottom:3px;overflow:hidden;color:#000000d9;white-space:nowrap;text-overflow:ellipsis;transition:all .3s}.ant-anchor-link-title:only-child{margin-bottom:0}.ant-anchor-link-active>.ant-anchor-link-title{color:#1890ff}.ant-anchor-link .ant-anchor-link{padding-top:2px;padding-bottom:2px}.ant-anchor-rtl{direction:rtl}.ant-anchor-rtl.ant-anchor-wrapper{margin-right:-4px;margin-left:0;padding-right:4px;padding-left:0}.ant-anchor-rtl .ant-anchor-ink{right:0;left:auto}.ant-anchor-rtl .ant-anchor-ink-ball{right:50%;left:0;transform:translate(50%)}.ant-anchor-rtl .ant-anchor-link{padding:4px 16px 4px 0}nz-link{display:block}.ant-avatar{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;display:inline-block;overflow:hidden;color:#fff;white-space:nowrap;text-align:center;vertical-align:middle;background:#ccc;width:32px;height:32px;line-height:32px;border-radius:50%}.ant-avatar-image{background:transparent}.ant-avatar .ant-image-img{display:block}.ant-avatar-string{position:absolute;left:50%;transform-origin:0 center}.ant-avatar.ant-avatar-icon{font-size:18px}.ant-avatar.ant-avatar-icon>.anticon{margin:0}.ant-avatar-lg{width:40px;height:40px;line-height:40px;border-radius:50%}.ant-avatar-lg-string{position:absolute;left:50%;transform-origin:0 center}.ant-avatar-lg.ant-avatar-icon{font-size:24px}.ant-avatar-lg.ant-avatar-icon>.anticon{margin:0}.ant-avatar-sm{width:24px;height:24px;line-height:24px;border-radius:50%}.ant-avatar-sm-string{position:absolute;left:50%;transform-origin:0 center}.ant-avatar-sm.ant-avatar-icon{font-size:14px}.ant-avatar-sm.ant-avatar-icon>.anticon{margin:0}.ant-avatar-square{border-radius:2px}.ant-avatar>img{display:block;width:100%;height:100%;object-fit:cover}.ant-avatar-group{display:inline-flex}.ant-avatar-group .ant-avatar{border:1px solid #fff}.ant-avatar-group .ant-avatar:not(:first-child){margin-left:-8px}.ant-avatar-group-popover .ant-avatar+.ant-avatar{margin-left:3px}.ant-avatar-group-rtl .ant-avatar:not(:first-child){margin-right:-8px;margin-left:0}.ant-avatar-group-popover.ant-popover-rtl .ant-avatar+.ant-avatar{margin-right:3px;margin-left:0}.ant-back-top{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:fixed;right:100px;bottom:50px;z-index:10;width:40px;height:40px;cursor:pointer}.ant-back-top:empty{display:none}.ant-back-top-rtl{right:auto;left:100px;direction:rtl}.ant-back-top-content{width:40px;height:40px;overflow:hidden;color:#fff;text-align:center;background-color:#00000073;border-radius:20px;transition:all .3s}.ant-back-top-content:hover{background-color:#000000d9;transition:all .3s}.ant-back-top-icon{font-size:24px;line-height:40px}@media screen and (max-width: 768px){.ant-back-top{right:60px}.ant-back-top-rtl{right:auto;left:60px}}@media screen and (max-width: 480px){.ant-back-top{right:20px}.ant-back-top-rtl{right:auto;left:20px}}.ant-badge{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;display:inline-block;line-height:1}.ant-badge-count{z-index:auto;min-width:20px;height:20px;padding:0 6px;color:#fff;font-weight:400;font-size:12px;line-height:20px;white-space:nowrap;text-align:center;background:#ff4d4f;border-radius:10px;box-shadow:0 0 0 1px #fff}.ant-badge-count a,.ant-badge-count a:hover{color:#fff}.ant-badge-count-sm{min-width:14px;height:14px;padding:0;font-size:12px;line-height:14px;border-radius:7px}.ant-badge-multiple-words{padding:0 8px}.ant-badge-dot{z-index:auto;width:6px;min-width:6px;height:6px;background:#ff4d4f;border-radius:100%;box-shadow:0 0 0 1px #fff}.ant-badge-dot.ant-scroll-number{transition:background 1.5s}.ant-badge-count,.ant-badge-dot,.ant-badge .ant-scroll-number-custom-component{position:absolute;top:0;right:0;transform:translate(50%,-50%);transform-origin:100% 0%}.ant-badge-count.anticon-spin,.ant-badge-dot.anticon-spin,.ant-badge .ant-scroll-number-custom-component.anticon-spin{animation:antBadgeLoadingCircle 1s infinite linear}.ant-badge-status{line-height:inherit;vertical-align:baseline}.ant-badge-status-dot{position:relative;top:-1px;display:inline-block;width:6px;height:6px;vertical-align:middle;border-radius:50%}.ant-badge-status-success{background-color:#52c41a}.ant-badge-status-processing{position:relative;background-color:#1890ff}.ant-badge-status-processing:after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #1890ff;border-radius:50%;animation:antStatusProcessing 1.2s infinite ease-in-out;content:""}.ant-badge-status-default{background-color:#d9d9d9}.ant-badge-status-error{background-color:#ff4d4f}.ant-badge-status-warning{background-color:#faad14}.ant-badge-status-pink,.ant-badge-status-magenta{background:#eb2f96}.ant-badge-status-red{background:#f5222d}.ant-badge-status-volcano{background:#fa541c}.ant-badge-status-orange{background:#fa8c16}.ant-badge-status-yellow{background:#fadb14}.ant-badge-status-gold{background:#faad14}.ant-badge-status-cyan{background:#13c2c2}.ant-badge-status-lime{background:#a0d911}.ant-badge-status-green{background:#52c41a}.ant-badge-status-blue{background:#1890ff}.ant-badge-status-geekblue{background:#2f54eb}.ant-badge-status-purple{background:#722ed1}.ant-badge-status-text{margin-left:8px;color:#000000d9;font-size:14px}.ant-badge-zoom-appear,.ant-badge-zoom-enter{animation:antZoomBadgeIn .3s cubic-bezier(.12,.4,.29,1.46);animation-fill-mode:both}.ant-badge-zoom-leave{animation:antZoomBadgeOut .3s cubic-bezier(.71,-.46,.88,.6);animation-fill-mode:both}.ant-badge-not-a-wrapper .ant-badge-zoom-appear,.ant-badge-not-a-wrapper .ant-badge-zoom-enter{animation:antNoWrapperZoomBadgeIn .3s cubic-bezier(.12,.4,.29,1.46)}.ant-badge-not-a-wrapper .ant-badge-zoom-leave{animation:antNoWrapperZoomBadgeOut .3s cubic-bezier(.71,-.46,.88,.6)}.ant-badge-not-a-wrapper:not(.ant-badge-status){vertical-align:middle}.ant-badge-not-a-wrapper .ant-scroll-number-custom-component,.ant-badge-not-a-wrapper .ant-badge-count{transform:none}.ant-badge-not-a-wrapper .ant-scroll-number-custom-component,.ant-badge-not-a-wrapper .ant-scroll-number{position:relative;top:auto;display:block;transform-origin:50% 50%}@keyframes antStatusProcessing{0%{transform:scale(.8);opacity:.5}to{transform:scale(2.4);opacity:0}}.ant-scroll-number{overflow:hidden;direction:ltr}.ant-scroll-number-only{position:relative;display:inline-block;height:20px;transition:all .3s cubic-bezier(.645,.045,.355,1);-webkit-transform-style:preserve-3d;-webkit-backface-visibility:hidden}.ant-scroll-number-only>p.ant-scroll-number-only-unit{height:20px;margin:0;-webkit-transform-style:preserve-3d;-webkit-backface-visibility:hidden}.ant-scroll-number-symbol{vertical-align:top}@keyframes antZoomBadgeIn{0%{transform:scale(0) translate(50%,-50%);opacity:0}to{transform:scale(1) translate(50%,-50%)}}@keyframes antZoomBadgeOut{0%{transform:scale(1) translate(50%,-50%)}to{transform:scale(0) translate(50%,-50%);opacity:0}}@keyframes antNoWrapperZoomBadgeIn{0%{transform:scale(0);opacity:0}to{transform:scale(1)}}@keyframes antNoWrapperZoomBadgeOut{0%{transform:scale(1)}to{transform:scale(0);opacity:0}}@keyframes antBadgeLoadingCircle{0%{transform-origin:50%}to{transform:translate(50%,-50%) rotate(360deg);transform-origin:50%}}.ant-ribbon-wrapper{position:relative}.ant-ribbon{box-sizing:border-box;margin:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:absolute;top:8px;height:22px;padding:0 8px;color:#fff;line-height:22px;white-space:nowrap;background-color:#1890ff;border-radius:2px}.ant-ribbon-text{color:#fff}.ant-ribbon-corner{position:absolute;top:100%;width:8px;height:8px;color:currentcolor;border:4px solid;transform:scaleY(.75);transform-origin:top}.ant-ribbon-corner:after{position:absolute;top:-4px;left:-4px;width:inherit;height:inherit;color:#00000040;border:inherit;content:""}.ant-ribbon-color-pink,.ant-ribbon-color-magenta{color:#eb2f96;background:#eb2f96}.ant-ribbon-color-red{color:#f5222d;background:#f5222d}.ant-ribbon-color-volcano{color:#fa541c;background:#fa541c}.ant-ribbon-color-orange{color:#fa8c16;background:#fa8c16}.ant-ribbon-color-yellow{color:#fadb14;background:#fadb14}.ant-ribbon-color-gold{color:#faad14;background:#faad14}.ant-ribbon-color-cyan{color:#13c2c2;background:#13c2c2}.ant-ribbon-color-lime{color:#a0d911;background:#a0d911}.ant-ribbon-color-green{color:#52c41a;background:#52c41a}.ant-ribbon-color-blue{color:#1890ff;background:#1890ff}.ant-ribbon-color-geekblue{color:#2f54eb;background:#2f54eb}.ant-ribbon-color-purple{color:#722ed1;background:#722ed1}.ant-ribbon.ant-ribbon-placement-end{right:-8px;border-bottom-right-radius:0}.ant-ribbon.ant-ribbon-placement-end .ant-ribbon-corner{right:0;border-color:currentcolor transparent transparent currentcolor}.ant-ribbon.ant-ribbon-placement-start{left:-8px;border-bottom-left-radius:0}.ant-ribbon.ant-ribbon-placement-start .ant-ribbon-corner{left:0;border-color:currentcolor currentcolor transparent transparent}.ant-badge-rtl{direction:rtl}.ant-badge-rtl.ant-badge:not(.ant-badge-not-a-wrapper) .ant-badge-count,.ant-badge-rtl.ant-badge:not(.ant-badge-not-a-wrapper) .ant-badge-dot,.ant-badge-rtl.ant-badge:not(.ant-badge-not-a-wrapper) .ant-scroll-number-custom-component{right:auto;left:0;direction:ltr;transform:translate(-50%,-50%);transform-origin:0% 0%}.ant-badge-rtl.ant-badge:not(.ant-badge-not-a-wrapper) .ant-scroll-number-custom-component{right:auto;left:0;transform:translate(-50%,-50%);transform-origin:0% 0%}.ant-badge-rtl .ant-badge-status-text{margin-right:8px;margin-left:0}.ant-badge:not(.ant-badge-not-a-wrapper).ant-badge-rtl .ant-badge-zoom-appear,.ant-badge:not(.ant-badge-not-a-wrapper).ant-badge-rtl .ant-badge-zoom-enter{animation-name:antZoomBadgeInRtl}.ant-badge:not(.ant-badge-not-a-wrapper).ant-badge-rtl .ant-badge-zoom-leave{animation-name:antZoomBadgeOutRtl}.ant-ribbon-rtl{direction:rtl}.ant-ribbon-rtl.ant-ribbon-placement-end{right:unset;left:-8px;border-bottom-right-radius:2px;border-bottom-left-radius:0}.ant-ribbon-rtl.ant-ribbon-placement-end .ant-ribbon-corner{right:unset;left:0;border-color:currentcolor currentcolor transparent transparent}.ant-ribbon-rtl.ant-ribbon-placement-end .ant-ribbon-corner:after{border-color:currentcolor currentcolor transparent transparent}.ant-ribbon-rtl.ant-ribbon-placement-start{right:-8px;left:unset;border-bottom-right-radius:0;border-bottom-left-radius:2px}.ant-ribbon-rtl.ant-ribbon-placement-start .ant-ribbon-corner{right:0;left:unset;border-color:currentcolor transparent transparent currentcolor}.ant-ribbon-rtl.ant-ribbon-placement-start .ant-ribbon-corner:after{border-color:currentcolor transparent transparent currentcolor}@keyframes antZoomBadgeInRtl{0%{transform:scale(0) translate(-50%,-50%);opacity:0}to{transform:scale(1) translate(-50%,-50%)}}@keyframes antZoomBadgeOutRtl{0%{transform:scale(1) translate(-50%,-50%)}to{transform:scale(0) translate(-50%,-50%);opacity:0}}.ant-badge .ant-scroll-number:only-child{position:relative;top:auto;display:block}.ant-badge .ant-badge-count:only-child{transform:none}nz-ribbon{display:block}.ant-breadcrumb{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";color:#00000073;font-size:14px}.ant-breadcrumb .anticon{font-size:14px}.ant-breadcrumb ol{display:flex;flex-wrap:wrap;margin:0;padding:0;list-style:none}.ant-breadcrumb a{color:#00000073;transition:color .3s}.ant-breadcrumb a:hover{color:#000000d9}.ant-breadcrumb li:last-child{color:#000000d9}.ant-breadcrumb li:last-child a{color:#000000d9}li:last-child .ant-breadcrumb-separator{display:none}.ant-breadcrumb-separator{margin:0 8px;color:#00000073}.ant-breadcrumb-link>.anticon+span,.ant-breadcrumb-link>.anticon+a{margin-left:4px}.ant-breadcrumb-overlay-link>.anticon{margin-left:4px}.ant-breadcrumb-rtl{direction:rtl}.ant-breadcrumb-rtl:before{display:table;content:""}.ant-breadcrumb-rtl:after{display:table;clear:both;content:""}.ant-breadcrumb-rtl>span{float:right}.ant-breadcrumb-rtl .ant-breadcrumb-link>.anticon+span,.ant-breadcrumb-rtl .ant-breadcrumb-link>.anticon+a{margin-right:4px;margin-left:0}.ant-breadcrumb-rtl .ant-breadcrumb-overlay-link>.anticon{margin-right:4px;margin-left:0}.ant-breadcrumb-link .anticon+span{margin-left:4px}.ant-breadcrumb>nz-breadcrumb-item:last-child{color:#000000d9}.ant-breadcrumb>nz-breadcrumb-item:last-child a{color:#000000d9}.ant-breadcrumb-rtl>nz-breadcrumb-item{float:right}nz-breadcrumb{display:block}nz-breadcrumb-item:last-child .ant-breadcrumb-separator{display:none}.ant-btn{line-height:1.5715;position:relative;display:inline-block;font-weight:400;white-space:nowrap;text-align:center;background-image:none;border:1px solid transparent;box-shadow:0 2px #00000004;cursor:pointer;transition:all .3s cubic-bezier(.645,.045,.355,1);-webkit-user-select:none;user-select:none;touch-action:manipulation;height:32px;padding:4px 15px;font-size:14px;border-radius:2px;color:#000000d9;border-color:#d9d9d9;background:#fff}.ant-btn>.anticon{line-height:1}.ant-btn,.ant-btn:active,.ant-btn:focus{outline:0}.ant-btn:not([disabled]):hover{text-decoration:none}.ant-btn:not([disabled]):active{outline:0;box-shadow:none}.ant-btn[disabled]{cursor:not-allowed}.ant-btn[disabled]>*{pointer-events:none}.ant-btn-lg{height:40px;padding:6.4px 15px;font-size:16px;border-radius:2px}.ant-btn-sm{height:24px;padding:0 7px;font-size:14px;border-radius:2px}.ant-btn>a:only-child{color:currentcolor}.ant-btn>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn:hover,.ant-btn:focus{color:#40a9ff;border-color:#40a9ff;background:#fff}.ant-btn:hover>a:only-child,.ant-btn:focus>a:only-child{color:currentcolor}.ant-btn:hover>a:only-child:after,.ant-btn:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn:active{color:#096dd9;border-color:#096dd9;background:#fff}.ant-btn:active>a:only-child{color:currentcolor}.ant-btn:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn[disabled],.ant-btn[disabled]:hover,.ant-btn[disabled]:focus,.ant-btn[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn[disabled]>a:only-child,.ant-btn[disabled]:hover>a:only-child,.ant-btn[disabled]:focus>a:only-child,.ant-btn[disabled]:active>a:only-child{color:currentcolor}.ant-btn[disabled]>a:only-child:after,.ant-btn[disabled]:hover>a:only-child:after,.ant-btn[disabled]:focus>a:only-child:after,.ant-btn[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn:hover,.ant-btn:focus,.ant-btn:active{text-decoration:none;background:#fff}.ant-btn>span{display:inline-block}.ant-btn-primary{color:#fff;border-color:#1890ff;background:#1890ff;text-shadow:0 -1px 0 rgba(0,0,0,.12);box-shadow:0 2px #0000000b}.ant-btn-primary>a:only-child{color:currentcolor}.ant-btn-primary>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-primary:hover,.ant-btn-primary:focus{color:#fff;border-color:#40a9ff;background:#40a9ff}.ant-btn-primary:hover>a:only-child,.ant-btn-primary:focus>a:only-child{color:currentcolor}.ant-btn-primary:hover>a:only-child:after,.ant-btn-primary:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-primary:active{color:#fff;border-color:#096dd9;background:#096dd9}.ant-btn-primary:active>a:only-child{color:currentcolor}.ant-btn-primary:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-primary[disabled],.ant-btn-primary[disabled]:hover,.ant-btn-primary[disabled]:focus,.ant-btn-primary[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-primary[disabled]>a:only-child,.ant-btn-primary[disabled]:hover>a:only-child,.ant-btn-primary[disabled]:focus>a:only-child,.ant-btn-primary[disabled]:active>a:only-child{color:currentcolor}.ant-btn-primary[disabled]>a:only-child:after,.ant-btn-primary[disabled]:hover>a:only-child:after,.ant-btn-primary[disabled]:focus>a:only-child:after,.ant-btn-primary[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-group .ant-btn-primary:not(:first-child):not(:last-child){border-right-color:#40a9ff;border-left-color:#40a9ff}.ant-btn-group .ant-btn-primary:not(:first-child):not(:last-child):disabled{border-color:#d9d9d9}.ant-btn-group .ant-btn-primary:first-child:not(:last-child){border-right-color:#40a9ff}.ant-btn-group .ant-btn-primary:first-child:not(:last-child)[disabled]{border-right-color:#d9d9d9}.ant-btn-group .ant-btn-primary:last-child:not(:first-child),.ant-btn-group .ant-btn-primary+.ant-btn-primary{border-left-color:#40a9ff}.ant-btn-group .ant-btn-primary:last-child:not(:first-child)[disabled],.ant-btn-group .ant-btn-primary+.ant-btn-primary[disabled]{border-left-color:#d9d9d9}.ant-btn-ghost{color:#000000d9;border-color:#d9d9d9;background:transparent}.ant-btn-ghost>a:only-child{color:currentcolor}.ant-btn-ghost>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-ghost:hover,.ant-btn-ghost:focus{color:#40a9ff;border-color:#40a9ff;background:transparent}.ant-btn-ghost:hover>a:only-child,.ant-btn-ghost:focus>a:only-child{color:currentcolor}.ant-btn-ghost:hover>a:only-child:after,.ant-btn-ghost:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-ghost:active{color:#096dd9;border-color:#096dd9;background:transparent}.ant-btn-ghost:active>a:only-child{color:currentcolor}.ant-btn-ghost:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-ghost[disabled],.ant-btn-ghost[disabled]:hover,.ant-btn-ghost[disabled]:focus,.ant-btn-ghost[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-ghost[disabled]>a:only-child,.ant-btn-ghost[disabled]:hover>a:only-child,.ant-btn-ghost[disabled]:focus>a:only-child,.ant-btn-ghost[disabled]:active>a:only-child{color:currentcolor}.ant-btn-ghost[disabled]>a:only-child:after,.ant-btn-ghost[disabled]:hover>a:only-child:after,.ant-btn-ghost[disabled]:focus>a:only-child:after,.ant-btn-ghost[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dashed{color:#000000d9;border-color:#d9d9d9;background:#fff;border-style:dashed}.ant-btn-dashed>a:only-child{color:currentcolor}.ant-btn-dashed>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dashed:hover,.ant-btn-dashed:focus{color:#40a9ff;border-color:#40a9ff;background:#fff}.ant-btn-dashed:hover>a:only-child,.ant-btn-dashed:focus>a:only-child{color:currentcolor}.ant-btn-dashed:hover>a:only-child:after,.ant-btn-dashed:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dashed:active{color:#096dd9;border-color:#096dd9;background:#fff}.ant-btn-dashed:active>a:only-child{color:currentcolor}.ant-btn-dashed:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dashed[disabled],.ant-btn-dashed[disabled]:hover,.ant-btn-dashed[disabled]:focus,.ant-btn-dashed[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-dashed[disabled]>a:only-child,.ant-btn-dashed[disabled]:hover>a:only-child,.ant-btn-dashed[disabled]:focus>a:only-child,.ant-btn-dashed[disabled]:active>a:only-child{color:currentcolor}.ant-btn-dashed[disabled]>a:only-child:after,.ant-btn-dashed[disabled]:hover>a:only-child:after,.ant-btn-dashed[disabled]:focus>a:only-child:after,.ant-btn-dashed[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-danger{color:#fff;border-color:#ff4d4f;background:#ff4d4f;text-shadow:0 -1px 0 rgba(0,0,0,.12);box-shadow:0 2px #0000000b}.ant-btn-danger>a:only-child{color:currentcolor}.ant-btn-danger>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-danger:hover,.ant-btn-danger:focus{color:#fff;border-color:#ff7875;background:#ff7875}.ant-btn-danger:hover>a:only-child,.ant-btn-danger:focus>a:only-child{color:currentcolor}.ant-btn-danger:hover>a:only-child:after,.ant-btn-danger:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-danger:active{color:#fff;border-color:#d9363e;background:#d9363e}.ant-btn-danger:active>a:only-child{color:currentcolor}.ant-btn-danger:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-danger[disabled],.ant-btn-danger[disabled]:hover,.ant-btn-danger[disabled]:focus,.ant-btn-danger[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-danger[disabled]>a:only-child,.ant-btn-danger[disabled]:hover>a:only-child,.ant-btn-danger[disabled]:focus>a:only-child,.ant-btn-danger[disabled]:active>a:only-child{color:currentcolor}.ant-btn-danger[disabled]>a:only-child:after,.ant-btn-danger[disabled]:hover>a:only-child:after,.ant-btn-danger[disabled]:focus>a:only-child:after,.ant-btn-danger[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-link{color:#1890ff;border-color:transparent;background:transparent;box-shadow:none}.ant-btn-link>a:only-child{color:currentcolor}.ant-btn-link>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-link:hover,.ant-btn-link:focus{color:#40a9ff;border-color:#40a9ff;background:transparent}.ant-btn-link:hover>a:only-child,.ant-btn-link:focus>a:only-child{color:currentcolor}.ant-btn-link:hover>a:only-child:after,.ant-btn-link:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-link:active{color:#096dd9;border-color:#096dd9;background:transparent}.ant-btn-link:active>a:only-child{color:currentcolor}.ant-btn-link:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-link[disabled],.ant-btn-link[disabled]:hover,.ant-btn-link[disabled]:focus,.ant-btn-link[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-link:hover{background:transparent}.ant-btn-link:hover,.ant-btn-link:focus,.ant-btn-link:active{border-color:transparent}.ant-btn-link[disabled],.ant-btn-link[disabled]:hover,.ant-btn-link[disabled]:focus,.ant-btn-link[disabled]:active{color:#00000040;border-color:transparent;background:transparent;text-shadow:none;box-shadow:none}.ant-btn-link[disabled]>a:only-child,.ant-btn-link[disabled]:hover>a:only-child,.ant-btn-link[disabled]:focus>a:only-child,.ant-btn-link[disabled]:active>a:only-child{color:currentcolor}.ant-btn-link[disabled]>a:only-child:after,.ant-btn-link[disabled]:hover>a:only-child:after,.ant-btn-link[disabled]:focus>a:only-child:after,.ant-btn-link[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-text{color:#000000d9;border-color:transparent;background:transparent;box-shadow:none}.ant-btn-text>a:only-child{color:currentcolor}.ant-btn-text>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-text:hover,.ant-btn-text:focus{color:#40a9ff;border-color:#40a9ff;background:transparent}.ant-btn-text:hover>a:only-child,.ant-btn-text:focus>a:only-child{color:currentcolor}.ant-btn-text:hover>a:only-child:after,.ant-btn-text:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-text:active{color:#096dd9;border-color:#096dd9;background:transparent}.ant-btn-text:active>a:only-child{color:currentcolor}.ant-btn-text:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-text[disabled],.ant-btn-text[disabled]:hover,.ant-btn-text[disabled]:focus,.ant-btn-text[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-text:hover,.ant-btn-text:focus{color:#000000d9;background:rgba(0,0,0,.018);border-color:transparent}.ant-btn-text:active{color:#000000d9;background:rgba(0,0,0,.028);border-color:transparent}.ant-btn-text[disabled],.ant-btn-text[disabled]:hover,.ant-btn-text[disabled]:focus,.ant-btn-text[disabled]:active{color:#00000040;border-color:transparent;background:transparent;text-shadow:none;box-shadow:none}.ant-btn-text[disabled]>a:only-child,.ant-btn-text[disabled]:hover>a:only-child,.ant-btn-text[disabled]:focus>a:only-child,.ant-btn-text[disabled]:active>a:only-child{color:currentcolor}.ant-btn-text[disabled]>a:only-child:after,.ant-btn-text[disabled]:hover>a:only-child:after,.ant-btn-text[disabled]:focus>a:only-child:after,.ant-btn-text[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous{color:#ff4d4f;border-color:#ff4d4f;background:#fff}.ant-btn-dangerous>a:only-child{color:currentcolor}.ant-btn-dangerous>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous:hover,.ant-btn-dangerous:focus{color:#ff7875;border-color:#ff7875;background:#fff}.ant-btn-dangerous:hover>a:only-child,.ant-btn-dangerous:focus>a:only-child{color:currentcolor}.ant-btn-dangerous:hover>a:only-child:after,.ant-btn-dangerous:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous:active{color:#d9363e;border-color:#d9363e;background:#fff}.ant-btn-dangerous:active>a:only-child{color:currentcolor}.ant-btn-dangerous:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous[disabled],.ant-btn-dangerous[disabled]:hover,.ant-btn-dangerous[disabled]:focus,.ant-btn-dangerous[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-dangerous[disabled]>a:only-child,.ant-btn-dangerous[disabled]:hover>a:only-child,.ant-btn-dangerous[disabled]:focus>a:only-child,.ant-btn-dangerous[disabled]:active>a:only-child{color:currentcolor}.ant-btn-dangerous[disabled]>a:only-child:after,.ant-btn-dangerous[disabled]:hover>a:only-child:after,.ant-btn-dangerous[disabled]:focus>a:only-child:after,.ant-btn-dangerous[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous.ant-btn-primary{color:#fff;border-color:#ff4d4f;background:#ff4d4f;text-shadow:0 -1px 0 rgba(0,0,0,.12);box-shadow:0 2px #0000000b}.ant-btn-dangerous.ant-btn-primary>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-primary>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous.ant-btn-primary:hover,.ant-btn-dangerous.ant-btn-primary:focus{color:#fff;border-color:#ff7875;background:#ff7875}.ant-btn-dangerous.ant-btn-primary:hover>a:only-child,.ant-btn-dangerous.ant-btn-primary:focus>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-primary:hover>a:only-child:after,.ant-btn-dangerous.ant-btn-primary:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous.ant-btn-primary:active{color:#fff;border-color:#d9363e;background:#d9363e}.ant-btn-dangerous.ant-btn-primary:active>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-primary:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous.ant-btn-primary[disabled],.ant-btn-dangerous.ant-btn-primary[disabled]:hover,.ant-btn-dangerous.ant-btn-primary[disabled]:focus,.ant-btn-dangerous.ant-btn-primary[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-dangerous.ant-btn-primary[disabled]>a:only-child,.ant-btn-dangerous.ant-btn-primary[disabled]:hover>a:only-child,.ant-btn-dangerous.ant-btn-primary[disabled]:focus>a:only-child,.ant-btn-dangerous.ant-btn-primary[disabled]:active>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-primary[disabled]>a:only-child:after,.ant-btn-dangerous.ant-btn-primary[disabled]:hover>a:only-child:after,.ant-btn-dangerous.ant-btn-primary[disabled]:focus>a:only-child:after,.ant-btn-dangerous.ant-btn-primary[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous.ant-btn-link{color:#ff4d4f;border-color:transparent;background:transparent;box-shadow:none}.ant-btn-dangerous.ant-btn-link>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-link>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous.ant-btn-link:hover,.ant-btn-dangerous.ant-btn-link:focus{color:#40a9ff;border-color:#40a9ff;background:transparent}.ant-btn-dangerous.ant-btn-link:active{color:#096dd9;border-color:#096dd9;background:transparent}.ant-btn-dangerous.ant-btn-link[disabled],.ant-btn-dangerous.ant-btn-link[disabled]:hover,.ant-btn-dangerous.ant-btn-link[disabled]:focus,.ant-btn-dangerous.ant-btn-link[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-dangerous.ant-btn-link:hover,.ant-btn-dangerous.ant-btn-link:focus{color:#ff7875;border-color:transparent;background:transparent}.ant-btn-dangerous.ant-btn-link:hover>a:only-child,.ant-btn-dangerous.ant-btn-link:focus>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-link:hover>a:only-child:after,.ant-btn-dangerous.ant-btn-link:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous.ant-btn-link:active{color:#d9363e;border-color:transparent;background:transparent}.ant-btn-dangerous.ant-btn-link:active>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-link:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous.ant-btn-link[disabled],.ant-btn-dangerous.ant-btn-link[disabled]:hover,.ant-btn-dangerous.ant-btn-link[disabled]:focus,.ant-btn-dangerous.ant-btn-link[disabled]:active{color:#00000040;border-color:transparent;background:transparent;text-shadow:none;box-shadow:none}.ant-btn-dangerous.ant-btn-link[disabled]>a:only-child,.ant-btn-dangerous.ant-btn-link[disabled]:hover>a:only-child,.ant-btn-dangerous.ant-btn-link[disabled]:focus>a:only-child,.ant-btn-dangerous.ant-btn-link[disabled]:active>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-link[disabled]>a:only-child:after,.ant-btn-dangerous.ant-btn-link[disabled]:hover>a:only-child:after,.ant-btn-dangerous.ant-btn-link[disabled]:focus>a:only-child:after,.ant-btn-dangerous.ant-btn-link[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous.ant-btn-text{color:#ff4d4f;border-color:transparent;background:transparent;box-shadow:none}.ant-btn-dangerous.ant-btn-text>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-text>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous.ant-btn-text:hover,.ant-btn-dangerous.ant-btn-text:focus{color:#40a9ff;border-color:#40a9ff;background:transparent}.ant-btn-dangerous.ant-btn-text:active{color:#096dd9;border-color:#096dd9;background:transparent}.ant-btn-dangerous.ant-btn-text[disabled],.ant-btn-dangerous.ant-btn-text[disabled]:hover,.ant-btn-dangerous.ant-btn-text[disabled]:focus,.ant-btn-dangerous.ant-btn-text[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-dangerous.ant-btn-text:hover,.ant-btn-dangerous.ant-btn-text:focus{color:#ff7875;border-color:transparent;background:rgba(0,0,0,.018)}.ant-btn-dangerous.ant-btn-text:hover>a:only-child,.ant-btn-dangerous.ant-btn-text:focus>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-text:hover>a:only-child:after,.ant-btn-dangerous.ant-btn-text:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous.ant-btn-text:active{color:#d9363e;border-color:transparent;background:rgba(0,0,0,.028)}.ant-btn-dangerous.ant-btn-text:active>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-text:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous.ant-btn-text[disabled],.ant-btn-dangerous.ant-btn-text[disabled]:hover,.ant-btn-dangerous.ant-btn-text[disabled]:focus,.ant-btn-dangerous.ant-btn-text[disabled]:active{color:#00000040;border-color:transparent;background:transparent;text-shadow:none;box-shadow:none}.ant-btn-dangerous.ant-btn-text[disabled]>a:only-child,.ant-btn-dangerous.ant-btn-text[disabled]:hover>a:only-child,.ant-btn-dangerous.ant-btn-text[disabled]:focus>a:only-child,.ant-btn-dangerous.ant-btn-text[disabled]:active>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-text[disabled]>a:only-child:after,.ant-btn-dangerous.ant-btn-text[disabled]:hover>a:only-child:after,.ant-btn-dangerous.ant-btn-text[disabled]:focus>a:only-child:after,.ant-btn-dangerous.ant-btn-text[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-icon-only{width:32px;height:32px;padding:2.4px 0;font-size:16px;border-radius:2px;vertical-align:-3px}.ant-btn-icon-only>*{font-size:16px}.ant-btn-icon-only.ant-btn-lg{width:40px;height:40px;padding:4.9px 0;font-size:18px;border-radius:2px}.ant-btn-icon-only.ant-btn-lg>*{font-size:18px}.ant-btn-icon-only.ant-btn-sm{width:24px;height:24px;padding:0;font-size:14px;border-radius:2px}.ant-btn-icon-only.ant-btn-sm>*{font-size:14px}.ant-btn-icon-only>.anticon{display:flex;justify-content:center}a.ant-btn-icon-only{vertical-align:-1px}a.ant-btn-icon-only>.anticon{display:inline}.ant-btn-round{height:32px;padding:4px 16px;font-size:14px;border-radius:32px}.ant-btn-round.ant-btn-lg{height:40px;padding:6.4px 20px;font-size:16px;border-radius:40px}.ant-btn-round.ant-btn-sm{height:24px;padding:0 12px;font-size:14px;border-radius:24px}.ant-btn-round.ant-btn-icon-only{width:auto}.ant-btn-circle{min-width:32px;padding-right:0;padding-left:0;text-align:center;border-radius:50%}.ant-btn-circle.ant-btn-lg{min-width:40px;border-radius:50%}.ant-btn-circle.ant-btn-sm{min-width:24px;border-radius:50%}.ant-btn:before{position:absolute;inset:-1px;z-index:1;display:none;background:#fff;border-radius:inherit;opacity:.35;transition:opacity .2s;content:"";pointer-events:none}.ant-btn .anticon{transition:margin-left .3s cubic-bezier(.645,.045,.355,1)}.ant-btn .anticon.anticon-plus>svg,.ant-btn .anticon.anticon-minus>svg{shape-rendering:optimizespeed}.ant-btn.ant-btn-loading{position:relative;cursor:default}.ant-btn.ant-btn-loading:before{display:block}.ant-btn>.ant-btn-loading-icon{transition:width .3s cubic-bezier(.645,.045,.355,1),opacity .3s cubic-bezier(.645,.045,.355,1)}.ant-btn>.ant-btn-loading-icon .anticon{padding-right:8px;animation:none}.ant-btn>.ant-btn-loading-icon .anticon svg{animation:loadingCircle 1s infinite linear}.ant-btn>.ant-btn-loading-icon:only-child .anticon{padding-right:0}.ant-btn-group{position:relative;display:inline-flex}.ant-btn-group>.ant-btn,.ant-btn-group>span>.ant-btn{position:relative}.ant-btn-group>.ant-btn:hover,.ant-btn-group>span>.ant-btn:hover,.ant-btn-group>.ant-btn:focus,.ant-btn-group>span>.ant-btn:focus,.ant-btn-group>.ant-btn:active,.ant-btn-group>span>.ant-btn:active{z-index:2}.ant-btn-group>.ant-btn[disabled],.ant-btn-group>span>.ant-btn[disabled]{z-index:0}.ant-btn-group .ant-btn-icon-only{font-size:14px}.ant-btn-group .ant-btn+.ant-btn,.ant-btn+.ant-btn-group,.ant-btn-group span+.ant-btn,.ant-btn-group .ant-btn+span,.ant-btn-group>span+span,.ant-btn-group+.ant-btn,.ant-btn-group+.ant-btn-group{margin-left:-1px}.ant-btn-group .ant-btn-primary+.ant-btn:not(.ant-btn-primary):not([disabled]){border-left-color:transparent}.ant-btn-group .ant-btn{border-radius:0}.ant-btn-group>.ant-btn:first-child,.ant-btn-group>span:first-child>.ant-btn{margin-left:0}.ant-btn-group>.ant-btn:only-child{border-radius:2px}.ant-btn-group>span:only-child>.ant-btn{border-radius:2px}.ant-btn-group>.ant-btn:first-child:not(:last-child),.ant-btn-group>span:first-child:not(:last-child)>.ant-btn{border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-btn-group>.ant-btn:last-child:not(:first-child),.ant-btn-group>span:last-child:not(:first-child)>.ant-btn{border-top-right-radius:2px;border-bottom-right-radius:2px}.ant-btn-group-sm>.ant-btn:only-child{border-radius:2px}.ant-btn-group-sm>span:only-child>.ant-btn{border-radius:2px}.ant-btn-group-sm>.ant-btn:first-child:not(:last-child),.ant-btn-group-sm>span:first-child:not(:last-child)>.ant-btn{border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-btn-group-sm>.ant-btn:last-child:not(:first-child),.ant-btn-group-sm>span:last-child:not(:first-child)>.ant-btn{border-top-right-radius:2px;border-bottom-right-radius:2px}.ant-btn-group>.ant-btn-group{float:left}.ant-btn-group>.ant-btn-group:not(:first-child):not(:last-child)>.ant-btn{border-radius:0}.ant-btn-group>.ant-btn-group:first-child:not(:last-child)>.ant-btn:last-child{padding-right:8px;border-top-right-radius:0;border-bottom-right-radius:0}.ant-btn-group>.ant-btn-group:last-child:not(:first-child)>.ant-btn:first-child{padding-left:8px;border-top-left-radius:0;border-bottom-left-radius:0}.ant-btn-rtl.ant-btn-group .ant-btn+.ant-btn,.ant-btn-rtl.ant-btn+.ant-btn-group,.ant-btn-rtl.ant-btn-group span+.ant-btn,.ant-btn-rtl.ant-btn-group .ant-btn+span,.ant-btn-rtl.ant-btn-group>span+span,.ant-btn-rtl.ant-btn-group+.ant-btn,.ant-btn-rtl.ant-btn-group+.ant-btn-group,.ant-btn-group-rtl.ant-btn-group .ant-btn+.ant-btn,.ant-btn-group-rtl.ant-btn+.ant-btn-group,.ant-btn-group-rtl.ant-btn-group span+.ant-btn,.ant-btn-group-rtl.ant-btn-group .ant-btn+span,.ant-btn-group-rtl.ant-btn-group>span+span,.ant-btn-group-rtl.ant-btn-group+.ant-btn,.ant-btn-group-rtl.ant-btn-group+.ant-btn-group{margin-right:-1px;margin-left:auto}.ant-btn-group.ant-btn-group-rtl{direction:rtl}.ant-btn-group-rtl.ant-btn-group>.ant-btn:first-child:not(:last-child),.ant-btn-group-rtl.ant-btn-group>span:first-child:not(:last-child)>.ant-btn{border-radius:0 2px 2px 0}.ant-btn-group-rtl.ant-btn-group>.ant-btn:last-child:not(:first-child),.ant-btn-group-rtl.ant-btn-group>span:last-child:not(:first-child)>.ant-btn{border-radius:2px 0 0 2px}.ant-btn-group-rtl.ant-btn-group-sm>.ant-btn:first-child:not(:last-child),.ant-btn-group-rtl.ant-btn-group-sm>span:first-child:not(:last-child)>.ant-btn{border-radius:0 2px 2px 0}.ant-btn-group-rtl.ant-btn-group-sm>.ant-btn:last-child:not(:first-child),.ant-btn-group-rtl.ant-btn-group-sm>span:last-child:not(:first-child)>.ant-btn{border-radius:2px 0 0 2px}.ant-btn:focus>span,.ant-btn:active>span{position:relative}.ant-btn>.anticon+span,.ant-btn>span+.anticon{margin-left:8px}.ant-btn.ant-btn-background-ghost{color:#fff;border-color:#fff}.ant-btn.ant-btn-background-ghost,.ant-btn.ant-btn-background-ghost:hover,.ant-btn.ant-btn-background-ghost:active,.ant-btn.ant-btn-background-ghost:focus{background:transparent}.ant-btn.ant-btn-background-ghost:hover,.ant-btn.ant-btn-background-ghost:focus{color:#40a9ff;border-color:#40a9ff}.ant-btn.ant-btn-background-ghost:active{color:#096dd9;border-color:#096dd9}.ant-btn.ant-btn-background-ghost[disabled]{color:#00000040;background:transparent;border-color:#d9d9d9}.ant-btn-background-ghost.ant-btn-primary{color:#1890ff;border-color:#1890ff;text-shadow:none}.ant-btn-background-ghost.ant-btn-primary>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-primary>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-primary:hover,.ant-btn-background-ghost.ant-btn-primary:focus{color:#40a9ff;border-color:#40a9ff}.ant-btn-background-ghost.ant-btn-primary:hover>a:only-child,.ant-btn-background-ghost.ant-btn-primary:focus>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-primary:hover>a:only-child:after,.ant-btn-background-ghost.ant-btn-primary:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-primary:active{color:#096dd9;border-color:#096dd9}.ant-btn-background-ghost.ant-btn-primary:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-primary:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-primary[disabled],.ant-btn-background-ghost.ant-btn-primary[disabled]:hover,.ant-btn-background-ghost.ant-btn-primary[disabled]:focus,.ant-btn-background-ghost.ant-btn-primary[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-background-ghost.ant-btn-primary[disabled]>a:only-child,.ant-btn-background-ghost.ant-btn-primary[disabled]:hover>a:only-child,.ant-btn-background-ghost.ant-btn-primary[disabled]:focus>a:only-child,.ant-btn-background-ghost.ant-btn-primary[disabled]:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-primary[disabled]>a:only-child:after,.ant-btn-background-ghost.ant-btn-primary[disabled]:hover>a:only-child:after,.ant-btn-background-ghost.ant-btn-primary[disabled]:focus>a:only-child:after,.ant-btn-background-ghost.ant-btn-primary[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-danger{color:#ff4d4f;border-color:#ff4d4f;text-shadow:none}.ant-btn-background-ghost.ant-btn-danger>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-danger>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-danger:hover,.ant-btn-background-ghost.ant-btn-danger:focus{color:#ff7875;border-color:#ff7875}.ant-btn-background-ghost.ant-btn-danger:hover>a:only-child,.ant-btn-background-ghost.ant-btn-danger:focus>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-danger:hover>a:only-child:after,.ant-btn-background-ghost.ant-btn-danger:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-danger:active{color:#d9363e;border-color:#d9363e}.ant-btn-background-ghost.ant-btn-danger:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-danger:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-danger[disabled],.ant-btn-background-ghost.ant-btn-danger[disabled]:hover,.ant-btn-background-ghost.ant-btn-danger[disabled]:focus,.ant-btn-background-ghost.ant-btn-danger[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-background-ghost.ant-btn-danger[disabled]>a:only-child,.ant-btn-background-ghost.ant-btn-danger[disabled]:hover>a:only-child,.ant-btn-background-ghost.ant-btn-danger[disabled]:focus>a:only-child,.ant-btn-background-ghost.ant-btn-danger[disabled]:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-danger[disabled]>a:only-child:after,.ant-btn-background-ghost.ant-btn-danger[disabled]:hover>a:only-child:after,.ant-btn-background-ghost.ant-btn-danger[disabled]:focus>a:only-child:after,.ant-btn-background-ghost.ant-btn-danger[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-dangerous{color:#ff4d4f;border-color:#ff4d4f;text-shadow:none}.ant-btn-background-ghost.ant-btn-dangerous>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-dangerous:hover,.ant-btn-background-ghost.ant-btn-dangerous:focus{color:#ff7875;border-color:#ff7875}.ant-btn-background-ghost.ant-btn-dangerous:hover>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous:focus>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous:hover>a:only-child:after,.ant-btn-background-ghost.ant-btn-dangerous:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-dangerous:active{color:#d9363e;border-color:#d9363e}.ant-btn-background-ghost.ant-btn-dangerous:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-dangerous[disabled],.ant-btn-background-ghost.ant-btn-dangerous[disabled]:hover,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:focus,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-background-ghost.ant-btn-dangerous[disabled]>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:hover>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:focus>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous[disabled]>a:only-child:after,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:hover>a:only-child:after,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:focus>a:only-child:after,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link{color:#ff4d4f;border-color:transparent;text-shadow:none}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:hover,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:focus{color:#ff7875;border-color:transparent}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:hover>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:focus>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:hover>a:only-child:after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:active{color:#d9363e;border-color:transparent}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled],.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:hover,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:focus,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:hover>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:focus>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]>a:only-child:after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:hover>a:only-child:after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:focus>a:only-child:after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-two-chinese-chars:first-letter{letter-spacing:.34em}.ant-btn-two-chinese-chars>*:not(.anticon){margin-right:-.34em;letter-spacing:.34em}.ant-btn.ant-btn-block{width:100%}.ant-btn:empty{display:inline-block;width:0;visibility:hidden;content:"\a0"}a.ant-btn{padding-top:.01px!important;line-height:30px}a.ant-btn-lg{line-height:38px}a.ant-btn-sm{line-height:22px}.ant-btn-rtl{direction:rtl}.ant-btn-group-rtl.ant-btn-group .ant-btn-primary:last-child:not(:first-child),.ant-btn-group-rtl.ant-btn-group .ant-btn-primary+.ant-btn-primary{border-right-color:#40a9ff;border-left-color:#d9d9d9}.ant-btn-group-rtl.ant-btn-group .ant-btn-primary:last-child:not(:first-child)[disabled],.ant-btn-group-rtl.ant-btn-group .ant-btn-primary+.ant-btn-primary[disabled]{border-right-color:#d9d9d9;border-left-color:#40a9ff}.ant-btn-rtl.ant-btn>.ant-btn-loading-icon .anticon{padding-right:0;padding-left:8px}.ant-btn>.ant-btn-loading-icon:only-child .anticon{padding-right:0;padding-left:0}.ant-btn-rtl.ant-btn>.anticon+span,.ant-btn-rtl.ant-btn>span+.anticon{margin-right:8px;margin-left:0}.ant-card{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;background:#fff;border-radius:2px}.ant-card-rtl{direction:rtl}.ant-card-hoverable{cursor:pointer;transition:box-shadow .3s,border-color .3s}.ant-card-hoverable:hover{border-color:transparent;box-shadow:0 1px 2px -2px #00000029,0 3px 6px #0000001f,0 5px 12px 4px #00000017}.ant-card-bordered{border:1px solid #f0f0f0}.ant-card-head{min-height:48px;margin-bottom:-1px;padding:0 24px;color:#000000d9;font-weight:500;font-size:16px;background:transparent;border-bottom:1px solid #f0f0f0;border-radius:2px 2px 0 0}.ant-card-head:before{display:table;content:""}.ant-card-head:after{display:table;clear:both;content:""}.ant-card-head-wrapper{display:flex;align-items:center}.ant-card-head-title{display:inline-block;flex:1;padding:16px 0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-card-head-title>.ant-typography,.ant-card-head-title>.ant-typography-edit-content{left:0;margin-top:0;margin-bottom:0}.ant-card-head .ant-tabs-top{clear:both;margin-bottom:-17px;color:#000000d9;font-weight:400;font-size:14px}.ant-card-head .ant-tabs-top-bar{border-bottom:1px solid #f0f0f0}.ant-card-extra{float:right;margin-left:auto;padding:16px 0;color:#000000d9;font-weight:400;font-size:14px}.ant-card-rtl .ant-card-extra{margin-right:auto;margin-left:0}.ant-card-body{padding:24px}.ant-card-body:before{display:table;content:""}.ant-card-body:after{display:table;clear:both;content:""}.ant-card-contain-grid:not(.ant-card-loading) .ant-card-body{margin:-1px 0 0 -1px;padding:0}.ant-card-grid{float:left;width:33.33%;padding:24px;border:0;border-radius:0;box-shadow:1px 0 #f0f0f0,0 1px #f0f0f0,1px 1px #f0f0f0,1px 0 #f0f0f0 inset,0 1px #f0f0f0 inset;transition:all .3s}.ant-card-rtl .ant-card-grid{float:right}.ant-card-grid-hoverable:hover{position:relative;z-index:1;box-shadow:0 1px 2px -2px #00000029,0 3px 6px #0000001f,0 5px 12px 4px #00000017}.ant-card-contain-tabs>.ant-card-head .ant-card-head-title{min-height:32px;padding-bottom:0}.ant-card-contain-tabs>.ant-card-head .ant-card-extra{padding-bottom:0}.ant-card-bordered .ant-card-cover{margin-top:-1px;margin-right:-1px;margin-left:-1px}.ant-card-cover>*{display:block;width:100%}.ant-card-cover img{border-radius:2px 2px 0 0}.ant-card-actions{margin:0;padding:0;list-style:none;background:#fff;border-top:1px solid #f0f0f0}.ant-card-actions:before{display:table;content:""}.ant-card-actions:after{display:table;clear:both;content:""}.ant-card-actions>li{float:left;margin:12px 0;color:#00000073;text-align:center}.ant-card-rtl .ant-card-actions>li{float:right}.ant-card-actions>li>span{position:relative;display:block;min-width:32px;font-size:14px;line-height:1.5715;cursor:pointer}.ant-card-actions>li>span:hover{color:#1890ff;transition:color .3s}.ant-card-actions>li>span a:not(.ant-btn),.ant-card-actions>li>span>.anticon{display:inline-block;width:100%;color:#00000073;line-height:22px;transition:color .3s}.ant-card-actions>li>span a:not(.ant-btn):hover,.ant-card-actions>li>span>.anticon:hover{color:#1890ff}.ant-card-actions>li>span>.anticon{font-size:16px;line-height:22px}.ant-card-actions>li:not(:last-child){border-right:1px solid #f0f0f0}.ant-card-rtl .ant-card-actions>li:not(:last-child){border-right:none;border-left:1px solid #f0f0f0}.ant-card-type-inner .ant-card-head{padding:0 24px;background:#fafafa}.ant-card-type-inner .ant-card-head-title{padding:12px 0;font-size:14px}.ant-card-type-inner .ant-card-body{padding:16px 24px}.ant-card-type-inner .ant-card-extra{padding:13.5px 0}.ant-card-meta{margin:-4px 0}.ant-card-meta:before{display:table;content:""}.ant-card-meta:after{display:table;clear:both;content:""}.ant-card-meta-avatar{float:left;padding-right:16px}.ant-card-rtl .ant-card-meta-avatar{float:right;padding-right:0;padding-left:16px}.ant-card-meta-detail{overflow:hidden}.ant-card-meta-detail>div:not(:last-child){margin-bottom:8px}.ant-card-meta-title{overflow:hidden;color:#000000d9;font-weight:500;font-size:16px;white-space:nowrap;text-overflow:ellipsis}.ant-card-meta-description{color:#00000073}.ant-card-loading{overflow:hidden}.ant-card-loading .ant-card-body{-webkit-user-select:none;user-select:none}.ant-card-loading-content p{margin:0}.ant-card-loading-block{height:14px;margin:4px 0;background:linear-gradient(90deg,rgba(207,216,220,.2),rgba(207,216,220,.4),rgba(207,216,220,.2));background-size:600% 600%;border-radius:2px;animation:card-loading 1.4s ease infinite}@keyframes card-loading{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.ant-card-small>.ant-card-head{min-height:36px;padding:0 12px;font-size:14px}.ant-card-small>.ant-card-head>.ant-card-head-wrapper>.ant-card-head-title{padding:8px 0}.ant-card-small>.ant-card-head>.ant-card-head-wrapper>.ant-card-extra{padding:8px 0;font-size:14px}.ant-card-small>.ant-card-body{padding:12px}.ant-card-rtl .ant-skeleton-header{padding:0 0 0 16px}nz-card{display:block}nz-card-meta{display:block}nz-card-loading{display:block}.ant-carousel{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum"}.ant-carousel .slick-slider{position:relative;display:block;box-sizing:border-box;touch-action:pan-y;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.ant-carousel .slick-list{position:relative;display:block;margin:0;padding:0;overflow:hidden}.ant-carousel .slick-list:focus{outline:none}.ant-carousel .slick-list.dragging{cursor:pointer}.ant-carousel .slick-list .slick-slide{pointer-events:none}.ant-carousel .slick-list .slick-slide input.ant-radio-input,.ant-carousel .slick-list .slick-slide input.ant-checkbox-input{visibility:hidden}.ant-carousel .slick-list .slick-slide.slick-active{pointer-events:auto}.ant-carousel .slick-list .slick-slide.slick-active input.ant-radio-input,.ant-carousel .slick-list .slick-slide.slick-active input.ant-checkbox-input{visibility:visible}.ant-carousel .slick-list .slick-slide>div>div{vertical-align:bottom}.ant-carousel .slick-slider .slick-track,.ant-carousel .slick-slider .slick-list{transform:translateZ(0);touch-action:pan-y}.ant-carousel .slick-track{position:relative;top:0;left:0;display:block}.ant-carousel .slick-track:before,.ant-carousel .slick-track:after{display:table;content:""}.ant-carousel .slick-track:after{clear:both}.slick-loading .ant-carousel .slick-track{visibility:hidden}.ant-carousel .slick-slide{display:none;float:left;height:100%;min-height:1px}.ant-carousel .slick-slide img{display:block}.ant-carousel .slick-slide.slick-loading img{display:none}.ant-carousel .slick-slide.dragging img{pointer-events:none}.ant-carousel .slick-initialized .slick-slide{display:block}.ant-carousel .slick-loading .slick-slide{visibility:hidden}.ant-carousel .slick-vertical .slick-slide{display:block;height:auto}.ant-carousel .slick-arrow.slick-hidden{display:none}.ant-carousel .slick-prev,.ant-carousel .slick-next{position:absolute;top:50%;display:block;width:20px;height:20px;margin-top:-10px;padding:0;color:transparent;font-size:0;line-height:0;background:transparent;border:0;outline:none;cursor:pointer}.ant-carousel .slick-prev:hover,.ant-carousel .slick-next:hover,.ant-carousel .slick-prev:focus,.ant-carousel .slick-next:focus{color:transparent;background:transparent;outline:none}.ant-carousel .slick-prev:hover:before,.ant-carousel .slick-next:hover:before,.ant-carousel .slick-prev:focus:before,.ant-carousel .slick-next:focus:before{opacity:1}.ant-carousel .slick-prev.slick-disabled:before,.ant-carousel .slick-next.slick-disabled:before{opacity:.25}.ant-carousel .slick-prev{left:-25px}.ant-carousel .slick-prev:before{content:"\2190"}.ant-carousel .slick-next{right:-25px}.ant-carousel .slick-next:before{content:"\2192"}.ant-carousel .slick-dots{position:absolute;right:0;bottom:0;left:0;z-index:15;display:flex!important;justify-content:center;margin-right:15%;margin-left:15%;padding-left:0;list-style:none}.ant-carousel .slick-dots-bottom{bottom:12px}.ant-carousel .slick-dots-top{top:12px;bottom:auto}.ant-carousel .slick-dots li{position:relative;display:inline-block;flex:0 1 auto;box-sizing:content-box;width:16px;height:3px;margin:0 3px;padding:0;text-align:center;text-indent:-999px;vertical-align:top;transition:all .5s}.ant-carousel .slick-dots li button{display:block;width:100%;height:3px;padding:0;color:transparent;font-size:0;background:#fff;border:0;border-radius:1px;outline:none;cursor:pointer;opacity:.3;transition:all .5s}.ant-carousel .slick-dots li button:hover,.ant-carousel .slick-dots li button:focus{opacity:.75}.ant-carousel .slick-dots li.slick-active{width:24px}.ant-carousel .slick-dots li.slick-active button{background:#fff;opacity:1}.ant-carousel .slick-dots li.slick-active:hover,.ant-carousel .slick-dots li.slick-active:focus{opacity:1}.ant-carousel-vertical .slick-dots{top:50%;bottom:auto;flex-direction:column;width:3px;height:auto;margin:0;transform:translateY(-50%)}.ant-carousel-vertical .slick-dots-left{right:auto;left:12px}.ant-carousel-vertical .slick-dots-right{right:12px;left:auto}.ant-carousel-vertical .slick-dots li{width:3px;height:16px;margin:4px 2px;vertical-align:baseline}.ant-carousel-vertical .slick-dots li button{width:3px;height:16px}.ant-carousel-vertical .slick-dots li.slick-active,.ant-carousel-vertical .slick-dots li.slick-active button{width:3px;height:24px}.ant-carousel-rtl{direction:rtl}.ant-carousel-rtl .ant-carousel .slick-track{right:0;left:auto}.ant-carousel-rtl .ant-carousel .slick-prev{right:-25px;left:auto}.ant-carousel-rtl .ant-carousel .slick-prev:before{content:"\2192"}.ant-carousel-rtl .ant-carousel .slick-next{right:auto;left:-25px}.ant-carousel-rtl .ant-carousel .slick-next:before{content:"\2190"}.ant-carousel-rtl.ant-carousel .slick-dots{flex-direction:row-reverse}.ant-carousel-rtl.ant-carousel-vertical .slick-dots{flex-direction:column}nz-carousel{display:block;position:relative;overflow:hidden;width:100%;height:100%}.slick-dots{display:block}.slick-track{opacity:1}.slick-list{direction:ltr}@keyframes antCheckboxEffect{0%{transform:scale(1);opacity:.5}to{transform:scale(1.6);opacity:0}}.ant-checkbox{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;top:.2em;line-height:1;white-space:nowrap;outline:none;cursor:pointer}.ant-checkbox-wrapper:hover .ant-checkbox-inner,.ant-checkbox:hover .ant-checkbox-inner,.ant-checkbox-input:focus+.ant-checkbox-inner{border-color:#1890ff}.ant-checkbox-checked:after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #1890ff;border-radius:2px;visibility:hidden;animation:antCheckboxEffect .36s ease-in-out;animation-fill-mode:backwards;content:""}.ant-checkbox:hover:after,.ant-checkbox-wrapper:hover .ant-checkbox:after{visibility:visible}.ant-checkbox-inner{position:relative;top:0;left:0;display:block;width:16px;height:16px;direction:ltr;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;border-collapse:separate;transition:all .3s}.ant-checkbox-inner:after{position:absolute;top:50%;left:21.5%;display:table;width:5.71428571px;height:9.14285714px;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(0) translate(-50%,-50%);opacity:0;transition:all .1s cubic-bezier(.71,-.46,.88,.6),opacity .1s;content:" "}.ant-checkbox-input{position:absolute;inset:0;z-index:1;width:100%;height:100%;cursor:pointer;opacity:0}.ant-checkbox-checked .ant-checkbox-inner:after{position:absolute;display:table;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(1) translate(-50%,-50%);opacity:1;transition:all .2s cubic-bezier(.12,.4,.29,1.46) .1s;content:" "}.ant-checkbox-checked .ant-checkbox-inner{background-color:#1890ff;border-color:#1890ff}.ant-checkbox-disabled{cursor:not-allowed}.ant-checkbox-disabled.ant-checkbox-checked .ant-checkbox-inner:after{border-color:#00000040;animation-name:none}.ant-checkbox-disabled .ant-checkbox-input{cursor:not-allowed;pointer-events:none}.ant-checkbox-disabled .ant-checkbox-inner{background-color:#f5f5f5;border-color:#d9d9d9!important}.ant-checkbox-disabled .ant-checkbox-inner:after{border-color:#f5f5f5;border-collapse:separate;animation-name:none}.ant-checkbox-disabled+span{color:#00000040;cursor:not-allowed}.ant-checkbox-disabled:hover:after,.ant-checkbox-wrapper:hover .ant-checkbox-disabled:after{visibility:hidden}.ant-checkbox-wrapper{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";display:inline-flex;align-items:baseline;line-height:unset;cursor:pointer}.ant-checkbox-wrapper:after{display:inline-block;width:0;overflow:hidden;content:"\a0"}.ant-checkbox-wrapper.ant-checkbox-wrapper-disabled{cursor:not-allowed}.ant-checkbox-wrapper+.ant-checkbox-wrapper{margin-left:8px}.ant-checkbox-wrapper.ant-checkbox-wrapper-in-form-item input[type=checkbox]{width:14px;height:14px}.ant-checkbox+span{padding-right:8px;padding-left:8px}.ant-checkbox-group{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";display:inline-block}.ant-checkbox-group-item{margin-right:8px}.ant-checkbox-group-item:last-child{margin-right:0}.ant-checkbox-group-item+.ant-checkbox-group-item{margin-left:0}.ant-checkbox-indeterminate .ant-checkbox-inner{background-color:#fff;border-color:#d9d9d9}.ant-checkbox-indeterminate .ant-checkbox-inner:after{top:50%;left:50%;width:8px;height:8px;background-color:#1890ff;border:0;transform:translate(-50%,-50%) scale(1);opacity:1;content:" "}.ant-checkbox-indeterminate.ant-checkbox-disabled .ant-checkbox-inner:after{background-color:#00000040;border-color:#00000040}.ant-checkbox-rtl{direction:rtl}.ant-checkbox-group-rtl .ant-checkbox-group-item{margin-right:0;margin-left:8px}.ant-checkbox-group-rtl .ant-checkbox-group-item:last-child{margin-left:0!important}.ant-checkbox-group-rtl .ant-checkbox-group-item+.ant-checkbox-group-item{margin-left:8px}.ant-checkbox+span:empty{display:none}.ant-collapse{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";background-color:#fafafa;border:1px solid #d9d9d9;border-bottom:0;border-radius:2px}.ant-collapse>.ant-collapse-item{border-bottom:1px solid #d9d9d9}.ant-collapse>.ant-collapse-item:last-child,.ant-collapse>.ant-collapse-item:last-child>.ant-collapse-header{border-radius:0 0 2px 2px}.ant-collapse>.ant-collapse-item>.ant-collapse-header{position:relative;display:flex;flex-wrap:nowrap;align-items:flex-start;padding:12px 16px;color:#000000d9;line-height:1.5715;cursor:pointer;transition:all .3s,visibility 0s}.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow{display:inline-block;margin-right:12px;font-size:12px;vertical-align:-1px}.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow svg{transition:transform .24s}.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-extra{margin-left:auto}.ant-collapse>.ant-collapse-item>.ant-collapse-header:focus{outline:none}.ant-collapse>.ant-collapse-item .ant-collapse-header-collapsible-only{cursor:default}.ant-collapse>.ant-collapse-item .ant-collapse-header-collapsible-only .ant-collapse-header-text{cursor:pointer}.ant-collapse>.ant-collapse-item.ant-collapse-no-arrow>.ant-collapse-header{padding-left:12px}.ant-collapse-icon-position-right>.ant-collapse-item>.ant-collapse-header{position:relative;padding:12px 40px 12px 16px}.ant-collapse-icon-position-right>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow{position:absolute;top:50%;right:16px;left:auto;margin:0;transform:translateY(-50%)}.ant-collapse-content{color:#000000d9;background-color:#fff;border-top:1px solid #d9d9d9}.ant-collapse-content>.ant-collapse-content-box{padding:16px}.ant-collapse-content-hidden{display:none}.ant-collapse-item:last-child>.ant-collapse-content{border-radius:0 0 2px 2px}.ant-collapse-borderless{background-color:#fafafa;border:0}.ant-collapse-borderless>.ant-collapse-item{border-bottom:1px solid #d9d9d9}.ant-collapse-borderless>.ant-collapse-item:last-child,.ant-collapse-borderless>.ant-collapse-item:last-child .ant-collapse-header{border-radius:0}.ant-collapse-borderless>.ant-collapse-item:last-child{border-bottom:0}.ant-collapse-borderless>.ant-collapse-item>.ant-collapse-content{background-color:transparent;border-top:0}.ant-collapse-borderless>.ant-collapse-item>.ant-collapse-content>.ant-collapse-content-box{padding-top:4px}.ant-collapse-ghost{background-color:transparent;border:0}.ant-collapse-ghost>.ant-collapse-item{border-bottom:0}.ant-collapse-ghost>.ant-collapse-item>.ant-collapse-content{background-color:transparent;border-top:0}.ant-collapse-ghost>.ant-collapse-item>.ant-collapse-content>.ant-collapse-content-box{padding-top:12px;padding-bottom:12px}.ant-collapse .ant-collapse-item-disabled>.ant-collapse-header,.ant-collapse .ant-collapse-item-disabled>.ant-collapse-header>.arrow{color:#00000040;cursor:not-allowed}.ant-collapse-rtl{direction:rtl}.ant-collapse-rtl .ant-collapse>.ant-collapse-item>.ant-collapse-header{padding:12px 40px 12px 16px}.ant-collapse-rtl.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow{margin-right:0;margin-left:12px}.ant-collapse-rtl.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow svg{transform:rotate(180deg)}.ant-collapse-rtl.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-extra{margin-right:auto;margin-left:0}.ant-collapse-rtl.ant-collapse>.ant-collapse-item.ant-collapse-no-arrow>.ant-collapse-header{padding-right:12px;padding-left:0}nz-collapse{display:block}nz-collapse-panel{display:block}.ant-comment{position:relative;background-color:inherit}.ant-comment-inner{display:flex;padding:16px 0}.ant-comment-avatar{position:relative;flex-shrink:0;margin-right:12px;cursor:pointer}.ant-comment-avatar img{width:32px;height:32px;border-radius:50%}.ant-comment-content{position:relative;flex:1 1 auto;min-width:1px;font-size:14px;word-wrap:break-word}.ant-comment-content-author{display:flex;flex-wrap:wrap;justify-content:flex-start;margin-bottom:4px;font-size:14px}.ant-comment-content-author>a,.ant-comment-content-author>span{padding-right:8px;font-size:12px;line-height:18px}.ant-comment-content-author-name{color:#00000073;font-size:14px;transition:color .3s}.ant-comment-content-author-name>*{color:#00000073}.ant-comment-content-author-name>*:hover{color:#00000073}.ant-comment-content-author-time{color:#ccc;white-space:nowrap;cursor:auto}.ant-comment-content-detail p{margin-bottom:inherit;white-space:pre-wrap}.ant-comment-actions{margin-top:12px;margin-bottom:inherit;padding-left:0}.ant-comment-actions>li{display:inline-block;color:#00000073}.ant-comment-actions>li>span{margin-right:10px;color:#00000073;font-size:12px;cursor:pointer;transition:color .3s;-webkit-user-select:none;user-select:none}.ant-comment-actions>li>span:hover{color:#595959}.ant-comment-nested{margin-left:44px}.ant-comment-rtl{direction:rtl}.ant-comment-rtl .ant-comment-avatar{margin-right:0;margin-left:12px}.ant-comment-rtl .ant-comment-content-author>a,.ant-comment-rtl .ant-comment-content-author>span{padding-right:0;padding-left:8px}.ant-comment-rtl .ant-comment-actions{padding-right:0}.ant-comment-rtl .ant-comment-actions>li>span{margin-right:0;margin-left:10px}.ant-comment-rtl .ant-comment-nested{margin-right:44px;margin-left:0}nz-comment{display:block}nz-comment-content{display:block}.ant-picker-status-error.ant-picker,.ant-picker-status-error.ant-picker:not([disabled]):hover{background-color:#fff;border-color:#ff4d4f}.ant-picker-status-error.ant-picker-focused,.ant-picker-status-error.ant-picker:focus{border-color:#ff7875;box-shadow:0 0 0 2px #ff4d4f33;border-right-width:1px;outline:0}.ant-picker-status-warning.ant-picker,.ant-picker-status-warning.ant-picker:not([disabled]):hover{background-color:#fff;border-color:#faad14}.ant-picker-status-warning.ant-picker-focused,.ant-picker-status-warning.ant-picker:focus{border-color:#ffc53d;box-shadow:0 0 0 2px #faad1433;border-right-width:1px;outline:0}.ant-picker{box-sizing:border-box;margin:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";padding:4px 11px;position:relative;display:inline-flex;align-items:center;background:#fff;border:1px solid #d9d9d9;border-radius:2px;transition:border .3s,box-shadow .3s}.ant-picker:hover,.ant-picker-focused{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-picker:hover,.ant-input-rtl .ant-picker-focused{border-right-width:0;border-left-width:1px!important}.ant-picker-focused{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;border-right-width:1px;outline:0}.ant-input-rtl .ant-picker-focused{border-right-width:0;border-left-width:1px!important}.ant-picker.ant-picker-disabled{background:#f5f5f5;border-color:#d9d9d9;cursor:not-allowed}.ant-picker.ant-picker-disabled .ant-picker-suffix{color:#00000040}.ant-picker.ant-picker-borderless{background-color:transparent!important;border-color:transparent!important;box-shadow:none!important}.ant-picker-input{position:relative;display:inline-flex;align-items:center;width:100%}.ant-picker-input>input{position:relative;display:inline-block;width:100%;min-width:0;color:#000000d9;font-size:14px;line-height:1.5715;background-color:#fff;background-image:none;border:1px solid #d9d9d9;border-radius:2px;transition:all .3s;flex:auto;min-width:1px;height:auto;padding:0;background:transparent;border:0}.ant-picker-input>input::placeholder{color:#bfbfbf;-webkit-user-select:none;user-select:none}.ant-picker-input>input:placeholder-shown{text-overflow:ellipsis}.ant-picker-input>input:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-picker-input>input:hover{border-right-width:0;border-left-width:1px!important}.ant-picker-input>input:focus,.ant-picker-input>input-focused{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;border-right-width:1px;outline:0}.ant-input-rtl .ant-picker-input>input:focus,.ant-input-rtl .ant-picker-input>input-focused{border-right-width:0;border-left-width:1px!important}.ant-picker-input>input-disabled{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;color:#00000040;pointer-events:none}.ant-picker-input>input-disabled:hover{border-color:#d9d9d9;border-right-width:1px}.ant-picker-input>input[disabled]{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;color:#00000040;pointer-events:none}.ant-picker-input>input[disabled]:hover{border-color:#d9d9d9;border-right-width:1px}.ant-picker-input>input-borderless,.ant-picker-input>input-borderless:hover,.ant-picker-input>input-borderless:focus,.ant-picker-input>input-borderless-focused,.ant-picker-input>input-borderless-disabled,.ant-picker-input>input-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-picker-input>input{max-width:100%;height:auto;min-height:32px;line-height:1.5715;vertical-align:bottom;transition:all .3s,height 0s}.ant-picker-input>input-lg{padding:6.5px 11px;font-size:16px}.ant-picker-input>input-sm{padding:0 7px}.ant-picker-input>input-rtl{direction:rtl}.ant-picker-input>input-stepperless[type=number]{-moz-appearance:textfield}.ant-picker-input>input-stepperless[type=number]::-webkit-inner-spin-button,.ant-picker-input>input-stepperless[type=number] ::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ant-picker-input>input:focus{box-shadow:none}.ant-picker-input>input[disabled]{background:transparent}.ant-picker-input:hover .ant-picker-clear{opacity:1}.ant-picker-input-placeholder>input{color:#bfbfbf}.ant-picker-large{padding:6.5px 11px}.ant-picker-large .ant-picker-input>input{font-size:16px}.ant-picker-small{padding:0 7px}.ant-picker-suffix{display:flex;flex:none;align-self:center;margin-left:4px;color:#00000040;line-height:1;pointer-events:none}.ant-picker-suffix>*{vertical-align:top}.ant-picker-suffix>*:not(:last-child){margin-right:8px}.ant-picker-clear{position:absolute;top:50%;right:0;color:#00000040;line-height:1;background:#fff;transform:translateY(-50%);cursor:pointer;opacity:0;transition:opacity .3s,color .3s}.ant-picker-clear>*{vertical-align:top}.ant-picker-clear:hover{color:#00000073}.ant-picker-separator{position:relative;display:inline-block;width:1em;height:16px;color:#00000040;font-size:16px;vertical-align:top;cursor:default}.ant-picker-focused .ant-picker-separator{color:#00000073}.ant-picker-disabled .ant-picker-range-separator .ant-picker-separator{cursor:not-allowed}.ant-picker-range{position:relative;display:inline-flex}.ant-picker-range .ant-picker-clear{right:11px}.ant-picker-range:hover .ant-picker-clear{opacity:1}.ant-picker-range .ant-picker-active-bar{bottom:-1px;height:2px;margin-left:11px;background:#1890ff;opacity:0;transition:all .3s ease-out;pointer-events:none}.ant-picker-range.ant-picker-focused .ant-picker-active-bar{opacity:1}.ant-picker-range-separator{align-items:center;padding:0 8px;line-height:1}.ant-picker-range.ant-picker-small .ant-picker-clear{right:7px}.ant-picker-range.ant-picker-small .ant-picker-active-bar{margin-left:7px}.ant-picker-dropdown{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:absolute;top:-9999px;left:-9999px;z-index:1050}.ant-picker-dropdown-hidden{display:none}.ant-picker-dropdown-placement-bottomLeft .ant-picker-range-arrow{top:2.58561808px;display:block;transform:rotate(-135deg) translateY(1px)}.ant-picker-dropdown-placement-topLeft .ant-picker-range-arrow{bottom:2.58561808px;display:block;transform:rotate(45deg)}.ant-picker-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-picker-dropdown-placement-topLeft,.ant-picker-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-picker-dropdown-placement-topRight,.ant-picker-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-picker-dropdown-placement-topLeft,.ant-picker-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-picker-dropdown-placement-topRight{animation-name:antSlideDownIn}.ant-picker-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-picker-dropdown-placement-bottomLeft,.ant-picker-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-picker-dropdown-placement-bottomRight,.ant-picker-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-picker-dropdown-placement-bottomLeft,.ant-picker-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-picker-dropdown-placement-bottomRight{animation-name:antSlideUpIn}.ant-picker-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-picker-dropdown-placement-topLeft,.ant-picker-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-picker-dropdown-placement-topRight{animation-name:antSlideDownOut}.ant-picker-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-picker-dropdown-placement-bottomLeft,.ant-picker-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-picker-dropdown-placement-bottomRight{animation-name:antSlideUpOut}.ant-picker-dropdown-range{padding:7.54247233px 0}.ant-picker-dropdown-range-hidden{display:none}.ant-picker-dropdown .ant-picker-panel>.ant-picker-time-panel{padding-top:4px}.ant-picker-ranges{margin-bottom:0;padding:4px 12px;overflow:hidden;line-height:34px;text-align:left;list-style:none}.ant-picker-ranges>li{display:inline-block}.ant-picker-ranges .ant-picker-preset>.ant-tag-blue{color:#1890ff;background:#e6f7ff;border-color:#91d5ff;cursor:pointer}.ant-picker-ranges .ant-picker-ok{float:right;margin-left:8px}.ant-picker-range-wrapper{display:flex}.ant-picker-range-arrow{position:absolute;z-index:1;display:none;width:11.3137085px;height:11.3137085px;margin-left:16.5px;background:linear-gradient(135deg,transparent 40%,#fff 40%);box-shadow:2px 2px 6px -2px #0000001a;transition:left .3s ease-out;border-radius:0 0 2px;pointer-events:none}.ant-picker-range-arrow:before{position:absolute;top:-11.3137085px;left:-11.3137085px;width:33.9411255px;height:33.9411255px;background:#fff;background-repeat:no-repeat;background-position:-10px -10px;content:"";clip-path:path("M 9.849242404917499 24.091883092036785 A 5 5 0 0 1 13.384776310850237 22.627416997969522 L 20.627416997969522 22.627416997969522 A 2 2 0 0 0 22.627416997969522 20.627416997969522 L 22.627416997969522 13.384776310850237 A 5 5 0 0 1 24.091883092036785 9.849242404917499 L 23.091883092036785 9.849242404917499 L 9.849242404917499 23.091883092036785 Z")}.ant-picker-panel-container{overflow:hidden;vertical-align:top;background:#fff;border-radius:2px;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d;transition:margin .3s}.ant-picker-panel-container .ant-picker-panels{display:inline-flex;flex-wrap:nowrap;direction:ltr}.ant-picker-panel-container .ant-picker-panel{vertical-align:top;background:transparent;border-width:0 0 1px 0;border-radius:0}.ant-picker-panel-container .ant-picker-panel .ant-picker-content,.ant-picker-panel-container .ant-picker-panel table{text-align:center}.ant-picker-panel-container .ant-picker-panel-focused{border-color:#f0f0f0}.ant-picker-panel{display:inline-flex;flex-direction:column;text-align:center;background:#fff;border:1px solid #f0f0f0;border-radius:2px;outline:none}.ant-picker-panel-focused{border-color:#1890ff}.ant-picker-decade-panel,.ant-picker-year-panel,.ant-picker-quarter-panel,.ant-picker-month-panel,.ant-picker-week-panel,.ant-picker-date-panel,.ant-picker-time-panel{display:flex;flex-direction:column;width:280px}.ant-picker-header{display:flex;padding:0 8px;color:#000000d9;border-bottom:1px solid #f0f0f0}.ant-picker-header>*{flex:none}.ant-picker-header button{padding:0;color:#00000040;line-height:40px;background:transparent;border:0;cursor:pointer;transition:color .3s}.ant-picker-header>button{min-width:1.6em;font-size:14px}.ant-picker-header>button:hover{color:#000000d9}.ant-picker-header-view{flex:auto;font-weight:500;line-height:40px}.ant-picker-header-view button{color:inherit;font-weight:inherit}.ant-picker-header-view button:not(:first-child){margin-left:8px}.ant-picker-header-view button:hover{color:#1890ff}.ant-picker-prev-icon,.ant-picker-next-icon,.ant-picker-super-prev-icon,.ant-picker-super-next-icon{position:relative;display:inline-block;width:7px;height:7px}.ant-picker-prev-icon:before,.ant-picker-next-icon:before,.ant-picker-super-prev-icon:before,.ant-picker-super-next-icon:before{position:absolute;top:0;left:0;display:inline-block;width:7px;height:7px;border:0 solid currentcolor;border-width:1.5px 0 0 1.5px;content:""}.ant-picker-super-prev-icon:after,.ant-picker-super-next-icon:after{position:absolute;top:4px;left:4px;display:inline-block;width:7px;height:7px;border:0 solid currentcolor;border-width:1.5px 0 0 1.5px;content:""}.ant-picker-prev-icon,.ant-picker-super-prev-icon{transform:rotate(-45deg)}.ant-picker-next-icon,.ant-picker-super-next-icon{transform:rotate(135deg)}.ant-picker-content{width:100%;table-layout:fixed;border-collapse:collapse}.ant-picker-content th,.ant-picker-content td{position:relative;min-width:24px;font-weight:400}.ant-picker-content th{height:30px;color:#000000d9;line-height:30px}.ant-picker-cell{padding:3px 0;color:#00000040;cursor:pointer}.ant-picker-cell-in-view{color:#000000d9}.ant-picker-cell:before{position:absolute;top:50%;right:0;left:0;z-index:1;height:24px;transform:translateY(-50%);transition:all .3s;content:""}.ant-picker-cell:hover:not(.ant-picker-cell-in-view) .ant-picker-cell-inner,.ant-picker-cell:hover:not(.ant-picker-cell-selected):not(.ant-picker-cell-range-start):not(.ant-picker-cell-range-end):not(.ant-picker-cell-range-hover-start):not(.ant-picker-cell-range-hover-end) .ant-picker-cell-inner{background:#f5f5f5}.ant-picker-cell-in-view.ant-picker-cell-today .ant-picker-cell-inner:before{position:absolute;inset:0;z-index:1;border:1px solid #1890ff;border-radius:2px;content:""}.ant-picker-cell-in-view.ant-picker-cell-in-range{position:relative}.ant-picker-cell-in-view.ant-picker-cell-in-range:before{background:#e6f7ff}.ant-picker-cell-in-view.ant-picker-cell-selected .ant-picker-cell-inner,.ant-picker-cell-in-view.ant-picker-cell-range-start .ant-picker-cell-inner,.ant-picker-cell-in-view.ant-picker-cell-range-end .ant-picker-cell-inner{color:#fff;background:#1890ff}.ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single):before,.ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single):before{background:#e6f7ff}.ant-picker-cell-in-view.ant-picker-cell-range-start:before{left:50%}.ant-picker-cell-in-view.ant-picker-cell-range-end:before{right:50%}.ant-picker-cell-in-view.ant-picker-cell-range-hover-start:not(.ant-picker-cell-in-range):not(.ant-picker-cell-range-start):not(.ant-picker-cell-range-end):after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-end:not(.ant-picker-cell-in-range):not(.ant-picker-cell-range-start):not(.ant-picker-cell-range-end):after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-start.ant-picker-cell-range-start-single:after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-start.ant-picker-cell-range-start.ant-picker-cell-range-end.ant-picker-cell-range-end-near-hover:after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-end.ant-picker-cell-range-start.ant-picker-cell-range-end.ant-picker-cell-range-start-near-hover:after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-end.ant-picker-cell-range-end-single:after,.ant-picker-cell-in-view.ant-picker-cell-range-hover:not(.ant-picker-cell-in-range):after{position:absolute;top:50%;z-index:0;height:24px;border-top:1px dashed #7ec1ff;border-bottom:1px dashed #7ec1ff;transform:translateY(-50%);transition:all .3s;content:""}.ant-picker-cell-range-hover-start:after,.ant-picker-cell-range-hover-end:after,.ant-picker-cell-range-hover:after{right:0;left:2px}.ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover:before,.ant-picker-cell-in-view.ant-picker-cell-range-start.ant-picker-cell-range-hover:before,.ant-picker-cell-in-view.ant-picker-cell-range-end.ant-picker-cell-range-hover:before,.ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single).ant-picker-cell-range-hover-start:before,.ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single).ant-picker-cell-range-hover-end:before,.ant-picker-panel>:not(.ant-picker-date-panel) .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start:before,.ant-picker-panel>:not(.ant-picker-date-panel) .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end:before{background:#cbe6ff}.ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single):not(.ant-picker-cell-range-end) .ant-picker-cell-inner{border-radius:2px 0 0 2px}.ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single):not(.ant-picker-cell-range-start) .ant-picker-cell-inner{border-radius:0 2px 2px 0}.ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start .ant-picker-cell-inner:after,.ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end .ant-picker-cell-inner:after{position:absolute;top:0;bottom:0;z-index:-1;background:#cbe6ff;transition:all .3s;content:""}.ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start .ant-picker-cell-inner:after{right:-6px;left:0}.ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end .ant-picker-cell-inner:after{right:0;left:-6px}.ant-picker-cell-range-hover.ant-picker-cell-range-start:after{right:50%}.ant-picker-cell-range-hover.ant-picker-cell-range-end:after{left:50%}tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover:first-child:after,tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover-end:first-child:after,.ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover-edge-start.ant-picker-cell-range-hover-edge-start-near-range:after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-edge-start:not(.ant-picker-cell-range-hover-edge-start-near-range):after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-start:after{left:6px;border-left:1px dashed #7ec1ff;border-top-left-radius:2px;border-bottom-left-radius:2px}tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover:last-child:after,tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover-start:last-child:after,.ant-picker-cell-in-view.ant-picker-cell-end.ant-picker-cell-range-hover-edge-end.ant-picker-cell-range-hover-edge-end-near-range:after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-edge-end:not(.ant-picker-cell-range-hover-edge-end-near-range):after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-end:after{right:6px;border-right:1px dashed #7ec1ff;border-top-right-radius:2px;border-bottom-right-radius:2px}.ant-picker-cell-disabled{color:#00000040;pointer-events:none}.ant-picker-cell-disabled .ant-picker-cell-inner{background:transparent}.ant-picker-cell-disabled:before{background:rgba(0,0,0,.04)}.ant-picker-cell-disabled.ant-picker-cell-today .ant-picker-cell-inner:before{border-color:#00000040}.ant-picker-decade-panel .ant-picker-content,.ant-picker-year-panel .ant-picker-content,.ant-picker-quarter-panel .ant-picker-content,.ant-picker-month-panel .ant-picker-content{height:264px}.ant-picker-decade-panel .ant-picker-cell-inner,.ant-picker-year-panel .ant-picker-cell-inner,.ant-picker-quarter-panel .ant-picker-cell-inner,.ant-picker-month-panel .ant-picker-cell-inner{padding:0 8px}.ant-picker-quarter-panel .ant-picker-content{height:56px}.ant-picker-footer{width:min-content;min-width:100%;line-height:38px;text-align:center;border-bottom:1px solid transparent}.ant-picker-panel .ant-picker-footer{border-top:1px solid #f0f0f0}.ant-picker-footer-extra{padding:0 12px;line-height:38px;text-align:left}.ant-picker-footer-extra:not(:last-child){border-bottom:1px solid #f0f0f0}.ant-picker-now{text-align:left}.ant-picker-today-btn{color:#1890ff}.ant-picker-today-btn:hover{color:#40a9ff}.ant-picker-today-btn:active{color:#096dd9}.ant-picker-today-btn.ant-picker-today-btn-disabled{color:#00000040;cursor:not-allowed}.ant-picker-decade-panel .ant-picker-cell-inner{padding:0 4px}.ant-picker-decade-panel .ant-picker-cell:before{display:none}.ant-picker-year-panel .ant-picker-body,.ant-picker-quarter-panel .ant-picker-body,.ant-picker-month-panel .ant-picker-body{padding:0 8px}.ant-picker-year-panel .ant-picker-cell-inner,.ant-picker-quarter-panel .ant-picker-cell-inner,.ant-picker-month-panel .ant-picker-cell-inner{width:60px}.ant-picker-year-panel .ant-picker-cell-range-hover-start:after,.ant-picker-quarter-panel .ant-picker-cell-range-hover-start:after,.ant-picker-month-panel .ant-picker-cell-range-hover-start:after{left:14px;border-left:1px dashed #7ec1ff;border-radius:2px 0 0 2px}.ant-picker-panel-rtl .ant-picker-year-panel .ant-picker-cell-range-hover-start:after,.ant-picker-panel-rtl .ant-picker-quarter-panel .ant-picker-cell-range-hover-start:after,.ant-picker-panel-rtl .ant-picker-month-panel .ant-picker-cell-range-hover-start:after{right:14px;border-right:1px dashed #7ec1ff;border-radius:0 2px 2px 0}.ant-picker-year-panel .ant-picker-cell-range-hover-end:after,.ant-picker-quarter-panel .ant-picker-cell-range-hover-end:after,.ant-picker-month-panel .ant-picker-cell-range-hover-end:after{right:14px;border-right:1px dashed #7ec1ff;border-radius:0 2px 2px 0}.ant-picker-panel-rtl .ant-picker-year-panel .ant-picker-cell-range-hover-end:after,.ant-picker-panel-rtl .ant-picker-quarter-panel .ant-picker-cell-range-hover-end:after,.ant-picker-panel-rtl .ant-picker-month-panel .ant-picker-cell-range-hover-end:after{left:14px;border-left:1px dashed #7ec1ff;border-radius:2px 0 0 2px}.ant-picker-week-panel .ant-picker-body{padding:8px 12px}.ant-picker-week-panel .ant-picker-cell:hover .ant-picker-cell-inner,.ant-picker-week-panel .ant-picker-cell-selected .ant-picker-cell-inner,.ant-picker-week-panel .ant-picker-cell .ant-picker-cell-inner{background:transparent!important}.ant-picker-week-panel-row td{transition:background .3s}.ant-picker-week-panel-row:hover td{background:#f5f5f5}.ant-picker-week-panel-row-selected td,.ant-picker-week-panel-row-selected:hover td{background:#1890ff}.ant-picker-week-panel-row-selected td.ant-picker-cell-week,.ant-picker-week-panel-row-selected:hover td.ant-picker-cell-week{color:#ffffff80}.ant-picker-week-panel-row-selected td.ant-picker-cell-today .ant-picker-cell-inner:before,.ant-picker-week-panel-row-selected:hover td.ant-picker-cell-today .ant-picker-cell-inner:before{border-color:#fff}.ant-picker-week-panel-row-selected td .ant-picker-cell-inner,.ant-picker-week-panel-row-selected:hover td .ant-picker-cell-inner{color:#fff}.ant-picker-date-panel .ant-picker-body{padding:8px 12px}.ant-picker-date-panel .ant-picker-content{width:252px}.ant-picker-date-panel .ant-picker-content th{width:36px}.ant-picker-datetime-panel{display:flex}.ant-picker-datetime-panel .ant-picker-time-panel{border-left:1px solid #f0f0f0}.ant-picker-datetime-panel .ant-picker-date-panel,.ant-picker-datetime-panel .ant-picker-time-panel{transition:opacity .3s}.ant-picker-datetime-panel-active .ant-picker-date-panel,.ant-picker-datetime-panel-active .ant-picker-time-panel{opacity:.3}.ant-picker-datetime-panel-active .ant-picker-date-panel-active,.ant-picker-datetime-panel-active .ant-picker-time-panel-active{opacity:1}.ant-picker-time-panel{width:auto;min-width:auto}.ant-picker-time-panel .ant-picker-content{display:flex;flex:auto;height:224px}.ant-picker-time-panel-column{flex:1 0 auto;width:56px;margin:0;padding:0;overflow-y:hidden;text-align:left;list-style:none;transition:background .3s}.ant-picker-time-panel-column:after{display:block;height:196px;content:""}.ant-picker-datetime-panel .ant-picker-time-panel-column:after{height:198px}.ant-picker-time-panel-column:not(:first-child){border-left:1px solid #f0f0f0}.ant-picker-time-panel-column-active{background:rgba(230,247,255,.2)}.ant-picker-time-panel-column:hover{overflow-y:auto}.ant-picker-time-panel-column>li{margin:0;padding:0}.ant-picker-time-panel-column>li.ant-picker-time-panel-cell .ant-picker-time-panel-cell-inner{display:block;width:100%;height:28px;margin:0;padding:0 0 0 14px;color:#000000d9;line-height:28px;border-radius:0;cursor:pointer;transition:background .3s}.ant-picker-time-panel-column>li.ant-picker-time-panel-cell .ant-picker-time-panel-cell-inner:hover{background:#f5f5f5}.ant-picker-time-panel-column>li.ant-picker-time-panel-cell-selected .ant-picker-time-panel-cell-inner{background:#e6f7ff}.ant-picker-time-panel-column>li.ant-picker-time-panel-cell-disabled .ant-picker-time-panel-cell-inner{color:#00000040;background:transparent;cursor:not-allowed}_:-ms-fullscreen .ant-picker-range-wrapper .ant-picker-month-panel .ant-picker-cell,:root .ant-picker-range-wrapper .ant-picker-month-panel .ant-picker-cell,_:-ms-fullscreen .ant-picker-range-wrapper .ant-picker-year-panel .ant-picker-cell,:root .ant-picker-range-wrapper .ant-picker-year-panel .ant-picker-cell{padding:21px 0}.ant-picker-rtl{direction:rtl}.ant-picker-rtl .ant-picker-suffix{margin-right:4px;margin-left:0}.ant-picker-rtl .ant-picker-clear{right:auto;left:0}.ant-picker-rtl .ant-picker-separator{transform:rotate(180deg)}.ant-picker-panel-rtl .ant-picker-header-view button:not(:first-child){margin-right:8px;margin-left:0}.ant-picker-rtl.ant-picker-range .ant-picker-clear{right:auto;left:11px}.ant-picker-rtl.ant-picker-range .ant-picker-active-bar{margin-right:11px;margin-left:0}.ant-picker-rtl.ant-picker-range.ant-picker-small .ant-picker-active-bar{margin-right:7px}.ant-picker-dropdown-rtl .ant-picker-ranges{text-align:right}.ant-picker-dropdown-rtl .ant-picker-ranges .ant-picker-ok{float:left;margin-right:8px;margin-left:0}.ant-picker-panel-rtl{direction:rtl}.ant-picker-panel-rtl .ant-picker-prev-icon,.ant-picker-panel-rtl .ant-picker-super-prev-icon{transform:rotate(135deg)}.ant-picker-panel-rtl .ant-picker-next-icon,.ant-picker-panel-rtl .ant-picker-super-next-icon{transform:rotate(-45deg)}.ant-picker-cell .ant-picker-cell-inner{position:relative;z-index:2;display:inline-block;min-width:24px;height:24px;line-height:24px;border-radius:2px;transition:background .3s,border .3s}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-start:before{right:50%;left:0}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-end:before{right:0;left:50%}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-start.ant-picker-cell-range-end:before{right:50%;left:50%}.ant-picker-panel-rtl .ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start .ant-picker-cell-inner:after{right:0;left:-6px}.ant-picker-panel-rtl .ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end .ant-picker-cell-inner:after{right:-6px;left:0}.ant-picker-panel-rtl .ant-picker-cell-range-hover.ant-picker-cell-range-start:after{right:0;left:50%}.ant-picker-panel-rtl .ant-picker-cell-range-hover.ant-picker-cell-range-end:after{right:50%;left:0}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single):not(.ant-picker-cell-range-end) .ant-picker-cell-inner{border-radius:0 2px 2px 0}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single):not(.ant-picker-cell-range-start) .ant-picker-cell-inner{border-radius:2px 0 0 2px}.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover:not(.ant-picker-cell-selected):first-child:after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover-edge-start.ant-picker-cell-range-hover-edge-start-near-range:after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-hover-edge-start:not(.ant-picker-cell-range-hover-edge-start-near-range):after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-hover-start:after{right:6px;left:0;border-right:1px dashed #7ec1ff;border-left:none;border-radius:0 2px 2px 0}.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover:not(.ant-picker-cell-selected):last-child:after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-end.ant-picker-cell-range-hover-edge-end.ant-picker-cell-range-hover-edge-end-near-range:after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-hover-edge-end:not(.ant-picker-cell-range-hover-edge-end-near-range):after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-hover-end:after{right:0;left:6px;border-right:none;border-left:1px dashed #7ec1ff;border-radius:2px 0 0 2px}.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover-start:last-child:after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover-end:first-child:after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover-edge-start:not(.ant-picker-cell-range-hover):after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover-end.ant-picker-cell-range-hover-edge-start:not(.ant-picker-cell-range-hover):after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-end.ant-picker-cell-range-hover-start.ant-picker-cell-range-hover-edge-end:not(.ant-picker-cell-range-hover):after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover.ant-picker-cell-range-hover-edge-start:last-child:after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-end.ant-picker-cell-range-hover.ant-picker-cell-range-hover-edge-end:first-child:after{right:6px;left:6px;border-right:1px dashed #7ec1ff;border-left:1px dashed #7ec1ff;border-radius:2px}.ant-picker-dropdown-rtl .ant-picker-footer-extra{direction:rtl;text-align:right}.ant-picker-panel-rtl .ant-picker-time-panel{direction:ltr}.ant-picker-inline{border:none;padding:0}.ant-picker-inline .ant-picker-range-arrow{display:none!important}.ant-picker-inline .ant-picker-dropdown{z-index:auto}.ant-picker-dropdown{top:unset;left:unset}.ant-picker-panel-container.ant-picker-week-number .ant-picker-date-panel .ant-picker-content{width:100%}.ant-picker-panel-container.ant-picker-week-number .ant-picker-date-panel .ant-picker-content th{width:inherit}.ant-picker-range-arrow{margin-right:16.5px}.ant-descriptions-header{display:flex;align-items:center;margin-bottom:20px}.ant-descriptions-title{flex:auto;overflow:hidden;color:#000000d9;font-weight:700;font-size:16px;line-height:1.5715;white-space:nowrap;text-overflow:ellipsis}.ant-descriptions-extra{margin-left:auto;color:#000000d9;font-size:14px}.ant-descriptions-view{width:100%;border-radius:2px}.ant-descriptions-view table{width:100%;table-layout:fixed}.ant-descriptions-row>th,.ant-descriptions-row>td{padding-bottom:16px}.ant-descriptions-row:last-child{border-bottom:none}.ant-descriptions-item-label{color:#000000d9;font-weight:400;font-size:14px;line-height:1.5715;text-align:start}.ant-descriptions-item-label:after{content:":";position:relative;top:-.5px;margin:0 8px 0 2px}.ant-descriptions-item-label.ant-descriptions-item-no-colon:after{content:" "}.ant-descriptions-item-no-label:after{margin:0;content:""}.ant-descriptions-item-content{display:table-cell;flex:1;color:#000000d9;font-size:14px;line-height:1.5715;word-break:break-word;overflow-wrap:break-word}.ant-descriptions-item{padding-bottom:0;vertical-align:top}.ant-descriptions-item-container{display:flex}.ant-descriptions-item-container .ant-descriptions-item-label,.ant-descriptions-item-container .ant-descriptions-item-content{display:inline-flex;align-items:baseline}.ant-descriptions-middle .ant-descriptions-row>th,.ant-descriptions-middle .ant-descriptions-row>td{padding-bottom:12px}.ant-descriptions-small .ant-descriptions-row>th,.ant-descriptions-small .ant-descriptions-row>td{padding-bottom:8px}.ant-descriptions-bordered .ant-descriptions-view{border:1px solid #f0f0f0}.ant-descriptions-bordered .ant-descriptions-view>table{table-layout:auto;border-collapse:collapse}.ant-descriptions-bordered .ant-descriptions-item-label,.ant-descriptions-bordered .ant-descriptions-item-content{padding:16px 24px;border-right:1px solid #f0f0f0}.ant-descriptions-bordered .ant-descriptions-item-label:last-child,.ant-descriptions-bordered .ant-descriptions-item-content:last-child{border-right:none}.ant-descriptions-bordered .ant-descriptions-item-label{background-color:#fafafa}.ant-descriptions-bordered .ant-descriptions-item-label:after{display:none}.ant-descriptions-bordered .ant-descriptions-row{border-bottom:1px solid #f0f0f0}.ant-descriptions-bordered .ant-descriptions-row:last-child{border-bottom:none}.ant-descriptions-bordered.ant-descriptions-middle .ant-descriptions-item-label,.ant-descriptions-bordered.ant-descriptions-middle .ant-descriptions-item-content{padding:12px 24px}.ant-descriptions-bordered.ant-descriptions-small .ant-descriptions-item-label,.ant-descriptions-bordered.ant-descriptions-small .ant-descriptions-item-content{padding:8px 16px}.ant-descriptions-rtl{direction:rtl}.ant-descriptions-rtl .ant-descriptions-item-label:after{margin:0 2px 0 8px}.ant-descriptions-rtl.ant-descriptions-bordered .ant-descriptions-item-label,.ant-descriptions-rtl.ant-descriptions-bordered .ant-descriptions-item-content{border-right:none;border-left:1px solid #f0f0f0}.ant-descriptions-rtl.ant-descriptions-bordered .ant-descriptions-item-label:last-child,.ant-descriptions-rtl.ant-descriptions-bordered .ant-descriptions-item-content:last-child{border-left:none}nz-descriptions{display:block}.ant-divider{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";border-top:1px solid rgba(0,0,0,.06)}.ant-divider-vertical{position:relative;top:-.06em;display:inline-block;height:.9em;margin:0 8px;vertical-align:middle;border-top:0;border-left:1px solid rgba(0,0,0,.06)}.ant-divider-horizontal{display:flex;clear:both;width:100%;min-width:100%;margin:24px 0}.ant-divider-horizontal.ant-divider-with-text{display:flex;margin:16px 0;color:#000000d9;font-weight:500;font-size:16px;white-space:nowrap;text-align:center;border-top:0;border-top-color:#0000000f}.ant-divider-horizontal.ant-divider-with-text:before,.ant-divider-horizontal.ant-divider-with-text:after{position:relative;top:50%;width:50%;border-top:1px solid transparent;border-top-color:inherit;border-bottom:0;transform:translateY(50%);content:""}.ant-divider-horizontal.ant-divider-with-text-left:before{top:50%;width:5%}.ant-divider-horizontal.ant-divider-with-text-left:after{top:50%;width:95%}.ant-divider-horizontal.ant-divider-with-text-right:before{top:50%;width:95%}.ant-divider-horizontal.ant-divider-with-text-right:after{top:50%;width:5%}.ant-divider-inner-text{display:inline-block;padding:0 1em}.ant-divider-dashed{background:none;border-color:#0000000f;border-style:dashed;border-width:1px 0 0}.ant-divider-horizontal.ant-divider-with-text.ant-divider-dashed:before,.ant-divider-horizontal.ant-divider-with-text.ant-divider-dashed:after{border-style:dashed none none}.ant-divider-vertical.ant-divider-dashed{border-width:0 0 0 1px}.ant-divider-plain.ant-divider-with-text{color:#000000d9;font-weight:400;font-size:14px}.ant-divider-horizontal.ant-divider-with-text-left.ant-divider-no-default-orientation-margin-left:before{width:0}.ant-divider-horizontal.ant-divider-with-text-left.ant-divider-no-default-orientation-margin-left:after{width:100%}.ant-divider-horizontal.ant-divider-with-text-left.ant-divider-no-default-orientation-margin-left .ant-divider-inner-text{padding-left:0}.ant-divider-horizontal.ant-divider-with-text-right.ant-divider-no-default-orientation-margin-right:before{width:100%}.ant-divider-horizontal.ant-divider-with-text-right.ant-divider-no-default-orientation-margin-right:after{width:0}.ant-divider-horizontal.ant-divider-with-text-right.ant-divider-no-default-orientation-margin-right .ant-divider-inner-text{padding-right:0}.ant-divider-rtl{direction:rtl}.ant-divider-rtl.ant-divider-horizontal.ant-divider-with-text-left:before{width:95%}.ant-divider-rtl.ant-divider-horizontal.ant-divider-with-text-left:after{width:5%}.ant-divider-rtl.ant-divider-horizontal.ant-divider-with-text-right:before{width:5%}.ant-divider-rtl.ant-divider-horizontal.ant-divider-with-text-right:after{width:95%}.ant-drawer{position:fixed;z-index:1000;width:0%;height:100%;transition:width 0s ease .3s,height 0s ease .3s}.ant-drawer-content-wrapper{position:absolute;width:100%;height:100%;transition:transform .3s cubic-bezier(.23,1,.32,1),box-shadow .3s cubic-bezier(.23,1,.32,1)}.ant-drawer .ant-drawer-content{width:100%;height:100%}.ant-drawer-left,.ant-drawer-right{top:0;width:0%;height:100%}.ant-drawer-left .ant-drawer-content-wrapper,.ant-drawer-right .ant-drawer-content-wrapper{height:100%}.ant-drawer-left.ant-drawer-open,.ant-drawer-right.ant-drawer-open{width:100%;transition:transform .3s cubic-bezier(.23,1,.32,1)}.ant-drawer-left,.ant-drawer-left .ant-drawer-content-wrapper{left:0}.ant-drawer-left.ant-drawer-open .ant-drawer-content-wrapper{box-shadow:6px 0 16px -8px #00000014,9px 0 28px #0000000d,12px 0 48px 16px #00000008}.ant-drawer-right,.ant-drawer-right .ant-drawer-content-wrapper{right:0}.ant-drawer-right.ant-drawer-open .ant-drawer-content-wrapper{box-shadow:-6px 0 16px -8px #00000014,-9px 0 28px #0000000d,-12px 0 48px 16px #00000008}.ant-drawer-right.ant-drawer-open.no-mask{right:1px;transform:translate(1px)}.ant-drawer-top,.ant-drawer-bottom{left:0;width:100%;height:0%}.ant-drawer-top .ant-drawer-content-wrapper,.ant-drawer-bottom .ant-drawer-content-wrapper{width:100%}.ant-drawer-top.ant-drawer-open,.ant-drawer-bottom.ant-drawer-open{height:100%;transition:transform .3s cubic-bezier(.23,1,.32,1)}.ant-drawer-top{top:0}.ant-drawer-top.ant-drawer-open .ant-drawer-content-wrapper{box-shadow:0 6px 16px -8px #00000014,0 9px 28px #0000000d,0 12px 48px 16px #00000008}.ant-drawer-bottom,.ant-drawer-bottom .ant-drawer-content-wrapper{bottom:0}.ant-drawer-bottom.ant-drawer-open .ant-drawer-content-wrapper{box-shadow:0 -6px 16px -8px #00000014,0 -9px 28px #0000000d,0 -12px 48px 16px #00000008}.ant-drawer-bottom.ant-drawer-open.no-mask{bottom:1px;transform:translateY(1px)}.ant-drawer.ant-drawer-open .ant-drawer-mask{height:100%;opacity:1;transition:none;animation:antdDrawerFadeIn .3s cubic-bezier(.23,1,.32,1);pointer-events:auto}.ant-drawer-title{flex:1;margin:0;color:#000000d9;font-weight:500;font-size:16px;line-height:22px}.ant-drawer-content{position:relative;z-index:1;overflow:auto;background-color:#fff;background-clip:padding-box;border:0}.ant-drawer-close{display:inline-block;margin-right:12px;color:#00000073;font-weight:700;font-size:16px;font-style:normal;line-height:1;text-align:center;text-transform:none;text-decoration:none;background:transparent;border:0;outline:0;cursor:pointer;transition:color .3s;text-rendering:auto}.ant-drawer-close:focus,.ant-drawer-close:hover{color:#000000bf;text-decoration:none}.ant-drawer-header{position:relative;display:flex;align-items:center;justify-content:space-between;padding:16px 24px;color:#000000d9;background:#fff;border-bottom:1px solid #f0f0f0;border-radius:2px 2px 0 0}.ant-drawer-header-title{display:flex;flex:1;align-items:center;justify-content:space-between}.ant-drawer-header-close-only{padding-bottom:0;border:none}.ant-drawer-wrapper-body{display:flex;flex-flow:column nowrap;width:100%;height:100%}.ant-drawer-body{flex-grow:1;padding:24px;overflow:auto;font-size:14px;line-height:1.5715;word-wrap:break-word}.ant-drawer-footer{flex-shrink:0;padding:10px 16px;border-top:1px solid #f0f0f0}.ant-drawer-mask{position:absolute;top:0;left:0;width:100%;height:0;background-color:#00000073;opacity:0;transition:opacity .3s linear,height 0s ease .3s;pointer-events:none}.ant-drawer .ant-picker-clear{background:#fff}@keyframes antdDrawerFadeIn{0%{opacity:0}to{opacity:1}}.ant-drawer-rtl{direction:rtl}.ant-drawer-rtl .ant-drawer-close{margin-right:0;margin-left:12px}.ant-dropdown-menu-item.ant-dropdown-menu-item-danger{color:#ff4d4f}.ant-dropdown-menu-item.ant-dropdown-menu-item-danger:hover{color:#fff;background-color:#ff4d4f}.ant-dropdown{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:absolute;top:-9999px;left:-9999px;z-index:1050;display:block}.ant-dropdown:before{position:absolute;inset:-4px 0 -4px -7px;z-index:-9999;opacity:.0001;content:" "}.ant-dropdown-wrap{position:relative}.ant-dropdown-wrap .ant-btn>.anticon-down{font-size:10px}.ant-dropdown-wrap .anticon-down:before{transition:transform .2s}.ant-dropdown-wrap-open .anticon-down:before{transform:rotate(180deg)}.ant-dropdown-hidden,.ant-dropdown-menu-hidden,.ant-dropdown-menu-submenu-hidden{display:none}.ant-dropdown-show-arrow.ant-dropdown-placement-topLeft,.ant-dropdown-show-arrow.ant-dropdown-placement-top,.ant-dropdown-show-arrow.ant-dropdown-placement-topRight{padding-bottom:15.3137085px}.ant-dropdown-show-arrow.ant-dropdown-placement-bottomLeft,.ant-dropdown-show-arrow.ant-dropdown-placement-bottom,.ant-dropdown-show-arrow.ant-dropdown-placement-bottomRight{padding-top:15.3137085px}.ant-dropdown-arrow{position:absolute;z-index:1;display:block;width:11.3137085px;height:11.3137085px;background:linear-gradient(135deg,transparent 40%,#fff 40%);border-radius:0 0 2px;pointer-events:none}.ant-dropdown-arrow:before{position:absolute;top:-11.3137085px;left:-11.3137085px;width:33.9411255px;height:33.9411255px;background:#fff;background-repeat:no-repeat;background-position:-10px -10px;content:"";clip-path:path("M 9.849242404917499 24.091883092036785 A 5 5 0 0 1 13.384776310850237 22.627416997969522 L 20.627416997969522 22.627416997969522 A 2 2 0 0 0 22.627416997969522 20.627416997969522 L 22.627416997969522 13.384776310850237 A 5 5 0 0 1 24.091883092036785 9.849242404917499 L 23.091883092036785 9.849242404917499 L 9.849242404917499 23.091883092036785 Z")}.ant-dropdown-placement-top>.ant-dropdown-arrow,.ant-dropdown-placement-topLeft>.ant-dropdown-arrow,.ant-dropdown-placement-topRight>.ant-dropdown-arrow{bottom:10px;box-shadow:3px 3px 7px -3px #0000001a;transform:rotate(45deg)}.ant-dropdown-placement-top>.ant-dropdown-arrow{left:50%;transform:translate(-50%) rotate(45deg)}.ant-dropdown-placement-topLeft>.ant-dropdown-arrow{left:16px}.ant-dropdown-placement-topRight>.ant-dropdown-arrow{right:16px}.ant-dropdown-placement-bottom>.ant-dropdown-arrow,.ant-dropdown-placement-bottomLeft>.ant-dropdown-arrow,.ant-dropdown-placement-bottomRight>.ant-dropdown-arrow{top:9.41421356px;box-shadow:2px 2px 5px -2px #0000001a;transform:rotate(-135deg) translateY(-.5px)}.ant-dropdown-placement-bottom>.ant-dropdown-arrow{left:50%;transform:translate(-50%) rotate(-135deg) translateY(-.5px)}.ant-dropdown-placement-bottomLeft>.ant-dropdown-arrow{left:16px}.ant-dropdown-placement-bottomRight>.ant-dropdown-arrow{right:16px}.ant-dropdown-menu{position:relative;margin:0;padding:4px 0;text-align:left;list-style-type:none;background-color:#fff;background-clip:padding-box;border-radius:2px;outline:none;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d}.ant-dropdown-menu-item-group-title{padding:5px 12px;color:#00000073;transition:all .3s}.ant-dropdown-menu-submenu-popup{position:absolute;z-index:1050;background:transparent;box-shadow:none;transform-origin:0 0}.ant-dropdown-menu-submenu-popup ul,.ant-dropdown-menu-submenu-popup li{list-style:none}.ant-dropdown-menu-submenu-popup ul{margin-right:.3em;margin-left:.3em}.ant-dropdown-menu-item{position:relative;display:flex;align-items:center}.ant-dropdown-menu-item-icon{min-width:12px;margin-right:8px;font-size:12px}.ant-dropdown-menu-title-content{flex:auto}.ant-dropdown-menu-title-content>a{color:inherit;transition:all .3s}.ant-dropdown-menu-title-content>a:hover{color:inherit}.ant-dropdown-menu-title-content>a:after{position:absolute;inset:0;content:""}.ant-dropdown-menu-item,.ant-dropdown-menu-submenu-title{clear:both;margin:0;padding:5px 12px;color:#000000d9;font-weight:400;font-size:14px;line-height:22px;cursor:pointer;transition:all .3s}.ant-dropdown-menu-item-selected,.ant-dropdown-menu-submenu-title-selected{color:#1890ff;background-color:#e6f7ff}.ant-dropdown-menu-item:hover,.ant-dropdown-menu-submenu-title:hover,.ant-dropdown-menu-item.ant-dropdown-menu-item-active,.ant-dropdown-menu-item.ant-dropdown-menu-submenu-title-active,.ant-dropdown-menu-submenu-title.ant-dropdown-menu-item-active,.ant-dropdown-menu-submenu-title.ant-dropdown-menu-submenu-title-active{background-color:#f5f5f5}.ant-dropdown-menu-item-disabled,.ant-dropdown-menu-submenu-title-disabled{color:#00000040;cursor:not-allowed}.ant-dropdown-menu-item-disabled:hover,.ant-dropdown-menu-submenu-title-disabled:hover{color:#00000040;background-color:#fff;cursor:not-allowed}.ant-dropdown-menu-item-disabled a,.ant-dropdown-menu-submenu-title-disabled a{pointer-events:none}.ant-dropdown-menu-item-divider,.ant-dropdown-menu-submenu-title-divider{height:1px;margin:4px 0;overflow:hidden;line-height:0;background-color:#f0f0f0}.ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon,.ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon{position:absolute;right:8px}.ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon,.ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon{margin-right:0!important;color:#00000073;font-size:10px;font-style:normal}.ant-dropdown-menu-item-group-list{margin:0 8px;padding:0;list-style:none}.ant-dropdown-menu-submenu-title{padding-right:24px}.ant-dropdown-menu-submenu-vertical{position:relative}.ant-dropdown-menu-submenu-vertical>.ant-dropdown-menu{position:absolute;top:0;left:100%;min-width:100%;margin-left:4px;transform-origin:0 0}.ant-dropdown-menu-submenu.ant-dropdown-menu-submenu-disabled .ant-dropdown-menu-submenu-title,.ant-dropdown-menu-submenu.ant-dropdown-menu-submenu-disabled .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-arrow-icon{color:#00000040;background-color:#fff;cursor:not-allowed}.ant-dropdown-menu-submenu-selected .ant-dropdown-menu-submenu-title{color:#1890ff}.ant-dropdown.ant-slide-down-enter.ant-slide-down-enter-active.ant-dropdown-placement-bottomLeft,.ant-dropdown.ant-slide-down-appear.ant-slide-down-appear-active.ant-dropdown-placement-bottomLeft,.ant-dropdown.ant-slide-down-enter.ant-slide-down-enter-active.ant-dropdown-placement-bottom,.ant-dropdown.ant-slide-down-appear.ant-slide-down-appear-active.ant-dropdown-placement-bottom,.ant-dropdown.ant-slide-down-enter.ant-slide-down-enter-active.ant-dropdown-placement-bottomRight,.ant-dropdown.ant-slide-down-appear.ant-slide-down-appear-active.ant-dropdown-placement-bottomRight{animation-name:antSlideUpIn}.ant-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-dropdown-placement-topLeft,.ant-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-dropdown-placement-topLeft,.ant-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-dropdown-placement-top,.ant-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-dropdown-placement-top,.ant-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-dropdown-placement-topRight,.ant-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-dropdown-placement-topRight{animation-name:antSlideDownIn}.ant-dropdown.ant-slide-down-leave.ant-slide-down-leave-active.ant-dropdown-placement-bottomLeft,.ant-dropdown.ant-slide-down-leave.ant-slide-down-leave-active.ant-dropdown-placement-bottom,.ant-dropdown.ant-slide-down-leave.ant-slide-down-leave-active.ant-dropdown-placement-bottomRight{animation-name:antSlideUpOut}.ant-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-dropdown-placement-topLeft,.ant-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-dropdown-placement-top,.ant-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-dropdown-placement-topRight{animation-name:antSlideDownOut}.ant-dropdown-trigger>.anticon.anticon-down,.ant-dropdown-link>.anticon.anticon-down,.ant-dropdown-button>.anticon.anticon-down{font-size:10px;vertical-align:baseline}.ant-dropdown-button{white-space:nowrap}.ant-dropdown-button.ant-btn-group>.ant-btn-loading,.ant-dropdown-button.ant-btn-group>.ant-btn-loading+.ant-btn{cursor:default;pointer-events:none}.ant-dropdown-button.ant-btn-group>.ant-btn-loading+.ant-btn:before{display:block}.ant-dropdown-button.ant-btn-group>.ant-btn:last-child:not(:first-child):not(.ant-btn-icon-only){padding-right:8px;padding-left:8px}.ant-dropdown-menu-dark,.ant-dropdown-menu-dark .ant-dropdown-menu{background:#001529}.ant-dropdown-menu-dark .ant-dropdown-menu-item,.ant-dropdown-menu-dark .ant-dropdown-menu-submenu-title,.ant-dropdown-menu-dark .ant-dropdown-menu-item>a,.ant-dropdown-menu-dark .ant-dropdown-menu-item>.anticon+span>a{color:#ffffffa6}.ant-dropdown-menu-dark .ant-dropdown-menu-item .ant-dropdown-menu-submenu-arrow:after,.ant-dropdown-menu-dark .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-arrow:after,.ant-dropdown-menu-dark .ant-dropdown-menu-item>a .ant-dropdown-menu-submenu-arrow:after,.ant-dropdown-menu-dark .ant-dropdown-menu-item>.anticon+span>a .ant-dropdown-menu-submenu-arrow:after{color:#ffffffa6}.ant-dropdown-menu-dark .ant-dropdown-menu-item:hover,.ant-dropdown-menu-dark .ant-dropdown-menu-submenu-title:hover,.ant-dropdown-menu-dark .ant-dropdown-menu-item>a:hover,.ant-dropdown-menu-dark .ant-dropdown-menu-item>.anticon+span>a:hover{color:#fff;background:transparent}.ant-dropdown-menu-dark .ant-dropdown-menu-item-selected,.ant-dropdown-menu-dark .ant-dropdown-menu-item-selected:hover,.ant-dropdown-menu-dark .ant-dropdown-menu-item-selected>a{color:#fff;background:#1890ff}.ant-dropdown-rtl{direction:rtl}.ant-dropdown-rtl.ant-dropdown:before{right:-7px;left:0}.ant-dropdown-menu.ant-dropdown-menu-rtl,.ant-dropdown-rtl .ant-dropdown-menu-item-group-title,.ant-dropdown-menu-submenu-rtl .ant-dropdown-menu-item-group-title{direction:rtl;text-align:right}.ant-dropdown-menu-submenu-popup.ant-dropdown-menu-submenu-rtl{transform-origin:100% 0}.ant-dropdown-rtl .ant-dropdown-menu-submenu-popup ul,.ant-dropdown-rtl .ant-dropdown-menu-submenu-popup li,.ant-dropdown-rtl .ant-dropdown-menu-item,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title{text-align:right}.ant-dropdown-rtl .ant-dropdown-menu-item>.anticon:first-child,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title>.anticon:first-child,.ant-dropdown-rtl .ant-dropdown-menu-item>span>.anticon:first-child,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title>span>.anticon:first-child{margin-right:0;margin-left:8px}.ant-dropdown-rtl .ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon{right:auto;left:8px}.ant-dropdown-rtl .ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon{margin-left:0!important;transform:scaleX(-1)}.ant-dropdown-rtl .ant-dropdown-menu-submenu-title{padding-right:12px;padding-left:24px}.ant-dropdown-rtl .ant-dropdown-menu-submenu-vertical>.ant-dropdown-menu{right:100%;left:0;margin-right:4px;margin-left:0}.ant-dropdown-menu>ul{list-style:inherit;margin:0;padding:0}.ant-dropdown{top:0;left:0;position:relative;width:100%;margin-top:6px;margin-bottom:6px}.ant-dropdown-rtl .ant-dropdown-menu-item .ant-dropdown-menu-submenu-arrow,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-arrow{transform:rotate(180deg)}.ant-empty{margin:0 8px;font-size:14px;line-height:1.5715;text-align:center}.ant-empty-image{height:100px;margin-bottom:8px}.ant-empty-image img{height:100%}.ant-empty-image svg{height:100%;margin:auto}.ant-empty-footer{margin-top:16px}.ant-empty-normal{margin:32px 0;color:#00000040}.ant-empty-normal .ant-empty-image{height:40px}.ant-empty-small{margin:8px 0;color:#00000040}.ant-empty-small .ant-empty-image{height:35px}.ant-empty-img-default-ellipse{fill:#f5f5f5;fill-opacity:.8}.ant-empty-img-default-path-1{fill:#aeb8c2}.ant-empty-img-default-path-2{fill:url(#linearGradient-1)}.ant-empty-img-default-path-3{fill:#f5f5f7}.ant-empty-img-default-path-4,.ant-empty-img-default-path-5{fill:#dce0e6}.ant-empty-img-default-g{fill:#fff}.ant-empty-img-simple-ellipse{fill:#f5f5f5}.ant-empty-img-simple-g{stroke:#d9d9d9}.ant-empty-img-simple-path{fill:#fafafa}.ant-empty-rtl{direction:rtl}nz-empty{display:block}.ant-row{display:flex;flex-flow:row wrap}.ant-row:before,.ant-row:after{display:flex}.ant-row-no-wrap{flex-wrap:nowrap}.ant-row-start{justify-content:flex-start}.ant-row-center{justify-content:center}.ant-row-end{justify-content:flex-end}.ant-row-space-between{justify-content:space-between}.ant-row-space-around{justify-content:space-around}.ant-row-space-evenly{justify-content:space-evenly}.ant-row-top{align-items:flex-start}.ant-row-middle{align-items:center}.ant-row-bottom{align-items:flex-end}.ant-col{position:relative;max-width:100%;min-height:1px}.ant-col-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-push-24{left:100%}.ant-col-pull-24{right:100%}.ant-col-offset-24{margin-left:100%}.ant-col-order-24{order:24}.ant-col-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-push-23{left:95.83333333%}.ant-col-pull-23{right:95.83333333%}.ant-col-offset-23{margin-left:95.83333333%}.ant-col-order-23{order:23}.ant-col-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-push-22{left:91.66666667%}.ant-col-pull-22{right:91.66666667%}.ant-col-offset-22{margin-left:91.66666667%}.ant-col-order-22{order:22}.ant-col-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-push-21{left:87.5%}.ant-col-pull-21{right:87.5%}.ant-col-offset-21{margin-left:87.5%}.ant-col-order-21{order:21}.ant-col-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-push-20{left:83.33333333%}.ant-col-pull-20{right:83.33333333%}.ant-col-offset-20{margin-left:83.33333333%}.ant-col-order-20{order:20}.ant-col-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-push-19{left:79.16666667%}.ant-col-pull-19{right:79.16666667%}.ant-col-offset-19{margin-left:79.16666667%}.ant-col-order-19{order:19}.ant-col-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-push-18{left:75%}.ant-col-pull-18{right:75%}.ant-col-offset-18{margin-left:75%}.ant-col-order-18{order:18}.ant-col-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-push-17{left:70.83333333%}.ant-col-pull-17{right:70.83333333%}.ant-col-offset-17{margin-left:70.83333333%}.ant-col-order-17{order:17}.ant-col-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-push-16{left:66.66666667%}.ant-col-pull-16{right:66.66666667%}.ant-col-offset-16{margin-left:66.66666667%}.ant-col-order-16{order:16}.ant-col-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-push-15{left:62.5%}.ant-col-pull-15{right:62.5%}.ant-col-offset-15{margin-left:62.5%}.ant-col-order-15{order:15}.ant-col-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-push-14{left:58.33333333%}.ant-col-pull-14{right:58.33333333%}.ant-col-offset-14{margin-left:58.33333333%}.ant-col-order-14{order:14}.ant-col-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-push-13{left:54.16666667%}.ant-col-pull-13{right:54.16666667%}.ant-col-offset-13{margin-left:54.16666667%}.ant-col-order-13{order:13}.ant-col-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-push-12{left:50%}.ant-col-pull-12{right:50%}.ant-col-offset-12{margin-left:50%}.ant-col-order-12{order:12}.ant-col-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-push-11{left:45.83333333%}.ant-col-pull-11{right:45.83333333%}.ant-col-offset-11{margin-left:45.83333333%}.ant-col-order-11{order:11}.ant-col-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-push-10{left:41.66666667%}.ant-col-pull-10{right:41.66666667%}.ant-col-offset-10{margin-left:41.66666667%}.ant-col-order-10{order:10}.ant-col-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-push-9{left:37.5%}.ant-col-pull-9{right:37.5%}.ant-col-offset-9{margin-left:37.5%}.ant-col-order-9{order:9}.ant-col-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-push-8{left:33.33333333%}.ant-col-pull-8{right:33.33333333%}.ant-col-offset-8{margin-left:33.33333333%}.ant-col-order-8{order:8}.ant-col-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-push-7{left:29.16666667%}.ant-col-pull-7{right:29.16666667%}.ant-col-offset-7{margin-left:29.16666667%}.ant-col-order-7{order:7}.ant-col-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-push-6{left:25%}.ant-col-pull-6{right:25%}.ant-col-offset-6{margin-left:25%}.ant-col-order-6{order:6}.ant-col-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-push-5{left:20.83333333%}.ant-col-pull-5{right:20.83333333%}.ant-col-offset-5{margin-left:20.83333333%}.ant-col-order-5{order:5}.ant-col-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-push-4{left:16.66666667%}.ant-col-pull-4{right:16.66666667%}.ant-col-offset-4{margin-left:16.66666667%}.ant-col-order-4{order:4}.ant-col-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-push-3{left:12.5%}.ant-col-pull-3{right:12.5%}.ant-col-offset-3{margin-left:12.5%}.ant-col-order-3{order:3}.ant-col-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-push-2{left:8.33333333%}.ant-col-pull-2{right:8.33333333%}.ant-col-offset-2{margin-left:8.33333333%}.ant-col-order-2{order:2}.ant-col-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-push-1{left:4.16666667%}.ant-col-pull-1{right:4.16666667%}.ant-col-offset-1{margin-left:4.16666667%}.ant-col-order-1{order:1}.ant-col-0{display:none}.ant-col-offset-0{margin-left:0}.ant-col-order-0{order:0}.ant-col-offset-0.ant-col-rtl{margin-right:0}.ant-col-push-1.ant-col-rtl{right:4.16666667%;left:auto}.ant-col-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}.ant-col-xs-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-xs-push-24{left:100%}.ant-col-xs-pull-24{right:100%}.ant-col-xs-offset-24{margin-left:100%}.ant-col-xs-order-24{order:24}.ant-col-xs-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-xs-push-23{left:95.83333333%}.ant-col-xs-pull-23{right:95.83333333%}.ant-col-xs-offset-23{margin-left:95.83333333%}.ant-col-xs-order-23{order:23}.ant-col-xs-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-xs-push-22{left:91.66666667%}.ant-col-xs-pull-22{right:91.66666667%}.ant-col-xs-offset-22{margin-left:91.66666667%}.ant-col-xs-order-22{order:22}.ant-col-xs-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-xs-push-21{left:87.5%}.ant-col-xs-pull-21{right:87.5%}.ant-col-xs-offset-21{margin-left:87.5%}.ant-col-xs-order-21{order:21}.ant-col-xs-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-xs-push-20{left:83.33333333%}.ant-col-xs-pull-20{right:83.33333333%}.ant-col-xs-offset-20{margin-left:83.33333333%}.ant-col-xs-order-20{order:20}.ant-col-xs-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-xs-push-19{left:79.16666667%}.ant-col-xs-pull-19{right:79.16666667%}.ant-col-xs-offset-19{margin-left:79.16666667%}.ant-col-xs-order-19{order:19}.ant-col-xs-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-xs-push-18{left:75%}.ant-col-xs-pull-18{right:75%}.ant-col-xs-offset-18{margin-left:75%}.ant-col-xs-order-18{order:18}.ant-col-xs-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-xs-push-17{left:70.83333333%}.ant-col-xs-pull-17{right:70.83333333%}.ant-col-xs-offset-17{margin-left:70.83333333%}.ant-col-xs-order-17{order:17}.ant-col-xs-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-xs-push-16{left:66.66666667%}.ant-col-xs-pull-16{right:66.66666667%}.ant-col-xs-offset-16{margin-left:66.66666667%}.ant-col-xs-order-16{order:16}.ant-col-xs-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-xs-push-15{left:62.5%}.ant-col-xs-pull-15{right:62.5%}.ant-col-xs-offset-15{margin-left:62.5%}.ant-col-xs-order-15{order:15}.ant-col-xs-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-xs-push-14{left:58.33333333%}.ant-col-xs-pull-14{right:58.33333333%}.ant-col-xs-offset-14{margin-left:58.33333333%}.ant-col-xs-order-14{order:14}.ant-col-xs-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-xs-push-13{left:54.16666667%}.ant-col-xs-pull-13{right:54.16666667%}.ant-col-xs-offset-13{margin-left:54.16666667%}.ant-col-xs-order-13{order:13}.ant-col-xs-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-xs-push-12{left:50%}.ant-col-xs-pull-12{right:50%}.ant-col-xs-offset-12{margin-left:50%}.ant-col-xs-order-12{order:12}.ant-col-xs-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-xs-push-11{left:45.83333333%}.ant-col-xs-pull-11{right:45.83333333%}.ant-col-xs-offset-11{margin-left:45.83333333%}.ant-col-xs-order-11{order:11}.ant-col-xs-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-xs-push-10{left:41.66666667%}.ant-col-xs-pull-10{right:41.66666667%}.ant-col-xs-offset-10{margin-left:41.66666667%}.ant-col-xs-order-10{order:10}.ant-col-xs-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-xs-push-9{left:37.5%}.ant-col-xs-pull-9{right:37.5%}.ant-col-xs-offset-9{margin-left:37.5%}.ant-col-xs-order-9{order:9}.ant-col-xs-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-xs-push-8{left:33.33333333%}.ant-col-xs-pull-8{right:33.33333333%}.ant-col-xs-offset-8{margin-left:33.33333333%}.ant-col-xs-order-8{order:8}.ant-col-xs-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-xs-push-7{left:29.16666667%}.ant-col-xs-pull-7{right:29.16666667%}.ant-col-xs-offset-7{margin-left:29.16666667%}.ant-col-xs-order-7{order:7}.ant-col-xs-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-xs-push-6{left:25%}.ant-col-xs-pull-6{right:25%}.ant-col-xs-offset-6{margin-left:25%}.ant-col-xs-order-6{order:6}.ant-col-xs-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-xs-push-5{left:20.83333333%}.ant-col-xs-pull-5{right:20.83333333%}.ant-col-xs-offset-5{margin-left:20.83333333%}.ant-col-xs-order-5{order:5}.ant-col-xs-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-xs-push-4{left:16.66666667%}.ant-col-xs-pull-4{right:16.66666667%}.ant-col-xs-offset-4{margin-left:16.66666667%}.ant-col-xs-order-4{order:4}.ant-col-xs-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-xs-push-3{left:12.5%}.ant-col-xs-pull-3{right:12.5%}.ant-col-xs-offset-3{margin-left:12.5%}.ant-col-xs-order-3{order:3}.ant-col-xs-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-xs-push-2{left:8.33333333%}.ant-col-xs-pull-2{right:8.33333333%}.ant-col-xs-offset-2{margin-left:8.33333333%}.ant-col-xs-order-2{order:2}.ant-col-xs-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-xs-push-1{left:4.16666667%}.ant-col-xs-pull-1{right:4.16666667%}.ant-col-xs-offset-1{margin-left:4.16666667%}.ant-col-xs-order-1{order:1}.ant-col-xs-0{display:none}.ant-col-push-0{left:auto}.ant-col-pull-0{right:auto}.ant-col-xs-push-0{left:auto}.ant-col-xs-pull-0{right:auto}.ant-col-xs-offset-0{margin-left:0}.ant-col-xs-order-0{order:0}.ant-col-push-0.ant-col-rtl{right:auto}.ant-col-pull-0.ant-col-rtl{left:auto}.ant-col-xs-push-0.ant-col-rtl{right:auto}.ant-col-xs-pull-0.ant-col-rtl{left:auto}.ant-col-xs-offset-0.ant-col-rtl{margin-right:0}.ant-col-xs-push-1.ant-col-rtl{right:4.16666667%;left:auto}.ant-col-xs-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-xs-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-xs-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-xs-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-xs-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-xs-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-xs-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-xs-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-xs-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-xs-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-xs-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-xs-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-xs-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-xs-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-xs-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-xs-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-xs-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-xs-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-xs-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-xs-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-xs-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-xs-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-xs-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-xs-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-xs-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-xs-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-xs-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-xs-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-xs-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-xs-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-xs-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-xs-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-xs-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-xs-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-xs-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-xs-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-xs-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-xs-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-xs-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-xs-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-xs-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-xs-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-xs-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-xs-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-xs-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-xs-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-xs-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-xs-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-xs-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-xs-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-xs-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-xs-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-xs-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-xs-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-xs-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-xs-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-xs-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-xs-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-xs-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-xs-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-xs-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-xs-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-xs-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-xs-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-xs-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-xs-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-xs-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-xs-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-xs-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-xs-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-xs-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}@media (min-width: 576px){.ant-col-sm-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-sm-push-24{left:100%}.ant-col-sm-pull-24{right:100%}.ant-col-sm-offset-24{margin-left:100%}.ant-col-sm-order-24{order:24}.ant-col-sm-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-sm-push-23{left:95.83333333%}.ant-col-sm-pull-23{right:95.83333333%}.ant-col-sm-offset-23{margin-left:95.83333333%}.ant-col-sm-order-23{order:23}.ant-col-sm-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-sm-push-22{left:91.66666667%}.ant-col-sm-pull-22{right:91.66666667%}.ant-col-sm-offset-22{margin-left:91.66666667%}.ant-col-sm-order-22{order:22}.ant-col-sm-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-sm-push-21{left:87.5%}.ant-col-sm-pull-21{right:87.5%}.ant-col-sm-offset-21{margin-left:87.5%}.ant-col-sm-order-21{order:21}.ant-col-sm-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-sm-push-20{left:83.33333333%}.ant-col-sm-pull-20{right:83.33333333%}.ant-col-sm-offset-20{margin-left:83.33333333%}.ant-col-sm-order-20{order:20}.ant-col-sm-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-sm-push-19{left:79.16666667%}.ant-col-sm-pull-19{right:79.16666667%}.ant-col-sm-offset-19{margin-left:79.16666667%}.ant-col-sm-order-19{order:19}.ant-col-sm-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-sm-push-18{left:75%}.ant-col-sm-pull-18{right:75%}.ant-col-sm-offset-18{margin-left:75%}.ant-col-sm-order-18{order:18}.ant-col-sm-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-sm-push-17{left:70.83333333%}.ant-col-sm-pull-17{right:70.83333333%}.ant-col-sm-offset-17{margin-left:70.83333333%}.ant-col-sm-order-17{order:17}.ant-col-sm-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-sm-push-16{left:66.66666667%}.ant-col-sm-pull-16{right:66.66666667%}.ant-col-sm-offset-16{margin-left:66.66666667%}.ant-col-sm-order-16{order:16}.ant-col-sm-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-sm-push-15{left:62.5%}.ant-col-sm-pull-15{right:62.5%}.ant-col-sm-offset-15{margin-left:62.5%}.ant-col-sm-order-15{order:15}.ant-col-sm-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-sm-push-14{left:58.33333333%}.ant-col-sm-pull-14{right:58.33333333%}.ant-col-sm-offset-14{margin-left:58.33333333%}.ant-col-sm-order-14{order:14}.ant-col-sm-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-sm-push-13{left:54.16666667%}.ant-col-sm-pull-13{right:54.16666667%}.ant-col-sm-offset-13{margin-left:54.16666667%}.ant-col-sm-order-13{order:13}.ant-col-sm-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-sm-push-12{left:50%}.ant-col-sm-pull-12{right:50%}.ant-col-sm-offset-12{margin-left:50%}.ant-col-sm-order-12{order:12}.ant-col-sm-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-sm-push-11{left:45.83333333%}.ant-col-sm-pull-11{right:45.83333333%}.ant-col-sm-offset-11{margin-left:45.83333333%}.ant-col-sm-order-11{order:11}.ant-col-sm-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-sm-push-10{left:41.66666667%}.ant-col-sm-pull-10{right:41.66666667%}.ant-col-sm-offset-10{margin-left:41.66666667%}.ant-col-sm-order-10{order:10}.ant-col-sm-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-sm-push-9{left:37.5%}.ant-col-sm-pull-9{right:37.5%}.ant-col-sm-offset-9{margin-left:37.5%}.ant-col-sm-order-9{order:9}.ant-col-sm-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-sm-push-8{left:33.33333333%}.ant-col-sm-pull-8{right:33.33333333%}.ant-col-sm-offset-8{margin-left:33.33333333%}.ant-col-sm-order-8{order:8}.ant-col-sm-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-sm-push-7{left:29.16666667%}.ant-col-sm-pull-7{right:29.16666667%}.ant-col-sm-offset-7{margin-left:29.16666667%}.ant-col-sm-order-7{order:7}.ant-col-sm-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-sm-push-6{left:25%}.ant-col-sm-pull-6{right:25%}.ant-col-sm-offset-6{margin-left:25%}.ant-col-sm-order-6{order:6}.ant-col-sm-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-sm-push-5{left:20.83333333%}.ant-col-sm-pull-5{right:20.83333333%}.ant-col-sm-offset-5{margin-left:20.83333333%}.ant-col-sm-order-5{order:5}.ant-col-sm-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-sm-push-4{left:16.66666667%}.ant-col-sm-pull-4{right:16.66666667%}.ant-col-sm-offset-4{margin-left:16.66666667%}.ant-col-sm-order-4{order:4}.ant-col-sm-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-sm-push-3{left:12.5%}.ant-col-sm-pull-3{right:12.5%}.ant-col-sm-offset-3{margin-left:12.5%}.ant-col-sm-order-3{order:3}.ant-col-sm-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-sm-push-2{left:8.33333333%}.ant-col-sm-pull-2{right:8.33333333%}.ant-col-sm-offset-2{margin-left:8.33333333%}.ant-col-sm-order-2{order:2}.ant-col-sm-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-sm-push-1{left:4.16666667%}.ant-col-sm-pull-1{right:4.16666667%}.ant-col-sm-offset-1{margin-left:4.16666667%}.ant-col-sm-order-1{order:1}.ant-col-sm-0{display:none}.ant-col-push-0{left:auto}.ant-col-pull-0{right:auto}.ant-col-sm-push-0{left:auto}.ant-col-sm-pull-0{right:auto}.ant-col-sm-offset-0{margin-left:0}.ant-col-sm-order-0{order:0}.ant-col-push-0.ant-col-rtl{right:auto}.ant-col-pull-0.ant-col-rtl{left:auto}.ant-col-sm-push-0.ant-col-rtl{right:auto}.ant-col-sm-pull-0.ant-col-rtl{left:auto}.ant-col-sm-offset-0.ant-col-rtl{margin-right:0}.ant-col-sm-push-1.ant-col-rtl{right:4.16666667%;left:auto}.ant-col-sm-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-sm-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-sm-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-sm-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-sm-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-sm-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-sm-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-sm-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-sm-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-sm-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-sm-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-sm-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-sm-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-sm-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-sm-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-sm-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-sm-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-sm-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-sm-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-sm-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-sm-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-sm-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-sm-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-sm-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-sm-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-sm-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-sm-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-sm-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-sm-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-sm-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-sm-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-sm-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-sm-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-sm-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-sm-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-sm-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-sm-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-sm-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-sm-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-sm-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-sm-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-sm-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-sm-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-sm-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-sm-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-sm-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-sm-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-sm-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-sm-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-sm-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-sm-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-sm-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-sm-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-sm-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-sm-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-sm-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-sm-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-sm-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-sm-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-sm-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-sm-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-sm-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-sm-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-sm-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-sm-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-sm-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-sm-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-sm-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-sm-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-sm-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-sm-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}@media (min-width: 768px){.ant-col-md-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-md-push-24{left:100%}.ant-col-md-pull-24{right:100%}.ant-col-md-offset-24{margin-left:100%}.ant-col-md-order-24{order:24}.ant-col-md-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-md-push-23{left:95.83333333%}.ant-col-md-pull-23{right:95.83333333%}.ant-col-md-offset-23{margin-left:95.83333333%}.ant-col-md-order-23{order:23}.ant-col-md-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-md-push-22{left:91.66666667%}.ant-col-md-pull-22{right:91.66666667%}.ant-col-md-offset-22{margin-left:91.66666667%}.ant-col-md-order-22{order:22}.ant-col-md-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-md-push-21{left:87.5%}.ant-col-md-pull-21{right:87.5%}.ant-col-md-offset-21{margin-left:87.5%}.ant-col-md-order-21{order:21}.ant-col-md-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-md-push-20{left:83.33333333%}.ant-col-md-pull-20{right:83.33333333%}.ant-col-md-offset-20{margin-left:83.33333333%}.ant-col-md-order-20{order:20}.ant-col-md-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-md-push-19{left:79.16666667%}.ant-col-md-pull-19{right:79.16666667%}.ant-col-md-offset-19{margin-left:79.16666667%}.ant-col-md-order-19{order:19}.ant-col-md-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-md-push-18{left:75%}.ant-col-md-pull-18{right:75%}.ant-col-md-offset-18{margin-left:75%}.ant-col-md-order-18{order:18}.ant-col-md-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-md-push-17{left:70.83333333%}.ant-col-md-pull-17{right:70.83333333%}.ant-col-md-offset-17{margin-left:70.83333333%}.ant-col-md-order-17{order:17}.ant-col-md-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-md-push-16{left:66.66666667%}.ant-col-md-pull-16{right:66.66666667%}.ant-col-md-offset-16{margin-left:66.66666667%}.ant-col-md-order-16{order:16}.ant-col-md-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-md-push-15{left:62.5%}.ant-col-md-pull-15{right:62.5%}.ant-col-md-offset-15{margin-left:62.5%}.ant-col-md-order-15{order:15}.ant-col-md-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-md-push-14{left:58.33333333%}.ant-col-md-pull-14{right:58.33333333%}.ant-col-md-offset-14{margin-left:58.33333333%}.ant-col-md-order-14{order:14}.ant-col-md-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-md-push-13{left:54.16666667%}.ant-col-md-pull-13{right:54.16666667%}.ant-col-md-offset-13{margin-left:54.16666667%}.ant-col-md-order-13{order:13}.ant-col-md-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-md-push-12{left:50%}.ant-col-md-pull-12{right:50%}.ant-col-md-offset-12{margin-left:50%}.ant-col-md-order-12{order:12}.ant-col-md-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-md-push-11{left:45.83333333%}.ant-col-md-pull-11{right:45.83333333%}.ant-col-md-offset-11{margin-left:45.83333333%}.ant-col-md-order-11{order:11}.ant-col-md-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-md-push-10{left:41.66666667%}.ant-col-md-pull-10{right:41.66666667%}.ant-col-md-offset-10{margin-left:41.66666667%}.ant-col-md-order-10{order:10}.ant-col-md-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-md-push-9{left:37.5%}.ant-col-md-pull-9{right:37.5%}.ant-col-md-offset-9{margin-left:37.5%}.ant-col-md-order-9{order:9}.ant-col-md-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-md-push-8{left:33.33333333%}.ant-col-md-pull-8{right:33.33333333%}.ant-col-md-offset-8{margin-left:33.33333333%}.ant-col-md-order-8{order:8}.ant-col-md-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-md-push-7{left:29.16666667%}.ant-col-md-pull-7{right:29.16666667%}.ant-col-md-offset-7{margin-left:29.16666667%}.ant-col-md-order-7{order:7}.ant-col-md-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-md-push-6{left:25%}.ant-col-md-pull-6{right:25%}.ant-col-md-offset-6{margin-left:25%}.ant-col-md-order-6{order:6}.ant-col-md-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-md-push-5{left:20.83333333%}.ant-col-md-pull-5{right:20.83333333%}.ant-col-md-offset-5{margin-left:20.83333333%}.ant-col-md-order-5{order:5}.ant-col-md-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-md-push-4{left:16.66666667%}.ant-col-md-pull-4{right:16.66666667%}.ant-col-md-offset-4{margin-left:16.66666667%}.ant-col-md-order-4{order:4}.ant-col-md-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-md-push-3{left:12.5%}.ant-col-md-pull-3{right:12.5%}.ant-col-md-offset-3{margin-left:12.5%}.ant-col-md-order-3{order:3}.ant-col-md-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-md-push-2{left:8.33333333%}.ant-col-md-pull-2{right:8.33333333%}.ant-col-md-offset-2{margin-left:8.33333333%}.ant-col-md-order-2{order:2}.ant-col-md-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-md-push-1{left:4.16666667%}.ant-col-md-pull-1{right:4.16666667%}.ant-col-md-offset-1{margin-left:4.16666667%}.ant-col-md-order-1{order:1}.ant-col-md-0{display:none}.ant-col-push-0{left:auto}.ant-col-pull-0{right:auto}.ant-col-md-push-0{left:auto}.ant-col-md-pull-0{right:auto}.ant-col-md-offset-0{margin-left:0}.ant-col-md-order-0{order:0}.ant-col-push-0.ant-col-rtl{right:auto}.ant-col-pull-0.ant-col-rtl{left:auto}.ant-col-md-push-0.ant-col-rtl{right:auto}.ant-col-md-pull-0.ant-col-rtl{left:auto}.ant-col-md-offset-0.ant-col-rtl{margin-right:0}.ant-col-md-push-1.ant-col-rtl{right:4.16666667%;left:auto}.ant-col-md-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-md-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-md-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-md-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-md-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-md-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-md-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-md-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-md-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-md-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-md-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-md-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-md-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-md-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-md-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-md-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-md-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-md-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-md-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-md-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-md-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-md-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-md-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-md-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-md-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-md-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-md-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-md-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-md-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-md-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-md-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-md-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-md-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-md-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-md-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-md-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-md-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-md-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-md-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-md-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-md-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-md-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-md-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-md-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-md-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-md-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-md-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-md-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-md-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-md-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-md-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-md-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-md-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-md-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-md-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-md-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-md-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-md-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-md-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-md-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-md-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-md-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-md-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-md-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-md-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-md-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-md-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-md-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-md-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-md-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-md-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}@media (min-width: 992px){.ant-col-lg-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-lg-push-24{left:100%}.ant-col-lg-pull-24{right:100%}.ant-col-lg-offset-24{margin-left:100%}.ant-col-lg-order-24{order:24}.ant-col-lg-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-lg-push-23{left:95.83333333%}.ant-col-lg-pull-23{right:95.83333333%}.ant-col-lg-offset-23{margin-left:95.83333333%}.ant-col-lg-order-23{order:23}.ant-col-lg-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-lg-push-22{left:91.66666667%}.ant-col-lg-pull-22{right:91.66666667%}.ant-col-lg-offset-22{margin-left:91.66666667%}.ant-col-lg-order-22{order:22}.ant-col-lg-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-lg-push-21{left:87.5%}.ant-col-lg-pull-21{right:87.5%}.ant-col-lg-offset-21{margin-left:87.5%}.ant-col-lg-order-21{order:21}.ant-col-lg-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-lg-push-20{left:83.33333333%}.ant-col-lg-pull-20{right:83.33333333%}.ant-col-lg-offset-20{margin-left:83.33333333%}.ant-col-lg-order-20{order:20}.ant-col-lg-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-lg-push-19{left:79.16666667%}.ant-col-lg-pull-19{right:79.16666667%}.ant-col-lg-offset-19{margin-left:79.16666667%}.ant-col-lg-order-19{order:19}.ant-col-lg-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-lg-push-18{left:75%}.ant-col-lg-pull-18{right:75%}.ant-col-lg-offset-18{margin-left:75%}.ant-col-lg-order-18{order:18}.ant-col-lg-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-lg-push-17{left:70.83333333%}.ant-col-lg-pull-17{right:70.83333333%}.ant-col-lg-offset-17{margin-left:70.83333333%}.ant-col-lg-order-17{order:17}.ant-col-lg-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-lg-push-16{left:66.66666667%}.ant-col-lg-pull-16{right:66.66666667%}.ant-col-lg-offset-16{margin-left:66.66666667%}.ant-col-lg-order-16{order:16}.ant-col-lg-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-lg-push-15{left:62.5%}.ant-col-lg-pull-15{right:62.5%}.ant-col-lg-offset-15{margin-left:62.5%}.ant-col-lg-order-15{order:15}.ant-col-lg-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-lg-push-14{left:58.33333333%}.ant-col-lg-pull-14{right:58.33333333%}.ant-col-lg-offset-14{margin-left:58.33333333%}.ant-col-lg-order-14{order:14}.ant-col-lg-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-lg-push-13{left:54.16666667%}.ant-col-lg-pull-13{right:54.16666667%}.ant-col-lg-offset-13{margin-left:54.16666667%}.ant-col-lg-order-13{order:13}.ant-col-lg-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-lg-push-12{left:50%}.ant-col-lg-pull-12{right:50%}.ant-col-lg-offset-12{margin-left:50%}.ant-col-lg-order-12{order:12}.ant-col-lg-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-lg-push-11{left:45.83333333%}.ant-col-lg-pull-11{right:45.83333333%}.ant-col-lg-offset-11{margin-left:45.83333333%}.ant-col-lg-order-11{order:11}.ant-col-lg-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-lg-push-10{left:41.66666667%}.ant-col-lg-pull-10{right:41.66666667%}.ant-col-lg-offset-10{margin-left:41.66666667%}.ant-col-lg-order-10{order:10}.ant-col-lg-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-lg-push-9{left:37.5%}.ant-col-lg-pull-9{right:37.5%}.ant-col-lg-offset-9{margin-left:37.5%}.ant-col-lg-order-9{order:9}.ant-col-lg-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-lg-push-8{left:33.33333333%}.ant-col-lg-pull-8{right:33.33333333%}.ant-col-lg-offset-8{margin-left:33.33333333%}.ant-col-lg-order-8{order:8}.ant-col-lg-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-lg-push-7{left:29.16666667%}.ant-col-lg-pull-7{right:29.16666667%}.ant-col-lg-offset-7{margin-left:29.16666667%}.ant-col-lg-order-7{order:7}.ant-col-lg-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-lg-push-6{left:25%}.ant-col-lg-pull-6{right:25%}.ant-col-lg-offset-6{margin-left:25%}.ant-col-lg-order-6{order:6}.ant-col-lg-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-lg-push-5{left:20.83333333%}.ant-col-lg-pull-5{right:20.83333333%}.ant-col-lg-offset-5{margin-left:20.83333333%}.ant-col-lg-order-5{order:5}.ant-col-lg-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-lg-push-4{left:16.66666667%}.ant-col-lg-pull-4{right:16.66666667%}.ant-col-lg-offset-4{margin-left:16.66666667%}.ant-col-lg-order-4{order:4}.ant-col-lg-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-lg-push-3{left:12.5%}.ant-col-lg-pull-3{right:12.5%}.ant-col-lg-offset-3{margin-left:12.5%}.ant-col-lg-order-3{order:3}.ant-col-lg-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-lg-push-2{left:8.33333333%}.ant-col-lg-pull-2{right:8.33333333%}.ant-col-lg-offset-2{margin-left:8.33333333%}.ant-col-lg-order-2{order:2}.ant-col-lg-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-lg-push-1{left:4.16666667%}.ant-col-lg-pull-1{right:4.16666667%}.ant-col-lg-offset-1{margin-left:4.16666667%}.ant-col-lg-order-1{order:1}.ant-col-lg-0{display:none}.ant-col-push-0{left:auto}.ant-col-pull-0{right:auto}.ant-col-lg-push-0{left:auto}.ant-col-lg-pull-0{right:auto}.ant-col-lg-offset-0{margin-left:0}.ant-col-lg-order-0{order:0}.ant-col-push-0.ant-col-rtl{right:auto}.ant-col-pull-0.ant-col-rtl{left:auto}.ant-col-lg-push-0.ant-col-rtl{right:auto}.ant-col-lg-pull-0.ant-col-rtl{left:auto}.ant-col-lg-offset-0.ant-col-rtl{margin-right:0}.ant-col-lg-push-1.ant-col-rtl{right:4.16666667%;left:auto}.ant-col-lg-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-lg-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-lg-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-lg-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-lg-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-lg-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-lg-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-lg-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-lg-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-lg-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-lg-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-lg-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-lg-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-lg-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-lg-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-lg-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-lg-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-lg-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-lg-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-lg-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-lg-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-lg-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-lg-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-lg-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-lg-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-lg-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-lg-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-lg-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-lg-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-lg-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-lg-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-lg-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-lg-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-lg-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-lg-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-lg-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-lg-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-lg-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-lg-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-lg-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-lg-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-lg-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-lg-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-lg-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-lg-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-lg-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-lg-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-lg-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-lg-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-lg-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-lg-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-lg-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-lg-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-lg-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-lg-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-lg-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-lg-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-lg-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-lg-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-lg-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-lg-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-lg-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-lg-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-lg-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-lg-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-lg-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-lg-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-lg-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-lg-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-lg-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-lg-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}@media (min-width: 1200px){.ant-col-xl-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-xl-push-24{left:100%}.ant-col-xl-pull-24{right:100%}.ant-col-xl-offset-24{margin-left:100%}.ant-col-xl-order-24{order:24}.ant-col-xl-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-xl-push-23{left:95.83333333%}.ant-col-xl-pull-23{right:95.83333333%}.ant-col-xl-offset-23{margin-left:95.83333333%}.ant-col-xl-order-23{order:23}.ant-col-xl-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-xl-push-22{left:91.66666667%}.ant-col-xl-pull-22{right:91.66666667%}.ant-col-xl-offset-22{margin-left:91.66666667%}.ant-col-xl-order-22{order:22}.ant-col-xl-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-xl-push-21{left:87.5%}.ant-col-xl-pull-21{right:87.5%}.ant-col-xl-offset-21{margin-left:87.5%}.ant-col-xl-order-21{order:21}.ant-col-xl-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-xl-push-20{left:83.33333333%}.ant-col-xl-pull-20{right:83.33333333%}.ant-col-xl-offset-20{margin-left:83.33333333%}.ant-col-xl-order-20{order:20}.ant-col-xl-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-xl-push-19{left:79.16666667%}.ant-col-xl-pull-19{right:79.16666667%}.ant-col-xl-offset-19{margin-left:79.16666667%}.ant-col-xl-order-19{order:19}.ant-col-xl-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-xl-push-18{left:75%}.ant-col-xl-pull-18{right:75%}.ant-col-xl-offset-18{margin-left:75%}.ant-col-xl-order-18{order:18}.ant-col-xl-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-xl-push-17{left:70.83333333%}.ant-col-xl-pull-17{right:70.83333333%}.ant-col-xl-offset-17{margin-left:70.83333333%}.ant-col-xl-order-17{order:17}.ant-col-xl-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-xl-push-16{left:66.66666667%}.ant-col-xl-pull-16{right:66.66666667%}.ant-col-xl-offset-16{margin-left:66.66666667%}.ant-col-xl-order-16{order:16}.ant-col-xl-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-xl-push-15{left:62.5%}.ant-col-xl-pull-15{right:62.5%}.ant-col-xl-offset-15{margin-left:62.5%}.ant-col-xl-order-15{order:15}.ant-col-xl-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-xl-push-14{left:58.33333333%}.ant-col-xl-pull-14{right:58.33333333%}.ant-col-xl-offset-14{margin-left:58.33333333%}.ant-col-xl-order-14{order:14}.ant-col-xl-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-xl-push-13{left:54.16666667%}.ant-col-xl-pull-13{right:54.16666667%}.ant-col-xl-offset-13{margin-left:54.16666667%}.ant-col-xl-order-13{order:13}.ant-col-xl-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-xl-push-12{left:50%}.ant-col-xl-pull-12{right:50%}.ant-col-xl-offset-12{margin-left:50%}.ant-col-xl-order-12{order:12}.ant-col-xl-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-xl-push-11{left:45.83333333%}.ant-col-xl-pull-11{right:45.83333333%}.ant-col-xl-offset-11{margin-left:45.83333333%}.ant-col-xl-order-11{order:11}.ant-col-xl-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-xl-push-10{left:41.66666667%}.ant-col-xl-pull-10{right:41.66666667%}.ant-col-xl-offset-10{margin-left:41.66666667%}.ant-col-xl-order-10{order:10}.ant-col-xl-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-xl-push-9{left:37.5%}.ant-col-xl-pull-9{right:37.5%}.ant-col-xl-offset-9{margin-left:37.5%}.ant-col-xl-order-9{order:9}.ant-col-xl-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-xl-push-8{left:33.33333333%}.ant-col-xl-pull-8{right:33.33333333%}.ant-col-xl-offset-8{margin-left:33.33333333%}.ant-col-xl-order-8{order:8}.ant-col-xl-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-xl-push-7{left:29.16666667%}.ant-col-xl-pull-7{right:29.16666667%}.ant-col-xl-offset-7{margin-left:29.16666667%}.ant-col-xl-order-7{order:7}.ant-col-xl-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-xl-push-6{left:25%}.ant-col-xl-pull-6{right:25%}.ant-col-xl-offset-6{margin-left:25%}.ant-col-xl-order-6{order:6}.ant-col-xl-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-xl-push-5{left:20.83333333%}.ant-col-xl-pull-5{right:20.83333333%}.ant-col-xl-offset-5{margin-left:20.83333333%}.ant-col-xl-order-5{order:5}.ant-col-xl-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-xl-push-4{left:16.66666667%}.ant-col-xl-pull-4{right:16.66666667%}.ant-col-xl-offset-4{margin-left:16.66666667%}.ant-col-xl-order-4{order:4}.ant-col-xl-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-xl-push-3{left:12.5%}.ant-col-xl-pull-3{right:12.5%}.ant-col-xl-offset-3{margin-left:12.5%}.ant-col-xl-order-3{order:3}.ant-col-xl-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-xl-push-2{left:8.33333333%}.ant-col-xl-pull-2{right:8.33333333%}.ant-col-xl-offset-2{margin-left:8.33333333%}.ant-col-xl-order-2{order:2}.ant-col-xl-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-xl-push-1{left:4.16666667%}.ant-col-xl-pull-1{right:4.16666667%}.ant-col-xl-offset-1{margin-left:4.16666667%}.ant-col-xl-order-1{order:1}.ant-col-xl-0{display:none}.ant-col-push-0{left:auto}.ant-col-pull-0{right:auto}.ant-col-xl-push-0{left:auto}.ant-col-xl-pull-0{right:auto}.ant-col-xl-offset-0{margin-left:0}.ant-col-xl-order-0{order:0}.ant-col-push-0.ant-col-rtl{right:auto}.ant-col-pull-0.ant-col-rtl{left:auto}.ant-col-xl-push-0.ant-col-rtl{right:auto}.ant-col-xl-pull-0.ant-col-rtl{left:auto}.ant-col-xl-offset-0.ant-col-rtl{margin-right:0}.ant-col-xl-push-1.ant-col-rtl{right:4.16666667%;left:auto}.ant-col-xl-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-xl-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-xl-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-xl-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-xl-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-xl-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-xl-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-xl-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-xl-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-xl-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-xl-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-xl-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-xl-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-xl-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-xl-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-xl-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-xl-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-xl-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-xl-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-xl-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-xl-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-xl-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-xl-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-xl-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-xl-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-xl-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-xl-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-xl-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-xl-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-xl-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-xl-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-xl-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-xl-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-xl-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-xl-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-xl-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-xl-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-xl-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-xl-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-xl-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-xl-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-xl-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-xl-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-xl-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-xl-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-xl-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-xl-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-xl-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-xl-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-xl-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-xl-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-xl-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-xl-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-xl-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-xl-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-xl-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-xl-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-xl-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-xl-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-xl-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-xl-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-xl-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-xl-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-xl-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-xl-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-xl-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-xl-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-xl-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-xl-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-xl-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-xl-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}@media (min-width: 1600px){.ant-col-xxl-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-xxl-push-24{left:100%}.ant-col-xxl-pull-24{right:100%}.ant-col-xxl-offset-24{margin-left:100%}.ant-col-xxl-order-24{order:24}.ant-col-xxl-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-xxl-push-23{left:95.83333333%}.ant-col-xxl-pull-23{right:95.83333333%}.ant-col-xxl-offset-23{margin-left:95.83333333%}.ant-col-xxl-order-23{order:23}.ant-col-xxl-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-xxl-push-22{left:91.66666667%}.ant-col-xxl-pull-22{right:91.66666667%}.ant-col-xxl-offset-22{margin-left:91.66666667%}.ant-col-xxl-order-22{order:22}.ant-col-xxl-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-xxl-push-21{left:87.5%}.ant-col-xxl-pull-21{right:87.5%}.ant-col-xxl-offset-21{margin-left:87.5%}.ant-col-xxl-order-21{order:21}.ant-col-xxl-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-xxl-push-20{left:83.33333333%}.ant-col-xxl-pull-20{right:83.33333333%}.ant-col-xxl-offset-20{margin-left:83.33333333%}.ant-col-xxl-order-20{order:20}.ant-col-xxl-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-xxl-push-19{left:79.16666667%}.ant-col-xxl-pull-19{right:79.16666667%}.ant-col-xxl-offset-19{margin-left:79.16666667%}.ant-col-xxl-order-19{order:19}.ant-col-xxl-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-xxl-push-18{left:75%}.ant-col-xxl-pull-18{right:75%}.ant-col-xxl-offset-18{margin-left:75%}.ant-col-xxl-order-18{order:18}.ant-col-xxl-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-xxl-push-17{left:70.83333333%}.ant-col-xxl-pull-17{right:70.83333333%}.ant-col-xxl-offset-17{margin-left:70.83333333%}.ant-col-xxl-order-17{order:17}.ant-col-xxl-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-xxl-push-16{left:66.66666667%}.ant-col-xxl-pull-16{right:66.66666667%}.ant-col-xxl-offset-16{margin-left:66.66666667%}.ant-col-xxl-order-16{order:16}.ant-col-xxl-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-xxl-push-15{left:62.5%}.ant-col-xxl-pull-15{right:62.5%}.ant-col-xxl-offset-15{margin-left:62.5%}.ant-col-xxl-order-15{order:15}.ant-col-xxl-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-xxl-push-14{left:58.33333333%}.ant-col-xxl-pull-14{right:58.33333333%}.ant-col-xxl-offset-14{margin-left:58.33333333%}.ant-col-xxl-order-14{order:14}.ant-col-xxl-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-xxl-push-13{left:54.16666667%}.ant-col-xxl-pull-13{right:54.16666667%}.ant-col-xxl-offset-13{margin-left:54.16666667%}.ant-col-xxl-order-13{order:13}.ant-col-xxl-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-xxl-push-12{left:50%}.ant-col-xxl-pull-12{right:50%}.ant-col-xxl-offset-12{margin-left:50%}.ant-col-xxl-order-12{order:12}.ant-col-xxl-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-xxl-push-11{left:45.83333333%}.ant-col-xxl-pull-11{right:45.83333333%}.ant-col-xxl-offset-11{margin-left:45.83333333%}.ant-col-xxl-order-11{order:11}.ant-col-xxl-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-xxl-push-10{left:41.66666667%}.ant-col-xxl-pull-10{right:41.66666667%}.ant-col-xxl-offset-10{margin-left:41.66666667%}.ant-col-xxl-order-10{order:10}.ant-col-xxl-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-xxl-push-9{left:37.5%}.ant-col-xxl-pull-9{right:37.5%}.ant-col-xxl-offset-9{margin-left:37.5%}.ant-col-xxl-order-9{order:9}.ant-col-xxl-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-xxl-push-8{left:33.33333333%}.ant-col-xxl-pull-8{right:33.33333333%}.ant-col-xxl-offset-8{margin-left:33.33333333%}.ant-col-xxl-order-8{order:8}.ant-col-xxl-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-xxl-push-7{left:29.16666667%}.ant-col-xxl-pull-7{right:29.16666667%}.ant-col-xxl-offset-7{margin-left:29.16666667%}.ant-col-xxl-order-7{order:7}.ant-col-xxl-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-xxl-push-6{left:25%}.ant-col-xxl-pull-6{right:25%}.ant-col-xxl-offset-6{margin-left:25%}.ant-col-xxl-order-6{order:6}.ant-col-xxl-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-xxl-push-5{left:20.83333333%}.ant-col-xxl-pull-5{right:20.83333333%}.ant-col-xxl-offset-5{margin-left:20.83333333%}.ant-col-xxl-order-5{order:5}.ant-col-xxl-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-xxl-push-4{left:16.66666667%}.ant-col-xxl-pull-4{right:16.66666667%}.ant-col-xxl-offset-4{margin-left:16.66666667%}.ant-col-xxl-order-4{order:4}.ant-col-xxl-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-xxl-push-3{left:12.5%}.ant-col-xxl-pull-3{right:12.5%}.ant-col-xxl-offset-3{margin-left:12.5%}.ant-col-xxl-order-3{order:3}.ant-col-xxl-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-xxl-push-2{left:8.33333333%}.ant-col-xxl-pull-2{right:8.33333333%}.ant-col-xxl-offset-2{margin-left:8.33333333%}.ant-col-xxl-order-2{order:2}.ant-col-xxl-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-xxl-push-1{left:4.16666667%}.ant-col-xxl-pull-1{right:4.16666667%}.ant-col-xxl-offset-1{margin-left:4.16666667%}.ant-col-xxl-order-1{order:1}.ant-col-xxl-0{display:none}.ant-col-push-0{left:auto}.ant-col-pull-0{right:auto}.ant-col-xxl-push-0{left:auto}.ant-col-xxl-pull-0{right:auto}.ant-col-xxl-offset-0{margin-left:0}.ant-col-xxl-order-0{order:0}.ant-col-push-0.ant-col-rtl{right:auto}.ant-col-pull-0.ant-col-rtl{left:auto}.ant-col-xxl-push-0.ant-col-rtl{right:auto}.ant-col-xxl-pull-0.ant-col-rtl{left:auto}.ant-col-xxl-offset-0.ant-col-rtl{margin-right:0}.ant-col-xxl-push-1.ant-col-rtl{right:4.16666667%;left:auto}.ant-col-xxl-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-xxl-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-xxl-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-xxl-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-xxl-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-xxl-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-xxl-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-xxl-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-xxl-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-xxl-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-xxl-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-xxl-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-xxl-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-xxl-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-xxl-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-xxl-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-xxl-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-xxl-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-xxl-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-xxl-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-xxl-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-xxl-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-xxl-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-xxl-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-xxl-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-xxl-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-xxl-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-xxl-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-xxl-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-xxl-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-xxl-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-xxl-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-xxl-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-xxl-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-xxl-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-xxl-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-xxl-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-xxl-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-xxl-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-xxl-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-xxl-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-xxl-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-xxl-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-xxl-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-xxl-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-xxl-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-xxl-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-xxl-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-xxl-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-xxl-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-xxl-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-xxl-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-xxl-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-xxl-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-xxl-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-xxl-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-xxl-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-xxl-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-xxl-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-xxl-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-xxl-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-xxl-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-xxl-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-xxl-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-xxl-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-xxl-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-xxl-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-xxl-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-xxl-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-xxl-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-xxl-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}.ant-row-rtl{direction:rtl}.ant-input-affix-wrapper{position:relative;display:inline-block;width:100%;min-width:0;padding:4px 11px;color:#000000d9;font-size:14px;line-height:1.5715;background-color:#fff;background-image:none;border:1px solid #d9d9d9;border-radius:2px;transition:all .3s;display:inline-flex}.ant-input-affix-wrapper::placeholder{color:#bfbfbf;-webkit-user-select:none;user-select:none}.ant-input-affix-wrapper:placeholder-shown{text-overflow:ellipsis}.ant-input-affix-wrapper:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-input-affix-wrapper:hover{border-right-width:0;border-left-width:1px!important}.ant-input-affix-wrapper:focus,.ant-input-affix-wrapper-focused{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;border-right-width:1px;outline:0}.ant-input-rtl .ant-input-affix-wrapper:focus,.ant-input-rtl .ant-input-affix-wrapper-focused{border-right-width:0;border-left-width:1px!important}.ant-input-affix-wrapper-disabled{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;color:#00000040;pointer-events:none}.ant-input-affix-wrapper-disabled:hover{border-color:#d9d9d9;border-right-width:1px}.ant-input-affix-wrapper[disabled]{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;color:#00000040;pointer-events:none}.ant-input-affix-wrapper[disabled]:hover{border-color:#d9d9d9;border-right-width:1px}.ant-input-affix-wrapper-borderless,.ant-input-affix-wrapper-borderless:hover,.ant-input-affix-wrapper-borderless:focus,.ant-input-affix-wrapper-borderless-focused,.ant-input-affix-wrapper-borderless-disabled,.ant-input-affix-wrapper-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-input-affix-wrapper{max-width:100%;height:auto;min-height:32px;line-height:1.5715;vertical-align:bottom;transition:all .3s,height 0s}.ant-input-affix-wrapper-lg{padding:6.5px 11px;font-size:16px}.ant-input-affix-wrapper-sm{padding:0 7px}.ant-input-affix-wrapper-rtl{direction:rtl}.ant-input-affix-wrapper-stepperless[type=number]{-moz-appearance:textfield}.ant-input-affix-wrapper-stepperless[type=number]::-webkit-inner-spin-button,.ant-input-affix-wrapper-stepperless[type=number] ::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover{border-color:#40a9ff;border-right-width:1px;z-index:1}.ant-input-rtl .ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover{border-right-width:0;border-left-width:1px!important}.ant-input-search-with-button .ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover{z-index:0}.ant-input-affix-wrapper-focused,.ant-input-affix-wrapper:focus{z-index:1}.ant-input-affix-wrapper-disabled .ant-input[disabled]{background:transparent}.ant-input-affix-wrapper>input.ant-input{padding:0;border:none;outline:none}.ant-input-affix-wrapper>input.ant-input:focus{box-shadow:none!important}.ant-input-affix-wrapper:before{width:0;visibility:hidden;content:"\a0"}.ant-input-prefix,.ant-input-suffix{display:flex;flex:none;align-items:center}.ant-input-prefix>*:not(:last-child),.ant-input-suffix>*:not(:last-child){margin-right:8px}.ant-input-show-count-suffix{color:#00000073}.ant-input-show-count-has-suffix{margin-right:2px}.ant-input-prefix{margin-right:4px}.ant-input-suffix{margin-left:4px}.anticon.ant-input-clear-icon,.ant-input-clear-icon{margin:0;color:#00000040;font-size:12px;vertical-align:-1px;cursor:pointer;transition:color .3s}.anticon.ant-input-clear-icon:hover,.ant-input-clear-icon:hover{color:#00000073}.anticon.ant-input-clear-icon:active,.ant-input-clear-icon:active{color:#000000d9}.anticon.ant-input-clear-icon-hidden,.ant-input-clear-icon-hidden{visibility:hidden}.anticon.ant-input-clear-icon-has-suffix,.ant-input-clear-icon-has-suffix{margin:0 4px}.ant-input-affix-wrapper-textarea-with-clear-btn{padding:0!important;border:0!important}.ant-input-affix-wrapper-textarea-with-clear-btn .ant-input-clear-icon{position:absolute;top:8px;right:8px;z-index:1}.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input,.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:hover{background:#fff;border-color:#ff4d4f}.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:focus,.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input-focused{border-color:#ff7875;box-shadow:0 0 0 2px #ff4d4f33;border-right-width:1px;outline:0}.ant-input-status-error .ant-input-prefix{color:#ff4d4f}.ant-input-status-warning:not(.ant-input-disabled):not(.ant-input-borderless).ant-input,.ant-input-status-warning:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:hover{background:#fff;border-color:#faad14}.ant-input-status-warning:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:focus,.ant-input-status-warning:not(.ant-input-disabled):not(.ant-input-borderless).ant-input-focused{border-color:#ffc53d;box-shadow:0 0 0 2px #faad1433;border-right-width:1px;outline:0}.ant-input-status-warning .ant-input-prefix{color:#faad14}.ant-input-affix-wrapper-status-error:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper,.ant-input-affix-wrapper-status-error:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper:hover{background:#fff;border-color:#ff4d4f}.ant-input-affix-wrapper-status-error:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper:focus,.ant-input-affix-wrapper-status-error:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper-focused{border-color:#ff7875;box-shadow:0 0 0 2px #ff4d4f33;border-right-width:1px;outline:0}.ant-input-affix-wrapper-status-error .ant-input-prefix{color:#ff4d4f}.ant-input-affix-wrapper-status-warning:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper,.ant-input-affix-wrapper-status-warning:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper:hover{background:#fff;border-color:#faad14}.ant-input-affix-wrapper-status-warning:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper:focus,.ant-input-affix-wrapper-status-warning:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper-focused{border-color:#ffc53d;box-shadow:0 0 0 2px #faad1433;border-right-width:1px;outline:0}.ant-input-affix-wrapper-status-warning .ant-input-prefix{color:#faad14}.ant-input-textarea-status-error.ant-input-textarea-has-feedback .ant-input,.ant-input-textarea-status-warning.ant-input-textarea-has-feedback .ant-input,.ant-input-textarea-status-success.ant-input-textarea-has-feedback .ant-input,.ant-input-textarea-status-validating.ant-input-textarea-has-feedback .ant-input{padding-right:24px}.ant-input-group-wrapper-status-error .ant-input-group-addon{color:#ff4d4f;border-color:#ff4d4f}.ant-input-group-wrapper-status-warning .ant-input-group-addon{color:#faad14;border-color:#faad14}.ant-input{box-sizing:border-box;margin:0;font-variant:tabular-nums;list-style:none;font-feature-settings:"tnum";position:relative;display:inline-block;width:100%;min-width:0;padding:4px 11px;color:#000000d9;font-size:14px;line-height:1.5715;background-color:#fff;background-image:none;border:1px solid #d9d9d9;border-radius:2px;transition:all .3s}.ant-input::placeholder{color:#bfbfbf;-webkit-user-select:none;user-select:none}.ant-input:placeholder-shown{text-overflow:ellipsis}.ant-input:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-input:hover{border-right-width:0;border-left-width:1px!important}.ant-input:focus,.ant-input-focused{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;border-right-width:1px;outline:0}.ant-input-rtl .ant-input:focus,.ant-input-rtl .ant-input-focused{border-right-width:0;border-left-width:1px!important}.ant-input-disabled{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;color:#00000040;pointer-events:none}.ant-input-disabled:hover{border-color:#d9d9d9;border-right-width:1px}.ant-input[disabled]{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;color:#00000040;pointer-events:none}.ant-input[disabled]:hover{border-color:#d9d9d9;border-right-width:1px}.ant-input-borderless,.ant-input-borderless:hover,.ant-input-borderless:focus,.ant-input-borderless-focused,.ant-input-borderless-disabled,.ant-input-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-input{max-width:100%;height:auto;min-height:32px;line-height:1.5715;vertical-align:bottom;transition:all .3s,height 0s}.ant-input-lg{padding:6.5px 11px;font-size:16px}.ant-input-sm{padding:0 7px}.ant-input-rtl{direction:rtl}.ant-input-stepperless[type=number]{-moz-appearance:textfield}.ant-input-stepperless[type=number]::-webkit-inner-spin-button,.ant-input-stepperless[type=number] ::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ant-input-group{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;display:table;width:100%;border-collapse:separate;border-spacing:0}.ant-input-group[class*=col-]{float:none;padding-right:0;padding-left:0}.ant-input-group>[class*=col-]{padding-right:8px}.ant-input-group>[class*=col-]:last-child{padding-right:0}.ant-input-group-addon,.ant-input-group-wrap,.ant-input-group>.ant-input{display:table-cell}.ant-input-group-addon:not(:first-child):not(:last-child),.ant-input-group-wrap:not(:first-child):not(:last-child),.ant-input-group>.ant-input:not(:first-child):not(:last-child){border-radius:0}.ant-input-group-addon,.ant-input-group-wrap{width:1px;white-space:nowrap;vertical-align:middle}.ant-input-group-wrap>*{display:block!important}.ant-input-group .ant-input{float:left;width:100%;margin-bottom:0;text-align:inherit}.ant-input-group .ant-input:focus{z-index:1;border-right-width:1px}.ant-input-group .ant-input:hover{z-index:1;border-right-width:1px}.ant-input-search-with-button .ant-input-group .ant-input:hover{z-index:0}.ant-input-group-addon{position:relative;padding:0 11px;color:#000000d9;font-weight:400;font-size:14px;text-align:center;background-color:#fafafa;border:1px solid #d9d9d9;border-radius:2px;transition:all .3s}.ant-input-group-addon .ant-select{margin:-5px -11px}.ant-input-group-addon .ant-select.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{background-color:inherit;border:1px solid transparent;box-shadow:none}.ant-input-group-addon .ant-select-open .ant-select-selector,.ant-input-group-addon .ant-select-focused .ant-select-selector{color:#1890ff}.ant-input-group-addon .ant-cascader-picker{margin:-9px -12px;background-color:transparent}.ant-input-group-addon .ant-cascader-picker .ant-cascader-input{text-align:left;border:0;box-shadow:none}.ant-input-group>.ant-input:first-child,.ant-input-group-addon:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.ant-input-group>.ant-input:first-child .ant-select .ant-select-selector,.ant-input-group-addon:first-child .ant-select .ant-select-selector{border-top-right-radius:0;border-bottom-right-radius:0}.ant-input-group>.ant-input-affix-wrapper:not(:first-child) .ant-input{border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-group>.ant-input-affix-wrapper:not(:last-child) .ant-input{border-top-right-radius:0;border-bottom-right-radius:0}.ant-input-group-addon:first-child{border-right:0}.ant-input-group-addon:last-child{border-left:0}.ant-input-group>.ant-input:last-child,.ant-input-group-addon:last-child{border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-group>.ant-input:last-child .ant-select .ant-select-selector,.ant-input-group-addon:last-child .ant-select .ant-select-selector{border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-group-lg .ant-input,.ant-input-group-lg>.ant-input-group-addon{padding:6.5px 11px;font-size:16px}.ant-input-group-sm .ant-input,.ant-input-group-sm>.ant-input-group-addon{padding:0 7px}.ant-input-group-lg .ant-select-single .ant-select-selector{height:40px}.ant-input-group-sm .ant-select-single .ant-select-selector{height:24px}.ant-input-group .ant-input-affix-wrapper:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.ant-input-search .ant-input-group .ant-input-affix-wrapper:not(:last-child){border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-input-group .ant-input-affix-wrapper:not(:first-child),.ant-input-search .ant-input-group .ant-input-affix-wrapper:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-group.ant-input-group-compact{display:block}.ant-input-group.ant-input-group-compact:before{display:table;content:""}.ant-input-group.ant-input-group-compact:after{display:table;clear:both;content:""}.ant-input-group.ant-input-group-compact-addon:not(:first-child):not(:last-child),.ant-input-group.ant-input-group-compact-wrap:not(:first-child):not(:last-child),.ant-input-group.ant-input-group-compact>.ant-input:not(:first-child):not(:last-child){border-right-width:1px}.ant-input-group.ant-input-group-compact-addon:not(:first-child):not(:last-child):hover,.ant-input-group.ant-input-group-compact-wrap:not(:first-child):not(:last-child):hover,.ant-input-group.ant-input-group-compact>.ant-input:not(:first-child):not(:last-child):hover{z-index:1}.ant-input-group.ant-input-group-compact-addon:not(:first-child):not(:last-child):focus,.ant-input-group.ant-input-group-compact-wrap:not(:first-child):not(:last-child):focus,.ant-input-group.ant-input-group-compact>.ant-input:not(:first-child):not(:last-child):focus{z-index:1}.ant-input-group.ant-input-group-compact>*{display:inline-block;float:none;vertical-align:top;border-radius:0}.ant-input-group.ant-input-group-compact>.ant-input-affix-wrapper{display:inline-flex}.ant-input-group.ant-input-group-compact>.ant-picker-range{display:inline-flex}.ant-input-group.ant-input-group-compact>*:not(:last-child){margin-right:-1px;border-right-width:1px}.ant-input-group.ant-input-group-compact .ant-input{float:none}.ant-input-group.ant-input-group-compact>.ant-select>.ant-select-selector,.ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input,.ant-input-group.ant-input-group-compact>.ant-cascader-picker .ant-input,.ant-input-group.ant-input-group-compact>.ant-input-group-wrapper .ant-input{border-right-width:1px;border-radius:0}.ant-input-group.ant-input-group-compact>.ant-select>.ant-select-selector:hover,.ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input:hover,.ant-input-group.ant-input-group-compact>.ant-cascader-picker .ant-input:hover,.ant-input-group.ant-input-group-compact>.ant-input-group-wrapper .ant-input:hover{z-index:1}.ant-input-group.ant-input-group-compact>.ant-select>.ant-select-selector:focus,.ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input:focus,.ant-input-group.ant-input-group-compact>.ant-cascader-picker .ant-input:focus,.ant-input-group.ant-input-group-compact>.ant-input-group-wrapper .ant-input:focus{z-index:1}.ant-input-group.ant-input-group-compact>.ant-select-focused{z-index:1}.ant-input-group.ant-input-group-compact>.ant-select>.ant-select-arrow{z-index:1}.ant-input-group.ant-input-group-compact>*:first-child,.ant-input-group.ant-input-group-compact>.ant-select:first-child>.ant-select-selector,.ant-input-group.ant-input-group-compact>.ant-select-auto-complete:first-child .ant-input,.ant-input-group.ant-input-group-compact>.ant-cascader-picker:first-child .ant-input{border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-input-group.ant-input-group-compact>*:last-child,.ant-input-group.ant-input-group-compact>.ant-select:last-child>.ant-select-selector,.ant-input-group.ant-input-group-compact>.ant-cascader-picker:last-child .ant-input,.ant-input-group.ant-input-group-compact>.ant-cascader-picker-focused:last-child .ant-input{border-right-width:1px;border-top-right-radius:2px;border-bottom-right-radius:2px}.ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input{vertical-align:top}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper+.ant-input-group-wrapper{margin-left:-1px}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper+.ant-input-group-wrapper .ant-input-affix-wrapper{border-radius:0}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper:not(:last-child).ant-input-search>.ant-input-group>.ant-input-group-addon>.ant-input-search-button{border-radius:0}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper:not(:last-child).ant-input-search>.ant-input-group>.ant-input{border-radius:2px 0 0 2px}.ant-input-group>.ant-input-rtl:first-child,.ant-input-group-rtl .ant-input-group-addon:first-child{border-radius:0 2px 2px 0}.ant-input-group-rtl .ant-input-group-addon:first-child{border-right:1px solid #d9d9d9;border-left:0}.ant-input-group-rtl .ant-input-group-addon:last-child{border-right:0;border-left:1px solid #d9d9d9}.ant-input-group-rtl.ant-input-group>.ant-input:last-child,.ant-input-group-rtl.ant-input-group-addon:last-child{border-radius:2px 0 0 2px}.ant-input-group-rtl.ant-input-group .ant-input-affix-wrapper:not(:first-child){border-radius:2px 0 0 2px}.ant-input-group-rtl.ant-input-group .ant-input-affix-wrapper:not(:last-child){border-radius:0 2px 2px 0}.ant-input-group-rtl.ant-input-group.ant-input-group-compact>*:not(:last-child){margin-right:0;margin-left:-1px;border-left-width:1px}.ant-input-group-rtl.ant-input-group.ant-input-group-compact>*:first-child,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-select:first-child>.ant-select-selector,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-select-auto-complete:first-child .ant-input,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-cascader-picker:first-child .ant-input{border-radius:0 2px 2px 0}.ant-input-group-rtl.ant-input-group.ant-input-group-compact>*:last-child,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-select:last-child>.ant-select-selector,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-select-auto-complete:last-child .ant-input,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-cascader-picker:last-child .ant-input,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-cascader-picker-focused:last-child .ant-input{border-left-width:1px;border-radius:2px 0 0 2px}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper-rtl+.ant-input-group-wrapper-rtl{margin-right:-1px;margin-left:0}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper-rtl:not(:last-child).ant-input-search>.ant-input-group>.ant-input{border-radius:0 2px 2px 0}.ant-input-group-wrapper{display:inline-block;width:100%;text-align:start;vertical-align:top}.ant-input-password-icon.anticon{color:#00000073;cursor:pointer;transition:all .3s}.ant-input-password-icon.anticon:hover{color:#000000d9}.ant-input[type=color]{height:32px}.ant-input[type=color].ant-input-lg{height:40px}.ant-input[type=color].ant-input-sm{height:24px;padding-top:3px;padding-bottom:3px}.ant-input-textarea-show-count>.ant-input{height:100%}.ant-input-textarea-show-count:after{float:right;color:#00000073;white-space:nowrap;content:attr(data-count);pointer-events:none}.ant-input-textarea-show-count.ant-input-textarea-in-form-item:after{margin-bottom:-22px}.ant-input-textarea-suffix{position:absolute;top:0;right:11px;bottom:0;z-index:1;display:inline-flex;align-items:center;margin:auto}.ant-input-search .ant-input:hover,.ant-input-search .ant-input:focus{border-color:#40a9ff}.ant-input-search .ant-input:hover+.ant-input-group-addon .ant-input-search-button:not(.ant-btn-primary),.ant-input-search .ant-input:focus+.ant-input-group-addon .ant-input-search-button:not(.ant-btn-primary){border-left-color:#40a9ff}.ant-input-search .ant-input-affix-wrapper{border-radius:0}.ant-input-search .ant-input-lg{line-height:1.5713}.ant-input-search>.ant-input-group>.ant-input-group-addon:last-child{left:-1px;padding:0;border:0}.ant-input-search>.ant-input-group>.ant-input-group-addon:last-child .ant-input-search-button{padding-top:0;padding-bottom:0;border-radius:0 2px 2px 0}.ant-input-search>.ant-input-group>.ant-input-group-addon:last-child .ant-input-search-button:not(.ant-btn-primary){color:#00000073}.ant-input-search>.ant-input-group>.ant-input-group-addon:last-child .ant-input-search-button:not(.ant-btn-primary).ant-btn-loading:before{inset:0}.ant-input-search-button{height:32px}.ant-input-search-button:hover,.ant-input-search-button:focus{z-index:1}.ant-input-search-large .ant-input-search-button{height:40px}.ant-input-search-small .ant-input-search-button{height:24px}.ant-input-group-wrapper-rtl,.ant-input-group-rtl{direction:rtl}.ant-input-affix-wrapper.ant-input-affix-wrapper-rtl>input.ant-input{border:none;outline:none}.ant-input-affix-wrapper-rtl .ant-input-prefix{margin:0 0 0 4px}.ant-input-affix-wrapper-rtl .ant-input-suffix{margin:0 4px 0 0}.ant-input-textarea-rtl{direction:rtl}.ant-input-textarea-rtl.ant-input-textarea-show-count:after{text-align:left}.ant-input-affix-wrapper-rtl .ant-input-clear-icon-has-suffix{margin-right:0;margin-left:4px}.ant-input-affix-wrapper-rtl .ant-input-clear-icon{right:auto;left:8px}.ant-input-search-rtl{direction:rtl}.ant-input-search-rtl .ant-input:hover+.ant-input-group-addon .ant-input-search-button:not(.ant-btn-primary),.ant-input-search-rtl .ant-input:focus+.ant-input-group-addon .ant-input-search-button:not(.ant-btn-primary){border-right-color:#40a9ff;border-left-color:#d9d9d9}.ant-input-search-rtl>.ant-input-group>.ant-input-affix-wrapper:hover,.ant-input-search-rtl>.ant-input-group>.ant-input-affix-wrapper-focused{border-right-color:#40a9ff}.ant-input-search-rtl>.ant-input-group>.ant-input-group-addon{right:-1px;left:auto}.ant-input-search-rtl>.ant-input-group>.ant-input-group-addon .ant-input-search-button{border-radius:2px 0 0 2px}@media screen and (-ms-high-contrast: active),(-ms-high-contrast: none){.ant-input{height:32px}.ant-input-lg{height:40px}.ant-input-sm{height:24px}.ant-input-affix-wrapper>input.ant-input{height:auto}}textarea.nz-textarea-autosize-measuring{height:auto!important;overflow:hidden!important;padding:2px 0!important}.ant-input-search-rtl.ant-input-search-enter-button+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only,.ant-input-search-rtl.ant-input-search-enter-button input+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only{width:32px;height:32px}.ant-input-search-rtl.ant-input-search-enter-button+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only.ant-btn-sm,.ant-input-search-rtl.ant-input-search-enter-button input+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only.ant-btn-sm{width:24px;height:24px}.ant-input-search-rtl.ant-input-search-enter-button+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only.ant-btn-lg,.ant-input-search-rtl.ant-input-search-enter-button input+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only.ant-btn-lg{width:40px;height:40px}.ant-input-affix-wrapper-textarea-with-clear-btn .ant-input-suffix{margin-left:0}nz-form-item-feedback-icon.ant-input-suffix{display:flex;flex:none;align-items:center;pointer-events:none}nz-form-item-feedback-icon.ant-input-suffix{position:absolute;top:0;right:0;z-index:1;height:100%;margin-right:12px;margin-left:4px}.ant-input-status-error.ant-input-has-feedback,.ant-input-status-warning.ant-input-has-feedback,.ant-input-status-validating.ant-input-has-feedback,.ant-input-status-success.ant-input-has-feedback{padding-right:28px}.ant-input-textarea-show-count{display:block;position:relative}.ant-input-number-affix-wrapper{display:inline-block;width:100%;min-width:0;color:#000000d9;font-size:14px;line-height:1.5715;background-color:#fff;background-image:none;border:1px solid #d9d9d9;border-radius:2px;transition:all .3s;position:relative;display:inline-flex;width:90px;padding:0;padding-inline-start:11px}.ant-input-number-affix-wrapper::placeholder{color:#bfbfbf;-webkit-user-select:none;user-select:none}.ant-input-number-affix-wrapper:placeholder-shown{text-overflow:ellipsis}.ant-input-number-affix-wrapper:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-input-number-affix-wrapper:hover{border-right-width:0;border-left-width:1px!important}.ant-input-number-affix-wrapper:focus,.ant-input-number-affix-wrapper-focused{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;border-right-width:1px;outline:0}.ant-input-rtl .ant-input-number-affix-wrapper:focus,.ant-input-rtl .ant-input-number-affix-wrapper-focused{border-right-width:0;border-left-width:1px!important}.ant-input-number-affix-wrapper-disabled{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;color:#00000040;pointer-events:none}.ant-input-number-affix-wrapper-disabled:hover{border-color:#d9d9d9;border-right-width:1px}.ant-input-number-affix-wrapper[disabled]{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;color:#00000040;pointer-events:none}.ant-input-number-affix-wrapper[disabled]:hover{border-color:#d9d9d9;border-right-width:1px}.ant-input-number-affix-wrapper-borderless,.ant-input-number-affix-wrapper-borderless:hover,.ant-input-number-affix-wrapper-borderless:focus,.ant-input-number-affix-wrapper-borderless-focused,.ant-input-number-affix-wrapper-borderless-disabled,.ant-input-number-affix-wrapper-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-input-number-affix-wrapper{max-width:100%;height:auto;min-height:32px;line-height:1.5715;vertical-align:bottom;transition:all .3s,height 0s}.ant-input-number-affix-wrapper-lg{padding:6.5px 11px;font-size:16px}.ant-input-number-affix-wrapper-sm{padding:0 7px}.ant-input-number-affix-wrapper-rtl{direction:rtl}.ant-input-number-affix-wrapper-stepperless[type=number]{-moz-appearance:textfield}.ant-input-number-affix-wrapper-stepperless[type=number]::-webkit-inner-spin-button,.ant-input-number-affix-wrapper-stepperless[type=number] ::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ant-input-number-affix-wrapper:not(.ant-input-number-affix-wrapper-disabled):hover{border-color:#40a9ff;border-right-width:1px;z-index:1}.ant-input-rtl .ant-input-number-affix-wrapper:not(.ant-input-number-affix-wrapper-disabled):hover{border-right-width:0;border-left-width:1px!important}.ant-input-number-affix-wrapper-focused,.ant-input-number-affix-wrapper:focus{z-index:1}.ant-input-number-affix-wrapper-disabled .ant-input-number[disabled]{background:transparent}.ant-input-number-affix-wrapper>div.ant-input-number{width:100%;border:none;outline:none}.ant-input-number-affix-wrapper>div.ant-input-number.ant-input-number-focused{box-shadow:none!important}.ant-input-number-affix-wrapper input.ant-input-number-input{padding:0}.ant-input-number-affix-wrapper:before{width:0;visibility:hidden;content:"\a0"}.ant-input-number-affix-wrapper .ant-input-number-handler-wrap{z-index:2}.ant-input-number-prefix,.ant-input-number-suffix{display:flex;flex:none;align-items:center;pointer-events:none}.ant-input-number-prefix{margin-inline-end:4px}.ant-input-number-suffix{position:absolute;top:0;right:0;z-index:1;height:100%;margin-right:11px;margin-left:4px}.ant-input-number-group-wrapper .ant-input-number-affix-wrapper{width:100%}.ant-input-number-status-error:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number,.ant-input-number-status-error:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number:hover{background:#fff;border-color:#ff4d4f}.ant-input-number-status-error:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number:focus,.ant-input-number-status-error:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number-focused{border-color:#ff7875;box-shadow:0 0 0 2px #ff4d4f33;border-right-width:1px;outline:0}.ant-input-number-status-error .ant-input-number-prefix{color:#ff4d4f}.ant-input-number-status-warning:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number,.ant-input-number-status-warning:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number:hover{background:#fff;border-color:#faad14}.ant-input-number-status-warning:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number:focus,.ant-input-number-status-warning:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number-focused{border-color:#ffc53d;box-shadow:0 0 0 2px #faad1433;border-right-width:1px;outline:0}.ant-input-number-status-warning .ant-input-number-prefix{color:#faad14}.ant-input-number-affix-wrapper-status-error:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper,.ant-input-number-affix-wrapper-status-error:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper:hover{background:#fff;border-color:#ff4d4f}.ant-input-number-affix-wrapper-status-error:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper:focus,.ant-input-number-affix-wrapper-status-error:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper-focused{border-color:#ff7875;box-shadow:0 0 0 2px #ff4d4f33;border-right-width:1px;outline:0}.ant-input-number-affix-wrapper-status-error .ant-input-number-prefix{color:#ff4d4f}.ant-input-number-affix-wrapper-status-warning:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper,.ant-input-number-affix-wrapper-status-warning:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper:hover{background:#fff;border-color:#faad14}.ant-input-number-affix-wrapper-status-warning:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper:focus,.ant-input-number-affix-wrapper-status-warning:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper-focused{border-color:#ffc53d;box-shadow:0 0 0 2px #faad1433;border-right-width:1px;outline:0}.ant-input-number-affix-wrapper-status-warning .ant-input-number-prefix{color:#faad14}.ant-input-number-group-wrapper-status-error .ant-input-number-group-addon{color:#ff4d4f;border-color:#ff4d4f}.ant-input-number-group-wrapper-status-warning .ant-input-number-group-addon{color:#faad14;border-color:#faad14}.ant-input-number{box-sizing:border-box;font-variant:tabular-nums;list-style:none;font-feature-settings:"tnum";position:relative;width:100%;min-width:0;color:#000000d9;font-size:14px;line-height:1.5715;background-color:#fff;background-image:none;transition:all .3s;display:inline-block;width:90px;margin:0;padding:0;border:1px solid #d9d9d9;border-radius:2px}.ant-input-number::placeholder{color:#bfbfbf;-webkit-user-select:none;user-select:none}.ant-input-number:placeholder-shown{text-overflow:ellipsis}.ant-input-rtl .ant-input-number:hover{border-right-width:0;border-left-width:1px!important}.ant-input-number:focus,.ant-input-number-focused{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;border-right-width:1px;outline:0}.ant-input-rtl .ant-input-number:focus,.ant-input-rtl .ant-input-number-focused{border-right-width:0;border-left-width:1px!important}.ant-input-number[disabled]{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;color:#00000040;pointer-events:none}.ant-input-number[disabled]:hover{border-color:#d9d9d9;border-right-width:1px}.ant-input-number-borderless,.ant-input-number-borderless:hover,.ant-input-number-borderless:focus,.ant-input-number-borderless-focused,.ant-input-number-borderless-disabled,.ant-input-number-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-input-number{max-width:100%;height:auto;min-height:32px;line-height:1.5715;vertical-align:bottom;transition:all .3s,height 0s}.ant-input-number-lg{padding:6.5px 11px;font-size:16px}.ant-input-number-sm{padding:0 7px}.ant-input-number-stepperless[type=number]{-moz-appearance:textfield}.ant-input-number-stepperless[type=number]::-webkit-inner-spin-button,.ant-input-number-stepperless[type=number] ::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ant-input-number-group{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;display:table;width:100%;border-collapse:separate;border-spacing:0}.ant-input-number-group[class*=col-]{float:none;padding-right:0;padding-left:0}.ant-input-number-group>[class*=col-]{padding-right:8px}.ant-input-number-group>[class*=col-]:last-child{padding-right:0}.ant-input-number-group-addon,.ant-input-number-group-wrap,.ant-input-number-group>.ant-input-number{display:table-cell}.ant-input-number-group-addon:not(:first-child):not(:last-child),.ant-input-number-group-wrap:not(:first-child):not(:last-child),.ant-input-number-group>.ant-input-number:not(:first-child):not(:last-child){border-radius:0}.ant-input-number-group-addon,.ant-input-number-group-wrap{width:1px;white-space:nowrap;vertical-align:middle}.ant-input-number-group-wrap>*{display:block!important}.ant-input-number-group .ant-input-number{float:left;width:100%;margin-bottom:0;text-align:inherit}.ant-input-number-group .ant-input-number:focus{z-index:1;border-right-width:1px}.ant-input-number-group .ant-input-number:hover{z-index:1;border-right-width:1px}.ant-input-search-with-button .ant-input-number-group .ant-input-number:hover{z-index:0}.ant-input-number-group-addon{position:relative;padding:0 11px;color:#000000d9;font-weight:400;font-size:14px;text-align:center;background-color:#fafafa;border:1px solid #d9d9d9;border-radius:2px;transition:all .3s}.ant-input-number-group-addon .ant-select{margin:-5px -11px}.ant-input-number-group-addon .ant-select.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{background-color:inherit;border:1px solid transparent;box-shadow:none}.ant-input-number-group-addon .ant-select-open .ant-select-selector,.ant-input-number-group-addon .ant-select-focused .ant-select-selector{color:#1890ff}.ant-input-number-group-addon .ant-cascader-picker{margin:-9px -12px;background-color:transparent}.ant-input-number-group-addon .ant-cascader-picker .ant-cascader-input{text-align:left;border:0;box-shadow:none}.ant-input-number-group>.ant-input-number:first-child,.ant-input-number-group-addon:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.ant-input-number-group>.ant-input-number:first-child .ant-select .ant-select-selector,.ant-input-number-group-addon:first-child .ant-select .ant-select-selector{border-top-right-radius:0;border-bottom-right-radius:0}.ant-input-number-group>.ant-input-number-affix-wrapper:not(:first-child) .ant-input-number{border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-number-group>.ant-input-number-affix-wrapper:not(:last-child) .ant-input-number{border-top-right-radius:0;border-bottom-right-radius:0}.ant-input-number-group-addon:first-child{border-right:0}.ant-input-number-group-addon:last-child{border-left:0}.ant-input-number-group>.ant-input-number:last-child,.ant-input-number-group-addon:last-child{border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-number-group>.ant-input-number:last-child .ant-select .ant-select-selector,.ant-input-number-group-addon:last-child .ant-select .ant-select-selector{border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-number-group-lg .ant-input-number,.ant-input-number-group-lg>.ant-input-number-group-addon{padding:6.5px 11px;font-size:16px}.ant-input-number-group-sm .ant-input-number,.ant-input-number-group-sm>.ant-input-number-group-addon{padding:0 7px}.ant-input-number-group-lg .ant-select-single .ant-select-selector{height:40px}.ant-input-number-group-sm .ant-select-single .ant-select-selector{height:24px}.ant-input-number-group .ant-input-number-affix-wrapper:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.ant-input-search .ant-input-number-group .ant-input-number-affix-wrapper:not(:last-child){border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-input-number-group .ant-input-number-affix-wrapper:not(:first-child),.ant-input-search .ant-input-number-group .ant-input-number-affix-wrapper:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-number-group.ant-input-number-group-compact{display:block}.ant-input-number-group.ant-input-number-group-compact:before{display:table;content:""}.ant-input-number-group.ant-input-number-group-compact:after{display:table;clear:both;content:""}.ant-input-number-group.ant-input-number-group-compact-addon:not(:first-child):not(:last-child),.ant-input-number-group.ant-input-number-group-compact-wrap:not(:first-child):not(:last-child),.ant-input-number-group.ant-input-number-group-compact>.ant-input-number:not(:first-child):not(:last-child){border-right-width:1px}.ant-input-number-group.ant-input-number-group-compact-addon:not(:first-child):not(:last-child):hover,.ant-input-number-group.ant-input-number-group-compact-wrap:not(:first-child):not(:last-child):hover,.ant-input-number-group.ant-input-number-group-compact>.ant-input-number:not(:first-child):not(:last-child):hover{z-index:1}.ant-input-number-group.ant-input-number-group-compact-addon:not(:first-child):not(:last-child):focus,.ant-input-number-group.ant-input-number-group-compact-wrap:not(:first-child):not(:last-child):focus,.ant-input-number-group.ant-input-number-group-compact>.ant-input-number:not(:first-child):not(:last-child):focus{z-index:1}.ant-input-number-group.ant-input-number-group-compact>*{display:inline-block;float:none;vertical-align:top;border-radius:0}.ant-input-number-group.ant-input-number-group-compact>.ant-input-number-affix-wrapper{display:inline-flex}.ant-input-number-group.ant-input-number-group-compact>.ant-picker-range{display:inline-flex}.ant-input-number-group.ant-input-number-group-compact>*:not(:last-child){margin-right:-1px;border-right-width:1px}.ant-input-number-group.ant-input-number-group-compact .ant-input-number{float:none}.ant-input-number-group.ant-input-number-group-compact>.ant-select>.ant-select-selector,.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-input-group-wrapper .ant-input{border-right-width:1px;border-radius:0}.ant-input-number-group.ant-input-number-group-compact>.ant-select>.ant-select-selector:hover,.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete .ant-input:hover,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker .ant-input:hover,.ant-input-number-group.ant-input-number-group-compact>.ant-input-group-wrapper .ant-input:hover{z-index:1}.ant-input-number-group.ant-input-number-group-compact>.ant-select>.ant-select-selector:focus,.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete .ant-input:focus,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker .ant-input:focus,.ant-input-number-group.ant-input-number-group-compact>.ant-input-group-wrapper .ant-input:focus{z-index:1}.ant-input-number-group.ant-input-number-group-compact>.ant-select-focused{z-index:1}.ant-input-number-group.ant-input-number-group-compact>.ant-select>.ant-select-arrow{z-index:1}.ant-input-number-group.ant-input-number-group-compact>*:first-child,.ant-input-number-group.ant-input-number-group-compact>.ant-select:first-child>.ant-select-selector,.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete:first-child .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker:first-child .ant-input{border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-input-number-group.ant-input-number-group-compact>*:last-child,.ant-input-number-group.ant-input-number-group-compact>.ant-select:last-child>.ant-select-selector,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker:last-child .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker-focused:last-child .ant-input{border-right-width:1px;border-top-right-radius:2px;border-bottom-right-radius:2px}.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete .ant-input{vertical-align:top}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper+.ant-input-group-wrapper{margin-left:-1px}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper+.ant-input-group-wrapper .ant-input-affix-wrapper{border-radius:0}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper:not(:last-child).ant-input-search>.ant-input-group>.ant-input-group-addon>.ant-input-search-button{border-radius:0}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper:not(:last-child).ant-input-search>.ant-input-group>.ant-input{border-radius:2px 0 0 2px}.ant-input-number-group>.ant-input-number-rtl:first-child,.ant-input-number-group-rtl .ant-input-number-group-addon:first-child{border-radius:0 2px 2px 0}.ant-input-number-group-rtl .ant-input-number-group-addon:first-child{border-right:1px solid #d9d9d9;border-left:0}.ant-input-number-group-rtl .ant-input-number-group-addon:last-child{border-right:0;border-left:1px solid #d9d9d9}.ant-input-number-group-rtl.ant-input-number-group>.ant-input-number:last-child,.ant-input-number-group-rtl.ant-input-number-group-addon:last-child{border-radius:2px 0 0 2px}.ant-input-number-group-rtl.ant-input-number-group .ant-input-number-affix-wrapper:not(:first-child){border-radius:2px 0 0 2px}.ant-input-number-group-rtl.ant-input-number-group .ant-input-number-affix-wrapper:not(:last-child){border-radius:0 2px 2px 0}.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>*:not(:last-child){margin-right:0;margin-left:-1px;border-left-width:1px}.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>*:first-child,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-select:first-child>.ant-select-selector,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete:first-child .ant-input,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker:first-child .ant-input{border-radius:0 2px 2px 0}.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>*:last-child,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-select:last-child>.ant-select-selector,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete:last-child .ant-input,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker:last-child .ant-input,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker-focused:last-child .ant-input{border-left-width:1px;border-radius:2px 0 0 2px}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper-rtl+.ant-input-group-wrapper-rtl{margin-right:-1px;margin-left:0}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper-rtl:not(:last-child).ant-input-search>.ant-input-group>.ant-input{border-radius:0 2px 2px 0}.ant-input-number-group-wrapper{display:inline-block;text-align:start;vertical-align:top}.ant-input-number-handler{position:relative;display:block;width:100%;height:50%;overflow:hidden;color:#00000073;font-weight:700;line-height:0;text-align:center;border-left:1px solid #d9d9d9;transition:all .1s linear}.ant-input-number-handler:active{background:#f4f4f4}.ant-input-number-handler:hover .ant-input-number-handler-up-inner,.ant-input-number-handler:hover .ant-input-number-handler-down-inner{color:#40a9ff}.ant-input-number-handler-up-inner,.ant-input-number-handler-down-inner{display:inline-block;color:inherit;font-style:normal;line-height:0;text-align:center;text-transform:none;vertical-align:-.125em;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:absolute;right:4px;width:12px;height:12px;color:#00000073;line-height:12px;transition:all .1s linear;-webkit-user-select:none;user-select:none}.ant-input-number-handler-up-inner>*,.ant-input-number-handler-down-inner>*{line-height:1}.ant-input-number-handler-up-inner svg,.ant-input-number-handler-down-inner svg{display:inline-block}.ant-input-number-handler-up-inner:before,.ant-input-number-handler-down-inner:before{display:none}.ant-input-number-handler-up-inner .ant-input-number-handler-up-inner-icon,.ant-input-number-handler-up-inner .ant-input-number-handler-down-inner-icon,.ant-input-number-handler-down-inner .ant-input-number-handler-up-inner-icon,.ant-input-number-handler-down-inner .ant-input-number-handler-down-inner-icon{display:block}.ant-input-number:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-number:hover+.ant-form-item-children-icon{opacity:0;transition:opacity .24s linear .24s}.ant-input-number-focused{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;border-right-width:1px;outline:0}.ant-input-rtl .ant-input-number-focused{border-right-width:0;border-left-width:1px!important}.ant-input-number-disabled{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;color:#00000040;pointer-events:none}.ant-input-number-disabled:hover{border-color:#d9d9d9;border-right-width:1px}.ant-input-number-disabled .ant-input-number-input{cursor:not-allowed}.ant-input-number-disabled .ant-input-number-handler-wrap,.ant-input-number-readonly .ant-input-number-handler-wrap{display:none}.ant-input-number-input{width:100%;height:30px;padding:0 11px;text-align:left;background-color:transparent;border:0;border-radius:2px;outline:0;transition:all .3s linear;appearance:textfield!important}.ant-input-number-input::placeholder{color:#bfbfbf;-webkit-user-select:none;user-select:none}.ant-input-number-input:placeholder-shown{text-overflow:ellipsis}.ant-input-number-input[type=number]::-webkit-inner-spin-button,.ant-input-number-input[type=number]::-webkit-outer-spin-button{margin:0;appearance:none}.ant-input-number-lg{padding:0;font-size:16px}.ant-input-number-lg input{height:38px}.ant-input-number-sm{padding:0}.ant-input-number-sm input{height:22px;padding:0 7px}.ant-input-number-handler-wrap{position:absolute;top:0;right:0;width:22px;height:100%;background:#fff;border-radius:0 2px 2px 0;opacity:0;transition:opacity .24s linear .1s}.ant-input-number-handler-wrap .ant-input-number-handler .ant-input-number-handler-up-inner,.ant-input-number-handler-wrap .ant-input-number-handler .ant-input-number-handler-down-inner{display:flex;align-items:center;justify-content:center;min-width:auto;margin-right:0;font-size:7px}.ant-input-number-borderless .ant-input-number-handler-wrap{border-left-width:0}.ant-input-number-handler-wrap:hover .ant-input-number-handler{height:40%}.ant-input-number:hover .ant-input-number-handler-wrap,.ant-input-number-focused .ant-input-number-handler-wrap{opacity:1}.ant-input-number-handler-up{border-top-right-radius:2px;cursor:pointer}.ant-input-number-handler-up-inner{top:50%;margin-top:-5px;text-align:center}.ant-input-number-handler-up:hover{height:60%!important}.ant-input-number-handler-down{top:0;border-top:1px solid #d9d9d9;border-bottom-right-radius:2px;cursor:pointer}.ant-input-number-handler-down-inner{top:50%;text-align:center;transform:translateY(-50%)}.ant-input-number-handler-down:hover{height:60%!important}.ant-input-number-borderless .ant-input-number-handler-down{border-top-width:0}.ant-input-number-handler-up-disabled,.ant-input-number-handler-down-disabled{cursor:not-allowed}.ant-input-number-handler-up-disabled:hover .ant-input-number-handler-up-inner,.ant-input-number-handler-down-disabled:hover .ant-input-number-handler-down-inner{color:#00000040}.ant-input-number-borderless{box-shadow:none}.ant-input-number-out-of-range input{color:#ff4d4f}.ant-input-number-rtl{direction:rtl}.ant-input-number-rtl .ant-input-number-handler{border-right:1px solid #d9d9d9;border-left:0}.ant-input-number-rtl .ant-input-number-handler-wrap{right:auto;left:0}.ant-input-number-rtl.ant-input-number-borderless .ant-input-number-handler-wrap{border-right-width:0}.ant-input-number-rtl .ant-input-number-handler-up{border-top-right-radius:0}.ant-input-number-rtl .ant-input-number-handler-down{border-bottom-right-radius:0}.ant-input-number-rtl .ant-input-number-input{direction:ltr;text-align:right}.ant-input-number-affix-wrapper>nz-input-number.ant-input-number{width:100%;border:none;outline:none}.ant-input-number-affix-wrapper>nz-input-number.ant-input-number.ant-input-number-focused{box-shadow:none!important}.ant-input-number.ant-input-number-has-feedback .ant-input-number-handler-wrap{z-index:2}.ant-layout{display:flex;flex:auto;flex-direction:column;min-height:0;background:#f0f2f5}.ant-layout,.ant-layout *{box-sizing:border-box}.ant-layout.ant-layout-has-sider{flex-direction:row}.ant-layout.ant-layout-has-sider>.ant-layout,.ant-layout.ant-layout-has-sider>.ant-layout-content{width:0}.ant-layout-header,.ant-layout-footer{flex:0 0 auto}.ant-layout-header{height:64px;padding:0 50px;color:#000000d9;line-height:64px;background:#001529}.ant-layout-footer{padding:24px 50px;color:#000000d9;font-size:14px;background:#f0f2f5}.ant-layout-content{flex:auto;min-height:0}.ant-layout-sider{position:relative;min-width:0;background:#001529;transition:all .2s}.ant-layout-sider-children{height:100%;margin-top:-.1px;padding-top:.1px}.ant-layout-sider-children .ant-menu.ant-menu-inline-collapsed{width:auto}.ant-layout-sider-has-trigger{padding-bottom:48px}.ant-layout-sider-right{order:1}.ant-layout-sider-trigger{position:fixed;bottom:0;z-index:1;height:48px;color:#fff;line-height:48px;text-align:center;background:#002140;cursor:pointer;transition:all .2s}.ant-layout-sider-zero-width>*{overflow:hidden}.ant-layout-sider-zero-width-trigger{position:absolute;top:64px;right:-36px;z-index:1;width:36px;height:42px;color:#fff;font-size:18px;line-height:42px;text-align:center;background:#001529;border-radius:0 2px 2px 0;cursor:pointer;transition:background .3s ease}.ant-layout-sider-zero-width-trigger:after{position:absolute;inset:0;background:transparent;transition:all .3s;content:""}.ant-layout-sider-zero-width-trigger:hover:after{background:rgba(255,255,255,.1)}.ant-layout-sider-zero-width-trigger-right{left:-36px;border-radius:2px 0 0 2px}.ant-layout-sider-light{background:#fff}.ant-layout-sider-light .ant-layout-sider-trigger,.ant-layout-sider-light .ant-layout-sider-zero-width-trigger{color:#000000d9;background:#fff}.ant-layout-rtl{direction:rtl}nz-content{display:block}nz-footer{display:block}nz-header{display:block}.ant-form-item .ant-input-number+.ant-form-text{margin-left:8px}.ant-form-inline{display:flex;flex-wrap:wrap}.ant-form-inline .ant-form-item{flex:none;flex-wrap:nowrap;margin-right:16px;margin-bottom:0}.ant-form-inline .ant-form-item-with-help{margin-bottom:24px}.ant-form-inline .ant-form-item>.ant-form-item-label,.ant-form-inline .ant-form-item>.ant-form-item-control{display:inline-block;vertical-align:top}.ant-form-inline .ant-form-item>.ant-form-item-label{flex:none}.ant-form-inline .ant-form-item .ant-form-text,.ant-form-inline .ant-form-item .ant-form-item-has-feedback{display:inline-block}.ant-form-horizontal .ant-form-item-label{flex-grow:0}.ant-form-horizontal .ant-form-item-control{flex:1 1 0;min-width:0}.ant-form-horizontal .ant-form-item-label[class$="-24"]+.ant-form-item-control,.ant-form-horizontal .ant-form-item-label[class*="-24 "]+.ant-form-item-control{min-width:unset}.ant-form-vertical .ant-form-item{flex-direction:column}.ant-form-vertical .ant-form-item-label>label{height:auto}.ant-form-vertical .ant-form-item-label,.ant-col-24.ant-form-item-label,.ant-col-xl-24.ant-form-item-label{padding:0 0 8px;line-height:1.5715;white-space:initial;text-align:left}.ant-form-vertical .ant-form-item-label>label,.ant-col-24.ant-form-item-label>label,.ant-col-xl-24.ant-form-item-label>label{margin:0}.ant-form-vertical .ant-form-item-label>label:after,.ant-col-24.ant-form-item-label>label:after,.ant-col-xl-24.ant-form-item-label>label:after{display:none}.ant-form-rtl.ant-form-vertical .ant-form-item-label,.ant-form-rtl.ant-col-24.ant-form-item-label,.ant-form-rtl.ant-col-xl-24.ant-form-item-label{text-align:right}@media (max-width: 575px){.ant-form-item .ant-form-item-label{padding:0 0 8px;line-height:1.5715;white-space:initial;text-align:left}.ant-form-item .ant-form-item-label>label{margin:0}.ant-form-item .ant-form-item-label>label:after{display:none}.ant-form-rtl.ant-form-item .ant-form-item-label{text-align:right}.ant-form .ant-form-item{flex-wrap:wrap}.ant-form .ant-form-item .ant-form-item-label,.ant-form .ant-form-item .ant-form-item-control{flex:0 0 100%;max-width:100%}.ant-col-xs-24.ant-form-item-label{padding:0 0 8px;line-height:1.5715;white-space:initial;text-align:left}.ant-col-xs-24.ant-form-item-label>label{margin:0}.ant-col-xs-24.ant-form-item-label>label:after{display:none}.ant-form-rtl.ant-col-xs-24.ant-form-item-label{text-align:right}}@media (max-width: 767px){.ant-col-sm-24.ant-form-item-label{padding:0 0 8px;line-height:1.5715;white-space:initial;text-align:left}.ant-col-sm-24.ant-form-item-label>label{margin:0}.ant-col-sm-24.ant-form-item-label>label:after{display:none}.ant-form-rtl.ant-col-sm-24.ant-form-item-label{text-align:right}}@media (max-width: 991px){.ant-col-md-24.ant-form-item-label{padding:0 0 8px;line-height:1.5715;white-space:initial;text-align:left}.ant-col-md-24.ant-form-item-label>label{margin:0}.ant-col-md-24.ant-form-item-label>label:after{display:none}.ant-form-rtl.ant-col-md-24.ant-form-item-label{text-align:right}}@media (max-width: 1199px){.ant-col-lg-24.ant-form-item-label{padding:0 0 8px;line-height:1.5715;white-space:initial;text-align:left}.ant-col-lg-24.ant-form-item-label>label{margin:0}.ant-col-lg-24.ant-form-item-label>label:after{display:none}.ant-form-rtl.ant-col-lg-24.ant-form-item-label{text-align:right}}@media (max-width: 1599px){.ant-col-xl-24.ant-form-item-label{padding:0 0 8px;line-height:1.5715;white-space:initial;text-align:left}.ant-col-xl-24.ant-form-item-label>label{margin:0}.ant-col-xl-24.ant-form-item-label>label:after{display:none}.ant-form-rtl.ant-col-xl-24.ant-form-item-label{text-align:right}}.ant-form-item-explain-error{color:#ff4d4f}.ant-form-item-explain-warning{color:#faad14}.ant-form-item-has-feedback .ant-switch{margin:2px 0 4px}.ant-form-item-has-warning .ant-form-item-split{color:#faad14}.ant-form-item-has-error .ant-form-item-split{color:#ff4d4f}.ant-form{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum"}.ant-form legend{display:block;width:100%;margin-bottom:20px;padding:0;color:#00000073;font-size:16px;line-height:inherit;border:0;border-bottom:1px solid #d9d9d9}.ant-form label{font-size:14px}.ant-form input[type=search]{box-sizing:border-box}.ant-form input[type=radio],.ant-form input[type=checkbox]{line-height:normal}.ant-form input[type=file]{display:block}.ant-form input[type=range]{display:block;width:100%}.ant-form select[multiple],.ant-form select[size]{height:auto}.ant-form input[type=file]:focus,.ant-form input[type=radio]:focus,.ant-form input[type=checkbox]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ant-form output{display:block;padding-top:15px;color:#000000d9;font-size:14px;line-height:1.5715}.ant-form .ant-form-text{display:inline-block;padding-right:8px}.ant-form-small .ant-form-item-label>label{height:24px}.ant-form-small .ant-form-item-control-input{min-height:24px}.ant-form-large .ant-form-item-label>label{height:40px}.ant-form-large .ant-form-item-control-input{min-height:40px}.ant-form-item{box-sizing:border-box;margin:0 0 24px;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";vertical-align:top;transition:margin-bottom .3s 17ms linear}.ant-form-item-with-help{margin-bottom:0;transition:none}.ant-form-item-hidden,.ant-form-item-hidden.ant-row{display:none}.ant-form-item-label{display:inline-block;flex-grow:0;overflow:hidden;white-space:nowrap;text-align:right;vertical-align:middle}.ant-form-item-label-left{text-align:left}.ant-form-item-label-wrap{overflow:unset;line-height:1.3215em;white-space:unset}.ant-form-item-label>label{position:relative;display:inline-flex;align-items:center;max-width:100%;height:32px;color:#000000d9;font-size:14px}.ant-form-item-label>label>.anticon{font-size:14px;vertical-align:top}.ant-form-item-label>label.ant-form-item-required:not(.ant-form-item-required-mark-optional):before{display:inline-block;margin-right:4px;color:#ff4d4f;font-size:14px;font-family:SimSun,sans-serif;line-height:1;content:"*"}.ant-form-hide-required-mark .ant-form-item-label>label.ant-form-item-required:not(.ant-form-item-required-mark-optional):before{display:none}.ant-form-item-label>label .ant-form-item-optional{display:inline-block;margin-left:4px;color:#00000073}.ant-form-hide-required-mark .ant-form-item-label>label .ant-form-item-optional{display:none}.ant-form-item-label>label .ant-form-item-tooltip{color:#00000073;cursor:help;writing-mode:horizontal-tb;margin-inline-start:4px}.ant-form-item-label>label:after{content:":";position:relative;top:-.5px;margin:0 8px 0 2px}.ant-form-item-label>label.ant-form-item-no-colon:after{content:" "}.ant-form-item-control{display:flex;flex-direction:column;flex-grow:1}.ant-form-item-control:first-child:not([class^=ant-col-]):not([class*=" ant-col-"]){width:100%}.ant-form-item-control-input{position:relative;display:flex;align-items:center;min-height:32px}.ant-form-item-control-input-content{flex:auto;max-width:100%}.ant-form-item-explain,.ant-form-item-extra{clear:both;color:#00000073;font-size:14px;line-height:1.5715;transition:color .3s cubic-bezier(.215,.61,.355,1)}.ant-form-item-explain-connected{height:0;min-height:0;opacity:0}.ant-form-item-extra{min-height:24px}.ant-form-item-with-help .ant-form-item-explain{height:auto;min-height:24px;opacity:1}.ant-form-item-feedback-icon{font-size:14px;text-align:center;visibility:visible;animation:zoomIn .3s cubic-bezier(.12,.4,.29,1.46);pointer-events:none}.ant-form-item-feedback-icon-success{color:#52c41a}.ant-form-item-feedback-icon-error{color:#ff4d4f}.ant-form-item-feedback-icon-warning{color:#faad14}.ant-form-item-feedback-icon-validating{color:#1890ff}.ant-show-help{transition:height .3s linear,min-height .3s linear,margin-bottom .3s cubic-bezier(.645,.045,.355,1),opacity .3s cubic-bezier(.645,.045,.355,1)}.ant-show-help-leave{min-height:24px}.ant-show-help-leave-active{min-height:0}.ant-show-help-item{overflow:hidden;transition:height .3s cubic-bezier(.645,.045,.355,1),opacity .3s cubic-bezier(.645,.045,.355,1),transform .3s cubic-bezier(.645,.045,.355,1)!important}.ant-show-help-item-appear,.ant-show-help-item-enter{transform:translateY(-5px);opacity:0}.ant-show-help-item-appear-active,.ant-show-help-item-enter-active{transform:translateY(0);opacity:1}.ant-show-help-item-leave-active{transform:translateY(-5px)}@keyframes diffZoomIn1{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}@keyframes diffZoomIn2{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}@keyframes diffZoomIn3{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.ant-form-rtl{direction:rtl}.ant-form-rtl .ant-form-item-label{text-align:left}.ant-form-rtl .ant-form-item-label>label.ant-form-item-required:before{margin-right:0;margin-left:4px}.ant-form-rtl .ant-form-item-label>label:after{margin:0 2px 0 8px}.ant-form-rtl .ant-form-item-label>label .ant-form-item-optional{margin-right:4px;margin-left:0}.ant-col-rtl .ant-form-item-control:first-child{width:100%}.ant-form-rtl .ant-form-item-has-feedback .ant-input{padding-right:11px;padding-left:24px}.ant-form-rtl .ant-form-item-has-feedback .ant-input-affix-wrapper .ant-input-suffix{padding-right:11px;padding-left:18px}.ant-form-rtl .ant-form-item-has-feedback .ant-input-affix-wrapper .ant-input,.ant-form-rtl .ant-form-item-has-feedback .ant-input-number-affix-wrapper .ant-input-number{padding:0}.ant-form-rtl .ant-form-item-has-feedback .ant-input-search:not(.ant-input-search-enter-button) .ant-input-suffix{right:auto;left:28px}.ant-form-rtl .ant-form-item-has-feedback .ant-input-number{padding-left:18px}.ant-form-rtl .ant-form-item-has-feedback>.ant-select .ant-select-arrow,.ant-form-rtl .ant-form-item-has-feedback>.ant-select .ant-select-clear,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-group-addon)>.ant-select .ant-select-arrow,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-group-addon)>.ant-select .ant-select-clear,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-number-group-addon)>.ant-select .ant-select-arrow,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-number-group-addon)>.ant-select .ant-select-clear{right:auto;left:32px}.ant-form-rtl .ant-form-item-has-feedback>.ant-select .ant-select-selection-selected-value,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-group-addon)>.ant-select .ant-select-selection-selected-value,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-number-group-addon)>.ant-select .ant-select-selection-selected-value{padding-right:0;padding-left:42px}.ant-form-rtl .ant-form-item-has-feedback .ant-cascader-picker-arrow{margin-right:0;margin-left:19px}.ant-form-rtl .ant-form-item-has-feedback .ant-cascader-picker-clear{right:auto;left:32px}.ant-form-rtl .ant-form-item-has-feedback .ant-picker,.ant-form-rtl .ant-form-item-has-feedback .ant-picker-large{padding-right:11px;padding-left:29.2px}.ant-form-rtl .ant-form-item-has-feedback .ant-picker-small{padding-right:7px;padding-left:25.2px}.ant-form-rtl .ant-form-item-has-feedback.ant-form-item-has-success .ant-form-item-children-icon,.ant-form-rtl .ant-form-item-has-feedback.ant-form-item-has-warning .ant-form-item-children-icon,.ant-form-rtl .ant-form-item-has-feedback.ant-form-item-has-error .ant-form-item-children-icon,.ant-form-rtl .ant-form-item-has-feedback.ant-form-item-is-validating .ant-form-item-children-icon{right:auto;left:0}.ant-form-rtl.ant-form-inline .ant-form-item{margin-right:0;margin-left:16px}nz-form-item.ant-form-item{transition:none}.ant-list{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative}.ant-list *{outline:none}.ant-list-pagination{margin-top:24px;text-align:right}.ant-list-pagination .ant-pagination-options{text-align:left}.ant-list-more{margin-top:12px;text-align:center}.ant-list-more button{padding-right:32px;padding-left:32px}.ant-list-spin{min-height:40px;text-align:center}.ant-list-empty-text{padding:16px;color:#00000040;font-size:14px;text-align:center}.ant-list-items{margin:0;padding:0;list-style:none}.ant-list-item{display:flex;align-items:center;justify-content:space-between;padding:12px 0;color:#000000d9}.ant-list-item-meta{display:flex;flex:1;align-items:flex-start;max-width:100%}.ant-list-item-meta-avatar{margin-right:16px}.ant-list-item-meta-content{flex:1 0;width:0;color:#000000d9}.ant-list-item-meta-title{margin-bottom:4px;color:#000000d9;font-size:14px;line-height:1.5715}.ant-list-item-meta-title>a{color:#000000d9;transition:all .3s}.ant-list-item-meta-title>a:hover{color:#1890ff}.ant-list-item-meta-description{color:#00000073;font-size:14px;line-height:1.5715}.ant-list-item-action{flex:0 0 auto;margin-left:48px;padding:0;font-size:0;list-style:none}.ant-list-item-action>li{position:relative;display:inline-block;padding:0 8px;color:#00000073;font-size:14px;line-height:1.5715;text-align:center}.ant-list-item-action>li:first-child{padding-left:0}.ant-list-item-action-split{position:absolute;top:50%;right:0;width:1px;height:14px;margin-top:-7px;background-color:#f0f0f0}.ant-list-header,.ant-list-footer{background:transparent}.ant-list-header,.ant-list-footer{padding-top:12px;padding-bottom:12px}.ant-list-empty{padding:16px 0;color:#00000073;font-size:12px;text-align:center}.ant-list-split .ant-list-item{border-bottom:1px solid #f0f0f0}.ant-list-split .ant-list-item:last-child{border-bottom:none}.ant-list-split .ant-list-header{border-bottom:1px solid #f0f0f0}.ant-list-split.ant-list-empty .ant-list-footer{border-top:1px solid #f0f0f0}.ant-list-loading .ant-list-spin-nested-loading{min-height:32px}.ant-list-split.ant-list-something-after-last-item .ant-spin-container>.ant-list-items>.ant-list-item:last-child{border-bottom:1px solid #f0f0f0}.ant-list-lg .ant-list-item{padding:16px 24px}.ant-list-sm .ant-list-item{padding:8px 16px}.ant-list-vertical .ant-list-item{align-items:initial}.ant-list-vertical .ant-list-item-main{display:block;flex:1}.ant-list-vertical .ant-list-item-extra{margin-left:40px}.ant-list-vertical .ant-list-item-meta{margin-bottom:16px}.ant-list-vertical .ant-list-item-meta-title{margin-bottom:12px;color:#000000d9;font-size:16px;line-height:24px}.ant-list-vertical .ant-list-item-action{margin-top:16px;margin-left:auto}.ant-list-vertical .ant-list-item-action>li{padding:0 16px}.ant-list-vertical .ant-list-item-action>li:first-child{padding-left:0}.ant-list-grid .ant-col>.ant-list-item{display:block;max-width:100%;margin-bottom:16px;padding-top:0;padding-bottom:0;border-bottom:none}.ant-list-item-no-flex{display:block}.ant-list:not(.ant-list-vertical) .ant-list-item-no-flex .ant-list-item-action{float:right}.ant-list-bordered{border:1px solid #d9d9d9;border-radius:2px}.ant-list-bordered .ant-list-header,.ant-list-bordered .ant-list-footer,.ant-list-bordered .ant-list-item{padding-right:24px;padding-left:24px}.ant-list-bordered .ant-list-pagination{margin:16px 24px}.ant-list-bordered.ant-list-sm .ant-list-item,.ant-list-bordered.ant-list-sm .ant-list-header,.ant-list-bordered.ant-list-sm .ant-list-footer{padding:8px 16px}.ant-list-bordered.ant-list-lg .ant-list-item,.ant-list-bordered.ant-list-lg .ant-list-header,.ant-list-bordered.ant-list-lg .ant-list-footer{padding:16px 24px}@media screen and (max-width: 768px){.ant-list-item-action,.ant-list-vertical .ant-list-item-extra{margin-left:24px}}@media screen and (max-width: 576px){.ant-list-item{flex-wrap:wrap}.ant-list-item-action{margin-left:12px}.ant-list-vertical .ant-list-item{flex-wrap:wrap-reverse}.ant-list-vertical .ant-list-item-main{min-width:220px}.ant-list-vertical .ant-list-item-extra{margin:auto auto 16px}}.ant-list-rtl{direction:rtl;text-align:right}.ant-list-rtl .ReactVirtualized__List .ant-list-item{direction:rtl}.ant-list-rtl .ant-list-pagination{text-align:left}.ant-list-rtl .ant-list-item-meta-avatar{margin-right:0;margin-left:16px}.ant-list-rtl .ant-list-item-action{margin-right:48px;margin-left:0}.ant-list.ant-list-rtl .ant-list-item-action>li:first-child{padding-right:0;padding-left:16px}.ant-list-rtl .ant-list-item-action-split{right:auto;left:0}.ant-list-rtl.ant-list-vertical .ant-list-item-extra{margin-right:40px;margin-left:0}.ant-list-rtl.ant-list-vertical .ant-list-item-action{margin-right:auto}.ant-list-rtl .ant-list-vertical .ant-list-item-action>li:first-child{padding-right:0;padding-left:16px}.ant-list-rtl .ant-list:not(.ant-list-vertical) .ant-list-item-no-flex .ant-list-item-action{float:left}@media screen and (max-width: 768px){.ant-list-rtl .ant-list-item-action,.ant-list-rtl .ant-list-vertical .ant-list-item-extra{margin-right:24px;margin-left:0}}@media screen and (max-width: 576px){.ant-list-rtl .ant-list-item-action{margin-right:22px;margin-left:0}.ant-list-rtl.ant-list-vertical .ant-list-item-extra{margin:auto auto 16px}}nz-list,nz-list nz-spin,nz-list-header,nz-list-footer,nz-list-pagination,nz-list-empty,nz-list-item-extra{display:block}.ant-menu-item-danger.ant-menu-item,.ant-menu-item-danger.ant-menu-item:hover,.ant-menu-item-danger.ant-menu-item-active{color:#ff4d4f}.ant-menu-item-danger.ant-menu-item:active{background:#fff1f0}.ant-menu-item-danger.ant-menu-item-selected{color:#ff4d4f}.ant-menu-item-danger.ant-menu-item-selected>a,.ant-menu-item-danger.ant-menu-item-selected>a:hover{color:#ff4d4f}.ant-menu:not(.ant-menu-horizontal) .ant-menu-item-danger.ant-menu-item-selected{background-color:#fff1f0}.ant-menu-inline .ant-menu-item-danger.ant-menu-item:after{border-right-color:#ff4d4f}.ant-menu-dark .ant-menu-item-danger.ant-menu-item,.ant-menu-dark .ant-menu-item-danger.ant-menu-item:hover,.ant-menu-dark .ant-menu-item-danger.ant-menu-item>a{color:#ff4d4f}.ant-menu-dark.ant-menu-dark:not(.ant-menu-horizontal) .ant-menu-item-danger.ant-menu-item-selected{color:#fff;background-color:#ff4d4f}.ant-menu{box-sizing:border-box;margin:0;font-variant:tabular-nums;line-height:1.5715;font-feature-settings:"tnum";padding:0;color:#000000d9;font-size:14px;line-height:0;text-align:left;list-style:none;background:#fff;outline:none;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d;transition:background .3s,width .3s cubic-bezier(.2,0,0,1) 0s}.ant-menu:before{display:table;content:""}.ant-menu:after{display:table;clear:both;content:""}.ant-menu.ant-menu-root:focus-visible{box-shadow:0 0 0 2px #bae7ff}.ant-menu ul,.ant-menu ol{margin:0;padding:0;list-style:none}.ant-menu-overflow{display:flex}.ant-menu-overflow-item{flex:none}.ant-menu-hidden,.ant-menu-submenu-hidden{display:none}.ant-menu-item-group-title{height:1.5715;padding:8px 16px;color:#00000073;font-size:14px;line-height:1.5715;transition:all .3s}.ant-menu-horizontal .ant-menu-submenu{transition:border-color .3s cubic-bezier(.645,.045,.355,1),background .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-submenu,.ant-menu-submenu-inline{transition:border-color .3s cubic-bezier(.645,.045,.355,1),background .3s cubic-bezier(.645,.045,.355,1),padding .15s cubic-bezier(.645,.045,.355,1)}.ant-menu-submenu-selected{color:#1890ff}.ant-menu-item:active,.ant-menu-submenu-title:active{background:#e6f7ff}.ant-menu-submenu .ant-menu-sub{cursor:initial;transition:background .3s cubic-bezier(.645,.045,.355,1),padding .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-title-content{transition:color .3s}.ant-menu-item a{color:#000000d9}.ant-menu-item a:hover{color:#1890ff}.ant-menu-item a:before{position:absolute;inset:0;background-color:transparent;content:""}.ant-menu-item>.ant-badge a{color:#000000d9}.ant-menu-item>.ant-badge a:hover{color:#1890ff}.ant-menu-item-divider{overflow:hidden;line-height:0;border-color:#f0f0f0;border-style:solid;border-width:1px 0 0}.ant-menu-item-divider-dashed{border-style:dashed}.ant-menu-horizontal .ant-menu-item,.ant-menu-horizontal .ant-menu-submenu{margin-top:-1px}.ant-menu-horizontal>.ant-menu-item:hover,.ant-menu-horizontal>.ant-menu-item-active,.ant-menu-horizontal>.ant-menu-submenu .ant-menu-submenu-title:hover{background-color:transparent}.ant-menu-item-selected,.ant-menu-item-selected a,.ant-menu-item-selected a:hover{color:#1890ff}.ant-menu:not(.ant-menu-horizontal) .ant-menu-item-selected{background-color:#e6f7ff}.ant-menu-inline,.ant-menu-vertical,.ant-menu-vertical-left{border-right:1px solid #f0f0f0}.ant-menu-vertical-right{border-left:1px solid #f0f0f0}.ant-menu-vertical.ant-menu-sub,.ant-menu-vertical-left.ant-menu-sub,.ant-menu-vertical-right.ant-menu-sub{min-width:160px;max-height:calc(100vh - 100px);padding:0;overflow:hidden;border-right:0}.ant-menu-vertical.ant-menu-sub:not([class*=-active]),.ant-menu-vertical-left.ant-menu-sub:not([class*=-active]),.ant-menu-vertical-right.ant-menu-sub:not([class*=-active]){overflow-x:hidden;overflow-y:auto}.ant-menu-vertical.ant-menu-sub .ant-menu-item,.ant-menu-vertical-left.ant-menu-sub .ant-menu-item,.ant-menu-vertical-right.ant-menu-sub .ant-menu-item{left:0;margin-left:0;border-right:0}.ant-menu-vertical.ant-menu-sub .ant-menu-item:after,.ant-menu-vertical-left.ant-menu-sub .ant-menu-item:after,.ant-menu-vertical-right.ant-menu-sub .ant-menu-item:after{border-right:0}.ant-menu-vertical.ant-menu-sub>.ant-menu-item,.ant-menu-vertical-left.ant-menu-sub>.ant-menu-item,.ant-menu-vertical-right.ant-menu-sub>.ant-menu-item,.ant-menu-vertical.ant-menu-sub>.ant-menu-submenu,.ant-menu-vertical-left.ant-menu-sub>.ant-menu-submenu,.ant-menu-vertical-right.ant-menu-sub>.ant-menu-submenu{transform-origin:0 0}.ant-menu-horizontal.ant-menu-sub{min-width:114px}.ant-menu-horizontal .ant-menu-item,.ant-menu-horizontal .ant-menu-submenu-title{transition:border-color .3s,background .3s}.ant-menu-item,.ant-menu-submenu-title{position:relative;display:block;margin:0;padding:0 20px;white-space:nowrap;cursor:pointer;transition:border-color .3s,background .3s,padding .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-item .ant-menu-item-icon,.ant-menu-submenu-title .ant-menu-item-icon,.ant-menu-item .anticon,.ant-menu-submenu-title .anticon{min-width:14px;font-size:14px;transition:font-size .15s cubic-bezier(.215,.61,.355,1),margin .3s cubic-bezier(.645,.045,.355,1),color .3s}.ant-menu-item .ant-menu-item-icon+span,.ant-menu-submenu-title .ant-menu-item-icon+span,.ant-menu-item .anticon+span,.ant-menu-submenu-title .anticon+span{margin-left:10px;opacity:1;transition:opacity .3s cubic-bezier(.645,.045,.355,1),margin .3s,color .3s}.ant-menu-item .ant-menu-item-icon.svg,.ant-menu-submenu-title .ant-menu-item-icon.svg{vertical-align:-.125em}.ant-menu-item.ant-menu-item-only-child>.anticon,.ant-menu-submenu-title.ant-menu-item-only-child>.anticon,.ant-menu-item.ant-menu-item-only-child>.ant-menu-item-icon,.ant-menu-submenu-title.ant-menu-item-only-child>.ant-menu-item-icon{margin-right:0}.ant-menu-item:focus-visible,.ant-menu-submenu-title:focus-visible{box-shadow:0 0 0 2px #bae7ff}.ant-menu>.ant-menu-item-divider{margin:1px 0;padding:0}.ant-menu-submenu-popup{position:absolute;z-index:1050;background:transparent;border-radius:2px;box-shadow:none;transform-origin:0 0}.ant-menu-submenu-popup:before{position:absolute;inset:-7px 0 0;z-index:-1;width:100%;height:100%;opacity:.0001;content:" "}.ant-menu-submenu-placement-rightTop:before{top:0;left:-7px}.ant-menu-submenu>.ant-menu{background-color:#fff;border-radius:2px}.ant-menu-submenu>.ant-menu-submenu-title:after{transition:transform .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-submenu-popup>.ant-menu{background-color:#fff}.ant-menu-submenu-expand-icon,.ant-menu-submenu-arrow{position:absolute;top:50%;right:16px;width:10px;color:#000000d9;transform:translateY(-50%);transition:transform .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-submenu-arrow:before,.ant-menu-submenu-arrow:after{position:absolute;width:6px;height:1.5px;background-color:currentcolor;border-radius:2px;transition:background .3s cubic-bezier(.645,.045,.355,1),transform .3s cubic-bezier(.645,.045,.355,1),top .3s cubic-bezier(.645,.045,.355,1),color .3s cubic-bezier(.645,.045,.355,1);content:""}.ant-menu-submenu-arrow:before{transform:rotate(45deg) translateY(-2.5px)}.ant-menu-submenu-arrow:after{transform:rotate(-45deg) translateY(2.5px)}.ant-menu-submenu:hover>.ant-menu-submenu-title>.ant-menu-submenu-expand-icon,.ant-menu-submenu:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow{color:#1890ff}.ant-menu-inline-collapsed .ant-menu-submenu-arrow:before,.ant-menu-submenu-inline .ant-menu-submenu-arrow:before{transform:rotate(-45deg) translate(2.5px)}.ant-menu-inline-collapsed .ant-menu-submenu-arrow:after,.ant-menu-submenu-inline .ant-menu-submenu-arrow:after{transform:rotate(45deg) translate(-2.5px)}.ant-menu-submenu-horizontal .ant-menu-submenu-arrow{display:none}.ant-menu-submenu-open.ant-menu-submenu-inline>.ant-menu-submenu-title>.ant-menu-submenu-arrow{transform:translateY(-2px)}.ant-menu-submenu-open.ant-menu-submenu-inline>.ant-menu-submenu-title>.ant-menu-submenu-arrow:after{transform:rotate(-45deg) translate(-2.5px)}.ant-menu-submenu-open.ant-menu-submenu-inline>.ant-menu-submenu-title>.ant-menu-submenu-arrow:before{transform:rotate(45deg) translate(2.5px)}.ant-menu-vertical .ant-menu-submenu-selected,.ant-menu-vertical-left .ant-menu-submenu-selected,.ant-menu-vertical-right .ant-menu-submenu-selected{color:#1890ff}.ant-menu-horizontal{line-height:46px;border:0;border-bottom:1px solid #f0f0f0;box-shadow:none}.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu{margin-top:-1px;margin-bottom:0;padding:0 20px}.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item:hover,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu:hover,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-active,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-active,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-open,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-open,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-selected,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-selected{color:#1890ff}.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item:hover:after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu:hover:after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-active:after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-active:after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-open:after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-open:after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-selected:after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-selected:after{border-bottom:2px solid #1890ff}.ant-menu-horizontal>.ant-menu-item,.ant-menu-horizontal>.ant-menu-submenu{position:relative;top:1px;display:inline-block;vertical-align:bottom}.ant-menu-horizontal>.ant-menu-item:after,.ant-menu-horizontal>.ant-menu-submenu:after{position:absolute;right:20px;bottom:0;left:20px;border-bottom:2px solid transparent;transition:border-color .3s cubic-bezier(.645,.045,.355,1);content:""}.ant-menu-horizontal>.ant-menu-submenu>.ant-menu-submenu-title{padding:0}.ant-menu-horizontal>.ant-menu-item a{color:#000000d9}.ant-menu-horizontal>.ant-menu-item a:hover{color:#1890ff}.ant-menu-horizontal>.ant-menu-item a:before{bottom:-2px}.ant-menu-horizontal>.ant-menu-item-selected a{color:#1890ff}.ant-menu-horizontal:after{display:block;clear:both;height:0;content:" "}.ant-menu-vertical .ant-menu-item,.ant-menu-vertical-left .ant-menu-item,.ant-menu-vertical-right .ant-menu-item,.ant-menu-inline .ant-menu-item{position:relative}.ant-menu-vertical .ant-menu-item:after,.ant-menu-vertical-left .ant-menu-item:after,.ant-menu-vertical-right .ant-menu-item:after,.ant-menu-inline .ant-menu-item:after{position:absolute;top:0;right:0;bottom:0;border-right:3px solid #1890ff;transform:scaleY(.0001);opacity:0;transition:transform .15s cubic-bezier(.215,.61,.355,1),opacity .15s cubic-bezier(.215,.61,.355,1);content:""}.ant-menu-vertical .ant-menu-item,.ant-menu-vertical-left .ant-menu-item,.ant-menu-vertical-right .ant-menu-item,.ant-menu-inline .ant-menu-item,.ant-menu-vertical .ant-menu-submenu-title,.ant-menu-vertical-left .ant-menu-submenu-title,.ant-menu-vertical-right .ant-menu-submenu-title,.ant-menu-inline .ant-menu-submenu-title{height:40px;margin-top:4px;margin-bottom:4px;padding:0 16px;overflow:hidden;line-height:40px;text-overflow:ellipsis}.ant-menu-vertical .ant-menu-submenu,.ant-menu-vertical-left .ant-menu-submenu,.ant-menu-vertical-right .ant-menu-submenu,.ant-menu-inline .ant-menu-submenu{padding-bottom:.02px}.ant-menu-vertical .ant-menu-item:not(:last-child),.ant-menu-vertical-left .ant-menu-item:not(:last-child),.ant-menu-vertical-right .ant-menu-item:not(:last-child),.ant-menu-inline .ant-menu-item:not(:last-child){margin-bottom:8px}.ant-menu-vertical>.ant-menu-item,.ant-menu-vertical-left>.ant-menu-item,.ant-menu-vertical-right>.ant-menu-item,.ant-menu-inline>.ant-menu-item,.ant-menu-vertical>.ant-menu-submenu>.ant-menu-submenu-title,.ant-menu-vertical-left>.ant-menu-submenu>.ant-menu-submenu-title,.ant-menu-vertical-right>.ant-menu-submenu>.ant-menu-submenu-title,.ant-menu-inline>.ant-menu-submenu>.ant-menu-submenu-title{height:40px;line-height:40px}.ant-menu-vertical .ant-menu-item-group-list .ant-menu-submenu-title,.ant-menu-vertical .ant-menu-submenu-title{padding-right:34px}.ant-menu-inline{width:100%}.ant-menu-inline .ant-menu-selected:after,.ant-menu-inline .ant-menu-item-selected:after{transform:scaleY(1);opacity:1;transition:transform .15s cubic-bezier(.645,.045,.355,1),opacity .15s cubic-bezier(.645,.045,.355,1)}.ant-menu-inline .ant-menu-item,.ant-menu-inline .ant-menu-submenu-title{width:calc(100% + 1px)}.ant-menu-inline .ant-menu-item-group-list .ant-menu-submenu-title,.ant-menu-inline .ant-menu-submenu-title{padding-right:34px}.ant-menu-inline.ant-menu-root .ant-menu-item,.ant-menu-inline.ant-menu-root .ant-menu-submenu-title{display:flex;align-items:center;transition:border-color .3s,background .3s,padding .1s cubic-bezier(.215,.61,.355,1)}.ant-menu-inline.ant-menu-root .ant-menu-item>.ant-menu-title-content,.ant-menu-inline.ant-menu-root .ant-menu-submenu-title>.ant-menu-title-content{flex:auto;min-width:0;overflow:hidden;text-overflow:ellipsis}.ant-menu-inline.ant-menu-root .ant-menu-item>*,.ant-menu-inline.ant-menu-root .ant-menu-submenu-title>*{flex:none}.ant-menu.ant-menu-inline-collapsed{width:80px}.ant-menu.ant-menu-inline-collapsed>.ant-menu-item,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title{left:0;padding:0 calc(50% - 8px);text-overflow:clip}.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .ant-menu-submenu-arrow,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .ant-menu-submenu-arrow,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-submenu-arrow{opacity:0}.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .anticon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .anticon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .anticon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .anticon{margin:0;font-size:16px;line-height:40px}.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .ant-menu-item-icon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .ant-menu-item-icon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-item-icon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-item-icon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .anticon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .anticon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .anticon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .anticon+span{display:inline-block;opacity:0}.ant-menu.ant-menu-inline-collapsed .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed .anticon{display:inline-block}.ant-menu.ant-menu-inline-collapsed-tooltip{pointer-events:none}.ant-menu.ant-menu-inline-collapsed-tooltip .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed-tooltip .anticon{display:none}.ant-menu.ant-menu-inline-collapsed-tooltip a{color:#ffffffd9}.ant-menu.ant-menu-inline-collapsed .ant-menu-item-group-title{padding-right:4px;padding-left:4px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-menu-item-group-list{margin:0;padding:0}.ant-menu-item-group-list .ant-menu-item,.ant-menu-item-group-list .ant-menu-submenu-title{padding:0 16px 0 28px}.ant-menu-root.ant-menu-vertical,.ant-menu-root.ant-menu-vertical-left,.ant-menu-root.ant-menu-vertical-right,.ant-menu-root.ant-menu-inline{box-shadow:none}.ant-menu-root.ant-menu-inline-collapsed .ant-menu-item>.ant-menu-inline-collapsed-noicon,.ant-menu-root.ant-menu-inline-collapsed .ant-menu-submenu .ant-menu-submenu-title>.ant-menu-inline-collapsed-noicon{font-size:16px;text-align:center}.ant-menu-sub.ant-menu-inline{padding:0;background:#fafafa;border:0;border-radius:0;box-shadow:none}.ant-menu-sub.ant-menu-inline>.ant-menu-item,.ant-menu-sub.ant-menu-inline>.ant-menu-submenu>.ant-menu-submenu-title{height:40px;line-height:40px;list-style-position:inside;list-style-type:disc}.ant-menu-sub.ant-menu-inline .ant-menu-item-group-title{padding-left:32px}.ant-menu-item-disabled,.ant-menu-submenu-disabled{color:#00000040!important;background:none;cursor:not-allowed}.ant-menu-item-disabled:after,.ant-menu-submenu-disabled:after{border-color:transparent!important}.ant-menu-item-disabled a,.ant-menu-submenu-disabled a{color:#00000040!important;pointer-events:none}.ant-menu-item-disabled>.ant-menu-submenu-title,.ant-menu-submenu-disabled>.ant-menu-submenu-title{color:#00000040!important;cursor:not-allowed}.ant-menu-item-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow:before,.ant-menu-submenu-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow:before,.ant-menu-item-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow:after,.ant-menu-submenu-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow:after{background:rgba(0,0,0,.25)!important}.ant-layout-header .ant-menu{line-height:inherit}.ant-menu-inline-collapsed-tooltip a,.ant-menu-inline-collapsed-tooltip a:hover{color:#fff}.ant-menu-light .ant-menu-item:hover,.ant-menu-light .ant-menu-item-active,.ant-menu-light .ant-menu:not(.ant-menu-inline) .ant-menu-submenu-open,.ant-menu-light .ant-menu-submenu-active,.ant-menu-light .ant-menu-submenu-title:hover{color:#1890ff}.ant-menu.ant-menu-root:focus-visible{box-shadow:0 0 0 2px #096dd9}.ant-menu-dark .ant-menu-item:focus-visible,.ant-menu-dark .ant-menu-submenu-title:focus-visible{box-shadow:0 0 0 2px #096dd9}.ant-menu.ant-menu-dark,.ant-menu-dark .ant-menu-sub,.ant-menu.ant-menu-dark .ant-menu-sub{color:#ffffffa6;background:#001529}.ant-menu.ant-menu-dark .ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow{opacity:.45;transition:all .3s}.ant-menu.ant-menu-dark .ant-menu-submenu-title .ant-menu-submenu-arrow:after,.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow:after,.ant-menu.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow:after,.ant-menu.ant-menu-dark .ant-menu-submenu-title .ant-menu-submenu-arrow:before,.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow:before,.ant-menu.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow:before{background:#fff}.ant-menu-dark.ant-menu-submenu-popup{background:transparent}.ant-menu-dark .ant-menu-inline.ant-menu-sub{background:#000c17}.ant-menu-dark.ant-menu-horizontal{border-bottom:0}.ant-menu-dark.ant-menu-horizontal>.ant-menu-item,.ant-menu-dark.ant-menu-horizontal>.ant-menu-submenu{top:0;margin-top:0;padding:0 20px;border-color:#001529;border-bottom:0}.ant-menu-dark.ant-menu-horizontal>.ant-menu-item:hover{background-color:#1890ff}.ant-menu-dark.ant-menu-horizontal>.ant-menu-item>a:before{bottom:0}.ant-menu-dark .ant-menu-item,.ant-menu-dark .ant-menu-item-group-title,.ant-menu-dark .ant-menu-item>a,.ant-menu-dark .ant-menu-item>span>a{color:#ffffffa6}.ant-menu-dark.ant-menu-inline,.ant-menu-dark.ant-menu-vertical,.ant-menu-dark.ant-menu-vertical-left,.ant-menu-dark.ant-menu-vertical-right{border-right:0}.ant-menu-dark.ant-menu-inline .ant-menu-item,.ant-menu-dark.ant-menu-vertical .ant-menu-item,.ant-menu-dark.ant-menu-vertical-left .ant-menu-item,.ant-menu-dark.ant-menu-vertical-right .ant-menu-item{left:0;margin-left:0;border-right:0}.ant-menu-dark.ant-menu-inline .ant-menu-item:after,.ant-menu-dark.ant-menu-vertical .ant-menu-item:after,.ant-menu-dark.ant-menu-vertical-left .ant-menu-item:after,.ant-menu-dark.ant-menu-vertical-right .ant-menu-item:after{border-right:0}.ant-menu-dark.ant-menu-inline .ant-menu-item,.ant-menu-dark.ant-menu-inline .ant-menu-submenu-title{width:100%}.ant-menu-dark .ant-menu-item:hover,.ant-menu-dark .ant-menu-item-active,.ant-menu-dark .ant-menu-submenu-active,.ant-menu-dark .ant-menu-submenu-open,.ant-menu-dark .ant-menu-submenu-selected,.ant-menu-dark .ant-menu-submenu-title:hover{color:#fff;background-color:transparent}.ant-menu-dark .ant-menu-item:hover>a,.ant-menu-dark .ant-menu-item-active>a,.ant-menu-dark .ant-menu-submenu-active>a,.ant-menu-dark .ant-menu-submenu-open>a,.ant-menu-dark .ant-menu-submenu-selected>a,.ant-menu-dark .ant-menu-submenu-title:hover>a,.ant-menu-dark .ant-menu-item:hover>span>a,.ant-menu-dark .ant-menu-item-active>span>a,.ant-menu-dark .ant-menu-submenu-active>span>a,.ant-menu-dark .ant-menu-submenu-open>span>a,.ant-menu-dark .ant-menu-submenu-selected>span>a,.ant-menu-dark .ant-menu-submenu-title:hover>span>a{color:#fff}.ant-menu-dark .ant-menu-item:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-item-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-open>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-selected>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-title:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow{opacity:1}.ant-menu-dark .ant-menu-item:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow:after,.ant-menu-dark .ant-menu-item-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow:after,.ant-menu-dark .ant-menu-submenu-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow:after,.ant-menu-dark .ant-menu-submenu-open>.ant-menu-submenu-title>.ant-menu-submenu-arrow:after,.ant-menu-dark .ant-menu-submenu-selected>.ant-menu-submenu-title>.ant-menu-submenu-arrow:after,.ant-menu-dark .ant-menu-submenu-title:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow:after,.ant-menu-dark .ant-menu-item:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow:before,.ant-menu-dark .ant-menu-item-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow:before,.ant-menu-dark .ant-menu-submenu-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow:before,.ant-menu-dark .ant-menu-submenu-open>.ant-menu-submenu-title>.ant-menu-submenu-arrow:before,.ant-menu-dark .ant-menu-submenu-selected>.ant-menu-submenu-title>.ant-menu-submenu-arrow:before,.ant-menu-dark .ant-menu-submenu-title:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow:before{background:#fff}.ant-menu-dark .ant-menu-item:hover{background-color:transparent}.ant-menu-dark.ant-menu-dark:not(.ant-menu-horizontal) .ant-menu-item-selected{background-color:#1890ff}.ant-menu-dark .ant-menu-item-selected{color:#fff;border-right:0}.ant-menu-dark .ant-menu-item-selected:after{border-right:0}.ant-menu-dark .ant-menu-item-selected>a,.ant-menu-dark .ant-menu-item-selected>span>a,.ant-menu-dark .ant-menu-item-selected>a:hover,.ant-menu-dark .ant-menu-item-selected>span>a:hover{color:#fff}.ant-menu-dark .ant-menu-item-selected .ant-menu-item-icon,.ant-menu-dark .ant-menu-item-selected .anticon{color:#fff}.ant-menu-dark .ant-menu-item-selected .ant-menu-item-icon+span,.ant-menu-dark .ant-menu-item-selected .anticon+span{color:#fff}.ant-menu.ant-menu-dark .ant-menu-item-selected,.ant-menu-submenu-popup.ant-menu-dark .ant-menu-item-selected{background-color:#1890ff}.ant-menu-dark .ant-menu-item-disabled,.ant-menu-dark .ant-menu-submenu-disabled,.ant-menu-dark .ant-menu-item-disabled>a,.ant-menu-dark .ant-menu-submenu-disabled>a,.ant-menu-dark .ant-menu-item-disabled>span>a,.ant-menu-dark .ant-menu-submenu-disabled>span>a{color:#ffffff59!important;opacity:.8}.ant-menu-dark .ant-menu-item-disabled>.ant-menu-submenu-title,.ant-menu-dark .ant-menu-submenu-disabled>.ant-menu-submenu-title{color:#ffffff59!important}.ant-menu-dark .ant-menu-item-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow:before,.ant-menu-dark .ant-menu-submenu-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow:before,.ant-menu-dark .ant-menu-item-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow:after,.ant-menu-dark .ant-menu-submenu-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow:after{background:rgba(255,255,255,.35)!important}.ant-menu.ant-menu-rtl{direction:rtl;text-align:right}.ant-menu-rtl .ant-menu-item-group-title{text-align:right}.ant-menu-rtl.ant-menu-inline,.ant-menu-rtl.ant-menu-vertical{border-right:none;border-left:1px solid #f0f0f0}.ant-menu-rtl.ant-menu-dark.ant-menu-inline,.ant-menu-rtl.ant-menu-dark.ant-menu-vertical{border-left:none}.ant-menu-rtl.ant-menu-vertical.ant-menu-sub>.ant-menu-item,.ant-menu-rtl.ant-menu-vertical-left.ant-menu-sub>.ant-menu-item,.ant-menu-rtl.ant-menu-vertical-right.ant-menu-sub>.ant-menu-item,.ant-menu-rtl.ant-menu-vertical.ant-menu-sub>.ant-menu-submenu,.ant-menu-rtl.ant-menu-vertical-left.ant-menu-sub>.ant-menu-submenu,.ant-menu-rtl.ant-menu-vertical-right.ant-menu-sub>.ant-menu-submenu{transform-origin:top right}.ant-menu-rtl .ant-menu-item .ant-menu-item-icon,.ant-menu-rtl .ant-menu-submenu-title .ant-menu-item-icon,.ant-menu-rtl .ant-menu-item .anticon,.ant-menu-rtl .ant-menu-submenu-title .anticon{margin-right:auto;margin-left:10px}.ant-menu-rtl .ant-menu-item.ant-menu-item-only-child>.ant-menu-item-icon,.ant-menu-rtl .ant-menu-submenu-title.ant-menu-item-only-child>.ant-menu-item-icon,.ant-menu-rtl .ant-menu-item.ant-menu-item-only-child>.anticon,.ant-menu-rtl .ant-menu-submenu-title.ant-menu-item-only-child>.anticon{margin-left:0}.ant-menu-submenu-rtl.ant-menu-submenu-popup{transform-origin:100% 0}.ant-menu-rtl .ant-menu-submenu-vertical>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu-rtl .ant-menu-submenu-vertical-left>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu-rtl .ant-menu-submenu-vertical-right>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu-rtl .ant-menu-submenu-inline>.ant-menu-submenu-title .ant-menu-submenu-arrow{right:auto;left:16px}.ant-menu-rtl .ant-menu-submenu-vertical>.ant-menu-submenu-title .ant-menu-submenu-arrow:before,.ant-menu-rtl .ant-menu-submenu-vertical-left>.ant-menu-submenu-title .ant-menu-submenu-arrow:before,.ant-menu-rtl .ant-menu-submenu-vertical-right>.ant-menu-submenu-title .ant-menu-submenu-arrow:before{transform:rotate(-45deg) translateY(-2px)}.ant-menu-rtl .ant-menu-submenu-vertical>.ant-menu-submenu-title .ant-menu-submenu-arrow:after,.ant-menu-rtl .ant-menu-submenu-vertical-left>.ant-menu-submenu-title .ant-menu-submenu-arrow:after,.ant-menu-rtl .ant-menu-submenu-vertical-right>.ant-menu-submenu-title .ant-menu-submenu-arrow:after{transform:rotate(45deg) translateY(2px)}.ant-menu-rtl.ant-menu-vertical .ant-menu-item:after,.ant-menu-rtl.ant-menu-vertical-left .ant-menu-item:after,.ant-menu-rtl.ant-menu-vertical-right .ant-menu-item:after,.ant-menu-rtl.ant-menu-inline .ant-menu-item:after{right:auto;left:0}.ant-menu-rtl.ant-menu-vertical .ant-menu-item,.ant-menu-rtl.ant-menu-vertical-left .ant-menu-item,.ant-menu-rtl.ant-menu-vertical-right .ant-menu-item,.ant-menu-rtl.ant-menu-inline .ant-menu-item,.ant-menu-rtl.ant-menu-vertical .ant-menu-submenu-title,.ant-menu-rtl.ant-menu-vertical-left .ant-menu-submenu-title,.ant-menu-rtl.ant-menu-vertical-right .ant-menu-submenu-title,.ant-menu-rtl.ant-menu-inline .ant-menu-submenu-title{text-align:right}.ant-menu-rtl.ant-menu-inline .ant-menu-submenu-title{padding-right:0;padding-left:34px}.ant-menu-rtl.ant-menu-vertical .ant-menu-submenu-title{padding-right:16px;padding-left:34px}.ant-menu-rtl.ant-menu-inline-collapsed.ant-menu-vertical .ant-menu-submenu-title{padding:0 calc(50% - 8px)}.ant-menu-rtl .ant-menu-item-group-list .ant-menu-item,.ant-menu-rtl .ant-menu-item-group-list .ant-menu-submenu-title{padding:0 28px 0 16px}.ant-menu-sub.ant-menu-inline{border:0}.ant-menu-rtl.ant-menu-sub.ant-menu-inline .ant-menu-item-group-title{padding-right:32px;padding-left:0}.ant-menu-submenu.ant-menu-submenu-placement-bottom{top:6px;position:relative}.ant-menu-submenu.ant-menu-submenu-placement-right{left:4px;position:relative}.ant-menu-submenu.ant-menu-submenu-placement-right.ant-menu-submenu-rtl{left:auto;right:4px}.ant-menu-submenu.ant-menu-submenu-placement-left{right:4px;position:relative}.ant-menu-submenu.ant-menu-submenu-placement-left.ant-menu-submenu-rtl{right:auto;left:4px}.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions,.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:hover{background:#fff;border-color:#ff4d4f}.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:focus,.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions-focused{border-color:#ff7875;box-shadow:0 0 0 2px #ff4d4f33;border-right-width:1px;outline:0}.ant-mentions-status-error .ant-input-prefix{color:#ff4d4f}.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions,.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:hover{background:#fff;border-color:#faad14}.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:focus,.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions-focused{border-color:#ffc53d;box-shadow:0 0 0 2px #faad1433;border-right-width:1px;outline:0}.ant-mentions-status-warning .ant-input-prefix{color:#faad14}.ant-mentions{box-sizing:border-box;margin:0;font-variant:tabular-nums;list-style:none;font-feature-settings:"tnum";width:100%;min-width:0;color:#000000d9;font-size:14px;background-color:#fff;background-image:none;border:1px solid #d9d9d9;border-radius:2px;transition:all .3s;position:relative;display:inline-block;height:auto;padding:0;overflow:hidden;line-height:1.5715;white-space:pre-wrap;vertical-align:bottom}.ant-mentions::placeholder{color:#bfbfbf;-webkit-user-select:none;user-select:none}.ant-mentions:placeholder-shown{text-overflow:ellipsis}.ant-mentions:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-mentions:hover{border-right-width:0;border-left-width:1px!important}.ant-mentions:focus,.ant-mentions-focused{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;border-right-width:1px;outline:0}.ant-input-rtl .ant-mentions:focus,.ant-input-rtl .ant-mentions-focused{border-right-width:0;border-left-width:1px!important}.ant-mentions-disabled{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;color:#00000040;pointer-events:none}.ant-mentions-disabled:hover{border-color:#d9d9d9;border-right-width:1px}.ant-mentions[disabled]{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;color:#00000040;pointer-events:none}.ant-mentions[disabled]:hover{border-color:#d9d9d9;border-right-width:1px}.ant-mentions-borderless,.ant-mentions-borderless:hover,.ant-mentions-borderless:focus,.ant-mentions-borderless-focused,.ant-mentions-borderless-disabled,.ant-mentions-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-mentions{max-width:100%;height:auto;min-height:32px;line-height:1.5715;vertical-align:bottom;transition:all .3s,height 0s}.ant-mentions-lg{padding:6.5px 11px;font-size:16px}.ant-mentions-sm{padding:0 7px}.ant-mentions-stepperless[type=number]{-moz-appearance:textfield}.ant-mentions-stepperless[type=number]::-webkit-inner-spin-button,.ant-mentions-stepperless[type=number] ::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ant-mentions-disabled>textarea{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;color:#00000040;pointer-events:none}.ant-mentions-disabled>textarea:hover{border-color:#d9d9d9;border-right-width:1px}.ant-mentions-focused{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;border-right-width:1px;outline:0}.ant-input-rtl .ant-mentions-focused{border-right-width:0;border-left-width:1px!important}.ant-mentions>textarea,.ant-mentions-measure{min-height:30px;margin:0;padding:4px 11px;overflow:inherit;overflow-x:hidden;overflow-y:auto;font-weight:inherit;font-size:inherit;font-family:inherit;font-style:inherit;font-variant:inherit;font-size-adjust:inherit;font-stretch:inherit;line-height:inherit;direction:inherit;letter-spacing:inherit;white-space:inherit;text-align:inherit;vertical-align:top;word-wrap:break-word;word-break:inherit;tab-size:inherit}.ant-mentions>textarea{width:100%;border:none;outline:none;resize:none}.ant-mentions>textarea::placeholder{color:#bfbfbf;-webkit-user-select:none;user-select:none}.ant-mentions>textarea:placeholder-shown{text-overflow:ellipsis}.ant-mentions-measure{position:absolute;inset:0;z-index:-1;color:transparent;pointer-events:none}.ant-mentions-measure>span{display:inline-block;min-height:1em}.ant-mentions-dropdown{margin:0;padding:0;color:#000000d9;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:absolute;top:-9999px;left:-9999px;z-index:1050;box-sizing:border-box;font-size:14px;font-variant:initial;background-color:#fff;border-radius:2px;outline:none;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d}.ant-mentions-dropdown-hidden{display:none}.ant-mentions-dropdown-menu{max-height:250px;margin-bottom:0;padding-left:0;overflow:auto;list-style:none;outline:none}.ant-mentions-dropdown-menu-item{position:relative;display:block;min-width:100px;padding:5px 12px;overflow:hidden;color:#000000d9;font-weight:400;line-height:1.5715;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:background .3s ease}.ant-mentions-dropdown-menu-item:hover{background-color:#f5f5f5}.ant-mentions-dropdown-menu-item:first-child{border-radius:2px 2px 0 0}.ant-mentions-dropdown-menu-item:last-child{border-radius:0 0 2px 2px}.ant-mentions-dropdown-menu-item-disabled{color:#00000040;cursor:not-allowed}.ant-mentions-dropdown-menu-item-disabled:hover{color:#00000040;background-color:#fff;cursor:not-allowed}.ant-mentions-dropdown-menu-item-selected{color:#000000d9;font-weight:600;background-color:#fafafa}.ant-mentions-dropdown-menu-item-active{background-color:#f5f5f5}.ant-mentions-suffix{position:absolute;top:0;right:11px;bottom:0;z-index:1;display:inline-flex;align-items:center;margin:auto}.ant-mentions-rtl{direction:rtl}.ant-mentions-dropdown{top:100%;left:12px;position:relative;width:100%;margin-top:8px;margin-bottom:4px}.ant-mentions:focus-within{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;border-right-width:1px;outline:0}.ant-input-rtl .ant-mentions:focus-within{border-right-width:0;border-left-width:1px!important}.ant-mentions.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:focus-within{border-color:#ff7875;box-shadow:0 0 0 2px #ff4d4f33;border-right-width:1px;outline:0}.ant-mentions.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:focus-within{border-color:#ffc53d;box-shadow:0 0 0 2px #faad1433;border-right-width:1px;outline:0}.ant-message{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:fixed;top:8px;left:0;z-index:1010;width:100%;pointer-events:none}.ant-message-notice{padding:8px;text-align:center}.ant-message-notice-content{display:inline-block;padding:10px 16px;background:#fff;border-radius:2px;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d;pointer-events:all}.ant-message-success .anticon{color:#52c41a}.ant-message-error .anticon{color:#ff4d4f}.ant-message-warning .anticon{color:#faad14}.ant-message-info .anticon,.ant-message-loading .anticon{color:#1890ff}.ant-message .anticon{position:relative;top:1px;margin-right:8px;font-size:16px}.ant-message-notice.ant-move-up-leave.ant-move-up-leave-active{animation-name:MessageMoveOut;animation-duration:.3s}@keyframes MessageMoveOut{0%{max-height:150px;padding:8px;opacity:1}to{max-height:0;padding:0;opacity:0}}.ant-message-rtl,.ant-message-rtl span{direction:rtl}.ant-message-rtl .anticon{margin-right:0;margin-left:8px}.ant-modal{box-sizing:border-box;padding:0 0 24px;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";pointer-events:none;position:relative;top:100px;width:auto;max-width:calc(100vw - 32px);margin:0 auto}.ant-modal.ant-zoom-enter,.ant-modal.ant-zoom-appear{transform:none;opacity:0;animation-duration:.3s;-webkit-user-select:none;user-select:none}.ant-modal-mask{position:fixed;inset:0;z-index:1000;height:100%;background-color:#00000073}.ant-modal-mask-hidden{display:none}.ant-modal-wrap{position:fixed;inset:0;overflow:auto;outline:0;-webkit-overflow-scrolling:touch}.ant-modal-wrap{z-index:1000}.ant-modal-title{margin:0;color:#000000d9;font-weight:500;font-size:16px;line-height:22px;word-wrap:break-word}.ant-modal-content{position:relative;background-color:#fff;background-clip:padding-box;border:0;border-radius:2px;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d;pointer-events:auto}.ant-modal-close{position:absolute;top:0;right:0;z-index:10;padding:0;color:#00000073;font-weight:700;line-height:1;text-decoration:none;background:transparent;border:0;outline:0;cursor:pointer;transition:color .3s}.ant-modal-close-x{display:block;width:56px;height:56px;font-size:16px;font-style:normal;line-height:56px;text-align:center;text-transform:none;text-rendering:auto}.ant-modal-close:focus,.ant-modal-close:hover{color:#000000bf;text-decoration:none}.ant-modal-header{padding:16px 24px;color:#000000d9;background:#fff;border-bottom:1px solid #f0f0f0;border-radius:2px 2px 0 0}.ant-modal-body{padding:24px;font-size:14px;line-height:1.5715;word-wrap:break-word}.ant-modal-footer{padding:10px 16px;text-align:right;background:transparent;border-top:1px solid #f0f0f0;border-radius:0 0 2px 2px}.ant-modal-footer .ant-btn+.ant-btn:not(.ant-dropdown-trigger){margin-bottom:0;margin-left:8px}.ant-modal-open{overflow:hidden}.ant-modal-centered{text-align:center}.ant-modal-centered:before{display:inline-block;width:0;height:100%;vertical-align:middle;content:""}.ant-modal-centered .ant-modal{top:0;display:inline-block;padding-bottom:0;text-align:left;vertical-align:middle}@media (max-width: 767px){.ant-modal{max-width:calc(100vw - 16px);margin:8px auto}.ant-modal-centered .ant-modal{flex:1}}.ant-modal-confirm .ant-modal-header{display:none}.ant-modal-confirm .ant-modal-body{padding:32px 32px 24px}.ant-modal-confirm-body-wrapper:before{display:table;content:""}.ant-modal-confirm-body-wrapper:after{display:table;clear:both;content:""}.ant-modal-confirm-body .ant-modal-confirm-title{display:block;overflow:hidden;color:#000000d9;font-weight:500;font-size:16px;line-height:1.4}.ant-modal-confirm-body .ant-modal-confirm-content{margin-top:8px;color:#000000d9;font-size:14px}.ant-modal-confirm-body>.anticon{float:left;margin-right:16px;font-size:22px}.ant-modal-confirm-body>.anticon+.ant-modal-confirm-title+.ant-modal-confirm-content{margin-left:38px}.ant-modal-confirm .ant-modal-confirm-btns{float:right;margin-top:24px}.ant-modal-confirm .ant-modal-confirm-btns .ant-btn+.ant-btn{margin-bottom:0;margin-left:8px}.ant-modal-confirm-error .ant-modal-confirm-body>.anticon{color:#ff4d4f}.ant-modal-confirm-warning .ant-modal-confirm-body>.anticon,.ant-modal-confirm-confirm .ant-modal-confirm-body>.anticon{color:#faad14}.ant-modal-confirm-info .ant-modal-confirm-body>.anticon{color:#1890ff}.ant-modal-confirm-success .ant-modal-confirm-body>.anticon{color:#52c41a}.ant-modal-wrap-rtl{direction:rtl}.ant-modal-wrap-rtl .ant-modal-close{right:initial;left:0}.ant-modal-wrap-rtl .ant-modal-footer{text-align:left}.ant-modal-wrap-rtl .ant-modal-footer .ant-btn+.ant-btn{margin-right:8px;margin-left:0}.ant-modal-wrap-rtl .ant-modal-confirm-body{direction:rtl}.ant-modal-wrap-rtl .ant-modal-confirm-body>.anticon{float:right;margin-right:0;margin-left:16px}.ant-modal-wrap-rtl .ant-modal-confirm-body>.anticon+.ant-modal-confirm-title+.ant-modal-confirm-content{margin-right:38px;margin-left:0}.ant-modal-wrap-rtl .ant-modal-confirm-btns{float:left}.ant-modal-wrap-rtl .ant-modal-confirm-btns .ant-btn+.ant-btn{margin-right:8px;margin-left:0}.ant-modal-wrap-rtl.ant-modal-centered .ant-modal{text-align:right}.ant-notification{box-sizing:border-box;margin:0 24px 0 0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:fixed;z-index:1010}.ant-notification-close-icon{font-size:14px;cursor:pointer}.ant-notification-hook-holder{position:relative}.ant-notification-notice{position:relative;width:384px;max-width:calc(100vw - 48px);margin-bottom:16px;margin-left:auto;padding:16px 24px;overflow:hidden;line-height:1.5715;word-wrap:break-word;background:#fff;border-radius:2px;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d}.ant-notification-top .ant-notification-notice,.ant-notification-bottom .ant-notification-notice{margin-right:auto;margin-left:auto}.ant-notification-topLeft .ant-notification-notice,.ant-notification-bottomLeft .ant-notification-notice{margin-right:auto;margin-left:0}.ant-notification-notice-message{margin-bottom:8px;color:#000000d9;font-size:16px;line-height:24px}.ant-notification-notice-message-single-line-auto-margin{display:block;width:calc(264px - 100%);max-width:4px;background-color:transparent;pointer-events:none}.ant-notification-notice-message-single-line-auto-margin:before{display:block;content:""}.ant-notification-notice-description{font-size:14px}.ant-notification-notice-closable .ant-notification-notice-message{padding-right:24px}.ant-notification-notice-with-icon .ant-notification-notice-message{margin-bottom:4px;margin-left:48px;font-size:16px}.ant-notification-notice-with-icon .ant-notification-notice-description{margin-left:48px;font-size:14px}.ant-notification-notice-icon{position:absolute;margin-left:4px;font-size:24px;line-height:24px}.anticon.ant-notification-notice-icon-success{color:#52c41a}.anticon.ant-notification-notice-icon-info{color:#1890ff}.anticon.ant-notification-notice-icon-warning{color:#faad14}.anticon.ant-notification-notice-icon-error{color:#ff4d4f}.ant-notification-notice-close{position:absolute;top:16px;right:22px;color:#00000073;outline:none}.ant-notification-notice-close:hover{color:#000000ab}.ant-notification-notice-btn{float:right;margin-top:16px}.ant-notification .notification-fade-effect{animation-duration:.24s;animation-timing-function:cubic-bezier(.645,.045,.355,1);animation-fill-mode:both}.ant-notification-fade-enter,.ant-notification-fade-appear{animation-duration:.24s;animation-timing-function:cubic-bezier(.645,.045,.355,1);animation-fill-mode:both;opacity:0;animation-play-state:paused}.ant-notification-fade-leave{animation-duration:.24s;animation-timing-function:cubic-bezier(.645,.045,.355,1);animation-fill-mode:both;animation-duration:.2s;animation-play-state:paused}.ant-notification-fade-enter.ant-notification-fade-enter-active,.ant-notification-fade-appear.ant-notification-fade-appear-active{animation-name:NotificationFadeIn;animation-play-state:running}.ant-notification-fade-leave.ant-notification-fade-leave-active{animation-name:NotificationFadeOut;animation-play-state:running}@keyframes NotificationFadeIn{0%{left:384px;opacity:0}to{left:0;opacity:1}}@keyframes NotificationFadeOut{0%{max-height:150px;margin-bottom:16px;opacity:1}to{max-height:0;margin-bottom:0;padding-top:0;padding-bottom:0;opacity:0}}.ant-notification-rtl{direction:rtl}.ant-notification-rtl .ant-notification-notice-closable .ant-notification-notice-message{padding-right:0;padding-left:24px}.ant-notification-rtl .ant-notification-notice-with-icon .ant-notification-notice-message,.ant-notification-rtl .ant-notification-notice-with-icon .ant-notification-notice-description{margin-right:48px;margin-left:0}.ant-notification-rtl .ant-notification-notice-icon{margin-right:4px;margin-left:0}.ant-notification-rtl .ant-notification-notice-close{right:auto;left:22px}.ant-notification-rtl .ant-notification-notice-btn{float:left}.ant-notification-top,.ant-notification-bottom{margin-right:0;margin-left:0}.ant-notification-top .ant-notification-fade-enter.ant-notification-fade-enter-active,.ant-notification-top .ant-notification-fade-appear.ant-notification-fade-appear-active{animation-name:NotificationTopFadeIn}.ant-notification-bottom .ant-notification-fade-enter.ant-notification-fade-enter-active,.ant-notification-bottom .ant-notification-fade-appear.ant-notification-fade-appear-active{animation-name:NotificationBottomFadeIn}.ant-notification-topLeft,.ant-notification-bottomLeft{margin-right:0;margin-left:24px}.ant-notification-topLeft .ant-notification-fade-enter.ant-notification-fade-enter-active,.ant-notification-bottomLeft .ant-notification-fade-enter.ant-notification-fade-enter-active,.ant-notification-topLeft .ant-notification-fade-appear.ant-notification-fade-appear-active,.ant-notification-bottomLeft .ant-notification-fade-appear.ant-notification-fade-appear-active{animation-name:NotificationLeftFadeIn}@keyframes NotificationTopFadeIn{0%{margin-top:-100%;opacity:0}to{margin-top:0;opacity:1}}@keyframes NotificationBottomFadeIn{0%{margin-bottom:-100%;opacity:0}to{margin-bottom:0;opacity:1}}@keyframes NotificationLeftFadeIn{0%{right:384px;opacity:0}to{right:0;opacity:1}}.ant-page-header{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;padding:16px 16px 32px 0 32px;background-color:#fff}.ant-page-header-ghost{background-color:inherit}.ant-page-header.has-breadcrumb{padding-top:12px}.ant-page-header.has-footer{padding-bottom:0}.ant-page-header-back{margin-right:16px;font-size:16px;line-height:1}.ant-page-header-back-button{color:#1890ff;text-decoration:none;outline:none;transition:color .3s;color:#000;cursor:pointer}.ant-page-header-back-button:focus,.ant-page-header-back-button:hover{color:#40a9ff}.ant-page-header-back-button:active{color:#096dd9}.ant-page-header .ant-divider-vertical{height:14px;margin:0 12px;vertical-align:middle}.ant-breadcrumb+.ant-page-header-heading{margin-top:8px}.ant-page-header-heading{display:flex;justify-content:space-between}.ant-page-header-heading-left{display:flex;align-items:center;margin:4px 0;overflow:hidden}.ant-page-header-heading-title{margin-right:12px;margin-bottom:0;color:#000000d9;font-weight:600;font-size:20px;line-height:32px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-page-header-heading .ant-avatar{margin-right:12px}.ant-page-header-heading-sub-title{margin-right:12px;color:#00000073;font-size:14px;line-height:1.5715;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-page-header-heading-extra{margin:4px 0;white-space:nowrap}.ant-page-header-heading-extra>*{white-space:unset}.ant-page-header-content{padding-top:12px}.ant-page-header-footer{margin-top:16px}.ant-page-header-footer .ant-tabs>.ant-tabs-nav{margin:0}.ant-page-header-footer .ant-tabs>.ant-tabs-nav:before{border:none}.ant-page-header-footer .ant-tabs .ant-tabs-tab{padding-top:8px;padding-bottom:8px;font-size:16px}.ant-page-header-compact .ant-page-header-heading{flex-wrap:wrap}.ant-page-header-rtl{direction:rtl}.ant-page-header-rtl .ant-page-header-back{float:right;margin-right:0;margin-left:16px}.ant-page-header-rtl .ant-page-header-heading-title,.ant-page-header-rtl .ant-page-header-heading .ant-avatar{margin-right:0;margin-left:12px}.ant-page-header-rtl .ant-page-header-heading-sub-title{float:right;margin-right:0;margin-left:12px}.ant-page-header-rtl .ant-page-header-heading-tags{float:right}.ant-page-header-rtl .ant-page-header-heading-extra{float:left}.ant-page-header-rtl .ant-page-header-heading-extra>*{margin-right:12px;margin-left:0}.ant-page-header-rtl .ant-page-header-heading-extra>*:first-child{margin-right:0}.ant-page-header-rtl .ant-page-header-footer .ant-tabs-bar .ant-tabs-nav{float:right}.ant-page-header-back-button{border:0;background:transparent;padding:0;line-height:inherit;display:inline-block}nz-page-header,nz-page-header-content,nz-page-header-footer{display:block}.ant-pagination{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum"}.ant-pagination ul,.ant-pagination ol{margin:0;padding:0;list-style:none}.ant-pagination:after{display:block;clear:both;height:0;overflow:hidden;visibility:hidden;content:" "}.ant-pagination-total-text{display:inline-block;height:32px;margin-right:8px;line-height:30px;vertical-align:middle}.ant-pagination-item{display:inline-block;min-width:32px;height:32px;margin-right:8px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:30px;text-align:center;vertical-align:middle;list-style:none;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;outline:0;cursor:pointer;-webkit-user-select:none;user-select:none}.ant-pagination-item a{display:block;padding:0 6px;color:#000000d9;transition:none}.ant-pagination-item a:hover{text-decoration:none}.ant-pagination-item:hover{border-color:#1890ff;transition:all .3s}.ant-pagination-item:hover a{color:#1890ff}.ant-pagination-item:focus-visible{border-color:#1890ff;transition:all .3s}.ant-pagination-item:focus-visible a{color:#1890ff}.ant-pagination-item-active{font-weight:500;background:#fff;border-color:#1890ff}.ant-pagination-item-active a{color:#1890ff}.ant-pagination-item-active:hover{border-color:#40a9ff}.ant-pagination-item-active:focus-visible{border-color:#40a9ff}.ant-pagination-item-active:hover a{color:#40a9ff}.ant-pagination-item-active:focus-visible a{color:#40a9ff}.ant-pagination-jump-prev,.ant-pagination-jump-next{outline:0}.ant-pagination-jump-prev .ant-pagination-item-container,.ant-pagination-jump-next .ant-pagination-item-container{position:relative}.ant-pagination-jump-prev .ant-pagination-item-container .ant-pagination-item-link-icon,.ant-pagination-jump-next .ant-pagination-item-container .ant-pagination-item-link-icon{color:#1890ff;font-size:12px;letter-spacing:-1px;opacity:0;transition:all .2s}.ant-pagination-jump-prev .ant-pagination-item-container .ant-pagination-item-link-icon-svg,.ant-pagination-jump-next .ant-pagination-item-container .ant-pagination-item-link-icon-svg{inset:0;margin:auto}.ant-pagination-jump-prev .ant-pagination-item-container .ant-pagination-item-ellipsis,.ant-pagination-jump-next .ant-pagination-item-container .ant-pagination-item-ellipsis{position:absolute;inset:0;display:block;margin:auto;color:#00000040;font-family:Arial,Helvetica,sans-serif;letter-spacing:2px;text-align:center;text-indent:.13em;opacity:1;transition:all .2s}.ant-pagination-jump-prev:hover .ant-pagination-item-link-icon,.ant-pagination-jump-next:hover .ant-pagination-item-link-icon{opacity:1}.ant-pagination-jump-prev:hover .ant-pagination-item-ellipsis,.ant-pagination-jump-next:hover .ant-pagination-item-ellipsis{opacity:0}.ant-pagination-jump-prev:focus-visible .ant-pagination-item-link-icon,.ant-pagination-jump-next:focus-visible .ant-pagination-item-link-icon{opacity:1}.ant-pagination-jump-prev:focus-visible .ant-pagination-item-ellipsis,.ant-pagination-jump-next:focus-visible .ant-pagination-item-ellipsis{opacity:0}.ant-pagination-prev,.ant-pagination-jump-prev,.ant-pagination-jump-next{margin-right:8px}.ant-pagination-prev,.ant-pagination-next,.ant-pagination-jump-prev,.ant-pagination-jump-next{display:inline-block;min-width:32px;height:32px;color:#000000d9;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:32px;text-align:center;vertical-align:middle;list-style:none;border-radius:2px;cursor:pointer;transition:all .3s}.ant-pagination-prev,.ant-pagination-next{font-family:Arial,Helvetica,sans-serif;outline:0}.ant-pagination-prev button,.ant-pagination-next button{color:#000000d9;cursor:pointer;-webkit-user-select:none;user-select:none}.ant-pagination-prev:hover button,.ant-pagination-next:hover button{border-color:#40a9ff}.ant-pagination-prev .ant-pagination-item-link,.ant-pagination-next .ant-pagination-item-link{display:block;width:100%;height:100%;padding:0;font-size:12px;text-align:center;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;outline:none;transition:all .3s}.ant-pagination-prev:focus-visible .ant-pagination-item-link,.ant-pagination-next:focus-visible .ant-pagination-item-link{color:#1890ff;border-color:#1890ff}.ant-pagination-prev:hover .ant-pagination-item-link,.ant-pagination-next:hover .ant-pagination-item-link{color:#1890ff;border-color:#1890ff}.ant-pagination-disabled,.ant-pagination-disabled:hover{cursor:not-allowed}.ant-pagination-disabled .ant-pagination-item-link,.ant-pagination-disabled:hover .ant-pagination-item-link{color:#00000040;border-color:#d9d9d9;cursor:not-allowed}.ant-pagination-disabled:focus-visible{cursor:not-allowed}.ant-pagination-disabled:focus-visible .ant-pagination-item-link{color:#00000040;border-color:#d9d9d9;cursor:not-allowed}.ant-pagination-slash{margin:0 10px 0 5px}.ant-pagination-options{display:inline-block;margin-left:16px;vertical-align:middle}@media all and (-ms-high-contrast: none){.ant-pagination-options *::-ms-backdrop,.ant-pagination-options{vertical-align:top}}.ant-pagination-options-size-changer.ant-select{display:inline-block;width:auto}.ant-pagination-options-quick-jumper{display:inline-block;height:32px;margin-left:8px;line-height:32px;vertical-align:top}.ant-pagination-options-quick-jumper input{position:relative;display:inline-block;width:100%;min-width:0;padding:4px 11px;color:#000000d9;font-size:14px;line-height:1.5715;background-color:#fff;background-image:none;border:1px solid #d9d9d9;border-radius:2px;transition:all .3s;width:50px;height:32px;margin:0 8px}.ant-pagination-options-quick-jumper input::placeholder{color:#bfbfbf;-webkit-user-select:none;user-select:none}.ant-pagination-options-quick-jumper input:placeholder-shown{text-overflow:ellipsis}.ant-pagination-options-quick-jumper input:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-pagination-options-quick-jumper input:hover{border-right-width:0;border-left-width:1px!important}.ant-pagination-options-quick-jumper input:focus,.ant-pagination-options-quick-jumper input-focused{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;border-right-width:1px;outline:0}.ant-input-rtl .ant-pagination-options-quick-jumper input:focus,.ant-input-rtl .ant-pagination-options-quick-jumper input-focused{border-right-width:0;border-left-width:1px!important}.ant-pagination-options-quick-jumper input-disabled{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;color:#00000040;pointer-events:none}.ant-pagination-options-quick-jumper input-disabled:hover{border-color:#d9d9d9;border-right-width:1px}.ant-pagination-options-quick-jumper input[disabled]{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;color:#00000040;pointer-events:none}.ant-pagination-options-quick-jumper input[disabled]:hover{border-color:#d9d9d9;border-right-width:1px}.ant-pagination-options-quick-jumper input-borderless,.ant-pagination-options-quick-jumper input-borderless:hover,.ant-pagination-options-quick-jumper input-borderless:focus,.ant-pagination-options-quick-jumper input-borderless-focused,.ant-pagination-options-quick-jumper input-borderless-disabled,.ant-pagination-options-quick-jumper input-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-pagination-options-quick-jumper input{max-width:100%;height:auto;min-height:32px;line-height:1.5715;vertical-align:bottom;transition:all .3s,height 0s}.ant-pagination-options-quick-jumper input-lg{padding:6.5px 11px;font-size:16px}.ant-pagination-options-quick-jumper input-sm{padding:0 7px}.ant-pagination-options-quick-jumper input-rtl{direction:rtl}.ant-pagination-options-quick-jumper input-stepperless[type=number]{-moz-appearance:textfield}.ant-pagination-options-quick-jumper input-stepperless[type=number]::-webkit-inner-spin-button,.ant-pagination-options-quick-jumper input-stepperless[type=number] ::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ant-pagination-simple .ant-pagination-prev,.ant-pagination-simple .ant-pagination-next{height:24px;line-height:24px;vertical-align:top}.ant-pagination-simple .ant-pagination-prev .ant-pagination-item-link,.ant-pagination-simple .ant-pagination-next .ant-pagination-item-link{height:24px;background-color:transparent;border:0}.ant-pagination-simple .ant-pagination-prev .ant-pagination-item-link:after,.ant-pagination-simple .ant-pagination-next .ant-pagination-item-link:after{height:24px;line-height:24px}.ant-pagination-simple .ant-pagination-simple-pager{display:inline-block;height:24px;margin-right:8px}.ant-pagination-simple .ant-pagination-simple-pager input{box-sizing:border-box;height:100%;margin-right:8px;padding:0 6px;text-align:center;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;outline:none;transition:border-color .3s}.ant-pagination-simple .ant-pagination-simple-pager input:hover{border-color:#1890ff}.ant-pagination-simple .ant-pagination-simple-pager input:focus{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33}.ant-pagination-simple .ant-pagination-simple-pager input[disabled]{color:#00000040;background:#f5f5f5;border-color:#d9d9d9;cursor:not-allowed}.ant-pagination.mini .ant-pagination-total-text,.ant-pagination.mini .ant-pagination-simple-pager{height:24px;line-height:24px}.ant-pagination.mini .ant-pagination-item{min-width:24px;height:24px;margin:0;line-height:22px}.ant-pagination.mini .ant-pagination-item:not(.ant-pagination-item-active){background:transparent;border-color:transparent}.ant-pagination.mini .ant-pagination-prev,.ant-pagination.mini .ant-pagination-next{min-width:24px;height:24px;margin:0;line-height:24px}.ant-pagination.mini .ant-pagination-prev .ant-pagination-item-link,.ant-pagination.mini .ant-pagination-next .ant-pagination-item-link{background:transparent;border-color:transparent}.ant-pagination.mini .ant-pagination-prev .ant-pagination-item-link:after,.ant-pagination.mini .ant-pagination-next .ant-pagination-item-link:after{height:24px;line-height:24px}.ant-pagination.mini .ant-pagination-jump-prev,.ant-pagination.mini .ant-pagination-jump-next{height:24px;margin-right:0;line-height:24px}.ant-pagination.mini .ant-pagination-options{margin-left:2px}.ant-pagination.mini .ant-pagination-options-size-changer{top:0}.ant-pagination.mini .ant-pagination-options-quick-jumper{height:24px;line-height:24px}.ant-pagination.mini .ant-pagination-options-quick-jumper input{padding:0 7px;width:44px;height:24px}.ant-pagination.ant-pagination-disabled{cursor:not-allowed}.ant-pagination.ant-pagination-disabled .ant-pagination-item{background:#f5f5f5;border-color:#d9d9d9;cursor:not-allowed}.ant-pagination.ant-pagination-disabled .ant-pagination-item a{color:#00000040;background:transparent;border:none;cursor:not-allowed}.ant-pagination.ant-pagination-disabled .ant-pagination-item-active{background:#e6e6e6}.ant-pagination.ant-pagination-disabled .ant-pagination-item-active a{color:#00000040}.ant-pagination.ant-pagination-disabled .ant-pagination-item-link{color:#00000040;background:#f5f5f5;border-color:#d9d9d9;cursor:not-allowed}.ant-pagination-simple.ant-pagination.ant-pagination-disabled .ant-pagination-item-link{background:transparent}.ant-pagination.ant-pagination-disabled .ant-pagination-item-link-icon{opacity:0}.ant-pagination.ant-pagination-disabled .ant-pagination-item-ellipsis{opacity:1}.ant-pagination.ant-pagination-disabled .ant-pagination-simple-pager{color:#00000040}@media only screen and (max-width: 992px){.ant-pagination-item-after-jump-prev,.ant-pagination-item-before-jump-next{display:none}}@media only screen and (max-width: 576px){.ant-pagination-options{display:none}}.ant-pagination-rtl .ant-pagination-total-text,.ant-pagination-rtl .ant-pagination-item,.ant-pagination-rtl .ant-pagination-prev,.ant-pagination-rtl .ant-pagination-jump-prev,.ant-pagination-rtl .ant-pagination-jump-next{margin-right:0;margin-left:8px}.ant-pagination-rtl .ant-pagination-slash{margin:0 5px 0 10px}.ant-pagination-rtl .ant-pagination-options{margin-right:16px;margin-left:0}.ant-pagination-rtl .ant-pagination-options .ant-pagination-options-size-changer.ant-select{margin-right:0;margin-left:8px}.ant-pagination-rtl .ant-pagination-options .ant-pagination-options-quick-jumper{margin-left:0}.ant-pagination-rtl.ant-pagination-simple .ant-pagination-simple-pager,.ant-pagination-rtl.ant-pagination-simple .ant-pagination-simple-pager input{margin-right:0;margin-left:8px}.ant-pagination-rtl.ant-pagination.mini .ant-pagination-options{margin-right:2px;margin-left:0}nz-pagination{display:block}.ant-popover{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:absolute;top:0;left:0;z-index:1030;font-weight:400;white-space:normal;text-align:left;cursor:auto;-webkit-user-select:text;user-select:text}.ant-popover:after{position:absolute;background:rgba(255,255,255,.01);content:""}.ant-popover-hidden{display:none}.ant-popover-placement-top,.ant-popover-placement-topLeft,.ant-popover-placement-topRight{padding-bottom:15.3137085px}.ant-popover-placement-right,.ant-popover-placement-rightTop,.ant-popover-placement-rightBottom{padding-left:15.3137085px}.ant-popover-placement-bottom,.ant-popover-placement-bottomLeft,.ant-popover-placement-bottomRight{padding-top:15.3137085px}.ant-popover-placement-left,.ant-popover-placement-leftTop,.ant-popover-placement-leftBottom{padding-right:15.3137085px}.ant-popover-inner{background-color:#fff;background-clip:padding-box;border-radius:2px;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d;box-shadow:0 0 8px #00000026 \ }@media screen and (-ms-high-contrast: active),(-ms-high-contrast: none){.ant-popover-inner{box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d}}.ant-popover-title{min-width:177px;min-height:32px;margin:0;padding:5px 16px 4px;color:#000000d9;font-weight:500;border-bottom:1px solid #f0f0f0}.ant-popover-inner-content{padding:12px 16px;color:#000000d9}.ant-popover-message{position:relative;padding:4px 0 12px;color:#000000d9;font-size:14px}.ant-popover-message>.anticon{position:absolute;top:8.0005px;color:#faad14;font-size:14px}.ant-popover-message-title{padding-left:22px}.ant-popover-buttons{margin-bottom:4px;text-align:right}.ant-popover-buttons button{margin-left:8px}.ant-popover-arrow{position:absolute;display:block;width:16px;height:16px;overflow:hidden;background:transparent;pointer-events:none}.ant-popover-arrow-content{position:absolute;inset:0;display:block;width:11.3137085px;height:11.3137085px;margin:auto;background-color:#fff;content:"";pointer-events:auto;border-radius:0 0 2px;pointer-events:none}.ant-popover-arrow-content:before{position:absolute;top:-11.3137085px;left:-11.3137085px;width:33.9411255px;height:33.9411255px;background:#fff;background-repeat:no-repeat;background-position:-10px -10px;content:"";clip-path:path("M 9.849242404917499 24.091883092036785 A 5 5 0 0 1 13.384776310850237 22.627416997969522 L 20.627416997969522 22.627416997969522 A 2 2 0 0 0 22.627416997969522 20.627416997969522 L 22.627416997969522 13.384776310850237 A 5 5 0 0 1 24.091883092036785 9.849242404917499 L 23.091883092036785 9.849242404917499 L 9.849242404917499 23.091883092036785 Z")}.ant-popover-placement-top .ant-popover-arrow,.ant-popover-placement-topLeft .ant-popover-arrow,.ant-popover-placement-topRight .ant-popover-arrow{bottom:-.6862915px}.ant-popover-placement-top .ant-popover-arrow-content,.ant-popover-placement-topLeft .ant-popover-arrow-content,.ant-popover-placement-topRight .ant-popover-arrow-content{box-shadow:3px 3px 7px #00000012;transform:translateY(-8px) rotate(45deg)}.ant-popover-placement-top .ant-popover-arrow{left:50%;transform:translate(-50%)}.ant-popover-placement-topLeft .ant-popover-arrow{left:16px}.ant-popover-placement-topRight .ant-popover-arrow{right:16px}.ant-popover-placement-right .ant-popover-arrow,.ant-popover-placement-rightTop .ant-popover-arrow,.ant-popover-placement-rightBottom .ant-popover-arrow{left:-.6862915px}.ant-popover-placement-right .ant-popover-arrow-content,.ant-popover-placement-rightTop .ant-popover-arrow-content,.ant-popover-placement-rightBottom .ant-popover-arrow-content{box-shadow:3px 3px 7px #00000012;transform:translate(8px) rotate(135deg)}.ant-popover-placement-right .ant-popover-arrow{top:50%;transform:translateY(-50%)}.ant-popover-placement-rightTop .ant-popover-arrow{top:12px}.ant-popover-placement-rightBottom .ant-popover-arrow{bottom:12px}.ant-popover-placement-bottom .ant-popover-arrow,.ant-popover-placement-bottomLeft .ant-popover-arrow,.ant-popover-placement-bottomRight .ant-popover-arrow{top:-.6862915px}.ant-popover-placement-bottom .ant-popover-arrow-content,.ant-popover-placement-bottomLeft .ant-popover-arrow-content,.ant-popover-placement-bottomRight .ant-popover-arrow-content{box-shadow:2px 2px 5px #0000000f;transform:translateY(8px) rotate(-135deg)}.ant-popover-placement-bottom .ant-popover-arrow{left:50%;transform:translate(-50%)}.ant-popover-placement-bottomLeft .ant-popover-arrow{left:16px}.ant-popover-placement-bottomRight .ant-popover-arrow{right:16px}.ant-popover-placement-left .ant-popover-arrow,.ant-popover-placement-leftTop .ant-popover-arrow,.ant-popover-placement-leftBottom .ant-popover-arrow{right:-.6862915px}.ant-popover-placement-left .ant-popover-arrow-content,.ant-popover-placement-leftTop .ant-popover-arrow-content,.ant-popover-placement-leftBottom .ant-popover-arrow-content{box-shadow:3px 3px 7px #00000012;transform:translate(-8px) rotate(-45deg)}.ant-popover-placement-left .ant-popover-arrow{top:50%;transform:translateY(-50%)}.ant-popover-placement-leftTop .ant-popover-arrow{top:12px}.ant-popover-placement-leftBottom .ant-popover-arrow{bottom:12px}.ant-popover-pink .ant-popover-inner,.ant-popover-pink .ant-popover-arrow-content,.ant-popover-magenta .ant-popover-inner,.ant-popover-magenta .ant-popover-arrow-content{background-color:#eb2f96}.ant-popover-red .ant-popover-inner,.ant-popover-red .ant-popover-arrow-content{background-color:#f5222d}.ant-popover-volcano .ant-popover-inner,.ant-popover-volcano .ant-popover-arrow-content{background-color:#fa541c}.ant-popover-orange .ant-popover-inner,.ant-popover-orange .ant-popover-arrow-content{background-color:#fa8c16}.ant-popover-yellow .ant-popover-inner,.ant-popover-yellow .ant-popover-arrow-content{background-color:#fadb14}.ant-popover-gold .ant-popover-inner,.ant-popover-gold .ant-popover-arrow-content{background-color:#faad14}.ant-popover-cyan .ant-popover-inner,.ant-popover-cyan .ant-popover-arrow-content{background-color:#13c2c2}.ant-popover-lime .ant-popover-inner,.ant-popover-lime .ant-popover-arrow-content{background-color:#a0d911}.ant-popover-green .ant-popover-inner,.ant-popover-green .ant-popover-arrow-content{background-color:#52c41a}.ant-popover-blue .ant-popover-inner,.ant-popover-blue .ant-popover-arrow-content{background-color:#1890ff}.ant-popover-geekblue .ant-popover-inner,.ant-popover-geekblue .ant-popover-arrow-content{background-color:#2f54eb}.ant-popover-purple .ant-popover-inner,.ant-popover-purple .ant-popover-arrow-content{background-color:#722ed1}.ant-popover-rtl{direction:rtl;text-align:right}.ant-popover-rtl .ant-popover-message-title{padding-right:22px;padding-left:16px}.ant-popover-rtl .ant-popover-buttons{text-align:left}.ant-popover-rtl .ant-popover-buttons button{margin-right:8px;margin-left:0}.ant-popover{position:relative}.ant-progress{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";display:inline-block}.ant-progress-line{position:relative;width:100%;font-size:14px}.ant-progress-steps{display:inline-block}.ant-progress-steps-outer{display:flex;flex-direction:row;align-items:center}.ant-progress-steps-item{flex-shrink:0;min-width:2px;margin-right:2px;background:#f3f3f3;transition:all .3s}.ant-progress-steps-item-active{background:#1890ff}.ant-progress-small.ant-progress-line,.ant-progress-small.ant-progress-line .ant-progress-text .anticon{font-size:12px}.ant-progress-outer{display:inline-block;width:100%;margin-right:0;padding-right:0}.ant-progress-show-info .ant-progress-outer{margin-right:calc(-2em - 8px);padding-right:calc(2em + 8px)}.ant-progress-inner{position:relative;display:inline-block;width:100%;overflow:hidden;vertical-align:middle;background-color:#f5f5f5;border-radius:100px}.ant-progress-circle-trail{stroke:#f5f5f5}.ant-progress-circle-path{animation:ant-progress-appear .3s}.ant-progress-inner:not(.ant-progress-circle-gradient) .ant-progress-circle-path{stroke:#1890ff}.ant-progress-success-bg,.ant-progress-bg{position:relative;background-color:#1890ff;border-radius:100px;transition:all .4s cubic-bezier(.08,.82,.17,1) 0s}.ant-progress-success-bg{position:absolute;top:0;left:0;background-color:#52c41a}.ant-progress-text{display:inline-block;width:2em;margin-left:8px;color:#000000d9;font-size:1em;line-height:1;white-space:nowrap;text-align:left;vertical-align:middle;word-break:normal}.ant-progress-text .anticon{font-size:14px}.ant-progress-status-active .ant-progress-bg:before{position:absolute;inset:0;background:#fff;border-radius:10px;opacity:0;animation:ant-progress-active 2.4s cubic-bezier(.23,1,.32,1) infinite;content:""}.ant-progress-status-exception .ant-progress-bg{background-color:#ff4d4f}.ant-progress-status-exception .ant-progress-text{color:#ff4d4f}.ant-progress-status-exception .ant-progress-inner:not(.ant-progress-circle-gradient) .ant-progress-circle-path{stroke:#ff4d4f}.ant-progress-status-success .ant-progress-bg{background-color:#52c41a}.ant-progress-status-success .ant-progress-text{color:#52c41a}.ant-progress-status-success .ant-progress-inner:not(.ant-progress-circle-gradient) .ant-progress-circle-path{stroke:#52c41a}.ant-progress-circle .ant-progress-inner{position:relative;line-height:1;background-color:transparent}.ant-progress-circle .ant-progress-text{position:absolute;top:50%;left:50%;width:100%;margin:0;padding:0;color:#000000d9;font-size:1em;line-height:1;white-space:normal;text-align:center;transform:translate(-50%,-50%)}.ant-progress-circle .ant-progress-text .anticon{font-size:1.16666667em}.ant-progress-circle.ant-progress-status-exception .ant-progress-text{color:#ff4d4f}.ant-progress-circle.ant-progress-status-success .ant-progress-text{color:#52c41a}@keyframes ant-progress-active{0%{transform:translate(-100%) scaleX(0);opacity:.1}20%{transform:translate(-100%) scaleX(0);opacity:.5}to{transform:translate(0) scaleX(1);opacity:0}}.ant-progress-rtl{direction:rtl}.ant-progress-rtl.ant-progress-show-info .ant-progress-outer{margin-right:0;margin-left:calc(-2em - 8px);padding-right:0;padding-left:calc(2em + 8px)}.ant-progress-rtl .ant-progress-success-bg{right:0;left:auto}.ant-progress-rtl.ant-progress-line .ant-progress-text,.ant-progress-rtl.ant-progress-steps .ant-progress-text{margin-right:8px;margin-left:0;text-align:right}.ant-radio-group{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";display:inline-block;font-size:0}.ant-radio-group .ant-badge-count{z-index:1}.ant-radio-group>.ant-badge:not(:first-child)>.ant-radio-button-wrapper{border-left:none}.ant-radio-wrapper{box-sizing:border-box;margin:0 8px 0 0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;display:inline-flex;align-items:baseline;cursor:pointer}.ant-radio-wrapper-disabled{cursor:not-allowed}.ant-radio-wrapper:after{display:inline-block;width:0;overflow:hidden;content:"\a0"}.ant-radio-wrapper.ant-radio-wrapper-in-form-item input[type=radio]{width:14px;height:14px}.ant-radio{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;top:.2em;display:inline-block;outline:none;cursor:pointer}.ant-radio-wrapper:hover .ant-radio,.ant-radio:hover .ant-radio-inner,.ant-radio-input:focus+.ant-radio-inner{border-color:#1890ff}.ant-radio-input:focus+.ant-radio-inner{box-shadow:0 0 0 3px #e6f7ff}.ant-radio-checked:after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #1890ff;border-radius:50%;visibility:hidden;animation:antRadioEffect .36s ease-in-out;animation-fill-mode:both;content:""}.ant-radio:hover:after,.ant-radio-wrapper:hover .ant-radio:after{visibility:visible}.ant-radio-inner{position:relative;top:0;left:0;display:block;width:16px;height:16px;background-color:#fff;border-color:#d9d9d9;border-style:solid;border-width:1px;border-radius:50%;transition:all .3s}.ant-radio-inner:after{position:absolute;top:50%;left:50%;display:block;width:16px;height:16px;margin-top:-8px;margin-left:-8px;background-color:#1890ff;border-top:0;border-left:0;border-radius:16px;transform:scale(0);opacity:0;transition:all .3s cubic-bezier(.78,.14,.15,.86);content:" "}.ant-radio-input{position:absolute;inset:0;z-index:1;cursor:pointer;opacity:0}.ant-radio-checked .ant-radio-inner{border-color:#1890ff}.ant-radio-checked .ant-radio-inner:after{transform:scale(.5);opacity:1;transition:all .3s cubic-bezier(.78,.14,.15,.86)}.ant-radio-disabled{cursor:not-allowed}.ant-radio-disabled .ant-radio-inner{background-color:#f5f5f5;border-color:#d9d9d9!important;cursor:not-allowed}.ant-radio-disabled .ant-radio-inner:after{background-color:#0003}.ant-radio-disabled .ant-radio-input{cursor:not-allowed}.ant-radio-disabled+span{color:#00000040;cursor:not-allowed}span.ant-radio+*{padding-right:8px;padding-left:8px}.ant-radio-button-wrapper{position:relative;display:inline-block;height:32px;margin:0;padding:0 15px;color:#000000d9;font-size:14px;line-height:30px;background:#fff;border:1px solid #d9d9d9;border-top-width:1.02px;border-left-width:0;cursor:pointer;transition:color .3s,background .3s,border-color .3s,box-shadow .3s}.ant-radio-button-wrapper a{color:#000000d9}.ant-radio-button-wrapper>.ant-radio-button{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%}.ant-radio-group-large .ant-radio-button-wrapper{height:40px;font-size:16px;line-height:38px}.ant-radio-group-small .ant-radio-button-wrapper{height:24px;padding:0 7px;line-height:22px}.ant-radio-button-wrapper:not(:first-child):before{position:absolute;top:-1px;left:-1px;display:block;box-sizing:content-box;width:1px;height:100%;padding:1px 0;background-color:#d9d9d9;transition:background-color .3s;content:""}.ant-radio-button-wrapper:first-child{border-left:1px solid #d9d9d9;border-radius:2px 0 0 2px}.ant-radio-button-wrapper:last-child{border-radius:0 2px 2px 0}.ant-radio-button-wrapper:first-child:last-child{border-radius:2px}.ant-radio-button-wrapper:hover{position:relative;color:#1890ff}.ant-radio-button-wrapper:focus-within{box-shadow:0 0 0 3px #e6f7ff}.ant-radio-button-wrapper .ant-radio-inner,.ant-radio-button-wrapper input[type=checkbox],.ant-radio-button-wrapper input[type=radio]{width:0;height:0;opacity:0;pointer-events:none}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled){z-index:1;color:#1890ff;background:#fff;border-color:#1890ff}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):before{background-color:#1890ff}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):first-child{border-color:#1890ff}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):hover{color:#40a9ff;border-color:#40a9ff}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):hover:before{background-color:#40a9ff}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):active{color:#096dd9;border-color:#096dd9}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):active:before{background-color:#096dd9}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):focus-within{box-shadow:0 0 0 3px #e6f7ff}.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled){color:#fff;background:#1890ff;border-color:#1890ff}.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):hover{color:#fff;background:#40a9ff;border-color:#40a9ff}.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):active{color:#fff;background:#096dd9;border-color:#096dd9}.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):focus-within{box-shadow:0 0 0 3px #e6f7ff}.ant-radio-button-wrapper-disabled{color:#00000040;background-color:#f5f5f5;border-color:#d9d9d9;cursor:not-allowed}.ant-radio-button-wrapper-disabled:first-child,.ant-radio-button-wrapper-disabled:hover{color:#00000040;background-color:#f5f5f5;border-color:#d9d9d9}.ant-radio-button-wrapper-disabled:first-child{border-left-color:#d9d9d9}.ant-radio-button-wrapper-disabled.ant-radio-button-wrapper-checked{color:#00000040;background-color:#e6e6e6;border-color:#d9d9d9;box-shadow:none}@keyframes antRadioEffect{0%{transform:scale(1);opacity:.5}to{transform:scale(1.6);opacity:0}}.ant-radio-group.ant-radio-group-rtl{direction:rtl}.ant-radio-wrapper.ant-radio-wrapper-rtl{margin-right:0;margin-left:8px;direction:rtl}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl{border-right-width:0;border-left-width:1px}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl.ant-radio-button-wrapper:not(:first-child):before{right:-1px;left:0}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl.ant-radio-button-wrapper:first-child{border-right:1px solid #d9d9d9;border-radius:0 2px 2px 0}.ant-radio-button-wrapper-checked:not([class*=" ant-radio-button-wrapper-disabled"]).ant-radio-button-wrapper:first-child{border-right-color:#40a9ff}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl.ant-radio-button-wrapper:last-child{border-radius:2px 0 0 2px}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl.ant-radio-button-wrapper-disabled:first-child{border-right-color:#d9d9d9}.ant-radio+span:empty{display:none}.ant-rate{box-sizing:border-box;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;font-feature-settings:"tnum";display:inline-block;margin:0;padding:0;color:#fadb14;font-size:20px;line-height:unset;list-style:none;outline:none}.ant-rate-disabled .ant-rate-star{cursor:default}.ant-rate-disabled .ant-rate-star>div:hover{transform:scale(1)}.ant-rate-star{position:relative;display:inline-block;color:inherit;cursor:pointer}.ant-rate-star:not(:last-child){margin-right:8px}.ant-rate-star>div{transition:all .3s,outline 0s}.ant-rate-star>div:hover{transform:scale(1.1)}.ant-rate-star>div:focus{outline:0}.ant-rate-star>div:focus-visible{outline:1px dashed #fadb14;transform:scale(1.1)}.ant-rate-star-first,.ant-rate-star-second{color:#f0f0f0;transition:all .3s;-webkit-user-select:none;user-select:none}.ant-rate-star-first .anticon,.ant-rate-star-second .anticon{vertical-align:middle}.ant-rate-star-first{position:absolute;top:0;left:0;width:50%;height:100%;overflow:hidden;opacity:0}.ant-rate-star-half .ant-rate-star-first,.ant-rate-star-half .ant-rate-star-second{opacity:1}.ant-rate-star-half .ant-rate-star-first,.ant-rate-star-full .ant-rate-star-second{color:inherit}.ant-rate-text{display:inline-block;margin:0 8px;font-size:14px}.ant-rate-rtl{direction:rtl}.ant-rate-rtl .ant-rate-star:not(:last-child){margin-right:0;margin-left:8px}.ant-rate-rtl .ant-rate-star-first{right:0;left:auto}.ant-select-single .ant-select-selector{display:flex}.ant-select-single .ant-select-selector .ant-select-selection-search{position:absolute;inset:0 11px}.ant-select-single .ant-select-selector .ant-select-selection-search-input{width:100%}.ant-select-single .ant-select-selector .ant-select-selection-item,.ant-select-single .ant-select-selector .ant-select-selection-placeholder{padding:0;line-height:30px;transition:all .3s}@supports (-moz-appearance: meterbar){.ant-select-single .ant-select-selector .ant-select-selection-item,.ant-select-single .ant-select-selector .ant-select-selection-placeholder{line-height:30px}}.ant-select-single .ant-select-selector .ant-select-selection-item{position:relative;-webkit-user-select:none;user-select:none}.ant-select-single .ant-select-selector .ant-select-selection-placeholder{transition:none;pointer-events:none}.ant-select-single .ant-select-selector:after,.ant-select-single .ant-select-selector .ant-select-selection-item:after,.ant-select-single .ant-select-selector .ant-select-selection-placeholder:after{display:inline-block;width:0;visibility:hidden;content:"\a0"}.ant-select-single.ant-select-show-arrow .ant-select-selection-search{right:25px}.ant-select-single.ant-select-show-arrow .ant-select-selection-item,.ant-select-single.ant-select-show-arrow .ant-select-selection-placeholder{padding-right:18px}.ant-select-single.ant-select-open .ant-select-selection-item{color:#bfbfbf}.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{width:100%;height:32px;padding:0 11px}.ant-select-single:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-search-input{height:30px}.ant-select-single:not(.ant-select-customize-input) .ant-select-selector:after{line-height:30px}.ant-select-single.ant-select-customize-input .ant-select-selector:after{display:none}.ant-select-single.ant-select-customize-input .ant-select-selector .ant-select-selection-search{position:static;width:100%}.ant-select-single.ant-select-customize-input .ant-select-selector .ant-select-selection-placeholder{position:absolute;right:0;left:0;padding:0 11px}.ant-select-single.ant-select-customize-input .ant-select-selector .ant-select-selection-placeholder:after{display:none}.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector{height:40px}.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector:after,.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-item,.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-placeholder{line-height:38px}.ant-select-single.ant-select-lg:not(.ant-select-customize-input):not(.ant-select-customize-input) .ant-select-selection-search-input{height:38px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector{height:24px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector:after,.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-item,.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-placeholder{line-height:22px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input):not(.ant-select-customize-input) .ant-select-selection-search-input{height:22px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selection-search{right:7px;left:7px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector{padding:0 7px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-search{right:28px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-item,.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-placeholder{padding-right:21px}.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector{padding:0 11px}.ant-select-selection-overflow{position:relative;display:flex;flex:auto;flex-wrap:wrap;max-width:100%}.ant-select-selection-overflow-item{flex:none;align-self:center;max-width:100%}.ant-select-multiple .ant-select-selector{display:flex;flex-wrap:wrap;align-items:center;padding:1px 4px}.ant-select-show-search.ant-select-multiple .ant-select-selector{cursor:text}.ant-select-disabled.ant-select-multiple .ant-select-selector{background:#f5f5f5;cursor:not-allowed}.ant-select-multiple .ant-select-selector:after{display:inline-block;width:0;margin:2px 0;line-height:24px;content:"\a0"}.ant-select-multiple.ant-select-show-arrow .ant-select-selector,.ant-select-multiple.ant-select-allow-clear .ant-select-selector{padding-right:24px}.ant-select-multiple .ant-select-selection-item{position:relative;display:flex;flex:none;box-sizing:border-box;max-width:100%;height:24px;margin-top:2px;margin-bottom:2px;line-height:22px;background:#f5f5f5;border:1px solid #f0f0f0;border-radius:2px;cursor:default;transition:font-size .3s,line-height .3s,height .3s;-webkit-user-select:none;user-select:none;margin-inline-end:4px;padding-inline-start:8px;padding-inline-end:4px}.ant-select-disabled.ant-select-multiple .ant-select-selection-item{color:#bfbfbf;border-color:#d9d9d9;cursor:not-allowed}.ant-select-multiple .ant-select-selection-item-content{display:inline-block;margin-right:4px;overflow:hidden;white-space:pre;text-overflow:ellipsis}.ant-select-multiple .ant-select-selection-item-remove{color:inherit;font-style:normal;line-height:0;text-align:center;text-transform:none;vertical-align:-.125em;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;color:#00000073;font-weight:700;font-size:10px;line-height:inherit;cursor:pointer}.ant-select-multiple .ant-select-selection-item-remove>*{line-height:1}.ant-select-multiple .ant-select-selection-item-remove svg{display:inline-block}.ant-select-multiple .ant-select-selection-item-remove:before{display:none}.ant-select-multiple .ant-select-selection-item-remove .ant-select-multiple .ant-select-selection-item-remove-icon{display:block}.ant-select-multiple .ant-select-selection-item-remove>.anticon{vertical-align:middle}.ant-select-multiple .ant-select-selection-item-remove:hover{color:#000000bf}.ant-select-multiple .ant-select-selection-overflow-item+.ant-select-selection-overflow-item .ant-select-selection-search{margin-inline-start:0}.ant-select-multiple .ant-select-selection-search{position:relative;max-width:100%;margin-inline-start:7px}.ant-select-multiple .ant-select-selection-search-input,.ant-select-multiple .ant-select-selection-search-mirror{height:24px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:24px;transition:all .3s}.ant-select-multiple .ant-select-selection-search-input{width:100%;min-width:4.1px}.ant-select-multiple .ant-select-selection-search-mirror{position:absolute;top:0;left:0;z-index:999;white-space:pre;visibility:hidden}.ant-select-multiple .ant-select-selection-placeholder{position:absolute;top:50%;right:11px;left:11px;transform:translateY(-50%);transition:all .3s}.ant-select-multiple.ant-select-lg .ant-select-selector:after{line-height:32px}.ant-select-multiple.ant-select-lg .ant-select-selection-item{height:32px;line-height:30px}.ant-select-multiple.ant-select-lg .ant-select-selection-search{height:32px;line-height:32px}.ant-select-multiple.ant-select-lg .ant-select-selection-search-input,.ant-select-multiple.ant-select-lg .ant-select-selection-search-mirror{height:32px;line-height:30px}.ant-select-multiple.ant-select-sm .ant-select-selector:after{line-height:16px}.ant-select-multiple.ant-select-sm .ant-select-selection-item{height:16px;line-height:14px}.ant-select-multiple.ant-select-sm .ant-select-selection-search{height:16px;line-height:16px}.ant-select-multiple.ant-select-sm .ant-select-selection-search-input,.ant-select-multiple.ant-select-sm .ant-select-selection-search-mirror{height:16px;line-height:14px}.ant-select-multiple.ant-select-sm .ant-select-selection-placeholder{left:7px}.ant-select-multiple.ant-select-sm .ant-select-selection-search{margin-inline-start:3px}.ant-select-multiple.ant-select-lg .ant-select-selection-item{height:32px;line-height:32px}.ant-select-disabled .ant-select-selection-item-remove{display:none}.ant-select-status-error.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input) .ant-select-selector{background-color:#fff;border-color:#ff4d4f!important}.ant-select-status-error.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input).ant-select-open .ant-select-selector,.ant-select-status-error.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input).ant-select-focused .ant-select-selector{border-color:#ff7875;box-shadow:0 0 0 2px #ff4d4f33;border-right-width:1px;outline:0}.ant-select-status-warning.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input) .ant-select-selector{background-color:#fff;border-color:#faad14!important}.ant-select-status-warning.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input).ant-select-open .ant-select-selector,.ant-select-status-warning.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input).ant-select-focused .ant-select-selector{border-color:#ffc53d;box-shadow:0 0 0 2px #faad1433;border-right-width:1px;outline:0}.ant-select-status-error.ant-select-has-feedback .ant-select-clear,.ant-select-status-warning.ant-select-has-feedback .ant-select-clear,.ant-select-status-success.ant-select-has-feedback .ant-select-clear,.ant-select-status-validating.ant-select-has-feedback .ant-select-clear{right:32px}.ant-select-status-error.ant-select-has-feedback .ant-select-selection-selected-value,.ant-select-status-warning.ant-select-has-feedback .ant-select-selection-selected-value,.ant-select-status-success.ant-select-has-feedback .ant-select-selection-selected-value,.ant-select-status-validating.ant-select-has-feedback .ant-select-selection-selected-value{padding-right:42px}.ant-select{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;display:inline-block;cursor:pointer}.ant-select:not(.ant-select-customize-input) .ant-select-selector{position:relative;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;transition:all .3s cubic-bezier(.645,.045,.355,1)}.ant-select:not(.ant-select-customize-input) .ant-select-selector input{cursor:pointer}.ant-select-show-search.ant-select:not(.ant-select-customize-input) .ant-select-selector{cursor:text}.ant-select-show-search.ant-select:not(.ant-select-customize-input) .ant-select-selector input{cursor:auto}.ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;border-right-width:1px;outline:0}.ant-input-rtl .ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector{border-right-width:0;border-left-width:1px!important}.ant-select-disabled.ant-select:not(.ant-select-customize-input) .ant-select-selector{color:#00000040;background:#f5f5f5;cursor:not-allowed}.ant-select-multiple.ant-select-disabled.ant-select:not(.ant-select-customize-input) .ant-select-selector{background:#f5f5f5}.ant-select-disabled.ant-select:not(.ant-select-customize-input) .ant-select-selector input{cursor:not-allowed}.ant-select:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-search-input{margin:0;padding:0;background:transparent;border:none;outline:none;appearance:none}.ant-select:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-search-input::-webkit-search-cancel-button{display:none;-webkit-appearance:none}.ant-select:not(.ant-select-disabled):hover .ant-select-selector{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-select:not(.ant-select-disabled):hover .ant-select-selector{border-right-width:0;border-left-width:1px!important}.ant-select-selection-item{flex:1;overflow:hidden;font-weight:400;white-space:nowrap;text-overflow:ellipsis}@media all and (-ms-high-contrast: none){.ant-select-selection-item *::-ms-backdrop,.ant-select-selection-item{flex:auto}}.ant-select-selection-placeholder{flex:1;overflow:hidden;color:#bfbfbf;white-space:nowrap;text-overflow:ellipsis;pointer-events:none}@media all and (-ms-high-contrast: none){.ant-select-selection-placeholder *::-ms-backdrop,.ant-select-selection-placeholder{flex:auto}}.ant-select-arrow{display:inline-block;color:inherit;font-style:normal;line-height:0;text-transform:none;vertical-align:-.125em;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:absolute;top:50%;right:11px;display:flex;align-items:center;height:12px;margin-top:-6px;color:#00000040;font-size:12px;line-height:1;text-align:center;pointer-events:none}.ant-select-arrow>*{line-height:1}.ant-select-arrow svg{display:inline-block}.ant-select-arrow:before{display:none}.ant-select-arrow .ant-select-arrow-icon{display:block}.ant-select-arrow .anticon{vertical-align:top;transition:transform .3s}.ant-select-arrow .anticon>svg{vertical-align:top}.ant-select-arrow .anticon:not(.ant-select-suffix){pointer-events:auto}.ant-select-disabled .ant-select-arrow{cursor:not-allowed}.ant-select-arrow>*:not(:last-child){margin-inline-end:8px}.ant-select-clear{position:absolute;top:50%;right:11px;z-index:1;display:inline-block;width:12px;height:12px;margin-top:-6px;color:#00000040;font-size:12px;font-style:normal;line-height:1;text-align:center;text-transform:none;background:#fff;cursor:pointer;opacity:0;transition:color .3s ease,opacity .15s ease;text-rendering:auto}.ant-select-clear:before{display:block}.ant-select-clear:hover{color:#00000073}.ant-select:hover .ant-select-clear{opacity:1}.ant-select-dropdown{margin:0;color:#000000d9;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:absolute;top:-9999px;left:-9999px;z-index:1050;box-sizing:border-box;padding:4px 0;overflow:hidden;font-size:14px;font-variant:initial;background-color:#fff;border-radius:2px;outline:none;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d}.ant-select-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-select-dropdown-placement-bottomLeft,.ant-select-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-select-dropdown-placement-bottomLeft{animation-name:antSlideUpIn}.ant-select-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-select-dropdown-placement-topLeft,.ant-select-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-select-dropdown-placement-topLeft{animation-name:antSlideDownIn}.ant-select-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-select-dropdown-placement-bottomLeft{animation-name:antSlideUpOut}.ant-select-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-select-dropdown-placement-topLeft{animation-name:antSlideDownOut}.ant-select-dropdown-empty{color:#00000040}.ant-select-item-empty{position:relative;display:block;min-height:32px;padding:5px 12px;color:#000000d9;font-weight:400;font-size:14px;line-height:22px;color:#00000040}.ant-select-item{position:relative;display:block;min-height:32px;padding:5px 12px;color:#000000d9;font-weight:400;font-size:14px;line-height:22px;cursor:pointer;transition:background .3s ease}.ant-select-item-group{color:#00000073;font-size:12px;cursor:default}.ant-select-item-option{display:flex}.ant-select-item-option-content{flex:auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-select-item-option-state{flex:none}.ant-select-item-option-active:not(.ant-select-item-option-disabled){background-color:#f5f5f5}.ant-select-item-option-selected:not(.ant-select-item-option-disabled){color:#000000d9;font-weight:600;background-color:#e6f7ff}.ant-select-item-option-selected:not(.ant-select-item-option-disabled) .ant-select-item-option-state{color:#1890ff}.ant-select-item-option-disabled{color:#00000040;cursor:not-allowed}.ant-select-item-option-disabled.ant-select-item-option-selected{background-color:#f5f5f5}.ant-select-item-option-grouped{padding-left:24px}.ant-select-lg{font-size:16px}.ant-select-borderless .ant-select-selector{background-color:transparent!important;border-color:transparent!important;box-shadow:none!important}.ant-select.ant-select-in-form-item{width:100%}.ant-select-rtl{direction:rtl}.ant-select-rtl .ant-select-arrow,.ant-select-rtl .ant-select-clear{right:initial;left:11px}.ant-select-dropdown-rtl{direction:rtl}.ant-select-dropdown-rtl .ant-select-item-option-grouped{padding-right:24px;padding-left:12px}.ant-select-rtl.ant-select-multiple.ant-select-show-arrow .ant-select-selector,.ant-select-rtl.ant-select-multiple.ant-select-allow-clear .ant-select-selector{padding-right:4px;padding-left:24px}.ant-select-rtl.ant-select-multiple .ant-select-selection-item{text-align:right}.ant-select-rtl.ant-select-multiple .ant-select-selection-item-content{margin-right:0;margin-left:4px;text-align:right}.ant-select-rtl.ant-select-multiple .ant-select-selection-search-mirror{right:0;left:auto}.ant-select-rtl.ant-select-multiple .ant-select-selection-placeholder{right:11px;left:auto}.ant-select-rtl.ant-select-multiple.ant-select-sm .ant-select-selection-placeholder{right:7px}.ant-select-rtl.ant-select-single .ant-select-selector .ant-select-selection-item,.ant-select-rtl.ant-select-single .ant-select-selector .ant-select-selection-placeholder{right:0;left:9px;text-align:right}.ant-select-rtl.ant-select-single.ant-select-show-arrow .ant-select-selection-search{right:11px;left:25px}.ant-select-rtl.ant-select-single.ant-select-show-arrow .ant-select-selection-item,.ant-select-rtl.ant-select-single.ant-select-show-arrow .ant-select-selection-placeholder{padding-right:0;padding-left:18px}.ant-select-rtl.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-search{right:6px}.ant-select-rtl.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-item,.ant-select-rtl.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-placeholder{padding-right:0;padding-left:21px}.ant-select-dropdown{top:100%;left:0;position:relative;width:100%;margin-top:4px;margin-bottom:4px;display:block}.ant-select-dropdown .cdk-virtual-scroll-content-wrapper{right:0}.ant-select-dropdown .full-width{contain:initial}.ant-select-dropdown .full-width .cdk-virtual-scroll-content-wrapper{position:static}.ant-select-dropdown .full-width .cdk-virtual-scroll-spacer{position:absolute;top:0;width:1px}.segmented-disabled-item,.segmented-disabled-item:hover,.segmented-disabled-item:focus{color:#00000040;cursor:not-allowed}.segmented-item-selected{background-color:#fff;border-radius:2px;box-shadow:0 2px 8px -2px #0000000d,0 1px 4px -1px #00000012,0 0 1px #00000014}.segmented-text-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all}.ant-segmented{box-sizing:border-box;margin:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";display:inline-block;padding:2px;color:#000000a6;background-color:#0000000a;border-radius:2px;transition:all .3s cubic-bezier(.645,.045,.355,1)}.ant-segmented-group{position:relative;display:flex;align-items:stretch;justify-items:flex-start;width:100%}.ant-segmented.ant-segmented-block{display:flex}.ant-segmented.ant-segmented-block .ant-segmented-item{flex:1;min-width:0}.ant-segmented:not(.ant-segmented-disabled):hover,.ant-segmented:not(.ant-segmented-disabled):focus{background-color:#0000000f}.ant-segmented-item{position:relative;text-align:center;cursor:pointer;transition:color .3s cubic-bezier(.645,.045,.355,1)}.ant-segmented-item-selected{background-color:#fff;border-radius:2px;box-shadow:0 2px 8px -2px #0000000d,0 1px 4px -1px #00000012,0 0 1px #00000014;color:#262626}.ant-segmented-item:hover,.ant-segmented-item:focus{color:#262626}.ant-segmented-item-label{min-height:28px;padding:0 11px;line-height:28px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all}.ant-segmented-item-icon+*{margin-left:12px / 2}.ant-segmented-item-input{position:absolute;top:0;left:0;width:0;height:0;opacity:0;pointer-events:none}.ant-segmented.ant-segmented-lg .ant-segmented-item-label{min-height:36px;padding:0 11px;font-size:16px;line-height:36px}.ant-segmented.ant-segmented-sm .ant-segmented-item-label{min-height:20px;padding:0 7px;line-height:20px}.ant-segmented-item-disabled,.ant-segmented-item-disabled:hover,.ant-segmented-item-disabled:focus{color:#00000040;cursor:not-allowed}.ant-segmented-thumb{background-color:#fff;border-radius:2px;box-shadow:0 2px 8px -2px #0000000d,0 1px 4px -1px #00000012,0 0 1px #00000014;position:absolute;top:0;left:0;width:0;height:100%;padding:4px 0}.ant-segmented-thumb-motion-appear-active{transition:transform .3s cubic-bezier(.645,.045,.355,1),width .3s cubic-bezier(.645,.045,.355,1);will-change:transform,width}.ant-segmented.ant-segmented-rtl{direction:rtl}.ant-segmented.ant-segmented-rtl .ant-segmented-item-icon{margin-right:0;margin-left:6px}.ant-skeleton{display:table;width:100%}.ant-skeleton-header{display:table-cell;padding-right:16px;vertical-align:top}.ant-skeleton-header .ant-skeleton-avatar{display:inline-block;vertical-align:top;background:rgba(190,190,190,.2);width:32px;height:32px;line-height:32px}.ant-skeleton-header .ant-skeleton-avatar.ant-skeleton-avatar-circle{border-radius:50%}.ant-skeleton-header .ant-skeleton-avatar-lg{width:40px;height:40px;line-height:40px}.ant-skeleton-header .ant-skeleton-avatar-lg.ant-skeleton-avatar-circle{border-radius:50%}.ant-skeleton-header .ant-skeleton-avatar-sm{width:24px;height:24px;line-height:24px}.ant-skeleton-header .ant-skeleton-avatar-sm.ant-skeleton-avatar-circle{border-radius:50%}.ant-skeleton-content{display:table-cell;width:100%;vertical-align:top}.ant-skeleton-content .ant-skeleton-title{width:100%;height:16px;margin-top:16px;background:rgba(190,190,190,.2);border-radius:4px}.ant-skeleton-content .ant-skeleton-title+.ant-skeleton-paragraph{margin-top:24px}.ant-skeleton-content .ant-skeleton-paragraph{padding:0}.ant-skeleton-content .ant-skeleton-paragraph>li{width:100%;height:16px;list-style:none;background:rgba(190,190,190,.2);border-radius:4px}.ant-skeleton-content .ant-skeleton-paragraph>li:last-child:not(:first-child):not(:nth-child(2)){width:61%}.ant-skeleton-content .ant-skeleton-paragraph>li+li{margin-top:16px}.ant-skeleton-with-avatar .ant-skeleton-content .ant-skeleton-title{margin-top:12px}.ant-skeleton-with-avatar .ant-skeleton-content .ant-skeleton-title+.ant-skeleton-paragraph{margin-top:28px}.ant-skeleton-round .ant-skeleton-content .ant-skeleton-title,.ant-skeleton-round .ant-skeleton-content .ant-skeleton-paragraph>li{border-radius:100px}.ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-title,.ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-paragraph>li{background:linear-gradient(90deg,rgba(190,190,190,.2) 25%,rgba(129,129,129,.24) 37%,rgba(190,190,190,.2) 63%);background-size:400% 100%;animation:ant-skeleton-loading 1.4s ease infinite}.ant-skeleton.ant-skeleton-active .ant-skeleton-avatar,.ant-skeleton.ant-skeleton-active .ant-skeleton-button,.ant-skeleton.ant-skeleton-active .ant-skeleton-input,.ant-skeleton.ant-skeleton-active .ant-skeleton-image{background:linear-gradient(90deg,rgba(190,190,190,.2) 25%,rgba(129,129,129,.24) 37%,rgba(190,190,190,.2) 63%);background-size:400% 100%;animation:ant-skeleton-loading 1.4s ease infinite}.ant-skeleton.ant-skeleton-block,.ant-skeleton.ant-skeleton-block .ant-skeleton-button,.ant-skeleton.ant-skeleton-block .ant-skeleton-input{width:100%}.ant-skeleton-element{display:inline-block;width:auto}.ant-skeleton-element .ant-skeleton-button{display:inline-block;vertical-align:top;background:rgba(190,190,190,.2);border-radius:2px;width:64px;min-width:64px;height:32px;line-height:32px}.ant-skeleton-element .ant-skeleton-button.ant-skeleton-button-circle{width:32px;min-width:32px;border-radius:50%}.ant-skeleton-element .ant-skeleton-button.ant-skeleton-button-round{border-radius:32px}.ant-skeleton-element .ant-skeleton-button-lg{width:80px;min-width:80px;height:40px;line-height:40px}.ant-skeleton-element .ant-skeleton-button-lg.ant-skeleton-button-circle{width:40px;min-width:40px;border-radius:50%}.ant-skeleton-element .ant-skeleton-button-lg.ant-skeleton-button-round{border-radius:40px}.ant-skeleton-element .ant-skeleton-button-sm{width:48px;min-width:48px;height:24px;line-height:24px}.ant-skeleton-element .ant-skeleton-button-sm.ant-skeleton-button-circle{width:24px;min-width:24px;border-radius:50%}.ant-skeleton-element .ant-skeleton-button-sm.ant-skeleton-button-round{border-radius:24px}.ant-skeleton-element .ant-skeleton-avatar{display:inline-block;vertical-align:top;background:rgba(190,190,190,.2);width:32px;height:32px;line-height:32px}.ant-skeleton-element .ant-skeleton-avatar.ant-skeleton-avatar-circle{border-radius:50%}.ant-skeleton-element .ant-skeleton-avatar-lg{width:40px;height:40px;line-height:40px}.ant-skeleton-element .ant-skeleton-avatar-lg.ant-skeleton-avatar-circle{border-radius:50%}.ant-skeleton-element .ant-skeleton-avatar-sm{width:24px;height:24px;line-height:24px}.ant-skeleton-element .ant-skeleton-avatar-sm.ant-skeleton-avatar-circle{border-radius:50%}.ant-skeleton-element .ant-skeleton-input{display:inline-block;vertical-align:top;background:rgba(190,190,190,.2);width:160px;min-width:160px;height:32px;line-height:32px}.ant-skeleton-element .ant-skeleton-input-lg{width:200px;min-width:200px;height:40px;line-height:40px}.ant-skeleton-element .ant-skeleton-input-sm{width:120px;min-width:120px;height:24px;line-height:24px}.ant-skeleton-element .ant-skeleton-image{display:flex;align-items:center;justify-content:center;vertical-align:top;background:rgba(190,190,190,.2);width:96px;height:96px;line-height:96px}.ant-skeleton-element .ant-skeleton-image.ant-skeleton-image-circle{border-radius:50%}.ant-skeleton-element .ant-skeleton-image-path{fill:#bfbfbf}.ant-skeleton-element .ant-skeleton-image-svg{width:48px;height:48px;line-height:48px;max-width:192px;max-height:192px}.ant-skeleton-element .ant-skeleton-image-svg.ant-skeleton-image-circle{border-radius:50%}@keyframes ant-skeleton-loading{0%{background-position:100% 50%}to{background-position:0 50%}}.ant-skeleton-rtl{direction:rtl}.ant-skeleton-rtl .ant-skeleton-header{padding-right:0;padding-left:16px}.ant-skeleton-rtl.ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-title,.ant-skeleton-rtl.ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-paragraph>li{animation-name:ant-skeleton-loading-rtl}.ant-skeleton-rtl.ant-skeleton.ant-skeleton-active .ant-skeleton-avatar{animation-name:ant-skeleton-loading-rtl}@keyframes ant-skeleton-loading-rtl{0%{background-position:0% 50%}to{background-position:100% 50%}}.ant-slider{box-sizing:border-box;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;height:12px;margin:10px 6px;padding:4px 0;cursor:pointer;touch-action:none}.ant-slider-vertical{width:12px;height:100%;margin:6px 10px;padding:0 4px}.ant-slider-vertical .ant-slider-rail{width:4px;height:100%}.ant-slider-vertical .ant-slider-track{width:4px}.ant-slider-vertical .ant-slider-handle{margin-top:-6px;margin-left:-5px}.ant-slider-vertical .ant-slider-mark{top:0;left:12px;width:18px;height:100%}.ant-slider-vertical .ant-slider-mark-text{left:4px;white-space:nowrap}.ant-slider-vertical .ant-slider-step{width:4px;height:100%}.ant-slider-vertical .ant-slider-dot{top:auto;margin-left:-2px}.ant-slider-tooltip .ant-tooltip-inner{min-width:unset}.ant-slider-rtl.ant-slider-vertical .ant-slider-handle{margin-right:-5px;margin-left:0}.ant-slider-rtl.ant-slider-vertical .ant-slider-mark{right:12px;left:auto}.ant-slider-rtl.ant-slider-vertical .ant-slider-mark-text{right:4px;left:auto}.ant-slider-rtl.ant-slider-vertical .ant-slider-dot{right:2px;left:auto}.ant-slider-with-marks{margin-bottom:28px}.ant-slider-rail{position:absolute;width:100%;height:4px;background-color:#f5f5f5;border-radius:2px;transition:background-color .3s}.ant-slider-track{position:absolute;height:4px;background-color:#91d5ff;border-radius:2px;transition:background-color .3s}.ant-slider-handle{position:absolute;width:14px;height:14px;margin-top:-5px;background-color:#fff;border:solid 2px #91d5ff;border-radius:50%;box-shadow:0;cursor:pointer;transition:border-color .3s,box-shadow .6s,transform .3s cubic-bezier(.18,.89,.32,1.28)}.ant-slider-handle-dragging{z-index:1}.ant-slider-handle:focus{border-color:#46a6ff;outline:none;box-shadow:0 0 0 5px #1890ff1f}.ant-slider-handle.ant-tooltip-open{border-color:#1890ff}.ant-slider:hover .ant-slider-rail{background-color:#e1e1e1}.ant-slider:hover .ant-slider-track{background-color:#69c0ff}.ant-slider:hover .ant-slider-handle:not(.ant-tooltip-open){border-color:#69c0ff}.ant-slider-mark{position:absolute;top:14px;left:0;width:100%;font-size:14px}.ant-slider-mark-text{position:absolute;display:inline-block;color:#00000073;text-align:center;word-break:keep-all;cursor:pointer;-webkit-user-select:none;user-select:none}.ant-slider-mark-text-active{color:#000000d9}.ant-slider-step{position:absolute;width:100%;height:4px;background:transparent;pointer-events:none}.ant-slider-dot{position:absolute;top:-2px;width:8px;height:8px;background-color:#fff;border:2px solid #f0f0f0;border-radius:50%;cursor:pointer}.ant-slider-dot-active{border-color:#8cc8ff}.ant-slider-disabled{cursor:not-allowed}.ant-slider-disabled .ant-slider-rail{background-color:#f5f5f5!important}.ant-slider-disabled .ant-slider-track{background-color:#00000040!important}.ant-slider-disabled .ant-slider-handle,.ant-slider-disabled .ant-slider-dot{background-color:#fff;border-color:#00000040!important;box-shadow:none;cursor:not-allowed}.ant-slider-disabled .ant-slider-mark-text,.ant-slider-disabled .ant-slider-dot{cursor:not-allowed!important}.ant-slider-rtl{direction:rtl}.ant-slider-rtl .ant-slider-mark{right:0;left:auto}.ant-spin{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:absolute;display:none;color:#1890ff;text-align:center;vertical-align:middle;opacity:0;transition:transform .3s cubic-bezier(.78,.14,.15,.86)}.ant-spin-spinning{position:static;display:inline-block;opacity:1}.ant-spin-nested-loading{position:relative}.ant-spin-nested-loading>div>.ant-spin{position:absolute;top:0;left:0;z-index:4;display:block;width:100%;height:100%;max-height:400px}.ant-spin-nested-loading>div>.ant-spin .ant-spin-dot{position:absolute;top:50%;left:50%;margin:-10px}.ant-spin-nested-loading>div>.ant-spin .ant-spin-text{position:absolute;top:50%;width:100%;padding-top:5px;text-shadow:0 1px 2px #fff}.ant-spin-nested-loading>div>.ant-spin.ant-spin-show-text .ant-spin-dot{margin-top:-20px}.ant-spin-nested-loading>div>.ant-spin-sm .ant-spin-dot{margin:-7px}.ant-spin-nested-loading>div>.ant-spin-sm .ant-spin-text{padding-top:2px}.ant-spin-nested-loading>div>.ant-spin-sm.ant-spin-show-text .ant-spin-dot{margin-top:-17px}.ant-spin-nested-loading>div>.ant-spin-lg .ant-spin-dot{margin:-16px}.ant-spin-nested-loading>div>.ant-spin-lg .ant-spin-text{padding-top:11px}.ant-spin-nested-loading>div>.ant-spin-lg.ant-spin-show-text .ant-spin-dot{margin-top:-26px}.ant-spin-container{position:relative;transition:opacity .3s}.ant-spin-container:after{position:absolute;inset:0;z-index:10;display:none \ ;width:100%;height:100%;background:#fff;opacity:0;transition:all .3s;content:"";pointer-events:none}.ant-spin-blur{clear:both;opacity:.5;-webkit-user-select:none;user-select:none;pointer-events:none}.ant-spin-blur:after{opacity:.4;pointer-events:auto}.ant-spin-tip{color:#00000073}.ant-spin-dot{position:relative;display:inline-block;font-size:20px;width:1em;height:1em}.ant-spin-dot-item{position:absolute;display:block;width:9px;height:9px;background-color:#1890ff;border-radius:100%;transform:scale(.75);transform-origin:50% 50%;opacity:.3;animation:antSpinMove 1s infinite linear alternate}.ant-spin-dot-item:nth-child(1){top:0;left:0}.ant-spin-dot-item:nth-child(2){top:0;right:0;animation-delay:.4s}.ant-spin-dot-item:nth-child(3){right:0;bottom:0;animation-delay:.8s}.ant-spin-dot-item:nth-child(4){bottom:0;left:0;animation-delay:1.2s}.ant-spin-dot-spin{transform:rotate(0);animation:antRotate 1.2s infinite linear}.ant-spin-sm .ant-spin-dot{font-size:14px}.ant-spin-sm .ant-spin-dot i{width:6px;height:6px}.ant-spin-lg .ant-spin-dot{font-size:32px}.ant-spin-lg .ant-spin-dot i{width:14px;height:14px}.ant-spin.ant-spin-show-text .ant-spin-text{display:block}@media all and (-ms-high-contrast: none),(-ms-high-contrast: active){.ant-spin-blur{background:#fff;opacity:.5}}@keyframes antSpinMove{to{opacity:1}}@keyframes antRotate{to{transform:rotate(360deg)}}.ant-spin-rtl{direction:rtl}.ant-spin-rtl .ant-spin-dot-spin{transform:rotate(-45deg);animation-name:antRotateRtl}@keyframes antRotateRtl{to{transform:rotate(-405deg)}}nz-spin{display:block}.ant-statistic{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum"}.ant-statistic-title{margin-bottom:4px;color:#00000073;font-size:14px}.ant-statistic-content{color:#000000d9;font-size:24px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}.ant-statistic-content-value{display:inline-block;direction:ltr}.ant-statistic-content-prefix,.ant-statistic-content-suffix{display:inline-block}.ant-statistic-content-prefix{margin-right:4px}.ant-statistic-content-suffix{margin-left:4px}.ant-statistic-rtl{direction:rtl}.ant-statistic-rtl .ant-statistic-content-prefix{margin-right:0;margin-left:4px}.ant-statistic-rtl .ant-statistic-content-suffix{margin-right:4px;margin-left:0}.ant-steps{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";display:flex;width:100%;font-size:0;text-align:initial}.ant-steps-item{position:relative;display:inline-block;flex:1;overflow:hidden;vertical-align:top}.ant-steps-item-container{outline:none}.ant-steps-item:last-child{flex:none}.ant-steps-item:last-child>.ant-steps-item-container>.ant-steps-item-tail,.ant-steps-item:last-child>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title:after{display:none}.ant-steps-item-icon,.ant-steps-item-content{display:inline-block;vertical-align:top}.ant-steps-item-icon{width:32px;height:32px;margin:0 8px 0 0;font-size:16px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:32px;text-align:center;border:1px solid rgba(0,0,0,.25);border-radius:32px;transition:background-color .3s,border-color .3s}.ant-steps-item-icon .ant-steps-icon{position:relative;top:-.5px;color:#1890ff;line-height:1}.ant-steps-item-tail{position:absolute;top:12px;left:0;width:100%;padding:0 10px}.ant-steps-item-tail:after{display:inline-block;width:100%;height:1px;background:#f0f0f0;border-radius:1px;transition:background .3s;content:""}.ant-steps-item-title{position:relative;display:inline-block;padding-right:16px;color:#000000d9;font-size:16px;line-height:32px}.ant-steps-item-title:after{position:absolute;top:16px;left:100%;display:block;width:9999px;height:1px;background:#f0f0f0;content:""}.ant-steps-item-subtitle{display:inline;margin-left:8px;color:#00000073;font-weight:400;font-size:14px}.ant-steps-item-description{color:#00000073;font-size:14px}.ant-steps-item-wait .ant-steps-item-icon{background-color:#fff;border-color:#00000040}.ant-steps-item-wait .ant-steps-item-icon>.ant-steps-icon{color:#00000040}.ant-steps-item-wait .ant-steps-item-icon>.ant-steps-icon .ant-steps-icon-dot{background:rgba(0,0,0,.25)}.ant-steps-item-wait>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title{color:#00000073}.ant-steps-item-wait>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title:after{background-color:#f0f0f0}.ant-steps-item-wait>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-description{color:#00000073}.ant-steps-item-wait>.ant-steps-item-container>.ant-steps-item-tail:after{background-color:#f0f0f0}.ant-steps-item-process .ant-steps-item-icon{background-color:#fff;border-color:#1890ff}.ant-steps-item-process .ant-steps-item-icon>.ant-steps-icon{color:#1890ff}.ant-steps-item-process .ant-steps-item-icon>.ant-steps-icon .ant-steps-icon-dot{background:#1890ff}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title{color:#000000d9}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title:after{background-color:#f0f0f0}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-description{color:#000000d9}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-tail:after{background-color:#f0f0f0}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-icon{background:#1890ff}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-icon .ant-steps-icon{color:#fff}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-title{font-weight:500}.ant-steps-item-finish .ant-steps-item-icon{background-color:#fff;border-color:#1890ff}.ant-steps-item-finish .ant-steps-item-icon>.ant-steps-icon{color:#1890ff}.ant-steps-item-finish .ant-steps-item-icon>.ant-steps-icon .ant-steps-icon-dot{background:#1890ff}.ant-steps-item-finish>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title{color:#000000d9}.ant-steps-item-finish>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title:after{background-color:#1890ff}.ant-steps-item-finish>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-description{color:#00000073}.ant-steps-item-finish>.ant-steps-item-container>.ant-steps-item-tail:after{background-color:#1890ff}.ant-steps-item-error .ant-steps-item-icon{background-color:#fff;border-color:#ff4d4f}.ant-steps-item-error .ant-steps-item-icon>.ant-steps-icon{color:#ff4d4f}.ant-steps-item-error .ant-steps-item-icon>.ant-steps-icon .ant-steps-icon-dot{background:#ff4d4f}.ant-steps-item-error>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title{color:#ff4d4f}.ant-steps-item-error>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title:after{background-color:#f0f0f0}.ant-steps-item-error>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-description{color:#ff4d4f}.ant-steps-item-error>.ant-steps-item-container>.ant-steps-item-tail:after{background-color:#f0f0f0}.ant-steps-item.ant-steps-next-error .ant-steps-item-title:after{background:#ff4d4f}.ant-steps-item-disabled{cursor:not-allowed}.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button]{cursor:pointer}.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button] .ant-steps-item-title,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button] .ant-steps-item-subtitle,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button] .ant-steps-item-description,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button] .ant-steps-item-icon .ant-steps-icon{transition:color .3s}.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button]:hover .ant-steps-item-title,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button]:hover .ant-steps-item-subtitle,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button]:hover .ant-steps-item-description{color:#1890ff}.ant-steps .ant-steps-item:not(.ant-steps-item-active):not(.ant-steps-item-process)>.ant-steps-item-container[role=button]:hover .ant-steps-item-icon{border-color:#1890ff}.ant-steps .ant-steps-item:not(.ant-steps-item-active):not(.ant-steps-item-process)>.ant-steps-item-container[role=button]:hover .ant-steps-item-icon .ant-steps-icon{color:#1890ff}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item{padding-left:16px;white-space:nowrap}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:first-child{padding-left:0}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:last-child .ant-steps-item-title{padding-right:0}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item-tail{display:none}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item-description{max-width:140px;white-space:normal}.ant-steps-item-custom>.ant-steps-item-container>.ant-steps-item-icon{height:auto;background:none;border:0}.ant-steps-item-custom>.ant-steps-item-container>.ant-steps-item-icon>.ant-steps-icon{top:0;left:.5px;width:32px;height:32px;font-size:24px;line-height:32px}.ant-steps-item-custom.ant-steps-item-process .ant-steps-item-icon>.ant-steps-icon{color:#1890ff}.ant-steps:not(.ant-steps-vertical) .ant-steps-item-custom .ant-steps-item-icon{width:auto;background:none}.ant-steps-small.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item{padding-left:12px}.ant-steps-small.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:first-child{padding-left:0}.ant-steps-small .ant-steps-item-icon{width:24px;height:24px;margin:0 8px 0 0;font-size:12px;line-height:24px;text-align:center;border-radius:24px}.ant-steps-small .ant-steps-item-title{padding-right:12px;font-size:14px;line-height:24px}.ant-steps-small .ant-steps-item-title:after{top:12px}.ant-steps-small .ant-steps-item-description{color:#00000073;font-size:14px}.ant-steps-small .ant-steps-item-tail{top:8px}.ant-steps-small .ant-steps-item-custom .ant-steps-item-icon{width:inherit;height:inherit;line-height:inherit;background:none;border:0;border-radius:0}.ant-steps-small .ant-steps-item-custom .ant-steps-item-icon>.ant-steps-icon{font-size:24px;line-height:24px;transform:none}.ant-steps-vertical{display:flex;flex-direction:column}.ant-steps-vertical>.ant-steps-item{display:block;flex:1 0 auto;padding-left:0;overflow:visible}.ant-steps-vertical>.ant-steps-item .ant-steps-item-icon{float:left;margin-right:16px}.ant-steps-vertical>.ant-steps-item .ant-steps-item-content{display:block;min-height:48px;overflow:hidden}.ant-steps-vertical>.ant-steps-item .ant-steps-item-title{line-height:32px}.ant-steps-vertical>.ant-steps-item .ant-steps-item-description{padding-bottom:12px}.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{position:absolute;top:0;left:16px;width:1px;height:100%;padding:38px 0 6px}.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail:after{width:1px;height:100%}.ant-steps-vertical>.ant-steps-item:not(:last-child)>.ant-steps-item-container>.ant-steps-item-tail{display:block}.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title:after{display:none}.ant-steps-vertical.ant-steps-small .ant-steps-item-container .ant-steps-item-tail{position:absolute;top:0;left:12px;padding:30px 0 6px}.ant-steps-vertical.ant-steps-small .ant-steps-item-container .ant-steps-item-title{line-height:24px}.ant-steps-label-vertical .ant-steps-item{overflow:visible}.ant-steps-label-vertical .ant-steps-item-tail{margin-left:58px;padding:3.5px 24px}.ant-steps-label-vertical .ant-steps-item-content{display:block;width:116px;margin-top:8px;text-align:center}.ant-steps-label-vertical .ant-steps-item-icon{display:inline-block;margin-left:42px}.ant-steps-label-vertical .ant-steps-item-title{padding-right:0;padding-left:0}.ant-steps-label-vertical .ant-steps-item-title:after{display:none}.ant-steps-label-vertical .ant-steps-item-subtitle{display:block;margin-bottom:4px;margin-left:0;line-height:1.5715}.ant-steps-label-vertical.ant-steps-small:not(.ant-steps-dot) .ant-steps-item-icon{margin-left:46px}.ant-steps-dot .ant-steps-item-title,.ant-steps-dot.ant-steps-small .ant-steps-item-title{line-height:1.5715}.ant-steps-dot .ant-steps-item-tail,.ant-steps-dot.ant-steps-small .ant-steps-item-tail{top:2px;width:100%;margin:0 0 0 70px;padding:0}.ant-steps-dot .ant-steps-item-tail:after,.ant-steps-dot.ant-steps-small .ant-steps-item-tail:after{width:calc(100% - 20px);height:3px;margin-left:12px}.ant-steps-dot .ant-steps-item:first-child .ant-steps-icon-dot,.ant-steps-dot.ant-steps-small .ant-steps-item:first-child .ant-steps-icon-dot{left:2px}.ant-steps-dot .ant-steps-item-icon,.ant-steps-dot.ant-steps-small .ant-steps-item-icon{width:8px;height:8px;margin-left:67px;padding-right:0;line-height:8px;background:transparent;border:0}.ant-steps-dot .ant-steps-item-icon .ant-steps-icon-dot,.ant-steps-dot.ant-steps-small .ant-steps-item-icon .ant-steps-icon-dot{position:relative;float:left;width:100%;height:100%;border-radius:100px;transition:all .3s}.ant-steps-dot .ant-steps-item-icon .ant-steps-icon-dot:after,.ant-steps-dot.ant-steps-small .ant-steps-item-icon .ant-steps-icon-dot:after{position:absolute;top:-12px;left:-26px;width:60px;height:32px;background:rgba(0,0,0,.001);content:""}.ant-steps-dot .ant-steps-item-content,.ant-steps-dot.ant-steps-small .ant-steps-item-content{width:140px}.ant-steps-dot .ant-steps-item-process .ant-steps-item-icon,.ant-steps-dot.ant-steps-small .ant-steps-item-process .ant-steps-item-icon{position:relative;top:-1px;width:10px;height:10px;line-height:10px;background:none}.ant-steps-dot .ant-steps-item-process .ant-steps-icon:first-child .ant-steps-icon-dot,.ant-steps-dot.ant-steps-small .ant-steps-item-process .ant-steps-icon:first-child .ant-steps-icon-dot{left:0}.ant-steps-vertical.ant-steps-dot .ant-steps-item-icon{margin-top:13px;margin-left:0;background:none}.ant-steps-vertical.ant-steps-dot .ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{top:6.5px;left:-9px;margin:0;padding:22px 0 4px}.ant-steps-vertical.ant-steps-dot.ant-steps-small .ant-steps-item-icon{margin-top:10px}.ant-steps-vertical.ant-steps-dot.ant-steps-small .ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{top:3.5px}.ant-steps-vertical.ant-steps-dot .ant-steps-item:first-child .ant-steps-icon-dot{left:0}.ant-steps-vertical.ant-steps-dot .ant-steps-item-content{width:inherit}.ant-steps-vertical.ant-steps-dot .ant-steps-item-process .ant-steps-item-container .ant-steps-item-icon .ant-steps-icon-dot{top:-1px;left:-1px}.ant-steps-navigation{padding-top:12px}.ant-steps-navigation.ant-steps-small .ant-steps-item-container{margin-left:-12px}.ant-steps-navigation .ant-steps-item{overflow:visible;text-align:center}.ant-steps-navigation .ant-steps-item-container{display:inline-block;height:100%;margin-left:-16px;padding-bottom:12px;text-align:left;transition:opacity .3s}.ant-steps-navigation .ant-steps-item-container .ant-steps-item-content{max-width:auto}.ant-steps-navigation .ant-steps-item-container .ant-steps-item-title{max-width:100%;padding-right:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-steps-navigation .ant-steps-item-container .ant-steps-item-title:after{display:none}.ant-steps-navigation .ant-steps-item:not(.ant-steps-item-active) .ant-steps-item-container[role=button]{cursor:pointer}.ant-steps-navigation .ant-steps-item:not(.ant-steps-item-active) .ant-steps-item-container[role=button]:hover{opacity:.85}.ant-steps-navigation .ant-steps-item:last-child{flex:1}.ant-steps-navigation .ant-steps-item:last-child:after{display:none}.ant-steps-navigation .ant-steps-item:after{position:absolute;top:50%;left:100%;display:inline-block;width:12px;height:12px;margin-top:-14px;margin-left:-2px;border:1px solid rgba(0,0,0,.25);border-bottom:none;border-left:none;transform:rotate(45deg);content:""}.ant-steps-navigation .ant-steps-item:before{position:absolute;bottom:0;left:50%;display:inline-block;width:0;height:2px;background-color:#1890ff;transition:width .3s,left .3s;transition-timing-function:ease-out;content:""}.ant-steps-navigation .ant-steps-item.ant-steps-item-active:before{left:0;width:100%}.ant-steps-navigation.ant-steps-vertical>.ant-steps-item{margin-right:0!important}.ant-steps-navigation.ant-steps-vertical>.ant-steps-item:before{display:none}.ant-steps-navigation.ant-steps-vertical>.ant-steps-item.ant-steps-item-active:before{top:0;right:0;left:unset;display:block;width:3px;height:calc(100% - 24px)}.ant-steps-navigation.ant-steps-vertical>.ant-steps-item:after{position:relative;top:-2px;left:50%;display:block;width:8px;height:8px;margin-bottom:8px;text-align:center;transform:rotate(135deg)}.ant-steps-navigation.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{visibility:hidden}.ant-steps-navigation.ant-steps-horizontal>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{visibility:hidden}.ant-steps-rtl{direction:rtl}.ant-steps.ant-steps-rtl .ant-steps-item-icon{margin-right:0;margin-left:8px}.ant-steps-rtl .ant-steps-item-tail{right:0;left:auto}.ant-steps-rtl .ant-steps-item-title{padding-right:0;padding-left:16px}.ant-steps-rtl .ant-steps-item-title .ant-steps-item-subtitle{float:left;margin-right:8px;margin-left:0}.ant-steps-rtl .ant-steps-item-title:after{right:100%;left:auto}.ant-steps-rtl.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item{padding-right:16px;padding-left:0}.ant-steps-rtl.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:first-child{padding-right:0}.ant-steps-rtl.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:last-child .ant-steps-item-title{padding-left:0}.ant-steps-rtl .ant-steps-item-custom .ant-steps-item-icon>.ant-steps-icon{right:.5px;left:auto}.ant-steps-rtl.ant-steps-navigation.ant-steps-small .ant-steps-item-container{margin-right:-12px;margin-left:0}.ant-steps-rtl.ant-steps-navigation .ant-steps-item-container{margin-right:-16px;margin-left:0;text-align:right}.ant-steps-rtl.ant-steps-navigation .ant-steps-item-container .ant-steps-item-title{padding-left:0}.ant-steps-rtl.ant-steps-navigation .ant-steps-item:after{right:100%;left:auto;margin-right:-2px;margin-left:0;transform:rotate(225deg)}.ant-steps-rtl.ant-steps-small.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item{padding-right:12px;padding-left:0}.ant-steps-rtl.ant-steps-small.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:first-child{padding-right:0}.ant-steps-rtl.ant-steps-small .ant-steps-item-title{padding-right:0;padding-left:12px}.ant-steps-rtl.ant-steps-vertical>.ant-steps-item .ant-steps-item-icon{float:right;margin-right:0;margin-left:16px}.ant-steps-rtl.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{right:16px;left:auto}.ant-steps-rtl.ant-steps-vertical.ant-steps-small .ant-steps-item-container .ant-steps-item-tail{right:12px;left:auto}.ant-steps-rtl.ant-steps-label-vertical .ant-steps-item-title{padding-left:0}.ant-steps-rtl.ant-steps-dot .ant-steps-item-tail,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-tail{margin:0 70px 0 0}.ant-steps-rtl.ant-steps-dot .ant-steps-item-tail:after,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-tail:after{margin-right:12px;margin-left:0}.ant-steps-rtl.ant-steps-dot .ant-steps-item:first-child .ant-steps-icon-dot,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item:first-child .ant-steps-icon-dot{right:2px;left:auto}.ant-steps-rtl.ant-steps-dot .ant-steps-item-icon,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-icon{margin-right:67px;margin-left:0}.ant-steps-rtl.ant-steps-dot .ant-steps-item-icon .ant-steps-icon-dot,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-icon .ant-steps-icon-dot{float:right}.ant-steps-rtl.ant-steps-dot .ant-steps-item-icon .ant-steps-icon-dot:after,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-icon .ant-steps-icon-dot:after{right:-26px;left:auto}.ant-steps-rtl.ant-steps-vertical.ant-steps-dot .ant-steps-item-icon{margin-right:0;margin-left:16px}.ant-steps-rtl.ant-steps-vertical.ant-steps-dot .ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{right:-9px;left:auto}.ant-steps-rtl.ant-steps-vertical.ant-steps-dot .ant-steps-item:first-child .ant-steps-icon-dot{right:0;left:auto}.ant-steps-rtl.ant-steps-vertical.ant-steps-dot .ant-steps-item-process .ant-steps-icon-dot{right:-2px;left:auto}.ant-steps-rtl.ant-steps-with-progress.ant-steps-horizontal.ant-steps-label-horizontal .ant-steps-item:first-child{padding-right:4px;padding-left:0}.ant-steps-rtl.ant-steps-with-progress.ant-steps-horizontal.ant-steps-label-horizontal .ant-steps-item:first-child.ant-steps-item-active{padding-right:4px}.ant-steps-with-progress .ant-steps-item{padding-top:4px}.ant-steps-with-progress .ant-steps-item .ant-steps-item-tail{top:4px!important}.ant-steps-with-progress.ant-steps-horizontal .ant-steps-item:first-child{padding-bottom:4px;padding-left:4px}.ant-steps-with-progress .ant-steps-item-icon{position:relative}.ant-steps-with-progress .ant-steps-item-icon .ant-progress{position:absolute;inset:-5px}.ant-switch{margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;display:inline-block;box-sizing:border-box;min-width:44px;height:22px;line-height:22px;vertical-align:middle;background-image:linear-gradient(to right,rgba(0,0,0,.25),rgba(0,0,0,.25)),linear-gradient(to right,#fff,#fff);border:0;border-radius:100px;cursor:pointer;transition:all .2s;-webkit-user-select:none;user-select:none}.ant-switch:focus{outline:0;box-shadow:0 0 0 2px #0000001a}.ant-switch-checked:focus{box-shadow:0 0 0 2px #e6f7ff}.ant-switch:focus:hover{box-shadow:none}.ant-switch-checked{background:#1890ff}.ant-switch-loading,.ant-switch-disabled{cursor:not-allowed;opacity:.4}.ant-switch-loading *,.ant-switch-disabled *{box-shadow:none;cursor:not-allowed}.ant-switch-inner{display:block;margin:0 7px 0 25px;color:#fff;font-size:12px;transition:margin .2s}.ant-switch-checked .ant-switch-inner{margin:0 25px 0 7px}.ant-switch-handle{position:absolute;top:2px;left:2px;width:18px;height:18px;transition:all .2s ease-in-out}.ant-switch-handle:before{position:absolute;inset:0;background-color:#fff;border-radius:9px;box-shadow:0 2px 4px #00230b33;transition:all .2s ease-in-out;content:""}.ant-switch-checked .ant-switch-handle{left:calc(100% - 20px)}.ant-switch:not(.ant-switch-disabled):active .ant-switch-handle:before{right:-30%;left:0}.ant-switch:not(.ant-switch-disabled):active.ant-switch-checked .ant-switch-handle:before{right:0;left:-30%}.ant-switch-loading-icon.anticon{position:relative;top:2px;color:#000000a6;vertical-align:top}.ant-switch-checked .ant-switch-loading-icon{color:#1890ff}.ant-switch-small{min-width:28px;height:16px;line-height:16px}.ant-switch-small .ant-switch-inner{margin:0 5px 0 18px;font-size:12px}.ant-switch-small .ant-switch-handle{width:12px;height:12px}.ant-switch-small .ant-switch-loading-icon{top:1.5px;font-size:9px}.ant-switch-small.ant-switch-checked .ant-switch-inner{margin:0 18px 0 5px}.ant-switch-small.ant-switch-checked .ant-switch-handle{left:calc(100% - 14px)}.ant-switch-rtl{direction:rtl}.ant-switch-rtl .ant-switch-inner{margin:0 25px 0 7px}.ant-switch-rtl .ant-switch-handle{right:2px;left:auto}.ant-switch-rtl:not(.ant-switch-rtl-disabled):active .ant-switch-handle:before{right:0;left:-30%}.ant-switch-rtl:not(.ant-switch-rtl-disabled):active.ant-switch-checked .ant-switch-handle:before{right:-30%;left:0}.ant-switch-rtl.ant-switch-checked .ant-switch-inner{margin:0 7px 0 25px}.ant-switch-rtl.ant-switch-checked .ant-switch-handle{right:calc(100% - 20px)}.ant-switch-rtl.ant-switch-small.ant-switch-checked .ant-switch-handle{right:calc(100% - 14px)}nz-switch{display:inline-block}.ant-table.ant-table-middle{font-size:14px}.ant-table.ant-table-middle .ant-table-title,.ant-table.ant-table-middle .ant-table-footer,.ant-table.ant-table-middle .ant-table-thead>tr>th,.ant-table.ant-table-middle .ant-table-tbody>tr>td,.ant-table.ant-table-middle tfoot>tr>th,.ant-table.ant-table-middle tfoot>tr>td{padding:12px 8px}.ant-table.ant-table-middle .ant-table-filter-trigger{margin-right:-4px}.ant-table.ant-table-middle .ant-table-expanded-row-fixed{margin:-12px -8px}.ant-table.ant-table-middle .ant-table-tbody .ant-table-wrapper:only-child .ant-table{margin:-12px -8px -12px 25px}.ant-table.ant-table-middle .ant-table-selection-column{padding-inline-start:2px}.ant-table.ant-table-small{font-size:14px}.ant-table.ant-table-small .ant-table-title,.ant-table.ant-table-small .ant-table-footer,.ant-table.ant-table-small .ant-table-thead>tr>th,.ant-table.ant-table-small .ant-table-tbody>tr>td,.ant-table.ant-table-small tfoot>tr>th,.ant-table.ant-table-small tfoot>tr>td{padding:8px}.ant-table.ant-table-small .ant-table-filter-trigger{margin-right:-4px}.ant-table.ant-table-small .ant-table-expanded-row-fixed{margin:-8px}.ant-table.ant-table-small .ant-table-tbody .ant-table-wrapper:only-child .ant-table{margin:-8px -8px -8px 25px}.ant-table.ant-table-small .ant-table-selection-column{padding-inline-start:2px}.ant-table.ant-table-bordered>.ant-table-title{border:1px solid #f0f0f0;border-bottom:0}.ant-table.ant-table-bordered>.ant-table-container{border-left:1px solid #f0f0f0}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tfoot>tr>td{border-right:1px solid #f0f0f0}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr:not(:last-child)>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr:not(:last-child)>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr:not(:last-child)>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr:not(:last-child)>th{border-bottom:1px solid #f0f0f0}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr>th:before,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr>th:before,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr>th:before,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr>th:before{background-color:transparent!important}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tfoot>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tfoot>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tfoot>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tfoot>tr>.ant-table-cell-fix-right-first:after{border-right:1px solid #f0f0f0}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-16px -17px}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>td>.ant-table-expanded-row-fixed:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>td>.ant-table-expanded-row-fixed:after{position:absolute;top:0;right:1px;bottom:0;border-right:1px solid #f0f0f0;content:""}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table{border-top:1px solid #f0f0f0}.ant-table.ant-table-bordered.ant-table-scroll-horizontal>.ant-table-container>.ant-table-body>table>tbody>tr.ant-table-expanded-row>td,.ant-table.ant-table-bordered.ant-table-scroll-horizontal>.ant-table-container>.ant-table-body>table>tbody>tr.ant-table-placeholder>td{border-right:0}.ant-table.ant-table-bordered.ant-table-middle>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered.ant-table-middle>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-12px -9px}.ant-table.ant-table-bordered.ant-table-small>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered.ant-table-small>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-8px -9px}.ant-table.ant-table-bordered>.ant-table-footer{border:1px solid #f0f0f0;border-top:0}.ant-table-cell .ant-table-container:first-child{border-top:0}.ant-table-cell-scrollbar:not([rowspan]){box-shadow:0 1px 0 1px #fafafa}.ant-table-wrapper{clear:both;max-width:100%}.ant-table-wrapper:before{display:table;content:""}.ant-table-wrapper:after{display:table;clear:both;content:""}.ant-table{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;font-size:14px;background:#fff;border-radius:2px}.ant-table table{width:100%;text-align:left;border-radius:2px 2px 0 0;border-collapse:separate;border-spacing:0}.ant-table-thead>tr>th,.ant-table-tbody>tr>td,.ant-table tfoot>tr>th,.ant-table tfoot>tr>td{position:relative;padding:16px;overflow-wrap:break-word}.ant-table-cell-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all}.ant-table-cell-ellipsis.ant-table-cell-fix-left-last,.ant-table-cell-ellipsis.ant-table-cell-fix-right-first{overflow:visible}.ant-table-cell-ellipsis.ant-table-cell-fix-left-last .ant-table-cell-content,.ant-table-cell-ellipsis.ant-table-cell-fix-right-first .ant-table-cell-content{display:block;overflow:hidden;text-overflow:ellipsis}.ant-table-cell-ellipsis .ant-table-column-title{overflow:hidden;text-overflow:ellipsis;word-break:keep-all}.ant-table-title{padding:16px}.ant-table-footer{padding:16px;color:#000000d9;background:#fafafa}.ant-table-thead>tr>th{position:relative;color:#000000d9;font-weight:500;text-align:left;background:#fafafa;border-bottom:1px solid #f0f0f0;transition:background .3s ease}.ant-table-thead>tr>th[colspan]:not([colspan="1"]){text-align:center}.ant-table-thead>tr>th:not(:last-child):not(.ant-table-selection-column):not(.ant-table-row-expand-icon-cell):not([colspan]):before{position:absolute;top:50%;right:0;width:1px;height:1.6em;background-color:#0000000f;transform:translateY(-50%);transition:background-color .3s;content:""}.ant-table-thead>tr:not(:last-child)>th[colspan]{border-bottom:0}.ant-table-tbody>tr>td{border-bottom:1px solid #f0f0f0;transition:background .3s}.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table,.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table{margin:-16px -16px -16px 33px}.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td,.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td{border-bottom:0}.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:first-child,.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:first-child,.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:last-child,.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:last-child{border-radius:0}.ant-table-tbody>tr.ant-table-row:hover>td,.ant-table-tbody>tr>td.ant-table-cell-row-hover{background:#fafafa}.ant-table-tbody>tr.ant-table-row-selected>td{background:#e6f7ff;border-color:#00000008}.ant-table-tbody>tr.ant-table-row-selected:hover>td{background:#dcf4ff}.ant-table-summary{position:relative;z-index:2;background:#fff}div.ant-table-summary{box-shadow:0 -1px #f0f0f0}.ant-table-summary>tr>th,.ant-table-summary>tr>td{border-bottom:1px solid #f0f0f0}.ant-table-pagination.ant-pagination{margin:16px 0}.ant-table-pagination{display:flex;flex-wrap:wrap;row-gap:8px}.ant-table-pagination>*{flex:none}.ant-table-pagination-left{justify-content:flex-start}.ant-table-pagination-center{justify-content:center}.ant-table-pagination-right{justify-content:flex-end}.ant-table-thead th.ant-table-column-has-sorters{outline:none;cursor:pointer;transition:all .3s}.ant-table-thead th.ant-table-column-has-sorters:hover{background:rgba(0,0,0,.04)}.ant-table-thead th.ant-table-column-has-sorters:hover:before{background-color:transparent!important}.ant-table-thead th.ant-table-column-has-sorters:focus-visible{color:#1890ff}.ant-table-thead th.ant-table-column-has-sorters.ant-table-cell-fix-left:hover,.ant-table-thead th.ant-table-column-has-sorters.ant-table-cell-fix-right:hover,.ant-table-thead th.ant-table-column-sort{background:#f5f5f5}.ant-table-thead th.ant-table-column-sort:before{background-color:transparent!important}td.ant-table-column-sort{background:#fafafa}.ant-table-column-title{position:relative;z-index:1;flex:1}.ant-table-column-sorters{display:flex;flex:auto;align-items:center;justify-content:space-between}.ant-table-column-sorters:after{position:absolute;inset:0;width:100%;height:100%;content:""}.ant-table-column-sorter{margin-left:4px;color:#bfbfbf;font-size:0;transition:color .3s}.ant-table-column-sorter-inner{display:inline-flex;flex-direction:column;align-items:center}.ant-table-column-sorter-up,.ant-table-column-sorter-down{font-size:11px}.ant-table-column-sorter-up.active,.ant-table-column-sorter-down.active{color:#1890ff}.ant-table-column-sorter-up+.ant-table-column-sorter-down{margin-top:-.3em}.ant-table-column-sorters:hover .ant-table-column-sorter{color:#a6a6a6}.ant-table-filter-column{display:flex;justify-content:space-between}.ant-table-filter-trigger{position:relative;display:flex;align-items:center;margin:-4px -8px -4px 4px;padding:0 4px;color:#bfbfbf;font-size:12px;border-radius:2px;cursor:pointer;transition:all .3s}.ant-table-filter-trigger:hover{color:#00000073;background:rgba(0,0,0,.04)}.ant-table-filter-trigger.active{color:#1890ff}.ant-table-filter-dropdown{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";min-width:120px;background-color:#fff;border-radius:2px;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d}.ant-table-filter-dropdown .ant-dropdown-menu{max-height:264px;overflow-x:hidden;border:0;box-shadow:none}.ant-table-filter-dropdown .ant-dropdown-menu:empty:after{display:block;padding:8px 0;color:#00000040;font-size:12px;text-align:center;content:"Not Found"}.ant-table-filter-dropdown-tree{padding:8px 8px 0}.ant-table-filter-dropdown-tree .ant-tree-treenode .ant-tree-node-content-wrapper:hover{background-color:#f5f5f5}.ant-table-filter-dropdown-tree .ant-tree-treenode-checkbox-checked .ant-tree-node-content-wrapper,.ant-table-filter-dropdown-tree .ant-tree-treenode-checkbox-checked .ant-tree-node-content-wrapper:hover{background-color:#bae7ff}.ant-table-filter-dropdown-search{padding:8px;border-bottom:1px #f0f0f0 solid}.ant-table-filter-dropdown-search-input input{min-width:140px}.ant-table-filter-dropdown-search-input .anticon{color:#00000040}.ant-table-filter-dropdown-checkall{width:100%;margin-bottom:4px;margin-left:4px}.ant-table-filter-dropdown-submenu>ul{max-height:calc(100vh - 130px);overflow-x:hidden;overflow-y:auto}.ant-table-filter-dropdown .ant-checkbox-wrapper+span,.ant-table-filter-dropdown-submenu .ant-checkbox-wrapper+span{padding-left:8px}.ant-table-filter-dropdown-btns{display:flex;justify-content:space-between;padding:7px 8px;overflow:hidden;background-color:inherit;border-top:1px solid #f0f0f0}.ant-table-selection-col{width:32px}.ant-table-bordered .ant-table-selection-col{width:50px}table tr th.ant-table-selection-column,table tr td.ant-table-selection-column{padding-right:8px;padding-left:8px;text-align:center}table tr th.ant-table-selection-column .ant-radio-wrapper,table tr td.ant-table-selection-column .ant-radio-wrapper{margin-right:0}table tr th.ant-table-selection-column.ant-table-cell-fix-left{z-index:3}table tr th.ant-table-selection-column:after{background-color:transparent!important}.ant-table-selection{position:relative;display:inline-flex;flex-direction:column}.ant-table-selection-extra{position:absolute;top:0;z-index:1;cursor:pointer;transition:all .3s;margin-inline-start:100%;padding-inline-start:4px}.ant-table-selection-extra .anticon{color:#bfbfbf;font-size:10px}.ant-table-selection-extra .anticon:hover{color:#a6a6a6}.ant-table-expand-icon-col{width:48px}.ant-table-row-expand-icon-cell{text-align:center}.ant-table-row-indent{float:left;height:1px}.ant-table-row-expand-icon{color:#1890ff;text-decoration:none;cursor:pointer;transition:color .3s;position:relative;display:inline-flex;float:left;box-sizing:border-box;width:17px;height:17px;padding:0;color:inherit;line-height:17px;background:#fff;border:1px solid #f0f0f0;border-radius:2px;outline:none;transform:scale(.94117647);transition:all .3s;-webkit-user-select:none;user-select:none}.ant-table-row-expand-icon:focus,.ant-table-row-expand-icon:hover{color:#40a9ff}.ant-table-row-expand-icon:active{color:#096dd9}.ant-table-row-expand-icon:focus,.ant-table-row-expand-icon:hover,.ant-table-row-expand-icon:active{border-color:currentcolor}.ant-table-row-expand-icon:before,.ant-table-row-expand-icon:after{position:absolute;background:currentcolor;transition:transform .3s ease-out;content:""}.ant-table-row-expand-icon:before{top:7px;right:3px;left:3px;height:1px}.ant-table-row-expand-icon:after{top:3px;bottom:3px;left:7px;width:1px;transform:rotate(90deg)}.ant-table-row-expand-icon-collapsed:before{transform:rotate(-180deg)}.ant-table-row-expand-icon-collapsed:after{transform:rotate(0)}.ant-table-row-expand-icon-spaced{background:transparent;border:0;visibility:hidden}.ant-table-row-expand-icon-spaced:before,.ant-table-row-expand-icon-spaced:after{display:none;content:none}.ant-table-row-indent+.ant-table-row-expand-icon{margin-top:2.5005px;margin-right:8px}tr.ant-table-expanded-row>td,tr.ant-table-expanded-row:hover>td{background:#fbfbfb}tr.ant-table-expanded-row .ant-descriptions-view{display:flex}tr.ant-table-expanded-row .ant-descriptions-view table{flex:auto;width:auto}.ant-table .ant-table-expanded-row-fixed{position:relative;margin:-16px;padding:16px}.ant-table-tbody>tr.ant-table-placeholder{text-align:center}.ant-table-empty .ant-table-tbody>tr.ant-table-placeholder{color:#00000040}.ant-table-tbody>tr.ant-table-placeholder:hover>td{background:#fff}.ant-table-cell-fix-left,.ant-table-cell-fix-right{position:sticky!important;z-index:2;background:#fff}.ant-table-cell-fix-left-first:after,.ant-table-cell-fix-left-last:after{position:absolute;top:0;right:0;bottom:-1px;width:30px;transform:translate(100%);transition:box-shadow .3s;content:"";pointer-events:none}.ant-table-cell-fix-right-first:after,.ant-table-cell-fix-right-last:after{position:absolute;top:0;bottom:-1px;left:0;width:30px;transform:translate(-100%);transition:box-shadow .3s;content:"";pointer-events:none}.ant-table .ant-table-container:before,.ant-table .ant-table-container:after{position:absolute;top:0;bottom:0;z-index:1;width:30px;transition:box-shadow .3s;content:"";pointer-events:none}.ant-table .ant-table-container:before{left:0}.ant-table .ant-table-container:after{right:0}.ant-table-ping-left:not(.ant-table-has-fix-left) .ant-table-container{position:relative}.ant-table-ping-left:not(.ant-table-has-fix-left) .ant-table-container:before{box-shadow:inset 10px 0 8px -8px #00000026}.ant-table-ping-left .ant-table-cell-fix-left-first:after,.ant-table-ping-left .ant-table-cell-fix-left-last:after{box-shadow:inset 10px 0 8px -8px #00000026}.ant-table-ping-left .ant-table-cell-fix-left-last:before{background-color:transparent!important}.ant-table-ping-right:not(.ant-table-has-fix-right) .ant-table-container{position:relative}.ant-table-ping-right:not(.ant-table-has-fix-right) .ant-table-container:after{box-shadow:inset -10px 0 8px -8px #00000026}.ant-table-ping-right .ant-table-cell-fix-right-first:after,.ant-table-ping-right .ant-table-cell-fix-right-last:after{box-shadow:inset -10px 0 8px -8px #00000026}.ant-table-sticky-holder{position:sticky;z-index:3;background:#fff}.ant-table-sticky-scroll{position:sticky;bottom:0;z-index:3;display:flex;align-items:center;background:#ffffff;border-top:1px solid #f0f0f0;opacity:.6}.ant-table-sticky-scroll:hover{transform-origin:center bottom}.ant-table-sticky-scroll-bar{height:8px;background-color:#00000059;border-radius:4px}.ant-table-sticky-scroll-bar:hover,.ant-table-sticky-scroll-bar-active{background-color:#000c}.ant-table-custom-column col{width:auto!important;min-width:auto!important;display:none}.ant-table-custom-column .ant-table-thead .ant-table-row{width:100%;display:flex;justify-content:space-between}.ant-table-custom-column .ant-table-thead .ant-table-row th{overflow:hidden}.ant-table-custom-column .ant-table-tbody .ant-table-row{width:100%;display:flex;justify-content:space-between}.ant-table-custom-column .ant-table-tbody .ant-table-row td{overflow:hidden}.ant-table-custom-column .ant-table-tbody .ant-table-row .nz-disable-td{width:100%}.ant-table-custom-column .ant-table-fixed tr .ant-table-cell-fix-left-last,.ant-table-custom-column .ant-table-fixed tr .ant-table-cell-fix-right-first{overflow:visible}.ant-table-custom-column .ant-table-fixed .ant-table-row{width:100%}@media all and (-ms-high-contrast: none){.ant-table-ping-left .ant-table-cell-fix-left-last:after{box-shadow:none!important}.ant-table-ping-right .ant-table-cell-fix-right-first:after{box-shadow:none!important}}.ant-table-title{border-radius:2px 2px 0 0}.ant-table-title+.ant-table-container{border-top-left-radius:0;border-top-right-radius:0}.ant-table-title+.ant-table-container table>thead>tr:first-child th:first-child{border-radius:0}.ant-table-title+.ant-table-container table>thead>tr:first-child th:last-child{border-radius:0}.ant-table-container{border-top-left-radius:2px;border-top-right-radius:2px}.ant-table-container table>thead>tr:first-child th:first-child{border-top-left-radius:2px}.ant-table-container table>thead>tr:first-child th:last-child{border-top-right-radius:2px}.ant-table-footer{border-radius:0 0 2px 2px}.ant-table-wrapper-rtl,.ant-table-rtl{direction:rtl}.ant-table-wrapper-rtl .ant-table table{text-align:right}.ant-table-wrapper-rtl .ant-table-thead>tr>th[colspan]:not([colspan="1"]){text-align:center}.ant-table-wrapper-rtl .ant-table-thead>tr>th:not(:last-child):not(.ant-table-selection-column):not(.ant-table-row-expand-icon-cell):not([colspan]):before{right:auto;left:0}.ant-table-wrapper-rtl .ant-table-thead>tr>th{text-align:right}.ant-table-tbody>tr .ant-table-wrapper:only-child .ant-table.ant-table-rtl{margin:-16px 33px -16px -16px}.ant-table-wrapper.ant-table-wrapper-rtl .ant-table-pagination-left{justify-content:flex-end}.ant-table-wrapper.ant-table-wrapper-rtl .ant-table-pagination-right{justify-content:flex-start}.ant-table-wrapper-rtl .ant-table-column-sorter{margin-right:4px;margin-left:0}.ant-table-wrapper-rtl .ant-table-filter-column-title{padding:16px 16px 16px 2.3em}.ant-table-rtl .ant-table-thead tr th.ant-table-column-has-sorters .ant-table-filter-column-title{padding:0 0 0 2.3em}.ant-table-wrapper-rtl .ant-table-filter-trigger{margin:-4px 4px -4px -8px}.ant-dropdown-rtl .ant-table-filter-dropdown .ant-checkbox-wrapper+span,.ant-dropdown-rtl .ant-table-filter-dropdown-submenu .ant-checkbox-wrapper+span,.ant-dropdown-menu-submenu-rtl.ant-table-filter-dropdown .ant-checkbox-wrapper+span,.ant-dropdown-menu-submenu-rtl.ant-table-filter-dropdown-submenu .ant-checkbox-wrapper+span{padding-right:8px;padding-left:0}.ant-table-wrapper-rtl .ant-table-selection{text-align:center}.ant-table-wrapper-rtl .ant-table-row-indent,.ant-table-wrapper-rtl .ant-table-row-expand-icon{float:right}.ant-table-wrapper-rtl .ant-table-row-indent+.ant-table-row-expand-icon{margin-right:0;margin-left:8px}.ant-table-wrapper-rtl .ant-table-row-expand-icon:after{transform:rotate(-90deg)}.ant-table-wrapper-rtl .ant-table-row-expand-icon-collapsed:before{transform:rotate(180deg)}.ant-table-wrapper-rtl .ant-table-row-expand-icon-collapsed:after{transform:rotate(0)}nz-table,nz-table-title-footer,nz-table-inner-scroll,nz-table-inner-default,nz-table-selection{display:block}nz-filter-trigger{display:inline-flex}.nz-table-out-bordered>.ant-table-title{border:1px solid #f0f0f0;border-bottom:0}.nz-table-out-bordered>.ant-table-container{border:1px solid #f0f0f0;border-bottom:0}.nz-table-out-bordered>.ant-table-footer{border:1px solid #f0f0f0;border-top:0}cdk-virtual-scroll-viewport.ant-table-body{overflow-y:scroll}.nz-table-hide-scrollbar{scrollbar-color:#fafafa #fafafa}.nz-table-hide-scrollbar::-webkit-scrollbar{background-color:#fafafa}.ant-table.ant-table-small .nz-table-hide-scrollbar{scrollbar-color:#fafafa #fafafa}.ant-table.ant-table-small .nz-table-hide-scrollbar::-webkit-scrollbar{background-color:transparent}.ant-table-wrapper-rtl .ant-table thead>tr>th.ant-table-selection-column{text-align:center}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tfoot>tr>td{border-right:1px solid #f0f0f0}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>thead>tr:not(:last-child)>th{border-bottom:1px solid #f0f0f0}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>thead>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tfoot>tr>.ant-table-cell-fix-right-first:after{border-right:1px solid #f0f0f0}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-16px -17px}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td>.ant-table-expanded-row-fixed:after{position:absolute;top:0;right:1px;bottom:0;border-right:1px solid #f0f0f0;content:""}.ant-table.ant-table-bordered.ant-table-scroll-horizontal>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr.ant-table-expanded-row>td,.ant-table.ant-table-bordered.ant-table-scroll-horizontal>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr.ant-table-placeholder>td{border-right:0}.ant-table.ant-table-bordered.ant-table-middle>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-12px -9px}.ant-table.ant-table-bordered.ant-table-small>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-8px -9px}.ant-tabs-small>.ant-tabs-nav .ant-tabs-tab{padding:8px 0;font-size:14px}.ant-tabs-large>.ant-tabs-nav .ant-tabs-tab{padding:16px 0;font-size:16px}.ant-tabs-card.ant-tabs-small>.ant-tabs-nav .ant-tabs-tab{padding:6px 16px}.ant-tabs-card.ant-tabs-large>.ant-tabs-nav .ant-tabs-tab{padding:7px 16px 6px}.ant-tabs-rtl{direction:rtl}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab{margin:0 0 0 32px}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab:last-of-type{margin-left:0}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab .anticon{margin-right:0;margin-left:12px}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab .ant-tabs-tab-remove{margin-right:8px;margin-left:-4px}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab .ant-tabs-tab-remove .anticon{margin:0}.ant-tabs-rtl.ant-tabs-left>.ant-tabs-nav{order:1}.ant-tabs-rtl.ant-tabs-left>.ant-tabs-content-holder{order:0}.ant-tabs-rtl.ant-tabs-right>.ant-tabs-nav{order:0}.ant-tabs-rtl.ant-tabs-right>.ant-tabs-content-holder{order:1}.ant-tabs-rtl.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-rtl.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-rtl.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-rtl.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab{margin-right:2px;margin-left:0}.ant-tabs-rtl.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs-rtl.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs-rtl.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs-rtl.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-add{margin-right:2px;margin-left:0}.ant-tabs-dropdown-rtl{direction:rtl}.ant-tabs-dropdown-rtl .ant-tabs-dropdown-menu-item{text-align:right}.ant-tabs-top,.ant-tabs-bottom{flex-direction:column}.ant-tabs-top>.ant-tabs-nav,.ant-tabs-bottom>.ant-tabs-nav,.ant-tabs-top>div>.ant-tabs-nav,.ant-tabs-bottom>div>.ant-tabs-nav{margin:0 0 16px}.ant-tabs-top>.ant-tabs-nav:before,.ant-tabs-bottom>.ant-tabs-nav:before,.ant-tabs-top>div>.ant-tabs-nav:before,.ant-tabs-bottom>div>.ant-tabs-nav:before{position:absolute;right:0;left:0;border-bottom:1px solid #f0f0f0;content:""}.ant-tabs-top>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-ink-bar{height:2px}.ant-tabs-top>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-ink-bar-animated{transition:width .3s,left .3s,right .3s}.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap:after,.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap:after,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap:after,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap:after{top:0;bottom:0;width:30px}.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap:before{left:0;box-shadow:inset 10px 0 8px -8px #00000014}.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap:after,.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap:after,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap:after,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap:after{right:0;box-shadow:inset -10px 0 8px -8px #00000014}.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-left:before,.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-left:before,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-left:before,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-left:before{opacity:1}.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-right:after,.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-right:after,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-right:after,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-right:after{opacity:1}.ant-tabs-top>.ant-tabs-nav:before,.ant-tabs-top>div>.ant-tabs-nav:before{bottom:0}.ant-tabs-top>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-ink-bar{bottom:0}.ant-tabs-bottom>.ant-tabs-nav,.ant-tabs-bottom>div>.ant-tabs-nav{order:1;margin-top:16px;margin-bottom:0}.ant-tabs-bottom>.ant-tabs-nav:before,.ant-tabs-bottom>div>.ant-tabs-nav:before{top:0}.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-ink-bar{top:0}.ant-tabs-bottom>.ant-tabs-content-holder,.ant-tabs-bottom>div>.ant-tabs-content-holder{order:0}.ant-tabs-left>.ant-tabs-nav,.ant-tabs-right>.ant-tabs-nav,.ant-tabs-left>div>.ant-tabs-nav,.ant-tabs-right>div>.ant-tabs-nav{flex-direction:column;min-width:50px}.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab{padding:8px 24px;text-align:center}.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab{margin:16px 0 0}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap{flex-direction:column}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap:after,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap:after,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap:after,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap:after{right:0;left:0;height:30px}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap:before{top:0;box-shadow:inset 0 10px 8px -8px #00000014}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap:after,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap:after,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap:after,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap:after{bottom:0;box-shadow:inset 0 -10px 8px -8px #00000014}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-top:before,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-top:before,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-top:before,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-top:before{opacity:1}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-bottom:after,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-bottom:after,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-bottom:after,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-bottom:after{opacity:1}.ant-tabs-left>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-right>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-ink-bar{width:2px}.ant-tabs-left>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-right>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-ink-bar-animated{transition:height .3s,top .3s}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-operations,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-operations,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-operations,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-operations{flex:1 0 auto;flex-direction:column}.ant-tabs-left>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-ink-bar{right:0}.ant-tabs-left>.ant-tabs-content-holder,.ant-tabs-left>div>.ant-tabs-content-holder{margin-left:-1px;border-left:1px solid #f0f0f0}.ant-tabs-left>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane,.ant-tabs-left>div>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane{padding-left:24px}.ant-tabs-right>.ant-tabs-nav,.ant-tabs-right>div>.ant-tabs-nav{order:1}.ant-tabs-right>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-ink-bar{left:0}.ant-tabs-right>.ant-tabs-content-holder,.ant-tabs-right>div>.ant-tabs-content-holder{order:0;margin-right:-1px;border-right:1px solid #f0f0f0}.ant-tabs-right>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane,.ant-tabs-right>div>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane{padding-right:24px}.ant-tabs-dropdown{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:absolute;top:-9999px;left:-9999px;z-index:1050;display:block}.ant-tabs-dropdown-hidden{display:none}.ant-tabs-dropdown-menu{max-height:200px;margin:0;padding:4px 0;overflow-x:hidden;overflow-y:auto;text-align:left;list-style-type:none;background-color:#fff;background-clip:padding-box;border-radius:2px;outline:none;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d}.ant-tabs-dropdown-menu-item{display:flex;align-items:center;min-width:120px;margin:0;padding:5px 12px;overflow:hidden;color:#000000d9;font-weight:400;font-size:14px;line-height:22px;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:all .3s}.ant-tabs-dropdown-menu-item>span{flex:1;white-space:nowrap}.ant-tabs-dropdown-menu-item-remove{flex:none;margin-left:12px;color:#00000073;font-size:12px;background:transparent;border:0;cursor:pointer}.ant-tabs-dropdown-menu-item-remove:hover{color:#40a9ff}.ant-tabs-dropdown-menu-item:hover{background:#f5f5f5}.ant-tabs-dropdown-menu-item-disabled,.ant-tabs-dropdown-menu-item-disabled:hover{color:#00000040;background:transparent;cursor:not-allowed}.ant-tabs-card>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card>div>.ant-tabs-nav .ant-tabs-tab{margin:0;padding:8px 16px;background:#fafafa;border:1px solid #f0f0f0;transition:all .3s cubic-bezier(.645,.045,.355,1)}.ant-tabs-card>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card>div>.ant-tabs-nav .ant-tabs-tab-active{color:#1890ff;background:#fff}.ant-tabs-card>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-card>div>.ant-tabs-nav .ant-tabs-ink-bar{visibility:hidden}.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab{margin-left:2px}.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-tab{border-radius:2px 2px 0 0}.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-tab-active{border-bottom-color:#fff}.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-tab{border-radius:0 0 2px 2px}.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-tab-active{border-top-color:#fff}.ant-tabs-card.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab{margin-top:2px}.ant-tabs-card.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab{border-radius:2px 0 0 2px}.ant-tabs-card.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab-active{border-right-color:#fff}.ant-tabs-card.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab{border-radius:0 2px 2px 0}.ant-tabs-card.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab-active{border-left-color:#fff}.ant-tabs{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";display:flex}.ant-tabs>.ant-tabs-nav,.ant-tabs>div>.ant-tabs-nav{position:relative;display:flex;flex:none;align-items:center}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-wrap,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-wrap{position:relative;display:inline-block;display:flex;flex:auto;align-self:stretch;overflow:hidden;white-space:nowrap;transform:translate(0)}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs>.ant-tabs-nav .ant-tabs-nav-wrap:after,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-wrap:after{position:absolute;z-index:1;opacity:0;transition:opacity .3s;content:"";pointer-events:none}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-list{position:relative;display:flex;transition:transform .3s}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-operations,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-operations{display:flex;align-self:stretch}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-operations-hidden,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-operations-hidden{position:absolute;visibility:hidden;pointer-events:none}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-more,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-more{position:relative;padding:8px 16px;background:transparent;border:0}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-more:after,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-more:after{position:absolute;right:0;bottom:0;left:0;height:5px;transform:translateY(100%);content:""}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add{min-width:40px;margin-left:2px;padding:0 8px;background:#fafafa;border:1px solid #f0f0f0;border-radius:2px 2px 0 0;outline:none;cursor:pointer;transition:all .3s cubic-bezier(.645,.045,.355,1)}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add:hover,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add:hover{color:#40a9ff}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add:active,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add:active,.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add:focus,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add:focus{color:#096dd9}.ant-tabs-extra-content{flex:none}.ant-tabs-centered>.ant-tabs-nav .ant-tabs-nav-wrap:not([class*=ant-tabs-nav-wrap-ping]),.ant-tabs-centered>div>.ant-tabs-nav .ant-tabs-nav-wrap:not([class*=ant-tabs-nav-wrap-ping]){justify-content:center}.ant-tabs-ink-bar{position:absolute;background:#1890ff;pointer-events:none}.ant-tabs-tab{position:relative;display:inline-flex;align-items:center;padding:12px 0;font-size:14px;background:transparent;border:0;outline:none;cursor:pointer}.ant-tabs-tab-btn:focus,.ant-tabs-tab-remove:focus,.ant-tabs-tab-btn:active,.ant-tabs-tab-remove:active{color:#096dd9}.ant-tabs-tab-btn{outline:none;transition:all .3s}.ant-tabs-tab-remove{flex:none;margin-right:-4px;margin-left:8px;color:#00000073;font-size:12px;background:transparent;border:none;outline:none;cursor:pointer;transition:all .3s}.ant-tabs-tab-remove:hover{color:#000000d9}.ant-tabs-tab:hover{color:#40a9ff}.ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn{color:#1890ff;text-shadow:0 0 .25px currentcolor}.ant-tabs-tab.ant-tabs-tab-disabled{color:#00000040;cursor:not-allowed}.ant-tabs-tab.ant-tabs-tab-disabled .ant-tabs-tab-btn:focus,.ant-tabs-tab.ant-tabs-tab-disabled .ant-tabs-tab-remove:focus,.ant-tabs-tab.ant-tabs-tab-disabled .ant-tabs-tab-btn:active,.ant-tabs-tab.ant-tabs-tab-disabled .ant-tabs-tab-remove:active{color:#00000040}.ant-tabs-tab .ant-tabs-tab-remove .anticon{margin:0}.ant-tabs-tab .anticon{margin-right:12px}.ant-tabs-tab+.ant-tabs-tab{margin:0 0 0 32px}.ant-tabs-content{display:flex;width:100%}.ant-tabs-content-holder{flex:auto;min-width:0;min-height:0}.ant-tabs-content-animated{transition:margin .3s}.ant-tabs-tabpane{flex:none;width:100%;outline:none}.ant-tabs-dropdown-menu-item a[nz-tab-link]{position:relative}.ant-tabs-tab a[nz-tab-link]:before{position:absolute;inset:0;background-color:transparent;content:""}.ant-tabs-tab a[nz-tab-link]~*{position:relative}nz-tabset,nz-tab-nav-operation,nz-tabs-nav{display:block;overflow:hidden}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu{max-height:200px;margin:0;padding:4px 0;overflow-x:hidden;overflow-y:auto;text-align:left;list-style-type:none;background-color:#fff;background-clip:padding-box;border-radius:2px;outline:none;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item{min-width:120px;margin:0;padding:5px 12px;overflow:hidden;color:#000000d9;font-weight:400;font-size:14px;line-height:22px;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:all .3s}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item:hover{background:#f5f5f5}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item-disabled,.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item-disabled:hover{color:#00000040;background:transparent;cursor:not-allowed}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item-disabled a,.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item-disabled:hover a{pointer-events:none;color:#00000040}.ant-tabs-rtl .ant-tabs-rtl-tab-next{right:auto;left:2px}.ant-tabs-tab-disabled a{pointer-events:none;color:#00000040}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add{min-height:40px}.ant-tag{box-sizing:border-box;margin:0 8px 0 0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";display:inline-block;height:auto;padding:0 7px;font-size:12px;line-height:20px;white-space:nowrap;background:#fafafa;border:1px solid #d9d9d9;border-radius:2px;opacity:1;transition:all .3s}.ant-tag,.ant-tag a,.ant-tag a:hover{color:#000000d9}.ant-tag>a:first-child:last-child{display:inline-block;margin:0 -8px;padding:0 8px}.ant-tag-close-icon{margin-left:3px;color:#00000073;font-size:10px;cursor:pointer;transition:all .3s}.ant-tag-close-icon:hover{color:#000000d9}.ant-tag-has-color{border-color:transparent}.ant-tag-has-color,.ant-tag-has-color a,.ant-tag-has-color a:hover,.ant-tag-has-color .anticon-close,.ant-tag-has-color .anticon-close:hover{color:#fff}.ant-tag-checkable{background-color:transparent;border-color:transparent;cursor:pointer}.ant-tag-checkable:not(.ant-tag-checkable-checked):hover{color:#1890ff}.ant-tag-checkable:active,.ant-tag-checkable-checked{color:#fff}.ant-tag-checkable-checked{background-color:#1890ff}.ant-tag-checkable:active{background-color:#096dd9}.ant-tag-hidden{display:none}.ant-tag-pink{color:#c41d7f;background:#fff0f6;border-color:#ffadd2}.ant-tag-pink-inverse{color:#fff;background:#eb2f96;border-color:#eb2f96}.ant-tag-magenta{color:#c41d7f;background:#fff0f6;border-color:#ffadd2}.ant-tag-magenta-inverse{color:#fff;background:#eb2f96;border-color:#eb2f96}.ant-tag-red{color:#cf1322;background:#fff1f0;border-color:#ffa39e}.ant-tag-red-inverse{color:#fff;background:#f5222d;border-color:#f5222d}.ant-tag-volcano{color:#d4380d;background:#fff2e8;border-color:#ffbb96}.ant-tag-volcano-inverse{color:#fff;background:#fa541c;border-color:#fa541c}.ant-tag-orange{color:#d46b08;background:#fff7e6;border-color:#ffd591}.ant-tag-orange-inverse{color:#fff;background:#fa8c16;border-color:#fa8c16}.ant-tag-yellow{color:#d4b106;background:#feffe6;border-color:#fffb8f}.ant-tag-yellow-inverse{color:#fff;background:#fadb14;border-color:#fadb14}.ant-tag-gold{color:#d48806;background:#fffbe6;border-color:#ffe58f}.ant-tag-gold-inverse{color:#fff;background:#faad14;border-color:#faad14}.ant-tag-cyan{color:#08979c;background:#e6fffb;border-color:#87e8de}.ant-tag-cyan-inverse{color:#fff;background:#13c2c2;border-color:#13c2c2}.ant-tag-lime{color:#7cb305;background:#fcffe6;border-color:#eaff8f}.ant-tag-lime-inverse{color:#fff;background:#a0d911;border-color:#a0d911}.ant-tag-green{color:#389e0d;background:#f6ffed;border-color:#b7eb8f}.ant-tag-green-inverse{color:#fff;background:#52c41a;border-color:#52c41a}.ant-tag-blue{color:#096dd9;background:#e6f7ff;border-color:#91d5ff}.ant-tag-blue-inverse{color:#fff;background:#1890ff;border-color:#1890ff}.ant-tag-geekblue{color:#1d39c4;background:#f0f5ff;border-color:#adc6ff}.ant-tag-geekblue-inverse{color:#fff;background:#2f54eb;border-color:#2f54eb}.ant-tag-purple{color:#531dab;background:#f9f0ff;border-color:#d3adf7}.ant-tag-purple-inverse{color:#fff;background:#722ed1;border-color:#722ed1}.ant-tag-success{color:#52c41a;background:#f6ffed;border-color:#b7eb8f}.ant-tag-processing{color:#1890ff;background:#e6f7ff;border-color:#91d5ff}.ant-tag-error{color:#ff4d4f;background:#fff2f0;border-color:#ffccc7}.ant-tag-warning{color:#faad14;background:#fffbe6;border-color:#ffe58f}.ant-tag>.anticon+span,.ant-tag>span+.anticon{margin-left:7px}.ant-tag.ant-tag-rtl{margin-right:0;margin-left:8px;direction:rtl;text-align:right}.ant-tag-rtl .ant-tag-close-icon{margin-right:3px;margin-left:0}.ant-tag-rtl.ant-tag>.anticon+span,.ant-tag-rtl.ant-tag>span+.anticon{margin-right:7px;margin-left:0}.ant-timeline{box-sizing:border-box;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;font-feature-settings:"tnum";margin:0;padding:0;list-style:none}.ant-timeline-item{position:relative;margin:0;padding-bottom:20px;font-size:14px;list-style:none}.ant-timeline-item-tail{position:absolute;top:10px;left:4px;height:calc(100% - 10px);border-left:2px solid #f0f0f0}.ant-timeline-item-pending .ant-timeline-item-head{font-size:12px;background-color:transparent}.ant-timeline-item-pending .ant-timeline-item-tail{display:none}.ant-timeline-item-head{position:absolute;width:10px;height:10px;background-color:#fff;border:2px solid transparent;border-radius:100px}.ant-timeline-item-head-blue{color:#1890ff;border-color:#1890ff}.ant-timeline-item-head-red{color:#ff4d4f;border-color:#ff4d4f}.ant-timeline-item-head-green{color:#52c41a;border-color:#52c41a}.ant-timeline-item-head-gray{color:#00000040;border-color:#00000040}.ant-timeline-item-head-custom{position:absolute;top:5.5px;left:5px;width:auto;height:auto;margin-top:0;padding:3px 1px;line-height:1;text-align:center;border:0;border-radius:0;transform:translate(-50%,-50%)}.ant-timeline-item-content{position:relative;top:-7.001px;margin:0 0 0 26px;word-break:break-word}.ant-timeline-item-last>.ant-timeline-item-tail{display:none}.ant-timeline-item-last>.ant-timeline-item-content{min-height:48px}.ant-timeline.ant-timeline-alternate .ant-timeline-item-tail,.ant-timeline.ant-timeline-right .ant-timeline-item-tail,.ant-timeline.ant-timeline-label .ant-timeline-item-tail,.ant-timeline.ant-timeline-alternate .ant-timeline-item-head,.ant-timeline.ant-timeline-right .ant-timeline-item-head,.ant-timeline.ant-timeline-label .ant-timeline-item-head,.ant-timeline.ant-timeline-alternate .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-right .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-label .ant-timeline-item-head-custom{left:50%}.ant-timeline.ant-timeline-alternate .ant-timeline-item-head,.ant-timeline.ant-timeline-right .ant-timeline-item-head,.ant-timeline.ant-timeline-label .ant-timeline-item-head{margin-left:-4px}.ant-timeline.ant-timeline-alternate .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-right .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-label .ant-timeline-item-head-custom{margin-left:1px}.ant-timeline.ant-timeline-alternate .ant-timeline-item-left .ant-timeline-item-content,.ant-timeline.ant-timeline-right .ant-timeline-item-left .ant-timeline-item-content,.ant-timeline.ant-timeline-label .ant-timeline-item-left .ant-timeline-item-content{left:calc(50% - 4px);width:calc(50% - 14px);text-align:left}.ant-timeline.ant-timeline-alternate .ant-timeline-item-right .ant-timeline-item-content,.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-content,.ant-timeline.ant-timeline-label .ant-timeline-item-right .ant-timeline-item-content{width:calc(50% - 12px);margin:0;text-align:right}.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-tail,.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-head,.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-head-custom{left:calc(100% - 6px)}.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-content{width:calc(100% - 18px)}.ant-timeline.ant-timeline-pending .ant-timeline-item-last .ant-timeline-item-tail{display:block;height:calc(100% - 14px);border-left:2px dotted #f0f0f0}.ant-timeline.ant-timeline-reverse .ant-timeline-item-last .ant-timeline-item-tail{display:none}.ant-timeline.ant-timeline-reverse .ant-timeline-item-pending .ant-timeline-item-tail{top:15px;display:block;height:calc(100% - 15px);border-left:2px dotted #f0f0f0}.ant-timeline.ant-timeline-reverse .ant-timeline-item-pending .ant-timeline-item-content{min-height:48px}.ant-timeline.ant-timeline-label .ant-timeline-item-label{position:absolute;top:-7.001px;width:calc(50% - 12px);text-align:right}.ant-timeline.ant-timeline-label .ant-timeline-item-right .ant-timeline-item-label{left:calc(50% + 14px);width:calc(50% - 14px);text-align:left}.ant-timeline-rtl{direction:rtl}.ant-timeline-rtl .ant-timeline-item-tail{right:4px;left:auto;border-right:2px solid #f0f0f0;border-left:none}.ant-timeline-rtl .ant-timeline-item-head-custom{right:5px;left:auto;transform:translate(50%,-50%)}.ant-timeline-rtl .ant-timeline-item-content{margin:0 18px 0 0}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-tail,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-tail,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-tail,.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-head-custom{right:50%;left:auto}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-head{margin-right:-4px;margin-left:0}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-head-custom{margin-right:1px;margin-left:0}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-left .ant-timeline-item-content,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-left .ant-timeline-item-content,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-left .ant-timeline-item-content{right:calc(50% - 4px);left:auto;text-align:right}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-right .ant-timeline-item-content,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-content,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-right .ant-timeline-item-content{text-align:left}.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-tail,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-head-custom{right:0;left:auto}.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-content{width:100%;margin-right:18px;text-align:right}.ant-timeline-rtl.ant-timeline.ant-timeline-pending .ant-timeline-item-last .ant-timeline-item-tail,.ant-timeline-rtl.ant-timeline.ant-timeline-reverse .ant-timeline-item-pending .ant-timeline-item-tail{border-right:2px dotted #f0f0f0;border-left:none}.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-label{text-align:left}.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-right .ant-timeline-item-label{right:calc(50% + 14px);text-align:right}.ant-tooltip{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:absolute;z-index:1070;display:block;width:max-content;width:intrinsic;max-width:250px;visibility:visible}.ant-tooltip-content{position:relative}.ant-tooltip-hidden{display:none}.ant-tooltip-placement-top,.ant-tooltip-placement-topLeft,.ant-tooltip-placement-topRight{padding-bottom:14.3137085px}.ant-tooltip-placement-right,.ant-tooltip-placement-rightTop,.ant-tooltip-placement-rightBottom{padding-left:14.3137085px}.ant-tooltip-placement-bottom,.ant-tooltip-placement-bottomLeft,.ant-tooltip-placement-bottomRight{padding-top:14.3137085px}.ant-tooltip-placement-left,.ant-tooltip-placement-leftTop,.ant-tooltip-placement-leftBottom{padding-right:14.3137085px}.ant-tooltip-inner{min-width:30px;min-height:32px;padding:6px 8px;color:#fff;text-align:left;text-decoration:none;word-wrap:break-word;background-color:#000000bf;border-radius:2px;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d}.ant-tooltip-arrow{position:absolute;z-index:2;display:block;width:22px;height:22px;overflow:hidden;background:transparent;pointer-events:none}.ant-tooltip-arrow-content{--antd-arrow-background-color: linear-gradient(to right bottom, rgba(0, 0, 0, .65), rgba(0, 0, 0, .75));position:absolute;inset:0;display:block;width:11.3137085px;height:11.3137085px;margin:auto;background-color:transparent;content:"";pointer-events:auto;border-radius:0 0 2px;pointer-events:none}.ant-tooltip-arrow-content:before{position:absolute;top:-11.3137085px;left:-11.3137085px;width:33.9411255px;height:33.9411255px;background:var(--antd-arrow-background-color);background-repeat:no-repeat;background-position:-10px -10px;content:"";clip-path:path("M 9.849242404917499 24.091883092036785 A 5 5 0 0 1 13.384776310850237 22.627416997969522 L 20.627416997969522 22.627416997969522 A 2 2 0 0 0 22.627416997969522 20.627416997969522 L 22.627416997969522 13.384776310850237 A 5 5 0 0 1 24.091883092036785 9.849242404917499 L 23.091883092036785 9.849242404917499 L 9.849242404917499 23.091883092036785 Z")}.ant-tooltip-placement-top .ant-tooltip-arrow,.ant-tooltip-placement-topLeft .ant-tooltip-arrow,.ant-tooltip-placement-topRight .ant-tooltip-arrow{bottom:0;transform:translateY(100%)}.ant-tooltip-placement-top .ant-tooltip-arrow-content,.ant-tooltip-placement-topLeft .ant-tooltip-arrow-content,.ant-tooltip-placement-topRight .ant-tooltip-arrow-content{box-shadow:3px 3px 7px #00000012;transform:translateY(-11px) rotate(45deg)}.ant-tooltip-placement-top .ant-tooltip-arrow{left:50%;transform:translateY(100%) translate(-50%)}.ant-tooltip-placement-topLeft .ant-tooltip-arrow{left:13px}.ant-tooltip-placement-topRight .ant-tooltip-arrow{right:13px}.ant-tooltip-placement-right .ant-tooltip-arrow,.ant-tooltip-placement-rightTop .ant-tooltip-arrow,.ant-tooltip-placement-rightBottom .ant-tooltip-arrow{left:0;transform:translate(-100%)}.ant-tooltip-placement-right .ant-tooltip-arrow-content,.ant-tooltip-placement-rightTop .ant-tooltip-arrow-content,.ant-tooltip-placement-rightBottom .ant-tooltip-arrow-content{box-shadow:-3px 3px 7px #00000012;transform:translate(11px) rotate(135deg)}.ant-tooltip-placement-right .ant-tooltip-arrow{top:50%;transform:translate(-100%) translateY(-50%)}.ant-tooltip-placement-rightTop .ant-tooltip-arrow{top:5px}.ant-tooltip-placement-rightBottom .ant-tooltip-arrow{bottom:5px}.ant-tooltip-placement-left .ant-tooltip-arrow,.ant-tooltip-placement-leftTop .ant-tooltip-arrow,.ant-tooltip-placement-leftBottom .ant-tooltip-arrow{right:0;transform:translate(100%)}.ant-tooltip-placement-left .ant-tooltip-arrow-content,.ant-tooltip-placement-leftTop .ant-tooltip-arrow-content,.ant-tooltip-placement-leftBottom .ant-tooltip-arrow-content{box-shadow:3px -3px 7px #00000012;transform:translate(-11px) rotate(315deg)}.ant-tooltip-placement-left .ant-tooltip-arrow{top:50%;transform:translate(100%) translateY(-50%)}.ant-tooltip-placement-leftTop .ant-tooltip-arrow{top:5px}.ant-tooltip-placement-leftBottom .ant-tooltip-arrow{bottom:5px}.ant-tooltip-placement-bottom .ant-tooltip-arrow,.ant-tooltip-placement-bottomLeft .ant-tooltip-arrow,.ant-tooltip-placement-bottomRight .ant-tooltip-arrow{top:0;transform:translateY(-100%)}.ant-tooltip-placement-bottom .ant-tooltip-arrow-content,.ant-tooltip-placement-bottomLeft .ant-tooltip-arrow-content,.ant-tooltip-placement-bottomRight .ant-tooltip-arrow-content{box-shadow:-3px -3px 7px #00000012;transform:translateY(11px) rotate(225deg)}.ant-tooltip-placement-bottom .ant-tooltip-arrow{left:50%;transform:translateY(-100%) translate(-50%)}.ant-tooltip-placement-bottomLeft .ant-tooltip-arrow{left:13px}.ant-tooltip-placement-bottomRight .ant-tooltip-arrow{right:13px}.ant-tooltip-pink .ant-tooltip-inner{background-color:#eb2f96}.ant-tooltip-pink .ant-tooltip-arrow-content:before{background:#eb2f96}.ant-tooltip-magenta .ant-tooltip-inner{background-color:#eb2f96}.ant-tooltip-magenta .ant-tooltip-arrow-content:before{background:#eb2f96}.ant-tooltip-red .ant-tooltip-inner{background-color:#f5222d}.ant-tooltip-red .ant-tooltip-arrow-content:before{background:#f5222d}.ant-tooltip-volcano .ant-tooltip-inner{background-color:#fa541c}.ant-tooltip-volcano .ant-tooltip-arrow-content:before{background:#fa541c}.ant-tooltip-orange .ant-tooltip-inner{background-color:#fa8c16}.ant-tooltip-orange .ant-tooltip-arrow-content:before{background:#fa8c16}.ant-tooltip-yellow .ant-tooltip-inner{background-color:#fadb14}.ant-tooltip-yellow .ant-tooltip-arrow-content:before{background:#fadb14}.ant-tooltip-gold .ant-tooltip-inner{background-color:#faad14}.ant-tooltip-gold .ant-tooltip-arrow-content:before{background:#faad14}.ant-tooltip-cyan .ant-tooltip-inner{background-color:#13c2c2}.ant-tooltip-cyan .ant-tooltip-arrow-content:before{background:#13c2c2}.ant-tooltip-lime .ant-tooltip-inner{background-color:#a0d911}.ant-tooltip-lime .ant-tooltip-arrow-content:before{background:#a0d911}.ant-tooltip-green .ant-tooltip-inner{background-color:#52c41a}.ant-tooltip-green .ant-tooltip-arrow-content:before{background:#52c41a}.ant-tooltip-blue .ant-tooltip-inner{background-color:#1890ff}.ant-tooltip-blue .ant-tooltip-arrow-content:before{background:#1890ff}.ant-tooltip-geekblue .ant-tooltip-inner{background-color:#2f54eb}.ant-tooltip-geekblue .ant-tooltip-arrow-content:before{background:#2f54eb}.ant-tooltip-purple .ant-tooltip-inner{background-color:#722ed1}.ant-tooltip-purple .ant-tooltip-arrow-content:before{background:#722ed1}.ant-tooltip-rtl{direction:rtl}.ant-tooltip-rtl .ant-tooltip-inner{text-align:right}.ant-tooltip{position:relative}.ant-transfer-customize-list .ant-transfer-list{flex:1 1 50%;width:auto;height:auto;min-height:200px}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small{border:0;border-radius:0}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small .ant-table-selection-column{width:40px;min-width:40px}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small>.ant-table-content>.ant-table-body>table>.ant-table-thead>tr>th{background:#fafafa}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small>.ant-table-content .ant-table-row:last-child td{border-bottom:1px solid #f0f0f0}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small .ant-table-body{margin:0}.ant-transfer-customize-list .ant-table-wrapper .ant-table-pagination.ant-pagination{margin:16px 0 4px}.ant-transfer-customize-list .ant-input[disabled]{background-color:transparent}.ant-transfer-status-error .ant-transfer-list{border-color:#ff4d4f}.ant-transfer-status-error .ant-transfer-list-search:not([disabled]){border-color:#d9d9d9}.ant-transfer-status-error .ant-transfer-list-search:not([disabled]):hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-transfer-status-error .ant-transfer-list-search:not([disabled]):hover{border-right-width:0;border-left-width:1px!important}.ant-transfer-status-error .ant-transfer-list-search:not([disabled]):focus{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;border-right-width:1px;outline:0}.ant-input-rtl .ant-transfer-status-error .ant-transfer-list-search:not([disabled]):focus{border-right-width:0;border-left-width:1px!important}.ant-transfer-status-warning .ant-transfer-list{border-color:#faad14}.ant-transfer-status-warning .ant-transfer-list-search:not([disabled]){border-color:#d9d9d9}.ant-transfer-status-warning .ant-transfer-list-search:not([disabled]):hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-transfer-status-warning .ant-transfer-list-search:not([disabled]):hover{border-right-width:0;border-left-width:1px!important}.ant-transfer-status-warning .ant-transfer-list-search:not([disabled]):focus{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;border-right-width:1px;outline:0}.ant-input-rtl .ant-transfer-status-warning .ant-transfer-list-search:not([disabled]):focus{border-right-width:0;border-left-width:1px!important}.ant-transfer{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;display:flex;align-items:stretch}.ant-transfer-disabled .ant-transfer-list{background:#f5f5f5}.ant-transfer-list{display:flex;flex-direction:column;width:180px;height:200px;border:1px solid #d9d9d9;border-radius:2px}.ant-transfer-list-with-pagination{width:250px;height:auto}.ant-transfer-list-search .anticon-search{color:#00000040}.ant-transfer-list-header{display:flex;flex:none;align-items:center;height:40px;padding:8px 12px 9px;color:#000000d9;background:#fff;border-bottom:1px solid #f0f0f0;border-radius:2px 2px 0 0}.ant-transfer-list-header>*:not(:last-child){margin-right:4px}.ant-transfer-list-header>*{flex:none}.ant-transfer-list-header-title{flex:auto;overflow:hidden;white-space:nowrap;text-align:right;text-overflow:ellipsis}.ant-transfer-list-header-dropdown{font-size:10px;transform:translateY(10%);cursor:pointer}.ant-transfer-list-header-dropdown[disabled]{cursor:not-allowed}.ant-transfer-list-body{display:flex;flex:auto;flex-direction:column;overflow:hidden;font-size:14px}.ant-transfer-list-body-search-wrapper{position:relative;flex:none;padding:12px}.ant-transfer-list-content{flex:auto;margin:0;padding:0;overflow:auto;list-style:none}.ant-transfer-list-content-item{display:flex;align-items:center;min-height:32px;padding:6px 12px;line-height:20px;transition:all .3s}.ant-transfer-list-content-item>*:not(:last-child){margin-right:8px}.ant-transfer-list-content-item>*{flex:none}.ant-transfer-list-content-item-text{flex:auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-transfer-list-content-item-remove{color:#1890ff;text-decoration:none;outline:none;cursor:pointer;transition:color .3s;position:relative;color:#d9d9d9}.ant-transfer-list-content-item-remove:focus,.ant-transfer-list-content-item-remove:hover{color:#40a9ff}.ant-transfer-list-content-item-remove:active{color:#096dd9}.ant-transfer-list-content-item-remove:after{position:absolute;inset:-6px -50%;content:""}.ant-transfer-list-content-item-remove:hover{color:#40a9ff}.ant-transfer-list-content-item:not(.ant-transfer-list-content-item-disabled):hover{background-color:#f5f5f5;cursor:pointer}.ant-transfer-list-content-item:not(.ant-transfer-list-content-item-disabled).ant-transfer-list-content-item-checked:hover{background-color:#dcf4ff}.ant-transfer-list-content-show-remove .ant-transfer-list-content-item:not(.ant-transfer-list-content-item-disabled):hover{background:transparent;cursor:default}.ant-transfer-list-content-item-checked{background-color:#e6f7ff}.ant-transfer-list-content-item-disabled{color:#00000040;cursor:not-allowed}.ant-transfer-list-pagination{padding:8px 0;text-align:right;border-top:1px solid #f0f0f0}.ant-transfer-list-body-not-found{flex:none;width:100%;margin:auto 0;color:#00000040;text-align:center}.ant-transfer-list-footer{border-top:1px solid #f0f0f0}.ant-transfer-operation{display:flex;flex:none;flex-direction:column;align-self:center;margin:0 8px;vertical-align:middle}.ant-transfer-operation .ant-btn{display:block}.ant-transfer-operation .ant-btn:first-child{margin-bottom:4px}.ant-transfer-operation .ant-btn .anticon{font-size:12px}.ant-transfer .ant-empty-image{max-height:-2px}.ant-transfer-rtl{direction:rtl}.ant-transfer-rtl .ant-transfer-list-search{padding-right:8px;padding-left:24px}.ant-transfer-rtl .ant-transfer-list-search-action{right:auto;left:12px}.ant-transfer-rtl .ant-transfer-list-header>*:not(:last-child){margin-right:0;margin-left:4px}.ant-transfer-rtl .ant-transfer-list-header{right:0;left:auto}.ant-transfer-rtl .ant-transfer-list-header-title{text-align:left}.ant-transfer-rtl .ant-transfer-list-content-item>*:not(:last-child){margin-right:0;margin-left:8px}.ant-transfer-rtl .ant-transfer-list-pagination{text-align:left}.ant-transfer-rtl .ant-transfer-list-footer{right:0;left:auto}.ant-typography{color:#000000d9;overflow-wrap:break-word}.ant-typography.ant-typography-secondary{color:#00000073}.ant-typography.ant-typography-success{color:#52c41a}.ant-typography.ant-typography-warning{color:#faad14}.ant-typography.ant-typography-danger{color:#ff4d4f}a.ant-typography.ant-typography-danger:active,a.ant-typography.ant-typography-danger:focus{color:#d9363e}a.ant-typography.ant-typography-danger:hover{color:#ff7875}.ant-typography.ant-typography-disabled{color:#00000040;cursor:not-allowed;-webkit-user-select:none;user-select:none}div.ant-typography,.ant-typography p{margin-bottom:1em}h1.ant-typography,div.ant-typography-h1,div.ant-typography-h1>textarea,.ant-typography h1{margin-bottom:.5em;color:#000000d9;font-weight:600;font-size:38px;line-height:1.23}h2.ant-typography,div.ant-typography-h2,div.ant-typography-h2>textarea,.ant-typography h2{margin-bottom:.5em;color:#000000d9;font-weight:600;font-size:30px;line-height:1.35}h3.ant-typography,div.ant-typography-h3,div.ant-typography-h3>textarea,.ant-typography h3{margin-bottom:.5em;color:#000000d9;font-weight:600;font-size:24px;line-height:1.35}h4.ant-typography,div.ant-typography-h4,div.ant-typography-h4>textarea,.ant-typography h4{margin-bottom:.5em;color:#000000d9;font-weight:600;font-size:20px;line-height:1.4}h5.ant-typography,div.ant-typography-h5,div.ant-typography-h5>textarea,.ant-typography h5{margin-bottom:.5em;color:#000000d9;font-weight:600;font-size:16px;line-height:1.5}.ant-typography+h1.ant-typography,.ant-typography+h2.ant-typography,.ant-typography+h3.ant-typography,.ant-typography+h4.ant-typography,.ant-typography+h5.ant-typography{margin-top:1.2em}.ant-typography div+h1,.ant-typography ul+h1,.ant-typography li+h1,.ant-typography p+h1,.ant-typography h1+h1,.ant-typography h2+h1,.ant-typography h3+h1,.ant-typography h4+h1,.ant-typography h5+h1,.ant-typography div+h2,.ant-typography ul+h2,.ant-typography li+h2,.ant-typography p+h2,.ant-typography h1+h2,.ant-typography h2+h2,.ant-typography h3+h2,.ant-typography h4+h2,.ant-typography h5+h2,.ant-typography div+h3,.ant-typography ul+h3,.ant-typography li+h3,.ant-typography p+h3,.ant-typography h1+h3,.ant-typography h2+h3,.ant-typography h3+h3,.ant-typography h4+h3,.ant-typography h5+h3,.ant-typography div+h4,.ant-typography ul+h4,.ant-typography li+h4,.ant-typography p+h4,.ant-typography h1+h4,.ant-typography h2+h4,.ant-typography h3+h4,.ant-typography h4+h4,.ant-typography h5+h4,.ant-typography div+h5,.ant-typography ul+h5,.ant-typography li+h5,.ant-typography p+h5,.ant-typography h1+h5,.ant-typography h2+h5,.ant-typography h3+h5,.ant-typography h4+h5,.ant-typography h5+h5{margin-top:1.2em}a.ant-typography-ellipsis,span.ant-typography-ellipsis{display:inline-block;max-width:100%}a.ant-typography,.ant-typography a{color:#1890ff;outline:none;cursor:pointer;transition:color .3s;text-decoration:none}a.ant-typography:focus,.ant-typography a:focus,a.ant-typography:hover,.ant-typography a:hover{color:#40a9ff}a.ant-typography:active,.ant-typography a:active{color:#096dd9}a.ant-typography:active,.ant-typography a:active,a.ant-typography:hover,.ant-typography a:hover{text-decoration:none}a.ant-typography[disabled],.ant-typography a[disabled],a.ant-typography.ant-typography-disabled,.ant-typography a.ant-typography-disabled{color:#00000040;cursor:not-allowed}a.ant-typography[disabled]:active,.ant-typography a[disabled]:active,a.ant-typography.ant-typography-disabled:active,.ant-typography a.ant-typography-disabled:active,a.ant-typography[disabled]:hover,.ant-typography a[disabled]:hover,a.ant-typography.ant-typography-disabled:hover,.ant-typography a.ant-typography-disabled:hover{color:#00000040}a.ant-typography[disabled]:active,.ant-typography a[disabled]:active,a.ant-typography.ant-typography-disabled:active,.ant-typography a.ant-typography-disabled:active{pointer-events:none}.ant-typography code{margin:0 .2em;padding:.2em .4em .1em;font-size:85%;background:rgba(150,150,150,.1);border:1px solid rgba(100,100,100,.2);border-radius:3px}.ant-typography kbd{margin:0 .2em;padding:.15em .4em .1em;font-size:90%;background:rgba(150,150,150,.06);border:1px solid rgba(100,100,100,.2);border-bottom-width:2px;border-radius:3px}.ant-typography mark{padding:0;background-color:#ffe58f}.ant-typography u,.ant-typography ins{text-decoration:underline;-webkit-text-decoration-skip:ink;text-decoration-skip-ink:auto}.ant-typography s,.ant-typography del{text-decoration:line-through}.ant-typography strong{font-weight:600}.ant-typography-expand,.ant-typography-edit,.ant-typography-copy{color:#1890ff;text-decoration:none;outline:none;cursor:pointer;transition:color .3s;margin-left:4px}.ant-typography-expand:focus,.ant-typography-edit:focus,.ant-typography-copy:focus,.ant-typography-expand:hover,.ant-typography-edit:hover,.ant-typography-copy:hover{color:#40a9ff}.ant-typography-expand:active,.ant-typography-edit:active,.ant-typography-copy:active{color:#096dd9}.ant-typography-copy-success,.ant-typography-copy-success:hover,.ant-typography-copy-success:focus{color:#52c41a}.ant-typography-edit-content{position:relative}div.ant-typography-edit-content{left:-12px;margin-top:-5px;margin-bottom:calc(1em - 5px)}.ant-typography-edit-content-confirm{position:absolute;right:10px;bottom:8px;color:#00000073;font-weight:400;font-size:14px;font-style:normal;pointer-events:none}.ant-typography-edit-content textarea{height:1em;margin:0!important;-moz-transition:none}.ant-typography ul,.ant-typography ol{margin:0 0 1em;padding:0}.ant-typography ul li,.ant-typography ol li{margin:0 0 0 20px;padding:0 0 0 4px}.ant-typography ul{list-style-type:circle}.ant-typography ul ul{list-style-type:disc}.ant-typography ol{list-style-type:decimal}.ant-typography pre,.ant-typography blockquote{margin:1em 0}.ant-typography pre{padding:.4em .6em;white-space:pre-wrap;word-wrap:break-word;background:rgba(150,150,150,.1);border:1px solid rgba(100,100,100,.2);border-radius:3px}.ant-typography pre code{display:inline;margin:0;padding:0;font-size:inherit;font-family:inherit;background:transparent;border:0}.ant-typography blockquote{padding:0 0 0 .6em;border-left:4px solid rgba(100,100,100,.2);opacity:.85}.ant-typography-single-line{white-space:nowrap}.ant-typography-ellipsis-single-line{overflow:hidden;text-overflow:ellipsis}a.ant-typography-ellipsis-single-line,span.ant-typography-ellipsis-single-line{vertical-align:bottom}.ant-typography-ellipsis-multiple-line{display:-webkit-box;overflow:hidden;-webkit-line-clamp:3;-webkit-box-orient:vertical}.ant-typography-rtl{direction:rtl}.ant-typography-rtl .ant-typography-expand,.ant-typography-rtl .ant-typography-edit,.ant-typography-rtl .ant-typography-copy{margin-right:4px;margin-left:0}.ant-typography-rtl .ant-typography-expand{float:left}div.ant-typography-edit-content.ant-typography-rtl{right:-12px;left:auto}.ant-typography-rtl .ant-typography-edit-content-confirm{right:auto;left:10px}.ant-typography-rtl.ant-typography ul li,.ant-typography-rtl.ant-typography ol li{margin:0 20px 0 0;padding:0 4px 0 0}.ant-upload{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";outline:0}.ant-upload p{margin:0}.ant-upload-btn{display:block;width:100%;outline:none}.ant-upload input[type=file]{cursor:pointer}.ant-upload.ant-upload-select{display:inline-block}.ant-upload.ant-upload-disabled{cursor:not-allowed}.ant-upload.ant-upload-select-picture-card{width:104px;height:104px;margin-right:8px;margin-bottom:8px;text-align:center;vertical-align:top;background-color:#fafafa;border:1px dashed #d9d9d9;border-radius:2px;cursor:pointer;transition:border-color .3s}.ant-upload.ant-upload-select-picture-card>.ant-upload{display:flex;align-items:center;justify-content:center;height:100%;text-align:center}.ant-upload.ant-upload-select-picture-card:hover{border-color:#1890ff}.ant-upload-disabled.ant-upload.ant-upload-select-picture-card:hover{border-color:#d9d9d9}.ant-upload.ant-upload-drag{position:relative;width:100%;height:100%;text-align:center;background:#fafafa;border:1px dashed #d9d9d9;border-radius:2px;cursor:pointer;transition:border-color .3s}.ant-upload.ant-upload-drag .ant-upload{padding:16px 0}.ant-upload.ant-upload-drag.ant-upload-drag-hover:not(.ant-upload-disabled){border-color:#096dd9}.ant-upload.ant-upload-drag.ant-upload-disabled{cursor:not-allowed}.ant-upload.ant-upload-drag .ant-upload-btn{display:table;height:100%}.ant-upload.ant-upload-drag .ant-upload-drag-container{display:table-cell;vertical-align:middle}.ant-upload.ant-upload-drag:not(.ant-upload-disabled):hover{border-color:#40a9ff}.ant-upload.ant-upload-drag p.ant-upload-drag-icon{margin-bottom:20px}.ant-upload.ant-upload-drag p.ant-upload-drag-icon .anticon{color:#40a9ff;font-size:48px}.ant-upload.ant-upload-drag p.ant-upload-text{margin:0 0 4px;color:#000000d9;font-size:16px}.ant-upload.ant-upload-drag p.ant-upload-hint{color:#00000073;font-size:14px}.ant-upload.ant-upload-drag .anticon-plus{color:#00000040;font-size:30px;transition:all .3s}.ant-upload.ant-upload-drag .anticon-plus:hover,.ant-upload.ant-upload-drag:hover .anticon-plus{color:#00000073}.ant-upload-picture-card-wrapper{display:inline-block;width:100%}.ant-upload-picture-card-wrapper:before{display:table;content:""}.ant-upload-picture-card-wrapper:after{display:table;clear:both;content:""}.ant-upload-list{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;list-style:none;font-feature-settings:"tnum";line-height:1.5715}.ant-upload-list:before{display:table;content:""}.ant-upload-list:after{display:table;clear:both;content:""}.ant-upload-list-item{position:relative;height:22.001px;margin-top:8px;font-size:14px}.ant-upload-list-item-name{display:inline-block;width:100%;padding-left:22px;overflow:hidden;line-height:1.5715;white-space:nowrap;text-overflow:ellipsis}.ant-upload-list-item-card-actions{position:absolute;right:0}.ant-upload-list-item-card-actions-btn{opacity:0}.ant-upload-list-item-card-actions-btn.ant-btn-sm{height:22.001px;line-height:1;vertical-align:top}.ant-upload-list-item-card-actions.picture{top:22px;line-height:0}.ant-upload-list-item-card-actions-btn:focus,.ant-upload-list-item-card-actions.picture .ant-upload-list-item-card-actions-btn{opacity:1}.ant-upload-list-item-card-actions .anticon{color:#00000073;transition:all .3s}.ant-upload-list-item-card-actions:hover .anticon{color:#000000d9}.ant-upload-list-item-info{height:100%;transition:background-color .3s}.ant-upload-list-item-info>span{display:block;width:100%;height:100%}.ant-upload-list-item-info .anticon-loading .anticon,.ant-upload-list-item-info .ant-upload-text-icon .anticon{position:absolute;top:5px;color:#00000073;font-size:14px}.ant-upload-list-item:hover .ant-upload-list-item-info{background-color:#f5f5f5}.ant-upload-list-item:hover .ant-upload-list-item-card-actions-btn{opacity:1}.ant-upload-list-item-error,.ant-upload-list-item-error .ant-upload-text-icon>.anticon,.ant-upload-list-item-error .ant-upload-list-item-name{color:#ff4d4f}.ant-upload-list-item-error .ant-upload-list-item-card-actions .anticon{color:#ff4d4f}.ant-upload-list-item-error .ant-upload-list-item-card-actions-btn{opacity:1}.ant-upload-list-item-progress{position:absolute;bottom:-12px;width:100%;padding-left:26px;font-size:14px;line-height:0}.ant-upload-list-picture .ant-upload-list-item,.ant-upload-list-picture-card .ant-upload-list-item{position:relative;height:66px;padding:8px;border:1px solid #d9d9d9;border-radius:2px}.ant-upload-list-picture .ant-upload-list-item:hover,.ant-upload-list-picture-card .ant-upload-list-item:hover{background:transparent}.ant-upload-list-picture .ant-upload-list-item-error,.ant-upload-list-picture-card .ant-upload-list-item-error{border-color:#ff4d4f}.ant-upload-list-picture .ant-upload-list-item:hover .ant-upload-list-item-info,.ant-upload-list-picture-card .ant-upload-list-item:hover .ant-upload-list-item-info{background:transparent}.ant-upload-list-picture .ant-upload-list-item-uploading,.ant-upload-list-picture-card .ant-upload-list-item-uploading{border-style:dashed}.ant-upload-list-picture .ant-upload-list-item-thumbnail,.ant-upload-list-picture-card .ant-upload-list-item-thumbnail{width:48px;height:48px;line-height:60px;text-align:center;opacity:.8}.ant-upload-list-picture .ant-upload-list-item-thumbnail .anticon,.ant-upload-list-picture-card .ant-upload-list-item-thumbnail .anticon{font-size:26px}.ant-upload-list-picture .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill="#e6f7ff"],.ant-upload-list-picture-card .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill="#e6f7ff"]{fill:#fff2f0}.ant-upload-list-picture .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill="#1890ff"],.ant-upload-list-picture-card .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill="#1890ff"]{fill:#ff4d4f}.ant-upload-list-picture .ant-upload-list-item-icon,.ant-upload-list-picture-card .ant-upload-list-item-icon{position:absolute;top:50%;left:50%;font-size:26px;transform:translate(-50%,-50%)}.ant-upload-list-picture .ant-upload-list-item-icon .anticon,.ant-upload-list-picture-card .ant-upload-list-item-icon .anticon{font-size:26px}.ant-upload-list-picture .ant-upload-list-item-image,.ant-upload-list-picture-card .ant-upload-list-item-image{max-width:100%}.ant-upload-list-picture .ant-upload-list-item-thumbnail img,.ant-upload-list-picture-card .ant-upload-list-item-thumbnail img{display:block;width:48px;height:48px;overflow:hidden}.ant-upload-list-picture .ant-upload-list-item-name,.ant-upload-list-picture-card .ant-upload-list-item-name{display:inline-block;box-sizing:border-box;max-width:100%;margin:0 0 0 8px;padding-right:8px;padding-left:48px;overflow:hidden;line-height:44px;white-space:nowrap;text-overflow:ellipsis;transition:all .3s}.ant-upload-list-picture .ant-upload-list-item-uploading .ant-upload-list-item-name,.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-name{margin-bottom:12px}.ant-upload-list-picture .ant-upload-list-item-progress,.ant-upload-list-picture-card .ant-upload-list-item-progress{bottom:14px;width:calc(100% - 24px);margin-top:0;padding-left:56px}.ant-upload-list-picture-card-container{display:inline-block;width:104px;height:104px;margin:0 8px 8px 0;vertical-align:top}.ant-upload-list-picture-card .ant-upload-list-item{height:100%;margin:0}.ant-upload-list-picture-card .ant-upload-list-item-info{position:relative;height:100%;overflow:hidden}.ant-upload-list-picture-card .ant-upload-list-item-info:before{position:absolute;z-index:1;width:100%;height:100%;background-color:#00000080;opacity:0;transition:all .3s;content:" "}.ant-upload-list-picture-card .ant-upload-list-item:hover .ant-upload-list-item-info:before{opacity:1}.ant-upload-list-picture-card .ant-upload-list-item-actions{position:absolute;top:50%;left:50%;z-index:10;white-space:nowrap;transform:translate(-50%,-50%);opacity:0;transition:all .3s}.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-eye,.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-download,.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-delete{z-index:10;width:16px;margin:0 4px;color:#ffffffd9;font-size:16px;cursor:pointer;transition:all .3s}.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-eye:hover,.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-download:hover,.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-delete:hover{color:#fff}.ant-upload-list-picture-card .ant-upload-list-item-info:hover+.ant-upload-list-item-actions,.ant-upload-list-picture-card .ant-upload-list-item-actions:hover{opacity:1}.ant-upload-list-picture-card .ant-upload-list-item-thumbnail,.ant-upload-list-picture-card .ant-upload-list-item-thumbnail img{position:static;display:block;width:100%;height:100%;object-fit:contain}.ant-upload-list-picture-card .ant-upload-list-item-name{display:none;margin:8px 0 0;padding:0;line-height:1.5715;text-align:center}.ant-upload-list-picture-card .ant-upload-list-item-file+.ant-upload-list-item-name{position:absolute;bottom:10px;display:block}.ant-upload-list-picture-card .ant-upload-list-item-uploading.ant-upload-list-item{background-color:#fafafa}.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-info{height:auto}.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-info:before,.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-info .anticon-eye,.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-info .anticon-delete{display:none}.ant-upload-list-picture-card .ant-upload-list-item-progress{bottom:32px;width:calc(100% - 14px);padding-left:0}.ant-upload-list-text-container,.ant-upload-list-picture-container{transition:opacity .3s,height .3s}.ant-upload-list-text-container:before,.ant-upload-list-picture-container:before{display:table;width:0;height:0;content:""}.ant-upload-list-text-container .ant-upload-span,.ant-upload-list-picture-container .ant-upload-span{display:block;flex:auto}.ant-upload-list-text .ant-upload-span,.ant-upload-list-picture .ant-upload-span{display:flex;align-items:center}.ant-upload-list-text .ant-upload-span>*,.ant-upload-list-picture .ant-upload-span>*{flex:none}.ant-upload-list-text .ant-upload-list-item-name,.ant-upload-list-picture .ant-upload-list-item-name{flex:auto;margin:0;padding:0 8px}.ant-upload-list-text .ant-upload-list-item-card-actions,.ant-upload-list-picture .ant-upload-list-item-card-actions,.ant-upload-list-text .ant-upload-text-icon .anticon{position:static}.ant-upload-list .ant-upload-animate-inline-appear,.ant-upload-list .ant-upload-animate-inline-enter,.ant-upload-list .ant-upload-animate-inline-leave{animation-duration:.3s;animation-fill-mode:cubic-bezier(.78,.14,.15,.86)}.ant-upload-list .ant-upload-animate-inline-appear,.ant-upload-list .ant-upload-animate-inline-enter{animation-name:uploadAnimateInlineIn}.ant-upload-list .ant-upload-animate-inline-leave{animation-name:uploadAnimateInlineOut}@keyframes uploadAnimateInlineIn{0%{width:0;height:0;margin:0;padding:0;opacity:0}}@keyframes uploadAnimateInlineOut{to{width:0;height:0;margin:0;padding:0;opacity:0}}.ant-upload-rtl{direction:rtl}.ant-upload-rtl.ant-upload.ant-upload-select-picture-card{margin-right:auto;margin-left:8px}.ant-upload-list-rtl{direction:rtl}.ant-upload-list-rtl .ant-upload-list-item-list-type-text:hover .ant-upload-list-item-name-icon-count-1{padding-right:22px;padding-left:14px}.ant-upload-list-rtl .ant-upload-list-item-list-type-text:hover .ant-upload-list-item-name-icon-count-2{padding-right:22px;padding-left:28px}.ant-upload-list-rtl .ant-upload-list-item-name{padding-right:22px;padding-left:0}.ant-upload-list-rtl .ant-upload-list-item-name-icon-count-1{padding-left:14px}.ant-upload-list-rtl .ant-upload-list-item-card-actions{right:auto;left:0}.ant-upload-list-rtl .ant-upload-list-item-card-actions .anticon{padding-right:0;padding-left:5px}.ant-upload-list-rtl .ant-upload-list-item-info{padding:0 4px 0 12px}.ant-upload-list-rtl .ant-upload-list-item-error .ant-upload-list-item-card-actions .anticon{padding-right:0;padding-left:5px}.ant-upload-list-rtl .ant-upload-list-item-progress{padding-right:26px;padding-left:0}.ant-upload-list-picture .ant-upload-list-item-info,.ant-upload-list-picture-card .ant-upload-list-item-info{padding:0}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-thumbnail,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-thumbnail{right:8px;left:auto}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-icon,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-icon{right:50%;left:auto;transform:translate(50%,-50%)}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-name,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-name{margin:0 8px 0 0;padding-right:48px;padding-left:8px}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-name-icon-count-1,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-name-icon-count-1{padding-right:48px;padding-left:18px}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-name-icon-count-2,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-name-icon-count-2{padding-right:48px;padding-left:36px}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-progress,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-progress{padding-right:0;padding-left:0}.ant-upload-list-rtl .ant-upload-list-picture-card-container{margin:0 0 8px 8px}.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-actions{right:50%;left:auto;transform:translate(50%,-50%)}.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-file+.ant-upload-list-item-name{margin:8px 0 0;padding:0}.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item{float:unset}.ant-select-auto-complete{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum"}.ant-select-auto-complete .ant-select-clear{right:13px}.ant-select-dropdown-hidden{display:none}.ant-cascader-checkbox{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;top:.2em;line-height:1;white-space:nowrap;outline:none;cursor:pointer}.ant-cascader-checkbox-wrapper:hover .ant-cascader-checkbox-inner,.ant-cascader-checkbox:hover .ant-cascader-checkbox-inner,.ant-cascader-checkbox-input:focus+.ant-cascader-checkbox-inner{border-color:#1890ff}.ant-cascader-checkbox-checked:after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #1890ff;border-radius:2px;visibility:hidden;animation:antCheckboxEffect .36s ease-in-out;animation-fill-mode:backwards;content:""}.ant-cascader-checkbox:hover:after,.ant-cascader-checkbox-wrapper:hover .ant-cascader-checkbox:after{visibility:visible}.ant-cascader-checkbox-inner{position:relative;top:0;left:0;display:block;width:16px;height:16px;direction:ltr;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;border-collapse:separate;transition:all .3s}.ant-cascader-checkbox-inner:after{position:absolute;top:50%;left:21.5%;display:table;width:5.71428571px;height:9.14285714px;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(0) translate(-50%,-50%);opacity:0;transition:all .1s cubic-bezier(.71,-.46,.88,.6),opacity .1s;content:" "}.ant-cascader-checkbox-input{position:absolute;inset:0;z-index:1;width:100%;height:100%;cursor:pointer;opacity:0}.ant-cascader-checkbox-checked .ant-cascader-checkbox-inner:after{position:absolute;display:table;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(1) translate(-50%,-50%);opacity:1;transition:all .2s cubic-bezier(.12,.4,.29,1.46) .1s;content:" "}.ant-cascader-checkbox-checked .ant-cascader-checkbox-inner{background-color:#1890ff;border-color:#1890ff}.ant-cascader-checkbox-disabled{cursor:not-allowed}.ant-cascader-checkbox-disabled.ant-cascader-checkbox-checked .ant-cascader-checkbox-inner:after{border-color:#00000040;animation-name:none}.ant-cascader-checkbox-disabled .ant-cascader-checkbox-input{cursor:not-allowed;pointer-events:none}.ant-cascader-checkbox-disabled .ant-cascader-checkbox-inner{background-color:#f5f5f5;border-color:#d9d9d9!important}.ant-cascader-checkbox-disabled .ant-cascader-checkbox-inner:after{border-color:#f5f5f5;border-collapse:separate;animation-name:none}.ant-cascader-checkbox-disabled+span{color:#00000040;cursor:not-allowed}.ant-cascader-checkbox-disabled:hover:after,.ant-cascader-checkbox-wrapper:hover .ant-cascader-checkbox-disabled:after{visibility:hidden}.ant-cascader-checkbox-wrapper{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";display:inline-flex;align-items:baseline;line-height:unset;cursor:pointer}.ant-cascader-checkbox-wrapper:after{display:inline-block;width:0;overflow:hidden;content:"\a0"}.ant-cascader-checkbox-wrapper.ant-cascader-checkbox-wrapper-disabled{cursor:not-allowed}.ant-cascader-checkbox-wrapper+.ant-cascader-checkbox-wrapper{margin-left:8px}.ant-cascader-checkbox-wrapper.ant-cascader-checkbox-wrapper-in-form-item input[type=checkbox]{width:14px;height:14px}.ant-cascader-checkbox+span{padding-right:8px;padding-left:8px}.ant-cascader-checkbox-group{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";display:inline-block}.ant-cascader-checkbox-group-item{margin-right:8px}.ant-cascader-checkbox-group-item:last-child{margin-right:0}.ant-cascader-checkbox-group-item+.ant-cascader-checkbox-group-item{margin-left:0}.ant-cascader-checkbox-indeterminate .ant-cascader-checkbox-inner{background-color:#fff;border-color:#d9d9d9}.ant-cascader-checkbox-indeterminate .ant-cascader-checkbox-inner:after{top:50%;left:50%;width:8px;height:8px;background-color:#1890ff;border:0;transform:translate(-50%,-50%) scale(1);opacity:1;content:" "}.ant-cascader-checkbox-indeterminate.ant-cascader-checkbox-disabled .ant-cascader-checkbox-inner:after{background-color:#00000040;border-color:#00000040}.ant-cascader-checkbox-rtl{direction:rtl}.ant-cascader-checkbox-group-rtl .ant-cascader-checkbox-group-item{margin-right:0;margin-left:8px}.ant-cascader-checkbox-group-rtl .ant-cascader-checkbox-group-item:last-child{margin-left:0!important}.ant-cascader-checkbox-group-rtl .ant-cascader-checkbox-group-item+.ant-cascader-checkbox-group-item{margin-left:8px}.ant-cascader{width:184px}.ant-cascader-checkbox{top:0;margin-right:8px}.ant-cascader-menus{display:flex;flex-wrap:nowrap;align-items:flex-start}.ant-cascader-menus.ant-cascader-menu-empty .ant-cascader-menu{width:100%;height:auto}.ant-cascader-menu{flex-grow:1;min-width:111px;height:180px;margin:-4px 0;padding:4px 0;overflow:auto;vertical-align:top;list-style:none;border-right:1px solid #f0f0f0;-ms-overflow-style:-ms-autohiding-scrollbar}.ant-cascader-menu-item{display:flex;flex-wrap:nowrap;align-items:center;padding:5px 12px;overflow:hidden;line-height:22px;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:all .3s}.ant-cascader-menu-item:hover{background:#f5f5f5}.ant-cascader-menu-item-disabled{color:#00000040;cursor:not-allowed}.ant-cascader-menu-item-disabled:hover{background:transparent}.ant-cascader-menu-empty .ant-cascader-menu-item{color:#00000040;cursor:default;pointer-events:none}.ant-cascader-menu-item-active:not(.ant-cascader-menu-item-disabled),.ant-cascader-menu-item-active:not(.ant-cascader-menu-item-disabled):hover{font-weight:600;background-color:#e6f7ff}.ant-cascader-menu-item-content{flex:auto}.ant-cascader-menu-item-expand .ant-cascader-menu-item-expand-icon,.ant-cascader-menu-item-loading-icon{margin-left:4px;color:#00000073;font-size:10px}.ant-cascader-menu-item-disabled.ant-cascader-menu-item-expand .ant-cascader-menu-item-expand-icon,.ant-cascader-menu-item-disabled.ant-cascader-menu-item-loading-icon{color:#00000040}.ant-cascader-menu-item-keyword{color:#ff4d4f}.ant-cascader-rtl .ant-cascader-menu-item-expand-icon,.ant-cascader-rtl .ant-cascader-menu-item-loading-icon{margin-right:4px;margin-left:0}.ant-cascader-rtl .ant-cascader-checkbox{top:0;margin-right:0;margin-left:8px}.ant-cascader-menus{position:relative;margin-top:2px;margin-bottom:2px}nz-tree-virtual-scroll-view{display:block;position:relative;overflow:auto;contain:strict;transform:translateZ(0);will-change:scroll-position;-webkit-overflow-scrolling:touch}nz-tree-virtual-scroll-view .ant-tree-list,nz-tree-virtual-scroll-view .ant-tree-list-holder{height:100%}nz-tree-virtual-scroll-view .ant-tree-switcher+.ant-tree-switcher.nz-tree-leaf-line-icon,nz-tree-view .ant-tree-switcher+.ant-tree-switcher.nz-tree-leaf-line-icon{display:none}nz-tree-view .ant-tree-list-holder-inner{display:flex;flex-direction:column}@keyframes ant-tree-node-fx-do-not-use{0%{opacity:0}to{opacity:1}}.ant-tree.ant-tree-directory .ant-tree-treenode{position:relative}.ant-tree.ant-tree-directory .ant-tree-treenode:before{position:absolute;inset:0 0 4px;transition:background-color .3s;content:"";pointer-events:none}.ant-tree.ant-tree-directory .ant-tree-treenode:hover:before{background:#f5f5f5}.ant-tree.ant-tree-directory .ant-tree-treenode>*{z-index:1}.ant-tree.ant-tree-directory .ant-tree-treenode .ant-tree-switcher{transition:color .3s}.ant-tree.ant-tree-directory .ant-tree-treenode .ant-tree-node-content-wrapper{border-radius:0;-webkit-user-select:none;user-select:none}.ant-tree.ant-tree-directory .ant-tree-treenode .ant-tree-node-content-wrapper:hover{background:transparent}.ant-tree.ant-tree-directory .ant-tree-treenode .ant-tree-node-content-wrapper.ant-tree-node-selected{color:#fff;background:transparent}.ant-tree.ant-tree-directory .ant-tree-treenode-selected:hover:before,.ant-tree.ant-tree-directory .ant-tree-treenode-selected:before{background:#1890ff}.ant-tree.ant-tree-directory .ant-tree-treenode-selected .ant-tree-switcher{color:#fff}.ant-tree.ant-tree-directory .ant-tree-treenode-selected .ant-tree-node-content-wrapper{color:#fff;background:transparent}.ant-tree-checkbox{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;top:.2em;line-height:1;white-space:nowrap;outline:none;cursor:pointer}.ant-tree-checkbox-wrapper:hover .ant-tree-checkbox-inner,.ant-tree-checkbox:hover .ant-tree-checkbox-inner,.ant-tree-checkbox-input:focus+.ant-tree-checkbox-inner{border-color:#1890ff}.ant-tree-checkbox-checked:after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #1890ff;border-radius:2px;visibility:hidden;animation:antCheckboxEffect .36s ease-in-out;animation-fill-mode:backwards;content:""}.ant-tree-checkbox:hover:after,.ant-tree-checkbox-wrapper:hover .ant-tree-checkbox:after{visibility:visible}.ant-tree-checkbox-inner{position:relative;top:0;left:0;display:block;width:16px;height:16px;direction:ltr;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;border-collapse:separate;transition:all .3s}.ant-tree-checkbox-inner:after{position:absolute;top:50%;left:21.5%;display:table;width:5.71428571px;height:9.14285714px;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(0) translate(-50%,-50%);opacity:0;transition:all .1s cubic-bezier(.71,-.46,.88,.6),opacity .1s;content:" "}.ant-tree-checkbox-input{position:absolute;inset:0;z-index:1;width:100%;height:100%;cursor:pointer;opacity:0}.ant-tree-checkbox-checked .ant-tree-checkbox-inner:after{position:absolute;display:table;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(1) translate(-50%,-50%);opacity:1;transition:all .2s cubic-bezier(.12,.4,.29,1.46) .1s;content:" "}.ant-tree-checkbox-checked .ant-tree-checkbox-inner{background-color:#1890ff;border-color:#1890ff}.ant-tree-checkbox-disabled{cursor:not-allowed}.ant-tree-checkbox-disabled.ant-tree-checkbox-checked .ant-tree-checkbox-inner:after{border-color:#00000040;animation-name:none}.ant-tree-checkbox-disabled .ant-tree-checkbox-input{cursor:not-allowed;pointer-events:none}.ant-tree-checkbox-disabled .ant-tree-checkbox-inner{background-color:#f5f5f5;border-color:#d9d9d9!important}.ant-tree-checkbox-disabled .ant-tree-checkbox-inner:after{border-color:#f5f5f5;border-collapse:separate;animation-name:none}.ant-tree-checkbox-disabled+span{color:#00000040;cursor:not-allowed}.ant-tree-checkbox-disabled:hover:after,.ant-tree-checkbox-wrapper:hover .ant-tree-checkbox-disabled:after{visibility:hidden}.ant-tree-checkbox-wrapper{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";display:inline-flex;align-items:baseline;line-height:unset;cursor:pointer}.ant-tree-checkbox-wrapper:after{display:inline-block;width:0;overflow:hidden;content:"\a0"}.ant-tree-checkbox-wrapper.ant-tree-checkbox-wrapper-disabled{cursor:not-allowed}.ant-tree-checkbox-wrapper+.ant-tree-checkbox-wrapper{margin-left:8px}.ant-tree-checkbox-wrapper.ant-tree-checkbox-wrapper-in-form-item input[type=checkbox]{width:14px;height:14px}.ant-tree-checkbox+span{padding-right:8px;padding-left:8px}.ant-tree-checkbox-group{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";display:inline-block}.ant-tree-checkbox-group-item{margin-right:8px}.ant-tree-checkbox-group-item:last-child{margin-right:0}.ant-tree-checkbox-group-item+.ant-tree-checkbox-group-item{margin-left:0}.ant-tree-checkbox-indeterminate .ant-tree-checkbox-inner{background-color:#fff;border-color:#d9d9d9}.ant-tree-checkbox-indeterminate .ant-tree-checkbox-inner:after{top:50%;left:50%;width:8px;height:8px;background-color:#1890ff;border:0;transform:translate(-50%,-50%) scale(1);opacity:1;content:" "}.ant-tree-checkbox-indeterminate.ant-tree-checkbox-disabled .ant-tree-checkbox-inner:after{background-color:#00000040;border-color:#00000040}.ant-tree-checkbox-rtl{direction:rtl}.ant-tree-checkbox-group-rtl .ant-tree-checkbox-group-item{margin-right:0;margin-left:8px}.ant-tree-checkbox-group-rtl .ant-tree-checkbox-group-item:last-child{margin-left:0!important}.ant-tree-checkbox-group-rtl .ant-tree-checkbox-group-item+.ant-tree-checkbox-group-item{margin-left:8px}.ant-tree{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";background:#fff;border-radius:2px;transition:background-color .3s}.ant-tree-focused:not(:hover):not(.ant-tree-active-focused){background:#e6f7ff}.ant-tree-list-holder-inner{align-items:flex-start}.ant-tree.ant-tree-block-node .ant-tree-list-holder-inner{align-items:stretch}.ant-tree.ant-tree-block-node .ant-tree-list-holder-inner .ant-tree-node-content-wrapper{flex:auto}.ant-tree.ant-tree-block-node .ant-tree-list-holder-inner .ant-tree-treenode.dragging{position:relative}.ant-tree.ant-tree-block-node .ant-tree-list-holder-inner .ant-tree-treenode.dragging:after{position:absolute;inset:0 0 4px;border:1px solid #1890ff;opacity:0;animation:ant-tree-node-fx-do-not-use .3s;animation-play-state:running;animation-fill-mode:forwards;content:"";pointer-events:none}.ant-tree .ant-tree-treenode{display:flex;align-items:flex-start;padding:0 0 4px;outline:none}.ant-tree .ant-tree-treenode-disabled .ant-tree-node-content-wrapper{color:#00000040;cursor:not-allowed}.ant-tree .ant-tree-treenode-disabled .ant-tree-node-content-wrapper:hover{background:transparent}.ant-tree .ant-tree-treenode-active .ant-tree-node-content-wrapper{background:#f5f5f5}.ant-tree .ant-tree-treenode:not(.ant-tree .ant-tree-treenode-disabled).filter-node .ant-tree-title{color:inherit;font-weight:500}.ant-tree-indent{align-self:stretch;white-space:nowrap;-webkit-user-select:none;user-select:none}.ant-tree-indent-unit{display:inline-block;width:24px}.ant-tree-draggable-icon{width:24px;line-height:24px;text-align:center;opacity:.2;transition:opacity .3s}.ant-tree-treenode:hover .ant-tree-draggable-icon{opacity:.45}.ant-tree-switcher{position:relative;flex:none;align-self:stretch;width:24px;margin:0;line-height:24px;text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none}.ant-tree-switcher .ant-tree-switcher-icon,.ant-tree-switcher .ant-select-tree-switcher-icon{display:inline-block;font-size:10px;vertical-align:baseline}.ant-tree-switcher .ant-tree-switcher-icon svg,.ant-tree-switcher .ant-select-tree-switcher-icon svg{transition:transform .3s}.ant-tree-switcher-noop{cursor:default}.ant-tree-switcher_close .ant-tree-switcher-icon svg{transform:rotate(-90deg)}.ant-tree-switcher-loading-icon{color:#1890ff}.ant-tree-switcher-leaf-line{position:relative;z-index:1;display:inline-block;width:100%;height:100%}.ant-tree-switcher-leaf-line:before{position:absolute;top:0;right:12px;bottom:-4px;margin-left:-1px;border-right:1px solid #d9d9d9;content:" "}.ant-tree-switcher-leaf-line:after{position:absolute;width:10px;height:14px;border-bottom:1px solid #d9d9d9;content:" "}.ant-tree-checkbox{top:initial;margin:4px 8px 0 0}.ant-tree .ant-tree-node-content-wrapper{position:relative;z-index:auto;min-height:24px;margin:0;padding:0 4px;color:inherit;line-height:24px;background:transparent;border-radius:2px;cursor:pointer;transition:all .3s,border 0s,line-height 0s,box-shadow 0s}.ant-tree .ant-tree-node-content-wrapper:hover{background-color:#f5f5f5}.ant-tree .ant-tree-node-content-wrapper.ant-tree-node-selected{background-color:#bae7ff}.ant-tree .ant-tree-node-content-wrapper .ant-tree-iconEle{display:inline-block;width:24px;height:24px;line-height:24px;text-align:center;vertical-align:top}.ant-tree .ant-tree-node-content-wrapper .ant-tree-iconEle:empty{display:none}.ant-tree-unselectable .ant-tree-node-content-wrapper:hover{background-color:transparent}.ant-tree-node-content-wrapper{line-height:24px;-webkit-user-select:none;user-select:none}.ant-tree-node-content-wrapper .ant-tree-drop-indicator{position:absolute;z-index:1;height:2px;background-color:#1890ff;border-radius:1px;pointer-events:none}.ant-tree-node-content-wrapper .ant-tree-drop-indicator:after{position:absolute;top:-3px;left:-6px;width:8px;height:8px;background-color:transparent;border:2px solid #1890ff;border-radius:50%;content:""}.ant-tree .ant-tree-treenode.drop-container>[draggable]{box-shadow:0 0 0 2px #1890ff}.ant-tree-show-line .ant-tree-indent-unit{position:relative;height:100%}.ant-tree-show-line .ant-tree-indent-unit:before{position:absolute;top:0;right:12px;bottom:-4px;border-right:1px solid #d9d9d9;content:""}.ant-tree-show-line .ant-tree-indent-unit-end:before{display:none}.ant-tree-show-line .ant-tree-switcher{background:#fff}.ant-tree-show-line .ant-tree-switcher-line-icon{vertical-align:-.15em}.ant-tree .ant-tree-treenode-leaf-last .ant-tree-switcher-leaf-line:before{top:auto!important;bottom:auto!important;height:14px!important}.ant-tree-rtl{direction:rtl}.ant-tree-rtl .ant-tree-node-content-wrapper[draggable=true] .ant-tree-drop-indicator:after{right:-6px;left:unset}.ant-tree .ant-tree-treenode-rtl{direction:rtl}.ant-tree-rtl .ant-tree-switcher_close .ant-tree-switcher-icon svg{transform:rotate(90deg)}.ant-tree-rtl.ant-tree-show-line .ant-tree-indent-unit:before{right:auto;left:-13px;border-right:none;border-left:1px solid #d9d9d9}.ant-tree-rtl .ant-tree-checkbox,.ant-tree-select-dropdown-rtl .ant-select-tree-checkbox{margin:4px 0 0 8px}.font-highlight{color:#ff4d4f}.ant-tree-child-tree{overflow:hidden}nz-tree{display:block}.ant-select-tree-checkbox{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;top:.2em;line-height:1;white-space:nowrap;outline:none;cursor:pointer}.ant-select-tree-checkbox-wrapper:hover .ant-select-tree-checkbox-inner,.ant-select-tree-checkbox:hover .ant-select-tree-checkbox-inner,.ant-select-tree-checkbox-input:focus+.ant-select-tree-checkbox-inner{border-color:#1890ff}.ant-select-tree-checkbox-checked:after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #1890ff;border-radius:2px;visibility:hidden;animation:antCheckboxEffect .36s ease-in-out;animation-fill-mode:backwards;content:""}.ant-select-tree-checkbox:hover:after,.ant-select-tree-checkbox-wrapper:hover .ant-select-tree-checkbox:after{visibility:visible}.ant-select-tree-checkbox-inner{position:relative;top:0;left:0;display:block;width:16px;height:16px;direction:ltr;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;border-collapse:separate;transition:all .3s}.ant-select-tree-checkbox-inner:after{position:absolute;top:50%;left:21.5%;display:table;width:5.71428571px;height:9.14285714px;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(0) translate(-50%,-50%);opacity:0;transition:all .1s cubic-bezier(.71,-.46,.88,.6),opacity .1s;content:" "}.ant-select-tree-checkbox-input{position:absolute;inset:0;z-index:1;width:100%;height:100%;cursor:pointer;opacity:0}.ant-select-tree-checkbox-checked .ant-select-tree-checkbox-inner:after{position:absolute;display:table;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(1) translate(-50%,-50%);opacity:1;transition:all .2s cubic-bezier(.12,.4,.29,1.46) .1s;content:" "}.ant-select-tree-checkbox-checked .ant-select-tree-checkbox-inner{background-color:#1890ff;border-color:#1890ff}.ant-select-tree-checkbox-disabled{cursor:not-allowed}.ant-select-tree-checkbox-disabled.ant-select-tree-checkbox-checked .ant-select-tree-checkbox-inner:after{border-color:#00000040;animation-name:none}.ant-select-tree-checkbox-disabled .ant-select-tree-checkbox-input{cursor:not-allowed;pointer-events:none}.ant-select-tree-checkbox-disabled .ant-select-tree-checkbox-inner{background-color:#f5f5f5;border-color:#d9d9d9!important}.ant-select-tree-checkbox-disabled .ant-select-tree-checkbox-inner:after{border-color:#f5f5f5;border-collapse:separate;animation-name:none}.ant-select-tree-checkbox-disabled+span{color:#00000040;cursor:not-allowed}.ant-select-tree-checkbox-disabled:hover:after,.ant-select-tree-checkbox-wrapper:hover .ant-select-tree-checkbox-disabled:after{visibility:hidden}.ant-select-tree-checkbox-wrapper{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";display:inline-flex;align-items:baseline;line-height:unset;cursor:pointer}.ant-select-tree-checkbox-wrapper:after{display:inline-block;width:0;overflow:hidden;content:"\a0"}.ant-select-tree-checkbox-wrapper.ant-select-tree-checkbox-wrapper-disabled{cursor:not-allowed}.ant-select-tree-checkbox-wrapper+.ant-select-tree-checkbox-wrapper{margin-left:8px}.ant-select-tree-checkbox-wrapper.ant-select-tree-checkbox-wrapper-in-form-item input[type=checkbox]{width:14px;height:14px}.ant-select-tree-checkbox+span{padding-right:8px;padding-left:8px}.ant-select-tree-checkbox-group{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";display:inline-block}.ant-select-tree-checkbox-group-item{margin-right:8px}.ant-select-tree-checkbox-group-item:last-child{margin-right:0}.ant-select-tree-checkbox-group-item+.ant-select-tree-checkbox-group-item{margin-left:0}.ant-select-tree-checkbox-indeterminate .ant-select-tree-checkbox-inner{background-color:#fff;border-color:#d9d9d9}.ant-select-tree-checkbox-indeterminate .ant-select-tree-checkbox-inner:after{top:50%;left:50%;width:8px;height:8px;background-color:#1890ff;border:0;transform:translate(-50%,-50%) scale(1);opacity:1;content:" "}.ant-select-tree-checkbox-indeterminate.ant-select-tree-checkbox-disabled .ant-select-tree-checkbox-inner:after{background-color:#00000040;border-color:#00000040}.ant-select-tree-checkbox-rtl{direction:rtl}.ant-select-tree-checkbox-group-rtl .ant-select-tree-checkbox-group-item{margin-right:0;margin-left:8px}.ant-select-tree-checkbox-group-rtl .ant-select-tree-checkbox-group-item:last-child{margin-left:0!important}.ant-select-tree-checkbox-group-rtl .ant-select-tree-checkbox-group-item+.ant-select-tree-checkbox-group-item{margin-left:8px}.ant-tree-select-dropdown{padding:8px 4px}.ant-tree-select-dropdown-rtl{direction:rtl}.ant-tree-select-dropdown .ant-select-tree{border-radius:0}.ant-tree-select-dropdown .ant-select-tree-list-holder-inner{align-items:stretch}.ant-tree-select-dropdown .ant-select-tree-list-holder-inner .ant-select-tree-treenode .ant-select-tree-node-content-wrapper{flex:auto}.ant-select-tree{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";background:#fff;border-radius:2px;transition:background-color .3s}.ant-select-tree-focused:not(:hover):not(.ant-select-tree-active-focused){background:#e6f7ff}.ant-select-tree-list-holder-inner{align-items:flex-start}.ant-select-tree.ant-select-tree-block-node .ant-select-tree-list-holder-inner{align-items:stretch}.ant-select-tree.ant-select-tree-block-node .ant-select-tree-list-holder-inner .ant-select-tree-node-content-wrapper{flex:auto}.ant-select-tree.ant-select-tree-block-node .ant-select-tree-list-holder-inner .ant-select-tree-treenode.dragging{position:relative}.ant-select-tree.ant-select-tree-block-node .ant-select-tree-list-holder-inner .ant-select-tree-treenode.dragging:after{position:absolute;inset:0 0 4px;border:1px solid #1890ff;opacity:0;animation:ant-tree-node-fx-do-not-use .3s;animation-play-state:running;animation-fill-mode:forwards;content:"";pointer-events:none}.ant-select-tree .ant-select-tree-treenode{display:flex;align-items:flex-start;padding:0 0 4px;outline:none}.ant-select-tree .ant-select-tree-treenode-disabled .ant-select-tree-node-content-wrapper{color:#00000040;cursor:not-allowed}.ant-select-tree .ant-select-tree-treenode-disabled .ant-select-tree-node-content-wrapper:hover{background:transparent}.ant-select-tree .ant-select-tree-treenode-active .ant-select-tree-node-content-wrapper{background:#f5f5f5}.ant-select-tree .ant-select-tree-treenode:not(.ant-select-tree .ant-select-tree-treenode-disabled).filter-node .ant-select-tree-title{color:inherit;font-weight:500}.ant-select-tree-indent{align-self:stretch;white-space:nowrap;-webkit-user-select:none;user-select:none}.ant-select-tree-indent-unit{display:inline-block;width:24px}.ant-select-tree-draggable-icon{width:24px;line-height:24px;text-align:center;opacity:.2;transition:opacity .3s}.ant-select-tree-treenode:hover .ant-select-tree-draggable-icon{opacity:.45}.ant-select-tree-switcher{position:relative;flex:none;align-self:stretch;width:24px;margin:0;line-height:24px;text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none}.ant-select-tree-switcher .ant-tree-switcher-icon,.ant-select-tree-switcher .ant-select-tree-switcher-icon{display:inline-block;font-size:10px;vertical-align:baseline}.ant-select-tree-switcher .ant-tree-switcher-icon svg,.ant-select-tree-switcher .ant-select-tree-switcher-icon svg{transition:transform .3s}.ant-select-tree-switcher-noop{cursor:default}.ant-select-tree-switcher_close .ant-select-tree-switcher-icon svg{transform:rotate(-90deg)}.ant-select-tree-switcher-loading-icon{color:#1890ff}.ant-select-tree-switcher-leaf-line{position:relative;z-index:1;display:inline-block;width:100%;height:100%}.ant-select-tree-switcher-leaf-line:before{position:absolute;top:0;right:12px;bottom:-4px;margin-left:-1px;border-right:1px solid #d9d9d9;content:" "}.ant-select-tree-switcher-leaf-line:after{position:absolute;width:10px;height:14px;border-bottom:1px solid #d9d9d9;content:" "}.ant-select-tree-checkbox{top:initial;margin:4px 8px 0 0}.ant-select-tree .ant-select-tree-node-content-wrapper{position:relative;z-index:auto;min-height:24px;margin:0;padding:0 4px;color:inherit;line-height:24px;background:transparent;border-radius:2px;cursor:pointer;transition:all .3s,border 0s,line-height 0s,box-shadow 0s}.ant-select-tree .ant-select-tree-node-content-wrapper:hover{background-color:#f5f5f5}.ant-select-tree .ant-select-tree-node-content-wrapper.ant-select-tree-node-selected{background-color:#bae7ff}.ant-select-tree .ant-select-tree-node-content-wrapper .ant-select-tree-iconEle{display:inline-block;width:24px;height:24px;line-height:24px;text-align:center;vertical-align:top}.ant-select-tree .ant-select-tree-node-content-wrapper .ant-select-tree-iconEle:empty{display:none}.ant-select-tree-unselectable .ant-select-tree-node-content-wrapper:hover{background-color:transparent}.ant-select-tree-node-content-wrapper{line-height:24px;-webkit-user-select:none;user-select:none}.ant-select-tree-node-content-wrapper .ant-tree-drop-indicator{position:absolute;z-index:1;height:2px;background-color:#1890ff;border-radius:1px;pointer-events:none}.ant-select-tree-node-content-wrapper .ant-tree-drop-indicator:after{position:absolute;top:-3px;left:-6px;width:8px;height:8px;background-color:transparent;border:2px solid #1890ff;border-radius:50%;content:""}.ant-select-tree .ant-select-tree-treenode.drop-container>[draggable]{box-shadow:0 0 0 2px #1890ff}.ant-select-tree-show-line .ant-select-tree-indent-unit{position:relative;height:100%}.ant-select-tree-show-line .ant-select-tree-indent-unit:before{position:absolute;top:0;right:12px;bottom:-4px;border-right:1px solid #d9d9d9;content:""}.ant-select-tree-show-line .ant-select-tree-indent-unit-end:before{display:none}.ant-select-tree-show-line .ant-select-tree-switcher{background:#fff}.ant-select-tree-show-line .ant-select-tree-switcher-line-icon{vertical-align:-.15em}.ant-select-tree .ant-select-tree-treenode-leaf-last .ant-select-tree-switcher-leaf-line:before{top:auto!important;bottom:auto!important;height:14px!important}.ant-tree-select-dropdown-rtl .ant-select-tree .ant-select-tree-switcher_close .ant-select-tree-switcher-icon svg{transform:rotate(90deg)}.ant-tree-select-dropdown-rtl .ant-select-tree .ant-select-tree-switcher-loading-icon{transform:scaleY(-1)}.ant-tree.ant-select-tree.ant-tree-show-line nz-tree-node[builtin]:not(:last-child)>li:before{content:" ";width:1px;border-left:1px solid #d9d9d9;height:calc(100% - 16px);position:absolute;left:12px;margin:26px 0}.ant-select-dropdown.ant-select-tree-dropdown{top:100%;left:0;position:relative;width:100%;margin-top:4px;margin-bottom:4px;overflow:auto}.ant-picker-calendar{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";background:#fff}.ant-picker-calendar-header{display:flex;justify-content:flex-end;padding:12px 0}.ant-picker-calendar-header .ant-picker-calendar-year-select{min-width:80px}.ant-picker-calendar-header .ant-picker-calendar-month-select{min-width:70px;margin-left:8px}.ant-picker-calendar-header .ant-picker-calendar-mode-switch{margin-left:8px}.ant-picker-calendar .ant-picker-panel{background:#fff;border:0;border-top:1px solid #f0f0f0;border-radius:0}.ant-picker-calendar .ant-picker-panel .ant-picker-month-panel,.ant-picker-calendar .ant-picker-panel .ant-picker-date-panel{width:auto}.ant-picker-calendar .ant-picker-panel .ant-picker-body{padding:8px 0}.ant-picker-calendar .ant-picker-panel .ant-picker-content{width:100%}.ant-picker-calendar-mini{border-radius:2px}.ant-picker-calendar-mini .ant-picker-calendar-header{padding-right:8px;padding-left:8px}.ant-picker-calendar-mini .ant-picker-panel{border-radius:0 0 2px 2px}.ant-picker-calendar-mini .ant-picker-content{height:256px}.ant-picker-calendar-mini .ant-picker-content th{height:auto;padding:0;line-height:18px}.ant-picker-calendar-mini .ant-picker-cell:before{pointer-events:none}.ant-picker-calendar-full .ant-picker-panel{display:block;width:100%;text-align:right;background:#fff;border:0}.ant-picker-calendar-full .ant-picker-panel .ant-picker-body th,.ant-picker-calendar-full .ant-picker-panel .ant-picker-body td{padding:0}.ant-picker-calendar-full .ant-picker-panel .ant-picker-body th{height:auto;padding:0 12px 5px 0;line-height:18px}.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell:before{display:none}.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell:hover .ant-picker-calendar-date{background:#f5f5f5}.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell .ant-picker-calendar-date-today:before{display:none}.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected .ant-picker-calendar-date,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected:hover .ant-picker-calendar-date,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected .ant-picker-calendar-date-today,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected:hover .ant-picker-calendar-date-today{background:#e6f7ff}.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected .ant-picker-calendar-date .ant-picker-calendar-date-value,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected:hover .ant-picker-calendar-date .ant-picker-calendar-date-value,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected .ant-picker-calendar-date-today .ant-picker-calendar-date-value,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected:hover .ant-picker-calendar-date-today .ant-picker-calendar-date-value{color:#1890ff}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date{display:block;width:auto;height:auto;margin:0 4px;padding:4px 8px 0;border:0;border-top:2px solid #f0f0f0;border-radius:0;transition:background .3s}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-value{line-height:24px;transition:color .3s}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-content{position:static;width:auto;height:86px;overflow-y:auto;color:#000000d9;line-height:1.5715;text-align:left}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-today{border-color:#1890ff}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-today .ant-picker-calendar-date-value{color:#000000d9}@media only screen and (max-width: 480px){.ant-picker-calendar-header{display:block}.ant-picker-calendar-header .ant-picker-calendar-year-select{width:50%}.ant-picker-calendar-header .ant-picker-calendar-month-select{width:calc(50% - 8px)}.ant-picker-calendar-header .ant-picker-calendar-mode-switch{width:100%;margin-top:8px;margin-left:0}.ant-picker-calendar-header .ant-picker-calendar-mode-switch>label{width:50%;text-align:center}}.ant-picker-calendar-rtl{direction:rtl}.ant-picker-calendar-rtl .ant-picker-calendar-header .ant-picker-calendar-month-select,.ant-picker-calendar-rtl .ant-picker-calendar-header .ant-picker-calendar-mode-switch{margin-right:8px;margin-left:0}.ant-picker-calendar-rtl.ant-picker-calendar-full .ant-picker-panel{text-align:left}.ant-picker-calendar-rtl.ant-picker-calendar-full .ant-picker-panel .ant-picker-body th{padding:0 0 5px 12px}.ant-picker-calendar-rtl.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-content{text-align:right}.ant-result{padding:48px 32px}.ant-result-success .ant-result-icon>.anticon{color:#52c41a}.ant-result-error .ant-result-icon>.anticon{color:#ff4d4f}.ant-result-info .ant-result-icon>.anticon{color:#1890ff}.ant-result-warning .ant-result-icon>.anticon{color:#faad14}.ant-result-image{width:250px;height:295px;margin:auto}.ant-result-icon{margin-bottom:24px;text-align:center}.ant-result-icon>.anticon{font-size:72px}.ant-result-title{color:#000000d9;font-size:24px;line-height:1.8;text-align:center}.ant-result-subtitle{color:#00000073;font-size:14px;line-height:1.6;text-align:center}.ant-result-extra{margin:24px 0 0;text-align:center}.ant-result-extra>*{margin-right:8px}.ant-result-extra>*:last-child{margin-right:0}.ant-result-content{margin-top:24px;padding:24px 40px;background-color:#fafafa}.ant-result-rtl{direction:rtl}.ant-result-rtl .ant-result-extra>*{margin-right:0;margin-left:8px}.ant-result-rtl .ant-result-extra>*:last-child{margin-left:0}nz-result{display:block}.ant-space{display:inline-flex}.ant-space-vertical{flex-direction:column}.ant-space-align-center{align-items:center}.ant-space-align-start{align-items:flex-start}.ant-space-align-end{align-items:flex-end}.ant-space-align-baseline{align-items:baseline}.ant-space-item:empty{display:none}.ant-space-rtl{direction:rtl}nz-space-item{display:block}.ant-image{position:relative;display:inline-block}.ant-image-img{width:100%;height:auto;vertical-align:middle}.ant-image-img-placeholder{background-color:#f5f5f5;background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTQuNSAyLjVoLTEzQS41LjUgMCAwIDAgMSAzdjEwYS41LjUgMCAwIDAgLjUuNWgxM2EuNS41IDAgMCAwIC41LS41VjNhLjUuNSAwIDAgMC0uNS0uNXpNNS4yODEgNC43NWExIDEgMCAwIDEgMCAyIDEgMSAwIDAgMSAwLTJ6bTguMDMgNi44M2EuMTI3LjEyNyAwIDAgMS0uMDgxLjAzSDIuNzY5YS4xMjUuMTI1IDAgMCAxLS4wOTYtLjIwN2wyLjY2MS0zLjE1NmEuMTI2LjEyNiAwIDAgMSAuMTc3LS4wMTZsLjAxNi4wMTZMNy4wOCAxMC4wOWwyLjQ3LTIuOTNhLjEyNi4xMjYgMCAwIDEgLjE3Ny0uMDE2bC4wMTUuMDE2IDMuNTg4IDQuMjQ0YS4xMjcuMTI3IDAgMCAxLS4wMi4xNzV6IiBmaWxsPSIjOEM4QzhDIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz48L3N2Zz4=);background-repeat:no-repeat;background-position:center center;background-size:30%}.ant-image-mask{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;background:rgba(0,0,0,.5);cursor:pointer;opacity:0;transition:opacity .3s}.ant-image-mask-info{padding:0 4px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-image-mask-info .anticon{margin-inline-end:4px}.ant-image-mask:hover{opacity:1}.ant-image-placeholder{position:absolute;inset:0}.ant-image-preview{pointer-events:none;height:100%;text-align:center}.ant-image-preview.ant-zoom-enter,.ant-image-preview.ant-zoom-appear{transform:none;opacity:0;animation-duration:.3s;-webkit-user-select:none;user-select:none}.ant-image-preview-mask{position:fixed;inset:0;z-index:1000;height:100%;background-color:#00000073}.ant-image-preview-mask-hidden{display:none}.ant-image-preview-wrap{position:fixed;inset:0;overflow:auto;outline:0;-webkit-overflow-scrolling:touch}.ant-image-preview-body{position:absolute;inset:0;overflow:hidden}.ant-image-preview-img{max-width:100%;max-height:100%;vertical-align:middle;transform:scaleZ(1);cursor:grab;transition:transform .3s cubic-bezier(.215,.61,.355,1) 0s;-webkit-user-select:none;user-select:none;pointer-events:auto}.ant-image-preview-img-wrapper{position:absolute;inset:0;transition:transform .3s cubic-bezier(.215,.61,.355,1) 0s}.ant-image-preview-img-wrapper:before{display:inline-block;width:1px;height:50%;margin-right:-1px;content:""}.ant-image-preview-moving .ant-image-preview-img{cursor:grabbing}.ant-image-preview-moving .ant-image-preview-img-wrapper{transition-duration:0s}.ant-image-preview-wrap{z-index:1080}.ant-image-preview-operations{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;font-feature-settings:"tnum";position:absolute;top:0;right:0;z-index:1;display:flex;flex-direction:row-reverse;align-items:center;width:100%;color:#ffffffd9;list-style:none;background:rgba(0,0,0,.1);pointer-events:auto}.ant-image-preview-operations-operation{margin-left:12px;padding:12px;cursor:pointer}.ant-image-preview-operations-operation-disabled{color:#ffffff40;pointer-events:none}.ant-image-preview-operations-operation:last-of-type{margin-left:0}.ant-image-preview-operations-progress{position:absolute;left:50%;transform:translate(-50%)}.ant-image-preview-operations-icon{font-size:18px}.ant-image-preview-switch-left,.ant-image-preview-switch-right{position:absolute;top:50%;right:10px;z-index:1;display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin-top:-22px;color:#ffffffd9;background:rgba(0,0,0,.1);border-radius:50%;cursor:pointer;pointer-events:auto}.ant-image-preview-switch-left-disabled,.ant-image-preview-switch-right-disabled{color:#ffffff40;cursor:not-allowed}.ant-image-preview-switch-left-disabled>.anticon,.ant-image-preview-switch-right-disabled>.anticon{cursor:not-allowed}.ant-image-preview-switch-left>.anticon,.ant-image-preview-switch-right>.anticon{font-size:18px}.ant-image-preview-switch-left{left:10px}.ant-image-preview-switch-right{right:10px}.cdk-overlay-backdrop.ant-image-preview-mask{opacity:1}.ant-cron-expression{display:flex;flex-wrap:nowrap}.ant-cron-expression-content{width:100%}.ant-cron-expression-content .ant-cron-expression-input-group-error-focus{box-shadow:0 0 0 2px #ff4d4f33}.ant-cron-expression nz-cron-expression-input{width:20%}.ant-cron-expression-input-group{display:flex;flex-wrap:nowrap;align-items:center}.ant-cron-expression-input-group input{border:none!important;box-shadow:none!important;width:100%;outline:none;padding:0;border-radius:0}.ant-cron-expression-input-group-focus{border-color:#1890ff;box-shadow:0 0 0 2px #1890ff33;outline:0}.ant-cron-expression nz-cron-expression-label{width:20%}.ant-cron-expression-label-group{display:flex;width:100%;flex-wrap:nowrap;justify-content:space-around;padding-top:0!important;padding-bottom:0!important}.ant-cron-expression-label-group-default{padding:0 12px}.ant-cron-expression-label-foucs{color:#1890ff}.ant-cron-expression-map{margin-left:12px}.ant-cron-expression-preview{display:flex;padding:12px}.ant-cron-expression-preview-dateTime{flex:1 1 auto;display:flex;align-items:center}.ant-cron-expression-preview-dateTime-center{justify-content:center}.ant-cron-expression-preview-content{flex:0 0 220px;display:flex;align-items:center;padding-left:16px}.ant-cron-expression-preview-content-date{flex:1 1 auto}.ant-cron-expression-preview-list,.ant-cron-expression-preview-icon,.ant-cron-expression-preview-list li,.ant-cron-expression-preview-icon li{list-style:none;margin:0;padding:0}.ant-cron-expression-preview-list{overflow-y:scroll;height:132px}.ant-cron-expression-preview-icon{height:100%}.ant-cron-expression-error{color:#ff4d4f}.ant-cron-expression-hint p{display:flex}.ant-cron-expression-hint span{display:inline-block;min-width:40px}.ant-qrcode{display:inline-block;position:relative;padding:12px}.ant-qrcode>canvas{display:block}.ant-qrcode-border{border-radius:2px;border:1px solid #f0f0f0}.ant-qrcode-mask{position:absolute;top:0;right:0;z-index:10;display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;text-align:center;background-color:#fffffff5}.ant-qrcode-expired{color:#000000d9}.ant-water-mark{position:relative}.ant-color-picker{position:absolute;z-index:1;display:block;width:max-content;min-width:250px;visibility:visible}.ant-color-picker-hidden{display:none}.ant-color-picker-panel{display:flex;flex-direction:column;width:250px;border-radius:2px}.ant-color-picker-panel-disabled{cursor:not-allowed}.ant-color-picker-select{margin-bottom:12px}.ant-color-picker-select .ant-color-picker-palette{min-height:160px;overflow:hidden;border-radius:2px}.ant-color-picker-select .ant-color-picker-palette>.ant-color-picker-gradient{border-top-left-radius:5px}.ant-color-picker-saturation{position:absolute;border-radius:inherit;inset:0}.ant-color-picker-handler{box-sizing:border-box;width:16px;height:16px;border:1px solid #fff;border-radius:50%}.ant-color-picker-handler-sm{width:12px;height:12px}.ant-color-picker-slider{width:100%;margin-bottom:12px}.ant-color-picker-slider .ant-color-picker-palette{height:8px}.ant-color-picker-slider .ant-color-picker-gradient{border-radius:2px}.ant-color-picker-slider-alpha{background-image:conic-gradient(rgba(0,0,0,.06) 0 25%,transparent 0 50%,rgba(0,0,0,.06) 0 75%,transparent 0);background-size:8px 8px}.ant-color-picker-trigger{min-width:32px;height:32px;border-radius:2px;border:1px solid #f0f0f0;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;padding:3px}.ant-color-picker-trigger:hover{border-color:#1890ff}.ant-color-picker-trigger-text{margin:0 4px 0 8px;font-size:14px}.ant-color-picker-sm{min-width:24px;height:24px}.ant-color-picker-lg{min-width:40px;height:40px}.ant-color-picker-lg .ant-color-picker-trigger-text{font-size:16px}.ant-color-picker-color-block{position:relative;width:28px;height:28px;margin-left:8px;background-image:conic-gradient(rgba(0,0,0,.06) 0 25%,transparent 0 50%,rgba(0,0,0,.06) 0 75%,transparent 0);background-size:50% 50%;overflow:hidden;border-radius:2px}.ant-color-picker-color-block-inner{box-sizing:border-box;width:100%;height:100%;border:1px solid #f0f0f0}.ant-color-picker-slider-container{display:flex}.ant-color-picker-slider-container .ant-color-picker-slider-group{flex:1}.ant-color-picker-slider-container .ant-color-picker-slider-group-disabled-alpha{display:flex;align-items:center}.ant-color-picker-slider-container .ant-color-picker-slider-group-disabled-alpha .ant-color-picker-slider{margin-bottom:0}.ant-color-picker-title{display:flex}.ant-color-picker-title-content{flex:1;margin-bottom:8px}.ant-color-picker-title .ant-color-picker-clear{flex:0 0 18px;margin-left:8px}.ant-color-picker-clear{width:18px;height:18px;border-radius:2px;border:1px solid #f0f0f0;position:relative;cursor:pointer;overflow:hidden;margin-bottom:8px}.ant-color-picker-clear:after{content:"";position:absolute;inset-inline-end:1px;top:0;display:block;width:40px;height:2px;transform-origin:right;transform:rotate(-45deg);background-color:#f5222d}.ant-color-picker-input-container{display:flex}.ant-color-picker-input-container .ant-select,.ant-color-picker-input-container .ant-input{font-size:12px}.ant-color-picker-input-container .ant-input-number{font-size:12px;width:auto}.ant-color-picker-input-container .ant-input-number-sm input{padding:0 0 0 4px}.ant-color-picker-input-container .ant-select-selector{padding:0}.ant-color-picker-input-container .ant-color-picker-format-select{width:auto}.ant-color-picker-input-container .ant-color-picker-input{flex:1}.ant-color-picker-input-container .ant-color-picker-input .ant-color-picker-hex-input{padding:0;margin-right:4px}.ant-color-picker-input-container .ant-color-picker-input .ant-color-picker-hsb-input,.ant-color-picker-input-container .ant-color-picker-input .ant-color-picker-rgb-input{display:flex;gap:4px;align-items:center}.ant-color-picker-input-container .ant-color-picker-steppers,.ant-color-picker-input-container .ant-color-picker-alpha-input{flex:0 0 44px}.ant-color-picker-disabled{color:#00000040;background:#f5f5f5;cursor:not-allowed}.ant-color-picker-disabled .ant-color-picker-trigger{cursor:not-allowed}.ant-color-picker-disabled .ant-color-picker-trigger:hover{border-color:#f0f0f0}.ant-color-picker-inline{display:inline-block}.ant-color-picker-inline .ant-color-picker-color-block{margin:0;width:24px;height:24px}.ant-color-picker-inline-lg .ant-color-picker-color-block{width:32px;height:32px}.ant-color-picker-inline-sm .ant-color-picker-color-block{width:16px;height:16px}sf+st{margin-top:16px}.ant-btn:not(.ant-btn-link)+.ant-btn,.ant-btn:not(.ant-btn-link)+nz-popconfirm,nz-popconfirm+.ant-btn,nz-popconfirm+nz-popconfirm,.ant-btn:not(.ant-btn-link)+nz-button-group,nz-button-group+.ant-btn,.ant-btn:not(.ant-btn-link)+nz-dropdown,nz-dropdown+.ant-btn,nz-popconfirm+nz-button-group,nz-button-group+nz-popconfirm{margin-left:8px}.ant-btn-group .ant-btn+.ant-btn{margin-left:-1px}.ant-transfer-operation .ant-btn+.ant-btn{margin-left:initial}[dir=rtl] .ant-btn+.ant-btn,[dir=rtl] .ant-btn+nz-popconfirm,[dir=rtl] nz-popconfirm+.ant-btn,[dir=rtl] nz-popconfirm+nz-popconfirm,[dir=rtl] .ant-btn+nz-button-group,[dir=rtl] nz-button-group+.ant-btn,[dir=rtl] .ant-btn+nz-dropdown,[dir=rtl] nz-dropdown+.ant-btn,[dir=rtl] nz-popconfirm+nz-button-group,[dir=rtl] nz-button-group+nz-popconfirm{margin-right:8px;margin-left:inherit}a:focus{text-decoration:none}.ant-input-number__hide-step .ant-input-number-handler-wrap{visibility:hidden}.ant-card{margin-bottom:16px}.ant-card__body-nopadding .ant-card-body{padding:0!important}@media (min-width: 300px){.ant-drawer-left .drawer-sm,.ant-drawer-right .drawer-sm{width:auto!important;max-width:300px}}@media (max-width: 299px){.ant-drawer-left .drawer-sm,.ant-drawer-right .drawer-sm{width:100%!important}}@media (min-width: 600px){.ant-drawer-left .drawer-md,.ant-drawer-right .drawer-md{width:auto!important;max-width:600px}}@media (max-width: 599px){.ant-drawer-left .drawer-md,.ant-drawer-right .drawer-md{width:100%!important}}@media (min-width: 900px){.ant-drawer-left .drawer-lg,.ant-drawer-right .drawer-lg{width:auto!important;max-width:900px}}@media (max-width: 899px){.ant-drawer-left .drawer-lg,.ant-drawer-right .drawer-lg{width:100%!important}}@media (min-width: 1200px){.ant-drawer-left .drawer-xl,.ant-drawer-right .drawer-xl{width:auto!important;max-width:1200px}}@media (max-width: 1199px){.ant-drawer-left .drawer-xl,.ant-drawer-right .drawer-xl{width:100%!important}}@media (min-height: 200px){.ant-drawer-top .drawer-sm,.ant-drawer-bottom .drawer-sm{height:auto!important;max-height:200px}}@media (max-height: 199px){.ant-drawer-top .drawer-sm,.ant-drawer-bottom .drawer-sm{height:100%!important}}@media (min-height: 400px){.ant-drawer-top .drawer-md,.ant-drawer-bottom .drawer-md{height:auto!important;max-height:400px}}@media (max-height: 399px){.ant-drawer-top .drawer-md,.ant-drawer-bottom .drawer-md{height:100%!important}}@media (min-height: 600px){.ant-drawer-top .drawer-lg,.ant-drawer-bottom .drawer-lg{height:auto!important;max-height:600px}}@media (max-height: 599px){.ant-drawer-top .drawer-lg,.ant-drawer-bottom .drawer-lg{height:100%!important}}@media (min-height: 800px){.ant-drawer-top .drawer-xl,.ant-drawer-bottom .drawer-xl{height:auto!important;max-height:800px}}@media (max-height: 799px){.ant-drawer-top .drawer-xl,.ant-drawer-bottom .drawer-xl{height:100%!important}}.drawer-footer{position:absolute;bottom:0;left:0;width:100%;padding:10px 24px;text-align:right;background:#fff;border-top:1px solid #f0f0f0;border-radius:0 0 2px 2px}.ant-form-item-label em{color:#bfbfbf}.ant-form-item-control em{margin-left:8px}[dir=rtl] .ant-form-item-control em{margin-right:8px;margin-left:inherit}@media (min-width: 576px){.modal-sm .ant-modal{width:auto!important;max-width:300px}}@media (min-width: 768px){.modal-md .ant-modal{width:auto!important;max-width:600px}}@media (min-width: 992px){.modal-lg .ant-modal{width:auto!important;max-width:900px}}@media (min-width: 1600px){.modal-xl .ant-modal{width:auto!important;max-width:1200px}}.modal-header{display:flex;justify-content:space-between;margin:-24px -24px 24px;padding:16px 24px;background:#fff;border-bottom:1px solid #f0f0f0;border-radius:2px 2px 0 0}.modal-title{margin:0;color:#000000d9;font-weight:500;font-size:16px;line-height:22px;word-wrap:break-word}.modal-title small{margin-left:8px;color:#8c8c8c;font-size:12px}.modal-spin{display:block;min-height:150px;line-height:150px;text-align:center}.modal-footer{margin:24px -24px -24px;padding:10px 16px;text-align:right;border-top:1px solid #f0f0f0;border-radius:0 0 2px 2px}.modal-include-tabs nz-tabset{margin-top:-16px}.modal-body-nopadding .ant-modal-body{padding:0!important}.MODAL-DRAG-HANDLE{cursor:move}.ant-table td>img,.ant-table td .img{max-width:32px;max-height:32px;vertical-align:middle;border-radius:4px}.ant-table td>img:not(:last-child),.ant-table td .img:not(:last-child){margin-right:4px}.ant-table-rep__title,.ant-table-rep__hide-header-footer .ant-table-title,.ant-table-rep__hide-header-footer .ant-table-footer{display:none}[dir=rtl] .ant-table td>img,[dir=rtl] .ant-table td .img{margin-right:inherit;margin-left:4px}@media screen and (max-width: 767px){.ant-table-rep__title{display:inline-block;width:100px;padding-right:8px;color:#00000080;text-align:right}.ant-table-rep__hide-header-footer .ant-table-title,.ant-table-rep__hide-header-footer .ant-table-footer{display:block}.ant-table-rep .ant-table table{table-layout:auto!important}.ant-table-rep .ant-table table,.ant-table-rep .ant-table col{width:100%!important;min-width:auto!important}.ant-table-rep .ant-table-thead{display:none}.ant-table-rep .ant-table-title{text-align:center;background:#f0f0f0}.ant-table-rep .ant-table-tbody>tr:nth-child(4n+3){background:#f9f9f9}.ant-table-rep .ant-table-tbody>tr>td{display:flex;align-items:center;width:100%;padding:8px;white-space:inherit;text-align:left!important;border-bottom:none}.ant-table-rep .ant-table-tbody>tr>td .ant-table-rep__title+*:not(.ant-avatar){flex:1;word-break:break-all}}.ant-tag__plus .ant-tag{background:#fff;border-style:dashed}.tag-wrap-list-spacing{margin-top:-8px}.tag-wrap-list-spacing .ant-tag{margin-top:8px}.h1 small,.h2 small,.h3 small,.h1 .small,.h2 .small,.h3 .small{font-size:65%}.h4 small,.h5 small,.h6 small,.h4 .small,.h5 .small,.h6 .small{font-size:75%}.h1{font-size:34px}.h2{font-size:26px}.h3{font-size:22px}.h4{font-size:18px}.h5{font-size:16px}.h6{font-size:14px}.list-styled{padding-left:18px;list-style:inherit}.list-unstyled{padding-left:0;list-style:none}fieldset{border:none}.display-1{font-size:32px}.display-2{font-size:24px}.display-3{font-size:20px}.list-styled{padding-right:18px;padding-left:0}.list-unstyled{padding-right:0;padding-left:inherit}.search__form .ant-form-item{margin-right:0;margin-bottom:24px}.search__form .ant-form-item-control{flex:1}.half-float{position:relative}.half-float img{display:block;max-width:100%;height:auto}.half-float .half-float-bottom{position:absolute;left:50%;z-index:2}.half-float.half-float-sm{margin-bottom:42px}.half-float.half-float-sm .half-float-bottom{bottom:-32px;width:64px;height:64px;margin-left:-32px}.half-float.half-float-md{margin-bottom:50px}.half-float.half-float-md .half-float-bottom{bottom:-40px;width:80px;height:80px;margin-left:-40px}.half-float.half-float-lg{margin-bottom:58px}.half-float.half-float-lg .half-float-bottom{bottom:-48px;width:96px;height:96px;margin-left:-48px}.row-masonry{position:relative;width:100%;margin:0;padding:0;column-gap:16px}.row-masonry>.col-masonry{display:inline-block;width:100%;min-height:1em;margin-bottom:15px}.row-masonry img{max-width:100%}@media only screen and (min-width: 480px){.row-masonry-xs-1{column-count:1;columns:1}.row-masonry-xs-2{column-count:2;columns:2}.row-masonry-xs-3{column-count:3;columns:3}.row-masonry-xs-4{column-count:4;columns:4}.row-masonry-xs-5{column-count:5;columns:5}.row-masonry-xs-6{column-count:6;columns:6}.row-masonry-xs-7{column-count:7;columns:7}.row-masonry-xs-8{column-count:8;columns:8}.row-masonry-xs-9{column-count:9;columns:9}}@media only screen and (min-width: 576px){.row-masonry-sm-1{column-count:1;columns:1}.row-masonry-sm-2{column-count:2;columns:2}.row-masonry-sm-3{column-count:3;columns:3}.row-masonry-sm-4{column-count:4;columns:4}.row-masonry-sm-5{column-count:5;columns:5}.row-masonry-sm-6{column-count:6;columns:6}.row-masonry-sm-7{column-count:7;columns:7}.row-masonry-sm-8{column-count:8;columns:8}.row-masonry-sm-9{column-count:9;columns:9}}@media only screen and (min-width: 768px){.row-masonry-md-1{column-count:1;columns:1}.row-masonry-md-2{column-count:2;columns:2}.row-masonry-md-3{column-count:3;columns:3}.row-masonry-md-4{column-count:4;columns:4}.row-masonry-md-5{column-count:5;columns:5}.row-masonry-md-6{column-count:6;columns:6}.row-masonry-md-7{column-count:7;columns:7}.row-masonry-md-8{column-count:8;columns:8}.row-masonry-md-9{column-count:9;columns:9}}@media only screen and (min-width: 992px){.row-masonry-lg-1{column-count:1;columns:1}.row-masonry-lg-2{column-count:2;columns:2}.row-masonry-lg-3{column-count:3;columns:3}.row-masonry-lg-4{column-count:4;columns:4}.row-masonry-lg-5{column-count:5;columns:5}.row-masonry-lg-6{column-count:6;columns:6}.row-masonry-lg-7{column-count:7;columns:7}.row-masonry-lg-8{column-count:8;columns:8}.row-masonry-lg-9{column-count:9;columns:9}}@media only screen and (min-width: 1200px){.row-masonry-xl-1{column-count:1;columns:1}.row-masonry-xl-2{column-count:2;columns:2}.row-masonry-xl-3{column-count:3;columns:3}.row-masonry-xl-4{column-count:4;columns:4}.row-masonry-xl-5{column-count:5;columns:5}.row-masonry-xl-6{column-count:6;columns:6}.row-masonry-xl-7{column-count:7;columns:7}.row-masonry-xl-8{column-count:8;columns:8}.row-masonry-xl-9{column-count:9;columns:9}}.header-dropdown{background-color:#fff;border-radius:4px;box-shadow:0 6px 16px -8px #00000014,0 9px 28px #0000000d,0 12px 48px 16px #00000008}@media screen and (max-width: 480px){.header-dropdown{right:0!important;left:0!important;width:100%!important;border-radius:0!important}}.sf{display:block}.sf__optional{margin-left:2px;color:#00000059}.sf__fixed{display:flex}.sf__fixed .ant-form-item-control-wrapper{flex:1}.sf__title{margin-bottom:8px;padding:0 16px;font-weight:700;text-align:left}.sf__object-card .ant-card-body{padding-left:0}.sf__object-card .sf__fixed{flex-wrap:wrap}.sf__object-card-fold .ant-card-body{display:none}.sf__array>.ant-form-item{margin-bottom:8px}.sf__array-add{margin-right:16px}.sf__array-container .ant-card{margin:0 16px 16px 0}.sf__array-container .ant-card-body{padding-bottom:0}.sf__array-container .ant-card .sf__array-remove{position:absolute;top:-16px;right:-16px;display:none;width:32px;height:32px;font-size:20px;line-height:32px;text-align:center;background:rgba(0,0,0,.26);border-radius:50%;cursor:pointer}.sf__array-container .ant-card .sf__array-remove i{color:#fff}.sf__array-container .ant-card:hover .sf__array-remove{display:block}@media (max-width: 767px){.sf__array>.ant-form-item>.ant-form-item-label,.sf__array>.ant-form-item>.ant-form-item-control-wrapper{flex:0 0 100%;max-width:100%}.sf__array>.ant-form-item>.ant-form-item-label{display:flex;margin-bottom:8px}.sf__array-container .ant-card{margin-right:0}.sf__array-container .ant-card .sf__array-remove{right:8px;display:block}.sf__array-container>.sf__array-item{flex:0 0 100%;max-width:100%}}.sf .ant-upload-select-picture-card i{color:#999;font-size:32px}.sf .ant-upload.ant-upload-drag{height:180px}.sf .ant-transfer-list-header label{position:unset}.sf .ant-transfer .ant-btn+.ant-btn{margin-left:0}.sf__no-error .ant-form-item{margin-bottom:8px}.sf__inline .sf__item{display:inline-block;margin-bottom:8px;vertical-align:top}.sf__inline .ant-form-inline>.sf__item{margin-bottom:0}.sf__inline .ant-form-inline .ant-select{min-width:100px}.sf__inline .sf__array-container>.sf__array-item{flex:initial;width:100%;max-width:100%}.sf__inline .sf__array-container .ant-card{margin:0}.sf__inline .sf__array-container .ant-card-body{padding:8px 0 0 8px}.sf__inline .sf__array-container .ant-card-body>.sf__item{margin-bottom:0}.sf__inline .sf-btns{display:inline-block;margin-right:0}@media (max-width: 767px){.sf__inline .sf__item{display:block;width:100%}.sf__inline .sf__item .ant-form-item{display:block!important;width:initial!important;margin-right:0}.sf__inline .ant-form-item-label,.sf__inline .ant-form-item-control{display:block!important;padding:inherit}}.sf__horizontal .ant-form-item-label>label{display:flex;justify-content:flex-end}.sf__horizontal .sf__label-text{overflow:hidden;text-overflow:ellipsis}@media (max-width: 767px){.sf__horizontal .ant-form-item-label>label{justify-content:flex-start}}.sf__no-colon .ant-form-item-label label:after{content:" "}.sf__compact .ant-form-item{margin-bottom:8px}.sf__compact .sf__array-container .ant-card{margin:0 8px 8px 0}.sf__compact .sf__array-item .ant-card-body{padding:8px}.sf__item .ant-select,.sf__item .ant-cascader-picker{width:100%}.acl__hide{display:none!important}.setting-drawer__content{position:relative;min-height:100%;background:#fff}.setting-drawer__body-item{display:flex;align-items:center;justify-content:space-between;padding-top:12px;padding-bottom:12px}.setting-drawer__body-item:first-child{padding-top:0}.setting-drawer__body-item:last-child{padding-bottom:0}.setting-drawer__title{margin-bottom:12px;color:#000000d9;font-size:14px;line-height:22px}.setting-drawer__theme{margin-top:24px;overflow:hidden}.setting-drawer__theme-tag{float:left;width:20px;height:20px;margin-right:8px;color:#fff;font-weight:700;text-align:center;border-radius:2px;cursor:pointer}.setting-drawer__handle{position:fixed;top:240px;right:0;z-index:999;display:flex;align-items:center;justify-content:center;width:48px;height:48px;font-size:16px;text-align:center;background:#1890ff;border-radius:4px 0 0 4px;cursor:pointer;transition:right .3s cubic-bezier(.9,0,.3,.7);pointer-events:auto}.setting-drawer__handle-icon{color:#fff;font-size:20px}.setting-drawer__handle-opened{right:500px;z-index:1001}.setting-drawer-rtl{direction:rtl}.setting-drawer-rtl .setting-drawer__handle{right:inherit;left:0;border-radius:0 4px 4px 0}.setting-drawer-rtl .setting-drawer__handle-opened{right:inherit;left:500px}.theme-btn .ant-avatar{color:#000;background-color:#fff;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d;transition:color .3s}.theme-btn .ant-avatar:hover{color:#1890ff}.theme-btn-rtl{right:inherit;left:32px}.yn__yes,.yn__no{display:inline-flex;align-items:center;font-style:normal}.yn__yes span,.yn__no span{margin-left:4px}.yn__yes{color:#1890ff}.yn__no{color:#8c8c8c}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.border{border:1px solid #f0f0f0!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-1{border:1px solid #f0f0f0!important}.border-top-1{border-top:1px solid #f0f0f0!important}.border-right-1{border-right:1px solid #f0f0f0!important}.border-bottom-1{border-bottom:1px solid #f0f0f0!important}.border-left-1{border-left:1px solid #f0f0f0!important}.border-red{border-color:#f5222d!important}.border-volcano{border-color:#fa541c!important}.border-orange{border-color:#fa8c16!important}.border-gold{border-color:#faad14!important}.border-yellow{border-color:#fadb14!important}.border-lime{border-color:#a0d911!important}.border-green{border-color:#52c41a!important}.border-cyan{border-color:#13c2c2!important}.border-blue{border-color:#1890ff!important}.border-geekblue{border-color:#2f54eb!important}.border-purple{border-color:#722ed1!important}.border-magenta{border-color:#eb2f96!important}.border-grey{border-color:#bfbfbf!important}.border-primary{border-color:#1890ff!important}.border-success{border-color:#52c41a!important}.border-error{border-color:#ff4d4f!important}.border-warning{border-color:#faad14!important}.border-info,.border-processing{border-color:#1890ff!important}.border-highlight{border-color:#ff4d4f!important}.border-normal{border-color:#d9d9d9!important}.rounded-sm{border-radius:2px}.rounded-top-left-sm{border-top-left-radius:2px}.rounded-top-right-sm{border-top-right-radius:2px}.rounded-bottom-left-sm{border-bottom-left-radius:2px}.rounded-bottom-right-sm{border-bottom-right-radius:2px}.rounded-md{border-radius:2px}.rounded-top-left-md{border-top-left-radius:2px}.rounded-top-right-md{border-top-right-radius:2px}.rounded-bottom-left-md{border-bottom-left-radius:2px}.rounded-bottom-right-md{border-bottom-right-radius:2px}.rounded-lg{border-radius:4px}.rounded-top-left-lg{border-top-left-radius:4px}.rounded-top-right-lg{border-top-right-radius:4px}.rounded-bottom-left-lg{border-bottom-left-radius:4px}.rounded-bottom-right-lg{border-bottom-right-radius:4px}.rounded-circle{border-radius:50%}.rounded-0{border-radius:0}.border-white{border-color:#fff!important}.rotate-360{transform:rotate(360deg)}.rotate-345{transform:rotate(345deg)}.rotate-330{transform:rotate(330deg)}.rotate-315{transform:rotate(315deg)}.rotate-300{transform:rotate(300deg)}.rotate-285{transform:rotate(285deg)}.rotate-270{transform:rotate(270deg)}.rotate-255{transform:rotate(255deg)}.rotate-240{transform:rotate(240deg)}.rotate-225{transform:rotate(225deg)}.rotate-210{transform:rotate(210deg)}.rotate-195{transform:rotate(195deg)}.rotate-180{transform:rotate(180deg)}.rotate-165{transform:rotate(165deg)}.rotate-150{transform:rotate(150deg)}.rotate-135{transform:rotate(135deg)}.rotate-120{transform:rotate(120deg)}.rotate-105{transform:rotate(105deg)}.rotate-90{transform:rotate(90deg)}.rotate-75{transform:rotate(75deg)}.rotate-60{transform:rotate(60deg)}.rotate-45{transform:rotate(45deg)}.rotate-30{transform:rotate(30deg)}.rotate-15{transform:rotate(15deg)}code{margin:0 4px;padding:2px 4px;font-size:90%;background-color:#f7f7f7;border:1px solid #eee;border-radius:2px}.bg-white{background-color:#fff!important}.bg-transparent{background-color:transparent!important}.text-white{color:#fff!important}.text-hover{cursor:pointer}.text-hover:hover{color:#1890ff!important}.bg-red-light{background-color:#ff4d4f!important}.bg-red{background-color:#f5222d!important}.bg-red-dark{background-color:#cf1322!important}.bg-red-light-h{transition:background-color .3s}.bg-red-light-h:hover{background-color:#ff4d4f!important}.bg-red-h{transition:background-color .3s}.bg-red-h:hover{background-color:#f5222d!important}.bg-red-dark-h{transition:background-color .3s}.bg-red-dark-h:hover{background-color:#cf1322!important}.text-red-light{color:#ff4d4f!important}.text-red{color:#f5222d!important}.text-red-dark{color:#cf1322!important}.bg-volcano-light{background-color:#ff7a45!important}.bg-volcano{background-color:#fa541c!important}.bg-volcano-dark{background-color:#d4380d!important}.bg-volcano-light-h{transition:background-color .3s}.bg-volcano-light-h:hover{background-color:#ff7a45!important}.bg-volcano-h{transition:background-color .3s}.bg-volcano-h:hover{background-color:#fa541c!important}.bg-volcano-dark-h{transition:background-color .3s}.bg-volcano-dark-h:hover{background-color:#d4380d!important}.text-volcano-light{color:#ff7a45!important}.text-volcano{color:#fa541c!important}.text-volcano-dark{color:#d4380d!important}.bg-orange-light{background-color:#ffa940!important}.bg-orange{background-color:#fa8c16!important}.bg-orange-dark{background-color:#d46b08!important}.bg-orange-light-h{transition:background-color .3s}.bg-orange-light-h:hover{background-color:#ffa940!important}.bg-orange-h{transition:background-color .3s}.bg-orange-h:hover{background-color:#fa8c16!important}.bg-orange-dark-h{transition:background-color .3s}.bg-orange-dark-h:hover{background-color:#d46b08!important}.text-orange-light{color:#ffa940!important}.text-orange{color:#fa8c16!important}.text-orange-dark{color:#d46b08!important}.bg-gold-light{background-color:#ffc53d!important}.bg-gold{background-color:#faad14!important}.bg-gold-dark{background-color:#d48806!important}.bg-gold-light-h{transition:background-color .3s}.bg-gold-light-h:hover{background-color:#ffc53d!important}.bg-gold-h{transition:background-color .3s}.bg-gold-h:hover{background-color:#faad14!important}.bg-gold-dark-h{transition:background-color .3s}.bg-gold-dark-h:hover{background-color:#d48806!important}.text-gold-light{color:#ffc53d!important}.text-gold{color:#faad14!important}.text-gold-dark{color:#d48806!important}.bg-yellow-light{background-color:#ffec3d!important}.bg-yellow{background-color:#fadb14!important}.bg-yellow-dark{background-color:#d4b106!important}.bg-yellow-light-h{transition:background-color .3s}.bg-yellow-light-h:hover{background-color:#ffec3d!important}.bg-yellow-h{transition:background-color .3s}.bg-yellow-h:hover{background-color:#fadb14!important}.bg-yellow-dark-h{transition:background-color .3s}.bg-yellow-dark-h:hover{background-color:#d4b106!important}.text-yellow-light{color:#ffec3d!important}.text-yellow{color:#fadb14!important}.text-yellow-dark{color:#d4b106!important}.bg-lime-light{background-color:#bae637!important}.bg-lime{background-color:#a0d911!important}.bg-lime-dark{background-color:#7cb305!important}.bg-lime-light-h{transition:background-color .3s}.bg-lime-light-h:hover{background-color:#bae637!important}.bg-lime-h{transition:background-color .3s}.bg-lime-h:hover{background-color:#a0d911!important}.bg-lime-dark-h{transition:background-color .3s}.bg-lime-dark-h:hover{background-color:#7cb305!important}.text-lime-light{color:#bae637!important}.text-lime{color:#a0d911!important}.text-lime-dark{color:#7cb305!important}.bg-green-light{background-color:#73d13d!important}.bg-green{background-color:#52c41a!important}.bg-green-dark{background-color:#389e0d!important}.bg-green-light-h{transition:background-color .3s}.bg-green-light-h:hover{background-color:#73d13d!important}.bg-green-h{transition:background-color .3s}.bg-green-h:hover{background-color:#52c41a!important}.bg-green-dark-h{transition:background-color .3s}.bg-green-dark-h:hover{background-color:#389e0d!important}.text-green-light{color:#73d13d!important}.text-green{color:#52c41a!important}.text-green-dark{color:#389e0d!important}.bg-cyan-light{background-color:#36cfc9!important}.bg-cyan{background-color:#13c2c2!important}.bg-cyan-dark{background-color:#08979c!important}.bg-cyan-light-h{transition:background-color .3s}.bg-cyan-light-h:hover{background-color:#36cfc9!important}.bg-cyan-h{transition:background-color .3s}.bg-cyan-h:hover{background-color:#13c2c2!important}.bg-cyan-dark-h{transition:background-color .3s}.bg-cyan-dark-h:hover{background-color:#08979c!important}.text-cyan-light{color:#36cfc9!important}.text-cyan{color:#13c2c2!important}.text-cyan-dark{color:#08979c!important}.bg-blue-light{background-color:#40a9ff!important}.bg-blue{background-color:#1890ff!important}.bg-blue-dark{background-color:#096dd9!important}.bg-blue-light-h{transition:background-color .3s}.bg-blue-light-h:hover{background-color:#40a9ff!important}.bg-blue-h{transition:background-color .3s}.bg-blue-h:hover{background-color:#1890ff!important}.bg-blue-dark-h{transition:background-color .3s}.bg-blue-dark-h:hover{background-color:#096dd9!important}.text-blue-light{color:#40a9ff!important}.text-blue{color:#1890ff!important}.text-blue-dark{color:#096dd9!important}.bg-geekblue-light{background-color:#597ef7!important}.bg-geekblue{background-color:#2f54eb!important}.bg-geekblue-dark{background-color:#1d39c4!important}.bg-geekblue-light-h{transition:background-color .3s}.bg-geekblue-light-h:hover{background-color:#597ef7!important}.bg-geekblue-h{transition:background-color .3s}.bg-geekblue-h:hover{background-color:#2f54eb!important}.bg-geekblue-dark-h{transition:background-color .3s}.bg-geekblue-dark-h:hover{background-color:#1d39c4!important}.text-geekblue-light{color:#597ef7!important}.text-geekblue{color:#2f54eb!important}.text-geekblue-dark{color:#1d39c4!important}.bg-purple-light{background-color:#9254de!important}.bg-purple{background-color:#722ed1!important}.bg-purple-dark{background-color:#531dab!important}.bg-purple-light-h{transition:background-color .3s}.bg-purple-light-h:hover{background-color:#9254de!important}.bg-purple-h{transition:background-color .3s}.bg-purple-h:hover{background-color:#722ed1!important}.bg-purple-dark-h{transition:background-color .3s}.bg-purple-dark-h:hover{background-color:#531dab!important}.text-purple-light{color:#9254de!important}.text-purple{color:#722ed1!important}.text-purple-dark{color:#531dab!important}.bg-magenta-light{background-color:#f759ab!important}.bg-magenta{background-color:#eb2f96!important}.bg-magenta-dark{background-color:#c41d7f!important}.bg-magenta-light-h{transition:background-color .3s}.bg-magenta-light-h:hover{background-color:#f759ab!important}.bg-magenta-h{transition:background-color .3s}.bg-magenta-h:hover{background-color:#eb2f96!important}.bg-magenta-dark-h{transition:background-color .3s}.bg-magenta-dark-h:hover{background-color:#c41d7f!important}.text-magenta-light{color:#f759ab!important}.text-magenta{color:#eb2f96!important}.text-magenta-dark{color:#c41d7f!important}.bg-grey-light{background-color:#d9d9d9!important}.bg-grey{background-color:#bfbfbf!important}.bg-grey-dark{background-color:#8c8c8c!important}.bg-grey-light-h{transition:background-color .3s}.bg-grey-light-h:hover{background-color:#d9d9d9!important}.bg-grey-h{transition:background-color .3s}.bg-grey-h:hover{background-color:#bfbfbf!important}.bg-grey-dark-h{transition:background-color .3s}.bg-grey-dark-h:hover{background-color:#8c8c8c!important}.text-grey-light{color:#d9d9d9!important}.text-grey{color:#bfbfbf!important}.text-grey-dark{color:#8c8c8c!important}.bg-primary-light{background-color:#40a9ff!important}.bg-primary{background-color:#1890ff!important}.bg-primary-dark{background-color:#096dd9!important}.bg-primary-h{transition:background-color .3s}.bg-primary-h:hover{background-color:#1890ff!important}.text-primary-light{color:#40a9ff!important}.text-primary{color:#1890ff!important}.text-primary-dark{color:#096dd9!important}.bg-success-light{background-color:#73d13d!important}.bg-success{background-color:#52c41a!important}.bg-success-dark{background-color:#389e0d!important}.bg-success-h{transition:background-color .3s}.bg-success-h:hover{background-color:#52c41a!important}.text-success-light{color:#73d13d!important}.text-success{color:#52c41a!important}.text-success-dark{color:#389e0d!important}.bg-error-light{background-color:#ff7875!important}.bg-error{background-color:#ff4d4f!important}.bg-error-dark{background-color:#d9363e!important}.bg-error-h{transition:background-color .3s}.bg-error-h:hover{background-color:#ff4d4f!important}.text-error-light{color:#ff7875!important}.text-error{color:#ff4d4f!important}.text-error-dark{color:#d9363e!important}.bg-warning-light{background-color:#ffc53d!important}.bg-warning{background-color:#faad14!important}.bg-warning-dark{background-color:#d48806!important}.bg-warning-h{transition:background-color .3s}.bg-warning-h:hover{background-color:#faad14!important}.text-warning-light{color:#ffc53d!important}.text-warning{color:#faad14!important}.text-warning-dark{color:#d48806!important}.bg-info-light{background-color:#40a9ff!important}.bg-info{background-color:#1890ff!important}.bg-info-dark{background-color:#096dd9!important}.bg-info-h{transition:background-color .3s}.bg-info-h:hover{background-color:#1890ff!important}.text-info-light{color:#40a9ff!important}.text-info{color:#1890ff!important}.text-info-dark{color:#096dd9!important}.bg-processing-light{background-color:#40a9ff!important}.bg-processing{background-color:#1890ff!important}.bg-processing-dark{background-color:#096dd9!important}.bg-processing-h{transition:background-color .3s}.bg-processing-h:hover{background-color:#1890ff!important}.text-processing-light{color:#40a9ff!important}.text-processing{color:#1890ff!important}.text-processing-dark{color:#096dd9!important}.bg-highlight-light{background-color:#ff7875!important}.bg-highlight{background-color:#ff4d4f!important}.bg-highlight-dark{background-color:#d9363e!important}.bg-highlight-h{transition:background-color .3s}.bg-highlight-h:hover{background-color:#ff4d4f!important}.text-highlight-light{color:#ff7875!important}.text-highlight{color:#ff4d4f!important}.text-highlight-dark{color:#d9363e!important}.bg-normal-light{background-color:#e6d8d8!important}.bg-normal{background-color:#d9d9d9!important}.bg-normal-dark{background-color:#b3a8a8!important}.bg-normal-h{transition:background-color .3s}.bg-normal-h:hover{background-color:#d9d9d9!important}.text-normal-light{color:#e6d8d8!important}.text-normal{color:#d9d9d9!important}.text-normal-dark{color:#b3a8a8!important}.bg-grey-lighter{background-color:#f5f5f5!important}.bg-grey-lighter-h{transition:background-color .3s}.bg-grey-lighter-h:hover{background-color:#f5f5f5!important}.text-grey-lighter{color:#f5f5f5!important}.bg-grey-darker{background-color:#262626!important}.bg-grey-darker-h{transition:background-color .3s}.bg-grey-darker-h:hover{background-color:#262626!important}.text-grey-darker{color:#262626!important}.d-none{display:none!important}.d-block{display:block!important}.d-inline-block{display:inline-block!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}.flex-1{flex:1!important}.flex-column{flex-direction:column!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-center{display:flex!important;align-items:center!important}.flex-center-between{display:flex!important;align-items:center!important;justify-content:space-between!important}.float-none{float:none!important}.float-left{float:left!important}.float-right{float:right!important}.icon-sm{font-size:28px!important}.icon-md{font-size:56px!important}.icon-lg{font-size:84px!important}.icon-xl{font-size:112px!important}.icon-xxl{font-size:140px!important}.img-fluid{max-width:100%;height:auto}.point{cursor:pointer}.no-resize{min-width:100%;max-width:100%;resize:none}.no-data{color:#00000040;font-size:16px;line-height:64px;text-align:center}.no-data i{position:relative;top:3px;margin-right:16px;font-size:24px}.block-center{margin:0 auto}.bg-center{background-position:center center;background-size:cover}.page-loading{position:absolute;inset:0;z-index:10000;padding-top:200px;text-align:center;background:#f5f5f5}.color-weak{display:block;filter:invert(80%)}.disabled{color:#00000040;pointer-events:none}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:9}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:9}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}@media (max-width: 575px){.hidden-xs{display:none!important}}@media (max-width: 767px){.hidden-sm{display:none!important}}@media (max-width: 991px){.hidden-md{display:none!important}}@media (max-width: 1199px){.hidden-lg{display:none!important}}@media (max-width: 1599px){.hidden-xl{display:none!important}}@media (min-width: 768px){.hidden-pc{display:none!important}}@media (max-width: 767px){.hidden-mobile{display:none!important}}.m0{margin:0!important}.mt0{margin-top:0!important}.mr0{margin-right:0!important}.mb0{margin-bottom:0!important}.ml0{margin-left:0!important}.mx0{margin-right:0!important;margin-left:0!important}.my0{margin-top:0!important;margin-bottom:0!important}.p0{padding:0!important}.pt0{padding-top:0!important}.pr0{padding-right:0!important}.pb0{padding-bottom:0!important}.pl0{padding-left:0!important}.px0{padding-right:0!important;padding-left:0!important}.py0{padding-top:0!important;padding-bottom:0!important}.m-xs{margin:4px!important}.mt-xs{margin-top:4px!important}.mr-xs{margin-right:4px!important}.mb-xs{margin-bottom:4px!important}.ml-xs{margin-left:4px!important}.mx-xs{margin-right:4px!important;margin-left:4px!important}.my-xs{margin-top:4px!important;margin-bottom:4px!important}.p-xs{padding:4px!important}.pt-xs{padding-top:4px!important}.pr-xs{padding-right:4px!important}.pb-xs{padding-bottom:4px!important}.pl-xs{padding-left:4px!important}.px-xs{padding-right:4px!important;padding-left:4px!important}.py-xs{padding-top:4px!important;padding-bottom:4px!important}.m-sm{margin:8px!important}.mt-sm{margin-top:8px!important}.mr-sm{margin-right:8px!important}.mb-sm{margin-bottom:8px!important}.ml-sm{margin-left:8px!important}.mx-sm{margin-right:8px!important;margin-left:8px!important}.my-sm{margin-top:8px!important;margin-bottom:8px!important}.p-sm{padding:8px!important}.pt-sm{padding-top:8px!important}.pr-sm{padding-right:8px!important}.pb-sm{padding-bottom:8px!important}.pl-sm{padding-left:8px!important}.px-sm{padding-right:8px!important;padding-left:8px!important}.py-sm{padding-top:8px!important;padding-bottom:8px!important}.m-md{margin:16px!important}.mt-md{margin-top:16px!important}.mr-md{margin-right:16px!important}.mb-md{margin-bottom:16px!important}.ml-md{margin-left:16px!important}.mx-md{margin-right:16px!important;margin-left:16px!important}.my-md{margin-top:16px!important;margin-bottom:16px!important}.p-md{padding:16px!important}.pt-md{padding-top:16px!important}.pr-md{padding-right:16px!important}.pb-md{padding-bottom:16px!important}.pl-md{padding-left:16px!important}.px-md{padding-right:16px!important;padding-left:16px!important}.py-md{padding-top:16px!important;padding-bottom:16px!important}.m-lg{margin:24px!important}.mt-lg{margin-top:24px!important}.mr-lg{margin-right:24px!important}.mb-lg{margin-bottom:24px!important}.ml-lg{margin-left:24px!important}.mx-lg{margin-right:24px!important;margin-left:24px!important}.my-lg{margin-top:24px!important;margin-bottom:24px!important}.p-lg{padding:24px!important}.pt-lg{padding-top:24px!important}.pr-lg{padding-right:24px!important}.pb-lg{padding-bottom:24px!important}.pl-lg{padding-left:24px!important}.px-lg{padding-right:24px!important;padding-left:24px!important}.py-lg{padding-top:24px!important;padding-bottom:24px!important}.m-xl{margin:32px!important}.mt-xl{margin-top:32px!important}.mr-xl{margin-right:32px!important}.mb-xl{margin-bottom:32px!important}.ml-xl{margin-left:32px!important}.mx-xl{margin-right:32px!important;margin-left:32px!important}.my-xl{margin-top:32px!important;margin-bottom:32px!important}.p-xl{padding:32px!important}.pt-xl{padding-top:32px!important}.pr-xl{padding-right:32px!important}.pb-xl{padding-bottom:32px!important}.pl-xl{padding-left:32px!important}.px-xl{padding-right:32px!important;padding-left:32px!important}.py-xl{padding-top:32px!important;padding-bottom:32px!important}.m-xxl{margin:48px!important}.mt-xxl{margin-top:48px!important}.mr-xxl{margin-right:48px!important}.mb-xxl{margin-bottom:48px!important}.ml-xxl{margin-left:48px!important}.mx-xxl{margin-right:48px!important;margin-left:48px!important}.my-xxl{margin-top:48px!important;margin-bottom:48px!important}.p-xxl{padding:48px!important}.pt-xxl{padding-top:48px!important}.pr-xxl{padding-right:48px!important}.pb-xxl{padding-bottom:48px!important}.pl-xxl{padding-left:48px!important}.px-xxl{padding-right:48px!important;padding-left:48px!important}.py-xxl{padding-top:48px!important;padding-bottom:48px!important}[dir=rtl] .mr0{margin-left:0!important;margin-right:inherit!important}[dir=rtl] .ml0{margin-right:0!important;margin-left:inherit!important}[dir=rtl] .pr0{padding-left:0!important;padding-right:inherit!important}[dir=rtl] .pl0{padding-right:0!important;padding-left:inherit!important}[dir=rtl] .mr-xs{margin-left:4px!important;margin-right:inherit!important}[dir=rtl] .ml-xs{margin-right:4px!important;margin-left:inherit!important}[dir=rtl] .pr-xs{padding-left:4px!important;padding-right:inherit!important}[dir=rtl] .pl-xs{padding-right:4px!important;padding-left:inherit!important}[dir=rtl] .mr-sm{margin-left:8px!important;margin-right:inherit!important}[dir=rtl] .ml-sm{margin-right:8px!important;margin-left:inherit!important}[dir=rtl] .pr-sm{padding-left:8px!important;padding-right:inherit!important}[dir=rtl] .pl-sm{padding-right:8px!important;padding-left:inherit!important}[dir=rtl] .mr-md{margin-left:16px!important;margin-right:inherit!important}[dir=rtl] .ml-md{margin-right:16px!important;margin-left:inherit!important}[dir=rtl] .pr-md{padding-left:16px!important;padding-right:inherit!important}[dir=rtl] .pl-md{padding-right:16px!important;padding-left:inherit!important}[dir=rtl] .mr-lg{margin-left:24px!important;margin-right:inherit!important}[dir=rtl] .ml-lg{margin-right:24px!important;margin-left:inherit!important}[dir=rtl] .pr-lg{padding-left:24px!important;padding-right:inherit!important}[dir=rtl] .pl-lg{padding-right:24px!important;padding-left:inherit!important}[dir=rtl] .mr-xl{margin-left:32px!important;margin-right:inherit!important}[dir=rtl] .ml-xl{margin-right:32px!important;margin-left:inherit!important}[dir=rtl] .pr-xl{padding-left:32px!important;padding-right:inherit!important}[dir=rtl] .pl-xl{padding-right:32px!important;padding-left:inherit!important}[dir=rtl] .mr-xxl{margin-left:48px!important;margin-right:inherit!important}[dir=rtl] .ml-xxl{margin-right:48px!important;margin-left:inherit!important}[dir=rtl] .pr-xxl{padding-left:48px!important;padding-right:inherit!important}[dir=rtl] .pl-xxl{padding-right:48px!important;padding-left:inherit!important}.text-left{text-align:left!important}.text-center{text-align:center!important}.text-right{text-align:right!important}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.text-deleted{text-decoration:line-through}.text-nowrap{white-space:nowrap!important}.text-wrap{white-space:pre-wrap!important}.text-truncate{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.font-weight-normal{font-weight:400}.font-weight-bold{font-weight:700}.font-italic{font-style:italic}.text-xs{font-size:12px!important}.text-sm{font-size:14px!important}.text-md{font-size:16px!important}.text-lg{font-size:18px!important}.text-xl{font-size:22px!important}.text-xxl{font-size:28px!important}[dir=rtl] .text-left{text-align:right!important}[dir=rtl] .text-right{text-align:left!important}.width-xs{width:80px!important}.max-width-xs{max-width:80px!important}.min-width-xs{min-width:80px!important}.width-sm{width:160px!important}.max-width-sm{max-width:160px!important}.min-width-sm{min-width:160px!important}.width-md{width:240px!important}.max-width-md{max-width:240px!important}.min-width-md{min-width:240px!important}.width-lg{width:320px!important}.max-width-lg{max-width:320px!important}.min-width-lg{min-width:320px!important}.width-xl{width:400px!important}.max-width-xl{max-width:400px!important}.min-width-xl{min-width:400px!important}.width-xxl{width:480px!important}.max-width-xxl{max-width:480px!important}.min-width-xxl{min-width:480px!important}.width-10{width:10%!important}.max-width-10{max-width:10%!important}.min-width-10{min-width:10%!important}.width-20{width:20%!important}.max-width-20{max-width:20%!important}.min-width-20{min-width:20%!important}.width-30{width:30%!important}.max-width-30{max-width:30%!important}.min-width-30{min-width:30%!important}.width-40{width:40%!important}.max-width-40{max-width:40%!important}.min-width-40{min-width:40%!important}.width-50{width:50%!important}.max-width-50{max-width:50%!important}.min-width-50{min-width:50%!important}.width-60{width:60%!important}.max-width-60{max-width:60%!important}.min-width-60{min-width:60%!important}.width-70{width:70%!important}.max-width-70{max-width:70%!important}.min-width-70{min-width:70%!important}.width-80{width:80%!important}.max-width-80{max-width:80%!important}.min-width-80{min-width:80%!important}.width-90{width:90%!important}.max-width-90{max-width:90%!important}.min-width-90{min-width:90%!important}.width-100{width:100%!important}.max-width-100{max-width:100%!important}.min-width-100{min-width:100%!important}@media (max-width: 767px){.width-sm,.max-width-sm,.min-width-sm{width:100%!important}}.scrollbar{overflow:auto}.scrollbar-x{overflow:auto hidden}.scrollbar-y{overflow:hidden auto}body,.scrollbar,.ant-dialog-wrap,.ant-drawer-body,.ant-drawer-wrapper-body,.ant-anchor-wrapper,textarea.ant-input{scrollbar-color:rgba(0,0,0,.3) #6e6e6e;scrollbar-width:thin}body::-webkit-scrollbar,.scrollbar::-webkit-scrollbar,.ant-dialog-wrap::-webkit-scrollbar,.ant-drawer-body::-webkit-scrollbar,.ant-drawer-wrapper-body::-webkit-scrollbar,.ant-anchor-wrapper::-webkit-scrollbar,textarea.ant-input::-webkit-scrollbar{width:6px;height:6px}body::-webkit-scrollbar-track,.scrollbar::-webkit-scrollbar-track,.ant-dialog-wrap::-webkit-scrollbar-track,.ant-drawer-body::-webkit-scrollbar-track,.ant-drawer-wrapper-body::-webkit-scrollbar-track,.ant-anchor-wrapper::-webkit-scrollbar-track,textarea.ant-input::-webkit-scrollbar-track{box-shadow:inset 0 0 6px #0000004d}body::-webkit-scrollbar-thumb,.scrollbar::-webkit-scrollbar-thumb,.ant-dialog-wrap::-webkit-scrollbar-thumb,.ant-drawer-body::-webkit-scrollbar-thumb,.ant-drawer-wrapper-body::-webkit-scrollbar-thumb,.ant-anchor-wrapper::-webkit-scrollbar-thumb,textarea.ant-input::-webkit-scrollbar-thumb{background-color:#6e6e6e;outline:1px solid #333}.st{display:block}.st__p-left .ant-table-pagination{display:block;float:none;text-align:left}.st__p-center .ant-table-pagination{display:block;float:none;text-align:center}.st__btn-sub .st__btn-text{width:100%;color:inherit}.st__btn-disabled .st__btn-text{color:#00000040;pointer-events:none}.st .nz-resizable-handle{display:flex;align-items:center;justify-content:center}.st .nz-resizable-handle>i{width:1px;height:60%;background:#d9d9d9}.st .nz-resizable-preview{border-width:0;border-right-width:1px}.st .nz-resizable.ant-table-column-has-sorters .nz-resizable-handle{margin-right:8px}.st .ant-table~nz-pagination>.ant-pagination{margin-bottom:0}.st__filter-keyword{padding:8px}.st__filter-date .ant-picker-panel-container{box-shadow:none}.st__filter-date .ant-picker-panel-container .ant-picker-panel{border:none}.st__has-filter .ant-table-column-sorters{padding-right:16px}.st__has-filter .st__filter{position:absolute;top:0;right:0;bottom:0;display:flex;place-items:center center}.st__has-filter .ant-table-filter-trigger{height:100%}.st__has-filter.ant-table-column-has-sorters .st__filter{right:-32px}.st__head-optional,.st__head-tip{margin-left:2px;color:#00000059}.st .ant-table-thead>tr>th .ant-table-filter-selected.ant-table-filter-icon{color:#1890ff}.st__checkall-selection{display:inline-block;margin-left:4px}.st .ant-table-tbody>tr .ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td{border-bottom:1px solid #f0f0f0}.st .ant-table-tbody>tr .ant-table-wrapper:only-child .ant-table{margin:0}.st .text-truncate.ant-table-cell-fix-left-first:after,.st .text-truncate.ant-table-cell-fix-left-last:after{transform:translate(80%)}.st .text-truncate.ant-table-cell-fix-right-first:after,.st .text-truncate.ant-table-cell-fix-right-last:after{transform:translate(-80%)}.st__no-column .ant-table{height:100px}.st__no-column .ant-table-content{display:none}.st__row-class .ant-table-tbody>tr>td .ant-table-cell-fix-left,.st__row-class .ant-table-tbody>tr>td .ant-table-cell-fix-right{background:inherit}@media screen and (min-width: 768px){.st__width-strict .ant-table-content>table,.st__width-strict .ant-table-body>table{word-wrap:break-word!important;table-layout:fixed!important}}.sv{display:block}.sv+.sv{margin-top:16px}.sv__container{display:block}.sv__container .ant-row{margin-bottom:-16px;overflow:hidden}.sv__item-fixed{display:flex}.sv__item-fixed .sv__label{flex:0 0 auto;overflow:hidden;text-align:right;text-overflow:ellipsis}.sv__item-fixed .sv__detail{flex:1 0 0}.sv__item+.ant-divider{margin:0 0 16px}.sv__title{display:block;float:none;clear:both;width:100%;margin-bottom:16px;color:#000000d9;font-weight:500;font-size:14px}.sv__label{display:table-cell;padding-bottom:16px;color:#00000080;line-height:22px;white-space:nowrap}.sv__label:not(.sv__label-empty):after{position:relative;top:-.5px;margin:0 8px 0 2px;content:":"}.sv__label-optional{margin-left:2px;color:#00000059}.sv__label-optional-no-text{margin-left:0}.sv__label-optional>.anticon{margin-left:2px}.sv__detail{display:table-cell;width:100%;padding-bottom:16px;color:#000000d9;line-height:22px;vertical-align:top;word-break:break-all}.sv__type-primary .sv__detail{color:#1890ff}.sv__type-success .sv__detail{color:#52c41a}.sv__type-danger .sv__detail{color:#ff4d4f}.sv__type-warning .sv__detail{color:#faad14}.sv__default:before{content:"-"}.sv__default~.sv__unit{display:none!important}.sv__unit{display:inline;margin-left:8px;color:#8c8c8c}.sv__small .ant-row{margin-bottom:-8px}.sv__small .sv__title{margin-bottom:12px;color:#000000d9}.sv__small .sv__label,.sv__small .sv__detail{padding-bottom:8px}.sv__value{display:inline-flex;align-items:center}.sv__value-prefix,.sv__value-unit{color:#00000080;font-size:12px;font-style:normal}.sv__value-prefix{padding-right:3px}.sv__value-text{font-size:18px}.sv__value-unit{padding-left:3px}.sv__value:not(:first-child){position:relative;margin-left:8px;padding-left:14px}.sv__value:not(:first-child):before{position:absolute;left:0;width:6px;color:#00000080;content:"/"}.sv__value-small .sv__value-text{font-size:14px}.sv__value-large .sv__value-text{font-size:24px}.sv__large .sv__title{font-size:16px}.sv__horizontal .sv__label-width{display:flex;justify-content:flex-end}.sv__horizontal .sv__label-width .sv__label-text{overflow:hidden;text-overflow:ellipsis}.sv__vertical .sv__label{padding-bottom:8px}.sv__vertical .sv__label,.sv__vertical .sv__detail{display:block}.sv__no-colon:after{content:" "!important}.sv__bordered{overflow:hidden;border-top:1px solid #f0f0f0;border-bottom:1px solid #f0f0f0;border-left:1px solid #f0f0f0}.sv__bordered .sv__item{border-right:1px solid #f0f0f0;border-bottom:1px solid #f0f0f0}.sv__bordered .sv__label{background-color:#fafafa;border-right:1px solid #f0f0f0}.sv__bordered .sv__label,.sv__bordered .sv__detail{padding:12px 24px}.sv__bordered.sv__large .sv__label,.sv__bordered.sv__large .sv__detail{padding:16px 24px}.sv__bordered.sv__small .sv__label,.sv__bordered.sv__small .sv__detail{padding:8px 16px}.se__title{display:block;float:none;clear:both;width:100%;color:#000000d9;font-weight:700;font-size:14px;line-height:1.5715}.se__item{transition:none}.se__item:last-child{margin-bottom:0;padding-bottom:0}.se__item-empty:before{display:inline-block;content:""}.se__item+.ant-divider{margin:0 0 24px}.se__label{display:table-cell;flex:0 0 auto;width:initial;white-space:nowrap;text-align:right}.se__label-optional{margin-left:2px;color:#00000059}.se__label-optional-no-text{margin-left:0}.se__label-optional>.anticon{margin-left:2px}.se__control{flex:1 0 0;width:100%}.se__compact>.se__title,.se__compact>.se__item{margin-bottom:8px}.se__compact>.se__title+.ant-divider,.se__compact>.se__item+.ant-divider{margin:0 0 8px}.se__compact .ant-form-item-extra{display:none}.se__line{padding-bottom:8px;border-bottom:1px dashed #f0f0f0}.se__hide-label .se__nolabel,.se__inline .se__nolabel,.se__vertical .se__nolabel{display:none!important}.se__horizontal>.se__item{display:flex}.se__horizontal>.se__item:last-child{margin-bottom:0}.se__horizontal>.se__item .se__label{display:flex;justify-content:flex-end}.se__horizontal>.se__item .se__label-text{overflow:hidden;text-overflow:ellipsis}.se__horizontal>.se__item .ant-form-item-required:before{line-height:inherit}.se__horizontal>.se__item .ant-form-item-label>label:after{margin-left:4px}.se__vertical>.se__item{display:block;width:100%}.se__inline .ant-form-item-label,.se__inline .se__control{display:inline-block;width:initial!important;text-align:left;vertical-align:top}.se__inline>.se__item{margin-right:16px}.se__inline>.se__item[col="1"]{flex-basis:auto;width:100%}.se__inline>.se__item:last-child{margin-right:0}.se__no-colon:after{content:" "!important}@media (max-width: 767px){.se__horizontal>.se__item{display:block}.se__horizontal>.se__item .ant-form-item-label{width:100%!important;text-align:left}.se__horizontal>.se__item .se__label{justify-content:normal}.se__horizontal .se__label,.se__vertical .se__label,.se__horizontal .se__control,.se__vertical .se__control{width:100%!important}}.avatar-list{display:inline-block}.avatar-list__wrap{display:inline-block;margin-left:8px;padding:0;font-size:0}.avatar-list__item{display:inline-block;width:32px;height:32px;margin-left:-8px;font-size:14px}.avatar-list__item .ant-avatar{border:1px solid #fff;cursor:pointer}.avatar-list__large{width:40px;height:40px}.avatar-list__small{width:24px;height:24px}.avatar-list__mini{width:20px;height:20px}.avatar-list__mini .ant-avatar{width:20px;height:20px;line-height:20px}.avatar-list__mini .ant-avatar-string{font-size:12px;line-height:18px}.avatar-list-rtl{direction:rtl}ellipsis{display:inline}.ellipsis{display:inline-block;width:100%;overflow:hidden;word-break:break-all}.ellipsis__lines{position:relative}.ellipsis__line-clamp{position:relative;display:-webkit-box;overflow:hidden;text-overflow:ellipsis}.ellipsis__shadow{position:absolute;z-index:-999;display:block;color:transparent;opacity:0}.error-collect{padding-right:24px;color:#f5222d;cursor:pointer}.error-collect__count{padding-left:8px}.error-collect-rtl{padding-right:0;padding-left:24px;direction:rtl}.error-collect-rtl .error-collect__count{padding-right:8px;padding-left:0}.exception{display:flex;align-items:center;height:100%}.exception__img-block{flex:0 0 62.5%;width:62.5%;padding-right:152px;zoom:1}.exception__img-block:before,.exception__img-block:after{display:table;content:" "}.exception__img-block:after{clear:both;height:0;font-size:0;visibility:hidden}.exception__img{float:right;width:100%;max-width:430px;height:360px;background-repeat:no-repeat;background-position:50% 50%;background-size:100% 100%}.exception__cont{flex:auto}.exception__cont-title{margin-bottom:24px;color:#434e59;font-weight:600;font-size:72px;line-height:72px}.exception__cont-desc{margin-bottom:16px;color:#00000073;font-size:20px;line-height:28px}.exception__cont-actions .ant-btn:not(:last-child){margin-right:8px}@media screen and (max-width: 1200px){.exception__img-block{padding-right:88px}}@media screen and (max-width: 576px){.exception{display:block;text-align:center}.exception__img-block{margin:0 auto 24px;padding-right:0}}@media screen and (max-width: 480px){.exception__img-block{margin-bottom:-24px;overflow:hidden}}.exception-rtl{direction:rtl}.exception-rtl .exception__cont-actions .ant-btn:not(:last-child){margin-right:0}.footer-toolbar{position:fixed;right:0;bottom:0;z-index:9;display:flex;width:100%;height:56px;padding:0 24px;line-height:56px;background:#fff;border-top:1px solid #f0f0f0;box-shadow:0 -1px 2px #00000008;transition:all .3s}.footer-toolbar__left{flex:1}.full-content{display:block;height:100%;overflow:auto}.full-content__body{overflow:hidden}.global-footer{display:block;margin:48px 0 24px;padding:0 16px;text-align:center}.global-footer__links{margin-bottom:8px}.global-footer__links-item{display:inline-block;color:#00000073;transition:all .3s}.global-footer__links-item:not(:last-child){margin-right:40px}.global-footer__links-item:hover{color:#000000d9}.global-footer__copyright{color:#00000073;font-size:14px}.global-footer-rtl{direction:rtl}.global-footer-rtl .global-footer__links-item:not(:last-child){margin-right:inherit;margin-left:40px}.notice-icon{width:336px}.notice-icon__btn{display:inline-block;cursor:pointer;transition:all .3s}.notice-icon .ant-popover-inner-content{padding:0}.notice-icon .ant-tabs-bar{margin-bottom:4px}.notice-icon__tab-left .ant-tabs-nav-list .ant-tabs-tab:first-child{margin-left:32px}.notice-icon .ant-list{max-height:400px;overflow:auto}.notice-icon .ant-list-item{padding-right:24px;padding-left:24px;overflow:hidden;cursor:pointer;transition:all .3s}.notice-icon .ant-list-item:last-child{border-bottom:0}.notice-icon .ant-list-item:hover{background:#e6f7ff}.notice-icon .ant-list-item-meta{width:100%}.notice-icon .ant-list-item-meta-title{margin-bottom:8px;font-weight:400}.notice-icon .ant-list-item .ant-avatar{margin-top:4px;background:#fff}.notice-icon__notfound{padding:73px 0 88px;color:#00000073;text-align:center}.notice-icon__notfound-img{display:inline-block;height:76px;margin-bottom:16px}.notice-icon__clear{height:46px;color:#000000d9;line-height:46px;text-align:center;border-top:1px solid #f0f0f0;border-radius:0 0 2px 2px;cursor:pointer;transition:all .3s}.notice-icon__clear:hover{color:#000000d9}.notice-icon__item .ant-badge-count{top:-10px}.notice-icon__item-read{opacity:.4}.notice-icon__item-desc{font-size:12px;line-height:1.5715}.notice-icon__item-time{margin-top:4px;font-size:12px;line-height:1.5715}.notice-icon__item-extra{float:right;margin-top:-1.5px;margin-right:0;color:#00000073;font-weight:400}.page-header{display:block;padding:16px 32px 0;background-color:#fff;border-bottom:1px solid #f0f0f0}.page-header__wide{max-width:1200px;margin:auto}.page-header .ant-breadcrumb{margin-bottom:16px}.page-header .ant-tabs{margin:0 0 -17px}.page-header .ant-tabs-bar{border-bottom:1px solid #f0f0f0}.page-header__detail{display:flex}.page-header__row{display:flex;width:100%}.page-header__logo{flex:0 1 auto;margin-right:16px;padding-top:1px}.page-header__logo img{display:block;width:28px;height:28px;border-radius:2px}.page-header__title{color:#000000d9;font-weight:500;font-size:20px}.page-header__title small{padding-left:8px;color:#0006;font-weight:400;font-size:14px}.page-header__action{min-width:266px;margin-left:56px}.page-header__title,.page-header__desc{flex:auto}.page-header__action,.page-header__extra,.page-header__main{flex:0 1 auto}.page-header__main{width:100%}.page-header__title,.page-header__action,.page-header__logo,.page-header__desc,.page-header__extra{margin-bottom:16px}.page-header__action,.page-header__extra{display:flex;justify-content:flex-end}.page-header__extra{min-width:242px;margin-left:88px}@media screen and (max-width: 1200px){.page-header__extra{margin-left:44px}}@media screen and (max-width: 992px){.page-header__extra{margin-left:20px}}@media screen and (max-width: 768px){.page-header__row{display:block}.page-header__action,.page-header__extra{justify-content:start;margin-left:0}}@media screen and (max-width: 576px){.page-header__detail{display:block}}@media screen and (max-width: 480px){.page-header__action .ant-btn-group,.page-header__action .ant-btn{display:block;margin-bottom:8px}.page-header__action .ant-input-search-enter-button .ant-btn{margin-bottom:0}.page-header__action .ant-btn-group>.ant-btn{display:inline-block;margin-bottom:0}}.page-header-rtl{direction:rtl}.page-header-rtl .page-header__logo{margin-right:0;margin-left:16px}.page-header-rtl .page-header__title small{padding-right:8px;padding-left:0}.page-header-rtl .page-header__action{margin-right:56px;margin-left:0}.page-header-rtl .page-header__extra{margin-right:88px;margin-left:0}@media screen and (max-width: 1200px){.page-header-rtl .page-header__extra{margin-right:44px;margin-left:0}}@media screen and (max-width: 992px){.page-header-rtl .page-header__extra{margin-right:20px;margin-left:0}}.quick-menu{position:fixed;right:-1px;left:auto;z-index:11;display:block;backface-visibility:hidden;transition:margin .3s cubic-bezier(1,0,0,1)}.quick-menu,.quick-menu__ctrl{background-color:#fff;border:1px solid #fff;box-shadow:0 6px 16px -8px #00000014,0 9px 28px #0000000d,0 12px 48px 16px #00000008}.quick-menu__inner{position:relative;padding:0 12px}.quick-menu__ctrl{position:absolute;top:-1px;left:-50px;width:50px;height:50px;text-align:center;border-right:0;border-radius:3px 0 0 3px;cursor:pointer}.quick-menu__ctrl-icon{font-size:20px;line-height:49px}.result{display:block;width:72%;margin:0 auto;text-align:center}@media screen and (max-width: 480px){.result{width:100%}}.result__icon{margin-bottom:24px;font-size:72px;line-height:72px}.result__icon-success{color:#52c41a}.result__icon-error{color:#ff4d4f}.result__title{margin-bottom:16px;color:#000000d9;font-weight:500;font-size:24px;line-height:32px}.result__desc{margin-bottom:24px;color:#00000073;font-size:14px;line-height:22px}.result__extra{padding:24px 40px;text-align:left;background:#fafafa;border-radius:2px}@media screen and (max-width: 480px){.result__extra{padding:18px 20px}}.result__actions{margin-top:32px}.result__actions button:not(:last-child){margin-right:8px}.result .ant-steps .ant-steps-head,.result .ant-steps .ant-steps-title{background:#fafafa}.result-rtl{direction:rtl}.reuse-tab{display:block;background-color:#fff;outline:none;-webkit-user-select:none;user-select:none}.reuse-tab .ant-tabs-nav .ant-tabs-tab .reuse-tab__op{position:absolute;display:none;margin:0;color:#000000d9;font-size:10px}.reuse-tab .ant-tabs-nav .ant-tabs-tab:hover .reuse-tab__op{display:block}.reuse-tab .ant-tabs-nav .ant-tabs-tab .reuse-tab__name-width{display:inline-block;overflow:hidden;text-overflow:ellipsis}.reuse-tab .ant-tabs>.ant-tabs-nav{margin:0}.reuse-tab__line{padding:8px;border-bottom:1px solid #d9d9d9}.reuse-tab__line .ant-tabs-nav:before{border-bottom:none}.reuse-tab__line .ant-tabs-nav .ant-tabs-tab{padding:0}.reuse-tab__line .ant-tabs-nav .ant-tabs-tab .reuse-tab__op{top:12px;right:2px}.reuse-tab__line .ant-tabs-nav .ant-tabs-tab .reuse-tab__name{display:inline-block;padding:8px 20px}.reuse-tab__card{padding-top:8px}.reuse-tab__card .ant-tabs-nav-container{padding:0 8px}.reuse-tab__card .ant-tabs-nav .ant-tabs-tab .reuse-tab__op{top:4px;right:4px}.reuse-tab__disabled{opacity:.8;pointer-events:none}.reuse-tab__cm .ant-menu{border:1px solid #e9e9e9}.reuse-tab-rtl{direction:rtl}.tag-select{position:relative;display:block;max-height:38px;margin-top:-16px;margin-left:-8px;overflow:hidden;line-height:1.5715;transition:all .3s;-webkit-user-select:none;user-select:none}.tag-select__expanded{max-height:200px;transition:all .3s}.tag-select__has-expand{padding-right:50px}.tag-select .ant-tag{margin-top:16px;margin-right:24px}.tag-select__trigger{position:absolute;top:0;right:0;display:flex;align-items:center;margin-right:0!important;color:#1890ff}.tag-select__trigger>.anticon{margin-left:2px;font-size:8px;transition:transform .24s}.tag-select-rtl{margin-right:-8px;margin-left:0;direction:rtl}.tag-select-rtl__has-expand{padding-right:0!important;padding-left:50px!important}.tag-select-rtl .tag-select .ant-tag{margin-right:0;margin-left:24px}.tag-select-rtl .tag-select__trigger{right:initial;left:0}.tag-select-rtl .tag-select__trigger-icon{margin-right:0;margin-left:8px}.down-file__not-support{display:none}.loading-backdrop{z-index:9999;background-color:#00000026;opacity:1}.loading-default{position:fixed;inset:0;z-index:10000;display:flex;flex-direction:column;align-items:center;justify-content:center}.loading-default__icon{margin-bottom:8px;color:#1890ff;font-size:24px}.loading-default__text{color:#1890ff}.loading-default__custom{width:64px;height:64px;fill:#fff}.loading-default-rtl{direction:rtl}.onboarding+.cdk-overlay-container{z-index:99999}.onboarding__mask{position:fixed;inset:0;z-index:99998;background-color:#000;opacity:.5}.onboarding__item{position:absolute}.onboarding__light{position:absolute;z-index:99999;background-color:#ffffffe6;animation:2.5s cubic-bezier(.55,.05,.6,.2) 0s infinite normal none running onboardingAnt;pointer-events:none}.onboarding__light-el{z-index:100000!important}.onboarding__light-ant{transition:all .3s ease-out}.onboarding__footer{margin-top:8px}.onboarding__total{color:#000000d9}@keyframes onboardingAnt{0%,33%{box-shadow:#fff 0 0 0 2px,#fff 0 0}66%,to{box-shadow:#fff 0 0 0 2px,#ffffff03 0 0 0 10px}}.onboarding-rtl{direction:rtl}.pdf-container{position:absolute;width:100%;height:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.cell__has-unit{align-items:baseline}.cell__has-default{color:#00000073}.cell__primary{color:#1890ff}.cell__success{color:#52c41a}.cell__danger{color:#ff4d4f}.cell__warning{color:#faad14}.cell__large{font-size:18px}.cell__small{font-size:12px}.cell[data-type=img] .img:not(:last-child){margin-right:4px}.cell .img{vertical-align:middle;border-radius:4px}.cell .unit{margin-left:2px;color:#00000073;font-size:12px}.cell__disabled[data-type=link]{pointer-events:none}.cell__disabled[data-type=link]>a{color:#000000d9}g2-chart,g2-bar,g2-gauge,g2-mini-area,g2-mini-bar,g2-single-bar,g2-tag-cloud,g2-timeline,g2,g2-custom{display:block}g2-bar,g2-tag-cloud{width:100%}.g2-card{position:relative}.g2-card__top{position:relative;width:100%;overflow:hidden}.g2-card__top-margin{margin-bottom:12px}.g2-card__top-has-margin{margin-bottom:20px}.g2-card__meta{height:22px;color:#00000073;font-size:14px;line-height:22px}.g2-card__meta-wrap{float:left}.g2-card__meta-action{position:absolute;top:4px;right:0;line-height:1;cursor:pointer}.g2-card__avatar{position:relative;top:4px;float:left;margin-right:20px}.g2-card__avatar img{border-radius:100%}.g2-card__total{height:38px;margin-top:4px;margin-bottom:0;overflow:hidden;color:#000000d9;font-size:30px;line-height:38px;white-space:nowrap;text-overflow:ellipsis;word-break:break-all}.g2-card__desc{width:100%;margin-bottom:12px}.g2-card__footer{margin-top:8px;padding-top:9px;border-top:1px solid #f0f0f0}.g2-card__footer>*{position:relative}.g2-mini-progress{position:relative;display:block;width:100%;padding:5px 0}.g2-mini-progress__wrap{position:relative;background-color:#f5f5f5}.g2-mini-progress__value{width:0;height:100%;background-color:#1890ff;border-radius:1px 0 0 1px;transition:all .4s cubic-bezier(.08,.82,.17,1) 0s}.g2-mini-progress__target{position:absolute;top:0;bottom:0}.g2-mini-progress__target-item{position:absolute;top:0;left:0;width:2px;height:4px;border-radius:100px}.g2-mini-progress__target-item:last-child{top:auto;bottom:0}.g2-pie{position:relative;display:block}.g2-pie__chart{position:relative}.g2-pie__legend{position:absolute;top:50%;right:0;min-width:250px;margin:0 20px;padding:0;list-style:none;transform:translateY(-50%)}.g2-pie__legend-item{height:22px;margin-bottom:16px;line-height:22px;cursor:pointer}.g2-pie__legend-item:last-child{margin-bottom:0}.g2-pie__legend-title{color:#000000d9}.g2-pie__legend-dot{position:relative;top:-1px;display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:8px}.g2-pie__legend-percent{color:#00000073}.g2-pie__legend-value{position:absolute;right:0}.g2-pie__legend-has .g2-pie__chart{width:calc(100% - 240px)}.g2-pie__legend-block .g2-pie__chart{width:100%;margin:0 0 32px}.g2-pie__legend-block .g2-pie__legend{position:relative;min-width:auto;transform:none}.g2-pie__total{position:absolute;top:50%;left:50%;height:62px;text-align:center;transform:translate(-50%,-50%)}.g2-pie__total-title{height:22px;margin-bottom:8px;color:#00000073;font-weight:400;font-size:14px;line-height:22px}.g2-pie__total-stat{display:block;height:32px;color:#000000d9;font-size:1.2em;line-height:32px;white-space:nowrap}.g2-pie__mini .g2-pie__total-title{margin-top:4px;margin-bottom:0}.g2-radar{display:block}.g2-radar__legend{margin-top:16px}.g2-radar__legend-item{position:relative;color:#00000073;line-height:22px;text-align:center;cursor:pointer}.g2-radar__legend-item:after{position:absolute;top:8px;right:0;width:1px;height:40px;background-color:#f0f0f0;content:""}.g2-radar__legend-item:last-child:after{display:none}.g2-radar__legend-title{margin-top:4px;margin-bottom:0;padding-left:16px;color:#000000d9;font-size:24px;line-height:32px}.g2-radar__legend-dot{position:relative;top:-1px;display:inline-block;width:6px;height:6px;margin-right:6px;border-radius:6px}.g2-water-wave{position:relative;display:inline-block;transform-origin:left}.g2-water-wave__desc{position:absolute;top:32px;left:0;width:100%;text-align:center}.g2-water-wave__desc-title{color:#00000073;font-size:14px;line-height:22px}.g2-water-wave__desc-percent{color:#000000d9;font-size:24px;line-height:32px}.g2-water-wave__canvas{transform:scale(.5);transform-origin:0 0}.number-info{display:inline-block}.number-info__title{margin-bottom:16px;color:#000000d9;font-size:16px;transition:all .3s}.number-info__title-sub{height:22px;overflow:hidden;color:#00000073;font-size:14px;line-height:22px;white-space:nowrap;text-overflow:ellipsis;word-break:break-all}.number-info__value{margin-top:4px;overflow:hidden;font-size:0;white-space:nowrap;text-overflow:ellipsis;word-break:break-all}.number-info__value-suffix{margin-left:4px;color:#000000d9;font-size:16px;font-style:normal}.number-info__value-text{display:inline-block;height:32px;color:#000000d9;font-size:24px;line-height:32px}.number-info__value-sub{margin-left:32px;color:#00000073;font-size:16px;vertical-align:top}.number-info__value-sub .anticon{margin-left:4px;font-size:12px;transform:scale(.82)}.number-info__value-sub .anticon-caret-up{color:#f5222d}.number-info__value-sub .anticon-caret-down{color:#52c41a}.number-info__light .number-info__value-text{color:#000000d9}.number-info:not(:first-child){position:relative;margin-left:32px;padding-left:32px}.number-info:not(:first-child):after{position:absolute;top:0;bottom:0;left:0;width:1px;margin:8px 0;background-color:#f0f0f0;content:""}.trend{display:inline-block;font-size:14px;line-height:22px}.trend__up,.trend__down{position:relative;top:1px;margin-left:4px}.trend__up i,.trend__down i{font-size:12px;transform:scale(.83)}.trend__up{color:#f5222d}.trend__down{top:-1px;color:#52c41a}.trend__grey .trend__up,.trend__grey .trend__down{color:#000000d9}.trend__reverse .trend__up{color:#52c41a}.trend__reverse .trend__down{color:#f5222d}html{height:100%;direction:ltr;touch-action:manipulation}html,body,app-root{height:100%}body{color:#000000d9;background-color:#f5f7fa}.alain-default{position:relative;display:block;width:100%;height:auto;min-height:100%;overflow-x:hidden}.alain-default__unwrap{margin-right:-24px;margin-left:-24px}@media (max-width: 767px){.alain-default__unwrap{margin-right:0;margin-left:0}}.alain-default__content{margin:0 24px 24px}.alain-default__content-title{display:flex;align-items:center;justify-content:space-between;margin-right:-24px;margin-bottom:24px;margin-left:-24px;padding:12px 24px;color:#929292;background-color:#fafbfc;border-bottom:1px solid #efe3e5}.alain-default__content-title>h1{margin-bottom:0;font-weight:400;font-size:18px}.alain-default__content-title>h1>small{display:block;color:#8c8c8c;font-size:12px}.alain-default__content nz-input-group{width:auto}.alain-default__hide-aside .alain-default__content{margin-left:24px!important;transform:none!important}.alain-default__hide-header .alain-default__aside{margin-top:0}@media (min-width: 768px){.alain-default__content{margin-left:224px}.alain-default__collapsed .alain-default__sidebar{width:64px}.alain-default__collapsed .alain-default__content{margin-left:88px}}@media (min-width: 768px){[dir=rtl] .alain-default__content{margin-right:224px;margin-left:0}[dir=rtl] .alain-default__collapsed .alain-default__content{margin-right:88px;margin-left:0}}.alain-default__header{z-index:19;display:flex;align-items:center;width:100%;height:64px;padding:0 16px;background-color:#1890ff;box-shadow:0 1px 10px #0003}.alain-default__header-logo{width:200px;margin-left:-16px;transition:width .2s cubic-bezier(.25,0,.15,1)}.alain-default__header-logo-link{display:block;text-align:center}.alain-default__header-logo-expanded,.alain-default__header-logo-collapsed{max-width:100%;max-height:36px;vertical-align:middle;animation:fadeIn 1s}.alain-default__header-logo-collapsed{display:none}.alain-default__header-logo-expanded{display:inline-block}.alain-default__nav{display:flex;align-items:center;margin:0;padding:0}.alain-default__nav:first-child{margin-right:16px}.alain-default__nav-middle{flex:1}.alain-default__nav-wrap{display:flex;flex:1;justify-content:space-between}.alain-default__nav>li{display:inline-block;vertical-align:middle}.alain-default__nav-item,.alain-default__nav nz-badge{color:#fff}.alain-default__nav-item{display:block;min-width:50px;padding:8px 2px;line-height:100%;text-align:center;border-radius:2px;outline:none;cursor:pointer;transition:background-color .3s}.alain-default__nav-item:hover{color:#fff;background-color:#fff3}.alain-default__nav-item>i,.alain-default__nav-item-icon{font-size:18px!important;transform:none!important}.alain-default__top-menu-item{display:flex;align-items:center;height:64px;padding:0 16px;border-radius:0}.alain-default__top-menu-item-selected{color:#fff;background-color:#fff3}.alain-default__top-menu-item-disabled{opacity:.5;pointer-events:none}.alain-default__search{position:relative;display:flex;flex:1;align-items:center;margin:0 24px}.alain-default__search .ant-input{padding-left:0}.alain-default__search .ant-input:focus{box-shadow:none}.alain-default__search .ant-input,.alain-default__search .ant-input-group-addon,.alain-default__search .ant-input-affix-wrapper{color:#fff;background-color:#fff3;border:none}.alain-default__search .ant-input::placeholder,.alain-default__search .ant-input-group-addon::placeholder,.alain-default__search .ant-input-affix-wrapper::placeholder{color:#fff;opacity:1}.alain-default__search .ant-input-affix-wrapper .ant-input{background-color:transparent}.alain-default__search .ant-input-group-addon i,.alain-default__search .ant-input-affix-wrapper i{color:#fff;transition:color .3s,transform .4s}.alain-default__search-focus .ant-input,.alain-default__search-focus .ant-input-group-addon,.alain-default__search-focus .ant-input-affix-wrapper{color:#595959;background-color:#f3f3f3}.alain-default__search-focus .ant-input::placeholder,.alain-default__search-focus .ant-input-group-addon::placeholder,.alain-default__search-focus .ant-input-affix-wrapper::placeholder{color:#595959;opacity:1}.alain-default__search-focus .ant-input-group-addon i,.alain-default__search-focus .ant-input-affix-wrapper i{color:#595959;transform:rotate(90deg)}@media (max-width: 767px){.alain-default__search{position:absolute;top:0;left:0;z-index:29;align-items:center;width:100%;height:100%;margin:0;padding:0 16px;background-color:#fff;transition:transform .3s}.alain-default__search-toggled{display:flex}.alain-default__search:not(.alain-default__search-toggled){transform:translate3d(0,-105%,0)}}.alain-default__collapsed .alain-default__header-logo{width:64px}.alain-default__collapsed .alain-default__header-logo-collapsed{display:inline-block}.alain-default__collapsed .alain-default__header-logo-expanded{display:none}@media (max-width: 767px){.alain-default__header-logo{width:64px}.alain-default__header-logo-collapsed{display:inline}.alain-default__header-logo-expanded{display:none}}[dir=rtl] .alain-default__header-logo{margin-right:-16px;margin-left:0}.alain-default__aside{position:absolute;top:0;bottom:0;z-index:14;width:200px;margin-top:64px;overflow:hidden;background-color:#fff;backface-visibility:hidden;transition:width .2s cubic-bezier(.25,0,.15,1),translate .2s cubic-bezier(.25,0,.15,1);-webkit-overflow-scrolling:touch}.alain-default__aside:after{position:absolute;top:0;right:0;bottom:0;border-right:1px solid #efe3e5;content:""}.alain-default__aside-wrap{display:flex;flex-direction:column;height:100%}.alain-default__aside-inner{flex:1 1 0%;overflow-x:hidden scroll;-webkit-overflow-scrolling:touch;scroll-snap-type:proximity;scroll-snap-points-x:snaplist(100%,200%,300%,400%,500%);scrollbar-width:none}.alain-default__aside-inner::-webkit-scrollbar{width:0;height:0}.alain-default__aside-inner::-webkit-scrollbar-track{box-shadow:inset 0 0 0 transparent}.alain-default__aside-inner::-webkit-scrollbar-thumb{background-color:transparent}.alain-default__aside-link{border-top:1px solid #efe3e5}.alain-default__aside-link-collapsed{padding:8px 0;font-size:16px;text-align:center;cursor:pointer}@media (min-width: 768px){.alain-default__collapsed .alain-default__aside{width:64px}}@media (max-width: 767px){.alain-default__aside,.alain-default__content{transition:transform .3s ease}.alain-default__content{transform:translate3d(200px,0,0)}.alain-default__collapsed .alain-default__aside{transform:translate3d(-100%,0,0)}.alain-default__collapsed .alain-default__content{transform:translateZ(0)}}[dir=rtl] .alain-default__aside:after{right:inherit;left:0}@media (max-width: 767px){[dir=rtl] .alain-default__content{transform:translate3d(-200px,0,0)}[dir=rtl] .alain-default__collapsed .alain-default__aside{transform:translate3d(100%,0,0)}[dir=rtl] .alain-default__collapsed .alain-default__content{transform:translateZ(0)}}.alain-default__progress-bar{position:fixed;z-index:29;width:100vw;height:4px;overflow:hidden;background:rgba(221,221,221,.4)}.alain-default__progress-bar:after{display:block;width:33.3vw;height:100%;transform-origin:top left;animation:gradcolours 5s steps(1) infinite,loadthird 1s infinite linear;content:" "}@keyframes loadthird{0%{transform:translate(-33.3vw)}to{transform:translate(100vw)}}@keyframes gradcolours{0%{background:linear-gradient(90deg,rgba(232,128,152,0) 0%,#e88098 30%,#e88098 50%,#e88098 70%,rgba(232,128,152,0) 100%)}20%{background:linear-gradient(90deg,rgba(132,190,190,0) 0%,#84bebe 30%,#84bebe 50%,#84bebe 70%,rgba(132,190,190,0) 100%)}40%{background:linear-gradient(90deg,rgba(233,135,36,0) 0%,#e98724 30%,#e98724 50%,#e98724 70%,rgba(233,135,36,0) 100%)}60%{background:linear-gradient(90deg,rgba(175,201,78,0) 0%,#afc94e 30%,#afc94e 50%,#afc94e 70%,rgba(175,201,78,0) 100%)}80%{background:linear-gradient(90deg,rgba(98,151,164,0) 0%,#6297a4 30%,#6297a4 50%,#6297a4 70%,rgba(98,151,164,0) 100%)}}.sidebar-nav{display:block;margin:0;padding:0;font-size:14px}.sidebar-nav__item{position:relative;display:flex;flex-direction:column;border-left:3px solid transparent;transition:border-left-color .4s ease}.sidebar-nav__item-link{position:relative;display:block;padding:8px 32px 8px 16px;overflow:hidden;color:#000000d9;white-space:nowrap;text-decoration:none!important;text-overflow:ellipsis;-webkit-user-select:none;user-select:none}.sidebar-nav__item-link:hover{color:#1890ff}.sidebar-nav__item-icon{display:inline-block;min-width:14px;margin-right:8px;transition:font-size .15s cubic-bezier(.215,.61,.355,1),margin .3s cubic-bezier(.645,.045,.355,1)}.sidebar-nav__item-img,.sidebar-nav__item-svg{width:14px;height:14px}.sidebar-nav__item-text{opacity:1;transition:opacity .3s cubic-bezier(.645,.045,.355,1),width .3s cubic-bezier(.645,.045,.355,1)}.sidebar-nav__item-disabled{cursor:default;opacity:.6}.sidebar-nav__item-disabled:hover{color:#000000d9}.sidebar-nav__selected{background-color:#fcfcfc;border-left-color:#1890ff}.sidebar-nav__selected>.sidebar-nav__item-link{color:#1890ff}.sidebar-nav__open>.sidebar-nav__sub{display:block;animation:fadeIn .5s}.sidebar-nav__open>.sidebar-nav__item-link .sidebar-nav__sub-arrow{transform:translateY(-2px)}.sidebar-nav__open>.sidebar-nav__item-link .sidebar-nav__sub-arrow:before{transform:rotate(45deg) translate(2px)}.sidebar-nav__open>.sidebar-nav__item-link .sidebar-nav__sub-arrow:after{transform:rotate(-45deg) translate(-2px)}.sidebar-nav__group-title{padding:8px 16px;color:#00000073}.sidebar-nav__sub{display:none;overflow:hidden}.sidebar-nav__sub .sidebar-nav__item{border-left:0!important}.sidebar-nav__sub-arrow{position:absolute;top:50%;right:16px;width:10px;transition:transform .3s cubic-bezier(.645,.045,.355,1)}.sidebar-nav__sub-arrow:before,.sidebar-nav__sub-arrow:after{position:absolute;width:6px;height:1.5px;background:#fff;background-image:linear-gradient(to right,rgba(0,0,0,.85),rgba(0,0,0,.85));border-radius:2px;transition:background-color .3s cubic-bezier(.645,.045,.355,1),transform .3s cubic-bezier(.645,.045,.355,1),top .3s cubic-bezier(.645,.045,.355,1);content:""}.sidebar-nav__sub-arrow:before{transform:rotate(-45deg) translate(2px)}.sidebar-nav__sub-arrow:after{transform:rotate(45deg) translate(-2px)}.sidebar-nav .ant-badge{position:absolute;top:8px;right:8px}.sidebar-nav .ant-badge-dot{top:10px!important;right:16px!important}.sidebar-nav__depth1 .sidebar-nav__item-link{padding-left:38px}.sidebar-nav__depth2 .sidebar-nav__item-link{padding-left:46px}.sidebar-nav__depth3 .sidebar-nav__item-link{padding-left:54px}.sidebar-nav__depth4 .sidebar-nav__item-link{padding-left:62px}.sidebar-nav__depth5 .sidebar-nav__item-link{padding-left:70px}.sidebar-nav__floating{position:absolute;z-index:16;display:none;min-width:160px;background-color:#fff;border:1px solid #efe3e5;border-radius:4px}.sidebar-nav__floating .sidebar-nav__item-link{padding-left:16px}.sidebar-nav__floating-show,.sidebar-nav__floating .sidebar-nav__sub{display:block}.sidebar-nav__floating .sidebar-nav__sub-arrow{display:none}.sidebar-nav__floating .sidebar-nav__depth2 .sidebar-nav__item-link{padding-left:24px}.sidebar-nav__floating .sidebar-nav__depth3 .sidebar-nav__item-link{padding-left:32px}.sidebar-nav__floating .sidebar-nav__depth4 .sidebar-nav__item-link{padding-left:40px}@media (min-width: 768px){.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item{border:none}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link{display:flex;justify-content:center;padding:16px 0}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link .sidebar-nav__item-icon{margin-right:0;font-size:24px}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link .sidebar-nav__item-img{width:24px;height:24px}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link .sidebar-nav__item-text{display:none;opacity:0}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__group-title{display:none}.alain-default__collapsed .sidebar-nav__sub{display:none!important}.alain-default__collapsed .sidebar-nav__sub-arrow{display:none}}[dir=rtl] .sidebar-nav__item-icon{margin-right:0;margin-left:8px}[dir=rtl] .sidebar-nav .ant-badge{right:inherit;left:16px}@media (min-width: 768px){[dir=rtl] .alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link .sidebar-nav__item-icon{margin-left:0}}.footer-toolbar__left{margin-left:200px}.alain-default__collapsed .footer-toolbar__left{margin-left:64px}.footer-toolbar__body .alain-default__content{margin-bottom:64px}.full-content__body .alain-default__content router-outlet+*{display:block;width:100%;height:100%}.full-content__body .alain-default__content-title{margin-left:-24px}.full-content__opened .alain-default__header,.full-content__opened .alain-default__aside,.full-content__opened reuse-tab{display:none!important}.full-content__opened .alain-default__content{margin:24px!important}.full-content__hidden-title .alain-default__content-title,.full-content__hidden-title .page-header{display:none!important}.alain-default .page-header{margin-right:-24px;margin-bottom:24px;margin-left:-24px;padding:12px 24px 0;border-bottom:1px solid #efe3e5}@media (max-width: 767px){.quick-menu{right:-25px!important}}.reuse-tab{margin:0 -24px}.alain-default__fixed .reuse-tab{position:fixed;top:64px;right:24px;left:224px;z-index:10}.alain-default__collapsed .reuse-tab{left:88px}.alain-default__hide-aside .reuse-tab{left:24px}.alain-default__hide-header .reuse-tab{top:0}@media (min-width: 768px){.alain-default__fixed .reuse-tab+router-outlet{display:block;height:52px}}@media (max-width: 767px){.alain-default__fixed .reuse-tab{position:unset;width:initial;margin-top:52px}}[dir=rtl] .alain-default__fixed .reuse-tab{right:224px;left:24px}[dir=rtl] .alain-default__collapsed .reuse-tab{right:88px;left:0}.alain-default__nav-item .ant-badge-count{top:6px;right:18px}.app-icons{padding:16px}.app-icons .ant-col-6{padding:16px 0;text-align:center;border-radius:4px;cursor:pointer;transition:background-color .3s}.app-icons .ant-col-6:hover{background-color:#f5f5f5}.app-icons i{padding:15px;font-size:22px;border-radius:50%}.app-icons small{display:block;padding-top:4px;color:#9c9c9c;font-size:14px}.alain-default__aside-user{display:flex;align-items:center;justify-content:center;margin:24px 24px 0;cursor:pointer}.alain-default__aside-user .ant-dropdown-trigger{display:flex;align-items:center}.alain-default__aside-user-info{flex:1;overflow:hidden;color:#000000d9;white-space:nowrap;text-overflow:ellipsis}.alain-default__aside-user-avatar{margin-right:8px}@media (min-width: 768px){.alain-default__collapsed .alain-default__aside-user{width:64px;margin-left:0}.alain-default__collapsed .alain-default__aside-user-info{display:none}.alain-default__collapsed .alain-default__aside-user-avatar{margin:0 auto}}[dir=rtl] .alain-default__aside-user-avatar{margin-right:0;margin-left:8px}@media (min-width: 768px){[dir=rtl] .alain-default__collapsed .alain-default__aside-user{margin-right:0}[dir=rtl] .alain-default__collapsed .alain-default__aside-user-avatar{margin:0 auto}}.alain-default__fixed .alain-default__header{position:fixed;top:0;left:0}.alain-default__fixed .alain-default__aside{position:fixed}.alain-default__fixed:not(.alain-default__hide-header) .alain-default__content{margin-top:64px}.nz-resizable-preview{position:absolute;top:0;left:0;z-index:8;border:1px dashed #d1d1d1}.nz-resizable-handle{position:absolute;-webkit-user-select:none;user-select:none;z-index:9}.nz-resizable-handle-top{width:100%;height:10px;top:-5px;left:0}.nz-resizable-handle-right{width:10px;height:100%;top:0;right:-5px}.nz-resizable-handle-bottom{width:100%;height:10px;bottom:-5px;left:0}.nz-resizable-handle-left{width:10px;height:100%;top:0;left:-5px}.nz-resizable-handle-topRight{width:20px;height:20px;top:-5px;right:-5px;z-index:10}.nz-resizable-handle-bottomRight{width:20px;height:20px;right:-5px;bottom:-5px;z-index:10}.nz-resizable-handle-bottomLeft{width:20px;height:20px;bottom:-5px;left:-5px;z-index:10}.nz-resizable-handle-topLeft{width:20px;height:20px;top:-5px;left:-5px;z-index:10}.nz-resizable .nz-resizable-handle-cursor-type-window.nz-resizable-handle-top,.nz-resizable .nz-resizable-handle-cursor-type-window.nz-resizable-handle-bottom{cursor:ns-resize}.nz-resizable .nz-resizable-handle-cursor-type-window.nz-resizable-handle-right,.nz-resizable .nz-resizable-handle-cursor-type-window.nz-resizable-handle-left{cursor:ew-resize}.nz-resizable .nz-resizable-handle-cursor-type-grid.nz-resizable-handle-top,.nz-resizable .nz-resizable-handle-cursor-type-grid.nz-resizable-handle-bottom{cursor:row-resize}.nz-resizable .nz-resizable-handle-cursor-type-grid.nz-resizable-handle-right,.nz-resizable .nz-resizable-handle-cursor-type-grid.nz-resizable-handle-left{cursor:col-resize}.nz-resizable .nz-resizable-handle-bottomRight,.nz-resizable .nz-resizable-handle-topLeft{cursor:nwse-resize}.nz-resizable .nz-resizable-handle-bottomLeft,.nz-resizable .nz-resizable-handle-topRight{cursor:nesw-resize}.nz-resizable-disabled .nz-resizable-handle{pointer-events:none}.color-palettes{margin:0 1%}.color-palettes-dark{margin:0;padding:0 28px;background-color:#141414}.color-palettes-dark .color-title{color:#ffffffd9}.color-palettes-dark .color-description{color:#ffffff73}.color-palettes-dark .color-palette{margin:45px 3.5% 45px 0}.color-palettes-dark .color-palette:nth-of-type(3n){margin-right:0}.color-palettes-dark .color-palette .main-color-item{margin-right:0}.color-palettes-dark .color-palette .main-color-item:hover{margin-right:-8px}.color-palette{display:inline-block;width:31%;margin:45px 1%}.color-palette-pick{margin:0 0 20px;font-size:20px;text-align:center}.color-palette-picker{margin:24px 0}.color-palette-picker-value{position:relative;top:-3px;margin-left:16px;font-size:14px;font-family:Consolas,sans-serif}.color-palette-picker-validation{position:relative;top:-3px;margin-left:16px;color:#ff4d4f;font-size:13px}.color-palette-picker-validation-dark{margin-left:0}.main-color{text-align:left}.main-color .palette-blue-1{background:#e6f7ff}.main-color .palette-blue-2{background:#bae7ff}.main-color .palette-blue-3{background:#91d5ff}.main-color .palette-blue-4{background:#69c0ff}.main-color .palette-blue-5{background:#40a9ff}.main-color .palette-blue-6{background:#1890ff}.main-color .palette-blue-7{background:#096dd9}.main-color .palette-blue-8{background:#0050b3}.main-color .palette-blue-9{background:#003a8c}.main-color .palette-blue-10{background:#002766}.main-color .palette-purple-1{background:#f9f0ff}.main-color .palette-purple-2{background:#efdbff}.main-color .palette-purple-3{background:#d3adf7}.main-color .palette-purple-4{background:#b37feb}.main-color .palette-purple-5{background:#9254de}.main-color .palette-purple-6{background:#722ed1}.main-color .palette-purple-7{background:#531dab}.main-color .palette-purple-8{background:#391085}.main-color .palette-purple-9{background:#22075e}.main-color .palette-purple-10{background:#120338}.main-color .palette-cyan-1{background:#e6fffb}.main-color .palette-cyan-2{background:#b5f5ec}.main-color .palette-cyan-3{background:#87e8de}.main-color .palette-cyan-4{background:#5cdbd3}.main-color .palette-cyan-5{background:#36cfc9}.main-color .palette-cyan-6{background:#13c2c2}.main-color .palette-cyan-7{background:#08979c}.main-color .palette-cyan-8{background:#006d75}.main-color .palette-cyan-9{background:#00474f}.main-color .palette-cyan-10{background:#002329}.main-color .palette-green-1{background:#f6ffed}.main-color .palette-green-2{background:#d9f7be}.main-color .palette-green-3{background:#b7eb8f}.main-color .palette-green-4{background:#95de64}.main-color .palette-green-5{background:#73d13d}.main-color .palette-green-6{background:#52c41a}.main-color .palette-green-7{background:#389e0d}.main-color .palette-green-8{background:#237804}.main-color .palette-green-9{background:#135200}.main-color .palette-green-10{background:#092b00}.main-color .palette-magenta-1{background:#fff0f6}.main-color .palette-magenta-2{background:#ffd6e7}.main-color .palette-magenta-3{background:#ffadd2}.main-color .palette-magenta-4{background:#ff85c0}.main-color .palette-magenta-5{background:#f759ab}.main-color .palette-magenta-6{background:#eb2f96}.main-color .palette-magenta-7{background:#c41d7f}.main-color .palette-magenta-8{background:#9e1068}.main-color .palette-magenta-9{background:#780650}.main-color .palette-magenta-10{background:#520339}.main-color .palette-red-1{background:#fff1f0}.main-color .palette-red-2{background:#ffccc7}.main-color .palette-red-3{background:#ffa39e}.main-color .palette-red-4{background:#ff7875}.main-color .palette-red-5{background:#ff4d4f}.main-color .palette-red-6{background:#f5222d}.main-color .palette-red-7{background:#cf1322}.main-color .palette-red-8{background:#a8071a}.main-color .palette-red-9{background:#820014}.main-color .palette-red-10{background:#5c0011}.main-color .palette-volcano-1{background:#fff2e8}.main-color .palette-volcano-2{background:#ffd8bf}.main-color .palette-volcano-3{background:#ffbb96}.main-color .palette-volcano-4{background:#ff9c6e}.main-color .palette-volcano-5{background:#ff7a45}.main-color .palette-volcano-6{background:#fa541c}.main-color .palette-volcano-7{background:#d4380d}.main-color .palette-volcano-8{background:#ad2102}.main-color .palette-volcano-9{background:#871400}.main-color .palette-volcano-10{background:#610b00}.main-color .palette-orange-1{background:#fff7e6}.main-color .palette-orange-2{background:#ffe7ba}.main-color .palette-orange-3{background:#ffd591}.main-color .palette-orange-4{background:#ffc069}.main-color .palette-orange-5{background:#ffa940}.main-color .palette-orange-6{background:#fa8c16}.main-color .palette-orange-7{background:#d46b08}.main-color .palette-orange-8{background:#ad4e00}.main-color .palette-orange-9{background:#873800}.main-color .palette-orange-10{background:#612500}.main-color .palette-gold-1{background:#fffbe6}.main-color .palette-gold-2{background:#fff1b8}.main-color .palette-gold-3{background:#ffe58f}.main-color .palette-gold-4{background:#ffd666}.main-color .palette-gold-5{background:#ffc53d}.main-color .palette-gold-6{background:#faad14}.main-color .palette-gold-7{background:#d48806}.main-color .palette-gold-8{background:#ad6800}.main-color .palette-gold-9{background:#874d00}.main-color .palette-gold-10{background:#613400}.main-color .palette-yellow-1{background:#feffe6}.main-color .palette-yellow-2{background:#ffffb8}.main-color .palette-yellow-3{background:#fffb8f}.main-color .palette-yellow-4{background:#fff566}.main-color .palette-yellow-5{background:#ffec3d}.main-color .palette-yellow-6{background:#fadb14}.main-color .palette-yellow-7{background:#d4b106}.main-color .palette-yellow-8{background:#ad8b00}.main-color .palette-yellow-9{background:#876800}.main-color .palette-yellow-10{background:#614700}.main-color .palette-lime-1{background:#fcffe6}.main-color .palette-lime-2{background:#f4ffb8}.main-color .palette-lime-3{background:#eaff8f}.main-color .palette-lime-4{background:#d3f261}.main-color .palette-lime-5{background:#bae637}.main-color .palette-lime-6{background:#a0d911}.main-color .palette-lime-7{background:#7cb305}.main-color .palette-lime-8{background:#5b8c00}.main-color .palette-lime-9{background:#3f6600}.main-color .palette-lime-10{background:#254000}.main-color .palette-geekblue-1{background:#f0f5ff}.main-color .palette-geekblue-2{background:#d6e4ff}.main-color .palette-geekblue-3{background:#adc6ff}.main-color .palette-geekblue-4{background:#85a5ff}.main-color .palette-geekblue-5{background:#597ef7}.main-color .palette-geekblue-6{background:#2f54eb}.main-color .palette-geekblue-7{background:#1d39c4}.main-color .palette-geekblue-8{background:#10239e}.main-color .palette-geekblue-9{background:#061178}.main-color .palette-geekblue-10{background:#030852}.main-color .palette-gray-1{background:#fff}.main-color .palette-gray-2{background:#fafafa}.main-color .palette-gray-3{background:#f5f5f5}.main-color .palette-gray-4{background:#f0f0f0}.main-color .palette-gray-5{background:#d9d9d9}.main-color .palette-gray-6{background:#bfbfbf}.main-color .palette-gray-7{background:#8c8c8c}.main-color .palette-gray-8{background:#595959}.main-color .palette-gray-9{background:#434343}.main-color .palette-gray-10{background:#262626}.main-color .palette-gray-11{background:#1f1f1f}.main-color .palette-gray-12{background:#141414}.main-color .palette-gray-13{background:#000}.main-color-item{position:relative;height:44px;margin-right:4px;padding:0 12px;font-size:14px;font-family:Consolas,sans-serif;line-height:44px;cursor:pointer;transition:all .2s}.main-color-item:first-child{border-radius:4px 4px 0 0}.main-color-item:last-child{border-radius:0 0 4px 4px}.main-color-item:hover{margin-right:-8px;border-radius:0 4px 4px 0}.main-color-item .main-color-text{float:left;transition:all .3s}.main-color-item .main-color-value{position:relative;left:3px;float:right;transform:scale(.85);transform-origin:100% 50%;opacity:0;transition:all .3s}.color-title{margin:0 0 24px;color:#5c6b77;font-weight:500;font-size:22px;text-align:center;text-transform:capitalize}.color-description{display:block;color:#777;font-weight:lighter;font-size:14px}.main-color:hover .main-color-value{left:0;opacity:.7}.color-palette-horizontal{width:100%}.color-palette-horizontal-dark{height:303px;padding:32px 28px;background-color:#141414}.color-palette-horizontal-dark .color-palette-picker{margin-bottom:0}.color-palette-horizontal-dark .color-palette-pick{color:#ffffffa6;text-align:left}.color-palette-horizontal-dark .color-palette-pick-hex{color:#ffffffa6}.color-palette-horizontal .main-color{display:flex}.color-palette-horizontal .main-color-item{position:relative;flex:1;height:86px;margin-right:0;padding:37px 0 0;line-height:normal;text-align:center;border-radius:0}.color-palette-horizontal .main-color-item .main-color-text{float:none}.color-palette-horizontal .main-color-item:hover{height:96px;margin-top:-10px;border-radius:4px 4px 0 0}.color-palette-horizontal .main-color-value{position:absolute;bottom:0;left:0;width:100%;text-align:center;transform-origin:unset}.color-palette-horizontal .main-color:hover .main-color-item{padding-top:8px}.color-palette-horizontal .main-color:hover .main-color-value{bottom:8px;opacity:.7}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td,hr,button,article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{margin:0;padding:0}ul,ol{list-style:none}html.rtl{direction:rtl}body{color:#000000d9;font-size:14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";background:#fff;transition:background 1s cubic-bezier(.075,.82,.165,1)}a{transition:color .3s ease}#ng-content{display:block;height:100%;transition:transform .3s cubic-bezier(.78,.14,.15,.86)}.fetching{position:absolute;top:16px;left:16px;z-index:99}#header,#header #search-box,#header #nav.ant-menu,.main-wrapper,.main-wrapper>.ant-row>.main-menu .main-menu-inner>.ant-menu,.main-wrapper>.ant-row>.main-menu .main-menu-inner>.ant-menu.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title:after,.main-wrapper .main-container,#demo-toc.toc{transition:all .3s cubic-bezier(.78,.14,.15,.86)}.header-link{color:#000000d9}.ant-menu-item-active .header-link{color:#1890ff}#header{position:relative;z-index:10;display:block;max-width:100%;background:#fff;box-shadow:0 2px 8px #f0f1f2}#header>.ant-row>.ant-col h1{margin-bottom:0}#header .menu-row{display:flex;align-items:center;margin:0}#header .menu-row>*{flex:none;margin:0 16px 0 0}#header .menu-row>*:last-child{margin-right:40px}#header .ant-row-rtl .menu-row>*:last-child{margin-right:16px;margin-left:40px}#header .header-button{color:#000000d9;border-color:#d9d9d9}#logo{height:64px;padding-left:40px;overflow:hidden;color:#000000d9;font-size:18px;font-family:Avenir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji",sans-serif;line-height:64px;white-space:nowrap;text-decoration:none}.ant-row-rtl #logo{float:right;padding-right:40px;padding-left:0}#logo img{position:relative;top:-1.5px;height:32px;margin-right:16px}.ant-row-rtl #logo img{margin-right:0;margin-left:16px}#search-box{position:relative;display:flex;flex:auto!important;align-items:center;height:22px;margin:0 auto 0 0!important;padding-left:16px;line-height:22px;white-space:nowrap;border-left:1px solid #f0f0f0;transition:width .5s}.ant-row-rtl #search-box{margin:0 0 0 auto!important;padding-right:16px;padding-left:0;border-right:1px solid #f0f0f0;border-left:none}#search-box>*{flex:auto}#search-box .anticon{position:absolute;top:50%;z-index:1;flex:none;color:#ced4d9;transform:translateY(-50%);pointer-events:none}#search-box input{width:100%;max-width:200px;padding-left:20px;font-size:14px;background:transparent;border:0;box-shadow:none}.ant-row-rtl #search-box input{padding-right:20px;padding-left:11px}#search-box input::placeholder{color:#a3b1bf}#search-box.narrow-mode{flex:none!important;width:30px}#search-box.narrow-mode:hover .anticon{color:#a3b1bf}#search-box.narrow-mode .anticon{right:0;left:auto}.ant-row-rtl #search-box.narrow-mode .anticon{right:auto;left:0}#search-box.narrow-mode input{max-width:none;padding-right:20px;padding-left:11px;cursor:pointer}.ant-row-rtl #search-box.narrow-mode input{padding-right:11px;padding-left:20px}#search-box.narrow-mode.focused{width:500px}#search-box.narrow-mode.focused .anticon{color:#ced4d9}#search-box.narrow-mode.focused input{cursor:text}.algolia-autocomplete .ds-dropdown-menu{border:none;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d}.algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-]{background:#fff;border:none}.algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-] .algolia-docsearch-suggestion{background:#fff}.algolia-autocomplete .ds-dropdown-menu:before{display:none}.algolia-autocomplete .algolia-docsearch-suggestion--title{color:#000000d9}.algolia-autocomplete .algolia-docsearch-suggestion--highlight{color:#1890ff}.nav-phone-icon{position:absolute;top:25px;right:30px;z-index:1;width:16px;height:22px;cursor:pointer}#nav{height:100%;font-size:14px;font-family:Avenir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji",sans-serif;border:0}#nav.ant-menu-horizontal{border-bottom:none}#nav.ant-menu-horizontal>.ant-menu-item,#nav.ant-menu-horizontal>.ant-menu-submenu{min-width:72px;height:64px;line-height:60px;border-top:2px solid transparent}#nav.ant-menu-horizontal>.ant-menu-item:hover,#nav.ant-menu-horizontal>.ant-menu-submenu:hover{border-top:2px solid #1890ff;border-bottom:none}#nav.ant-menu-horizontal>.ant-menu-item:after,#nav.ant-menu-horizontal>.ant-menu-submenu:after{content:none}#nav.ant-menu-horizontal .ant-menu-submenu-title .anticon{margin:0}#nav.ant-menu-horizontal>.ant-menu-submenu-open{border-top:2px solid #1890ff;border-bottom:2px solid transparent}#nav.ant-menu-horizontal>.ant-menu-item-selected{border-top:2px solid #1890ff;border-bottom:2px solid transparent}#nav.ant-menu-horizontal>.ant-menu-item-selected a{color:#1890ff}#nav>.ant-menu-item,#nav>.ant-menu-submenu{text-align:center}.popover-menu{width:300px}.popover-menu .ant-popover-inner-content{padding:0}.popover-menu .ant-popover-inner-content #nav .ant-menu-item,.popover-menu .ant-popover-inner-content #nav .ant-menu-submenu{text-align:left}.popover-menu .ant-popover-inner-content #nav .ant-menu-item-group-title{padding-left:24px}.popover-menu .ant-popover-inner-content #nav .ant-menu-item-group-list{padding:0 16px}.popover-menu .ant-popover-inner-content #nav .ant-menu-item,.popover-menu .ant-popover-inner-content #nav a{color:#333}@media only screen and (max-width: 1200px){#header{text-align:center}#logo{padding-right:0;padding-left:0}#search-box{display:none}}[dir=rtl] .nav-phone-icon{right:inherit;left:30px}.main-wrapper{position:relative;display:block;padding:40px 0 0;background:#fff}.main-container{position:relative;min-height:500px;padding:0 170px 32px 64px;background:#fff}.ant-row-rtl .main-container{padding:0 64px 144px 186px}.main-menu{z-index:1}.main-menu-inner{height:100%;max-height:100vh;overflow:hidden}.main-menu:hover .main-menu-inner{overflow-y:auto}.main-menu>div,.main-menu>div>div{height:100%}.aside-container{min-height:100%;padding-bottom:48px;font-family:Avenir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji",sans-serif}.aside-container.ant-menu-inline .ant-menu-submenu-title h4,.aside-container.ant-menu-inline>.ant-menu-item,.aside-container.ant-menu-inline .ant-menu-item a{overflow:hidden;font-size:14px;text-overflow:ellipsis}.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title{margin-top:16px;margin-bottom:16px;font-size:13px}.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title:after{position:relative;top:12px;display:block;width:calc(100% - 20px);height:1px;background:#f0f0f0;content:""}.aside-container.ant-menu-inline>.ant-menu-item,.aside-container.ant-menu-inline>.ant-menu-submenu>.ant-menu-submenu-title,.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title,.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item,.aside-container.ant-menu-inline.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item{padding-left:40px!important}.ant-row-rtl .aside-container.ant-menu-inline>.ant-menu-item,.ant-row-rtl .aside-container.ant-menu-inline>.ant-menu-submenu>.ant-menu-submenu-title,.ant-row-rtl .aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title,.ant-row-rtl .aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item,.ant-row-rtl .aside-container.ant-menu-inline.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item{padding-right:40px!important;padding-left:16px!important}.aside-container.ant-menu-inline.ant-menu-inline .ant-menu-item-group-title{padding-left:56px}.ant-row-rtl .aside-container.ant-menu-inline.ant-menu-inline .ant-menu-item-group-title{padding-right:56px;padding-left:16px}.aside-container.ant-menu-inline.ant-menu-inline .ant-menu-item-group-list>.ant-menu-item{padding-left:80px!important}.ant-row-rtl .aside-container.ant-menu-inline.ant-menu-inline .ant-menu-item-group-list>.ant-menu-item{padding-right:80px!important;padding-left:16px!important}.aside-container.ant-menu-inline .ant-menu-item-group:first-child .ant-menu-item-group-title{margin-top:0}.aside-container a[disabled]{color:#ccc}.aside-container .menu-item-link-outside{position:relative}.aside-container .menu-item-link-outside .anticon{position:absolute;top:16px;right:-10px;color:#1890ff;font-size:12px;opacity:0;transition:all .3s}.aside-container .menu-item-link-outside:hover .anticon{opacity:1}.aside-container .chinese{margin-left:6px;font-weight:400;font-size:12px;opacity:.67}@media (max-width: 1200px){.main-container{padding-right:48px;padding-left:48px}.ant-row-rtl .main-container{padding-right:24px;padding-left:24px}.main-container .toc-affix{display:none}}.drawer{position:fixed;top:0;z-index:9999;width:100%;height:100%;pointer-events:none}.drawer>*{transition:transform .3s cubic-bezier(.78,.14,.15,.86),opacity .3s cubic-bezier(.78,.14,.15,.86),box-shaow .3s cubic-bezier(.78,.14,.15,.86)}.drawer-mask,.drawer-content-wrapper{position:absolute;height:100%}.drawer-mask{top:0;width:100%;background:#000;opacity:0}.drawer-content-wrapper{left:-60vw;width:60vw;background:#fff;box-shadow:2px 0 10px #00000026}.drawer-content{height:100%;overflow:auto}.drawer-button{position:absolute;top:72px;right:-40px;z-index:0;display:flex;align-items:center;justify-content:center;width:41px;height:40px;font-size:16px;line-height:40px;text-align:center;background:#fff;border-radius:0 4px 4px 0;box-shadow:2px 0 8px #00000026;cursor:pointer;pointer-events:auto}.drawer-open{transform:translate(60vw);transition:transform .3s cubic-bezier(.78,.14,.15,.86) 0s;pointer-events:auto}.drawer-open .drawer-mask{opacity:.3}@media (max-width: 767px){.drawer .ant-menu-inline .ant-menu-item:after,.drawer .ant-menu-vertical .ant-menu-item:after{right:auto;left:0}}.prev-next-nav{width:calc(100% - 128px);margin-right:64px;margin-left:64px;overflow:hidden;font-size:14px;border-top:1px solid #f0f0f0}.prev-next-nav>.prev-page,.prev-next-nav>.next-page{float:left;width:50%;height:72px;line-height:72px;text-decoration:none}.ant-row-rtl .prev-next-nav>.prev-page,.ant-row-rtl .prev-next-nav>.next-page{float:right}.ant-row-rtl .prev-next-nav>.prev-page .footer-nav-icon-before,.ant-row-rtl .prev-next-nav>.next-page .footer-nav-icon-before,.ant-row-rtl .prev-next-nav>.prev-page .footer-nav-icon-after,.ant-row-rtl .prev-next-nav>.next-page .footer-nav-icon-after{transform:rotate(180deg)}.prev-next-nav>a.prev-page .footer-nav-icon-before{position:relative;left:0;margin-right:1em;color:#00000073;font-size:12px;transition:all .3s}.ant-row-rtl .prev-next-nav>a.prev-page .footer-nav-icon-before{right:0;left:auto;margin-right:0;margin-left:1em}.prev-next-nav>a.prev-page .footer-nav-icon-after{display:none}.prev-next-nav>a.prev-page:hover .footer-nav-icon-before{left:-3px;color:#1890ff}.ant-row-rtl .prev-next-nav>a.prev-page:hover .footer-nav-icon-before{right:-3px;left:auto}.prev-next-nav>.next-page{float:right;text-align:right}.ant-row-rtl .prev-next-nav>.next-page{float:left;text-align:left}.prev-next-nav>.next-page .footer-nav-icon-after{position:relative;right:0;margin-left:1em;color:#00000073;font-size:12px;transition:all .3s}.ant-row-rtl .prev-next-nav>.next-page .footer-nav-icon-after{right:auto;left:0;margin-right:1em;margin-left:0}.prev-next-nav>.next-page .footer-nav-icon-before{display:none}.prev-next-nav>.next-page:hover .footer-nav-icon-after{right:-3px;color:#1890ff}.ant-row-rtl .prev-next-nav>.next-page:hover .footer-nav-icon-after{right:auto;left:-3px}.prev-next-nav .chinese{margin-left:.5em}.footer{position:relative;display:block;clear:both;color:#ffffffa6;font-size:14px;background-color:#000;box-shadow:0 1000px 0 1000px #fff}.footer .ant-row{text-align:center}.footer__center{display:inline-block;text-align:left}.footer__center>h2{position:relative;margin:0 auto 24px;font-weight:500;font-size:16px}.footer__center>h2>.title-icon{width:27px;margin-right:16px}.footer__center>h2>.anticon{position:absolute;top:3px;left:-22px;color:#aaa;font-size:16px}.footer__center>div{margin:12px 0}.footer__wrap{position:relative;padding:86px 144px 16px;border-bottom:1px solid rgba(255,255,255,.25)}.footer a{color:#ffffffe6}.footer h2{color:#fff}.footer h2>span{color:#fff}.footer__small .footer__wrap{padding:86px 24px 93px}.theme-color{display:inline-block;padding:4px;vertical-align:middle;background:#fff;border-radius:2px;box-shadow:#0000001a 0 0 0 1px;cursor:pointer}.theme-color-value{width:80px;height:16px;border-radius:2px}.theme-color-content .ant-popover-inner-content{width:200px;padding:0}@media (max-width: 1200px){.footer{text-align:center}.footer .footer__wrap{padding:40px}.footer .footer__wrap .ant-row{padding:0}.footer .footer__wrap .ant-row>div:nth-child(2),.footer .footer__wrap .ant-row>div:nth-child(4){display:none}.footer .footer__wrap .ant-row>div a{font-weight:300}.footer .footer__center{text-align:center}.footer h2{margin-top:16px}}.theme-btn{position:fixed;right:32px;bottom:102px;z-index:2147483640;display:flex;flex-direction:column;cursor:pointer}.theme-btn-tooltip .ant-tooltip-inner{min-width:100px}.theme-btn>div{display:block}.theme-btn-active{width:44px;height:44px;color:#1890ff;font-size:22px;line-height:44px}.theme-btn .theme-btn-avatar{color:#000;background-color:#fff;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d;transition:color .3s}.theme-btn .theme-btn-avatar:hover{color:#1890ff}.toc-affix{position:absolute;top:8px;right:20px}.toc-affix .ant-anchor-ink-ball.visible{display:none}.toc-affix .ant-anchor .ant-anchor-link-active{position:relative;z-index:2;margin-left:-2px;border-left:2px solid #1890ff}.toc-affix .ant-anchor-link-title{max-width:120px}.ant-row-rtl .toc-affix{right:auto;left:20px}@media (max-width: 767px){.toc-affix{display:none}}.markdown{color:#000000d9;font-size:14px;line-height:2}.highlight{line-height:1.5}.markdown img{max-width:calc(100% - 32px)}.markdown p>img{margin:34px 0;box-shadow:0 8px 20px #8fa8bf59}.markdown p>img.markdown-inline-image{margin:0;box-shadow:none}.markdown h1{margin-top:8px;margin-bottom:20px;color:#000000d9;font-weight:500;font-size:30px;font-family:Avenir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji",sans-serif;line-height:38px}.markdown h1 .subtitle{margin-left:12px}.ant-row-rtl .markdown h1 .subtitle{margin-right:12px;margin-left:0}.markdown h2{font-size:24px;line-height:32px}.markdown h2,.markdown h3,.markdown h4,.markdown h5,.markdown h6{clear:both;margin:1.6em 0 .6em;color:#000000d9;font-weight:500;font-family:Avenir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji",sans-serif}.markdown h3{font-size:18px}.markdown h4{font-size:16px}.markdown h5{font-size:14px}.markdown h6{font-size:12px}.markdown hr{clear:both;height:1px;margin:56px 0;background:#f0f0f0;border:0}.markdown p,.markdown pre{margin:1em 0}.markdown ul>li{margin-left:20px;padding-left:4px;list-style-type:circle}.ant-row-rtl .markdown ul>li{margin-right:20px;margin-left:0;padding-right:4px;padding-left:0}.markdown ul>li:empty{display:none}.markdown ol>li{margin-left:20px;padding-left:4px;list-style-type:decimal}.ant-row-rtl .markdown ol>li{margin-right:20px;margin-left:0;padding-right:4px;padding-left:0}.markdown ul>li>p,.markdown ol>li>p{margin:.2em 0}.markdown code{margin:0 1px;padding:.2em .4em;font-size:.9em;background:#f2f4f5;border:1px solid #f0f0f0;border-radius:3px}.markdown pre{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;background:#f2f4f5;border-radius:2px}.markdown pre code{margin:0;padding:0;overflow:auto;color:#000000d9;font-size:13px;background:#f5f5f5;border:none}.markdown strong,.markdown b{font-weight:500}.markdown>table{width:100%;margin:8px 0 16px;table-layout:auto;empty-cells:show;border:1px solid #f0f0f0;border-collapse:collapse;border-spacing:0}.markdown>table tbody tr{transition:all .3s}.markdown>table tbody tr:hover{background:rgba(60,90,100,.04)}.markdown>table th:nth-child(1),.markdown>table th:nth-child(2){white-space:nowrap;word-break:keep-all}.markdown>table th{color:#5c6b77;font-weight:500;background:rgba(0,0,0,.02)}.markdown>table th,.markdown>table td{padding:16px 24px;text-align:left;border:1px solid #f0f0f0}.markdown blockquote{margin:1em 0;padding-left:.8em;color:#00000073;font-size:90%;border-left:4px solid #f0f0f0}.ant-row-rtl .markdown blockquote{padding-right:.8em;padding-left:0;border-right:4px solid #f0f0f0;border-left:none}.markdown blockquote p{margin:0}.markdown .anchor{margin-left:8px;opacity:0;transition:opacity .3s}.ant-row-rtl .markdown .anchor{margin-right:8px;margin-left:0}.markdown .waiting{color:#ccc;cursor:not-allowed}.markdown a.edit-button{display:inline-block;margin-left:8px;text-decoration:none}.ant-row-rtl .markdown a.edit-button{margin-right:8px;margin-left:0}.markdown a.edit-button i{color:#00000073}.markdown a.edit-button i:hover{color:#1890ff}.markdown a.edit-button .anticon{display:block;font-size:16px}.markdown h1:hover .anchor,.markdown h2:hover .anchor,.markdown h3:hover .anchor,.markdown h4:hover .anchor,.markdown h5:hover .anchor,.markdown h6:hover .anchor{display:inline-block;opacity:1}.markdown>br,.markdown>p>br{clear:both}.markdown.api-container{overflow-x:auto}.markdown.api-container table{min-width:720px;margin:2em 0;font-size:13px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;line-height:1.5715;table-layout:auto;border:1px solid #f0f0f0}.markdown.api-container table th,.markdown.api-container table td{padding:12px;border-color:#f0f0f0;border-width:1px 0}.markdown.api-container table th{padding-top:14px;white-space:nowrap;border-width:0 0 2px}.markdown.api-container table th:nth-child(2){white-space:normal;word-break:normal}.markdown.api-container table th:nth-child(4),.markdown.api-container table th:nth-child(5){white-space:nowrap;word-break:keep-all}.markdown.api-container table td:first-child{color:#595959;font-weight:600}.markdown.api-container table td:nth-child(3){width:22%;color:#c41d7f;font-size:13px;word-break:break-all}.markdown.api-container table td:nth-child(4){font-size:13px}.markdown.api-container hr{margin:12px 0}.grid-demo .demo-row,[id^=components-grid-demo-] .demo-row,.grid-demo .code-box-demo .demo-row,[id^=components-grid-demo-] .code-box-demo .demo-row{margin-bottom:8px;overflow:hidden;background-image:linear-gradient(90deg,#f5f5f5 4.16666667%,transparent 4.16666667%,transparent 8.33333333%,#f5f5f5 8.33333333%,#f5f5f5 12.5%,transparent 12.5%,transparent 16.66666667%,#f5f5f5 16.66666667%,#f5f5f5 20.83333333%,transparent 20.83333333%,transparent 25%,#f5f5f5 25%,#f5f5f5 29.16666667%,transparent 29.16666667%,transparent 33.33333333%,#f5f5f5 33.33333333%,#f5f5f5 37.5%,transparent 37.5%,transparent 41.66666667%,#f5f5f5 41.66666667%,#f5f5f5 45.83333333%,transparent 45.83333333%,transparent 50%,#f5f5f5 50%,#f5f5f5 54.16666667%,transparent 54.16666667%,transparent 58.33333333%,#f5f5f5 58.33333333%,#f5f5f5 62.5%,transparent 62.5%,transparent 66.66666667%,#f5f5f5 66.66666667%,#f5f5f5 70.83333333%,transparent 70.83333333%,transparent 75%,#f5f5f5 75%,#f5f5f5 79.16666667%,transparent 79.16666667%,transparent 83.33333333%,#f5f5f5 83.33333333%,#f5f5f5 87.5%,transparent 87.5%,transparent 91.66666667%,#f5f5f5 91.66666667%,#f5f5f5 95.83333333%,transparent 95.83333333%)}.grid-demo .ant-row>div,[id^=components-grid-demo-] .ant-row>div,.grid-demo .code-box-demo .ant-row>div,[id^=components-grid-demo-] .code-box-demo .ant-row>div{min-height:30px;margin-top:8px;margin-bottom:8px;color:#fff;text-align:center;border-radius:0}.grid-demo .code-box-demo .ant-row>div:not(.gutter-row),[id^=components-grid-demo-] .code-box-demo .ant-row>div:not(.gutter-row){padding:16px 0;background:#0092ff}.grid-demo .code-box-demo .ant-row>div:not(.gutter-row):nth-child(odd),[id^=components-grid-demo-] .code-box-demo .ant-row>div:not(.gutter-row):nth-child(odd){background:rgba(0,146,255,.75)}.grid-demo .ant-row .demo-col,[id^=components-grid-demo-] .ant-row .demo-col,.grid-demo .code-box-demo .ant-row .demo-col,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col{margin-top:0;margin-bottom:0;padding:30px 0;color:#fff;font-size:18px;text-align:center;border:none}.grid-demo .ant-row .demo-col-1,[id^=components-grid-demo-] .ant-row .demo-col-1{background:rgba(0,146,255,.75)}.grid-demo .ant-row .demo-col-2,[id^=components-grid-demo-] .ant-row .demo-col-2,.grid-demo .code-box-demo .ant-row .demo-col-2,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-2{background:rgba(0,146,255,.5)}.grid-demo .ant-row .demo-col-3,[id^=components-grid-demo-] .ant-row .demo-col-3,.grid-demo .code-box-demo .ant-row .demo-col-3,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-3{color:#999;background:rgba(255,255,255,.2)}.grid-demo .ant-row .demo-col-4,[id^=components-grid-demo-] .ant-row .demo-col-4,.grid-demo .code-box-demo .ant-row .demo-col-4,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-4{background:rgba(0,146,255,.6)}.grid-demo .ant-row .demo-col-5,[id^=components-grid-demo-] .ant-row .demo-col-5,.grid-demo .code-box-demo .ant-row .demo-col-5,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-5{color:#999;background:rgba(255,255,255,.2)}.grid-demo .code-box-demo .height-100,[id^=components-grid-demo-] .code-box-demo .height-100{height:100px;line-height:100px}.grid-demo .code-box-demo .height-50,[id^=components-grid-demo-] .code-box-demo .height-50{height:50px;line-height:50px}.grid-demo .code-box-demo .height-120,[id^=components-grid-demo-] .code-box-demo .height-120{height:120px;line-height:120px}.grid-demo .code-box-demo .height-80,[id^=components-grid-demo-] .code-box-demo .height-80{height:80px;line-height:80px}[id=components-grid-demo-playground]>.code-box-demo .ant-row>div,[id=components-grid-demo-gutter]>.code-box-demo .ant-row>div{margin-top:0;margin-bottom:0}.markdown ul.ant-timeline{line-height:2}.markdown ul.ant-timeline li.ant-timeline-item{margin:0;padding:0 0 30px;list-style:none}.markdown ul.ant-timeline li.ant-timeline-item .ant-timeline-item-content{position:relative;top:-14px;padding-left:32px;font-size:14px}.markdown ul.ant-timeline li.ant-timeline-item .ant-timeline-item-content>h2{margin-top:0;padding-top:4px}.markdown ul.ant-timeline li.ant-timeline-item:first-child{margin-top:40px}code[class*=hljs],pre[class*=hljs]{color:#000;line-height:1.5;direction:ltr;white-space:pre;text-align:left;text-shadow:0 1px white;word-wrap:normal;word-break:normal;word-spacing:normal;tab-size:4;-webkit-hyphens:none;hyphens:none;background:none}pre[class*=hljs]::selection{text-shadow:none;background:#b3d4fc}pre[class*=hljs]::selection,pre[class*=hljs] ::selection,code[class*=hljs]::selection,code[class*=hljs] ::selection{text-shadow:none;background:#b3d4fc}@media print{code[class*=hljs],pre[class*=hljs]{text-shadow:none}}pre[class*=hljs]{margin:1.2em 0;padding:1em;overflow:auto}:not(pre)>code[class*=hljs],pre[class*=hljs]{background:#f7f7f7}:not(pre)>code[class*=hljs]{padding:.1em;white-space:normal;border-radius:.3em}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:#708090}.token.punctuation{color:#999}.namespace{opacity:.7}.token.property,.token.tag,.token.boolean,.token.number,.token.constant,.token.symbol,.token.deleted{color:#bb0606}.token.selector,.token.attr-name,.token.string,.token.char,.token.builtin,.token.inserted,.token.operator,.token.entity,.token.url,.hljscss .token.string,.style .token.string{color:#690}.token.atrule,.token.attr-value,.token.keyword{color:#07a}.token.function{color:#dd4a68}.token.regex,.token.important,.token.variable{color:#e90}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.hljs-comment,.hljs-quote{color:#8e908c}.hljs-variable,.hljs-template-variable,.hljs-tag,.hljs-name,.hljs-selector-id,.hljs-selector-class,.hljs-regexp,.hljs-deletion{color:#bb0606}.hljs-number,.hljs-built_in,.hljs-builtin-name,.hljs-literal,.hljs-type,.hljs-params,.hljs-meta,.hljs-link{color:#f5871f}.hljs-attribute{color:#eab700}.hljs-string,.hljs-symbol,.hljs-bullet,.hljs-addition{color:#690}.hljs-title,.hljs-section{color:#dd4a68}.hljs-keyword,.hljs-selector-tag{color:#07a}.hljs{display:block;padding:.5em;overflow-x:auto;color:#4d4d4c;background:white}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.highlight-wrapper:hover .code-box-code-copy,.highlight-wrapper:hover .code-box-codepen,.highlight-wrapper:hover .code-box-riddle{opacity:.66}.highlight{position:relative;line-height:1.5}.code-box-code-copy.anticon-check{color:#00a854!important;font-weight:700}.code-box{position:relative;display:inline-block;width:100%;margin:0 0 16px;border:1px solid #f0f0f0;border-radius:2px;transition:all .2s}.code-box .code-box-title,.code-box .code-box-title a{color:#000000d9;background:#fff}.code-box .code-box-description p{color:#000000d9}.code-box a.edit-button .anticon{color:inherit}.code-box a.edit-button .anticon:hover{color:#000000bf}.code-box,.code-box .code-box-demo{background-color:#fff}.code-box p{margin:0}.code-box:target{z-index:10;border:1px solid #1890ff}.code-box-expand-trigger{position:relative;margin-left:12px;color:#3b4357;font-size:20px;cursor:pointer;opacity:.75;transition:all .3s}.code-box-expand-trigger:hover{opacity:1}.ant-row-rtl .code-box-expand-trigger{margin-right:8px;margin-left:0}.code-box-title{position:absolute;top:-14px;margin-left:16px;padding:1px 8px;color:#777;background:#fff;border-radius:2px 2px 0 0;transition:background-color .4s}.ant-row-rtl .code-box-title{margin-right:16px;margin-left:0;border-radius:2px 0 0 2px}.code-box-title a,.code-box-title a:hover{color:#000000d9;font-weight:500;font-size:14px}.code-box-title .edit-button .anticon{font-size:12px}.code-box-description{padding:18px 24px 12px}.code-box .edit-button{position:absolute;top:7px;right:-16px;padding-right:6px;font-size:12px;text-decoration:none;background:inherit;transform:scale(.9)}.ant-row-rtl .code-box .edit-button{right:auto;left:-21px;padding-right:0;padding-left:6px}.code-box-demo{padding:42px 24px 50px;color:#000000d9;border-bottom:1px solid #f0f0f0}.code-box iframe{width:100%;border:0}.code-box-meta.markdown{position:relative;width:100%;font-size:14px;border-radius:0 0 2px 2px;transition:background-color .4s}.code-box-meta blockquote{margin:0}.code-box-meta h4,section.code-box-meta p{margin:0}.code-box-meta>p{width:100%;margin:.5em 0;padding-right:25px;font-size:12px;word-break:break-word}.ant-row-rtl .code-box-meta>p{padding-right:0;padding-left:25px}.code-box.expand .code-box-meta{border-bottom:1px dashed #f0f0f0;border-radius:0}.code-box .code-expand-icon>span{display:flex}.code-box .code-expand-icon-show,.code-box .code-expand-icon-hide{width:16px;max-width:100%;height:16px;cursor:pointer;transition:all .4s}.code-box .code-expand-icon-show{opacity:.55;pointer-events:auto}.code-box .code-expand-icon-show:hover{opacity:1}.code-box .code-expand-icon-hide{display:none;pointer-events:none}.code-box .code-expand-icon.ant-tooltip-open .code-expand-icon-show{opacity:1}.code-box .highlight{position:relative}.code-box .highlight-wrapper{display:none;overflow:auto;border-radius:0 0 2px 2px}.code-box .highlight-wrapper-expand{display:block}.code-box .highlight pre{margin:0;padding:0;background:#fff}.code-box .highlight:not(:first-child){border-top:1px dashed #f0f0f0}.code-box-actions{display:flex;align-items:center;justify-content:center;padding:12px;text-align:center;border-top:1px dashed #f0f0f0;opacity:.7;transition:opacity .3s}.code-box-actions:hover{opacity:1}.code-box-actions>i{display:flex;margin-left:16px}.ant-row-rtl .code-box-actions>i{margin-right:16px;margin-left:0}.code-box-actions>i:first-child{margin-left:0}.ant-row-rtl .code-box-actions>i:first-child{margin-right:0}.code-box-code-icon{color:#00000073;cursor:pointer;transition:all .24s}.code-box-code-icon:hover{color:#00000073}.code-box-code-icon.anticon-check{color:#52c41a!important;font-weight:700}.code-box pre{width:auto;margin:0}.code-box pre code{display:block;padding:16px 32px;color:#000000d9;font-size:14px;line-height:2;background:#fff;border:none;border-radius:2px}.browser-mockup{position:relative;font-size:14px;border-top:2em solid rgba(230,230,230,.7);border-radius:3px 3px 0 0;box-shadow:0 .1em .5em #00000047}.browser-mockup:before{position:absolute;top:-1.25em;left:1em;display:block;width:.5em;height:.5em;background-color:#f44;border-radius:50%;box-shadow:0 0 0 2px #f44,1.5em 0 0 2px #9b3,3em 0 0 2px #fb5;content:""}.browser-mockup:after{position:absolute;top:-2em;left:5.5em;display:block;width:20%;height:0;border-right:.8em solid transparent;border-bottom:2em solid white;border-left:.8em solid transparent;content:""}.browser-mockup .browser-scroll{height:100%;overflow:auto;background:#f5f5f5}app-root,app-docs,.menu-site nz-dropdown,.menu-site .ant-dropdown-trigger{display:block}.ant-btn+.ant-btn{margin-left:8px}.ant-menu-item{outline:none}#page-404{position:fixed;inset:0;z-index:100;width:100%;height:100%;background-image:url(https://os.alipayobjects.com/rmsportal/NOAjOBbnYCrNzrW.jpg);background-repeat:no-repeat;background-position:center;background-size:100%;background-attachment:fixed}#page-404 section{position:absolute;top:48%;left:55%;margin:-103px 0 0 -120px;text-align:center}#page-404 h1{color:#1890ff;font-weight:500;font-size:120px}#page-404 .links{color:#000000d9;font-size:18px}#page-404 .links a{margin-left:8px}.deprecated{position:relative}.deprecated:before{color:#fa541c;font-style:normal;cursor:pointer;content:"D"}h2,h3,h4,h5{position:relative}h2 .lake-link,h3 .lake-link,h4 .lake-link,h5 .lake-link{position:absolute;top:4px;left:-30px;display:none;align-items:center;justify-content:center;width:30px;height:24px}h2 .lake-link>i,h3 .lake-link>i,h4 .lake-link>i,h5 .lake-link>i{display:inline-block;width:18px;height:18px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1024 1024'%3E%3Cpath fill='rgba(0, 0, 0, 0.45)' d='M574 665.4a8.03 8.03 0 0 0-11.3 0L446.5 781.6c-53.8 53.8-144.6 59.5-204 0-59.5-59.5-53.8-150.2 0-204l116.2-116.2c3.1-3.1 3.1-8.2 0-11.3l-39.8-39.8a8.03 8.03 0 0 0-11.3 0L191.4 526.5c-84.6 84.6-84.6 221.5 0 306s221.5 84.6 306 0l116.2-116.2c3.1-3.1 3.1-8.2 0-11.3L574 665.4zm258.6-474c-84.6-84.6-221.5-84.6-306 0L410.3 307.6a8.03 8.03 0 0 0 0 11.3l39.7 39.7c3.1 3.1 8.2 3.1 11.3 0l116.2-116.2c53.8-53.8 144.6-59.5 204 0 59.5 59.5 53.8 150.2 0 204L665.3 562.6a8.03 8.03 0 0 0 0 11.3l39.8 39.8c3.1 3.1 8.2 3.1 11.3 0l116.2-116.2c84.5-84.6 84.5-221.5 0-306.1zM610.1 372.3a8.03 8.03 0 0 0-11.3 0L372.3 598.7a8.03 8.03 0 0 0 0 11.3l39.6 39.6c3.1 3.1 8.2 3.1 11.3 0l226.4-226.4c3.1-3.1 3.1-8.2 0-11.3l-39.5-39.6z'/%3E%3C/svg%3E%0A")}h2:hover .lake-link,h3:hover .lake-link,h4:hover .lake-link,h5:hover .lake-link{display:flex}[dir=rtl] h2 .lake-link,[dir=rtl] h3 .lake-link,[dir=rtl] h4 .lake-link,[dir=rtl] h5 .lake-link{right:-30px;left:inherit}.index-page{color:#697b8c}.index-page #header{width:100%;max-width:1280px;margin:20px auto 0;padding:0 24px;background:0 0;box-shadow:none}.index-page #nav.ant-menu-horizontal>.ant-menu-item-selected{border-top:none}.index-page .page{position:relative;width:100%;max-width:1200px;margin:auto;padding:0 24px}.index-page .page-wrapper{position:relative;overflow:inherit;color:#314659;font-family:Avenir,Chinese Quote,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;font-variant:tabular-nums}.index-page .page h2{padding:80px 0 40px;color:#314659;font-weight:400;font-size:38px;line-height:46px;text-align:center}.index-page .page-banner{position:relative;display:flex;align-items:center;justify-content:space-between;width:100%;max-width:1200px;height:520px;margin:auto;padding:0 24px}.index-page .page-banner__slogan{width:54%;min-width:420px;max-width:560px;min-height:336px;color:#0d1a26}.index-page .page-banner__slogan h1{margin:12px 0;font-size:54px;font-family:Futura,Helvetica Neue For Number,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif}.index-page .page-banner__slogan p{font-size:20px}.index-page .page-banner__slogan .ant-btn{min-width:110px;height:40px;margin-right:16px;font-size:16px;border-radius:20px}.index-page .page-banner__slogan-btn{display:flex;align-items:center;margin-top:64px;line-height:40px}.index-page .page-banner__slogan-btn .github{display:flex}.index-page .page-banner__img{position:absolute;right:0;bottom:0;width:46%;max-width:482px;height:420px;overflow:hidden}.index-page .page-banner__img img{max-height:100%;border-radius:8px}.index-page .page-feature{position:relative;padding-bottom:80px;color:#fff}.index-page .page-feature__bg{position:absolute;inset:0;margin:0;background:#49a9ee;transform:skewY(-4.5deg)}.index-page .page-feature__bg-bottom{position:absolute;right:0;bottom:0;left:0;height:200px;background:#49a9ee}.index-page .page-feature h2,.index-page .page-feature h3{color:#fff}.index-page .page-feature h2{padding-top:100px}.index-page .page-feature h3{font-size:18px}.index-page .page-feature__item{display:flex;height:100px;margin-bottom:56px}.index-page .page-feature .anticon{margin-right:16px;padding-top:8px;font-size:36px}.index-page .page-theme{margin-bottom:48px;overflow:hidden;background:#fff}.index-page .page-theme__item{display:block;margin-bottom:32px;color:#314659;text-align:center}.index-page .page-theme__item:hover{color:#49a9ee}.index-page .page-theme__item img{max-width:80%}.index-page .page-theme__item h3,.index-page .page-theme__item p{margin-top:16px}@media (max-width: 991px){.index-page #logo{padding-left:0}.index-page .page-banner__slogan{width:100%;min-width:100%;max-width:100%;text-align:center}.index-page .page-banner__slogan-btn{flex-wrap:wrap;justify-content:center}.index-page .page-banner__slogan-btn>a,.index-page .page-banner__slogan-btn>github-button{margin-bottom:16px}.index-page .page-banner__img{display:none}.index-page .page-feature__item{flex-direction:column;text-align:center}.index-page .page-feature__item .anticon{margin:0 0 16px}}[dir=rtl] .index-page .page-banner__slogan .ant-btn{margin-right:0;margin-left:16px}[dir=rtl] .index-page .page-banner__img{right:initial;left:0}[dir=rtl] .index-page .page-feature__bg{transform:skewY(4.5deg)}[dir=rtl] .index-page .page-feature .anticon{margin-right:0;margin-left:16px}@media (max-width: 991px){[dir=rtl] .index-page #logo{float:left}}#header .ant-row-rtl github-button .gh-count{display:none!important}.copy-import-module{padding:2px 6px;color:#fff;font-size:12px;background:#ff4d4f;border-radius:34px;cursor:pointer}.menu-deprecated .ant-badge{color:#ff4d4f;text-decoration:line-through;opacity:.5}[data-theme=dark] input:-webkit-autofill,[data-theme=dark] input:-webkit-autofill:hover,[data-theme=dark] input:-webkit-autofill:focus,[data-theme=dark] textarea:-webkit-autofill,[data-theme=dark] textarea:-webkit-autofill:hover,[data-theme=dark] textarea:-webkit-autofill:focus,[data-theme=dark] select:-webkit-autofill,[data-theme=dark] select:-webkit-autofill:hover,[data-theme=dark] select:-webkit-autofill:focus{border:1px solid #d9d9d9;-webkit-text-fill-color:rgba(0,0,0,.85);box-shadow:none;-webkit-transition:background-color 5000s ease-in-out 0s;transition:background-color 5000s ease-in-out 0s}[data-theme=dark] #header{box-shadow:0 2px 8px #000000a6}[data-theme=dark] #search-box input::placeholder{color:#ffffff4d}[data-theme=dark] .drawer-button{box-shadow:0 2px 8px #000000a6}@media (max-width: 767px){[data-theme=dark] .header-menu .menu-site{background:transparent}}[data-theme=dark] .toc-affix .ant-affix{background:#fff}[data-theme=dark] :not(pre)>code[class*=language-],[data-theme=dark] pre[class*=language-]{color:#ffffffa6;background:#262626}[data-theme=dark] .code-box{border:1px solid #f0f0f0}[data-theme=dark] .code-box .markdown pre{margin:.5em 0;padding:6px 12px}[data-theme=dark] .code-box .markdown pre code{margin:0;background:#262626}[data-theme=dark] .code-box-debug{border-color:#d3adf7}[data-theme=dark] .code-box-expand-trigger{position:relative;margin-left:12px;color:#fff;font-size:20px;cursor:pointer;opacity:.45;transition:all .3s}[data-theme=dark] .code-box-expand-trigger:hover{opacity:.65}[data-theme=dark] .code-box-demo{border-bottom:1px solid #f0f0f0}[data-theme=dark] .code-box-codepen{background:transparent url(https://gw.alipayobjects.com/zos/antfincdn/1B3MOCiI5F/OtZslpOjYXijshDERXwc.svg) center / 14px no-repeat}[data-theme=dark] .code-box-riddle{background:transparent url(https://gw.alipayobjects.com/zos/antfincdn/NByOhhT9rO/DlHbxMCyeuyOrqOdbgik.svg) center / 14px no-repeat}[data-theme=dark] .code-box-codesandbox{background:transparent url(https://gw.alipayobjects.com/zos/antfincdn/hNEf2p1ZnS/aaYmtdDyHSCkXyLZVgGK.svg) center / 14px no-repeat}[data-theme=dark] .code-box .highlight pre{background:#fff}[data-theme=dark] ul.anticons-list li{color:#acacac}[data-theme=dark] ul.anticons-list li.TwoTone:hover{background-color:#15395b}[data-theme=dark] ul.anticons-list li:hover .anticon{color:#fff}[data-theme=dark] .markdown code,[data-theme=dark] .markdown pre,[data-theme=dark] .markdown pre code,[data-theme=dark] .markdown.api-container table tbody tr:hover{background:#262626}[data-theme=dark] .markdown code{background:rgba(255,255,255,.08)}[data-theme=dark] .prev-next-nav>a.prev-page .footer-nav-icon-before{color:#ffffff73}[data-theme=dark] .prev-next-nav>a.prev-page:hover .footer-nav-icon-before{left:-3px;color:#1890ff}[data-theme=dark] .prev-next-nav>.next-page .footer-nav-icon-after{color:#ffffff73}[data-theme=dark] .prev-next-nav>.next-page:hover .footer-nav-icon-after{right:-3px;color:#1890ff}[data-theme=dark] .grid-demo .demo-row,[data-theme=dark] [id^=components-grid-demo-] .demo-row,[data-theme=dark] .grid-demo .code-box-demo .demo-row,[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .demo-row{background-image:linear-gradient(90deg,#1d1d1d 4.16666667%,transparent 4.16666667%,transparent 8.33333333%,#1d1d1d 8.33333333%,#1d1d1d 12.5%,transparent 12.5%,transparent 16.66666667%,#1d1d1d 16.66666667%,#1d1d1d 20.83333333%,transparent 20.83333333%,transparent 25%,#1d1d1d 25%,#1d1d1d 29.16666667%,transparent 29.16666667%,transparent 33.33333333%,#1d1d1d 33.33333333%,#1d1d1d 37.5%,transparent 37.5%,transparent 41.66666667%,#1d1d1d 41.66666667%,#1d1d1d 45.83333333%,transparent 45.83333333%,transparent 50%,#1d1d1d 50%,#1d1d1d 54.16666667%,transparent 54.16666667%,transparent 58.33333333%,#1d1d1d 58.33333333%,#1d1d1d 62.5%,transparent 62.5%,transparent 66.66666667%,#1d1d1d 66.66666667%,#1d1d1d 70.83333333%,transparent 70.83333333%,transparent 75%,#1d1d1d 75%,#1d1d1d 79.16666667%,transparent 79.16666667%,transparent 83.33333333%,#1d1d1d 83.33333333%,#1d1d1d 87.5%,transparent 87.5%,transparent 91.66666667%,#1d1d1d 91.66666667%,#1d1d1d 95.83333333%,transparent 95.83333333%)}[data-theme=dark] .grid-demo .code-box-demo .ant-row>div:not(.gutter-row),[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row>div:not(.gutter-row){padding:16px 0;background:#028ac8}[data-theme=dark] .grid-demo .code-box-demo .ant-row>div:not(.gutter-row):nth-child(odd),[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row>div:not(.gutter-row):nth-child(odd){background:rgba(0,136,198,.7)}[data-theme=dark] .grid-demo .ant-row .demo-col,[data-theme=dark] [id^=components-grid-demo-] .ant-row .demo-col,[data-theme=dark] .grid-demo .code-box-demo .ant-row .demo-col,[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row .demo-col{margin-top:0;margin-bottom:0;padding:30px 0;color:#000;font-size:18px;text-align:center;border:none}[data-theme=dark] .grid-demo .ant-row .demo-col-1,[data-theme=dark] [id^=components-grid-demo-] .ant-row .demo-col-1{background:rgba(0,136,198,.7)}[data-theme=dark] .grid-demo .ant-row .demo-col-3,[data-theme=dark] [id^=components-grid-demo-] .ant-row .demo-col-3,[data-theme=dark] .grid-demo .code-box-demo .ant-row .demo-col-3,[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-3,[data-theme=dark] .grid-demo .ant-row .demo-col-5,[data-theme=dark] [id^=components-grid-demo-] .ant-row .demo-col-5,[data-theme=dark] .grid-demo .code-box-demo .ant-row .demo-col-5,[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-5{color:#00000073;background:unset}[data-theme=dark] .markdown>table th{color:#ffffffa6;background:#1d1d1d}[data-theme=dark] .copied-code{background:rgba(255,255,255,.08)}[data-theme=dark] .browser-mockup.with-url:after{background-color:#fff}[data-theme=dark] .browser-mockup{border-top:2em solid #262626}[data-theme=dark] .browser-mockup:before{background-color:#fb4742;box-shadow:0 0 0 2px #fb4742,1.5em 0 0 2px #99bc2e,3em 0 0 2px #ffba5a}[data-theme=dark] .browser-mockup:after{border-bottom:2em solid #fff}[data-theme=dark] .browser-scroll{background:#262626}[data-theme=dark] .algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-],[data-theme=dark] .algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-] .algolia-docsearch-suggestion{background:#fff}[data-theme=dark] .algolia-autocomplete .ds-dropdown-menu .ds-suggestion.ds-cursor .algolia-docsearch-suggestion:not(.suggestion-layout-simple) .algolia-docsearch-suggestion--content{background-color:#ffffff14}[data-theme=dark] .algolia-autocomplete .algolia-docsearch-suggestion--category-header{color:#ffffffa6;border-bottom:1px solid #f0f0f0}[data-theme=dark] .algolia-autocomplete .algolia-docsearch-suggestion--subcategory-column:before{background:#f0f0f0}[data-theme=dark] .algolia-autocomplete .algolia-docsearch-suggestion--content:before{background:#f0f0f0}[data-theme=dark] code[class*=hljs],[data-theme=dark] pre[class*=hljs]{text-shadow:none}[data-theme=dark] .hljs-comment,[data-theme=dark] .hljs-quote{color:#b6b18b}[data-theme=dark] .hljs-variable,[data-theme=dark] .hljs-template-variable,[data-theme=dark] .hljs-tag,[data-theme=dark] .hljs-name,[data-theme=dark] .hljs-selector-id,[data-theme=dark] .hljs-selector-class,[data-theme=dark] .hljs-regexp,[data-theme=dark] .hljs-deletion{color:#eb3c54}[data-theme=dark] .hljs-number,[data-theme=dark] .hljs-built_in,[data-theme=dark] .hljs-builtin-name,[data-theme=dark] .hljs-literal,[data-theme=dark] .hljs-type,[data-theme=dark] .hljs-params,[data-theme=dark] .hljs-meta,[data-theme=dark] .hljs-link{color:#e7ce56}[data-theme=dark] .hljs-attribute{color:#ee7c2b}[data-theme=dark] .hljs-string,[data-theme=dark] .hljs-symbol,[data-theme=dark] .hljs-bullet,[data-theme=dark] .hljs-addition{color:#1890ff}[data-theme=dark] .hljs-title,[data-theme=dark] .hljs-section{color:#78bb65}[data-theme=dark] .hljs-keyword,[data-theme=dark] .hljs-selector-tag{color:#b45ea4}[data-theme=dark] .hljs{display:block;padding:.5em;overflow-x:auto;color:#c0c5ce;background:#1c1d21}[data-theme=dark] .hljs-emphasis{font-style:italic}[data-theme=dark] .hljs-strong{font-weight:700}[data-theme=dark].index-page{background:#fff}[data-theme=dark].index-page #header{box-shadow:none}[data-theme=dark].index-page .page-banner__slogan{color:#000000d9}.ant-affix{scrollbar-color:rgba(0,0,0,.3) #6e6e6e;scrollbar-width:thin}.ant-affix::-webkit-scrollbar{width:6px;height:6px}.ant-affix::-webkit-scrollbar-track{box-shadow:inset 0 0 6px #0000004d}.ant-affix::-webkit-scrollbar-thumb{background-color:#6e6e6e;outline:1px solid #333} +[data-aos][data-aos][data-aos-duration="50"],body[data-aos-duration="50"] [data-aos]{transition-duration:50ms}[data-aos][data-aos][data-aos-delay="50"],body[data-aos-delay="50"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="50"].aos-animate,body[data-aos-delay="50"] [data-aos].aos-animate{transition-delay:50ms}[data-aos][data-aos][data-aos-duration="100"],body[data-aos-duration="100"] [data-aos]{transition-duration:.1s}[data-aos][data-aos][data-aos-delay="100"],body[data-aos-delay="100"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="100"].aos-animate,body[data-aos-delay="100"] [data-aos].aos-animate{transition-delay:.1s}[data-aos][data-aos][data-aos-duration="150"],body[data-aos-duration="150"] [data-aos]{transition-duration:.15s}[data-aos][data-aos][data-aos-delay="150"],body[data-aos-delay="150"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="150"].aos-animate,body[data-aos-delay="150"] [data-aos].aos-animate{transition-delay:.15s}[data-aos][data-aos][data-aos-duration="200"],body[data-aos-duration="200"] [data-aos]{transition-duration:.2s}[data-aos][data-aos][data-aos-delay="200"],body[data-aos-delay="200"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="200"].aos-animate,body[data-aos-delay="200"] [data-aos].aos-animate{transition-delay:.2s}[data-aos][data-aos][data-aos-duration="250"],body[data-aos-duration="250"] [data-aos]{transition-duration:.25s}[data-aos][data-aos][data-aos-delay="250"],body[data-aos-delay="250"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="250"].aos-animate,body[data-aos-delay="250"] [data-aos].aos-animate{transition-delay:.25s}[data-aos][data-aos][data-aos-duration="300"],body[data-aos-duration="300"] [data-aos]{transition-duration:.3s}[data-aos][data-aos][data-aos-delay="300"],body[data-aos-delay="300"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="300"].aos-animate,body[data-aos-delay="300"] [data-aos].aos-animate{transition-delay:.3s}[data-aos][data-aos][data-aos-duration="350"],body[data-aos-duration="350"] [data-aos]{transition-duration:.35s}[data-aos][data-aos][data-aos-delay="350"],body[data-aos-delay="350"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="350"].aos-animate,body[data-aos-delay="350"] [data-aos].aos-animate{transition-delay:.35s}[data-aos][data-aos][data-aos-duration="400"],body[data-aos-duration="400"] [data-aos]{transition-duration:.4s}[data-aos][data-aos][data-aos-delay="400"],body[data-aos-delay="400"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="400"].aos-animate,body[data-aos-delay="400"] [data-aos].aos-animate{transition-delay:.4s}[data-aos][data-aos][data-aos-duration="450"],body[data-aos-duration="450"] [data-aos]{transition-duration:.45s}[data-aos][data-aos][data-aos-delay="450"],body[data-aos-delay="450"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="450"].aos-animate,body[data-aos-delay="450"] [data-aos].aos-animate{transition-delay:.45s}[data-aos][data-aos][data-aos-duration="500"],body[data-aos-duration="500"] [data-aos]{transition-duration:.5s}[data-aos][data-aos][data-aos-delay="500"],body[data-aos-delay="500"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="500"].aos-animate,body[data-aos-delay="500"] [data-aos].aos-animate{transition-delay:.5s}[data-aos][data-aos][data-aos-duration="550"],body[data-aos-duration="550"] [data-aos]{transition-duration:.55s}[data-aos][data-aos][data-aos-delay="550"],body[data-aos-delay="550"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="550"].aos-animate,body[data-aos-delay="550"] [data-aos].aos-animate{transition-delay:.55s}[data-aos][data-aos][data-aos-duration="600"],body[data-aos-duration="600"] [data-aos]{transition-duration:.6s}[data-aos][data-aos][data-aos-delay="600"],body[data-aos-delay="600"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="600"].aos-animate,body[data-aos-delay="600"] [data-aos].aos-animate{transition-delay:.6s}[data-aos][data-aos][data-aos-duration="650"],body[data-aos-duration="650"] [data-aos]{transition-duration:.65s}[data-aos][data-aos][data-aos-delay="650"],body[data-aos-delay="650"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="650"].aos-animate,body[data-aos-delay="650"] [data-aos].aos-animate{transition-delay:.65s}[data-aos][data-aos][data-aos-duration="700"],body[data-aos-duration="700"] [data-aos]{transition-duration:.7s}[data-aos][data-aos][data-aos-delay="700"],body[data-aos-delay="700"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="700"].aos-animate,body[data-aos-delay="700"] [data-aos].aos-animate{transition-delay:.7s}[data-aos][data-aos][data-aos-duration="750"],body[data-aos-duration="750"] [data-aos]{transition-duration:.75s}[data-aos][data-aos][data-aos-delay="750"],body[data-aos-delay="750"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="750"].aos-animate,body[data-aos-delay="750"] [data-aos].aos-animate{transition-delay:.75s}[data-aos][data-aos][data-aos-duration="800"],body[data-aos-duration="800"] [data-aos]{transition-duration:.8s}[data-aos][data-aos][data-aos-delay="800"],body[data-aos-delay="800"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="800"].aos-animate,body[data-aos-delay="800"] [data-aos].aos-animate{transition-delay:.8s}[data-aos][data-aos][data-aos-duration="850"],body[data-aos-duration="850"] [data-aos]{transition-duration:.85s}[data-aos][data-aos][data-aos-delay="850"],body[data-aos-delay="850"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="850"].aos-animate,body[data-aos-delay="850"] [data-aos].aos-animate{transition-delay:.85s}[data-aos][data-aos][data-aos-duration="900"],body[data-aos-duration="900"] [data-aos]{transition-duration:.9s}[data-aos][data-aos][data-aos-delay="900"],body[data-aos-delay="900"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="900"].aos-animate,body[data-aos-delay="900"] [data-aos].aos-animate{transition-delay:.9s}[data-aos][data-aos][data-aos-duration="950"],body[data-aos-duration="950"] [data-aos]{transition-duration:.95s}[data-aos][data-aos][data-aos-delay="950"],body[data-aos-delay="950"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="950"].aos-animate,body[data-aos-delay="950"] [data-aos].aos-animate{transition-delay:.95s}[data-aos][data-aos][data-aos-duration="1000"],body[data-aos-duration="1000"] [data-aos]{transition-duration:1s}[data-aos][data-aos][data-aos-delay="1000"],body[data-aos-delay="1000"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1000"].aos-animate,body[data-aos-delay="1000"] [data-aos].aos-animate{transition-delay:1s}[data-aos][data-aos][data-aos-duration="1050"],body[data-aos-duration="1050"] [data-aos]{transition-duration:1.05s}[data-aos][data-aos][data-aos-delay="1050"],body[data-aos-delay="1050"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1050"].aos-animate,body[data-aos-delay="1050"] [data-aos].aos-animate{transition-delay:1.05s}[data-aos][data-aos][data-aos-duration="1100"],body[data-aos-duration="1100"] [data-aos]{transition-duration:1.1s}[data-aos][data-aos][data-aos-delay="1100"],body[data-aos-delay="1100"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1100"].aos-animate,body[data-aos-delay="1100"] [data-aos].aos-animate{transition-delay:1.1s}[data-aos][data-aos][data-aos-duration="1150"],body[data-aos-duration="1150"] [data-aos]{transition-duration:1.15s}[data-aos][data-aos][data-aos-delay="1150"],body[data-aos-delay="1150"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1150"].aos-animate,body[data-aos-delay="1150"] [data-aos].aos-animate{transition-delay:1.15s}[data-aos][data-aos][data-aos-duration="1200"],body[data-aos-duration="1200"] [data-aos]{transition-duration:1.2s}[data-aos][data-aos][data-aos-delay="1200"],body[data-aos-delay="1200"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1200"].aos-animate,body[data-aos-delay="1200"] [data-aos].aos-animate{transition-delay:1.2s}[data-aos][data-aos][data-aos-duration="1250"],body[data-aos-duration="1250"] [data-aos]{transition-duration:1.25s}[data-aos][data-aos][data-aos-delay="1250"],body[data-aos-delay="1250"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1250"].aos-animate,body[data-aos-delay="1250"] [data-aos].aos-animate{transition-delay:1.25s}[data-aos][data-aos][data-aos-duration="1300"],body[data-aos-duration="1300"] [data-aos]{transition-duration:1.3s}[data-aos][data-aos][data-aos-delay="1300"],body[data-aos-delay="1300"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1300"].aos-animate,body[data-aos-delay="1300"] [data-aos].aos-animate{transition-delay:1.3s}[data-aos][data-aos][data-aos-duration="1350"],body[data-aos-duration="1350"] [data-aos]{transition-duration:1.35s}[data-aos][data-aos][data-aos-delay="1350"],body[data-aos-delay="1350"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1350"].aos-animate,body[data-aos-delay="1350"] [data-aos].aos-animate{transition-delay:1.35s}[data-aos][data-aos][data-aos-duration="1400"],body[data-aos-duration="1400"] [data-aos]{transition-duration:1.4s}[data-aos][data-aos][data-aos-delay="1400"],body[data-aos-delay="1400"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1400"].aos-animate,body[data-aos-delay="1400"] [data-aos].aos-animate{transition-delay:1.4s}[data-aos][data-aos][data-aos-duration="1450"],body[data-aos-duration="1450"] [data-aos]{transition-duration:1.45s}[data-aos][data-aos][data-aos-delay="1450"],body[data-aos-delay="1450"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1450"].aos-animate,body[data-aos-delay="1450"] [data-aos].aos-animate{transition-delay:1.45s}[data-aos][data-aos][data-aos-duration="1500"],body[data-aos-duration="1500"] [data-aos]{transition-duration:1.5s}[data-aos][data-aos][data-aos-delay="1500"],body[data-aos-delay="1500"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1500"].aos-animate,body[data-aos-delay="1500"] [data-aos].aos-animate{transition-delay:1.5s}[data-aos][data-aos][data-aos-duration="1550"],body[data-aos-duration="1550"] [data-aos]{transition-duration:1.55s}[data-aos][data-aos][data-aos-delay="1550"],body[data-aos-delay="1550"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1550"].aos-animate,body[data-aos-delay="1550"] [data-aos].aos-animate{transition-delay:1.55s}[data-aos][data-aos][data-aos-duration="1600"],body[data-aos-duration="1600"] [data-aos]{transition-duration:1.6s}[data-aos][data-aos][data-aos-delay="1600"],body[data-aos-delay="1600"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1600"].aos-animate,body[data-aos-delay="1600"] [data-aos].aos-animate{transition-delay:1.6s}[data-aos][data-aos][data-aos-duration="1650"],body[data-aos-duration="1650"] [data-aos]{transition-duration:1.65s}[data-aos][data-aos][data-aos-delay="1650"],body[data-aos-delay="1650"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1650"].aos-animate,body[data-aos-delay="1650"] [data-aos].aos-animate{transition-delay:1.65s}[data-aos][data-aos][data-aos-duration="1700"],body[data-aos-duration="1700"] [data-aos]{transition-duration:1.7s}[data-aos][data-aos][data-aos-delay="1700"],body[data-aos-delay="1700"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1700"].aos-animate,body[data-aos-delay="1700"] [data-aos].aos-animate{transition-delay:1.7s}[data-aos][data-aos][data-aos-duration="1750"],body[data-aos-duration="1750"] [data-aos]{transition-duration:1.75s}[data-aos][data-aos][data-aos-delay="1750"],body[data-aos-delay="1750"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1750"].aos-animate,body[data-aos-delay="1750"] [data-aos].aos-animate{transition-delay:1.75s}[data-aos][data-aos][data-aos-duration="1800"],body[data-aos-duration="1800"] [data-aos]{transition-duration:1.8s}[data-aos][data-aos][data-aos-delay="1800"],body[data-aos-delay="1800"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1800"].aos-animate,body[data-aos-delay="1800"] [data-aos].aos-animate{transition-delay:1.8s}[data-aos][data-aos][data-aos-duration="1850"],body[data-aos-duration="1850"] [data-aos]{transition-duration:1.85s}[data-aos][data-aos][data-aos-delay="1850"],body[data-aos-delay="1850"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1850"].aos-animate,body[data-aos-delay="1850"] [data-aos].aos-animate{transition-delay:1.85s}[data-aos][data-aos][data-aos-duration="1900"],body[data-aos-duration="1900"] [data-aos]{transition-duration:1.9s}[data-aos][data-aos][data-aos-delay="1900"],body[data-aos-delay="1900"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1900"].aos-animate,body[data-aos-delay="1900"] [data-aos].aos-animate{transition-delay:1.9s}[data-aos][data-aos][data-aos-duration="1950"],body[data-aos-duration="1950"] [data-aos]{transition-duration:1.95s}[data-aos][data-aos][data-aos-delay="1950"],body[data-aos-delay="1950"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1950"].aos-animate,body[data-aos-delay="1950"] [data-aos].aos-animate{transition-delay:1.95s}[data-aos][data-aos][data-aos-duration="2000"],body[data-aos-duration="2000"] [data-aos]{transition-duration:2s}[data-aos][data-aos][data-aos-delay="2000"],body[data-aos-delay="2000"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2000"].aos-animate,body[data-aos-delay="2000"] [data-aos].aos-animate{transition-delay:2s}[data-aos][data-aos][data-aos-duration="2050"],body[data-aos-duration="2050"] [data-aos]{transition-duration:2.05s}[data-aos][data-aos][data-aos-delay="2050"],body[data-aos-delay="2050"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2050"].aos-animate,body[data-aos-delay="2050"] [data-aos].aos-animate{transition-delay:2.05s}[data-aos][data-aos][data-aos-duration="2100"],body[data-aos-duration="2100"] [data-aos]{transition-duration:2.1s}[data-aos][data-aos][data-aos-delay="2100"],body[data-aos-delay="2100"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2100"].aos-animate,body[data-aos-delay="2100"] [data-aos].aos-animate{transition-delay:2.1s}[data-aos][data-aos][data-aos-duration="2150"],body[data-aos-duration="2150"] [data-aos]{transition-duration:2.15s}[data-aos][data-aos][data-aos-delay="2150"],body[data-aos-delay="2150"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2150"].aos-animate,body[data-aos-delay="2150"] [data-aos].aos-animate{transition-delay:2.15s}[data-aos][data-aos][data-aos-duration="2200"],body[data-aos-duration="2200"] [data-aos]{transition-duration:2.2s}[data-aos][data-aos][data-aos-delay="2200"],body[data-aos-delay="2200"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2200"].aos-animate,body[data-aos-delay="2200"] [data-aos].aos-animate{transition-delay:2.2s}[data-aos][data-aos][data-aos-duration="2250"],body[data-aos-duration="2250"] [data-aos]{transition-duration:2.25s}[data-aos][data-aos][data-aos-delay="2250"],body[data-aos-delay="2250"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2250"].aos-animate,body[data-aos-delay="2250"] [data-aos].aos-animate{transition-delay:2.25s}[data-aos][data-aos][data-aos-duration="2300"],body[data-aos-duration="2300"] [data-aos]{transition-duration:2.3s}[data-aos][data-aos][data-aos-delay="2300"],body[data-aos-delay="2300"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2300"].aos-animate,body[data-aos-delay="2300"] [data-aos].aos-animate{transition-delay:2.3s}[data-aos][data-aos][data-aos-duration="2350"],body[data-aos-duration="2350"] [data-aos]{transition-duration:2.35s}[data-aos][data-aos][data-aos-delay="2350"],body[data-aos-delay="2350"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2350"].aos-animate,body[data-aos-delay="2350"] [data-aos].aos-animate{transition-delay:2.35s}[data-aos][data-aos][data-aos-duration="2400"],body[data-aos-duration="2400"] [data-aos]{transition-duration:2.4s}[data-aos][data-aos][data-aos-delay="2400"],body[data-aos-delay="2400"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2400"].aos-animate,body[data-aos-delay="2400"] [data-aos].aos-animate{transition-delay:2.4s}[data-aos][data-aos][data-aos-duration="2450"],body[data-aos-duration="2450"] [data-aos]{transition-duration:2.45s}[data-aos][data-aos][data-aos-delay="2450"],body[data-aos-delay="2450"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2450"].aos-animate,body[data-aos-delay="2450"] [data-aos].aos-animate{transition-delay:2.45s}[data-aos][data-aos][data-aos-duration="2500"],body[data-aos-duration="2500"] [data-aos]{transition-duration:2.5s}[data-aos][data-aos][data-aos-delay="2500"],body[data-aos-delay="2500"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2500"].aos-animate,body[data-aos-delay="2500"] [data-aos].aos-animate{transition-delay:2.5s}[data-aos][data-aos][data-aos-duration="2550"],body[data-aos-duration="2550"] [data-aos]{transition-duration:2.55s}[data-aos][data-aos][data-aos-delay="2550"],body[data-aos-delay="2550"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2550"].aos-animate,body[data-aos-delay="2550"] [data-aos].aos-animate{transition-delay:2.55s}[data-aos][data-aos][data-aos-duration="2600"],body[data-aos-duration="2600"] [data-aos]{transition-duration:2.6s}[data-aos][data-aos][data-aos-delay="2600"],body[data-aos-delay="2600"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2600"].aos-animate,body[data-aos-delay="2600"] [data-aos].aos-animate{transition-delay:2.6s}[data-aos][data-aos][data-aos-duration="2650"],body[data-aos-duration="2650"] [data-aos]{transition-duration:2.65s}[data-aos][data-aos][data-aos-delay="2650"],body[data-aos-delay="2650"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2650"].aos-animate,body[data-aos-delay="2650"] [data-aos].aos-animate{transition-delay:2.65s}[data-aos][data-aos][data-aos-duration="2700"],body[data-aos-duration="2700"] [data-aos]{transition-duration:2.7s}[data-aos][data-aos][data-aos-delay="2700"],body[data-aos-delay="2700"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2700"].aos-animate,body[data-aos-delay="2700"] [data-aos].aos-animate{transition-delay:2.7s}[data-aos][data-aos][data-aos-duration="2750"],body[data-aos-duration="2750"] [data-aos]{transition-duration:2.75s}[data-aos][data-aos][data-aos-delay="2750"],body[data-aos-delay="2750"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2750"].aos-animate,body[data-aos-delay="2750"] [data-aos].aos-animate{transition-delay:2.75s}[data-aos][data-aos][data-aos-duration="2800"],body[data-aos-duration="2800"] [data-aos]{transition-duration:2.8s}[data-aos][data-aos][data-aos-delay="2800"],body[data-aos-delay="2800"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2800"].aos-animate,body[data-aos-delay="2800"] [data-aos].aos-animate{transition-delay:2.8s}[data-aos][data-aos][data-aos-duration="2850"],body[data-aos-duration="2850"] [data-aos]{transition-duration:2.85s}[data-aos][data-aos][data-aos-delay="2850"],body[data-aos-delay="2850"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2850"].aos-animate,body[data-aos-delay="2850"] [data-aos].aos-animate{transition-delay:2.85s}[data-aos][data-aos][data-aos-duration="2900"],body[data-aos-duration="2900"] [data-aos]{transition-duration:2.9s}[data-aos][data-aos][data-aos-delay="2900"],body[data-aos-delay="2900"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2900"].aos-animate,body[data-aos-delay="2900"] [data-aos].aos-animate{transition-delay:2.9s}[data-aos][data-aos][data-aos-duration="2950"],body[data-aos-duration="2950"] [data-aos]{transition-duration:2.95s}[data-aos][data-aos][data-aos-delay="2950"],body[data-aos-delay="2950"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2950"].aos-animate,body[data-aos-delay="2950"] [data-aos].aos-animate{transition-delay:2.95s}[data-aos][data-aos][data-aos-duration="3000"],body[data-aos-duration="3000"] [data-aos]{transition-duration:3s}[data-aos][data-aos][data-aos-delay="3000"],body[data-aos-delay="3000"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="3000"].aos-animate,body[data-aos-delay="3000"] [data-aos].aos-animate{transition-delay:3s}[data-aos]{pointer-events:none}[data-aos].aos-animate{pointer-events:auto}[data-aos][data-aos][data-aos-easing=linear],body[data-aos-easing=linear] [data-aos]{transition-timing-function:cubic-bezier(.25,.25,.75,.75)}[data-aos][data-aos][data-aos-easing=ease],body[data-aos-easing=ease] [data-aos]{transition-timing-function:ease}[data-aos][data-aos][data-aos-easing=ease-in],body[data-aos-easing=ease-in] [data-aos]{transition-timing-function:ease-in}[data-aos][data-aos][data-aos-easing=ease-out],body[data-aos-easing=ease-out] [data-aos]{transition-timing-function:ease-out}[data-aos][data-aos][data-aos-easing=ease-in-out],body[data-aos-easing=ease-in-out] [data-aos]{transition-timing-function:ease-in-out}[data-aos][data-aos][data-aos-easing=ease-in-back],body[data-aos-easing=ease-in-back] [data-aos]{transition-timing-function:cubic-bezier(.6,-.28,.735,.045)}[data-aos][data-aos][data-aos-easing=ease-out-back],body[data-aos-easing=ease-out-back] [data-aos]{transition-timing-function:cubic-bezier(.175,.885,.32,1.275)}[data-aos][data-aos][data-aos-easing=ease-in-out-back],body[data-aos-easing=ease-in-out-back] [data-aos]{transition-timing-function:cubic-bezier(.68,-.55,.265,1.55)}[data-aos][data-aos][data-aos-easing=ease-in-sine],body[data-aos-easing=ease-in-sine] [data-aos]{transition-timing-function:cubic-bezier(.47,0,.745,.715)}[data-aos][data-aos][data-aos-easing=ease-out-sine],body[data-aos-easing=ease-out-sine] [data-aos]{transition-timing-function:cubic-bezier(.39,.575,.565,1)}[data-aos][data-aos][data-aos-easing=ease-in-out-sine],body[data-aos-easing=ease-in-out-sine] [data-aos]{transition-timing-function:cubic-bezier(.445,.05,.55,.95)}[data-aos][data-aos][data-aos-easing=ease-in-quad],body[data-aos-easing=ease-in-quad] [data-aos]{transition-timing-function:cubic-bezier(.55,.085,.68,.53)}[data-aos][data-aos][data-aos-easing=ease-out-quad],body[data-aos-easing=ease-out-quad] [data-aos]{transition-timing-function:cubic-bezier(.25,.46,.45,.94)}[data-aos][data-aos][data-aos-easing=ease-in-out-quad],body[data-aos-easing=ease-in-out-quad] [data-aos]{transition-timing-function:cubic-bezier(.455,.03,.515,.955)}[data-aos][data-aos][data-aos-easing=ease-in-cubic],body[data-aos-easing=ease-in-cubic] [data-aos]{transition-timing-function:cubic-bezier(.55,.085,.68,.53)}[data-aos][data-aos][data-aos-easing=ease-out-cubic],body[data-aos-easing=ease-out-cubic] [data-aos]{transition-timing-function:cubic-bezier(.25,.46,.45,.94)}[data-aos][data-aos][data-aos-easing=ease-in-out-cubic],body[data-aos-easing=ease-in-out-cubic] [data-aos]{transition-timing-function:cubic-bezier(.455,.03,.515,.955)}[data-aos][data-aos][data-aos-easing=ease-in-quart],body[data-aos-easing=ease-in-quart] [data-aos]{transition-timing-function:cubic-bezier(.55,.085,.68,.53)}[data-aos][data-aos][data-aos-easing=ease-out-quart],body[data-aos-easing=ease-out-quart] [data-aos]{transition-timing-function:cubic-bezier(.25,.46,.45,.94)}[data-aos][data-aos][data-aos-easing=ease-in-out-quart],body[data-aos-easing=ease-in-out-quart] [data-aos]{transition-timing-function:cubic-bezier(.455,.03,.515,.955)}@media screen{html:not(.no-js) [data-aos^=fade][data-aos^=fade]{opacity:0;transition-property:opacity,transform}html:not(.no-js) [data-aos^=fade][data-aos^=fade].aos-animate{opacity:1;transform:none}html:not(.no-js) [data-aos=fade-up]{transform:translate3d(0,100px,0)}html:not(.no-js) [data-aos=fade-down]{transform:translate3d(0,-100px,0)}html:not(.no-js) [data-aos=fade-right]{transform:translate3d(-100px,0,0)}html:not(.no-js) [data-aos=fade-left]{transform:translate3d(100px,0,0)}html:not(.no-js) [data-aos=fade-up-right]{transform:translate3d(-100px,100px,0)}html:not(.no-js) [data-aos=fade-up-left]{transform:translate3d(100px,100px,0)}html:not(.no-js) [data-aos=fade-down-right]{transform:translate3d(-100px,-100px,0)}html:not(.no-js) [data-aos=fade-down-left]{transform:translate3d(100px,-100px,0)}html:not(.no-js) [data-aos^=zoom][data-aos^=zoom]{opacity:0;transition-property:opacity,transform}html:not(.no-js) [data-aos^=zoom][data-aos^=zoom].aos-animate{opacity:1;transform:translateZ(0) scale(1)}html:not(.no-js) [data-aos=zoom-in]{transform:scale(.6)}html:not(.no-js) [data-aos=zoom-in-up]{transform:translate3d(0,100px,0) scale(.6)}html:not(.no-js) [data-aos=zoom-in-down]{transform:translate3d(0,-100px,0) scale(.6)}html:not(.no-js) [data-aos=zoom-in-right]{transform:translate3d(-100px,0,0) scale(.6)}html:not(.no-js) [data-aos=zoom-in-left]{transform:translate3d(100px,0,0) scale(.6)}html:not(.no-js) [data-aos=zoom-out]{transform:scale(1.2)}html:not(.no-js) [data-aos=zoom-out-up]{transform:translate3d(0,100px,0) scale(1.2)}html:not(.no-js) [data-aos=zoom-out-down]{transform:translate3d(0,-100px,0) scale(1.2)}html:not(.no-js) [data-aos=zoom-out-right]{transform:translate3d(-100px,0,0) scale(1.2)}html:not(.no-js) [data-aos=zoom-out-left]{transform:translate3d(100px,0,0) scale(1.2)}html:not(.no-js) [data-aos^=slide][data-aos^=slide]{transition-property:transform;visibility:hidden}html:not(.no-js) [data-aos^=slide][data-aos^=slide].aos-animate{visibility:visible;transform:translateZ(0)}html:not(.no-js) [data-aos=slide-up]{transform:translate3d(0,100%,0)}html:not(.no-js) [data-aos=slide-down]{transform:translate3d(0,-100%,0)}html:not(.no-js) [data-aos=slide-right]{transform:translate3d(-100%,0,0)}html:not(.no-js) [data-aos=slide-left]{transform:translate3d(100%,0,0)}html:not(.no-js) [data-aos^=flip][data-aos^=flip]{backface-visibility:hidden;transition-property:transform}html:not(.no-js) [data-aos=flip-left]{transform:perspective(2500px) rotateY(-100deg)}html:not(.no-js) [data-aos=flip-left].aos-animate{transform:perspective(2500px) rotateY(0)}html:not(.no-js) [data-aos=flip-right]{transform:perspective(2500px) rotateY(100deg)}html:not(.no-js) [data-aos=flip-right].aos-animate{transform:perspective(2500px) rotateY(0)}html:not(.no-js) [data-aos=flip-up]{transform:perspective(2500px) rotateX(-100deg)}html:not(.no-js) [data-aos=flip-up].aos-animate{transform:perspective(2500px) rotateX(0)}html:not(.no-js) [data-aos=flip-down]{transform:perspective(2500px) rotateX(100deg)}html:not(.no-js) [data-aos=flip-down].aos-animate{transform:perspective(2500px) rotateX(0)}}[class^=ant-]::-ms-clear,[class*=ant-]::-ms-clear,[class^=ant-] input::-ms-clear,[class*=ant-] input::-ms-clear,[class^=ant-] input::-ms-reveal,[class*=ant-] input::-ms-reveal{display:none}html,body{width:100%;height:100%}input::-ms-clear,input::-ms-reveal{display:none}*,*:before,*:after{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{margin:0;color:#000000d9;font-size:14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-variant:tabular-nums;line-height:1.5715;background-color:#fff;font-feature-settings:"tnum"}[tabindex="-1"]:focus{outline:none!important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;color:#000000d9;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;border-bottom:0;cursor:help}address{margin-bottom:1em;font-style:normal;line-height:inherit}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#1890ff;text-decoration:none;background-color:transparent;outline:none;cursor:pointer;transition:color .3s;-webkit-text-decoration-skip:objects}a:hover{color:#40a9ff}a:active{color:#096dd9}a:active,a:hover{text-decoration:none;outline:0}a:focus{text-decoration:none;outline:0}a[disabled]{color:#00000040;cursor:not-allowed}pre,code,kbd,samp{font-size:1em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;color:#00000073;text-align:left;caption-side:bottom}input,button,select,optgroup,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;margin:0;padding:0;border:0}legend{display:block;width:100%;max-width:100%;margin-bottom:.5em;padding:0;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}mark{padding:.2em;background-color:#feffe6}::selection{color:#fff;background:#1890ff}.clearfix:before{display:table;content:""}.clearfix:after{display:table;clear:both;content:""}.anticon{display:inline-block;color:inherit;font-style:normal;line-height:0;text-align:center;text-transform:none;vertical-align:-.125em;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.anticon>*{line-height:1}.anticon svg{display:inline-block}.anticon:before{display:none}.anticon .anticon-icon{display:block}.anticon>.anticon{line-height:0;vertical-align:0}.anticon[tabindex]{cursor:pointer}.anticon-spin:before{display:inline-block;animation:loadingCircle 1s infinite linear}.anticon-spin{display:inline-block;animation:loadingCircle 1s infinite linear}.ant-fade-enter,.ant-fade-appear,.ant-fade-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-fade-enter.ant-fade-enter-active,.ant-fade-appear.ant-fade-appear-active{animation-name:antFadeIn;animation-play-state:running}.ant-fade-leave.ant-fade-leave-active{animation-name:antFadeOut;animation-play-state:running;pointer-events:none}.ant-fade-enter,.ant-fade-appear{opacity:0;animation-timing-function:linear}.ant-fade-leave{animation-timing-function:linear}@keyframes antFadeIn{0%{opacity:0}to{opacity:1}}@keyframes antFadeOut{0%{opacity:1}to{opacity:0}}.ant-move-up-enter,.ant-move-up-appear,.ant-move-up-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-move-up-enter.ant-move-up-enter-active,.ant-move-up-appear.ant-move-up-appear-active{animation-name:antMoveUpIn;animation-play-state:running}.ant-move-up-leave.ant-move-up-leave-active{animation-name:antMoveUpOut;animation-play-state:running;pointer-events:none}.ant-move-up-enter,.ant-move-up-appear{opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-move-up-leave{animation-timing-function:cubic-bezier(.6,.04,.98,.34)}.ant-move-down-enter,.ant-move-down-appear,.ant-move-down-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-move-down-enter.ant-move-down-enter-active,.ant-move-down-appear.ant-move-down-appear-active{animation-name:antMoveDownIn;animation-play-state:running}.ant-move-down-leave.ant-move-down-leave-active{animation-name:antMoveDownOut;animation-play-state:running;pointer-events:none}.ant-move-down-enter,.ant-move-down-appear{opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-move-down-leave{animation-timing-function:cubic-bezier(.6,.04,.98,.34)}.ant-move-left-enter,.ant-move-left-appear,.ant-move-left-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-move-left-enter.ant-move-left-enter-active,.ant-move-left-appear.ant-move-left-appear-active{animation-name:antMoveLeftIn;animation-play-state:running}.ant-move-left-leave.ant-move-left-leave-active{animation-name:antMoveLeftOut;animation-play-state:running;pointer-events:none}.ant-move-left-enter,.ant-move-left-appear{opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-move-left-leave{animation-timing-function:cubic-bezier(.6,.04,.98,.34)}.ant-move-right-enter,.ant-move-right-appear,.ant-move-right-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-move-right-enter.ant-move-right-enter-active,.ant-move-right-appear.ant-move-right-appear-active{animation-name:antMoveRightIn;animation-play-state:running}.ant-move-right-leave.ant-move-right-leave-active{animation-name:antMoveRightOut;animation-play-state:running;pointer-events:none}.ant-move-right-enter,.ant-move-right-appear{opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-move-right-leave{animation-timing-function:cubic-bezier(.6,.04,.98,.34)}@keyframes antMoveDownIn{0%{transform:translateY(100%);transform-origin:0 0;opacity:0}to{transform:translateY(0);transform-origin:0 0;opacity:1}}@keyframes antMoveDownOut{0%{transform:translateY(0);transform-origin:0 0;opacity:1}to{transform:translateY(100%);transform-origin:0 0;opacity:0}}@keyframes antMoveLeftIn{0%{transform:translate(-100%);transform-origin:0 0;opacity:0}to{transform:translate(0);transform-origin:0 0;opacity:1}}@keyframes antMoveLeftOut{0%{transform:translate(0);transform-origin:0 0;opacity:1}to{transform:translate(-100%);transform-origin:0 0;opacity:0}}@keyframes antMoveRightIn{0%{transform:translate(100%);transform-origin:0 0;opacity:0}to{transform:translate(0);transform-origin:0 0;opacity:1}}@keyframes antMoveRightOut{0%{transform:translate(0);transform-origin:0 0;opacity:1}to{transform:translate(100%);transform-origin:0 0;opacity:0}}@keyframes antMoveUpIn{0%{transform:translateY(-100%);transform-origin:0 0;opacity:0}to{transform:translateY(0);transform-origin:0 0;opacity:1}}@keyframes antMoveUpOut{0%{transform:translateY(0);transform-origin:0 0;opacity:1}to{transform:translateY(-100%);transform-origin:0 0;opacity:0}}@keyframes loadingCircle{to{transform:rotate(360deg)}}[ant-click-animating=true],[ant-click-animating-without-extra-node=true]{position:relative}html{--antd-wave-shadow-color: #1890ff;--scroll-bar: 0}[ant-click-animating-without-extra-node=true]:after,.ant-click-animating-node{position:absolute;inset:0;display:block;border-radius:inherit;box-shadow:0 0 #1890ff;box-shadow:0 0 0 0 var(--antd-wave-shadow-color);opacity:.2;animation:fadeEffect 2s cubic-bezier(.08,.82,.17,1),waveEffect .4s cubic-bezier(.08,.82,.17,1);animation-fill-mode:forwards;content:"";pointer-events:none}@keyframes waveEffect{to{box-shadow:0 0 #1890ff;box-shadow:0 0 0 6px var(--antd-wave-shadow-color)}}@keyframes fadeEffect{to{opacity:0}}.ant-slide-up-enter,.ant-slide-up-appear,.ant-slide-up-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-slide-up-enter.ant-slide-up-enter-active,.ant-slide-up-appear.ant-slide-up-appear-active{animation-name:antSlideUpIn;animation-play-state:running}.ant-slide-up-leave.ant-slide-up-leave-active{animation-name:antSlideUpOut;animation-play-state:running;pointer-events:none}.ant-slide-up-enter,.ant-slide-up-appear{opacity:0;animation-timing-function:cubic-bezier(.23,1,.32,1)}.ant-slide-up-leave{animation-timing-function:cubic-bezier(.755,.05,.855,.06)}.ant-slide-down-enter,.ant-slide-down-appear,.ant-slide-down-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-slide-down-enter.ant-slide-down-enter-active,.ant-slide-down-appear.ant-slide-down-appear-active{animation-name:antSlideDownIn;animation-play-state:running}.ant-slide-down-leave.ant-slide-down-leave-active{animation-name:antSlideDownOut;animation-play-state:running;pointer-events:none}.ant-slide-down-enter,.ant-slide-down-appear{opacity:0;animation-timing-function:cubic-bezier(.23,1,.32,1)}.ant-slide-down-leave{animation-timing-function:cubic-bezier(.755,.05,.855,.06)}.ant-slide-left-enter,.ant-slide-left-appear,.ant-slide-left-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-slide-left-enter.ant-slide-left-enter-active,.ant-slide-left-appear.ant-slide-left-appear-active{animation-name:antSlideLeftIn;animation-play-state:running}.ant-slide-left-leave.ant-slide-left-leave-active{animation-name:antSlideLeftOut;animation-play-state:running;pointer-events:none}.ant-slide-left-enter,.ant-slide-left-appear{opacity:0;animation-timing-function:cubic-bezier(.23,1,.32,1)}.ant-slide-left-leave{animation-timing-function:cubic-bezier(.755,.05,.855,.06)}.ant-slide-right-enter,.ant-slide-right-appear,.ant-slide-right-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-slide-right-enter.ant-slide-right-enter-active,.ant-slide-right-appear.ant-slide-right-appear-active{animation-name:antSlideRightIn;animation-play-state:running}.ant-slide-right-leave.ant-slide-right-leave-active{animation-name:antSlideRightOut;animation-play-state:running;pointer-events:none}.ant-slide-right-enter,.ant-slide-right-appear{opacity:0;animation-timing-function:cubic-bezier(.23,1,.32,1)}.ant-slide-right-leave{animation-timing-function:cubic-bezier(.755,.05,.855,.06)}@keyframes antSlideUpIn{0%{transform:scaleY(.8);transform-origin:0% 0%;opacity:0}to{transform:scaleY(1);transform-origin:0% 0%;opacity:1}}@keyframes antSlideUpOut{0%{transform:scaleY(1);transform-origin:0% 0%;opacity:1}to{transform:scaleY(.8);transform-origin:0% 0%;opacity:0}}@keyframes antSlideDownIn{0%{transform:scaleY(.8);transform-origin:100% 100%;opacity:0}to{transform:scaleY(1);transform-origin:100% 100%;opacity:1}}@keyframes antSlideDownOut{0%{transform:scaleY(1);transform-origin:100% 100%;opacity:1}to{transform:scaleY(.8);transform-origin:100% 100%;opacity:0}}@keyframes antSlideLeftIn{0%{transform:scaleX(.8);transform-origin:0% 0%;opacity:0}to{transform:scaleX(1);transform-origin:0% 0%;opacity:1}}@keyframes antSlideLeftOut{0%{transform:scaleX(1);transform-origin:0% 0%;opacity:1}to{transform:scaleX(.8);transform-origin:0% 0%;opacity:0}}@keyframes antSlideRightIn{0%{transform:scaleX(.8);transform-origin:100% 0%;opacity:0}to{transform:scaleX(1);transform-origin:100% 0%;opacity:1}}@keyframes antSlideRightOut{0%{transform:scaleX(1);transform-origin:100% 0%;opacity:1}to{transform:scaleX(.8);transform-origin:100% 0%;opacity:0}}.ant-zoom-enter,.ant-zoom-appear,.ant-zoom-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-enter.ant-zoom-enter-active,.ant-zoom-appear.ant-zoom-appear-active{animation-name:antZoomIn;animation-play-state:running}.ant-zoom-leave.ant-zoom-leave-active{animation-name:antZoomOut;animation-play-state:running;pointer-events:none}.ant-zoom-enter,.ant-zoom-appear{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-enter-prepare,.ant-zoom-appear-prepare{transform:none}.ant-zoom-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-big-enter,.ant-zoom-big-appear,.ant-zoom-big-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-big-enter.ant-zoom-big-enter-active,.ant-zoom-big-appear.ant-zoom-big-appear-active{animation-name:antZoomBigIn;animation-play-state:running}.ant-zoom-big-leave.ant-zoom-big-leave-active{animation-name:antZoomBigOut;animation-play-state:running;pointer-events:none}.ant-zoom-big-enter,.ant-zoom-big-appear{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-big-enter-prepare,.ant-zoom-big-appear-prepare{transform:none}.ant-zoom-big-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-big-fast-enter,.ant-zoom-big-fast-appear,.ant-zoom-big-fast-leave{animation-duration:.1s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-big-fast-enter.ant-zoom-big-fast-enter-active,.ant-zoom-big-fast-appear.ant-zoom-big-fast-appear-active{animation-name:antZoomBigIn;animation-play-state:running}.ant-zoom-big-fast-leave.ant-zoom-big-fast-leave-active{animation-name:antZoomBigOut;animation-play-state:running;pointer-events:none}.ant-zoom-big-fast-enter,.ant-zoom-big-fast-appear{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-big-fast-enter-prepare,.ant-zoom-big-fast-appear-prepare{transform:none}.ant-zoom-big-fast-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-up-enter,.ant-zoom-up-appear,.ant-zoom-up-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-up-enter.ant-zoom-up-enter-active,.ant-zoom-up-appear.ant-zoom-up-appear-active{animation-name:antZoomUpIn;animation-play-state:running}.ant-zoom-up-leave.ant-zoom-up-leave-active{animation-name:antZoomUpOut;animation-play-state:running;pointer-events:none}.ant-zoom-up-enter,.ant-zoom-up-appear{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-up-enter-prepare,.ant-zoom-up-appear-prepare{transform:none}.ant-zoom-up-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-down-enter,.ant-zoom-down-appear,.ant-zoom-down-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-down-enter.ant-zoom-down-enter-active,.ant-zoom-down-appear.ant-zoom-down-appear-active{animation-name:antZoomDownIn;animation-play-state:running}.ant-zoom-down-leave.ant-zoom-down-leave-active{animation-name:antZoomDownOut;animation-play-state:running;pointer-events:none}.ant-zoom-down-enter,.ant-zoom-down-appear{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-down-enter-prepare,.ant-zoom-down-appear-prepare{transform:none}.ant-zoom-down-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-left-enter,.ant-zoom-left-appear,.ant-zoom-left-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-left-enter.ant-zoom-left-enter-active,.ant-zoom-left-appear.ant-zoom-left-appear-active{animation-name:antZoomLeftIn;animation-play-state:running}.ant-zoom-left-leave.ant-zoom-left-leave-active{animation-name:antZoomLeftOut;animation-play-state:running;pointer-events:none}.ant-zoom-left-enter,.ant-zoom-left-appear{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-left-enter-prepare,.ant-zoom-left-appear-prepare{transform:none}.ant-zoom-left-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}.ant-zoom-right-enter,.ant-zoom-right-appear,.ant-zoom-right-leave{animation-duration:.2s;animation-fill-mode:both;animation-play-state:paused}.ant-zoom-right-enter.ant-zoom-right-enter-active,.ant-zoom-right-appear.ant-zoom-right-appear-active{animation-name:antZoomRightIn;animation-play-state:running}.ant-zoom-right-leave.ant-zoom-right-leave-active{animation-name:antZoomRightOut;animation-play-state:running;pointer-events:none}.ant-zoom-right-enter,.ant-zoom-right-appear{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.08,.82,.17,1)}.ant-zoom-right-enter-prepare,.ant-zoom-right-appear-prepare{transform:none}.ant-zoom-right-leave{animation-timing-function:cubic-bezier(.78,.14,.15,.86)}@keyframes antZoomIn{0%{transform:scale(.2);opacity:0}to{transform:scale(1);opacity:1}}@keyframes antZoomOut{0%{transform:scale(1)}to{transform:scale(.2);opacity:0}}@keyframes antZoomBigIn{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}@keyframes antZoomBigOut{0%{transform:scale(1)}to{transform:scale(.8);opacity:0}}@keyframes antZoomUpIn{0%{transform:scale(.8);transform-origin:50% 0%;opacity:0}to{transform:scale(1);transform-origin:50% 0%}}@keyframes antZoomUpOut{0%{transform:scale(1);transform-origin:50% 0%}to{transform:scale(.8);transform-origin:50% 0%;opacity:0}}@keyframes antZoomLeftIn{0%{transform:scale(.8);transform-origin:0% 50%;opacity:0}to{transform:scale(1);transform-origin:0% 50%}}@keyframes antZoomLeftOut{0%{transform:scale(1);transform-origin:0% 50%}to{transform:scale(.8);transform-origin:0% 50%;opacity:0}}@keyframes antZoomRightIn{0%{transform:scale(.8);transform-origin:100% 50%;opacity:0}to{transform:scale(1);transform-origin:100% 50%}}@keyframes antZoomRightOut{0%{transform:scale(1);transform-origin:100% 50%}to{transform:scale(.8);transform-origin:100% 50%;opacity:0}}@keyframes antZoomDownIn{0%{transform:scale(.8);transform-origin:50% 100%;opacity:0}to{transform:scale(1);transform-origin:50% 100%}}@keyframes antZoomDownOut{0%{transform:scale(1);transform-origin:50% 100%}to{transform:scale(.8);transform-origin:50% 100%;opacity:0}}.ant-motion-collapse-legacy{overflow:hidden}.ant-motion-collapse-legacy-active{transition:height .2s cubic-bezier(.645,.045,.355,1),opacity .2s cubic-bezier(.645,.045,.355,1)!important}.ant-motion-collapse{overflow:hidden;transition:height .2s cubic-bezier(.645,.045,.355,1),opacity .2s cubic-bezier(.645,.045,.355,1)!important}.cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;max-width:100%;max-height:100%}.cdk-overlay-backdrop{position:absolute;inset:0;z-index:1000;pointer-events:auto;-webkit-tap-highlight-color:rgba(0,0,0,0);transition:opacity .4s cubic-bezier(.25,.8,.25,1);opacity:0}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:1}.cdk-high-contrast-active .cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:.6}.cdk-overlay-dark-backdrop{background:rgba(0,0,0,.32)}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{position:absolute;z-index:1000;display:flex;flex-direction:column;min-width:1px;min-height:1px}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}.cdk-visually-hidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;outline:0;-webkit-appearance:none;-moz-appearance:none}.nz-overlay-transparent-backdrop,.nz-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0}.nz-animate-disabled.ant-scroll-number-only,.nz-animate-disabled.ant-drawer.ant-drawer-open .ant-drawer-mask{animation:none;transition:none}.nz-animate-disabled.ant-drawer>*{transition:none}.nz-animate-disabled .ant-modal-mask,.nz-animate-disabled .ant-modal,.nz-animate-disabled .ant-modal-mask.zoom-enter,.nz-animate-disabled .ant-modal.zoom-enter,.nz-animate-disabled .ant-modal-mask.zoom-leave,.nz-animate-disabled .ant-modal.zoom-leave,.nz-animate-disabled .ant-modal-mask.zoom-enter-active,.nz-animate-disabled .ant-modal.zoom-enter-active,.nz-animate-disabled .ant-modal-mask.zoom-leave-active,.nz-animate-disabled .ant-modal.zoom-leave-active{animation:none;transition:none}.nz-animate-disabled.ant-menu,.nz-animate-disabled.ant-menu .ant-menu-item,.nz-animate-disabled.ant-menu .ant-menu-submenu-title,.nz-animate-disabled.ant-menu .ant-menu-item .anticon,.nz-animate-disabled.ant-menu .ant-menu-submenu-title .anticon{transition:none}.nz-animate-disabled.ant-menu .ant-menu-item .anticon+span,.nz-animate-disabled.ant-menu .ant-menu-submenu-title .anticon+span{transition:none}.nz-animate-disabled.ant-tabs .ant-tabs-top-content.ant-tabs-content-animated,.nz-animate-disabled.ant-tabs .ant-tabs-bottom-content.ant-tabs-content-animated,.nz-animate-disabled.ant-tabs .ant-tabs-top-content>.ant-tabs-tabpane,.nz-animate-disabled.ant-tabs .ant-tabs-bottom-content>.ant-tabs-tabpane,.nz-animate-disabled.ant-tabs.ant-tabs-left .ant-tabs-ink-bar-animated,.nz-animate-disabled.ant-tabs.ant-tabs-right .ant-tabs-ink-bar-animated,.nz-animate-disabled.ant-tabs.ant-tabs-top .ant-tabs-ink-bar-animated,.nz-animate-disabled.ant-tabs.ant-tabs-bottom .ant-tabs-ink-bar-animated{transition:none}.nz-animate-disabled.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow svg{transition:none}.ant-affix{position:fixed;z-index:10}nz-affix{display:block}.ant-alert{box-sizing:border-box;margin:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;display:flex;align-items:center;padding:8px 15px;word-wrap:break-word;border-radius:2px}.ant-alert-content{flex:1;min-width:0}.ant-alert-icon{margin-right:8px}.ant-alert-description{display:none;font-size:14px;line-height:22px}.ant-alert-success{background-color:#f6ffed;border:1px solid #b7eb8f}.ant-alert-success .ant-alert-icon{color:#52c41a}.ant-alert-info{background-color:#e6f7ff;border:1px solid #91d5ff}.ant-alert-info .ant-alert-icon{color:#1890ff}.ant-alert-warning{background-color:#fffbe6;border:1px solid #ffe58f}.ant-alert-warning .ant-alert-icon{color:#faad14}.ant-alert-error{background-color:#fff2f0;border:1px solid #ffccc7}.ant-alert-error .ant-alert-icon{color:#ff4d4f}.ant-alert-error .ant-alert-description>pre{margin:0;padding:0}.ant-alert-action{margin-left:8px}.ant-alert-close-icon{margin-left:8px;padding:0;overflow:hidden;font-size:12px;line-height:12px;background-color:transparent;border:none;outline:none;cursor:pointer}.ant-alert-close-icon .anticon-close{color:#00000073;transition:color .3s}.ant-alert-close-icon .anticon-close:hover{color:#000000bf}.ant-alert-close-text{color:#00000073;transition:color .3s}.ant-alert-close-text:hover{color:#000000bf}.ant-alert-with-description{align-items:flex-start;padding:15px 15px 15px 24px}.ant-alert-with-description.ant-alert-no-icon{padding:15px}.ant-alert-with-description .ant-alert-icon{margin-right:15px;font-size:24px}.ant-alert-with-description .ant-alert-message{display:block;margin-bottom:4px;color:#000000d9;font-size:16px}.ant-alert-message{color:#000000d9}.ant-alert-with-description .ant-alert-description{display:block}.ant-alert.ant-alert-motion-leave{overflow:hidden;opacity:1;transition:max-height .3s cubic-bezier(.78,.14,.15,.86),opacity .3s cubic-bezier(.78,.14,.15,.86),padding-top .3s cubic-bezier(.78,.14,.15,.86),padding-bottom .3s cubic-bezier(.78,.14,.15,.86),margin-bottom .3s cubic-bezier(.78,.14,.15,.86)}.ant-alert.ant-alert-motion-leave-active{max-height:0;margin-bottom:0!important;padding-top:0;padding-bottom:0;opacity:0}.ant-alert-banner{margin-bottom:0;border:0;border-radius:0}.ant-alert.ant-alert-rtl{direction:rtl}.ant-alert-rtl .ant-alert-icon{margin-right:auto;margin-left:8px}.ant-alert-rtl .ant-alert-action,.ant-alert-rtl .ant-alert-close-icon{margin-right:8px;margin-left:auto}.ant-alert-rtl.ant-alert-with-description{padding-right:24px;padding-left:15px}.ant-alert-rtl.ant-alert-with-description .ant-alert-icon{margin-right:auto;margin-left:15px}nz-alert{display:block}.ant-alert-icon{line-height:1}.ant-anchor{box-sizing:border-box;margin:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;padding:0 0 0 2px}.ant-anchor-wrapper{margin-left:-4px;padding-left:4px;overflow:auto;background-color:transparent}.ant-anchor-ink{position:absolute;top:0;left:0;height:100%}.ant-anchor-ink:before{position:relative;display:block;width:2px;height:100%;margin:0 auto;background-color:#f0f0f0;content:" "}.ant-anchor-ink-ball{position:absolute;left:50%;display:none;width:8px;height:8px;background-color:#fff;border:2px solid #1890ff;border-radius:8px;transform:translate(-50%);transition:top .3s ease-in-out}.ant-anchor-ink-ball.visible{display:inline-block}.ant-anchor-fixed .ant-anchor-ink .ant-anchor-ink-ball{display:none}.ant-anchor-link{padding:4px 0 4px 16px}.ant-anchor-link-title{position:relative;display:block;margin-bottom:3px;overflow:hidden;color:#000000d9;white-space:nowrap;text-overflow:ellipsis;transition:all .3s}.ant-anchor-link-title:only-child{margin-bottom:0}.ant-anchor-link-active>.ant-anchor-link-title{color:#1890ff}.ant-anchor-link .ant-anchor-link{padding-top:2px;padding-bottom:2px}.ant-anchor-rtl{direction:rtl}.ant-anchor-rtl.ant-anchor-wrapper{margin-right:-4px;margin-left:0;padding-right:4px;padding-left:0}.ant-anchor-rtl .ant-anchor-ink{right:0;left:auto}.ant-anchor-rtl .ant-anchor-ink-ball{right:50%;left:0;transform:translate(50%)}.ant-anchor-rtl .ant-anchor-link{padding:4px 16px 4px 0}nz-link{display:block}.ant-avatar{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;display:inline-block;overflow:hidden;color:#fff;white-space:nowrap;text-align:center;vertical-align:middle;background:#ccc;width:32px;height:32px;line-height:32px;border-radius:50%}.ant-avatar-image{background:transparent}.ant-avatar .ant-image-img{display:block}.ant-avatar-string{position:absolute;left:50%;transform-origin:0 center}.ant-avatar.ant-avatar-icon{font-size:18px}.ant-avatar.ant-avatar-icon>.anticon{margin:0}.ant-avatar-lg{width:40px;height:40px;line-height:40px;border-radius:50%}.ant-avatar-lg-string{position:absolute;left:50%;transform-origin:0 center}.ant-avatar-lg.ant-avatar-icon{font-size:24px}.ant-avatar-lg.ant-avatar-icon>.anticon{margin:0}.ant-avatar-sm{width:24px;height:24px;line-height:24px;border-radius:50%}.ant-avatar-sm-string{position:absolute;left:50%;transform-origin:0 center}.ant-avatar-sm.ant-avatar-icon{font-size:14px}.ant-avatar-sm.ant-avatar-icon>.anticon{margin:0}.ant-avatar-square{border-radius:2px}.ant-avatar>img{display:block;width:100%;height:100%;object-fit:cover}.ant-avatar-group{display:inline-flex}.ant-avatar-group .ant-avatar{border:1px solid #fff}.ant-avatar-group .ant-avatar:not(:first-child){margin-left:-8px}.ant-avatar-group-popover .ant-avatar+.ant-avatar{margin-left:3px}.ant-avatar-group-rtl .ant-avatar:not(:first-child){margin-right:-8px;margin-left:0}.ant-avatar-group-popover.ant-popover-rtl .ant-avatar+.ant-avatar{margin-right:3px;margin-left:0}.ant-back-top{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:fixed;right:100px;bottom:50px;z-index:10;width:40px;height:40px;cursor:pointer}.ant-back-top:empty{display:none}.ant-back-top-rtl{right:auto;left:100px;direction:rtl}.ant-back-top-content{width:40px;height:40px;overflow:hidden;color:#fff;text-align:center;background-color:#00000073;border-radius:20px;transition:all .3s}.ant-back-top-content:hover{background-color:#000000d9;transition:all .3s}.ant-back-top-icon{font-size:24px;line-height:40px}@media screen and (max-width: 768px){.ant-back-top{right:60px}.ant-back-top-rtl{right:auto;left:60px}}@media screen and (max-width: 480px){.ant-back-top{right:20px}.ant-back-top-rtl{right:auto;left:20px}}.ant-badge{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;display:inline-block;line-height:1}.ant-badge-count{z-index:auto;min-width:20px;height:20px;padding:0 6px;color:#fff;font-weight:400;font-size:12px;line-height:20px;white-space:nowrap;text-align:center;background:#ff4d4f;border-radius:10px;box-shadow:0 0 0 1px #fff}.ant-badge-count a,.ant-badge-count a:hover{color:#fff}.ant-badge-count-sm{min-width:14px;height:14px;padding:0;font-size:12px;line-height:14px;border-radius:7px}.ant-badge-multiple-words{padding:0 8px}.ant-badge-dot{z-index:auto;width:6px;min-width:6px;height:6px;background:#ff4d4f;border-radius:100%;box-shadow:0 0 0 1px #fff}.ant-badge-dot.ant-scroll-number{transition:background 1.5s}.ant-badge-count,.ant-badge-dot,.ant-badge .ant-scroll-number-custom-component{position:absolute;top:0;right:0;transform:translate(50%,-50%);transform-origin:100% 0%}.ant-badge-count.anticon-spin,.ant-badge-dot.anticon-spin,.ant-badge .ant-scroll-number-custom-component.anticon-spin{animation:antBadgeLoadingCircle 1s infinite linear}.ant-badge-status{line-height:inherit;vertical-align:baseline}.ant-badge-status-dot{position:relative;top:-1px;display:inline-block;width:6px;height:6px;vertical-align:middle;border-radius:50%}.ant-badge-status-success{background-color:#52c41a}.ant-badge-status-processing{position:relative;background-color:#1890ff}.ant-badge-status-processing:after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #1890ff;border-radius:50%;animation:antStatusProcessing 1.2s infinite ease-in-out;content:""}.ant-badge-status-default{background-color:#d9d9d9}.ant-badge-status-error{background-color:#ff4d4f}.ant-badge-status-warning{background-color:#faad14}.ant-badge-status-pink,.ant-badge-status-magenta{background:#eb2f96}.ant-badge-status-red{background:#f5222d}.ant-badge-status-volcano{background:#fa541c}.ant-badge-status-orange{background:#fa8c16}.ant-badge-status-yellow{background:#fadb14}.ant-badge-status-gold{background:#faad14}.ant-badge-status-cyan{background:#13c2c2}.ant-badge-status-lime{background:#a0d911}.ant-badge-status-green{background:#52c41a}.ant-badge-status-blue{background:#1890ff}.ant-badge-status-geekblue{background:#2f54eb}.ant-badge-status-purple{background:#722ed1}.ant-badge-status-text{margin-left:8px;color:#000000d9;font-size:14px}.ant-badge-zoom-appear,.ant-badge-zoom-enter{animation:antZoomBadgeIn .3s cubic-bezier(.12,.4,.29,1.46);animation-fill-mode:both}.ant-badge-zoom-leave{animation:antZoomBadgeOut .3s cubic-bezier(.71,-.46,.88,.6);animation-fill-mode:both}.ant-badge-not-a-wrapper .ant-badge-zoom-appear,.ant-badge-not-a-wrapper .ant-badge-zoom-enter{animation:antNoWrapperZoomBadgeIn .3s cubic-bezier(.12,.4,.29,1.46)}.ant-badge-not-a-wrapper .ant-badge-zoom-leave{animation:antNoWrapperZoomBadgeOut .3s cubic-bezier(.71,-.46,.88,.6)}.ant-badge-not-a-wrapper:not(.ant-badge-status){vertical-align:middle}.ant-badge-not-a-wrapper .ant-scroll-number-custom-component,.ant-badge-not-a-wrapper .ant-badge-count{transform:none}.ant-badge-not-a-wrapper .ant-scroll-number-custom-component,.ant-badge-not-a-wrapper .ant-scroll-number{position:relative;top:auto;display:block;transform-origin:50% 50%}@keyframes antStatusProcessing{0%{transform:scale(.8);opacity:.5}to{transform:scale(2.4);opacity:0}}.ant-scroll-number{overflow:hidden;direction:ltr}.ant-scroll-number-only{position:relative;display:inline-block;height:20px;transition:all .3s cubic-bezier(.645,.045,.355,1);-webkit-transform-style:preserve-3d;-webkit-backface-visibility:hidden}.ant-scroll-number-only>p.ant-scroll-number-only-unit{height:20px;margin:0;-webkit-transform-style:preserve-3d;-webkit-backface-visibility:hidden}.ant-scroll-number-symbol{vertical-align:top}@keyframes antZoomBadgeIn{0%{transform:scale(0) translate(50%,-50%);opacity:0}to{transform:scale(1) translate(50%,-50%)}}@keyframes antZoomBadgeOut{0%{transform:scale(1) translate(50%,-50%)}to{transform:scale(0) translate(50%,-50%);opacity:0}}@keyframes antNoWrapperZoomBadgeIn{0%{transform:scale(0);opacity:0}to{transform:scale(1)}}@keyframes antNoWrapperZoomBadgeOut{0%{transform:scale(1)}to{transform:scale(0);opacity:0}}@keyframes antBadgeLoadingCircle{0%{transform-origin:50%}to{transform:translate(50%,-50%) rotate(360deg);transform-origin:50%}}.ant-ribbon-wrapper{position:relative}.ant-ribbon{box-sizing:border-box;margin:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:absolute;top:8px;height:22px;padding:0 8px;color:#fff;line-height:22px;white-space:nowrap;background-color:#1890ff;border-radius:2px}.ant-ribbon-text{color:#fff}.ant-ribbon-corner{position:absolute;top:100%;width:8px;height:8px;color:currentcolor;border:4px solid;transform:scaleY(.75);transform-origin:top}.ant-ribbon-corner:after{position:absolute;top:-4px;left:-4px;width:inherit;height:inherit;color:#00000040;border:inherit;content:""}.ant-ribbon-color-pink,.ant-ribbon-color-magenta{color:#eb2f96;background:#eb2f96}.ant-ribbon-color-red{color:#f5222d;background:#f5222d}.ant-ribbon-color-volcano{color:#fa541c;background:#fa541c}.ant-ribbon-color-orange{color:#fa8c16;background:#fa8c16}.ant-ribbon-color-yellow{color:#fadb14;background:#fadb14}.ant-ribbon-color-gold{color:#faad14;background:#faad14}.ant-ribbon-color-cyan{color:#13c2c2;background:#13c2c2}.ant-ribbon-color-lime{color:#a0d911;background:#a0d911}.ant-ribbon-color-green{color:#52c41a;background:#52c41a}.ant-ribbon-color-blue{color:#1890ff;background:#1890ff}.ant-ribbon-color-geekblue{color:#2f54eb;background:#2f54eb}.ant-ribbon-color-purple{color:#722ed1;background:#722ed1}.ant-ribbon.ant-ribbon-placement-end{right:-8px;border-bottom-right-radius:0}.ant-ribbon.ant-ribbon-placement-end .ant-ribbon-corner{right:0;border-color:currentcolor transparent transparent currentcolor}.ant-ribbon.ant-ribbon-placement-start{left:-8px;border-bottom-left-radius:0}.ant-ribbon.ant-ribbon-placement-start .ant-ribbon-corner{left:0;border-color:currentcolor currentcolor transparent transparent}.ant-badge-rtl{direction:rtl}.ant-badge-rtl.ant-badge:not(.ant-badge-not-a-wrapper) .ant-badge-count,.ant-badge-rtl.ant-badge:not(.ant-badge-not-a-wrapper) .ant-badge-dot,.ant-badge-rtl.ant-badge:not(.ant-badge-not-a-wrapper) .ant-scroll-number-custom-component{right:auto;left:0;direction:ltr;transform:translate(-50%,-50%);transform-origin:0% 0%}.ant-badge-rtl.ant-badge:not(.ant-badge-not-a-wrapper) .ant-scroll-number-custom-component{right:auto;left:0;transform:translate(-50%,-50%);transform-origin:0% 0%}.ant-badge-rtl .ant-badge-status-text{margin-right:8px;margin-left:0}.ant-badge:not(.ant-badge-not-a-wrapper).ant-badge-rtl .ant-badge-zoom-appear,.ant-badge:not(.ant-badge-not-a-wrapper).ant-badge-rtl .ant-badge-zoom-enter{animation-name:antZoomBadgeInRtl}.ant-badge:not(.ant-badge-not-a-wrapper).ant-badge-rtl .ant-badge-zoom-leave{animation-name:antZoomBadgeOutRtl}.ant-ribbon-rtl{direction:rtl}.ant-ribbon-rtl.ant-ribbon-placement-end{right:unset;left:-8px;border-bottom-right-radius:2px;border-bottom-left-radius:0}.ant-ribbon-rtl.ant-ribbon-placement-end .ant-ribbon-corner{right:unset;left:0;border-color:currentcolor currentcolor transparent transparent}.ant-ribbon-rtl.ant-ribbon-placement-end .ant-ribbon-corner:after{border-color:currentcolor currentcolor transparent transparent}.ant-ribbon-rtl.ant-ribbon-placement-start{right:-8px;left:unset;border-bottom-right-radius:0;border-bottom-left-radius:2px}.ant-ribbon-rtl.ant-ribbon-placement-start .ant-ribbon-corner{right:0;left:unset;border-color:currentcolor transparent transparent currentcolor}.ant-ribbon-rtl.ant-ribbon-placement-start .ant-ribbon-corner:after{border-color:currentcolor transparent transparent currentcolor}@keyframes antZoomBadgeInRtl{0%{transform:scale(0) translate(-50%,-50%);opacity:0}to{transform:scale(1) translate(-50%,-50%)}}@keyframes antZoomBadgeOutRtl{0%{transform:scale(1) translate(-50%,-50%)}to{transform:scale(0) translate(-50%,-50%);opacity:0}}.ant-badge .ant-scroll-number:only-child{position:relative;top:auto;display:block}.ant-badge .ant-badge-count:only-child{transform:none}nz-ribbon{display:block}.ant-breadcrumb{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";color:#00000073;font-size:14px}.ant-breadcrumb .anticon{font-size:14px}.ant-breadcrumb ol{display:flex;flex-wrap:wrap;margin:0;padding:0;list-style:none}.ant-breadcrumb a{color:#00000073;transition:color .3s}.ant-breadcrumb a:hover{color:#000000d9}.ant-breadcrumb li:last-child{color:#000000d9}.ant-breadcrumb li:last-child a{color:#000000d9}li:last-child .ant-breadcrumb-separator{display:none}.ant-breadcrumb-separator{margin:0 8px;color:#00000073}.ant-breadcrumb-link>.anticon+span,.ant-breadcrumb-link>.anticon+a{margin-left:4px}.ant-breadcrumb-overlay-link>.anticon{margin-left:4px}.ant-breadcrumb-rtl{direction:rtl}.ant-breadcrumb-rtl:before{display:table;content:""}.ant-breadcrumb-rtl:after{display:table;clear:both;content:""}.ant-breadcrumb-rtl>span{float:right}.ant-breadcrumb-rtl .ant-breadcrumb-link>.anticon+span,.ant-breadcrumb-rtl .ant-breadcrumb-link>.anticon+a{margin-right:4px;margin-left:0}.ant-breadcrumb-rtl .ant-breadcrumb-overlay-link>.anticon{margin-right:4px;margin-left:0}.ant-breadcrumb-link .anticon+span{margin-left:4px}.ant-breadcrumb>nz-breadcrumb-item:last-child{color:#000000d9}.ant-breadcrumb>nz-breadcrumb-item:last-child a{color:#000000d9}.ant-breadcrumb-rtl>nz-breadcrumb-item{float:right}nz-breadcrumb{display:block}nz-breadcrumb-item:last-child .ant-breadcrumb-separator{display:none}.ant-btn{line-height:1.5715;position:relative;display:inline-block;font-weight:400;white-space:nowrap;text-align:center;background-image:none;border:1px solid transparent;box-shadow:0 2px #00000004;cursor:pointer;transition:all .3s cubic-bezier(.645,.045,.355,1);-webkit-user-select:none;user-select:none;touch-action:manipulation;height:32px;padding:4px 15px;font-size:14px;border-radius:2px;color:#000000d9;border-color:#d9d9d9;background:#fff}.ant-btn>.anticon{line-height:1}.ant-btn,.ant-btn:active,.ant-btn:focus{outline:0}.ant-btn:not([disabled]):hover{text-decoration:none}.ant-btn:not([disabled]):active{outline:0;box-shadow:none}.ant-btn[disabled]{cursor:not-allowed}.ant-btn[disabled]>*{pointer-events:none}.ant-btn-lg{height:40px;padding:6.4px 15px;font-size:16px;border-radius:2px}.ant-btn-sm{height:24px;padding:0 7px;font-size:14px;border-radius:2px}.ant-btn>a:only-child{color:currentcolor}.ant-btn>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn:hover,.ant-btn:focus{color:#40a9ff;border-color:#40a9ff;background:#fff}.ant-btn:hover>a:only-child,.ant-btn:focus>a:only-child{color:currentcolor}.ant-btn:hover>a:only-child:after,.ant-btn:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn:active{color:#096dd9;border-color:#096dd9;background:#fff}.ant-btn:active>a:only-child{color:currentcolor}.ant-btn:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn[disabled],.ant-btn[disabled]:hover,.ant-btn[disabled]:focus,.ant-btn[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn[disabled]>a:only-child,.ant-btn[disabled]:hover>a:only-child,.ant-btn[disabled]:focus>a:only-child,.ant-btn[disabled]:active>a:only-child{color:currentcolor}.ant-btn[disabled]>a:only-child:after,.ant-btn[disabled]:hover>a:only-child:after,.ant-btn[disabled]:focus>a:only-child:after,.ant-btn[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn:hover,.ant-btn:focus,.ant-btn:active{text-decoration:none;background:#fff}.ant-btn>span{display:inline-block}.ant-btn-primary{color:#fff;border-color:#1890ff;background:#1890ff;text-shadow:0 -1px 0 rgba(0,0,0,.12);box-shadow:0 2px #0000000b}.ant-btn-primary>a:only-child{color:currentcolor}.ant-btn-primary>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-primary:hover,.ant-btn-primary:focus{color:#fff;border-color:#40a9ff;background:#40a9ff}.ant-btn-primary:hover>a:only-child,.ant-btn-primary:focus>a:only-child{color:currentcolor}.ant-btn-primary:hover>a:only-child:after,.ant-btn-primary:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-primary:active{color:#fff;border-color:#096dd9;background:#096dd9}.ant-btn-primary:active>a:only-child{color:currentcolor}.ant-btn-primary:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-primary[disabled],.ant-btn-primary[disabled]:hover,.ant-btn-primary[disabled]:focus,.ant-btn-primary[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-primary[disabled]>a:only-child,.ant-btn-primary[disabled]:hover>a:only-child,.ant-btn-primary[disabled]:focus>a:only-child,.ant-btn-primary[disabled]:active>a:only-child{color:currentcolor}.ant-btn-primary[disabled]>a:only-child:after,.ant-btn-primary[disabled]:hover>a:only-child:after,.ant-btn-primary[disabled]:focus>a:only-child:after,.ant-btn-primary[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-group .ant-btn-primary:not(:first-child):not(:last-child){border-right-color:#40a9ff;border-left-color:#40a9ff}.ant-btn-group .ant-btn-primary:not(:first-child):not(:last-child):disabled{border-color:#d9d9d9}.ant-btn-group .ant-btn-primary:first-child:not(:last-child){border-right-color:#40a9ff}.ant-btn-group .ant-btn-primary:first-child:not(:last-child)[disabled]{border-right-color:#d9d9d9}.ant-btn-group .ant-btn-primary:last-child:not(:first-child),.ant-btn-group .ant-btn-primary+.ant-btn-primary{border-left-color:#40a9ff}.ant-btn-group .ant-btn-primary:last-child:not(:first-child)[disabled],.ant-btn-group .ant-btn-primary+.ant-btn-primary[disabled]{border-left-color:#d9d9d9}.ant-btn-ghost{color:#000000d9;border-color:#d9d9d9;background:transparent}.ant-btn-ghost>a:only-child{color:currentcolor}.ant-btn-ghost>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-ghost:hover,.ant-btn-ghost:focus{color:#40a9ff;border-color:#40a9ff;background:transparent}.ant-btn-ghost:hover>a:only-child,.ant-btn-ghost:focus>a:only-child{color:currentcolor}.ant-btn-ghost:hover>a:only-child:after,.ant-btn-ghost:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-ghost:active{color:#096dd9;border-color:#096dd9;background:transparent}.ant-btn-ghost:active>a:only-child{color:currentcolor}.ant-btn-ghost:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-ghost[disabled],.ant-btn-ghost[disabled]:hover,.ant-btn-ghost[disabled]:focus,.ant-btn-ghost[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-ghost[disabled]>a:only-child,.ant-btn-ghost[disabled]:hover>a:only-child,.ant-btn-ghost[disabled]:focus>a:only-child,.ant-btn-ghost[disabled]:active>a:only-child{color:currentcolor}.ant-btn-ghost[disabled]>a:only-child:after,.ant-btn-ghost[disabled]:hover>a:only-child:after,.ant-btn-ghost[disabled]:focus>a:only-child:after,.ant-btn-ghost[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dashed{color:#000000d9;border-color:#d9d9d9;background:#fff;border-style:dashed}.ant-btn-dashed>a:only-child{color:currentcolor}.ant-btn-dashed>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dashed:hover,.ant-btn-dashed:focus{color:#40a9ff;border-color:#40a9ff;background:#fff}.ant-btn-dashed:hover>a:only-child,.ant-btn-dashed:focus>a:only-child{color:currentcolor}.ant-btn-dashed:hover>a:only-child:after,.ant-btn-dashed:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dashed:active{color:#096dd9;border-color:#096dd9;background:#fff}.ant-btn-dashed:active>a:only-child{color:currentcolor}.ant-btn-dashed:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dashed[disabled],.ant-btn-dashed[disabled]:hover,.ant-btn-dashed[disabled]:focus,.ant-btn-dashed[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-dashed[disabled]>a:only-child,.ant-btn-dashed[disabled]:hover>a:only-child,.ant-btn-dashed[disabled]:focus>a:only-child,.ant-btn-dashed[disabled]:active>a:only-child{color:currentcolor}.ant-btn-dashed[disabled]>a:only-child:after,.ant-btn-dashed[disabled]:hover>a:only-child:after,.ant-btn-dashed[disabled]:focus>a:only-child:after,.ant-btn-dashed[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-danger{color:#fff;border-color:#ff4d4f;background:#ff4d4f;text-shadow:0 -1px 0 rgba(0,0,0,.12);box-shadow:0 2px #0000000b}.ant-btn-danger>a:only-child{color:currentcolor}.ant-btn-danger>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-danger:hover,.ant-btn-danger:focus{color:#fff;border-color:#ff7875;background:#ff7875}.ant-btn-danger:hover>a:only-child,.ant-btn-danger:focus>a:only-child{color:currentcolor}.ant-btn-danger:hover>a:only-child:after,.ant-btn-danger:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-danger:active{color:#fff;border-color:#d9363e;background:#d9363e}.ant-btn-danger:active>a:only-child{color:currentcolor}.ant-btn-danger:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-danger[disabled],.ant-btn-danger[disabled]:hover,.ant-btn-danger[disabled]:focus,.ant-btn-danger[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-danger[disabled]>a:only-child,.ant-btn-danger[disabled]:hover>a:only-child,.ant-btn-danger[disabled]:focus>a:only-child,.ant-btn-danger[disabled]:active>a:only-child{color:currentcolor}.ant-btn-danger[disabled]>a:only-child:after,.ant-btn-danger[disabled]:hover>a:only-child:after,.ant-btn-danger[disabled]:focus>a:only-child:after,.ant-btn-danger[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-link{color:#1890ff;border-color:transparent;background:transparent;box-shadow:none}.ant-btn-link>a:only-child{color:currentcolor}.ant-btn-link>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-link:hover,.ant-btn-link:focus{color:#40a9ff;border-color:#40a9ff;background:transparent}.ant-btn-link:hover>a:only-child,.ant-btn-link:focus>a:only-child{color:currentcolor}.ant-btn-link:hover>a:only-child:after,.ant-btn-link:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-link:active{color:#096dd9;border-color:#096dd9;background:transparent}.ant-btn-link:active>a:only-child{color:currentcolor}.ant-btn-link:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-link[disabled],.ant-btn-link[disabled]:hover,.ant-btn-link[disabled]:focus,.ant-btn-link[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-link:hover{background:transparent}.ant-btn-link:hover,.ant-btn-link:focus,.ant-btn-link:active{border-color:transparent}.ant-btn-link[disabled],.ant-btn-link[disabled]:hover,.ant-btn-link[disabled]:focus,.ant-btn-link[disabled]:active{color:#00000040;border-color:transparent;background:transparent;text-shadow:none;box-shadow:none}.ant-btn-link[disabled]>a:only-child,.ant-btn-link[disabled]:hover>a:only-child,.ant-btn-link[disabled]:focus>a:only-child,.ant-btn-link[disabled]:active>a:only-child{color:currentcolor}.ant-btn-link[disabled]>a:only-child:after,.ant-btn-link[disabled]:hover>a:only-child:after,.ant-btn-link[disabled]:focus>a:only-child:after,.ant-btn-link[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-text{color:#000000d9;border-color:transparent;background:transparent;box-shadow:none}.ant-btn-text>a:only-child{color:currentcolor}.ant-btn-text>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-text:hover,.ant-btn-text:focus{color:#40a9ff;border-color:#40a9ff;background:transparent}.ant-btn-text:hover>a:only-child,.ant-btn-text:focus>a:only-child{color:currentcolor}.ant-btn-text:hover>a:only-child:after,.ant-btn-text:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-text:active{color:#096dd9;border-color:#096dd9;background:transparent}.ant-btn-text:active>a:only-child{color:currentcolor}.ant-btn-text:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-text[disabled],.ant-btn-text[disabled]:hover,.ant-btn-text[disabled]:focus,.ant-btn-text[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-text:hover,.ant-btn-text:focus{color:#000000d9;background:rgba(0,0,0,.018);border-color:transparent}.ant-btn-text:active{color:#000000d9;background:rgba(0,0,0,.028);border-color:transparent}.ant-btn-text[disabled],.ant-btn-text[disabled]:hover,.ant-btn-text[disabled]:focus,.ant-btn-text[disabled]:active{color:#00000040;border-color:transparent;background:transparent;text-shadow:none;box-shadow:none}.ant-btn-text[disabled]>a:only-child,.ant-btn-text[disabled]:hover>a:only-child,.ant-btn-text[disabled]:focus>a:only-child,.ant-btn-text[disabled]:active>a:only-child{color:currentcolor}.ant-btn-text[disabled]>a:only-child:after,.ant-btn-text[disabled]:hover>a:only-child:after,.ant-btn-text[disabled]:focus>a:only-child:after,.ant-btn-text[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous{color:#ff4d4f;border-color:#ff4d4f;background:#fff}.ant-btn-dangerous>a:only-child{color:currentcolor}.ant-btn-dangerous>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous:hover,.ant-btn-dangerous:focus{color:#ff7875;border-color:#ff7875;background:#fff}.ant-btn-dangerous:hover>a:only-child,.ant-btn-dangerous:focus>a:only-child{color:currentcolor}.ant-btn-dangerous:hover>a:only-child:after,.ant-btn-dangerous:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous:active{color:#d9363e;border-color:#d9363e;background:#fff}.ant-btn-dangerous:active>a:only-child{color:currentcolor}.ant-btn-dangerous:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous[disabled],.ant-btn-dangerous[disabled]:hover,.ant-btn-dangerous[disabled]:focus,.ant-btn-dangerous[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-dangerous[disabled]>a:only-child,.ant-btn-dangerous[disabled]:hover>a:only-child,.ant-btn-dangerous[disabled]:focus>a:only-child,.ant-btn-dangerous[disabled]:active>a:only-child{color:currentcolor}.ant-btn-dangerous[disabled]>a:only-child:after,.ant-btn-dangerous[disabled]:hover>a:only-child:after,.ant-btn-dangerous[disabled]:focus>a:only-child:after,.ant-btn-dangerous[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous.ant-btn-primary{color:#fff;border-color:#ff4d4f;background:#ff4d4f;text-shadow:0 -1px 0 rgba(0,0,0,.12);box-shadow:0 2px #0000000b}.ant-btn-dangerous.ant-btn-primary>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-primary>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous.ant-btn-primary:hover,.ant-btn-dangerous.ant-btn-primary:focus{color:#fff;border-color:#ff7875;background:#ff7875}.ant-btn-dangerous.ant-btn-primary:hover>a:only-child,.ant-btn-dangerous.ant-btn-primary:focus>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-primary:hover>a:only-child:after,.ant-btn-dangerous.ant-btn-primary:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous.ant-btn-primary:active{color:#fff;border-color:#d9363e;background:#d9363e}.ant-btn-dangerous.ant-btn-primary:active>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-primary:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous.ant-btn-primary[disabled],.ant-btn-dangerous.ant-btn-primary[disabled]:hover,.ant-btn-dangerous.ant-btn-primary[disabled]:focus,.ant-btn-dangerous.ant-btn-primary[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-dangerous.ant-btn-primary[disabled]>a:only-child,.ant-btn-dangerous.ant-btn-primary[disabled]:hover>a:only-child,.ant-btn-dangerous.ant-btn-primary[disabled]:focus>a:only-child,.ant-btn-dangerous.ant-btn-primary[disabled]:active>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-primary[disabled]>a:only-child:after,.ant-btn-dangerous.ant-btn-primary[disabled]:hover>a:only-child:after,.ant-btn-dangerous.ant-btn-primary[disabled]:focus>a:only-child:after,.ant-btn-dangerous.ant-btn-primary[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous.ant-btn-link{color:#ff4d4f;border-color:transparent;background:transparent;box-shadow:none}.ant-btn-dangerous.ant-btn-link>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-link>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous.ant-btn-link:hover,.ant-btn-dangerous.ant-btn-link:focus{color:#40a9ff;border-color:#40a9ff;background:transparent}.ant-btn-dangerous.ant-btn-link:active{color:#096dd9;border-color:#096dd9;background:transparent}.ant-btn-dangerous.ant-btn-link[disabled],.ant-btn-dangerous.ant-btn-link[disabled]:hover,.ant-btn-dangerous.ant-btn-link[disabled]:focus,.ant-btn-dangerous.ant-btn-link[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-dangerous.ant-btn-link:hover,.ant-btn-dangerous.ant-btn-link:focus{color:#ff7875;border-color:transparent;background:transparent}.ant-btn-dangerous.ant-btn-link:hover>a:only-child,.ant-btn-dangerous.ant-btn-link:focus>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-link:hover>a:only-child:after,.ant-btn-dangerous.ant-btn-link:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous.ant-btn-link:active{color:#d9363e;border-color:transparent;background:transparent}.ant-btn-dangerous.ant-btn-link:active>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-link:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous.ant-btn-link[disabled],.ant-btn-dangerous.ant-btn-link[disabled]:hover,.ant-btn-dangerous.ant-btn-link[disabled]:focus,.ant-btn-dangerous.ant-btn-link[disabled]:active{color:#00000040;border-color:transparent;background:transparent;text-shadow:none;box-shadow:none}.ant-btn-dangerous.ant-btn-link[disabled]>a:only-child,.ant-btn-dangerous.ant-btn-link[disabled]:hover>a:only-child,.ant-btn-dangerous.ant-btn-link[disabled]:focus>a:only-child,.ant-btn-dangerous.ant-btn-link[disabled]:active>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-link[disabled]>a:only-child:after,.ant-btn-dangerous.ant-btn-link[disabled]:hover>a:only-child:after,.ant-btn-dangerous.ant-btn-link[disabled]:focus>a:only-child:after,.ant-btn-dangerous.ant-btn-link[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous.ant-btn-text{color:#ff4d4f;border-color:transparent;background:transparent;box-shadow:none}.ant-btn-dangerous.ant-btn-text>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-text>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous.ant-btn-text:hover,.ant-btn-dangerous.ant-btn-text:focus{color:#40a9ff;border-color:#40a9ff;background:transparent}.ant-btn-dangerous.ant-btn-text:active{color:#096dd9;border-color:#096dd9;background:transparent}.ant-btn-dangerous.ant-btn-text[disabled],.ant-btn-dangerous.ant-btn-text[disabled]:hover,.ant-btn-dangerous.ant-btn-text[disabled]:focus,.ant-btn-dangerous.ant-btn-text[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-dangerous.ant-btn-text:hover,.ant-btn-dangerous.ant-btn-text:focus{color:#ff7875;border-color:transparent;background:rgba(0,0,0,.018)}.ant-btn-dangerous.ant-btn-text:hover>a:only-child,.ant-btn-dangerous.ant-btn-text:focus>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-text:hover>a:only-child:after,.ant-btn-dangerous.ant-btn-text:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous.ant-btn-text:active{color:#d9363e;border-color:transparent;background:rgba(0,0,0,.028)}.ant-btn-dangerous.ant-btn-text:active>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-text:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-dangerous.ant-btn-text[disabled],.ant-btn-dangerous.ant-btn-text[disabled]:hover,.ant-btn-dangerous.ant-btn-text[disabled]:focus,.ant-btn-dangerous.ant-btn-text[disabled]:active{color:#00000040;border-color:transparent;background:transparent;text-shadow:none;box-shadow:none}.ant-btn-dangerous.ant-btn-text[disabled]>a:only-child,.ant-btn-dangerous.ant-btn-text[disabled]:hover>a:only-child,.ant-btn-dangerous.ant-btn-text[disabled]:focus>a:only-child,.ant-btn-dangerous.ant-btn-text[disabled]:active>a:only-child{color:currentcolor}.ant-btn-dangerous.ant-btn-text[disabled]>a:only-child:after,.ant-btn-dangerous.ant-btn-text[disabled]:hover>a:only-child:after,.ant-btn-dangerous.ant-btn-text[disabled]:focus>a:only-child:after,.ant-btn-dangerous.ant-btn-text[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-icon-only{width:32px;height:32px;padding:2.4px 0;font-size:16px;border-radius:2px;vertical-align:-3px}.ant-btn-icon-only>*{font-size:16px}.ant-btn-icon-only.ant-btn-lg{width:40px;height:40px;padding:4.9px 0;font-size:18px;border-radius:2px}.ant-btn-icon-only.ant-btn-lg>*{font-size:18px}.ant-btn-icon-only.ant-btn-sm{width:24px;height:24px;padding:0;font-size:14px;border-radius:2px}.ant-btn-icon-only.ant-btn-sm>*{font-size:14px}.ant-btn-icon-only>.anticon{display:flex;justify-content:center}a.ant-btn-icon-only{vertical-align:-1px}a.ant-btn-icon-only>.anticon{display:inline}.ant-btn-round{height:32px;padding:4px 16px;font-size:14px;border-radius:32px}.ant-btn-round.ant-btn-lg{height:40px;padding:6.4px 20px;font-size:16px;border-radius:40px}.ant-btn-round.ant-btn-sm{height:24px;padding:0 12px;font-size:14px;border-radius:24px}.ant-btn-round.ant-btn-icon-only{width:auto}.ant-btn-circle{min-width:32px;padding-right:0;padding-left:0;text-align:center;border-radius:50%}.ant-btn-circle.ant-btn-lg{min-width:40px;border-radius:50%}.ant-btn-circle.ant-btn-sm{min-width:24px;border-radius:50%}.ant-btn:before{position:absolute;inset:-1px;z-index:1;display:none;background:#fff;border-radius:inherit;opacity:.35;transition:opacity .2s;content:"";pointer-events:none}.ant-btn .anticon{transition:margin-left .3s cubic-bezier(.645,.045,.355,1)}.ant-btn .anticon.anticon-plus>svg,.ant-btn .anticon.anticon-minus>svg{shape-rendering:optimizespeed}.ant-btn.ant-btn-loading{position:relative;cursor:default}.ant-btn.ant-btn-loading:before{display:block}.ant-btn>.ant-btn-loading-icon{transition:width .3s cubic-bezier(.645,.045,.355,1),opacity .3s cubic-bezier(.645,.045,.355,1)}.ant-btn>.ant-btn-loading-icon .anticon{padding-right:8px;animation:none}.ant-btn>.ant-btn-loading-icon .anticon svg{animation:loadingCircle 1s infinite linear}.ant-btn>.ant-btn-loading-icon:only-child .anticon{padding-right:0}.ant-btn-group{position:relative;display:inline-flex}.ant-btn-group>.ant-btn,.ant-btn-group>span>.ant-btn{position:relative}.ant-btn-group>.ant-btn:hover,.ant-btn-group>span>.ant-btn:hover,.ant-btn-group>.ant-btn:focus,.ant-btn-group>span>.ant-btn:focus,.ant-btn-group>.ant-btn:active,.ant-btn-group>span>.ant-btn:active{z-index:2}.ant-btn-group>.ant-btn[disabled],.ant-btn-group>span>.ant-btn[disabled]{z-index:0}.ant-btn-group .ant-btn-icon-only{font-size:14px}.ant-btn-group .ant-btn+.ant-btn,.ant-btn+.ant-btn-group,.ant-btn-group span+.ant-btn,.ant-btn-group .ant-btn+span,.ant-btn-group>span+span,.ant-btn-group+.ant-btn,.ant-btn-group+.ant-btn-group{margin-left:-1px}.ant-btn-group .ant-btn-primary+.ant-btn:not(.ant-btn-primary):not([disabled]){border-left-color:transparent}.ant-btn-group .ant-btn{border-radius:0}.ant-btn-group>.ant-btn:first-child,.ant-btn-group>span:first-child>.ant-btn{margin-left:0}.ant-btn-group>.ant-btn:only-child{border-radius:2px}.ant-btn-group>span:only-child>.ant-btn{border-radius:2px}.ant-btn-group>.ant-btn:first-child:not(:last-child),.ant-btn-group>span:first-child:not(:last-child)>.ant-btn{border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-btn-group>.ant-btn:last-child:not(:first-child),.ant-btn-group>span:last-child:not(:first-child)>.ant-btn{border-top-right-radius:2px;border-bottom-right-radius:2px}.ant-btn-group-sm>.ant-btn:only-child{border-radius:2px}.ant-btn-group-sm>span:only-child>.ant-btn{border-radius:2px}.ant-btn-group-sm>.ant-btn:first-child:not(:last-child),.ant-btn-group-sm>span:first-child:not(:last-child)>.ant-btn{border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-btn-group-sm>.ant-btn:last-child:not(:first-child),.ant-btn-group-sm>span:last-child:not(:first-child)>.ant-btn{border-top-right-radius:2px;border-bottom-right-radius:2px}.ant-btn-group>.ant-btn-group{float:left}.ant-btn-group>.ant-btn-group:not(:first-child):not(:last-child)>.ant-btn{border-radius:0}.ant-btn-group>.ant-btn-group:first-child:not(:last-child)>.ant-btn:last-child{padding-right:8px;border-top-right-radius:0;border-bottom-right-radius:0}.ant-btn-group>.ant-btn-group:last-child:not(:first-child)>.ant-btn:first-child{padding-left:8px;border-top-left-radius:0;border-bottom-left-radius:0}.ant-btn-rtl.ant-btn-group .ant-btn+.ant-btn,.ant-btn-rtl.ant-btn+.ant-btn-group,.ant-btn-rtl.ant-btn-group span+.ant-btn,.ant-btn-rtl.ant-btn-group .ant-btn+span,.ant-btn-rtl.ant-btn-group>span+span,.ant-btn-rtl.ant-btn-group+.ant-btn,.ant-btn-rtl.ant-btn-group+.ant-btn-group,.ant-btn-group-rtl.ant-btn-group .ant-btn+.ant-btn,.ant-btn-group-rtl.ant-btn+.ant-btn-group,.ant-btn-group-rtl.ant-btn-group span+.ant-btn,.ant-btn-group-rtl.ant-btn-group .ant-btn+span,.ant-btn-group-rtl.ant-btn-group>span+span,.ant-btn-group-rtl.ant-btn-group+.ant-btn,.ant-btn-group-rtl.ant-btn-group+.ant-btn-group{margin-right:-1px;margin-left:auto}.ant-btn-group.ant-btn-group-rtl{direction:rtl}.ant-btn-group-rtl.ant-btn-group>.ant-btn:first-child:not(:last-child),.ant-btn-group-rtl.ant-btn-group>span:first-child:not(:last-child)>.ant-btn{border-radius:0 2px 2px 0}.ant-btn-group-rtl.ant-btn-group>.ant-btn:last-child:not(:first-child),.ant-btn-group-rtl.ant-btn-group>span:last-child:not(:first-child)>.ant-btn{border-radius:2px 0 0 2px}.ant-btn-group-rtl.ant-btn-group-sm>.ant-btn:first-child:not(:last-child),.ant-btn-group-rtl.ant-btn-group-sm>span:first-child:not(:last-child)>.ant-btn{border-radius:0 2px 2px 0}.ant-btn-group-rtl.ant-btn-group-sm>.ant-btn:last-child:not(:first-child),.ant-btn-group-rtl.ant-btn-group-sm>span:last-child:not(:first-child)>.ant-btn{border-radius:2px 0 0 2px}.ant-btn:focus>span,.ant-btn:active>span{position:relative}.ant-btn>.anticon+span,.ant-btn>span+.anticon{margin-left:8px}.ant-btn.ant-btn-background-ghost{color:#fff;border-color:#fff}.ant-btn.ant-btn-background-ghost,.ant-btn.ant-btn-background-ghost:hover,.ant-btn.ant-btn-background-ghost:active,.ant-btn.ant-btn-background-ghost:focus{background:transparent}.ant-btn.ant-btn-background-ghost:hover,.ant-btn.ant-btn-background-ghost:focus{color:#40a9ff;border-color:#40a9ff}.ant-btn.ant-btn-background-ghost:active{color:#096dd9;border-color:#096dd9}.ant-btn.ant-btn-background-ghost[disabled]{color:#00000040;background:transparent;border-color:#d9d9d9}.ant-btn-background-ghost.ant-btn-primary{color:#1890ff;border-color:#1890ff;text-shadow:none}.ant-btn-background-ghost.ant-btn-primary>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-primary>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-primary:hover,.ant-btn-background-ghost.ant-btn-primary:focus{color:#40a9ff;border-color:#40a9ff}.ant-btn-background-ghost.ant-btn-primary:hover>a:only-child,.ant-btn-background-ghost.ant-btn-primary:focus>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-primary:hover>a:only-child:after,.ant-btn-background-ghost.ant-btn-primary:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-primary:active{color:#096dd9;border-color:#096dd9}.ant-btn-background-ghost.ant-btn-primary:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-primary:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-primary[disabled],.ant-btn-background-ghost.ant-btn-primary[disabled]:hover,.ant-btn-background-ghost.ant-btn-primary[disabled]:focus,.ant-btn-background-ghost.ant-btn-primary[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-background-ghost.ant-btn-primary[disabled]>a:only-child,.ant-btn-background-ghost.ant-btn-primary[disabled]:hover>a:only-child,.ant-btn-background-ghost.ant-btn-primary[disabled]:focus>a:only-child,.ant-btn-background-ghost.ant-btn-primary[disabled]:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-primary[disabled]>a:only-child:after,.ant-btn-background-ghost.ant-btn-primary[disabled]:hover>a:only-child:after,.ant-btn-background-ghost.ant-btn-primary[disabled]:focus>a:only-child:after,.ant-btn-background-ghost.ant-btn-primary[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-danger{color:#ff4d4f;border-color:#ff4d4f;text-shadow:none}.ant-btn-background-ghost.ant-btn-danger>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-danger>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-danger:hover,.ant-btn-background-ghost.ant-btn-danger:focus{color:#ff7875;border-color:#ff7875}.ant-btn-background-ghost.ant-btn-danger:hover>a:only-child,.ant-btn-background-ghost.ant-btn-danger:focus>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-danger:hover>a:only-child:after,.ant-btn-background-ghost.ant-btn-danger:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-danger:active{color:#d9363e;border-color:#d9363e}.ant-btn-background-ghost.ant-btn-danger:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-danger:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-danger[disabled],.ant-btn-background-ghost.ant-btn-danger[disabled]:hover,.ant-btn-background-ghost.ant-btn-danger[disabled]:focus,.ant-btn-background-ghost.ant-btn-danger[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-background-ghost.ant-btn-danger[disabled]>a:only-child,.ant-btn-background-ghost.ant-btn-danger[disabled]:hover>a:only-child,.ant-btn-background-ghost.ant-btn-danger[disabled]:focus>a:only-child,.ant-btn-background-ghost.ant-btn-danger[disabled]:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-danger[disabled]>a:only-child:after,.ant-btn-background-ghost.ant-btn-danger[disabled]:hover>a:only-child:after,.ant-btn-background-ghost.ant-btn-danger[disabled]:focus>a:only-child:after,.ant-btn-background-ghost.ant-btn-danger[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-dangerous{color:#ff4d4f;border-color:#ff4d4f;text-shadow:none}.ant-btn-background-ghost.ant-btn-dangerous>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-dangerous:hover,.ant-btn-background-ghost.ant-btn-dangerous:focus{color:#ff7875;border-color:#ff7875}.ant-btn-background-ghost.ant-btn-dangerous:hover>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous:focus>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous:hover>a:only-child:after,.ant-btn-background-ghost.ant-btn-dangerous:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-dangerous:active{color:#d9363e;border-color:#d9363e}.ant-btn-background-ghost.ant-btn-dangerous:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-dangerous[disabled],.ant-btn-background-ghost.ant-btn-dangerous[disabled]:hover,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:focus,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-background-ghost.ant-btn-dangerous[disabled]>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:hover>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:focus>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous[disabled]>a:only-child:after,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:hover>a:only-child:after,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:focus>a:only-child:after,.ant-btn-background-ghost.ant-btn-dangerous[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link{color:#ff4d4f;border-color:transparent;text-shadow:none}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:hover,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:focus{color:#ff7875;border-color:transparent}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:hover>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:focus>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:hover>a:only-child:after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:focus>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:active{color:#d9363e;border-color:transparent}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled],.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:hover,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:focus,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:active{color:#00000040;border-color:#d9d9d9;background:#f5f5f5;text-shadow:none;box-shadow:none}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:hover>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:focus>a:only-child,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:active>a:only-child{color:currentcolor}.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]>a:only-child:after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:hover>a:only-child:after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:focus>a:only-child:after,.ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:active>a:only-child:after{position:absolute;inset:0;background:transparent;content:""}.ant-btn-two-chinese-chars:first-letter{letter-spacing:.34em}.ant-btn-two-chinese-chars>*:not(.anticon){margin-right:-.34em;letter-spacing:.34em}.ant-btn.ant-btn-block{width:100%}.ant-btn:empty{display:inline-block;width:0;visibility:hidden;content:"\a0"}a.ant-btn{padding-top:.01px!important;line-height:30px}a.ant-btn-lg{line-height:38px}a.ant-btn-sm{line-height:22px}.ant-btn-rtl{direction:rtl}.ant-btn-group-rtl.ant-btn-group .ant-btn-primary:last-child:not(:first-child),.ant-btn-group-rtl.ant-btn-group .ant-btn-primary+.ant-btn-primary{border-right-color:#40a9ff;border-left-color:#d9d9d9}.ant-btn-group-rtl.ant-btn-group .ant-btn-primary:last-child:not(:first-child)[disabled],.ant-btn-group-rtl.ant-btn-group .ant-btn-primary+.ant-btn-primary[disabled]{border-right-color:#d9d9d9;border-left-color:#40a9ff}.ant-btn-rtl.ant-btn>.ant-btn-loading-icon .anticon{padding-right:0;padding-left:8px}.ant-btn>.ant-btn-loading-icon:only-child .anticon{padding-right:0;padding-left:0}.ant-btn-rtl.ant-btn>.anticon+span,.ant-btn-rtl.ant-btn>span+.anticon{margin-right:8px;margin-left:0}.ant-card{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;background:#fff;border-radius:2px}.ant-card-rtl{direction:rtl}.ant-card-hoverable{cursor:pointer;transition:box-shadow .3s,border-color .3s}.ant-card-hoverable:hover{border-color:transparent;box-shadow:0 1px 2px -2px #00000029,0 3px 6px #0000001f,0 5px 12px 4px #00000017}.ant-card-bordered{border:1px solid #f0f0f0}.ant-card-head{min-height:48px;margin-bottom:-1px;padding:0 24px;color:#000000d9;font-weight:500;font-size:16px;background:transparent;border-bottom:1px solid #f0f0f0;border-radius:2px 2px 0 0}.ant-card-head:before{display:table;content:""}.ant-card-head:after{display:table;clear:both;content:""}.ant-card-head-wrapper{display:flex;align-items:center}.ant-card-head-title{display:inline-block;flex:1;padding:16px 0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-card-head-title>.ant-typography,.ant-card-head-title>.ant-typography-edit-content{left:0;margin-top:0;margin-bottom:0}.ant-card-head .ant-tabs-top{clear:both;margin-bottom:-17px;color:#000000d9;font-weight:400;font-size:14px}.ant-card-head .ant-tabs-top-bar{border-bottom:1px solid #f0f0f0}.ant-card-extra{float:right;margin-left:auto;padding:16px 0;color:#000000d9;font-weight:400;font-size:14px}.ant-card-rtl .ant-card-extra{margin-right:auto;margin-left:0}.ant-card-body{padding:24px}.ant-card-body:before{display:table;content:""}.ant-card-body:after{display:table;clear:both;content:""}.ant-card-contain-grid:not(.ant-card-loading) .ant-card-body{margin:-1px 0 0 -1px;padding:0}.ant-card-grid{float:left;width:33.33%;padding:24px;border:0;border-radius:0;box-shadow:1px 0 #f0f0f0,0 1px #f0f0f0,1px 1px #f0f0f0,1px 0 #f0f0f0 inset,0 1px #f0f0f0 inset;transition:all .3s}.ant-card-rtl .ant-card-grid{float:right}.ant-card-grid-hoverable:hover{position:relative;z-index:1;box-shadow:0 1px 2px -2px #00000029,0 3px 6px #0000001f,0 5px 12px 4px #00000017}.ant-card-contain-tabs>.ant-card-head .ant-card-head-title{min-height:32px;padding-bottom:0}.ant-card-contain-tabs>.ant-card-head .ant-card-extra{padding-bottom:0}.ant-card-bordered .ant-card-cover{margin-top:-1px;margin-right:-1px;margin-left:-1px}.ant-card-cover>*{display:block;width:100%}.ant-card-cover img{border-radius:2px 2px 0 0}.ant-card-actions{margin:0;padding:0;list-style:none;background:#fff;border-top:1px solid #f0f0f0}.ant-card-actions:before{display:table;content:""}.ant-card-actions:after{display:table;clear:both;content:""}.ant-card-actions>li{float:left;margin:12px 0;color:#00000073;text-align:center}.ant-card-rtl .ant-card-actions>li{float:right}.ant-card-actions>li>span{position:relative;display:block;min-width:32px;font-size:14px;line-height:1.5715;cursor:pointer}.ant-card-actions>li>span:hover{color:#1890ff;transition:color .3s}.ant-card-actions>li>span a:not(.ant-btn),.ant-card-actions>li>span>.anticon{display:inline-block;width:100%;color:#00000073;line-height:22px;transition:color .3s}.ant-card-actions>li>span a:not(.ant-btn):hover,.ant-card-actions>li>span>.anticon:hover{color:#1890ff}.ant-card-actions>li>span>.anticon{font-size:16px;line-height:22px}.ant-card-actions>li:not(:last-child){border-right:1px solid #f0f0f0}.ant-card-rtl .ant-card-actions>li:not(:last-child){border-right:none;border-left:1px solid #f0f0f0}.ant-card-type-inner .ant-card-head{padding:0 24px;background:#fafafa}.ant-card-type-inner .ant-card-head-title{padding:12px 0;font-size:14px}.ant-card-type-inner .ant-card-body{padding:16px 24px}.ant-card-type-inner .ant-card-extra{padding:13.5px 0}.ant-card-meta{margin:-4px 0}.ant-card-meta:before{display:table;content:""}.ant-card-meta:after{display:table;clear:both;content:""}.ant-card-meta-avatar{float:left;padding-right:16px}.ant-card-rtl .ant-card-meta-avatar{float:right;padding-right:0;padding-left:16px}.ant-card-meta-detail{overflow:hidden}.ant-card-meta-detail>div:not(:last-child){margin-bottom:8px}.ant-card-meta-title{overflow:hidden;color:#000000d9;font-weight:500;font-size:16px;white-space:nowrap;text-overflow:ellipsis}.ant-card-meta-description{color:#00000073}.ant-card-loading{overflow:hidden}.ant-card-loading .ant-card-body{-webkit-user-select:none;user-select:none}.ant-card-loading-content p{margin:0}.ant-card-loading-block{height:14px;margin:4px 0;background:linear-gradient(90deg,rgba(207,216,220,.2),rgba(207,216,220,.4),rgba(207,216,220,.2));background-size:600% 600%;border-radius:2px;animation:card-loading 1.4s ease infinite}@keyframes card-loading{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.ant-card-small>.ant-card-head{min-height:36px;padding:0 12px;font-size:14px}.ant-card-small>.ant-card-head>.ant-card-head-wrapper>.ant-card-head-title{padding:8px 0}.ant-card-small>.ant-card-head>.ant-card-head-wrapper>.ant-card-extra{padding:8px 0;font-size:14px}.ant-card-small>.ant-card-body{padding:12px}.ant-card-rtl .ant-skeleton-header{padding:0 0 0 16px}nz-card{display:block}nz-card-meta{display:block}nz-card-loading{display:block}.ant-carousel{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum"}.ant-carousel .slick-slider{position:relative;display:block;box-sizing:border-box;touch-action:pan-y;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.ant-carousel .slick-list{position:relative;display:block;margin:0;padding:0;overflow:hidden}.ant-carousel .slick-list:focus{outline:none}.ant-carousel .slick-list.dragging{cursor:pointer}.ant-carousel .slick-list .slick-slide{pointer-events:none}.ant-carousel .slick-list .slick-slide input.ant-radio-input,.ant-carousel .slick-list .slick-slide input.ant-checkbox-input{visibility:hidden}.ant-carousel .slick-list .slick-slide.slick-active{pointer-events:auto}.ant-carousel .slick-list .slick-slide.slick-active input.ant-radio-input,.ant-carousel .slick-list .slick-slide.slick-active input.ant-checkbox-input{visibility:visible}.ant-carousel .slick-list .slick-slide>div>div{vertical-align:bottom}.ant-carousel .slick-slider .slick-track,.ant-carousel .slick-slider .slick-list{transform:translateZ(0);touch-action:pan-y}.ant-carousel .slick-track{position:relative;top:0;left:0;display:block}.ant-carousel .slick-track:before,.ant-carousel .slick-track:after{display:table;content:""}.ant-carousel .slick-track:after{clear:both}.slick-loading .ant-carousel .slick-track{visibility:hidden}.ant-carousel .slick-slide{display:none;float:left;height:100%;min-height:1px}.ant-carousel .slick-slide img{display:block}.ant-carousel .slick-slide.slick-loading img{display:none}.ant-carousel .slick-slide.dragging img{pointer-events:none}.ant-carousel .slick-initialized .slick-slide{display:block}.ant-carousel .slick-loading .slick-slide{visibility:hidden}.ant-carousel .slick-vertical .slick-slide{display:block;height:auto}.ant-carousel .slick-arrow.slick-hidden{display:none}.ant-carousel .slick-prev,.ant-carousel .slick-next{position:absolute;top:50%;display:block;width:20px;height:20px;margin-top:-10px;padding:0;color:transparent;font-size:0;line-height:0;background:transparent;border:0;outline:none;cursor:pointer}.ant-carousel .slick-prev:hover,.ant-carousel .slick-next:hover,.ant-carousel .slick-prev:focus,.ant-carousel .slick-next:focus{color:transparent;background:transparent;outline:none}.ant-carousel .slick-prev:hover:before,.ant-carousel .slick-next:hover:before,.ant-carousel .slick-prev:focus:before,.ant-carousel .slick-next:focus:before{opacity:1}.ant-carousel .slick-prev.slick-disabled:before,.ant-carousel .slick-next.slick-disabled:before{opacity:.25}.ant-carousel .slick-prev{left:-25px}.ant-carousel .slick-prev:before{content:"\2190"}.ant-carousel .slick-next{right:-25px}.ant-carousel .slick-next:before{content:"\2192"}.ant-carousel .slick-dots{position:absolute;right:0;bottom:0;left:0;z-index:15;display:flex!important;justify-content:center;margin-right:15%;margin-left:15%;padding-left:0;list-style:none}.ant-carousel .slick-dots-bottom{bottom:12px}.ant-carousel .slick-dots-top{top:12px;bottom:auto}.ant-carousel .slick-dots li{position:relative;display:inline-block;flex:0 1 auto;box-sizing:content-box;width:16px;height:3px;margin:0 3px;padding:0;text-align:center;text-indent:-999px;vertical-align:top;transition:all .5s}.ant-carousel .slick-dots li button{display:block;width:100%;height:3px;padding:0;color:transparent;font-size:0;background:#fff;border:0;border-radius:1px;outline:none;cursor:pointer;opacity:.3;transition:all .5s}.ant-carousel .slick-dots li button:hover,.ant-carousel .slick-dots li button:focus{opacity:.75}.ant-carousel .slick-dots li.slick-active{width:24px}.ant-carousel .slick-dots li.slick-active button{background:#fff;opacity:1}.ant-carousel .slick-dots li.slick-active:hover,.ant-carousel .slick-dots li.slick-active:focus{opacity:1}.ant-carousel-vertical .slick-dots{top:50%;bottom:auto;flex-direction:column;width:3px;height:auto;margin:0;transform:translateY(-50%)}.ant-carousel-vertical .slick-dots-left{right:auto;left:12px}.ant-carousel-vertical .slick-dots-right{right:12px;left:auto}.ant-carousel-vertical .slick-dots li{width:3px;height:16px;margin:4px 2px;vertical-align:baseline}.ant-carousel-vertical .slick-dots li button{width:3px;height:16px}.ant-carousel-vertical .slick-dots li.slick-active,.ant-carousel-vertical .slick-dots li.slick-active button{width:3px;height:24px}.ant-carousel-rtl{direction:rtl}.ant-carousel-rtl .ant-carousel .slick-track{right:0;left:auto}.ant-carousel-rtl .ant-carousel .slick-prev{right:-25px;left:auto}.ant-carousel-rtl .ant-carousel .slick-prev:before{content:"\2192"}.ant-carousel-rtl .ant-carousel .slick-next{right:auto;left:-25px}.ant-carousel-rtl .ant-carousel .slick-next:before{content:"\2190"}.ant-carousel-rtl.ant-carousel .slick-dots{flex-direction:row-reverse}.ant-carousel-rtl.ant-carousel-vertical .slick-dots{flex-direction:column}nz-carousel{display:block;position:relative;overflow:hidden;width:100%;height:100%}.slick-dots{display:block}.slick-track{opacity:1}.slick-list{direction:ltr}@keyframes antCheckboxEffect{0%{transform:scale(1);opacity:.5}to{transform:scale(1.6);opacity:0}}.ant-checkbox{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;top:.2em;line-height:1;white-space:nowrap;outline:none;cursor:pointer}.ant-checkbox-wrapper:hover .ant-checkbox-inner,.ant-checkbox:hover .ant-checkbox-inner,.ant-checkbox-input:focus+.ant-checkbox-inner{border-color:#1890ff}.ant-checkbox-checked:after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #1890ff;border-radius:2px;visibility:hidden;animation:antCheckboxEffect .36s ease-in-out;animation-fill-mode:backwards;content:""}.ant-checkbox:hover:after,.ant-checkbox-wrapper:hover .ant-checkbox:after{visibility:visible}.ant-checkbox-inner{position:relative;top:0;left:0;display:block;width:16px;height:16px;direction:ltr;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;border-collapse:separate;transition:all .3s}.ant-checkbox-inner:after{position:absolute;top:50%;left:21.5%;display:table;width:5.71428571px;height:9.14285714px;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(0) translate(-50%,-50%);opacity:0;transition:all .1s cubic-bezier(.71,-.46,.88,.6),opacity .1s;content:" "}.ant-checkbox-input{position:absolute;inset:0;z-index:1;width:100%;height:100%;cursor:pointer;opacity:0}.ant-checkbox-checked .ant-checkbox-inner:after{position:absolute;display:table;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(1) translate(-50%,-50%);opacity:1;transition:all .2s cubic-bezier(.12,.4,.29,1.46) .1s;content:" "}.ant-checkbox-checked .ant-checkbox-inner{background-color:#1890ff;border-color:#1890ff}.ant-checkbox-disabled{cursor:not-allowed}.ant-checkbox-disabled.ant-checkbox-checked .ant-checkbox-inner:after{border-color:#00000040;animation-name:none}.ant-checkbox-disabled .ant-checkbox-input{cursor:not-allowed;pointer-events:none}.ant-checkbox-disabled .ant-checkbox-inner{background-color:#f5f5f5;border-color:#d9d9d9!important}.ant-checkbox-disabled .ant-checkbox-inner:after{border-color:#f5f5f5;border-collapse:separate;animation-name:none}.ant-checkbox-disabled+span{color:#00000040;cursor:not-allowed}.ant-checkbox-disabled:hover:after,.ant-checkbox-wrapper:hover .ant-checkbox-disabled:after{visibility:hidden}.ant-checkbox-wrapper{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";display:inline-flex;align-items:baseline;line-height:unset;cursor:pointer}.ant-checkbox-wrapper:after{display:inline-block;width:0;overflow:hidden;content:"\a0"}.ant-checkbox-wrapper.ant-checkbox-wrapper-disabled{cursor:not-allowed}.ant-checkbox-wrapper+.ant-checkbox-wrapper{margin-left:8px}.ant-checkbox-wrapper.ant-checkbox-wrapper-in-form-item input[type=checkbox]{width:14px;height:14px}.ant-checkbox+span{padding-right:8px;padding-left:8px}.ant-checkbox-group{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";display:inline-block}.ant-checkbox-group-item{margin-right:8px}.ant-checkbox-group-item:last-child{margin-right:0}.ant-checkbox-group-item+.ant-checkbox-group-item{margin-left:0}.ant-checkbox-indeterminate .ant-checkbox-inner{background-color:#fff;border-color:#d9d9d9}.ant-checkbox-indeterminate .ant-checkbox-inner:after{top:50%;left:50%;width:8px;height:8px;background-color:#1890ff;border:0;transform:translate(-50%,-50%) scale(1);opacity:1;content:" "}.ant-checkbox-indeterminate.ant-checkbox-disabled .ant-checkbox-inner:after{background-color:#00000040;border-color:#00000040}.ant-checkbox-rtl{direction:rtl}.ant-checkbox-group-rtl .ant-checkbox-group-item{margin-right:0;margin-left:8px}.ant-checkbox-group-rtl .ant-checkbox-group-item:last-child{margin-left:0!important}.ant-checkbox-group-rtl .ant-checkbox-group-item+.ant-checkbox-group-item{margin-left:8px}.ant-checkbox+span:empty{display:none}.ant-collapse{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";background-color:#fafafa;border:1px solid #d9d9d9;border-bottom:0;border-radius:2px}.ant-collapse>.ant-collapse-item{border-bottom:1px solid #d9d9d9}.ant-collapse>.ant-collapse-item:last-child,.ant-collapse>.ant-collapse-item:last-child>.ant-collapse-header{border-radius:0 0 2px 2px}.ant-collapse>.ant-collapse-item>.ant-collapse-header{position:relative;display:flex;flex-wrap:nowrap;align-items:flex-start;padding:12px 16px;color:#000000d9;line-height:1.5715;cursor:pointer;transition:all .3s,visibility 0s}.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow{display:inline-block;margin-right:12px;font-size:12px;vertical-align:-1px}.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow svg{transition:transform .24s}.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-extra{margin-left:auto}.ant-collapse>.ant-collapse-item>.ant-collapse-header:focus{outline:none}.ant-collapse>.ant-collapse-item .ant-collapse-header-collapsible-only{cursor:default}.ant-collapse>.ant-collapse-item .ant-collapse-header-collapsible-only .ant-collapse-header-text{cursor:pointer}.ant-collapse>.ant-collapse-item.ant-collapse-no-arrow>.ant-collapse-header{padding-left:12px}.ant-collapse-icon-position-right>.ant-collapse-item>.ant-collapse-header{position:relative;padding:12px 40px 12px 16px}.ant-collapse-icon-position-right>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow{position:absolute;top:50%;right:16px;left:auto;margin:0;transform:translateY(-50%)}.ant-collapse-content{color:#000000d9;background-color:#fff;border-top:1px solid #d9d9d9}.ant-collapse-content>.ant-collapse-content-box{padding:16px}.ant-collapse-content-hidden{display:none}.ant-collapse-item:last-child>.ant-collapse-content{border-radius:0 0 2px 2px}.ant-collapse-borderless{background-color:#fafafa;border:0}.ant-collapse-borderless>.ant-collapse-item{border-bottom:1px solid #d9d9d9}.ant-collapse-borderless>.ant-collapse-item:last-child,.ant-collapse-borderless>.ant-collapse-item:last-child .ant-collapse-header{border-radius:0}.ant-collapse-borderless>.ant-collapse-item:last-child{border-bottom:0}.ant-collapse-borderless>.ant-collapse-item>.ant-collapse-content{background-color:transparent;border-top:0}.ant-collapse-borderless>.ant-collapse-item>.ant-collapse-content>.ant-collapse-content-box{padding-top:4px}.ant-collapse-ghost{background-color:transparent;border:0}.ant-collapse-ghost>.ant-collapse-item{border-bottom:0}.ant-collapse-ghost>.ant-collapse-item>.ant-collapse-content{background-color:transparent;border-top:0}.ant-collapse-ghost>.ant-collapse-item>.ant-collapse-content>.ant-collapse-content-box{padding-top:12px;padding-bottom:12px}.ant-collapse .ant-collapse-item-disabled>.ant-collapse-header,.ant-collapse .ant-collapse-item-disabled>.ant-collapse-header>.arrow{color:#00000040;cursor:not-allowed}.ant-collapse-rtl{direction:rtl}.ant-collapse-rtl .ant-collapse>.ant-collapse-item>.ant-collapse-header{padding:12px 40px 12px 16px}.ant-collapse-rtl.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow{margin-right:0;margin-left:12px}.ant-collapse-rtl.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow svg{transform:rotate(180deg)}.ant-collapse-rtl.ant-collapse>.ant-collapse-item>.ant-collapse-header .ant-collapse-extra{margin-right:auto;margin-left:0}.ant-collapse-rtl.ant-collapse>.ant-collapse-item.ant-collapse-no-arrow>.ant-collapse-header{padding-right:12px;padding-left:0}nz-collapse{display:block}nz-collapse-panel{display:block}.ant-comment{position:relative;background-color:inherit}.ant-comment-inner{display:flex;padding:16px 0}.ant-comment-avatar{position:relative;flex-shrink:0;margin-right:12px;cursor:pointer}.ant-comment-avatar img{width:32px;height:32px;border-radius:50%}.ant-comment-content{position:relative;flex:1 1 auto;min-width:1px;font-size:14px;word-wrap:break-word}.ant-comment-content-author{display:flex;flex-wrap:wrap;justify-content:flex-start;margin-bottom:4px;font-size:14px}.ant-comment-content-author>a,.ant-comment-content-author>span{padding-right:8px;font-size:12px;line-height:18px}.ant-comment-content-author-name{color:#00000073;font-size:14px;transition:color .3s}.ant-comment-content-author-name>*{color:#00000073}.ant-comment-content-author-name>*:hover{color:#00000073}.ant-comment-content-author-time{color:#ccc;white-space:nowrap;cursor:auto}.ant-comment-content-detail p{margin-bottom:inherit;white-space:pre-wrap}.ant-comment-actions{margin-top:12px;margin-bottom:inherit;padding-left:0}.ant-comment-actions>li{display:inline-block;color:#00000073}.ant-comment-actions>li>span{margin-right:10px;color:#00000073;font-size:12px;cursor:pointer;transition:color .3s;-webkit-user-select:none;user-select:none}.ant-comment-actions>li>span:hover{color:#595959}.ant-comment-nested{margin-left:44px}.ant-comment-rtl{direction:rtl}.ant-comment-rtl .ant-comment-avatar{margin-right:0;margin-left:12px}.ant-comment-rtl .ant-comment-content-author>a,.ant-comment-rtl .ant-comment-content-author>span{padding-right:0;padding-left:8px}.ant-comment-rtl .ant-comment-actions{padding-right:0}.ant-comment-rtl .ant-comment-actions>li>span{margin-right:0;margin-left:10px}.ant-comment-rtl .ant-comment-nested{margin-right:44px;margin-left:0}nz-comment{display:block}nz-comment-content{display:block}.ant-picker-status-error.ant-picker,.ant-picker-status-error.ant-picker:not([disabled]):hover{background-color:#fff;border-color:#ff4d4f}.ant-picker-status-error.ant-picker-focused,.ant-picker-status-error.ant-picker:focus{border-color:#ff7875;box-shadow:0 0 0 2px #ff4d4f33;border-right-width:1px;outline:0}.ant-picker-status-warning.ant-picker,.ant-picker-status-warning.ant-picker:not([disabled]):hover{background-color:#fff;border-color:#faad14}.ant-picker-status-warning.ant-picker-focused,.ant-picker-status-warning.ant-picker:focus{border-color:#ffc53d;box-shadow:0 0 0 2px #faad1433;border-right-width:1px;outline:0}.ant-picker{box-sizing:border-box;margin:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";padding:4px 11px;position:relative;display:inline-flex;align-items:center;background:#fff;border:1px solid #d9d9d9;border-radius:2px;transition:border .3s,box-shadow .3s}.ant-picker:hover,.ant-picker-focused{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-picker:hover,.ant-input-rtl .ant-picker-focused{border-right-width:0;border-left-width:1px!important}.ant-picker-focused{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;border-right-width:1px;outline:0}.ant-input-rtl .ant-picker-focused{border-right-width:0;border-left-width:1px!important}.ant-picker.ant-picker-disabled{background:#f5f5f5;border-color:#d9d9d9;cursor:not-allowed}.ant-picker.ant-picker-disabled .ant-picker-suffix{color:#00000040}.ant-picker.ant-picker-borderless{background-color:transparent!important;border-color:transparent!important;box-shadow:none!important}.ant-picker-input{position:relative;display:inline-flex;align-items:center;width:100%}.ant-picker-input>input{position:relative;display:inline-block;width:100%;min-width:0;color:#000000d9;font-size:14px;line-height:1.5715;background-color:#fff;background-image:none;border:1px solid #d9d9d9;border-radius:2px;transition:all .3s;flex:auto;min-width:1px;height:auto;padding:0;background:transparent;border:0}.ant-picker-input>input::placeholder{color:#bfbfbf;-webkit-user-select:none;user-select:none}.ant-picker-input>input:placeholder-shown{text-overflow:ellipsis}.ant-picker-input>input:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-picker-input>input:hover{border-right-width:0;border-left-width:1px!important}.ant-picker-input>input:focus,.ant-picker-input>input-focused{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;border-right-width:1px;outline:0}.ant-input-rtl .ant-picker-input>input:focus,.ant-input-rtl .ant-picker-input>input-focused{border-right-width:0;border-left-width:1px!important}.ant-picker-input>input-disabled{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;pointer-events:none;color:#00000040}.ant-picker-input>input-disabled:hover{border-color:#d9d9d9;border-right-width:1px}.ant-picker-input>input[disabled]{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;pointer-events:none;color:#00000040}.ant-picker-input>input[disabled]:hover{border-color:#d9d9d9;border-right-width:1px}.ant-picker-input>input-borderless,.ant-picker-input>input-borderless:hover,.ant-picker-input>input-borderless:focus,.ant-picker-input>input-borderless-focused,.ant-picker-input>input-borderless-disabled,.ant-picker-input>input-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-picker-input>input{max-width:100%;height:auto;min-height:32px;line-height:1.5715;vertical-align:bottom;transition:all .3s,height 0s}.ant-picker-input>input-lg{padding:6.5px 11px;font-size:16px}.ant-picker-input>input-sm{padding:0 7px}.ant-picker-input>input-rtl{direction:rtl}.ant-picker-input>input-stepperless[type=number]{-moz-appearance:textfield}.ant-picker-input>input-stepperless[type=number]::-webkit-inner-spin-button,.ant-picker-input>input-stepperless[type=number] ::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ant-picker-input>input:focus{box-shadow:none}.ant-picker-input>input[disabled]{background:transparent}.ant-picker-input:hover .ant-picker-clear{opacity:1}.ant-picker-input-placeholder>input{color:#bfbfbf}.ant-picker-large{padding:6.5px 11px}.ant-picker-large .ant-picker-input>input{font-size:16px}.ant-picker-small{padding:0 7px}.ant-picker-suffix{display:flex;flex:none;align-self:center;margin-left:4px;color:#00000040;line-height:1;pointer-events:none}.ant-picker-suffix>*{vertical-align:top}.ant-picker-suffix>*:not(:last-child){margin-right:8px}.ant-picker-clear{position:absolute;top:50%;right:0;color:#00000040;line-height:1;background:#fff;transform:translateY(-50%);cursor:pointer;opacity:0;transition:opacity .3s,color .3s}.ant-picker-clear>*{vertical-align:top}.ant-picker-clear:hover{color:#00000073}.ant-picker-separator{position:relative;display:inline-block;width:1em;height:16px;color:#00000040;font-size:16px;vertical-align:top;cursor:default}.ant-picker-focused .ant-picker-separator{color:#00000073}.ant-picker-disabled .ant-picker-range-separator .ant-picker-separator{cursor:not-allowed}.ant-picker-range{position:relative;display:inline-flex}.ant-picker-range .ant-picker-clear{right:11px}.ant-picker-range:hover .ant-picker-clear{opacity:1}.ant-picker-range .ant-picker-active-bar{bottom:-1px;height:2px;margin-left:11px;background:#1890ff;opacity:0;transition:all .3s ease-out;pointer-events:none}.ant-picker-range.ant-picker-focused .ant-picker-active-bar{opacity:1}.ant-picker-range-separator{align-items:center;padding:0 8px;line-height:1}.ant-picker-range.ant-picker-small .ant-picker-clear{right:7px}.ant-picker-range.ant-picker-small .ant-picker-active-bar{margin-left:7px}.ant-picker-dropdown{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:absolute;top:-9999px;left:-9999px;z-index:1050}.ant-picker-dropdown-hidden{display:none}.ant-picker-dropdown-placement-bottomLeft .ant-picker-range-arrow{top:2.58561808px;display:block;transform:rotate(-135deg) translateY(1px)}.ant-picker-dropdown-placement-topLeft .ant-picker-range-arrow{bottom:2.58561808px;display:block;transform:rotate(45deg)}.ant-picker-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-picker-dropdown-placement-topLeft,.ant-picker-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-picker-dropdown-placement-topRight,.ant-picker-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-picker-dropdown-placement-topLeft,.ant-picker-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-picker-dropdown-placement-topRight{animation-name:antSlideDownIn}.ant-picker-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-picker-dropdown-placement-bottomLeft,.ant-picker-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-picker-dropdown-placement-bottomRight,.ant-picker-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-picker-dropdown-placement-bottomLeft,.ant-picker-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-picker-dropdown-placement-bottomRight{animation-name:antSlideUpIn}.ant-picker-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-picker-dropdown-placement-topLeft,.ant-picker-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-picker-dropdown-placement-topRight{animation-name:antSlideDownOut}.ant-picker-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-picker-dropdown-placement-bottomLeft,.ant-picker-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-picker-dropdown-placement-bottomRight{animation-name:antSlideUpOut}.ant-picker-dropdown-range{padding:7.54247233px 0}.ant-picker-dropdown-range-hidden{display:none}.ant-picker-dropdown .ant-picker-panel>.ant-picker-time-panel{padding-top:4px}.ant-picker-ranges{margin-bottom:0;padding:4px 12px;overflow:hidden;line-height:34px;text-align:left;list-style:none}.ant-picker-ranges>li{display:inline-block}.ant-picker-ranges .ant-picker-preset>.ant-tag-blue{color:#1890ff;background:#e6f7ff;border-color:#91d5ff;cursor:pointer}.ant-picker-ranges .ant-picker-ok{float:right;margin-left:8px}.ant-picker-range-wrapper{display:flex}.ant-picker-range-arrow{position:absolute;z-index:1;display:none;width:11.3137085px;height:11.3137085px;margin-left:16.5px;background:linear-gradient(135deg,transparent 40%,#fff 40%);box-shadow:2px 2px 6px -2px #0000001a;transition:left .3s ease-out;border-radius:0 0 2px;pointer-events:none}.ant-picker-range-arrow:before{position:absolute;top:-11.3137085px;left:-11.3137085px;width:33.9411255px;height:33.9411255px;background:#fff;background-repeat:no-repeat;background-position:-10px -10px;content:"";clip-path:path("M 9.849242404917499 24.091883092036785 A 5 5 0 0 1 13.384776310850237 22.627416997969522 L 20.627416997969522 22.627416997969522 A 2 2 0 0 0 22.627416997969522 20.627416997969522 L 22.627416997969522 13.384776310850237 A 5 5 0 0 1 24.091883092036785 9.849242404917499 L 23.091883092036785 9.849242404917499 L 9.849242404917499 23.091883092036785 Z")}.ant-picker-panel-container{overflow:hidden;vertical-align:top;background:#fff;border-radius:2px;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d;transition:margin .3s}.ant-picker-panel-container .ant-picker-panels{display:inline-flex;flex-wrap:nowrap;direction:ltr}.ant-picker-panel-container .ant-picker-panel{vertical-align:top;background:transparent;border-width:0 0 1px 0;border-radius:0}.ant-picker-panel-container .ant-picker-panel .ant-picker-content,.ant-picker-panel-container .ant-picker-panel table{text-align:center}.ant-picker-panel-container .ant-picker-panel-focused{border-color:#f0f0f0}.ant-picker-panel{display:inline-flex;flex-direction:column;text-align:center;background:#fff;border:1px solid #f0f0f0;border-radius:2px;outline:none}.ant-picker-panel-focused{border-color:#1890ff}.ant-picker-decade-panel,.ant-picker-year-panel,.ant-picker-quarter-panel,.ant-picker-month-panel,.ant-picker-week-panel,.ant-picker-date-panel,.ant-picker-time-panel{display:flex;flex-direction:column;width:280px}.ant-picker-header{display:flex;padding:0 8px;color:#000000d9;border-bottom:1px solid #f0f0f0}.ant-picker-header>*{flex:none}.ant-picker-header button{padding:0;color:#00000040;line-height:40px;background:transparent;border:0;cursor:pointer;transition:color .3s}.ant-picker-header>button{min-width:1.6em;font-size:14px}.ant-picker-header>button:hover{color:#000000d9}.ant-picker-header-view{flex:auto;font-weight:500;line-height:40px}.ant-picker-header-view button{color:inherit;font-weight:inherit}.ant-picker-header-view button:not(:first-child){margin-left:8px}.ant-picker-header-view button:hover{color:#1890ff}.ant-picker-prev-icon,.ant-picker-next-icon,.ant-picker-super-prev-icon,.ant-picker-super-next-icon{position:relative;display:inline-block;width:7px;height:7px}.ant-picker-prev-icon:before,.ant-picker-next-icon:before,.ant-picker-super-prev-icon:before,.ant-picker-super-next-icon:before{position:absolute;top:0;left:0;display:inline-block;width:7px;height:7px;border:0 solid currentcolor;border-width:1.5px 0 0 1.5px;content:""}.ant-picker-super-prev-icon:after,.ant-picker-super-next-icon:after{position:absolute;top:4px;left:4px;display:inline-block;width:7px;height:7px;border:0 solid currentcolor;border-width:1.5px 0 0 1.5px;content:""}.ant-picker-prev-icon,.ant-picker-super-prev-icon{transform:rotate(-45deg)}.ant-picker-next-icon,.ant-picker-super-next-icon{transform:rotate(135deg)}.ant-picker-content{width:100%;table-layout:fixed;border-collapse:collapse}.ant-picker-content th,.ant-picker-content td{position:relative;min-width:24px;font-weight:400}.ant-picker-content th{height:30px;color:#000000d9;line-height:30px}.ant-picker-cell{padding:3px 0;color:#00000040;cursor:pointer}.ant-picker-cell-in-view{color:#000000d9}.ant-picker-cell:before{position:absolute;top:50%;right:0;left:0;z-index:1;height:24px;transform:translateY(-50%);transition:all .3s;content:""}.ant-picker-cell:hover:not(.ant-picker-cell-in-view) .ant-picker-cell-inner,.ant-picker-cell:hover:not(.ant-picker-cell-selected):not(.ant-picker-cell-range-start):not(.ant-picker-cell-range-end):not(.ant-picker-cell-range-hover-start):not(.ant-picker-cell-range-hover-end) .ant-picker-cell-inner{background:#f5f5f5}.ant-picker-cell-in-view.ant-picker-cell-today .ant-picker-cell-inner:before{position:absolute;inset:0;z-index:1;border:1px solid #1890ff;border-radius:2px;content:""}.ant-picker-cell-in-view.ant-picker-cell-in-range{position:relative}.ant-picker-cell-in-view.ant-picker-cell-in-range:before{background:#e6f7ff}.ant-picker-cell-in-view.ant-picker-cell-selected .ant-picker-cell-inner,.ant-picker-cell-in-view.ant-picker-cell-range-start .ant-picker-cell-inner,.ant-picker-cell-in-view.ant-picker-cell-range-end .ant-picker-cell-inner{color:#fff;background:#1890ff}.ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single):before,.ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single):before{background:#e6f7ff}.ant-picker-cell-in-view.ant-picker-cell-range-start:before{left:50%}.ant-picker-cell-in-view.ant-picker-cell-range-end:before{right:50%}.ant-picker-cell-in-view.ant-picker-cell-range-hover-start:not(.ant-picker-cell-in-range):not(.ant-picker-cell-range-start):not(.ant-picker-cell-range-end):after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-end:not(.ant-picker-cell-in-range):not(.ant-picker-cell-range-start):not(.ant-picker-cell-range-end):after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-start.ant-picker-cell-range-start-single:after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-start.ant-picker-cell-range-start.ant-picker-cell-range-end.ant-picker-cell-range-end-near-hover:after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-end.ant-picker-cell-range-start.ant-picker-cell-range-end.ant-picker-cell-range-start-near-hover:after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-end.ant-picker-cell-range-end-single:after,.ant-picker-cell-in-view.ant-picker-cell-range-hover:not(.ant-picker-cell-in-range):after{position:absolute;top:50%;z-index:0;height:24px;border-top:1px dashed #7ec1ff;border-bottom:1px dashed #7ec1ff;transform:translateY(-50%);transition:all .3s;content:""}.ant-picker-cell-range-hover-start:after,.ant-picker-cell-range-hover-end:after,.ant-picker-cell-range-hover:after{right:0;left:2px}.ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover:before,.ant-picker-cell-in-view.ant-picker-cell-range-start.ant-picker-cell-range-hover:before,.ant-picker-cell-in-view.ant-picker-cell-range-end.ant-picker-cell-range-hover:before,.ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single).ant-picker-cell-range-hover-start:before,.ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single).ant-picker-cell-range-hover-end:before,.ant-picker-panel>:not(.ant-picker-date-panel) .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start:before,.ant-picker-panel>:not(.ant-picker-date-panel) .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end:before{background:#cbe6ff}.ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single):not(.ant-picker-cell-range-end) .ant-picker-cell-inner{border-radius:2px 0 0 2px}.ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single):not(.ant-picker-cell-range-start) .ant-picker-cell-inner{border-radius:0 2px 2px 0}.ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start .ant-picker-cell-inner:after,.ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end .ant-picker-cell-inner:after{position:absolute;top:0;bottom:0;z-index:-1;background:#cbe6ff;transition:all .3s;content:""}.ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start .ant-picker-cell-inner:after{right:-6px;left:0}.ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end .ant-picker-cell-inner:after{right:0;left:-6px}.ant-picker-cell-range-hover.ant-picker-cell-range-start:after{right:50%}.ant-picker-cell-range-hover.ant-picker-cell-range-end:after{left:50%}tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover:first-child:after,tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover-end:first-child:after,.ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover-edge-start.ant-picker-cell-range-hover-edge-start-near-range:after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-edge-start:not(.ant-picker-cell-range-hover-edge-start-near-range):after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-start:after{left:6px;border-left:1px dashed #7ec1ff;border-top-left-radius:2px;border-bottom-left-radius:2px}tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover:last-child:after,tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover-start:last-child:after,.ant-picker-cell-in-view.ant-picker-cell-end.ant-picker-cell-range-hover-edge-end.ant-picker-cell-range-hover-edge-end-near-range:after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-edge-end:not(.ant-picker-cell-range-hover-edge-end-near-range):after,.ant-picker-cell-in-view.ant-picker-cell-range-hover-end:after{right:6px;border-right:1px dashed #7ec1ff;border-top-right-radius:2px;border-bottom-right-radius:2px}.ant-picker-cell-disabled{color:#00000040;pointer-events:none}.ant-picker-cell-disabled .ant-picker-cell-inner{background:transparent}.ant-picker-cell-disabled:before{background:rgba(0,0,0,.04)}.ant-picker-cell-disabled.ant-picker-cell-today .ant-picker-cell-inner:before{border-color:#00000040}.ant-picker-decade-panel .ant-picker-content,.ant-picker-year-panel .ant-picker-content,.ant-picker-quarter-panel .ant-picker-content,.ant-picker-month-panel .ant-picker-content{height:264px}.ant-picker-decade-panel .ant-picker-cell-inner,.ant-picker-year-panel .ant-picker-cell-inner,.ant-picker-quarter-panel .ant-picker-cell-inner,.ant-picker-month-panel .ant-picker-cell-inner{padding:0 8px}.ant-picker-quarter-panel .ant-picker-content{height:56px}.ant-picker-footer{width:min-content;min-width:100%;line-height:38px;text-align:center;border-bottom:1px solid transparent}.ant-picker-panel .ant-picker-footer{border-top:1px solid #f0f0f0}.ant-picker-footer-extra{padding:0 12px;line-height:38px;text-align:left}.ant-picker-footer-extra:not(:last-child){border-bottom:1px solid #f0f0f0}.ant-picker-now{text-align:left}.ant-picker-today-btn{color:#1890ff}.ant-picker-today-btn:hover{color:#40a9ff}.ant-picker-today-btn:active{color:#096dd9}.ant-picker-today-btn.ant-picker-today-btn-disabled{color:#00000040;cursor:not-allowed}.ant-picker-decade-panel .ant-picker-cell-inner{padding:0 4px}.ant-picker-decade-panel .ant-picker-cell:before{display:none}.ant-picker-year-panel .ant-picker-body,.ant-picker-quarter-panel .ant-picker-body,.ant-picker-month-panel .ant-picker-body{padding:0 8px}.ant-picker-year-panel .ant-picker-cell-inner,.ant-picker-quarter-panel .ant-picker-cell-inner,.ant-picker-month-panel .ant-picker-cell-inner{width:60px}.ant-picker-year-panel .ant-picker-cell-range-hover-start:after,.ant-picker-quarter-panel .ant-picker-cell-range-hover-start:after,.ant-picker-month-panel .ant-picker-cell-range-hover-start:after{left:14px;border-left:1px dashed #7ec1ff;border-radius:2px 0 0 2px}.ant-picker-panel-rtl .ant-picker-year-panel .ant-picker-cell-range-hover-start:after,.ant-picker-panel-rtl .ant-picker-quarter-panel .ant-picker-cell-range-hover-start:after,.ant-picker-panel-rtl .ant-picker-month-panel .ant-picker-cell-range-hover-start:after{right:14px;border-right:1px dashed #7ec1ff;border-radius:0 2px 2px 0}.ant-picker-year-panel .ant-picker-cell-range-hover-end:after,.ant-picker-quarter-panel .ant-picker-cell-range-hover-end:after,.ant-picker-month-panel .ant-picker-cell-range-hover-end:after{right:14px;border-right:1px dashed #7ec1ff;border-radius:0 2px 2px 0}.ant-picker-panel-rtl .ant-picker-year-panel .ant-picker-cell-range-hover-end:after,.ant-picker-panel-rtl .ant-picker-quarter-panel .ant-picker-cell-range-hover-end:after,.ant-picker-panel-rtl .ant-picker-month-panel .ant-picker-cell-range-hover-end:after{left:14px;border-left:1px dashed #7ec1ff;border-radius:2px 0 0 2px}.ant-picker-week-panel .ant-picker-body{padding:8px 12px}.ant-picker-week-panel .ant-picker-cell:hover .ant-picker-cell-inner,.ant-picker-week-panel .ant-picker-cell-selected .ant-picker-cell-inner,.ant-picker-week-panel .ant-picker-cell .ant-picker-cell-inner{background:transparent!important}.ant-picker-week-panel-row td{transition:background .3s}.ant-picker-week-panel-row:hover td{background:#f5f5f5}.ant-picker-week-panel-row-selected td,.ant-picker-week-panel-row-selected:hover td{background:#1890ff}.ant-picker-week-panel-row-selected td.ant-picker-cell-week,.ant-picker-week-panel-row-selected:hover td.ant-picker-cell-week{color:#ffffff80}.ant-picker-week-panel-row-selected td.ant-picker-cell-today .ant-picker-cell-inner:before,.ant-picker-week-panel-row-selected:hover td.ant-picker-cell-today .ant-picker-cell-inner:before{border-color:#fff}.ant-picker-week-panel-row-selected td .ant-picker-cell-inner,.ant-picker-week-panel-row-selected:hover td .ant-picker-cell-inner{color:#fff}.ant-picker-date-panel .ant-picker-body{padding:8px 12px}.ant-picker-date-panel .ant-picker-content{width:252px}.ant-picker-date-panel .ant-picker-content th{width:36px}.ant-picker-datetime-panel{display:flex}.ant-picker-datetime-panel .ant-picker-time-panel{border-left:1px solid #f0f0f0}.ant-picker-datetime-panel .ant-picker-date-panel,.ant-picker-datetime-panel .ant-picker-time-panel{transition:opacity .3s}.ant-picker-datetime-panel-active .ant-picker-date-panel,.ant-picker-datetime-panel-active .ant-picker-time-panel{opacity:.3}.ant-picker-datetime-panel-active .ant-picker-date-panel-active,.ant-picker-datetime-panel-active .ant-picker-time-panel-active{opacity:1}.ant-picker-time-panel{width:auto;min-width:auto}.ant-picker-time-panel .ant-picker-content{display:flex;flex:auto;height:224px}.ant-picker-time-panel-column{flex:1 0 auto;width:56px;margin:0;padding:0;overflow-y:hidden;text-align:left;list-style:none;transition:background .3s}.ant-picker-time-panel-column:after{display:block;height:196px;content:""}.ant-picker-datetime-panel .ant-picker-time-panel-column:after{height:198px}.ant-picker-time-panel-column:not(:first-child){border-left:1px solid #f0f0f0}.ant-picker-time-panel-column-active{background:rgba(230,247,255,.2)}.ant-picker-time-panel-column:hover{overflow-y:auto}.ant-picker-time-panel-column>li{margin:0;padding:0}.ant-picker-time-panel-column>li.ant-picker-time-panel-cell .ant-picker-time-panel-cell-inner{display:block;width:100%;height:28px;margin:0;padding:0 0 0 14px;color:#000000d9;line-height:28px;border-radius:0;cursor:pointer;transition:background .3s}.ant-picker-time-panel-column>li.ant-picker-time-panel-cell .ant-picker-time-panel-cell-inner:hover{background:#f5f5f5}.ant-picker-time-panel-column>li.ant-picker-time-panel-cell-selected .ant-picker-time-panel-cell-inner{background:#e6f7ff}.ant-picker-time-panel-column>li.ant-picker-time-panel-cell-disabled .ant-picker-time-panel-cell-inner{color:#00000040;background:transparent;cursor:not-allowed}_:-ms-fullscreen .ant-picker-range-wrapper .ant-picker-month-panel .ant-picker-cell,:root .ant-picker-range-wrapper .ant-picker-month-panel .ant-picker-cell,_:-ms-fullscreen .ant-picker-range-wrapper .ant-picker-year-panel .ant-picker-cell,:root .ant-picker-range-wrapper .ant-picker-year-panel .ant-picker-cell{padding:21px 0}.ant-picker-rtl{direction:rtl}.ant-picker-rtl .ant-picker-suffix{margin-right:4px;margin-left:0}.ant-picker-rtl .ant-picker-clear{right:auto;left:0}.ant-picker-rtl .ant-picker-separator{transform:rotate(180deg)}.ant-picker-panel-rtl .ant-picker-header-view button:not(:first-child){margin-right:8px;margin-left:0}.ant-picker-rtl.ant-picker-range .ant-picker-clear{right:auto;left:11px}.ant-picker-rtl.ant-picker-range .ant-picker-active-bar{margin-right:11px;margin-left:0}.ant-picker-rtl.ant-picker-range.ant-picker-small .ant-picker-active-bar{margin-right:7px}.ant-picker-dropdown-rtl .ant-picker-ranges{text-align:right}.ant-picker-dropdown-rtl .ant-picker-ranges .ant-picker-ok{float:left;margin-right:8px;margin-left:0}.ant-picker-panel-rtl{direction:rtl}.ant-picker-panel-rtl .ant-picker-prev-icon,.ant-picker-panel-rtl .ant-picker-super-prev-icon{transform:rotate(135deg)}.ant-picker-panel-rtl .ant-picker-next-icon,.ant-picker-panel-rtl .ant-picker-super-next-icon{transform:rotate(-45deg)}.ant-picker-cell .ant-picker-cell-inner{position:relative;z-index:2;display:inline-block;min-width:24px;height:24px;line-height:24px;border-radius:2px;transition:background .3s,border .3s}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-start:before{right:50%;left:0}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-end:before{right:0;left:50%}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-start.ant-picker-cell-range-end:before{right:50%;left:50%}.ant-picker-panel-rtl .ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start .ant-picker-cell-inner:after{right:0;left:-6px}.ant-picker-panel-rtl .ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end .ant-picker-cell-inner:after{right:-6px;left:0}.ant-picker-panel-rtl .ant-picker-cell-range-hover.ant-picker-cell-range-start:after{right:0;left:50%}.ant-picker-panel-rtl .ant-picker-cell-range-hover.ant-picker-cell-range-end:after{right:50%;left:0}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single):not(.ant-picker-cell-range-end) .ant-picker-cell-inner{border-radius:0 2px 2px 0}.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single):not(.ant-picker-cell-range-start) .ant-picker-cell-inner{border-radius:2px 0 0 2px}.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover:not(.ant-picker-cell-selected):first-child:after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover-edge-start.ant-picker-cell-range-hover-edge-start-near-range:after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-hover-edge-start:not(.ant-picker-cell-range-hover-edge-start-near-range):after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-hover-start:after{right:6px;left:0;border-right:1px dashed #7ec1ff;border-left:none;border-radius:0 2px 2px 0}.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover:not(.ant-picker-cell-selected):last-child:after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-end.ant-picker-cell-range-hover-edge-end.ant-picker-cell-range-hover-edge-end-near-range:after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-hover-edge-end:not(.ant-picker-cell-range-hover-edge-end-near-range):after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-range-hover-end:after{right:0;left:6px;border-right:none;border-left:1px dashed #7ec1ff;border-radius:2px 0 0 2px}.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover-start:last-child:after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-range-hover-end:first-child:after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover-edge-start:not(.ant-picker-cell-range-hover):after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover-end.ant-picker-cell-range-hover-edge-start:not(.ant-picker-cell-range-hover):after,.ant-picker-panel-rtl .ant-picker-cell-in-view.ant-picker-cell-end.ant-picker-cell-range-hover-start.ant-picker-cell-range-hover-edge-end:not(.ant-picker-cell-range-hover):after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover.ant-picker-cell-range-hover-edge-start:last-child:after,.ant-picker-panel-rtl tr>.ant-picker-cell-in-view.ant-picker-cell-end.ant-picker-cell-range-hover.ant-picker-cell-range-hover-edge-end:first-child:after{right:6px;left:6px;border-right:1px dashed #7ec1ff;border-left:1px dashed #7ec1ff;border-radius:2px}.ant-picker-dropdown-rtl .ant-picker-footer-extra{direction:rtl;text-align:right}.ant-picker-panel-rtl .ant-picker-time-panel{direction:ltr}.ant-picker-inline{border:none;padding:0}.ant-picker-inline .ant-picker-range-arrow{display:none!important}.ant-picker-inline .ant-picker-dropdown{z-index:auto}.ant-picker-dropdown{top:unset;left:unset}.ant-picker-panel-container.ant-picker-week-number .ant-picker-date-panel .ant-picker-content{width:100%}.ant-picker-panel-container.ant-picker-week-number .ant-picker-date-panel .ant-picker-content th{width:inherit}.ant-picker-range-arrow{margin-right:16.5px}.ant-descriptions-header{display:flex;align-items:center;margin-bottom:20px}.ant-descriptions-title{flex:auto;overflow:hidden;color:#000000d9;font-weight:700;font-size:16px;line-height:1.5715;white-space:nowrap;text-overflow:ellipsis}.ant-descriptions-extra{margin-left:auto;color:#000000d9;font-size:14px}.ant-descriptions-view{width:100%;border-radius:2px}.ant-descriptions-view table{width:100%;table-layout:fixed}.ant-descriptions-row>th,.ant-descriptions-row>td{padding-bottom:16px}.ant-descriptions-row:last-child{border-bottom:none}.ant-descriptions-item-label{color:#000000d9;font-weight:400;font-size:14px;line-height:1.5715;text-align:start}.ant-descriptions-item-label:after{content:":";position:relative;top:-.5px;margin:0 8px 0 2px}.ant-descriptions-item-label.ant-descriptions-item-no-colon:after{content:" "}.ant-descriptions-item-no-label:after{margin:0;content:""}.ant-descriptions-item-content{display:table-cell;flex:1;color:#000000d9;font-size:14px;line-height:1.5715;word-break:break-word;overflow-wrap:break-word}.ant-descriptions-item{padding-bottom:0;vertical-align:top}.ant-descriptions-item-container{display:flex}.ant-descriptions-item-container .ant-descriptions-item-label,.ant-descriptions-item-container .ant-descriptions-item-content{display:inline-flex;align-items:baseline}.ant-descriptions-middle .ant-descriptions-row>th,.ant-descriptions-middle .ant-descriptions-row>td{padding-bottom:12px}.ant-descriptions-small .ant-descriptions-row>th,.ant-descriptions-small .ant-descriptions-row>td{padding-bottom:8px}.ant-descriptions-bordered .ant-descriptions-view{border:1px solid #f0f0f0}.ant-descriptions-bordered .ant-descriptions-view>table{table-layout:auto;border-collapse:collapse}.ant-descriptions-bordered .ant-descriptions-item-label,.ant-descriptions-bordered .ant-descriptions-item-content{padding:16px 24px;border-right:1px solid #f0f0f0}.ant-descriptions-bordered .ant-descriptions-item-label:last-child,.ant-descriptions-bordered .ant-descriptions-item-content:last-child{border-right:none}.ant-descriptions-bordered .ant-descriptions-item-label{background-color:#fafafa}.ant-descriptions-bordered .ant-descriptions-item-label:after{display:none}.ant-descriptions-bordered .ant-descriptions-row{border-bottom:1px solid #f0f0f0}.ant-descriptions-bordered .ant-descriptions-row:last-child{border-bottom:none}.ant-descriptions-bordered.ant-descriptions-middle .ant-descriptions-item-label,.ant-descriptions-bordered.ant-descriptions-middle .ant-descriptions-item-content{padding:12px 24px}.ant-descriptions-bordered.ant-descriptions-small .ant-descriptions-item-label,.ant-descriptions-bordered.ant-descriptions-small .ant-descriptions-item-content{padding:8px 16px}.ant-descriptions-rtl{direction:rtl}.ant-descriptions-rtl .ant-descriptions-item-label:after{margin:0 2px 0 8px}.ant-descriptions-rtl.ant-descriptions-bordered .ant-descriptions-item-label,.ant-descriptions-rtl.ant-descriptions-bordered .ant-descriptions-item-content{border-right:none;border-left:1px solid #f0f0f0}.ant-descriptions-rtl.ant-descriptions-bordered .ant-descriptions-item-label:last-child,.ant-descriptions-rtl.ant-descriptions-bordered .ant-descriptions-item-content:last-child{border-left:none}nz-descriptions{display:block}.ant-divider{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";border-top:1px solid rgba(0,0,0,.06)}.ant-divider-vertical{position:relative;top:-.06em;display:inline-block;height:.9em;margin:0 8px;vertical-align:middle;border-top:0;border-left:1px solid rgba(0,0,0,.06)}.ant-divider-horizontal{display:flex;clear:both;width:100%;min-width:100%;margin:24px 0}.ant-divider-horizontal.ant-divider-with-text{display:flex;margin:16px 0;color:#000000d9;font-weight:500;font-size:16px;white-space:nowrap;text-align:center;border-top:0;border-top-color:#0000000f}.ant-divider-horizontal.ant-divider-with-text:before,.ant-divider-horizontal.ant-divider-with-text:after{position:relative;top:50%;width:50%;border-top:1px solid transparent;border-top-color:inherit;border-bottom:0;transform:translateY(50%);content:""}.ant-divider-horizontal.ant-divider-with-text-left:before{top:50%;width:5%}.ant-divider-horizontal.ant-divider-with-text-left:after{top:50%;width:95%}.ant-divider-horizontal.ant-divider-with-text-right:before{top:50%;width:95%}.ant-divider-horizontal.ant-divider-with-text-right:after{top:50%;width:5%}.ant-divider-inner-text{display:inline-block;padding:0 1em}.ant-divider-dashed{background:none;border-color:#0000000f;border-style:dashed;border-width:1px 0 0}.ant-divider-horizontal.ant-divider-with-text.ant-divider-dashed:before,.ant-divider-horizontal.ant-divider-with-text.ant-divider-dashed:after{border-style:dashed none none}.ant-divider-vertical.ant-divider-dashed{border-width:0 0 0 1px}.ant-divider-plain.ant-divider-with-text{color:#000000d9;font-weight:400;font-size:14px}.ant-divider-horizontal.ant-divider-with-text-left.ant-divider-no-default-orientation-margin-left:before{width:0}.ant-divider-horizontal.ant-divider-with-text-left.ant-divider-no-default-orientation-margin-left:after{width:100%}.ant-divider-horizontal.ant-divider-with-text-left.ant-divider-no-default-orientation-margin-left .ant-divider-inner-text{padding-left:0}.ant-divider-horizontal.ant-divider-with-text-right.ant-divider-no-default-orientation-margin-right:before{width:100%}.ant-divider-horizontal.ant-divider-with-text-right.ant-divider-no-default-orientation-margin-right:after{width:0}.ant-divider-horizontal.ant-divider-with-text-right.ant-divider-no-default-orientation-margin-right .ant-divider-inner-text{padding-right:0}.ant-divider-rtl{direction:rtl}.ant-divider-rtl.ant-divider-horizontal.ant-divider-with-text-left:before{width:95%}.ant-divider-rtl.ant-divider-horizontal.ant-divider-with-text-left:after{width:5%}.ant-divider-rtl.ant-divider-horizontal.ant-divider-with-text-right:before{width:5%}.ant-divider-rtl.ant-divider-horizontal.ant-divider-with-text-right:after{width:95%}.ant-drawer{position:fixed;z-index:1000;width:0%;height:100%;transition:width 0s ease .3s,height 0s ease .3s}.ant-drawer-content-wrapper{position:absolute;width:100%;height:100%;transition:transform .3s cubic-bezier(.23,1,.32,1),box-shadow .3s cubic-bezier(.23,1,.32,1)}.ant-drawer .ant-drawer-content{width:100%;height:100%}.ant-drawer-left,.ant-drawer-right{top:0;width:0%;height:100%}.ant-drawer-left .ant-drawer-content-wrapper,.ant-drawer-right .ant-drawer-content-wrapper{height:100%}.ant-drawer-left.ant-drawer-open,.ant-drawer-right.ant-drawer-open{width:100%;transition:transform .3s cubic-bezier(.23,1,.32,1)}.ant-drawer-left,.ant-drawer-left .ant-drawer-content-wrapper{left:0}.ant-drawer-left.ant-drawer-open .ant-drawer-content-wrapper{box-shadow:6px 0 16px -8px #00000014,9px 0 28px #0000000d,12px 0 48px 16px #00000008}.ant-drawer-right,.ant-drawer-right .ant-drawer-content-wrapper{right:0}.ant-drawer-right.ant-drawer-open .ant-drawer-content-wrapper{box-shadow:-6px 0 16px -8px #00000014,-9px 0 28px #0000000d,-12px 0 48px 16px #00000008}.ant-drawer-right.ant-drawer-open.no-mask{right:1px;transform:translate(1px)}.ant-drawer-top,.ant-drawer-bottom{left:0;width:100%;height:0%}.ant-drawer-top .ant-drawer-content-wrapper,.ant-drawer-bottom .ant-drawer-content-wrapper{width:100%}.ant-drawer-top.ant-drawer-open,.ant-drawer-bottom.ant-drawer-open{height:100%;transition:transform .3s cubic-bezier(.23,1,.32,1)}.ant-drawer-top{top:0}.ant-drawer-top.ant-drawer-open .ant-drawer-content-wrapper{box-shadow:0 6px 16px -8px #00000014,0 9px 28px #0000000d,0 12px 48px 16px #00000008}.ant-drawer-bottom,.ant-drawer-bottom .ant-drawer-content-wrapper{bottom:0}.ant-drawer-bottom.ant-drawer-open .ant-drawer-content-wrapper{box-shadow:0 -6px 16px -8px #00000014,0 -9px 28px #0000000d,0 -12px 48px 16px #00000008}.ant-drawer-bottom.ant-drawer-open.no-mask{bottom:1px;transform:translateY(1px)}.ant-drawer.ant-drawer-open .ant-drawer-mask{height:100%;opacity:1;transition:none;animation:antdDrawerFadeIn .3s cubic-bezier(.23,1,.32,1);pointer-events:auto}.ant-drawer-title{flex:1;margin:0;color:#000000d9;font-weight:500;font-size:16px;line-height:22px}.ant-drawer-content{position:relative;z-index:1;overflow:auto;background-color:#fff;background-clip:padding-box;border:0}.ant-drawer-close{display:inline-block;margin-right:12px;color:#00000073;font-weight:700;font-size:16px;font-style:normal;line-height:1;text-align:center;text-transform:none;text-decoration:none;background:transparent;border:0;outline:0;cursor:pointer;transition:color .3s;text-rendering:auto}.ant-drawer-close:focus,.ant-drawer-close:hover{color:#000000bf;text-decoration:none}.ant-drawer-header{position:relative;display:flex;align-items:center;justify-content:space-between;padding:16px 24px;color:#000000d9;background:#fff;border-bottom:1px solid #f0f0f0;border-radius:2px 2px 0 0}.ant-drawer-header-title{display:flex;flex:1;align-items:center;justify-content:space-between}.ant-drawer-header-close-only{padding-bottom:0;border:none}.ant-drawer-wrapper-body{display:flex;flex-flow:column nowrap;width:100%;height:100%}.ant-drawer-body{flex-grow:1;padding:24px;overflow:auto;font-size:14px;line-height:1.5715;word-wrap:break-word}.ant-drawer-footer{flex-shrink:0;padding:10px 16px;border-top:1px solid #f0f0f0}.ant-drawer-mask{position:absolute;top:0;left:0;width:100%;height:0;background-color:#00000073;opacity:0;transition:opacity .3s linear,height 0s ease .3s;pointer-events:none}.ant-drawer .ant-picker-clear{background:#fff}@keyframes antdDrawerFadeIn{0%{opacity:0}to{opacity:1}}.ant-drawer-rtl{direction:rtl}.ant-drawer-rtl .ant-drawer-close{margin-right:0;margin-left:12px}.ant-dropdown-menu-item.ant-dropdown-menu-item-danger{color:#ff4d4f}.ant-dropdown-menu-item.ant-dropdown-menu-item-danger:hover{color:#fff;background-color:#ff4d4f}.ant-dropdown{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:absolute;top:-9999px;left:-9999px;z-index:1050;display:block}.ant-dropdown:before{position:absolute;inset:-4px 0 -4px -7px;z-index:-9999;opacity:.0001;content:" "}.ant-dropdown-wrap{position:relative}.ant-dropdown-wrap .ant-btn>.anticon-down{font-size:10px}.ant-dropdown-wrap .anticon-down:before{transition:transform .2s}.ant-dropdown-wrap-open .anticon-down:before{transform:rotate(180deg)}.ant-dropdown-hidden,.ant-dropdown-menu-hidden,.ant-dropdown-menu-submenu-hidden{display:none}.ant-dropdown-show-arrow.ant-dropdown-placement-topLeft,.ant-dropdown-show-arrow.ant-dropdown-placement-top,.ant-dropdown-show-arrow.ant-dropdown-placement-topRight{padding-bottom:15.3137085px}.ant-dropdown-show-arrow.ant-dropdown-placement-bottomLeft,.ant-dropdown-show-arrow.ant-dropdown-placement-bottom,.ant-dropdown-show-arrow.ant-dropdown-placement-bottomRight{padding-top:15.3137085px}.ant-dropdown-arrow{position:absolute;z-index:1;display:block;width:11.3137085px;height:11.3137085px;background:linear-gradient(135deg,transparent 40%,#fff 40%);border-radius:0 0 2px;pointer-events:none}.ant-dropdown-arrow:before{position:absolute;top:-11.3137085px;left:-11.3137085px;width:33.9411255px;height:33.9411255px;background:#fff;background-repeat:no-repeat;background-position:-10px -10px;content:"";clip-path:path("M 9.849242404917499 24.091883092036785 A 5 5 0 0 1 13.384776310850237 22.627416997969522 L 20.627416997969522 22.627416997969522 A 2 2 0 0 0 22.627416997969522 20.627416997969522 L 22.627416997969522 13.384776310850237 A 5 5 0 0 1 24.091883092036785 9.849242404917499 L 23.091883092036785 9.849242404917499 L 9.849242404917499 23.091883092036785 Z")}.ant-dropdown-placement-top>.ant-dropdown-arrow,.ant-dropdown-placement-topLeft>.ant-dropdown-arrow,.ant-dropdown-placement-topRight>.ant-dropdown-arrow{bottom:10px;box-shadow:3px 3px 7px -3px #0000001a;transform:rotate(45deg)}.ant-dropdown-placement-top>.ant-dropdown-arrow{left:50%;transform:translate(-50%) rotate(45deg)}.ant-dropdown-placement-topLeft>.ant-dropdown-arrow{left:16px}.ant-dropdown-placement-topRight>.ant-dropdown-arrow{right:16px}.ant-dropdown-placement-bottom>.ant-dropdown-arrow,.ant-dropdown-placement-bottomLeft>.ant-dropdown-arrow,.ant-dropdown-placement-bottomRight>.ant-dropdown-arrow{top:9.41421356px;box-shadow:2px 2px 5px -2px #0000001a;transform:rotate(-135deg) translateY(-.5px)}.ant-dropdown-placement-bottom>.ant-dropdown-arrow{left:50%;transform:translate(-50%) rotate(-135deg) translateY(-.5px)}.ant-dropdown-placement-bottomLeft>.ant-dropdown-arrow{left:16px}.ant-dropdown-placement-bottomRight>.ant-dropdown-arrow{right:16px}.ant-dropdown-menu{position:relative;margin:0;padding:4px 0;text-align:left;list-style-type:none;background-color:#fff;background-clip:padding-box;border-radius:2px;outline:none;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d}.ant-dropdown-menu-item-group-title{padding:5px 12px;color:#00000073;transition:all .3s}.ant-dropdown-menu-submenu-popup{position:absolute;z-index:1050;background:transparent;box-shadow:none;transform-origin:0 0}.ant-dropdown-menu-submenu-popup ul,.ant-dropdown-menu-submenu-popup li{list-style:none}.ant-dropdown-menu-submenu-popup ul{margin-right:.3em;margin-left:.3em}.ant-dropdown-menu-item{position:relative;display:flex;align-items:center}.ant-dropdown-menu-item-icon{min-width:12px;margin-right:8px;font-size:12px}.ant-dropdown-menu-title-content{flex:auto}.ant-dropdown-menu-title-content>a{color:inherit;transition:all .3s}.ant-dropdown-menu-title-content>a:hover{color:inherit}.ant-dropdown-menu-title-content>a:after{position:absolute;inset:0;content:""}.ant-dropdown-menu-item,.ant-dropdown-menu-submenu-title{clear:both;margin:0;padding:5px 12px;color:#000000d9;font-weight:400;font-size:14px;line-height:22px;cursor:pointer;transition:all .3s}.ant-dropdown-menu-item-selected,.ant-dropdown-menu-submenu-title-selected{color:#1890ff;background-color:#e6f7ff}.ant-dropdown-menu-item:hover,.ant-dropdown-menu-submenu-title:hover,.ant-dropdown-menu-item.ant-dropdown-menu-item-active,.ant-dropdown-menu-item.ant-dropdown-menu-submenu-title-active,.ant-dropdown-menu-submenu-title.ant-dropdown-menu-item-active,.ant-dropdown-menu-submenu-title.ant-dropdown-menu-submenu-title-active{background-color:#f5f5f5}.ant-dropdown-menu-item-disabled,.ant-dropdown-menu-submenu-title-disabled{color:#00000040;cursor:not-allowed}.ant-dropdown-menu-item-disabled:hover,.ant-dropdown-menu-submenu-title-disabled:hover{color:#00000040;background-color:#fff;cursor:not-allowed}.ant-dropdown-menu-item-disabled a,.ant-dropdown-menu-submenu-title-disabled a{pointer-events:none}.ant-dropdown-menu-item-divider,.ant-dropdown-menu-submenu-title-divider{height:1px;margin:4px 0;overflow:hidden;line-height:0;background-color:#f0f0f0}.ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon,.ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon{position:absolute;right:8px}.ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon,.ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon{margin-right:0!important;color:#00000073;font-size:10px;font-style:normal}.ant-dropdown-menu-item-group-list{margin:0 8px;padding:0;list-style:none}.ant-dropdown-menu-submenu-title{padding-right:24px}.ant-dropdown-menu-submenu-vertical{position:relative}.ant-dropdown-menu-submenu-vertical>.ant-dropdown-menu{position:absolute;top:0;left:100%;min-width:100%;margin-left:4px;transform-origin:0 0}.ant-dropdown-menu-submenu.ant-dropdown-menu-submenu-disabled .ant-dropdown-menu-submenu-title,.ant-dropdown-menu-submenu.ant-dropdown-menu-submenu-disabled .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-arrow-icon{color:#00000040;background-color:#fff;cursor:not-allowed}.ant-dropdown-menu-submenu-selected .ant-dropdown-menu-submenu-title{color:#1890ff}.ant-dropdown.ant-slide-down-enter.ant-slide-down-enter-active.ant-dropdown-placement-bottomLeft,.ant-dropdown.ant-slide-down-appear.ant-slide-down-appear-active.ant-dropdown-placement-bottomLeft,.ant-dropdown.ant-slide-down-enter.ant-slide-down-enter-active.ant-dropdown-placement-bottom,.ant-dropdown.ant-slide-down-appear.ant-slide-down-appear-active.ant-dropdown-placement-bottom,.ant-dropdown.ant-slide-down-enter.ant-slide-down-enter-active.ant-dropdown-placement-bottomRight,.ant-dropdown.ant-slide-down-appear.ant-slide-down-appear-active.ant-dropdown-placement-bottomRight{animation-name:antSlideUpIn}.ant-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-dropdown-placement-topLeft,.ant-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-dropdown-placement-topLeft,.ant-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-dropdown-placement-top,.ant-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-dropdown-placement-top,.ant-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-dropdown-placement-topRight,.ant-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-dropdown-placement-topRight{animation-name:antSlideDownIn}.ant-dropdown.ant-slide-down-leave.ant-slide-down-leave-active.ant-dropdown-placement-bottomLeft,.ant-dropdown.ant-slide-down-leave.ant-slide-down-leave-active.ant-dropdown-placement-bottom,.ant-dropdown.ant-slide-down-leave.ant-slide-down-leave-active.ant-dropdown-placement-bottomRight{animation-name:antSlideUpOut}.ant-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-dropdown-placement-topLeft,.ant-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-dropdown-placement-top,.ant-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-dropdown-placement-topRight{animation-name:antSlideDownOut}.ant-dropdown-trigger>.anticon.anticon-down,.ant-dropdown-link>.anticon.anticon-down,.ant-dropdown-button>.anticon.anticon-down{font-size:10px;vertical-align:baseline}.ant-dropdown-button{white-space:nowrap}.ant-dropdown-button.ant-btn-group>.ant-btn-loading,.ant-dropdown-button.ant-btn-group>.ant-btn-loading+.ant-btn{cursor:default;pointer-events:none}.ant-dropdown-button.ant-btn-group>.ant-btn-loading+.ant-btn:before{display:block}.ant-dropdown-button.ant-btn-group>.ant-btn:last-child:not(:first-child):not(.ant-btn-icon-only){padding-right:8px;padding-left:8px}.ant-dropdown-menu-dark,.ant-dropdown-menu-dark .ant-dropdown-menu{background:#001529}.ant-dropdown-menu-dark .ant-dropdown-menu-item,.ant-dropdown-menu-dark .ant-dropdown-menu-submenu-title,.ant-dropdown-menu-dark .ant-dropdown-menu-item>a,.ant-dropdown-menu-dark .ant-dropdown-menu-item>.anticon+span>a{color:#ffffffa6}.ant-dropdown-menu-dark .ant-dropdown-menu-item .ant-dropdown-menu-submenu-arrow:after,.ant-dropdown-menu-dark .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-arrow:after,.ant-dropdown-menu-dark .ant-dropdown-menu-item>a .ant-dropdown-menu-submenu-arrow:after,.ant-dropdown-menu-dark .ant-dropdown-menu-item>.anticon+span>a .ant-dropdown-menu-submenu-arrow:after{color:#ffffffa6}.ant-dropdown-menu-dark .ant-dropdown-menu-item:hover,.ant-dropdown-menu-dark .ant-dropdown-menu-submenu-title:hover,.ant-dropdown-menu-dark .ant-dropdown-menu-item>a:hover,.ant-dropdown-menu-dark .ant-dropdown-menu-item>.anticon+span>a:hover{color:#fff;background:transparent}.ant-dropdown-menu-dark .ant-dropdown-menu-item-selected,.ant-dropdown-menu-dark .ant-dropdown-menu-item-selected:hover,.ant-dropdown-menu-dark .ant-dropdown-menu-item-selected>a{color:#fff;background:#1890ff}.ant-dropdown-rtl{direction:rtl}.ant-dropdown-rtl.ant-dropdown:before{right:-7px;left:0}.ant-dropdown-menu.ant-dropdown-menu-rtl,.ant-dropdown-rtl .ant-dropdown-menu-item-group-title,.ant-dropdown-menu-submenu-rtl .ant-dropdown-menu-item-group-title{direction:rtl;text-align:right}.ant-dropdown-menu-submenu-popup.ant-dropdown-menu-submenu-rtl{transform-origin:100% 0}.ant-dropdown-rtl .ant-dropdown-menu-submenu-popup ul,.ant-dropdown-rtl .ant-dropdown-menu-submenu-popup li,.ant-dropdown-rtl .ant-dropdown-menu-item,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title{text-align:right}.ant-dropdown-rtl .ant-dropdown-menu-item>.anticon:first-child,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title>.anticon:first-child,.ant-dropdown-rtl .ant-dropdown-menu-item>span>.anticon:first-child,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title>span>.anticon:first-child{margin-right:0;margin-left:8px}.ant-dropdown-rtl .ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon{right:auto;left:8px}.ant-dropdown-rtl .ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon{margin-left:0!important;transform:scaleX(-1)}.ant-dropdown-rtl .ant-dropdown-menu-submenu-title{padding-right:12px;padding-left:24px}.ant-dropdown-rtl .ant-dropdown-menu-submenu-vertical>.ant-dropdown-menu{right:100%;left:0;margin-right:4px;margin-left:0}.ant-dropdown-menu>ul{list-style:inherit;margin:0;padding:0}.ant-dropdown{top:0;left:0;position:relative;width:100%;margin-top:6px;margin-bottom:6px}.ant-dropdown-rtl .ant-dropdown-menu-item .ant-dropdown-menu-submenu-arrow,.ant-dropdown-rtl .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-arrow{transform:rotate(180deg)}.ant-empty{margin:0 8px;font-size:14px;line-height:1.5715;text-align:center}.ant-empty-image{height:100px;margin-bottom:8px}.ant-empty-image img{height:100%}.ant-empty-image svg{height:100%;margin:auto}.ant-empty-footer{margin-top:16px}.ant-empty-normal{margin:32px 0;color:#00000040}.ant-empty-normal .ant-empty-image{height:40px}.ant-empty-small{margin:8px 0;color:#00000040}.ant-empty-small .ant-empty-image{height:35px}.ant-empty-img-default-ellipse{fill:#f5f5f5;fill-opacity:.8}.ant-empty-img-default-path-1{fill:#aeb8c2}.ant-empty-img-default-path-2{fill:url(#linearGradient-1)}.ant-empty-img-default-path-3{fill:#f5f5f7}.ant-empty-img-default-path-4,.ant-empty-img-default-path-5{fill:#dce0e6}.ant-empty-img-default-g{fill:#fff}.ant-empty-img-simple-ellipse{fill:#f5f5f5}.ant-empty-img-simple-g{stroke:#d9d9d9}.ant-empty-img-simple-path{fill:#fafafa}.ant-empty-rtl{direction:rtl}nz-empty{display:block}.ant-row{display:flex;flex-flow:row wrap}.ant-row:before,.ant-row:after{display:flex}.ant-row-no-wrap{flex-wrap:nowrap}.ant-row-start{justify-content:flex-start}.ant-row-center{justify-content:center}.ant-row-end{justify-content:flex-end}.ant-row-space-between{justify-content:space-between}.ant-row-space-around{justify-content:space-around}.ant-row-space-evenly{justify-content:space-evenly}.ant-row-top{align-items:flex-start}.ant-row-middle{align-items:center}.ant-row-bottom{align-items:flex-end}.ant-col{position:relative;max-width:100%;min-height:1px}.ant-col-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-push-24{left:100%}.ant-col-pull-24{right:100%}.ant-col-offset-24{margin-left:100%}.ant-col-order-24{order:24}.ant-col-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-push-23{left:95.83333333%}.ant-col-pull-23{right:95.83333333%}.ant-col-offset-23{margin-left:95.83333333%}.ant-col-order-23{order:23}.ant-col-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-push-22{left:91.66666667%}.ant-col-pull-22{right:91.66666667%}.ant-col-offset-22{margin-left:91.66666667%}.ant-col-order-22{order:22}.ant-col-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-push-21{left:87.5%}.ant-col-pull-21{right:87.5%}.ant-col-offset-21{margin-left:87.5%}.ant-col-order-21{order:21}.ant-col-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-push-20{left:83.33333333%}.ant-col-pull-20{right:83.33333333%}.ant-col-offset-20{margin-left:83.33333333%}.ant-col-order-20{order:20}.ant-col-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-push-19{left:79.16666667%}.ant-col-pull-19{right:79.16666667%}.ant-col-offset-19{margin-left:79.16666667%}.ant-col-order-19{order:19}.ant-col-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-push-18{left:75%}.ant-col-pull-18{right:75%}.ant-col-offset-18{margin-left:75%}.ant-col-order-18{order:18}.ant-col-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-push-17{left:70.83333333%}.ant-col-pull-17{right:70.83333333%}.ant-col-offset-17{margin-left:70.83333333%}.ant-col-order-17{order:17}.ant-col-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-push-16{left:66.66666667%}.ant-col-pull-16{right:66.66666667%}.ant-col-offset-16{margin-left:66.66666667%}.ant-col-order-16{order:16}.ant-col-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-push-15{left:62.5%}.ant-col-pull-15{right:62.5%}.ant-col-offset-15{margin-left:62.5%}.ant-col-order-15{order:15}.ant-col-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-push-14{left:58.33333333%}.ant-col-pull-14{right:58.33333333%}.ant-col-offset-14{margin-left:58.33333333%}.ant-col-order-14{order:14}.ant-col-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-push-13{left:54.16666667%}.ant-col-pull-13{right:54.16666667%}.ant-col-offset-13{margin-left:54.16666667%}.ant-col-order-13{order:13}.ant-col-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-push-12{left:50%}.ant-col-pull-12{right:50%}.ant-col-offset-12{margin-left:50%}.ant-col-order-12{order:12}.ant-col-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-push-11{left:45.83333333%}.ant-col-pull-11{right:45.83333333%}.ant-col-offset-11{margin-left:45.83333333%}.ant-col-order-11{order:11}.ant-col-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-push-10{left:41.66666667%}.ant-col-pull-10{right:41.66666667%}.ant-col-offset-10{margin-left:41.66666667%}.ant-col-order-10{order:10}.ant-col-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-push-9{left:37.5%}.ant-col-pull-9{right:37.5%}.ant-col-offset-9{margin-left:37.5%}.ant-col-order-9{order:9}.ant-col-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-push-8{left:33.33333333%}.ant-col-pull-8{right:33.33333333%}.ant-col-offset-8{margin-left:33.33333333%}.ant-col-order-8{order:8}.ant-col-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-push-7{left:29.16666667%}.ant-col-pull-7{right:29.16666667%}.ant-col-offset-7{margin-left:29.16666667%}.ant-col-order-7{order:7}.ant-col-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-push-6{left:25%}.ant-col-pull-6{right:25%}.ant-col-offset-6{margin-left:25%}.ant-col-order-6{order:6}.ant-col-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-push-5{left:20.83333333%}.ant-col-pull-5{right:20.83333333%}.ant-col-offset-5{margin-left:20.83333333%}.ant-col-order-5{order:5}.ant-col-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-push-4{left:16.66666667%}.ant-col-pull-4{right:16.66666667%}.ant-col-offset-4{margin-left:16.66666667%}.ant-col-order-4{order:4}.ant-col-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-push-3{left:12.5%}.ant-col-pull-3{right:12.5%}.ant-col-offset-3{margin-left:12.5%}.ant-col-order-3{order:3}.ant-col-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-push-2{left:8.33333333%}.ant-col-pull-2{right:8.33333333%}.ant-col-offset-2{margin-left:8.33333333%}.ant-col-order-2{order:2}.ant-col-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-push-1{left:4.16666667%}.ant-col-pull-1{right:4.16666667%}.ant-col-offset-1{margin-left:4.16666667%}.ant-col-order-1{order:1}.ant-col-0{display:none}.ant-col-offset-0{margin-left:0}.ant-col-order-0{order:0}.ant-col-offset-0.ant-col-rtl{margin-right:0}.ant-col-push-1.ant-col-rtl{right:4.16666667%;left:auto}.ant-col-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}.ant-col-xs-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-xs-push-24{left:100%}.ant-col-xs-pull-24{right:100%}.ant-col-xs-offset-24{margin-left:100%}.ant-col-xs-order-24{order:24}.ant-col-xs-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-xs-push-23{left:95.83333333%}.ant-col-xs-pull-23{right:95.83333333%}.ant-col-xs-offset-23{margin-left:95.83333333%}.ant-col-xs-order-23{order:23}.ant-col-xs-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-xs-push-22{left:91.66666667%}.ant-col-xs-pull-22{right:91.66666667%}.ant-col-xs-offset-22{margin-left:91.66666667%}.ant-col-xs-order-22{order:22}.ant-col-xs-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-xs-push-21{left:87.5%}.ant-col-xs-pull-21{right:87.5%}.ant-col-xs-offset-21{margin-left:87.5%}.ant-col-xs-order-21{order:21}.ant-col-xs-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-xs-push-20{left:83.33333333%}.ant-col-xs-pull-20{right:83.33333333%}.ant-col-xs-offset-20{margin-left:83.33333333%}.ant-col-xs-order-20{order:20}.ant-col-xs-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-xs-push-19{left:79.16666667%}.ant-col-xs-pull-19{right:79.16666667%}.ant-col-xs-offset-19{margin-left:79.16666667%}.ant-col-xs-order-19{order:19}.ant-col-xs-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-xs-push-18{left:75%}.ant-col-xs-pull-18{right:75%}.ant-col-xs-offset-18{margin-left:75%}.ant-col-xs-order-18{order:18}.ant-col-xs-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-xs-push-17{left:70.83333333%}.ant-col-xs-pull-17{right:70.83333333%}.ant-col-xs-offset-17{margin-left:70.83333333%}.ant-col-xs-order-17{order:17}.ant-col-xs-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-xs-push-16{left:66.66666667%}.ant-col-xs-pull-16{right:66.66666667%}.ant-col-xs-offset-16{margin-left:66.66666667%}.ant-col-xs-order-16{order:16}.ant-col-xs-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-xs-push-15{left:62.5%}.ant-col-xs-pull-15{right:62.5%}.ant-col-xs-offset-15{margin-left:62.5%}.ant-col-xs-order-15{order:15}.ant-col-xs-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-xs-push-14{left:58.33333333%}.ant-col-xs-pull-14{right:58.33333333%}.ant-col-xs-offset-14{margin-left:58.33333333%}.ant-col-xs-order-14{order:14}.ant-col-xs-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-xs-push-13{left:54.16666667%}.ant-col-xs-pull-13{right:54.16666667%}.ant-col-xs-offset-13{margin-left:54.16666667%}.ant-col-xs-order-13{order:13}.ant-col-xs-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-xs-push-12{left:50%}.ant-col-xs-pull-12{right:50%}.ant-col-xs-offset-12{margin-left:50%}.ant-col-xs-order-12{order:12}.ant-col-xs-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-xs-push-11{left:45.83333333%}.ant-col-xs-pull-11{right:45.83333333%}.ant-col-xs-offset-11{margin-left:45.83333333%}.ant-col-xs-order-11{order:11}.ant-col-xs-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-xs-push-10{left:41.66666667%}.ant-col-xs-pull-10{right:41.66666667%}.ant-col-xs-offset-10{margin-left:41.66666667%}.ant-col-xs-order-10{order:10}.ant-col-xs-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-xs-push-9{left:37.5%}.ant-col-xs-pull-9{right:37.5%}.ant-col-xs-offset-9{margin-left:37.5%}.ant-col-xs-order-9{order:9}.ant-col-xs-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-xs-push-8{left:33.33333333%}.ant-col-xs-pull-8{right:33.33333333%}.ant-col-xs-offset-8{margin-left:33.33333333%}.ant-col-xs-order-8{order:8}.ant-col-xs-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-xs-push-7{left:29.16666667%}.ant-col-xs-pull-7{right:29.16666667%}.ant-col-xs-offset-7{margin-left:29.16666667%}.ant-col-xs-order-7{order:7}.ant-col-xs-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-xs-push-6{left:25%}.ant-col-xs-pull-6{right:25%}.ant-col-xs-offset-6{margin-left:25%}.ant-col-xs-order-6{order:6}.ant-col-xs-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-xs-push-5{left:20.83333333%}.ant-col-xs-pull-5{right:20.83333333%}.ant-col-xs-offset-5{margin-left:20.83333333%}.ant-col-xs-order-5{order:5}.ant-col-xs-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-xs-push-4{left:16.66666667%}.ant-col-xs-pull-4{right:16.66666667%}.ant-col-xs-offset-4{margin-left:16.66666667%}.ant-col-xs-order-4{order:4}.ant-col-xs-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-xs-push-3{left:12.5%}.ant-col-xs-pull-3{right:12.5%}.ant-col-xs-offset-3{margin-left:12.5%}.ant-col-xs-order-3{order:3}.ant-col-xs-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-xs-push-2{left:8.33333333%}.ant-col-xs-pull-2{right:8.33333333%}.ant-col-xs-offset-2{margin-left:8.33333333%}.ant-col-xs-order-2{order:2}.ant-col-xs-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-xs-push-1{left:4.16666667%}.ant-col-xs-pull-1{right:4.16666667%}.ant-col-xs-offset-1{margin-left:4.16666667%}.ant-col-xs-order-1{order:1}.ant-col-xs-0{display:none}.ant-col-push-0{left:auto}.ant-col-pull-0{right:auto}.ant-col-xs-push-0{left:auto}.ant-col-xs-pull-0{right:auto}.ant-col-xs-offset-0{margin-left:0}.ant-col-xs-order-0{order:0}.ant-col-push-0.ant-col-rtl{right:auto}.ant-col-pull-0.ant-col-rtl{left:auto}.ant-col-xs-push-0.ant-col-rtl{right:auto}.ant-col-xs-pull-0.ant-col-rtl{left:auto}.ant-col-xs-offset-0.ant-col-rtl{margin-right:0}.ant-col-xs-push-1.ant-col-rtl{right:4.16666667%;left:auto}.ant-col-xs-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-xs-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-xs-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-xs-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-xs-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-xs-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-xs-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-xs-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-xs-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-xs-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-xs-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-xs-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-xs-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-xs-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-xs-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-xs-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-xs-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-xs-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-xs-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-xs-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-xs-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-xs-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-xs-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-xs-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-xs-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-xs-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-xs-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-xs-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-xs-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-xs-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-xs-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-xs-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-xs-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-xs-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-xs-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-xs-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-xs-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-xs-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-xs-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-xs-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-xs-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-xs-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-xs-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-xs-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-xs-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-xs-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-xs-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-xs-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-xs-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-xs-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-xs-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-xs-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-xs-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-xs-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-xs-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-xs-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-xs-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-xs-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-xs-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-xs-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-xs-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-xs-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-xs-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-xs-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-xs-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-xs-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-xs-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-xs-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-xs-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-xs-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-xs-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}@media (min-width: 576px){.ant-col-sm-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-sm-push-24{left:100%}.ant-col-sm-pull-24{right:100%}.ant-col-sm-offset-24{margin-left:100%}.ant-col-sm-order-24{order:24}.ant-col-sm-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-sm-push-23{left:95.83333333%}.ant-col-sm-pull-23{right:95.83333333%}.ant-col-sm-offset-23{margin-left:95.83333333%}.ant-col-sm-order-23{order:23}.ant-col-sm-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-sm-push-22{left:91.66666667%}.ant-col-sm-pull-22{right:91.66666667%}.ant-col-sm-offset-22{margin-left:91.66666667%}.ant-col-sm-order-22{order:22}.ant-col-sm-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-sm-push-21{left:87.5%}.ant-col-sm-pull-21{right:87.5%}.ant-col-sm-offset-21{margin-left:87.5%}.ant-col-sm-order-21{order:21}.ant-col-sm-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-sm-push-20{left:83.33333333%}.ant-col-sm-pull-20{right:83.33333333%}.ant-col-sm-offset-20{margin-left:83.33333333%}.ant-col-sm-order-20{order:20}.ant-col-sm-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-sm-push-19{left:79.16666667%}.ant-col-sm-pull-19{right:79.16666667%}.ant-col-sm-offset-19{margin-left:79.16666667%}.ant-col-sm-order-19{order:19}.ant-col-sm-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-sm-push-18{left:75%}.ant-col-sm-pull-18{right:75%}.ant-col-sm-offset-18{margin-left:75%}.ant-col-sm-order-18{order:18}.ant-col-sm-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-sm-push-17{left:70.83333333%}.ant-col-sm-pull-17{right:70.83333333%}.ant-col-sm-offset-17{margin-left:70.83333333%}.ant-col-sm-order-17{order:17}.ant-col-sm-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-sm-push-16{left:66.66666667%}.ant-col-sm-pull-16{right:66.66666667%}.ant-col-sm-offset-16{margin-left:66.66666667%}.ant-col-sm-order-16{order:16}.ant-col-sm-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-sm-push-15{left:62.5%}.ant-col-sm-pull-15{right:62.5%}.ant-col-sm-offset-15{margin-left:62.5%}.ant-col-sm-order-15{order:15}.ant-col-sm-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-sm-push-14{left:58.33333333%}.ant-col-sm-pull-14{right:58.33333333%}.ant-col-sm-offset-14{margin-left:58.33333333%}.ant-col-sm-order-14{order:14}.ant-col-sm-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-sm-push-13{left:54.16666667%}.ant-col-sm-pull-13{right:54.16666667%}.ant-col-sm-offset-13{margin-left:54.16666667%}.ant-col-sm-order-13{order:13}.ant-col-sm-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-sm-push-12{left:50%}.ant-col-sm-pull-12{right:50%}.ant-col-sm-offset-12{margin-left:50%}.ant-col-sm-order-12{order:12}.ant-col-sm-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-sm-push-11{left:45.83333333%}.ant-col-sm-pull-11{right:45.83333333%}.ant-col-sm-offset-11{margin-left:45.83333333%}.ant-col-sm-order-11{order:11}.ant-col-sm-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-sm-push-10{left:41.66666667%}.ant-col-sm-pull-10{right:41.66666667%}.ant-col-sm-offset-10{margin-left:41.66666667%}.ant-col-sm-order-10{order:10}.ant-col-sm-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-sm-push-9{left:37.5%}.ant-col-sm-pull-9{right:37.5%}.ant-col-sm-offset-9{margin-left:37.5%}.ant-col-sm-order-9{order:9}.ant-col-sm-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-sm-push-8{left:33.33333333%}.ant-col-sm-pull-8{right:33.33333333%}.ant-col-sm-offset-8{margin-left:33.33333333%}.ant-col-sm-order-8{order:8}.ant-col-sm-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-sm-push-7{left:29.16666667%}.ant-col-sm-pull-7{right:29.16666667%}.ant-col-sm-offset-7{margin-left:29.16666667%}.ant-col-sm-order-7{order:7}.ant-col-sm-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-sm-push-6{left:25%}.ant-col-sm-pull-6{right:25%}.ant-col-sm-offset-6{margin-left:25%}.ant-col-sm-order-6{order:6}.ant-col-sm-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-sm-push-5{left:20.83333333%}.ant-col-sm-pull-5{right:20.83333333%}.ant-col-sm-offset-5{margin-left:20.83333333%}.ant-col-sm-order-5{order:5}.ant-col-sm-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-sm-push-4{left:16.66666667%}.ant-col-sm-pull-4{right:16.66666667%}.ant-col-sm-offset-4{margin-left:16.66666667%}.ant-col-sm-order-4{order:4}.ant-col-sm-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-sm-push-3{left:12.5%}.ant-col-sm-pull-3{right:12.5%}.ant-col-sm-offset-3{margin-left:12.5%}.ant-col-sm-order-3{order:3}.ant-col-sm-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-sm-push-2{left:8.33333333%}.ant-col-sm-pull-2{right:8.33333333%}.ant-col-sm-offset-2{margin-left:8.33333333%}.ant-col-sm-order-2{order:2}.ant-col-sm-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-sm-push-1{left:4.16666667%}.ant-col-sm-pull-1{right:4.16666667%}.ant-col-sm-offset-1{margin-left:4.16666667%}.ant-col-sm-order-1{order:1}.ant-col-sm-0{display:none}.ant-col-push-0{left:auto}.ant-col-pull-0{right:auto}.ant-col-sm-push-0{left:auto}.ant-col-sm-pull-0{right:auto}.ant-col-sm-offset-0{margin-left:0}.ant-col-sm-order-0{order:0}.ant-col-push-0.ant-col-rtl{right:auto}.ant-col-pull-0.ant-col-rtl{left:auto}.ant-col-sm-push-0.ant-col-rtl{right:auto}.ant-col-sm-pull-0.ant-col-rtl{left:auto}.ant-col-sm-offset-0.ant-col-rtl{margin-right:0}.ant-col-sm-push-1.ant-col-rtl{right:4.16666667%;left:auto}.ant-col-sm-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-sm-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-sm-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-sm-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-sm-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-sm-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-sm-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-sm-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-sm-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-sm-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-sm-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-sm-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-sm-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-sm-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-sm-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-sm-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-sm-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-sm-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-sm-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-sm-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-sm-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-sm-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-sm-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-sm-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-sm-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-sm-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-sm-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-sm-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-sm-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-sm-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-sm-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-sm-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-sm-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-sm-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-sm-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-sm-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-sm-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-sm-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-sm-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-sm-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-sm-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-sm-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-sm-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-sm-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-sm-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-sm-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-sm-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-sm-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-sm-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-sm-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-sm-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-sm-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-sm-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-sm-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-sm-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-sm-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-sm-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-sm-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-sm-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-sm-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-sm-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-sm-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-sm-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-sm-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-sm-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-sm-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-sm-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-sm-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-sm-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-sm-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-sm-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}@media (min-width: 768px){.ant-col-md-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-md-push-24{left:100%}.ant-col-md-pull-24{right:100%}.ant-col-md-offset-24{margin-left:100%}.ant-col-md-order-24{order:24}.ant-col-md-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-md-push-23{left:95.83333333%}.ant-col-md-pull-23{right:95.83333333%}.ant-col-md-offset-23{margin-left:95.83333333%}.ant-col-md-order-23{order:23}.ant-col-md-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-md-push-22{left:91.66666667%}.ant-col-md-pull-22{right:91.66666667%}.ant-col-md-offset-22{margin-left:91.66666667%}.ant-col-md-order-22{order:22}.ant-col-md-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-md-push-21{left:87.5%}.ant-col-md-pull-21{right:87.5%}.ant-col-md-offset-21{margin-left:87.5%}.ant-col-md-order-21{order:21}.ant-col-md-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-md-push-20{left:83.33333333%}.ant-col-md-pull-20{right:83.33333333%}.ant-col-md-offset-20{margin-left:83.33333333%}.ant-col-md-order-20{order:20}.ant-col-md-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-md-push-19{left:79.16666667%}.ant-col-md-pull-19{right:79.16666667%}.ant-col-md-offset-19{margin-left:79.16666667%}.ant-col-md-order-19{order:19}.ant-col-md-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-md-push-18{left:75%}.ant-col-md-pull-18{right:75%}.ant-col-md-offset-18{margin-left:75%}.ant-col-md-order-18{order:18}.ant-col-md-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-md-push-17{left:70.83333333%}.ant-col-md-pull-17{right:70.83333333%}.ant-col-md-offset-17{margin-left:70.83333333%}.ant-col-md-order-17{order:17}.ant-col-md-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-md-push-16{left:66.66666667%}.ant-col-md-pull-16{right:66.66666667%}.ant-col-md-offset-16{margin-left:66.66666667%}.ant-col-md-order-16{order:16}.ant-col-md-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-md-push-15{left:62.5%}.ant-col-md-pull-15{right:62.5%}.ant-col-md-offset-15{margin-left:62.5%}.ant-col-md-order-15{order:15}.ant-col-md-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-md-push-14{left:58.33333333%}.ant-col-md-pull-14{right:58.33333333%}.ant-col-md-offset-14{margin-left:58.33333333%}.ant-col-md-order-14{order:14}.ant-col-md-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-md-push-13{left:54.16666667%}.ant-col-md-pull-13{right:54.16666667%}.ant-col-md-offset-13{margin-left:54.16666667%}.ant-col-md-order-13{order:13}.ant-col-md-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-md-push-12{left:50%}.ant-col-md-pull-12{right:50%}.ant-col-md-offset-12{margin-left:50%}.ant-col-md-order-12{order:12}.ant-col-md-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-md-push-11{left:45.83333333%}.ant-col-md-pull-11{right:45.83333333%}.ant-col-md-offset-11{margin-left:45.83333333%}.ant-col-md-order-11{order:11}.ant-col-md-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-md-push-10{left:41.66666667%}.ant-col-md-pull-10{right:41.66666667%}.ant-col-md-offset-10{margin-left:41.66666667%}.ant-col-md-order-10{order:10}.ant-col-md-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-md-push-9{left:37.5%}.ant-col-md-pull-9{right:37.5%}.ant-col-md-offset-9{margin-left:37.5%}.ant-col-md-order-9{order:9}.ant-col-md-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-md-push-8{left:33.33333333%}.ant-col-md-pull-8{right:33.33333333%}.ant-col-md-offset-8{margin-left:33.33333333%}.ant-col-md-order-8{order:8}.ant-col-md-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-md-push-7{left:29.16666667%}.ant-col-md-pull-7{right:29.16666667%}.ant-col-md-offset-7{margin-left:29.16666667%}.ant-col-md-order-7{order:7}.ant-col-md-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-md-push-6{left:25%}.ant-col-md-pull-6{right:25%}.ant-col-md-offset-6{margin-left:25%}.ant-col-md-order-6{order:6}.ant-col-md-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-md-push-5{left:20.83333333%}.ant-col-md-pull-5{right:20.83333333%}.ant-col-md-offset-5{margin-left:20.83333333%}.ant-col-md-order-5{order:5}.ant-col-md-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-md-push-4{left:16.66666667%}.ant-col-md-pull-4{right:16.66666667%}.ant-col-md-offset-4{margin-left:16.66666667%}.ant-col-md-order-4{order:4}.ant-col-md-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-md-push-3{left:12.5%}.ant-col-md-pull-3{right:12.5%}.ant-col-md-offset-3{margin-left:12.5%}.ant-col-md-order-3{order:3}.ant-col-md-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-md-push-2{left:8.33333333%}.ant-col-md-pull-2{right:8.33333333%}.ant-col-md-offset-2{margin-left:8.33333333%}.ant-col-md-order-2{order:2}.ant-col-md-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-md-push-1{left:4.16666667%}.ant-col-md-pull-1{right:4.16666667%}.ant-col-md-offset-1{margin-left:4.16666667%}.ant-col-md-order-1{order:1}.ant-col-md-0{display:none}.ant-col-push-0{left:auto}.ant-col-pull-0{right:auto}.ant-col-md-push-0{left:auto}.ant-col-md-pull-0{right:auto}.ant-col-md-offset-0{margin-left:0}.ant-col-md-order-0{order:0}.ant-col-push-0.ant-col-rtl{right:auto}.ant-col-pull-0.ant-col-rtl{left:auto}.ant-col-md-push-0.ant-col-rtl{right:auto}.ant-col-md-pull-0.ant-col-rtl{left:auto}.ant-col-md-offset-0.ant-col-rtl{margin-right:0}.ant-col-md-push-1.ant-col-rtl{right:4.16666667%;left:auto}.ant-col-md-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-md-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-md-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-md-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-md-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-md-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-md-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-md-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-md-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-md-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-md-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-md-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-md-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-md-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-md-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-md-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-md-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-md-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-md-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-md-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-md-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-md-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-md-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-md-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-md-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-md-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-md-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-md-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-md-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-md-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-md-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-md-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-md-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-md-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-md-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-md-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-md-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-md-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-md-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-md-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-md-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-md-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-md-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-md-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-md-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-md-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-md-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-md-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-md-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-md-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-md-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-md-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-md-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-md-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-md-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-md-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-md-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-md-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-md-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-md-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-md-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-md-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-md-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-md-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-md-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-md-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-md-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-md-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-md-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-md-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-md-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}@media (min-width: 992px){.ant-col-lg-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-lg-push-24{left:100%}.ant-col-lg-pull-24{right:100%}.ant-col-lg-offset-24{margin-left:100%}.ant-col-lg-order-24{order:24}.ant-col-lg-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-lg-push-23{left:95.83333333%}.ant-col-lg-pull-23{right:95.83333333%}.ant-col-lg-offset-23{margin-left:95.83333333%}.ant-col-lg-order-23{order:23}.ant-col-lg-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-lg-push-22{left:91.66666667%}.ant-col-lg-pull-22{right:91.66666667%}.ant-col-lg-offset-22{margin-left:91.66666667%}.ant-col-lg-order-22{order:22}.ant-col-lg-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-lg-push-21{left:87.5%}.ant-col-lg-pull-21{right:87.5%}.ant-col-lg-offset-21{margin-left:87.5%}.ant-col-lg-order-21{order:21}.ant-col-lg-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-lg-push-20{left:83.33333333%}.ant-col-lg-pull-20{right:83.33333333%}.ant-col-lg-offset-20{margin-left:83.33333333%}.ant-col-lg-order-20{order:20}.ant-col-lg-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-lg-push-19{left:79.16666667%}.ant-col-lg-pull-19{right:79.16666667%}.ant-col-lg-offset-19{margin-left:79.16666667%}.ant-col-lg-order-19{order:19}.ant-col-lg-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-lg-push-18{left:75%}.ant-col-lg-pull-18{right:75%}.ant-col-lg-offset-18{margin-left:75%}.ant-col-lg-order-18{order:18}.ant-col-lg-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-lg-push-17{left:70.83333333%}.ant-col-lg-pull-17{right:70.83333333%}.ant-col-lg-offset-17{margin-left:70.83333333%}.ant-col-lg-order-17{order:17}.ant-col-lg-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-lg-push-16{left:66.66666667%}.ant-col-lg-pull-16{right:66.66666667%}.ant-col-lg-offset-16{margin-left:66.66666667%}.ant-col-lg-order-16{order:16}.ant-col-lg-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-lg-push-15{left:62.5%}.ant-col-lg-pull-15{right:62.5%}.ant-col-lg-offset-15{margin-left:62.5%}.ant-col-lg-order-15{order:15}.ant-col-lg-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-lg-push-14{left:58.33333333%}.ant-col-lg-pull-14{right:58.33333333%}.ant-col-lg-offset-14{margin-left:58.33333333%}.ant-col-lg-order-14{order:14}.ant-col-lg-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-lg-push-13{left:54.16666667%}.ant-col-lg-pull-13{right:54.16666667%}.ant-col-lg-offset-13{margin-left:54.16666667%}.ant-col-lg-order-13{order:13}.ant-col-lg-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-lg-push-12{left:50%}.ant-col-lg-pull-12{right:50%}.ant-col-lg-offset-12{margin-left:50%}.ant-col-lg-order-12{order:12}.ant-col-lg-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-lg-push-11{left:45.83333333%}.ant-col-lg-pull-11{right:45.83333333%}.ant-col-lg-offset-11{margin-left:45.83333333%}.ant-col-lg-order-11{order:11}.ant-col-lg-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-lg-push-10{left:41.66666667%}.ant-col-lg-pull-10{right:41.66666667%}.ant-col-lg-offset-10{margin-left:41.66666667%}.ant-col-lg-order-10{order:10}.ant-col-lg-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-lg-push-9{left:37.5%}.ant-col-lg-pull-9{right:37.5%}.ant-col-lg-offset-9{margin-left:37.5%}.ant-col-lg-order-9{order:9}.ant-col-lg-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-lg-push-8{left:33.33333333%}.ant-col-lg-pull-8{right:33.33333333%}.ant-col-lg-offset-8{margin-left:33.33333333%}.ant-col-lg-order-8{order:8}.ant-col-lg-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-lg-push-7{left:29.16666667%}.ant-col-lg-pull-7{right:29.16666667%}.ant-col-lg-offset-7{margin-left:29.16666667%}.ant-col-lg-order-7{order:7}.ant-col-lg-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-lg-push-6{left:25%}.ant-col-lg-pull-6{right:25%}.ant-col-lg-offset-6{margin-left:25%}.ant-col-lg-order-6{order:6}.ant-col-lg-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-lg-push-5{left:20.83333333%}.ant-col-lg-pull-5{right:20.83333333%}.ant-col-lg-offset-5{margin-left:20.83333333%}.ant-col-lg-order-5{order:5}.ant-col-lg-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-lg-push-4{left:16.66666667%}.ant-col-lg-pull-4{right:16.66666667%}.ant-col-lg-offset-4{margin-left:16.66666667%}.ant-col-lg-order-4{order:4}.ant-col-lg-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-lg-push-3{left:12.5%}.ant-col-lg-pull-3{right:12.5%}.ant-col-lg-offset-3{margin-left:12.5%}.ant-col-lg-order-3{order:3}.ant-col-lg-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-lg-push-2{left:8.33333333%}.ant-col-lg-pull-2{right:8.33333333%}.ant-col-lg-offset-2{margin-left:8.33333333%}.ant-col-lg-order-2{order:2}.ant-col-lg-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-lg-push-1{left:4.16666667%}.ant-col-lg-pull-1{right:4.16666667%}.ant-col-lg-offset-1{margin-left:4.16666667%}.ant-col-lg-order-1{order:1}.ant-col-lg-0{display:none}.ant-col-push-0{left:auto}.ant-col-pull-0{right:auto}.ant-col-lg-push-0{left:auto}.ant-col-lg-pull-0{right:auto}.ant-col-lg-offset-0{margin-left:0}.ant-col-lg-order-0{order:0}.ant-col-push-0.ant-col-rtl{right:auto}.ant-col-pull-0.ant-col-rtl{left:auto}.ant-col-lg-push-0.ant-col-rtl{right:auto}.ant-col-lg-pull-0.ant-col-rtl{left:auto}.ant-col-lg-offset-0.ant-col-rtl{margin-right:0}.ant-col-lg-push-1.ant-col-rtl{right:4.16666667%;left:auto}.ant-col-lg-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-lg-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-lg-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-lg-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-lg-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-lg-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-lg-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-lg-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-lg-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-lg-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-lg-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-lg-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-lg-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-lg-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-lg-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-lg-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-lg-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-lg-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-lg-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-lg-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-lg-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-lg-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-lg-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-lg-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-lg-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-lg-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-lg-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-lg-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-lg-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-lg-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-lg-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-lg-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-lg-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-lg-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-lg-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-lg-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-lg-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-lg-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-lg-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-lg-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-lg-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-lg-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-lg-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-lg-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-lg-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-lg-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-lg-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-lg-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-lg-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-lg-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-lg-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-lg-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-lg-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-lg-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-lg-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-lg-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-lg-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-lg-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-lg-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-lg-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-lg-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-lg-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-lg-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-lg-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-lg-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-lg-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-lg-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-lg-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-lg-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-lg-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-lg-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}@media (min-width: 1200px){.ant-col-xl-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-xl-push-24{left:100%}.ant-col-xl-pull-24{right:100%}.ant-col-xl-offset-24{margin-left:100%}.ant-col-xl-order-24{order:24}.ant-col-xl-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-xl-push-23{left:95.83333333%}.ant-col-xl-pull-23{right:95.83333333%}.ant-col-xl-offset-23{margin-left:95.83333333%}.ant-col-xl-order-23{order:23}.ant-col-xl-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-xl-push-22{left:91.66666667%}.ant-col-xl-pull-22{right:91.66666667%}.ant-col-xl-offset-22{margin-left:91.66666667%}.ant-col-xl-order-22{order:22}.ant-col-xl-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-xl-push-21{left:87.5%}.ant-col-xl-pull-21{right:87.5%}.ant-col-xl-offset-21{margin-left:87.5%}.ant-col-xl-order-21{order:21}.ant-col-xl-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-xl-push-20{left:83.33333333%}.ant-col-xl-pull-20{right:83.33333333%}.ant-col-xl-offset-20{margin-left:83.33333333%}.ant-col-xl-order-20{order:20}.ant-col-xl-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-xl-push-19{left:79.16666667%}.ant-col-xl-pull-19{right:79.16666667%}.ant-col-xl-offset-19{margin-left:79.16666667%}.ant-col-xl-order-19{order:19}.ant-col-xl-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-xl-push-18{left:75%}.ant-col-xl-pull-18{right:75%}.ant-col-xl-offset-18{margin-left:75%}.ant-col-xl-order-18{order:18}.ant-col-xl-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-xl-push-17{left:70.83333333%}.ant-col-xl-pull-17{right:70.83333333%}.ant-col-xl-offset-17{margin-left:70.83333333%}.ant-col-xl-order-17{order:17}.ant-col-xl-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-xl-push-16{left:66.66666667%}.ant-col-xl-pull-16{right:66.66666667%}.ant-col-xl-offset-16{margin-left:66.66666667%}.ant-col-xl-order-16{order:16}.ant-col-xl-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-xl-push-15{left:62.5%}.ant-col-xl-pull-15{right:62.5%}.ant-col-xl-offset-15{margin-left:62.5%}.ant-col-xl-order-15{order:15}.ant-col-xl-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-xl-push-14{left:58.33333333%}.ant-col-xl-pull-14{right:58.33333333%}.ant-col-xl-offset-14{margin-left:58.33333333%}.ant-col-xl-order-14{order:14}.ant-col-xl-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-xl-push-13{left:54.16666667%}.ant-col-xl-pull-13{right:54.16666667%}.ant-col-xl-offset-13{margin-left:54.16666667%}.ant-col-xl-order-13{order:13}.ant-col-xl-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-xl-push-12{left:50%}.ant-col-xl-pull-12{right:50%}.ant-col-xl-offset-12{margin-left:50%}.ant-col-xl-order-12{order:12}.ant-col-xl-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-xl-push-11{left:45.83333333%}.ant-col-xl-pull-11{right:45.83333333%}.ant-col-xl-offset-11{margin-left:45.83333333%}.ant-col-xl-order-11{order:11}.ant-col-xl-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-xl-push-10{left:41.66666667%}.ant-col-xl-pull-10{right:41.66666667%}.ant-col-xl-offset-10{margin-left:41.66666667%}.ant-col-xl-order-10{order:10}.ant-col-xl-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-xl-push-9{left:37.5%}.ant-col-xl-pull-9{right:37.5%}.ant-col-xl-offset-9{margin-left:37.5%}.ant-col-xl-order-9{order:9}.ant-col-xl-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-xl-push-8{left:33.33333333%}.ant-col-xl-pull-8{right:33.33333333%}.ant-col-xl-offset-8{margin-left:33.33333333%}.ant-col-xl-order-8{order:8}.ant-col-xl-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-xl-push-7{left:29.16666667%}.ant-col-xl-pull-7{right:29.16666667%}.ant-col-xl-offset-7{margin-left:29.16666667%}.ant-col-xl-order-7{order:7}.ant-col-xl-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-xl-push-6{left:25%}.ant-col-xl-pull-6{right:25%}.ant-col-xl-offset-6{margin-left:25%}.ant-col-xl-order-6{order:6}.ant-col-xl-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-xl-push-5{left:20.83333333%}.ant-col-xl-pull-5{right:20.83333333%}.ant-col-xl-offset-5{margin-left:20.83333333%}.ant-col-xl-order-5{order:5}.ant-col-xl-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-xl-push-4{left:16.66666667%}.ant-col-xl-pull-4{right:16.66666667%}.ant-col-xl-offset-4{margin-left:16.66666667%}.ant-col-xl-order-4{order:4}.ant-col-xl-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-xl-push-3{left:12.5%}.ant-col-xl-pull-3{right:12.5%}.ant-col-xl-offset-3{margin-left:12.5%}.ant-col-xl-order-3{order:3}.ant-col-xl-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-xl-push-2{left:8.33333333%}.ant-col-xl-pull-2{right:8.33333333%}.ant-col-xl-offset-2{margin-left:8.33333333%}.ant-col-xl-order-2{order:2}.ant-col-xl-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-xl-push-1{left:4.16666667%}.ant-col-xl-pull-1{right:4.16666667%}.ant-col-xl-offset-1{margin-left:4.16666667%}.ant-col-xl-order-1{order:1}.ant-col-xl-0{display:none}.ant-col-push-0{left:auto}.ant-col-pull-0{right:auto}.ant-col-xl-push-0{left:auto}.ant-col-xl-pull-0{right:auto}.ant-col-xl-offset-0{margin-left:0}.ant-col-xl-order-0{order:0}.ant-col-push-0.ant-col-rtl{right:auto}.ant-col-pull-0.ant-col-rtl{left:auto}.ant-col-xl-push-0.ant-col-rtl{right:auto}.ant-col-xl-pull-0.ant-col-rtl{left:auto}.ant-col-xl-offset-0.ant-col-rtl{margin-right:0}.ant-col-xl-push-1.ant-col-rtl{right:4.16666667%;left:auto}.ant-col-xl-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-xl-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-xl-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-xl-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-xl-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-xl-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-xl-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-xl-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-xl-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-xl-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-xl-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-xl-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-xl-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-xl-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-xl-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-xl-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-xl-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-xl-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-xl-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-xl-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-xl-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-xl-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-xl-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-xl-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-xl-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-xl-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-xl-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-xl-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-xl-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-xl-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-xl-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-xl-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-xl-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-xl-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-xl-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-xl-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-xl-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-xl-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-xl-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-xl-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-xl-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-xl-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-xl-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-xl-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-xl-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-xl-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-xl-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-xl-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-xl-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-xl-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-xl-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-xl-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-xl-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-xl-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-xl-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-xl-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-xl-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-xl-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-xl-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-xl-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-xl-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-xl-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-xl-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-xl-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-xl-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-xl-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-xl-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-xl-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-xl-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-xl-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-xl-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}@media (min-width: 1600px){.ant-col-xxl-24{display:block;flex:0 0 100%;max-width:100%}.ant-col-xxl-push-24{left:100%}.ant-col-xxl-pull-24{right:100%}.ant-col-xxl-offset-24{margin-left:100%}.ant-col-xxl-order-24{order:24}.ant-col-xxl-23{display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.ant-col-xxl-push-23{left:95.83333333%}.ant-col-xxl-pull-23{right:95.83333333%}.ant-col-xxl-offset-23{margin-left:95.83333333%}.ant-col-xxl-order-23{order:23}.ant-col-xxl-22{display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.ant-col-xxl-push-22{left:91.66666667%}.ant-col-xxl-pull-22{right:91.66666667%}.ant-col-xxl-offset-22{margin-left:91.66666667%}.ant-col-xxl-order-22{order:22}.ant-col-xxl-21{display:block;flex:0 0 87.5%;max-width:87.5%}.ant-col-xxl-push-21{left:87.5%}.ant-col-xxl-pull-21{right:87.5%}.ant-col-xxl-offset-21{margin-left:87.5%}.ant-col-xxl-order-21{order:21}.ant-col-xxl-20{display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.ant-col-xxl-push-20{left:83.33333333%}.ant-col-xxl-pull-20{right:83.33333333%}.ant-col-xxl-offset-20{margin-left:83.33333333%}.ant-col-xxl-order-20{order:20}.ant-col-xxl-19{display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.ant-col-xxl-push-19{left:79.16666667%}.ant-col-xxl-pull-19{right:79.16666667%}.ant-col-xxl-offset-19{margin-left:79.16666667%}.ant-col-xxl-order-19{order:19}.ant-col-xxl-18{display:block;flex:0 0 75%;max-width:75%}.ant-col-xxl-push-18{left:75%}.ant-col-xxl-pull-18{right:75%}.ant-col-xxl-offset-18{margin-left:75%}.ant-col-xxl-order-18{order:18}.ant-col-xxl-17{display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.ant-col-xxl-push-17{left:70.83333333%}.ant-col-xxl-pull-17{right:70.83333333%}.ant-col-xxl-offset-17{margin-left:70.83333333%}.ant-col-xxl-order-17{order:17}.ant-col-xxl-16{display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.ant-col-xxl-push-16{left:66.66666667%}.ant-col-xxl-pull-16{right:66.66666667%}.ant-col-xxl-offset-16{margin-left:66.66666667%}.ant-col-xxl-order-16{order:16}.ant-col-xxl-15{display:block;flex:0 0 62.5%;max-width:62.5%}.ant-col-xxl-push-15{left:62.5%}.ant-col-xxl-pull-15{right:62.5%}.ant-col-xxl-offset-15{margin-left:62.5%}.ant-col-xxl-order-15{order:15}.ant-col-xxl-14{display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.ant-col-xxl-push-14{left:58.33333333%}.ant-col-xxl-pull-14{right:58.33333333%}.ant-col-xxl-offset-14{margin-left:58.33333333%}.ant-col-xxl-order-14{order:14}.ant-col-xxl-13{display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.ant-col-xxl-push-13{left:54.16666667%}.ant-col-xxl-pull-13{right:54.16666667%}.ant-col-xxl-offset-13{margin-left:54.16666667%}.ant-col-xxl-order-13{order:13}.ant-col-xxl-12{display:block;flex:0 0 50%;max-width:50%}.ant-col-xxl-push-12{left:50%}.ant-col-xxl-pull-12{right:50%}.ant-col-xxl-offset-12{margin-left:50%}.ant-col-xxl-order-12{order:12}.ant-col-xxl-11{display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.ant-col-xxl-push-11{left:45.83333333%}.ant-col-xxl-pull-11{right:45.83333333%}.ant-col-xxl-offset-11{margin-left:45.83333333%}.ant-col-xxl-order-11{order:11}.ant-col-xxl-10{display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.ant-col-xxl-push-10{left:41.66666667%}.ant-col-xxl-pull-10{right:41.66666667%}.ant-col-xxl-offset-10{margin-left:41.66666667%}.ant-col-xxl-order-10{order:10}.ant-col-xxl-9{display:block;flex:0 0 37.5%;max-width:37.5%}.ant-col-xxl-push-9{left:37.5%}.ant-col-xxl-pull-9{right:37.5%}.ant-col-xxl-offset-9{margin-left:37.5%}.ant-col-xxl-order-9{order:9}.ant-col-xxl-8{display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.ant-col-xxl-push-8{left:33.33333333%}.ant-col-xxl-pull-8{right:33.33333333%}.ant-col-xxl-offset-8{margin-left:33.33333333%}.ant-col-xxl-order-8{order:8}.ant-col-xxl-7{display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.ant-col-xxl-push-7{left:29.16666667%}.ant-col-xxl-pull-7{right:29.16666667%}.ant-col-xxl-offset-7{margin-left:29.16666667%}.ant-col-xxl-order-7{order:7}.ant-col-xxl-6{display:block;flex:0 0 25%;max-width:25%}.ant-col-xxl-push-6{left:25%}.ant-col-xxl-pull-6{right:25%}.ant-col-xxl-offset-6{margin-left:25%}.ant-col-xxl-order-6{order:6}.ant-col-xxl-5{display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.ant-col-xxl-push-5{left:20.83333333%}.ant-col-xxl-pull-5{right:20.83333333%}.ant-col-xxl-offset-5{margin-left:20.83333333%}.ant-col-xxl-order-5{order:5}.ant-col-xxl-4{display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.ant-col-xxl-push-4{left:16.66666667%}.ant-col-xxl-pull-4{right:16.66666667%}.ant-col-xxl-offset-4{margin-left:16.66666667%}.ant-col-xxl-order-4{order:4}.ant-col-xxl-3{display:block;flex:0 0 12.5%;max-width:12.5%}.ant-col-xxl-push-3{left:12.5%}.ant-col-xxl-pull-3{right:12.5%}.ant-col-xxl-offset-3{margin-left:12.5%}.ant-col-xxl-order-3{order:3}.ant-col-xxl-2{display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.ant-col-xxl-push-2{left:8.33333333%}.ant-col-xxl-pull-2{right:8.33333333%}.ant-col-xxl-offset-2{margin-left:8.33333333%}.ant-col-xxl-order-2{order:2}.ant-col-xxl-1{display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.ant-col-xxl-push-1{left:4.16666667%}.ant-col-xxl-pull-1{right:4.16666667%}.ant-col-xxl-offset-1{margin-left:4.16666667%}.ant-col-xxl-order-1{order:1}.ant-col-xxl-0{display:none}.ant-col-push-0{left:auto}.ant-col-pull-0{right:auto}.ant-col-xxl-push-0{left:auto}.ant-col-xxl-pull-0{right:auto}.ant-col-xxl-offset-0{margin-left:0}.ant-col-xxl-order-0{order:0}.ant-col-push-0.ant-col-rtl{right:auto}.ant-col-pull-0.ant-col-rtl{left:auto}.ant-col-xxl-push-0.ant-col-rtl{right:auto}.ant-col-xxl-pull-0.ant-col-rtl{left:auto}.ant-col-xxl-offset-0.ant-col-rtl{margin-right:0}.ant-col-xxl-push-1.ant-col-rtl{right:4.16666667%;left:auto}.ant-col-xxl-pull-1.ant-col-rtl{right:auto;left:4.16666667%}.ant-col-xxl-offset-1.ant-col-rtl{margin-right:4.16666667%;margin-left:0}.ant-col-xxl-push-2.ant-col-rtl{right:8.33333333%;left:auto}.ant-col-xxl-pull-2.ant-col-rtl{right:auto;left:8.33333333%}.ant-col-xxl-offset-2.ant-col-rtl{margin-right:8.33333333%;margin-left:0}.ant-col-xxl-push-3.ant-col-rtl{right:12.5%;left:auto}.ant-col-xxl-pull-3.ant-col-rtl{right:auto;left:12.5%}.ant-col-xxl-offset-3.ant-col-rtl{margin-right:12.5%;margin-left:0}.ant-col-xxl-push-4.ant-col-rtl{right:16.66666667%;left:auto}.ant-col-xxl-pull-4.ant-col-rtl{right:auto;left:16.66666667%}.ant-col-xxl-offset-4.ant-col-rtl{margin-right:16.66666667%;margin-left:0}.ant-col-xxl-push-5.ant-col-rtl{right:20.83333333%;left:auto}.ant-col-xxl-pull-5.ant-col-rtl{right:auto;left:20.83333333%}.ant-col-xxl-offset-5.ant-col-rtl{margin-right:20.83333333%;margin-left:0}.ant-col-xxl-push-6.ant-col-rtl{right:25%;left:auto}.ant-col-xxl-pull-6.ant-col-rtl{right:auto;left:25%}.ant-col-xxl-offset-6.ant-col-rtl{margin-right:25%;margin-left:0}.ant-col-xxl-push-7.ant-col-rtl{right:29.16666667%;left:auto}.ant-col-xxl-pull-7.ant-col-rtl{right:auto;left:29.16666667%}.ant-col-xxl-offset-7.ant-col-rtl{margin-right:29.16666667%;margin-left:0}.ant-col-xxl-push-8.ant-col-rtl{right:33.33333333%;left:auto}.ant-col-xxl-pull-8.ant-col-rtl{right:auto;left:33.33333333%}.ant-col-xxl-offset-8.ant-col-rtl{margin-right:33.33333333%;margin-left:0}.ant-col-xxl-push-9.ant-col-rtl{right:37.5%;left:auto}.ant-col-xxl-pull-9.ant-col-rtl{right:auto;left:37.5%}.ant-col-xxl-offset-9.ant-col-rtl{margin-right:37.5%;margin-left:0}.ant-col-xxl-push-10.ant-col-rtl{right:41.66666667%;left:auto}.ant-col-xxl-pull-10.ant-col-rtl{right:auto;left:41.66666667%}.ant-col-xxl-offset-10.ant-col-rtl{margin-right:41.66666667%;margin-left:0}.ant-col-xxl-push-11.ant-col-rtl{right:45.83333333%;left:auto}.ant-col-xxl-pull-11.ant-col-rtl{right:auto;left:45.83333333%}.ant-col-xxl-offset-11.ant-col-rtl{margin-right:45.83333333%;margin-left:0}.ant-col-xxl-push-12.ant-col-rtl{right:50%;left:auto}.ant-col-xxl-pull-12.ant-col-rtl{right:auto;left:50%}.ant-col-xxl-offset-12.ant-col-rtl{margin-right:50%;margin-left:0}.ant-col-xxl-push-13.ant-col-rtl{right:54.16666667%;left:auto}.ant-col-xxl-pull-13.ant-col-rtl{right:auto;left:54.16666667%}.ant-col-xxl-offset-13.ant-col-rtl{margin-right:54.16666667%;margin-left:0}.ant-col-xxl-push-14.ant-col-rtl{right:58.33333333%;left:auto}.ant-col-xxl-pull-14.ant-col-rtl{right:auto;left:58.33333333%}.ant-col-xxl-offset-14.ant-col-rtl{margin-right:58.33333333%;margin-left:0}.ant-col-xxl-push-15.ant-col-rtl{right:62.5%;left:auto}.ant-col-xxl-pull-15.ant-col-rtl{right:auto;left:62.5%}.ant-col-xxl-offset-15.ant-col-rtl{margin-right:62.5%;margin-left:0}.ant-col-xxl-push-16.ant-col-rtl{right:66.66666667%;left:auto}.ant-col-xxl-pull-16.ant-col-rtl{right:auto;left:66.66666667%}.ant-col-xxl-offset-16.ant-col-rtl{margin-right:66.66666667%;margin-left:0}.ant-col-xxl-push-17.ant-col-rtl{right:70.83333333%;left:auto}.ant-col-xxl-pull-17.ant-col-rtl{right:auto;left:70.83333333%}.ant-col-xxl-offset-17.ant-col-rtl{margin-right:70.83333333%;margin-left:0}.ant-col-xxl-push-18.ant-col-rtl{right:75%;left:auto}.ant-col-xxl-pull-18.ant-col-rtl{right:auto;left:75%}.ant-col-xxl-offset-18.ant-col-rtl{margin-right:75%;margin-left:0}.ant-col-xxl-push-19.ant-col-rtl{right:79.16666667%;left:auto}.ant-col-xxl-pull-19.ant-col-rtl{right:auto;left:79.16666667%}.ant-col-xxl-offset-19.ant-col-rtl{margin-right:79.16666667%;margin-left:0}.ant-col-xxl-push-20.ant-col-rtl{right:83.33333333%;left:auto}.ant-col-xxl-pull-20.ant-col-rtl{right:auto;left:83.33333333%}.ant-col-xxl-offset-20.ant-col-rtl{margin-right:83.33333333%;margin-left:0}.ant-col-xxl-push-21.ant-col-rtl{right:87.5%;left:auto}.ant-col-xxl-pull-21.ant-col-rtl{right:auto;left:87.5%}.ant-col-xxl-offset-21.ant-col-rtl{margin-right:87.5%;margin-left:0}.ant-col-xxl-push-22.ant-col-rtl{right:91.66666667%;left:auto}.ant-col-xxl-pull-22.ant-col-rtl{right:auto;left:91.66666667%}.ant-col-xxl-offset-22.ant-col-rtl{margin-right:91.66666667%;margin-left:0}.ant-col-xxl-push-23.ant-col-rtl{right:95.83333333%;left:auto}.ant-col-xxl-pull-23.ant-col-rtl{right:auto;left:95.83333333%}.ant-col-xxl-offset-23.ant-col-rtl{margin-right:95.83333333%;margin-left:0}.ant-col-xxl-push-24.ant-col-rtl{right:100%;left:auto}.ant-col-xxl-pull-24.ant-col-rtl{right:auto;left:100%}.ant-col-xxl-offset-24.ant-col-rtl{margin-right:100%;margin-left:0}}.ant-row-rtl{direction:rtl}.ant-input-affix-wrapper{position:relative;display:inline-block;width:100%;min-width:0;padding:4px 11px;color:#000000d9;font-size:14px;line-height:1.5715;background-color:#fff;background-image:none;border:1px solid #d9d9d9;border-radius:2px;transition:all .3s;display:inline-flex}.ant-input-affix-wrapper::placeholder{color:#bfbfbf;-webkit-user-select:none;user-select:none}.ant-input-affix-wrapper:placeholder-shown{text-overflow:ellipsis}.ant-input-affix-wrapper:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-input-affix-wrapper:hover{border-right-width:0;border-left-width:1px!important}.ant-input-affix-wrapper:focus,.ant-input-affix-wrapper-focused{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;border-right-width:1px;outline:0}.ant-input-rtl .ant-input-affix-wrapper:focus,.ant-input-rtl .ant-input-affix-wrapper-focused{border-right-width:0;border-left-width:1px!important}.ant-input-affix-wrapper-disabled{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;pointer-events:none;color:#00000040}.ant-input-affix-wrapper-disabled:hover{border-color:#d9d9d9;border-right-width:1px}.ant-input-affix-wrapper[disabled]{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;pointer-events:none;color:#00000040}.ant-input-affix-wrapper[disabled]:hover{border-color:#d9d9d9;border-right-width:1px}.ant-input-affix-wrapper-borderless,.ant-input-affix-wrapper-borderless:hover,.ant-input-affix-wrapper-borderless:focus,.ant-input-affix-wrapper-borderless-focused,.ant-input-affix-wrapper-borderless-disabled,.ant-input-affix-wrapper-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-input-affix-wrapper{max-width:100%;height:auto;min-height:32px;line-height:1.5715;vertical-align:bottom;transition:all .3s,height 0s}.ant-input-affix-wrapper-lg{padding:6.5px 11px;font-size:16px}.ant-input-affix-wrapper-sm{padding:0 7px}.ant-input-affix-wrapper-rtl{direction:rtl}.ant-input-affix-wrapper-stepperless[type=number]{-moz-appearance:textfield}.ant-input-affix-wrapper-stepperless[type=number]::-webkit-inner-spin-button,.ant-input-affix-wrapper-stepperless[type=number] ::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover{border-color:#40a9ff;border-right-width:1px;z-index:1}.ant-input-rtl .ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover{border-right-width:0;border-left-width:1px!important}.ant-input-search-with-button .ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover{z-index:0}.ant-input-affix-wrapper-focused,.ant-input-affix-wrapper:focus{z-index:1}.ant-input-affix-wrapper-disabled .ant-input[disabled]{background:transparent}.ant-input-affix-wrapper>input.ant-input{padding:0;border:none;outline:none}.ant-input-affix-wrapper>input.ant-input:focus{box-shadow:none!important}.ant-input-affix-wrapper:before{width:0;visibility:hidden;content:"\a0"}.ant-input-prefix,.ant-input-suffix{display:flex;flex:none;align-items:center}.ant-input-prefix>*:not(:last-child),.ant-input-suffix>*:not(:last-child){margin-right:8px}.ant-input-show-count-suffix{color:#00000073}.ant-input-show-count-has-suffix{margin-right:2px}.ant-input-prefix{margin-right:4px}.ant-input-suffix{margin-left:4px}.anticon.ant-input-clear-icon,.ant-input-clear-icon{margin:0;color:#00000040;font-size:12px;vertical-align:-1px;cursor:pointer;transition:color .3s}.anticon.ant-input-clear-icon:hover,.ant-input-clear-icon:hover{color:#00000073}.anticon.ant-input-clear-icon:active,.ant-input-clear-icon:active{color:#000000d9}.anticon.ant-input-clear-icon-hidden,.ant-input-clear-icon-hidden{visibility:hidden}.anticon.ant-input-clear-icon-has-suffix,.ant-input-clear-icon-has-suffix{margin:0 4px}.ant-input-affix-wrapper-textarea-with-clear-btn{padding:0!important;border:0!important}.ant-input-affix-wrapper-textarea-with-clear-btn .ant-input-clear-icon{position:absolute;top:8px;right:8px;z-index:1}.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input,.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:hover{background:#fff;border-color:#ff4d4f}.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:focus,.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input-focused{border-color:#ff7875;box-shadow:0 0 0 2px #ff4d4f33;border-right-width:1px;outline:0}.ant-input-status-error .ant-input-prefix{color:#ff4d4f}.ant-input-status-warning:not(.ant-input-disabled):not(.ant-input-borderless).ant-input,.ant-input-status-warning:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:hover{background:#fff;border-color:#faad14}.ant-input-status-warning:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:focus,.ant-input-status-warning:not(.ant-input-disabled):not(.ant-input-borderless).ant-input-focused{border-color:#ffc53d;box-shadow:0 0 0 2px #faad1433;border-right-width:1px;outline:0}.ant-input-status-warning .ant-input-prefix{color:#faad14}.ant-input-affix-wrapper-status-error:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper,.ant-input-affix-wrapper-status-error:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper:hover{background:#fff;border-color:#ff4d4f}.ant-input-affix-wrapper-status-error:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper:focus,.ant-input-affix-wrapper-status-error:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper-focused{border-color:#ff7875;box-shadow:0 0 0 2px #ff4d4f33;border-right-width:1px;outline:0}.ant-input-affix-wrapper-status-error .ant-input-prefix{color:#ff4d4f}.ant-input-affix-wrapper-status-warning:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper,.ant-input-affix-wrapper-status-warning:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper:hover{background:#fff;border-color:#faad14}.ant-input-affix-wrapper-status-warning:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper:focus,.ant-input-affix-wrapper-status-warning:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper-focused{border-color:#ffc53d;box-shadow:0 0 0 2px #faad1433;border-right-width:1px;outline:0}.ant-input-affix-wrapper-status-warning .ant-input-prefix{color:#faad14}.ant-input-textarea-status-error.ant-input-textarea-has-feedback .ant-input,.ant-input-textarea-status-warning.ant-input-textarea-has-feedback .ant-input,.ant-input-textarea-status-success.ant-input-textarea-has-feedback .ant-input,.ant-input-textarea-status-validating.ant-input-textarea-has-feedback .ant-input{padding-right:24px}.ant-input-group-wrapper-status-error .ant-input-group-addon{color:#ff4d4f;border-color:#ff4d4f}.ant-input-group-wrapper-status-warning .ant-input-group-addon{color:#faad14;border-color:#faad14}.ant-input{box-sizing:border-box;margin:0;font-variant:tabular-nums;list-style:none;font-feature-settings:"tnum";position:relative;display:inline-block;width:100%;min-width:0;padding:4px 11px;color:#000000d9;font-size:14px;line-height:1.5715;background-color:#fff;background-image:none;border:1px solid #d9d9d9;border-radius:2px;transition:all .3s}.ant-input::placeholder{color:#bfbfbf;-webkit-user-select:none;user-select:none}.ant-input:placeholder-shown{text-overflow:ellipsis}.ant-input:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-input:hover{border-right-width:0;border-left-width:1px!important}.ant-input:focus,.ant-input-focused{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;border-right-width:1px;outline:0}.ant-input-rtl .ant-input:focus,.ant-input-rtl .ant-input-focused{border-right-width:0;border-left-width:1px!important}.ant-input-disabled{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;pointer-events:none;color:#00000040}.ant-input-disabled:hover{border-color:#d9d9d9;border-right-width:1px}.ant-input[disabled]{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;pointer-events:none;color:#00000040}.ant-input[disabled]:hover{border-color:#d9d9d9;border-right-width:1px}.ant-input-borderless,.ant-input-borderless:hover,.ant-input-borderless:focus,.ant-input-borderless-focused,.ant-input-borderless-disabled,.ant-input-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-input{max-width:100%;height:auto;min-height:32px;line-height:1.5715;vertical-align:bottom;transition:all .3s,height 0s}.ant-input-lg{padding:6.5px 11px;font-size:16px}.ant-input-sm{padding:0 7px}.ant-input-rtl{direction:rtl}.ant-input-stepperless[type=number]{-moz-appearance:textfield}.ant-input-stepperless[type=number]::-webkit-inner-spin-button,.ant-input-stepperless[type=number] ::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ant-input-group{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;display:table;width:100%;border-collapse:separate;border-spacing:0}.ant-input-group[class*=col-]{float:none;padding-right:0;padding-left:0}.ant-input-group>[class*=col-]{padding-right:8px}.ant-input-group>[class*=col-]:last-child{padding-right:0}.ant-input-group-addon,.ant-input-group-wrap,.ant-input-group>.ant-input{display:table-cell}.ant-input-group-addon:not(:first-child):not(:last-child),.ant-input-group-wrap:not(:first-child):not(:last-child),.ant-input-group>.ant-input:not(:first-child):not(:last-child){border-radius:0}.ant-input-group-addon,.ant-input-group-wrap{width:1px;white-space:nowrap;vertical-align:middle}.ant-input-group-wrap>*{display:block!important}.ant-input-group .ant-input{float:left;width:100%;margin-bottom:0;text-align:inherit}.ant-input-group .ant-input:focus{z-index:1;border-right-width:1px}.ant-input-group .ant-input:hover{z-index:1;border-right-width:1px}.ant-input-search-with-button .ant-input-group .ant-input:hover{z-index:0}.ant-input-group-addon{position:relative;padding:0 11px;color:#000000d9;font-weight:400;font-size:14px;text-align:center;background-color:#fafafa;border:1px solid #d9d9d9;border-radius:2px;transition:all .3s}.ant-input-group-addon .ant-select{margin:-5px -11px}.ant-input-group-addon .ant-select.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{background-color:inherit;border:1px solid transparent;box-shadow:none}.ant-input-group-addon .ant-select-open .ant-select-selector,.ant-input-group-addon .ant-select-focused .ant-select-selector{color:#1890ff}.ant-input-group-addon .ant-cascader-picker{margin:-9px -12px;background-color:transparent}.ant-input-group-addon .ant-cascader-picker .ant-cascader-input{text-align:left;border:0;box-shadow:none}.ant-input-group>.ant-input:first-child,.ant-input-group-addon:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.ant-input-group>.ant-input:first-child .ant-select .ant-select-selector,.ant-input-group-addon:first-child .ant-select .ant-select-selector{border-top-right-radius:0;border-bottom-right-radius:0}.ant-input-group>.ant-input-affix-wrapper:not(:first-child) .ant-input{border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-group>.ant-input-affix-wrapper:not(:last-child) .ant-input{border-top-right-radius:0;border-bottom-right-radius:0}.ant-input-group-addon:first-child{border-right:0}.ant-input-group-addon:last-child{border-left:0}.ant-input-group>.ant-input:last-child,.ant-input-group-addon:last-child{border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-group>.ant-input:last-child .ant-select .ant-select-selector,.ant-input-group-addon:last-child .ant-select .ant-select-selector{border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-group-lg .ant-input,.ant-input-group-lg>.ant-input-group-addon{padding:6.5px 11px;font-size:16px}.ant-input-group-sm .ant-input,.ant-input-group-sm>.ant-input-group-addon{padding:0 7px}.ant-input-group-lg .ant-select-single .ant-select-selector{height:40px}.ant-input-group-sm .ant-select-single .ant-select-selector{height:24px}.ant-input-group .ant-input-affix-wrapper:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.ant-input-search .ant-input-group .ant-input-affix-wrapper:not(:last-child){border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-input-group .ant-input-affix-wrapper:not(:first-child),.ant-input-search .ant-input-group .ant-input-affix-wrapper:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-group.ant-input-group-compact{display:block}.ant-input-group.ant-input-group-compact:before{display:table;content:""}.ant-input-group.ant-input-group-compact:after{display:table;clear:both;content:""}.ant-input-group.ant-input-group-compact-addon:not(:first-child):not(:last-child),.ant-input-group.ant-input-group-compact-wrap:not(:first-child):not(:last-child),.ant-input-group.ant-input-group-compact>.ant-input:not(:first-child):not(:last-child){border-right-width:1px}.ant-input-group.ant-input-group-compact-addon:not(:first-child):not(:last-child):hover,.ant-input-group.ant-input-group-compact-wrap:not(:first-child):not(:last-child):hover,.ant-input-group.ant-input-group-compact>.ant-input:not(:first-child):not(:last-child):hover{z-index:1}.ant-input-group.ant-input-group-compact-addon:not(:first-child):not(:last-child):focus,.ant-input-group.ant-input-group-compact-wrap:not(:first-child):not(:last-child):focus,.ant-input-group.ant-input-group-compact>.ant-input:not(:first-child):not(:last-child):focus{z-index:1}.ant-input-group.ant-input-group-compact>*{display:inline-block;float:none;vertical-align:top;border-radius:0}.ant-input-group.ant-input-group-compact>.ant-input-affix-wrapper{display:inline-flex}.ant-input-group.ant-input-group-compact>.ant-picker-range{display:inline-flex}.ant-input-group.ant-input-group-compact>*:not(:last-child){margin-right:-1px;border-right-width:1px}.ant-input-group.ant-input-group-compact .ant-input{float:none}.ant-input-group.ant-input-group-compact>.ant-select>.ant-select-selector,.ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input,.ant-input-group.ant-input-group-compact>.ant-cascader-picker .ant-input,.ant-input-group.ant-input-group-compact>.ant-input-group-wrapper .ant-input{border-right-width:1px;border-radius:0}.ant-input-group.ant-input-group-compact>.ant-select>.ant-select-selector:hover,.ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input:hover,.ant-input-group.ant-input-group-compact>.ant-cascader-picker .ant-input:hover,.ant-input-group.ant-input-group-compact>.ant-input-group-wrapper .ant-input:hover{z-index:1}.ant-input-group.ant-input-group-compact>.ant-select>.ant-select-selector:focus,.ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input:focus,.ant-input-group.ant-input-group-compact>.ant-cascader-picker .ant-input:focus,.ant-input-group.ant-input-group-compact>.ant-input-group-wrapper .ant-input:focus{z-index:1}.ant-input-group.ant-input-group-compact>.ant-select-focused{z-index:1}.ant-input-group.ant-input-group-compact>.ant-select>.ant-select-arrow{z-index:1}.ant-input-group.ant-input-group-compact>*:first-child,.ant-input-group.ant-input-group-compact>.ant-select:first-child>.ant-select-selector,.ant-input-group.ant-input-group-compact>.ant-select-auto-complete:first-child .ant-input,.ant-input-group.ant-input-group-compact>.ant-cascader-picker:first-child .ant-input{border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-input-group.ant-input-group-compact>*:last-child,.ant-input-group.ant-input-group-compact>.ant-select:last-child>.ant-select-selector,.ant-input-group.ant-input-group-compact>.ant-cascader-picker:last-child .ant-input,.ant-input-group.ant-input-group-compact>.ant-cascader-picker-focused:last-child .ant-input{border-right-width:1px;border-top-right-radius:2px;border-bottom-right-radius:2px}.ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input{vertical-align:top}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper+.ant-input-group-wrapper{margin-left:-1px}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper+.ant-input-group-wrapper .ant-input-affix-wrapper{border-radius:0}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper:not(:last-child).ant-input-search>.ant-input-group>.ant-input-group-addon>.ant-input-search-button{border-radius:0}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper:not(:last-child).ant-input-search>.ant-input-group>.ant-input{border-radius:2px 0 0 2px}.ant-input-group>.ant-input-rtl:first-child,.ant-input-group-rtl .ant-input-group-addon:first-child{border-radius:0 2px 2px 0}.ant-input-group-rtl .ant-input-group-addon:first-child{border-right:1px solid #d9d9d9;border-left:0}.ant-input-group-rtl .ant-input-group-addon:last-child{border-right:0;border-left:1px solid #d9d9d9}.ant-input-group-rtl.ant-input-group>.ant-input:last-child,.ant-input-group-rtl.ant-input-group-addon:last-child{border-radius:2px 0 0 2px}.ant-input-group-rtl.ant-input-group .ant-input-affix-wrapper:not(:first-child){border-radius:2px 0 0 2px}.ant-input-group-rtl.ant-input-group .ant-input-affix-wrapper:not(:last-child){border-radius:0 2px 2px 0}.ant-input-group-rtl.ant-input-group.ant-input-group-compact>*:not(:last-child){margin-right:0;margin-left:-1px;border-left-width:1px}.ant-input-group-rtl.ant-input-group.ant-input-group-compact>*:first-child,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-select:first-child>.ant-select-selector,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-select-auto-complete:first-child .ant-input,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-cascader-picker:first-child .ant-input{border-radius:0 2px 2px 0}.ant-input-group-rtl.ant-input-group.ant-input-group-compact>*:last-child,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-select:last-child>.ant-select-selector,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-select-auto-complete:last-child .ant-input,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-cascader-picker:last-child .ant-input,.ant-input-group-rtl.ant-input-group.ant-input-group-compact>.ant-cascader-picker-focused:last-child .ant-input{border-left-width:1px;border-radius:2px 0 0 2px}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper-rtl+.ant-input-group-wrapper-rtl{margin-right:-1px;margin-left:0}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper-rtl:not(:last-child).ant-input-search>.ant-input-group>.ant-input{border-radius:0 2px 2px 0}.ant-input-group-wrapper{display:inline-block;width:100%;text-align:start;vertical-align:top}.ant-input-password-icon.anticon{color:#00000073;cursor:pointer;transition:all .3s}.ant-input-password-icon.anticon:hover{color:#000000d9}.ant-input[type=color]{height:32px}.ant-input[type=color].ant-input-lg{height:40px}.ant-input[type=color].ant-input-sm{height:24px;padding-top:3px;padding-bottom:3px}.ant-input-textarea-show-count>.ant-input{height:100%}.ant-input-textarea-show-count:after{float:right;color:#00000073;white-space:nowrap;content:attr(data-count);pointer-events:none}.ant-input-textarea-show-count.ant-input-textarea-in-form-item:after{margin-bottom:-22px}.ant-input-textarea-suffix{position:absolute;top:0;right:11px;bottom:0;z-index:1;display:inline-flex;align-items:center;margin:auto}.ant-input-search .ant-input:hover,.ant-input-search .ant-input:focus{border-color:#40a9ff}.ant-input-search .ant-input:hover+.ant-input-group-addon .ant-input-search-button:not(.ant-btn-primary),.ant-input-search .ant-input:focus+.ant-input-group-addon .ant-input-search-button:not(.ant-btn-primary){border-left-color:#40a9ff}.ant-input-search .ant-input-affix-wrapper{border-radius:0}.ant-input-search .ant-input-lg{line-height:1.5713}.ant-input-search>.ant-input-group>.ant-input-group-addon:last-child{left:-1px;padding:0;border:0}.ant-input-search>.ant-input-group>.ant-input-group-addon:last-child .ant-input-search-button{padding-top:0;padding-bottom:0;border-radius:0 2px 2px 0}.ant-input-search>.ant-input-group>.ant-input-group-addon:last-child .ant-input-search-button:not(.ant-btn-primary){color:#00000073}.ant-input-search>.ant-input-group>.ant-input-group-addon:last-child .ant-input-search-button:not(.ant-btn-primary).ant-btn-loading:before{inset:0}.ant-input-search-button{height:32px}.ant-input-search-button:hover,.ant-input-search-button:focus{z-index:1}.ant-input-search-large .ant-input-search-button{height:40px}.ant-input-search-small .ant-input-search-button{height:24px}.ant-input-group-wrapper-rtl,.ant-input-group-rtl{direction:rtl}.ant-input-affix-wrapper.ant-input-affix-wrapper-rtl>input.ant-input{border:none;outline:none}.ant-input-affix-wrapper-rtl .ant-input-prefix{margin:0 0 0 4px}.ant-input-affix-wrapper-rtl .ant-input-suffix{margin:0 4px 0 0}.ant-input-textarea-rtl{direction:rtl}.ant-input-textarea-rtl.ant-input-textarea-show-count:after{text-align:left}.ant-input-affix-wrapper-rtl .ant-input-clear-icon-has-suffix{margin-right:0;margin-left:4px}.ant-input-affix-wrapper-rtl .ant-input-clear-icon{right:auto;left:8px}.ant-input-search-rtl{direction:rtl}.ant-input-search-rtl .ant-input:hover+.ant-input-group-addon .ant-input-search-button:not(.ant-btn-primary),.ant-input-search-rtl .ant-input:focus+.ant-input-group-addon .ant-input-search-button:not(.ant-btn-primary){border-right-color:#40a9ff;border-left-color:#d9d9d9}.ant-input-search-rtl>.ant-input-group>.ant-input-affix-wrapper:hover,.ant-input-search-rtl>.ant-input-group>.ant-input-affix-wrapper-focused{border-right-color:#40a9ff}.ant-input-search-rtl>.ant-input-group>.ant-input-group-addon{right:-1px;left:auto}.ant-input-search-rtl>.ant-input-group>.ant-input-group-addon .ant-input-search-button{border-radius:2px 0 0 2px}@media screen and (-ms-high-contrast: active),(-ms-high-contrast: none){.ant-input{height:32px}.ant-input-lg{height:40px}.ant-input-sm{height:24px}.ant-input-affix-wrapper>input.ant-input{height:auto}}textarea.nz-textarea-autosize-measuring{height:auto!important;overflow:hidden!important;padding:2px 0!important}.ant-input-search-rtl.ant-input-search-enter-button+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only,.ant-input-search-rtl.ant-input-search-enter-button input+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only{width:32px;height:32px}.ant-input-search-rtl.ant-input-search-enter-button+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only.ant-btn-sm,.ant-input-search-rtl.ant-input-search-enter-button input+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only.ant-btn-sm{width:24px;height:24px}.ant-input-search-rtl.ant-input-search-enter-button+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only.ant-btn-lg,.ant-input-search-rtl.ant-input-search-enter-button input+.ant-input-group-addon .ant-input-search-button.ant-btn-icon-only.ant-btn-lg{width:40px;height:40px}.ant-input-affix-wrapper-textarea-with-clear-btn .ant-input-suffix{margin-left:0}nz-form-item-feedback-icon.ant-input-suffix{display:flex;flex:none;align-items:center;pointer-events:none}nz-form-item-feedback-icon.ant-input-suffix{position:absolute;top:0;right:0;z-index:1;height:100%;margin-right:12px;margin-left:4px}.ant-input-status-error.ant-input-has-feedback,.ant-input-status-warning.ant-input-has-feedback,.ant-input-status-validating.ant-input-has-feedback,.ant-input-status-success.ant-input-has-feedback{padding-right:28px}.ant-input-textarea-show-count{display:block;position:relative}.ant-input-number-affix-wrapper{display:inline-block;width:100%;min-width:0;color:#000000d9;font-size:14px;line-height:1.5715;background-color:#fff;background-image:none;border:1px solid #d9d9d9;border-radius:2px;transition:all .3s;position:relative;display:inline-flex;width:90px;padding:0;padding-inline-start:11px}.ant-input-number-affix-wrapper::placeholder{color:#bfbfbf;-webkit-user-select:none;user-select:none}.ant-input-number-affix-wrapper:placeholder-shown{text-overflow:ellipsis}.ant-input-number-affix-wrapper:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-input-number-affix-wrapper:hover{border-right-width:0;border-left-width:1px!important}.ant-input-number-affix-wrapper:focus,.ant-input-number-affix-wrapper-focused{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;border-right-width:1px;outline:0}.ant-input-rtl .ant-input-number-affix-wrapper:focus,.ant-input-rtl .ant-input-number-affix-wrapper-focused{border-right-width:0;border-left-width:1px!important}.ant-input-number-affix-wrapper-disabled{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;pointer-events:none;color:#00000040}.ant-input-number-affix-wrapper-disabled:hover{border-color:#d9d9d9;border-right-width:1px}.ant-input-number-affix-wrapper[disabled]{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;pointer-events:none;color:#00000040}.ant-input-number-affix-wrapper[disabled]:hover{border-color:#d9d9d9;border-right-width:1px}.ant-input-number-affix-wrapper-borderless,.ant-input-number-affix-wrapper-borderless:hover,.ant-input-number-affix-wrapper-borderless:focus,.ant-input-number-affix-wrapper-borderless-focused,.ant-input-number-affix-wrapper-borderless-disabled,.ant-input-number-affix-wrapper-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-input-number-affix-wrapper{max-width:100%;height:auto;min-height:32px;line-height:1.5715;vertical-align:bottom;transition:all .3s,height 0s}.ant-input-number-affix-wrapper-lg{padding:6.5px 11px;font-size:16px}.ant-input-number-affix-wrapper-sm{padding:0 7px}.ant-input-number-affix-wrapper-rtl{direction:rtl}.ant-input-number-affix-wrapper-stepperless[type=number]{-moz-appearance:textfield}.ant-input-number-affix-wrapper-stepperless[type=number]::-webkit-inner-spin-button,.ant-input-number-affix-wrapper-stepperless[type=number] ::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ant-input-number-affix-wrapper:not(.ant-input-number-affix-wrapper-disabled):hover{border-color:#40a9ff;border-right-width:1px;z-index:1}.ant-input-rtl .ant-input-number-affix-wrapper:not(.ant-input-number-affix-wrapper-disabled):hover{border-right-width:0;border-left-width:1px!important}.ant-input-number-affix-wrapper-focused,.ant-input-number-affix-wrapper:focus{z-index:1}.ant-input-number-affix-wrapper-disabled .ant-input-number[disabled]{background:transparent}.ant-input-number-affix-wrapper>div.ant-input-number{width:100%;border:none;outline:none}.ant-input-number-affix-wrapper>div.ant-input-number.ant-input-number-focused{box-shadow:none!important}.ant-input-number-affix-wrapper input.ant-input-number-input{padding:0}.ant-input-number-affix-wrapper:before{width:0;visibility:hidden;content:"\a0"}.ant-input-number-affix-wrapper .ant-input-number-handler-wrap{z-index:2}.ant-input-number-prefix,.ant-input-number-suffix{display:flex;flex:none;align-items:center;pointer-events:none}.ant-input-number-prefix{margin-inline-end:4px}.ant-input-number-suffix{position:absolute;top:0;right:0;z-index:1;height:100%;margin-right:11px;margin-left:4px}.ant-input-number-group-wrapper .ant-input-number-affix-wrapper{width:100%}.ant-input-number-status-error:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number,.ant-input-number-status-error:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number:hover{background:#fff;border-color:#ff4d4f}.ant-input-number-status-error:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number:focus,.ant-input-number-status-error:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number-focused{border-color:#ff7875;box-shadow:0 0 0 2px #ff4d4f33;border-right-width:1px;outline:0}.ant-input-number-status-error .ant-input-number-prefix{color:#ff4d4f}.ant-input-number-status-warning:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number,.ant-input-number-status-warning:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number:hover{background:#fff;border-color:#faad14}.ant-input-number-status-warning:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number:focus,.ant-input-number-status-warning:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number-focused{border-color:#ffc53d;box-shadow:0 0 0 2px #faad1433;border-right-width:1px;outline:0}.ant-input-number-status-warning .ant-input-number-prefix{color:#faad14}.ant-input-number-affix-wrapper-status-error:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper,.ant-input-number-affix-wrapper-status-error:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper:hover{background:#fff;border-color:#ff4d4f}.ant-input-number-affix-wrapper-status-error:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper:focus,.ant-input-number-affix-wrapper-status-error:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper-focused{border-color:#ff7875;box-shadow:0 0 0 2px #ff4d4f33;border-right-width:1px;outline:0}.ant-input-number-affix-wrapper-status-error .ant-input-number-prefix{color:#ff4d4f}.ant-input-number-affix-wrapper-status-warning:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper,.ant-input-number-affix-wrapper-status-warning:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper:hover{background:#fff;border-color:#faad14}.ant-input-number-affix-wrapper-status-warning:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper:focus,.ant-input-number-affix-wrapper-status-warning:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper-focused{border-color:#ffc53d;box-shadow:0 0 0 2px #faad1433;border-right-width:1px;outline:0}.ant-input-number-affix-wrapper-status-warning .ant-input-number-prefix{color:#faad14}.ant-input-number-group-wrapper-status-error .ant-input-number-group-addon{color:#ff4d4f;border-color:#ff4d4f}.ant-input-number-group-wrapper-status-warning .ant-input-number-group-addon{color:#faad14;border-color:#faad14}.ant-input-number{box-sizing:border-box;font-variant:tabular-nums;list-style:none;font-feature-settings:"tnum";position:relative;width:100%;min-width:0;color:#000000d9;font-size:14px;line-height:1.5715;background-color:#fff;background-image:none;transition:all .3s;display:inline-block;width:90px;margin:0;padding:0;border:1px solid #d9d9d9;border-radius:2px}.ant-input-number::placeholder{color:#bfbfbf;-webkit-user-select:none;user-select:none}.ant-input-number:placeholder-shown{text-overflow:ellipsis}.ant-input-rtl .ant-input-number:hover{border-right-width:0;border-left-width:1px!important}.ant-input-number:focus,.ant-input-number-focused{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;border-right-width:1px;outline:0}.ant-input-rtl .ant-input-number:focus,.ant-input-rtl .ant-input-number-focused{border-right-width:0;border-left-width:1px!important}.ant-input-number[disabled]{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;pointer-events:none;color:#00000040}.ant-input-number[disabled]:hover{border-color:#d9d9d9;border-right-width:1px}.ant-input-number-borderless,.ant-input-number-borderless:hover,.ant-input-number-borderless:focus,.ant-input-number-borderless-focused,.ant-input-number-borderless-disabled,.ant-input-number-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-input-number{max-width:100%;height:auto;min-height:32px;line-height:1.5715;vertical-align:bottom;transition:all .3s,height 0s}.ant-input-number-lg{padding:6.5px 11px;font-size:16px}.ant-input-number-sm{padding:0 7px}.ant-input-number-stepperless[type=number]{-moz-appearance:textfield}.ant-input-number-stepperless[type=number]::-webkit-inner-spin-button,.ant-input-number-stepperless[type=number] ::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ant-input-number-group{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;display:table;width:100%;border-collapse:separate;border-spacing:0}.ant-input-number-group[class*=col-]{float:none;padding-right:0;padding-left:0}.ant-input-number-group>[class*=col-]{padding-right:8px}.ant-input-number-group>[class*=col-]:last-child{padding-right:0}.ant-input-number-group-addon,.ant-input-number-group-wrap,.ant-input-number-group>.ant-input-number{display:table-cell}.ant-input-number-group-addon:not(:first-child):not(:last-child),.ant-input-number-group-wrap:not(:first-child):not(:last-child),.ant-input-number-group>.ant-input-number:not(:first-child):not(:last-child){border-radius:0}.ant-input-number-group-addon,.ant-input-number-group-wrap{width:1px;white-space:nowrap;vertical-align:middle}.ant-input-number-group-wrap>*{display:block!important}.ant-input-number-group .ant-input-number{float:left;width:100%;margin-bottom:0;text-align:inherit}.ant-input-number-group .ant-input-number:focus{z-index:1;border-right-width:1px}.ant-input-number-group .ant-input-number:hover{z-index:1;border-right-width:1px}.ant-input-search-with-button .ant-input-number-group .ant-input-number:hover{z-index:0}.ant-input-number-group-addon{position:relative;padding:0 11px;color:#000000d9;font-weight:400;font-size:14px;text-align:center;background-color:#fafafa;border:1px solid #d9d9d9;border-radius:2px;transition:all .3s}.ant-input-number-group-addon .ant-select{margin:-5px -11px}.ant-input-number-group-addon .ant-select.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{background-color:inherit;border:1px solid transparent;box-shadow:none}.ant-input-number-group-addon .ant-select-open .ant-select-selector,.ant-input-number-group-addon .ant-select-focused .ant-select-selector{color:#1890ff}.ant-input-number-group-addon .ant-cascader-picker{margin:-9px -12px;background-color:transparent}.ant-input-number-group-addon .ant-cascader-picker .ant-cascader-input{text-align:left;border:0;box-shadow:none}.ant-input-number-group>.ant-input-number:first-child,.ant-input-number-group-addon:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.ant-input-number-group>.ant-input-number:first-child .ant-select .ant-select-selector,.ant-input-number-group-addon:first-child .ant-select .ant-select-selector{border-top-right-radius:0;border-bottom-right-radius:0}.ant-input-number-group>.ant-input-number-affix-wrapper:not(:first-child) .ant-input-number{border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-number-group>.ant-input-number-affix-wrapper:not(:last-child) .ant-input-number{border-top-right-radius:0;border-bottom-right-radius:0}.ant-input-number-group-addon:first-child{border-right:0}.ant-input-number-group-addon:last-child{border-left:0}.ant-input-number-group>.ant-input-number:last-child,.ant-input-number-group-addon:last-child{border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-number-group>.ant-input-number:last-child .ant-select .ant-select-selector,.ant-input-number-group-addon:last-child .ant-select .ant-select-selector{border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-number-group-lg .ant-input-number,.ant-input-number-group-lg>.ant-input-number-group-addon{padding:6.5px 11px;font-size:16px}.ant-input-number-group-sm .ant-input-number,.ant-input-number-group-sm>.ant-input-number-group-addon{padding:0 7px}.ant-input-number-group-lg .ant-select-single .ant-select-selector{height:40px}.ant-input-number-group-sm .ant-select-single .ant-select-selector{height:24px}.ant-input-number-group .ant-input-number-affix-wrapper:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.ant-input-search .ant-input-number-group .ant-input-number-affix-wrapper:not(:last-child){border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-input-number-group .ant-input-number-affix-wrapper:not(:first-child),.ant-input-search .ant-input-number-group .ant-input-number-affix-wrapper:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.ant-input-number-group.ant-input-number-group-compact{display:block}.ant-input-number-group.ant-input-number-group-compact:before{display:table;content:""}.ant-input-number-group.ant-input-number-group-compact:after{display:table;clear:both;content:""}.ant-input-number-group.ant-input-number-group-compact-addon:not(:first-child):not(:last-child),.ant-input-number-group.ant-input-number-group-compact-wrap:not(:first-child):not(:last-child),.ant-input-number-group.ant-input-number-group-compact>.ant-input-number:not(:first-child):not(:last-child){border-right-width:1px}.ant-input-number-group.ant-input-number-group-compact-addon:not(:first-child):not(:last-child):hover,.ant-input-number-group.ant-input-number-group-compact-wrap:not(:first-child):not(:last-child):hover,.ant-input-number-group.ant-input-number-group-compact>.ant-input-number:not(:first-child):not(:last-child):hover{z-index:1}.ant-input-number-group.ant-input-number-group-compact-addon:not(:first-child):not(:last-child):focus,.ant-input-number-group.ant-input-number-group-compact-wrap:not(:first-child):not(:last-child):focus,.ant-input-number-group.ant-input-number-group-compact>.ant-input-number:not(:first-child):not(:last-child):focus{z-index:1}.ant-input-number-group.ant-input-number-group-compact>*{display:inline-block;float:none;vertical-align:top;border-radius:0}.ant-input-number-group.ant-input-number-group-compact>.ant-input-number-affix-wrapper{display:inline-flex}.ant-input-number-group.ant-input-number-group-compact>.ant-picker-range{display:inline-flex}.ant-input-number-group.ant-input-number-group-compact>*:not(:last-child){margin-right:-1px;border-right-width:1px}.ant-input-number-group.ant-input-number-group-compact .ant-input-number{float:none}.ant-input-number-group.ant-input-number-group-compact>.ant-select>.ant-select-selector,.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-input-group-wrapper .ant-input{border-right-width:1px;border-radius:0}.ant-input-number-group.ant-input-number-group-compact>.ant-select>.ant-select-selector:hover,.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete .ant-input:hover,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker .ant-input:hover,.ant-input-number-group.ant-input-number-group-compact>.ant-input-group-wrapper .ant-input:hover{z-index:1}.ant-input-number-group.ant-input-number-group-compact>.ant-select>.ant-select-selector:focus,.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete .ant-input:focus,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker .ant-input:focus,.ant-input-number-group.ant-input-number-group-compact>.ant-input-group-wrapper .ant-input:focus{z-index:1}.ant-input-number-group.ant-input-number-group-compact>.ant-select-focused{z-index:1}.ant-input-number-group.ant-input-number-group-compact>.ant-select>.ant-select-arrow{z-index:1}.ant-input-number-group.ant-input-number-group-compact>*:first-child,.ant-input-number-group.ant-input-number-group-compact>.ant-select:first-child>.ant-select-selector,.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete:first-child .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker:first-child .ant-input{border-top-left-radius:2px;border-bottom-left-radius:2px}.ant-input-number-group.ant-input-number-group-compact>*:last-child,.ant-input-number-group.ant-input-number-group-compact>.ant-select:last-child>.ant-select-selector,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker:last-child .ant-input,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker-focused:last-child .ant-input{border-right-width:1px;border-top-right-radius:2px;border-bottom-right-radius:2px}.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete .ant-input{vertical-align:top}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper+.ant-input-group-wrapper{margin-left:-1px}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper+.ant-input-group-wrapper .ant-input-affix-wrapper{border-radius:0}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper:not(:last-child).ant-input-search>.ant-input-group>.ant-input-group-addon>.ant-input-search-button{border-radius:0}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper:not(:last-child).ant-input-search>.ant-input-group>.ant-input{border-radius:2px 0 0 2px}.ant-input-number-group>.ant-input-number-rtl:first-child,.ant-input-number-group-rtl .ant-input-number-group-addon:first-child{border-radius:0 2px 2px 0}.ant-input-number-group-rtl .ant-input-number-group-addon:first-child{border-right:1px solid #d9d9d9;border-left:0}.ant-input-number-group-rtl .ant-input-number-group-addon:last-child{border-right:0;border-left:1px solid #d9d9d9}.ant-input-number-group-rtl.ant-input-number-group>.ant-input-number:last-child,.ant-input-number-group-rtl.ant-input-number-group-addon:last-child{border-radius:2px 0 0 2px}.ant-input-number-group-rtl.ant-input-number-group .ant-input-number-affix-wrapper:not(:first-child){border-radius:2px 0 0 2px}.ant-input-number-group-rtl.ant-input-number-group .ant-input-number-affix-wrapper:not(:last-child){border-radius:0 2px 2px 0}.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>*:not(:last-child){margin-right:0;margin-left:-1px;border-left-width:1px}.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>*:first-child,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-select:first-child>.ant-select-selector,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete:first-child .ant-input,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker:first-child .ant-input{border-radius:0 2px 2px 0}.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>*:last-child,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-select:last-child>.ant-select-selector,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete:last-child .ant-input,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker:last-child .ant-input,.ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker-focused:last-child .ant-input{border-left-width:1px;border-radius:2px 0 0 2px}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper-rtl+.ant-input-group-wrapper-rtl{margin-right:-1px;margin-left:0}.ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper-rtl:not(:last-child).ant-input-search>.ant-input-group>.ant-input{border-radius:0 2px 2px 0}.ant-input-number-group-wrapper{display:inline-block;text-align:start;vertical-align:top}.ant-input-number-handler{position:relative;display:block;width:100%;height:50%;overflow:hidden;color:#00000073;font-weight:700;line-height:0;text-align:center;border-left:1px solid #d9d9d9;transition:all .1s linear}.ant-input-number-handler:active{background:#f4f4f4}.ant-input-number-handler:hover .ant-input-number-handler-up-inner,.ant-input-number-handler:hover .ant-input-number-handler-down-inner{color:#40a9ff}.ant-input-number-handler-up-inner,.ant-input-number-handler-down-inner{display:inline-block;color:inherit;font-style:normal;line-height:0;text-align:center;text-transform:none;vertical-align:-.125em;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:absolute;right:4px;width:12px;height:12px;color:#00000073;line-height:12px;transition:all .1s linear;-webkit-user-select:none;user-select:none}.ant-input-number-handler-up-inner>*,.ant-input-number-handler-down-inner>*{line-height:1}.ant-input-number-handler-up-inner svg,.ant-input-number-handler-down-inner svg{display:inline-block}.ant-input-number-handler-up-inner:before,.ant-input-number-handler-down-inner:before{display:none}.ant-input-number-handler-up-inner .ant-input-number-handler-up-inner-icon,.ant-input-number-handler-up-inner .ant-input-number-handler-down-inner-icon,.ant-input-number-handler-down-inner .ant-input-number-handler-up-inner-icon,.ant-input-number-handler-down-inner .ant-input-number-handler-down-inner-icon{display:block}.ant-input-number:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-number:hover+.ant-form-item-children-icon{opacity:0;transition:opacity .24s linear .24s}.ant-input-number-focused{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;border-right-width:1px;outline:0}.ant-input-rtl .ant-input-number-focused{border-right-width:0;border-left-width:1px!important}.ant-input-number-disabled{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;pointer-events:none;color:#00000040}.ant-input-number-disabled:hover{border-color:#d9d9d9;border-right-width:1px}.ant-input-number-disabled .ant-input-number-input{cursor:not-allowed}.ant-input-number-disabled .ant-input-number-handler-wrap,.ant-input-number-readonly .ant-input-number-handler-wrap{display:none}.ant-input-number-input{width:100%;height:30px;padding:0 11px;text-align:left;background-color:transparent;border:0;border-radius:2px;outline:0;transition:all .3s linear;appearance:textfield!important}.ant-input-number-input::placeholder{color:#bfbfbf;-webkit-user-select:none;user-select:none}.ant-input-number-input:placeholder-shown{text-overflow:ellipsis}.ant-input-number-input[type=number]::-webkit-inner-spin-button,.ant-input-number-input[type=number]::-webkit-outer-spin-button{margin:0;appearance:none}.ant-input-number-lg{padding:0;font-size:16px}.ant-input-number-lg input{height:38px}.ant-input-number-sm{padding:0}.ant-input-number-sm input{height:22px;padding:0 7px}.ant-input-number-handler-wrap{position:absolute;top:0;right:0;width:22px;height:100%;background:#fff;border-radius:0 2px 2px 0;opacity:0;transition:opacity .24s linear .1s}.ant-input-number-handler-wrap .ant-input-number-handler .ant-input-number-handler-up-inner,.ant-input-number-handler-wrap .ant-input-number-handler .ant-input-number-handler-down-inner{display:flex;align-items:center;justify-content:center;min-width:auto;margin-right:0;font-size:7px}.ant-input-number-borderless .ant-input-number-handler-wrap{border-left-width:0}.ant-input-number-handler-wrap:hover .ant-input-number-handler{height:40%}.ant-input-number:hover .ant-input-number-handler-wrap,.ant-input-number-focused .ant-input-number-handler-wrap{opacity:1}.ant-input-number-handler-up{border-top-right-radius:2px;cursor:pointer}.ant-input-number-handler-up-inner{top:50%;margin-top:-5px;text-align:center}.ant-input-number-handler-up:hover{height:60%!important}.ant-input-number-handler-down{top:0;border-top:1px solid #d9d9d9;border-bottom-right-radius:2px;cursor:pointer}.ant-input-number-handler-down-inner{top:50%;text-align:center;transform:translateY(-50%)}.ant-input-number-handler-down:hover{height:60%!important}.ant-input-number-borderless .ant-input-number-handler-down{border-top-width:0}.ant-input-number-handler-up-disabled,.ant-input-number-handler-down-disabled{cursor:not-allowed}.ant-input-number-handler-up-disabled:hover .ant-input-number-handler-up-inner,.ant-input-number-handler-down-disabled:hover .ant-input-number-handler-down-inner{color:#00000040}.ant-input-number-borderless{box-shadow:none}.ant-input-number-out-of-range input{color:#ff4d4f}.ant-input-number-rtl{direction:rtl}.ant-input-number-rtl .ant-input-number-handler{border-right:1px solid #d9d9d9;border-left:0}.ant-input-number-rtl .ant-input-number-handler-wrap{right:auto;left:0}.ant-input-number-rtl.ant-input-number-borderless .ant-input-number-handler-wrap{border-right-width:0}.ant-input-number-rtl .ant-input-number-handler-up{border-top-right-radius:0}.ant-input-number-rtl .ant-input-number-handler-down{border-bottom-right-radius:0}.ant-input-number-rtl .ant-input-number-input{direction:ltr;text-align:right}.ant-input-number-affix-wrapper>nz-input-number.ant-input-number{width:100%;border:none;outline:none}.ant-input-number-affix-wrapper>nz-input-number.ant-input-number.ant-input-number-focused{box-shadow:none!important}.ant-input-number.ant-input-number-has-feedback .ant-input-number-handler-wrap{z-index:2}.ant-layout{display:flex;flex:auto;flex-direction:column;min-height:0;background:#f0f2f5}.ant-layout,.ant-layout *{box-sizing:border-box}.ant-layout.ant-layout-has-sider{flex-direction:row}.ant-layout.ant-layout-has-sider>.ant-layout,.ant-layout.ant-layout-has-sider>.ant-layout-content{width:0}.ant-layout-header,.ant-layout-footer{flex:0 0 auto}.ant-layout-header{height:64px;padding:0 50px;color:#000000d9;line-height:64px;background:#001529}.ant-layout-footer{padding:24px 50px;color:#000000d9;font-size:14px;background:#f0f2f5}.ant-layout-content{flex:auto;min-height:0}.ant-layout-sider{position:relative;min-width:0;background:#001529;transition:all .2s}.ant-layout-sider-children{height:100%;margin-top:-.1px;padding-top:.1px}.ant-layout-sider-children .ant-menu.ant-menu-inline-collapsed{width:auto}.ant-layout-sider-has-trigger{padding-bottom:48px}.ant-layout-sider-right{order:1}.ant-layout-sider-trigger{position:fixed;bottom:0;z-index:1;height:48px;color:#fff;line-height:48px;text-align:center;background:#002140;cursor:pointer;transition:all .2s}.ant-layout-sider-zero-width>*{overflow:hidden}.ant-layout-sider-zero-width-trigger{position:absolute;top:64px;right:-36px;z-index:1;width:36px;height:42px;color:#fff;font-size:18px;line-height:42px;text-align:center;background:#001529;border-radius:0 2px 2px 0;cursor:pointer;transition:background .3s ease}.ant-layout-sider-zero-width-trigger:after{position:absolute;inset:0;background:transparent;transition:all .3s;content:""}.ant-layout-sider-zero-width-trigger:hover:after{background:rgba(255,255,255,.1)}.ant-layout-sider-zero-width-trigger-right{left:-36px;border-radius:2px 0 0 2px}.ant-layout-sider-light{background:#fff}.ant-layout-sider-light .ant-layout-sider-trigger,.ant-layout-sider-light .ant-layout-sider-zero-width-trigger{color:#000000d9;background:#fff}.ant-layout-rtl{direction:rtl}nz-content{display:block}nz-footer{display:block}nz-header{display:block}.ant-form-item .ant-input-number+.ant-form-text{margin-left:8px}.ant-form-inline{display:flex;flex-wrap:wrap}.ant-form-inline .ant-form-item{flex:none;flex-wrap:nowrap;margin-right:16px;margin-bottom:0}.ant-form-inline .ant-form-item-with-help{margin-bottom:24px}.ant-form-inline .ant-form-item>.ant-form-item-label,.ant-form-inline .ant-form-item>.ant-form-item-control{display:inline-block;vertical-align:top}.ant-form-inline .ant-form-item>.ant-form-item-label{flex:none}.ant-form-inline .ant-form-item .ant-form-text,.ant-form-inline .ant-form-item .ant-form-item-has-feedback{display:inline-block}.ant-form-horizontal .ant-form-item-label{flex-grow:0}.ant-form-horizontal .ant-form-item-control{flex:1 1 0;min-width:0}.ant-form-horizontal .ant-form-item-label[class$="-24"]+.ant-form-item-control,.ant-form-horizontal .ant-form-item-label[class*="-24 "]+.ant-form-item-control{min-width:unset}.ant-form-vertical .ant-form-item{flex-direction:column}.ant-form-vertical .ant-form-item-label>label{height:auto}.ant-form-vertical .ant-form-item-label,.ant-col-24.ant-form-item-label,.ant-col-xl-24.ant-form-item-label{padding:0 0 8px;line-height:1.5715;white-space:initial;text-align:left}.ant-form-vertical .ant-form-item-label>label,.ant-col-24.ant-form-item-label>label,.ant-col-xl-24.ant-form-item-label>label{margin:0}.ant-form-vertical .ant-form-item-label>label:after,.ant-col-24.ant-form-item-label>label:after,.ant-col-xl-24.ant-form-item-label>label:after{display:none}.ant-form-rtl.ant-form-vertical .ant-form-item-label,.ant-form-rtl.ant-col-24.ant-form-item-label,.ant-form-rtl.ant-col-xl-24.ant-form-item-label{text-align:right}@media (max-width: 575px){.ant-form-item .ant-form-item-label{padding:0 0 8px;line-height:1.5715;white-space:initial;text-align:left}.ant-form-item .ant-form-item-label>label{margin:0}.ant-form-item .ant-form-item-label>label:after{display:none}.ant-form-rtl.ant-form-item .ant-form-item-label{text-align:right}.ant-form .ant-form-item{flex-wrap:wrap}.ant-form .ant-form-item .ant-form-item-label,.ant-form .ant-form-item .ant-form-item-control{flex:0 0 100%;max-width:100%}.ant-col-xs-24.ant-form-item-label{padding:0 0 8px;line-height:1.5715;white-space:initial;text-align:left}.ant-col-xs-24.ant-form-item-label>label{margin:0}.ant-col-xs-24.ant-form-item-label>label:after{display:none}.ant-form-rtl.ant-col-xs-24.ant-form-item-label{text-align:right}}@media (max-width: 767px){.ant-col-sm-24.ant-form-item-label{padding:0 0 8px;line-height:1.5715;white-space:initial;text-align:left}.ant-col-sm-24.ant-form-item-label>label{margin:0}.ant-col-sm-24.ant-form-item-label>label:after{display:none}.ant-form-rtl.ant-col-sm-24.ant-form-item-label{text-align:right}}@media (max-width: 991px){.ant-col-md-24.ant-form-item-label{padding:0 0 8px;line-height:1.5715;white-space:initial;text-align:left}.ant-col-md-24.ant-form-item-label>label{margin:0}.ant-col-md-24.ant-form-item-label>label:after{display:none}.ant-form-rtl.ant-col-md-24.ant-form-item-label{text-align:right}}@media (max-width: 1199px){.ant-col-lg-24.ant-form-item-label{padding:0 0 8px;line-height:1.5715;white-space:initial;text-align:left}.ant-col-lg-24.ant-form-item-label>label{margin:0}.ant-col-lg-24.ant-form-item-label>label:after{display:none}.ant-form-rtl.ant-col-lg-24.ant-form-item-label{text-align:right}}@media (max-width: 1599px){.ant-col-xl-24.ant-form-item-label{padding:0 0 8px;line-height:1.5715;white-space:initial;text-align:left}.ant-col-xl-24.ant-form-item-label>label{margin:0}.ant-col-xl-24.ant-form-item-label>label:after{display:none}.ant-form-rtl.ant-col-xl-24.ant-form-item-label{text-align:right}}.ant-form-item-explain-error{color:#ff4d4f}.ant-form-item-explain-warning{color:#faad14}.ant-form-item-has-feedback .ant-switch{margin:2px 0 4px}.ant-form-item-has-warning .ant-form-item-split{color:#faad14}.ant-form-item-has-error .ant-form-item-split{color:#ff4d4f}.ant-form{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum"}.ant-form legend{display:block;width:100%;margin-bottom:20px;padding:0;color:#00000073;font-size:16px;line-height:inherit;border:0;border-bottom:1px solid #d9d9d9}.ant-form label{font-size:14px}.ant-form input[type=search]{box-sizing:border-box}.ant-form input[type=radio],.ant-form input[type=checkbox]{line-height:normal}.ant-form input[type=file]{display:block}.ant-form input[type=range]{display:block;width:100%}.ant-form select[multiple],.ant-form select[size]{height:auto}.ant-form input[type=file]:focus,.ant-form input[type=radio]:focus,.ant-form input[type=checkbox]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ant-form output{display:block;padding-top:15px;color:#000000d9;font-size:14px;line-height:1.5715}.ant-form .ant-form-text{display:inline-block;padding-right:8px}.ant-form-small .ant-form-item-label>label{height:24px}.ant-form-small .ant-form-item-control-input{min-height:24px}.ant-form-large .ant-form-item-label>label{height:40px}.ant-form-large .ant-form-item-control-input{min-height:40px}.ant-form-item{box-sizing:border-box;margin:0 0 24px;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";vertical-align:top;transition:margin-bottom .3s 17ms linear}.ant-form-item-with-help{margin-bottom:0;transition:none}.ant-form-item-hidden,.ant-form-item-hidden.ant-row{display:none}.ant-form-item-label{display:inline-block;flex-grow:0;overflow:hidden;white-space:nowrap;text-align:right;vertical-align:middle}.ant-form-item-label-left{text-align:left}.ant-form-item-label-wrap{overflow:unset;line-height:1.3215em;white-space:unset}.ant-form-item-label>label{position:relative;display:inline-flex;align-items:center;max-width:100%;height:32px;color:#000000d9;font-size:14px}.ant-form-item-label>label>.anticon{font-size:14px;vertical-align:top}.ant-form-item-label>label.ant-form-item-required:not(.ant-form-item-required-mark-optional):before{display:inline-block;margin-right:4px;color:#ff4d4f;font-size:14px;font-family:SimSun,sans-serif;line-height:1;content:"*"}.ant-form-hide-required-mark .ant-form-item-label>label.ant-form-item-required:not(.ant-form-item-required-mark-optional):before{display:none}.ant-form-item-label>label .ant-form-item-optional{display:inline-block;margin-left:4px;color:#00000073}.ant-form-hide-required-mark .ant-form-item-label>label .ant-form-item-optional{display:none}.ant-form-item-label>label .ant-form-item-tooltip{color:#00000073;cursor:help;writing-mode:horizontal-tb;margin-inline-start:4px}.ant-form-item-label>label:after{content:":";position:relative;top:-.5px;margin:0 8px 0 2px}.ant-form-item-label>label.ant-form-item-no-colon:after{content:" "}.ant-form-item-control{display:flex;flex-direction:column;flex-grow:1}.ant-form-item-control:first-child:not([class^=ant-col-]):not([class*=" ant-col-"]){width:100%}.ant-form-item-control-input{position:relative;display:flex;align-items:center;min-height:32px}.ant-form-item-control-input-content{flex:auto;max-width:100%}.ant-form-item-explain,.ant-form-item-extra{clear:both;color:#00000073;font-size:14px;line-height:1.5715;transition:color .3s cubic-bezier(.215,.61,.355,1)}.ant-form-item-explain-connected{height:0;min-height:0;opacity:0}.ant-form-item-extra{min-height:24px}.ant-form-item-with-help .ant-form-item-explain{height:auto;min-height:24px;opacity:1}.ant-form-item-feedback-icon{font-size:14px;text-align:center;visibility:visible;animation:zoomIn .3s cubic-bezier(.12,.4,.29,1.46);pointer-events:none}.ant-form-item-feedback-icon-success{color:#52c41a}.ant-form-item-feedback-icon-error{color:#ff4d4f}.ant-form-item-feedback-icon-warning{color:#faad14}.ant-form-item-feedback-icon-validating{color:#1890ff}.ant-show-help{transition:height .3s linear,min-height .3s linear,margin-bottom .3s cubic-bezier(.645,.045,.355,1),opacity .3s cubic-bezier(.645,.045,.355,1)}.ant-show-help-leave{min-height:24px}.ant-show-help-leave-active{min-height:0}.ant-show-help-item{overflow:hidden;transition:height .3s cubic-bezier(.645,.045,.355,1),opacity .3s cubic-bezier(.645,.045,.355,1),transform .3s cubic-bezier(.645,.045,.355,1)!important}.ant-show-help-item-appear,.ant-show-help-item-enter{transform:translateY(-5px);opacity:0}.ant-show-help-item-appear-active,.ant-show-help-item-enter-active{transform:translateY(0);opacity:1}.ant-show-help-item-leave-active{transform:translateY(-5px)}@keyframes diffZoomIn1{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}@keyframes diffZoomIn2{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}@keyframes diffZoomIn3{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.ant-form-rtl{direction:rtl}.ant-form-rtl .ant-form-item-label{text-align:left}.ant-form-rtl .ant-form-item-label>label.ant-form-item-required:before{margin-right:0;margin-left:4px}.ant-form-rtl .ant-form-item-label>label:after{margin:0 2px 0 8px}.ant-form-rtl .ant-form-item-label>label .ant-form-item-optional{margin-right:4px;margin-left:0}.ant-col-rtl .ant-form-item-control:first-child{width:100%}.ant-form-rtl .ant-form-item-has-feedback .ant-input{padding-right:11px;padding-left:24px}.ant-form-rtl .ant-form-item-has-feedback .ant-input-affix-wrapper .ant-input-suffix{padding-right:11px;padding-left:18px}.ant-form-rtl .ant-form-item-has-feedback .ant-input-affix-wrapper .ant-input,.ant-form-rtl .ant-form-item-has-feedback .ant-input-number-affix-wrapper .ant-input-number{padding:0}.ant-form-rtl .ant-form-item-has-feedback .ant-input-search:not(.ant-input-search-enter-button) .ant-input-suffix{right:auto;left:28px}.ant-form-rtl .ant-form-item-has-feedback .ant-input-number{padding-left:18px}.ant-form-rtl .ant-form-item-has-feedback>.ant-select .ant-select-arrow,.ant-form-rtl .ant-form-item-has-feedback>.ant-select .ant-select-clear,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-group-addon)>.ant-select .ant-select-arrow,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-group-addon)>.ant-select .ant-select-clear,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-number-group-addon)>.ant-select .ant-select-arrow,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-number-group-addon)>.ant-select .ant-select-clear{right:auto;left:32px}.ant-form-rtl .ant-form-item-has-feedback>.ant-select .ant-select-selection-selected-value,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-group-addon)>.ant-select .ant-select-selection-selected-value,.ant-form-rtl .ant-form-item-has-feedback :not(.ant-input-number-group-addon)>.ant-select .ant-select-selection-selected-value{padding-right:0;padding-left:42px}.ant-form-rtl .ant-form-item-has-feedback .ant-cascader-picker-arrow{margin-right:0;margin-left:19px}.ant-form-rtl .ant-form-item-has-feedback .ant-cascader-picker-clear{right:auto;left:32px}.ant-form-rtl .ant-form-item-has-feedback .ant-picker,.ant-form-rtl .ant-form-item-has-feedback .ant-picker-large{padding-right:11px;padding-left:29.2px}.ant-form-rtl .ant-form-item-has-feedback .ant-picker-small{padding-right:7px;padding-left:25.2px}.ant-form-rtl .ant-form-item-has-feedback.ant-form-item-has-success .ant-form-item-children-icon,.ant-form-rtl .ant-form-item-has-feedback.ant-form-item-has-warning .ant-form-item-children-icon,.ant-form-rtl .ant-form-item-has-feedback.ant-form-item-has-error .ant-form-item-children-icon,.ant-form-rtl .ant-form-item-has-feedback.ant-form-item-is-validating .ant-form-item-children-icon{right:auto;left:0}.ant-form-rtl.ant-form-inline .ant-form-item{margin-right:0;margin-left:16px}nz-form-item.ant-form-item{transition:none}.ant-list{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative}.ant-list *{outline:none}.ant-list-pagination{margin-top:24px;text-align:right}.ant-list-pagination .ant-pagination-options{text-align:left}.ant-list-more{margin-top:12px;text-align:center}.ant-list-more button{padding-right:32px;padding-left:32px}.ant-list-spin{min-height:40px;text-align:center}.ant-list-empty-text{padding:16px;color:#00000040;font-size:14px;text-align:center}.ant-list-items{margin:0;padding:0;list-style:none}.ant-list-item{display:flex;align-items:center;justify-content:space-between;padding:12px 0;color:#000000d9}.ant-list-item-meta{display:flex;flex:1;align-items:flex-start;max-width:100%}.ant-list-item-meta-avatar{margin-right:16px}.ant-list-item-meta-content{flex:1 0;width:0;color:#000000d9}.ant-list-item-meta-title{margin-bottom:4px;color:#000000d9;font-size:14px;line-height:1.5715}.ant-list-item-meta-title>a{color:#000000d9;transition:all .3s}.ant-list-item-meta-title>a:hover{color:#1890ff}.ant-list-item-meta-description{color:#00000073;font-size:14px;line-height:1.5715}.ant-list-item-action{flex:0 0 auto;margin-left:48px;padding:0;font-size:0;list-style:none}.ant-list-item-action>li{position:relative;display:inline-block;padding:0 8px;color:#00000073;font-size:14px;line-height:1.5715;text-align:center}.ant-list-item-action>li:first-child{padding-left:0}.ant-list-item-action-split{position:absolute;top:50%;right:0;width:1px;height:14px;margin-top:-7px;background-color:#f0f0f0}.ant-list-header,.ant-list-footer{background:transparent}.ant-list-header,.ant-list-footer{padding-top:12px;padding-bottom:12px}.ant-list-empty{padding:16px 0;color:#00000073;font-size:12px;text-align:center}.ant-list-split .ant-list-item{border-bottom:1px solid #f0f0f0}.ant-list-split .ant-list-item:last-child{border-bottom:none}.ant-list-split .ant-list-header{border-bottom:1px solid #f0f0f0}.ant-list-split.ant-list-empty .ant-list-footer{border-top:1px solid #f0f0f0}.ant-list-loading .ant-list-spin-nested-loading{min-height:32px}.ant-list-split.ant-list-something-after-last-item .ant-spin-container>.ant-list-items>.ant-list-item:last-child{border-bottom:1px solid #f0f0f0}.ant-list-lg .ant-list-item{padding:16px 24px}.ant-list-sm .ant-list-item{padding:8px 16px}.ant-list-vertical .ant-list-item{align-items:initial}.ant-list-vertical .ant-list-item-main{display:block;flex:1}.ant-list-vertical .ant-list-item-extra{margin-left:40px}.ant-list-vertical .ant-list-item-meta{margin-bottom:16px}.ant-list-vertical .ant-list-item-meta-title{margin-bottom:12px;color:#000000d9;font-size:16px;line-height:24px}.ant-list-vertical .ant-list-item-action{margin-top:16px;margin-left:auto}.ant-list-vertical .ant-list-item-action>li{padding:0 16px}.ant-list-vertical .ant-list-item-action>li:first-child{padding-left:0}.ant-list-grid .ant-col>.ant-list-item{display:block;max-width:100%;margin-bottom:16px;padding-top:0;padding-bottom:0;border-bottom:none}.ant-list-item-no-flex{display:block}.ant-list:not(.ant-list-vertical) .ant-list-item-no-flex .ant-list-item-action{float:right}.ant-list-bordered{border:1px solid #d9d9d9;border-radius:2px}.ant-list-bordered .ant-list-header,.ant-list-bordered .ant-list-footer,.ant-list-bordered .ant-list-item{padding-right:24px;padding-left:24px}.ant-list-bordered .ant-list-pagination{margin:16px 24px}.ant-list-bordered.ant-list-sm .ant-list-item,.ant-list-bordered.ant-list-sm .ant-list-header,.ant-list-bordered.ant-list-sm .ant-list-footer{padding:8px 16px}.ant-list-bordered.ant-list-lg .ant-list-item,.ant-list-bordered.ant-list-lg .ant-list-header,.ant-list-bordered.ant-list-lg .ant-list-footer{padding:16px 24px}@media screen and (max-width: 768px){.ant-list-item-action,.ant-list-vertical .ant-list-item-extra{margin-left:24px}}@media screen and (max-width: 576px){.ant-list-item{flex-wrap:wrap}.ant-list-item-action{margin-left:12px}.ant-list-vertical .ant-list-item{flex-wrap:wrap-reverse}.ant-list-vertical .ant-list-item-main{min-width:220px}.ant-list-vertical .ant-list-item-extra{margin:auto auto 16px}}.ant-list-rtl{direction:rtl;text-align:right}.ant-list-rtl .ReactVirtualized__List .ant-list-item{direction:rtl}.ant-list-rtl .ant-list-pagination{text-align:left}.ant-list-rtl .ant-list-item-meta-avatar{margin-right:0;margin-left:16px}.ant-list-rtl .ant-list-item-action{margin-right:48px;margin-left:0}.ant-list.ant-list-rtl .ant-list-item-action>li:first-child{padding-right:0;padding-left:16px}.ant-list-rtl .ant-list-item-action-split{right:auto;left:0}.ant-list-rtl.ant-list-vertical .ant-list-item-extra{margin-right:40px;margin-left:0}.ant-list-rtl.ant-list-vertical .ant-list-item-action{margin-right:auto}.ant-list-rtl .ant-list-vertical .ant-list-item-action>li:first-child{padding-right:0;padding-left:16px}.ant-list-rtl .ant-list:not(.ant-list-vertical) .ant-list-item-no-flex .ant-list-item-action{float:left}@media screen and (max-width: 768px){.ant-list-rtl .ant-list-item-action,.ant-list-rtl .ant-list-vertical .ant-list-item-extra{margin-right:24px;margin-left:0}}@media screen and (max-width: 576px){.ant-list-rtl .ant-list-item-action{margin-right:22px;margin-left:0}.ant-list-rtl.ant-list-vertical .ant-list-item-extra{margin:auto auto 16px}}nz-list,nz-list nz-spin,nz-list-header,nz-list-footer,nz-list-pagination,nz-list-empty,nz-list-item-extra{display:block}.ant-menu-item-danger.ant-menu-item,.ant-menu-item-danger.ant-menu-item:hover,.ant-menu-item-danger.ant-menu-item-active{color:#ff4d4f}.ant-menu-item-danger.ant-menu-item:active{background:#fff1f0}.ant-menu-item-danger.ant-menu-item-selected{color:#ff4d4f}.ant-menu-item-danger.ant-menu-item-selected>a,.ant-menu-item-danger.ant-menu-item-selected>a:hover{color:#ff4d4f}.ant-menu:not(.ant-menu-horizontal) .ant-menu-item-danger.ant-menu-item-selected{background-color:#fff1f0}.ant-menu-inline .ant-menu-item-danger.ant-menu-item:after{border-right-color:#ff4d4f}.ant-menu-dark .ant-menu-item-danger.ant-menu-item,.ant-menu-dark .ant-menu-item-danger.ant-menu-item:hover,.ant-menu-dark .ant-menu-item-danger.ant-menu-item>a{color:#ff4d4f}.ant-menu-dark.ant-menu-dark:not(.ant-menu-horizontal) .ant-menu-item-danger.ant-menu-item-selected{color:#fff;background-color:#ff4d4f}.ant-menu{box-sizing:border-box;margin:0;font-variant:tabular-nums;line-height:1.5715;font-feature-settings:"tnum";padding:0;color:#000000d9;font-size:14px;line-height:0;text-align:left;list-style:none;background:#fff;outline:none;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d;transition:background .3s,width .3s cubic-bezier(.2,0,0,1) 0s}.ant-menu:before{display:table;content:""}.ant-menu:after{display:table;clear:both;content:""}.ant-menu.ant-menu-root:focus-visible{box-shadow:0 0 0 2px #bae7ff}.ant-menu ul,.ant-menu ol{margin:0;padding:0;list-style:none}.ant-menu-overflow{display:flex}.ant-menu-overflow-item{flex:none}.ant-menu-hidden,.ant-menu-submenu-hidden{display:none}.ant-menu-item-group-title{height:1.5715;padding:8px 16px;color:#00000073;font-size:14px;line-height:1.5715;transition:all .3s}.ant-menu-horizontal .ant-menu-submenu{transition:border-color .3s cubic-bezier(.645,.045,.355,1),background .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-submenu,.ant-menu-submenu-inline{transition:border-color .3s cubic-bezier(.645,.045,.355,1),background .3s cubic-bezier(.645,.045,.355,1),padding .15s cubic-bezier(.645,.045,.355,1)}.ant-menu-submenu-selected{color:#1890ff}.ant-menu-item:active,.ant-menu-submenu-title:active{background:#e6f7ff}.ant-menu-submenu .ant-menu-sub{cursor:initial;transition:background .3s cubic-bezier(.645,.045,.355,1),padding .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-title-content{transition:color .3s}.ant-menu-item a{color:#000000d9}.ant-menu-item a:hover{color:#1890ff}.ant-menu-item a:before{position:absolute;inset:0;background-color:transparent;content:""}.ant-menu-item>.ant-badge a{color:#000000d9}.ant-menu-item>.ant-badge a:hover{color:#1890ff}.ant-menu-item-divider{overflow:hidden;line-height:0;border-color:#f0f0f0;border-style:solid;border-width:1px 0 0}.ant-menu-item-divider-dashed{border-style:dashed}.ant-menu-horizontal .ant-menu-item,.ant-menu-horizontal .ant-menu-submenu{margin-top:-1px}.ant-menu-horizontal>.ant-menu-item:hover,.ant-menu-horizontal>.ant-menu-item-active,.ant-menu-horizontal>.ant-menu-submenu .ant-menu-submenu-title:hover{background-color:transparent}.ant-menu-item-selected,.ant-menu-item-selected a,.ant-menu-item-selected a:hover{color:#1890ff}.ant-menu:not(.ant-menu-horizontal) .ant-menu-item-selected{background-color:#e6f7ff}.ant-menu-inline,.ant-menu-vertical,.ant-menu-vertical-left{border-right:1px solid #f0f0f0}.ant-menu-vertical-right{border-left:1px solid #f0f0f0}.ant-menu-vertical.ant-menu-sub,.ant-menu-vertical-left.ant-menu-sub,.ant-menu-vertical-right.ant-menu-sub{min-width:160px;max-height:calc(100vh - 100px);padding:0;overflow:hidden;border-right:0}.ant-menu-vertical.ant-menu-sub:not([class*=-active]),.ant-menu-vertical-left.ant-menu-sub:not([class*=-active]),.ant-menu-vertical-right.ant-menu-sub:not([class*=-active]){overflow-x:hidden;overflow-y:auto}.ant-menu-vertical.ant-menu-sub .ant-menu-item,.ant-menu-vertical-left.ant-menu-sub .ant-menu-item,.ant-menu-vertical-right.ant-menu-sub .ant-menu-item{left:0;margin-left:0;border-right:0}.ant-menu-vertical.ant-menu-sub .ant-menu-item:after,.ant-menu-vertical-left.ant-menu-sub .ant-menu-item:after,.ant-menu-vertical-right.ant-menu-sub .ant-menu-item:after{border-right:0}.ant-menu-vertical.ant-menu-sub>.ant-menu-item,.ant-menu-vertical-left.ant-menu-sub>.ant-menu-item,.ant-menu-vertical-right.ant-menu-sub>.ant-menu-item,.ant-menu-vertical.ant-menu-sub>.ant-menu-submenu,.ant-menu-vertical-left.ant-menu-sub>.ant-menu-submenu,.ant-menu-vertical-right.ant-menu-sub>.ant-menu-submenu{transform-origin:0 0}.ant-menu-horizontal.ant-menu-sub{min-width:114px}.ant-menu-horizontal .ant-menu-item,.ant-menu-horizontal .ant-menu-submenu-title{transition:border-color .3s,background .3s}.ant-menu-item,.ant-menu-submenu-title{position:relative;display:block;margin:0;padding:0 20px;white-space:nowrap;cursor:pointer;transition:border-color .3s,background .3s,padding .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-item .ant-menu-item-icon,.ant-menu-submenu-title .ant-menu-item-icon,.ant-menu-item .anticon,.ant-menu-submenu-title .anticon{min-width:14px;font-size:14px;transition:font-size .15s cubic-bezier(.215,.61,.355,1),margin .3s cubic-bezier(.645,.045,.355,1),color .3s}.ant-menu-item .ant-menu-item-icon+span,.ant-menu-submenu-title .ant-menu-item-icon+span,.ant-menu-item .anticon+span,.ant-menu-submenu-title .anticon+span{margin-left:10px;opacity:1;transition:opacity .3s cubic-bezier(.645,.045,.355,1),margin .3s,color .3s}.ant-menu-item .ant-menu-item-icon.svg,.ant-menu-submenu-title .ant-menu-item-icon.svg{vertical-align:-.125em}.ant-menu-item.ant-menu-item-only-child>.anticon,.ant-menu-submenu-title.ant-menu-item-only-child>.anticon,.ant-menu-item.ant-menu-item-only-child>.ant-menu-item-icon,.ant-menu-submenu-title.ant-menu-item-only-child>.ant-menu-item-icon{margin-right:0}.ant-menu-item:focus-visible,.ant-menu-submenu-title:focus-visible{box-shadow:0 0 0 2px #bae7ff}.ant-menu>.ant-menu-item-divider{margin:1px 0;padding:0}.ant-menu-submenu-popup{position:absolute;z-index:1050;background:transparent;border-radius:2px;box-shadow:none;transform-origin:0 0}.ant-menu-submenu-popup:before{position:absolute;inset:-7px 0 0;z-index:-1;width:100%;height:100%;opacity:.0001;content:" "}.ant-menu-submenu-placement-rightTop:before{top:0;left:-7px}.ant-menu-submenu>.ant-menu{background-color:#fff;border-radius:2px}.ant-menu-submenu>.ant-menu-submenu-title:after{transition:transform .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-submenu-popup>.ant-menu{background-color:#fff}.ant-menu-submenu-expand-icon,.ant-menu-submenu-arrow{position:absolute;top:50%;right:16px;width:10px;color:#000000d9;transform:translateY(-50%);transition:transform .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-submenu-arrow:before,.ant-menu-submenu-arrow:after{position:absolute;width:6px;height:1.5px;background-color:currentcolor;border-radius:2px;transition:background .3s cubic-bezier(.645,.045,.355,1),transform .3s cubic-bezier(.645,.045,.355,1),top .3s cubic-bezier(.645,.045,.355,1),color .3s cubic-bezier(.645,.045,.355,1);content:""}.ant-menu-submenu-arrow:before{transform:rotate(45deg) translateY(-2.5px)}.ant-menu-submenu-arrow:after{transform:rotate(-45deg) translateY(2.5px)}.ant-menu-submenu:hover>.ant-menu-submenu-title>.ant-menu-submenu-expand-icon,.ant-menu-submenu:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow{color:#1890ff}.ant-menu-inline-collapsed .ant-menu-submenu-arrow:before,.ant-menu-submenu-inline .ant-menu-submenu-arrow:before{transform:rotate(-45deg) translate(2.5px)}.ant-menu-inline-collapsed .ant-menu-submenu-arrow:after,.ant-menu-submenu-inline .ant-menu-submenu-arrow:after{transform:rotate(45deg) translate(-2.5px)}.ant-menu-submenu-horizontal .ant-menu-submenu-arrow{display:none}.ant-menu-submenu-open.ant-menu-submenu-inline>.ant-menu-submenu-title>.ant-menu-submenu-arrow{transform:translateY(-2px)}.ant-menu-submenu-open.ant-menu-submenu-inline>.ant-menu-submenu-title>.ant-menu-submenu-arrow:after{transform:rotate(-45deg) translate(-2.5px)}.ant-menu-submenu-open.ant-menu-submenu-inline>.ant-menu-submenu-title>.ant-menu-submenu-arrow:before{transform:rotate(45deg) translate(2.5px)}.ant-menu-vertical .ant-menu-submenu-selected,.ant-menu-vertical-left .ant-menu-submenu-selected,.ant-menu-vertical-right .ant-menu-submenu-selected{color:#1890ff}.ant-menu-horizontal{line-height:46px;border:0;border-bottom:1px solid #f0f0f0;box-shadow:none}.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu{margin-top:-1px;margin-bottom:0;padding:0 20px}.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item:hover,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu:hover,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-active,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-active,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-open,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-open,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-selected,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-selected{color:#1890ff}.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item:hover:after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu:hover:after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-active:after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-active:after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-open:after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-open:after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-selected:after,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-selected:after{border-bottom:2px solid #1890ff}.ant-menu-horizontal>.ant-menu-item,.ant-menu-horizontal>.ant-menu-submenu{position:relative;top:1px;display:inline-block;vertical-align:bottom}.ant-menu-horizontal>.ant-menu-item:after,.ant-menu-horizontal>.ant-menu-submenu:after{position:absolute;right:20px;bottom:0;left:20px;border-bottom:2px solid transparent;transition:border-color .3s cubic-bezier(.645,.045,.355,1);content:""}.ant-menu-horizontal>.ant-menu-submenu>.ant-menu-submenu-title{padding:0}.ant-menu-horizontal>.ant-menu-item a{color:#000000d9}.ant-menu-horizontal>.ant-menu-item a:hover{color:#1890ff}.ant-menu-horizontal>.ant-menu-item a:before{bottom:-2px}.ant-menu-horizontal>.ant-menu-item-selected a{color:#1890ff}.ant-menu-horizontal:after{display:block;clear:both;height:0;content:" "}.ant-menu-vertical .ant-menu-item,.ant-menu-vertical-left .ant-menu-item,.ant-menu-vertical-right .ant-menu-item,.ant-menu-inline .ant-menu-item{position:relative}.ant-menu-vertical .ant-menu-item:after,.ant-menu-vertical-left .ant-menu-item:after,.ant-menu-vertical-right .ant-menu-item:after,.ant-menu-inline .ant-menu-item:after{position:absolute;top:0;right:0;bottom:0;border-right:3px solid #1890ff;transform:scaleY(.0001);opacity:0;transition:transform .15s cubic-bezier(.215,.61,.355,1),opacity .15s cubic-bezier(.215,.61,.355,1);content:""}.ant-menu-vertical .ant-menu-item,.ant-menu-vertical-left .ant-menu-item,.ant-menu-vertical-right .ant-menu-item,.ant-menu-inline .ant-menu-item,.ant-menu-vertical .ant-menu-submenu-title,.ant-menu-vertical-left .ant-menu-submenu-title,.ant-menu-vertical-right .ant-menu-submenu-title,.ant-menu-inline .ant-menu-submenu-title{height:40px;margin-top:4px;margin-bottom:4px;padding:0 16px;overflow:hidden;line-height:40px;text-overflow:ellipsis}.ant-menu-vertical .ant-menu-submenu,.ant-menu-vertical-left .ant-menu-submenu,.ant-menu-vertical-right .ant-menu-submenu,.ant-menu-inline .ant-menu-submenu{padding-bottom:.02px}.ant-menu-vertical .ant-menu-item:not(:last-child),.ant-menu-vertical-left .ant-menu-item:not(:last-child),.ant-menu-vertical-right .ant-menu-item:not(:last-child),.ant-menu-inline .ant-menu-item:not(:last-child){margin-bottom:8px}.ant-menu-vertical>.ant-menu-item,.ant-menu-vertical-left>.ant-menu-item,.ant-menu-vertical-right>.ant-menu-item,.ant-menu-inline>.ant-menu-item,.ant-menu-vertical>.ant-menu-submenu>.ant-menu-submenu-title,.ant-menu-vertical-left>.ant-menu-submenu>.ant-menu-submenu-title,.ant-menu-vertical-right>.ant-menu-submenu>.ant-menu-submenu-title,.ant-menu-inline>.ant-menu-submenu>.ant-menu-submenu-title{height:40px;line-height:40px}.ant-menu-vertical .ant-menu-item-group-list .ant-menu-submenu-title,.ant-menu-vertical .ant-menu-submenu-title{padding-right:34px}.ant-menu-inline{width:100%}.ant-menu-inline .ant-menu-selected:after,.ant-menu-inline .ant-menu-item-selected:after{transform:scaleY(1);opacity:1;transition:transform .15s cubic-bezier(.645,.045,.355,1),opacity .15s cubic-bezier(.645,.045,.355,1)}.ant-menu-inline .ant-menu-item,.ant-menu-inline .ant-menu-submenu-title{width:calc(100% + 1px)}.ant-menu-inline .ant-menu-item-group-list .ant-menu-submenu-title,.ant-menu-inline .ant-menu-submenu-title{padding-right:34px}.ant-menu-inline.ant-menu-root .ant-menu-item,.ant-menu-inline.ant-menu-root .ant-menu-submenu-title{display:flex;align-items:center;transition:border-color .3s,background .3s,padding .1s cubic-bezier(.215,.61,.355,1)}.ant-menu-inline.ant-menu-root .ant-menu-item>.ant-menu-title-content,.ant-menu-inline.ant-menu-root .ant-menu-submenu-title>.ant-menu-title-content{flex:auto;min-width:0;overflow:hidden;text-overflow:ellipsis}.ant-menu-inline.ant-menu-root .ant-menu-item>*,.ant-menu-inline.ant-menu-root .ant-menu-submenu-title>*{flex:none}.ant-menu.ant-menu-inline-collapsed{width:80px}.ant-menu.ant-menu-inline-collapsed>.ant-menu-item,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title{left:0;padding:0 calc(50% - 8px);text-overflow:clip}.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .ant-menu-submenu-arrow,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .ant-menu-submenu-arrow,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-submenu-arrow{opacity:0}.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .anticon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .anticon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .anticon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .anticon{margin:0;font-size:16px;line-height:40px}.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .ant-menu-item-icon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .ant-menu-item-icon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-item-icon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-item-icon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .anticon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .anticon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .anticon+span,.ant-menu.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .anticon+span{display:inline-block;opacity:0}.ant-menu.ant-menu-inline-collapsed .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed .anticon{display:inline-block}.ant-menu.ant-menu-inline-collapsed-tooltip{pointer-events:none}.ant-menu.ant-menu-inline-collapsed-tooltip .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed-tooltip .anticon{display:none}.ant-menu.ant-menu-inline-collapsed-tooltip a{color:#ffffffd9}.ant-menu.ant-menu-inline-collapsed .ant-menu-item-group-title{padding-right:4px;padding-left:4px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-menu-item-group-list{margin:0;padding:0}.ant-menu-item-group-list .ant-menu-item,.ant-menu-item-group-list .ant-menu-submenu-title{padding:0 16px 0 28px}.ant-menu-root.ant-menu-vertical,.ant-menu-root.ant-menu-vertical-left,.ant-menu-root.ant-menu-vertical-right,.ant-menu-root.ant-menu-inline{box-shadow:none}.ant-menu-root.ant-menu-inline-collapsed .ant-menu-item>.ant-menu-inline-collapsed-noicon,.ant-menu-root.ant-menu-inline-collapsed .ant-menu-submenu .ant-menu-submenu-title>.ant-menu-inline-collapsed-noicon{font-size:16px;text-align:center}.ant-menu-sub.ant-menu-inline{padding:0;background:#fafafa;border:0;border-radius:0;box-shadow:none}.ant-menu-sub.ant-menu-inline>.ant-menu-item,.ant-menu-sub.ant-menu-inline>.ant-menu-submenu>.ant-menu-submenu-title{height:40px;line-height:40px;list-style-position:inside;list-style-type:disc}.ant-menu-sub.ant-menu-inline .ant-menu-item-group-title{padding-left:32px}.ant-menu-item-disabled,.ant-menu-submenu-disabled{color:#00000040!important;background:none;cursor:not-allowed}.ant-menu-item-disabled:after,.ant-menu-submenu-disabled:after{border-color:transparent!important}.ant-menu-item-disabled a,.ant-menu-submenu-disabled a{color:#00000040!important;pointer-events:none}.ant-menu-item-disabled>.ant-menu-submenu-title,.ant-menu-submenu-disabled>.ant-menu-submenu-title{color:#00000040!important;cursor:not-allowed}.ant-menu-item-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow:before,.ant-menu-submenu-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow:before,.ant-menu-item-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow:after,.ant-menu-submenu-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow:after{background:rgba(0,0,0,.25)!important}.ant-layout-header .ant-menu{line-height:inherit}.ant-menu-inline-collapsed-tooltip a,.ant-menu-inline-collapsed-tooltip a:hover{color:#fff}.ant-menu-light .ant-menu-item:hover,.ant-menu-light .ant-menu-item-active,.ant-menu-light .ant-menu:not(.ant-menu-inline) .ant-menu-submenu-open,.ant-menu-light .ant-menu-submenu-active,.ant-menu-light .ant-menu-submenu-title:hover{color:#1890ff}.ant-menu.ant-menu-root:focus-visible{box-shadow:0 0 0 2px #096dd9}.ant-menu-dark .ant-menu-item:focus-visible,.ant-menu-dark .ant-menu-submenu-title:focus-visible{box-shadow:0 0 0 2px #096dd9}.ant-menu.ant-menu-dark,.ant-menu-dark .ant-menu-sub,.ant-menu.ant-menu-dark .ant-menu-sub{color:#ffffffa6;background:#001529}.ant-menu.ant-menu-dark .ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow{opacity:.45;transition:all .3s}.ant-menu.ant-menu-dark .ant-menu-submenu-title .ant-menu-submenu-arrow:after,.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow:after,.ant-menu.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow:after,.ant-menu.ant-menu-dark .ant-menu-submenu-title .ant-menu-submenu-arrow:before,.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow:before,.ant-menu.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow:before{background:#fff}.ant-menu-dark.ant-menu-submenu-popup{background:transparent}.ant-menu-dark .ant-menu-inline.ant-menu-sub{background:#000c17}.ant-menu-dark.ant-menu-horizontal{border-bottom:0}.ant-menu-dark.ant-menu-horizontal>.ant-menu-item,.ant-menu-dark.ant-menu-horizontal>.ant-menu-submenu{top:0;margin-top:0;padding:0 20px;border-color:#001529;border-bottom:0}.ant-menu-dark.ant-menu-horizontal>.ant-menu-item:hover{background-color:#1890ff}.ant-menu-dark.ant-menu-horizontal>.ant-menu-item>a:before{bottom:0}.ant-menu-dark .ant-menu-item,.ant-menu-dark .ant-menu-item-group-title,.ant-menu-dark .ant-menu-item>a,.ant-menu-dark .ant-menu-item>span>a{color:#ffffffa6}.ant-menu-dark.ant-menu-inline,.ant-menu-dark.ant-menu-vertical,.ant-menu-dark.ant-menu-vertical-left,.ant-menu-dark.ant-menu-vertical-right{border-right:0}.ant-menu-dark.ant-menu-inline .ant-menu-item,.ant-menu-dark.ant-menu-vertical .ant-menu-item,.ant-menu-dark.ant-menu-vertical-left .ant-menu-item,.ant-menu-dark.ant-menu-vertical-right .ant-menu-item{left:0;margin-left:0;border-right:0}.ant-menu-dark.ant-menu-inline .ant-menu-item:after,.ant-menu-dark.ant-menu-vertical .ant-menu-item:after,.ant-menu-dark.ant-menu-vertical-left .ant-menu-item:after,.ant-menu-dark.ant-menu-vertical-right .ant-menu-item:after{border-right:0}.ant-menu-dark.ant-menu-inline .ant-menu-item,.ant-menu-dark.ant-menu-inline .ant-menu-submenu-title{width:100%}.ant-menu-dark .ant-menu-item:hover,.ant-menu-dark .ant-menu-item-active,.ant-menu-dark .ant-menu-submenu-active,.ant-menu-dark .ant-menu-submenu-open,.ant-menu-dark .ant-menu-submenu-selected,.ant-menu-dark .ant-menu-submenu-title:hover{color:#fff;background-color:transparent}.ant-menu-dark .ant-menu-item:hover>a,.ant-menu-dark .ant-menu-item-active>a,.ant-menu-dark .ant-menu-submenu-active>a,.ant-menu-dark .ant-menu-submenu-open>a,.ant-menu-dark .ant-menu-submenu-selected>a,.ant-menu-dark .ant-menu-submenu-title:hover>a,.ant-menu-dark .ant-menu-item:hover>span>a,.ant-menu-dark .ant-menu-item-active>span>a,.ant-menu-dark .ant-menu-submenu-active>span>a,.ant-menu-dark .ant-menu-submenu-open>span>a,.ant-menu-dark .ant-menu-submenu-selected>span>a,.ant-menu-dark .ant-menu-submenu-title:hover>span>a{color:#fff}.ant-menu-dark .ant-menu-item:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-item-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-open>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-selected>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-title:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow{opacity:1}.ant-menu-dark .ant-menu-item:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow:after,.ant-menu-dark .ant-menu-item-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow:after,.ant-menu-dark .ant-menu-submenu-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow:after,.ant-menu-dark .ant-menu-submenu-open>.ant-menu-submenu-title>.ant-menu-submenu-arrow:after,.ant-menu-dark .ant-menu-submenu-selected>.ant-menu-submenu-title>.ant-menu-submenu-arrow:after,.ant-menu-dark .ant-menu-submenu-title:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow:after,.ant-menu-dark .ant-menu-item:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow:before,.ant-menu-dark .ant-menu-item-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow:before,.ant-menu-dark .ant-menu-submenu-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow:before,.ant-menu-dark .ant-menu-submenu-open>.ant-menu-submenu-title>.ant-menu-submenu-arrow:before,.ant-menu-dark .ant-menu-submenu-selected>.ant-menu-submenu-title>.ant-menu-submenu-arrow:before,.ant-menu-dark .ant-menu-submenu-title:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow:before{background:#fff}.ant-menu-dark .ant-menu-item:hover{background-color:transparent}.ant-menu-dark.ant-menu-dark:not(.ant-menu-horizontal) .ant-menu-item-selected{background-color:#1890ff}.ant-menu-dark .ant-menu-item-selected{color:#fff;border-right:0}.ant-menu-dark .ant-menu-item-selected:after{border-right:0}.ant-menu-dark .ant-menu-item-selected>a,.ant-menu-dark .ant-menu-item-selected>span>a,.ant-menu-dark .ant-menu-item-selected>a:hover,.ant-menu-dark .ant-menu-item-selected>span>a:hover{color:#fff}.ant-menu-dark .ant-menu-item-selected .ant-menu-item-icon,.ant-menu-dark .ant-menu-item-selected .anticon{color:#fff}.ant-menu-dark .ant-menu-item-selected .ant-menu-item-icon+span,.ant-menu-dark .ant-menu-item-selected .anticon+span{color:#fff}.ant-menu.ant-menu-dark .ant-menu-item-selected,.ant-menu-submenu-popup.ant-menu-dark .ant-menu-item-selected{background-color:#1890ff}.ant-menu-dark .ant-menu-item-disabled,.ant-menu-dark .ant-menu-submenu-disabled,.ant-menu-dark .ant-menu-item-disabled>a,.ant-menu-dark .ant-menu-submenu-disabled>a,.ant-menu-dark .ant-menu-item-disabled>span>a,.ant-menu-dark .ant-menu-submenu-disabled>span>a{color:#ffffff59!important;opacity:.8}.ant-menu-dark .ant-menu-item-disabled>.ant-menu-submenu-title,.ant-menu-dark .ant-menu-submenu-disabled>.ant-menu-submenu-title{color:#ffffff59!important}.ant-menu-dark .ant-menu-item-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow:before,.ant-menu-dark .ant-menu-submenu-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow:before,.ant-menu-dark .ant-menu-item-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow:after,.ant-menu-dark .ant-menu-submenu-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow:after{background:rgba(255,255,255,.35)!important}.ant-menu.ant-menu-rtl{direction:rtl;text-align:right}.ant-menu-rtl .ant-menu-item-group-title{text-align:right}.ant-menu-rtl.ant-menu-inline,.ant-menu-rtl.ant-menu-vertical{border-right:none;border-left:1px solid #f0f0f0}.ant-menu-rtl.ant-menu-dark.ant-menu-inline,.ant-menu-rtl.ant-menu-dark.ant-menu-vertical{border-left:none}.ant-menu-rtl.ant-menu-vertical.ant-menu-sub>.ant-menu-item,.ant-menu-rtl.ant-menu-vertical-left.ant-menu-sub>.ant-menu-item,.ant-menu-rtl.ant-menu-vertical-right.ant-menu-sub>.ant-menu-item,.ant-menu-rtl.ant-menu-vertical.ant-menu-sub>.ant-menu-submenu,.ant-menu-rtl.ant-menu-vertical-left.ant-menu-sub>.ant-menu-submenu,.ant-menu-rtl.ant-menu-vertical-right.ant-menu-sub>.ant-menu-submenu{transform-origin:top right}.ant-menu-rtl .ant-menu-item .ant-menu-item-icon,.ant-menu-rtl .ant-menu-submenu-title .ant-menu-item-icon,.ant-menu-rtl .ant-menu-item .anticon,.ant-menu-rtl .ant-menu-submenu-title .anticon{margin-right:auto;margin-left:10px}.ant-menu-rtl .ant-menu-item.ant-menu-item-only-child>.ant-menu-item-icon,.ant-menu-rtl .ant-menu-submenu-title.ant-menu-item-only-child>.ant-menu-item-icon,.ant-menu-rtl .ant-menu-item.ant-menu-item-only-child>.anticon,.ant-menu-rtl .ant-menu-submenu-title.ant-menu-item-only-child>.anticon{margin-left:0}.ant-menu-submenu-rtl.ant-menu-submenu-popup{transform-origin:100% 0}.ant-menu-rtl .ant-menu-submenu-vertical>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu-rtl .ant-menu-submenu-vertical-left>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu-rtl .ant-menu-submenu-vertical-right>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu-rtl .ant-menu-submenu-inline>.ant-menu-submenu-title .ant-menu-submenu-arrow{right:auto;left:16px}.ant-menu-rtl .ant-menu-submenu-vertical>.ant-menu-submenu-title .ant-menu-submenu-arrow:before,.ant-menu-rtl .ant-menu-submenu-vertical-left>.ant-menu-submenu-title .ant-menu-submenu-arrow:before,.ant-menu-rtl .ant-menu-submenu-vertical-right>.ant-menu-submenu-title .ant-menu-submenu-arrow:before{transform:rotate(-45deg) translateY(-2px)}.ant-menu-rtl .ant-menu-submenu-vertical>.ant-menu-submenu-title .ant-menu-submenu-arrow:after,.ant-menu-rtl .ant-menu-submenu-vertical-left>.ant-menu-submenu-title .ant-menu-submenu-arrow:after,.ant-menu-rtl .ant-menu-submenu-vertical-right>.ant-menu-submenu-title .ant-menu-submenu-arrow:after{transform:rotate(45deg) translateY(2px)}.ant-menu-rtl.ant-menu-vertical .ant-menu-item:after,.ant-menu-rtl.ant-menu-vertical-left .ant-menu-item:after,.ant-menu-rtl.ant-menu-vertical-right .ant-menu-item:after,.ant-menu-rtl.ant-menu-inline .ant-menu-item:after{right:auto;left:0}.ant-menu-rtl.ant-menu-vertical .ant-menu-item,.ant-menu-rtl.ant-menu-vertical-left .ant-menu-item,.ant-menu-rtl.ant-menu-vertical-right .ant-menu-item,.ant-menu-rtl.ant-menu-inline .ant-menu-item,.ant-menu-rtl.ant-menu-vertical .ant-menu-submenu-title,.ant-menu-rtl.ant-menu-vertical-left .ant-menu-submenu-title,.ant-menu-rtl.ant-menu-vertical-right .ant-menu-submenu-title,.ant-menu-rtl.ant-menu-inline .ant-menu-submenu-title{text-align:right}.ant-menu-rtl.ant-menu-inline .ant-menu-submenu-title{padding-right:0;padding-left:34px}.ant-menu-rtl.ant-menu-vertical .ant-menu-submenu-title{padding-right:16px;padding-left:34px}.ant-menu-rtl.ant-menu-inline-collapsed.ant-menu-vertical .ant-menu-submenu-title{padding:0 calc(50% - 8px)}.ant-menu-rtl .ant-menu-item-group-list .ant-menu-item,.ant-menu-rtl .ant-menu-item-group-list .ant-menu-submenu-title{padding:0 28px 0 16px}.ant-menu-sub.ant-menu-inline{border:0}.ant-menu-rtl.ant-menu-sub.ant-menu-inline .ant-menu-item-group-title{padding-right:32px;padding-left:0}.ant-menu-submenu.ant-menu-submenu-placement-bottom{top:6px;position:relative}.ant-menu-submenu.ant-menu-submenu-placement-right{left:4px;position:relative}.ant-menu-submenu.ant-menu-submenu-placement-right.ant-menu-submenu-rtl{left:auto;right:4px}.ant-menu-submenu.ant-menu-submenu-placement-left{right:4px;position:relative}.ant-menu-submenu.ant-menu-submenu-placement-left.ant-menu-submenu-rtl{right:auto;left:4px}.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions,.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:hover{background:#fff;border-color:#ff4d4f}.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:focus,.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions-focused{border-color:#ff7875;box-shadow:0 0 0 2px #ff4d4f33;border-right-width:1px;outline:0}.ant-mentions-status-error .ant-input-prefix{color:#ff4d4f}.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions,.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:hover{background:#fff;border-color:#faad14}.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:focus,.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions-focused{border-color:#ffc53d;box-shadow:0 0 0 2px #faad1433;border-right-width:1px;outline:0}.ant-mentions-status-warning .ant-input-prefix{color:#faad14}.ant-mentions{box-sizing:border-box;margin:0;font-variant:tabular-nums;list-style:none;font-feature-settings:"tnum";width:100%;min-width:0;color:#000000d9;font-size:14px;background-color:#fff;background-image:none;border:1px solid #d9d9d9;border-radius:2px;transition:all .3s;position:relative;display:inline-block;height:auto;padding:0;overflow:hidden;line-height:1.5715;white-space:pre-wrap;vertical-align:bottom}.ant-mentions::placeholder{color:#bfbfbf;-webkit-user-select:none;user-select:none}.ant-mentions:placeholder-shown{text-overflow:ellipsis}.ant-mentions:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-mentions:hover{border-right-width:0;border-left-width:1px!important}.ant-mentions:focus,.ant-mentions-focused{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;border-right-width:1px;outline:0}.ant-input-rtl .ant-mentions:focus,.ant-input-rtl .ant-mentions-focused{border-right-width:0;border-left-width:1px!important}.ant-mentions-disabled{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;pointer-events:none;color:#00000040}.ant-mentions-disabled:hover{border-color:#d9d9d9;border-right-width:1px}.ant-mentions[disabled]{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;pointer-events:none;color:#00000040}.ant-mentions[disabled]:hover{border-color:#d9d9d9;border-right-width:1px}.ant-mentions-borderless,.ant-mentions-borderless:hover,.ant-mentions-borderless:focus,.ant-mentions-borderless-focused,.ant-mentions-borderless-disabled,.ant-mentions-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-mentions{max-width:100%;height:auto;min-height:32px;line-height:1.5715;vertical-align:bottom;transition:all .3s,height 0s}.ant-mentions-lg{padding:6.5px 11px;font-size:16px}.ant-mentions-sm{padding:0 7px}.ant-mentions-stepperless[type=number]{-moz-appearance:textfield}.ant-mentions-stepperless[type=number]::-webkit-inner-spin-button,.ant-mentions-stepperless[type=number] ::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ant-mentions-disabled>textarea{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;pointer-events:none;color:#00000040}.ant-mentions-disabled>textarea:hover{border-color:#d9d9d9;border-right-width:1px}.ant-mentions-focused{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;border-right-width:1px;outline:0}.ant-input-rtl .ant-mentions-focused{border-right-width:0;border-left-width:1px!important}.ant-mentions>textarea,.ant-mentions-measure{min-height:30px;margin:0;padding:4px 11px;overflow:inherit;overflow-x:hidden;overflow-y:auto;font-weight:inherit;font-size:inherit;font-family:inherit;font-style:inherit;font-variant:inherit;font-size-adjust:inherit;font-stretch:inherit;line-height:inherit;direction:inherit;letter-spacing:inherit;white-space:inherit;text-align:inherit;vertical-align:top;word-wrap:break-word;word-break:inherit;tab-size:inherit}.ant-mentions>textarea{width:100%;border:none;outline:none;resize:none}.ant-mentions>textarea::placeholder{color:#bfbfbf;-webkit-user-select:none;user-select:none}.ant-mentions>textarea:placeholder-shown{text-overflow:ellipsis}.ant-mentions-measure{position:absolute;inset:0;z-index:-1;color:transparent;pointer-events:none}.ant-mentions-measure>span{display:inline-block;min-height:1em}.ant-mentions-dropdown{margin:0;padding:0;color:#000000d9;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:absolute;top:-9999px;left:-9999px;z-index:1050;box-sizing:border-box;font-size:14px;font-variant:initial;background-color:#fff;border-radius:2px;outline:none;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d}.ant-mentions-dropdown-hidden{display:none}.ant-mentions-dropdown-menu{max-height:250px;margin-bottom:0;padding-left:0;overflow:auto;list-style:none;outline:none}.ant-mentions-dropdown-menu-item{position:relative;display:block;min-width:100px;padding:5px 12px;overflow:hidden;color:#000000d9;font-weight:400;line-height:1.5715;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:background .3s ease}.ant-mentions-dropdown-menu-item:hover{background-color:#f5f5f5}.ant-mentions-dropdown-menu-item:first-child{border-radius:2px 2px 0 0}.ant-mentions-dropdown-menu-item:last-child{border-radius:0 0 2px 2px}.ant-mentions-dropdown-menu-item-disabled{color:#00000040;cursor:not-allowed}.ant-mentions-dropdown-menu-item-disabled:hover{color:#00000040;background-color:#fff;cursor:not-allowed}.ant-mentions-dropdown-menu-item-selected{color:#000000d9;font-weight:600;background-color:#fafafa}.ant-mentions-dropdown-menu-item-active{background-color:#f5f5f5}.ant-mentions-suffix{position:absolute;top:0;right:11px;bottom:0;z-index:1;display:inline-flex;align-items:center;margin:auto}.ant-mentions-rtl{direction:rtl}.ant-mentions-dropdown{top:100%;left:12px;position:relative;width:100%;margin-top:8px;margin-bottom:4px}.ant-mentions:focus-within{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;border-right-width:1px;outline:0}.ant-input-rtl .ant-mentions:focus-within{border-right-width:0;border-left-width:1px!important}.ant-mentions.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:focus-within{border-color:#ff7875;box-shadow:0 0 0 2px #ff4d4f33;border-right-width:1px;outline:0}.ant-mentions.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:focus-within{border-color:#ffc53d;box-shadow:0 0 0 2px #faad1433;border-right-width:1px;outline:0}.ant-message{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:fixed;top:8px;left:0;z-index:1010;width:100%;pointer-events:none}.ant-message-notice{padding:8px;text-align:center}.ant-message-notice-content{display:inline-block;padding:10px 16px;background:#fff;border-radius:2px;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d;pointer-events:all}.ant-message-success .anticon{color:#52c41a}.ant-message-error .anticon{color:#ff4d4f}.ant-message-warning .anticon{color:#faad14}.ant-message-info .anticon,.ant-message-loading .anticon{color:#1890ff}.ant-message .anticon{position:relative;top:1px;margin-right:8px;font-size:16px}.ant-message-notice.ant-move-up-leave.ant-move-up-leave-active{animation-name:MessageMoveOut;animation-duration:.3s}@keyframes MessageMoveOut{0%{max-height:150px;padding:8px;opacity:1}to{max-height:0;padding:0;opacity:0}}.ant-message-rtl,.ant-message-rtl span{direction:rtl}.ant-message-rtl .anticon{margin-right:0;margin-left:8px}.ant-modal{box-sizing:border-box;padding:0 0 24px;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";pointer-events:none;position:relative;top:100px;width:auto;max-width:calc(100vw - 32px);margin:0 auto}.ant-modal.ant-zoom-enter,.ant-modal.ant-zoom-appear{transform:none;opacity:0;animation-duration:.3s;-webkit-user-select:none;user-select:none}.ant-modal-mask{position:fixed;inset:0;z-index:1000;height:100%;background-color:#00000073}.ant-modal-mask-hidden{display:none}.ant-modal-wrap{position:fixed;inset:0;overflow:auto;outline:0;-webkit-overflow-scrolling:touch}.ant-modal-wrap{z-index:1000}.ant-modal-title{margin:0;color:#000000d9;font-weight:500;font-size:16px;line-height:22px;word-wrap:break-word}.ant-modal-content{position:relative;background-color:#fff;background-clip:padding-box;border:0;border-radius:2px;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d;pointer-events:auto}.ant-modal-close{position:absolute;top:0;right:0;z-index:10;padding:0;color:#00000073;font-weight:700;line-height:1;text-decoration:none;background:transparent;border:0;outline:0;cursor:pointer;transition:color .3s}.ant-modal-close-x{display:block;width:56px;height:56px;font-size:16px;font-style:normal;line-height:56px;text-align:center;text-transform:none;text-rendering:auto}.ant-modal-close:focus,.ant-modal-close:hover{color:#000000bf;text-decoration:none}.ant-modal-header{padding:16px 24px;color:#000000d9;background:#fff;border-bottom:1px solid #f0f0f0;border-radius:2px 2px 0 0}.ant-modal-body{padding:24px;font-size:14px;line-height:1.5715;word-wrap:break-word}.ant-modal-footer{padding:10px 16px;text-align:right;background:transparent;border-top:1px solid #f0f0f0;border-radius:0 0 2px 2px}.ant-modal-footer .ant-btn+.ant-btn:not(.ant-dropdown-trigger){margin-bottom:0;margin-left:8px}.ant-modal-open{overflow:hidden}.ant-modal-centered{text-align:center}.ant-modal-centered:before{display:inline-block;width:0;height:100%;vertical-align:middle;content:""}.ant-modal-centered .ant-modal{top:0;display:inline-block;padding-bottom:0;text-align:left;vertical-align:middle}@media (max-width: 767px){.ant-modal{max-width:calc(100vw - 16px);margin:8px auto}.ant-modal-centered .ant-modal{flex:1}}.ant-modal-confirm .ant-modal-header{display:none}.ant-modal-confirm .ant-modal-body{padding:32px 32px 24px}.ant-modal-confirm-body-wrapper:before{display:table;content:""}.ant-modal-confirm-body-wrapper:after{display:table;clear:both;content:""}.ant-modal-confirm-body .ant-modal-confirm-title{display:block;overflow:hidden;color:#000000d9;font-weight:500;font-size:16px;line-height:1.4}.ant-modal-confirm-body .ant-modal-confirm-content{margin-top:8px;color:#000000d9;font-size:14px}.ant-modal-confirm-body>.anticon{float:left;margin-right:16px;font-size:22px}.ant-modal-confirm-body>.anticon+.ant-modal-confirm-title+.ant-modal-confirm-content{margin-left:38px}.ant-modal-confirm .ant-modal-confirm-btns{float:right;margin-top:24px}.ant-modal-confirm .ant-modal-confirm-btns .ant-btn+.ant-btn{margin-bottom:0;margin-left:8px}.ant-modal-confirm-error .ant-modal-confirm-body>.anticon{color:#ff4d4f}.ant-modal-confirm-warning .ant-modal-confirm-body>.anticon,.ant-modal-confirm-confirm .ant-modal-confirm-body>.anticon{color:#faad14}.ant-modal-confirm-info .ant-modal-confirm-body>.anticon{color:#1890ff}.ant-modal-confirm-success .ant-modal-confirm-body>.anticon{color:#52c41a}.ant-modal-wrap-rtl{direction:rtl}.ant-modal-wrap-rtl .ant-modal-close{right:initial;left:0}.ant-modal-wrap-rtl .ant-modal-footer{text-align:left}.ant-modal-wrap-rtl .ant-modal-footer .ant-btn+.ant-btn{margin-right:8px;margin-left:0}.ant-modal-wrap-rtl .ant-modal-confirm-body{direction:rtl}.ant-modal-wrap-rtl .ant-modal-confirm-body>.anticon{float:right;margin-right:0;margin-left:16px}.ant-modal-wrap-rtl .ant-modal-confirm-body>.anticon+.ant-modal-confirm-title+.ant-modal-confirm-content{margin-right:38px;margin-left:0}.ant-modal-wrap-rtl .ant-modal-confirm-btns{float:left}.ant-modal-wrap-rtl .ant-modal-confirm-btns .ant-btn+.ant-btn{margin-right:8px;margin-left:0}.ant-modal-wrap-rtl.ant-modal-centered .ant-modal{text-align:right}.ant-notification{box-sizing:border-box;margin:0 24px 0 0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:fixed;z-index:1010}.ant-notification-close-icon{font-size:14px;cursor:pointer}.ant-notification-hook-holder{position:relative}.ant-notification-notice{position:relative;width:384px;max-width:calc(100vw - 48px);margin-bottom:16px;margin-left:auto;padding:16px 24px;overflow:hidden;line-height:1.5715;word-wrap:break-word;background:#fff;border-radius:2px;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d}.ant-notification-top .ant-notification-notice,.ant-notification-bottom .ant-notification-notice{margin-right:auto;margin-left:auto}.ant-notification-topLeft .ant-notification-notice,.ant-notification-bottomLeft .ant-notification-notice{margin-right:auto;margin-left:0}.ant-notification-notice-message{margin-bottom:8px;color:#000000d9;font-size:16px;line-height:24px}.ant-notification-notice-message-single-line-auto-margin{display:block;width:calc(264px - 100%);max-width:4px;background-color:transparent;pointer-events:none}.ant-notification-notice-message-single-line-auto-margin:before{display:block;content:""}.ant-notification-notice-description{font-size:14px}.ant-notification-notice-closable .ant-notification-notice-message{padding-right:24px}.ant-notification-notice-with-icon .ant-notification-notice-message{margin-bottom:4px;margin-left:48px;font-size:16px}.ant-notification-notice-with-icon .ant-notification-notice-description{margin-left:48px;font-size:14px}.ant-notification-notice-icon{position:absolute;margin-left:4px;font-size:24px;line-height:24px}.anticon.ant-notification-notice-icon-success{color:#52c41a}.anticon.ant-notification-notice-icon-info{color:#1890ff}.anticon.ant-notification-notice-icon-warning{color:#faad14}.anticon.ant-notification-notice-icon-error{color:#ff4d4f}.ant-notification-notice-close{position:absolute;top:16px;right:22px;color:#00000073;outline:none}.ant-notification-notice-close:hover{color:#000000ab}.ant-notification-notice-btn{float:right;margin-top:16px}.ant-notification .notification-fade-effect{animation-duration:.24s;animation-timing-function:cubic-bezier(.645,.045,.355,1);animation-fill-mode:both}.ant-notification-fade-enter,.ant-notification-fade-appear{animation-duration:.24s;animation-timing-function:cubic-bezier(.645,.045,.355,1);animation-fill-mode:both;opacity:0;animation-play-state:paused}.ant-notification-fade-leave{animation-duration:.24s;animation-timing-function:cubic-bezier(.645,.045,.355,1);animation-fill-mode:both;animation-duration:.2s;animation-play-state:paused}.ant-notification-fade-enter.ant-notification-fade-enter-active,.ant-notification-fade-appear.ant-notification-fade-appear-active{animation-name:NotificationFadeIn;animation-play-state:running}.ant-notification-fade-leave.ant-notification-fade-leave-active{animation-name:NotificationFadeOut;animation-play-state:running}@keyframes NotificationFadeIn{0%{left:384px;opacity:0}to{left:0;opacity:1}}@keyframes NotificationFadeOut{0%{max-height:150px;margin-bottom:16px;opacity:1}to{max-height:0;margin-bottom:0;padding-top:0;padding-bottom:0;opacity:0}}.ant-notification-rtl{direction:rtl}.ant-notification-rtl .ant-notification-notice-closable .ant-notification-notice-message{padding-right:0;padding-left:24px}.ant-notification-rtl .ant-notification-notice-with-icon .ant-notification-notice-message,.ant-notification-rtl .ant-notification-notice-with-icon .ant-notification-notice-description{margin-right:48px;margin-left:0}.ant-notification-rtl .ant-notification-notice-icon{margin-right:4px;margin-left:0}.ant-notification-rtl .ant-notification-notice-close{right:auto;left:22px}.ant-notification-rtl .ant-notification-notice-btn{float:left}.ant-notification-top,.ant-notification-bottom{margin-right:0;margin-left:0}.ant-notification-top .ant-notification-fade-enter.ant-notification-fade-enter-active,.ant-notification-top .ant-notification-fade-appear.ant-notification-fade-appear-active{animation-name:NotificationTopFadeIn}.ant-notification-bottom .ant-notification-fade-enter.ant-notification-fade-enter-active,.ant-notification-bottom .ant-notification-fade-appear.ant-notification-fade-appear-active{animation-name:NotificationBottomFadeIn}.ant-notification-topLeft,.ant-notification-bottomLeft{margin-right:0;margin-left:24px}.ant-notification-topLeft .ant-notification-fade-enter.ant-notification-fade-enter-active,.ant-notification-bottomLeft .ant-notification-fade-enter.ant-notification-fade-enter-active,.ant-notification-topLeft .ant-notification-fade-appear.ant-notification-fade-appear-active,.ant-notification-bottomLeft .ant-notification-fade-appear.ant-notification-fade-appear-active{animation-name:NotificationLeftFadeIn}@keyframes NotificationTopFadeIn{0%{margin-top:-100%;opacity:0}to{margin-top:0;opacity:1}}@keyframes NotificationBottomFadeIn{0%{margin-bottom:-100%;opacity:0}to{margin-bottom:0;opacity:1}}@keyframes NotificationLeftFadeIn{0%{right:384px;opacity:0}to{right:0;opacity:1}}.ant-page-header{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;padding:16px 16px 32px 0 32px;background-color:#fff}.ant-page-header-ghost{background-color:inherit}.ant-page-header.has-breadcrumb{padding-top:12px}.ant-page-header.has-footer{padding-bottom:0}.ant-page-header-back{margin-right:16px;font-size:16px;line-height:1}.ant-page-header-back-button{color:#1890ff;text-decoration:none;outline:none;transition:color .3s;color:#000;cursor:pointer}.ant-page-header-back-button:focus,.ant-page-header-back-button:hover{color:#40a9ff}.ant-page-header-back-button:active{color:#096dd9}.ant-page-header .ant-divider-vertical{height:14px;margin:0 12px;vertical-align:middle}.ant-breadcrumb+.ant-page-header-heading{margin-top:8px}.ant-page-header-heading{display:flex;justify-content:space-between}.ant-page-header-heading-left{display:flex;align-items:center;margin:4px 0;overflow:hidden}.ant-page-header-heading-title{margin-right:12px;margin-bottom:0;color:#000000d9;font-weight:600;font-size:20px;line-height:32px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-page-header-heading .ant-avatar{margin-right:12px}.ant-page-header-heading-sub-title{margin-right:12px;color:#00000073;font-size:14px;line-height:1.5715;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-page-header-heading-extra{margin:4px 0;white-space:nowrap}.ant-page-header-heading-extra>*{white-space:unset}.ant-page-header-content{padding-top:12px}.ant-page-header-footer{margin-top:16px}.ant-page-header-footer .ant-tabs>.ant-tabs-nav{margin:0}.ant-page-header-footer .ant-tabs>.ant-tabs-nav:before{border:none}.ant-page-header-footer .ant-tabs .ant-tabs-tab{padding-top:8px;padding-bottom:8px;font-size:16px}.ant-page-header-compact .ant-page-header-heading{flex-wrap:wrap}.ant-page-header-rtl{direction:rtl}.ant-page-header-rtl .ant-page-header-back{float:right;margin-right:0;margin-left:16px}.ant-page-header-rtl .ant-page-header-heading-title,.ant-page-header-rtl .ant-page-header-heading .ant-avatar{margin-right:0;margin-left:12px}.ant-page-header-rtl .ant-page-header-heading-sub-title{float:right;margin-right:0;margin-left:12px}.ant-page-header-rtl .ant-page-header-heading-tags{float:right}.ant-page-header-rtl .ant-page-header-heading-extra{float:left}.ant-page-header-rtl .ant-page-header-heading-extra>*{margin-right:12px;margin-left:0}.ant-page-header-rtl .ant-page-header-heading-extra>*:first-child{margin-right:0}.ant-page-header-rtl .ant-page-header-footer .ant-tabs-bar .ant-tabs-nav{float:right}.ant-page-header-back-button{border:0;background:transparent;padding:0;line-height:inherit;display:inline-block}nz-page-header,nz-page-header-content,nz-page-header-footer{display:block}.ant-pagination{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum"}.ant-pagination ul,.ant-pagination ol{margin:0;padding:0;list-style:none}.ant-pagination:after{display:block;clear:both;height:0;overflow:hidden;visibility:hidden;content:" "}.ant-pagination-total-text{display:inline-block;height:32px;margin-right:8px;line-height:30px;vertical-align:middle}.ant-pagination-item{display:inline-block;min-width:32px;height:32px;margin-right:8px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:30px;text-align:center;vertical-align:middle;list-style:none;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;outline:0;cursor:pointer;-webkit-user-select:none;user-select:none}.ant-pagination-item a{display:block;padding:0 6px;color:#000000d9;transition:none}.ant-pagination-item a:hover{text-decoration:none}.ant-pagination-item:hover{border-color:#1890ff;transition:all .3s}.ant-pagination-item:hover a{color:#1890ff}.ant-pagination-item:focus-visible{border-color:#1890ff;transition:all .3s}.ant-pagination-item:focus-visible a{color:#1890ff}.ant-pagination-item-active{font-weight:500;background:#fff;border-color:#1890ff}.ant-pagination-item-active a{color:#1890ff}.ant-pagination-item-active:hover{border-color:#40a9ff}.ant-pagination-item-active:focus-visible{border-color:#40a9ff}.ant-pagination-item-active:hover a{color:#40a9ff}.ant-pagination-item-active:focus-visible a{color:#40a9ff}.ant-pagination-jump-prev,.ant-pagination-jump-next{outline:0}.ant-pagination-jump-prev .ant-pagination-item-container,.ant-pagination-jump-next .ant-pagination-item-container{position:relative}.ant-pagination-jump-prev .ant-pagination-item-container .ant-pagination-item-link-icon,.ant-pagination-jump-next .ant-pagination-item-container .ant-pagination-item-link-icon{color:#1890ff;font-size:12px;letter-spacing:-1px;opacity:0;transition:all .2s}.ant-pagination-jump-prev .ant-pagination-item-container .ant-pagination-item-link-icon-svg,.ant-pagination-jump-next .ant-pagination-item-container .ant-pagination-item-link-icon-svg{inset:0;margin:auto}.ant-pagination-jump-prev .ant-pagination-item-container .ant-pagination-item-ellipsis,.ant-pagination-jump-next .ant-pagination-item-container .ant-pagination-item-ellipsis{position:absolute;inset:0;display:block;margin:auto;color:#00000040;font-family:Arial,Helvetica,sans-serif;letter-spacing:2px;text-align:center;text-indent:.13em;opacity:1;transition:all .2s}.ant-pagination-jump-prev:hover .ant-pagination-item-link-icon,.ant-pagination-jump-next:hover .ant-pagination-item-link-icon{opacity:1}.ant-pagination-jump-prev:hover .ant-pagination-item-ellipsis,.ant-pagination-jump-next:hover .ant-pagination-item-ellipsis{opacity:0}.ant-pagination-jump-prev:focus-visible .ant-pagination-item-link-icon,.ant-pagination-jump-next:focus-visible .ant-pagination-item-link-icon{opacity:1}.ant-pagination-jump-prev:focus-visible .ant-pagination-item-ellipsis,.ant-pagination-jump-next:focus-visible .ant-pagination-item-ellipsis{opacity:0}.ant-pagination-prev,.ant-pagination-jump-prev,.ant-pagination-jump-next{margin-right:8px}.ant-pagination-prev,.ant-pagination-next,.ant-pagination-jump-prev,.ant-pagination-jump-next{display:inline-block;min-width:32px;height:32px;color:#000000d9;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:32px;text-align:center;vertical-align:middle;list-style:none;border-radius:2px;cursor:pointer;transition:all .3s}.ant-pagination-prev,.ant-pagination-next{font-family:Arial,Helvetica,sans-serif;outline:0}.ant-pagination-prev button,.ant-pagination-next button{color:#000000d9;cursor:pointer;-webkit-user-select:none;user-select:none}.ant-pagination-prev:hover button,.ant-pagination-next:hover button{border-color:#40a9ff}.ant-pagination-prev .ant-pagination-item-link,.ant-pagination-next .ant-pagination-item-link{display:block;width:100%;height:100%;padding:0;font-size:12px;text-align:center;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;outline:none;transition:all .3s}.ant-pagination-prev:focus-visible .ant-pagination-item-link,.ant-pagination-next:focus-visible .ant-pagination-item-link{color:#1890ff;border-color:#1890ff}.ant-pagination-prev:hover .ant-pagination-item-link,.ant-pagination-next:hover .ant-pagination-item-link{color:#1890ff;border-color:#1890ff}.ant-pagination-disabled,.ant-pagination-disabled:hover{cursor:not-allowed}.ant-pagination-disabled .ant-pagination-item-link,.ant-pagination-disabled:hover .ant-pagination-item-link{color:#00000040;border-color:#d9d9d9;cursor:not-allowed}.ant-pagination-disabled:focus-visible{cursor:not-allowed}.ant-pagination-disabled:focus-visible .ant-pagination-item-link{color:#00000040;border-color:#d9d9d9;cursor:not-allowed}.ant-pagination-slash{margin:0 10px 0 5px}.ant-pagination-options{display:inline-block;margin-left:16px;vertical-align:middle}@media all and (-ms-high-contrast: none){.ant-pagination-options *::-ms-backdrop,.ant-pagination-options{vertical-align:top}}.ant-pagination-options-size-changer.ant-select{display:inline-block;width:auto}.ant-pagination-options-quick-jumper{display:inline-block;height:32px;margin-left:8px;line-height:32px;vertical-align:top}.ant-pagination-options-quick-jumper input{position:relative;display:inline-block;width:100%;min-width:0;padding:4px 11px;color:#000000d9;font-size:14px;line-height:1.5715;background-color:#fff;background-image:none;border:1px solid #d9d9d9;border-radius:2px;transition:all .3s;width:50px;height:32px;margin:0 8px}.ant-pagination-options-quick-jumper input::placeholder{color:#bfbfbf;-webkit-user-select:none;user-select:none}.ant-pagination-options-quick-jumper input:placeholder-shown{text-overflow:ellipsis}.ant-pagination-options-quick-jumper input:hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-pagination-options-quick-jumper input:hover{border-right-width:0;border-left-width:1px!important}.ant-pagination-options-quick-jumper input:focus,.ant-pagination-options-quick-jumper input-focused{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;border-right-width:1px;outline:0}.ant-input-rtl .ant-pagination-options-quick-jumper input:focus,.ant-input-rtl .ant-pagination-options-quick-jumper input-focused{border-right-width:0;border-left-width:1px!important}.ant-pagination-options-quick-jumper input-disabled{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;pointer-events:none;color:#00000040}.ant-pagination-options-quick-jumper input-disabled:hover{border-color:#d9d9d9;border-right-width:1px}.ant-pagination-options-quick-jumper input[disabled]{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;cursor:not-allowed;opacity:1;pointer-events:none;color:#00000040}.ant-pagination-options-quick-jumper input[disabled]:hover{border-color:#d9d9d9;border-right-width:1px}.ant-pagination-options-quick-jumper input-borderless,.ant-pagination-options-quick-jumper input-borderless:hover,.ant-pagination-options-quick-jumper input-borderless:focus,.ant-pagination-options-quick-jumper input-borderless-focused,.ant-pagination-options-quick-jumper input-borderless-disabled,.ant-pagination-options-quick-jumper input-borderless[disabled]{background-color:transparent;border:none;box-shadow:none}textarea.ant-pagination-options-quick-jumper input{max-width:100%;height:auto;min-height:32px;line-height:1.5715;vertical-align:bottom;transition:all .3s,height 0s}.ant-pagination-options-quick-jumper input-lg{padding:6.5px 11px;font-size:16px}.ant-pagination-options-quick-jumper input-sm{padding:0 7px}.ant-pagination-options-quick-jumper input-rtl{direction:rtl}.ant-pagination-options-quick-jumper input-stepperless[type=number]{-moz-appearance:textfield}.ant-pagination-options-quick-jumper input-stepperless[type=number]::-webkit-inner-spin-button,.ant-pagination-options-quick-jumper input-stepperless[type=number] ::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ant-pagination-simple .ant-pagination-prev,.ant-pagination-simple .ant-pagination-next{height:24px;line-height:24px;vertical-align:top}.ant-pagination-simple .ant-pagination-prev .ant-pagination-item-link,.ant-pagination-simple .ant-pagination-next .ant-pagination-item-link{height:24px;background-color:transparent;border:0}.ant-pagination-simple .ant-pagination-prev .ant-pagination-item-link:after,.ant-pagination-simple .ant-pagination-next .ant-pagination-item-link:after{height:24px;line-height:24px}.ant-pagination-simple .ant-pagination-simple-pager{display:inline-block;height:24px;margin-right:8px}.ant-pagination-simple .ant-pagination-simple-pager input{box-sizing:border-box;height:100%;margin-right:8px;padding:0 6px;text-align:center;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;outline:none;transition:border-color .3s}.ant-pagination-simple .ant-pagination-simple-pager input:hover{border-color:#1890ff}.ant-pagination-simple .ant-pagination-simple-pager input:focus{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33}.ant-pagination-simple .ant-pagination-simple-pager input[disabled]{color:#00000040;background:#f5f5f5;border-color:#d9d9d9;cursor:not-allowed}.ant-pagination.mini .ant-pagination-total-text,.ant-pagination.mini .ant-pagination-simple-pager{height:24px;line-height:24px}.ant-pagination.mini .ant-pagination-item{min-width:24px;height:24px;margin:0;line-height:22px}.ant-pagination.mini .ant-pagination-item:not(.ant-pagination-item-active){background:transparent;border-color:transparent}.ant-pagination.mini .ant-pagination-prev,.ant-pagination.mini .ant-pagination-next{min-width:24px;height:24px;margin:0;line-height:24px}.ant-pagination.mini .ant-pagination-prev .ant-pagination-item-link,.ant-pagination.mini .ant-pagination-next .ant-pagination-item-link{background:transparent;border-color:transparent}.ant-pagination.mini .ant-pagination-prev .ant-pagination-item-link:after,.ant-pagination.mini .ant-pagination-next .ant-pagination-item-link:after{height:24px;line-height:24px}.ant-pagination.mini .ant-pagination-jump-prev,.ant-pagination.mini .ant-pagination-jump-next{height:24px;margin-right:0;line-height:24px}.ant-pagination.mini .ant-pagination-options{margin-left:2px}.ant-pagination.mini .ant-pagination-options-size-changer{top:0}.ant-pagination.mini .ant-pagination-options-quick-jumper{height:24px;line-height:24px}.ant-pagination.mini .ant-pagination-options-quick-jumper input{padding:0 7px;width:44px;height:24px}.ant-pagination.ant-pagination-disabled{cursor:not-allowed}.ant-pagination.ant-pagination-disabled .ant-pagination-item{background:#f5f5f5;border-color:#d9d9d9;cursor:not-allowed}.ant-pagination.ant-pagination-disabled .ant-pagination-item a{color:#00000040;background:transparent;border:none;cursor:not-allowed}.ant-pagination.ant-pagination-disabled .ant-pagination-item-active{background:#e6e6e6}.ant-pagination.ant-pagination-disabled .ant-pagination-item-active a{color:#00000040}.ant-pagination.ant-pagination-disabled .ant-pagination-item-link{color:#00000040;background:#f5f5f5;border-color:#d9d9d9;cursor:not-allowed}.ant-pagination-simple.ant-pagination.ant-pagination-disabled .ant-pagination-item-link{background:transparent}.ant-pagination.ant-pagination-disabled .ant-pagination-item-link-icon{opacity:0}.ant-pagination.ant-pagination-disabled .ant-pagination-item-ellipsis{opacity:1}.ant-pagination.ant-pagination-disabled .ant-pagination-simple-pager{color:#00000040}@media only screen and (max-width: 992px){.ant-pagination-item-after-jump-prev,.ant-pagination-item-before-jump-next{display:none}}@media only screen and (max-width: 576px){.ant-pagination-options{display:none}}.ant-pagination-rtl .ant-pagination-total-text,.ant-pagination-rtl .ant-pagination-item,.ant-pagination-rtl .ant-pagination-prev,.ant-pagination-rtl .ant-pagination-jump-prev,.ant-pagination-rtl .ant-pagination-jump-next{margin-right:0;margin-left:8px}.ant-pagination-rtl .ant-pagination-slash{margin:0 5px 0 10px}.ant-pagination-rtl .ant-pagination-options{margin-right:16px;margin-left:0}.ant-pagination-rtl .ant-pagination-options .ant-pagination-options-size-changer.ant-select{margin-right:0;margin-left:8px}.ant-pagination-rtl .ant-pagination-options .ant-pagination-options-quick-jumper{margin-left:0}.ant-pagination-rtl.ant-pagination-simple .ant-pagination-simple-pager,.ant-pagination-rtl.ant-pagination-simple .ant-pagination-simple-pager input{margin-right:0;margin-left:8px}.ant-pagination-rtl.ant-pagination.mini .ant-pagination-options{margin-right:2px;margin-left:0}nz-pagination{display:block}.ant-popover{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:absolute;top:0;left:0;z-index:1030;font-weight:400;white-space:normal;text-align:left;cursor:auto;-webkit-user-select:text;user-select:text}.ant-popover:after{position:absolute;background:rgba(255,255,255,.01);content:""}.ant-popover-hidden{display:none}.ant-popover-placement-top,.ant-popover-placement-topLeft,.ant-popover-placement-topRight{padding-bottom:15.3137085px}.ant-popover-placement-right,.ant-popover-placement-rightTop,.ant-popover-placement-rightBottom{padding-left:15.3137085px}.ant-popover-placement-bottom,.ant-popover-placement-bottomLeft,.ant-popover-placement-bottomRight{padding-top:15.3137085px}.ant-popover-placement-left,.ant-popover-placement-leftTop,.ant-popover-placement-leftBottom{padding-right:15.3137085px}.ant-popover-inner{background-color:#fff;background-clip:padding-box;border-radius:2px;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d;box-shadow:0 0 8px #00000026 \ }@media screen and (-ms-high-contrast: active),(-ms-high-contrast: none){.ant-popover-inner{box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d}}.ant-popover-title{min-width:177px;min-height:32px;margin:0;padding:5px 16px 4px;color:#000000d9;font-weight:500;border-bottom:1px solid #f0f0f0}.ant-popover-inner-content{padding:12px 16px;color:#000000d9}.ant-popover-message{position:relative;padding:4px 0 12px;color:#000000d9;font-size:14px}.ant-popover-message>.anticon{position:absolute;top:8.0005px;color:#faad14;font-size:14px}.ant-popover-message-title{padding-left:22px}.ant-popover-buttons{margin-bottom:4px;text-align:right}.ant-popover-buttons button{margin-left:8px}.ant-popover-arrow{position:absolute;display:block;width:16px;height:16px;overflow:hidden;background:transparent;pointer-events:none}.ant-popover-arrow-content{position:absolute;inset:0;display:block;width:11.3137085px;height:11.3137085px;margin:auto;background-color:#fff;content:"";pointer-events:auto;border-radius:0 0 2px;pointer-events:none}.ant-popover-arrow-content:before{position:absolute;top:-11.3137085px;left:-11.3137085px;width:33.9411255px;height:33.9411255px;background:#fff;background-repeat:no-repeat;background-position:-10px -10px;content:"";clip-path:path("M 9.849242404917499 24.091883092036785 A 5 5 0 0 1 13.384776310850237 22.627416997969522 L 20.627416997969522 22.627416997969522 A 2 2 0 0 0 22.627416997969522 20.627416997969522 L 22.627416997969522 13.384776310850237 A 5 5 0 0 1 24.091883092036785 9.849242404917499 L 23.091883092036785 9.849242404917499 L 9.849242404917499 23.091883092036785 Z")}.ant-popover-placement-top .ant-popover-arrow,.ant-popover-placement-topLeft .ant-popover-arrow,.ant-popover-placement-topRight .ant-popover-arrow{bottom:-.6862915px}.ant-popover-placement-top .ant-popover-arrow-content,.ant-popover-placement-topLeft .ant-popover-arrow-content,.ant-popover-placement-topRight .ant-popover-arrow-content{box-shadow:3px 3px 7px #00000012;transform:translateY(-8px) rotate(45deg)}.ant-popover-placement-top .ant-popover-arrow{left:50%;transform:translate(-50%)}.ant-popover-placement-topLeft .ant-popover-arrow{left:16px}.ant-popover-placement-topRight .ant-popover-arrow{right:16px}.ant-popover-placement-right .ant-popover-arrow,.ant-popover-placement-rightTop .ant-popover-arrow,.ant-popover-placement-rightBottom .ant-popover-arrow{left:-.6862915px}.ant-popover-placement-right .ant-popover-arrow-content,.ant-popover-placement-rightTop .ant-popover-arrow-content,.ant-popover-placement-rightBottom .ant-popover-arrow-content{box-shadow:3px 3px 7px #00000012;transform:translate(8px) rotate(135deg)}.ant-popover-placement-right .ant-popover-arrow{top:50%;transform:translateY(-50%)}.ant-popover-placement-rightTop .ant-popover-arrow{top:12px}.ant-popover-placement-rightBottom .ant-popover-arrow{bottom:12px}.ant-popover-placement-bottom .ant-popover-arrow,.ant-popover-placement-bottomLeft .ant-popover-arrow,.ant-popover-placement-bottomRight .ant-popover-arrow{top:-.6862915px}.ant-popover-placement-bottom .ant-popover-arrow-content,.ant-popover-placement-bottomLeft .ant-popover-arrow-content,.ant-popover-placement-bottomRight .ant-popover-arrow-content{box-shadow:2px 2px 5px #0000000f;transform:translateY(8px) rotate(-135deg)}.ant-popover-placement-bottom .ant-popover-arrow{left:50%;transform:translate(-50%)}.ant-popover-placement-bottomLeft .ant-popover-arrow{left:16px}.ant-popover-placement-bottomRight .ant-popover-arrow{right:16px}.ant-popover-placement-left .ant-popover-arrow,.ant-popover-placement-leftTop .ant-popover-arrow,.ant-popover-placement-leftBottom .ant-popover-arrow{right:-.6862915px}.ant-popover-placement-left .ant-popover-arrow-content,.ant-popover-placement-leftTop .ant-popover-arrow-content,.ant-popover-placement-leftBottom .ant-popover-arrow-content{box-shadow:3px 3px 7px #00000012;transform:translate(-8px) rotate(-45deg)}.ant-popover-placement-left .ant-popover-arrow{top:50%;transform:translateY(-50%)}.ant-popover-placement-leftTop .ant-popover-arrow{top:12px}.ant-popover-placement-leftBottom .ant-popover-arrow{bottom:12px}.ant-popover-pink .ant-popover-inner,.ant-popover-pink .ant-popover-arrow-content,.ant-popover-magenta .ant-popover-inner,.ant-popover-magenta .ant-popover-arrow-content{background-color:#eb2f96}.ant-popover-red .ant-popover-inner,.ant-popover-red .ant-popover-arrow-content{background-color:#f5222d}.ant-popover-volcano .ant-popover-inner,.ant-popover-volcano .ant-popover-arrow-content{background-color:#fa541c}.ant-popover-orange .ant-popover-inner,.ant-popover-orange .ant-popover-arrow-content{background-color:#fa8c16}.ant-popover-yellow .ant-popover-inner,.ant-popover-yellow .ant-popover-arrow-content{background-color:#fadb14}.ant-popover-gold .ant-popover-inner,.ant-popover-gold .ant-popover-arrow-content{background-color:#faad14}.ant-popover-cyan .ant-popover-inner,.ant-popover-cyan .ant-popover-arrow-content{background-color:#13c2c2}.ant-popover-lime .ant-popover-inner,.ant-popover-lime .ant-popover-arrow-content{background-color:#a0d911}.ant-popover-green .ant-popover-inner,.ant-popover-green .ant-popover-arrow-content{background-color:#52c41a}.ant-popover-blue .ant-popover-inner,.ant-popover-blue .ant-popover-arrow-content{background-color:#1890ff}.ant-popover-geekblue .ant-popover-inner,.ant-popover-geekblue .ant-popover-arrow-content{background-color:#2f54eb}.ant-popover-purple .ant-popover-inner,.ant-popover-purple .ant-popover-arrow-content{background-color:#722ed1}.ant-popover-rtl{direction:rtl;text-align:right}.ant-popover-rtl .ant-popover-message-title{padding-right:22px;padding-left:16px}.ant-popover-rtl .ant-popover-buttons{text-align:left}.ant-popover-rtl .ant-popover-buttons button{margin-right:8px;margin-left:0}.ant-popover{position:relative}.ant-progress{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";display:inline-block}.ant-progress-line{position:relative;width:100%;font-size:14px}.ant-progress-steps{display:inline-block}.ant-progress-steps-outer{display:flex;flex-direction:row;align-items:center}.ant-progress-steps-item{flex-shrink:0;min-width:2px;margin-right:2px;background:#f3f3f3;transition:all .3s}.ant-progress-steps-item-active{background:#1890ff}.ant-progress-small.ant-progress-line,.ant-progress-small.ant-progress-line .ant-progress-text .anticon{font-size:12px}.ant-progress-outer{display:inline-block;width:100%;margin-right:0;padding-right:0}.ant-progress-show-info .ant-progress-outer{margin-right:calc(-2em - 8px);padding-right:calc(2em + 8px)}.ant-progress-inner{position:relative;display:inline-block;width:100%;overflow:hidden;vertical-align:middle;background-color:#f5f5f5;border-radius:100px}.ant-progress-circle-trail{stroke:#f5f5f5}.ant-progress-circle-path{animation:ant-progress-appear .3s}.ant-progress-inner:not(.ant-progress-circle-gradient) .ant-progress-circle-path{stroke:#1890ff}.ant-progress-success-bg,.ant-progress-bg{position:relative;background-color:#1890ff;border-radius:100px;transition:all .4s cubic-bezier(.08,.82,.17,1) 0s}.ant-progress-success-bg{position:absolute;top:0;left:0;background-color:#52c41a}.ant-progress-text{display:inline-block;width:2em;margin-left:8px;color:#000000d9;font-size:1em;line-height:1;white-space:nowrap;text-align:left;vertical-align:middle;word-break:normal}.ant-progress-text .anticon{font-size:14px}.ant-progress-status-active .ant-progress-bg:before{position:absolute;inset:0;background:#fff;border-radius:10px;opacity:0;animation:ant-progress-active 2.4s cubic-bezier(.23,1,.32,1) infinite;content:""}.ant-progress-status-exception .ant-progress-bg{background-color:#ff4d4f}.ant-progress-status-exception .ant-progress-text{color:#ff4d4f}.ant-progress-status-exception .ant-progress-inner:not(.ant-progress-circle-gradient) .ant-progress-circle-path{stroke:#ff4d4f}.ant-progress-status-success .ant-progress-bg{background-color:#52c41a}.ant-progress-status-success .ant-progress-text{color:#52c41a}.ant-progress-status-success .ant-progress-inner:not(.ant-progress-circle-gradient) .ant-progress-circle-path{stroke:#52c41a}.ant-progress-circle .ant-progress-inner{position:relative;line-height:1;background-color:transparent}.ant-progress-circle .ant-progress-text{position:absolute;top:50%;left:50%;width:100%;margin:0;padding:0;color:#000000d9;font-size:1em;line-height:1;white-space:normal;text-align:center;transform:translate(-50%,-50%)}.ant-progress-circle .ant-progress-text .anticon{font-size:1.16666667em}.ant-progress-circle.ant-progress-status-exception .ant-progress-text{color:#ff4d4f}.ant-progress-circle.ant-progress-status-success .ant-progress-text{color:#52c41a}@keyframes ant-progress-active{0%{transform:translate(-100%) scaleX(0);opacity:.1}20%{transform:translate(-100%) scaleX(0);opacity:.5}to{transform:translate(0) scaleX(1);opacity:0}}.ant-progress-rtl{direction:rtl}.ant-progress-rtl.ant-progress-show-info .ant-progress-outer{margin-right:0;margin-left:calc(-2em - 8px);padding-right:0;padding-left:calc(2em + 8px)}.ant-progress-rtl .ant-progress-success-bg{right:0;left:auto}.ant-progress-rtl.ant-progress-line .ant-progress-text,.ant-progress-rtl.ant-progress-steps .ant-progress-text{margin-right:8px;margin-left:0;text-align:right}.ant-radio-group{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";display:inline-block;font-size:0}.ant-radio-group .ant-badge-count{z-index:1}.ant-radio-group>.ant-badge:not(:first-child)>.ant-radio-button-wrapper{border-left:none}.ant-radio-wrapper{box-sizing:border-box;margin:0 8px 0 0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;display:inline-flex;align-items:baseline;cursor:pointer}.ant-radio-wrapper-disabled{cursor:not-allowed}.ant-radio-wrapper:after{display:inline-block;width:0;overflow:hidden;content:"\a0"}.ant-radio-wrapper.ant-radio-wrapper-in-form-item input[type=radio]{width:14px;height:14px}.ant-radio{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;top:.2em;display:inline-block;outline:none;cursor:pointer}.ant-radio-wrapper:hover .ant-radio,.ant-radio:hover .ant-radio-inner,.ant-radio-input:focus+.ant-radio-inner{border-color:#1890ff}.ant-radio-input:focus+.ant-radio-inner{box-shadow:0 0 0 3px #e6f7ff}.ant-radio-checked:after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #1890ff;border-radius:50%;visibility:hidden;animation:antRadioEffect .36s ease-in-out;animation-fill-mode:both;content:""}.ant-radio:hover:after,.ant-radio-wrapper:hover .ant-radio:after{visibility:visible}.ant-radio-inner{position:relative;top:0;left:0;display:block;width:16px;height:16px;background-color:#fff;border-color:#d9d9d9;border-style:solid;border-width:1px;border-radius:50%;transition:all .3s}.ant-radio-inner:after{position:absolute;top:50%;left:50%;display:block;width:16px;height:16px;margin-top:-8px;margin-left:-8px;background-color:#1890ff;border-top:0;border-left:0;border-radius:16px;transform:scale(0);opacity:0;transition:all .3s cubic-bezier(.78,.14,.15,.86);content:" "}.ant-radio-input{position:absolute;inset:0;z-index:1;cursor:pointer;opacity:0}.ant-radio-checked .ant-radio-inner{border-color:#1890ff}.ant-radio-checked .ant-radio-inner:after{transform:scale(.5);opacity:1;transition:all .3s cubic-bezier(.78,.14,.15,.86)}.ant-radio-disabled{cursor:not-allowed}.ant-radio-disabled .ant-radio-inner{background-color:#f5f5f5;border-color:#d9d9d9!important;cursor:not-allowed}.ant-radio-disabled .ant-radio-inner:after{background-color:#0003}.ant-radio-disabled .ant-radio-input{cursor:not-allowed}.ant-radio-disabled+span{color:#00000040;cursor:not-allowed}span.ant-radio+*{padding-right:8px;padding-left:8px}.ant-radio-button-wrapper{position:relative;display:inline-block;height:32px;margin:0;padding:0 15px;color:#000000d9;font-size:14px;line-height:30px;background:#fff;border:1px solid #d9d9d9;border-top-width:1.02px;border-left-width:0;cursor:pointer;transition:color .3s,background .3s,border-color .3s,box-shadow .3s}.ant-radio-button-wrapper a{color:#000000d9}.ant-radio-button-wrapper>.ant-radio-button{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%}.ant-radio-group-large .ant-radio-button-wrapper{height:40px;font-size:16px;line-height:38px}.ant-radio-group-small .ant-radio-button-wrapper{height:24px;padding:0 7px;line-height:22px}.ant-radio-button-wrapper:not(:first-child):before{position:absolute;top:-1px;left:-1px;display:block;box-sizing:content-box;width:1px;height:100%;padding:1px 0;background-color:#d9d9d9;transition:background-color .3s;content:""}.ant-radio-button-wrapper:first-child{border-left:1px solid #d9d9d9;border-radius:2px 0 0 2px}.ant-radio-button-wrapper:last-child{border-radius:0 2px 2px 0}.ant-radio-button-wrapper:first-child:last-child{border-radius:2px}.ant-radio-button-wrapper:hover{position:relative;color:#1890ff}.ant-radio-button-wrapper:focus-within{box-shadow:0 0 0 3px #e6f7ff}.ant-radio-button-wrapper .ant-radio-inner,.ant-radio-button-wrapper input[type=checkbox],.ant-radio-button-wrapper input[type=radio]{width:0;height:0;opacity:0;pointer-events:none}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled){z-index:1;color:#1890ff;background:#fff;border-color:#1890ff}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):before{background-color:#1890ff}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):first-child{border-color:#1890ff}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):hover{color:#40a9ff;border-color:#40a9ff}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):hover:before{background-color:#40a9ff}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):active{color:#096dd9;border-color:#096dd9}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):active:before{background-color:#096dd9}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):focus-within{box-shadow:0 0 0 3px #e6f7ff}.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled){color:#fff;background:#1890ff;border-color:#1890ff}.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):hover{color:#fff;background:#40a9ff;border-color:#40a9ff}.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):active{color:#fff;background:#096dd9;border-color:#096dd9}.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):focus-within{box-shadow:0 0 0 3px #e6f7ff}.ant-radio-button-wrapper-disabled{color:#00000040;background-color:#f5f5f5;border-color:#d9d9d9;cursor:not-allowed}.ant-radio-button-wrapper-disabled:first-child,.ant-radio-button-wrapper-disabled:hover{color:#00000040;background-color:#f5f5f5;border-color:#d9d9d9}.ant-radio-button-wrapper-disabled:first-child{border-left-color:#d9d9d9}.ant-radio-button-wrapper-disabled.ant-radio-button-wrapper-checked{color:#00000040;background-color:#e6e6e6;border-color:#d9d9d9;box-shadow:none}@keyframes antRadioEffect{0%{transform:scale(1);opacity:.5}to{transform:scale(1.6);opacity:0}}.ant-radio-group.ant-radio-group-rtl{direction:rtl}.ant-radio-wrapper.ant-radio-wrapper-rtl{margin-right:0;margin-left:8px;direction:rtl}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl{border-right-width:0;border-left-width:1px}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl.ant-radio-button-wrapper:not(:first-child):before{right:-1px;left:0}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl.ant-radio-button-wrapper:first-child{border-right:1px solid #d9d9d9;border-radius:0 2px 2px 0}.ant-radio-button-wrapper-checked:not([class*=" ant-radio-button-wrapper-disabled"]).ant-radio-button-wrapper:first-child{border-right-color:#40a9ff}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl.ant-radio-button-wrapper:last-child{border-radius:2px 0 0 2px}.ant-radio-button-wrapper.ant-radio-button-wrapper-rtl.ant-radio-button-wrapper-disabled:first-child{border-right-color:#d9d9d9}.ant-radio+span:empty{display:none}.ant-rate{box-sizing:border-box;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;font-feature-settings:"tnum";display:inline-block;margin:0;padding:0;color:#fadb14;font-size:20px;line-height:unset;list-style:none;outline:none}.ant-rate-disabled .ant-rate-star{cursor:default}.ant-rate-disabled .ant-rate-star>div:hover{transform:scale(1)}.ant-rate-star{position:relative;display:inline-block;color:inherit;cursor:pointer}.ant-rate-star:not(:last-child){margin-right:8px}.ant-rate-star>div{transition:all .3s,outline 0s}.ant-rate-star>div:hover{transform:scale(1.1)}.ant-rate-star>div:focus{outline:0}.ant-rate-star>div:focus-visible{outline:1px dashed #fadb14;transform:scale(1.1)}.ant-rate-star-first,.ant-rate-star-second{color:#f0f0f0;transition:all .3s;-webkit-user-select:none;user-select:none}.ant-rate-star-first .anticon,.ant-rate-star-second .anticon{vertical-align:middle}.ant-rate-star-first{position:absolute;top:0;left:0;width:50%;height:100%;overflow:hidden;opacity:0}.ant-rate-star-half .ant-rate-star-first,.ant-rate-star-half .ant-rate-star-second{opacity:1}.ant-rate-star-half .ant-rate-star-first,.ant-rate-star-full .ant-rate-star-second{color:inherit}.ant-rate-text{display:inline-block;margin:0 8px;font-size:14px}.ant-rate-rtl{direction:rtl}.ant-rate-rtl .ant-rate-star:not(:last-child){margin-right:0;margin-left:8px}.ant-rate-rtl .ant-rate-star-first{right:0;left:auto}.ant-select-single .ant-select-selector{display:flex}.ant-select-single .ant-select-selector .ant-select-selection-search{position:absolute;inset:0 11px}.ant-select-single .ant-select-selector .ant-select-selection-search-input{width:100%}.ant-select-single .ant-select-selector .ant-select-selection-item,.ant-select-single .ant-select-selector .ant-select-selection-placeholder{padding:0;line-height:30px;transition:all .3s}@supports (-moz-appearance: meterbar){.ant-select-single .ant-select-selector .ant-select-selection-item,.ant-select-single .ant-select-selector .ant-select-selection-placeholder{line-height:30px}}.ant-select-single .ant-select-selector .ant-select-selection-item{position:relative;-webkit-user-select:none;user-select:none}.ant-select-single .ant-select-selector .ant-select-selection-placeholder{transition:none;pointer-events:none}.ant-select-single .ant-select-selector:after,.ant-select-single .ant-select-selector .ant-select-selection-item:after,.ant-select-single .ant-select-selector .ant-select-selection-placeholder:after{display:inline-block;width:0;visibility:hidden;content:"\a0"}.ant-select-single.ant-select-show-arrow .ant-select-selection-search{right:25px}.ant-select-single.ant-select-show-arrow .ant-select-selection-item,.ant-select-single.ant-select-show-arrow .ant-select-selection-placeholder{padding-right:18px}.ant-select-single.ant-select-open .ant-select-selection-item{color:#bfbfbf}.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{width:100%;height:32px;padding:0 11px}.ant-select-single:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-search-input{height:30px}.ant-select-single:not(.ant-select-customize-input) .ant-select-selector:after{line-height:30px}.ant-select-single.ant-select-customize-input .ant-select-selector:after{display:none}.ant-select-single.ant-select-customize-input .ant-select-selector .ant-select-selection-search{position:static;width:100%}.ant-select-single.ant-select-customize-input .ant-select-selector .ant-select-selection-placeholder{position:absolute;right:0;left:0;padding:0 11px}.ant-select-single.ant-select-customize-input .ant-select-selector .ant-select-selection-placeholder:after{display:none}.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector{height:40px}.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector:after,.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-item,.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-placeholder{line-height:38px}.ant-select-single.ant-select-lg:not(.ant-select-customize-input):not(.ant-select-customize-input) .ant-select-selection-search-input{height:38px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector{height:24px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector:after,.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-item,.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-placeholder{line-height:22px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input):not(.ant-select-customize-input) .ant-select-selection-search-input{height:22px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selection-search{right:7px;left:7px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector{padding:0 7px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-search{right:28px}.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-item,.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-placeholder{padding-right:21px}.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector{padding:0 11px}.ant-select-selection-overflow{position:relative;display:flex;flex:auto;flex-wrap:wrap;max-width:100%}.ant-select-selection-overflow-item{flex:none;align-self:center;max-width:100%}.ant-select-multiple .ant-select-selector{display:flex;flex-wrap:wrap;align-items:center;padding:1px 4px}.ant-select-show-search.ant-select-multiple .ant-select-selector{cursor:text}.ant-select-disabled.ant-select-multiple .ant-select-selector{background:#f5f5f5;cursor:not-allowed}.ant-select-multiple .ant-select-selector:after{display:inline-block;width:0;margin:2px 0;line-height:24px;content:"\a0"}.ant-select-multiple.ant-select-show-arrow .ant-select-selector,.ant-select-multiple.ant-select-allow-clear .ant-select-selector{padding-right:24px}.ant-select-multiple .ant-select-selection-item{position:relative;display:flex;flex:none;box-sizing:border-box;max-width:100%;height:24px;margin-top:2px;margin-bottom:2px;line-height:22px;background:#f5f5f5;border:1px solid #f0f0f0;border-radius:2px;cursor:default;transition:font-size .3s,line-height .3s,height .3s;-webkit-user-select:none;user-select:none;margin-inline-end:4px;padding-inline-start:8px;padding-inline-end:4px}.ant-select-disabled.ant-select-multiple .ant-select-selection-item{color:#bfbfbf;border-color:#d9d9d9;cursor:not-allowed}.ant-select-multiple .ant-select-selection-item-content{display:inline-block;margin-right:4px;overflow:hidden;white-space:pre;text-overflow:ellipsis}.ant-select-multiple .ant-select-selection-item-remove{color:inherit;font-style:normal;line-height:0;text-align:center;text-transform:none;vertical-align:-.125em;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;color:#00000073;font-weight:700;font-size:10px;line-height:inherit;cursor:pointer}.ant-select-multiple .ant-select-selection-item-remove>*{line-height:1}.ant-select-multiple .ant-select-selection-item-remove svg{display:inline-block}.ant-select-multiple .ant-select-selection-item-remove:before{display:none}.ant-select-multiple .ant-select-selection-item-remove .ant-select-multiple .ant-select-selection-item-remove-icon{display:block}.ant-select-multiple .ant-select-selection-item-remove>.anticon{vertical-align:middle}.ant-select-multiple .ant-select-selection-item-remove:hover{color:#000000bf}.ant-select-multiple .ant-select-selection-overflow-item+.ant-select-selection-overflow-item .ant-select-selection-search{margin-inline-start:0}.ant-select-multiple .ant-select-selection-search{position:relative;max-width:100%;margin-inline-start:7px}.ant-select-multiple .ant-select-selection-search-input,.ant-select-multiple .ant-select-selection-search-mirror{height:24px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:24px;transition:all .3s}.ant-select-multiple .ant-select-selection-search-input{width:100%;min-width:4.1px}.ant-select-multiple .ant-select-selection-search-mirror{position:absolute;top:0;left:0;z-index:999;white-space:pre;visibility:hidden}.ant-select-multiple .ant-select-selection-placeholder{position:absolute;top:50%;right:11px;left:11px;transform:translateY(-50%);transition:all .3s}.ant-select-multiple.ant-select-lg .ant-select-selector:after{line-height:32px}.ant-select-multiple.ant-select-lg .ant-select-selection-item{height:32px;line-height:30px}.ant-select-multiple.ant-select-lg .ant-select-selection-search{height:32px;line-height:32px}.ant-select-multiple.ant-select-lg .ant-select-selection-search-input,.ant-select-multiple.ant-select-lg .ant-select-selection-search-mirror{height:32px;line-height:30px}.ant-select-multiple.ant-select-sm .ant-select-selector:after{line-height:16px}.ant-select-multiple.ant-select-sm .ant-select-selection-item{height:16px;line-height:14px}.ant-select-multiple.ant-select-sm .ant-select-selection-search{height:16px;line-height:16px}.ant-select-multiple.ant-select-sm .ant-select-selection-search-input,.ant-select-multiple.ant-select-sm .ant-select-selection-search-mirror{height:16px;line-height:14px}.ant-select-multiple.ant-select-sm .ant-select-selection-placeholder{left:7px}.ant-select-multiple.ant-select-sm .ant-select-selection-search{margin-inline-start:3px}.ant-select-multiple.ant-select-lg .ant-select-selection-item{height:32px;line-height:32px}.ant-select-disabled .ant-select-selection-item-remove{display:none}.ant-select-status-error.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input) .ant-select-selector{background-color:#fff;border-color:#ff4d4f!important}.ant-select-status-error.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input).ant-select-open .ant-select-selector,.ant-select-status-error.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input).ant-select-focused .ant-select-selector{border-color:#ff7875;box-shadow:0 0 0 2px #ff4d4f33;border-right-width:1px;outline:0}.ant-select-status-warning.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input) .ant-select-selector{background-color:#fff;border-color:#faad14!important}.ant-select-status-warning.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input).ant-select-open .ant-select-selector,.ant-select-status-warning.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input).ant-select-focused .ant-select-selector{border-color:#ffc53d;box-shadow:0 0 0 2px #faad1433;border-right-width:1px;outline:0}.ant-select-status-error.ant-select-has-feedback .ant-select-clear,.ant-select-status-warning.ant-select-has-feedback .ant-select-clear,.ant-select-status-success.ant-select-has-feedback .ant-select-clear,.ant-select-status-validating.ant-select-has-feedback .ant-select-clear{right:32px}.ant-select-status-error.ant-select-has-feedback .ant-select-selection-selected-value,.ant-select-status-warning.ant-select-has-feedback .ant-select-selection-selected-value,.ant-select-status-success.ant-select-has-feedback .ant-select-selection-selected-value,.ant-select-status-validating.ant-select-has-feedback .ant-select-selection-selected-value{padding-right:42px}.ant-select{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;display:inline-block;cursor:pointer}.ant-select:not(.ant-select-customize-input) .ant-select-selector{position:relative;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;transition:all .3s cubic-bezier(.645,.045,.355,1)}.ant-select:not(.ant-select-customize-input) .ant-select-selector input{cursor:pointer}.ant-select-show-search.ant-select:not(.ant-select-customize-input) .ant-select-selector{cursor:text}.ant-select-show-search.ant-select:not(.ant-select-customize-input) .ant-select-selector input{cursor:auto}.ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;border-right-width:1px;outline:0}.ant-input-rtl .ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector{border-right-width:0;border-left-width:1px!important}.ant-select-disabled.ant-select:not(.ant-select-customize-input) .ant-select-selector{color:#00000040;background:#f5f5f5;cursor:not-allowed}.ant-select-multiple.ant-select-disabled.ant-select:not(.ant-select-customize-input) .ant-select-selector{background:#f5f5f5}.ant-select-disabled.ant-select:not(.ant-select-customize-input) .ant-select-selector input{cursor:not-allowed}.ant-select:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-search-input{margin:0;padding:0;background:transparent;border:none;outline:none;appearance:none}.ant-select:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-search-input::-webkit-search-cancel-button{display:none;-webkit-appearance:none}.ant-select:not(.ant-select-disabled):hover .ant-select-selector{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-select:not(.ant-select-disabled):hover .ant-select-selector{border-right-width:0;border-left-width:1px!important}.ant-select-selection-item{flex:1;overflow:hidden;font-weight:400;white-space:nowrap;text-overflow:ellipsis}@media all and (-ms-high-contrast: none){.ant-select-selection-item *::-ms-backdrop,.ant-select-selection-item{flex:auto}}.ant-select-selection-placeholder{flex:1;overflow:hidden;color:#bfbfbf;white-space:nowrap;text-overflow:ellipsis;pointer-events:none}@media all and (-ms-high-contrast: none){.ant-select-selection-placeholder *::-ms-backdrop,.ant-select-selection-placeholder{flex:auto}}.ant-select-arrow{display:inline-block;color:inherit;font-style:normal;line-height:0;text-transform:none;vertical-align:-.125em;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:absolute;top:50%;right:11px;display:flex;align-items:center;height:12px;margin-top:-6px;color:#00000040;font-size:12px;line-height:1;text-align:center;pointer-events:none}.ant-select-arrow>*{line-height:1}.ant-select-arrow svg{display:inline-block}.ant-select-arrow:before{display:none}.ant-select-arrow .ant-select-arrow-icon{display:block}.ant-select-arrow .anticon{vertical-align:top;transition:transform .3s}.ant-select-arrow .anticon>svg{vertical-align:top}.ant-select-arrow .anticon:not(.ant-select-suffix){pointer-events:auto}.ant-select-disabled .ant-select-arrow{cursor:not-allowed}.ant-select-arrow>*:not(:last-child){margin-inline-end:8px}.ant-select-clear{position:absolute;top:50%;right:11px;z-index:1;display:inline-block;width:12px;height:12px;margin-top:-6px;color:#00000040;font-size:12px;font-style:normal;line-height:1;text-align:center;text-transform:none;background:#fff;cursor:pointer;opacity:0;transition:color .3s ease,opacity .15s ease;text-rendering:auto}.ant-select-clear:before{display:block}.ant-select-clear:hover{color:#00000073}.ant-select:hover .ant-select-clear{opacity:1}.ant-select-dropdown{margin:0;color:#000000d9;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:absolute;top:-9999px;left:-9999px;z-index:1050;box-sizing:border-box;padding:4px 0;overflow:hidden;font-size:14px;font-variant:initial;background-color:#fff;border-radius:2px;outline:none;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d}.ant-select-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-select-dropdown-placement-bottomLeft,.ant-select-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-select-dropdown-placement-bottomLeft{animation-name:antSlideUpIn}.ant-select-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-select-dropdown-placement-topLeft,.ant-select-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-select-dropdown-placement-topLeft{animation-name:antSlideDownIn}.ant-select-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-select-dropdown-placement-bottomLeft{animation-name:antSlideUpOut}.ant-select-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-select-dropdown-placement-topLeft{animation-name:antSlideDownOut}.ant-select-dropdown-empty{color:#00000040}.ant-select-item-empty{position:relative;display:block;min-height:32px;padding:5px 12px;color:#000000d9;font-weight:400;font-size:14px;line-height:22px;color:#00000040}.ant-select-item{position:relative;display:block;min-height:32px;padding:5px 12px;color:#000000d9;font-weight:400;font-size:14px;line-height:22px;cursor:pointer;transition:background .3s ease}.ant-select-item-group{color:#00000073;font-size:12px;cursor:default}.ant-select-item-option{display:flex}.ant-select-item-option-content{flex:auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-select-item-option-state{flex:none}.ant-select-item-option-active:not(.ant-select-item-option-disabled){background-color:#f5f5f5}.ant-select-item-option-selected:not(.ant-select-item-option-disabled){color:#000000d9;font-weight:600;background-color:#e6f7ff}.ant-select-item-option-selected:not(.ant-select-item-option-disabled) .ant-select-item-option-state{color:#1890ff}.ant-select-item-option-disabled{color:#00000040;cursor:not-allowed}.ant-select-item-option-disabled.ant-select-item-option-selected{background-color:#f5f5f5}.ant-select-item-option-grouped{padding-left:24px}.ant-select-lg{font-size:16px}.ant-select-borderless .ant-select-selector{background-color:transparent!important;border-color:transparent!important;box-shadow:none!important}.ant-select.ant-select-in-form-item{width:100%}.ant-select-rtl{direction:rtl}.ant-select-rtl .ant-select-arrow,.ant-select-rtl .ant-select-clear{right:initial;left:11px}.ant-select-dropdown-rtl{direction:rtl}.ant-select-dropdown-rtl .ant-select-item-option-grouped{padding-right:24px;padding-left:12px}.ant-select-rtl.ant-select-multiple.ant-select-show-arrow .ant-select-selector,.ant-select-rtl.ant-select-multiple.ant-select-allow-clear .ant-select-selector{padding-right:4px;padding-left:24px}.ant-select-rtl.ant-select-multiple .ant-select-selection-item{text-align:right}.ant-select-rtl.ant-select-multiple .ant-select-selection-item-content{margin-right:0;margin-left:4px;text-align:right}.ant-select-rtl.ant-select-multiple .ant-select-selection-search-mirror{right:0;left:auto}.ant-select-rtl.ant-select-multiple .ant-select-selection-placeholder{right:11px;left:auto}.ant-select-rtl.ant-select-multiple.ant-select-sm .ant-select-selection-placeholder{right:7px}.ant-select-rtl.ant-select-single .ant-select-selector .ant-select-selection-item,.ant-select-rtl.ant-select-single .ant-select-selector .ant-select-selection-placeholder{right:0;left:9px;text-align:right}.ant-select-rtl.ant-select-single.ant-select-show-arrow .ant-select-selection-search{right:11px;left:25px}.ant-select-rtl.ant-select-single.ant-select-show-arrow .ant-select-selection-item,.ant-select-rtl.ant-select-single.ant-select-show-arrow .ant-select-selection-placeholder{padding-right:0;padding-left:18px}.ant-select-rtl.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-search{right:6px}.ant-select-rtl.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-item,.ant-select-rtl.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-placeholder{padding-right:0;padding-left:21px}.ant-select-dropdown{top:100%;left:0;position:relative;width:100%;margin-top:4px;margin-bottom:4px;display:block}.ant-select-dropdown .cdk-virtual-scroll-content-wrapper{right:0}.ant-select-dropdown .full-width{contain:initial}.ant-select-dropdown .full-width .cdk-virtual-scroll-content-wrapper{position:static}.ant-select-dropdown .full-width .cdk-virtual-scroll-spacer{position:absolute;top:0;width:1px}.segmented-disabled-item,.segmented-disabled-item:hover,.segmented-disabled-item:focus{color:#00000040;cursor:not-allowed}.segmented-item-selected{background-color:#fff;border-radius:2px;box-shadow:0 2px 8px -2px #0000000d,0 1px 4px -1px #00000012,0 0 1px #00000014}.segmented-text-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all}.ant-segmented{box-sizing:border-box;margin:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";display:inline-block;padding:2px;color:#000000a6;background-color:#0000000a;border-radius:2px;transition:all .3s cubic-bezier(.645,.045,.355,1)}.ant-segmented-group{position:relative;display:flex;align-items:stretch;justify-items:flex-start;width:100%}.ant-segmented.ant-segmented-block{display:flex}.ant-segmented.ant-segmented-block .ant-segmented-item{flex:1;min-width:0}.ant-segmented:not(.ant-segmented-disabled):hover,.ant-segmented:not(.ant-segmented-disabled):focus{background-color:#0000000f}.ant-segmented-item{position:relative;text-align:center;cursor:pointer;transition:color .3s cubic-bezier(.645,.045,.355,1)}.ant-segmented-item-selected{background-color:#fff;border-radius:2px;box-shadow:0 2px 8px -2px #0000000d,0 1px 4px -1px #00000012,0 0 1px #00000014;color:#262626}.ant-segmented-item:hover,.ant-segmented-item:focus{color:#262626}.ant-segmented-item-label{min-height:28px;padding:0 11px;line-height:28px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all}.ant-segmented-item-icon+*{margin-left:12px / 2}.ant-segmented-item-input{position:absolute;top:0;left:0;width:0;height:0;opacity:0;pointer-events:none}.ant-segmented.ant-segmented-lg .ant-segmented-item-label{min-height:36px;padding:0 11px;font-size:16px;line-height:36px}.ant-segmented.ant-segmented-sm .ant-segmented-item-label{min-height:20px;padding:0 7px;line-height:20px}.ant-segmented-item-disabled,.ant-segmented-item-disabled:hover,.ant-segmented-item-disabled:focus{color:#00000040;cursor:not-allowed}.ant-segmented-thumb{background-color:#fff;border-radius:2px;box-shadow:0 2px 8px -2px #0000000d,0 1px 4px -1px #00000012,0 0 1px #00000014;position:absolute;top:0;left:0;width:0;height:100%;padding:4px 0}.ant-segmented-thumb-motion-appear-active{transition:transform .3s cubic-bezier(.645,.045,.355,1),width .3s cubic-bezier(.645,.045,.355,1);will-change:transform,width}.ant-segmented.ant-segmented-rtl{direction:rtl}.ant-segmented.ant-segmented-rtl .ant-segmented-item-icon{margin-right:0;margin-left:6px}.ant-skeleton{display:table;width:100%}.ant-skeleton-header{display:table-cell;padding-right:16px;vertical-align:top}.ant-skeleton-header .ant-skeleton-avatar{display:inline-block;vertical-align:top;background:rgba(190,190,190,.2);width:32px;height:32px;line-height:32px}.ant-skeleton-header .ant-skeleton-avatar.ant-skeleton-avatar-circle{border-radius:50%}.ant-skeleton-header .ant-skeleton-avatar-lg{width:40px;height:40px;line-height:40px}.ant-skeleton-header .ant-skeleton-avatar-lg.ant-skeleton-avatar-circle{border-radius:50%}.ant-skeleton-header .ant-skeleton-avatar-sm{width:24px;height:24px;line-height:24px}.ant-skeleton-header .ant-skeleton-avatar-sm.ant-skeleton-avatar-circle{border-radius:50%}.ant-skeleton-content{display:table-cell;width:100%;vertical-align:top}.ant-skeleton-content .ant-skeleton-title{width:100%;height:16px;margin-top:16px;background:rgba(190,190,190,.2);border-radius:4px}.ant-skeleton-content .ant-skeleton-title+.ant-skeleton-paragraph{margin-top:24px}.ant-skeleton-content .ant-skeleton-paragraph{padding:0}.ant-skeleton-content .ant-skeleton-paragraph>li{width:100%;height:16px;list-style:none;background:rgba(190,190,190,.2);border-radius:4px}.ant-skeleton-content .ant-skeleton-paragraph>li:last-child:not(:first-child):not(:nth-child(2)){width:61%}.ant-skeleton-content .ant-skeleton-paragraph>li+li{margin-top:16px}.ant-skeleton-with-avatar .ant-skeleton-content .ant-skeleton-title{margin-top:12px}.ant-skeleton-with-avatar .ant-skeleton-content .ant-skeleton-title+.ant-skeleton-paragraph{margin-top:28px}.ant-skeleton-round .ant-skeleton-content .ant-skeleton-title,.ant-skeleton-round .ant-skeleton-content .ant-skeleton-paragraph>li{border-radius:100px}.ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-title,.ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-paragraph>li{background:linear-gradient(90deg,rgba(190,190,190,.2) 25%,rgba(129,129,129,.24) 37%,rgba(190,190,190,.2) 63%);background-size:400% 100%;animation:ant-skeleton-loading 1.4s ease infinite}.ant-skeleton.ant-skeleton-active .ant-skeleton-avatar,.ant-skeleton.ant-skeleton-active .ant-skeleton-button,.ant-skeleton.ant-skeleton-active .ant-skeleton-input,.ant-skeleton.ant-skeleton-active .ant-skeleton-image{background:linear-gradient(90deg,rgba(190,190,190,.2) 25%,rgba(129,129,129,.24) 37%,rgba(190,190,190,.2) 63%);background-size:400% 100%;animation:ant-skeleton-loading 1.4s ease infinite}.ant-skeleton.ant-skeleton-block,.ant-skeleton.ant-skeleton-block .ant-skeleton-button,.ant-skeleton.ant-skeleton-block .ant-skeleton-input{width:100%}.ant-skeleton-element{display:inline-block;width:auto}.ant-skeleton-element .ant-skeleton-button{display:inline-block;vertical-align:top;background:rgba(190,190,190,.2);border-radius:2px;width:64px;min-width:64px;height:32px;line-height:32px}.ant-skeleton-element .ant-skeleton-button.ant-skeleton-button-circle{width:32px;min-width:32px;border-radius:50%}.ant-skeleton-element .ant-skeleton-button.ant-skeleton-button-round{border-radius:32px}.ant-skeleton-element .ant-skeleton-button-lg{width:80px;min-width:80px;height:40px;line-height:40px}.ant-skeleton-element .ant-skeleton-button-lg.ant-skeleton-button-circle{width:40px;min-width:40px;border-radius:50%}.ant-skeleton-element .ant-skeleton-button-lg.ant-skeleton-button-round{border-radius:40px}.ant-skeleton-element .ant-skeleton-button-sm{width:48px;min-width:48px;height:24px;line-height:24px}.ant-skeleton-element .ant-skeleton-button-sm.ant-skeleton-button-circle{width:24px;min-width:24px;border-radius:50%}.ant-skeleton-element .ant-skeleton-button-sm.ant-skeleton-button-round{border-radius:24px}.ant-skeleton-element .ant-skeleton-avatar{display:inline-block;vertical-align:top;background:rgba(190,190,190,.2);width:32px;height:32px;line-height:32px}.ant-skeleton-element .ant-skeleton-avatar.ant-skeleton-avatar-circle{border-radius:50%}.ant-skeleton-element .ant-skeleton-avatar-lg{width:40px;height:40px;line-height:40px}.ant-skeleton-element .ant-skeleton-avatar-lg.ant-skeleton-avatar-circle{border-radius:50%}.ant-skeleton-element .ant-skeleton-avatar-sm{width:24px;height:24px;line-height:24px}.ant-skeleton-element .ant-skeleton-avatar-sm.ant-skeleton-avatar-circle{border-radius:50%}.ant-skeleton-element .ant-skeleton-input{display:inline-block;vertical-align:top;background:rgba(190,190,190,.2);width:160px;min-width:160px;height:32px;line-height:32px}.ant-skeleton-element .ant-skeleton-input-lg{width:200px;min-width:200px;height:40px;line-height:40px}.ant-skeleton-element .ant-skeleton-input-sm{width:120px;min-width:120px;height:24px;line-height:24px}.ant-skeleton-element .ant-skeleton-image{display:flex;align-items:center;justify-content:center;vertical-align:top;background:rgba(190,190,190,.2);width:96px;height:96px;line-height:96px}.ant-skeleton-element .ant-skeleton-image.ant-skeleton-image-circle{border-radius:50%}.ant-skeleton-element .ant-skeleton-image-path{fill:#bfbfbf}.ant-skeleton-element .ant-skeleton-image-svg{width:48px;height:48px;line-height:48px;max-width:192px;max-height:192px}.ant-skeleton-element .ant-skeleton-image-svg.ant-skeleton-image-circle{border-radius:50%}@keyframes ant-skeleton-loading{0%{background-position:100% 50%}to{background-position:0 50%}}.ant-skeleton-rtl{direction:rtl}.ant-skeleton-rtl .ant-skeleton-header{padding-right:0;padding-left:16px}.ant-skeleton-rtl.ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-title,.ant-skeleton-rtl.ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-paragraph>li{animation-name:ant-skeleton-loading-rtl}.ant-skeleton-rtl.ant-skeleton.ant-skeleton-active .ant-skeleton-avatar{animation-name:ant-skeleton-loading-rtl}@keyframes ant-skeleton-loading-rtl{0%{background-position:0% 50%}to{background-position:100% 50%}}.ant-slider{box-sizing:border-box;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;height:12px;margin:10px 6px;padding:4px 0;cursor:pointer;touch-action:none}.ant-slider-vertical{width:12px;height:100%;margin:6px 10px;padding:0 4px}.ant-slider-vertical .ant-slider-rail{width:4px;height:100%}.ant-slider-vertical .ant-slider-track{width:4px}.ant-slider-vertical .ant-slider-handle{margin-top:-6px;margin-left:-5px}.ant-slider-vertical .ant-slider-mark{top:0;left:12px;width:18px;height:100%}.ant-slider-vertical .ant-slider-mark-text{left:4px;white-space:nowrap}.ant-slider-vertical .ant-slider-step{width:4px;height:100%}.ant-slider-vertical .ant-slider-dot{top:auto;margin-left:-2px}.ant-slider-tooltip .ant-tooltip-inner{min-width:unset}.ant-slider-rtl.ant-slider-vertical .ant-slider-handle{margin-right:-5px;margin-left:0}.ant-slider-rtl.ant-slider-vertical .ant-slider-mark{right:12px;left:auto}.ant-slider-rtl.ant-slider-vertical .ant-slider-mark-text{right:4px;left:auto}.ant-slider-rtl.ant-slider-vertical .ant-slider-dot{right:2px;left:auto}.ant-slider-with-marks{margin-bottom:28px}.ant-slider-rail{position:absolute;width:100%;height:4px;background-color:#f5f5f5;border-radius:2px;transition:background-color .3s}.ant-slider-track{position:absolute;height:4px;background-color:#91d5ff;border-radius:2px;transition:background-color .3s}.ant-slider-handle{position:absolute;width:14px;height:14px;margin-top:-5px;background-color:#fff;border:solid 2px #91d5ff;border-radius:50%;box-shadow:0;cursor:pointer;transition:border-color .3s,box-shadow .6s,transform .3s cubic-bezier(.18,.89,.32,1.28)}.ant-slider-handle-dragging{z-index:1}.ant-slider-handle:focus{border-color:#46a6ff;outline:none;box-shadow:0 0 0 5px #1890ff1f}.ant-slider-handle.ant-tooltip-open{border-color:#1890ff}.ant-slider:hover .ant-slider-rail{background-color:#e1e1e1}.ant-slider:hover .ant-slider-track{background-color:#69c0ff}.ant-slider:hover .ant-slider-handle:not(.ant-tooltip-open){border-color:#69c0ff}.ant-slider-mark{position:absolute;top:14px;left:0;width:100%;font-size:14px}.ant-slider-mark-text{position:absolute;display:inline-block;color:#00000073;text-align:center;word-break:keep-all;cursor:pointer;-webkit-user-select:none;user-select:none}.ant-slider-mark-text-active{color:#000000d9}.ant-slider-step{position:absolute;width:100%;height:4px;background:transparent;pointer-events:none}.ant-slider-dot{position:absolute;top:-2px;width:8px;height:8px;background-color:#fff;border:2px solid #f0f0f0;border-radius:50%;cursor:pointer}.ant-slider-dot-active{border-color:#8cc8ff}.ant-slider-disabled{cursor:not-allowed}.ant-slider-disabled .ant-slider-rail{background-color:#f5f5f5!important}.ant-slider-disabled .ant-slider-track{background-color:#00000040!important}.ant-slider-disabled .ant-slider-handle,.ant-slider-disabled .ant-slider-dot{background-color:#fff;border-color:#00000040!important;box-shadow:none;cursor:not-allowed}.ant-slider-disabled .ant-slider-mark-text,.ant-slider-disabled .ant-slider-dot{cursor:not-allowed!important}.ant-slider-rtl{direction:rtl}.ant-slider-rtl .ant-slider-mark{right:0;left:auto}.ant-spin{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:absolute;display:none;color:#1890ff;text-align:center;vertical-align:middle;opacity:0;transition:transform .3s cubic-bezier(.78,.14,.15,.86)}.ant-spin-spinning{position:static;display:inline-block;opacity:1}.ant-spin-nested-loading{position:relative}.ant-spin-nested-loading>div>.ant-spin{position:absolute;top:0;left:0;z-index:4;display:block;width:100%;height:100%;max-height:400px}.ant-spin-nested-loading>div>.ant-spin .ant-spin-dot{position:absolute;top:50%;left:50%;margin:-10px}.ant-spin-nested-loading>div>.ant-spin .ant-spin-text{position:absolute;top:50%;width:100%;padding-top:5px;text-shadow:0 1px 2px #fff}.ant-spin-nested-loading>div>.ant-spin.ant-spin-show-text .ant-spin-dot{margin-top:-20px}.ant-spin-nested-loading>div>.ant-spin-sm .ant-spin-dot{margin:-7px}.ant-spin-nested-loading>div>.ant-spin-sm .ant-spin-text{padding-top:2px}.ant-spin-nested-loading>div>.ant-spin-sm.ant-spin-show-text .ant-spin-dot{margin-top:-17px}.ant-spin-nested-loading>div>.ant-spin-lg .ant-spin-dot{margin:-16px}.ant-spin-nested-loading>div>.ant-spin-lg .ant-spin-text{padding-top:11px}.ant-spin-nested-loading>div>.ant-spin-lg.ant-spin-show-text .ant-spin-dot{margin-top:-26px}.ant-spin-container{position:relative;transition:opacity .3s}.ant-spin-container:after{position:absolute;inset:0;z-index:10;display:none \ ;width:100%;height:100%;background:#fff;opacity:0;transition:all .3s;content:"";pointer-events:none}.ant-spin-blur{clear:both;opacity:.5;-webkit-user-select:none;user-select:none;pointer-events:none}.ant-spin-blur:after{opacity:.4;pointer-events:auto}.ant-spin-tip{color:#00000073}.ant-spin-dot{position:relative;display:inline-block;font-size:20px;width:1em;height:1em}.ant-spin-dot-item{position:absolute;display:block;width:9px;height:9px;background-color:#1890ff;border-radius:100%;transform:scale(.75);transform-origin:50% 50%;opacity:.3;animation:antSpinMove 1s infinite linear alternate}.ant-spin-dot-item:nth-child(1){top:0;left:0}.ant-spin-dot-item:nth-child(2){top:0;right:0;animation-delay:.4s}.ant-spin-dot-item:nth-child(3){right:0;bottom:0;animation-delay:.8s}.ant-spin-dot-item:nth-child(4){bottom:0;left:0;animation-delay:1.2s}.ant-spin-dot-spin{transform:rotate(0);animation:antRotate 1.2s infinite linear}.ant-spin-sm .ant-spin-dot{font-size:14px}.ant-spin-sm .ant-spin-dot i{width:6px;height:6px}.ant-spin-lg .ant-spin-dot{font-size:32px}.ant-spin-lg .ant-spin-dot i{width:14px;height:14px}.ant-spin.ant-spin-show-text .ant-spin-text{display:block}@media all and (-ms-high-contrast: none),(-ms-high-contrast: active){.ant-spin-blur{background:#fff;opacity:.5}}@keyframes antSpinMove{to{opacity:1}}@keyframes antRotate{to{transform:rotate(360deg)}}.ant-spin-rtl{direction:rtl}.ant-spin-rtl .ant-spin-dot-spin{transform:rotate(-45deg);animation-name:antRotateRtl}@keyframes antRotateRtl{to{transform:rotate(-405deg)}}nz-spin{display:block}.ant-statistic{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum"}.ant-statistic-title{margin-bottom:4px;color:#00000073;font-size:14px}.ant-statistic-content{color:#000000d9;font-size:24px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}.ant-statistic-content-value{display:inline-block;direction:ltr}.ant-statistic-content-prefix,.ant-statistic-content-suffix{display:inline-block}.ant-statistic-content-prefix{margin-right:4px}.ant-statistic-content-suffix{margin-left:4px}.ant-statistic-rtl{direction:rtl}.ant-statistic-rtl .ant-statistic-content-prefix{margin-right:0;margin-left:4px}.ant-statistic-rtl .ant-statistic-content-suffix{margin-right:4px;margin-left:0}.ant-steps{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";display:flex;width:100%;font-size:0;text-align:initial}.ant-steps-item{position:relative;display:inline-block;flex:1;overflow:hidden;vertical-align:top}.ant-steps-item-container{outline:none}.ant-steps-item:last-child{flex:none}.ant-steps-item:last-child>.ant-steps-item-container>.ant-steps-item-tail,.ant-steps-item:last-child>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title:after{display:none}.ant-steps-item-icon,.ant-steps-item-content{display:inline-block;vertical-align:top}.ant-steps-item-icon{width:32px;height:32px;margin:0 8px 0 0;font-size:16px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:32px;text-align:center;border:1px solid rgba(0,0,0,.25);border-radius:32px;transition:background-color .3s,border-color .3s}.ant-steps-item-icon .ant-steps-icon{position:relative;top:-.5px;color:#1890ff;line-height:1}.ant-steps-item-tail{position:absolute;top:12px;left:0;width:100%;padding:0 10px}.ant-steps-item-tail:after{display:inline-block;width:100%;height:1px;background:#f0f0f0;border-radius:1px;transition:background .3s;content:""}.ant-steps-item-title{position:relative;display:inline-block;padding-right:16px;color:#000000d9;font-size:16px;line-height:32px}.ant-steps-item-title:after{position:absolute;top:16px;left:100%;display:block;width:9999px;height:1px;background:#f0f0f0;content:""}.ant-steps-item-subtitle{display:inline;margin-left:8px;color:#00000073;font-weight:400;font-size:14px}.ant-steps-item-description{color:#00000073;font-size:14px}.ant-steps-item-wait .ant-steps-item-icon{background-color:#fff;border-color:#00000040}.ant-steps-item-wait .ant-steps-item-icon>.ant-steps-icon{color:#00000040}.ant-steps-item-wait .ant-steps-item-icon>.ant-steps-icon .ant-steps-icon-dot{background:rgba(0,0,0,.25)}.ant-steps-item-wait>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title{color:#00000073}.ant-steps-item-wait>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title:after{background-color:#f0f0f0}.ant-steps-item-wait>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-description{color:#00000073}.ant-steps-item-wait>.ant-steps-item-container>.ant-steps-item-tail:after{background-color:#f0f0f0}.ant-steps-item-process .ant-steps-item-icon{background-color:#fff;border-color:#1890ff}.ant-steps-item-process .ant-steps-item-icon>.ant-steps-icon{color:#1890ff}.ant-steps-item-process .ant-steps-item-icon>.ant-steps-icon .ant-steps-icon-dot{background:#1890ff}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title{color:#000000d9}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title:after{background-color:#f0f0f0}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-description{color:#000000d9}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-tail:after{background-color:#f0f0f0}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-icon{background:#1890ff}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-icon .ant-steps-icon{color:#fff}.ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-title{font-weight:500}.ant-steps-item-finish .ant-steps-item-icon{background-color:#fff;border-color:#1890ff}.ant-steps-item-finish .ant-steps-item-icon>.ant-steps-icon{color:#1890ff}.ant-steps-item-finish .ant-steps-item-icon>.ant-steps-icon .ant-steps-icon-dot{background:#1890ff}.ant-steps-item-finish>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title{color:#000000d9}.ant-steps-item-finish>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title:after{background-color:#1890ff}.ant-steps-item-finish>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-description{color:#00000073}.ant-steps-item-finish>.ant-steps-item-container>.ant-steps-item-tail:after{background-color:#1890ff}.ant-steps-item-error .ant-steps-item-icon{background-color:#fff;border-color:#ff4d4f}.ant-steps-item-error .ant-steps-item-icon>.ant-steps-icon{color:#ff4d4f}.ant-steps-item-error .ant-steps-item-icon>.ant-steps-icon .ant-steps-icon-dot{background:#ff4d4f}.ant-steps-item-error>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title{color:#ff4d4f}.ant-steps-item-error>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title:after{background-color:#f0f0f0}.ant-steps-item-error>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-description{color:#ff4d4f}.ant-steps-item-error>.ant-steps-item-container>.ant-steps-item-tail:after{background-color:#f0f0f0}.ant-steps-item.ant-steps-next-error .ant-steps-item-title:after{background:#ff4d4f}.ant-steps-item-disabled{cursor:not-allowed}.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button]{cursor:pointer}.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button] .ant-steps-item-title,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button] .ant-steps-item-subtitle,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button] .ant-steps-item-description,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button] .ant-steps-item-icon .ant-steps-icon{transition:color .3s}.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button]:hover .ant-steps-item-title,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button]:hover .ant-steps-item-subtitle,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role=button]:hover .ant-steps-item-description{color:#1890ff}.ant-steps .ant-steps-item:not(.ant-steps-item-active):not(.ant-steps-item-process)>.ant-steps-item-container[role=button]:hover .ant-steps-item-icon{border-color:#1890ff}.ant-steps .ant-steps-item:not(.ant-steps-item-active):not(.ant-steps-item-process)>.ant-steps-item-container[role=button]:hover .ant-steps-item-icon .ant-steps-icon{color:#1890ff}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item{padding-left:16px;white-space:nowrap}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:first-child{padding-left:0}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:last-child .ant-steps-item-title{padding-right:0}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item-tail{display:none}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item-description{max-width:140px;white-space:normal}.ant-steps-item-custom>.ant-steps-item-container>.ant-steps-item-icon{height:auto;background:none;border:0}.ant-steps-item-custom>.ant-steps-item-container>.ant-steps-item-icon>.ant-steps-icon{top:0;left:.5px;width:32px;height:32px;font-size:24px;line-height:32px}.ant-steps-item-custom.ant-steps-item-process .ant-steps-item-icon>.ant-steps-icon{color:#1890ff}.ant-steps:not(.ant-steps-vertical) .ant-steps-item-custom .ant-steps-item-icon{width:auto;background:none}.ant-steps-small.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item{padding-left:12px}.ant-steps-small.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:first-child{padding-left:0}.ant-steps-small .ant-steps-item-icon{width:24px;height:24px;margin:0 8px 0 0;font-size:12px;line-height:24px;text-align:center;border-radius:24px}.ant-steps-small .ant-steps-item-title{padding-right:12px;font-size:14px;line-height:24px}.ant-steps-small .ant-steps-item-title:after{top:12px}.ant-steps-small .ant-steps-item-description{color:#00000073;font-size:14px}.ant-steps-small .ant-steps-item-tail{top:8px}.ant-steps-small .ant-steps-item-custom .ant-steps-item-icon{width:inherit;height:inherit;line-height:inherit;background:none;border:0;border-radius:0}.ant-steps-small .ant-steps-item-custom .ant-steps-item-icon>.ant-steps-icon{font-size:24px;line-height:24px;transform:none}.ant-steps-vertical{display:flex;flex-direction:column}.ant-steps-vertical>.ant-steps-item{display:block;flex:1 0 auto;padding-left:0;overflow:visible}.ant-steps-vertical>.ant-steps-item .ant-steps-item-icon{float:left;margin-right:16px}.ant-steps-vertical>.ant-steps-item .ant-steps-item-content{display:block;min-height:48px;overflow:hidden}.ant-steps-vertical>.ant-steps-item .ant-steps-item-title{line-height:32px}.ant-steps-vertical>.ant-steps-item .ant-steps-item-description{padding-bottom:12px}.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{position:absolute;top:0;left:16px;width:1px;height:100%;padding:38px 0 6px}.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail:after{width:1px;height:100%}.ant-steps-vertical>.ant-steps-item:not(:last-child)>.ant-steps-item-container>.ant-steps-item-tail{display:block}.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title:after{display:none}.ant-steps-vertical.ant-steps-small .ant-steps-item-container .ant-steps-item-tail{position:absolute;top:0;left:12px;padding:30px 0 6px}.ant-steps-vertical.ant-steps-small .ant-steps-item-container .ant-steps-item-title{line-height:24px}.ant-steps-label-vertical .ant-steps-item{overflow:visible}.ant-steps-label-vertical .ant-steps-item-tail{margin-left:58px;padding:3.5px 24px}.ant-steps-label-vertical .ant-steps-item-content{display:block;width:116px;margin-top:8px;text-align:center}.ant-steps-label-vertical .ant-steps-item-icon{display:inline-block;margin-left:42px}.ant-steps-label-vertical .ant-steps-item-title{padding-right:0;padding-left:0}.ant-steps-label-vertical .ant-steps-item-title:after{display:none}.ant-steps-label-vertical .ant-steps-item-subtitle{display:block;margin-bottom:4px;margin-left:0;line-height:1.5715}.ant-steps-label-vertical.ant-steps-small:not(.ant-steps-dot) .ant-steps-item-icon{margin-left:46px}.ant-steps-dot .ant-steps-item-title,.ant-steps-dot.ant-steps-small .ant-steps-item-title{line-height:1.5715}.ant-steps-dot .ant-steps-item-tail,.ant-steps-dot.ant-steps-small .ant-steps-item-tail{top:2px;width:100%;margin:0 0 0 70px;padding:0}.ant-steps-dot .ant-steps-item-tail:after,.ant-steps-dot.ant-steps-small .ant-steps-item-tail:after{width:calc(100% - 20px);height:3px;margin-left:12px}.ant-steps-dot .ant-steps-item:first-child .ant-steps-icon-dot,.ant-steps-dot.ant-steps-small .ant-steps-item:first-child .ant-steps-icon-dot{left:2px}.ant-steps-dot .ant-steps-item-icon,.ant-steps-dot.ant-steps-small .ant-steps-item-icon{width:8px;height:8px;margin-left:67px;padding-right:0;line-height:8px;background:transparent;border:0}.ant-steps-dot .ant-steps-item-icon .ant-steps-icon-dot,.ant-steps-dot.ant-steps-small .ant-steps-item-icon .ant-steps-icon-dot{position:relative;float:left;width:100%;height:100%;border-radius:100px;transition:all .3s}.ant-steps-dot .ant-steps-item-icon .ant-steps-icon-dot:after,.ant-steps-dot.ant-steps-small .ant-steps-item-icon .ant-steps-icon-dot:after{position:absolute;top:-12px;left:-26px;width:60px;height:32px;background:rgba(0,0,0,.001);content:""}.ant-steps-dot .ant-steps-item-content,.ant-steps-dot.ant-steps-small .ant-steps-item-content{width:140px}.ant-steps-dot .ant-steps-item-process .ant-steps-item-icon,.ant-steps-dot.ant-steps-small .ant-steps-item-process .ant-steps-item-icon{position:relative;top:-1px;width:10px;height:10px;line-height:10px;background:none}.ant-steps-dot .ant-steps-item-process .ant-steps-icon:first-child .ant-steps-icon-dot,.ant-steps-dot.ant-steps-small .ant-steps-item-process .ant-steps-icon:first-child .ant-steps-icon-dot{left:0}.ant-steps-vertical.ant-steps-dot .ant-steps-item-icon{margin-top:13px;margin-left:0;background:none}.ant-steps-vertical.ant-steps-dot .ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{top:6.5px;left:-9px;margin:0;padding:22px 0 4px}.ant-steps-vertical.ant-steps-dot.ant-steps-small .ant-steps-item-icon{margin-top:10px}.ant-steps-vertical.ant-steps-dot.ant-steps-small .ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{top:3.5px}.ant-steps-vertical.ant-steps-dot .ant-steps-item:first-child .ant-steps-icon-dot{left:0}.ant-steps-vertical.ant-steps-dot .ant-steps-item-content{width:inherit}.ant-steps-vertical.ant-steps-dot .ant-steps-item-process .ant-steps-item-container .ant-steps-item-icon .ant-steps-icon-dot{top:-1px;left:-1px}.ant-steps-navigation{padding-top:12px}.ant-steps-navigation.ant-steps-small .ant-steps-item-container{margin-left:-12px}.ant-steps-navigation .ant-steps-item{overflow:visible;text-align:center}.ant-steps-navigation .ant-steps-item-container{display:inline-block;height:100%;margin-left:-16px;padding-bottom:12px;text-align:left;transition:opacity .3s}.ant-steps-navigation .ant-steps-item-container .ant-steps-item-content{max-width:auto}.ant-steps-navigation .ant-steps-item-container .ant-steps-item-title{max-width:100%;padding-right:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-steps-navigation .ant-steps-item-container .ant-steps-item-title:after{display:none}.ant-steps-navigation .ant-steps-item:not(.ant-steps-item-active) .ant-steps-item-container[role=button]{cursor:pointer}.ant-steps-navigation .ant-steps-item:not(.ant-steps-item-active) .ant-steps-item-container[role=button]:hover{opacity:.85}.ant-steps-navigation .ant-steps-item:last-child{flex:1}.ant-steps-navigation .ant-steps-item:last-child:after{display:none}.ant-steps-navigation .ant-steps-item:after{position:absolute;top:50%;left:100%;display:inline-block;width:12px;height:12px;margin-top:-14px;margin-left:-2px;border:1px solid rgba(0,0,0,.25);border-bottom:none;border-left:none;transform:rotate(45deg);content:""}.ant-steps-navigation .ant-steps-item:before{position:absolute;bottom:0;left:50%;display:inline-block;width:0;height:2px;background-color:#1890ff;transition:width .3s,left .3s;transition-timing-function:ease-out;content:""}.ant-steps-navigation .ant-steps-item.ant-steps-item-active:before{left:0;width:100%}.ant-steps-navigation.ant-steps-vertical>.ant-steps-item{margin-right:0!important}.ant-steps-navigation.ant-steps-vertical>.ant-steps-item:before{display:none}.ant-steps-navigation.ant-steps-vertical>.ant-steps-item.ant-steps-item-active:before{top:0;right:0;left:unset;display:block;width:3px;height:calc(100% - 24px)}.ant-steps-navigation.ant-steps-vertical>.ant-steps-item:after{position:relative;top:-2px;left:50%;display:block;width:8px;height:8px;margin-bottom:8px;text-align:center;transform:rotate(135deg)}.ant-steps-navigation.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{visibility:hidden}.ant-steps-navigation.ant-steps-horizontal>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{visibility:hidden}.ant-steps-rtl{direction:rtl}.ant-steps.ant-steps-rtl .ant-steps-item-icon{margin-right:0;margin-left:8px}.ant-steps-rtl .ant-steps-item-tail{right:0;left:auto}.ant-steps-rtl .ant-steps-item-title{padding-right:0;padding-left:16px}.ant-steps-rtl .ant-steps-item-title .ant-steps-item-subtitle{float:left;margin-right:8px;margin-left:0}.ant-steps-rtl .ant-steps-item-title:after{right:100%;left:auto}.ant-steps-rtl.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item{padding-right:16px;padding-left:0}.ant-steps-rtl.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:first-child{padding-right:0}.ant-steps-rtl.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:last-child .ant-steps-item-title{padding-left:0}.ant-steps-rtl .ant-steps-item-custom .ant-steps-item-icon>.ant-steps-icon{right:.5px;left:auto}.ant-steps-rtl.ant-steps-navigation.ant-steps-small .ant-steps-item-container{margin-right:-12px;margin-left:0}.ant-steps-rtl.ant-steps-navigation .ant-steps-item-container{margin-right:-16px;margin-left:0;text-align:right}.ant-steps-rtl.ant-steps-navigation .ant-steps-item-container .ant-steps-item-title{padding-left:0}.ant-steps-rtl.ant-steps-navigation .ant-steps-item:after{right:100%;left:auto;margin-right:-2px;margin-left:0;transform:rotate(225deg)}.ant-steps-rtl.ant-steps-small.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item{padding-right:12px;padding-left:0}.ant-steps-rtl.ant-steps-small.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:first-child{padding-right:0}.ant-steps-rtl.ant-steps-small .ant-steps-item-title{padding-right:0;padding-left:12px}.ant-steps-rtl.ant-steps-vertical>.ant-steps-item .ant-steps-item-icon{float:right;margin-right:0;margin-left:16px}.ant-steps-rtl.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{right:16px;left:auto}.ant-steps-rtl.ant-steps-vertical.ant-steps-small .ant-steps-item-container .ant-steps-item-tail{right:12px;left:auto}.ant-steps-rtl.ant-steps-label-vertical .ant-steps-item-title{padding-left:0}.ant-steps-rtl.ant-steps-dot .ant-steps-item-tail,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-tail{margin:0 70px 0 0}.ant-steps-rtl.ant-steps-dot .ant-steps-item-tail:after,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-tail:after{margin-right:12px;margin-left:0}.ant-steps-rtl.ant-steps-dot .ant-steps-item:first-child .ant-steps-icon-dot,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item:first-child .ant-steps-icon-dot{right:2px;left:auto}.ant-steps-rtl.ant-steps-dot .ant-steps-item-icon,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-icon{margin-right:67px;margin-left:0}.ant-steps-rtl.ant-steps-dot .ant-steps-item-icon .ant-steps-icon-dot,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-icon .ant-steps-icon-dot{float:right}.ant-steps-rtl.ant-steps-dot .ant-steps-item-icon .ant-steps-icon-dot:after,.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-icon .ant-steps-icon-dot:after{right:-26px;left:auto}.ant-steps-rtl.ant-steps-vertical.ant-steps-dot .ant-steps-item-icon{margin-right:0;margin-left:16px}.ant-steps-rtl.ant-steps-vertical.ant-steps-dot .ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{right:-9px;left:auto}.ant-steps-rtl.ant-steps-vertical.ant-steps-dot .ant-steps-item:first-child .ant-steps-icon-dot{right:0;left:auto}.ant-steps-rtl.ant-steps-vertical.ant-steps-dot .ant-steps-item-process .ant-steps-icon-dot{right:-2px;left:auto}.ant-steps-rtl.ant-steps-with-progress.ant-steps-horizontal.ant-steps-label-horizontal .ant-steps-item:first-child{padding-right:4px;padding-left:0}.ant-steps-rtl.ant-steps-with-progress.ant-steps-horizontal.ant-steps-label-horizontal .ant-steps-item:first-child.ant-steps-item-active{padding-right:4px}.ant-steps-with-progress .ant-steps-item{padding-top:4px}.ant-steps-with-progress .ant-steps-item .ant-steps-item-tail{top:4px!important}.ant-steps-with-progress.ant-steps-horizontal .ant-steps-item:first-child{padding-bottom:4px;padding-left:4px}.ant-steps-with-progress .ant-steps-item-icon{position:relative}.ant-steps-with-progress .ant-steps-item-icon .ant-progress{position:absolute;inset:-5px}.ant-switch{margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;display:inline-block;box-sizing:border-box;min-width:44px;height:22px;line-height:22px;vertical-align:middle;background-image:linear-gradient(to right,rgba(0,0,0,.25),rgba(0,0,0,.25)),linear-gradient(to right,#fff,#fff);border:0;border-radius:100px;cursor:pointer;transition:all .2s;-webkit-user-select:none;user-select:none}.ant-switch:focus{outline:0;box-shadow:0 0 0 2px #0000001a}.ant-switch-checked:focus{box-shadow:0 0 0 2px #e6f7ff}.ant-switch:focus:hover{box-shadow:none}.ant-switch-checked{background:#1890ff}.ant-switch-loading,.ant-switch-disabled{cursor:not-allowed;opacity:.4}.ant-switch-loading *,.ant-switch-disabled *{box-shadow:none;cursor:not-allowed}.ant-switch-inner{display:block;margin:0 7px 0 25px;color:#fff;font-size:12px;transition:margin .2s}.ant-switch-checked .ant-switch-inner{margin:0 25px 0 7px}.ant-switch-handle{position:absolute;top:2px;left:2px;width:18px;height:18px;transition:all .2s ease-in-out}.ant-switch-handle:before{position:absolute;inset:0;background-color:#fff;border-radius:9px;box-shadow:0 2px 4px #00230b33;transition:all .2s ease-in-out;content:""}.ant-switch-checked .ant-switch-handle{left:calc(100% - 20px)}.ant-switch:not(.ant-switch-disabled):active .ant-switch-handle:before{right:-30%;left:0}.ant-switch:not(.ant-switch-disabled):active.ant-switch-checked .ant-switch-handle:before{right:0;left:-30%}.ant-switch-loading-icon.anticon{position:relative;top:2px;color:#000000a6;vertical-align:top}.ant-switch-checked .ant-switch-loading-icon{color:#1890ff}.ant-switch-small{min-width:28px;height:16px;line-height:16px}.ant-switch-small .ant-switch-inner{margin:0 5px 0 18px;font-size:12px}.ant-switch-small .ant-switch-handle{width:12px;height:12px}.ant-switch-small .ant-switch-loading-icon{top:1.5px;font-size:9px}.ant-switch-small.ant-switch-checked .ant-switch-inner{margin:0 18px 0 5px}.ant-switch-small.ant-switch-checked .ant-switch-handle{left:calc(100% - 14px)}.ant-switch-rtl{direction:rtl}.ant-switch-rtl .ant-switch-inner{margin:0 25px 0 7px}.ant-switch-rtl .ant-switch-handle{right:2px;left:auto}.ant-switch-rtl:not(.ant-switch-rtl-disabled):active .ant-switch-handle:before{right:0;left:-30%}.ant-switch-rtl:not(.ant-switch-rtl-disabled):active.ant-switch-checked .ant-switch-handle:before{right:-30%;left:0}.ant-switch-rtl.ant-switch-checked .ant-switch-inner{margin:0 7px 0 25px}.ant-switch-rtl.ant-switch-checked .ant-switch-handle{right:calc(100% - 20px)}.ant-switch-rtl.ant-switch-small.ant-switch-checked .ant-switch-handle{right:calc(100% - 14px)}nz-switch{display:inline-block}.ant-table.ant-table-middle{font-size:14px}.ant-table.ant-table-middle .ant-table-title,.ant-table.ant-table-middle .ant-table-footer,.ant-table.ant-table-middle .ant-table-thead>tr>th,.ant-table.ant-table-middle .ant-table-tbody>tr>td,.ant-table.ant-table-middle tfoot>tr>th,.ant-table.ant-table-middle tfoot>tr>td{padding:12px 8px}.ant-table.ant-table-middle .ant-table-filter-trigger{margin-right:-4px}.ant-table.ant-table-middle .ant-table-expanded-row-fixed{margin:-12px -8px}.ant-table.ant-table-middle .ant-table-tbody .ant-table-wrapper:only-child .ant-table{margin:-12px -8px -12px 25px}.ant-table.ant-table-middle .ant-table-selection-column{padding-inline-start:2px}.ant-table.ant-table-small{font-size:14px}.ant-table.ant-table-small .ant-table-title,.ant-table.ant-table-small .ant-table-footer,.ant-table.ant-table-small .ant-table-thead>tr>th,.ant-table.ant-table-small .ant-table-tbody>tr>td,.ant-table.ant-table-small tfoot>tr>th,.ant-table.ant-table-small tfoot>tr>td{padding:8px}.ant-table.ant-table-small .ant-table-filter-trigger{margin-right:-4px}.ant-table.ant-table-small .ant-table-expanded-row-fixed{margin:-8px}.ant-table.ant-table-small .ant-table-tbody .ant-table-wrapper:only-child .ant-table{margin:-8px -8px -8px 25px}.ant-table.ant-table-small .ant-table-selection-column{padding-inline-start:2px}.ant-table.ant-table-bordered>.ant-table-title{border:1px solid #f0f0f0;border-bottom:0}.ant-table.ant-table-bordered>.ant-table-container{border-left:1px solid #f0f0f0}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tfoot>tr>td{border-right:1px solid #f0f0f0}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr:not(:last-child)>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr:not(:last-child)>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr:not(:last-child)>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr:not(:last-child)>th{border-bottom:1px solid #f0f0f0}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr>th:before,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr>th:before,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr>th:before,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr>th:before{background-color:transparent!important}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tfoot>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tfoot>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tfoot>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tfoot>tr>.ant-table-cell-fix-right-first:after{border-right:1px solid #f0f0f0}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-16px -17px}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>td>.ant-table-expanded-row-fixed:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>td>.ant-table-expanded-row-fixed:after{position:absolute;top:0;right:1px;bottom:0;border-right:1px solid #f0f0f0;content:""}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table{border-top:1px solid #f0f0f0}.ant-table.ant-table-bordered.ant-table-scroll-horizontal>.ant-table-container>.ant-table-body>table>tbody>tr.ant-table-expanded-row>td,.ant-table.ant-table-bordered.ant-table-scroll-horizontal>.ant-table-container>.ant-table-body>table>tbody>tr.ant-table-placeholder>td{border-right:0}.ant-table.ant-table-bordered.ant-table-middle>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered.ant-table-middle>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-12px -9px}.ant-table.ant-table-bordered.ant-table-small>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered.ant-table-small>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-8px -9px}.ant-table.ant-table-bordered>.ant-table-footer{border:1px solid #f0f0f0;border-top:0}.ant-table-cell .ant-table-container:first-child{border-top:0}.ant-table-cell-scrollbar:not([rowspan]){box-shadow:0 1px 0 1px #fafafa}.ant-table-wrapper{clear:both;max-width:100%}.ant-table-wrapper:before{display:table;content:""}.ant-table-wrapper:after{display:table;clear:both;content:""}.ant-table{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;font-size:14px;background:#fff;border-radius:2px}.ant-table table{width:100%;text-align:left;border-radius:2px 2px 0 0;border-collapse:separate;border-spacing:0}.ant-table-thead>tr>th,.ant-table-tbody>tr>td,.ant-table tfoot>tr>th,.ant-table tfoot>tr>td{position:relative;padding:16px;overflow-wrap:break-word}.ant-table-cell-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all}.ant-table-cell-ellipsis.ant-table-cell-fix-left-last,.ant-table-cell-ellipsis.ant-table-cell-fix-right-first{overflow:visible}.ant-table-cell-ellipsis.ant-table-cell-fix-left-last .ant-table-cell-content,.ant-table-cell-ellipsis.ant-table-cell-fix-right-first .ant-table-cell-content{display:block;overflow:hidden;text-overflow:ellipsis}.ant-table-cell-ellipsis .ant-table-column-title{overflow:hidden;text-overflow:ellipsis;word-break:keep-all}.ant-table-title{padding:16px}.ant-table-footer{padding:16px;color:#000000d9;background:#fafafa}.ant-table-thead>tr>th{position:relative;color:#000000d9;font-weight:500;text-align:left;background:#fafafa;border-bottom:1px solid #f0f0f0;transition:background .3s ease}.ant-table-thead>tr>th[colspan]:not([colspan="1"]){text-align:center}.ant-table-thead>tr>th:not(:last-child):not(.ant-table-selection-column):not(.ant-table-row-expand-icon-cell):not([colspan]):before{position:absolute;top:50%;right:0;width:1px;height:1.6em;background-color:#0000000f;transform:translateY(-50%);transition:background-color .3s;content:""}.ant-table-thead>tr:not(:last-child)>th[colspan]{border-bottom:0}.ant-table-tbody>tr>td{border-bottom:1px solid #f0f0f0;transition:background .3s}.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table,.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table{margin:-16px -16px -16px 33px}.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td,.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td{border-bottom:0}.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:first-child,.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:first-child,.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:last-child,.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:last-child{border-radius:0}.ant-table-tbody>tr.ant-table-row:hover>td,.ant-table-tbody>tr>td.ant-table-cell-row-hover{background:#fafafa}.ant-table-tbody>tr.ant-table-row-selected>td{background:#e6f7ff;border-color:#00000008}.ant-table-tbody>tr.ant-table-row-selected:hover>td{background:#dcf4ff}.ant-table-summary{position:relative;z-index:2;background:#fff}div.ant-table-summary{box-shadow:0 -1px #f0f0f0}.ant-table-summary>tr>th,.ant-table-summary>tr>td{border-bottom:1px solid #f0f0f0}.ant-table-pagination.ant-pagination{margin:16px 0}.ant-table-pagination{display:flex;flex-wrap:wrap;row-gap:8px}.ant-table-pagination>*{flex:none}.ant-table-pagination-left{justify-content:flex-start}.ant-table-pagination-center{justify-content:center}.ant-table-pagination-right{justify-content:flex-end}.ant-table-thead th.ant-table-column-has-sorters{outline:none;cursor:pointer;transition:all .3s}.ant-table-thead th.ant-table-column-has-sorters:hover{background:rgba(0,0,0,.04)}.ant-table-thead th.ant-table-column-has-sorters:hover:before{background-color:transparent!important}.ant-table-thead th.ant-table-column-has-sorters:focus-visible{color:#1890ff}.ant-table-thead th.ant-table-column-has-sorters.ant-table-cell-fix-left:hover,.ant-table-thead th.ant-table-column-has-sorters.ant-table-cell-fix-right:hover,.ant-table-thead th.ant-table-column-sort{background:#f5f5f5}.ant-table-thead th.ant-table-column-sort:before{background-color:transparent!important}td.ant-table-column-sort{background:#fafafa}.ant-table-column-title{position:relative;z-index:1;flex:1}.ant-table-column-sorters{display:flex;flex:auto;align-items:center;justify-content:space-between}.ant-table-column-sorters:after{position:absolute;inset:0;width:100%;height:100%;content:""}.ant-table-column-sorter{margin-left:4px;color:#bfbfbf;font-size:0;transition:color .3s}.ant-table-column-sorter-inner{display:inline-flex;flex-direction:column;align-items:center}.ant-table-column-sorter-up,.ant-table-column-sorter-down{font-size:11px}.ant-table-column-sorter-up.active,.ant-table-column-sorter-down.active{color:#1890ff}.ant-table-column-sorter-up+.ant-table-column-sorter-down{margin-top:-.3em}.ant-table-column-sorters:hover .ant-table-column-sorter{color:#a6a6a6}.ant-table-filter-column{display:flex;justify-content:space-between}.ant-table-filter-trigger{position:relative;display:flex;align-items:center;margin:-4px -8px -4px 4px;padding:0 4px;color:#bfbfbf;font-size:12px;border-radius:2px;cursor:pointer;transition:all .3s}.ant-table-filter-trigger:hover{color:#00000073;background:rgba(0,0,0,.04)}.ant-table-filter-trigger.active{color:#1890ff}.ant-table-filter-dropdown{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";min-width:120px;background-color:#fff;border-radius:2px;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d}.ant-table-filter-dropdown .ant-dropdown-menu{max-height:264px;overflow-x:hidden;border:0;box-shadow:none}.ant-table-filter-dropdown .ant-dropdown-menu:empty:after{display:block;padding:8px 0;color:#00000040;font-size:12px;text-align:center;content:"Not Found"}.ant-table-filter-dropdown-tree{padding:8px 8px 0}.ant-table-filter-dropdown-tree .ant-tree-treenode .ant-tree-node-content-wrapper:hover{background-color:#f5f5f5}.ant-table-filter-dropdown-tree .ant-tree-treenode-checkbox-checked .ant-tree-node-content-wrapper,.ant-table-filter-dropdown-tree .ant-tree-treenode-checkbox-checked .ant-tree-node-content-wrapper:hover{background-color:#bae7ff}.ant-table-filter-dropdown-search{padding:8px;border-bottom:1px #f0f0f0 solid}.ant-table-filter-dropdown-search-input input{min-width:140px}.ant-table-filter-dropdown-search-input .anticon{color:#00000040}.ant-table-filter-dropdown-checkall{width:100%;margin-bottom:4px;margin-left:4px}.ant-table-filter-dropdown-submenu>ul{max-height:calc(100vh - 130px);overflow-x:hidden;overflow-y:auto}.ant-table-filter-dropdown .ant-checkbox-wrapper+span,.ant-table-filter-dropdown-submenu .ant-checkbox-wrapper+span{padding-left:8px}.ant-table-filter-dropdown-btns{display:flex;justify-content:space-between;padding:7px 8px;overflow:hidden;background-color:inherit;border-top:1px solid #f0f0f0}.ant-table-selection-col{width:32px}.ant-table-bordered .ant-table-selection-col{width:50px}table tr th.ant-table-selection-column,table tr td.ant-table-selection-column{padding-right:8px;padding-left:8px;text-align:center}table tr th.ant-table-selection-column .ant-radio-wrapper,table tr td.ant-table-selection-column .ant-radio-wrapper{margin-right:0}table tr th.ant-table-selection-column.ant-table-cell-fix-left{z-index:3}table tr th.ant-table-selection-column:after{background-color:transparent!important}.ant-table-selection{position:relative;display:inline-flex;flex-direction:column}.ant-table-selection-extra{position:absolute;top:0;z-index:1;cursor:pointer;transition:all .3s;margin-inline-start:100%;padding-inline-start:4px}.ant-table-selection-extra .anticon{color:#bfbfbf;font-size:10px}.ant-table-selection-extra .anticon:hover{color:#a6a6a6}.ant-table-expand-icon-col{width:48px}.ant-table-row-expand-icon-cell{text-align:center}.ant-table-row-indent{float:left;height:1px}.ant-table-row-expand-icon{color:#1890ff;text-decoration:none;cursor:pointer;transition:color .3s;position:relative;display:inline-flex;float:left;box-sizing:border-box;width:17px;height:17px;padding:0;color:inherit;line-height:17px;background:#fff;border:1px solid #f0f0f0;border-radius:2px;outline:none;transform:scale(.94117647);transition:all .3s;-webkit-user-select:none;user-select:none}.ant-table-row-expand-icon:focus,.ant-table-row-expand-icon:hover{color:#40a9ff}.ant-table-row-expand-icon:active{color:#096dd9}.ant-table-row-expand-icon:focus,.ant-table-row-expand-icon:hover,.ant-table-row-expand-icon:active{border-color:currentcolor}.ant-table-row-expand-icon:before,.ant-table-row-expand-icon:after{position:absolute;background:currentcolor;transition:transform .3s ease-out;content:""}.ant-table-row-expand-icon:before{top:7px;right:3px;left:3px;height:1px}.ant-table-row-expand-icon:after{top:3px;bottom:3px;left:7px;width:1px;transform:rotate(90deg)}.ant-table-row-expand-icon-collapsed:before{transform:rotate(-180deg)}.ant-table-row-expand-icon-collapsed:after{transform:rotate(0)}.ant-table-row-expand-icon-spaced{background:transparent;border:0;visibility:hidden}.ant-table-row-expand-icon-spaced:before,.ant-table-row-expand-icon-spaced:after{display:none;content:none}.ant-table-row-indent+.ant-table-row-expand-icon{margin-top:2.5005px;margin-right:8px}tr.ant-table-expanded-row>td,tr.ant-table-expanded-row:hover>td{background:#fbfbfb}tr.ant-table-expanded-row .ant-descriptions-view{display:flex}tr.ant-table-expanded-row .ant-descriptions-view table{flex:auto;width:auto}.ant-table .ant-table-expanded-row-fixed{position:relative;margin:-16px;padding:16px}.ant-table-tbody>tr.ant-table-placeholder{text-align:center}.ant-table-empty .ant-table-tbody>tr.ant-table-placeholder{color:#00000040}.ant-table-tbody>tr.ant-table-placeholder:hover>td{background:#fff}.ant-table-cell-fix-left,.ant-table-cell-fix-right{position:sticky!important;z-index:2;background:#fff}.ant-table-cell-fix-left-first:after,.ant-table-cell-fix-left-last:after{position:absolute;top:0;right:0;bottom:-1px;width:30px;transform:translate(100%);transition:box-shadow .3s;content:"";pointer-events:none}.ant-table-cell-fix-right-first:after,.ant-table-cell-fix-right-last:after{position:absolute;top:0;bottom:-1px;left:0;width:30px;transform:translate(-100%);transition:box-shadow .3s;content:"";pointer-events:none}.ant-table .ant-table-container:before,.ant-table .ant-table-container:after{position:absolute;top:0;bottom:0;z-index:1;width:30px;transition:box-shadow .3s;content:"";pointer-events:none}.ant-table .ant-table-container:before{left:0}.ant-table .ant-table-container:after{right:0}.ant-table-ping-left:not(.ant-table-has-fix-left) .ant-table-container{position:relative}.ant-table-ping-left:not(.ant-table-has-fix-left) .ant-table-container:before{box-shadow:inset 10px 0 8px -8px #00000026}.ant-table-ping-left .ant-table-cell-fix-left-first:after,.ant-table-ping-left .ant-table-cell-fix-left-last:after{box-shadow:inset 10px 0 8px -8px #00000026}.ant-table-ping-left .ant-table-cell-fix-left-last:before{background-color:transparent!important}.ant-table-ping-right:not(.ant-table-has-fix-right) .ant-table-container{position:relative}.ant-table-ping-right:not(.ant-table-has-fix-right) .ant-table-container:after{box-shadow:inset -10px 0 8px -8px #00000026}.ant-table-ping-right .ant-table-cell-fix-right-first:after,.ant-table-ping-right .ant-table-cell-fix-right-last:after{box-shadow:inset -10px 0 8px -8px #00000026}.ant-table-sticky-holder{position:sticky;z-index:3;background:#fff}.ant-table-sticky-scroll{position:sticky;bottom:0;z-index:3;display:flex;align-items:center;background:#ffffff;border-top:1px solid #f0f0f0;opacity:.6}.ant-table-sticky-scroll:hover{transform-origin:center bottom}.ant-table-sticky-scroll-bar{height:8px;background-color:#00000059;border-radius:4px}.ant-table-sticky-scroll-bar:hover,.ant-table-sticky-scroll-bar-active{background-color:#000c}.ant-table-custom-column col{width:auto!important;min-width:auto!important;display:none}.ant-table-custom-column .ant-table-thead .ant-table-row{width:100%;display:flex;justify-content:space-between}.ant-table-custom-column .ant-table-thead .ant-table-row th{overflow:hidden}.ant-table-custom-column .ant-table-tbody .ant-table-row{width:100%;display:flex;justify-content:space-between}.ant-table-custom-column .ant-table-tbody .ant-table-row td{overflow:hidden}.ant-table-custom-column .ant-table-tbody .ant-table-row .nz-disable-td{width:100%}.ant-table-custom-column .ant-table-fixed tr .ant-table-cell-fix-left-last,.ant-table-custom-column .ant-table-fixed tr .ant-table-cell-fix-right-first{overflow:visible}.ant-table-custom-column .ant-table-fixed .ant-table-row{width:100%}@media all and (-ms-high-contrast: none){.ant-table-ping-left .ant-table-cell-fix-left-last:after{box-shadow:none!important}.ant-table-ping-right .ant-table-cell-fix-right-first:after{box-shadow:none!important}}.ant-table-title{border-radius:2px 2px 0 0}.ant-table-title+.ant-table-container{border-top-left-radius:0;border-top-right-radius:0}.ant-table-title+.ant-table-container table>thead>tr:first-child th:first-child{border-radius:0}.ant-table-title+.ant-table-container table>thead>tr:first-child th:last-child{border-radius:0}.ant-table-container{border-top-left-radius:2px;border-top-right-radius:2px}.ant-table-container table>thead>tr:first-child th:first-child{border-top-left-radius:2px}.ant-table-container table>thead>tr:first-child th:last-child{border-top-right-radius:2px}.ant-table-footer{border-radius:0 0 2px 2px}.ant-table-wrapper-rtl,.ant-table-rtl{direction:rtl}.ant-table-wrapper-rtl .ant-table table{text-align:right}.ant-table-wrapper-rtl .ant-table-thead>tr>th[colspan]:not([colspan="1"]){text-align:center}.ant-table-wrapper-rtl .ant-table-thead>tr>th:not(:last-child):not(.ant-table-selection-column):not(.ant-table-row-expand-icon-cell):not([colspan]):before{right:auto;left:0}.ant-table-wrapper-rtl .ant-table-thead>tr>th{text-align:right}.ant-table-tbody>tr .ant-table-wrapper:only-child .ant-table.ant-table-rtl{margin:-16px 33px -16px -16px}.ant-table-wrapper.ant-table-wrapper-rtl .ant-table-pagination-left{justify-content:flex-end}.ant-table-wrapper.ant-table-wrapper-rtl .ant-table-pagination-right{justify-content:flex-start}.ant-table-wrapper-rtl .ant-table-column-sorter{margin-right:4px;margin-left:0}.ant-table-wrapper-rtl .ant-table-filter-column-title{padding:16px 16px 16px 2.3em}.ant-table-rtl .ant-table-thead tr th.ant-table-column-has-sorters .ant-table-filter-column-title{padding:0 0 0 2.3em}.ant-table-wrapper-rtl .ant-table-filter-trigger{margin:-4px 4px -4px -8px}.ant-dropdown-rtl .ant-table-filter-dropdown .ant-checkbox-wrapper+span,.ant-dropdown-rtl .ant-table-filter-dropdown-submenu .ant-checkbox-wrapper+span,.ant-dropdown-menu-submenu-rtl.ant-table-filter-dropdown .ant-checkbox-wrapper+span,.ant-dropdown-menu-submenu-rtl.ant-table-filter-dropdown-submenu .ant-checkbox-wrapper+span{padding-right:8px;padding-left:0}.ant-table-wrapper-rtl .ant-table-selection{text-align:center}.ant-table-wrapper-rtl .ant-table-row-indent,.ant-table-wrapper-rtl .ant-table-row-expand-icon{float:right}.ant-table-wrapper-rtl .ant-table-row-indent+.ant-table-row-expand-icon{margin-right:0;margin-left:8px}.ant-table-wrapper-rtl .ant-table-row-expand-icon:after{transform:rotate(-90deg)}.ant-table-wrapper-rtl .ant-table-row-expand-icon-collapsed:before{transform:rotate(180deg)}.ant-table-wrapper-rtl .ant-table-row-expand-icon-collapsed:after{transform:rotate(0)}nz-table,nz-table-title-footer,nz-table-inner-scroll,nz-table-inner-default,nz-table-selection{display:block}nz-filter-trigger{display:inline-flex}.nz-table-out-bordered>.ant-table-title{border:1px solid #f0f0f0;border-bottom:0}.nz-table-out-bordered>.ant-table-container{border:1px solid #f0f0f0;border-bottom:0}.nz-table-out-bordered>.ant-table-footer{border:1px solid #f0f0f0;border-top:0}cdk-virtual-scroll-viewport.ant-table-body{overflow-y:scroll}.nz-table-hide-scrollbar{scrollbar-color:#fafafa #fafafa}.nz-table-hide-scrollbar::-webkit-scrollbar{background-color:#fafafa}.ant-table.ant-table-small .nz-table-hide-scrollbar{scrollbar-color:#fafafa #fafafa}.ant-table.ant-table-small .nz-table-hide-scrollbar::-webkit-scrollbar{background-color:transparent}.ant-table-wrapper-rtl .ant-table thead>tr>th.ant-table-selection-column{text-align:center}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tfoot>tr>td{border-right:1px solid #f0f0f0}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>thead>tr:not(:last-child)>th{border-bottom:1px solid #f0f0f0}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>thead>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tfoot>tr>.ant-table-cell-fix-right-first:after{border-right:1px solid #f0f0f0}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-16px -17px}.ant-table.ant-table-bordered>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td>.ant-table-expanded-row-fixed:after{position:absolute;top:0;right:1px;bottom:0;border-right:1px solid #f0f0f0;content:""}.ant-table.ant-table-bordered.ant-table-scroll-horizontal>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr.ant-table-expanded-row>td,.ant-table.ant-table-bordered.ant-table-scroll-horizontal>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr.ant-table-placeholder>td{border-right:0}.ant-table.ant-table-bordered.ant-table-middle>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-12px -9px}.ant-table.ant-table-bordered.ant-table-small>.ant-table-container>.cdk-virtual-scroll-viewport>.cdk-virtual-scroll-content-wrapper>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-8px -9px}.ant-tabs-small>.ant-tabs-nav .ant-tabs-tab{padding:8px 0;font-size:14px}.ant-tabs-large>.ant-tabs-nav .ant-tabs-tab{padding:16px 0;font-size:16px}.ant-tabs-card.ant-tabs-small>.ant-tabs-nav .ant-tabs-tab{padding:6px 16px}.ant-tabs-card.ant-tabs-large>.ant-tabs-nav .ant-tabs-tab{padding:7px 16px 6px}.ant-tabs-rtl{direction:rtl}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab{margin:0 0 0 32px}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab:last-of-type{margin-left:0}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab .anticon{margin-right:0;margin-left:12px}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab .ant-tabs-tab-remove{margin-right:8px;margin-left:-4px}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab .ant-tabs-tab-remove .anticon{margin:0}.ant-tabs-rtl.ant-tabs-left>.ant-tabs-nav{order:1}.ant-tabs-rtl.ant-tabs-left>.ant-tabs-content-holder{order:0}.ant-tabs-rtl.ant-tabs-right>.ant-tabs-nav{order:0}.ant-tabs-rtl.ant-tabs-right>.ant-tabs-content-holder{order:1}.ant-tabs-rtl.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-rtl.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-rtl.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-rtl.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab{margin-right:2px;margin-left:0}.ant-tabs-rtl.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs-rtl.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs-rtl.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs-rtl.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-add{margin-right:2px;margin-left:0}.ant-tabs-dropdown-rtl{direction:rtl}.ant-tabs-dropdown-rtl .ant-tabs-dropdown-menu-item{text-align:right}.ant-tabs-top,.ant-tabs-bottom{flex-direction:column}.ant-tabs-top>.ant-tabs-nav,.ant-tabs-bottom>.ant-tabs-nav,.ant-tabs-top>div>.ant-tabs-nav,.ant-tabs-bottom>div>.ant-tabs-nav{margin:0 0 16px}.ant-tabs-top>.ant-tabs-nav:before,.ant-tabs-bottom>.ant-tabs-nav:before,.ant-tabs-top>div>.ant-tabs-nav:before,.ant-tabs-bottom>div>.ant-tabs-nav:before{position:absolute;right:0;left:0;border-bottom:1px solid #f0f0f0;content:""}.ant-tabs-top>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-ink-bar{height:2px}.ant-tabs-top>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-ink-bar-animated{transition:width .3s,left .3s,right .3s}.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap:after,.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap:after,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap:after,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap:after{top:0;bottom:0;width:30px}.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap:before{left:0;box-shadow:inset 10px 0 8px -8px #00000014}.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap:after,.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap:after,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap:after,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap:after{right:0;box-shadow:inset -10px 0 8px -8px #00000014}.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-left:before,.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-left:before,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-left:before,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-left:before{opacity:1}.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-right:after,.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-right:after,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-right:after,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-right:after{opacity:1}.ant-tabs-top>.ant-tabs-nav:before,.ant-tabs-top>div>.ant-tabs-nav:before{bottom:0}.ant-tabs-top>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-ink-bar{bottom:0}.ant-tabs-bottom>.ant-tabs-nav,.ant-tabs-bottom>div>.ant-tabs-nav{order:1;margin-top:16px;margin-bottom:0}.ant-tabs-bottom>.ant-tabs-nav:before,.ant-tabs-bottom>div>.ant-tabs-nav:before{top:0}.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-ink-bar{top:0}.ant-tabs-bottom>.ant-tabs-content-holder,.ant-tabs-bottom>div>.ant-tabs-content-holder{order:0}.ant-tabs-left>.ant-tabs-nav,.ant-tabs-right>.ant-tabs-nav,.ant-tabs-left>div>.ant-tabs-nav,.ant-tabs-right>div>.ant-tabs-nav{flex-direction:column;min-width:50px}.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab{padding:8px 24px;text-align:center}.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab{margin:16px 0 0}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap{flex-direction:column}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap:after,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap:after,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap:after,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap:after{right:0;left:0;height:30px}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap:before{top:0;box-shadow:inset 0 10px 8px -8px #00000014}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap:after,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap:after,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap:after,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap:after{bottom:0;box-shadow:inset 0 -10px 8px -8px #00000014}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-top:before,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-top:before,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-top:before,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-top:before{opacity:1}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-bottom:after,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-bottom:after,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-bottom:after,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-bottom:after{opacity:1}.ant-tabs-left>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-right>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-ink-bar{width:2px}.ant-tabs-left>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-right>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-ink-bar-animated{transition:height .3s,top .3s}.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs-left>.ant-tabs-nav .ant-tabs-nav-operations,.ant-tabs-right>.ant-tabs-nav .ant-tabs-nav-operations,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-nav-operations,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-nav-operations{flex:1 0 auto;flex-direction:column}.ant-tabs-left>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-ink-bar{right:0}.ant-tabs-left>.ant-tabs-content-holder,.ant-tabs-left>div>.ant-tabs-content-holder{margin-left:-1px;border-left:1px solid #f0f0f0}.ant-tabs-left>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane,.ant-tabs-left>div>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane{padding-left:24px}.ant-tabs-right>.ant-tabs-nav,.ant-tabs-right>div>.ant-tabs-nav{order:1}.ant-tabs-right>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-ink-bar{left:0}.ant-tabs-right>.ant-tabs-content-holder,.ant-tabs-right>div>.ant-tabs-content-holder{order:0;margin-right:-1px;border-right:1px solid #f0f0f0}.ant-tabs-right>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane,.ant-tabs-right>div>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane{padding-right:24px}.ant-tabs-dropdown{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:absolute;top:-9999px;left:-9999px;z-index:1050;display:block}.ant-tabs-dropdown-hidden{display:none}.ant-tabs-dropdown-menu{max-height:200px;margin:0;padding:4px 0;overflow-x:hidden;overflow-y:auto;text-align:left;list-style-type:none;background-color:#fff;background-clip:padding-box;border-radius:2px;outline:none;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d}.ant-tabs-dropdown-menu-item{display:flex;align-items:center;min-width:120px;margin:0;padding:5px 12px;overflow:hidden;color:#000000d9;font-weight:400;font-size:14px;line-height:22px;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:all .3s}.ant-tabs-dropdown-menu-item>span{flex:1;white-space:nowrap}.ant-tabs-dropdown-menu-item-remove{flex:none;margin-left:12px;color:#00000073;font-size:12px;background:transparent;border:0;cursor:pointer}.ant-tabs-dropdown-menu-item-remove:hover{color:#40a9ff}.ant-tabs-dropdown-menu-item:hover{background:#f5f5f5}.ant-tabs-dropdown-menu-item-disabled,.ant-tabs-dropdown-menu-item-disabled:hover{color:#00000040;background:transparent;cursor:not-allowed}.ant-tabs-card>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card>div>.ant-tabs-nav .ant-tabs-tab{margin:0;padding:8px 16px;background:#fafafa;border:1px solid #f0f0f0;transition:all .3s cubic-bezier(.645,.045,.355,1)}.ant-tabs-card>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card>div>.ant-tabs-nav .ant-tabs-tab-active{color:#1890ff;background:#fff}.ant-tabs-card>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-card>div>.ant-tabs-nav .ant-tabs-ink-bar{visibility:hidden}.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab{margin-left:2px}.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-tab{border-radius:2px 2px 0 0}.ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-tab-active{border-bottom-color:#fff}.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-tab{border-radius:0 0 2px 2px}.ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-tab-active{border-top-color:#fff}.ant-tabs-card.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab{margin-top:2px}.ant-tabs-card.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab{border-radius:2px 0 0 2px}.ant-tabs-card.ant-tabs-left>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card.ant-tabs-left>div>.ant-tabs-nav .ant-tabs-tab-active{border-right-color:#fff}.ant-tabs-card.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab{border-radius:0 2px 2px 0}.ant-tabs-card.ant-tabs-right>.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card.ant-tabs-right>div>.ant-tabs-nav .ant-tabs-tab-active{border-left-color:#fff}.ant-tabs{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";display:flex}.ant-tabs>.ant-tabs-nav,.ant-tabs>div>.ant-tabs-nav{position:relative;display:flex;flex:none;align-items:center}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-wrap,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-wrap{position:relative;display:inline-block;display:flex;flex:auto;align-self:stretch;overflow:hidden;white-space:nowrap;transform:translate(0)}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-wrap:before,.ant-tabs>.ant-tabs-nav .ant-tabs-nav-wrap:after,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-wrap:after{position:absolute;z-index:1;opacity:0;transition:opacity .3s;content:"";pointer-events:none}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-list{position:relative;display:flex;transition:transform .3s}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-operations,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-operations{display:flex;align-self:stretch}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-operations-hidden,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-operations-hidden{position:absolute;visibility:hidden;pointer-events:none}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-more,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-more{position:relative;padding:8px 16px;background:transparent;border:0}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-more:after,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-more:after{position:absolute;right:0;bottom:0;left:0;height:5px;transform:translateY(100%);content:""}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add{min-width:40px;margin-left:2px;padding:0 8px;background:#fafafa;border:1px solid #f0f0f0;border-radius:2px 2px 0 0;outline:none;cursor:pointer;transition:all .3s cubic-bezier(.645,.045,.355,1)}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add:hover,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add:hover{color:#40a9ff}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add:active,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add:active,.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add:focus,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add:focus{color:#096dd9}.ant-tabs-extra-content{flex:none}.ant-tabs-centered>.ant-tabs-nav .ant-tabs-nav-wrap:not([class*=ant-tabs-nav-wrap-ping]),.ant-tabs-centered>div>.ant-tabs-nav .ant-tabs-nav-wrap:not([class*=ant-tabs-nav-wrap-ping]){justify-content:center}.ant-tabs-ink-bar{position:absolute;background:#1890ff;pointer-events:none}.ant-tabs-tab{position:relative;display:inline-flex;align-items:center;padding:12px 0;font-size:14px;background:transparent;border:0;outline:none;cursor:pointer}.ant-tabs-tab-btn:focus,.ant-tabs-tab-remove:focus,.ant-tabs-tab-btn:active,.ant-tabs-tab-remove:active{color:#096dd9}.ant-tabs-tab-btn{outline:none;transition:all .3s}.ant-tabs-tab-remove{flex:none;margin-right:-4px;margin-left:8px;color:#00000073;font-size:12px;background:transparent;border:none;outline:none;cursor:pointer;transition:all .3s}.ant-tabs-tab-remove:hover{color:#000000d9}.ant-tabs-tab:hover{color:#40a9ff}.ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn{color:#1890ff;text-shadow:0 0 .25px currentcolor}.ant-tabs-tab.ant-tabs-tab-disabled{color:#00000040;cursor:not-allowed}.ant-tabs-tab.ant-tabs-tab-disabled .ant-tabs-tab-btn:focus,.ant-tabs-tab.ant-tabs-tab-disabled .ant-tabs-tab-remove:focus,.ant-tabs-tab.ant-tabs-tab-disabled .ant-tabs-tab-btn:active,.ant-tabs-tab.ant-tabs-tab-disabled .ant-tabs-tab-remove:active{color:#00000040}.ant-tabs-tab .ant-tabs-tab-remove .anticon{margin:0}.ant-tabs-tab .anticon{margin-right:12px}.ant-tabs-tab+.ant-tabs-tab{margin:0 0 0 32px}.ant-tabs-content{display:flex;width:100%}.ant-tabs-content-holder{flex:auto;min-width:0;min-height:0}.ant-tabs-content-animated{transition:margin .3s}.ant-tabs-tabpane{flex:none;width:100%;outline:none}.ant-tabs-dropdown-menu-item a[nz-tab-link]{position:relative}.ant-tabs-tab a[nz-tab-link]:before{position:absolute;inset:0;background-color:transparent;content:""}.ant-tabs-tab a[nz-tab-link]~*{position:relative}nz-tabset,nz-tab-nav-operation,nz-tabs-nav{display:block;overflow:hidden}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu{max-height:200px;margin:0;padding:4px 0;overflow-x:hidden;overflow-y:auto;text-align:left;list-style-type:none;background-color:#fff;background-clip:padding-box;border-radius:2px;outline:none;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item{min-width:120px;margin:0;padding:5px 12px;overflow:hidden;color:#000000d9;font-weight:400;font-size:14px;line-height:22px;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:all .3s}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item:hover{background:#f5f5f5}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item-disabled,.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item-disabled:hover{color:#00000040;background:transparent;cursor:not-allowed}.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item-disabled a,.nz-tabs-dropdown.ant-dropdown .ant-dropdown-menu-item-disabled:hover a{pointer-events:none;color:#00000040}.ant-tabs-rtl .ant-tabs-rtl-tab-next{right:auto;left:2px}.ant-tabs-tab-disabled a{pointer-events:none;color:#00000040}.ant-tabs>.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs>div>.ant-tabs-nav .ant-tabs-nav-add{min-height:40px}.ant-tag{box-sizing:border-box;margin:0 8px 0 0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";display:inline-block;height:auto;padding:0 7px;font-size:12px;line-height:20px;white-space:nowrap;background:#fafafa;border:1px solid #d9d9d9;border-radius:2px;opacity:1;transition:all .3s}.ant-tag,.ant-tag a,.ant-tag a:hover{color:#000000d9}.ant-tag>a:first-child:last-child{display:inline-block;margin:0 -8px;padding:0 8px}.ant-tag-close-icon{margin-left:3px;color:#00000073;font-size:10px;cursor:pointer;transition:all .3s}.ant-tag-close-icon:hover{color:#000000d9}.ant-tag-has-color{border-color:transparent}.ant-tag-has-color,.ant-tag-has-color a,.ant-tag-has-color a:hover,.ant-tag-has-color .anticon-close,.ant-tag-has-color .anticon-close:hover{color:#fff}.ant-tag-checkable{background-color:transparent;border-color:transparent;cursor:pointer}.ant-tag-checkable:not(.ant-tag-checkable-checked):hover{color:#1890ff}.ant-tag-checkable:active,.ant-tag-checkable-checked{color:#fff}.ant-tag-checkable-checked{background-color:#1890ff}.ant-tag-checkable:active{background-color:#096dd9}.ant-tag-hidden{display:none}.ant-tag-pink{color:#c41d7f;background:#fff0f6;border-color:#ffadd2}.ant-tag-pink-inverse{color:#fff;background:#eb2f96;border-color:#eb2f96}.ant-tag-magenta{color:#c41d7f;background:#fff0f6;border-color:#ffadd2}.ant-tag-magenta-inverse{color:#fff;background:#eb2f96;border-color:#eb2f96}.ant-tag-red{color:#cf1322;background:#fff1f0;border-color:#ffa39e}.ant-tag-red-inverse{color:#fff;background:#f5222d;border-color:#f5222d}.ant-tag-volcano{color:#d4380d;background:#fff2e8;border-color:#ffbb96}.ant-tag-volcano-inverse{color:#fff;background:#fa541c;border-color:#fa541c}.ant-tag-orange{color:#d46b08;background:#fff7e6;border-color:#ffd591}.ant-tag-orange-inverse{color:#fff;background:#fa8c16;border-color:#fa8c16}.ant-tag-yellow{color:#d4b106;background:#feffe6;border-color:#fffb8f}.ant-tag-yellow-inverse{color:#fff;background:#fadb14;border-color:#fadb14}.ant-tag-gold{color:#d48806;background:#fffbe6;border-color:#ffe58f}.ant-tag-gold-inverse{color:#fff;background:#faad14;border-color:#faad14}.ant-tag-cyan{color:#08979c;background:#e6fffb;border-color:#87e8de}.ant-tag-cyan-inverse{color:#fff;background:#13c2c2;border-color:#13c2c2}.ant-tag-lime{color:#7cb305;background:#fcffe6;border-color:#eaff8f}.ant-tag-lime-inverse{color:#fff;background:#a0d911;border-color:#a0d911}.ant-tag-green{color:#389e0d;background:#f6ffed;border-color:#b7eb8f}.ant-tag-green-inverse{color:#fff;background:#52c41a;border-color:#52c41a}.ant-tag-blue{color:#096dd9;background:#e6f7ff;border-color:#91d5ff}.ant-tag-blue-inverse{color:#fff;background:#1890ff;border-color:#1890ff}.ant-tag-geekblue{color:#1d39c4;background:#f0f5ff;border-color:#adc6ff}.ant-tag-geekblue-inverse{color:#fff;background:#2f54eb;border-color:#2f54eb}.ant-tag-purple{color:#531dab;background:#f9f0ff;border-color:#d3adf7}.ant-tag-purple-inverse{color:#fff;background:#722ed1;border-color:#722ed1}.ant-tag-success{color:#52c41a;background:#f6ffed;border-color:#b7eb8f}.ant-tag-processing{color:#1890ff;background:#e6f7ff;border-color:#91d5ff}.ant-tag-error{color:#ff4d4f;background:#fff2f0;border-color:#ffccc7}.ant-tag-warning{color:#faad14;background:#fffbe6;border-color:#ffe58f}.ant-tag>.anticon+span,.ant-tag>span+.anticon{margin-left:7px}.ant-tag.ant-tag-rtl{margin-right:0;margin-left:8px;direction:rtl;text-align:right}.ant-tag-rtl .ant-tag-close-icon{margin-right:3px;margin-left:0}.ant-tag-rtl.ant-tag>.anticon+span,.ant-tag-rtl.ant-tag>span+.anticon{margin-right:7px;margin-left:0}.ant-timeline{box-sizing:border-box;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;font-feature-settings:"tnum";margin:0;padding:0;list-style:none}.ant-timeline-item{position:relative;margin:0;padding-bottom:20px;font-size:14px;list-style:none}.ant-timeline-item-tail{position:absolute;top:10px;left:4px;height:calc(100% - 10px);border-left:2px solid #f0f0f0}.ant-timeline-item-pending .ant-timeline-item-head{font-size:12px;background-color:transparent}.ant-timeline-item-pending .ant-timeline-item-tail{display:none}.ant-timeline-item-head{position:absolute;width:10px;height:10px;background-color:#fff;border:2px solid transparent;border-radius:100px}.ant-timeline-item-head-blue{color:#1890ff;border-color:#1890ff}.ant-timeline-item-head-red{color:#ff4d4f;border-color:#ff4d4f}.ant-timeline-item-head-green{color:#52c41a;border-color:#52c41a}.ant-timeline-item-head-gray{color:#00000040;border-color:#00000040}.ant-timeline-item-head-custom{position:absolute;top:5.5px;left:5px;width:auto;height:auto;margin-top:0;padding:3px 1px;line-height:1;text-align:center;border:0;border-radius:0;transform:translate(-50%,-50%)}.ant-timeline-item-content{position:relative;top:-7.001px;margin:0 0 0 26px;word-break:break-word}.ant-timeline-item-last>.ant-timeline-item-tail{display:none}.ant-timeline-item-last>.ant-timeline-item-content{min-height:48px}.ant-timeline.ant-timeline-alternate .ant-timeline-item-tail,.ant-timeline.ant-timeline-right .ant-timeline-item-tail,.ant-timeline.ant-timeline-label .ant-timeline-item-tail,.ant-timeline.ant-timeline-alternate .ant-timeline-item-head,.ant-timeline.ant-timeline-right .ant-timeline-item-head,.ant-timeline.ant-timeline-label .ant-timeline-item-head,.ant-timeline.ant-timeline-alternate .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-right .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-label .ant-timeline-item-head-custom{left:50%}.ant-timeline.ant-timeline-alternate .ant-timeline-item-head,.ant-timeline.ant-timeline-right .ant-timeline-item-head,.ant-timeline.ant-timeline-label .ant-timeline-item-head{margin-left:-4px}.ant-timeline.ant-timeline-alternate .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-right .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-label .ant-timeline-item-head-custom{margin-left:1px}.ant-timeline.ant-timeline-alternate .ant-timeline-item-left .ant-timeline-item-content,.ant-timeline.ant-timeline-right .ant-timeline-item-left .ant-timeline-item-content,.ant-timeline.ant-timeline-label .ant-timeline-item-left .ant-timeline-item-content{left:calc(50% - 4px);width:calc(50% - 14px);text-align:left}.ant-timeline.ant-timeline-alternate .ant-timeline-item-right .ant-timeline-item-content,.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-content,.ant-timeline.ant-timeline-label .ant-timeline-item-right .ant-timeline-item-content{width:calc(50% - 12px);margin:0;text-align:right}.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-tail,.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-head,.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-head-custom{left:calc(100% - 6px)}.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-content{width:calc(100% - 18px)}.ant-timeline.ant-timeline-pending .ant-timeline-item-last .ant-timeline-item-tail{display:block;height:calc(100% - 14px);border-left:2px dotted #f0f0f0}.ant-timeline.ant-timeline-reverse .ant-timeline-item-last .ant-timeline-item-tail{display:none}.ant-timeline.ant-timeline-reverse .ant-timeline-item-pending .ant-timeline-item-tail{top:15px;display:block;height:calc(100% - 15px);border-left:2px dotted #f0f0f0}.ant-timeline.ant-timeline-reverse .ant-timeline-item-pending .ant-timeline-item-content{min-height:48px}.ant-timeline.ant-timeline-label .ant-timeline-item-label{position:absolute;top:-7.001px;width:calc(50% - 12px);text-align:right}.ant-timeline.ant-timeline-label .ant-timeline-item-right .ant-timeline-item-label{left:calc(50% + 14px);width:calc(50% - 14px);text-align:left}.ant-timeline-rtl{direction:rtl}.ant-timeline-rtl .ant-timeline-item-tail{right:4px;left:auto;border-right:2px solid #f0f0f0;border-left:none}.ant-timeline-rtl .ant-timeline-item-head-custom{right:5px;left:auto;transform:translate(50%,-50%)}.ant-timeline-rtl .ant-timeline-item-content{margin:0 18px 0 0}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-tail,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-tail,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-tail,.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-head-custom{right:50%;left:auto}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-head{margin-right:-4px;margin-left:0}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-head-custom,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-head-custom{margin-right:1px;margin-left:0}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-left .ant-timeline-item-content,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-left .ant-timeline-item-content,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-left .ant-timeline-item-content{right:calc(50% - 4px);left:auto;text-align:right}.ant-timeline-rtl.ant-timeline.ant-timeline-alternate .ant-timeline-item-right .ant-timeline-item-content,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-content,.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-right .ant-timeline-item-content{text-align:left}.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-tail,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-head,.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-head-custom{right:0;left:auto}.ant-timeline-rtl.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-content{width:100%;margin-right:18px;text-align:right}.ant-timeline-rtl.ant-timeline.ant-timeline-pending .ant-timeline-item-last .ant-timeline-item-tail,.ant-timeline-rtl.ant-timeline.ant-timeline-reverse .ant-timeline-item-pending .ant-timeline-item-tail{border-right:2px dotted #f0f0f0;border-left:none}.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-label{text-align:left}.ant-timeline-rtl.ant-timeline.ant-timeline-label .ant-timeline-item-right .ant-timeline-item-label{right:calc(50% + 14px);text-align:right}.ant-tooltip{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:absolute;z-index:1070;display:block;width:max-content;width:intrinsic;max-width:250px;visibility:visible}.ant-tooltip-content{position:relative}.ant-tooltip-hidden{display:none}.ant-tooltip-placement-top,.ant-tooltip-placement-topLeft,.ant-tooltip-placement-topRight{padding-bottom:14.3137085px}.ant-tooltip-placement-right,.ant-tooltip-placement-rightTop,.ant-tooltip-placement-rightBottom{padding-left:14.3137085px}.ant-tooltip-placement-bottom,.ant-tooltip-placement-bottomLeft,.ant-tooltip-placement-bottomRight{padding-top:14.3137085px}.ant-tooltip-placement-left,.ant-tooltip-placement-leftTop,.ant-tooltip-placement-leftBottom{padding-right:14.3137085px}.ant-tooltip-inner{min-width:30px;min-height:32px;padding:6px 8px;color:#fff;text-align:left;text-decoration:none;word-wrap:break-word;background-color:#000000bf;border-radius:2px;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d}.ant-tooltip-arrow{position:absolute;z-index:2;display:block;width:22px;height:22px;overflow:hidden;background:transparent;pointer-events:none}.ant-tooltip-arrow-content{--antd-arrow-background-color: linear-gradient(to right bottom, rgba(0, 0, 0, .65), rgba(0, 0, 0, .75));position:absolute;inset:0;display:block;width:11.3137085px;height:11.3137085px;margin:auto;background-color:transparent;content:"";pointer-events:auto;border-radius:0 0 2px;pointer-events:none}.ant-tooltip-arrow-content:before{position:absolute;top:-11.3137085px;left:-11.3137085px;width:33.9411255px;height:33.9411255px;background:var(--antd-arrow-background-color);background-repeat:no-repeat;background-position:-10px -10px;content:"";clip-path:path("M 9.849242404917499 24.091883092036785 A 5 5 0 0 1 13.384776310850237 22.627416997969522 L 20.627416997969522 22.627416997969522 A 2 2 0 0 0 22.627416997969522 20.627416997969522 L 22.627416997969522 13.384776310850237 A 5 5 0 0 1 24.091883092036785 9.849242404917499 L 23.091883092036785 9.849242404917499 L 9.849242404917499 23.091883092036785 Z")}.ant-tooltip-placement-top .ant-tooltip-arrow,.ant-tooltip-placement-topLeft .ant-tooltip-arrow,.ant-tooltip-placement-topRight .ant-tooltip-arrow{bottom:0;transform:translateY(100%)}.ant-tooltip-placement-top .ant-tooltip-arrow-content,.ant-tooltip-placement-topLeft .ant-tooltip-arrow-content,.ant-tooltip-placement-topRight .ant-tooltip-arrow-content{box-shadow:3px 3px 7px #00000012;transform:translateY(-11px) rotate(45deg)}.ant-tooltip-placement-top .ant-tooltip-arrow{left:50%;transform:translateY(100%) translate(-50%)}.ant-tooltip-placement-topLeft .ant-tooltip-arrow{left:13px}.ant-tooltip-placement-topRight .ant-tooltip-arrow{right:13px}.ant-tooltip-placement-right .ant-tooltip-arrow,.ant-tooltip-placement-rightTop .ant-tooltip-arrow,.ant-tooltip-placement-rightBottom .ant-tooltip-arrow{left:0;transform:translate(-100%)}.ant-tooltip-placement-right .ant-tooltip-arrow-content,.ant-tooltip-placement-rightTop .ant-tooltip-arrow-content,.ant-tooltip-placement-rightBottom .ant-tooltip-arrow-content{box-shadow:-3px 3px 7px #00000012;transform:translate(11px) rotate(135deg)}.ant-tooltip-placement-right .ant-tooltip-arrow{top:50%;transform:translate(-100%) translateY(-50%)}.ant-tooltip-placement-rightTop .ant-tooltip-arrow{top:5px}.ant-tooltip-placement-rightBottom .ant-tooltip-arrow{bottom:5px}.ant-tooltip-placement-left .ant-tooltip-arrow,.ant-tooltip-placement-leftTop .ant-tooltip-arrow,.ant-tooltip-placement-leftBottom .ant-tooltip-arrow{right:0;transform:translate(100%)}.ant-tooltip-placement-left .ant-tooltip-arrow-content,.ant-tooltip-placement-leftTop .ant-tooltip-arrow-content,.ant-tooltip-placement-leftBottom .ant-tooltip-arrow-content{box-shadow:3px -3px 7px #00000012;transform:translate(-11px) rotate(315deg)}.ant-tooltip-placement-left .ant-tooltip-arrow{top:50%;transform:translate(100%) translateY(-50%)}.ant-tooltip-placement-leftTop .ant-tooltip-arrow{top:5px}.ant-tooltip-placement-leftBottom .ant-tooltip-arrow{bottom:5px}.ant-tooltip-placement-bottom .ant-tooltip-arrow,.ant-tooltip-placement-bottomLeft .ant-tooltip-arrow,.ant-tooltip-placement-bottomRight .ant-tooltip-arrow{top:0;transform:translateY(-100%)}.ant-tooltip-placement-bottom .ant-tooltip-arrow-content,.ant-tooltip-placement-bottomLeft .ant-tooltip-arrow-content,.ant-tooltip-placement-bottomRight .ant-tooltip-arrow-content{box-shadow:-3px -3px 7px #00000012;transform:translateY(11px) rotate(225deg)}.ant-tooltip-placement-bottom .ant-tooltip-arrow{left:50%;transform:translateY(-100%) translate(-50%)}.ant-tooltip-placement-bottomLeft .ant-tooltip-arrow{left:13px}.ant-tooltip-placement-bottomRight .ant-tooltip-arrow{right:13px}.ant-tooltip-pink .ant-tooltip-inner{background-color:#eb2f96}.ant-tooltip-pink .ant-tooltip-arrow-content:before{background:#eb2f96}.ant-tooltip-magenta .ant-tooltip-inner{background-color:#eb2f96}.ant-tooltip-magenta .ant-tooltip-arrow-content:before{background:#eb2f96}.ant-tooltip-red .ant-tooltip-inner{background-color:#f5222d}.ant-tooltip-red .ant-tooltip-arrow-content:before{background:#f5222d}.ant-tooltip-volcano .ant-tooltip-inner{background-color:#fa541c}.ant-tooltip-volcano .ant-tooltip-arrow-content:before{background:#fa541c}.ant-tooltip-orange .ant-tooltip-inner{background-color:#fa8c16}.ant-tooltip-orange .ant-tooltip-arrow-content:before{background:#fa8c16}.ant-tooltip-yellow .ant-tooltip-inner{background-color:#fadb14}.ant-tooltip-yellow .ant-tooltip-arrow-content:before{background:#fadb14}.ant-tooltip-gold .ant-tooltip-inner{background-color:#faad14}.ant-tooltip-gold .ant-tooltip-arrow-content:before{background:#faad14}.ant-tooltip-cyan .ant-tooltip-inner{background-color:#13c2c2}.ant-tooltip-cyan .ant-tooltip-arrow-content:before{background:#13c2c2}.ant-tooltip-lime .ant-tooltip-inner{background-color:#a0d911}.ant-tooltip-lime .ant-tooltip-arrow-content:before{background:#a0d911}.ant-tooltip-green .ant-tooltip-inner{background-color:#52c41a}.ant-tooltip-green .ant-tooltip-arrow-content:before{background:#52c41a}.ant-tooltip-blue .ant-tooltip-inner{background-color:#1890ff}.ant-tooltip-blue .ant-tooltip-arrow-content:before{background:#1890ff}.ant-tooltip-geekblue .ant-tooltip-inner{background-color:#2f54eb}.ant-tooltip-geekblue .ant-tooltip-arrow-content:before{background:#2f54eb}.ant-tooltip-purple .ant-tooltip-inner{background-color:#722ed1}.ant-tooltip-purple .ant-tooltip-arrow-content:before{background:#722ed1}.ant-tooltip-rtl{direction:rtl}.ant-tooltip-rtl .ant-tooltip-inner{text-align:right}.ant-tooltip{position:relative}.ant-transfer-customize-list .ant-transfer-list{flex:1 1 50%;width:auto;height:auto;min-height:200px}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small{border:0;border-radius:0}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small .ant-table-selection-column{width:40px;min-width:40px}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small>.ant-table-content>.ant-table-body>table>.ant-table-thead>tr>th{background:#fafafa}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small>.ant-table-content .ant-table-row:last-child td{border-bottom:1px solid #f0f0f0}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small .ant-table-body{margin:0}.ant-transfer-customize-list .ant-table-wrapper .ant-table-pagination.ant-pagination{margin:16px 0 4px}.ant-transfer-customize-list .ant-input[disabled]{background-color:transparent}.ant-transfer-status-error .ant-transfer-list{border-color:#ff4d4f}.ant-transfer-status-error .ant-transfer-list-search:not([disabled]){border-color:#d9d9d9}.ant-transfer-status-error .ant-transfer-list-search:not([disabled]):hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-transfer-status-error .ant-transfer-list-search:not([disabled]):hover{border-right-width:0;border-left-width:1px!important}.ant-transfer-status-error .ant-transfer-list-search:not([disabled]):focus{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;border-right-width:1px;outline:0}.ant-input-rtl .ant-transfer-status-error .ant-transfer-list-search:not([disabled]):focus{border-right-width:0;border-left-width:1px!important}.ant-transfer-status-warning .ant-transfer-list{border-color:#faad14}.ant-transfer-status-warning .ant-transfer-list-search:not([disabled]){border-color:#d9d9d9}.ant-transfer-status-warning .ant-transfer-list-search:not([disabled]):hover{border-color:#40a9ff;border-right-width:1px}.ant-input-rtl .ant-transfer-status-warning .ant-transfer-list-search:not([disabled]):hover{border-right-width:0;border-left-width:1px!important}.ant-transfer-status-warning .ant-transfer-list-search:not([disabled]):focus{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;border-right-width:1px;outline:0}.ant-input-rtl .ant-transfer-status-warning .ant-transfer-list-search:not([disabled]):focus{border-right-width:0;border-left-width:1px!important}.ant-transfer{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;display:flex;align-items:stretch}.ant-transfer-disabled .ant-transfer-list{background:#f5f5f5}.ant-transfer-list{display:flex;flex-direction:column;width:180px;height:200px;border:1px solid #d9d9d9;border-radius:2px}.ant-transfer-list-with-pagination{width:250px;height:auto}.ant-transfer-list-search .anticon-search{color:#00000040}.ant-transfer-list-header{display:flex;flex:none;align-items:center;height:40px;padding:8px 12px 9px;color:#000000d9;background:#fff;border-bottom:1px solid #f0f0f0;border-radius:2px 2px 0 0}.ant-transfer-list-header>*:not(:last-child){margin-right:4px}.ant-transfer-list-header>*{flex:none}.ant-transfer-list-header-title{flex:auto;overflow:hidden;white-space:nowrap;text-align:right;text-overflow:ellipsis}.ant-transfer-list-header-dropdown{font-size:10px;transform:translateY(10%);cursor:pointer}.ant-transfer-list-header-dropdown[disabled]{cursor:not-allowed}.ant-transfer-list-body{display:flex;flex:auto;flex-direction:column;overflow:hidden;font-size:14px}.ant-transfer-list-body-search-wrapper{position:relative;flex:none;padding:12px}.ant-transfer-list-content{flex:auto;margin:0;padding:0;overflow:auto;list-style:none}.ant-transfer-list-content-item{display:flex;align-items:center;min-height:32px;padding:6px 12px;line-height:20px;transition:all .3s}.ant-transfer-list-content-item>*:not(:last-child){margin-right:8px}.ant-transfer-list-content-item>*{flex:none}.ant-transfer-list-content-item-text{flex:auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-transfer-list-content-item-remove{color:#1890ff;text-decoration:none;outline:none;cursor:pointer;transition:color .3s;position:relative;color:#d9d9d9}.ant-transfer-list-content-item-remove:focus,.ant-transfer-list-content-item-remove:hover{color:#40a9ff}.ant-transfer-list-content-item-remove:active{color:#096dd9}.ant-transfer-list-content-item-remove:after{position:absolute;inset:-6px -50%;content:""}.ant-transfer-list-content-item-remove:hover{color:#40a9ff}.ant-transfer-list-content-item:not(.ant-transfer-list-content-item-disabled):hover{background-color:#f5f5f5;cursor:pointer}.ant-transfer-list-content-item:not(.ant-transfer-list-content-item-disabled).ant-transfer-list-content-item-checked:hover{background-color:#dcf4ff}.ant-transfer-list-content-show-remove .ant-transfer-list-content-item:not(.ant-transfer-list-content-item-disabled):hover{background:transparent;cursor:default}.ant-transfer-list-content-item-checked{background-color:#e6f7ff}.ant-transfer-list-content-item-disabled{color:#00000040;cursor:not-allowed}.ant-transfer-list-pagination{padding:8px 0;text-align:right;border-top:1px solid #f0f0f0}.ant-transfer-list-body-not-found{flex:none;width:100%;margin:auto 0;color:#00000040;text-align:center}.ant-transfer-list-footer{border-top:1px solid #f0f0f0}.ant-transfer-operation{display:flex;flex:none;flex-direction:column;align-self:center;margin:0 8px;vertical-align:middle}.ant-transfer-operation .ant-btn{display:block}.ant-transfer-operation .ant-btn:first-child{margin-bottom:4px}.ant-transfer-operation .ant-btn .anticon{font-size:12px}.ant-transfer .ant-empty-image{max-height:-2px}.ant-transfer-rtl{direction:rtl}.ant-transfer-rtl .ant-transfer-list-search{padding-right:8px;padding-left:24px}.ant-transfer-rtl .ant-transfer-list-search-action{right:auto;left:12px}.ant-transfer-rtl .ant-transfer-list-header>*:not(:last-child){margin-right:0;margin-left:4px}.ant-transfer-rtl .ant-transfer-list-header{right:0;left:auto}.ant-transfer-rtl .ant-transfer-list-header-title{text-align:left}.ant-transfer-rtl .ant-transfer-list-content-item>*:not(:last-child){margin-right:0;margin-left:8px}.ant-transfer-rtl .ant-transfer-list-pagination{text-align:left}.ant-transfer-rtl .ant-transfer-list-footer{right:0;left:auto}.ant-typography{color:#000000d9;overflow-wrap:break-word}.ant-typography.ant-typography-secondary{color:#00000073}.ant-typography.ant-typography-success{color:#52c41a}.ant-typography.ant-typography-warning{color:#faad14}.ant-typography.ant-typography-danger{color:#ff4d4f}a.ant-typography.ant-typography-danger:active,a.ant-typography.ant-typography-danger:focus{color:#d9363e}a.ant-typography.ant-typography-danger:hover{color:#ff7875}.ant-typography.ant-typography-disabled{color:#00000040;cursor:not-allowed;-webkit-user-select:none;user-select:none}div.ant-typography,.ant-typography p{margin-bottom:1em}h1.ant-typography,div.ant-typography-h1,div.ant-typography-h1>textarea,.ant-typography h1{margin-bottom:.5em;color:#000000d9;font-weight:600;font-size:38px;line-height:1.23}h2.ant-typography,div.ant-typography-h2,div.ant-typography-h2>textarea,.ant-typography h2{margin-bottom:.5em;color:#000000d9;font-weight:600;font-size:30px;line-height:1.35}h3.ant-typography,div.ant-typography-h3,div.ant-typography-h3>textarea,.ant-typography h3{margin-bottom:.5em;color:#000000d9;font-weight:600;font-size:24px;line-height:1.35}h4.ant-typography,div.ant-typography-h4,div.ant-typography-h4>textarea,.ant-typography h4{margin-bottom:.5em;color:#000000d9;font-weight:600;font-size:20px;line-height:1.4}h5.ant-typography,div.ant-typography-h5,div.ant-typography-h5>textarea,.ant-typography h5{margin-bottom:.5em;color:#000000d9;font-weight:600;font-size:16px;line-height:1.5}.ant-typography+h1.ant-typography,.ant-typography+h2.ant-typography,.ant-typography+h3.ant-typography,.ant-typography+h4.ant-typography,.ant-typography+h5.ant-typography{margin-top:1.2em}.ant-typography div+h1,.ant-typography ul+h1,.ant-typography li+h1,.ant-typography p+h1,.ant-typography h1+h1,.ant-typography h2+h1,.ant-typography h3+h1,.ant-typography h4+h1,.ant-typography h5+h1,.ant-typography div+h2,.ant-typography ul+h2,.ant-typography li+h2,.ant-typography p+h2,.ant-typography h1+h2,.ant-typography h2+h2,.ant-typography h3+h2,.ant-typography h4+h2,.ant-typography h5+h2,.ant-typography div+h3,.ant-typography ul+h3,.ant-typography li+h3,.ant-typography p+h3,.ant-typography h1+h3,.ant-typography h2+h3,.ant-typography h3+h3,.ant-typography h4+h3,.ant-typography h5+h3,.ant-typography div+h4,.ant-typography ul+h4,.ant-typography li+h4,.ant-typography p+h4,.ant-typography h1+h4,.ant-typography h2+h4,.ant-typography h3+h4,.ant-typography h4+h4,.ant-typography h5+h4,.ant-typography div+h5,.ant-typography ul+h5,.ant-typography li+h5,.ant-typography p+h5,.ant-typography h1+h5,.ant-typography h2+h5,.ant-typography h3+h5,.ant-typography h4+h5,.ant-typography h5+h5{margin-top:1.2em}a.ant-typography-ellipsis,span.ant-typography-ellipsis{display:inline-block;max-width:100%}a.ant-typography,.ant-typography a{color:#1890ff;outline:none;cursor:pointer;transition:color .3s;text-decoration:none}a.ant-typography:focus,.ant-typography a:focus,a.ant-typography:hover,.ant-typography a:hover{color:#40a9ff}a.ant-typography:active,.ant-typography a:active{color:#096dd9}a.ant-typography:active,.ant-typography a:active,a.ant-typography:hover,.ant-typography a:hover{text-decoration:none}a.ant-typography[disabled],.ant-typography a[disabled],a.ant-typography.ant-typography-disabled,.ant-typography a.ant-typography-disabled{color:#00000040;cursor:not-allowed}a.ant-typography[disabled]:active,.ant-typography a[disabled]:active,a.ant-typography.ant-typography-disabled:active,.ant-typography a.ant-typography-disabled:active,a.ant-typography[disabled]:hover,.ant-typography a[disabled]:hover,a.ant-typography.ant-typography-disabled:hover,.ant-typography a.ant-typography-disabled:hover{color:#00000040}a.ant-typography[disabled]:active,.ant-typography a[disabled]:active,a.ant-typography.ant-typography-disabled:active,.ant-typography a.ant-typography-disabled:active{pointer-events:none}.ant-typography code{margin:0 .2em;padding:.2em .4em .1em;font-size:85%;background:rgba(150,150,150,.1);border:1px solid rgba(100,100,100,.2);border-radius:3px}.ant-typography kbd{margin:0 .2em;padding:.15em .4em .1em;font-size:90%;background:rgba(150,150,150,.06);border:1px solid rgba(100,100,100,.2);border-bottom-width:2px;border-radius:3px}.ant-typography mark{padding:0;background-color:#ffe58f}.ant-typography u,.ant-typography ins{text-decoration:underline;-webkit-text-decoration-skip:ink;text-decoration-skip-ink:auto}.ant-typography s,.ant-typography del{text-decoration:line-through}.ant-typography strong{font-weight:600}.ant-typography-expand,.ant-typography-edit,.ant-typography-copy{color:#1890ff;text-decoration:none;outline:none;cursor:pointer;transition:color .3s;margin-left:4px}.ant-typography-expand:focus,.ant-typography-edit:focus,.ant-typography-copy:focus,.ant-typography-expand:hover,.ant-typography-edit:hover,.ant-typography-copy:hover{color:#40a9ff}.ant-typography-expand:active,.ant-typography-edit:active,.ant-typography-copy:active{color:#096dd9}.ant-typography-copy-success,.ant-typography-copy-success:hover,.ant-typography-copy-success:focus{color:#52c41a}.ant-typography-edit-content{position:relative}div.ant-typography-edit-content{left:-12px;margin-top:-5px;margin-bottom:calc(1em - 5px)}.ant-typography-edit-content-confirm{position:absolute;right:10px;bottom:8px;color:#00000073;font-weight:400;font-size:14px;font-style:normal;pointer-events:none}.ant-typography-edit-content textarea{height:1em;margin:0!important;-moz-transition:none}.ant-typography ul,.ant-typography ol{margin:0 0 1em;padding:0}.ant-typography ul li,.ant-typography ol li{margin:0 0 0 20px;padding:0 0 0 4px}.ant-typography ul{list-style-type:circle}.ant-typography ul ul{list-style-type:disc}.ant-typography ol{list-style-type:decimal}.ant-typography pre,.ant-typography blockquote{margin:1em 0}.ant-typography pre{padding:.4em .6em;white-space:pre-wrap;word-wrap:break-word;background:rgba(150,150,150,.1);border:1px solid rgba(100,100,100,.2);border-radius:3px}.ant-typography pre code{display:inline;margin:0;padding:0;font-size:inherit;font-family:inherit;background:transparent;border:0}.ant-typography blockquote{padding:0 0 0 .6em;border-left:4px solid rgba(100,100,100,.2);opacity:.85}.ant-typography-single-line{white-space:nowrap}.ant-typography-ellipsis-single-line{overflow:hidden;text-overflow:ellipsis}a.ant-typography-ellipsis-single-line,span.ant-typography-ellipsis-single-line{vertical-align:bottom}.ant-typography-ellipsis-multiple-line{display:-webkit-box;overflow:hidden;-webkit-line-clamp:3;-webkit-box-orient:vertical}.ant-typography-rtl{direction:rtl}.ant-typography-rtl .ant-typography-expand,.ant-typography-rtl .ant-typography-edit,.ant-typography-rtl .ant-typography-copy{margin-right:4px;margin-left:0}.ant-typography-rtl .ant-typography-expand{float:left}div.ant-typography-edit-content.ant-typography-rtl{right:-12px;left:auto}.ant-typography-rtl .ant-typography-edit-content-confirm{right:auto;left:10px}.ant-typography-rtl.ant-typography ul li,.ant-typography-rtl.ant-typography ol li{margin:0 20px 0 0;padding:0 4px 0 0}.ant-upload{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";outline:0}.ant-upload p{margin:0}.ant-upload-btn{display:block;width:100%;outline:none}.ant-upload input[type=file]{cursor:pointer}.ant-upload.ant-upload-select{display:inline-block}.ant-upload.ant-upload-disabled{cursor:not-allowed}.ant-upload.ant-upload-select-picture-card{width:104px;height:104px;margin-right:8px;margin-bottom:8px;text-align:center;vertical-align:top;background-color:#fafafa;border:1px dashed #d9d9d9;border-radius:2px;cursor:pointer;transition:border-color .3s}.ant-upload.ant-upload-select-picture-card>.ant-upload{display:flex;align-items:center;justify-content:center;height:100%;text-align:center}.ant-upload.ant-upload-select-picture-card:hover{border-color:#1890ff}.ant-upload-disabled.ant-upload.ant-upload-select-picture-card:hover{border-color:#d9d9d9}.ant-upload.ant-upload-drag{position:relative;width:100%;height:100%;text-align:center;background:#fafafa;border:1px dashed #d9d9d9;border-radius:2px;cursor:pointer;transition:border-color .3s}.ant-upload.ant-upload-drag .ant-upload{padding:16px 0}.ant-upload.ant-upload-drag.ant-upload-drag-hover:not(.ant-upload-disabled){border-color:#096dd9}.ant-upload.ant-upload-drag.ant-upload-disabled{cursor:not-allowed}.ant-upload.ant-upload-drag .ant-upload-btn{display:table;height:100%}.ant-upload.ant-upload-drag .ant-upload-drag-container{display:table-cell;vertical-align:middle}.ant-upload.ant-upload-drag:not(.ant-upload-disabled):hover{border-color:#40a9ff}.ant-upload.ant-upload-drag p.ant-upload-drag-icon{margin-bottom:20px}.ant-upload.ant-upload-drag p.ant-upload-drag-icon .anticon{color:#40a9ff;font-size:48px}.ant-upload.ant-upload-drag p.ant-upload-text{margin:0 0 4px;color:#000000d9;font-size:16px}.ant-upload.ant-upload-drag p.ant-upload-hint{color:#00000073;font-size:14px}.ant-upload.ant-upload-drag .anticon-plus{color:#00000040;font-size:30px;transition:all .3s}.ant-upload.ant-upload-drag .anticon-plus:hover,.ant-upload.ant-upload-drag:hover .anticon-plus{color:#00000073}.ant-upload-picture-card-wrapper{display:inline-block;width:100%}.ant-upload-picture-card-wrapper:before{display:table;content:""}.ant-upload-picture-card-wrapper:after{display:table;clear:both;content:""}.ant-upload-list{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;list-style:none;font-feature-settings:"tnum";line-height:1.5715}.ant-upload-list:before{display:table;content:""}.ant-upload-list:after{display:table;clear:both;content:""}.ant-upload-list-item{position:relative;height:22.001px;margin-top:8px;font-size:14px}.ant-upload-list-item-name{display:inline-block;width:100%;padding-left:22px;overflow:hidden;line-height:1.5715;white-space:nowrap;text-overflow:ellipsis}.ant-upload-list-item-card-actions{position:absolute;right:0}.ant-upload-list-item-card-actions-btn{opacity:0}.ant-upload-list-item-card-actions-btn.ant-btn-sm{height:22.001px;line-height:1;vertical-align:top}.ant-upload-list-item-card-actions.picture{top:22px;line-height:0}.ant-upload-list-item-card-actions-btn:focus,.ant-upload-list-item-card-actions.picture .ant-upload-list-item-card-actions-btn{opacity:1}.ant-upload-list-item-card-actions .anticon{color:#00000073;transition:all .3s}.ant-upload-list-item-card-actions:hover .anticon{color:#000000d9}.ant-upload-list-item-info{height:100%;transition:background-color .3s}.ant-upload-list-item-info>span{display:block;width:100%;height:100%}.ant-upload-list-item-info .anticon-loading .anticon,.ant-upload-list-item-info .ant-upload-text-icon .anticon{position:absolute;top:5px;color:#00000073;font-size:14px}.ant-upload-list-item:hover .ant-upload-list-item-info{background-color:#f5f5f5}.ant-upload-list-item:hover .ant-upload-list-item-card-actions-btn{opacity:1}.ant-upload-list-item-error,.ant-upload-list-item-error .ant-upload-text-icon>.anticon,.ant-upload-list-item-error .ant-upload-list-item-name{color:#ff4d4f}.ant-upload-list-item-error .ant-upload-list-item-card-actions .anticon{color:#ff4d4f}.ant-upload-list-item-error .ant-upload-list-item-card-actions-btn{opacity:1}.ant-upload-list-item-progress{position:absolute;bottom:-12px;width:100%;padding-left:26px;font-size:14px;line-height:0}.ant-upload-list-picture .ant-upload-list-item,.ant-upload-list-picture-card .ant-upload-list-item{position:relative;height:66px;padding:8px;border:1px solid #d9d9d9;border-radius:2px}.ant-upload-list-picture .ant-upload-list-item:hover,.ant-upload-list-picture-card .ant-upload-list-item:hover{background:transparent}.ant-upload-list-picture .ant-upload-list-item-error,.ant-upload-list-picture-card .ant-upload-list-item-error{border-color:#ff4d4f}.ant-upload-list-picture .ant-upload-list-item:hover .ant-upload-list-item-info,.ant-upload-list-picture-card .ant-upload-list-item:hover .ant-upload-list-item-info{background:transparent}.ant-upload-list-picture .ant-upload-list-item-uploading,.ant-upload-list-picture-card .ant-upload-list-item-uploading{border-style:dashed}.ant-upload-list-picture .ant-upload-list-item-thumbnail,.ant-upload-list-picture-card .ant-upload-list-item-thumbnail{width:48px;height:48px;line-height:60px;text-align:center;opacity:.8}.ant-upload-list-picture .ant-upload-list-item-thumbnail .anticon,.ant-upload-list-picture-card .ant-upload-list-item-thumbnail .anticon{font-size:26px}.ant-upload-list-picture .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill="#e6f7ff"],.ant-upload-list-picture-card .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill="#e6f7ff"]{fill:#fff2f0}.ant-upload-list-picture .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill="#1890ff"],.ant-upload-list-picture-card .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill="#1890ff"]{fill:#ff4d4f}.ant-upload-list-picture .ant-upload-list-item-icon,.ant-upload-list-picture-card .ant-upload-list-item-icon{position:absolute;top:50%;left:50%;font-size:26px;transform:translate(-50%,-50%)}.ant-upload-list-picture .ant-upload-list-item-icon .anticon,.ant-upload-list-picture-card .ant-upload-list-item-icon .anticon{font-size:26px}.ant-upload-list-picture .ant-upload-list-item-image,.ant-upload-list-picture-card .ant-upload-list-item-image{max-width:100%}.ant-upload-list-picture .ant-upload-list-item-thumbnail img,.ant-upload-list-picture-card .ant-upload-list-item-thumbnail img{display:block;width:48px;height:48px;overflow:hidden}.ant-upload-list-picture .ant-upload-list-item-name,.ant-upload-list-picture-card .ant-upload-list-item-name{display:inline-block;box-sizing:border-box;max-width:100%;margin:0 0 0 8px;padding-right:8px;padding-left:48px;overflow:hidden;line-height:44px;white-space:nowrap;text-overflow:ellipsis;transition:all .3s}.ant-upload-list-picture .ant-upload-list-item-uploading .ant-upload-list-item-name,.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-name{margin-bottom:12px}.ant-upload-list-picture .ant-upload-list-item-progress,.ant-upload-list-picture-card .ant-upload-list-item-progress{bottom:14px;width:calc(100% - 24px);margin-top:0;padding-left:56px}.ant-upload-list-picture-card-container{display:inline-block;width:104px;height:104px;margin:0 8px 8px 0;vertical-align:top}.ant-upload-list-picture-card .ant-upload-list-item{height:100%;margin:0}.ant-upload-list-picture-card .ant-upload-list-item-info{position:relative;height:100%;overflow:hidden}.ant-upload-list-picture-card .ant-upload-list-item-info:before{position:absolute;z-index:1;width:100%;height:100%;background-color:#00000080;opacity:0;transition:all .3s;content:" "}.ant-upload-list-picture-card .ant-upload-list-item:hover .ant-upload-list-item-info:before{opacity:1}.ant-upload-list-picture-card .ant-upload-list-item-actions{position:absolute;top:50%;left:50%;z-index:10;white-space:nowrap;transform:translate(-50%,-50%);opacity:0;transition:all .3s}.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-eye,.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-download,.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-delete{z-index:10;width:16px;margin:0 4px;color:#ffffffd9;font-size:16px;cursor:pointer;transition:all .3s}.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-eye:hover,.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-download:hover,.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-delete:hover{color:#fff}.ant-upload-list-picture-card .ant-upload-list-item-info:hover+.ant-upload-list-item-actions,.ant-upload-list-picture-card .ant-upload-list-item-actions:hover{opacity:1}.ant-upload-list-picture-card .ant-upload-list-item-thumbnail,.ant-upload-list-picture-card .ant-upload-list-item-thumbnail img{position:static;display:block;width:100%;height:100%;object-fit:contain}.ant-upload-list-picture-card .ant-upload-list-item-name{display:none;margin:8px 0 0;padding:0;line-height:1.5715;text-align:center}.ant-upload-list-picture-card .ant-upload-list-item-file+.ant-upload-list-item-name{position:absolute;bottom:10px;display:block}.ant-upload-list-picture-card .ant-upload-list-item-uploading.ant-upload-list-item{background-color:#fafafa}.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-info{height:auto}.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-info:before,.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-info .anticon-eye,.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-info .anticon-delete{display:none}.ant-upload-list-picture-card .ant-upload-list-item-progress{bottom:32px;width:calc(100% - 14px);padding-left:0}.ant-upload-list-text-container,.ant-upload-list-picture-container{transition:opacity .3s,height .3s}.ant-upload-list-text-container:before,.ant-upload-list-picture-container:before{display:table;width:0;height:0;content:""}.ant-upload-list-text-container .ant-upload-span,.ant-upload-list-picture-container .ant-upload-span{display:block;flex:auto}.ant-upload-list-text .ant-upload-span,.ant-upload-list-picture .ant-upload-span{display:flex;align-items:center}.ant-upload-list-text .ant-upload-span>*,.ant-upload-list-picture .ant-upload-span>*{flex:none}.ant-upload-list-text .ant-upload-list-item-name,.ant-upload-list-picture .ant-upload-list-item-name{flex:auto;margin:0;padding:0 8px}.ant-upload-list-text .ant-upload-list-item-card-actions,.ant-upload-list-picture .ant-upload-list-item-card-actions,.ant-upload-list-text .ant-upload-text-icon .anticon{position:static}.ant-upload-list .ant-upload-animate-inline-appear,.ant-upload-list .ant-upload-animate-inline-enter,.ant-upload-list .ant-upload-animate-inline-leave{animation-duration:.3s;animation-fill-mode:cubic-bezier(.78,.14,.15,.86)}.ant-upload-list .ant-upload-animate-inline-appear,.ant-upload-list .ant-upload-animate-inline-enter{animation-name:uploadAnimateInlineIn}.ant-upload-list .ant-upload-animate-inline-leave{animation-name:uploadAnimateInlineOut}@keyframes uploadAnimateInlineIn{0%{width:0;height:0;margin:0;padding:0;opacity:0}}@keyframes uploadAnimateInlineOut{to{width:0;height:0;margin:0;padding:0;opacity:0}}.ant-upload-rtl{direction:rtl}.ant-upload-rtl.ant-upload.ant-upload-select-picture-card{margin-right:auto;margin-left:8px}.ant-upload-list-rtl{direction:rtl}.ant-upload-list-rtl .ant-upload-list-item-list-type-text:hover .ant-upload-list-item-name-icon-count-1{padding-right:22px;padding-left:14px}.ant-upload-list-rtl .ant-upload-list-item-list-type-text:hover .ant-upload-list-item-name-icon-count-2{padding-right:22px;padding-left:28px}.ant-upload-list-rtl .ant-upload-list-item-name{padding-right:22px;padding-left:0}.ant-upload-list-rtl .ant-upload-list-item-name-icon-count-1{padding-left:14px}.ant-upload-list-rtl .ant-upload-list-item-card-actions{right:auto;left:0}.ant-upload-list-rtl .ant-upload-list-item-card-actions .anticon{padding-right:0;padding-left:5px}.ant-upload-list-rtl .ant-upload-list-item-info{padding:0 4px 0 12px}.ant-upload-list-rtl .ant-upload-list-item-error .ant-upload-list-item-card-actions .anticon{padding-right:0;padding-left:5px}.ant-upload-list-rtl .ant-upload-list-item-progress{padding-right:26px;padding-left:0}.ant-upload-list-picture .ant-upload-list-item-info,.ant-upload-list-picture-card .ant-upload-list-item-info{padding:0}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-thumbnail,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-thumbnail{right:8px;left:auto}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-icon,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-icon{right:50%;left:auto;transform:translate(50%,-50%)}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-name,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-name{margin:0 8px 0 0;padding-right:48px;padding-left:8px}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-name-icon-count-1,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-name-icon-count-1{padding-right:48px;padding-left:18px}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-name-icon-count-2,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-name-icon-count-2{padding-right:48px;padding-left:36px}.ant-upload-list-rtl.ant-upload-list-picture .ant-upload-list-item-progress,.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-progress{padding-right:0;padding-left:0}.ant-upload-list-rtl .ant-upload-list-picture-card-container{margin:0 0 8px 8px}.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-actions{right:50%;left:auto;transform:translate(50%,-50%)}.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item-file+.ant-upload-list-item-name{margin:8px 0 0;padding:0}.ant-upload-list-rtl.ant-upload-list-picture-card .ant-upload-list-item{float:unset}.ant-select-auto-complete{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum"}.ant-select-auto-complete .ant-select-clear{right:13px}.ant-select-dropdown-hidden{display:none}.ant-cascader-checkbox{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;top:.2em;line-height:1;white-space:nowrap;outline:none;cursor:pointer}.ant-cascader-checkbox-wrapper:hover .ant-cascader-checkbox-inner,.ant-cascader-checkbox:hover .ant-cascader-checkbox-inner,.ant-cascader-checkbox-input:focus+.ant-cascader-checkbox-inner{border-color:#1890ff}.ant-cascader-checkbox-checked:after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #1890ff;border-radius:2px;visibility:hidden;animation:antCheckboxEffect .36s ease-in-out;animation-fill-mode:backwards;content:""}.ant-cascader-checkbox:hover:after,.ant-cascader-checkbox-wrapper:hover .ant-cascader-checkbox:after{visibility:visible}.ant-cascader-checkbox-inner{position:relative;top:0;left:0;display:block;width:16px;height:16px;direction:ltr;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;border-collapse:separate;transition:all .3s}.ant-cascader-checkbox-inner:after{position:absolute;top:50%;left:21.5%;display:table;width:5.71428571px;height:9.14285714px;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(0) translate(-50%,-50%);opacity:0;transition:all .1s cubic-bezier(.71,-.46,.88,.6),opacity .1s;content:" "}.ant-cascader-checkbox-input{position:absolute;inset:0;z-index:1;width:100%;height:100%;cursor:pointer;opacity:0}.ant-cascader-checkbox-checked .ant-cascader-checkbox-inner:after{position:absolute;display:table;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(1) translate(-50%,-50%);opacity:1;transition:all .2s cubic-bezier(.12,.4,.29,1.46) .1s;content:" "}.ant-cascader-checkbox-checked .ant-cascader-checkbox-inner{background-color:#1890ff;border-color:#1890ff}.ant-cascader-checkbox-disabled{cursor:not-allowed}.ant-cascader-checkbox-disabled.ant-cascader-checkbox-checked .ant-cascader-checkbox-inner:after{border-color:#00000040;animation-name:none}.ant-cascader-checkbox-disabled .ant-cascader-checkbox-input{cursor:not-allowed;pointer-events:none}.ant-cascader-checkbox-disabled .ant-cascader-checkbox-inner{background-color:#f5f5f5;border-color:#d9d9d9!important}.ant-cascader-checkbox-disabled .ant-cascader-checkbox-inner:after{border-color:#f5f5f5;border-collapse:separate;animation-name:none}.ant-cascader-checkbox-disabled+span{color:#00000040;cursor:not-allowed}.ant-cascader-checkbox-disabled:hover:after,.ant-cascader-checkbox-wrapper:hover .ant-cascader-checkbox-disabled:after{visibility:hidden}.ant-cascader-checkbox-wrapper{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";display:inline-flex;align-items:baseline;line-height:unset;cursor:pointer}.ant-cascader-checkbox-wrapper:after{display:inline-block;width:0;overflow:hidden;content:"\a0"}.ant-cascader-checkbox-wrapper.ant-cascader-checkbox-wrapper-disabled{cursor:not-allowed}.ant-cascader-checkbox-wrapper+.ant-cascader-checkbox-wrapper{margin-left:8px}.ant-cascader-checkbox-wrapper.ant-cascader-checkbox-wrapper-in-form-item input[type=checkbox]{width:14px;height:14px}.ant-cascader-checkbox+span{padding-right:8px;padding-left:8px}.ant-cascader-checkbox-group{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";display:inline-block}.ant-cascader-checkbox-group-item{margin-right:8px}.ant-cascader-checkbox-group-item:last-child{margin-right:0}.ant-cascader-checkbox-group-item+.ant-cascader-checkbox-group-item{margin-left:0}.ant-cascader-checkbox-indeterminate .ant-cascader-checkbox-inner{background-color:#fff;border-color:#d9d9d9}.ant-cascader-checkbox-indeterminate .ant-cascader-checkbox-inner:after{top:50%;left:50%;width:8px;height:8px;background-color:#1890ff;border:0;transform:translate(-50%,-50%) scale(1);opacity:1;content:" "}.ant-cascader-checkbox-indeterminate.ant-cascader-checkbox-disabled .ant-cascader-checkbox-inner:after{background-color:#00000040;border-color:#00000040}.ant-cascader-checkbox-rtl{direction:rtl}.ant-cascader-checkbox-group-rtl .ant-cascader-checkbox-group-item{margin-right:0;margin-left:8px}.ant-cascader-checkbox-group-rtl .ant-cascader-checkbox-group-item:last-child{margin-left:0!important}.ant-cascader-checkbox-group-rtl .ant-cascader-checkbox-group-item+.ant-cascader-checkbox-group-item{margin-left:8px}.ant-cascader{width:184px}.ant-cascader-checkbox{top:0;margin-right:8px}.ant-cascader-menus{display:flex;flex-wrap:nowrap;align-items:flex-start}.ant-cascader-menus.ant-cascader-menu-empty .ant-cascader-menu{width:100%;height:auto}.ant-cascader-menu{flex-grow:1;min-width:111px;height:180px;margin:-4px 0;padding:4px 0;overflow:auto;vertical-align:top;list-style:none;border-right:1px solid #f0f0f0;-ms-overflow-style:-ms-autohiding-scrollbar}.ant-cascader-menu-item{display:flex;flex-wrap:nowrap;align-items:center;padding:5px 12px;overflow:hidden;line-height:22px;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:all .3s}.ant-cascader-menu-item:hover{background:#f5f5f5}.ant-cascader-menu-item-disabled{color:#00000040;cursor:not-allowed}.ant-cascader-menu-item-disabled:hover{background:transparent}.ant-cascader-menu-empty .ant-cascader-menu-item{color:#00000040;cursor:default;pointer-events:none}.ant-cascader-menu-item-active:not(.ant-cascader-menu-item-disabled),.ant-cascader-menu-item-active:not(.ant-cascader-menu-item-disabled):hover{font-weight:600;background-color:#e6f7ff}.ant-cascader-menu-item-content{flex:auto}.ant-cascader-menu-item-expand .ant-cascader-menu-item-expand-icon,.ant-cascader-menu-item-loading-icon{margin-left:4px;color:#00000073;font-size:10px}.ant-cascader-menu-item-disabled.ant-cascader-menu-item-expand .ant-cascader-menu-item-expand-icon,.ant-cascader-menu-item-disabled.ant-cascader-menu-item-loading-icon{color:#00000040}.ant-cascader-menu-item-keyword{color:#ff4d4f}.ant-cascader-rtl .ant-cascader-menu-item-expand-icon,.ant-cascader-rtl .ant-cascader-menu-item-loading-icon{margin-right:4px;margin-left:0}.ant-cascader-rtl .ant-cascader-checkbox{top:0;margin-right:0;margin-left:8px}.ant-cascader-menus{position:relative;margin-top:2px;margin-bottom:2px}nz-tree-virtual-scroll-view{display:block;position:relative;overflow:auto;contain:strict;transform:translateZ(0);will-change:scroll-position;-webkit-overflow-scrolling:touch}nz-tree-virtual-scroll-view .ant-tree-list,nz-tree-virtual-scroll-view .ant-tree-list-holder{height:100%}nz-tree-virtual-scroll-view .ant-tree-switcher+.ant-tree-switcher.nz-tree-leaf-line-icon,nz-tree-view .ant-tree-switcher+.ant-tree-switcher.nz-tree-leaf-line-icon{display:none}nz-tree-view .ant-tree-list-holder-inner{display:flex;flex-direction:column}@keyframes ant-tree-node-fx-do-not-use{0%{opacity:0}to{opacity:1}}.ant-tree.ant-tree-directory .ant-tree-treenode{position:relative}.ant-tree.ant-tree-directory .ant-tree-treenode:before{position:absolute;inset:0 0 4px;transition:background-color .3s;content:"";pointer-events:none}.ant-tree.ant-tree-directory .ant-tree-treenode:hover:before{background:#f5f5f5}.ant-tree.ant-tree-directory .ant-tree-treenode>*{z-index:1}.ant-tree.ant-tree-directory .ant-tree-treenode .ant-tree-switcher{transition:color .3s}.ant-tree.ant-tree-directory .ant-tree-treenode .ant-tree-node-content-wrapper{border-radius:0;-webkit-user-select:none;user-select:none}.ant-tree.ant-tree-directory .ant-tree-treenode .ant-tree-node-content-wrapper:hover{background:transparent}.ant-tree.ant-tree-directory .ant-tree-treenode .ant-tree-node-content-wrapper.ant-tree-node-selected{color:#fff;background:transparent}.ant-tree.ant-tree-directory .ant-tree-treenode-selected:hover:before,.ant-tree.ant-tree-directory .ant-tree-treenode-selected:before{background:#1890ff}.ant-tree.ant-tree-directory .ant-tree-treenode-selected .ant-tree-switcher{color:#fff}.ant-tree.ant-tree-directory .ant-tree-treenode-selected .ant-tree-node-content-wrapper{color:#fff;background:transparent}.ant-tree-checkbox{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;top:.2em;line-height:1;white-space:nowrap;outline:none;cursor:pointer}.ant-tree-checkbox-wrapper:hover .ant-tree-checkbox-inner,.ant-tree-checkbox:hover .ant-tree-checkbox-inner,.ant-tree-checkbox-input:focus+.ant-tree-checkbox-inner{border-color:#1890ff}.ant-tree-checkbox-checked:after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #1890ff;border-radius:2px;visibility:hidden;animation:antCheckboxEffect .36s ease-in-out;animation-fill-mode:backwards;content:""}.ant-tree-checkbox:hover:after,.ant-tree-checkbox-wrapper:hover .ant-tree-checkbox:after{visibility:visible}.ant-tree-checkbox-inner{position:relative;top:0;left:0;display:block;width:16px;height:16px;direction:ltr;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;border-collapse:separate;transition:all .3s}.ant-tree-checkbox-inner:after{position:absolute;top:50%;left:21.5%;display:table;width:5.71428571px;height:9.14285714px;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(0) translate(-50%,-50%);opacity:0;transition:all .1s cubic-bezier(.71,-.46,.88,.6),opacity .1s;content:" "}.ant-tree-checkbox-input{position:absolute;inset:0;z-index:1;width:100%;height:100%;cursor:pointer;opacity:0}.ant-tree-checkbox-checked .ant-tree-checkbox-inner:after{position:absolute;display:table;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(1) translate(-50%,-50%);opacity:1;transition:all .2s cubic-bezier(.12,.4,.29,1.46) .1s;content:" "}.ant-tree-checkbox-checked .ant-tree-checkbox-inner{background-color:#1890ff;border-color:#1890ff}.ant-tree-checkbox-disabled{cursor:not-allowed}.ant-tree-checkbox-disabled.ant-tree-checkbox-checked .ant-tree-checkbox-inner:after{border-color:#00000040;animation-name:none}.ant-tree-checkbox-disabled .ant-tree-checkbox-input{cursor:not-allowed;pointer-events:none}.ant-tree-checkbox-disabled .ant-tree-checkbox-inner{background-color:#f5f5f5;border-color:#d9d9d9!important}.ant-tree-checkbox-disabled .ant-tree-checkbox-inner:after{border-color:#f5f5f5;border-collapse:separate;animation-name:none}.ant-tree-checkbox-disabled+span{color:#00000040;cursor:not-allowed}.ant-tree-checkbox-disabled:hover:after,.ant-tree-checkbox-wrapper:hover .ant-tree-checkbox-disabled:after{visibility:hidden}.ant-tree-checkbox-wrapper{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";display:inline-flex;align-items:baseline;line-height:unset;cursor:pointer}.ant-tree-checkbox-wrapper:after{display:inline-block;width:0;overflow:hidden;content:"\a0"}.ant-tree-checkbox-wrapper.ant-tree-checkbox-wrapper-disabled{cursor:not-allowed}.ant-tree-checkbox-wrapper+.ant-tree-checkbox-wrapper{margin-left:8px}.ant-tree-checkbox-wrapper.ant-tree-checkbox-wrapper-in-form-item input[type=checkbox]{width:14px;height:14px}.ant-tree-checkbox+span{padding-right:8px;padding-left:8px}.ant-tree-checkbox-group{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";display:inline-block}.ant-tree-checkbox-group-item{margin-right:8px}.ant-tree-checkbox-group-item:last-child{margin-right:0}.ant-tree-checkbox-group-item+.ant-tree-checkbox-group-item{margin-left:0}.ant-tree-checkbox-indeterminate .ant-tree-checkbox-inner{background-color:#fff;border-color:#d9d9d9}.ant-tree-checkbox-indeterminate .ant-tree-checkbox-inner:after{top:50%;left:50%;width:8px;height:8px;background-color:#1890ff;border:0;transform:translate(-50%,-50%) scale(1);opacity:1;content:" "}.ant-tree-checkbox-indeterminate.ant-tree-checkbox-disabled .ant-tree-checkbox-inner:after{background-color:#00000040;border-color:#00000040}.ant-tree-checkbox-rtl{direction:rtl}.ant-tree-checkbox-group-rtl .ant-tree-checkbox-group-item{margin-right:0;margin-left:8px}.ant-tree-checkbox-group-rtl .ant-tree-checkbox-group-item:last-child{margin-left:0!important}.ant-tree-checkbox-group-rtl .ant-tree-checkbox-group-item+.ant-tree-checkbox-group-item{margin-left:8px}.ant-tree{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";background:#fff;border-radius:2px;transition:background-color .3s}.ant-tree-focused:not(:hover):not(.ant-tree-active-focused){background:#e6f7ff}.ant-tree-list-holder-inner{align-items:flex-start}.ant-tree.ant-tree-block-node .ant-tree-list-holder-inner{align-items:stretch}.ant-tree.ant-tree-block-node .ant-tree-list-holder-inner .ant-tree-node-content-wrapper{flex:auto}.ant-tree.ant-tree-block-node .ant-tree-list-holder-inner .ant-tree-treenode.dragging{position:relative}.ant-tree.ant-tree-block-node .ant-tree-list-holder-inner .ant-tree-treenode.dragging:after{position:absolute;inset:0 0 4px;border:1px solid #1890ff;opacity:0;animation:ant-tree-node-fx-do-not-use .3s;animation-play-state:running;animation-fill-mode:forwards;content:"";pointer-events:none}.ant-tree .ant-tree-treenode{display:flex;align-items:flex-start;padding:0 0 4px;outline:none}.ant-tree .ant-tree-treenode-disabled .ant-tree-node-content-wrapper{color:#00000040;cursor:not-allowed}.ant-tree .ant-tree-treenode-disabled .ant-tree-node-content-wrapper:hover{background:transparent}.ant-tree .ant-tree-treenode-active .ant-tree-node-content-wrapper{background:#f5f5f5}.ant-tree .ant-tree-treenode:not(.ant-tree .ant-tree-treenode-disabled).filter-node .ant-tree-title{color:inherit;font-weight:500}.ant-tree-indent{align-self:stretch;white-space:nowrap;-webkit-user-select:none;user-select:none}.ant-tree-indent-unit{display:inline-block;width:24px}.ant-tree-draggable-icon{width:24px;line-height:24px;text-align:center;opacity:.2;transition:opacity .3s}.ant-tree-treenode:hover .ant-tree-draggable-icon{opacity:.45}.ant-tree-switcher{position:relative;flex:none;align-self:stretch;width:24px;margin:0;line-height:24px;text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none}.ant-tree-switcher .ant-tree-switcher-icon,.ant-tree-switcher .ant-select-tree-switcher-icon{display:inline-block;font-size:10px;vertical-align:baseline}.ant-tree-switcher .ant-tree-switcher-icon svg,.ant-tree-switcher .ant-select-tree-switcher-icon svg{transition:transform .3s}.ant-tree-switcher-noop{cursor:default}.ant-tree-switcher_close .ant-tree-switcher-icon svg{transform:rotate(-90deg)}.ant-tree-switcher-loading-icon{color:#1890ff}.ant-tree-switcher-leaf-line{position:relative;z-index:1;display:inline-block;width:100%;height:100%}.ant-tree-switcher-leaf-line:before{position:absolute;top:0;right:12px;bottom:-4px;margin-left:-1px;border-right:1px solid #d9d9d9;content:" "}.ant-tree-switcher-leaf-line:after{position:absolute;width:10px;height:14px;border-bottom:1px solid #d9d9d9;content:" "}.ant-tree-checkbox{top:initial;margin:4px 8px 0 0}.ant-tree .ant-tree-node-content-wrapper{position:relative;z-index:auto;min-height:24px;margin:0;padding:0 4px;color:inherit;line-height:24px;background:transparent;border-radius:2px;cursor:pointer;transition:all .3s,border 0s,line-height 0s,box-shadow 0s}.ant-tree .ant-tree-node-content-wrapper:hover{background-color:#f5f5f5}.ant-tree .ant-tree-node-content-wrapper.ant-tree-node-selected{background-color:#bae7ff}.ant-tree .ant-tree-node-content-wrapper .ant-tree-iconEle{display:inline-block;width:24px;height:24px;line-height:24px;text-align:center;vertical-align:top}.ant-tree .ant-tree-node-content-wrapper .ant-tree-iconEle:empty{display:none}.ant-tree-unselectable .ant-tree-node-content-wrapper:hover{background-color:transparent}.ant-tree-node-content-wrapper{line-height:24px;-webkit-user-select:none;user-select:none}.ant-tree-node-content-wrapper .ant-tree-drop-indicator{position:absolute;z-index:1;height:2px;background-color:#1890ff;border-radius:1px;pointer-events:none}.ant-tree-node-content-wrapper .ant-tree-drop-indicator:after{position:absolute;top:-3px;left:-6px;width:8px;height:8px;background-color:transparent;border:2px solid #1890ff;border-radius:50%;content:""}.ant-tree .ant-tree-treenode.drop-container>[draggable]{box-shadow:0 0 0 2px #1890ff}.ant-tree-show-line .ant-tree-indent-unit{position:relative;height:100%}.ant-tree-show-line .ant-tree-indent-unit:before{position:absolute;top:0;right:12px;bottom:-4px;border-right:1px solid #d9d9d9;content:""}.ant-tree-show-line .ant-tree-indent-unit-end:before{display:none}.ant-tree-show-line .ant-tree-switcher{background:#fff}.ant-tree-show-line .ant-tree-switcher-line-icon{vertical-align:-.15em}.ant-tree .ant-tree-treenode-leaf-last .ant-tree-switcher-leaf-line:before{top:auto!important;bottom:auto!important;height:14px!important}.ant-tree-rtl{direction:rtl}.ant-tree-rtl .ant-tree-node-content-wrapper[draggable=true] .ant-tree-drop-indicator:after{right:-6px;left:unset}.ant-tree .ant-tree-treenode-rtl{direction:rtl}.ant-tree-rtl .ant-tree-switcher_close .ant-tree-switcher-icon svg{transform:rotate(90deg)}.ant-tree-rtl.ant-tree-show-line .ant-tree-indent-unit:before{right:auto;left:-13px;border-right:none;border-left:1px solid #d9d9d9}.ant-tree-rtl .ant-tree-checkbox,.ant-tree-select-dropdown-rtl .ant-select-tree-checkbox{margin:4px 0 0 8px}.font-highlight{color:#ff4d4f}.ant-tree-child-tree{overflow:hidden}nz-tree{display:block}.ant-select-tree-checkbox{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";position:relative;top:.2em;line-height:1;white-space:nowrap;outline:none;cursor:pointer}.ant-select-tree-checkbox-wrapper:hover .ant-select-tree-checkbox-inner,.ant-select-tree-checkbox:hover .ant-select-tree-checkbox-inner,.ant-select-tree-checkbox-input:focus+.ant-select-tree-checkbox-inner{border-color:#1890ff}.ant-select-tree-checkbox-checked:after{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #1890ff;border-radius:2px;visibility:hidden;animation:antCheckboxEffect .36s ease-in-out;animation-fill-mode:backwards;content:""}.ant-select-tree-checkbox:hover:after,.ant-select-tree-checkbox-wrapper:hover .ant-select-tree-checkbox:after{visibility:visible}.ant-select-tree-checkbox-inner{position:relative;top:0;left:0;display:block;width:16px;height:16px;direction:ltr;background-color:#fff;border:1px solid #d9d9d9;border-radius:2px;border-collapse:separate;transition:all .3s}.ant-select-tree-checkbox-inner:after{position:absolute;top:50%;left:21.5%;display:table;width:5.71428571px;height:9.14285714px;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(0) translate(-50%,-50%);opacity:0;transition:all .1s cubic-bezier(.71,-.46,.88,.6),opacity .1s;content:" "}.ant-select-tree-checkbox-input{position:absolute;inset:0;z-index:1;width:100%;height:100%;cursor:pointer;opacity:0}.ant-select-tree-checkbox-checked .ant-select-tree-checkbox-inner:after{position:absolute;display:table;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg) scale(1) translate(-50%,-50%);opacity:1;transition:all .2s cubic-bezier(.12,.4,.29,1.46) .1s;content:" "}.ant-select-tree-checkbox-checked .ant-select-tree-checkbox-inner{background-color:#1890ff;border-color:#1890ff}.ant-select-tree-checkbox-disabled{cursor:not-allowed}.ant-select-tree-checkbox-disabled.ant-select-tree-checkbox-checked .ant-select-tree-checkbox-inner:after{border-color:#00000040;animation-name:none}.ant-select-tree-checkbox-disabled .ant-select-tree-checkbox-input{cursor:not-allowed;pointer-events:none}.ant-select-tree-checkbox-disabled .ant-select-tree-checkbox-inner{background-color:#f5f5f5;border-color:#d9d9d9!important}.ant-select-tree-checkbox-disabled .ant-select-tree-checkbox-inner:after{border-color:#f5f5f5;border-collapse:separate;animation-name:none}.ant-select-tree-checkbox-disabled+span{color:#00000040;cursor:not-allowed}.ant-select-tree-checkbox-disabled:hover:after,.ant-select-tree-checkbox-wrapper:hover .ant-select-tree-checkbox-disabled:after{visibility:hidden}.ant-select-tree-checkbox-wrapper{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";display:inline-flex;align-items:baseline;line-height:unset;cursor:pointer}.ant-select-tree-checkbox-wrapper:after{display:inline-block;width:0;overflow:hidden;content:"\a0"}.ant-select-tree-checkbox-wrapper.ant-select-tree-checkbox-wrapper-disabled{cursor:not-allowed}.ant-select-tree-checkbox-wrapper+.ant-select-tree-checkbox-wrapper{margin-left:8px}.ant-select-tree-checkbox-wrapper.ant-select-tree-checkbox-wrapper-in-form-item input[type=checkbox]{width:14px;height:14px}.ant-select-tree-checkbox+span{padding-right:8px;padding-left:8px}.ant-select-tree-checkbox-group{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";display:inline-block}.ant-select-tree-checkbox-group-item{margin-right:8px}.ant-select-tree-checkbox-group-item:last-child{margin-right:0}.ant-select-tree-checkbox-group-item+.ant-select-tree-checkbox-group-item{margin-left:0}.ant-select-tree-checkbox-indeterminate .ant-select-tree-checkbox-inner{background-color:#fff;border-color:#d9d9d9}.ant-select-tree-checkbox-indeterminate .ant-select-tree-checkbox-inner:after{top:50%;left:50%;width:8px;height:8px;background-color:#1890ff;border:0;transform:translate(-50%,-50%) scale(1);opacity:1;content:" "}.ant-select-tree-checkbox-indeterminate.ant-select-tree-checkbox-disabled .ant-select-tree-checkbox-inner:after{background-color:#00000040;border-color:#00000040}.ant-select-tree-checkbox-rtl{direction:rtl}.ant-select-tree-checkbox-group-rtl .ant-select-tree-checkbox-group-item{margin-right:0;margin-left:8px}.ant-select-tree-checkbox-group-rtl .ant-select-tree-checkbox-group-item:last-child{margin-left:0!important}.ant-select-tree-checkbox-group-rtl .ant-select-tree-checkbox-group-item+.ant-select-tree-checkbox-group-item{margin-left:8px}.ant-tree-select-dropdown{padding:8px 4px}.ant-tree-select-dropdown-rtl{direction:rtl}.ant-tree-select-dropdown .ant-select-tree{border-radius:0}.ant-tree-select-dropdown .ant-select-tree-list-holder-inner{align-items:stretch}.ant-tree-select-dropdown .ant-select-tree-list-holder-inner .ant-select-tree-treenode .ant-select-tree-node-content-wrapper{flex:auto}.ant-select-tree{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";background:#fff;border-radius:2px;transition:background-color .3s}.ant-select-tree-focused:not(:hover):not(.ant-select-tree-active-focused){background:#e6f7ff}.ant-select-tree-list-holder-inner{align-items:flex-start}.ant-select-tree.ant-select-tree-block-node .ant-select-tree-list-holder-inner{align-items:stretch}.ant-select-tree.ant-select-tree-block-node .ant-select-tree-list-holder-inner .ant-select-tree-node-content-wrapper{flex:auto}.ant-select-tree.ant-select-tree-block-node .ant-select-tree-list-holder-inner .ant-select-tree-treenode.dragging{position:relative}.ant-select-tree.ant-select-tree-block-node .ant-select-tree-list-holder-inner .ant-select-tree-treenode.dragging:after{position:absolute;inset:0 0 4px;border:1px solid #1890ff;opacity:0;animation:ant-tree-node-fx-do-not-use .3s;animation-play-state:running;animation-fill-mode:forwards;content:"";pointer-events:none}.ant-select-tree .ant-select-tree-treenode{display:flex;align-items:flex-start;padding:0 0 4px;outline:none}.ant-select-tree .ant-select-tree-treenode-disabled .ant-select-tree-node-content-wrapper{color:#00000040;cursor:not-allowed}.ant-select-tree .ant-select-tree-treenode-disabled .ant-select-tree-node-content-wrapper:hover{background:transparent}.ant-select-tree .ant-select-tree-treenode-active .ant-select-tree-node-content-wrapper{background:#f5f5f5}.ant-select-tree .ant-select-tree-treenode:not(.ant-select-tree .ant-select-tree-treenode-disabled).filter-node .ant-select-tree-title{color:inherit;font-weight:500}.ant-select-tree-indent{align-self:stretch;white-space:nowrap;-webkit-user-select:none;user-select:none}.ant-select-tree-indent-unit{display:inline-block;width:24px}.ant-select-tree-draggable-icon{width:24px;line-height:24px;text-align:center;opacity:.2;transition:opacity .3s}.ant-select-tree-treenode:hover .ant-select-tree-draggable-icon{opacity:.45}.ant-select-tree-switcher{position:relative;flex:none;align-self:stretch;width:24px;margin:0;line-height:24px;text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none}.ant-select-tree-switcher .ant-tree-switcher-icon,.ant-select-tree-switcher .ant-select-tree-switcher-icon{display:inline-block;font-size:10px;vertical-align:baseline}.ant-select-tree-switcher .ant-tree-switcher-icon svg,.ant-select-tree-switcher .ant-select-tree-switcher-icon svg{transition:transform .3s}.ant-select-tree-switcher-noop{cursor:default}.ant-select-tree-switcher_close .ant-select-tree-switcher-icon svg{transform:rotate(-90deg)}.ant-select-tree-switcher-loading-icon{color:#1890ff}.ant-select-tree-switcher-leaf-line{position:relative;z-index:1;display:inline-block;width:100%;height:100%}.ant-select-tree-switcher-leaf-line:before{position:absolute;top:0;right:12px;bottom:-4px;margin-left:-1px;border-right:1px solid #d9d9d9;content:" "}.ant-select-tree-switcher-leaf-line:after{position:absolute;width:10px;height:14px;border-bottom:1px solid #d9d9d9;content:" "}.ant-select-tree-checkbox{top:initial;margin:4px 8px 0 0}.ant-select-tree .ant-select-tree-node-content-wrapper{position:relative;z-index:auto;min-height:24px;margin:0;padding:0 4px;color:inherit;line-height:24px;background:transparent;border-radius:2px;cursor:pointer;transition:all .3s,border 0s,line-height 0s,box-shadow 0s}.ant-select-tree .ant-select-tree-node-content-wrapper:hover{background-color:#f5f5f5}.ant-select-tree .ant-select-tree-node-content-wrapper.ant-select-tree-node-selected{background-color:#bae7ff}.ant-select-tree .ant-select-tree-node-content-wrapper .ant-select-tree-iconEle{display:inline-block;width:24px;height:24px;line-height:24px;text-align:center;vertical-align:top}.ant-select-tree .ant-select-tree-node-content-wrapper .ant-select-tree-iconEle:empty{display:none}.ant-select-tree-unselectable .ant-select-tree-node-content-wrapper:hover{background-color:transparent}.ant-select-tree-node-content-wrapper{line-height:24px;-webkit-user-select:none;user-select:none}.ant-select-tree-node-content-wrapper .ant-tree-drop-indicator{position:absolute;z-index:1;height:2px;background-color:#1890ff;border-radius:1px;pointer-events:none}.ant-select-tree-node-content-wrapper .ant-tree-drop-indicator:after{position:absolute;top:-3px;left:-6px;width:8px;height:8px;background-color:transparent;border:2px solid #1890ff;border-radius:50%;content:""}.ant-select-tree .ant-select-tree-treenode.drop-container>[draggable]{box-shadow:0 0 0 2px #1890ff}.ant-select-tree-show-line .ant-select-tree-indent-unit{position:relative;height:100%}.ant-select-tree-show-line .ant-select-tree-indent-unit:before{position:absolute;top:0;right:12px;bottom:-4px;border-right:1px solid #d9d9d9;content:""}.ant-select-tree-show-line .ant-select-tree-indent-unit-end:before{display:none}.ant-select-tree-show-line .ant-select-tree-switcher{background:#fff}.ant-select-tree-show-line .ant-select-tree-switcher-line-icon{vertical-align:-.15em}.ant-select-tree .ant-select-tree-treenode-leaf-last .ant-select-tree-switcher-leaf-line:before{top:auto!important;bottom:auto!important;height:14px!important}.ant-tree-select-dropdown-rtl .ant-select-tree .ant-select-tree-switcher_close .ant-select-tree-switcher-icon svg{transform:rotate(90deg)}.ant-tree-select-dropdown-rtl .ant-select-tree .ant-select-tree-switcher-loading-icon{transform:scaleY(-1)}.ant-tree.ant-select-tree.ant-tree-show-line nz-tree-node[builtin]:not(:last-child)>li:before{content:" ";width:1px;border-left:1px solid #d9d9d9;height:calc(100% - 16px);position:absolute;left:12px;margin:26px 0}.ant-select-dropdown.ant-select-tree-dropdown{top:100%;left:0;position:relative;width:100%;margin-top:4px;margin-bottom:4px;overflow:auto}.ant-picker-calendar{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;font-feature-settings:"tnum";background:#fff}.ant-picker-calendar-header{display:flex;justify-content:flex-end;padding:12px 0}.ant-picker-calendar-header .ant-picker-calendar-year-select{min-width:80px}.ant-picker-calendar-header .ant-picker-calendar-month-select{min-width:70px;margin-left:8px}.ant-picker-calendar-header .ant-picker-calendar-mode-switch{margin-left:8px}.ant-picker-calendar .ant-picker-panel{background:#fff;border:0;border-top:1px solid #f0f0f0;border-radius:0}.ant-picker-calendar .ant-picker-panel .ant-picker-month-panel,.ant-picker-calendar .ant-picker-panel .ant-picker-date-panel{width:auto}.ant-picker-calendar .ant-picker-panel .ant-picker-body{padding:8px 0}.ant-picker-calendar .ant-picker-panel .ant-picker-content{width:100%}.ant-picker-calendar-mini{border-radius:2px}.ant-picker-calendar-mini .ant-picker-calendar-header{padding-right:8px;padding-left:8px}.ant-picker-calendar-mini .ant-picker-panel{border-radius:0 0 2px 2px}.ant-picker-calendar-mini .ant-picker-content{height:256px}.ant-picker-calendar-mini .ant-picker-content th{height:auto;padding:0;line-height:18px}.ant-picker-calendar-mini .ant-picker-cell:before{pointer-events:none}.ant-picker-calendar-full .ant-picker-panel{display:block;width:100%;text-align:right;background:#fff;border:0}.ant-picker-calendar-full .ant-picker-panel .ant-picker-body th,.ant-picker-calendar-full .ant-picker-panel .ant-picker-body td{padding:0}.ant-picker-calendar-full .ant-picker-panel .ant-picker-body th{height:auto;padding:0 12px 5px 0;line-height:18px}.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell:before{display:none}.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell:hover .ant-picker-calendar-date{background:#f5f5f5}.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell .ant-picker-calendar-date-today:before{display:none}.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected .ant-picker-calendar-date,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected:hover .ant-picker-calendar-date,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected .ant-picker-calendar-date-today,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected:hover .ant-picker-calendar-date-today{background:#e6f7ff}.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected .ant-picker-calendar-date .ant-picker-calendar-date-value,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected:hover .ant-picker-calendar-date .ant-picker-calendar-date-value,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected .ant-picker-calendar-date-today .ant-picker-calendar-date-value,.ant-picker-calendar-full .ant-picker-panel .ant-picker-cell-selected:hover .ant-picker-calendar-date-today .ant-picker-calendar-date-value{color:#1890ff}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date{display:block;width:auto;height:auto;margin:0 4px;padding:4px 8px 0;border:0;border-top:2px solid #f0f0f0;border-radius:0;transition:background .3s}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-value{line-height:24px;transition:color .3s}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-content{position:static;width:auto;height:86px;overflow-y:auto;color:#000000d9;line-height:1.5715;text-align:left}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-today{border-color:#1890ff}.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-today .ant-picker-calendar-date-value{color:#000000d9}@media only screen and (max-width: 480px){.ant-picker-calendar-header{display:block}.ant-picker-calendar-header .ant-picker-calendar-year-select{width:50%}.ant-picker-calendar-header .ant-picker-calendar-month-select{width:calc(50% - 8px)}.ant-picker-calendar-header .ant-picker-calendar-mode-switch{width:100%;margin-top:8px;margin-left:0}.ant-picker-calendar-header .ant-picker-calendar-mode-switch>label{width:50%;text-align:center}}.ant-picker-calendar-rtl{direction:rtl}.ant-picker-calendar-rtl .ant-picker-calendar-header .ant-picker-calendar-month-select,.ant-picker-calendar-rtl .ant-picker-calendar-header .ant-picker-calendar-mode-switch{margin-right:8px;margin-left:0}.ant-picker-calendar-rtl.ant-picker-calendar-full .ant-picker-panel{text-align:left}.ant-picker-calendar-rtl.ant-picker-calendar-full .ant-picker-panel .ant-picker-body th{padding:0 0 5px 12px}.ant-picker-calendar-rtl.ant-picker-calendar-full .ant-picker-panel .ant-picker-calendar-date-content{text-align:right}.ant-result{padding:48px 32px}.ant-result-success .ant-result-icon>.anticon{color:#52c41a}.ant-result-error .ant-result-icon>.anticon{color:#ff4d4f}.ant-result-info .ant-result-icon>.anticon{color:#1890ff}.ant-result-warning .ant-result-icon>.anticon{color:#faad14}.ant-result-image{width:250px;height:295px;margin:auto}.ant-result-icon{margin-bottom:24px;text-align:center}.ant-result-icon>.anticon{font-size:72px}.ant-result-title{color:#000000d9;font-size:24px;line-height:1.8;text-align:center}.ant-result-subtitle{color:#00000073;font-size:14px;line-height:1.6;text-align:center}.ant-result-extra{margin:24px 0 0;text-align:center}.ant-result-extra>*{margin-right:8px}.ant-result-extra>*:last-child{margin-right:0}.ant-result-content{margin-top:24px;padding:24px 40px;background-color:#fafafa}.ant-result-rtl{direction:rtl}.ant-result-rtl .ant-result-extra>*{margin-right:0;margin-left:8px}.ant-result-rtl .ant-result-extra>*:last-child{margin-left:0}nz-result{display:block}.ant-space{display:inline-flex}.ant-space-vertical{flex-direction:column}.ant-space-align-center{align-items:center}.ant-space-align-start{align-items:flex-start}.ant-space-align-end{align-items:flex-end}.ant-space-align-baseline{align-items:baseline}.ant-space-item:empty{display:none}.ant-space-rtl{direction:rtl}nz-space-item{display:block}.ant-image{position:relative;display:inline-block}.ant-image-img{width:100%;height:auto;vertical-align:middle}.ant-image-img-placeholder{background-color:#f5f5f5;background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTQuNSAyLjVoLTEzQS41LjUgMCAwIDAgMSAzdjEwYS41LjUgMCAwIDAgLjUuNWgxM2EuNS41IDAgMCAwIC41LS41VjNhLjUuNSAwIDAgMC0uNS0uNXpNNS4yODEgNC43NWExIDEgMCAwIDEgMCAyIDEgMSAwIDAgMSAwLTJ6bTguMDMgNi44M2EuMTI3LjEyNyAwIDAgMS0uMDgxLjAzSDIuNzY5YS4xMjUuMTI1IDAgMCAxLS4wOTYtLjIwN2wyLjY2MS0zLjE1NmEuMTI2LjEyNiAwIDAgMSAuMTc3LS4wMTZsLjAxNi4wMTZMNy4wOCAxMC4wOWwyLjQ3LTIuOTNhLjEyNi4xMjYgMCAwIDEgLjE3Ny0uMDE2bC4wMTUuMDE2IDMuNTg4IDQuMjQ0YS4xMjcuMTI3IDAgMCAxLS4wMi4xNzV6IiBmaWxsPSIjOEM4QzhDIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz48L3N2Zz4=);background-repeat:no-repeat;background-position:center center;background-size:30%}.ant-image-mask{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;background:rgba(0,0,0,.5);cursor:pointer;opacity:0;transition:opacity .3s}.ant-image-mask-info{padding:0 4px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-image-mask-info .anticon{margin-inline-end:4px}.ant-image-mask:hover{opacity:1}.ant-image-placeholder{position:absolute;inset:0}.ant-image-preview{pointer-events:none;height:100%;text-align:center}.ant-image-preview.ant-zoom-enter,.ant-image-preview.ant-zoom-appear{transform:none;opacity:0;animation-duration:.3s;-webkit-user-select:none;user-select:none}.ant-image-preview-mask{position:fixed;inset:0;z-index:1000;height:100%;background-color:#00000073}.ant-image-preview-mask-hidden{display:none}.ant-image-preview-wrap{position:fixed;inset:0;overflow:auto;outline:0;-webkit-overflow-scrolling:touch}.ant-image-preview-body{position:absolute;inset:0;overflow:hidden}.ant-image-preview-img{max-width:100%;max-height:100%;vertical-align:middle;transform:scaleZ(1);cursor:grab;transition:transform .3s cubic-bezier(.215,.61,.355,1) 0s;-webkit-user-select:none;user-select:none;pointer-events:auto}.ant-image-preview-img-wrapper{position:absolute;inset:0;transition:transform .3s cubic-bezier(.215,.61,.355,1) 0s}.ant-image-preview-img-wrapper:before{display:inline-block;width:1px;height:50%;margin-right:-1px;content:""}.ant-image-preview-moving .ant-image-preview-img{cursor:grabbing}.ant-image-preview-moving .ant-image-preview-img-wrapper{transition-duration:0s}.ant-image-preview-wrap{z-index:1080}.ant-image-preview-operations{box-sizing:border-box;margin:0;padding:0;color:#000000d9;font-size:14px;font-variant:tabular-nums;line-height:1.5715;font-feature-settings:"tnum";position:absolute;top:0;right:0;z-index:1;display:flex;flex-direction:row-reverse;align-items:center;width:100%;color:#ffffffd9;list-style:none;background:rgba(0,0,0,.1);pointer-events:auto}.ant-image-preview-operations-operation{margin-left:12px;padding:12px;cursor:pointer}.ant-image-preview-operations-operation-disabled{color:#ffffff40;pointer-events:none}.ant-image-preview-operations-operation:last-of-type{margin-left:0}.ant-image-preview-operations-progress{position:absolute;left:50%;transform:translate(-50%)}.ant-image-preview-operations-icon{font-size:18px}.ant-image-preview-switch-left,.ant-image-preview-switch-right{position:absolute;top:50%;right:10px;z-index:1;display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin-top:-22px;color:#ffffffd9;background:rgba(0,0,0,.1);border-radius:50%;cursor:pointer;pointer-events:auto}.ant-image-preview-switch-left-disabled,.ant-image-preview-switch-right-disabled{color:#ffffff40;cursor:not-allowed}.ant-image-preview-switch-left-disabled>.anticon,.ant-image-preview-switch-right-disabled>.anticon{cursor:not-allowed}.ant-image-preview-switch-left>.anticon,.ant-image-preview-switch-right>.anticon{font-size:18px}.ant-image-preview-switch-left{left:10px}.ant-image-preview-switch-right{right:10px}.cdk-overlay-backdrop.ant-image-preview-mask{opacity:1}.ant-cron-expression{display:flex;flex-wrap:nowrap}.ant-cron-expression-content{width:100%}.ant-cron-expression-content .ant-cron-expression-input-group-error-focus{box-shadow:0 0 0 2px #ff4d4f33}.ant-cron-expression nz-cron-expression-input{width:20%}.ant-cron-expression-input-group{display:flex;flex-wrap:nowrap;align-items:center}.ant-cron-expression-input-group input{border:none!important;box-shadow:none!important;width:100%;outline:none;padding:0;border-radius:0}.ant-cron-expression-input-group-focus{border-color:#1890ff;box-shadow:0 0 0 2px #1890ff33;outline:0}.ant-cron-expression nz-cron-expression-label{width:20%}.ant-cron-expression-label-group{display:flex;width:100%;flex-wrap:nowrap;justify-content:space-around;padding-top:0!important;padding-bottom:0!important}.ant-cron-expression-label-group-default{padding:0 12px}.ant-cron-expression-label-foucs{color:#1890ff}.ant-cron-expression-map{margin-left:12px}.ant-cron-expression-preview{display:flex;padding:12px}.ant-cron-expression-preview-dateTime{flex:1 1 auto;display:flex;align-items:center}.ant-cron-expression-preview-dateTime-center{justify-content:center}.ant-cron-expression-preview-content{flex:0 0 220px;display:flex;align-items:center;padding-left:16px}.ant-cron-expression-preview-content-date{flex:1 1 auto}.ant-cron-expression-preview-list,.ant-cron-expression-preview-icon,.ant-cron-expression-preview-list li,.ant-cron-expression-preview-icon li{list-style:none;margin:0;padding:0}.ant-cron-expression-preview-list{overflow-y:scroll;height:132px}.ant-cron-expression-preview-icon{height:100%}.ant-cron-expression-error{color:#ff4d4f}.ant-cron-expression-hint p{display:flex}.ant-cron-expression-hint span{display:inline-block;min-width:40px}.ant-qrcode{display:inline-block;position:relative;padding:12px}.ant-qrcode>canvas{display:block}.ant-qrcode-border{border-radius:2px;border:1px solid #f0f0f0}.ant-qrcode-mask{position:absolute;top:0;right:0;z-index:10;display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;text-align:center;background-color:#fffffff5}.ant-qrcode-expired{color:#000000d9}.ant-water-mark{position:relative}.ant-color-picker{position:absolute;z-index:1;display:block;width:max-content;min-width:250px;visibility:visible}.ant-color-picker-hidden{display:none}.ant-color-picker-panel{display:flex;flex-direction:column;width:250px;border-radius:2px}.ant-color-picker-panel-disabled{cursor:not-allowed}.ant-color-picker-select{margin-bottom:12px}.ant-color-picker-select .ant-color-picker-palette{min-height:160px;overflow:hidden;border-radius:2px}.ant-color-picker-select .ant-color-picker-palette>.ant-color-picker-gradient{border-top-left-radius:5px}.ant-color-picker-saturation{position:absolute;border-radius:inherit;inset:0}.ant-color-picker-handler{box-sizing:border-box;width:16px;height:16px;border:1px solid #fff;border-radius:50%}.ant-color-picker-handler-sm{width:12px;height:12px}.ant-color-picker-slider{width:100%;margin-bottom:12px}.ant-color-picker-slider .ant-color-picker-palette{height:8px}.ant-color-picker-slider .ant-color-picker-gradient{border-radius:2px}.ant-color-picker-slider-alpha{background-image:conic-gradient(rgba(0,0,0,.06) 0 25%,transparent 0 50%,rgba(0,0,0,.06) 0 75%,transparent 0);background-size:8px 8px}.ant-color-picker-trigger{min-width:32px;height:32px;border-radius:2px;border:1px solid #f0f0f0;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;padding:3px}.ant-color-picker-trigger:hover{border-color:#1890ff}.ant-color-picker-trigger-text{margin:0 4px 0 8px;font-size:14px}.ant-color-picker-sm{min-width:24px;height:24px}.ant-color-picker-lg{min-width:40px;height:40px}.ant-color-picker-lg .ant-color-picker-trigger-text{font-size:16px}.ant-color-picker-color-block{position:relative;width:28px;height:28px;margin-left:8px;background-image:conic-gradient(rgba(0,0,0,.06) 0 25%,transparent 0 50%,rgba(0,0,0,.06) 0 75%,transparent 0);background-size:50% 50%;overflow:hidden;border-radius:2px}.ant-color-picker-color-block-inner{box-sizing:border-box;width:100%;height:100%;border:1px solid #f0f0f0}.ant-color-picker-slider-container{display:flex}.ant-color-picker-slider-container .ant-color-picker-slider-group{flex:1}.ant-color-picker-slider-container .ant-color-picker-slider-group-disabled-alpha{display:flex;align-items:center}.ant-color-picker-slider-container .ant-color-picker-slider-group-disabled-alpha .ant-color-picker-slider{margin-bottom:0}.ant-color-picker-title{display:flex}.ant-color-picker-title-content{flex:1;margin-bottom:8px}.ant-color-picker-title .ant-color-picker-clear{flex:0 0 18px;margin-left:8px}.ant-color-picker-clear{width:18px;height:18px;border-radius:2px;border:1px solid #f0f0f0;position:relative;cursor:pointer;overflow:hidden;margin-bottom:8px}.ant-color-picker-clear:after{content:"";position:absolute;inset-inline-end:1px;top:0;display:block;width:40px;height:2px;transform-origin:right;transform:rotate(-45deg);background-color:#f5222d}.ant-color-picker-input-container{display:flex}.ant-color-picker-input-container .ant-select,.ant-color-picker-input-container .ant-input{font-size:12px}.ant-color-picker-input-container .ant-input-number{font-size:12px;width:auto}.ant-color-picker-input-container .ant-input-number-sm input{padding:0 0 0 4px}.ant-color-picker-input-container .ant-select-selector{padding:0}.ant-color-picker-input-container .ant-color-picker-format-select{width:auto}.ant-color-picker-input-container .ant-color-picker-input{flex:1}.ant-color-picker-input-container .ant-color-picker-input .ant-color-picker-hex-input{padding:0;margin-right:4px}.ant-color-picker-input-container .ant-color-picker-input .ant-color-picker-hsb-input,.ant-color-picker-input-container .ant-color-picker-input .ant-color-picker-rgb-input{display:flex;gap:4px;align-items:center}.ant-color-picker-input-container .ant-color-picker-steppers,.ant-color-picker-input-container .ant-color-picker-alpha-input{flex:0 0 44px}.ant-color-picker-disabled{color:#00000040;background:#f5f5f5;cursor:not-allowed}.ant-color-picker-disabled .ant-color-picker-trigger{cursor:not-allowed}.ant-color-picker-disabled .ant-color-picker-trigger:hover{border-color:#f0f0f0}.ant-color-picker-inline{display:inline-block}.ant-color-picker-inline .ant-color-picker-color-block{margin:0;width:24px;height:24px}.ant-color-picker-inline-lg .ant-color-picker-color-block{width:32px;height:32px}.ant-color-picker-inline-sm .ant-color-picker-color-block{width:16px;height:16px}sf+st{margin-top:16px}.ant-btn:not(.ant-btn-link)+.ant-btn,.ant-btn:not(.ant-btn-link)+nz-popconfirm,nz-popconfirm+.ant-btn,nz-popconfirm+nz-popconfirm,.ant-btn:not(.ant-btn-link)+nz-button-group,nz-button-group+.ant-btn,.ant-btn:not(.ant-btn-link)+nz-dropdown,nz-dropdown+.ant-btn,nz-popconfirm+nz-button-group,nz-button-group+nz-popconfirm{margin-left:8px}.ant-btn-group .ant-btn+.ant-btn{margin-left:-1px}.ant-transfer-operation .ant-btn+.ant-btn{margin-left:initial}[dir=rtl] .ant-btn+.ant-btn,[dir=rtl] .ant-btn+nz-popconfirm,[dir=rtl] nz-popconfirm+.ant-btn,[dir=rtl] nz-popconfirm+nz-popconfirm,[dir=rtl] .ant-btn+nz-button-group,[dir=rtl] nz-button-group+.ant-btn,[dir=rtl] .ant-btn+nz-dropdown,[dir=rtl] nz-dropdown+.ant-btn,[dir=rtl] nz-popconfirm+nz-button-group,[dir=rtl] nz-button-group+nz-popconfirm{margin-right:8px;margin-left:inherit}a:focus{text-decoration:none}.ant-input-number__hide-step .ant-input-number-handler-wrap{visibility:hidden}.ant-card{margin-bottom:16px}.ant-card__body-nopadding .ant-card-body{padding:0!important}@media (min-width: 300px){.ant-drawer-left .drawer-sm,.ant-drawer-right .drawer-sm{width:auto!important;max-width:300px}}@media (max-width: 299px){.ant-drawer-left .drawer-sm,.ant-drawer-right .drawer-sm{width:100%!important}}@media (min-width: 600px){.ant-drawer-left .drawer-md,.ant-drawer-right .drawer-md{width:auto!important;max-width:600px}}@media (max-width: 599px){.ant-drawer-left .drawer-md,.ant-drawer-right .drawer-md{width:100%!important}}@media (min-width: 900px){.ant-drawer-left .drawer-lg,.ant-drawer-right .drawer-lg{width:auto!important;max-width:900px}}@media (max-width: 899px){.ant-drawer-left .drawer-lg,.ant-drawer-right .drawer-lg{width:100%!important}}@media (min-width: 1200px){.ant-drawer-left .drawer-xl,.ant-drawer-right .drawer-xl{width:auto!important;max-width:1200px}}@media (max-width: 1199px){.ant-drawer-left .drawer-xl,.ant-drawer-right .drawer-xl{width:100%!important}}@media (min-height: 200px){.ant-drawer-top .drawer-sm,.ant-drawer-bottom .drawer-sm{height:auto!important;max-height:200px}}@media (max-height: 199px){.ant-drawer-top .drawer-sm,.ant-drawer-bottom .drawer-sm{height:100%!important}}@media (min-height: 400px){.ant-drawer-top .drawer-md,.ant-drawer-bottom .drawer-md{height:auto!important;max-height:400px}}@media (max-height: 399px){.ant-drawer-top .drawer-md,.ant-drawer-bottom .drawer-md{height:100%!important}}@media (min-height: 600px){.ant-drawer-top .drawer-lg,.ant-drawer-bottom .drawer-lg{height:auto!important;max-height:600px}}@media (max-height: 599px){.ant-drawer-top .drawer-lg,.ant-drawer-bottom .drawer-lg{height:100%!important}}@media (min-height: 800px){.ant-drawer-top .drawer-xl,.ant-drawer-bottom .drawer-xl{height:auto!important;max-height:800px}}@media (max-height: 799px){.ant-drawer-top .drawer-xl,.ant-drawer-bottom .drawer-xl{height:100%!important}}.drawer-footer{position:absolute;bottom:0;left:0;width:100%;padding:10px 24px;text-align:right;background:#fff;border-top:1px solid #f0f0f0;border-radius:0 0 2px 2px}.ant-form-item-label em{color:#bfbfbf}.ant-form-item-control em{margin-left:8px}[dir=rtl] .ant-form-item-control em{margin-right:8px;margin-left:inherit}@media (min-width: 576px){.modal-sm .ant-modal{width:auto!important;max-width:300px}}@media (min-width: 768px){.modal-md .ant-modal{width:auto!important;max-width:600px}}@media (min-width: 992px){.modal-lg .ant-modal{width:auto!important;max-width:900px}}@media (min-width: 1600px){.modal-xl .ant-modal{width:auto!important;max-width:1200px}}.modal-header{display:flex;justify-content:space-between;margin:-24px -24px 24px;padding:16px 24px;background:#fff;border-bottom:1px solid #f0f0f0;border-radius:2px 2px 0 0}.modal-title{margin:0;font-size:16px;font-weight:500;line-height:22px;color:#000000d9;word-wrap:break-word}.modal-title small{margin-left:8px;font-size:12px;color:#8c8c8c}.modal-spin{display:block;min-height:150px;line-height:150px;text-align:center}.modal-footer{margin:24px -24px -24px;padding:10px 16px;text-align:right;border-top:1px solid #f0f0f0;border-radius:0 0 2px 2px}.modal-include-tabs nz-tabset{margin-top:-16px}.modal-body-nopadding .ant-modal-body{padding:0!important}.MODAL-DRAG-HANDLE{cursor:move}.ant-table td>img,.ant-table td .img{max-width:32px;max-height:32px;vertical-align:middle;border-radius:4px}.ant-table td>img:not(:last-child),.ant-table td .img:not(:last-child){margin-right:4px}.ant-table-rep__title,.ant-table-rep__hide-header-footer .ant-table-title,.ant-table-rep__hide-header-footer .ant-table-footer{display:none}[dir=rtl] .ant-table td>img,[dir=rtl] .ant-table td .img{margin-right:inherit;margin-left:4px}@media screen and (max-width: 767px){.ant-table-rep__title{display:inline-block;width:100px;padding-right:8px;color:#00000080;text-align:right}.ant-table-rep__hide-header-footer .ant-table-title,.ant-table-rep__hide-header-footer .ant-table-footer{display:block}.ant-table-rep .ant-table table{table-layout:auto!important}.ant-table-rep .ant-table table,.ant-table-rep .ant-table col{width:100%!important;min-width:auto!important}.ant-table-rep .ant-table-thead{display:none}.ant-table-rep .ant-table-title{text-align:center;background:#f0f0f0}.ant-table-rep .ant-table-tbody>tr:nth-child(4n+3){background:#f9f9f9}.ant-table-rep .ant-table-tbody>tr>td{display:flex;align-items:center;width:100%;padding:8px;text-align:left!important;white-space:inherit;border-bottom:none}.ant-table-rep .ant-table-tbody>tr>td .ant-table-rep__title+*:not(.ant-avatar){flex:1;word-break:break-all}}.ant-tag__plus .ant-tag{background:#fff;border-style:dashed}.tag-wrap-list-spacing{margin-top:-8px}.tag-wrap-list-spacing .ant-tag{margin-top:8px}.h1 small,.h2 small,.h3 small,.h1 .small,.h2 .small,.h3 .small{font-size:65%}.h4 small,.h5 small,.h6 small,.h4 .small,.h5 .small,.h6 .small{font-size:75%}.h1{font-size:34px}.h2{font-size:26px}.h3{font-size:22px}.h4{font-size:18px}.h5{font-size:16px}.h6{font-size:14px}.list-styled{padding-left:18px;list-style:inherit}.list-unstyled{padding-left:0;list-style:none}fieldset{border:none}.display-1{font-size:32px}.display-2{font-size:24px}.display-3{font-size:20px}.list-styled{padding-right:18px;padding-left:0}.list-unstyled{padding-right:0;padding-left:inherit}.search__form .ant-form-item{margin-right:0;margin-bottom:24px}.search__form .ant-form-item-control{flex:1}.half-float{position:relative}.half-float img{display:block;max-width:100%;height:auto}.half-float .half-float-bottom{position:absolute;z-index:2;left:50%}.half-float.half-float-sm{margin-bottom:42px}.half-float.half-float-sm .half-float-bottom{bottom:-32px;width:64px;height:64px;margin-left:-32px}.half-float.half-float-md{margin-bottom:50px}.half-float.half-float-md .half-float-bottom{bottom:-40px;width:80px;height:80px;margin-left:-40px}.half-float.half-float-lg{margin-bottom:58px}.half-float.half-float-lg .half-float-bottom{bottom:-48px;width:96px;height:96px;margin-left:-48px}.row-masonry{position:relative;column-gap:16px;width:100%;margin:0;padding:0}.row-masonry>.col-masonry{display:inline-block;width:100%;min-height:1em;margin-bottom:15px}.row-masonry img{max-width:100%}@media only screen and (min-width: 480px){.row-masonry-xs-1{column-count:1;columns:1}.row-masonry-xs-2{column-count:2;columns:2}.row-masonry-xs-3{column-count:3;columns:3}.row-masonry-xs-4{column-count:4;columns:4}.row-masonry-xs-5{column-count:5;columns:5}.row-masonry-xs-6{column-count:6;columns:6}.row-masonry-xs-7{column-count:7;columns:7}.row-masonry-xs-8{column-count:8;columns:8}.row-masonry-xs-9{column-count:9;columns:9}}@media only screen and (min-width: 576px){.row-masonry-sm-1{column-count:1;columns:1}.row-masonry-sm-2{column-count:2;columns:2}.row-masonry-sm-3{column-count:3;columns:3}.row-masonry-sm-4{column-count:4;columns:4}.row-masonry-sm-5{column-count:5;columns:5}.row-masonry-sm-6{column-count:6;columns:6}.row-masonry-sm-7{column-count:7;columns:7}.row-masonry-sm-8{column-count:8;columns:8}.row-masonry-sm-9{column-count:9;columns:9}}@media only screen and (min-width: 768px){.row-masonry-md-1{column-count:1;columns:1}.row-masonry-md-2{column-count:2;columns:2}.row-masonry-md-3{column-count:3;columns:3}.row-masonry-md-4{column-count:4;columns:4}.row-masonry-md-5{column-count:5;columns:5}.row-masonry-md-6{column-count:6;columns:6}.row-masonry-md-7{column-count:7;columns:7}.row-masonry-md-8{column-count:8;columns:8}.row-masonry-md-9{column-count:9;columns:9}}@media only screen and (min-width: 992px){.row-masonry-lg-1{column-count:1;columns:1}.row-masonry-lg-2{column-count:2;columns:2}.row-masonry-lg-3{column-count:3;columns:3}.row-masonry-lg-4{column-count:4;columns:4}.row-masonry-lg-5{column-count:5;columns:5}.row-masonry-lg-6{column-count:6;columns:6}.row-masonry-lg-7{column-count:7;columns:7}.row-masonry-lg-8{column-count:8;columns:8}.row-masonry-lg-9{column-count:9;columns:9}}@media only screen and (min-width: 1200px){.row-masonry-xl-1{column-count:1;columns:1}.row-masonry-xl-2{column-count:2;columns:2}.row-masonry-xl-3{column-count:3;columns:3}.row-masonry-xl-4{column-count:4;columns:4}.row-masonry-xl-5{column-count:5;columns:5}.row-masonry-xl-6{column-count:6;columns:6}.row-masonry-xl-7{column-count:7;columns:7}.row-masonry-xl-8{column-count:8;columns:8}.row-masonry-xl-9{column-count:9;columns:9}}.header-dropdown{background-color:#fff;border-radius:4px;box-shadow:0 6px 16px -8px #00000014,0 9px 28px #0000000d,0 12px 48px 16px #00000008}@media screen and (max-width: 480px){.header-dropdown{right:0!important;left:0!important;width:100%!important;border-radius:0!important}}.sf{display:block}.sf__optional{margin-left:2px;color:#00000059}.sf__fixed{display:flex}.sf__fixed .ant-form-item-control-wrapper{flex:1}.sf__title{margin-bottom:8px;padding:0 16px;font-weight:700;text-align:left}.sf__object-card .ant-card-body{padding-left:0}.sf__object-card .sf__fixed{flex-wrap:wrap}.sf__object-card-fold .ant-card-body{display:none}.sf__array>.ant-form-item{margin-bottom:8px}.sf__array-add{margin-right:16px}.sf__array-container .ant-card{margin:0 16px 16px 0}.sf__array-container .ant-card-body{padding-bottom:0}.sf__array-container .ant-card .sf__array-remove{cursor:pointer;position:absolute;top:-16px;right:-16px;display:none;width:32px;height:32px;font-size:20px;line-height:32px;text-align:center;background:rgba(0,0,0,.26);border-radius:50%}.sf__array-container .ant-card .sf__array-remove i{color:#fff}.sf__array-container .ant-card:hover .sf__array-remove{display:block}@media (max-width: 767px){.sf__array>.ant-form-item>.ant-form-item-label,.sf__array>.ant-form-item>.ant-form-item-control-wrapper{flex:0 0 100%;max-width:100%}.sf__array>.ant-form-item>.ant-form-item-label{display:flex;margin-bottom:8px}.sf__array-container .ant-card{margin-right:0}.sf__array-container .ant-card .sf__array-remove{right:8px;display:block}.sf__array-container>.sf__array-item{flex:0 0 100%;max-width:100%}}.sf .ant-upload-select-picture-card i{font-size:32px;color:#999}.sf .ant-upload.ant-upload-drag{height:180px}.sf .ant-transfer-list-header label{position:unset}.sf .ant-transfer .ant-btn+.ant-btn{margin-left:0}.sf__no-error .ant-form-item{margin-bottom:8px}.sf__inline .sf__item{display:inline-block;margin-bottom:8px;vertical-align:top}.sf__inline .ant-form-inline>.sf__item{margin-bottom:0}.sf__inline .ant-form-inline .ant-select{min-width:100px}.sf__inline .sf__array-container>.sf__array-item{flex:initial;width:100%;max-width:100%}.sf__inline .sf__array-container .ant-card{margin:0}.sf__inline .sf__array-container .ant-card-body{padding:8px 0 0 8px}.sf__inline .sf__array-container .ant-card-body>.sf__item{margin-bottom:0}.sf__inline .sf-btns{display:inline-block;margin-right:0}@media (max-width: 767px){.sf__inline .sf__item{display:block;width:100%}.sf__inline .sf__item .ant-form-item{display:block!important;width:initial!important;margin-right:0}.sf__inline .ant-form-item-label,.sf__inline .ant-form-item-control{display:block!important;padding:inherit}}.sf__horizontal .ant-form-item-label>label{display:flex;justify-content:flex-end}.sf__horizontal .sf__label-text{overflow:hidden;text-overflow:ellipsis}@media (max-width: 767px){.sf__horizontal .ant-form-item-label>label{justify-content:flex-start}}.sf__no-colon .ant-form-item-label label:after{content:" "}.sf__compact .ant-form-item{margin-bottom:8px}.sf__compact .sf__array-container .ant-card{margin:0 8px 8px 0}.sf__compact .sf__array-item .ant-card-body{padding:8px}.sf__item .ant-select,.sf__item .ant-cascader-picker{width:100%}.acl__hide{display:none!important}.setting-drawer__content{position:relative;min-height:100%;background:#fff}.setting-drawer__body-item{display:flex;align-items:center;justify-content:space-between;padding-top:12px;padding-bottom:12px}.setting-drawer__body-item:first-child{padding-top:0}.setting-drawer__body-item:last-child{padding-bottom:0}.setting-drawer__title{margin-bottom:12px;font-size:14px;line-height:22px;color:#000000d9}.setting-drawer__theme{overflow:hidden;margin-top:24px}.setting-drawer__theme-tag{cursor:pointer;float:left;width:20px;height:20px;margin-right:8px;font-weight:700;color:#fff;text-align:center;border-radius:2px}.setting-drawer__handle{pointer-events:auto;cursor:pointer;position:fixed;z-index:999;top:240px;right:0;display:flex;align-items:center;justify-content:center;width:48px;height:48px;font-size:16px;text-align:center;background:#1890ff;border-radius:4px 0 0 4px;transition:right .3s cubic-bezier(.9,0,.3,.7)}.setting-drawer__handle-icon{font-size:20px;color:#fff}.setting-drawer__handle-opened{z-index:1001;right:500px}.setting-drawer-rtl{direction:rtl}.setting-drawer-rtl .setting-drawer__handle{right:inherit;left:0;border-radius:0 4px 4px 0}.setting-drawer-rtl .setting-drawer__handle-opened{right:inherit;left:500px}.theme-btn .ant-avatar{color:#000;background-color:#fff;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d;transition:color .3s}.theme-btn .ant-avatar:hover{color:#1890ff}.theme-btn-rtl{right:inherit;left:32px}.yn__yes,.yn__no{display:inline-flex;align-items:center;font-style:normal}.yn__yes span,.yn__no span{margin-left:4px}.yn__yes{color:#1890ff}.yn__no{color:#8c8c8c}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.border{border:1px solid #f0f0f0!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-1{border:1px solid #f0f0f0!important}.border-top-1{border-top:1px solid #f0f0f0!important}.border-right-1{border-right:1px solid #f0f0f0!important}.border-bottom-1{border-bottom:1px solid #f0f0f0!important}.border-left-1{border-left:1px solid #f0f0f0!important}.border-red{border-color:#f5222d!important}.border-volcano{border-color:#fa541c!important}.border-orange{border-color:#fa8c16!important}.border-gold{border-color:#faad14!important}.border-yellow{border-color:#fadb14!important}.border-lime{border-color:#a0d911!important}.border-green{border-color:#52c41a!important}.border-cyan{border-color:#13c2c2!important}.border-blue{border-color:#1890ff!important}.border-geekblue{border-color:#2f54eb!important}.border-purple{border-color:#722ed1!important}.border-magenta{border-color:#eb2f96!important}.border-grey{border-color:#bfbfbf!important}.border-primary{border-color:#1890ff!important}.border-success{border-color:#52c41a!important}.border-error{border-color:#ff4d4f!important}.border-warning{border-color:#faad14!important}.border-info,.border-processing{border-color:#1890ff!important}.border-highlight{border-color:#ff4d4f!important}.border-normal{border-color:#d9d9d9!important}.rounded-sm{border-radius:2px}.rounded-top-left-sm{border-top-left-radius:2px}.rounded-top-right-sm{border-top-right-radius:2px}.rounded-bottom-left-sm{border-bottom-left-radius:2px}.rounded-bottom-right-sm{border-bottom-right-radius:2px}.rounded-md{border-radius:2px}.rounded-top-left-md{border-top-left-radius:2px}.rounded-top-right-md{border-top-right-radius:2px}.rounded-bottom-left-md{border-bottom-left-radius:2px}.rounded-bottom-right-md{border-bottom-right-radius:2px}.rounded-lg{border-radius:4px}.rounded-top-left-lg{border-top-left-radius:4px}.rounded-top-right-lg{border-top-right-radius:4px}.rounded-bottom-left-lg{border-bottom-left-radius:4px}.rounded-bottom-right-lg{border-bottom-right-radius:4px}.rounded-circle{border-radius:50%}.rounded-0{border-radius:0}.border-white{border-color:#fff!important}.rotate-360{transform:rotate(360deg)}.rotate-345{transform:rotate(345deg)}.rotate-330{transform:rotate(330deg)}.rotate-315{transform:rotate(315deg)}.rotate-300{transform:rotate(300deg)}.rotate-285{transform:rotate(285deg)}.rotate-270{transform:rotate(270deg)}.rotate-255{transform:rotate(255deg)}.rotate-240{transform:rotate(240deg)}.rotate-225{transform:rotate(225deg)}.rotate-210{transform:rotate(210deg)}.rotate-195{transform:rotate(195deg)}.rotate-180{transform:rotate(180deg)}.rotate-165{transform:rotate(165deg)}.rotate-150{transform:rotate(150deg)}.rotate-135{transform:rotate(135deg)}.rotate-120{transform:rotate(120deg)}.rotate-105{transform:rotate(105deg)}.rotate-90{transform:rotate(90deg)}.rotate-75{transform:rotate(75deg)}.rotate-60{transform:rotate(60deg)}.rotate-45{transform:rotate(45deg)}.rotate-30{transform:rotate(30deg)}.rotate-15{transform:rotate(15deg)}code{margin:0 4px;padding:2px 4px;font-size:90%;background-color:#f7f7f7;border:1px solid #eee;border-radius:2px}.bg-white{background-color:#fff!important}.bg-transparent{background-color:transparent!important}.text-white{color:#fff!important}.text-hover{cursor:pointer}.text-hover:hover{color:#1890ff!important}.bg-red-light{background-color:#ff4d4f!important}.bg-red{background-color:#f5222d!important}.bg-red-dark{background-color:#cf1322!important}.bg-red-light-h{transition:background-color .3s}.bg-red-light-h:hover{background-color:#ff4d4f!important}.bg-red-h{transition:background-color .3s}.bg-red-h:hover{background-color:#f5222d!important}.bg-red-dark-h{transition:background-color .3s}.bg-red-dark-h:hover{background-color:#cf1322!important}.text-red-light{color:#ff4d4f!important}.text-red{color:#f5222d!important}.text-red-dark{color:#cf1322!important}.bg-volcano-light{background-color:#ff7a45!important}.bg-volcano{background-color:#fa541c!important}.bg-volcano-dark{background-color:#d4380d!important}.bg-volcano-light-h{transition:background-color .3s}.bg-volcano-light-h:hover{background-color:#ff7a45!important}.bg-volcano-h{transition:background-color .3s}.bg-volcano-h:hover{background-color:#fa541c!important}.bg-volcano-dark-h{transition:background-color .3s}.bg-volcano-dark-h:hover{background-color:#d4380d!important}.text-volcano-light{color:#ff7a45!important}.text-volcano{color:#fa541c!important}.text-volcano-dark{color:#d4380d!important}.bg-orange-light{background-color:#ffa940!important}.bg-orange{background-color:#fa8c16!important}.bg-orange-dark{background-color:#d46b08!important}.bg-orange-light-h{transition:background-color .3s}.bg-orange-light-h:hover{background-color:#ffa940!important}.bg-orange-h{transition:background-color .3s}.bg-orange-h:hover{background-color:#fa8c16!important}.bg-orange-dark-h{transition:background-color .3s}.bg-orange-dark-h:hover{background-color:#d46b08!important}.text-orange-light{color:#ffa940!important}.text-orange{color:#fa8c16!important}.text-orange-dark{color:#d46b08!important}.bg-gold-light{background-color:#ffc53d!important}.bg-gold{background-color:#faad14!important}.bg-gold-dark{background-color:#d48806!important}.bg-gold-light-h{transition:background-color .3s}.bg-gold-light-h:hover{background-color:#ffc53d!important}.bg-gold-h{transition:background-color .3s}.bg-gold-h:hover{background-color:#faad14!important}.bg-gold-dark-h{transition:background-color .3s}.bg-gold-dark-h:hover{background-color:#d48806!important}.text-gold-light{color:#ffc53d!important}.text-gold{color:#faad14!important}.text-gold-dark{color:#d48806!important}.bg-yellow-light{background-color:#ffec3d!important}.bg-yellow{background-color:#fadb14!important}.bg-yellow-dark{background-color:#d4b106!important}.bg-yellow-light-h{transition:background-color .3s}.bg-yellow-light-h:hover{background-color:#ffec3d!important}.bg-yellow-h{transition:background-color .3s}.bg-yellow-h:hover{background-color:#fadb14!important}.bg-yellow-dark-h{transition:background-color .3s}.bg-yellow-dark-h:hover{background-color:#d4b106!important}.text-yellow-light{color:#ffec3d!important}.text-yellow{color:#fadb14!important}.text-yellow-dark{color:#d4b106!important}.bg-lime-light{background-color:#bae637!important}.bg-lime{background-color:#a0d911!important}.bg-lime-dark{background-color:#7cb305!important}.bg-lime-light-h{transition:background-color .3s}.bg-lime-light-h:hover{background-color:#bae637!important}.bg-lime-h{transition:background-color .3s}.bg-lime-h:hover{background-color:#a0d911!important}.bg-lime-dark-h{transition:background-color .3s}.bg-lime-dark-h:hover{background-color:#7cb305!important}.text-lime-light{color:#bae637!important}.text-lime{color:#a0d911!important}.text-lime-dark{color:#7cb305!important}.bg-green-light{background-color:#73d13d!important}.bg-green{background-color:#52c41a!important}.bg-green-dark{background-color:#389e0d!important}.bg-green-light-h{transition:background-color .3s}.bg-green-light-h:hover{background-color:#73d13d!important}.bg-green-h{transition:background-color .3s}.bg-green-h:hover{background-color:#52c41a!important}.bg-green-dark-h{transition:background-color .3s}.bg-green-dark-h:hover{background-color:#389e0d!important}.text-green-light{color:#73d13d!important}.text-green{color:#52c41a!important}.text-green-dark{color:#389e0d!important}.bg-cyan-light{background-color:#36cfc9!important}.bg-cyan{background-color:#13c2c2!important}.bg-cyan-dark{background-color:#08979c!important}.bg-cyan-light-h{transition:background-color .3s}.bg-cyan-light-h:hover{background-color:#36cfc9!important}.bg-cyan-h{transition:background-color .3s}.bg-cyan-h:hover{background-color:#13c2c2!important}.bg-cyan-dark-h{transition:background-color .3s}.bg-cyan-dark-h:hover{background-color:#08979c!important}.text-cyan-light{color:#36cfc9!important}.text-cyan{color:#13c2c2!important}.text-cyan-dark{color:#08979c!important}.bg-blue-light{background-color:#40a9ff!important}.bg-blue{background-color:#1890ff!important}.bg-blue-dark{background-color:#096dd9!important}.bg-blue-light-h{transition:background-color .3s}.bg-blue-light-h:hover{background-color:#40a9ff!important}.bg-blue-h{transition:background-color .3s}.bg-blue-h:hover{background-color:#1890ff!important}.bg-blue-dark-h{transition:background-color .3s}.bg-blue-dark-h:hover{background-color:#096dd9!important}.text-blue-light{color:#40a9ff!important}.text-blue{color:#1890ff!important}.text-blue-dark{color:#096dd9!important}.bg-geekblue-light{background-color:#597ef7!important}.bg-geekblue{background-color:#2f54eb!important}.bg-geekblue-dark{background-color:#1d39c4!important}.bg-geekblue-light-h{transition:background-color .3s}.bg-geekblue-light-h:hover{background-color:#597ef7!important}.bg-geekblue-h{transition:background-color .3s}.bg-geekblue-h:hover{background-color:#2f54eb!important}.bg-geekblue-dark-h{transition:background-color .3s}.bg-geekblue-dark-h:hover{background-color:#1d39c4!important}.text-geekblue-light{color:#597ef7!important}.text-geekblue{color:#2f54eb!important}.text-geekblue-dark{color:#1d39c4!important}.bg-purple-light{background-color:#9254de!important}.bg-purple{background-color:#722ed1!important}.bg-purple-dark{background-color:#531dab!important}.bg-purple-light-h{transition:background-color .3s}.bg-purple-light-h:hover{background-color:#9254de!important}.bg-purple-h{transition:background-color .3s}.bg-purple-h:hover{background-color:#722ed1!important}.bg-purple-dark-h{transition:background-color .3s}.bg-purple-dark-h:hover{background-color:#531dab!important}.text-purple-light{color:#9254de!important}.text-purple{color:#722ed1!important}.text-purple-dark{color:#531dab!important}.bg-magenta-light{background-color:#f759ab!important}.bg-magenta{background-color:#eb2f96!important}.bg-magenta-dark{background-color:#c41d7f!important}.bg-magenta-light-h{transition:background-color .3s}.bg-magenta-light-h:hover{background-color:#f759ab!important}.bg-magenta-h{transition:background-color .3s}.bg-magenta-h:hover{background-color:#eb2f96!important}.bg-magenta-dark-h{transition:background-color .3s}.bg-magenta-dark-h:hover{background-color:#c41d7f!important}.text-magenta-light{color:#f759ab!important}.text-magenta{color:#eb2f96!important}.text-magenta-dark{color:#c41d7f!important}.bg-grey-light{background-color:#d9d9d9!important}.bg-grey{background-color:#bfbfbf!important}.bg-grey-dark{background-color:#8c8c8c!important}.bg-grey-light-h{transition:background-color .3s}.bg-grey-light-h:hover{background-color:#d9d9d9!important}.bg-grey-h{transition:background-color .3s}.bg-grey-h:hover{background-color:#bfbfbf!important}.bg-grey-dark-h{transition:background-color .3s}.bg-grey-dark-h:hover{background-color:#8c8c8c!important}.text-grey-light{color:#d9d9d9!important}.text-grey{color:#bfbfbf!important}.text-grey-dark{color:#8c8c8c!important}.bg-primary-light{background-color:#40a9ff!important}.bg-primary{background-color:#1890ff!important}.bg-primary-dark{background-color:#096dd9!important}.bg-primary-h{transition:background-color .3s}.bg-primary-h:hover{background-color:#1890ff!important}.text-primary-light{color:#40a9ff!important}.text-primary{color:#1890ff!important}.text-primary-dark{color:#096dd9!important}.bg-success-light{background-color:#73d13d!important}.bg-success{background-color:#52c41a!important}.bg-success-dark{background-color:#389e0d!important}.bg-success-h{transition:background-color .3s}.bg-success-h:hover{background-color:#52c41a!important}.text-success-light{color:#73d13d!important}.text-success{color:#52c41a!important}.text-success-dark{color:#389e0d!important}.bg-error-light{background-color:#ff7875!important}.bg-error{background-color:#ff4d4f!important}.bg-error-dark{background-color:#d9363e!important}.bg-error-h{transition:background-color .3s}.bg-error-h:hover{background-color:#ff4d4f!important}.text-error-light{color:#ff7875!important}.text-error{color:#ff4d4f!important}.text-error-dark{color:#d9363e!important}.bg-warning-light{background-color:#ffc53d!important}.bg-warning{background-color:#faad14!important}.bg-warning-dark{background-color:#d48806!important}.bg-warning-h{transition:background-color .3s}.bg-warning-h:hover{background-color:#faad14!important}.text-warning-light{color:#ffc53d!important}.text-warning{color:#faad14!important}.text-warning-dark{color:#d48806!important}.bg-info-light{background-color:#40a9ff!important}.bg-info{background-color:#1890ff!important}.bg-info-dark{background-color:#096dd9!important}.bg-info-h{transition:background-color .3s}.bg-info-h:hover{background-color:#1890ff!important}.text-info-light{color:#40a9ff!important}.text-info{color:#1890ff!important}.text-info-dark{color:#096dd9!important}.bg-processing-light{background-color:#40a9ff!important}.bg-processing{background-color:#1890ff!important}.bg-processing-dark{background-color:#096dd9!important}.bg-processing-h{transition:background-color .3s}.bg-processing-h:hover{background-color:#1890ff!important}.text-processing-light{color:#40a9ff!important}.text-processing{color:#1890ff!important}.text-processing-dark{color:#096dd9!important}.bg-highlight-light{background-color:#ff7875!important}.bg-highlight{background-color:#ff4d4f!important}.bg-highlight-dark{background-color:#d9363e!important}.bg-highlight-h{transition:background-color .3s}.bg-highlight-h:hover{background-color:#ff4d4f!important}.text-highlight-light{color:#ff7875!important}.text-highlight{color:#ff4d4f!important}.text-highlight-dark{color:#d9363e!important}.bg-normal-light{background-color:#e6d8d8!important}.bg-normal{background-color:#d9d9d9!important}.bg-normal-dark{background-color:#b3a8a8!important}.bg-normal-h{transition:background-color .3s}.bg-normal-h:hover{background-color:#d9d9d9!important}.text-normal-light{color:#e6d8d8!important}.text-normal{color:#d9d9d9!important}.text-normal-dark{color:#b3a8a8!important}.bg-grey-lighter{background-color:#f5f5f5!important}.bg-grey-lighter-h{transition:background-color .3s}.bg-grey-lighter-h:hover{background-color:#f5f5f5!important}.text-grey-lighter{color:#f5f5f5!important}.bg-grey-darker{background-color:#262626!important}.bg-grey-darker-h{transition:background-color .3s}.bg-grey-darker-h:hover{background-color:#262626!important}.text-grey-darker{color:#262626!important}.d-none{display:none!important}.d-block{display:block!important}.d-inline-block{display:inline-block!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}.flex-1{flex:1!important}.flex-column{flex-direction:column!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-center{display:flex!important;align-items:center!important}.flex-center-between{display:flex!important;align-items:center!important;justify-content:space-between!important}.float-none{float:none!important}.float-left{float:left!important}.float-right{float:right!important}.icon-sm{font-size:28px!important}.icon-md{font-size:56px!important}.icon-lg{font-size:84px!important}.icon-xl{font-size:112px!important}.icon-xxl{font-size:140px!important}.img-fluid{max-width:100%;height:auto}.point{cursor:pointer}.no-resize{resize:none;min-width:100%;max-width:100%}.no-data{font-size:16px;line-height:64px;color:#00000040;text-align:center}.no-data i{position:relative;top:3px;margin-right:16px;font-size:24px}.block-center{margin:0 auto}.bg-center{background-position:center center;background-size:cover}.page-loading{position:absolute;z-index:10000;inset:0;padding-top:200px;text-align:center;background:#f5f5f5}.color-weak{display:block;filter:invert(80%)}.disabled{pointer-events:none;color:#00000040}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.fixed-top{position:fixed;z-index:9;top:0;right:0;left:0}.fixed-bottom{position:fixed;z-index:9;right:0;bottom:0;left:0}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}@media (max-width: 575px){.hidden-xs{display:none!important}}@media (max-width: 767px){.hidden-sm{display:none!important}}@media (max-width: 991px){.hidden-md{display:none!important}}@media (max-width: 1199px){.hidden-lg{display:none!important}}@media (max-width: 1599px){.hidden-xl{display:none!important}}@media (min-width: 768px){.hidden-pc{display:none!important}}@media (max-width: 767px){.hidden-mobile{display:none!important}}.m0{margin:0!important}.mt0{margin-top:0!important}.mr0{margin-right:0!important}.mb0{margin-bottom:0!important}.ml0{margin-left:0!important}.mx0{margin-right:0!important;margin-left:0!important}.my0{margin-top:0!important;margin-bottom:0!important}.p0{padding:0!important}.pt0{padding-top:0!important}.pr0{padding-right:0!important}.pb0{padding-bottom:0!important}.pl0{padding-left:0!important}.px0{padding-right:0!important;padding-left:0!important}.py0{padding-top:0!important;padding-bottom:0!important}.m-xs{margin:4px!important}.mt-xs{margin-top:4px!important}.mr-xs{margin-right:4px!important}.mb-xs{margin-bottom:4px!important}.ml-xs{margin-left:4px!important}.mx-xs{margin-right:4px!important;margin-left:4px!important}.my-xs{margin-top:4px!important;margin-bottom:4px!important}.p-xs{padding:4px!important}.pt-xs{padding-top:4px!important}.pr-xs{padding-right:4px!important}.pb-xs{padding-bottom:4px!important}.pl-xs{padding-left:4px!important}.px-xs{padding-right:4px!important;padding-left:4px!important}.py-xs{padding-top:4px!important;padding-bottom:4px!important}.m-sm{margin:8px!important}.mt-sm{margin-top:8px!important}.mr-sm{margin-right:8px!important}.mb-sm{margin-bottom:8px!important}.ml-sm{margin-left:8px!important}.mx-sm{margin-right:8px!important;margin-left:8px!important}.my-sm{margin-top:8px!important;margin-bottom:8px!important}.p-sm{padding:8px!important}.pt-sm{padding-top:8px!important}.pr-sm{padding-right:8px!important}.pb-sm{padding-bottom:8px!important}.pl-sm{padding-left:8px!important}.px-sm{padding-right:8px!important;padding-left:8px!important}.py-sm{padding-top:8px!important;padding-bottom:8px!important}.m-md{margin:16px!important}.mt-md{margin-top:16px!important}.mr-md{margin-right:16px!important}.mb-md{margin-bottom:16px!important}.ml-md{margin-left:16px!important}.mx-md{margin-right:16px!important;margin-left:16px!important}.my-md{margin-top:16px!important;margin-bottom:16px!important}.p-md{padding:16px!important}.pt-md{padding-top:16px!important}.pr-md{padding-right:16px!important}.pb-md{padding-bottom:16px!important}.pl-md{padding-left:16px!important}.px-md{padding-right:16px!important;padding-left:16px!important}.py-md{padding-top:16px!important;padding-bottom:16px!important}.m-lg{margin:24px!important}.mt-lg{margin-top:24px!important}.mr-lg{margin-right:24px!important}.mb-lg{margin-bottom:24px!important}.ml-lg{margin-left:24px!important}.mx-lg{margin-right:24px!important;margin-left:24px!important}.my-lg{margin-top:24px!important;margin-bottom:24px!important}.p-lg{padding:24px!important}.pt-lg{padding-top:24px!important}.pr-lg{padding-right:24px!important}.pb-lg{padding-bottom:24px!important}.pl-lg{padding-left:24px!important}.px-lg{padding-right:24px!important;padding-left:24px!important}.py-lg{padding-top:24px!important;padding-bottom:24px!important}.m-xl{margin:32px!important}.mt-xl{margin-top:32px!important}.mr-xl{margin-right:32px!important}.mb-xl{margin-bottom:32px!important}.ml-xl{margin-left:32px!important}.mx-xl{margin-right:32px!important;margin-left:32px!important}.my-xl{margin-top:32px!important;margin-bottom:32px!important}.p-xl{padding:32px!important}.pt-xl{padding-top:32px!important}.pr-xl{padding-right:32px!important}.pb-xl{padding-bottom:32px!important}.pl-xl{padding-left:32px!important}.px-xl{padding-right:32px!important;padding-left:32px!important}.py-xl{padding-top:32px!important;padding-bottom:32px!important}.m-xxl{margin:48px!important}.mt-xxl{margin-top:48px!important}.mr-xxl{margin-right:48px!important}.mb-xxl{margin-bottom:48px!important}.ml-xxl{margin-left:48px!important}.mx-xxl{margin-right:48px!important;margin-left:48px!important}.my-xxl{margin-top:48px!important;margin-bottom:48px!important}.p-xxl{padding:48px!important}.pt-xxl{padding-top:48px!important}.pr-xxl{padding-right:48px!important}.pb-xxl{padding-bottom:48px!important}.pl-xxl{padding-left:48px!important}.px-xxl{padding-right:48px!important;padding-left:48px!important}.py-xxl{padding-top:48px!important;padding-bottom:48px!important}[dir=rtl] .mr0{margin-left:0!important;margin-right:inherit!important}[dir=rtl] .ml0{margin-right:0!important;margin-left:inherit!important}[dir=rtl] .pr0{padding-left:0!important;padding-right:inherit!important}[dir=rtl] .pl0{padding-right:0!important;padding-left:inherit!important}[dir=rtl] .mr-xs{margin-left:4px!important;margin-right:inherit!important}[dir=rtl] .ml-xs{margin-right:4px!important;margin-left:inherit!important}[dir=rtl] .pr-xs{padding-left:4px!important;padding-right:inherit!important}[dir=rtl] .pl-xs{padding-right:4px!important;padding-left:inherit!important}[dir=rtl] .mr-sm{margin-left:8px!important;margin-right:inherit!important}[dir=rtl] .ml-sm{margin-right:8px!important;margin-left:inherit!important}[dir=rtl] .pr-sm{padding-left:8px!important;padding-right:inherit!important}[dir=rtl] .pl-sm{padding-right:8px!important;padding-left:inherit!important}[dir=rtl] .mr-md{margin-left:16px!important;margin-right:inherit!important}[dir=rtl] .ml-md{margin-right:16px!important;margin-left:inherit!important}[dir=rtl] .pr-md{padding-left:16px!important;padding-right:inherit!important}[dir=rtl] .pl-md{padding-right:16px!important;padding-left:inherit!important}[dir=rtl] .mr-lg{margin-left:24px!important;margin-right:inherit!important}[dir=rtl] .ml-lg{margin-right:24px!important;margin-left:inherit!important}[dir=rtl] .pr-lg{padding-left:24px!important;padding-right:inherit!important}[dir=rtl] .pl-lg{padding-right:24px!important;padding-left:inherit!important}[dir=rtl] .mr-xl{margin-left:32px!important;margin-right:inherit!important}[dir=rtl] .ml-xl{margin-right:32px!important;margin-left:inherit!important}[dir=rtl] .pr-xl{padding-left:32px!important;padding-right:inherit!important}[dir=rtl] .pl-xl{padding-right:32px!important;padding-left:inherit!important}[dir=rtl] .mr-xxl{margin-left:48px!important;margin-right:inherit!important}[dir=rtl] .ml-xxl{margin-right:48px!important;margin-left:inherit!important}[dir=rtl] .pr-xxl{padding-left:48px!important;padding-right:inherit!important}[dir=rtl] .pl-xxl{padding-right:48px!important;padding-left:inherit!important}.text-left{text-align:left!important}.text-center{text-align:center!important}.text-right{text-align:right!important}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.text-deleted{text-decoration:line-through}.text-nowrap{white-space:nowrap!important}.text-wrap{white-space:pre-wrap!important}.text-truncate{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.font-weight-normal{font-weight:400}.font-weight-bold{font-weight:700}.font-italic{font-style:italic}.text-xs{font-size:12px!important}.text-sm{font-size:14px!important}.text-md{font-size:16px!important}.text-lg{font-size:18px!important}.text-xl{font-size:22px!important}.text-xxl{font-size:28px!important}[dir=rtl] .text-left{text-align:right!important}[dir=rtl] .text-right{text-align:left!important}.width-xs{width:80px!important}.max-width-xs{max-width:80px!important}.min-width-xs{min-width:80px!important}.width-sm{width:160px!important}.max-width-sm{max-width:160px!important}.min-width-sm{min-width:160px!important}.width-md{width:240px!important}.max-width-md{max-width:240px!important}.min-width-md{min-width:240px!important}.width-lg{width:320px!important}.max-width-lg{max-width:320px!important}.min-width-lg{min-width:320px!important}.width-xl{width:400px!important}.max-width-xl{max-width:400px!important}.min-width-xl{min-width:400px!important}.width-xxl{width:480px!important}.max-width-xxl{max-width:480px!important}.min-width-xxl{min-width:480px!important}.width-10{width:10%!important}.max-width-10{max-width:10%!important}.min-width-10{min-width:10%!important}.width-20{width:20%!important}.max-width-20{max-width:20%!important}.min-width-20{min-width:20%!important}.width-30{width:30%!important}.max-width-30{max-width:30%!important}.min-width-30{min-width:30%!important}.width-40{width:40%!important}.max-width-40{max-width:40%!important}.min-width-40{min-width:40%!important}.width-50{width:50%!important}.max-width-50{max-width:50%!important}.min-width-50{min-width:50%!important}.width-60{width:60%!important}.max-width-60{max-width:60%!important}.min-width-60{min-width:60%!important}.width-70{width:70%!important}.max-width-70{max-width:70%!important}.min-width-70{min-width:70%!important}.width-80{width:80%!important}.max-width-80{max-width:80%!important}.min-width-80{min-width:80%!important}.width-90{width:90%!important}.max-width-90{max-width:90%!important}.min-width-90{min-width:90%!important}.width-100{width:100%!important}.max-width-100{max-width:100%!important}.min-width-100{min-width:100%!important}@media (max-width: 767px){.width-sm,.max-width-sm,.min-width-sm{width:100%!important}}.scrollbar{overflow:auto}.scrollbar-x{overflow:auto hidden}.scrollbar-y{overflow:hidden auto}body,.scrollbar,.ant-dialog-wrap,.ant-drawer-body,.ant-drawer-wrapper-body,.ant-anchor-wrapper,textarea.ant-input{scrollbar-color:rgba(0,0,0,.3) #6e6e6e;scrollbar-width:thin}body::-webkit-scrollbar,.scrollbar::-webkit-scrollbar,.ant-dialog-wrap::-webkit-scrollbar,.ant-drawer-body::-webkit-scrollbar,.ant-drawer-wrapper-body::-webkit-scrollbar,.ant-anchor-wrapper::-webkit-scrollbar,textarea.ant-input::-webkit-scrollbar{width:6px;height:6px}body::-webkit-scrollbar-track,.scrollbar::-webkit-scrollbar-track,.ant-dialog-wrap::-webkit-scrollbar-track,.ant-drawer-body::-webkit-scrollbar-track,.ant-drawer-wrapper-body::-webkit-scrollbar-track,.ant-anchor-wrapper::-webkit-scrollbar-track,textarea.ant-input::-webkit-scrollbar-track{box-shadow:inset 0 0 6px #0000004d}body::-webkit-scrollbar-thumb,.scrollbar::-webkit-scrollbar-thumb,.ant-dialog-wrap::-webkit-scrollbar-thumb,.ant-drawer-body::-webkit-scrollbar-thumb,.ant-drawer-wrapper-body::-webkit-scrollbar-thumb,.ant-anchor-wrapper::-webkit-scrollbar-thumb,textarea.ant-input::-webkit-scrollbar-thumb{background-color:#6e6e6e;outline:1px solid #333}.st{display:block}.st__p-left .ant-table-pagination{float:none;display:block;text-align:left}.st__p-center .ant-table-pagination{float:none;display:block;text-align:center}.st__btn-sub .st__btn-text{width:100%;color:inherit}.st__btn-disabled .st__btn-text{pointer-events:none;color:#00000040}.st .nz-resizable-handle{display:flex;align-items:center;justify-content:center}.st .nz-resizable-handle>i{width:1px;height:60%;background:#d9d9d9}.st .nz-resizable-preview{border-width:0;border-right-width:1px}.st .nz-resizable.ant-table-column-has-sorters .nz-resizable-handle{margin-right:8px}.st .ant-table~nz-pagination>.ant-pagination{margin-bottom:0}.st__filter-keyword{padding:8px}.st__filter-date .ant-picker-panel-container{box-shadow:none}.st__filter-date .ant-picker-panel-container .ant-picker-panel{border:none}.st__has-filter .ant-table-column-sorters{padding-right:16px}.st__has-filter .st__filter{position:absolute;top:0;right:0;bottom:0;display:flex;place-items:center center}.st__has-filter .ant-table-filter-trigger{height:100%}.st__has-filter.ant-table-column-has-sorters .st__filter{right:-32px}.st__head-optional,.st__head-tip{margin-left:2px;color:#00000059}.st .ant-table-thead>tr>th .ant-table-filter-selected.ant-table-filter-icon{color:#1890ff}.st__checkall-selection{display:inline-block;margin-left:4px}.st .ant-table-tbody>tr .ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td{border-bottom:1px solid #f0f0f0}.st .ant-table-tbody>tr .ant-table-wrapper:only-child .ant-table{margin:0}.st .text-truncate.ant-table-cell-fix-left-first:after,.st .text-truncate.ant-table-cell-fix-left-last:after{transform:translate(80%)}.st .text-truncate.ant-table-cell-fix-right-first:after,.st .text-truncate.ant-table-cell-fix-right-last:after{transform:translate(-80%)}.st__no-column .ant-table{height:100px}.st__no-column .ant-table-content{display:none}.st__row-class .ant-table-tbody>tr>td .ant-table-cell-fix-left,.st__row-class .ant-table-tbody>tr>td .ant-table-cell-fix-right{background:inherit}@media screen and (min-width: 768px){.st__width-strict .ant-table-content>table,.st__width-strict .ant-table-body>table{table-layout:fixed!important;word-wrap:break-word!important}}.sv{display:block}.sv+.sv{margin-top:16px}.sv__container{display:block}.sv__container .ant-row{overflow:hidden;margin-bottom:-16px}.sv__item-fixed{display:flex}.sv__item-fixed .sv__label{overflow:hidden;flex:0 0 auto;text-align:right;text-overflow:ellipsis}.sv__item-fixed .sv__detail{flex:1 0 0}.sv__item+.ant-divider{margin:0 0 16px}.sv__title{float:none;clear:both;display:block;width:100%;margin-bottom:16px;font-size:14px;font-weight:500;color:#000000d9}.sv__label{display:table-cell;padding-bottom:16px;line-height:22px;color:#00000080;white-space:nowrap}.sv__label:not(.sv__label-empty):after{content:":";position:relative;top:-.5px;margin:0 8px 0 2px}.sv__label-optional{margin-left:2px;color:#00000059}.sv__label-optional-no-text{margin-left:0}.sv__label-optional>.anticon{margin-left:2px}.sv__detail{display:table-cell;width:100%;padding-bottom:16px;line-height:22px;color:#000000d9;word-break:break-all;vertical-align:top}.sv__type-primary .sv__detail{color:#1890ff}.sv__type-success .sv__detail{color:#52c41a}.sv__type-danger .sv__detail{color:#ff4d4f}.sv__type-warning .sv__detail{color:#faad14}.sv__default:before{content:"-"}.sv__default~.sv__unit{display:none!important}.sv__unit{display:inline;margin-left:8px;color:#8c8c8c}.sv__small .ant-row{margin-bottom:-8px}.sv__small .sv__title{margin-bottom:12px;color:#000000d9}.sv__small .sv__label,.sv__small .sv__detail{padding-bottom:8px}.sv__value{display:inline-flex;align-items:center}.sv__value-prefix,.sv__value-unit{font-size:12px;font-style:normal;color:#00000080}.sv__value-prefix{padding-right:3px}.sv__value-text{font-size:18px}.sv__value-unit{padding-left:3px}.sv__value:not(:first-child){position:relative;margin-left:8px;padding-left:14px}.sv__value:not(:first-child):before{content:"/";position:absolute;left:0;width:6px;color:#00000080}.sv__value-small .sv__value-text{font-size:14px}.sv__value-large .sv__value-text{font-size:24px}.sv__large .sv__title{font-size:16px}.sv__horizontal .sv__label-width{display:flex;justify-content:flex-end}.sv__horizontal .sv__label-width .sv__label-text{overflow:hidden;text-overflow:ellipsis}.sv__vertical .sv__label{padding-bottom:8px}.sv__vertical .sv__label,.sv__vertical .sv__detail{display:block}.sv__no-colon:after{content:" "!important}.sv__bordered{overflow:hidden;border-top:1px solid #f0f0f0;border-bottom:1px solid #f0f0f0;border-left:1px solid #f0f0f0}.sv__bordered .sv__item{border-right:1px solid #f0f0f0;border-bottom:1px solid #f0f0f0}.sv__bordered .sv__label{background-color:#fafafa;border-right:1px solid #f0f0f0}.sv__bordered .sv__label,.sv__bordered .sv__detail{padding:12px 24px}.sv__bordered.sv__large .sv__label,.sv__bordered.sv__large .sv__detail{padding:16px 24px}.sv__bordered.sv__small .sv__label,.sv__bordered.sv__small .sv__detail{padding:8px 16px}.se__title{float:none;clear:both;display:block;width:100%;font-size:14px;font-weight:700;line-height:1.5715;color:#000000d9}.se__item{transition:none}.se__item:last-child{margin-bottom:0;padding-bottom:0}.se__item-empty:before{content:"";display:inline-block}.se__item+.ant-divider{margin:0 0 24px}.se__label{display:table-cell;flex:0 0 auto;width:initial;text-align:right;white-space:nowrap}.se__label-optional{margin-left:2px;color:#00000059}.se__label-optional-no-text{margin-left:0}.se__label-optional>.anticon{margin-left:2px}.se__control{flex:1 0 0;width:100%}.se__compact>.se__title,.se__compact>.se__item{margin-bottom:8px}.se__compact>.se__title+.ant-divider,.se__compact>.se__item+.ant-divider{margin:0 0 8px}.se__compact .ant-form-item-extra{display:none}.se__line{padding-bottom:8px;border-bottom:1px dashed #f0f0f0}.se__hide-label .se__nolabel,.se__inline .se__nolabel,.se__vertical .se__nolabel{display:none!important}.se__horizontal>.se__item{display:flex}.se__horizontal>.se__item:last-child{margin-bottom:0}.se__horizontal>.se__item .se__label{display:flex;justify-content:flex-end}.se__horizontal>.se__item .se__label-text{overflow:hidden;text-overflow:ellipsis}.se__horizontal>.se__item .ant-form-item-required:before{line-height:inherit}.se__horizontal>.se__item .ant-form-item-label>label:after{margin-left:4px}.se__vertical>.se__item{display:block;width:100%}.se__inline .ant-form-item-label,.se__inline .se__control{display:inline-block;width:initial!important;text-align:left;vertical-align:top}.se__inline>.se__item{margin-right:16px}.se__inline>.se__item[col="1"]{flex-basis:auto;width:100%}.se__inline>.se__item:last-child{margin-right:0}.se__no-colon:after{content:" "!important}@media (max-width: 767px){.se__horizontal>.se__item{display:block}.se__horizontal>.se__item .ant-form-item-label{width:100%!important;text-align:left}.se__horizontal>.se__item .se__label{justify-content:normal}.se__horizontal .se__label,.se__vertical .se__label,.se__horizontal .se__control,.se__vertical .se__control{width:100%!important}}.avatar-list{display:inline-block}.avatar-list__wrap{display:inline-block;margin-left:8px;padding:0;font-size:0}.avatar-list__item{display:inline-block;width:32px;height:32px;margin-left:-8px;font-size:14px}.avatar-list__item .ant-avatar{cursor:pointer;border:1px solid #fff}.avatar-list__large{width:40px;height:40px}.avatar-list__small{width:24px;height:24px}.avatar-list__mini{width:20px;height:20px}.avatar-list__mini .ant-avatar{width:20px;height:20px;line-height:20px}.avatar-list__mini .ant-avatar-string{font-size:12px;line-height:18px}.avatar-list-rtl{direction:rtl}ellipsis{display:inline}.ellipsis{overflow:hidden;display:inline-block;width:100%;word-break:break-all}.ellipsis__lines{position:relative}.ellipsis__line-clamp{position:relative;overflow:hidden;display:-webkit-box;text-overflow:ellipsis}.ellipsis__shadow{position:absolute;z-index:-999;display:block;color:transparent;opacity:0}.error-collect{cursor:pointer;padding-right:24px;color:#f5222d}.error-collect__count{padding-left:8px}.error-collect-rtl{direction:rtl;padding-right:0;padding-left:24px}.error-collect-rtl .error-collect__count{padding-right:8px;padding-left:0}.exception{display:flex;align-items:center;height:100%}.exception__img-block{zoom:1;flex:0 0 62.5%;width:62.5%;padding-right:152px}.exception__img-block:before,.exception__img-block:after{content:" ";display:table}.exception__img-block:after{clear:both;height:0;font-size:0;visibility:hidden}.exception__img{float:right;width:100%;max-width:430px;height:360px;background-repeat:no-repeat;background-position:50% 50%;background-size:100% 100%}.exception__cont{flex:auto}.exception__cont-title{margin-bottom:24px;font-size:72px;font-weight:600;line-height:72px;color:#434e59}.exception__cont-desc{margin-bottom:16px;font-size:20px;line-height:28px;color:#00000073}.exception__cont-actions .ant-btn:not(:last-child){margin-right:8px}@media screen and (max-width: 1200px){.exception__img-block{padding-right:88px}}@media screen and (max-width: 576px){.exception{display:block;text-align:center}.exception__img-block{margin:0 auto 24px;padding-right:0}}@media screen and (max-width: 480px){.exception__img-block{overflow:hidden;margin-bottom:-24px}}.exception-rtl{direction:rtl}.exception-rtl .exception__cont-actions .ant-btn:not(:last-child){margin-right:0}.footer-toolbar{position:fixed;z-index:9;right:0;bottom:0;display:flex;width:100%;height:56px;padding:0 24px;line-height:56px;background:#fff;border-top:1px solid #f0f0f0;box-shadow:0 -1px 2px #00000008;transition:all .3s}.footer-toolbar__left{flex:1}.full-content{overflow:auto;display:block;height:100%}.full-content__body{overflow:hidden}.global-footer{display:block;margin:48px 0 24px;padding:0 16px;text-align:center}.global-footer__links{margin-bottom:8px}.global-footer__links-item{display:inline-block;color:#00000073;transition:all .3s}.global-footer__links-item:not(:last-child){margin-right:40px}.global-footer__links-item:hover{color:#000000d9}.global-footer__copyright{font-size:14px;color:#00000073}.global-footer-rtl{direction:rtl}.global-footer-rtl .global-footer__links-item:not(:last-child){margin-right:inherit;margin-left:40px}.notice-icon{width:336px}.notice-icon__btn{cursor:pointer;display:inline-block;transition:all .3s}.notice-icon .ant-popover-inner-content{padding:0}.notice-icon .ant-tabs-bar{margin-bottom:4px}.notice-icon__tab-left .ant-tabs-nav-list .ant-tabs-tab:first-child{margin-left:32px}.notice-icon .ant-list{overflow:auto;max-height:400px}.notice-icon .ant-list-item{cursor:pointer;overflow:hidden;padding-right:24px;padding-left:24px;transition:all .3s}.notice-icon .ant-list-item:last-child{border-bottom:0}.notice-icon .ant-list-item:hover{background:#e6f7ff}.notice-icon .ant-list-item-meta{width:100%}.notice-icon .ant-list-item-meta-title{margin-bottom:8px;font-weight:400}.notice-icon .ant-list-item .ant-avatar{margin-top:4px;background:#fff}.notice-icon__notfound{padding:73px 0 88px;color:#00000073;text-align:center}.notice-icon__notfound-img{display:inline-block;height:76px;margin-bottom:16px}.notice-icon__clear{cursor:pointer;height:46px;line-height:46px;color:#000000d9;text-align:center;border-top:1px solid #f0f0f0;border-radius:0 0 2px 2px;transition:all .3s}.notice-icon__clear:hover{color:#000000d9}.notice-icon__item .ant-badge-count{top:-10px}.notice-icon__item-read{opacity:.4}.notice-icon__item-desc{font-size:12px;line-height:1.5715}.notice-icon__item-time{margin-top:4px;font-size:12px;line-height:1.5715}.notice-icon__item-extra{float:right;margin-top:-1.5px;margin-right:0;font-weight:400;color:#00000073}.page-header{display:block;padding:16px 32px 0;background-color:#fff;border-bottom:1px solid #f0f0f0}.page-header__wide{max-width:1200px;margin:auto}.page-header .ant-breadcrumb{margin-bottom:16px}.page-header .ant-tabs{margin:0 0 -17px}.page-header .ant-tabs-bar{border-bottom:1px solid #f0f0f0}.page-header__detail{display:flex}.page-header__row{display:flex;width:100%}.page-header__logo{flex:0 1 auto;margin-right:16px;padding-top:1px}.page-header__logo img{display:block;width:28px;height:28px;border-radius:2px}.page-header__title{font-size:20px;font-weight:500;color:#000000d9}.page-header__title small{padding-left:8px;font-size:14px;font-weight:400;color:#0006}.page-header__action{min-width:266px;margin-left:56px}.page-header__title,.page-header__desc{flex:auto}.page-header__action,.page-header__extra,.page-header__main{flex:0 1 auto}.page-header__main{width:100%}.page-header__title,.page-header__action,.page-header__logo,.page-header__desc,.page-header__extra{margin-bottom:16px}.page-header__action,.page-header__extra{display:flex;justify-content:flex-end}.page-header__extra{min-width:242px;margin-left:88px}@media screen and (max-width: 1200px){.page-header__extra{margin-left:44px}}@media screen and (max-width: 992px){.page-header__extra{margin-left:20px}}@media screen and (max-width: 768px){.page-header__row{display:block}.page-header__action,.page-header__extra{justify-content:start;margin-left:0}}@media screen and (max-width: 576px){.page-header__detail{display:block}}@media screen and (max-width: 480px){.page-header__action .ant-btn-group,.page-header__action .ant-btn{display:block;margin-bottom:8px}.page-header__action .ant-input-search-enter-button .ant-btn{margin-bottom:0}.page-header__action .ant-btn-group>.ant-btn{display:inline-block;margin-bottom:0}}.page-header-rtl{direction:rtl}.page-header-rtl .page-header__logo{margin-right:0;margin-left:16px}.page-header-rtl .page-header__title small{padding-right:8px;padding-left:0}.page-header-rtl .page-header__action{margin-right:56px;margin-left:0}.page-header-rtl .page-header__extra{margin-right:88px;margin-left:0}@media screen and (max-width: 1200px){.page-header-rtl .page-header__extra{margin-right:44px;margin-left:0}}@media screen and (max-width: 992px){.page-header-rtl .page-header__extra{margin-right:20px;margin-left:0}}.quick-menu{position:fixed;z-index:11;right:-1px;left:auto;display:block;backface-visibility:hidden;transition:margin .3s cubic-bezier(1,0,0,1)}.quick-menu,.quick-menu__ctrl{background-color:#fff;border:1px solid #fff;box-shadow:0 6px 16px -8px #00000014,0 9px 28px #0000000d,0 12px 48px 16px #00000008}.quick-menu__inner{position:relative;padding:0 12px}.quick-menu__ctrl{cursor:pointer;position:absolute;top:-1px;left:-50px;width:50px;height:50px;text-align:center;border-right:0;border-radius:3px 0 0 3px}.quick-menu__ctrl-icon{font-size:20px;line-height:49px}.result{display:block;width:72%;margin:0 auto;text-align:center}.result__icon{margin-bottom:24px;font-size:72px;line-height:72px}.result__icon-success{color:#52c41a}.result__icon-error{color:#ff4d4f}.result__title{margin-bottom:16px;font-size:24px;font-weight:500;line-height:32px;color:#000000d9}.result__desc{margin-bottom:24px;font-size:14px;line-height:22px;color:#00000073}.result__extra{padding:24px 40px;text-align:left;background:#fafafa;border-radius:2px}@media screen and (max-width: 480px){.result__extra{padding:18px 20px}}.result__actions{margin-top:32px}.result__actions button:not(:last-child){margin-right:8px}.result .ant-steps .ant-steps-head,.result .ant-steps .ant-steps-title{background:#fafafa}@media screen and (max-width: 480px){.result{width:100%}}.result-rtl{direction:rtl}.reuse-tab{-webkit-user-select:none;user-select:none;display:block;background-color:#fff;outline:none}.reuse-tab .ant-tabs-nav .ant-tabs-tab .reuse-tab__op{position:absolute;display:none;margin:0;font-size:10px;color:#000000d9}.reuse-tab .ant-tabs-nav .ant-tabs-tab:hover .reuse-tab__op{display:block}.reuse-tab .ant-tabs-nav .ant-tabs-tab .reuse-tab__name-width{overflow:hidden;display:inline-block;text-overflow:ellipsis}.reuse-tab .ant-tabs>.ant-tabs-nav{margin:0}.reuse-tab__line{padding:8px;border-bottom:1px solid #d9d9d9}.reuse-tab__line .ant-tabs-nav:before{border-bottom:none}.reuse-tab__line .ant-tabs-nav .ant-tabs-tab{padding:0}.reuse-tab__line .ant-tabs-nav .ant-tabs-tab .reuse-tab__op{top:12px;right:2px}.reuse-tab__line .ant-tabs-nav .ant-tabs-tab .reuse-tab__name{display:inline-block;padding:8px 20px}.reuse-tab__card{padding-top:8px}.reuse-tab__card .ant-tabs-nav-container{padding:0 8px}.reuse-tab__card .ant-tabs-nav .ant-tabs-tab .reuse-tab__op{top:4px;right:4px}.reuse-tab__disabled{pointer-events:none;opacity:.8}.reuse-tab__cm .ant-menu{border:1px solid #e9e9e9}.reuse-tab-rtl{direction:rtl}.tag-select{-webkit-user-select:none;user-select:none;position:relative;overflow:hidden;display:block;max-height:38px;margin-top:-16px;margin-left:-8px;line-height:1.5715;transition:all .3s}.tag-select__expanded{max-height:200px;transition:all .3s}.tag-select__has-expand{padding-right:50px}.tag-select .ant-tag{margin-top:16px;margin-right:24px}.tag-select__trigger{position:absolute;top:0;right:0;display:flex;align-items:center;margin-right:0!important;color:#1890ff}.tag-select__trigger>.anticon{margin-left:2px;font-size:8px;transition:transform .24s}.tag-select-rtl{direction:rtl;margin-right:-8px;margin-left:0}.tag-select-rtl__has-expand{padding-right:0!important;padding-left:50px!important}.tag-select-rtl .tag-select .ant-tag{margin-right:0;margin-left:24px}.tag-select-rtl .tag-select__trigger{right:initial;left:0}.tag-select-rtl .tag-select__trigger-icon{margin-right:0;margin-left:8px}.down-file__not-support{display:none}.loading-backdrop{z-index:9999;opacity:1;background-color:#00000026}.loading-default{position:fixed;z-index:10000;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.loading-default__icon{margin-bottom:8px;font-size:24px;color:#1890ff}.loading-default__text{color:#1890ff}.loading-default__custom{width:64px;height:64px;fill:#fff}.loading-default-rtl{direction:rtl}.onboarding+.cdk-overlay-container{z-index:99999}.onboarding__mask{position:fixed;z-index:99998;inset:0;opacity:.5;background-color:#000}.onboarding__item{position:absolute}.onboarding__light{pointer-events:none;position:absolute;z-index:99999;background-color:#ffffffe6;animation:2.5s cubic-bezier(.55,.05,.6,.2) 0s infinite normal none running onboardingAnt}.onboarding__light-el{z-index:100000!important}.onboarding__light-ant{transition:all .3s ease-out}.onboarding__footer{margin-top:8px}.onboarding__total{color:#000000d9}@keyframes onboardingAnt{0%,33%{box-shadow:#fff 0 0 0 2px,#fff 0 0}66%,to{box-shadow:#fff 0 0 0 2px,#ffffff03 0 0 0 10px}}.onboarding-rtl{direction:rtl}.pdf-container{position:absolute;overflow-x:auto;width:100%;height:100%;-webkit-overflow-scrolling:touch}.cell__has-unit{align-items:baseline}.cell__has-default{color:#00000073}.cell__primary{color:#1890ff}.cell__success{color:#52c41a}.cell__danger{color:#ff4d4f}.cell__warning{color:#faad14}.cell__large{font-size:18px}.cell__small{font-size:12px}.cell[data-type=img] .img:not(:last-child){margin-right:4px}.cell .img{vertical-align:middle;border-radius:4px}.cell .unit{margin-left:2px;font-size:12px;color:#00000073}.cell__disabled[data-type=link]{pointer-events:none}.cell__disabled[data-type=link]>a{color:#000000d9}g2-chart,g2-bar,g2-gauge,g2-mini-area,g2-mini-bar,g2-single-bar,g2-tag-cloud,g2-timeline,g2,g2-custom{display:block}g2-bar,g2-tag-cloud{width:100%}.g2-card{position:relative}.g2-card__top{position:relative;overflow:hidden;width:100%}.g2-card__top-margin{margin-bottom:12px}.g2-card__top-has-margin{margin-bottom:20px}.g2-card__meta{height:22px;font-size:14px;line-height:22px;color:#00000073}.g2-card__meta-wrap{float:left}.g2-card__meta-action{cursor:pointer;position:absolute;top:4px;right:0;line-height:1}.g2-card__avatar{position:relative;top:4px;float:left;margin-right:20px}.g2-card__avatar img{border-radius:100%}.g2-card__total{overflow:hidden;height:38px;margin-top:4px;margin-bottom:0;font-size:30px;line-height:38px;color:#000000d9;text-overflow:ellipsis;word-break:break-all;white-space:nowrap}.g2-card__desc{width:100%;margin-bottom:12px}.g2-card__footer{margin-top:8px;padding-top:9px;border-top:1px solid #f0f0f0}.g2-card__footer>*{position:relative}.g2-mini-progress{position:relative;display:block;width:100%;padding:5px 0}.g2-mini-progress__wrap{position:relative;background-color:#f5f5f5}.g2-mini-progress__value{width:0;height:100%;background-color:#1890ff;border-radius:1px 0 0 1px;transition:all .4s cubic-bezier(.08,.82,.17,1) 0s}.g2-mini-progress__target{position:absolute;top:0;bottom:0}.g2-mini-progress__target-item{position:absolute;top:0;left:0;width:2px;height:4px;border-radius:100px}.g2-mini-progress__target-item:last-child{top:auto;bottom:0}.g2-pie{position:relative;display:block}.g2-pie__chart{position:relative}.g2-pie__legend{position:absolute;top:50%;right:0;transform:translateY(-50%);min-width:250px;margin:0 20px;padding:0;list-style:none}.g2-pie__legend-item{cursor:pointer;height:22px;margin-bottom:16px;line-height:22px}.g2-pie__legend-item:last-child{margin-bottom:0}.g2-pie__legend-title{color:#000000d9}.g2-pie__legend-dot{position:relative;top:-1px;display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:8px}.g2-pie__legend-percent{color:#00000073}.g2-pie__legend-value{position:absolute;right:0}.g2-pie__legend-has .g2-pie__chart{width:calc(100% - 240px)}.g2-pie__legend-block .g2-pie__chart{width:100%;margin:0 0 32px}.g2-pie__legend-block .g2-pie__legend{position:relative;transform:none;min-width:auto}.g2-pie__total{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);height:62px;text-align:center}.g2-pie__total-title{height:22px;margin-bottom:8px;font-size:14px;font-weight:400;line-height:22px;color:#00000073}.g2-pie__total-stat{display:block;height:32px;font-size:1.2em;line-height:32px;color:#000000d9;white-space:nowrap}.g2-pie__mini .g2-pie__total-title{margin-top:4px;margin-bottom:0}.g2-radar{display:block}.g2-radar__legend{margin-top:16px}.g2-radar__legend-item{cursor:pointer;position:relative;line-height:22px;color:#00000073;text-align:center}.g2-radar__legend-item:after{content:"";position:absolute;top:8px;right:0;width:1px;height:40px;background-color:#f0f0f0}.g2-radar__legend-item:last-child:after{display:none}.g2-radar__legend-title{margin-top:4px;margin-bottom:0;padding-left:16px;font-size:24px;line-height:32px;color:#000000d9}.g2-radar__legend-dot{position:relative;top:-1px;display:inline-block;width:6px;height:6px;margin-right:6px;border-radius:6px}.g2-water-wave{position:relative;transform-origin:left;display:inline-block}.g2-water-wave__desc{position:absolute;top:32px;left:0;width:100%;text-align:center}.g2-water-wave__desc-title{font-size:14px;line-height:22px;color:#00000073}.g2-water-wave__desc-percent{font-size:24px;line-height:32px;color:#000000d9}.g2-water-wave__canvas{transform-origin:0 0;transform:scale(.5)}.number-info{display:inline-block}.number-info__title{margin-bottom:16px;font-size:16px;color:#000000d9;transition:all .3s}.number-info__title-sub{overflow:hidden;height:22px;font-size:14px;line-height:22px;color:#00000073;text-overflow:ellipsis;word-break:break-all;white-space:nowrap}.number-info__value{overflow:hidden;margin-top:4px;font-size:0;text-overflow:ellipsis;word-break:break-all;white-space:nowrap}.number-info__value-suffix{margin-left:4px;font-size:16px;font-style:normal;color:#000000d9}.number-info__value-text{display:inline-block;height:32px;font-size:24px;line-height:32px;color:#000000d9}.number-info__value-sub{margin-left:32px;font-size:16px;color:#00000073;vertical-align:top}.number-info__value-sub .anticon{transform:scale(.82);margin-left:4px;font-size:12px}.number-info__value-sub .anticon-caret-up{color:#f5222d}.number-info__value-sub .anticon-caret-down{color:#52c41a}.number-info__light .number-info__value-text{color:#000000d9}.number-info:not(:first-child){position:relative;margin-left:32px;padding-left:32px}.number-info:not(:first-child):after{content:"";position:absolute;top:0;bottom:0;left:0;width:1px;margin:8px 0;background-color:#f0f0f0}.trend{display:inline-block;font-size:14px;line-height:22px}.trend__up,.trend__down{position:relative;top:1px;margin-left:4px}.trend__up i,.trend__down i{transform:scale(.83);font-size:12px}.trend__up{color:#f5222d}.trend__down{top:-1px;color:#52c41a}.trend__grey .trend__up,.trend__grey .trend__down{color:#000000d9}.trend__reverse .trend__up{color:#52c41a}.trend__reverse .trend__down{color:#f5222d}html{touch-action:manipulation;direction:ltr;height:100%}html,body,app-root{height:100%}body{color:#000000d9;background-color:#f5f7fa}.alain-default{position:relative;overflow-x:hidden;display:block;width:100%;height:auto;min-height:100%}.alain-default__unwrap{margin-right:-24px;margin-left:-24px}@media (max-width: 767px){.alain-default__unwrap{margin-right:0;margin-left:0}}.alain-default__content{margin:0 24px 24px}.alain-default__content-title{display:flex;align-items:center;justify-content:space-between;margin-right:-24px;margin-bottom:24px;margin-left:-24px;padding:12px 24px;color:#929292;background-color:#fafbfc;border-bottom:1px solid #efe3e5}.alain-default__content-title>h1{margin-bottom:0;font-size:18px;font-weight:400}.alain-default__content-title>h1>small{display:block;font-size:12px;color:#8c8c8c}.alain-default__content nz-input-group{width:auto}.alain-default__hide-aside .alain-default__content{transform:none!important;margin-left:24px!important}.alain-default__hide-header .alain-default__aside{margin-top:0}@media (min-width: 768px){.alain-default__content{margin-left:224px}.alain-default__collapsed .alain-default__sidebar{width:64px}.alain-default__collapsed .alain-default__content{margin-left:88px}}@media (min-width: 768px){[dir=rtl] .alain-default__content{margin-right:224px;margin-left:0}[dir=rtl] .alain-default__collapsed .alain-default__content{margin-right:88px;margin-left:0}}.alain-default__header{z-index:19;display:flex;align-items:center;width:100%;height:64px;padding:0 16px;background-color:#1890ff;box-shadow:0 1px 10px #0003}.alain-default__header-logo{width:200px;margin-left:-16px;transition:width .2s cubic-bezier(.25,0,.15,1)}.alain-default__header-logo-link{display:block;text-align:center}.alain-default__header-logo-expanded,.alain-default__header-logo-collapsed{max-width:100%;max-height:36px;vertical-align:middle;animation:fadeIn 1s}.alain-default__header-logo-collapsed{display:none}.alain-default__header-logo-expanded{display:inline-block}.alain-default__nav{display:flex;align-items:center;margin:0;padding:0}.alain-default__nav:first-child{margin-right:16px}.alain-default__nav-middle{flex:1}.alain-default__nav-wrap{display:flex;flex:1;justify-content:space-between}.alain-default__nav>li{display:inline-block;vertical-align:middle}.alain-default__nav-item,.alain-default__nav nz-badge{color:#fff}.alain-default__nav-item{cursor:pointer;display:block;min-width:50px;padding:8px 2px;line-height:100%;text-align:center;border-radius:2px;outline:none;transition:background-color .3s}.alain-default__nav-item:hover{color:#fff;background-color:#fff3}.alain-default__nav-item>i,.alain-default__nav-item-icon{transform:none!important;font-size:18px!important}.alain-default__top-menu-item{display:flex;align-items:center;height:64px;padding:0 16px;border-radius:0}.alain-default__top-menu-item-selected{color:#fff;background-color:#fff3}.alain-default__top-menu-item-disabled{pointer-events:none;opacity:.5}.alain-default__search{position:relative;display:flex;flex:1;align-items:center;margin:0 24px}.alain-default__search .ant-input{padding-left:0}.alain-default__search .ant-input:focus{box-shadow:none}.alain-default__search .ant-input,.alain-default__search .ant-input-group-addon,.alain-default__search .ant-input-affix-wrapper{color:#fff;background-color:#fff3;border:none}.alain-default__search .ant-input::placeholder,.alain-default__search .ant-input-group-addon::placeholder,.alain-default__search .ant-input-affix-wrapper::placeholder{color:#fff;opacity:1}.alain-default__search .ant-input-affix-wrapper .ant-input{background-color:transparent}.alain-default__search .ant-input-group-addon i,.alain-default__search .ant-input-affix-wrapper i{color:#fff;transition:color .3s,transform .4s}.alain-default__search-focus .ant-input,.alain-default__search-focus .ant-input-group-addon,.alain-default__search-focus .ant-input-affix-wrapper{color:#595959;background-color:#f3f3f3}.alain-default__search-focus .ant-input::placeholder,.alain-default__search-focus .ant-input-group-addon::placeholder,.alain-default__search-focus .ant-input-affix-wrapper::placeholder{color:#595959;opacity:1}.alain-default__search-focus .ant-input-group-addon i,.alain-default__search-focus .ant-input-affix-wrapper i{transform:rotate(90deg);color:#595959}@media (max-width: 767px){.alain-default__search{position:absolute;z-index:29;top:0;left:0;align-items:center;width:100%;height:100%;margin:0;padding:0 16px;background-color:#fff;transition:transform .3s}.alain-default__search-toggled{display:flex}.alain-default__search:not(.alain-default__search-toggled){transform:translate3d(0,-105%,0)}}.alain-default__collapsed .alain-default__header-logo{width:64px}.alain-default__collapsed .alain-default__header-logo-collapsed{display:inline-block}.alain-default__collapsed .alain-default__header-logo-expanded{display:none}@media (max-width: 767px){.alain-default__header-logo{width:64px}.alain-default__header-logo-collapsed{display:inline}.alain-default__header-logo-expanded{display:none}}[dir=rtl] .alain-default__header-logo{margin-right:-16px;margin-left:0}.alain-default__aside{position:absolute;z-index:14;top:0;bottom:0;overflow:hidden;width:200px;margin-top:64px;backface-visibility:hidden;background-color:#fff;transition:width .2s cubic-bezier(.25,0,.15,1),translate .2s cubic-bezier(.25,0,.15,1);-webkit-overflow-scrolling:touch}.alain-default__aside:after{content:"";position:absolute;top:0;right:0;bottom:0;border-right:1px solid #efe3e5}.alain-default__aside-wrap{display:flex;flex-direction:column;height:100%}.alain-default__aside-inner{scrollbar-width:none;scroll-snap-type:proximity;overflow-x:hidden scroll;flex:1 1 0%;-webkit-overflow-scrolling:touch;scroll-snap-points-x:snaplist(100%,200%,300%,400%,500%)}.alain-default__aside-inner::-webkit-scrollbar{width:0;height:0}.alain-default__aside-inner::-webkit-scrollbar-track{box-shadow:inset 0 0 0 transparent}.alain-default__aside-inner::-webkit-scrollbar-thumb{background-color:transparent}.alain-default__aside-link{border-top:1px solid #efe3e5}.alain-default__aside-link-collapsed{cursor:pointer;padding:8px 0;font-size:16px;text-align:center}@media (min-width: 768px){.alain-default__collapsed .alain-default__aside{width:64px}}@media (max-width: 767px){.alain-default__aside,.alain-default__content{transition:transform .3s ease}.alain-default__content{transform:translate3d(200px,0,0)}.alain-default__collapsed .alain-default__aside{transform:translate3d(-100%,0,0)}.alain-default__collapsed .alain-default__content{transform:translateZ(0)}}[dir=rtl] .alain-default__aside:after{right:inherit;left:0}@media (max-width: 767px){[dir=rtl] .alain-default__content{transform:translate3d(-200px,0,0)}[dir=rtl] .alain-default__collapsed .alain-default__aside{transform:translate3d(100%,0,0)}[dir=rtl] .alain-default__collapsed .alain-default__content{transform:translateZ(0)}}.alain-default__progress-bar{position:fixed;z-index:29;overflow:hidden;width:100vw;height:4px;background:rgba(221,221,221,.4)}.alain-default__progress-bar:after{content:" ";transform-origin:top left;display:block;width:33.3vw;height:100%;animation:gradcolours 5s steps(1) infinite,loadthird 1s infinite linear}@keyframes loadthird{0%{transform:translate(-33.3vw)}to{transform:translate(100vw)}}@keyframes gradcolours{0%{background:linear-gradient(90deg,rgba(232,128,152,0) 0%,#e88098 30%,#e88098 50%,#e88098 70%,rgba(232,128,152,0) 100%)}20%{background:linear-gradient(90deg,rgba(132,190,190,0) 0%,#84bebe 30%,#84bebe 50%,#84bebe 70%,rgba(132,190,190,0) 100%)}40%{background:linear-gradient(90deg,rgba(233,135,36,0) 0%,#e98724 30%,#e98724 50%,#e98724 70%,rgba(233,135,36,0) 100%)}60%{background:linear-gradient(90deg,rgba(175,201,78,0) 0%,#afc94e 30%,#afc94e 50%,#afc94e 70%,rgba(175,201,78,0) 100%)}80%{background:linear-gradient(90deg,rgba(98,151,164,0) 0%,#6297a4 30%,#6297a4 50%,#6297a4 70%,rgba(98,151,164,0) 100%)}}.sidebar-nav{display:block;margin:0;padding:0;font-size:14px}.sidebar-nav__item{position:relative;display:flex;flex-direction:column;border-left:3px solid transparent;transition:border-left-color .4s ease}.sidebar-nav__item-link{-webkit-user-select:none;user-select:none;position:relative;overflow:hidden;display:block;padding:8px 32px 8px 16px;color:#000000d9;text-decoration:none!important;text-overflow:ellipsis;white-space:nowrap}.sidebar-nav__item-link:hover{color:#1890ff}.sidebar-nav__item-icon{display:inline-block;min-width:14px;margin-right:8px;transition:font-size .15s cubic-bezier(.215,.61,.355,1),margin .3s cubic-bezier(.645,.045,.355,1)}.sidebar-nav__item-img,.sidebar-nav__item-svg{width:14px;height:14px}.sidebar-nav__item-text{opacity:1;transition:opacity .3s cubic-bezier(.645,.045,.355,1),width .3s cubic-bezier(.645,.045,.355,1)}.sidebar-nav__item-disabled{cursor:default;opacity:.6}.sidebar-nav__item-disabled:hover{color:#000000d9}.sidebar-nav__selected{background-color:#fcfcfc;border-left-color:#1890ff}.sidebar-nav__selected>.sidebar-nav__item-link{color:#1890ff}.sidebar-nav__open>.sidebar-nav__sub{display:block;animation:fadeIn .5s}.sidebar-nav__open>.sidebar-nav__item-link .sidebar-nav__sub-arrow{transform:translateY(-2px)}.sidebar-nav__open>.sidebar-nav__item-link .sidebar-nav__sub-arrow:before{transform:rotate(45deg) translate(2px)}.sidebar-nav__open>.sidebar-nav__item-link .sidebar-nav__sub-arrow:after{transform:rotate(-45deg) translate(-2px)}.sidebar-nav__group-title{padding:8px 16px;color:#00000073}.sidebar-nav__sub{overflow:hidden;display:none}.sidebar-nav__sub .sidebar-nav__item{border-left:0!important}.sidebar-nav__sub-arrow{position:absolute;top:50%;right:16px;width:10px;transition:transform .3s cubic-bezier(.645,.045,.355,1)}.sidebar-nav__sub-arrow:before,.sidebar-nav__sub-arrow:after{content:"";position:absolute;width:6px;height:1.5px;background:#fff;background-image:linear-gradient(to right,rgba(0,0,0,.85),rgba(0,0,0,.85));border-radius:2px;transition:background-color .3s cubic-bezier(.645,.045,.355,1),transform .3s cubic-bezier(.645,.045,.355,1),top .3s cubic-bezier(.645,.045,.355,1)}.sidebar-nav__sub-arrow:before{transform:rotate(-45deg) translate(2px)}.sidebar-nav__sub-arrow:after{transform:rotate(45deg) translate(-2px)}.sidebar-nav .ant-badge{position:absolute;top:8px;right:8px}.sidebar-nav .ant-badge-dot{top:10px!important;right:16px!important}.sidebar-nav__depth1 .sidebar-nav__item-link{padding-left:38px}.sidebar-nav__depth2 .sidebar-nav__item-link{padding-left:46px}.sidebar-nav__depth3 .sidebar-nav__item-link{padding-left:54px}.sidebar-nav__depth4 .sidebar-nav__item-link{padding-left:62px}.sidebar-nav__depth5 .sidebar-nav__item-link{padding-left:70px}.sidebar-nav__floating{position:absolute;z-index:16;display:none;min-width:160px;background-color:#fff;border:1px solid #efe3e5;border-radius:4px}.sidebar-nav__floating .sidebar-nav__item-link{padding-left:16px}.sidebar-nav__floating-show,.sidebar-nav__floating .sidebar-nav__sub{display:block}.sidebar-nav__floating .sidebar-nav__sub-arrow{display:none}.sidebar-nav__floating .sidebar-nav__depth2 .sidebar-nav__item-link{padding-left:24px}.sidebar-nav__floating .sidebar-nav__depth3 .sidebar-nav__item-link{padding-left:32px}.sidebar-nav__floating .sidebar-nav__depth4 .sidebar-nav__item-link{padding-left:40px}@media (min-width: 768px){.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item{border:none}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link{display:flex;justify-content:center;padding:16px 0}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link .sidebar-nav__item-icon{margin-right:0;font-size:24px}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link .sidebar-nav__item-img{width:24px;height:24px}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link .sidebar-nav__item-text{display:none;opacity:0}.alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__group-title{display:none}.alain-default__collapsed .sidebar-nav__sub{display:none!important}.alain-default__collapsed .sidebar-nav__sub-arrow{display:none}}[dir=rtl] .sidebar-nav__item-icon{margin-right:0;margin-left:8px}[dir=rtl] .sidebar-nav .ant-badge{right:inherit;left:16px}@media (min-width: 768px){[dir=rtl] .alain-default__collapsed .sidebar-nav:not(.sidebar-nav__sub) .sidebar-nav__item-link .sidebar-nav__item-icon{margin-left:0}}.footer-toolbar__left{margin-left:200px}.alain-default__collapsed .footer-toolbar__left{margin-left:64px}.footer-toolbar__body .alain-default__content{margin-bottom:64px}.full-content__body .alain-default__content router-outlet+*{display:block;width:100%;height:100%}.full-content__body .alain-default__content-title{margin-left:-24px}.full-content__opened .alain-default__header,.full-content__opened .alain-default__aside,.full-content__opened reuse-tab{display:none!important}.full-content__opened .alain-default__content{margin:24px!important}.full-content__hidden-title .alain-default__content-title,.full-content__hidden-title .page-header{display:none!important}.alain-default .page-header{margin-right:-24px;margin-bottom:24px;margin-left:-24px;padding:12px 24px 0;border-bottom:1px solid #efe3e5}@media (max-width: 767px){.quick-menu{right:-25px!important}}.reuse-tab{margin:0 -24px}.alain-default__fixed .reuse-tab{position:fixed;z-index:10;top:64px;right:24px;left:224px}.alain-default__collapsed .reuse-tab{left:88px}.alain-default__hide-aside .reuse-tab{left:24px}.alain-default__hide-header .reuse-tab{top:0}@media (min-width: 768px){.alain-default__fixed .reuse-tab+router-outlet{display:block;height:52px}}@media (max-width: 767px){.alain-default__fixed .reuse-tab{position:unset;width:initial;margin-top:52px}}[dir=rtl] .alain-default__fixed .reuse-tab{right:224px;left:24px}[dir=rtl] .alain-default__collapsed .reuse-tab{right:88px;left:0}.alain-default__nav-item .ant-badge-count{top:6px;right:18px}.app-icons{padding:16px}.app-icons .ant-col-6{cursor:pointer;padding:16px 0;text-align:center;border-radius:4px;transition:background-color .3s}.app-icons .ant-col-6:hover{background-color:#f5f5f5}.app-icons i{padding:15px;font-size:22px;border-radius:50%}.app-icons small{display:block;padding-top:4px;font-size:14px;color:#9c9c9c}.alain-default__aside-user{cursor:pointer;display:flex;align-items:center;justify-content:center;margin:24px 24px 0}.alain-default__aside-user .ant-dropdown-trigger{display:flex;align-items:center}.alain-default__aside-user-info{overflow:hidden;flex:1;color:#000000d9;text-overflow:ellipsis;white-space:nowrap}.alain-default__aside-user-avatar{margin-right:8px}[dir=rtl] .alain-default__aside-user-avatar{margin-right:0;margin-left:8px}@media (min-width: 768px){[dir=rtl] .alain-default__collapsed .alain-default__aside-user{margin-right:0}[dir=rtl] .alain-default__collapsed .alain-default__aside-user-avatar{margin:0 auto}}@media (min-width: 768px){.alain-default__collapsed .alain-default__aside-user{width:64px;margin-left:0}.alain-default__collapsed .alain-default__aside-user-info{display:none}.alain-default__collapsed .alain-default__aside-user-avatar{margin:0 auto}}.alain-default__fixed .alain-default__header{position:fixed;top:0;left:0}.alain-default__fixed .alain-default__aside{position:fixed}.alain-default__fixed:not(.alain-default__hide-header) .alain-default__content{margin-top:64px}.nz-resizable-preview{position:absolute;top:0;left:0;z-index:8;border:1px dashed #d1d1d1}.nz-resizable-handle{position:absolute;-webkit-user-select:none;user-select:none;z-index:9}.nz-resizable-handle-top{width:100%;height:10px;top:-5px;left:0}.nz-resizable-handle-right{width:10px;height:100%;top:0;right:-5px}.nz-resizable-handle-bottom{width:100%;height:10px;bottom:-5px;left:0}.nz-resizable-handle-left{width:10px;height:100%;top:0;left:-5px}.nz-resizable-handle-topRight{width:20px;height:20px;top:-5px;right:-5px;z-index:10}.nz-resizable-handle-bottomRight{width:20px;height:20px;right:-5px;bottom:-5px;z-index:10}.nz-resizable-handle-bottomLeft{width:20px;height:20px;bottom:-5px;left:-5px;z-index:10}.nz-resizable-handle-topLeft{width:20px;height:20px;top:-5px;left:-5px;z-index:10}.nz-resizable .nz-resizable-handle-cursor-type-window.nz-resizable-handle-top,.nz-resizable .nz-resizable-handle-cursor-type-window.nz-resizable-handle-bottom{cursor:ns-resize}.nz-resizable .nz-resizable-handle-cursor-type-window.nz-resizable-handle-right,.nz-resizable .nz-resizable-handle-cursor-type-window.nz-resizable-handle-left{cursor:ew-resize}.nz-resizable .nz-resizable-handle-cursor-type-grid.nz-resizable-handle-top,.nz-resizable .nz-resizable-handle-cursor-type-grid.nz-resizable-handle-bottom{cursor:row-resize}.nz-resizable .nz-resizable-handle-cursor-type-grid.nz-resizable-handle-right,.nz-resizable .nz-resizable-handle-cursor-type-grid.nz-resizable-handle-left{cursor:col-resize}.nz-resizable .nz-resizable-handle-bottomRight,.nz-resizable .nz-resizable-handle-topLeft{cursor:nwse-resize}.nz-resizable .nz-resizable-handle-bottomLeft,.nz-resizable .nz-resizable-handle-topRight{cursor:nesw-resize}.nz-resizable-disabled .nz-resizable-handle{pointer-events:none}.color-palettes{margin:0 1%}.color-palettes-dark{margin:0;padding:0 28px;background-color:#141414}.color-palettes-dark .color-title{color:#ffffffd9}.color-palettes-dark .color-description{color:#ffffff73}.color-palettes-dark .color-palette{margin:45px 3.5% 45px 0}.color-palettes-dark .color-palette:nth-of-type(3n){margin-right:0}.color-palettes-dark .color-palette .main-color-item{margin-right:0}.color-palettes-dark .color-palette .main-color-item:hover{margin-right:-8px}.color-palette{display:inline-block;width:31%;margin:45px 1%}.color-palette-pick{margin:0 0 20px;font-size:20px;text-align:center}.color-palette-picker{margin:24px 0}.color-palette-picker-value{position:relative;top:-3px;margin-left:16px;font-family:Consolas,sans-serif;font-size:14px}.color-palette-picker-validation{position:relative;top:-3px;margin-left:16px;font-size:13px;color:#ff4d4f}.color-palette-picker-validation-dark{margin-left:0}.main-color{text-align:left}.main-color .palette-gray-11{background:#1f1f1f}.main-color .palette-gray-12{background:#141414}.main-color .palette-gray-13{background:#000}.main-color-item{cursor:pointer;position:relative;height:44px;margin-right:4px;padding:0 12px;font-family:Consolas,sans-serif;font-size:14px;line-height:44px;transition:all .2s}.main-color-item:first-child{border-radius:4px 4px 0 0}.main-color-item:last-child{border-radius:0 0 4px 4px}.main-color-item:hover{margin-right:-8px;border-radius:0 4px 4px 0}.main-color-item .main-color-text{float:left;transition:all .3s}.main-color-item .main-color-value{position:relative;left:3px;transform-origin:100% 50%;transform:scale(.85);float:right;opacity:0;transition:all .3s}.main-color .palette-blue-1{background:#e6f7ff}.main-color .palette-blue-2{background:#bae7ff}.main-color .palette-blue-3{background:#91d5ff}.main-color .palette-blue-4{background:#69c0ff}.main-color .palette-blue-5{background:#40a9ff}.main-color .palette-blue-6{background:#1890ff}.main-color .palette-blue-7{background:#096dd9}.main-color .palette-blue-8{background:#0050b3}.main-color .palette-blue-9{background:#003a8c}.main-color .palette-blue-10{background:#002766}.main-color .palette-purple-1{background:#f9f0ff}.main-color .palette-purple-2{background:#efdbff}.main-color .palette-purple-3{background:#d3adf7}.main-color .palette-purple-4{background:#b37feb}.main-color .palette-purple-5{background:#9254de}.main-color .palette-purple-6{background:#722ed1}.main-color .palette-purple-7{background:#531dab}.main-color .palette-purple-8{background:#391085}.main-color .palette-purple-9{background:#22075e}.main-color .palette-purple-10{background:#120338}.main-color .palette-cyan-1{background:#e6fffb}.main-color .palette-cyan-2{background:#b5f5ec}.main-color .palette-cyan-3{background:#87e8de}.main-color .palette-cyan-4{background:#5cdbd3}.main-color .palette-cyan-5{background:#36cfc9}.main-color .palette-cyan-6{background:#13c2c2}.main-color .palette-cyan-7{background:#08979c}.main-color .palette-cyan-8{background:#006d75}.main-color .palette-cyan-9{background:#00474f}.main-color .palette-cyan-10{background:#002329}.main-color .palette-green-1{background:#f6ffed}.main-color .palette-green-2{background:#d9f7be}.main-color .palette-green-3{background:#b7eb8f}.main-color .palette-green-4{background:#95de64}.main-color .palette-green-5{background:#73d13d}.main-color .palette-green-6{background:#52c41a}.main-color .palette-green-7{background:#389e0d}.main-color .palette-green-8{background:#237804}.main-color .palette-green-9{background:#135200}.main-color .palette-green-10{background:#092b00}.main-color .palette-magenta-1{background:#fff0f6}.main-color .palette-magenta-2{background:#ffd6e7}.main-color .palette-magenta-3{background:#ffadd2}.main-color .palette-magenta-4{background:#ff85c0}.main-color .palette-magenta-5{background:#f759ab}.main-color .palette-magenta-6{background:#eb2f96}.main-color .palette-magenta-7{background:#c41d7f}.main-color .palette-magenta-8{background:#9e1068}.main-color .palette-magenta-9{background:#780650}.main-color .palette-magenta-10{background:#520339}.main-color .palette-red-1{background:#fff1f0}.main-color .palette-red-2{background:#ffccc7}.main-color .palette-red-3{background:#ffa39e}.main-color .palette-red-4{background:#ff7875}.main-color .palette-red-5{background:#ff4d4f}.main-color .palette-red-6{background:#f5222d}.main-color .palette-red-7{background:#cf1322}.main-color .palette-red-8{background:#a8071a}.main-color .palette-red-9{background:#820014}.main-color .palette-red-10{background:#5c0011}.main-color .palette-volcano-1{background:#fff2e8}.main-color .palette-volcano-2{background:#ffd8bf}.main-color .palette-volcano-3{background:#ffbb96}.main-color .palette-volcano-4{background:#ff9c6e}.main-color .palette-volcano-5{background:#ff7a45}.main-color .palette-volcano-6{background:#fa541c}.main-color .palette-volcano-7{background:#d4380d}.main-color .palette-volcano-8{background:#ad2102}.main-color .palette-volcano-9{background:#871400}.main-color .palette-volcano-10{background:#610b00}.main-color .palette-orange-1{background:#fff7e6}.main-color .palette-orange-2{background:#ffe7ba}.main-color .palette-orange-3{background:#ffd591}.main-color .palette-orange-4{background:#ffc069}.main-color .palette-orange-5{background:#ffa940}.main-color .palette-orange-6{background:#fa8c16}.main-color .palette-orange-7{background:#d46b08}.main-color .palette-orange-8{background:#ad4e00}.main-color .palette-orange-9{background:#873800}.main-color .palette-orange-10{background:#612500}.main-color .palette-gold-1{background:#fffbe6}.main-color .palette-gold-2{background:#fff1b8}.main-color .palette-gold-3{background:#ffe58f}.main-color .palette-gold-4{background:#ffd666}.main-color .palette-gold-5{background:#ffc53d}.main-color .palette-gold-6{background:#faad14}.main-color .palette-gold-7{background:#d48806}.main-color .palette-gold-8{background:#ad6800}.main-color .palette-gold-9{background:#874d00}.main-color .palette-gold-10{background:#613400}.main-color .palette-yellow-1{background:#feffe6}.main-color .palette-yellow-2{background:#ffffb8}.main-color .palette-yellow-3{background:#fffb8f}.main-color .palette-yellow-4{background:#fff566}.main-color .palette-yellow-5{background:#ffec3d}.main-color .palette-yellow-6{background:#fadb14}.main-color .palette-yellow-7{background:#d4b106}.main-color .palette-yellow-8{background:#ad8b00}.main-color .palette-yellow-9{background:#876800}.main-color .palette-yellow-10{background:#614700}.main-color .palette-lime-1{background:#fcffe6}.main-color .palette-lime-2{background:#f4ffb8}.main-color .palette-lime-3{background:#eaff8f}.main-color .palette-lime-4{background:#d3f261}.main-color .palette-lime-5{background:#bae637}.main-color .palette-lime-6{background:#a0d911}.main-color .palette-lime-7{background:#7cb305}.main-color .palette-lime-8{background:#5b8c00}.main-color .palette-lime-9{background:#3f6600}.main-color .palette-lime-10{background:#254000}.main-color .palette-geekblue-1{background:#f0f5ff}.main-color .palette-geekblue-2{background:#d6e4ff}.main-color .palette-geekblue-3{background:#adc6ff}.main-color .palette-geekblue-4{background:#85a5ff}.main-color .palette-geekblue-5{background:#597ef7}.main-color .palette-geekblue-6{background:#2f54eb}.main-color .palette-geekblue-7{background:#1d39c4}.main-color .palette-geekblue-8{background:#10239e}.main-color .palette-geekblue-9{background:#061178}.main-color .palette-geekblue-10{background:#030852}.main-color .palette-gray-1{background:#fff}.main-color .palette-gray-2{background:#fafafa}.main-color .palette-gray-3{background:#f5f5f5}.main-color .palette-gray-4{background:#f0f0f0}.main-color .palette-gray-5{background:#d9d9d9}.main-color .palette-gray-6{background:#bfbfbf}.main-color .palette-gray-7{background:#8c8c8c}.main-color .palette-gray-8{background:#595959}.main-color .palette-gray-9{background:#434343}.main-color .palette-gray-10{background:#262626}.color-title{margin:0 0 24px;font-size:22px;font-weight:500;color:#5c6b77;text-align:center;text-transform:capitalize}.color-description{display:block;font-size:14px;font-weight:lighter;color:#777}.main-color:hover .main-color-value{left:0;opacity:.7}.color-palette-horizontal{width:100%}.color-palette-horizontal-dark{height:303px;padding:32px 28px;background-color:#141414}.color-palette-horizontal-dark .color-palette-picker{margin-bottom:0}.color-palette-horizontal-dark .color-palette-pick{color:#ffffffa6;text-align:left}.color-palette-horizontal-dark .color-palette-pick-hex{color:#ffffffa6}.color-palette-horizontal .main-color{display:flex}.color-palette-horizontal .main-color-item{position:relative;flex:1;height:86px;margin-right:0;padding:37px 0 0;line-height:normal;text-align:center;border-radius:0}.color-palette-horizontal .main-color-item .main-color-text{float:none}.color-palette-horizontal .main-color-item:hover{height:96px;margin-top:-10px;border-radius:4px 4px 0 0}.color-palette-horizontal .main-color-value{position:absolute;bottom:0;left:0;transform-origin:unset;width:100%;text-align:center}.color-palette-horizontal .main-color:hover .main-color-item{padding-top:8px}.color-palette-horizontal .main-color:hover .main-color-value{bottom:8px;opacity:.7}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td,hr,button,article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{margin:0;padding:0}ul,ol{list-style:none}html.rtl{direction:rtl}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-size:14px;color:#000000d9;background:#fff;transition:background 1s cubic-bezier(.075,.82,.165,1)}a{transition:color .3s ease}#ng-content{display:block;height:100%;transition:transform .3s cubic-bezier(.78,.14,.15,.86)}.fetching{position:absolute;z-index:99;top:16px;left:16px}#header,#header #search-box,#header #nav.ant-menu,.main-wrapper,.main-wrapper>.ant-row>.main-menu .main-menu-inner>.ant-menu,.main-wrapper>.ant-row>.main-menu .main-menu-inner>.ant-menu.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title:after,.main-wrapper .main-container,#demo-toc.toc{transition:all .3s cubic-bezier(.78,.14,.15,.86)}.header-link{color:#000000d9}.ant-menu-item-active .header-link{color:#1890ff}#header{position:relative;z-index:10;display:block;max-width:100%;background:#fff;box-shadow:0 2px 8px #f0f1f2}#header>.ant-row>.ant-col h1{margin-bottom:0}#header .menu-row{display:flex;align-items:center;margin:0}#header .menu-row>*{flex:none;margin:0 16px 0 0}#header .menu-row>*:last-child{margin-right:40px}#header .ant-row-rtl .menu-row>*:last-child{margin-right:16px;margin-left:40px}#header .header-button{color:#000000d9;border-color:#d9d9d9}#logo{overflow:hidden;height:64px;padding-left:40px;font-family:Avenir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji",sans-serif;font-size:18px;line-height:64px;color:#000000d9;text-decoration:none;white-space:nowrap}.ant-row-rtl #logo{float:right;padding-right:40px;padding-left:0}#logo img{position:relative;top:-1.5px;height:32px;margin-right:16px}.ant-row-rtl #logo img{margin-right:0;margin-left:16px}#search-box{position:relative;display:flex;flex:auto!important;align-items:center;height:22px;margin:0 auto 0 0!important;padding-left:16px;line-height:22px;white-space:nowrap;border-left:1px solid #f0f0f0;transition:width .5s}.ant-row-rtl #search-box{margin:0 0 0 auto!important;padding-right:16px;padding-left:0;border-right:1px solid #f0f0f0;border-left:none}#search-box>*{flex:auto}#search-box .anticon{pointer-events:none;position:absolute;z-index:1;top:50%;transform:translateY(-50%);flex:none;color:#ced4d9}#search-box input{width:100%;max-width:200px;padding-left:20px;font-size:14px;background:transparent;border:0;box-shadow:none}#search-box input::placeholder{color:#a3b1bf}.ant-row-rtl #search-box input{padding-right:20px;padding-left:11px}#search-box.narrow-mode{flex:none!important;width:30px}#search-box.narrow-mode:hover .anticon{color:#a3b1bf}#search-box.narrow-mode .anticon{right:0;left:auto}.ant-row-rtl #search-box.narrow-mode .anticon{right:auto;left:0}#search-box.narrow-mode input{cursor:pointer;max-width:none;padding-right:20px;padding-left:11px}.ant-row-rtl #search-box.narrow-mode input{padding-right:11px;padding-left:20px}#search-box.narrow-mode.focused{width:500px}#search-box.narrow-mode.focused .anticon{color:#ced4d9}#search-box.narrow-mode.focused input{cursor:text}.algolia-autocomplete .ds-dropdown-menu{border:none;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d}.algolia-autocomplete .ds-dropdown-menu:before{display:none}.algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-]{background:#fff;border:none}.algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-] .algolia-docsearch-suggestion{background:#fff}.algolia-autocomplete .algolia-docsearch-suggestion--title{color:#000000d9}.algolia-autocomplete .algolia-docsearch-suggestion--highlight{color:#1890ff}.nav-phone-icon{cursor:pointer;position:absolute;z-index:1;top:25px;right:30px;width:16px;height:22px}#nav{height:100%;font-family:Avenir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji",sans-serif;font-size:14px;border:0}#nav.ant-menu-horizontal{border-bottom:none}#nav.ant-menu-horizontal>.ant-menu-item,#nav.ant-menu-horizontal>.ant-menu-submenu{min-width:72px;height:64px;line-height:60px;border-top:2px solid transparent}#nav.ant-menu-horizontal>.ant-menu-item:after,#nav.ant-menu-horizontal>.ant-menu-submenu:after{content:none}#nav.ant-menu-horizontal>.ant-menu-item:hover,#nav.ant-menu-horizontal>.ant-menu-submenu:hover{border-top:2px solid #1890ff;border-bottom:none}#nav.ant-menu-horizontal .ant-menu-submenu-title .anticon{margin:0}#nav.ant-menu-horizontal>.ant-menu-submenu-open{border-top:2px solid #1890ff;border-bottom:2px solid transparent}#nav.ant-menu-horizontal>.ant-menu-item-selected{border-top:2px solid #1890ff;border-bottom:2px solid transparent}#nav.ant-menu-horizontal>.ant-menu-item-selected a{color:#1890ff}#nav>.ant-menu-item,#nav>.ant-menu-submenu{text-align:center}.popover-menu{width:300px}.popover-menu .ant-popover-inner-content{padding:0}.popover-menu .ant-popover-inner-content #nav .ant-menu-item,.popover-menu .ant-popover-inner-content #nav .ant-menu-submenu{text-align:left}.popover-menu .ant-popover-inner-content #nav .ant-menu-item-group-title{padding-left:24px}.popover-menu .ant-popover-inner-content #nav .ant-menu-item-group-list{padding:0 16px}.popover-menu .ant-popover-inner-content #nav .ant-menu-item,.popover-menu .ant-popover-inner-content #nav a{color:#333}@media only screen and (max-width: 1200px){#header{text-align:center}#logo{padding-right:0;padding-left:0}#search-box{display:none}}[dir=rtl] .nav-phone-icon{right:inherit;left:30px}.main-wrapper{position:relative;display:block;padding:40px 0 0;background:#fff}.main-container{position:relative;min-height:500px;padding:0 170px 32px 64px;background:#fff}.ant-row-rtl .main-container{padding:0 64px 144px 186px}.main-menu{z-index:1}.main-menu-inner{overflow:hidden;height:100%;max-height:100vh}.main-menu:hover .main-menu-inner{overflow-y:auto}.main-menu>div,.main-menu>div>div{height:100%}.aside-container{min-height:100%;padding-bottom:48px;font-family:Avenir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji",sans-serif}.aside-container.ant-menu-inline .ant-menu-submenu-title h4,.aside-container.ant-menu-inline>.ant-menu-item,.aside-container.ant-menu-inline .ant-menu-item a{overflow:hidden;font-size:14px;text-overflow:ellipsis}.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title{margin-top:16px;margin-bottom:16px;font-size:13px}.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title:after{content:"";position:relative;top:12px;display:block;width:calc(100% - 20px);height:1px;background:#f0f0f0}.aside-container.ant-menu-inline>.ant-menu-item,.aside-container.ant-menu-inline>.ant-menu-submenu>.ant-menu-submenu-title,.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title,.aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item,.aside-container.ant-menu-inline.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item{padding-left:40px!important}.ant-row-rtl .aside-container.ant-menu-inline>.ant-menu-item,.ant-row-rtl .aside-container.ant-menu-inline>.ant-menu-submenu>.ant-menu-submenu-title,.ant-row-rtl .aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-title,.ant-row-rtl .aside-container.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item,.ant-row-rtl .aside-container.ant-menu-inline.ant-menu-inline>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item{padding-right:40px!important;padding-left:16px!important}.aside-container.ant-menu-inline.ant-menu-inline .ant-menu-item-group-title{padding-left:56px}.ant-row-rtl .aside-container.ant-menu-inline.ant-menu-inline .ant-menu-item-group-title{padding-right:56px;padding-left:16px}.aside-container.ant-menu-inline.ant-menu-inline .ant-menu-item-group-list>.ant-menu-item{padding-left:80px!important}.ant-row-rtl .aside-container.ant-menu-inline.ant-menu-inline .ant-menu-item-group-list>.ant-menu-item{padding-right:80px!important;padding-left:16px!important}.aside-container.ant-menu-inline .ant-menu-item-group:first-child .ant-menu-item-group-title{margin-top:0}.aside-container a[disabled]{color:#ccc}.aside-container .menu-item-link-outside{position:relative}.aside-container .menu-item-link-outside .anticon{position:absolute;top:16px;right:-10px;font-size:12px;color:#1890ff;opacity:0;transition:all .3s}.aside-container .menu-item-link-outside:hover .anticon{opacity:1}.aside-container .chinese{margin-left:6px;font-size:12px;font-weight:400;opacity:.67}@media (max-width: 1200px){.main-container{padding-right:48px;padding-left:48px}.ant-row-rtl .main-container{padding-right:24px;padding-left:24px}.main-container .toc-affix{display:none}}.drawer{pointer-events:none;position:fixed;z-index:9999;top:0;width:100%;height:100%}.drawer>*{transition:transform .3s cubic-bezier(.78,.14,.15,.86),opacity .3s cubic-bezier(.78,.14,.15,.86),box-shaow .3s cubic-bezier(.78,.14,.15,.86)}.drawer-mask,.drawer-content-wrapper{position:absolute;height:100%}.drawer-mask{top:0;width:100%;opacity:0;background:#000}.drawer-content-wrapper{left:-60vw;width:60vw;background:#fff;box-shadow:2px 0 10px #00000026}.drawer-content{overflow:auto;height:100%}.drawer-button{pointer-events:auto;cursor:pointer;position:absolute;z-index:0;top:72px;right:-40px;display:flex;align-items:center;justify-content:center;width:41px;height:40px;font-size:16px;line-height:40px;text-align:center;background:#fff;border-radius:0 4px 4px 0;box-shadow:2px 0 8px #00000026}.drawer-open{pointer-events:auto;transform:translate(60vw);transition:transform .3s cubic-bezier(.78,.14,.15,.86) 0s}.drawer-open .drawer-mask{opacity:.3}@media (max-width: 767px){.drawer .ant-menu-inline .ant-menu-item:after,.drawer .ant-menu-vertical .ant-menu-item:after{right:auto;left:0}}.prev-next-nav{overflow:hidden;width:calc(100% - 128px);margin-right:64px;margin-left:64px;font-size:14px;border-top:1px solid #f0f0f0}.prev-next-nav>.prev-page,.prev-next-nav>.next-page{float:left;width:50%;height:72px;line-height:72px;text-decoration:none}.ant-row-rtl .prev-next-nav>.prev-page,.ant-row-rtl .prev-next-nav>.next-page{float:right}.ant-row-rtl .prev-next-nav>.prev-page .footer-nav-icon-before,.ant-row-rtl .prev-next-nav>.next-page .footer-nav-icon-before,.ant-row-rtl .prev-next-nav>.prev-page .footer-nav-icon-after,.ant-row-rtl .prev-next-nav>.next-page .footer-nav-icon-after{transform:rotate(180deg)}.prev-next-nav>a.prev-page .footer-nav-icon-before{position:relative;left:0;margin-right:1em;font-size:12px;color:#00000073;transition:all .3s}.ant-row-rtl .prev-next-nav>a.prev-page .footer-nav-icon-before{right:0;left:auto;margin-right:0;margin-left:1em}.prev-next-nav>a.prev-page .footer-nav-icon-after{display:none}.prev-next-nav>a.prev-page:hover .footer-nav-icon-before{left:-3px;color:#1890ff}.ant-row-rtl .prev-next-nav>a.prev-page:hover .footer-nav-icon-before{right:-3px;left:auto}.prev-next-nav>.next-page{float:right;text-align:right}.ant-row-rtl .prev-next-nav>.next-page{float:left;text-align:left}.prev-next-nav>.next-page .footer-nav-icon-after{position:relative;right:0;margin-left:1em;font-size:12px;color:#00000073;transition:all .3s}.ant-row-rtl .prev-next-nav>.next-page .footer-nav-icon-after{right:auto;left:0;margin-right:1em;margin-left:0}.prev-next-nav>.next-page .footer-nav-icon-before{display:none}.prev-next-nav>.next-page:hover .footer-nav-icon-after{right:-3px;color:#1890ff}.ant-row-rtl .prev-next-nav>.next-page:hover .footer-nav-icon-after{right:auto;left:-3px}.prev-next-nav .chinese{margin-left:.5em}.footer{position:relative;clear:both;display:block;font-size:14px;color:#ffffffa6;background-color:#000;box-shadow:0 1000px 0 1000px #fff}.footer .ant-row{text-align:center}.footer__center{display:inline-block;text-align:left}.footer__center>h2{position:relative;margin:0 auto 24px;font-size:16px;font-weight:500}.footer__center>h2>.title-icon{width:27px;margin-right:16px}.footer__center>h2>.anticon{position:absolute;top:3px;left:-22px;font-size:16px;color:#aaa}.footer__center>div{margin:12px 0}.footer__wrap{position:relative;padding:86px 144px 16px;border-bottom:1px solid rgba(255,255,255,.25)}.footer a{color:#ffffffe6}.footer h2{color:#fff}.footer h2>span{color:#fff}.footer__small .footer__wrap{padding:86px 24px 93px}.theme-color{cursor:pointer;display:inline-block;padding:4px;vertical-align:middle;background:#fff;border-radius:2px;box-shadow:#0000001a 0 0 0 1px}.theme-color-value{width:80px;height:16px;border-radius:2px}.theme-color-content .ant-popover-inner-content{width:200px;padding:0}@media (max-width: 1200px){.footer{text-align:center}.footer .footer__wrap{padding:40px}.footer .footer__wrap .ant-row{padding:0}.footer .footer__wrap .ant-row>div:nth-child(2),.footer .footer__wrap .ant-row>div:nth-child(4){display:none}.footer .footer__wrap .ant-row>div a{font-weight:300}.footer .footer__center{text-align:center}.footer h2{margin-top:16px}}.theme-btn{cursor:pointer;position:fixed;z-index:2147483640;right:32px;bottom:102px;display:flex;flex-direction:column}.theme-btn-tooltip .ant-tooltip-inner{min-width:100px}.theme-btn>div{display:block}.theme-btn-active{width:44px;height:44px;font-size:22px;line-height:44px;color:#1890ff}.theme-btn .theme-btn-avatar{color:#000;background-color:#fff;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d;transition:color .3s}.theme-btn .theme-btn-avatar:hover{color:#1890ff}.toc-affix{position:absolute;top:8px;right:20px}.toc-affix .ant-anchor-ink-ball.visible{display:none}.toc-affix .ant-anchor .ant-anchor-link-active{position:relative;z-index:2;margin-left:-2px;border-left:2px solid #1890ff}.toc-affix .ant-anchor-link-title{max-width:120px}.ant-row-rtl .toc-affix{right:auto;left:20px}@media (max-width: 767px){.toc-affix{display:none}}.markdown{font-size:14px;line-height:2;color:#000000d9}.highlight{line-height:1.5}.markdown img{max-width:calc(100% - 32px)}.markdown p>img{margin:34px 0;box-shadow:0 8px 20px #8fa8bf59}.markdown p>img.markdown-inline-image{margin:0;box-shadow:none}.markdown h1{margin-top:8px;margin-bottom:20px;font-family:Avenir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji",sans-serif;font-size:30px;font-weight:500;line-height:38px;color:#000000d9}.markdown h1 .subtitle{margin-left:12px}.ant-row-rtl .markdown h1 .subtitle{margin-right:12px;margin-left:0}.markdown h2{font-size:24px;line-height:32px}.markdown h2,.markdown h3,.markdown h4,.markdown h5,.markdown h6{clear:both;margin:1.6em 0 .6em;font-family:Avenir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji",sans-serif;font-weight:500;color:#000000d9}.markdown h3{font-size:18px}.markdown h4{font-size:16px}.markdown h5{font-size:14px}.markdown h6{font-size:12px}.markdown hr{clear:both;height:1px;margin:56px 0;background:#f0f0f0;border:0}.markdown p,.markdown pre{margin:1em 0}.markdown ul>li{margin-left:20px;padding-left:4px;list-style-type:circle}.ant-row-rtl .markdown ul>li{margin-right:20px;margin-left:0;padding-right:4px;padding-left:0}.markdown ul>li:empty{display:none}.markdown ol>li{margin-left:20px;padding-left:4px;list-style-type:decimal}.ant-row-rtl .markdown ol>li{margin-right:20px;margin-left:0;padding-right:4px;padding-left:0}.markdown ul>li>p,.markdown ol>li>p{margin:.2em 0}.markdown code{margin:0 1px;padding:.2em .4em;font-size:.9em;background:#f2f4f5;border:1px solid #f0f0f0;border-radius:3px}.markdown pre{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;background:#f2f4f5;border-radius:2px}.markdown pre code{overflow:auto;margin:0;padding:0;font-size:13px;color:#000000d9;background:#f5f5f5;border:none}.markdown strong,.markdown b{font-weight:500}.markdown>table{table-layout:auto;border-spacing:0;border-collapse:collapse;empty-cells:show;width:100%;margin:8px 0 16px;border:1px solid #f0f0f0}.markdown>table tbody tr{transition:all .3s}.markdown>table tbody tr:hover{background:rgba(60,90,100,.04)}.markdown>table th:nth-child(1),.markdown>table th:nth-child(2){word-break:keep-all;white-space:nowrap}.markdown>table th{font-weight:500;color:#5c6b77;background:rgba(0,0,0,.02)}.markdown>table th,.markdown>table td{padding:16px 24px;text-align:left;border:1px solid #f0f0f0}.markdown blockquote{margin:1em 0;padding-left:.8em;font-size:90%;color:#00000073;border-left:4px solid #f0f0f0}.ant-row-rtl .markdown blockquote{padding-right:.8em;padding-left:0;border-right:4px solid #f0f0f0;border-left:none}.markdown blockquote p{margin:0}.markdown .anchor{margin-left:8px;opacity:0;transition:opacity .3s}.ant-row-rtl .markdown .anchor{margin-right:8px;margin-left:0}.markdown .waiting{cursor:not-allowed;color:#ccc}.markdown a.edit-button{display:inline-block;margin-left:8px;text-decoration:none}.ant-row-rtl .markdown a.edit-button{margin-right:8px;margin-left:0}.markdown a.edit-button i{color:#00000073}.markdown a.edit-button i:hover{color:#1890ff}.markdown a.edit-button .anticon{display:block;font-size:16px}.markdown h1:hover .anchor,.markdown h2:hover .anchor,.markdown h3:hover .anchor,.markdown h4:hover .anchor,.markdown h5:hover .anchor,.markdown h6:hover .anchor{display:inline-block;opacity:1}.markdown>br,.markdown>p>br{clear:both}.markdown.api-container{overflow-x:auto}.markdown.api-container table{table-layout:auto;min-width:720px;margin:2em 0;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-size:13px;line-height:1.5715;border:1px solid #f0f0f0}.markdown.api-container table th,.markdown.api-container table td{padding:12px;border-color:#f0f0f0;border-width:1px 0}.markdown.api-container table th{padding-top:14px;white-space:nowrap;border-width:0 0 2px}.markdown.api-container table th:nth-child(2){word-break:normal;white-space:normal}.markdown.api-container table th:nth-child(4),.markdown.api-container table th:nth-child(5){word-break:keep-all;white-space:nowrap}.markdown.api-container table td:first-child{font-weight:600;color:#595959}.markdown.api-container table td:nth-child(3){width:22%;font-size:13px;color:#c41d7f;word-break:break-all}.markdown.api-container table td:nth-child(4){font-size:13px}.markdown.api-container hr{margin:12px 0}.grid-demo .demo-row,[id^=components-grid-demo-] .demo-row,.grid-demo .code-box-demo .demo-row,[id^=components-grid-demo-] .code-box-demo .demo-row{overflow:hidden;margin-bottom:8px;background-image:linear-gradient(90deg,#f5f5f5 4.16666667%,transparent 4.16666667%,transparent 8.33333333%,#f5f5f5 8.33333333%,#f5f5f5 12.5%,transparent 12.5%,transparent 16.66666667%,#f5f5f5 16.66666667%,#f5f5f5 20.83333333%,transparent 20.83333333%,transparent 25%,#f5f5f5 25%,#f5f5f5 29.16666667%,transparent 29.16666667%,transparent 33.33333333%,#f5f5f5 33.33333333%,#f5f5f5 37.5%,transparent 37.5%,transparent 41.66666667%,#f5f5f5 41.66666667%,#f5f5f5 45.83333333%,transparent 45.83333333%,transparent 50%,#f5f5f5 50%,#f5f5f5 54.16666667%,transparent 54.16666667%,transparent 58.33333333%,#f5f5f5 58.33333333%,#f5f5f5 62.5%,transparent 62.5%,transparent 66.66666667%,#f5f5f5 66.66666667%,#f5f5f5 70.83333333%,transparent 70.83333333%,transparent 75%,#f5f5f5 75%,#f5f5f5 79.16666667%,transparent 79.16666667%,transparent 83.33333333%,#f5f5f5 83.33333333%,#f5f5f5 87.5%,transparent 87.5%,transparent 91.66666667%,#f5f5f5 91.66666667%,#f5f5f5 95.83333333%,transparent 95.83333333%)}.grid-demo .ant-row>div,[id^=components-grid-demo-] .ant-row>div,.grid-demo .code-box-demo .ant-row>div,[id^=components-grid-demo-] .code-box-demo .ant-row>div{min-height:30px;margin-top:8px;margin-bottom:8px;color:#fff;text-align:center;border-radius:0}.grid-demo .code-box-demo .ant-row>div:not(.gutter-row),[id^=components-grid-demo-] .code-box-demo .ant-row>div:not(.gutter-row){padding:16px 0;background:#0092ff}.grid-demo .code-box-demo .ant-row>div:not(.gutter-row):nth-child(odd),[id^=components-grid-demo-] .code-box-demo .ant-row>div:not(.gutter-row):nth-child(odd){background:rgba(0,146,255,.75)}.grid-demo .ant-row .demo-col,[id^=components-grid-demo-] .ant-row .demo-col,.grid-demo .code-box-demo .ant-row .demo-col,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col{margin-top:0;margin-bottom:0;padding:30px 0;font-size:18px;color:#fff;text-align:center;border:none}.grid-demo .ant-row .demo-col-1,[id^=components-grid-demo-] .ant-row .demo-col-1{background:rgba(0,146,255,.75)}.grid-demo .ant-row .demo-col-2,[id^=components-grid-demo-] .ant-row .demo-col-2,.grid-demo .code-box-demo .ant-row .demo-col-2,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-2{background:rgba(0,146,255,.5)}.grid-demo .ant-row .demo-col-3,[id^=components-grid-demo-] .ant-row .demo-col-3,.grid-demo .code-box-demo .ant-row .demo-col-3,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-3{color:#999;background:rgba(255,255,255,.2)}.grid-demo .ant-row .demo-col-4,[id^=components-grid-demo-] .ant-row .demo-col-4,.grid-demo .code-box-demo .ant-row .demo-col-4,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-4{background:rgba(0,146,255,.6)}.grid-demo .ant-row .demo-col-5,[id^=components-grid-demo-] .ant-row .demo-col-5,.grid-demo .code-box-demo .ant-row .demo-col-5,[id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-5{color:#999;background:rgba(255,255,255,.2)}.grid-demo .code-box-demo .height-100,[id^=components-grid-demo-] .code-box-demo .height-100{height:100px;line-height:100px}.grid-demo .code-box-demo .height-50,[id^=components-grid-demo-] .code-box-demo .height-50{height:50px;line-height:50px}.grid-demo .code-box-demo .height-120,[id^=components-grid-demo-] .code-box-demo .height-120{height:120px;line-height:120px}.grid-demo .code-box-demo .height-80,[id^=components-grid-demo-] .code-box-demo .height-80{height:80px;line-height:80px}[id=components-grid-demo-playground]>.code-box-demo .ant-row>div,[id=components-grid-demo-gutter]>.code-box-demo .ant-row>div{margin-top:0;margin-bottom:0}.markdown ul.ant-timeline{line-height:2}.markdown ul.ant-timeline li.ant-timeline-item{margin:0;padding:0 0 30px;list-style:none}.markdown ul.ant-timeline li.ant-timeline-item .ant-timeline-item-content{position:relative;top:-14px;padding-left:32px;font-size:14px}.markdown ul.ant-timeline li.ant-timeline-item .ant-timeline-item-content>h2{margin-top:0;padding-top:4px}.markdown ul.ant-timeline li.ant-timeline-item:first-child{margin-top:40px}code[class*=hljs],pre[class*=hljs]{direction:ltr;line-height:1.5;-webkit-hyphens:none;hyphens:none;color:#000;text-align:left;text-shadow:0 1px white;word-break:normal;word-spacing:normal;word-wrap:normal;tab-size:4;white-space:pre;background:none}pre[class*=hljs]::selection{text-shadow:none;background:#b3d4fc}pre[class*=hljs]::selection,pre[class*=hljs] ::selection,code[class*=hljs]::selection,code[class*=hljs] ::selection{text-shadow:none;background:#b3d4fc}@media print{code[class*=hljs],pre[class*=hljs]{text-shadow:none}}pre[class*=hljs]{overflow:auto;margin:1.2em 0;padding:1em}:not(pre)>code[class*=hljs],pre[class*=hljs]{background:#f7f7f7}:not(pre)>code[class*=hljs]{padding:.1em;white-space:normal;border-radius:.3em}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:#708090}.token.punctuation{color:#999}.namespace{opacity:.7}.token.property,.token.tag,.token.boolean,.token.number,.token.constant,.token.symbol,.token.deleted{color:#bb0606}.token.selector,.token.attr-name,.token.string,.token.char,.token.builtin,.token.inserted,.token.operator,.token.entity,.token.url,.hljscss .token.string,.style .token.string{color:#690}.token.atrule,.token.attr-value,.token.keyword{color:#07a}.token.function{color:#dd4a68}.token.regex,.token.important,.token.variable{color:#e90}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.hljs-comment,.hljs-quote{color:#8e908c}.hljs-variable,.hljs-template-variable,.hljs-tag,.hljs-name,.hljs-selector-id,.hljs-selector-class,.hljs-regexp,.hljs-deletion{color:#bb0606}.hljs-number,.hljs-built_in,.hljs-builtin-name,.hljs-literal,.hljs-type,.hljs-params,.hljs-meta,.hljs-link{color:#f5871f}.hljs-attribute{color:#eab700}.hljs-string,.hljs-symbol,.hljs-bullet,.hljs-addition{color:#690}.hljs-title,.hljs-section{color:#dd4a68}.hljs-keyword,.hljs-selector-tag{color:#07a}.hljs{overflow-x:auto;display:block;padding:.5em;color:#4d4d4c;background:white}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.highlight-wrapper:hover .code-box-code-copy,.highlight-wrapper:hover .code-box-codepen,.highlight-wrapper:hover .code-box-riddle{opacity:.66}.highlight{position:relative;line-height:1.5}.code-box-code-copy.anticon-check{font-weight:700;color:#00a854!important}.code-box{position:relative;display:inline-block;width:100%;margin:0 0 16px;border:1px solid #f0f0f0;border-radius:2px;transition:all .2s}.code-box .code-box-title,.code-box .code-box-title a{color:#000000d9;background:#fff}.code-box .code-box-description p{color:#000000d9}.code-box a.edit-button .anticon{color:inherit}.code-box a.edit-button .anticon:hover{color:#000000bf}.code-box,.code-box .code-box-demo{background-color:#fff}.code-box p{margin:0}.code-box:target{z-index:10;border:1px solid #1890ff}.code-box-expand-trigger{cursor:pointer;position:relative;margin-left:12px;font-size:20px;color:#3b4357;opacity:.75;transition:all .3s}.code-box-expand-trigger:hover{opacity:1}.ant-row-rtl .code-box-expand-trigger{margin-right:8px;margin-left:0}.code-box-title{position:absolute;top:-14px;margin-left:16px;padding:1px 8px;color:#777;background:#fff;border-radius:2px 2px 0 0;transition:background-color .4s}.ant-row-rtl .code-box-title{margin-right:16px;margin-left:0;border-radius:2px 0 0 2px}.code-box-title a,.code-box-title a:hover{font-size:14px;font-weight:500;color:#000000d9}.code-box-title .edit-button .anticon{font-size:12px}.code-box-description{padding:18px 24px 12px}.code-box .edit-button{position:absolute;top:7px;right:-16px;transform:scale(.9);padding-right:6px;font-size:12px;text-decoration:none;background:inherit}.ant-row-rtl .code-box .edit-button{right:auto;left:-21px;padding-right:0;padding-left:6px}.code-box-demo{padding:42px 24px 50px;color:#000000d9;border-bottom:1px solid #f0f0f0}.code-box iframe{width:100%;border:0}.code-box-meta.markdown{position:relative;width:100%;font-size:14px;border-radius:0 0 2px 2px;transition:background-color .4s}.code-box-meta blockquote{margin:0}.code-box-meta h4,section.code-box-meta p{margin:0}.code-box-meta>p{width:100%;margin:.5em 0;padding-right:25px;font-size:12px;word-break:break-word}.ant-row-rtl .code-box-meta>p{padding-right:0;padding-left:25px}.code-box.expand .code-box-meta{border-bottom:1px dashed #f0f0f0;border-radius:0}.code-box .code-expand-icon>span{display:flex}.code-box .code-expand-icon-show,.code-box .code-expand-icon-hide{cursor:pointer;width:16px;max-width:100%;height:16px;transition:all .4s}.code-box .code-expand-icon-show{pointer-events:auto;opacity:.55}.code-box .code-expand-icon-show:hover{opacity:1}.code-box .code-expand-icon-hide{pointer-events:none;display:none}.code-box .code-expand-icon.ant-tooltip-open .code-expand-icon-show{opacity:1}.code-box .highlight{position:relative}.code-box .highlight-wrapper{overflow:auto;display:none;border-radius:0 0 2px 2px}.code-box .highlight-wrapper-expand{display:block}.code-box .highlight pre{margin:0;padding:0;background:#fff}.code-box .highlight:not(:first-child){border-top:1px dashed #f0f0f0}.code-box-actions{display:flex;align-items:center;justify-content:center;padding:12px;text-align:center;opacity:.7;border-top:1px dashed #f0f0f0;transition:opacity .3s}.code-box-actions:hover{opacity:1}.code-box-actions>i{display:flex;margin-left:16px}.ant-row-rtl .code-box-actions>i{margin-right:16px;margin-left:0}.code-box-actions>i:first-child{margin-left:0}.ant-row-rtl .code-box-actions>i:first-child{margin-right:0}.code-box-code-icon{cursor:pointer;color:#00000073;transition:all .24s}.code-box-code-icon:hover{color:#00000073}.code-box-code-icon.anticon-check{font-weight:700;color:#52c41a!important}.code-box pre{width:auto;margin:0}.code-box pre code{display:block;padding:16px 32px;font-size:14px;line-height:2;color:#000000d9;background:#fff;border:none;border-radius:2px}.browser-mockup{position:relative;font-size:14px;border-top:2em solid rgba(230,230,230,.7);border-radius:3px 3px 0 0;box-shadow:0 .1em .5em #00000047}.browser-mockup:before{content:"";position:absolute;top:-1.25em;left:1em;display:block;width:.5em;height:.5em;background-color:#f44;border-radius:50%;box-shadow:0 0 0 2px #f44,1.5em 0 0 2px #9b3,3em 0 0 2px #fb5}.browser-mockup:after{content:"";position:absolute;top:-2em;left:5.5em;display:block;width:20%;height:0;border-right:.8em solid transparent;border-bottom:2em solid white;border-left:.8em solid transparent}.browser-mockup .browser-scroll{overflow:auto;height:100%;background:#f5f5f5}app-root,app-docs,.menu-site nz-dropdown,.menu-site .ant-dropdown-trigger{display:block}.ant-btn+.ant-btn{margin-left:8px}.ant-menu-item{outline:none}#page-404{position:fixed;z-index:100;inset:0;width:100%;height:100%;background-image:url(https://os.alipayobjects.com/rmsportal/NOAjOBbnYCrNzrW.jpg);background-repeat:no-repeat;background-attachment:fixed;background-position:center;background-size:100%}#page-404 section{position:absolute;top:48%;left:55%;margin:-103px 0 0 -120px;text-align:center}#page-404 h1{font-size:120px;font-weight:500;color:#1890ff}#page-404 .links{font-size:18px;color:#000000d9}#page-404 .links a{margin-left:8px}.deprecated{position:relative}.deprecated:before{cursor:pointer;content:"D";font-style:normal;color:#fa541c}h2,h3,h4,h5{position:relative}h2 .lake-link,h3 .lake-link,h4 .lake-link,h5 .lake-link{position:absolute;top:4px;left:-30px;display:none;align-items:center;justify-content:center;width:30px;height:24px}h2 .lake-link>i,h3 .lake-link>i,h4 .lake-link>i,h5 .lake-link>i{display:inline-block;width:18px;height:18px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1024 1024'%3E%3Cpath fill='rgba(0, 0, 0, 0.45)' d='M574 665.4a8.03 8.03 0 0 0-11.3 0L446.5 781.6c-53.8 53.8-144.6 59.5-204 0-59.5-59.5-53.8-150.2 0-204l116.2-116.2c3.1-3.1 3.1-8.2 0-11.3l-39.8-39.8a8.03 8.03 0 0 0-11.3 0L191.4 526.5c-84.6 84.6-84.6 221.5 0 306s221.5 84.6 306 0l116.2-116.2c3.1-3.1 3.1-8.2 0-11.3L574 665.4zm258.6-474c-84.6-84.6-221.5-84.6-306 0L410.3 307.6a8.03 8.03 0 0 0 0 11.3l39.7 39.7c3.1 3.1 8.2 3.1 11.3 0l116.2-116.2c53.8-53.8 144.6-59.5 204 0 59.5 59.5 53.8 150.2 0 204L665.3 562.6a8.03 8.03 0 0 0 0 11.3l39.8 39.8c3.1 3.1 8.2 3.1 11.3 0l116.2-116.2c84.5-84.6 84.5-221.5 0-306.1zM610.1 372.3a8.03 8.03 0 0 0-11.3 0L372.3 598.7a8.03 8.03 0 0 0 0 11.3l39.6 39.6c3.1 3.1 8.2 3.1 11.3 0l226.4-226.4c3.1-3.1 3.1-8.2 0-11.3l-39.5-39.6z'/%3E%3C/svg%3E%0A")}h2:hover .lake-link,h3:hover .lake-link,h4:hover .lake-link,h5:hover .lake-link{display:flex}[dir=rtl] h2 .lake-link,[dir=rtl] h3 .lake-link,[dir=rtl] h4 .lake-link,[dir=rtl] h5 .lake-link{right:-30px;left:inherit}.index-page{color:#697b8c}.index-page #header{width:100%;max-width:1280px;margin:20px auto 0;padding:0 24px;background:0 0;box-shadow:none}.index-page #nav.ant-menu-horizontal>.ant-menu-item-selected{border-top:none}.index-page .page{position:relative;width:100%;max-width:1200px;margin:auto;padding:0 24px}.index-page .page-wrapper{position:relative;overflow:inherit;font-family:Avenir,Chinese Quote,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;font-variant:tabular-nums;color:#314659}.index-page .page h2{padding:80px 0 40px;font-size:38px;font-weight:400;line-height:46px;color:#314659;text-align:center}.index-page .page-banner{position:relative;display:flex;align-items:center;justify-content:space-between;width:100%;max-width:1200px;height:520px;margin:auto;padding:0 24px}.index-page .page-banner__slogan{width:54%;min-width:420px;max-width:560px;min-height:336px;color:#0d1a26}.index-page .page-banner__slogan h1{margin:12px 0;font-family:Futura,Helvetica Neue For Number,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:54px}.index-page .page-banner__slogan p{font-size:20px}.index-page .page-banner__slogan .ant-btn{min-width:110px;height:40px;margin-right:16px;font-size:16px;border-radius:20px}.index-page .page-banner__slogan-btn{display:flex;align-items:center;margin-top:64px;line-height:40px}.index-page .page-banner__slogan-btn .github{display:flex}.index-page .page-banner__img{position:absolute;right:0;bottom:0;overflow:hidden;width:46%;max-width:482px;height:420px}.index-page .page-banner__img img{max-height:100%;border-radius:8px}.index-page .page-feature{position:relative;padding-bottom:80px;color:#fff}.index-page .page-feature__bg{position:absolute;inset:0;transform:skewY(-4.5deg);margin:0;background:#49a9ee}.index-page .page-feature__bg-bottom{position:absolute;right:0;bottom:0;left:0;height:200px;background:#49a9ee}.index-page .page-feature h2,.index-page .page-feature h3{color:#fff}.index-page .page-feature h2{padding-top:100px}.index-page .page-feature h3{font-size:18px}.index-page .page-feature__item{display:flex;height:100px;margin-bottom:56px}.index-page .page-feature .anticon{margin-right:16px;padding-top:8px;font-size:36px}.index-page .page-theme{overflow:hidden;margin-bottom:48px;background:#fff}.index-page .page-theme__item{display:block;margin-bottom:32px;color:#314659;text-align:center}.index-page .page-theme__item:hover{color:#49a9ee}.index-page .page-theme__item img{max-width:80%}.index-page .page-theme__item h3,.index-page .page-theme__item p{margin-top:16px}@media (max-width: 991px){.index-page #logo{padding-left:0}.index-page .page-banner__slogan{width:100%;min-width:100%;max-width:100%;text-align:center}.index-page .page-banner__slogan-btn{flex-wrap:wrap;justify-content:center}.index-page .page-banner__slogan-btn>a,.index-page .page-banner__slogan-btn>github-button{margin-bottom:16px}.index-page .page-banner__img{display:none}.index-page .page-feature__item{flex-direction:column;text-align:center}.index-page .page-feature__item .anticon{margin:0 0 16px}}[dir=rtl] .index-page .page-banner__slogan .ant-btn{margin-right:0;margin-left:16px}[dir=rtl] .index-page .page-banner__img{right:initial;left:0}[dir=rtl] .index-page .page-feature__bg{transform:skewY(4.5deg)}[dir=rtl] .index-page .page-feature .anticon{margin-right:0;margin-left:16px}@media (max-width: 991px){[dir=rtl] .index-page #logo{float:left}}#header .ant-row-rtl github-button .gh-count{display:none!important}.copy-import-module{cursor:pointer;padding:2px 6px;font-size:12px;color:#fff;background:#ff4d4f;border-radius:34px}.menu-deprecated .ant-badge{color:#ff4d4f;text-decoration:line-through;opacity:.5}[data-theme=dark] input:-webkit-autofill,[data-theme=dark] input:-webkit-autofill:hover,[data-theme=dark] input:-webkit-autofill:focus,[data-theme=dark] textarea:-webkit-autofill,[data-theme=dark] textarea:-webkit-autofill:hover,[data-theme=dark] textarea:-webkit-autofill:focus,[data-theme=dark] select:-webkit-autofill,[data-theme=dark] select:-webkit-autofill:hover,[data-theme=dark] select:-webkit-autofill:focus{border:1px solid #d9d9d9;box-shadow:none;-webkit-transition:background-color 5000s ease-in-out 0s;transition:background-color 5000s ease-in-out 0s;-webkit-text-fill-color:rgba(0,0,0,.85)}[data-theme=dark] #header{box-shadow:0 2px 8px #000000a6}[data-theme=dark] #search-box input::placeholder{color:#ffffff4d}[data-theme=dark] .drawer-button{box-shadow:0 2px 8px #000000a6}[data-theme=dark] .toc-affix .ant-affix{background:#fff}[data-theme=dark] :not(pre)>code[class*=language-],[data-theme=dark] pre[class*=language-]{color:#ffffffa6;background:#262626}[data-theme=dark] .code-box{border:1px solid #f0f0f0}[data-theme=dark] .code-box .markdown pre{margin:.5em 0;padding:6px 12px}[data-theme=dark] .code-box .markdown pre code{margin:0;background:#262626}[data-theme=dark] .code-box-debug{border-color:#d3adf7}[data-theme=dark] .code-box-expand-trigger{cursor:pointer;position:relative;margin-left:12px;font-size:20px;color:#fff;opacity:.45;transition:all .3s}[data-theme=dark] .code-box-expand-trigger:hover{opacity:.65}[data-theme=dark] .code-box-demo{border-bottom:1px solid #f0f0f0}[data-theme=dark] .code-box-codepen{background:transparent url(https://gw.alipayobjects.com/zos/antfincdn/1B3MOCiI5F/OtZslpOjYXijshDERXwc.svg) center / 14px no-repeat}[data-theme=dark] .code-box-riddle{background:transparent url(https://gw.alipayobjects.com/zos/antfincdn/NByOhhT9rO/DlHbxMCyeuyOrqOdbgik.svg) center / 14px no-repeat}[data-theme=dark] .code-box-codesandbox{background:transparent url(https://gw.alipayobjects.com/zos/antfincdn/hNEf2p1ZnS/aaYmtdDyHSCkXyLZVgGK.svg) center / 14px no-repeat}[data-theme=dark] .code-box .highlight pre{background:#fff}[data-theme=dark] ul.anticons-list li{color:#acacac}[data-theme=dark] ul.anticons-list li.TwoTone:hover{background-color:#15395b}[data-theme=dark] ul.anticons-list li:hover .anticon{color:#fff}[data-theme=dark] .markdown code,[data-theme=dark] .markdown pre,[data-theme=dark] .markdown pre code,[data-theme=dark] .markdown.api-container table tbody tr:hover{background:#262626}[data-theme=dark] .markdown code{background:rgba(255,255,255,.08)}[data-theme=dark] .prev-next-nav>a.prev-page .footer-nav-icon-before{color:#ffffff73}[data-theme=dark] .prev-next-nav>a.prev-page:hover .footer-nav-icon-before{left:-3px;color:#1890ff}[data-theme=dark] .prev-next-nav>.next-page .footer-nav-icon-after{color:#ffffff73}[data-theme=dark] .prev-next-nav>.next-page:hover .footer-nav-icon-after{right:-3px;color:#1890ff}[data-theme=dark] .grid-demo .demo-row,[data-theme=dark] [id^=components-grid-demo-] .demo-row,[data-theme=dark] .grid-demo .code-box-demo .demo-row,[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .demo-row{background-image:linear-gradient(90deg,#1d1d1d 4.16666667%,transparent 4.16666667%,transparent 8.33333333%,#1d1d1d 8.33333333%,#1d1d1d 12.5%,transparent 12.5%,transparent 16.66666667%,#1d1d1d 16.66666667%,#1d1d1d 20.83333333%,transparent 20.83333333%,transparent 25%,#1d1d1d 25%,#1d1d1d 29.16666667%,transparent 29.16666667%,transparent 33.33333333%,#1d1d1d 33.33333333%,#1d1d1d 37.5%,transparent 37.5%,transparent 41.66666667%,#1d1d1d 41.66666667%,#1d1d1d 45.83333333%,transparent 45.83333333%,transparent 50%,#1d1d1d 50%,#1d1d1d 54.16666667%,transparent 54.16666667%,transparent 58.33333333%,#1d1d1d 58.33333333%,#1d1d1d 62.5%,transparent 62.5%,transparent 66.66666667%,#1d1d1d 66.66666667%,#1d1d1d 70.83333333%,transparent 70.83333333%,transparent 75%,#1d1d1d 75%,#1d1d1d 79.16666667%,transparent 79.16666667%,transparent 83.33333333%,#1d1d1d 83.33333333%,#1d1d1d 87.5%,transparent 87.5%,transparent 91.66666667%,#1d1d1d 91.66666667%,#1d1d1d 95.83333333%,transparent 95.83333333%)}[data-theme=dark] .grid-demo .code-box-demo .ant-row>div:not(.gutter-row),[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row>div:not(.gutter-row){padding:16px 0;background:#028ac8}[data-theme=dark] .grid-demo .code-box-demo .ant-row>div:not(.gutter-row):nth-child(odd),[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row>div:not(.gutter-row):nth-child(odd){background:rgba(0,136,198,.7)}[data-theme=dark] .grid-demo .ant-row .demo-col,[data-theme=dark] [id^=components-grid-demo-] .ant-row .demo-col,[data-theme=dark] .grid-demo .code-box-demo .ant-row .demo-col,[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row .demo-col{margin-top:0;margin-bottom:0;padding:30px 0;font-size:18px;color:#000;text-align:center;border:none}[data-theme=dark] .grid-demo .ant-row .demo-col-1,[data-theme=dark] [id^=components-grid-demo-] .ant-row .demo-col-1{background:rgba(0,136,198,.7)}[data-theme=dark] .grid-demo .ant-row .demo-col-3,[data-theme=dark] [id^=components-grid-demo-] .ant-row .demo-col-3,[data-theme=dark] .grid-demo .code-box-demo .ant-row .demo-col-3,[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-3,[data-theme=dark] .grid-demo .ant-row .demo-col-5,[data-theme=dark] [id^=components-grid-demo-] .ant-row .demo-col-5,[data-theme=dark] .grid-demo .code-box-demo .ant-row .demo-col-5,[data-theme=dark] [id^=components-grid-demo-] .code-box-demo .ant-row .demo-col-5{color:#00000073;background:unset}[data-theme=dark] .markdown>table th{color:#ffffffa6;background:#1d1d1d}[data-theme=dark] .copied-code{background:rgba(255,255,255,.08)}[data-theme=dark] .browser-mockup.with-url:after{background-color:#fff}[data-theme=dark] .browser-mockup{border-top:2em solid #262626}[data-theme=dark] .browser-mockup:before{background-color:#fb4742;box-shadow:0 0 0 2px #fb4742,1.5em 0 0 2px #99bc2e,3em 0 0 2px #ffba5a}[data-theme=dark] .browser-mockup:after{border-bottom:2em solid #fff}[data-theme=dark] .browser-scroll{background:#262626}[data-theme=dark] .algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-],[data-theme=dark] .algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-] .algolia-docsearch-suggestion{background:#fff}[data-theme=dark] .algolia-autocomplete .ds-dropdown-menu .ds-suggestion.ds-cursor .algolia-docsearch-suggestion:not(.suggestion-layout-simple) .algolia-docsearch-suggestion--content{background-color:#ffffff14}[data-theme=dark] .algolia-autocomplete .algolia-docsearch-suggestion--category-header{color:#ffffffa6;border-bottom:1px solid #f0f0f0}[data-theme=dark] .algolia-autocomplete .algolia-docsearch-suggestion--subcategory-column:before{background:#f0f0f0}[data-theme=dark] .algolia-autocomplete .algolia-docsearch-suggestion--content:before{background:#f0f0f0}[data-theme=dark] code[class*=hljs],[data-theme=dark] pre[class*=hljs]{text-shadow:none}[data-theme=dark] .hljs-comment,[data-theme=dark] .hljs-quote{color:#b6b18b}[data-theme=dark] .hljs-variable,[data-theme=dark] .hljs-template-variable,[data-theme=dark] .hljs-tag,[data-theme=dark] .hljs-name,[data-theme=dark] .hljs-selector-id,[data-theme=dark] .hljs-selector-class,[data-theme=dark] .hljs-regexp,[data-theme=dark] .hljs-deletion{color:#eb3c54}[data-theme=dark] .hljs-number,[data-theme=dark] .hljs-built_in,[data-theme=dark] .hljs-builtin-name,[data-theme=dark] .hljs-literal,[data-theme=dark] .hljs-type,[data-theme=dark] .hljs-params,[data-theme=dark] .hljs-meta,[data-theme=dark] .hljs-link{color:#e7ce56}[data-theme=dark] .hljs-attribute{color:#ee7c2b}[data-theme=dark] .hljs-string,[data-theme=dark] .hljs-symbol,[data-theme=dark] .hljs-bullet,[data-theme=dark] .hljs-addition{color:#1890ff}[data-theme=dark] .hljs-title,[data-theme=dark] .hljs-section{color:#78bb65}[data-theme=dark] .hljs-keyword,[data-theme=dark] .hljs-selector-tag{color:#b45ea4}[data-theme=dark] .hljs{overflow-x:auto;display:block;padding:.5em;color:#c0c5ce;background:#1c1d21}[data-theme=dark] .hljs-emphasis{font-style:italic}[data-theme=dark] .hljs-strong{font-weight:700}[data-theme=dark].index-page{background:#fff}[data-theme=dark].index-page #header{box-shadow:none}[data-theme=dark].index-page .page-banner__slogan{color:#000000d9}@media (max-width: 767px){[data-theme=dark] .header-menu .menu-site{background:transparent}}.ant-affix{scrollbar-color:rgba(0,0,0,.3) #6e6e6e;scrollbar-width:thin}.ant-affix::-webkit-scrollbar{width:6px;height:6px}.ant-affix::-webkit-scrollbar-track{box-shadow:inset 0 0 6px #0000004d}.ant-affix::-webkit-scrollbar-thumb{background-color:#6e6e6e;outline:1px solid #333} diff --git a/theme/component-styles/en/index.html b/theme/component-styles/en/index.html new file mode 100644 index 000000000..93d714ab1 --- /dev/null +++ b/theme/component-styles/en/index.html @@ -0,0 +1,43 @@ +组件样式 - NG-ALAIN
      This article has not been translated, hope that your can PR to translated it. Help us!

      组件样式

      当你在使用 ng g ng-alain:list 来生成页面时,会发现并不会产生 Less 文件,主要是 NG-ALAIN 有自己的一套主题系统,NG-ALAIN 希望利用这套主题系统来构建组件,让 CSS 变成编程化。然而它并不能满足所有需求,本文会针对这方面做一个全面描述。

      如何开始

      手动创建组件样式文件,下面以 img.component.less 为示例:

      // 导入 Less 变量参数
      +@import '@delon/theme/index';
      +
      +:host {
      +  // 组件宿主样式
      +  display: block;
      +  font-size: 16px;
      +
      +  ::ng-deep {
      +    // 组件内其他样式
      +    .title {
      +      color: @text-color;
      +    }
      +  }
      +}

      这个 img.component.less 样式文件包含了许多信息:

      ~@delon/theme/index

      它包容了 NG-ZORRO、@delon/theme、@delon/abc、@delon/chart 主题系统所有的 Less 变量名,只有这样导入才能使我们在下面引用 @text-color 这类 Less 变量,它表示默认的颜色值。

      如果你正在使用商业主题,例如 PRO 会使用其他路径:@import 'src/styles/theme.less';

      特殊选择器

      :host::ng-deep 它们是 Angular 特殊选择器:

      • :host 表示组件宿主,假设我们当前的组件名为 img,那最终 :host 会被解析成 img 的样式

      • ::ng-deep 表示禁止对视图包装,这有助于减少生成一些额外的标识符,它会影响子组件的的使用,例如:.title 会在 <img> 组件内所有包含 class="title" 都将有效

      主题

      NG-ALAIN 至从 9.3.x 开始内置暗黑与紧凑两种主题,对于全局只需要修改 styles.less 一个参数,例如切换为暗黑主题:

      - // @import '@delon/theme/theme-dark.less';
      ++ @import '@delon/theme/theme-dark.less';

      若是紧凑,只需要换成 @import '@delon/theme/theme-compact.less';

      同时,对于组件样式的引入也全部替换成:

      - @import '@delon/theme/index';
      ++ @import '@delon/theme/theme-dark';

      动态主题

      如果你正在制作就像现在网站一样,动态切换不同的主题,那么就必须针对不同的主题额外覆盖,例如当开启暗黑时,将 .title 换成 #000 颜色值:

      // 导入 Less 变量参数
      +@import '@delon/theme/index';
      +
      +:host {
      +  // 组件宿主样式
      +  display: block;
      +  font-size: 16px;
      +
      +  ::ng-deep {
      +    // 组件内其他样式
      +    .title {
      +      color: @text-color;
      +    }
      +  }
      +}
      +
      +[data-theme='dark'] {
      +  :host ::ng-deep {
      +    .title {
      +      color: #000;
      +    }
      +  }
      +}

      若紧凑主题:

      [data-theme='compact'] {
      +  :host ::ng-deep {
      +    // 针对紧凑重新定义
      +  }
      +}

      相关链接

      \ No newline at end of file diff --git a/theme/component-styles/zh/index.html b/theme/component-styles/zh/index.html new file mode 100644 index 000000000..2f00b7f80 --- /dev/null +++ b/theme/component-styles/zh/index.html @@ -0,0 +1,43 @@ +组件样式 - NG-ALAIN
      This article has not been translated, hope that your can PR to translated it. Help us!

      组件样式

      当你在使用 ng g ng-alain:list 来生成页面时,会发现并不会产生 Less 文件,主要是 NG-ALAIN 有自己的一套主题系统,NG-ALAIN 希望利用这套主题系统来构建组件,让 CSS 变成编程化。然而它并不能满足所有需求,本文会针对这方面做一个全面描述。

      如何开始

      手动创建组件样式文件,下面以 img.component.less 为示例:

      // 导入 Less 变量参数
      +@import '@delon/theme/index';
      +
      +:host {
      +  // 组件宿主样式
      +  display: block;
      +  font-size: 16px;
      +
      +  ::ng-deep {
      +    // 组件内其他样式
      +    .title {
      +      color: @text-color;
      +    }
      +  }
      +}

      这个 img.component.less 样式文件包含了许多信息:

      ~@delon/theme/index

      它包容了 NG-ZORRO、@delon/theme、@delon/abc、@delon/chart 主题系统所有的 Less 变量名,只有这样导入才能使我们在下面引用 @text-color 这类 Less 变量,它表示默认的颜色值。

      如果你正在使用商业主题,例如 PRO 会使用其他路径:@import 'src/styles/theme.less';

      特殊选择器

      :host::ng-deep 它们是 Angular 特殊选择器:

      • :host 表示组件宿主,假设我们当前的组件名为 img,那最终 :host 会被解析成 img 的样式

      • ::ng-deep 表示禁止对视图包装,这有助于减少生成一些额外的标识符,它会影响子组件的的使用,例如:.title 会在 <img> 组件内所有包含 class="title" 都将有效

      主题

      NG-ALAIN 至从 9.3.x 开始内置暗黑与紧凑两种主题,对于全局只需要修改 styles.less 一个参数,例如切换为暗黑主题:

      - // @import '@delon/theme/theme-dark.less';
      ++ @import '@delon/theme/theme-dark.less';

      若是紧凑,只需要换成 @import '@delon/theme/theme-compact.less';

      同时,对于组件样式的引入也全部替换成:

      - @import '@delon/theme/index';
      ++ @import '@delon/theme/theme-dark';

      动态主题

      如果你正在制作就像现在网站一样,动态切换不同的主题,那么就必须针对不同的主题额外覆盖,例如当开启暗黑时,将 .title 换成 #000 颜色值:

      // 导入 Less 变量参数
      +@import '@delon/theme/index';
      +
      +:host {
      +  // 组件宿主样式
      +  display: block;
      +  font-size: 16px;
      +
      +  ::ng-deep {
      +    // 组件内其他样式
      +    .title {
      +      color: @text-color;
      +    }
      +  }
      +}
      +
      +[data-theme='dark'] {
      +  :host ::ng-deep {
      +    .title {
      +      color: #000;
      +    }
      +  }
      +}

      若紧凑主题:

      [data-theme='compact'] {
      +  :host ::ng-deep {
      +    // 针对紧凑重新定义
      +  }
      +}

      相关链接

      \ No newline at end of file diff --git a/theme/customize-theme/en/index.html b/theme/customize-theme/en/index.html new file mode 100644 index 000000000..6fb0b23a5 --- /dev/null +++ b/theme/customize-theme/en/index.html @@ -0,0 +1,64 @@ +定制主题 - NG-ALAIN

      定制主题

      Ant Design 设计规范上支持一定程度的样式定制,以满足业务和品牌上多样化的视觉需求,包括但不限于主色、圆角、边框和部分组件的视觉定制。

      定制方式

      Ant Design 的样式使用了 Less 作为开发语言,并定义了一系列全局/组件的样式变量,你可以根据需求进行相应调整,默认样式变量:NG-ZORRONG-ALAIN 两部分。

      初始化项目时定制主题

      在初始化项目时 ng add ng-alain 时选择自定义主题即可自动配置好自定义主题的相关文件,修改 src/styles/theme.less 文件内容就可以自定义主题。

      官方主题

      我们提供了一些官方主题,欢迎在项目中试用,并且给我们提供反馈。

      • 🌑 暗黑主题(9+ 支持)

      • 📦 紧凑主题(9+ 支持)

      方式一

      在样式文件 src/styles/theme.less 更改 defaultdarkcompact 覆盖主题变量。

      // - `default` 默认主题
      +// - `dark` 🌑 暗黑主题(9+ 支持)
      +// - `compact` 📦 紧凑主题(9+ 支持)
      +@import '@delon/theme/theme-default.less';
      +
      +// ==========The following is the custom theme variable area==========
      +// @primary-color: #f50;

      方式二

      如果项目不使用 Less,可在 CSS 文件或者 angular.jsonstyles 字段中,全量引入 dark.css 或者 compact.css

      样式文件中:

      @import "@delon/theme/dark.css";

      angular.json

      {
      +  "build": {
      +    "options": {
      +      "styles": [
      +        "node_modules/@delon/theme/dark.css"
      +      ]
      +    }
      +  }
      +}

      主题切换

      当使用 @angular/cli 的方式配置主题时必须为每个主题单独打包应用,当你想切换主题而不重新加载应用时(就像这个网站),你可以使用下面的方法将主题编译到单独的样式文件,并在运行时切换:

      注意:确保与主题变量相关的样式存在全局样式中,而不是组件样式中,因为组件样式优先级更高将会导致样式无法被覆盖。

      1. 安装依赖

      yarn add ng-alain-plugin-theme -D

      ng-alain-plugin-theme 是专门针对 NG-ALAIN 生成 color.less 及主题CSS文件。

      ng-alain.json 内新增 theme 节点:

      {
      +  "$schema": "./node_modules/ng-alain/schema.json",
      +  "theme": {
      +    "list": [
      +      {
      +        "theme": "dark"
      +      },
      +      {
      +        "key": "dust",
      +        "modifyVars": {
      +          "@primary-color": "#F5222D"
      +        }
      +      }
      +    ]
      +  }
      +}

      最后运行以下命令:

      npx ng-alain-plugin-theme -t=themeCss

      会在 src/assets/style.dark.csssrc/assets/style.dust.css 生成两个样式文件。

      1. 运行时切换样式

      动态创建 link 标签,将样式文件动态加载在应用中,反之移除。

      也可以直接使用 theme-btn 组件。

      changeTheme(theme: 'default' | 'dark'): void {
      +  if (theme === 'dark') {
      +    const style = document.createElement('link');
      +    style.type = 'text/css';
      +    style.rel = 'stylesheet';
      +    style.id = 'dark-theme';
      +    style.href = 'assets/style.dark.css';
      +  } else {
      +    const dom = document.getElementById('dark-theme');
      +    if (dom) {
      +      dom.remove();
      +    }
      +  }
      +}

      注意:如果你使用 @delon/chart 或第三方组件,可能需要手动修改组件来支持相应的主题。

      组件开发问题

      以上主题切换方式是在一个将所有 Less 样式内容独立于 src/styles.less 下面,当正常情况下,还会在组件内定义,就像:

      @Component({
      +  selector: 'app-dashboard-analysis',
      +  templateUrl: './analysis.component.html',
      +  styleUrls: ['./analysis.component.less'],
      +  changeDetection: ChangeDetectionStrategy.OnPush,
      +})
      +export class DashboardAnalysisComponent {}
      // analysis.component.less
      +@import '@delon/theme/index';
      +:host ::ng-deep { 
      +  color: @text-color;
      +}

      由于组件内定义的样式独立运行在 Angular 下面,是无法根据 @import '@delon/theme/theme-compact.less'; 的引入来整体切换成暗黑系,如果你希望在组件内也同样使用暗黑系,则必须将:

      // analysis.component.less
      +- @import '@delon/theme/index';
      ++ @import '@delon/theme/theme-dark';

      或者,重新针对某一个主题重新定义:

      // analysis.component.less
      +[data-theme='dark'] {
      +  :host ::ng-deep {
      +    // 针对暗黑系重新定义
      +  }
      +}

      或紧凑主题:

      [data-theme='compact'] {
      +  :host ::ng-deep {
      +    // 针对紧凑重新定义
      +  }
      +}

      相关文章

      \ No newline at end of file diff --git a/theme/customize-theme/zh/index.html b/theme/customize-theme/zh/index.html new file mode 100644 index 000000000..042062359 --- /dev/null +++ b/theme/customize-theme/zh/index.html @@ -0,0 +1,64 @@ +定制主题 - NG-ALAIN

      定制主题

      Ant Design 设计规范上支持一定程度的样式定制,以满足业务和品牌上多样化的视觉需求,包括但不限于主色、圆角、边框和部分组件的视觉定制。

      定制方式

      Ant Design 的样式使用了 Less 作为开发语言,并定义了一系列全局/组件的样式变量,你可以根据需求进行相应调整,默认样式变量:NG-ZORRONG-ALAIN 两部分。

      初始化项目时定制主题

      在初始化项目时 ng add ng-alain 时选择自定义主题即可自动配置好自定义主题的相关文件,修改 src/styles/theme.less 文件内容就可以自定义主题。

      官方主题

      我们提供了一些官方主题,欢迎在项目中试用,并且给我们提供反馈。

      • 🌑 暗黑主题(9+ 支持)

      • 📦 紧凑主题(9+ 支持)

      方式一

      在样式文件 src/styles/theme.less 更改 defaultdarkcompact 覆盖主题变量。

      // - `default` 默认主题
      +// - `dark` 🌑 暗黑主题(9+ 支持)
      +// - `compact` 📦 紧凑主题(9+ 支持)
      +@import '@delon/theme/theme-default.less';
      +
      +// ==========The following is the custom theme variable area==========
      +// @primary-color: #f50;

      方式二

      如果项目不使用 Less,可在 CSS 文件或者 angular.jsonstyles 字段中,全量引入 dark.css 或者 compact.css

      样式文件中:

      @import "@delon/theme/dark.css";

      angular.json

      {
      +  "build": {
      +    "options": {
      +      "styles": [
      +        "node_modules/@delon/theme/dark.css"
      +      ]
      +    }
      +  }
      +}

      主题切换

      当使用 @angular/cli 的方式配置主题时必须为每个主题单独打包应用,当你想切换主题而不重新加载应用时(就像这个网站),你可以使用下面的方法将主题编译到单独的样式文件,并在运行时切换:

      注意:确保与主题变量相关的样式存在全局样式中,而不是组件样式中,因为组件样式优先级更高将会导致样式无法被覆盖。

      1. 安装依赖

      yarn add ng-alain-plugin-theme -D

      ng-alain-plugin-theme 是专门针对 NG-ALAIN 生成 color.less 及主题CSS文件。

      ng-alain.json 内新增 theme 节点:

      {
      +  "$schema": "./node_modules/ng-alain/schema.json",
      +  "theme": {
      +    "list": [
      +      {
      +        "theme": "dark"
      +      },
      +      {
      +        "key": "dust",
      +        "modifyVars": {
      +          "@primary-color": "#F5222D"
      +        }
      +      }
      +    ]
      +  }
      +}

      最后运行以下命令:

      npx ng-alain-plugin-theme -t=themeCss

      会在 src/assets/style.dark.csssrc/assets/style.dust.css 生成两个样式文件。

      1. 运行时切换样式

      动态创建 link 标签,将样式文件动态加载在应用中,反之移除。

      也可以直接使用 theme-btn 组件。

      changeTheme(theme: 'default' | 'dark'): void {
      +  if (theme === 'dark') {
      +    const style = document.createElement('link');
      +    style.type = 'text/css';
      +    style.rel = 'stylesheet';
      +    style.id = 'dark-theme';
      +    style.href = 'assets/style.dark.css';
      +  } else {
      +    const dom = document.getElementById('dark-theme');
      +    if (dom) {
      +      dom.remove();
      +    }
      +  }
      +}

      注意:如果你使用 @delon/chart 或第三方组件,可能需要手动修改组件来支持相应的主题。

      组件开发问题

      以上主题切换方式是在一个将所有 Less 样式内容独立于 src/styles.less 下面,当正常情况下,还会在组件内定义,就像:

      @Component({
      +  selector: 'app-dashboard-analysis',
      +  templateUrl: './analysis.component.html',
      +  styleUrls: ['./analysis.component.less'],
      +  changeDetection: ChangeDetectionStrategy.OnPush,
      +})
      +export class DashboardAnalysisComponent {}
      // analysis.component.less
      +@import '@delon/theme/index';
      +:host ::ng-deep { 
      +  color: @text-color;
      +}

      由于组件内定义的样式独立运行在 Angular 下面,是无法根据 @import '@delon/theme/theme-compact.less'; 的引入来整体切换成暗黑系,如果你希望在组件内也同样使用暗黑系,则必须将:

      // analysis.component.less
      +- @import '@delon/theme/index';
      ++ @import '@delon/theme/theme-dark';

      或者,重新针对某一个主题重新定义:

      // analysis.component.less
      +[data-theme='dark'] {
      +  :host ::ng-deep {
      +    // 针对暗黑系重新定义
      +  }
      +}

      或紧凑主题:

      [data-theme='compact'] {
      +  :host ::ng-deep {
      +    // 针对紧凑重新定义
      +  }
      +}

      相关文章

      \ No newline at end of file diff --git a/theme/date/en/index.html b/theme/date/en/index.html new file mode 100644 index 000000000..d55549875 --- /dev/null +++ b/theme/date/en/index.html @@ -0,0 +1 @@ +_date - NG-ALAIN

      日期

      基于 date-fns 日期格式化,显示更多细节参考 date-fns(国内镜像:moment format

      最大好处是 date-fns 支持不同种类的时间格式,例如:

      • 2018-08-24 18:08:20

      • 2018-08-24

      • 20180824

      • 1503571962333

      等等。

      {{data.registered | _date: 'YYYY年MM月DD日'}}</code></pre><p>输出:</p><pre class="hljs language-null"><code>2017年08月24日
      \ No newline at end of file diff --git a/theme/date/zh/index.html b/theme/date/zh/index.html new file mode 100644 index 000000000..5cd4aa084 --- /dev/null +++ b/theme/date/zh/index.html @@ -0,0 +1 @@ +_date - NG-ALAIN

      日期

      基于 date-fns 日期格式化,显示更多细节参考 date-fns(国内镜像:moment format

      最大好处是 date-fns 支持不同种类的时间格式,例如:

      • 2018-08-24 18:08:20

      • 2018-08-24

      • 20180824

      • 1503571962333

      等等。

      {{data.registered | _date: 'YYYY年MM月DD日'}}</code></pre><p>输出:</p><pre class="hljs language-null"><code>2017年08月24日
      \ No newline at end of file diff --git a/theme/drawer/en/index.html b/theme/drawer/en/index.html new file mode 100644 index 000000000..828048819 --- /dev/null +++ b/theme/drawer/en/index.html @@ -0,0 +1,46 @@ +DrawerHelper - NG-ALAIN

      抽屉辅助类

      基于 NzDrawerService 封装,它解决一些已知问题:

      • 更友好的处理回调

      • 响应式处理

      create

      this.drawerHelper.create('Edit', FormEditComponent, { i }).subscribe(res => this.load());
      +// 对于组件的成功&关闭的处理说明
      +// 成功
      +this.NzDrawerRef.close(data);
      +this.NzDrawerRef.close(true);
      +// 关闭
      +this.NzDrawerRef.close();
      +this.NzDrawerRef.close(false);
      +
      +// 关闭所有已打开的抽屉
      +this.DrawerHelper.closeAll();

      包括 create & static 分别用于打开普通或静态抽屉。

      自定义组件HTML模板

      内容
      +<div class="drawer-footer">
      +  // 底部工具条由 `drawer-footer` 包裹
      +  <button nz-button [nzType]="'default'" (click)="cancel()">
      +    Cancel
      +  </button>
      +  <button nz-button [nzType]="'primary'" (click)="ok()">
      +    OK
      +  </button>
      +</div>

      若无需要底部工具条,需要指定参数 footer: false

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { DrawerHelper } from '@delon/theme';
      +import { DemoDrawerComponent } from '@shared';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'theme-drawer-simple',
      +  template: `
      +    <button nz-button (click)="open()">Open</button>
      +    <button nz-button (click)="static()">Static</button>
      +  `,
      +})
      +export class ThemeDrawerSimpleComponent {
      +  constructor(private modalHelper: DrawerHelper, private msg: NzMessageService) {}
      +
      +  open(): void {
      +    this.modalHelper.create('View', DemoDrawerComponent, { record: { a: 1, b: '2', c: new Date() } }).subscribe(res => {
      +      this.msg.info(res);
      +    });
      +  }
      +
      +  static(): void {
      +    this.modalHelper.static('View', DemoDrawerComponent, { record: { a: 1, b: '2', c: new Date() } }).subscribe(res => {
      +      this.msg.info(res);
      +    });
      +  }
      +}

      API

      名称类型默认值功能
      size指定抽屉大小,响应式只支持非数字值,若值为数值类型,则根据 nzPlacement 自动转化为 nzHeightnzWidthsm,md,lg,xl,numbermd
      footer是否需要工具条booleantrue
      footerHeight工具条高度number55
      exact是否精准(默认:true),若返回值非空值(nullundefined)视为成功,否则视为错误booleantrue
      drawerOptions抽屉 NzDrawerOptions 参数NzDrawerOptions-

      Method

      • closeAll 关闭所有已打开的抽屉

      \ No newline at end of file diff --git a/theme/drawer/zh/index.html b/theme/drawer/zh/index.html new file mode 100644 index 000000000..98641f530 --- /dev/null +++ b/theme/drawer/zh/index.html @@ -0,0 +1,46 @@ +DrawerHelper - NG-ALAIN

      抽屉辅助类

      基于 NzDrawerService 封装,它解决一些已知问题:

      • 更友好的处理回调

      • 响应式处理

      create

      this.drawerHelper.create('Edit', FormEditComponent, { i }).subscribe(res => this.load());
      +// 对于组件的成功&关闭的处理说明
      +// 成功
      +this.NzDrawerRef.close(data);
      +this.NzDrawerRef.close(true);
      +// 关闭
      +this.NzDrawerRef.close();
      +this.NzDrawerRef.close(false);
      +
      +// 关闭所有已打开的抽屉
      +this.DrawerHelper.closeAll();

      包括 create & static 分别用于打开普通或静态抽屉。

      自定义组件HTML模板

      内容
      +<div class="drawer-footer">
      +  // 底部工具条由 `drawer-footer` 包裹
      +  <button nz-button [nzType]="'default'" (click)="cancel()">
      +    Cancel
      +  </button>
      +  <button nz-button [nzType]="'primary'" (click)="ok()">
      +    OK
      +  </button>
      +</div>

      若无需要底部工具条,需要指定参数 footer: false

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { DrawerHelper } from '@delon/theme';
      +import { DemoDrawerComponent } from '@shared';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'theme-drawer-simple',
      +  template: `
      +    <button nz-button (click)="open()">Open</button>
      +    <button nz-button (click)="static()">Static</button>
      +  `,
      +})
      +export class ThemeDrawerSimpleComponent {
      +  constructor(private modalHelper: DrawerHelper, private msg: NzMessageService) {}
      +
      +  open(): void {
      +    this.modalHelper.create('View', DemoDrawerComponent, { record: { a: 1, b: '2', c: new Date() } }).subscribe(res => {
      +      this.msg.info(res);
      +    });
      +  }
      +
      +  static(): void {
      +    this.modalHelper.static('View', DemoDrawerComponent, { record: { a: 1, b: '2', c: new Date() } }).subscribe(res => {
      +      this.msg.info(res);
      +    });
      +  }
      +}

      API

      名称类型默认值功能
      size指定抽屉大小,响应式只支持非数字值,若值为数值类型,则根据 nzPlacement 自动转化为 nzHeightnzWidthsm,md,lg,xl,numbermd
      footer是否需要工具条booleantrue
      footerHeight工具条高度number55
      exact是否精准(默认:true),若返回值非空值(nullundefined)视为成功,否则视为错误booleantrue
      drawerOptions抽屉 NzDrawerOptions 参数NzDrawerOptions-

      Method

      • closeAll 关闭所有已打开的抽屉

      \ No newline at end of file diff --git a/theme/getting-started/en/index.html b/theme/getting-started/en/index.html new file mode 100644 index 000000000..55f6322e3 --- /dev/null +++ b/theme/getting-started/en/index.html @@ -0,0 +1 @@ +开始使用 - NG-ALAIN

      开始使用

      @delon/theme 是 ng-alain 脚手架唯一必须引入的模块。它包含了非常多主题样式参数,通过覆盖参数数值进而定制一些特别的需求;以及若干通用性服务管道

      样式

      ng-alain 默认使用 less 作为样式语言,建议在使用前或者遇到疑问时学习一下 less 的相关特性,如果想获取基础的 CSS 知识或查阅属性,可以参考 MDN文档

      布局

      脚手架提供两种布局:默认布局空白布局,脚手架并不包含两种布局样式文件,它位于 @delon/theme 类库当中。

      脚手架样式

      在开发过程中,绝大部分情况下可以利用 ng-alain 提供的工具集来调整间距、颜色、大小、边框等,它是一个套类似 bootstrap 风格的工具集。

      或通过 theme.less 下定制你的样式,这些样式将会在全局应用中有效,且有两个问题比较突出:

      • 全局污染 —— CSS 文件中的选择器是全局生效的,不同文件中的同名选择器,根据 build 后生成文件中的先后顺序,后面的样式会将前面的覆盖;

      • 选择器复杂 —— 为了避免上面的问题,我们在编写样式的时候不得不小心翼翼,类名里会带上限制范围的标识,变得越来越长,多人开发时还很容易导致命名风格混乱,一个元素上使用的选择器个数也可能越来越多。

      因此,除非设计师明确需求以外,我们应该尽可能使用组件 styles 属性创建组件样式,有关如何Angular样式请参考《关于Angular样式封装》。

      样式文件类别

      在一个项目中,样式文件根据功能不同,可以划分为不同的类别。

      theme.less

      全局样式文件,在这里你可以进行一些通用设置。

      工具集

      请参考 工具集样式

      页面级

      具体页面相关的样式,例如 monitor.component.less,里面的内容仅和本页面的内容相关。一般情况下,如果不是页面内容特别复杂,有了前面全局样式、工具集样式的配合,这里要写的应该不多。

      如何覆盖参数

      ng-alain 的样式使用了 Less 作为开发语言,并定义了一系列全局/组件的样式变量,你可以根据需求进行相应调整。

      要改变的参数统一放在 theme.less LESS文件中,所有参数包括:

      如果以上变量不能满足你的定制需求,可以给我们提 i

      \ No newline at end of file diff --git a/theme/getting-started/zh/index.html b/theme/getting-started/zh/index.html new file mode 100644 index 000000000..3a3958aab --- /dev/null +++ b/theme/getting-started/zh/index.html @@ -0,0 +1 @@ +开始使用 - NG-ALAIN

      开始使用

      @delon/theme 是 ng-alain 脚手架唯一必须引入的模块。它包含了非常多主题样式参数,通过覆盖参数数值进而定制一些特别的需求;以及若干通用性服务管道

      样式

      ng-alain 默认使用 less 作为样式语言,建议在使用前或者遇到疑问时学习一下 less 的相关特性,如果想获取基础的 CSS 知识或查阅属性,可以参考 MDN文档

      布局

      脚手架提供两种布局:默认布局空白布局,脚手架并不包含两种布局样式文件,它位于 @delon/theme 类库当中。

      脚手架样式

      在开发过程中,绝大部分情况下可以利用 ng-alain 提供的工具集来调整间距、颜色、大小、边框等,它是一个套类似 bootstrap 风格的工具集。

      或通过 theme.less 下定制你的样式,这些样式将会在全局应用中有效,且有两个问题比较突出:

      • 全局污染 —— CSS 文件中的选择器是全局生效的,不同文件中的同名选择器,根据 build 后生成文件中的先后顺序,后面的样式会将前面的覆盖;

      • 选择器复杂 —— 为了避免上面的问题,我们在编写样式的时候不得不小心翼翼,类名里会带上限制范围的标识,变得越来越长,多人开发时还很容易导致命名风格混乱,一个元素上使用的选择器个数也可能越来越多。

      因此,除非设计师明确需求以外,我们应该尽可能使用组件 styles 属性创建组件样式,有关如何Angular样式请参考《关于Angular样式封装》。

      样式文件类别

      在一个项目中,样式文件根据功能不同,可以划分为不同的类别。

      theme.less

      全局样式文件,在这里你可以进行一些通用设置。

      工具集

      请参考 工具集样式

      页面级

      具体页面相关的样式,例如 monitor.component.less,里面的内容仅和本页面的内容相关。一般情况下,如果不是页面内容特别复杂,有了前面全局样式、工具集样式的配合,这里要写的应该不多。

      如何覆盖参数

      ng-alain 的样式使用了 Less 作为开发语言,并定义了一系列全局/组件的样式变量,你可以根据需求进行相应调整。

      要改变的参数统一放在 theme.less LESS文件中,所有参数包括:

      如果以上变量不能满足你的定制需求,可以给我们提 i

      \ No newline at end of file diff --git a/theme/global/en/index.html b/theme/global/en/index.html new file mode 100644 index 000000000..813f20be2 --- /dev/null +++ b/theme/global/en/index.html @@ -0,0 +1 @@ +全局参数 - NG-ALAIN

      全局参数

      公共类

      名称默认值功能
      @layout-gutter8pxantd布局间距,不可改变
      @font-size-base14pxantd字号
      @primary-color蓝色antd 主色
      @mobile-min768pxPC端
      @mobile-max767px移动端
      @text-xs@font-size-base - 2xs 文本大小
      @text-sm@font-size-base + 0sm 文本大小
      @text-md@font-size-base + 2md 文本大小
      @text-lg@font-size-base + 4lg 文本大小
      @text-xl@font-size-base + 8xl 文本大小
      @text-xxl@font-size-base + 12xxl 文本大小
      @icon-sm@font-size-base * 2sm 图标
      @icon-md@font-size-base * 4md 图标
      @icon-lg@font-size-base * 6lg 图标
      @icon-xl@font-size-base * 8xl 图标
      @icon-xxl@font-size-base * 10xxl 图标
      @h1-font-size32pxh1字号
      @h2-font-size24pxh2字号
      @h3-font-size20pxh3字号
      @h4-font-size16pxh4字号
      @h5-font-size14pxh5字号
      @h6-font-size12pxh6字号
      @enable-all-colorsfalse开启背景、文本颜色
      例如:.bg-teal.text-teal
      有关颜色值见样式规则章节
      @modal-sm300px小号对话框
      @modal-md500px中号对话框
      @modal-lg900px大号对话框
      @modal-xl1200px超大号对话框
      @drawer-sm300px小号抽屉
      @drawer-md500px中号抽屉
      @drawer-lg900px大号抽屉
      @drawer-xl1200px超大号抽屉
      @drawer-sm-height200px小号抽屉
      @drawer-md-height400px中号抽屉
      @drawer-lg-height600px大号抽屉
      @drawer-xl-height800px超大号抽屉
      @code-border-color#eee<code> 边框颜色
      @code-bg#f7f7f7<code> 背景颜色
      @widthsxs @layout-gutter * 10
      sm @layout-gutter * 20
      md @layout-gutter * 30
      lg @layout-gutter * 40
      xl @layout-gutter * 50
      xxl @layout-gutter * 50
      宽度
      @border-radius-md4px中号边框圆角
      @border-radius-lg6px大号边框圆角
      @masonry-column-gap@layout-gutter * 2CSS瀑布流列与列的间距
      @scrollbar-enabledtrue启用美化滚动条
      @scrollbar-width6px美化滚动条宽度
      @scrollbar-height6px美化滚动条高度
      @scrollbar-track-colorrgba(0, 0, 0, 0.3)美化滚动条的轨道颜色
      @scrollbar-thumb-color#6e6e6e美化滚动条小方块颜色
      @scrollbar-table-enabledfalse启用美化表格滚动条
      @rtl-enabledfalse是否支持 RTL
      @enabled-util-aligntrue是否启用工具类 align
      @enabled-util-bordertrue是否启用工具类 border
      @enabled-util-codetrue是否启用工具类 code
      @enabled-util-colortrue是否启用工具类 color
      @enabled-util-displaytrue是否启用工具类 display
      @enabled-util-floattrue是否启用工具类 float
      @enabled-util-icontrue是否启用工具类 icon
      @enabled-util-imgtrue是否启用工具类 img
      @enabled-util-positiontrue是否启用工具类 position
      @enabled-util-overflowtrue是否启用工具类 overflow
      @enabled-util-responsivetrue是否启用工具类 responsive
      @enabled-util-spacingtrue是否启用工具类 spacing
      @enabled-util-texttrue是否启用工具类 text
      @enabled-util-widthtrue是否启用工具类 width
      @enabled-util-scrollbartrue是否启用工具类 scrollbar
      @enabled-util-othertrue是否启用工具类 other

      Ng补丁

      通用

      名称默认值功能
      @preserve-white-spaces-enabledtrue解决开启 preserveWhitespaces 时按钮间可能会出现无缝
      @preserve-sf-and-st-spaces16pxsfst 间间距
      @preserve-buttons-spaces按钮间间距(包括:button、button-group、popconfirm)
      @router-animation-enabledfalse是否启用路由切换动画
      @router-animation-durationantFadeIn路由切换动画
      @router-animation-duration1s路由切换动画时长

      Zorro组件补丁

      通用

      名称默认值功能
      @forced-turn-off-nz-modal-animation-enabledfalse强制关闭 nz-modal 动画效果

      表单

      名称默认值功能
      @form-state-visual-feedback-enabledfalse开启表单元素的视觉反馈
      @search-form-bg#fbfbfb列表页简易搜索表单背景色
      @search-form-radius4px列表页简易搜索表单圆角

      表格

      nz-table

      名称默认值功能
      @nz-table-img-radius4px表格中的图片圆角
      @nz-table-img-margin-right4px表格中的图片右外边距
      @nz-table-img-max-width32px表格中的图片最大宽度
      @nz-table-img-max-height32px表格中的图片最大高度
      @nz-table-even-backgroundnone奇偶背景
      @nz-table-rep-max-width@mobile-max当移动端屏幕时触发表格响应式
      @nz-table-rep-header-background@border-color-split表格响应式:标题背景色
      @nz-table-rep-even-background#f9f9f9表格响应式:偶数行背景色
      @nz-table-rep-padding-vertical8px表格响应式:单元格垂直间距
      @nz-table-rep-padding-horizontal8px表格响应式:单元格水平间距
      @nz-table-rep-column-name-width100px表格响应式:列名最大宽度
      @nz-table-rep-column-name-text-alignright表格响应式:列名文本对齐方式
      @nz-table-rep-column-name-padding-rightright表格响应式:列名右间距
      @nz-table-rep-column-name-colorrgba(0, 0, 0, 0.5)表格响应式:列名颜色

      小部件

      名称默认值功能
      @hafl-enabledtrue半图
      @abs-enabledtrue中心元素
      @masonry-enabledtrueCSS瀑布流列
      @setting-drawer-enabledtrue主题设置
      @search__form-enabledtruePro搜索框,DEMO
      \ No newline at end of file diff --git a/theme/global/zh/index.html b/theme/global/zh/index.html new file mode 100644 index 000000000..c3d9a89df --- /dev/null +++ b/theme/global/zh/index.html @@ -0,0 +1 @@ +全局参数 - NG-ALAIN

      全局参数

      公共类

      名称默认值功能
      @layout-gutter8pxantd布局间距,不可改变
      @font-size-base14pxantd字号
      @primary-color蓝色antd 主色
      @mobile-min768pxPC端
      @mobile-max767px移动端
      @text-xs@font-size-base - 2xs 文本大小
      @text-sm@font-size-base + 0sm 文本大小
      @text-md@font-size-base + 2md 文本大小
      @text-lg@font-size-base + 4lg 文本大小
      @text-xl@font-size-base + 8xl 文本大小
      @text-xxl@font-size-base + 12xxl 文本大小
      @icon-sm@font-size-base * 2sm 图标
      @icon-md@font-size-base * 4md 图标
      @icon-lg@font-size-base * 6lg 图标
      @icon-xl@font-size-base * 8xl 图标
      @icon-xxl@font-size-base * 10xxl 图标
      @h1-font-size32pxh1字号
      @h2-font-size24pxh2字号
      @h3-font-size20pxh3字号
      @h4-font-size16pxh4字号
      @h5-font-size14pxh5字号
      @h6-font-size12pxh6字号
      @enable-all-colorsfalse开启背景、文本颜色
      例如:.bg-teal.text-teal
      有关颜色值见样式规则章节
      @modal-sm300px小号对话框
      @modal-md500px中号对话框
      @modal-lg900px大号对话框
      @modal-xl1200px超大号对话框
      @drawer-sm300px小号抽屉
      @drawer-md500px中号抽屉
      @drawer-lg900px大号抽屉
      @drawer-xl1200px超大号抽屉
      @drawer-sm-height200px小号抽屉
      @drawer-md-height400px中号抽屉
      @drawer-lg-height600px大号抽屉
      @drawer-xl-height800px超大号抽屉
      @code-border-color#eee<code> 边框颜色
      @code-bg#f7f7f7<code> 背景颜色
      @widthsxs @layout-gutter * 10
      sm @layout-gutter * 20
      md @layout-gutter * 30
      lg @layout-gutter * 40
      xl @layout-gutter * 50
      xxl @layout-gutter * 50
      宽度
      @border-radius-md4px中号边框圆角
      @border-radius-lg6px大号边框圆角
      @masonry-column-gap@layout-gutter * 2CSS瀑布流列与列的间距
      @scrollbar-enabledtrue启用美化滚动条
      @scrollbar-width6px美化滚动条宽度
      @scrollbar-height6px美化滚动条高度
      @scrollbar-track-colorrgba(0, 0, 0, 0.3)美化滚动条的轨道颜色
      @scrollbar-thumb-color#6e6e6e美化滚动条小方块颜色
      @scrollbar-table-enabledfalse启用美化表格滚动条
      @rtl-enabledfalse是否支持 RTL
      @enabled-util-aligntrue是否启用工具类 align
      @enabled-util-bordertrue是否启用工具类 border
      @enabled-util-codetrue是否启用工具类 code
      @enabled-util-colortrue是否启用工具类 color
      @enabled-util-displaytrue是否启用工具类 display
      @enabled-util-floattrue是否启用工具类 float
      @enabled-util-icontrue是否启用工具类 icon
      @enabled-util-imgtrue是否启用工具类 img
      @enabled-util-positiontrue是否启用工具类 position
      @enabled-util-overflowtrue是否启用工具类 overflow
      @enabled-util-responsivetrue是否启用工具类 responsive
      @enabled-util-spacingtrue是否启用工具类 spacing
      @enabled-util-texttrue是否启用工具类 text
      @enabled-util-widthtrue是否启用工具类 width
      @enabled-util-scrollbartrue是否启用工具类 scrollbar
      @enabled-util-othertrue是否启用工具类 other

      Ng补丁

      通用

      名称默认值功能
      @preserve-white-spaces-enabledtrue解决开启 preserveWhitespaces 时按钮间可能会出现无缝
      @preserve-sf-and-st-spaces16pxsfst 间间距
      @preserve-buttons-spaces按钮间间距(包括:button、button-group、popconfirm)
      @router-animation-enabledfalse是否启用路由切换动画
      @router-animation-durationantFadeIn路由切换动画
      @router-animation-duration1s路由切换动画时长

      Zorro组件补丁

      通用

      名称默认值功能
      @forced-turn-off-nz-modal-animation-enabledfalse强制关闭 nz-modal 动画效果

      表单

      名称默认值功能
      @form-state-visual-feedback-enabledfalse开启表单元素的视觉反馈
      @search-form-bg#fbfbfb列表页简易搜索表单背景色
      @search-form-radius4px列表页简易搜索表单圆角

      表格

      nz-table

      名称默认值功能
      @nz-table-img-radius4px表格中的图片圆角
      @nz-table-img-margin-right4px表格中的图片右外边距
      @nz-table-img-max-width32px表格中的图片最大宽度
      @nz-table-img-max-height32px表格中的图片最大高度
      @nz-table-even-backgroundnone奇偶背景
      @nz-table-rep-max-width@mobile-max当移动端屏幕时触发表格响应式
      @nz-table-rep-header-background@border-color-split表格响应式:标题背景色
      @nz-table-rep-even-background#f9f9f9表格响应式:偶数行背景色
      @nz-table-rep-padding-vertical8px表格响应式:单元格垂直间距
      @nz-table-rep-padding-horizontal8px表格响应式:单元格水平间距
      @nz-table-rep-column-name-width100px表格响应式:列名最大宽度
      @nz-table-rep-column-name-text-alignright表格响应式:列名文本对齐方式
      @nz-table-rep-column-name-padding-rightright表格响应式:列名右间距
      @nz-table-rep-column-name-colorrgba(0, 0, 0, 0.5)表格响应式:列名颜色

      小部件

      名称默认值功能
      @hafl-enabledtrue半图
      @abs-enabledtrue中心元素
      @masonry-enabledtrueCSS瀑布流列
      @setting-drawer-enabledtrue主题设置
      @search__form-enabledtruePro搜索框,DEMO
      \ No newline at end of file diff --git a/theme/http/en/index.html b/theme/http/en/index.html new file mode 100644 index 000000000..ea63baa1d --- /dev/null +++ b/theme/http/en/index.html @@ -0,0 +1,78 @@ +_HttpClient - NG-ALAIN

      _HttpClient

      @delon/theme 包含了一个叫 _HttpClient 类,其本质还是调用 Angular 的 HttpClient

      特性

      • 更友好的调用方法

      • 维护 loading 属性

      • 处理空值

      • 统一时间格式为时间戳

      • 支持修饰器 @GET、@POST 等

      示例

      网络请求一般情况下是同 Object 对象做为参数一起使用,例如一个 get 请求,原始写法:

      HttpClient.get(url, { params: { pi: 1 } });

      而对于 _HttpClient 来讲,将参数进一步优化为:

      _HttpClient.get(url, { pi: 1 });

      AlainThemeConfig

      通用配置项,例如统一对 _HttpClient 设置空值、时间处理方式。

      import { AlainThemeConfig } from '@delon/theme';
      +export function fnAlainThemeConfig(): AlainThemeConfig {
      +  return Object.assign(new AlainThemeConfig(), {
      +    http: {
      +      nullValueHandling: 'ignore',
      +    },
      +  });
      +}
      +
      +@NgModule({})
      +export class DelonModule {
      +  static forRoot(): ModuleWithProviders {
      +    return {
      +      ngModule: DelonModule,
      +      providers: [
      +        { provide: AlainThemeConfig, useFactory: fnAlainThemeConfig },
      +      ],
      +    };
      +  }
      +}

      API

      参数说明类型默认值
      nullValueHandling空值处理include,ignoreinclude
      dateValueHandling时间值处理timestamp,ignoretimestamp

      使用修饰器

      目标类都必须继承 BaseApi 基类。

      示例

      @BaseUrl('/user')
      +@BaseHeaders({ bh: 'a' })
      +class RestService extends BaseApi {
      +  @GET()
      +  query(@Query('pi') pi: number, @Query('ps') ps: number): Observable {
      +    return;
      +  }
      +
      +  @GET(':id')
      +  get(@Path('id') id: number): Observable {
      +    return;
      +  }
      +
      +  @GET()
      +  get(@Payload data: {}): Observable {
      +    return;
      +  }
      +
      +  // 使用 `::id` 来表示转义,若 `id` 值为 `undefined` 会忽略转换,例如:
      +  // 当 `id` 为 `10` 时 => 10:type
      +  // 当 `id` 为 `undefined` 时 => :id:type
      +  @GET(':id::type')
      +  get(@Path('id') id: number): Observable {
      +    return;
      +  }
      +
      +  @POST(':id')
      +  save(@Path('id') id: number, @Body data: Object): Observable {
      +    return;
      +  }
      +
      +  @POST()
      +  save(@Payload data: {}): Observable {
      +    return;
      +  }
      +
      +  @FORM()
      +  save(@Payload data: {}): Observable {
      +    return;
      +  }
      +  
      +  // 若请求的URL不符合授权要求,会直接抛出 `401` 错误,且不发送请求
      +  @GET('', { acl: 'admin' })
      +  ACL(): Observable {
      +    return;
      +  }
      +}

      • @BaseUrl(url: string)

      • @BaseHeaders(headers: HttpHeaders | { [header: string]: string | string[] })

      方法

      HttpOptions

      参数说明类型默认值
      aclACL 配置,若导入 @delon/acl 时自动有效,等同于 ACLService.can(roleOrAbility: ACLCanType) 参数值any-
      observe指定响应内容body,events,response-
      responseType指定内容格式arraybuffer,blob,json,text-
      reportProgress是否监听进度事件boolean-
      withCredentials设置 withCredentialsboolean-

      参数

      • @Path(key?: string) URL 路由参数

      • @Query(key?: string) URL 参数 QueryString

      • @Body 参数 Body

      • @Headers(key?: string) 参数 Headers

      • @Payload 请求负载

        • 当支持 Body 时(例如:POSTPUT)为内容体等同 @Body

        • 当不支持 Body 时(例如:GETDELETE 等)为 QueryString

      HttpContext

      CUSTOM_ERROR

      是否自定义处理异常消息。

      this.http.post(`login`, {
      + name: 'cipchk', pwd: '123456'
      +}, {
      + context: new HttpContext()
      +             .set(ALLOW_ANONYMOUS, true)
      +             .set(CUSTOM_ERROR, true)
      +}).subscribe({
      + next: console.log,
      + error: console.log
      +});

      IGNORE_BASE_URL

      是否忽略API前缀。

      // When environment.api.baseUrl set '/api'
      +
      +this.http.get(`/path`) // Request Url: /api/path
      +this.http.get(`/path`, { context: new HttpContext().set(IGNORE_BASE_URL, true) }) // Request Url: /path

      RAW_BODY

      是否原样返回请求

      \ No newline at end of file diff --git a/theme/http/zh/index.html b/theme/http/zh/index.html new file mode 100644 index 000000000..019118449 --- /dev/null +++ b/theme/http/zh/index.html @@ -0,0 +1,78 @@ +_HttpClient - NG-ALAIN

      _HttpClient

      @delon/theme 包含了一个叫 _HttpClient 类,其本质还是调用 Angular 的 HttpClient

      特性

      • 更友好的调用方法

      • 维护 loading 属性

      • 处理空值

      • 统一时间格式为时间戳

      • 支持修饰器 @GET、@POST 等

      示例

      网络请求一般情况下是同 Object 对象做为参数一起使用,例如一个 get 请求,原始写法:

      HttpClient.get(url, { params: { pi: 1 } });

      而对于 _HttpClient 来讲,将参数进一步优化为:

      _HttpClient.get(url, { pi: 1 });

      AlainThemeConfig

      通用配置项,例如统一对 _HttpClient 设置空值、时间处理方式。

      import { AlainThemeConfig } from '@delon/theme';
      +export function fnAlainThemeConfig(): AlainThemeConfig {
      +  return Object.assign(new AlainThemeConfig(), {
      +    http: {
      +      nullValueHandling: 'ignore',
      +    },
      +  });
      +}
      +
      +@NgModule({})
      +export class DelonModule {
      +  static forRoot(): ModuleWithProviders {
      +    return {
      +      ngModule: DelonModule,
      +      providers: [
      +        { provide: AlainThemeConfig, useFactory: fnAlainThemeConfig },
      +      ],
      +    };
      +  }
      +}

      API

      参数说明类型默认值
      nullValueHandling空值处理include,ignoreinclude
      dateValueHandling时间值处理timestamp,ignoretimestamp

      使用修饰器

      目标类都必须继承 BaseApi 基类。

      示例

      @BaseUrl('/user')
      +@BaseHeaders({ bh: 'a' })
      +class RestService extends BaseApi {
      +  @GET()
      +  query(@Query('pi') pi: number, @Query('ps') ps: number): Observable {
      +    return;
      +  }
      +
      +  @GET(':id')
      +  get(@Path('id') id: number): Observable {
      +    return;
      +  }
      +
      +  @GET()
      +  get(@Payload data: {}): Observable {
      +    return;
      +  }
      +
      +  // 使用 `::id` 来表示转义,若 `id` 值为 `undefined` 会忽略转换,例如:
      +  // 当 `id` 为 `10` 时 => 10:type
      +  // 当 `id` 为 `undefined` 时 => :id:type
      +  @GET(':id::type')
      +  get(@Path('id') id: number): Observable {
      +    return;
      +  }
      +
      +  @POST(':id')
      +  save(@Path('id') id: number, @Body data: Object): Observable {
      +    return;
      +  }
      +
      +  @POST()
      +  save(@Payload data: {}): Observable {
      +    return;
      +  }
      +
      +  @FORM()
      +  save(@Payload data: {}): Observable {
      +    return;
      +  }
      +  
      +  // 若请求的URL不符合授权要求,会直接抛出 `401` 错误,且不发送请求
      +  @GET('', { acl: 'admin' })
      +  ACL(): Observable {
      +    return;
      +  }
      +}

      • @BaseUrl(url: string)

      • @BaseHeaders(headers: HttpHeaders | { [header: string]: string | string[] })

      方法

      HttpOptions

      参数说明类型默认值
      aclACL 配置,若导入 @delon/acl 时自动有效,等同于 ACLService.can(roleOrAbility: ACLCanType) 参数值any-
      observe指定响应内容body,events,response-
      responseType指定内容格式arraybuffer,blob,json,text-
      reportProgress是否监听进度事件boolean-
      withCredentials设置 withCredentialsboolean-

      参数

      • @Path(key?: string) URL 路由参数

      • @Query(key?: string) URL 参数 QueryString

      • @Body 参数 Body

      • @Headers(key?: string) 参数 Headers

      • @Payload 请求负载

        • 当支持 Body 时(例如:POSTPUT)为内容体等同 @Body

        • 当不支持 Body 时(例如:GETDELETE 等)为 QueryString

      HttpContext

      CUSTOM_ERROR

      是否自定义处理异常消息。

      this.http.post(`login`, {
      + name: 'cipchk', pwd: '123456'
      +}, {
      + context: new HttpContext()
      +             .set(ALLOW_ANONYMOUS, true)
      +             .set(CUSTOM_ERROR, true)
      +}).subscribe({
      + next: console.log,
      + error: console.log
      +});

      IGNORE_BASE_URL

      是否忽略API前缀。

      // When environment.api.baseUrl set '/api'
      +
      +this.http.get(`/path`) // Request Url: /api/path
      +this.http.get(`/path`, { context: new HttpContext().set(IGNORE_BASE_URL, true) }) // Request Url: /path

      RAW_BODY

      是否原样返回请求

      \ No newline at end of file diff --git a/theme/icon/en/index.html b/theme/icon/en/index.html new file mode 100644 index 000000000..db5607795 --- /dev/null +++ b/theme/icon/en/index.html @@ -0,0 +1,60 @@ +Icon - NG-ALAIN
      This article has not been translated, hope that your can PR to translated it. Help us!

      Icon

      自 ng-zorro-antd 1.7.x 以后图标发生破坏性变更,虽然带了诸多优势,同时也带来几个劣势:

      • 若采用动态加载会产生额外的HTTP请求

      • 若静态加载需要逐一注册图标

      • st 组件的 format 参数无法直接指定图标

      ng-alain 默认使用静态加载的做法,毕竟后端使用图标相对于比较有限,即使将 svg 都打包进脚本相比较之前整个 styles 体积上是所有减少,但比较并不多。

      而针对以上问题,ng-alain 提供几种方案。

      使用icon插件(推荐)

      尽可能从项目中分析并生成静态 Icon,插件会自动在 src 目录下生成两个文件:

      • src/style-icons.ts 自定义部分无法解析(例如:远程菜单图标)

      • src/style-icons-auto.ts 命令自动生成文件

      自动排除 ng-zorro-antd@delon 已经加载的图标。

      ng g ng-alain:plugin icon

      同时,需要手动在 startup.service.ts 中导入:

      import { ICONS_AUTO } from '../../../style-icons-auto';
      +import { ICONS } from '../../../style-icons';
      +
      +@Injectable()
      +export class StartupService {
      +  constructor(iconSrv: NzIconService) {
      +    iconSrv.addIcon(...ICONS_AUTO, ...ICONS);
      +  }
      +}

      有效语法

      <i class="anticon anticon-user"></i>
      +<i class="anticon anticon-question-circle-o"></i>
      +<i class="anticon anticon-spin anticon-loading"></i>
      +<i nz-icon class="anticon anticon-user"></i>
      +<i nz-icon nzType="align-{{type ? 'left' : 'right'}}"></i>
      +<i nz-icon [type]="type ? 'menu-fold' : 'menu-unfold'" [theme]="theme ? 'outline' : 'fill'"></i>
      +<i nz-icon [type]="type ? 'fullscreen' : 'fullscreen-exit'"></i>
      +<i nz-icon nzType="{{ type ? 'arrow-left' : 'arrow-right' }}"></i>
      +<i nz-icon nzType="filter" theme="outline"></i>
      +<nz-input-group [nzAddOnBeforeIcon]="focus ? 'anticon anticon-arrow-down' : 'anticon anticon-search'"></nz-input-group>

      动态加载

      动态加载,这是为了减少包体积而提供的方式。当 NG-ZORRO 检测用户想要渲染的图标还没有静态引入时,会发起 HTTP 请求动态引入。你只需要配置 angular.json 文件:

      {
      +  "assets": [
      +    {
      +      "glob": "**/*",
      +      "input": "./node_modules/@ant-design/icons-angular/src/inline-svg/",
      +      "output": "/assets/"
      +    }
      +  ]
      +}

      动态使用

      不管是静态或动态加载,依然无法解决原始方法 class="anticon anticon-" 的便利性,毕竟字符串就是字符串并非 Angular 模板无法被解析,而针对这个问题,提供两种解决办法。

      类样式

      事实上所有 Antd 图标都可以在 iconfont 找得到,可以点选自己需要的图标并生成相应的 css 文件或 cdn,最后在项目中可以直接使用 1.7.0 之前的写法。

      注意: 在项目编辑里加上 anticon anticon- 前缀才能同之前的类名保持一致。

      // angular.json
      +"styles": [
      +  "src/iconfont.css"
      +],

      如果非cdn还需要将相应的 icon 图标文件复制到 assets 目录下,同时修改 iconfont.css@font-face 对应的 url 路径。

      @angular/elements

      动态加载的另一种方式是使用 @angular/elements,只需要 nz-icon 指令重新封装成组件。

      import { Component, Input } from '@angular/core';
      +
      +@Component({
      +  selector: 'nz-icon',
      +  template: `<i nz-icon [type]="type"></i>`,
      +})
      +export class IconComponent {
      +  @Input()
      +  type: string;
      +}

      同时在根模块里注册它。

      import { createCustomElement } from '@angular/elements';
      +
      +@NgModule({
      +  declarations: [],
      +})
      +export class AppModule {
      +  constructor(injector: Injector) {
      +    customElements.define('nz-icon', createCustomElement(IconComponent, { injector }));
      +  }
      +}

      最后。

      @Component({
      +  selector: 'app-demo',
      +  template: `
      +  <div [innerHTML]="value"></div>
      +  `,
      +})
      +export class DemoComponent {
      +
      +  constructor(private san: DomSanitizer) { }
      +
      +  value = this.san.bypassSecurityTrustHtml(
      +    `icon: `,
      +  );
      +}
      \ No newline at end of file diff --git a/theme/icon/zh/index.html b/theme/icon/zh/index.html new file mode 100644 index 000000000..ef2979705 --- /dev/null +++ b/theme/icon/zh/index.html @@ -0,0 +1,60 @@ +Icon - NG-ALAIN
      This article has not been translated, hope that your can PR to translated it. Help us!

      Icon

      自 ng-zorro-antd 1.7.x 以后图标发生破坏性变更,虽然带了诸多优势,同时也带来几个劣势:

      • 若采用动态加载会产生额外的HTTP请求

      • 若静态加载需要逐一注册图标

      • st 组件的 format 参数无法直接指定图标

      ng-alain 默认使用静态加载的做法,毕竟后端使用图标相对于比较有限,即使将 svg 都打包进脚本相比较之前整个 styles 体积上是所有减少,但比较并不多。

      而针对以上问题,ng-alain 提供几种方案。

      使用icon插件(推荐)

      尽可能从项目中分析并生成静态 Icon,插件会自动在 src 目录下生成两个文件:

      • src/style-icons.ts 自定义部分无法解析(例如:远程菜单图标)

      • src/style-icons-auto.ts 命令自动生成文件

      自动排除 ng-zorro-antd@delon 已经加载的图标。

      ng g ng-alain:plugin icon

      同时,需要手动在 startup.service.ts 中导入:

      import { ICONS_AUTO } from '../../../style-icons-auto';
      +import { ICONS } from '../../../style-icons';
      +
      +@Injectable()
      +export class StartupService {
      +  constructor(iconSrv: NzIconService) {
      +    iconSrv.addIcon(...ICONS_AUTO, ...ICONS);
      +  }
      +}

      有效语法

      <i class="anticon anticon-user"></i>
      +<i class="anticon anticon-question-circle-o"></i>
      +<i class="anticon anticon-spin anticon-loading"></i>
      +<i nz-icon class="anticon anticon-user"></i>
      +<i nz-icon nzType="align-{{type ? 'left' : 'right'}}"></i>
      +<i nz-icon [type]="type ? 'menu-fold' : 'menu-unfold'" [theme]="theme ? 'outline' : 'fill'"></i>
      +<i nz-icon [type]="type ? 'fullscreen' : 'fullscreen-exit'"></i>
      +<i nz-icon nzType="{{ type ? 'arrow-left' : 'arrow-right' }}"></i>
      +<i nz-icon nzType="filter" theme="outline"></i>
      +<nz-input-group [nzAddOnBeforeIcon]="focus ? 'anticon anticon-arrow-down' : 'anticon anticon-search'"></nz-input-group>

      动态加载

      动态加载,这是为了减少包体积而提供的方式。当 NG-ZORRO 检测用户想要渲染的图标还没有静态引入时,会发起 HTTP 请求动态引入。你只需要配置 angular.json 文件:

      {
      +  "assets": [
      +    {
      +      "glob": "**/*",
      +      "input": "./node_modules/@ant-design/icons-angular/src/inline-svg/",
      +      "output": "/assets/"
      +    }
      +  ]
      +}

      动态使用

      不管是静态或动态加载,依然无法解决原始方法 class="anticon anticon-" 的便利性,毕竟字符串就是字符串并非 Angular 模板无法被解析,而针对这个问题,提供两种解决办法。

      类样式

      事实上所有 Antd 图标都可以在 iconfont 找得到,可以点选自己需要的图标并生成相应的 css 文件或 cdn,最后在项目中可以直接使用 1.7.0 之前的写法。

      注意: 在项目编辑里加上 anticon anticon- 前缀才能同之前的类名保持一致。

      // angular.json
      +"styles": [
      +  "src/iconfont.css"
      +],

      如果非cdn还需要将相应的 icon 图标文件复制到 assets 目录下,同时修改 iconfont.css@font-face 对应的 url 路径。

      @angular/elements

      动态加载的另一种方式是使用 @angular/elements,只需要 nz-icon 指令重新封装成组件。

      import { Component, Input } from '@angular/core';
      +
      +@Component({
      +  selector: 'nz-icon',
      +  template: `<i nz-icon [type]="type"></i>`,
      +})
      +export class IconComponent {
      +  @Input()
      +  type: string;
      +}

      同时在根模块里注册它。

      import { createCustomElement } from '@angular/elements';
      +
      +@NgModule({
      +  declarations: [],
      +})
      +export class AppModule {
      +  constructor(injector: Injector) {
      +    customElements.define('nz-icon', createCustomElement(IconComponent, { injector }));
      +  }
      +}

      最后。

      @Component({
      +  selector: 'app-demo',
      +  template: `
      +  <div [innerHTML]="value"></div>
      +  `,
      +})
      +export class DemoComponent {
      +
      +  constructor(private san: DomSanitizer) { }
      +
      +  value = this.san.bypassSecurityTrustHtml(
      +    `icon: `,
      +  );
      +}
      \ No newline at end of file diff --git a/theme/index/en/index.html b/theme/index/en/index.html new file mode 100644 index 000000000..073991bf3 --- /dev/null +++ b/theme/index/en/index.html @@ -0,0 +1,13 @@ +PreloadOptionalModules - NG-ALAIN

      PreloadOptionalModules

      可选预加载模块,当需要对某些懒加载在第一次页面加载时也一并加载该资源时。例如 order 模块默认情况下必须第一次访问 /order 路由时才会真正的开始下载资源文件,当通过使用 PreloadOptionalModules 并指定 preload: true 时,会在 Angular 项目启动后自动下载资源文件。

      @NgModule({
      + providers: [PreloadOptionalModules],
      + imports: [
      +   RouterModule.forRoot([
      +    {
      +      path: 'order',
      +      loadChildren: () => import('./order/order.module').then(m => m.OrderModule),
      +      data: { preload: true }
      +    },
      +   ], { 
      +    preloadingStrategy: PreloadOptionalModules
      +  })]
      +})
      \ No newline at end of file diff --git a/theme/index/zh/index.html b/theme/index/zh/index.html new file mode 100644 index 000000000..53d459f56 --- /dev/null +++ b/theme/index/zh/index.html @@ -0,0 +1,13 @@ +PreloadOptionalModules - NG-ALAIN

      PreloadOptionalModules

      可选预加载模块,当需要对某些懒加载在第一次页面加载时也一并加载该资源时。例如 order 模块默认情况下必须第一次访问 /order 路由时才会真正的开始下载资源文件,当通过使用 PreloadOptionalModules 并指定 preload: true 时,会在 Angular 项目启动后自动下载资源文件。

      @NgModule({
      + providers: [PreloadOptionalModules],
      + imports: [
      +   RouterModule.forRoot([
      +    {
      +      path: 'order',
      +      loadChildren: () => import('./order/order.module').then(m => m.OrderModule),
      +      data: { preload: true }
      +    },
      +   ], { 
      +    preloadingStrategy: PreloadOptionalModules
      +  })]
      +})
      \ No newline at end of file diff --git a/theme/keys/en/index.html b/theme/keys/en/index.html new file mode 100644 index 000000000..d9471ee12 --- /dev/null +++ b/theme/keys/en/index.html @@ -0,0 +1 @@ +keys - NG-ALAIN

      可迭代对象

      keys 将对象数组化。

      例如:

      const data = { name: 'cipchk', address: { city: 'shanghai', district: 'changning' } };

      变成可迭代对象:

      <div *ngFor="let item of data | keys">{{item.key}} {{item.value | json}}</div>

      字典可迭代

      const data = { 1: '正常', 2: '删除' };

      若希望保持键名为 number 数字型:

      <div *ngFor="let item of data | keys: true">{{item.key}} {{item.value | json}}

      Angular 6.1.0 以后原生支持 KeyValuePipe,用法有点类似。

      \ No newline at end of file diff --git a/theme/keys/zh/index.html b/theme/keys/zh/index.html new file mode 100644 index 000000000..77e6e2b1d --- /dev/null +++ b/theme/keys/zh/index.html @@ -0,0 +1 @@ +keys - NG-ALAIN

      可迭代对象

      keys 将对象数组化。

      例如:

      const data = { name: 'cipchk', address: { city: 'shanghai', district: 'changning' } };

      变成可迭代对象:

      <div *ngFor="let item of data | keys">{{item.key}} {{item.value | json}}</div>

      字典可迭代

      const data = { 1: '正常', 2: '删除' };

      若希望保持键名为 number 数字型:

      <div *ngFor="let item of data | keys: true">{{item.key}} {{item.value | json}}

      Angular 6.1.0 以后原生支持 KeyValuePipe,用法有点类似。

      \ No newline at end of file diff --git a/theme/layout-blank/en/index.html b/theme/layout-blank/en/index.html new file mode 100644 index 000000000..29384b14e --- /dev/null +++ b/theme/layout-blank/en/index.html @@ -0,0 +1 @@ +空白布局 - NG-ALAIN

      空白布局

      用于无须任何顶部和侧边区域,一般用于高定制性页面,诸如大屏幕数据等。默认布局所有参数都以 @alain-blank- 开头。

      使用方式

      src/styles.less 引入:

      @import '@delon/theme/layout-blank/style/index';

      参数

      名称默认值功能
      @prefix.alain-blank布局样式前缀
      @bg#f5f7fa背景色
      @content-padding-vertical0垂直内边距
      @content-padding-horizontal16px水平内边距
      \ No newline at end of file diff --git a/theme/layout-blank/zh/index.html b/theme/layout-blank/zh/index.html new file mode 100644 index 000000000..6e22a1f65 --- /dev/null +++ b/theme/layout-blank/zh/index.html @@ -0,0 +1 @@ +空白布局 - NG-ALAIN

      空白布局

      用于无须任何顶部和侧边区域,一般用于高定制性页面,诸如大屏幕数据等。默认布局所有参数都以 @alain-blank- 开头。

      使用方式

      src/styles.less 引入:

      @import '@delon/theme/layout-blank/style/index';

      参数

      名称默认值功能
      @prefix.alain-blank布局样式前缀
      @bg#f5f7fa背景色
      @content-padding-vertical0垂直内边距
      @content-padding-horizontal16px水平内边距
      \ No newline at end of file diff --git a/theme/layout-default/en/index.html b/theme/layout-default/en/index.html new file mode 100644 index 000000000..e341612ad --- /dev/null +++ b/theme/layout-default/en/index.html @@ -0,0 +1,65 @@ +默认布局 - NG-ALAIN

      默认布局

      默认布局所有参数都以 @alain-default- 开头。

      使用方式

      1、导入样式

      src/styles.less 引入:

      @import '@delon/theme/layout-default/style/index';

      2、使用 layout-default 组件

      src/app/layout/basic/basic.component.ts 创建一个新的布局:

      import { Component } from '@angular/core';
      +import { SettingsService, User } from '@delon/theme';
      +import { LayoutDefaultOptions } from '@delon/theme/layout-default';
      +import { environment } from '@env/environment';
      +
      +@Component({
      +  selector: 'layout-basic',
      +  template: `
      +    <layout-default [options]="options" [asideUser]="asideUserTpl" [nav]="navTpl" [content]="contentTpl">
      +      <layout-default-header-item direction="left">
      +        <a layout-default-header-item-trigger href="//github.com/ng-alain/ng-alain" target="_blank">
      +          <i nz-icon nzType="github"></i>
      +        </a>
      +      </layout-default-header-item>
      +      <layout-default-header-item direction="left" hidden="pc">
      +        <div layout-default-header-item-trigger (click)="searchToggleStatus = !searchToggleStatus">
      +          <i nz-icon nzType="search"></i>
      +        </div>
      +      </layout-default-header-item>
      +      <layout-default-header-item direction="middle">
      +        <header-search class="alain-default__search" [toggleChange]="searchToggleStatus" />
      +      </layout-default-header-item>
      +      <layout-default-header-item direction="right" hidden="mobile">
      +        <header-task />
      +      </layout-default-header-item>
      +      <ng-template #asideUserTpl>
      +        <div nz-dropdown nzTrigger="click" [nzDropdownMenu]="userMenu" class="alain-default__aside-user">
      +          <nz-avatar class="alain-default__aside-user-avatar" [nzSrc]="user.avatar" />
      +          <div class="alain-default__aside-user-info">
      +            <strong>{{ user.name }}</strong>
      +            <p class="mb0">{{ user.email }}</p>
      +          </div>
      +        </div>
      +        <nz-dropdown-menu #userMenu="nzDropdownMenu">
      +          <ul nz-menu>
      +            <li nz-menu-item routerLink="/pro/account/center">{{ 'menu.account.center' | i18n }}</li>
      +            <li nz-menu-item routerLink="/pro/account/settings">{{ 'menu.account.settings' | i18n }}</li>
      +          </ul>
      +        </nz-dropdown-menu>
      +      </ng-template>
      +      <ng-template #navTpl>
      +        <layout-default-nav class="d-block py-lg" />
      +      </ng-template>
      +      <ng-template #contentTpl>
      +        <router-outlet />
      +      </ng-template>
      +    </layout-default>
      +
      +    <setting-drawer *ngIf="showSettingDrawer" />
      +    <theme-btn />
      +  `,
      +})
      +export class LayoutBasicComponent {
      +  options: LayoutDefaultOptions = {
      +    logoExpanded: `./assets/logo-full.svg`,
      +    logoCollapsed: `./assets/logo.svg`,
      +  };
      +  searchToggleStatus = false;
      +  showSettingDrawer = !environment.production;
      +  get user(): User {
      +    return this.settings.user;
      +  }
      +
      +  constructor(private settings: SettingsService) {}
      +}

      通过 LayoutDefaultService 服务可以在运行时动态管理布局。除此之外,在布局的操作都可以通过 SettingsService.notify 来订阅布局的变化(例如:侧边栏的展开与收缩等),注意所有布局相关的变化都会通过这个接口,所以需要做好 filter 操作。

      API

      layout-default

      成员说明类型默认值
      [options]选项LayoutDefaultOptions-
      [asideUser]侧边用户信息TemplateRef<void>-
      [asideBottom]侧边底部信息TemplateRef<void>-
      [nav]导航信息TemplateRef<void>-
      [content]内容信息TemplateRef<void>-
      [customError]自定义异常路由错误消息,当 null 时表示不显示错误消息string, nullCould not load ${evt.url} route
      [fetchingStrictly]是否完全受控顶部加载动画状态booleanfalse
      [fetching]顶部加载动画状态booleanfalse

      LayoutDefaultOptions

      成员说明类型默认值
      [logo]自定义 Logo 区域TemplateRef<void>-
      [logoExpanded]展开时 Logo 地址string./assets/logo-full.svg
      [logoCollapsed]收缩时 Logo 地址string./assets/logo.svg
      [logoFixWidth]指定固定 Logo 宽度number-
      [logoLink]指定 Logo 路由地址string/
      [hideAside]隐藏侧边栏,同时不显收缩图标按钮booleanfalse
      [hideHeader]隐藏顶栏booleanfalse
      [showHeaderCollapse]是否在顶栏显示菜单折叠按钮booleantrue
      [showSiderCollapse]是否在侧边栏底部显示菜单折叠按钮booleanfalse

      layout-default-nav

      成员说明类型默认值
      [disabledAcl]acl 校验失败时以 disabled 状态显示booleanfalse
      [autoCloseUnderPad]小于Pad宽度时路由切换后自动关闭侧边栏booleantrue
      [recursivePath]自动向上递归查找,菜单数据源包含 /ware,则 /ware/1 也视为 /warebooleantrue
      [openStrictly]展开完全受控,不再自动关闭已展开的项booleanfalse
      [maxLevelIcon]Icon最多显示到第几层number3
      (select)点击菜单时回调(包含 disabledEventEmitter<Menu>-

      组件的数据来自 MenuService(其结构为 Menu), MenuService 的操作会自动同步至该组件。

      layout-default-header-item

      成员说明类型默认值
      [hidden]隐藏行为pc, mobile, nonenones
      [direction]方向left, middle, rightright

      layout-default-header-item-trigger

      头部项的触发样式。

      layout-default-top-menu-item

      头部业务菜单项,使用方式请参考 layout.component.ts(预览)。

      布局说明

      按上-左-右布局方式,运用于业务页的开发。其规范细节:

      • 顶部区域高度 64px(参数:@header-hg

      • 侧边区域宽度 200px(参数:@aside-wd

        • 当屏幕低于 1140px 宽时隐藏侧边导航

        • 当屏幕低于 1140px 宽时打开侧边导航为 fixed 状态

        • 主要包括一个 layout-default-nav 组件

      参数是指可以通过 src/styles/theme.less 文件按需要调整。

      顶部区域

      位置:src/app/layout/base/widgets

      脚手架默认提供了一些常规顶部区域组件,这些组件都存放于 components 目录中。同时 @delon/abc 也提供若干顶部组件(例如:notice-icon 通知菜单组件)。你可以根据提供的组件自行组合或自行开发。

      脚手架支持响应式布局,对于顶部区域可能会是在小屏幕下需要隐藏一些组件,因此你可以在对应的DOM节点上加上 hidden-xs 表示当屏幕小于 768px 时自动隐藏。

      侧边区域

      位置:src/app/layout/default/sidebar

      只包括一个用户信息和主菜单。主菜单是一个 layout-default-nav

      内部区域

      内容区域是业务页区域,规范细节:

      • 内容距离页面标准、侧边、右边滚动条、底部,这四边距依一个标准Dashboard的Gutter宽度 24px

      样式参数

      名称默认值功能
      @alain-default-prefix.alain-default布局样式前缀
      @alain-default-easecubic-bezier(.25, 0, .15, 1)动画过滤函数
      @alain-default-header-hg64px顶部高度
      @alain-default-header-bg@primary-color顶部背景色
      @alain-default-header-padding@layout-gutter * 2顶部左右内边距
      @alain-default-header-search-enabledtrue是否开启顶部搜索框
      @alain-default-header-icon-fs18px顶部 Icon 大小
      @alain-default-header-logo-max-height36pxLogo 图最高高度
      @alain-default-aside-wd200px侧边栏宽度
      @alain-default-aside-bg#fff侧边栏背景色
      @alain-default-aside-scrollbar-width0侧边栏滚动条宽度
      @alain-default-aside-scrollbar-height0侧边栏滚动条高度
      @alain-default-aside-scrollbar-track-colortransparent侧边栏滚动条的轨道颜色
      @alain-default-aside-scrollbar-thumb-colortransparent侧边栏滚动条小方块颜色
      @alain-default-aside-nav-fs14px侧边栏菜单字号
      @alain-default-aside-nav-icon-width14px侧边栏菜单 ICON 宽度
      @alain-default-aside-nav-img-wh14px侧边栏菜单图像宽高
      @alain-default-aside-nav-padding-top-bottom@layout-gutter侧边栏菜单项上下内边距
      @alain-default-aside-nav-padding-left-right@layout-gutter * 2侧边栏菜单项左右内边距
      @alain-default-aside-nav-text-colorrgba(0, 0, 0, 0.65)侧边栏菜单文本颜色
      @alain-default-aside-nav-text-hover-color#108ee9侧边栏菜单文本悬停颜色
      @alain-default-aside-nav-group-text-colorrgba(0, 0, 0, 0.43)侧边栏菜单分组文本颜色
      @alain-default-aside-nav-selected-text-color#108ee9侧边栏菜单激活时文本颜色
      @alain-default-aside-nav-selected-bg#fcfcfc侧边栏菜单激活时背景颜色
      @alain-default-aside-collapsed-wd@layout-gutter * 8侧边栏收缩后宽度
      @alain-default-aside-collapsed-nav-fs24px侧边栏收缩后文本字号
      @alain-default-aside-collapsed-nav-img-wh24px侧边栏收缩后图像宽高
      @alain-default-content-heading-bg#fafbfc内容区域标题背景色
      @alain-default-content-heading-border#efe3e5内容区域标题底部边框色
      @alain-default-content-padding@layout-gutter * 3内容区域内边距
      @alain-default-content-bg#f5f7fa内容区域背景色
      @alain-default-widget-app-icons-enabledtrue是否 app-icon 小部件样式
      @alain-default-aside-user-enabledtrue是否侧边栏用户信息样式

      常见问题

      为什么会有两个快捷菜单

      快捷菜单生成规则统一在 0 索引下查找,并按以下顺序来获取:

      1. 【推荐】 children 存在 shortcutRoot: true 则最优先

      2. 否则查找带有【dashboard】字样链接,若存在则在此菜单的下方创建快捷入口

      3. 否则放在0节点位置

      因此,建议在菜单数据的 0 索引下保持一个有效的 shortcutRoot: true 数据。

      常见问题

      隐藏主菜单项

      表示永远不显示菜单,可以在菜单设置 hide: true

      隐藏自动生成导航隐藏面包屑

      表示不显示该节点,可以在菜单设置 hideInBreadcrumb: true

      关于层级

      虽然支持无限层级,但为了用户体验请保持最多不超过四层(含组别)。

      如何更新某个菜单项

      当调用 MenuService.setItem(key, newValue) 时会自动重新渲染主菜单,其中 key 必须是存在值,请参考 Menu 的定义。

      如何控制菜单展开

      利用 LayoutDefaultService.toggleCollapsed() 来运行时手动控制。

      \ No newline at end of file diff --git a/theme/layout-default/zh/index.html b/theme/layout-default/zh/index.html new file mode 100644 index 000000000..117155626 --- /dev/null +++ b/theme/layout-default/zh/index.html @@ -0,0 +1,65 @@ +默认布局 - NG-ALAIN

      默认布局

      默认布局所有参数都以 @alain-default- 开头。

      使用方式

      1、导入样式

      src/styles.less 引入:

      @import '@delon/theme/layout-default/style/index';

      2、使用 layout-default 组件

      src/app/layout/basic/basic.component.ts 创建一个新的布局:

      import { Component } from '@angular/core';
      +import { SettingsService, User } from '@delon/theme';
      +import { LayoutDefaultOptions } from '@delon/theme/layout-default';
      +import { environment } from '@env/environment';
      +
      +@Component({
      +  selector: 'layout-basic',
      +  template: `
      +    <layout-default [options]="options" [asideUser]="asideUserTpl" [nav]="navTpl" [content]="contentTpl">
      +      <layout-default-header-item direction="left">
      +        <a layout-default-header-item-trigger href="//github.com/ng-alain/ng-alain" target="_blank">
      +          <i nz-icon nzType="github"></i>
      +        </a>
      +      </layout-default-header-item>
      +      <layout-default-header-item direction="left" hidden="pc">
      +        <div layout-default-header-item-trigger (click)="searchToggleStatus = !searchToggleStatus">
      +          <i nz-icon nzType="search"></i>
      +        </div>
      +      </layout-default-header-item>
      +      <layout-default-header-item direction="middle">
      +        <header-search class="alain-default__search" [toggleChange]="searchToggleStatus" />
      +      </layout-default-header-item>
      +      <layout-default-header-item direction="right" hidden="mobile">
      +        <header-task />
      +      </layout-default-header-item>
      +      <ng-template #asideUserTpl>
      +        <div nz-dropdown nzTrigger="click" [nzDropdownMenu]="userMenu" class="alain-default__aside-user">
      +          <nz-avatar class="alain-default__aside-user-avatar" [nzSrc]="user.avatar" />
      +          <div class="alain-default__aside-user-info">
      +            <strong>{{ user.name }}</strong>
      +            <p class="mb0">{{ user.email }}</p>
      +          </div>
      +        </div>
      +        <nz-dropdown-menu #userMenu="nzDropdownMenu">
      +          <ul nz-menu>
      +            <li nz-menu-item routerLink="/pro/account/center">{{ 'menu.account.center' | i18n }}</li>
      +            <li nz-menu-item routerLink="/pro/account/settings">{{ 'menu.account.settings' | i18n }}</li>
      +          </ul>
      +        </nz-dropdown-menu>
      +      </ng-template>
      +      <ng-template #navTpl>
      +        <layout-default-nav class="d-block py-lg" />
      +      </ng-template>
      +      <ng-template #contentTpl>
      +        <router-outlet />
      +      </ng-template>
      +    </layout-default>
      +
      +    <setting-drawer *ngIf="showSettingDrawer" />
      +    <theme-btn />
      +  `,
      +})
      +export class LayoutBasicComponent {
      +  options: LayoutDefaultOptions = {
      +    logoExpanded: `./assets/logo-full.svg`,
      +    logoCollapsed: `./assets/logo.svg`,
      +  };
      +  searchToggleStatus = false;
      +  showSettingDrawer = !environment.production;
      +  get user(): User {
      +    return this.settings.user;
      +  }
      +
      +  constructor(private settings: SettingsService) {}
      +}

      通过 LayoutDefaultService 服务可以在运行时动态管理布局。除此之外,在布局的操作都可以通过 SettingsService.notify 来订阅布局的变化(例如:侧边栏的展开与收缩等),注意所有布局相关的变化都会通过这个接口,所以需要做好 filter 操作。

      API

      layout-default

      成员说明类型默认值
      [options]选项LayoutDefaultOptions-
      [asideUser]侧边用户信息TemplateRef<void>-
      [asideBottom]侧边底部信息TemplateRef<void>-
      [nav]导航信息TemplateRef<void>-
      [content]内容信息TemplateRef<void>-
      [customError]自定义异常路由错误消息,当 null 时表示不显示错误消息string, nullCould not load ${evt.url} route
      [fetchingStrictly]是否完全受控顶部加载动画状态booleanfalse
      [fetching]顶部加载动画状态booleanfalse

      LayoutDefaultOptions

      成员说明类型默认值
      [logo]自定义 Logo 区域TemplateRef<void>-
      [logoExpanded]展开时 Logo 地址string./assets/logo-full.svg
      [logoCollapsed]收缩时 Logo 地址string./assets/logo.svg
      [logoFixWidth]指定固定 Logo 宽度number-
      [logoLink]指定 Logo 路由地址string/
      [hideAside]隐藏侧边栏,同时不显收缩图标按钮booleanfalse
      [hideHeader]隐藏顶栏booleanfalse
      [showHeaderCollapse]是否在顶栏显示菜单折叠按钮booleantrue
      [showSiderCollapse]是否在侧边栏底部显示菜单折叠按钮booleanfalse

      layout-default-nav

      成员说明类型默认值
      [disabledAcl]acl 校验失败时以 disabled 状态显示booleanfalse
      [autoCloseUnderPad]小于Pad宽度时路由切换后自动关闭侧边栏booleantrue
      [recursivePath]自动向上递归查找,菜单数据源包含 /ware,则 /ware/1 也视为 /warebooleantrue
      [openStrictly]展开完全受控,不再自动关闭已展开的项booleanfalse
      [maxLevelIcon]Icon最多显示到第几层number3
      (select)点击菜单时回调(包含 disabledEventEmitter<Menu>-

      组件的数据来自 MenuService(其结构为 Menu), MenuService 的操作会自动同步至该组件。

      layout-default-header-item

      成员说明类型默认值
      [hidden]隐藏行为pc, mobile, nonenones
      [direction]方向left, middle, rightright

      layout-default-header-item-trigger

      头部项的触发样式。

      layout-default-top-menu-item

      头部业务菜单项,使用方式请参考 layout.component.ts(预览)。

      布局说明

      按上-左-右布局方式,运用于业务页的开发。其规范细节:

      • 顶部区域高度 64px(参数:@header-hg

      • 侧边区域宽度 200px(参数:@aside-wd

        • 当屏幕低于 1140px 宽时隐藏侧边导航

        • 当屏幕低于 1140px 宽时打开侧边导航为 fixed 状态

        • 主要包括一个 layout-default-nav 组件

      参数是指可以通过 src/styles/theme.less 文件按需要调整。

      顶部区域

      位置:src/app/layout/base/widgets

      脚手架默认提供了一些常规顶部区域组件,这些组件都存放于 components 目录中。同时 @delon/abc 也提供若干顶部组件(例如:notice-icon 通知菜单组件)。你可以根据提供的组件自行组合或自行开发。

      脚手架支持响应式布局,对于顶部区域可能会是在小屏幕下需要隐藏一些组件,因此你可以在对应的DOM节点上加上 hidden-xs 表示当屏幕小于 768px 时自动隐藏。

      侧边区域

      位置:src/app/layout/default/sidebar

      只包括一个用户信息和主菜单。主菜单是一个 layout-default-nav

      内部区域

      内容区域是业务页区域,规范细节:

      • 内容距离页面标准、侧边、右边滚动条、底部,这四边距依一个标准Dashboard的Gutter宽度 24px

      样式参数

      名称默认值功能
      @alain-default-prefix.alain-default布局样式前缀
      @alain-default-easecubic-bezier(.25, 0, .15, 1)动画过滤函数
      @alain-default-header-hg64px顶部高度
      @alain-default-header-bg@primary-color顶部背景色
      @alain-default-header-padding@layout-gutter * 2顶部左右内边距
      @alain-default-header-search-enabledtrue是否开启顶部搜索框
      @alain-default-header-icon-fs18px顶部 Icon 大小
      @alain-default-header-logo-max-height36pxLogo 图最高高度
      @alain-default-aside-wd200px侧边栏宽度
      @alain-default-aside-bg#fff侧边栏背景色
      @alain-default-aside-scrollbar-width0侧边栏滚动条宽度
      @alain-default-aside-scrollbar-height0侧边栏滚动条高度
      @alain-default-aside-scrollbar-track-colortransparent侧边栏滚动条的轨道颜色
      @alain-default-aside-scrollbar-thumb-colortransparent侧边栏滚动条小方块颜色
      @alain-default-aside-nav-fs14px侧边栏菜单字号
      @alain-default-aside-nav-icon-width14px侧边栏菜单 ICON 宽度
      @alain-default-aside-nav-img-wh14px侧边栏菜单图像宽高
      @alain-default-aside-nav-padding-top-bottom@layout-gutter侧边栏菜单项上下内边距
      @alain-default-aside-nav-padding-left-right@layout-gutter * 2侧边栏菜单项左右内边距
      @alain-default-aside-nav-text-colorrgba(0, 0, 0, 0.65)侧边栏菜单文本颜色
      @alain-default-aside-nav-text-hover-color#108ee9侧边栏菜单文本悬停颜色
      @alain-default-aside-nav-group-text-colorrgba(0, 0, 0, 0.43)侧边栏菜单分组文本颜色
      @alain-default-aside-nav-selected-text-color#108ee9侧边栏菜单激活时文本颜色
      @alain-default-aside-nav-selected-bg#fcfcfc侧边栏菜单激活时背景颜色
      @alain-default-aside-collapsed-wd@layout-gutter * 8侧边栏收缩后宽度
      @alain-default-aside-collapsed-nav-fs24px侧边栏收缩后文本字号
      @alain-default-aside-collapsed-nav-img-wh24px侧边栏收缩后图像宽高
      @alain-default-content-heading-bg#fafbfc内容区域标题背景色
      @alain-default-content-heading-border#efe3e5内容区域标题底部边框色
      @alain-default-content-padding@layout-gutter * 3内容区域内边距
      @alain-default-content-bg#f5f7fa内容区域背景色
      @alain-default-widget-app-icons-enabledtrue是否 app-icon 小部件样式
      @alain-default-aside-user-enabledtrue是否侧边栏用户信息样式

      常见问题

      为什么会有两个快捷菜单

      快捷菜单生成规则统一在 0 索引下查找,并按以下顺序来获取:

      1. 【推荐】 children 存在 shortcutRoot: true 则最优先

      2. 否则查找带有【dashboard】字样链接,若存在则在此菜单的下方创建快捷入口

      3. 否则放在0节点位置

      因此,建议在菜单数据的 0 索引下保持一个有效的 shortcutRoot: true 数据。

      常见问题

      隐藏主菜单项

      表示永远不显示菜单,可以在菜单设置 hide: true

      隐藏自动生成导航隐藏面包屑

      表示不显示该节点,可以在菜单设置 hideInBreadcrumb: true

      关于层级

      虽然支持无限层级,但为了用户体验请保持最多不超过四层(含组别)。

      如何更新某个菜单项

      当调用 MenuService.setItem(key, newValue) 时会自动重新渲染主菜单,其中 key 必须是存在值,请参考 Menu 的定义。

      如何控制菜单展开

      利用 LayoutDefaultService.toggleCollapsed() 来运行时手动控制。

      \ No newline at end of file diff --git a/theme/locale/en/index.html b/theme/locale/en/index.html new file mode 100644 index 000000000..a20fbc2e7 --- /dev/null +++ b/theme/locale/en/index.html @@ -0,0 +1,13 @@ +国际化 - NG-ALAIN

      国际化

      为整个 @delon/* 类库内建文案提供统一的国际化支持。

      使用

      全局配置

      只需要在根模块重新对 DELON_LOCALE 注入目标语言即可全局生效。

      import { DELON_LOCALE, en_US } from '@delon/theme';
      +@NgModule({
      +  ...
      +  providers   : [ { provide: DELON_LOCALE, useValue: en_US } ]
      +})
      +export class AppModule { }

      运行时修改

      @delon 提供了一个服务 DelonLocaleService 用于动态修改国际化文案。

      import { en_US, DelonLocaleService } from '@delon/theme';
      +...
      +constructor(private delonLocaleService: DelonLocaleService) {
      +}
      +
      +switchLanguage() {
      +  this.delonLocaleService.setLocale(en_US);
      +}

      注意:en_US 是语言包名称,以下表格也遵循同样的规则。

      支持语言

      语言语言包名称
      英语(美式)en_US
      简体中文zh_CN
      繁体中文zh_TW
      土耳其语tr_TR
      波兰语pl_PL
      希腊语el_GR
      朝鲜语ko_KR
      克罗地亚hr_HR
      日语ja_JP
      斯洛文尼亚文sl_SI
      法文fr_FR
      西班牙语es_ES
      意大利语it_IT

      增加语言包

      如果你找不到你需要的语言包,欢迎你在 英文语言包(你也可以参考 #308 向我们贡献语言包)的基础上创建一个新的语言包,并给我们 Pull Req

      \ No newline at end of file diff --git a/theme/locale/zh/index.html b/theme/locale/zh/index.html new file mode 100644 index 000000000..6db49e479 --- /dev/null +++ b/theme/locale/zh/index.html @@ -0,0 +1,13 @@ +国际化 - NG-ALAIN

      国际化

      为整个 @delon/* 类库内建文案提供统一的国际化支持。

      使用

      全局配置

      只需要在根模块重新对 DELON_LOCALE 注入目标语言即可全局生效。

      import { DELON_LOCALE, en_US } from '@delon/theme';
      +@NgModule({
      +  ...
      +  providers   : [ { provide: DELON_LOCALE, useValue: en_US } ]
      +})
      +export class AppModule { }

      运行时修改

      @delon 提供了一个服务 DelonLocaleService 用于动态修改国际化文案。

      import { en_US, DelonLocaleService } from '@delon/theme';
      +...
      +constructor(private delonLocaleService: DelonLocaleService) {
      +}
      +
      +switchLanguage() {
      +  this.delonLocaleService.setLocale(en_US);
      +}

      注意:en_US 是语言包名称,以下表格也遵循同样的规则。

      支持语言

      语言语言包名称
      英语(美式)en_US
      简体中文zh_CN
      繁体中文zh_TW
      土耳其语tr_TR
      波兰语pl_PL
      希腊语el_GR
      朝鲜语ko_KR
      克罗地亚hr_HR
      日语ja_JP
      斯洛文尼亚文sl_SI
      法文fr_FR
      西班牙语es_ES
      意大利语it_IT

      增加语言包

      如果你找不到你需要的语言包,欢迎你在 英文语言包(你也可以参考 #308 向我们贡献语言包)的基础上创建一个新的语言包,并给我们 Pull Req

      \ No newline at end of file diff --git a/theme/menu/en/index.html b/theme/menu/en/index.html new file mode 100644 index 000000000..a39d4df6b --- /dev/null +++ b/theme/menu/en/index.html @@ -0,0 +1 @@ +MenuService - NG-ALAIN

      菜单服务

      菜单服务的数据格式是一个 Menu 数组,其中 text 属性表示菜单文本为必填项,而且本身并不受外部组件的影响(例如sidebar-nav组件),这是因为菜单是贯穿整个项目必不可少的组成部分,而将其独立成一个服务可以更有效被使用,例如:动态生成导航、标题等。

      建议: 在 Angular 启动服务(startup.service.ts)从远程获取到菜单数据后,调用 add() 方法。

      API

      方法描述
      add设置菜单数据
      clear清空菜单数据
      resume重置菜单,可能I18N、用户权限变动时需要调用刷新
      find利用 urlkey 查找菜单
      getItem根据 key 获取菜单
      getPathByUrl根据url获取菜单列表
      setItem设置菜单值
      open展开某菜单
      toggleOpen切换菜单的展开或关闭
      openAll展开或关闭所有菜单

      recursive

      表示自动向上递归查找,例如菜单数据源包含 /ware,则 /ware/1 也视为 /ware 项。

      成员说明类型默认值
      text文本(支持HTML),必填项string-
      i18ni18n主键(支持HTML)string-
      group是否显示分组名,指示例中的【主导航】字样booleantrue
      link路由,linkexternalLink 二选其一string-
      externalLink外部链接,linkexternalLink 二选其一string-
      target链接 target_blank,_self,_parent,_top-
      icon图标,指示例中的【仪表盘】前图标,只对一级菜单有效string | MenuIcon-
      badge徽标数,展示的数字,指示例中的【小部件】后的红色块。(注:group:true 时无效)number-
      badgeDot徽标数,显示小红点boolean-
      badgeStatus徽标 Badge 颜色success,processing,default,error,warningerror
      open是否打开菜单booleanfalse
      disabled是否禁用菜单booleanfalse
      hide是否隐藏菜单booleanfalse
      hideInBreadcrumb隐藏面包屑,指 page-header 组件的自动生成面包屑时有效boolean-
      aclACL配置,若导入 @delon/acl 时自动有效,等同于 ACLService.can(roleOrAbility: ACLCanType) 参数值any-
      shortcut是否快捷菜单项boolean-
      shortcutRoot快捷菜单根节点boolean-
      reuse是否允许复用,需配合 reuse-tab 组件boolean-
      key菜单项唯一标识符,可用于 getItemsetItem 来更新某个菜单string-
      children子菜单Menu[]-
      成员说明类型默认值
      [type]类型;img, svg 类型需要 14px 宽与高尺寸class,icon,iconfont,img,svgicon
      [value]值,包含:类名、图标 nzType、图像string-
      [theme]图标主题风格outline,twotone,filloutline
      [spin]是否有旋转动画booleanfalse
      [twoToneColor]仅适用双色图标,设置双色图标的主要颜色,仅对当前 icon 生效string-
      [iconfont]指定来自 IconFont 的图标类型string-
      [rotate]图标旋转角度number-

      使用 iconfont 类型必须先加载 NzIconService.fetchFromIconfont,建议在根模块中执行。

      \ No newline at end of file diff --git a/theme/menu/zh/index.html b/theme/menu/zh/index.html new file mode 100644 index 000000000..13b5895f3 --- /dev/null +++ b/theme/menu/zh/index.html @@ -0,0 +1 @@ +MenuService - NG-ALAIN

      菜单服务

      菜单服务的数据格式是一个 Menu 数组,其中 text 属性表示菜单文本为必填项,而且本身并不受外部组件的影响(例如sidebar-nav组件),这是因为菜单是贯穿整个项目必不可少的组成部分,而将其独立成一个服务可以更有效被使用,例如:动态生成导航、标题等。

      建议: 在 Angular 启动服务(startup.service.ts)从远程获取到菜单数据后,调用 add() 方法。

      API

      方法描述
      add设置菜单数据
      clear清空菜单数据
      resume重置菜单,可能I18N、用户权限变动时需要调用刷新
      find利用 urlkey 查找菜单
      getItem根据 key 获取菜单
      getPathByUrl根据url获取菜单列表
      setItem设置菜单值
      open展开某菜单
      toggleOpen切换菜单的展开或关闭
      openAll展开或关闭所有菜单

      recursive

      表示自动向上递归查找,例如菜单数据源包含 /ware,则 /ware/1 也视为 /ware 项。

      成员说明类型默认值
      text文本(支持HTML),必填项string-
      i18ni18n主键(支持HTML)string-
      group是否显示分组名,指示例中的【主导航】字样booleantrue
      link路由,linkexternalLink 二选其一string-
      externalLink外部链接,linkexternalLink 二选其一string-
      target链接 target_blank,_self,_parent,_top-
      icon图标,指示例中的【仪表盘】前图标,只对一级菜单有效string | MenuIcon-
      badge徽标数,展示的数字,指示例中的【小部件】后的红色块。(注:group:true 时无效)number-
      badgeDot徽标数,显示小红点boolean-
      badgeStatus徽标 Badge 颜色success,processing,default,error,warningerror
      open是否打开菜单booleanfalse
      disabled是否禁用菜单booleanfalse
      hide是否隐藏菜单booleanfalse
      hideInBreadcrumb隐藏面包屑,指 page-header 组件的自动生成面包屑时有效boolean-
      aclACL配置,若导入 @delon/acl 时自动有效,等同于 ACLService.can(roleOrAbility: ACLCanType) 参数值any-
      shortcut是否快捷菜单项boolean-
      shortcutRoot快捷菜单根节点boolean-
      reuse是否允许复用,需配合 reuse-tab 组件boolean-
      key菜单项唯一标识符,可用于 getItemsetItem 来更新某个菜单string-
      children子菜单Menu[]-
      成员说明类型默认值
      [type]类型;img, svg 类型需要 14px 宽与高尺寸class,icon,iconfont,img,svgicon
      [value]值,包含:类名、图标 nzType、图像string-
      [theme]图标主题风格outline,twotone,filloutline
      [spin]是否有旋转动画booleanfalse
      [twoToneColor]仅适用双色图标,设置双色图标的主要颜色,仅对当前 icon 生效string-
      [iconfont]指定来自 IconFont 的图标类型string-
      [rotate]图标旋转角度number-

      使用 iconfont 类型必须先加载 NzIconService.fetchFromIconfont,建议在根模块中执行。

      \ No newline at end of file diff --git a/theme/modal/en/index.html b/theme/modal/en/index.html new file mode 100644 index 000000000..48b583a84 --- /dev/null +++ b/theme/modal/en/index.html @@ -0,0 +1,69 @@ +ModalHelper - NG-ALAIN

      对话框辅助类

      基于 NzModalService 封装,它解决一些已知问题:

      • 更友好的处理回调

      用法

      this.modalHelper.create(FormEditComponent, { i }).subscribe(res => this.load());
      +
      +// 成功范例,其中 `nzModalRef` 指目标组件在构造函数 `NzModalRef` 变量名
      +// 1. 视为成功
      +this.nzModalRef.close(true);
      +this.nzModalRef.close({ other: 1 });
      +// 2. 视为失败
      +this.nzModalRef.close();
      +
      +// 关闭:
      +this.nzModalRef.destroy();

      包括两个方法体 create & createStatic 分别打开普通&静态对话框。在 NzModalService 基础上新增若干参数。

      自定义组件HTML模板

      <div class="modal-header">
      +  <div class="modal-title">Title</div>
      +</div>
      +
      +Your body content
      +
      +<div class="modal-footer">
      +  <button nz-button [nzType]="'default'" (click)="cancel()">
      +    Cancel
      +  </button>
      +  <button nz-button [nzType]="'primary'" (click)="ok()">
      +    OK
      +  </button>
      +</div>

      API

      名称类型默认值描述
      size指定对话框大小sm,md,lg,xl,number,stringlg
      exact是否精准(默认:true),若返回值非空值(nullundefined)视为成功,否则视为错误booleantrue
      includeTabs是否包裹标签页booleanfalse
      drag支持拖动boolean, ModalHelperDragOptions-
      useNzData是否强制使用 nzData 传递参数,若为 false 表示参数会直接映射到组件实例中,其他值只能通过 NZ_MODAL_DATA 的方式来获取参数booleanfalse
      modalOptions对话框 ModalOptions 参数ModalOptions-

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { ModalHelper } from '@delon/theme';
      +import { DemoModalComponent } from '@shared';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'theme-modal-simple',
      +  template: `
      +    <button nz-button (click)="open()">Open</button>
      +    <button nz-button (click)="static()">Static</button>
      +  `,
      +})
      +export class ThemeModalSimpleComponent {
      +  constructor(private modalHelper: ModalHelper, private msg: NzMessageService) {}
      +
      +  open(): void {
      +    this.modalHelper.create(DemoModalComponent, { record: { a: 1, b: '2', c: new Date() } }).subscribe(res => {
      +      this.msg.info(res);
      +    });
      +  }
      +
      +  static(): void {
      +    this.modalHelper.createStatic(DemoModalComponent, { record: { a: 1, b: '2', c: new Date() } }).subscribe(res => {
      +      this.msg.info(res);
      +    });
      +  }
      +}
      拖动

      支持拖动对话框。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { ModalHelper } from '@delon/theme';
      +import { DemoModalComponent } from '@shared';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'theme-modal-drag',
      +  template: `
      +    <button nz-button (click)="open()">Open</button>
      +  `,
      +})
      +export class ThemeModalDragComponent {
      +  constructor(private modalHelper: ModalHelper, private msg: NzMessageService) {}
      +
      +  open(): void {
      +    this.modalHelper.create(DemoModalComponent, { record: { a: 1, b: '2', c: new Date() } }, { drag: true }).subscribe(res => {
      +      this.msg.info(res);
      +    });
      +  }
      +}
      \ No newline at end of file diff --git a/theme/modal/zh/index.html b/theme/modal/zh/index.html new file mode 100644 index 000000000..5bdda683a --- /dev/null +++ b/theme/modal/zh/index.html @@ -0,0 +1,69 @@ +ModalHelper - NG-ALAIN

      对话框辅助类

      基于 NzModalService 封装,它解决一些已知问题:

      • 更友好的处理回调

      用法

      this.modalHelper.create(FormEditComponent, { i }).subscribe(res => this.load());
      +
      +// 成功范例,其中 `nzModalRef` 指目标组件在构造函数 `NzModalRef` 变量名
      +// 1. 视为成功
      +this.nzModalRef.close(true);
      +this.nzModalRef.close({ other: 1 });
      +// 2. 视为失败
      +this.nzModalRef.close();
      +
      +// 关闭:
      +this.nzModalRef.destroy();

      包括两个方法体 create & createStatic 分别打开普通&静态对话框。在 NzModalService 基础上新增若干参数。

      自定义组件HTML模板

      <div class="modal-header">
      +  <div class="modal-title">Title</div>
      +</div>
      +
      +Your body content
      +
      +<div class="modal-footer">
      +  <button nz-button [nzType]="'default'" (click)="cancel()">
      +    Cancel
      +  </button>
      +  <button nz-button [nzType]="'primary'" (click)="ok()">
      +    OK
      +  </button>
      +</div>

      API

      名称类型默认值描述
      size指定对话框大小sm,md,lg,xl,number,stringlg
      exact是否精准(默认:true),若返回值非空值(nullundefined)视为成功,否则视为错误booleantrue
      includeTabs是否包裹标签页booleanfalse
      drag支持拖动boolean, ModalHelperDragOptions-
      useNzData是否强制使用 nzData 传递参数,若为 false 表示参数会直接映射到组件实例中,其他值只能通过 NZ_MODAL_DATA 的方式来获取参数booleanfalse
      modalOptions对话框 ModalOptions 参数ModalOptions-

      代码演示

      基础样例

      最简单的用法。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { ModalHelper } from '@delon/theme';
      +import { DemoModalComponent } from '@shared';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'theme-modal-simple',
      +  template: `
      +    <button nz-button (click)="open()">Open</button>
      +    <button nz-button (click)="static()">Static</button>
      +  `,
      +})
      +export class ThemeModalSimpleComponent {
      +  constructor(private modalHelper: ModalHelper, private msg: NzMessageService) {}
      +
      +  open(): void {
      +    this.modalHelper.create(DemoModalComponent, { record: { a: 1, b: '2', c: new Date() } }).subscribe(res => {
      +      this.msg.info(res);
      +    });
      +  }
      +
      +  static(): void {
      +    this.modalHelper.createStatic(DemoModalComponent, { record: { a: 1, b: '2', c: new Date() } }).subscribe(res => {
      +      this.msg.info(res);
      +    });
      +  }
      +}
      拖动

      支持拖动对话框。

      expand codeexpand code
      import { Component } from '@angular/core';
      +import { ModalHelper } from '@delon/theme';
      +import { DemoModalComponent } from '@shared';
      +import { NzMessageService } from 'ng-zorro-antd/message';
      +
      +@Component({
      +  selector: 'theme-modal-drag',
      +  template: `
      +    <button nz-button (click)="open()">Open</button>
      +  `,
      +})
      +export class ThemeModalDragComponent {
      +  constructor(private modalHelper: ModalHelper, private msg: NzMessageService) {}
      +
      +  open(): void {
      +    this.modalHelper.create(DemoModalComponent, { record: { a: 1, b: '2', c: new Date() } }, { drag: true }).subscribe(res => {
      +      this.msg.info(res);
      +    });
      +  }
      +}
      \ No newline at end of file diff --git a/theme/performance/en/index.html b/theme/performance/en/index.html new file mode 100644 index 000000000..361176c23 --- /dev/null +++ b/theme/performance/en/index.html @@ -0,0 +1,2 @@ +包体优化 - NG-ALAIN

      包体优化

      ng-alain 除了提供主题方案以外,还包含一套类似 Bootstrap 的工具集,并且严格遵守 Antd 的设计价值观,对于熟悉 Bootstrap 的人来说会非常友好,因为所有命名方式都尽可能与 Bootstrap 相同。同时,我们为 VSCode 写的 ng-alain插件 会自动为你提供这套CSS工具集的智能提醒。

      如何优化

      我们包含着上百种 Less 变量(包含ng-zorro-antd、ng-alain),这些变更有部分是包含着-enabled 后缀,它表示这些类库是可选的。

      你可以在 ng-alain 项目的 theme.less 中设置为 false,可以有效减少 css 文件大小。

      // 不需要 masonry 样式
      +@masonry-enabled: false

      参数

      名称默认值功能
      @scrollbar-enabledtrue启用美化滚动条
      @preserve-white-spaces-enabledtrue解决开启 preserveWhitespaces 时按钮间可能会出现无缝
      @form-state-visual-feedback-enabledfalse开启表单元素的视觉反馈
      @hafl-enabledtrue半图
      @abs-enabledtrue中心元素
      @masonry-enabledtrueCSS瀑布流列
      @setting-drawer-enabledtrue主题设置
      @search-form-enabledtrue简化搜索框,DEMO
      @search__form-enabledtruePro搜索框,DEMO
      \ No newline at end of file diff --git a/theme/performance/zh/index.html b/theme/performance/zh/index.html new file mode 100644 index 000000000..d5c480993 --- /dev/null +++ b/theme/performance/zh/index.html @@ -0,0 +1,2 @@ +包体优化 - NG-ALAIN

      包体优化

      ng-alain 除了提供主题方案以外,还包含一套类似 Bootstrap 的工具集,并且严格遵守 Antd 的设计价值观,对于熟悉 Bootstrap 的人来说会非常友好,因为所有命名方式都尽可能与 Bootstrap 相同。同时,我们为 VSCode 写的 ng-alain插件 会自动为你提供这套CSS工具集的智能提醒。

      如何优化

      我们包含着上百种 Less 变量(包含ng-zorro-antd、ng-alain),这些变更有部分是包含着-enabled 后缀,它表示这些类库是可选的。

      你可以在 ng-alain 项目的 theme.less 中设置为 false,可以有效减少 css 文件大小。

      // 不需要 masonry 样式
      +@masonry-enabled: false

      参数

      名称默认值功能
      @scrollbar-enabledtrue启用美化滚动条
      @preserve-white-spaces-enabledtrue解决开启 preserveWhitespaces 时按钮间可能会出现无缝
      @form-state-visual-feedback-enabledfalse开启表单元素的视觉反馈
      @hafl-enabledtrue半图
      @abs-enabledtrue中心元素
      @masonry-enabledtrueCSS瀑布流列
      @setting-drawer-enabledtrue主题设置
      @search-form-enabledtrue简化搜索框,DEMO
      @search__form-enabledtruePro搜索框,DEMO
      \ No newline at end of file diff --git a/theme/responsive/en/index.html b/theme/responsive/en/index.html new file mode 100644 index 000000000..3f95ecb7c --- /dev/null +++ b/theme/responsive/en/index.html @@ -0,0 +1,27 @@ +ResponsiveService - NG-ALAIN

      响应式服务

      更友好的使用响应式规则,将原 xssm 等属性简化成 col 栏,默认响应式规则:

      col<576px≥576px≥768px≥992px≥1200px≥1600px
      1111111
      2122222
      3123333
      4123444
      5123466
      61234612

      为了更好的开发响应式查看、编辑页,这种规则将默认将运用在 sgsvse 等组件中。你也可以利用 ResponsiveConfig 来改写默认规则。

      ResponsiveConfig

      通用配置项,例如统一对 ResponsiveService 设置响应式规则。

      import { AlainThemeConfig } from '@delon/theme';
      +export function fnAlainThemeConfig(): AlainThemeConfig {
      +  return Object.assign(new AlainThemeConfig(), {
      +    responsive: {
      +      rules: {
      +        1: { xs: 24 },
      +        2: { xs: 24, sm: 12 },
      +        3: { xs: 24, sm: 12, md: 8 },
      +        4: { xs: 24, sm: 12, md: 8, lg: 6 },
      +        5: { xs: 24, sm: 12, md: 8, lg: 6, xl: 4 },
      +        6: { xs: 24, sm: 12, md: 8, lg: 6, xl: 4, xxl: 2 },
      +      }
      +    },
      +  });
      +}
      +
      +@NgModule({})
      +export class DelonModule {
      +  static forRoot(): ModuleWithProviders {
      +    return {
      +      ngModule: DelonModule,
      +      providers: [
      +        { provide: AlainThemeConfig, useFactory: fnAlainThemeConfig },
      +      ],
      +    };
      +  }
      +}
      \ No newline at end of file diff --git a/theme/responsive/zh/index.html b/theme/responsive/zh/index.html new file mode 100644 index 000000000..90afa7386 --- /dev/null +++ b/theme/responsive/zh/index.html @@ -0,0 +1,27 @@ +ResponsiveService - NG-ALAIN

      响应式服务

      更友好的使用响应式规则,将原 xssm 等属性简化成 col 栏,默认响应式规则:

      col<576px≥576px≥768px≥992px≥1200px≥1600px
      1111111
      2122222
      3123333
      4123444
      5123466
      61234612

      为了更好的开发响应式查看、编辑页,这种规则将默认将运用在 sgsvse 等组件中。你也可以利用 ResponsiveConfig 来改写默认规则。

      ResponsiveConfig

      通用配置项,例如统一对 ResponsiveService 设置响应式规则。

      import { AlainThemeConfig } from '@delon/theme';
      +export function fnAlainThemeConfig(): AlainThemeConfig {
      +  return Object.assign(new AlainThemeConfig(), {
      +    responsive: {
      +      rules: {
      +        1: { xs: 24 },
      +        2: { xs: 24, sm: 12 },
      +        3: { xs: 24, sm: 12, md: 8 },
      +        4: { xs: 24, sm: 12, md: 8, lg: 6 },
      +        5: { xs: 24, sm: 12, md: 8, lg: 6, xl: 4 },
      +        6: { xs: 24, sm: 12, md: 8, lg: 6, xl: 4, xxl: 2 },
      +      }
      +    },
      +  });
      +}
      +
      +@NgModule({})
      +export class DelonModule {
      +  static forRoot(): ModuleWithProviders {
      +    return {
      +      ngModule: DelonModule,
      +      providers: [
      +        { provide: AlainThemeConfig, useFactory: fnAlainThemeConfig },
      +      ],
      +    };
      +  }
      +}
      \ No newline at end of file diff --git a/theme/rtl/en/index.html b/theme/rtl/en/index.html new file mode 100644 index 000000000..57417641f --- /dev/null +++ b/theme/rtl/en/index.html @@ -0,0 +1 @@ +RTLService - NG-ALAIN

      RTL服务

      RTL服务控制。

      API

      接口名参数描述
      dirDirection获取或设置当前文字方向
      nextDirDirection获取下一次文字方向
      changeObservable<Direction>订阅变更通知
      toggle()-切换文字方向
      \ No newline at end of file diff --git a/theme/rtl/zh/index.html b/theme/rtl/zh/index.html new file mode 100644 index 000000000..a760f32ee --- /dev/null +++ b/theme/rtl/zh/index.html @@ -0,0 +1 @@ +RTLService - NG-ALAIN

      RTL服务

      RTL服务控制。

      API

      接口名参数描述
      dirDirection获取或设置当前文字方向
      nextDirDirection获取下一次文字方向
      changeObservable<Direction>订阅变更通知
      toggle()-切换文字方向
      \ No newline at end of file diff --git a/theme/safe/en/index.html b/theme/safe/en/index.html new file mode 100644 index 000000000..b4cd0b689 --- /dev/null +++ b/theme/safe/en/index.html @@ -0,0 +1 @@ +safe - NG-ALAIN

      安全HTML等

      html

      简化 bypassSecurityTrustHtml 的使用。

      <div [innerHTML]="content | html"></div>

      url

      简化 bypassSecurityTrustUrl 的使用。

      <a [href]="file_url | url" target="_blank"></a>
      \ No newline at end of file diff --git a/theme/safe/zh/index.html b/theme/safe/zh/index.html new file mode 100644 index 000000000..693cf796d --- /dev/null +++ b/theme/safe/zh/index.html @@ -0,0 +1 @@ +safe - NG-ALAIN

      安全HTML等

      html

      简化 bypassSecurityTrustHtml 的使用。

      <div [innerHTML]="content | html"></div>

      url

      简化 bypassSecurityTrustUrl 的使用。

      <a [href]="file_url | url" target="_blank"></a>
      \ No newline at end of file diff --git a/theme/settings/en/index.html b/theme/settings/en/index.html new file mode 100644 index 000000000..329e8a0f1 --- /dev/null +++ b/theme/settings/en/index.html @@ -0,0 +1,11 @@ +SettingsService - NG-ALAIN

      项目配置项服务

      项目配置项,包含应用App、布局Layout、用户信息User三种数据类型,并且存储持久化在 localStorage(参考#1737来切换成 sessionStorage)。

      建议: 在 Angular 启动服务(startup.service.ts)从远程获取到应用、用户数据后,调用 setApp()setUser() 方法。

      API

      SettingsService

      名称类型返回值描述
      layoutpropertyLayout布局信息
      apppropertyApp项目信息
      userpropertyUser用户信息
      notifypropertyObservable<SettingsNotify>当布局、项目、用户信息变更时通知
      setLayout(name: string, value: any)methodboolean设置布局属性值
      setApp(value: App)methodboolean设置项目信息
      setUser(value: User)methodboolean设置用户信息

      App

      参数说明类型默认值
      [name]应用名称string-
      [description]应用描述string-

      User

      参数说明类型默认值
      [name]当前用户名称string-
      [avatar]当前用户头像string-
      [email]当前用户邮箱string-

      Layout

      参数说明类型默认值
      [collapsed]是否折叠菜单boolean-
      [lang]当前语言string-
      [colorWeak]色弱模式booleanfalse

      常见问题

      如何更改本地存储键名?

      允许通过 global-config.module.ts 全局配置文件,增加 ALAIN_SETTING_KEYS 的配置,例如:

       const alainProvides = [
      +  { provide: ALAIN_CONFIG, useValue: alainConfig },
      ++ {
      ++   provide: ALAIN_SETTING_KEYS,
      ++   useValue: {
      ++     layout: 'new-layout',
      ++     user: 'new-user',
      ++     app: 'new-app',
      ++   },
      ++ },
      +];
      \ No newline at end of file diff --git a/theme/settings/zh/index.html b/theme/settings/zh/index.html new file mode 100644 index 000000000..3cfef7e6e --- /dev/null +++ b/theme/settings/zh/index.html @@ -0,0 +1,11 @@ +SettingsService - NG-ALAIN

      项目配置项服务

      项目配置项,包含应用App、布局Layout、用户信息User三种数据类型,并且存储持久化在 localStorage(参考#1737来切换成 sessionStorage)。

      建议: 在 Angular 启动服务(startup.service.ts)从远程获取到应用、用户数据后,调用 setApp()setUser() 方法。

      API

      SettingsService

      名称类型返回值描述
      layoutpropertyLayout布局信息
      apppropertyApp项目信息
      userpropertyUser用户信息
      notifypropertyObservable<SettingsNotify>当布局、项目、用户信息变更时通知
      setLayout(name: string, value: any)methodboolean设置布局属性值
      setApp(value: App)methodboolean设置项目信息
      setUser(value: User)methodboolean设置用户信息

      App

      参数说明类型默认值
      [name]应用名称string-
      [description]应用描述string-

      User

      参数说明类型默认值
      [name]当前用户名称string-
      [avatar]当前用户头像string-
      [email]当前用户邮箱string-

      Layout

      参数说明类型默认值
      [collapsed]是否折叠菜单boolean-
      [lang]当前语言string-
      [colorWeak]色弱模式booleanfalse

      常见问题

      如何更改本地存储键名?

      允许通过 global-config.module.ts 全局配置文件,增加 ALAIN_SETTING_KEYS 的配置,例如:

       const alainProvides = [
      +  { provide: ALAIN_CONFIG, useValue: alainConfig },
      ++ {
      ++   provide: ALAIN_SETTING_KEYS,
      ++   useValue: {
      ++     layout: 'new-layout',
      ++     user: 'new-user',
      ++     app: 'new-app',
      ++   },
      ++ },
      +];
      \ No newline at end of file diff --git a/theme/theme-btn/en/index.html b/theme/theme-btn/en/index.html new file mode 100644 index 000000000..ec3603943 --- /dev/null +++ b/theme/theme-btn/en/index.html @@ -0,0 +1 @@ +theme-btn - NG-ALAIN

      组件-切换样式
      IMPORT MODULE

      用于在运行过程中切换定制样式文件,从而起到换在线换肤功能。

      API

      layout-default

      成员说明类型默认值
      [types]类型列表ThemeBtnType[][ { key: 'default', text: 'Default Theme' }, { key: 'dark', text: 'Dark Theme' }, { key: 'compact', text: 'Compact Theme' }, ]
      [devTips]开发提示StringWhen the dark.css file can't be found, you need to run it once: npm run theme
      [deployUrl]文件将部署到的 URL,一般到使用 ng b --deploy-url 时需要String-
      (themeChange)主题变更通知EventEmitter<string>-
      \ No newline at end of file diff --git a/theme/theme-btn/zh/index.html b/theme/theme-btn/zh/index.html new file mode 100644 index 000000000..dfac6c9bd --- /dev/null +++ b/theme/theme-btn/zh/index.html @@ -0,0 +1 @@ +theme-btn - NG-ALAIN

      组件-切换样式
      IMPORT MODULE

      用于在运行过程中切换定制样式文件,从而起到换在线换肤功能。

      API

      layout-default

      成员说明类型默认值
      [types]类型列表ThemeBtnType[][ { key: 'default', text: 'Default Theme' }, { key: 'dark', text: 'Dark Theme' }, { key: 'compact', text: 'Compact Theme' }, ]
      [devTips]开发提示StringWhen the dark.css file can't be found, you need to run it once: npm run theme
      [deployUrl]文件将部署到的 URL,一般到使用 ng b --deploy-url 时需要String-
      (themeChange)主题变更通知EventEmitter<string>-
      \ No newline at end of file diff --git a/theme/title/en/index.html b/theme/title/en/index.html new file mode 100644 index 000000000..b49b41f09 --- /dev/null +++ b/theme/title/en/index.html @@ -0,0 +1 @@ +TitleService - NG-ALAIN

      页面标题服务

      用于设置页面标题,一般监听路由变化并重新刷新标题,例如:app.component.ts;同时标题的默认数据来源于 MenuService

      建议: 在 Angular 启动服务(startup.service.ts)过程中设置 prefixsuffix 值来调整统一的标题前后缀。

      获取顺序

      根据以下顺序获取 title 值:

      1. 路由配置 { data: { title: 'page name', titleI18n: 'page-name' } as RouteTitle }

      2. 根据当前 URL 解析菜单数据

      3. 页面 alain-default__content-titlepage-header__title 中获取 h1 内容

      4. 默认标题名

      API

      名称类型描述
      defaultproperty设置默认标题名
      selectorproperty设置默认CSS选择器字符串
      separatorproperty设置分隔符
      prefixproperty设置前缀
      suffixproperty设置后缀
      reverseproperty设置是否反转
      setTitle(title?: string | string[])method设置标题,受限于 #1261 会有 25ms 的延迟
      setTitleByI18n(key: string, params?: Object)method设置国际化标题
      \ No newline at end of file diff --git a/theme/title/zh/index.html b/theme/title/zh/index.html new file mode 100644 index 000000000..4397a4097 --- /dev/null +++ b/theme/title/zh/index.html @@ -0,0 +1 @@ +TitleService - NG-ALAIN

      页面标题服务

      用于设置页面标题,一般监听路由变化并重新刷新标题,例如:app.component.ts;同时标题的默认数据来源于 MenuService

      建议: 在 Angular 启动服务(startup.service.ts)过程中设置 prefixsuffix 值来调整统一的标题前后缀。

      获取顺序

      根据以下顺序获取 title 值:

      1. 路由配置 { data: { title: 'page name', titleI18n: 'page-name' } as RouteTitle }

      2. 根据当前 URL 解析菜单数据

      3. 页面 alain-default__content-titlepage-header__title 中获取 h1 内容

      4. 默认标题名

      API

      名称类型描述
      defaultproperty设置默认标题名
      selectorproperty设置默认CSS选择器字符串
      separatorproperty设置分隔符
      prefixproperty设置前缀
      suffixproperty设置后缀
      reverseproperty设置是否反转
      setTitle(title?: string | string[])method设置标题,受限于 #1261 会有 25ms 的延迟
      setTitleByI18n(key: string, params?: Object)method设置国际化标题
      \ No newline at end of file diff --git a/theme/tools/en/index.html b/theme/tools/en/index.html new file mode 100644 index 000000000..138952f3a --- /dev/null +++ b/theme/tools/en/index.html @@ -0,0 +1,42 @@ +样式工具类 - NG-ALAIN

      样式工具类

      ng-alain 在 Ant Design 的基础上生产一套尺寸、间距、颜色等工具类。

      在 VSCode 安装 ng-alain snippets 插件,可以对所有工具集样式名称的智能提醒。

      间距

      ng-alain 认为这些工具类只会运用在内容区域,且秉承 Ant Design 的设计价值观,间距宽度是以 8px 为一个基准单位,并衍生出三个尺寸,分别为:

      名称公式尺寸说明
      xs$gutter / 24px超小号
      sm$gutter8px小号
      md$gutter * 216px中号
      lg$gutter * 324px大号
      xl$gutter * 432px特大号
      xxl$gutter * 648px超大号

      依这些规则,衍生出 marginpadding,其命名规则如下:

      • 类型:paddingmargin

      • 方向(可选):toprightbottomleftx(相当于 leftright)、y(相当于 topbottom

      消除

      [<类型>p|m][<方向>t|r|b|l|x|y]?0

      命名格式

      [<类型>p|m][<方向>t|r|b|l|x|y]?-[<尺寸>sm|md|lg]

      示例:

      .p-sm { padding: 8px !important; }
      +.pt-sm { padding-top: 8px !important; }
      +.m-sm { margin: 16px !important; }
      +.mt-md { margin-top: 16px !important; }
      +
      +.p0 { padding: 0 !important; }

      色彩

      Ant Design 并没有按钮色这一说,而是以视觉效果为基准。默认是蓝色系(拂晓蓝),例如:nz-button 的按钮类型 primary

      而 ng-alain 依然不会破坏这种规则,但依 色彩 章节,产生了一种运用于文本、背景的色系类。

      名称基本色说明
      red
      #f5222d
      薄暮:斗志、奔放
      volcano
      #fa541c
      火山:醒目、澎湃
      orange
      #fa8c16
      日暮:温暖、欢快
      gold
      #faad14
      金盏花:活力、积极
      yellow
      #fadb14
      日出:出生、阳光
      lime
      #a0d911
      青柠:自然、生机
      green
      #f5222d
      极光绿:健康、创新
      cyan
      #13c2c2
      明青:希望、坚强
      blue
      #1890ff
      拂晓蓝:包容、科技、普惠
      geekblue
      #2f54eb
      极客蓝:探索、钻研
      purple
      #722ed1
      酱紫:优雅、浪漫
      magenta
      #eb2f96
      法式洋红:平稳、中性

      Ant Design 的基础色板共计 120 个颜色,包含 12 个主色以及衍生色。这些颜色基本可以满足中后台设计中对于颜色的需求。

      分类

      名称色号
      light5号
      normal6号
      dark7号

      命名格式

      [<类型>text|bg]-[<色彩名>red|volcano|orange|gold|yellow|lime|green|cyan|blue|geekblue|purple|magenta|grey](-[light|dark])?(-h)?

      normal 本身即是基本色,所以可以被忽略 grey 可能会更常用,所以额外增加 grey-lightergrey-darker 别名表示深度

      示例:

      // Text color
      +.text-red-light { color: #fabeb9 !important; }
      +.text-red { color: #f04134 !important; }
      +.text-red-dark { color: #a31837 !important; }
      +
      +// background-color color
      +.bg-red-light { background-color: #fabeb9 !important; }
      +.bg-red { background-color: #f04134 !important; }
      +.bg-red-dark { background-color: #a31837 !important; }
      +
      +// hover color
      +.bg-red-light-h { &:hover { background-color: #fabeb9 !important; } }
      +.bg-red-h { &:hover { background-color: #f04134 !important; } }
      +.bg-red-dark-h { &:hover { background-color: #a31837 !important; } }

      别名

      别名色系
      primary@blue-6
      #1890ff
      success@green-6
      #52c41a
      error@red-5
      #ff4d4f
      warning@gold-6
      #faad14
      info@blue-6
      #1890ff
      processing@blue-6
      #1890ff
      highlight@red-5
      #ff4d4f
      normal#d9d9d9
      #d9d9d9

      示例:

      // Text color
      +.text-error-light { color: #fabeb9 !important; }
      +.text-error { color: #f04134 !important; }
      +.text-error-dark { color: #a31837 !important; }
      +
      +// background-color color
      +.bg-error-light { background-color: #fabeb9 !important; }
      +.bg-error { background-color: #f04134 !important; }
      +.bg-error-dark { background-color: #a31837 !important; }
      +
      +// hover color
      +.bg-error-light-h { &:hover { background-color: #fabeb9 !important; } }
      +.bg-error-h { &:hover { background-color: #f04134 !important; } }
      +.bg-error-dark-h { &:hover { background-color: #a31837 !important; } }

      全量颜色

      你可以使用 @enable-all-colors: true 来开启所有 120 个颜色的规则。

      .text-red-1 { color: #fff1f0 !important; }
      +.text-red-6 { color: #f04134 !important; }
      +.text-red-10 { color: #5c0011 !important; }
      +
      +.bg-red-6 { color: #f04134 !important; }
      +.bg-red-6-h { color: #f04134 !important; }

      清除浮动

      清除浮动 .clearfix

      显示

      别名CSS
      d-nonedisplay: none
      d-blockdisplay: block
      d-inline-blockdisplay: inline-block
      d-flexdisplay: flex
      d-inline-flexdisplay: inline-flex
      justify-content-startjustify-content: flex-start
      justify-content-endjustify-content: flex-end
      justify-content-centerjustify-content: center
      justify-content-betweenjustify-content: space-between
      justify-content-aroundjustify-content: space-around
      align-items-startalign-items: flex-start
      align-items-endalign-items: flex-end
      align-items-centeralign-items: center
      align-items-baselinealign-items: baseline
      align-items-stretchalign-items: stretch
      align-content-startalign-content: flex-start
      align-content-endalign-content: flex-end
      align-content-centeralign-content: center
      align-content-betweenalign-content: space-between
      align-content-aroundalign-content: space-around
      align-content-stretchalign-content: stretch
      align-self-autoalign-self: auto
      align-self-startalign-self: flex-start
      align-self-endalign-self: flex-end
      align-self-centeralign-self: center
      align-self-baselinealign-self: baseline
      align-self-stretchalign-self: stretch
      flex-centerdisplay: flex; align-items: center;
      flex-center-betweendisplay: flex; align-items: center; align-content: space-between;

      位置

      名称说明
      overflow-autooverflow: auto
      overflow-hiddenoverflow: hidden
      fixed-top固定顶部
      fixed-bottom固定底部

      文本

      大小

      Ant Design 是以 14px 为基准字号。

      名称说明
      text-xs12px
      text-sm14px
      text-md16px
      text-lg18px
      text-xl22px

      对齐

      名称说明
      text-left文本居左
      text-center文本居中
      text-right文本居右

      溢出

      容器必须是 display: inline-blockdisplay: block

      名称说明
      text-nowrap文本超出不换行
      text-truncate文本超出截取并加 ...

      Transformation

      名称说明
      text-lowercase小写文本
      text-uppercase大写文本
      text-capitalize首词大写
      text-deleted删除线

      Weight and italics

      名称说明
      font-weight-normalfont-weight: normal
      font-weight-boldfont-weight: 700
      font-italicfont-style: italic

      Other

      名称说明
      text-hover*:hover { color: @primary-color; }
      disabled禁止

      Borders

      边框

      名称说明
      borderborder: 1px solid #f5f5f5 !important;
      border-0border: 0 !important;
      border-top-0border-top: 0 !important;
      border-right-0border-right: 0 !important;
      border-bottom-0border-bottom: 0 !important;
      border-left-0border-left: 0 !important;

      颜色

      支持色彩章节所有的色系&别名写法,例如:border-redborder-success

      圆角

      名称说明
      rounded-0border-radius: 0;
      rounded-circleborder-radius: 50%;
      rounded-smborder-radius: 2px;
      rounded-mdborder-radius: 4px;
      rounded-lgborder-radius: 6px;

      Width

      名称说明
      width-sm160px
      width-md240px
      width-lg320px
      width-[0-10]0%-100%

      Responsive

      类似 Bootstrap 响应式规则,当屏幕小于 480px 时会隐藏所有 hidden-xs 类。

      名称屏幕
      hidden-xs<480px
      hidden-sm<768px
      hidden-md<992px
      hidden-lg<1200px
      hidden-pc<768px
      hidden-mobile>768px

      旋转

      .rotate-[360 / 15]

      例如:

      // 旋转15度
      +.rotate-15
      +// 旋转90度
      +.rotate-90
      +// 旋转360度
      +.rotate-360

      Other

      名称说明
      block-centermargin: 0 auto
      pointcursor: pointer
      no-data空数据行
      no-resize设置不允许调整元素
      bg-center背景图垂直居中
      scrollbar美化 div 滚动条
      color-weak色弱模式

      小部件

      瀑布流

      在线示例

      名称说明
      row-masonry
      row-masonry-{xs|sm|md|lg|xl}-{1-10}列,响应式样式
      col-masonry

      ng-zorro

      nz-card

      名称说明
      ant-card__body-nopadding强制内容无间距

      nz-modal

      名称说明
      modal-{sm|md|lg|xl}设置Modal的大小,wrapClassName: 'modal-lg'
      modal-body-nopadding内容无内边距
      modal-header自定义Modal时非常有效,DEMO
      modal-footer自定义Modal时非常有效,DEMO

      nz-table

      名称说明
      ant-table-rep__title标题
      ant-table-rep__hide-header-footer小屏幕时才显示标题或底部

      nz-tag

      名称说明
      ant-tag__plus增加按钮样式
      \ No newline at end of file diff --git a/theme/tools/zh/index.html b/theme/tools/zh/index.html new file mode 100644 index 000000000..908f00e8b --- /dev/null +++ b/theme/tools/zh/index.html @@ -0,0 +1,42 @@ +样式工具类 - NG-ALAIN

      样式工具类

      ng-alain 在 Ant Design 的基础上生产一套尺寸、间距、颜色等工具类。

      在 VSCode 安装 ng-alain snippets 插件,可以对所有工具集样式名称的智能提醒。

      间距

      ng-alain 认为这些工具类只会运用在内容区域,且秉承 Ant Design 的设计价值观,间距宽度是以 8px 为一个基准单位,并衍生出三个尺寸,分别为:

      名称公式尺寸说明
      xs$gutter / 24px超小号
      sm$gutter8px小号
      md$gutter * 216px中号
      lg$gutter * 324px大号
      xl$gutter * 432px特大号
      xxl$gutter * 648px超大号

      依这些规则,衍生出 marginpadding,其命名规则如下:

      • 类型:paddingmargin

      • 方向(可选):toprightbottomleftx(相当于 leftright)、y(相当于 topbottom

      消除

      [<类型>p|m][<方向>t|r|b|l|x|y]?0

      命名格式

      [<类型>p|m][<方向>t|r|b|l|x|y]?-[<尺寸>sm|md|lg]

      示例:

      .p-sm { padding: 8px !important; }
      +.pt-sm { padding-top: 8px !important; }
      +.m-sm { margin: 16px !important; }
      +.mt-md { margin-top: 16px !important; }
      +
      +.p0 { padding: 0 !important; }

      色彩

      Ant Design 并没有按钮色这一说,而是以视觉效果为基准。默认是蓝色系(拂晓蓝),例如:nz-button 的按钮类型 primary

      而 ng-alain 依然不会破坏这种规则,但依 色彩 章节,产生了一种运用于文本、背景的色系类。

      名称基本色说明
      red
      #f5222d
      薄暮:斗志、奔放
      volcano
      #fa541c
      火山:醒目、澎湃
      orange
      #fa8c16
      日暮:温暖、欢快
      gold
      #faad14
      金盏花:活力、积极
      yellow
      #fadb14
      日出:出生、阳光
      lime
      #a0d911
      青柠:自然、生机
      green
      #f5222d
      极光绿:健康、创新
      cyan
      #13c2c2
      明青:希望、坚强
      blue
      #1890ff
      拂晓蓝:包容、科技、普惠
      geekblue
      #2f54eb
      极客蓝:探索、钻研
      purple
      #722ed1
      酱紫:优雅、浪漫
      magenta
      #eb2f96
      法式洋红:平稳、中性

      Ant Design 的基础色板共计 120 个颜色,包含 12 个主色以及衍生色。这些颜色基本可以满足中后台设计中对于颜色的需求。

      分类

      名称色号
      light5号
      normal6号
      dark7号

      命名格式

      [<类型>text|bg]-[<色彩名>red|volcano|orange|gold|yellow|lime|green|cyan|blue|geekblue|purple|magenta|grey](-[light|dark])?(-h)?

      normal 本身即是基本色,所以可以被忽略 grey 可能会更常用,所以额外增加 grey-lightergrey-darker 别名表示深度

      示例:

      // Text color
      +.text-red-light { color: #fabeb9 !important; }
      +.text-red { color: #f04134 !important; }
      +.text-red-dark { color: #a31837 !important; }
      +
      +// background-color color
      +.bg-red-light { background-color: #fabeb9 !important; }
      +.bg-red { background-color: #f04134 !important; }
      +.bg-red-dark { background-color: #a31837 !important; }
      +
      +// hover color
      +.bg-red-light-h { &:hover { background-color: #fabeb9 !important; } }
      +.bg-red-h { &:hover { background-color: #f04134 !important; } }
      +.bg-red-dark-h { &:hover { background-color: #a31837 !important; } }

      别名

      别名色系
      primary@blue-6
      #1890ff
      success@green-6
      #52c41a
      error@red-5
      #ff4d4f
      warning@gold-6
      #faad14
      info@blue-6
      #1890ff
      processing@blue-6
      #1890ff
      highlight@red-5
      #ff4d4f
      normal#d9d9d9
      #d9d9d9

      示例:

      // Text color
      +.text-error-light { color: #fabeb9 !important; }
      +.text-error { color: #f04134 !important; }
      +.text-error-dark { color: #a31837 !important; }
      +
      +// background-color color
      +.bg-error-light { background-color: #fabeb9 !important; }
      +.bg-error { background-color: #f04134 !important; }
      +.bg-error-dark { background-color: #a31837 !important; }
      +
      +// hover color
      +.bg-error-light-h { &:hover { background-color: #fabeb9 !important; } }
      +.bg-error-h { &:hover { background-color: #f04134 !important; } }
      +.bg-error-dark-h { &:hover { background-color: #a31837 !important; } }

      全量颜色

      你可以使用 @enable-all-colors: true 来开启所有 120 个颜色的规则。

      .text-red-1 { color: #fff1f0 !important; }
      +.text-red-6 { color: #f04134 !important; }
      +.text-red-10 { color: #5c0011 !important; }
      +
      +.bg-red-6 { color: #f04134 !important; }
      +.bg-red-6-h { color: #f04134 !important; }

      清除浮动

      清除浮动 .clearfix

      显示

      别名CSS
      d-nonedisplay: none
      d-blockdisplay: block
      d-inline-blockdisplay: inline-block
      d-flexdisplay: flex
      d-inline-flexdisplay: inline-flex
      justify-content-startjustify-content: flex-start
      justify-content-endjustify-content: flex-end
      justify-content-centerjustify-content: center
      justify-content-betweenjustify-content: space-between
      justify-content-aroundjustify-content: space-around
      align-items-startalign-items: flex-start
      align-items-endalign-items: flex-end
      align-items-centeralign-items: center
      align-items-baselinealign-items: baseline
      align-items-stretchalign-items: stretch
      align-content-startalign-content: flex-start
      align-content-endalign-content: flex-end
      align-content-centeralign-content: center
      align-content-betweenalign-content: space-between
      align-content-aroundalign-content: space-around
      align-content-stretchalign-content: stretch
      align-self-autoalign-self: auto
      align-self-startalign-self: flex-start
      align-self-endalign-self: flex-end
      align-self-centeralign-self: center
      align-self-baselinealign-self: baseline
      align-self-stretchalign-self: stretch
      flex-centerdisplay: flex; align-items: center;
      flex-center-betweendisplay: flex; align-items: center; align-content: space-between;

      位置

      名称说明
      overflow-autooverflow: auto
      overflow-hiddenoverflow: hidden
      fixed-top固定顶部
      fixed-bottom固定底部

      文本

      大小

      Ant Design 是以 14px 为基准字号。

      名称说明
      text-xs12px
      text-sm14px
      text-md16px
      text-lg18px
      text-xl22px

      对齐

      名称说明
      text-left文本居左
      text-center文本居中
      text-right文本居右

      溢出

      容器必须是 display: inline-blockdisplay: block

      名称说明
      text-nowrap文本超出不换行
      text-truncate文本超出截取并加 ...

      Transformation

      名称说明
      text-lowercase小写文本
      text-uppercase大写文本
      text-capitalize首词大写
      text-deleted删除线

      Weight and italics

      名称说明
      font-weight-normalfont-weight: normal
      font-weight-boldfont-weight: 700
      font-italicfont-style: italic

      Other

      名称说明
      text-hover*:hover { color: @primary-color; }
      disabled禁止

      Borders

      边框

      名称说明
      borderborder: 1px solid #f5f5f5 !important;
      border-0border: 0 !important;
      border-top-0border-top: 0 !important;
      border-right-0border-right: 0 !important;
      border-bottom-0border-bottom: 0 !important;
      border-left-0border-left: 0 !important;

      颜色

      支持色彩章节所有的色系&别名写法,例如:border-redborder-success

      圆角

      名称说明
      rounded-0border-radius: 0;
      rounded-circleborder-radius: 50%;
      rounded-smborder-radius: 2px;
      rounded-mdborder-radius: 4px;
      rounded-lgborder-radius: 6px;

      Width

      名称说明
      width-sm160px
      width-md240px
      width-lg320px
      width-[0-10]0%-100%

      Responsive

      类似 Bootstrap 响应式规则,当屏幕小于 480px 时会隐藏所有 hidden-xs 类。

      名称屏幕
      hidden-xs<480px
      hidden-sm<768px
      hidden-md<992px
      hidden-lg<1200px
      hidden-pc<768px
      hidden-mobile>768px

      旋转

      .rotate-[360 / 15]

      例如:

      // 旋转15度
      +.rotate-15
      +// 旋转90度
      +.rotate-90
      +// 旋转360度
      +.rotate-360

      Other

      名称说明
      block-centermargin: 0 auto
      pointcursor: pointer
      no-data空数据行
      no-resize设置不允许调整元素
      bg-center背景图垂直居中
      scrollbar美化 div 滚动条
      color-weak色弱模式

      小部件

      瀑布流

      在线示例

      名称说明
      row-masonry
      row-masonry-{xs|sm|md|lg|xl}-{1-10}列,响应式样式
      col-masonry

      ng-zorro

      nz-card

      名称说明
      ant-card__body-nopadding强制内容无间距

      nz-modal

      名称说明
      modal-{sm|md|lg|xl}设置Modal的大小,wrapClassName: 'modal-lg'
      modal-body-nopadding内容无内边距
      modal-header自定义Modal时非常有效,DEMO
      modal-footer自定义Modal时非常有效,DEMO

      nz-table

      名称说明
      ant-table-rep__title标题
      ant-table-rep__hide-header-footer小屏幕时才显示标题或底部

      nz-tag

      名称说明
      ant-tag__plus增加按钮样式
      \ No newline at end of file diff --git a/theme/yn/en/index.html b/theme/yn/en/index.html new file mode 100644 index 000000000..60d79067c --- /dev/null +++ b/theme/yn/en/index.html @@ -0,0 +1,3 @@ +yn - NG-ALAIN

      徽章

      yn 将boolean类型徽章化。

      <td [innerHTML]="enabled | yn"></td>
      +Output:
      +<td><i class="text-blue"><svg viewBox="64 64 896 896" fill="currentColor" width="1em" height="1em" aria-hidden="true"><path d="M912 190h-69.9c-9.8 0-19.1 4.5-25.1 12.2L404.7 724.5 207 474a32 32 0 0 0-25.1-12.2H112c-6.7 0-10.4 7.7-6.3 12.9l273.9 347c12.8 16.2 37.4 16.2 50.3 0l488.4-618.9c4.1-5.1.4-12.8-6.3-12.8z"></path></svg></i></td>
      \ No newline at end of file diff --git a/theme/yn/zh/index.html b/theme/yn/zh/index.html new file mode 100644 index 000000000..57dd618e6 --- /dev/null +++ b/theme/yn/zh/index.html @@ -0,0 +1,3 @@ +yn - NG-ALAIN

      徽章

      yn 将boolean类型徽章化。

      <td [innerHTML]="enabled | yn"></td>
      +Output:
      +<td><i class="text-blue"><svg viewBox="64 64 896 896" fill="currentColor" width="1em" height="1em" aria-hidden="true"><path d="M912 190h-69.9c-9.8 0-19.1 4.5-25.1 12.2L404.7 724.5 207 474a32 32 0 0 0-25.1-12.2H112c-6.7 0-10.4 7.7-6.3 12.9l273.9 347c12.8 16.2 37.4 16.2 50.3 0l488.4-618.9c4.1-5.1.4-12.8-6.3-12.8z"></path></svg></i></td>
      \ No newline at end of file diff --git a/util/array/en/index.html b/util/array/en/index.html new file mode 100644 index 000000000..3e8f8ef94 --- /dev/null +++ b/util/array/en/index.html @@ -0,0 +1,5 @@ +array - NG-ALAIN

      数组,树,扁平,分组,去重

      ArrayService

      ArrayService 用于数组与树之间的转化、访问等,一般配合 nz-tree 一起使用。

      可以通过全局配置覆盖 ArrayService 设置映射名称。

      treeToArr

      将树结构转换成数组结构。

      参数说明类型默认值
      deepMapName深度项名stringdeep
      parentMapName扁平后数组的父数据项名stringparent
      childrenMapName源数据子项名stringchildren
      clearChildren是否移除 children 节点booleantrue
      cb转换成数组结构时回调(item: any, parent: any, deep: number) => void-

      arrToTree

      数组转换成树数据。

      parent_id 为字符串,则根值务必为空字符串。

      参数说明类型默认值
      idMapName编号项名stringid
      parentIdMapName父编号项名stringparent_id
      rootParentIdValue根父编号值,默认会自动计算得到最合适的根父编号值any-
      childrenMapName子项名stringchildren
      cb转换成树数据时回调(item: any) => void-

      arrToTreeNode

      数组转换成 nz-tree 数据源,通过 options 转化项名,也可以使用 options.cb 更高级决定数据项。

      参数说明类型默认值
      idMapName编号项名stringid
      parentIdMapName父编号项名stringparent_id
      titleMapName标题项名stringtitle
      isLeafMapName是否叶节点项名,若数据源不存在时自动根据 children 值决定是否为叶子节点stringisLeaf
      checkedMapname节点 Checkbox 是否选中项名stringchecked
      selectedMapname节点本身是否选中项名stringselected
      expandedMapname节点是否展开(叶子节点无效)项名stringexpanded
      disabledMapname设置是否禁用节点(不可进行任何操作)项名stringdisabled
      cb转换成数组结构时回调(item: any, parent: any, deep: number) => void-

      visitTree

      递归访问整个树。

      参数说明类型默认值
      childrenMapName子项名stringchildren

      findTree

      根据条件返回树的第一个值,否则返回 undefined

      参数说明类型默认值
      childrenMapName子项名stringchildren

      getKeysByTreeNode

      获取所有已经选中的 key 值。

      参数说明类型默认值
      includeHalfChecked是否包含半选状态的值booleantrue
      keyMapName是否重新指定 key 键名,若不指定表示使用 NzTreeNode.keystring-
      cb回调,返回一个值 key 值,优先级高于其他(item: NzTreeNode, parent: NzTreeNode, deep: number) => any-

      flat

      递归扁平数组。

      srv.flat([1, [2, 3, [4, 5, [6]]]]) => [1,2,3,4,5,6]
      +srv.flat([1, [2, 3, [4, 5, [6]]]], 1) => [1,2,3,[4, 5, [6]]]

      groupBy

      对数组进行分组。

      srv.groupBy([6.1, 4.2, 6.3], Math.floor) => {"4":[4.2],"6":[6.1,6.3]}
      +srv.groupBy(['one', 'two', 'three'], v => v.length) => {"3":["one","two"],"5":["three"]}

      uniq

      创建去重后的数组。

      uniq([1, 2, 2, 3, 1]) => [1,2,3]
      +uniq([{ a: 1 }, { a: 1 }, { a: 2 }], 'a') => [{"a":1},{"a":2}]
      +uniq([{ a: 1 }, { a: 1 }, { a: 2 }], i => (i.a === 1 ? 'a' : 'b')) => [{"a":1},{"a":2}]
      \ No newline at end of file diff --git a/util/array/zh/index.html b/util/array/zh/index.html new file mode 100644 index 000000000..7c79c8dd8 --- /dev/null +++ b/util/array/zh/index.html @@ -0,0 +1,5 @@ +array - NG-ALAIN

      数组,树,扁平,分组,去重

      ArrayService

      ArrayService 用于数组与树之间的转化、访问等,一般配合 nz-tree 一起使用。

      可以通过全局配置覆盖 ArrayService 设置映射名称。

      treeToArr

      将树结构转换成数组结构。

      参数说明类型默认值
      deepMapName深度项名stringdeep
      parentMapName扁平后数组的父数据项名stringparent
      childrenMapName源数据子项名stringchildren
      clearChildren是否移除 children 节点booleantrue
      cb转换成数组结构时回调(item: any, parent: any, deep: number) => void-

      arrToTree

      数组转换成树数据。

      parent_id 为字符串,则根值务必为空字符串。

      参数说明类型默认值
      idMapName编号项名stringid
      parentIdMapName父编号项名stringparent_id
      rootParentIdValue根父编号值,默认会自动计算得到最合适的根父编号值any-
      childrenMapName子项名stringchildren
      cb转换成树数据时回调(item: any) => void-

      arrToTreeNode

      数组转换成 nz-tree 数据源,通过 options 转化项名,也可以使用 options.cb 更高级决定数据项。

      参数说明类型默认值
      idMapName编号项名stringid
      parentIdMapName父编号项名stringparent_id
      titleMapName标题项名stringtitle
      isLeafMapName是否叶节点项名,若数据源不存在时自动根据 children 值决定是否为叶子节点stringisLeaf
      checkedMapname节点 Checkbox 是否选中项名stringchecked
      selectedMapname节点本身是否选中项名stringselected
      expandedMapname节点是否展开(叶子节点无效)项名stringexpanded
      disabledMapname设置是否禁用节点(不可进行任何操作)项名stringdisabled
      cb转换成数组结构时回调(item: any, parent: any, deep: number) => void-

      visitTree

      递归访问整个树。

      参数说明类型默认值
      childrenMapName子项名stringchildren

      findTree

      根据条件返回树的第一个值,否则返回 undefined

      参数说明类型默认值
      childrenMapName子项名stringchildren

      getKeysByTreeNode

      获取所有已经选中的 key 值。

      参数说明类型默认值
      includeHalfChecked是否包含半选状态的值booleantrue
      keyMapName是否重新指定 key 键名,若不指定表示使用 NzTreeNode.keystring-
      cb回调,返回一个值 key 值,优先级高于其他(item: NzTreeNode, parent: NzTreeNode, deep: number) => any-

      flat

      递归扁平数组。

      srv.flat([1, [2, 3, [4, 5, [6]]]]) => [1,2,3,4,5,6]
      +srv.flat([1, [2, 3, [4, 5, [6]]]], 1) => [1,2,3,[4, 5, [6]]]

      groupBy

      对数组进行分组。

      srv.groupBy([6.1, 4.2, 6.3], Math.floor) => {"4":[4.2],"6":[6.1,6.3]}
      +srv.groupBy(['one', 'two', 'three'], v => v.length) => {"3":["one","two"],"5":["three"]}

      uniq

      创建去重后的数组。

      uniq([1, 2, 2, 3, 1]) => [1,2,3]
      +uniq([{ a: 1 }, { a: 1 }, { a: 2 }], 'a') => [{"a":1},{"a":2}]
      +uniq([{ a: 1 }, { a: 1 }, { a: 2 }], i => (i.a === 1 ? 'a' : 'b')) => [{"a":1},{"a":2}]
      \ No newline at end of file diff --git a/util/browser/en/index.html b/util/browser/en/index.html new file mode 100644 index 000000000..5171f1c73 --- /dev/null +++ b/util/browser/en/index.html @@ -0,0 +1,10 @@ +browser - NG-ALAIN

      Cookie、Copy、DOM 等

      CookieService

      一组简单的 Cookie 操作类。

      • cookie 原始Cookie值

      • getAll 获取所有Cookie键值对

      • get 获取指定 key 的值

      • put 设置指定 Cookie 键的值

      isEmpty

      用于校验 <ng-content /> 是否为空,自定义组件时蛮有用。

      updateHostClass

      更新宿主组件样式 class,例如:

      updateHostClass(
      +  this.el.nativeElement,
      +  this.renderer,
      +  {
      +    [ 'classname' ]: true,
      +    [ 'classname' ]: this.type === '1',
      +    [ this.cls ]: true,
      +    [ `a-${this.cls}` ]: true
      +  }
      +)

      copy

      复制字符串文档至剪贴板。

      ScrollService

      滚动条控制,允许滚动至指定元素所处位置。

      接口名参数描述
      getScrollPositionelement?: Element获取滚动条位置
      scrollToPositionelement: Element | Window, position: [number, number]设置滚动条位置
      scrollToElementelement?: Element, topOffset = 0设置滚动条至指定元素
      scrollToToptopOffset = 0滚动至顶部
      \ No newline at end of file diff --git a/util/browser/zh/index.html b/util/browser/zh/index.html new file mode 100644 index 000000000..00d76ba13 --- /dev/null +++ b/util/browser/zh/index.html @@ -0,0 +1,10 @@ +browser - NG-ALAIN

      Cookie、Copy、DOM 等

      CookieService

      一组简单的 Cookie 操作类。

      • cookie 原始Cookie值

      • getAll 获取所有Cookie键值对

      • get 获取指定 key 的值

      • put 设置指定 Cookie 键的值

      isEmpty

      用于校验 <ng-content /> 是否为空,自定义组件时蛮有用。

      updateHostClass

      更新宿主组件样式 class,例如:

      updateHostClass(
      +  this.el.nativeElement,
      +  this.renderer,
      +  {
      +    [ 'classname' ]: true,
      +    [ 'classname' ]: this.type === '1',
      +    [ this.cls ]: true,
      +    [ `a-${this.cls}` ]: true
      +  }
      +)

      copy

      复制字符串文档至剪贴板。

      ScrollService

      滚动条控制,允许滚动至指定元素所处位置。

      接口名参数描述
      getScrollPositionelement?: Element获取滚动条位置
      scrollToPositionelement: Element | Window, position: [number, number]设置滚动条位置
      scrollToElementelement?: Element, topOffset = 0设置滚动条至指定元素
      scrollToToptopOffset = 0滚动至顶部
      \ No newline at end of file diff --git a/util/date-time/en/index.html b/util/date-time/en/index.html new file mode 100644 index 000000000..37fe9674a --- /dev/null +++ b/util/date-time/en/index.html @@ -0,0 +1,2 @@ +date-time - NG-ALAIN

      日期时间转换

      dateTimePickerUtil

      一组针对 DatePicker 的工具类。

      • now 当前本地时间

      • date 当前本地日期(不包含时间部分)

      • removeTime 移除日期的时间部分

      • format 格式化日期

      • getDiffDays 计算两个日期相差天数,0 表示同一天

      • disabledBeforeDate 禁用之前日期(默认:今天),一般服务于 nzDisabledDate

      • disabledAfterDate 禁用之后日期(默认:今天),一般服务于 nzDisabledDate

      • disabledBeforeTime 禁用之前时间(默认:现在),一般服务于 nzDisabledTime

      • disabledAfterTime 禁用之后时间(默认:现在),一般服务于 nzDisabledTime

      disabledDate = dateTimePickerUtil.disabledBeforeDate();
      +disabledDateTime = dateTimePickerUtil.disabledBeforeTime({ offsetSeconds: 60 * 5 });

      getTimeDistance

      获取时间范围,返回 [ Date, Date] 表示开始与结束日期,例如:获取本周时间:

      getTimeDistance('week')

      参数

      • type 快捷类型,带 - 表示过去一个时间,若指定 number 表示天数

        • today-todayyesterday 今天或昨天

        • week-week 本周或上周

        • month-month 本月或上月

        • year-year 今年或去年

      • time 指定开始时间,默认为:now

      toDate

      转换成 Date 格式,支持 Date, number, string 类型,如果是 number 表示 Unix timestamp。

      • formatString 如果转换失败尝试根据 formatString 格式来转换

      • defaultValue 无效日期应返回的默认值,默认:new Date(NaN)

        <
      \ No newline at end of file diff --git a/util/date-time/zh/index.html b/util/date-time/zh/index.html new file mode 100644 index 000000000..26686550b --- /dev/null +++ b/util/date-time/zh/index.html @@ -0,0 +1,2 @@ +date-time - NG-ALAIN

      日期时间转换

      dateTimePickerUtil

      一组针对 DatePicker 的工具类。

      • now 当前本地时间

      • date 当前本地日期(不包含时间部分)

      • removeTime 移除日期的时间部分

      • format 格式化日期

      • getDiffDays 计算两个日期相差天数,0 表示同一天

      • disabledBeforeDate 禁用之前日期(默认:今天),一般服务于 nzDisabledDate

      • disabledAfterDate 禁用之后日期(默认:今天),一般服务于 nzDisabledDate

      • disabledBeforeTime 禁用之前时间(默认:现在),一般服务于 nzDisabledTime

      • disabledAfterTime 禁用之后时间(默认:现在),一般服务于 nzDisabledTime

      disabledDate = dateTimePickerUtil.disabledBeforeDate();
      +disabledDateTime = dateTimePickerUtil.disabledBeforeTime({ offsetSeconds: 60 * 5 });

      getTimeDistance

      获取时间范围,返回 [ Date, Date] 表示开始与结束日期,例如:获取本周时间:

      getTimeDistance('week')

      参数

      • type 快捷类型,带 - 表示过去一个时间,若指定 number 表示天数

        • today-todayyesterday 今天或昨天

        • week-week 本周或上周

        • month-month 本月或上月

        • year-year 今年或去年

      • time 指定开始时间,默认为:now

      toDate

      转换成 Date 格式,支持 Date, number, string 类型,如果是 number 表示 Unix timestamp。

      • formatString 如果转换失败尝试根据 formatString 格式来转换

      • defaultValue 无效日期应返回的默认值,默认:new Date(NaN)

        <
      \ No newline at end of file diff --git a/util/decorator/en/index.html b/util/decorator/en/index.html new file mode 100644 index 000000000..ee5c894ef --- /dev/null +++ b/util/decorator/en/index.html @@ -0,0 +1,16 @@ +decorator - NG-ALAIN

      装饰器

      toBoolean, @InputBoolean

      转换 boolean 属性,其中 @InputBoolean() 可以强化布尔属性绑定的体验,例如:

      @Input() @InputBoolean() disabled = false;

      以下调用方法都会认为是有效:

      <test disabled></test> // true
      +<test disabled="true"></test> // true
      +<test [disabled]="true"></test> // true
      +<test disabled="false"></test> // false
      +<test [disabled]="false"></test> // false

      toNumber, @InputNumber

      转换 number 属性,其中 @InputNumber() 可以强化数字属性绑定的体验,例如:

      @Input() @InputNumber() count = 10;

      以下调用方法都会认为是有效:

      <test count="1"></test> // 1
      +<test [count]="1"></test> // 1

      @ZoneOutside

      装饰方法运行在 runOutsideAngular 内。

      class MockClass {
      +  constructor(public ngZone: NgZone) {}
      +
      +  @ZoneOutside()
      +  run(): void {}
      +}

      @ZoneRun

      装饰方法运行在 run 内。

      class MockClass {
      +  constructor(public ngZone: NgZone) {}
      +
      +  @ZoneRun()
      +  run(): void {}
      +}
      \ No newline at end of file diff --git a/util/decorator/zh/index.html b/util/decorator/zh/index.html new file mode 100644 index 000000000..877bf6c86 --- /dev/null +++ b/util/decorator/zh/index.html @@ -0,0 +1,16 @@ +decorator - NG-ALAIN

      装饰器

      toBoolean, @InputBoolean

      转换 boolean 属性,其中 @InputBoolean() 可以强化布尔属性绑定的体验,例如:

      @Input() @InputBoolean() disabled = false;

      以下调用方法都会认为是有效:

      <test disabled></test> // true
      +<test disabled="true"></test> // true
      +<test [disabled]="true"></test> // true
      +<test disabled="false"></test> // false
      +<test [disabled]="false"></test> // false

      toNumber, @InputNumber

      转换 number 属性,其中 @InputNumber() 可以强化数字属性绑定的体验,例如:

      @Input() @InputNumber() count = 10;

      以下调用方法都会认为是有效:

      <test count="1"></test> // 1
      +<test [count]="1"></test> // 1

      @ZoneOutside

      装饰方法运行在 runOutsideAngular 内。

      class MockClass {
      +  constructor(public ngZone: NgZone) {}
      +
      +  @ZoneOutside()
      +  run(): void {}
      +}

      @ZoneRun

      装饰方法运行在 run 内。

      class MockClass {
      +  constructor(public ngZone: NgZone) {}
      +
      +  @ZoneRun()
      +  run(): void {}
      +}
      \ No newline at end of file diff --git a/util/form/en/index.html b/util/form/en/index.html new file mode 100644 index 000000000..90d27c3a1 --- /dev/null +++ b/util/form/en/index.html @@ -0,0 +1,9 @@ +form - NG-ALAIN

      响应式表单校验

      MatchControl

      匹配两个控件值,例如:

      this.form = new FormGroup({
      +  pwd: new FormControl(''),
      +  repwd: new FormControl(''),
      +}, {
      +  validators: MatchControl('pwd', 'repwd'),
      +});

      _Validators

      一套用于响应式表单的验证器,包含:

      • _Validators.num 是否为数字

      • _Validators.int 是否为整数

      • _Validators.decimal 是否为小数点数值

      • _Validators.idCard 是否为中华人民共和国居民身份证

      • _Validators.mobile 是否为手机号(中国)

      • _Validators.url 是否URL地址

      • _Validators.ip4 是否IP地址(支持v4、v6)

      • _Validators.color 是否颜色代码值

      • _Validators.chinese 是否中文

      每一个验证型都包括着用于表单验证器:

      this.valForm = fb.group({
      +  // 手机号
      +  mobile: [null, Validators.compose([Validators.required, _Validators.mobile])]
      +});
      \ No newline at end of file diff --git a/util/form/zh/index.html b/util/form/zh/index.html new file mode 100644 index 000000000..31b4e5402 --- /dev/null +++ b/util/form/zh/index.html @@ -0,0 +1,9 @@ +form - NG-ALAIN

      响应式表单校验

      MatchControl

      匹配两个控件值,例如:

      this.form = new FormGroup({
      +  pwd: new FormControl(''),
      +  repwd: new FormControl(''),
      +}, {
      +  validators: MatchControl('pwd', 'repwd'),
      +});

      _Validators

      一套用于响应式表单的验证器,包含:

      • _Validators.num 是否为数字

      • _Validators.int 是否为整数

      • _Validators.decimal 是否为小数点数值

      • _Validators.idCard 是否为中华人民共和国居民身份证

      • _Validators.mobile 是否为手机号(中国)

      • _Validators.url 是否URL地址

      • _Validators.ip4 是否IP地址(支持v4、v6)

      • _Validators.color 是否颜色代码值

      • _Validators.chinese 是否中文

      每一个验证型都包括着用于表单验证器:

      this.valForm = fb.group({
      +  // 手机号
      +  mobile: [null, Validators.compose([Validators.required, _Validators.mobile])]
      +});
      \ No newline at end of file diff --git a/util/format/en/index.html b/util/format/en/index.html new file mode 100644 index 000000000..791ffc53b --- /dev/null +++ b/util/format/en/index.html @@ -0,0 +1,14 @@ +format - NG-ALAIN

      字符,校验,货币,掩码

      CurrencyService

      可以通过全局配置覆盖 startingUnitmegaUnitprecisioningoreZeroPrecision 等参数。

      format

      格式化货币,用逗号将数字格式化为千位分隔符。

      10000 => `10,000`
      +10000.567 => `10,000.57`

      若指定则表示使用 Angular 自带的 currency 管道来解析,见文档

      formatMask

      格式化掩码。

      字符描述
      0任意数字,若该位置字符不符合,则默认为 0 填充
      9任意数字
      #任意字符
      U转换大写
      L转换小写
      *转换为 * 字符
      formatMask('123', '(###)') => (123)
      +formatMask('15900000000', '999****9999') => 159****0000
      +formatMask('aBc', 'UUU') => ABC
      +formatMask('ABc', 'LLL') => abc

      或自定义Token:

      const option: FormatMaskOption = {
      +  mask: 'CC999',
      +  tokens: { C: { pattern: /.*/, transform: char => (char === '你' ? 'N' : 'H') } }
      +}
      +formatMask('你好123', option) => NH123

      mega

      大数据格式化。

      1000 => { value: '1', unit: 'K', unitI18n: '千' }
      +12456 => { value: '12.46', unit: 'K', unitI18n: '千' }

      cny

      转化成人民币表示法。

      1 => 壹元整
      +1.34 => 壹元叁角肆分

      format

      字符串格式化。

      format('this is ${name}', { name: 'asdf' })
      +// output: this is asdf
      +format('this is ${user.name}', { user: { name: 'asdf' } }, true)
      +// output: this is asdf

      REGEX

      一组常见的正则表达式。也可以通过 REGEX_STR 来获取它们的正则字符串格式,配合 new RegExp 完成一些额外的处理。

      num

      是否为数字。

      int

      是否为整数。

      decimal

      是否为小数点数值。

      idCard

      是否为中华人民共和国居民身份证。

      isMobile

      是否为手机号(中国)。

      isUrl

      是否URL地址。

      isIp

      是否IP地址(支持v4、v6)。

      isColor

      是否颜色代码值。

      isChinese

      \ No newline at end of file diff --git a/util/format/zh/index.html b/util/format/zh/index.html new file mode 100644 index 000000000..2ce24c090 --- /dev/null +++ b/util/format/zh/index.html @@ -0,0 +1,14 @@ +format - NG-ALAIN

      字符,校验,货币,掩码

      CurrencyService

      可以通过全局配置覆盖 startingUnitmegaUnitprecisioningoreZeroPrecision 等参数。

      format

      格式化货币,用逗号将数字格式化为千位分隔符。

      10000 => `10,000`
      +10000.567 => `10,000.57`

      若指定则表示使用 Angular 自带的 currency 管道来解析,见文档

      formatMask

      格式化掩码。

      字符描述
      0任意数字,若该位置字符不符合,则默认为 0 填充
      9任意数字
      #任意字符
      U转换大写
      L转换小写
      *转换为 * 字符
      formatMask('123', '(###)') => (123)
      +formatMask('15900000000', '999****9999') => 159****0000
      +formatMask('aBc', 'UUU') => ABC
      +formatMask('ABc', 'LLL') => abc

      或自定义Token:

      const option: FormatMaskOption = {
      +  mask: 'CC999',
      +  tokens: { C: { pattern: /.*/, transform: char => (char === '你' ? 'N' : 'H') } }
      +}
      +formatMask('你好123', option) => NH123

      mega

      大数据格式化。

      1000 => { value: '1', unit: 'K', unitI18n: '千' }
      +12456 => { value: '12.46', unit: 'K', unitI18n: '千' }

      cny

      转化成人民币表示法。

      1 => 壹元整
      +1.34 => 壹元叁角肆分

      format

      字符串格式化。

      format('this is ${name}', { name: 'asdf' })
      +// output: this is asdf
      +format('this is ${user.name}', { user: { name: 'asdf' } }, true)
      +// output: this is asdf

      REGEX

      一组常见的正则表达式。也可以通过 REGEX_STR 来获取它们的正则字符串格式,配合 new RegExp 完成一些额外的处理。

      num

      是否为数字。

      int

      是否为整数。

      decimal

      是否为小数点数值。

      idCard

      是否为中华人民共和国居民身份证。

      isMobile

      是否为手机号(中国)。

      isUrl

      是否URL地址。

      isIp

      是否IP地址(支持v4、v6)。

      isColor

      是否颜色代码值。

      isChinese

      \ No newline at end of file diff --git a/util/getting-started/en/index.html b/util/getting-started/en/index.html new file mode 100644 index 000000000..fa19cdba2 --- /dev/null +++ b/util/getting-started/en/index.html @@ -0,0 +1 @@ +开始使用 - NG-ALAIN

      开始使用

      @delon/util 是一组日常普通使用的工具函

      \ No newline at end of file diff --git a/util/getting-started/zh/index.html b/util/getting-started/zh/index.html new file mode 100644 index 000000000..510788029 --- /dev/null +++ b/util/getting-started/zh/index.html @@ -0,0 +1 @@ +开始使用 - NG-ALAIN

      开始使用

      @delon/util 是一组日常普通使用的工具函

      \ No newline at end of file diff --git a/util/math/en/index.html b/util/math/en/index.html new file mode 100644 index 000000000..ebc96303e --- /dev/null +++ b/util/math/en/index.html @@ -0,0 +1,12 @@ +math - NG-ALAIN

      范围、四舍五入

      inRange

      检查 value 是否在 startend 之间,但不包括 end。 如果 end 没有指定,那么 start 设置为 0。 如果 start 大于 end,那么参数会交换以便支持负范围。

      inRange(3, 2, 4); // true
      +inRange(4, 8); // true
      +inRange(4, 2); // false
      +inRange(2, 2); // false
      +inRange(1.2, 2); // true
      +inRange(-3, -2, -6); // true

      ceil

      根据 precision(精度) 向上舍入 number

      ceil(4.006); // 5
      +ceil(6.004, 2); // 6.01
      +ceil(6040, -2); // 6100

      floor

      根据 precision(精度) 向下舍入 number

      floor(4.006); // 4
      +floor(0.046, 2); // 0.04
      +floor(4060, -2); // 4000

      round

      根据 precision(精度) 四舍五入 number

      round(4.006); // 4
      +round(4.006, 2); // 4.01
      +round(4060, -2); // 4100
      \ No newline at end of file diff --git a/util/math/zh/index.html b/util/math/zh/index.html new file mode 100644 index 000000000..ec5a7ab96 --- /dev/null +++ b/util/math/zh/index.html @@ -0,0 +1,12 @@ +math - NG-ALAIN

      范围、四舍五入

      inRange

      检查 value 是否在 startend 之间,但不包括 end。 如果 end 没有指定,那么 start 设置为 0。 如果 start 大于 end,那么参数会交换以便支持负范围。

      inRange(3, 2, 4); // true
      +inRange(4, 8); // true
      +inRange(4, 2); // false
      +inRange(2, 2); // false
      +inRange(1.2, 2); // true
      +inRange(-3, -2, -6); // true

      ceil

      根据 precision(精度) 向上舍入 number

      ceil(4.006); // 5
      +ceil(6.004, 2); // 6.01
      +ceil(6040, -2); // 6100

      floor

      根据 precision(精度) 向下舍入 number

      floor(4.006); // 4
      +floor(0.046, 2); // 0.04
      +floor(4060, -2); // 4000

      round

      根据 precision(精度) 四舍五入 number

      round(4.006); // 4
      +round(4.006, 2); // 4.01
      +round(4060, -2); // 4100
      \ No newline at end of file diff --git a/util/other/en/index.html b/util/other/en/index.html new file mode 100644 index 000000000..186604d0d --- /dev/null +++ b/util/other/en/index.html @@ -0,0 +1,25 @@ +other - NG-ALAIN

      深获取、拷贝、合并、延迟、断言

      omit

      忽略 obj 指定属性。

      omit({ a: 1, b: 2, c: 3 }, 'a') // { b: 2, c: 3 }
      +omit({ a: 1, b: 2, c: 3 }, ['a', 'c']) // { b: 2 }
      +omit({ a: 1, b: 2 }, key => key === 'a') // { a: 1 }

      deepGet

      类似 _.get,根据 path 获取安全值。

      const obj = {
      +  id: 1,
      +  user: {
      +    name: 'cipchk',
      +    age: 18
      +  }
      +};
      +
      +deepGet(obj, 'id'); // 1
      +deepGet(obj, 'user.age'); // 18

      deepCopy

      基于 extend 的深度拷贝。

      const source = { a: 1, user: { name: 'cipchk' } };
      +const obj = deepCopy(source);

      deepMerge

      深度合并。

      let original = { a: 1, b: { c: 'c' } };
      +deepMerge(original, { b: { d: 'd' }, arr: [ 1 ] });
      +// output: { a: 1, b: { c: 'c', d: 'd' }, arr: [ 1 ] }

      LazyService

      LazyService 用于延迟加载 JS 或 CSS 文件,对于无须被打包 script.js 且又是第三方类库比较大时,非常有用,一个简单的用法,例如:

      import { LazyService } from '@delon/util/other';
      +
      +export class AppComponent {
      +  constructor(private lazy: LazyService) {}
      +
      +  ngOnInit() {
      +    this.lazy.load([ `//cdn.bootcss.com/xlsx/0.11.17/xlsx.full.min.js` ]).then(() => {
      +      // do something
      +    });
      +  }
      +}

      assert

      断言表达式是否符合预期,并在开发模式下会在控制台抛出一个错误。

      • assert 断言表达式是否符合预期

      • assertEmpty 断言是否空值(nullundefined

      • assertNumber 断言是否 number 类型

      • assertString 断言是否 string 类型

      • assertArray 断言是否 array 类型

      • assertObservable 断言是否 Observable 类型

        <
      \ No newline at end of file diff --git a/util/other/zh/index.html b/util/other/zh/index.html new file mode 100644 index 000000000..c5d0e8dff --- /dev/null +++ b/util/other/zh/index.html @@ -0,0 +1,25 @@ +other - NG-ALAIN

      深获取、拷贝、合并、延迟、断言

      omit

      忽略 obj 指定属性。

      omit({ a: 1, b: 2, c: 3 }, 'a') // { b: 2, c: 3 }
      +omit({ a: 1, b: 2, c: 3 }, ['a', 'c']) // { b: 2 }
      +omit({ a: 1, b: 2 }, key => key === 'a') // { a: 1 }

      deepGet

      类似 _.get,根据 path 获取安全值。

      const obj = {
      +  id: 1,
      +  user: {
      +    name: 'cipchk',
      +    age: 18
      +  }
      +};
      +
      +deepGet(obj, 'id'); // 1
      +deepGet(obj, 'user.age'); // 18

      deepCopy

      基于 extend 的深度拷贝。

      const source = { a: 1, user: { name: 'cipchk' } };
      +const obj = deepCopy(source);

      deepMerge

      深度合并。

      let original = { a: 1, b: { c: 'c' } };
      +deepMerge(original, { b: { d: 'd' }, arr: [ 1 ] });
      +// output: { a: 1, b: { c: 'c', d: 'd' }, arr: [ 1 ] }

      LazyService

      LazyService 用于延迟加载 JS 或 CSS 文件,对于无须被打包 script.js 且又是第三方类库比较大时,非常有用,一个简单的用法,例如:

      import { LazyService } from '@delon/util/other';
      +
      +export class AppComponent {
      +  constructor(private lazy: LazyService) {}
      +
      +  ngOnInit() {
      +    this.lazy.load([ `//cdn.bootcss.com/xlsx/0.11.17/xlsx.full.min.js` ]).then(() => {
      +      // do something
      +    });
      +  }
      +}

      assert

      断言表达式是否符合预期,并在开发模式下会在控制台抛出一个错误。

      • assert 断言表达式是否符合预期

      • assertEmpty 断言是否空值(nullundefined

      • assertNumber 断言是否 number 类型

      • assertString 断言是否 string 类型

      • assertArray 断言是否 array 类型

      • assertObservable 断言是否 Observable 类型

        <
      \ No newline at end of file diff --git a/util/pipes-currency/en/index.html b/util/pipes-currency/en/index.html new file mode 100644 index 000000000..0f3386199 --- /dev/null +++ b/util/pipes-currency/en/index.html @@ -0,0 +1 @@ +currency - NG-ALAIN

      货币管道
      IMPORT MODULE

      可以通过全局配置覆盖 startingUnitmegaUnitprecisioningoreZeroPrecision 等参数。

      price

      用逗号将数字格式化为千位分隔符。

      mega

      大数据格式化。

      cny

      转化成人民币表示法。

      \ No newline at end of file diff --git a/util/pipes-currency/zh/index.html b/util/pipes-currency/zh/index.html new file mode 100644 index 000000000..746e00ddd --- /dev/null +++ b/util/pipes-currency/zh/index.html @@ -0,0 +1 @@ +currency - NG-ALAIN

      货币管道
      IMPORT MODULE

      可以通过全局配置覆盖 startingUnitmegaUnitprecisioningoreZeroPrecision 等参数。

      price

      用逗号将数字格式化为千位分隔符。

      mega

      大数据格式化。

      cny

      转化成人民币表示法。

      \ No newline at end of file diff --git a/util/pipes-filter/en/index.html b/util/pipes-filter/en/index.html new file mode 100644 index 000000000..71846f579 --- /dev/null +++ b/util/pipes-filter/en/index.html @@ -0,0 +1 @@ +filter - NG-ALAIN

      过滤数组
      IMPORT MODULE

      filter

      过滤数组。

      \ No newline at end of file diff --git a/util/pipes-filter/zh/index.html b/util/pipes-filter/zh/index.html new file mode 100644 index 000000000..6e2f05412 --- /dev/null +++ b/util/pipes-filter/zh/index.html @@ -0,0 +1 @@ +filter - NG-ALAIN

      过滤数组
      IMPORT MODULE

      filter

      过滤数组。

      \ No newline at end of file diff --git a/util/pipes-format/en/index.html b/util/pipes-format/en/index.html new file mode 100644 index 000000000..d90667f90 --- /dev/null +++ b/util/pipes-format/en/index.html @@ -0,0 +1 @@ +format - NG-ALAIN

      掩码
      IMPORT MODULE

      mask

      格式化掩码。

      \ No newline at end of file diff --git a/util/pipes-format/zh/index.html b/util/pipes-format/zh/index.html new file mode 100644 index 000000000..67537ae6f --- /dev/null +++ b/util/pipes-format/zh/index.html @@ -0,0 +1 @@ +format - NG-ALAIN

      掩码
      IMPORT MODULE

      mask

      格式化掩码。

      \ No newline at end of file diff --git a/util/token/en/index.html b/util/token/en/index.html new file mode 100644 index 000000000..043ab7113 --- /dev/null +++ b/util/token/en/index.html @@ -0,0 +1 @@ +token - NG-ALAIN

      Token

      WINDOW

      访问全局 window 对象。

      PAGE_VISIBILITY

      通过 visibilitychange 事件来监听浏览器选项卡是否可见,一般用于当用户离开应用时暂时中断后端持续发

      \ No newline at end of file diff --git a/util/token/zh/index.html b/util/token/zh/index.html new file mode 100644 index 000000000..b103a20aa --- /dev/null +++ b/util/token/zh/index.html @@ -0,0 +1 @@ +token - NG-ALAIN

      Token

      WINDOW

      访问全局 window 对象。

      PAGE_VISIBILITY

      通过 visibilitychange 事件来监听浏览器选项卡是否可见,一般用于当用户离开应用时暂时中断后端持续发

      \ No newline at end of file